109238|function.mhash-count|100|1340930213|holdoffhunger at gmail dot com|VGhlIE1IYXNoIGZ1bmN0aW9uIG1oYXNoX2NvdW50KCkgcmV0dXJucyB0aGUgaGlnaGVzdCwgZXZhbHVhdGVkLCBjb25zdGFudCB2YWx1ZSByZXByZXNlbnRpbmcgYSBoYXNoaW5nIGFsZ29yaXRobSBhdmFpbGFibGUgd2l0aGluIHRoZSBjdXJyZW50IE1IYXNoIGluc3RhbGwuICBGb3IgZXhhbXBsZSwgMCBpbmRpY2F0ZXMgQ1JDMzIsIDEgaW5kaWNhdGVzIE1ENSwgMiBpbmRpY2F0ZXMgU0hBMSwgZXRjLiwgZXRjLi4gIFlvdSBjYW4gZ2V0IHRoZSBldmFsdWF0ZWQgbnVtYmVyIGZvciBhbnkgb2YgdGhlc2UgYWxnb3JpdGhtcyBieSBkb2luZyBhIHByaW50IHN0YXRlbWVudCB3aXRoIGFueSBvZiB0aGUgcHJlZGVmaW5lZCwgTUhhc2ggY29uc3RhbnRzLCBzdWNoIGFzIHRob3NlIGF2YWlsYWJsZSBoZXJlIDogaHR0cDovL3d3dy5waHAubmV0L21hbnVhbC9lbi9taGFzaC5jb25zdGFudHMucGhwIC4KClRoZSBwdXJwb3NlIG9mIG1oYXNoX2NvdW50KCkgaW4gTUhhc2ggaXMgc2ltaWxhciB0byB0aGUgcHVycG9zZSBvZiBoYXNoX2FsZ29zKCkgaW4gSEFTSCBNZXNzYWdlIERpZ2VzdCBGcmFtZXdvcmsuICBJbnN0ZWFkIG9mIHByb3ZpZGluZyBhbiBhcnJheSBvZiBhdmFpbGFibGUgaGFzaGluZyBhbGdvcml0aG1zLCBpdCBzaW1wbHkgcHJvdmlkZXMgdGhlIGhpZ2hlc3QsIGV2YWx1YXRlZCwgY29uc3RhbnQgZXhwcmVzc2lvbiBmb3IgdGhlIEFsZ29yaXRobSBDb25zdGFudHMuICBUaGUgdGhpbmtpbmcsIGFzIGluZGljYXRlZCBpbiB0aGUgc2FtcGxlIGNvZGUsIGlzIHRoYXQgeW91IHdpbGwgcGFyc2UgYSBsaXN0IG9mIG1oYXNoIGFsZ29yaXRobXMgaW4gYSBmb3IgbG9vcCB1c2luZyBhIGNvbmRpdGlvbiBvZiAiJGkgPD0gbWhhc2hfY291bnQoKSIuCgpIb3dldmVyLCB0aGVyZSBpcyBhIHByb2JsZW0gd2l0aCB0aGF0OiB0aGVyZSBhcmUgc2V2ZXJhbCBpbnRlZ2VycyB0aGF0IGFyZSBza2lwcGVkIGluIHRoZSBsaXN0aW5nIG9mIGV2YWx1YXRlZCBjb25zdGFudCBleHByZXNzaW9ucy4gIFdoaWxlIDIgaW5kaWNhdGVzIFNIQTEsIDMgaW5kaWNhdGVzIEhBVkFMMjU2LCBldGMuLCB0aGVyZSBpcyBub3RoaW5nIGZvciB0aGUgbnVtYmVycyA0IGFuZCA2LiAgVGhleSBwcm9kdWNlIGJsYW5rIHJlc3VsdHMgd2hlbiBvbiB0aGF0IGxpbmUgb2YgdGhlIGZvci1sb29wIGFuZCB5b3UncmUgY2FsbGluZyBmdW5jdGlvbnMgbGlrZSBtaGFzaF9nZXRfYmxvY2tfc2l6ZSgpIGFuZCBtaGFzaF9nZXRfaGFzaF9uYW1lKCkuICBUaGVzZSB3ZXJlIGxpa2VseSByZXNlcnZlZCBmb3IgYWxnb3JpdGhtcyB0aGF0IHdlcmUgcmVtb3ZlZCBmb3Igb25lIHJlYXNvbiBvciBhbm90aGVyLCBlaXRoZXIgaW5lZmZpY2llbmN5IG9yIGxhY2sgb2Ygc2VjdXJpdHksIGFuZCB0aGUgbnVtYmVyLXRvLXByZWRlZmluZWQtY29uc3RhbnQgc2V0dXAgd2Fzbid0IGNoYW5nZWQgdG8gbWFrZSBpdCBiYWNrd2FyZCBjb21wYXRpYmxlIHdpdGggb2xkZXIgY29kZS4KCklmIHlvdSB3YW50IHRvIGtub3cgd2hhdCBjb3VudHMgYXMgYSBnb29kIGNvbnN0YW50IGFuZCB3aGF0IGRvZXNuJ3QsIHRyeSBydW5uaW5nIHRoaXMgY29kZSA6Cgo8P3BocAoKCQkJLy8gQXV0aG9yOiBob2xkb2ZmaHVuZ2VyQGdtYWlsLmNvbQoJCgkJLy8gUGFyc2UgQWxsIEhhc2hpbmcgQWxnb3JpdGhtcwoJCS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCWZvcigkaSA9IDA7ICRpIDw9IG1oYXNoX2NvdW50KCk7ICRpKyspCgl7CgkJCS8vIEdldCBBbGdvcml0aG0gSW5mb3JtYXRpb24KCQkJLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoJCSRtaGFzaF9hbGdvcml0aG1fYmxvY2tfc2l6ZSA9IG1oYXNoX2dldF9ibG9ja19zaXplKCRpKTsKCQkkbWhhc2hfYWxnb3JpdGhtX25hbWUgPSBtaGFzaF9nZXRfaGFzaF9uYW1lKCRpKTsKCQkKCQkJLy8gRGVjaWRlIG9uIFByaW50aW5nIEFsZ29yaXRobSBJbmZvcm1hdGlvbgoJCQkvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCQkKCQlpZihzdHJsZW4oJG1oYXNoX2FsZ29yaXRobV9uYW1lKSA8IDEpCgkJewoJCQkJLy8gVGhlcmUgKklTKiBBdmFpbGFibGUgQWxnb3JpdGhtIERhdGEKCQkJCS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCQkJcHJpbnQoIiMgJGkgLS0tIE5PIEFMR09SSVRITSBOQU1FIC8gTk8gQUxHT1JJVEhNIEJMT0NLU0laRSAuPGJyPjxicj4iKTsKCQl9CgkJZWxzZQoJCXsKCQkJCS8vIFRoZXJlICpJUyBOTyogQXZhaWxhYmxlIEFsZ29yaXRobSBEYXRhCgkJCQkvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCQkJCgkJCXByaW50KCIjICRpIC0tLSAkbWhhc2hfYWxnb3JpdGhtX25hbWUgdG8gJG1oYXNoX2FsZ29yaXRobV9ibG9ja19zaXplIC48YnI+PGJyPiIpOwoJCX0KCX0KCj8+CgoJU2FtcGxlIFJlc3VsdHMKCS4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4KCiMgMCAtLS0gQ1JDMzIgdG8gNCAuCgojIDEgLS0tIE1ENSB0byAxNiAuCgojIDIgLS0tIFNIQTEgdG8gMjAgLgoKIyAzIC0tLSBIQVZBTDI1NiB0byAzMiAuCgojIDQgLS0tIE5PIEFMR09SSVRITSBOQU1FIC8gTk8gQUxHT1JJVEhNIEJMT0NLU0laRSAuCgojIDUgLS0tIFJJUEVNRDE2MCB0byAyMCAuCgojIDYgLS0tIE5PIEFMR09SSVRITSBOQU1FIC8gTk8gQUxHT1JJVEhNIEJMT0NLU0laRSAuCgojIDcgLS0tIFRJR0VSIHRvIDI0IC4KCiMgOCAtLS0gR09TVCB0byAzMiAuCgouLi4oYW5kIHNvIG9uKS4uLg==|1|0