112096|arrayiterator.append|63|1367498962|martin dot abbrent+php dot net at ufz dot de|QXMgQXJyYXlJdGVyYXRvciBpcyBub3QgYSByZWFsIGxpc3QgdGhlIGltcGxlbWVudGF0aW9uIG9mICJhcHBlbmQiIGlzIGEgbGl0dGxlIGJpdCBjb25mdXNpbmcgbWUuIFdoZW4gdXNpbmcgImFwcGVuZCIgSSBleHBlY3RlZCB0aGUgbmV3IHZhbHVlIGF0IHRoZSBwb3N0aW9uICJsYXN0IGVsZW1lbnQgaW5kZXggKyAxIi4gVGhpcyB3aWxsIG5vdCBoYXBwZW4gd2hlbiB5b3UgdW5zZXQgZWxlbWVudHMgYmVmb3JlLgpJdCBzZWVtcyBsaWtlIGluZGV4ZXMgb25jZSB0aGV5J3JlIHVzZWQgYXJlIGJsYWNrbGlzdGVkIGVuZCBuZXZlciB1c2VkIGFnYWluLCBldmVuIGlmIHRoZXkncmUgdW5zZXQuCkxpa2Ugc3VnZ2VzdGVkIGluIGh0dHA6Ly93d3cucGhwLm5ldC9tYW51YWwvZGUvYXJyYXlpdGVyYXRvci5vZmZzZXRzZXQucGhwIzEwNjc3NSBBcnJheUl0ZXJhdG9yOjphcHBlbmQgdXNlcyBBcnJheUl0ZXJhdG9yOjpvZmZzZXRTZXQgd2l0aCBlbXB0eSBpbmRleCBwYXJhbWV0ZXIuIFNvIEkndmUgdGhpcyB0d28gd29ya2Fyb3VuZHMgdG8gZ2V0ICJhcHBlbmQiIHRvIHdvcmsgbGlrZSBJIHdhbnQ6Cgo8P3BocApjbGFzcyBteUFycmF5SXRlcmF0b3IgZXh0ZW5kcyBBcnJheUl0ZXJhdG9yIHsKCglwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0U2V0KCRvZmZzZXQsICR2YWx1ZSkgewoKCQlpZiAoaXNfbnVsbCgkb2Zmc2V0KSkgeyAvLyBvZmZzZXQgPT0gbnVsbCB3aGVuIGl0J3MgY2FsbGVkIGJ5IEFycmF5SXRlcmF0b3I6OmFwcGVuZAoJCQkkb2Zmc2V0ID0gJHRoaXMtPmdlbmVyYXRlT2Zmc2V0KCk7IC8vIGRvIGl0IGluIGEgc2VwYXJhdGUgbWV0aG9kCgkJfQoJCXBhcmVudDo6b2Zmc2V0U2V0KCRvZmZzZXQsICR2YWx1ZSk7IC8vIGNhbGwgdGhlIG5hdGl2ZSBpbXBsZW1lbnRhdGlvbiB3aXRoIGFuIGluZGV4CgkJJHRoaXMtPmtzb3J0KCk7IC8vIHNvcnQgaXQgdG8gYXZvaWQgY29uZnVzaW9uIHdoZW4gaXQgZ2V0cyBkdW1wZWQgb3IgaXRlcmF0ZWQKCX0KCglwcm90ZWN0ZWQgZnVuY3Rpb24gZ2VuZXJhdGVPZmZzZXQoKSB7CgoJCSRvZmZzZXQgPSBjb3VudCgkdGhpcyk7IC8vIHRha2UgY291bnQgYXMgb2Zmc2V0IGFzIGl0IHNob3VsZCBiZSBsYXN0S2V5KzEKCQl3aGlsZSAoJHRoaXMtPm9mZnNldEV4aXN0cygkb2Zmc2V0KSkgeyAvLyBpcyBpdCByZWFsbHkgZW1wdHk/CgkJCSRvZmZzZXQrKzsgLy8gdHJ5IHRoZSBuZXh0IG9uZSB1bnRpbCB0aGVyZSdzIGFuIGVtcHR5IG9uZQoJCX0KCQlyZXR1cm4gJG9mZnNldDsKCX0KfQoKY2xhc3MgbXlTYXZlQXJyYXlJdGVyYXRvciBleHRlbmRzIG15QXJyYXlJdGVyYXRvciB7CgoJcHJvdGVjdGVkIGZ1bmN0aW9uIGdlbmVyYXRlT2Zmc2V0KCkgewoKCQkkb2Zmc2V0ID0gMDsgLy8gZXhwZWN0IHplcm8gaXMgdGhlIGZpcnN0IHBvc3NpYmxlIGtleQoJCXdoaWxlICgkdGhpcy0+b2Zmc2V0RXhpc3RzKCRvZmZzZXQpKSB7IC8vIHRyeSBldmVyeSBrZXkgdW50aWwgdGhlcmUncyBhbiBlbXB0eSBvbmUKCQkJJG9mZnNldCsrOwoJCX0KCQlyZXR1cm4gJG9mZnNldDsKCX0KfQoKJGRhdGEgPSBhcnJheSgnZm9vJywgJ2JhcicsICdiYXonKTsKCiRhcnJheSAgICAgICA9IG5ldyBBcnJheUl0ZXJhdG9yKCRkYXRhKTsKJG15QXJyYXkgICAgID0gbmV3IG15QXJyYXlJdGVyYXRvcigkZGF0YSk7CiRteVNhdmVBcnJheSA9IG5ldyBteVNhdmVBcnJheUl0ZXJhdG9yKCRkYXRhKTsKCi8vIHJlbW92ZSB0aGUgbGFzdCBlbGVtZW50CiRhcnJheSAgICAgIC0+b2Zmc2V0VW5zZXQoMik7CiRteUFycmF5ICAgIC0+b2Zmc2V0VW5zZXQoMik7CiRteVNhdmVBcnJheS0+b2Zmc2V0VW5zZXQoMik7CgovLyBhcHBlbmQgYW4gZWxlbWVudAokYXJyYXkgICAgICAtPmFwcGVuZCgnZm9vYmFyJyk7CiRteUFycmF5ICAgIC0+YXBwZW5kKCdmb29iYXInKTsKJG15U2F2ZUFycmF5LT5hcHBlbmQoJ2Zvb2JhcicpOwoKLy8gY2hlY2sgdGhlIHBvc2l0aW9uIG9mIHRoZSBuZXcgZWxlbWVudApwcmludF9yKCRhcnJheSk7CnByaW50X3IoJG15QXJyYXkpOwpwcmludF9yKCRteVNhdmVBcnJheSk7CgovLyByZW1vdmUgc29tZSBlbGVtZW50CiRhcnJheSAgICAgIC0+b2Zmc2V0VW5zZXQoMSk7CiRteUFycmF5ICAgIC0+b2Zmc2V0VW5zZXQoMSk7CiRteVNhdmVBcnJheS0+b2Zmc2V0VW5zZXQoMSk7CgovLyBhZ2FpbiBhcHBlbmQgYW4gZWxlbWVudAokYXJyYXkgICAgICAtPmFwcGVuZCgnZm9vYmFyYmF6Jyk7CiRteUFycmF5ICAgIC0+YXBwZW5kKCdmb29iYXJiYXonKTsKJG15U2F2ZUFycmF5LT5hcHBlbmQoJ2Zvb2JhcmJheicpOwoKLy8gY2hlY2sgdGhlIHBvc2l0aW9uIG9mIHRoZSBuZXcgZWxlbWVudApwcmludF9yKCRhcnJheSk7CnByaW50X3IoJG15QXJyYXkpOwpwcmludF9yKCRteVNhdmVBcnJheSk7Cj8+CgpPdXRwdXQ6CgpBcnJheUl0ZXJhdG9yIE9iamVjdAooCiAgICBbc3RvcmFnZTpBcnJheUl0ZXJhdG9yOnByaXZhdGVdID0+IEFycmF5CiAgICAgICAgKAogICAgICAgICAgICBbMF0gPT4gZm9vCiAgICAgICAgICAgIFsxXSA9PiBiYXIKICAgICAgICAgICAgWzNdID0+IGZvb2JhcgogICAgICAgICkKCikKbXlBcnJheUl0ZXJhdG9yIE9iamVjdAooCiAgICBbc3RvcmFnZTpBcnJheUl0ZXJhdG9yOnByaXZhdGVdID0+IEFycmF5CiAgICAgICAgKAogICAgICAgICAgICBbMF0gPT4gZm9vCiAgICAgICAgICAgIFsxXSA9PiBiYXIKICAgICAgICAgICAgWzJdID0+IGZvb2JhcgogICAgICAgICkKCikKbXlTYXZlQXJyYXlJdGVyYXRvciBPYmplY3QKKAogICAgW3N0b3JhZ2U6QXJyYXlJdGVyYXRvcjpwcml2YXRlXSA9PiBBcnJheQogICAgICAgICgKICAgICAgICAgICAgWzBdID0+IGZvbwogICAgICAgICAgICBbMV0gPT4gYmFyCiAgICAgICAgICAgIFsyXSA9PiBmb29iYXIKICAgICAgICApCgopCkFycmF5SXRlcmF0b3IgT2JqZWN0CigKICAgIFtzdG9yYWdlOkFycmF5SXRlcmF0b3I6cHJpdmF0ZV0gPT4gQXJyYXkKICAgICAgICAoCiAgICAgICAgICAgIFswXSA9PiBmb28KICAgICAgICAgICAgWzNdID0+IGZvb2JhcgogICAgICAgICAgICBbNF0gPT4gZm9vYmFyYmF6CiAgICAgICAgKQoKKQpteUFycmF5SXRlcmF0b3IgT2JqZWN0CigKICAgIFtzdG9yYWdlOkFycmF5SXRlcmF0b3I6cHJpdmF0ZV0gPT4gQXJyYXkKICAgICAgICAoCiAgICAgICAgICAgIFswXSA9PiBmb28KICAgICAgICAgICAgWzJdID0+IGZvb2JhcgogICAgICAgICAgICBbM10gPT4gZm9vYmFyYmF6CiAgICAgICAgKQoKKQpteVNhdmVBcnJheUl0ZXJhdG9yIE9iamVjdAooCiAgICBbc3RvcmFnZTpBcnJheUl0ZXJhdG9yOnByaXZhdGVdID0+IEFycmF5CiAgICAgICAgKAogICAgICAgICAgICBbMF0gPT4gZm9vCiAgICAgICAgICAgIFsxXSA9PiBmb29iYXJiYXoKICAgICAgICAgICAgWzJdID0+IGZvb2JhcgogICAgICAgICkKCikKClRoaXMgaGVscGVkIG1lIHRvIHRyZWF0IHRoZSBBcnJheUl0ZXJhdG9yIGFzIGEgbGlzdCB3aXRoIHZhbGlkIGluZGV4ZXMgaW4gYSBzZXJpYWwgbWFubmVyLg==|5|3 102380|arrayiterator.append|50|1297368702|lenye01 at gmail dot com|d2UgY2FuIGFwcGVuZCB2YWx1ZXMgYWZ0ZXIgdGhlIGdpdmVuIGFycmF5LHRoZSBpbmRleCBpcyBiZWdpbiBmcm9tIDAsIGZvciBleGFtcGxlOgoKPD9waHAKJGIgPSBhcnJheSgnbmFtZSc9PidtZW5nemhpJywnYWdlJz0+JzIyJywnY2l0eSc9PidzaGFuZ2hhaScpOwokYSA9IG5ldyBBcnJheUl0ZXJhdG9yKCRiKTsKJGEtPmFwcGVuZChhcnJheSgnaG9tZSc9PidjaGluYScsJ3dvcmsnPT4nZGV2ZWxvcGVyJykpOwp2YXJfZHVtcCgkYSk7Cj8+Cgp0aGVuIG91dHB1dDoKb2JqZWN0KEFycmF5SXRlcmF0b3IpIzEgKDEpIHsgWyJzdG9yYWdlIjoiQXJyYXlJdGVyYXRvciI6cHJpdmF0ZV09PiBhcnJheSg0KSB7IFsibmFtZSJdPT4gc3RyaW5nKDcpICJtZW5nemhpIiBbImFnZSJdPT4gc3RyaW5nKDIpICIxMiIgWyJjaXR5Il09PiBzdHJpbmcoOCkgInNoYW5naGFpIiBbMF09PiBhcnJheSgyKSB7IFsiaG9tZSJdPT4gc3RyaW5nKDUpICJjaGluYSIgWyJ3b3JrIl09PiBzdHJpbmcoOSkgImRldmVsb3BlciIgfSB9IH0=|3|3