f0VMRgEBAQAAAAAAAAAAAAEACAABAAAAAAAAAAAAAABgHAAABxAAUDQAAAAAACgABQACAHYxOwpwYWNrYWdlIHVuaWNvZGU7CnBrZ3BhdGggdW5pY29kZTsKcHJpb3JpdHkgMTsKaW5pdCB1bmljb2RlIHVuaWNvZGUuLmltcG9ydCAxOwp2YXIgQVNDSUlfSGV4X0RpZ2l0IDx0eXBlIDEgKjx0eXBlIDIgIlJhbmdlVGFibGUiIDx0eXBlIDMgc3RydWN0IHsgUjE2IDx0eXBlIDQgW10gPHR5cGUgNSAiUmFuZ2UxNiIgPHR5cGUgNiBzdHJ1Y3QgeyBMbyA8dHlwZSAtNj47IEhpIDx0eXBlIC02PjsgU3RyaWRlIDx0eXBlIC02PjsgfT4+PjsgUjMyIDx0eXBlIDcgW10gPHR5cGUgOCAiUmFuZ2UzMiIgPHR5cGUgOSBzdHJ1Y3QgeyBMbyA8dHlwZSAtNz47IEhpIDx0eXBlIC03PjsgU3RyaWRlIDx0eXBlIC03PjsgfT4+PjsgTGF0aW5PZmZzZXQgPHR5cGUgLTExPjsgfT4+PjsKdmFyIEFyYWJpYyA8dHlwZSAxPjsKdmFyIEFybWVuaWFuIDx0eXBlIDE+Owp2YXIgQXZlc3RhbiA8dHlwZSAxPjsKdmFyIEF6ZXJpQ2FzZSA8dHlwZSAxMCAiU3BlY2lhbENhc2UiIDx0eXBlIDExIFtdIDx0eXBlIDEyICJDYXNlUmFuZ2UiIDx0eXBlIDEzIHN0cnVjdCB7IExvIDx0eXBlIC03PjsgSGkgPHR5cGUgLTc+OyBEZWx0YSA8dHlwZSAxNCAiLnVuaWNvZGUuZCIgPHR5cGUgMTUgWzMgXSA8dHlwZSAtMjE+Pj47IH0+Pj4KIGZ1bmMgKHNwZWNpYWwgPHR5cGUgMTA+KSBUb1VwcGVyIChyIDx0eXBlIC0yMT4pIDx0eXBlIC0yMT47CiBmdW5jIChzcGVjaWFsIDx0eXBlIDEwPikgVG9UaXRsZSAociA8dHlwZSAtMjE+KSA8dHlwZSAtMjE+OwogZnVuYyAoc3BlY2lhbCA8dHlwZSAxMD4pIFRvTG93ZXIgKHIgPHR5cGUgLTIxPikgPHR5cGUgLTIxPjsKPjsKdmFyIEJhbGluZXNlIDx0eXBlIDE+Owp2YXIgQmFtdW0gPHR5cGUgMT47CnZhciBCYXNzYV9WYWggPHR5cGUgMT47CnZhciBCYXRhayA8dHlwZSAxPjsKdmFyIEJlbmdhbGkgPHR5cGUgMT47CnZhciBCaWRpX0NvbnRyb2wgPHR5cGUgMT47CnZhciBCb3BvbW9mbyA8dHlwZSAxPjsKdmFyIEJyYWhtaSA8dHlwZSAxPjsKdmFyIEJyYWlsbGUgPHR5cGUgMT47CnZhciBCdWdpbmVzZSA8dHlwZSAxPjsKdmFyIEJ1aGlkIDx0eXBlIDE+Owp2YXIgQyA8dHlwZSAxPjsKdmFyIENhbmFkaWFuX0Fib3JpZ2luYWwgPHR5cGUgMT47CnZhciBDYXJpYW4gPHR5cGUgMT47CnR5cGUgPHR5cGUgMTI+Owp2YXIgQ2FzZVJhbmdlcyA8dHlwZSAxNiBbXSA8dHlwZSAxMj4+Owp2YXIgQ2F0ZWdvcmllcyA8dHlwZSAxNyBtYXAgWzx0eXBlIC0xNj5dIDx0eXBlIDE+PjsKdmFyIENhdWNhc2lhbl9BbGJhbmlhbiA8dHlwZSAxPjsKdmFyIENjIDx0eXBlIDE+Owp2YXIgQ2YgPHR5cGUgMT47CnZhciBDaGFrbWEgPHR5cGUgMT47CnZhciBDaGFtIDx0eXBlIDE+Owp2YXIgQ2hlcm9rZWUgPHR5cGUgMT47CnZhciBDbyA8dHlwZSAxPjsKdmFyIENvbW1vbiA8dHlwZSAxPjsKdmFyIENvcHRpYyA8dHlwZSAxPjsKdmFyIENzIDx0eXBlIDE+Owp2YXIgQ3VuZWlmb3JtIDx0eXBlIDE+Owp2YXIgQ3lwcmlvdCA8dHlwZSAxPjsKdmFyIEN5cmlsbGljIDx0eXBlIDE+Owp2YXIgRGFzaCA8dHlwZSAxPjsKdmFyIERlcHJlY2F0ZWQgPHR5cGUgMT47CnZhciBEZXNlcmV0IDx0eXBlIDE+Owp2YXIgRGV2YW5hZ2FyaSA8dHlwZSAxPjsKdmFyIERpYWNyaXRpYyA8dHlwZSAxPjsKdmFyIERpZ2l0IDx0eXBlIDE+Owp2YXIgRHVwbG95YW4gPHR5cGUgMT47CnZhciBFZ3lwdGlhbl9IaWVyb2dseXBocyA8dHlwZSAxPjsKdmFyIEVsYmFzYW4gPHR5cGUgMT47CnZhciBFdGhpb3BpYyA8dHlwZSAxPjsKdmFyIEV4dGVuZGVyIDx0eXBlIDE+Owp2YXIgRm9sZENhdGVnb3J5IDx0eXBlIDE4IG1hcCBbPHR5cGUgLTE2Pl0gPHR5cGUgMT4+Owp2YXIgRm9sZFNjcmlwdCA8dHlwZSAxOSBtYXAgWzx0eXBlIC0xNj5dIDx0eXBlIDE+PjsKdmFyIEdlb3JnaWFuIDx0eXBlIDE+Owp2YXIgR2xhZ29saXRpYyA8dHlwZSAxPjsKdmFyIEdvdGhpYyA8dHlwZSAxPjsKdmFyIEdyYW50aGEgPHR5cGUgMT47CnZhciBHcmFwaGljUmFuZ2VzIDx0eXBlIDIwIFtdIDx0eXBlIDIxICo8dHlwZSAyPj4+Owp2YXIgR3JlZWsgPHR5cGUgMT47CnZhciBHdWphcmF0aSA8dHlwZSAxPjsKdmFyIEd1cm11a2hpIDx0eXBlIDE+Owp2YXIgSGFuIDx0eXBlIDE+Owp2YXIgSGFuZ3VsIDx0eXBlIDE+Owp2YXIgSGFudW5vbyA8dHlwZSAxPjsKdmFyIEhlYnJldyA8dHlwZSAxPjsKdmFyIEhleF9EaWdpdCA8dHlwZSAxPjsKdmFyIEhpcmFnYW5hIDx0eXBlIDE+Owp2YXIgSHlwaGVuIDx0eXBlIDE+Owp2YXIgSURTX0JpbmFyeV9PcGVyYXRvciA8dHlwZSAxPjsKdmFyIElEU19UcmluYXJ5X09wZXJhdG9yIDx0eXBlIDE+Owp2YXIgSWRlb2dyYXBoaWMgPHR5cGUgMT47CnZhciBJbXBlcmlhbF9BcmFtYWljIDx0eXBlIDE+OwpmdW5jIEluIChyIDx0eXBlIC0yMT4sIHJhbmdlcyAuLi48dHlwZSAyMiAqPHR5cGUgMj4+KSA8dHlwZSAtMTU+Owp2YXIgSW5oZXJpdGVkIDx0eXBlIDE+Owp2YXIgSW5zY3JpcHRpb25hbF9QYWhsYXZpIDx0eXBlIDE+Owp2YXIgSW5zY3JpcHRpb25hbF9QYXJ0aGlhbiA8dHlwZSAxPjsKZnVuYyBJcyAocmFuZ2VUYWIgPHR5cGUgMT4sIHIgPHR5cGUgLTIxPikgPHR5cGUgLTE1PjsKZnVuYyBJc0NvbnRyb2wgKHIgPHR5cGUgLTIxPikgPHR5cGUgLTE1PjsKZnVuYyBJc0RpZ2l0IChyIDx0eXBlIC0yMT4pIDx0eXBlIC0xNT47CmZ1bmMgSXNHcmFwaGljIChyIDx0eXBlIC0yMT4pIDx0eXBlIC0xNT47CmZ1bmMgSXNMZXR0ZXIgKHIgPHR5cGUgLTIxPikgPHR5cGUgLTE1PjsKZnVuYyBJc0xvd2VyIChyIDx0eXBlIC0yMT4pIDx0eXBlIC0xNT47CmZ1bmMgSXNNYXJrIChyIDx0eXBlIC0yMT4pIDx0eXBlIC0xNT47CmZ1bmMgSXNOdW1iZXIgKHIgPHR5cGUgLTIxPikgPHR5cGUgLTE1PjsKZnVuYyBJc09uZU9mIChyYW5nZXMgPHR5cGUgMjMgW10gPHR5cGUgMjQgKjx0eXBlIDI+Pj4sIHIgPHR5cGUgLTIxPikgPHR5cGUgLTE1PjsKZnVuYyBJc1ByaW50IChyIDx0eXBlIC0yMT4pIDx0eXBlIC0xNT47CmZ1bmMgSXNQdW5jdCAociA8dHlwZSAtMjE+KSA8dHlwZSAtMTU+OwpmdW5jIElzU3BhY2UgKHIgPHR5cGUgLTIxPikgPHR5cGUgLTE1PjsKZnVuYyBJc1N5bWJvbCAociA8dHlwZSAtMjE+KSA8dHlwZSAtMTU+OwpmdW5jIElzVGl0bGUgKHIgPHR5cGUgLTIxPikgPHR5cGUgLTE1PjsKZnVuYyBJc1VwcGVyIChyIDx0eXBlIC0yMT4pIDx0eXBlIC0xNT47CnZhciBKYXZhbmVzZSA8dHlwZSAxPjsKdmFyIEpvaW5fQ29udHJvbCA8dHlwZSAxPjsKdmFyIEthaXRoaSA8dHlwZSAxPjsKdmFyIEthbm5hZGEgPHR5cGUgMT47CnZhciBLYXRha2FuYSA8dHlwZSAxPjsKdmFyIEtheWFoX0xpIDx0eXBlIDE+Owp2YXIgS2hhcm9zaHRoaSA8dHlwZSAxPjsKdmFyIEtobWVyIDx0eXBlIDE+Owp2YXIgS2hvamtpIDx0eXBlIDE+Owp2YXIgS2h1ZGF3YWRpIDx0eXBlIDE+Owp2YXIgTCA8dHlwZSAxPjsKdmFyIExhbyA8dHlwZSAxPjsKdmFyIExhdGluIDx0eXBlIDE+Owp2YXIgTGVwY2hhIDx0eXBlIDE+Owp2YXIgTGV0dGVyIDx0eXBlIDE+Owp2YXIgTGltYnUgPHR5cGUgMT47CnZhciBMaW5lYXJfQSA8dHlwZSAxPjsKdmFyIExpbmVhcl9CIDx0eXBlIDE+Owp2YXIgTGlzdSA8dHlwZSAxPjsKdmFyIExsIDx0eXBlIDE+Owp2YXIgTG0gPHR5cGUgMT47CnZhciBMbyA8dHlwZSAxPjsKdmFyIExvZ2ljYWxfT3JkZXJfRXhjZXB0aW9uIDx0eXBlIDE+Owp2YXIgTG93ZXIgPHR5cGUgMT47CmNvbnN0IExvd2VyQ2FzZSA9IDEgOwp2YXIgTHQgPHR5cGUgMT47CnZhciBMdSA8dHlwZSAxPjsKdmFyIEx5Y2lhbiA8dHlwZSAxPjsKdmFyIEx5ZGlhbiA8dHlwZSAxPjsKdmFyIE0gPHR5cGUgMT47CnZhciBNYWhhamFuaSA8dHlwZSAxPjsKdmFyIE1hbGF5YWxhbSA8dHlwZSAxPjsKdmFyIE1hbmRhaWMgPHR5cGUgMT47CnZhciBNYW5pY2hhZWFuIDx0eXBlIDE+Owp2YXIgTWFyayA8dHlwZSAxPjsKY29uc3QgTWF4QVNDSUkgPSAxMjcnIDsKY29uc3QgTWF4Q2FzZSA9IDMgOwpjb25zdCBNYXhMYXRpbjEgPSAyNTUnIDsKY29uc3QgTWF4UnVuZSA9IDExMTQxMTEnIDsKdmFyIE1jIDx0eXBlIDE+Owp2YXIgTWUgPHR5cGUgMT47CnZhciBNZWV0ZWlfTWF5ZWsgPHR5cGUgMT47CnZhciBNZW5kZV9LaWtha3VpIDx0eXBlIDE+Owp2YXIgTWVyb2l0aWNfQ3Vyc2l2ZSA8dHlwZSAxPjsKdmFyIE1lcm9pdGljX0hpZXJvZ2x5cGhzIDx0eXBlIDE+Owp2YXIgTWlhbyA8dHlwZSAxPjsKdmFyIE1uIDx0eXBlIDE+Owp2YXIgTW9kaSA8dHlwZSAxPjsKdmFyIE1vbmdvbGlhbiA8dHlwZSAxPjsKdmFyIE1ybyA8dHlwZSAxPjsKdmFyIE15YW5tYXIgPHR5cGUgMT47CnZhciBOIDx0eXBlIDE+Owp2YXIgTmFiYXRhZWFuIDx0eXBlIDE+Owp2YXIgTmQgPHR5cGUgMT47CnZhciBOZXdfVGFpX0x1ZSA8dHlwZSAxPjsKdmFyIE5rbyA8dHlwZSAxPjsKdmFyIE5sIDx0eXBlIDE+Owp2YXIgTm8gPHR5cGUgMT47CnZhciBOb25jaGFyYWN0ZXJfQ29kZV9Qb2ludCA8dHlwZSAxPjsKdmFyIE51bWJlciA8dHlwZSAxPjsKdmFyIE9naGFtIDx0eXBlIDE+Owp2YXIgT2xfQ2hpa2kgPHR5cGUgMT47CnZhciBPbGRfSXRhbGljIDx0eXBlIDE+Owp2YXIgT2xkX05vcnRoX0FyYWJpYW4gPHR5cGUgMT47CnZhciBPbGRfUGVybWljIDx0eXBlIDE+Owp2YXIgT2xkX1BlcnNpYW4gPHR5cGUgMT47CnZhciBPbGRfU291dGhfQXJhYmlhbiA8dHlwZSAxPjsKdmFyIE9sZF9UdXJraWMgPHR5cGUgMT47CnZhciBPcml5YSA8dHlwZSAxPjsKdmFyIE9zbWFueWEgPHR5cGUgMT47CnZhciBPdGhlciA8dHlwZSAxPjsKdmFyIE90aGVyX0FscGhhYmV0aWMgPHR5cGUgMT47CnZhciBPdGhlcl9EZWZhdWx0X0lnbm9yYWJsZV9Db2RlX1BvaW50IDx0eXBlIDE+Owp2YXIgT3RoZXJfR3JhcGhlbWVfRXh0ZW5kIDx0eXBlIDE+Owp2YXIgT3RoZXJfSURfQ29udGludWUgPHR5cGUgMT47CnZhciBPdGhlcl9JRF9TdGFydCA8dHlwZSAxPjsKdmFyIE90aGVyX0xvd2VyY2FzZSA8dHlwZSAxPjsKdmFyIE90aGVyX01hdGggPHR5cGUgMT47CnZhciBPdGhlcl9VcHBlcmNhc2UgPHR5cGUgMT47CnZhciBQIDx0eXBlIDE+Owp2YXIgUGFoYXdoX0htb25nIDx0eXBlIDE+Owp2YXIgUGFsbXlyZW5lIDx0eXBlIDE+Owp2YXIgUGF0dGVybl9TeW50YXggPHR5cGUgMT47CnZhciBQYXR0ZXJuX1doaXRlX1NwYWNlIDx0eXBlIDE+Owp2YXIgUGF1X0Npbl9IYXUgPHR5cGUgMT47CnZhciBQYyA8dHlwZSAxPjsKdmFyIFBkIDx0eXBlIDE+Owp2YXIgUGUgPHR5cGUgMT47CnZhciBQZiA8dHlwZSAxPjsKdmFyIFBoYWdzX1BhIDx0eXBlIDE+Owp2YXIgUGhvZW5pY2lhbiA8dHlwZSAxPjsKdmFyIFBpIDx0eXBlIDE+Owp2YXIgUG8gPHR5cGUgMT47CnZhciBQcmludFJhbmdlcyA8dHlwZSAyNSBbXSA8dHlwZSAyNiAqPHR5cGUgMj4+PjsKdmFyIFByb3BlcnRpZXMgPHR5cGUgMjcgbWFwIFs8dHlwZSAtMTY+XSA8dHlwZSAxPj47CnZhciBQcyA8dHlwZSAxPjsKdmFyIFBzYWx0ZXJfUGFobGF2aSA8dHlwZSAxPjsKdmFyIFB1bmN0IDx0eXBlIDE+Owp2YXIgUXVvdGF0aW9uX01hcmsgPHR5cGUgMT47CnZhciBSYWRpY2FsIDx0eXBlIDE+Owp0eXBlIDx0eXBlIDU+Owp0eXBlIDx0eXBlIDg+Owp0eXBlIDx0eXBlIDI+Owp2YXIgUmVqYW5nIDx0eXBlIDE+Owpjb25zdCBSZXBsYWNlbWVudENoYXIgPSA2NTUzMycgOwp2YXIgUnVuaWMgPHR5cGUgMT47CnZhciBTIDx0eXBlIDE+Owp2YXIgU1Rlcm0gPHR5cGUgMT47CnZhciBTYW1hcml0YW4gPHR5cGUgMT47CnZhciBTYXVyYXNodHJhIDx0eXBlIDE+Owp2YXIgU2MgPHR5cGUgMT47CnZhciBTY3JpcHRzIDx0eXBlIDI4IG1hcCBbPHR5cGUgLTE2Pl0gPHR5cGUgMT4+Owp2YXIgU2hhcmFkYSA8dHlwZSAxPjsKdmFyIFNoYXZpYW4gPHR5cGUgMT47CnZhciBTaWRkaGFtIDx0eXBlIDE+OwpmdW5jIFNpbXBsZUZvbGQgKHIgPHR5cGUgLTIxPikgPHR5cGUgLTIxPjsKdmFyIFNpbmhhbGEgPHR5cGUgMT47CnZhciBTayA8dHlwZSAxPjsKdmFyIFNtIDx0eXBlIDE+Owp2YXIgU28gPHR5cGUgMT47CnZhciBTb2Z0X0RvdHRlZCA8dHlwZSAxPjsKdmFyIFNvcmFfU29tcGVuZyA8dHlwZSAxPjsKdmFyIFNwYWNlIDx0eXBlIDE+Owp0eXBlIDx0eXBlIDEwPjsKdmFyIFN1bmRhbmVzZSA8dHlwZSAxPjsKdmFyIFN5bG90aV9OYWdyaSA8dHlwZSAxPjsKdmFyIFN5bWJvbCA8dHlwZSAxPjsKdmFyIFN5cmlhYyA8dHlwZSAxPjsKdmFyIFRhZ2Fsb2cgPHR5cGUgMT47CnZhciBUYWdiYW53YSA8dHlwZSAxPjsKdmFyIFRhaV9MZSA8dHlwZSAxPjsKdmFyIFRhaV9UaGFtIDx0eXBlIDE+Owp2YXIgVGFpX1ZpZXQgPHR5cGUgMT47CnZhciBUYWtyaSA8dHlwZSAxPjsKdmFyIFRhbWlsIDx0eXBlIDE+Owp2YXIgVGVsdWd1IDx0eXBlIDE+Owp2YXIgVGVybWluYWxfUHVuY3R1YXRpb24gPHR5cGUgMT47CnZhciBUaGFhbmEgPHR5cGUgMT47CnZhciBUaGFpIDx0eXBlIDE+Owp2YXIgVGliZXRhbiA8dHlwZSAxPjsKdmFyIFRpZmluYWdoIDx0eXBlIDE+Owp2YXIgVGlyaHV0YSA8dHlwZSAxPjsKdmFyIFRpdGxlIDx0eXBlIDE+Owpjb25zdCBUaXRsZUNhc2UgPSAyIDsKZnVuYyBUbyAoX2Nhc2UgPHR5cGUgLTExPiwgciA8dHlwZSAtMjE+KSA8dHlwZSAtMjE+OwpmdW5jIFRvTG93ZXIgKHIgPHR5cGUgLTIxPikgPHR5cGUgLTIxPjsKZnVuYyBUb1RpdGxlIChyIDx0eXBlIC0yMT4pIDx0eXBlIC0yMT47CmZ1bmMgVG9VcHBlciAociA8dHlwZSAtMjE+KSA8dHlwZSAtMjE+Owp2YXIgVHVya2lzaENhc2UgPHR5cGUgMTA+Owp2YXIgVWdhcml0aWMgPHR5cGUgMT47CnZhciBVbmlmaWVkX0lkZW9ncmFwaCA8dHlwZSAxPjsKdmFyIFVwcGVyIDx0eXBlIDE+Owpjb25zdCBVcHBlckNhc2UgPSAwIDsKY29uc3QgVXBwZXJMb3dlciA9IDExMTQxMTInIDsKdmFyIFZhaSA8dHlwZSAxPjsKdmFyIFZhcmlhdGlvbl9TZWxlY3RvciA8dHlwZSAxPjsKY29uc3QgVmVyc2lvbiA9ICI3LjAuMCI7CnZhciBXYXJhbmdfQ2l0aSA8dHlwZSAxPjsKdmFyIFdoaXRlX1NwYWNlIDx0eXBlIDE+Owp2YXIgWWkgPHR5cGUgMT47CnZhciBaIDx0eXBlIDE+Owp2YXIgWmwgPHR5cGUgMT47CnZhciBacCA8dHlwZSAxPjsKdmFyIFpzIDx0eXBlIDE+OwpjaGVja3N1bSA1M0ZGQUIwQUExOEU1MTcyODg5ODA0MTI0MzEyOERCQTgxQ0IzMDEzOwoALnN5bXRhYgAuc3RydGFiAC5zaHN0cnRhYgAuZ29fZXhwb3J0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbAAAAAQAAAAAAAAAAAAAANAAAAN8bAAAAAAAAAAAAAAEAAAAAAAAAEQAAAAMAAAAAAAAAAAAAABMcAAAmAAAAAAAAAAAAAAABAAAAAAAAAAEAAAACAAAAAAAAAAAAAAA8HAAAIAAAAAQAAAACAAAABAAAABAAAAAJAAAAAwAAAAAAAAAAAAAAXBwAAAEAAAAAAAAAAAAAAAEAAAAAAAAA