LyoKICogVHVya2lzaCBSZXNvdXJjZXMgZm9yIFByb2dyYW0gTWFuYWdlcgogKgogKiBDb3B5cmlnaHQgMjAwNiBGYXRpaCBB/v1j/QogKgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EKICovCgovKiBNZW51ICovCgpNQUlOX01FTlUgTUVOVSBMQU5HVUFHRSBMQU5HX1RVUktJU0gsIFNVQkxBTkdfREVGQVVMVAp7CiBQT1BVUCAiJkRvc3lhIiB7CiAgIE1FTlVJVEVNICImWWVuaS4uLiIsICAgICAgICAgICAgICAgICAgUE1fTkVXCiAgIE1FTlVJVEVNICImQedcdEVudGVyIiwgICAgICAgICAgICAgICAgUE1fT1BFTgogICBNRU5VSVRFTSAiJlRh/v0uLi5cdEY3IiwgICAgICAgICAgICAgIFBNX01PVkUsICAgICAgR1JBWUVECiAgIE1FTlVJVEVNICImS29weWFsYS4uLlx0RjgiLCAgICAgICAgICAgUE1fQ09QWSwgICAgICBHUkFZRUQKICAgTUVOVUlURU0gIiZTaWxcdEVudGYiLCAgICAgICAgICAgICAgICBQTV9ERUxFVEUKICAgTUVOVUlURU0gIibWem5pdGVsaWtsZXIuLi5cdEFsdCtFbnRlciIsICAgICAgIFBNX0FUVFJJQlVURVMKICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgIE1FTlVJVEVNICLHYWz9Jv50/XIuLi4iLCAgICAgICAgICAgICAgUE1fRVhFQ1VURQogICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgTUVOVUlURU0gIldpbmRvd3MndGFuICbH/WsuLi4iLCAgICAgICBQTV9FWElUCiB9CiBQT1BVUCAiJlNl52VuZWtsZXIiIHsKICAgTUVOVUlURU0gIk90b21hdGlrICZk/HplbmxlIiwgICAgICAgICBQTV9BVVRPX0FSUkFOR0UKICAgTUVOVUlURU0gIiZTaW1nZSBoYWxpbmRlIOdhbP3+dP1yIiwgICBQTV9NSU5fT05fUlVOCiAgIE1FTlVJVEVNICImx/1r/f50YSBheWFybGFy/SBzYWtsYSIsICAgUE1fU0FWRV9TRVRUSU5HUwogfQogUE9QVVAgIiZQZW5jZXJlbGVyIiB7CiAgIE1FTlVJVEVNICIm3HN0IPxzdGUgZGl6XHRTaGlmdCtGNSIsICAgUE1fT1ZFUkxBUAogICBNRU5VSVRFTSAiJllhbiB5YW5hIGRpelx0U2hpZnQrRjQiLCAgIFBNX1NJREVfQllfU0lERQogICBNRU5VSVRFTSAiJlNpbWdlbGVyaSBk/HplbmxlIiwgICAgICAgIFBNX0FSUkFOR0UKIH0KIApQT1BVUCAiJllhcmT9bSIgewogICBNRU5VSVRFTSAiJt3naW5kZWtpbGVyIiwgICAgICAgICBQTV9DT05URU5UUwogICBNRU5VSVRFTSAiJkFyYS4uLiIsICAgICAgICAgICBQTV9TRUFSQ0gKICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgIE1FTlVJVEVNICImWWFyZP1tIEt1bGxhbv1t/SIsICAgICBQTV9IRUxQT05IRUxQCiAgIE1FTlVJVEVNICIm1vByZXRpY2kiLCAgICAgICAgIFBNX1RVVE9SSUFMCiAgIE1FTlVJVEVNIFNFUEFSQVRPUgoKICAgUE9QVVAgIiZCaWxnaS4uLiIgewogICAgIE1FTlVJVEVNICImTGlzYW5zIiwgICAgICAgIFBNX0xJQ0VOU0UKICAgICBNRU5VSVRFTSAiJkdBUkFOVN0gWU9LIiwgICAgUE1fTk9fV0FSUkFOVFkKICAgICBNRU5VSVRFTSAiJldJTkUgSGFra/1uZGEiLCAgICAgUE1fQUJPVVRfV0lORQogICB9CiB9Cn0KCi8qIERpYWxvZyBgTmV3JyAqLwoKRElBTE9HX05FVyBESUFMT0cgMCwgMCwgMTcwLCA2NQpMQU5HVUFHRSBMQU5HX1RVUktJU0gsIFNVQkxBTkdfREVGQVVMVApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJZZW5pIgp7ClJBRElPQlVUVE9OICAgIiIsICAgICAgICAgICAgICAgICBQTV9ORVdfR1JPVVAsICAgIDEwLCAxNSwgIDEwLCAxNQpMVEVYVCAgICAgICAgICJQcm9ncmFtICZncnVidSIsICAgLTEsICAgIDIwLCAxOCwgIDgwLCAxNQpSQURJT0JVVFRPTiAgICIiLCAgICAgICAgICAgICAgICAgUE1fTkVXX1BST0dSQU0sICAxMCwgMzUsICAxMCwgMTUKTFRFWFQgICAgICAgICAiJlByb2dyYW0iLCAgICAgICAgIC0xLCAgMjAsIDM4LCAgODAsIDE1CkRFRlBVU0hCVVRUT04gIlRhbWFtIiwgICAgICAgICAgICBJRE9LLCAgICAgICAgICAgMTA1LCAgNSwgIDYwLCAxNSwgV1NfVEFCU1RPUApQVVNIQlVUVE9OICAgICLdcHRhbCIsICAgICAgICAgICAgSURDQU5DRUwsICAgICAgIDEwNSwgMjUsICA2MCwgMTUsIFdTX1RBQlNUT1AKUFVTSEJVVFRPTiAgICAiJllhZP1tIiwgICAgICAgICAgIFBNX0hFTFAsICAgICAgICAxMDUsIDQ1LCAgNjAsIDE1LCBXU19UQUJTVE9QCn0KCi8qIERpYWxvZyBgTW92ZScgKi8KCkRJQUxPR19NT1ZFIERJQUxPRyAwLCAwLCAyNTAsIDY1CkxBTkdVQUdFIExBTkdfVFVSS0lTSCwgU1VCTEFOR19ERUZBVUxUClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIlByb2dyYW39IFRh/v0iCnsKTFRFWFQgICAgICAgICAiVGH+/W5hY2FrIHByb2dyYW06IiwgICAtMSwgICAgICAgICAgICA1LCAgNSwgIDkwLCAxNQpMVEVYVCAgICAgICAgICIiLCAgICAgICAgICAgICAgICAgICAgIFBNX1BST0dSQU0sICAgICAgICAgOTUsICA1LCAgOTAsIDE1CkxURVhUICAgICAgICAgIktheW5hayBncnVwOiIsICAgICAgICAgLTEsICAgICAgICAgICAgNSwgMTMsICA5MCwgMTUKTFRFWFQgICAgICAgICAiIiwgICAgICAgICAgICAgICAgICAgICBQTV9GUk9NX0dST1VQLCAgICAgIDk1LCAxMywgIDkwLCAxNQpMVEVYVCAgICAgICAgICImSGVkZWYgZ3J1cDoiLCAgICAgICAgIFBNX1RPX0dST1VQX1RYVCwgICAgIDUsIDI4LCAxNDAsIDE1CkNPTUJPQk9YICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUE1fVE9fR1JPVVAsICAgICAgICAgNSwgMzgsIDE0MCwgNTAsIFdTX1RBQlNUT1AgfCBDQlNfRFJPUERPV05MSVNUCkRFRlBVU0hCVVRUT04gIlRhbWFtIiwgICAgICAgICAgICAgIElET0ssICAgICAgICAgICAgICAxODUsICA1LCAgNjAsIDE1LCBXU19UQUJTVE9QClBVU0hCVVRUT04gICAgIt1wdGFsIiwgICAgICAgICAgICAgIElEQ0FOQ0VMLCAgICAgICAgICAxODUsIDI1LCAgNjAsIDE1LCBXU19UQUJTVE9QClBVU0hCVVRUT04gICAgIiZZYXJk/W0iLCAgICAgICAgICAgIFBNX0hFTFAsICAgICAgICAgICAxODUsIDQ1LCAgNjAsIDE1LCBXU19UQUJTVE9QCn0KCi8qIERpYWxvZyBgQ29weScgKi8KCkRJQUxPR19DT1BZIERJQUxPRyAwLCAwLCAyNTAsIDY1CkxBTkdVQUdFIExBTkdfVFVSS0lTSCwgU1VCTEFOR19ERUZBVUxUClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIlByb2dyYW0gS29weWFsYSIKewpMVEVYVCAgICAgICAgICJLb3B5YWxhbmFjYWsgcHJvZ3JhbToiLCAgIC0xLCAgICAgICAgICAgIDUsICA1LCAgOTAsIDE1CkxURVhUICAgICAgICAgIiIsICAgICAgICAgICAgICAgICAgICAgICAgUE1fUFJPR1JBTSwgICAgICAgICA5NSwgIDUsICA5MCwgMTUKTFRFWFQgICAgICAgICAiS2F5bmFrIGdydXA6IiwgICAgICAgICAgICAtMSwgICAgICAgICAgICA1LCAxMywgIDkwLCAxNQpMVEVYVCAgICAgICAgICIiLCAgICAgICAgICAgICAgICAgICAgICAgIFBNX0ZST01fR1JPVVAsICAgICAgOTUsIDEzLCAgOTAsIDE1CkxURVhUICAgICAgICAgIiZIZWRlZiBncnVwOiIsICAgICAgICAgICAgUE1fVE9fR1JPVVBfVFhULCAgICAgNSwgMjgsIDE0MCwgMTUKQ09NQk9CT1ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQTV9UT19HUk9VUCwgICAgICAgICA1LCAzOCwgMTQwLCA1MCwgV1NfVEFCU1RPUCB8IENCU19EUk9QRE9XTkxJU1QKREVGUFVTSEJVVFRPTiAiVGFtYW0iLCAgICAgICAgICAgICAgICAgICBJRE9LLCAgICAgICAgICAgICAgMTg1LCAgNSwgIDYwLCAxNSwgV1NfVEFCU1RPUApQVVNIQlVUVE9OICAgICLdcHRhbCIsICAgICAgICAgICAgICAgICAgIElEQ0FOQ0VMLCAgICAgICAgICAxODUsIDI1LCAgNjAsIDE1LCBXU19UQUJTVE9QClBVU0hCVVRUT04gICAgIiZZYXJk/W0iLCAgICAgICAgICAgICAgICAgUE1fSEVMUCwgICAgICAgICAgIDE4NSwgNDUsICA2MCwgMTUsIFdTX1RBQlNUT1AKfQoKLyogRGlhbG9nIGBHcm91cCBhdHRyaWJ1dGVzJyAqLwoKRElBTE9HX0dST1VQIERJQUxPRyAwLCAwLCAyMzAsIDY1CkxBTkdVQUdFIExBTkdfVFVSS0lTSCwgU1VCTEFOR19ERUZBVUxUClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIlByb2dyYW0gR3J1YnUg1nplbGxpa2xlcmkiCnsKTFRFWFQgICAgICImQef9a2xhbWE6IiwgICAgICAgIFBNX0RFU0NSSVBUSU9OX1RYVCwgICAwNSwgMTgsICA1MCwgMTAKRURJVFRFWFQgICAgICAgICAgICAgICAgICAgICAgIFBNX0RFU0NSSVBUSU9OLCAgICAgICA2MCwgMTgsICA5MCwgMTUsIFdTX1RBQlNUT1AKTFRFWFQgICAgICImR3J1cCBkb3N5YXP9OiIsICAgIFBNX0ZJTEVfVFhULCAgICAgICAgICAwNSwgMzgsICA1MCwgMTAKRURJVFRFWFQgICAgICAgICAgICAgICAgICAgICAgIFBNX0ZJTEUsICAgICAgICAgICAgICA2MCwgMzgsICA5MCwgMTUsIFdTX1RBQlNUT1AKREVGUFVTSEJVVFRPTiAiVGFtYW0iLCAgICAgICAgIElET0ssICAgICAgICAgICAgICAgIDE1NSwgIDUsICA2MCwgMTUsIFdTX1RBQlNUT1AKUFVTSEJVVFRPTiAgICAi3XB0YWwiLCAgICAgICAgIElEQ0FOQ0VMLCAgICAgICAgICAgIDE1NSwgMjUsICA2MCwgMTUsIFdTX1RBQlNUT1AKUFVTSEJVVFRPTiAgICAiJllhcmT9bSIsICAgICAgIFBNX0hFTFAsICAgICAgICAgICAgIDE1NSwgNDUsICA2MCwgMTUsIFdTX1RBQlNUT1AKfQoKLyogRGlhbG9nIGBQcm9ncmFtIGF0dHJpYnV0ZXMnICovCgpESUFMT0dfUFJPR1JBTSBESUFMT0cgMCwgMCwgMjUwLCAxMDUKTEFOR1VBR0UgTEFOR19UVVJLSVNILCBTVUJMQU5HX0RFRkFVTFQKU1RZTEUgRFNfTU9EQUxGUkFNRSB8IFdTX1BPUFVQIHwgV1NfQ0FQVElPTiB8IFdTX1NZU01FTlUKQ0FQVElPTiAiUHJvZ3JhbSDWemVsbGlrbGVyaSIKewpMVEVYVCAgICAgICAgICImQef9a2xhbWE6IiwgICAgICAgUE1fREVTQ1JJUFRJT05fVFhULCAgIDA1LCAxMCwgIDYwLCAxMApFRElUVEVYVCAgICAgICAgICAgICAgICAgICAgICAgICAgUE1fREVTQ1JJUFRJT04sICAgICAgIDgwLCAxMCwgIDkwLCAxNSwgV1NfVEFCU1RPUApMVEVYVCAgICAgICAgICImS29tdXQgc2F0/XL9OiIsICAgUE1fQ09NTUFORF9MSU5FX1RYVCwgIDA1LCAyNSwgIDYwLCAxMApFRElUVEVYVCAgICAgICAgICAgICAgICAgICAgICAgICAgUE1fQ09NTUFORF9MSU5FLCAgICAgIDgwLCAyNSwgIDkwLCAxNSwgV1NfVEFCU1RPUApMVEVYVCAgICAgICAgICImx2Fs/f5tYSBkaXppbmk6IiwgUE1fRElSRUNUT1JZX1RYVCwgICAgIDA1LCA0MCwgIDYwLCAxMApFRElUVEVYVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUE1fRElSRUNUT1JZLCAgICAgICAgIDgwLCA0MCwgIDkwLCAxNSwgV1NfVEFCU1RPUApMVEVYVCAgICAgICAgICImVHX+IGtvbWJpbmFzeW9udToiLCAgICAgICAgUE1fSE9UX0tFWV9UWFQsICAgICAgIDA1LCA1NSwgIDYwLCAxMApFRElUVEVYVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUE1fSE9UX0tFWSwgICAgICAgICAgIDgwLCA1NSwgIDkwLCAxNSwgV1NfVEFCU1RPUApJQ09OICAgICAgICAgICIiLCAgICAgICAgICAgICAgICAgICAgICAgICAgUE1fSUNPTiwgICAgICAgICAgICAgIDIwLCA3MApDSEVDS0JPWCAgICAgICIiLCAgICAgICAgICAgICAgICAgICAgICAgICAgUE1fU1lNQk9MLCAgICAgICAgICAgIDgwLCA3NSwgIDEwLCAxMCwgV1NfVEFCU1RPUApMVEVYVCAgICAgICAgICImU2ltZ2UgaGFsaW5kZSDnYWz9/nT9ciIsICAgLTEsICAgICAgICAgICAgIDk1LCA3NSwgIDc1LCAxMApERUZQVVNIQlVUVE9OICJUYW1hbSIsICAgICAgICAgICAgICAgICAgIElET0ssICAgICAgICAgICAgICAgIDE4NSwgIDUsICA2MCwgMTUsIFdTX1RBQlNUT1AKUFVTSEJVVFRPTiAgICAi3XB0YWwiLCAgICAgICAgICAgICAgICAgICBJRENBTkNFTCwgICAgICAgICAgICAxODUsIDI1LCAgNjAsIDE1LCBXU19UQUJTVE9QClBVU0hCVVRUT04gICAgIiZH9nphdC4uLiIsICAgICAgICAgICAgICAgUE1fQlJPV1NFLCAgICAgICAgICAgMTg1LCA0NSwgIDYwLCAxNSwgV1NfVEFCU1RPUApQVVNIQlVUVE9OICAgICJTaW1nZSAmZGXwaf50aXIuLi4iLCAgICAgIFBNX09USEVSX1NZTUJPTCwgICAgIDE4NSwgNjUsICA2MCwgMTUsIFdTX1RBQlNUT1AKUFVTSEJVVFRPTiAgICAiJllhcmT9bSIsICAgICAgICAgICAgICAgICBQTV9IRUxQLCAgICAgICAgICAgICAxODUsIDg1LCAgNjAsIDE1LCBXU19UQUJTVE9QCn0KCi8qIERpYWxvZyBgU3ltYm9sJyAqLwoKRElBTE9HX1NZTUJPTCBESUFMT0cgMCwgMCwgMjAwLCA4NQpMQU5HVUFHRSBMQU5HX1RVUktJU0gsIFNVQkxBTkdfREVGQVVMVApTVFlMRSBEU19NT0RBTEZSQU1FIHwgV1NfUE9QVVAgfCBXU19DQVBUSU9OIHwgV1NfU1lTTUVOVQpDQVBUSU9OICJTaW1nZSBEZfBp/nRpciIKewpMVEVYVCAgICAgIiZEb3N5YSBhZP06IiwgICAgIFBNX0lDT05fRklMRV9UWFQsICAgIDUsIDE1LCAgNDAsIDEwCkVESVRURVhUICAgICAgICAgICAgICAgICAgICAgUE1fSUNPTl9GSUxFLCAgICAgICA0NSwgMTUsICA4NSwgMTUsIFdTX1RBQlNUT1AKTFRFWFQgICAgICJHZedlcmxpICZzaW1nZToiLCBQTV9TWU1CT0xfTElTVF9UWFQsICA1LCAzMCwgMTI1LCAxMApDT01CT0JPWCAgICAgICAgICAgICAgICAgICAgICAgICBQTV9TWU1CT0xfTElTVCwgICAgICA1LCA0MCwgMTI1LCA1MCwKICAgQ0JTX0RST1BET1dOTElTVCB8IENCU19BVVRPSFNDUk9MTCB8IENCU19PV05FUkRSQVdGSVhFRCB8IFdTX1RBQlNUT1AKREVGUFVTSEJVVFRPTiAiVGFtYW0iLCAgICAgIElET0ssICAgICAgICAgICAgICAxMzUsICA1LCAgNjAsIDE1LCBXU19UQUJTVE9QClBVU0hCVVRUT04gICAgIt1wdGFsIiwgICAgICBJRENBTkNFTCwgICAgICAgICAgMTM1LCAyNSwgIDYwLCAxNSwgV1NfVEFCU1RPUApQVVNIQlVUVE9OICAgICImR/Z6YXQuLi4iLCAgUE1fQlJPV1NFLCAgICAgICAgIDEzNSwgNDUsICA2MCwgMTUsIFdTX1RBQlNUT1AKUFVTSEJVVFRPTiAgICAiJllhcmT9bSIsICAgIFBNX0hFTFAsICAgICAgICAgICAxMzUsIDY1LCAgNjAsIDE1LCBXU19UQUJTVE9QCn0KCi8qIERpYWxvZyBgRXhlY3V0ZScgKi8KCkRJQUxPR19FWEVDVVRFIERJQUxPRyAwLCAwLCAyMDAsIDg1CkxBTkdVQUdFIExBTkdfVFVSS0lTSCwgU1VCTEFOR19ERUZBVUxUClNUWUxFIERTX01PREFMRlJBTUUgfCBXU19QT1BVUCB8IFdTX0NBUFRJT04gfCBXU19TWVNNRU5VCkNBUFRJT04gIlByb2dyYW0gx2Fs/f50/XIiCnsKTFRFWFQgICAgICAgICAiJktvbXV0IHNhdP1y/ToiLCAgICAgICAgLTEsICAgMDUsIDE1LCAxMjAsIDEwCkVESVRURVhUICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBNX0NPTU1BTkQsIDA1LCAyNSwgMTIwLCAxNSwgV1NfVEFCU1RPUApDSEVDS0JPWCAgICAgICIiLCAgICAgICAgICAgICAgICAgICAgICBQTV9TWU1CT0wsICAwNSwgNDUsICAxMCwgMTAsIFdTX1RBQlNUT1AKTFRFWFQgICAgICAgICAiJlNpbWdlIGhhbGluZGUgYmH+bGF0IiwgLTEsICAgMjAsIDQ1LCAxMjAsIDEwCkRFRlBVU0hCVVRUT04gIlRhbWFtIiwgICAgICAgICAgICAgICAgIElET0ssICAgICAgMTM1LCAgNSwgIDYwLCAxNSwgV1NfVEFCU1RPUApQVVNIQlVUVE9OICAgICLdcHRhbCIsICAgICAgICAgICAgICAgICBJRENBTkNFTCwgIDEzNSwgMjUsICA2MCwgMTUsIFdTX1RBQlNUT1AKUFVTSEJVVFRPTiAgICAiJkf2emF0Li4uIiwgICAgICAgICAgICAgUE1fQlJPV1NFLCAxMzUsIDQ1LCAgNjAsIDE1LCBXU19UQUJTVE9QClBVU0hCVVRUT04gICAgIiZZYXJk/W0iLCAgICAgICAgICAgICAgIFBNX0hFTFAsICAgMTM1LCA2NSwgIDYwLCAxNSwgV1NfVEFCU1RPUAp9CgovKiBTdHJpbmdzICovCgpTVFJJTkdUQUJMRSBESVNDQVJEQUJMRSBMQU5HVUFHRSBMQU5HX1RVUktJU0gsIFNVQkxBTkdfREVGQVVMVAp7CklEU19QUk9HUkFNX01BTkFHRVIsCQkiUHJvZ3JhbSBZ9m5ldGljaXNpIgpJRFNfRVJST1IsCQkJIkhBVEEiCklEU19XQVJOSU5HLAkJCSJVWUFSSSIKSURTX0lORk8sCQkJIkJpbGdpIgpJRFNfREVMRVRFLAkJCSJTaWwiCklEU19ERUxFVEVfR1JPVVBfcywJCSInJXMnIGdydWJ1IHNpbGluc2luIG1pPyIKSURTX0RFTEVURV9QUk9HUkFNX3MsCQkiJyVzJyBwcm9ncmFt/SBzaWxpbnNpbiBtaT8iCklEU19OT1RfSU1QTEVNRU5URUQsCQkiSGVu/HogVGFu/W1sYW5tYWT9IgpJRFNfRklMRV9SRUFEX0VSUk9SX3MsCQkiJyVzJyBva3VudXJrZW4gaGF0YS4iCklEU19GSUxFX1dSSVRFX0VSUk9SX3MsCQkiJyVzJyB5YXr9bP1ya2VuIGhhdGEuIgpJRFNfR1JQRklMRV9SRUFEX0VSUk9SX3MsCSJcCiclcycgZ3J1cCBkb3N5YXP9IGHn/WxhbWFk/S5cblwKRGFoYSBzb25yYSBkZW5lbnNpbiBtaT8iCklEU19PVVRfT0ZfTUVNT1JZLAkJIkJlbGxlayBkb2x1LiIKSURTX1dJTkhFTFBfRVJST1IsCQkiWWFyZP1tIGt1bGxhbv1sYWJpbGlyIGRl8GlsLiIKSURTX1VOS05PV05fRkVBVFVSRV9zLAkJIiVzIGnnaW5kZSBiaWxpbm1leWVuIPZ6ZWxsaWsiCklEU19GSUxFX05PVF9PVkVSV1JJVFRFTl9zLAkiJyVzJyBkb3N5YXP9IG1ldmN1dC4g3HplcmluZSB5YXr9bG1hZP0uIgpJRFNfU0FWRV9HUk9VUF9BU19zLAkJIkFz/WwgZG9zeWEg/HplcmluZSB5YXptYXn9IGVuZ2VsbGVtZWsgaedpbiBkb3N5YXn9ICclcycgYWT9eWxhIGtheWRldC4iCklEU19OT19IT1RfS0VZLAkJCSJIaediaXJpIgpJRFNfQUxMX0ZJTEVTLAkJCSJU/G0gZG9zeWFsYXIgKCouKikiCklEU19QUk9HUkFNUywJCQkiUHJvZ3JhbWxhciIKSURTX0xJQlJBUklFU19ETEwsCQkiS2l0YXBs/WtsYXIgKCouZGxsKSIKSURTX1NZTUJPTF9GSUxFUywJCSJTaW1nZSBkb3N5YWxhcv0iCklEU19TWU1CT0xTX0lDTywJCSJTaW1nZWxlciAoKi5pY28pIgp9Cg==