--_003_2011228165432824885techmanPC_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Joe, Would the attached seconds to period routine be of any help? Just ignore the pTimeCal-> construct as by the code you listed you aren't= =20 using pointers or structs. Microchip also have time to day code in one of their RTC and Mass storage=20 articles. Colin -- cdb, colin@btech-online.co.uk on 28/02/2011 =20 Web presence: www.btech-online.co.uk =20 =20 Hosted by: www.justhost.com.au =20 =20 =20 =20 --_003_2011228165432824885techmanPC_ Content-Type: application/octet-stream; name="Ibutt_vfd0_0.c" Content-Description: Ibutt_vfd0_0.c Content-Disposition: attachment; filename="Ibutt_vfd0_0.c"; size=8608; creation-date="Sun, 27 Feb 2011 22:59:51 GMT"; modification-date="Sun, 27 Feb 2011 22:59:51 GMT" Content-Transfer-Encoding: base64 Ly8qKlByb2plY3QgTmFtZTogVkZEX3NlcmlhbA0KLy8qKkZpbGUgTmFtZSAgIDogdmZkMF8xLmMN Ci8vKipWZXJzaW9uICAgICA6IDAuMQ0KLy8qKkRhdGUgICAgICAgIDogMjUvMDcvMjAwMwkNCi8v KipQcm9jZXNzb3IJOjE2Rjg0LzYyOA0KLy8qKg0KLy8qKiBDb3B5cmlnaHQgQ0RCLiAgZW1haWwg Y2RiQGJhcm5hcmQubmFtZQ0KDQovLyBQcm9ncmFtIHRvIGRpc3BsYXkgZGF0YSBvbiBhIEZ1dG9i YSBNMjAyU0QwOEdMIHZhY3V1bSBmbHVvcmVzY2VudCBkaXNwbGF5Lg0KLy8gDQovLyBQaW5zIDIg NCA2ICs1djsgMTAgMTIgMTQgR25kDQoNCg0KLy8NCi8vIFJTVCBtdXN0IGJlIG1vbWVudGFyaWx5 IGdyb3VuZGVkICBhdCBzdGFydCB1cCB0byBhY3RpdmF0ZSBkaXNwbGF5Lg0KDQovL1Rlc3Rpbmcg aUJ1dHRvbjE5MDQgd2l0aCBWRkQgZGlzcGxheSwgaWYgc3VjY2Vzc2Z1bCB0aGVuIGltcGxpbWVu dCB3aXRoIENsaW1hdGUgcHJvamVjdA0KDQojZGVmaW5lIFZGRA0KDQoNCiNkZWZpbmUgQ09OVFJP TF9QT1JUIFBPUlRCDQojZGVmaW5lIERBVEFfUE9SVCAgICBQT1JUQg0KI2RlZmluZSBURVNUX1BJ TiBiUkI1DQojZGVmaW5lIFJTVF9QSU4gIGJSQjMNCiNkZWZpbmUgQlVTWV9QSU4gYlJCMg0KI2Rl ZmluZSBSWERfUElOIDB4MDUNCiNkZWZpbmUgV0RUIGJSQTMNCg0KI2RlZmluZSBTS0lQUiAweEND DQojZGVmaW5lIFdyVElNRSAweDk5DQojZGVmaW5lIFJkVElNRSAweDY2DQojZGVmaW5lIENPTlRS T0wgMHgwQyANCg0KI2RlZmluZSBaRVJPIDANCiNkZWZpbmUgQkxBTksgMQ0KDQojaW5jbHVkZSA8 UDE2RjYyOC5oPg0KI2luY2x1ZGUgPHBvcnRiaXRzLmg+DQojaW5jbHVkZSA8ZGVmdHlwZS5oPg0K I2luY2x1ZGUgPGRhdGFsaWIuaD4NCiNpbmNsdWRlIDxkZWxheXMuaD4NCi8vI2luY2x1ZGUgPGxj ZC5oPg0KI2luY2x1ZGUgPHZmZC5oPg0KLy8jaW5jbHVkZSAiaTE5MDQuYyINCg0KDQoJDQpzdHJ1 Y3QgdGltZWNhbHMNCnsNCgl1aW50IHlyOyB1aW50IG1udGg7dWNoYXIgZHk7DQoJdWludCBocjsg dWludCBtaW47IHVjaGFyIHNjbmQ7DQp9Ow0KDQp0aW1lY2FscyB0aW1lY2FsOw0KDQp2b2lkIFJ4 X2kxOTA0KCk7DQp2b2lkIFR4X2kxOTA0KHVsb25nICpzZWNzKTsNCnZvaWQgcGVyaW9kMnNlY3Mo dGltZWNhbHMgKnBUaW1lQ2FsKTsNCnZvaWQgc2VjczJwZXJpb2QodGltZWNhbHMgKnBUaW1lRGlz cCx1bG9uZyBpZGF0YSk7IA0KY2hhciBzdGF0dXMxdzsNCnVsb25nIHNlY3M7DQojcHJhZ21hIGFz bWZ1bmMgUnhfaTE5MDQNCg0KDQpjb25zdCB1aW50IGRheXNvZmFyW109ezAsMCwzMSw1OSw5MCwx MjAsMTUxLDE4MSwyMTIsMjQzLDI3MywzMDQsMzM0LDM2NX07DQoNCg0KLy9Qcm90b3R5cGVzIAkJ DQp2b2lkIG1haW4oKTsJDQp2b2lkIHNldHVwKCk7DQp2b2lkIGRpc3B0aW1lKHRpbWVjYWxzICpw VGltZUNhbCk7DQp2b2lkIGRpc3BsYXkodWNoYXIgKnRtcFB0ciApOw0Kdm9pZCBkaXNwX251bSh1 Y2hhciAqZGlzcCx1aW50IGNvbnYsdWNoYXIgZGlnLHVjaGFyIGx6KTsNCnVjaGFyIG51bTJoZXgo dWNoYXIgZGVjKTsNCg0KDQpjb25zdCBpbnQgQkFVRD05NjAwOw0KY29uc3QgaW50IFR4UngxV2ly ZVBvcnQ9JlBPUlRBOw0KY29uc3QgaW50IFR4UngxV2lyZUJpdD0yOw0KY29uc3QgdWNoYXIgU0VS SUFMUE9SVF9PVVQ9JlBPUlRCOw0KY29uc3QgY2hhciBtZXNzYWdlW109ezB4MDUsJ2knLCcxJywn OScsJzAnLCc0JywwKTsNCnVjaGFyIGN1cnJlbnRDSDsNCnVjaGFyIHRlbXBsYXRlWzEwXTsNCg0K DQp2b2lkIG1haW4oKSANCnsNCiB0aW1lY2FsLnlyPTM7DQogdGltZWNhbC5tbnRoPTk7DQogdGlt ZWNhbC5keT0yNTsNCiB0aW1lY2FsLmhyPTEyOw0KIHRpbWVjYWwubWluPTU3Ow0KIHRpbWVjYWwu c2NuZD01Ow0KIHNldHVwKCk7DQogcGVyaW9kMnNlY3MoJnRpbWVjYWwpOw0KIFZGRHJlc2V0KCk7 CQkvL0hhcmQgcmVzZXQNCiBWRkRfc2VuZChDVVJPRkYpOw0KIGRpc3BsYXkobWVzc2FnZSk7DQog VHhfaTE5MDQoJnNlY3MpOw0KIA0KIA0KIA0KICB3aGlsZSgxKSANCiB7DQogUnhfaTE5MDQoKTsN CiBzZWNzMnBlcmlvZCgmdGltZWNhbCxzZWNzKTsNCiBkaXNwdGltZSgmdGltZWNhbCk7DQogICAg DQogfQkJCQkvL2ZvcmV2ZXIhDQp9DQoNCg0KDQoNCg0Kdm9pZCBzZXR1cCgpDQp7DQogDQogIENN Q09OPTB4MDc7IAkJLy8gc3dpdGNoIGNvbXBhcmF0b3JzIG9mZg0KLy8gQURDT04xPTB4MDc7DQog Ly9DT05UUk9MX1BPUlQ9MHgwODsJCS8vICAgIA0KIERBVEFfUE9SVD0weDA4Ow0KIFBPUlRBPTB4 MDg7DQogVFJJU0E9MHgyMDsJCQkNCiBUUklTQj0weDA0Ow0KIA0KfQ0KDQp2b2lkIGRpc3B0aW1l KHRpbWVjYWxzICpwVGltZUNhbCkNCnsJDQoJdGVtcGxhdGVbMF09MjA7DQogCWRpc3BfbnVtKHRl bXBsYXRlLHBUaW1lQ2FsLT5keSwyLEJMQU5LKTsNCiAJdGVtcGxhdGVbM109Jy8nOw0KIAlkaXNw bGF5KHRlbXBsYXRlKTsNCiAJdGVtcGxhdGVbMF09MjM7DQogCWRpc3BfbnVtKHRlbXBsYXRlLHBU aW1lQ2FsLT5tbnRoLDIsWkVSTyk7DQogCXRlbXBsYXRlWzNdPScvJzsNCiAJZGlzcGxheSh0ZW1w bGF0ZSk7DQogCXRlbXBsYXRlWzBdPTI2Ow0KIAlkaXNwX251bSh0ZW1wbGF0ZSxwVGltZUNhbC0+ eXIsMixaRVJPKTsNCiAJZGlzcGxheSh0ZW1wbGF0ZSk7DQogCXRlbXBsYXRlWzBdPTMwOw0KIAlk aXNwX251bSh0ZW1wbGF0ZSxwVGltZUNhbC0+aHIsMixCTEFOSyk7DQogCXRlbXBsYXRlWzNdPSc6 JzsNCiAJZGlzcGxheSh0ZW1wbGF0ZSk7DQogCXRlbXBsYXRlWzBdPTMzOw0KIAlkaXNwX251bSh0 ZW1wbGF0ZSxwVGltZUNhbC0+bWluLDIsWkVSTyk7DQogCXRlbXBsYXRlWzNdPSc6JzsNCiAJZGlz cGxheSh0ZW1wbGF0ZSk7DQogCXRlbXBsYXRlWzBdPTM2Ow0KIAlkaXNwX251bSh0ZW1wbGF0ZSxw VGltZUNhbC0+c2NuZCwyLFpFUk8pOw0KIAlkaXNwbGF5KHRlbXBsYXRlKTsNCg0KfQ0KDQovLzF3 aXJlIFR4IGFuZCBSeCBmdW5jdGlvbnMuDQoNCi8vVHJhbnNtaXQgY29udG9sIGJ5dGUgYW5kIHN0 YXJ0IHNlY29uZHMgdG8gaUJ1dHRvbg0Kdm9pZCBUeF9pMTkwNCh1bG9uZyAqc2VjcykNCnsNCgkv L3RlbXA9TG9jT3ArMSBhbmQgbG9vcD0gTG9jT3ArMg0KCXVjaGFyIHRlbXAsbG9vcDsNCglsb29w PXRlbXA9MDsNCgkNCglzdGF0dXMxdz1SZXNldENoZWNrMVcoKTsJLy9DaGVjayBmb3IgcHJlc2Vu Y2UgYW5kIHJlc2V0IGJ1cw0KCWlmIChzdGF0dXMxdz09MCB8fCBzdGF0dXMxdz09IC0xKQ0KCQl7 Ly9UZW1wb3JhcmlseSByZW1vdmUgZXJyb3Igcm91dGluZSB3aGlsc3QgdGVzdGluZw0KCQkJLypz eXNmbGFnLmlCdF9lcnI9MTsNCgkJCWZhdWx0KGlCdF9lcnIpOyovDQoJCQlWRkRfc2VuZCgnRScp Ow0KCQkJcmV0dXJuOw0KCQkJDQoJCX0NCglUeDFXaXJlKFNLSVBSKTsJCQkJLy9TZW5kIFNraXAg Uk9NIGNvbW1hbmQNCglUeDFXaXJlKFdyVElNRSk7CQkJLy9TZW5kICAweDk5IFdyaXRlIFRpbWUg Y29tbWFuZA0KCVR4MVdpcmUoQ09OVFJPTCk7IAkJCS8vY29udHJvbCBieXRlIHNlbnQNCgkNCgkN CgkJDQoJICAgICNhc20NCgkJICBNU0VUSVJQIHNlY3MJCTtCQU5LU0VMRUNUIHNlY3MgKHNlY3Mg aXMgaW4gYmFuayAxLzIpDQoJVHhMb29wCSAgbW92bHcgc2VjcwkJO0dldCBhZGRyZXNzIG9mIHNl Y29uZHMsIHRoaXMgaXMgNCBieXRlcyBsb25nDQoJCSAgbW92d2YgRlNSCQk7TW92ZSBpdCB0byBG U1IgcmVnaXN0ZXINCgkJICBtb3ZmIExvY09wdCsyLFcJO0xvb3AgY291bnQNCgkJICBhZGR3ZiBG U1IJCTthZGQgaXQgdG8gc2Vjb25kcyBhZGRyZXNzIHRvIG1vdmUgdG8gbmV4dCBieXRlDQoJCSAg bW92ZiBJTkRGLFcJCTtjb3B5IGNvbnRlbnRzIG9mIGFkZHJlc3MgcG9pbnRlZCB0bywgaW50byBX DQoJCSAgbW92d2YgTG9jT3B0KzEJO0xvY09wdCsxPSB0ZW1wICwgY29weSBXLiBGaWxlIDEgYnl0 ZSBsb25nDQoJI2FzbWVuZA0KCQkgIFR4MVdpcmUodGVtcCk7CS8vc2VuZCB0byBpYnV0dG9uDQoJ I2FzbQ0KCQkgIFNFVFBDTEFUSCBUeExvb3AsMCwxCTtQQUdFU0VMRUNUIFR4TG9vcCBsYWJlbCBw YWdlIDAgc3ViNw0KCQkgIE1TRVRJUlAgc2Vjcw0KCQkgIGluY2YgTG9jT3B0KzIJCTtpbmNyZW1l bnQgbG9vcCBjb3VudA0KCQkgIGJ0ZnNzIExvY09wdCsyLDIJO0NoZWNrIGZvciBtYXggY291bnQg NA0KCQkgIGdvdG8gVHhMb29wDQoJI2FzbWVuZCANCg0KCXN0YXR1czF3PVJlc2V0Q2hlY2sxVygp Ow0KfQ0KDQovL1JlY2VpdmUgY29udHJvbCBieXRlIGFuZCBhY2N1bXVsYXRlZCBzZWNvbmRzIGZy b20gaUJ1dHRvbg0KdWNoYXIgbG9vcCxjX2J5dGU7DQp2b2lkIFJ4X2kxOTA0KCkNCnsNCgkNCgls b29wPTQ7DQoJc3RhdHVzMXc9UmVzZXRDaGVjazFXKCk7IC8vY2hhbmdlIHRoaXMgdG8gYSBzZXBh cmF0ZSBmdW5jdGlvbg0KCWlmIChzdGF0dXMxdz09MCkgDQoJCXsvL1RlbXBvcmFyaWx5IHJlbW92 ZSBlcnJvciByb3V0aW5lIHdoaWxzdCB0ZXN0aW5nDQoJCQkvKnN5c2ZsYWcuaUJ0X2Vycj0xOw0K CQkJZmF1bHQoaUJ0X2Vycik7Ki8NCgkJCVZGRF9zZW5kKCdFJyk7DQoJCQlyZXR1cm47DQoJCQkN CgkJfQ0KCQ0KCVR4MVdpcmUoU0tJUFIpOw0KCVR4MVdpcmUoUmRUSU1FKTsJLy9zZW5kIDB4NjYN CgljX2J5dGU9UngxV2lyZSgpOyAvL2NvbnRyb2wgYnl0ZSByZWNlaXZlZCANCgkjYXNtDQoJCSBN U0VUSVJQIHNlY3MNCgkJIG1vdmx3IHNlY3MNCgkJIG1vdndmIEZTUg0KCQkgU0VUUENMQVRIIFJ4 MVdpcmUsMCwxIDttYWtlIHN1cmUgUENMQVRIIGlzIHNldCBjb3JyZWN0bHkgKG1vdmx3IEhJR0gg UngxV2lyZSkNCgkgUnggICAgICBjYWxsIFJ4MVdpcmUNCgkgCSBTRVRQQ0xBVEggUngsMCwxCSAg IDtCYWNrIHRvIHRoaXMgcGFnZQ0KCQkgbW92ZiBBQ0MsVw0KCQkgbW92d2YgSU5ERg0KCQkgaW5j ZiBGU1INCgkJIGRlY2ZzeiBsb29wDQoJCSBnb3RvIFJ4DQoJI2FzbWVuZA0KCXN0YXR1czF3PVJl c2V0Q2hlY2sxVygpOyAgIC8vY2Vhc2UgdHJhbnNtaXNzaW9uDQoNCn0NCg0KDQoNCg0KLy9QZXJp b2QgY29udmVyc2lvbiBmdW5jdGlvbnMuIFNlY29uZHMgdG8geWVhci9kYXRlL21vbnRoL2hvdXJz L21pbnMvc2VjcyBhbmQgaW4gcmV2ZXJzZQ0KDQovL0RheSBEYXRlIHRpbWUgcGVyaW9kIHRvIHNl Y29uZHMuICAqcFRpbWVDYWwgcG9pbnRlciB0byBUaW1lIEZ1Y250aW9uDQp2b2lkIHBlcmlvZDJz ZWNzKHRpbWVjYWxzICpwVGltZUNhbCkNCiB7DQogICB1aW50IHRlbXAsbGVhcDsNCiAgIC8vdWxv bmcgc2VjczsNCiAgIA0KICAgbGVhcD0wOw0KDQogICBpZiAodGltZWNhbC0+eXIgPiAzMCkvLyBj aGFuZ2UgdG8gMTggeWVhcnMgdG8gYXZvaWQgdWxvbmcgY29udmVyc2lvbg0KICAgCQlwVGltZUNh bC0+eXI9MDsNCiAgIA0KICAgaWYgKHRpbWVjYWwtPm1udGggPiAyICkgIA0KICAgCQl7DQogICAJ CSAgbGVhcD0ocFRpbWVDYWwtPnlyICYzKSsxOw0KCQl9DQogIA0KICAgIA0KICAgc2Vjcz0gMzY1 KihwVGltZUNhbC0+eXItMikrICgocFRpbWVDYWwtPnlyLTEpLzQpKyBkYXlzb2Zhclt0aW1lY2Fs LT5tbnRoXSArIGxlYXA7IA0KICAgc2Vjcys9cFRpbWVDYWwtPmR5IC0xIDsgCQkNCiAgIA0KICAg c2Vjcz0oODY0MDAgKiBzZWNzKSArIHRpbWVjYWwtPnNjbmQgKyAoNjAgKiB0aW1lY2FsLT5taW4p Ow0KICAgdGVtcD10aW1lY2FsLT5ocjsNCiAgIHNlY3MrPSAzNjAwICogKHVsb25nKSB0ZW1wOw0K ICAgDQogIA0KIA0KIH0NCiANCi8vIFNlY29uZHMgdG8gdGltZSBkYXRlIGNvbnZlcnNpb24uICdp ZGF0YScgY29udGFpbnMgc2Vjb25kcyBpbmZvIGZyb20gaUJ1dHRvbiAqcFRpbWVDYWwgcG9pbnRl cg0KLy9UbyB0aW1lIHN0cnVjdHVyZS4NCiB2b2lkIHNlY3MycGVyaW9kKHRpbWVjYWxzICpwVGlt ZUNhbCx1bG9uZyBpZGF0YSkNCnsNCgkJdWxvbmcgdGVtcDsNCgkJdWNoYXIgbGVhcDsNCgkJdWlu dCBkeSxtOw0KCQkNCgkJDQoJCS8vTWF4IHllYXIgMzEgIERlY2VtYmVyIDIwMzAgMjM6NTk6NTks IA0KCQlpZiAoaWRhdGE+IDB4M0E0NjhERkYpDQoJCQlpZGF0YT0wOw0KCQkJDQoJCXRlbXA9aWRh dGEvNjA7DQoJCXBUaW1lQ2FsLT5zY25kPShpZGF0YS02MCp0ZW1wKTsNCgkJDQoJCWlkYXRhPXRl bXAvNjA7DQoJCXBUaW1lQ2FsLT5taW49KHRlbXAtNjAqaWRhdGEpOw0KCQkNCgkJdGVtcD1pZGF0 YS8yNDsNCgkJcFRpbWVDYWwtPmhyPShpZGF0YS0yNCp0ZW1wKTsNCgkJaWRhdGE9NCoodGVtcCs3 MzEpOw0KCQlwVGltZUNhbC0+eXI9KGlkYXRhLzE0NjEpOwkNCgkJdGVtcD0oKGlkYXRhLSgxNDYx ICogcFRpbWVDYWwtPnlyKSkvNCk7DQoJCQ0KCQkJCQ0KCQltPTEzOw0KCQkJCQ0KCQlkbw0KCQl7 CQ0KCQkJbS09MTsNCgkJCWlmIChtID4gMikgDQogICAJCQkJew0KICAgCQkJCQlsZWFwPShwVGlt ZUNhbC0+eXIgJjMpKzE7DQogICAJCQkJfQ0KCQkJZWxzZQ0KCQkJCXsNCgkJCQkJbGVhcD0wOw0K CQkJCX0NCgkJCWR5PWRheXNvZmFyW21dK2xlYXA7DQoJCQkNCgkJfQ0KCQl3aGlsZSAodGVtcCA8 IGR5KQkNCgkJCQkNCgkJcFRpbWVDYWwtPm1udGg9bTsNCgkJDQoJCXBUaW1lQ2FsLT5keT10ZW1w LWR5KzE7DQoJCQ0KCQkNCgkJDQoJCWlmIChwVGltZUNhbC0+ZHk9PTApDQoJCQlwVGltZUNhbC0+ ZHk9MTsJDQoJCQ0KCQkNCn0NCg0KDQoNCiNpZmRlZiBfVkZEcmVzZXQNCnZvaWQgVkZEcmVzZXQo KQ0Kew0KICBSU1RfUElOPUxPVzsJCQkvL1Rha2UgcmVzZXQgcGluIGxvdyB0byBhd2FrZSBWRkQN CiAgI2FzbQ0KICAgIG1vdmx3IF9WRkRfREVMQVkNCiAgICBjYWxsIERlbGF5MA0KICAjYXNtZW5k IA0KICBSU1RfUElOPUhJR0g7CQkJLy9SZXR1cm4gcmVzZXQgcGluIHRvIG9wZXJhdGluZyBzdGF0 ZQ0KfQ0KI2VuZGlmDQoNCg0KI2lmZGVmIFZGRA0KI2lmZGVmIF9kaXNwbGF5DQp2b2lkIGRpc3Bs YXkodWNoYXIgKnRtcFB0cikNCnsNCiAgDQogIFZGRF9zZW5kKERQKTsNCiAgd2hpbGUoKnRtcFB0 cikJCS8vd2hpbGUgbm90IGVuZCBvZiBzdHJpbmcNCiAgew0KICAJY3VycmVudENIPSp0bXBQdHI7 DQogIAlWRkRfc2VuZChjdXJyZW50Q0gpOw0KICAJdG1wUHRyKys7DQogIH0NCg0KfQ0KI2VuZGlm DQojZW5kaWYNCg0KI2lmZGVmIF9WRkRfc2VuZA0Kdm9pZCBWRkRfc2VuZCh1Y2hhciB0ZXh0KQ0K ew0KIA0KIAl3aGlsZShCVVNZX1BJTikNCiAJCXsNCiAJCX0NCglwU2VyaWFsT3V0KHRleHQpOw0K ICAgICAgIA0KfQ0KI2VuZGlmDQoNCi8vU3BsaXQgbnVtYmVyIGludG8gaW5kaXZpZHVhbCBkaWdp dHMgYW5kIGluc2VydCBpbiBjb3JyZWN0IHBvc2l0aW9uIGluIGFycmF5DQovL0Fsc28gZm9ybWF0 IGZvciBsZWFkaW5nIHplcm8gb3Igc3BhY2UgdG8gYmUgZGlzcGxheWVkLg0KDQojaWZkZWYgX2Rp c3BfbnVtDQp2b2lkIGRpc3BfbnVtKHVuc2lnbmVkIGNoYXIgKmRpc3AsdW5zaWduZWQgaW50IGNv bnYsdW5zaWduZWQgY2hhciBkaWcsIHVuc2lnbmVkIGNoYXIgbHopDQp7DQoJY29uc3QgaW50IGRp Z2l0X3Bvc1tdPXsxMDAwLDEwMCwxMCwxfTsNCgl1bnNpZ25lZCBjaGFyIHBvcyxkaWdpdD0wOw0K CXVuc2lnbmVkIGNoYXIgZGl2Ynk7DQoJcG9zPTA7DQoJDQoJZm9yIChkaXZieT0oNC1kaWcpO2Rp dmJ5IDwgMztkaXZieSsrKQ0KCXsNCgkJd2hpbGUoY29udiA+PSBkaWdpdF9wb3NbZGl2YnldKQ0K CQkJew0KCQkJCWNvbnYtPWRpZ2l0X3Bvc1tkaXZieV07CS8vZGVkdWN0IHZhbHVlIG9mIGNvbnN0 IGludCBmcm9tIG51bWJlcg0KCQkJCWRpZ2l0Kz0xOwkJCQkvL21ha2UgZGlnaXQgZXF1YWwgbnVt YmVyIG9mIHN1YnRyYWN0aW9ucw0KCQkJfQ0KCQlkaXNwW3BvcysxXT1udW0yaGV4KGRpZ2l0KTsJ CS8vYXNzaWduIGl0IHRvIGNvcnJlY3QgcG9zaXRpb24gaW4gYXJyYXkNCgkJaWYgKGx6ICYmIGRp c3BbMV09PScwJykNCgkJCWRpc3BbcG9zKzFdPTB4MjA7CQkJLy9JZiBubyBsZWFkaW5nIHplcm8g bWFrZSBpdCBhIHNwYWNlDQoJCWRpZ2l0PTA7CQkJCQkJLy9DbGVhciBkaWdpdCByZWFkeSBmb3Ig bmV4dA0KCQlwb3MrKzsNCgkJI2FzbWxpbmUgY2xyd2R0DQoJfQ0KCWRpZ2l0PWNvbnY7CQkJCQkJ CS8vdW5pdHMNCglkaXNwW3BvcysxXT1udW0yaGV4KGRpZ2l0KTsJDQoJZGlzcFtwb3MrZGlnXT0w OwkJCQkJCS8vaW5zZXJ0IEVPRiBhdCB0ZW1wbGF0ZSBwb3NpdGlvbiA2IGluIGFycmF5DQp9DQoj ZW5kaWYNCg0KLy9UdXJuIGRlY2ltYWwgaW50byBhbiBBU0NJSSBudW1iZXIuDQoNCiNpZmRlZiBf bnVtMmhleA0KdW5zaWduZWQgY2hhciBudW0yaGV4ICh1bnNpZ25lZCBjaGFyIGRlY2ltYWwpICAg ICAgDQp7DQogICB1bnNpZ25lZCBjaGFyIHRlbXA7DQogICANCiAgIGlmKGRlY2ltYWwgPDEwKQ0K ICAgICB7DQogICAgICAgdGVtcD1kZWNpbWFsKzB4MzA7CS8vTnVtYmVyIGxlc3MgdGhhbiAxMCBq dXN0IGFkZCAnMCcNCiAgICAgfQ0KICAgZWxzZQ0KICAgICB7DQogICAgICAgdGVtcD1kZWNpbWFs LTEwOw0KICAgICAgIHRlbXArPTB4NDE7CQkJLy9udW1iZXIgaXMgYmV0d2VlbiBBIGFuZCBGIA0K ICAgICB9DQogICAgDQogICByZXR1cm4gKHRlbXApOyANCiAgICANCn0NCiNlbmRpZg0K --_003_2011228165432824885techmanPC_ Content-Type: text/plain; name="ATT00001.txt" Content-Description: ATT00001.txt Content-Disposition: attachment; filename="ATT00001.txt"; size=208; creation-date="Sun, 27 Feb 2011 22:59:51 GMT"; modification-date="Sun, 27 Feb 2011 22:59:51 GMT" Content-Transfer-Encoding: base64 LS0gDQpodHRwOi8vd3d3LnBpY2xpc3QuY29tIFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUNClZp ZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRpb25zIGF0DQpodHRwOi8vbWFpbG1hbi5taXQu ZWR1L21haWxtYW4vbGlzdGluZm8vcGljbGlzdA0K --_003_2011228165432824885techmanPC_-- .