@epam/ai-dial-attachment-canvas 1.2.0-dev.2 → 1.2.0-dev.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{LazyContentBoundary-CL7J_W9c.js → LazyContentBoundary-CRXN6PG3.js} +1 -1
- package/{PdfContent-DhfjgYL-.js → PdfContent-D71LPAe3.js} +1 -1
- package/{attachment-canvas-Bp6WeQws.js → attachment-canvas-nvhW3tKV.js} +3 -1
- package/{bounded-raw-part-cache-BfbSxRIL-DD07NKh9.js → bounded-raw-part-cache-Cg1BsSZQ-DN8p45IK.js} +1111 -1043
- package/{chart-ex-B0DgG3Dt.js → chart-ex-DsESBs97.js} +1 -1
- package/{comment-occurrence-CqejEuts-7SeKCBXk.js → comment-occurrence-C8Y2uoVr-C1cxz2TU.js} +1 -1
- package/{comment-ui-runtime-lXwVOgjW-Be4RALsI.js → comment-ui-runtime-BfE7MJZn-DhQ_eg15.js} +29 -29
- package/comment-ui-runtime-BsK8pmUT-EgWiymew.js +2 -0
- package/{comment-ui-runtime-DEtgcmj7-B1G7PH4z.js → comment-ui-runtime-DcJOYlw--B15auUq-.js} +52 -52
- package/{comments-CAn2A_Xh-CdgNAj0h.js → comments-Diid5ujN-BdQhRNjI.js} +2 -2
- package/components/OoxmlContent/OoxmlContent.d.ts.map +1 -1
- package/{delimited-text-worker-host-DcHj_JZt-DWJmaPag.js → delimited-text-worker-host-BVY-Ecni-AimUmSn0.js} +1 -1
- package/{docx-B9qBTEkj.js → docx-B-VcIRoc.js} +4628 -4580
- package/index.js +564 -564
- package/line-distribute-Dtudnqhs--BYZNgzX.js +1237 -0
- package/{line-metrics-CBbw80Ko-DoOuwYxZ.js → line-metrics-B60C86uh-DfQUk7X1.js} +1 -1
- package/ooxml-highlight-surfaces-CaMjx8u-.js +351 -0
- package/package.json +4 -4
- package/{pptx-dkJw0-Vx.js → pptx-CnoDB8Fv.js} +955 -923
- package/{read-only-comment-decoration-BTnWEeo5-BNhbteYc.js → read-only-comment-decoration-Dz7eTQ4d-Cl3RKKH6.js} +1 -1
- package/{read-only-comment-margin-plStyGfE-mggNAMB_.js → read-only-comment-margin-DkgzASAl-BbDxMI5E.js} +1 -1
- package/render-worker-host-BfbnEChF-D2thMRGX.js +7 -0
- package/render-worker-host-DNL9dWRh-Bky38ZHE.js +7 -0
- package/render-worker-host-IkHrYOci-DbjyHK7U.js +7 -0
- package/{renderer-module-contract-Cu-GKuPd-Bt0YZuzB.js → renderer-module-contract-D91rkYHH-BtfSKxb4.js} +1 -1
- package/test-setup.d.ts +10 -1
- package/test-setup.d.ts.map +1 -1
- package/types/attachment-canvas.d.ts +17 -0
- package/types/attachment-canvas.d.ts.map +1 -1
- package/utils/ooxml-highlight-geometry.d.ts +87 -3
- package/utils/ooxml-highlight-geometry.d.ts.map +1 -1
- package/utils/ooxml-highlight-surfaces.d.ts +33 -6
- package/utils/ooxml-highlight-surfaces.d.ts.map +1 -1
- package/{visible-index-DPoQYSDt-9lRc-2Ik.js → visible-index-BgiHEc1z-BOzE9X5U.js} +7 -7
- package/{xlsx-BAXMTJTG.js → xlsx-Dn0XSlTO.js} +1581 -1556
- package/comment-ui-runtime-TLHustXJ-DWCXG2mL.js +0 -2
- package/line-distribute-IsUGfHXm-DeITjLzJ.js +0 -1234
- package/ooxml-highlight-surfaces-DhK1KJcR.js +0 -294
- package/render-worker-host-BEfLZvSL-COy91Rd8.js +0 -7
- package/render-worker-host-Ba6Fchqr-DZeKpMWD.js +0 -7
- package/render-worker-host-C3xwtHnv-BBGHFdo9.js +0 -7
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
//#region ../../node_modules/@silurus/ooxml/dist/render-worker-host-BfbnEChF.js
|
|
2
|
+
var e = "" + new URL("data:text/javascript;base64,dmFyIGU9T2JqZWN0LmRlZmluZVByb3BlcnR5LHQ9KGUsdCk9PigpPT4oZSYmKHQ9ZShlPTApKSx0KSxuPSh0LG4pPT57bGV0IHI9e307Zm9yKHZhciBpIGluIHQpZShyLGkse2dldDp0W2ldLGVudW1lcmFibGU6ITB9KTtyZXR1cm4gbnx8ZShyLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6YE1vZHVsZWB9KSxyfSxyLGksYT10KCgoKT0+e3I9Y2xhc3MgZSBleHRlbmRzIEVycm9ye2NvZGU7Y29uc3RydWN0b3IodCxuKXtzdXBlcihuKSx0aGlzLm5hbWU9YE9veG1sRXJyb3JgLHRoaXMuY29kZT10LE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLGUucHJvdG90eXBlKX19LGk9Y2xhc3MgZSBleHRlbmRzIEVycm9ye2NvZGU9YG9veG1sLXJlc291cmNlLWxpbWl0YDtkZXRhaWxzO2NvbnN0cnVjdG9yKHQsbil7c3VwZXIodCksdGhpcy5uYW1lPWBPb3htbFJlc291cmNlTGltaXRFcnJvcmA7bGV0IHI9bi52aW9sYXRpb24saT1PYmplY3QuZnJlZXplKHtmb3JtYXQ6ci5mb3JtYXQsb3BlcmF0aW9uOnIub3BlcmF0aW9uLHJlc291cmNlOnIucmVzb3VyY2UsbWV0cmljOnIubWV0cmljLC4uLnIucGFydD09PXZvaWQgMD97fTp7cGFydDpyLnBhcnR9LGxpbWl0OnIubGltaXQsb2JzZXJ2ZWQ6ci5vYnNlcnZlZCxjb25maWd1cmFibGU6ci5jb25maWd1cmFibGUsdXNhZ2U6T2JqZWN0LmZyZWV6ZSh7YXJjaGl2ZUVudHJ5Q291bnQ6ci51c2FnZS5hcmNoaXZlRW50cnlDb3VudCxkZWNsYXJlZEluZmxhdGVkQnl0ZXM6ci51c2FnZS5kZWNsYXJlZEluZmxhdGVkQnl0ZXMsLi4uci51c2FnZS5sYXJnZXN0SW5mbGF0ZWRFbnRyeUJ5dGVzPT09dm9pZCAwP3t9OntsYXJnZXN0SW5mbGF0ZWRFbnRyeUJ5dGVzOnIudXNhZ2UubGFyZ2VzdEluZmxhdGVkRW50cnlCeXRlc30sZGlzdGluY3RJbmZsYXRlZEJ5dGVzOnIudXNhZ2UuZGlzdGluY3RJbmZsYXRlZEJ5dGVzLG9wZXJhdGlvbkluZmxhdGVkQnl0ZXM6ci51c2FnZS5vcGVyYXRpb25JbmZsYXRlZEJ5dGVzfSl9KTt0aGlzLmRldGFpbHM9T2JqZWN0LmZyZWV6ZSh7c3RhZ2U6bi5zdGFnZSx2aW9sYXRpb246aX0pLE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLGUucHJvdG90eXBlKX19fSkpO2Z1bmN0aW9uIG8oZSx0LG4pe2xldCByPXMuZ2V0KGUpLGk9cj8uZ2V0KHQpO2lmKGkpcmV0dXJuIGkucmVmcysrLHtmYWNlOmkuZmFjZSxpc05ldzohMX07bGV0IGE9bigpLG89cj8/bmV3IE1hcDtyZXR1cm4gby5zZXQodCx7ZmFjZTphLHNldDp0LHJlZnM6MX0pLHMuc2V0KGUsbykse2ZhY2U6YSxpc05ldzohMH19dmFyIHMsYz10KCgoKT0+e3M9bmV3IE1hcH0pKTtmdW5jdGlvbiBsKGUpe3JldHVybiBQcm9taXNlLnJhY2UoW2UsbmV3IFByb21pc2UoZT0+c2V0VGltZW91dChlLG0pKV0pfWZ1bmN0aW9uIHUoZSx0KXtsZXQgbj1bXSxyPS9AZm9udC1mYWNlXHMqXHsoW159XSopXH0vZyxpO2Zvcig7aT1yLmV4ZWMoZSk7KXtsZXQgZT1pWzFdLHI9dD0+ZS5tYXRjaChSZWdFeHAoYCg/Ol58O3xcXG4pXFxzKiR7dH1cXHMqOlxccyooW147XSspYCxgaWApKT8uWzFdLnRyaW0oKSxhPXIoYGZvbnQtZmFtaWx5YCksbz1yKGBzcmNgKTtpZighYXx8IW8pY29udGludWU7bGV0IHM9dD9vLnJlcGxhY2UoL3VybFwoXHMqKD86KFsnIl0pKC4qPylcMXwoW14pXSo/KSlccypcKS9naSwoZSxuLHIsaSk9PntsZXQgYT0ocj8/aT8/YGApLnRyaW0oKTtpZighYSlyZXR1cm4gZTt0cnl7cmV0dXJuYHVybCgiJHtuZXcgVVJMKGEsdCkuaHJlZn0iKWB9Y2F0Y2h7cmV0dXJuIGV9fSk6byxjPXt9LGw9cihgZm9udC1zdHlsZWApO2wmJihjLnN0eWxlPWwpO2xldCB1PXIoYGZvbnQtd2VpZ2h0YCk7dSYmKGMud2VpZ2h0PXUpO2xldCBkPXIoYGZvbnQtc3RyZXRjaGApO2QmJihjLnN0cmV0Y2g9ZCk7bGV0IGY9cihgdW5pY29kZS1yYW5nZWApO2YmJihjLnVuaWNvZGVSYW5nZT1mKSxuLnB1c2goe2ZhbWlseTphLnJlcGxhY2UoL15bJyJdfFsnIl0kL2csYGApLHNyYzpzLGRlc2NyaXB0b3JzOmN9KX1yZXR1cm4gbn1mdW5jdGlvbiBkKCl7cmV0dXJuIHR5cGVvZiBkb2N1bWVudDxgdWAmJmRvY3VtZW50JiZkb2N1bWVudC5mb250cz9kb2N1bWVudC5mb250czp0eXBlb2Ygc2VsZjxgdWAmJnNlbGYmJmBmb250c2BpbiBzZWxmP3NlbGYuZm9udHM6bnVsbH1mdW5jdGlvbiBmKGUsdCl7bGV0IG49dC5kZXNjcmlwdG9ycztyZXR1cm5bYGdmb250c2AsZSx0LmZhbWlseS50b0xvd2VyQ2FzZSgpLG4uc3R5bGU/P2BgLG4ud2VpZ2h0Pz9gYCxuLnN0cmV0Y2g/P2BgLG4udW5pY29kZVJhbmdlPz9gYCx0LnNyY10uam9pbihgfGApfWFzeW5jIGZ1bmN0aW9uIHAoZSx0LG49ZCgpKXtsZXQgcj1uO2lmKCFyfHx0eXBlb2YgRm9udEZhY2U+YHVgfHx0eXBlb2YgZmV0Y2g+YHVgKXJldHVybltdO2xldCBpPW5ldyBTZXQsYT1uZXcgU2V0LHM9bmV3IFNldCxjPW5ldyBNYXAscD1uZXcgU2V0O2ZvcihsZXQgbiBvZiBlKXtpZighbiljb250aW51ZTtsZXQgZT1uLnRyaW0oKTtpZighZSljb250aW51ZTtsZXQgcj1lLnRvTG93ZXJDYXNlKCk7aWYoaS5oYXMocikpY29udGludWU7aS5hZGQocik7bGV0IG89dFtyXTtpZighbyljb250aW51ZTtsZXQgbD1vLnVybDtzLmFkZChsKTtsZXQgdT0oby5sb2FkRmFtaWx5Pz9lKS50b0xvd2VyQ2FzZSgpO2EuYWRkKHUpO2xldCBkPWMuZ2V0KGwpO2R8fChkPW5ldyBTZXQsYy5zZXQobCxkKSksZC5hZGQodSl9aWYoYS5zaXplPT09MClyZXR1cm5bXTtsZXQgbT1hd2FpdCBsKFByb21pc2UuYWxsKFsuLi5zXS5tYXAoYXN5bmMgZT0+e2xldCB0PWguZ2V0KGUpO2lmKHQpcmV0dXJue3VybDplLHJ1bGVzOmF3YWl0IHR9O2xldCBuPShhc3luYygpPT57dHJ5e2xldCB0PWF3YWl0IGZldGNoKGUpO2lmKCF0Lm9rKXRocm93IEVycm9yKGBIVFRQICR7dC5zdGF0dXN9YCk7cmV0dXJuIHUoYXdhaXQgdC50ZXh0KCksdC51cmx8fGUpfWNhdGNoe2guZGVsZXRlKGUpO2ZvcihsZXQgdCBvZiBjLmdldChlKT8/W10pcC5hZGQodCk7cmV0dXJuW119fSkoKTtyZXR1cm4gaC5zZXQoZSxuKSx7dXJsOmUscnVsZXM6YXdhaXQgbn19KSkpLGc9W10sXz1bXTtmb3IobGV0IGUgb2YgQXJyYXkuaXNBcnJheShtKT9tOltdKWZvcihsZXQgdCBvZiBlLnJ1bGVzKXtsZXR7ZmFjZTpuLGlzTmV3Oml9PW8oZihlLnVybCx0KSxyLCgpPT57bGV0IGU9bmV3IEZvbnRGYWNlKHQuZmFtaWx5LHQuc3JjLHQuZGVzY3JpcHRvcnMpO3JldHVybiByLmFkZChlKSxlfSk7Zy5wdXNoKG4pLGkmJl8ucHVzaChuKX1yZXR1cm4gXy5sZW5ndGg+MCYmYXdhaXQgbChQcm9taXNlLmFsbFNldHRsZWQoXy5tYXAoZT0+ZS5sb2FkKCkpKS50aGVuKGU9PihlLmZvckVhY2goKGUsdCk9PntlLnN0YXR1cz09PWByZWplY3RlZGAmJnAuYWRkKF9bdF0uZmFtaWx5LnJlcGxhY2UoL1snIl0vZyxgYCkudG9Mb3dlckNhc2UoKSl9KSxyLnJlYWR5KSkpLHAuc2l6ZT4wJiZjb25zb2xlLndhcm4oYFtvb3htbF0gZmFpbGVkIHRvIHByZWxvYWQgd2ViIGZvbnQocyk6ICR7Wy4uLnBdLmpvaW4oYCwgYCl9OyBmYWxsaW5nIGJhY2sgdG8gc3lzdGVtIGZvbnRzICh0ZXh0IG1heSBzaGlmdCBvciBkaWZmZXIpLmApLGd9dmFyIG0saCxnPXQoKCgpPT57YygpLG09MTVlMyxoPW5ldyBNYXB9KSksXyx2LHksYix4LFMsQyx3LFQsRSxELE8sayxBPXQoKCgpPT57Xz0xMzQyMTc3Mjgsdj0yNjg0MzU0NTYseT00MDk2LGI9MTM0MjE3NzI4LHg9MWU1LFM9MjVlNCxDPTMzNTU0NDMyLHc9NjcxMDg4NjQsVD0yZTUsRT01ZTUsRD02NzEwODg2NCxPPTEzNDIxNzcyOCxrPTI1ZTR9KSksaixNLE4sUCxGPXQoKCgpPT57aj1gaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1Ob3RvK05hc2toK0FyYWJpYzp3Z2h0QDQwMDs3MDAmZGlzcGxheT1zd2FwYCxNPWBodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PU5vdG8rU2FucytBcmFiaWM6d2dodEA0MDA7NzAwJmRpc3BsYXk9c3dhcGAsTj1gaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1MaWJyZStGcmFua2xpbjppdGFsLHdnaHRAMCw0MDA7MCw2MDA7MCw3MDA7MSw0MDA7MSw2MDA7MSw3MDAmZGlzcGxheT1zd2FwYCxQPXtjYWxpYnJpOnt1cmw6YGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Q2FybGl0bzppdGFsLHdnaHRAMCw0MDA7MCw3MDA7MSw0MDA7MSw3MDAmZGlzcGxheT1zd2FwYCxsb2FkRmFtaWx5OmBDYXJsaXRvYH0sImNhbGlicmkgbGlnaHQiOnt1cmw6YGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Q2FybGl0bzppdGFsLHdnaHRAMCw0MDA7MCw3MDA7MSw0MDA7MSw3MDAmZGlzcGxheT1zd2FwYCxsb2FkRmFtaWx5OmBDYXJsaXRvYH0sY2FtYnJpYTp7dXJsOmBodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUNhbGFkZWE6aXRhbCx3Z2h0QDAsNDAwOzAsNzAwOzEsNDAwOzEsNzAwJmRpc3BsYXk9c3dhcGAsbG9hZEZhbWlseTpgQ2FsYWRlYWB9LCJjYW1icmlhIG1hdGgiOnt1cmw6YGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Q2FsYWRlYTppdGFsLHdnaHRAMCw0MDA7MCw3MDA7MSw0MDA7MSw3MDAmZGlzcGxheT1zd2FwYCxsb2FkRmFtaWx5OmBDYWxhZGVhYH0sImZyYW5rbGluIGdvdGhpYyBib29rIjp7dXJsOk4sbG9hZEZhbWlseTpgTGlicmUgRnJhbmtsaW5gfSwiZnJhbmtsaW4gZ290aGljIG1lZGl1bSI6e3VybDpOLGxvYWRGYW1pbHk6YExpYnJlIEZyYW5rbGluYH0sIm51bml0byBzYW5zIjp7dXJsOmBodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PU51bml0bytTYW5zOml0YWwsd2dodEAwLDQwMDswLDcwMDsxLDQwMDsxLDcwMCZkaXNwbGF5PXN3YXBgfSxudW5pdG86e3VybDpgaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1OdW5pdG86aXRhbCx3Z2h0QDAsNDAwOzAsNzAwOzEsNDAwOzEsNzAwJmRpc3BsYXk9c3dhcGB9LCJvcGVuIHNhbnMiOnt1cmw6YGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9T3BlbitTYW5zOml0YWwsd2dodEAwLDQwMDswLDcwMDsxLDQwMDsxLDcwMCZkaXNwbGF5PXN3YXBgfSxyb2JvdG86e3VybDpgaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1Sb2JvdG86aXRhbCx3Z2h0QDAsNDAwOzAsNzAwOzEsNDAwOzEsNzAwJmRpc3BsYXk9c3dhcGB9LGxhdG86e3VybDpgaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1MYXRvOml0YWwsd2dodEAwLDQwMDswLDcwMDsxLDQwMDsxLDcwMCZkaXNwbGF5PXN3YXBgfSxtb250c2VycmF0Ont1cmw6YGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9TW9udHNlcnJhdDppdGFsLHdnaHRAMCw0MDA7MCw3MDA7MSw0MDA7MSw3MDAmZGlzcGxheT1zd2FwYH0scG9wcGluczp7dXJsOmBodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PVBvcHBpbnM6aXRhbCx3Z2h0QDAsNDAwOzAsNzAwOzEsNDAwOzEsNzAwJmRpc3BsYXk9c3dhcGB9LHJhbGV3YXk6e3VybDpgaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1SYWxld2F5Oml0YWwsd2dodEAwLDQwMDswLDcwMDsxLDQwMDsxLDcwMCZkaXNwbGF5PXN3YXBgfSwicGxheWZhaXIgZGlzcGxheSI6e3VybDpgaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1QbGF5ZmFpcitEaXNwbGF5Oml0YWwsd2dodEAwLDQwMDswLDcwMDsxLDQwMDsxLDcwMCZkaXNwbGF5PXN3YXBgfSx1YnVudHU6e3VybDpgaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1VYnVudHU6aXRhbCx3Z2h0QDAsNDAwOzAsNzAwOzEsNDAwOzEsNzAwJmRpc3BsYXk9c3dhcGB9LCJzYWtrYWwgbWFqYWxsYSI6e3VybDpqLGxvYWRGYW1pbHk6YE5vdG8gTmFza2ggQXJhYmljYH0sInRyYWRpdGlvbmFsIGFyYWJpYyI6e3VybDpqLGxvYWRGYW1pbHk6YE5vdG8gTmFza2ggQXJhYmljYH0sInNpbXBsaWZpZWQgYXJhYmljIjp7dXJsOmosbG9hZEZhbWlseTpgTm90byBOYXNraCBBcmFiaWNgfSwiYXJhYmljIHR5cGVzZXR0aW5nIjp7dXJsOmosbG9hZEZhbWlseTpgTm90byBOYXNraCBBcmFiaWNgfSwidW5pdmVycyBuZXh0IGFyYWJpYyI6e3VybDpNLGxvYWRGYW1pbHk6YE5vdG8gU2FucyBBcmFiaWNgfSwibm90byBuYXNraCBhcmFiaWMiOnt1cmw6aixsb2FkRmFtaWx5OmBOb3RvIE5hc2toIEFyYWJpY2B9LCJub3RvIHNhbnMgYXJhYmljIjp7dXJsOk0sbG9hZEZhbWlseTpgTm90byBTYW5zIEFyYWJpY2B9fX0pKTtmdW5jdGlvbiBJKGUpe3JldHVybiBlP0hbZS50cmltKCkudG9Mb3dlckNhc2UoKV0/P251bGw6bnVsbH1mdW5jdGlvbiBMKGUpe2lmKCFlKXJldHVybiBudWxsO2xldCB0PUkoZSk/P2UudHJpbSgpLG49dC50b0xvd2VyQ2FzZSgpLHI9bi5tYXRjaCgvXm5vdG9ccysoPzpzYW5zfHNlcmlmKVxzKyg/OmNqa1xzKyk/KHNjfHRjfGhrfGpwfGtyKSQvKTtyZXR1cm4gcj9yWzFdOi9b4YSALeGHv+OEsC3jho/qsIAt7Z6vXS8udGVzdCh0KT9ga3JgOi9b44GALeODv10vLnRlc3QodCk/YGpwYDovamhlbmdoZWl85b6u6Luf5q2j6buRfOaWsOe0sOaYjnzntLDmmI58cG1pbmdsaXV8bWluZ2xpdXxkZmthaXzmqJnmpbd86I+v5bq3fGNuczExNjQzfGthaXRpIHRjfG1pbmdccypsaXUvLnRlc3Qobil8fC/mlrDntLDmmI7pq5R857Sw5piO6auUfOaomealt+mrlHzlvq7ou5/mraPpu5Hpq5R86I+v5bq3Ly50ZXN0KHQpP2B0Y2A6L3NpbXN1bnxuc2ltc3VufHNpbWhlaXxzaW1rYWl8c2ltZmFuZ3x5YWhlaXxkZW5neGlhbnxmYW5nc29uZ3xrYWl0aXx5b3V5dWFufGxpc3V8c3Rzb25nfHN0a2FpdGl8c3RmYW5nc29uZ3xzdGhlaXRpfHN0eGloZWl8c3R6aG9uZ3Nvbmd8c29uZ3RpIHNjfGhlaXRpIHNjfOW+rui9r+mbhem7kS8udGVzdChuKXx8L+Wui+S9k3zpu5HkvZN85qW35L2TfOS7v+Wui3znrYnnur985b6u6L2v6ZuF6buRfOmatuS5pnzlubzlnIYvLnRlc3QodCk/YHNjYDovbWFsZ3VufGJhdGFuZ3xndWxpbXxkb3R1bXxndW5nc3VofG5hbnVtfG5ldyBndWxpbXxoYW5jb218aHkoZ290aGljfGdyYXBoaWN8bmFtdSk/Ly50ZXN0KG4pP2BrcmA6L1xibWVpcnlvXGJ8XGJ5dVxzKihnb3RoaWN8bWluY2hvKVxifHl1Z290aGljfHl1bWluY2hvfGhpcmFnaW5vfFxibXNccyooZ290aGljfG1pbmNob3xwZ290aGljfHBtaW5jaG98dWlccypnb3RoaWMpXGJ8XGJtc1twZ10/KGdvdGhpY3xtaW5jaG8pXGJ8aXBhKGV4KT8oZ290aGljfG1pbmNobyl8bm90b1xzKyhzYW5zfHNlcmlmKVxzK2pwfOa4uOOCtOOCt+ODg+OCr3zmuLjmmI7mnJ1877yt77yzfOODoeOCpOODquOCqnzjg5Ljg6njgq7jg44vLnRlc3Qobil8fC/muLjjgrTjgrfjg4Pjgq985ri45piO5pydfO+8re+8syDjgrTjgrfjg4Pjgq9877yt77yzIOaYjuacnXzvvK3vvLMg77yw44K044K344OD44KvfOODoeOCpOODquOCqnzjg5Ljg6njgq7jg44vLnRlc3QodCk/YGpwYDpudWxsfWZ1bmN0aW9uIFIoZSl7aWYoIWUpcmV0dXJuYHNhbnNgO2xldCB0PWUudG9Mb3dlckNhc2UoKTtyZXR1cm4vbW9ub3xjb3VyaWVyfGNvbnNvbGFzfOetieW5hXxnb3RoaWNfbS8udGVzdCh0KT9gbW9ub2A6L3JvbWFufHRpbWVzfGNhbWJyaWF8Y2FsYWRlYXxnZW9yZ2lhfGdhcmFtb25kfGNlbnR1cnkoPyFccypnb3RoaWMpfHBhbGF0aW5vfGFudGlxdWF8ZGlkb3R8Ym9kb25pfHBsYXlmYWlyfHNvdXJjZSBzZXJpZnxub3RvIHNlcmlmfG1pblxzKmNob3zmmI7mnJ3kvZN85piO5pydfHNvbmd8c3VuZ3xzaW1zdW58bnNpbXN1bnxiYXRhbmd8Z3VuZ3N1aHxtaW5nXHMqbGl1fG1pbmdsaXV8cG1pbmdsaXV8ZmFuZ1xzKnNvbmd8ZmFuZ3Nvbmd8a2FpXHMqdGl8a2FpdGl8c2lta2FpfHNpbWZhbmd8c3Rzb25nfHN0a2FpdGl8c3RmYW5nc29uZ3xzdHpob25nc29uZ3zmlrDntLDmmI5857Sw5piOfOWui+S9k3zmpbfkvZN85qW36auUfOS7v+Wui3zmqJnmpbd85ri45piO5pydfO+8re+8syDmmI7mnJ18bXMgbWluY2hvfHl1IG1pbmNob3xoaXJhZ2lubyBtaW5jaG9844OS44Op44Ku44OO5piO5pydLy50ZXN0KHQpfHwv5paw57Sw5piO6auUfOe0sOaYjumrlHzlrovkvZN85piO5pydfOalt+S9k3zmpbfpq5R85Lu/5a6LfOaomealt+mrlHzmuLjmmI7mnJ1877yt77yzIOaYjuacnS8udGVzdChlKT9gc2VyaWZgOmBzYW5zYH1mdW5jdGlvbiB6KGUsdCl7aWYoZT09PWBoa2AmJnQ9PT1gc2VyaWZgKXJldHVybltdO2xldCBuPXQ9PT1gc2VyaWZgP2BOb3RvIFNlcmlmYDpgTm90byBTYW5zYCxyPXtqcDpbYGpwYCxgc2NgLGB0Y2AsYGtyYF0sc2M6W2BzY2AsYHRjYCxganBgLGBrcmBdLHRjOltgdGNgLGBzY2AsYGpwYCxga3JgXSxoazpbYGhrYCxgdGNgLGBzY2AsYGpwYCxga3JgXSxrcjpbYGtyYCxganBgLGBzY2AsYHRjYF19LGk9e2tyOmBLUmAsc2M6YFNDYCx0YzpgVENgLGhrOmBIS2AsanA6YEpQYH07cmV0dXJuIHJbZV0ubWFwKGU9PmAke259ICR7aVtlXX1gKX1mdW5jdGlvbiBCKGUpe3JldHVybi9ccHtTY3JpcHQ9SGFufS91LnRlc3QoZSl9ZnVuY3Rpb24gZWUoZSx0LG49ITEpe2xldCByPW5ldyByZSh0KTtyZXR1cm4gci5hZGRUZXh0KGUpLHIubmFtZXMobil9ZnVuY3Rpb24gVihlLHQpe2xldCBuPW5ldyByZSh0KTtyZXR1cm4gbi5hZGRUZXh0KGUpLG4ucHJlZmVycmVkQ2prTGFuZ3VhZ2UoKX12YXIgSCxVLFcsRyxLLHRlLG5lLHJlLGllPXQoKCgpPT57SD17Im5vdG8gc2FucyBjamsgc2MiOmBOb3RvIFNhbnMgU0NgLCJub3RvIHNlcmlmIGNqayBzYyI6YE5vdG8gU2VyaWYgU0NgLCJub3RvIHNhbnMgY2prIHRjIjpgTm90byBTYW5zIFRDYCwibm90byBzZXJpZiBjamsgdGMiOmBOb3RvIFNlcmlmIFRDYCwibm90byBzYW5zIGNqayBqcCI6YE5vdG8gU2FucyBKUGAsIm5vdG8gc2VyaWYgY2prIGpwIjpgTm90byBTZXJpZiBKUGAsIm5vdG8gc2FucyBjamsga3IiOmBOb3RvIFNhbnMgS1JgLCJub3RvIHNlcmlmIGNqayBrciI6YE5vdG8gU2VyaWYgS1JgLCJub3RvIHNhbnMgY2prIGhrIjpgTm90byBTYW5zIEhLYH0sVT1bYE5vdG8gU2Fuc2AsYE5vdG8gU2FucyBIZWJyZXdgLGBOb3RvIFNhbnMgVGhhaWAsYE5vdG8gU2FucyBEZXZhbmFnYXJpYF0sVz1bYE5vdG8gU2VyaWZgLGBOb3RvIFNlcmlmIEhlYnJld2BdLEc9ZT0+YGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9JHtlfTp3Z2h0QDQwMDs3MDAmZGlzcGxheT1zd2FwYCxLPXsibm90byBzYW5zIGtyIjp7dXJsOkcoYE5vdG8rU2FucytLUmApfSwibm90byBzYW5zIHNjIjp7dXJsOkcoYE5vdG8rU2FucytTQ2ApfSwibm90byBzYW5zIHRjIjp7dXJsOkcoYE5vdG8rU2FucytUQ2ApfSwibm90byBzYW5zIGhrIjp7dXJsOkcoYE5vdG8rU2FucytIS2ApfSwibm90byBzYW5zIGpwIjp7dXJsOkcoYE5vdG8rU2FucytKUGApfSwibm90byBzZXJpZiBrciI6e3VybDpHKGBOb3RvK1NlcmlmK0tSYCl9LCJub3RvIHNlcmlmIHNjIjp7dXJsOkcoYE5vdG8rU2VyaWYrU0NgKX0sIm5vdG8gc2VyaWYgdGMiOnt1cmw6RyhgTm90bytTZXJpZitUQ2ApfSwibm90byBzZXJpZiBqcCI6e3VybDpHKGBOb3RvK1NlcmlmK0pQYCl9fSx0ZT1PYmplY3QuZnJvbUVudHJpZXMoT2JqZWN0LmVudHJpZXMoSCkubWFwKChbZSx0XSk9PltlLHsuLi5LW3QudG9Mb3dlckNhc2UoKV0sbG9hZEZhbWlseTp0fV0pKSxuZT17Li4uSywuLi50ZSwibm90byBzYW5zIjp7dXJsOkcoYE5vdG8rU2Fuc2ApfSwibm90byBzZXJpZiI6e3VybDpHKGBOb3RvK1NlcmlmYCl9LCJub3RvIHNhbnMgZGV2YW5hZ2FyaSI6e3VybDpHKGBOb3RvK1NhbnMrRGV2YW5hZ2FyaWApfSwibm90byBzYW5zIHRoYWkiOnt1cmw6RyhgTm90bytTYW5zK1RoYWlgKX0sIm5vdG8gc2FucyBoZWJyZXciOnt1cmw6RyhgTm90bytTYW5zK0hlYnJld2ApfSwibm90byBzZXJpZiBoZWJyZXciOnt1cmw6RyhgTm90bytTZXJpZitIZWJyZXdgKX19LHJlPWNsYXNzIGV7aGFzSGFuPSExO2hhc0hhbmd1bD0hMTtoYXNLYW5hPSExO2hhc0FyYWJpYz0hMTtoYXNUaGFpPSExO2hhc0hlYnJldz0hMTtoYXNEZXZhbmFnYXJpPSExO2hhc0N5ckdyZWVrPSExO2NvbnN0cnVjdG9yKGUpe3RoaXMuY2prTGFuZz1lfXNjcmlwdENqa0xhbmd1YWdlKCl7cmV0dXJuIHRoaXMuaGFzSGFuZ3VsP2BrcmA6dGhpcy5oYXNLYW5hP2BqcGA6bnVsbH1wcmVmZXJyZWRDamtMYW5ndWFnZSgpe3JldHVybiB0aGlzLnNjcmlwdENqa0xhbmd1YWdlKCk/P3RoaXMuY2prTGFuZz8/YGpwYH1jbG9uZSgpe2xldCB0PW5ldyBlKHRoaXMuY2prTGFuZyk7cmV0dXJuIHQuaGFzSGFuPXRoaXMuaGFzSGFuLHQuaGFzSGFuZ3VsPXRoaXMuaGFzSGFuZ3VsLHQuaGFzS2FuYT10aGlzLmhhc0thbmEsdC5oYXNBcmFiaWM9dGhpcy5oYXNBcmFiaWMsdC5oYXNUaGFpPXRoaXMuaGFzVGhhaSx0Lmhhc0hlYnJldz10aGlzLmhhc0hlYnJldyx0Lmhhc0RldmFuYWdhcmk9dGhpcy5oYXNEZXZhbmFnYXJpLHQuaGFzQ3lyR3JlZWs9dGhpcy5oYXNDeXJHcmVlayx0fWFkZFRleHQoZSl7bGV0IHQ9KCk9PnRoaXMuaGFzSGFuJiZ0aGlzLmhhc0hhbmd1bCYmdGhpcy5oYXNLYW5hJiZ0aGlzLmhhc0FyYWJpYyYmdGhpcy5oYXNUaGFpJiZ0aGlzLmhhc0hlYnJldyYmdGhpcy5oYXNEZXZhbmFnYXJpJiZ0aGlzLmhhc0N5ckdyZWVrO291dGVyOmZvcihsZXQgbiBvZiBlKWlmKG4pZm9yKGxldCBlIG9mIG4pe2xldCBuPWUuY29kZVBvaW50QXQoMCk7aWYobiE9PXZvaWQgMCYmIShuPD01OTEpJiYobj49NDM1MiYmbjw9NDYwN3x8bj49MTI1OTImJm48PTEyNjg3fHxuPj00NDAzMiYmbjw9NTUyMTU/dGhpcy5oYXNIYW5ndWw9ITA6bj49MTIzNTImJm48PTEyNTQzP3RoaXMuaGFzS2FuYT0hMDpCKGUpP3RoaXMuaGFzSGFuPSEwOm4+PTE1MzYmJm48PTE3OTF8fG4+PTE4NzImJm48PTE5MTl8fG4+PTIyMDgmJm48PTIzMDN8fG4+PTY0MzM2JiZuPD02NTAyM3x8bj49NjUxMzYmJm48PTY1Mjc5P3RoaXMuaGFzQXJhYmljPSEwOm4+PTM1ODQmJm48PTM3MTE/dGhpcy5oYXNUaGFpPSEwOm4+PTE0MjQmJm48PTE1MzV8fG4+PTY0Mjg1JiZuPD02NDMzNT90aGlzLmhhc0hlYnJldz0hMDpuPj0yMzA0JiZuPD0yNDMxP3RoaXMuaGFzRGV2YW5hZ2FyaT0hMDoobj49MTAyNCYmbjw9MTI3OXx8bj49ODgwJiZuPD0xMDIzKSYmKHRoaXMuaGFzQ3lyR3JlZWs9ITApLHQoKSkpYnJlYWsgb3V0ZXJ9fW5hbWVzKGU9ITEpe2xldCB0PVtdLG49bmV3IFNldDt0aGlzLmhhc0hhbmd1bCYmbi5hZGQoYGtyYCksdGhpcy5oYXNLYW5hJiZuLmFkZChganBgKSx0aGlzLmhhc0hhbiYmKG4uc2l6ZT09PTB8fGUpJiZuLmFkZCh0aGlzLmNqa0xhbmc/P2BqcGApO2ZvcihsZXQgZSBvZltga3JgLGBzY2AsYHRjYCxgaGtgLGBqcGBdKWlmKG4uaGFzKGUpKXtsZXQgbj17a3I6YEtSYCxzYzpgU0NgLHRjOmBUQ2AsaGs6YEhLYCxqcDpgSlBgfVtlXTt0LnB1c2goYE5vdG8gU2FucyAke259YCksZSE9PWBoa2AmJnQucHVzaChgTm90byBTZXJpZiAke259YCl9cmV0dXJuIHRoaXMuaGFzQ3lyR3JlZWsmJnQucHVzaChgTm90byBTYW5zYCxgTm90byBTZXJpZmApLHRoaXMuaGFzQXJhYmljJiZ0LnB1c2goYE5vdG8gTmFza2ggQXJhYmljYCxgTm90byBTYW5zIEFyYWJpY2ApLHRoaXMuaGFzVGhhaSYmdC5wdXNoKGBOb3RvIFNhbnMgVGhhaWApLHRoaXMuaGFzSGVicmV3JiZ0LnB1c2goYE5vdG8gU2FucyBIZWJyZXdgLGBOb3RvIFNlcmlmIEhlYnJld2ApLHRoaXMuaGFzRGV2YW5hZ2FyaSYmdC5wdXNoKGBOb3RvIFNhbnMgRGV2YW5hZ2FyaWApLHR9fX0pKTtmdW5jdGlvbiBhZShlLHQpe3JldHVybltNYXRoLm1heCgxLE1hdGguY2VpbChlKSksTWF0aC5tYXgoMSxNYXRoLmNlaWwodCkpXX1mdW5jdGlvbiBvZShlLHQpe2xldFtuLHJdPWFlKGUsdCk7aWYodHlwZW9mIE9mZnNjcmVlbkNhbnZhczxgdWApcmV0dXJuIG5ldyBPZmZzY3JlZW5DYW52YXMobixyKTtpZih0eXBlb2YgZG9jdW1lbnQ8YHVgKXtsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGBjYW52YXNgKTtyZXR1cm4gZS53aWR0aD1uLGUuaGVpZ2h0PXIsZX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBzZShlLHQsbil7bGV0W3IsaV09YWUodCxuKTtpZih0eXBlb2YgT2Zmc2NyZWVuQ2FudmFzPGB1YCl0cnl7cmV0dXJuIG5ldyBPZmZzY3JlZW5DYW52YXMocixpKX1jYXRjaHt9aWYodHlwZW9mIGRvY3VtZW50PGB1YCl0cnl7bGV0IGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChgY2FudmFzYCk7cmV0dXJuIGUud2lkdGg9cixlLmhlaWdodD1pLGV9Y2F0Y2h7fXRyeXtsZXQgdD1lLmNhbnZhcz8uY29uc3RydWN0b3I7cmV0dXJuIHR5cGVvZiB0PT1gZnVuY3Rpb25gP25ldyB0KHIsaSk6bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19dmFyIGNlPXQoKCgpPT57fSkpO2Z1bmN0aW9uIGxlKGUpe3JldHVybiBlPT09YGltYWdlLWRpbWVuc2lvbmB8fGU9PT1gaW1hZ2UtcGl4ZWxzYHx8ZT09PWBhY3RpdmUtZGVjb2RlZC1ieXRlc2B9ZnVuY3Rpb24gdWUoZSl7cmV0dXJuIHR5cGVvZiBlPT1gbnVtYmVyYCYmTnVtYmVyLmlzU2FmZUludGVnZXIoZSkmJmU+PTB9ZnVuY3Rpb24gcShlKXtpZighKCFlfHx0eXBlb2YgZSE9YG9iamVjdGApKXRyeXtsZXQgdD1lLG49dC5jb2RlLHI9dC5tZXRyaWMsaT10LmxpbWl0LGE9dC5vYnNlcnZlZDtyZXR1cm4gbiE9PWBvb3htbC1kZWNvZGVkLWltYWdlLWxpbWl0YHx8IWxlKHIpfHwhdWUoaSl8fCF1ZShhKXx8YTw9aT92b2lkIDA6e21ldHJpYzpyLGxpbWl0Omksb2JzZXJ2ZWQ6YX19Y2F0Y2h7cmV0dXJufX1mdW5jdGlvbiBkZShlKXtpZighcShlKSlyZXR1cm4hMTt0cnl7bGV0IHQ9ZTtyZXR1cm4gdHlwZW9mIHQubmFtZT09YHN0cmluZ2AmJnR5cGVvZiB0Lm1lc3NhZ2U9PWBzdHJpbmdgfWNhdGNoe3JldHVybiExfX12YXIgSixZLGZlLHBlLG1lLGhlLGdlLF9lPXQoKCgpPT57Sj0zMjc2NyxZPTE8PDI1LGZlPTE8PDI3LHBlPWZlLG1lPVkqNCxoZT1mZSo0LGdlPWNsYXNzIGUgZXh0ZW5kcyBSYW5nZUVycm9ye2NvZGU9YG9veG1sLWRlY29kZWQtaW1hZ2UtbGltaXRgO2NvbnN0cnVjdG9yKHQsbixyKXtzdXBlcihgT09YTUwgZGVjb2RlZCBpbWFnZSBsaW1pdCBleGNlZWRlZDogJHt0fSAke3J9ID4gJHtufWApLHRoaXMubWV0cmljPXQsdGhpcy5saW1pdD1uLHRoaXMub2JzZXJ2ZWQ9cix0aGlzLm5hbWU9YE9veG1sRGVjb2RlZEltYWdlTGltaXRFcnJvcmAsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsZS5wcm90b3R5cGUpfX19KSk7ZnVuY3Rpb24gdmUoZSx0LG4scixpKXtpZihuPDQwfHx0KzQwPmUuYnl0ZUxlbmd0aClyZXR1cm4gbnVsbDtsZXQgYT1lLmdldFVpbnQzMih0LCEwKTtpZihhPDQwKXJldHVybiBudWxsO2xldCBvPWUuZ2V0SW50MzIodCs0LCEwKSxzPWUuZ2V0SW50MzIodCs4LCEwKSxjPWUuZ2V0VWludDE2KHQrMTQsITApO2lmKGUuZ2V0VWludDMyKHQrMTYsITApIT09MClyZXR1cm4gbnVsbDtsZXQgbD1zPDAsdT1NYXRoLmFicyhvKSxkPU1hdGguYWJzKHMpO2lmKHU8PTB8fGQ8PTB8fHU+eWV8fGQ+eWV8fHUqZD5RKXJldHVybiBudWxsO2xldCBmPW5ldyBVaW50OENsYW1wZWRBcnJheSh1KmQqNCkscD11KmMrMzE+PjU8PDI+Pj4wO2lmKHIrcCpkPnIraStwJiZyK3AqZD5lLmJ5dGVMZW5ndGgpcmV0dXJuIG51bGw7bGV0IG09bnVsbDtpZihjPD04KXtsZXQgbj1lLmdldFVpbnQzMih0KzMyLCEwKTtuPT09MCYmKG49MTw8Yyk7bGV0IHI9dCthO209W107Zm9yKGxldCB0PTA7dDxuO3QrKyl7bGV0IG49cit0KjQ7aWYobis0PmUuYnl0ZUxlbmd0aClicmVhaztsZXQgaT1lLmdldFVpbnQ4KG4pLGE9ZS5nZXRVaW50OChuKzEpLG89ZS5nZXRVaW50OChuKzIpO20ucHVzaChvPDwxNnxhPDw4fGkpfX1sZXQgaD0oZSx0LG4scixpLGEpPT57bGV0IG89KGUqdSt0KSo0O2Zbb109bixmW28rMV09cixmW28rMl09aSxmW28rM109YX0sZz0hMTtmb3IobGV0IHQ9MDt0PGQ7dCsrKXtsZXQgbj1sP3Q6ZC0xLXQsaT10LGE9cituKnA7aWYoYStwPmUuYnl0ZUxlbmd0aClicmVhaztpZihjPT09MzIpZm9yKGxldCB0PTA7dDx1O3QrKyl7bGV0IG49YSt0KjQscj1lLmdldFVpbnQ4KG4pLG89ZS5nZXRVaW50OChuKzEpLHM9ZS5nZXRVaW50OChuKzIpLGM9ZS5nZXRVaW50OChuKzMpO2MhPT0wJiYoZz0hMCksaChpLHQscyxvLHIsYyl9ZWxzZSBpZihjPT09MjQpe2ZvcihsZXQgdD0wO3Q8dTt0Kyspe2xldCBuPWErdCozO2goaSx0LGUuZ2V0VWludDgobisyKSxlLmdldFVpbnQ4KG4rMSksZS5nZXRVaW50OChuKSwyNTUpfWc9ITB9ZWxzZSBpZihjPT09OCYmbSl7Zm9yKGxldCB0PTA7dDx1O3QrKyl7bGV0IG49ZS5nZXRVaW50OChhK3QpLHI9bVtuXT8/MDtoKGksdCxyPj4xNiYyNTUscj4+OCYyNTUsciYyNTUsMjU1KX1nPSEwfWVsc2UgaWYoYz09PTQmJm0pe2ZvcihsZXQgdD0wO3Q8dTt0Kyspe2xldCBuPWUuZ2V0VWludDgoYSsodD4+MSkpLHI9dCYxP24mMTU6bj4+NCYxNSxvPW1bcl0/PzA7aChpLHQsbz4+MTYmMjU1LG8+PjgmMjU1LG8mMjU1LDI1NSl9Zz0hMH1lbHNlIGlmKGM9PT0xJiZtKXtmb3IobGV0IHQ9MDt0PHU7dCsrKXtsZXQgbj1lLmdldFVpbnQ4KGErKHQ+PjMpKT4+Ny0odCY3KSYxLHI9bVtuXT8/MDtoKGksdCxyPj4xNiYyNTUscj4+OCYyNTUsciYyNTUsMjU1KX1nPSEwfWVsc2UgcmV0dXJuIG51bGx9aWYoYz09PTMyJiYhZylmb3IobGV0IGU9MztlPGYubGVuZ3RoO2UrPTQpZltlXT0yNTU7cmV0dXJue3dpZHRoOnUsaGVpZ2h0OmQsZGF0YTpmfX1mdW5jdGlvbiBYKGUsdCxuKXtpZihuPDQwfHx0KzQwPmUuYnl0ZUxlbmd0aClyZXR1cm4gbnVsbDtsZXQgcj1lLmdldFVpbnQzMih0LCEwKTtpZihyPDQwKXJldHVybiBudWxsO2xldCBpPWUuZ2V0VWludDE2KHQrMTQsITApLGE9MDtpZihpPD04KXtsZXQgbj1lLmdldFVpbnQzMih0KzMyLCEwKTtuPT09MCYmKG49MTw8aSksYT1ufWVsc2UgYT1lLmdldFVpbnQzMih0KzMyLCEwKTtsZXQgbz1yK2EqNCxzPXQrbyxjPW4tbztyZXR1cm4gYzw9MD9udWxsOnZlKGUsdCxvLHMsYyl9ZnVuY3Rpb24gWihlLHQsbixyLGksYSl7dHJ5e2xldCBvPW9lKHQud2lkdGgsdC5oZWlnaHQpO2lmKCFvKXJldHVybiExO2xldCBzPW8uZ2V0Q29udGV4dChgMmRgKTtpZighcylyZXR1cm4hMTtsZXQgYz1zLmNyZWF0ZUltYWdlRGF0YSh0LndpZHRoLHQuaGVpZ2h0KTtjLmRhdGEuc2V0KHQuZGF0YSkscy5wdXRJbWFnZURhdGEoYywwLDApO2xldCBsPU1hdGgubWluKG4saSksdT1NYXRoLm1pbihyLGEpLGQ9TWF0aC5hYnMoaS1uKSxmPU1hdGguYWJzKGEtcik7cmV0dXJuIGUuZHJhd0ltYWdlKG8sbCx1LGQsZiksITB9Y2F0Y2h7cmV0dXJuITF9fXZhciB5ZSxRLGJlPXQoKCgpPT57Y2UoKSxfZSgpLHllPUosUT1ZfSkpO2Z1bmN0aW9uIHhlKGUsdCl7aWYoZS5sZW5ndGg8dCtKZSlyZXR1cm4hMTtsZXQgbj1lW3RdfGVbdCsxXTw8OCxyPWVbdCsyXXxlW3QrM108PDg7cmV0dXJuKG49PT0xfHxuPT09MikmJnI9PT05fWZ1bmN0aW9uIFNlKGUpe3JldHVybiBlLmxlbmd0aDw0PyExOihlWzBdfGVbMV08PDh8ZVsyXTw8MTZ8ZVszXTw8MjQpPj4+MD09PUtlPyEwOnhlKGUsMCl9ZnVuY3Rpb24gQ2UoZSl7aWYoZS5sZW5ndGg8NDQpcmV0dXJuITE7bGV0IHQ9bmV3IERhdGFWaWV3KGUuYnVmZmVyLGUuYnl0ZU9mZnNldCxlLmJ5dGVMZW5ndGgpO3JldHVybiB0LmdldFVpbnQzMigwLCEwKT09PTEmJnQuZ2V0VWludDMyKDQwLCEwKT09PVllfWZ1bmN0aW9uIHdlKGUpe3JldHVybiBlPT09YGltYWdlL3dtZmB8fGU9PT1gaW1hZ2UvZW1mYH1mdW5jdGlvbiBUZShlKXtsZXQgdD1lJjI1NSxuPWU+Pj44JjI1NSxyPWU+Pj4xNiYyNTUsaT1lPT5lLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLGAwYCk7cmV0dXJuYCMke2kodCl9JHtpKG4pfSR7aShyKX1gfWZ1bmN0aW9uIEVlKGUsdCl7Zm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKyspaWYoZVtuXT09bnVsbCl7ZVtuXT10O3JldHVybn1lLnB1c2godCl9ZnVuY3Rpb24gRGUoZSx0KXtyZXR1cm4odC1lLm9yZ1gpKihlLlcvZS5leHRYKX1mdW5jdGlvbiBPZShlLHQpe3JldHVybih0LWUub3JnWSkqKGUuSC9lLmV4dFkpfWZ1bmN0aW9uIGtlKGUsdCl7bGV0IG49dCpNYXRoLmFicyhlLlcvZS5leHRYKTtyZXR1cm4gbj49MT9uOjF9ZnVuY3Rpb24gQWUoZSx0LG4pe3JldHVybiBNYXRoLmFicyhlLXQpPD1aZXx8TWF0aC5hYnMoZS1uKTw9WmV9ZnVuY3Rpb24gamUoZSx0LG4pe2xldCByPVtdLGk9bj90Lmxlbmd0aDp0Lmxlbmd0aC0xO2ZvcihsZXQgbj0wO248aTtuKyspe2xldCBpPXRbbl0sYT10WyhuKzEpJXQubGVuZ3RoXSxvPU1hdGguYWJzKGlbMF0tYVswXSk8PVplJiZBZShpWzBdLDAsZS5XKSYmQWUoYVswXSwwLGUuVykscz1NYXRoLmFicyhpWzFdLWFbMV0pPD1aZSYmQWUoaVsxXSwwLGUuSCkmJkFlKGFbMV0sMCxlLkgpO298fHN8fHIucHVzaChbaSxhXSl9cmV0dXJuIHJ9ZnVuY3Rpb24gTWUoZSx0LG4pe2lmKCFlLmN1clBlbnx8ZS5jdXJQZW4uc3Ryb2tlPT1udWxsfHx0Lmxlbmd0aDwyKXJldHVybjtsZXR7Y3R4OnJ9PWU7aWYoci5zdHJva2VTdHlsZT1lLmN1clBlbi5zdHJva2Usci5saW5lV2lkdGg9a2UoZSxlLmN1clBlbi53aWR0aCksIWUuc3VwcHJlc3NCb3VuZGFyeUZyYW1lKXtyLmJlZ2luUGF0aCgpLHIubW92ZVRvKHRbMF1bMF0sdFswXVsxXSk7Zm9yKGxldCBlPTE7ZTx0Lmxlbmd0aDtlKyspci5saW5lVG8odFtlXVswXSx0W2VdWzFdKTtuJiZyLmNsb3NlUGF0aCgpLHIuc3Ryb2tlKCksZS5kcmV3PSEwO3JldHVybn1sZXQgaT1qZShlLHQsbik7aWYoaS5sZW5ndGg9PT0wKXJldHVybjtyLmJlZ2luUGF0aCgpO2xldCBhPW51bGw7Zm9yKGxldFtlLHRdb2YgaSkoIWF8fGFbMF0hPT1lWzBdfHxhWzFdIT09ZVsxXSkmJnIubW92ZVRvKGVbMF0sZVsxXSksci5saW5lVG8odFswXSx0WzFdKSxhPXQ7ci5zdHJva2UoKSxlLmRyZXc9ITB9ZnVuY3Rpb24gTmUoZSx0LG4pe2xldCByPVtdO2ZvcihsZXQgaT0wO2k8biYmISh0LnJlbWFpbmluZzw0KTtpKyspe2xldCBuPXQuaTE2KCksaT10LmkxNigpO3IucHVzaChbRGUoZSxuKSxPZShlLGkpXSl9cmV0dXJuIHJ9ZnVuY3Rpb24gUGUoZSx0KXt0Lmxlbmd0aDwyfHwhZS5jdXJQZW58fGUuY3VyUGVuLnN0cm9rZT09bnVsbHx8TWUoZSx0LCExKX1mdW5jdGlvbiBGZShlLHQpe2lmKHQubGVuZ3RoPDIpcmV0dXJuO2xldHtjdHg6bn09ZTtpZihlLmN1ckJydXNoJiZlLmN1ckJydXNoLmZpbGwhPW51bGwpe24uYmVnaW5QYXRoKCksbi5tb3ZlVG8odFswXVswXSx0WzBdWzFdKTtmb3IobGV0IGU9MTtlPHQubGVuZ3RoO2UrKyluLmxpbmVUbyh0W2VdWzBdLHRbZV1bMV0pO24uY2xvc2VQYXRoKCksbi5maWxsU3R5bGU9ZS5jdXJCcnVzaC5maWxsLG4uZmlsbChlLmZpbGxSdWxlKSxlLmRyZXc9ITB9TWUoZSx0LCEwKX1mdW5jdGlvbiBJZShlLHQpe2xldCBuPXQudTE2KCk7aWYobjw9MHx8bj42NTUzNilyZXR1cm47bGV0IHI9W107Zm9yKGxldCBlPTA7ZTxuO2UrKyl7aWYodC5yZW1haW5pbmc8MilyZXR1cm47ci5wdXNoKHQudTE2KCkpfWxldHtjdHg6aX09ZTtpLmJlZ2luUGF0aCgpO2xldCBhPSExO2ZvcihsZXQgbiBvZiByKXtpZihuPDIpe2ZvcihsZXQgZT0wO2U8biYmdC5yZW1haW5pbmc+PTQ7ZSsrKXQuaTE2KCksdC5pMTYoKTtjb250aW51ZX1sZXQgcj1OZShlLHQsbik7aWYoIShyLmxlbmd0aDwyKSl7aS5tb3ZlVG8oclswXVswXSxyWzBdWzFdKTtmb3IobGV0IGU9MTtlPHIubGVuZ3RoO2UrKylpLmxpbmVUbyhyW2VdWzBdLHJbZV1bMV0pO2kuY2xvc2VQYXRoKCksYT0hMH19YSYmKGUuY3VyQnJ1c2gmJmUuY3VyQnJ1c2guZmlsbCE9bnVsbCYmKGkuZmlsbFN0eWxlPWUuY3VyQnJ1c2guZmlsbCxpLmZpbGwoZS5maWxsUnVsZSksZS5kcmV3PSEwKSxlLmN1clBlbiYmZS5jdXJQZW4uc3Ryb2tlIT1udWxsJiYoaS5zdHJva2VTdHlsZT1lLmN1clBlbi5zdHJva2UsaS5saW5lV2lkdGg9a2UoZSxlLmN1clBlbi53aWR0aCksaS5zdHJva2UoKSxlLmRyZXc9ITApKX1mdW5jdGlvbiBMZShlKXtsZXQgdD1lLnUxNigpLG49ZS5pMTYoKTtlLmkxNigpO2xldCByPWUudTMyKCk7cmV0dXJue2tpbmQ6YHBlbmAsc3Ryb2tlOih0JjI1NSk9PTU/bnVsbDpUZShyKSx3aWR0aDpNYXRoLmFicyhuKX19ZnVuY3Rpb24gUmUoZSl7bGV0IHQ9ZS51MTYoKSxuPWUudTMyKCk7cmV0dXJuIGUudTE2KCkse2tpbmQ6YGJydXNoYCxmaWxsOnQ9PT0xP251bGw6VGUobil9fWZ1bmN0aW9uIHplKGUpe2xldCB0PWUuaW5kZXhPZigwKSxuPXQ+PTA/ZS5zdWJhcnJheSgwLHQpOmU7aWYobi5sZW5ndGg9PT0wKXJldHVybmBgO3RyeXtyZXR1cm4gbmV3IFRleHREZWNvZGVyKGBzaGlmdF9qaXNgKS5kZWNvZGUobil9Y2F0Y2h7cmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoLi4ubil9fWZ1bmN0aW9uIEJlKGUpe2xldCB0PU1hdGguYWJzKGUuaTE2KCkpO2UuaTE2KCksZS5pMTYoKSxlLmkxNigpO2xldCBuPWUuaTE2KCkscj1lLnU4KCkhPT0wO3JldHVybiBlLnU4KCksZS51OCgpLGUudTgoKSxlLnU4KCksZS51OCgpLGUudTgoKSxlLnU4KCkse2tpbmQ6YGZvbnRgLGhlaWdodDp0LHdlaWdodDpuLGl0YWxpYzpyLGZhY2U6emUoZS5ieXRlcyhNYXRoLm1pbigzMixlLnJlbWFpbmluZykpKX19ZnVuY3Rpb24gVmUoZSx0LG4scil7aWYodC5sZW5ndGg9PT0wKXJldHVybjtsZXQgaT1lLmN1ckZvbnQsYT1pPy5oZWlnaHR8fDEyLG89TWF0aC5hYnMoT2UoZSxlLm9yZ1krYSktT2UoZSxlLm9yZ1kpKTtpZighTnVtYmVyLmlzRmluaXRlKG8pfHxvPDEpcmV0dXJuO2xldHtjdHg6c309ZTt0cnl7cy5maWxsU3R5bGU9ZS50ZXh0Q29sb3I7bGV0IGE9aSYmaS53ZWlnaHQ+PTcwMD9gYm9sZCBgOmBgO3MuZm9udD1gJHtpPy5pdGFsaWM/YGl0YWxpYyBgOmBgfSR7YX0ke299cHggJHtpPy5mYWNlfHxgc2Fucy1zZXJpZmB9YDtsZXQgYz1lLnRleHRBbGlnbiY2O3MudGV4dEFsaWduPWM9PT0yP2ByaWdodGA6Yz09PTY/YGNlbnRlcmA6YGxlZnRgLHMudGV4dEJhc2VsaW5lPShlLnRleHRBbGlnbiYyNCk9PTI0P2BhbHBoYWJldGljYDpgdG9wYCxzLmZpbGxUZXh0KHQsRGUoZSxuKSxPZShlLHIpKSxlLmRyZXc9ITB9Y2F0Y2h7fX1mdW5jdGlvbiBIZShlLHQsbixyLGk9ITEpe2lmKCFTZShlKSlyZXR1cm4hMTtsZXQgYT0wOyhlLmxlbmd0aD49ND8oZVswXXxlWzFdPDw4fGVbMl08PDE2fGVbM108PDI0KT4+PjA6MCk9PT1LZSYmKGE9cWUpO2xldCBvPWErSmU7aWYobz5lLmxlbmd0aClyZXR1cm4hMTtsZXQgcz17Y3R4OnQsVzpuLEg6cixvcmdYOjAsb3JnWTowLGV4dFg6bnx8MSxleHRZOnJ8fDEsaGF2ZUV4dDohMSxvYmplY3RzOltdLGN1clBlbjpudWxsLGN1ckJydXNoOm51bGwsY3VyRm9udDpudWxsLHRleHRDb2xvcjpgIzAwMDAwMGAsdGV4dEFsaWduOjAsZmlsbFJ1bGU6YG5vbnplcm9gLGRyZXc6ITEsc3VwcHJlc3NCb3VuZGFyeUZyYW1lOml9LGM9bmV3IERhdGFWaWV3KGUuYnVmZmVyLGUuYnl0ZU9mZnNldCxlLmJ5dGVMZW5ndGgpO2Zvcig7bys2PD1lLmxlbmd0aDspe2xldCB0PWMuZ2V0VWludDMyKG8sITApLG49Yy5nZXRVaW50MTYobys0LCEwKTtpZih0PDMpYnJlYWs7bGV0IHI9dCoyLGk9bytyO2lmKGk+ZS5sZW5ndGh8fG49PT1HZS5FT0YpYnJlYWs7bGV0IGE9bys2LGw9bmV3IFhlKGUsYSxpKTtzd2l0Y2gobil7Y2FzZSBHZS5TRVRXSU5ET1dPUkc6cy5vcmdZPWwuaTE2KCkscy5vcmdYPWwuaTE2KCk7YnJlYWs7Y2FzZSBHZS5TRVRXSU5ET1dFWFQ6e2xldCBlPWwuaTE2KCksdD1sLmkxNigpO3MuZXh0WT1lfHwxLHMuZXh0WD10fHwxLHMuaGF2ZUV4dD0hMDticmVha31jYXNlIEdlLlNFVFBPTFlGSUxMTU9ERTpzLmZpbGxSdWxlPWwudTE2KCk9PT0xP2BldmVub2RkYDpgbm9uemVyb2A7YnJlYWs7Y2FzZSBHZS5TRVRURVhUQ09MT1I6cy50ZXh0Q29sb3I9VGUobC51MzIoKSk7YnJlYWs7Y2FzZSBHZS5TRVRURVhUQUxJR046cy50ZXh0QWxpZ249bC51MTYoKTticmVhaztjYXNlIEdlLkNSRUFURVBFTklORElSRUNUOkVlKHMub2JqZWN0cyxMZShsKSk7YnJlYWs7Y2FzZSBHZS5DUkVBVEVCUlVTSElORElSRUNUOkVlKHMub2JqZWN0cyxSZShsKSk7YnJlYWs7Y2FzZSBHZS5DUkVBVEVGT05USU5ESVJFQ1Q6RWUocy5vYmplY3RzLEJlKGwpKTticmVhaztjYXNlIEdlLlNFTEVDVE9CSkVDVDp7bGV0IGU9bC51MTYoKSx0PXMub2JqZWN0c1tlXTt0Py5raW5kPT09YHBlbmA/cy5jdXJQZW49dDp0Py5raW5kPT09YGJydXNoYD9zLmN1ckJydXNoPXQ6dD8ua2luZD09PWBmb250YCYmKHMuY3VyRm9udD10KTticmVha31jYXNlIEdlLkRFTEVURU9CSkVDVDp7bGV0IGU9bC51MTYoKSx0PXMub2JqZWN0c1tlXTt0JiYodD09PXMuY3VyUGVuJiYocy5jdXJQZW49bnVsbCksdD09PXMuY3VyQnJ1c2gmJihzLmN1ckJydXNoPW51bGwpLHQ9PT1zLmN1ckZvbnQmJihzLmN1ckZvbnQ9bnVsbCkscy5vYmplY3RzW2VdPW51bGwpO2JyZWFrfWNhc2UgR2UuUE9MWUxJTkU6UGUocyxOZShzLGwsbC5pMTYoKSkpO2JyZWFrO2Nhc2UgR2UuUE9MWUdPTjpGZShzLE5lKHMsbCxsLmkxNigpKSk7YnJlYWs7Y2FzZSBHZS5QT0xZUE9MWUdPTjpJZShzLGwpO2JyZWFrO2Nhc2UgR2UuUkVDVEFOR0xFOntsZXQgZT1sLmkxNigpLHQ9bC5pMTYoKSxuPWwuaTE2KCkscj1sLmkxNigpO0ZlKHMsW1tEZShzLHIpLE9lKHMsbildLFtEZShzLHQpLE9lKHMsbildLFtEZShzLHQpLE9lKHMsZSldLFtEZShzLHIpLE9lKHMsZSldXSk7YnJlYWt9Y2FzZSBHZS5URVhUT1VUOntsZXQgZT1sLnUxNigpLHQ9emUobC5ieXRlcyhlKSk7ZSUyIT0wJiZsLnNraXAoMSk7bGV0IG49bC5pMTYoKTtWZShzLHQsbC5pMTYoKSxuKTticmVha31jYXNlIEdlLlNUUkVUQ0hESUJJVFM6e2wudTMyKCksbC5pMTYoKSxsLmkxNigpLGwuaTE2KCksbC5pMTYoKSxsLnUxNigpO2xldCBlPWwuaTE2KCksdD1sLmkxNigpLG49bC5pMTYoKSxyPWwuaTE2KCksbz1hKzIyLHU9WChjLG8saS1vKTtpZih1KXtsZXQgaT1EZShzLHIpLGE9T2UocyxuKSxvPURlKHMscit0KSxjPU9lKHMsbitlKTtaKHMuY3R4LHUsaSxhLG8sYykmJihzLmRyZXc9ITApfWJyZWFrfWNhc2UgR2UuRElCU1RSRVRDSEJMVDpjYXNlIEdlLkRJQkJJVEJMVDpjYXNlIEdlLlNFVEJLTU9ERTpicmVhaztkZWZhdWx0OmJyZWFrfW89aX1yZXR1cm4gcy5kcmV3fWZ1bmN0aW9uIFVlKGUsdCl7bGV0IG49ZT4wP2U6MzAwLHI9dD4wP3Q6MzAwLGk9ZT0+TWF0aC5tYXgoMSxNYXRoLm1pbihRZSxNYXRoLnJvdW5kKGUpKSk7cmV0dXJue3c6aShuKiRlKSxoOmkociokZSl9fWFzeW5jIGZ1bmN0aW9uIFdlKGUsdCxuLHI9ITEpe2lmKCFTZShlKXx8dDw9MHx8bjw9MClyZXR1cm4gbnVsbDtsZXQgaT1vZSh0LG4pO2lmKCFpKXJldHVybiBudWxsO2xldCBhPWkuZ2V0Q29udGV4dChgMmRgKTtyZXR1cm4hYXx8KGEubGluZUpvaW49YHJvdW5kYCxhLmxpbmVDYXA9YHJvdW5kYCwhSGUoZSxhLHQsbixyKSk/bnVsbDpjcmVhdGVJbWFnZUJpdG1hcChpKX12YXIgR2UsS2UscWUsSmUsWWUsWGUsWmUsUWUsJGUsZXQ9dCgoKCk9PntiZSgpLGNlKCksR2U9e0VPRjowLFNFVEJLTU9ERToyNTgsU0VUVEVYVEFMSUdOOjMwMixTRVRURVhUQ09MT1I6NTIxLFNFVFBPTFlGSUxMTU9ERToyNjIsU0VUV0lORE9XT1JHOjUyMyxTRVRXSU5ET1dFWFQ6NTI0LFNFTEVDVE9CSkVDVDozMDEsREVMRVRFT0JKRUNUOjQ5NixURVhUT1VUOjEzMTMsUE9MWUdPTjo4MDQsUE9MWUxJTkU6ODA1LFBPTFlQT0xZR09OOjEzMzYsUkVDVEFOR0xFOjEwNTEsQ1JFQVRFUEVOSU5ESVJFQ1Q6NzYyLENSRUFURUZPTlRJTkRJUkVDVDo3NjMsQ1JFQVRFQlJVU0hJTkRJUkVDVDo3NjQsRElCQklUQkxUOjIzNjgsRElCU1RSRVRDSEJMVDoyODgxLFNUUkVUQ0hESUJJVFM6MzkwN30sS2U9MjU5NjcyMDA4NyxxZT0yMixKZT0xOCxZZT0xMTc5NDY5MDg4LFhlPWNsYXNze3A9MDtjb25zdHJ1Y3RvcihlLHQsbil7dGhpcy5iPWUsdGhpcy5lbmQ9bix0aGlzLnA9dH1nZXQgcmVtYWluaW5nKCl7cmV0dXJuIHRoaXMuZW5kLXRoaXMucH1pMTYoKXtsZXQgZT10aGlzLnUxNigpO3JldHVybiBlPj0zMjc2OD9lLTY1NTM2OmV9dTE2KCl7bGV0IGU9dGhpcy5iW3RoaXMucF18dGhpcy5iW3RoaXMucCsxXTw8ODtyZXR1cm4gdGhpcy5wKz0yLGV9dTgoKXtyZXR1cm4gdGhpcy5iW3RoaXMucCsrXX11MzIoKXtsZXQgZT0odGhpcy5iW3RoaXMucF18dGhpcy5iW3RoaXMucCsxXTw8OHx0aGlzLmJbdGhpcy5wKzJdPDwxNnx0aGlzLmJbdGhpcy5wKzNdPDwyNCk+Pj4wO3JldHVybiB0aGlzLnArPTQsZX1ieXRlcyhlKXtsZXQgdD1NYXRoLm1pbih0aGlzLnArTWF0aC5tYXgoMCxlKSx0aGlzLmVuZCksbj10aGlzLmIuc3ViYXJyYXkodGhpcy5wLHQpO3JldHVybiB0aGlzLnA9dCxufXNraXAoZSl7dGhpcy5wPU1hdGgubWluKHRoaXMucCtNYXRoLm1heCgwLGUpLHRoaXMuZW5kKX19LFplPS4wMDEsUWU9MmUzLCRlPTJ9KSk7ZnVuY3Rpb24gdHQoZSl7aWYoIWUpcmV0dXJuITA7aWYoIVtlLmwsZS50LGUucixlLmJdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSkpcmV0dXJuITE7bGV0IHQ9ZS5sLG49ZS50LHI9MS1lLnIsaT0xLWUuYjtyZXR1cm4gcj50JiZpPm4mJk1hdGgubWluKDEscik+TWF0aC5tYXgoMCx0KSYmTWF0aC5taW4oMSxpKT5NYXRoLm1heCgwLG4pfWZ1bmN0aW9uIG50KGUpe2xldCB0PWU7cmV0dXJue3c6dC5uYXR1cmFsV2lkdGh8fCh0eXBlb2YgdC53aWR0aD09YG51bWJlcmA/dC53aWR0aDowKXx8MCxoOnQubmF0dXJhbEhlaWdodHx8KHR5cGVvZiB0LmhlaWdodD09YG51bWJlcmA/dC5oZWlnaHQ6MCl8fDB9fWZ1bmN0aW9uIHJ0KGUsdCl7aWYoIXR8fCEodC5sfHx0LnR8fHQucnx8dC5iKXx8IVt0LmwsdC50LHQucix0LmJdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSkpcmV0dXJuIG51bGw7bGV0e3c6bixoOnJ9PW50KGUpO2lmKG48PTB8fHI8PTApcmV0dXJuIG51bGw7bGV0IGk9dC5sLGE9dC50LG89MS10LnIscz0xLXQuYixjPW8taSxsPXMtYTtpZighKGM+MCl8fCEobD4wKSlyZXR1cm57c3g6MCxzeTowLHN3OjAsc2g6MCxkeEZyYWN0aW9uOjAsZHlGcmFjdGlvbjowLGR3RnJhY3Rpb246MCxkaEZyYWN0aW9uOjB9O2xldCB1PU1hdGgubWF4KDAsaSksZD1NYXRoLm1heCgwLGEpLGY9TWF0aC5taW4oMSxvKSxwPU1hdGgubWluKDEscyksbT1NYXRoLm1heCgwLGYtdSksaD1NYXRoLm1heCgwLHAtZCk7cmV0dXJue3N4OnUqbixzeTpkKnIsc3c6bSpuLHNoOmgqcixkeEZyYWN0aW9uOih1LWkpL2MsZHlGcmFjdGlvbjooZC1hKS9sLGR3RnJhY3Rpb246bS9jLGRoRnJhY3Rpb246aC9sfX1mdW5jdGlvbiBpdChlLHQsbixyLGksYSxvKXtsZXQgcz1ydCh0LG4pO3M/cy5zdz4wJiZzLnNoPjAmJnMuZHdGcmFjdGlvbj4wJiZzLmRoRnJhY3Rpb24+MCYmZS5kcmF3SW1hZ2UodCxzLnN4LHMuc3kscy5zdyxzLnNoLHIrcy5keEZyYWN0aW9uKmEsaStzLmR5RnJhY3Rpb24qbyxzLmR3RnJhY3Rpb24qYSxzLmRoRnJhY3Rpb24qbyk6ZS5kcmF3SW1hZ2UodCxyLGksYSxvKX1mdW5jdGlvbiBhdChlLHQsbil7aWYoIU51bWJlci5pc0Zpbml0ZShlKXx8IU51bWJlci5pc0Zpbml0ZSh0KXx8IShlPjApfHwhKHQ+MCkpcmV0dXJuIG51bGw7bGV0IHI9bj8xLW4ubC1uLnI6MSxpPW4/MS1uLnQtbi5iOjE7aWYoIU51bWJlci5pc0Zpbml0ZShyKXx8IU51bWJlci5pc0Zpbml0ZShpKXx8IShyPjApfHwhKGk+MCl8fCF0dChuKSlyZXR1cm4gbnVsbDtsZXQgYT1NYXRoLmNlaWwoZS9yKSxvPU1hdGguY2VpbCh0L2kpO3JldHVybiBOdW1iZXIuaXNGaW5pdGUoYSkmJk51bWJlci5pc0Zpbml0ZShvKT97d2lkdGg6YSxoZWlnaHQ6b306bnVsbH1mdW5jdGlvbiBvdChlLHQsbixyKXtpZighdHx8IXdlKGUpKXJldHVybnt3aWR0aFB0Om4saGVpZ2h0UHQ6cn07aWYoIXR0KHQpKXJldHVybiBudWxsO2xldCBpPTEtdC5sLXQucixhPTEtdC50LXQuYjtyZXR1cm57d2lkdGhQdDpuL2ksaGVpZ2h0UHQ6ci9hfX12YXIgc3Q9dCgoKCk9PntldCgpfSkpLGN0LGx0LHV0LGR0LGZ0LHB0PXQoKCgpPT57Y3Q9MTI3MDAsbHQ9OTUyNSx1dD00LzMsZHQ9OTE0NDAsZnQ9NDU3MjB9KSk7ZnVuY3Rpb24gbXQoZSl7bGV0IHQ9TWF0aC5mbG9vcihlLmxlbmd0aC8yKTtyZXR1cm4gZS5sZW5ndGglMj09MT9lW3RdOmVbdC0xXS8yK2VbdF0vMn1mdW5jdGlvbiBodChlKXtsZXQgdD0wO2ZvcihsZXQgbiBvZiBlKXQ9TWF0aC5tYXgodCxNYXRoLmFicyhuKSk7aWYodD09PTApcmV0dXJuIDA7bGV0IG49MDtmb3IobGV0IHIgb2YgZSluKz1yL3Q7cmV0dXJuIG4vZS5sZW5ndGgqdH1mdW5jdGlvbiBndChlLHQsbil7aWYoIU51bWJlci5pc0Zpbml0ZSh0KSlyZXR1cm4gbjwwPy1OdW1iZXIuTUFYX1ZBTFVFOk51bWJlci5NQVhfVkFMVUU7bGV0IHI9ZStuKnQ7cmV0dXJuIE51bWJlci5pc0Zpbml0ZShyKT9yOm48MD8tTnVtYmVyLk1BWF9WQUxVRTpOdW1iZXIuTUFYX1ZBTFVFfWZ1bmN0aW9uIF90KGUsdCl7bGV0IG49ZS5maWx0ZXIoZT0+dHlwZW9mIGU9PWBudW1iZXJgJiZOdW1iZXIuaXNGaW5pdGUoZSkpLnNvcnQoKGUsdCk9PmUtdCk7aWYobi5sZW5ndGg9PT0wKXJldHVybiBudWxsO2xldCByPU1hdGguZmxvb3Iobi5sZW5ndGgvMiksaT1tdChuKSxhPXQ9PT1gaW5jbHVzaXZlYCYmbi5sZW5ndGglMj09MSxvPW4uc2xpY2UoMCxyKyArISFhKSxzPW4uc2xpY2UocisgKyhuLmxlbmd0aCUyPT0xJiYhYSkpLGM9bXQoby5sZW5ndGg+MD9vOm4pLGw9bXQocy5sZW5ndGg+MD9zOm4pLHU9KGwtYykqMS41LGQ9Z3QoYyx1LC0xKSxmPWd0KGwsdSwxKSxwPVtdLG09W107Zm9yKGxldCBlIG9mIG4pZTxkfHxlPmY/bS5wdXNoKGUpOnAucHVzaChlKTtyZXR1cm57cTE6YyxtZWRpYW46aSxxMzpsLGxvd2VyRmVuY2U6ZCx1cHBlckZlbmNlOmYsd2hpc2tlckxvOnBbMF0/P25bMF0sd2hpc2tlckhpOnBbcC5sZW5ndGgtMV0/P25bbi5sZW5ndGgtMV0sbWVhbjpodChuKSxvdXRsaWVyczptLGlubmVyOnB9fWZ1bmN0aW9uIHZ0KGUsdCl7bGV0IG49MDtmb3IobGV0IHIgb2YgZSlmb3IobGV0IGUgb2YgcilpZihuKz1lLmxlbmd0aCwhTnVtYmVyLmlzU2FmZUludGVnZXIobil8fG4+dClyZXR1cm4gdCsxO3JldHVybiBufWZ1bmN0aW9uIHl0KGUsdCxuLHIsaSxhLG8pe2lmKCFOdW1iZXIuaXNGaW5pdGUoZSl8fCFOdW1iZXIuaXNGaW5pdGUodCl8fHQ8PTB8fCFOdW1iZXIuaXNJbnRlZ2VyKG4pfHxuPD0wfHwhTnVtYmVyLmlzSW50ZWdlcihyKXx8cjw9MHx8IU51bWJlci5pc0ludGVnZXIoaSl8fGk8MHx8aT49bnx8IU51bWJlci5pc0ludGVnZXIoYSl8fGE8MHx8YT49cnx8IU51bWJlci5pc0Zpbml0ZShvKXx8bzwwKXJldHVybiBudWxsO2xldCBzPXQvbixjPXMvKHIrby8xMDApLGw9YypyLHU9YypidCxkPWMtdSxmPWUrcyooaSsuNSktbC8yK2EqYyt1LzI7cmV0dXJue2JveFg6Zixib3hXaWR0aDpkLGNlbnRlclg6ZitkLzJ9fXZhciBidCx4dD10KCgoKT0+e2J0PS4wNn0pKTtmdW5jdGlvbiBTdChlLHQpe3JldHVybiB0PT1udWxsfHwhTnVtYmVyLmlzRmluaXRlKHQpP2U6ZSpNYXRoLm1heCgwLE1hdGgubWluKDFlMyx0KSkvMTAwfWZ1bmN0aW9uIEN0KGUsdCxuLHI9ITEpe2xldCBpPU1hdGgubWF4KDAsdC0xKSxhPU51bWJlci5pc0Zpbml0ZShlKT9NYXRoLm1heCgwLE1hdGgubWluKGksZSkpOjAsbz1uPyhhKy41KS9NYXRoLm1heCgxLHQpOnQ9PT0xPy41OmEvaTtyZXR1cm4gcj8xLW86b31mdW5jdGlvbiB3dChlLHQpe2lmKGU8PTApcmV0dXJuW107bGV0IG49W10scj10P2U6ZS0xO2ZvcihsZXQgaT0wO2k8PXI7aSsrKW4ucHVzaCh0P2kvZTplPT09MT8uNTppLyhlLTEpKTtyZXR1cm4gbn1mdW5jdGlvbiBUdChlLHQpe3JldHVybiBlPD0wP1tdOnQ/QXJyYXkuZnJvbSh7bGVuZ3RoOmV9LCh0LG4pPT4obisuNSkvZSk6ZTw9MT9bXTpBcnJheS5mcm9tKHtsZW5ndGg6ZS0xfSwodCxuKT0+KG4rLjUpLyhlLTEpKX1mdW5jdGlvbiBFdChlLHQsbixyLGkpe2lmKGk9PW51bGwpcmV0dXJue2ZyYWN0aW9uOkN0KGUsdCxuLHIpLHRleHRBbGlnbjpgY2VudGVyYH07bGV0IGE9TWF0aC5tYXgoMCx0LTEpLG89TnVtYmVyLmlzRmluaXRlKGUpP01hdGgubWF4KDAsTWF0aC5taW4oYSxlKSk6MCxzLGM7aWYodDw9MT8ocz0wLGM9MSk6bj8ocz1vL3QsYz0obysxKS90KToocz1vPT09MD8wOihvLS41KS9hLGM9bz09PWE/MToobysuNSkvYSkscil7bGV0IGU9MS1jO2M9MS1zLHM9ZX1yZXR1cm4gaT09PWBsYD97ZnJhY3Rpb246cyx0ZXh0QWxpZ246YGxlZnRgfTppPT09YHJgP3tmcmFjdGlvbjpjLHRleHRBbGlnbjpgcmlnaHRgfTp7ZnJhY3Rpb246KHMrYykvMix0ZXh0QWxpZ246YGNlbnRlcmB9fWZ1bmN0aW9uIER0KGUsdCl7cmV0dXJuIGUhPW51bGwmJk51bWJlci5pc0Zpbml0ZShlKT9NYXRoLm1heCgwLE1hdGgubWluKDUwMCxlKSk6dD09PWBsZWdhY3lgPzE1MDozM312YXIgT3Q9dCgoKCk9Pnt9KSk7ZnVuY3Rpb24ga3QoZSx0LG4pe2xldCByPU1hdGgubWF4KDEsdCksaT1bXSxhPVtdLG89MDtmb3IobGV0IHQ9MDt0PGUubGVuZ3RoO3QrKyl7bGV0IHM9TWF0aC5taW4ocixNYXRoLm1heCgwLGVbdF0pKSxjPWEubGVuZ3RoPT09MD9zOm8rbitzO2EubGVuZ3RoPjAmJmM+cj8oaS5wdXNoKGEpLGE9W3RdLG89cyk6KGEucHVzaCh0KSxvPWMpfXJldHVybiBhLmxlbmd0aD4wJiZpLnB1c2goYSksaX1mdW5jdGlvbiBBdChlLHQpe3JldHVybiB0eXBlb2YgZT09YG51bWJlcmAmJk51bWJlci5pc0Zpbml0ZShlKSYmZT49MTAwJiZlPD00ZTU/ZS8xMDAqdDpudWxsfWZ1bmN0aW9uIGp0KGUsdCxuKXtyZXR1cm4gQXQoZS50aXRsZUZvbnRTaXplSHB0LG4pPz9xdCpufWZ1bmN0aW9uIE10KGUsdCxuLHIsaSl7aWYoIWUudGl0bGUmJiFlLnRpdGxlUHJlc2VudClyZXR1cm57Zm9udFB4OjAsdG9wUGFkOjAsYm90dG9tUGFkOjAsYmFuZEg6MH07bGV0IGE9anQoZSx0LG4pLG89YSt0KnIrdCppLHM9TWF0aC5taW4oTWF0aC5tYXgoMCxvLWEpLGEqSnQpO3JldHVybntmb250UHg6YSx0b3BQYWQ6cyxib3R0b21QYWQ6by1hLXMsYmFuZEg6b319ZnVuY3Rpb24gTnQoZSx0LG4scixpKXtpZighZS5zaG93TGVnZW5kKXJldHVybiBudWxsO2xldCBhPWUubGVnZW5kUG9zPz9gcmAsbz1hPT09YGxgP2BsYDphPT09YHRgP2B0YDphPT09YGJgP2BiYDpgcmA7aWYobz09PWByYHx8bz09PWBsYCl7aWYoaSl7bGV0IGU9TWF0aC5taW4oODAsdCouMyksbj10Ki4zLHI9TWF0aC5tYXgoMCwuLi5pLml0ZW1XaWR0aHMpK2kuaG9yaXpvbnRhbFBhZGRpbmc7cmV0dXJue3NpZGU6byxyZXNlcnZlVzpNYXRoLm1pbihuLE1hdGgubWF4KGUscikpLHJlc2VydmVIOjB9fXJldHVybntzaWRlOm8scmVzZXJ2ZVc6TWF0aC5tYXgoODAsdCpyKSxyZXNlcnZlSDowfX1pZihpKXtsZXQgZT1NYXRoLm1heCgxLHQtaS5ob3Jpem9udGFsUGFkZGluZykscj1rdChpLml0ZW1XaWR0aHMsZSxpLml0ZW1HYXApLmxlbmd0aCppLnJvd0hlaWdodCtpLnZlcnRpY2FsUGFkZGluZztyZXR1cm57c2lkZTpvLHJlc2VydmVXOjAscmVzZXJ2ZUg6TWF0aC5taW4obiouMyxyKX19cmV0dXJue3NpZGU6byxyZXNlcnZlVzowLHJlc2VydmVIOk1hdGgubWF4KDE4LG4qLjA4KX19ZnVuY3Rpb24gUHQoZSx0PSExKXtyZXR1cm4gdD97bGVnUmlnaHRXOjAsbGVnTGVmdFc6MCxsZWdUb3BIOjAsbGVnQm90dG9tSDowfTp7bGVnUmlnaHRXOmU/LnNpZGU9PT1gcmA/ZS5yZXNlcnZlVzowLGxlZ0xlZnRXOmU/LnNpZGU9PT1gbGA/ZS5yZXNlcnZlVzowLGxlZ1RvcEg6ZT8uc2lkZT09PWB0YD9lLnJlc2VydmVIOjAsbGVnQm90dG9tSDplPy5zaWRlPT09YGJgP2UucmVzZXJ2ZUg6MH19ZnVuY3Rpb24gRnQoZSx0KXtyZXR1cm4gQXQoZSx0KT8/MTAqdH1mdW5jdGlvbiBJdChlLHQpe3JldHVybiBNYXRoLm1heCgwLGUhPW51bGwmJk51bWJlci5pc0Zpbml0ZShlKT9lOjApL2N0KnR9ZnVuY3Rpb24gTHQoZSx0LG4pe2xldCByPTAsaT0hMTtpZihuIT1udWxsKXN3aXRjaChpPSEwLG4pe2Nhc2VgaG9yemA6YnJlYWs7Y2FzZWB2ZXJ0MjcwYDpyLT05MDticmVhaztjYXNlYHZlcnRgOmNhc2Vgd29yZEFydFZlcnRgOmNhc2VgZWFWZXJ0YDpjYXNlYG1vbmdvbGlhblZlcnRgOmNhc2Vgd29yZEFydFZlcnRSdGxgOnIrPTkwO2JyZWFrfXJldHVybiB0IT1udWxsJiZOdW1iZXIuaXNGaW5pdGUodCkmJihyKz10LzZlNCxpPSEwKSxpP3IqTWF0aC5QSS8xODA6ZT09PWBsZWZ0YHx8ZT09PWByaWdodGA/LU1hdGguUEkvMjowfWZ1bmN0aW9uIFJ0KGUpe3JldHVybiBNYXRoLm1heCg4LGUqLjAyKX1mdW5jdGlvbiB6dChlLHQsbixyKXtsZXQgaT1GdChlLmNhdEF4aXNUaXRsZUZvbnRTaXplSHB0LHIpLGE9RnQoZS52YWxBeGlzVGl0bGVGb250U2l6ZUhwdCxyKSxvPUl0KGUuY2F0QXhpc1RpdGxlVGV4dFZlcnRpY2FsSW5zZXRFbXUscikscz1JdChlLnZhbEF4aXNUaXRsZVRleHRWZXJ0aWNhbEluc2V0RW11LHIpO3JldHVybntjYXRGb250UHg6aSx2YWxGb250UHg6YSxjYXRCYW5kSDplLmNhdEF4aXNUaXRsZT9pK28rUnQobikrNDowLHZhbEJhbmRXOmUudmFsQXhpc1RpdGxlP2ErcytSdCh0KSs0OjB9fWZ1bmN0aW9uIEJ0KGUsdCxuKXtpZighZS50aXRsZSYmIWUudGl0bGVQcmVzZW50KXJldHVybntmb250UHg6MCx0b3BQYWQ6MCxib3R0b21QYWQ6MCxiYW5kSDowfTtsZXQgcj1qdChlLHQsbiksaT1yKll0LGE9TWF0aC5taW4oTWF0aC5tYXgoMCxpLXIpLHIqSnQpO3JldHVybntmb250UHg6cix0b3BQYWQ6YSxib3R0b21QYWQ6aS1yLWEsYmFuZEg6aX19ZnVuY3Rpb24gVnQoZSx0KXtsZXQgbj1IdChlKSxyPVN0KG4sdCk7cmV0dXJuIGUqWHQrci1ufWZ1bmN0aW9uIEh0KGUpe3JldHVybiA1LzYqZX1mdW5jdGlvbiBVdChlKXtyZXR1cm4gZX1mdW5jdGlvbiBXdChlKXtsZXQgdD1lLm91dGVyVGV4dE1hcmdpblB4Pz8wO3JldHVybnt0OmUudmFsQXhpc0hpZGRlbj8wOmUudmFsTGFiZWxGb250UHgvMit0LHI6KGUuc2Vjb25kYXJ5QmFuZFc/PzApPjA/KGUuc2Vjb25kYXJ5QmFuZFc/PzApK3Q6MCxiOmUuY2F0QXhpc0hpZGRlbj8wOmUuY2F0TGFiZWxGb250UHgrKGUuY2F0TGFiZWxHYXBQeD8/SHQoZS5jYXRMYWJlbEZvbnRQeCkpK2UuY2F0VGl0bGVCYW5kSCt0LGw6ZS52YWxBeGlzSGlkZGVuPzA6ZS52YWxMYWJlbFdpZHRoKyhlLnZhbExhYmVsR2FwUHg/P1V0KGUudmFsTGFiZWxGb250UHgpKStlLnZhbFRpdGxlQmFuZFcrdH19ZnVuY3Rpb24gR3QoZSx0LG4pe2xldCByPWUueE1vZGV8fGBmYWN0b3JgLGk9ZS55TW9kZXx8YGZhY3RvcmAsYT1lLndNb2RlfHxgZmFjdG9yYCxvPWUuaE1vZGV8fGBmYWN0b3JgLHM9cj09PWBlZGdlYD90LngrZS54KnQudzpuLngrZS54KnQudyxjPWk9PT1gZWRnZWA/dC55K2UueSp0Lmg6bi55K2UueSp0LmgsbD1lLnc9PW51bGw/bi53OmE9PT1gZWRnZWA/dC54K2Uudyp0LnctczplLncqdC53LHU9ZS5oPT1udWxsP24uaDpvPT09YGVkZ2VgP3QueStlLmgqdC5oLWM6ZS5oKnQuaDtyZXR1cm4hW3MsYyxsLHVdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSl8fGw8PTB8fHU8PTA/bnVsbDp7eDpzLHk6Yyx3OmwsaDp1fX1mdW5jdGlvbiBLdChlLHQsbixyLGksYSxvKXtsZXQgcz1vLnRpdGxlQmFuZD8/TXQoZSxpLGEsby50aXRsZVRvcFBhZEZyYWM/PzAsby50aXRsZUJvdHRvbVBhZEZyYWM/PzApLGM9by5sZWdlbmRSZXNlcnZlPT09dm9pZCAwP050KGUscixpLG8ubGVnZW5kU2lkZVJlc2VydmVGcmFjKTpvLmxlZ2VuZFJlc2VydmUsbD1QdChjLGUubGVnZW5kT3ZlcmxheT09PSEwKSx1PXp0KGUscixpLGEpLGQsZixwLG07aWYoby5yYWRpYWxHYXBGcmFjIT1udWxsKXtsZXQgZT1pKm8ucmFkaWFsR2FwRnJhYztwPXItbC5sZWdSaWdodFctbC5sZWdMZWZ0VyxtPWktcy5iYW5kSC1sLmxlZ1RvcEgtbC5sZWdCb3R0b21ILWUsZD10K2wubGVnTGVmdFcsZj1uK3MuYmFuZEgrbC5sZWdUb3BIK2V9ZWxzZXtsZXQgZT1vLnBhZDtpZighZSl0aHJvdyBFcnJvcihgY29tcHV0ZUNoYXJ0RnJhbWU6IGNhcnRlc2lhbiBmcmFtZSByZXF1aXJlcyBwYXJhbXMucGFkYCk7ZD10K2UubCxmPW4rZS50LHA9ci1lLmwtZS5yLG09aS1lLnQtZS5ifWxldCBoPSExLGc9by5ob25vclBsb3RBcmVhTWFudWFsTGF5b3V0P2UucGxvdEFyZWFNYW51YWxMYXlvdXQ6bnVsbDtpZihnKXtsZXQgZT1nLmxheW91dFRhcmdldD09PWBpbm5lcmA/e3Q6MCxyOjAsYjowLGw6MH06by5tYW51YWxPdXRlckluc2V0cz8/e3Q6MCxyOjAsYjowLGw6MH0sYT1nLmxheW91dFRhcmdldD09PWBpbm5lcmA/e3g6ZCx5OmYsdzpwLGg6bX06e3g6ZC1lLmwseTpmLWUudCx3OnArZS5sK2UucixoOm0rZS50K2UuYn0scz1HdChnLHt4OnQseTpuLHc6cixoOml9LGEpO3MmJnMudz5lLmwrZS5yJiZzLmg+ZS50K2UuYiYmKGQ9cy54K2UubCxmPXMueStlLnQscD1zLnctZS5sLWUucixtPXMuaC1lLnQtZS5iLGg9ITApfXJldHVybnt0aXRsZTpzLGxlZ2VuZDpjLGxlZ2VuZEJhbmRzOmwsYXhpc1RpdGxlczp1LHBsb3RSZWN0OntweDA6ZCxweTA6ZixwdzpwLHBoOm19LHBsb3RBcmVhTWFudWFsTGF5b3V0QXBwbGllZDpoLGNlbnRlcjp7Y3g6ZCtwLzIsY3k6ZittLzJ9fX12YXIgcXQsSnQsWXQsWHQsWnQsUXQ9dCgoKCk9PntwdCgpLE90KCkscXQ9MTQsSnQ9LjYyLFl0PTIuMjUsWHQ9Mi43NSxadD0xLjV9KSk7ZnVuY3Rpb24gJHQoZSx0KXtsZXQgbj1NYXRoLm1heChlLngsdC54KSxyPU1hdGgubWF4KGUueSx0LnkpLGk9TWF0aC5taW4oZS54K2Uudyx0LngrdC53KSxhPU1hdGgubWluKGUueStlLmgsdC55K3QuaCk7cmV0dXJuIGk+biYmYT5yP3t4Om4seTpyLHc6aS1uLGg6YS1yfTpudWxsfWZ1bmN0aW9uIGVuKGUsdCxuKXtyZXR1cm4gTWF0aC5taW4oTWF0aC5tYXgoZSx0KSxuKX1mdW5jdGlvbiB0bihlLHQsbixyLGksYT10KXtpZighb24odCl8fCFvbihhKXx8IU51bWJlci5pc0Zpbml0ZShyKXx8cjw9MHx8IVtuLncsbi5oXS5ldmVyeShOdW1iZXIuaXNGaW5pdGUpfHxuLnc8MHx8bi5oPD0wKXJldHVybiBudWxsO2xldCBvPXIqLjUscz10LGMsbCx1PSExLGQ9YGNlbnRlcmAsZj1gbWlkZGxlYDtpZihlLmtpbmQ9PT1gcG9pbnRgKXtpZighW2UueCxlLnksZS5tYXJrZXJHYXA/PzBdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSkpcmV0dXJuIG51bGw7bGV0IHQ9bytNYXRoLm1heCgwLGUubWFya2VyR2FwPz8wKTtzd2l0Y2goYz1lLngsbD1lLnksZS5wb3NpdGlvbj8/YHJgKXtjYXNlYGxgOmMtPXQrbi53LzIsZD1gcmlnaHRgO2JyZWFrO2Nhc2VgdGA6bC09dCtuLmgvMixmPWBib3R0b21gO2JyZWFrO2Nhc2VgYmA6bCs9dCtuLmgvMixmPWB0b3BgO2JyZWFrO2Nhc2VgY3RyYDpjYXNlYGluRW5kYDpjYXNlYGJlc3RGaXRgOmJyZWFrO2RlZmF1bHQ6Yys9dCtuLncvMixkPWBsZWZ0YDticmVha319ZWxzZSBpZihlLmtpbmQ9PT1gYm94YCl7aWYoIVtlLnJlY3QueCxlLnJlY3QueSxlLnJlY3QudyxlLnJlY3QuaF0uZXZlcnkoTnVtYmVyLmlzRmluaXRlKXx8ZS5yZWN0Lnc8PTB8fGUucmVjdC5oPD0wKXJldHVybiBudWxsO2xldCByPSR0KGUucmVjdCx0KTtpZighcilyZXR1cm4gbnVsbDtsZXQgaT1lLnBvc2l0aW9uPz9gY3RyYDtjPXIueCtyLncvMixsPXIueStyLmgvMixpPT09YGluQmFzZWA/KHM9e3g6ci54K28seTpyLnkrbyx3OnIudy1vLGg6ci5oLW99LGM9cy54K24udy8yLGw9cy55K24uaC8yLGQ9YGxlZnRgLGY9YHRvcGApOmk9PT1gaW5FbmRgPyhzPXt4OnIueCtvLHk6ci55LHc6ci53LW8saDpyLmgtb30sYz1zLngrbi53LzIsbD1zLnkrcy5oLW4uaC8yLGQ9YGxlZnRgLGY9YGJvdHRvbWApOmk9PT1gbGA/KHM9e3g6ci54K28seTpyLnkrbyx3OnIudy1vLGg6ci5oLW8qMn0sYz1zLngrbi53LzIsZD1gbGVmdGApOmk9PT1gcmB8fGk9PT1gb3V0RW5kYD8ocz17eDpyLngseTpyLnkrbyx3OnIudy1vLGg6ci5oLW8qMn0sYz1zLngrcy53LW4udy8yLGQ9YHJpZ2h0YCk6aT09PWB0YD8ocz17eDpyLngrbyx5OnIueStvLHc6ci53LW8qMixoOnIuaC1vfSxsPXMueStuLmgvMixmPWB0b3BgKTppPT09YGJgPyhzPXt4OnIueCtvLHk6ci55LHc6ci53LW8qMixoOnIuaC1vfSxsPXMueStzLmgtbi5oLzIsZj1gYm90dG9tYCk6cz17eDpyLngrbyx5OnIueStvLHc6ci53LW8qMixoOnIuaC1vKjJ9fWVsc2V7aWYoIVtlLnJlY3QueCxlLnJlY3QueSxlLnJlY3QudyxlLnJlY3QuaF0uZXZlcnkoTnVtYmVyLmlzRmluaXRlKXx8ZS5yZWN0Lnc8MHx8ZS5yZWN0Lmg8MClyZXR1cm4gbnVsbDtsZXQgcj1lLnBvc2l0aW9uPz9gb3V0RW5kYCxpPXI9PT1gaW5CYXNlYHx8cj09PWBpbkVuZGB8fHI9PT1gY3RyYDtpZih1PSFpLGkpe2xldCBuPSR0KGUucmVjdCx0KTtpZighbilyZXR1cm4gbnVsbDtzPW59ZWxzZSBpZihlLm9yaWVudGF0aW9uPT09YHZlcnRpY2FsYCYmZS5yZWN0Lnc8PTB8fGUub3JpZW50YXRpb249PT1gaG9yaXpvbnRhbGAmJmUucmVjdC5oPD0wKXJldHVybiBudWxsO2xldCBhPWUucmVjdC54K2UucmVjdC53LzIscD1lLnJlY3QueStlLnJlY3QuaC8yO2lmKGM9YSxsPXAsZS5vcmllbnRhdGlvbj09PWB2ZXJ0aWNhbGApe2xldCB0PWUubmVnYXRpdmU/ZS5yZWN0LnkrZS5yZWN0Lmg6ZS5yZWN0LnksaT1lLm5lZ2F0aXZlP2UucmVjdC55OmUucmVjdC55K2UucmVjdC5oO3I9PT1gaW5CYXNlYD8obD1pKyhlLm5lZ2F0aXZlPzE6LTEpKihvK24uaC8yKSxmPWUubmVnYXRpdmU/YHRvcGA6YGJvdHRvbWApOnI9PT1gaW5FbmRgPyhsPXQrKGUubmVnYXRpdmU/LTE6MSkqKG8rbi5oLzIpLGY9ZS5uZWdhdGl2ZT9gYm90dG9tYDpgdG9wYCk6ciE9PWBjdHJgJiYobD10KyhlLm5lZ2F0aXZlPzE6LTEpKihvK24uaC8yKSxmPWUubmVnYXRpdmU/YHRvcGA6YGJvdHRvbWApfWVsc2V7bGV0IHQ9ZS5uZWdhdGl2ZT9lLnJlY3QueDplLnJlY3QueCtlLnJlY3QudyxpPWUubmVnYXRpdmU/ZS5yZWN0LngrZS5yZWN0Lnc6ZS5yZWN0Lng7cj09PWBpbkJhc2VgPyhjPWkrKGUubmVnYXRpdmU/LTE6MSkqKG8rbi53LzIpLGQ9ZS5uZWdhdGl2ZT9gcmlnaHRgOmBsZWZ0YCk6cj09PWBpbkVuZGA/KGM9dCsoZS5uZWdhdGl2ZT8xOi0xKSoobytuLncvMiksZD1lLm5lZ2F0aXZlP2BsZWZ0YDpgcmlnaHRgKTpyIT09YGN0cmAmJihjPXQrKGUubmVnYXRpdmU/LTE6MSkqKG8rbi53LzIpLGQ9ZS5uZWdhdGl2ZT9gcmlnaHRgOmBsZWZ0YCl9fWxldCBwPU1hdGgubWF4KDIsciouNSksbT1NYXRoLm1heCgyLHIqLjkpO2lmKHMudzxwfHxzLmg8bSlyZXR1cm4gbnVsbDtsZXQgaD17eDpjLU1hdGgubWluKG4udyxzLncpLzIseTpsLU1hdGgubWluKG4uaCxzLmgpLzIsdzpNYXRoLm1pbihuLncscy53KSxoOk1hdGgubWluKG4uaCxzLmgpfTtpZihpKXtsZXQgZT1HdChpLGEsaCk7aWYoIWUpcmV0dXJuIG51bGw7aD1lLGQ9YGNlbnRlcmAsZj1gbWlkZGxlYDtsZXQgbj0kdChlLHQpO2lmKCFufHwocz1uLHMudzxwfHxzLmg8bSkpcmV0dXJuIG51bGx9bGV0IGc9TWF0aC5taW4oTWF0aC5tYXgocCxoLncpLHMudyksXz1NYXRoLm1pbihNYXRoLm1heChtLGguaCkscy5oKSx2PWcvMix5PV8vMixiPXV8fGk/aC54K2gudy8yOmVuKGgueCtoLncvMixzLngrdixzLngrcy53LXYpLHg9dXx8aT9oLnkraC5oLzI6ZW4oaC55K2guaC8yLHMueSt5LHMueStzLmgteSk7cmV0dXJuW2IseF0uZXZlcnkoTnVtYmVyLmlzRmluaXRlKT97eDpkPT09YGxlZnRgP2ItdjpkPT09YHJpZ2h0YD9iK3Y6Yix5OmY9PT1gdG9wYD94LXk6Zj09PWBib3R0b21gP3greTp4LHRleHRBbGlnbjpkLHRleHRCYXNlbGluZTpmLG1heFdpZHRoOnMudyxtYXhIZWlnaHQ6cy5oLGNsaXA6cyxyZWN0Omh9Om51bGx9ZnVuY3Rpb24gbm4oZSx0LG4pe2lmKG4oZSk8PXQpcmV0dXJuIGU7aWYobihg4oCmYCk+dClyZXR1cm5gYDtsZXQgcj0wLGk9QXJyYXkuZnJvbShlKSxhPWkubGVuZ3RoO2Zvcig7cjxhOyl7bGV0IGU9TWF0aC5jZWlsKChyK2EpLzIpO24oYCR7aS5zbGljZSgwLGUpLmpvaW4oYGApfeKApmApPD10P3I9ZTphPWUtMX1yZXR1cm5gJHtpLnNsaWNlKDAscikuam9pbihgYCl94oCmYH1mdW5jdGlvbiBybihlKXtsZXQgdD1gYCxuPTA7Zm9yKGxldCByIG9mIGUpe2lmKG4+PXNuKXJldHVybnt2YWx1ZTp0LHRydW5jYXRlZDohMH07dCs9cixuKyt9cmV0dXJue3ZhbHVlOnQsdHJ1bmNhdGVkOiExfX1mdW5jdGlvbiBhbihlLHQsbixyLGkpe2lmKCFbdCxuLHJdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSl8fHQ8PTB8fG48cnx8cjw9MClyZXR1cm5bXTtsZXQgYT1NYXRoLm1heCgxLE1hdGgubWluKGNuLE1hdGguZmxvb3Iobi9yKSkpLG89cm4oZSkscz1vLnZhbHVlLnNwbGl0KC9ccj9cbi8pLGM9W10sbD1vLnRydW5jYXRlZCx1PWU9PntsZXQgbj1bXSxyPWBgO2ZvcihsZXQgYSBvZiBBcnJheS5mcm9tKGUpKXtsZXQgZT1gJHtyfSR7YX1gO3ImJmkoZSk+dD8obi5wdXNoKHIpLHI9YSk6cj1lfXJldHVybiByJiZuLnB1c2gociksbi5maWx0ZXIoZT0+aShlKTw9dCl9O2ZvcihsZXQgZSBvZiBzKXtpZihpKGUpPD10KXtjLnB1c2goZSk7Y29udGludWV9bGV0IG49ZS5tYXRjaCgvXFMrXHMqfFxzKy9nKT8/W107aWYobi5sZW5ndGg8PTEpYy5wdXNoKC4uLnUoZSkpO2Vsc2V7bGV0IGU9YGA7Zm9yKGxldCByIG9mIG4pe2xldCBuPWAke2V9JHtyfWA7aWYoaShuKTw9dCllPW47ZWxzZXtlJiZjLnB1c2goZSk7bGV0IHQ9dShyKTtlPXQucG9wKCk/P2BgLGMucHVzaCguLi50KX19ZSYmYy5wdXNoKGUpfX1sfHw9Yy5sZW5ndGg+YTtsZXQgZD1jLnNsaWNlKDAsYSk7cmV0dXJuIGwmJmQubGVuZ3RoPjAmJiFkW2QubGVuZ3RoLTFdLmVuZHNXaXRoKGDigKZgKSYmKGRbZC5sZW5ndGgtMV09bm4oYCR7ZFtkLmxlbmd0aC0xXX3igKZgLHQsaSkpLGR9dmFyIG9uLHNuLGNuLGxuPXQoKCgpPT57UXQoKSxvbj1lPT5bZS54LGUueSxlLncsZS5oXS5ldmVyeShOdW1iZXIuaXNGaW5pdGUpJiZlLnc+MCYmZS5oPjAsc249NDA5Nixjbj00fSkpO2Z1bmN0aW9uIHVuKGUsdCl7cmV0dXJuKHQ/LmRlbGV0ZWQ/P2U/LmRlbGV0ZWQpPT09ITB9ZnVuY3Rpb24gZG4oZSx0KXtsZXQgbj1lPy5mb250UGFpbnRBdXRob3JlZD09PSEwfHxlPy5mb250Q29sb3IhPW51bGx8fGU/LmZvbnRIaWRkZW49PT0hMCxyPXQ/LmZvbnRQYWludEF1dGhvcmVkPT09ITB8fHQ/LmZvbnRDb2xvciE9bnVsbHx8dD8uZm9udEhpZGRlbj09PSEwO3JldHVybntmb250Q29sb3I6bj9lLmZvbnRDb2xvcjplPy5mb250Q29sb3I/P3Q/LmZvbnRDb2xvcixmb250SXRhbGljOmU/LmZvbnRJdGFsaWM/P3Q/LmZvbnRJdGFsaWMsZm9udExhbmd1YWdlOmU/LmZvbnRMYW5ndWFnZT8/dD8uZm9udExhbmd1YWdlLGZvbnRCYXNlbGluZTplPy5mb250QmFzZWxpbmU/P3Q/LmZvbnRCYXNlbGluZSxmb250UGFpbnRBdXRob3JlZDpuPyEwOnJ8fHZvaWQgMCxmb250SGlkZGVuOm4/ZS5mb250SGlkZGVuOnQ/LmZvbnRIaWRkZW4sdGV4dFJvdGF0aW9uOmU/LnRleHRSb3RhdGlvbj8/dD8udGV4dFJvdGF0aW9uLHRleHRXcmFwOmU/LnRleHRXcmFwPz90Py50ZXh0V3JhcCx0ZXh0VmVydGljYWxBbmNob3I6ZT8udGV4dFZlcnRpY2FsQW5jaG9yPz90Py50ZXh0VmVydGljYWxBbmNob3IsdGV4dFZlcnRpY2FsTW9kZTplPy50ZXh0VmVydGljYWxNb2RlPz90Py50ZXh0VmVydGljYWxNb2RlLHRleHRMSW5zRW11OmU/LnRleHRMSW5zRW11Pz90Py50ZXh0TEluc0VtdSx0ZXh0VEluc0VtdTplPy50ZXh0VEluc0VtdT8/dD8udGV4dFRJbnNFbXUsdGV4dFJJbnNFbXU6ZT8udGV4dFJJbnNFbXU/P3Q/LnRleHRSSW5zRW11LHRleHRCSW5zRW11OmU/LnRleHRCSW5zRW11Pz90Py50ZXh0Qkluc0VtdSx0ZXh0Qm9keUF1dGhvcmVkOmU/LnRleHRCb2R5QXV0aG9yZWQ9PT0hMHx8dD8udGV4dEJvZHlBdXRob3JlZD09PSEwfHx2b2lkIDAsdGV4dEFsaWduOmU/LnRleHRBbGlnbj8/dD8udGV4dEFsaWdufX1mdW5jdGlvbiBmbihlLHQpe3JldHVybiBlPy50ZXh0QWxpZ249PT1gbGA/YGxlZnRgOmU/LnRleHRBbGlnbj09PWByYD9gcmlnaHRgOmU/LnRleHRBbGlnbj09PWBjdHJgP2BjZW50ZXJgOnR9ZnVuY3Rpb24gcG4oZSx0KXtsZXQgbj10L2N0LHI9ZT8udGV4dEJvZHlBdXRob3JlZD09PSEwP2R0OjAsaT1lPy50ZXh0Qm9keUF1dGhvcmVkPT09ITA/ZnQ6MDtyZXR1cm57bGVmdDooZT8udGV4dExJbnNFbXU/P3IpKm4sdG9wOihlPy50ZXh0VEluc0VtdT8/aSkqbixyaWdodDooZT8udGV4dFJJbnNFbXU/P3IpKm4sYm90dG9tOihlPy50ZXh0Qkluc0VtdT8/aSkqbn19ZnVuY3Rpb24gbW4oZSx0KXtsZXQgbj1OdW1iZXIuaXNGaW5pdGUoZSk/ZS82ZTQqTWF0aC5QSS8xODA6MDtyZXR1cm4gdD09PWB2ZXJ0YD9uK01hdGguUEkvMjp0PT09YHZlcnQyNzBgP24rTWF0aC5QSSozLzI6bn1mdW5jdGlvbiBobihlLHQsbixyKXtsZXQgaT1tbihuLHIpO2lmKGk9PT0wKXJldHVybnt3OmUsaDp0LHJhZGlhbnM6aX07bGV0IGE9TWF0aC5hYnMoTWF0aC5jb3MoaSkpLG89TWF0aC5hYnMoTWF0aC5zaW4oaSkpO3JldHVybnt3OmUqYSt0Km8saDplKm8rdCphLHJhZGlhbnM6aX19ZnVuY3Rpb24gZ24oZSx0LG4scixpLGEsbyl7cmV0dXJuIHIhPT0wJiYoZS50cmFuc2xhdGUodCxuKSxlLnJvdGF0ZShyKSxlLnRyYW5zbGF0ZSgtdCwtbikpLHt4OnQrKGk9PT1gbGVmdGA/by5sZWZ0Omk9PT1gcmlnaHRgPy1vLnJpZ2h0OihvLmxlZnQtby5yaWdodCkvMikseTpuKyhhPT09YHRvcGA/by50b3A6YT09PWBib3R0b21gPy1vLmJvdHRvbTooby50b3Atby5ib3R0b20pLzIpfX1mdW5jdGlvbiBfbihlLHQsbixyLGksYSl7cmV0dXJuIGE/LnRleHRXcmFwPT09YG5vbmVgPyFbdCxuLHJdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSl8fHQ8PTB8fG48PTB8fHI8PTA/W106cm4oZSkudmFsdWUuc3BsaXQoL1xyP1xuLyk6YW4oZSx0LG4scixpKX1mdW5jdGlvbiB2bihlLHQsbixyLGksYSxvPWBjZW50ZXJgLHM9YGNlbnRlcmAsYz1uLncsbD0wKXtpZighYSl7bGV0IG49TWF0aC5tYXgoMCxjKS8yLHI9ZT0+ZT09PWBsZWZ0YD8tbjplPT09YHJpZ2h0YD9uOjAsaT1yKG8pLXIocyk7cmV0dXJue3g6ZStNYXRoLmNvcyhsKSppLHk6dCtNYXRoLnNpbihsKSppfX1sZXQgdT1vPT09YGxlZnRgP24ueDpvPT09YHJpZ2h0YD9uLngrbi53Om4ueCtuLncvMixkPWk/LnRleHRWZXJ0aWNhbEFuY2hvcj8/KGk/LnRleHRCb2R5QXV0aG9yZWQ9PT0hMD9gdGA6YGN0cmApO3JldHVybiBkPT09YHRgP3t4OnUseTpuLnkrTWF0aC5taW4ocixuLmgpLzJ9OmQ9PT1gYmA/e3g6dSx5Om4ueStuLmgtTWF0aC5taW4ocixuLmgpLzJ9Ont4OnUseTpuLnkrbi5oLzJ9fXZhciB5bj10KCgoKT0+e3B0KCksbG4oKX0pKTtmdW5jdGlvbiBibihlKXtsZXQgdD1uZXcgU2V0O2ZvcihsZXQgbiBvZiBlLmxlZ2VuZEVudHJpZXM/P1tdKW4uZGVsZXRlZD09PSEwJiZ0LmFkZChuLmlkeCk7cmV0dXJuIHR9ZnVuY3Rpb24geG4oZSl7cmV0dXJuIGUubWFya2VyU3ltYm9sIT1udWxsfHxlLm1hcmtlclNpemUhPW51bGx8fGUubWFya2VyRmlsbCE9bnVsbHx8ZS5tYXJrZXJGaWxsUGFpbnQhPT12b2lkIDB8fGUubWFya2VyRmlsbFBhaW50QXV0aG9yZWQ9PT0hMHx8ZS5tYXJrZXJMaW5lIT1udWxsfHxlLm1hcmtlckxpbmVXaWR0aEVtdSE9bnVsbH1mdW5jdGlvbiBTbihlKXtyZXR1cm4gZSE9bnVsbCYmKGUubWFya2VyU3ltYm9sIT1udWxsfHxlLm1hcmtlclNpemUhPW51bGx8fGUubWFya2VyRmlsbCE9bnVsbHx8ZS5jb2xvciE9bnVsbHx8ZS5tYXJrZXJGaWxsUGFpbnQhPT12b2lkIDB8fGUubWFya2VyRmlsbFBhaW50QXV0aG9yZWQ9PT0hMHx8ZS5tYXJrZXJMaW5lIT1udWxsfHxlLm1hcmtlckxpbmVXaWR0aEVtdSE9bnVsbCl9ZnVuY3Rpb24gQ24oZSx0KXtyZXR1cm4gdD09bnVsbHx8IU51bWJlci5pc0Zpbml0ZSh0KXx8dD09PTB8fHQ8MCYmZS5zaG93TmVnYXRpdmVCdWJibGVzIT09ITA/bnVsbDpNYXRoLmFicyh0KX1mdW5jdGlvbiB3bihlLHQpe3JldHVybiBlLmJ1YmJsZTNEPz9lLmJ1YmJsZTNER3JvdXBEZWZhdWx0Pz8hMX1mdW5jdGlvbiBUbihlKXtyZXR1cm4gZSE9PWBub25lYCYmZSE9PWB4YCYmZSE9PWBwbHVzYH1mdW5jdGlvbiBFbihlLHQsbixyLGksYSl7bGV0IG89YT8uY2hhcnRUeXBlPz9lLmNoYXJ0VHlwZSxzPXQudmFsdWVzW3JdIT1udWxsO2lmKCFzJiYobj09PWBsaW5lYHx8bj09PWBzdGFja2VkTGluZWB8fG49PT1gc3RhY2tlZExpbmVQY3RgKSYmKHM9KG89PT1gbGluZWB8fG89PT1gc3RhY2tlZExpbmVgfHxvPT09YHN0YWNrZWRMaW5lUGN0YCkmJihvIT09YGxpbmVgfHxlLmRpc3BCbGFua3NBcz09PWB6ZXJvYCkpLCFzKXJldHVybiExO2lmKG49PT1gc2NhdHRlcmAmJmkpe2xldCBuPSh0LmNhdGVnb3JpZXM/P2UuY2F0ZWdvcmllcylbcl07aWYobj09bnVsbHx8IU51bWJlci5pc0Zpbml0ZShOdW1iZXIucGFyc2VGbG9hdChuKSkpcmV0dXJuITF9aWYobj09PWBzY2F0dGVyYCYmbz09PWBidWJibGVgKXtsZXQgbj10LmJ1YmJsZVNpemVzPy5bcl07aWYobj09bnVsbHx8IU51bWJlci5pc0Zpbml0ZShuKXx8bj09PTApcmV0dXJuITE7bGV0IGk9YT8uc2hvd05lZ2F0aXZlQnViYmxlcz8/ZS5zaG93TmVnYXRpdmVCdWJibGVzO3JldHVybiBuPDAmJmkhPT0hMD8hMTooYT8uYnViYmxlU2NhbGU/P2UuYnViYmxlU2NhbGU/PzEwMCk+MH1yZXR1cm4hMH1mdW5jdGlvbiBEbihlLHQsbixyLGksYSl7aWYobj09PWByYWRhcmB8fCF0LnNlcmllc0RhdGFMYWJlbHMmJiF0LmRhdGFMYWJlbE92ZXJyaWRlcz8ubGVuZ3RoKXJldHVybiAwO2xldCBvPW5ldyBNYXAoKHQuZGF0YUxhYmVsT3ZlcnJpZGVzPz9bXSkubWFwKGU9PltlLmlkeCxlXSkpLHM9MDtmb3IobGV0IGM9MDtjPHI7YysrKXtsZXQgcj1vLmdldChjKTt1bih0LnNlcmllc0RhdGFMYWJlbHMscil8fChyPy5zaG93TGVnZW5kS2V5Pz90LnNlcmllc0RhdGFMYWJlbHM/LnNob3dMZWdlbmRLZXk/PyExKT09PSEwJiZFbihlLHQsbixjLGksYSkmJnMrK31yZXR1cm4gc31mdW5jdGlvbiBPbihlKXtyZXR1cm4gZT09PWBsaW5lYHx8ZT09PWBzdGFja2VkTGluZWB8fGU9PT1gc3RhY2tlZExpbmVQY3RgfHxlPT09YGFyZWFgfHxlPT09YHN0YWNrZWRBcmVhYHx8ZT09PWBzdGFja2VkQXJlYVBjdGB8fGU9PT1gc3RvY2tgfHxlPT09YGNsdXN0ZXJlZEJhcmB8fGU9PT1gY2x1c3RlcmVkQmFySGB8fGU9PT1gc3RhY2tlZEJhcmB8fGU9PT1gc3RhY2tlZEJhckhgfHxlPT09YHN0YWNrZWRCYXJQY3RgfHxlPT09YHN0YWNrZWRCYXJIUGN0YH1mdW5jdGlvbiBrbihlKXtyZXR1cm4gZS5kYXRhUG9pbnRPdmVycmlkZXM/LnNvbWUoZT0+ZS5tYXJrZXJTeW1ib2whPW51bGwmJmUubWFya2VyU3ltYm9sIT09YG5vbmVgKT09PSEwfWZ1bmN0aW9uIEFuKGUsdCxuLHIpe3JldHVybiBlPT09YHJhZGFyYD9yPT09YGZpbGxlZGA6ZT09PWBzY2F0dGVyYCYmdCE9PWBidWJibGVgJiYobj09PWBsaW5lTm9NYXJrZXJgfHxuPT09YHNtb290aE5vTWFya2VyYCl9ZnVuY3Rpb24gam4oZSx0LG4scil7bGV0IGk9bi5zZXJpZXNUeXBlPz9lO3JldHVybiEoaT09PWBsaW5lYHx8aT09PWBzdGFja2VkTGluZWB8fGk9PT1gc3RhY2tlZExpbmVQY3RgfHxpPT09YHN0b2NrYHx8aT09PWByYWRhcmApJiZpIT09YHNjYXR0ZXJgJiZpIT09YGJ1YmJsZWB8fGk9PT1gcmFkYXJgJiZyPT09YGZpbGxlZGB8fGk9PT1gc2NhdHRlcmAmJih0PT09YGxpbmVOb01hcmtlcmB8fHQ9PT1gc21vb3RoTm9NYXJrZXJgKT8hMToobi5tYXJrZXJTeW1ib2w/PyhpPT09YHN0b2NrYD9gbm9uZWA6YGNpcmNsZWApKSE9PWBub25lYCYmbi5zaG93TWFya2VyIT09ITF9ZnVuY3Rpb24gTW4oZSx0LG4scil7cmV0dXJuIHQ/Lm1hcmtlclN5bWJvbD09bnVsbD8hcnx8ZS5tYXJrZXJTeW1ib2w9PT1gbm9uZWA/YG5vbmVgOmUubWFya2VyU3ltYm9sPz9uOnQubWFya2VyU3ltYm9sfWZ1bmN0aW9uIE5uKGUsdCxuKXtpZih0Py5tYXJrZXJGaWxsUGFpbnQhPT12b2lkIDApcmV0dXJuIHQubWFya2VyRmlsbFBhaW50O2lmKCEodD8ubWFya2VyRmlsbCE9bnVsbHx8dD8uY29sb3IhPW51bGx8fHQ/Lm1hcmtlckZpbGxQYWludEF1dGhvcmVkPT09ITApJiZlLmRhdGFQb2ludENvbG9ycz8uW25dPT1udWxsJiZlLm1hcmtlckZpbGxQYWludCE9PXZvaWQgMClyZXR1cm4gZS5tYXJrZXJGaWxsUGFpbnR9ZnVuY3Rpb24gUG4oZSx0LG4scil7cmV0dXJuIHQ/Lm1hcmtlckZpbGw9PW51bGw/dD8uY29sb3I9PW51bGw/ZS5kYXRhUG9pbnRDb2xvcnM/LltuXT8/KHQ/Lm1hcmtlckZpbGxQYWludEF1dGhvcmVkPT09ITA/YDAwMDAwMDAwYDplLm1hcmtlckZpbGw9PW51bGw/ZS5tYXJrZXJGaWxsUGFpbnRBdXRob3JlZD09PSEwP2AwMDAwMDAwMGA6cjplLm1hcmtlckZpbGwpOnQuY29sb3I6dC5tYXJrZXJGaWxsfWZ1bmN0aW9uIEZuKGUpe3JldHVybiBlLm1hcmtlckZpbGxQYWludH1mdW5jdGlvbiBJbihlLHQpe3JldHVybiBlLm1hcmtlckZpbGw9PW51bGw/ZS5tYXJrZXJGaWxsUGFpbnRBdXRob3JlZD09PSEwP2AwMDAwMDAwMGA6dDplLm1hcmtlckZpbGx9ZnVuY3Rpb24gTG4oZSl7cmV0dXJuIGU/LmZpbGxUeXBlPT09YGdyYWRpZW50YD9lLnN0b3BzLmxlbmd0aDplPT1udWxsPzA6MX12YXIgUm49dCgoKCk9Pnt5bigpfSkpO2Z1bmN0aW9uIHpuKGUpe3JldHVybiBLbi5oYXMoZSl9ZnVuY3Rpb24gQm4oZSl7bGV0IHQ9MCxuPWU9PiFOdW1iZXIuaXNTYWZlSW50ZWdlcihlKXx8ZTwwfHxlPjFlNC10PyExOih0Kz1lLCEwKSxyPShlLG4pPT4hTnVtYmVyLmlzU2FmZUludGVnZXIoZSl8fGU8MHx8IU51bWJlci5pc1NhZmVJbnRlZ2VyKG4pfHxuPDB8fGUhPT0wJiZuPk1hdGguZmxvb3IoKDFlNC10KS9lKT8hMToodCs9ZSpuLCEwKTtpZighbihlLmxlZ2VuZEVudHJpZXM/Lmxlbmd0aD8/MCl8fCFuKGUucGxvdEdyb3Vwcz8ubGVuZ3RoPz8wKSlyZXR1cm4gSG4rMTtpZihlLnBsb3RHcm91cHMhPW51bGwpe2xldCB0PTA7Zm9yKGxldCBuIG9mIGUucGxvdEdyb3Vwcyl7aWYoIU51bWJlci5pc1NhZmVJbnRlZ2VyKG4uc2VyaWVzU3RhcnQpfHxuLnNlcmllc1N0YXJ0PDB8fCFOdW1iZXIuaXNTYWZlSW50ZWdlcihuLnNlcmllc0NvdW50KXx8bi5zZXJpZXNDb3VudDwwfHxuLnNlcmllc1N0YXJ0IT09dHx8bi5zZXJpZXNDb3VudD5lLnNlcmllcy5sZW5ndGgtdClyZXR1cm4gSG4rMTt0Kz1uLnNlcmllc0NvdW50fWlmKHQhPT1lLnNlcmllcy5sZW5ndGgpcmV0dXJuIEhuKzF9Zm9yKGxldCB0IG9mIGUuc2VyaWVzKXtsZXQgaT1NYXRoLm1heCgxLGUuY2F0ZWdvcmllcy5sZW5ndGgsdC52YWx1ZXMubGVuZ3RoLHQuY2F0ZWdvcmllcz8ubGVuZ3RoPz8wLHQuYnViYmxlU2l6ZXM/Lmxlbmd0aD8/MCx0LmRhdGFQb2ludE92ZXJyaWRlcz8ubGVuZ3RoPz8wLHQuZGF0YUxhYmVsT3ZlcnJpZGVzPy5sZW5ndGg/PzApO2lmKCFuKGkpfHwhcih0LnRyZW5kTGluZXM/Lmxlbmd0aD8/MCxNYXRoLm1heCgxLHQudmFsdWVzLmxlbmd0aCkpfHwhbih0LmVyckJhcnM/Lmxlbmd0aD8/MCkpcmV0dXJuIEhuKzE7Zm9yKGxldCBlIG9mIHQuZXJyQmFycz8/W10paWYoIW4oTWF0aC5tYXgoaSxlLnBsdXMubGVuZ3RoLGUubWludXMubGVuZ3RoKSkpcmV0dXJuIEhuKzF9aWYoIW4oZS5jaGFydGV4U3VuYnVyc3Q/LnJvd3MubGVuZ3RoPz8wKXx8IW4oZS5jaGFydGV4VHJlZW1hcD8ucm93cy5sZW5ndGg/PzApfHwhbihlLmNoYXJ0ZXhSZWdpb25NYXA/LnJvd3MubGVuZ3RoPz8wKXx8IW4oZS5jaGFydGV4Qm94Py5jYXRlZ29yaWVzLmxlbmd0aD8/MCl8fCFuKGUuY2hhcnRleEJveD8uc2VyaWVzLmxlbmd0aD8/MCkpcmV0dXJuIEhuKzE7Zm9yKGxldCB0IG9mIGUuY2hhcnRleEJveD8uc2VyaWVzPz9bXSlmb3IobGV0IGUgb2YgdC52YWx1ZXNCeUNhdGVnb3J5KWlmKCFuKGUubGVuZ3RoKSlyZXR1cm4gSG4rMTtyZXR1cm4gbihlLm9mUGllPy5jdXN0b21TcGxpdEluZGljZXM/Lmxlbmd0aD8/MCk/dDpIbisxfWZ1bmN0aW9uIFZuKGUpe2lmKCF6bihlLmNoYXJ0VHlwZSkpcmV0dXJuIG51bGw7bGV0IHQ9MDtmb3IobGV0IG4gb2YgZS5zZXJpZXMpe2xldCByPTA7Zm9yKGxldCBlIG9mIG4uZXJyQmFycz8/W10pcj1NYXRoLm1heChyLGUucGx1cy5sZW5ndGgsZS5taW51cy5sZW5ndGgpO2xldCBpPU1hdGgubWF4KDEsZS5jYXRlZ29yaWVzLmxlbmd0aCxuLmNhdGVnb3JpZXM/Lmxlbmd0aD8/MCxuLnZhbHVlcy5sZW5ndGgsbi5idWJibGVTaXplcz8ubGVuZ3RoPz8wLG4uZGF0YVBvaW50T3ZlcnJpZGVzPy5sZW5ndGg/PzAsbi5kYXRhTGFiZWxPdmVycmlkZXM/Lmxlbmd0aD8/MCxuLnRyZW5kTGluZXM/Lmxlbmd0aD8/MCxyKTtpZighTnVtYmVyLmlzU2FmZUludGVnZXIoaSl8fGk+MWU0LXQpcmV0dXJuIEhuKzE7dCs9aX1yZXR1cm4gdH12YXIgSG4sVW4sV24sR24sS24scW49dCgoKCk9PntIbj0xZTQsVW49NDA5NixXbj0xMDQ4NTc2LEduPTQwOTYsS249bmV3IFNldChbYGNsdXN0ZXJlZEJhcmAsYGNsdXN0ZXJlZEJhckhgLGBzdGFja2VkQmFyYCxgc3RhY2tlZEJhckhgLGBzdGFja2VkQmFyUGN0YCxgc3RhY2tlZEJhckhQY3RgLGBjbHVzdGVyZWRDb2x1bW5gLGBsaW5lYCxgc3RhY2tlZExpbmVgLGBzdGFja2VkTGluZVBjdGAsYGFyZWFgLGBzdGFja2VkQXJlYWAsYHN0YWNrZWRBcmVhUGN0YCxgcGllYCxgZG91Z2hudXRgLGByYWRhcmAsYHNjYXR0ZXJgLGBidWJibGVgLGBzdG9ja2AsYHN1cmZhY2VgXSl9KSk7ZnVuY3Rpb24gSm4oZSx0KXtyZXR1cm4gdD09PWBiYXJgfHx0PT09YGJhcjNEYD9lLmluY2x1ZGVzKGBCYXJgKTp0PT09YGxpbmVgfHx0PT09YGxpbmUzRGA/ZS5pbmNsdWRlcyhgTGluZWApOnQ9PT1gYXJlYWB8fHQ9PT1gYXJlYTNEYD9lLmluY2x1ZGVzKGBBcmVhYCk6dD09PWBwaWVgfHx0PT09YHBpZTNEYD9lPT09YHBpZWA6dD09PWBzdXJmYWNlYHx8dD09PWBzdXJmYWNlM0RgP2U9PT1gc3VyZmFjZWB8fGU9PT1gc3VyZmFjZTNEYDplPT09dH1mdW5jdGlvbiBZbihlKXtpZihlLnBsb3RHcm91cHM9PW51bGwpcmV0dXJuITA7bGV0IHQ9MDtmb3IobGV0IG4gb2YgZS5wbG90R3JvdXBzKXtpZighTnVtYmVyLmlzU2FmZUludGVnZXIobi5zZXJpZXNTdGFydCl8fG4uc2VyaWVzU3RhcnQhPT10fHwhTnVtYmVyLmlzU2FmZUludGVnZXIobi5zZXJpZXNDb3VudCl8fG4uc2VyaWVzQ291bnQ8MHx8bi5zZXJpZXNDb3VudD5lLnNlcmllcy5sZW5ndGgtdClyZXR1cm4hMTt0Kz1uLnNlcmllc0NvdW50fXJldHVybiB0PT09ZS5zZXJpZXMubGVuZ3RofWZ1bmN0aW9uIFhuKGUpe2xldCB0PUFycmF5KGUuc2VyaWVzLmxlbmd0aCk7Zm9yKGxldCBuIG9mIGUucGxvdEdyb3Vwcz8/W10pe2xldCByPU1hdGgubWluKGUuc2VyaWVzLmxlbmd0aCxuLnNlcmllc1N0YXJ0K24uc2VyaWVzQ291bnQpO2ZvcihsZXQgZT1uLnNlcmllc1N0YXJ0O2U8cjtlKyspdFtlXT1ufXJldHVybiB0fWZ1bmN0aW9uIFpuKGUsdCl7cmV0dXJuIHQ/dC5raW5kPT09YGJ1YmJsZWA/YGJ1YmJsZWA6dC5raW5kPT09YGxpbmVgP3QuZ3JvdXBpbmc9PT1gcGVyY2VudFN0YWNrZWRgP2BzdGFja2VkTGluZVBjdGA6dC5ncm91cGluZz09PWBzdGFja2VkYD9gc3RhY2tlZExpbmVgOmBsaW5lYDp0LmtpbmQ9PT1gYXJlYWA/dC5ncm91cGluZz09PWBwZXJjZW50U3RhY2tlZGA/YHN0YWNrZWRBcmVhUGN0YDp0Lmdyb3VwaW5nPT09YHN0YWNrZWRgP2BzdGFja2VkQXJlYWA6YGFyZWFgOnQua2luZDplfWZ1bmN0aW9uIFFuKGUpe2lmKGUucGxvdEdyb3Vwcz09bnVsbHx8ZS5wbG90R3JvdXBzLmxlbmd0aDw9MSlyZXR1cm5gbGVnYWN5YDtpZighWW4oZSkpcmV0dXJuYHVuc3VwcG9ydGVkYDtsZXQgdD1lLnBsb3RHcm91cHMuZmlsdGVyKGU9PmUuc2VyaWVzQ291bnQ+MCk7aWYodC5sZW5ndGg9PT0wKXJldHVybmBsZWdhY3lgO2lmKHQubGVuZ3RoPT09MSlyZXR1cm4gSm4oZS5jaGFydFR5cGUsdFswXS5raW5kKT9gbGVnYWN5YDpgdW5zdXBwb3J0ZWRgO2lmKHQuc29tZShlPT5lLmNhdGVnb3J5QXhpcz09PWBub25lYHx8ZS52YWx1ZUF4aXM9PT1gbm9uZWApfHx0LnNvbWUodD0+dC5jYXRlZ29yeUF4aXM9PT1gc2Vjb25kYXJ5YCYmZS5zZWNvbmRhcnlDYXRBeGlzPT1udWxsfHx0LnZhbHVlQXhpcz09PWBzZWNvbmRhcnlgJiZlLnNlY29uZGFyeVZhbEF4aXM9PW51bGwpKXJldHVybmB1bnN1cHBvcnRlZGA7bGV0IG49bmV3IFNldCh0Lm1hcChlPT5lLmtpbmQpKTtpZih0LnNvbWUoZT0+JG4uaGFzKGUua2luZCkpKXJldHVybmB1bnN1cHBvcnRlZGA7aWYodC5sZW5ndGg9PT0yJiZ0WzBdLmtpbmQ9PT1gYmFyYCYmdFsxXS5raW5kPT09YHNjYXR0ZXJgKXtsZXRbbixyXT10LGk9ZS5zZXJpZXMuc2xpY2Uobi5zZXJpZXNTdGFydCxuLnNlcmllc1N0YXJ0K24uc2VyaWVzQ291bnQpLGE9ZS5zZXJpZXMuc2xpY2Uoci5zZXJpZXNTdGFydCxyLnNlcmllc1N0YXJ0K3Iuc2VyaWVzQ291bnQpO3JldHVybiBuLmNhdGVnb3J5QXhpcz09PWBwcmltYXJ5YCYmKG4udmFsdWVBeGlzPT09YHByaW1hcnlgfHxuLnZhbHVlQXhpcz09PWB1bnJlc29sdmVkYCkmJihyLmNhdGVnb3J5QXhpcz09PWBzZWNvbmRhcnlgfHxyLmNhdGVnb3J5QXhpcz09PWB1bnJlc29sdmVkYCkmJnIudmFsdWVBeGlzPT09YHNlY29uZGFyeWAmJmUuc2Vjb25kYXJ5Q2F0QXhpcyE9bnVsbCYmZS5zZWNvbmRhcnlWYWxBeGlzIT1udWxsJiZpLmV2ZXJ5KGU9PmUudXNlU2Vjb25kYXJ5QXhpcyE9PSEwKSYmYS5ldmVyeShlPT5lLnVzZVNlY29uZGFyeUF4aXM9PT0hMCk/YGJhci1jb21ib2A6YHVuc3VwcG9ydGVkYH1pZih0LnNvbWUoZT0+ZS5jYXRlZ29yeUF4aXM9PT1gdW5yZXNvbHZlZGB8fGUudmFsdWVBeGlzPT09YHVucmVzb2x2ZWRgfHxlLnNlcmllc0F4aXM9PT1gdW5yZXNvbHZlZGApKXJldHVybmB1bnN1cHBvcnRlZGA7aWYobi5zaXplPT09MSl7bGV0IG49dFswXS5raW5kO2lmKG49PT1gbGluZWB8fG49PT1gYXJlYWApcmV0dXJuIHQuc29tZShlPT5lLmNhdGVnb3J5QXhpcyE9PWBwcmltYXJ5YCk/YHVuc3VwcG9ydGVkYDpuPT09YGxpbmVgP2BsaW5lLWdyb3Vwc2A6YGFyZWEtZ3JvdXBzYDtpZihuPT09YHNjYXR0ZXJgfHxuPT09YGJ1YmJsZWApcmV0dXJuYHNjYXR0ZXItYnViYmxlYDtpZihuPT09YGJhcmApe2xldCBuPWUuY2hhcnRUeXBlLmVuZHNXaXRoKGBIYCk/YGJhcmA6YGNvbGA7cmV0dXJuIG5ldyBTZXQodC5tYXAoZT0+ZS5iYXJEaXJlY3Rpb24/P24pKS5zaXplPjEmJih0Lmxlbmd0aCE9PTJ8fHQuc29tZShlPT5lLmNhdGVnb3J5QXhpcyE9PWBwcmltYXJ5YHx8ZS52YWx1ZUF4aXMhPT1gcHJpbWFyeWApKT9gdW5zdXBwb3J0ZWRgOmBiYXItY29tYm9gfXJldHVybmB1bnN1cHBvcnRlZGB9aWYodC5sZW5ndGg9PT0yJiZuLmhhcyhgYmFyYCkmJm4uaGFzKGBhcmVhYCkpcmV0dXJuIHQuZmluZChlPT5lLmtpbmQ9PT1gbGluZWB8fGUua2luZD09PWBhcmVhYCk/LmNhdGVnb3J5QXhpcz09PWBwcmltYXJ5YD9gYmFyLWNvbWJvYDpgdW5zdXBwb3J0ZWRgO2lmKHQubGVuZ3RoPT09MiYmdFswXS5raW5kPT09YGFyZWFgJiZ0WzFdLmtpbmQ9PT1gbGluZWAmJnQuZXZlcnkoZT0+ZS5jYXRlZ29yeUF4aXM9PT1gcHJpbWFyeWAmJmUudmFsdWVBeGlzPT09YHByaW1hcnlgKSlyZXR1cm5gYXJlYS1ncm91cHNgO2lmKG4uc2l6ZT09PTImJm4uaGFzKGBiYXJgKSYmbi5oYXMoYGxpbmVgKSl7bGV0IG49dC5maWx0ZXIoZT0+ZS5raW5kPT09YGJhcmApLHI9dC5maWx0ZXIoZT0+ZS5raW5kPT09YGxpbmVgKSxpPWUuY2hhcnRUeXBlLmVuZHNXaXRoKGBIYCk/YGJhcmA6YGNvbGAsYT1uZXcgU2V0KG4ubWFwKGU9PmUuYmFyRGlyZWN0aW9uPz9pKSk7cmV0dXJuIG4ubGVuZ3RoPD0yJiZyLmxlbmd0aD09PTEmJnQubGVuZ3RoPD0zJiZhLnNpemU9PT0xJiZ0LmV2ZXJ5KGU9PmUuY2F0ZWdvcnlBeGlzPT09YHByaW1hcnlgKT9gYmFyLWNvbWJvYDpgdW5zdXBwb3J0ZWRgfXJldHVyblsuLi5uXS5ldmVyeShlPT5lPT09YHNjYXR0ZXJgfHxlPT09YGJ1YmJsZWApP3QubGVuZ3RoPjI/YHVuc3VwcG9ydGVkYDpgc2NhdHRlci1idWJibGVgOnQubGVuZ3RoPT09MiYmdFswXS5raW5kPT09YHN0b2NrYCYmdFsxXS5raW5kPT09YGxpbmVgJiYodFswXS5zZXJpZXNDb3VudD09PTN8fHRbMF0uc2VyaWVzQ291bnQ9PT00KSYmKHRbMV0uZ3JvdXBpbmc9PW51bGx8fHRbMV0uZ3JvdXBpbmc9PT1gc3RhbmRhcmRgKSYmdC5ldmVyeShlPT5lLmNhdGVnb3J5QXhpcz09PWBwcmltYXJ5YCYmZS52YWx1ZUF4aXM9PT1gcHJpbWFyeWApP2BzdG9jay1saW5lYDpgdW5zdXBwb3J0ZWRgfXZhciAkbixlcj10KCgoKT0+eyRuPW5ldyBTZXQoW2BhcmVhM0RgLGBsaW5lM0RgLGBwaWUzRGAsYGJhcjNEYCxgc3VyZmFjZTNEYF0pfSkpO2Z1bmN0aW9uIHRyKGUsdCxuKXtsZXQgcj10PT09YGZpbGxgP2U/LmZpbGxDb2xvcnM6ZT8ubGluZUNvbG9ycztyZXR1cm4gcj8ubGVuZ3RoP3JbKCh0PT09YGZpbGxgP2U/LmZpbGxDb2xvckluZGV4OmU/LmxpbmVDb2xvckluZGV4KT8/biklci5sZW5ndGhdPz9udWxsOm51bGx9ZnVuY3Rpb24gbnIoZSx0KXtsZXQgbj1lPy5maWxsUGFpbnRzO3JldHVybiBuPy5sZW5ndGg/blsoZT8uZmlsbENvbG9ySW5kZXg/P3QpJW4ubGVuZ3RoXT8/bnVsbDpudWxsfWZ1bmN0aW9uIHJyKGUsdCl7bGV0IG49ZT8ubGluZVBhaW50cztyZXR1cm4gbj8ubGVuZ3RoP25bKGU/LmxpbmVDb2xvckluZGV4Pz90KSVuLmxlbmd0aF0/P251bGw6bnVsbH1mdW5jdGlvbiBpcihlLHQpe2lmKCFlKXJldHVybjtpZihlLmZpbGxIaWRkZW4pcmV0dXJuIGUuZmlsbE5vU3R5bGU/dm9pZCAwOm51bGw7bGV0IG49bnIoZSx0KTtpZihuKXJldHVybiBuO2xldCByPXRyKGUsYGZpbGxgLHQpO3JldHVybiByP3tmaWxsVHlwZTpgc29saWRgLGNvbG9yOnJ9OmUuZmlsbFBhaW50QXV0aG9yZWQ9PT0hMD9udWxsOnZvaWQgMH1mdW5jdGlvbiBhcihlLHQpe2lmKCFlKXJldHVybjtpZihlLmxpbmVIaWRkZW4pcmV0dXJuIGUubGluZU5vU3R5bGU/dm9pZCAwOm51bGw7bGV0IG49cnIoZSx0KTtpZihuKXJldHVybiBuO2xldCByPXRyKGUsYGxpbmVgLHQpO3JldHVybiByP3tmaWxsVHlwZTpgc29saWRgLGNvbG9yOnJ9OmUubGluZVBhaW50QXV0aG9yZWQ9PT0hMD9udWxsOnZvaWQgMH1mdW5jdGlvbiBvcihlLHQsbil7bGV0IHI9dD8uc3R5bGUsaT1lLmNoYXJ0U3R5bGVSb2xlcz8uW25dLGE7YT10Py5maWxsSGlkZGVuPT09ITA/bnVsbDp0Py5maWxsQ29sb3I/e2ZpbGxUeXBlOmBzb2xpZGAsY29sb3I6dC5maWxsQ29sb3J9OmlyKHIsMCksYT09PXZvaWQgMCYmKGE9aXIoaSwwKSk7bGV0IG87bz10Py5saW5lSGlkZGVuPT09ITA/bnVsbDp0Py5saW5lQ29sb3I/e2ZpbGxUeXBlOmBzb2xpZGAsY29sb3I6dC5saW5lQ29sb3J9OmFyKHIsMCksbz09PXZvaWQgMCYmKG89YXIoaSwwKSk7bGV0IHM9aT8ubGluZU5vU3R5bGU9PT0hMD92b2lkIDA6aTtyZXR1cm57ZmlsbDphLGxpbmU6byxsaW5lV2lkdGhFbXU6dD8ubGluZVdpZHRoRW11Pz9yPy5saW5lV2lkdGhFbXU/P3M/LmxpbmVXaWR0aEVtdSxsaW5lRGFzaDp0Py5saW5lRGFzaD8/cj8ubGluZURhc2g/P3M/LmxpbmVEYXNoLGxpbmVDdXN0b21EYXNoOnI/LmxpbmVDdXN0b21EYXNoPz9zPy5saW5lQ3VzdG9tRGFzaCxsaW5lQ2FwOnI/LmxpbmVDYXA/P3M/LmxpbmVDYXAsbGluZUpvaW46cj8ubGluZUpvaW4/P3M/LmxpbmVKb2lufX12YXIgc3I9dCgoKCk9Pnt9KSk7ZnVuY3Rpb24gY3IoZSx0KXtyZXR1cm4hTnVtYmVyLmlzU2FmZUludGVnZXIodCl8fHQ8MD8hMTplLnNsYWJGYWNlcz90PT09MD9lLnNsYWJGYWNlcy5mcm9udDp0PT09MXx8dD49Nj8hMTp0JTI9PTA/ZS5zbGFiRmFjZXMuZW5kOmUuc2xhYkZhY2VzLnNpZGVzOnQ9PT0wfWZ1bmN0aW9uIGxyKGUsdCl7cmV0dXJuIGUubW9kZSE9PWBzdGFja2AmJmUubW9kZSE9PWBzdGFja1NjYWxlYHx8IWNyKGUsdCk/ITE6IWUuc2xhYkZhY2VzfHx0PT09MHx8dCUyPT0xfWZ1bmN0aW9uIHVyKGUsdCl7cmV0dXJuIGNyKGUsdCk/ZHIoZSx0KT9lLnJlcGV0aXRpb25zOjE6MH1mdW5jdGlvbiBkcihlLHQpe3JldHVybiBlLm1vZGU9PT1gc3RhY2tTY2FsZWAmJmxyKGUsdCl9ZnVuY3Rpb24gZnIoZSl7bGV0IHQ9MDtmb3IobGV0IG49MDtuPDY7bisrKWlmKHQrPXVyKGUsbiksdD40MDk2KXJldHVybiBudWxsO3JldHVybiBlfWZ1bmN0aW9uIHByKGUpe3JldHVybiBlPT1udWxsfHxbZS5sLGUudCxlLnIsZS5iXS5ldmVyeShlPT4oZT8/MCk9PT0wKX1mdW5jdGlvbiBtcihlKXtpZighZSlyZXR1cm4hMDtsZXQgdD1lLmw/PzAsbj1lLnQ/PzAscj1lLnI/PzAsaT1lLmI/PzAsYT1bdCxuLHIsaV0sbz0xLXIscz0xLWk7cmV0dXJuIGEuZXZlcnkoTnVtYmVyLmlzRmluaXRlKSYmbz50JiZzPm4mJk1hdGgubWluKDEsbyk+TWF0aC5tYXgoMCx0KSYmTWF0aC5taW4oMSxzKT5NYXRoLm1heCgwLG4pfWZ1bmN0aW9uIGhyKGUsdCxuLHIpe2lmKGUudGlsZSE9bnVsbD09KGUuc3RyZXRjaD09PSEwKXx8IW1yKGUuc3JjUmVjdCl8fCFtcihlLmZpbGxSZWN0KXx8ZS5yb3RXaXRoU2hhcGU9PT0hMXx8ZS5hbHBoYSE9bnVsbCYmKCFOdW1iZXIuaXNGaW5pdGUoZS5hbHBoYSl8fGUuYWxwaGE8MHx8ZS5hbHBoYT4xKSlyZXR1cm4gbnVsbDtsZXQgaT10Py5waWN0dXJlT3B0aW9ucztpZihpPy5waWN0dXJlRm9ybWF0QXV0aG9yZWQ9PT0hMCYmaS5waWN0dXJlRm9ybWF0PT1udWxsfHxpPy5waWN0dXJlU3RhY2tVbml0QXV0aG9yZWQ9PT0hMCYmaS5waWN0dXJlU3RhY2tVbml0PT1udWxsKXJldHVybiBudWxsO2xldCBhPWk/LnBpY3R1cmVGb3JtYXQ/P2BzdHJldGNoYDtpZigoIXByKGUuc3JjUmVjdCl8fCFwcihlLmZpbGxSZWN0KSkmJmEhPT1gc3RyZXRjaGApcmV0dXJuIG51bGw7bGV0IG89dD8udGhpY2tuZXNzUGVyY2VudD8/MDtpZighTnVtYmVyLmlzRmluaXRlKG8pfHxvPDApcmV0dXJuIG51bGw7bGV0IHM9bz09PTA/dm9pZCAwOntmcm9udDppPy5hcHBseVRvRnJvbnQhPT0hMSxzaWRlczppPy5hcHBseVRvU2lkZXMhPT0hMSxlbmQ6aT8uYXBwbHlUb0VuZCE9PSExfTtpZihzJiYhT2JqZWN0LnZhbHVlcyhzKS5zb21lKEJvb2xlYW4pfHwhcyYmKG49PT1gYmFja1dhbGxgJiZpPy5hcHBseVRvRnJvbnQ9PT0hMXx8KG49PT1gZmxvb3JgfHxuPT09YHNpZGVXYWxsYCkmJmk/LmFwcGx5VG9TaWRlcz09PSExKXx8KGk/LnBpY3R1cmVTdGFja1VuaXRBdXRob3JlZD09PSEwfHxpPy5waWN0dXJlU3RhY2tVbml0IT1udWxsKSYmYSE9PWBzdGFja1NjYWxlYClyZXR1cm4gbnVsbDtpZihlLnRpbGUpcmV0dXJuIGEhPT1gc3RyZXRjaGB8fCFwcihlLmZpbGxSZWN0KT9udWxsOmZyKHttb2RlOmB0aWxlYCxyZXBldGl0aW9uczoxLHNsYWJGYWNlczpzfSk7aWYoYT09PWBzdHJldGNoYClyZXR1cm4gZnIoe21vZGU6YHN0cmV0Y2hgLHJlcGV0aXRpb25zOjEsc2xhYkZhY2VzOnN9KTtpZihhPT09YHN0YWNrYClyZXR1cm4gZnIoe21vZGU6YHN0YWNrYCxyZXBldGl0aW9uczoxLHNsYWJGYWNlczpzfSk7aWYoYSE9PWBzdGFja1NjYWxlYClyZXR1cm4gbnVsbDtsZXQgYz1pPy5waWN0dXJlU3RhY2tVbml0O2lmKCEoYyE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGMpJiZjPjApKXJldHVybiBudWxsO2lmKG49PT1gZmxvb3JgKXJldHVybiBmcih7bW9kZTpgc3RyZXRjaGAscmVwZXRpdGlvbnM6MSxzbGFiRmFjZXM6c30pO2lmKHI9PW51bGwpcmV0dXJuIGZyKHttb2RlOmBzdGFja1NjYWxlYCxyZXBldGl0aW9uczoxLHN0YWNrVW5pdDpjLHNsYWJGYWNlczpzfSk7aWYoIShOdW1iZXIuaXNGaW5pdGUocikmJnI+MCkpcmV0dXJuIG51bGw7bGV0IGw9TWF0aC5jZWlsKHIvYyk7cmV0dXJuIU51bWJlci5pc1NhZmVJbnRlZ2VyKGwpfHxsPDF8fGw+NDA5Nj9udWxsOmZyKHttb2RlOmBzdGFja1NjYWxlYCxyZXBldGl0aW9uczpsLHN0YWNrVW5pdDpjLHNsYWJGYWNlczpzfSl9dmFyIGdyPXQoKCgpPT57cW4oKX0pKTtmdW5jdGlvbiBfcihlKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoW2UuaW1hZ2VQYXRoLGUuc3ZnSW1hZ2VQYXRoPz9udWxsLGUuZHVvdG9uZT8uY2xyMT8/bnVsbCxlLmR1b3RvbmU/LmNscjI/P251bGxdKX1mdW5jdGlvbiB2cihlLHQpe2xldCBuPUlyO0lyPWU7dHJ5e3JldHVybiB0KCl9ZmluYWxseXtJcj1ufX1mdW5jdGlvbiB5cihlLHQsbixyLGkpe2xldCBhPWU7cmV0dXJue3g6YS5lbmRzV2l0aChgcmApfHxhPT09YHJgP3QtcjphPT09YHRgfHxhPT09YGN0cmB8fGE9PT1gYmA/KHQtcikvMjowLHk6YS5zdGFydHNXaXRoKGBiYCl8fGE9PT1gYmA/bi1pOmE9PT1gbGB8fGE9PT1gY3RyYHx8YT09PWByYD8obi1pKS8yOjB9fWZ1bmN0aW9uIGJyKGUpe3JldHVybiBlLnRpbGUhPW51bGwhPShlLnN0cmV0Y2g9PT0hMCkmJnR0KGUuc3JjUmVjdCl9ZnVuY3Rpb24geHIoZSl7bGV0IHQ9ZS50aWxlO2lmKCF0KXJldHVybiBudWxsO2xldHthbGduOm4sdHg6cix0eTppLHN4OmEsc3k6b309dCxzPXQuZmxpcD8/YG5vbmVgLGM9ZS5kcGk7cmV0dXJuIW58fCFMci5oYXMobil8fCFSci5oYXMocyl8fCFOdW1iZXIuaXNGaW5pdGUocil8fCFOdW1iZXIuaXNGaW5pdGUoaSl8fCEoYyE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGMpJiZjPjApfHwhKE51bWJlci5pc0Zpbml0ZShhKSYmYT4wKXx8IShOdW1iZXIuaXNGaW5pdGUobykmJm8+MCk/bnVsbDp7YWxpZ25tZW50Om4sdHg6cix0eTppLHN4OmEsc3k6byxkcGk6YyxmbGlwWDpzPT09YHhgfHxzPT09YHh5YCxmbGlwWTpzPT09YHlgfHxzPT09YHh5YH19ZnVuY3Rpb24gU3IoZSl7cmV0dXJuIGJyKGUpP0lyPy4oZSk/P251bGw6bnVsbH1mdW5jdGlvbiBDcihlLHQsbj11dCl7bGV0IHI9eHIoZSk7aWYoIXIpcmV0dXJuIG51bGw7bGV0IGk9bnQodCk7aWYoIShOdW1iZXIuaXNGaW5pdGUoaS53KSYmaS53PjApfHwhKE51bWJlci5pc0Zpbml0ZShpLmgpJiZpLmg+MCkpcmV0dXJuIG51bGw7bGV0IGE9OTYvci5kcGkqKG4vdXQpLG89aS53KnIuc3gqYSxzPWkuaCpyLnN5KmE7cmV0dXJuIShvPjApfHwhKHM+MCk/bnVsbDp7YWxpZ25tZW50OnIuYWxpZ25tZW50LHRpbGVXOm8sdGlsZUg6cyxvZmZzZXRYOnIudHgvY3QqbixvZmZzZXRZOnIudHkvY3QqbixmbGlwWDpyLmZsaXBYLGZsaXBZOnIuZmxpcFl9fWZ1bmN0aW9uIHdyKGUsdCxuKXtsZXQgcj15cihlLmFsaWdubWVudCx0LG4sZS50aWxlVyxlLnRpbGVIKTtyZXR1cm57eDpyLngrZS5vZmZzZXRYLHk6ci55K2Uub2Zmc2V0WX19ZnVuY3Rpb24gVHIoZSx0LG4scixpKXtsZXQgYT1DcihlLHQsaSk7aWYoIWEpcmV0dXJuIG51bGw7bGV0e3RpbGVXOm8sdGlsZUg6c309YSxjPU1hdGguY2VpbChuL28pKzIsbD1NYXRoLmNlaWwoci9zKSsyLHU9YypsO3JldHVybiBOdW1iZXIuaXNTYWZlSW50ZWdlcih1KT97Li4uYSxjb2x1bW5zOmMscm93czpsLHJlcGV0aXRpb25zOnV9Om51bGx9ZnVuY3Rpb24gRXIoZSx0LG4scixpPXV0KXtpZighKG4+MCl8fCEocj4wKXx8IWJyKGUpKXJldHVybiAwO2xldCBhPXQ/LihlKTtpZighYSlyZXR1cm4gMDtpZighZS50aWxlKXJldHVybiAxO2xldCBvPVRyKGUsYSxuLHIsaSk7cmV0dXJuIG8/TWF0aC5taW4oby5yZXBldGl0aW9ucyxHbik6MH1mdW5jdGlvbiBEcihlKXtyZXR1cm4gTnVtYmVyLmlzRmluaXRlKGUpJiZlPjB9ZnVuY3Rpb24gT3IoZSx0KXtpZighRHIodC53aWR0aFB0KXx8IURyKHQuaGVpZ2h0UHQpfHwhRHIoZS5tZXRhZmlsZVdpZHRoRmFjdG9yKXx8IURyKGUubWV0YWZpbGVIZWlnaHRGYWN0b3IpfHwhTnVtYmVyLmlzRmluaXRlKGUudGFyZ2V0V2lkdGhGYWN0b3IpfHxlLnRhcmdldFdpZHRoRmFjdG9yPDB8fCFOdW1iZXIuaXNGaW5pdGUoZS50YXJnZXRIZWlnaHRGYWN0b3IpfHxlLnRhcmdldEhlaWdodEZhY3RvcjwwKXJldHVybiBudWxsO2xldCBuPXQud2lkdGhQdCplLm1ldGFmaWxlV2lkdGhGYWN0b3Iscj10LmhlaWdodFB0KmUubWV0YWZpbGVIZWlnaHRGYWN0b3I7aWYoIURyKG4pfHwhRHIocikpcmV0dXJuIG51bGw7bGV0IGk9dC50YXJnZXRXaWR0aFB4LGE9dC50YXJnZXRIZWlnaHRQeDtpZihpIT1udWxsIT0oYSE9bnVsbCkpcmV0dXJuIG51bGw7aWYoaT09bnVsbHx8YT09bnVsbClyZXR1cm57d2lkdGhQdDpuLGhlaWdodFB0OnJ9O2lmKCFEcihpKXx8IURyKGEpKXJldHVybiBudWxsO2xldCBvPWkqZS50YXJnZXRXaWR0aEZhY3RvcixzPWEqZS50YXJnZXRIZWlnaHRGYWN0b3I7aWYoIU51bWJlci5pc0Zpbml0ZShvKXx8bzwwfHxlLnRhcmdldFdpZHRoRmFjdG9yPjAmJm89PT0wfHwhTnVtYmVyLmlzRmluaXRlKHMpfHxzPDB8fGUudGFyZ2V0SGVpZ2h0RmFjdG9yPjAmJnM9PT0wKXJldHVybiBudWxsO2xldCBjPU1hdGguY2VpbChvKSxsPU1hdGguY2VpbChzKTtyZXR1cm4hTnVtYmVyLmlzRmluaXRlKGMpfHwhTnVtYmVyLmlzRmluaXRlKGwpP251bGw6e3dpZHRoUHQ6bixoZWlnaHRQdDpyLHRhcmdldFdpZHRoUHg6Yyx0YXJnZXRIZWlnaHRQeDpsfX1mdW5jdGlvbiBrcihlKXtpZighYnIoZSkpcmV0dXJuIG51bGw7bGV0IHQ9ZS5zcmNSZWN0PzEtZS5zcmNSZWN0LmwtZS5zcmNSZWN0LnI6MSxuPWUuc3JjUmVjdD8xLWUuc3JjUmVjdC50LWUuc3JjUmVjdC5iOjE7aWYoIShOdW1iZXIuaXNGaW5pdGUodCkmJnQ+MCl8fCEoTnVtYmVyLmlzRmluaXRlKG4pJiZuPjApKXJldHVybiBudWxsO2xldCByPWUuc3JjUmVjdCE9bnVsbDtpZihlLnRpbGUpe2lmKCF4cihlKSlyZXR1cm4gbnVsbDtsZXQgaT0xL3QsYT0xL247cmV0dXJuIURyKGkpfHwhRHIoYSk/bnVsbDp7cHJlc2VydmVOYXR1cmFsU2l6ZTohMCxoYXNTb3VyY2VDcm9wOnIsdGFyZ2V0V2lkdGhGYWN0b3I6MCx0YXJnZXRIZWlnaHRGYWN0b3I6MCxtZXRhZmlsZVdpZHRoRmFjdG9yOmksbWV0YWZpbGVIZWlnaHRGYWN0b3I6YX19bGV0IGk9ZS5maWxsUmVjdCxhPWk/Lmw/PzAsbz1pPy50Pz8wLHM9aT8ucj8/MCxjPWk/LmI/PzA7aWYoIVthLG8scyxjXS5ldmVyeShOdW1iZXIuaXNGaW5pdGUpKXJldHVybiBudWxsO2xldCBsPTEtYS1zLHU9MS1vLWM7aWYoIURyKGwpfHwhRHIodSkpcmV0dXJuIG51bGw7bGV0IGQ9bC90LGY9dS9uO3JldHVybiFEcihkKXx8IURyKGYpP251bGw6e3ByZXNlcnZlTmF0dXJhbFNpemU6ITEsaGFzU291cmNlQ3JvcDpyLHRhcmdldFdpZHRoRmFjdG9yOmQsdGFyZ2V0SGVpZ2h0RmFjdG9yOmYsbWV0YWZpbGVXaWR0aEZhY3RvcjpkLG1ldGFmaWxlSGVpZ2h0RmFjdG9yOmZ9fWZ1bmN0aW9uIEFyKGUsdCl7cmV0dXJue2ZpbGw6ZS5maWxsLHByZXNlcnZlTmF0dXJhbFNpemU6ZS5wcmVzZXJ2ZU5hdHVyYWxTaXplfHx0LnByZXNlcnZlTmF0dXJhbFNpemUsaGFzU291cmNlQ3JvcDplLmhhc1NvdXJjZUNyb3B8fHQuaGFzU291cmNlQ3JvcCx0YXJnZXRXaWR0aEZhY3RvcjpNYXRoLm1heChlLnRhcmdldFdpZHRoRmFjdG9yLHQudGFyZ2V0V2lkdGhGYWN0b3IpLHRhcmdldEhlaWdodEZhY3RvcjpNYXRoLm1heChlLnRhcmdldEhlaWdodEZhY3Rvcix0LnRhcmdldEhlaWdodEZhY3RvciksbWV0YWZpbGVXaWR0aEZhY3RvcjpNYXRoLm1heChlLm1ldGFmaWxlV2lkdGhGYWN0b3IsdC5tZXRhZmlsZVdpZHRoRmFjdG9yKSxtZXRhZmlsZUhlaWdodEZhY3RvcjpNYXRoLm1heChlLm1ldGFmaWxlSGVpZ2h0RmFjdG9yLHQubWV0YWZpbGVIZWlnaHRGYWN0b3IpfX1mdW5jdGlvbiBqcihlLHQpe2lmKEJuKGUpPjFlNClyZXR1cm57dXNhZ2VzOltdLHNvdXJjZUxpbWl0RXhjZWVkZWQ6ITEsdXNhZ2VSZWplY3RlZDohMX07bGV0IG49bmV3IE1hcCxyPSExLGk9ITEsYT1lPT57aWYoaXx8IWV8fHR5cGVvZiBlIT1gb2JqZWN0YHx8ZS5maWxsVHlwZSE9PWBpbWFnZWApcmV0dXJuO2xldCBhPWUsbz1rcihhKTtpZighbylyZXR1cm47bGV0IHM9X3IoYSksYz17ZmlsbDphLC4uLm99O2lmKHQmJiF0KGMpKXtpPSEwO3JldHVybn1sZXQgbD1uLmdldChzKTtpZihsKXtuLnNldChzLEFyKGwsYykpO3JldHVybn1pZihuLnNpemU+PTI1Nil7cj0hMDtyZXR1cm59bi5zZXQocyxjKX0sbz0oZSx0KT0+e2xldCBuPWU/LmZpbGxQYWludHM7aWYobj8ubGVuZ3RoKXJldHVybiBuWyhlPy5maWxsQ29sb3JJbmRleD8/dCklbi5sZW5ndGhdfSxzPShlLHQpPT57aWYoIWUpcmV0dXJuO2lmKGUuZmlsbEhpZGRlbj09PSEwKXJldHVybiBlLmZpbGxOb1N0eWxlP3ZvaWQgMDpudWxsO2xldCBuPW8oZSx0KTtpZihuPy5maWxsVHlwZT09PWBpbWFnZWApcmV0dXJuIG47aWYobiE9bnVsbHx8ZS5maWxsUGFpbnRBdXRob3JlZD09PSEwKXJldHVybiBudWxsO2xldCByPWUuZmlsbENvbG9ycztyZXR1cm4gcj8ubGVuZ3RoJiZyWyhlLmZpbGxDb2xvckluZGV4Pz90KSVyLmxlbmd0aF0/bnVsbDp2b2lkIDB9LGM9KGUsdCxuLHIsaSk9PntpZihuPT09ITApcmV0dXJuIG51bGw7aWYoZT8uZmlsbFR5cGU9PT1gaW1hZ2VgKXJldHVybiBlO2lmKGUhPW51bGx8fHQhPW51bGx8fHI9PT0hMClyZXR1cm4gbnVsbDtpZihpPy5maWxsTm9TdHlsZSE9PSEwKXJldHVybiBzKGksMCl9LGw9YyhlLmNoYXJ0RmlsbCx2b2lkIDAsZS5jaGFydEZpbGxIaWRkZW4sZS5jaGFydEZpbGxQYWludEF1dGhvcmVkLGUuY2hhcnRTdHlsZVJvbGVzPy5jaGFydEFyZWEpO2wmJmEobCk7bGV0IHU9YyhlLnBsb3RBcmVhRmlsbCxlLnBsb3RBcmVhQmcsZS5wbG90QXJlYUZpbGxIaWRkZW4sZS5wbG90QXJlYUZpbGxQYWludEF1dGhvcmVkLGUudGhyZWVEP2UuY2hhcnRTdHlsZVJvbGVzPy5wbG90QXJlYTNEOmUuY2hhcnRTdHlsZVJvbGVzPy5wbG90QXJlYSk7dSYmYSh1KTtsZXQgZD1lLnNlcmllcy5zb21lKGU9PmUudmFsdWVzLnNvbWUoZT0+ZSE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGUpKSksZj1NYXRoLm1heChlLmNhdGVnb3JpZXMubGVuZ3RoLC4uLmUuc2VyaWVzLm1hcChlPT5lLmNhdGVnb3JpZXM/Lmxlbmd0aD8/ZS52YWx1ZXMubGVuZ3RoKSkscD1lLmNoYXJ0VHlwZT09PWBzdXJmYWNlYHx8ZS5jaGFydFR5cGU9PT1gc3VyZmFjZTNEYD9lLnNlcmllcy5sZW5ndGg+PTImJmY+PTImJmQ6ZDtpZihlLnRocmVlRCYmRnIuaGFzKGUuY2hhcnRUeXBlKSYmcCl7bGV0IHQ9ZS52YWxNaW4hPW51bGwmJk51bWJlci5pc0Zpbml0ZShlLnZhbE1pbikmJmUudmFsTWF4IT1udWxsJiZOdW1iZXIuaXNGaW5pdGUoZS52YWxNYXgpP2UudmFsTWF4LWUudmFsTWluOnZvaWQgMDtmb3IobGV0W24scl1vZltbYGZsb29yYCxgZmxvb3JgXSxbYHNpZGVXYWxsYCxgd2FsbGBdLFtgYmFja1dhbGxgLGB3YWxsYF1dKXtsZXQgaT1lLnRocmVlRFtuXSxvPW9yKGUsaSxyKS5maWxsO28/LmZpbGxUeXBlPT09YGltYWdlYCYmaHIobyxpLG4sdCkmJmEobyl9fWxldCBtPVhuKGUpLGg9ZS5zZXJpZXMuc29tZSgodCxuKT0+e2xldCByPW1bbl07cmV0dXJuKHI/LmtpbmQ9PT1gYnViYmxlYHx8cj8ua2luZD09PWBzY2F0dGVyYD9gc2NhdHRlcmA6dC5zZXJpZXNUeXBlPz8oZS5jaGFydFR5cGU9PT1gYnViYmxlYD9gc2NhdHRlcmA6ZS5jaGFydFR5cGUpKT09PWBzY2F0dGVyYCYmKHQuY2F0ZWdvcmllcz8/ZS5jYXRlZ29yaWVzKS5zb21lKGU9Pk51bWJlci5pc0Zpbml0ZShOdW1iZXIucGFyc2VGbG9hdChlKSkpfSksZz1lLmNoYXJ0U3R5bGVSb2xlcz8uZGF0YVBvaW50TWFya2VyLF89Ym4oZSksdj1lLmNhdGVnb3JpZXMubGVuZ3RoPjB8fChlLnNlcmllc1swXT8uY2F0ZWdvcmllcz8ubGVuZ3RoPz8wKT4wfHxlLnNlcmllcy5zb21lKGU9PmUudmFsdWVzLmxlbmd0aD4wKTtmb3IobGV0IHQ9MDt0PGUuc2VyaWVzLmxlbmd0aDt0Kyspe2xldCBuPWUuc2VyaWVzW3RdLHI9bVt0XSxpPXI/LmtpbmQ9PT1gYnViYmxlYHx8cj09bnVsbCYmZS5jaGFydFR5cGU9PT1gYnViYmxlYCxjPXI/LmtpbmQ9PT1gYnViYmxlYHx8cj8ua2luZD09PWBzY2F0dGVyYD9gc2NhdHRlcmA6bi5zZXJpZXNUeXBlPz8oZS5jaGFydFR5cGU9PT1gYnViYmxlYD9gc2NhdHRlcmA6ZS5jaGFydFR5cGUpLGw9Wm4oZS5jaGFydFR5cGUsciksdT1yPy5zY2F0dGVyU3R5bGU/P2Uuc2NhdHRlclN0eWxlLGQ9cj8ucmFkYXJTdHlsZT8/ZS5yYWRhclN0eWxlLGY9e2NoYXJ0VHlwZTpsLGJ1YmJsZVNjYWxlOnI/LmJ1YmJsZVNjYWxlPz9lLmJ1YmJsZVNjYWxlLHNob3dOZWdhdGl2ZUJ1YmJsZXM6cj8uc2hvd05lZ2F0aXZlQnViYmxlcz8/ZS5zaG93TmVnYXRpdmVCdWJibGVzfTtpZighKGM9PT1gbGluZWB8fGM9PT1gc3RhY2tlZExpbmVgfHxjPT09YHN0YWNrZWRMaW5lUGN0YHx8Yz09PWBhcmVhYHx8Yz09PWBzdGFja2VkQXJlYWB8fGM9PT1gc3RhY2tlZEFyZWFQY3RgfHxjPT09YHNjYXR0ZXJgfHxjPT09YHJhZGFyYHx8Yz09PWBzdG9ja2ApfHxBbihjLGwsdSxkKSljb250aW51ZTtsZXQgcD1jPT09YGFyZWFgfHxjPT09YHN0YWNrZWRBcmVhYHx8Yz09PWBzdGFja2VkQXJlYVBjdGA/KG4uc2hvd01hcmtlcj09PSEwfHx4bihuKSkmJm4ubWFya2VyU3ltYm9sIT09YG5vbmVgOmM9PT1gc3RvY2tgP24ubWFya2VyU3ltYm9sIT1udWxsJiZuLm1hcmtlclN5bWJvbCE9PWBub25lYDpuLnNob3dNYXJrZXIhPT0hMSYmbi5tYXJrZXJTeW1ib2whPT1gbm9uZWAseT1fLmhhcyh0KSxiPU1hdGgubWF4KG4udmFsdWVzLmxlbmd0aCxuLmNhdGVnb3JpZXM/Lmxlbmd0aD8/MCxlLmNhdGVnb3JpZXMubGVuZ3RoKSx4PURuKGUsbixjLGIsaCxmKT4wLFM9am4obCx1LG4sZCkmJihlLnNob3dMZWdlbmQmJiF5fHxlLmRhdGFUYWJsZT8uc2hvd0tleXM9PT0hMCYmT24oZS5jaGFydFR5cGUpJiZ2fHx4KSxDPW4ubWFya2VyU3ltYm9sPz8oYz09PWBzdG9ja2A/YG5vbmVgOmBjaXJjbGVgKTtpZihTJiZUbihDKSl7aWYoaSl7bGV0IHI9cyhuLmNoYXJ0ZXhTdHlsZSx0KTtpZihyJiZhKHIpLHI9PT12b2lkIDAmJm4uY29sb3I9PW51bGwpe2xldCBuPXMoZS5jaGFydFN0eWxlUm9sZXM/LmRhdGFQb2ludCx0KTtuJiZhKG4pfX1lbHNlIGEobi5tYXJrZXJGaWxsUGFpbnQpOyFpJiZuLm1hcmtlckZpbGxQYWludD09PXZvaWQgMCYmbi5tYXJrZXJGaWxsPT1udWxsJiZuLm1hcmtlckZpbGxQYWludEF1dGhvcmVkIT09ITAmJmEobyhnLHQpKX1pZighcCYmIWtuKG4pKWNvbnRpbnVlO2xldCB3PW5ldyBNYXAoKG4uZGF0YVBvaW50T3ZlcnJpZGVzPz9bXSkubWFwKGU9PltlLmlkeCxlXSkpO2ZvcihsZXQgbD0wO2w8YjtsKyspe2lmKCFFbihlLG4sYyxsLGgsZikpY29udGludWU7bGV0IHU9dy5nZXQobCk7aWYoIVRuKE1uKG4sdSxgY2lyY2xlYCxwKSkpY29udGludWU7aWYoaSl7bGV0IHQ9e3Nob3dOZWdhdGl2ZUJ1YmJsZXM6cj8uc2hvd05lZ2F0aXZlQnViYmxlcz8/ZS5zaG93TmVnYXRpdmVCdWJibGVzfTtpZigocj8uYnViYmxlU2NhbGU/P2UuYnViYmxlU2NhbGU/PzEwMCk8PTB8fENuKHQsbi5idWJibGVTaXplcz8uW2xdKT09bnVsbHx8KG4uYnViYmxlU2l6ZXM/LltsXT8/MCk8MCljb250aW51ZTtsZXQgaT1zKHU/LmNoYXJ0ZXhTdHlsZSxsKTtpZihpJiZhKGkpLGkhPT12b2lkIDB8fHU/LmZpbGxIaWRkZW49PT0hMHx8dT8uY29sb3IhPW51bGx8fG4uZGF0YVBvaW50Q29sb3JzPy5bbF0hPW51bGwpY29udGludWU7bGV0IG89cyhuLmNoYXJ0ZXhTdHlsZSxsKTtpZihvJiZhKG8pLG8hPT12b2lkIDB8fG4uY29sb3IhPW51bGwpY29udGludWU7bGV0IGM9cyhlLmNoYXJ0U3R5bGVSb2xlcz8uZGF0YVBvaW50LGwpO2MmJmEoYyk7Y29udGludWV9bGV0IGQ9Tm4obix1LGwpO2EoZCksZD09PXZvaWQgMCYmdT8ubWFya2VyRmlsbD09bnVsbCYmdT8uY29sb3I9PW51bGwmJm4uZGF0YVBvaW50Q29sb3JzPy5bbF09PW51bGwmJm4ubWFya2VyRmlsbD09bnVsbCYmdT8ubWFya2VyRmlsbFBhaW50QXV0aG9yZWQhPT0hMCYmbi5tYXJrZXJGaWxsUGFpbnRBdXRob3JlZCE9PSEwJiZhKG8oZyx0KSl9fWZvcihsZXQgdD0wO3Q8KGUuY2hhcnRleEJveD8uc2VyaWVzLmxlbmd0aD8/MCk7dCsrKXtsZXQgbj1lLmNoYXJ0ZXhCb3guc2VyaWVzW3RdO2lmKCFUbihlLmNoYXJ0U3R5bGVNYXJrZXJTeW1ib2w/P2UuY2hhcnRleE1hcmtlclN5bWJvbD8/YGNpcmNsZWApfHwhKG4uc2hvd05vbm91dGxpZXJzfHxuLnNob3dPdXRsaWVycykpY29udGludWU7bGV0IHI9MDtmb3IobGV0IGUgb2Ygbi52YWx1ZXNCeUNhdGVnb3J5KXtsZXQgdD1fdChlLG4ucXVhcnRpbGVNZXRob2QpO3QmJihuLnNob3dOb25vdXRsaWVycyYmKHIrPXQuaW5uZXIubGVuZ3RoKSxuLnNob3dPdXRsaWVycyYmKHIrPXQub3V0bGllcnMubGVuZ3RoKSl9aWYocj09PTApY29udGludWU7bGV0IGk9bi5jaGFydGV4Rm9ybWF0SWR4Pz90LG89bi5jaGFydGV4U3R5bGUsYz1zKG8saSk7aWYoYyYmYShjKSxjIT09dm9pZCAwfHxuLmNvbG9yIT1udWxsKWNvbnRpbnVlO2xldCBsPXMoZS5jaGFydGV4RGF0YVBvaW50TWFya2VyU3R5bGU/P2UuY2hhcnRleERhdGFQb2ludFN0eWxlPz92b2lkIDAsaSk7bCYmYShsKX1yZXR1cm57dXNhZ2VzOnJ8fGk/W106Wy4uLm4udmFsdWVzKCldLHNvdXJjZUxpbWl0RXhjZWVkZWQ6cix1c2FnZVJlamVjdGVkOml9fWZ1bmN0aW9uIE1yKGUpe3JldHVybiBqcihlKS51c2FnZXN9ZnVuY3Rpb24gTnIoZSx0KXtsZXQgbj1uZXcgTWFwO2ZvcihsZXQgcj0wO3I8ZS5sZW5ndGg7cisrKXtsZXQgaT1lW3JdLGE9anIoaSx0P2U9PnQoZSxyKTp2b2lkIDApO2lmKCFhLnVzYWdlUmVqZWN0ZWQpe2lmKGEuc291cmNlTGltaXRFeGNlZWRlZClyZXR1cm5bXTtmb3IobGV0IGUgb2YgYS51c2FnZXMpe2xldCB0PV9yKGUuZmlsbCkscj1uLmdldCh0KTtpZihyKXtuLnNldCh0LEFyKHIsZSkpO2NvbnRpbnVlfWlmKG4uc2l6ZT49MjU2KXJldHVybltdO24uc2V0KHQsZSl9fX1yZXR1cm5bLi4ubi52YWx1ZXMoKV19ZnVuY3Rpb24gUHIoZSx0LG4scixpLGEsbz11dCxzPTApe2xldCBjPUlyPy4odCk7aWYoIWN8fCEoaT4wKXx8IShhPjApfHwhYnIodCl8fHMhPT0wJiZ0LnJvdFdpdGhTaGFwZT09bnVsbClyZXR1cm4hMTtpZihlLnNhdmUoKSxlLmJlZ2luUGF0aCgpLGUucmVjdChuLHIsaSxhKSxlLmNsaXAoKSx0LnJvdFdpdGhTaGFwZT09PSExJiZzIT09MCYmKGUudHJhbnNsYXRlKG4raS8yLHIrYS8yKSxlLnJvdGF0ZSgtcypNYXRoLlBJLzE4MCksZS50cmFuc2xhdGUoLShuK2kvMiksLShyK2EvMikpKSx0LmFscGhhIT1udWxsJiYoZS5nbG9iYWxBbHBoYSo9TWF0aC5tYXgoMCxNYXRoLm1pbigxLHQuYWxwaGEpKSksIXQudGlsZSl7bGV0IG89dC5maWxsUmVjdCxzPW4rKG8/Lmw/PzApKmksbD1yKyhvPy50Pz8wKSphLHU9KDEtKG8/Lmw/PzApLShvPy5yPz8wKSkqaSxkPSgxLShvPy50Pz8wKS0obz8uYj8/MCkpKmE7cmV0dXJuIHU+MCYmZD4wJiZpdChlLGMsdC5zcmNSZWN0LHMsbCx1LGQpLGUucmVzdG9yZSgpLHU+MCYmZD4wfWxldCBsPVRyKHQsYyxpLGEsbyk7aWYoIWx8fGwucmVwZXRpdGlvbnM+NDA5NilyZXR1cm4gZS5yZXN0b3JlKCksITE7bGV0e3RpbGVXOnUsdGlsZUg6ZCxmbGlwWDpmLGZsaXBZOnAsY29sdW1uczptLHJvd3M6aH09bCxnPXdyKGwsaSxhKSxfPW4rZy54LHY9citnLnkseT1NYXRoLmZsb29yKChuLV8pL3UpLTEsYj1NYXRoLmZsb29yKChyLXYpL2QpLTE7Zm9yKGxldCBuPWI7bjxiK2g7bisrKWZvcihsZXQgcj15O3I8eSttO3IrKyl7bGV0IGk9XytyKnUsYT12K24qZCxvPWYmJk1hdGguYWJzKHIpJTI9PTEscz1wJiZNYXRoLmFicyhuKSUyPT0xO2Uuc2F2ZSgpLGUudHJhbnNsYXRlKGkrKG8/dTowKSxhKyhzP2Q6MCkpLGUuc2NhbGUobz8tMToxLHM/LTE6MSksaXQoZSxjLHQuc3JjUmVjdCwwLDAsdSxkKSxlLnJlc3RvcmUoKX1yZXR1cm4gZS5yZXN0b3JlKCksITB9dmFyIEZyLElyLExyLFJyLHpyPXQoKCgpPT57c3QoKSxwdCgpLHh0KCksUm4oKSxxbigpLGVyKCksc3IoKSxncigpLEZyPW5ldyBTZXQoW2BsaW5lYCxgc3RhY2tlZExpbmVgLGBzdGFja2VkTGluZVBjdGAsYGFyZWFgLGBzdGFja2VkQXJlYWAsYHN0YWNrZWRBcmVhUGN0YCxgY2x1c3RlcmVkQmFyYCxgY2x1c3RlcmVkQmFySGAsYHN0YWNrZWRCYXJgLGBzdGFja2VkQmFySGAsYHN0YWNrZWRCYXJQY3RgLGBzdGFja2VkQmFySFBjdGAsYHN1cmZhY2VgLGBzdXJmYWNlM0RgXSksTHI9bmV3IFNldChbYHRsYCxgdGAsYHRyYCxgbGAsYGN0cmAsYHJgLGBibGAsYGJgLGBicmBdKSxScj1uZXcgU2V0KFtgbm9uZWAsYHhgLGB5YCxgeHlgXSl9KSk7ZnVuY3Rpb24gQnIoZSx0KXtsZXQgbj1OdW1iZXIuaXNGaW5pdGUoZSkmJmU+MD9NYXRoLm1heCgxLE1hdGgucm91bmQoZSkpOjEscj1OdW1iZXIuaXNGaW5pdGUodCkmJnQ+MD9NYXRoLm1heCgxLE1hdGgucm91bmQodCkpOjEsaT1NYXRoLm1pbigxLFZyL24sVnIvciksYT1uKnIsbz1hPjE2Nzc3MjE2P01hdGguc3FydChIci9hKToxLHM9TWF0aC5taW4oaSxvKTtyZXR1cm4gcz49MT97d2lkdGg6bixoZWlnaHQ6cixzY2FsZToxLGNsYW1wZWQ6ITF9Ont3aWR0aDpNYXRoLm1heCgxLE1hdGguZmxvb3IobipzKSksaGVpZ2h0Ok1hdGgubWF4KDEsTWF0aC5mbG9vcihyKnMpKSxzY2FsZTpzLGNsYW1wZWQ6ITB9fXZhciBWcixIcixVcj10KCgoKT0+e1ZyPTMyNzY3LEhyPTE8PDI0fSkpO2Z1bmN0aW9uIFdyKGUsdCxuKXtsZXQgcj1LcltlXTtpZighcilyZXR1cm4gbnVsbDtsZXQgaT1vZSg4LDgpO2lmKCFpKXJldHVybiBudWxsO2xldCBhPWkuZ2V0Q29udGV4dChgMmRgKTtpZighYSlyZXR1cm4gbnVsbDthLmZpbGxTdHlsZT1HcihuKSxhLmZpbGxSZWN0KDAsMCw4LDgpLGEuZmlsbFN0eWxlPUdyKHQpO2ZvcihsZXQgZT0wO2U8ODtlKyspe2xldCB0PXJbZV07Zm9yKGxldCBuPTA7bjw4O24rKyl0JjE8PDctbiYmYS5maWxsUmVjdChuLGUsMSwxKX1yZXR1cm4gaX1mdW5jdGlvbiBHcihlKXtyZXR1cm5gcmdiYSgke3BhcnNlSW50KGUuc2xpY2UoMCwyKSwxNil9LCR7cGFyc2VJbnQoZS5zbGljZSgyLDQpLDE2KX0sJHtwYXJzZUludChlLnNsaWNlKDQsNiksMTYpfSwke2UubGVuZ3RoPj04P3BhcnNlSW50KGUuc2xpY2UoNiw4KSwxNikvMjU1OjF9KWB9dmFyIEtyLHFyPXQoKCgpPT57Y2UoKSxLcj17cGN0NTpbMCwxNiwwLDAsMCwxLDAsMF0scGN0MTA6WzEzNiwwLDM0LDAsMTM2LDAsMzQsMF0scGN0MjA6WzEzNiwzNCwxMzYsMzQsMTM2LDM0LDEzNiwzNF0scGN0MjU6WzEzNiw4NSwzNCw4NSwxMzYsODUsMzQsODVdLHBjdDMwOlsxNzAsODUsMTcwLDg1LDE3MCw4NSwxNzAsODVdLHBjdDQwOlsxNzAsMTE5LDE3MCwyMjEsMTcwLDExOSwxNzAsMjIxXSxwY3Q1MDpbMTcwLDg1LDE3MCw4NSwxNzAsODUsMTcwLDg1XSxwY3Q2MDpbMjIxLDg1LDExOSw4NSwyMjEsODUsMTE5LDg1XSxwY3Q3MDpbMjM4LDg1LDE4Nyw4NSwyMzgsODUsMTg3LDg1XSxwY3Q3NTpbMjM4LDE3MCwxODcsMTcwLDIzOCwxNzAsMTg3LDE3MF0scGN0ODA6WzI1NCwyMzksMjUxLDE5MSwyNTQsMjM5LDI1MSwxOTFdLHBjdDkwOlsyNTUsMjM5LDI1NSwyNTEsMjU1LDIzOSwyNTUsMjUxXSxob3J6OlsyNTUsMCwwLDAsMjU1LDAsMCwwXSx2ZXJ0OlsxMzYsMTM2LDEzNiwxMzYsMTM2LDEzNiwxMzYsMTM2XSxsdEhvcno6WzAsMjU1LDAsMCwwLDAsMCwwXSxsdFZlcnQ6WzMyLDMyLDMyLDMyLDMyLDMyLDMyLDMyXSxka0hvcno6WzI1NSwyNTUsMCwwLDI1NSwyNTUsMCwwXSxka1ZlcnQ6WzIwNCwyMDQsMjA0LDIwNCwyMDQsMjA0LDIwNCwyMDRdLG5hckhvcno6WzI1NSwwLDI1NSwwLDI1NSwwLDI1NSwwXSxuYXJWZXJ0OlsxNzAsMTcwLDE3MCwxNzAsMTcwLDE3MCwxNzAsMTcwXSxjcm9zczpbMjU1LDEzNiwxMzYsMTM2LDI1NSwxMzYsMTM2LDEzNl0sbGdHcmlkOlsyNTUsMTI4LDEyOCwxMjgsMTI4LDEyOCwxMjgsMTI4XSxzbUdyaWQ6WzI1NSwxMzYsMTM2LDEzNiwyNTUsMTM2LDEzNiwxMzZdLGRvdEdyaWQ6WzEzNiwwLDAsMCwxMzYsMCwwLDBdLGRuRGlhZzpbMTI4LDY0LDMyLDE2LDgsNCwyLDFdLHVwRGlhZzpbMSwyLDQsOCwxNiwzMiw2NCwxMjhdLGx0RG5EaWFnOlsxMzYsNjgsMzQsMTcsMTM2LDY4LDM0LDE3XSxsdFVwRGlhZzpbMTcsMzQsNjgsMTM2LDE3LDM0LDY4LDEzNl0sZGtEbkRpYWc6WzE5NSwxMjksMCwxMjksMTk1LDEyOSwwLDEyOV0sZGtVcERpYWc6WzE5NSwxMjksMCwxMjksMTk1LDEyOSwwLDEyOV0sd2REbkRpYWc6WzEyOCw2NCwzMiwxNiw4LDQsMiwxMjldLHdkVXBEaWFnOlsxLDIsNCw4LDE2LDMyLDY0LDEyOV0sZGlhZ0Nyb3NzOlsxMjksNjYsMzYsMjQsMjQsMzYsNjYsMTI5XSxob3J6QnJpY2s6WzI1NSwxNiwxNiwxNiwyNTUsMSwxLDFdLGRpYWdCcmljazpbMTI5LDY2LDM2LDI0LDM2LDY2LDEyOSwwXSxsZ0NoZWNrOlsyNDAsMjQwLDI0MCwyNDAsMTUsMTUsMTUsMTVdLHNtQ2hlY2s6WzIwNCwyMDQsNTEsNTEsMjA0LDIwNCw1MSw1MV0sdHJlbGxpczpbMTY1LDkwLDE2NSw5MCwxNjUsOTAsMTY1LDkwXX19KSk7ZnVuY3Rpb24gSnIoZSx0KXtyZXR1cm4gZS5tYXAoZT0+ZSp0KX1mdW5jdGlvbiBZcihlKXtsZXQgdD0kcltlXTtyZXR1cm4gdD9Kcih0LDEpOltdfWZ1bmN0aW9uIFhyKGUsdCl7bGV0IG49ZWlbZV07cmV0dXJuIG4/SnIobix0KTpbXX1mdW5jdGlvbiBacihlLHQsbil7aWYoZSE9bnVsbCl7bGV0IHQ9W107Zm9yKGxldCByPTA7cjxNYXRoLm1pbihlLmxlbmd0aCx0aSk7cis9MSl7bGV0IGk9ZVtyXTshTnVtYmVyLmlzRmluaXRlKGkuZGFzaCl8fCFOdW1iZXIuaXNGaW5pdGUoaS5zcGFjZSl8fGkuZGFzaDwwfHxpLnNwYWNlPDB8fGkuZGFzaD09PTAmJmkuc3BhY2U9PT0wfHx0LnB1c2goaS5kYXNoKm4saS5zcGFjZSpuKX1yZXR1cm4gdH1yZXR1cm4gWHIodD8/YHNvbGlkYCxuKX1mdW5jdGlvbiBRcihlLHQpe2xldCBuPVhyKGUsdCk7aWYobi5sZW5ndGg+MClyZXR1cm4gbjtsZXQgcj1lLnRyaW0oKS5zcGxpdCgvW1xzLF0rLykubWFwKE51bWJlcik7cmV0dXJuIHIubGVuZ3RoPj0yJiZyLmV2ZXJ5KGU9Pk51bWJlci5pc0Zpbml0ZShlKSYmZT49MCkmJnIuc29tZShlPT5lPjApPyhyLmxlbmd0aCUyIT0wJiZyLnBvcCgpLEpyKHIsdCkpOltdfXZhciAkcixlaSx0aSxuaT10KCgoKT0+eyRyPXtoYWlyOlsxLDFdLGRhc2hlZDpbNCwzXSxtZWRpdW1EYXNoZWQ6WzQsM10sZG90dGVkOlsyLDJdLGRhc2hEb3Q6WzQsMiwxLDJdLG1lZGl1bURhc2hEb3Q6WzQsMiwxLDJdLGRhc2hEb3REb3Q6WzQsMiwxLDIsMSwyXSxtZWRpdW1EYXNoRG90RG90Ols0LDIsMSwyLDEsMl0sc2xhbnREYXNoRG90Ols1LDMsMSwzXX0sZWk9e2Rhc2g6WzYsM10sZG90OlsxLjUsM10sZGFzaERvdDpbNiwzLDEuNSwzXSxsZ0Rhc2g6WzEwLDRdLGxnRGFzaERvdDpbMTAsNCwxLjUsNF0sbGdEYXNoRG90RG90OlsxMCw0LDEuNSw0LDEuNSw0XSxzeXNEYXNoOls0LDJdLHN5c0RvdDpbMSwyXSxzeXNEYXNoRG90Ols0LDIsMSwyXSxzeXNEYXNoRG90RG90Ols0LDIsMSwyLDEsMl19LHRpPTUxMn0pKTtmdW5jdGlvbiByaShlLHQsbixyLGksYSxvKXtsZXQgcz1lLnRpbGVSZWN0O2lmKCFzfHwocy5sPz8wKT09PTAmJihzLnQ/PzApPT09MCYmKHMucj8/MCk9PT0wJiYocy5iPz8wKT09PTApcmV0dXJuIG51bGw7bGV0IGM9bitpKihzLmw/PzApLGw9cithKihzLnQ/PzApLHU9aSooMS0ocy5sPz8wKS0ocy5yPz8wKSksZD1hKigxLShzLnQ/PzApLShzLmI/PzApKTtpZighTnVtYmVyLmlzRmluaXRlKHUpfHwhTnVtYmVyLmlzRmluaXRlKGQpfHxNYXRoLmFicyh1KTwxZS05fHxNYXRoLmFicyhkKTwxZS05KXJldHVybiBudWxsO2xldCBmPU1hdGgubWluKDEsY2kvTWF0aC5hYnModSksY2kvTWF0aC5hYnMoZCkpLHA9TWF0aC5tYXgoMSxNYXRoLmNlaWwoTWF0aC5hYnModSkqZikpLG09TWF0aC5tYXgoMSxNYXRoLmNlaWwoTWF0aC5hYnMoZCkqZikpLGg9c2UodCxwLG0pLGc9aD8uZ2V0Q29udGV4dChgMmRgKTtpZighaHx8IWcpcmV0dXJuIG51bGw7bGV0IF89YWkoey4uLmUsdGlsZVJlY3Q6dm9pZCAwLGZsaXA6dm9pZCAwfSxnLDAsMCxwLG0sbyk7aWYoIV8pcmV0dXJuIG51bGw7Zy5maWxsU3R5bGU9XyxnLmZpbGxSZWN0KDAsMCxwLG0pO2xldCB2PWUuZmxpcD09PWB4YHx8ZS5mbGlwPT09YHh5YCx5PWUuZmxpcD09PWB5YHx8ZS5mbGlwPT09YHh5YCxiPWg7aWYodnx8eSl7bGV0IGU9c2UodCxwKih2PzI6MSksbSooeT8yOjEpKSxuPWU/LmdldENvbnRleHQoYDJkYCk7aWYoIWV8fCFuKXJldHVybiBudWxsO2ZvcihsZXQgZT0wO2U8KHk/MjoxKTtlKz0xKWZvcihsZXQgdD0wO3Q8KHY/MjoxKTt0Kz0xKW4uc2F2ZSgpLG4udHJhbnNsYXRlKHQqcCxlKm0pLG4uc2NhbGUodD09PTE/LTE6MSxlPT09MT8tMToxKSxuLmRyYXdJbWFnZShoLHQ9PT0xPy1wOjAsZT09PTE/LW06MCksbi5yZXN0b3JlKCk7Yj1lfWxldCB4PXQuY3JlYXRlUGF0dGVybihiLGByZXBlYXRgKTtyZXR1cm4heHx8dHlwZW9mIHguc2V0VHJhbnNmb3JtIT1gZnVuY3Rpb25gP251bGw6KHguc2V0VHJhbnNmb3JtKHthOnUvcCxiOjAsYzowLGQ6ZC9tLGU6YyxmOmx9KSx4KX1mdW5jdGlvbiBpaShlLHQ9MSl7bGV0IG49ZS5jaGFyQ29kZUF0KDApPT09MzU/ZS5zbGljZSgxKTplO3JldHVybmByZ2JhKCR7cGFyc2VJbnQobi5zbGljZSgwLDIpLDE2KX0sJHtwYXJzZUludChuLnNsaWNlKDIsNCksMTYpfSwke3BhcnNlSW50KG4uc2xpY2UoNCw2KSwxNil9LCR7bi5sZW5ndGg+PTg/cGFyc2VJbnQobi5zbGljZSg2LDgpLDE2KS8yNTU6dH0pYH1mdW5jdGlvbiBhaShlLHQsbixyLGksYSxvPTApe2lmKCFlfHxlLmZpbGxUeXBlPT09YG5vbmVgKXJldHVybiBudWxsO2lmKGUuZmlsbFR5cGU9PT1gc29saWRgKXJldHVybiBpaShlLmNvbG9yKTtpZihlLmZpbGxUeXBlPT09YHBhdHRlcm5gKXJldHVybiBvaShlLHQpO2lmKGUuZmlsbFR5cGU9PT1gZ3JhZGllbnRgKXtsZXQgcz1lLnN0b3BzO2lmKHMubGVuZ3RoPT09MClyZXR1cm4gbnVsbDtpZihzLmxlbmd0aD09PTEpcmV0dXJuIGlpKHNbMF0uY29sb3IpO2xldCBjPXJpKGUsdCxuLHIsaSxhLG8pO2lmKGMpcmV0dXJuIGM7bGV0IGwsdT1lLnRpbGVSZWN0LGQ9bitpKih1Py5sPz8wKSxmPXIrYSoodT8udD8/MCkscD1pKigxLSh1Py5sPz8wKS0odT8ucj8/MCkpLG09YSooMS0odT8udD8/MCktKHU/LmI/PzApKTtpZihlLmdyYWRUeXBlPT09YHJhZGlhbGApe2xldCBuPWUuZmlsbFRvUmVjdCxyPWQrcCoobj8ubD8/MCksaT1mK20qKG4/LnQ/PzApLGE9cCooMS0obj8ubD8/MCktKG4/LnI/PzApKSxvPW0qKDEtKG4/LnQ/PzApLShuPy5iPz8wKSkscz1yK2EvMixjPWkrby8yLHU9TWF0aC5tYXgoTWF0aC5hYnMocy1kKSxNYXRoLmFicyhkK3AtcykpLGg9TWF0aC5tYXgoTWF0aC5hYnMoYy1mKSxNYXRoLmFicyhmK20tYykpLGc9ZS5wYXRoPT09YHJlY3RgP01hdGgubWF4KHUsaCk6TWF0aC5zcXJ0KHUqdStoKmgpO2w9dC5jcmVhdGVSYWRpYWxHcmFkaWVudChzLGMsMCxzLGMsTWF0aC5tYXgoZywxZS05KSl9ZWxzZXtsZXQgbj0oZS5yb3RXaXRoU2hhcGU9PT0hMT9lLmFuZ2xlLW86ZS5hbmdsZSkqTWF0aC5QSS8xODAscj1NYXRoLmNvcyhuKSxpPU1hdGguc2luKG4pO2lmKGUuc2NhbGVkPT09ITApe3IqPXAsaSo9bTtsZXQgZT1NYXRoLmh5cG90KHIsaSk7ZT4wJiYoci89ZSxpLz1lKX1sZXQgYT1kK3AvMixzPWYrbS8yLGM9KE1hdGguYWJzKHIpKnArTWF0aC5hYnMoaSkqbSkvMjtsPXQuY3JlYXRlTGluZWFyR3JhZGllbnQoYS1yKmMscy1pKmMsYStyKmMscytpKmMpfWZvcihsZXQgZSBvZiBzKWwuYWRkQ29sb3JTdG9wKE1hdGgubWluKDEsTWF0aC5tYXgoMCxlLnBvc2l0aW9uKSksaWkoZS5jb2xvcikpO3JldHVybiBsfXJldHVybiBudWxsfWZ1bmN0aW9uIG9pKGUsdCl7bGV0IG49YCR7ZS5wcmVzZXR9fCR7ZS5mZ318JHtlLmJnfWAscj1saS5nZXQodCk7cnx8KHI9bmV3IE1hcCxsaS5zZXQodCxyKSk7bGV0IGk9ci5nZXQobik7aWYoaSlyZXR1cm4gaTtsZXQgYT1XcihlLnByZXNldCxlLmZnLGUuYmcpO2lmKCFhKXJldHVybiBpaShlLmZnKTtsZXQgbz10LmNyZWF0ZVBhdHRlcm4oYSxgcmVwZWF0YCk7cmV0dXJuIG8/KHIuc2V0KG4sbyksbyk6aWkoZS5mZyl9ZnVuY3Rpb24gc2koZSx0LG4pe2lmKCF0KXtlLnN0cm9rZVN0eWxlPWB0cmFuc3BhcmVudGAsZS5saW5lV2lkdGg9MCxlLnNldExpbmVEYXNoKFtdKSxlLmxpbmVDYXA9YGJ1dHRgLGUubGluZUpvaW49YG1pdGVyYCxlLm1pdGVyTGltaXQ9MTA7cmV0dXJufWUuc3Ryb2tlU3R5bGU9aWkodC5jb2xvcik7bGV0IHI9TWF0aC5tYXgoLjUsdC53aWR0aCpuKTtlLmxpbmVXaWR0aD1yO2xldCBpPXQuY3VzdG9tRGFzaD09bnVsbD90LmRhc2hTdHlsZT9Rcih0LmRhc2hTdHlsZSxyKTpbXTpacih0LmN1c3RvbURhc2gsbnVsbCxyKSxhPXQubGluZUNhcD8/YGJ1dHRgLG89aS5zb21lKChlLHQpPT50JTI9PTAmJmU9PT0wKTtlLmxpbmVDYXA9YT09PWBidXR0YCYmbz9gc3F1YXJlYDphLGUubGluZUpvaW49dC5saW5lSm9pbj8/YG1pdGVyYCxlLm1pdGVyTGltaXQ9dC5taXRlckxpbWl0Pz8xMCxlLnNldExpbmVEYXNoKGkpfXZhciBjaSxsaSx1aT10KCgoKT0+e3FyKCksbmkoKSxjZSgpLGNpPTUxMixsaT1uZXcgV2Vha01hcH0pKSxkaT10KCgoKT0+e2NlKCl9KSk7ZnVuY3Rpb24gZmkoZSx0LG4scil7bGV0IGk9ZS54LGE9ZS55LG89dC54LHM9dC55LGM9bi54LGw9bi55LHU9ci54LGQ9ci55LGY9by1jLHA9dS1jLG09aS1vK2MtdSxoPXMtbCxnPWQtbCxfPWEtcytsLWQsdix5O2lmKE1hdGguYWJzKG0pPDFlLTEyJiZNYXRoLmFicyhfKTwxZS0xMil2PTAseT0wO2Vsc2V7bGV0IGU9ZipnLXAqaDtpZihNYXRoLmFicyhlKTwxZS0xMilyZXR1cm4gbnVsbDt2PShtKmctcCpfKS9lLHk9KGYqXy1tKmgpL2V9cmV0dXJuW28taSt2Km8sdS1pK3kqdSxpLHMtYSt2KnMsZC1hK3kqZCxhLHYseSwxXX1mdW5jdGlvbiBwaShlLHQsbil7bGV0IHI9ZVs2XSp0K2VbN10qbitlWzhdO3JldHVybnt4OihlWzBdKnQrZVsxXSpuK2VbMl0pL3IseTooZVszXSp0K2VbNF0qbitlWzVdKS9yfX1mdW5jdGlvbiBtaShlLHQpe2xldFtuLHIsaSxhLG8sc109ZSxbYyxsLHUsZCxmLHBdPXQ7cmV0dXJuW24qYytpKmwscipjK2EqbCxuKnUraSpkLHIqdSthKmQsbipmK2kqcCtvLHIqZithKnArc119ZnVuY3Rpb24gaGkoZSx0LG4scixpLGEsbyxzLGMsbCx1LGQsZil7bGV0IHA9Yy1vLG09bC1zO2lmKHA8PTB8fG08PTApcmV0dXJuO2xldCBoPShkLngtdS54KS9wLGc9KGQueS11LnkpL3AsXz0oZi54LXUueCkvbSx2PShmLnktdS55KS9tLHk9KE1hdGguaHlwb3QoZC54LXUueCxkLnktdS55KXx8MSkqYSxiPShNYXRoLmh5cG90KGYueC11LngsZi55LXUueSl8fDEpKmEseD1TaSpwL3ksUz1TaSptL2IsQz1NYXRoLm1heCgwLG8teCksdz1NYXRoLm1heCgwLHMtUyksVD1NYXRoLm1pbihuLGMreCksRT1NYXRoLm1pbihyLGwrUyksRD1ULUMsTz1FLXc7aWYoRDw9MHx8Tzw9MClyZXR1cm47ZS5zYXZlKCk7bGV0W2ssQSxqLE0sTixQXT1taShpLFtoLGcsXyx2LHUueC1vKmgtcypfLHUueS1vKmctcyp2XSk7ZS5zZXRUcmFuc2Zvcm0oayxBLGosTSxOLFApLGUuZHJhd0ltYWdlKHQsQyx3LEQsTyxDLHcsRCxPKSxlLnJlc3RvcmUoKX1mdW5jdGlvbiBnaShlLHQsbixyLGksYSxvLHMsYyxsLHUsZCxmLHApe2xldCBtPXBpKG8sYyxsKSxoPXBpKG8sdSxsKSxnPXBpKG8sYyxkKSxfPXBpKG8sdSxkKSx2PShjK3UpLzIseT0obCtkKS8yLGI9cGkobyx2LHkpLHg9e3g6KG0ueCtoLngrZy54K18ueCkvNCx5OihtLnkraC55K2cueStfLnkpLzR9LFM9dmkoaSksQz1NYXRoLmh5cG90KGIueC14LngsYi55LXgueSkqUztpZihwPD0wfHxDPD1mKXtsZXQgbz1zLngxLXMueDAsZj1zLnkxLXMueTA7aGkoZSx0LG4scixpLGEscy54MCtjKm8scy55MCtsKmYscy54MCt1Km8scy55MCtkKmYsbSxoLGcpO3JldHVybn11LWM+PWQtbD8oZ2koZSx0LG4scixpLGEsbyxzLGMsbCx2LGQsZixwLTEpLGdpKGUsdCxuLHIsaSxhLG8scyx2LGwsdSxkLGYscC0xKSk6KGdpKGUsdCxuLHIsaSxhLG8scyxjLGwsdSx5LGYscC0xKSxnaShlLHQsbixyLGksYSxvLHMsYyx5LHUsZCxmLHAtMSkpfWZ1bmN0aW9uIF9pKGUsdCxuLHIsaSxhPS41LG8pe2lmKG48PTB8fHI8PTApcmV0dXJuO2xldCBzPW8/P3t4MDowLHkwOjAseDE6bix5MTpyfTtpZighW3MueDAscy55MCxzLngxLHMueTFdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSl8fHMueDA8MHx8cy55MDwwfHxzLngxPm58fHMueTE+cnx8cy54MTw9cy54MHx8cy55MTw9cy55MClyZXR1cm47bGV0W2MsbCx1LGRdPWk7aWYoTWF0aC5hYnMoYy54KmwueS1sLngqYy55K2wueCp1LnktdS54KmwueSt1LngqZC55LWQueCp1LnkrZC54KmMueS1jLngqZC55KS8yPDFlLTYpcmV0dXJuO2xldCBmPWZpKGlbMF0saVsxXSxpWzJdLGlbM10pO2lmKCFmKXJldHVybjtsZXQgcD10LmdldFRyYW5zZm9ybSgpLG09W3AuYSxwLmIscC5jLHAuZCxwLmUscC5mXSxoPXZpKG0pO3hpKGUsdCxuLHIsaSxtLGgsZixzLGEsMTQpfHwoYmkoKSx0LnNhdmUoKSx0LmJlZ2luUGF0aCgpLHQubW92ZVRvKGlbMF0ueCxpWzBdLnkpLHQubGluZVRvKGlbMV0ueCxpWzFdLnkpLHQubGluZVRvKGlbMl0ueCxpWzJdLnkpLHQubGluZVRvKGlbM10ueCxpWzNdLnkpLHQuY2xvc2VQYXRoKCksdC5jbGlwKCksZ2kodCxlLG4scixtLGgsZixzLDAsMCwxLDEsYSwxNCksdC5yZXN0b3JlKCkpfWZ1bmN0aW9uIHZpKGUpe3JldHVybiBNYXRoLnNxcnQoTWF0aC5hYnMoZVswXSplWzNdLWVbMV0qZVsyXSkpfHwxfWZ1bmN0aW9uIHlpKGUsdCxuKXtsZXQgcj1maShlWzBdLGVbMV0sZVsyXSxlWzNdKTtyZXR1cm4gciYmcls2XSp0K3JbN10qbityWzhdPjFlLTk/cGkocix0LG4pOm51bGx9ZnVuY3Rpb24gYmkoKXtDaXx8KENpPSEwLHR5cGVvZiBjb25zb2xlPGB1YCYmdHlwZW9mIGNvbnNvbGUud2Fybj09YGZ1bmN0aW9uYCYmY29uc29sZS53YXJuKGBbb294bWxdIHNjZW5lM2Q6IG5vIG9mZnNjcmVlbiBjYW52YXMgYXZhaWxhYmxlIOKAlCB1c2luZyB0aGUgZGlyZWN0IHdhcnAgZmFsbGJhY2sgKHBlci1jZWxsIGJsZWVkIG9ubHksIG5vIHN1cGVyc2FtcGxlKS4gVGV4dHVyZWQtc291cmNlIHNlYW1zIG1heSBiZSBmYWludGx5IHZpc2libGU7IHRoZSBzaWxob3VldHRlIGFuZCBnZW9tZXRyeSBhcmUgdW5hZmZlY3RlZC5gKSl9ZnVuY3Rpb24geGkoZSx0LG4scixpLGEsbyxzLGMsbCx1KXtsZXQgZD1pLm1hcChlPT4oe3g6YVswXSplLngrYVsyXSplLnkrYVs0XSx5OmFbMV0qZS54K2FbM10qZS55K2FbNV19KSksZj0xLzAscD0xLzAsbT0tMS8wLGg9LTEvMDtmb3IobGV0IGUgb2YgZCllLng8ZiYmKGY9ZS54KSxlLnk8cCYmKHA9ZS55KSxlLng+bSYmKG09ZS54KSxlLnk+aCYmKGg9ZS55KTtmPU1hdGguZmxvb3IoZiktMSxwPU1hdGguZmxvb3IocCktMSxtPU1hdGguY2VpbChtKSsxLGg9TWF0aC5jZWlsKGgpKzE7bGV0IGc9bS1mLF89aC1wO2lmKGc8PTB8fF88PTApcmV0dXJuITE7bGV0IHY9TWF0aC5tYXgoMSxNYXRoLmNlaWwoZyp3aSkpLHk9TWF0aC5tYXgoMSxNYXRoLmNlaWwoXyp3aSkpLGI9b2Uodix5KTtpZighYnx8Yi53aWR0aCE9PXZ8fGIuaGVpZ2h0IT09eSlyZXR1cm4hMTtsZXQgeD1iLmdldENvbnRleHQoYDJkYCk/P251bGw7aWYoIXgpcmV0dXJuITE7bGV0IFM9d2ksQz1bYVswXSpTLGFbMV0qUyxhWzJdKlMsYVszXSpTLChhWzRdLWYpKlMsKGFbNV0tcCkqU107eC5zYXZlKCkseC5zZXRUcmFuc2Zvcm0oQ1swXSxDWzFdLENbMl0sQ1szXSxDWzRdLENbNV0pLHguYmVnaW5QYXRoKCkseC5tb3ZlVG8oaVswXS54LGlbMF0ueSkseC5saW5lVG8oaVsxXS54LGlbMV0ueSkseC5saW5lVG8oaVsyXS54LGlbMl0ueSkseC5saW5lVG8oaVszXS54LGlbM10ueSkseC5jbG9zZVBhdGgoKSx4LmNsaXAoKSxnaSh4LGUsbixyLEMsbyxzLGMsMCwwLDEsMSxsKlMsdSkseC5yZXN0b3JlKCksdC5zYXZlKCksdC5zZXRUcmFuc2Zvcm0oMSwwLDAsMSwwLDApO2xldCB3PXQuaW1hZ2VTbW9vdGhpbmdFbmFibGVkLFQ9dC5pbWFnZVNtb290aGluZ1F1YWxpdHk7cmV0dXJuIHQuaW1hZ2VTbW9vdGhpbmdFbmFibGVkPSEwLHQuaW1hZ2VTbW9vdGhpbmdRdWFsaXR5PWBoaWdoYCx0LmRyYXdJbWFnZShiLDAsMCxnKlMsXypTLGYscCxnLF8pLHQuaW1hZ2VTbW9vdGhpbmdFbmFibGVkPXcsdC5pbWFnZVNtb290aGluZ1F1YWxpdHk9VCx0LnJlc3RvcmUoKSwhMH12YXIgU2ksQ2ksd2ksVGk9dCgoKCk9PntkaSgpLFNpPTEsQ2k9ITEsd2k9Mn0pKTtmdW5jdGlvbiBFaShlLHQpe2lmKCF0fHwhW3QubCx0LnQsdC5yLHQuYl0uc29tZShlPT4oZT8/MCkhPT0wKSlyZXR1cm4gZTtsZXQgbj10Lmw/PzAscj10LnQ/PzAsaT0xLSh0LnI/PzApLGE9MS0odC5iPz8wKSxvPVt5aShlLG4scikseWkoZSxpLHIpLHlpKGUsaSxhKSx5aShlLG4sYSldO3JldHVybiBvLmV2ZXJ5KGU9PmUhPW51bGwpP286bnVsbH1mdW5jdGlvbiBEaShlLHQpe2lmKGUubGVuZ3RoIT09NClyZXR1cm4gbnVsbDtsZXQgbj1lLm1hcCgoZSxuKT0+KHtzY2VuZVBvaW50OmUscHJvamVjdGVkOnQoZSksaW5kZXg6bn0pKS5zb3J0KChlLHQpPT5lLnByb2plY3RlZC55LXQucHJvamVjdGVkLnl8fGUucHJvamVjdGVkLngtdC5wcm9qZWN0ZWQueCkscj1uLnNsaWNlKDAsMikuc29ydCgoZSx0KT0+ZS5wcm9qZWN0ZWQueC10LnByb2plY3RlZC54KSxpPW4uc2xpY2UoMikuc29ydCgoZSx0KT0+ZS5wcm9qZWN0ZWQueC10LnByb2plY3RlZC54KTtyZXR1cm4gbmV3IFNldChbLi4uciwuLi5pXS5tYXAoZT0+ZS5pbmRleCkpLnNpemU9PT00P1tyWzBdLnNjZW5lUG9pbnQsclsxXS5zY2VuZVBvaW50LGlbMV0uc2NlbmVQb2ludCxpWzBdLnNjZW5lUG9pbnRdOm51bGx9ZnVuY3Rpb24gT2koZSx0LG4scil7aWYoZS50aGlja25lc3M9PT0wJiZuPT09MClyZXR1cm5bZS5pbm5lclszXSxlLmlubmVyWzJdLGUuaW5uZXJbMV0sZS5pbm5lclswXV07bGV0IGk9RGkoZS5mYWNlc1tuXT8/W10scik7cmV0dXJuIWl8fHQhPT1gYmFja1dhbGxgfHxuIT09ND9pOltpWzFdLGlbMl0saVszXSxpWzBdXX1mdW5jdGlvbiBraShlLHQsbil7aWYoIShlIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUoZSkmJmU+MCl8fCEodD4wKXx8IShuPjApKXJldHVybiBudWxsO2xldCByPWUqbi90O3JldHVybiBOdW1iZXIuaXNGaW5pdGUocikmJnI+MD9yOm51bGx9ZnVuY3Rpb24gQWkoZSx0LG4pe3JldHVybiBNYXRoLmh5cG90KGUueC10LngsZS55LXQueSwoZS5kZXB0aC10LmRlcHRoKSpuKX1mdW5jdGlvbiBqaShlLHQsbixyLGksYSxvLHMsYyl7bGV0IGw9aHIodCxyLGksYyk7aWYoIWx8fGEuaW5uZXIubGVuZ3RoIT09NClyZXR1cm4hMTtsZXQgdT1udChuKTtpZighKHUudz4wKXx8ISh1Lmg+MCkpcmV0dXJuITE7bGV0IGQ9cnQobix0LnNyY1JlY3QpLGY9ZD97eDA6ZC5zeCx5MDpkLnN5LHgxOmQuc3grZC5zdyx5MTpkLnN5K2Quc2h9OnZvaWQgMCxwPVtzKGEuaW5uZXJbM10pLHMoYS5pbm5lclsyXSkscyhhLmlubmVyWzFdKSxzKGEuaW5uZXJbMF0pXSxtPShlLHQsbik9Pih7eDplLngrKHQueC1lLngpKm4seTplLnkrKHQueS1lLnkpKm4sZGVwdGg6ZS5kZXB0aCsodC5kZXB0aC1lLmRlcHRoKSpufSksaD0oZSx0LG4pPT5bcyhtKGVbM10sZVswXSxuKSkscyhtKGVbMl0sZVsxXSxuKSkscyhtKGVbMl0sZVsxXSx0KSkscyhtKGVbM10sZVswXSx0KSldLGc9bC5tb2RlPT09YHN0YWNrYD9raShhLnBpY3R1cmVTdGFja0FzcGVjdCx1LncsdS5oKTpudWxsLF89bC5tb2RlPT09YHRpbGVgP0NyKHQsbik6bnVsbCx2PVtdO2lmKGwubW9kZT09PWBzdGFja2Ape2lmKGc9PW51bGwpcmV0dXJuITE7bGV0IGU9MCx0PSExO2ZvcihsZXQgbiBvZiBvKXtpZighY3IobCxuKXx8IU9pKGEsaSxuLHMpKWNvbnRpbnVlO2xldCByPWxyKGwsbik/TWF0aC5jZWlsKDEvZyk6MTtpZighTnVtYmVyLmlzU2FmZUludGVnZXIocil8fHI8MXx8KGUrPXIsZT40MDk2KSlyZXR1cm4hMTt0PSEwfWlmKCF0KXJldHVybiExfWlmKGwubW9kZT09PWB0aWxlYCl7aWYoIV8pcmV0dXJuITE7bGV0IHQ9MCxuPTAscj0hMTtmb3IobGV0IGMgb2Ygbyl7aWYoIWNyKGwsYykpY29udGludWU7bGV0IG89T2koYSxpLGMscyk7aWYoIW8pY29udGludWU7bGV0IHU9QWkob1swXSxvWzFdLGEubW9kZWxEZXB0aCksZD1BaShvWzBdLG9bM10sYS5tb2RlbERlcHRoKTtpZighKHU+MCl8fCEoZD4wKSljb250aW51ZTtsZXQgZj13cihfLHUsZCkscD1NYXRoLmZsb29yKC1mLngvXy50aWxlVyksbT1NYXRoLmZsb29yKC1mLnkvXy50aWxlSCksaD1NYXRoLmNlaWwoKHUtZi54KS9fLnRpbGVXKSxnPU1hdGguY2VpbCgoZC1mLnkpL18udGlsZUgpLHk9TWF0aC5tYXgoMCxoLXApKk1hdGgubWF4KDAsZy1tKTtpZighTnVtYmVyLmlzU2FmZUludGVnZXIoeSl8fCh0Kz15LHQ+NDA5NikpcmV0dXJuITE7aWYoeT09PTApY29udGludWU7bGV0IGI9TWF0aC5jZWlsKHUpLHg9TWF0aC5jZWlsKGQpO2lmKCEoYj4wJiZiPD0zMjc2Nyl8fCEoeD4wJiZ4PD0zMjc2Nyl8fGI+TWF0aC5mbG9vcigoMTY3NzcyMTYtbikveCkpcmV0dXJuITE7bis9Yip4O2xldCBTPXNlKGUsYix4KSxDPVM/LmdldENvbnRleHQoYDJkYCk7aWYoIVN8fCFDKXJldHVybiExO3YucHVzaCh7ZmFjZUluZGV4OmMsd2lkdGg6dSxoZWlnaHQ6ZCxvcmlnaW46ZixmaXJzdENvbHVtbjpwLGZpcnN0Um93Om0sbGFzdENvbHVtbjpoLGxhc3RSb3c6ZyxjYW52YXM6Uyxjb250ZXh0OkN9KSxyPSEwfWlmKCFyKXJldHVybiExfWlmKGUuc2F2ZSgpLHQuYWxwaGEhPW51bGwmJihlLmdsb2JhbEFscGhhKj10LmFscGhhKSxsLm1vZGU9PT1gc3RyZXRjaGApZm9yKGxldCByIG9mIG8pe2lmKCFjcihsLHIpKWNvbnRpbnVlO2xldCBvPU9pKGEsaSxyLHMpLGM9YS50aGlja25lc3M9PT0wJiZyPT09MD9wOm8/Lm1hcChzKTtpZighYyljb250aW51ZTtsZXQgbT1FaShjLHQuZmlsbFJlY3QpO2lmKCFtKWNvbnRpbnVlO2xldCBoPWQ/RWkobSx7bDpkLmR4RnJhY3Rpb24sdDpkLmR5RnJhY3Rpb24scjoxLWQuZHhGcmFjdGlvbi1kLmR3RnJhY3Rpb24sYjoxLWQuZHlGcmFjdGlvbi1kLmRoRnJhY3Rpb259KTptO2lmKGgpe2Uuc2F2ZSgpLGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8oY1swXS54LGNbMF0ueSk7Zm9yKGxldCB0PTE7dDxjLmxlbmd0aDt0KyspZS5saW5lVG8oY1t0XS54LGNbdF0ueSk7ZS5jbG9zZVBhdGgoKSxlLmNsaXAoKSxfaShuLGUsdS53LHUuaCxoLC41LGYpLGUucmVzdG9yZSgpfX1lbHNlIGZvcihsZXQgciBvZiBvKXtpZighY3IobCxyKSljb250aW51ZTtsZXQgbz1PaShhLGkscixzKTtpZighbyljb250aW51ZTtsZXQgZD1vLm1hcChzKTtlLnNhdmUoKSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKGRbMF0ueCxkWzBdLnkpO2ZvcihsZXQgdD0xO3Q8ZC5sZW5ndGg7dCsrKWUubGluZVRvKGRbdF0ueCxkW3RdLnkpO2UuY2xvc2VQYXRoKCksZS5jbGlwKCk7bGV0IHA9dXIobCxyKTtpZihsLm1vZGU9PT1gdGlsZWApe2lmKCFfKWNvbnRpbnVlO2xldCBpPXYuZmluZChlPT5lLmZhY2VJbmRleD09PXIpO2lmKCFpKWNvbnRpbnVlO2xldCBhPWkuY2FudmFzLndpZHRoL2kud2lkdGgsbz1pLmNhbnZhcy5oZWlnaHQvaS5oZWlnaHQ7aS5jb250ZXh0LnNhdmUoKSxpLmNvbnRleHQuc2NhbGUoYSxvKTtmb3IobGV0IGU9aS5maXJzdFJvdztlPGkubGFzdFJvdztlKyspZm9yKGxldCByPWkuZmlyc3RDb2x1bW47cjxpLmxhc3RDb2x1bW47cisrKXtsZXQgYT1pLm9yaWdpbi54K3IqXy50aWxlVyxvPWkub3JpZ2luLnkrZSpfLnRpbGVILHM9Xy5mbGlwWCYmTWF0aC5hYnMociklMj09MSxjPV8uZmxpcFkmJk1hdGguYWJzKGUpJTI9PTE7aS5jb250ZXh0LnNhdmUoKSxpLmNvbnRleHQudHJhbnNsYXRlKGErKHM/Xy50aWxlVzowKSxvKyhjP18udGlsZUg6MCkpLGkuY29udGV4dC5zY2FsZShzPy0xOjEsYz8tMToxKSxpdChpLmNvbnRleHQsbix0LnNyY1JlY3QsMCwwLF8udGlsZVcsXy50aWxlSCksaS5jb250ZXh0LnJlc3RvcmUoKX1pLmNvbnRleHQucmVzdG9yZSgpLF9pKGkuY2FudmFzLGUsaS5jYW52YXMud2lkdGgsaS5jYW52YXMuaGVpZ2h0LGQsLjUpfWVsc2UgaWYobC5tb2RlPT09YHN0YWNrYCl7aWYoZz09bnVsbCljb250aW51ZTtpZihscihsLHIpKWZvcihsZXQgdD0wO3Q8TWF0aC5jZWlsKDEvZyk7dCsrKV9pKG4sZSx1LncsdS5oLGgobyx0KmcsKHQrMSkqZyksLjUsZik7ZWxzZSBfaShuLGUsdS53LHUuaCxkLC41LGYpfWVsc2UgaWYobC5zdGFja1VuaXQhPW51bGwmJmRyKGwscikpZm9yKGxldCB0PTA7dDxwO3QrKyl7bGV0IHI9dCpsLnN0YWNrVW5pdC9jLGk9KHQrMSkqbC5zdGFja1VuaXQvYztfaShuLGUsdS53LHUuaCxoKG8scixpKSwuNSxmKX1lbHNlIGwuc3RhY2tVbml0IT1udWxsJiZfaShuLGUsdS53LHUuaCxkLC41LGYpO2UucmVzdG9yZSgpfXJldHVybiBlLnJlc3RvcmUoKSwhMH12YXIgTWk9dCgoKCk9PntjZSgpLFVyKCksc3QoKSxUaSgpLHpyKCksZ3IoKSxxbigpfSkpO2Z1bmN0aW9uIE5pKGUsdCl7aWYoIWUpcmV0dXJuIHQ/P3ZvaWQgMDtpZighdClyZXR1cm4gZTtsZXQgbj1lLmZpbGxQYWludEF1dGhvcmVkPT09ITB8fGUuZmlsbCE9bnVsbHx8ZS5maWxsUGFpbnQhPW51bGx8fGUuZmlsbEhpZGRlbj09PSEwLHI9ZS5ib3JkZXJQYWludEF1dGhvcmVkPT09ITB8fGUuYm9yZGVyQ29sb3IhPW51bGx8fGUuYm9yZGVyRmlsbCE9bnVsbHx8ZS5ib3JkZXJIaWRkZW49PT0hMCxpPWUuYm9yZGVyRGFzaEF1dGhvcmVkPT09ITB8fGUuYm9yZGVyRGFzaCE9bnVsbHx8ZS5ib3JkZXJDdXN0b21EYXNoIT1udWxsO3JldHVybnsuLi50LC4uLmUsZmlsbDpuP2UuZmlsbDp0LmZpbGwsZmlsbFBhaW50Om4/ZS5maWxsUGFpbnQ6dC5maWxsUGFpbnQsZmlsbEhpZGRlbjpuP2UuZmlsbEhpZGRlbjp0LmZpbGxIaWRkZW4sZmlsbFBhaW50QXV0aG9yZWQ6bj9lLmZpbGxQYWludEF1dGhvcmVkOnQuZmlsbFBhaW50QXV0aG9yZWQsYm9yZGVyQ29sb3I6cj9lLmJvcmRlckNvbG9yOnQuYm9yZGVyQ29sb3IsYm9yZGVyRmlsbDpyP2UuYm9yZGVyRmlsbDp0LmJvcmRlckZpbGwsYm9yZGVySGlkZGVuOnI/ZS5ib3JkZXJIaWRkZW46dC5ib3JkZXJIaWRkZW4sYm9yZGVyUGFpbnRBdXRob3JlZDpyP2UuYm9yZGVyUGFpbnRBdXRob3JlZDp0LmJvcmRlclBhaW50QXV0aG9yZWQsYm9yZGVyV2lkdGhFbXU6ZS5ib3JkZXJXaWR0aEVtdT8/dC5ib3JkZXJXaWR0aEVtdSxib3JkZXJEYXNoOmk/ZS5ib3JkZXJEYXNoOnQuYm9yZGVyRGFzaCxib3JkZXJDdXN0b21EYXNoOmk/ZS5ib3JkZXJDdXN0b21EYXNoOnQuYm9yZGVyQ3VzdG9tRGFzaCxib3JkZXJEYXNoQXV0aG9yZWQ6aT9lLmJvcmRlckRhc2hBdXRob3JlZDp0LmJvcmRlckRhc2hBdXRob3JlZCxib3JkZXJDYXA6ZS5ib3JkZXJDYXA/P3QuYm9yZGVyQ2FwLGJvcmRlckpvaW46ZS5ib3JkZXJKb2luPz90LmJvcmRlckpvaW4sYm9yZGVyQ29tcG91bmQ6ZS5ib3JkZXJDb21wb3VuZD8/dC5ib3JkZXJDb21wb3VuZH19ZnVuY3Rpb24gUGkoZSx0LG4scixpPTApe2lmKCF0KXJldHVybjtpZih0LmZpbGxIaWRkZW4hPT0hMCl7bGV0IHI9dC5maWxsUGFpbnQ/YWkodC5maWxsUGFpbnQsZSxuLngsbi55LG4udyxuLmgsaSk6dC5maWxsP2AjJHt0LmZpbGx9YDpudWxsO3ImJihlLmZpbGxTdHlsZT1yLGUuZmlsbFJlY3Qobi54LG4ueSxuLncsbi5oKSl9aWYodC5ib3JkZXJIaWRkZW49PT0hMClyZXR1cm47bGV0IGE9dC5ib3JkZXJGaWxsP2FpKHQuYm9yZGVyRmlsbCxlLG4ueCxuLnksbi53LG4uaCxpKTp0LmJvcmRlckNvbG9yP2AjJHt0LmJvcmRlckNvbG9yfWA6bnVsbDthJiYoZS5zYXZlKCksZS5zdHJva2VTdHlsZT1hLGUubGluZVdpZHRoPXQuYm9yZGVyV2lkdGhFbXU9PW51bGw/TWF0aC5tYXgoLjI1LC43NSpyKTpNYXRoLm1heCguMjUsdC5ib3JkZXJXaWR0aEVtdS9jdCpyKSxlLnNldExpbmVEYXNoKFpyKHQuYm9yZGVyQ3VzdG9tRGFzaCx0LmJvcmRlckRhc2gsZS5saW5lV2lkdGgpKSx0LmJvcmRlckNhcD09PWBybmRgP2UubGluZUNhcD1gcm91bmRgOnQuYm9yZGVyQ2FwPT09YHNxYD9lLmxpbmVDYXA9YHNxdWFyZWA6dC5ib3JkZXJDYXA9PT1gZmxhdGAmJihlLmxpbmVDYXA9YGJ1dHRgKSx0LmJvcmRlckpvaW49PT1gcm91bmRgP2UubGluZUpvaW49YHJvdW5kYDp0LmJvcmRlckpvaW49PT1gYmV2ZWxgP2UubGluZUpvaW49YGJldmVsYDp0LmJvcmRlckpvaW49PT1gbWl0ZXJgJiYoZS5saW5lSm9pbj1gbWl0ZXJgKSxlLnN0cm9rZVJlY3Qobi54LG4ueSxuLncsbi5oKSxlLnJlc3RvcmUoKSl9dmFyIEZpPXQoKCgpPT57bmkoKSx1aSgpLHB0KCl9KSk7ZnVuY3Rpb24gSWkoZSx0KXtpZighTnVtYmVyLmlzRmluaXRlKGUpfHxlPD0wKXJldHVybltdO2xldCBuPXQ9PT1gZGJsYD9bMSwxLDFdOnQ9PT1gdGhpblRoaWNrYD9bMSwxLDNdOnQ9PT1gdGhpY2tUaGluYD9bMywxLDFdOnQ9PT1gdHJpYD9bMSwxLDIsMSwxXTpbMV0scj1lL24ucmVkdWNlKChlLHQpPT5lK3QsMCksaT1bXSxhPTA7Zm9yKGxldCBlPTA7ZTxuLmxlbmd0aDtlKz0yKXtsZXQgdD1uW2VdKnI7aS5wdXNoKHtjZW50ZXI6YSt0LzIsd2lkdGg6dH0pLGErPXQrKG5bZSsxXT8/MCkqcn1yZXR1cm4gaX1mdW5jdGlvbiBMaShlLHQsbixyLGksYSl7bGV0IG89TWF0aC5tYXgoMCxNYXRoLm1pbihhLHIvMixpLzIpKTtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHQrbyxuKSxlLmxpbmVUbyh0K3ItbyxuKSxlLnF1YWRyYXRpY0N1cnZlVG8odCtyLG4sdCtyLG4rbyksZS5saW5lVG8odCtyLG4raS1vKSxlLnF1YWRyYXRpY0N1cnZlVG8odCtyLG4raSx0K3ItbyxuK2kpLGUubGluZVRvKHQrbyxuK2kpLGUucXVhZHJhdGljQ3VydmVUbyh0LG4raSx0LG4raS1vKSxlLmxpbmVUbyh0LG4rbyksZS5xdWFkcmF0aWNDdXJ2ZVRvKHQsbix0K28sbiksZS5jbG9zZVBhdGgoKX1mdW5jdGlvbiBSaShlLHQsbixyLGksYSxvLHM9MCl7aWYocj4wJiZpPjApZm9yKGxldCBjIG9mIElpKGEsbykpe2xldCBhPU1hdGgubWF4KDAsci1jLmNlbnRlcioyKSxvPU1hdGgubWF4KDAsaS1jLmNlbnRlcioyKTthPjAmJm8+MCYmKGUubGluZVdpZHRoPWMud2lkdGgscz4wPyhMaShlLHQrYy5jZW50ZXIsbitjLmNlbnRlcixhLG8sTWF0aC5tYXgoMCxzLWMuY2VudGVyKSksZS5zdHJva2UoKSk6ZS5zdHJva2VSZWN0KHQrYy5jZW50ZXIsbitjLmNlbnRlcixhLG8pKX19dmFyIHppPXQoKCgpPT57fSkpO2Z1bmN0aW9uIEJpKGUsdD17bWluOjAsbWF4OjF9KXtsZXQgbj0xLzAscj0tMS8wO2ZvcihsZXQgdCBvZiBlKXQ9PW51bGx8fCFOdW1iZXIuaXNGaW5pdGUodCl8fCh0PG4mJihuPXQpLHQ+ciYmKHI9dCkpO3JldHVybiBOdW1iZXIuaXNGaW5pdGUobikmJk51bWJlci5pc0Zpbml0ZShyKT97bWluOm4sbWF4OnJ9OnR9ZnVuY3Rpb24gVmkoZSx0PTUpe2lmKGU9PT0wKXJldHVybiAxO2xldCBuPWUvdCxyPTEwKipNYXRoLmZsb29yKE1hdGgubG9nMTAobikpLGk9bi9yO3JldHVybihpPDEuNT8xOmk8My41PzI6aTw3LjU/NToxMCkqcn1mdW5jdGlvbiBIaShlLHQsbixyKXtsZXQgaT1OdW1iZXIuaXNGaW5pdGUoZSk/ZTowLGE9TnVtYmVyLmlzRmluaXRlKHQpP3Q6MTAwLG89YT5pP2EtaToxMDAscz1pPDAmJmE+MCxjPW49PT1gaG9yaXpvbnRhbGB8fHI9PW51bGx8fCFOdW1iZXIuaXNGaW5pdGUocil8fHI8MTIwP3M/NDo1OjEwO3JldHVybiBHaShhPmk/SmkoaSxhLGMpOm8vYyl9ZnVuY3Rpb24gVWkoZSx0LG4pe2xldCByPU51bWJlci5pc0Zpbml0ZShlKT9lOjAsaT1OdW1iZXIuaXNGaW5pdGUodCk/dDoxLGE9aT5yP251bGw6MSxvPW4hPW51bGwmJk51bWJlci5pc0Zpbml0ZShuKT9uPDQ1PzQ6bjw5MD84OjEwOjg7cmV0dXJuIEdpKGk+cj9KaShyLGksbyk6KGE/PzEpL28pfWZ1bmN0aW9uIFdpKGUsdCxuKXtsZXQgcj1OdW1iZXIuaXNGaW5pdGUoZSk/ZTowLGk9TnVtYmVyLmlzRmluaXRlKHQpP3Q6MTtyZXR1cm4gR2koKGk+cj9pLXI6MSkvKG4hPW51bGwmJk51bWJlci5pc0Zpbml0ZShuKSYmbj4wP01hdGgubWF4KDUsTWF0aC5yb3VuZChuLzI4KSk6NSkpfWZ1bmN0aW9uIEdpKGUpe2lmKCEoZT4wKXx8IWlzRmluaXRlKGUpKXJldHVybiAxO2xldCB0PTEwKipNYXRoLmZsb29yKE1hdGgubG9nMTAoZSkpO2lmKCEodD4wKXx8IWlzRmluaXRlKHQpKXJldHVybiBlO2xldCBuPWUvdCxyPW48PTE/MTpuPD0yPzI6bjw9NT81OjEwO3JldHVybiBNYXRoLm1pbihOdW1iZXIuTUFYX1ZBTFVFLHIqdCl9ZnVuY3Rpb24gS2koZSl7cmV0dXJuIGUhPW51bGwmJmlzRmluaXRlKGUpP2U6bnVsbH1mdW5jdGlvbiBxaShlKXtyZXR1cm4gZSE9bnVsbCYmaXNGaW5pdGUoZSkmJmU+MD9lOm51bGx9ZnVuY3Rpb24gSmkoZSx0LG4pe2xldCByPXQtZSxpPWlzRmluaXRlKHIpP3Ivbjp0L24tZS9uO3JldHVybiBpPjAmJmlzRmluaXRlKGkpP2k6cj4wJiZpc0Zpbml0ZShyKT9OdW1iZXIuTUlOX1ZBTFVFOk51bWJlci5NQVhfVkFMVUV9ZnVuY3Rpb24gWWkoZSx0LG4pe2lmKCFpc0Zpbml0ZShlKXx8IWlzRmluaXRlKHQpfHwhKHQ+PWUpfHwhKG4+MCl8fCFpc0Zpbml0ZShuKSlyZXR1cm4gMDtsZXQgcj10LWUsaT1pc0Zpbml0ZShyKT9yL246dC9uLWUvbjtyZXR1cm4haXNGaW5pdGUoaSl8fGk+MioqNTMtMT8xLzA6TWF0aC5tYXgoMSxNYXRoLmZsb29yKGkrMWUtOSkrMSl9ZnVuY3Rpb24gWGkoZSx0LG4scixpKXtsZXQgYT1ZaShlLHQsbik7aWYoYT09PTB8fGE+NTEyJiZyPT09YHNraXBgKXJldHVybltdO2xldCBvPU1hdGgubWluKGEsNTEyKSxzPVtdLGM9dC1lLGw9TWF0aC5tYXgoTWF0aC5hYnMobiksaXNGaW5pdGUoYyk/TWF0aC5hYnMoYyk6TWF0aC5tYXgoTWF0aC5hYnMoZSksTWF0aC5hYnModCkpKSoxZS05LHU9LTEvMDtmb3IobGV0IHI9MDtyPG87cisrKXtsZXQgYT1yKm4sbz1lK2E7aWYoKCFpc0Zpbml0ZShhKXx8IWlzRmluaXRlKG8pfHxyPjAmJiEobz51KSkmJihvPShlL24rcikqbiksIWlzRmluaXRlKG8pfHxvPnQrbHx8cj4wJiYhKG8+dSkpYnJlYWs7aWYodT1vLGkhPW51bGwpe2lmKG8+PXQtbClicmVhaztsZXQgbj1vLWUscj1pc0Zpbml0ZShuKT9uL2k6by9pLWUvaTtpZihpc0Zpbml0ZShyKSYmTWF0aC5hYnMoci1NYXRoLnJvdW5kKHIpKTw9MWUtOCljb250aW51ZX1zLnB1c2gobyl9cmV0dXJuIHN9ZnVuY3Rpb24gWmkoZSl7bGV0IHQ9aXNGaW5pdGUoZS5kYXRhTWluKT9lLmRhdGFNaW46MCxuPWlzRmluaXRlKGUuZGF0YU1heCk/ZS5kYXRhTWF4OjE7dD5uJiYoW3Qsbl09W24sdF0pO2xldCByLGksYTtpZih0PT09MCYmbj09PTApcj0wLGk9MSxhPS4xO2Vsc2V7dD09PW4mJih0PU1hdGgubWluKDAsdCksbj1NYXRoLm1heCgwLG4pKTtsZXQgZT10Pj0wJiYodD09PTB8fG4+MS4yKnQpLG89bjw9MCYmKG49PT0wfHxNYXRoLmFicyh0KT4xLjIqTWF0aC5hYnMobikpLHM9ZT8wOnQsYz1vPzA6bixsPWMtcyx1PWlzRmluaXRlKGwpP2wqLjA1OmMqLjA1LXMqLjA1LGQ9ZT8wOnQtdSxmPW8/MDpuK3U7YT1HaShmLzEwLWQvMTApLHI9TWF0aC5mbG9vcihkL2EpKmEsaT1NYXRoLmNlaWwoZi9hKSphLCghaXNGaW5pdGUocil8fCFpc0Zpbml0ZShpKXx8IShpPnIpKSYmKHI9TWF0aC5taW4odCwwKSxpPU1hdGgubWF4KG4scithKSl9bGV0IG89S2koZS5leHBsaWNpdE1pbikscz1LaShlLmV4cGxpY2l0TWF4KSxjPXFpKGUubWFqb3JVbml0KSxsPW8/PyhjPT1udWxsP3I6TWF0aC5mbG9vcihyL2MpKmMpLHU9cz8/KGM9PW51bGw/aTpNYXRoLmNlaWwoaS9jKSpjKSxkPWE7aWYoYz09bnVsbCYmbyE9bnVsbCYmcyE9bnVsbCYmcz5vKXtpZihlLmF4aXNPcmllbnRhdGlvbj09PWBob3Jpem9udGFsYClkPUdpKEppKG8scyxlLmF4aXNMZW5QdCE9bnVsbCYmaXNGaW5pdGUoZS5heGlzTGVuUHQpJiZlLmF4aXNMZW5QdD4wP01hdGgubWF4KDUsTWF0aC5yb3VuZChlLmF4aXNMZW5QdC8zOCkpOjgpKTtlbHNlIGlmKGUuYXhpc09yaWVudGF0aW9uPT09YHZlcnRpY2FsYCl7bGV0IHQ9ZS5heGlzTGVuUHQhPW51bGwmJmlzRmluaXRlKGUuYXhpc0xlblB0KSYmZS5heGlzTGVuUHQ+MD9NYXRoLm1heCg1LE1hdGgucm91bmQoZS5heGlzTGVuUHQvMjgpKTo3O2Q9TWF0aC5tYXgoR2koSmkobyxzLDEwKSksTWF0aC5taW4oTnVtYmVyLk1BWF9WQUxVRSxWaShKaShvLHMsdCksMSkpKX19bGV0IGY9Yz8/ZDtjPT1udWxsJiZZaShsLHUsZik+NTEyJiYoZj1HaSh1LzUxMS1sLzUxMSkpO2xldCBwPXFpKGUubWlub3JVbml0KTtlLm5lZWRNaW5vciYmYz09bnVsbCYmcD09bnVsbCYmWWkobCx1LGYvNSk+NTEyJiYoZj1HaSh1LzEwMi1sLzEwMikpO2xldCBtPWYvNSxoPWUubmVlZE1pbm9yP3A/PyhtPjAmJmlzRmluaXRlKG0pP206Zik6bnVsbCxnPVhpKGwsdSxmLGM9PW51bGw/YHNraXBgOmB0cnVuY2F0ZWApLF89aD09bnVsbD9bXTpYaShsLHUsaCxgc2tpcGAsZik7cmV0dXJue21pbjpsLG1heDp1LG1ham9yVW5pdDpmLG1pbm9yVW5pdDpoLG1ham9yVGlja3M6ZyxtaW5vclRpY2tzOl99fWZ1bmN0aW9uIFFpKGUsdCxuLHIpe2xldCBpLGE9cj8ubG9nQmFzZTtpZihhIT1udWxsJiZpc0Zpbml0ZShhKSYmYT49MiYmdD4wJiZuPjApe2xldCByPU1hdGgubG9nKHQpLGE9TWF0aC5sb2cobiktcjtpPWE9PT0wPzA6KE1hdGgubG9nKE1hdGgubWF4KGUsTnVtYmVyLk1JTl9WQUxVRSkpLXIpL2F9ZWxzZXtsZXQgcj1uLXQ7aWYocj09PTApaT0wO2Vsc2UgaWYoTnVtYmVyLmlzRmluaXRlKHIpJiZOdW1iZXIuaXNGaW5pdGUoZS10KSlpPShlLXQpL3I7ZWxzZXtsZXQgcj1NYXRoLm1heChNYXRoLmFicyhlKSxNYXRoLmFicyh0KSxNYXRoLmFicyhuKSksYT1uL3ItdC9yO2k9YT09PTA/MDooZS9yLXQvcikvYX19cmV0dXJuIHI/LnJldmVyc2VkPzEtaTppfWZ1bmN0aW9uICRpKGUsdCxuLHIsaSl7bGV0IGE9aXNGaW5pdGUobikmJm4+PTI/bjoxMCxvPWU9Pk1hdGgubG9nKGUpL01hdGgubG9nKGEpLHM9dD4wP3Q6MSxjPU1hdGguZmxvb3IobyhlPjA/ZTpzKSksbD1NYXRoLmNlaWwobyhzKSksdT1lPT57bGV0IHQ9YSoqK2U7cmV0dXJuIHQ9PT0wP051bWJlci5NSU5fVkFMVUU6aXNGaW5pdGUodCk/dDpOdW1iZXIuTUFYX1ZBTFVFfSxkPXI/P3UoYyksZj1pPz91KE1hdGgubWF4KGwsYysxKSkscD1bXSxtPU1hdGguY2VpbChvKGQpLTFlLTkpLGg9TWF0aC5mbG9vcihvKGYpKzFlLTkpO2lmKCFpc0Zpbml0ZShtKXx8IWlzRmluaXRlKGgpfHxoPG0pcmV0dXJue21pbjpkLG1heDpmLGxpbmVzOnB9O2xldCBnPWgtbSsxLF89TWF0aC5tYXgoMSxNYXRoLmNlaWwoKGctMSkvNTExKSksdj1NYXRoLm1pbig1MTIsTWF0aC5mbG9vcigoZy0xKS9fKSsxKTtmb3IobGV0IGU9MDtlPHY7ZSsrKXtsZXQgdD11KG0rZSpfKTt0Pj1kJiZ0PD1mJiYocC5sZW5ndGg9PT0wfHx0PnBbcC5sZW5ndGgtMV0pJiZwLnB1c2godCl9bGV0IHk9dShoKTtyZXR1cm4gcC5sZW5ndGg8NTEyJiZ5Pj1kJiZ5PD1mJiZ5PihwW3AubGVuZ3RoLTFdPz8wKSYmcC5wdXNoKHkpLHttaW46ZCxtYXg6ZixsaW5lczpwfX1mdW5jdGlvbiBlYShlKXtsZXQgdD1lLmxvZ0Jhc2U7aWYodCE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKHQpJiZ0Pj0yKXtsZXR7bWluOm4sbWF4OnIsbGluZXM6aX09JGkoZS5kYXRhTWluLGUuZGF0YU1heCx0LEtpKGUuZXhwbGljaXRNaW4pLEtpKGUuZXhwbGljaXRNYXgpKTtyZXR1cm57bWluOm4sbWF4OnIsbWFqb3JVbml0OmkubGVuZ3RoPjE/aVsxXS1pWzBdOnItbixtaW5vclVuaXQ6bnVsbCxtYWpvclRpY2tzOmksbWlub3JUaWNrczpbXSxmcmFjdGlvbjppPT5RaShpLG4scix7bG9nQmFzZTp0LHJldmVyc2VkOmUucmV2ZXJzZWR9KX19bGV0IG49WmkoZSk7cmV0dXJuey4uLm4sZnJhY3Rpb246dD0+UWkodCxuLm1pbixuLm1heCx7cmV2ZXJzZWQ6ZS5yZXZlcnNlZH0pfX1mdW5jdGlvbiB0YShlLHQsbil7bGV0IHI9TWF0aC5taW4oZS5sZW5ndGgsdC5sZW5ndGgpO2lmKHI8MilyZXR1cm4gbnVsbDtsZXQgaT0wLGE9MCxvPTAscz0wO2ZvcihsZXQgbj0wO248cjtuKyspaSs9ZVtuXSxhKz10W25dLG8rPWVbbl0qZVtuXSxzKz1lW25dKnRbbl07bGV0IGMsbDtpZihuIT1udWxsJiZpc0Zpbml0ZShuKSljPW89PT0wPzA6KHMtbippKS9vLGw9bjtlbHNle2xldCBlPXIqby1pKmk7Yz1lPT09MD8wOihyKnMtaSphKS9lLGw9KGEtYyppKS9yfWxldCB1PWEvcixkPTAsZj0wO2ZvcihsZXQgbj0wO248cjtuKyspe2xldCByPXRbbl0tKGMqZVtuXStsKTtkKz1yKnI7bGV0IGk9dFtuXS11O2YrPWkqaX1sZXQgcD1mPT09MD8rKGQ9PT0wKToxLWQvZjtyZXR1cm57c2xvcGU6YyxpbnRlcmNlcHQ6bCxyU3F1YXJlZDpwfX1mdW5jdGlvbiBuYShlLHQsbixyKXtsZXQgaT1NYXRoLm1pbihlLmxlbmd0aCx0Lmxlbmd0aCk7aWYoaTwyKXJldHVybnt4czpbXSx5czpbXX07aWYobj09PWBsaW5lYXJgKXtsZXQgbj10YShlLHQscj8uaW50ZXJjZXB0KTtpZighbilyZXR1cm57eHM6W10seXM6W119O2xldCBhPWVbMF0sbz1lW2ktMV07cmV0dXJue3hzOlthLG9dLHlzOltuLnNsb3BlKmErbi5pbnRlcmNlcHQsbi5zbG9wZSpvK24uaW50ZXJjZXB0XX19aWYobj09PWBtb3ZpbmdBdmdgKXtsZXQgbj1NYXRoLm1heCgyLE1hdGgucm91bmQocj8ucGVyaW9kPz8yKSk7aWYoaTxuKXJldHVybnt4czpbXSx5czpbXX07bGV0IGE9W10sbz1bXSxzPTA7Zm9yKGxldCBlPTA7ZTxuO2UrKylzKz10W2VdO2ZvcihsZXQgcj1uLTE7cjxpO3IrKyl7YS5wdXNoKGVbcl0pLG8ucHVzaChzL24pO2xldCBjPXIrMTtjPGkmJihzKz10W2NdLXRbYy1uXSl9cmV0dXJue3hzOmEseXM6b319bGV0IGE9W107Zm9yKGxldCByPTA7cjxpO3IrKyl7bGV0IGk9ZVtyXSxvPXRbcl07IU51bWJlci5pc0Zpbml0ZShpKXx8IU51bWJlci5pc0Zpbml0ZShvKXx8bj09PWBsb2dgJiZpPD0wfHxuPT09YGV4cGAmJm88PTB8fG49PT1gcG93ZXJgJiYoaTw9MHx8bzw9MCl8fGEucHVzaCh7eDppLHk6b30pfWlmKGEubGVuZ3RoPDIpcmV0dXJue3hzOltdLHlzOltdfTtsZXQgbz0xLzAscz0tMS8wO2ZvcihsZXQgZSBvZiBhKW89TWF0aC5taW4obyxlLngpLHM9TWF0aC5tYXgocyxlLngpO2lmKCFOdW1iZXIuaXNGaW5pdGUobyl8fCFOdW1iZXIuaXNGaW5pdGUocyl8fHM8PW8pcmV0dXJue3hzOltdLHlzOltdfTtsZXQgYz1OdW1iZXIuaXNGaW5pdGUocj8uYmFja3dhcmQpP01hdGgubWF4KDAscj8uYmFja3dhcmQ/PzApOjAsbD1OdW1iZXIuaXNGaW5pdGUocj8uZm9yd2FyZCk/TWF0aC5tYXgoMCxyPy5mb3J3YXJkPz8wKTowLHU9by1jLGQ9cytsO2lmKChuPT09YGxvZ2B8fG49PT1gcG93ZXJgKSYmKHU9TWF0aC5tYXgoTnVtYmVyLk1JTl9WQUxVRSx1KSksIU51bWJlci5pc0Zpbml0ZSh1KXx8IU51bWJlci5pc0Zpbml0ZShkKXx8ZDw9dSlyZXR1cm57eHM6W10seXM6W119O2xldCBmPWU9PntsZXQgdD1bXSxuPVtdO2ZvcihsZXQgcj0wO3I8PTY0O3IrKyl7bGV0IGk9ci82NCxhPXUqKDEtaSkrZCppLG89ZShhKTtpZighTnVtYmVyLmlzRmluaXRlKGEpfHwhTnVtYmVyLmlzRmluaXRlKG8pKXJldHVybnt4czpbXSx5czpbXX07dC5wdXNoKGEpLG4ucHVzaChvKX1yZXR1cm57eHM6dCx5czpufX07aWYobj09PWBleHBgfHxuPT09YGxvZ2B8fG49PT1gcG93ZXJgKXtsZXQgZT10YShhLm1hcChlPT5uPT09YGxvZ2B8fG49PT1gcG93ZXJgP01hdGgubG9nKGUueCk6ZS54KSxhLm1hcChlPT5uPT09YGV4cGB8fG49PT1gcG93ZXJgP01hdGgubG9nKGUueSk6ZS55KSk7aWYoIWV8fCFbZS5zbG9wZSxlLmludGVyY2VwdF0uZXZlcnkoTnVtYmVyLmlzRmluaXRlKSlyZXR1cm57eHM6W10seXM6W119O2lmKG49PT1gZXhwYCl7bGV0IHQ9TWF0aC5leHAoZS5pbnRlcmNlcHQpO3JldHVybiBmKG49PnQqTWF0aC5leHAoZS5zbG9wZSpuKSl9aWYobj09PWBsb2dgKXJldHVybiBmKHQ9PmUuc2xvcGUqTWF0aC5sb2codCkrZS5pbnRlcmNlcHQpO2xldCB0PU1hdGguZXhwKGUuaW50ZXJjZXB0KTtyZXR1cm4gZihuPT50Km4qKmUuc2xvcGUpfWlmKG49PT1gcG9seWApe2xldCBlPU1hdGgubWluKDYsYS5sZW5ndGgtMSxNYXRoLm1heCgyLE1hdGgucm91bmQocj8ub3JkZXI/PzIpKSk7aWYoZTwyKXJldHVybnt4czpbXSx5czpbXX07bGV0IHQ9by8yK3MvMixuPU1hdGgubWF4KE1hdGguYWJzKG8tdCksTWF0aC5hYnMocy10KSk7aWYoIU51bWJlci5pc0Zpbml0ZSh0KXx8IU51bWJlci5pc0Zpbml0ZShuKXx8bjw9MClyZXR1cm57eHM6W10seXM6W119O2xldCBpPWEubGVuZ3RoLGM9ZSsxLGw9QXJyYXkuZnJvbSh7bGVuZ3RoOmN9LCgpPT5BcnJheShpKS5maWxsKDApKTtmb3IobGV0IGU9MDtlPGk7ZSsrKXtsZXQgcj0oYVtlXS54LXQpL24saT0xO2ZvcihsZXQgdD0wO3Q8Yzt0KyspbFt0XVtlXT1pLGkqPXJ9bGV0IHU9W10sZD1BcnJheS5mcm9tKHtsZW5ndGg6Y30sKCk9PkFycmF5KGMpLmZpbGwoMCkpLHA9QXJyYXkoYykuZmlsbCgwKTtmb3IobGV0IGU9MDtlPGM7ZSsrKXtsZXQgdD1sW2VdLnNsaWNlKCk7Zm9yKGxldCBuPTA7bjxlO24rKyl7bGV0IHI9MDtmb3IobGV0IGU9MDtlPGk7ZSsrKXIrPXVbbl1bZV0qdFtlXTtkW25dW2VdPXI7Zm9yKGxldCBlPTA7ZTxpO2UrKyl0W2VdLT1yKnVbbl1bZV19bGV0IG49MDtmb3IobGV0IGUgb2YgdCluKz1lKmU7bGV0IHI9TWF0aC5zcXJ0KG4pO2lmKCFOdW1iZXIuaXNGaW5pdGUocil8fHI8PTIqKi01MipNYXRoLnNxcnQoaSkpcmV0dXJue3hzOltdLHlzOltdfTtkW2VdW2VdPXI7bGV0IG89dC5tYXAoZT0+ZS9yKTt1LnB1c2gobyk7bGV0IHM9MDtmb3IobGV0IGU9MDtlPGk7ZSsrKXMrPW9bZV0qYVtlXS55O2lmKCFOdW1iZXIuaXNGaW5pdGUocykpcmV0dXJue3hzOltdLHlzOltdfTtwW2VdPXN9bGV0IG09QXJyYXkoYykuZmlsbCgwKTtmb3IobGV0IGU9Yy0xO2U+PTA7ZS0tKXtsZXQgdD1wW2VdO2ZvcihsZXQgbj1lKzE7bjxjO24rKyl0LT1kW2VdW25dKm1bbl07aWYobVtlXT10L2RbZV1bZV0sIU51bWJlci5pc0Zpbml0ZShtW2VdKSlyZXR1cm57eHM6W10seXM6W119fXJldHVybiBmKHI9PntsZXQgaT0oci10KS9uLGE9bVtlXTtmb3IobGV0IHQ9ZS0xO3Q+PTA7dC0tKWE9YSppK21bdF07cmV0dXJuIGF9KX1yZXR1cm57eHM6W10seXM6W119fXZhciByYT10KCgoKT0+e30pKTtmdW5jdGlvbiBpYShlLHQpe3JldHVybiBlP01hdGgubWF4KC41LGUvY3QpKnQ6MX1mdW5jdGlvbiBhYShlLHQsbil7cmV0dXJue2NvbG9yOmU/YCMke2V9YDpgI2FhYWAsd2lkdGg6aWEodCxuKX19ZnVuY3Rpb24gb2EoZSx0LG4pe3JldHVybntjb2xvcjplP2AjJHtlfWA6YCNlMGUwZTBgLHdpZHRoOnQ/aWEodCxuKTouNX19ZnVuY3Rpb24gc2EoZSl7cmV0dXJuIGUuY2F0QXhpc0Nyb3NzQmV0d2VlbiE9PWBtaWRDYXRgfXZhciBjYT10KCgoKT0+e3B0KCl9KSk7ZnVuY3Rpb24gbGEoZSx0PSExKXtpZih0KXJldHVybiBuZXcgRGF0ZShwYStlKmRhKTtsZXQgbj1lPDYwP2UrMTplO3JldHVybiBuZXcgRGF0ZShmYStuKmRhKX1mdW5jdGlvbiB1YShlLHQ9ITEpe2lmKHQpcmV0dXJuKGUuZ2V0VGltZSgpLXBhKS9kYTtsZXQgbj0oZS5nZXRUaW1lKCktZmEpL2RhO3JldHVybiBuPD02MD9uLTE6bn12YXIgZGEsZmEscGEsbWE9dCgoKCk9PntkYT04NjRlNSxmYT1EYXRlLlVUQygxODk5LDExLDMwKSxwYT1EYXRlLlVUQygxOTA0LDAsMSl9KSk7ZnVuY3Rpb24gaGEoZSx0KXtpZighTnVtYmVyLmlzRmluaXRlKGUpKXJldHVybiBTdHJpbmcoZSk7bGV0IG49TWF0aC5tYXgoMCxNYXRoLnRydW5jKHQpKSxyPWU8MCxbaSxhPWBgXT1nYShNYXRoLmFicyhlKS50b1N0cmluZygpKS5zcGxpdChgLmApLG89YS5wYWRFbmQobisxLGAwYCkscz1vLnNsaWNlKDAsbiksYz1vLmNoYXJDb2RlQXQobiktNDgsbD0oaStzKS5zcGxpdChgYCkubWFwKGU9PmUuY2hhckNvZGVBdCgwKS00OCk7aWYoYz49NSl7bGV0IGU9bC5sZW5ndGgtMTtmb3IoO2U+PTA7ZS0tKWlmKGxbZV09PT05KWxbZV09MDtlbHNle2xbZV0rPTE7YnJlYWt9ZTwwJiZsLnVuc2hpZnQoMSl9bGV0IHU9bC5tYXAoZT0+U3RyaW5nKGUpKS5qb2luKGBgKSxkPW4sZj0oZD4wP3Uuc2xpY2UoMCx1Lmxlbmd0aC1kKTp1KXx8YDBgLHA9ZD4wP3Uuc2xpY2UodS5sZW5ndGgtZCk6YGAsbT1mLnJlcGxhY2UoL14wKyg/PVxkKS8sYGApLGg9cC5sZW5ndGg+MD9gJHttfS4ke3B9YDptLGc9L15bMC5dKiQvLnRlc3QoaCkmJiEvWzEtOV0vLnRlc3QoaCk7cmV0dXJuIHImJiFnP2AtJHtofWA6aH1mdW5jdGlvbiBnYShlKXtsZXQgdD0vXihcZCspKD86XC4oXGQrKSk/W2VFXShbKy1dP1xkKykkLy5leGVjKGUpO2lmKCF0KXJldHVybiBlO2xldFssbixyPWBgLGldPXQsYT1wYXJzZUludChpLDEwKSxvPW4rcixzPW4ubGVuZ3RoK2E7cmV0dXJuIHM8PTA/YDAuYCtgMGAucmVwZWF0KC1zKStvOnM+PW8ubGVuZ3RoP28rYDBgLnJlcGVhdChzLW8ubGVuZ3RoKTpvLnNsaWNlKDAscykrYC5gK28uc2xpY2Uocyl9dmFyIF9hPXQoKCgpPT57fSkpO2Z1bmN0aW9uIHZhKGUsdD0hMSxuPXR5cGVvZiBuYXZpZ2F0b3I+YHVgP3ZvaWQgMDpuYXZpZ2F0b3IubGFuZ3VhZ2Upe2xldCByPW4/P2BgLGk9RGEuZ2V0KHIpO3JldHVybiBpfHwoaT1uZXcgSW50bC5EYXRlVGltZUZvcm1hdChuLHt5ZWFyOmBudW1lcmljYCxtb250aDpgbnVtZXJpY2AsZGF5OmBudW1lcmljYCx0aW1lWm9uZTpgVVRDYH0pLERhLnNldChyLGkpKSxpLmZvcm1hdChsYShlLHQpKX1mdW5jdGlvbiB5YShlKXtyZXR1cm4gTnVtYmVyLmlzSW50ZWdlcihlKT9TdHJpbmcoZSk6aGEoZSw2KS5yZXBsYWNlKC9cLj8wKyQvLGBgKX1mdW5jdGlvbiBiYShlLHQsbj0hMSl7aWYoIXR8fHQudHJpbSgpLnRvTG93ZXJDYXNlKCk9PT1gZ2VuZXJhbGApcmV0dXJuIHlhKGUpO2lmKFNhKHQpKXJldHVybiBDYShlLHQsbik7bGV0IHI9d2EodCksaTtyZXR1cm4gaT1lPjA/clswXT8/dDplPDA/clsxXT8/clswXT8/dDpyWzJdPz9yWzBdPz90LGk9PT1gYD9gYDooZTwwJiZyLmxlbmd0aDwyP2AtYDpgYCkrVGEoTWF0aC5hYnMoZSksaSl9ZnVuY3Rpb24geGEoZSx0LG49ITEpe2lmKCF0fHxlLnRyaW0oKT09PWBgKXJldHVybiBlO2xldCByPU51bWJlcihlKTtyZXR1cm4gTnVtYmVyLmlzRmluaXRlKHIpP2JhKHIsdCxuKTplfWZ1bmN0aW9uIFNhKGUpe2xldCB0PSExO2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bisrKXtsZXQgcj1lW25dO2lmKHI9PT1gImApe3Q9IXQ7Y29udGludWV9aWYoIXQpe2lmKHI9PT1gXFxgKXtuKys7Y29udGludWV9aWYocj09PWBbYCl7Zm9yKDtuPGUubGVuZ3RoJiZlW25dIT09YF1gOyluKys7Y29udGludWV9aWYocj09PWB5YHx8cj09PWBZYHx8cj09PWBkYHx8cj09PWBEYHx8cj09PWBtYHx8cj09PWBNYHx8cj09PWBoYHx8cj09PWBIYHx8cj09PWBzYHx8cj09PWBTYClyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gQ2EoZSx0LG49ITEpe2xldCByPWxhKE1hdGguZmxvb3IoZSksbiksaT1yLmdldFVUQ0Z1bGxZZWFyKCksYT1yLmdldFVUQ01vbnRoKCkrMSxvPXIuZ2V0VVRDRGF0ZSgpLHM9KGUtTWF0aC5mbG9vcihlKSkqODY0MDAsYz1NYXRoLmZsb29yKHMvMzYwMCksbD1NYXRoLmZsb29yKHMlMzYwMC82MCksdT1NYXRoLmZsb29yKHMlNjApLGQ9YGAsZj0hMSxwPTA7Zm9yKDtwPHQubGVuZ3RoOyl7bGV0IGU9dFtwXTtpZihlPT09YCJgKXtmPSFmLHArKztjb250aW51ZX1pZihmKXtkKz1lLHArKztjb250aW51ZX1pZihlPT09YFxcYCYmcCsxPHQubGVuZ3RoKXtkKz10W3ArMV0scCs9Mjtjb250aW51ZX1pZihlPT09YFtgKXtmb3IoO3A8dC5sZW5ndGgmJnRbcF0hPT1gXWA7KXArKztwPHQubGVuZ3RoJiZwKys7Y29udGludWV9aWYoZT09PWB5YHx8ZT09PWBZYCl7bGV0IGU9MDtmb3IoO3A8dC5sZW5ndGgmJih0W3BdPT09YHlgfHx0W3BdPT09YFlgKTspZSsrLHArKztkKz1lPj0zP1N0cmluZyhpKTpTdHJpbmcoaSUxMDApLnBhZFN0YXJ0KDIsYDBgKTtjb250aW51ZX1pZihlPT09YG1gfHxlPT09YE1gKXtsZXQgZT0wO2Zvcig7cDx0Lmxlbmd0aCYmKHRbcF09PT1gbWB8fHRbcF09PT1gTWApOyllKysscCsrO2lmKGQubWF0Y2goL1tIaF0rXFcqJC8pKWQrPWU+PTI/U3RyaW5nKGwpLnBhZFN0YXJ0KDIsYDBgKTpTdHJpbmcobCk7ZWxzZXtsZXQgdD1bYEphbmAsYEZlYmAsYE1hcmAsYEFwcmAsYE1heWAsYEp1bmAsYEp1bGAsYEF1Z2AsYFNlcGAsYE9jdGAsYE5vdmAsYERlY2BdLG49W2BKYW51YXJ5YCxgRmVicnVhcnlgLGBNYXJjaGAsYEFwcmlsYCxgTWF5YCxgSnVuZWAsYEp1bHlgLGBBdWd1c3RgLGBTZXB0ZW1iZXJgLGBPY3RvYmVyYCxgTm92ZW1iZXJgLGBEZWNlbWJlcmBdO2QrPWU+PTU/blthLTFdWzBdOmU9PT00P25bYS0xXTplPT09Mz90W2EtMV06ZT09PTI/U3RyaW5nKGEpLnBhZFN0YXJ0KDIsYDBgKTpTdHJpbmcoYSl9Y29udGludWV9aWYoZT09PWBkYHx8ZT09PWBEYCl7bGV0IGU9MDtmb3IoO3A8dC5sZW5ndGgmJih0W3BdPT09YGRgfHx0W3BdPT09YERgKTspZSsrLHArKztkKz1lPj0yP1N0cmluZyhvKS5wYWRTdGFydCgyLGAwYCk6U3RyaW5nKG8pO2NvbnRpbnVlfWlmKGU9PT1gaGB8fGU9PT1gSGApe2xldCBlPTA7Zm9yKDtwPHQubGVuZ3RoJiYodFtwXT09PWBoYHx8dFtwXT09PWBIYCk7KWUrKyxwKys7ZCs9ZT49Mj9TdHJpbmcoYykucGFkU3RhcnQoMixgMGApOlN0cmluZyhjKTtjb250aW51ZX1pZihlPT09YHNgfHxlPT09YFNgKXtsZXQgZT0wO2Zvcig7cDx0Lmxlbmd0aCYmKHRbcF09PT1gc2B8fHRbcF09PT1gU2ApOyllKysscCsrO2QrPWU+PTI/U3RyaW5nKHUpLnBhZFN0YXJ0KDIsYDBgKTpTdHJpbmcodSk7Y29udGludWV9ZCs9ZSxwKyt9cmV0dXJuIGR9ZnVuY3Rpb24gd2EoZSl7bGV0IHQ9W10sbj1gYDtmb3IobGV0IHI9MDtyPGUubGVuZ3RoO3IrKyl7bGV0IGk9ZVtyXTtpZihpPT09YFxcYCYmcisxPGUubGVuZ3RoKXtuKz1pK2VbcisxXSxyKys7Y29udGludWV9aWYoaT09PWAiYCl7Zm9yKG4rPWkscisrO3I8ZS5sZW5ndGgmJmVbcl0hPT1gImA7KW4rPWVbcl0scisrO3I8ZS5sZW5ndGgmJihuKz1lW3JdKTtjb250aW51ZX1pZihpPT09YFtgKXtmb3Iobis9aSxyKys7cjxlLmxlbmd0aCYmZVtyXSE9PWBdYDspbis9ZVtyXSxyKys7cjxlLmxlbmd0aCYmKG4rPWVbcl0pO2NvbnRpbnVlfWlmKGk9PT1gO2Ape3QucHVzaChuKSxuPWBgO2NvbnRpbnVlfW4rPWl9cmV0dXJuIHQucHVzaChuKSx0fWZ1bmN0aW9uIFRhKGUsdCl7bGV0IG49W10scj0wLGk9ITEsYT0hMTtmb3IoO3I8dC5sZW5ndGg7KXtsZXQgZT10W3JdO2lmKGU9PT1gImApe3IrKztsZXQgZT1gYDtmb3IoO3I8dC5sZW5ndGgmJnRbcl0hPT1gImA7KWUrPXRbcl0scisrO3I8dC5sZW5ndGgmJnIrKyxuLnB1c2goe2tpbmQ6YGxpdGAsdGV4dDplfSk7Y29udGludWV9aWYoZT09PWBcXGAmJnIrMTx0Lmxlbmd0aCl7bi5wdXNoKHtraW5kOmBsaXRgLHRleHQ6dFtyKzFdfSkscis9Mjtjb250aW51ZX1pZihlPT09YF9gJiZyKzE8dC5sZW5ndGgpe24ucHVzaCh7a2luZDpgbGl0YCx0ZXh0OmAgYH0pLHIrPTI7Y29udGludWV9aWYoZT09PWAqYCYmcisxPHQubGVuZ3RoKXtyKz0yO2NvbnRpbnVlfWlmKGU9PT1gW2Ape2ZvcihyKys7cjx0Lmxlbmd0aCYmdFtyXSE9PWBdYDspcisrO3I8dC5sZW5ndGgmJnIrKztjb250aW51ZX1pZihlPT09YCVgKXthPSEwLG4ucHVzaCh7a2luZDpgbGl0YCx0ZXh0OmAlYH0pLHIrKztjb250aW51ZX1pZihlPT09YCNgfHxlPT09YDBgfHxlPT09YC5gfHxlPT09YCxgfHxlPT09YD9gKXtsZXQgZT1gYDtmb3IoO3I8dC5sZW5ndGgmJih0W3JdPT09YCNgfHx0W3JdPT09YDBgfHx0W3JdPT09YC5gfHx0W3JdPT09YCxgfHx0W3JdPT09YD9gKTspZSs9dFtyXSxyKys7bi5wdXNoKHtraW5kOmBudW1gLHRleHQ6ZX0pLGk9ITA7Y29udGludWV9bi5wdXNoKHtraW5kOmBsaXRgLHRleHQ6ZX0pLHIrK31pZighaSlyZXR1cm4gbi5tYXAoZT0+ZS50ZXh0KS5qb2luKGBgKTtsZXQgbz1hP2UqMTAwOmUscz1gYDtmb3IobGV0IGUgb2YgbillLmtpbmQ9PT1gbnVtYCYmKHMrPWUudGV4dCk7bGV0IGM9RWEobyxzKSxsPSExO3JldHVybiBuLm1hcChlPT5lLmtpbmQ9PT1gbGl0YD9lLnRleHQ6bD9gYDoobD0hMCxjKSkuam9pbihgYCl9ZnVuY3Rpb24gRWEoZSx0KXtsZXQgbj10LmluZGV4T2YoYC5gKSxyPW4+PTA/dC5zbGljZSgwLG4pOnQsaT1uPj0wP3Quc2xpY2UobisxKTpgYCxhPS8sLy50ZXN0KHIpLG89KGkubWF0Y2goL1sjMD9dL2cpPz9bXSkubGVuZ3RoLHM9KHIucmVwbGFjZSgvLC9nLGBgKS5tYXRjaCgvMC9nKT8/W10pLmxlbmd0aCxbYyxsPWBgXT1oYShlLG8pLnNwbGl0KGAuYCksdT1jLnBhZFN0YXJ0KHMsYDBgKSxkPWE/dS5yZXBsYWNlKC9cQig/PShcZHszfSkrKD8hXGQpKS9nLGAsYCk6dTtyZXR1cm4gbz09PTA/ZDpgJHtkfS4ke2wucGFkRW5kKG8sYDBgKX1gfXZhciBEYSxPYT10KCgoKT0+e21hKCksX2EoKSxEYT1uZXcgTWFwfSkpO2Z1bmN0aW9uIGthKGUsdCxuKXtpZih0PT09YGB8fG48PTApcmV0dXJuYGA7aWYoZS5tZWFzdXJlVGV4dCh0KS53aWR0aDw9bilyZXR1cm4gdDtpZihlLm1lYXN1cmVUZXh0KEFhKS53aWR0aD5uKXJldHVybmBgO2xldCByPTAsaT10Lmxlbmd0aC0xLGE9MDtmb3IoO3I8PWk7KXtsZXQgbz1yK2k+PjE7ZS5tZWFzdXJlVGV4dCh0LnNsaWNlKDAsbykrQWEpLndpZHRoPD1uPyhhPW8scj1vKzEpOmk9by0xfWxldCBvPWE+MD90LmNoYXJDb2RlQXQoYS0xKTowO3JldHVybiBvPj01NTI5NiYmbzw9NTYzMTkmJmEtLSx0LnNsaWNlKDAsYSkrQWF9dmFyIEFhLGphPXQoKCgpPT57QWE9YOKApmB9KSk7ZnVuY3Rpb24gTWEoZSx0KXtsZXQgbj1lPy5zcGxpdFR5cGU/P2BhdXRvYCxyPWU/LnNwbGl0UG9zLGk9bmV3IFNldDtpZigoZT8uc3BsaXRQb3NBdXRob3JlZD09PSEwfHxyIT1udWxsKSYmKCFbYHBlcmNlbnRgLGBwb3NgLGB2YWxgXS5pbmNsdWRlcyhuKXx8cj09bnVsbHx8IU51bWJlci5pc0Zpbml0ZShyKSkpcmV0dXJuIG51bGw7aWYobj09PWBhdXRvYCl7aWYoZT8uc3BsaXRUeXBlQXV0aG9yZWQ9PT0hMClyZXR1cm4gbnVsbDtsZXQgbj1NYXRoLmNlaWwodC5sZW5ndGgvMyk7Zm9yKGxldCBlPU1hdGgubWF4KDAsdC5sZW5ndGgtbik7ZTx0Lmxlbmd0aDtlKyspaS5hZGQoZSk7cmV0dXJuIGl9aWYobj09PWBjdXN0YCl7aWYoZT8uY3VzdG9tU3BsaXRJbmRpY2VzPT1udWxsKXJldHVybiBudWxsO2ZvcihsZXQgbiBvZiBlLmN1c3RvbVNwbGl0SW5kaWNlcylOdW1iZXIuaXNTYWZlSW50ZWdlcihuKSYmbj49MCYmbjx0Lmxlbmd0aCYmaS5hZGQobik7cmV0dXJuIGl9aWYocj09bnVsbHx8IU51bWJlci5pc0Zpbml0ZShyKSlyZXR1cm4gbnVsbDtpZihuPT09YHBvc2Ape2lmKCFOdW1iZXIuaXNJbnRlZ2VyKHIpfHxyPDB8fHI+MzJlMylyZXR1cm4gbnVsbDtsZXQgZT1NYXRoLm1pbih0Lmxlbmd0aCxyKTtmb3IobGV0IG49dC5sZW5ndGgtZTtuPHQubGVuZ3RoO24rKylpLmFkZChuKTtyZXR1cm4gaX1pZihuPT09YHZhbGApe2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKXtsZXQgbj10W2VdO24hPW51bGwmJk51bWJlci5pc0Zpbml0ZShuKSYmbjxyJiZpLmFkZChlKX1yZXR1cm4gaX1pZihyPDB8fHI+MTAwKXJldHVybiBudWxsO2xldCBhPTA7Zm9yKGxldCBlIG9mIHQpZSE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGUpJiYoYSs9TWF0aC5hYnMoZSkpO2lmKCEoYT4wKSlyZXR1cm4gaTtmb3IobGV0IGU9MDtlPHQubGVuZ3RoO2UrKyl7bGV0IG49dFtlXTtuIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUobikmJk1hdGguYWJzKG4pL2EqMTAwPHImJmkuYWRkKGUpfXJldHVybiBpfXZhciBOYT10KCgoKT0+e30pKTtmdW5jdGlvbiBQYShlKXtyZXR1cm4gZT09PWBkYXlzYHx8ZT09PWBtb250aHNgfHxlPT09YHllYXJzYD9lOm51bGx9ZnVuY3Rpb24gRmEoZSx0KXtzd2l0Y2godCl7Y2FzZWB5ZWFyc2A6cmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKGUuZ2V0VVRDRnVsbFllYXIoKSwwLDEpKTtjYXNlYG1vbnRoc2A6cmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKGUuZ2V0VVRDRnVsbFllYXIoKSxlLmdldFVUQ01vbnRoKCksMSkpO2Nhc2VgZGF5c2A6cmV0dXJuIG5ldyBEYXRlKERhdGUuVVRDKGUuZ2V0VVRDRnVsbFllYXIoKSxlLmdldFVUQ01vbnRoKCksZS5nZXRVVENEYXRlKCkpKX19ZnVuY3Rpb24gSWEoZSx0LG4pe2lmKG49PT1gZGF5c2ApcmV0dXJuIG5ldyBEYXRlKGUuZ2V0VGltZSgpK3QqODY0ZTUpO2xldCByPW5ldyBEYXRlKGUuZ2V0VGltZSgpKTtyZXR1cm4gbj09PWBtb250aHNgP3Iuc2V0VVRDTW9udGgoci5nZXRVVENNb250aCgpK3QpOnIuc2V0VVRDRnVsbFllYXIoci5nZXRVVENGdWxsWWVhcigpK3QpLHJ9ZnVuY3Rpb24gTGEoZSx0KXtzd2l0Y2godCl7Y2FzZWB5ZWFyc2A6cmV0dXJuIGUuZ2V0VVRDRnVsbFllYXIoKTtjYXNlYG1vbnRoc2A6cmV0dXJuIGUuZ2V0VVRDRnVsbFllYXIoKSoxMitlLmdldFVUQ01vbnRoKCk7Y2FzZWBkYXlzYDpyZXR1cm4gTWF0aC5mbG9vcihlLmdldFRpbWUoKS84NjRlNSl9fWZ1bmN0aW9uIFJhKGUpe2xldCB0PWUuY2F0ZWdvcmllcy5tYXAoZT0+TnVtYmVyKGUpKTtpZih0Lmxlbmd0aD09PTB8fHQuc29tZShlPT4hTnVtYmVyLmlzRmluaXRlKGUpKSlyZXR1cm4gbnVsbDtsZXQgbj1lLmRhdGUxOTA0PT09ITAscj1QYShlLmJhc2VUaW1lVW5pdCk/P2BkYXlzYCxpPVBhKGUubWFqb3JUaW1lVW5pdCk/P3IsYT1QYShlLm1pbm9yVGltZVVuaXQpPz9yLG89KGUsdCk9PmU9PW51bGx8fCEoZT4wKXx8IU51bWJlci5pc0Zpbml0ZShlKT9udWxsOnQ9PT1gZGF5c2B8fGU+PTEmJk51bWJlci5pc0ludGVnZXIoZSk/ZTpudWxsLHM9byhlLm1ham9yVW5pdCxpKSxjPW8oZS5taW5vclVuaXQsYSksbD1lPT5MYShsYShlLG4pLHIpLHU9QXJyYXkodC5sZW5ndGgpLGQ9MS8wLGY9LTEvMCxwPTEvMCxtPS0xLzA7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspe2xldCBuPXRbZV0scj1sKG4pO3VbZV09cixkPU1hdGgubWluKGQsciksZj1NYXRoLm1heChmLHIpLHA9TWF0aC5taW4ocCxuKSxtPU1hdGgubWF4KG0sbil9bGV0IGg9ZS5leHBsaWNpdE1pbixnPWUuZXhwbGljaXRNYXgsXz1oIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUoaCk/bChoKTpudWxsLHY9ZyE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGcpP2woZyk6bnVsbCx5PWUuY3Jvc3NCZXR3ZWVuIT09ITEsYj1fPz9kLHg9KHY/P2YpKyArISF5O3g+Ynx8KGItPS41LHgrPS41KTtsZXQgUz14LWIsQz1lPT4obChlKS1iKS9TLHc9ZS5yZXZlcnNlZD9lPT4xLUMoZSk6QyxUPWU9PihsKGUpKyh5Py41OjApLWIpL1MsRT1lLnJldmVyc2VkP2U9PjEtVChlKTpULEQ9dC5tYXAoRSksTz10Lm1hcCgoKT0+MS9TKSxrPWghPW51bGwmJk51bWJlci5pc0Zpbml0ZShoKT9oOnAsQT1nIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUoZyk/ZzptLGo9KGUsdCk9PntpZih0PT1udWxsKXJldHVybltdO2xldCByPUZhKGxhKGssbiksZSksaT11YShyLG4pO2ZvcihsZXQgYT0wO2k8ayYmYTw1MTI7YSsrKXtsZXQgYT1JYShyLHQsZSksbz11YShhLG4pO2lmKCEobz5pKSlyZXR1cm5bXTtyPWEsaT1vfWlmKGk8aylyZXR1cm5bXTtsZXQgYT1bXTtmb3IoO2k8PUE7KXtpZihhLmxlbmd0aD09PTUxMilyZXR1cm5bXTthLnB1c2goe3NlcmlhbDppLGZyYWN0aW9uOncoaSl9KTtsZXQgbz1JYShyLHQsZSkscz11YShvLG4pO2lmKCEocz5pKSlicmVhaztyPW8saT1zfXJldHVybiBhfSxNPWooaSxzKSxOPW5ldyBTZXQoTS5tYXAoZT0+bChlLnNlcmlhbCkpKTtyZXR1cm57cG9zaXRpb25zOkQsY2F0ZWdvcnlCYW5kRnJhY3Rpb25zOk8sbWFqb3JUaWNrczpNLG1pbm9yVGlja3M6Yz09bnVsbD9bXTpqKGEsYykuZmlsdGVyKGU9PiFOLmhhcyhsKGUuc2VyaWFsKSkpfX12YXIgemE9dCgoKCk9PnttYSgpLHJhKCl9KSksQmE9dCgoKCk9Pnt9KSk7ZnVuY3Rpb24gVmEoZSx0LG4scil7bGV0IGk9W1tdXSxhPVtudWxsXSxvPTAscz1lPT57aWYoIWUpcmV0dXJuIG51bGw7bGV0IHQ9ZS5zdGFydHNXaXRoKGAjYCk/ZS5zbGljZSgxKTplO3JldHVybi9eWzAtOUEtRmEtZl17Nn0oWzAtOUEtRmEtZl17Mn0pPyQvLnRlc3QodCk/YCMke3R9YDpudWxsfTtvdXRlcjpmb3IobGV0IGM9MDtjPHQucnVucy5sZW5ndGgmJmM8R2E7YysrKXtsZXQgbD10LnJ1bnNbY107bC50ZXh0IT09YApgJiZhW2kubGVuZ3RoLTFdPT1udWxsJiYoYVtpLmxlbmd0aC0xXT1sLnBhcmFncmFwaEFsaWduPz9udWxsKTtsZXQgdT1BdChsLmZvbnRTaXplSHB0LHQucHRUb1B4KT8/bixkPWwuZm9udEZhY2U/LnRyaW0oKS5yZXBsYWNlQWxsKGAiYCxgYCksZj1kJiYhZC5zdGFydHNXaXRoKGArYCk/ZDpudWxsLHA9ZCYmdC5mb250RmFtaWx5Rm9yRmFjZT90LmZvbnRGYW1pbHlGb3JGYWNlKGQpOmY/YCIke2Z9IiwgQ2FsaWJyaSwgQXJpYWwsIHNhbnMtc2VyaWZgOnQuZm9udEZhbWlseSxtPWAke2wuaXRhbGljPz90LmZhbGxiYWNrSXRhbGljPz8hMT9gaXRhbGljIGA6YGB9JHtsLmJvbGQ/P3QuZmFsbGJhY2tCb2xkP2Bib2xkIGA6YGB9JHt1fXB4ICR7cH1gLGg9KGwuYmFzZWxpbmU/P3QuZmFsbGJhY2tCYXNlbGluZT8/MCkqdSxnPWwuY29sb3JQYWludEF1dGhvcmVkPT09ITB8fGwuY29sb3IhPW51bGx8fGwuY29sb3JIaWRkZW49PT0hMD9sLmNvbG9ySGlkZGVuPT09ITA/bnVsbDpzKGwuY29sb3IpOnQuZmFsbGJhY2tDb2xvckhpZGRlbj09PSEwP251bGw6cixfPWBgLHY9KCk9PntfJiY9KGUuZm9udD1tLGlbaS5sZW5ndGgtMV0ucHVzaCh7dGV4dDpfLGZvbnQ6bSxmaWxsU3R5bGU6Zyx3aWR0aDplLm1lYXN1cmVUZXh0KF8pLndpZHRoLGZvbnRTaXplUHg6dSxiYXNlbGluZVNoaWZ0UHg6aH0pLGBgKX0seT0hMTtmb3IobGV0IGUgb2YgbC50ZXh0KXtpZih5JiZlPT09YApgKXt5PSExO2NvbnRpbnVlfXk9ITE7bGV0IHQ9ZT09PWBccmA/YApgOmU7aWYoZT09PWBccmAmJih5PSEwKSxvPj1VYSl7digpO2JyZWFrIG91dGVyfWlmKG8rKyx0PT09YApgKXtpZih2KCksaS5sZW5ndGg+PVdhKWJyZWFrIG91dGVyO2kucHVzaChbXSksYS5wdXNoKGwucGFyYWdyYXBoQWxpZ24/P251bGwpfWVsc2UgXys9dH12KCl9aWYoIWkuc29tZShlPT5lLmxlbmd0aD4wKSlyZXR1cm4gbnVsbDtsZXQgYz1pLm1hcChlPT5NYXRoLm1heChuKjEuMTUsLi4uZS5tYXAoZT0+ZS5mb250U2l6ZVB4KjEuMTUrTWF0aC5hYnMoZS5iYXNlbGluZVNoaWZ0UHgpKSkpLGw9aS5tYXAoZT0+ZS5yZWR1Y2UoKGUsdCk9PmUrdC53aWR0aCwwKSk7cmV0dXJue2xpbmVzOmksbGluZUFsaWduczphLGxpbmVIZWlnaHRzOmMsbGluZVdpZHRoczpsLHdpZHRoOk1hdGgubWF4KDAsLi4ubCksaGVpZ2h0OmMucmVkdWNlKChlLHQpPT5lK3QsMCl9fWZ1bmN0aW9uIEhhKGUsdCxuLHIsaT1gY2VudGVyYCxhPWBtaWRkbGVgLG89dC53aWR0aCl7bGV0IHM9YT09PWB0b3BgP3I6YT09PWBib3R0b21gP3ItdC5oZWlnaHQ6ci10LmhlaWdodC8yO2ZvcihsZXQgcj0wO3I8dC5saW5lcy5sZW5ndGg7cisrKXtsZXQgYz10LmxpbmVzW3JdLGw9dC5saW5lV2lkdGhzW3JdLHU9dC5saW5lQWxpZ25zW3JdLGQ9dT09PWBsYD9gbGVmdGA6dT09PWByYD9gcmlnaHRgOnU9PT1gY3RyYD9gY2VudGVyYDppLGY9aT09PWBsZWZ0YD9uOmk9PT1gcmlnaHRgP24tbzpuLW8vMixwPWYrbyxtPWQ9PT1gbGVmdGA/ZjpkPT09YHJpZ2h0YD9wLWw6Zisoby1sKS8yLGg9YT09PWB0b3BgP3M6YT09PWBib3R0b21gP3MrdC5saW5lSGVpZ2h0c1tyXTpzK3QubGluZUhlaWdodHNbcl0vMjtmb3IobGV0IHQgb2YgYyl7aWYoZS5mb250PXQuZm9udCx0LmZpbGxTdHlsZT09bnVsbCl7bSs9dC53aWR0aDtjb250aW51ZX1lLmZpbGxTdHlsZT10LmZpbGxTdHlsZSxlLnRleHRBbGlnbj1gbGVmdGAsZS50ZXh0QmFzZWxpbmU9YSxlLmZpbGxUZXh0KHQudGV4dCxtLGgtdC5iYXNlbGluZVNoaWZ0UHgpLG0rPXQud2lkdGh9cys9dC5saW5lSGVpZ2h0c1tyXX19dmFyIFVhLFdhLEdhLEthPXQoKCgpPT57UXQoKSxVYT00MDk2LFdhPTQsR2E9VWF9KSk7ZnVuY3Rpb24gcWEoZSl7aWYoZS5jdXN0b21UZXh0KXJldHVybiBlLmN1c3RvbVRleHQ7bGV0IHQ9W107aWYoZS5zaG93Q2F0ZWdvcnkmJmUuY2F0ZWdvcnkmJnQucHVzaChlLmNhdGVnb3J5KSxlLnNob3dTZXJpZXMmJmUuc2VyaWVzTmFtZSYmdC5wdXNoKGUuc2VyaWVzTmFtZSksZS5zaG93VmFsdWUmJmUuc291cmNlVmFsdWUhPW51bGwpe2xldCBuPWUudmFsdWVEaXZpc29yIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUoZS52YWx1ZURpdmlzb3IpJiZlLnZhbHVlRGl2aXNvcj4wP2UudmFsdWVEaXZpc29yOjE7dC5wdXNoKGJhKGUuc291cmNlVmFsdWUvbixlLmZvcm1hdENvZGU/P251bGwsZS5kYXRlMTkwNCkpfXJldHVybiBlLnNob3dQZXJjZW50JiZlLnBlcmNlbnRSYXRpbyE9bnVsbCYmdC5wdXNoKGJhKGUucGVyY2VudFJhdGlvLGUucGVyY2VudEZvcm1hdENvZGU/P2UuZm9ybWF0Q29kZT8/YDAlYCxlLmRhdGUxOTA0KSksZS5zaG93QnViYmxlU2l6ZSYmZS5idWJibGVTaXplIT1udWxsJiZ0LnB1c2goYmEoZS5idWJibGVTaXplLGUuZm9ybWF0Q29kZT8/bnVsbCxlLmRhdGUxOTA0KSksdC5maWx0ZXIoZT0+ZSE9PWBgKS5qb2luKGUuc2VwYXJhdG9yPz9lLmRlZmF1bHRTZXBhcmF0b3I/P2AgYCl9dmFyIEphPXQoKCgpPT57T2EoKX0pKTtmdW5jdGlvbiBZYShlLHQsbixyLGksYSxvKXtpZighW24scixpXS5ldmVyeShOdW1iZXIuaXNGaW5pdGUpfHxuPD0wfHxyPD0wfHx0Lnc8PTB8fHQuaDw9MClyZXR1cm4gbnVsbDtsZXQgcz1NYXRoLm1heCg0LGkqLjUpLGM9TWF0aC5taW4obixNYXRoLm1heCgwLHQudy1zKjIpKSxsPU1hdGgubWluKHIsdC5oKSx1PXQueCt0LncqLjc1LGQ9e3g6bz9NYXRoLm1heCh0LngsTWF0aC5taW4odC54K3Qudy1jLHUtYykpOk1hdGgubWF4KHQueCx0LngrdC53LXMtYykseTpvP01hdGgubWF4KHQueSxNYXRoLm1pbih0LnkrdC5oLWwsby55LWwraSouMjUpKTpNYXRoLm1pbih0LnkrdC5oLWwsdC55K3MpLHc6YyxoOmx9O2lmKGEpe2xldCB0PUd0KGEsZSxkKTtpZih0KXJldHVybnsuLi50LGF1dG9tYXRpYzohMX19cmV0dXJuey4uLmQsYXV0b21hdGljOiEwfX12YXIgWGE9dCgoKCk9PntRdCgpfSkpO2Z1bmN0aW9uIFphKGUsdCxuLHIsaT0wKXtpZighKCghdC5sZWdlbmRGaWxsJiYhdC5sZWdlbmRGaWxsQ29sb3J8fHQubGVnZW5kRmlsbEhpZGRlbj09PSEwKSYmKCF0LmxlZ2VuZExpbmVGaWxsJiYhdC5sZWdlbmRMaW5lQ29sb3J8fHQubGVnZW5kTGluZUhpZGRlbj09PSEwKSkpe2lmKGUuc2F2ZSgpLHQubGVnZW5kRmlsbEhpZGRlbiE9PSEwJiYodC5sZWdlbmRGaWxsfHx0LmxlZ2VuZEZpbGxDb2xvcikpe2xldCByPXQubGVnZW5kRmlsbD9haSh0LmxlZ2VuZEZpbGwsZSxuLngsbi55LG4udyxuLmgsaSk6YCMke3QubGVnZW5kRmlsbENvbG9yfWA7ciYmKGUuZmlsbFN0eWxlPXIpLHImJmUuZmlsbFJlY3Qobi54LG4ueSxuLncsbi5oKX1pZih0LmxlZ2VuZExpbmVIaWRkZW4hPT0hMCYmKHQubGVnZW5kTGluZUZpbGx8fHQubGVnZW5kTGluZUNvbG9yKSYmbi53PjAmJm4uaD4wKXtsZXQgYT1pYSh0LmxlZ2VuZExpbmVXaWR0aEVtdSxyKSxvPXQubGVnZW5kTGluZUZpbGw/YWkodC5sZWdlbmRMaW5lRmlsbCxlLG4ueCxuLnksbi53LG4uaCxpKTp0LmxlZ2VuZExpbmVDb2xvcj9gIyR7dC5sZWdlbmRMaW5lQ29sb3J9YDpudWxsO2lmKCFvKXtlLnJlc3RvcmUoKTtyZXR1cm59ZS5zdHJva2VTdHlsZT1vLGUubGluZUNhcD10LmxlZ2VuZExpbmVDYXA9PT1gcm5kYD9gcm91bmRgOnQubGVnZW5kTGluZUNhcD09PWBzcWA/YHNxdWFyZWA6YGJ1dHRgLGUubGluZUpvaW49dC5sZWdlbmRMaW5lSm9pbj09PWByb3VuZGB8fHQubGVnZW5kTGluZUpvaW49PT1gYmV2ZWxgP3QubGVnZW5kTGluZUpvaW46YG1pdGVyYCxlLnNldExpbmVEYXNoKFpyKHQubGVnZW5kTGluZUN1c3RvbURhc2gsdC5sZWdlbmRMaW5lRGFzaCxhKSksUmkoZSxuLngsbi55LG4udyxuLmgsYSx0LmxlZ2VuZExpbmVDb21wb3VuZCl9ZS5yZXN0b3JlKCl9fXZhciBRYT10KCgoKT0+e25pKCksdWkoKSxjYSgpLHppKCl9KSk7ZnVuY3Rpb24gJGEoZSx0LG4scixpLGEsbyxzPTApe2lmKHQucGxvdEFyZWFGaWxsSGlkZGVuIT09ITApaWYodC5wbG90QXJlYUZpbGw/LmZpbGxUeXBlPT09YGltYWdlYClQcihlLHQucGxvdEFyZWFGaWxsLG4scixpLGEsbyxzKTtlbHNle2xldCBvPXQucGxvdEFyZWFGaWxsP2FpKHQucGxvdEFyZWFGaWxsLGUsbixyLGksYSxzKTp0LnBsb3RBcmVhQmc/YCMke3QucGxvdEFyZWFCZ31gOm51bGw7byYmKGUuZmlsbFN0eWxlPW8sZS5maWxsUmVjdChuLHIsaSxhKSl9aWYodC5wbG90QXJlYUxpbmVIaWRkZW49PT0hMHx8IXQucGxvdEFyZWFMaW5lRmlsbCYmIXQucGxvdEFyZWFMaW5lQ29sb3IpcmV0dXJuO2xldCBjPXQucGxvdEFyZWFMaW5lV2lkdGhFbXU/TWF0aC5tYXgoLjUsdC5wbG90QXJlYUxpbmVXaWR0aEVtdS9jdCkqbzoxO2Uuc2F2ZSgpO2xldCBsPXQucGxvdEFyZWFMaW5lRmlsbD9haSh0LnBsb3RBcmVhTGluZUZpbGwsZSxuLHIsaSxhLHMpOnQucGxvdEFyZWFMaW5lQ29sb3I/YCMke3QucGxvdEFyZWFMaW5lQ29sb3J9YDpudWxsO2lmKCFsKXtlLnJlc3RvcmUoKTtyZXR1cm59ZS5zdHJva2VTdHlsZT1sLGUuc2V0TGluZURhc2goWnIodC5wbG90QXJlYUxpbmVDdXN0b21EYXNoLHQucGxvdEFyZWFMaW5lRGFzaCxjKSksZS5saW5lQ2FwPXQucGxvdEFyZWFMaW5lQ2FwPT09YHJuZGA/YHJvdW5kYDp0LnBsb3RBcmVhTGluZUNhcD09PWBzcWA/YHNxdWFyZWA6YGJ1dHRgLGUubGluZUpvaW49dC5wbG90QXJlYUxpbmVKb2luPT09YHJvdW5kYHx8dC5wbG90QXJlYUxpbmVKb2luPT09YGJldmVsYD90LnBsb3RBcmVhTGluZUpvaW46YG1pdGVyYCxSaShlLG4scixpLGEsYyx0LnBsb3RBcmVhTGluZUNvbXBvdW5kKSxlLnJlc3RvcmUoKX12YXIgZW89dCgoKCk9PntuaSgpLHVpKCkscHQoKSx6aSgpLHpyKCl9KSk7ZnVuY3Rpb24gdG8oZSx0KXtpZighZS5zb21lKEJvb2xlYW4pKXJldHVybiBudWxsO2xldCBuPU1hdGgubWF4KHQsZS5sZW5ndGgpLHI9W10saT1uZXcgSW50MzJBcnJheShuKTtpLmZpbGwoLTEpO2ZvcihsZXQgdD0wO3Q8bjt0KyspZVt0XSE9PSEwJiYoaVt0XT1yLmxlbmd0aCxyLnB1c2godCkpO3JldHVybntrZWVwOnIscmVtYXA6aX19ZnVuY3Rpb24gbm8oZSx0KXtpZihlPT1udWxsKXJldHVybiBlO2xldCBuPVtdO2ZvcihsZXQgciBvZiB0LmtlZXApcjxlLmxlbmd0aCYmbi5wdXNoKGVbcl0pO3JldHVybiBufWZ1bmN0aW9uIHJvKGUsdCl7aWYoZT09bnVsbClyZXR1cm4gZTtsZXQgbj1bXTtmb3IobGV0IHIgb2YgZSl7aWYoci5pZHg+PXQucmVtYXAubGVuZ3RoKWNvbnRpbnVlO2xldCBlPXQucmVtYXBbci5pZHhdO2U+PTAmJm4ucHVzaCh7Li4ucixpZHg6ZX0pfXJldHVybiBufWZ1bmN0aW9uIGlvKGUpe3JldHVybiBNYXRoLm1heChlLnZhbHVlcy5sZW5ndGgsZS5jYXRlZ29yaWVzPy5sZW5ndGg/PzAsZS5zb3VyY2VIaWRkZW4/Lmxlbmd0aD8/MCxlLmRhdGFQb2ludENvbG9ycz8ubGVuZ3RoPz8wLGUuZGF0YUxhYmVsQ29sb3JzPy5sZW5ndGg/PzAsZS5jYXRGb3JtYXRDb2Rlcz8ubGVuZ3RoPz8wLGUuYnViYmxlU2l6ZXM/Lmxlbmd0aD8/MCwuLi4oZS5lcnJCYXJzPz9bXSkuZmxhdE1hcChlPT5bZS5wbHVzLmxlbmd0aCxlLm1pbnVzLmxlbmd0aF0pKX1mdW5jdGlvbiBhbyhlLHQpe3JldHVybnsuLi5lLHZhbHVlczpubyhlLnZhbHVlcyx0KT8/W10sY2F0ZWdvcmllczpubyhlLmNhdGVnb3JpZXMsdCksc291cmNlSGlkZGVuOm5vKGUuc291cmNlSGlkZGVuLHQpLGRhdGFQb2ludENvbG9yczpubyhlLmRhdGFQb2ludENvbG9ycyx0KSxkYXRhTGFiZWxDb2xvcnM6bm8oZS5kYXRhTGFiZWxDb2xvcnMsdCksY2F0Rm9ybWF0Q29kZXM6bm8oZS5jYXRGb3JtYXRDb2Rlcyx0KSxidWJibGVTaXplczpubyhlLmJ1YmJsZVNpemVzLHQpLGRhdGFQb2ludE92ZXJyaWRlczpybyhlLmRhdGFQb2ludE92ZXJyaWRlcyx0KSxkYXRhTGFiZWxPdmVycmlkZXM6cm8oZS5kYXRhTGFiZWxPdmVycmlkZXMsdCksZXJyQmFyczplLmVyckJhcnM/Lm1hcChlPT4oey4uLmUscGx1czpubyhlLnBsdXMsdCk/P1tdLG1pbnVzOm5vKGUubWludXMsdCk/P1tdfSkpfX1mdW5jdGlvbiBvbyhlKXtsZXQgdD1lLnNvdXJjZUhpZGRlbjtpZighdD8uc29tZShCb29sZWFuKSlyZXR1cm4gZTtsZXQgbj0oZSxuKT0+ZT09bnVsbD9lOmUubWFwKChlLHIpPT50W3JdPT09ITA/bjplKTtyZXR1cm57Li4uZSx2YWx1ZXM6bihlLnZhbHVlcyxudWxsKT8/W10sYnViYmxlU2l6ZXM6bihlLmJ1YmJsZVNpemVzLG51bGwpLGVyckJhcnM6ZS5lcnJCYXJzPy5tYXAoZT0+KHsuLi5lLHBsdXM6bihlLnBsdXMsbnVsbCk/P1tdLG1pbnVzOm4oZS5taW51cyxudWxsKT8/W119KSl9fWZ1bmN0aW9uIHNvKGUpe3JldHVybiBlLmNoYXJ0VHlwZT09PWBzY2F0dGVyYHx8ZS5jaGFydFR5cGU9PT1gYnViYmxlYH1mdW5jdGlvbiBjbyhlKXtsZXQgdD1lLnNvdXJjZUhpZGRlbjtyZXR1cm4gdCE9bnVsbCYmdC5sZW5ndGg+MCYmdC5ldmVyeShCb29sZWFuKX1mdW5jdGlvbiBsbyhlKXtyZXR1cm4gbW8uaGFzKGUpfWZ1bmN0aW9uIHVvKGUsdCl7bGV0IG49ZS50aGVtZUFjY2VudENvbG9ycyxyPXQuZGF0YVBvaW50Q29sb3JzPy5zb21lKGU9PmUhPW51bGwpPT09ITB8fCh0LmRhdGFQb2ludE92ZXJyaWRlcz8ubGVuZ3RoPz8wKT4wLGk9dC5tYXJrZXJTeW1ib2whPW51bGx8fHQubWFya2VyRmlsbCE9bnVsbHx8dC5tYXJrZXJGaWxsUGFpbnRBdXRob3JlZD09PSEwfHx0Lm1hcmtlckxpbmUhPW51bGw7aWYoZS5zY2F0dGVyU3R5bGUhPT1gbWFya2VyYHx8IW4/Lmxlbmd0aHx8cnx8aXx8dC5saW5lSGlkZGVuPT09ITApcmV0dXJuIHQ7bGV0IGE9ey4uLnQsZGF0YVBvaW50Q29sb3JzOnQudmFsdWVzLm1hcCgoZSx0KT0+blt0JW4ubGVuZ3RoXSksZGF0YVBvaW50T3ZlcnJpZGVzOnQudmFsdWVzLm1hcCgoZSx0KT0+KHtpZHg6dCxtYXJrZXJTeW1ib2w6cG9bdCVwby5sZW5ndGhdfSkpfTtyZXR1cm4gbW8uYWRkKGEpLGF9ZnVuY3Rpb24gZm8oZSl7aWYoZS5wbG90VmlzaWJsZU9ubHkhPT0hMClyZXR1cm4gZTtpZihzbyhlKSlyZXR1cm57Li4uZSxzZXJpZXM6ZS5zZXJpZXMuZmxhdE1hcCh0PT57bGV0IG49dC5jYXRlZ29yaWVzPT1udWxsP3suLi50LGNhdGVnb3JpZXM6ZS5jYXRlZ29yaWVzfTp0LHI9bi5zb3VyY2VIaWRkZW4saT1yJiZ0byhyLGlvKG4pKTtpZighaSlyZXR1cm5bbl07aWYoaS5rZWVwLmxlbmd0aD09PTApcmV0dXJuW107bGV0IGE9YW8obixpKTtyZXR1cm4gZS5jaGFydFR5cGU9PT1gc2NhdHRlcmA/W3VvKGUsYSldOlthXX0pfTtsZXQgdD1NYXRoLm1heChlLmNhdGVnb3JpZXMubGVuZ3RoLC4uLmUuY2F0ZWdvcnlMZXZlbHM/Lm1hcChlPT5lLmxlbmd0aCk/P1tdLC4uLmUuc2VyaWVzLm1hcChpbykpLG49ZS5jYXRlZ29yeVNvdXJjZUhpZGRlbj90byhlLmNhdGVnb3J5U291cmNlSGlkZGVuLHQpOm51bGwscj1lLnNlcmllcy5mbGF0TWFwKGU9PntsZXQgdD1uP2FvKGUsbik6ZTtyZXR1cm4gbj8ua2VlcC5sZW5ndGg9PT0wfHxjbyh0KT9bXTpbb28odCldfSk7aWYoIW4pcmV0dXJuey4uLmUsc2VyaWVzOnJ9O2xldCBpPWUuc3VidG90YWxJbmRpY2VzLmZsYXRNYXAoZT0+e2lmKGU+PW4ucmVtYXAubGVuZ3RoKXJldHVybltdO2xldCB0PW4ucmVtYXBbZV07cmV0dXJuIHQ+PTA/W3RdOltdfSk7cmV0dXJuey4uLmUsY2F0ZWdvcmllczpubyhlLmNhdGVnb3JpZXMsbik/P1tdLGNhdGVnb3J5TGV2ZWxzOmUuY2F0ZWdvcnlMZXZlbHM/Lm1hcChlPT5ubyhlLG4pPz9bXSksY2F0ZWdvcnlTb3VyY2VIaWRkZW46bm8oZS5jYXRlZ29yeVNvdXJjZUhpZGRlbixuKSxzdWJ0b3RhbEluZGljZXM6aSxzZXJpZXM6cn19dmFyIHBvLG1vLGhvPXQoKCgpPT57cG89W2BkaWFtb25kYCxgc3F1YXJlYCxgdHJpYW5nbGVgLGB4YCxgc3RhcmAsYGNpcmNsZWBdLG1vPW5ldyBXZWFrU2V0fSkpO2Z1bmN0aW9uIGdvKGUpe3JldHVybiBlLnJvdGF0aW9uWD09PTE1JiZlLnJvdGF0aW9uWT09PTIwJiZlLnJpZ2h0QW5nbGVBeGVzPT09ITEmJmUucGVyc3BlY3RpdmU9PT0zMH1mdW5jdGlvbiBfbyhlKXtyZXR1cm4gZ28oZSk/MjoxfWZ1bmN0aW9uIHZvKGUsdCl7bGV0IG49ZS5yZXBsYWNlKC9eIy8sYGApO2lmKCEvXlswLTlhLWZdezZ9JC9pLnRlc3Qobil8fCFOdW1iZXIuaXNGaW5pdGUodCkpcmV0dXJuIGU7bGV0IHI9TWF0aC5tYXgoMCx0KSxpPWU9Pk1hdGgubWF4KDAsTWF0aC5taW4oMjU1LE1hdGgucm91bmQoTnVtYmVyLnBhcnNlSW50KG4uc2xpY2UoZSxlKzIpLDE2KSpyKSkpLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLGAwYCk7cmV0dXJuYCMke2koMCl9JHtpKDIpfSR7aSg0KX1gLnRvVXBwZXJDYXNlKCl9ZnVuY3Rpb24geW8oZSx0KXtsZXQgbj1lLnJlcGxhY2UoL14jLyxgYCk7aWYoIS9eWzAtOWEtZl17Nn0kL2kudGVzdChuKXx8IU51bWJlci5pc0Zpbml0ZSh0KSlyZXR1cm4gZTtsZXQgcj1NYXRoLm1heCgtMSxNYXRoLm1pbigxLHQpKSxpPWU9PntsZXQgdD1TbyhOdW1iZXIucGFyc2VJbnQobi5zbGljZShlLGUrMiksMTYpLzI1NSksaT1yPDA/dCooMStyKTp0KigxLXIpK3I7cmV0dXJuIE1hdGgucm91bmQoTWF0aC5tYXgoMCxNYXRoLm1pbigxLENvKGkpKSkqMjU1KS50b1N0cmluZygxNikucGFkU3RhcnQoMixgMGApfTtyZXR1cm5gIyR7aSgwKX0ke2koMil9JHtpKDQpfWAudG9VcHBlckNhc2UoKX1mdW5jdGlvbiBibyhlLHQsbixyKXtpZihlLmxlbmd0aDw2fHx0PDB8fG48PTApcmV0dXJuIG51bGw7bGV0IGk9ZVt0JTZdO2lmKCFpKXJldHVybiBudWxsO2lmKCFbMiwxMCwxOCwyNiwzNCw0Ml0uaW5jbHVkZXMocj8/LTEpKXJldHVybmAjJHtpfWAudG9VcHBlckNhc2UoKTtsZXQgYT1NYXRoLmZsb29yKG4vNik7cmV0dXJuIHlvKGksLS43KzEuNCooKE1hdGguZmxvb3IodC82KSsxKS8oYSsyKSkpfWZ1bmN0aW9uIHhvKGUpe2lmKCFlKXJldHVybiAxO2xldCB0PWUuejwwP3t4Oi1lLngseTotZS55LHo6LWUuen06ZSxuPXt4Oi4yNCx5Oi40Mix6Oi44OH0scj1NYXRoLmh5cG90KG4ueCxuLnksbi56KSxpPU1hdGgubWF4KDAsKHQueCpuLngrdC55Km4ueSt0Lnoqbi56KS9yKTtyZXR1cm4gTWF0aC5tYXgoLjQ4LE1hdGgubWluKDEuMjIsLjQ4Ky43OCppKSl9dmFyIFNvLENvLHdvPXQoKCgpPT57U289ZT0+ZTw9LjA0MDQ1P2UvMTIuOTI6KChlKy4wNTUpLzEuMDU1KSoqMi40LENvPWU9PmU8PS4wMDMxMzA4P2UqMTIuOTI6MS4wNTUqZSoqKDEvMi40KS0uMDU1fSkpO2Z1bmN0aW9uIFRvKGUsdCxuLHIsaSl7bGV0IGE9TnVtYmVyLmlzRmluaXRlKGUpJiZlPjA/ZTowLG89TnVtYmVyLmlzRmluaXRlKHQpP0lvKHQsMCw1MDApOjE1MCxzPU1hdGgubWF4KDEsTWF0aC50cnVuYyhyKSksYz1JbyhNYXRoLnRydW5jKG4pLDAscy0xKSxsPWk/MTpzLHU9YS8obCtvLzEwMCk7cmV0dXJue29mZnNldDooYS11KmwpLzIrKGk/MDpjKnUpLHNpemU6dX19ZnVuY3Rpb24gRW8oZSx0LG4pe2lmKCFbZSx0LG5dLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSkpcmV0dXJuIDE7bGV0IHI9ZT49MD9uOnQ7cmV0dXJuIDEtTWF0aC5taW4oMSxNYXRoLmFicyhlKS9NYXRoLm1heChOdW1iZXIuTUlOX1ZBTFVFLE1hdGguYWJzKHIpKSl9ZnVuY3Rpb24gRG8oZSl7cmV0dXJuIShlLmhlaWdodFBlcmNlbnRBdXRob3JlZD8/ZS5oZWlnaHRQZXJjZW50IT1udWxsKXx8ZS5oZWlnaHRQZXJjZW50PT1udWxsfHwhTnVtYmVyLmlzRmluaXRlKGUuaGVpZ2h0UGVyY2VudCl8fGUuaGVpZ2h0UGVyY2VudDw1fHxlLmhlaWdodFBlcmNlbnQ+NTAwPzE6ZS5oZWlnaHRQZXJjZW50LzEwMH1mdW5jdGlvbiBPbyhlLHQsbixyKXtpZighdC5sZW5ndGh8fHQubGVuZ3RoPjFlNXx8IVtuLngsbi55LG4udyxuLmhdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSl8fG4udzw9MHx8bi5oPD0wfHwhdC5ldmVyeShlPT5OdW1iZXIuaXNGaW5pdGUoZS54KSYmTnVtYmVyLmlzRmluaXRlKGUueSkpKXJldHVybiBlO2xldCBpPTEvMCxhPS0xLzAsbz0xLzAscz0tMS8wO2ZvcihsZXQgZSBvZiB0KWk9TWF0aC5taW4oaSxlLngpLGE9TWF0aC5tYXgoYSxlLngpLG89TWF0aC5taW4obyxlLnkpLHM9TWF0aC5tYXgocyxlLnkpO2xldCBjPWEtaSxsPXMtbztpZighKGM+MioqLTUyKXx8IShsPjIqKi01MikpcmV0dXJuIGU7bGV0IHU9SW8oRm8ociwuMDYpLDAsLjQ1KSxkPW4udyooMS0yKnUpLGY9bi5oKigxLTIqdSkscD1NYXRoLm1pbihkL2MsZi9sKTtpZighKHA+MCl8fCFOdW1iZXIuaXNGaW5pdGUocCkpcmV0dXJuIGU7bGV0IG09e3g6KGkrYSkvMix5OihvK3MpLzJ9LGg9e3g6bi54K24udy8yLHk6bi55K24uaC8yfSxnPWU9Pih0LG4scik9PntsZXQgaT1lKHQsbixyKTtyZXR1cm57eDpoLngrKGkueC1tLngpKnAseTpoLnkrKGkueS1tLnkpKnB9fTtyZXR1cm57Li4uZSxwcm9qZWN0OmcoZS5wcm9qZWN0KSxwcm9qZWN0VW5ib3VuZGVkOmcoZS5wcm9qZWN0VW5ib3VuZGVkKSxkZXB0aFg6ZS5kZXB0aFgqcCxkZXB0aFk6ZS5kZXB0aFkqcH19ZnVuY3Rpb24ga28oZSx0LG4scj0uMDYpe3JldHVybiF0Lmxlbmd0aHx8dC5sZW5ndGg+MWU1P2U6T28oZSx0Lm1hcCh0PT5lLnByb2plY3QodC54LHQueSx0LmRlcHRoKSksbixyKX1mdW5jdGlvbiBBbyhlLHQsbil7bGV0e2Zyb250OnJ9PWUsaT1yLngsYT1yLngrci53LG89ZS50b3BvbG9neS5mYXJYPT09YG1pbmA/aTphLHM9ZS50b3BvbG9neS5heGlzWT09PWBtaW5gP3IueTpyLnkrci5oLGM9cz09PXIueT9yLnkrci5oOnIueSx7bmVhckRlcHRoOmwsZmFyRGVwdGg6dX09ZS50b3BvbG9neSxkPVtlLnByb2plY3RVbmJvdW5kZWQoaSxjLHUpLGUucHJvamVjdFVuYm91bmRlZChhLGMsdSksZS5wcm9qZWN0VW5ib3VuZGVkKGkscyx1KV0sZj1baSxhXS5mbGF0TWFwKHQ9PltjLHNdLmZsYXRNYXAobj0+W2wsdV0ubWFwKHI9PmUucHJvamVjdFVuYm91bmRlZCh0LG4scikueCkpKSxwPU1hdGgubWF4KC4uLmYpLU1hdGgubWluKC4uLmYpLG09TWF0aC5oeXBvdChkWzBdLngtZFsyXS54LGRbMF0ueS1kWzJdLnkpLGg9cD4wJiZtPjA/cC9tOm51bGwsZz1uPz8wLF89TnVtYmVyLmlzRmluaXRlKGcpJiZnPj0wJiZnPD1Qbz9nOjAsdj1NYXRoLm1heChyLncsci5oLGUubW9kZWxEZXB0aCkqXy8xMDAseSxiO2lmKHQ9PT1gZmxvb3JgKXt5PVt7eDppLHk6cyxkZXB0aDpsfSx7eDphLHk6cyxkZXB0aDpsfSx7eDphLHk6cyxkZXB0aDp1fSx7eDppLHk6cyxkZXB0aDp1fV07bGV0IGU9cysocz09PXIueT8tdjp2KTtiPXkubWFwKHQ9Pih7Li4udCx5OmV9KSl9ZWxzZSBpZih0PT09YHNpZGVXYWxsYCl7eT1be3g6byx5OnMsZGVwdGg6bH0se3g6byx5OnMsZGVwdGg6dX0se3g6byx5OmMsZGVwdGg6dX0se3g6byx5OmMsZGVwdGg6bH1dO2xldCBlPW8rKG89PT1pPy12OnYpO2I9eS5tYXAodD0+KHsuLi50LHg6ZX0pKX1lbHNle3k9W3t4OmkseTpzLGRlcHRoOnV9LHt4OmEseTpzLGRlcHRoOnV9LHt4OmEseTpjLGRlcHRoOnV9LHt4OmkseTpjLGRlcHRoOnV9XTtsZXQgdD1lLm1vZGVsRGVwdGg+MD92L2UubW9kZWxEZXB0aDowLG49dT09PTA/LXQ6MSt0O2I9eS5tYXAoZT0+KHsuLi5lLGRlcHRoOm59KSl9aWYoISh2PjApKXJldHVybnt0aGlja25lc3M6MCxpbm5lcjp5LG91dGVyOlsuLi55XSxmYWNlczpbeV0scGljdHVyZVN0YWNrQXNwZWN0OmgsbW9kZWxEZXB0aDplLm1vZGVsRGVwdGh9O2xldCB4PXkubWFwKChlLHQpPT5bZSx5Wyh0KzEpJXkubGVuZ3RoXSxiWyh0KzEpJWIubGVuZ3RoXSxiW3RdXSksUz1beSxiLC4uLnhdLEM9Wy4uLnksLi4uYl0ucmVkdWNlKChlLHQpPT4oe3g6ZS54K3QueC84LHk6ZS55K3QueS84LGRlcHRoOmUuZGVwdGgrdC5kZXB0aC84fSkse3g6MCx5OjAsZGVwdGg6MH0pLHc9Uy5tYXAoZT0+e2xldFt0LG4scl09ZSxpPXt4Om4ueC10LngseTpuLnktdC55LGRlcHRoOm4uZGVwdGgtdC5kZXB0aH0sYT17eDpyLngtdC54LHk6ci55LXQueSxkZXB0aDpyLmRlcHRoLXQuZGVwdGh9LG89e3g6aS55KmEuZGVwdGgtaS5kZXB0aCphLnkseTppLmRlcHRoKmEueC1pLngqYS5kZXB0aCxkZXB0aDppLngqYS55LWkueSphLnh9LHM9ZS5yZWR1Y2UoKHQsbik9Pih7eDp0Lngrbi54L2UubGVuZ3RoLHk6dC55K24ueS9lLmxlbmd0aCxkZXB0aDp0LmRlcHRoK24uZGVwdGgvZS5sZW5ndGh9KSx7eDowLHk6MCxkZXB0aDowfSksYz17eDpzLngtQy54LHk6cy55LUMueSxkZXB0aDpzLmRlcHRoLUMuZGVwdGh9O3JldHVybiBvLngqYy54K28ueSpjLnkrby5kZXB0aCpjLmRlcHRoPDA/Wy4uLmVdLnJldmVyc2UoKTplfSk7cmV0dXJue3RoaWNrbmVzczp2LGlubmVyOnksb3V0ZXI6YixmYWNlczp3LHBpY3R1cmVTdGFja0FzcGVjdDpoLG1vZGVsRGVwdGg6ZS5tb2RlbERlcHRofX1mdW5jdGlvbiBqbyhlLHQsbixyKXtpZighTnVtYmVyLmlzRmluaXRlKHIpfHxyPDB8fHI+MXx8bj09PWB4YCYmdD09PWBzaWRlV2FsbGB8fG49PT1geWAmJnQ9PT1gZmxvb3JgKXJldHVybltdO2xldCBpPShlLHQpPT4oe3g6ZS54Kyh0LngtZS54KSpyLHk6ZS55Kyh0LnktZS55KSpyLGRlcHRoOmUuZGVwdGgrKHQuZGVwdGgtZS5kZXB0aCkqcn0pLGEsbyxzLGMsbCx1O249PT1geGA/KGE9aShlLmlubmVyWzBdLGUuaW5uZXJbMV0pLG89aShlLmlubmVyWzNdLGUuaW5uZXJbMl0pLHM9aShlLm91dGVyWzBdLGUub3V0ZXJbMV0pLGM9aShlLm91dGVyWzNdLGUub3V0ZXJbMl0pLGw9Mix1PTQpOihhPWkoZS5pbm5lclswXSxlLmlubmVyWzNdKSxvPWkoZS5pbm5lclsxXSxlLmlubmVyWzJdKSxzPWkoZS5vdXRlclswXSxlLm91dGVyWzNdKSxjPWkoZS5vdXRlclsxXSxlLm91dGVyWzJdKSxsPTUsdT0zKTtsZXQgZD1be2ZhY2VJbmRleDowLHNjZW5lUG9pbnRzOlthLG9dfV07cmV0dXJuIGUudGhpY2tuZXNzPjAmJmQucHVzaCh7ZmFjZUluZGV4OjEsc2NlbmVQb2ludHM6W3MsY119LHtmYWNlSW5kZXg6bCxzY2VuZVBvaW50czpbYSxzXX0se2ZhY2VJbmRleDp1LHNjZW5lUG9pbnRzOltvLGNdfSksZH1mdW5jdGlvbiBNbyhlLHQsbil7bGV0IHI9W1tgZmxvb3JgLHQuZmxvb3I/LnRoaWNrbmVzc1BlcmNlbnRdLFtgc2lkZVdhbGxgLHQuc2lkZVdhbGw/LnRoaWNrbmVzc1BlcmNlbnRdLFtgYmFja1dhbGxgLHQuYmFja1dhbGw/LnRoaWNrbmVzc1BlcmNlbnRdXS5tYXAoKFt0LG5dKT0+QW8oZSx0LG4pKTtyZXR1cm4gci5zb21lKGU9PmUudGhpY2tuZXNzPjApP09vKGUsci5mbGF0TWFwKGU9PmUuZmFjZXMuZmxhdCgpKS5tYXAodD0+ZS5wcm9qZWN0VW5ib3VuZGVkKHQueCx0LnksdC5kZXB0aCkpLG4sLjAzKTplfWZ1bmN0aW9uIE5vKGUsdCxuPXt9KXtpZighW3QueCx0LnksdC53LHQuaF0uZXZlcnkoTnVtYmVyLmlzRmluaXRlKXx8dC53PD0wfHx0Lmg8PTApcmV0dXJuIG51bGw7bGV0IHI9SW8oRm8oZS5yb3RhdGlvblgsMTUpLC05MCw5MCksaT0oSW8oRm8oZS5yb3RhdGlvblksMjApLDAsMzYwKSsxODApJTM2MC0xODAsYT1JbyhGbyhlLmRlcHRoUGVyY2VudCwxMDApLDIwLDJlMyksbz1JbyhGbyhlLnBlcnNwZWN0aXZlLDMwKSwwLDI0MCkscz1JbyhGbyhlLmdhcERlcHRoUGVyY2VudCwxNTApLDAsNTAwKSxjPShlLmhlaWdodFBlcmNlbnRBdXRob3JlZD8/ZS5oZWlnaHRQZXJjZW50IT1udWxsKSYmZS5oZWlnaHRQZXJjZW50IT1udWxsJiZOdW1iZXIuaXNGaW5pdGUoZS5oZWlnaHRQZXJjZW50KT9JbyhlLmhlaWdodFBlcmNlbnQsNSw1MDApOm51bGwsbD1uLnNjZW5lSGVpZ2h0U2NhbGUhPW51bGwmJk51bWJlci5pc0Zpbml0ZShuLnNjZW5lSGVpZ2h0U2NhbGUpP0lvKG4uc2NlbmVIZWlnaHRTY2FsZSoxMDAsNSw1MDApOm51bGwsdT1jPz9sLGQ9dDtpZih1IT1udWxsKXtsZXQgZT11LzEwMCxuPU1hdGgubWluKHQudyx0LmgvZSkscj1uKmU7ZD17eDp0LngrKHQudy1uKS8yLHk6dC55Kyh0LmgtcikvMix3Om4saDpyfX1sZXQgZj1NYXRoLlBJLzE4MCxwPUlvKEZvKG4uc2NlbmVEZXB0aFNjYWxlLC4xKSwuMDEsMiksbT1kLncqcCooYS8xMDApLGg9ZC54K2Qudy8yLGc9ZC55K2QuaC8yLF89LWkqZix2PXIqZix5PU1hdGguY29zKF8pLGI9TWF0aC5zaW4oXykseD1NYXRoLmNvcyh2KSxTPU1hdGguc2luKHYpLEM9ZS5yaWdodEFuZ2xlQXhlcyE9PSEwJiZvPjAsdz1JbyhvKi4yNSwuMjUsNjApKmYsVD1JbyhGbyhuLnBlcnNwZWN0aXZlVGFuZ2VudEdhaW4sMiksLjI1LDQpLEU9TWF0aC5hdGFuKFQqTWF0aC50YW4odykpLEQ9TWF0aC5oeXBvdChkLncsZC5oLG0pLE89Qz9EKi41L01hdGgudGFuKEUpOjEvMCxrPShlLHQsbixyPSEwKT0+e2xldCBpPWUtaCxhPWctdCxvPU51bWJlci5pc0Zpbml0ZShuKT9uOjAscz0oLjUtKHI/SW8obywwLDEpOm8pKSptLGM9eSppK2IqcyxsPS1iKmkreSpzO3JldHVybnt4OmMseTp4KmEtUypsLHo6UyphK3gqbH19LEE9ZT0+e2lmKGUubGVuZ3RoPDMpcmV0dXJuIG51bGw7bGV0IHQ9ZS5tYXAoZT0+ayhlLngsZS55LGUuZGVwdGgsITEpKSxuPXRbMF0scj1udWxsO2ZvcihsZXQgZT0xO2UrMTx0Lmxlbmd0aCYmIXI7ZSsrKWZvcihsZXQgaT1lKzE7aTx0Lmxlbmd0aDtpKyspe2xldCBhPXRbZV0sbz10W2ldLHM9e3g6YS54LW4ueCx5OmEueS1uLnksejphLnotbi56fSxjPXt4Om8ueC1uLngseTpvLnktbi55LHo6by56LW4uen0sbD17eDpzLnkqYy56LXMueipjLnkseTpzLnoqYy54LXMueCpjLnosejpzLngqYy55LXMueSpjLnh9LHU9TWF0aC5oeXBvdChsLngsbC55LGwueik7aWYodT4yKiotNTIpe3I9e3g6bC54L3UseTpsLnkvdSx6Omwuei91fTticmVha319cmV0dXJuIHI/e25vcm1hbDpyLGNlbnRyb2lkOnQucmVkdWNlKChlLG4pPT4oe3g6ZS54K24ueC90Lmxlbmd0aCx5OmUueStuLnkvdC5sZW5ndGgsejplLnorbi56L3QubGVuZ3RofSkse3g6MCx5OjAsejowfSl9Om51bGx9LGo9LTEvMDtmb3IobGV0IGUgb2ZbZC54LGQueCtkLnddKWZvcihsZXQgdCBvZltkLnksZC55K2QuaF0pZm9yKGxldCBuIG9mWzAsMV0paj1NYXRoLm1heChqLGsoZSx0LG4pLnopO2xldCBNPUM/TWF0aC5tYXgoTyxqK0QqLjAxKToxLzAsTj0oZSx0LG4scj0hMCk9PntsZXQgaT1rKGUsdCxuLHIpO2lmKCFDKXJldHVybnt4OmkueCx5Oi1pLnl9O2xldCBhPU0vTWF0aC5tYXgoTSoxZS05LE0taS56KTtyZXR1cm57eDppLngqYSx5Oi1pLnkqYX19LFA9W107Zm9yKGxldCBlIG9mW2QueCxkLngrZC53XSlmb3IobGV0IHQgb2ZbZC55LGQueStkLmhdKWZvcihsZXQgbiBvZlswLDFdKVAucHVzaChOKGUsdCxuKSk7bGV0IEY9TWF0aC5taW4oLi4uUC5tYXAoZT0+ZS54KSksST1NYXRoLm1heCguLi5QLm1hcChlPT5lLngpKSxMPU1hdGgubWluKC4uLlAubWFwKGU9PmUueSkpLFI9TWF0aC5tYXgoLi4uUC5tYXAoZT0+ZS55KSksej1NYXRoLm1heChOdW1iZXIuTUlOX1ZBTFVFLEktRiksQj1NYXRoLm1heChOdW1iZXIuTUlOX1ZBTFVFLFItTCksZWU9TWF0aC5taW4odC53L3osdC5oL0IpKi45NCxWPXQueCsodC53LXoqZWUpLzItRiplZSxIPXQueSsodC5oLUIqZWUpLzItTCplZSxVPShlLHQsbik9PntsZXQgcj1OKGUsdCxuKTtyZXR1cm57eDpWK3IueCplZSx5Okgrci55KmVlfX0sVz0oZSx0LG4pPT57bGV0IHI9TihlLHQsbiwhMSk7cmV0dXJue3g6VityLngqZWUseTpIK3IueSplZX19LEc9ey4uLmR9LEs9VShoLGcsMCksdGU9VShoLGcsMSksbmU9dGUueC1LLngscmU9dGUueS1LLnksaWU9KGUsdCk9PmsoZT09PWB4YD90PT09YG1pbmA/ZC54OmQueCtkLnc6aCxlPT09YHlgP3Q9PT1gbWluYD9kLnk6ZC55K2QuaDpnLGU9PT1gZGVwdGhgP3Q9PT1gbWluYD8wOjE6LjUpLnosYWU9aWUoYHhgLGBtaW5gKTw9aWUoYHhgLGBtYXhgKT9gbWluYDpgbWF4YCxvZT1pZShgeWAsYG1pbmApPD1pZShgeWAsYG1heGApP2BtaW5gOmBtYXhgLHNlPWllKGBkZXB0aGAsYG1pbmApPj1pZShgZGVwdGhgLGBtYXhgKT8wOjEsY2U9KyhzZT09PTApLGxlPWU9PntsZXQgdD1lPT09YG1pbmA/ZC54OmQueCtkLncsbj1VKHQsZC55LHNlKSxyPVUodCxkLnkrZC5oLHNlKTtyZXR1cm4obi54K3IueCkvMn0sdWU9ZT0+e2xldCB0PWU9PT1gbWluYD9kLnk6ZC55K2QuaCxuPVUoZC54LHQsc2UpLHI9VShkLngrZC53LHQsc2UpO3JldHVybihuLnkrci55KS8yfSxxPWxlKGBtaW5gKTw9bGUoYG1heGApP2BtaW5gOmBtYXhgLGRlPXVlKGBtaW5gKT49dWUoYG1heGApP2BtaW5gOmBtYXhgLEo9ZT0+MS9NYXRoLm1heCgxLE1hdGgudHJ1bmMoZSkpLygxK3MvMTAwKSxZPShlLHQsbj0hMSk9Pm58fHQ8PTE/LjU6KElvKE1hdGgudHJ1bmMoZSksMCxNYXRoLm1heCgwLHQtMSkpKy41KS90O3JldHVybntzY2VuZTpkLGZyb250OkcsZGVwdGhYOm5lLGRlcHRoWTpyZSxtb2RlbERlcHRoOm0scGllU2NhbGVZOklvKE1hdGguc2luKE1hdGgubWF4KDEsTWF0aC5hYnMocikpKmYpKioxLjE1LC4yLDEpLHBpZVRoaWNrbmVzc0ZyYWN0aW9uOi4zKk1hdGgubWF4KDAsTWF0aC5jb3MoTWF0aC5hYnMocikqZikpLHByb2plY3Q6VSxwcm9qZWN0VW5ib3VuZGVkOlcsY2FtZXJhRGVwdGgoZSx0LG4pe3JldHVybiBrKGUsdCxuLCExKS56fSxjYW1lcmFQcm9qZWN0aW9uV2VpZ2h0KGUsdCxuKXtpZighQylyZXR1cm4gMTtsZXQgcj1rKGUsdCxuLCExKS56O3JldHVybiAxL01hdGgubWF4KE0qMWUtOSxNLXIpfSxjYW1lcmFGYWNpbmcoZSl7bGV0IHQ9QShlKTtpZighdClyZXR1cm4hMTtsZXR7bm9ybWFsOm4sY2VudHJvaWQ6cn09dCxpPUM/e3g6LXIueCx5Oi1yLnksejpNLXIuen06e3g6MCx5OjAsejoxfSxhPW4ueCppLngrbi55KmkueStuLnoqaS56LG89TWF0aC5oeXBvdChpLngsaS55LGkueik7cmV0dXJuIG8+MCYmYT5vKjFlLTEwfSxjYW1lcmFOb3JtYWwoZSl7cmV0dXJuIEEoZSk/Lm5vcm1hbD8/bnVsbH0sdG9wb2xvZ3k6e2Zhclg6YWUsZmFyWTpvZSxheGlzWDpxLGF4aXNZOmRlLG5lYXJEZXB0aDpzZSxmYXJEZXB0aDpjZX0sc2VyaWVzRGVwdGg6WSxwcmlzbURlcHRoOkoscHJpc21JbnRlcnZhbChlLHQsbj0hMSl7bGV0IHI9WShlLHQsbiksaT1KKG4/MTp0KS8yO3JldHVybntuZWFyOklvKHItaSwwLDEpLGZhcjpJbyhyK2ksMCwxKX19fX12YXIgUG8sRm8sSW8sTG89dCgoKCk9PntQbz00Mjk0OTY3Mjk1LEZvPShlLHQpPT50eXBlb2YgZT09YG51bWJlcmAmJk51bWJlci5pc0Zpbml0ZShlKT9lOnQsSW89KGUsdCxuKT0+TWF0aC5taW4obixNYXRoLm1heCh0LGUpKX0pKTtmdW5jdGlvbiBSbyhlLHQpe3JldHVybiB0Py5jb2xvcj9gIyR7dC5jb2xvcn1gOmAjJHtzdVtlJXN1Lmxlbmd0aF19YH1mdW5jdGlvbiB6byhlKXtsZXQgdD1uZXcgTWFwO2ZvcihsZXQgbiBvZiBlPz9bXSl0LmhhcyhuLmlkeCl8fHQuc2V0KG4uaWR4LG4pO3JldHVybiB0fWZ1bmN0aW9uIEJvKGUsdCxuPSEwKXtsZXQgcj10LmRhdGFQb2ludENvbG9ycz8uW2VdO3JldHVybiByP2AjJHtyfWA6dC5jb2xvcj09PWAwMDAwMDAwMGA/YCMwMDAwMDAwMGA6bj9gIyR7c3VbZSVzdS5sZW5ndGhdfWA6Um8oZSx0KX1mdW5jdGlvbiBWbyhlLHQpe3JldHVybiB0JiYodC5zdGFydHNXaXRoKGArbWpgKT9lLnRoZW1lTWFqb3JGb250TGF0aW4/P251bGw6dC5zdGFydHNXaXRoKGArbW5gKT9lLnRoZW1lTWlub3JGb250TGF0aW4/P251bGw6dCl9ZnVuY3Rpb24gJChlLHQsbil7bGV0IHI9bj09PWBtYWpvcmA/ZS50aGVtZU1ham9yRm9udExhdGluOmUudGhlbWVNaW5vckZvbnRMYXRpbixpPVZvKGUsdCk/P3I7cmV0dXJuIGk/YCIke2l9IiwgQ2FsaWJyaSwgQXJpYWwsIHNhbnMtc2VyaWZgOmBzYW5zLXNlcmlmYH1mdW5jdGlvbiBIbyhlLHQsbj0hMSxyPSExKXtyZXR1cm5gJHtyP2BpdGFsaWMgYDpgYH0ke24/YGJvbGQgYDpgYH0ke2V9cHggJHt0fWB9ZnVuY3Rpb24gVW8oZSl7cmV0dXJuIGU9PT1gcGllYHx8ZT09PWBkb3VnaG51dGB9ZnVuY3Rpb24gV28oZSl7cmV0dXJuIGUuY2hhcnRUeXBlPT09YGJ1YmJsZWAmJmUuc2VyaWVzLmxlbmd0aD09PTEmJmUuc2VyaWVzWzBdPy5idWJibGVYU291cmNlSXNTdHJpbmc9PT0hMD8hMDohIWUudmFyeUNvbG9ycyYmZS5zZXJpZXMubGVuZ3RoPT09MSYmdHlwZW9mIGUuY2hhcnRUeXBlPT1gc3RyaW5nYCYmL0Jhci8udGVzdChlLmNoYXJ0VHlwZSl9ZnVuY3Rpb24gR28oZSx0LG4scj0hMSl7aWYocnx8VW8oZSkpe2xldCBlPXRbMF07cmV0dXJuIGU/Qm8obixlKTpgIyR7c3VbbiVzdS5sZW5ndGhdfWB9cmV0dXJuIFJvKG4sdFtuXSl9ZnVuY3Rpb24gS28oZSx0LG4scixpLGEsbyxzLGMsbCx1PWBzYW5zLXNlcmlmYCxkLGYscCxtKXtlLnNhdmUoKSxlLmZvbnQ9SG8oYSx1LG8scyksZS5maWxsU3R5bGU9YztsZXQgaD1wP3Q6a2EoZSx0LGwpLGc9THQoaSxkLGYpLF89bix2PXI7aWYocCYmbSl7bGV0IHQ9ZS5tZWFzdXJlVGV4dChoKS53aWR0aCxpPU1hdGguYWJzKE1hdGguY29zKGcpKSxvPU1hdGguYWJzKE1hdGguc2luKGcpKSxzPXQqaSthKm8sYz10Km8rYSppLGw9e3g6bi1zLzIseTpyLWMvMix3OnMsaDpjfSx1PUd0KHsuLi5wLHc6dm9pZCAwLGg6dm9pZCAwfSxtLGwpO3UmJihfPXUueCt1LncvMix2PXUueSt1LmgvMil9ZS50cmFuc2xhdGUoXyx2KSxnIT09MCYmZS5yb3RhdGUoZyksZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWAsZS5maWxsVGV4dChoLDAsMCksZS5yZXN0b3JlKCl9ZnVuY3Rpb24gcW8oZSl7cmV0dXJuIGU/YCMke2V9YDpgIzU1NWB9ZnVuY3Rpb24gSm8oZSx0LG4scixpLGEsbyxzLGMsbCx1LGQsZixwLG09ITEpe2xldCBoPSh0LGYscCxtLGgsZyxfLHYseSxiKT0+e2lmKGY9PT1gbGVmdGApe0tvKGUsdCxuK3UrUnQoaSkrcC8yLHMrbC8yLGYscCxtLGgsZyxsLF8sdix5LGIse3g6bix5OnIsdzppLGg6YX0pO3JldHVybn1LbyhlLHQsbytjLzIscithLWQtUnQoYSktcC8yLGYscCxtLGgsZyxjLF8sdix5LGIse3g6bix5OnIsdzppLGg6YX0pfTt0LnZhbEF4aXNUaXRsZSYmaCh0LnZhbEF4aXNUaXRsZSxtP2Bob3Jpem9udGFsYDpgbGVmdGAscCx0LnZhbEF4aXNUaXRsZUZvbnRCb2xkPz8hMCx0LnZhbEF4aXNUaXRsZUZvbnRJdGFsaWM/PyExLHFvKHQudmFsQXhpc1RpdGxlRm9udENvbG9yKSwkKHQsdC52YWxBeGlzVGl0bGVGb250RmFjZSxgbWFqb3JgKSx0LnZhbEF4aXNUaXRsZVJvdGF0aW9uLHQudmFsQXhpc1RpdGxlVmVydGljYWxNb2RlLHQudmFsQXhpc1RpdGxlTWFudWFsTGF5b3V0KSx0LmNhdEF4aXNUaXRsZSYmaCh0LmNhdEF4aXNUaXRsZSxtP2BsZWZ0YDpgaG9yaXpvbnRhbGAsZix0LmNhdEF4aXNUaXRsZUZvbnRCb2xkPz8hMCx0LmNhdEF4aXNUaXRsZUZvbnRJdGFsaWM/PyExLHFvKHQuY2F0QXhpc1RpdGxlRm9udENvbG9yKSwkKHQsdC5jYXRBeGlzVGl0bGVGb250RmFjZSxgbWFqb3JgKSx0LmNhdEF4aXNUaXRsZVJvdGF0aW9uLHQuY2F0QXhpc1RpdGxlVmVydGljYWxNb2RlLHQuY2F0QXhpc1RpdGxlTWFudWFsTGF5b3V0KX1mdW5jdGlvbiBZbyhlKXtyZXR1cm4gZS5kYXRhVGFibGUhPW51bGwmJk9uKGUuY2hhcnRUeXBlKX1mdW5jdGlvbiBYbyhlKXtsZXQgdD1lLmNoYXJ0VHlwZT09PWBjbHVzdGVyZWRCYXJIYHx8ZS5jaGFydFR5cGU9PT1gc3RhY2tlZEJhckhgfHxlLmNoYXJ0VHlwZT09PWBzdGFja2VkQmFySFBjdGAsbj1lLnNlcmllcy5tYXAoKGUsdCk9Pih7c2VyaWVzOmUsc291cmNlSW5kZXg6dH0pKTtyZXR1cm4gdD9uLnJldmVyc2UoKTpufWZ1bmN0aW9uIFpvKGUsdCl7bGV0IG49WW8oZSk/ZS5kYXRhVGFibGU6bnVsbDtpZighbilyZXR1cm4gMDtsZXQgcj1BdChuLmZvbnRTaXplSHB0LHQpPz85KnQsaT1NYXRoLm1heCgxLHIqMS4yKSs0KnQ7cmV0dXJuKGUuc2VyaWVzLmxlbmd0aCsxKSppfWZ1bmN0aW9uIFFvKGUsdCxuKXtsZXQgcj1Zbyh0KT90LmRhdGFUYWJsZTpudWxsO2lmKCFyKXJldHVybiAwO2xldCBpPUF0KHIuZm9udFNpemVIcHQsbik/PzkqbixhPSQodCxyLmZvbnRGYWNlLGBtaW5vcmApO2Uuc2F2ZSgpLGUuZm9udD1IbyhpLGEsci5mb250Qm9sZD8/ITEsci5mb250SXRhbGljPz8hMSk7bGV0IG89dC5zZXJpZXMucmVkdWNlKCh0LG4pPT5NYXRoLm1heCh0LGUubWVhc3VyZVRleHQobi5uYW1lKS53aWR0aCksMCk7ZS5yZXN0b3JlKCk7bGV0IHM9ci5zaG93S2V5cz9NYXRoLm1heCgxMipuLGkqMS43KTowLGM9ci5zaG93S2V5cz80Km46MDtyZXR1cm4gbytzK2MrNipufWZ1bmN0aW9uICRvKGUsdCxuLHIpe2xldCBpPVlvKHQpP3QuZGF0YVRhYmxlOm51bGw7aWYoIWkpcmV0dXJuIG51bGw7bGV0IGE9QXQoaS5mb250U2l6ZUhwdCxyKT8/OSpyLG89TWF0aC5tYXgoMSxhKjEuMikscz1vKzQqcixjPSQodCxpLmZvbnRGYWNlLGBtaW5vcmApO2Uuc2F2ZSgpLGUuZm9udD1IbyhhLGMsaS5mb250Qm9sZD8/ITEsaS5mb250SXRhbGljPz8hMSk7bGV0IGw9dC5zZXJpZXMuZmluZChlPT5lLmNhdEZvcm1hdENvZGUpPy5jYXRGb3JtYXRDb2RlPz90LmNhdEF4aXNGb3JtYXRDb2RlLHU9dC5zZXJpZXMuZmluZChlPT5lLmNhdEZvcm1hdEJ1aWx0aW5JZCE9bnVsbCk/LmNhdEZvcm1hdEJ1aWx0aW5JZCxkPXBjKHQpLm1hcChpPT57bGV0IGE9aS50cmltKCk9PT1gYD9OYU46TnVtYmVyKGkpO3JldHVybiBYcyhlLHU9PT0xNCYmTnVtYmVyLmlzRmluaXRlKGEpP3ZhKGEsdC5kYXRlMTkwNCk6eGEoaSxsLHQuZGF0ZTE5MDQpLE1hdGgubWF4KDEsbi00KnIpKX0pO2UucmVzdG9yZSgpO2xldCBmPU1hdGgubWF4KDEsLi4uZC5tYXAoZT0+ZS5sZW5ndGgpKSpvKzQqcjtyZXR1cm57Zm9udFB4OmEsbGluZUhlaWdodDpvLGhlYWRlckxpbmVzOmQsaGVhZGVySGVpZ2h0OmYscm93SGVpZ2h0OnMsdG90YWxIZWlnaHQ6ZitYbyh0KS5sZW5ndGgqc319ZnVuY3Rpb24gZXMoZSx0LG4scixpLGEsbyxzKXtsZXQgYz10LmRhdGFUYWJsZTtpZighY3x8IW4pcmV0dXJuO2xldCBsPXBjKHQpO2lmKGwubGVuZ3RoPT09MClyZXR1cm47bGV0IHU9YS9sLmxlbmd0aCxkPSQodCxjLmZvbnRGYWNlLGBtaW5vcmApLGY9SG8obi5mb250UHgsZCxjLmZvbnRCb2xkPz8hMSxjLmZvbnRJdGFsaWM/PyExKSxwPWMuc2hvd0tleXM/TWF0aC5tYXgoMTIqcyxuLmZvbnRQeCoxLjcpOjAsbT1jLnNob3dLZXlzPzQqczowO2Uuc2F2ZSgpLGUuZm9udD1mO2xldCBoPXQuc2VyaWVzLnJlZHVjZSgodCxuKT0+TWF0aC5tYXgodCxlLm1lYXN1cmVUZXh0KG4ubmFtZSkud2lkdGgpLDApK3ArbSs2KnMsZz1NYXRoLm1pbihNYXRoLm1heCgwLHItbyksaCksXz1yLWcsdj1nK2EseT1pK24udG90YWxIZWlnaHQsYj1Ybyh0KSx4PXNzKHQuc2VyaWVzLHQuY2hhcnRUeXBlLHQuc2NhdHRlclN0eWxlLCExLHQuY2F0ZWdvcmllcyxbXSwhMCxbXSx0LnJhZGFyU3R5bGUsdCksUz1jLmZpbGxDb2xvcj8/bnVsbDtlLmJlZ2luUGF0aCgpLGUucmVjdChfLGksdixuLnRvdGFsSGVpZ2h0KSxlLmNsaXAoKTtsZXQgQz1jLmZvbnRDb2xvcj9gIyR7Yy5mb250Q29sb3J9YDpgIzAwMDAwMGAsdz0odCxyLGkpPT57aWYoUyYmdCE9PWBgKXtsZXQgYT1lLm1lYXN1cmVUZXh0KHQpLndpZHRoO2UuZmlsbFN0eWxlPWAjJHtTfWAsZS5maWxsUmVjdChyLWEvMixpLW4ubGluZUhlaWdodC8yLGEsbi5saW5lSGVpZ2h0KX1lLmZpbGxTdHlsZT1DLGUudGV4dEFsaWduPWBjZW50ZXJgLGUuZmlsbFRleHQodCxyLGkpfTtlLmZpbGxTdHlsZT1DLGUudGV4dEFsaWduPWBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgO2ZvcihsZXQgZT0wO2U8bC5sZW5ndGg7ZSsrKXtsZXQgdD1yKyhlKy41KSp1LGE9bi5oZWFkZXJMaW5lc1tlXT8/W2BgXSxvPWEubGVuZ3RoKm4ubGluZUhlaWdodCxzPWkrKG4uaGVhZGVySGVpZ2h0LW8pLzIrbi5saW5lSGVpZ2h0LzI7YS5mb3JFYWNoKChlLHIpPT57dyhlLHQscytyKm4ubGluZUhlaWdodCl9KX1mb3IobGV0IHQ9MDt0PGIubGVuZ3RoO3QrKyl7bGV0e3NlcmllczphLHNvdXJjZUluZGV4Om99PWJbdF0sZD1pK24uaGVhZGVySGVpZ2h0K3Qqbi5yb3dIZWlnaHQrbi5yb3dIZWlnaHQvMjtpZihnPjApe2xldCB0PV8rMypzK3ArbTtpZihlLnRleHRBbGlnbj1gbGVmdGAsZS5maWxsVGV4dChrYShlLGEubmFtZSxNYXRoLm1heCgwLHItdC0yKnMpKSx0LGQpLGMuc2hvd0tleXMmJnA+MCl7bGV0IHQ9XyszKnMscj14W29dO2lmKHIpe2xldCBpPU1hdGgubWluKG4uZm9udFB4LG4ucm93SGVpZ2h0LTIqcyk7YXMoZSxyLnN3YXRjaFN0eWxlLHIuY29sb3IsdCxkLWkvMixwLGksci5tYXJrZXIsci5maWxsUGFpbnQsci5vdXRsaW5lQ29sb3Isci5vdXRsaW5lV2lkdGhFbXUsci5vdXRsaW5lRGFzaCxyLm91dGxpbmVDYXAsci5vdXRsaW5lSm9pbixzKX1lLmZpbGxTdHlsZT1DfX1mb3IobGV0IGU9MDtlPGwubGVuZ3RoO2UrKyl7bGV0IHQ9YS52YWx1ZXNbZV07dyh0PT1udWxsP2BgOmJhKHQsYS52YWxGb3JtYXRDb2RlKSxyKyhlKy41KSp1LGQpfX1pZihjLmxpbmVIaWRkZW4hPT0hMCl7aWYoZS5zdHJva2VTdHlsZT1jLmxpbmVDb2xvcj9gIyR7Yy5saW5lQ29sb3J9YDpgIzgwODA4MGAsZS5saW5lV2lkdGg9Yy5saW5lV2lkdGhFbXU9PW51bGw/TWF0aC5tYXgoLjUscyouNzUpOmlhKGMubGluZVdpZHRoRW11LHMpLGUuc2V0TGluZURhc2goRGwoYy5saW5lRGFzaD8/dm9pZCAwLGUubGluZVdpZHRoKSksYy5zaG93SG9yaXpvbnRhbEJvcmRlcil7bGV0IHQ9aStuLmhlYWRlckhlaWdodDtmb3IobGV0IHI9MDtyPGIubGVuZ3RoO3IrKyllLmJlZ2luUGF0aCgpLGUubW92ZVRvKF8sdCksZS5saW5lVG8oXyt2LHQpLGUuc3Ryb2tlKCksdCs9bi5yb3dIZWlnaHR9aWYoYy5zaG93VmVydGljYWxCb3JkZXIpe2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8ocixpKSxlLmxpbmVUbyhyLHkpLGUuc3Ryb2tlKCk7Zm9yKGxldCB0PTE7dDxsLmxlbmd0aDt0Kyspe2xldCBuPXIrdCp1O2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8obixpKSxlLmxpbmVUbyhuLHkpLGUuc3Ryb2tlKCl9fWlmKGMuc2hvd091dGxpbmUpe2xldCB0PWUubGluZVdpZHRoLzI7ZS5zdHJva2VSZWN0KF8rdCxpK3QsTWF0aC5tYXgoMCx2LWUubGluZVdpZHRoKSxNYXRoLm1heCgwLG4udG90YWxIZWlnaHQtZS5saW5lV2lkdGgpKX19ZS5yZXN0b3JlKCl9ZnVuY3Rpb24gdHMoZSl7cmV0dXJuIGUmJihlPT09YGxpbmVgfHxlPT09YHN0YWNrZWRMaW5lYHx8ZT09PWBzdGFja2VkTGluZVBjdGB8fGU9PT1gcmFkYXJgfHxlPT09YHNjYXR0ZXJgfHxlPT09YHN0b2NrYCk/YGxpbmVgOmBmaWxsYH1mdW5jdGlvbiBucyhlLHQsbil7aWYoZSE9PWBzY2F0dGVyYClyZXR1cm4hMTtsZXQgcj10Pz9gbWFya2VyYDtyZXR1cm4ocj09PWBtYXJrZXJgfHxyPT09YGxpbmVgfHxyPT09YGxpbmVNYXJrZXJgfHxyPT09YGxpbmVOb01hcmtlcmB8fHI9PT1gc21vb3RoYHx8cj09PWBzbW9vdGhNYXJrZXJgfHxyPT09YHNtb290aE5vTWFya2VyYCkmJm4ubGluZUhpZGRlbiE9PSEwfWZ1bmN0aW9uIHJzKGUsdCxuLHIsaSxhKXtsZXQgbz1yW2ldO2lmKCFvKXJldHVybiBudWxsO2xldCBzPW8uc2VyaWVzVHlwZT8/ZSxjPXM9PT1gc3RvY2tgLGw9cz09PWBsaW5lYHx8cz09PWBzdGFja2VkTGluZWB8fHM9PT1gc3RhY2tlZExpbmVQY3RgfHxzPT09YHJhZGFyYHx8Yyx1PXM9PT1gYnViYmxlYCxkPXM9PT1gc2NhdHRlcmB8fHU7aWYoIWwmJiFkfHwham4oZSx0LG8sbikpcmV0dXJuIG51bGw7bGV0IGY9by5tYXJrZXJTeW1ib2w/P28uYXV0b21hdGljTWFya2VyU3ltYm9sPz8oYz9gbm9uZWA6YGNpcmNsZWApLHA9Um8oaSxvKSxtPUluKG8scC5yZXBsYWNlKC9eIy8sYGApKSxoPXU/ITE6ZD9ucyhgc2NhdHRlcmAsdCxvKTpvLmxpbmVIaWRkZW4hPT0hMDtpZih1JiZhKXtsZXQgZT11bChhLG8sdm9pZCAwLGkscCksdD1kbChhLG8sdm9pZCAwLGkpO3JldHVybntzeW1ib2w6YGNpcmNsZWAsZmlsbDplLmNvbG9yLGZpbGxQYWludDplLnBhaW50LGxpbmU6dC5jb2xvcixsaW5lV2lkdGhFbXU6dC53aWR0aEVtdT8/bnVsbCxsaW5lUGFpbnQ6dC5wYWludCxsaW5lRGFzaDp0LmRhc2gsbGluZUN1c3RvbURhc2g6dC5jdXN0b21EYXNoLGxpbmVDYXA6dC5jYXAsbGluZUpvaW46dC5qb2luLGJ1YmJsZTNEOnduKG8sdm9pZCAwKSx3aXRoTGluZTohMX19cmV0dXJue3N5bWJvbDpmLGZpbGw6bSxmaWxsUGFpbnQ6Rm4obyksbGluZTpvLm1hcmtlckxpbmU/P251bGwsbGluZVdpZHRoRW11Om8ubWFya2VyTGluZVdpZHRoRW11Pz9udWxsLHdpdGhMaW5lOmh9fWZ1bmN0aW9uIGlzKGUsdCxuLHIpe2xldCBpPXVsKGUsdCxuLHIsUm8oMCx0KSksYT1kbChlLHQsbixyKTtyZXR1cm57c3ltYm9sOmBjaXJjbGVgLGZpbGw6aS5jb2xvcixmaWxsUGFpbnQ6aS5wYWludCxsaW5lOmEuY29sb3IsbGluZVdpZHRoRW11OmEud2lkdGhFbXU/P251bGwsbGluZVBhaW50OmEucGFpbnQsbGluZURhc2g6YS5kYXNoLGxpbmVDdXN0b21EYXNoOmEuY3VzdG9tRGFzaCxsaW5lQ2FwOmEuY2FwLGxpbmVKb2luOmEuam9pbixidWJibGUzRDp3bih0LG4pLHdpdGhMaW5lOiExfX1mdW5jdGlvbiBhcyhlLHQsbixyLGksYSxvLHM9bnVsbCxjPXZvaWQgMCxsPW51bGwsdT1udWxsLGQ9bnVsbCxmPW51bGwscD1udWxsLG09MSxoPTApe2lmKHQhPT1gbm9uZWApe2lmKHMmJiFzLndpdGhMaW5lKXtfbChlLHIrYS8yLGkrby8yLHMuc3ltYm9sLG8qLjU4L20scy5maWxsLHMubGluZSxtLHMubGluZVdpZHRoRW11PT1udWxsP3ZvaWQgMDppYShzLmxpbmVXaWR0aEVtdSxtKSxzLmZpbGxQYWludCxoLHMubGluZVBhaW50LHMubGluZURhc2gscy5saW5lQ3VzdG9tRGFzaCxzLmxpbmVDYXAscy5saW5lSm9pbixzLmJ1YmJsZTNEKTtyZXR1cm59aWYoZS5maWxsU3R5bGU9bix0PT09YGxpbmVgKXtpZighKGwhPW51bGx8fHUhPW51bGx8fGQhPW51bGx8fGYhPW51bGx8fHAhPW51bGwpKXtlLnN0cm9rZVN0eWxlPW47bGV0IHQ9ZS5saW5lV2lkdGg7ZS5saW5lV2lkdGg9TWF0aC5tYXgoMS41LG8qLjE1KSxlLmJlZ2luUGF0aCgpO2xldCBjPWkrby8yO2UubW92ZVRvKHIsYyksZS5saW5lVG8ocithLGMpLGUuc3Ryb2tlKCksZS5saW5lV2lkdGg9dCxzJiZfbChlLHIrYS8yLGkrby8yLHMuc3ltYm9sLG8qLjU4L20scy5maWxsLHMubGluZSxtLHMubGluZVdpZHRoRW11PT1udWxsP3ZvaWQgMDppYShzLmxpbmVXaWR0aEVtdSxtKSxzLmZpbGxQYWludCxoLHMubGluZVBhaW50LHMubGluZURhc2gscy5saW5lQ3VzdG9tRGFzaCxzLmxpbmVDYXAscy5saW5lSm9pbixzLmJ1YmJsZTNEKTtyZXR1cm59ZS5zYXZlKCksZS5zdHJva2VTdHlsZT1sP2AjJHtsfWA6bixlLmxpbmVXaWR0aD11PT1udWxsP01hdGgubWF4KDEuNSxvKi4xNSk6aWEodSxtKSxlLnNldExpbmVEYXNoKERsKGQ/P3ZvaWQgMCxlLmxpbmVXaWR0aCkpLGUubGluZUNhcD1mPT09YHJuZGA/YHJvdW5kYDpmPT09YHNxYD9gc3F1YXJlYDpgYnV0dGAsZS5saW5lSm9pbj1wPT09YHJvdW5kYHx8cD09PWBiZXZlbGA/cDpgbWl0ZXJgLGUuYmVnaW5QYXRoKCk7bGV0IHQ9aStvLzI7ZS5tb3ZlVG8ocix0KSxlLmxpbmVUbyhyK2EsdCksZS5zdHJva2UoKSxzJiZfbChlLHIrYS8yLGkrby8yLHMuc3ltYm9sLG8qLjU4L20scy5maWxsLHMubGluZSxtLHMubGluZVdpZHRoRW11PT1udWxsP3ZvaWQgMDppYShzLmxpbmVXaWR0aEVtdSxtKSxzLmZpbGxQYWludCxoLHMubGluZVBhaW50LHMubGluZURhc2gscy5saW5lQ3VzdG9tRGFzaCxzLmxpbmVDYXAscy5saW5lSm9pbixzLmJ1YmJsZTNEKSxlLnJlc3RvcmUoKX1lbHNlIGlmKGMhPT1udWxsJiYoYyYmKGUuZmlsbFN0eWxlPWMuZmlsbFR5cGU9PT1gc29saWRgP2MuY29sb3Iuc3RhcnRzV2l0aChgI2ApP2MuY29sb3I6YCMke2MuY29sb3J9YDphaShjLGUscixpLGEsbyxoKT8/biksZS5maWxsUmVjdChyLGksYSxvKSksbCl7bGV0IHQ9aWEodSxtKTtlLnNhdmUoKSxlLnN0cm9rZVN0eWxlPWAjJHtsfWAsZS5saW5lV2lkdGg9dCxlLnNldExpbmVEYXNoKERsKGQ/P3ZvaWQgMCxlLmxpbmVXaWR0aCkpLGUubGluZUNhcD1mPT09YHJuZGA/YHJvdW5kYDpmPT09YHNxYD9gc3F1YXJlYDpgYnV0dGAsZS5saW5lSm9pbj1wPT09YHJvdW5kYHx8cD09PWBiZXZlbGA/cDpgbWl0ZXJgLGUuc3Ryb2tlUmVjdChyK3QvMixpK3QvMixNYXRoLm1heCgwLGEtdCksTWF0aC5tYXgoMCxvLXQpKSxlLnJlc3RvcmUoKX19fWZ1bmN0aW9uIG9zKGUsdCl7aWYodC5sZW5ndGg9PT0wKXJldHVyblsuLi5lXTtsZXQgbj1uZXcgTWFwO2ZvcihsZXQgZSBvZiB0KW4uc2V0KGUuaWR4LGUpO2xldCByPVtdO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKXtsZXQgaT1uLmdldCh0KTtpPy5kZWxldGVkIT09ITAmJnIucHVzaCh7Li4uZVt0XSx0ZXh0T3ZlcnJpZGU6aT8/bnVsbH0pfXJldHVybiByfWZ1bmN0aW9uIHNzKGUsdCxuLHI9ITEsaT1bXSxhPVtdLG89ITAscz1bXSxjLGwpe2lmKHJ8fFVvKHQpKXtsZXQgbj1lWzBdLGM9bj9uLnZhbHVlcy5sZW5ndGg6MCx1PW4/LmNhdGVnb3JpZXM/P2ksZD1uZXcgTWFwKG4/LmRhdGFQb2ludE92ZXJyaWRlcz8ubWFwKGU9PltlLmlkeCxlXSk/P1tdKTtyZXR1cm4gb3MoQXJyYXkuZnJvbSh7bGVuZ3RoOmN9LChpLHMpPT57bGV0IGM9ZC5nZXQocyksZj0oYz8ubGluZUhpZGRlbj8/bj8ubGluZUhpZGRlbikhPT0hMCxwPXQ9PT1gYnViYmxlYCYmbCYmbj9pcyhsLG4sYyxzKTpudWxsO3JldHVybntsYWJlbDoodVtzXT8/YEl0ZW0gJHtzKzF9YCkudG9TdHJpbmcoKSxjb2xvcjpVbyh0KSYmbj9CbyhzLG4sbyk6R28odCxlLHMsciksbWFya2VyOnAsc3dhdGNoU3R5bGU6dHModCksZmlsbFBhaW50OmM/LmZpbGxIaWRkZW49PT0hMD9udWxsOmM/LmNvbG9yfHxuPy5kYXRhUG9pbnRDb2xvcnM/LltzXT92b2lkIDA6czxhLmxlbmd0aD9hW3NdOm4/LmZpbGxQYXR0ZXJuPz92b2lkIDAsb3V0bGluZUNvbG9yOmY/Yz8ubGluZUNvbG9yPz9uPy5saW5lQ29sb3I/P251bGw6bnVsbCxvdXRsaW5lV2lkdGhFbXU6Zj9jPy5saW5lV2lkdGhFbXU/P24/LmxpbmVXaWR0aEVtdT8/bnVsbDpudWxsLG91dGxpbmVEYXNoOmY/Yz8ubGluZURhc2g/P24/LmNoYXJ0ZXhTdHlsZT8ubGluZURhc2g/P251bGw6bnVsbCxvdXRsaW5lQ2FwOmY/bj8uY2hhcnRleFN0eWxlPy5saW5lQ2FwPz9udWxsOm51bGwsb3V0bGluZUpvaW46Zj9uPy5jaGFydGV4U3R5bGU/LmxpbmVKb2luPz9udWxsOm51bGwsdGV4dE92ZXJyaWRlOm51bGx9fSkscyl9cmV0dXJuIG9zKGUubWFwKChyLGkpPT57bGV0IG89ci5zZXJpZXNUeXBlPz90LHM9ci5saW5lSGlkZGVuIT09ITAsdT1zP3IubGluZUNvbG9yPz9udWxsOm51bGwsZD1ycyh0LG4sYyxlLGksbCksZj1vPT09YHN0b2NrYCYmIXMmJiFkP2Bub25lYDp0cyhvKTtyZXR1cm57bGFiZWw6ci5uYW1lfHxgU2VyaWVzICR7aSsxfWAsY29sb3I6Zj09PWBsaW5lYCYmdT9gIyR7dX1gOkdvKHQsZSxpKSxtYXJrZXI6ZCxzd2F0Y2hTdHlsZTpmLGZpbGxQYWludDppPGEubGVuZ3RoP2FbaV06ci5maWxsUGF0dGVybj8/dm9pZCAwLG91dGxpbmVDb2xvcjp1LG91dGxpbmVXaWR0aEVtdTpzP3IubGluZVdpZHRoRW11Pz9udWxsOm51bGwsb3V0bGluZURhc2g6cz9yLmNoYXJ0ZXhTdHlsZT8ubGluZURhc2g/P251bGw6bnVsbCxvdXRsaW5lQ2FwOnM/ci5jaGFydGV4U3R5bGU/LmxpbmVDYXA/P251bGw6bnVsbCxvdXRsaW5lSm9pbjpzP3IuY2hhcnRleFN0eWxlPy5saW5lSm9pbj8/bnVsbDpudWxsLHRleHRPdmVycmlkZTpudWxsfX0pLHMpfWZ1bmN0aW9uIGNzKGUsdCxuPTApe2xldCByPVdvKGUpfHxVbyhlLmNoYXJ0VHlwZSksaT1zcyhlLnNlcmllcyxlLmNoYXJ0VHlwZSxlLnNjYXR0ZXJTdHlsZSxXbyhlKSxlLmNhdGVnb3JpZXMsW10sZS52YXJ5Q29sb3JzIT09ITEsW10sZS5yYWRhclN0eWxlLGUpO3JldHVybihlLGEpPT57bGV0IG89aVtyP2E6ZV07cmV0dXJuIG8/e2VudHJ5Om8scHRUb1B4OnQsc2hhcGVSb3RhdGlvbkRlZzpufTp2b2lkIDB9fWZ1bmN0aW9uIGxzKGUsdCxuLHIpe2lmKCFuKXJldHVybiB0O2xldCBpPVZvKGUsbi5mb250RmFjZSk/P24uZm9udEZhY2U7cmV0dXJue2ZvbnRGYW1pbHk6aT9gIiR7aX0iLCBDYWxpYnJpLCBBcmlhbCwgc2Fucy1zZXJpZmA6dC5mb250RmFtaWx5LGNvbG9yOm4uZm9udENvbG9yP2AjJHtuLmZvbnRDb2xvcn1gOnQuY29sb3IsYm9sZDpuLmZvbnRCb2xkPz90LmJvbGQsc2l6ZVB4OkF0KG4uZm9udFNpemVIcHQscik/P3Quc2l6ZVB4fX1mdW5jdGlvbiB1cyhlLHQsbil7bGV0IHI9ZHModCxuKTtyZXR1cm4gZS5mb250PWAke3QuYm9sZD9gYm9sZCBgOmBgfSR7cn1weCAke3QuZm9udEZhbWlseX1gLHJ9ZnVuY3Rpb24gZHMoZSx0KXtyZXR1cm4gZS5zaXplUHg/PzEwKnR9ZnVuY3Rpb24gZnMoZSx0LG4pe3JldHVybiBlLm1hcChlPT57aWYoZS5zd2F0Y2hTdHlsZT09PWBmaWxsYClyZXR1cm4gdnUqbjtsZXQgcj10KjEuNjtpZihlLnN3YXRjaFN0eWxlIT09YGxpbmVgfHwhZS5vdXRsaW5lRGFzaClyZXR1cm4gcjtsZXQgaT1lLm91dGxpbmVXaWR0aEVtdT09bnVsbD9NYXRoLm1heCgxLjUsdCouMTUpOmlhKGUub3V0bGluZVdpZHRoRW11LG4pLGE9RGwoZS5vdXRsaW5lRGFzaCxpKSxvPWEubGVuZ3RoPjA/YS5yZWR1Y2UoKGUsdCk9PmUrdCwwKSthWzBdOjA7cmV0dXJuIE1hdGgubWF4KHIsbyl9KX1mdW5jdGlvbiBwcyhlLHQsbil7cmV0dXJuIGUuc3dhdGNoU3R5bGU9PT1gZmlsbGA/dnUqbjp0fWZ1bmN0aW9uIG1zKGUsdCxuKXtpZighKG4+MCkpcmV0dXJuW107bGV0IHI9WHMoZSx0LG4pO3JldHVybiByLmxlbmd0aDw9Mj9yOltyWzBdLGthKGUsci5zbGljZSgxKS5qb2luKGAgYCksbildfWZ1bmN0aW9uIGhzKGUsdCxuLHIsaSxhKXtpZighdC5zaG93TGVnZW5kKXJldHVybiBudWxsO2xldCBvPV9zKHQsYSkscz1zcyhKcyh0KSx0LmNoYXJ0VHlwZSx0LnNjYXR0ZXJTdHlsZSxXbyh0KSx0LmNhdGVnb3JpZXMsW10sdC52YXJ5Q29sb3JzIT09ITEsdC5sZWdlbmRFbnRyaWVzPz9bXSx0LnJhZGFyU3R5bGUsdCksYz1zLm1hcChlPT5scyh0LG8sZS50ZXh0T3ZlcnJpZGUsYSkpLGw9Yy5tYXAoZT0+ZHMoZSxhKSksdT1zLm1hcCgoZSx0KT0+ZnMoW2VdLGxbdF0sYSlbMF0pO2Uuc2F2ZSgpO2xldCBkPXMubWFwKCh0LG4pPT4odXMoZSxjW25dLGEpLHVbbl0rdXUrZS5tZWFzdXJlVGV4dCh0LmxhYmVsKS53aWR0aCkpO2UucmVzdG9yZSgpO2xldCBmPXQubGVnZW5kUG9zPz9gcmAscD1mPT09YHRgfHxmPT09YGJgLG09TnQodCxuLHIsaSx7aXRlbVdpZHRoczpkLHJvd0hlaWdodDpNYXRoLm1heCgwLC4uLmwpK2Z1LGl0ZW1HYXA6ZHUsaG9yaXpvbnRhbFBhZGRpbmc6cD9tdTpndSx2ZXJ0aWNhbFBhZGRpbmc6aHV9KTtyZXR1cm4gbT97Li4ubSxtZWFzdXJlZExhYmVsczpzLm1hcChlPT5lLmxhYmVsKSxlbnRyeVN0eWxlczpjLGZvbnRTaXplczpsLHN3YXRjaGVzOnUsaXRlbVdpZHRoczpkfTpudWxsfWZ1bmN0aW9uIGdzKGUsdCxuLHIsaSxhLG89YHZlcnRpY2FsYCxzLGM9bHUsbCx1PSExLGQ9W10sZj0xLHA9W10sbT0wLGg9ITAsZyxfKXtsZXQgdj11dSx5PXNzKHQscyxsLHUsZCxwLGgsZz8ubGVnZW5kRW50cmllcz8/W10sZz8ucmFkYXJTdHlsZSxnKSxiPV8hPW51bGwmJl8ubWVhc3VyZWRMYWJlbHMubGVuZ3RoPT09eS5sZW5ndGgmJl8ubWVhc3VyZWRMYWJlbHMuZXZlcnkoKGUsdCk9PmU9PT15W3RdLmxhYmVsKSx4PWI/Xy5lbnRyeVN0eWxlczp5Lm1hcChlPT5nP2xzKGcsYyxlLnRleHRPdmVycmlkZSxmKTpjKSxTPWI/Xy5mb250U2l6ZXM6eC5tYXAoZT0+ZHMoZSxmKSk7eFswXSYmdXMoZSx4WzBdLGYpLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgO2xldCBDPU1hdGgubWF4KDAsLi4uUykrZnUsdz1iP18uc3dhdGNoZXM6eS5tYXAoKGUsdCk9PmZzKFtlXSxTW3RdLGYpWzBdKSxUPWI/Xy5pdGVtV2lkdGhzOnkubWFwKCh0LG4pPT4odXMoZSx4W25dLGYpLHdbbl0rditlLm1lYXN1cmVUZXh0KHQubGFiZWwpLndpZHRoKSk7aWYobz09PWBob3Jpem9udGFsYCl7bGV0IHQ9a3QoVCxpLGR1KS5zbGljZSgwLE1hdGgubWF4KDAsTWF0aC5mbG9vcigoYS1odSkvQykpKSxvPXIraHUvMjtmb3IobGV0IHI9MDtyPHQubGVuZ3RoO3IrKyl7bGV0IGE9dFtyXSxzPWEubWFwKGU9Pk1hdGgubWluKGksVFtlXSkpLGM9cy5yZWR1Y2UoKGUsdCk9PmUrdCwwKStkdSpNYXRoLm1heCgwLGEubGVuZ3RoLTEpLGw9bitNYXRoLm1heCgwLChpLWMpLzIpLHU9bytyKkMrQy8yO2ZvcihsZXQgdD0wO3Q8YS5sZW5ndGg7dCsrKXtsZXQgbj1hW3RdLHI9d1tuXSxpPXNbdF07aWYoaTxyKXtsKz1pK2R1O2NvbnRpbnVlfWxldCBvPU1hdGgubWF4KDAsaS1yLXYrX3UpO3VzKGUseFtuXSxmKTtsZXQgYz1rYShlLHlbbl0ubGFiZWwsbyksZD1wcyh5W25dLFNbbl0sZik7YXMoZSx5W25dLnN3YXRjaFN0eWxlLHlbbl0uY29sb3IsbCx1LWQvMixyLGQseVtuXS5tYXJrZXIseVtuXS5maWxsUGFpbnQseVtuXS5vdXRsaW5lQ29sb3IseVtuXS5vdXRsaW5lV2lkdGhFbXUseVtuXS5vdXRsaW5lRGFzaCx5W25dLm91dGxpbmVDYXAseVtuXS5vdXRsaW5lSm9pbixmLG0pLGUuZmlsbFN0eWxlPXhbbl0uY29sb3IsZS50ZXh0QWxpZ249YGxlZnRgLGUuZmlsbFRleHQoYyxsK3Irdix1KSxsKz1pK2R1fX1yZXR1cm59bGV0IEU9aS1NYXRoLm1heCguLi53LDApLXYsRD0hdSYmIVVvKHMpLE89eS5tYXAoKHQsbik9Pih1cyhlLHhbbl0sZiksRD9tcyhlLHQubGFiZWwsRSk6W2thKGUsdC5sYWJlbCxFKV0pKSxrPU8ubWFwKChlLHQpPT5lLmxlbmd0aCpTW3RdK2Z1KSxBPTAsaj0wO2Zvcig7QTx5Lmxlbmd0aCYmaitrW0FdPD1hOylqKz1rW0FdLEErKztsZXQgTT1BPT09eS5sZW5ndGg/cisoYS1qKS8yOnI7Zm9yKGxldCB0PTA7dDxBO3QrKyl7bGV0IHI9d1t0XSxhPWtbdF07aWYoaTxyKXtNKz1hO2NvbnRpbnVlfWxldCBvPXBzKHlbdF0sU1t0XSxmKTthcyhlLHlbdF0uc3dhdGNoU3R5bGUseVt0XS5jb2xvcixuLE0rKGEtbykvMixyLG8seVt0XS5tYXJrZXIseVt0XS5maWxsUGFpbnQseVt0XS5vdXRsaW5lQ29sb3IseVt0XS5vdXRsaW5lV2lkdGhFbXUseVt0XS5vdXRsaW5lRGFzaCx5W3RdLm91dGxpbmVDYXAseVt0XS5vdXRsaW5lSm9pbixmLG0pLHVzKGUseFt0XSxmKSxlLmZpbGxTdHlsZT14W3RdLmNvbG9yLGUudGV4dEFsaWduPWBsZWZ0YCxPW3RdLmZvckVhY2goKGksYSk9PmUuZmlsbFRleHQoaSxuK3IrdixNK1NbdF0qKGErLjUpKSksTSs9YX19ZnVuY3Rpb24gX3MoZSx0KXtsZXQgbj1WbyhlLGUubGVnZW5kRm9udEZhY2UpPz9lLnRoZW1lTWlub3JGb250TGF0aW47cmV0dXJue2ZvbnRGYW1pbHk6bj9gIiR7bn0iLCBDYWxpYnJpLCBBcmlhbCwgc2Fucy1zZXJpZmA6YHNhbnMtc2VyaWZgLGNvbG9yOmUubGVnZW5kRm9udENvbG9yP2AjJHtlLmxlZ2VuZEZvbnRDb2xvcn1gOmAjMzMzYCxib2xkOmUubGVnZW5kRm9udEJvbGQ/PyExLHNpemVQeDpBdChlLmxlZ2VuZEZvbnRTaXplSHB0LHQpfX1mdW5jdGlvbiB2cyhlLHQsbixyLGksYSxvLHMsYyxsLHUsZCxmLHA9W10sbT0wKXtpZighbilyZXR1cm47bGV0IGg9X3ModCxmKSxnPUpzKHQpLF89V28odCksdj1NYXRoLm1pbihndS8yLE1hdGgubWF4KDAsbi5yZXNlcnZlVykvMikseT1NYXRoLm1heCgwLG4ucmVzZXJ2ZVctdioyKSxiPW4uc2lkZT09PWByYD97eDpyK2Etbi5yZXNlcnZlVyt2LHk6Yyx3OnksaDp1fTpuLnNpZGU9PT1gbGA/e3g6cit2LHk6Yyx3OnksaDp1fTpuLnNpZGU9PT1gdGA/e3g6citwdSx5OmkrZCx3Ok1hdGgubWF4KDAsYS1tdSksaDpuLnJlc2VydmVIfTp7eDpyK3B1LHk6aStvLW4ucmVzZXJ2ZUgsdzpNYXRoLm1heCgwLGEtbXUpLGg6bi5yZXNlcnZlSH0seD1uLnNpZGU9PT1gdGB8fG4uc2lkZT09PWBiYD9gaG9yaXpvbnRhbGA6YHZlcnRpY2FsYCxTPXQubGVnZW5kTWFudWFsTGF5b3V0LEM9Uz9HdChTLHt4OnIseTppLHc6YSxoOm99LGIpOm51bGw7aWYoQyl7bGV0IHI9Qy53Pj1DLmg/YGhvcml6b250YWxgOmB2ZXJ0aWNhbGA7WmEoZSx0LEMsZixtKSxncyhlLGcsQy54LEMueSxDLncsQy5oLHIsdC5jaGFydFR5cGUsaCx0LnNjYXR0ZXJTdHlsZSxfLHQuY2F0ZWdvcmllcyxmLHAsbSx0LnZhcnlDb2xvcnMhPT0hMSx0LG4pO3JldHVybn1aYShlLHQsYixmLG0pLGdzKGUsZyxiLngsYi55LGIudyxiLmgseCx0LmNoYXJ0VHlwZSxoLHQuc2NhdHRlclN0eWxlLF8sdC5jYXRlZ29yaWVzLGYscCxtLHQudmFyeUNvbG9ycyE9PSExLHQsbil9ZnVuY3Rpb24geXMoZSx0LG4scixpLGEsbyxzKXtpZighdHx8dC5zaWRlIT09YHRgfHxlLmxlZ2VuZE92ZXJsYXk9PT0hMHx8ZS5sZWdlbmRNYW51YWxMYXlvdXQ9PW51bGwpcmV0dXJuIHM7bGV0IGM9e3g6bitwdSx5OnIrbysyLHc6TWF0aC5tYXgoMCxpLW11KSxoOnQucmVzZXJ2ZUh9LGw9R3QoZS5sZWdlbmRNYW51YWxMYXlvdXQse3g6bix5OnIsdzppLGg6YX0sYyk7aWYoIWwpcmV0dXJuIHM7bGV0IHU9TWF0aC5tYXgoMCxyK3MtKGMueStjLmgpKTtyZXR1cm4gTWF0aC5tYXgocyxsLnkrbC5oLXIrdSl9ZnVuY3Rpb24gYnMoZSx0LG4scixpLGEsbyxzPSExLGM9ITEsbD1gbWFqb3JgLHU9MSxkKXtpZihjfHx0PT09YG5vbmVgfHwhdClyZXR1cm47bGV0IGY9U3MobCxvLHUpLHA9dD09PWBjcm9zc2A/Zi8yOmYsbT1lLnN0cm9rZVN0eWxlLGg9ZS5saW5lV2lkdGgsZz1lLmdldExpbmVEYXNoPy4oKT8/W107aWYoZS5zdHJva2VTdHlsZT1hPz9gIzg4OGAsZS5saW5lV2lkdGg9bz8/MSxlLnNldExpbmVEYXNoKERsKGQ/P3ZvaWQgMCxlLmxpbmVXaWR0aCkpLGUuYmVnaW5QYXRoKCksbj09PWB2YWxgKXtsZXQgbj1yLGE9aSxvPXM/MTotMSxjPXQ9PT1gb3V0YHx8dD09PWBjcm9zc2A/bypwOjAsbD10PT09YGluYHx8dD09PWBjcm9zc2A/LW8qcDowO2UubW92ZVRvKG4rYyxhKSxlLmxpbmVUbyhuK2wsYSl9ZWxzZXtsZXQgbj1yLGE9aSxvPXM/LTE6MSxjPXQ9PT1gb3V0YHx8dD09PWBjcm9zc2A/bypwOjAsbD10PT09YGluYHx8dD09PWBjcm9zc2A/LW8qcDowO2UubW92ZVRvKGEsbitjKSxlLmxpbmVUbyhhLG4rbCl9ZS5zdHJva2UoKSxlLnN0cm9rZVN0eWxlPW0sZS5saW5lV2lkdGg9aCxlLnNldExpbmVEYXNoKGcpfWZ1bmN0aW9uIHhzKGUsdCxuLHIsaSxhLG8scyl7bGV0IGM9ZS5nZXRMaW5lRGFzaD8uKCk/P1tdLGw9RGwocz8/dm9pZCAwLG8pLHU9bC5sZW5ndGghPT1jLmxlbmd0aHx8bC5zb21lKChlLHQpPT5lIT09Y1t0XSk7ZS5zdHJva2VTdHlsZT1hLGUubGluZVdpZHRoPW8sdSYmZS5zZXRMaW5lRGFzaChsKSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHQsbiksZS5saW5lVG8ocixpKSxlLnN0cm9rZSgpLHUmJmUuc2V0TGluZURhc2goYyl9ZnVuY3Rpb24gU3MoZSx0LG4pe2xldCByPShlPT09YG1pbm9yYD80OjYpKm47cmV0dXJuIHQ/TWF0aC5tYXgocix0KzIqbik6cn1mdW5jdGlvbiBDcyhlLHQsbixyKXtpZihlIT09YG91dGAmJmUhPT1gY3Jvc3NgKXJldHVybiAwO2xldCBpPVNzKHQsbixyKTtyZXR1cm4gZT09PWBjcm9zc2A/aS8yOml9ZnVuY3Rpb24gd3MoZSx0LG4scixpLGEpe2EmJmEuZXhwbGljaXQ/KGUuc3Ryb2tlU3R5bGU9YS5jb2xvcixlLmxpbmVXaWR0aD1hLndpZHRoKTooZS5zdHJva2VTdHlsZT1pP2AjYWFhYDphPy5jb2xvcj8/YCNlMGUwZTBgLGUubGluZVdpZHRoPWk/MTphPy53aWR0aD8/LjUpO2xldCBvPWE/LmRhc2g/P1tdLHM9by5sZW5ndGg+MCYmZS5nZXRMaW5lRGFzaD9lLmdldExpbmVEYXNoKCk6W107by5sZW5ndGg+MCYmZS5zZXRMaW5lRGFzaChvKSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHQsciksZS5saW5lVG8odCtuLHIpLGUuc3Ryb2tlKCksby5sZW5ndGg+MCYmZS5zZXRMaW5lRGFzaChzKX1mdW5jdGlvbiBUcyhlLHQpe2xldHtjb2xvcjpuLHdpZHRoOnJ9PW9hKGUudmFsQXhpc0dyaWRsaW5lQ29sb3IsZS52YWxBeGlzR3JpZGxpbmVXaWR0aEVtdSx0KTtyZXR1cm57Y29sb3I6bix3aWR0aDpyLGV4cGxpY2l0OmUudmFsQXhpc0dyaWRsaW5lQ29sb3IhPW51bGx8fGUudmFsQXhpc0dyaWRsaW5lV2lkdGhFbXUhPW51bGx8fGUudmFsQXhpc0dyaWRsaW5lRGFzaCE9bnVsbCxkYXNoOkRsKGUudmFsQXhpc0dyaWRsaW5lRGFzaD8/dm9pZCAwLHIpfX1mdW5jdGlvbiBFcyhlLHQpe2xldHtjb2xvcjpuLHdpZHRoOnJ9PW9hKGUudmFsQXhpc01pbm9yR3JpZGxpbmVDb2xvcixlLnZhbEF4aXNNaW5vckdyaWRsaW5lV2lkdGhFbXUsdCk7cmV0dXJue2NvbG9yOm4sd2lkdGg6cixleHBsaWNpdDplLnZhbEF4aXNNaW5vckdyaWRsaW5lQ29sb3IhPW51bGwsZGFzaDpEbChlLnZhbEF4aXNNaW5vckdyaWRsaW5lRGFzaD8/dm9pZCAwLHIpfX1mdW5jdGlvbiBEcyhlLHQpe2xldHtjb2xvcjpuLHdpZHRoOnJ9PW9hKGUubWlub3JHcmlkbGluZUNvbG9yLGUubWlub3JHcmlkbGluZVdpZHRoRW11LHQpO3JldHVybntjb2xvcjpuLHdpZHRoOnIsZXhwbGljaXQ6ZS5taW5vckdyaWRsaW5lQ29sb3IhPW51bGx8fGUubWlub3JHcmlkbGluZVdpZHRoRW11IT1udWxsfHxlLm1pbm9yR3JpZGxpbmVEYXNoIT1udWxsLGRhc2g6RGwoZS5taW5vckdyaWRsaW5lRGFzaD8/dm9pZCAwLHIpfX1mdW5jdGlvbiBPcyhlLHQpe2xldHtjb2xvcjpuLHdpZHRoOnJ9PW9hKGUubWFqb3JHcmlkbGluZUNvbG9yLGUubWFqb3JHcmlkbGluZVdpZHRoRW11LHQpO3JldHVybntjb2xvcjpuLHdpZHRoOnIsZXhwbGljaXQ6ZS5tYWpvckdyaWRsaW5lQ29sb3IhPW51bGx8fGUubWFqb3JHcmlkbGluZVdpZHRoRW11IT1udWxsfHxlLm1ham9yR3JpZGxpbmVEYXNoIT1udWxsLGRhc2g6RGwoZS5tYWpvckdyaWRsaW5lRGFzaD8/dm9pZCAwLHIpfX1mdW5jdGlvbiBrcyhlKXtyZXR1cm4gZS5jYXRBeGlzTWFqb3JHcmlkbGluZXM9PT0hMH1mdW5jdGlvbiBBcyhlLHQpe2xldCBuPW9hKGUuY2F0QXhpc0dyaWRsaW5lQ29sb3IsZS5jYXRBeGlzR3JpZGxpbmVXaWR0aEVtdSx0KTtyZXR1cm57Li4ubixkYXNoOkRsKGUuY2F0QXhpc0dyaWRsaW5lRGFzaD8/dm9pZCAwLG4ud2lkdGgpfX1mdW5jdGlvbiBqcyhlLHQpe2xldCBuPW9hKGUuY2F0QXhpc01pbm9yR3JpZGxpbmVDb2xvcixlLmNhdEF4aXNNaW5vckdyaWRsaW5lV2lkdGhFbXUsdCk7cmV0dXJuey4uLm4sZGFzaDpEbChlLmNhdEF4aXNNaW5vckdyaWRsaW5lRGFzaD8/dm9pZCAwLG4ud2lkdGgpfX1mdW5jdGlvbiBNcyhlLHQpe2lmKHQ8PTApcmV0dXJuW107bGV0IG49c2EoZSkscj1bXSxpPW4/dDp0LTE7Zm9yKGxldCBlPTA7ZTw9aTtlKyspci5wdXNoKG4/ZS90OnQ9PT0xPy41OmUvKHQtMSkpO3JldHVybiByfWZ1bmN0aW9uIE5zKGUpe3JldHVybiBlLnZhbEF4aXNPcmllbnRhdGlvbj09PWBtYXhNaW5gfWZ1bmN0aW9uIFBzKGUpe3JldHVybiBlLmNhdEF4aXNPcmllbnRhdGlvbj09PWBtYXhNaW5gfWZ1bmN0aW9uIEZzKGUpe3JldHVybiBlLnZhbEF4aXNNYWpvckdyaWRsaW5lcyE9PSExfWZ1bmN0aW9uIElzKGUsdCl7cmV0dXJuIGU9PW51bGx8fCF0P2U6ZSoxMDB9ZnVuY3Rpb24gTHMoZSx0LG4pe3JldHVybiBiYSgobj90LzEwMDp0KS9ScyhlLnZhbEF4aXNEaXNwbGF5VW5pdHMpLG4/ZS52YWxBeGlzRm9ybWF0Q29kZT8/YDAlYDplLnZhbEF4aXNGb3JtYXRDb2RlLGUuZGF0ZTE5MDQpfWZ1bmN0aW9uIFJzKGUpe2xldCB0PWU/LmRpdmlzb3I7cmV0dXJuIHQhPW51bGwmJk51bWJlci5pc0Zpbml0ZSh0KSYmdD4wP3Q6MX1mdW5jdGlvbiB6cyhlLHQsbixyKXtyZXR1cm4gYmEoZS9ScyhyKSx0LG4pfWZ1bmN0aW9uIEJzKGUpe3JldHVybiBlLmJ1aWx0SW5Vbml0P3todW5kcmVkczpgSHVuZHJlZHNgLHRob3VzYW5kczpgVGhvdXNhbmRzYCx0ZW5UaG91c2FuZHM6YFRlbiBUaG91c2FuZHNgLGh1bmRyZWRUaG91c2FuZHM6YEh1bmRyZWQgVGhvdXNhbmRzYCxtaWxsaW9uczpgTWlsbGlvbnNgLHRlbk1pbGxpb25zOmBUZW4gTWlsbGlvbnNgLGh1bmRyZWRNaWxsaW9uczpgSHVuZHJlZCBNaWxsaW9uc2AsYmlsbGlvbnM6YEJpbGxpb25zYCx0cmlsbGlvbnM6YFRyaWxsaW9uc2B9W2UuYnVpbHRJblVuaXRdPz9lLmJ1aWx0SW5Vbml0OnlhKGUuZGl2aXNvcil9ZnVuY3Rpb24gVnMoZSx0LG4scil7bGV0IGk9W3t1bml0czp0LnZhbEF4aXNEaXNwbGF5VW5pdHMsdmVydGljYWw6ITAsZmFsbGJhY2tYOm4ueCtuLncqLjA4LGZhbGxiYWNrWTpuLnkrbi5oKi4xMn0se3VuaXRzOnQuY2F0QXhpc0Rpc3BsYXlVbml0cyx2ZXJ0aWNhbDohMSxmYWxsYmFja1g6bi54K24udyouODIsZmFsbGJhY2tZOm4ueStuLmgqLjgyfSx7dW5pdHM6dC5zZWNvbmRhcnlWYWxBeGlzPy5kaXNwbGF5VW5pdHMsdmVydGljYWw6ITAsZmFsbGJhY2tYOm4ueCtuLncqLjkyLGZhbGxiYWNrWTpuLnkrbi5oKi4xMn0se3VuaXRzOnQuc2Vjb25kYXJ5Q2F0QXhpcz8uZGlzcGxheVVuaXRzLHZlcnRpY2FsOiExLGZhbGxiYWNrWDpuLngrbi53Ki44MixmYWxsYmFja1k6bi55K24uaCouMDh9XTtmb3IobGV0e3VuaXRzOmEsdmVydGljYWw6byxmYWxsYmFja1g6cyxmYWxsYmFja1k6Y31vZiBpKXtsZXQgaT1hPy5sYWJlbDtpZighYXx8IWkpY29udGludWU7bGV0IGw9aS50ZXh0Pz9CcyhhKSx1PUF0KGkuZm9udFNpemVIcHQscik/PzEwKnI7ZS5zYXZlKCksZS5mb250PUhvKHUsJCh0LGkuZm9udEZhY2UsYG1pbm9yYCksaS5mb250Qm9sZD8/ITEsaS5mb250SXRhbGljPz8hMSk7bGV0IGQ9aS5yb3RhdGlvbj09bnVsbD9vPy1NYXRoLlBJLzI6MDppLnJvdGF0aW9uLzZlNCpNYXRoLlBJLzE4MCxmPWUubWVhc3VyZVRleHQobCkud2lkdGgscD1NYXRoLmFicyhNYXRoLmNvcyhkKSkqZitNYXRoLmFicyhNYXRoLnNpbihkKSkqdSxtPU1hdGguYWJzKE1hdGguc2luKGQpKSpmK01hdGguYWJzKE1hdGguY29zKGQpKSp1LGg9e3g6cy1wLzIseTpjLW0vMix3OnAsaDptfSxnPWkubWFudWFsTGF5b3V0P0d0KHsuLi5pLm1hbnVhbExheW91dCx3OnZvaWQgMCxoOnZvaWQgMH0sbixoKTpoO2lmKCFnKXtlLnJlc3RvcmUoKTtjb250aW51ZX1sZXQgXz1nLngrZy53LzIsdj1nLnkrZy5oLzI7aS5ib3hTdHlsZT8uZmlsbCYmKGUuZmlsbFN0eWxlPWAjJHtpLmJveFN0eWxlLmZpbGx9YCxlLmZpbGxSZWN0KGcueCxnLnksZy53LGcuaCkpLGkuYm94U3R5bGU/LmJvcmRlckNvbG9yJiYoZS5zdHJva2VTdHlsZT1gIyR7aS5ib3hTdHlsZS5ib3JkZXJDb2xvcn1gLGUubGluZVdpZHRoPWkuYm94U3R5bGUuYm9yZGVyV2lkdGhFbXU/TWF0aC5tYXgoLjUsaS5ib3hTdHlsZS5ib3JkZXJXaWR0aEVtdS9jdCpyKToxLGUuc3Ryb2tlUmVjdChnLngsZy55LGcudyxnLmgpKSxlLnRyYW5zbGF0ZShfLHYpLGQhPT0wJiZlLnJvdGF0ZShkKSxlLmZpbGxTdHlsZT1pLmZvbnRDb2xvcj9gIyR7aS5mb250Q29sb3J9YDpgIzU5NTk1OWAsZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWAsZS5maWxsVGV4dChsLDAsMCksZS5yZXN0b3JlKCl9fWZ1bmN0aW9uIEhzKGUsdCxuLHIsaT0hMSxhPWB2ZXJ0aWNhbGApe2xldCBvPU5zKGUpLHM9ZS52YWxBeGlzTG9nQmFzZSxjPUlzKGUudmFsTWluLGkpPz8oaT90OmUudmFsTWluKSxsPUlzKGUudmFsTWF4LGkpPz8oaT9uOmUudmFsTWF4KSx1PUlzKGUudmFsQXhpc01ham9yVW5pdCxpKSxkPWkmJiEocyE9bnVsbCYmaXNGaW5pdGUocykmJnM+PTIpJiYhKHUhPW51bGwmJmlzRmluaXRlKHUpJiZ1PjApP0hpKHQsbixhLHIpOnUsZj1lLnZhbEF4aXNNaW5vclRpY2tNYXJrIT1udWxsJiZlLnZhbEF4aXNNaW5vclRpY2tNYXJrIT09YG5vbmVgLHA9ZWEoe2RhdGFNaW46dCxkYXRhTWF4Om4sZXhwbGljaXRNaW46YyxleHBsaWNpdE1heDpsLGF4aXNMZW5QdDpyLGF4aXNPcmllbnRhdGlvbjphLG1ham9yVW5pdDpkLG1pbm9yVW5pdDpJcyhlLnZhbEF4aXNNaW5vclVuaXQsaSksbmVlZE1pbm9yOmUudmFsQXhpc01pbm9yR3JpZGxpbmVzPT09ITB8fGYsbG9nQmFzZTpzLHJldmVyc2VkOm99KSx7bWluOm0sbWF4OmgsbWFqb3JVbml0OmcsbWFqb3JUaWNrczpffT1wO3JldHVybnttaW46bSxtYXg6aCxzdGVwOmcsbWFqb3JMaW5lczpfLG1pbm9yTGluZXM6ZS52YWxBeGlzTWlub3JHcmlkbGluZXM/cC5taW5vclRpY2tzOltdLG1pbm9yVGlja3M6cC5taW5vclRpY2tzLGZyYWM6cC5mcmFjdGlvbn19ZnVuY3Rpb24gVXMoZSx0KXtyZXR1cm4gdCYmdC50cmltKCkudG9Mb3dlckNhc2UoKSE9PWBnZW5lcmFsYD9iYShlLHQpOnlhKE51bWJlcihlLnRvUHJlY2lzaW9uKDYpKSl9ZnVuY3Rpb24gV3MoZSx0LG4pe2lmKGUubGFiZWxUZXh0KXJldHVybiBlLmxhYmVsVGV4dC5zcGxpdCgvXHI/XG4vKTtpZighdClyZXR1cm5bXTtsZXQgcj1lLmxhYmVsRm9ybWF0U291cmNlTGlua2VkPT09ITA/bjplLmxhYmVsRm9ybWF0Q29kZSxpPVtdO2lmKGUuZGlzcEVxKXtsZXQgZT10LmludGVyY2VwdDwwP2DiiJJgOmArYDtpLnB1c2goYHkgPSAke1VzKHQuc2xvcGUscil9eCAke2V9ICR7VXMoTWF0aC5hYnModC5pbnRlcmNlcHQpLHIpfWApfXJldHVybiBlLmRpc3BSU3FyJiZpLnB1c2goYFLCsiA9ICR7VXModC5yU3F1YXJlZCxyKX1gKSxpfWZ1bmN0aW9uIEdzKGUsdCxuLHIsaSxhKXtpZighaSlyZXR1cm47bGV0IG89V3ModCxuLGEpO2lmKG8ubGVuZ3RoPT09MClyZXR1cm47bGV0e2NoYXJ0OnMsY2hhcnRSZWN0OmMscGxvdFJlY3Q6bH09aSx1PUF0KHQubGFiZWxGb250U2l6ZUhwdCxyKT8/QXQocy5kYXRhTGFiZWxGb250U2l6ZUhwdCxyKT8/MTAqcixkPSQocyx0LmxhYmVsRm9udEZhY2U/P3MuZGF0YUxhYmVsRm9udEZhY2UsYG1pbm9yYCksZj10LmxhYmVsRm9udEJvbGQ/P3MuZGF0YUxhYmVsRm9udEJvbGQ/PyExLHA9dC5sYWJlbEZvbnRJdGFsaWM/PyExO2UuZm9udD1Ibyh1LGQsZixwKTtsZXQgbT11KjEuMixoPXQubGFiZWxGb250Q29sb3I/P3MuZGF0YUxhYmVsRm9udENvbG9yLGc9dC5sYWJlbFJpY2hSdW5zPy5sZW5ndGg/VmEoZSx7cnVuczp0LmxhYmVsUmljaFJ1bnMscHRUb1B4OnIsZm9udEZhbWlseTpkLGZhbGxiYWNrQm9sZDpmLGZhbGxiYWNrSXRhbGljOnAsZmFsbGJhY2tCYXNlbGluZTp0LmxhYmVsRm9udEJhc2VsaW5lPz92b2lkIDAsZmFsbGJhY2tDb2xvckhpZGRlbjp0LmxhYmVsRm9udFBhaW50QXV0aG9yZWQ9PT0hMCYmKHQubGFiZWxGb250SGlkZGVuPT09ITB8fHQubGFiZWxGb250Q29sb3I9PW51bGwpLGZvbnRGYW1pbHlGb3JGYWNlOmU9PiQocyxlLGBtaW5vcmApfSx1LGg/YCMke2h9YDpgIzU5NTk1OWApOm51bGwsXz1nPy53aWR0aD8/TWF0aC5tYXgoLi4uby5tYXAodD0+ZS5tZWFzdXJlVGV4dCh0KS53aWR0aCkpLHY9e2ZvbnRDb2xvcjp0LmxhYmVsRm9udENvbG9yPz92b2lkIDAsZm9udEl0YWxpYzpwLGZvbnRQYWludEF1dGhvcmVkOnQubGFiZWxGb250UGFpbnRBdXRob3JlZD8/dm9pZCAwLGZvbnRIaWRkZW46dC5sYWJlbEZvbnRIaWRkZW4/P3ZvaWQgMCxmb250TGFuZ3VhZ2U6dC5sYWJlbEZvbnRMYW5ndWFnZT8/dm9pZCAwLGZvbnRCYXNlbGluZTp0LmxhYmVsRm9udEJhc2VsaW5lPz92b2lkIDAsdGV4dFJvdGF0aW9uOnQubGFiZWxUZXh0Um90YXRpb24/P3ZvaWQgMCx0ZXh0V3JhcDp0LmxhYmVsVGV4dFdyYXA/P3ZvaWQgMCx0ZXh0VmVydGljYWxBbmNob3I6dC5sYWJlbFRleHRWZXJ0aWNhbEFuY2hvcj8/dm9pZCAwLHRleHRWZXJ0aWNhbE1vZGU6dC5sYWJlbFRleHRWZXJ0aWNhbE1vZGU/P3ZvaWQgMCx0ZXh0TEluc0VtdTp0LmxhYmVsVGV4dExJbnNFbXU/P3ZvaWQgMCx0ZXh0VEluc0VtdTp0LmxhYmVsVGV4dFRJbnNFbXU/P3ZvaWQgMCx0ZXh0Ukluc0VtdTp0LmxhYmVsVGV4dFJJbnNFbXU/P3ZvaWQgMCx0ZXh0Qkluc0VtdTp0LmxhYmVsVGV4dEJJbnNFbXU/P3ZvaWQgMCx0ZXh0Qm9keUF1dGhvcmVkOnQubGFiZWxUZXh0Qm9keUF1dGhvcmVkPz92b2lkIDB9LHk9cG4odixyKSxiPV8reS5sZWZ0K3kucmlnaHQseD0oZz8uaGVpZ2h0Pz9vLmxlbmd0aCptKSt5LnRvcCt5LmJvdHRvbSxTPWhuKGIseCx0LmxhYmVsVGV4dFJvdGF0aW9uPz92b2lkIDAsdC5sYWJlbFRleHRWZXJ0aWNhbE1vZGU/P3ZvaWQgMCksQz1ZYShjLGwsUy53LFMuaCx1LHQubGFiZWxNYW51YWxMYXlvdXQsaS5hdXRvbWF0aWNBbmNob3IpO2lmKCFDKXJldHVybjtlLnNhdmUoKSxDLmF1dG9tYXRpYyYmKGUuYmVnaW5QYXRoKCksZS5yZWN0KGwueCxsLnksbC53LGwuaCksZS5jbGlwKCkpO2xldCB3PUMueCtDLncvMixUPUMueStDLmgvMixFPXQubGFiZWxUZXh0Qm9keUF1dGhvcmVkPT09ITB8fHQubGFiZWxUZXh0Um90YXRpb24hPW51bGx8fHQubGFiZWxUZXh0V3JhcCE9bnVsbHx8dC5sYWJlbFRleHRWZXJ0aWNhbEFuY2hvciE9bnVsbHx8dC5sYWJlbFRleHRWZXJ0aWNhbE1vZGUhPW51bGx8fHQubGFiZWxUZXh0TEluc0VtdSE9bnVsbHx8dC5sYWJlbFRleHRUSW5zRW11IT1udWxsfHx0LmxhYmVsVGV4dFJJbnNFbXUhPW51bGx8fHQubGFiZWxUZXh0Qkluc0VtdSE9bnVsbCxEPUMuYXV0b21hdGljP3t4OnctYi8yLHk6VC14LzIsdzpiLGg6eH06e3g6Qy54LHk6Qy55LHc6Qy53LGg6Qy5ofTtQaShlLEZjKHMsdC5sYWJlbEJveCxzLmNoYXJ0U3R5bGVSb2xlcz8udHJlbmRsaW5lTGFiZWwsITApLEQscixpLnNoYXBlUm90YXRpb25EZWc/PzApO2xldCBPPXQubGFiZWxUZXh0QWxpZ247ZS50ZXh0QWxpZ249Tz09PWByYD9gcmlnaHRgOk89PT1gY3RyYD9gY2VudGVyYDpgbGVmdGAsZS50ZXh0QmFzZWxpbmU9YHRvcGAsZS5maWxsU3R5bGU9aD9gIyR7aH1gOmAjNTk1OTU5YDtsZXQgaz1NYXRoLm1heCgwLEQudy15LmxlZnQteS5yaWdodCksQT1NYXRoLm1heCgwLEQuaC15LnRvcC15LmJvdHRvbSksaj1DLmF1dG9tYXRpYyYmUy5yYWRpYW5zPT09MCYmQy53PT09Uy53JiZDLmg9PT1TLmgmJih0LmxhYmVsVGV4dFdyYXA9PW51bGx8fHQubGFiZWxUZXh0V3JhcD09PWBub25lYCksTT1nP1tdOkUmJiFqP19uKG8uam9pbihgCmApLGssQSxtLHQ9PmUubWVhc3VyZVRleHQodCkud2lkdGgsdik6bztpZighZyYmTS5sZW5ndGg9PT0wKXtlLnJlc3RvcmUoKTtyZXR1cm59bGV0IE49RT9lLnRleHRBbGlnbj09PWByaWdodGA/RC54K0Qudy15LnJpZ2h0OmUudGV4dEFsaWduPT09YGNlbnRlcmA/RC54KyhELncreS5sZWZ0LXkucmlnaHQpLzI6RC54K3kubGVmdDplLnRleHRBbGlnbj09PWByaWdodGA/Qy54K0MudzplLnRleHRBbGlnbj09PWBjZW50ZXJgP0MueCtDLncvMjpDLngsUD0odC5sYWJlbEZvbnRCYXNlbGluZT8/MCkqdSxGPUU/dC5sYWJlbFRleHRWZXJ0aWNhbEFuY2hvcj09PWBiYD9ELnkrRC5oLXkuYm90dG9tLShnPy5oZWlnaHQ/P00ubGVuZ3RoKm0pOnQubGFiZWxUZXh0VmVydGljYWxBbmNob3I9PT1gY3RyYD9ELnkrKEQuaC0oZz8uaGVpZ2h0Pz9NLmxlbmd0aCptKSt5LnRvcC15LmJvdHRvbSkvMjpELnkreS50b3A6Qy55LEk9Qy5hdXRvbWF0aWM/TS5sZW5ndGg6TWF0aC5taW4oTS5sZW5ndGgsTWF0aC5mbG9vcihBL20pKTtpZihTLnJhZGlhbnMhPT0wJiYoZS50cmFuc2xhdGUodyxUKSxlLnJvdGF0ZShTLnJhZGlhbnMpLGUudHJhbnNsYXRlKC13LC1UKSksZylIYShlLGcsTixGLGUudGV4dEFsaWduLGB0b3BgLE1hdGgubWF4KGcud2lkdGgsaykpO2Vsc2UgaWYoISh0LmxhYmVsRm9udFBhaW50QXV0aG9yZWQ9PT0hMCYmKHQubGFiZWxGb250SGlkZGVuPT09ITB8fHQubGFiZWxGb250Q29sb3I9PW51bGwpKSlmb3IobGV0IHQ9MDt0PEk7dCsrKWUuZmlsbFRleHQoRSYmdi50ZXh0V3JhcD09PWBub25lYD9NW3RdOmthKGUsTVt0XSxNYXRoLm1heCgwLGt8fF8pKSxOLEYrdCptLVApO2UucmVzdG9yZSgpfWZ1bmN0aW9uIEtzKGUsdCxuLHIsaSxhLG8scyxjKXtsZXQgbD10LnRyZW5kTGluZXM7aWYoIWx8fGwubGVuZ3RoPT09MClyZXR1cm47bGV0IHU9W10sZD1bXTtmb3IobGV0IGU9MDtlPHQudmFsdWVzLmxlbmd0aDtlKyspe2xldCBuPXQudmFsdWVzW2VdLHI9bz9vW2VdOmU7biE9bnVsbCYmciE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKG4pJiZOdW1iZXIuaXNGaW5pdGUocikmJih1LnB1c2gociksZC5wdXNoKG4pKX1pZih1Lmxlbmd0aDwyKXJldHVybjtsZXQgZj1lLmdldExpbmVEYXNoP2UuZ2V0TGluZURhc2goKTpbXTtmb3IobGV0IG8gb2YgbCl7bGV0IGw9bmEodSxkLG8udHJlbmRsaW5lVHlwZSx7cGVyaW9kOm8ucGVyaW9kLG9yZGVyOm8ub3JkZXIsaW50ZXJjZXB0Om8uaW50ZXJjZXB0LGZvcndhcmQ6by5mb3J3YXJkLGJhY2t3YXJkOm8uYmFja3dhcmR9KTtpZihsLnhzLmxlbmd0aDwyfHwhWy4uLmwueHMsLi4ubC55c10uZXZlcnkoTnVtYmVyLmlzRmluaXRlKSljb250aW51ZTtsZXQgZj1vLnRyZW5kbGluZVR5cGU9PT1gbGluZWFyYD90YSh1LGQsby5pbnRlcmNlcHQpOm51bGwscD1mJiZbZi5zbG9wZSxmLmludGVyY2VwdCxmLnJTcXVhcmVkXS5ldmVyeShOdW1iZXIuaXNGaW5pdGUpP2Y6bnVsbCxtPWwueHMsaD1sLnlzO2lmKG8udHJlbmRsaW5lVHlwZT09PWBsaW5lYXJgKXtsZXQgZT0obC55c1sxXS1sLnlzWzBdKS8obC54c1sxXS1sLnhzWzBdfHwxKSx0PW8uYmFja3dhcmQ/PzAsbj1vLmZvcndhcmQ/PzA7bT1bbC54c1swXS10LGwueHNbMV0rbl0saD1bbC55c1swXS1lKnQsbC55c1sxXStlKm5dfWlmKCFbLi4ubSwuLi5oXS5ldmVyeShOdW1iZXIuaXNGaW5pdGUpKWNvbnRpbnVlO2xldCBnPW0ubWFwKChlLHQpPT5jP2MoZSxoW3RdKTp7eDpyKGUpLHk6aShoW3RdKX0pO2lmKGcuZXZlcnkoZT0+TnVtYmVyLmlzRmluaXRlKGUueCkmJk51bWJlci5pc0Zpbml0ZShlLnkpKSl7aWYoIW8ubGluZUhpZGRlbil7cz8uY2xpcExpbmVUb1Bsb3QmJihlLnNhdmUoKSxlLmJlZ2luUGF0aCgpLGUucmVjdChzLnBsb3RSZWN0Lngscy5wbG90UmVjdC55LHMucGxvdFJlY3QudyxzLnBsb3RSZWN0LmgpLGUuY2xpcCgpKSxlLnN0cm9rZVN0eWxlPW8ubGluZUNvbG9yP2AjJHtvLmxpbmVDb2xvcn1gOm4sZS5saW5lV2lkdGg9by5saW5lV2lkdGhFbXU/aWEoby5saW5lV2lkdGhFbXUsYSk6MS41LGUuc2V0TGluZURhc2goRGwoby5saW5lRGFzaD8/dm9pZCAwLGUubGluZVdpZHRoKSksZS5iZWdpblBhdGgoKTtmb3IobGV0IHQ9MDt0PGcubGVuZ3RoO3QrKyl7bGV0e3g6bix5OnJ9PWdbdF07dD09PTA/ZS5tb3ZlVG8obixyKTplLmxpbmVUbyhuLHIpfWUuc3Ryb2tlKCkscz8uY2xpcExpbmVUb1Bsb3QmJmUucmVzdG9yZSgpfUdzKGUsbyxwLGEscz97Li4ucyxhdXRvbWF0aWNBbmNob3I6Zy5hdCgtMSl9OnZvaWQgMCx0LnZhbEZvcm1hdENvZGUpfX1lLnNldExpbmVEYXNoKGYpfWZ1bmN0aW9uIHFzKGUpe2xldCB0PWU9Pntzd2l0Y2goZSl7Y2FzZWBleHBgOnJldHVybmBFeHBvbmVudGlhbGA7Y2FzZWBsb2dgOnJldHVybmBMb2dhcml0aG1pY2A7Y2FzZWBwb2x5YDpyZXR1cm5gUG9seW5vbWlhbGA7Y2FzZWBwb3dlcmA6cmV0dXJuYFBvd2VyYDtjYXNlYG1vdmluZ0F2Z2A6cmV0dXJuYE1vdmluZyBBdmVyYWdlYDtkZWZhdWx0OnJldHVybmBMaW5lYXJgfX0sbj1bXTtmb3IobGV0IHIgb2YgZSlmb3IobGV0IGUgb2Ygci50cmVuZExpbmVzPz9bXSl7aWYoZS5saW5lSGlkZGVuPT09ITApY29udGludWU7bGV0IGk9ci5saW5lQ29sb3I/P3IuY29sb3I7bi5wdXNoKHtuYW1lOmUubmFtZT8/YCR7dChlLnRyZW5kbGluZVR5cGUpfSAoJHtyLm5hbWV8fGBTZXJpZXNgfSlgLGNvbG9yOmUubGluZUNvbG9yPz9pLGxpbmVDb2xvcjplLmxpbmVDb2xvcj8/aSxsaW5lV2lkdGhFbXU6ZS5saW5lV2lkdGhFbXUsbGluZUhpZGRlbjohMSxjaGFydGV4U3R5bGU6e2xpbmVEYXNoOmUubGluZURhc2h9LHZhbHVlczpbXSxzZXJpZXNUeXBlOmBsaW5lYCxzaG93TWFya2VyOiExfSl9cmV0dXJuIG59ZnVuY3Rpb24gSnMoZSl7cmV0dXJuIFVvKGUuY2hhcnRUeXBlKXx8V28oZSk/ZS5zZXJpZXM6ZS5zZXJpZXMuZmxhdE1hcChlPT5bZSwuLi5xcyhbZV0pXSl9ZnVuY3Rpb24gWXMoZSx0LG4pe3JldHVybiBBdChlLG4pPz9NYXRoLm1heCg4LHQqLjA0NSl9ZnVuY3Rpb24gWHMoZSx0LG4scj0wKXtsZXQgaT10LnRyaW0oKS5zcGxpdCgvXHMrLykuZmlsdGVyKEJvb2xlYW4pO2lmKGkubGVuZ3RoPT09MClyZXR1cm5bYGBdO2xldCBhPVtdLG89YGAscz10PT57bGV0IGk9bz9gJHtvfSAke3R9YDp0O2lmKGUubWVhc3VyZVRleHQoaSkud2lkdGg8PW4pe289aTtyZXR1cm59aWYobyYmPShhLnB1c2gobyksYGApLGUubWVhc3VyZVRleHQodCkud2lkdGg8PW4rcil7bz10O3JldHVybn1sZXQgcz1BcnJheS5mcm9tKHQpLGM9MDtmb3IoO2M8cy5sZW5ndGg7KXtsZXQgdD1jKzEscj1zLmxlbmd0aCxpPWMrMTtmb3IoO3Q8PXI7KXtsZXQgYT1NYXRoLmZsb29yKCh0K3IpLzIpO2UubWVhc3VyZVRleHQocy5zbGljZShjLGEpLmpvaW4oYGApKS53aWR0aDw9bj8oaT1hLHQ9YSsxKTpyPWEtMX1sZXQgbD1zLnNsaWNlKGMsaSkuam9pbihgYCk7Yz1pLGM8cy5sZW5ndGg/YS5wdXNoKGwpOm89bH19O2ZvcihsZXQgZSBvZiBpKXMoZSk7cmV0dXJuIG8mJmEucHVzaChvKSxhLmxlbmd0aD9hOltgYF19ZnVuY3Rpb24gWnMoZSx0KXtyZXR1cm4vXlsrLV0/KD86XGQrKD86Wy4sXVxkKik/fFsuLF1cZCspJT8kLy50ZXN0KGUpP3QqLjE1OjB9ZnVuY3Rpb24gUXMoZSl7cmV0dXJuIGUuY2F0QXhpc1RpY2tMYWJlbFBvcyE9PWBub25lYH1mdW5jdGlvbiAkcyhlKXtsZXQgdD1lLmNhdEF4aXNMYWJlbFJvdGF0aW9uO3JldHVybiB0PT1udWxsfHx0PT09MHx8TWF0aC5hYnModCk+eXU/MDp0LzZlNCooTWF0aC5QSS8xODApfWZ1bmN0aW9uIGVjKGUsdCxuLHIsaSl7aWYoaT09PTApe2UuZmlsbFRleHQodCxuLHIpO3JldHVybn1lLnNhdmUoKSxlLnRyYW5zbGF0ZShuLHIpLGUucm90YXRlKGkpLGUudGV4dEFsaWduPWByaWdodGAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWAsZS5maWxsVGV4dCh0LDAsMCksZS5yZXN0b3JlKCl9ZnVuY3Rpb24gdGMoZSx0LG49UHMoZSkpe3JldHVybiBlLmNhdEF4aXNJc0RhdGU9PT0hMD9SYSh7Y2F0ZWdvcmllczp0LGRhdGUxOTA0OmUuZGF0ZTE5MDQsYmFzZVRpbWVVbml0OmUuY2F0QXhpc0Jhc2VUaW1lVW5pdCxtYWpvclRpbWVVbml0OmUuY2F0QXhpc01ham9yVGltZVVuaXQsbWFqb3JVbml0OmUuY2F0QXhpc01ham9yVW5pdCxtaW5vclRpbWVVbml0OmUuY2F0QXhpc01pbm9yVGltZVVuaXQsbWlub3JVbml0OmUuY2F0QXhpc01pbm9yVW5pdCxleHBsaWNpdE1pbjplLmNhdEF4aXNNaW4sZXhwbGljaXRNYXg6ZS5jYXRBeGlzTWF4LGNyb3NzQmV0d2VlbjpzYShlKSxyZXZlcnNlZDpufSk6bnVsbH1mdW5jdGlvbiBuYyhlLHQsbixyKXtmb3IobGV0IGkgb2YgZS5lcnJCYXJzPz9bXSl7aWYoaS5kaXIhPT10KWNvbnRpbnVlO2xldCBhPWkuYmFyVHlwZT09PWBwbHVzYHx8aS5iYXJUeXBlPT09YGJvdGhgLG89aS5iYXJUeXBlPT09YG1pbnVzYHx8aS5iYXJUeXBlPT09YGJvdGhgLHM9TWF0aC5tYXgoZS52YWx1ZXMubGVuZ3RoLGkucGx1cy5sZW5ndGgsaS5taW51cy5sZW5ndGgpO2ZvcihsZXQgZT0wO2U8cztlKyspe2xldCB0PW4oZSk7aWYodD09bnVsbHx8IU51bWJlci5pc0Zpbml0ZSh0KSljb250aW51ZTtsZXQgcz1pLnBsdXNbZV0sYz1pLm1pbnVzW2VdO2EmJnMhPW51bGwmJk51bWJlci5pc0Zpbml0ZShzKSYmcih0K3MpLG8mJmMhPW51bGwmJk51bWJlci5pc0Zpbml0ZShjKSYmcih0LWMpfX19ZnVuY3Rpb24gcmMoZSx0LG4scj1geWAsaT0hMSxhPSExLG89ZT0+ZS51c2VTZWNvbmRhcnlBeGlzPT09ITAscz0oKT0+bnVsbCl7aWYoIWUpcmV0dXJuIG51bGw7bGV0IGM9MS8wLGw9LTEvMCx1PWU9PntOdW1iZXIuaXNGaW5pdGUoZSkmJihjPU1hdGgubWluKGMsZSksbD1NYXRoLm1heChsLGUpKX07YSYmdSgwKTtmb3IobGV0IGU9MDtlPHQubGVuZ3RoO2UrKyl7bGV0IG49dFtlXTtpZihvKG4sZSkpe2ZvcihsZXQgdD0wO3Q8bi52YWx1ZXMubGVuZ3RoO3QrKyl7bGV0IHI9cyhuLHQsZSk/P24udmFsdWVzW3RdO3IhPW51bGwmJnUocil9bmMobixyLHQ9PnMobix0LGUpPz9uLnZhbHVlc1t0XT8/bnVsbCx1KX19KCFOdW1iZXIuaXNGaW5pdGUoYyl8fCFOdW1iZXIuaXNGaW5pdGUobCkpJiYoYz0wLGw9MSk7bGV0IGQ9ZWEoe2RhdGFNaW46YyxkYXRhTWF4OmwsZXhwbGljaXRNaW46SXMoZS5taW4saSksZXhwbGljaXRNYXg6SXMoZS5tYXgsaSksYXhpc0xlblB0Om4sYXhpc09yaWVudGF0aW9uOmB2ZXJ0aWNhbGAsbWFqb3JVbml0OklzKGUubWFqb3JVbml0LGkpLG1pbm9yVW5pdDpJcyhlLm1pbm9yVW5pdCxpKSxuZWVkTWlub3I6ZS5taW5vckdyaWRsaW5lcz09PSEwfHxlLm1pbm9yVGlja01hcmshPW51bGwmJmUubWlub3JUaWNrTWFyayE9PWBub25lYCxsb2dCYXNlOmUubG9nQmFzZSxyZXZlcnNlZDplLm9yaWVudGF0aW9uPT09YG1heE1pbmB9KSx7bWluOmYsbWF4OnAsbWFqb3JVbml0Om19PWQ7cmV0dXJue21pbjpmLG1heDpwLHN0ZXA6bSxtYWpvckxpbmVzOmQubWFqb3JUaWNrcyxtaW5vclRpY2tzOmQubWlub3JUaWNrcyxtYWtlVG9ZOihlLHQpPT5uPT5lK3QtZC5mcmFjdGlvbihuKSp0fX1mdW5jdGlvbiBpYyhlLHQsbixyLGksYSxvKXtpZighdC5oaWRkZW4pe2lmKGUuc2F2ZSgpLHQubWlub3JHcmlkbGluZXMpe2xldCBzPURzKHQsbyk7Zm9yKGxldCB0IG9mIG4ubWlub3JUaWNrcyl3cyhlLGksYSxyKHQpLCExLHMpfWlmKHQubWFqb3JHcmlkbGluZXMpe2xldCBzPU9zKHQsbyk7Zm9yKGxldCB0IG9mIG4ubWFqb3JMaW5lcyl3cyhlLGksYSxyKHQpLCExLHMpfWUucmVzdG9yZSgpfX1mdW5jdGlvbiBhYyhlLHQsbixyLGksYSxvLHMsYyxsLHUsZCxmLHAsbSxoPSExKXtsZXQgZz1vK2Mse2NvbG9yOl8sd2lkdGg6dn09YWEobi5saW5lQ29sb3Isbi5saW5lV2lkdGhFbXUsdSk7aWYobi5saW5lSGlkZGVufHx4cyhlLGcscyxnLHMrbCxfLHYsbi5saW5lRGFzaCksIW4uaGlkZGVuKXtlLmZvbnQ9YCR7bi5mb250SXRhbGljP2BpdGFsaWMgYDpgYH0ke24uZm9udEJvbGQ/YGJvbGQgYDpgYH0ke2R9cHggJHskKHQsbi5mb250RmFjZSxgbWlub3JgKX1gLGUuZmlsbFN0eWxlPW4uZm9udENvbG9yP2AjJHtuLmZvbnRDb2xvcn1gOnAsZS50ZXh0QWxpZ249YGxlZnRgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgO2ZvcihsZXQgdCBvZiByLm1ham9yTGluZXMpe2xldCByPWkodCk7YnMoZSxuLm1ham9yVGlja01hcmssYHZhbGAsZyxyLF8sdiwhMCxuLmxpbmVIaWRkZW4sYG1ham9yYCx1LG4ubGluZURhc2gpLG4udGlja0xhYmVsUG9zIT09YG5vbmVgJiZlLmZpbGxUZXh0KHpzKGg/dC8xMDA6dCxuLmZvcm1hdENvZGU/P251bGwsbSxuLmRpc3BsYXlVbml0cyksZysxNCxyKX1pZihuLm1pbm9yVGlja01hcmsmJm4ubWlub3JUaWNrTWFyayE9PWBub25lYClmb3IobGV0IHQgb2Ygci5taW5vclRpY2tzKWJzKGUsbi5taW5vclRpY2tNYXJrLGB2YWxgLGcsaSh0KSxfLHYsITAsbi5saW5lSGlkZGVuLGBtaW5vcmAsdSxuLmxpbmVEYXNoKX1uLnRpdGxlJiZvYyhlLHQsbixhLG8scyxjLGwsZix1KX1mdW5jdGlvbiBvYyhlLHQsbixyLGksYSxvLHMsYyxsKXtpZighbi50aXRsZSlyZXR1cm47bGV0IHU9RnQobi50aXRsZUZvbnRTaXplSHB0LGwpLGQ9bi50aXRsZUZvbnRDb2xvcj9gIyR7bi50aXRsZUZvbnRDb2xvcn1gOm4uZm9udENvbG9yP2AjJHtuLmZvbnRDb2xvcn1gOmAjNTU1YDtLbyhlLG4udGl0bGUsaStvK2MrdSouNixhK3MvMixgcmlnaHRgLHUsbi50aXRsZUZvbnRCb2xkPz8hMCxuLnRpdGxlRm9udEl0YWxpYz8/ITEsZCxzLCQodCxuLnRpdGxlRm9udEZhY2UsYG1ham9yYCksbi50aXRsZVJvdGF0aW9uLG4udGl0bGVWZXJ0aWNhbE1vZGUsbi50aXRsZU1hbnVhbExheW91dCxyKX1mdW5jdGlvbiBzYyhlLHQsbixyLGksYSxvLHMsYyl7aWYobi5oaWRkZW58fHIubGVuZ3RoPT09MClyZXR1cm47bGV0e2NvbG9yOmwsd2lkdGg6dX09YWEobi5saW5lQ29sb3Isbi5saW5lV2lkdGhFbXUsYyk7bi5saW5lSGlkZGVufHx4cyhlLGEsbyxhK3MsbyxsLHUsbi5saW5lRGFzaCk7bGV0IGQ9bi5vcmllbnRhdGlvbj09PWBtYXhNaW5gLGY9TWF0aC5tYXgoMSxNYXRoLmZsb29yKG4udGlja0xhYmVsU2tpcD8/MSkpLHA9TWF0aC5tYXgoMSxNYXRoLmZsb29yKG4udGlja01hcmtTa2lwPz8xKSksbT1yLmxlbmd0aCxoPWU9PkV0KGUsbSxzYSh0KSxkLG4ubGFiZWxBbGlnbm1lbnQpO2lmKCFuLmxpbmVIaWRkZW4mJm4ubWFqb3JUaWNrTWFyayE9PWBub25lYCl7bGV0IHI9c2EodCksaT1yP206bS0xO2ZvcihsZXQgdD0wO3Q8PWk7dCs9cCl7bGV0IGY9ZD9pLXQ6dCxwPXI/Zi9tOm09PT0xPy41OmYvKG0tMSk7YnMoZSxuLm1ham9yVGlja01hcmssYGNhdGAsbyxhK3AqcyxsLHUsITAsbi5saW5lSGlkZGVuLGBtYWpvcmAsYyxuLmxpbmVEYXNoKX19bGV0IGc9QXQobi5mb250U2l6ZUhwdCxjKT8/OSpjO2lmKG4udGlja0xhYmVsUG9zIT09YG5vbmVgKXtlLmZvbnQ9SG8oZywkKHQsbi5mb250RmFjZSxgbWlub3JgKSxuLmZvbnRCb2xkPz8hMSxuLmZvbnRJdGFsaWM/PyExKSxlLmZpbGxTdHlsZT1uLmZvbnRDb2xvcj9gIyR7bi5mb250Q29sb3J9YDpgIzU1NWAsZS50ZXh0QmFzZWxpbmU9YGJvdHRvbWA7bGV0IGk9TWF0aC5tYXgoMSxzL20tNCksYz1TdChIdChnKSxuLmxhYmVsT2Zmc2V0UGVyY2VudCk7Zm9yKGxldCBsPTA7bDxtO2wrPWYpe2xldCB1PWgobCk7ZS50ZXh0QWxpZ249dS50ZXh0QWxpZ24sZS5maWxsVGV4dChrYShlLHhhKHJbbF0sbi5mb3JtYXRDb2RlLHQuZGF0ZTE5MDQpLGkpLGErdS5mcmFjdGlvbipzLG8tYyl9fWlmKG4udGl0bGUpe2xldCByPUZ0KG4udGl0bGVGb250U2l6ZUhwdCxjKTtLbyhlLG4udGl0bGUsYStzLzIsby0obi50aWNrTGFiZWxQb3M9PT1gbm9uZWA/MDpnK1N0KEh0KGcpLG4ubGFiZWxPZmZzZXRQZXJjZW50KSktci8yLTQsYGhvcml6b250YWxgLHIsbi50aXRsZUZvbnRCb2xkPz8hMCxuLnRpdGxlRm9udEl0YWxpYz8/ITEsbi50aXRsZUZvbnRDb2xvcj9gIyR7bi50aXRsZUZvbnRDb2xvcn1gOmAjNTU1YCxzLCQodCxuLnRpdGxlRm9udEZhY2UsYG1ham9yYCksbi50aXRsZVJvdGF0aW9uLG4udGl0bGVWZXJ0aWNhbE1vZGUsbi50aXRsZU1hbnVhbExheW91dCxpKX19ZnVuY3Rpb24gY2MoZSx0LG4pe2xldCByPW4vKGUudGl0bGVGb250U2l6ZUhwdCE9bnVsbCYmZS50aXRsZUZvbnRTaXplSHB0Pj0xMDAmJmUudGl0bGVGb250U2l6ZUhwdDw9NGU1P2UudGl0bGVGb250U2l6ZUhwdC8xMDA6MTQpLGk9QXQodC5mb250U2l6ZUhwdCxyKT8/bixhPVZvKGUsdC5mb250RmFjZT8/ZS50aXRsZUZvbnRGYWNlKTtyZXR1cm57Zm9udDpIbyhpLGE/YCIke2F9IiwgQ2FsaWJyaSwgQXJpYWwsIHNhbnMtc2VyaWZgOmBDYWxpYnJpLCBBcmlhbCwgc2Fucy1zZXJpZmAsdC5ib2xkPz8oZS50aXRsZVJpY2hSdW5zPy5sZW5ndGg/ITE6ZS50aXRsZUZvbnRCb2xkPz8hMCksdC5pdGFsaWM/PyExKSxmb250U2l6ZTppLGNvbG9yOnQuY29sb3I/YCMke3QuY29sb3J9YDplLnRpdGxlRm9udENvbG9yP2AjJHtlLnRpdGxlRm9udENvbG9yfWA6YCMzMzNgfX1mdW5jdGlvbiBsYyhlLHQsbixyKXtsZXQgaT10LnRpdGxlUmljaFJ1bnM/Lmxlbmd0aD90LnRpdGxlUmljaFJ1bnM6dC50aXRsZT9be3RleHQ6dC50aXRsZX1dOltdLGE9W3twaWVjZXM6W10sd2lkdGg6MCxoZWlnaHQ6cn1dLG89KCk9PntsZXQgZT17cGllY2VzOltdLHdpZHRoOjAsaGVpZ2h0OnJ9O3JldHVybiBhLnB1c2goZSksZX0scz1hWzBdO2ZvcihsZXQgYSBvZiBpKXtsZXQgaT1jYyh0LGEscik7Zm9yKGxldCB0IG9mIGEudGV4dC5zcGxpdCgvKFxufFtcdCBdKykvKS5maWx0ZXIoZT0+ZS5sZW5ndGg+MCkpe2lmKHQ9PT1gCmApe3M9bygpO2NvbnRpbnVlfWUuZm9udD1pLmZvbnQ7bGV0IHI9ZS5tZWFzdXJlVGV4dCh0KS53aWR0aCxhPS9eW1x0IF0rJC8udGVzdCh0KTshYSYmcy5waWVjZXMubGVuZ3RoPjAmJnMud2lkdGgrcj5uJiYocz1vKCkpLCEoYSYmcy5waWVjZXMubGVuZ3RoPT09MCkmJihzLnBpZWNlcy5wdXNoKHt0ZXh0OnQsd2lkdGg6cixmb250OmkuZm9udCxjb2xvcjppLmNvbG9yfSkscy53aWR0aCs9cixzLmhlaWdodD1NYXRoLm1heChzLmhlaWdodCxpLmZvbnRTaXplKSl9fXJldHVybiBhfWZ1bmN0aW9uIHVjKGUsdCxuLHIsaSl7bGV0IGE9QnQodCxyLGkpO2lmKGEuYmFuZEg9PT0wfHwhdC50aXRsZVJpY2hSdW5zPy5sZW5ndGgpcmV0dXJuIGE7bGV0IG89ZS5mb250LHM9bGMoZSx0LE1hdGgubWF4KDEsbiksYS5mb250UHgpO2UuZm9udD1vO2xldCBjPXMucmVkdWNlKChlLHQpPT5lK3QuaGVpZ2h0LDApO3JldHVybnsuLi5hLGJhbmRIOmEudG9wUGFkK2MrYS5ib3R0b21QYWR9fWZ1bmN0aW9uIGRjKGUsdCxuLHIsaSxhKXtpZighdC50aXRsZSlyZXR1cm47aWYoIXQudGl0bGVSaWNoUnVucz8ubGVuZ3RoKXtsZXQgbz1Wbyh0LHQudGl0bGVGb250RmFjZSkscz1vP2AiJHtvfSIsIENhbGlicmksIEFyaWFsLCBzYW5zLXNlcmlmYDpgQ2FsaWJyaSwgQXJpYWwsIHNhbnMtc2VyaWZgO2UuZm9udD1gJHt0LnRpdGxlRm9udEJvbGQ/PyEwP2Bib2xkIGA6YGB9JHthfXB4ICR7c31gLGUuZmlsbFN0eWxlPXQudGl0bGVGb250Q29sb3I/YCMke3QudGl0bGVGb250Q29sb3J9YDpgIzMzM2AsZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YHRvcGAsZS5maWxsVGV4dCh0LnRpdGxlLG4raS8yLHIpO3JldHVybn1lLnNhdmUoKTtsZXQgbz1sYyhlLHQsTWF0aC5tYXgoMSxpKSxhKTtlLnRleHRBbGlnbj1gbGVmdGAsZS50ZXh0QmFzZWxpbmU9YHRvcGA7bGV0IHM9cjtmb3IobGV0IHQgb2Ygbyl7bGV0IHI9bisoaS10LndpZHRoKS8yO2ZvcihsZXQgbiBvZiB0LnBpZWNlcyllLmZvbnQ9bi5mb250LGUuZmlsbFN0eWxlPW4uY29sb3IsZS5maWxsVGV4dChuLnRleHQscixzKSxyKz1uLndpZHRoO3MrPXQuaGVpZ2h0fWUucmVzdG9yZSgpfWZ1bmN0aW9uIGZjKGUsdCxuLHIsaSxhLG8scyl7aWYoIXQudGl0bGUpcmV0dXJuO2xldCBjPXQudGl0bGVNYW51YWxMYXlvdXQ7aWYoYyl7bGV0IGw9Vm8odCx0LnRpdGxlRm9udEZhY2UpLHU9bD9gIiR7bH0iLCBDYWxpYnJpLCBBcmlhbCwgc2Fucy1zZXJpZmA6YENhbGlicmksIEFyaWFsLCBzYW5zLXNlcmlmYDtlLmZvbnQ9YCR7dC50aXRsZUZvbnRCb2xkPz8hMD9gYm9sZCBgOmBgfSR7c31weCAke3V9YDtsZXQgZD1sYyhlLHQsTWF0aC5tYXgoMSxpKSxzKSxmPU1hdGgubWluKGksTWF0aC5tYXgoLi4uZC5tYXAoZT0+ZS53aWR0aCksMCkpLHA9e3g6bisoaS1mKS8yLHk6byx3OmYsaDpzfSxtPUd0KHsuLi5jLHc6dm9pZCAwLGg6dm9pZCAwfSx7eDpuLHk6cix3OmksaDphfSxwKTtpZihtKXtkYyhlLHQsbS54LG0ueSxtLncscyk7cmV0dXJufX1kYyhlLHQsbixvLGkscyl9ZnVuY3Rpb24gcGMoZSl7aWYoZS5jYXRlZ29yaWVzLmxlbmd0aD4wKXJldHVybiBlLmNhdGVnb3JpZXM7bGV0IHQ9ZS5zZXJpZXNbMF07aWYodD8uY2F0ZWdvcmllcyYmdC5jYXRlZ29yaWVzLmxlbmd0aD4wKXJldHVybiB0LmNhdGVnb3JpZXM7bGV0IG49MDtmb3IobGV0IHQgb2YgZS5zZXJpZXMpdC52YWx1ZXMubGVuZ3RoPm4mJihuPXQudmFsdWVzLmxlbmd0aCk7cmV0dXJuIG4+MD9BcnJheS5mcm9tKHtsZW5ndGg6bn0sKGUsdCk9PlN0cmluZyh0KzEpKTpbXX1mdW5jdGlvbiBtYyhlLHQpe2xldCBuPU1hdGgubWF4KGUueCx0LngpLHI9TWF0aC5tYXgoZS55LHQueSksaT1NYXRoLm1pbihlLngrZS53LHQueCt0LncpLGE9TWF0aC5taW4oZS55K2UuaCx0LnkrdC5oKTtyZXR1cm4gaT5uJiZhPnI/e3g6bix5OnIsdzppLW4saDphLXJ9Om51bGx9ZnVuY3Rpb24gaGMoZSx0LG4pe3JldHVybiBlLnNob3dEYXRhTGFiZWxzT3Zlck1heD09PSEwfHwhTnVtYmVyLmlzRmluaXRlKG4pfHx0PD1ufWZ1bmN0aW9uIGdjKGUsdCxuLHIsaSxhLG8scyxjLGwsdSxkLGYscD0hMSxtLGgsZyxfPTEsdix5PTApe0NsKGUsdCx7a2luZDpgYmFyYCxyZWN0Om89PT1gdmVydGljYWxgP3t4Om4seTpyLHc6YSxoOml9Ont4Om4seTpyLHc6aSxoOmF9LG9yaWVudGF0aW9uOm8sbmVnYXRpdmU6cCxwb3NpdGlvbjpzPz9gb3V0RW5kYH0sdSxsLGM/YCMke2N9YDpgIzMzM2AsZixkLG0saCxnLF8sdix5KX1mdW5jdGlvbiBfYyhlKXtyZXR1cm4gNyplfWZ1bmN0aW9uIHZjKGUsdCxuLHIsaT17fSxhPTApe2xldHt4Om8seTpzLHc6YyxoOmx9PW4sdT10LmNoYXJ0VHlwZT09PWBjbHVzdGVyZWRCYXJIYHx8dC5jaGFydFR5cGU9PT1gc3RhY2tlZEJhckhgfHx0LmNoYXJ0VHlwZT09PWBzdGFja2VkQmFySFBjdGAsZD10LmNoYXJ0VHlwZS5zdGFydHNXaXRoKGBzdGFja2VkYCksZj10LmNoYXJ0VHlwZT09PWBzdGFja2VkQmFyUGN0YHx8dC5jaGFydFR5cGU9PT1gc3RhY2tlZEJhckhQY3RgLHA9dC5zZXJpZXMuZmlsdGVyKGU9PmUuc2VyaWVzVHlwZSE9PWBsaW5lYCYmZS5zZXJpZXNUeXBlIT09YHNjYXR0ZXJgJiZlLnNlcmllc1R5cGUhPT1gYXJlYWApLG09ZT0+ZS5iYXJHcm91cERpcmVjdGlvbj09bnVsbD91OmUuYmFyR3JvdXBEaXJlY3Rpb249PT1gYmFyYCxoPXAsZz1lPT5lLnVzZVNlY29uZGFyeUF4aXM9PT0hMD9gc2Vjb25kYXJ5LWRlZmF1bHRgOmBwcmltYXJ5LWRlZmF1bHRgLF89ZT0+ZS5iYXJHcm91cEluZGV4PT1udWxsP2coZSk6YGdyb3VwLSR7ZS5iYXJHcm91cEluZGV4fWAsdj1lPT5lLmJhckdyb3VwR3JvdXBpbmc/PyhmP2BwZXJjZW50U3RhY2tlZGA6ZD9gc3RhY2tlZGA6YGNsdXN0ZXJlZGApLHk9ZT0+e2xldCB0PXYoZSk7cmV0dXJuIHQ9PT1gc3RhY2tlZGB8fHQ9PT1gcGVyY2VudFN0YWNrZWRgfSxiPWU9PnYoZSk9PT1gcGVyY2VudFN0YWNrZWRgLHg9dC5zZXJpZXMuZmlsdGVyKGU9PmUuc2VyaWVzVHlwZT09PWBsaW5lYCksUz10LnNlcmllcy5maWx0ZXIoZT0+ZS5zZXJpZXNUeXBlPT09YGFyZWFgKSxDPXQuc2VyaWVzLmZpbHRlcihlPT5lLnNlcmllc1R5cGU9PT1gc2NhdHRlcmApLHc9bmV3IE1hcCh0LnNlcmllcy5tYXAoKGUsdCk9PltlLHRdKSksVD1uZXcgTWFwO2ZvcihsZXQgZSBvZiB0LnBsb3RHcm91cHM/P1tdKWZvcihsZXQgbj1lLnNlcmllc1N0YXJ0O248ZS5zZXJpZXNTdGFydCtlLnNlcmllc0NvdW50O24rKyl7bGV0IHI9dC5zZXJpZXNbbl07ciYmVC5zZXQocixlKX1sZXQgRT1uZXcgTWFwO2ZvcihsZXQgZSBvZiB0LnBsb3RHcm91cHM/P1tdKXtpZihlLnNlcmllc0NvdW50PT09MCljb250aW51ZTtsZXQgdD1FLmdldChlLnZhbHVlQXhpcyk/P3tjb3VudDowLHBlcmNlbnRDb3VudDowfTt0LmNvdW50KyssZS5ncm91cGluZz09PWBwZXJjZW50U3RhY2tlZGAmJnQucGVyY2VudENvdW50KyssRS5zZXQoZS52YWx1ZUF4aXMsdCl9bGV0IEQ9ZT0+e2xldCB0PUUuZ2V0KGUudmFsdWVBeGlzKTtyZXR1cm4gdCE9bnVsbCYmdC5jb3VudD09PXQucGVyY2VudENvdW50fSxPPWNzKHQsciksaz10LnNlcmllcy5zb21lKGU9PmUudXNlU2Vjb25kYXJ5QXhpcz09PSEwKSxBPSF1JiZ0LnNlY29uZGFyeVZhbEF4aXMmJms/dC5zZWNvbmRhcnlWYWxBeGlzOm51bGwsaj1BP2guZmlsdGVyKGU9PmUudXNlU2Vjb25kYXJ5QXhpcz09PSEwKTpbXSxNPUE/aC5maWx0ZXIoZT0+ZS51c2VTZWNvbmRhcnlBeGlzIT09ITApOmgsTj1qLmxlbmd0aD4wP3Quc2Vjb25kYXJ5Q2F0QXhpczpudWxsLFA9alswXT8uY2F0ZWdvcmllcz8ubGVuZ3RoP2pbMF0uY2F0ZWdvcmllczp0LmNhdGVnb3JpZXMsRj1wYyh0KSxJPUYubGVuZ3RoO2lmKEk9PT0wKXJldHVybjtsZXQgTD1uZXcgTWFwO2ZvcihsZXQgZSBvZiBoKXtsZXQgdD1fKGUpLG49TC5nZXQodCk7bj9uLnB1c2goZSk6TC5zZXQodCxbZV0pfWxldCBSPWU9PkwuZ2V0KF8oZSkpPz9bZV0sej1uZXcgTWFwO2ZvcihsZXRbZSx0XW9mIEwpe2xldCBuPUFycmF5KEkpLmZpbGwoMCk7Zm9yKGxldCBlIG9mIHQpZm9yKGxldCB0PTA7dDxJO3QrKyluW3RdKz1NYXRoLmFicyhlLnZhbHVlc1t0XT8/MCk7ei5zZXQoZSxuKX1sZXQgQj0oZSx0KT0+ei5nZXQoXyhlKSk/Llt0XXx8MSxlZT1lPT57bGV0IHQ9VC5nZXQoZSk7cmV0dXJuIHQ9PW51bGx8fEQodCk/MTAwOjF9LFY9KGUsdCk9PmIoZSk/ZWUoZSkvQihlLHQpOjEsSD1uZXcgTWFwLFU9bmV3IE1hcDtmb3IobGV0IGUgb2ZbLi4ueCwuLi5TXSlILnNldChlLEFycmF5LmZyb20oe2xlbmd0aDpJfSwodCxuKT0+ZS52YWx1ZXNbbl0/PzApKSxVLnNldChlLEFycmF5KEkpLmZpbGwoMCkpO2ZvcihsZXQgZSBvZiB0LnBsb3RHcm91cHM/P1tdKXtpZihlLmtpbmQhPT1gbGluZWAmJmUua2luZCE9PWBhcmVhYCljb250aW51ZTtsZXQgbj10LnNlcmllcy5zbGljZShlLnNlcmllc1N0YXJ0LGUuc2VyaWVzU3RhcnQrZS5zZXJpZXNDb3VudCkscj1lLmdyb3VwaW5nPT09YHN0YWNrZWRgfHxlLmdyb3VwaW5nPT09YHBlcmNlbnRTdGFja2VkYCxpPWUuZ3JvdXBpbmc9PT1gcGVyY2VudFN0YWNrZWRgLGE9aSYmRChlKT8xMDA6MTtmb3IobGV0IGU9MDtlPEk7ZSsrKXtsZXQgdD1pJiZuLnJlZHVjZSgodCxuKT0+dCtNYXRoLmFicyhuLnZhbHVlc1tlXT8/MCksMCl8fDEsbz0wO2ZvcihsZXQgcyBvZiBuKXtsZXQgbj1zLnZhbHVlc1tlXT8/MCxjPWk/bi90KmE6bixsPVUuZ2V0KHMpLHU9SC5nZXQocyk7bD09bnVsbHx8dT09bnVsbHx8KGxbZV09cj9vOjAsbz1yP28rYzpjLHVbZV09byl9fX1sZXQgVz0oZSx0KT0+SC5nZXQoZSk/Llt0XT8/ZS52YWx1ZXNbdF0/PzAsRz0oZSx0KT0+VS5nZXQoZSk/Llt0XT8/MCxLPWU9PmIoZSk/KGUuZXJyQmFycz8/W10pLm1hcCh0PT4oey4uLnQscGx1czp0LnBsdXMubWFwKCh0LG4pPT50PT1udWxsP3Q6dCpWKGUsbikpLG1pbnVzOnQubWludXMubWFwKCh0LG4pPT50PT1udWxsP3Q6dCpWKGUsbikpfSkpOmUuZXJyQmFycz8/W10sdGU9V28odCksbmU9aC5tYXAoZT0+bmV3IE1hcCgoZS5kYXRhUG9pbnRPdmVycmlkZXM/P1tdKS5tYXAoZT0+W2UuaWR4LGVdKSkpLHJlPWgubWFwKGU9Pm5ldyBNYXAoKGUuZGF0YUxhYmVsT3ZlcnJpZGVzPz9bXSkubWFwKGU9PltlLmlkeCxlXSkpKSxpZT1oLm1hcCgoZSx0KT0+TWwoZSx0KSksYWU9dC5jaGFydGV4RGF0YVBvaW50U3R5bGUhPW51bGx8fHQuY2hhcnRleENvbG9yUGFsZXR0ZSE9bnVsbCxvZT1uZXcgTWFwO2FlJiZoLmZvckVhY2goKGUsbik9PntsZXQgcj1pZVtuXSxpPWUuY29sb3I/P0xsKHQscixoLmxlbmd0aCxlLmNoYXJ0ZXhTdHlsZSk7b2Uuc2V0KGUsSmwodCxlLm5hbWUsZSx0LmNoYXJ0ZXhEYXRhUG9pbnRTdHlsZSxyLGgubGVuZ3RoLGkpKX0pO2xldCBzZT17Li4udCxzZXJpZXM6KGFlP2g6dC5zZXJpZXMpLm1hcChlPT5vZS5nZXQoZSk/P2UpfSxjZT11YyhlLHQsYyxsLHIpLGxlPWNlLmZvbnRQeCx1ZT1jZS50b3BQYWQscT1jZS5iYW5kSCxkZT1Zcyh0LmNhdEF4aXNGb250U2l6ZUhwdCxsLHIpLEo9WXModC52YWxBeGlzRm9udFNpemVIcHQsbCxyKSxZPSF1JiYhWW8odCkmJnQuY2F0QXhpc05vTXVsdGlMZXZlbExhYmVscyE9PSEwJiYodC5jYXRlZ29yeUxldmVscz8ubGVuZ3RoPz8wKT4xP3QuY2F0ZWdvcnlMZXZlbHM6bnVsbCxmZT1ZPyhZLmxlbmd0aC0xKSooZGUrNCk6MCxwZT1Zbyh0KSxtZT1abyh0LHIpLGhlPVFvKGUsdCxyKSxnZT1ocyhlLHNlLGMsbCwuMjIscikse2xlZ1JpZ2h0VzpfZSxsZWdMZWZ0Vzp2ZSxsZWdUb3BIOlgsbGVnQm90dG9tSDpafT1QdChnZSx0LmxlZ2VuZE92ZXJsYXk9PT0hMCkseWU9enQodCxjLGwsciksUT15ZS5jYXRGb250UHgsYmU9eWUudmFsRm9udFB4LHhlPXU/dC52YWxBeGlzVGl0bGU/YmUrUnQobCkrNDowOnllLmNhdEJhbmRILFNlPXU/dC5jYXRBeGlzVGl0bGU/UStSdChjKSs0OjA6eWUudmFsQmFuZFcsQ2U9QXQoTj8uZm9udFNpemVIcHQscik/Pzkqcix3ZT1OJiYhTi5oaWRkZW4mJk4udGlja0xhYmVsUG9zIT09YG5vbmVgP0NlK1N0KEh0KENlKSxOLmxhYmVsT2Zmc2V0UGVyY2VudCkrMjowLFRlPU4/LnRpdGxlP0Z0KE4udGl0bGVGb250U2l6ZUhwdCxyKSs2OjAsRWU9cStYK0ovMisyK3dlK1RlLERlPXU/KHQudmFsQXhpc0hpZGRlbj9sKi4wMjpWdChKKSkrbWUreGUrWjoocGU/MDpWdChkZSx0LmNhdEF4aXNMYWJlbE9mZnNldFBlcmNlbnQpKStmZSttZSt4ZStaLE9lPWwtRWUtRGUsa2U9MDtpZih1JiYhdC5jYXRBeGlzSGlkZGVuJiZRcyh0KSl7bGV0IG49dC5jYXRBeGlzRm9udFNpemVIcHQ9PW51bGw/TWF0aC5tYXgoOCxNYXRoLm1pbigxMSxPZS9JKi41KSk6ZGU7ZS5zYXZlKCksZS5mb250PUhvKG4sJCh0LHQuY2F0QXhpc0ZvbnRGYWNlLGBtaW5vcmApLHQuY2F0QXhpc0ZvbnRCb2xkPz8hMSx0LmNhdEF4aXNGb250SXRhbGljPz8hMSk7Zm9yKGxldCBuIG9mIEYpa2U9TWF0aC5tYXgoa2UsZS5tZWFzdXJlVGV4dCh4YShuLHQuY2F0QXhpc0Zvcm1hdENvZGUsdC5kYXRlMTkwNCkpLndpZHRoKTtlLnJlc3RvcmUoKSxrZSs9U3QodC5jYXRBeGlzRm9udFNpemVIcHQ9PW51bGw/NDpVdChuKSx0LmNhdEF4aXNMYWJlbE9mZnNldFBlcmNlbnQpK1p0KnJ9bGV0IEFlPU1hdGgubWluKGtlLE1hdGgubWF4KDAsYy8yLVNlLXZlKSksamU9dT9jLSgodC5jYXRBeGlzSGlkZGVuP2MqLjAzOkFlKStTZSt2ZSktKF9lK2MqLjAzKTowLE1lPXQudmFsQXhpc0hpZGRlbj92b2lkIDA6KHU/amU6T2UpL3IsTmU9KGUsdCk9PntsZXQgbj1oW2VdLHI9bj8udmFsdWVzW3RdPz8wO2lmKCFufHwheShuKSlyZXR1cm4gcjtsZXQgaT1SKG4pLGE9YihuKSxvPTE7YSYmKG89aS5yZWR1Y2UoKGUsbik9PmUrTWF0aC5hYnMobi52YWx1ZXNbdF0/PzApLDApfHwxKTtsZXQgcz1hP1Yobix0KSpvOjEsYz1hP3IvbypzOnIsbD0wLHU9aS5pbmRleE9mKG4pO2ZvcihsZXQgZT0wO2U8PXU7ZSsrKXtsZXQgbj1pW2VdPy52YWx1ZXNbdF0/PzAscj1hP24vbypzOm47YzwwPT1yPDAmJihsKz1yKX1yZXR1cm4gbH0sUGU9KHQucGxvdEdyb3Vwcz8/W10pLmZpbHRlcihlPT5lLnNlcmllc0NvdW50PjAmJmUudmFsdWVBeGlzIT09YHNlY29uZGFyeWApLEZlPVBlLmxlbmd0aD4wP1BlLmV2ZXJ5KGU9PmUuZ3JvdXBpbmc9PT1gcGVyY2VudFN0YWNrZWRgKTpNLnNvbWUoYiksSWU9MCxMZT0wO2ZvcihsZXQgZT0wO2U8STtlKyspe2xldCB0PW5ldyBNYXA7Zm9yKGxldCBlIG9mIE0pe2xldCBuPV8oZSkscj10LmdldChuKTtyP3IucHVzaChlKTp0LnNldChuLFtlXSl9Zm9yKGxldCBuIG9mIHQudmFsdWVzKCkpe2xldCB0PW5bMF0scj15KHQpLGk9Yih0KSxhPWkmJm4ucmVkdWNlKCh0LG4pPT50K01hdGguYWJzKG4udmFsdWVzW2VdPz8wKSwwKXx8MSxvPTAscz0wO2ZvcihsZXQgdCBvZiBuKXtsZXQgbj10LnZhbHVlc1tlXT8/MCxjPWk/bi9hKmVlKHQpOm47cj9jPj0wP28rPWM6cys9YzooSWU9TWF0aC5tYXgoSWUsYyksTGU9TWF0aC5taW4oTGUsYykpfXImJihJZT1NYXRoLm1heChJZSxvKSxMZT1NYXRoLm1pbihMZSxzKSl9fWZvcihsZXQgZSBvZlsuLi54LC4uLlNdKWlmKCEoQSYmZS51c2VTZWNvbmRhcnlBeGlzPT09ITApKWZvcihsZXQgdD0wO3Q8STt0Kyspe2lmKGUudmFsdWVzW3RdPT1udWxsKWNvbnRpbnVlO2xldCBuPVcoZSx0KTtJZT1NYXRoLm1heChJZSxuKSxMZT1NYXRoLm1pbihMZSxuKX1mb3IobGV0IGUgb2YgTSl7bGV0IHQ9aC5pbmRleE9mKGUpO2ZvcihsZXQgbiBvZiBLKGUpKW5jKHsuLi5lLGVyckJhcnM6W25dfSx1P2B4YDpgeWAsbj0+ZS52YWx1ZXNbbl09PW51bGw/bnVsbDpOZSh0LG4pLGU9PntJZT1NYXRoLm1heChJZSxlKSxMZT1NYXRoLm1pbihMZSxlKX0pfWZvcihsZXQgZSBvZlsuLi54LC4uLlNdKUEmJmUudXNlU2Vjb25kYXJ5QXhpcz09PSEwfHxuYyhlLGB5YCx0PT5lLnZhbHVlc1t0XT8/bnVsbCxlPT57bGV0IHQ9ZTtJZT1NYXRoLm1heChJZSx0KSxMZT1NYXRoLm1pbihMZSx0KX0pO0ZlJiYoTS5zb21lKGU9PmUudmFsdWVzLnNvbWUoZT0+ZSE9bnVsbCYmZT4wKSkmJihJZT1NYXRoLm1heChJZSwxMDApKSxNLnNvbWUoZT0+ZS52YWx1ZXMuc29tZShlPT5lIT1udWxsJiZlPDApKSYmKExlPU1hdGgubWluKExlLC0xMDApKSksdC52YWxNYXghPW51bGwmJihJZT1GZT90LnZhbE1heCoxMDA6dC52YWxNYXgpLHQudmFsTWluIT1udWxsJiYoTGU9RmU/dC52YWxNaW4qMTAwOnQudmFsTWluKSxJZT09PTAmJkxlPT09MCYmKEllPTEpO2xldCBSZT1Icyh0LExlLEllLE1lLEZlLHU/YGhvcml6b250YWxgOmB2ZXJ0aWNhbGApLHtzdGVwOnplfT1SZSxCZT1uZXcgU2V0KGgpLFZlPW5ldyBTZXQocCksSGU9KHQucGxvdEdyb3Vwcz8/W10pLmZpbHRlcihlPT5lLnNlcmllc0NvdW50PjAmJmUudmFsdWVBeGlzPT09YHNlY29uZGFyeWApLFVlPUhlLmxlbmd0aD4wP0hlLmV2ZXJ5KGU9PmUuZ3JvdXBpbmc9PT1gcGVyY2VudFN0YWNrZWRgKTpqLnNvbWUoYiksV2U9dC5zZXJpZXMuZmlsdGVyKGU9PiFWZS5oYXMoZSl8fEJlLmhhcyhlKSkubWFwKGU9PntpZihlLnVzZVNlY29uZGFyeUF4aXMhPT0hMClyZXR1cm4gZTtpZihCZS5oYXMoZSkpe2xldCB0PWguaW5kZXhPZihlKTtyZXR1cm57Li4uZSx2YWx1ZXM6ZS52YWx1ZXMubWFwKChlLG4pPT5lPT1udWxsP2U6TmUodCxuKSksZXJyQmFyczpLKGUpfX1yZXR1cm4gVWU/ey4uLmUsdmFsdWVzOmUudmFsdWVzLm1hcChlPT5lPT1udWxsP2U6ZSoxMDApLGVyckJhcnM6KGUuZXJyQmFycz8/W10pLm1hcChlPT4oey4uLmUscGx1czplLnBsdXMubWFwKGU9PmU9PW51bGw/ZTplKjEwMCksbWludXM6ZS5taW51cy5tYXAoZT0+ZT09bnVsbD9lOmUqMTAwKX0pKX06ZX0pO2lmKFVlJiZqWzBdKXtsZXQgZT1bXTtqLnNvbWUoZT0+ZS52YWx1ZXMuc29tZShlPT5lIT1udWxsJiZlPjApKSYmZS5wdXNoKDEwMCksai5zb21lKGU9PmUudmFsdWVzLnNvbWUoZT0+ZSE9bnVsbCYmZTwwKSkmJmUucHVzaCgtMTAwKSxXZS5wdXNoKHsuLi5qWzBdLHZhbHVlczplLGVyckJhcnM6W119KX1sZXQgR2U9cmMoQSxXZSxPZS9yLHU/YHhgOmB5YCxVZSxqLmxlbmd0aD4wKSxLZT1NYXRoLm1heCg4LE1hdGgubWluKDExLGwvMjApKSxxZT10LnZhbEF4aXNGb250U2l6ZUhwdD09bnVsbD9NYXRoLm1heCg4LE1hdGgubWluKDExLE9lLzIwKSk6SixKZT1lLmZvbnQsWWU9MCxYZT0wO2lmKCF1JiYhdC52YWxBeGlzSGlkZGVuKXtlLmZvbnQ9SG8ocWUsJCh0LHQudmFsQXhpc0ZvbnRGYWNlLGBtaW5vcmApLHQudmFsQXhpc0ZvbnRCb2xkPz8hMSx0LnZhbEF4aXNGb250SXRhbGljPz8hMSk7bGV0IG49MDtmb3IobGV0IHIgb2YgUmUubWFqb3JMaW5lcyl7bGV0IGk9THModCxyLEZlKTtuPU1hdGgubWF4KG4sZS5tZWFzdXJlVGV4dChpKS53aWR0aCl9WWU9bixYZT1ZZSsxNn1sZXQgWmU9QXQoQT8uZm9udFNpemVIcHQscik/P0tlLFFlPTA7aWYoQSYmIUEuaGlkZGVuKXtlLmZvbnQ9YCR7WmV9cHggJHskKHQsQS5mb250RmFjZSxgbWlub3JgKX1gO2xldCBuPTA7Zm9yKGxldCByIG9mIEdlPy5tYWpvckxpbmVzPz9bXSluPU1hdGgubWF4KG4sZS5tZWFzdXJlVGV4dCh6cyhVZT9yLzEwMDpyLEEuZm9ybWF0Q29kZT8/bnVsbCx0LmRhdGUxOTA0LEEuZGlzcGxheVVuaXRzKSkud2lkdGgpO1FlPW4rMTh9ZS5mb250PUplO2xldCAkZT1BJiZBLnRpdGxlP0Z0KEEudGl0bGVGb250U2l6ZUhwdCxyKSs4OjAsZXQ9e3Q6RWUscjpfZStjKi4wMytRZSskZSxiOkRlLGw6dT92ZStNYXRoLm1heCgodC5jYXRBeGlzSGlkZGVuP2MqLjAzOkFlKStTZSxoZSk6dmUrTWF0aC5tYXgoU2UrWGUsaGUpfTtldC50PXlzKHQsZ2UsbyxzLGMsbCxxLGV0LnQpO2xldCB0dD11P3t0OjAscjp0LnZhbEF4aXNIaWRkZW4/MDpxZS8yLGI6dC52YWxBeGlzSGlkZGVuPzA6cWUreGUsbDp0LmNhdEF4aXNIaWRkZW4/MDprZStTZX06V3Qoe3ZhbEF4aXNIaWRkZW46dC52YWxBeGlzSGlkZGVuLGNhdEF4aXNIaWRkZW46dC5jYXRBeGlzSGlkZGVuLHZhbExhYmVsV2lkdGg6WWUsdmFsTGFiZWxGb250UHg6cWUsY2F0TGFiZWxGb250UHg6ZGUsdmFsTGFiZWxHYXBQeDp0LnZhbEF4aXNGb250U2l6ZUhwdD09bnVsbD8xMjpVdChxZSksY2F0TGFiZWxHYXBQeDp0LmNhdEF4aXNGb250U2l6ZUhwdD09bnVsbD9TdCgzLHQuY2F0QXhpc0xhYmVsT2Zmc2V0UGVyY2VudCk6U3QoSHQoZGUpLHQuY2F0QXhpc0xhYmVsT2Zmc2V0UGVyY2VudCksb3V0ZXJUZXh0TWFyZ2luUHg6WnQqcix2YWxUaXRsZUJhbmRXOlNlLGNhdFRpdGxlQmFuZEg6eGUsc2Vjb25kYXJ5QmFuZFc6UWUrJGV9KSxudD1LdCh0LG8scyxjLGwscix7dGl0bGVCYW5kOmNlLGxlZ2VuZFNpZGVSZXNlcnZlRnJhYzouMjIsbGVnZW5kUmVzZXJ2ZTpnZSxwYWQ6ZXQsaG9ub3JQbG90QXJlYU1hbnVhbExheW91dDohMCxtYW51YWxPdXRlckluc2V0czp0dH0pLHJ0PXVjKGUsdCxudC5wbG90UmVjdC5wdyxsLHIpO01hdGguYWJzKHJ0LmJhbmRILWNlLmJhbmRIKT4uMDEmJihjZT1ydCxsZT1jZS5mb250UHgsdWU9Y2UudG9wUGFkLHE9Y2UuYmFuZEgsRWU9cStYK0ovMisyK3dlK1RlLGV0LnQ9eXModCxnZSxvLHMsYyxsLHEsRWUpLG50PUt0KHQsbyxzLGMsbCxyLHt0aXRsZUJhbmQ6Y2UsbGVnZW5kU2lkZVJlc2VydmVGcmFjOi4yMixsZWdlbmRSZXNlcnZlOmdlLHBhZDpldCxob25vclBsb3RBcmVhTWFudWFsTGF5b3V0OiEwLG1hbnVhbE91dGVySW5zZXRzOnR0fSkpO2xldHtweDA6aXQscHkwOmF0LHB3Om90fT1udC5wbG90UmVjdCx7cGg6c3R9PW50LnBsb3RSZWN0O2lmKGZjKGUsdCx0LnRpdGxlTWFudWFsTGF5b3V0fHwhdC50aXRsZVJpY2hSdW5zPy5sZW5ndGg/bzppdCxzLHQudGl0bGVNYW51YWxMYXlvdXR8fCF0LnRpdGxlUmljaFJ1bnM/Lmxlbmd0aD9jOm90LGwscyt1ZSxsZSksb3Q8PTB8fHN0PD0wKXJldHVybjtsZXQgY3Q9dGModCxGLHU/IVBzKHQpOlBzKHQpKSxsdD0kcyh0KSx1dD1bXSxkdD0wO2lmKCFwZSYmIXUmJiFjdCYmIXQuY2F0QXhpc0hpZGRlbiYmUXModCkmJmx0PT09MCl7bGV0IG49b3QvSSxyPXQuY2F0QXhpc0ZvbnRTaXplSHB0PT1udWxsP01hdGgubWF4KDgsTWF0aC5taW4oMTEsbiouNSkpOmRlO2Uuc2F2ZSgpLGUuZm9udD1IbyhyLCQodCx0LmNhdEF4aXNGb250RmFjZSxgbWlub3JgKSx0LmNhdEF4aXNGb250Qm9sZD8/ITEsdC5jYXRBeGlzRm9udEl0YWxpYz8/ITEpO2ZvcihsZXQgaSBvZiBGKXtsZXQgYT14YShpLHQuY2F0QXhpc0Zvcm1hdENvZGUsdC5kYXRlMTkwNCk7dXQucHVzaChYcyhlLGEsTWF0aC5tYXgoMSxuKSxacyhhLHIpKSl9ZS5yZXN0b3JlKCk7bGV0IGk9TWF0aC5tYXgoMSwuLi51dC5tYXAoZT0+ZS5sZW5ndGgpKTshKHQucGxvdEFyZWFNYW51YWxMYXlvdXQ/LmxheW91dFRhcmdldD09PWBpbm5lcmAmJnQucGxvdEFyZWFNYW51YWxMYXlvdXQudyE9bnVsbCYmdC5wbG90QXJlYU1hbnVhbExheW91dC5oIT1udWxsKSYmaT4xJiYoZHQ9KGktMSkqKHIrMiksc3Q9TWF0aC5tYXgoMSxzdC1kdCkpfWxldCBmdD1wZT8kbyhlLHQsb3QvSSxyKTpudWxsO2Z0JiZmdC50b3RhbEhlaWdodD5tZSYmKHN0PU1hdGgubWF4KDEsc3QtKGZ0LnRvdGFsSGVpZ2h0LW1lKSkpLCRhKGUsdCxpdCxhdCxvdCxzdCxyLGEpO2xldCBwdD1lPT5hdCtzdC1SZS5mcmFjKGUpKnN0LG10PWU9Pml0K1JlLmZyYWMoZSkqb3QsaHQ9cHQoMCksZ3Q9bXQoMCksX3Q9ZT0+cHQoZSksdnQ9R2U/R2UubWFrZVRvWShhdCxzdCk6cHQseXQ9ZT0+dnQoZSksYnQ9VHModCxyKTtlLnRleHRCYXNlbGluZT1gbWlkZGxlYDtsZXQgeHQ9dC52YWxBeGlzRm9udFNpemVIcHQ9PW51bGw/TWF0aC5tYXgoOCxNYXRoLm1pbigxMSxzdC8yMCkpOko7ZS5mb250PUhvKHh0LCQodCx0LnZhbEF4aXNGb250RmFjZSxgbWlub3JgKSx0LnZhbEF4aXNGb250Qm9sZD8/ITEsdC52YWxBeGlzRm9udEl0YWxpYz8/ITEpO2xldCBDdD10LnZhbEF4aXNGb250Q29sb3I/YCMke3QudmFsQXhpc0ZvbnRDb2xvcn1gOmAjNTU1YDtpZihlLmZpbGxTdHlsZT1DdCwhdC52YWxBeGlzSGlkZGVuKXtsZXQgbj1Fcyh0LHIpO2ZvcihsZXQgdCBvZiBSZS5taW5vckxpbmVzKWlmKCF1KXdzKGUsaXQsb3QscHQodCksITEsbik7ZWxzZXtsZXQgcj1tdCh0KTtlLnN0cm9rZVN0eWxlPW4uY29sb3IsZS5saW5lV2lkdGg9bi53aWR0aDtsZXQgaT1uLmRhc2gubGVuZ3RoPjAmJmUuZ2V0TGluZURhc2g/ZS5nZXRMaW5lRGFzaCgpOltdO24uZGFzaC5sZW5ndGg+MCYmZS5zZXRMaW5lRGFzaChuLmRhc2gpLGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8ocixhdCksZS5saW5lVG8ocixhdCtzdCksZS5zdHJva2UoKSxuLmRhc2gubGVuZ3RoPjAmJmUuc2V0TGluZURhc2goaSl9bGV0IGE9RnModCksbz10LnZhbEF4aXNUaWNrTGFiZWxQb3MhPT1gbm9uZWA7Zm9yKGxldCBuIG9mIFJlLm1ham9yTGluZXMpe2xldCBzPU1hdGguYWJzKG4pPHplKjFlLTksYz1Mcyh0LG4sRmUpO2lmKHUpe2xldCByPW10KG4pO2lmKGEpe2Uuc3Ryb2tlU3R5bGU9YnQuZXhwbGljaXQ/YnQuY29sb3I6cz9gI2FhYWA6YnQuY29sb3IsZS5saW5lV2lkdGg9YnQuZXhwbGljaXQ/YnQud2lkdGg6cz8xOmJ0LndpZHRoO2xldCB0PWJ0LmRhc2gubGVuZ3RoPjAmJmUuZ2V0TGluZURhc2g/ZS5nZXRMaW5lRGFzaCgpOltdO2J0LmRhc2gubGVuZ3RoPjAmJmUuc2V0TGluZURhc2goYnQuZGFzaCksZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhyLGF0KSxlLmxpbmVUbyhyLGF0K3N0KSxlLnN0cm9rZSgpLGJ0LmRhc2gubGVuZ3RoPjAmJmUuc2V0TGluZURhc2godCl9aWYobyl7ZS50ZXh0QWxpZ249YGNlbnRlcmA7bGV0IG49dC52YWxBeGlzRm9udFNpemVIcHQ9PW51bGw/MTA6SHQoeHQpO2UuZmlsbFRleHQoYyxyLGF0K3N0K24pfX1lbHNle2xldCBsPXB0KG4pO2lmKGEmJndzKGUsaXQsb3QsbCxzLGJ0KSxvKXtlLnRleHRBbGlnbj1gcmlnaHRgO2xldCBuPWkuZ2FwUG9saWN5PT09YGNoYXJ0ZXhgP19jKHIpOnQudmFsQXhpc0ZvbnRTaXplSHB0PT1udWxsPzEyOlV0KHh0KTtlLmZpbGxUZXh0KGMsaXQtbixsKX19fX1pZihBJiZHZSYmaWMoZSxBLEdlLHZ0LGl0LG90LHIpLCF0LmNhdEF4aXNIaWRkZW4mJmtzKHQpKXtsZXQgbj1Bcyh0LHIpO2Uuc3Ryb2tlU3R5bGU9bi5jb2xvcixlLmxpbmVXaWR0aD1uLndpZHRoO2xldCBpPW4uZGFzaC5sZW5ndGg+MCYmZS5nZXRMaW5lRGFzaD9lLmdldExpbmVEYXNoKCk6W107bi5kYXNoLmxlbmd0aD4wJiZlLnNldExpbmVEYXNoKG4uZGFzaCk7bGV0IGE9Y3Q/Y3QubWFqb3JUaWNrcy5tYXAoZT0+ZS5mcmFjdGlvbik6TXModCxJKTtmb3IobGV0IHQgb2YgYSl7aWYoZS5iZWdpblBhdGgoKSx1KXtsZXQgbj1hdCt0KnN0O2UubW92ZVRvKGl0LG4pLGUubGluZVRvKGl0K290LG4pfWVsc2V7bGV0IG49aXQrdCpvdDtlLm1vdmVUbyhuLGF0KSxlLmxpbmVUbyhuLGF0K3N0KX1lLnN0cm9rZSgpfW4uZGFzaC5sZW5ndGg+MCYmZS5zZXRMaW5lRGFzaChpKX1sZXR7Y29sb3I6d3Qsd2lkdGg6VHR9PWFhKHQuY2F0QXhpc0xpbmVDb2xvcix0LmNhdEF4aXNMaW5lV2lkdGhFbXUscikse2NvbG9yOk90LHdpZHRoOmt0fT1hYSh0LnZhbEF4aXNMaW5lQ29sb3IsdC52YWxBeGlzTGluZVdpZHRoRW11LHIpLGp0PSF0LmNhdEF4aXNIaWRkZW4mJiF0LmNhdEF4aXNMaW5lSGlkZGVuLE10PSF0LnZhbEF4aXNIaWRkZW4mJiF0LnZhbEF4aXNMaW5lSGlkZGVuJiZ0LnZhbEF4aXNMaW5lQ29sb3IhPW51bGwsTnQ9S2ModCxSZS5taW4sUmUubWF4KSxJdD11P2F0K3N0OnB0KE50KSxMdD11P210KE50KTppdCxCdD0hdSYmKHQuY2F0QXhpc1RpY2tMYWJlbFBvcz8/YG5leHRUb2ApPT09YG5leHRUb2A/SXQ6YXQrc3QsR3Q9TWF0aC5tYXgoMSxNYXRoLmZsb29yKHQuY2F0QXhpc1RpY2tNYXJrU2tpcD8/MSkpLHF0PSF1JiZZIT1udWxsJiZjdD09bnVsbCYmIXQuY2F0QXhpc0xpbmVIaWRkZW4mJnNhKHQpJiZNYXRoLmFicyhCdC1JdCk8LjAxLEp0PSgpPT57aWYodT8oanQmJnhzKGUsTHQsYXQsTHQsYXQrc3Qsd3QsVHQsdC5jYXRBeGlzTGluZURhc2gpLE10JiZ4cyhlLGl0LGF0K3N0LGl0K290LGF0K3N0LE90LGt0LHQudmFsQXhpc0xpbmVEYXNoKSk6KGp0JiZ4cyhlLGl0LEl0LGl0K290LEl0LHd0LFR0LHQuY2F0QXhpc0xpbmVEYXNoKSxNdCYmeHMoZSxpdCxhdCxpdCxhdCtzdCxPdCxrdCx0LnZhbEF4aXNMaW5lRGFzaCkpLCF0LnZhbEF4aXNIaWRkZW4mJnQudmFsQXhpc01ham9yVGlja01hcmsmJnQudmFsQXhpc01ham9yVGlja01hcmshPT1gbm9uZWApZm9yKGxldCBuIG9mIFJlLm1ham9yTGluZXMpdT9icyhlLHQudmFsQXhpc01ham9yVGlja01hcmssYGNhdGAsYXQrc3QsbXQobiksT3Qsa3QsITEsdC52YWxBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC52YWxBeGlzTGluZURhc2gpOmJzKGUsdC52YWxBeGlzTWFqb3JUaWNrTWFyayxgdmFsYCxpdCxwdChuKSxPdCxrdCwhMSx0LnZhbEF4aXNMaW5lSGlkZGVuLGBtYWpvcmAscix0LnZhbEF4aXNMaW5lRGFzaCk7aWYoIXQudmFsQXhpc0hpZGRlbiYmdC52YWxBeGlzTWlub3JUaWNrTWFyayYmdC52YWxBeGlzTWlub3JUaWNrTWFyayE9PWBub25lYClmb3IobGV0IG4gb2YgUmUubWlub3JUaWNrcyl1P2JzKGUsdC52YWxBeGlzTWlub3JUaWNrTWFyayxgY2F0YCxhdCtzdCxtdChuKSxPdCxrdCwhMSx0LnZhbEF4aXNMaW5lSGlkZGVuLGBtaW5vcmAscix0LnZhbEF4aXNMaW5lRGFzaCk6YnMoZSx0LnZhbEF4aXNNaW5vclRpY2tNYXJrLGB2YWxgLGl0LHB0KG4pLE90LGt0LCExLHQudmFsQXhpc0xpbmVIaWRkZW4sYG1pbm9yYCxyLHQudmFsQXhpc0xpbmVEYXNoKTtpZighdC5jYXRBeGlzSGlkZGVuJiZ0LmNhdEF4aXNNYWpvclRpY2tNYXJrJiZ0LmNhdEF4aXNNYWpvclRpY2tNYXJrIT09YG5vbmVgKXtsZXQgbj1xdD9bXTpNcyh0LEkpLGk9Y3Q/Y3QubWFqb3JUaWNrcy5tYXAoZT0+ZS5mcmFjdGlvbik6bi5maWx0ZXIoKGUsdCk9PnQlR3Q9PT0wKTtmb3IobGV0IG4gb2YgaSl1P2JzKGUsdC5jYXRBeGlzTWFqb3JUaWNrTWFyayxgdmFsYCxMdCxhdCtuKnN0LHd0LFR0LCExLHQuY2F0QXhpc0xpbmVIaWRkZW4sYG1ham9yYCxyLHQuY2F0QXhpc0xpbmVEYXNoKTpicyhlLHQuY2F0QXhpc01ham9yVGlja01hcmssYGNhdGAsSXQsaXQrbipvdCx3dCxUdCwhMSx0LmNhdEF4aXNMaW5lSGlkZGVuLGBtYWpvcmAscix0LmNhdEF4aXNMaW5lRGFzaCl9aWYoIXQuY2F0QXhpc0hpZGRlbiYmdC5jYXRBeGlzTWlub3JUaWNrTWFyayYmdC5jYXRBeGlzTWlub3JUaWNrTWFyayE9PWBub25lYCl7bGV0IG49c2EodCk/QXJyYXkuZnJvbSh7bGVuZ3RoOkl9LChlLHQpPT4odCsuNSkvSSk6QXJyYXkuZnJvbSh7bGVuZ3RoOk1hdGgubWF4KDAsSS0xKX0sKGUsdCk9Pih0Ky41KS8oSS0xKSksaT1jdD9jdC5taW5vclRpY2tzLm1hcChlPT5lLmZyYWN0aW9uKTpuO2ZvcihsZXQgbiBvZiBpKXU/YnMoZSx0LmNhdEF4aXNNaW5vclRpY2tNYXJrLGB2YWxgLEx0LGF0K24qc3Qsd3QsVHQsITEsdC5jYXRBeGlzTGluZUhpZGRlbixgbWlub3JgLHIsdC5jYXRBeGlzTGluZURhc2gpOmJzKGUsdC5jYXRBeGlzTWlub3JUaWNrTWFyayxgY2F0YCxJdCxpdCtuKm90LHd0LFR0LCExLHQuY2F0QXhpc0xpbmVIaWRkZW4sYG1pbm9yYCxyLHQuY2F0QXhpc0xpbmVEYXNoKX19LFl0PWU9PmU/c3QvSTpvdC9JLFh0PVl0KHUpLFF0PVBzKHQpLCR0PShlLHQpPT50P1F0P2U6SS0xLWU6UXQ/SS0xLWU6ZSxlbj0oZSx0PXUpPT5jdD9jdC5jYXRlZ29yeUJhbmRGcmFjdGlvbnNbZV0qKHQ/c3Q6b3QpOll0KHQpLHRuPShlLHQ9dSk9PmN0Pyh0P2F0Oml0KStjdC5wb3NpdGlvbnNbZV0qKHQ/c3Q6b3QpLWVuKGUsdCkvMjoodD9hdDppdCkrJHQoZSx0KSpZdCh0KSxubj1lPT5jdD9pdCtjdC5wb3NpdGlvbnNbZV0qb3Q6aXQrJHQoZSwhMSkqWXQoITEpK1l0KCExKS8yLHJuPShlLG4pPT57bGV0IHI9ZVswXSxhPXI/eShyKTpkLG89YT8xOk1hdGgubWF4KDEsZS5sZW5ndGgpLHM9cj8uYmFyR3JvdXBPdmVybGFwPz90LmJhck92ZXJsYXA/PzAsYz1hfHwhTnVtYmVyLmlzRmluaXRlKHMpPzA6TWF0aC5tYXgoLTEwMCxNYXRoLm1pbigxMDAscykpLGw9RHQocj8uYmFyR3JvdXBHYXBXaWR0aD8/dC5iYXJHYXBXaWR0aCxpLmdhcFBvbGljeT8/YGxlZ2FjeWApLHU9bi8oMSsoby0xKSooMS1jLzEwMCkrbC8xMDApLGY9YT8wOnUqKDEtYy8xMDApO3JldHVybntiYXJXOnUsY2x1c3RlckdhcDpmLGNhdFN0YXJ0OihuLSh1KyhvLTEpKmYpKS8yfX0sYW49KHQuYmFyR3JvdXBEZWNvcmF0aW9ucz8/W10pLnNvbWUoZT0+ZS5zZXJpZXNMaW5lcz8ubGVuZ3RoPT09MSk/aC5tYXAoKCk9PkFycmF5KEkpLmZpbGwobnVsbCkpOm51bGw7Zm9yKGxldCBuPTA7bjxTLmxlbmd0aDtuKyspe2xldCBpPVNbbl0sbz16byhpLmRhdGFQb2ludE92ZXJyaWRlcykscz1Sbyh3LmdldChpKT8/bixpKSxjPUEmJmkudXNlU2Vjb25kYXJ5QXhpcz09PSEwP3l0Ol90LGw9dC5kaXNwQmxhbmtzQXM/P2B6ZXJvYCx1PVtdLGQ9KCk9PntpZih1Lmxlbmd0aCE9PTApe2N0JiYoZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3QoaXQsYXQsb3Qsc3QpLGUuY2xpcCgpKSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHVbMF0ueCx1WzBdLmJhc2VZKSxlLmxpbmVUbyh1WzBdLngsdVswXS55KSxFbChlLHUsITEpO2ZvcihsZXQgdD11Lmxlbmd0aC0xO3Q+PTA7dC0tKWUubGluZVRvKHVbdF0ueCx1W3RdLmJhc2VZKTtlLmNsb3NlUGF0aCgpLGUuZmlsbFN0eWxlPWkuZmlsbFBhdHRlcm4/YWkoaS5maWxsUGF0dGVybixlLHVbMF0ueCxhdCxNYXRoLm1heCgxLHVbdS5sZW5ndGgtMV0ueC11WzBdLngpLHN0KT8/czpzLGUuZmlsbCgpLGkubGluZUhpZGRlbiE9PSEwJiYoZS5zdHJva2VTdHlsZT1pLmxpbmVDb2xvcj9gIyR7aS5saW5lQ29sb3J9YDpzLGUubGluZVdpZHRoPWkubGluZVdpZHRoRW11PT1udWxsPzEuNTppYShpLmxpbmVXaWR0aEVtdSxyKSxlLnNldExpbmVEYXNoKFtdKSxlLnN0cm9rZSgpKSxjdCYmZS5yZXN0b3JlKCksdT1bXX19O2ZvcihsZXQgZT0wO2U8STtlKyspaS52YWx1ZXNbZV09PW51bGwmJihsPT09YGdhcGAmJmQoKSxsIT09YHplcm9gKXx8dS5wdXNoKHt4Om5uKGUpLHk6YyhXKGksZSkpLGJhc2VZOmMoRyhpLGUpKX0pO2QoKTtsZXQgZj0oaS5zaG93TWFya2VyPT09ITB8fHhuKGkpKSYmaS5tYXJrZXJTeW1ib2whPT1gbm9uZWA7aWYoZnx8a24oaSkpe2xldCB0PU1hdGgubWF4KDIsMi41KnIpO2ZvcihsZXQgbj0wO248STtuKyspe2lmKGkudmFsdWVzW25dPT1udWxsKWNvbnRpbnVlO2xldCBsPW8uZ2V0KG4pLHU9TW4oaSxsLGBjaXJjbGVgLGYpO2lmKHU9PT1gbm9uZWApY29udGludWU7bGV0IGQ9bm4obikscD1jKFcoaSxuKSk7aWYoeG4oaSl8fFNuKGwpKXtsZXQgdD1sPy5tYXJrZXJMaW5lV2lkdGhFbXU/P2kubWFya2VyTGluZVdpZHRoRW11O19sKGUsZCxwLHUsbD8ubWFya2VyU2l6ZT8/aS5tYXJrZXJTaXplPz81LFBuKGksbCxuLHMpLGw/Lm1hcmtlckxpbmU/P2kubWFya2VyTGluZT8/bnVsbCxyLHQ9PW51bGw/dm9pZCAwOmlhKHQsciksTm4oaSxsLG4pLGEpfWVsc2UgZS5maWxsU3R5bGU9cyxlLmJlZ2luUGF0aCgpLGUuYXJjKGQscCx0LDAsTWF0aC5QSSoyKSxlLmZpbGwoKX19fWZvcihsZXQgbj0wO248STtuKyspe2xldCBpPW5ldyBNYXAsdT1uZXcgTWFwO2ZvcihsZXQgZD0wO2Q8aC5sZW5ndGg7ZCsrKXtsZXQgZj1oW2RdLHA9bShmKSxnPWVuKG4scCksdj1BIT1udWxsJiZmLnVzZVNlY29uZGFyeUF4aXM9PT0hMCx4PVIoZiksUz1fKGYpLEM9eShmKSxUPWIoZiksRT1UJiZ4LnJlZHVjZSgoZSx0KT0+ZStNYXRoLmFicyh0LnZhbHVlc1tuXT8/MCksMCl8fDEsRD1pLmdldChTKT8/MCxrPXUuZ2V0KFMpPz8wLGo9TWF0aC5tYXgoMCx4LmluZGV4T2YoZikpLHtiYXJXOk0sY2x1c3RlckdhcDpQLGNhdFN0YXJ0Okl9PXJuKHgsZyksTD12JiZHZT9HZS5tYWtlVG9ZKGF0LHN0KTpwdCx6PUdlP04/LmNyb3NzZXNBdCE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKE4uY3Jvc3Nlc0F0KT9NYXRoLm1heChHZS5taW4sTWF0aC5taW4oR2UubWF4LE4uY3Jvc3Nlc0F0KSk6Tj8uY3Jvc3Nlcz09PWBtYXhgP0dlLm1heDpOPy5jcm9zc2VzPT09YG1pbmA/R2UubWluOk1hdGgubWF4KEdlLm1pbixNYXRoLm1pbihHZS5tYXgsMCkpOjAsQj12P0woeik6aHQsVj1mLnZhbHVlc1tuXT8/MCxIPVQ/Vi9FKmVlKGYpOlYsVT1IPDAsVz12JiZHZT9HZS5tYXg6UmUubWF4LEc9VSYmKGYuaW52ZXJ0SWZOZWdhdGl2ZT09PSEwfHxmLmF1dG9tYXRpY05lZ2F0aXZlU3R5bGU9PT0hMCksSz1uZVtkXS5nZXQobiksb2U9Sz8uY29sb3I/P2YuZGF0YVBvaW50Q29sb3JzPy5bbl0sc2U9b2U/YCMke29lfWA6dGU/Qm8obixmKTpSbyhkLGYpLGNlPUc/Zi5hdXRvbWF0aWNOZWdhdGl2ZVN0eWxlPT09ITB8fGYuaW52ZXJ0ZWRGaWxsSGlkZGVuPT09ITA/bnVsbDpmLmludmVydGVkRmlsbDp2b2lkIDAsbGU9Sz8uZmlsbEhpZGRlbj9udWxsOks/LmNvbG9yP3tmaWxsVHlwZTpgc29saWRgLGNvbG9yOksuY29sb3J9OmNlPT09dm9pZCAwP2FlP1VsKHQsaWVbZF0saC5sZW5ndGgsZi5jaGFydGV4U3R5bGUsZi5jb2xvcik6dm9pZCAwOmNlLHVlPSgpPT57aWYoSz8ubGluZUhpZGRlbiE9bnVsbHx8Sz8ubGluZUNvbG9yIT1udWxsfHxLPy5saW5lV2lkdGhFbXUhPW51bGx8fEs/LmxpbmVEYXNoIT1udWxsKXtpZihLPy5saW5lSGlkZGVuKXJldHVybiExO2xldCBuPVBsKHQsdC5jaGFydGV4RGF0YVBvaW50U3R5bGUsYGxpbmVgLGllW2RdLGgubGVuZ3RoKT8/Zi5saW5lQ29sb3I/P3NlO3JldHVybiBlLnN0cm9rZVN0eWxlPWAjJHtLPy5saW5lQ29sb3I/P24ucmVwbGFjZSgvXiMvLGBgKX1gLGUubGluZVdpZHRoPUs/LmxpbmVXaWR0aEVtdT09bnVsbD9mLmxpbmVXaWR0aEVtdT09bnVsbD8xOmlhKGYubGluZVdpZHRoRW11LHIpOmlhKEsubGluZVdpZHRoRW11LHIpLGUuc2V0TGluZURhc2goRGwoSz8ubGluZURhc2gsZS5saW5lV2lkdGgpKSwhMH1pZihHJiYoZi5pbnZlcnRlZExpbmVIaWRkZW4hPW51bGx8fGYuaW52ZXJ0ZWRMaW5lQ29sb3IhPW51bGx8fGYuaW52ZXJ0ZWRMaW5lV2lkdGhFbXUhPW51bGwpKXJldHVybiBmLmludmVydGVkTGluZUhpZGRlbj8hMTooZS5zdHJva2VTdHlsZT1gIyR7Zi5pbnZlcnRlZExpbmVDb2xvcj8/YDAwMDAwMGB9YCxlLmxpbmVXaWR0aD1pYShmLmludmVydGVkTGluZVdpZHRoRW11LHIpLGUuc2V0TGluZURhc2goW10pLCEwKTtpZihmLmF1dG9tYXRpY05lZ2F0aXZlU3R5bGU9PT0hMClyZXR1cm4gZS5zdHJva2VTdHlsZT1gIzAwMDAwMGAsZS5saW5lV2lkdGg9Ljc1KnIsZS5zZXRMaW5lRGFzaChbXSksITA7bGV0IG49RyYmdC5jaGFydFR5cGU9PT1gY2x1c3RlcmVkQmFyYCYmdC5sZWdhY3lDaGFydFN0eWxlPT09MiYmZi5pbnZlcnRlZEZpbGxBdXRob3JlZD09PSEwJiZmLmludmVydGVkRmlsbCE9bnVsbCYmZi5pbnZlcnRlZExpbmVBdXRob3JlZD09PSExLGk9Zi5saW5lSGlkZGVuPT09ITB8fGYubGluZUNvbG9yIT1udWxsfHxmLmxpbmVXaWR0aEVtdSE9bnVsbDtyZXR1cm4gbiYmaT9mLmxpbmVIaWRkZW58fCFmLmxpbmVDb2xvcj8hMTooZS5zdHJva2VTdHlsZT1gIyR7Zi5saW5lQ29sb3J9YCxlLmxpbmVXaWR0aD1pYShmLmxpbmVXaWR0aEVtdSxyKSxlLnNldExpbmVEYXNoKFtdKSwhMCk6bj8oZS5zdHJva2VTdHlsZT1gIzAwMDAwMGAsZS5saW5lV2lkdGg9Ljc1KnIsZS5zZXRMaW5lRGFzaChbXSksITApOmFlP3FsKGUsdCx0LmNoYXJ0ZXhEYXRhUG9pbnRTdHlsZSxmLGllW2RdLGgubGVuZ3RoLHNlLHIpOiFmLmxpbmVDb2xvcnx8Zi5saW5lSGlkZGVuPyExOihlLnN0cm9rZVN0eWxlPWAjJHtmLmxpbmVDb2xvcn1gLGUubGluZVdpZHRoPWlhKGYubGluZVdpZHRoRW11LHIpLGUuc2V0TGluZURhc2goW10pLCEwKX07aWYocCl7bGV0IGk9aix1PUM/dG4obiwhMCkrSTp0bihuLCEwKStJK2kqUCxwPUM/bXQoVT9rOkQpOmd0LG09bXQoQz8oVT9rOkQpK0g6SCksaD1UbChNYXRoLm1pbihwLG0pLGl0LGl0K290KSxnPVRsKE1hdGgubWF4KHAsbSksaXQsaXQrb3QpLF89TWF0aC5tYXgoMCxnLWgpO2lmKGFuJiZmLnZhbHVlc1tuXSE9bnVsbCYmKGFuW2RdW25dPXtjYXRlZ29yeVN0YXJ0OnUsY2F0ZWdvcnlFbmQ6dStNLHZhbHVlRW5kOlRsKG0saXQsaXQrb3QpfSksbGUhPT1udWxsJiYoZS5maWxsU3R5bGU9bGU/V2woZSxsZSxoLHUsXyxNLHNlKTpmLmZpbGxQYXR0ZXJuP2FpKGYuZmlsbFBhdHRlcm4sZSxoLHUsXyxNKT8/c2U6c2UsZS5maWxsUmVjdChoLHUsXyxNKSksXz4wJiZNPjAmJnVlKCkpe2xldCB0PWUubGluZVdpZHRoO2Uuc3Ryb2tlUmVjdChoK3QvMix1K3QvMixNYXRoLm1heCgwLF8tdCksTWF0aC5tYXgoMCxNLXQpKX1sZXQgdj1mLnNlcmllc0RhdGFMYWJlbHMseT1ObCh0LGYsbixmLmNhdGVnb3JpZXM/LltuXT8/RltuXT8/YGAsVix7dmlzaWJsZTp0LnNob3dEYXRhTGFiZWxzLHNob3dWYWw6dC5zaG93RGF0YUxhYmVscyYmIVQsc2hvd1BlcmNlbnQ6dC5zaG93RGF0YUxhYmVscyYmVCxzaG93Q2F0TmFtZTohMX0scmVbZF0sVD9ILzEwMDp2b2lkIDAsZi51c2VTZWNvbmRhcnlBeGlzJiZBP0EuZGlzcGxheVVuaXRzOnQudmFsQXhpc0Rpc3BsYXlVbml0cyk7aWYoeSYmaGModCxWLFcpKXtsZXQgaT1BdCh5LmZvbnRTaXplSHB0Pz90LmRhdGFMYWJlbEZvbnRTaXplSHB0LHIpPz9NYXRoLm1heCg3LE1hdGgubWluKDExLE0qLjYpKSxwPXJlW2RdLmdldChuKSxtPXkuZm9udEJvbGR8fHY/LmZvbnRCb2xkPT1udWxsJiZwPy5mb250Qm9sZD09bnVsbCxnPSQodCx5LmZvbnRGYWNlPz90LmRhdGFMYWJlbEZvbnRGYWNlLGBtaW5vcmApO2UuZm9udD1gJHt5LnRleHRTdHlsZS5mb250SXRhbGljP2BpdGFsaWMgYDpgYH0ke20/YGJvbGQgYDpgYH0ke2l9cHggJHtnfWAsZ2MoZSx5LnRleHQsaCx1LF8sTSxgaG9yaXpvbnRhbGAseS5wb3NpdGlvbj8/dC5kYXRhTGFiZWxQb3NpdGlvbj8/KEM/YGN0cmA6bnVsbCksZi5kYXRhTGFiZWxDb2xvcnM/LltuXT8/eS5mb250Q29sb3I/P2YubGFiZWxDb2xvcj8/dC5kYXRhTGFiZWxGb250Q29sb3I/P251bGwsaSx7eDppdCx5OmF0LHc6b3QsaDpzdH0se3g6byx5OnMsdzpjLGg6bH0scD8ubWFudWFsTGF5b3V0LFUseGwodCxwLHIsZyxtLHkudGV4dFN0eWxlKSx5LnNob3dMZWdlbmRLZXk/Tyh3LmdldChmKT8/ZCxuKTp2b2lkIDAseS50ZXh0U3R5bGUscixOaShwPy5sYWJlbEJveCx2Py5sYWJlbEJveCksYSl9fWVsc2V7bGV0IGk9Qz90bihuLCExKStJOnRuKG4sITEpK0kraipQO2lmKGkrTTw9aXR8fGk+PWl0K290KWNvbnRpbnVlO2xldCB1PUM/TChVP2s6RCk6QixwPUwoQz8oVT9rOkQpK0g6SCksbT1UbChNYXRoLm1pbih1LHApLGF0LGF0K3N0KSxoPVRsKE1hdGgubWF4KHUscCksYXQsYXQrc3QpLGc9TWF0aC5tYXgoMCxoLW0pO2lmKGFuJiZmLnZhbHVlc1tuXSE9bnVsbCYmKGFuW2RdW25dPXtjYXRlZ29yeVN0YXJ0OmksY2F0ZWdvcnlFbmQ6aStNLHZhbHVlRW5kOlRsKHAsYXQsYXQrc3QpfSksbGUhPT1udWxsJiYoZS5maWxsU3R5bGU9bGU/V2woZSxsZSxpLG0sTSxnLHNlKTpmLmZpbGxQYXR0ZXJuP2FpKGYuZmlsbFBhdHRlcm4sZSxpLG0sTSxnKT8/c2U6c2UsZS5maWxsUmVjdChpLG0sTSxnKSksTT4wJiZnPjAmJnVlKCkpe2xldCB0PWUubGluZVdpZHRoO2Uuc3Ryb2tlUmVjdChpK3QvMixtK3QvMixNYXRoLm1heCgwLE0tdCksTWF0aC5tYXgoMCxnLXQpKX1sZXQgXz1mLnNlcmllc0RhdGFMYWJlbHMsdj1ObCh0LGYsbixmLmNhdGVnb3JpZXM/LltuXT8/RltuXT8/YGAsVix7dmlzaWJsZTp0LnNob3dEYXRhTGFiZWxzLHNob3dWYWw6dC5zaG93RGF0YUxhYmVscyYmIVQsc2hvd1BlcmNlbnQ6dC5zaG93RGF0YUxhYmVscyYmVCxzaG93Q2F0TmFtZTohMX0scmVbZF0sVD9ILzEwMDp2b2lkIDAsZi51c2VTZWNvbmRhcnlBeGlzJiZBP0EuZGlzcGxheVVuaXRzOnQudmFsQXhpc0Rpc3BsYXlVbml0cyk7aWYodiYmaGModCxWLFcpKXtsZXQgdT1BdCh2LmZvbnRTaXplSHB0Pz90LmRhdGFMYWJlbEZvbnRTaXplSHB0LHIpPz9NYXRoLm1heCg3LE1hdGgubWluKDExLE0qLjYpKSxwPXJlW2RdLmdldChuKSxoPXYuZm9udEJvbGR8fF8/LmZvbnRCb2xkPT1udWxsJiZwPy5mb250Qm9sZD09bnVsbCx5PSQodCx2LmZvbnRGYWNlPz90LmRhdGFMYWJlbEZvbnRGYWNlLGBtaW5vcmApO2UuZm9udD1gJHt2LnRleHRTdHlsZS5mb250SXRhbGljP2BpdGFsaWMgYDpgYH0ke2g/YGJvbGQgYDpgYH0ke3V9cHggJHt5fWAsZ2MoZSx2LnRleHQsaSxtLGcsTSxgdmVydGljYWxgLHYucG9zaXRpb24/P3QuZGF0YUxhYmVsUG9zaXRpb24/PyhDP2BjdHJgOm51bGwpLGYuZGF0YUxhYmVsQ29sb3JzPy5bbl0/P3YuZm9udENvbG9yPz9mLmxhYmVsQ29sb3I/P3QuZGF0YUxhYmVsRm9udENvbG9yPz9udWxsLHUse3g6aXQseTphdCx3Om90LGg6c3R9LHt4Om8seTpzLHc6YyxoOmx9LHA/Lm1hbnVhbExheW91dCxVLHhsKHQscCxyLHksaCx2LnRleHRTdHlsZSksdi5zaG93TGVnZW5kS2V5P08ody5nZXQoZik/P2Qsbik6dm9pZCAwLHYudGV4dFN0eWxlLHIsTmkocD8ubGFiZWxCb3gsXz8ubGFiZWxCb3gpLGEpfX1DJiYoVT91LnNldChTLGsrSCk6aS5zZXQoUyxEK0gpKX19aWYoYW4pe2xldCBuPW5ldyBNYXA7Zm9yKGxldCBlPTA7ZTxoLmxlbmd0aDtlKyspe2xldCB0PWhbZV0uYmFyR3JvdXBJbmRleD8/MCxyPW4uZ2V0KHQpO3I/ci5wdXNoKGUpOm4uc2V0KHQsW2VdKX1mb3IobGV0IGkgb2YgdC5iYXJHcm91cERlY29yYXRpb25zPz9bXSlpZihpLnNlcmllc0xpbmVzPy5sZW5ndGg9PT0xKXtpZihlLnNhdmUoKSwheWMoZSxiYyh0LGkuc2VyaWVzTGluZXNbMF0sYHNlcmllc0xpbmVgKSxyKSl7ZS5yZXN0b3JlKCk7Y29udGludWV9ZS5iZWdpblBhdGgoKSxlLnJlY3QoaXQsYXQsb3Qsc3QpLGUuY2xpcCgpO2ZvcihsZXQgdCBvZiBuLmdldChpLmdyb3VwSW5kZXgpPz9bXSl7bGV0IG49YW5bdF0scj1tKGhbdF0pO2ZvcihsZXQgdD0wO3QrMTxJO3QrKyl7bGV0IGk9blt0XSxhPW5bdCsxXTtpZighaXx8IWEpY29udGludWU7bGV0IG89KGkuY2F0ZWdvcnlTdGFydCtpLmNhdGVnb3J5RW5kKS8yLHM9KGEuY2F0ZWdvcnlTdGFydCthLmNhdGVnb3J5RW5kKS8yPj1vO2UuYmVnaW5QYXRoKCkscj8oZS5tb3ZlVG8oaS52YWx1ZUVuZCxzP2kuY2F0ZWdvcnlFbmQ6aS5jYXRlZ29yeVN0YXJ0KSxlLmxpbmVUbyhhLnZhbHVlRW5kLHM/YS5jYXRlZ29yeVN0YXJ0OmEuY2F0ZWdvcnlFbmQpKTooZS5tb3ZlVG8ocz9pLmNhdGVnb3J5RW5kOmkuY2F0ZWdvcnlTdGFydCxpLnZhbHVlRW5kKSxlLmxpbmVUbyhzP2EuY2F0ZWdvcnlTdGFydDphLmNhdGVnb3J5RW5kLGEudmFsdWVFbmQpKSxlLnN0cm9rZSgpfX1lLnJlc3RvcmUoKX19bGV0IG9uPShlLHQpPT57bGV0IG49UihlKSxyPU1hdGgubWF4KDAsbi5pbmRleE9mKGUpKSxpPW0oZSksYT1ybihuLGVuKHQsaSkpLG89dG4odCxpKSthLmNhdFN0YXJ0O3JldHVybiB5KGUpP28rYS5iYXJXLzI6bytyKmEuY2x1c3RlckdhcCthLmJhclcvMn0sc249KGUsdCk9PntpZihOdW1iZXIuaXNJbnRlZ2VyKHQpJiZ0Pj0wJiZ0PEkpcmV0dXJuIG9uKGUsdCk7bGV0IG49UihlKSxyPU1hdGgubWF4KDAsbi5pbmRleE9mKGUpKSxpPW0oZSksYT1ZdChpKSxvPXJuKG4sYSkscz1pP1F0P3Q6SS0xLXQ6UXQ/SS0xLXQ6dDtyZXR1cm4oaT9hdDppdCkrcyphK28uY2F0U3RhcnQrKHkoZSk/MDpyKSpvLmNsdXN0ZXJHYXArby5iYXJXLzJ9O2ZvcihsZXQgaT0wO2k8aC5sZW5ndGg7aSsrKXtsZXQgbz1oW2ldLHM9bShvKSxjPUEhPW51bGwmJm8udXNlU2Vjb25kYXJ5QXhpcz09PSEwLGw9cz9tdDpjJiZHZT9HZS5tYWtlVG9ZKGF0LHN0KTpwdCx1PVJvKGksbyksZD1lPT5OZShpLGUpO2ZvcihsZXQgbiBvZiBLKG8pKUFsKGUsbyxDYyh0LG4pLEkscyxlPT5vbihvLGUpLGwsZCx1LHIpO0tzKGUsbyx1LGU9PnNuKG8sZS0xKSxsLHIsby52YWx1ZXMubWFwKChlLHQpPT50KzEpLHtjaGFydDp0LGNoYXJ0UmVjdDpuLHBsb3RSZWN0Ont4Oml0LHk6YXQsdzpvdCxoOnN0fSxzaGFwZVJvdGF0aW9uRGVnOmF9LChlLHQpPT5zP3t4OmwodCkseTpzbihvLGUtMSl9Ont4OnNuKG8sZS0xKSx5OmwodCl9KX1pZigoIXBlfHx1KSYmIXQuY2F0QXhpc0hpZGRlbiYmUXModCkpe2UuZmlsbFN0eWxlPXQuY2F0QXhpc0ZvbnRDb2xvcj9gIyR7dC5jYXRBeGlzRm9udENvbG9yfWA6YCM1NTVgO2xldCBuPXQuY2F0QXhpc0ZvbnRTaXplSHB0PT1udWxsP01hdGgubWF4KDgsTWF0aC5taW4oMTEsWHQqLjUpKTpkZTtlLmZvbnQ9SG8obiwkKHQsdC5jYXRBeGlzRm9udEZhY2UsYG1pbm9yYCksdC5jYXRBeGlzRm9udEJvbGQ/PyExLHQuY2F0QXhpc0ZvbnRJdGFsaWM/PyExKTtsZXQgaT1YdC00LGE9aXQtNC0obyt2ZStTZSkscz1sdCxjPWN0P2N0Lm1ham9yVGlja3MubWFwKGU9Pih7cmF3OnhhKFN0cmluZyhlLnNlcmlhbCksdC5jYXRBeGlzRm9ybWF0Q29kZSx0LmRhdGUxOTA0KSxmcmFjdGlvbjplLmZyYWN0aW9uLGNhdGVnb3J5SW5kZXg6LTF9KSk6Ri5tYXAoKGUsbik9Pih7cmF3OnhhKGUudG9TdHJpbmcoKSx0LmNhdEF4aXNGb3JtYXRDb2RlLHQuZGF0ZTE5MDQpLGZyYWN0aW9uOm51bGwsY2F0ZWdvcnlJbmRleDpufSkpO2ZvcihsZXQgciBvZiBjKXtsZXR7cmF3OmN9PXI7aWYodSl7bGV0IGk9ci5mcmFjdGlvbj09bnVsbD9hdCskdChyLmNhdGVnb3J5SW5kZXgsITApKlh0K1h0LzI6YXQrci5mcmFjdGlvbipzdCxzPVN0KHQuY2F0QXhpc0ZvbnRTaXplSHB0PT1udWxsPzQ6VXQobiksdC5jYXRBeGlzTGFiZWxPZmZzZXRQZXJjZW50KSxsPW8rdmUrU2UsdT1pdC1zLGQ9dC5jYXRBeGlzTGFiZWxBbGlnbm1lbnQsZj1kPT09YGxgP2w6ZD09PWBjdHJgPyhsK3UpLzI6dTtlLnRleHRBbGlnbj1kPT09YGxgP2BsZWZ0YDpkPT09YGN0cmA/YGNlbnRlcmA6YHJpZ2h0YCxlLnRleHRCYXNlbGluZT1gbWlkZGxlYCxlLmZpbGxUZXh0KGthKGUsYyxhKSxmLGkpfWVsc2V7bGV0IGE9ci5mcmFjdGlvbiE9bnVsbHx8ci5jYXRlZ29yeUluZGV4PDA/e2ZyYWN0aW9uOnIuZnJhY3Rpb24/Py41LHRleHRBbGlnbjpgY2VudGVyYH06RXQoci5jYXRlZ29yeUluZGV4LEksc2EodCksUXQsdC5jYXRBeGlzTGFiZWxBbGlnbm1lbnQpLG89aXQrYS5mcmFjdGlvbipvdDtlLnRleHRBbGlnbj1hLnRleHRBbGlnbixlLnRleHRCYXNlbGluZT1gdG9wYDtsZXQgbD1zPT09MD9pOnN0Ki40LHU9U3QodC5jYXRBeGlzRm9udFNpemVIcHQ9PW51bGw/MzpIdChuKSx0LmNhdEF4aXNMYWJlbE9mZnNldFBlcmNlbnQpO3M9PT0wPyhyLmNhdGVnb3J5SW5kZXg+PTA/dXRbci5jYXRlZ29yeUluZGV4XT8/W2NdOltjXSkuZm9yRWFjaCgodCxyKT0+e2UuZmlsbFRleHQodCxvLEJ0K3UrcioobisyKSl9KTplYyhlLGthKGUsYyxsKSxvLEJ0K3Uscyl9fWlmKCF1JiZZKXtsZXQgaT1TdCh0LmNhdEF4aXNGb250U2l6ZUhwdD09bnVsbD8zOkh0KG4pLHQuY2F0QXhpc0xhYmVsT2Zmc2V0UGVyY2VudCksYT1uKzQ7ZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YHRvcGAsZS5zdHJva2VTdHlsZT13dCxlLmxpbmVXaWR0aD1UdCxlLnNldExpbmVEYXNoKFtdKTtsZXQgbz1lPT57aWYoIXF0fHxlJUd0IT09MClyZXR1cm4gQnQ7bGV0IG49U3MoYG1ham9yYCxUdCxyKTtyZXR1cm4gdC5jYXRBeGlzTWFqb3JUaWNrTWFyaz09PWBjcm9zc2A/QnQtbi8yOnQuY2F0QXhpc01ham9yVGlja01hcms9PT1gaW5gP0J0LW46QnR9LHM9bmV3IFNldDtmb3IobGV0IGU9MTtlPFkubGVuZ3RoO2UrKyl7bGV0IHQ9WVtlXT8/W107Zm9yKGxldCBlPTA7ZTxJO2UrKykodFtlXT8/YGApIT09YGAmJnMuYWRkKGUpO3MuYWRkKEkpfWxldCBjPUJ0K2krbisyO2ZvcihsZXQgdD0wO3Q8PUk7dCsrKXtpZihzLmhhcyh0KSljb250aW51ZTtsZXQgbj1pdCt0L0kqb3Q7ZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhuLG8odCkpLGUubGluZVRvKG4sYyksZS5zdHJva2UoKX1sZXQgbD1uZXcgTWFwO2ZvcihsZXQgcj0xO3I8WS5sZW5ndGg7cisrKXtsZXQgbz1ZW3JdPz9bXSxzPVtdO2ZvcihsZXQgZT0wO2U8STtlKyspKG9bZV0/P2BgKSE9PWBgJiZzLnB1c2goZSk7Zm9yKGxldCBjPTA7YzxzLmxlbmd0aDtjKyspe2xldCB1PXNbY10sZD1zW2MrMV0/P0ksZj1vW3VdPz9gYCxwPWl0K3UvSSpvdCxtPWl0K2QvSSpvdCxoPUJ0K2krciphLGc9dC5jYXRBeGlzTGFiZWxBbGlnbm1lbnQsXz1nPT09YGxgP3A6Zz09PWByYD9tOihwK20pLzI7ZS50ZXh0QWxpZ249Zz09PWBsYD9gbGVmdGA6Zz09PWByYD9gcmlnaHRgOmBjZW50ZXJgLGUuZmlsbFRleHQoa2EoZSxmLE1hdGgubWF4KDAsbS1wLTQpKSxfLGgpO2xldCB2PWgrbisyO2ZvcihsZXQgZSBvZlt1LGRdKWwuc2V0KGUsTWF0aC5tYXgobC5nZXQoZSk/P0J0LHYpKX19Zm9yKGxldFt0LG5db2YgbCl7bGV0IHI9aXQrdC9JKm90O2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8ocixvKHQpKSxlLmxpbmVUbyhyLG4pLGUuc3Ryb2tlKCl9fX1pZih4Lmxlbmd0aD4wJiYhdSl7V2MoZSx0LEksbm4sZT0+QSYmZS51c2VTZWNvbmRhcnlBeGlzPT09ITA/eXQ6X3QsKCk9Pkl0LChlLHQpPT5lLnZhbHVlc1t0XT09bnVsbD9udWxsOlcoZSx0KSxYdCxyLGEsYGJhY2tncm91bmRgKSxjdCYmKGUuc2F2ZSgpLGUuYmVnaW5QYXRoKCksZS5yZWN0KGl0LGF0LG90LHN0KSxlLmNsaXAoKSk7Zm9yKGxldCBvPTA7bzx4Lmxlbmd0aDtvKyspe2xldCBzPXhbb10sYz16byhzLmRhdGFQb2ludE92ZXJyaWRlcyksbD1SbyhoLmxlbmd0aCtvLHMpLHU9QSYmcy51c2VTZWNvbmRhcnlBeGlzPT09ITA/eXQ6X3QsZD1zLmNoYXJ0ZXhTdHlsZSE9bnVsbHx8cy5saW5lSGlkZGVuIT1udWxsfHxzLmxpbmVDb2xvciE9bnVsbHx8cy5saW5lV2lkdGhFbXUhPW51bGx8fHQuY2hhcnRleERhdGFQb2ludExpbmVTdHlsZSE9bnVsbCxmPWQ/cWwoZSx0LHQuY2hhcnRleERhdGFQb2ludExpbmVTdHlsZSxzLE1sKHMsdy5nZXQocyk/P28pLHgubGVuZ3RoLGwscix7bGlua2VkTm9TdHlsZUZhbGxiYWNrOmkuc2VtYW50aWNMaW5lTm9TdHlsZUZhbGxiYWNrfSk6ITA7ZHx8KGUuc3Ryb2tlU3R5bGU9bCxlLmxpbmVXaWR0aD0yLGUuc2V0TGluZURhc2goW10pKSxlLmJlZ2luUGF0aCgpO2xldCBwPXMuc21vb3RoPT09ITAsbT10LmRpc3BCbGFua3NBcz8/YGdhcGAsZz1bXSxfPSgpPT57Zy5sZW5ndGghPT0wJiYoZS5tb3ZlVG8oZ1swXS54LGdbMF0ueSksRWwoZSxnLHApLGc9W10pfTtmb3IobGV0IGU9MDtlPEk7ZSsrKXtpZihzLnZhbHVlc1tlXT09bnVsbCYmKG09PT1gZ2FwYCYmXygpLG0hPT1gemVyb2ApKWNvbnRpbnVlO2xldCB0PW5uKGUpO2cucHVzaCh7eDp0LHk6dShXKHMsZSkpfSl9XygpLGYmJmUuc3Ryb2tlKCk7bGV0IHY9cy5zaG93TWFya2VyIT09ITEmJnMubWFya2VyU3ltYm9sIT09YG5vbmVgLHk9dnx8a24ocyksYj14bihzKTtpZih5KWZvcihsZXQgdD0wO3Q8STt0Kyspe2lmKHMudmFsdWVzW3RdPT1udWxsKWNvbnRpbnVlO2xldCBuPW5uKHQpLGk9dShXKHMsdCkpLG89Yy5nZXQodCksZD1NbihzLG8sYGNpcmNsZWAsdik7aWYoZCE9PWBub25lYClpZihifHxTbihvKSl7bGV0IGM9bz8ubWFya2VyTGluZVdpZHRoRW11Pz9zLm1hcmtlckxpbmVXaWR0aEVtdTtfbChlLG4saSxkLG8/Lm1hcmtlclNpemU/P3MubWFya2VyU2l6ZT8/NSxQbihzLG8sdCxsKSxvPy5tYXJrZXJMaW5lPz9zLm1hcmtlckxpbmU/P251bGwscixjPT1udWxsP3ZvaWQgMDppYShjLHIpLE5uKHMsbyx0KSxhKX1lbHNlIGUuZmlsbFN0eWxlPWwsZS5iZWdpblBhdGgoKSxlLmFyYyhuLGksMywwLE1hdGguUEkqMiksZS5maWxsKCl9S3MoZSxzLGwsZT0+bm4oZSksdSxyLHZvaWQgMCx7Y2hhcnQ6dCxjaGFydFJlY3Q6bixwbG90UmVjdDp7eDppdCx5OmF0LHc6b3QsaDpzdH0sc2hhcGVSb3RhdGlvbkRlZzphfSl9V2MoZSx0LEksbm4sZT0+QSYmZS51c2VTZWNvbmRhcnlBeGlzPT09ITA/eXQ6X3QsKCk9Pkl0LChlLHQpPT5lLnZhbHVlc1t0XT09bnVsbD9udWxsOlcoZSx0KSxYdCxyLGEsYGZvcmVncm91bmRgKSxjdCYmZS5yZXN0b3JlKCl9aWYoQy5sZW5ndGg+MCl7bGV0IGk9W10sdT1bXTtmb3IobGV0IGUgb2YgQyl7bGV0IHQ9ZS5jYXRlZ29yaWVzPz9bXTtmb3IobGV0IG49MDtuPGUudmFsdWVzLmxlbmd0aDtuKyspe2xldCByPXNsKHQsbiwhMSksYT1lLnZhbHVlc1tuXTtyPT1udWxsfHxhPT1udWxsfHwoaS5wdXNoKHIpLHUucHVzaChhKSl9fWlmKGkubGVuZ3RoJiZ1Lmxlbmd0aCl7bGV0IGQ9dC5zZWNvbmRhcnlDYXRBeGlzLGY9dC5zZWNvbmRhcnlWYWxBeGlzLHA9QmkoaSksbT1CaSh1KSxoPWU9PmU/Lm1pbm9yR3JpZGxpbmVzPT09ITB8fGU/Lm1pbm9yVGlja01hcmshPW51bGwmJmUubWlub3JUaWNrTWFyayE9PWBub25lYCxnPWVhKHtkYXRhTWluOnAubWluLGRhdGFNYXg6cC5tYXgsZXhwbGljaXRNaW46ZD8ubWluLGV4cGxpY2l0TWF4OmQ/Lm1heCxheGlzTGVuUHQ6b3QvcixheGlzT3JpZW50YXRpb246YGhvcml6b250YWxgLG1ham9yVW5pdDpkPy5tYWpvclVuaXQsbWlub3JVbml0OmQ/Lm1pbm9yVW5pdCxuZWVkTWlub3I6aChkKSxsb2dCYXNlOmQ/LmxvZ0Jhc2UscmV2ZXJzZWQ6ZD8ub3JpZW50YXRpb249PT1gbWF4TWluYH0pLF89ZWEoe2RhdGFNaW46bS5taW4sZGF0YU1heDptLm1heCxleHBsaWNpdE1pbjpmPy5taW4sZXhwbGljaXRNYXg6Zj8ubWF4LGF4aXNMZW5QdDpzdC9yLGF4aXNPcmllbnRhdGlvbjpgdmVydGljYWxgLG1ham9yVW5pdDpmPy5tYWpvclVuaXQsbWlub3JVbml0OmY/Lm1pbm9yVW5pdCxuZWVkTWlub3I6aChmKSxsb2dCYXNlOmY/LmxvZ0Jhc2UscmV2ZXJzZWQ6Zj8ub3JpZW50YXRpb249PT1gbWF4TWluYH0pO21sKGUsdCxDLm1hcCgoZSx0KT0+KHtzZXJpZXM6ZSxpbmRleDp3LmdldChlKT8/dH0pKSwhMSxlPT5pdCtnLmZyYWN0aW9uKGUpKm90LGU9PmF0K3N0LV8uZnJhY3Rpb24oZSkqc3QsbixpdCxhdCxvdCxzdCxyLCExLHQuc2NhdHRlclN0eWxlPz9gbWFya2VyYCx7eDpvLHk6cyx3OmMsaDpsfSxfLm1heCx2b2lkIDAsYSl9fUp0KCksTiYmIXUmJnNjKGUsdCxOLFAsbixpdCxhdCxvdCxyKSxBJiZHZSYmYWMoZSx0LEEsR2UsdnQsbixpdCxhdCxvdCxzdCxyLFplLFFlLEN0LHQuZGF0ZTE5MDQsVWUpLGZ0JiZlcyhlLHQsZnQsaXQsYXQrc3QrKHU/dC52YWxBeGlzSGlkZGVuP2wqLjAyOlZ0KEopOjApLG90LG8rdmUscik7bGV0IGNuPWFlP2guZmxhdE1hcCgoZSxuKT0+W1VsKHQsaWVbbl0saC5sZW5ndGgsZS5jaGFydGV4U3R5bGUsZS5jb2xvciksLi4ucXMoW2VdKS5tYXAoKCk9PnZvaWQgMCldKTpbXTt2cyhlLHNlLGdlLG8scyxjLGwsaXQsYXQsb3Qsc3QscSsyLHIsY24pLEpvKGUsdCxvLHMsYyxsLGl0LGF0LG90LHN0LHZlLFosUSxiZSx1KX1mdW5jdGlvbiB5YyhlLHQsbil7cmV0dXJuIHQuaGlkZGVuPT09ITB8fHQucGFpbnRBdXRob3JlZD09PSEwJiZ0LmNvbG9yPT1udWxsPyExOihlLnN0cm9rZVN0eWxlPWAjJHt0LmNvbG9yPz9gMDAwMDAwYH1gLGUubGluZVdpZHRoPXQud2lkdGhFbXU9PW51bGw/TWF0aC5tYXgoMSwuNzUqbik6aWEodC53aWR0aEVtdSxuKSxlLnNldExpbmVEYXNoKERsKHQuZGFzaD8/dm9pZCAwLGUubGluZVdpZHRoKSksZS5saW5lQ2FwPXQuY2FwPT09YHJuZGA/YHJvdW5kYDp0LmNhcD09PWBzcWA/YHNxdWFyZWA6YGJ1dHRgLGUubGluZUpvaW49dC5qb2luPT09YHJvdW5kYHx8dC5qb2luPT09YGJldmVsYD90LmpvaW46YG1pdGVyYCwhMCl9ZnVuY3Rpb24gYmMoZSx0LG4pe2xldCByPWUuY2hhcnRTdHlsZVJvbGVzPy5bbl0saT1yIT1udWxsJiZyLmxpbmVOb1N0eWxlIT09ITAsYT10LnBhaW50QXV0aG9yZWQ9PT0hMHx8dC5jb2xvciE9bnVsbHx8dC5oaWRkZW49PT0hMCxvPWkmJihyLmxpbmVQYWludEF1dGhvcmVkPT09ITB8fHIubGluZUhpZGRlbj09PSEwfHxyLmxpbmVDb2xvcnM/LnNvbWUoZT0+ZSE9bnVsbCk9PT0hMHx8ci5saW5lUGFpbnRzPy5zb21lKGU9PmUhPW51bGwpPT09ITApO3JldHVybntjb2xvcjp0LmNvbG9yPz8oIWEmJmk/UGwoZSxyLGBsaW5lYCwwLDEpOm51bGwpLHBhaW50QXV0aG9yZWQ6YT90LnBhaW50QXV0aG9yZWQ6bz8hMDp2b2lkIDAsd2lkdGhFbXU6dC53aWR0aEVtdT8/KGk/ci5saW5lV2lkdGhFbXU6bnVsbCksZGFzaDp0LmRhc2g/PyhpP3IubGluZURhc2g6bnVsbCksY2FwOnQuY2FwPz8oaT9yLmxpbmVDYXA6bnVsbCksam9pbjp0LmpvaW4/PyhpP3IubGluZUpvaW46bnVsbCksaGlkZGVuOnQuaGlkZGVuPz8oIWEmJmkmJnIubGluZUhpZGRlbj09PSEwPyEwOm51bGwpfX1mdW5jdGlvbiB4YyhlLHQsbil7bGV0IHI9ZS5jaGFydFN0eWxlUm9sZXM/LltuXSxpPXIhPW51bGwmJnIuZmlsbE5vU3R5bGUhPT0hMCxhPXIhPW51bGwmJnIubGluZU5vU3R5bGUhPT0hMCxvPXI/LmZpbGxQYWludHM/LlswXSxzPXQuZmlsbFBhaW50QXV0aG9yZWQ9PT0hMHx8dC5maWxsQ29sb3IhPW51bGx8fHQuZmlsbCE9bnVsbHx8dC5maWxsSGlkZGVuPT09ITAsYz10LmxpbmVQYWludEF1dGhvcmVkPT09ITB8fHQubGluZUNvbG9yIT1udWxsfHx0LmxpbmVIaWRkZW49PT0hMCxsPWkmJihyLmZpbGxQYWludEF1dGhvcmVkPT09ITB8fHIuZmlsbEhpZGRlbj09PSEwfHxvIT1udWxsfHxyLmZpbGxDb2xvcnM/LnNvbWUoZT0+ZSE9bnVsbCk9PT0hMCksdT1hJiYoci5saW5lUGFpbnRBdXRob3JlZD09PSEwfHxyLmxpbmVIaWRkZW49PT0hMHx8ci5saW5lQ29sb3JzPy5zb21lKGU9PmUhPW51bGwpPT09ITB8fHIubGluZVBhaW50cz8uc29tZShlPT5lIT1udWxsKT09PSEwKTtyZXR1cm57ZmlsbENvbG9yOnQuZmlsbENvbG9yPz8oIXMmJmk/UGwoZSxyLGBmaWxsYCwwLDEpOm51bGwpLGZpbGw6dC5maWxsPz8oIXMmJmkmJm8hPW51bGwmJm8uZmlsbFR5cGUhPT1gaW1hZ2VgJiZvLmZpbGxUeXBlIT09YG5vbmVgP286bnVsbCksZmlsbFBhaW50QXV0aG9yZWQ6cz90LmZpbGxQYWludEF1dGhvcmVkOmw/ITA6dm9pZCAwLGZpbGxIaWRkZW46dC5maWxsSGlkZGVuPz8oIXMmJmkmJnIuZmlsbEhpZGRlbj09PSEwPyEwOm51bGwpLGxpbmVDb2xvcjp0LmxpbmVDb2xvcj8/KCFjJiZhP1BsKGUscixgbGluZWAsMCwxKTpudWxsKSxsaW5lUGFpbnRBdXRob3JlZDpjP3QubGluZVBhaW50QXV0aG9yZWQ6dT8hMDp2b2lkIDAsbGluZVdpZHRoRW11OnQubGluZVdpZHRoRW11Pz8oYT9yLmxpbmVXaWR0aEVtdTpudWxsKSxsaW5lRGFzaDp0LmxpbmVEYXNoPz8oYT9yLmxpbmVEYXNoOm51bGwpLGxpbmVDYXA6dC5saW5lQ2FwPz8oYT9yLmxpbmVDYXA6bnVsbCksbGluZUpvaW46dC5saW5lSm9pbj8/KGE/ci5saW5lSm9pbjpudWxsKSxsaW5lSGlkZGVuOnQubGluZUhpZGRlbj8/KCFjJiZhJiZyLmxpbmVIaWRkZW49PT0hMD8hMDpudWxsKX19ZnVuY3Rpb24gU2MoZSx0LG4scixpLGEsbyl7Zm9yKGxldCBzPTA7czxuO3MrKyl7bGV0IG49MS8wLGM9LTEvMCxsPSExO2ZvcihsZXQgZSBvZiB0KXtsZXQgdD1vKGUscyk7aWYodD09bnVsbHx8IU51bWJlci5pc0Zpbml0ZSh0KSljb250aW51ZTtsZXQgcj1pKGUpKHQpLHU9YShlKTshTnVtYmVyLmlzRmluaXRlKHIpfHwhTnVtYmVyLmlzRmluaXRlKHUpfHwobj1NYXRoLm1pbihuLHIsdSksYz1NYXRoLm1heChjLHIsdSksbD0hMCl9IWx8fE1hdGguYWJzKGMtbik8LjAxfHwoZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhyKHMpLG4pLGUubGluZVRvKHIocyksYyksZS5zdHJva2UoKSl9fWZ1bmN0aW9uIENjKGUsdCl7bGV0IG49YmMoZSx7Y29sb3I6dC5jb2xvcix3aWR0aEVtdTp0LmxpbmVXaWR0aEVtdSxkYXNoOnQuZGFzaCxoaWRkZW46dC5oaWRkZW59LGBlcnJvckJhcmApO3JldHVybnsuLi50LGNvbG9yOm4uY29sb3I/P3ZvaWQgMCxsaW5lV2lkdGhFbXU6bi53aWR0aEVtdT8/dm9pZCAwLGRhc2g6bi5kYXNoPz92b2lkIDAsaGlkZGVuOm4uaGlkZGVuPz92b2lkIDB9fWZ1bmN0aW9uIHdjKGUsdCl7cmV0dXJuIGJjKGUse2NvbG9yOnQubGVhZGVyTGluZUNvbG9yLHdpZHRoRW11OnQubGVhZGVyTGluZVdpZHRoRW11LGRhc2g6dC5sZWFkZXJMaW5lRGFzaCxoaWRkZW46dC5sZWFkZXJMaW5lSGlkZGVufSxgbGVhZGVyTGluZWApfWZ1bmN0aW9uIFRjKGUsdCl7bGV0IG49YmMoZSx7Y29sb3I6dC5saW5lQ29sb3Isd2lkdGhFbXU6dC5saW5lV2lkdGhFbXUsZGFzaDp0LmxpbmVEYXNoLGhpZGRlbjp0LmxpbmVIaWRkZW59LGB0cmVuZGxpbmVgKTtyZXR1cm57Li4udCxsaW5lQ29sb3I6bi5jb2xvcj8/dm9pZCAwLGxpbmVXaWR0aEVtdTpuLndpZHRoRW11Pz92b2lkIDAsbGluZURhc2g6bi5kYXNoPz92b2lkIDAsbGluZUhpZGRlbjpuLmhpZGRlbj8/dm9pZCAwfX1mdW5jdGlvbiBFYyhlLHQpe2xldCBuPWJjKGUse2NvbG9yOnQubGluZUNvbG9yLHdpZHRoRW11OnQubGluZVdpZHRoRW11LGRhc2g6dC5saW5lRGFzaCxoaWRkZW46dC5saW5lSGlkZGVufSxgZGF0YVRhYmxlYCk7cmV0dXJuey4uLnQsbGluZUNvbG9yOm4uY29sb3I/P3ZvaWQgMCxsaW5lV2lkdGhFbXU6bi53aWR0aEVtdT8/dm9pZCAwLGxpbmVEYXNoOm4uZGFzaD8/dm9pZCAwLGxpbmVIaWRkZW46bi5oaWRkZW4/P3ZvaWQgMH19ZnVuY3Rpb24gRGMoZSx0LG4scixpLGEpe2lmKG4hPT0hMHx8IWUuY2hhcnRTdHlsZVJvbGVzPy5bdF0pcmV0dXJue3Zpc2libGU6bixjb2xvcjpyLHdpZHRoRW11OmksZGFzaDphfTtsZXQgbz1iYyhlLHtjb2xvcjpyLHdpZHRoRW11OmksZGFzaDphfSx0KTtyZXR1cm57dmlzaWJsZTpvLmhpZGRlbiE9PSEwLGNvbG9yOm8uY29sb3Isd2lkdGhFbXU6by53aWR0aEVtdSxkYXNoOm8uZGFzaH19ZnVuY3Rpb24gT2MoZSx0KXtpZighdHx8IWUuY2hhcnRTdHlsZVJvbGVzPy5ncmlkbGluZU1ham9yJiYhZS5jaGFydFN0eWxlUm9sZXM/LmdyaWRsaW5lTWlub3IpcmV0dXJuIHQ7bGV0IG49RGMoZSxgZ3JpZGxpbmVNYWpvcmAsdC5tYWpvckdyaWRsaW5lcyx0Lm1ham9yR3JpZGxpbmVDb2xvcix0Lm1ham9yR3JpZGxpbmVXaWR0aEVtdSx0Lm1ham9yR3JpZGxpbmVEYXNoKSxyPURjKGUsYGdyaWRsaW5lTWlub3JgLHQubWlub3JHcmlkbGluZXMsdC5taW5vckdyaWRsaW5lQ29sb3IsdC5taW5vckdyaWRsaW5lV2lkdGhFbXUsdC5taW5vckdyaWRsaW5lRGFzaCk7cmV0dXJuIG4udmlzaWJsZSE9PXQubWFqb3JHcmlkbGluZXN8fG4uY29sb3IhPT10Lm1ham9yR3JpZGxpbmVDb2xvcnx8bi53aWR0aEVtdSE9PXQubWFqb3JHcmlkbGluZVdpZHRoRW11fHxuLmRhc2ghPT10Lm1ham9yR3JpZGxpbmVEYXNofHxyLnZpc2libGUhPT10Lm1pbm9yR3JpZGxpbmVzfHxyLmNvbG9yIT09dC5taW5vckdyaWRsaW5lQ29sb3J8fHIud2lkdGhFbXUhPT10Lm1pbm9yR3JpZGxpbmVXaWR0aEVtdXx8ci5kYXNoIT09dC5taW5vckdyaWRsaW5lRGFzaD97Li4udCxtYWpvckdyaWRsaW5lczpuLnZpc2libGU/P3ZvaWQgMCxtYWpvckdyaWRsaW5lQ29sb3I6bi5jb2xvcixtYWpvckdyaWRsaW5lV2lkdGhFbXU6bi53aWR0aEVtdSxtYWpvckdyaWRsaW5lRGFzaDpuLmRhc2gsbWlub3JHcmlkbGluZXM6ci52aXNpYmxlPz92b2lkIDAsbWlub3JHcmlkbGluZUNvbG9yOnIuY29sb3IsbWlub3JHcmlkbGluZVdpZHRoRW11OnIud2lkdGhFbXUsbWlub3JHcmlkbGluZURhc2g6ci5kYXNofTp0fWZ1bmN0aW9uIGtjKGUsdCxuLHIsaSxhKXtyZXR1cm4gYmMoZSx7Y29sb3I6bix3aWR0aEVtdTpyLGRhc2g6aSxoaWRkZW46YT8hMDp2b2lkIDB9LHQpfWZ1bmN0aW9uIEFjKGUsdCxuKXtsZXQgcj1lLmNoYXJ0U3R5bGVSb2xlcz8uW25dO2lmKCF0fHwhcilyZXR1cm4gdDtsZXQgaT1rYyhlLG4sdC5saW5lQ29sb3IsdC5saW5lV2lkdGhFbXUsdC5saW5lRGFzaCx0LmxpbmVIaWRkZW4pLGE9aS5oaWRkZW49PT0hMCxvPXQuZm9udFNpemVIcHQ/P3IuZm9udFNpemVIcHQscz10LmZvbnRCb2xkPz9yLmZvbnRCb2xkLGM9dC5mb250SXRhbGljPz9yLmZvbnRJdGFsaWMsbD10LmZvbnRDb2xvcj8/ci5mb250Q29sb3IsdT10LmZvbnRGYWNlPz9yLmZvbnRGYWNlO3JldHVybiBpLmNvbG9yPT09dC5saW5lQ29sb3ImJmkud2lkdGhFbXU9PT10LmxpbmVXaWR0aEVtdSYmaS5kYXNoPT09dC5saW5lRGFzaCYmYT09PXQubGluZUhpZGRlbiYmbz09PXQuZm9udFNpemVIcHQmJnM9PT10LmZvbnRCb2xkJiZjPT09dC5mb250SXRhbGljJiZsPT09dC5mb250Q29sb3ImJnU9PT10LmZvbnRGYWNlP3Q6ey4uLnQsbGluZUNvbG9yOmkuY29sb3IsbGluZVdpZHRoRW11Omkud2lkdGhFbXUsbGluZURhc2g6aS5kYXNoLGxpbmVIaWRkZW46YSxmb250U2l6ZUhwdDpvLGZvbnRCb2xkOnMsZm9udEl0YWxpYzpjLGZvbnRDb2xvcjpsLGZvbnRGYWNlOnV9fWZ1bmN0aW9uIGpjKGUpe2xldCB0PWUudGhyZWVEPy5zZXJpZXNBeGlzLG49ZS5jaGFydFN0eWxlUm9sZXM/LnNlcmllc0F4aXM7aWYoIXR8fCFuKXJldHVybiBlO2xldCByPWJjKGUse2NvbG9yOnQubGluZUNvbG9yLHdpZHRoRW11OnQubGluZVdpZHRoRW11LGRhc2g6dC5saW5lRGFzaCxoaWRkZW46dC5saW5lSGlkZGVuPyEwOnZvaWQgMH0sYHNlcmllc0F4aXNgKSxpPXIuaGlkZGVuPT09ITAsYT10LmZvbnRTaXplSHB0Pz9uLmZvbnRTaXplSHB0LG89dC5mb250Qm9sZD8/bi5mb250Qm9sZCxzPXQuZm9udEl0YWxpYz8/bi5mb250SXRhbGljLGM9dC5mb250Q29sb3I/P24uZm9udENvbG9yLGw9dC5mb250RmFjZT8/bi5mb250RmFjZTtyZXR1cm4gci5jb2xvcj09PXQubGluZUNvbG9yJiZyLndpZHRoRW11PT09dC5saW5lV2lkdGhFbXUmJnIuZGFzaD09PXQubGluZURhc2gmJmk9PT10LmxpbmVIaWRkZW4mJmE9PT10LmZvbnRTaXplSHB0JiZvPT09dC5mb250Qm9sZCYmcz09PXQuZm9udEl0YWxpYyYmYz09PXQuZm9udENvbG9yJiZsPT09dC5mb250RmFjZT9lOnsuLi5lLHRocmVlRDp7Li4uZS50aHJlZUQsc2VyaWVzQXhpczp7Li4udCxsaW5lQ29sb3I6ci5jb2xvcixsaW5lV2lkdGhFbXU6ci53aWR0aEVtdSxsaW5lRGFzaDpyLmRhc2gsbGluZUhpZGRlbjppLGZvbnRTaXplSHB0OmEsZm9udEJvbGQ6byxmb250SXRhbGljOnMsZm9udENvbG9yOmMsZm9udEZhY2U6bH19fX1mdW5jdGlvbiBNYyhlLHQpe2lmKGUuY2hhcnRUeXBlPT09YGJ1YmJsZWApcmV0dXJuITE7bGV0IG49dC5zZXJpZXNUeXBlPz9lLmNoYXJ0VHlwZTtyZXR1cm4gbj09PWBsaW5lYHx8bj09PWBzdGFja2VkTGluZWB8fG49PT1gc3RhY2tlZExpbmVQY3RgfHxuPT09YGFyZWFgfHxuPT09YHN0YWNrZWRBcmVhYHx8bj09PWBzdGFja2VkQXJlYVBjdGB8fG49PT1gc2NhdHRlcmB8fG49PT1gcmFkYXJgfHxuPT09YHN0b2NrYH1mdW5jdGlvbiBOYyhlLHQsbixyKXtsZXQgaT1lLmNoYXJ0U3R5bGVSb2xlcz8uZGF0YVBvaW50TWFya2VyO2lmKCFNYyhlLHQpfHwodC5zaG93TWFya2VyPT09ITF8fHQubWFya2VyU3ltYm9sPT09YG5vbmVgKSYmIWtuKHQpKXJldHVybiB0O2xldCBhPWkhPW51bGwmJmkuZmlsbE5vU3R5bGUhPT0hMCxvPWkhPW51bGwmJmkubGluZU5vU3R5bGUhPT0hMCxzPXQubWFya2VyRmlsbFBhaW50QXV0aG9yZWQ9PT0hMHx8dC5tYXJrZXJGaWxsIT1udWxsfHx0Lm1hcmtlckZpbGxQYWludCE9PXZvaWQgMCxjPXQubWFya2VyRmlsbD8/KCFzJiZhJiZpPy5maWxsSGlkZGVuPT09ITA/YDAwMDAwMDAwYDohcyYmYSYmaT9QbChlLGksYGZpbGxgLG4scik6bnVsbCksbD0hcyYmYSYmaT9WbChlLGksbixyKTp2b2lkIDAsdT10Lm1hcmtlckZpbGxQYWludD09PXZvaWQgMD9sPy5maWxsVHlwZT09PWBncmFkaWVudGB8fGw/LmZpbGxUeXBlPT09YHBhdHRlcm5gfHxsPy5maWxsVHlwZT09PWBpbWFnZWA/bDp2b2lkIDA6dC5tYXJrZXJGaWxsUGFpbnQsZD1zP3QubWFya2VyRmlsbFBhaW50QXV0aG9yZWQ6YSYmaT8uZmlsbFBhaW50QXV0aG9yZWQ9PT0hMD8hMDp2b2lkIDAsZj10Lm1hcmtlckxpbmU/PyhvJiZpPy5saW5lSGlkZGVuPT09ITA/YDAwMDAwMDAwYDpvJiZpP1BsKGUsaSxgbGluZWAsbixyKTpudWxsKSxwPXQubWFya2VyTGluZVdpZHRoRW11Pz8obz9pPy5saW5lV2lkdGhFbXU6bnVsbCksbT10Lm1hcmtlclNpemU/P2UuY2hhcnRTdHlsZU1hcmtlclNpemVQdCxoPXQubWFya2VyU3ltYm9sPz9lLmNoYXJ0U3R5bGVNYXJrZXJTeW1ib2w7cmV0dXJuIGM9PT10Lm1hcmtlckZpbGwmJnU9PT10Lm1hcmtlckZpbGxQYWludCYmZD09PXQubWFya2VyRmlsbFBhaW50QXV0aG9yZWQmJmY9PT10Lm1hcmtlckxpbmUmJnA9PT10Lm1hcmtlckxpbmVXaWR0aEVtdSYmbT09PXQubWFya2VyU2l6ZSYmaD09PXQubWFya2VyU3ltYm9sP3Q6ey4uLnQsbWFya2VyRmlsbDpjLG1hcmtlckZpbGxQYWludDp1LG1hcmtlckZpbGxQYWludEF1dGhvcmVkOmQsbWFya2VyTGluZTpmLG1hcmtlckxpbmVXaWR0aEVtdTpwLG1hcmtlclNpemU6bSxtYXJrZXJTeW1ib2w6aH19ZnVuY3Rpb24gUGMoZSx0LG4pe2lmKCFufHxuLmxpbmVOb1N0eWxlPT09ITApcmV0dXJuIHQ7bGV0e2NvbG9yOnIsZmlsbDppLGhpZGRlbjphfT10O3QucGFpbnRBdXRob3JlZD09PSEwfHxpIT1udWxsfHxyIT1udWxsfHxhPT09ITB8fChuLmxpbmVIaWRkZW49PT0hMD9hPSEwOihpPXpsKG4sMCkscj1pPT1udWxsP1BsKGUsbixgbGluZWAsMCwxKTpudWxsKSk7bGV0IG89dC5kYXNoLHM9dC5jdXN0b21EYXNoLGM9dC5kYXNoQXV0aG9yZWQ7cmV0dXJuIGMhPT0hMCYmbz09bnVsbCYmcz09bnVsbCYmKG89bi5saW5lRGFzaCxzPW4ubGluZUN1c3RvbURhc2gsYz1uLmxpbmVEYXNoQXV0aG9yZWQpLHtjb2xvcjpyLGZpbGw6aSxoaWRkZW46YSxwYWludEF1dGhvcmVkOnQucGFpbnRBdXRob3JlZCx3aWR0aEVtdTp0LndpZHRoRW11Pz9uLmxpbmVXaWR0aEVtdSxkYXNoOm8sZGFzaEF1dGhvcmVkOmMsY3VzdG9tRGFzaDpzLGNhcDp0LmNhcD8/bi5saW5lQ2FwLGpvaW46dC5qb2luPz9uLmxpbmVKb2luLGNvbXBvdW5kOnQuY29tcG91bmQ/P24ubGluZUNvbXBvdW5kfX1mdW5jdGlvbiBGYyhlLHQsbixyKXtpZighbnx8IXQmJiFyKXJldHVybiB0Pz92b2lkIDA7bGV0IGk9dD8/e30sYT1pLmZpbGwsbz1pLmZpbGxQYWludCxzPWkuZmlsbEhpZGRlbjshKGkuZmlsbFBhaW50QXV0aG9yZWQ9PT0hMHx8YSE9bnVsbHx8byE9bnVsbHx8cz09PSEwKSYmbi5maWxsTm9TdHlsZSE9PSEwJiYocz1uLmZpbGxIaWRkZW4sbz1uLmZpbGxIaWRkZW49PT0hMD92b2lkIDA6UmwobiwwKSxhPW89PW51bGwmJm4uZmlsbEhpZGRlbiE9PSEwP1BsKGUsbixgZmlsbGAsMCwxKT8/dm9pZCAwOnZvaWQgMCk7bGV0IGM9UGMoZSx7Y29sb3I6aS5ib3JkZXJDb2xvcixmaWxsOmkuYm9yZGVyRmlsbCx3aWR0aEVtdTppLmJvcmRlcldpZHRoRW11LGRhc2g6aS5ib3JkZXJEYXNoLGRhc2hBdXRob3JlZDppLmJvcmRlckRhc2hBdXRob3JlZCxjdXN0b21EYXNoOmkuYm9yZGVyQ3VzdG9tRGFzaCxjYXA6aS5ib3JkZXJDYXAsam9pbjppLmJvcmRlckpvaW4sY29tcG91bmQ6aS5ib3JkZXJDb21wb3VuZCxoaWRkZW46aS5ib3JkZXJIaWRkZW4scGFpbnRBdXRob3JlZDppLmJvcmRlclBhaW50QXV0aG9yZWR9LG4pO3JldHVybnsuLi5pLGZpbGw6YSxmaWxsUGFpbnQ6byxmaWxsSGlkZGVuOnMsYm9yZGVyQ29sb3I6Yy5jb2xvcj8/dm9pZCAwLGJvcmRlckZpbGw6Yy5maWxsPz92b2lkIDAsYm9yZGVyV2lkdGhFbXU6Yy53aWR0aEVtdT8/dm9pZCAwLGJvcmRlckRhc2g6Yy5kYXNoPz92b2lkIDAsYm9yZGVyRGFzaEF1dGhvcmVkOmMuZGFzaEF1dGhvcmVkPz92b2lkIDAsYm9yZGVyQ3VzdG9tRGFzaDpjLmN1c3RvbURhc2g/P3ZvaWQgMCxib3JkZXJDYXA6Yy5jYXA/P3ZvaWQgMCxib3JkZXJKb2luOmMuam9pbj8/dm9pZCAwLGJvcmRlckNvbXBvdW5kOmMuY29tcG91bmQ/P3ZvaWQgMCxib3JkZXJIaWRkZW46Yy5oaWRkZW4/P3ZvaWQgMH19ZnVuY3Rpb24gSWMoZSx0KXtsZXQgbj10LmxhYmVsQm94P2UuY2hhcnRTdHlsZVJvbGVzPy5kYXRhTGFiZWxDYWxsb3V0Pz9lLmNoYXJ0U3R5bGVSb2xlcz8uZGF0YUxhYmVsOmUuY2hhcnRTdHlsZVJvbGVzPy5kYXRhTGFiZWw7aWYoIW4pcmV0dXJuIHQ7bGV0IHI9RmMoZSx0LmxhYmVsQm94LG4sITEpLGk9dC5mb250UGFpbnRBdXRob3JlZD09PSEwfHx0LmZvbnRDb2xvciE9bnVsbHx8dC5mb250SGlkZGVuPT09ITA7cmV0dXJuey4uLnQsZm9udFNpemVIcHQ6dC5mb250U2l6ZUhwdD8/bi5mb250U2l6ZUhwdD8/dm9pZCAwLGZvbnRCb2xkOnQuZm9udEJvbGQ/P24uZm9udEJvbGQ/P3ZvaWQgMCxmb250SXRhbGljOnQuZm9udEl0YWxpYz8/bi5mb250SXRhbGljPz92b2lkIDAsZm9udENvbG9yOmk/dC5mb250Q29sb3I6bi5mb250Q29sb3I/P3ZvaWQgMCxmb250UGFpbnRBdXRob3JlZDppfHxuLmZvbnRQYWludEF1dGhvcmVkPT09ITB8fHZvaWQgMCxmb250SGlkZGVuOmk/dC5mb250SGlkZGVuOm4uZm9udEhpZGRlbj8/dm9pZCAwLGZvbnRGYWNlOnQuZm9udEZhY2U/P24uZm9udEZhY2U/P3ZvaWQgMCxmb250TGFuZ3VhZ2U6dC5mb250TGFuZ3VhZ2U/P24uZm9udExhbmd1YWdlPz92b2lkIDAsZm9udEJhc2VsaW5lOnQuZm9udEJhc2VsaW5lPz9uLmZvbnRCYXNlbGluZT8/dm9pZCAwLHRleHRSb3RhdGlvbjp0LnRleHRSb3RhdGlvbj8/bi50ZXh0Um90YXRpb24/P3ZvaWQgMCx0ZXh0V3JhcDp0LnRleHRXcmFwPz9uLnRleHRXcmFwPz92b2lkIDAsdGV4dFZlcnRpY2FsQW5jaG9yOnQudGV4dFZlcnRpY2FsQW5jaG9yPz9uLnRleHRWZXJ0aWNhbEFuY2hvcj8/dm9pZCAwLHRleHRWZXJ0aWNhbE1vZGU6dC50ZXh0VmVydGljYWxNb2RlPz9uLnRleHRWZXJ0aWNhbE1vZGU/P3ZvaWQgMCx0ZXh0TEluc0VtdTp0LnRleHRMSW5zRW11Pz9uLnRleHRMSW5zRW11Pz92b2lkIDAsdGV4dFRJbnNFbXU6dC50ZXh0VEluc0VtdT8/bi50ZXh0VEluc0VtdT8/dm9pZCAwLHRleHRSSW5zRW11OnQudGV4dFJJbnNFbXU/P24udGV4dFJJbnNFbXU/P3ZvaWQgMCx0ZXh0Qkluc0VtdTp0LnRleHRCSW5zRW11Pz9uLnRleHRCSW5zRW11Pz92b2lkIDAsdGV4dEJvZHlBdXRob3JlZDp0LnRleHRCb2R5QXV0aG9yZWQ9PT0hMHx8bi50ZXh0Qm9keUF1dGhvcmVkPT09ITB8fHZvaWQgMCxsYWJlbEJveDpyfX1mdW5jdGlvbiBMYyhlLHQpe2xldCBuPWUuY2hhcnRTdHlsZVJvbGVzPy50cmVuZGxpbmVMYWJlbDtpZighbilyZXR1cm4gdDtsZXQgcj10LmxhYmVsRm9udFBhaW50QXV0aG9yZWQ9PT0hMHx8dC5sYWJlbEZvbnRDb2xvciE9bnVsbHx8dC5sYWJlbEZvbnRIaWRkZW49PT0hMDtyZXR1cm57Li4udCxsYWJlbEJveDpGYyhlLHQubGFiZWxCb3gsbiwhMCksbGFiZWxGb250U2l6ZUhwdDp0LmxhYmVsRm9udFNpemVIcHQ/P24uZm9udFNpemVIcHQ/P3ZvaWQgMCxsYWJlbEZvbnRCb2xkOnQubGFiZWxGb250Qm9sZD8/bi5mb250Qm9sZD8/dm9pZCAwLGxhYmVsRm9udEl0YWxpYzp0LmxhYmVsRm9udEl0YWxpYz8/bi5mb250SXRhbGljPz92b2lkIDAsbGFiZWxGb250Q29sb3I6cj90LmxhYmVsRm9udENvbG9yOm4uZm9udENvbG9yPz92b2lkIDAsbGFiZWxGb250UGFpbnRBdXRob3JlZDpyfHxuLmZvbnRQYWludEF1dGhvcmVkPT09ITB8fHZvaWQgMCxsYWJlbEZvbnRIaWRkZW46cj90LmxhYmVsRm9udEhpZGRlbjpuLmZvbnRIaWRkZW4/P3ZvaWQgMCxsYWJlbEZvbnRGYWNlOnQubGFiZWxGb250RmFjZT8/bi5mb250RmFjZT8/dm9pZCAwLGxhYmVsRm9udExhbmd1YWdlOnQubGFiZWxGb250TGFuZ3VhZ2U/P24uZm9udExhbmd1YWdlPz92b2lkIDAsbGFiZWxGb250QmFzZWxpbmU6dC5sYWJlbEZvbnRCYXNlbGluZT8/bi5mb250QmFzZWxpbmU/P3ZvaWQgMCxsYWJlbFRleHRSb3RhdGlvbjp0LmxhYmVsVGV4dFJvdGF0aW9uPz9uLnRleHRSb3RhdGlvbj8/dm9pZCAwLGxhYmVsVGV4dFdyYXA6dC5sYWJlbFRleHRXcmFwPz9uLnRleHRXcmFwPz92b2lkIDAsbGFiZWxUZXh0VmVydGljYWxBbmNob3I6dC5sYWJlbFRleHRWZXJ0aWNhbEFuY2hvcj8/bi50ZXh0VmVydGljYWxBbmNob3I/P3ZvaWQgMCxsYWJlbFRleHRWZXJ0aWNhbE1vZGU6dC5sYWJlbFRleHRWZXJ0aWNhbE1vZGU/P24udGV4dFZlcnRpY2FsTW9kZT8/dm9pZCAwLGxhYmVsVGV4dExJbnNFbXU6dC5sYWJlbFRleHRMSW5zRW11Pz9uLnRleHRMSW5zRW11Pz92b2lkIDAsbGFiZWxUZXh0VEluc0VtdTp0LmxhYmVsVGV4dFRJbnNFbXU/P24udGV4dFRJbnNFbXU/P3ZvaWQgMCxsYWJlbFRleHRSSW5zRW11OnQubGFiZWxUZXh0Ukluc0VtdT8/bi50ZXh0Ukluc0VtdT8/dm9pZCAwLGxhYmVsVGV4dEJJbnNFbXU6dC5sYWJlbFRleHRCSW5zRW11Pz9uLnRleHRCSW5zRW11Pz92b2lkIDAsbGFiZWxUZXh0Qm9keUF1dGhvcmVkOnQubGFiZWxUZXh0Qm9keUF1dGhvcmVkPT09ITB8fG4udGV4dEJvZHlBdXRob3JlZD09PSEwfHx2b2lkIDB9fWZ1bmN0aW9uIFJjKGUsdCxuKXtsZXQgcj10LmxhYmVsQm94IT1udWxsfHxuPy5sYWJlbEJveCE9bnVsbD9lLmNoYXJ0U3R5bGVSb2xlcz8uZGF0YUxhYmVsQ2FsbG91dD8/ZS5jaGFydFN0eWxlUm9sZXM/LmRhdGFMYWJlbDplLmNoYXJ0U3R5bGVSb2xlcz8uZGF0YUxhYmVsLGk9cj9GYyhlLG4/LmxhYmVsQm94LHIsITApOm4/LmxhYmVsQm94LGE9dC5mb250UGFpbnRBdXRob3JlZD09PSEwfHx0LmZvbnRDb2xvciE9bnVsbHx8dC5mb250SGlkZGVuPT09ITAsbz1uPy5mb250UGFpbnRBdXRob3JlZD09PSEwfHxuPy5mb250Q29sb3IhPW51bGx8fG4/LmZvbnRIaWRkZW49PT0hMCxzPWE/dDpvP246cjtyZXR1cm57Li4udCxmb250U2l6ZUhwdDp0LmZvbnRTaXplSHB0Pz9uPy5mb250U2l6ZUhwdD8/cj8uZm9udFNpemVIcHQ/P3ZvaWQgMCxmb250Qm9sZDp0LmZvbnRCb2xkPz9uPy5mb250Qm9sZD8/cj8uZm9udEJvbGQ/P3ZvaWQgMCxmb250SXRhbGljOnQuZm9udEl0YWxpYz8/bj8uZm9udEl0YWxpYz8/cj8uZm9udEl0YWxpYz8/dm9pZCAwLGZvbnRDb2xvcjpzPy5mb250Q29sb3I/P3ZvaWQgMCxmb250UGFpbnRBdXRob3JlZDphfHxvfHxyPy5mb250UGFpbnRBdXRob3JlZD09PSEwfHx2b2lkIDAsZm9udEhpZGRlbjpzPy5mb250SGlkZGVuPz92b2lkIDAsZm9udEZhY2U6dC5mb250RmFjZT8/bj8uZm9udEZhY2U/P3I/LmZvbnRGYWNlPz92b2lkIDAsZm9udExhbmd1YWdlOnQuZm9udExhbmd1YWdlPz9uPy5mb250TGFuZ3VhZ2U/P3I/LmZvbnRMYW5ndWFnZT8/dm9pZCAwLGZvbnRCYXNlbGluZTp0LmZvbnRCYXNlbGluZT8/bj8uZm9udEJhc2VsaW5lPz9yPy5mb250QmFzZWxpbmU/P3ZvaWQgMCx0ZXh0Um90YXRpb246dC50ZXh0Um90YXRpb24/P24/LnRleHRSb3RhdGlvbj8/cj8udGV4dFJvdGF0aW9uPz92b2lkIDAsdGV4dFdyYXA6dC50ZXh0V3JhcD8/bj8udGV4dFdyYXA/P3I/LnRleHRXcmFwPz92b2lkIDAsdGV4dFZlcnRpY2FsQW5jaG9yOnQudGV4dFZlcnRpY2FsQW5jaG9yPz9uPy50ZXh0VmVydGljYWxBbmNob3I/P3I/LnRleHRWZXJ0aWNhbEFuY2hvcj8/dm9pZCAwLHRleHRWZXJ0aWNhbE1vZGU6dC50ZXh0VmVydGljYWxNb2RlPz9uPy50ZXh0VmVydGljYWxNb2RlPz9yPy50ZXh0VmVydGljYWxNb2RlPz92b2lkIDAsdGV4dExJbnNFbXU6dC50ZXh0TEluc0VtdT8/bj8udGV4dExJbnNFbXU/P3I/LnRleHRMSW5zRW11Pz92b2lkIDAsdGV4dFRJbnNFbXU6dC50ZXh0VEluc0VtdT8/bj8udGV4dFRJbnNFbXU/P3I/LnRleHRUSW5zRW11Pz92b2lkIDAsdGV4dFJJbnNFbXU6dC50ZXh0Ukluc0VtdT8/bj8udGV4dFJJbnNFbXU/P3I/LnRleHRSSW5zRW11Pz92b2lkIDAsdGV4dEJJbnNFbXU6dC50ZXh0Qkluc0VtdT8/bj8udGV4dEJJbnNFbXU/P3I/LnRleHRCSW5zRW11Pz92b2lkIDAsdGV4dEJvZHlBdXRob3JlZDp0LnRleHRCb2R5QXV0aG9yZWQ9PT0hMHx8bj8udGV4dEJvZHlBdXRob3JlZD09PSEwfHxyPy50ZXh0Qm9keUF1dGhvcmVkPT09ITB8fHZvaWQgMCx0ZXh0QWxpZ246dC50ZXh0QWxpZ24/P24/LnRleHRBbGlnbixsYWJlbEJveDpOaSh0LmxhYmVsQm94LGkpfX1mdW5jdGlvbiB6YyhlKXtsZXQgdD1lLmNoYXJ0U3R5bGVSb2xlcz8ubGVnZW5kO2lmKCF0KXJldHVybiBlO2xldCBuPWUubGVnZW5kRmlsbCxyPWUubGVnZW5kRmlsbENvbG9yLGk9ZS5sZWdlbmRGaWxsSGlkZGVuOyEoZS5sZWdlbmRGaWxsUGFpbnRBdXRob3JlZD09PSEwfHxuIT1udWxsfHxyIT1udWxsfHxpPT09ITApJiZ0LmZpbGxOb1N0eWxlIT09ITAmJih0LmZpbGxIaWRkZW49PT0hMD9pPSEwOihuPVJsKHQsMCkscj1uPT1udWxsP1BsKGUsdCxgZmlsbGAsMCwxKTpudWxsKSk7bGV0IGE9UGMoZSx7Y29sb3I6ZS5sZWdlbmRMaW5lQ29sb3IsZmlsbDplLmxlZ2VuZExpbmVGaWxsLHdpZHRoRW11OmUubGVnZW5kTGluZVdpZHRoRW11LGRhc2g6ZS5sZWdlbmRMaW5lRGFzaCxkYXNoQXV0aG9yZWQ6ZS5sZWdlbmRMaW5lRGFzaEF1dGhvcmVkLGN1c3RvbURhc2g6ZS5sZWdlbmRMaW5lQ3VzdG9tRGFzaCxjYXA6ZS5sZWdlbmRMaW5lQ2FwLGpvaW46ZS5sZWdlbmRMaW5lSm9pbixjb21wb3VuZDplLmxlZ2VuZExpbmVDb21wb3VuZCxoaWRkZW46ZS5sZWdlbmRMaW5lSGlkZGVuLHBhaW50QXV0aG9yZWQ6ZS5sZWdlbmRMaW5lUGFpbnRBdXRob3JlZH0sdCk7cmV0dXJuIG49PT1lLmxlZ2VuZEZpbGwmJnI9PT1lLmxlZ2VuZEZpbGxDb2xvciYmaT09PWUubGVnZW5kRmlsbEhpZGRlbiYmYS5jb2xvcj09PWUubGVnZW5kTGluZUNvbG9yJiZhLmZpbGw9PT1lLmxlZ2VuZExpbmVGaWxsJiZhLndpZHRoRW11PT09ZS5sZWdlbmRMaW5lV2lkdGhFbXUmJmEuZGFzaD09PWUubGVnZW5kTGluZURhc2gmJmEuZGFzaEF1dGhvcmVkPT09ZS5sZWdlbmRMaW5lRGFzaEF1dGhvcmVkJiZhLmN1c3RvbURhc2g9PT1lLmxlZ2VuZExpbmVDdXN0b21EYXNoJiZhLmNhcD09PWUubGVnZW5kTGluZUNhcCYmYS5qb2luPT09ZS5sZWdlbmRMaW5lSm9pbiYmYS5jb21wb3VuZD09PWUubGVnZW5kTGluZUNvbXBvdW5kJiZhLmhpZGRlbj09PWUubGVnZW5kTGluZUhpZGRlbj9lOnsuLi5lLGxlZ2VuZEZpbGw6bixsZWdlbmRGaWxsQ29sb3I6cixsZWdlbmRGaWxsSGlkZGVuOmksbGVnZW5kTGluZUNvbG9yOmEuY29sb3IsbGVnZW5kTGluZUZpbGw6YS5maWxsLGxlZ2VuZExpbmVXaWR0aEVtdTphLndpZHRoRW11LGxlZ2VuZExpbmVEYXNoOmEuZGFzaCxsZWdlbmRMaW5lRGFzaEF1dGhvcmVkOmEuZGFzaEF1dGhvcmVkLGxlZ2VuZExpbmVDdXN0b21EYXNoOmEuY3VzdG9tRGFzaCxsZWdlbmRMaW5lQ2FwOmEuY2FwLGxlZ2VuZExpbmVKb2luOmEuam9pbixsZWdlbmRMaW5lQ29tcG91bmQ6YS5jb21wb3VuZCxsZWdlbmRMaW5lSGlkZGVuOmEuaGlkZGVufX1mdW5jdGlvbiBCYyhlKXtsZXQgdD1lLnRocmVlRD9lLmNoYXJ0U3R5bGVSb2xlcz8ucGxvdEFyZWEzRDplLmNoYXJ0U3R5bGVSb2xlcz8ucGxvdEFyZWE7aWYoIXQpcmV0dXJuIGU7bGV0IG49ZS5wbG90QXJlYUZpbGwscj1lLnBsb3RBcmVhQmcsaT1lLnBsb3RBcmVhRmlsbEhpZGRlbjshKGUucGxvdEFyZWFGaWxsUGFpbnRBdXRob3JlZD09PSEwfHwobiE9bnVsbHx8ciE9bnVsbCkmJmUucGxvdEFyZWFGaWxsQXV0b21hdGljIT09ITB8fGk9PT0hMCkmJnQuZmlsbE5vU3R5bGUhPT0hMCYmKHQuZmlsbEhpZGRlbj09PSEwP2k9ITA6KG49UmwodCwwKSxyPW49PW51bGw/UGwoZSx0LGBmaWxsYCwwLDEpOm51bGwpKTtsZXQgYT1QYyhlLHtjb2xvcjplLnBsb3RBcmVhTGluZUNvbG9yLGZpbGw6ZS5wbG90QXJlYUxpbmVGaWxsLHdpZHRoRW11OmUucGxvdEFyZWFMaW5lV2lkdGhFbXUsZGFzaDplLnBsb3RBcmVhTGluZURhc2gsZGFzaEF1dGhvcmVkOmUucGxvdEFyZWFMaW5lRGFzaEF1dGhvcmVkLGN1c3RvbURhc2g6ZS5wbG90QXJlYUxpbmVDdXN0b21EYXNoLGNhcDplLnBsb3RBcmVhTGluZUNhcCxqb2luOmUucGxvdEFyZWFMaW5lSm9pbixjb21wb3VuZDplLnBsb3RBcmVhTGluZUNvbXBvdW5kLGhpZGRlbjplLnBsb3RBcmVhTGluZUhpZGRlbixwYWludEF1dGhvcmVkOmUucGxvdEFyZWFMaW5lUGFpbnRBdXRob3JlZH0sdCk7cmV0dXJuIG49PT1lLnBsb3RBcmVhRmlsbCYmcj09PWUucGxvdEFyZWFCZyYmaT09PWUucGxvdEFyZWFGaWxsSGlkZGVuJiZhLmNvbG9yPT09ZS5wbG90QXJlYUxpbmVDb2xvciYmYS5maWxsPT09ZS5wbG90QXJlYUxpbmVGaWxsJiZhLndpZHRoRW11PT09ZS5wbG90QXJlYUxpbmVXaWR0aEVtdSYmYS5kYXNoPT09ZS5wbG90QXJlYUxpbmVEYXNoJiZhLmRhc2hBdXRob3JlZD09PWUucGxvdEFyZWFMaW5lRGFzaEF1dGhvcmVkJiZhLmN1c3RvbURhc2g9PT1lLnBsb3RBcmVhTGluZUN1c3RvbURhc2gmJmEuY2FwPT09ZS5wbG90QXJlYUxpbmVDYXAmJmEuam9pbj09PWUucGxvdEFyZWFMaW5lSm9pbiYmYS5jb21wb3VuZD09PWUucGxvdEFyZWFMaW5lQ29tcG91bmQmJmEuaGlkZGVuPT09ZS5wbG90QXJlYUxpbmVIaWRkZW4/ZTp7Li4uZSxwbG90QXJlYUZpbGw6bixwbG90QXJlYUJnOnIscGxvdEFyZWFGaWxsSGlkZGVuOmkscGxvdEFyZWFMaW5lQ29sb3I6YS5jb2xvcixwbG90QXJlYUxpbmVGaWxsOmEuZmlsbCxwbG90QXJlYUxpbmVXaWR0aEVtdTphLndpZHRoRW11LHBsb3RBcmVhTGluZURhc2g6YS5kYXNoLHBsb3RBcmVhTGluZURhc2hBdXRob3JlZDphLmRhc2hBdXRob3JlZCxwbG90QXJlYUxpbmVDdXN0b21EYXNoOmEuY3VzdG9tRGFzaCxwbG90QXJlYUxpbmVDYXA6YS5jYXAscGxvdEFyZWFMaW5lSm9pbjphLmpvaW4scGxvdEFyZWFMaW5lQ29tcG91bmQ6YS5jb21wb3VuZCxwbG90QXJlYUxpbmVIaWRkZW46YS5oaWRkZW59fWZ1bmN0aW9uIFZjKGUpe2xldCB0PWUuY2hhcnRTdHlsZVJvbGVzPy5jaGFydEFyZWE7aWYoIXQpcmV0dXJuIGU7bGV0IG49ZS5jaGFydEZpbGwscj1lLmNoYXJ0QmcsaT1lLmNoYXJ0RmlsbEhpZGRlbjshKGUuY2hhcnRGaWxsUGFpbnRBdXRob3JlZD09PSEwfHxuIT1udWxsfHxpPT09ITApJiZ0LmZpbGxOb1N0eWxlIT09ITAmJih0LmZpbGxIaWRkZW49PT0hMD8obj1udWxsLHI9bnVsbCxpPSEwKToobj1SbCh0LDApLHI9bj09bnVsbD9QbChlLHQsYGZpbGxgLDAsMSk6bnVsbCxpPW51bGwpKTtsZXQgYT1QYyhlLHtjb2xvcjplLmNoYXJ0Qm9yZGVyQ29sb3IsZmlsbDplLmNoYXJ0Qm9yZGVyTGluZUZpbGwsd2lkdGhFbXU6ZS5jaGFydEJvcmRlcldpZHRoRW11LGRhc2g6ZS5jaGFydEJvcmRlckRhc2gsZGFzaEF1dGhvcmVkOmUuY2hhcnRCb3JkZXJEYXNoQXV0aG9yZWQsY3VzdG9tRGFzaDplLmNoYXJ0Qm9yZGVyQ3VzdG9tRGFzaCxjYXA6ZS5jaGFydEJvcmRlckNhcCxqb2luOmUuY2hhcnRCb3JkZXJKb2luLGNvbXBvdW5kOmUuY2hhcnRCb3JkZXJDb21wb3VuZCxoaWRkZW46ZS5jaGFydEJvcmRlckhpZGRlbixwYWludEF1dGhvcmVkOmUuY2hhcnRCb3JkZXJQYWludEF1dGhvcmVkfSx0KTtyZXR1cm4gbj09PWUuY2hhcnRGaWxsJiZyPT09ZS5jaGFydEJnJiZpPT09ZS5jaGFydEZpbGxIaWRkZW4mJmEuY29sb3I9PT1lLmNoYXJ0Qm9yZGVyQ29sb3ImJmEuZmlsbD09PWUuY2hhcnRCb3JkZXJMaW5lRmlsbCYmYS53aWR0aEVtdT09PWUuY2hhcnRCb3JkZXJXaWR0aEVtdSYmYS5kYXNoPT09ZS5jaGFydEJvcmRlckRhc2gmJmEuZGFzaEF1dGhvcmVkPT09ZS5jaGFydEJvcmRlckRhc2hBdXRob3JlZCYmYS5jdXN0b21EYXNoPT09ZS5jaGFydEJvcmRlckN1c3RvbURhc2gmJmEuY2FwPT09ZS5jaGFydEJvcmRlckNhcCYmYS5qb2luPT09ZS5jaGFydEJvcmRlckpvaW4mJmEuY29tcG91bmQ9PT1lLmNoYXJ0Qm9yZGVyQ29tcG91bmQmJmEuaGlkZGVuPT09ZS5jaGFydEJvcmRlckhpZGRlbj9lOnsuLi5lLGNoYXJ0RmlsbDpuLGNoYXJ0Qmc6cixjaGFydEZpbGxIaWRkZW46aSxjaGFydEJvcmRlckNvbG9yOmEuY29sb3IsY2hhcnRCb3JkZXJMaW5lRmlsbDphLmZpbGwsY2hhcnRCb3JkZXJXaWR0aEVtdTphLndpZHRoRW11LGNoYXJ0Qm9yZGVyRGFzaDphLmRhc2gsY2hhcnRCb3JkZXJEYXNoQXV0aG9yZWQ6YS5kYXNoQXV0aG9yZWQsY2hhcnRCb3JkZXJDdXN0b21EYXNoOmEuY3VzdG9tRGFzaCxjaGFydEJvcmRlckNhcDphLmNhcCxjaGFydEJvcmRlckpvaW46YS5qb2luLGNoYXJ0Qm9yZGVyQ29tcG91bmQ6YS5jb21wb3VuZCxjaGFydEJvcmRlckhpZGRlbjphLmhpZGRlbn19ZnVuY3Rpb24gSGMoZSl7aWYoIWUuY2hhcnRTdHlsZVJvbGVzPy5lcnJvckJhciYmIWUuY2hhcnRTdHlsZVJvbGVzPy5sZWFkZXJMaW5lJiYhZS5jaGFydFN0eWxlUm9sZXM/LnRyZW5kbGluZSYmIWUuY2hhcnRTdHlsZVJvbGVzPy50cmVuZGxpbmVMYWJlbCYmIWUuY2hhcnRTdHlsZVJvbGVzPy5kYXRhTGFiZWwmJiFlLmNoYXJ0U3R5bGVSb2xlcz8uZGF0YUxhYmVsQ2FsbG91dCYmIWUuY2hhcnRTdHlsZVJvbGVzPy5kYXRhVGFibGUmJiFlLmNoYXJ0U3R5bGVSb2xlcz8uZ3JpZGxpbmVNYWpvciYmIWUuY2hhcnRTdHlsZVJvbGVzPy5ncmlkbGluZU1pbm9yJiYhZS5jaGFydFN0eWxlUm9sZXM/LmNhdGVnb3J5QXhpcyYmIWUuY2hhcnRTdHlsZVJvbGVzPy52YWx1ZUF4aXMmJiFlLmNoYXJ0U3R5bGVSb2xlcz8uc2VyaWVzQXhpcyYmIWUuY2hhcnRTdHlsZVJvbGVzPy5kYXRhUG9pbnRNYXJrZXImJiFlLmNoYXJ0U3R5bGVSb2xlcz8ubGVnZW5kJiYhZS5jaGFydFN0eWxlUm9sZXM/LnBsb3RBcmVhJiYhZS5jaGFydFN0eWxlUm9sZXM/LnBsb3RBcmVhM0QmJiFlLmNoYXJ0U3R5bGVSb2xlcz8uY2hhcnRBcmVhJiZlLmNoYXJ0U3R5bGVNYXJrZXJTaXplUHQ9PW51bGwmJmUuY2hhcnRTdHlsZU1hcmtlclN5bWJvbD09bnVsbClyZXR1cm4gZTtsZXQgdD0hMSxuPWUuc2VyaWVzLm1hcCgobixyKT0+e2xldCBpPU5jKGUsbixyLGUuc2VyaWVzLmxlbmd0aCk7dHx8PWkhPT1uO2xldCBhPWUuY2hhcnRTdHlsZVJvbGVzPy5lcnJvckJhcj9pLmVyckJhcnM/Lm1hcChuPT57bGV0IHI9Q2MoZSxuKTtyZXR1cm4gdHx8PXIuY29sb3IhPT1uLmNvbG9yfHxyLmxpbmVXaWR0aEVtdSE9PW4ubGluZVdpZHRoRW11fHxyLmRhc2ghPT1uLmRhc2h8fHIuaGlkZGVuIT09bi5oaWRkZW4scn0pOmkuZXJyQmFycyxvPWkuc2VyaWVzRGF0YUxhYmVscztpZihvJiYoZS5jaGFydFN0eWxlUm9sZXM/LmRhdGFMYWJlbHx8ZS5jaGFydFN0eWxlUm9sZXM/LmRhdGFMYWJlbENhbGxvdXQpKXtsZXQgbj1JYyhlLG8pO3R8fD1uIT09byxvPW59bGV0IHM9ZS5jaGFydFN0eWxlUm9sZXM/LmRhdGFMYWJlbENhbGxvdXR8fGUuY2hhcnRTdHlsZVJvbGVzPy5kYXRhTGFiZWw/aS5kYXRhTGFiZWxPdmVycmlkZXM/Lm1hcChyPT57bGV0IGk9UmMoZSxyLG4uc2VyaWVzRGF0YUxhYmVscyk7cmV0dXJuIHR8fD1pIT09cixpfSk6aS5kYXRhTGFiZWxPdmVycmlkZXM7aWYobyYmZS5jaGFydFN0eWxlUm9sZXM/LmxlYWRlckxpbmUpe2xldCBuPXdjKGUsbykscj17Li4ubyxsZWFkZXJMaW5lQ29sb3I6bi5jb2xvcj8/dm9pZCAwLGxlYWRlckxpbmVXaWR0aEVtdTpuLndpZHRoRW11Pz92b2lkIDAsbGVhZGVyTGluZURhc2g6bi5kYXNoPz92b2lkIDAsbGVhZGVyTGluZUhpZGRlbjpuLmhpZGRlbj8/dm9pZCAwfTt0fHw9ci5sZWFkZXJMaW5lQ29sb3IhPT1vLmxlYWRlckxpbmVDb2xvcnx8ci5sZWFkZXJMaW5lV2lkdGhFbXUhPT1vLmxlYWRlckxpbmVXaWR0aEVtdXx8ci5sZWFkZXJMaW5lRGFzaCE9PW8ubGVhZGVyTGluZURhc2h8fHIubGVhZGVyTGluZUhpZGRlbiE9PW8ubGVhZGVyTGluZUhpZGRlbixvPXJ9bGV0IGM9ZS5jaGFydFN0eWxlUm9sZXM/LnRyZW5kbGluZXx8ZS5jaGFydFN0eWxlUm9sZXM/LnRyZW5kbGluZUxhYmVsP2kudHJlbmRMaW5lcz8ubWFwKG49PntsZXQgcj1lLmNoYXJ0U3R5bGVSb2xlcz8udHJlbmRsaW5lP1RjKGUsbik6bjtyZXR1cm4gZS5jaGFydFN0eWxlUm9sZXM/LnRyZW5kbGluZUxhYmVsJiYocj1MYyhlLHIpKSx0fHw9ci5saW5lQ29sb3IhPT1uLmxpbmVDb2xvcnx8ci5saW5lV2lkdGhFbXUhPT1uLmxpbmVXaWR0aEVtdXx8ci5saW5lRGFzaCE9PW4ubGluZURhc2h8fHIubGluZUhpZGRlbiE9PW4ubGluZUhpZGRlbnx8ciE9PW4scn0pOmkudHJlbmRMaW5lcztyZXR1cm4gYT09PWkuZXJyQmFycyYmbz09PWkuc2VyaWVzRGF0YUxhYmVscyYmcz09PWkuZGF0YUxhYmVsT3ZlcnJpZGVzJiZjPT09aS50cmVuZExpbmVzP2k6ey4uLmksZXJyQmFyczphLHNlcmllc0RhdGFMYWJlbHM6byxkYXRhTGFiZWxPdmVycmlkZXM6cyx0cmVuZExpbmVzOmN9fSkscj1lLmRhdGFUYWJsZTtpZihyJiZlLmNoYXJ0U3R5bGVSb2xlcz8uZGF0YVRhYmxlKXtsZXQgbj1FYyhlLHIpO3R8fD1uLmxpbmVDb2xvciE9PXIubGluZUNvbG9yfHxuLmxpbmVXaWR0aEVtdSE9PXIubGluZVdpZHRoRW11fHxuLmxpbmVEYXNoIT09ci5saW5lRGFzaHx8bi5saW5lSGlkZGVuIT09ci5saW5lSGlkZGVuLHI9bn1sZXQgaT1EYyhlLGBncmlkbGluZU1ham9yYCxlLnZhbEF4aXNNYWpvckdyaWRsaW5lcyxlLnZhbEF4aXNHcmlkbGluZUNvbG9yLGUudmFsQXhpc0dyaWRsaW5lV2lkdGhFbXUsZS52YWxBeGlzR3JpZGxpbmVEYXNoKSxhPURjKGUsYGdyaWRsaW5lTWFqb3JgLGUuY2F0QXhpc01ham9yR3JpZGxpbmVzLGUuY2F0QXhpc0dyaWRsaW5lQ29sb3IsZS5jYXRBeGlzR3JpZGxpbmVXaWR0aEVtdSxlLmNhdEF4aXNHcmlkbGluZURhc2gpLG89RGMoZSxgZ3JpZGxpbmVNaW5vcmAsZS52YWxBeGlzTWlub3JHcmlkbGluZXMsZS52YWxBeGlzTWlub3JHcmlkbGluZUNvbG9yLGUudmFsQXhpc01pbm9yR3JpZGxpbmVXaWR0aEVtdSxlLnZhbEF4aXNNaW5vckdyaWRsaW5lRGFzaCkscz1EYyhlLGBncmlkbGluZU1pbm9yYCxlLmNhdEF4aXNNaW5vckdyaWRsaW5lcyxlLmNhdEF4aXNNaW5vckdyaWRsaW5lQ29sb3IsZS5jYXRBeGlzTWlub3JHcmlkbGluZVdpZHRoRW11LGUuY2F0QXhpc01pbm9yR3JpZGxpbmVEYXNoKSxjPU9jKGUsZS5zZWNvbmRhcnlWYWxBeGlzKSxsPU9jKGUsZS5zZWNvbmRhcnlDYXRBeGlzKSx1PUFjKGUsYyxgdmFsdWVBeGlzYCksZD1BYyhlLGwsYGNhdGVnb3J5QXhpc2ApLGY9a2MoZSxgY2F0ZWdvcnlBeGlzYCxlLmNhdEF4aXNMaW5lQ29sb3IsZS5jYXRBeGlzTGluZVdpZHRoRW11LGUuY2F0QXhpc0xpbmVEYXNoLGUuY2F0QXhpc0xpbmVIaWRkZW4pLHA9a2MoZSxgdmFsdWVBeGlzYCxlLnZhbEF4aXNMaW5lQ29sb3IsZS52YWxBeGlzTGluZVdpZHRoRW11LGUudmFsQXhpc0xpbmVEYXNoLGUudmFsQXhpc0xpbmVIaWRkZW4pLG09ZS5jaGFydFN0eWxlUm9sZXM/LmNhdGVnb3J5QXhpcyxoPWUuY2hhcnRTdHlsZVJvbGVzPy52YWx1ZUF4aXMsZz1lLmNhdEF4aXNGb250U2l6ZUhwdD8/bT8uZm9udFNpemVIcHQ/P251bGwsXz1lLmNhdEF4aXNGb250Qm9sZD8/bT8uZm9udEJvbGQsdj1lLmNhdEF4aXNGb250SXRhbGljPz9tPy5mb250SXRhbGljLHk9ZS5jYXRBeGlzRm9udENvbG9yPz9tPy5mb250Q29sb3IsYj1lLmNhdEF4aXNGb250RmFjZT8/bT8uZm9udEZhY2UseD1lLnZhbEF4aXNGb250U2l6ZUhwdD8/aD8uZm9udFNpemVIcHQ/P251bGwsUz1lLnZhbEF4aXNGb250Qm9sZD8/aD8uZm9udEJvbGQsQz1lLnZhbEF4aXNGb250SXRhbGljPz9oPy5mb250SXRhbGljLHc9ZS52YWxBeGlzRm9udENvbG9yPz9oPy5mb250Q29sb3IsVD1lLnZhbEF4aXNGb250RmFjZT8/aD8uZm9udEZhY2U7cmV0dXJuIHR8fD1pLnZpc2libGUhPT1lLnZhbEF4aXNNYWpvckdyaWRsaW5lc3x8aS5jb2xvciE9PWUudmFsQXhpc0dyaWRsaW5lQ29sb3J8fGkud2lkdGhFbXUhPT1lLnZhbEF4aXNHcmlkbGluZVdpZHRoRW11fHxpLmRhc2ghPT1lLnZhbEF4aXNHcmlkbGluZURhc2h8fGEudmlzaWJsZSE9PWUuY2F0QXhpc01ham9yR3JpZGxpbmVzfHxhLmNvbG9yIT09ZS5jYXRBeGlzR3JpZGxpbmVDb2xvcnx8YS53aWR0aEVtdSE9PWUuY2F0QXhpc0dyaWRsaW5lV2lkdGhFbXV8fGEuZGFzaCE9PWUuY2F0QXhpc0dyaWRsaW5lRGFzaHx8by52aXNpYmxlIT09ZS52YWxBeGlzTWlub3JHcmlkbGluZXN8fG8uY29sb3IhPT1lLnZhbEF4aXNNaW5vckdyaWRsaW5lQ29sb3J8fG8ud2lkdGhFbXUhPT1lLnZhbEF4aXNNaW5vckdyaWRsaW5lV2lkdGhFbXV8fG8uZGFzaCE9PWUudmFsQXhpc01pbm9yR3JpZGxpbmVEYXNofHxzLnZpc2libGUhPT1lLmNhdEF4aXNNaW5vckdyaWRsaW5lc3x8cy5jb2xvciE9PWUuY2F0QXhpc01pbm9yR3JpZGxpbmVDb2xvcnx8cy53aWR0aEVtdSE9PWUuY2F0QXhpc01pbm9yR3JpZGxpbmVXaWR0aEVtdXx8cy5kYXNoIT09ZS5jYXRBeGlzTWlub3JHcmlkbGluZURhc2h8fHUhPT1lLnNlY29uZGFyeVZhbEF4aXN8fGQhPT1lLnNlY29uZGFyeUNhdEF4aXN8fGYuY29sb3IhPT1lLmNhdEF4aXNMaW5lQ29sb3J8fGYud2lkdGhFbXUhPT1lLmNhdEF4aXNMaW5lV2lkdGhFbXV8fGYuZGFzaCE9PWUuY2F0QXhpc0xpbmVEYXNofHxmLmhpZGRlbj09PSEwIT09ZS5jYXRBeGlzTGluZUhpZGRlbnx8cC5jb2xvciE9PWUudmFsQXhpc0xpbmVDb2xvcnx8cC53aWR0aEVtdSE9PWUudmFsQXhpc0xpbmVXaWR0aEVtdXx8cC5kYXNoIT09ZS52YWxBeGlzTGluZURhc2h8fHAuaGlkZGVuPT09ITAhPT1lLnZhbEF4aXNMaW5lSGlkZGVufHxnIT09ZS5jYXRBeGlzRm9udFNpemVIcHR8fF8hPT1lLmNhdEF4aXNGb250Qm9sZHx8diE9PWUuY2F0QXhpc0ZvbnRJdGFsaWN8fHkhPT1lLmNhdEF4aXNGb250Q29sb3J8fGIhPT1lLmNhdEF4aXNGb250RmFjZXx8eCE9PWUudmFsQXhpc0ZvbnRTaXplSHB0fHxTIT09ZS52YWxBeGlzRm9udEJvbGR8fEMhPT1lLnZhbEF4aXNGb250SXRhbGljfHx3IT09ZS52YWxBeGlzRm9udENvbG9yfHxUIT09ZS52YWxBeGlzRm9udEZhY2UsemMoQmMoVmMoamModD97Li4uZSxzZXJpZXM6bixkYXRhVGFibGU6cix2YWxBeGlzTWFqb3JHcmlkbGluZXM6aS52aXNpYmxlLHZhbEF4aXNHcmlkbGluZUNvbG9yOmkuY29sb3IsdmFsQXhpc0dyaWRsaW5lV2lkdGhFbXU6aS53aWR0aEVtdSx2YWxBeGlzR3JpZGxpbmVEYXNoOmkuZGFzaCxjYXRBeGlzTWFqb3JHcmlkbGluZXM6YS52aXNpYmxlLGNhdEF4aXNHcmlkbGluZUNvbG9yOmEuY29sb3IsY2F0QXhpc0dyaWRsaW5lV2lkdGhFbXU6YS53aWR0aEVtdSxjYXRBeGlzR3JpZGxpbmVEYXNoOmEuZGFzaCx2YWxBeGlzTWlub3JHcmlkbGluZXM6by52aXNpYmxlLHZhbEF4aXNNaW5vckdyaWRsaW5lQ29sb3I6by5jb2xvcix2YWxBeGlzTWlub3JHcmlkbGluZVdpZHRoRW11Om8ud2lkdGhFbXUsdmFsQXhpc01pbm9yR3JpZGxpbmVEYXNoOm8uZGFzaCxjYXRBeGlzTWlub3JHcmlkbGluZXM6cy52aXNpYmxlLGNhdEF4aXNNaW5vckdyaWRsaW5lQ29sb3I6cy5jb2xvcixjYXRBeGlzTWlub3JHcmlkbGluZVdpZHRoRW11OnMud2lkdGhFbXUsY2F0QXhpc01pbm9yR3JpZGxpbmVEYXNoOnMuZGFzaCxzZWNvbmRhcnlWYWxBeGlzOnUsc2Vjb25kYXJ5Q2F0QXhpczpkLGNhdEF4aXNMaW5lQ29sb3I6Zi5jb2xvcixjYXRBeGlzTGluZVdpZHRoRW11OmYud2lkdGhFbXUsY2F0QXhpc0xpbmVEYXNoOmYuZGFzaCxjYXRBeGlzTGluZUhpZGRlbjpmLmhpZGRlbj09PSEwLHZhbEF4aXNMaW5lQ29sb3I6cC5jb2xvcix2YWxBeGlzTGluZVdpZHRoRW11OnAud2lkdGhFbXUsdmFsQXhpc0xpbmVEYXNoOnAuZGFzaCx2YWxBeGlzTGluZUhpZGRlbjpwLmhpZGRlbj09PSEwLGNhdEF4aXNGb250U2l6ZUhwdDpnLGNhdEF4aXNGb250Qm9sZDpfLGNhdEF4aXNGb250SXRhbGljOnYsY2F0QXhpc0ZvbnRDb2xvcjp5LGNhdEF4aXNGb250RmFjZTpiLHZhbEF4aXNGb250U2l6ZUhwdDp4LHZhbEF4aXNGb250Qm9sZDpTLHZhbEF4aXNGb250SXRhbGljOkMsdmFsQXhpc0ZvbnRDb2xvcjp3LHZhbEF4aXNGb250RmFjZTpUfTplKSkpKX1mdW5jdGlvbiBVYyhlLHQsbixyLGksYSxvLHMsYyxsLHUsZD0wKXtsZXQgZj1OdW1iZXIuaXNGaW5pdGUoYy5nYXBXaWR0aFBlcmNlbnQpJiZjLmdhcFdpZHRoUGVyY2VudD49MD9jLmdhcFdpZHRoUGVyY2VudDoxNTAscD1NYXRoLm1heCgwLHMvKDErZi8xMDApKTtmb3IobGV0IHM9MDtzPHI7cysrKXtsZXQgcj10KHMpLGY9bihzKTtpZihyPT1udWxsfHxmPT1udWxsfHwhTnVtYmVyLmlzRmluaXRlKHIpfHwhTnVtYmVyLmlzRmluaXRlKGYpKWNvbnRpbnVlO2xldCBtPWEociksaD1vKGYpLGc9TWF0aC5hYnMoaC1tKTtpZighKHA+MCl8fCEoZz4wKXx8IU51bWJlci5pc0Zpbml0ZShnKSljb250aW51ZTtsZXQgXz1mPj1yP2MudXA6Yy5kb3duLHY9Xy5maWxsUGFpbnRBdXRob3JlZD09PSEwfHxfLmZpbGwhPW51bGx8fF8uZmlsbENvbG9yIT1udWxsfHxfLmZpbGxIaWRkZW49PT0hMD92b2lkIDA6Zj49cj91Py51cEZpbGxDb2xvcjp1Py5kb3duRmlsbENvbG9yLHk9Xy5maWxsQ29sb3I/P3YsYj1pKHMpLXAvMix4PU1hdGgubWluKG0saCk7aWYoIV8uZmlsbEhpZGRlbiYmKF8uZmlsbCE9bnVsbHx8eSE9bnVsbCkpe2xldCB0PV8uZmlsbD9haShfLmZpbGwsZSxiLHgscCxnLGQpOmAjJHt5fWA7dCE9bnVsbCYmKGUuZmlsbFN0eWxlPXQsZS5maWxsUmVjdChiLHgscCxnKSl9bGV0IFM9Xy5saW5lUGFpbnRBdXRob3JlZD09PSEwfHxfLmxpbmVDb2xvciE9bnVsbHx8Xy5saW5lSGlkZGVuPT09ITAsQz1fLmxpbmVDb2xvcj8/KFM/dm9pZCAwOnU/LmxpbmVDb2xvciksdz1fLmxpbmVXaWR0aEVtdT8/KFM/dm9pZCAwOnU/LmxpbmVXaWR0aEVtdSk7aWYoIV8ubGluZUhpZGRlbiYmKF8ubGluZVBhaW50QXV0aG9yZWQhPT0hMHx8QyE9bnVsbCkmJihDIT1udWxsfHx3IT1udWxsKSl7bGV0IHQ9ZS5nZXRMaW5lRGFzaCgpLG49ZS5saW5lQ2FwLHI9ZS5saW5lSm9pbjtlLnN0cm9rZVN0eWxlPWAjJHtDPz9gMDAwMDAwYH1gLGUubGluZVdpZHRoPXc9PW51bGw/TWF0aC5tYXgoMSwuNzUqbCk6aWEodyxsKSxlLnNldExpbmVEYXNoKERsKF8ubGluZURhc2g/P3ZvaWQgMCxlLmxpbmVXaWR0aCkpLGUubGluZUNhcD1fLmxpbmVDYXA9PT1gcm5kYD9gcm91bmRgOl8ubGluZUNhcD09PWBzcWA/YHNxdWFyZWA6YGJ1dHRgLGUubGluZUpvaW49Xy5saW5lSm9pbj09PWByb3VuZGB8fF8ubGluZUpvaW49PT1gYmV2ZWxgP18ubGluZUpvaW46YG1pdGVyYCxlLnN0cm9rZVJlY3QoYix4LHAsZyksZS5zZXRMaW5lRGFzaCh0KSxlLmxpbmVDYXA9bixlLmxpbmVKb2luPXJ9fX1mdW5jdGlvbiBXYyhlLHQsbixyLGksYSxvLHMsYyxsLHUpe2ZvcihsZXQgZCBvZiB0LmxpbmVHcm91cERlY29yYXRpb25zPz9bXSl7bGV0IGY9dC5zZXJpZXMuZmlsdGVyKGU9PmUubGluZUdyb3VwSW5kZXg9PT1kLmdyb3VwSW5kZXgpO2lmKGYubGVuZ3RoPT09MCYmZC5ncm91cEluZGV4PT09MCYmW2BsaW5lYCxgc3RhY2tlZExpbmVgLGBzdGFja2VkTGluZVBjdGBdLmluY2x1ZGVzKHQuY2hhcnRUeXBlKSYmKGY9dC5zZXJpZXMuZmlsdGVyKGU9PmUuc2VyaWVzVHlwZT09bnVsbHx8ZS5zZXJpZXNUeXBlPT09YGxpbmVgKSksZi5sZW5ndGg9PT0wKWNvbnRpbnVlO2lmKHU9PT1gZm9yZWdyb3VuZGAmJmQudXBEb3duQmFycyYmZi5sZW5ndGg+PTIpe2xldCBhPWZbMF0sdT1mW2YubGVuZ3RoLTFdLHA9ey4uLmQudXBEb3duQmFycyx1cDp4Yyh0LGQudXBEb3duQmFycy51cCxgdXBCYXJgKSxkb3duOnhjKHQsZC51cERvd25CYXJzLmRvd24sYGRvd25CYXJgKX07VWMoZSxlPT5vKGEsZSksZT0+byh1LGUpLG4scixpKGEpLGkodSkscyxwLGMsdC5sZWdhY3lDaGFydFN0eWxlPT09Mj97bGluZUNvbG9yOmAwMDAwMDBgLGxpbmVXaWR0aEVtdTo5NTI1LHVwRmlsbENvbG9yOmBGRkZGRkZgLGRvd25GaWxsQ29sb3I6YDAwMDAwMGB9OnZvaWQgMCxsKX1pZih1PT09YGZvcmVncm91bmRgKWNvbnRpbnVlO2xldCBwPWQuZHJvcExpbmVzP2JjKHQsZC5kcm9wTGluZXMsYGRyb3BMaW5lYCk6bnVsbDtwJiZ5YyhlLHAsYykmJlNjKGUsZixuLHIsaSxhLG8pO2xldCBtPWQuaGlMb3dMaW5lcz9iYyh0LGQuaGlMb3dMaW5lcyxgaGlMb0xpbmVgKTpudWxsO2lmKG0mJmYubGVuZ3RoPj0yJiZ5YyhlLG0sYykpe2xldCB0PWkoZlswXSk7Zm9yKGxldCBpPTA7aTxuO2krKyl7bGV0IG49MS8wLGE9LTEvMDtmb3IobGV0IGUgb2YgZil7bGV0IHQ9byhlLGkpO3Q9PW51bGx8fCFOdW1iZXIuaXNGaW5pdGUodCl8fChuPU1hdGgubWluKG4sdCksYT1NYXRoLm1heChhLHQpKX0hTnVtYmVyLmlzRmluaXRlKG4pfHwhTnVtYmVyLmlzRmluaXRlKGEpfHwoZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhyKGkpLHQobikpLGUubGluZVRvKHIoaSksdChhKSksZS5zdHJva2UoKSl9fX19ZnVuY3Rpb24gR2MoZSx0LG4scil7cmV0dXJuIGUhPW51bGwmJk51bWJlci5pc0Zpbml0ZShlKT9UbChlLG4scik6dD09PWBtYXhgP3I6dD09PWBtaW5gP246VGwoMCxuLHIpfWZ1bmN0aW9uIEtjKGUsdCxuKXtyZXR1cm4gR2MoZS5jYXRBeGlzQ3Jvc3Nlc0F0LGUuY2F0QXhpc0Nyb3NzZXMsdCxuKX1mdW5jdGlvbiBxYyhlLHQsbixyLGk9MCl7bGV0e3g6YSx5Om8sdzpzLGg6Y309bixsPXBjKHQpLHU9bC5sZW5ndGg7aWYodT09PTApcmV0dXJuO2xldCBkPWNzKHQsciksZj10LmNoYXJ0VHlwZT09PWBzdGFja2VkTGluZVBjdGA/YHBlcmNlbnRTdGFja2VkYDp0LmNoYXJ0VHlwZT09PWBzdGFja2VkTGluZWA/YHN0YWNrZWRgOmBzdGFuZGFyZGAscD10LnBsb3RHcm91cHM/LmZpbHRlcihlPT5lLmtpbmQ9PT1gbGluZWApPz9be2tpbmQ6YGxpbmVgLHNlcmllc1N0YXJ0OjAsc2VyaWVzQ291bnQ6dC5zZXJpZXMubGVuZ3RoLGNhdGVnb3J5QXhpczpgcHJpbWFyeWAsdmFsdWVBeGlzOmBwcmltYXJ5YCxzZXJpZXNBeGlzOmBub25lYCxncm91cGluZzpmfV0sbT1BcnJheSh0LnNlcmllcy5sZW5ndGgpLmZpbGwoITEpLGg9QXJyYXkodC5zZXJpZXMubGVuZ3RoKS5maWxsKCExKSxnPUFycmF5KHQuc2VyaWVzLmxlbmd0aCkuZmlsbCghMSksXz1BcnJheSh0LnNlcmllcy5sZW5ndGgpLmZpbGwobnVsbCksdj10LnNlcmllcy5tYXAoKCk9PkFycmF5KHUpLmZpbGwoMCkpLHk9bmV3IE1hcDtmb3IobGV0IGUgb2YgcCl7bGV0IHQ9ZS52YWx1ZUF4aXM7eS5zZXQodCwoeS5nZXQodCk/PyEwKSYmZS5ncm91cGluZz09PWBwZXJjZW50U3RhY2tlZGApfWZvcihsZXQgZSBvZiBwKXtsZXQgbj1lLmdyb3VwaW5nPz9gc3RhbmRhcmRgLHI9bj09PWBzdGFja2VkYHx8bj09PWBwZXJjZW50U3RhY2tlZGAsaT1uPT09YHBlcmNlbnRTdGFja2VkYCxhPXQuc2VyaWVzLnNsaWNlKGUuc2VyaWVzU3RhcnQsZS5zZXJpZXNTdGFydCtlLnNlcmllc0NvdW50KSxvPWkmJnkuZ2V0KGUudmFsdWVBeGlzKT09PSEwPzEwMDoxLHM9aT9sLm1hcCgoZSx0KT0+YS5yZWR1Y2UoKGUsbik9PmUrTWF0aC5hYnMobi52YWx1ZXNbdF0/PzApLDApfHwxKTpudWxsO2ZvcihsZXQgdD0wO3Q8YS5sZW5ndGg7dCsrKXtsZXQgbj1lLnNlcmllc1N0YXJ0K3Q7bVtuXT1yLGhbbl09aSxnW25dPWUudmFsdWVBeGlzPT09YHNlY29uZGFyeWAsX1tuXT1zO2ZvcihsZXQgZT0wO2U8dTtlKyspe2xldCBjPWFbdF0udmFsdWVzW2VdPz8wO2lmKCFyKXt2W25dW2VdPWM7Y29udGludWV9bGV0IGw9dD09PTA/MDp2W24tMV1bZV0sdT1pJiZzP2Mvc1tlXSpvOmM7dltuXVtlXT1sK3V9fX1sZXQgYj0oZSx0KT0+dltlXT8uW3RdPz8wLHg9cC5maWx0ZXIoZT0+ZS52YWx1ZUF4aXMhPT1gc2Vjb25kYXJ5YCksUz14Lmxlbmd0aD4wJiZ4LmV2ZXJ5KGU9PmUuZ3JvdXBpbmc9PT1gcGVyY2VudFN0YWNrZWRgKSxDPXQuZGlzcEJsYW5rc0FzPz9gZ2FwYCx3PXAuZmlsdGVyKGU9PmUudmFsdWVBeGlzPT09YHNlY29uZGFyeWApLFQ9dy5sZW5ndGg+MCYmdy5ldmVyeShlPT5lLmdyb3VwaW5nPT09YHBlcmNlbnRTdGFja2VkYCksRT10LnNlY29uZGFyeVZhbEF4aXMmJnQuc2VyaWVzLnNvbWUoKGUsbik9Pmdbbl18fHQucGxvdEdyb3Vwcz09bnVsbCYmZS51c2VTZWNvbmRhcnlBeGlzPT09ITApP3Quc2Vjb25kYXJ5VmFsQXhpczpudWxsLEQ9bmV3IE1hcCh0LnNlcmllcy5tYXAoKGUsdCk9PltlLHRdKSksTz1lPT57bGV0IG49RC5nZXQoZSk/Py0xO3JldHVybiBFIT1udWxsJiYoZ1tuXXx8dC5wbG90R3JvdXBzPT1udWxsJiZlLnVzZVNlY29uZGFyeUF4aXM9PT0hMCl9LGs9MS8wLEE9LTEvMDtmb3IobGV0IGU9MDtlPHU7ZSsrKWZvcihsZXQgbj0wO248dC5zZXJpZXMubGVuZ3RoO24rKyl7aWYoTyh0LnNlcmllc1tuXSl8fCFtW25dJiZ0LnNlcmllc1tuXS52YWx1ZXNbZV09PW51bGwpY29udGludWU7bGV0IHI9YihuLGUpO2s9TWF0aC5taW4oayxyKSxBPU1hdGgubWF4KEEscil9Zm9yKGxldCBlPTA7ZTx0LnNlcmllcy5sZW5ndGg7ZSsrKXtsZXQgbj10LnNlcmllc1tlXTtPKG4pfHxuYyhuLGB5YCx0PT5uLnZhbHVlc1t0XT09bnVsbD9udWxsOmIoZSx0KSxlPT57az1NYXRoLm1pbihrLGUpLEE9TWF0aC5tYXgoQSxlKX0pfWlzRmluaXRlKGspfHwoaz0wLEE9MSk7bGV0IGo9dC52YWxBeGlzTG9nQmFzZSE9bnVsbCYmdC52YWxBeGlzTG9nQmFzZT49Mjt0LnZhbE1pbj09bnVsbD9TJiZrPjAmJiFqJiYoaz0wKTprPVM/dC52YWxNaW4qMTAwOnQudmFsTWluLHQudmFsTWF4PT1udWxsP1MmJkE8MCYmKEE9MCk6QT1TP3QudmFsTWF4KjEwMDp0LnZhbE1heDtsZXQgTT11YyhlLHQscyxjLHIpLE49TS5mb250UHgsUD1NLnRvcFBhZCxGPU0uYmFuZEgsST1ocyhlLHQscyxjLC4yMixyKSx7bGVnUmlnaHRXOkwsbGVnTGVmdFc6UixsZWdUb3BIOnosbGVnQm90dG9tSDpCfT1QdChJLHQubGVnZW5kT3ZlcmxheT09PSEwKSxlZT1Zcyh0LmNhdEF4aXNGb250U2l6ZUhwdCxjLHIpLFY9WXModC52YWxBeGlzRm9udFNpemVIcHQsYyxyKSxIPXp0KHQscyxjLHIpLFU9SC5jYXRGb250UHgsVz1ILnZhbEZvbnRQeCxHPUguY2F0QmFuZEgsSz1ILnZhbEJhbmRXLHRlPVlvKHQpLG5lPVpvKHQscikscmU9UW8oZSx0LHIpLGllPUYreitWLzIrMixhZT0odGU/bmU6VnQoZWUsdC5jYXRBeGlzTGFiZWxPZmZzZXRQZXJjZW50KSkrRytCLG9lPWMtaWUtYWUsc2U9cmMoRSx0LnNlcmllcyxvZS9yLGB5YCxULCExLChlLG4pPT5nW25dfHx0LnBsb3RHcm91cHM9PW51bGwmJnQuc2VyaWVzW25dLnVzZVNlY29uZGFyeUF4aXM9PT0hMCwoZSx0LG4pPT4hbVtuXSYmZS52YWx1ZXNbdF09PW51bGw/bnVsbDpiKG4sdCkpLGNlPU1hdGgubWF4KDgsTWF0aC5taW4oMTEsYy8yMCkpLGxlPUF0KEU/LmZvbnRTaXplSHB0LHIpPz9jZSx1ZT0wO2lmKEUmJnNlJiYhRS5oaWRkZW4pe2xldCBuPWUuZm9udDtlLmZvbnQ9SG8obGUsJCh0LEUuZm9udEZhY2UsYG1pbm9yYCksITEsRS5mb250SXRhbGljPz8hMSk7bGV0IHI9MDtmb3IobGV0IG4gb2Ygc2UubWFqb3JMaW5lcylyPU1hdGgubWF4KHIsZS5tZWFzdXJlVGV4dCh6cyhuLEUuZm9ybWF0Q29kZT8/bnVsbCx0LmRhdGUxOTA0LEUuZGlzcGxheVVuaXRzKSkud2lkdGgpO3VlPXIrMTgsZS5mb250PW59bGV0IHE9RSYmRS50aXRsZT9GdChFLnRpdGxlRm9udFNpemVIcHQscikrODowLGRlPVIrTWF0aC5tYXgoVioyLjIrMTArSyxyZSksSj1MK3MqLjA1K3VlK3EsWT1Icyh0LGssQSxvZS9yLFMpLGZlPTA7aWYoIXQudmFsQXhpc0hpZGRlbiYmdC52YWxBeGlzVGlja0xhYmVsUG9zIT09YG5vbmVgJiZ0LnBsb3RBcmVhTWFudWFsTGF5b3V0IT1udWxsJiZ0LnBsb3RBcmVhTWFudWFsTGF5b3V0LmxheW91dFRhcmdldCE9PWBpbm5lcmApe2xldCBuPWUuZm9udDtlLmZvbnQ9SG8oViwkKHQsdC52YWxBeGlzRm9udEZhY2UsYG1pbm9yYCksdC52YWxBeGlzRm9udEJvbGQ/PyExLHQudmFsQXhpc0ZvbnRJdGFsaWM/PyExKTtmb3IobGV0IG4gb2YgWS5tYWpvckxpbmVzKWZlPU1hdGgubWF4KGZlLGUubWVhc3VyZVRleHQoTHModCxuLFMpKS53aWR0aCk7ZS5mb250PW59bGV0IHBlPXt0OmllLHI6SixiOmFlLGw6ZGV9LG1lPVd0KHt2YWxBeGlzSGlkZGVuOnQudmFsQXhpc0hpZGRlbixjYXRBeGlzSGlkZGVuOnQuY2F0QXhpc0hpZGRlbix2YWxMYWJlbFdpZHRoOmZlLHZhbExhYmVsRm9udFB4OlYsY2F0TGFiZWxGb250UHg6ZWUsdmFsTGFiZWxHYXBQeDp0LnZhbEF4aXNGb250U2l6ZUhwdD09bnVsbD82OlV0KFYpLGNhdExhYmVsR2FwUHg6dC5jYXRBeGlzRm9udFNpemVIcHQ9PW51bGw/U3QoNSx0LmNhdEF4aXNMYWJlbE9mZnNldFBlcmNlbnQpOlN0KEh0KGVlKSx0LmNhdEF4aXNMYWJlbE9mZnNldFBlcmNlbnQpLG91dGVyVGV4dE1hcmdpblB4Olp0KnIsdmFsVGl0bGVCYW5kVzpLLGNhdFRpdGxlQmFuZEg6RyxzZWNvbmRhcnlCYW5kVzp1ZStxfSksaGU9S3QodCxhLG8scyxjLHIse3RpdGxlQmFuZDpNLGxlZ2VuZFNpZGVSZXNlcnZlRnJhYzouMjIsbGVnZW5kUmVzZXJ2ZTpJLHBhZDpwZSxob25vclBsb3RBcmVhTWFudWFsTGF5b3V0OiEwLG1hbnVhbE91dGVySW5zZXRzOm1lfSksZ2U9dWMoZSx0LGhlLnBsb3RSZWN0LnB3LGMscik7TWF0aC5hYnMoZ2UuYmFuZEgtTS5iYW5kSCk+LjAxJiYoTT1nZSxOPU0uZm9udFB4LFA9TS50b3BQYWQsRj1NLmJhbmRILGllPUYreitWLzIrMixwZS50PWllLGhlPUt0KHQsYSxvLHMsYyxyLHt0aXRsZUJhbmQ6TSxsZWdlbmRTaWRlUmVzZXJ2ZUZyYWM6LjIyLGxlZ2VuZFJlc2VydmU6SSxwYWQ6cGUsaG9ub3JQbG90QXJlYU1hbnVhbExheW91dDohMCxtYW51YWxPdXRlckluc2V0czptZX0pKTtsZXR7cHgwOl9lLHB5MDp2ZSxwdzpYfT1oZS5wbG90UmVjdCx7cGg6Wn09aGUucGxvdFJlY3Q7aWYoZmMoZSx0LHQudGl0bGVNYW51YWxMYXlvdXR8fCF0LnRpdGxlUmljaFJ1bnM/Lmxlbmd0aD9hOl9lLG8sdC50aXRsZU1hbnVhbExheW91dHx8IXQudGl0bGVSaWNoUnVucz8ubGVuZ3RoP3M6WCxjLG8rUCxOKSxYPD0wfHxaPD0wKXJldHVybjtsZXQgeWU9dGU/JG8oZSx0LFgvdSxyKTpudWxsO3llJiZ5ZS50b3RhbEhlaWdodD5uZSYmKFo9TWF0aC5tYXgoMSxaLSh5ZS50b3RhbEhlaWdodC1uZSkpKSwkYShlLHQsX2UsdmUsWCxaLHIsaSk7bGV0IFE9SHModCxrLEEsWi9yLFMpO2lmKFEubWF4LVEubWluPT09MClyZXR1cm47bGV0IGJlPWU9PnZlK1otUS5mcmFjKGUpKloseGU9c2U/c2UubWFrZVRvWSh2ZSxaKTpiZSxTZT1lPT5PKGUpP3hlOmJlLENlPWJlKEtjKHQsUS5taW4sUS5tYXgpKSx3ZT1FJiZzZT94ZShHYyh0LnNlY29uZGFyeUNhdEF4aXM/LmNyb3NzZXNBdCx0LnNlY29uZGFyeUNhdEF4aXM/LmNyb3NzZXMsc2UubWluLHNlLm1heCkpOkNlLFRlPWU9Pk8oZSk/d2U6Q2UsRWU9YWEodC5jYXRBeGlzTGluZUNvbG9yLHQuY2F0QXhpc0xpbmVXaWR0aEVtdSxyKSxEZT1hYSh0LnZhbEF4aXNMaW5lQ29sb3IsdC52YWxBeGlzTGluZVdpZHRoRW11LHIpLE9lPXQuY2F0QXhpc0xpbmVDb2xvcj09bnVsbD92b2lkIDA6RWUuY29sb3Isa2U9dC5jYXRBeGlzTGluZVdpZHRoRW11PT1udWxsP3ZvaWQgMDpFZS53aWR0aCxBZT10LnZhbEF4aXNMaW5lQ29sb3I9PW51bGw/dm9pZCAwOkRlLmNvbG9yLGplPXQudmFsQXhpc0xpbmVXaWR0aEVtdT09bnVsbD92b2lkIDA6RGUud2lkdGgsTWU9dGModCxsKSxOZT1zYSh0KSxQZT1Qcyh0KSxGZT1NZT9lPT5fZStNZS5wb3NpdGlvbnNbZV0qWDpOZT9lPT5fZSsoKFBlP3UtMS1lOmUpKy41KS91Klg6ZT0+e2xldCB0PVBlP3UtMS1lOmU7cmV0dXJuIF9lKyh1PT09MT9YLzI6dC8odS0xKSpYKX07aWYoIXQudmFsQXhpc0hpZGRlbil7ZS5mb250PUhvKFYsJCh0LHQudmFsQXhpc0ZvbnRGYWNlLGBtaW5vcmApLHQudmFsQXhpc0ZvbnRCb2xkPz8hMSx0LnZhbEF4aXNGb250SXRhbGljPz8hMSksZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7bGV0IG49VHModCxyKSxpPUVzKHQscik7Zm9yKGxldCB0IG9mIFEubWlub3JMaW5lcyl3cyhlLF9lLFgsYmUodCksITEsaSk7bGV0IGE9RnModCksbz10LnZhbEF4aXNUaWNrTGFiZWxQb3MhPT1gbm9uZWA7Zm9yKGxldCBpIG9mIFEubWFqb3JMaW5lcyl7bGV0IHM9YmUoaSk7aWYoYSYmd3MoZSxfZSxYLHMsaT09PTAsbiksYnMoZSx0LnZhbEF4aXNNYWpvclRpY2tNYXJrLGB2YWxgLF9lLHMsQWUsamUsITEsdC52YWxBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC52YWxBeGlzTGluZURhc2gpLG8pe2UuZmlsbFN0eWxlPXQudmFsQXhpc0ZvbnRDb2xvcj9gIyR7dC52YWxBeGlzRm9udENvbG9yfWA6YCM1NTVgLGUudGV4dEFsaWduPWByaWdodGA7bGV0IG49dC52YWxBeGlzRm9udFNpemVIcHQ9PW51bGw/NjpVdChWKTtlLmZpbGxUZXh0KExzKHQsaSxTKSxfZS1uLHMpfX1pZih0LnZhbEF4aXNNaW5vclRpY2tNYXJrJiZ0LnZhbEF4aXNNaW5vclRpY2tNYXJrIT09YG5vbmVgKWZvcihsZXQgbiBvZiBRLm1pbm9yVGlja3MpYnMoZSx0LnZhbEF4aXNNaW5vclRpY2tNYXJrLGB2YWxgLF9lLGJlKG4pLEFlLGplLCExLHQudmFsQXhpc0xpbmVIaWRkZW4sYG1pbm9yYCxyLHQudmFsQXhpc0xpbmVEYXNoKX1pZihFJiZzZSYmaWMoZSxFLHNlLHhlLF9lLFgsciksIXQuY2F0QXhpc0hpZGRlbiYma3ModCkpe2xldCBuPUFzKHQscik7ZS5zdHJva2VTdHlsZT1uLmNvbG9yLGUubGluZVdpZHRoPW4ud2lkdGg7bGV0IGk9bi5kYXNoLmxlbmd0aD4wJiZlLmdldExpbmVEYXNoP2UuZ2V0TGluZURhc2goKTpbXTtuLmRhc2gubGVuZ3RoPjAmJmUuc2V0TGluZURhc2gobi5kYXNoKTtsZXQgYT1NZT9NZS5tYWpvclRpY2tzLm1hcChlPT5lLmZyYWN0aW9uKTpNcyh0LHUpO2ZvcihsZXQgdCBvZiBhKXtsZXQgbj1fZSt0Klg7ZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhuLHZlKSxlLmxpbmVUbyhuLHZlK1opLGUuc3Ryb2tlKCl9bi5kYXNoLmxlbmd0aD4wJiZlLnNldExpbmVEYXNoKGkpfSF0LmNhdEF4aXNIaWRkZW4mJiF0LmNhdEF4aXNMaW5lSGlkZGVuJiZ4cyhlLF9lLENlLF9lK1gsQ2UsRWUuY29sb3IsRWUud2lkdGgsdC5jYXRBeGlzTGluZURhc2gpLCF0LnZhbEF4aXNIaWRkZW4mJiF0LnZhbEF4aXNMaW5lSGlkZGVuJiZ4cyhlLF9lLHZlLF9lLHZlK1osRGUuY29sb3IsRGUud2lkdGgsdC52YWxBeGlzTGluZURhc2gpO2xldCBJZT1NZT8oTWUuY2F0ZWdvcnlCYW5kRnJhY3Rpb25zWzBdPz8wKSpYOk5lP1gvdTp1PjE/WC8odS0xKTpYLExlPW5ldyBNYXAodC5zZXJpZXMubWFwKChlLHQpPT5bZSx0XSkpO1djKGUsdCx1LEZlLFNlLFRlLChlLHQpPT57bGV0IG49TGUuZ2V0KGUpO3JldHVybiBuPT1udWxsP251bGw6YihuLHQpfSxJZSxyLGksYGJhY2tncm91bmRgKTtsZXQgUmU9TWF0aC5tYXgoMSwyLjI1KnIpLHplPU1hdGgubWF4KDIsMi41KnIpLEJlPVlzKHQuZGF0YUxhYmVsRm9udFNpemVIcHQsYyxyKSxWZT1bXTtmb3IobGV0IGY9MDtmPHQuc2VyaWVzLmxlbmd0aDtmKyspe2xldCBwPXQuc2VyaWVzW2ZdLGc9bVtmXSx2PV9bZl0seT16byhwLmRhdGFQb2ludE92ZXJyaWRlcykseD1SbyhmLHApLFM9U2UocCk7ZS5zdHJva2VTdHlsZT1wLmxpbmVDb2xvcj9gIyR7cC5saW5lQ29sb3J9YDp4LGUubGluZVdpZHRoPXAubGluZVdpZHRoRW11PT1udWxsP1JlOmlhKHAubGluZVdpZHRoRW11LHIpLGUuc2V0TGluZURhc2goRGwocC5jaGFydGV4U3R5bGU/LmxpbmVEYXNoPz92b2lkIDAsZS5saW5lV2lkdGgpKSxlLmxpbmVDYXA9cC5jaGFydGV4U3R5bGU/LmxpbmVDYXA9PT1gcm5kYD9gcm91bmRgOnAuY2hhcnRleFN0eWxlPy5saW5lQ2FwPT09YHNxYD9gc3F1YXJlYDpgYnV0dGAsZS5saW5lSm9pbj1wLmNoYXJ0ZXhTdHlsZT8ubGluZUpvaW49PT1gcm91bmRgfHxwLmNoYXJ0ZXhTdHlsZT8ubGluZUpvaW49PT1gYmV2ZWxgP3AuY2hhcnRleFN0eWxlLmxpbmVKb2luOmBtaXRlcmAsZS5iZWdpblBhdGgoKTtsZXQgdz1wLnNtb290aD09PSEwLFQ9W10sRD0oKT0+e1QubGVuZ3RoIT09MCYmKGUubW92ZVRvKFRbMF0ueCxUWzBdLnkpLEVsKGUsVCx3KSxUPVtdKX07Zm9yKGxldCBlPTA7ZTx1O2UrKyl7aWYoIWcmJnAudmFsdWVzW2VdPT1udWxsKXtpZihDPT09YGdhcGApe0QoKTtjb250aW51ZX1pZihDPT09YHNwYW5gKWNvbnRpbnVlfVQucHVzaCh7eDpGZShlKSx5OlMoYihmLGUpKX0pfUQoKSxwLmxpbmVIaWRkZW4hPT0hMCYmZS5zdHJva2UoKTtsZXQgaz1lPT5iKGYsZSk7Zm9yKGxldCBuIG9mIHAuZXJyQmFycz8/W10pa2woZSxwLENjKHQsbiksdSxGZSxTLGsseCk7ZS5maWxsU3R5bGU9eDtsZXQgQT1wLnNob3dNYXJrZXIhPT0hMSYmcC5tYXJrZXJTeW1ib2whPT1gbm9uZWAsaj1BfHxrbihwKSxNPXhuKHApLE49KHAuZGF0YUxhYmVsT3ZlcnJpZGVzPy5sZW5ndGg/PzApPjB8fHAuc2VyaWVzRGF0YUxhYmVscyE9bnVsbDtOJiZWZS5wdXNoKCgpPT57amwoZSxwLGwsdSxGZSxTLGssWixyLHQuZGF0ZTE5MDQ/PyExLGd8fEM9PT1gemVyb2AsJCh0LHQuZGF0YUxhYmVsRm9udEZhY2UsYG1pbm9yYCksdC5kYXRhTGFiZWxQb3NpdGlvbj8/YHJgLHt4OmEseTp2ZSx3OnMsaDpafSx7eDphLHk6byx3OnMsaDpjfSxoW2ZdJiZ2P2U9PihwLnZhbHVlc1tlXT8/MCkvdltlXTp2b2lkIDAsZT0+e2lmKCFqKXJldHVybiAwO2xldCB0PXkuZ2V0KGUpO3JldHVybiFNJiYhU24odCk/emU6TW4ocCx0LGBjaXJjbGVgLEEpPT09YG5vbmVgPzA6KHQ/Lm1hcmtlclNpemU/P3AubWFya2VyU2l6ZT8/NSkvMipyfSxlPT4kKHQsZSxgbWlub3JgKSxPKHApP0U/LmRpc3BsYXlVbml0czp0LnZhbEF4aXNEaXNwbGF5VW5pdHMsZT0+ZChmLGUpLGU9PmhjKHQsZSxPKHApJiZzZT9zZS5tYXg6US5tYXgpLGkpfSk7Zm9yKGxldCB0PTA7dDx1O3QrKyl7aWYoIWcmJnAudmFsdWVzW3RdPT1udWxsJiZDIT09YHplcm9gKWNvbnRpbnVlO2xldCBuPWIoZix0KTtpZihqKXtsZXQgYT15LmdldCh0KTtpZihNfHxTbihhKSl7bGV0IG89TW4ocCxhLGBjaXJjbGVgLEEpO2lmKG8hPT1gbm9uZWApe2xldCBzPWE/Lm1hcmtlclNpemU/P3AubWFya2VyU2l6ZT8/NSxjPVBuKHAsYSx0LHgpLGw9YT8ubWFya2VyTGluZT8/cC5tYXJrZXJMaW5lPz9udWxsLHU9YT8ubWFya2VyTGluZVdpZHRoRW11Pz9wLm1hcmtlckxpbmVXaWR0aEVtdTtfbChlLEZlKHQpLFMobiksbyxzLGMsbCxyLHU9PW51bGw/dm9pZCAwOmlhKHUsciksTm4ocCxhLHQpLGkpfX1lbHNlIGUuYmVnaW5QYXRoKCksZS5hcmMoRmUodCksUyhuKSx6ZSwwLE1hdGguUEkqMiksZS5maWxsKCl9fXQuc2hvd0RhdGFMYWJlbHMmJiFOJiZWZS5wdXNoKCgpPT57Zm9yKGxldCBuPTA7bjx1O24rKyl7aWYoIWcmJnAudmFsdWVzW25dPT1udWxsJiZDIT09YHplcm9gKWNvbnRpbnVlO2xldCByPWIoZixuKSxpPXFhKHtzaG93VmFsdWU6ITAsc291cmNlVmFsdWU6cC52YWx1ZXNbbl0/PzAsdmFsdWVEaXZpc29yOlJzKE8ocCk/RT8uZGlzcGxheVVuaXRzOnQudmFsQXhpc0Rpc3BsYXlVbml0cyksZm9ybWF0Q29kZTp0LmRhdGFMYWJlbEZvcm1hdENvZGU/P3AudmFsRm9ybWF0Q29kZT8/bnVsbCxkYXRlMTkwNDp0LmRhdGUxOTA0fSk7YmwoZSxGZShuKSxTKHIpLGksdC5kYXRhTGFiZWxQb3NpdGlvbj8/YHJgLEJlLHQuZGF0YUxhYmVsRm9udENvbG9yPz92b2lkIDAsdC5kYXRhTGFiZWxGb250Qm9sZD8/ITEsJCh0LHQuZGF0YUxhYmVsRm9udEZhY2UsYG1pbm9yYCksaj96ZSsxOjIse3g6X2UseTp2ZSx3OlgsaDpafSl9fSksS3MoZSxwLHgsRmUsUyxyLHZvaWQgMCx7Y2hhcnQ6dCxjaGFydFJlY3Q6bixwbG90UmVjdDp7eDpfZSx5OnZlLHc6WCxoOlp9LHNoYXBlUm90YXRpb25EZWc6aX0pfVdjKGUsdCx1LEZlLFNlLFRlLChlLHQpPT57bGV0IG49TGUuZ2V0KGUpO3JldHVybiBuPT1udWxsP251bGw6YihuLHQpfSxJZSxyLGksYGZvcmVncm91bmRgKTtmb3IobGV0IGUgb2YgVmUpZSgpO2lmKCF0LmNhdEF4aXNIaWRkZW4pe2xldCBuPXQuY2F0QXhpc0ZvbnRDb2xvcj9gIyR7dC5jYXRBeGlzRm9udENvbG9yfWA6YCM1NTVgO2UuZmlsbFN0eWxlPW4sZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YHRvcGAsZS5mb250PUhvKGVlLCQodCx0LmNhdEF4aXNGb250RmFjZSxgbWlub3JgKSx0LmNhdEF4aXNGb250Qm9sZD8/ITEsdC5jYXRBeGlzRm9udEl0YWxpYz8/ITEpO2xldCBpPU1hdGgubWF4KDEsTWF0aC5mbG9vcih0LmNhdEF4aXNUaWNrTWFya1NraXA/PzEpKSxhPU1lP01lLm1ham9yVGlja3MubWFwKGU9Pl9lK2UuZnJhY3Rpb24qWCk6QXJyYXkuZnJvbSh7bGVuZ3RoOk1hdGguY2VpbCh1L2kpfSwoZSx0KT0+RmUodCppKSk7Zm9yKGxldCBuIG9mIGEpYnMoZSx0LmNhdEF4aXNNYWpvclRpY2tNYXJrLGBjYXRgLENlLG4sT2Usa2UsITEsdC5jYXRBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC5jYXRBeGlzTGluZURhc2gpO2lmKHQuY2F0QXhpc01pbm9yVGlja01hcmsmJnQuY2F0QXhpc01pbm9yVGlja01hcmshPT1gbm9uZWAmJk1lKWZvcihsZXQgbiBvZiBNZS5taW5vclRpY2tzKWJzKGUsdC5jYXRBeGlzTWlub3JUaWNrTWFyayxgY2F0YCxDZSxfZStuLmZyYWN0aW9uKlgsT2Usa2UsITEsdC5jYXRBeGlzTGluZUhpZGRlbixgbWlub3JgLHIsdC5jYXRBeGlzTGluZURhc2gpO2xldCBvPSF0ZSYmUXModCkscz1NYXRoLm1heCgxLE1hdGguZmxvb3IodC5jYXRBeGlzVGlja0xhYmVsU2tpcD8/MSkpLGM9JHModCksZD1NZT9NZS5tYWpvclRpY2tzLm1hcChlPT4oe2xhYmVsOnhhKFN0cmluZyhlLnNlcmlhbCksdC5jYXRBeGlzRm9ybWF0Q29kZSx0LmRhdGUxOTA0KSx4Ol9lK2UuZnJhY3Rpb24qWCxjYXRlZ29yeUluZGV4Oi0xfSkpOkFycmF5LmZyb20oe2xlbmd0aDpNYXRoLmNlaWwodS9zKX0sKGUsbik9PntsZXQgcj1uKnM7cmV0dXJue2xhYmVsOnhhKChsW3JdPz9gYCkudG9TdHJpbmcoKSx0LmNhdEF4aXNGb3JtYXRDb2RlLHQuZGF0ZTE5MDQpLHg6RmUociksY2F0ZWdvcnlJbmRleDpyfX0pO2ZvcihsZXQgciBvZiBkKXtsZXQgaT1yLmNhdGVnb3J5SW5kZXg8MD9udWxsOkV0KHIuY2F0ZWdvcnlJbmRleCx1LHNhKHQpLFBzKHQpLHQuY2F0QXhpc0xhYmVsQWxpZ25tZW50KSxhPWk/X2UraS5mcmFjdGlvbipYOnIueDtpZighbyljb250aW51ZTtlLnRleHRBbGlnbj1pPy50ZXh0QWxpZ24/P2BjZW50ZXJgLGUuZmlsbFN0eWxlPW47bGV0IHM9ci5sYWJlbDtpZighcyljb250aW51ZTtsZXQgbD1TdCh0LmNhdEF4aXNGb250U2l6ZUhwdD09bnVsbD81Okh0KGVlKSx0LmNhdEF4aXNMYWJlbE9mZnNldFBlcmNlbnQpLGQ9dC5jYXRBeGlzVGlja0xhYmVsUG9zPz9gbmV4dFRvYDtlYyhlLHMsYSwoZD09PWBuZXh0VG9gP0NlOmQ9PT1gaGlnaGA/dmU6dmUrWikrbCxjKX19aWYoRSYmc2Upe2xldCBpPXQudmFsQXhpc0ZvbnRDb2xvcj9gIyR7dC52YWxBeGlzRm9udENvbG9yfWA6YCM1NTVgO2FjKGUsdCxFLHNlLHhlLG4sX2UsdmUsWCxaLHIsbGUsdWUsaSx0LmRhdGUxOTA0KX15ZSYmZXMoZSx0LHllLF9lLHZlK1osWCxhK1IsciksdnMoZSx0LEksYSxvLHMsYyxfZSx2ZSxYLFosRisyLHIpLEpvKGUsdCxhLG8scyxjLF9lLHZlLFgsWixSLEIsVSxXKX1mdW5jdGlvbiBKYyhlLHQsbixyLGk9MCl7bGV0e3g6YSx5Om8sdzpzLGg6Y309bixsPXBjKHQpLHU9bC5sZW5ndGg7aWYodT09PTApcmV0dXJuO2xldCBkPWNzKHQsciksZj10LnBsb3RHcm91cHM/LmZpbmQoZT0+ZS5raW5kPT09YHN0b2NrYCkscD1mP3Quc2VyaWVzLnNsaWNlKGYuc2VyaWVzU3RhcnQsZi5zZXJpZXNTdGFydCtmLnNlcmllc0NvdW50KTp0LnNlcmllcyxtPXQucGxvdEdyb3Vwcz09bnVsbD9bXTp0LnBsb3RHcm91cHMuZmlsdGVyKGU9PmUua2luZD09PWBsaW5lYCkuZmxhdE1hcChlPT50LnNlcmllcy5zbGljZShlLnNlcmllc1N0YXJ0LGUuc2VyaWVzU3RhcnQrZS5zZXJpZXNDb3VudCkpLGg9Wy4uLnAsLi4ubV0sZz1uZXcgTWFwKHQuc2VyaWVzLm1hcCgoZSx0KT0+W2UsdF0pKSxfPXAubGVuZ3RoPj00LHY9Xz8wOi0xLHk9KyEhXyxiPV8/MjoxLHg9Xz8zOjIsUz1wW3ldLEM9cFtiXSx3PXBbeF0sVD12Pj0wP3Bbdl06dm9pZCAwLEU9cFswXSxEPXAuYXQoLTEpLE89dC5zZWNvbmRhcnlWYWxBeGlzJiZoLnNvbWUoZT0+ZS51c2VTZWNvbmRhcnlBeGlzPT09ITApP3Quc2Vjb25kYXJ5VmFsQXhpczpudWxsLGs9ZT0+TyE9bnVsbCYmZS51c2VTZWNvbmRhcnlBeGlzPT09ITAsQT11YyhlLHQscyxjLHIpLGo9QS5mb250UHgsTT1BLnRvcFBhZCxOPUEuYmFuZEgsUD1ocyhlLHQscyxjLC4yMixyKSx7bGVnUmlnaHRXOkYsbGVnTGVmdFc6SSxsZWdCb3R0b21IOkwsbGVnVG9wSDpSfT1QdChQLHQubGVnZW5kT3ZlcmxheT09PSEwKSx6PVlzKHQuY2F0QXhpc0ZvbnRTaXplSHB0LGMsciksQj1Zcyh0LnZhbEF4aXNGb250U2l6ZUhwdCxjLHIpLGVlPXp0KHQscyxjLHIpLFY9ZWUuY2F0Rm9udFB4LEg9ZWUudmFsRm9udFB4LFU9ZWUuY2F0QmFuZEgsVz1lZS52YWxCYW5kVyxHPVlvKHQpLEs9Wm8odCxyKSx0ZT1RbyhlLHQsciksbmU9TitSK0IvMisyLHJlPShHP0s6VnQoeix0LmNhdEF4aXNMYWJlbE9mZnNldFBlcmNlbnQpKStVK0wsaWU9cmMoTyxoLChjLW5lLXJlKS9yKSxhZT1NYXRoLm1heCg4LE1hdGgubWluKDExLGMvMjApKSxvZT1BdChPPy5mb250U2l6ZUhwdCxyKT8/YWUsc2U9MDtpZihPJiZpZSYmIU8uaGlkZGVuKXtsZXQgbj1lLmZvbnQ7ZS5mb250PUhvKG9lLCQodCxPLmZvbnRGYWNlLGBtaW5vcmApLE8uZm9udEJvbGQ/PyExLE8uZm9udEl0YWxpYz8/ITEpO2xldCByPTA7Zm9yKGxldCBuIG9mIGllLm1ham9yTGluZXMpcj1NYXRoLm1heChyLGUubWVhc3VyZVRleHQoenMobixPLmZvcm1hdENvZGU/P251bGwsdC5kYXRlMTkwNCxPLmRpc3BsYXlVbml0cykpLndpZHRoKTtzZT1yKzE4LGUuZm9udD1ufWxldCBjZT1PPy50aXRsZT9GdChPLnRpdGxlRm9udFNpemVIcHQscikrODowLGxlPXt0Om5lLHI6RitzKi4wNStzZStjZSxiOnJlLGw6SStNYXRoLm1heChCKjIuMisxMCtXLHRlKX07ZmMoZSx0LGEsbyxzLGMsbytNLGopO2xldCB1ZT1LdCh0LGEsbyxzLGMscix7dGl0bGVCYW5kOkEsbGVnZW5kU2lkZVJlc2VydmVGcmFjOi4yMixsZWdlbmRSZXNlcnZlOlAscGFkOmxlLGhvbm9yUGxvdEFyZWFNYW51YWxMYXlvdXQ6ITB9KSx7cHgwOnEscHkwOmRlLHB3Okp9PXVlLnBsb3RSZWN0LHtwaDpZfT11ZS5wbG90UmVjdDtpZihKPD0wfHxZPD0wKXJldHVybjtsZXQgZmU9Rz8kbyhlLHQsSi91LHIpOm51bGw7ZmUmJmZlLnRvdGFsSGVpZ2h0PksmJihZPU1hdGgubWF4KDEsWS0oZmUudG90YWxIZWlnaHQtSykpKSwkYShlLHQscSxkZSxKLFkscixpKTtsZXQgcGU9MS8wLG1lPS0xLzA7Zm9yKGxldCBlIG9mIGgpaWYoIWsoZSkpZm9yKGxldCB0PTA7dDx1O3QrKyl7bGV0IG49ZS52YWx1ZXNbdF07biE9bnVsbCYmKHBlPU1hdGgubWluKHBlLG4pLG1lPU1hdGgubWF4KG1lLG4pKX1mb3IobGV0IGUgb2YgaClrKGUpfHxuYyhlLGB5YCx0PT5lLnZhbHVlc1t0XT8/bnVsbCxlPT57cGU9TWF0aC5taW4ocGUsZSksbWU9TWF0aC5tYXgobWUsZSl9KTtpc0Zpbml0ZShwZSl8fChwZT0wLG1lPTEpLHQudmFsTWluIT1udWxsJiYocGU9dC52YWxNaW4pLHQudmFsTWF4IT1udWxsJiYobWU9dC52YWxNYXgpO2xldCBoZT1Icyh0LHBlLG1lLFkvcik7aWYoaGUubWF4LWhlLm1pbj09PTApcmV0dXJuO2xldCBnZT1lPT5kZStZLWhlLmZyYWMoZSkqWSxfZT1pZT8ubWFrZVRvWShkZSxZKT8/Z2UsdmU9ZT0+ayhlKT9fZTpnZSxYPXNhKHQpLFo9UHModCkseWU9dGModCxsKSxRPXllP2U9PnEreWUucG9zaXRpb25zW2VdKko6WD9lPT5xKygoWj91LTEtZTplKSsuNSkvdSpKOmU9PntsZXQgdD1aP3UtMS1lOmU7cmV0dXJuIHErKHU9PT0xP0ovMjp0Lyh1LTEpKkopfTtpZighdC52YWxBeGlzSGlkZGVuKXtlLmZvbnQ9SG8oQiwkKHQsdC52YWxBeGlzRm9udEZhY2UsYG1pbm9yYCksdC52YWxBeGlzRm9udEJvbGQ/PyExLHQudmFsQXhpc0ZvbnRJdGFsaWM/PyExKSxlLnRleHRCYXNlbGluZT1gbWlkZGxlYDtsZXQgbj1Ucyh0LHIpLGk9RXModCxyKTtmb3IobGV0IHQgb2YgaGUubWlub3JMaW5lcyl3cyhlLHEsSixnZSh0KSwhMSxpKTtsZXQgYT1Gcyh0KSxvPXQudmFsQXhpc1RpY2tMYWJlbFBvcyE9PWBub25lYDtmb3IobGV0IGkgb2YgaGUubWFqb3JMaW5lcyl7bGV0IHM9Z2UoaSk7YSYmd3MoZSxxLEoscyxpPT09MCxuKSxicyhlLHQudmFsQXhpc01ham9yVGlja01hcmssYHZhbGAscSxzLHZvaWQgMCx2b2lkIDAsITEsdC52YWxBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC52YWxBeGlzTGluZURhc2gpLG8mJihlLmZpbGxTdHlsZT10LnZhbEF4aXNGb250Q29sb3I/YCMke3QudmFsQXhpc0ZvbnRDb2xvcn1gOmAjNTU1YCxlLnRleHRBbGlnbj1gcmlnaHRgLGUuZmlsbFRleHQoTHModCxpLCExKSxxLTYscykpfWZvcihsZXQgbiBvZiBoZS5taW5vclRpY2tzKWJzKGUsdC52YWxBeGlzTWlub3JUaWNrTWFyayxgdmFsYCxxLGdlKG4pLHZvaWQgMCx2b2lkIDAsITEsdC52YWxBeGlzTGluZUhpZGRlbixgbWlub3JgLHIsdC52YWxBeGlzTGluZURhc2gpfU8mJmllJiZpYyhlLE8saWUsX2UscSxKLHIpO2xldCBiZT1hYSh0LmNhdEF4aXNMaW5lQ29sb3IsdC5jYXRBeGlzTGluZVdpZHRoRW11LHIpLHhlPWFhKHQudmFsQXhpc0xpbmVDb2xvcix0LnZhbEF4aXNMaW5lV2lkdGhFbXUscik7aWYoIXQuY2F0QXhpc0hpZGRlbiYmIXQuY2F0QXhpc0xpbmVIaWRkZW4mJnhzKGUscSxkZStZLHErSixkZStZLGJlLmNvbG9yLGJlLndpZHRoLHQuY2F0QXhpc0xpbmVEYXNoKSwhdC52YWxBeGlzSGlkZGVuJiYhdC52YWxBeGlzTGluZUhpZGRlbiYmeHMoZSxxLGRlLHEsZGUrWSx4ZS5jb2xvcix4ZS53aWR0aCx0LnZhbEF4aXNMaW5lRGFzaCksdC5zdG9ja0Ryb3BMaW5lcyl7bGV0IG49YmModCx0LnN0b2NrRHJvcExpbmVzLGBkcm9wTGluZWApLGk9ey4uLm4sY29sb3I6bi5jb2xvcj8/KG4ucGFpbnRBdXRob3JlZD09PSEwP251bGw6dC5zdG9ja0F1dG9tYXRpY1N0eWxlPy5saW5lQ29sb3IpLHdpZHRoRW11Om4ud2lkdGhFbXU/P3Quc3RvY2tBdXRvbWF0aWNTdHlsZT8ubGluZVdpZHRoRW11fTsoaS5wYWludEF1dGhvcmVkIT09ITB8fGkuY29sb3IhPW51bGwpJiYoaS5jb2xvciE9bnVsbHx8aS53aWR0aEVtdSE9bnVsbHx8aS5kYXNoIT1udWxsKSYmeWMoZSxpLHIpJiZTYyhlLHAsdSxRLGU9PnZlKGUpLCgpPT5kZStZLChlLHQpPT5lLnZhbHVlc1t0XT8/bnVsbCl9aWYodC5zdG9ja0hpTG93TGluZXM9PT0hMCYmUyE9bnVsbCYmQyE9bnVsbCYmUyYmQyl7bGV0IG49YmModCx0LnN0b2NrSGlMb3dMaW5lU3R5bGU/P3tjb2xvcjp0LnN0b2NrSGlMb3dMaW5lQ29sb3I/P251bGx9LGBoaUxvTGluZWApLGk9ey4uLm4sY29sb3I6bi5jb2xvcj8/KG4ucGFpbnRBdXRob3JlZD09PSEwP251bGw6dC5zdG9ja0F1dG9tYXRpY1N0eWxlPy5saW5lQ29sb3IpLHdpZHRoRW11Om4ud2lkdGhFbXU/P3Quc3RvY2tBdXRvbWF0aWNTdHlsZT8ubGluZVdpZHRoRW11fTtpZigoaS5wYWludEF1dGhvcmVkIT09ITB8fGkuY29sb3IhPW51bGwpJiYoaS5jb2xvciE9bnVsbHx8aS53aWR0aEVtdSE9bnVsbHx8aS5kYXNoIT1udWxsKSYmeWMoZSxpLHIpKWZvcihsZXQgdD0wO3Q8dTt0Kyspe2xldCBuPVMudmFsdWVzW3RdLHI9Qy52YWx1ZXNbdF07aWYobj09bnVsbHx8cj09bnVsbCljb250aW51ZTtsZXQgaT1RKHQpLGE9dmUoUyksbz12ZShDKTtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKGksYShuKSksZS5saW5lVG8oaSxvKHIpKSxlLnN0cm9rZSgpfX1sZXQgU2U9KHQsbixhKT0+e2lmKCF0KXJldHVybjtsZXQgbz1SbyhuLHQpLHM9em8odC5kYXRhUG9pbnRPdmVycmlkZXMpLGM9dC5tYXJrZXJTeW1ib2whPW51bGwmJnQubWFya2VyU3ltYm9sIT09YG5vbmVgJiZ4bih0KSxsPU1hdGgubWF4KDMsSi91Ki4yMik7Zm9yKGxldCBuPTA7bjx1O24rKyl7bGV0IHU9dC52YWx1ZXNbbl07aWYodT09bnVsbCljb250aW51ZTtsZXQgZD1RKG4pLGY9dmUodCkodSkscD1zLmdldChuKTtpZihwPy5tYXJrZXJTeW1ib2w9PT1gbm9uZWB8fHA/Lm1hcmtlclN5bWJvbD09bnVsbCYmdC5tYXJrZXJTeW1ib2w9PT1gbm9uZWApY29udGludWU7aWYoY3x8cD8ubWFya2VyU3ltYm9sIT1udWxsJiZwLm1hcmtlclN5bWJvbCE9PWBub25lYCl7X2woZSxkLGYscD8ubWFya2VyU3ltYm9sPz90Lm1hcmtlclN5bWJvbD8/YGNpcmNsZWAscD8ubWFya2VyU2l6ZT8/dC5tYXJrZXJTaXplPz8zLFBuKHQscCxuLG8pLHA/Lm1hcmtlckxpbmU/P3QubWFya2VyTGluZT8/bnVsbCxyLChwPy5tYXJrZXJMaW5lV2lkdGhFbXU/P3QubWFya2VyTGluZVdpZHRoRW11KT09bnVsbD92b2lkIDA6aWEocD8ubWFya2VyTGluZVdpZHRoRW11Pz90Lm1hcmtlckxpbmVXaWR0aEVtdSxyKSxObih0LHAsbiksaSk7Y29udGludWV9ZS5zdHJva2VTdHlsZT1vLGUubGluZVdpZHRoPU1hdGgubWF4KDEsLjc1KnIpLGUuYmVnaW5QYXRoKCk7bGV0IG09YT09PWByaWdodGA/ZDphPT09YGxlZnRgP2QtbDpkLWwvMixoPWE9PT1gcmlnaHRgP2QrbDphPT09YGxlZnRgP2Q6ZCtsLzI7ZS5tb3ZlVG8obSxmKSxlLmxpbmVUbyhoLGYpLGUuc3Ryb2tlKCl9fTtmb3IobGV0IGEgb2YgbSl7bGV0IG89Zy5nZXQoYSk/PzAscz1SbyhNYXRoLm1heCgwLG8pLGEpLGM9dmUoYSksbD16byhhLmRhdGFQb2ludE92ZXJyaWRlcyk7aWYoYS5saW5lSGlkZGVuIT09ITApe2xldCBuPUJsKHQsYS5jaGFydGV4U3R5bGUsbyx0LnNlcmllcy5sZW5ndGgpLGw9bj09PXZvaWQgMD9hLmxpbmVDb2xvcj9gIyR7YS5saW5lQ29sb3J9YDpzOm49PW51bGw/bnVsbDphaShuLGUscSxkZSxKLFksaSk7aWYobCE9bnVsbCl7ZS5zYXZlKCksZS5zdHJva2VTdHlsZT1sLGUubGluZVdpZHRoPWEubGluZVdpZHRoRW11PT1udWxsP01hdGgubWF4KDEsMi4yNSpyKTppYShhLmxpbmVXaWR0aEVtdSxyKSxlLnNldExpbmVEYXNoKFpyKGEuY2hhcnRleFN0eWxlPy5saW5lQ3VzdG9tRGFzaCxhLmNoYXJ0ZXhTdHlsZT8ubGluZURhc2gsZS5saW5lV2lkdGgpKSxlLmxpbmVDYXA9YS5jaGFydGV4U3R5bGU/LmxpbmVDYXA9PT1gcm5kYD9gcm91bmRgOmEuY2hhcnRleFN0eWxlPy5saW5lQ2FwPT09YHNxYD9gc3F1YXJlYDpgYnV0dGAsZS5saW5lSm9pbj1hLmNoYXJ0ZXhTdHlsZT8ubGluZUpvaW49PT1gcm91bmRgfHxhLmNoYXJ0ZXhTdHlsZT8ubGluZUpvaW49PT1gYmV2ZWxgP2EuY2hhcnRleFN0eWxlLmxpbmVKb2luOmBtaXRlcmAsZS5iZWdpblBhdGgoKTtsZXQgdD1bXSxuPSgpPT57dC5sZW5ndGghPT0wJiYoZS5tb3ZlVG8odFswXS54LHRbMF0ueSksRWwoZSx0LGEuc21vb3RoPT09ITApLHQ9W10pfTtmb3IobGV0IGU9MDtlPHU7ZSsrKXtsZXQgcj1hLnZhbHVlc1tlXTtpZihyPT1udWxsKXtuKCk7Y29udGludWV9dC5wdXNoKHt4OlEoZSkseTpjKHIpfSl9bigpLGUuc3Ryb2tlKCksZS5yZXN0b3JlKCl9fWxldCBkPWEuc2hvd01hcmtlciE9PSExJiZhLm1hcmtlclN5bWJvbCE9PWBub25lYDtpZihkfHxrbihhKSlmb3IobGV0IHQ9MDt0PHU7dCsrKXtsZXQgbj1hLnZhbHVlc1t0XTtpZihuPT1udWxsKWNvbnRpbnVlO2xldCBvPWwuZ2V0KHQpLHU9TW4oYSxvLGBjaXJjbGVgLGQpO3UhPT1gbm9uZWAmJl9sKGUsUSh0KSxjKG4pLHUsbz8ubWFya2VyU2l6ZT8/YS5tYXJrZXJTaXplPz81LFBuKGEsbyx0LHMpLG8/Lm1hcmtlckxpbmU/P2EubWFya2VyTGluZT8/bnVsbCxyLChvPy5tYXJrZXJMaW5lV2lkdGhFbXU/P2EubWFya2VyTGluZVdpZHRoRW11KT09bnVsbD92b2lkIDA6aWEobz8ubWFya2VyTGluZVdpZHRoRW11Pz9hLm1hcmtlckxpbmVXaWR0aEVtdSxyKSxObihhLG8sdCksaSl9S3MoZSxhLHMsUSxjLHIsdm9pZCAwLHtjaGFydDp0LGNoYXJ0UmVjdDpuLHBsb3RSZWN0Ont4OnEseTpkZSx3OkosaDpZfSxzaGFwZVJvdGF0aW9uRGVnOml9KX1pZih0LnN0b2NrVXBEb3duQmFycyYmRSYmRCl7bGV0IG49dC5zdG9ja1VwRG93bkJhclN0eWxlPz97Z2FwV2lkdGhQZXJjZW50OjE1MCx1cDp7fSxkb3duOnt9fSxhPXsuLi5uLHVwOnhjKHQsbi51cCxgdXBCYXJgKSxkb3duOnhjKHQsbi5kb3duLGBkb3duQmFyYCl9LG89eWU/KHllLmNhdGVnb3J5QmFuZEZyYWN0aW9uc1swXT8/MCkqSjpYP0ovdTp1PjE/Si8odS0xKTpKO1VjKGUsZT0+RS52YWx1ZXNbZV0/P251bGwsZT0+RC52YWx1ZXNbZV0/P251bGwsdSxRLHZlKEUpLHZlKEQpLG8sYSxyLHQuc3RvY2tBdXRvbWF0aWNTdHlsZT8/dm9pZCAwLGkpfVNlKFQsdixgbGVmdGApLChTPy5tYXJrZXJTeW1ib2whPW51bGx8fFMmJmtuKFMpKSYmU2UoUyx5LGBib3RoYCksKEM/Lm1hcmtlclN5bWJvbCE9bnVsbHx8QyYma24oQykpJiZTZShDLGIsYGJvdGhgKSxTZSh3LHgsYHJpZ2h0YCk7Zm9yKGxldCBuIG9mIGgpe2xldCByPVJvKGcuZ2V0KG4pPz8wLG4pO2ZvcihsZXQgaSBvZiBuLmVyckJhcnM/P1tdKWtsKGUsbixDYyh0LGkpLHUsUSx2ZShuKSxlPT5uLnZhbHVlc1tlXT8/MCxyKX1pZihwLmxlbmd0aDwzKWZvcihsZXQgZT0wO2U8cC5sZW5ndGg7ZSsrKVNlKHBbZV0sZSxgYm90aGApO2ZvcihsZXQgYSBvZiBoKXtsZXQgbz1nLmdldChhKT8/MDt5bChlLGEsbCwhMCxRLHZlKGEpLFkscix0LmRhdGUxOTA0LCQodCx0LmRhdGFMYWJlbEZvbnRGYWNlLGBtaW5vcmApLHQuZGF0YUxhYmVsUG9zaXRpb24/P2ByYCx7eDpxLHk6ZGUsdzpKLGg6WX0sbixlPT4kKHQsZSxgbWlub3JgKSxrKGEpP08/LmRpc3BsYXlVbml0czp0LnZhbEF4aXNEaXNwbGF5VW5pdHMsZT0+ZChvLGUpLGU9PmhjKHQsZSxrKGEpP2llPy5tYXg/P2hlLm1heDpoZS5tYXgpLGkpfWlmKCF0LmNhdEF4aXNIaWRkZW4pe2xldCBuPU1hdGgubWF4KDEsTWF0aC5mbG9vcih0LmNhdEF4aXNUaWNrTGFiZWxTa2lwPz8xKSksaT10LmNhdEF4aXNGb250Q29sb3I/YCMke3QuY2F0QXhpc0ZvbnRDb2xvcn1gOmAjNTU1YDtlLmZpbGxTdHlsZT1pLGUudGV4dEFsaWduPWBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWB0b3BgLGUuZm9udD1Ibyh6LCQodCx0LmNhdEF4aXNGb250RmFjZSxgbWlub3JgKSx0LmNhdEF4aXNGb250Qm9sZD8/ITEsdC5jYXRBeGlzRm9udEl0YWxpYz8/ITEpO2xldCBhPXllPyh5ZS5jYXRlZ29yeUJhbmRGcmFjdGlvbnNbMF0/PzApKkotNDpKL3Uqbi00LG89IUcmJlFzKHQpLHM9JHModCksYz15ZSYmeWUubWFqb3JUaWNrcy5sZW5ndGg+MD95ZS5tYWpvclRpY2tzLm1hcChlPT4oe2xhYmVsOnhhKFN0cmluZyhlLnNlcmlhbCksdC5jYXRBeGlzRm9ybWF0Q29kZSx0LmRhdGUxOTA0KSx4OnErZS5mcmFjdGlvbipKLGNhdGVnb3J5SW5kZXg6LTF9KSk6QXJyYXkuZnJvbSh7bGVuZ3RoOk1hdGguY2VpbCh1L24pfSwoZSxyKT0+e2xldCBpPXIqbjtyZXR1cm57bGFiZWw6eGEoKGxbaV0/P2BgKS50b1N0cmluZygpLHQuY2F0QXhpc0Zvcm1hdENvZGUsdC5kYXRlMTkwNCkseDpRKGkpLGNhdGVnb3J5SW5kZXg6aX19KTtmb3IobGV0IG4gb2YgYyl7bGV0IGM9bi5jYXRlZ29yeUluZGV4PDA/bnVsbDpFdChuLmNhdGVnb3J5SW5kZXgsdSxzYSh0KSxQcyh0KSx0LmNhdEF4aXNMYWJlbEFsaWdubWVudCksbD1jP3ErYy5mcmFjdGlvbipKOm4ueDtpZihicyhlLHQuY2F0QXhpc01ham9yVGlja01hcmssYGNhdGAsZGUrWSxsLGJlLmNvbG9yLGJlLndpZHRoLCExLHQuY2F0QXhpc0xpbmVIaWRkZW4sYG1ham9yYCxyLHQuY2F0QXhpc0xpbmVEYXNoKSwhbyljb250aW51ZTtlLnRleHRBbGlnbj1jPy50ZXh0QWxpZ24/P2BjZW50ZXJgLGUuZmlsbFN0eWxlPWk7bGV0IGQ9bi5sYWJlbDtlYyhlLGthKGUsZCxzPT09MD9hOlkqLjQpLGwsZGUrWStTdCg1LHQuY2F0QXhpc0xhYmVsT2Zmc2V0UGVyY2VudCkscyl9aWYodC5jYXRBeGlzTWlub3JUaWNrTWFyayYmdC5jYXRBeGlzTWlub3JUaWNrTWFyayE9PWBub25lYCYmeWUpZm9yKGxldCBuIG9mIHllLm1pbm9yVGlja3MpYnMoZSx0LmNhdEF4aXNNaW5vclRpY2tNYXJrLGBjYXRgLGRlK1kscStuLmZyYWN0aW9uKkosdm9pZCAwLHZvaWQgMCwhMSx0LmNhdEF4aXNMaW5lSGlkZGVuLGBtaW5vcmAscix0LmNhdEF4aXNMaW5lRGFzaCl9aWYoTyYmaWUpe2xldCBpPXQudmFsQXhpc0ZvbnRDb2xvcj9gIyR7dC52YWxBeGlzRm9udENvbG9yfWA6YCM1NTVgO2FjKGUsdCxPLGllLF9lLG4scSxkZSxKLFkscixvZSxzZSxpLHQuZGF0ZTE5MDQpfWZlJiZlcyhlLHQsZmUscSxkZStZLEosYStJLHIpLHZzKGUsdCxQLGEsbyxzLGMscSxkZSxKLFksTisyLHIpLEpvKGUsdCxhLG8scyxjLHEsZGUsSixZLEksTCxWLEgpfWZ1bmN0aW9uIFljKGUsdCxuKXtpZihlLmxlbmd0aD09PTApcmV0dXJuW107bGV0IHI9W10saT1lPT5uP2UudmFsdWU+PXQ6ZS52YWx1ZTw9dCxhPWVbZS5sZW5ndGgtMV0sbz1pKGEpO2ZvcihsZXQgbiBvZiBlKXtsZXQgZT1pKG4pO2lmKGUhPT1vKXtsZXQgZT1uLnZhbHVlLWEudmFsdWUsaT1lPT09MD8wOih0LWEudmFsdWUpL2U7ci5wdXNoKHt4OmEueCsobi54LWEueCkqaSx5OmEueSsobi55LWEueSkqaSxkZXB0aDphLmRlcHRoKyhuLmRlcHRoLWEuZGVwdGgpKmksdmFsdWU6dH0pfWUmJnIucHVzaChuKSxhPW4sbz1lfXJldHVybiByfWZ1bmN0aW9uIFhjKGUsdCxuLHIsaT0wKXtsZXR7eDphLHk6byx3OnMsaDpjfT1uLGw9cGModCksdT10LnNlcmllcyxkPWwubGVuZ3RoLGY9dS5sZW5ndGg7aWYoZDwyfHxmPDIpcmV0dXJuO2xldCBwPTEvMCxtPS0xLzA7Zm9yKGxldCBlIG9mIHUpZm9yKGxldCB0PTA7dDxkO3QrKyl7bGV0IG49ZS52YWx1ZXNbdF07bj09bnVsbHx8IU51bWJlci5pc0Zpbml0ZShuKXx8KHA9TWF0aC5taW4ocCxuKSxtPU1hdGgubWF4KG0sbikpfWlmKCFOdW1iZXIuaXNGaW5pdGUocCl8fCFOdW1iZXIuaXNGaW5pdGUobSkpcmV0dXJuO3QudmFsTWluIT1udWxsJiYocD10LnZhbE1pbiksdC52YWxNYXghPW51bGwmJihtPXQudmFsTWF4KTtsZXQgaD17Li4udC50aHJlZUQ/P3t9LHJvdGF0aW9uWDp0LnRocmVlRD8ucm90YXRpb25YPz8xNSxyb3RhdGlvblk6dC50aHJlZUQ/LnJvdGF0aW9uWT8/MjAscmlnaHRBbmdsZUF4ZXM6dC50aHJlZUQ/LnJpZ2h0QW5nbGVBeGVzPz8hMSxwZXJzcGVjdGl2ZTp0LnRocmVlRD8ucGVyc3BlY3RpdmU/PzMwfSxnPWdvKGgpLF89X28oaCksdj1ObyhoLG4se3NjZW5lRGVwdGhTY2FsZTpTdSxwZXJzcGVjdGl2ZVRhbmdlbnRHYWluOl99KSx5O2lmKHYpe2xldCBlPXYudG9wb2xvZ3kuYXhpc1g9PT1gbWluYD92LmZyb250Lng6di5mcm9udC54K3YuZnJvbnQudyx0PXYucHJvamVjdChlLHYuZnJvbnQueSt2LmZyb250Lmgsdi50b3BvbG9neS5uZWFyRGVwdGgpLG49di5wcm9qZWN0KGUsdi5mcm9udC55LHYudG9wb2xvZ3kubmVhckRlcHRoKTt5PU1hdGguaHlwb3Qobi54LXQueCxuLnktdC55KS9yfWxldCBiPXQudmFsQXhpc01ham9yVW5pdD09bnVsbD9XaShwLG0seSk6bnVsbCx4PUhzKGI9PW51bGw/dDp7Li4udCx2YWxBeGlzTWFqb3JVbml0OmJ9LHAsbSx5KSxTPXguc3RlcDtpZighKFM+MCl8fCFOdW1iZXIuaXNGaW5pdGUoUykpcmV0dXJuO2xldCBDPXQudmFsTWluPz94Lm1pbix3PXQudmFsTWF4Pz9NYXRoLm1heChDK1MsQytNYXRoLmNlaWwoKG0tQykvUykqUyksVD13LUM7aWYoIShUPjApfHwhTnVtYmVyLmlzRmluaXRlKFQpKXJldHVybjtsZXQgRT1NYXRoLmNlaWwoVC9TKSxEPU1hdGguZmxvb3IoVC9TKzFlLTkpKzEsTz0oZC0xKSooZi0xKSoyO2lmKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihFKXx8IU51bWJlci5pc1NhZmVJbnRlZ2VyKEQpfHxFPDF8fEQ8Mnx8TzwxfHxFPjUxMnx8RD41MTJ8fEU+TWF0aC5mbG9vcih4dS9PKXx8RD54dSlyZXR1cm47bGV0IGs9RSxBPU5zKHQpP2U9PjEtKGUtQykvVDplPT4oZS1DKS9ULGo9QXJyYXkuZnJvbSh7bGVuZ3RoOkR9LChlLHQpPT5DK3QqUyksTT0oZSx0KT0+e2xldCBuPU1hdGgubWluKGUsdCkscj1NYXRoLm1heChlLHQpLGk9TWF0aC5tYXgoMSxNYXRoLmZsb29yKChuLUMpL1MpKzEpLGE9TWF0aC5taW4oay0xLE1hdGguY2VpbCgoci1DKS9TKS0xKSxvPVswXTtpZihlIT09dClmb3IobGV0IG49aTtuPD1hO24rKylvLnB1c2goKEMrbipTLWUpLyh0LWUpKTtyZXR1cm4gby5wdXNoKDEpLG8uc29ydCgoZSx0KT0+ZS10KSxvfSxOPUFycmF5LmZyb20oe2xlbmd0aDprfSwoZSxuKT0+Ym8odC50aGVtZUFjY2VudENvbG9ycz8/W10sbixrLHQubGVnYWN5Q2hhcnRTdHlsZT8/Mik/Pyh1W25dPy5jb2xvcj9gIyR7dVtuXS5jb2xvcn1gOlJvKG4sdVtuXSkpKSxQPW5ldyBNYXAoKHQuc3VyZmFjZUJhbmRGb3JtYXRzPz9bXSkubWFwKGU9PltlLmlkeCxlXSkpLEY9dC5jaGFydFN0eWxlUm9sZXM/LmRhdGFQb2ludDNELEk9dC5jaGFydFN0eWxlUm9sZXM/LmRhdGFQb2ludFdpcmVmcmFtZSxMPWU9PmU/LmxpbmVOb1N0eWxlIT09ITAmJihlPy5saW5lUGFpbnRBdXRob3JlZD09PSEwfHxlPy5saW5lSGlkZGVuPT09ITB8fChlPy5saW5lQ29sb3JzPy5sZW5ndGg/PzApPjB8fChlPy5saW5lUGFpbnRzPy5sZW5ndGg/PzApPjApLFI9dC5zdXJmYWNlV2lyZWZyYW1lPT09ITA/W106QXJyYXkuZnJvbSh7bGVuZ3RoOmt9LChlLHQpPT57bGV0IG49UC5nZXQodCkscjtyZXR1cm4gcj1uPy5maWxsSGlkZGVuPT09ITA/bnVsbDpuPy5maWxsP24uZmlsbDppcihuPy5zdHlsZSx0KSxyPT09dm9pZCAwP2lyKEYsdCk6cn0pLHo9dC5zdXJmYWNlV2lyZWZyYW1lPT09ITA/W106QXJyYXkuZnJvbSh7bGVuZ3RoOmt9LChlLHQpPT57bGV0IG49UC5nZXQodCkscjtyZXR1cm4gcj1uPy5saW5lSGlkZGVuPT09ITA/bnVsbDpuPy5saW5lQ29sb3I/e2ZpbGxUeXBlOmBzb2xpZGAsY29sb3I6bi5saW5lQ29sb3J9OmFyKG4/LnN0eWxlLHQpLHI9PT12b2lkIDA/YXIoRix0KTpyfSksQj0oZSx0KT0+e2xldCBuPWU/LmxpbmVOb1N0eWxlPT09ITA/dm9pZCAwOmUscj1uPy5saW5lRGFzaEF1dGhvcmVkPT09ITB8fG4/LmxpbmVEYXNoIT1udWxsfHxuPy5saW5lQ3VzdG9tRGFzaCE9bnVsbDtyZXR1cm57bGluZVdpZHRoRW11Om4/LmxpbmVXaWR0aEVtdT8/dC5saW5lV2lkdGhFbXUsbGluZURhc2g6cj9uPy5saW5lRGFzaDp0LmxpbmVEYXNoLGxpbmVDdXN0b21EYXNoOnI/bj8ubGluZUN1c3RvbURhc2g6dC5saW5lQ3VzdG9tRGFzaCxsaW5lQ2FwOm4/LmxpbmVDYXA/P3QubGluZUNhcCxsaW5lSm9pbjpuPy5saW5lSm9pbj8/dC5saW5lSm9pbixsaW5lQ29tcG91bmQ6bj8ubGluZUNvbXBvdW5kPz90LmxpbmVDb21wb3VuZH19LGVlPUk/LmxpbmVDb2xvckluZGV4LFY7Vj1MKEkpP0k/LmxpbmVIaWRkZW49PT0hMD9hcihJLDApOmVlPT1udWxsP251bGw6YXIoSSxlZSk6dm9pZCAwO2xldCBIPUk/LmxpbmVOb1N0eWxlPT09ITA/e3BhaW50OnZvaWQgMCxsaW5lV2lkdGhFbXU6dm9pZCAwLGxpbmVEYXNoOnZvaWQgMCxsaW5lQ3VzdG9tRGFzaDp2b2lkIDAsbGluZUNhcDp2b2lkIDAsbGluZUpvaW46dm9pZCAwLGxpbmVDb21wb3VuZDp2b2lkIDB9OntwYWludDpWLGxpbmVXaWR0aEVtdTpJPy5saW5lV2lkdGhFbXUsbGluZURhc2g6ST8ubGluZURhc2gsbGluZUN1c3RvbURhc2g6ST8ubGluZUN1c3RvbURhc2gsbGluZUNhcDpJPy5saW5lQ2FwLGxpbmVKb2luOkk/LmxpbmVKb2luLGxpbmVDb21wb3VuZDpJPy5saW5lQ29tcG91bmR9LFU9dVswXSxXO1c9VT8ubGluZUhpZGRlbj09PSEwP251bGw6VT8ubGluZUNvbG9yPT1udWxsP2FyKFU/LmNoYXJ0ZXhTdHlsZSwwKTp7ZmlsbFR5cGU6YHNvbGlkYCxjb2xvcjpVLmxpbmVDb2xvcn07bGV0IEc9QihVPy5jaGFydGV4U3R5bGUsSCksSz17cGFpbnQ6Vz09PXZvaWQgMD9WOlcsLi4uRyxsaW5lV2lkdGhFbXU6VT8ubGluZVdpZHRoRW11Pz9HLmxpbmVXaWR0aEVtdX07Sy5saW5lQ29tcG91bmQhPW51bGwmJihLLnBhaW50PW51bGwpO2xldCB0ZT1BcnJheS5mcm9tKHtsZW5ndGg6a30sKGUsdCk9PntsZXQgbj1QLmdldCh0KTtpZihuKXJldHVybiBuLmxpbmVIaWRkZW49PT0hMD9udWxsOm4ubGluZUNvbG9yPT1udWxsP2FyKG4uc3R5bGUsdCk6e2ZpbGxUeXBlOmBzb2xpZGAsY29sb3I6bi5saW5lQ29sb3J9fSksbmU9dGUubWFwKChlLHQpPT57bGV0IG49UC5nZXQodCkscj1CKG4/LnN0eWxlLEspLGk9e3BhaW50OmU9PT12b2lkIDA/Sy5wYWludDplLC4uLnIsbGluZVdpZHRoRW11Om4/LmxpbmVXaWR0aEVtdT8/ci5saW5lV2lkdGhFbXV9O3JldHVybiBpLmxpbmVDb21wb3VuZCE9bnVsbCYmKGkucGFpbnQ9bnVsbCksaX0pLHJlPShlLHQpPT5lLnBhaW50IT09dm9pZCAwJiZlLnBhaW50PT09dC5wYWludCYmZS5saW5lV2lkdGhFbXU9PT10LmxpbmVXaWR0aEVtdSYmZS5saW5lRGFzaD09PXQubGluZURhc2gmJmUubGluZUN1c3RvbURhc2g9PT10LmxpbmVDdXN0b21EYXNoJiZlLmxpbmVDYXA9PT10LmxpbmVDYXAmJmUubGluZUpvaW49PT10LmxpbmVKb2luJiZlLmxpbmVDb21wb3VuZD09PXQubGluZUNvbXBvdW5kLGllPShlLHQpPT57bGV0IG49TShlLHQpLHI9W107Zm9yKGxldCBpPTA7aTxuLmxlbmd0aC0xO2krKyl7bGV0IGE9bltpXSxvPW5baSsxXSxzPWUrKHQtZSkqKChhK28pLzIpLGM9TWF0aC5tYXgoMCxNYXRoLm1pbihrLTEsTWF0aC5mbG9vcigocy1DKS9TKSkpLGw9cltyLmxlbmd0aC0xXTtsJiZ0ZVtsLmJhbmRdPT09dm9pZCAwJiZ0ZVtjXT09PXZvaWQgMCYmcmUobmVbbC5iYW5kXSxuZVtjXSk/bC50bz1vOnIucHVzaCh7ZnJvbTphLHRvOm8sYmFuZDpjfSl9cmV0dXJuIHJ9O2lmKHQuc3VyZmFjZVdpcmVmcmFtZT09PSEwKXtsZXQgZT0wLHQ9KHQsbik9PnQ9PW51bGx8fG49PW51bGx8fCFOdW1iZXIuaXNGaW5pdGUodCl8fCFOdW1iZXIuaXNGaW5pdGUobik/ITA6KGUrPWllKHQsbikubGVuZ3RoLGU8PXh1KTtmb3IobGV0IGU9MDtlPGY7ZSsrKWZvcihsZXQgbj0wO248ZC0xO24rKylpZighdCh1W2VdLnZhbHVlc1tuXSx1W2VdLnZhbHVlc1tuKzFdKSlyZXR1cm47Zm9yKGxldCBlPTA7ZTxkO2UrKylmb3IobGV0IG49MDtuPGYtMTtuKyspaWYoIXQodVtuXS52YWx1ZXNbZV0sdVtuKzFdLnZhbHVlc1tlXSkpcmV0dXJuO2ZvcihsZXQgdD0wO3Q8Zi0xO3QrKylmb3IobGV0IG49MDtuPGQtMTtuKyspe2xldCByPVt1W3RdLnZhbHVlc1tuXSx1W3RdLnZhbHVlc1tuKzFdLHVbdCsxXS52YWx1ZXNbbisxXSx1W3QrMV0udmFsdWVzW25dXTtpZihyLnNvbWUoZT0+ZT09bnVsbHx8IU51bWJlci5pc0Zpbml0ZShlKSkpY29udGludWU7bGV0IGk9cjtmb3IobGV0IHQgb2YgYnUoaSkpe2xldCBuPU1hdGgubWluKC4uLnQubWFwKGU9PmlbZV0pKSxyPU1hdGgubWF4KC4uLnQubWFwKGU9PmlbZV0pKSxhPU1hdGgubWF4KDEsTWF0aC5mbG9vcigobi1DKS9TKSsxKSxvPU1hdGgubWluKGstMSxNYXRoLmNlaWwoKHItQykvUyktMSk7aWYoIShvPGEpJiYoZSs9by1hKzEsZT54dSkpcmV0dXJufX19bGV0IGFlPXRlLnNvbWUoZT0+ZT09PXZvaWQgMCksb2U9W3tzdXJmYWNlOnQudGhyZWVEPy5mbG9vcixyb2xlOmBmbG9vcmB9LHtzdXJmYWNlOnQudGhyZWVEPy5zaWRlV2FsbCxyb2xlOmB3YWxsYH0se3N1cmZhY2U6dC50aHJlZUQ/LmJhY2tXYWxsLHJvbGU6YHdhbGxgfV0ubWFwKCh7c3VyZmFjZTplLHJvbGU6bn0pPT5vcih0LGUsbikpLHNlPTA7Zm9yKGxldCBlIG9mWy4uLlIsLi4ueiwuLi50LnN1cmZhY2VXaXJlZnJhbWU9PT0hMCYmYWU/W0sucGFpbnRdOltdLC4uLnQuc3VyZmFjZVdpcmVmcmFtZT09PSEwP3RlLmZpbHRlcihlPT5lIT09dm9pZCAwKTpbXSwuLi5vZS5mbGF0TWFwKGU9PltlLmZpbGwsZS5saW5lXSldKXtpZihlPT1udWxsKWNvbnRpbnVlO2xldCB0PUxuKGUpO2lmKGUuZmlsbFR5cGU9PT1gZ3JhZGllbnRgJiZ0PlR1fHx0PkV1LXNlKXJldHVybjtzZSs9dH1sZXQgY2U9QXJyYXkuZnJvbSh7bGVuZ3RoOmt9LChlLHQpPT57bGV0IG49Qyt0KlMscj1NYXRoLm1pbih3LG4rUyk7cmV0dXJuYCR7eWEobil9LSR7eWEocil9YH0pLGxlPXsuLi50LHNlcmllczpjZS5tYXAoKGUsdCk9Pih7bmFtZTplLGNvbG9yOk5bdF0ucmVwbGFjZSgvXiMvLGBgKSx2YWx1ZXM6W119KSl9O01hdGguYWJzKGgucm90YXRpb25YKT09PTkwJiZsZS5zZXJpZXMucmV2ZXJzZSgpO2xldCB1ZT1ocyhlLGxlLHMsYywuMjIscikse2xlZ1JpZ2h0VzpxLGxlZ0xlZnRXOmRlLGxlZ1RvcEg6SixsZWdCb3R0b21IOll9PVB0KHVlLHQubGVnZW5kT3ZlcmxheT09PSEwKSxmZT11YyhlLHQscyxjLHIpLHBlPVlzKHQuY2F0QXhpc0ZvbnRTaXplSHB0LGMsciksbWU9dC50aHJlZUQ/LnNlcmllc0F4aXMsaGU9QXQobWU/LmZvbnRTaXplSHB0LHIpPz9wZSx7cHgwOmdlLHB5MDpfZSxwdzp2ZSxwaDpYfT1LdCh0LGEsbyxzLGMscix7dGl0bGVCYW5kOmZlLGxlZ2VuZFNpZGVSZXNlcnZlRnJhYzouMjIsbGVnZW5kUmVzZXJ2ZTp1ZSxwYWQ6e3Q6ZmUuYmFuZEgrSitoZS8yLHI6cStoZSozLjIrMTIsYjpWdChwZSx0LmNhdEF4aXNMYWJlbE9mZnNldFBlcmNlbnQpK1ksbDpkZStwZSoxLjV9LGhvbm9yUGxvdEFyZWFNYW51YWxMYXlvdXQ6ITB9KS5wbG90UmVjdDtpZighKHZlPjApfHwhKFg+MCkpcmV0dXJuO2ZjKGUsdCx0LnRpdGxlTWFudWFsTGF5b3V0fHwhdC50aXRsZVJpY2hSdW5zPy5sZW5ndGg/YTpnZSxvLHQudGl0bGVNYW51YWxMYXlvdXR8fCF0LnRpdGxlUmljaFJ1bnM/Lmxlbmd0aD9zOnZlLGMsbytmZS50b3BQYWQsZmUuZm9udFB4KSwkYShlLHQsZ2UsX2UsdmUsWCxyLGkpO2xldCBaPU5vKGgse3g6Z2UseTpfZSx3OnZlLGg6WH0se3NjZW5lRGVwdGhTY2FsZTpTdSxwZXJzcGVjdGl2ZVRhbmdlbnRHYWluOl99KTtpZighWilyZXR1cm47Wj1NbyhaLHQudGhyZWVEPz97fSx7eDpnZSx5Ol9lLHc6dmUsaDpYfSk7bGV0IHllPWd8fE1hdGguYWJzKGgucm90YXRpb25YKT09PTkwJiZoLnJvdGF0aW9uWT09PTAmJmgucmlnaHRBbmdsZUF4ZXM9PT0hMSYmaC5wZXJzcGVjdGl2ZT09PTAse2Zyb250OlF9PVosYmU9dC5jYXRBeGlzT3JpZW50YXRpb249PT1gbWF4TWluYCx4ZT1zYSh0KSxTZT1lPT5RLngrQ3QoZSxkLHhlLGJlKSpRLncsQ2U9bWU/Lm9yaWVudGF0aW9uPT09YG1heE1pbmAsd2U9ZT0+Q3QoZSxmLCExLENlKSxUZT1lPT5RLnkrUS5oLUEoZSkqUS5oLEVlPVtdLERlPVtdLE9lPShlLHQpPT57bGV0IG49bj0+KHt4OmUueCsodC54LWUueCkqbix5OmUueSsodC55LWUueSkqbixkZXB0aDplLmRlcHRoKyh0LmRlcHRoLWUuZGVwdGgpKm4sdmFsdWU6ZS52YWx1ZSsodC52YWx1ZS1lLnZhbHVlKSpufSk7Zm9yKGxldCByIG9mIGllKGUudmFsdWUsdC52YWx1ZSkpe2xldCBlPW4oci5mcm9tKSx0PW4oci50byk7RGUucHVzaCh7cG9pbnRzOltaLnByb2plY3QoZS54LGUueSxlLmRlcHRoKSxaLnByb2plY3QodC54LHQueSx0LmRlcHRoKV0sYmFuZDpyLmJhbmR9KX19LGtlPWU9PntsZXQgdD1NYXRoLm1pbiguLi5lLm1hcChlPT5lLnZhbHVlKSksbj1NYXRoLm1heCguLi5lLm1hcChlPT5lLnZhbHVlKSkscj1NYXRoLm1heCgxLE1hdGguZmxvb3IoKHQtQykvUykrMSksaT1NYXRoLm1pbihrLTEsTWF0aC5jZWlsKChuLUMpL1MpLTEpO2ZvcihsZXQgdD1yO3Q8PWk7dCsrKXtsZXQgbj1DK3QqUyxyPVtdLGk9ZT0+e3Iuc29tZSh0PT5NYXRoLmFicyh0LngtZS54KTwxZS05JiZNYXRoLmFicyh0LnktZS55KTwxZS05JiZNYXRoLmFicyh0LmRlcHRoLWUuZGVwdGgpPDFlLTkpfHxyLnB1c2goZSl9O2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKXtsZXQgcj1lW3RdLGE9ZVsodCsxKSVlLmxlbmd0aF07aWYoci52YWx1ZT09PW4mJmkociksci52YWx1ZTxuJiZhLnZhbHVlPm58fHIudmFsdWU+biYmYS52YWx1ZTxuKXtsZXQgZT0obi1yLnZhbHVlKS8oYS52YWx1ZS1yLnZhbHVlKTtpKHt4OnIueCsoYS54LXIueCkqZSx5OnIueSsoYS55LXIueSkqZSxkZXB0aDpyLmRlcHRoKyhhLmRlcHRoLXIuZGVwdGgpKmUsdmFsdWU6bn0pfX1yLmxlbmd0aD09PTImJkRlLnB1c2goe3BvaW50czpbWi5wcm9qZWN0KHJbMF0ueCxyWzBdLnksclswXS5kZXB0aCksWi5wcm9qZWN0KHJbMV0ueCxyWzFdLnksclsxXS5kZXB0aCldLGJhbmQ6dC0xfSl9fSxBZT1lPT57aWYodC5zdXJmYWNlV2lyZWZyYW1lPT09ITApe2tlKGUpO3JldHVybn1sZXQgbj1NYXRoLm1pbiguLi5lLm1hcChlPT5lLnZhbHVlKSkscj1NYXRoLm1heCguLi5lLm1hcChlPT5lLnZhbHVlKSksaT1NYXRoLm1heCgwLE1hdGguZmxvb3IoKG4tQykvUykpLGE9TWF0aC5taW4oay0xLE1hdGguZmxvb3IoKHItQykvUykpO2ZvcihsZXQgdD1pO3Q8PWE7dCsrKXtsZXQgbj1DK3QqUyxyPXQ9PT1rLTE/dzpuK1MsaT1ZYyhlLG4sITApO2lmKGk9WWMoaSxyLCExKSxpLmxlbmd0aDwzKWNvbnRpbnVlO2xldCBhPWkubWFwKGU9PloucHJvamVjdChlLngsZS55LGUuZGVwdGgpKTtFZS5wdXNoKHtwb2ludHM6YSxzY2VuZVBvaW50czppLGJhbmQ6dCxkZXB0aDppLnJlZHVjZSgoZSx0KT0+ZStaLmNhbWVyYURlcHRoKHQueCx0LnksdC5kZXB0aCksMCkvaS5sZW5ndGh9KX19O2Uuc2F2ZSgpLGUuYmVnaW5QYXRoKCksZS5yZWN0KGdlLF9lLHZlLFgpLGUuY2xpcCgpO2xldCBqZT0odCxuLHIsaSxhPSExKT0+e2lmKHQubGVuZ3RoPDIpcmV0dXJuO2xldCBvPWE/dC5tYXAoZT0+Wi5wcm9qZWN0VW5ib3VuZGVkKGUueCxlLnksZS5kZXB0aCkpOnQubWFwKGU9PloucHJvamVjdChlLngsZS55LGUuZGVwdGgpKTtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKG9bMF0ueCxvWzBdLnkpO2ZvcihsZXQgdD0xO3Q8by5sZW5ndGg7dCsrKWUubGluZVRvKG9bdF0ueCxvW3RdLnkpO2Uuc3Ryb2tlU3R5bGU9bixlLmxpbmVXaWR0aD1yLGUuc2V0TGluZURhc2goWHIoaT8/YHNvbGlkYCxyKSksZS5zdHJva2UoKX0sTWU9Wi50b3BvbG9neS5mYXJEZXB0aCxOZT1aLnRvcG9sb2d5Lm5lYXJEZXB0aCxQZT1RLnkrUS5oLEZlPVEueSxJZT1aLnRvcG9sb2d5LmZhclg9PT1gbWluYD9RLng6US54K1EudyxMZT1bYGZsb29yYCxgc2lkZVdhbGxgLGBiYWNrV2FsbGBdLm1hcChlPT57bGV0IG49dC50aHJlZUQ/LltlXTtyZXR1cm4gQW8oWixlLG4/LnRoaWNrbmVzc1BlcmNlbnQpfSksUmU9W2BmbG9vcmAsYHNpZGVXYWxsYCxgYmFja1dhbGxgXSx6ZT0oZSx0LG4scixpLGEpPT57bGV0IG89TGVbZV0scz1SZVtlXTtmb3IobGV0IGUgb2Ygam8obyxzLHQsbikpby50aGlja25lc3M+MCYmIVouY2FtZXJhRmFjaW5nKG8uZmFjZXNbZS5mYWNlSW5kZXhdKXx8amUoZS5zY2VuZVBvaW50cyxyLGksYSwhMCl9LEJlPShlLHQsbixyKT0+e2ZvcihsZXQgaSBvZiBlKXtsZXQgZT1BKGkpO3plKDEsYHlgLGUsdCxuLHIpLHplKDIsYHlgLGUsdCxuLHIpfX0sVmU9KGUsdCxuLHIpPT57Zm9yKGxldCBpIG9mIGUpemUoMCxgeGAsaSx0LG4sciksemUoMixgeGAsaSx0LG4scil9LEhlPUxlLnNvbWUoZT0+ZS50aGlja25lc3M+MCk/TGUubWFwKGU9PmUuZmFjZXMuZmlsdGVyKHQ9PmUudGhpY2tuZXNzPT09MHx8Wi5jYW1lcmFGYWNpbmcodCkpLm1hcChlPT5lLm1hcChlPT5aLnByb2plY3RVbmJvdW5kZWQoZS54LGUueSxlLmRlcHRoKSkpKTpbW1oucHJvamVjdChRLngsUGUsTmUpLFoucHJvamVjdChRLngrUS53LFBlLE5lKSxaLnByb2plY3QoUS54K1EudyxQZSxNZSksWi5wcm9qZWN0KFEueCxQZSxNZSldLFtaLnByb2plY3QoSWUsUGUsTmUpLFoucHJvamVjdChJZSxQZSxNZSksWi5wcm9qZWN0KEllLEZlLE1lKSxaLnByb2plY3QoSWUsRmUsTmUpXSxbWi5wcm9qZWN0KFEueCxQZSxNZSksWi5wcm9qZWN0KFEueCtRLncsUGUsTWUpLFoucHJvamVjdChRLngrUS53LEZlLE1lKSxaLnByb2plY3QoUS54LEZlLE1lKV1dLm1hcChlPT5bZV0pO2ZvcihsZXQgbj0wO248SGUubGVuZ3RoO24rKyl7bGV0IGk9SGVbbl07aWYoIWkubGVuZ3RoKWNvbnRpbnVlO2xldCBhPWkuZmxhdCgpLG89b2Vbbl0scz1vLmZpbGw/LmZpbGxUeXBlPT09YGltYWdlYD9vLmZpbGw6bnVsbDtpZihzKXtsZXQgcj1TcihzKSxpPXQudGhyZWVEPy5bUmVbbl1dO3ImJmppKGUscyxyLGksUmVbbl0sTGVbbl0sTGVbbl0uZmFjZXMubWFwKChlLHQpPT4oe2ZhY2U6ZSxmYWNlSW5kZXg6dH0pKS5maWx0ZXIoKHtmYWNlOmV9KT0+TGVbbl0udGhpY2tuZXNzPT09MHx8Wi5jYW1lcmFGYWNpbmcoZSkpLm1hcCgoe2ZhY2VJbmRleDplfSk9PmUpLGU9PloucHJvamVjdFVuYm91bmRlZChlLngsZS55LGUuZGVwdGgpLFQpfWxldCBjPU1hdGgubWluKC4uLmEubWFwKGU9PmUueCkpLGw9TWF0aC5tYXgoLi4uYS5tYXAoZT0+ZS54KSksdT1NYXRoLm1pbiguLi5hLm1hcChlPT5lLnkpKSxkPU1hdGgubWF4KC4uLmEubWFwKGU9PmUueSkpLGY9cz9udWxsOm8uZmlsbD8uZmlsbFR5cGU9PT1gc29saWRgP2AjJHtvLmZpbGwuY29sb3J9YDpvLmZpbGw/YWkoby5maWxsLGUsYyx1LGwtYyxkLXUpOm51bGwscD1vLmxpbmU/LmZpbGxUeXBlPT09YHNvbGlkYD9gIyR7by5saW5lLmNvbG9yfWA6by5saW5lP2FpKG8ubGluZSxlLGMsdSxsLWMsZC11KTpudWxsLG09by5saW5lV2lkdGhFbXU9PW51bGw/MTppYShvLmxpbmVXaWR0aEVtdSxyKTtmb3IobGV0IHQgb2YgaSl7ZS5iZWdpblBhdGgoKSxlLm1vdmVUbyh0WzBdLngsdFswXS55KTtmb3IobGV0IG49MTtuPHQubGVuZ3RoO24rKyllLmxpbmVUbyh0W25dLngsdFtuXS55KTtlLmNsb3NlUGF0aCgpLGYmJihlLmZpbGxTdHlsZT1mLGUuZmlsbCgpKSxwJiYoZS5zdHJva2VTdHlsZT1wLGUubGluZVdpZHRoPW0sZS5zZXRMaW5lRGFzaChacihvLmxpbmVDdXN0b21EYXNoLG8ubGluZURhc2gsbSkpLGUubGluZUNhcD1vLmxpbmVDYXA9PT1gcm5kYD9gcm91bmRgOm8ubGluZUNhcD09PWBzcWA/YHNxdWFyZWA6YGJ1dHRgLGUubGluZUpvaW49by5saW5lSm9pbj09PWByb3VuZGB8fG8ubGluZUpvaW49PT1gYmV2ZWxgP28ubGluZUpvaW46YG1pdGVyYCxlLnN0cm9rZSgpKX19aWYodC52YWxBeGlzTWlub3JHcmlkbGluZXM9PT0hMCl7bGV0IGU9RXModCxyKTtCZSh4Lm1pbm9yTGluZXMuZmlsdGVyKGU9PmU+PUMmJmU8PXcpLGUuY29sb3IsZS53aWR0aCx0LnZhbEF4aXNNaW5vckdyaWRsaW5lRGFzaCl9aWYoRnModCkpe2xldCBlPW9hKHQudmFsQXhpc0dyaWRsaW5lQ29sb3IsdC52YWxBeGlzR3JpZGxpbmVXaWR0aEVtdSxyKTtpZih0LnZhbEF4aXNNYWpvckdyaWRsaW5lcz09PSEwKUJlKGosZS5jb2xvcixlLndpZHRoLHQudmFsQXhpc0dyaWRsaW5lRGFzaCk7ZWxzZSBmb3IobGV0IG4gb2Ygail7bGV0IHI9QShuKSxpPVRlKG4pO0xlWzJdLnRoaWNrbmVzcz4wP3plKDIsYHlgLHIsZS5jb2xvcixlLndpZHRoLHQudmFsQXhpc0dyaWRsaW5lRGFzaCk6amUoW3t4OlEueCx5OmksZGVwdGg6TWV9LHt4OlEueCtRLncseTppLGRlcHRoOk1lfV0sZS5jb2xvcixlLndpZHRoLHQudmFsQXhpc0dyaWRsaW5lRGFzaCksTGVbMV0udGhpY2tuZXNzPjA/emUoMSxgeWAscixlLmNvbG9yLGUud2lkdGgsdC52YWxBeGlzR3JpZGxpbmVEYXNoKTpqZShbe3g6SWUseTppLGRlcHRoOk5lfSx7eDpJZSx5OmksZGVwdGg6TWV9XSxlLmNvbG9yLGUud2lkdGgsdC52YWxBeGlzR3JpZGxpbmVEYXNoKX19aWYodC5jYXRBeGlzTWlub3JHcmlkbGluZXM9PT0hMCl7bGV0IGU9anModCxyKTtWZShUdChkLHhlKSxlLmNvbG9yLGUud2lkdGgsdC5jYXRBeGlzTWlub3JHcmlkbGluZURhc2gpfWlmKHQuY2F0QXhpc01ham9yR3JpZGxpbmVzKXtsZXQgZT1vYSh0LmNhdEF4aXNHcmlkbGluZUNvbG9yLHQuY2F0QXhpc0dyaWRsaW5lV2lkdGhFbXUscik7VmUoTXModCxkKSxlLmNvbG9yLGUud2lkdGgsdC5jYXRBeGlzR3JpZGxpbmVEYXNoKX1mb3IobGV0IGU9MDtlPGYtMTtlKyspZm9yKGxldCB0PTA7dDxkLTE7dCsrKXtsZXQgbj1bdVtlXS52YWx1ZXNbdF0sdVtlXS52YWx1ZXNbdCsxXSx1W2UrMV0udmFsdWVzW3QrMV0sdVtlKzFdLnZhbHVlc1t0XV07aWYobi5zb21lKGU9PmU9PW51bGx8fCFOdW1iZXIuaXNGaW5pdGUoZSkpKWNvbnRpbnVlO2xldCByPVt7eDpTZSh0KSx5OlRlKG5bMF0pLGRlcHRoOndlKGUpLHZhbHVlOm5bMF19LHt4OlNlKHQrMSkseTpUZShuWzFdKSxkZXB0aDp3ZShlKSx2YWx1ZTpuWzFdfSx7eDpTZSh0KzEpLHk6VGUoblsyXSksZGVwdGg6d2UoZSsxKSx2YWx1ZTpuWzJdfSx7eDpTZSh0KSx5OlRlKG5bM10pLGRlcHRoOndlKGUrMSksdmFsdWU6blszXX1dO2ZvcihsZXQgZSBvZiBidShuKSlBZShlLm1hcChlPT5yW2VdKSl9aWYodC5zdXJmYWNlV2lyZWZyYW1lPT09ITApe2ZvcihsZXQgZT0wO2U8ZjtlKyspZm9yKGxldCB0PTA7dDxkLTE7dCsrKXtsZXQgbj11W2VdLnZhbHVlc1t0XSxyPXVbZV0udmFsdWVzW3QrMV07bj09bnVsbHx8cj09bnVsbHx8IU51bWJlci5pc0Zpbml0ZShuKXx8IU51bWJlci5pc0Zpbml0ZShyKXx8T2Uoe3g6U2UodCkseTpUZShuKSxkZXB0aDp3ZShlKSx2YWx1ZTpufSx7eDpTZSh0KzEpLHk6VGUociksZGVwdGg6d2UoZSksdmFsdWU6cn0pfWZvcihsZXQgZT0wO2U8ZDtlKyspZm9yKGxldCB0PTA7dDxmLTE7dCsrKXtsZXQgbj11W3RdLnZhbHVlc1tlXSxyPXVbdCsxXS52YWx1ZXNbZV07bj09bnVsbHx8cj09bnVsbHx8IU51bWJlci5pc0Zpbml0ZShuKXx8IU51bWJlci5pc0Zpbml0ZShyKXx8T2Uoe3g6U2UoZSkseTpUZShuKSxkZXB0aDp3ZSh0KSx2YWx1ZTpufSx7eDpTZShlKSx5OlRlKHIpLGRlcHRoOndlKHQrMSksdmFsdWU6cn0pfX1FZS5zb3J0KChlLHQpPT5lLmRlcHRoLXQuZGVwdGgpO2xldCBVZT1BcnJheS5mcm9tKHtsZW5ndGg6a30sKCk9Pih7bWluWDoxLzAsbWluWToxLzAsbWF4WDotMS8wLG1heFk6LTEvMH0pKTtmb3IobGV0IGUgb2YgRWUpe2xldCB0PVVlW2UuYmFuZF07Zm9yKGxldCBuIG9mIGUucG9pbnRzKXQubWluWD1NYXRoLm1pbih0Lm1pblgsbi54KSx0Lm1pblk9TWF0aC5taW4odC5taW5ZLG4ueSksdC5tYXhYPU1hdGgubWF4KHQubWF4WCxuLngpLHQubWF4WT1NYXRoLm1heCh0Lm1heFksbi55KX1mb3IobGV0IGUgb2YgRGUpe2xldCB0PVVlW2UuYmFuZF07Zm9yKGxldCBuIG9mIGUucG9pbnRzKXQubWluWD1NYXRoLm1pbih0Lm1pblgsbi54KSx0Lm1pblk9TWF0aC5taW4odC5taW5ZLG4ueSksdC5tYXhYPU1hdGgubWF4KHQubWF4WCxuLngpLHQubWF4WT1NYXRoLm1heCh0Lm1heFksbi55KX1sZXQgV2U9KHQsbik9PntpZih0PT1udWxsKXJldHVybiB0O2lmKHQuZmlsbFR5cGU9PT1gc29saWRgKXJldHVybmAjJHt0LmNvbG9yfWA7bGV0IHI9VWVbbl07cmV0dXJuIU51bWJlci5pc0Zpbml0ZShyLm1pblgpfHwhTnVtYmVyLmlzRmluaXRlKHIubWluWSl8fCFOdW1iZXIuaXNGaW5pdGUoci5tYXhYKXx8IU51bWJlci5pc0Zpbml0ZShyLm1heFkpP251bGw6YWkodCxlLHIubWluWCxyLm1pblksci5tYXhYLXIubWluWCxyLm1heFktci5taW5ZKX0sR2U9Ui5tYXAoV2UpLEtlPXoubWFwKFdlKTtmb3IobGV0IHQgb2YgRWUpe2xldCBuPVAuZ2V0KHQuYmFuZCk7ZS5iZWdpblBhdGgoKSxlLm1vdmVUbyh0LnBvaW50c1swXS54LHQucG9pbnRzWzBdLnkpO2ZvcihsZXQgbj0xO248dC5wb2ludHMubGVuZ3RoO24rKyllLmxpbmVUbyh0LnBvaW50c1tuXS54LHQucG9pbnRzW25dLnkpO2UuY2xvc2VQYXRoKCk7bGV0IGk9R2VbdC5iYW5kXTtpIT09bnVsbCYmKGUuZmlsbFN0eWxlPWk/P3ZvKE5bdC5iYW5kXSx5ZT94byhaLmNhbWVyYU5vcm1hbCh0LnNjZW5lUG9pbnRzKSk6MSksZS5maWxsKCkpO2xldCBhPUtlW3QuYmFuZF07aWYoYSE9bnVsbCl7bGV0IHQ9bj8uc3R5bGUsaT1GPy5saW5lTm9TdHlsZT09PSEwP3ZvaWQgMDpGO2Uuc3Ryb2tlU3R5bGU9YTtsZXQgbz1uPy5saW5lV2lkdGhFbXU/P3Q/LmxpbmVXaWR0aEVtdT8/aT8ubGluZVdpZHRoRW11O2UubGluZVdpZHRoPW89PW51bGw/MTppYShvLHIpLGUuc2V0TGluZURhc2goWnIodD8ubGluZUN1c3RvbURhc2g/P2k/LmxpbmVDdXN0b21EYXNoLHQ/LmxpbmVEYXNoPz9pPy5saW5lRGFzaCxlLmxpbmVXaWR0aCkpO2xldCBzPXQ/LmxpbmVDYXA/P2k/LmxpbmVDYXAsYz10Py5saW5lSm9pbj8/aT8ubGluZUpvaW47ZS5saW5lQ2FwPXM9PT1gcm5kYD9gcm91bmRgOnM9PT1gc3FgP2BzcXVhcmVgOmBidXR0YCxlLmxpbmVKb2luPWM9PT1gcm91bmRgfHxjPT09YGJldmVsYD9jOmBtaXRlcmAsZS5zdHJva2UoKX19aWYodC5zdXJmYWNlV2lyZWZyYW1lPT09ITApe2xldCB0PWFlP0sucGFpbnQ/LmZpbGxUeXBlPT09YHNvbGlkYD9gIyR7Sy5wYWludC5jb2xvcn1gOksucGFpbnQ/YWkoSy5wYWludCxlLGdlLF9lLHZlLFgpOksucGFpbnQ6dm9pZCAwLG49dGUubWFwKChlLG4pPT5lPT09dm9pZCAwP3Q6V2UoZSxuKSk7Zm9yKGxldCB0IG9mIERlKXtsZXQgaT1uZVt0LmJhbmRdLGE9blt0LmJhbmRdO2lmKGE9PT1udWxsKWNvbnRpbnVlO2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8odC5wb2ludHNbMF0ueCx0LnBvaW50c1swXS55KSxlLmxpbmVUbyh0LnBvaW50c1sxXS54LHQucG9pbnRzWzFdLnkpLGUuc3Ryb2tlU3R5bGU9YT8/Tlt0LmJhbmRdLGUubGluZVdpZHRoPWkubGluZVdpZHRoRW11PT1udWxsP01hdGgubWF4KDEsLjc1KnIpOmlhKGkubGluZVdpZHRoRW11LHIpLGUuc2V0TGluZURhc2goWnIoaS5saW5lQ3VzdG9tRGFzaCxpLmxpbmVEYXNoLGUubGluZVdpZHRoKSk7bGV0IG89aS5saW5lQ2FwLHM9aS5saW5lSm9pbjtlLmxpbmVDYXA9bz09PWBybmRgP2Byb3VuZGA6bz09PWBzcWA/YHNxdWFyZWA6YGJ1dHRgLGUubGluZUpvaW49cz09PWByb3VuZGB8fHM9PT1gYmV2ZWxgP3M6YG1pdGVyYCxlLnN0cm9rZSgpfX1lLnJlc3RvcmUoKTtsZXQgcWU9Wi5wcm9qZWN0KFEueCtRLncvMixRLnkrUS5oLzIsLjUpLEplPSh0LG4saSxhLG8scyxjLGwsdSk9PntpZihjfHx0PT1udWxsfHx0PT09YG5vbmVgKXJldHVybjtsZXQgZD1hLngtaS54LGY9YS55LWkueSxwPU1hdGguaHlwb3QoZCxmKTtpZighKHA+MWUtNikpcmV0dXJuO2xldCBtPS1mL3AsaD1kL3AsZz0oaS54K2EueCkvMixfPShpLnkrYS55KS8yOyhnLXFlLngpKm0rKF8tcWUueSkqaDwwJiYobT0tbSxoPS1oKTtsZXQgdj1TcyhsLHMscikseT10PT09YGNyb3NzYD92LzI6dixiPXQ9PT1gb3V0YHx8dD09PWBjcm9zc2A/eTowLHg9dD09PWBpbmB8fHQ9PT1gY3Jvc3NgP3k6MDt4cyhlLG4ueCttKmIsbi55K2gqYixuLngtbSp4LG4ueS1oKngsbyxzLHUpfSxZZT1aLnByb2plY3QoUS54LFBlLE5lKSxYZT1aLnByb2plY3QoUS54K1EudyxQZSxOZSksWmU9dC5jYXRBeGlzTGluZVdpZHRoRW11PT1udWxsPzE6aWEodC5jYXRBeGlzTGluZVdpZHRoRW11LHIpO3hzKGUsWWUueCxZZS55LFhlLngsWGUueSx0LmNhdEF4aXNMaW5lQ29sb3I/YCMke3QuY2F0QXhpc0xpbmVDb2xvcn1gOmAjMDAwMDAwYCxaZSx0LmNhdEF4aXNMaW5lRGFzaCk7bGV0IFFlPXQuY2F0QXhpc0xpbmVDb2xvcj9gIyR7dC5jYXRBeGlzTGluZUNvbG9yfWA6YCMwMDAwMDBgLCRlPXQuY2F0QXhpc0hpZGRlbnx8dC5jYXRBeGlzTGluZUhpZGRlbj09PSEwLGV0PU1hdGgubWF4KDEsTWF0aC5mbG9vcih0LmNhdEF4aXNUaWNrTWFya1NraXA/PzEpKTtmb3IobGV0IGU9MDtlPGQ7ZSs9ZXQpSmUodC5jYXRBeGlzTWFqb3JUaWNrTWFyayxaLnByb2plY3QoU2UoZSksUGUsTmUpLFllLFhlLFFlLFplLCRlLGBtYWpvcmAsdC5jYXRBeGlzTGluZURhc2gpO2lmKHQuY2F0QXhpc01pbm9yVGlja01hcmshPW51bGwmJnQuY2F0QXhpc01pbm9yVGlja01hcmshPT1gbm9uZWApZm9yKGxldCBlPTA7ZTxkLTE7ZSsrKXtsZXQgbj0oQ3QoZSxkLHhlLGJlKStDdChlKzEsZCx4ZSxiZSkpLzI7SmUodC5jYXRBeGlzTWlub3JUaWNrTWFyayxaLnByb2plY3QoUS54K24qUS53LFBlLE5lKSxZZSxYZSxRZSxaZSwkZSxgbWlub3JgLHQuY2F0QXhpc0xpbmVEYXNoKX1lLmZvbnQ9SG8ocGUsJCh0LHQuY2F0QXhpc0ZvbnRGYWNlLGBtaW5vcmApLHQuY2F0QXhpc0ZvbnRCb2xkPz8hMSx0LmNhdEF4aXNGb250SXRhbGljPz8hMSksZS5maWxsU3R5bGU9dC5jYXRBeGlzRm9udENvbG9yP2AjJHt0LmNhdEF4aXNGb250Q29sb3J9YDpgIzAwMDAwMGAsZS50ZXh0QmFzZWxpbmU9YHRvcGA7Zm9yKGxldCBuPTA7bjxkO24rKyl7bGV0IHI9RXQobixkLHNhKHQpLFBzKHQpLHQuY2F0QXhpc0xhYmVsQWxpZ25tZW50KSxpPVoucHJvamVjdChRLngrci5mcmFjdGlvbipRLncsUGUsTmUpO2UudGV4dEFsaWduPXIudGV4dEFsaWduLGUuZmlsbFRleHQobFtuXT8/YGAsaS54LGkueStTdCg4LHQuY2F0QXhpc0xhYmVsT2Zmc2V0UGVyY2VudCkpfWlmKCFtZT8uaGlkZGVuKXtsZXQgbj1tZT8ubGluZVdpZHRoRW11PT1udWxsPzE6aWEobWUubGluZVdpZHRoRW11LHIpLGk9Wi5wcm9qZWN0KFEueCxQZSwuNSksYT1aLnByb2plY3QoUS54K1EudyxQZSwuNSksbz1pLng+PWEueD9RLng6US54K1EudyxzPVoucHJvamVjdChvLFBlLE5lKSxjPVoucHJvamVjdChvLFBlLE1lKTt4cyhlLHMueCxzLnksYy54LGMueSxtZT8ubGluZUNvbG9yP2AjJHttZS5saW5lQ29sb3J9YDpgIzAwMDAwMGAsbixtZT8ubGluZURhc2gpO2xldCBsPW1lPy5saW5lQ29sb3I/YCMke21lLmxpbmVDb2xvcn1gOmAjMDAwMDAwYCxkPU1hdGgubWF4KDEsTWF0aC5mbG9vcihtZT8udGlja01hcmtTa2lwPz8xKSk7Zm9yKGxldCBlPTA7ZTxmO2UrPWQpSmUobWU/Lm1ham9yVGlja01hcmssWi5wcm9qZWN0KG8sUGUsd2UoZSkpLHMsYyxsLG4sbWU/LmxpbmVIaWRkZW49PT0hMCxgbWFqb3JgLG1lPy5saW5lRGFzaCk7aWYobWU/Lm1pbm9yVGlja01hcmshPW51bGwmJm1lLm1pbm9yVGlja01hcmshPT1gbm9uZWApZm9yKGxldCBlPTA7ZTxmLTE7ZSsrKUplKG1lLm1pbm9yVGlja01hcmssWi5wcm9qZWN0KG8sUGUsKHdlKGUpK3dlKGUrMSkpLzIpLHMsYyxsLG4sbWUubGluZUhpZGRlbj09PSEwLGBtaW5vcmAsbWUubGluZURhc2gpO2UuZm9udD1IbyhoZSwkKHQsbWU/LmZvbnRGYWNlLGBtaW5vcmApLG1lPy5mb250Qm9sZD8/ITEsbWU/LmZvbnRJdGFsaWM/PyExKSxlLmZpbGxTdHlsZT1tZT8uZm9udENvbG9yP2AjJHttZS5mb250Q29sb3J9YDpgIzAwMDAwMGAsZS50ZXh0QWxpZ249YGxlZnRgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgO2ZvcihsZXQgdD0wO3Q8Zjt0Kyspe2xldCBuPVoucHJvamVjdChvLFBlLHdlKHQpKTtlLmZpbGxUZXh0KHVbdF0ubmFtZSxuLngrOCxuLnkpfX1pZighdC52YWxBeGlzSGlkZGVuKXtsZXQgbj1aLnRvcG9sb2d5LmF4aXNYPT09YG1pbmA/US54OlEueCtRLncsaT1aLnByb2plY3QobixRLnkrUS5oLE5lKSxhPVoucHJvamVjdChuLFEueSxOZSk7aWYoTWF0aC5oeXBvdChhLngtaS54LGEueS1pLnkpPjQpe2xldCBvPXQudmFsQXhpc0xpbmVXaWR0aEVtdT09bnVsbD8xOmlhKHQudmFsQXhpc0xpbmVXaWR0aEVtdSxyKTt4cyhlLGkueCxpLnksYS54LGEueSx0LnZhbEF4aXNMaW5lQ29sb3I/YCMke3QudmFsQXhpc0xpbmVDb2xvcn1gOmAjMDAwMDAwYCxvLHQudmFsQXhpc0xpbmVEYXNoKSxlLmZvbnQ9SG8oWXModC52YWxBeGlzRm9udFNpemVIcHQsYyxyKSwkKHQsdC52YWxBeGlzRm9udEZhY2UsYG1pbm9yYCksdC52YWxBeGlzRm9udEJvbGQ/PyExLHQudmFsQXhpc0ZvbnRJdGFsaWM/PyExKSxlLmZpbGxTdHlsZT10LnZhbEF4aXNGb250Q29sb3I/YCMke3QudmFsQXhpc0ZvbnRDb2xvcn1gOmAjMDAwMDAwYDtsZXQgcz0oaS54K2EueCkvMjxnZSt2ZS8yO2UudGV4dEFsaWduPXM/YHJpZ2h0YDpgbGVmdGAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7Zm9yKGxldCByIG9mIGope2xldCBpPVoucHJvamVjdChuLFRlKHIpLE5lKTtlLmZpbGxUZXh0KGJhKHIsdC52YWxBeGlzRm9ybWF0Q29kZSx0LmRhdGUxOTA0KSxpLngrKHM/LTY6NiksaS55KX19fXZzKGUsbGUsdWUsYSxvLHMsYyxnZSxfZSx2ZSxYLGZlLmJhbmRIKzIscil9ZnVuY3Rpb24gWmMoZSx0LG4scixpPTApe2xldHt4OmEseTpvLHc6cyxoOmN9PW4sbD1wYyh0KSx1PWwubGVuZ3RoO2lmKHU9PT0wKXJldHVybjtsZXQgZD1jcyh0LHIpLGY9dC5zZXJpZXMubWFwKChlLHQpPT4oe3NlcmllczplLGNoYXJ0SW5kZXg6dH0pKS5maWx0ZXIoKHtzZXJpZXM6ZX0pPT5lLnNlcmllc1R5cGU9PW51bGx8fGUuc2VyaWVzVHlwZT09PWBhcmVhYCkscD10LnNlcmllcy5tYXAoKGUsdCk9Pih7c2VyaWVzOmUsY2hhcnRJbmRleDp0fSkpLmZpbHRlcigoe3NlcmllczplfSk9PmUuc2VyaWVzVHlwZT09PWBsaW5lYCk7aWYoZi5sZW5ndGg9PT0wJiZwLmxlbmd0aD09PTApcmV0dXJuO2xldCBtPVhuKHQpLGg9dC5jaGFydFR5cGU9PT1gc3RhY2tlZEFyZWFQY3RgP2BwZXJjZW50U3RhY2tlZGA6dC5jaGFydFR5cGU9PT1gc3RhY2tlZEFyZWFgP2BzdGFja2VkYDpgc3RhbmRhcmRgLGc9dC5wbG90R3JvdXBzPy5maWx0ZXIoZT0+ZS5raW5kPT09YGFyZWFgKT8/W3traW5kOmBhcmVhYCxzZXJpZXNTdGFydDowLHNlcmllc0NvdW50OmYubGVuZ3RoLGNhdGVnb3J5QXhpczpgcHJpbWFyeWAsdmFsdWVBeGlzOmBwcmltYXJ5YCxzZXJpZXNBeGlzOmBub25lYCxncm91cGluZzpofV0sXz1BcnJheSh0LnNlcmllcy5sZW5ndGgpLmZpbGwoLTEpO2ZvcihsZXQgZT0wO2U8Zi5sZW5ndGg7ZSsrKV9bZltlXS5jaGFydEluZGV4XT1lO2xldCB2PWcubWFwKGU9PntsZXQgbj1bXSxyPU1hdGgubWluKHQuc2VyaWVzLmxlbmd0aCxlLnNlcmllc1N0YXJ0K2Uuc2VyaWVzQ291bnQpO2ZvcihsZXQgdD1lLnNlcmllc1N0YXJ0O3Q8cjt0Kyspe2xldCBlPV9bdF07ZT49MCYmbi5wdXNoKGUpfXJldHVybntncm91cDplLGFyZWFJbmRpY2VzOm59fSkseT1BcnJheShmLmxlbmd0aCkuZmlsbCghMSksYj1BcnJheShmLmxlbmd0aCkuZmlsbCghMSkseD1BcnJheShmLmxlbmd0aCkuZmlsbChudWxsKSxTPWYubWFwKCgpPT5BcnJheSh1KS5maWxsKDApKSxDPWYubWFwKCgpPT5BcnJheSh1KS5maWxsKDApKSx3PXQucGxvdEdyb3Vwcz8uZmlsdGVyKGU9PihlLmtpbmQ9PT1gYXJlYWB8fGUua2luZD09PWBsaW5lYCkmJmUuc2VyaWVzQ291bnQ+MCk/P2csVD1uZXcgTWFwO2ZvcihsZXQgZSBvZiB3KXtsZXQgdD1lLnZhbHVlQXhpcztULnNldCh0LChULmdldCh0KT8/ITApJiZlLmdyb3VwaW5nPT09YHBlcmNlbnRTdGFja2VkYCl9Zm9yKGxldHtncm91cDplLGFyZWFJbmRpY2VzOnR9b2Ygdil7bGV0IG49ZS5ncm91cGluZz8/YHN0YW5kYXJkYCxyPW49PT1gc3RhY2tlZGB8fG49PT1gcGVyY2VudFN0YWNrZWRgLGk9bj09PWBwZXJjZW50U3RhY2tlZGAsYT1pJiZULmdldChlLnZhbHVlQXhpcyk9PT0hMD8xMDA6MSxvPWk/bC5tYXAoKGUsbik9PnQucmVkdWNlKChlLHQpPT5lK01hdGguYWJzKGZbdF0uc2VyaWVzLnZhbHVlc1tuXT8/MCksMCl8fDEpOm51bGw7Zm9yKGxldCBlIG9mIHQpeVtlXT1yLGJbZV09aSx4W2VdPW87Zm9yKGxldCBlPTA7ZTx1O2UrKyl7bGV0IG49MCxzPTA7Zm9yKGxldCBjIG9mIHQpe2xldCB0PWZbY10uc2VyaWVzLnZhbHVlc1tlXT8/MCxsPWkmJm8/dC9vW2VdKmE6dCx1PWw+PTA/bjpzO1NbY11bZV09cj91OjAsQ1tjXVtlXT1yP3UrbDpsLHImJihsPj0wP24rPWw6cys9bCl9fX1sZXQgRT13LmZpbHRlcihlPT5lLnZhbHVlQXhpcyE9PWBzZWNvbmRhcnlgKSxEPUUubGVuZ3RoPjAmJkUuZXZlcnkoZT0+ZS5ncm91cGluZz09PWBwZXJjZW50U3RhY2tlZGApLE89bmV3IE1hcChmLm1hcCgoZSx0KT0+W2Uuc2VyaWVzLHRdKSksaz1uZXcgTWFwKHQuc2VyaWVzLm1hcCgoZSx0KT0+W2UsdF0pKSxBPWU9Pm1bay5nZXQoZSk/Py0xXT8udmFsdWVBeGlzPT09YHNlY29uZGFyeWB8fHQucGxvdEdyb3Vwcz09bnVsbCYmZS51c2VTZWNvbmRhcnlBeGlzPT09ITAsaj13LmZpbHRlcihlPT5lLnZhbHVlQXhpcz09PWBzZWNvbmRhcnlgKSxNPWoubGVuZ3RoPjAmJmouZXZlcnkoZT0+ZS5ncm91cGluZz09PWBwZXJjZW50U3RhY2tlZGApLE49dC5zZWNvbmRhcnlWYWxBeGlzJiZ0LnNlcmllcy5zb21lKGU9PkEoZSkpP3Quc2Vjb25kYXJ5VmFsQXhpczpudWxsLFA9ZT0+TiE9bnVsbCYmQShlKSxGPXVjKGUsdCxzLGMsciksST1GLmZvbnRQeCxMPUYudG9wUGFkLFI9Ri5iYW5kSCx6PVlzKHQuY2F0QXhpc0ZvbnRTaXplSHB0LGMsciksQj1Zcyh0LnZhbEF4aXNGb250U2l6ZUhwdCxjLHIpLGVlPWhzKGUsdCxzLGMsLjIyLHIpLHtsZWdSaWdodFc6VixsZWdMZWZ0VzpILGxlZ1RvcEg6VSxsZWdCb3R0b21IOld9PVB0KGVlLHQubGVnZW5kT3ZlcmxheT09PSEwKSxHPXp0KHQscyxjLHIpLEs9Ry5jYXRGb250UHgsdGU9Ry52YWxGb250UHgsbmU9Ry5jYXRCYW5kSCxyZT1HLnZhbEJhbmRXLGllPVlvKHQpLGFlPVpvKHQsciksb2U9UW8oZSx0LHIpLHNlPVIrVStCLzIrMixjZT0oaWU/YWU6VnQoeix0LmNhdEF4aXNMYWJlbE9mZnNldFBlcmNlbnQpKStuZStXLGxlPWMtc2UtY2UsdWU9cmMoTix0LnNlcmllcyxsZS9yLGB5YCxNLCExLGU9PkEoZSksKGUsdCk9PntsZXQgbj1PLmdldChlKTtyZXR1cm4gbj09bnVsbD9lLnZhbHVlc1t0XT8/bnVsbDplLnZhbHVlc1t0XT09bnVsbD9udWxsOkNbbl1bdF0/P251bGx9KSxxPU1hdGgubWF4KDgsTWF0aC5taW4oMTEsYy8yMCkpLGRlPUF0KE4/LmZvbnRTaXplSHB0LHIpPz9xLEo9MDtpZihOJiZ1ZSYmIU4uaGlkZGVuKXtsZXQgbj1lLmZvbnQ7ZS5mb250PWAke2RlfXB4ICR7JCh0LE4uZm9udEZhY2UsYG1pbm9yYCl9YDtsZXQgcj0wO2ZvcihsZXQgbiBvZiB1ZS5tYWpvckxpbmVzKXI9TWF0aC5tYXgocixlLm1lYXN1cmVUZXh0KHpzKG4sTi5mb3JtYXRDb2RlPz9udWxsLHQuZGF0ZTE5MDQsTi5kaXNwbGF5VW5pdHMpKS53aWR0aCk7Sj1yKzE4LGUuZm9udD1ufWxldCBZPU4mJk4udGl0bGU/RnQoTi50aXRsZUZvbnRTaXplSHB0LHIpKzg6MCxmZT0oKCk9PntsZXQgZT0xLzAsdD0tMS8wO2ZvcihsZXQgbj0wO248dTtuKyspe2ZvcihsZXQgcj0wO3I8Zi5sZW5ndGg7cisrKXtsZXR7c2VyaWVzOml9PWZbcl07UChpKXx8aS52YWx1ZXNbbl09PW51bGx8fChlPU1hdGgubWluKGUsU1tyXVtuXSxDW3JdW25dKSx0PU1hdGgubWF4KHQsU1tyXVtuXSxDW3JdW25dKSl9Zm9yKGxldHtzZXJpZXM6cn1vZiBwKXtpZihQKHIpKWNvbnRpbnVlO2xldCBpPXIudmFsdWVzW25dO2khPW51bGwmJihlPU1hdGgubWluKGUsaSksdD1NYXRoLm1heCh0LGkpKX19cmV0dXJuIWlzRmluaXRlKGUpfHwhaXNGaW5pdGUodCk/e21pbjowLG1heDoxfTpEP3ttaW46ZTwwPy0xMDA6MCxtYXg6dD4wPzEwMDowfTp7bWluOmUsbWF4OnR9fSkoKTtpZighRCl7bGV0IGU9ZT0+e2ZlPXttaW46TWF0aC5taW4oZmUubWluLGUpLG1heDpNYXRoLm1heChmZS5tYXgsZSl9fTtmb3IobGV0IHQ9MDt0PGYubGVuZ3RoO3QrKyl7bGV0e3NlcmllczpufT1mW3RdO1Aobil8fG5jKG4sYHlgLGU9Pm4udmFsdWVzW2VdPT1udWxsP251bGw6Q1t0XVtlXSxlKX1mb3IobGV0e3Nlcmllczp0fW9mIHApUCh0KXx8bmModCxgeWAsZT0+dC52YWx1ZXNbZV0/P251bGwsZSl9bGV0IHBlPUhzKHQsZmUubWluLGZlLm1heCxsZS9yLEQpLG1lPXQudmFsQXhpc0ZvbnRTaXplSHB0PT1udWxsP01hdGgubWF4KDgsTWF0aC5taW4oMTEsbGUvMjApKTpCLGhlPTA7aWYoIXQudmFsQXhpc0hpZGRlbiYmdC5wbG90QXJlYU1hbnVhbExheW91dCE9bnVsbCYmdC5wbG90QXJlYU1hbnVhbExheW91dC5sYXlvdXRUYXJnZXQhPT1gaW5uZXJgKXtsZXQgbj1lLmZvbnQ7ZS5mb250PUhvKG1lLCQodCx0LnZhbEF4aXNGb250RmFjZSxgbWlub3JgKSx0LnZhbEF4aXNGb250Qm9sZD8/ITEsdC52YWxBeGlzRm9udEl0YWxpYz8/ITEpO2ZvcihsZXQgbiBvZiBwZS5tYWpvckxpbmVzKWhlPU1hdGgubWF4KGhlLGUubWVhc3VyZVRleHQoTHModCxuLEQpKS53aWR0aCk7ZS5mb250PW59bGV0IGdlPVd0KHt2YWxBeGlzSGlkZGVuOnQudmFsQXhpc0hpZGRlbixjYXRBeGlzSGlkZGVuOnQuY2F0QXhpc0hpZGRlbix2YWxMYWJlbFdpZHRoOmhlLHZhbExhYmVsRm9udFB4Om1lLGNhdExhYmVsRm9udFB4OnosdmFsTGFiZWxHYXBQeDp0LnZhbEF4aXNGb250U2l6ZUhwdD09bnVsbD82OlV0KG1lKSxjYXRMYWJlbEdhcFB4OnQuY2F0QXhpc0ZvbnRTaXplSHB0PT1udWxsP1N0KDMsdC5jYXRBeGlzTGFiZWxPZmZzZXRQZXJjZW50KTpTdChIdCh6KSx0LmNhdEF4aXNMYWJlbE9mZnNldFBlcmNlbnQpLG91dGVyVGV4dE1hcmdpblB4Olp0KnIsdmFsVGl0bGVCYW5kVzpyZSxjYXRUaXRsZUJhbmRIOm5lLHNlY29uZGFyeUJhbmRXOkorWX0pLF9lPXt0OnNlLHI6VitzKi4wNStKK1ksYjpjZSxsOkgrTWF0aC5tYXgocyouMTIrcmUsb2UpfTtmYyhlLHQsYSxvLHMsYyxvK0wsSSk7bGV0IHZlPUt0KHQsYSxvLHMsYyxyLHt0aXRsZUJhbmQ6RixsZWdlbmRTaWRlUmVzZXJ2ZUZyYWM6LjIyLGxlZ2VuZFJlc2VydmU6ZWUscGFkOl9lLGhvbm9yUGxvdEFyZWFNYW51YWxMYXlvdXQ6ITAsbWFudWFsT3V0ZXJJbnNldHM6Z2V9KSx7cHgwOlgscHkwOloscHc6eWV9PXZlLnBsb3RSZWN0LHtwaDpRfT12ZS5wbG90UmVjdDtpZih5ZTw9MHx8UTw9MClyZXR1cm47bGV0IGJlPWllPyRvKGUsdCx5ZS91LHIpOm51bGw7YmUmJmJlLnRvdGFsSGVpZ2h0PmFlJiYoUT1NYXRoLm1heCgxLFEtKGJlLnRvdGFsSGVpZ2h0LWFlKSkpLCRhKGUsdCxYLFoseWUsUSxyLGkpO2xldCB4ZT1Icyh0LGZlLm1pbixmZS5tYXgsUS9yLEQpLFNlPXNhKHQpLENlPVBzKHQpLHdlPXRjKHQsbCksVGU9d2U/ZT0+WCt3ZS5wb3NpdGlvbnNbZV0qeWU6U2U/ZT0+WCsoKENlP3UtMS1lOmUpKy41KS91KnllOmU9PntsZXQgdD1DZT91LTEtZTplO3JldHVybiBYKyh1PT09MT95ZS8yOnQvKHUtMSkqeWUpfSxFZT1lPT5aK1EteGUuZnJhYyhlKSpRLERlPXVlP3VlLm1ha2VUb1koWixRKTpFZSxPZT1lPT5QKGUpP0RlOkVlLGtlPUVlKEtjKHQseGUubWluLHhlLm1heCkpLEFlPU4mJnVlP0RlKEdjKHQuc2Vjb25kYXJ5Q2F0QXhpcz8uY3Jvc3Nlc0F0LHQuc2Vjb25kYXJ5Q2F0QXhpcz8uY3Jvc3Nlcyx1ZS5taW4sdWUubWF4KSk6a2UsamU9ZT0+UChlKT9BZTprZSx7Y29sb3I6TWUsd2lkdGg6TmV9PWFhKHQuY2F0QXhpc0xpbmVDb2xvcix0LmNhdEF4aXNMaW5lV2lkdGhFbXUscikse2NvbG9yOlBlLHdpZHRoOkZlfT1hYSh0LnZhbEF4aXNMaW5lQ29sb3IsdC52YWxBeGlzTGluZVdpZHRoRW11LHIpO2lmKCF0LnZhbEF4aXNIaWRkZW4pe2xldCBuPVRzKHQsciksaT1Fcyh0LHIpO2lmKHQudmFsQXhpc01pbm9yR3JpZGxpbmVzKWZvcihsZXQgdCBvZiB4ZS5taW5vckxpbmVzKXdzKGUsWCx5ZSxFZSh0KSwhMSxpKTtpZihGcyh0KSlmb3IobGV0IHQgb2YgeGUubWFqb3JMaW5lcyl3cyhlLFgseWUsRWUodCksdD09PTAsbil9aWYoTiYmdWUmJmljKGUsTix1ZSxEZSxYLHllLHIpLCF0LmNhdEF4aXNIaWRkZW4mJmtzKHQpKXtsZXQgbj1Bcyh0LHIpO2Uuc3Ryb2tlU3R5bGU9bi5jb2xvcixlLmxpbmVXaWR0aD1uLndpZHRoO2xldCBpPW4uZGFzaC5sZW5ndGg+MCYmZS5nZXRMaW5lRGFzaD9lLmdldExpbmVEYXNoKCk6W107bi5kYXNoLmxlbmd0aD4wJiZlLnNldExpbmVEYXNoKG4uZGFzaCk7bGV0IGE9d2U/d2UubWFqb3JUaWNrcy5tYXAoZT0+ZS5mcmFjdGlvbik6TXModCx1KTtmb3IobGV0IHQgb2YgYSl7bGV0IG49WCt0KnllO2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8obixaKSxlLmxpbmVUbyhuLForUSksZS5zdHJva2UoKX1uLmRhc2gubGVuZ3RoPjAmJmUuc2V0TGluZURhc2goaSl9bGV0IEllPXYuZmxhdE1hcCgoe2FyZWFJbmRpY2VzOmV9KT0+ZSksTGU9KGUsdCk9PkNbZV0/Llt0XT8/MDtmb3IobGV0IHQgb2YgSWUpe2xldHtzZXJpZXM6bixjaGFydEluZGV4Oml9PWZbdF0sYT1SbyhpLG4pLG89WitRLHM9T2UobiksYz1uLnNtb290aD09PSEwO2lmKGUuYmVnaW5QYXRoKCkseVt0XSl7bGV0IG49W107Zm9yKGxldCBlPTA7ZTx1O2UrKyluLnB1c2goe3g6VGUoZSkseTpFZShDW3RdW2VdKX0pO2UubW92ZVRvKG5bMF0ueCxuWzBdLnkpLEVsKGUsbixjKTtmb3IobGV0IG49dS0xO24+PTA7bi0tKWUubGluZVRvKFRlKG4pLEVlKFNbdF1bbl0pKX1lbHNle2xldCB0PVtdO2ZvcihsZXQgZT0wO2U8dTtlKyspdC5wdXNoKHt4OlRlKGUpLHk6cyhuLnZhbHVlc1tlXT8/MCl9KTtlLm1vdmVUbyhUZSgwKSxvKSxlLmxpbmVUbyh0WzBdLngsdFswXS55KSxFbChlLHQsYyksZS5saW5lVG8oVGUodS0xKSxvKX1lLmNsb3NlUGF0aCgpLGUuZmlsbFN0eWxlPWEsZS5maWxsKCksbi5saW5lSGlkZGVuIT09ITAmJihlLnN0cm9rZVN0eWxlPW4ubGluZUNvbG9yP2AjJHtuLmxpbmVDb2xvcn1gOmEsZS5saW5lV2lkdGg9bi5saW5lV2lkdGhFbXU/aWEobi5saW5lV2lkdGhFbXUscik6MS41LGUuc2V0TGluZURhc2goW10pLGUuc3Ryb2tlKCkpfWxldCBSZT1uZXcgTWFwO2ZvcihsZXQgZT0wO2U8Zi5sZW5ndGg7ZSsrKXtsZXQgdD1mW2VdLnNlcmllcyxuPXQuYXJlYUdyb3VwSW5kZXg/PzAscj1SZS5nZXQobik/P1tdO3IucHVzaCh7c2VyaWVzOnQsYXJlYUluZGV4OmV9KSxSZS5zZXQobixyKX1mb3IobGV0IG4gb2YgdC5hcmVhR3JvdXBEZWNvcmF0aW9ucz8/W10pe2lmKCFuLmRyb3BMaW5lc3x8IXljKGUsYmModCxuLmRyb3BMaW5lcyxgZHJvcExpbmVgKSxyKSljb250aW51ZTtsZXQgaT1SZS5nZXQobi5ncm91cEluZGV4KT8/W107Zm9yKGxldCB0PTA7dDx1O3QrKyl7bGV0IG49MS8wLHI9LTEvMCxhPSExO2ZvcihsZXQgZSBvZiBpKXtpZihlLnNlcmllcy52YWx1ZXNbdF09PW51bGwpY29udGludWU7bGV0IGk9T2UoZS5zZXJpZXMpKExlKGUuYXJlYUluZGV4LHQpKSxvPWplKGUuc2VyaWVzKTshTnVtYmVyLmlzRmluaXRlKGkpfHwhTnVtYmVyLmlzRmluaXRlKG8pfHwobj1NYXRoLm1pbihuLGksbykscj1NYXRoLm1heChyLGksbyksYT0hMCl9IWF8fE1hdGguYWJzKHItbik8LjAxfHwoZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhUZSh0KSxuKSxlLmxpbmVUbyhUZSh0KSxyKSxlLnN0cm9rZSgpKX19e2xldCBuPU1hdGgubWF4KDIsMi41KnIpO2ZvcihsZXQgcD0wO3A8Zi5sZW5ndGg7cCsrKXtsZXR7c2VyaWVzOm0sY2hhcnRJbmRleDpofT1mW3BdLGc9em8obS5kYXRhUG9pbnRPdmVycmlkZXMpLF89Um8oaCxtKSx2PU9lKG0pLHk9ZT0+TGUocCxlKSxTPXhbcF07Zm9yKGxldCBuIG9mIG0uZXJyQmFycz8/W10pa2woZSxtLENjKHQsbiksdSxUZSx2LHksXyk7bGV0IEM9KG0uc2hvd01hcmtlcj09PSEwfHx4bihtKSkmJm0ubWFya2VyU3ltYm9sIT09YG5vbmVgO2lmKEN8fGtuKG0pKWZvcihsZXQgdD0wO3Q8dTt0Kyspe2lmKG0udmFsdWVzW3RdPT1udWxsKWNvbnRpbnVlO2xldCBhPWcuZ2V0KHQpLG89TW4obSxhLGBjaXJjbGVgLEMpO2lmKG89PT1gbm9uZWApY29udGludWU7bGV0IHM9VGUodCksYz12KHkodCkpO2lmKHhuKG0pfHxTbihhKSl7bGV0IG49YT8ubWFya2VyU2l6ZT8/bS5tYXJrZXJTaXplPz81LGw9UG4obSxhLHQsXyksdT1hPy5tYXJrZXJMaW5lPz9tLm1hcmtlckxpbmU/P251bGwsZD1hPy5tYXJrZXJMaW5lV2lkdGhFbXU/P20ubWFya2VyTGluZVdpZHRoRW11O19sKGUscyxjLG8sbixsLHUscixkPT1udWxsP3ZvaWQgMDppYShkLHIpLE5uKG0sYSx0KSxpKX1lbHNlIGUuZmlsbFN0eWxlPV8sZS5iZWdpblBhdGgoKSxlLmFyYyhzLGMsbiwwLE1hdGguUEkqMiksZS5maWxsKCl9amwoZSxtLGwsdSxUZSx2LHksUSxyLHQuZGF0ZTE5MDQ/PyExLCEwLCQodCx0LmRhdGFMYWJlbEZvbnRGYWNlLGBtaW5vcmApLHQuZGF0YUxhYmVsUG9zaXRpb24/P2BjdHJgLHt4OlgseTpaLHc6eWUsaDpRfSx7eDphLHk6byx3OnMsaDpjfSxiW3BdJiZTP2U9PihtLnZhbHVlc1tlXT8/MCkvU1tlXTp2b2lkIDAsdm9pZCAwLGU9PiQodCxlLGBtaW5vcmApLFAobSk/Tj8uZGlzcGxheVVuaXRzOnQudmFsQXhpc0Rpc3BsYXlVbml0cyxlPT5kKGgsZSksZT0+aGModCxlLFAobSkmJnVlP3VlLm1heDp4ZS5tYXgpLGkpfX1mb3IobGV0e3NlcmllczpmLGNoYXJ0SW5kZXg6bX1vZiBwKXtsZXQgcD16byhmLmRhdGFQb2ludE92ZXJyaWRlcyksaD1SbyhtLGYpLGc9Zi5saW5lQ29sb3I/YCMke2YubGluZUNvbG9yfWA6aCxfPU9lKGYpO2lmKGYubGluZUhpZGRlbiE9PSEwKXtlLnN0cm9rZVN0eWxlPWcsZS5saW5lV2lkdGg9Zi5saW5lV2lkdGhFbXU/aWEoZi5saW5lV2lkdGhFbXUscik6TWF0aC5tYXgoMSwyLjI1KnIpLGUuc2V0TGluZURhc2goW10pLGUuYmVnaW5QYXRoKCk7bGV0IG49W10saT0oKT0+e24ubGVuZ3RoIT09MCYmKGUubW92ZVRvKG5bMF0ueCxuWzBdLnkpLEVsKGUsbixmLnNtb290aD09PSEwKSxuPVtdKX07Zm9yKGxldCBlPTA7ZTx1O2UrKyl7bGV0IHI9Zi52YWx1ZXNbZV07cj09bnVsbCYmKCh0LmRpc3BCbGFua3NBcz8/YGdhcGApPT09YGdhcGAmJmkoKSwodC5kaXNwQmxhbmtzQXM/P2BnYXBgKSE9PWB6ZXJvYCl8fG4ucHVzaCh7eDpUZShlKSx5Ol8ocj8/MCl9KX1pKCksZS5zdHJva2UoKX1sZXQgdj1lPT5mLnZhbHVlc1tlXT8/MDtmb3IobGV0IG4gb2YgZi5lcnJCYXJzPz9bXSlrbChlLGYsQ2ModCxuKSx1LFRlLF8sdixnKTtsZXQgeT0oZi5zaG93TWFya2VyPT09ITB8fHhuKGYpKSYmZi5tYXJrZXJTeW1ib2whPT1gbm9uZWA7aWYoeXx8a24oZikpZm9yKGxldCB0PTA7dDx1O3QrKyl7bGV0IG49Zi52YWx1ZXNbdF07aWYobj09bnVsbCljb250aW51ZTtsZXQgYT1wLmdldCh0KSxvPU1uKGYsYSxgY2lyY2xlYCx5KTtvIT09YG5vbmVgJiZfbChlLFRlKHQpLF8obiksbyxhPy5tYXJrZXJTaXplPz9mLm1hcmtlclNpemU/PzUsUG4oZixhLHQsZyksYT8ubWFya2VyTGluZT8/Zi5tYXJrZXJMaW5lPz9udWxsLHIsKGE/Lm1hcmtlckxpbmVXaWR0aEVtdT8/Zi5tYXJrZXJMaW5lV2lkdGhFbXUpPT1udWxsP3ZvaWQgMDppYShhPy5tYXJrZXJMaW5lV2lkdGhFbXU/P2YubWFya2VyTGluZVdpZHRoRW11LHIpLE5uKGYsYSx0KSxpKX1qbChlLGYsbCx1LFRlLF8sdixRLHIsdC5kYXRlMTkwND8/ITEsITEsJCh0LHQuZGF0YUxhYmVsRm9udEZhY2UsYG1pbm9yYCksdC5kYXRhTGFiZWxQb3NpdGlvbj8/YHJgLHt4OlgseTpaLHc6eWUsaDpRfSx7eDphLHk6byx3OnMsaDpjfSx2b2lkIDAsdm9pZCAwLGU9PiQodCxlLGBtaW5vcmApLFAoZik/Tj8uZGlzcGxheVVuaXRzOnQudmFsQXhpc0Rpc3BsYXlVbml0cyxlPT5kKG0sZSksZT0+aGModCxlLFAoZikmJnVlP3VlLm1heDp4ZS5tYXgpLGkpLEtzKGUsZixnLFRlLF8scix2b2lkIDAse2NoYXJ0OnQsY2hhcnRSZWN0Om4scGxvdFJlY3Q6e3g6WCx5Olosdzp5ZSxoOlF9LHNoYXBlUm90YXRpb25EZWc6aX0pfWlmKCF0LnZhbEF4aXNIaWRkZW4pe2xldCBuPXQudmFsQXhpc0ZvbnRTaXplSHB0PT1udWxsP01hdGgubWF4KDgsTWF0aC5taW4oMTEsUS8yMCkpOkI7ZS5mb250PUhvKG4sJCh0LHQudmFsQXhpc0ZvbnRGYWNlLGBtaW5vcmApLHQudmFsQXhpc0ZvbnRCb2xkPz8hMSx0LnZhbEF4aXNGb250SXRhbGljPz8hMSksZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7Zm9yKGxldCBpIG9mIHhlLm1ham9yTGluZXMpe2xldCBhPUVlKGkpO2JzKGUsdC52YWxBeGlzTWFqb3JUaWNrTWFyayxgdmFsYCxYLGEsUGUsRmUsITEsdC52YWxBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC52YWxBeGlzTGluZURhc2gpLGUuZmlsbFN0eWxlPXQudmFsQXhpc0ZvbnRDb2xvcj9gIyR7dC52YWxBeGlzRm9udENvbG9yfWA6YCM1NTVgLGUudGV4dEFsaWduPWByaWdodGA7bGV0IG89dC52YWxBeGlzRm9udFNpemVIcHQ9PW51bGw/NjpVdChuKTtlLmZpbGxUZXh0KExzKHQsaSxEKSxYLW8sYSl9aWYodC52YWxBeGlzTWlub3JUaWNrTWFyayYmdC52YWxBeGlzTWlub3JUaWNrTWFyayE9PWBub25lYClmb3IobGV0IG4gb2YgeGUubWlub3JUaWNrcylicyhlLHQudmFsQXhpc01pbm9yVGlja01hcmssYHZhbGAsWCxFZShuKSxQZSxGZSwhMSx0LnZhbEF4aXNMaW5lSGlkZGVuLGBtaW5vcmAscix0LnZhbEF4aXNMaW5lRGFzaCl9aWYoIXQuY2F0QXhpc0hpZGRlbiYmIXQuY2F0QXhpc0xpbmVIaWRkZW4mJnhzKGUsWCxrZSxYK3llLGtlLE1lLE5lLHQuY2F0QXhpc0xpbmVEYXNoKSwhdC52YWxBeGlzSGlkZGVuJiYhdC52YWxBeGlzTGluZUhpZGRlbiYmdC52YWxBeGlzTGluZUNvbG9yIT1udWxsJiZ4cyhlLFgsWixYLForUSxQZSxGZSx0LnZhbEF4aXNMaW5lRGFzaCksIXQuY2F0QXhpc0hpZGRlbiYmdC5jYXRBeGlzTWFqb3JUaWNrTWFyayYmdC5jYXRBeGlzTWFqb3JUaWNrTWFyayE9PWBub25lYCl7bGV0IG49TWF0aC5tYXgoMSxNYXRoLmZsb29yKHQuY2F0QXhpc1RpY2tNYXJrU2tpcD8/MSkpO2lmKHdlKWZvcihsZXQgbiBvZiB3ZS5tYWpvclRpY2tzKWJzKGUsdC5jYXRBeGlzTWFqb3JUaWNrTWFyayxgY2F0YCxrZSxYK24uZnJhY3Rpb24qeWUsTWUsTmUsITEsdC5jYXRBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC5jYXRBeGlzTGluZURhc2gpO2Vsc2UgaWYoU2UpZm9yKGxldCBpPTA7aTw9dTtpKz1uKWJzKGUsdC5jYXRBeGlzTWFqb3JUaWNrTWFyayxgY2F0YCxrZSxYK2kvdSp5ZSxNZSxOZSwhMSx0LmNhdEF4aXNMaW5lSGlkZGVuLGBtYWpvcmAscix0LmNhdEF4aXNMaW5lRGFzaCk7ZWxzZSBmb3IobGV0IGk9MDtpPHU7aSs9bilicyhlLHQuY2F0QXhpc01ham9yVGlja01hcmssYGNhdGAsa2UsVGUoaSksTWUsTmUsITEsdC5jYXRBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC5jYXRBeGlzTGluZURhc2gpfWlmKCF0LmNhdEF4aXNIaWRkZW4mJnQuY2F0QXhpc01pbm9yVGlja01hcmsmJnQuY2F0QXhpc01pbm9yVGlja01hcmshPT1gbm9uZWAmJndlKWZvcihsZXQgbiBvZiB3ZS5taW5vclRpY2tzKWJzKGUsdC5jYXRBeGlzTWlub3JUaWNrTWFyayxgY2F0YCxrZSxYK24uZnJhY3Rpb24qeWUsTWUsTmUsITEsdC5jYXRBeGlzTGluZUhpZGRlbixgbWlub3JgLHIsdC5jYXRBeGlzTGluZURhc2gpO2lmKCFpZSYmIXQuY2F0QXhpc0hpZGRlbil7bGV0IG49dC5jYXRBeGlzRm9udFNpemVIcHQ9PW51bGw/TWF0aC5tYXgoOCxNYXRoLm1pbigxMSx5ZS91Ki44KSk6ejtlLmZpbGxTdHlsZT10LmNhdEF4aXNGb250Q29sb3I/YCMke3QuY2F0QXhpc0ZvbnRDb2xvcn1gOmAjNTU1YCxlLnRleHRBbGlnbj1gY2VudGVyYCxlLnRleHRCYXNlbGluZT1gdG9wYCxlLmZvbnQ9SG8obiwkKHQsdC5jYXRBeGlzRm9udEZhY2UsYG1pbm9yYCksdC5jYXRBeGlzRm9udEJvbGQ/PyExLHQuY2F0QXhpc0ZvbnRJdGFsaWM/PyExKTtsZXQgcj1NYXRoLm1heCgxLE1hdGguZmxvb3IodC5jYXRBeGlzVGlja0xhYmVsU2tpcD8/MSkpLGk9d2U/d2UubWFqb3JUaWNrcy5tYXAoZT0+KHtsYWJlbDp4YShTdHJpbmcoZS5zZXJpYWwpLHQuY2F0QXhpc0Zvcm1hdENvZGUsdC5kYXRlMTkwNCkseDpYK2UuZnJhY3Rpb24qeWUsY2F0ZWdvcnlJbmRleDotMX0pKTpBcnJheS5mcm9tKHtsZW5ndGg6TWF0aC5jZWlsKHUvcil9LChlLG4pPT57bGV0IGk9bipyO3JldHVybntsYWJlbDp4YSgobFtpXT8/YGApLnRvU3RyaW5nKCksdC5jYXRBeGlzRm9ybWF0Q29kZSx0LmRhdGUxOTA0KSx4OlRlKGkpLGNhdGVnb3J5SW5kZXg6aX19KTtmb3IobGV0IHIgb2YgaSl7bGV0IGk9ci5sYWJlbDtpZighaSljb250aW51ZTtsZXQgYT1yLmNhdGVnb3J5SW5kZXg8MD9udWxsOkV0KHIuY2F0ZWdvcnlJbmRleCx1LHNhKHQpLFBzKHQpLHQuY2F0QXhpc0xhYmVsQWxpZ25tZW50KSxvPVN0KHQuY2F0QXhpc0ZvbnRTaXplSHB0PT1udWxsPzM6SHQobiksdC5jYXRBeGlzTGFiZWxPZmZzZXRQZXJjZW50KTtlLnRleHRBbGlnbj1hPy50ZXh0QWxpZ24/P2BjZW50ZXJgO2xldCBzPXQuY2F0QXhpc1RpY2tMYWJlbFBvcz8/YG5leHRUb2AsYz1zPT09YG5leHRUb2A/a2U6cz09PWBoaWdoYD9aOlorUTtlLmZpbGxUZXh0KGksYT9YK2EuZnJhY3Rpb24qeWU6ci54LGMrbyl9fWlmKE4mJnVlKXtsZXQgaT10LnZhbEF4aXNGb250Q29sb3I/YCMke3QudmFsQXhpc0ZvbnRDb2xvcn1gOmAjNTU1YDthYyhlLHQsTix1ZSxEZSxuLFgsWix5ZSxRLHIsZGUsSixpLHQuZGF0ZTE5MDQpfWJlJiZlcyhlLHQsYmUsWCxaK1EseWUsYStILHIpLHZzKGUsdCxlZSxhLG8scyxjLFgsWix5ZSxRLFIrMixyKSxKbyhlLHQsYSxvLHMsYyxYLFoseWUsUSxILFcsSyx0ZSl9ZnVuY3Rpb24gUWMoZSx0LG4scixpPTApe2xldCBhPXQuc2VyaWVzWzBdO2lmKCFhKXJldHVybjtsZXQgbz1NYSh0Lm9mUGllLGEudmFsdWVzKTtpZihvPT1udWxsfHxvLnNpemU9PT0wKXskYyhlLHsuLi50LGNoYXJ0VHlwZTpgcGllYH0sbiwhMSxyLGkpO3JldHVybn1sZXQgcz1bXSxjPVtdO2ZvcihsZXQgZT0wO2U8YS52YWx1ZXMubGVuZ3RoO2UrKyl7bGV0IHQ9YS52YWx1ZXNbZV0sbj10PT1udWxsPzA6TWF0aC5hYnModCk7IShuPjApfHwhTnVtYmVyLmlzRmluaXRlKG4pfHwoby5oYXMoZSk/YzpzKS5wdXNoKHtzb3VyY2VJbmRleDplLHZhbHVlOm59KX1pZihjLmxlbmd0aD09PTApeyRjKGUsey4uLnQsY2hhcnRUeXBlOmBwaWVgfSxuLCExLHIsaSk7cmV0dXJufWxldCBsPXsuLi50LGNoYXJ0VHlwZTpgcGllYH0sdT1ocyhlLGwsbi53LG4uaCwuMjgsciksZD1LdCh0LG4ueCxuLnksbi53LG4uaCxyLHt0aXRsZVRvcFBhZEZyYWM6LjAzNSx0aXRsZUJvdHRvbVBhZEZyYWM6LjAzNSxsZWdlbmRTaWRlUmVzZXJ2ZUZyYWM6LjI4LGxlZ2VuZFJlc2VydmU6dSxyYWRpYWxHYXBGcmFjOi4wMixob25vclBsb3RBcmVhTWFudWFsTGF5b3V0OiEwfSk7ZmMoZSx0LG4ueCxuLnksbi53LG4uaCxuLnkrZC50aXRsZS50b3BQYWQsZC50aXRsZS5mb250UHgpO2xldHtweDA6ZixweTA6cCxwdzptLHBoOmh9PWQucGxvdFJlY3Q7aWYoIShtPjApfHwhKGg+MCkpcmV0dXJuOyRhKGUsdCxmLHAsbSxoLHIsaSk7bGV0IGc9dC5vZlBpZSxfPU1hdGgubWF4KC4wNSxNYXRoLm1pbigyLChnPy5zZWNvbmRQaWVTaXplUGVyY2VudD8/NzUpLzEwMCkpLHY9TWF0aC5tYXgoMCxnPy5nYXBXaWR0aFBlcmNlbnQ/PzE1MCkvMTAwLHk9TWF0aC5taW4oaCouNDQsbSouOS8oMisyKl8rdikpLGI9eSpfO2lmKCEoeT4wKXx8IShiPjApKXJldHVybjtsZXQgeD1mKyhtLSgyKnkrdip5KzIqYikpLzIsUz14K3ksQz14KzIqeSt2KnkrYix3PXAraC8yLFQ9Yy5yZWR1Y2UoKGUsdCk9PmUrdC52YWx1ZSwwKSxFPVsuLi5zLHtzb3VyY2VJbmRleDpjWzBdLnNvdXJjZUluZGV4LHZhbHVlOlR9XSxEPShuLHIsaSk9PntsZXQgbz1uLnJlZHVjZSgoZSx0KT0+ZSt0LnZhbHVlLDApLHM9LU1hdGguUEkvMixjPXMsbD1zO2ZvcihsZXQgdT0wO3U8bi5sZW5ndGg7dSsrKXtsZXQgZD1uW3VdLGY9bz4wP2QudmFsdWUvbypNYXRoLlBJKjI6MDtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHIsdyksZS5hcmMocix3LGkscyxzK2YpLGUuY2xvc2VQYXRoKCksZS5maWxsU3R5bGU9Qm8oZC5zb3VyY2VJbmRleCxhLHQudmFyeUNvbG9ycyE9PSExKSxlLmZpbGwoKSxlLnN0cm9rZVN0eWxlPWAjZmZmYCxlLmxpbmVXaWR0aD0xLGUuc3Ryb2tlKCksdT09PW4ubGVuZ3RoLTEmJihjPXMsbD1zK2YpLHMrPWZ9cmV0dXJue2FnZ3JlZ2F0ZVN0YXJ0OmMsYWdncmVnYXRlRW5kOmx9fSxPPUQoRSxTLHkpLGs9dy1iLEE9dytiO2lmKChnPy50eXBlPz9gcGllYCk9PT1gYmFyYCl7bGV0IG49dy1iLHI9Yjtmb3IobGV0IGkgb2YgYyl7bGV0IG89VD4wPzIqYippLnZhbHVlL1Q6MDtlLmZpbGxTdHlsZT1CbyhpLnNvdXJjZUluZGV4LGEsdC52YXJ5Q29sb3JzIT09ITEpLGUuZmlsbFJlY3QoQy1yLzIsbixyLG8pLGUuc3Ryb2tlU3R5bGU9YCNmZmZgLGUubGluZVdpZHRoPTEsZS5zdHJva2VSZWN0KEMtci8yLG4scixvKSxuKz1vfWs9dy1iLEE9dytifWVsc2UgRChjLEMsYik7aWYoZz8uc2VyaWVzTGluZXM/PyEwKXtlLnN0cm9rZVN0eWxlPWAjODA4MDgwYCxlLmxpbmVXaWR0aD1NYXRoLm1heCgxLC43NSpyKSxlLnNldExpbmVEYXNoKFtdKTtsZXQgdD17eDpTK01hdGguY29zKE8uYWdncmVnYXRlU3RhcnQpKnkseTp3K01hdGguc2luKE8uYWdncmVnYXRlU3RhcnQpKnl9LG49e3g6UytNYXRoLmNvcyhPLmFnZ3JlZ2F0ZUVuZCkqeSx5OncrTWF0aC5zaW4oTy5hZ2dyZWdhdGVFbmQpKnl9O2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8odC54LHQueSksZS5saW5lVG8oQy1iLGspLGUuc3Ryb2tlKCksZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhuLngsbi55KSxlLmxpbmVUbyhDLWIsQSksZS5zdHJva2UoKX11JiZ2cyhlLGwsdSxuLngsbi55LG4udyxuLmgsZixwLG0saCxkLnRpdGxlLmJhbmRIKzIscil9ZnVuY3Rpb24gJGMoZSx0LG4scixpLGE9MCl7bGV0e3g6byx5OnMsdzpjLGg6bH09bix1PXQuc2VyaWVzWzBdO2lmKCF1KXJldHVybjtsZXQgZD11LmNhdGVnb3JpZXMmJnUuY2F0ZWdvcmllcy5sZW5ndGg+MD91LmNhdGVnb3JpZXM6dC5jYXRlZ29yaWVzLGY9dS52YWx1ZXMubWFwKGU9Pk1hdGguYWJzKGU/PzApKSxwPWYucmVkdWNlKChlLHQpPT5lK3QsMCk7aWYocD09PTApcmV0dXJuO2xldCBtPXsuLi50LHNlcmllczpbey4uLnUsY2F0ZWdvcmllczpkfV19LGg9aHMoZSxtLGMsbCwuMjgsaSksZz1LdCh0LG8scyxjLGwsaSx7dGl0bGVUb3BQYWRGcmFjOi4wMzUsdGl0bGVCb3R0b21QYWRGcmFjOi4wMzUsbGVnZW5kU2lkZVJlc2VydmVGcmFjOi4yOCxsZWdlbmRSZXNlcnZlOmgscmFkaWFsR2FwRnJhYzouMDIsaG9ub3JQbG90QXJlYU1hbnVhbExheW91dDohMH0pLF89Zy50aXRsZS5mb250UHgsdj1nLnRpdGxlLmJhbmRIO2ZjKGUsdCxvLHMsYyxsLHMrZy50aXRsZS50b3BQYWQsXyk7bGV0e3B4MDp5LHB5MDpiLHB3OngscGg6U309Zy5wbG90UmVjdDskYShlLHQseSxiLHgsUyxpLGEpO2xldCBDPWcuY2VudGVyLmN4LHc9Zy5jZW50ZXIuY3ksVD1NYXRoLm1pbih4LFMpKi40MixFPS1NYXRoLlBJLzIrKHQuZmlyc3RTbGljZUFuZ2xlPz8wKSpNYXRoLlBJLzE4MCxEPXI/TWF0aC5tYXgoMSxNYXRoLm1pbig5MCx0LmhvbGVTaXplPz81MCkpOjAsTz1yP3Quc2VyaWVzOlt1XSxrPW5ldyBNYXAoTy5tYXAoZT0+W2Usem8oZS5kYXRhUG9pbnRPdmVycmlkZXMpXSkpLEE9KFQtRC8xMDAqVCkvTy5sZW5ndGgsaj0oZSx0KT0+e2xldCBuPWsuZ2V0KGUpPy5nZXQodCk/LmV4cGxvc2lvbj8/ZS5leHBsb3Npb24/PzA7cmV0dXJuIG4+MD9uLzEwMCpUOjB9LE09dS5zZXJpZXNEYXRhTGFiZWxzPz97c2hvd1ZhbDohMSxzaG93Q2F0TmFtZTohMSxzaG93U2VyTmFtZTohMSxzaG93UGVyY2VudDohMX0sTj11LnNlcmllc0RhdGFMYWJlbHMhPW51bGx8fCh1LmRhdGFMYWJlbE92ZXJyaWRlcz8ubGVuZ3RoPz8wKT4wLFA9dC5zaG93RGF0YUxhYmVscyYmIU4sRj0kKHQsTS5mb250RmFjZT8/dC5kYXRhTGFiZWxGb250RmFjZSxgbWlub3JgKTtmb3IobGV0IG49MDtuPE8ubGVuZ3RoO24rKyl7bGV0IGE9T1tuXSxvPWEudmFsdWVzLm1hcChlPT5NYXRoLmFicyhlPz8wKSkscz1vLnJlZHVjZSgoZSx0KT0+ZSt0LDApO2lmKHM9PT0wKWNvbnRpbnVlO2xldCBjPVQtbipBLGw9Yy1BLHU9RTtmb3IobGV0IGQ9MDtkPG8ubGVuZ3RoO2QrKyl7bGV0IGY9b1tkXS9zKk1hdGguUEkqMixwPUJvKGQsYSx0LnZhcnlDb2xvcnMhPT0hMSksbT11K2YvMixoPWooYSxkKSxnPWg+MD9NYXRoLmNvcyhtKSpoOjAsXz1oPjA/TWF0aC5zaW4obSkqaDowO2UuYmVnaW5QYXRoKCksbD4uMDE/KGUuYXJjKEMrZyx3K18sYyx1LHUrZiksZS5hcmMoQytnLHcrXyxsLHUrZix1LCEwKSk6KGUubW92ZVRvKEMrZyx3K18pLGUuYXJjKEMrZyx3K18sYyx1LHUrZikpLGUuY2xvc2VQYXRoKCksZS5maWxsU3R5bGU9cCxlLmZpbGwoKTtsZXQgdj1rLmdldChhKT8uZ2V0KGQpLHk9dj8ubGluZUhpZGRlbj8/YS5saW5lSGlkZGVuLGI9dj8ubGluZUNvbG9yPz9hLmxpbmVDb2xvcjtpZih5IT09ITAmJmIpe2xldCB0PXY/LmxpbmVXaWR0aEVtdT8/YS5saW5lV2lkdGhFbXUsbj10PT1udWxsP01hdGgubWF4KC41LGkqLjc1KTppYSh0LGkpO2Uuc2F2ZSgpLGUuc3Ryb2tlU3R5bGU9YCMke2J9YCxlLmxpbmVXaWR0aD1uLGUuc2V0TGluZURhc2goRGwodj8ubGluZURhc2g/P2EuY2hhcnRleFN0eWxlPy5saW5lRGFzaD8/dm9pZCAwLG4pKSxlLmxpbmVDYXA9YS5jaGFydGV4U3R5bGU/LmxpbmVDYXA9PT1gcm5kYD9gcm91bmRgOmEuY2hhcnRleFN0eWxlPy5saW5lQ2FwPT09YHNxYD9gc3F1YXJlYDpgYnV0dGAsZS5saW5lSm9pbj1hLmNoYXJ0ZXhTdHlsZT8ubGluZUpvaW49PT1gcm91bmRgfHxhLmNoYXJ0ZXhTdHlsZT8ubGluZUpvaW49PT1gYmV2ZWxgP2EuY2hhcnRleFN0eWxlLmxpbmVKb2luOmBtaXRlcmAsZS5zdHJva2UoKSxlLnJlc3RvcmUoKX1pZihQJiZuPT09MCYmZj4uMTUpe2xldCB0PVQqKHI/Ljc1Oi42KSxuPUMrZytNYXRoLmNvcyhtKSp0LGk9dytfK01hdGguc2luKG0pKnQsYT1NYXRoLnJvdW5kKG9bZF0vcyoxMDApO2UuZm9udD1gYm9sZCAke01hdGgubWF4KDgsVCouMSl9cHggJHtGfWAsZS5maWxsU3R5bGU9YCNmZmZgLGUudGV4dEFsaWduPWBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgLGUuZmlsbFRleHQoYCR7YX0lYCxuLGkpfXUrPWZ9fU4mJmVsKGUsdCxNLHUsZCxmLHAsQyx3LFQscj9ULUE6MCxFLEYsaSx5LGIseCxTLG8scyxjLGwsYSksaCYmdnMoZSxtLGgsbyxzLGMsbCx5LGIseCxTLHYrMixpKX1mdW5jdGlvbiBlbChlLHQsbixyLGksYSxvLHMsYyxsLHUsZCxmLHAsbSxoLGcsXyx2LHksYix4LFMpe2xldCBDPXpvKHIuZGF0YUxhYmVsT3ZlcnJpZGVzPz9bXSksdz1jcyh7Li4udCxzZXJpZXM6W3suLi5yLGNhdGVnb3JpZXM6aX1dfSxwKSxUPW5ldyBTZXQ7Zm9yKGxldCBlPTA7ZTxhLmxlbmd0aDtlKyspe2xldCB0PUMuZ2V0KGUpO2lmKHVuKG4sdCkpY29udGludWU7bGV0IHI9TmkodD8ubGFiZWxCb3gsbi5sYWJlbEJveCk7cj8uZmlsbEhpZGRlbiE9PSEwJiYocj8uZmlsbCE9bnVsbHx8cj8uZmlsbFBhaW50IT1udWxsKSYmVC5hZGQoZSl9VC5zaXplPjAmJmFsKGUsdCxuLHIsaSxhLG8scyxjLGwsdSxkLGYscCxtLGcsaCxfLHYseSxiLHgsVCxDLFMpO2xldCBFPVtdLEQ9ZDtmb3IobGV0IGQ9MDtkPGEubGVuZ3RoO2QrKyl7bGV0IE89YVtkXS9vKk1hdGguUEkqMixrPUQrTy8yO2lmKEQrPU8sVC5oYXMoZCkpY29udGludWU7bGV0IEE9Qy5nZXQoZCk7aWYodW4obixBKSljb250aW51ZTtsZXQgaj1BPy5zaG93Q2F0TmFtZT8/bi5zaG93Q2F0TmFtZSxNPUE/LnNob3dTZXJOYW1lPz9uLnNob3dTZXJOYW1lLE49QT8uc2hvd1ZhbD8/bi5zaG93VmFsLFA9QT8uc2hvd1BlcmNlbnQ/P24uc2hvd1BlcmNlbnQsRj1BPy5zaG93TGVnZW5kS2V5Pz9uLnNob3dMZWdlbmRLZXk/PyExLEk9cWEoe2N1c3RvbVRleHQ6QT8udGV4dCxzaG93Q2F0ZWdvcnk6aixzaG93U2VyaWVzOk0sc2hvd1ZhbHVlOk4sc2hvd1BlcmNlbnQ6UCxjYXRlZ29yeTooaVtkXT8/YGApLnRvU3RyaW5nKCksc2VyaWVzTmFtZTpyLm5hbWUsc291cmNlVmFsdWU6YVtkXSxwZXJjZW50UmF0aW86YVtkXS9vLGZvcm1hdENvZGU6QT8uZm9ybWF0Q29kZT8/bi5mb3JtYXRDb2RlPz9yLnZhbEZvcm1hdENvZGU/P251bGwscGVyY2VudEZvcm1hdENvZGU6QT8uZm9ybWF0Q29kZT8/bi5mb3JtYXRDb2RlPz9gMCVgLGRhdGUxOTA0OnQuZGF0ZTE5MDQ/PyExLHNlcGFyYXRvcjpBPy5zZXBhcmF0b3I/P24uc2VwYXJhdG9yfSksTD1GP3coMCxkKTp2b2lkIDA7aWYoIUkmJiFMKWNvbnRpbnVlO2xldCBSPShBPy5wb3NpdGlvbj8/bi5wb3NpdGlvbj8/YGJlc3RGaXRgKT09PWBvdXRFbmRgLHo9QXQoQT8uZm9udFNpemVIcHQ/P24uZm9udFNpemVIcHQscCk/P01hdGgubWF4KDgsbCouMSksQj1BPy5mb250Qm9sZD8/bi5mb250Qm9sZCxlZT1BPy5mb250Q29sb3I/P24uZm9udENvbG9yLFY9QT8uZm9udEZhY2U/P24uZm9udEZhY2U/JCh0LEE/LmZvbnRGYWNlPz9uLmZvbnRGYWNlLGBtaW5vcmApOmYsSD1kbihBLG4pLFU9eGwodCxBLHAsVixCPz8hMSxIKSxXPXU+LjAxPyh1K2wpLzI6bCpDdTtpZihBPy5tYW51YWxMYXlvdXQpe2UuZm9udD1gJHtILmZvbnRJdGFsaWM/YGl0YWxpYyBgOmBgfSR7Qj9gYm9sZCBgOmBgfSR7en1weCAke1Z9YCxDbChlLEkse2tpbmQ6YHBvaW50YCx4OnMrTWF0aC5jb3MoaykqVyx5OmMrTWF0aC5zaW4oaykqVyxwb3NpdGlvbjpgY3RyYH0se3g6bSx5OmgsdzpnLGg6X30seixlZT9gIyR7ZWV9YDpgI2ZmZmAsQS5tYW51YWxMYXlvdXQse3g6dix5LHc6YixoOnh9LFUsTCxILHAsTmkoQT8ubGFiZWxCb3gsbi5sYWJlbEJveCksUyk7Y29udGludWV9aWYoUil7ZS5mb250PWAke0guZm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHtCP2Bib2xkIGA6YGB9JHt6fXB4ICR7Vn1gO2xldCB0PVU/VmEoZSxVLHosZWU/YCMke2VlfWA6YCMzMzNgKTpudWxsLG49eioxLjE1LHI9dD9bXTpfbihJLE1hdGgubWF4KDAsYi16KSxNYXRoLm1heCgwLHgteiksbix0PT5lLm1lYXN1cmVUZXh0KHQpLndpZHRoLEgpO2lmKFUmJiF0fHwhdCYmci5sZW5ndGg9PT0wJiYhTCljb250aW51ZTtsZXQgaT10Py53aWR0aD8/ci5yZWR1Y2UoKHQsbik9Pk1hdGgubWF4KHQsZS5tZWFzdXJlVGV4dChuKS53aWR0aCksMCksYT10Py5oZWlnaHQ/P3orTWF0aC5tYXgoMCxyLmxlbmd0aC0xKSpuLG89TD9mcyhbTC5lbnRyeV0seixwKVswXT8/MDowLHU9TD9wcyhMLmVudHJ5LHoscCk6MDtFLnB1c2gocmwocixrLHMsYyxsLE1hdGgubWluKG8rKEk/dXU6MCkraSxNYXRoLm1heCgwLGIteikpLE1hdGgubWluKE1hdGgubWF4KHUsYSksTWF0aC5tYXgoMCx4LXopKSxuLHosQj8/ITEsZWU/YCMke2VlfWA6YCMzMzNgLFYsdD8/dm9pZCAwLEwsSCxwKSk7Y29udGludWV9bGV0IEc9VyxLPXMrTWF0aC5jb3MoaykqRyx0ZT1jK01hdGguc2luKGspKkc7ZS5mb250PWAke0guZm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHtCP2Bib2xkIGA6YGB9JHt6fXB4ICR7Vn1gO2xldCBuZT0yKkcqTWF0aC5zaW4oTWF0aC5taW4oTWF0aC5QSSxNYXRoLmFicyhPKSkvMikteixyZT11Pi4wMT9sLXUtejpsLXo7aWYoIShuZT4wKXx8IShyZT4wKSljb250aW51ZTtsZXQgaWU9bWMoe3g6Sy1uZS8yLHk6dGUtcmUvMix3Om5lLGg6cmV9LHt4Om0seTpoLHc6ZyxoOl99KTtpZSYmQ2woZSxJLHtraW5kOmBwb2ludGAseDpLLHk6dGUscG9zaXRpb246YGN0cmB9LGllLHosZWU/YCMke2VlfWA6YCNmZmZgLHZvaWQgMCx7eDp2LHksdzpiLGg6eH0sVSxMLEgscCxOaShBPy5sYWJlbEJveCxuLmxhYmVsQm94KSxTKX1pbChlLEUsdix5LGIseCl9ZnVuY3Rpb24gdGwoZSx0LG4scixpLGEpe2xldCBvPU1hdGgubWF4KE1hdGguYWJzKG4tZSktaSwwKSxzPU1hdGgubWF4KE1hdGguYWJzKHItdCktYSwwKTtyZXR1cm4gTWF0aC5oeXBvdChvLHMpfWZ1bmN0aW9uIG5sKGUsdCxuLHIsaSl7bGV0IGE9TWF0aC5jb3MoZSksbz1NYXRoLnNpbihlKSxzPXQraSxjPTAsbD1zK01hdGguaHlwb3QobixyKTtmb3IobGV0IGU9MDtlPDMyO2UrKyl7bGV0IGU9KGMrbCkvMjt0bCgwLDAsYSplLG8qZSxuLHIpPj1zP2w9ZTpjPWV9cmV0dXJuIGx9ZnVuY3Rpb24gcmwoZSx0LG4scixpLGEsbyxzLGMsbCx1LGQsZixwLG09e30saD0xKXtsZXQgZz1obihhLG8sbS50ZXh0Um90YXRpb24sbS50ZXh0VmVydGljYWxNb2RlKSxfPXBuKG0saCksdj1hK18ubGVmdCtfLnJpZ2h0LHk9bytfLnRvcCtfLmJvdHRvbSxiPWhuKHYseSxtLnRleHRSb3RhdGlvbixtLnRleHRWZXJ0aWNhbE1vZGUpO2E9Yi53LG89Yi5oO2xldCB4PW5sKHQsaSxnLncvMixnLmgvMixjKi41KSxTPW4rTWF0aC5jb3ModCkqeCxDPXIrTWF0aC5zaW4odCkqeDtyZXR1cm57bGluZXM6ZSxyaWNoOmYsbGVnZW5kS2V5OnAsYm94VzphLGJveEg6byx1bnJvdGF0ZWRXOnYsdW5yb3RhdGVkSDp5LHRleHRTdHlsZTptLHB0VG9QeDpoLGxpbmVIZWlnaHQ6cyxmb250UHg6Yyxib2xkOmwsZm9udENvbG9yOnUsZm9udDpkLGN4Qm94OlMsY3lCb3g6Q319ZnVuY3Rpb24gaWwoZSx0LG4scixpLGEpe2lmKHQubGVuZ3RoIT09MCl7ZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3QobixyLGksYSksZS5jbGlwKCk7Zm9yKGxldCBuIG9mIHQpe2xldCB0PXBuKG4udGV4dFN0eWxlLG4ucHRUb1B4KSxyPWhuKG4udW5yb3RhdGVkVyxuLnVucm90YXRlZEgsbi50ZXh0U3R5bGUudGV4dFJvdGF0aW9uLG4udGV4dFN0eWxlLnRleHRWZXJ0aWNhbE1vZGUpLGk9bi5jeEJveCsodC5sZWZ0LXQucmlnaHQpLzIsYT1uLmN5Qm94Kyh0LnRvcC10LmJvdHRvbSkvMixvPU1hdGgubWF4KDAsbi51bnJvdGF0ZWRXLXQubGVmdC10LnJpZ2h0KSxzPWZuKG4udGV4dFN0eWxlLGBjZW50ZXJgKSxjPXM9PT1gbGVmdGA/bi5jeEJveC1uLnVucm90YXRlZFcvMit0LmxlZnQ6cz09PWByaWdodGA/bi5jeEJveCtuLnVucm90YXRlZFcvMi10LnJpZ2h0Omk7aWYoZS5zYXZlKCksci5yYWRpYW5zIT09MCYmKGUudHJhbnNsYXRlKG4uY3hCb3gsbi5jeUJveCksZS5yb3RhdGUoci5yYWRpYW5zKSxlLnRyYW5zbGF0ZSgtbi5jeEJveCwtbi5jeUJveCkpLCFuLmxlZ2VuZEtleSl7aWYobi5yaWNoKXtIYShlLG4ucmljaCxjLGEscyxgbWlkZGxlYCxvKSxlLnJlc3RvcmUoKTtjb250aW51ZX1lLmZvbnQ9YCR7bi50ZXh0U3R5bGUuZm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHtuLmJvbGQ/YGJvbGQgYDpgYH0ke24uZm9udFB4fXB4ICR7bi5mb250fWAsZS5maWxsU3R5bGU9bi5mb250Q29sb3IsZS50ZXh0QWxpZ249cyxlLnRleHRCYXNlbGluZT1gbWlkZGxlYDtsZXQgdD0obi50ZXh0U3R5bGUuZm9udEJhc2VsaW5lPz8wKSpuLmZvbnRQeCxyPWEtKG4ubGluZXMubGVuZ3RoLTEpKm4ubGluZUhlaWdodC8yLXQ7aWYoIShuLnRleHRTdHlsZS5mb250UGFpbnRBdXRob3JlZD09PSEwJiYobi50ZXh0U3R5bGUuZm9udEhpZGRlbj09PSEwfHxuLnRleHRTdHlsZS5mb250Q29sb3I9PW51bGwpKSlmb3IobGV0IHQ9MDt0PG4ubGluZXMubGVuZ3RoO3QrKyllLmZpbGxUZXh0KG4ubGluZXNbdF0sYyxyK3Qqbi5saW5lSGVpZ2h0KTtlLnJlc3RvcmUoKTtjb250aW51ZX1lLmZvbnQ9YCR7bi50ZXh0U3R5bGUuZm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHtuLmJvbGQ/YGJvbGQgYDpgYH0ke24uZm9udFB4fXB4ICR7bi5mb250fWA7bGV0IGw9bi5sZWdlbmRLZXk/ZnMoW24ubGVnZW5kS2V5LmVudHJ5XSxuLmZvbnRQeCxuLmxlZ2VuZEtleS5wdFRvUHgpWzBdPz8wOjAsdT1uLmxlZ2VuZEtleT9wcyhuLmxlZ2VuZEtleS5lbnRyeSxuLmZvbnRQeCxuLmxlZ2VuZEtleS5wdFRvUHgpOjAsZD1uLnJpY2g/LndpZHRoPz9uLmxpbmVzLnJlZHVjZSgodCxuKT0+TWF0aC5tYXgodCxlLm1lYXN1cmVUZXh0KG4pLndpZHRoKSwwKSxmPW4ubGVnZW5kS2V5JiYobi5yaWNofHxuLmxpbmVzLmxlbmd0aD4wKT91dTowLHA9aS0obCtmK2QpLzI7aWYobi5sZWdlbmRLZXkmJmFzKGUsbi5sZWdlbmRLZXkuZW50cnkuc3dhdGNoU3R5bGUsbi5sZWdlbmRLZXkuZW50cnkuY29sb3IscCxhLXUvMixsLHUsbi5sZWdlbmRLZXkuZW50cnkubWFya2VyLG4ubGVnZW5kS2V5LmVudHJ5LmZpbGxQYWludCxuLmxlZ2VuZEtleS5lbnRyeS5vdXRsaW5lQ29sb3Isbi5sZWdlbmRLZXkuZW50cnkub3V0bGluZVdpZHRoRW11LG4ubGVnZW5kS2V5LmVudHJ5Lm91dGxpbmVEYXNoLG4ubGVnZW5kS2V5LmVudHJ5Lm91dGxpbmVDYXAsbi5sZWdlbmRLZXkuZW50cnkub3V0bGluZUpvaW4sbi5sZWdlbmRLZXkucHRUb1B4LG4ubGVnZW5kS2V5LnNoYXBlUm90YXRpb25EZWcpLG4ucmljaCl7SGEoZSxuLnJpY2gscCtsK2YsYSxgbGVmdGAsYG1pZGRsZWApLGUucmVzdG9yZSgpO2NvbnRpbnVlfWUuZmlsbFN0eWxlPW4uZm9udENvbG9yLGUudGV4dEFsaWduPWBsZWZ0YCxlLnRleHRCYXNlbGluZT1gbWlkZGxlYDtsZXQgbT0obi50ZXh0U3R5bGUuZm9udEJhc2VsaW5lPz8wKSpuLmZvbnRQeCxoPWEtKG4ubGluZXMubGVuZ3RoLTEpKm4ubGluZUhlaWdodC8yLW07aWYoIShuLnRleHRTdHlsZS5mb250UGFpbnRBdXRob3JlZD09PSEwJiYobi50ZXh0U3R5bGUuZm9udEhpZGRlbj09PSEwfHxuLnRleHRTdHlsZS5mb250Q29sb3I9PW51bGwpKSlmb3IobGV0IHQ9MDt0PG4ubGluZXMubGVuZ3RoO3QrKyllLmZpbGxUZXh0KG4ubGluZXNbdF0scCtsK2YsaCt0Km4ubGluZUhlaWdodCk7ZS5yZXN0b3JlKCl9ZS5yZXN0b3JlKCl9fWZ1bmN0aW9uIGFsKGUsdCxuLHIsaSxhLG8scyxjLGwsdSxkLGYscCxtLGgsZyxfLHYseSxiLHgsUyxDLHcpe2xldCBUPWNzKHQscCksRT1lPT5DLmdldChlKSxEPUF0KG4uZm9udFNpemVIcHQscCk/P01hdGgubWF4KDksbCouMDkpLE89bi5sYWJlbEJveCxrPVtdLEE9ZDtmb3IobGV0IGQ9MDtkPGEubGVuZ3RoO2QrKyl7bGV0IEM9YVtkXS9vKk1hdGguUEkqMix3PUErQy8yO2lmKEErPUMsQzw9MHx8IVMuaGFzKGQpKWNvbnRpbnVlO2xldCBqPUUoZCk7aWYodW4obixqKSljb250aW51ZTtsZXQgTT1qPy5zaG93Q2F0TmFtZT8/bi5zaG93Q2F0TmFtZSxOPWo/LnNob3dTZXJOYW1lPz9uLnNob3dTZXJOYW1lLFA9aj8uc2hvd1ZhbD8/bi5zaG93VmFsLEY9aj8uc2hvd1BlcmNlbnQ/P24uc2hvd1BlcmNlbnQsST1qPy5zaG93TGVnZW5kS2V5Pz9uLnNob3dMZWdlbmRLZXk/PyExLEw9QXQoaj8uZm9udFNpemVIcHQscCk/P0QsUj1qPy5mb250Qm9sZD8/bi5mb250Qm9sZD8/ITEsej1qPy5mb250RmFjZT8/bi5mb250RmFjZT8kKHQsaj8uZm9udEZhY2U/P24uZm9udEZhY2UsYG1pbm9yYCk6ZixCPWo/LmZvbnRDb2xvcj9gIyR7ai5mb250Q29sb3J9YDpuLmZvbnRDb2xvcj9gIyR7bi5mb250Q29sb3J9YDpgIzAwMGAsZWU9Tmkoaj8ubGFiZWxCb3gsTyksVj1qPy5wb3NpdGlvbj8/bi5wb3NpdGlvbj8/YGJlc3RGaXRgLEg9cWEoe2N1c3RvbVRleHQ6aj8udGV4dCxzaG93Q2F0ZWdvcnk6TSxzaG93U2VyaWVzOk4sc2hvd1ZhbHVlOlAsc2hvd1BlcmNlbnQ6RixjYXRlZ29yeTooaVtkXT8/YGApLnRvU3RyaW5nKCksc2VyaWVzTmFtZTpyLm5hbWUsc291cmNlVmFsdWU6YVtkXSxwZXJjZW50UmF0aW86YVtkXS9vLGZvcm1hdENvZGU6aj8uZm9ybWF0Q29kZT8/bi5mb3JtYXRDb2RlPz9yLnZhbEZvcm1hdENvZGU/P251bGwscGVyY2VudEZvcm1hdENvZGU6aj8uZm9ybWF0Q29kZT8/bi5mb3JtYXRDb2RlPz9gMCVgLGRhdGUxOTA0OnQuZGF0ZTE5MDQ/PyExLHNlcGFyYXRvcjpqPy5zZXBhcmF0b3I/P24uc2VwYXJhdG9yLGRlZmF1bHRTZXBhcmF0b3I6YApgfSksVT1JP1QoMCxkKTp2b2lkIDA7aWYoIUgmJiFVKWNvbnRpbnVlO2xldCBXPWRuKGosbiksRz14bCh0LGoscCx6LFIsVyksSz1XLnRleHRCb2R5QXV0aG9yZWQ9PT0hMHx8Vy50ZXh0TEluc0VtdSE9bnVsbHx8Vy50ZXh0VEluc0VtdSE9bnVsbHx8Vy50ZXh0Ukluc0VtdSE9bnVsbHx8Vy50ZXh0Qkluc0VtdSE9bnVsbCx0ZT1wbihXLHApLG5lPUs/dGUubGVmdDpNYXRoLm1heCg0LEwqLjQ1KSxyZT1LP3RlLnJpZ2h0Ok1hdGgubWF4KDQsTCouNDUpLGllPUs/dGUudG9wOk1hdGgubWF4KDIsTCouMjgpLGFlPUs/dGUuYm90dG9tOk1hdGgubWF4KDIsTCouMjgpLG9lPUwqLjIyLHNlPUwrb2U7ZS5mb250PWAke1cuZm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHtSP2Bib2xkIGA6YGB9JHtMfXB4ICR7en1gO2xldCBjZT1HP1ZhKGUsRyxMLEIpOm51bGw7aWYoRyYmIWNlKWNvbnRpbnVlO2xldCBsZT1jZT9bXTpfbihILE1hdGgubWF4KDAsaC1uZS1yZSksTWF0aC5tYXgoMCxfLWllLWFlKSxzZSx0PT5lLm1lYXN1cmVUZXh0KHQpLndpZHRoLFcpO2lmKCFjZSYmbGUubGVuZ3RoPT09MCYmIVUpY29udGludWU7bGV0IHVlPWNlPy53aWR0aD8/MDtpZighY2UpZm9yKGxldCB0IG9mIGxlKXVlPU1hdGgubWF4KHVlLGUubWVhc3VyZVRleHQodCkud2lkdGgpO2xldCBxPVU/ZnMoW1UuZW50cnldLEwscClbMF0/PzA6MCxkZT1VP3BzKFUuZW50cnksTCxwKTowLEo9VSYmSD91dTowLFk9cStKK3VlK25lK3JlLGZlPU1hdGgubWF4KGRlLGNlPy5oZWlnaHQ/PyhsZS5sZW5ndGg+MD9sZS5sZW5ndGgqc2Utb2U6MCkpK2llK2FlLHBlPWhuKFksZmUsVy50ZXh0Um90YXRpb24sVy50ZXh0VmVydGljYWxNb2RlKSxtZT1NYXRoLm1pbihwZS53LGgpLGhlPU1hdGgubWF4KGRlLGNlPy5oZWlnaHQ/PyhsZS5sZW5ndGg+MD9sZS5sZW5ndGgqc2Utb2U6MCkpO2hlPU1hdGgubWluKHBlLmgsXyk7bGV0IGdlPXMrTWF0aC5jb3ModykqbCxfZT1jK01hdGguc2luKHcpKmwsdmU9TWF0aC5jb3Modyk8MCxYPU1hdGgubWF4KG1lLGhlKSouNTUrbCouMDYsWj1nZStNYXRoLmNvcyh3KSpYLHllPV9lK01hdGguc2luKHcpKlgsUSxiZT0hMTtpZihqPy5tYW51YWxMYXlvdXQpe2xldCB0PXRuKHtraW5kOmBwb2ludGAseDpaLHk6eWUscG9zaXRpb246YGN0cmB9LHt4Om0seTpnLHc6aCxoOl99LHt3Om1lLGg6aGV9LEwsai5tYW51YWxMYXlvdXQse3g6dix5LHc6YixoOnh9KTtpZighdHx8KG1lPXQucmVjdC53LGhlPXQucmVjdC5oLFk9bWUsZmU9aGUsIWNlJiYobGU9X24oSCxNYXRoLm1heCgwLG1lLW5lLXJlLXEtSiksTWF0aC5tYXgoMCxoZS1pZS1hZSksc2UsdD0+ZS5tZWFzdXJlVGV4dCh0KS53aWR0aCxXKSxsZS5sZW5ndGg9PT0wJiYhVSkpKWNvbnRpbnVlO1o9dC5yZWN0LngrdC5yZWN0LncvMix5ZT10LnJlY3QueSt0LnJlY3QuaC8yLHZlPVo8cyxRPXQuY2xpcH1lbHNlIGlmKFYhPT1gYmVzdEZpdGAmJlYhPT1gb3V0RW5kYCl7bGV0IHQ9dT4uMDE/KHUrbCkvMjpsKkN1LG49cytNYXRoLmNvcyh3KSp0LHI9YytNYXRoLnNpbih3KSp0LGk9Mip0Kk1hdGguc2luKE1hdGgubWluKE1hdGguUEksTWF0aC5hYnMoQykpLzIpLUwsYT11Pi4wMT9sLXUtTDpsLUwsbz1tYyh7eDpuLWkvMix5OnItYS8yLHc6aSxoOmF9LHt4Om0seTpnLHc6aCxoOl99KTtpZighbyljb250aW51ZTtpZihjZSltZT1NYXRoLm1pbihtZSxvLncpLGhlPU1hdGgubWluKGhlLG8uaCk7ZWxzZXtpZihsZT1fbihILE1hdGgubWF4KDAsby53LW5lLXJlLXEtSiksTWF0aC5tYXgoMCxvLmgtaWUtYWUpLHNlLHQ9PmUubWVhc3VyZVRleHQodCkud2lkdGgsVyksbGUubGVuZ3RoPT09MCYmIVUpY29udGludWU7dWU9bGUucmVkdWNlKCh0LG4pPT5NYXRoLm1heCh0LGUubWVhc3VyZVRleHQobikud2lkdGgpLDApLFk9cStKK3VlK25lK3JlLGZlPU1hdGgubWF4KGRlLGxlLmxlbmd0aD4wP2xlLmxlbmd0aCpzZS1vZTowKStpZSthZSxwZT1obihZLGZlLFcudGV4dFJvdGF0aW9uLFcudGV4dFZlcnRpY2FsTW9kZSksbWU9cGUudyxoZT1wZS5ofWxldCBkPXRuKHtraW5kOmBwb2ludGAseDpuLHk6cixwb3NpdGlvbjpWPT09YGluQmFzZWB8fFY9PT1gaW5FbmRgP2BjdHJgOlZ9LG8se3c6bWUsaDpoZX0sTCk7aWYoIWQpY29udGludWU7Wj1kLnRleHRBbGlnbj09PWBsZWZ0YD9kLngrbWUvMjpkLnRleHRBbGlnbj09PWByaWdodGA/ZC54LW1lLzI6ZC54LHllPWQudGV4dEJhc2VsaW5lPT09YHRvcGA/ZC55K2hlLzI6ZC50ZXh0QmFzZWxpbmU9PT1gYm90dG9tYD9kLnktaGUvMjpkLnksdmU9WjxzLFE9ZC5jbGlwLGJlPSEwfWsucHVzaCh7bGluZXM6bGUscmljaDpjZT8/dm9pZCAwLGxlZ2VuZEtleTpVLGxpbmVIZWlnaHQ6c2UsbWlkQW5nbGU6dyxyaW1YOmdlLHJpbVk6X2UsYm94VzptZSxib3hIOmhlLHVucm90YXRlZFc6WSx1bnJvdGF0ZWRIOmZlLGN4Qm94OlosY3lCb3g6eWUsbGVmdFNpZGU6dmUsZm9udENvbG9yOkIsYm94OmVlLGZvbnRQeDpMLGJvbGQ6Uixmb250OnosdGV4dFN0eWxlOlcscHRUb1B4OnAsaW5zaWRlOmJlLG1hbnVhbENsaXA6UX0pfWxldCBqPWcrMixNPWcrXy0yLE49TS1qLFA9ZT0+e2lmKGUubGVuZ3RoPT09MClyZXR1cm47ZS5zb3J0KChlLHQpPT5lLmN5Qm94LXQuY3lCb3gpO2xldCB0PTA7Zm9yKGxldCBuIG9mIGUpdCs9bi5ib3hIO2lmKHQrPShlLmxlbmd0aC0xKSozLHQ+Til7bGV0IHQ9ZS5yZWR1Y2UoKGUsdCk9PmUrdC5ib3hILDApLG49ZS5sZW5ndGg7aWYobj09PTEpe2VbMF0uY3lCb3g9TWF0aC5taW4oTWF0aC5tYXgoZVswXS5jeUJveCxqK2VbMF0uYm94SC8yKSxNLWVbMF0uYm94SC8yKTtyZXR1cm59bGV0IHI9KE4tdCkvKG4tMSksaT1qO2ZvcihsZXQgdCBvZiBlKXQuY3lCb3g9aSt0LmJveEgvMixpKz10LmJveEgrcjtyZXR1cm59Zm9yKGxldCB0PTE7dDxlLmxlbmd0aDt0Kyspe2xldCBuPWVbdC0xXSxyPWVbdF0saT0obi5ib3hIK3IuYm94SCkvMiszO3IuY3lCb3gtbi5jeUJveDxpJiYoci5jeUJveD1uLmN5Qm94K2kpfWxldCBuPWVbZS5sZW5ndGgtMV0uY3lCb3grZVtlLmxlbmd0aC0xXS5ib3hILzItTTtpZihuPjApZm9yKGxldCB0IG9mIGUpdC5jeUJveC09bjtsZXQgcj1qLShlWzBdLmN5Qm94LWVbMF0uYm94SC8yKTtpZihyPjApZm9yKGxldCB0IG9mIGUpdC5jeUJveCs9cn07UChrLmZpbHRlcihlPT4hZS5tYW51YWxDbGlwJiYhZS5sZWZ0U2lkZSkpLFAoay5maWx0ZXIoZT0+IWUubWFudWFsQ2xpcCYmZS5sZWZ0U2lkZSkpO2ZvcihsZXQgZSBvZiBrKWUubWFudWFsQ2xpcHx8KGUuY3lCb3g9TWF0aC5tYXgoaitlLmJveEgvMixlLmN5Qm94KSxlLmN5Qm94PU1hdGgubWluKE0tZS5ib3hILzIsZS5jeUJveCkpO2xldCBGPW0rMixJPW0raC0yO2ZvcihsZXQgZSBvZiBrKXtpZihlLm1hbnVhbENsaXApY29udGludWU7bGV0IHQ9ZS5ib3hXLzI7ZS5jeEJveC10PEYmJihlLmN4Qm94PUYrdCksZS5jeEJveCt0PkkmJihlLmN4Qm94PUktdCl9ZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3QobSxnLGgsXyksZS5jbGlwKCk7bGV0IEw9d2ModCxuKSxSPUwuY29sb3I/YCMke0wuY29sb3J9YDpgI2E2YTZhNmAsej1MLndpZHRoRW11P01hdGgubWF4KC41LEwud2lkdGhFbXUvY3QqcCk6MTtlLnNldExpbmVEYXNoKERsKEwuZGFzaD8/dm9pZCAwLHopKTtmb3IobGV0IHQgb2Ygayl7bGV0IHI9dC5jeEJveCsodC5sZWZ0U2lkZT90LmJveFcvMjotdC5ib3hXLzIpLGk9dC5jeUJveCxhPXItdC5yaW1YLG89aS10LnJpbVkscz1NYXRoLmh5cG90KGEsbyk7IXQuaW5zaWRlJiZuLnNob3dMZWFkZXJMaW5lcyYmTC5oaWRkZW4hPT0hMCYmcz50LmZvbnRQeCouOSYmKGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8odC5yaW1YLHQucmltWSksZS5saW5lVG8ocixpKSxlLnN0cm9rZVN0eWxlPVIsZS5saW5lV2lkdGg9eixlLnN0cm9rZSgpKX1mb3IobGV0IHQgb2Ygayl7dC5tYW51YWxDbGlwJiYoZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3QodC5tYW51YWxDbGlwLngsdC5tYW51YWxDbGlwLnksdC5tYW51YWxDbGlwLncsdC5tYW51YWxDbGlwLmgpLGUuY2xpcCgpKTtsZXQgbj10LmN4Qm94LXQuYm94Vy8yLHI9dC5jeUJveC10LmJveEgvMjtQaShlLHQuYm94LHt4Om4seTpyLHc6dC5ib3hXLGg6dC5ib3hIfSxwLHcpO2xldCBpPXQudGV4dFN0eWxlLnRleHRCb2R5QXV0aG9yZWQ9PT0hMHx8dC50ZXh0U3R5bGUudGV4dExJbnNFbXUhPW51bGx8fHQudGV4dFN0eWxlLnRleHRUSW5zRW11IT1udWxsfHx0LnRleHRTdHlsZS50ZXh0Ukluc0VtdSE9bnVsbHx8dC50ZXh0U3R5bGUudGV4dEJJbnNFbXUhPW51bGwsYT1wbih0LnRleHRTdHlsZSx0LnB0VG9QeCksbz1pP2EubGVmdDpNYXRoLm1heCg0LHQuZm9udFB4Ki40NSkscz1pP2EucmlnaHQ6TWF0aC5tYXgoNCx0LmZvbnRQeCouNDUpLGM9aT9hLnRvcDpNYXRoLm1heCgyLHQuZm9udFB4Ki4yOCksbD1pP2EuYm90dG9tOk1hdGgubWF4KDIsdC5mb250UHgqLjI4KSx1PWhuKHQudW5yb3RhdGVkVyx0LnVucm90YXRlZEgsdC50ZXh0U3R5bGUudGV4dFJvdGF0aW9uLHQudGV4dFN0eWxlLnRleHRWZXJ0aWNhbE1vZGUpLGQ9dC5jeEJveCsoby1zKS8yLGY9dC5jeUJveCsoYy1sKS8yLG09bitvLGg9bit0LmJveFctcyxnPU1hdGgubWF4KDAsaC1tKSxfPWZuKHQudGV4dFN0eWxlLGBjZW50ZXJgKSx2PV89PT1gbGVmdGA/bTpfPT09YHJpZ2h0YD9oOmQseT1lPT4odC50ZXh0U3R5bGUudGV4dFZlcnRpY2FsQW5jaG9yPz8odC50ZXh0U3R5bGUudGV4dEJvZHlBdXRob3JlZD09PSEwP2B0YDpgY3RyYCkpPT09YHRgP3IrYytlLzI6KHQudGV4dFN0eWxlLnRleHRWZXJ0aWNhbEFuY2hvcj8/KHQudGV4dFN0eWxlLnRleHRCb2R5QXV0aG9yZWQ9PT0hMD9gdGA6YGN0cmApKT09PWBiYD9yK3QuYm94SC1sLWUvMjpmLGI9ZT0+Xz09PWBsZWZ0YD9tOl89PT1gcmlnaHRgP2gtZTpkLWUvMjtpZihlLnNhdmUoKSxlLmJlZ2luUGF0aCgpLGUucmVjdChuLHIsdC5ib3hXLHQuYm94SCksZS5jbGlwKCksdS5yYWRpYW5zIT09MCYmKGUudHJhbnNsYXRlKHQuY3hCb3gsdC5jeUJveCksZS5yb3RhdGUodS5yYWRpYW5zKSxlLnRyYW5zbGF0ZSgtdC5jeEJveCwtdC5jeUJveCkpLCF0LmxlZ2VuZEtleSl7bGV0IG49eSh0LnJpY2g/LmhlaWdodD8/TWF0aC5tYXgoMCx0LmxpbmVzLmxlbmd0aCp0LmxpbmVIZWlnaHQtKHQubGluZUhlaWdodC10LmZvbnRQeCkpKTtpZih0LnJpY2gpe0hhKGUsdC5yaWNoLHYsbixfLGBtaWRkbGVgLGcpLGUucmVzdG9yZSgpLHQubWFudWFsQ2xpcCYmZS5yZXN0b3JlKCk7Y29udGludWV9ZS5mb250PWAke3QudGV4dFN0eWxlLmZvbnRJdGFsaWM/YGl0YWxpYyBgOmBgfSR7dC5ib2xkP2Bib2xkIGA6YGB9JHt0LmZvbnRQeH1weCAke3QuZm9udH1gLGUuZmlsbFN0eWxlPXQuZm9udENvbG9yLGUudGV4dEFsaWduPV8sZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7bGV0IHI9dC5saW5lSGVpZ2h0LXQuZm9udFB4LGk9KHQudGV4dFN0eWxlLmZvbnRCYXNlbGluZT8/MCkqdC5mb250UHgsYT1uLSh0LmxpbmVzLmxlbmd0aCp0LmxpbmVIZWlnaHQtcikvMit0LmZvbnRQeC8yLWk7aWYoISh0LnRleHRTdHlsZS5mb250UGFpbnRBdXRob3JlZD09PSEwJiYodC50ZXh0U3R5bGUuZm9udEhpZGRlbj09PSEwfHx0LnRleHRTdHlsZS5mb250Q29sb3I9PW51bGwpKSlmb3IobGV0IG49MDtuPHQubGluZXMubGVuZ3RoO24rKyllLmZpbGxUZXh0KHQubGluZXNbbl0sdixhK24qdC5saW5lSGVpZ2h0KTtlLnJlc3RvcmUoKSx0Lm1hbnVhbENsaXAmJmUucmVzdG9yZSgpO2NvbnRpbnVlfWxldCB4PXQubGVnZW5kS2V5P2ZzKFt0LmxlZ2VuZEtleS5lbnRyeV0sdC5mb250UHgsdC5sZWdlbmRLZXkucHRUb1B4KVswXT8/MDowLFM9dC5sZWdlbmRLZXk/cHModC5sZWdlbmRLZXkuZW50cnksdC5mb250UHgsdC5sZWdlbmRLZXkucHRUb1B4KTowLEM9dC5sZWdlbmRLZXkmJih0LnJpY2h8fHQubGluZXMubGVuZ3RoPjApP3V1OjAsVD10LnJpY2g/LndpZHRoPz90LmxpbmVzLnJlZHVjZSgodCxuKT0+TWF0aC5tYXgodCxlLm1lYXN1cmVUZXh0KG4pLndpZHRoKSwwKSxFPXgrQytULEQ9eShNYXRoLm1heChTLHQucmljaD8uaGVpZ2h0Pz9NYXRoLm1heCgwLHQubGluZXMubGVuZ3RoKnQubGluZUhlaWdodC0odC5saW5lSGVpZ2h0LXQuZm9udFB4KSkpKSxPPWIoRSk7aWYodC5sZWdlbmRLZXkmJmFzKGUsdC5sZWdlbmRLZXkuZW50cnkuc3dhdGNoU3R5bGUsdC5sZWdlbmRLZXkuZW50cnkuY29sb3IsTyxELVMvMix4LFMsdC5sZWdlbmRLZXkuZW50cnkubWFya2VyLHQubGVnZW5kS2V5LmVudHJ5LmZpbGxQYWludCx0LmxlZ2VuZEtleS5lbnRyeS5vdXRsaW5lQ29sb3IsdC5sZWdlbmRLZXkuZW50cnkub3V0bGluZVdpZHRoRW11LHQubGVnZW5kS2V5LmVudHJ5Lm91dGxpbmVEYXNoLHQubGVnZW5kS2V5LmVudHJ5Lm91dGxpbmVDYXAsdC5sZWdlbmRLZXkuZW50cnkub3V0bGluZUpvaW4sdC5sZWdlbmRLZXkucHRUb1B4LHQubGVnZW5kS2V5LnNoYXBlUm90YXRpb25EZWcpLHQucmljaCl7SGEoZSx0LnJpY2gsTyt4K0MsRCxgbGVmdGAsYG1pZGRsZWAsVCksZS5yZXN0b3JlKCksdC5tYW51YWxDbGlwJiZlLnJlc3RvcmUoKTtjb250aW51ZX1lLmZvbnQ9YCR7dC50ZXh0U3R5bGUuZm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHt0LmJvbGQ/YGJvbGQgYDpgYH0ke3QuZm9udFB4fXB4ICR7dC5mb250fWAsZS5maWxsU3R5bGU9dC5mb250Q29sb3IsZS50ZXh0QWxpZ249YGxlZnRgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgO2xldCBrPXQubGluZUhlaWdodC10LmZvbnRQeCxBPSh0LnRleHRTdHlsZS5mb250QmFzZWxpbmU/PzApKnQuZm9udFB4LGo9RC0odC5saW5lcy5sZW5ndGgqdC5saW5lSGVpZ2h0LWspLzIrdC5mb250UHgvMi1BO2lmKCEodC50ZXh0U3R5bGUuZm9udFBhaW50QXV0aG9yZWQ9PT0hMCYmKHQudGV4dFN0eWxlLmZvbnRIaWRkZW49PT0hMHx8dC50ZXh0U3R5bGUuZm9udENvbG9yPT1udWxsKSkpZm9yKGxldCBuPTA7bjx0LmxpbmVzLmxlbmd0aDtuKyspZS5maWxsVGV4dCh0LmxpbmVzW25dLE8reCtDLGorbip0LmxpbmVIZWlnaHQpO2UucmVzdG9yZSgpLHQubWFudWFsQ2xpcCYmZS5yZXN0b3JlKCl9ZS5yZXN0b3JlKCl9ZnVuY3Rpb24gb2woZSx0LG4scixpPTApe2xldHt4OmEseTpvLHc6cyxoOmN9PW4sbD1wYyh0KSx1PWwubGVuZ3RoO2lmKHU8MylyZXR1cm47bGV0IGQ9aHMoZSx0LHMsYywuMjIsciksZj1LdCh0LGEsbyxzLGMscix7dGl0bGVUb3BQYWRGcmFjOi4wMzUsdGl0bGVCb3R0b21QYWRGcmFjOi4wMzUsbGVnZW5kU2lkZVJlc2VydmVGcmFjOi4yMixsZWdlbmRSZXNlcnZlOmQscmFkaWFsR2FwRnJhYzouMDIsaG9ub3JQbG90QXJlYU1hbnVhbExheW91dDohMH0pLHA9Zi50aXRsZS5mb250UHg7ZmMoZSx0LGEsbyxzLGMsbytmLnRpdGxlLnRvcFBhZCxwKTtsZXR7cHgwOm0scHkwOmgscHc6ZyxwaDpffT1mLnBsb3RSZWN0OyRhKGUsdCxtLGgsZyxfLHIsaSk7bGV0IHY9Zi5jZW50ZXIuY3gseT1mLmNlbnRlci5jeSxiPXQucGxvdEFyZWFNYW51YWxMYXlvdXQseD1iPy5sYXlvdXRUYXJnZXQ9PT1gaW5uZXJgJiZiLnchPW51bGwmJmIuaCE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGIudykmJk51bWJlci5pc0Zpbml0ZShiLmgpJiZmLnBsb3RBcmVhTWFudWFsTGF5b3V0QXBwbGllZD9NYXRoLm1pbihnLF8pLzI6TWF0aC5taW4oZyxfKSouMzgsUz0xLzAsQz0tMS8wO2ZvcihsZXQgZSBvZiB0LnNlcmllcylmb3IobGV0IHQgb2YgZS52YWx1ZXMpdCE9bnVsbCYmKFM9TWF0aC5taW4oUyx0KSxDPU1hdGgubWF4KEMsdCkpO2lzRmluaXRlKFMpfHwoUz0wLEM9MSksQz09PTAmJihDPTEpO2xldCB3PXQudmFsQXhpc01pbm9yVGlja01hcmshPW51bGwmJnQudmFsQXhpc01pbm9yVGlja01hcmshPT1gbm9uZWAsVD10LnZhbEF4aXNMb2dCYXNlIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUodC52YWxBeGlzTG9nQmFzZSkmJnQudmFsQXhpc0xvZ0Jhc2U+PTIsRT10LnZhbEF4aXNNYWpvclVuaXQ/PyhUP251bGw6VWkodC52YWxNaW4/P1MsdC52YWxNYXg/P0MseC9yKSksRD1lYSh7ZGF0YU1pbjpTLGRhdGFNYXg6QyxleHBsaWNpdE1pbjp0LnZhbE1pbixleHBsaWNpdE1heDp0LnZhbE1heCxheGlzTGVuUHQ6eC9yLGF4aXNPcmllbnRhdGlvbjpgdmVydGljYWxgLG1ham9yVW5pdDpFLG1pbm9yVW5pdDp0LnZhbEF4aXNNaW5vclVuaXQsbmVlZE1pbm9yOnQudmFsQXhpc01pbm9yR3JpZGxpbmVzPT09ITB8fHcsbG9nQmFzZTp0LnZhbEF4aXNMb2dCYXNlLHJldmVyc2VkOk5zKHQpfSksTz1lPT5UbChELmZyYWN0aW9uKGUpLDAsMSksaz0tTWF0aC5QSS8yLEE9ZT0+aytlL3UqTWF0aC5QSSoyLGo9RC5tYWpvclRpY2tzLmZpbHRlcihlPT5PKGUpPjApLE09dD0+e2xldCBuPU8odCkqeDtlLmJlZ2luUGF0aCgpO2ZvcihsZXQgdD0wO3Q8dTt0Kyspe2xldCByPUEodCksaT12K01hdGguY29zKHIpKm4sYT15K01hdGguc2luKHIpKm47dD09PTA/ZS5tb3ZlVG8oaSxhKTplLmxpbmVUbyhpLGEpfWUuY2xvc2VQYXRoKCksZS5zdHJva2UoKX07aWYodC52YWxBeGlzTWlub3JHcmlkbGluZXMpe2xldCBuPUVzKHQscik7ZS5zdHJva2VTdHlsZT1uLmNvbG9yLGUubGluZVdpZHRoPW4ud2lkdGg7bGV0IGk9bi5kYXNoLmxlbmd0aD4wJiZlLmdldExpbmVEYXNoP2UuZ2V0TGluZURhc2goKTpbXTtuLmRhc2gubGVuZ3RoPjAmJmUuc2V0TGluZURhc2gobi5kYXNoKTtmb3IobGV0IGUgb2YgRC5taW5vclRpY2tzKU0oZSk7bi5kYXNoLmxlbmd0aD4wJiZlLnNldExpbmVEYXNoKGkpfWlmKCF0LnZhbEF4aXNIaWRkZW4mJkZzKHQpKXtsZXQgbj1Ucyh0LHIpO2Uuc3Ryb2tlU3R5bGU9bi5jb2xvcixlLmxpbmVXaWR0aD1uLndpZHRoO2xldCBpPW4uZGFzaC5sZW5ndGg+MCYmZS5nZXRMaW5lRGFzaD9lLmdldExpbmVEYXNoKCk6W107bi5kYXNoLmxlbmd0aD4wJiZlLnNldExpbmVEYXNoKG4uZGFzaCk7Zm9yKGxldCBlIG9mIGopTShlKTtuLmRhc2gubGVuZ3RoPjAmJmUuc2V0TGluZURhc2goaSl9ZS5zdHJva2VTdHlsZT1gI2JiYmAsZS5saW5lV2lkdGg9LjU7Zm9yKGxldCB0PTA7dDx1O3QrKyl7bGV0IG49QSh0KTtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHYseSksZS5saW5lVG8oditNYXRoLmNvcyhuKSp4LHkrTWF0aC5zaW4obikqeCksZS5zdHJva2UoKX1pZighdC52YWxBeGlzSGlkZGVuKXtlLmZvbnQ9SG8oWXModC52YWxBeGlzRm9udFNpemVIcHQsYyxyKSwkKHQsdC52YWxBeGlzRm9udEZhY2UsYG1pbm9yYCksdC52YWxBeGlzRm9udEJvbGQ/PyExLHQudmFsQXhpc0ZvbnRJdGFsaWM/PyExKSxlLmZpbGxTdHlsZT10LnZhbEF4aXNGb250Q29sb3I/YCMke3QudmFsQXhpc0ZvbnRDb2xvcn1gOmAjNTU1YCxlLnRleHRBbGlnbj1gcmlnaHRgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgO2ZvcihsZXQgbiBvZiBqKXtsZXQgaT15LU8obikqeCxhPWFhKHQudmFsQXhpc0xpbmVDb2xvcix0LnZhbEF4aXNMaW5lV2lkdGhFbXUscik7YnMoZSx0LnZhbEF4aXNNYWpvclRpY2tNYXJrLGB2YWxgLHYsaSxhLmNvbG9yLGEud2lkdGgsITEsdC52YWxBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC52YWxBeGlzTGluZURhc2gpLHQudmFsQXhpc1RpY2tMYWJlbFBvcyE9PWBub25lYCYmZS5maWxsVGV4dChMcyh0LG4sITEpLHYtMyxpKX1pZih3KXtsZXQgbj1hYSh0LnZhbEF4aXNMaW5lQ29sb3IsdC52YWxBeGlzTGluZVdpZHRoRW11LHIpO2ZvcihsZXQgaSBvZiBELm1pbm9yVGlja3MpYnMoZSx0LnZhbEF4aXNNaW5vclRpY2tNYXJrLGB2YWxgLHYseS1PKGkpKngsbi5jb2xvcixuLndpZHRoLCExLHQudmFsQXhpc0xpbmVIaWRkZW4sYG1pbm9yYCxyLHQudmFsQXhpc0xpbmVEYXNoKX19ZS5mb250PUhvKHQuY2F0QXhpc0ZvbnRTaXplSHB0PT1udWxsP01hdGgubWF4KDgsTWF0aC5taW4oMTEseCouMikpOllzKHQuY2F0QXhpc0ZvbnRTaXplSHB0LGMsciksJCh0LHQuY2F0QXhpc0ZvbnRGYWNlLGBtaW5vcmApLHQuY2F0QXhpc0ZvbnRCb2xkPz8hMSx0LmNhdEF4aXNGb250SXRhbGljPz8hMSksZS5maWxsU3R5bGU9dC5jYXRBeGlzRm9udENvbG9yP2AjJHt0LmNhdEF4aXNGb250Q29sb3J9YDpgIzQ0NGAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7bGV0IE49di1nLzIsUD12K2cvMjtpZighdC5jYXRBeGlzSGlkZGVuJiZRcyh0KSlmb3IobGV0IG49MDtuPHU7bisrKXtsZXQgcj1BKG4pLGk9U3QoMTIsdC5jYXRBeGlzTGFiZWxPZmZzZXRQZXJjZW50KSxhPXYrTWF0aC5jb3MocikqKHgraSksbz15K01hdGguc2luKHIpKih4K2kpLHM9dC5jYXRBeGlzTGFiZWxBbGlnbm1lbnQsYz1zPT09YGxgP2BsZWZ0YDpzPT09YHJgP2ByaWdodGA6cz09PWBjdHJgP2BjZW50ZXJgOk1hdGguY29zKHIpPC0uMT9gcmlnaHRgOk1hdGguY29zKHIpPi4xP2BsZWZ0YDpgY2VudGVyYDtlLnRleHRBbGlnbj1jO2xldCB1PWM9PT1gcmlnaHRgP2EtTjpjPT09YGxlZnRgP1AtYToyKk1hdGgubWluKFAtYSxhLU4pLGQ9eGEoKGxbbl0/P2BgKS50b1N0cmluZygpLHQuY2F0QXhpc0Zvcm1hdENvZGUsdC5kYXRlMTkwNCk7ZS5maWxsVGV4dChrYShlLGQsdSksYSxvKX1sZXQgRj1BbihgcmFkYXJgLHQuY2hhcnRUeXBlLHQuc2NhdHRlclN0eWxlLHQucmFkYXJTdHlsZSksST1NYXRoLm1heCgyLHgqLjAyNSk7Zm9yKGxldCBuPTA7bjx0LnNlcmllcy5sZW5ndGg7bisrKXtsZXQgYT10LnNlcmllc1tuXSxvPVJvKG4sYSkscz1bXTtmb3IobGV0IGU9MDtlPHU7ZSsrKXtsZXQgdD1hLnZhbHVlc1tlXTtpZih0PT1udWxsKXtzLnB1c2gobnVsbCk7Y29udGludWV9bGV0IG49Tyh0KSxyPUEoZSk7cy5wdXNoKFt2K01hdGguY29zKHIpKngqbix5K01hdGguc2luKHIpKngqbl0pfWUuYmVnaW5QYXRoKCk7bGV0IGM9ITE7Zm9yKGxldCB0IG9mIHMpe2lmKHQ9PW51bGwpe2M9ITE7Y29udGludWV9Yz9lLmxpbmVUbyh0WzBdLHRbMV0pOihlLm1vdmVUbyh0WzBdLHRbMV0pLGM9ITApfWxldCBsPXMuZXZlcnkoZT0+ZSE9bnVsbCk7aWYoRiYmbD8oZS5jbG9zZVBhdGgoKSxlLmZpbGxTdHlsZT1paShvLC4yNSksZS5maWxsKCkpOmwmJmUuY2xvc2VQYXRoKCksYS5saW5lSGlkZGVuIT09ITApe2xldCB0PWUuZ2V0TGluZURhc2g/ZS5nZXRMaW5lRGFzaCgpOltdLG49ZS5saW5lQ2FwLGk9ZS5saW5lSm9pbjtlLnN0cm9rZVN0eWxlPWEubGluZUNvbG9yP2AjJHthLmxpbmVDb2xvcn1gOm8sZS5saW5lV2lkdGg9YS5saW5lV2lkdGhFbXU9PW51bGw/MjppYShhLmxpbmVXaWR0aEVtdSxyKSxlLnNldExpbmVEYXNoKERsKGEuY2hhcnRleFN0eWxlPy5saW5lRGFzaD8/dm9pZCAwLGUubGluZVdpZHRoKSksZS5saW5lQ2FwPWEuY2hhcnRleFN0eWxlPy5saW5lQ2FwPT09YHJuZGA/YHJvdW5kYDphLmNoYXJ0ZXhTdHlsZT8ubGluZUNhcD09PWBzcWA/YHNxdWFyZWA6YGJ1dHRgLGUubGluZUpvaW49YS5jaGFydGV4U3R5bGU/LmxpbmVKb2luPT09YHJvdW5kYHx8YS5jaGFydGV4U3R5bGU/LmxpbmVKb2luPT09YGJldmVsYD9hLmNoYXJ0ZXhTdHlsZS5saW5lSm9pbjpgbWl0ZXJgLGUuc3Ryb2tlKCksZS5zZXRMaW5lRGFzaCh0KSxlLmxpbmVDYXA9bixlLmxpbmVKb2luPWl9bGV0IGQ9IUYmJmEuc2hvd01hcmtlciE9PSExJiZhLm1hcmtlclN5bWJvbCE9PWBub25lYDtpZighRiYmKGR8fGtuKGEpKSl7bGV0IHQ9em8oYS5kYXRhUG9pbnRPdmVycmlkZXMpO2ZvcihsZXQgbj0wO248cy5sZW5ndGg7bisrKXtsZXQgYz1zW25dO2lmKGM9PW51bGwpY29udGludWU7bGV0IGw9dC5nZXQobiksdT1NbihhLGwsYGNpcmNsZWAsZCk7aWYodT09PWBub25lYCljb250aW51ZTtsZXQgZj1sPy5tYXJrZXJTaXplPz9hLm1hcmtlclNpemU/P01hdGgubWF4KDQsSSoyL3IpLHA9UG4oYSxsLG4sbyksbT1sPy5tYXJrZXJMaW5lPz9hLm1hcmtlckxpbmU/P251bGwsaD1sPy5tYXJrZXJMaW5lV2lkdGhFbXU/P2EubWFya2VyTGluZVdpZHRoRW11O19sKGUsY1swXSxjWzFdLHUsZixwLG0scixoPT1udWxsPzE6aWEoaCxyKSxObihhLGwsbiksaSl9fX12cyhlLHQsZCxhLG8scyxjLG0saCxnLF8sZi50aXRsZS5iYW5kSCsyLHIpfWZ1bmN0aW9uIHNsKGUsdCxuKXtpZihuKXJldHVybiB0KzE7bGV0IHI9ZVt0XTtpZihyPT1udWxsKXJldHVybiBudWxsO2xldCBpPXBhcnNlRmxvYXQocik7cmV0dXJuIE51bWJlci5pc05hTihpKT9udWxsOml9ZnVuY3Rpb24gY2woZSx0KXtyZXR1cm4gZS5idWJibGVTaXplUmVwcmVzZW50cz09PWB3YD90Ok1hdGguc3FydCh0KX1mdW5jdGlvbiBsbChlLHQsbixyKXtyZXR1cm4gUG4oZSx0LG4scil9ZnVuY3Rpb24gdWwoZSx0LG4scixpLGE9d24odCxuKSl7bGV0IG89dC5idWJibGVTaXplcz8uW3JdO2lmKG8hPW51bGwmJk51bWJlci5pc0Zpbml0ZShvKSYmbzwwKXJldHVybiB0LmludmVydGVkRmlsbEhpZGRlbj09PSEwP3tjb2xvcjpgMDAwMDAwMDBgLHBhaW50Om51bGx9OnQuaW52ZXJ0ZWRGaWxsP3tjb2xvcjp0LmludmVydGVkRmlsbC5maWxsVHlwZT09PWBzb2xpZGA/dC5pbnZlcnRlZEZpbGwuY29sb3I6aSxwYWludDp0LmludmVydGVkRmlsbH06YT97Y29sb3I6YEZGRkZGRmAscGFpbnQ6dm9pZCAwfTp7Y29sb3I6YDAwMDAwMDAwYCxwYWludDpudWxsfTtsZXQgcz1WbChlLG4/LmNoYXJ0ZXhTdHlsZSxyLHQudmFsdWVzLmxlbmd0aCk7aWYocyE9PXZvaWQgMClyZXR1cm57Y29sb3I6cz8uZmlsbFR5cGU9PT1gc29saWRgP3MuY29sb3I6aSxwYWludDpzfTtpZihuPy5maWxsSGlkZGVuPT09ITApcmV0dXJue2NvbG9yOmAwMDAwMDAwMGAscGFpbnQ6bnVsbH07aWYobj8uY29sb3IhPW51bGwpcmV0dXJue2NvbG9yOm4uY29sb3IscGFpbnQ6dm9pZCAwfTtsZXQgYz10LmRhdGFQb2ludENvbG9ycz8uW3JdO2lmKGMhPW51bGwpcmV0dXJue2NvbG9yOmMscGFpbnQ6dm9pZCAwfTtsZXQgbD1WbChlLHQuY2hhcnRleFN0eWxlLHIsdC52YWx1ZXMubGVuZ3RoKTtpZihsIT09dm9pZCAwKXJldHVybntjb2xvcjpsPy5maWxsVHlwZT09PWBzb2xpZGA/bC5jb2xvcjppLHBhaW50Omx9O2lmKHQuY29sb3IhPW51bGwpcmV0dXJue2NvbG9yOnQuY29sb3IscGFpbnQ6dm9pZCAwfTtsZXQgdT1WbChlLGUuY2hhcnRTdHlsZVJvbGVzPy5kYXRhUG9pbnQscix0LnZhbHVlcy5sZW5ndGgpO3JldHVybiB1PT09dm9pZCAwP3tjb2xvcjpsbCh0LG4scixpKSxwYWludDpObih0LG4scil9Ontjb2xvcjp1Py5maWxsVHlwZT09PWBzb2xpZGA/dS5jb2xvcjppLHBhaW50OnV9fWZ1bmN0aW9uIGRsKGUsdCxuLHIpe2xldCBpPW4/LmNoYXJ0ZXhTdHlsZSxhPXQuY2hhcnRleFN0eWxlLG89ZS5jaGFydFN0eWxlUm9sZXM/LmRhdGFQb2ludCxzPW8/LmxpbmVOb1N0eWxlPT09ITA/dm9pZCAwOm8sYz1baSxhLHNdLGw9bj8ubGluZURhc2gsdTtpZihsPT1udWxsKXtmb3IobGV0IGUgb2YgYylpZihlPy5saW5lRGFzaCE9bnVsbHx8ZT8ubGluZUN1c3RvbURhc2ghPW51bGx8fGU/LmxpbmVEYXNoQXV0aG9yZWQ9PT0hMCl7bD1lLmxpbmVEYXNoLHU9ZS5saW5lQ3VzdG9tRGFzaD8/dm9pZCAwO2JyZWFrfX1sZXQgZD17d2lkdGhFbXU6bj8ubGluZVdpZHRoRW11Pz9pPy5saW5lV2lkdGhFbXU/P3QubGluZVdpZHRoRW11Pz9hPy5saW5lV2lkdGhFbXU/P3M/LmxpbmVXaWR0aEVtdT8/bj8ubWFya2VyTGluZVdpZHRoRW11Pz90Lm1hcmtlckxpbmVXaWR0aEVtdSxkYXNoOmwsY3VzdG9tRGFzaDp1LGNhcDppPy5saW5lQ2FwPz9hPy5saW5lQ2FwPz9zPy5saW5lQ2FwLGpvaW46aT8ubGluZUpvaW4/P2E/LmxpbmVKb2luPz9zPy5saW5lSm9pbn0sZj1CbChlLGkscix0LnZhbHVlcy5sZW5ndGgpO2lmKGYhPT12b2lkIDApcmV0dXJue2NvbG9yOmY/LmZpbGxUeXBlPT09YHNvbGlkYD9mLmNvbG9yOm4/LmxpbmVDb2xvcj8/bnVsbCxwYWludDpmLC4uLmR9O2lmKG4/LmxpbmVIaWRkZW49PT0hMClyZXR1cm57Y29sb3I6bnVsbCxwYWludDpudWxsLC4uLmR9O2lmKG4/LmxpbmVDb2xvciE9bnVsbClyZXR1cm57Y29sb3I6bi5saW5lQ29sb3IscGFpbnQ6dm9pZCAwLC4uLmR9O2xldCBwPUJsKGUsYSxyLHQudmFsdWVzLmxlbmd0aCk7aWYocCE9PXZvaWQgMClyZXR1cm57Y29sb3I6cD8uZmlsbFR5cGU9PT1gc29saWRgP3AuY29sb3I6dC5saW5lQ29sb3I/P251bGwscGFpbnQ6cCwuLi5kfTtpZih0LmxpbmVIaWRkZW49PT0hMClyZXR1cm57Y29sb3I6bnVsbCxwYWludDpudWxsLC4uLmR9O2lmKHQubGluZUNvbG9yIT1udWxsKXJldHVybntjb2xvcjp0LmxpbmVDb2xvcixwYWludDp2b2lkIDAsLi4uZH07bGV0IG09QmwoZSxvLHIsdC52YWx1ZXMubGVuZ3RoKTtpZihtIT09dm9pZCAwKXJldHVybntjb2xvcjptPy5maWxsVHlwZT09PWBzb2xpZGA/bS5jb2xvcjpudWxsLHBhaW50Om0sLi4uZH07bGV0IGg9dC5idWJibGVTaXplcz8uW3JdLGc9aCE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGgpJiZoPDAmJnduKHQsbik/YDAwMDAwMGA6bnVsbDtyZXR1cm57Y29sb3I6bj8ubWFya2VyTGluZT8/dC5tYXJrZXJMaW5lPz90LmxpbmVDb2xvcj8/ZyxwYWludDp2b2lkIDAsLi4uZH19ZnVuY3Rpb24gZmwoZSx0LG4pe3JldHVybntzZXJpZXM6dCxzZXJpZXNJbmRleDpuLGZhbGxiYWNrQ29sb3I6Um8obix0KSxjYXRzOnQuY2F0ZWdvcmllcz8/ZS5jYXRlZ29yaWVzLHBvaW50T3ZlcnJpZGVzOm5ldyBNYXAoKHQuZGF0YVBvaW50T3ZlcnJpZGVzPz9bXSkubWFwKGU9PltlLmlkeCxlXSkpfX1mdW5jdGlvbiBwbChlLHQsbixyLGkpe2xldCBhPVRsKGUuYnViYmxlU2NhbGU/PzEwMCwwLDMwMCk7aWYoYTw9MClyZXR1cm4gMDtsZXQgbz0wO2ZvcihsZXR7c2VyaWVzOnIsY2F0czppLHBvaW50T3ZlcnJpZGVzOmF9b2YgdClpZighKHIuc2hvd01hcmtlcj09PSExfHxyLm1hcmtlclN5bWJvbD09PWBub25lYCkpZm9yKGxldCB0PTA7dDxyLnZhbHVlcy5sZW5ndGg7dCsrKXtpZihyLnZhbHVlc1t0XT09bnVsbHx8c2woaSx0LG4pPT1udWxsfHxhLmdldCh0KT8ubWFya2VyU3ltYm9sPT09YG5vbmVgKWNvbnRpbnVlO2xldCBzPUNuKGUsci5idWJibGVTaXplcz8uW3RdKTtzIT1udWxsJiYobz1NYXRoLm1heChvLGNsKGUscykpKX1yZXR1cm4gbzw9MD8wOk1hdGgubWluKHIsaSkqYS8oMzAwK2EpL299ZnVuY3Rpb24gbWwoZSx0LG4scixpLGEsbyxzLGMsbCx1LGQsZixwLG0saCxnLF89MCx2KXtsZXQgeT1wPT09YGxpbmVgfHxwPT09YGxpbmVNYXJrZXJgfHxwPT09YGxpbmVOb01hcmtlcmAsYj1wPT09YHNtb290aGB8fHA9PT1gc21vb3RoTWFya2VyYHx8cD09PWBzbW9vdGhOb01hcmtlcmAseD1Bbihgc2NhdHRlcmAsdC5jaGFydFR5cGUscCx0LnJhZGFyU3R5bGUpLFM9bi5tYXAoKHtzZXJpZXM6ZSxpbmRleDpufSk9PmZsKHQsZSxuKSksQz1jcyh0LGQpLHc9dj8/dCxUPWY/cGwodyxTLHIsbCx1KTowO2ZvcihsZXR7c2VyaWVzOm4sZmFsbGJhY2tDb2xvcjpvLGNhdHM6c31vZiBTKWZvcihsZXQgYyBvZiBuLmVyckJhcnM/P1tdKXZsKGUsbixDYyh0LGMpLHMscixpLGEsbyk7Zm9yKGxldHtzZXJpZXM6dCxmYWxsYmFja0NvbG9yOm4sY2F0czpvfW9mIFMpe2xldCBzPXA9PT1gbWFya2VyYCYmbG8odCksYz1zfHx5LGw9IXMmJnA9PT1gbWFya2VyYCYmIWZ8fGI7aWYoKGN8fGwpJiZ0LmxpbmVIaWRkZW4hPT0hMCl7bGV0IGM9W107Zm9yKGxldCBlPTA7ZTx0LnZhbHVlcy5sZW5ndGg7ZSsrKXtsZXQgbj10LnZhbHVlc1tlXTtpZihuPT1udWxsKWNvbnRpbnVlO2xldCBzPXNsKG8sZSxyKTtzIT1udWxsJiZjLnB1c2goe3g6aShzKSx5OmEobil9KX1pZihjLmxlbmd0aD49Mil7aWYoZS5zYXZlKCkscyYmdC5kYXRhUG9pbnRDb2xvcnM/LnNvbWUoQm9vbGVhbikpe2UubGluZVdpZHRoPTEuNTtmb3IobGV0IHI9MTtyPGMubGVuZ3RoO3IrKyllLnN0cm9rZVN0eWxlPWAjJHt0LmRhdGFQb2ludENvbG9yc1tyXT8/dC5jb2xvcj8/bi5yZXBsYWNlKC9eIy8sYGApfWAsZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhjW3ItMV0ueCxjW3ItMV0ueSksZS5saW5lVG8oY1tyXS54LGNbcl0ueSksZS5zdHJva2UoKX1lbHNle2lmKGUuc3Ryb2tlU3R5bGU9dC5jb2xvcj9gIyR7dC5jb2xvcn1gOm4sZS5saW5lV2lkdGg9MS41LGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8oY1swXS54LGNbMF0ueSksbCYmYy5sZW5ndGg+PTMpZm9yKGxldCB0PTA7dDxjLmxlbmd0aC0xO3QrKyl7bGV0IG49Y1t0LTFdPz9jW3RdLHI9Y1t0XSxpPWNbdCsxXSxhPWNbdCsyXT8/aTtlLmJlemllckN1cnZlVG8oci54KyhpLngtbi54KS82LHIueSsoaS55LW4ueSkvNixpLngtKGEueC1yLngpLzYsaS55LShhLnktci55KS82LGkueCxpLnkpfWVsc2UgZm9yKGxldCB0PTE7dDxjLmxlbmd0aDt0KyspZS5saW5lVG8oY1t0XS54LGNbdF0ueSk7ZS5zdHJva2UoKX1lLnJlc3RvcmUoKX19fWZvcihsZXR7c2VyaWVzOm4sZmFsbGJhY2tDb2xvcjpvLGNhdHM6cyxwb2ludE92ZXJyaWRlczpjfW9mIFMpe2xldCBsPSF4JiZuLnNob3dNYXJrZXIhPT0hMSYmbi5tYXJrZXJTeW1ib2whPT1gbm9uZWA7aWYobHx8IXgmJmtuKG4pKWZvcihsZXQgdT0wO3U8bi52YWx1ZXMubGVuZ3RoO3UrKyl7bGV0IHA9bi52YWx1ZXNbdV07aWYocD09bnVsbCljb250aW51ZTtsZXQgbT1zbChzLHUscik7aWYobT09bnVsbCljb250aW51ZTtsZXQgaD1jLmdldCh1KSxnPU1uKG4saCxmP2BjaXJjbGVgOm4uYXV0b21hdGljTWFya2VyU3ltYm9sPz9gY2lyY2xlYCxsKTtpZihnPT09YG5vbmVgKWNvbnRpbnVlO2xldCB2PWg/Lm1hcmtlclNpemU/P24ubWFya2VyU2l6ZT8/NTtpZihmKXtpZihUPD0wKWNvbnRpbnVlO2xldCBlPUNuKHcsbi5idWJibGVTaXplcz8uW3VdKTtpZihlPT1udWxsKWNvbnRpbnVlO3Y9Y2wodyxlKSpUL2R9bGV0IHk9Zj91bCh0LG4saCx1LG8pOm51bGwsYj15Py5jb2xvcj8/bGwobixoLHUsbykseD1mP2RsKHQsbixoLHUpOm51bGwsUz1mP3guY29sb3I6aD8ubWFya2VyTGluZT8/bi5tYXJrZXJMaW5lPz9udWxsLEM9aD8ubWFya2VyTGluZVdpZHRoRW11Pz9uLm1hcmtlckxpbmVXaWR0aEVtdSxFPXg/LndpZHRoRW11LEQ9Zj9FOkMsTz1EPT1udWxsP3ZvaWQgMDppYShELGQpO19sKGUsaShtKSxhKHApLGcsdixiLFMsZCxPLGY/eS5wYWludDpObihuLGgsdSksXyxmP3gucGFpbnQ6dm9pZCAwLGY/eC5kYXNoOnZvaWQgMCxmP3guY3VzdG9tRGFzaDp2b2lkIDAsZj94LmNhcDp2b2lkIDAsZj94LmpvaW46dm9pZCAwLGY/d24obixoKTohMSl9fWZvcihsZXR7c2VyaWVzOm4sc2VyaWVzSW5kZXg6cyxjYXRzOmwscG9pbnRPdmVycmlkZXM6cH1vZiBTKXlsKGUsbixsLHIsaSxhLHUsZCx0LmRhdGUxOTA0LCQodCx0LmRhdGFMYWJlbEZvbnRGYWNlLGBtaW5vcmApLHQuZGF0YUxhYmVsUG9zaXRpb24/P2ByYCx7eDpvLngseTpjLHc6by53LGg6dX0sbSxlPT4kKHQsZSxgbWlub3JgKSxnLGU9PkMocyxlKSxlPT5oYyh0LGUsaCksXyxlPT57aWYoeClyZXR1cm4gMDtsZXQgdD1uLnNob3dNYXJrZXIhPT0hMSYmbi5tYXJrZXJTeW1ib2whPT1gbm9uZWAscj1wLmdldChlKTtpZihNbihuLHIsYGNpcmNsZWAsdCk9PT1gbm9uZWApcmV0dXJuIDA7bGV0IGk9cj8ubWFya2VyU2l6ZT8/bi5tYXJrZXJTaXplPz81O2lmKGYpe2lmKFQ8PTApcmV0dXJuIDA7bGV0IHQ9Q24odyxuLmJ1YmJsZVNpemVzPy5bZV0pO2lmKHQ9PW51bGwpcmV0dXJuIDA7aT1jbCh3LHQpKlQvZH1yZXR1cm4gTWF0aC5tYXgoMCxpKmQvMil9KTtmb3IobGV0e3NlcmllczpuLGZhbGxiYWNrQ29sb3I6ZixjYXRzOnB9b2YgUylLcyhlLG4sZixpLGEsZCxuLnZhbHVlcy5tYXAoKGUsdCk9PnNsKHAsdCxyKSkse2NoYXJ0OnQsY2hhcnRSZWN0Om8scGxvdFJlY3Q6e3g6cyx5OmMsdzpsLGg6dX0sY2xpcExpbmVUb1Bsb3Q6ITAsc2hhcGVSb3RhdGlvbkRlZzpffSl9ZnVuY3Rpb24gaGwoZSx0LG4scixpPTApe2xldHt4OmEseTpvLHc6cyxoOmN9PW4sbD10LnNlcmllcy5tYXAoKGUsdCk9Pih7c2VyaWVzOmUsaW5kZXg6dH0pKSx1PVhuKHQpLGQ9KHtzZXJpZXM6ZSxpbmRleDpufSk9PnVbbl0/LmNhdGVnb3J5QXhpcz09PWBzZWNvbmRhcnlgfHx0LnBsb3RHcm91cHM9PW51bGwmJmUudXNlU2Vjb25kYXJ5QXhpcz09PSEwLGY9KHtzZXJpZXM6ZSxpbmRleDpufSk9PnVbbl0/LnZhbHVlQXhpcz09PWBzZWNvbmRhcnlgfHx0LnBsb3RHcm91cHM9PW51bGwmJmUudXNlU2Vjb25kYXJ5QXhpcz09PSEwLHA9bC5maWx0ZXIoZT0+IWQoZSkpLG09bC5maWx0ZXIoZCksaD1sLmZpbHRlcihlPT4hZihlKSksZz1sLmZpbHRlcihmKSxfPWwuZmlsdGVyKGU9PiFkKGUpJiYhZihlKSksdj1sLmZpbHRlcihlPT5kKGUpJiZmKGUpKSx5PW0ubGVuZ3RoPjA/dC5zZWNvbmRhcnlDYXRBeGlzOm51bGwsYj1nLmxlbmd0aD4wP3Quc2Vjb25kYXJ5VmFsQXhpczpudWxsLHg9KGU9PntsZXQgbj1bXTtmb3IobGV0e3NlcmllczpyfW9mIGUpe2xldCBlPXIuY2F0ZWdvcmllcz8/dC5jYXRlZ29yaWVzO2ZvcihsZXQgdCBvZiBlKXtsZXQgZT1wYXJzZUZsb2F0KHQpO051bWJlci5pc0Zpbml0ZShlKSYmbi5wdXNoKGUpfX1yZXR1cm4gbn0pKGwpLmxlbmd0aD09PTAsUz1sLmxlbmd0aD09PTEmJmxbMF0uc2VyaWVzLmJ1YmJsZVhTb3VyY2VJc1N0cmluZz09PSEwP2xbMF0uc2VyaWVzLnZhbHVlcy5sZW5ndGgrMTpudWxsLEM9ZT0+e2xldCBuPVtdLHI9W107Zm9yKGxldHtzZXJpZXM6aX1vZiBlKXtsZXQgZT1pLmNhdGVnb3JpZXM/P3QuY2F0ZWdvcmllcztmb3IobGV0IHQ9MDt0PGkudmFsdWVzLmxlbmd0aDt0Kyspe2xldCBhPWkudmFsdWVzW3RdO2lmKGE9PW51bGwpY29udGludWU7bGV0IG89c2woZSx0LHgpO28hPW51bGwmJihuLnB1c2gobyksci5wdXNoKGEpKX1uYyhpLGB4YCx0PT5pLnZhbHVlc1t0XT09bnVsbD9udWxsOnNsKGUsdCx4KSxlPT5uLnB1c2goZSkpLG5jKGksYHlgLHQ9PnNsKGUsdCx4KT09bnVsbD9udWxsOmkudmFsdWVzW3RdPz9udWxsLGU9PnIucHVzaChlKSl9aWYoeCYmbi5sZW5ndGg9PT0wKXtsZXQgdD0wO2ZvcihsZXR7c2VyaWVzOm59b2YgZSl0PU1hdGgubWF4KHQsbi52YWx1ZXMubGVuZ3RoKTtmb3IobGV0IGU9MDtlPHQ7ZSsrKW4ucHVzaChlKX1yZXR1cm57eDpCaShuKSx5OkJpKHIpfX0sdz17eDpDKHAubGVuZ3RoPjA/cDptKS54LHk6QyhoLmxlbmd0aD4wP2g6ZykueX0sVD17eDpDKG0pLngseTpDKGcpLnl9LEU9dWMoZSx0LHMsYyxyKSxEPUUuZm9udFB4LE89RS50b3BQYWQsaz1Zcyh0LmNhdEF4aXNGb250U2l6ZUhwdCxjLHIpLEE9WXModC52YWxBeGlzRm9udFNpemVIcHQsYyxyKSxqPWhzKGUsdCxzLGMsLjIyLHIpLHtsZWdSaWdodFc6TSxsZWdMZWZ0VzpOLGxlZ1RvcEg6UCxsZWdCb3R0b21IOkZ9PVB0KGosdC5sZWdlbmRPdmVybGF5PT09ITApLEk9enQodCxzLGMsciksTD1JLmNhdEZvbnRQeCxSPUkudmFsRm9udFB4LHo9SS5jYXRCYW5kSCxCPUkudmFsQmFuZFc7ZmMoZSx0LGEsbyxzLGMsbytPLEQpO2xldCBlZT1iP2VhKHtkYXRhTWluOlQueS5taW4sZGF0YU1heDpULnkubWF4LGV4cGxpY2l0TWluOmIubWluLGV4cGxpY2l0TWF4OmIubWF4LGF4aXNMZW5QdDpNYXRoLm1heCgxLGMqLjcvciksYXhpc09yaWVudGF0aW9uOmB2ZXJ0aWNhbGAsbWFqb3JVbml0OmIubWFqb3JVbml0LG1pbm9yVW5pdDpiLm1pbm9yVW5pdCxuZWVkTWlub3I6Yi5taW5vckdyaWRsaW5lcz09PSEwfHxiLm1pbm9yVGlja01hcmshPW51bGwmJmIubWlub3JUaWNrTWFyayE9PWBub25lYCxsb2dCYXNlOmIubG9nQmFzZSxyZXZlcnNlZDpiLm9yaWVudGF0aW9uPT09YG1heE1pbmB9KTpudWxsLFY9MDtpZihiJiZlZSYmIWIuaGlkZGVuJiZiLnRpY2tMYWJlbFBvcyE9PWBub25lYCl7bGV0IG49ZS5mb250O2UuZm9udD1IbyhBdChiLmZvbnRTaXplSHB0LHIpPz9BLCQodCxiLmZvbnRGYWNlLGBtaW5vcmApLGIuZm9udEJvbGQ/PyExLGIuZm9udEl0YWxpYz8/ITEpO2ZvcihsZXQgbiBvZiBlZS5tYWpvclRpY2tzKVY9TWF0aC5tYXgoVixlLm1lYXN1cmVUZXh0KHpzKG4sYi5mb3JtYXRDb2RlLHQuZGF0ZTE5MDQsYi5kaXNwbGF5VW5pdHMpKS53aWR0aCk7Vis9VXQoQSkrNCxlLmZvbnQ9bn1sZXQgSD15JiYheS5oaWRkZW4mJnkudGlja0xhYmVsUG9zIT09YG5vbmVgPyhBdCh5LmZvbnRTaXplSHB0LHIpPz9rKStIdChrKSsyOjAse3Bsb3RSZWN0OntweDA6VSxweTA6VyxwdzpHLHBoOkt9fT1LdCh0LGEsbyxzLGMscix7dGl0bGVCYW5kOkUsbGVnZW5kU2lkZVJlc2VydmVGcmFjOi4yMixsZWdlbmRSZXNlcnZlOmoscGFkOnt0OkUuYmFuZEgrUCtBLzIrMitILHI6TStzKi4wNStWLGI6KHQuY2F0QXhpc0hpZGRlbj9jKi4wNDpWdChrKSkreitGLGw6KHQudmFsQXhpc0hpZGRlbj9zKi4wNDpzKi4xMikrQitOfSxob25vclBsb3RBcmVhTWFudWFsTGF5b3V0OiEwfSk7aWYoRzw9MHx8Szw9MClyZXR1cm47JGEoZSx0LFUsVyxHLEsscixpKTtsZXR7bWluOnRlLG1heDpuZX09dy54LHttaW46cmUsbWF4OmllfT13Lnk7dC52YWxNaW4hPW51bGwmJihyZT10LnZhbE1pbiksdC52YWxNYXghPW51bGwmJihpZT10LnZhbE1heCk7bGV0IGFlPXQudmFsQXhpc01pbm9yR3JpZGxpbmVzPT09ITB8fHQudmFsQXhpc01pbm9yVGlja01hcmshPW51bGwmJnQudmFsQXhpc01pbm9yVGlja01hcmshPT1gbm9uZWAsb2U9ZWEoe2RhdGFNaW46cmUsZGF0YU1heDppZSxleHBsaWNpdE1pbjp0LnZhbE1pbixleHBsaWNpdE1heDp0LnZhbE1heCxheGlzTGVuUHQ6Sy9yLGF4aXNPcmllbnRhdGlvbjpgdmVydGljYWxgLG1ham9yVW5pdDp0LnZhbEF4aXNNYWpvclVuaXQsbWlub3JVbml0OnQudmFsQXhpc01pbm9yVW5pdCxuZWVkTWlub3I6YWUsbG9nQmFzZTp0LnZhbEF4aXNMb2dCYXNlLHJldmVyc2VkOk5zKHQpfSk7cmU9b2UubWluLGllPW9lLm1heDtsZXQgc2U9dC5jYXRBeGlzTWlub3JHcmlkbGluZXM9PT0hMHx8dC5jYXRBeGlzTWlub3JUaWNrTWFyayE9bnVsbCYmdC5jYXRBeGlzTWlub3JUaWNrTWFyayE9PWBub25lYCxjZT1lYSh7ZGF0YU1pbjp0ZSxkYXRhTWF4Om5lLGV4cGxpY2l0TWluOnQuY2F0QXhpc01pbj8/KFM9PW51bGw/bnVsbDowKSxleHBsaWNpdE1heDp0LmNhdEF4aXNNYXg/P1MsYXhpc0xlblB0OkcvcixheGlzT3JpZW50YXRpb246YGhvcml6b250YWxgLG1ham9yVW5pdDp0LmNhdEF4aXNNYWpvclVuaXQsbWlub3JVbml0OnQuY2F0QXhpc01pbm9yVW5pdCxuZWVkTWlub3I6c2UsbG9nQmFzZTp0LmNhdEF4aXNMb2dCYXNlLHJldmVyc2VkOlBzKHQpfSk7dGU9Y2UubWluLG5lPWNlLm1heDtsZXQgbGU9eT9lYSh7ZGF0YU1pbjpULngubWluLGRhdGFNYXg6VC54Lm1heCxleHBsaWNpdE1pbjp5Lm1pbixleHBsaWNpdE1heDp5Lm1heCxheGlzTGVuUHQ6Ry9yLGF4aXNPcmllbnRhdGlvbjpgaG9yaXpvbnRhbGAsbWFqb3JVbml0OnkubWFqb3JVbml0LG1pbm9yVW5pdDp5Lm1pbm9yVW5pdCxuZWVkTWlub3I6eS5taW5vckdyaWRsaW5lcz09PSEwfHx5Lm1pbm9yVGlja01hcmshPW51bGwmJnkubWlub3JUaWNrTWFyayE9PWBub25lYCxsb2dCYXNlOnkubG9nQmFzZSxyZXZlcnNlZDp5Lm9yaWVudGF0aW9uPT09YG1heE1pbmB9KTpudWxsLHVlPWI/ZWEoe2RhdGFNaW46VC55Lm1pbixkYXRhTWF4OlQueS5tYXgsZXhwbGljaXRNaW46Yi5taW4sZXhwbGljaXRNYXg6Yi5tYXgsYXhpc0xlblB0OksvcixheGlzT3JpZW50YXRpb246YHZlcnRpY2FsYCxtYWpvclVuaXQ6Yi5tYWpvclVuaXQsbWlub3JVbml0OmIubWlub3JVbml0LG5lZWRNaW5vcjpiLm1pbm9yR3JpZGxpbmVzPT09ITB8fGIubWlub3JUaWNrTWFyayE9bnVsbCYmYi5taW5vclRpY2tNYXJrIT09YG5vbmVgLGxvZ0Jhc2U6Yi5sb2dCYXNlLHJldmVyc2VkOmIub3JpZW50YXRpb249PT1gbWF4TWluYH0pOm51bGwscT1lPT5VK2NlLmZyYWN0aW9uKGUpKkcsZGU9ZT0+VytLLW9lLmZyYWN0aW9uKGUpKkssSj1lPT5VKyhsZT8uZnJhY3Rpb24oZSk/PzApKkcsWT1lPT5XK0stKHVlPy5mcmFjdGlvbihlKT8/MCkqSyxmZT1jZS5tYWpvclVuaXQscGU9b2UubWFqb3JUaWNrcyxtZT1vZS5taW5vclRpY2tzLGhlPWNlLm1ham9yVGlja3MsZ2U9Y2UubWlub3JUaWNrcyxfZT1XK0s7aWYodC5jYXRBeGlzQ3Jvc3Nlc0F0IT1udWxsKV9lPVRsKGRlKHQuY2F0QXhpc0Nyb3NzZXNBdCksVyxXK0spO2Vsc2V7bGV0IGU9dC5jYXRBeGlzQ3Jvc3Nlcz8/YGF1dG9aZXJvYDtlPT09YGF1dG9aZXJvYCYmcmU8MCYmaWU+MD9fZT1UbChkZSgwKSxXLFcrSyk6ZT09PWBtYXhgJiYoX2U9Vyl9bGV0IHZlPVU7aWYodC52YWxBeGlzQ3Jvc3Nlc0F0IT1udWxsKXZlPVRsKHEodC52YWxBeGlzQ3Jvc3Nlc0F0KSxVLFUrRyk7ZWxzZXtsZXQgZT10LnZhbEF4aXNDcm9zc2VzPz9gYXV0b1plcm9gO2U9PT1gYXV0b1plcm9gJiZ0ZTwwJiZuZT4wP3ZlPVRsKHEoMCksVSxVK0cpOmU9PT1gbWF4YCYmKHZlPVUrRyl9bGV0IFg9VHModCxyKTtpZighdC52YWxBeGlzSGlkZGVuKXtsZXQgbj10LnZhbEF4aXNGb250U2l6ZUhwdD09bnVsbD9NYXRoLm1heCg4LE1hdGgubWluKDExLEsvMjApKTpZcyh0LnZhbEF4aXNGb250U2l6ZUhwdCxjLHIpLGk9dC52YWxBeGlzRm9udFNpemVIcHQ9PW51bGw/NDpVdChuKTtlLmZvbnQ9SG8obiwkKHQsdC52YWxBeGlzRm9udEZhY2UsYG1pbm9yYCksdC52YWxBeGlzRm9udEJvbGQ/PyExLHQudmFsQXhpc0ZvbnRJdGFsaWM/PyExKTtsZXQgYT10LnZhbEF4aXNMaW5lQ29sb3I/YCMke3QudmFsQXhpc0xpbmVDb2xvcn1gOnZvaWQgMCxvPWlhKHQudmFsQXhpc0xpbmVXaWR0aEVtdSxyKSxzPXQudmFsQXhpc0xpbmVIaWRkZW4/MDpDcyh0LnZhbEF4aXNNYWpvclRpY2tNYXJrLGBtYWpvcmAsbyxyKTtpZih0LnZhbEF4aXNNaW5vckdyaWRsaW5lcyl7bGV0IG49RXModCxyKTtmb3IobGV0IHQgb2YgbWUpd3MoZSxVLEcsZGUodCksITEsbil9Zm9yKGxldCBuIG9mIHBlKXtsZXQgYz1kZShuKTtpZihlLnN0cm9rZVN0eWxlPVguY29sb3IsZS5saW5lV2lkdGg9WC53aWR0aCxGcyh0KSl7bGV0IHQ9WC5kYXNoLmxlbmd0aD4wJiZlLmdldExpbmVEYXNoP2UuZ2V0TGluZURhc2goKTpbXTtYLmRhc2gubGVuZ3RoPjAmJmUuc2V0TGluZURhc2goWC5kYXNoKSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKFUsYyksZS5saW5lVG8oVStHLGMpLGUuc3Ryb2tlKCksWC5kYXNoLmxlbmd0aD4wJiZlLnNldExpbmVEYXNoKHQpfWlmKHQudmFsQXhpc1RpY2tMYWJlbFBvcyE9PWBub25lYCl7ZS5maWxsU3R5bGU9dC52YWxBeGlzRm9udENvbG9yP2AjJHt0LnZhbEF4aXNGb250Q29sb3J9YDpgIzU1NWA7bGV0IHI9dC52YWxBeGlzVGlja0xhYmVsUG9zPz9gbmV4dFRvYCxhO3I9PT1gaGlnaGA/KGUudGV4dEFsaWduPWBsZWZ0YCxhPVUrRytpKTpyPT09YGxvd2A/KGUudGV4dEFsaWduPWByaWdodGAsYT1VLWkpOihlLnRleHRBbGlnbj1gcmlnaHRgLGE9dmUtcy1pKSxlLnRleHRCYXNlbGluZT1gbWlkZGxlYCxlLmZpbGxUZXh0KExzKHQsbiwhMSksYSxjKX1icyhlLHQudmFsQXhpc01ham9yVGlja01hcmssYHZhbGAsdmUsYyxhLG8sITEsdC52YWxBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC52YWxBeGlzTGluZURhc2gpfWlmKHQudmFsQXhpc01pbm9yVGlja01hcmsmJnQudmFsQXhpc01pbm9yVGlja01hcmshPT1gbm9uZWApZm9yKGxldCBuIG9mIG1lKWJzKGUsdC52YWxBeGlzTWlub3JUaWNrTWFyayxgdmFsYCx2ZSxkZShuKSxhLG8sITEsdC52YWxBeGlzTGluZUhpZGRlbixgbWlub3JgLHIsdC52YWxBeGlzTGluZURhc2gpfWlmKCF0LmNhdEF4aXNIaWRkZW4mJmtzKHQpJiZmZT4wKXtsZXQgbj1Bcyh0LHIpO2Uuc3Ryb2tlU3R5bGU9bi5jb2xvcixlLmxpbmVXaWR0aD1uLndpZHRoO2xldCBpPW4uZGFzaC5sZW5ndGg+MCYmZS5nZXRMaW5lRGFzaD9lLmdldExpbmVEYXNoKCk6W107bi5kYXNoLmxlbmd0aD4wJiZlLnNldExpbmVEYXNoKG4uZGFzaCk7Zm9yKGxldCB0IG9mIGhlKXtsZXQgbj1xKHQpO2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8obixXKSxlLmxpbmVUbyhuLFcrSyksZS5zdHJva2UoKX1uLmRhc2gubGVuZ3RoPjAmJmUuc2V0TGluZURhc2goaSl9aWYoIXQuY2F0QXhpc0hpZGRlbiYmdC5jYXRBeGlzTWlub3JHcmlkbGluZXMmJmZlPjApe2xldCBuPWpzKHQsciksaT1uLmRhc2gubGVuZ3RoPjAmJmUuZ2V0TGluZURhc2g/ZS5nZXRMaW5lRGFzaCgpOltdO2Uuc3Ryb2tlU3R5bGU9bi5jb2xvcixlLmxpbmVXaWR0aD1uLndpZHRoLG4uZGFzaC5sZW5ndGg+MCYmZS5zZXRMaW5lRGFzaChuLmRhc2gpO2ZvcihsZXQgdCBvZiBnZSl7bGV0IG49cSh0KTtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKG4sVyksZS5saW5lVG8obixXK0spLGUuc3Ryb2tlKCl9bi5kYXNoLmxlbmd0aD4wJiZlLnNldExpbmVEYXNoKGkpfWlmKCF0LmNhdEF4aXNIaWRkZW4mJiF0LmNhdEF4aXNMaW5lSGlkZGVuJiYoZS5zYXZlKCksZS5saW5lQ2FwPWBidXR0YCx4cyhlLFUsX2UsVStHLF9lLHQuY2F0QXhpc0xpbmVDb2xvcj9gIyR7dC5jYXRBeGlzTGluZUNvbG9yfWA6YCM4ODhgLGlhKHQuY2F0QXhpc0xpbmVXaWR0aEVtdSxyKSx0LmNhdEF4aXNMaW5lRGFzaCksZS5yZXN0b3JlKCkpLCF0LnZhbEF4aXNIaWRkZW4mJiF0LnZhbEF4aXNMaW5lSGlkZGVuJiYoZS5zYXZlKCkseHMoZSx2ZSxXLHZlLFcrSyx0LnZhbEF4aXNMaW5lQ29sb3I/YCMke3QudmFsQXhpc0xpbmVDb2xvcn1gOmAjODg4YCxpYSh0LnZhbEF4aXNMaW5lV2lkdGhFbXUsciksdC52YWxBeGlzTGluZURhc2gpLGUucmVzdG9yZSgpKSwhdC5jYXRBeGlzSGlkZGVuKXtsZXQgbj10LmNhdEF4aXNGb250U2l6ZUhwdD09bnVsbD9NYXRoLm1heCg4LE1hdGgubWluKDExLEsvMjApKTpZcyh0LmNhdEF4aXNGb250U2l6ZUhwdCxjLHIpLGk9dC5jYXRBeGlzRm9udFNpemVIcHQ9PW51bGw/NDpIdChuKTtlLmZvbnQ9SG8obiwkKHQsdC5jYXRBeGlzRm9udEZhY2UsYG1pbm9yYCksdC5jYXRBeGlzRm9udEJvbGQ/PyExLHQuY2F0QXhpc0ZvbnRJdGFsaWM/PyExKSxlLmZpbGxTdHlsZT10LmNhdEF4aXNGb250Q29sb3I/YCMke3QuY2F0QXhpc0ZvbnRDb2xvcn1gOmAjNTU1YCxlLnRleHRBbGlnbj1gY2VudGVyYDtsZXQgYT10LmNhdEF4aXNUaWNrTGFiZWxQb3M/P2BuZXh0VG9gLG89aWEodC5jYXRBeGlzTGluZVdpZHRoRW11LHIpLHM9dC5jYXRBeGlzTGluZUNvbG9yP2AjJHt0LmNhdEF4aXNMaW5lQ29sb3J9YDp2b2lkIDAsbD10LmNhdEF4aXNMaW5lSGlkZGVuPzA6Q3ModC5jYXRBeGlzTWFqb3JUaWNrTWFyayxgbWFqb3JgLG8sciksdT1hPT09YGxvd2A/VytLK2k6YT09PWBoaWdoYD9XLWk6X2UrbCtpO2UudGV4dEJhc2VsaW5lPWE9PT1gaGlnaGA/YGJvdHRvbWA6YHRvcGA7Zm9yKGxldCBuIG9mIGhlKXtsZXQgaT1xKG4pO2EhPT1gbm9uZWAmJmUuZmlsbFRleHQoenMobix0LmNhdEF4aXNGb3JtYXRDb2RlLHQuZGF0ZTE5MDQsdC5jYXRBeGlzRGlzcGxheVVuaXRzKSxpLHUpLGJzKGUsdC5jYXRBeGlzTWFqb3JUaWNrTWFyayxgY2F0YCxfZSxpLHMsbywhMSx0LmNhdEF4aXNMaW5lSGlkZGVuLGBtYWpvcmAscix0LmNhdEF4aXNMaW5lRGFzaCl9aWYodC5jYXRBeGlzTWlub3JUaWNrTWFyayYmdC5jYXRBeGlzTWlub3JUaWNrTWFyayE9PWBub25lYClmb3IobGV0IG4gb2YgZ2UpYnMoZSx0LmNhdEF4aXNNaW5vclRpY2tNYXJrLGBjYXRgLF9lLHEobikscyxvLCExLHQuY2F0QXhpc0xpbmVIaWRkZW4sYG1pbm9yYCxyLHQuY2F0QXhpc0xpbmVEYXNoKX1sZXQgWj0obCx1LGQsZixwLG0saCxnKT0+e2wubGVuZ3RoIT09MCYmbWwoZSx0LGwseCxmLHAsbixVLFcsRyxLLHIsdSxkLHt4OmEseTpvLHc6cyxoOmN9LG0saCxpLGcpfTtpZih0LnBsb3RHcm91cHM9PW51bGwpe2xldCBlPXQuY2hhcnRUeXBlPT09YGJ1YmJsZWAsbj1lP2BtYXJrZXJgOnQuc2NhdHRlclN0eWxlPz9gbWFya2VyYDtaKF8sZSxuLHEsZGUsb2UubWF4LHQudmFsQXhpc0Rpc3BsYXlVbml0cyksdi5sZW5ndGg+MCYmbGUmJnVlJiZaKHYsZSxuLEosWSx1ZS5tYXgsYj8uZGlzcGxheVVuaXRzKX1lbHNlIGZvcihsZXQgZSBvZiB0LnBsb3RHcm91cHMpe2lmKGUua2luZCE9PWBzY2F0dGVyYCYmZS5raW5kIT09YGJ1YmJsZWApY29udGludWU7bGV0IG49dC5zZXJpZXMuc2xpY2UoZS5zZXJpZXNTdGFydCxlLnNlcmllc1N0YXJ0K2Uuc2VyaWVzQ291bnQpLm1hcCgodCxuKT0+KHtzZXJpZXM6dCxpbmRleDplLnNlcmllc1N0YXJ0K259KSk7aWYobi5sZW5ndGg9PT0wKWNvbnRpbnVlO2xldCByPWUua2luZD09PWBidWJibGVgLGk9ZS5jYXRlZ29yeUF4aXM9PT1gc2Vjb25kYXJ5YCxhPWUudmFsdWVBeGlzPT09YHNlY29uZGFyeWA7WihuLHIscj9gbWFya2VyYDplLnNjYXR0ZXJTdHlsZT8/dC5zY2F0dGVyU3R5bGU/P2BtYXJrZXJgLGk/SjpxLGE/WTpkZSxhJiZ1ZT91ZS5tYXg6b2UubWF4LGE/Yj8uZGlzcGxheVVuaXRzOnQudmFsQXhpc0Rpc3BsYXlVbml0cyxyP3tidWJibGVTY2FsZTplLmJ1YmJsZVNjYWxlPz90LmJ1YmJsZVNjYWxlLGJ1YmJsZVNpemVSZXByZXNlbnRzOmUuYnViYmxlU2l6ZVJlcHJlc2VudHM/P3QuYnViYmxlU2l6ZVJlcHJlc2VudHMsc2hvd05lZ2F0aXZlQnViYmxlczplLnNob3dOZWdhdGl2ZUJ1YmJsZXM/P3Quc2hvd05lZ2F0aXZlQnViYmxlc306dm9pZCAwKX1pZih5JiZsZSYmIXkuaGlkZGVuKXtsZXQgbj1hYSh5LmxpbmVDb2xvcix5LmxpbmVXaWR0aEVtdSxyKTt5LmxpbmVIaWRkZW58fHhzKGUsVSxXLFUrRyxXLG4uY29sb3Isbi53aWR0aCx5LmxpbmVEYXNoKTtsZXQgaT1BdCh5LmZvbnRTaXplSHB0LHIpPz9rO2UuZm9udD1IbyhpLCQodCx5LmZvbnRGYWNlLGBtaW5vcmApLHkuZm9udEJvbGQ/PyExLHkuZm9udEl0YWxpYz8/ITEpLGUuZmlsbFN0eWxlPXkuZm9udENvbG9yP2AjJHt5LmZvbnRDb2xvcn1gOmAjNTU1YCxlLnRleHRBbGlnbj1gY2VudGVyYCxlLnRleHRCYXNlbGluZT1gYm90dG9tYDtsZXQgYT15LmxpbmVIaWRkZW4/MDpDcyh5Lm1ham9yVGlja01hcmssYG1ham9yYCxuLndpZHRoLHIpO2ZvcihsZXQgbyBvZiBsZS5tYWpvclRpY2tzKXtsZXQgcz1KKG8pO3kudGlja0xhYmVsUG9zIT09YG5vbmVgJiZlLmZpbGxUZXh0KHpzKG8seS5mb3JtYXRDb2RlLHQuZGF0ZTE5MDQseS5kaXNwbGF5VW5pdHMpLHMsVy1hLUh0KGkpKSxicyhlLHkubWFqb3JUaWNrTWFyayxgY2F0YCxXLHMsbi5jb2xvcixuLndpZHRoLCEwLHkubGluZUhpZGRlbixgbWFqb3JgLHIseS5saW5lRGFzaCl9aWYoeS5taW5vclRpY2tNYXJrJiZ5Lm1pbm9yVGlja01hcmshPT1gbm9uZWApZm9yKGxldCB0IG9mIGxlLm1pbm9yVGlja3MpYnMoZSx5Lm1pbm9yVGlja01hcmssYGNhdGAsVyxKKHQpLG4uY29sb3Isbi53aWR0aCwhMCx5LmxpbmVIaWRkZW4sYG1pbm9yYCxyLHkubGluZURhc2gpfWImJnVlJiZhYyhlLHQsYix7bWluOnVlLm1pbixtYXg6dWUubWF4LHN0ZXA6dWUubWFqb3JVbml0LG1ham9yTGluZXM6dWUubWFqb3JUaWNrcyxtaW5vclRpY2tzOnVlLm1pbm9yVGlja3MsbWFrZVRvWTooKT0+WX0sWSxuLFUsVyxHLEsscixBdChiLmZvbnRTaXplSHB0LHIpPz9BLFYsdC52YWxBeGlzRm9udENvbG9yP2AjJHt0LnZhbEF4aXNGb250Q29sb3J9YDpgIzU1NWAsdC5kYXRlMTkwNCksdnMoZSx0LGosYSxvLHMsYyxVLFcsRyxLLEUuYmFuZEgrMixyKSxKbyhlLHQsYSxvLHMsYyxVLFcsRyxLLE4sRixMLFIpfWZ1bmN0aW9uIGdsKGUsdCxuLHIpe2xldCBpPWUuZ2xvYmFsQ29tcG9zaXRlT3BlcmF0aW9uLGE9ZS5maWxsU3R5bGU7ZS5zYXZlKCksZS5jbGlwKCk7bGV0IG89aT0+e2UuZ2xvYmFsQ29tcG9zaXRlT3BlcmF0aW9uPWBzb3VyY2UtYXRvcGAsZS5maWxsU3R5bGU9aSxlLmZpbGxSZWN0KHQtci8yLG4tci8yLHIscil9LHM9dC1yKi4wOCxjPW4tciouMTcsbD1lLmNyZWF0ZVJhZGlhbEdyYWRpZW50KHMsYywwLHMsYyxyKi41NSk7bC5hZGRDb2xvclN0b3AoMCxgcmdiYSgyNTUsMjU1LDI1NSwwLjcyKWApLGwuYWRkQ29sb3JTdG9wKC4xNCxgcmdiYSgyNTUsMjU1LDI1NSwwLjQ4KWApLGwuYWRkQ29sb3JTdG9wKC4zOCxgcmdiYSgyNTUsMjU1LDI1NSwwLjEpYCksbC5hZGRDb2xvclN0b3AoMSxgcmdiYSgyNTUsMjU1LDI1NSwwKWApLG8obCk7bGV0IHU9dC1yKi4wOCxkPW4tciouMTgsZj1lLmNyZWF0ZVJhZGlhbEdyYWRpZW50KHUsZCwwLHUsZCxyKi43OCk7Zi5hZGRDb2xvclN0b3AoMCxgcmdiYSgwLDAsMCwwKWApLGYuYWRkQ29sb3JTdG9wKC4zLGByZ2JhKDAsMCwwLDApYCksZi5hZGRDb2xvclN0b3AoLjQ2LGByZ2JhKDAsMCwwLDAuMjIpYCksZi5hZGRDb2xvclN0b3AoLjY2LGByZ2JhKDAsMCwwLDAuNDgpYCksZi5hZGRDb2xvclN0b3AoMSxgcmdiYSgwLDAsMCwwLjYyKWApLG8oZik7bGV0IHA9dC1yKi4yLG09bi1yKi40NSxoPWUuY3JlYXRlUmFkaWFsR3JhZGllbnQocCxtLDAscCxtLHIpO2guYWRkQ29sb3JTdG9wKDAsYHJnYmEoMjU1LDI1NSwyNTUsMClgKSxoLmFkZENvbG9yU3RvcCguNzYsYHJnYmEoMjU1LDI1NSwyNTUsMClgKSxoLmFkZENvbG9yU3RvcCguODIsYHJnYmEoMjU1LDI1NSwyNTUsMC4wNSlgKSxoLmFkZENvbG9yU3RvcCguODcsYHJnYmEoMjU1LDI1NSwyNTUsMC4xMilgKSxoLmFkZENvbG9yU3RvcCguOTUsYHJnYmEoMjU1LDI1NSwyNTUsMC4yOClgKSxoLmFkZENvbG9yU3RvcCgxLGByZ2JhKDI1NSwyNTUsMjU1LDApYCksbyhoKSxlLmdsb2JhbENvbXBvc2l0ZU9wZXJhdGlvbj1pLGUuZmlsbFN0eWxlPWEsZS5yZXN0b3JlKCl9ZnVuY3Rpb24gX2woZSx0LG4scixpLGEsbyxzLGM9MSxsPXZvaWQgMCx1PTAsZD12b2lkIDAsZj12b2lkIDAscD12b2lkIDAsbT12b2lkIDAsaD12b2lkIDAsZz0hMSl7bGV0IF89TWF0aC5tYXgoMixpKnMpLHY9Xy8yLHk9YS5zdGFydHNXaXRoKGAjYCk/YTpgIyR7YX1gLGI9bz9vLnN0YXJ0c1dpdGgoYCNgKT9vOmAjJHtvfWA6bnVsbDtlLnNhdmUoKSxlLmZpbGxTdHlsZT1sPT09dm9pZCAwP3k6bD09bnVsbD9gcmdiYSgwLDAsMCwwKWA6YWkobCxlLHQtdixuLXYsXyxfLHUpPz9gcmdiYSgwLDAsMCwwKWA7bGV0IHg9ZD09PXZvaWQgMD9iOmQ9PW51bGw/bnVsbDphaShkLGUsdC12LG4tdixfLF8sdSksUz14IT1udWxsO3gmJihlLnN0cm9rZVN0eWxlPXgsZS5saW5lV2lkdGg9YyxlLnNldExpbmVEYXNoKE9sKHAsZixjKSksZS5saW5lQ2FwPW09PT1gcm5kYD9gcm91bmRgOm09PT1gc3FgP2BzcXVhcmVgOmBidXR0YCxlLmxpbmVKb2luPWg9PT1gcm91bmRgfHxoPT09YGJldmVsYD9oOmBtaXRlcmApO2xldCBDPWw/LmZpbGxUeXBlPT09YGltYWdlYD9sOnZvaWQgMCx3PSgpPT57aWYoIUMpe2whPT1udWxsJiZlLmZpbGwoKTtyZXR1cm59ZS5zYXZlKCksZS5jbGlwKCksUHIoZSxDLHQtdixuLXYsXyxfLHMsdSksZS5yZXN0b3JlKCl9LFQ9KCk9PntnJiZsIT09bnVsbCYmZ2woZSx0LG4sXyl9O3N3aXRjaChyKXtjYXNlYHNxdWFyZWA6Q3x8Zz8oZS5iZWdpblBhdGgoKSxlLnJlY3QodC12LG4tdixfLF8pLHcoKSxUKCkpOmwhPT1udWxsJiZlLmZpbGxSZWN0KHQtdixuLXYsXyxfKSxTJiZlLnN0cm9rZVJlY3QodC12LG4tdixfLF8pO2JyZWFrO2Nhc2VgZGlhbW9uZGA6ZS5iZWdpblBhdGgoKSxlLm1vdmVUbyh0LG4tdiksZS5saW5lVG8odCt2LG4pLGUubGluZVRvKHQsbit2KSxlLmxpbmVUbyh0LXYsbiksZS5jbG9zZVBhdGgoKSx3KCksVCgpLFMmJmUuc3Ryb2tlKCk7YnJlYWs7Y2FzZWB0cmlhbmdsZWA6ZS5iZWdpblBhdGgoKSxlLm1vdmVUbyh0LG4tdiksZS5saW5lVG8odCt2LG4rdiksZS5saW5lVG8odC12LG4rdiksZS5jbG9zZVBhdGgoKSx3KCksVCgpLFMmJmUuc3Ryb2tlKCk7YnJlYWs7Y2FzZWB4YDplLnN0cm9rZVN0eWxlPXg/P2UuZmlsbFN0eWxlLGUubGluZVdpZHRoPU1hdGgubWF4KDEsXyouMTgpLGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8odC12LG4tdiksZS5saW5lVG8odCt2LG4rdiksZS5tb3ZlVG8odC12LG4rdiksZS5saW5lVG8odCt2LG4tdiksZS5zdHJva2UoKTticmVhaztjYXNlYHBsdXNgOmUuc3Ryb2tlU3R5bGU9eD8/ZS5maWxsU3R5bGUsZS5saW5lV2lkdGg9TWF0aC5tYXgoMSxfKi4xOCksZS5iZWdpblBhdGgoKSxlLm1vdmVUbyh0LXYsbiksZS5saW5lVG8odCt2LG4pLGUubW92ZVRvKHQsbi12KSxlLmxpbmVUbyh0LG4rdiksZS5zdHJva2UoKTticmVhaztjYXNlYHN0YXJgOmUuYmVnaW5QYXRoKCk7Zm9yKGxldCByPTA7cjwxMDtyKyspe2xldCBpPXIlMj09MD92OnYqLjQ1LGE9LU1hdGguUEkvMityKk1hdGguUEkvNSxvPXQrTWF0aC5jb3MoYSkqaSxzPW4rTWF0aC5zaW4oYSkqaTtyPT09MD9lLm1vdmVUbyhvLHMpOmUubGluZVRvKG8scyl9ZS5jbG9zZVBhdGgoKSx3KCksVCgpLFMmJmUuc3Ryb2tlKCk7YnJlYWs7Y2FzZWBkb3RgOmUuYmVnaW5QYXRoKCksZS5lbGxpcHNlKHQsbixfKi4yNSxfKi4xLDAsMCxNYXRoLlBJKjIpLHcoKSxUKCksUyYmZS5zdHJva2UoKTticmVhaztjYXNlYGRhc2hgOntsZXQgcj1fKi4yO0N8fGc/KGUuYmVnaW5QYXRoKCksZS5yZWN0KHQtdixuLXIvMixfLHIpLHcoKSxUKCkpOmwhPT1udWxsJiZlLmZpbGxSZWN0KHQtdixuLXIvMixfLHIpLFMmJmUuc3Ryb2tlUmVjdCh0LXYsbi1yLzIsXyxyKTticmVha31jYXNlYHBpY3R1cmVgOmUuYmVnaW5QYXRoKCksZS5yZWN0KHQtdixuLXYsXyxfKSxDJiZQcihlLEMsdC12LG4tdixfLF8scyx1KSxUKCksUyYmZS5zdHJva2VSZWN0KHQtdixuLXYsXyxfKSxlLnJlc3RvcmUoKTtyZXR1cm47ZGVmYXVsdDplLmJlZ2luUGF0aCgpLGUuYXJjKHQsbix2LDAsTWF0aC5QSSoyKSx3KCksVCgpLFMmJmUuc3Ryb2tlKCk7YnJlYWt9ZS5yZXN0b3JlKCl9ZnVuY3Rpb24gdmwoZSx0LG4scixpLGEsbyxzKXtpZihuLmhpZGRlbj09PSEwKXJldHVybjtlLnNhdmUoKSxlLnN0cm9rZVN0eWxlPW4uY29sb3I/YCMke24uY29sb3J9YDpzLGUubGluZVdpZHRoPW4ubGluZVdpZHRoRW11P01hdGgubWF4KC41LG4ubGluZVdpZHRoRW11L2N0KToxLGUuc2V0TGluZURhc2goRGwobi5kYXNoLGUubGluZVdpZHRoKSk7bGV0IGM9bi5iYXJUeXBlPT09YHBsdXNgfHxuLmJhclR5cGU9PT1gYm90aGAsbD1uLmJhclR5cGU9PT1gbWludXNgfHxuLmJhclR5cGU9PT1gYm90aGAsdT1uLmRpcj09PWB4YCxkPWUubGluZVdpZHRoLzI7Zm9yKGxldCBzPTA7czx0LnZhbHVlcy5sZW5ndGg7cysrKXtsZXQgZj10LnZhbHVlc1tzXTtpZihmPT1udWxsKWNvbnRpbnVlO2xldCBwPXNsKHIscyxpKTtpZihwPT1udWxsKWNvbnRpbnVlO2xldCBtPWEocCksaD1vKGYpLGc9dD0+e2xldCByPW0saT1oO3U/cj1hKHArdCk6aT1vKGYrdCksZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhtLGgpLGUubGluZVRvKHIsaSksZS5zdHJva2UoKSxuLm5vRW5kQ2FwfHwoZS5zYXZlKCksZS5zZXRMaW5lRGFzaChbXSksZS5iZWdpblBhdGgoKSx1PyhlLm1vdmVUbyhyLGktZCksZS5saW5lVG8ocixpK2QpKTooZS5tb3ZlVG8oci1kLGkpLGUubGluZVRvKHIrZCxpKSksZS5zdHJva2UoKSxlLnJlc3RvcmUoKSl9O2lmKGMpe2xldCBlPW4ucGx1c1tzXTtlIT1udWxsJiZnKGUpfWlmKGwpe2xldCBlPW4ubWludXNbc107ZSE9bnVsbCYmZygtZSl9fWUucmVzdG9yZSgpfWZ1bmN0aW9uIHlsKGUsdCxuLHIsaSxhLG8scyxjPSExLGw9YHNhbnMtc2VyaWZgLHU9YHJgLGQ9e3g6LTFlNix5Oi0xZTYsdzoyZTYsaDoyZTZ9LGY9ZCxwLG0saCxnLF89MCx2KXtsZXQgeT10LmRhdGFMYWJlbE92ZXJyaWRlcz8/W10sYj16byh5KTtpZih5Lmxlbmd0aD09PTAmJiF0LnNlcmllc0RhdGFMYWJlbHMpcmV0dXJuO2xldCB4PXQuc2VyaWVzRGF0YUxhYmVscztmb3IobGV0IHk9MDt5PHQudmFsdWVzLmxlbmd0aDt5Kyspe2xldCBTPXQudmFsdWVzW3ldO2lmKFM9PW51bGx8fGcmJiFnKFMpKWNvbnRpbnVlO2xldCBDPXNsKG4seSxyKTtpZihDPT1udWxsKWNvbnRpbnVlO2xldCB3PWIuZ2V0KHkpO2lmKHVuKHgsdykpY29udGludWU7bGV0IFQ9dz8uc2hvd0NhdE5hbWU/P3g/LnNob3dDYXROYW1lLEU9dz8uc2hvd1Nlck5hbWU/P3g/LnNob3dTZXJOYW1lLEQ9dz8uc2hvd1ZhbD8/eD8uc2hvd1ZhbCxPPXc/LnNob3dCdWJibGVTaXplPz94Py5zaG93QnViYmxlU2l6ZSxrPXc/LnNob3dMZWdlbmRLZXk/P3g/LnNob3dMZWdlbmRLZXk/PyExLEE9cWEoe2N1c3RvbVRleHQ6dz8udGV4dCxzaG93Q2F0ZWdvcnk6VCxzaG93U2VyaWVzOkUsc2hvd1ZhbHVlOkQsc2hvd0J1YmJsZVNpemU6TyxjYXRlZ29yeTpyP3hhKChuW3ldPz9TdHJpbmcoQykpLnRvU3RyaW5nKCksdC5jYXRGb3JtYXRDb2Rlcz8uW3ldPz90LmNhdEZvcm1hdENvZGU/P251bGwsYyk6YmEoQyx0LmNhdEZvcm1hdENvZGVzPy5beV0/P3QuY2F0Rm9ybWF0Q29kZT8/bnVsbCxjKSxzZXJpZXNOYW1lOnQubmFtZSxzb3VyY2VWYWx1ZTpTLGJ1YmJsZVNpemU6dC5idWJibGVTaXplcz8uW3ldPz92b2lkIDAsdmFsdWVEaXZpc29yOlJzKG0pLGZvcm1hdENvZGU6dz8uZm9ybWF0Q29kZT8/eD8uZm9ybWF0Q29kZT8/bnVsbCxkYXRlMTkwNDpjLHNlcGFyYXRvcjp3Py5zZXBhcmF0b3I/P3g/LnNlcGFyYXRvcn0pLGo9az9oPy4oeSk6dm9pZCAwO2lmKCFBJiYhailjb250aW51ZTtsZXQgTT13Py5wb3NpdGlvbj8/eD8ucG9zaXRpb24/P3UsTj1BdCh3Py5mb250U2l6ZUhwdD8/eD8uZm9udFNpemVIcHQscyk/P01hdGgubWF4KDksTWF0aC5taW4oMTEsby8yNSkpLFA9dz8uZm9udENvbG9yPz94Py5mb250Q29sb3IsRj13Py5mb250Qm9sZD8/eD8uZm9udEJvbGQ/PyExLEk9dz8uZm9udEZhY2U/P3g/LmZvbnRGYWNlLEw9SSYmcD9wKEkpOmw7YmwoZSxpKEMpLGEoUyksQSxNLE4sUCxGLEwsdj8uKHkpPz8wLGQsdz8ubWFudWFsTGF5b3V0LGYsdz8ucmljaFJ1bnMscyxwLGosZG4odyx4KSxOaSh3Py5sYWJlbEJveCx4Py5sYWJlbEJveCksXyl9fWZ1bmN0aW9uIGJsKGUsdCxuLHIsaSxhLG8scyxjPWBzYW5zLXNlcmlmYCxsPTAsdT17eDotMWU2LHk6LTFlNix3OjJlNixoOjJlNn0sZCxmPXUscCxtPTEsaCxnLF8sdix5PTApe2Uuc2F2ZSgpLGUuZm9udD1gJHtfPy5mb250SXRhbGljP2BpdGFsaWMgYDpgYH0ke3M/YGJvbGQgYDpgYH0ke2F9cHggJHtjfWAsQ2woZSxyLHtraW5kOmBwb2ludGAseDp0LHk6bixwb3NpdGlvbjppLG1hcmtlckdhcDpsfSx1LGEsbz9gIyR7b31gOmAjMzMzYCxkLGYscCYmcC5sZW5ndGg+MD97cnVuczpwLHB0VG9QeDptLGZvbnRGYW1pbHk6YyxmYWxsYmFja0JvbGQ6cyxmYWxsYmFja0l0YWxpYzpfPy5mb250SXRhbGljLGZhbGxiYWNrQmFzZWxpbmU6Xz8uZm9udEJhc2VsaW5lLGZhbGxiYWNrQ29sb3JIaWRkZW46Xz8uZm9udFBhaW50QXV0aG9yZWQ9PT0hMCYmKF8uZm9udEhpZGRlbj09PSEwfHxfLmZvbnRDb2xvcj09bnVsbCksZm9udEZhbWlseUZvckZhY2U6aH06dm9pZCAwLGcsXyxtLHYseSksZS5yZXN0b3JlKCl9ZnVuY3Rpb24geGwoZSx0LG4scixpLGEpe2lmKCEoIXQ/LnRleHR8fCF0LnJpY2hSdW5zfHx0LnJpY2hSdW5zLmxlbmd0aD09PTApKXJldHVybiBTbChlLHQucmljaFJ1bnMsbixyLGksYSl9ZnVuY3Rpb24gU2woZSx0LG4scixpLGEpe2lmKCEoIXR8fHQubGVuZ3RoPT09MCkpcmV0dXJue3J1bnM6dCxwdFRvUHg6bixmb250RmFtaWx5OnIsZmFsbGJhY2tCb2xkOmksZmFsbGJhY2tJdGFsaWM6YT8uZm9udEl0YWxpYyxmYWxsYmFja0Jhc2VsaW5lOmE/LmZvbnRCYXNlbGluZSxmYWxsYmFja0NvbG9ySGlkZGVuOmE/LmZvbnRQYWludEF1dGhvcmVkPT09ITAmJihhLmZvbnRIaWRkZW49PT0hMHx8YS5mb250Q29sb3I9PW51bGwpLGZvbnRGYW1pbHlGb3JGYWNlOnQ9PiQoZSx0LGBtaW5vcmApfX1mdW5jdGlvbiBDbChlLHQsbixyLGksYSxvLHM9cixjLGwsdSxkPTEsZixwPTApe2lmKCF0JiYhbHx8IU51bWJlci5pc0Zpbml0ZShpKXx8aTw9MClyZXR1cm47aWYobCl7d2woZSx0LG4scixpLGEsbyxzLGMsbCx1LGYpO3JldHVybn1pZihjKXtsZXQgdD1WYShlLGMsaSxhKTtpZighdClyZXR1cm47bGV0IGw9cG4odSxkKSxtPWhuKHQud2lkdGgrbC5sZWZ0K2wucmlnaHQsdC5oZWlnaHQrbC50b3ArbC5ib3R0b20sdT8udGV4dFJvdGF0aW9uLHU/LnRleHRWZXJ0aWNhbE1vZGUpLGg9dG4obixyLHt3Om0udyxoOm0uaH0saSxvLHMpO2lmKCFoKXJldHVybjtlLnNhdmUoKSxlLmJlZ2luUGF0aCgpLGUucmVjdChoLmNsaXAueCxoLmNsaXAueSxoLmNsaXAudyxoLmNsaXAuaCksZS5jbGlwKCksUGkoZSxmLGgucmVjdCxkLHApO2xldCBnPWZuKHUsaC50ZXh0QWxpZ24pLF89dm4oaC54LGgueSxoLnJlY3QsdC5oZWlnaHQrbC50b3ArbC5ib3R0b20sdSxvIT1udWxsLGcsaC50ZXh0QWxpZ24sdC53aWR0aCtsLmxlZnQrbC5yaWdodCxtLnJhZGlhbnMpLHY9Z24oZSxfLngsXy55LG0ucmFkaWFucyxnLGgudGV4dEJhc2VsaW5lLGwpO0hhKGUsdCx2Lngsdi55LGcsaC50ZXh0QmFzZWxpbmUsbz9NYXRoLm1heCgwLGgucmVjdC53LWwubGVmdC1sLnJpZ2h0KTp0LndpZHRoKSxlLnJlc3RvcmUoKTtyZXR1cm59bGV0IG09aSoxLjE1LGg9cm4odCkudmFsdWUuc3BsaXQoL1xyP1xuLyksZz1oLnJlZHVjZSgodCxuKT0+TWF0aC5tYXgodCxlLm1lYXN1cmVUZXh0KG4pLndpZHRoKSwwKSxfPU1hdGgubWF4KG0saC5sZW5ndGgqbSksdj1wbih1LGQpLHk9aG4oZyt2LmxlZnQrdi5yaWdodCxfK3YudG9wK3YuYm90dG9tLHU/LnRleHRSb3RhdGlvbix1Py50ZXh0VmVydGljYWxNb2RlKSxiPXRuKG4scix7dzp5LncsaDp5Lmh9LGksbyxzKTtpZighYilyZXR1cm47bGV0IHg9dD0+ZS5tZWFzdXJlVGV4dCh0KS53aWR0aCxTPV9uKHQsYi5tYXhXaWR0aCxiLm1heEhlaWdodCxtLHgsdSk7aWYoUy5sZW5ndGg9PT0wKXJldHVybjtsZXQgQz1TLnJlZHVjZSgoZSx0KT0+TWF0aC5tYXgoZSx4KHQpKSwwKSx3PVMubGVuZ3RoKm0sVD1obihDK3YubGVmdCt2LnJpZ2h0LHcrdi50b3Ardi5ib3R0b20sdT8udGV4dFJvdGF0aW9uLHU/LnRleHRWZXJ0aWNhbE1vZGUpO2lmKGI9dG4obixyLHt3OlQudyxoOlQuaH0saSxvLHMpLCFiKXJldHVybjtlLnNhdmUoKSxlLmJlZ2luUGF0aCgpLGUucmVjdChiLmNsaXAueCxiLmNsaXAueSxiLmNsaXAudyxiLmNsaXAuaCksZS5jbGlwKCksUGkoZSxmLGIucmVjdCxkLHApO2xldCBFPXU/LmZvbnRQYWludEF1dGhvcmVkPT09ITAmJih1LmZvbnRIaWRkZW49PT0hMHx8dS5mb250Q29sb3I9PW51bGwpO2UuZmlsbFN0eWxlPWE7bGV0IEQ9Zm4odSxiLnRleHRBbGlnbik7ZS50ZXh0QWxpZ249RCxlLnRleHRCYXNlbGluZT1iLnRleHRCYXNlbGluZTtsZXQgTz12bihiLngsYi55LGIucmVjdCx3K3YudG9wK3YuYm90dG9tLHUsbyE9bnVsbCxELGIudGV4dEFsaWduLEMrdi5sZWZ0K3YucmlnaHQsVC5yYWRpYW5zKSxrPWduKGUsTy54LE8ueSxULnJhZGlhbnMsRCxiLnRleHRCYXNlbGluZSx2KSxBPSh1Py5mb250QmFzZWxpbmU/PzApKmksaj1iLnRleHRCYXNlbGluZT09PWBtaWRkbGVgP2sueS0oUy5sZW5ndGgtMSkqbS8yOmIudGV4dEJhc2VsaW5lPT09YGJvdHRvbWA/ay55LShTLmxlbmd0aC0xKSptOmsueTtpZighRSlmb3IobGV0IHQ9MDt0PFMubGVuZ3RoO3QrKyllLmZpbGxUZXh0KFNbdF0say54LGordCptLUEpO2UucmVzdG9yZSgpfWZ1bmN0aW9uIHdsKGUsdCxuLHIsaSxhLG8scyxjLGwsdSxkKXtsZXR7ZW50cnk6ZixwdFRvUHg6cCxzaGFwZVJvdGF0aW9uRGVnOm19PWwsaD1mcyhbZl0saSxwKVswXT8/MCxnPXBzKGYsaSxwKSxfPXQ/dXU6MCx2PXQmJmM/VmEoZSxjLGksYSk6bnVsbDtpZih0JiZjJiYhdilyZXR1cm47bGV0IHk9aSoxLjE1LGI9dCYmIXY/cm4odCkudmFsdWUuc3BsaXQoL1xyP1xuLyk6W10seD12Py53aWR0aD8/Yi5yZWR1Y2UoKHQsbik9Pk1hdGgubWF4KHQsZS5tZWFzdXJlVGV4dChuKS53aWR0aCksMCksUz12Py5oZWlnaHQ/PyhiLmxlbmd0aD4wP01hdGgubWF4KHksYi5sZW5ndGgqeSk6MCksQz1wbih1LHApLHc9aG4oaCtfK3grQy5sZWZ0K0MucmlnaHQsTWF0aC5tYXgoZyxTKStDLnRvcCtDLmJvdHRvbSx1Py50ZXh0Um90YXRpb24sdT8udGV4dFZlcnRpY2FsTW9kZSksVD10bihuLHIse3c6dy53LGg6dy5ofSxpLG8scyk7aWYoIVQpcmV0dXJuO2xldCBFPWI7aWYodCYmIXYmJihFPV9uKHQsTWF0aC5tYXgoMCxULm1heFdpZHRoLWgtXyksVC5tYXhIZWlnaHQseSx0PT5lLm1lYXN1cmVUZXh0KHQpLndpZHRoLHUpLEUubGVuZ3RoPT09MCkpcmV0dXJuO2xldCBEPXY/LndpZHRoPz9FLnJlZHVjZSgodCxuKT0+TWF0aC5tYXgodCxlLm1lYXN1cmVUZXh0KG4pLndpZHRoKSwwKSxPPXY/LmhlaWdodD8/RS5sZW5ndGgqeSxrPWgrXytELEE9TWF0aC5tYXgoZyxPKSxqPWsrQy5sZWZ0K0MucmlnaHQsTT1BK0MudG9wK0MuYm90dG9tLE49aG4oaixNLHU/LnRleHRSb3RhdGlvbix1Py50ZXh0VmVydGljYWxNb2RlKTtpZihUPXRuKG4scix7dzpOLncsaDpOLmh9LGksbyxzKSwhVClyZXR1cm47bGV0IFA9VC50ZXh0QWxpZ249PT1gbGVmdGA/VC54K04udy8yOlQudGV4dEFsaWduPT09YHJpZ2h0YD9ULngtTi53LzI6VC54LEY9VC50ZXh0QmFzZWxpbmU9PT1gdG9wYD9ULnkrTi5oLzI6VC50ZXh0QmFzZWxpbmU9PT1gYm90dG9tYD9ULnktTi5oLzI6VC55O2lmKG8pe2xldCBlPWZuKHUsYGNlbnRlcmApLHQ9dm4oUCxGLFQucmVjdCxNLHUsITAsZSk7UD1lPT09YGxlZnRgP3QueCtqLzI6ZT09PWByaWdodGA/dC54LWovMjp0LngsRj10Lnl9bGV0IEk9UC1qLzIrQy5sZWZ0LEw9Ri1NLzIrQy50b3A7aWYoZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3QoVC5jbGlwLngsVC5jbGlwLnksVC5jbGlwLncsVC5jbGlwLmgpLGUuY2xpcCgpLFBpKGUsZCxULnJlY3QscCxtKSxOLnJhZGlhbnMhPT0wJiYoZS50cmFuc2xhdGUoUCxGKSxlLnJvdGF0ZShOLnJhZGlhbnMpLGUudHJhbnNsYXRlKC1QLC1GKSksYXMoZSxmLnN3YXRjaFN0eWxlLGYuY29sb3IsSSxMKyhBLWcpLzIsaCxnLGYubWFya2VyLGYuZmlsbFBhaW50LGYub3V0bGluZUNvbG9yLGYub3V0bGluZVdpZHRoRW11LGYub3V0bGluZURhc2gsZi5vdXRsaW5lQ2FwLGYub3V0bGluZUpvaW4scCxtKSx0KXtsZXQgdD1JK2grXztpZih2KUhhKGUsdix0LEwrKEEtTykvMixgbGVmdGAsYHRvcGApO2Vsc2UgaWYoISh1Py5mb250UGFpbnRBdXRob3JlZD09PSEwJiYodS5mb250SGlkZGVuPT09ITB8fHUuZm9udENvbG9yPT1udWxsKSkpe2UuZmlsbFN0eWxlPWEsZS50ZXh0QWxpZ249YGxlZnRgLGUudGV4dEJhc2VsaW5lPWB0b3BgO2xldCBuPSh1Py5mb250QmFzZWxpbmU/PzApKmkscj1MKyhBLU8pLzItbjtmb3IobGV0IG49MDtuPEUubGVuZ3RoO24rKyllLmZpbGxUZXh0KEVbbl0sdCxyK24qeSl9fWUucmVzdG9yZSgpfWZ1bmN0aW9uIFRsKGUsdCxuKXtyZXR1cm4gZTx0P3Q6ZT5uP246ZX1mdW5jdGlvbiBFbChlLHQsbil7aWYodC5sZW5ndGghPT0wKWlmKG4mJnQubGVuZ3RoPj0zKWZvcihsZXQgbj0wO248dC5sZW5ndGgtMTtuKyspe2xldCByPXRbbi0xXT8/dFtuXSxpPXRbbl0sYT10W24rMV0sbz10W24rMl0/P2Escz1pLngrKGEueC1yLngpLzYsYz1pLnkrKGEueS1yLnkpLzYsbD1hLngtKG8ueC1pLngpLzYsdT1hLnktKG8ueS1pLnkpLzY7ZS5iZXppZXJDdXJ2ZVRvKHMsYyxsLHUsYS54LGEueSl9ZWxzZSBmb3IobGV0IG49MTtuPHQubGVuZ3RoO24rKyllLmxpbmVUbyh0W25dLngsdFtuXS55KX1mdW5jdGlvbiBEbChlLHQ9MSl7cmV0dXJuIFhyKGU/P2Bzb2xpZGAsTnVtYmVyLmlzRmluaXRlKHQpJiZ0PjA/dDoxKX1mdW5jdGlvbiBPbChlLHQsbj0xKXtyZXR1cm4gWnIoZSx0LE51bWJlci5pc0Zpbml0ZShuKSYmbj4wP246MSl9ZnVuY3Rpb24ga2woZSx0LG4scixpLGEsbyxzKXtpZihuLmhpZGRlbj09PSEwfHxuLmRpcj09PWB4YClyZXR1cm47bGV0IGM9bi5iYXJUeXBlPT09YHBsdXNgfHxuLmJhclR5cGU9PT1gYm90aGAsbD1uLmJhclR5cGU9PT1gbWludXNgfHxuLmJhclR5cGU9PT1gYm90aGA7ZS5zYXZlKCksZS5zdHJva2VTdHlsZT1uLmNvbG9yP2AjJHtuLmNvbG9yfWA6cyxlLmxpbmVXaWR0aD1uLmxpbmVXaWR0aEVtdT9NYXRoLm1heCguNSxuLmxpbmVXaWR0aEVtdS9jdCk6MSxlLnNldExpbmVEYXNoKERsKG4uZGFzaCxlLmxpbmVXaWR0aCkpO2xldCB1PWUubGluZVdpZHRoLzI7Zm9yKGxldCBzPTA7czxyO3MrKyl7aWYodC52YWx1ZXNbc109PW51bGwpY29udGludWU7bGV0IHI9byhzKSxkPWkocyksZj1hKHIpLHA9dD0+e2xldCBpPWEocit0KTtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKGQsZiksZS5saW5lVG8oZCxpKSxlLnN0cm9rZSgpLG4ubm9FbmRDYXB8fChlLnNhdmUoKSxlLnNldExpbmVEYXNoKFtdKSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKGQtdSxpKSxlLmxpbmVUbyhkK3UsaSksZS5zdHJva2UoKSxlLnJlc3RvcmUoKSl9O2lmKGMpe2xldCBlPW4ucGx1c1tzXTtlIT1udWxsJiZwKGUpfWlmKGwpe2xldCBlPW4ubWludXNbc107ZSE9bnVsbCYmcCgtZSl9fWUucmVzdG9yZSgpfWZ1bmN0aW9uIEFsKGUsdCxuLHIsaSxhLG8scyxjLGwpe2lmKG4uaGlkZGVuPT09ITB8fCFpJiZuLmRpcj09PWB4YHx8aSYmbi5kaXI9PT1geWApcmV0dXJuO2xldCB1PW4uYmFyVHlwZT09PWBwbHVzYHx8bi5iYXJUeXBlPT09YGJvdGhgLGQ9bi5iYXJUeXBlPT09YG1pbnVzYHx8bi5iYXJUeXBlPT09YGJvdGhgO2Uuc2F2ZSgpLGUuc3Ryb2tlU3R5bGU9bi5jb2xvcj9gIyR7bi5jb2xvcn1gOmMsZS5saW5lV2lkdGg9bi5saW5lV2lkdGhFbXU/TWF0aC5tYXgoLjUsbi5saW5lV2lkdGhFbXUvY3QqbCk6TWF0aC5tYXgoLjUsbCouNzUpLGUuc2V0TGluZURhc2goRGwobi5kYXNoLGUubGluZVdpZHRoKSk7bGV0IGY9TWF0aC5tYXgoZS5saW5lV2lkdGgvMiwyKmwpO2ZvcihsZXQgYz0wO2M8cjtjKyspe2lmKHQudmFsdWVzW2NdPT1udWxsKWNvbnRpbnVlO2xldCByPXMoYyksbD1hKGMpLHA9byhyKSxtPXQ9PntsZXQgYT1vKHIrdCk7ZS5iZWdpblBhdGgoKSxpPyhlLm1vdmVUbyhwLGwpLGUubGluZVRvKGEsbCkpOihlLm1vdmVUbyhsLHApLGUubGluZVRvKGwsYSkpLGUuc3Ryb2tlKCksbi5ub0VuZENhcHx8KGUuc2F2ZSgpLGUuc2V0TGluZURhc2goW10pLGUuYmVnaW5QYXRoKCksaT8oZS5tb3ZlVG8oYSxsLWYpLGUubGluZVRvKGEsbCtmKSk6KGUubW92ZVRvKGwtZixhKSxlLmxpbmVUbyhsK2YsYSkpLGUuc3Ryb2tlKCksZS5yZXN0b3JlKCkpfTtpZih1KXtsZXQgZT1uLnBsdXNbY107ZSE9bnVsbCYmbShlKX1pZihkKXtsZXQgZT1uLm1pbnVzW2NdO2UhPW51bGwmJm0oLWUpfX1lLnJlc3RvcmUoKX1mdW5jdGlvbiBqbChlLHQsbixyLGksYSxvLHMsYyxsLHUsZD1gc2Fucy1zZXJpZmAsZj1gdGAscD17eDotMWU2LHk6LTFlNix3OjJlNixoOjJlNn0sbT1wLGgsZyxfLHYseSxiLHg9MCl7bGV0IFM9dC5kYXRhTGFiZWxPdmVycmlkZXM/P1tdLEM9em8oUyksdz10LnNlcmllc0RhdGFMYWJlbHM7aWYoUy5sZW5ndGg9PT0wJiYhdylyZXR1cm4hMTtmb3IobGV0IFM9MDtTPHI7UysrKXtpZih0LnZhbHVlc1tTXT09bnVsbCYmIXUpY29udGludWU7bGV0IHI9byhTKTtpZihiJiYhYihyKSljb250aW51ZTtsZXQgVD10LnZhbHVlc1tTXT8/MCxFPUMuZ2V0KFMpO2lmKHVuKHcsRSkpY29udGludWU7bGV0IEQ9RT8uc2hvd0NhdE5hbWU/P3c/LnNob3dDYXROYW1lLE89RT8uc2hvd1Nlck5hbWU/P3c/LnNob3dTZXJOYW1lLGs9RT8uc2hvd1ZhbD8/dz8uc2hvd1ZhbCxBPUU/LnNob3dQZXJjZW50Pz93Py5zaG93UGVyY2VudCxqPUU/LnNob3dMZWdlbmRLZXk/P3c/LnNob3dMZWdlbmRLZXk/PyExLE09cWEoe2N1c3RvbVRleHQ6RT8udGV4dCxzaG93Q2F0ZWdvcnk6RCxzaG93U2VyaWVzOk8sc2hvd1ZhbHVlOmssc2hvd1BlcmNlbnQ6QSxjYXRlZ29yeTpuW1NdPz9gYCxzZXJpZXNOYW1lOnQubmFtZSxzb3VyY2VWYWx1ZTpULHZhbHVlRGl2aXNvcjpScyh2KSxwZXJjZW50UmF0aW86aD8uKFMpLGZvcm1hdENvZGU6RT8uZm9ybWF0Q29kZT8/dz8uZm9ybWF0Q29kZT8/bnVsbCxkYXRlMTkwNDpsLHNlcGFyYXRvcjpFPy5zZXBhcmF0b3I/P3c/LnNlcGFyYXRvcn0pLE49aj95Py4oUyk6dm9pZCAwO2lmKCFNJiYhTiljb250aW51ZTtsZXQgUD1FPy5wb3NpdGlvbj8/dz8ucG9zaXRpb24/P2YsRj1BdChFPy5mb250U2l6ZUhwdD8/dz8uZm9udFNpemVIcHQsYyk/P01hdGgubWF4KDksTWF0aC5taW4oMTEscy8yNSkpLEk9RT8uZm9udENvbG9yPz93Py5mb250Q29sb3IsTD1FPy5mb250Qm9sZD8/dz8uZm9udEJvbGQ/PyExLFI9RT8uZm9udEZhY2U/P3c/LmZvbnRGYWNlLHo9UiYmXz9fKFIpOmQ7YmwoZSxpKFMpLGEociksTSxQLEYsSSxMLHosZz8uKFMpPz8wLHAsRT8ubWFudWFsTGF5b3V0LG0sRT8ucmljaFJ1bnMsYyxfLE4sZG4oRSx3KSxOaShFPy5sYWJlbEJveCx3Py5sYWJlbEJveCkseCl9cmV0dXJuITB9ZnVuY3Rpb24gTWwoZSx0KXtyZXR1cm4gZT8uY2hhcnRleEZvcm1hdElkeD8/dH1mdW5jdGlvbiBObChlLHQsbixyLGksYSxvLHMsYyl7aWYoIXQpcmV0dXJuIG51bGw7bGV0IGw9dC5zZXJpZXNEYXRhTGFiZWxzLHU9by5nZXQobik7aWYodW4obCx1KXx8IWwmJiF1JiYhYS52aXNpYmxlKXJldHVybiBudWxsO2xldCBkPXR5cGVvZiBzPT1gYm9vbGVhbmA/czohMSxmPXR5cGVvZiBzPT1gbnVtYmVyYD9zOnZvaWQgMCxwPSFkJiYodT8uc2hvd1ZhbD8/bD8uc2hvd1ZhbD8/YS5zaG93VmFsKSxtPXU/LnNob3dDYXROYW1lPz9sPy5zaG93Q2F0TmFtZT8/YS5zaG93Q2F0TmFtZSxoPXU/LnNob3dTZXJOYW1lPz9sPy5zaG93U2VyTmFtZT8/YS5zaG93U2VyTmFtZT8/ITEsZz11Py5zaG93UGVyY2VudD8/bD8uc2hvd1BlcmNlbnQ/P2Euc2hvd1BlcmNlbnQ/PyExLF89dT8uc2hvd0xlZ2VuZEtleT8/bD8uc2hvd0xlZ2VuZEtleT8/ITEsdj11Py5mb3JtYXRDb2RlPz9sPy5mb3JtYXRDb2RlPz9lLmRhdGFMYWJlbEZvcm1hdENvZGU/P251bGwseT1xYSh7Y3VzdG9tVGV4dDp1Py50ZXh0LHNob3dDYXRlZ29yeTptLHNob3dTZXJpZXM6aCxzaG93VmFsdWU6cCxzaG93UGVyY2VudDpnLGNhdGVnb3J5OnIsc2VyaWVzTmFtZTp0Lm5hbWUsc291cmNlVmFsdWU6aSx2YWx1ZURpdmlzb3I6UnMoYykscGVyY2VudFJhdGlvOmYsZm9ybWF0Q29kZTp2Pz90LnZhbEZvcm1hdENvZGU/P251bGwscGVyY2VudEZvcm1hdENvZGU6dj8/YDAlYCxkYXRlMTkwNDplLmRhdGUxOTA0LHNlcGFyYXRvcjp1Py5zZXBhcmF0b3I/P2w/LnNlcGFyYXRvcn0pO3JldHVybiF5JiYhXz9udWxsOnt0ZXh0Onksc2hvd0xlZ2VuZEtleTpfLHBvc2l0aW9uOnU/LnBvc2l0aW9uPz9sPy5wb3NpdGlvbixmb250Q29sb3I6dT8uZm9udENvbG9yPz9sPy5mb250Q29sb3IsZm9udFNpemVIcHQ6dT8uZm9udFNpemVIcHQ/P2w/LmZvbnRTaXplSHB0LGZvbnRCb2xkOnU/LmZvbnRCb2xkPz9sPy5mb250Qm9sZCxmb250RmFjZTp1Py5mb250RmFjZT8/bD8uZm9udEZhY2UsbWFudWFsTGF5b3V0OnU/Lm1hbnVhbExheW91dCxsYWJlbEJveDpOaSh1Py5sYWJlbEJveCxsPy5sYWJlbEJveCkscmljaFJ1bnM6dT8udGV4dD91LnJpY2hSdW5zOnZvaWQgMCx0ZXh0U3R5bGU6ZG4odSxsKX19ZnVuY3Rpb24gUGwoZSx0LG4scixpKXtyZXR1cm4gdHIodCxuLHIpfWZ1bmN0aW9uIEZsKGUsdCxuLHIpe2lmKCF0Lmxlbmd0aClyZXR1cm4gbnVsbDtsZXQgaT1lLmNoYXJ0ZXhDb2xvclN0eWxlTWV0aG9kO3JldHVybiBpPT09YHdpdGhpbkxpbmVhcmB8fGk9PT1gYWNyb3NzTGluZWFyYHx8aT09PWB3aXRoaW5MaW5lYXJSZXZlcnNlZGB8fGk9PT1gYWNyb3NzTGluZWFyUmV2ZXJzZWRgP3RbaT09PWB3aXRoaW5MaW5lYXJgfHxpPT09YHdpdGhpbkxpbmVhclJldmVyc2VkYD8wOm4ldC5sZW5ndGhdPz9udWxsOnRbbiV0Lmxlbmd0aF0/P251bGx9ZnVuY3Rpb24gSWwoZSx0LG4pe3JldHVybihlLmNoYXJ0ZXhDb2xvclBhbGV0dGU/RmwoZSxlLmNoYXJ0ZXhDb2xvclBhbGV0dGUsdCxuKTpudWxsKT8/ZS5jaGFydGV4QWNjZW50cz8uW3QlKGUuY2hhcnRleEFjY2VudHMubGVuZ3RofHwxKV0/P2N1W3QlY3UubGVuZ3RoXX1mdW5jdGlvbiBMbChlLHQsbixyKXtyZXR1cm4gUGwoZSxyLGBmaWxsYCx0LG4pPz9QbChlLGUuY2hhcnRleERhdGFQb2ludFN0eWxlLGBmaWxsYCx0LG4pPz9JbChlLHQsbil9ZnVuY3Rpb24gUmwoZSx0KXtyZXR1cm4gbnIoZSx0KX1mdW5jdGlvbiB6bChlLHQpe3JldHVybiBycihlLHQpfWZ1bmN0aW9uIEJsKGUsdCxuLHIpe3JldHVybiBhcih0LG4pfWZ1bmN0aW9uIFZsKGUsdCxuLHIpe3JldHVybiBpcih0LG4pfWZ1bmN0aW9uIEhsKGUsdCxuLHIsaSxhKXtsZXQgbz1WbChlLHIsdCxuKTtpZihvIT09dm9pZCAwKXJldHVybiBvO2lmKGkpcmV0dXJue2ZpbGxUeXBlOmBzb2xpZGAsY29sb3I6aX07bGV0IHM9VmwoZSxhLHQsbik7cmV0dXJuIHM9PT12b2lkIDA/e2ZpbGxUeXBlOmBzb2xpZGAsY29sb3I6SWwoZSx0LG4pfTpzfWZ1bmN0aW9uIFVsKGUsdCxuLHIsaSxhPWUuY2hhcnRleERhdGFQb2ludFN0eWxlKXtsZXQgbz1yPy5maWxsSGlkZGVuP3ZvaWQgMDpWbChlLHIsdCxuKTtpZihvIT09dm9pZCAwKXJldHVybiBvO2lmKHImJmkpcmV0dXJue2ZpbGxUeXBlOmBzb2xpZGAsY29sb3I6aX07bGV0IHM9VmwoZSxhLHQsbik7cmV0dXJuIHM9PT12b2lkIDA/aT97ZmlsbFR5cGU6YHNvbGlkYCxjb2xvcjppfTp7ZmlsbFR5cGU6YHNvbGlkYCxjb2xvcjpJbChlLHQsbil9OnN9ZnVuY3Rpb24gV2woZSx0LG4scixpLGEsbyxzPTApe3JldHVybiB0LmZpbGxUeXBlPT09YHNvbGlkYD90LmNvbG9yLnN0YXJ0c1dpdGgoYCNgKT90LmNvbG9yOmAjJHt0LmNvbG9yfWA6YWkodCxlLG4scixpLGEscyk/P299ZnVuY3Rpb24gR2woZSx0LG4scixpLGEsbz17fSl7bGV0IHM9KHQsbik9Pih7dmlzaWJsZTp0Py5saW5lSGlkZGVuIT09ITAsY29sb3I6UGwoZSx0LGBsaW5lYCxyLGkpPz9uLHdpZHRoRW11OnQ/LmxpbmVXaWR0aEVtdT8/bnVsbCxkYXNoOnQ/LmxpbmVEYXNoPz9udWxsLGNhcDp0Py5saW5lQ2FwPz9udWxsLGpvaW46dD8ubGluZUpvaW4/P251bGx9KSxjPW4/LmNoYXJ0ZXhTdHlsZTtpZigoYz8ubGluZUhpZGRlbiE9bnVsbHx8Yz8ubGluZUNvbG9ycz8uc29tZShCb29sZWFuKXx8Yz8ubGluZVdpZHRoRW11IT1udWxsfHxjPy5saW5lRGFzaCE9bnVsbHx8Yz8ubGluZUNhcCE9bnVsbHx8Yz8ubGluZUpvaW4hPW51bGwpJiYhKGM/LmxpbmVIaWRkZW4mJmMubGluZU5vU3R5bGUpKXtsZXQgZT1zKGMsbj8ubGluZUNvbG9yPz9hKTtyZXR1cm4gZS53aWR0aEVtdT8/PW4/LmxpbmVXaWR0aEVtdT8/bnVsbCxlfXJldHVybiBuPy5saW5lSGlkZGVuIT1udWxsfHxuPy5saW5lQ29sb3IhPW51bGx8fG4/LmxpbmVXaWR0aEVtdSE9bnVsbD97dmlzaWJsZTpuPy5saW5lSGlkZGVuIT09ITAsY29sb3I6bj8ubGluZUNvbG9yPz9hLHdpZHRoRW11Om4/LmxpbmVXaWR0aEVtdT8/bnVsbCxkYXNoOm51bGwsY2FwOm51bGwsam9pbjpudWxsfTp0Py5saW5lTm9TdHlsZSYmby5saW5rZWROb1N0eWxlRmFsbGJhY2s/cyhudWxsLGEpOnModCxhKX1mdW5jdGlvbiBLbChlLHQsbil7cmV0dXJuIHQudmlzaWJsZT8oZS5zdHJva2VTdHlsZT10LmNvbG9yLnN0YXJ0c1dpdGgoYCNgKT90LmNvbG9yOmAjJHt0LmNvbG9yfWAsZS5saW5lV2lkdGg9dC53aWR0aEVtdT09bnVsbD8xOmlhKHQud2lkdGhFbXUsbiksZS5zZXRMaW5lRGFzaChEbCh0LmRhc2g/P3ZvaWQgMCxlLmxpbmVXaWR0aCkpLGUubGluZUNhcD10LmNhcD09PWBybmRgP2Byb3VuZGA6dC5jYXA9PT1gc3FgP2BzcXVhcmVgOmBidXR0YCxlLmxpbmVKb2luPXQuam9pbj09PWByb3VuZGB8fHQuam9pbj09PWBiZXZlbGA/dC5qb2luOmBtaXRlcmAsITApOiExfWZ1bmN0aW9uIHFsKGUsdCxuLHIsaSxhLG8scyxjPXt9KXtyZXR1cm4gS2woZSxHbCh0LG4scixpLGEsbyxjKSxzKX1mdW5jdGlvbiBKbChlLHQsbixyLGksYSxvLHM9ITEsYz0hMCl7bGV0IGw9R2woZSxyLG4saSxhLG8se2xpbmtlZE5vU3R5bGVGYWxsYmFjazpzfSk7cmV0dXJue25hbWU6dCx2YWx1ZXM6W10sY29sb3I6by5yZXBsYWNlKC9eIy8sYGApLGxpbmVIaWRkZW46IWN8fCFsLnZpc2libGUsbGluZUNvbG9yOmMmJmwudmlzaWJsZT9sLmNvbG9yLnJlcGxhY2UoL14jLyxgYCk6bnVsbCxsaW5lV2lkdGhFbXU6Yz9sLndpZHRoRW11Om51bGwsY2hhcnRleFN0eWxlOntsaW5lRGFzaDpjP2wuZGFzaDpudWxsLGxpbmVDYXA6Yz9sLmNhcDpudWxsLGxpbmVKb2luOmM/bC5qb2luOm51bGx9fX1mdW5jdGlvbiBZbChlLHQsbixyLGkpe2lmKG49PT1gc3VyZmFjZWApcmV0dXJuITE7aWYobj09PWBhcmVhYHx8bj09PWBzdGFja2VkQXJlYWB8fG49PT1gc3RhY2tlZEFyZWFQY3RgKXJldHVybiByPE1hdGgubWF4KGUuY2F0ZWdvcmllcy5sZW5ndGgsdC5jYXRlZ29yaWVzPy5sZW5ndGg/PzAsdC52YWx1ZXMubGVuZ3RoKTtsZXQgYT10LnZhbHVlc1tyXTtpZigobj09PWBsaW5lYHx8bj09PWBzdGFja2VkTGluZWB8fG49PT1gc3RhY2tlZExpbmVQY3RgKSYmYT09bnVsbClyZXR1cm4oZS5jaGFydFR5cGU9PT1gbGluZWB8fGUuY2hhcnRUeXBlPT09YHN0YWNrZWRMaW5lYHx8ZS5jaGFydFR5cGU9PT1gc3RhY2tlZExpbmVQY3RgKSYmKGUuY2hhcnRUeXBlIT09YGxpbmVgfHxlLmRpc3BCbGFua3NBcz09PWB6ZXJvYCk7aWYoYT09bnVsbHx8IU51bWJlci5pc0Zpbml0ZShhKXx8KG49PT1gcGllYHx8bj09PWBkb3VnaG51dGApJiZhPD0wKXJldHVybiExO2lmKG49PT1gc2NhdHRlcmApe2lmKCFpKXJldHVybiEwO2xldCBuPSh0LmNhdGVnb3JpZXM/P2UuY2F0ZWdvcmllcylbcl07cmV0dXJuIG4hPW51bGwmJk51bWJlci5pc0Zpbml0ZShOdW1iZXIucGFyc2VGbG9hdChuKSl9cmV0dXJuITB9ZnVuY3Rpb24gWGwoZSx0LG4pe2xldCByPUF0KGUubGVnZW5kRm9udFNpemVIcHQsbik/PzEwKm4saT1BdChlLmRhdGFUYWJsZT8uZm9udFNpemVIcHQsbik/PzkqbixhPUF0KHQuc2VyaWVzRGF0YUxhYmVscz8uZm9udFNpemVIcHQ/P2UuZGF0YUxhYmVsRm9udFNpemVIcHQsbik/PzEwKm47Zm9yKGxldCBlIG9mIHQuZGF0YUxhYmVsT3ZlcnJpZGVzPz9bXSlhPU1hdGgubWF4KGEsQXQoZS5mb250U2l6ZUhwdCxuKT8/YSk7cmV0dXJue2xlZ2VuZDpNYXRoLm1heCgyLCgyKnIrZnUpKi41OCksdGFibGU6TWF0aC5tYXgoMixpKSxsYWJlbHM6TWF0aC5tYXgoMixhKX19ZnVuY3Rpb24gWmwoZSx0LG49dXQscil7bGV0IGk9em4oZS5jaGFydFR5cGUpLGE9ZS5jaGFydGV4Qm94IT1udWxsO2lmKCFpJiYhYSlyZXR1cm4gbnVsbDtsZXQgbz1YbihlKSxzPWUuc2VyaWVzLnNvbWUoKHQsbik9PntsZXQgcj1vW25dO3JldHVybihyPy5raW5kPT09YGJ1YmJsZWB8fHI/LmtpbmQ9PT1gc2NhdHRlcmA/YHNjYXR0ZXJgOnQuc2VyaWVzVHlwZT8/KGUuY2hhcnRUeXBlPT09YGJ1YmJsZWA/YHNjYXR0ZXJgOmUuY2hhcnRUeXBlKSk9PT1gc2NhdHRlcmA/KHQuY2F0ZWdvcmllcz8/ZS5jYXRlZ29yaWVzKS5zb21lKGU9Pk51bWJlci5pc0Zpbml0ZShOdW1iZXIucGFyc2VGbG9hdChlKSkpOiExfSksYz1ZbyhlKSYmcGMoZSkubGVuZ3RoPjAmJmUuZGF0YVRhYmxlPy5zaG93S2V5cz09PSEwLGw9Ym4oZSksdT1lLmNoYXJ0VHlwZT09PWBidWJibGVgJiZyP3BsKGUsZS5zZXJpZXMubWFwKCh0LG4pPT5mbChlLHQsbikpLCFzLHIudyxyLmgpOjAsZD1uZXcgTWFwO2lmKHIpZm9yKGxldCB0IG9mIGUucGxvdEdyb3Vwcz8/W10pe2lmKHQua2luZCE9PWBidWJibGVgfHx0LnNlcmllc0NvdW50PT09MCljb250aW51ZTtsZXQgbj1lLnNlcmllcy5zbGljZSh0LnNlcmllc1N0YXJ0LHQuc2VyaWVzU3RhcnQrdC5zZXJpZXNDb3VudCkubWFwKChuLHIpPT5mbChlLG4sdC5zZXJpZXNTdGFydCtyKSk7ZC5zZXQodCxwbCh7YnViYmxlU2NhbGU6dC5idWJibGVTY2FsZT8/ZS5idWJibGVTY2FsZSxidWJibGVTaXplUmVwcmVzZW50czp0LmJ1YmJsZVNpemVSZXByZXNlbnRzPz9lLmJ1YmJsZVNpemVSZXByZXNlbnRzLHNob3dOZWdhdGl2ZUJ1YmJsZXM6dC5zaG93TmVnYXRpdmVCdWJibGVzPz9lLnNob3dOZWdhdGl2ZUJ1YmJsZXN9LG4sIXMsci53LHIuaCkpfWxldCBmPTAscD0oZSx0PTEpPT50PD0wfHxlPD0wPyEwOiFOdW1iZXIuaXNTYWZlSW50ZWdlcih0KXx8ZT5NYXRoLmZsb29yKChFdS1mKS90KT8hMTooZis9ZSp0LCEwKSxtPShlLHI9MSxpPU1hdGgubWF4KDIsNSpuKSk9PntpZihyPD0wfHxlPT1udWxsKXJldHVybiEwO2xldCBhPWUuZmlsbFR5cGU9PT1gaW1hZ2VgP0VyKGUsdCxpLGksbik6TG4oZSk7cmV0dXJuIGUuZmlsbFR5cGU9PT1gZ3JhZGllbnRgJiZhPlR1PyExOnAoYSxyKX07aWYoaSlmb3IobGV0IHQ9MDt0PGUuc2VyaWVzLmxlbmd0aDt0Kyspe2xldCBpPWUuc2VyaWVzW3RdLGE9b1t0XSxmPWE/LmtpbmQ9PT1gYnViYmxlYHx8YT09bnVsbCYmZS5jaGFydFR5cGU9PT1gYnViYmxlYCxoPWE/LmtpbmQ9PT1gYnViYmxlYHx8YT8ua2luZD09PWBzY2F0dGVyYD9gc2NhdHRlcmA6aS5zZXJpZXNUeXBlPz8oZS5jaGFydFR5cGU9PT1gYnViYmxlYD9gc2NhdHRlcmA6ZS5jaGFydFR5cGUpLGc9Wm4oZS5jaGFydFR5cGUsYSksXz1hPy5zY2F0dGVyU3R5bGU/P2Uuc2NhdHRlclN0eWxlLHY9YT8ucmFkYXJTdHlsZT8/ZS5yYWRhclN0eWxlLHk9e2NoYXJ0VHlwZTpnLGJ1YmJsZVNjYWxlOmE/LmJ1YmJsZVNjYWxlPz9lLmJ1YmJsZVNjYWxlLHNob3dOZWdhdGl2ZUJ1YmJsZXM6YT8uc2hvd05lZ2F0aXZlQnViYmxlcz8/ZS5zaG93TmVnYXRpdmVCdWJibGVzfSxiPWY/e2J1YmJsZVNjYWxlOnkuYnViYmxlU2NhbGUsYnViYmxlU2l6ZVJlcHJlc2VudHM6YT8uYnViYmxlU2l6ZVJlcHJlc2VudHM/P2UuYnViYmxlU2l6ZVJlcHJlc2VudHMsc2hvd05lZ2F0aXZlQnViYmxlczp5LnNob3dOZWdhdGl2ZUJ1YmJsZXN9OnZvaWQgMCx4PWE/LmtpbmQ9PT1gYnViYmxlYD9kLmdldChhKT8/MDp1O2lmKCEoaD09PWBsaW5lYHx8aD09PWBzdGFja2VkTGluZWB8fGg9PT1gc3RhY2tlZExpbmVQY3RgfHxoPT09YGFyZWFgfHxoPT09YHN0YWNrZWRBcmVhYHx8aD09PWBzdGFja2VkQXJlYVBjdGB8fGg9PT1gc2NhdHRlcmB8fGg9PT1gcmFkYXJgfHxoPT09YHN0b2NrYCl8fEFuKGgsZyxfLHYpKWNvbnRpbnVlO2xldCBTPWg9PT1gYXJlYWB8fGg9PT1gc3RhY2tlZEFyZWFgfHxoPT09YHN0YWNrZWRBcmVhUGN0YD8oaS5zaG93TWFya2VyPT09ITB8fHhuKGkpKSYmaS5tYXJrZXJTeW1ib2whPT1gbm9uZWA6aD09PWBzdG9ja2A/aS5tYXJrZXJTeW1ib2whPW51bGwmJmkubWFya2VyU3ltYm9sIT09YG5vbmVgOmkuc2hvd01hcmtlciE9PSExJiZpLm1hcmtlclN5bWJvbCE9PWBub25lYDtpZighUyYmIWtuKGkpKWNvbnRpbnVlO2xldCBDPU1hdGgubWF4KGkudmFsdWVzLmxlbmd0aCxpLmNhdGVnb3JpZXM/Lmxlbmd0aD8/MCxlLmNhdGVnb3JpZXMubGVuZ3RoKSx3PXpvKGkuZGF0YVBvaW50T3ZlcnJpZGVzKTtmb3IobGV0IGE9MDthPEM7YSsrKXtpZighRW4oZSxpLGgsYSxzLHkpfHxmJiYoeDw9MHx8Q24oYixpLmJ1YmJsZVNpemVzPy5bYV0pPT1udWxsKSljb250aW51ZTtsZXQgbz13LmdldChhKTtpZighVG4oTW4oaSxvLGBjaXJjbGVgLFMpKSljb250aW51ZTtsZXQgYz1mP3VsKGUsaSxvLGEsUm8odCxpKSk6bnVsbCxsPWY/Yy5wYWludDpObihpLG8sYSksdT1NYXRoLm1heCgyLChvPy5tYXJrZXJTaXplPz9pLm1hcmtlclNpemU/PzUpKm4pO2lmKGg9PT1gc2NhdHRlcmAmJmYpe2xldCBlPUNuKGIsaS5idWJibGVTaXplcz8uW2FdKTt1PWU9PW51bGw/MDpjbChiLGUpKnh9ZWxzZSBoPT09YHJhZGFyYCYmbz8ubWFya2VyU2l6ZT09bnVsbCYmaS5tYXJrZXJTaXplPT1udWxsJiZyJiYodT1NYXRoLm1heCg0Km4sTWF0aC5taW4oci53LHIuaCkqLjAyNSkpO2lmKCFtKGwsMSx1KSlyZXR1cm4gRXUrMTtpZihmKXtsZXQgdD1kbChlLGksbyxhKS5wYWludDtpZighbSh0LDEsdSl8fHduKGksbykmJmMucGFpbnQhPT1udWxsJiYhcCh3dSkpcmV0dXJuIEV1KzF9fWlmKFRuKGkubWFya2VyU3ltYm9sPz8oaD09PWBzdG9ja2A/YG5vbmVgOmBjaXJjbGVgKSkmJmpuKGcsXyxpLHYpKXtsZXQgcj1sLmhhcyh0KSxhPURuKGUsaSxoLEMscyx5KSxvPVhsKGUsaSxuKSx1PWY/dWwoZSxpLHZvaWQgMCx0LFJvKHQsaSkpOm51bGwsZD1mP3UucGFpbnQ6Rm4oaSksZz1mP2RsKGUsaSx2b2lkIDAsdCk6bnVsbCxfPShlLHQpPT5tKGQsZSx0KSYmKCFmfHxtKGcucGFpbnQsZSx0KSkmJighZnx8IXduKGksdm9pZCAwKXx8dS5wYWludD09PW51bGx8fHAod3UsZSkpO2lmKGUuc2hvd0xlZ2VuZCYmIXImJiFfKDEsby5sZWdlbmQpfHxjJiYhXygxLG8udGFibGUpfHwhXyhhLG8ubGFiZWxzKSlyZXR1cm4gRXUrMX19bGV0IGg9ZS5jaGFydGV4Qm94O2lmKGgpe2xldCB0PWguc2VyaWVzLmxlbmd0aCxyPWUuY2hhcnRleERhdGFQb2ludE1hcmtlclN0eWxlPz9lLmNoYXJ0ZXhEYXRhUG9pbnRTdHlsZTtpZihUbihlLmNoYXJ0U3R5bGVNYXJrZXJTeW1ib2w/P2UuY2hhcnRleE1hcmtlclN5bWJvbD8/YGNpcmNsZWApKWZvcihsZXQgaT0wO2k8dDtpKyspe2xldCBhPWguc2VyaWVzW2ldO2lmKCFhLnNob3dOb25vdXRsaWVycyYmIWEuc2hvd091dGxpZXJzKWNvbnRpbnVlO2xldCBvPTA7Zm9yKGxldCBlIG9mIGEudmFsdWVzQnlDYXRlZ29yeSl7bGV0IHQ9X3QoZSxhLnF1YXJ0aWxlTWV0aG9kKTt0JiYoYS5zaG93Tm9ub3V0bGllcnMmJihvKz10LmlubmVyLmxlbmd0aCksYS5zaG93T3V0bGllcnMmJihvKz10Lm91dGxpZXJzLmxlbmd0aCkpfWlmKCFtKEhsKGUsTWwoYSxpKSx0LGEuY2hhcnRleFN0eWxlLGEuY29sb3IsciksbyxNYXRoLm1heCgyLDMqbikpKXJldHVybiBFdSsxfX1yZXR1cm4gZn1mdW5jdGlvbiBRbChlKXtsZXQgdD0wO2ZvcihsZXQgbiBvZltlPy5maWxsUGFpbnQsZT8uYm9yZGVyRmlsbF0pe2lmKCFuKWNvbnRpbnVlO2xldCBlPUxuKG4pO2lmKG4uZmlsbFR5cGU9PT1gZ3JhZGllbnRgJiZlPkR1KXJldHVybiBudWxsO3QrPWV9cmV0dXJuIHR9ZnVuY3Rpb24gJGwoZSx0LG4scil7bGV0IGk9dC5zZXJpZXNEYXRhTGFiZWxzO3JldHVybiB1bihpLHIpPyExOiEhKHI/LnRleHR8fChyPy5zaG93VmFsPz9pPy5zaG93VmFsPz9lLnNob3dEYXRhTGFiZWxzKXx8KHI/LnNob3dDYXROYW1lPz9pPy5zaG93Q2F0TmFtZSl8fChyPy5zaG93U2VyTmFtZT8/aT8uc2hvd1Nlck5hbWUpfHwocj8uc2hvd1BlcmNlbnQ/P2k/LnNob3dQZXJjZW50KXx8KHI/LnNob3dCdWJibGVTaXplPz9pPy5zaG93QnViYmxlU2l6ZSl8fChyPy5zaG93TGVnZW5kS2V5Pz9pPy5zaG93TGVnZW5kS2V5KSkmJm48TWF0aC5tYXgodC52YWx1ZXMubGVuZ3RoLHQuY2F0ZWdvcmllcz8ubGVuZ3RoPz8wLGUuY2F0ZWdvcmllcy5sZW5ndGgpfWZ1bmN0aW9uIGV1KGUsdCl7aWYoZS5jaGFydGV4U3VuYnVyc3R8fGUuY2hhcnRleFRyZWVtYXApcmV0dXJuIG51bGw7bGV0IG49MCxyPWU9PntsZXQgdD1RbChlKTtyZXR1cm4gdD09bnVsbHx8dD5PdS1uPyExOihuKz10LCEwKX0saT1lLnRocmVlRCE9bnVsbCYmdCE9bnVsbCYma3UuaGFzKGUuY2hhcnRUeXBlKSxhPWUuc2VyaWVzLnNvbWUodD0+KHQuc2VyaWVzVHlwZT8/ZS5jaGFydFR5cGUpPT09YHNjYXR0ZXJgJiYodC5jYXRlZ29yaWVzPz9lLmNhdGVnb3JpZXMpLnNvbWUoZT0+TnVtYmVyLmlzRmluaXRlKE51bWJlci5wYXJzZUZsb2F0KGUpKSkpO2ZvcihsZXQgdCBvZiBlLnNlcmllcyl7bGV0IG49em8odC5kYXRhTGFiZWxPdmVycmlkZXMpLG89dC5zZXJpZXNUeXBlPz9lLmNoYXJ0VHlwZSxzPU1hdGgubWF4KHQudmFsdWVzLmxlbmd0aCx0LmNhdGVnb3JpZXM/Lmxlbmd0aD8/MCxlLmNhdGVnb3JpZXMubGVuZ3RoKTtmb3IobGV0IGM9MDtjPHM7YysrKXtsZXQgcz10LnZhbHVlc1tjXTtpZihpKXtpZihzPT1udWxsfHwhTnVtYmVyLmlzRmluaXRlKHMpKWNvbnRpbnVlO2lmKGUuc2hvd0RhdGFMYWJlbHNPdmVyTWF4IT09ITApe2xldCBuPXQudXNlU2Vjb25kYXJ5QXhpcz9lLnNlY29uZGFyeVZhbEF4aXM/Lm1heDplLnZhbE1heDtpZihuIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUobikmJnM+biljb250aW51ZX19ZWxzZSBpZighWWwoZSx0LG8sYyxhKSljb250aW51ZTtsZXQgbD1uLmdldChjKTtpZighJGwoZSx0LGMsbCkpY29udGludWU7bGV0IHU9TmkobD8ubGFiZWxCb3gsdC5zZXJpZXNEYXRhTGFiZWxzPy5sYWJlbEJveCk7aWYodSYmIXIodSkpcmV0dXJuIE91KzF9aWYoIWkpe2ZvcihsZXQgZSBvZiB0LnRyZW5kTGluZXM/P1tdKWlmKChlLmRpc3BFcT09PSEwfHxlLmRpc3BSU3FyPT09ITB8fGUubGFiZWxUZXh0fHxlLmxhYmVsUmljaFJ1bnM/LnNvbWUoZT0+ZS50ZXh0Lmxlbmd0aD4wKT09PSEwKSYmZS5sYWJlbEJveCYmIXIoZS5sYWJlbEJveCkpcmV0dXJuIE91KzF9fXJldHVybiBufWZ1bmN0aW9uIHR1KGUsdCl7aWYoIWUudGhyZWVEfHwhdHx8IWt1LmhhcyhlLmNoYXJ0VHlwZSkpcmV0dXJuIG51bGw7bGV0IG49MDtmb3IobGV0IHQgb2YgZS5zZXJpZXMpe2xldCByPU1hdGgubWF4KDEsdC52YWx1ZXMubGVuZ3RoLHQuY2F0ZWdvcmllcz8ubGVuZ3RoPz8wKSxpPXQudGhyZWVEU2hhcGU/P2UudGhyZWVELnNoYXBlPz9gYm94YCxhPWUuY2hhcnRUeXBlPT09YHBpZWA/MzY6ZS5jaGFydFR5cGUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhgYmFyYCk/aT09PWBib3hgPzQ6MzY6ZS5jaGFydFR5cGUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhgYXJlYWApPzQ6dC5zbW9vdGg9PT0hMD8yNTozO2lmKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihyKXx8cj5NYXRoLmZsb29yKDFlNC9hKXx8KG4rPXIqYSxuPjFlNCkpcmV0dXJuIEhuKzF9cmV0dXJuIG59ZnVuY3Rpb24gbnUoZSx0LG4pe3JldHVybiBuPD0xZTQ/ITE6KGUuZmlsbFN0eWxlPWAjODg4YCxlLmZvbnQ9YDEycHggc2Fucy1zZXJpZmAsZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWAsZS5maWxsVGV4dChgKHRvbyBtYW55IGRhdGEgcG9pbnRzKWAsdC54K3Qudy8yLHQueSt0LmgvMiksITApfWZ1bmN0aW9uIHJ1KGUsdCxuLHIpe2xldCBpPXQuY2hhcnRUZXh0Qm94ZXM7aWYoaT8ubGVuZ3RoKWZvcihsZXQgYSBvZiBpKXtsZXQgaT1uLngrYS54Km4udyxvPW4ueSthLnkqbi5oLHM9YS53Km4udyxjPWEuaCpuLmg7aWYoIShzPjAmJmM+MCkpY29udGludWU7bGV0IGw9aSsoYS5sSW5zPz85MTQ0MCkvY3Qqcix1PW8rKGEudElucz8/NDU3MjApL2N0KnIsZD1pK3MtKGEucklucz8/OTE0NDApL2N0KnIsZj1vK2MtKGEuYklucz8/NDU3MjApL2N0KnIscD1kLWwsbT1mLXU7aWYoIShwPjAmJm0+MCkpY29udGludWU7bGV0IGg9KGUsdCk9PntsZXQgbj1NYXRoLm1heCgxLC4uLnQubWFwKGU9PmUuZm9udFB4KSk7cmV0dXJue3BhcmFncmFwaDplLHJ1bnM6dCx3aWR0aDp0LnJlZHVjZSgoZSx0KT0+ZSt0LndpZHRoLDApLGhlaWdodDpuKjEuMixiYXNlbGluZTpuKi45fX0sZz1hLnBhcmFncmFwaHMuZmxhdE1hcChuPT57bGV0IGk9bi5ydW5zLm1hcChuPT57bGV0IGk9TWF0aC5tYXgoMSwobi5mb250U2l6ZUhwdD8/MWUzKS8xMDAqciksYT1gJHtuLmJvbGQ/YGJvbGQgYDpgYH0ke2l9cHggJHskKHQsbi5mb250RmFjZSxgbWlub3JgKX1gO3JldHVybiBlLmZvbnQ9YSx7cnVuOm4sdGV4dDpuLnRleHQsZm9udFB4OmksZm9udDphLHdpZHRoOmUubWVhc3VyZVRleHQobi50ZXh0KS53aWR0aH19KSxvPWkucmVkdWNlKChlLHQpPT5lK3Qud2lkdGgsMCk7aWYoYS53cmFwPT09YG5vbmVgfHxvPD1wKXJldHVybltoKG4saSldO2xldCBzPVtdLGM9W10sbD0wLHU9KCk9PntjLmxlbmd0aCYmKHMucHVzaChoKG4sYykpLGM9W10sbD0wKX07Zm9yKGxldCB0IG9mIGkpe2xldCBuPXQudGV4dC5tYXRjaCgvXHMrfFxTKy9nKT8/W107Zm9yKGxldCByIG9mIG4pe2xldCBuPS9eXHMrJC8udGVzdChyKTtlLmZvbnQ9dC5mb250O2xldCBpPWUubWVhc3VyZVRleHQocikud2lkdGg7Yy5sZW5ndGgmJmwraT5wJiZ1KCksIShuJiYhYy5sZW5ndGgpJiYoYy5wdXNoKHsuLi50LHRleHQ6cix3aWR0aDppfSksbCs9aSl9fXJldHVybiB1KCkscy5sZW5ndGg/czpbaChuLGkpXX0pLF89Zy5yZWR1Y2UoKGUsdCk9PmUrdC5oZWlnaHQsMCksdj1hLnZlcnRpY2FsQW5jaG9yPT09YGJgP2YtXzphLnZlcnRpY2FsQW5jaG9yPT09YGN0cmA/dSsobS1fKS8yOnU7ZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3QoaSxvLHMsYyksZS5jbGlwKCksZS50ZXh0QWxpZ249YGxlZnRgLGUudGV4dEJhc2VsaW5lPWBhbHBoYWJldGljYDtsZXQgeT12O2ZvcihsZXQgdCBvZiBnKXtsZXQgbj10LnBhcmFncmFwaC5hbGlnbixyPW49PT1gY3RyYD9sKyhwLXQud2lkdGgpLzI6bj09PWByYD9kLXQud2lkdGg6bDtmb3IobGV0IG4gb2YgdC5ydW5zKWUuZm9udD1uLmZvbnQsZS5maWxsU3R5bGU9bi5ydW4uY29sb3I/YCMke24ucnVuLmNvbG9yfWA6YCMwMDAwMDBgLGUuZmlsbFRleHQobi50ZXh0LHIseSt0LmJhc2VsaW5lKSxyKz1uLndpZHRoO3krPXQuaGVpZ2h0fWUucmVzdG9yZSgpfX1mdW5jdGlvbiBpdShlLHQsbixyLGksYSl7bGV0IG89TWF0aC5tYXgoMCxNYXRoLm1pbihhLHIvMixpLzIpKTtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHQrbyxuKSxlLmxpbmVUbyh0K3ItbyxuKSxlLnF1YWRyYXRpY0N1cnZlVG8odCtyLG4sdCtyLG4rbyksZS5saW5lVG8odCtyLG4raS1vKSxlLnF1YWRyYXRpY0N1cnZlVG8odCtyLG4raSx0K3ItbyxuK2kpLGUubGluZVRvKHQrbyxuK2kpLGUucXVhZHJhdGljQ3VydmVUbyh0LG4raSx0LG4raS1vKSxlLmxpbmVUbyh0LG4rbyksZS5xdWFkcmF0aWNDdXJ2ZVRvKHQsbix0K28sbiksZS5jbG9zZVBhdGgoKX1mdW5jdGlvbiBhdShlLHQsbixyPXV0LGk9MCxhLG8scyxjKXtlLnNhdmUoKTt0cnl7aWYobnUoZSxuLEJuKHQpKSlyZXR1cm47dD1mbyh0KSx0PUhjKHQpO2xldHt4OmwseTp1LHc6ZCxoOmZ9PW4scD10LnJvdW5kZWRDb3JuZXJzPT09ITAsbT1wP0F1KnI6MDtpZihwJiYoaXUoZSxsLHUsZCxmLG0pLGUuY2xpcCgpKSx0LmNoYXJ0RmlsbEhpZGRlbiE9PSEwKWlmKHQuY2hhcnRGaWxsPy5maWxsVHlwZT09PWBpbWFnZWApUHIoZSx0LmNoYXJ0RmlsbCxsLHUsZCxmLHIsaSk7ZWxzZSBpZih0LmNoYXJ0RmlsbCl7bGV0IG49YWkodC5jaGFydEZpbGwsZSxsLHUsZCxmLGkpO24mJihlLmZpbGxTdHlsZT1uKSxuJiZlLmZpbGxSZWN0KGwsdSxkLGYpfWVsc2UgdC5jaGFydEJnJiYoZS5maWxsU3R5bGU9YCMke3QuY2hhcnRCZ31gLGUuZmlsbFJlY3QobCx1LGQsZikpO2lmKHQuY2hhcnRCb3JkZXJIaWRkZW4hPT0hMCYmKHQuY2hhcnRCb3JkZXJMaW5lRmlsbHx8dC5jaGFydEJvcmRlckNvbG9yKSl7ZS5zYXZlKCk7bGV0IG49dC5jaGFydEJvcmRlckxpbmVGaWxsP2FpKHQuY2hhcnRCb3JkZXJMaW5lRmlsbCxlLGwsdSxkLGYsaSk6dC5jaGFydEJvcmRlckNvbG9yP2AjJHt0LmNoYXJ0Qm9yZGVyQ29sb3J9YDpudWxsO2lmKCFuKWUucmVzdG9yZSgpO2Vsc2V7ZS5zdHJva2VTdHlsZT1uO2xldCBpPXQuY2hhcnRCb3JkZXJXaWR0aEVtdT9NYXRoLm1heCguNSx0LmNoYXJ0Qm9yZGVyV2lkdGhFbXUvY3QpKnI6MTtlLnNldExpbmVEYXNoKE9sKHQuY2hhcnRCb3JkZXJDdXN0b21EYXNoLHQuY2hhcnRCb3JkZXJEYXNoLGkpKSxlLmxpbmVDYXA9dC5jaGFydEJvcmRlckNhcD09PWBybmRgP2Byb3VuZGA6dC5jaGFydEJvcmRlckNhcD09PWBzcWA/YHNxdWFyZWA6YGJ1dHRgLGUubGluZUpvaW49dC5jaGFydEJvcmRlckpvaW49PT1gcm91bmRgfHx0LmNoYXJ0Qm9yZGVySm9pbj09PWBiZXZlbGA/dC5jaGFydEJvcmRlckpvaW46YG1pdGVyYCxSaShlLGwsdSxkLGYsaSx0LmNoYXJ0Qm9yZGVyQ29tcG91bmQscD9tOjApLGUucmVzdG9yZSgpfX1sZXQgaD10LmNoYXJ0ZXhCb3ghPW51bGx8fHQuY2hhcnRleFN1bmJ1cnN0IT1udWxsfHx0LmNoYXJ0ZXhUcmVlbWFwIT1udWxsfHx0LmNoYXJ0ZXhSZWdpb25NYXAhPW51bGw7aWYodC5zZXJpZXMubGVuZ3RoPT09MCYmIWgpe2UuZmlsbFN0eWxlPWAjODg4YCxlLmZvbnQ9YDEycHggc2Fucy1zZXJpZmAsZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWAsZS5maWxsVGV4dChgKG5vIGRhdGEpYCxsK2QvMix1K2YvMikscnUoZSx0LG4scik7cmV0dXJufWxldCBnPVZuKHQpLF89KGchPW51bGx8fHQuY2hhcnRleEJveCE9bnVsbCkmJihnPz8wKTw9MWU0P1psKHQscyxyLG4pOm51bGwsdj10dSh0LGEpLHk9ZXUodCxhKTtpZigoZyE9bnVsbHx8XyE9bnVsbHx8diE9bnVsbHx8eSE9bnVsbCkmJm51KGUsbixNYXRoLm1heChnPz8wLF8hPW51bGwmJl8+RXU/MTAwMDE6MCx2Pz8wLHkhPW51bGwmJnk+T3U/MTAwMDE6MCkpKXtydShlLHQsbixyKTtyZXR1cm59bGV0IGI9UW4odCk7aWYoYj09PWB1bnN1cHBvcnRlZGApe2UuZmlsbFN0eWxlPWAjODg4YCxlLmZvbnQ9YDExcHggc2Fucy1zZXJpZmAsZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWAsZS5maWxsVGV4dChgVW5zdXBwb3J0ZWQgY2hhcnRgLGwrZC8yLHUrZi8yKSxydShlLHQsbixyKTtyZXR1cm59aWYoYiE9PWBsZWdhY3lgKXtzd2l0Y2goYil7Y2FzZWBiYXItY29tYm9gOnZjKGUsdCxuLHIse30saSk7YnJlYWs7Y2FzZWBsaW5lLWdyb3Vwc2A6cWMoZSx0LG4scixpKTticmVhaztjYXNlYGFyZWEtZ3JvdXBzYDpaYyhlLHQsbixyLGkpO2JyZWFrO2Nhc2Vgc2NhdHRlci1idWJibGVgOmhsKGUsdCxuLHIsaSk7YnJlYWs7Y2FzZWBzdG9jay1saW5lYDpKYyhlLHQsbixyLGkpO2JyZWFrfVZzKGUsdCxuLHIpLHJ1KGUsdCxuLHIpO3JldHVybn1pZihhPy5yZW5kZXIoZSx0LG4scixpKSl7VnMoZSx0LG4scikscnUoZSx0LG4scik7cmV0dXJufWlmKG8/LnJlbmRlcihlLHQsbixyLGkpKXtydShlLHQsbixyKTtyZXR1cm59aWYoYz8ucmVuZGVyKGUsdCxuLHIsaSkpe1ZzKGUsdCxuLHIpLHJ1KGUsdCxuLHIpO3JldHVybn1zd2l0Y2godC5jaGFydFR5cGUpe2Nhc2VgY2x1c3RlcmVkQmFyYDpjYXNlYGNsdXN0ZXJlZEJhckhgOmNhc2Vgc3RhY2tlZEJhcmA6Y2FzZWBzdGFja2VkQmFySGA6Y2FzZWBzdGFja2VkQmFyUGN0YDpjYXNlYHN0YWNrZWRCYXJIUGN0YDp2YyhlLHQsbixyLHt9LGkpO2JyZWFrO2Nhc2VgbGluZWA6Y2FzZWBzdGFja2VkTGluZWA6Y2FzZWBzdGFja2VkTGluZVBjdGA6cWMoZSx0LG4scixpKTticmVhaztjYXNlYGFyZWFgOmNhc2Vgc3RhY2tlZEFyZWFgOmNhc2Vgc3RhY2tlZEFyZWFQY3RgOlpjKGUsdCxuLHIsaSk7YnJlYWs7Y2FzZWBwaWVgOiRjKGUsdCxuLCExLHIsaSk7YnJlYWs7Y2FzZWBvZlBpZWA6UWMoZSx0LG4scixpKTticmVhaztjYXNlYGRvdWdobnV0YDokYyhlLHQsbiwhMCxyLGkpO2JyZWFrO2Nhc2VgcmFkYXJgOm9sKGUsdCxuLHIsaSk7YnJlYWs7Y2FzZWBzY2F0dGVyYDpjYXNlYGJ1YmJsZWA6aGwoZSx0LG4scixpKTticmVhaztjYXNlYHN0b2NrYDpKYyhlLHQsbixyLGkpO2JyZWFrO2Nhc2Vgc3VyZmFjZWA6Y2FzZWBzdXJmYWNlM0RgOlhjKGUsdCxuLHIsaSk7YnJlYWs7ZGVmYXVsdDplLmZpbGxTdHlsZT1gIzg4OGAsZS5mb250PWAxMXB4IHNhbnMtc2VyaWZgLGUudGV4dEFsaWduPWBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgLGUuZmlsbFRleHQoYFVuc3VwcG9ydGVkIGNoYXJ0YCxsK2QvMix1K2YvMil9VnMoZSx0LG4scikscnUoZSx0LG4scil9ZmluYWxseXtlLnJlc3RvcmUoKX19ZnVuY3Rpb24gb3UoZSx0LG4scj11dCxpPTAsYSxvLHMsYyl7dnIocywoKT0+e2F1KGUsdCxuLHIsaSxhLG8scyxjKX0pfXZhciBzdSxjdSxsdSx1dSxkdSxmdSxwdSxtdSxodSxndSxfdSx2dSx5dSxidSx4dSxTdSxDdSx3dSxUdSxFdSxEdSxPdSxrdSxBdSxqdT10KCgoKT0+e3pyKCksTWkoKSxGaSgpLHppKCkseW4oKSxSbigpLFF0KCkscmEoKSxjYSgpLE9hKCksamEoKSxPdCgpLE5hKCkseHQoKSx6YSgpLHFuKCksZXIoKSxCYSgpLEthKCksSmEoKSxYYSgpLFFhKCksZW8oKSxzcigpLGhvKCksbG4oKSx1aSgpLG5pKCksd28oKSxMbygpLHB0KCksc3U9W2A0NDcyQzRgLGBFRDdEMzFgLGBBOUQxOEVgLGBGRjAwMDBgLGA3MEFENDdgLGA0QkFDQzZgLGBGRkMwMDBgLGA5RTQ4MEVgLGA4NDNDMENgLGA2MzYzNjNgLGAyNTVFOTFgLGA5NjczMDBgXSxjdT1bYDVCOUJENWAsYEVEN0QzMWAsYEE1QTVBNWAsYEZGQzAwMGAsYDQ0NzJDNGAsYDcwQUQ0N2BdLGx1PXtmb250RmFtaWx5OmBzYW5zLXNlcmlmYCxjb2xvcjpgIzMzM2AsYm9sZDohMSxzaXplUHg6bnVsbH0sdXU9NCxkdT0xMixmdT00LHB1PTQsbXU9cHUqMixodT00LGd1PTgsX3U9LjAxLHZ1PTcseXU9NTRlNSxidT1lPT5lWzBdK2VbMl0+ZVsxXStlWzNdP1tbMCwxLDJdLFswLDIsM11dOltbMCwxLDNdLFsxLDIsM11dLHh1PTJlNSxTdT0xLjI1LEN1PS44OCx3dT0xNSxUdT1VbixFdT1XbixEdT1UdSxPdT1FdSxrdT1uZXcgU2V0KFtgcGllYCxgbGluZWAsYHN0YWNrZWRMaW5lYCxgc3RhY2tlZExpbmVQY3RgLGBhcmVhYCxgc3RhY2tlZEFyZWFgLGBzdGFja2VkQXJlYVBjdGAsYGNsdXN0ZXJlZEJhcmAsYGNsdXN0ZXJlZEJhckhgLGBzdGFja2VkQmFyYCxgc3RhY2tlZEJhckhgLGBzdGFja2VkQmFyUGN0YCxgc3RhY2tlZEJhckhQY3RgXSksQXU9MTB9KSksTXUsTnUsUHUsRnUsSXUsTHUsUnUsenUsQnUsVnUsSHUsVXUsV3UsR3UsS3UscXUsSnUsWXUsWHUsWnUsUXUsJHUsZWQsdGQsbmQscmQsaWQsYWQsb2Qsc2QsY2QsbGQsdWQsZGQsZmQscGQsbWQsaGQsZ2QsX2QsdmQseWQsYmQseGQsU2QsQ2Qsd2QsVGQsRWQsRGQsT2Qsa2QsQWQsamQsTWQsTmQsUGQsRmQsSWQsTGQsUmQsemQsQmQsVmQsSGQsVWQsV2QsR2QsS2QscWQsSmQsWWQsWGQsWmQsUWQsJGQsZWYsdGYsbmYscmYsYWYsb2Ysc2YsY2YsbGYsdWYsZGYsZmYscGYsbWYsaGYsZ2YsX2YsdmYseWYsYmYseGYsU2YsQ2Ysd2YsVGYsRWYsRGYsT2Ysa2YsQWYsamYsTWYsTmYsUGYsRmYsSWYsTGYsUmYsemYsQmYsVmYsSGYsVWYsV2YsR2YsS2YscWYsSmYsWWYsWGYsWmYsUWYsJGYsZXAsdHAsbnAscnAsaXAsYXAsb3Asc3AsY3AsbHAsdXAsZHAsZnAscHAsbXAsaHAsZ3AsX3AsdnAseXAsYnAseHAsU3AsQ3Asd3AsVHAsRXAsRHAsT3Asa3AsQXAsanAsTXAsTnAsUHAsRnAsSXAsTHAsUnAsenAsQnAsVnAsSHAsVXAsV3AsR3AsS3AscXAsSnAsWXAsWHAsWnAsUXAsJHAsZW0sdG0sbm0scm0saW09dCgoKCk9PntNdT17YWRqOltbYGFkajFgLGB2YWwgMTg3NTBgXSxbYGFkajJgLGB2YWwgLTgzMzNgXSxbYGFkajNgLGB2YWwgMTEyNTAwYF0sW2BhZGo0YCxgdmFsIC0zODMzM2BdXSxnZDpbW2B5MWAsYCovIGggYWRqMSAxMDAwMDBgXSxbYHgxYCxgKi8gdyBhZGoyIDEwMDAwMGBdLFtgeTJgLGAqLyBoIGFkajMgMTAwMDAwYF0sW2B4MmAsYCovIHcgYWRqNCAxMDAwMDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4MWAsYHRgXSxbYGNgXSxbYGxgLGB4MWAsYGJgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4MWAsYHkxYF0sW2BsYCxgeDJgLGB5MmBdXX1dfSxOdT17YWRqOltbYGFkajFgLGB2YWwgMTg3NTBgXSxbYGFkajJgLGB2YWwgLTgzMzNgXSxbYGFkajNgLGB2YWwgMTg3NTBgXSxbYGFkajRgLGB2YWwgLTE2NjY3YF0sW2BhZGo1YCxgdmFsIDExMjUwMGBdLFtgYWRqNmAsYHZhbCAtNDY2NjdgXV0sZ2Q6W1tgeTFgLGAqLyBoIGFkajEgMTAwMDAwYF0sW2B4MWAsYCovIHcgYWRqMiAxMDAwMDBgXSxbYHkyYCxgKi8gaCBhZGozIDEwMDAwMGBdLFtgeDJgLGAqLyB3IGFkajQgMTAwMDAwYF0sW2B5M2AsYCovIGggYWRqNSAxMDAwMDBgXSxbYHgzYCxgKi8gdyBhZGo2IDEwMDAwMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHgxYCxgdGBdLFtgY2BdLFtgbGAsYHgxYCxgYmBdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHgxYCxgeTFgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDNgLGB5M2BdXX1dfSxQdT17YWRqOltbYGFkajFgLGB2YWwgMTg3NTBgXSxbYGFkajJgLGB2YWwgLTgzMzNgXSxbYGFkajNgLGB2YWwgMTg3NTBgXSxbYGFkajRgLGB2YWwgLTE2NjY3YF0sW2BhZGo1YCxgdmFsIDEwMDAwMGBdLFtgYWRqNmAsYHZhbCAtMTY2NjdgXSxbYGFkajdgLGB2YWwgMTEyOTYzYF0sW2BhZGo4YCxgdmFsIC04MzMzYF1dLGdkOltbYHkxYCxgKi8gaCBhZGoxIDEwMDAwMGBdLFtgeDFgLGAqLyB3IGFkajIgMTAwMDAwYF0sW2B5MmAsYCovIGggYWRqMyAxMDAwMDBgXSxbYHgyYCxgKi8gdyBhZGo0IDEwMDAwMGBdLFtgeTNgLGAqLyBoIGFkajUgMTAwMDAwYF0sW2B4M2AsYCovIHcgYWRqNiAxMDAwMDBgXSxbYHk0YCxgKi8gaCBhZGo3IDEwMDAwMGBdLFtgeDRgLGAqLyB3IGFkajggMTAwMDAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDFgLGB0YF0sW2BjYF0sW2BsYCxgeDFgLGBiYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDFgLGB5MWBdLFtgbGAsYHgyYCxgeTJgXSxbYGxgLGB4M2AsYHkzYF0sW2BsYCxgeDRgLGB5NGBdXX1dfSxGdT17YWRqOltbYGFkajFgLGB2YWwgMTg3NTBgXSxbYGFkajJgLGB2YWwgLTgzMzNgXSxbYGFkajNgLGB2YWwgMTEyNTAwYF0sW2BhZGo0YCxgdmFsIC0zODMzM2BdXSxnZDpbW2B5MWAsYCovIGggYWRqMSAxMDAwMDBgXSxbYHgxYCxgKi8gdyBhZGoyIDEwMDAwMGBdLFtgeTJgLGAqLyBoIGFkajMgMTAwMDAwYF0sW2B4MmAsYCovIHcgYWRqNCAxMDAwMDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4MWAsYHRgXSxbYGNgXSxbYGxgLGB4MWAsYGJgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4MWAsYHkxYF0sW2BsYCxgeDJgLGB5MmBdXX1dfSxJdT17YWRqOltbYGFkajFgLGB2YWwgMTg3NTBgXSxbYGFkajJgLGB2YWwgLTgzMzNgXSxbYGFkajNgLGB2YWwgMTg3NTBgXSxbYGFkajRgLGB2YWwgLTE2NjY3YF0sW2BhZGo1YCxgdmFsIDExMjUwMGBdLFtgYWRqNmAsYHZhbCAtNDY2NjdgXV0sZ2Q6W1tgeTFgLGAqLyBoIGFkajEgMTAwMDAwYF0sW2B4MWAsYCovIHcgYWRqMiAxMDAwMDBgXSxbYHkyYCxgKi8gaCBhZGozIDEwMDAwMGBdLFtgeDJgLGAqLyB3IGFkajQgMTAwMDAwYF0sW2B5M2AsYCovIGggYWRqNSAxMDAwMDBgXSxbYHgzYCxgKi8gdyBhZGo2IDEwMDAwMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHgxYCxgdGBdLFtgY2BdLFtgbGAsYHgxYCxgYmBdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHgxYCxgeTFgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDNgLGB5M2BdXX1dfSxMdT17YWRqOltbYGFkajFgLGB2YWwgMTg3NTBgXSxbYGFkajJgLGB2YWwgLTgzMzNgXSxbYGFkajNgLGB2YWwgMTg3NTBgXSxbYGFkajRgLGB2YWwgLTE2NjY3YF0sW2BhZGo1YCxgdmFsIDEwMDAwMGBdLFtgYWRqNmAsYHZhbCAtMTY2NjdgXSxbYGFkajdgLGB2YWwgMTEyOTYzYF0sW2BhZGo4YCxgdmFsIC04MzMzYF1dLGdkOltbYHkxYCxgKi8gaCBhZGoxIDEwMDAwMGBdLFtgeDFgLGAqLyB3IGFkajIgMTAwMDAwYF0sW2B5MmAsYCovIGggYWRqMyAxMDAwMDBgXSxbYHgyYCxgKi8gdyBhZGo0IDEwMDAwMGBdLFtgeTNgLGAqLyBoIGFkajUgMTAwMDAwYF0sW2B4M2AsYCovIHcgYWRqNiAxMDAwMDBgXSxbYHk0YCxgKi8gaCBhZGo3IDEwMDAwMGBdLFtgeDRgLGAqLyB3IGFkajggMTAwMDAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDFgLGB0YF0sW2BjYF0sW2BsYCxgeDFgLGBiYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDFgLGB5MWBdLFtgbGAsYHgyYCxgeTJgXSxbYGxgLGB4M2AsYHkzYF0sW2BsYCxgeDRgLGB5NGBdXX1dfSxSdT17YWRqOltdLGdkOltbYGR4MmAsYCovIHNzIDMgOGBdLFtgZzlgLGArLSB2YyAwIGR4MmBdLFtgZzEwYCxgKy0gdmMgZHgyIDBgXSxbYGcxMWAsYCstIGhjIDAgZHgyYF0sW2BnMTJgLGArLSBoYyBkeDIgMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdLFtgbWAsYGcxMWAsYHZjYF0sW2BsYCxgZzEyYCxgZzlgXSxbYGxgLGBnMTJgLGBnMTBgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YGRhcmtlbmAsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGcxMWAsYHZjYF0sW2BsYCxgZzEyYCxgZzlgXSxbYGxgLGBnMTJgLGBnMTBgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBnMTFgLGB2Y2BdLFtgbGAsYGcxMmAsYGc5YF0sW2BsYCxgZzEyYCxgZzEwYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19XX0senU9e2FkajpbXSxnZDpbW2BkeDJgLGAqLyBzcyAzIDhgXSxbYGc5YCxgKy0gdmMgMCBkeDJgXSxbYGcxMGAsYCstIHZjIGR4MiAwYF0sW2BnMTFgLGArLSBoYyAwIGR4MmBdLFtgZzEyYCxgKy0gaGMgZHgyIDBgXSxbYGcxM2AsYCovIHNzIDMgNGBdLFtgZzE0YCxgKi8gZzEzIDEgOGBdLFtgZzE1YCxgKi8gZzEzIDEgNGBdLFtgZzE2YCxgKy0gZzExIGcxNCAwYF0sW2BnMTdgLGArLSBnMTEgZzE1IDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXSxbYG1gLGBnMTdgLGB2Y2BdLFtgbGAsYGcxMmAsYGc5YF0sW2BsYCxgZzEyYCxgZzEwYF0sW2BjYF0sW2BtYCxgZzE2YCxgZzlgXSxbYGxgLGBnMTFgLGBnOWBdLFtgbGAsYGcxMWAsYGcxMGBdLFtgbGAsYGcxNmAsYGcxMGBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgZGFya2VuYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgZzE3YCxgdmNgXSxbYGxgLGBnMTJgLGBnOWBdLFtgbGAsYGcxMmAsYGcxMGBdLFtgY2BdLFtgbWAsYGcxNmAsYGc5YF0sW2BsYCxgZzExYCxgZzlgXSxbYGxgLGBnMTFgLGBnMTBgXSxbYGxgLGBnMTZgLGBnMTBgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBnMTdgLGB2Y2BdLFtgbGAsYGcxMmAsYGc5YF0sW2BsYCxgZzEyYCxgZzEwYF0sW2BjYF0sW2BtYCxgZzE2YCxgZzlgXSxbYGxgLGBnMTZgLGBnMTBgXSxbYGxgLGBnMTFgLGBnMTBgXSxbYGxgLGBnMTFgLGBnOWBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfV19LEJ1PXthZGo6W10sZ2Q6W10scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19XX0sVnU9e2FkajpbXSxnZDpbW2BkeDJgLGAqLyBzcyAzIDhgXSxbYGc5YCxgKy0gdmMgMCBkeDJgXSxbYGcxMGAsYCstIHZjIGR4MiAwYF0sW2BkeDFgLGAqLyBzcyA5IDMyYF0sW2BnMTFgLGArLSBoYyAwIGR4MWBdLFtgZzEyYCxgKy0gaGMgZHgxIDBgXSxbYGcxM2AsYCovIHNzIDMgMTZgXSxbYGcxNGAsYCstIGcxMiAwIGcxM2BdLFtgZzE1YCxgKy0gZzkgZzEzIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXSxbYG1gLGBnMTFgLGBnOWBdLFtgbGAsYGcxNGAsYGc5YF0sW2BsYCxgZzEyYCxgZzE1YF0sW2BsYCxgZzEyYCxgZzEwYF0sW2BsYCxgZzExYCxgZzEwYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5MZXNzYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgZzExYCxgZzlgXSxbYGxgLGBnMTRgLGBnOWBdLFtgbGAsYGcxNGAsYGcxNWBdLFtgbGAsYGcxMmAsYGcxNWBdLFtgbGAsYGcxMmAsYGcxMGBdLFtgbGAsYGcxMWAsYGcxMGBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgZGFya2VuYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgZzE0YCxgZzlgXSxbYGxgLGBnMTRgLGBnMTVgXSxbYGxgLGBnMTJgLGBnMTVgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBnMTFgLGBnOWBdLFtgbGAsYGcxNGAsYGc5YF0sW2BsYCxgZzEyYCxgZzE1YF0sW2BsYCxgZzEyYCxgZzEwYF0sW2BsYCxgZzExYCxgZzEwYF0sW2BjYF0sW2BtYCxgZzEyYCxgZzE1YF0sW2BsYCxgZzE0YCxgZzE1YF0sW2BsYCxgZzE0YCxgZzlgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX1dfSxIdT17YWRqOltdLGdkOltbYGR4MmAsYCovIHNzIDMgOGBdLFtgZzlgLGArLSB2YyAwIGR4MmBdLFtgZzEwYCxgKy0gdmMgZHgyIDBgXSxbYGcxMWAsYCstIGhjIDAgZHgyYF0sW2BnMTJgLGArLSBoYyBkeDIgMGBdLFtgZzEzYCxgKi8gc3MgMyA0YF0sW2BnMTRgLGAqLyBnMTMgMyA0YF0sW2BnMTVgLGAqLyBnMTMgNyA4YF0sW2BnMTZgLGArLSBnMTEgZzE0IDBgXSxbYGcxN2AsYCstIGcxMSBnMTUgMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdLFtgbWAsYGcxNmAsYHZjYF0sW2BsYCxgZzExYCxgZzlgXSxbYGxgLGBnMTFgLGBnMTBgXSxbYGNgXSxbYG1gLGBnMTdgLGBnOWBdLFtgbGAsYGcxMmAsYGc5YF0sW2BsYCxgZzEyYCxgZzEwYF0sW2BsYCxgZzE3YCxgZzEwYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5gLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBnMTZgLGB2Y2BdLFtgbGAsYGcxMWAsYGc5YF0sW2BsYCxgZzExYCxgZzEwYF0sW2BjYF0sW2BtYCxgZzE3YCxgZzlgXSxbYGxgLGBnMTJgLGBnOWBdLFtgbGAsYGcxMmAsYGcxMGBdLFtgbGAsYGcxN2AsYGcxMGBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGcxNmAsYHZjYF0sW2BsYCxgZzExYCxgZzEwYF0sW2BsYCxgZzExYCxgZzlgXSxbYGNgXSxbYG1gLGBnMTdgLGBnOWBdLFtgbGAsYGcxMmAsYGc5YF0sW2BsYCxgZzEyYCxgZzEwYF0sW2BsYCxgZzE3YCxgZzEwYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19XX0sVXU9e2FkajpbXSxnZDpbW2BkeDJgLGAqLyBzcyAzIDhgXSxbYGc5YCxgKy0gdmMgMCBkeDJgXSxbYGcxMGAsYCstIHZjIGR4MiAwYF0sW2BnMTFgLGArLSBoYyAwIGR4MmBdLFtgZzEyYCxgKy0gaGMgZHgyIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXSxbYG1gLGBnMTJgLGB2Y2BdLFtgbGAsYGcxMWAsYGc5YF0sW2BsYCxgZzExYCxgZzEwYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5gLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBnMTJgLGB2Y2BdLFtgbGAsYGcxMWAsYGc5YF0sW2BsYCxgZzExYCxgZzEwYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgZzEyYCxgdmNgXSxbYGxgLGBnMTFgLGBnMTBgXSxbYGxgLGBnMTFgLGBnOWBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfV19LFd1PXthZGo6W10sZ2Q6W1tgZHgyYCxgKi8gc3MgMyA4YF0sW2BnOWAsYCstIHZjIDAgZHgyYF0sW2BnMTFgLGArLSBoYyAwIGR4MmBdLFtgZzEzYCxgKi8gc3MgMyA0YF0sW2BnMTRgLGAqLyBnMTMgMSA3YF0sW2BnMTVgLGAqLyBnMTMgMyAxNGBdLFtgZzE2YCxgKi8gZzEzIDIgN2BdLFtgZzE5YCxgKi8gZzEzIDMgN2BdLFtgZzIwYCxgKi8gZzEzIDQgN2BdLFtgZzIxYCxgKi8gZzEzIDE3IDI4YF0sW2BnMjNgLGAqLyBnMTMgMjEgMjhgXSxbYGcyNGAsYCovIGcxMyAxMSAxNGBdLFtgZzI3YCxgKy0gZzkgZzE2IDBgXSxbYGcyOWAsYCstIGc5IGcyMSAwYF0sW2BnMzBgLGArLSBnOSBnMjMgMGBdLFtgZzMxYCxgKy0gZzkgZzI0IDBgXSxbYGczM2AsYCstIGcxMSBnMTUgMGBdLFtgZzM2YCxgKy0gZzExIGcxOSAwYF0sW2BnMzdgLGArLSBnMTEgZzIwIDBgXSxbYGc0MWAsYCovIGcxMyAxIDE0YF0sW2BnNDJgLGAqLyBnMTMgMyAyOGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdLFtgbWAsYGczM2AsYGcyN2BdLFtgYWAsYGcxNmAsYGcxNmAsYGNkMmAsYGNkMmBdLFtgYWAsYGcxNGAsYGcxNWAsYDBgLGBjZDRgXSxbYGFgLGBnNDFgLGBnNDJgLGAzY2Q0YCxgLTU0MDAwMDBgXSxbYGxgLGBnMzdgLGBnMzBgXSxbYGxgLGBnMzZgLGBnMzBgXSxbYGxgLGBnMzZgLGBnMjlgXSxbYGFgLGBnMTRgLGBnMTVgLGBjZDJgLGBjZDRgXSxbYGFgLGBnNDFgLGBnNDJgLGBjZDRgLGAtNTQwMDAwMGBdLFtgYWAsYGcxNGAsYGcxNGAsYDBgLGAtMTA4MDAwMDBgXSxbYGNgXSxbYG1gLGBoY2AsYGczMWBdLFtgYWAsYGc0MmAsYGc0MmAsYDNjZDRgLGAyMTYwMDAwMGBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgZGFya2VuYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgZzMzYCxgZzI3YF0sW2BhYCxgZzE2YCxgZzE2YCxgY2QyYCxgY2QyYF0sW2BhYCxgZzE0YCxgZzE1YCxgMGAsYGNkNGBdLFtgYWAsYGc0MWAsYGc0MmAsYDNjZDRgLGAtNTQwMDAwMGBdLFtgbGAsYGczN2AsYGczMGBdLFtgbGAsYGczNmAsYGczMGBdLFtgbGAsYGczNmAsYGcyOWBdLFtgYWAsYGcxNGAsYGcxNWAsYGNkMmAsYGNkNGBdLFtgYWAsYGc0MWAsYGc0MmAsYGNkNGAsYC01NDAwMDAwYF0sW2BhYCxgZzE0YCxgZzE0YCxgMGAsYC0xMDgwMDAwMGBdLFtgY2BdLFtgbWAsYGhjYCxgZzMxYF0sW2BhYCxgZzQyYCxgZzQyYCxgM2NkNGAsYDIxNjAwMDAwYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgZzMzYCxgZzI3YF0sW2BhYCxgZzE2YCxgZzE2YCxgY2QyYCxgY2QyYF0sW2BhYCxgZzE0YCxgZzE1YCxgMGAsYGNkNGBdLFtgYWAsYGc0MWAsYGc0MmAsYDNjZDRgLGAtNTQwMDAwMGBdLFtgbGAsYGczN2AsYGczMGBdLFtgbGAsYGczNmAsYGczMGBdLFtgbGAsYGczNmAsYGcyOWBdLFtgYWAsYGcxNGAsYGcxNWAsYGNkMmAsYGNkNGBdLFtgYWAsYGc0MWAsYGc0MmAsYGNkNGAsYC01NDAwMDAwYF0sW2BhYCxgZzE0YCxgZzE0YCxgMGAsYC0xMDgwMDAwMGBdLFtgY2BdLFtgbWAsYGhjYCxgZzMxYF0sW2BhYCxgZzQyYCxgZzQyYCxgM2NkNGAsYDIxNjAwMDAwYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19XX0sR3U9e2FkajpbXSxnZDpbW2BkeDJgLGAqLyBzcyAzIDhgXSxbYGc5YCxgKy0gdmMgMCBkeDJgXSxbYGcxMGAsYCstIHZjIGR4MiAwYF0sW2BnMTFgLGArLSBoYyAwIGR4MmBdLFtgZzEyYCxgKy0gaGMgZHgyIDBgXSxbYGcxM2AsYCovIHNzIDMgNGBdLFtgZzE0YCxgKi8gZzEzIDEgMTZgXSxbYGcxNWAsYCovIGcxMyAxIDhgXSxbYGcxNmAsYCovIGcxMyAzIDE2YF0sW2BnMTdgLGAqLyBnMTMgNSAxNmBdLFtgZzE4YCxgKi8gZzEzIDcgMTZgXSxbYGcxOWAsYCovIGcxMyA5IDE2YF0sW2BnMjBgLGAqLyBnMTMgMTEgMTZgXSxbYGcyMWAsYCovIGcxMyAzIDRgXSxbYGcyMmAsYCovIGcxMyAxMyAxNmBdLFtgZzIzYCxgKi8gZzEzIDcgOGBdLFtgZzI0YCxgKy0gZzkgZzE0IDBgXSxbYGcyNWAsYCstIGc5IGcxNiAwYF0sW2BnMjZgLGArLSBnOSBnMTcgMGBdLFtgZzI3YCxgKy0gZzkgZzIxIDBgXSxbYGcyOGAsYCstIGcxMSBnMTUgMGBdLFtgZzI5YCxgKy0gZzExIGcxOCAwYF0sW2BnMzBgLGArLSBnMTEgZzE5IDBgXSxbYGczMWAsYCstIGcxMSBnMjAgMGBdLFtgZzMyYCxgKy0gZzExIGcyMiAwYF0sW2BnMzNgLGArLSBnMTEgZzIzIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXSxbYG1gLGBoY2AsYGc5YF0sW2BsYCxgZzExYCxgdmNgXSxbYGxgLGBnMjhgLGB2Y2BdLFtgbGAsYGcyOGAsYGcxMGBdLFtgbGAsYGczM2AsYGcxMGBdLFtgbGAsYGczM2AsYHZjYF0sW2BsYCxgZzEyYCxgdmNgXSxbYGxgLGBnMzJgLGBnMjZgXSxbYGxgLGBnMzJgLGBnMjRgXSxbYGxgLGBnMzFgLGBnMjRgXSxbYGxgLGBnMzFgLGBnMjVgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YGRhcmtlbkxlc3NgLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBnMzJgLGBnMjZgXSxbYGxgLGBnMzJgLGBnMjRgXSxbYGxgLGBnMzFgLGBnMjRgXSxbYGxgLGBnMzFgLGBnMjVgXSxbYGNgXSxbYG1gLGBnMjhgLGB2Y2BdLFtgbGAsYGcyOGAsYGcxMGBdLFtgbGAsYGcyOWAsYGcxMGBdLFtgbGAsYGcyOWAsYGcyN2BdLFtgbGAsYGczMGAsYGcyN2BdLFtgbGAsYGczMGAsYGcxMGBdLFtgbGAsYGczM2AsYGcxMGBdLFtgbGAsYGczM2AsYHZjYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5gLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBoY2AsYGc5YF0sW2BsYCxgZzExYCxgdmNgXSxbYGxgLGBnMTJgLGB2Y2BdLFtgY2BdLFtgbWAsYGcyOWAsYGcyN2BdLFtgbGAsYGczMGAsYGcyN2BdLFtgbGAsYGczMGAsYGcxMGBdLFtgbGAsYGcyOWAsYGcxMGBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGhjYCxgZzlgXSxbYGxgLGBnMzFgLGBnMjVgXSxbYGxgLGBnMzFgLGBnMjRgXSxbYGxgLGBnMzJgLGBnMjRgXSxbYGxgLGBnMzJgLGBnMjZgXSxbYGxgLGBnMTJgLGB2Y2BdLFtgbGAsYGczM2AsYHZjYF0sW2BsYCxgZzMzYCxgZzEwYF0sW2BsYCxgZzI4YCxgZzEwYF0sW2BsYCxgZzI4YCxgdmNgXSxbYGxgLGBnMTFgLGB2Y2BdLFtgY2BdLFtgbWAsYGczMWAsYGcyNWBdLFtgbGAsYGczMmAsYGcyNmBdLFtgbWAsYGczM2AsYHZjYF0sW2BsYCxgZzI4YCxgdmNgXSxbYG1gLGBnMjlgLGBnMTBgXSxbYGxgLGBnMjlgLGBnMjdgXSxbYGxgLGBnMzBgLGBnMjdgXSxbYGxgLGBnMzBgLGBnMTBgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX1dfSxLdT17YWRqOltdLGdkOltbYGR4MmAsYCovIHNzIDMgOGBdLFtgZzlgLGArLSB2YyAwIGR4MmBdLFtgZzExYCxgKy0gaGMgMCBkeDJgXSxbYGcxM2AsYCovIHNzIDMgNGBdLFtgZzE0YCxgKi8gZzEzIDEgMzJgXSxbYGcxN2AsYCovIGcxMyA1IDE2YF0sW2BnMThgLGAqLyBnMTMgMyA4YF0sW2BnMTlgLGAqLyBnMTMgMTMgMzJgXSxbYGcyMGAsYCovIGcxMyAxOSAzMmBdLFtgZzIyYCxgKi8gZzEzIDExIDE2YF0sW2BnMjNgLGAqLyBnMTMgMTMgMTZgXSxbYGcyNGAsYCovIGcxMyA3IDhgXSxbYGcyNWAsYCstIGc5IGcxNCAwYF0sW2BnMjhgLGArLSBnOSBnMTcgMGBdLFtgZzI5YCxgKy0gZzkgZzE4IDBgXSxbYGczMGAsYCstIGc5IGcyMyAwYF0sW2BnMzFgLGArLSBnOSBnMjQgMGBdLFtgZzMyYCxgKy0gZzExIGcxNyAwYF0sW2BnMzRgLGArLSBnMTEgZzE5IDBgXSxbYGczNWAsYCstIGcxMSBnMjAgMGBdLFtgZzM3YCxgKy0gZzExIGcyMiAwYF0sW2BnMzhgLGAqLyBnMTMgMyAzMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdLFtgbWAsYGhjYCxgZzlgXSxbYGFgLGBkeDJgLGBkeDJgLGAzY2Q0YCxgMjE2MDAwMDBgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YGRhcmtlbmAsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGhjYCxgZzlgXSxbYGFgLGBkeDJgLGBkeDJgLGAzY2Q0YCxgMjE2MDAwMDBgXSxbYGNgXSxbYG1gLGBoY2AsYGcyNWBdLFtgYWAsYGczOGAsYGczOGAsYDNjZDRgLGAyMTYwMDAwMGBdLFtgbWAsYGczMmAsYGcyOGBdLFtgbGAsYGczMmAsYGcyOWBdLFtgbGAsYGczNGAsYGcyOWBdLFtgbGAsYGczNGAsYGczMGBdLFtgbGAsYGczMmAsYGczMGBdLFtgbGAsYGczMmAsYGczMWBdLFtgbGAsYGczN2AsYGczMWBdLFtgbGAsYGczN2AsYGczMGBdLFtgbGAsYGczNWAsYGczMGBdLFtgbGAsYGczNWAsYGcyOGBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbGlnaHRlbmAsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGhjYCxgZzI1YF0sW2BhYCxgZzM4YCxgZzM4YCxgM2NkNGAsYDIxNjAwMDAwYF0sW2BtYCxgZzMyYCxgZzI4YF0sW2BsYCxgZzM1YCxgZzI4YF0sW2BsYCxgZzM1YCxgZzMwYF0sW2BsYCxgZzM3YCxgZzMwYF0sW2BsYCxgZzM3YCxgZzMxYF0sW2BsYCxgZzMyYCxgZzMxYF0sW2BsYCxgZzMyYCxgZzMwYF0sW2BsYCxgZzM0YCxgZzMwYF0sW2BsYCxgZzM0YCxgZzI5YF0sW2BsYCxgZzMyYCxgZzI5YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgaGNgLGBnOWBdLFtgYWAsYGR4MmAsYGR4MmAsYDNjZDRgLGAyMTYwMDAwMGBdLFtgY2BdLFtgbWAsYGhjYCxgZzI1YF0sW2BhYCxgZzM4YCxgZzM4YCxgM2NkNGAsYDIxNjAwMDAwYF0sW2BtYCxgZzMyYCxgZzI4YF0sW2BsYCxgZzM1YCxgZzI4YF0sW2BsYCxgZzM1YCxgZzMwYF0sW2BsYCxgZzM3YCxgZzMwYF0sW2BsYCxgZzM3YCxgZzMxYF0sW2BsYCxgZzMyYCxgZzMxYF0sW2BsYCxgZzMyYCxgZzMwYF0sW2BsYCxgZzM0YCxgZzMwYF0sW2BsYCxgZzM0YCxgZzI5YF0sW2BsYCxgZzMyYCxgZzI5YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19XX0scXU9e2FkajpbXSxnZDpbW2BkeDJgLGAqLyBzcyAzIDhgXSxbYGc5YCxgKy0gdmMgMCBkeDJgXSxbYGcxMGAsYCstIHZjIGR4MiAwYF0sW2BnMTFgLGArLSBoYyAwIGR4MmBdLFtgZzEyYCxgKy0gaGMgZHgyIDBgXSxbYGcxM2AsYCovIHNzIDMgNGBdLFtgZzE0YCxgKi8gZzEzIDE0NTUgMjE2MDBgXSxbYGcxNWAsYCovIGcxMyAxOTA1IDIxNjAwYF0sW2BnMTZgLGAqLyBnMTMgMjMyNSAyMTYwMGBdLFtgZzE3YCxgKi8gZzEzIDE2MTU1IDIxNjAwYF0sW2BnMThgLGAqLyBnMTMgMTcwMTAgMjE2MDBgXSxbYGcxOWAsYCovIGcxMyAxOTMzNSAyMTYwMGBdLFtgZzIwYCxgKi8gZzEzIDE5NzI1IDIxNjAwYF0sW2BnMjFgLGAqLyBnMTMgMjA1OTUgMjE2MDBgXSxbYGcyMmAsYCovIGcxMyA1MjgwIDIxNjAwYF0sW2BnMjNgLGAqLyBnMTMgNTczMCAyMTYwMGBdLFtgZzI0YCxgKi8gZzEzIDY2MzAgMjE2MDBgXSxbYGcyNWAsYCovIGcxMyA3NDkyIDIxNjAwYF0sW2BnMjZgLGAqLyBnMTMgOTA2NyAyMTYwMGBdLFtgZzI3YCxgKi8gZzEzIDk1NTUgMjE2MDBgXSxbYGcyOGAsYCovIGcxMyAxMzM0MiAyMTYwMGBdLFtgZzI5YCxgKi8gZzEzIDE0NTgwIDIxNjAwYF0sW2BnMzBgLGAqLyBnMTMgMTU1OTIgMjE2MDBgXSxbYGczMWAsYCstIGcxMSBnMTQgMGBdLFtgZzMyYCxgKy0gZzExIGcxNSAwYF0sW2BnMzNgLGArLSBnMTEgZzE2IDBgXSxbYGczNGAsYCstIGcxMSBnMTcgMGBdLFtgZzM1YCxgKy0gZzExIGcxOCAwYF0sW2BnMzZgLGArLSBnMTEgZzE5IDBgXSxbYGczN2AsYCstIGcxMSBnMjAgMGBdLFtgZzM4YCxgKy0gZzExIGcyMSAwYF0sW2BnMzlgLGArLSBnOSBnMjIgMGBdLFtgZzQwYCxgKy0gZzkgZzIzIDBgXSxbYGc0MWAsYCstIGc5IGcyNCAwYF0sW2BnNDJgLGArLSBnOSBnMjUgMGBdLFtgZzQzYCxgKy0gZzkgZzI2IDBgXSxbYGc0NGAsYCstIGc5IGcyNyAwYF0sW2BnNDVgLGArLSBnOSBnMjggMGBdLFtgZzQ2YCxgKy0gZzkgZzI5IDBgXSxbYGc0N2AsYCstIGc5IGczMCAwYF0sW2BnNDhgLGArLSBnOSBnMzEgMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdLFtgbWAsYGcxMWAsYGczOWBdLFtgbGAsYGcxMWAsYGc0NGBdLFtgbGAsYGczMWAsYGc0NGBdLFtgbGAsYGczMmAsYGc0M2BdLFtgbGAsYGczM2AsYGc0M2BdLFtgbGAsYGczM2AsYGc0N2BdLFtgbGAsYGczNWAsYGc0N2BdLFtgbGAsYGczNWAsYGc0NWBdLFtgbGAsYGczNmAsYGc0NWBdLFtgbGAsYGczOGAsYGc0NmBdLFtgbGAsYGcxMmAsYGc0NmBdLFtgbGAsYGcxMmAsYGc0MWBdLFtgbGAsYGczOGAsYGc0MWBdLFtgbGAsYGczN2AsYGc0MmBdLFtgbGAsYGczNWAsYGc0MmBdLFtgbGAsYGczNWAsYGc0MWBdLFtgbGAsYGczNGAsYGc0MGBdLFtgbGAsYGczMmAsYGc0MGBdLFtgbGAsYGczMWAsYGczOWBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgZGFya2VuYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgZzExYCxgZzM5YF0sW2BsYCxgZzExYCxgZzQ0YF0sW2BsYCxgZzMxYCxgZzQ0YF0sW2BsYCxgZzMyYCxgZzQzYF0sW2BsYCxgZzMzYCxgZzQzYF0sW2BsYCxgZzMzYCxgZzQ3YF0sW2BsYCxgZzM1YCxgZzQ3YF0sW2BsYCxgZzM1YCxgZzQ1YF0sW2BsYCxgZzM2YCxgZzQ1YF0sW2BsYCxgZzM4YCxgZzQ2YF0sW2BsYCxgZzEyYCxgZzQ2YF0sW2BsYCxgZzEyYCxgZzQxYF0sW2BsYCxgZzM4YCxgZzQxYF0sW2BsYCxgZzM3YCxgZzQyYF0sW2BsYCxgZzM1YCxgZzQyYF0sW2BsYCxgZzM1YCxgZzQxYF0sW2BsYCxgZzM0YCxgZzQwYF0sW2BsYCxgZzMyYCxgZzQwYF0sW2BsYCxgZzMxYCxgZzM5YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgZzExYCxgZzM5YF0sW2BsYCxgZzMxYCxgZzM5YF0sW2BsYCxgZzMyYCxgZzQwYF0sW2BsYCxgZzM0YCxgZzQwYF0sW2BsYCxgZzM1YCxgZzQxYF0sW2BsYCxgZzM1YCxgZzQyYF0sW2BsYCxgZzM3YCxgZzQyYF0sW2BsYCxgZzM4YCxgZzQxYF0sW2BsYCxgZzEyYCxgZzQxYF0sW2BsYCxgZzEyYCxgZzQ2YF0sW2BsYCxgZzM4YCxgZzQ2YF0sW2BsYCxgZzM2YCxgZzQ1YF0sW2BsYCxgZzM1YCxgZzQ1YF0sW2BsYCxgZzM1YCxgZzQ3YF0sW2BsYCxgZzMzYCxgZzQ3YF0sW2BsYCxgZzMzYCxgZzQzYF0sW2BsYCxgZzMyYCxgZzQzYF0sW2BsYCxgZzMxYCxgZzQ0YF0sW2BsYCxgZzExYCxgZzQ0YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19XX0sSnU9e2FkajpbXSxnZDpbW2BkeDJgLGAqLyBzcyAzIDhgXSxbYGc5YCxgKy0gdmMgMCBkeDJgXSxbYGcxMGAsYCstIHZjIGR4MiAwYF0sW2BnMTFgLGArLSBoYyAwIGR4MmBdLFtgZzEyYCxgKy0gaGMgZHgyIDBgXSxbYGcxM2AsYCovIHNzIDMgNGBdLFtgZzE0YCxgKi8gZzEzIDcgOGBdLFtgZzE1YCxgKi8gZzEzIDMgNGBdLFtgZzE2YCxgKi8gZzEzIDUgOGBdLFtgZzE3YCxgKi8gZzEzIDMgOGBdLFtgZzE4YCxgKi8gZzEzIDEgNGBdLFtgZzE5YCxgKy0gZzkgZzE1IDBgXSxbYGcyMGAsYCstIGc5IGcxNiAwYF0sW2BnMjFgLGArLSBnOSBnMTggMGBdLFtgZzIyYCxgKy0gZzExIGcxNCAwYF0sW2BnMjNgLGArLSBnMTEgZzE1IDBgXSxbYGcyNGAsYCstIGcxMSBnMTYgMGBdLFtgZzI1YCxgKy0gZzExIGcxNyAwYF0sW2BnMjZgLGArLSBnMTEgZzE4IDBgXSxbYGcyN2AsYCovIGcxMyAxIDhgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXSxbYG1gLGBnMTJgLGBnMjFgXSxbYGxgLGBnMjNgLGBnOWBdLFtgbGAsYGhjYCxgZzIxYF0sW2BsYCxgZzI0YCxgZzIxYF0sW2BsYCxgZzI0YCxgZzIwYF0sW2BhYCxgZzI3YCxgZzI3YCxgMGAsYGNkNGBdLFtgbGAsYGcyNWAsYGcxOWBdLFtgYWAsYGcyN2AsYGcyN2AsYGNkNGAsYGNkNGBdLFtgbGAsYGcyNmAsYGcyMWBdLFtgbGAsYGcxMWAsYGcyMWBdLFtgbGAsYGcxMWAsYGcyMGBdLFtgYWAsYGcxN2AsYGcxN2AsYGNkMmAsYC01NDAwMDAwYF0sW2BsYCxgaGNgLGBnMTBgXSxbYGFgLGBnMTdgLGBnMTdgLGBjZDRgLGAtNTQwMDAwMGBdLFtgbGAsYGcyMmAsYGcyMWBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgZGFya2VuYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgZzEyYCxgZzIxYF0sW2BsYCxgZzIzYCxgZzlgXSxbYGxgLGBoY2AsYGcyMWBdLFtgbGAsYGcyNGAsYGcyMWBdLFtgbGAsYGcyNGAsYGcyMGBdLFtgYWAsYGcyN2AsYGcyN2AsYDBgLGBjZDRgXSxbYGxgLGBnMjVgLGBnMTlgXSxbYGFgLGBnMjdgLGBnMjdgLGBjZDRgLGBjZDRgXSxbYGxgLGBnMjZgLGBnMjFgXSxbYGxgLGBnMTFgLGBnMjFgXSxbYGxgLGBnMTFgLGBnMjBgXSxbYGFgLGBnMTdgLGBnMTdgLGBjZDJgLGAtNTQwMDAwMGBdLFtgbGAsYGhjYCxgZzEwYF0sW2BhYCxgZzE3YCxgZzE3YCxgY2Q0YCxgLTU0MDAwMDBgXSxbYGxgLGBnMjJgLGBnMjFgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBnMTJgLGBnMjFgXSxbYGxgLGBnMjJgLGBnMjFgXSxbYGxgLGBnMjJgLGBnMjBgXSxbYGFgLGBnMTdgLGBnMTdgLGAwYCxgY2Q0YF0sW2BsYCxgZzI1YCxgZzEwYF0sW2BhYCxgZzE3YCxgZzE3YCxgY2Q0YCxgY2Q0YF0sW2BsYCxgZzExYCxgZzIxYF0sW2BsYCxgZzI2YCxgZzIxYF0sW2BsYCxgZzI2YCxgZzIwYF0sW2BhYCxgZzI3YCxgZzI3YCxgY2QyYCxgLTU0MDAwMDBgXSxbYGxgLGBoY2AsYGcxOWBdLFtgYWAsYGcyN2AsYGcyN2AsYGNkNGAsYC01NDAwMDAwYF0sW2BsYCxgZzI0YCxgZzIxYF0sW2BsYCxgaGNgLGBnMjFgXSxbYGxgLGBnMjNgLGBnOWBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfV19LFl1PXthZGo6W10sZ2Q6W1tgZHgyYCxgKi8gc3MgMyA4YF0sW2BnOWAsYCstIHZjIDAgZHgyYF0sW2BnMTBgLGArLSB2YyBkeDIgMGBdLFtgZzExYCxgKy0gaGMgMCBkeDJgXSxbYGcxMmAsYCstIGhjIGR4MiAwYF0sW2BnMTNgLGAqLyBzcyAzIDRgXSxbYGcxNGAsYCovIGcxMyAxIDhgXSxbYGcxNWAsYCovIGcxMyA1IDE2YF0sW2BnMTZgLGAqLyBnMTMgNSA4YF0sW2BnMTdgLGAqLyBnMTMgMTEgMTZgXSxbYGcxOGAsYCovIGcxMyAzIDRgXSxbYGcxOWAsYCovIGcxMyA3IDhgXSxbYGcyMGAsYCstIGc5IGcxNCAwYF0sW2BnMjFgLGArLSBnOSBnMTUgMGBdLFtgZzIyYCxgKy0gZzkgZzE3IDBgXSxbYGcyM2AsYCstIGc5IGcxOSAwYF0sW2BnMjRgLGArLSBnMTEgZzE1IDBgXSxbYGcyNWAsYCstIGcxMSBnMTYgMGBdLFtgZzI2YCxgKy0gZzExIGcxOCAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF0sW2BtYCxgZzExYCxgZzIxYF0sW2BsYCxgZzExYCxgZzIyYF0sW2BsYCxgZzI0YCxgZzIyYF0sW2BsYCxgZzI1YCxgZzEwYF0sW2BsYCxgZzI1YCxgZzlgXSxbYGxgLGBnMjRgLGBnMjFgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YGRhcmtlbmAsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGcxMWAsYGcyMWBdLFtgbGAsYGcxMWAsYGcyMmBdLFtgbGAsYGcyNGAsYGcyMmBdLFtgbGAsYGcyNWAsYGcxMGBdLFtgbGAsYGcyNWAsYGc5YF0sW2BsYCxgZzI0YCxgZzIxYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgZzExYCxgZzIxYF0sW2BsYCxgZzI0YCxgZzIxYF0sW2BsYCxgZzI1YCxgZzlgXSxbYGxgLGBnMjVgLGBnMTBgXSxbYGxgLGBnMjRgLGBnMjJgXSxbYGxgLGBnMTFgLGBnMjJgXSxbYGNgXSxbYG1gLGBnMjZgLGBnMjFgXSxbYGxgLGBnMTJgLGBnMjBgXSxbYG1gLGBnMjZgLGB2Y2BdLFtgbGAsYGcxMmAsYHZjYF0sW2BtYCxgZzI2YCxgZzIyYF0sW2BsYCxgZzEyYCxgZzIzYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19XX0sWHU9e2FkajpbW2BhZGoxYCxgdmFsIDE2MjAwMDAwYF0sW2BhZGoyYCxgdmFsIDBgXV0sZ2Q6W1tgc3RBbmdgLGBwaW4gMCBhZGoxIDIxNTk5OTk5YF0sW2BlbkFuZ2AsYHBpbiAwIGFkajIgMjE1OTk5OTlgXSxbYHN3MTFgLGArLSBlbkFuZyAwIHN0QW5nYF0sW2BzdzEyYCxgKy0gc3cxMSAyMTYwMDAwMCAwYF0sW2Bzd0FuZ2AsYD86IHN3MTEgc3cxMSBzdzEyYF0sW2B3dDFgLGBzaW4gd2QyIHN0QW5nYF0sW2BodDFgLGBjb3MgaGQyIHN0QW5nYF0sW2BkeDFgLGBjYXQyIHdkMiBodDEgd3QxYF0sW2BkeTFgLGBzYXQyIGhkMiBodDEgd3QxYF0sW2B3dDJgLGBzaW4gd2QyIGVuQW5nYF0sW2BodDJgLGBjb3MgaGQyIGVuQW5nYF0sW2BkeDJgLGBjYXQyIHdkMiBodDIgd3QyYF0sW2BkeTJgLGBzYXQyIGhkMiBodDIgd3QyYF0sW2B4MWAsYCstIGhjIGR4MSAwYF0sW2B5MWAsYCstIHZjIGR5MSAwYF0sW2B4MmAsYCstIGhjIGR4MiAwYF0sW2B5MmAsYCstIHZjIGR5MiAwYF0sW2BzdzBgLGArLSAyMTYwMDAwMCAwIHN0QW5nYF0sW2BkYTFgLGArLSBzd0FuZyAwIHN3MGBdLFtgZzFgLGBtYXggeDEgeDJgXSxbYGlyYCxgPzogZGExIHIgZzFgXSxbYHN3MWAsYCstIGNkNCAwIHN0QW5nYF0sW2BzdzJgLGArLSAyNzAwMDAwMCAwIHN0QW5nYF0sW2BzdzNgLGA/OiBzdzEgc3cxIHN3MmBdLFtgZGEyYCxgKy0gc3dBbmcgMCBzdzNgXSxbYGc1YCxgbWF4IHkxIHkyYF0sW2BpYmAsYD86IGRhMiBiIGc1YF0sW2BzdzRgLGArLSBjZDIgMCBzdEFuZ2BdLFtgc3c1YCxgKy0gMzI0MDAwMDAgMCBzdEFuZ2BdLFtgc3c2YCxgPzogc3c0IHN3NCBzdzVgXSxbYGRhM2AsYCstIHN3QW5nIDAgc3c2YF0sW2BnOWAsYG1pbiB4MSB4MmBdLFtgaWxgLGA/OiBkYTMgbCBnOWBdLFtgc3c3YCxgKy0gM2NkNCAwIHN0QW5nYF0sW2BzdzhgLGArLSAzNzgwMDAwMCAwIHN0QW5nYF0sW2BzdzlgLGA/OiBzdzcgc3c3IHN3OGBdLFtgZGE0YCxgKy0gc3dBbmcgMCBzdzlgXSxbYGcxM2AsYG1pbiB5MSB5MmBdLFtgaXRgLGA/OiBkYTQgdCBnMTNgXSxbYGNhbmcxYCxgKy0gc3RBbmcgMCBjZDRgXSxbYGNhbmcyYCxgKy0gZW5BbmcgY2Q0IDBgXSxbYGNhbmczYCxgKy8gY2FuZzEgY2FuZzIgMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4MWAsYHkxYF0sW2BhYCxgd2QyYCxgaGQyYCxgc3RBbmdgLGBzd0FuZ2BdLFtgbGAsYGhjYCxgdmNgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4MWAsYHkxYF0sW2BhYCxgd2QyYCxgaGQyYCxgc3RBbmdgLGBzd0FuZ2BdXX1dfSxadT17YWRqOltbYGFkajFgLGB2YWwgMjUwMDBgXSxbYGFkajJgLGB2YWwgMjUwMDBgXSxbYGFkajNgLGB2YWwgMjUwMDBgXSxbYGFkajRgLGB2YWwgNDM3NTBgXV0sZ2Q6W1tgYTJgLGBwaW4gMCBhZGoyIDUwMDAwYF0sW2BtYXhBZGoxYCxgKi8gYTIgMiAxYF0sW2BhMWAsYHBpbiAwIGFkajEgbWF4QWRqMWBdLFtgYTNgLGBwaW4gMCBhZGozIDUwMDAwYF0sW2B0aGAsYCovIHNzIGExIDEwMDAwMGBdLFtgYXcyYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2B0aDJgLGAqLyB0aCAxIDJgXSxbYGRoMmAsYCstIGF3MiAwIHRoMmBdLFtgYWhgLGAqLyBzcyBhMyAxMDAwMDBgXSxbYGJ3YCxgKy0gciAwIGFoYF0sW2BiaGAsYCstIGIgMCBkaDJgXSxbYGJzYCxgbWluIGJ3IGJoYF0sW2BtYXhBZGo0YCxgKi8gMTAwMDAwIGJzIHNzYF0sW2BhNGAsYHBpbiAwIGFkajQgbWF4QWRqNGBdLFtgYmRgLGAqLyBzcyBhNCAxMDAwMDBgXSxbYGJkM2AsYCstIGJkIDAgdGhgXSxbYGJkMmAsYG1heCBiZDMgMGBdLFtgeDNgLGArLSB0aCBiZDIgMGBdLFtgeDRgLGArLSByIDAgYWhgXSxbYHkzYCxgKy0gZGgyIHRoIDBgXSxbYHk0YCxgKy0geTMgZGgyIDBgXSxbYHk1YCxgKy0gZGgyIGJkIDBgXSxbYHk2YCxgKy0geTMgYmQyIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYGJgXSxbYGxgLGBsYCxgeTVgXSxbYGFgLGBiZGAsYGJkYCxgY2QyYCxgY2Q0YF0sW2BsYCxgeDRgLGBkaDJgXSxbYGxgLGB4NGAsYHRgXSxbYGxgLGByYCxgYXcyYF0sW2BsYCxgeDRgLGB5NGBdLFtgbGAsYHg0YCxgeTNgXSxbYGxgLGB4M2AsYHkzYF0sW2BhYCxgYmQyYCxgYmQyYCxgM2NkNGAsYC01NDAwMDAwYF0sW2BsYCxgdGhgLGBiYF0sW2BjYF1dfV19LFF1PXthZGo6W10sZ2Q6W10scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXV19XX0sJHU9e2FkajpbW2BhZGoxYCxgdmFsIDUwMDAwYF1dLGdkOltbYHgxYCxgKi8gdyBhZGoxIDEwMDAwMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgeDFgLGB0YF0sW2BsYCxgeDFgLGBiYF0sW2BsYCxgcmAsYGJgXV19XX0sZWQ9e2FkajpbW2BhZGoxYCxgdmFsIDUwMDAwYF0sW2BhZGoyYCxgdmFsIDUwMDAwYF1dLGdkOltbYHgxYCxgKi8gdyBhZGoxIDEwMDAwMGBdLFtgeDJgLGArLyB4MSByIDJgXSxbYHkyYCxgKi8gaCBhZGoyIDEwMDAwMGBdLFtgeTFgLGArLyB0IHkyIDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHgxYCxgdGBdLFtgbGAsYHgxYCxgeTJgXSxbYGxgLGByYCxgeTJgXSxbYGxgLGByYCxgYmBdXX1dfSx0ZD17YWRqOltbYGFkajFgLGB2YWwgNTAwMDBgXSxbYGFkajJgLGB2YWwgNTAwMDBgXSxbYGFkajNgLGB2YWwgNTAwMDBgXV0sZ2Q6W1tgeDFgLGAqLyB3IGFkajEgMTAwMDAwYF0sW2B4M2AsYCovIHcgYWRqMyAxMDAwMDBgXSxbYHgyYCxgKy8geDEgeDMgMmBdLFtgeTJgLGAqLyBoIGFkajIgMTAwMDAwYF0sW2B5MWAsYCsvIHQgeTIgMmBdLFtgeTNgLGArLyBiIHkyIDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHgxYCxgdGBdLFtgbGAsYHgxYCxgeTJgXSxbYGxgLGB4M2AsYHkyYF0sW2BsYCxgeDNgLGBiYF0sW2BsYCxgcmAsYGJgXV19XX0sbmQ9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDI1MDAwYF0sW2BhZGozYCxgdmFsIDI1MDAwYF1dLGdkOltbYGExYCxgcGluIDAgYWRqMSA1MDAwMGBdLFtgYTJgLGBwaW4gMCBhZGoyIDUwMDAwYF0sW2BhM2AsYHBpbiAwIGFkajMgNTAwMDBgXSxbYHkxYCxgKi8gc3MgYTMgMTAwMDAwYF0sW2BkeDFgLGAqLyBzcyBhMiA1MDAwMGBdLFtgeDFgLGArLSByIDAgZHgxYF0sW2BkeDNgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYHgzYCxgKy0gciAwIGR4M2BdLFtgZHgyYCxgKi8gc3MgYTEgMjAwMDAwYF0sW2B4MmAsYCstIHgzIDAgZHgyYF0sW2B4NGAsYCstIHgzIGR4MiAwYF0sW2BkeTJgLGAqLyBzcyBhMSAxMDAwMDBgXSxbYHkyYCxgKy0gYiAwIGR5MmBdLFtgeDBgLGAqLyB4NCAxIDJgXSxbYHkzYCxgKy8geTIgYiAyYF0sW2B5MTVgLGArLyB5MSBiIDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHkyYF0sW2BsYCxgeDJgLGB5MmBdLFtgbGAsYHgyYCxgeTFgXSxbYGxgLGB4MWAsYHkxYF0sW2BsYCxgeDNgLGB0YF0sW2BsYCxgcmAsYHkxYF0sW2BsYCxgeDRgLGB5MWBdLFtgbGAsYHg0YCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfV19LHJkPXthZGo6W1tgYWRqYCxgdmFsIDEyNTAwYF1dLGdkOltbYGFgLGBwaW4gMCBhZGogNTAwMDBgXSxbYHgxYCxgKi8gc3MgYSAxMDAwMDBgXSxbYHgyYCxgKy0gciAwIHgxYF0sW2B5MmAsYCstIGIgMCB4MWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4MWAsYHgxYF0sW2BsYCxgeDJgLGB4MWBdLFtgbGAsYHgyYCxgeTJgXSxbYGxgLGB4MWAsYHkyYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBsaWdodGVuTGVzc2Asc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGB4MmAsYHgxYF0sW2BsYCxgeDFgLGB4MWBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgZGFya2VuTGVzc2Asc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGBiYF0sW2BsYCxgeDFgLGB5MmBdLFtgbGAsYHgyYCxgeTJgXSxbYGxgLGByYCxgYmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbGlnaHRlbmAsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgeDFgLGB4MWBdLFtgbGAsYHgxYCxgeTJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgZGFya2VuYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgcmAsYHRgXSxbYGxgLGByYCxgYmBdLFtgbGAsYHgyYCxgeTJgXSxbYGxgLGB4MmAsYHgxYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXSxbYG1gLGB4MWAsYHgxYF0sW2BsYCxgeDJgLGB4MWBdLFtgbGAsYHgyYCxgeTJgXSxbYGxgLGB4MWAsYHkyYF0sW2BjYF0sW2BtYCxgbGAsYHRgXSxbYGxgLGB4MWAsYHgxYF0sW2BtYCxgbGAsYGJgXSxbYGxgLGB4MWAsYHkyYF0sW2BtYCxgcmAsYHRgXSxbYGxgLGB4MmAsYHgxYF0sW2BtYCxgcmAsYGJgXSxbYGxgLGB4MmAsYHkyYF1dfV19LGlkPXthZGo6W1tgYWRqMWAsYHZhbCAxMDgwMDAwMGBdLFtgYWRqMmAsYHZhbCAwYF0sW2BhZGozYCxgdmFsIDI1MDAwYF1dLGdkOltbYHN0QW5nYCxgcGluIDAgYWRqMSAyMTU5OTk5OWBdLFtgaXN0QW5nYCxgcGluIDAgYWRqMiAyMTU5OTk5OWBdLFtgYTNgLGBwaW4gMCBhZGozIDUwMDAwYF0sW2BzdzExYCxgKy0gaXN0QW5nIDAgc3RBbmdgXSxbYHN3MTJgLGArLSBzdzExIDIxNjAwMDAwIDBgXSxbYHN3QW5nYCxgPzogc3cxMSBzdzExIHN3MTJgXSxbYGlzd0FuZ2AsYCstIDAgMCBzd0FuZ2BdLFtgd3QxYCxgc2luIHdkMiBzdEFuZ2BdLFtgaHQxYCxgY29zIGhkMiBzdEFuZ2BdLFtgd3QzYCxgc2luIHdkMiBpc3RBbmdgXSxbYGh0M2AsYGNvcyBoZDIgaXN0QW5nYF0sW2BkeDFgLGBjYXQyIHdkMiBodDEgd3QxYF0sW2BkeTFgLGBzYXQyIGhkMiBodDEgd3QxYF0sW2BkeDNgLGBjYXQyIHdkMiBodDMgd3QzYF0sW2BkeTNgLGBzYXQyIGhkMiBodDMgd3QzYF0sW2B4MWAsYCstIGhjIGR4MSAwYF0sW2B5MWAsYCstIHZjIGR5MSAwYF0sW2B4M2AsYCstIGhjIGR4MyAwYF0sW2B5M2AsYCstIHZjIGR5MyAwYF0sW2BkcmAsYCovIHNzIGEzIDEwMDAwMGBdLFtgaXdkMmAsYCstIHdkMiAwIGRyYF0sW2BpaGQyYCxgKy0gaGQyIDAgZHJgXSxbYHd0MmAsYHNpbiBpd2QyIGlzdEFuZ2BdLFtgaHQyYCxgY29zIGloZDIgaXN0QW5nYF0sW2B3dDRgLGBzaW4gaXdkMiBzdEFuZ2BdLFtgaHQ0YCxgY29zIGloZDIgc3RBbmdgXSxbYGR4MmAsYGNhdDIgaXdkMiBodDIgd3QyYF0sW2BkeTJgLGBzYXQyIGloZDIgaHQyIHd0MmBdLFtgZHg0YCxgY2F0MiBpd2QyIGh0NCB3dDRgXSxbYGR5NGAsYHNhdDIgaWhkMiBodDQgd3Q0YF0sW2B4MmAsYCstIGhjIGR4MiAwYF0sW2B5MmAsYCstIHZjIGR5MiAwYF0sW2B4NGAsYCstIGhjIGR4NCAwYF0sW2B5NGAsYCstIHZjIGR5NCAwYF0sW2BzdzBgLGArLSAyMTYwMDAwMCAwIHN0QW5nYF0sW2BkYTFgLGArLSBzd0FuZyAwIHN3MGBdLFtgZzFgLGBtYXggeDEgeDJgXSxbYGcyYCxgbWF4IHgzIHg0YF0sW2BnM2AsYG1heCBnMSBnMmBdLFtgaXJgLGA/OiBkYTEgciBnM2BdLFtgc3cxYCxgKy0gY2Q0IDAgc3RBbmdgXSxbYHN3MmAsYCstIDI3MDAwMDAwIDAgc3RBbmdgXSxbYHN3M2AsYD86IHN3MSBzdzEgc3cyYF0sW2BkYTJgLGArLSBzd0FuZyAwIHN3M2BdLFtgZzVgLGBtYXggeTEgeTJgXSxbYGc2YCxgbWF4IHkzIHk0YF0sW2BnN2AsYG1heCBnNSBnNmBdLFtgaWJgLGA/OiBkYTIgYiBnN2BdLFtgc3c0YCxgKy0gY2QyIDAgc3RBbmdgXSxbYHN3NWAsYCstIDMyNDAwMDAwIDAgc3RBbmdgXSxbYHN3NmAsYD86IHN3NCBzdzQgc3c1YF0sW2BkYTNgLGArLSBzd0FuZyAwIHN3NmBdLFtgZzlgLGBtaW4geDEgeDJgXSxbYGcxMGAsYG1pbiB4MyB4NGBdLFtgZzExYCxgbWluIGc5IGcxMGBdLFtgaWxgLGA/OiBkYTMgbCBnMTFgXSxbYHN3N2AsYCstIDNjZDQgMCBzdEFuZ2BdLFtgc3c4YCxgKy0gMzc4MDAwMDAgMCBzdEFuZ2BdLFtgc3c5YCxgPzogc3c3IHN3NyBzdzhgXSxbYGRhNGAsYCstIHN3QW5nIDAgc3c5YF0sW2BnMTNgLGBtaW4geTEgeTJgXSxbYGcxNGAsYG1pbiB5MyB5NGBdLFtgZzE1YCxgbWluIGcxMyBnMTRgXSxbYGl0YCxgPzogZGE0IHQgZzE1YF0sW2B4NWAsYCsvIHgxIHg0IDJgXSxbYHk1YCxgKy8geTEgeTQgMmBdLFtgeDZgLGArLyB4MyB4MiAyYF0sW2B5NmAsYCsvIHkzIHkyIDJgXSxbYGNhbmcxYCxgKy0gc3RBbmcgMCBjZDRgXSxbYGNhbmcyYCxgKy0gaXN0QW5nIGNkNCAwYF0sW2BjYW5nM2AsYCsvIGNhbmcxIGNhbmcyIDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeDFgLGB5MWBdLFtgYWAsYHdkMmAsYGhkMmAsYHN0QW5nYCxgc3dBbmdgXSxbYGxgLGB4MmAsYHkyYF0sW2BhYCxgaXdkMmAsYGloZDJgLGBpc3RBbmdgLGBpc3dBbmdgXSxbYGNgXV19XX0sYWQ9e2FkajpbW2BhZGoxYCxgdmFsIDE4NzUwYF0sW2BhZGoyYCxgdmFsIC04MzMzYF0sW2BhZGozYCxgdmFsIDExMjUwMGBdLFtgYWRqNGAsYHZhbCAtMzgzMzNgXV0sZ2Q6W1tgeTFgLGAqLyBoIGFkajEgMTAwMDAwYF0sW2B4MWAsYCovIHcgYWRqMiAxMDAwMDBgXSxbYHkyYCxgKi8gaCBhZGozIDEwMDAwMGBdLFtgeDJgLGAqLyB3IGFkajQgMTAwMDAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDFgLGB5MWBdLFtgbGAsYHgyYCxgeTJgXV19XX0sb2Q9e2FkajpbW2BhZGoxYCxgdmFsIDE4NzUwYF0sW2BhZGoyYCxgdmFsIC04MzMzYF0sW2BhZGozYCxgdmFsIDE4NzUwYF0sW2BhZGo0YCxgdmFsIC0xNjY2N2BdLFtgYWRqNWAsYHZhbCAxMTI1MDBgXSxbYGFkajZgLGB2YWwgLTQ2NjY3YF1dLGdkOltbYHkxYCxgKi8gaCBhZGoxIDEwMDAwMGBdLFtgeDFgLGAqLyB3IGFkajIgMTAwMDAwYF0sW2B5MmAsYCovIGggYWRqMyAxMDAwMDBgXSxbYHgyYCxgKi8gdyBhZGo0IDEwMDAwMGBdLFtgeTNgLGAqLyBoIGFkajUgMTAwMDAwYF0sW2B4M2AsYCovIHcgYWRqNiAxMDAwMDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4MWAsYHkxYF0sW2BsYCxgeDJgLGB5MmBdLFtgbGAsYHgzYCxgeTNgXV19XX0sc2Q9e2FkajpbW2BhZGoxYCxgdmFsIDE4NzUwYF0sW2BhZGoyYCxgdmFsIC04MzMzYF0sW2BhZGozYCxgdmFsIDE4NzUwYF0sW2BhZGo0YCxgdmFsIC0xNjY2N2BdLFtgYWRqNWAsYHZhbCAxMDAwMDBgXSxbYGFkajZgLGB2YWwgLTE2NjY3YF0sW2BhZGo3YCxgdmFsIDExMjk2M2BdLFtgYWRqOGAsYHZhbCAtODMzM2BdXSxnZDpbW2B5MWAsYCovIGggYWRqMSAxMDAwMDBgXSxbYHgxYCxgKi8gdyBhZGoyIDEwMDAwMGBdLFtgeTJgLGAqLyBoIGFkajMgMTAwMDAwYF0sW2B4MmAsYCovIHcgYWRqNCAxMDAwMDBgXSxbYHkzYCxgKi8gaCBhZGo1IDEwMDAwMGBdLFtgeDNgLGAqLyB3IGFkajYgMTAwMDAwYF0sW2B5NGAsYCovIGggYWRqNyAxMDAwMDBgXSxbYHg0YCxgKi8gdyBhZGo4IDEwMDAwMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHgxYCxgeTFgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDNgLGB5M2BdLFtgbGAsYHg0YCxgeTRgXV19XX0sY2Q9e2FkajpbW2BhZGpgLGB2YWwgODMzM2BdXSxnZDpbW2BhYCxgcGluIDAgYWRqIDI1MDAwYF0sW2B4MWAsYCovIHNzIGEgMTAwMDAwYF0sW2B4MmAsYCovIHNzIGEgNTAwMDBgXSxbYHgzYCxgKy0gciAwIHgyYF0sW2B4NGAsYCstIHIgMCB4MWBdLFtgeTJgLGArLSB2YyAwIHgxYF0sW2B5M2AsYCstIHZjIHgxIDBgXSxbYHk0YCxgKy0gYiAwIHgxYF0sW2BpdGAsYCovIHgxIDI5Mjg5IDEwMDAwMGBdLFtgaWxgLGArLSB4MSBpdCAwYF0sW2BpcmAsYCstIHIgMCBpbGBdLFtgaWJgLGArLSBiIDAgaXRgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDJgLGBiYF0sW2BhYCxgeDFgLGB4MWAsYGNkNGAsYGNkNGBdLFtgbGAsYHgxYCxgeTNgXSxbYGFgLGB4MWAsYHgxYCxgMGAsYC01NDAwMDAwYF0sW2BhYCxgeDFgLGB4MWAsYGNkNGAsYC01NDAwMDAwYF0sW2BsYCxgeDFgLGB4MWBdLFtgYWAsYHgxYCxgeDFgLGBjZDJgLGBjZDRgXSxbYGxgLGB4M2AsYHRgXSxbYGFgLGB4MWAsYHgxYCxgM2NkNGAsYGNkNGBdLFtgbGAsYHg0YCxgeTJgXSxbYGFgLGB4MWAsYHgxYCxgY2QyYCxgLTU0MDAwMDBgXSxbYGFgLGB4MWAsYHgxYCxgM2NkNGAsYC01NDAwMDAwYF0sW2BsYCxgeDRgLGB5NGBdLFtgYWAsYHgxYCxgeDFgLGAwYCxgY2Q0YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeDJgLGBiYF0sW2BhYCxgeDFgLGB4MWAsYGNkNGAsYGNkNGBdLFtgbGAsYHgxYCxgeTNgXSxbYGFgLGB4MWAsYHgxYCxgMGAsYC01NDAwMDAwYF0sW2BhYCxgeDFgLGB4MWAsYGNkNGAsYC01NDAwMDAwYF0sW2BsYCxgeDFgLGB4MWBdLFtgYWAsYHgxYCxgeDFgLGBjZDJgLGBjZDRgXSxbYG1gLGB4M2AsYHRgXSxbYGFgLGB4MWAsYHgxYCxgM2NkNGAsYGNkNGBdLFtgbGAsYHg0YCxgeTJgXSxbYGFgLGB4MWAsYHgxYCxgY2QyYCxgLTU0MDAwMDBgXSxbYGFgLGB4MWAsYHgxYCxgM2NkNGAsYC01NDAwMDAwYF0sW2BsYCxgeDRgLGB5NGBdLFtgYWAsYHgxYCxgeDFgLGAwYCxgY2Q0YF1dfV19LGxkPXthZGo6W1tgYWRqYCxgdmFsIDE2NjY3YF1dLGdkOltbYGFgLGBwaW4gMCBhZGogNTAwMDBgXSxbYHgxYCxgKi8gc3MgYSAxMDAwMDBgXSxbYHgyYCxgKy0gciAwIHgxYF0sW2B5MmAsYCstIGIgMCB4MWBdLFtgaWxgLGAqLyB4MSAyOTI4OSAxMDAwMDBgXSxbYGlyYCxgKy0gciAwIGlsYF0sW2BpYmAsYCstIGIgMCBpbGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgeDFgXSxbYGFgLGB4MWAsYHgxYCxgY2QyYCxgY2Q0YF0sW2BsYCxgeDJgLGB0YF0sW2BhYCxgeDFgLGB4MWAsYDNjZDRgLGBjZDRgXSxbYGxgLGByYCxgeTJgXSxbYGFgLGB4MWAsYHgxYCxgMGAsYGNkNGBdLFtgbGAsYHgxYCxgYmBdLFtgYWAsYHgxYCxgeDFgLGBjZDRgLGBjZDRgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4MWAsYGJgXSxbYGFgLGB4MWAsYHgxYCxgY2Q0YCxgY2Q0YF0sW2BsYCxgbGAsYHgxYF0sW2BhYCxgeDFgLGB4MWAsYGNkMmAsYGNkNGBdLFtgbWAsYHgyYCxgdGBdLFtgYWAsYHgxYCxgeDFgLGAzY2Q0YCxgY2Q0YF0sW2BsYCxgcmAsYHkyYF0sW2BhYCxgeDFgLGB4MWAsYDBgLGBjZDRgXV19XX0sdWQ9e2FkajpbW2BhZGoxYCxgdmFsIDE4NzUwYF0sW2BhZGoyYCxgdmFsIC04MzMzYF0sW2BhZGozYCxgdmFsIDExMjUwMGBdLFtgYWRqNGAsYHZhbCAtMzgzMzNgXV0sZ2Q6W1tgeTFgLGAqLyBoIGFkajEgMTAwMDAwYF0sW2B4MWAsYCovIHcgYWRqMiAxMDAwMDBgXSxbYHkyYCxgKi8gaCBhZGozIDEwMDAwMGBdLFtgeDJgLGAqLyB3IGFkajQgMTAwMDAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDFgLGB5MWBdLFtgbGAsYHgyYCxgeTJgXV19XX0sZGQ9e2FkajpbW2BhZGoxYCxgdmFsIDE4NzUwYF0sW2BhZGoyYCxgdmFsIC04MzMzYF0sW2BhZGozYCxgdmFsIDE4NzUwYF0sW2BhZGo0YCxgdmFsIC0xNjY2N2BdLFtgYWRqNWAsYHZhbCAxMTI1MDBgXSxbYGFkajZgLGB2YWwgLTQ2NjY3YF1dLGdkOltbYHkxYCxgKi8gaCBhZGoxIDEwMDAwMGBdLFtgeDFgLGAqLyB3IGFkajIgMTAwMDAwYF0sW2B5MmAsYCovIGggYWRqMyAxMDAwMDBgXSxbYHgyYCxgKi8gdyBhZGo0IDEwMDAwMGBdLFtgeTNgLGAqLyBoIGFkajUgMTAwMDAwYF0sW2B4M2AsYCovIHcgYWRqNiAxMDAwMDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4MWAsYHkxYF0sW2BsYCxgeDJgLGB5MmBdLFtgbGAsYHgzYCxgeTNgXV19XX0sZmQ9e2FkajpbW2BhZGoxYCxgdmFsIDE4NzUwYF0sW2BhZGoyYCxgdmFsIC04MzMzYF0sW2BhZGozYCxgdmFsIDE4NzUwYF0sW2BhZGo0YCxgdmFsIC0xNjY2N2BdLFtgYWRqNWAsYHZhbCAxMDAwMDBgXSxbYGFkajZgLGB2YWwgLTE2NjY3YF0sW2BhZGo3YCxgdmFsIDExMjk2M2BdLFtgYWRqOGAsYHZhbCAtODMzM2BdXSxnZDpbW2B5MWAsYCovIGggYWRqMSAxMDAwMDBgXSxbYHgxYCxgKi8gdyBhZGoyIDEwMDAwMGBdLFtgeTJgLGAqLyBoIGFkajMgMTAwMDAwYF0sW2B4MmAsYCovIHcgYWRqNCAxMDAwMDBgXSxbYHkzYCxgKi8gaCBhZGo1IDEwMDAwMGBdLFtgeDNgLGAqLyB3IGFkajYgMTAwMDAwYF0sW2B5NGAsYCovIGggYWRqNyAxMDAwMDBgXSxbYHg0YCxgKi8gdyBhZGo4IDEwMDAwMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHgxYCxgeTFgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDNgLGB5M2BdLFtgbGAsYHg0YCxgeTRgXV19XX0scGQ9e2FkajpbW2BhZGpgLGB2YWwgMjUwMDBgXV0sZ2Q6W1tgbWF4QWRqYCxgKi8gNTAwMDAgaCBzc2BdLFtgYWAsYHBpbiAwIGFkaiBtYXhBZGpgXSxbYHkxYCxgKi8gc3MgYSAyMDAwMDBgXSxbYHkyYCxgKy0geTEgeTEgMGBdLFtgeTNgLGArLSBiIDAgeTFgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHkxYF0sW2BhYCxgd2QyYCxgeTFgLGBjZDJgLGAtMTA4MDAwMDBgXSxbYGxgLGByYCxgeTNgXSxbYGFgLGB3ZDJgLGB5MWAsYDBgLGBjZDJgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YGxpZ2h0ZW5gLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgeTFgXSxbYGFgLGB3ZDJgLGB5MWAsYGNkMmAsYGNkMmBdLFtgYWAsYHdkMmAsYHkxYCxgMGAsYGNkMmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHJgLGB5MWBdLFtgYWAsYHdkMmAsYHkxYCxgMGAsYGNkMmBdLFtgYWAsYHdkMmAsYHkxYCxgY2QyYCxgY2QyYF0sW2BsYCxgcmAsYHkzYF0sW2BhYCxgd2QyYCxgeTFgLGAwYCxgY2QyYF0sW2BsYCxgbGAsYHkxYF1dfV19LG1kPXthZGo6W10sZ2Q6W10scGF0aHM6W3t3OjEwLGg6MTAsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDVgLGAwYF0sW2BsYCxgNWAsYDEwYF0sW2BtYCxgMGAsYDVgXSxbYGxgLGAxMGAsYDVgXV19LHt3OjEwLGg6MTAsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAwYCxgMGBdLFtgbGAsYDBgLGAxMGBdLFtgbGAsYDEwYCxgMTBgXSxbYGxgLGAxMGAsYDBgXSxbYGNgXV19XX0saGQ9e2FkajpbXSxnZDpbXSxwYXRoczpbe3c6MTAsaDoxMCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgMGAsYDBgXSxbYGxgLGAxMGAsYDEwYF0sW2BtYCxgMGAsYDEwYF0sW2BsYCxgMTBgLGAwYF0sW2BtYCxgNWAsYDBgXSxbYGxgLGA1YCxgMTBgXV19LHt3OjEwLGg6MTAsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAwYCxgMGBdLFtgbGAsYDBgLGAxMGBdLFtgbGAsYDEwYCxgMTBgXSxbYGxgLGAxMGAsYDBgXSxbYGNgXV19XX0sZ2Q9e2FkajpbXSxnZDpbXSxwYXRoczpbe3c6MTAsaDoxMCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgMGAsYDBgXSxbYGxgLGAxMGAsYDEwYF0sW2BtYCxgMGAsYDEwYF0sW2BsYCxgMTBgLGAwYF1dfSx7dzoxMCxoOjEwLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDBgXSxbYGxgLGAwYCxgMTBgXSxbYGxgLGAxMGAsYDEwYF0sW2BsYCxgMTBgLGAwYF0sW2BjYF1dfV19LF9kPXthZGo6W1tgYWRqYCxgdmFsIDUwMDAwYF1dLGdkOltbYG1heEFkamAsYCovIDEwMDAwMCB3IHNzYF0sW2BhYCxgcGluIDAgYWRqIG1heEFkamBdLFtgeDFgLGAqLyBzcyBhIDEwMDAwMGBdLFtgeDJgLGArLSByIDAgeDFgXSxbYHgzYCxgKi8geDIgMSAyYF0sW2BkeGAsYCstIHgyIDAgeDFgXSxbYGlsYCxgPzogZHggeDEgbGBdLFtgaXJgLGA/OiBkeCB4MiByYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgeDJgLGB0YF0sW2BsYCxgcmAsYHZjYF0sW2BsYCxgeDJgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGxgLGB4MWAsYHZjYF0sW2BjYF1dfV19LHZkPXthZGo6W1tgYWRqMWAsYHZhbCAyNzAwMDAwYF0sW2BhZGoyYCxgdmFsIDE2MjAwMDAwYF1dLGdkOltbYHN0QW5nYCxgcGluIDAgYWRqMSAyMTU5OTk5OWBdLFtgZW5BbmdgLGBwaW4gMCBhZGoyIDIxNTk5OTk5YF0sW2BzdzFgLGArLSBlbkFuZyAwIHN0QW5nYF0sW2BzdzJgLGArLSBzdzEgMjE2MDAwMDAgMGBdLFtgc3dBbmdgLGA/OiBzdzEgc3cxIHN3MmBdLFtgd3QxYCxgc2luIHdkMiBzdEFuZ2BdLFtgaHQxYCxgY29zIGhkMiBzdEFuZ2BdLFtgZHgxYCxgY2F0MiB3ZDIgaHQxIHd0MWBdLFtgZHkxYCxgc2F0MiBoZDIgaHQxIHd0MWBdLFtgd3QyYCxgc2luIHdkMiBlbkFuZ2BdLFtgaHQyYCxgY29zIGhkMiBlbkFuZ2BdLFtgZHgyYCxgY2F0MiB3ZDIgaHQyIHd0MmBdLFtgZHkyYCxgc2F0MiBoZDIgaHQyIHd0MmBdLFtgeDFgLGArLSBoYyBkeDEgMGBdLFtgeTFgLGArLSB2YyBkeTEgMGBdLFtgeDJgLGArLSBoYyBkeDIgMGBdLFtgeTJgLGArLSB2YyBkeTIgMGBdLFtgeDNgLGArLyB4MSB4MiAyYF0sW2B5M2AsYCsvIHkxIHkyIDJgXSxbYG1pZEFuZzBgLGAqLyBzd0FuZyAxIDJgXSxbYG1pZEFuZ2AsYCstIHN0QW5nIG1pZEFuZzAgY2QyYF0sW2BpZHhgLGBjb3Mgd2QyIDI3MDAwMDBgXSxbYGlkeWAsYHNpbiBoZDIgMjcwMDAwMGBdLFtgaWxgLGArLSBoYyAwIGlkeGBdLFtgaXJgLGArLSBoYyBpZHggMGBdLFtgaXRgLGArLSB2YyAwIGlkeWBdLFtgaWJgLGArLSB2YyBpZHkgMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4MWAsYHkxYF0sW2BhYCxgd2QyYCxgaGQyYCxgc3RBbmdgLGBzd0FuZ2BdLFtgY2BdXX1dfSx5ZD17YWRqOltbYGFkajFgLGB2YWwgMTI1MDBgXSxbYGFkajJgLGB2YWwgMTE0MjMxOWBdLFtgYWRqM2AsYHZhbCAyMDQ1NzY4MWBdLFtgYWRqNGAsYHZhbCAxMDgwMDAwMGBdLFtgYWRqNWAsYHZhbCAxMjUwMGBdXSxnZDpbW2BhNWAsYHBpbiAwIGFkajUgMjUwMDBgXSxbYG1heEFkajFgLGAqLyBhNSAyIDFgXSxbYGExYCxgcGluIDAgYWRqMSBtYXhBZGoxYF0sW2BlbkFuZ2AsYHBpbiAxIGFkajMgMjE1OTk5OTlgXSxbYHN0QW5nYCxgcGluIDAgYWRqNCAyMTU5OTk5OWBdLFtgdGhgLGAqLyBzcyBhMSAxMDAwMDBgXSxbYHRoaGAsYCovIHNzIGE1IDEwMDAwMGBdLFtgdGgyYCxgKi8gdGggMSAyYF0sW2BydzFgLGArLSB3ZDIgdGgyIHRoaGBdLFtgcmgxYCxgKy0gaGQyIHRoMiB0aGhgXSxbYHJ3MmAsYCstIHJ3MSAwIHRoYF0sW2ByaDJgLGArLSByaDEgMCB0aGBdLFtgcnczYCxgKy0gcncyIHRoMiAwYF0sW2ByaDNgLGArLSByaDIgdGgyIDBgXSxbYHd0SGAsYHNpbiBydzMgZW5BbmdgXSxbYGh0SGAsYGNvcyByaDMgZW5BbmdgXSxbYGR4SGAsYGNhdDIgcnczIGh0SCB3dEhgXSxbYGR5SGAsYHNhdDIgcmgzIGh0SCB3dEhgXSxbYHhIYCxgKy0gaGMgZHhIIDBgXSxbYHlIYCxgKy0gdmMgZHlIIDBgXSxbYHJJYCxgbWluIHJ3MiByaDJgXSxbYHUxYCxgKi8gZHhIIGR4SCAxYF0sW2B1MmAsYCovIGR5SCBkeUggMWBdLFtgdTNgLGAqLyBySSBySSAxYF0sW2B1NGAsYCstIHUxIDAgdTNgXSxbYHU1YCxgKy0gdTIgMCB1M2BdLFtgdTZgLGAqLyB1NCB1NSB1MWBdLFtgdTdgLGAqLyB1NiAxIHUyYF0sW2B1OGAsYCstIDEgMCB1N2BdLFtgdTlgLGBzcXJ0IHU4YF0sW2B1MTBgLGAqLyB1NCAxIGR4SGBdLFtgdTExYCxgKi8gdTEwIDEgZHlIYF0sW2B1MTJgLGArLyAxIHU5IHUxMWBdLFtgdTEzYCxgYXQyIDEgdTEyYF0sW2B1MTRgLGArLSB1MTMgMjE2MDAwMDAgMGBdLFtgdTE1YCxgPzogdTEzIHUxMyB1MTRgXSxbYHUxNmAsYCstIHUxNSAwIGVuQW5nYF0sW2B1MTdgLGArLSB1MTYgMjE2MDAwMDAgMGBdLFtgdTE4YCxgPzogdTE2IHUxNiB1MTdgXSxbYHUxOWAsYCstIHUxOCAwIGNkMmBdLFtgdTIwYCxgKy0gdTE4IDAgMjE2MDAwMDBgXSxbYHUyMWAsYD86IHUxOSB1MjAgdTE4YF0sW2BtYXhBbmdgLGBhYnMgdTIxYF0sW2BhQW5nYCxgcGluIDAgYWRqMiBtYXhBbmdgXSxbYHB0QW5nYCxgKy0gZW5BbmcgYUFuZyAwYF0sW2B3dEFgLGBzaW4gcnczIHB0QW5nYF0sW2BodEFgLGBjb3MgcmgzIHB0QW5nYF0sW2BkeEFgLGBjYXQyIHJ3MyBodEEgd3RBYF0sW2BkeUFgLGBzYXQyIHJoMyBodEEgd3RBYF0sW2B4QWAsYCstIGhjIGR4QSAwYF0sW2B5QWAsYCstIHZjIGR5QSAwYF0sW2B3dEVgLGBzaW4gcncxIHN0QW5nYF0sW2BodEVgLGBjb3MgcmgxIHN0QW5nYF0sW2BkeEVgLGBjYXQyIHJ3MSBodEUgd3RFYF0sW2BkeUVgLGBzYXQyIHJoMSBodEUgd3RFYF0sW2B4RWAsYCstIGhjIGR4RSAwYF0sW2B5RWAsYCstIHZjIGR5RSAwYF0sW2BkeEdgLGBjb3MgdGhoIHB0QW5nYF0sW2BkeUdgLGBzaW4gdGhoIHB0QW5nYF0sW2B4R2AsYCstIHhIIGR4RyAwYF0sW2B5R2AsYCstIHlIIGR5RyAwYF0sW2BkeEJgLGBjb3MgdGhoIHB0QW5nYF0sW2BkeUJgLGBzaW4gdGhoIHB0QW5nYF0sW2B4QmAsYCstIHhIIDAgZHhCIDBgXSxbYHlCYCxgKy0geUggMCBkeUIgMGBdLFtgc3gxYCxgKy0geEIgMCBoY2BdLFtgc3kxYCxgKy0geUIgMCB2Y2BdLFtgc3gyYCxgKy0geEcgMCBoY2BdLFtgc3kyYCxgKy0geUcgMCB2Y2BdLFtgck9gLGBtaW4gcncxIHJoMWBdLFtgeDFPYCxgKi8gc3gxIHJPIHJ3MWBdLFtgeTFPYCxgKi8gc3kxIHJPIHJoMWBdLFtgeDJPYCxgKi8gc3gyIHJPIHJ3MWBdLFtgeTJPYCxgKi8gc3kyIHJPIHJoMWBdLFtgZHhPYCxgKy0geDJPIDAgeDFPYF0sW2BkeU9gLGArLSB5Mk8gMCB5MU9gXSxbYGRPYCxgbW9kIGR4TyBkeU8gMGBdLFtgcTFgLGAqLyB4MU8geTJPIDFgXSxbYHEyYCxgKi8geDJPIHkxTyAxYF0sW2BET2AsYCstIHExIDAgcTJgXSxbYHEzYCxgKi8gck8gck8gMWBdLFtgcTRgLGAqLyBkTyBkTyAxYF0sW2BxNWAsYCovIHEzIHE0IDFgXSxbYHE2YCxgKi8gRE8gRE8gMWBdLFtgcTdgLGArLSBxNSAwIHE2YF0sW2BxOGAsYG1heCBxNyAwYF0sW2BzZGVsT2AsYHNxcnQgcThgXSxbYG5keU9gLGAqLyBkeU8gLTEgMWBdLFtgc2R5T2AsYD86IG5keU8gLTEgMWBdLFtgcTlgLGAqLyBzZHlPIGR4TyAxYF0sW2BxMTBgLGAqLyBxOSBzZGVsTyAxYF0sW2BxMTFgLGAqLyBETyBkeU8gMWBdLFtgZHhGMWAsYCsvIHExMSBxMTAgcTRgXSxbYHExMmAsYCstIHExMSAwIHExMGBdLFtgZHhGMmAsYCovIHExMiAxIHE0YF0sW2BhZHlPYCxgYWJzIGR5T2BdLFtgcTEzYCxgKi8gYWR5TyBzZGVsTyAxYF0sW2BxMTRgLGAqLyBETyBkeE8gLTFgXSxbYGR5RjFgLGArLyBxMTQgcTEzIHE0YF0sW2BxMTVgLGArLSBxMTQgMCBxMTNgXSxbYGR5RjJgLGAqLyBxMTUgMSBxNGBdLFtgcTE2YCxgKy0geDJPIDAgZHhGMWBdLFtgcTE3YCxgKy0geDJPIDAgZHhGMmBdLFtgcTE4YCxgKy0geTJPIDAgZHlGMWBdLFtgcTE5YCxgKy0geTJPIDAgZHlGMmBdLFtgcTIwYCxgbW9kIHExNiBxMTggMGBdLFtgcTIxYCxgbW9kIHExNyBxMTkgMGBdLFtgcTIyYCxgKy0gcTIxIDAgcTIwYF0sW2BkeEZgLGA/OiBxMjIgZHhGMSBkeEYyYF0sW2BkeUZgLGA/OiBxMjIgZHlGMSBkeUYyYF0sW2BzZHhGYCxgKi8gZHhGIHJ3MSByT2BdLFtgc2R5RmAsYCovIGR5RiByaDEgck9gXSxbYHhGYCxgKy0gaGMgc2R4RiAwYF0sW2B5RmAsYCstIHZjIHNkeUYgMGBdLFtgeDFJYCxgKi8gc3gxIHJJIHJ3MmBdLFtgeTFJYCxgKi8gc3kxIHJJIHJoMmBdLFtgeDJJYCxgKi8gc3gyIHJJIHJ3MmBdLFtgeTJJYCxgKi8gc3kyIHJJIHJoMmBdLFtgZHhJYCxgKy0geDJJIDAgeDFJYF0sW2BkeUlgLGArLSB5MkkgMCB5MUlgXSxbYGRJYCxgbW9kIGR4SSBkeUkgMGBdLFtgdjFgLGAqLyB4MUkgeTJJIDFgXSxbYHYyYCxgKi8geDJJIHkxSSAxYF0sW2BESWAsYCstIHYxIDAgdjJgXSxbYHYzYCxgKi8gckkgckkgMWBdLFtgdjRgLGAqLyBkSSBkSSAxYF0sW2B2NWAsYCovIHYzIHY0IDFgXSxbYHY2YCxgKi8gREkgREkgMWBdLFtgdjdgLGArLSB2NSAwIHY2YF0sW2B2OGAsYG1heCB2NyAwYF0sW2BzZGVsSWAsYHNxcnQgdjhgXSxbYHY5YCxgKi8gc2R5TyBkeEkgMWBdLFtgdjEwYCxgKi8gdjkgc2RlbEkgMWBdLFtgdjExYCxgKi8gREkgZHlJIDFgXSxbYGR4QzFgLGArLyB2MTEgdjEwIHY0YF0sW2B2MTJgLGArLSB2MTEgMCB2MTBgXSxbYGR4QzJgLGAqLyB2MTIgMSB2NGBdLFtgYWR5SWAsYGFicyBkeUlgXSxbYHYxM2AsYCovIGFkeUkgc2RlbEkgMWBdLFtgdjE0YCxgKi8gREkgZHhJIC0xYF0sW2BkeUMxYCxgKy8gdjE0IHYxMyB2NGBdLFtgdjE1YCxgKy0gdjE0IDAgdjEzYF0sW2BkeUMyYCxgKi8gdjE1IDEgdjRgXSxbYHYxNmAsYCstIHgxSSAwIGR4QzFgXSxbYHYxN2AsYCstIHgxSSAwIGR4QzJgXSxbYHYxOGAsYCstIHkxSSAwIGR5QzFgXSxbYHYxOWAsYCstIHkxSSAwIGR5QzJgXSxbYHYyMGAsYG1vZCB2MTYgdjE4IDBgXSxbYHYyMWAsYG1vZCB2MTcgdjE5IDBgXSxbYHYyMmAsYCstIHYyMSAwIHYyMGBdLFtgZHhDYCxgPzogdjIyIGR4QzEgZHhDMmBdLFtgZHlDYCxgPzogdjIyIGR5QzEgZHlDMmBdLFtgc2R4Q2AsYCovIGR4QyBydzIgcklgXSxbYHNkeUNgLGAqLyBkeUMgcmgyIHJJYF0sW2B4Q2AsYCstIGhjIHNkeEMgMGBdLFtgeUNgLGArLSB2YyBzZHlDIDBgXSxbYGlzdDBgLGBhdDIgc2R4QyBzZHlDYF0sW2Bpc3QxYCxgKy0gaXN0MCAyMTYwMDAwMCAwYF0sW2Bpc3RBbmdgLGA/OiBpc3QwIGlzdDAgaXN0MWBdLFtgaXN3MWAsYCstIHN0QW5nIDAgaXN0QW5nYF0sW2Bpc3cyYCxgKy0gaXN3MSAwIDIxNjAwMDAwYF0sW2Bpc3dBbmdgLGA/OiBpc3cxIGlzdzIgaXN3MWBdLFtgcDFgLGArLSB4RiAwIHhDYF0sW2BwMmAsYCstIHlGIDAgeUNgXSxbYHAzYCxgbW9kIHAxIHAyIDBgXSxbYHA0YCxgKi8gcDMgMSAyYF0sW2BwNWAsYCstIHA0IDAgdGhoYF0sW2B4R3BgLGA/OiBwNSB4RiB4R2BdLFtgeUdwYCxgPzogcDUgeUYgeUdgXSxbYHhCcGAsYD86IHA1IHhDIHhCYF0sW2B5QnBgLGA/OiBwNSB5QyB5QmBdLFtgZW4wYCxgYXQyIHNkeEYgc2R5RmBdLFtgZW4xYCxgKy0gZW4wIDIxNjAwMDAwIDBgXSxbYGVuMmAsYD86IGVuMCBlbjAgZW4xYF0sW2BzdzBgLGArLSBlbjIgMCBzdEFuZ2BdLFtgc3cxYCxgKy0gc3cwIDIxNjAwMDAwIDBgXSxbYHN3QW5nYCxgPzogc3cwIHN3MCBzdzFgXSxbYHd0SWAsYHNpbiBydzMgc3RBbmdgXSxbYGh0SWAsYGNvcyByaDMgc3RBbmdgXSxbYGR4SWAsYGNhdDIgcnczIGh0SSB3dElgXSxbYGR5SWAsYHNhdDIgcmgzIGh0SSB3dElgXSxbYHhJYCxgKy0gaGMgZHhJIDBgXSxbYHlJYCxgKy0gdmMgZHlJIDBgXSxbYGFJYCxgKy0gc3RBbmcgMCBjZDRgXSxbYGFBYCxgKy0gcHRBbmcgY2Q0IDBgXSxbYGFCYCxgKy0gcHRBbmcgY2QyIDBgXSxbYGlkeGAsYGNvcyBydzEgMjcwMDAwMGBdLFtgaWR5YCxgc2luIHJoMSAyNzAwMDAwYF0sW2BpbGAsYCstIGhjIDAgaWR4YF0sW2BpcmAsYCstIGhjIGlkeCAwYF0sW2BpdGAsYCstIHZjIDAgaWR5YF0sW2BpYmAsYCstIHZjIGlkeSAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHhFYCxgeUVgXSxbYGFgLGBydzFgLGByaDFgLGBzdEFuZ2AsYHN3QW5nYF0sW2BsYCxgeEdwYCxgeUdwYF0sW2BsYCxgeEFgLGB5QWBdLFtgbGAsYHhCcGAsYHlCcGBdLFtgbGAsYHhDYCxgeUNgXSxbYGFgLGBydzJgLGByaDJgLGBpc3RBbmdgLGBpc3dBbmdgXSxbYGNgXV19XX0sYmQ9e2FkajpbXSxnZDpbW2BpbGAsYCovIHcgMjk3NyAyMTYwMGBdLFtgaXRgLGAqLyBoIDMyNjIgMjE2MDBgXSxbYGlyYCxgKi8gdyAxNzA4NyAyMTYwMGBdLFtgaWJgLGAqLyBoIDE3MzM3IDIxNjAwYF0sW2BnMjdgLGAqLyB3IDY3IDIxNjAwYF0sW2BnMjhgLGAqLyBoIDIxNTc3IDIxNjAwYF0sW2BnMjlgLGAqLyB3IDIxNTgyIDIxNjAwYF0sW2BnMzBgLGAqLyBoIDEyMzUgMjE2MDBgXV0scGF0aHM6W3t3OjQzMjAwLGg6NDMyMDAsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAzOTAwYCxgMTQzNzBgXSxbYGFgLGA2NzUzYCxgOTE5MGAsYC0xMTQyOTI0OWAsYDc0MjY4MzJgXSxbYGFgLGA1MzMzYCxgNzI2N2AsYC04NjQ2MTQzYCxgNTM5NjcxNGBdLFtgYWAsYDQzNjVgLGA1OTQ1YCxgLTg3NDg0NzVgLGA1OTgzMzgxYF0sW2BhYCxgNDg1N2AsYDY1OTVgLGAtNzg1OTE2NGAsYDcwMzQ1MDRgXSxbYGFgLGA1MzMzYCxgNzI3M2AsYC00NzIyNTMzYCxgNjU0MTYxNWBdLFtgYWAsYDY3NzVgLGA5MjIwYCxgLTI3NzYwMzVgLGA3ODE2MTQwYF0sW2BhYCxgNTc4NWAsYDc4NjdgLGAzNzUwMWAsYDY4NDIwMDBgXSxbYGFgLGA2NzUyYCxgOTIxNWAsYDEzNDcwOTZgLGA2OTEwMzUzYF0sW2BhYCxgNzcyMGAsYDEwNTQzYCxgMzk3NDU1OGAsYDQ1NDI2NjFgXSxbYGFgLGA0MzYwYCxgNTkxOGAsYC0xNjQ5NjUyNWAsYDg4MDQxMzRgXSxbYGFgLGA0MzQ1YCxgNTk0NWAsYC0xNDgwOTcxMGAsYDkxNTExMzFgXSxbYGNgXV19LHt3OjQzMjAwLGg6NDMyMDAsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDQ2OTNgLGAyNjE3N2BdLFtgYWAsYDQzNDVgLGA1OTQ1YCxgNTIwNDUyMGAsYDE1ODU3NzBgXSxbYG1gLGA2OTI4YCxgMzQ4OTlgXSxbYGFgLGA0MzYwYCxgNTkxOGAsYDQ0MTY2MjhgLGA2ODY4NDhgXSxbYG1gLGAxNjQ3OGAsYDM5MDkwYF0sW2BhYCxgNjc1MmAsYDkyMTVgLGA4MjU3NDQ5YCxgODQ0ODY2YF0sW2BtYCxgMjg4MjdgLGAzNDc1MWBdLFtgYWAsYDY3NTJgLGA5MjE1YCxgMzg3MTk2YCxgOTU5OTAxYF0sW2BtYCxgMzQxMjlgLGAyMjk1NGBdLFtgYWAsYDU3ODVgLGA3ODY3YCxgLTQyMTc1NDFgLGA0MjU1MDQyYF0sW2BtYCxgNDE3OThgLGAxNTM1NGBdLFtgYWAsYDUzMzNgLGA3MjczYCxgMTgxOTA4MmAsYDE2NjUwOTBgXSxbYG1gLGAzODMyNGAsYDU0MjZgXSxbYGFgLGA0ODU3YCxgNjU5NWAsYC04MjQ2NjBgLGA4OTE1MzRgXSxbYG1gLGAyOTA3OGAsYDM5NTJgXSxbYGFgLGA0ODU3YCxgNjU5NWAsYC04OTUwODg3YCxgMTA5MTcyMmBdLFtgbWAsYDIyMTQxYCxgNDcyMGBdLFtgYWAsYDQzNjVgLGA1OTQ1YCxgLTk4MDk2NTZgLGAxMDYxMTgxYF0sW2BtYCxgMTQwMDBgLGA1MTkyYF0sW2BhYCxgNjc1M2AsYDkxOTBgLGAtNDAwMjQxN2AsYDczOTE2MWBdLFtgbWAsYDQxMjdgLGAxNTc4OWBdLFtgYWAsYDY3NTNgLGA5MTkwYCxgOTQ1OTI2MWAsYDcxMTQ5MGBdXX1dfSx4ZD17YWRqOltbYGFkajFgLGB2YWwgLTIwODMzYF0sW2BhZGoyYCxgdmFsIDYyNTAwYF1dLGdkOltbYGR4UG9zYCxgKi8gdyBhZGoxIDEwMDAwMGBdLFtgZHlQb3NgLGAqLyBoIGFkajIgMTAwMDAwYF0sW2B4UG9zYCxgKy0gaGMgZHhQb3MgMGBdLFtgeVBvc2AsYCstIHZjIGR5UG9zIDBgXSxbYGh0YCxgY2F0MiBoZDIgZHhQb3MgZHlQb3NgXSxbYHd0YCxgc2F0MiB3ZDIgZHhQb3MgZHlQb3NgXSxbYGcyYCxgY2F0MiB3ZDIgaHQgd3RgXSxbYGczYCxgc2F0MiBoZDIgaHQgd3RgXSxbYGc0YCxgKy0gaGMgZzIgMGBdLFtgZzVgLGArLSB2YyBnMyAwYF0sW2BnNmAsYCstIGc0IDAgeFBvc2BdLFtgZzdgLGArLSBnNSAwIHlQb3NgXSxbYGc4YCxgbW9kIGc2IGc3IDBgXSxbYGc5YCxgKi8gc3MgNjYwMCAyMTYwMGBdLFtgZzEwYCxgKy0gZzggMCBnOWBdLFtgZzExYCxgKi8gZzEwIDEgM2BdLFtgZzEyYCxgKi8gc3MgMTgwMCAyMTYwMGBdLFtgZzEzYCxgKy0gZzExIGcxMiAwYF0sW2BnMTRgLGAqLyBnMTMgZzYgZzhgXSxbYGcxNWAsYCovIGcxMyBnNyBnOGBdLFtgZzE2YCxgKy0gZzE0IHhQb3MgMGBdLFtgZzE3YCxgKy0gZzE1IHlQb3MgMGBdLFtgZzE4YCxgKi8gc3MgNDgwMCAyMTYwMGBdLFtgZzE5YCxgKi8gZzExIDIgMWBdLFtgZzIwYCxgKy0gZzE4IGcxOSAwYF0sW2BnMjFgLGAqLyBnMjAgZzYgZzhgXSxbYGcyMmAsYCovIGcyMCBnNyBnOGBdLFtgZzIzYCxgKy0gZzIxIHhQb3MgMGBdLFtgZzI0YCxgKy0gZzIyIHlQb3MgMGBdLFtgZzI1YCxgKi8gc3MgMTIwMCAyMTYwMGBdLFtgZzI2YCxgKi8gc3MgNjAwIDIxNjAwYF0sW2B4MjNgLGArLSB4UG9zIGcyNiAwYF0sW2B4MjRgLGArLSBnMTYgZzI1IDBgXSxbYHgyNWAsYCstIGcyMyBnMTIgMGBdLFtgaWxgLGAqLyB3IDI5NzcgMjE2MDBgXSxbYGl0YCxgKi8gaCAzMjYyIDIxNjAwYF0sW2BpcmAsYCovIHcgMTcwODcgMjE2MDBgXSxbYGliYCxgKi8gaCAxNzMzNyAyMTYwMGBdLFtgZzI3YCxgKi8gdyA2NyAyMTYwMGBdLFtgZzI4YCxgKi8gaCAyMTU3NyAyMTYwMGBdLFtgZzI5YCxgKi8gdyAyMTU4MiAyMTYwMGBdLFtgZzMwYCxgKi8gaCAxMjM1IDIxNjAwYF0sW2BwYW5nYCxgYXQyIGR4UG9zIGR5UG9zYF1dLHBhdGhzOlt7dzo0MzIwMCxoOjQzMjAwLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMzkwMGAsYDE0MzcwYF0sW2BhYCxgNjc1M2AsYDkxOTBgLGAtMTE0MjkyNDlgLGA3NDI2ODMyYF0sW2BhYCxgNTMzM2AsYDcyNjdgLGAtODY0NjE0M2AsYDUzOTY3MTRgXSxbYGFgLGA0MzY1YCxgNTk0NWAsYC04NzQ4NDc1YCxgNTk4MzM4MWBdLFtgYWAsYDQ4NTdgLGA2NTk1YCxgLTc4NTkxNjRgLGA3MDM0NTA0YF0sW2BhYCxgNTMzM2AsYDcyNzNgLGAtNDcyMjUzM2AsYDY1NDE2MTVgXSxbYGFgLGA2Nzc1YCxgOTIyMGAsYC0yNzc2MDM1YCxgNzgxNjE0MGBdLFtgYWAsYDU3ODVgLGA3ODY3YCxgMzc1MDFgLGA2ODQyMDAwYF0sW2BhYCxgNjc1MmAsYDkyMTVgLGAxMzQ3MDk2YCxgNjkxMDM1M2BdLFtgYWAsYDc3MjBgLGAxMDU0M2AsYDM5NzQ1NThgLGA0NTQyNjYxYF0sW2BhYCxgNDM2MGAsYDU5MThgLGAtMTY0OTY1MjVgLGA4ODA0MTM0YF0sW2BhYCxgNDM0NWAsYDU5NDVgLGAtMTQ4MDk3MTBgLGA5MTUxMTMxYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHgyM2AsYHlQb3NgXSxbYGFgLGBnMjZgLGBnMjZgLGAwYCxgMjE2MDAwMDBgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeDI0YCxgZzE3YF0sW2BhYCxgZzI1YCxgZzI1YCxgMGAsYDIxNjAwMDAwYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHgyNWAsYGcyNGBdLFtgYWAsYGcxMmAsYGcxMmAsYDBgLGAyMTYwMDAwMGBdLFtgY2BdXX0se3c6NDMyMDAsaDo0MzIwMCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgNDY5M2AsYDI2MTc3YF0sW2BhYCxgNDM0NWAsYDU5NDVgLGA1MjA0NTIwYCxgMTU4NTc3MGBdLFtgbWAsYDY5MjhgLGAzNDg5OWBdLFtgYWAsYDQzNjBgLGA1OTE4YCxgNDQxNjYyOGAsYDY4Njg0OGBdLFtgbWAsYDE2NDc4YCxgMzkwOTBgXSxbYGFgLGA2NzUyYCxgOTIxNWAsYDgyNTc0NDlgLGA4NDQ4NjZgXSxbYG1gLGAyODgyN2AsYDM0NzUxYF0sW2BhYCxgNjc1MmAsYDkyMTVgLGAzODcxOTZgLGA5NTk5MDFgXSxbYG1gLGAzNDEyOWAsYDIyOTU0YF0sW2BhYCxgNTc4NWAsYDc4NjdgLGAtNDIxNzU0MWAsYDQyNTUwNDJgXSxbYG1gLGA0MTc5OGAsYDE1MzU0YF0sW2BhYCxgNTMzM2AsYDcyNzNgLGAxODE5MDgyYCxgMTY2NTA5MGBdLFtgbWAsYDM4MzI0YCxgNTQyNmBdLFtgYWAsYDQ4NTdgLGA2NTk1YCxgLTgyNDY2MGAsYDg5MTUzNGBdLFtgbWAsYDI5MDc4YCxgMzk1MmBdLFtgYWAsYDQ4NTdgLGA2NTk1YCxgLTg5NTA4ODdgLGAxMDkxNzIyYF0sW2BtYCxgMjIxNDFgLGA0NzIwYF0sW2BhYCxgNDM2NWAsYDU5NDVgLGAtOTgwOTY1NmAsYDEwNjExODFgXSxbYG1gLGAxNDAwMGAsYDUxOTJgXSxbYGFgLGA2NzUzYCxgOTE5MGAsYC00MDAyNDE3YCxgNzM5MTYxYF0sW2BtYCxgNDEyN2AsYDE1Nzg5YF0sW2BhYCxgNjc1M2AsYDkxOTBgLGA5NDU5MjYxYCxgNzExNDkwYF1dfV19LFNkPXthZGo6W1tgYWRqMWAsYHZhbCA1MDAwMGBdLFtgYWRqMmAsYHZhbCA1MDAwMGBdXSxnZDpbW2BtYXhBZGoxYCxgKi8gMTAwMDAwIGggc3NgXSxbYG1heEFkajJgLGAqLyAxMDAwMDAgdyBzc2BdLFtgYTFgLGBwaW4gMCBhZGoxIG1heEFkajFgXSxbYGEyYCxgcGluIDAgYWRqMiBtYXhBZGoyYF0sW2B4MWAsYCovIHNzIGEyIDEwMDAwMGBdLFtgZHkxYCxgKi8gc3MgYTEgMTAwMDAwYF0sW2B5MWAsYCstIGIgMCBkeTFgXSxbYGN4MWAsYCovIHgxIDEgMmBdLFtgY3kxYCxgKy8geTEgYiAyYF0sW2BkYCxgKy0gdyAwIGhgXSxbYGl0YCxgPzogZCB5MSB0YF0sW2BpcmAsYD86IGQgciB4MWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHgxYCxgdGBdLFtgbGAsYHgxYCxgeTFgXSxbYGxgLGByYCxgeTFgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfV19LENkPXthZGo6W10sZ2Q6W1tgbWRgLGBtb2QgdyBoIDBgXSxbYGR4YCxgKi8gMSBtZCAyMGBdLFtgeTFgLGArLSAwIGIgZHhgXSxbYHgxYCxgKy0gMCByIGR4YF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgZHhgLGB0YF0sW2BsYCxgbGAsYGR4YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB5MWBdLFtgbGAsYGR4YCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHgxYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGR4YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHJgLGB5MWBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgeDFgLGBiYF0sW2BjYF1dfV19LHdkPXthZGo6W1tgYWRqYCxgdmFsIDI1MDAwYF1dLGdkOltbYGFgLGBwaW4gMCBhZGogMTAwMDAwYF0sW2B5MWAsYCovIHNzIGEgMTAwMDAwYF0sW2B5NGAsYCstIGIgMCB5MWBdLFtgeTJgLGAqLyB5NCAxIDJgXSxbYHkzYCxgKy8geTEgYiAyYF0sW2B4NGAsYCstIHIgMCB5MWBdLFtgeDJgLGAqLyB4NCAxIDJgXSxbYHgzYCxgKy8geTEgciAyYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB5MWBdLFtgbGAsYHg0YCxgeTFgXSxbYGxgLGB4NGAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgZGFya2VuTGVzc2Asc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHg0YCxgeTFgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGB5NGBdLFtgbGAsYHg0YCxgYmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbGlnaHRlbkxlc3NgLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgeTFgXSxbYGxgLGB5MWAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHg0YCxgeTFgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgeTFgXSxbYGxgLGB5MWAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGB5NGBdLFtgbGAsYHg0YCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF0sW2BtYCxgbGAsYHkxYF0sW2BsYCxgeDRgLGB5MWBdLFtgbGAsYHJgLGB0YF0sW2BtYCxgeDRgLGB5MWBdLFtgbGAsYHg0YCxgYmBdXX1dfSxUZD17YWRqOltdLGdkOltdLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYENgLGB3ZDJgLGB0YCxgcmAsYGhkMmAsYHJgLGBiYF1dfV19LEVkPXthZGo6W1tgYWRqMWAsYHZhbCA1MDAwMGBdXSxnZDpbW2B4MmAsYCovIHcgYWRqMSAxMDAwMDBgXSxbYHgxYCxgKy8gbCB4MiAyYF0sW2B4M2AsYCsvIHIgeDIgMmBdLFtgeTNgLGAqLyBoIDMgNGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BDYCxgeDFgLGB0YCxgeDJgLGBoZDRgLGB4MmAsYHZjYF0sW2BDYCxgeDJgLGB5M2AsYHgzYCxgYmAsYHJgLGBiYF1dfV19LERkPXthZGo6W1tgYWRqMWAsYHZhbCA1MDAwMGBdLFtgYWRqMmAsYHZhbCA1MDAwMGBdXSxnZDpbW2B4MmAsYCovIHcgYWRqMSAxMDAwMDBgXSxbYHgxYCxgKy8gbCB4MiAyYF0sW2B4M2AsYCsvIHIgeDIgMmBdLFtgeDRgLGArLyB4MiB4MyAyYF0sW2B4NWAsYCsvIHgzIHIgMmBdLFtgeTRgLGAqLyBoIGFkajIgMTAwMDAwYF0sW2B5MWAsYCsvIHQgeTQgMmBdLFtgeTJgLGArLyB0IHkxIDJgXSxbYHkzYCxgKy8geTEgeTQgMmBdLFtgeTVgLGArLyBiIHk0IDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgQ2AsYHgxYCxgdGAsYHgyYCxgeTJgLGB4MmAsYHkxYF0sW2BDYCxgeDJgLGB5M2AsYHg0YCxgeTRgLGB4M2AsYHk0YF0sW2BDYCxgeDVgLGB5NGAsYHJgLGB5NWAsYHJgLGBiYF1dfV19LE9kPXthZGo6W1tgYWRqMWAsYHZhbCA1MDAwMGBdLFtgYWRqMmAsYHZhbCA1MDAwMGBdLFtgYWRqM2AsYHZhbCA1MDAwMGBdXSxnZDpbW2B4M2AsYCovIHcgYWRqMSAxMDAwMDBgXSxbYHg2YCxgKi8gdyBhZGozIDEwMDAwMGBdLFtgeDFgLGArLyB4MyB4NiAyYF0sW2B4MmAsYCsvIGwgeDMgMmBdLFtgeDRgLGArLyB4MyB4MSAyYF0sW2B4NWAsYCsvIHg2IHgxIDJgXSxbYHg3YCxgKy8geDYgciAyYF0sW2B5NGAsYCovIGggYWRqMiAxMDAwMDBgXSxbYHkxYCxgKy8gdCB5NCAyYF0sW2B5MmAsYCsvIHQgeTEgMmBdLFtgeTNgLGArLyB5MSB5NCAyYF0sW2B5NWAsYCsvIGIgeTQgMmBdLFtgeTZgLGArLyB5NSB5NCAyYF0sW2B5N2AsYCsvIHk1IGIgMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BDYCxgeDJgLGB0YCxgeDNgLGB5MmAsYHgzYCxgeTFgXSxbYENgLGB4M2AsYHkzYCxgeDRgLGB5NGAsYHgxYCxgeTRgXSxbYENgLGB4NWAsYHk0YCxgeDZgLGB5NmAsYHg2YCxgeTVgXSxbYENgLGB4NmAsYHk3YCxgeDdgLGBiYCxgcmAsYGJgXV19XX0sa2Q9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDUwMDAwYF0sW2BhZGozYCxgdmFsIDI1MDAwYF1dLGdkOltbYG1heEFkajJgLGAqLyA1MDAwMCB3IHNzYF0sW2BhMmAsYHBpbiAwIGFkajIgbWF4QWRqMmBdLFtgYTFgLGBwaW4gMCBhZGoxIDEwMDAwMGBdLFtgdGhgLGAqLyBzcyBhMSAxMDAwMDBgXSxbYGF3YCxgKi8gc3MgYTIgMTAwMDAwYF0sW2BxMWAsYCsvIHRoIGF3IDRgXSxbYHdSYCxgKy0gd2QyIDAgcTFgXSxbYHE3YCxgKi8gd1IgMiAxYF0sW2BxOGAsYCovIHE3IHE3IDFgXSxbYHE5YCxgKi8gdGggdGggMWBdLFtgcTEwYCxgKy0gcTggMCBxOWBdLFtgcTExYCxgc3FydCBxMTBgXSxbYGlkeWAsYCovIHExMSBoIHE3YF0sW2BtYXhBZGozYCxgKi8gMTAwMDAwIGlkeSBzc2BdLFtgYTNgLGBwaW4gMCBhZGozIG1heEFkajNgXSxbYGFoYCxgKi8gc3MgYWRqMyAxMDAwMDBgXSxbYHgzYCxgKy0gd1IgdGggMGBdLFtgcTJgLGAqLyBoIGggMWBdLFtgcTNgLGAqLyBhaCBhaCAxYF0sW2BxNGAsYCstIHEyIDAgcTNgXSxbYHE1YCxgc3FydCBxNGBdLFtgZHhgLGAqLyBxNSB3UiBoYF0sW2B4NWAsYCstIHdSIGR4IDBgXSxbYHg3YCxgKy0geDMgZHggMGBdLFtgcTZgLGArLSBhdyAwIHRoYF0sW2BkaGAsYCovIHE2IDEgMmBdLFtgeDRgLGArLSB4NSAwIGRoYF0sW2B4OGAsYCstIHg3IGRoIDBgXSxbYGF3MmAsYCovIGF3IDEgMmBdLFtgeDZgLGArLSByIDAgYXcyYF0sW2B5MWAsYCstIGIgMCBhaGBdLFtgc3dBbmdgLGBhdDIgYWggZHhgXSxbYG1zd0FuZ2AsYCstIDAgMCBzd0FuZ2BdLFtgaXlgLGArLSBiIDAgaWR5YF0sW2BpeGAsYCsvIHdSIHgzIDJgXSxbYHExMmAsYCovIHRoIDEgMmBdLFtgZGFuZzJgLGBhdDIgaWR5IHExMmBdLFtgc3RBbmdgLGArLSAzY2Q0IHN3QW5nIDBgXSxbYHN0QW5nMmAsYCstIDNjZDQgMCBkYW5nMmBdLFtgc3dBbmcyYCxgKy0gZGFuZzIgMCBjZDRgXSxbYHN3QW5nM2AsYCstIGNkNCBkYW5nMiAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHg2YCxgYmBdLFtgbGAsYHg0YCxgeTFgXSxbYGxgLGB4NWAsYHkxYF0sW2BhYCxgd1JgLGBoYCxgc3RBbmdgLGBtc3dBbmdgXSxbYGxgLGB4M2AsYHRgXSxbYGFgLGB3UmAsYGhgLGAzY2Q0YCxgc3dBbmdgXSxbYGxgLGB4OGAsYHkxYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5MZXNzYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgaXhgLGBpeWBdLFtgYWAsYHdSYCxgaGAsYHN0QW5nMmAsYHN3QW5nMmBdLFtgbGAsYGxgLGBiYF0sW2BhYCxgd1JgLGBoYCxgY2QyYCxgc3dBbmczYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgaXhgLGBpeWBdLFtgYWAsYHdSYCxgaGAsYHN0QW5nMmAsYHN3QW5nMmBdLFtgbGAsYGxgLGBiYF0sW2BhYCxgd1JgLGBoYCxgY2QyYCxgY2Q0YF0sW2BsYCxgeDNgLGB0YF0sW2BhYCxgd1JgLGBoYCxgM2NkNGAsYHN3QW5nYF0sW2BsYCxgeDhgLGB5MWBdLFtgbGAsYHg2YCxgYmBdLFtgbGAsYHg0YCxgeTFgXSxbYGxgLGB4NWAsYHkxYF0sW2BhYCxgd1JgLGBoYCxgc3RBbmdgLGBtc3dBbmdgXV19XX0sQWQ9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDUwMDAwYF0sW2BhZGozYCxgdmFsIDI1MDAwYF1dLGdkOltbYG1heEFkajJgLGAqLyA1MDAwMCBoIHNzYF0sW2BhMmAsYHBpbiAwIGFkajIgbWF4QWRqMmBdLFtgYTFgLGBwaW4gMCBhZGoxIGEyYF0sW2B0aGAsYCovIHNzIGExIDEwMDAwMGBdLFtgYXdgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYHExYCxgKy8gdGggYXcgNGBdLFtgaFJgLGArLSBoZDIgMCBxMWBdLFtgcTdgLGAqLyBoUiAyIDFgXSxbYHE4YCxgKi8gcTcgcTcgMWBdLFtgcTlgLGAqLyB0aCB0aCAxYF0sW2BxMTBgLGArLSBxOCAwIHE5YF0sW2BxMTFgLGBzcXJ0IHExMGBdLFtgaWR4YCxgKi8gcTExIHcgcTdgXSxbYG1heEFkajNgLGAqLyAxMDAwMDAgaWR4IHNzYF0sW2BhM2AsYHBpbiAwIGFkajMgbWF4QWRqM2BdLFtgYWhgLGAqLyBzcyBhMyAxMDAwMDBgXSxbYHkzYCxgKy0gaFIgdGggMGBdLFtgcTJgLGAqLyB3IHcgMWBdLFtgcTNgLGAqLyBhaCBhaCAxYF0sW2BxNGAsYCstIHEyIDAgcTNgXSxbYHE1YCxgc3FydCBxNGBdLFtgZHlgLGAqLyBxNSBoUiB3YF0sW2B5NWAsYCstIGhSIGR5IDBgXSxbYHk3YCxgKy0geTMgZHkgMGBdLFtgcTZgLGArLSBhdyAwIHRoYF0sW2BkaGAsYCovIHE2IDEgMmBdLFtgeTRgLGArLSB5NSAwIGRoYF0sW2B5OGAsYCstIHk3IGRoIDBgXSxbYGF3MmAsYCovIGF3IDEgMmBdLFtgeTZgLGArLSBiIDAgYXcyYF0sW2B4MWAsYCstIGwgYWggMGBdLFtgc3dBbmdgLGBhdDIgYWggZHlgXSxbYG1zd0FuZ2AsYCstIDAgMCBzd0FuZ2BdLFtgaXhgLGArLSBsIGlkeCAwYF0sW2BpeWAsYCsvIGhSIHkzIDJgXSxbYHExMmAsYCovIHRoIDEgMmBdLFtgZGFuZzJgLGBhdDIgaWR4IHExMmBdLFtgc3dBbmcyYCxgKy0gZGFuZzIgMCBzd0FuZ2BdLFtgc3dBbmczYCxgKy0gc3dBbmcgZGFuZzIgMGBdLFtgc3RBbmczYCxgKy0gMCAwIGRhbmcyYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB5NmBdLFtgbGAsYHgxYCxgeTRgXSxbYGxgLGB4MWAsYHk1YF0sW2BhYCxgd2AsYGhSYCxgc3dBbmdgLGBzd0FuZzJgXSxbYGFgLGB3YCxgaFJgLGBzdEFuZzNgLGBzd0FuZzNgXSxbYGxgLGB4MWAsYHk4YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5MZXNzYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgcmAsYHkzYF0sW2BhYCxgd2AsYGhSYCxgMGAsYC01NDAwMDAwYF0sW2BsYCxgbGAsYHRgXSxbYGFgLGB3YCxgaFJgLGAzY2Q0YCxgY2Q0YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgcmAsYHkzYF0sW2BhYCxgd2AsYGhSYCxgMGAsYC01NDAwMDAwYF0sW2BsYCxgbGAsYHRgXSxbYGFgLGB3YCxgaFJgLGAzY2Q0YCxgY2Q0YF0sW2BsYCxgcmAsYHkzYF0sW2BhYCxgd2AsYGhSYCxgMGAsYHN3QW5nYF0sW2BsYCxgeDFgLGB5OGBdLFtgbGAsYGxgLGB5NmBdLFtgbGAsYHgxYCxgeTRgXSxbYGxgLGB4MWAsYHk1YF0sW2BhYCxgd2AsYGhSYCxgc3dBbmdgLGBzd0FuZzJgXV19XX0samQ9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDUwMDAwYF0sW2BhZGozYCxgdmFsIDI1MDAwYF1dLGdkOltbYG1heEFkajJgLGAqLyA1MDAwMCBoIHNzYF0sW2BhMmAsYHBpbiAwIGFkajIgbWF4QWRqMmBdLFtgYTFgLGBwaW4gMCBhZGoxIGEyYF0sW2B0aGAsYCovIHNzIGExIDEwMDAwMGBdLFtgYXdgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYHExYCxgKy8gdGggYXcgNGBdLFtgaFJgLGArLSBoZDIgMCBxMWBdLFtgcTdgLGAqLyBoUiAyIDFgXSxbYHE4YCxgKi8gcTcgcTcgMWBdLFtgcTlgLGAqLyB0aCB0aCAxYF0sW2BxMTBgLGArLSBxOCAwIHE5YF0sW2BxMTFgLGBzcXJ0IHExMGBdLFtgaWR4YCxgKi8gcTExIHcgcTdgXSxbYG1heEFkajNgLGAqLyAxMDAwMDAgaWR4IHNzYF0sW2BhM2AsYHBpbiAwIGFkajMgbWF4QWRqM2BdLFtgYWhgLGAqLyBzcyBhMyAxMDAwMDBgXSxbYHkzYCxgKy0gaFIgdGggMGBdLFtgcTJgLGAqLyB3IHcgMWBdLFtgcTNgLGAqLyBhaCBhaCAxYF0sW2BxNGAsYCstIHEyIDAgcTNgXSxbYHE1YCxgc3FydCBxNGBdLFtgZHlgLGAqLyBxNSBoUiB3YF0sW2B5NWAsYCstIGhSIGR5IDBgXSxbYHk3YCxgKy0geTMgZHkgMGBdLFtgcTZgLGArLSBhdyAwIHRoYF0sW2BkaGAsYCovIHE2IDEgMmBdLFtgeTRgLGArLSB5NSAwIGRoYF0sW2B5OGAsYCstIHk3IGRoIDBgXSxbYGF3MmAsYCovIGF3IDEgMmBdLFtgeTZgLGArLSBiIDAgYXcyYF0sW2B4MWAsYCstIHIgMCBhaGBdLFtgc3dBbmdgLGBhdDIgYWggZHlgXSxbYHN0QW5nYCxgKy0gY2QyIDAgc3dBbmdgXSxbYG1zd0FuZ2AsYCstIDAgMCBzd0FuZ2BdLFtgaXhgLGArLSByIDAgaWR4YF0sW2BpeWAsYCsvIGhSIHkzIDJgXSxbYHExMmAsYCovIHRoIDEgMmBdLFtgZGFuZzJgLGBhdDIgaWR4IHExMmBdLFtgc3dBbmcyYCxgKy0gZGFuZzIgMCBjZDRgXSxbYHN3QW5nM2AsYCstIGNkNCBkYW5nMiAwYF0sW2BzdEFuZzNgLGArLSBjZDIgMCBkYW5nMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgaFJgXSxbYGFgLGB3YCxgaFJgLGBjZDJgLGBtc3dBbmdgXSxbYGxgLGB4MWAsYHk0YF0sW2BsYCxgcmAsYHk2YF0sW2BsYCxgeDFgLGB5OGBdLFtgbGAsYHgxYCxgeTdgXSxbYGFgLGB3YCxgaFJgLGBzdEFuZ2AsYHN3QW5nYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5MZXNzYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgcmAsYHRoYF0sW2BhYCxgd2AsYGhSYCxgM2NkNGAsYHN3QW5nMmBdLFtgYWAsYHdgLGBoUmAsYHN0QW5nM2AsYHN3QW5nM2BdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGBoUmBdLFtgYWAsYHdgLGBoUmAsYGNkMmAsYG1zd0FuZ2BdLFtgbGAsYHgxYCxgeTRgXSxbYGxgLGByYCxgeTZgXSxbYGxgLGB4MWAsYHk4YF0sW2BsYCxgeDFgLGB5N2BdLFtgYWAsYHdgLGBoUmAsYHN0QW5nYCxgc3dBbmdgXSxbYGxgLGBsYCxgaFJgXSxbYGFgLGB3YCxgaFJgLGBjZDJgLGBjZDRgXSxbYGxgLGByYCxgdGhgXSxbYGFgLGB3YCxgaFJgLGAzY2Q0YCxgc3dBbmcyYF1dfV19LE1kPXthZGo6W1tgYWRqMWAsYHZhbCAyNTAwMGBdLFtgYWRqMmAsYHZhbCA1MDAwMGBdLFtgYWRqM2AsYHZhbCAyNTAwMGBdXSxnZDpbW2BtYXhBZGoyYCxgKi8gNTAwMDAgdyBzc2BdLFtgYTJgLGBwaW4gMCBhZGoyIG1heEFkajJgXSxbYGExYCxgcGluIDAgYWRqMSAxMDAwMDBgXSxbYHRoYCxgKi8gc3MgYTEgMTAwMDAwYF0sW2Bhd2AsYCovIHNzIGEyIDEwMDAwMGBdLFtgcTFgLGArLyB0aCBhdyA0YF0sW2B3UmAsYCstIHdkMiAwIHExYF0sW2BxN2AsYCovIHdSIDIgMWBdLFtgcThgLGAqLyBxNyBxNyAxYF0sW2BxOWAsYCovIHRoIHRoIDFgXSxbYHExMGAsYCstIHE4IDAgcTlgXSxbYHExMWAsYHNxcnQgcTEwYF0sW2BpZHlgLGAqLyBxMTEgaCBxN2BdLFtgbWF4QWRqM2AsYCovIDEwMDAwMCBpZHkgc3NgXSxbYGEzYCxgcGluIDAgYWRqMyBtYXhBZGozYF0sW2BhaGAsYCovIHNzIGFkajMgMTAwMDAwYF0sW2B4M2AsYCstIHdSIHRoIDBgXSxbYHEyYCxgKi8gaCBoIDFgXSxbYHEzYCxgKi8gYWggYWggMWBdLFtgcTRgLGArLSBxMiAwIHEzYF0sW2BxNWAsYHNxcnQgcTRgXSxbYGR4YCxgKi8gcTUgd1IgaGBdLFtgeDVgLGArLSB3UiBkeCAwYF0sW2B4N2AsYCstIHgzIGR4IDBgXSxbYHE2YCxgKy0gYXcgMCB0aGBdLFtgZGhgLGAqLyBxNiAxIDJgXSxbYHg0YCxgKy0geDUgMCBkaGBdLFtgeDhgLGArLSB4NyBkaCAwYF0sW2BhdzJgLGAqLyBhdyAxIDJgXSxbYHg2YCxgKy0gciAwIGF3MmBdLFtgeTFgLGArLSB0IGFoIDBgXSxbYHN3QW5nYCxgYXQyIGFoIGR4YF0sW2Btc3dBbmdgLGArLSAwIDAgc3dBbmdgXSxbYGl5YCxgKy0gdCBpZHkgMGBdLFtgaXhgLGArLyB3UiB4MyAyYF0sW2BxMTJgLGAqLyB0aCAxIDJgXSxbYGRhbmcyYCxgYXQyIGlkeSBxMTJgXSxbYHN3QW5nMmAsYCstIGRhbmcyIDAgc3dBbmdgXSxbYG1zd0FuZzJgLGArLSAwIDAgc3dBbmcyYF0sW2BzdEFuZzNgLGArLSBjZDQgMCBzd0FuZ2BdLFtgc3dBbmczYCxgKy0gc3dBbmcgZGFuZzIgMGBdLFtgc3RBbmcyYCxgKy0gY2Q0IDAgZGFuZzJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDZgLGB0YF0sW2BsYCxgeDhgLGB5MWBdLFtgbGAsYHg3YCxgeTFgXSxbYGFgLGB3UmAsYGhgLGBzdEFuZzNgLGBzd0FuZzNgXSxbYGFgLGB3UmAsYGhgLGBzdEFuZzJgLGBzd0FuZzJgXSxbYGxgLGB4NGAsYHkxYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5MZXNzYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgd1JgLGBiYF0sW2BhYCxgd1JgLGBoYCxgY2Q0YCxgY2Q0YF0sW2BsYCxgdGhgLGB0YF0sW2BhYCxgd1JgLGBoYCxgY2QyYCxgLTU0MDAwMDBgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBpeGAsYGl5YF0sW2BhYCxgd1JgLGBoYCxgc3RBbmcyYCxgc3dBbmcyYF0sW2BsYCxgeDRgLGB5MWBdLFtgbGAsYHg2YCxgdGBdLFtgbGAsYHg4YCxgeTFgXSxbYGxgLGB4N2AsYHkxYF0sW2BhYCxgd1JgLGBoYCxgc3RBbmczYCxgc3dBbmdgXSxbYGxgLGB3UmAsYGJgXSxbYGFgLGB3UmAsYGhgLGBjZDRgLGBjZDRgXSxbYGxgLGB0aGAsYHRgXSxbYGFgLGB3UmAsYGhgLGBjZDJgLGAtNTQwMDAwMGBdXX1dfSxOZD17YWRqOltbYHZmYCxgdmFsIDEwNTE0NmBdXSxnZDpbW2BzaGQyYCxgKi8gaGQyIHZmIDEwMDAwMGBdLFtgZHgxYCxgY29zIHdkMiAyMTYwMDAwYF0sW2BkeDJgLGBjb3Mgd2QyIDQzMjAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHgzYCxgKy0gaGMgZHgyIDBgXSxbYHg0YCxgKy0gaGMgZHgxIDBgXSxbYGR5MWAsYHNpbiBzaGQyIDQzMjAwMDBgXSxbYGR5MmAsYHNpbiBzaGQyIDIxNjAwMDBgXSxbYHkxYCxgKy0gdmMgMCBkeTFgXSxbYHkyYCxgKy0gdmMgMCBkeTJgXSxbYHkzYCxgKy0gdmMgZHkyIDBgXSxbYHk0YCxgKy0gdmMgZHkxIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHZjYF0sW2BsYCxgeDFgLGB5MmBdLFtgbGAsYHgyYCxgeTFgXSxbYGxgLGB4M2AsYHkxYF0sW2BsYCxgeDRgLGB5MmBdLFtgbGAsYHJgLGB2Y2BdLFtgbGAsYHg0YCxgeTNgXSxbYGxgLGB4M2AsYHk0YF0sW2BsYCxgeDJgLGB5NGBdLFtgbGAsYHgxYCxgeTNgXSxbYGNgXV19XX0sUGQ9e2FkajpbW2BhZGpgLGB2YWwgNTAwMDBgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiAxMDAwMDBgXSxbYHgyYCxgKi8gdyBhIDEwMDAwMGBdLFtgeDFgLGAqLyB4MiAxIDJgXSxbYHgzYCxgKy8geDIgciAyYF0sW2B5MmAsYCovIGggYSAxMDAwMDBgXSxbYHkxYCxgKi8geTIgMSAyYF0sW2B5M2AsYCsvIHkyIGIgMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgeTJgXSxbYGxgLGB4MmAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfV19LEZkPXthZGo6W10sZ2Q6W1tgaXJgLGAqLyB3IDMgNGBdLFtgaWJgLGAqLyBoIDMgNGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdmNgXSxbYGxgLGBoY2AsYHRgXSxbYGxgLGByYCxgdmNgXSxbYGxgLGBoY2AsYGJgXSxbYGNgXV19XX0sSWQ9e2FkajpbXSxnZDpbW2B4MWAsYCovIHcgMjg5NCAyMTYwMGBdLFtgeDJgLGAqLyB3IDc5MDYgMjE2MDBgXSxbYHgzYCxgKi8gdyAxMzY5NCAyMTYwMGBdLFtgeDRgLGAqLyB3IDE4NzA2IDIxNjAwYF0sW2B5MWAsYCovIGggMjg5NCAyMTYwMGBdLFtgeTJgLGAqLyBoIDc5MDYgMjE2MDBgXSxbYHkzYCxgKi8gaCAxMzY5NCAyMTYwMGBdLFtgeTRgLGAqLyBoIDE4NzA2IDIxNjAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB5MmBdLFtgbGAsYHgxYCxgeTFgXSxbYGxgLGB4MmAsYHRgXSxbYGxgLGB4M2AsYHRgXSxbYGxgLGB4NGAsYHkxYF0sW2BsYCxgcmAsYHkyYF0sW2BsYCxgcmAsYHkzYF0sW2BsYCxgeDRgLGB5NGBdLFtgbGAsYHgzYCxgYmBdLFtgbGAsYHgyYCxgYmBdLFtgbGAsYHgxYCxgeTRgXSxbYGxgLGBsYCxgeTNgXSxbYGNgXV19XX0sTGQ9e2FkajpbW2BhZGpgLGB2YWwgMjUwMDBgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiA1MDAwMGBdLFtgZHJgLGAqLyBzcyBhIDEwMDAwMGBdLFtgaXdkMmAsYCstIHdkMiAwIGRyYF0sW2BpaGQyYCxgKy0gaGQyIDAgZHJgXSxbYGlkeGAsYGNvcyB3ZDIgMjcwMDAwMGBdLFtgaWR5YCxgc2luIGhkMiAyNzAwMDAwYF0sW2BpbGAsYCstIGhjIDAgaWR4YF0sW2BpcmAsYCstIGhjIGlkeCAwYF0sW2BpdGAsYCstIHZjIDAgaWR5YF0sW2BpYmAsYCstIHZjIGlkeSAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB2Y2BdLFtgYWAsYHdkMmAsYGhkMmAsYGNkMmAsYGNkNGBdLFtgYWAsYHdkMmAsYGhkMmAsYDNjZDRgLGBjZDRgXSxbYGFgLGB3ZDJgLGBoZDJgLGAwYCxgY2Q0YF0sW2BhYCxgd2QyYCxgaGQyYCxgY2Q0YCxgY2Q0YF0sW2BjYF0sW2BtYCxgZHJgLGB2Y2BdLFtgYWAsYGl3ZDJgLGBpaGQyYCxgY2QyYCxgLTU0MDAwMDBgXSxbYGFgLGBpd2QyYCxgaWhkMmAsYGNkNGAsYC01NDAwMDAwYF0sW2BhYCxgaXdkMmAsYGloZDJgLGAwYCxgLTU0MDAwMDBgXSxbYGFgLGBpd2QyYCxgaWhkMmAsYDNjZDRgLGAtNTQwMDAwMGBdLFtgY2BdXX1dfSxSZD17YWRqOltbYGFkajFgLGB2YWwgNjI1MGBdLFtgYWRqMmAsYHZhbCAwYF1dLGdkOltbYGExYCxgcGluIDAgYWRqMSAxMjUwMGBdLFtgYTJgLGBwaW4gLTEwMDAwIGFkajIgMTAwMDBgXSxbYHkxYCxgKi8gaCBhMSAxMDAwMDBgXSxbYGR5MmAsYCovIHkxIDEwIDNgXSxbYHkyYCxgKy0geTEgMCBkeTJgXSxbYHkzYCxgKy0geTEgZHkyIDBgXSxbYHk0YCxgKy0gYiAwIHkxYF0sW2B5NWAsYCstIHk0IDAgZHkyYF0sW2B5NmAsYCstIHk0IGR5MiAwYF0sW2BkeDFgLGAqLyB3IGEyIDEwMDAwMGBdLFtgb2YyYCxgKi8gdyBhMiA1MDAwMGBdLFtgeDFgLGBhYnMgZHgxYF0sW2BkeDJgLGA/OiBvZjIgMCBvZjJgXSxbYHgyYCxgKy0gbCAwIGR4MmBdLFtgZHg4YCxgPzogb2YyIG9mMiAwYF0sW2B4OGAsYCstIHIgMCBkeDhgXSxbYGR4M2AsYCsvIGR4MiB4OCA2YF0sW2B4M2AsYCstIHgyIGR4MyAwYF0sW2BkeDRgLGArLyBkeDIgeDggM2BdLFtgeDRgLGArLSB4MiBkeDQgMGBdLFtgeDVgLGArLyB4MiB4OCAyYF0sW2B4NmAsYCstIHg1IGR4MyAwYF0sW2B4N2AsYCsvIHg2IHg4IDJgXSxbYHg5YCxgKy0gbCBkeDggMGBdLFtgeDE1YCxgKy0gciBkeDIgMGBdLFtgeDEwYCxgKy0geDkgZHgzIDBgXSxbYHgxMWAsYCstIHg5IGR4NCAwYF0sW2B4MTJgLGArLyB4OSB4MTUgMmBdLFtgeDEzYCxgKy0geDEyIGR4MyAwYF0sW2B4MTRgLGArLyB4MTMgeDE1IDJgXSxbYHgxNmAsYCstIHIgMCB4MWBdLFtgeEFkamAsYCstIGhjIGR4MSAwYF0sW2BpbGAsYG1heCB4MiB4OWBdLFtgaXJgLGBtaW4geDggeDE1YF0sW2BpdGAsYCovIGggYTEgNTAwMDBgXSxbYGliYCxgKy0gYiAwIGl0YF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHgyYCxgeTFgXSxbYENgLGB4M2AsYHkyYCxgeDRgLGB5M2AsYHg1YCxgeTFgXSxbYENgLGB4NmAsYHkyYCxgeDdgLGB5M2AsYHg4YCxgeTFgXSxbYGxgLGB4MTVgLGB5NGBdLFtgQ2AsYHgxNGAsYHk2YCxgeDEzYCxgeTVgLGB4MTJgLGB5NGBdLFtgQ2AsYHgxMWAsYHk2YCxgeDEwYCxgeTVgLGB4OWAsYHk0YF0sW2BjYF1dfV19LHpkPXthZGo6W1tgYWRqMWAsYHZhbCA1MDAwMGBdLFtgYWRqMmAsYHZhbCA1MDAwMGBdXSxnZDpbW2BtYXhBZGoyYCxgKi8gMTAwMDAwIGggc3NgXSxbYGExYCxgcGluIDAgYWRqMSAxMDAwMDBgXSxbYGEyYCxgcGluIDAgYWRqMiBtYXhBZGoyYF0sW2BkeTFgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYHkxYCxgKy0gYiAwIGR5MWBdLFtgZHgxYCxgKi8gdyBhMSAyMDAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgZHgxIDBgXSxbYGR5MmAsYCovIHgxIGR5MSB3ZDJgXSxbYHkyYCxgKy0geTEgZHkyIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHkxYF0sW2BsYCxgeDFgLGB5MWBdLFtgbGAsYHgxYCxgdGBdLFtgbGAsYHgyYCxgdGBdLFtgbGAsYHgyYCxgeTFgXSxbYGxgLGByYCxgeTFgXSxbYGxgLGBoY2AsYGJgXSxbYGNgXV19XX0sQmQ9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDI1MDAwYF0sW2BhZGozYCxgdmFsIDI1MDAwYF0sW2BhZGo0YCxgdmFsIDY0OTc3YF1dLGdkOltbYG1heEFkajJgLGAqLyA1MDAwMCB3IHNzYF0sW2BhMmAsYHBpbiAwIGFkajIgbWF4QWRqMmBdLFtgbWF4QWRqMWAsYCovIGEyIDIgMWBdLFtgYTFgLGBwaW4gMCBhZGoxIG1heEFkajFgXSxbYG1heEFkajNgLGAqLyAxMDAwMDAgaCBzc2BdLFtgYTNgLGBwaW4gMCBhZGozIG1heEFkajNgXSxbYHEyYCxgKi8gYTMgc3MgaGBdLFtgbWF4QWRqNGAsYCstIDEwMDAwMCAwIHEyYF0sW2BhNGAsYHBpbiAwIGFkajQgbWF4QWRqNGBdLFtgZHgxYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2BkeDJgLGAqLyBzcyBhMSAyMDAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHgzYCxgKy0gaGMgZHgyIDBgXSxbYHg0YCxgKy0gaGMgZHgxIDBgXSxbYGR5M2AsYCovIHNzIGEzIDEwMDAwMGBdLFtgeTNgLGArLSBiIDAgZHkzYF0sW2B5MmAsYCovIGggYTQgMTAwMDAwYF0sW2B5MWAsYCovIHkyIDEgMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYHkyYF0sW2BsYCxgeDNgLGB5MmBdLFtgbGAsYHgzYCxgeTNgXSxbYGxgLGB4NGAsYHkzYF0sW2BsYCxgaGNgLGBiYF0sW2BsYCxgeDFgLGB5M2BdLFtgbGAsYHgyYCxgeTNgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgbGAsYHkyYF0sW2BjYF1dfV19LFZkPXthZGo6W10sZ2Q6W1tgaWR4YCxgY29zIHdkMiAyNzAwMDAwYF0sW2BpZHlgLGBzaW4gaGQyIDI3MDAwMDBgXSxbYGlsYCxgKy0gaGMgMCBpZHhgXSxbYGlyYCxgKy0gaGMgaWR4IDBgXSxbYGl0YCxgKy0gdmMgMCBpZHlgXSxbYGliYCxgKy0gdmMgaWR5IDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHZjYF0sW2BhYCxgd2QyYCxgaGQyYCxgY2QyYCxgY2Q0YF0sW2BhYCxgd2QyYCxgaGQyYCxgM2NkNGAsYGNkNGBdLFtgYWAsYHdkMmAsYGhkMmAsYDBgLGBjZDRgXSxbYGFgLGB3ZDJgLGBoZDJgLGBjZDRgLGBjZDRgXSxbYGNgXV19XX0sSGQ9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDUwMDAwYF0sW2BhZGozYCxgdmFsIDEyNTAwYF1dLGdkOltbYGExYCxgcGluIDAgYWRqMSAxMDAwMDBgXSxbYGEyYCxgcGluIDI1MDAwIGFkajIgNzUwMDBgXSxbYHExMGAsYCstIDEwMDAwMCAwIGExYF0sW2BxMTFgLGAqLyBxMTAgMSAyYF0sW2BxMTJgLGArLSBhMSAwIHExMWBdLFtgbWluQWRqM2AsYG1heCAwIHExMmBdLFtgYTNgLGBwaW4gbWluQWRqMyBhZGozIGExYF0sW2BkeDJgLGAqLyB3IGEyIDIwMDAwMGBdLFtgeDJgLGArLSBoYyAwIGR4MmBdLFtgeDNgLGArLSB4MiB3ZDggMGBdLFtgeDRgLGArLSByIDAgeDNgXSxbYHg1YCxgKy0gciAwIHgyYF0sW2B4NmAsYCstIHIgMCB3ZDhgXSxbYGR5MWAsYCovIGggYTMgMTAwMDAwYF0sW2BmMWAsYCovIDQgZHkxIHdgXSxbYHExYCxgKi8geDMgeDMgd2BdLFtgcTJgLGArLSB4MyAwIHExYF0sW2B5MWAsYCovIGYxIHEyIDFgXSxbYGN4MWAsYCovIHgzIDEgMmBdLFtgY3kxYCxgKi8gZjEgY3gxIDFgXSxbYGN4MmAsYCstIHIgMCBjeDFgXSxbYHExYCxgKi8gaCBhMSAxMDAwMDBgXSxbYGR5M2AsYCstIHExIDAgZHkxYF0sW2BxM2AsYCovIHgyIHgyIHdgXSxbYHE0YCxgKy0geDIgMCBxM2BdLFtgcTVgLGAqLyBmMSBxNCAxYF0sW2B5M2AsYCstIHE1IGR5MyAwYF0sW2BxNmAsYCstIGR5MSBkeTMgeTNgXSxbYHE3YCxgKy0gcTYgZHkxIDBgXSxbYGN5M2AsYCstIHE3IGR5MyAwYF0sW2ByaGAsYCstIGIgMCBxMWBdLFtgcThgLGAqLyBkeTEgMTQgMTZgXSxbYHkyYCxgKy8gcTggcmggMmBdLFtgeTVgLGArLSBxNSByaCAwYF0sW2B5NmAsYCstIHkzIHJoIDBgXSxbYGN4NGAsYCovIHgyIDEgMmBdLFtgcTlgLGAqLyBmMSBjeDQgMWBdLFtgY3k0YCxgKy0gcTkgcmggMGBdLFtgY3g1YCxgKy0gciAwIGN4NGBdLFtgY3k2YCxgKy0gY3kzIHJoIDBgXSxbYHk3YCxgKy0geTEgZHkzIDBgXSxbYGN5N2AsYCstIHExIHExIHk3YF0sW2B5OGAsYCstIGIgMCBkeTFgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYFFgLGBjeDFgLGBjeTFgLGB4M2AsYHkxYF0sW2BsYCxgeDJgLGB5M2BdLFtgUWAsYGhjYCxgY3kzYCxgeDVgLGB5M2BdLFtgbGAsYHg0YCxgeTFgXSxbYFFgLGBjeDJgLGBjeTFgLGByYCxgdGBdLFtgbGAsYHg2YCxgeTJgXSxbYGxgLGByYCxgcmhgXSxbYFFgLGBjeDVgLGBjeTRgLGB4NWAsYHk1YF0sW2BsYCxgeDVgLGB5NmBdLFtgUWAsYGhjYCxgY3k2YCxgeDJgLGB5NmBdLFtgbGAsYHgyYCxgeTVgXSxbYFFgLGBjeDRgLGBjeTRgLGBsYCxgcmhgXSxbYGxgLGB3ZDhgLGB5MmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgZGFya2VuTGVzc2Asc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHgzYCxgeTdgXSxbYGxgLGB4M2AsYHkxYF0sW2BsYCxgeDJgLGB5M2BdLFtgUWAsYGhjYCxgY3kzYCxgeDVgLGB5M2BdLFtgbGAsYHg0YCxgeTFgXSxbYGxgLGB4NGAsYHk3YF0sW2BRYCxgaGNgLGBjeTdgLGB4M2AsYHk3YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYFFgLGBjeDFgLGBjeTFgLGB4M2AsYHkxYF0sW2BsYCxgeDJgLGB5M2BdLFtgUWAsYGhjYCxgY3kzYCxgeDVgLGB5M2BdLFtgbGAsYHg0YCxgeTFgXSxbYFFgLGBjeDJgLGBjeTFgLGByYCxgdGBdLFtgbGAsYHg2YCxgeTJgXSxbYGxgLGByYCxgcmhgXSxbYFFgLGBjeDVgLGBjeTRgLGB4NWAsYHk1YF0sW2BsYCxgeDVgLGB5NmBdLFtgUWAsYGhjYCxgY3k2YCxgeDJgLGB5NmBdLFtgbGAsYHgyYCxgeTVgXSxbYFFgLGBjeDRgLGBjeTRgLGBsYCxgcmhgXSxbYGxgLGB3ZDhgLGB5MmBdLFtgY2BdLFtgbWAsYHgyYCxgeTVgXSxbYGxgLGB4MmAsYHkzYF0sW2BtYCxgeDVgLGB5M2BdLFtgbGAsYHg1YCxgeTVgXSxbYG1gLGB4M2AsYHkxYF0sW2BsYCxgeDNgLGB5N2BdLFtgbWAsYHg0YCxgeTdgXSxbYGxgLGB4NGAsYHkxYF1dfV19LFVkPXthZGo6W1tgYWRqMWAsYHZhbCAyNTAwMGBdLFtgYWRqMmAsYHZhbCA1MDAwMGBdLFtgYWRqM2AsYHZhbCAxMjUwMGBdXSxnZDpbW2BhMWAsYHBpbiAwIGFkajEgMTAwMDAwYF0sW2BhMmAsYHBpbiAyNTAwMCBhZGoyIDc1MDAwYF0sW2BxMTBgLGArLSAxMDAwMDAgMCBhMWBdLFtgcTExYCxgKi8gcTEwIDEgMmBdLFtgcTEyYCxgKy0gYTEgMCBxMTFgXSxbYG1pbkFkajNgLGBtYXggMCBxMTJgXSxbYGEzYCxgcGluIG1pbkFkajMgYWRqMyBhMWBdLFtgZHgyYCxgKi8gdyBhMiAyMDAwMDBgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHgzYCxgKy0geDIgd2Q4IDBgXSxbYHg0YCxgKy0gciAwIHgzYF0sW2B4NWAsYCstIHIgMCB4MmBdLFtgeDZgLGArLSByIDAgd2Q4YF0sW2BkeTFgLGAqLyBoIGEzIDEwMDAwMGBdLFtgZjFgLGAqLyA0IGR5MSB3YF0sW2BxMWAsYCovIHgzIHgzIHdgXSxbYHEyYCxgKy0geDMgMCBxMWBdLFtgdTFgLGAqLyBmMSBxMiAxYF0sW2B5MWAsYCstIGIgMCB1MWBdLFtgY3gxYCxgKi8geDMgMSAyYF0sW2BjdTFgLGAqLyBmMSBjeDEgMWBdLFtgY3kxYCxgKy0gYiAwIGN1MWBdLFtgY3gyYCxgKy0gciAwIGN4MWBdLFtgcTFgLGAqLyBoIGExIDEwMDAwMGBdLFtgZHkzYCxgKy0gcTEgMCBkeTFgXSxbYHEzYCxgKi8geDIgeDIgd2BdLFtgcTRgLGArLSB4MiAwIHEzYF0sW2BxNWAsYCovIGYxIHE0IDFgXSxbYHUzYCxgKy0gcTUgZHkzIDBgXSxbYHkzYCxgKy0gYiAwIHUzYF0sW2BxNmAsYCstIGR5MSBkeTMgdTNgXSxbYHE3YCxgKy0gcTYgZHkxIDBgXSxbYGN1M2AsYCstIHE3IGR5MyAwYF0sW2BjeTNgLGArLSBiIDAgY3UzYF0sW2ByaGAsYCstIGIgMCBxMWBdLFtgcThgLGAqLyBkeTEgMTQgMTZgXSxbYHUyYCxgKy8gcTggcmggMmBdLFtgeTJgLGArLSBiIDAgdTJgXSxbYHU1YCxgKy0gcTUgcmggMGBdLFtgeTVgLGArLSBiIDAgdTVgXSxbYHU2YCxgKy0gdTMgcmggMGBdLFtgeTZgLGArLSBiIDAgdTZgXSxbYGN4NGAsYCovIHgyIDEgMmBdLFtgcTlgLGAqLyBmMSBjeDQgMWBdLFtgY3U0YCxgKy0gcTkgcmggMGBdLFtgY3k0YCxgKy0gYiAwIGN1NGBdLFtgY3g1YCxgKy0gciAwIGN4NGBdLFtgY3U2YCxgKy0gY3UzIHJoIDBgXSxbYGN5NmAsYCstIGIgMCBjdTZgXSxbYHU3YCxgKy0gdTEgZHkzIDBgXSxbYHk3YCxgKy0gYiAwIHU3YF0sW2BjdTdgLGArLSBxMSBxMSB1N2BdLFtgY3k3YCxgKy0gYiAwIGN1N2BdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgYmBdLFtgUWAsYGN4MWAsYGN5MWAsYHgzYCxgeTFgXSxbYGxgLGB4MmAsYHkzYF0sW2BRYCxgaGNgLGBjeTNgLGB4NWAsYHkzYF0sW2BsYCxgeDRgLGB5MWBdLFtgUWAsYGN4MmAsYGN5MWAsYHJgLGBiYF0sW2BsYCxgeDZgLGB5MmBdLFtgbGAsYHJgLGBxMWBdLFtgUWAsYGN4NWAsYGN5NGAsYHg1YCxgeTVgXSxbYGxgLGB4NWAsYHk2YF0sW2BRYCxgaGNgLGBjeTZgLGB4MmAsYHk2YF0sW2BsYCxgeDJgLGB5NWBdLFtgUWAsYGN4NGAsYGN5NGAsYGxgLGBxMWBdLFtgbGAsYHdkOGAsYHkyYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5MZXNzYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDNgLGB5N2BdLFtgbGAsYHgzYCxgeTFgXSxbYGxgLGB4MmAsYHkzYF0sW2BRYCxgaGNgLGBjeTNgLGB4NWAsYHkzYF0sW2BsYCxgeDRgLGB5MWBdLFtgbGAsYHg0YCxgeTdgXSxbYFFgLGBoY2AsYGN5N2AsYHgzYCxgeTdgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgYmBdLFtgbGAsYHdkOGAsYHkyYF0sW2BsYCxgbGAsYHExYF0sW2BRYCxgY3g0YCxgY3k0YCxgeDJgLGB5NWBdLFtgbGAsYHgyYCxgeTZgXSxbYFFgLGBoY2AsYGN5NmAsYHg1YCxgeTZgXSxbYGxgLGB4NWAsYHk1YF0sW2BRYCxgY3g1YCxgY3k0YCxgcmAsYHExYF0sW2BsYCxgeDZgLGB5MmBdLFtgbGAsYHJgLGBiYF0sW2BRYCxgY3gyYCxgY3kxYCxgeDRgLGB5MWBdLFtgbGAsYHg1YCxgeTNgXSxbYFFgLGBoY2AsYGN5M2AsYHgyYCxgeTNgXSxbYGxgLGB4M2AsYHkxYF0sW2BRYCxgY3gxYCxgY3kxYCxgbGAsYGJgXSxbYGNgXSxbYG1gLGB4MmAsYHkzYF0sW2BsYCxgeDJgLGB5NWBdLFtgbWAsYHg1YCxgeTVgXSxbYGxgLGB4NWAsYHkzYF0sW2BtYCxgeDNgLGB5N2BdLFtgbGAsYHgzYCxgeTFgXSxbYG1gLGB4NGAsYHkxYF0sW2BsYCxgeDRgLGB5N2BdXX1dfSxXZD17YWRqOltdLGdkOltbYHgyYCxgKy0gciAwIHNzZDZgXSxbYHkyYCxgKy0gYiAwIHNzZDZgXSxbYGlsYCxgKi8gc3NkNiAyOTI4OSAxMDAwMDBgXSxbYGlyYCxgKy0gciAwIGlsYF0sW2BpYmAsYCstIGIgMCBpbGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgc3NkNmBdLFtgYWAsYHNzZDZgLGBzc2Q2YCxgY2QyYCxgY2Q0YF0sW2BsYCxgeDJgLGB0YF0sW2BhYCxgc3NkNmAsYHNzZDZgLGAzY2Q0YCxgY2Q0YF0sW2BsYCxgcmAsYHkyYF0sW2BhYCxgc3NkNmAsYHNzZDZgLGAwYCxgY2Q0YF0sW2BsYCxgc3NkNmAsYGJgXSxbYGFgLGBzc2Q2YCxgc3NkNmAsYGNkNGAsYGNkNGBdLFtgY2BdXX1dfSxHZD17YWRqOltdLGdkOltbYGlyYCxgKi8gdyAzIDRgXSxbYGliYCxgKi8gaCAzIDRgXV0scGF0aHM6W3t3OjIsaDoyLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDBgXSxbYGxgLGAyYCxgMGBdLFtgbGAsYDFgLGAxYF0sW2BsYCxgMmAsYDJgXSxbYGxgLGAwYCxgMmBdLFtgbGAsYDFgLGAxYF0sW2BjYF1dfV19LEtkPXthZGo6W10sZ2Q6W1tgaWR4YCxgY29zIHdkMiAyNzAwMDAwYF0sW2BpZHlgLGBzaW4gaGQyIDI3MDAwMDBgXSxbYGlsYCxgKy0gaGMgMCBpZHhgXSxbYGlyYCxgKy0gaGMgaWR4IDBgXSxbYGl0YCxgKy0gdmMgMCBpZHlgXSxbYGliYCxgKy0gdmMgaWR5IDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHZjYF0sW2BhYCxgd2QyYCxgaGQyYCxgY2QyYCxgY2Q0YF0sW2BhYCxgd2QyYCxgaGQyYCxgM2NkNGAsYGNkNGBdLFtgYWAsYHdkMmAsYGhkMmAsYDBgLGBjZDRgXSxbYGFgLGB3ZDJgLGBoZDJgLGBjZDRgLGBjZDRgXSxbYGNgXV19XX0scWQ9e2FkajpbXSxnZDpbW2BpcmAsYCovIHcgMyA0YF0sW2BpYmAsYCovIGggMyA0YF1dLHBhdGhzOlt7dzoyLGg6MixmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYDBgLGAxYF0sW2BsYCxgMWAsYDBgXSxbYGxgLGAyYCxgMWBdLFtgbGAsYDFgLGAyYF0sW2BjYF1dfV19LEpkPXthZGo6W10sZ2Q6W1tgaWR4YCxgY29zIHdkMiAyNzAwMDAwYF0sW2BpZHlgLGBzaW4gaGQyIDI3MDAwMDBgXSxbYGlyYCxgKy0gaGMgaWR4IDBgXSxbYGl0YCxgKy0gdmMgMCBpZHlgXSxbYGliYCxgKy0gdmMgaWR5IDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGBoY2AsYHRgXSxbYGFgLGB3ZDJgLGBoZDJgLGAzY2Q0YCxgY2QyYF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19XX0sWWQ9e2FkajpbXSxnZDpbW2B4MmAsYCovIHcgNSA2YF1dLHBhdGhzOlt7dzo2LGg6NixmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYDBgLGAzYF0sW2BsYCxgMWAsYDBgXSxbYGxgLGA1YCxgMGBdLFtgYWAsYDFgLGAzYCxgM2NkNGAsYGNkMmBdLFtgbGAsYDFgLGA2YF0sW2BjYF1dfV19LFhkPXthZGo6W10sZ2Q6W1tgeTFgLGAqLyBoIDE3MzIyIDIxNjAwYF0sW2B5MmAsYCovIGggMjAxNzIgMjE2MDBgXV0scGF0aHM6W3t3OjIxNjAwLGg6MjE2MDAsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAwYCxgMGBdLFtgbGAsYDIxNjAwYCxgMGBdLFtgbGAsYDIxNjAwYCxgMTczMjJgXSxbYENgLGAxMDgwMGAsYDE3MzIyYCxgMTA4MDBgLGAyMzkyMmAsYDBgLGAyMDE3MmBdLFtgY2BdXX1dfSxaZD17YWRqOltdLGdkOltbYHgyYCxgKi8gdyAzIDRgXV0scGF0aHM6W3t3OjIsaDoyLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDJgXSxbYGxgLGAxYCxgMGBdLFtgbGAsYDJgLGAyYF0sW2BjYF1dfV19LFFkPXthZGo6W10sZ2Q6W1tgeDNgLGAqLyB3IDIgNWBdLFtgeDRgLGAqLyB3IDMgNWBdLFtgeDVgLGAqLyB3IDQgNWBdLFtgeDZgLGAqLyB3IDkgMTBgXV0scGF0aHM6W3t3OjUsaDo1LGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDVgXSxbYGxgLGAxYCxgMGBdLFtgbGAsYDVgLGAwYF0sW2BsYCxgNGAsYDVgXSxbYGNgXV19XX0sJGQ9e2FkajpbXSxnZDpbXSxwYXRoczpbe3c6MSxoOjEsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGAwYCxgMGBdLFtgbGAsYDFgLGAwYF0sW2BsYCxgMWAsYDFgXSxbYGxgLGAwYCxgMWBdLFtgY2BdXX0se3c6OCxoOjgsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDFgLGAwYF0sW2BsYCxgMWAsYDhgXSxbYG1gLGAwYCxgMWBdLFtgbGAsYDhgLGAxYF1dfSx7dzoxLGg6MSxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDBgXSxbYGxgLGAxYCxgMGBdLFtgbGAsYDFgLGAxYF0sW2BsYCxgMGAsYDFgXSxbYGNgXV19XX0sZWY9e2FkajpbXSxnZDpbW2B5M2AsYCovIGggNSA2YF1dLHBhdGhzOlt7dzo2LGg6NixmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDBgLGAxYF0sW2BhYCxgM2AsYDFgLGBjZDJgLGBjZDJgXSxbYGxgLGA2YCxgNWBdLFtgYWAsYDNgLGAxYCxgMGAsYGNkMmBdLFtgY2BdXX0se3c6NixoOjYsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDZgLGAxYF0sW2BhYCxgM2AsYDFgLGAwYCxgY2QyYF1dfSx7dzo2LGg6NixmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDFgXSxbYGFgLGAzYCxgMWAsYGNkMmAsYGNkMmBdLFtgbGAsYDZgLGA1YF0sW2BhYCxgM2AsYDFgLGAwYCxgY2QyYF0sW2BjYF1dfV19LHRmPXthZGo6W10sZ2Q6W1tgeDJgLGAqLyB3IDIgM2BdXSxwYXRoczpbe3c6NixoOjYsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGAxYCxgMGBdLFtgbGAsYDVgLGAwYF0sW2BhYCxgMWAsYDNgLGAzY2Q0YCxgY2QyYF0sW2BsYCxgMWAsYDZgXSxbYGFgLGAxYCxgM2AsYGNkNGAsYGNkMmBdLFtgY2BdXX0se3c6NixoOjYsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDVgLGA2YF0sW2BhYCxgMWAsYDNgLGBjZDRgLGBjZDJgXV19LHt3OjYsaDo2LGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAxYCxgMGBdLFtgbGAsYDVgLGAwYF0sW2BhYCxgMWAsYDNgLGAzY2Q0YCxgY2QyYF0sW2BsYCxgMWAsYDZgXSxbYGFgLGAxYCxgM2AsYGNkNGAsYGNkMmBdLFtgY2BdXX1dfSxuZj17YWRqOltdLGdkOltbYGlkeGAsYGNvcyB3ZDIgMjcwMDAwMGBdLFtgaWR5YCxgc2luIGhkMiAyNzAwMDAwYF0sW2BpbGAsYCstIGhjIDAgaWR4YF0sW2BpcmAsYCstIGhjIGlkeCAwYF0sW2BpdGAsYCstIHZjIDAgaWR5YF0sW2BpYmAsYCstIHZjIGlkeSAwYF0sW2BhbmcxYCxgYXQyIHcgaGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBoY2AsYGJgXSxbYGFgLGB3ZDJgLGBoZDJgLGBjZDRgLGBjZDRgXSxbYGFgLGB3ZDJgLGBoZDJgLGBjZDJgLGBjZDRgXSxbYGFgLGB3ZDJgLGBoZDJgLGAzY2Q0YCxgY2Q0YF0sW2BhYCxgd2QyYCxgaGQyYCxgMGAsYGFuZzFgXSxbYGxgLGByYCxgaWJgXSxbYGxgLGByYCxgYmBdLFtgY2BdXX1dfSxyZj17YWRqOltdLGdkOltdLHBhdGhzOlt7dzo1LGg6NSxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYDBgLGAxYF0sW2BsYCxgNWAsYDBgXSxbYGxgLGA1YCxgNWBdLFtgbGAsYDBgLGA1YF0sW2BjYF1dfV19LGFmPXthZGo6W10sZ2Q6W1tgeDNgLGAqLyB3IDQgNWBdLFtgeDRgLGAqLyB3IDkgMTBgXV0scGF0aHM6W3t3OjUsaDo1LGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDBgXSxbYGxgLGA1YCxgMGBdLFtgbGAsYDRgLGA1YF0sW2BsYCxgMWAsYDVgXSxbYGNgXV19XX0sb2Y9e2FkajpbXSxnZDpbW2B4MmAsYCovIHcgMyA0YF1dLHBhdGhzOlt7dzoyLGg6MixmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYDBgLGAwYF0sW2BsYCxgMmAsYDBgXSxbYGxgLGAxYCxgMmBdLFtgY2BdXX1dfSxzZj17YWRqOltdLGdkOltbYHkyYCxgKi8gaCAzNjc1IDIxNjAwYF0sW2B5OGAsYCovIGggMjA3ODIgMjE2MDBgXSxbYHgzYCxgKi8gdyA5Mjk4IDIxNjAwYF0sW2B4NGAsYCovIHcgMTIyODYgMjE2MDBgXSxbYHg1YCxgKi8gdyAxODU5NSAyMTYwMGBdXSxwYXRoczpbe3c6MjE2MDAsaDoyMTYwMCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDBgLGAyMDc4MmBdLFtgQ2AsYDkyOThgLGAyMzU0MmAsYDkyOThgLGAxODAyMmAsYDE4NTk1YCxgMTgwMjJgXSxbYGxgLGAxODU5NWAsYDM2NzVgXSxbYGxgLGAwYCxgMzY3NWBdLFtgY2BdLFtgbWAsYDE1MzJgLGAzNjc1YF0sW2BsYCxgMTUzMmAsYDE4MTVgXSxbYGxgLGAyMDAwMGAsYDE4MTVgXSxbYGxgLGAyMDAwMGAsYDE2MjUyYF0sW2BDYCxgMTkyOThgLGAxNjI1MmAsYDE4NTk1YCxgMTYzNTJgLGAxODU5NWAsYDE2MzUyYF0sW2BsYCxgMTg1OTVgLGAzNjc1YF0sW2BjYF0sW2BtYCxgMjk3MmAsYDE4MTVgXSxbYGxgLGAyOTcyYCxgMGBdLFtgbGAsYDIxNjAwYCxgMGBdLFtgbGAsYDIxNjAwYCxgMTQzOTJgXSxbYENgLGAyMDgwMGAsYDE0MzkyYCxgMjAwMDBgLGAxNDQ2N2AsYDIwMDAwYCxgMTQ0NjdgXSxbYGxgLGAyMDAwMGAsYDE4MTVgXSxbYGNgXV19LHt3OjIxNjAwLGg6MjE2MDAsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDBgLGAzNjc1YF0sW2BsYCxgMTg1OTVgLGAzNjc1YF0sW2BsYCxgMTg1OTVgLGAxODAyMmBdLFtgQ2AsYDkyOThgLGAxODAyMmAsYDkyOThgLGAyMzU0MmAsYDBgLGAyMDc4MmBdLFtgY2BdLFtgbWAsYDE1MzJgLGAzNjc1YF0sW2BsYCxgMTUzMmAsYDE4MTVgXSxbYGxgLGAyMDAwMGAsYDE4MTVgXSxbYGxgLGAyMDAwMGAsYDE2MjUyYF0sW2BDYCxgMTkyOThgLGAxNjI1MmAsYDE4NTk1YCxgMTYzNTJgLGAxODU5NWAsYDE2MzUyYF0sW2BtYCxgMjk3MmAsYDE4MTVgXSxbYGxgLGAyOTcyYCxgMGBdLFtgbGAsYDIxNjAwYCxgMGBdLFtgbGAsYDIxNjAwYCxgMTQzOTJgXSxbYENgLGAyMDgwMGAsYDE0MzkyYCxgMjAwMDBgLGAxNDQ2N2AsYDIwMDAwYCxgMTQ0NjdgXV19LHt3OjIxNjAwLGg6MjE2MDAsZmlsbDpgbm9uZWAsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYDBgLGAyMDc4MmBdLFtgQ2AsYDkyOThgLGAyMzU0MmAsYDkyOThgLGAxODAyMmAsYDE4NTk1YCxgMTgwMjJgXSxbYGxgLGAxODU5NWAsYDE2MzUyYF0sW2BDYCxgMTg1OTVgLGAxNjM1MmAsYDE5Mjk4YCxgMTYyNTJgLGAyMDAwMGAsYDE2MjUyYF0sW2BsYCxgMjAwMDBgLGAxNDQ2N2BdLFtgQ2AsYDIwMDAwYCxgMTQ0NjdgLGAyMDgwMGAsYDE0MzkyYCxgMjE2MDBgLGAxNDM5MmBdLFtgbGAsYDIxNjAwYCxgMGBdLFtgbGAsYDI5NzJgLGAwYF0sW2BsYCxgMjk3MmAsYDE4MTVgXSxbYGxgLGAxNTMyYCxgMTgxNWBdLFtgbGAsYDE1MzJgLGAzNjc1YF0sW2BsYCxgMGAsYDM2NzVgXSxbYGNgXV19XX0sY2Y9e2FkajpbXSxnZDpbW2B4NGAsYCovIHcgMyA0YF1dLHBhdGhzOlt7dzoyLGg6MixmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDBgLGAwYF0sW2BsYCxgMmAsYDBgXSxbYGxgLGAxYCxgMmBdLFtgY2BdXX0se3c6NSxoOjUsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDJgLGA0YF0sW2BsYCxgM2AsYDRgXV19LHt3OjIsaDoyLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAwYCxgMGBdLFtgbGAsYDJgLGAwYF0sW2BsYCxgMWAsYDJgXSxbYGNgXV19XX0sbGY9e2FkajpbXSxnZDpbW2B5MWAsYCovIGggNCA1YF1dLHBhdGhzOlt7dzoxMCxoOjEwLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDBgXSxbYGxgLGAxMGAsYDBgXSxbYGxgLGAxMGAsYDhgXSxbYGxgLGA1YCxgMTBgXSxbYGxgLGAwYCxgOGBdLFtgY2BdXX1dfSx1Zj17YWRqOltdLGdkOltbYHgyYCxgKi8gdyA1IDZgXV0scGF0aHM6W3t3OjYsaDo2LGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMWAsYDBgXSxbYGxgLGA2YCxgMGBdLFtgYWAsYDFgLGAzYCxgM2NkNGAsYC0xMDgwMDAwMGBdLFtgbGAsYDFgLGA2YF0sW2BhYCxgMWAsYDNgLGBjZDRgLGBjZDJgXSxbYGNgXV19XX0sZGY9e2FkajpbXSxnZDpbW2BpZHhgLGBjb3Mgd2QyIDI3MDAwMDBgXSxbYGlkeWAsYHNpbiBoZDIgMjcwMDAwMGBdLFtgaWxgLGArLSBoYyAwIGlkeGBdLFtgaXJgLGArLSBoYyBpZHggMGBdLFtgaXRgLGArLSB2YyAwIGlkeWBdLFtgaWJgLGArLSB2YyBpZHkgMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdmNgXSxbYGFgLGB3ZDJgLGBoZDJgLGBjZDJgLGBjZDRgXSxbYGFgLGB3ZDJgLGBoZDJgLGAzY2Q0YCxgY2Q0YF0sW2BhYCxgd2QyYCxgaGQyYCxgMGAsYGNkNGBdLFtgYWAsYHdkMmAsYGhkMmAsYGNkNGAsYGNkNGBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGhjYCxgdGBdLFtgbGAsYGhjYCxgYmBdLFtgbWAsYGxgLGB2Y2BdLFtgbGAsYHJgLGB2Y2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB2Y2BdLFtgYWAsYHdkMmAsYGhkMmAsYGNkMmAsYGNkNGBdLFtgYWAsYHdkMmAsYGhkMmAsYDNjZDRgLGBjZDRgXSxbYGFgLGB3ZDJgLGBoZDJgLGAwYCxgY2Q0YF0sW2BhYCxgd2QyYCxgaGQyYCxgY2Q0YCxgY2Q0YF0sW2BjYF1dfV19LGZmPXthZGo6W10sZ2Q6W1tgeDJgLGAqLyB3IDcgOGBdXSxwYXRoczpbe3c6MSxoOjEsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGAwYCxgMGBdLFtgbGAsYDFgLGAwYF0sW2BsYCxgMWAsYDFgXSxbYGxgLGAwYCxgMWBdLFtgY2BdXX0se3c6OCxoOjgsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDFgLGAwYF0sW2BsYCxgMWAsYDhgXSxbYG1gLGA3YCxgMGBdLFtgbGAsYDdgLGA4YF1dfSx7dzoxLGg6MSxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDBgXSxbYGxgLGAxYCxgMGBdLFtgbGAsYDFgLGAxYF0sW2BsYCxgMGAsYDFgXSxbYGNgXV19XX0scGY9e2FkajpbXSxnZDpbW2B4MmAsYCovIHcgNCA1YF1dLHBhdGhzOlt7dzoxMCxoOjEwLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDVgXSxbYGxgLGAyYCxgMGBdLFtgbGAsYDhgLGAwYF0sW2BsYCxgMTBgLGA1YF0sW2BsYCxgOGAsYDEwYF0sW2BsYCxgMmAsYDEwYF0sW2BjYF1dfV19LG1mPXthZGo6W10sZ2Q6W10scGF0aHM6W3t3OjEsaDoxLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgMGAsYDBgXSxbYGxgLGAxYCxgMGBdLFtgbGAsYDFgLGAxYF0sW2BsYCxgMGAsYDFgXSxbYGNgXV19XX0saGY9e2FkajpbXSxnZDpbXSxwYXRoczpbe3c6NSxoOjUsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAwYCxgMWBdLFtgbGAsYDFgLGAwYF0sW2BsYCxgNWAsYDBgXSxbYGxgLGA1YCxgNWBdLFtgbGAsYDBgLGA1YF0sW2BjYF1dfV19LGdmPXthZGo6W10sZ2Q6W1tgeTJgLGAqLyBoIDkgMTBgXSxbYGliYCxgKi8gaCA0IDVgXV0scGF0aHM6W3t3OjIwLGg6MjAsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAwYCxgMmBdLFtgYWAsYDVgLGAyYCxgY2QyYCxgLTEwODAwMDAwYF0sW2BhYCxgNWAsYDJgLGBjZDJgLGBjZDJgXSxbYGxgLGAyMGAsYDE4YF0sW2BhYCxgNWAsYDJgLGAwYCxgLTEwODAwMDAwYF0sW2BhYCxgNWAsYDJgLGAwYCxgY2QyYF0sW2BjYF1dfV19LF9mPXthZGo6W10sZ2Q6W1tgaXJgLGAqLyB3IDMgNGBdLFtgaWJgLGAqLyBoIDMgNGBdXSxwYXRoczpbe3c6MixoOjIsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGAwYCxgMWBdLFtgbGAsYDFgLGAwYF0sW2BsYCxgMmAsYDFgXSxbYGxgLGAxYCxgMmBdLFtgY2BdXX0se3c6MixoOjIsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYDBgLGAxYF0sW2BsYCxgMmAsYDFgXV19LHt3OjIsaDoyLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAwYCxgMWBdLFtgbGAsYDFgLGAwYF0sW2BsYCxgMmAsYDFgXSxbYGxgLGAxYCxgMmBdLFtgY2BdXX1dfSx2Zj17YWRqOltdLGdkOltbYGlkeGAsYGNvcyB3ZDIgMjcwMDAwMGBdLFtgaWR5YCxgc2luIGhkMiAyNzAwMDAwYF0sW2BpbGAsYCstIGhjIDAgaWR4YF0sW2BpcmAsYCstIGhjIGlkeCAwYF0sW2BpdGAsYCstIHZjIDAgaWR5YF0sW2BpYmAsYCstIHZjIGlkeSAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB2Y2BdLFtgYWAsYHdkMmAsYGhkMmAsYGNkMmAsYGNkNGBdLFtgYWAsYHdkMmAsYGhkMmAsYDNjZDRgLGBjZDRgXSxbYGFgLGB3ZDJgLGBoZDJgLGAwYCxgY2Q0YF0sW2BhYCxgd2QyYCxgaGQyYCxgY2Q0YCxgY2Q0YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgaWxgLGBpdGBdLFtgbGAsYGlyYCxgaWJgXSxbYG1gLGBpcmAsYGl0YF0sW2BsYCxgaWxgLGBpYmBdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB2Y2BdLFtgYWAsYHdkMmAsYGhkMmAsYGNkMmAsYGNkNGBdLFtgYWAsYHdkMmAsYGhkMmAsYDNjZDRgLGBjZDRgXSxbYGFgLGB3ZDJgLGBoZDJgLGAwYCxgY2Q0YF0sW2BhYCxgd2QyYCxgaGQyYCxgY2Q0YCxgY2Q0YF0sW2BjYF1dfV19LHlmPXthZGo6W10sZ2Q6W1tgaWxgLGAqLyB3IDEwMTggMjE2MDBgXSxbYGlyYCxgKi8gdyAyMDU4MiAyMTYwMGBdLFtgaXRgLGAqLyBoIDMxNjMgMjE2MDBgXSxbYGliYCxgKi8gaCAxODQzNyAyMTYwMGBdXSxwYXRoczpbe3c6MjE2MDAsaDoyMTYwMCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYDM0NzVgLGAwYF0sW2BsYCxgMTgxMjVgLGAwYF0sW2BhYCxgMzQ3NWAsYDEwODAwYCxgM2NkNGAsYGNkMmBdLFtgbGAsYDM0NzVgLGAyMTYwMGBdLFtgYWAsYDM0NzVgLGAxMDgwMGAsYGNkNGAsYGNkMmBdLFtgY2BdXX1dfSxiZj17YWRqOltbYGFkamAsYHZhbCAxNjY2N2BdXSxnZDpbW2BhYCxgcGluIDAgYWRqIDUwMDAwYF0sW2BkeTJgLGAqLyBzcyBhIDEwMDAwMGBdLFtgZHkxYCxgKi8gZHkyIDEgNWBdLFtgeDFgLGArLSByIDAgZHkyYF0sW2B4MmAsYCstIHgxIGR5MSAwYF0sW2B5MmAsYCstIGIgMCBkeTJgXSxbYHkxYCxgKy0geTIgZHkxIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGB5MmBdLFtgbGAsYHgxYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5MZXNzYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDFgLGBiYF0sW2BsYCxgeDJgLGB5MWBdLFtgbGAsYHJgLGB5MmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHgxYCxgYmBdLFtgbGAsYHgyYCxgeTFgXSxbYGxgLGByYCxgeTJgXSxbYGxgLGB4MWAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgbGAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgeTJgXV19XX0seGY9e2FkajpbW2BhZGoxYCxgdmFsIDEyNTAwYF1dLGdkOltbYGExYCxgcGluIDAgYWRqMSA1MDAwMGBdLFtgeDFgLGAqLyBzcyBhMSAxMDAwMDBgXSxbYHg0YCxgKy0gciAwIHgxYF0sW2B5NGAsYCstIGIgMCB4MWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdLFtgbWAsYHgxYCxgeDFgXSxbYGxgLGB4MWAsYHk0YF0sW2BsYCxgeDRgLGB5NGBdLFtgbGAsYHg0YCxgeDFgXSxbYGNgXV19XX0sU2Y9e2FkajpbXSxnZDpbW2BkYCxgKi8gc3MgMSAyMGBdLFtgcncyYCxgKy0gd2QyIDAgZGBdLFtgcmgyYCxgKy0gaGQ0IDAgZGBdLFtgdDFgLGBjb3Mgd2QyIDQ4MDAwMGBdLFtgdDJgLGBzaW4gaGQ0IDQ4MDAwMGBdLFtgZGFgLGBhdDIgdDEgdDJgXSxbYDJkYWAsYCovIGRhIDIgMWBdLFtgc3RBbmcxYCxgKy0gY2QyIDAgZGFgXSxbYHN3QW5nMWAsYCstIGNkMiAyZGEgMGBdLFtgc3dBbmczYCxgKy0gY2QyIDAgMmRhYF0sW2BydzNgLGAqLyB3ZDIgMSA0YF0sW2ByaDNgLGAqLyBoZDQgMSA0YF0sW2BjdDFgLGBjb3MgaGQ0IHN0QW5nMWBdLFtgc3QxYCxgc2luIHdkMiBzdEFuZzFgXSxbYG0xYCxgbW9kIGN0MSBzdDEgMGBdLFtgbjFgLGAqLyB3ZDIgaGQ0IG0xYF0sW2BkeDFgLGBjb3MgbjEgc3RBbmcxYF0sW2BkeTFgLGBzaW4gbjEgc3RBbmcxYF0sW2B4MWAsYCstIGhjIGR4MSAwYF0sW2B5MWAsYCstIGhkNCBkeTEgMGBdLFtgY3QzYCxgY29zIHJoMyBkYWBdLFtgc3QzYCxgc2luIHJ3MyBkYWBdLFtgbTNgLGBtb2QgY3QzIHN0MyAwYF0sW2BuM2AsYCovIHJ3MyByaDMgbTNgXSxbYGR4M2AsYGNvcyBuMyBkYWBdLFtgZHkzYCxgc2luIG4zIGRhYF0sW2B4M2AsYCstIGhjIGR4MyAwYF0sW2B2YzNgLGArLSBiIDAgcmgzYF0sW2B5MmAsYCstIHZjMyBkeTMgMGBdLFtgeDJgLGArLSB3ZDIgMCBydzJgXSxbYGNkYCxgKi8gY2QyIDIgMWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4MWAsYHkxYF0sW2BhYCxgd2QyYCxgaGQ0YCxgc3RBbmcxYCxgc3dBbmcxYF0sW2BsYCxgeDNgLGB5MmBdLFtgYWAsYHJ3M2AsYHJoM2AsYGRhYCxgc3dBbmczYF0sW2BjYF0sW2BtYCxgeDJgLGBoZDRgXSxbYGFgLGBydzJgLGByaDJgLGBjZDJgLGAtMjE2MDAwMDBgXSxbYGNgXV19XX0sQ2Y9e2FkajpbW2BhZGoxYCxgdmFsIDE1MDAwYF0sW2BhZGoyYCxgdmFsIDM1MjZgXV0sZ2Q6W1tgYTFgLGBwaW4gMCBhZGoxIDIwMDAwYF0sW2BhMmAsYHBpbiAwIGFkajIgNTM1OGBdLFtgdGhgLGAqLyBzcyBhMSAxMDAwMDBgXSxbYGxGRGAsYCovIHNzIGEyIDEwMDAwMGBdLFtgdGgyYCxgKi8gdGggMSAyYF0sW2BsMmAsYCovIGxGRCAxIDJgXSxbYGwzYCxgKy0gdGgyIGwyIDBgXSxbYHJoYCxgKy0gaGQyIDAgdGhgXSxbYHJ3YCxgKy0gd2QyIDAgdGhgXSxbYGRyYCxgKy0gcncgMCByaGBdLFtgbWF4cmAsYD86IGRyIHJoIHJ3YF0sW2BoYWAsYGF0MiBtYXhyIGwzYF0sW2BhQTFgLGArLSAxOTgwMDAwMCAwIGhhYF0sW2BhRDFgLGArLSAxOTgwMDAwMCBoYSAwYF0sW2B0YTExYCxgY29zIHJ3IGFBMWBdLFtgdGExMmAsYHNpbiByaCBhQTFgXSxbYGJBMWAsYGF0MiB0YTExIHRhMTJgXSxbYGN0YTFgLGBjb3MgcmggYkExYF0sW2BzdGExYCxgc2luIHJ3IGJBMWBdLFtgbWExYCxgbW9kIGN0YTEgc3RhMSAwYF0sW2BuYTFgLGAqLyBydyByaCBtYTFgXSxbYGR4YTFgLGBjb3MgbmExIGJBMWBdLFtgZHlhMWAsYHNpbiBuYTEgYkExYF0sW2B4QTFgLGArLSBoYyBkeGExIDBgXSxbYHlBMWAsYCstIHZjIGR5YTEgMGBdLFtgdGQxMWAsYGNvcyBydyBhRDFgXSxbYHRkMTJgLGBzaW4gcmggYUQxYF0sW2BiRDFgLGBhdDIgdGQxMSB0ZDEyYF0sW2BjdGQxYCxgY29zIHJoIGJEMWBdLFtgc3RkMWAsYHNpbiBydyBiRDFgXSxbYG1kMWAsYG1vZCBjdGQxIHN0ZDEgMGBdLFtgbmQxYCxgKi8gcncgcmggbWQxYF0sW2BkeGQxYCxgY29zIG5kMSBiRDFgXSxbYGR5ZDFgLGBzaW4gbmQxIGJEMWBdLFtgeEQxYCxgKy0gaGMgZHhkMSAwYF0sW2B5RDFgLGArLSB2YyBkeWQxIDBgXSxbYHhBRDFgLGArLSB4QTEgMCB4RDFgXSxbYHlBRDFgLGArLSB5QTEgMCB5RDFgXSxbYGxBRDFgLGBtb2QgeEFEMSB5QUQxIDBgXSxbYGExYCxgYXQyIHlBRDEgeEFEMWBdLFtgZHhGMWAsYHNpbiBsRkQgYTFgXSxbYGR5RjFgLGBjb3MgbEZEIGExYF0sW2B4RjFgLGArLSB4RDEgZHhGMSAwYF0sW2B5RjFgLGArLSB5RDEgZHlGMSAwYF0sW2B4RTFgLGArLSB4QTEgMCBkeEYxYF0sW2B5RTFgLGArLSB5QTEgMCBkeUYxYF0sW2B5QzF0YCxgc2luIHRoIGExYF0sW2B4QzF0YCxgY29zIHRoIGExYF0sW2B5QzFgLGArLSB5RjEgeUMxdCAwYF0sW2B4QzFgLGArLSB4RjEgMCB4QzF0YF0sW2B5QjFgLGArLSB5RTEgeUMxdCAwYF0sW2B4QjFgLGArLSB4RTEgMCB4QzF0YF0sW2BhRDZgLGArLSAzY2Q0IGhhIDBgXSxbYHRkNjFgLGBjb3MgcncgYUQ2YF0sW2B0ZDYyYCxgc2luIHJoIGFENmBdLFtgYkQ2YCxgYXQyIHRkNjEgdGQ2MmBdLFtgY3RkNmAsYGNvcyByaCBiRDZgXSxbYHN0ZDZgLGBzaW4gcncgYkQ2YF0sW2BtZDZgLGBtb2QgY3RkNiBzdGQ2IDBgXSxbYG5kNmAsYCovIHJ3IHJoIG1kNmBdLFtgZHhkNmAsYGNvcyBuZDYgYkQ2YF0sW2BkeWQ2YCxgc2luIG5kNiBiRDZgXSxbYHhENmAsYCstIGhjIGR4ZDYgMGBdLFtgeUQ2YCxgKy0gdmMgZHlkNiAwYF0sW2B4QTZgLGArLSBoYyAwIGR4ZDZgXSxbYHhGNmAsYCstIHhENiAwIGxGRGBdLFtgeEU2YCxgKy0geEE2IGxGRCAwYF0sW2B5QzZgLGArLSB5RDYgMCB0aGBdLFtgc3dBbmcxYCxgKy0gYkExIDAgYkQ2YF0sW2BhQTJgLGArLSAxODAwMDAwIDAgaGFgXSxbYGFEMmAsYCstIDE4MDAwMDAgaGEgMGBdLFtgdGEyMWAsYGNvcyBydyBhQTJgXSxbYHRhMjJgLGBzaW4gcmggYUEyYF0sW2BiQTJgLGBhdDIgdGEyMSB0YTIyYF0sW2B5QTJgLGArLSBoIDAgeUQxYF0sW2B0ZDIxYCxgY29zIHJ3IGFEMmBdLFtgdGQyMmAsYHNpbiByaCBhRDJgXSxbYGJEMmAsYGF0MiB0ZDIxIHRkMjJgXSxbYHlEMmAsYCstIGggMCB5QTFgXSxbYHlDMmAsYCstIGggMCB5QjFgXSxbYHlCMmAsYCstIGggMCB5QzFgXSxbYHhCMmAsYHZhbCB4QzFgXSxbYHN3QW5nMmAsYCstIGJBMiAwIGJEMWBdLFtgYUQzYCxgKy0gY2Q0IGhhIDBgXSxbYHRkMzFgLGBjb3MgcncgYUQzYF0sW2B0ZDMyYCxgc2luIHJoIGFEM2BdLFtgYkQzYCxgYXQyIHRkMzEgdGQzMmBdLFtgeUQzYCxgKy0gaCAwIHlENmBdLFtgeUIzYCxgKy0gaCAwIHlDNmBdLFtgYUQ0YCxgKy0gOTAwMDAwMCBoYSAwYF0sW2B0ZDQxYCxgY29zIHJ3IGFENGBdLFtgdGQ0MmAsYHNpbiByaCBhRDRgXSxbYGJENGAsYGF0MiB0ZDQxIHRkNDJgXSxbYHhENGAsYCstIHcgMCB4RDFgXSxbYHhDNGAsYCstIHcgMCB4QzFgXSxbYHhCNGAsYCstIHcgMCB4QjFgXSxbYGFENWAsYCstIDEyNjAwMDAwIGhhIDBgXSxbYHRkNTFgLGBjb3MgcncgYUQ1YF0sW2B0ZDUyYCxgc2luIHJoIGFENWBdLFtgYkQ1YCxgYXQyIHRkNTEgdGQ1MmBdLFtgeEQ1YCxgKy0gdyAwIHhBMWBdLFtgeEM1YCxgKy0gdyAwIHhCMWBdLFtgeEI1YCxgKy0gdyAwIHhDMWBdLFtgeEN4bjFgLGArLyB4QjEgeEMxIDJgXSxbYHlDeG4xYCxgKy8geUIxIHlDMSAyYF0sW2B5Q3huMmAsYCstIGIgMCB5Q3huMWBdLFtgeEN4bjRgLGArLyByIDAgeEN4bjFgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeEExYCxgeUExYF0sW2BsYCxgeEIxYCxgeUIxYF0sW2BsYCxgeEMxYCxgeUMxYF0sW2BsYCxgeEQxYCxgeUQxYF0sW2BhYCxgcndgLGByaGAsYGJEMWAsYHN3QW5nMmBdLFtgbGAsYHhDMWAsYHlCMmBdLFtgbGAsYHhCMWAsYHlDMmBdLFtgbGAsYHhBMWAsYHlEMmBdLFtgYWAsYHJ3YCxgcmhgLGBiRDJgLGBzd0FuZzFgXSxbYGxgLGB4RjZgLGB5QjNgXSxbYGxgLGB4RTZgLGB5QjNgXSxbYGxgLGB4QTZgLGB5RDNgXSxbYGFgLGByd2AsYHJoYCxgYkQzYCxgc3dBbmcxYF0sW2BsYCxgeEI0YCxgeUMyYF0sW2BsYCxgeEM0YCxgeUIyYF0sW2BsYCxgeEQ0YCxgeUEyYF0sW2BhYCxgcndgLGByaGAsYGJENGAsYHN3QW5nMmBdLFtgbGAsYHhCNWAsYHlDMWBdLFtgbGAsYHhDNWAsYHlCMWBdLFtgbGAsYHhENWAsYHlBMWBdLFtgYWAsYHJ3YCxgcmhgLGBiRDVgLGBzd0FuZzFgXSxbYGxgLGB4RTZgLGB5QzZgXSxbYGxgLGB4RjZgLGB5QzZgXSxbYGxgLGB4RDZgLGB5RDZgXSxbYGFgLGByd2AsYHJoYCxgYkQ2YCxgc3dBbmcxYF0sW2BjYF1dfV19LHdmPXthZGo6W1tgYWRqMWAsYHZhbCAxMDAwMGBdLFtgYWRqMmAsYHZhbCAxNzYzYF1dLGdkOltbYGExYCxgcGluIDAgYWRqMSAyMDAwMGBdLFtgYTJgLGBwaW4gMCBhZGoyIDI2NzlgXSxbYHRoYCxgKi8gc3MgYTEgMTAwMDAwYF0sW2BsRkRgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYHRoMmAsYCovIHRoIDEgMmBdLFtgbDJgLGAqLyBsRkQgMSAyYF0sW2BsM2AsYCstIHRoMiBsMiAwYF0sW2ByaGAsYCstIGhkMiAwIHRoYF0sW2Byd2AsYCstIHdkMiAwIHRoYF0sW2BkcmAsYCstIHJ3IDAgcmhgXSxbYG1heHJgLGA/OiBkciByaCByd2BdLFtgaGFgLGBhdDIgbWF4ciBsM2BdLFtgYUExYCxgKy0gMTg2MDAwMDAgMCBoYWBdLFtgYUQxYCxgKy0gMTg2MDAwMDAgaGEgMGBdLFtgdGExMWAsYGNvcyBydyBhQTFgXSxbYHRhMTJgLGBzaW4gcmggYUExYF0sW2BiQTFgLGBhdDIgdGExMSB0YTEyYF0sW2BjdGExYCxgY29zIHJoIGJBMWBdLFtgc3RhMWAsYHNpbiBydyBiQTFgXSxbYG1hMWAsYG1vZCBjdGExIHN0YTEgMGBdLFtgbmExYCxgKi8gcncgcmggbWExYF0sW2BkeGExYCxgY29zIG5hMSBiQTFgXSxbYGR5YTFgLGBzaW4gbmExIGJBMWBdLFtgeEExYCxgKy0gaGMgZHhhMSAwYF0sW2B5QTFgLGArLSB2YyBkeWExIDBgXSxbYHRkMTFgLGBjb3MgcncgYUQxYF0sW2B0ZDEyYCxgc2luIHJoIGFEMWBdLFtgYkQxYCxgYXQyIHRkMTEgdGQxMmBdLFtgY3RkMWAsYGNvcyByaCBiRDFgXSxbYHN0ZDFgLGBzaW4gcncgYkQxYF0sW2BtZDFgLGBtb2QgY3RkMSBzdGQxIDBgXSxbYG5kMWAsYCovIHJ3IHJoIG1kMWBdLFtgZHhkMWAsYGNvcyBuZDEgYkQxYF0sW2BkeWQxYCxgc2luIG5kMSBiRDFgXSxbYHhEMWAsYCstIGhjIGR4ZDEgMGBdLFtgeUQxYCxgKy0gdmMgZHlkMSAwYF0sW2B4QUQxYCxgKy0geEExIDAgeEQxYF0sW2B5QUQxYCxgKy0geUExIDAgeUQxYF0sW2BsQUQxYCxgbW9kIHhBRDEgeUFEMSAwYF0sW2BhMWAsYGF0MiB5QUQxIHhBRDFgXSxbYGR4RjFgLGBzaW4gbEZEIGExYF0sW2BkeUYxYCxgY29zIGxGRCBhMWBdLFtgeEYxYCxgKy0geEQxIGR4RjEgMGBdLFtgeUYxYCxgKy0geUQxIGR5RjEgMGBdLFtgeEUxYCxgKy0geEExIDAgZHhGMWBdLFtgeUUxYCxgKy0geUExIDAgZHlGMWBdLFtgeUMxdGAsYHNpbiB0aCBhMWBdLFtgeEMxdGAsYGNvcyB0aCBhMWBdLFtgeUMxYCxgKy0geUYxIHlDMXQgMGBdLFtgeEMxYCxgKy0geEYxIDAgeEMxdGBdLFtgeUIxYCxgKy0geUUxIHlDMXQgMGBdLFtgeEIxYCxgKy0geEUxIDAgeEMxdGBdLFtgYUEyYCxgKy0gMjEwMDAwMDAgMCBoYWBdLFtgYUQyYCxgKy0gMjEwMDAwMDAgaGEgMGBdLFtgdGEyMWAsYGNvcyBydyBhQTJgXSxbYHRhMjJgLGBzaW4gcmggYUEyYF0sW2BiQTJgLGBhdDIgdGEyMSB0YTIyYF0sW2BjdGEyYCxgY29zIHJoIGJBMmBdLFtgc3RhMmAsYHNpbiBydyBiQTJgXSxbYG1hMmAsYG1vZCBjdGEyIHN0YTIgMGBdLFtgbmEyYCxgKi8gcncgcmggbWEyYF0sW2BkeGEyYCxgY29zIG5hMiBiQTJgXSxbYGR5YTJgLGBzaW4gbmEyIGJBMmBdLFtgeEEyYCxgKy0gaGMgZHhhMiAwYF0sW2B5QTJgLGArLSB2YyBkeWEyIDBgXSxbYHRkMjFgLGBjb3MgcncgYUQyYF0sW2B0ZDIyYCxgc2luIHJoIGFEMmBdLFtgYkQyYCxgYXQyIHRkMjEgdGQyMmBdLFtgY3RkMmAsYGNvcyByaCBiRDJgXSxbYHN0ZDJgLGBzaW4gcncgYkQyYF0sW2BtZDJgLGBtb2QgY3RkMiBzdGQyIDBgXSxbYG5kMmAsYCovIHJ3IHJoIG1kMmBdLFtgZHhkMmAsYGNvcyBuZDIgYkQyYF0sW2BkeWQyYCxgc2luIG5kMiBiRDJgXSxbYHhEMmAsYCstIGhjIGR4ZDIgMGBdLFtgeUQyYCxgKy0gdmMgZHlkMiAwYF0sW2B4QUQyYCxgKy0geEEyIDAgeEQyYF0sW2B5QUQyYCxgKy0geUEyIDAgeUQyYF0sW2BsQUQyYCxgbW9kIHhBRDIgeUFEMiAwYF0sW2BhMmAsYGF0MiB5QUQyIHhBRDJgXSxbYGR4RjJgLGBzaW4gbEZEIGEyYF0sW2BkeUYyYCxgY29zIGxGRCBhMmBdLFtgeEYyYCxgKy0geEQyIGR4RjIgMGBdLFtgeUYyYCxgKy0geUQyIGR5RjIgMGBdLFtgeEUyYCxgKy0geEEyIDAgZHhGMmBdLFtgeUUyYCxgKy0geUEyIDAgZHlGMmBdLFtgeUMydGAsYHNpbiB0aCBhMmBdLFtgeEMydGAsYGNvcyB0aCBhMmBdLFtgeUMyYCxgKy0geUYyIHlDMnQgMGBdLFtgeEMyYCxgKy0geEYyIDAgeEMydGBdLFtgeUIyYCxgKy0geUUyIHlDMnQgMGBdLFtgeEIyYCxgKy0geEUyIDAgeEMydGBdLFtgc3dBbmcxYCxgKy0gYkEyIDAgYkQxYF0sW2BhQTNgLGArLSAxODAwMDAwIDAgaGFgXSxbYGFEM2AsYCstIDE4MDAwMDAgaGEgMGBdLFtgdGEzMWAsYGNvcyBydyBhQTNgXSxbYHRhMzJgLGBzaW4gcmggYUEzYF0sW2BiQTNgLGBhdDIgdGEzMSB0YTMyYF0sW2BjdGEzYCxgY29zIHJoIGJBM2BdLFtgc3RhM2AsYHNpbiBydyBiQTNgXSxbYG1hM2AsYG1vZCBjdGEzIHN0YTMgMGBdLFtgbmEzYCxgKi8gcncgcmggbWEzYF0sW2BkeGEzYCxgY29zIG5hMyBiQTNgXSxbYGR5YTNgLGBzaW4gbmEzIGJBM2BdLFtgeEEzYCxgKy0gaGMgZHhhMyAwYF0sW2B5QTNgLGArLSB2YyBkeWEzIDBgXSxbYHRkMzFgLGBjb3MgcncgYUQzYF0sW2B0ZDMyYCxgc2luIHJoIGFEM2BdLFtgYkQzYCxgYXQyIHRkMzEgdGQzMmBdLFtgY3RkM2AsYGNvcyByaCBiRDNgXSxbYHN0ZDNgLGBzaW4gcncgYkQzYF0sW2BtZDNgLGBtb2QgY3RkMyBzdGQzIDBgXSxbYG5kM2AsYCovIHJ3IHJoIG1kM2BdLFtgZHhkM2AsYGNvcyBuZDMgYkQzYF0sW2BkeWQzYCxgc2luIG5kMyBiRDNgXSxbYHhEM2AsYCstIGhjIGR4ZDMgMGBdLFtgeUQzYCxgKy0gdmMgZHlkMyAwYF0sW2B4QUQzYCxgKy0geEEzIDAgeEQzYF0sW2B5QUQzYCxgKy0geUEzIDAgeUQzYF0sW2BsQUQzYCxgbW9kIHhBRDMgeUFEMyAwYF0sW2BhM2AsYGF0MiB5QUQzIHhBRDNgXSxbYGR4RjNgLGBzaW4gbEZEIGEzYF0sW2BkeUYzYCxgY29zIGxGRCBhM2BdLFtgeEYzYCxgKy0geEQzIGR4RjMgMGBdLFtgeUYzYCxgKy0geUQzIGR5RjMgMGBdLFtgeEUzYCxgKy0geEEzIDAgZHhGM2BdLFtgeUUzYCxgKy0geUEzIDAgZHlGM2BdLFtgeUMzdGAsYHNpbiB0aCBhM2BdLFtgeEMzdGAsYGNvcyB0aCBhM2BdLFtgeUMzYCxgKy0geUYzIHlDM3QgMGBdLFtgeEMzYCxgKy0geEYzIDAgeEMzdGBdLFtgeUIzYCxgKy0geUUzIHlDM3QgMGBdLFtgeEIzYCxgKy0geEUzIDAgeEMzdGBdLFtgc3dBbmcyYCxgKy0gYkEzIDAgYkQyYF0sW2BhQTRgLGArLSA0MjAwMDAwIDAgaGFgXSxbYGFENGAsYCstIDQyMDAwMDAgaGEgMGBdLFtgdGE0MWAsYGNvcyBydyBhQTRgXSxbYHRhNDJgLGBzaW4gcmggYUE0YF0sW2BiQTRgLGBhdDIgdGE0MSB0YTQyYF0sW2BjdGE0YCxgY29zIHJoIGJBNGBdLFtgc3RhNGAsYHNpbiBydyBiQTRgXSxbYG1hNGAsYG1vZCBjdGE0IHN0YTQgMGBdLFtgbmE0YCxgKi8gcncgcmggbWE0YF0sW2BkeGE0YCxgY29zIG5hNCBiQTRgXSxbYGR5YTRgLGBzaW4gbmE0IGJBNGBdLFtgeEE0YCxgKy0gaGMgZHhhNCAwYF0sW2B5QTRgLGArLSB2YyBkeWE0IDBgXSxbYHRkNDFgLGBjb3MgcncgYUQ0YF0sW2B0ZDQyYCxgc2luIHJoIGFENGBdLFtgYkQ0YCxgYXQyIHRkNDEgdGQ0MmBdLFtgY3RkNGAsYGNvcyByaCBiRDRgXSxbYHN0ZDRgLGBzaW4gcncgYkQ0YF0sW2BtZDRgLGBtb2QgY3RkNCBzdGQ0IDBgXSxbYG5kNGAsYCovIHJ3IHJoIG1kNGBdLFtgZHhkNGAsYGNvcyBuZDQgYkQ0YF0sW2BkeWQ0YCxgc2luIG5kNCBiRDRgXSxbYHhENGAsYCstIGhjIGR4ZDQgMGBdLFtgeUQ0YCxgKy0gdmMgZHlkNCAwYF0sW2B4QUQ0YCxgKy0geEE0IDAgeEQ0YF0sW2B5QUQ0YCxgKy0geUE0IDAgeUQ0YF0sW2BsQUQ0YCxgbW9kIHhBRDQgeUFENCAwYF0sW2BhNGAsYGF0MiB5QUQ0IHhBRDRgXSxbYGR4RjRgLGBzaW4gbEZEIGE0YF0sW2BkeUY0YCxgY29zIGxGRCBhNGBdLFtgeEY0YCxgKy0geEQ0IGR4RjQgMGBdLFtgeUY0YCxgKy0geUQ0IGR5RjQgMGBdLFtgeEU0YCxgKy0geEE0IDAgZHhGNGBdLFtgeUU0YCxgKy0geUE0IDAgZHlGNGBdLFtgeUM0dGAsYHNpbiB0aCBhNGBdLFtgeEM0dGAsYGNvcyB0aCBhNGBdLFtgeUM0YCxgKy0geUY0IHlDNHQgMGBdLFtgeEM0YCxgKy0geEY0IDAgeEM0dGBdLFtgeUI0YCxgKy0geUU0IHlDNHQgMGBdLFtgeEI0YCxgKy0geEU0IDAgeEM0dGBdLFtgc3dBbmczYCxgKy0gYkE0IDAgYkQzYF0sW2BhQTVgLGArLSA2NjAwMDAwIDAgaGFgXSxbYGFENWAsYCstIDY2MDAwMDAgaGEgMGBdLFtgdGE1MWAsYGNvcyBydyBhQTVgXSxbYHRhNTJgLGBzaW4gcmggYUE1YF0sW2BiQTVgLGBhdDIgdGE1MSB0YTUyYF0sW2B0ZDUxYCxgY29zIHJ3IGFENWBdLFtgdGQ1MmAsYHNpbiByaCBhRDVgXSxbYGJENWAsYGF0MiB0ZDUxIHRkNTJgXSxbYHhENWAsYCstIHcgMCB4QTRgXSxbYHhDNWAsYCstIHcgMCB4QjRgXSxbYHhCNWAsYCstIHcgMCB4QzRgXSxbYHN3QW5nNGAsYCstIGJBNSAwIGJENGBdLFtgYUQ2YCxgKy0gOTAwMDAwMCBoYSAwYF0sW2B0ZDYxYCxgY29zIHJ3IGFENmBdLFtgdGQ2MmAsYHNpbiByaCBhRDZgXSxbYGJENmAsYGF0MiB0ZDYxIHRkNjJgXSxbYHhENmAsYCstIHcgMCB4QTNgXSxbYHhDNmAsYCstIHcgMCB4QjNgXSxbYHhCNmAsYCstIHcgMCB4QzNgXSxbYGFEN2AsYCstIDExNDAwMDAwIGhhIDBgXSxbYHRkNzFgLGBjb3MgcncgYUQ3YF0sW2B0ZDcyYCxgc2luIHJoIGFEN2BdLFtgYkQ3YCxgYXQyIHRkNzEgdGQ3MmBdLFtgeEQ3YCxgKy0gdyAwIHhBMmBdLFtgeEM3YCxgKy0gdyAwIHhCMmBdLFtgeEI3YCxgKy0gdyAwIHhDMmBdLFtgYUQ4YCxgKy0gMTM4MDAwMDAgaGEgMGBdLFtgdGQ4MWAsYGNvcyBydyBhRDhgXSxbYHRkODJgLGBzaW4gcmggYUQ4YF0sW2BiRDhgLGBhdDIgdGQ4MSB0ZDgyYF0sW2B4QThgLGArLSB3IDAgeEQxYF0sW2B4RDhgLGArLSB3IDAgeEExYF0sW2B4QzhgLGArLSB3IDAgeEIxYF0sW2B4QjhgLGArLSB3IDAgeEMxYF0sW2BhQTlgLGArLSAzY2Q0IDAgaGFgXSxbYGFEOWAsYCstIDNjZDQgaGEgMGBdLFtgdGQ5MWAsYGNvcyBydyBhRDlgXSxbYHRkOTJgLGBzaW4gcmggYUQ5YF0sW2BiRDlgLGBhdDIgdGQ5MSB0ZDkyYF0sW2BjdGQ5YCxgY29zIHJoIGJEOWBdLFtgc3RkOWAsYHNpbiBydyBiRDlgXSxbYG1kOWAsYG1vZCBjdGQ5IHN0ZDkgMGBdLFtgbmQ5YCxgKi8gcncgcmggbWQ5YF0sW2BkeGQ5YCxgY29zIG5kOSBiRDlgXSxbYGR5ZDlgLGBzaW4gbmQ5IGJEOWBdLFtgeEQ5YCxgKy0gaGMgZHhkOSAwYF0sW2B5RDlgLGArLSB2YyBkeWQ5IDBgXSxbYHRhOTFgLGBjb3MgcncgYUE5YF0sW2B0YTkyYCxgc2luIHJoIGFBOWBdLFtgYkE5YCxgYXQyIHRhOTEgdGE5MmBdLFtgeEE5YCxgKy0gaGMgMCBkeGQ5YF0sW2B4RjlgLGArLSB4RDkgMCBsRkRgXSxbYHhFOWAsYCstIHhBOSBsRkQgMGBdLFtgeUM5YCxgKy0geUQ5IDAgdGhgXSxbYHN3QW5nNWAsYCstIGJBOSAwIGJEOGBdLFtgeEN4bjFgLGArLyB4QjEgeEMxIDJgXSxbYHlDeG4xYCxgKy8geUIxIHlDMSAyYF0sW2B4Q3huMmAsYCsvIHhCMiB4QzIgMmBdLFtgeUN4bjJgLGArLyB5QjIgeUMyIDJgXSxbYHhDeG4zYCxgKy8geEIzIHhDMyAyYF0sW2B5Q3huM2AsYCsvIHlCMyB5QzMgMmBdLFtgeEN4bjRgLGArLyB4QjQgeEM0IDJgXSxbYHlDeG40YCxgKy8geUI0IHlDNCAyYF0sW2B4Q3huNWAsYCsvIHIgMCB4Q3huNGBdLFtgeEN4bjZgLGArLyByIDAgeEN4bjNgXSxbYHhDeG43YCxgKy8gciAwIHhDeG4yYF0sW2B4Q3huOGAsYCsvIHIgMCB4Q3huMWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4QTFgLGB5QTFgXSxbYGxgLGB4QjFgLGB5QjFgXSxbYGxgLGB4QzFgLGB5QzFgXSxbYGxgLGB4RDFgLGB5RDFgXSxbYGFgLGByd2AsYHJoYCxgYkQxYCxgc3dBbmcxYF0sW2BsYCxgeEIyYCxgeUIyYF0sW2BsYCxgeEMyYCxgeUMyYF0sW2BsYCxgeEQyYCxgeUQyYF0sW2BhYCxgcndgLGByaGAsYGJEMmAsYHN3QW5nMmBdLFtgbGAsYHhCM2AsYHlCM2BdLFtgbGAsYHhDM2AsYHlDM2BdLFtgbGAsYHhEM2AsYHlEM2BdLFtgYWAsYHJ3YCxgcmhgLGBiRDNgLGBzd0FuZzNgXSxbYGxgLGB4QjRgLGB5QjRgXSxbYGxgLGB4QzRgLGB5QzRgXSxbYGxgLGB4RDRgLGB5RDRgXSxbYGFgLGByd2AsYHJoYCxgYkQ0YCxgc3dBbmc0YF0sW2BsYCxgeEI1YCxgeUM0YF0sW2BsYCxgeEM1YCxgeUI0YF0sW2BsYCxgeEQ1YCxgeUE0YF0sW2BhYCxgcndgLGByaGAsYGJENWAsYHN3QW5nM2BdLFtgbGAsYHhCNmAsYHlDM2BdLFtgbGAsYHhDNmAsYHlCM2BdLFtgbGAsYHhENmAsYHlBM2BdLFtgYWAsYHJ3YCxgcmhgLGBiRDZgLGBzd0FuZzJgXSxbYGxgLGB4QjdgLGB5QzJgXSxbYGxgLGB4QzdgLGB5QjJgXSxbYGxgLGB4RDdgLGB5QTJgXSxbYGFgLGByd2AsYHJoYCxgYkQ3YCxgc3dBbmcxYF0sW2BsYCxgeEI4YCxgeUMxYF0sW2BsYCxgeEM4YCxgeUIxYF0sW2BsYCxgeEQ4YCxgeUExYF0sW2BhYCxgcndgLGByaGAsYGJEOGAsYHN3QW5nNWBdLFtgbGAsYHhFOWAsYHlDOWBdLFtgbGAsYHhGOWAsYHlDOWBdLFtgbGAsYHhEOWAsYHlEOWBdLFtgYWAsYHJ3YCxgcmhgLGBiRDlgLGBzd0FuZzVgXSxbYGNgXV19XX0sVGY9e2FkajpbW2BhZGoxYCxgdmFsIDMzMzMzYF0sW2BhZGoyYCxgdmFsIDMzMzMzYF1dLGdkOltbYG1heEFkajJgLGAqLyAxMDAwMDAgdyBzc2BdLFtgYTJgLGBwaW4gMCBhZGoyIG1heEFkajJgXSxbYHgxYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2BnMWAsYCovIGggeDEgd2BdLFtgZzJgLGArLSBoIDAgZzFgXSxbYG1heEFkajFgLGAqLyAxMDAwMDAgZzIgc3NgXSxbYGExYCxgcGluIDAgYWRqMSBtYXhBZGoxYF0sW2B5MWAsYCovIHNzIGExIDEwMDAwMGBdLFtgZHgyYCxgKi8geTEgdyBoYF0sW2B4MmAsYCstIHIgMCBkeDJgXSxbYGR5MmAsYCovIHgxIGggd2BdLFtgeTJgLGArLSBiIDAgZHkyYF0sW2BjeDFgLGAqLyB4MSAxIDJgXSxbYGN5MWAsYCsvIHkyIGIgMmBdLFtgY3gyYCxgKy8geDIgciAyYF0sW2BjeTJgLGAqLyB5MSAxIDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHgyYCxgeTFgXSxbYGxgLGB4MWAsYHkxYF0sW2BsYCxgeDFgLGB5MmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfV19LEVmPXthZGo6W10sZ2Q6W1tgZHgxYCxgKi8gdyA0OSA0OGBdLFtgZHgyYCxgKi8gdyAxMCA0OGBdLFtgeDFgLGArLSBoYyAwIGR4MWBdLFtgeDJgLGArLSBoYyAwIGR4MmBdLFtgeDNgLGArLSBoYyBkeDIgMGBdLFtgeDRgLGArLSBoYyBkeDEgMGBdLFtgeTFgLGArLSB0IDAgaGQzYF0sW2BpbGAsYCovIHcgMSA2YF0sW2BpcmAsYCovIHcgNSA2YF0sW2BpYmAsYCovIGggMiAzYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGhjYCxgaGQ0YF0sW2BDYCxgeDNgLGB5MWAsYHg0YCxgaGQ0YCxgaGNgLGBiYF0sW2BDYCxgeDFgLGBoZDRgLGB4MmAsYHkxYCxgaGNgLGBoZDRgXSxbYGNgXV19XX0sRGY9e2FkajpbW2BoZmAsYHZhbCAxMDI1NzJgXSxbYHZmYCxgdmFsIDEwNTIxMGBdXSxnZDpbW2Bzd2QyYCxgKi8gd2QyIGhmIDEwMDAwMGBdLFtgc2hkMmAsYCovIGhkMiB2ZiAxMDAwMDBgXSxbYHN2Y2AsYCovIHZjICB2ZiAxMDAwMDBgXSxbYGR4MWAsYCovIHN3ZDIgOTc0OTMgMTAwMDAwYF0sW2BkeDJgLGAqLyBzd2QyIDc4MTgzIDEwMDAwMGBdLFtgZHgzYCxgKi8gc3dkMiA0MzM4OCAxMDAwMDBgXSxbYGR5MWAsYCovIHNoZDIgNjIzNDkgMTAwMDAwYF0sW2BkeTJgLGAqLyBzaGQyIDIyMjUyIDEwMDAwMGBdLFtgZHkzYCxgKi8gc2hkMiA5MDA5NyAxMDAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHgzYCxgKy0gaGMgMCBkeDNgXSxbYHg0YCxgKy0gaGMgZHgzIDBgXSxbYHg1YCxgKy0gaGMgZHgyIDBgXSxbYHg2YCxgKy0gaGMgZHgxIDBgXSxbYHkxYCxgKy0gc3ZjIDAgZHkxYF0sW2B5MmAsYCstIHN2YyBkeTIgMGBdLFtgeTNgLGArLSBzdmMgZHkzIDBgXSxbYGliYCxgKy0gYiAwIHkxYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHgxYCxgeTJgXSxbYGxgLGB4MmAsYHkxYF0sW2BsYCxgaGNgLGB0YF0sW2BsYCxgeDVgLGB5MWBdLFtgbGAsYHg2YCxgeTJgXSxbYGxgLGB4NGAsYHkzYF0sW2BsYCxgeDNgLGB5M2BdLFtgY2BdXX1dfSxPZj17YWRqOltbYGFkamAsYHZhbCAyNTAwMGBdLFtgdmZgLGB2YWwgMTE1NDcwYF1dLGdkOltbYG1heEFkamAsYCovIDUwMDAwIHcgc3NgXSxbYGFgLGBwaW4gMCBhZGogbWF4QWRqYF0sW2BzaGQyYCxgKi8gaGQyIHZmIDEwMDAwMGBdLFtgeDFgLGAqLyBzcyBhIDEwMDAwMGBdLFtgeDJgLGArLSByIDAgeDFgXSxbYGR5MWAsYHNpbiBzaGQyIDM2MDAwMDBgXSxbYHkxYCxgKy0gdmMgMCBkeTFgXSxbYHkyYCxgKy0gdmMgZHkxIDBgXSxbYHExYCxgKi8gbWF4QWRqIC0xIDJgXSxbYHEyYCxgKy0gYSBxMSAwYF0sW2BxM2AsYD86IHEyIDQgMmBdLFtgcTRgLGA/OiBxMiAzIDJgXSxbYHE1YCxgPzogcTIgcTEgMGBdLFtgcTZgLGArLyBhIHE1IHExYF0sW2BxN2AsYCovIHE2IHE0IC0xYF0sW2BxOGAsYCstIHEzIHE3IDBgXSxbYGlsYCxgKi8gdyBxOCAyNGBdLFtgaXRgLGAqLyBoIHE4IDI0YF0sW2BpcmAsYCstIHIgMCBpbGBdLFtgaWJgLGArLSBiIDAgaXRgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHZjYF0sW2BsYCxgeDFgLGB5MWBdLFtgbGAsYHgyYCxgeTFgXSxbYGxgLGByYCxgdmNgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDFgLGB5MmBdLFtgY2BdXX1dfSxrZj17YWRqOltbYGFkamAsYHZhbCA1MDAwMGBdXSxnZDpbW2BtYXhBZGpgLGAqLyAxMDAwMDAgdyBzc2BdLFtgYWAsYHBpbiAwIGFkaiBtYXhBZGpgXSxbYGR4MWAsYCovIHNzIGEgMTAwMDAwYF0sW2B4MWAsYCstIHIgMCBkeDFgXSxbYGlyYCxgKy8geDEgciAyYF0sW2B4MmAsYCovIHgxIDEgMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHgxYCxgdGBdLFtgbGAsYHJgLGB2Y2BdLFtgbGAsYHgxYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfV19LEFmPXthZGo6W1tgYWRqYCxgdmFsIDEyNTAwYF1dLGdkOltbYGFgLGBwaW4gMCBhZGogMjUwMDBgXSxbYGNoYCxgKi8gc3MgYSAxMDAwMDBgXSxbYGNoMmAsYCovIGNoIDEgMmBdLFtgY2g0YCxgKi8gY2ggMSA0YF0sW2B5M2AsYCstIGNoIGNoMiAwYF0sW2B5NGAsYCstIGNoIGNoIDBgXSxbYHk2YCxgKy0gYiAwIGNoYF0sW2B5N2AsYCstIGIgMCBjaDJgXSxbYHk1YCxgKy0geTYgMCBjaDJgXSxbYHgzYCxgKy0gciAwIGNoYF0sW2B4NGAsYCstIHIgMCBjaDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgcmAsYGNoMmBdLFtgYWAsYGNoMmAsYGNoMmAsYDBgLGBjZDRgXSxbYGxgLGB4NGAsYGNoMmBdLFtgYWAsYGNoNGAsYGNoNGAsYDBgLGBjZDJgXSxbYGxgLGB4M2AsYGNoYF0sW2BsYCxgY2gyYCxgY2hgXSxbYGFgLGBjaDJgLGBjaDJgLGAzY2Q0YCxgLTU0MDAwMDBgXSxbYGxgLGBsYCxgeTdgXSxbYGFgLGBjaDJgLGBjaDJgLGBjZDJgLGAtMTA4MDAwMDBgXSxbYGxgLGBjaGAsYHk2YF0sW2BsYCxgeDRgLGB5NmBdLFtgYWAsYGNoMmAsYGNoMmAsYGNkNGAsYC01NDAwMDAwYF0sW2BjYF0sW2BtYCxgY2gyYCxgeTRgXSxbYGFgLGBjaDJgLGBjaDJgLGBjZDRgLGAtNTQwMDAwMGBdLFtgYWAsYGNoNGAsYGNoNGAsYDBgLGAtMTA4MDAwMDBgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YGRhcmtlbkxlc3NgLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBjaDJgLGB5NGBdLFtgYWAsYGNoMmAsYGNoMmAsYGNkNGAsYC01NDAwMDAwYF0sW2BhYCxgY2g0YCxgY2g0YCxgMGAsYC0xMDgwMDAwMGBdLFtgY2BdLFtgbWAsYHg0YCxgY2hgXSxbYGFgLGBjaDJgLGBjaDJgLGBjZDRgLGAtMTYyMDAwMDBgXSxbYGFgLGBjaDRgLGBjaDRgLGBjZDJgLGAtMTA4MDAwMDBgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgeTNgXSxbYGFgLGBjaDJgLGBjaDJgLGBjZDJgLGBjZDRgXSxbYGxgLGB4M2AsYGNoYF0sW2BsYCxgeDNgLGBjaDJgXSxbYGFgLGBjaDJgLGBjaDJgLGBjZDJgLGBjZDJgXSxbYGxgLGByYCxgeTVgXSxbYGFgLGBjaDJgLGBjaDJgLGAwYCxgY2Q0YF0sW2BsYCxgY2hgLGB5NmBdLFtgbGAsYGNoYCxgeTdgXSxbYGFgLGBjaDJgLGBjaDJgLGAwYCxgY2QyYF0sW2BjYF0sW2BtYCxgeDNgLGBjaGBdLFtgbGAsYHg0YCxgY2hgXSxbYGFgLGBjaDJgLGBjaDJgLGBjZDRgLGAtNTQwMDAwMGBdLFtgbWAsYHg0YCxgY2hgXSxbYGxgLGB4NGAsYGNoMmBdLFtgYWAsYGNoNGAsYGNoNGAsYDBgLGBjZDJgXSxbYG1gLGBjaDJgLGB5NGBdLFtgbGAsYGNoMmAsYHkzYF0sW2BhYCxgY2g0YCxgY2g0YCxgY2QyYCxgY2QyYF0sW2BhYCxgY2gyYCxgY2gyYCxgMGAsYGNkMmBdLFtgbWAsYGNoYCxgeTNgXSxbYGxgLGBjaGAsYHk2YF1dfV19LGpmPXthZGo6W10sZ2Q6W1tgeDVgLGAqLyB3IDQ2MjcgMjE2MDBgXSxbYHgxMmAsYCovIHcgODQ4NSAyMTYwMGBdLFtgeDIxYCxgKi8gdyAxNjcwMiAyMTYwMGBdLFtgeDI0YCxgKi8gdyAxNDUyMiAyMTYwMGBdLFtgeTNgLGAqLyBoIDYzMjAgMjE2MDBgXSxbYHk2YCxgKi8gaCA4NjE1IDIxNjAwYF0sW2B5OWAsYCovIGggMTM5MzcgMjE2MDBgXSxbYHkxOGAsYCovIGggMTMyOTAgMjE2MDBgXV0scGF0aHM6W3t3OjIxNjAwLGg6MjE2MDAsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAxMDgwMGAsYDU4MDBgXSxbYGxgLGAxNDUyMmAsYDBgXSxbYGxgLGAxNDE1NWAsYDUzMjVgXSxbYGxgLGAxODM4MGAsYDQ0NTdgXSxbYGxgLGAxNjcwMmAsYDczMTVgXSxbYGxgLGAyMTA5N2AsYDgxMzdgXSxbYGxgLGAxNzYwN2AsYDEwNDc1YF0sW2BsYCxgMjE2MDBgLGAxMzI5MGBdLFtgbGAsYDE2ODM3YCxgMTI5NDJgXSxbYGxgLGAxODE0NWAsYDE4MDk1YF0sW2BsYCxgMTQwMjBgLGAxNDQ1N2BdLFtgbGAsYDEzMjQ3YCxgMTk3MzdgXSxbYGxgLGAxMDUzMmAsYDE0OTM1YF0sW2BsYCxgODQ4NWAsYDIxNjAwYF0sW2BsYCxgNzcxNWAsYDE1NjI3YF0sW2BsYCxgNDc2MmAsYDE3NjE3YF0sW2BsYCxgNTY2N2AsYDEzOTM3YF0sW2BsYCxgMTM1YCxgMTQ1ODdgXSxbYGxgLGAzNzIyYCxgMTE3NzVgXSxbYGxgLGAwYCxgODYxNWBdLFtgbGAsYDQ2MjdgLGA3NjE3YF0sW2BsYCxgMzcwYCxgMjI5NWBdLFtgbGAsYDczMTJgLGA2MzIwYF0sW2BsYCxgODM1MmAsYDIyOTVgXSxbYGNgXV19XX0sTWY9e2FkajpbXSxnZDpbW2B4MmAsYCovIHcgOTcyMiAyMTYwMGBdLFtgeDVgLGAqLyB3IDUzNzIgMjE2MDBgXSxbYHgxNmAsYCovIHcgMTE2MTIgMjE2MDBgXSxbYHgxOWAsYCovIHcgMTQ2NDAgMjE2MDBgXSxbYHkyYCxgKi8gaCAxODg3IDIxNjAwYF0sW2B5M2AsYCovIGggNjM4MiAyMTYwMGBdLFtgeThgLGAqLyBoIDEyODc3IDIxNjAwYF0sW2B5MTRgLGAqLyBoIDE5NzEyIDIxNjAwYF0sW2B5MTZgLGAqLyBoIDE4ODQyIDIxNjAwYF0sW2B5MTdgLGAqLyBoIDE1OTM1IDIxNjAwYF0sW2B5MjRgLGAqLyBoIDY2NDUgMjE2MDBgXV0scGF0aHM6W3t3OjIxNjAwLGg6MjE2MDAsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGAxMTQ2MmAsYDQzNDJgXSxbYGxgLGAxNDc5MGAsYDBgXSxbYGxgLGAxNDUyNWAsYDU3NzdgXSxbYGxgLGAxODAwN2AsYDMxNzJgXSxbYGxgLGAxNjM4MGAsYDY1MzJgXSxbYGxgLGAyMTYwMGAsYDY2NDVgXSxbYGxgLGAxNjk4NWAsYDk0MDJgXSxbYGxgLGAxODI3MGAsYDExMjkwYF0sW2BsYCxgMTYzODBgLGAxMjMxMGBdLFtgbGAsYDE4ODc3YCxgMTU2MzJgXSxbYGxgLGAxNDY0MGAsYDE0MzUwYF0sW2BsYCxgMTQ5NDJgLGAxNzM3MGBdLFtgbGAsYDEyMTgwYCxgMTU5MzVgXSxbYGxgLGAxMTYxMmAsYDE4ODQyYF0sW2BsYCxgOTg3MmAsYDE3MzcwYF0sW2BsYCxgODcwMGAsYDE5NzEyYF0sW2BsYCxgNzUyN2AsYDE4MTI1YF0sW2BsYCxgNDkxN2AsYDIxNjAwYF0sW2BsYCxgNDgwNWAsYDE4MjQwYF0sW2BsYCxgMTI4NWAsYDE3ODI1YF0sW2BsYCxgMzMzMGAsYDE1MzcwYF0sW2BsYCxgMGAsYDEyODc3YF0sW2BsYCxgMzkzNWAsYDExNTkyYF0sW2BsYCxgMTE3MmAsYDgyNzBgXSxbYGxgLGA1MzcyYCxgNzgxN2BdLFtgbGAsYDQ1MDJgLGAzNjI1YF0sW2BsYCxgODU1MGAsYDYzODJgXSxbYGxgLGA5NzIyYCxgMTg4N2BdLFtgY2BdXX1dfSxOZj17YWRqOltbYGFkajFgLGB2YWwgNTAwMDBgXSxbYGFkajJgLGB2YWwgNTAwMDBgXV0sZ2Q6W1tgbWF4QWRqMmAsYCovIDEwMDAwMCB3IHNzYF0sW2BhMWAsYHBpbiAwIGFkajEgMTAwMDAwYF0sW2BhMmAsYHBpbiAwIGFkajIgbWF4QWRqMmBdLFtgZHgyYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2B4MmAsYCstIGwgZHgyIDBgXSxbYGR5MWAsYCovIGggYTEgMjAwMDAwYF0sW2B5MWAsYCstIHZjIDAgZHkxYF0sW2B5MmAsYCstIHZjIGR5MSAwYF0sW2BkeDFgLGAqLyB5MSBkeDIgaGQyYF0sW2B4MWAsYCstIHgyICAwIGR4MWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdmNgXSxbYGxgLGB4MmAsYHRgXSxbYGxgLGB4MmAsYHkxYF0sW2BsYCxgcmAsYHkxYF0sW2BsYCxgcmAsYHkyYF0sW2BsYCxgeDJgLGB5MmBdLFtgbGAsYHgyYCxgYmBdLFtgY2BdXX1dfSxQZj17YWRqOltbYGFkajFgLGB2YWwgMjUwMDBgXSxbYGFkajJgLGB2YWwgMjUwMDBgXSxbYGFkajNgLGB2YWwgMjUwMDBgXSxbYGFkajRgLGB2YWwgNjQ5NzdgXV0sZ2Q6W1tgbWF4QWRqMmAsYCovIDUwMDAwIGggc3NgXSxbYGEyYCxgcGluIDAgYWRqMiBtYXhBZGoyYF0sW2BtYXhBZGoxYCxgKi8gYTIgMiAxYF0sW2BhMWAsYHBpbiAwIGFkajEgbWF4QWRqMWBdLFtgbWF4QWRqM2AsYCovIDEwMDAwMCB3IHNzYF0sW2BhM2AsYHBpbiAwIGFkajMgbWF4QWRqM2BdLFtgcTJgLGAqLyBhMyBzcyB3YF0sW2BtYXhBZGo0YCxgKy0gMTAwMDAwIDAgcTJgXSxbYGE0YCxgcGluIDAgYWRqNCBtYXhBZGo0YF0sW2BkeTFgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYGR5MmAsYCovIHNzIGExIDIwMDAwMGBdLFtgeTFgLGArLSB2YyAwIGR5MWBdLFtgeTJgLGArLSB2YyAwIGR5MmBdLFtgeTNgLGArLSB2YyBkeTIgMGBdLFtgeTRgLGArLSB2YyBkeTEgMGBdLFtgeDFgLGAqLyBzcyBhMyAxMDAwMDBgXSxbYGR4MmAsYCovIHcgYTQgMTAwMDAwYF0sW2B4MmAsYCstIHIgMCBkeDJgXSxbYHgzYCxgKy8geDIgciAyYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB2Y2BdLFtgbGAsYHgxYCxgeTFgXSxbYGxgLGB4MWAsYHkyYF0sW2BsYCxgeDJgLGB5MmBdLFtgbGAsYHgyYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGB4MmAsYGJgXSxbYGxgLGB4MmAsYHkzYF0sW2BsYCxgeDFgLGB5M2BdLFtgbGAsYHgxYCxgeTRgXSxbYGNgXV19XX0sRmY9e2FkajpbW2BhZGoxYCxgdmFsIDgzMzNgXSxbYGFkajJgLGB2YWwgNTAwMDBgXV0sZ2Q6W1tgYTJgLGBwaW4gMCBhZGoyIDEwMDAwMGBdLFtgcTFgLGArLSAxMDAwMDAgMCBhMmBdLFtgcTJgLGBtaW4gcTEgYTJgXSxbYHEzYCxgKi8gcTIgMSAyYF0sW2BtYXhBZGoxYCxgKi8gcTMgaCBzc2BdLFtgYTFgLGBwaW4gMCBhZGoxIG1heEFkajFgXSxbYHkxYCxgKi8gc3MgYTEgMTAwMDAwYF0sW2B5M2AsYCovIGggYTIgMTAwMDAwYF0sW2B5NGAsYCstIHkzIHkxIDBgXSxbYGR4MWAsYGNvcyB3ZDIgMjcwMDAwMGBdLFtgZHkxYCxgc2luIHkxIDI3MDAwMDBgXSxbYGlsYCxgKy0gciAwIGR4MWBdLFtgaXRgLGArLSB5MSAwIGR5MWBdLFtgaWJgLGArLSBiIGR5MSB5MWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGByYCxgYmBdLFtgYWAsYHdkMmAsYHkxYCxgY2Q0YCxgY2Q0YF0sW2BsYCxgaGNgLGB5NGBdLFtgYWAsYHdkMmAsYHkxYCxgMGAsYC01NDAwMDAwYF0sW2BhYCxgd2QyYCxgeTFgLGBjZDRgLGAtNTQwMDAwMGBdLFtgbGAsYGhjYCxgeTFgXSxbYGFgLGB3ZDJgLGB5MWAsYGNkMmAsYGNkNGBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHJgLGBiYF0sW2BhYCxgd2QyYCxgeTFgLGBjZDRgLGBjZDRgXSxbYGxgLGBoY2AsYHk0YF0sW2BhYCxgd2QyYCxgeTFgLGAwYCxgLTU0MDAwMDBgXSxbYGFgLGB3ZDJgLGB5MWAsYGNkNGAsYC01NDAwMDAwYF0sW2BsYCxgaGNgLGB5MWBdLFtgYWAsYHdkMmAsYHkxYCxgY2QyYCxgY2Q0YF1dfV19LElmPXthZGo6W1tgYWRqYCxgdmFsIDgzMzNgXV0sZ2Q6W1tgbWF4QWRqYCxgKi8gNTAwMDAgaCBzc2BdLFtgYWAsYHBpbiAwIGFkaiBtYXhBZGpgXSxbYHkxYCxgKi8gc3MgYSAxMDAwMDBgXSxbYHkyYCxgKy0gYiAwIHkxYF0sW2BkeDFgLGBjb3MgdyAyNzAwMDAwYF0sW2BkeTFgLGBzaW4geTEgMjcwMDAwMGBdLFtgaWxgLGArLSByIDAgZHgxYF0sW2BpdGAsYCstIHkxIDAgZHkxYF0sW2BpYmAsYCstIGIgZHkxIHkxYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHJgLGBiYF0sW2BhYCxgd2AsYHkxYCxgY2Q0YCxgY2Q0YF0sW2BsYCxgbGAsYHkxYF0sW2BhYCxgd2AsYHkxYCxgY2QyYCxgY2Q0YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgcmAsYGJgXSxbYGFgLGB3YCxgeTFgLGBjZDRgLGBjZDRgXSxbYGxgLGBsYCxgeTFgXSxbYGFgLGB3YCxgeTFgLGBjZDJgLGBjZDRgXV19XX0sTGY9e2FkajpbW2BhZGoxYCxgdmFsIDEyNTAwYF0sW2BhZGoyYCxgdmFsIC0xMTQyMzE5YF0sW2BhZGozYCxgdmFsIDExNDIzMTlgXSxbYGFkajRgLGB2YWwgMTA4MDAwMDBgXSxbYGFkajVgLGB2YWwgMTI1MDBgXV0sZ2Q6W1tgYTVgLGBwaW4gMCBhZGo1IDI1MDAwYF0sW2BtYXhBZGoxYCxgKi8gYTUgMiAxYF0sW2BhMWAsYHBpbiAwIGFkajEgbWF4QWRqMWBdLFtgZW5BbmdgLGBwaW4gMSBhZGozIDIxNTk5OTk5YF0sW2BzdEFuZ2AsYHBpbiAwIGFkajQgMjE1OTk5OTlgXSxbYHRoYCxgKi8gc3MgYTEgMTAwMDAwYF0sW2B0aGhgLGAqLyBzcyBhNSAxMDAwMDBgXSxbYHRoMmAsYCovIHRoIDEgMmBdLFtgcncxYCxgKy0gd2QyIHRoMiB0aGhgXSxbYHJoMWAsYCstIGhkMiB0aDIgdGhoYF0sW2BydzJgLGArLSBydzEgMCB0aGBdLFtgcmgyYCxgKy0gcmgxIDAgdGhgXSxbYHJ3M2AsYCstIHJ3MiB0aDIgMGBdLFtgcmgzYCxgKy0gcmgyIHRoMiAwYF0sW2B3dEhgLGBzaW4gcnczIGVuQW5nYF0sW2BodEhgLGBjb3MgcmgzIGVuQW5nYF0sW2BkeEhgLGBjYXQyIHJ3MyBodEggd3RIYF0sW2BkeUhgLGBzYXQyIHJoMyBodEggd3RIYF0sW2B4SGAsYCstIGhjIGR4SCAwYF0sW2B5SGAsYCstIHZjIGR5SCAwYF0sW2BySWAsYG1pbiBydzIgcmgyYF0sW2B1MWAsYCovIGR4SCBkeEggMWBdLFtgdTJgLGAqLyBkeUggZHlIIDFgXSxbYHUzYCxgKi8gckkgckkgMWBdLFtgdTRgLGArLSB1MSAwIHUzYF0sW2B1NWAsYCstIHUyIDAgdTNgXSxbYHU2YCxgKi8gdTQgdTUgdTFgXSxbYHU3YCxgKi8gdTYgMSB1MmBdLFtgdThgLGArLSAxIDAgdTdgXSxbYHU5YCxgc3FydCB1OGBdLFtgdTEwYCxgKi8gdTQgMSBkeEhgXSxbYHUxMWAsYCovIHUxMCAxIGR5SGBdLFtgdTEyYCxgKy8gMSB1OSB1MTFgXSxbYHUxM2AsYGF0MiAxIHUxMmBdLFtgdTE0YCxgKy0gdTEzIDIxNjAwMDAwIDBgXSxbYHUxNWAsYD86IHUxMyB1MTMgdTE0YF0sW2B1MTZgLGArLSB1MTUgMCBlbkFuZ2BdLFtgdTE3YCxgKy0gdTE2IDIxNjAwMDAwIDBgXSxbYHUxOGAsYD86IHUxNiB1MTYgdTE3YF0sW2B1MTlgLGArLSB1MTggMCBjZDJgXSxbYHUyMGAsYCstIHUxOCAwIDIxNjAwMDAwYF0sW2B1MjFgLGA/OiB1MTkgdTIwIHUxOGBdLFtgdTIyYCxgYWJzIHUyMWBdLFtgbWluQW5nYCxgKi8gdTIyIC0xIDFgXSxbYHUyM2AsYGFicyBhZGoyYF0sW2BhMmAsYCovIHUyMyAtMSAxYF0sW2BhQW5nYCxgcGluIG1pbkFuZyBhMiAwYF0sW2BwdEFuZ2AsYCstIGVuQW5nIGFBbmcgMGBdLFtgd3RBYCxgc2luIHJ3MyBwdEFuZ2BdLFtgaHRBYCxgY29zIHJoMyBwdEFuZ2BdLFtgZHhBYCxgY2F0MiBydzMgaHRBIHd0QWBdLFtgZHlBYCxgc2F0MiByaDMgaHRBIHd0QWBdLFtgeEFgLGArLSBoYyBkeEEgMGBdLFtgeUFgLGArLSB2YyBkeUEgMGBdLFtgd3RFYCxgc2luIHJ3MSBzdEFuZ2BdLFtgaHRFYCxgY29zIHJoMSBzdEFuZ2BdLFtgZHhFYCxgY2F0MiBydzEgaHRFIHd0RWBdLFtgZHlFYCxgc2F0MiByaDEgaHRFIHd0RWBdLFtgeEVgLGArLSBoYyBkeEUgMGBdLFtgeUVgLGArLSB2YyBkeUUgMGBdLFtgd3REYCxgc2luIHJ3MiBzdEFuZ2BdLFtgaHREYCxgY29zIHJoMiBzdEFuZ2BdLFtgZHhEYCxgY2F0MiBydzIgaHREIHd0RGBdLFtgZHlEYCxgc2F0MiByaDIgaHREIHd0RGBdLFtgeERgLGArLSBoYyBkeEQgMGBdLFtgeURgLGArLSB2YyBkeUQgMGBdLFtgZHhHYCxgY29zIHRoaCBwdEFuZ2BdLFtgZHlHYCxgc2luIHRoaCBwdEFuZ2BdLFtgeEdgLGArLSB4SCBkeEcgMGBdLFtgeUdgLGArLSB5SCBkeUcgMGBdLFtgZHhCYCxgY29zIHRoaCBwdEFuZ2BdLFtgZHlCYCxgc2luIHRoaCBwdEFuZ2BdLFtgeEJgLGArLSB4SCAwIGR4QiAwYF0sW2B5QmAsYCstIHlIIDAgZHlCIDBgXSxbYHN4MWAsYCstIHhCIDAgaGNgXSxbYHN5MWAsYCstIHlCIDAgdmNgXSxbYHN4MmAsYCstIHhHIDAgaGNgXSxbYHN5MmAsYCstIHlHIDAgdmNgXSxbYHJPYCxgbWluIHJ3MSByaDFgXSxbYHgxT2AsYCovIHN4MSByTyBydzFgXSxbYHkxT2AsYCovIHN5MSByTyByaDFgXSxbYHgyT2AsYCovIHN4MiByTyBydzFgXSxbYHkyT2AsYCovIHN5MiByTyByaDFgXSxbYGR4T2AsYCstIHgyTyAwIHgxT2BdLFtgZHlPYCxgKy0geTJPIDAgeTFPYF0sW2BkT2AsYG1vZCBkeE8gZHlPIDBgXSxbYHExYCxgKi8geDFPIHkyTyAxYF0sW2BxMmAsYCovIHgyTyB5MU8gMWBdLFtgRE9gLGArLSBxMSAwIHEyYF0sW2BxM2AsYCovIHJPIHJPIDFgXSxbYHE0YCxgKi8gZE8gZE8gMWBdLFtgcTVgLGAqLyBxMyBxNCAxYF0sW2BxNmAsYCovIERPIERPIDFgXSxbYHE3YCxgKy0gcTUgMCBxNmBdLFtgcThgLGBtYXggcTcgMGBdLFtgc2RlbE9gLGBzcXJ0IHE4YF0sW2BuZHlPYCxgKi8gZHlPIC0xIDFgXSxbYHNkeU9gLGA/OiBuZHlPIC0xIDFgXSxbYHE5YCxgKi8gc2R5TyBkeE8gMWBdLFtgcTEwYCxgKi8gcTkgc2RlbE8gMWBdLFtgcTExYCxgKi8gRE8gZHlPIDFgXSxbYGR4RjFgLGArLyBxMTEgcTEwIHE0YF0sW2BxMTJgLGArLSBxMTEgMCBxMTBgXSxbYGR4RjJgLGAqLyBxMTIgMSBxNGBdLFtgYWR5T2AsYGFicyBkeU9gXSxbYHExM2AsYCovIGFkeU8gc2RlbE8gMWBdLFtgcTE0YCxgKi8gRE8gZHhPIC0xYF0sW2BkeUYxYCxgKy8gcTE0IHExMyBxNGBdLFtgcTE1YCxgKy0gcTE0IDAgcTEzYF0sW2BkeUYyYCxgKi8gcTE1IDEgcTRgXSxbYHExNmAsYCstIHgyTyAwIGR4RjFgXSxbYHExN2AsYCstIHgyTyAwIGR4RjJgXSxbYHExOGAsYCstIHkyTyAwIGR5RjFgXSxbYHExOWAsYCstIHkyTyAwIGR5RjJgXSxbYHEyMGAsYG1vZCBxMTYgcTE4IDBgXSxbYHEyMWAsYG1vZCBxMTcgcTE5IDBgXSxbYHEyMmAsYCstIHEyMSAwIHEyMGBdLFtgZHhGYCxgPzogcTIyIGR4RjEgZHhGMmBdLFtgZHlGYCxgPzogcTIyIGR5RjEgZHlGMmBdLFtgc2R4RmAsYCovIGR4RiBydzEgck9gXSxbYHNkeUZgLGAqLyBkeUYgcmgxIHJPYF0sW2B4RmAsYCstIGhjIHNkeEYgMGBdLFtgeUZgLGArLSB2YyBzZHlGIDBgXSxbYHgxSWAsYCovIHN4MSBySSBydzJgXSxbYHkxSWAsYCovIHN5MSBySSByaDJgXSxbYHgySWAsYCovIHN4MiBySSBydzJgXSxbYHkySWAsYCovIHN5MiBySSByaDJgXSxbYGR4SWAsYCstIHgySSAwIHgxSWBdLFtgZHlJYCxgKy0geTJJIDAgeTFJYF0sW2BkSWAsYG1vZCBkeEkgZHlJIDBgXSxbYHYxYCxgKi8geDFJIHkySSAxYF0sW2B2MmAsYCovIHgySSB5MUkgMWBdLFtgRElgLGArLSB2MSAwIHYyYF0sW2B2M2AsYCovIHJJIHJJIDFgXSxbYHY0YCxgKi8gZEkgZEkgMWBdLFtgdjVgLGAqLyB2MyB2NCAxYF0sW2B2NmAsYCovIERJIERJIDFgXSxbYHY3YCxgKy0gdjUgMCB2NmBdLFtgdjhgLGBtYXggdjcgMGBdLFtgc2RlbElgLGBzcXJ0IHY4YF0sW2B2OWAsYCovIHNkeU8gZHhJIDFgXSxbYHYxMGAsYCovIHY5IHNkZWxJIDFgXSxbYHYxMWAsYCovIERJIGR5SSAxYF0sW2BkeEMxYCxgKy8gdjExIHYxMCB2NGBdLFtgdjEyYCxgKy0gdjExIDAgdjEwYF0sW2BkeEMyYCxgKi8gdjEyIDEgdjRgXSxbYGFkeUlgLGBhYnMgZHlJYF0sW2B2MTNgLGAqLyBhZHlJIHNkZWxJIDFgXSxbYHYxNGAsYCovIERJIGR4SSAtMWBdLFtgZHlDMWAsYCsvIHYxNCB2MTMgdjRgXSxbYHYxNWAsYCstIHYxNCAwIHYxM2BdLFtgZHlDMmAsYCovIHYxNSAxIHY0YF0sW2B2MTZgLGArLSB4MUkgMCBkeEMxYF0sW2B2MTdgLGArLSB4MUkgMCBkeEMyYF0sW2B2MThgLGArLSB5MUkgMCBkeUMxYF0sW2B2MTlgLGArLSB5MUkgMCBkeUMyYF0sW2B2MjBgLGBtb2QgdjE2IHYxOCAwYF0sW2B2MjFgLGBtb2QgdjE3IHYxOSAwYF0sW2B2MjJgLGArLSB2MjEgMCB2MjBgXSxbYGR4Q2AsYD86IHYyMiBkeEMxIGR4QzJgXSxbYGR5Q2AsYD86IHYyMiBkeUMxIGR5QzJgXSxbYHNkeENgLGAqLyBkeEMgcncyIHJJYF0sW2BzZHlDYCxgKi8gZHlDIHJoMiBySWBdLFtgeENgLGArLSBoYyBzZHhDIDBgXSxbYHlDYCxgKy0gdmMgc2R5QyAwYF0sW2Bpc3QwYCxgYXQyIHNkeEMgc2R5Q2BdLFtgaXN0MWAsYCstIGlzdDAgMjE2MDAwMDAgMGBdLFtgaXN0QW5nMGAsYD86IGlzdDAgaXN0MCBpc3QxYF0sW2Bpc3cxYCxgKy0gc3RBbmcgMCBpc3RBbmcwYF0sW2Bpc3cyYCxgKy0gaXN3MSAyMTYwMDAwMCAwYF0sW2Bpc3dBbmcwYCxgPzogaXN3MSBpc3cxIGlzdzJgXSxbYGlzdEFuZ2AsYCstIGlzdEFuZzAgaXN3QW5nMCAwYF0sW2Bpc3dBbmdgLGArLSAwIDAgaXN3QW5nMGBdLFtgcDFgLGArLSB4RiAwIHhDYF0sW2BwMmAsYCstIHlGIDAgeUNgXSxbYHAzYCxgbW9kIHAxIHAyIDBgXSxbYHA0YCxgKi8gcDMgMSAyYF0sW2BwNWAsYCstIHA0IDAgdGhoYF0sW2B4R3BgLGA/OiBwNSB4RiB4R2BdLFtgeUdwYCxgPzogcDUgeUYgeUdgXSxbYHhCcGAsYD86IHA1IHhDIHhCYF0sW2B5QnBgLGA/OiBwNSB5QyB5QmBdLFtgZW4wYCxgYXQyIHNkeEYgc2R5RmBdLFtgZW4xYCxgKy0gZW4wIDIxNjAwMDAwIDBgXSxbYGVuMmAsYD86IGVuMCBlbjAgZW4xYF0sW2BzdzBgLGArLSBlbjIgMCBzdEFuZ2BdLFtgc3cxYCxgKy0gc3cwIDAgMjE2MDAwMDBgXSxbYHN3QW5nYCxgPzogc3cwIHN3MSBzdzBgXSxbYHN0QW5nMGAsYCstIHN0QW5nIHN3QW5nIDBgXSxbYHN3QW5nMGAsYCstIDAgMCBzd0FuZ2BdLFtgd3RJYCxgc2luIHJ3MyBzdEFuZ2BdLFtgaHRJYCxgY29zIHJoMyBzdEFuZ2BdLFtgZHhJYCxgY2F0MiBydzMgaHRJIHd0SWBdLFtgZHlJYCxgc2F0MiByaDMgaHRJIHd0SWBdLFtgeElgLGArLSBoYyBkeEkgMGBdLFtgeUlgLGArLSB2YyBkeUkgMGBdLFtgYUlgLGArLSBzdEFuZyBjZDQgMGBdLFtgYUFgLGArLSBwdEFuZyAwIGNkNGBdLFtgYUJgLGArLSBwdEFuZyBjZDIgMGBdLFtgaWR4YCxgY29zIHJ3MSAyNzAwMDAwYF0sW2BpZHlgLGBzaW4gcmgxIDI3MDAwMDBgXSxbYGlsYCxgKy0gaGMgMCBpZHhgXSxbYGlyYCxgKy0gaGMgaWR4IDBgXSxbYGl0YCxgKy0gdmMgMCBpZHlgXSxbYGliYCxgKy0gdmMgaWR5IDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeEVgLGB5RWBdLFtgbGAsYHhEYCxgeURgXSxbYGFgLGBydzJgLGByaDJgLGBpc3RBbmdgLGBpc3dBbmdgXSxbYGxgLGB4QnBgLGB5QnBgXSxbYGxgLGB4QWAsYHlBYF0sW2BsYCxgeEdwYCxgeUdwYF0sW2BsYCxgeEZgLGB5RmBdLFtgYWAsYHJ3MWAsYHJoMWAsYHN0QW5nMGAsYHN3QW5nMGBdLFtgY2BdXX1dfSxSZj17YWRqOltbYGFkajFgLGB2YWwgNTAwMDBgXSxbYGFkajJgLGB2YWwgNTAwMDBgXV0sZ2Q6W1tgbWF4QWRqMmAsYCovIDUwMDAwIHcgc3NgXSxbYGExYCxgcGluIDAgYWRqMSAxMDAwMDBgXSxbYGEyYCxgcGluIDAgYWRqMiBtYXhBZGoyYF0sW2B4MmAsYCovIHNzIGEyIDEwMDAwMGBdLFtgeDNgLGArLSByIDAgeDJgXSxbYGR5YCxgKi8gaCBhMSAyMDAwMDBgXSxbYHkxYCxgKy0gdmMgMCBkeWBdLFtgeTJgLGArLSB2YyBkeSAwYF0sW2BkeDFgLGAqLyB5MSB4MiBoZDJgXSxbYHgxYCxgKy0geDIgMCBkeDFgXSxbYHg0YCxgKy0geDMgZHgxIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHZjYF0sW2BsYCxgeDJgLGB0YF0sW2BsYCxgeDJgLGB5MWBdLFtgbGAsYHgzYCxgeTFgXSxbYGxgLGB4M2AsYHRgXSxbYGxgLGByYCxgdmNgXSxbYGxgLGB4M2AsYGJgXSxbYGxgLGB4M2AsYHkyYF0sW2BsYCxgeDJgLGB5MmBdLFtgbGAsYHgyYCxgYmBdLFtgY2BdXX1dfSx6Zj17YWRqOltbYGFkajFgLGB2YWwgMjUwMDBgXSxbYGFkajJgLGB2YWwgMjUwMDBgXSxbYGFkajNgLGB2YWwgMjUwMDBgXSxbYGFkajRgLGB2YWwgNDgxMjNgXV0sZ2Q6W1tgbWF4QWRqMmAsYCovIDUwMDAwIGggc3NgXSxbYGEyYCxgcGluIDAgYWRqMiBtYXhBZGoyYF0sW2BtYXhBZGoxYCxgKi8gYTIgMiAxYF0sW2BhMWAsYHBpbiAwIGFkajEgbWF4QWRqMWBdLFtgbWF4QWRqM2AsYCovIDUwMDAwIHcgc3NgXSxbYGEzYCxgcGluIDAgYWRqMyBtYXhBZGozYF0sW2BxMmAsYCovIGEzIHNzIHdkMmBdLFtgbWF4QWRqNGAsYCstIDEwMDAwMCAwIHEyYF0sW2BhNGAsYHBpbiAwIGFkajQgbWF4QWRqNGBdLFtgZHkxYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2BkeTJgLGAqLyBzcyBhMSAyMDAwMDBgXSxbYHkxYCxgKy0gdmMgMCBkeTFgXSxbYHkyYCxgKy0gdmMgMCBkeTJgXSxbYHkzYCxgKy0gdmMgZHkyIDBgXSxbYHk0YCxgKy0gdmMgZHkxIDBgXSxbYHgxYCxgKi8gc3MgYTMgMTAwMDAwYF0sW2B4NGAsYCstIHIgMCB4MWBdLFtgZHgyYCxgKi8gdyBhNCAyMDAwMDBgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHgzYCxgKy0gaGMgZHgyIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHZjYF0sW2BsYCxgeDFgLGB5MWBdLFtgbGAsYHgxYCxgeTJgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDJgLGB0YF0sW2BsYCxgeDNgLGB0YF0sW2BsYCxgeDNgLGB5MmBdLFtgbGAsYHg0YCxgeTJgXSxbYGxgLGB4NGAsYHkxYF0sW2BsYCxgcmAsYHZjYF0sW2BsYCxgeDRgLGB5NGBdLFtgbGAsYHg0YCxgeTNgXSxbYGxgLGB4M2AsYHkzYF0sW2BsYCxgeDNgLGBiYF0sW2BsYCxgeDJgLGBiYF0sW2BsYCxgeDJgLGB5M2BdLFtgbGAsYHgxYCxgeTNgXSxbYGxgLGB4MWAsYHk0YF0sW2BjYF1dfV19LEJmPXthZGo6W1tgYWRqMWAsYHZhbCAxMjUwMGBdLFtgYWRqMmAsYHZhbCAxMTQyMzE5YF0sW2BhZGozYCxgdmFsIDIwNDU3NjgxYF0sW2BhZGo0YCxgdmFsIDExOTQyMzE5YF0sW2BhZGo1YCxgdmFsIDEyNTAwYF1dLGdkOltbYGE1YCxgcGluIDAgYWRqNSAyNTAwMGBdLFtgbWF4QWRqMWAsYCovIGE1IDIgMWBdLFtgYTFgLGBwaW4gMCBhZGoxIG1heEFkajFgXSxbYGVuQW5nYCxgcGluIDEgYWRqMyAyMTU5OTk5OWBdLFtgc3RBbmdgLGBwaW4gMCBhZGo0IDIxNTk5OTk5YF0sW2B0aGAsYCovIHNzIGExIDEwMDAwMGBdLFtgdGhoYCxgKi8gc3MgYTUgMTAwMDAwYF0sW2B0aDJgLGAqLyB0aCAxIDJgXSxbYHJ3MWAsYCstIHdkMiB0aDIgdGhoYF0sW2ByaDFgLGArLSBoZDIgdGgyIHRoaGBdLFtgcncyYCxgKy0gcncxIDAgdGhgXSxbYHJoMmAsYCstIHJoMSAwIHRoYF0sW2BydzNgLGArLSBydzIgdGgyIDBgXSxbYHJoM2AsYCstIHJoMiB0aDIgMGBdLFtgd3RIYCxgc2luIHJ3MyBlbkFuZ2BdLFtgaHRIYCxgY29zIHJoMyBlbkFuZ2BdLFtgZHhIYCxgY2F0MiBydzMgaHRIIHd0SGBdLFtgZHlIYCxgc2F0MiByaDMgaHRIIHd0SGBdLFtgeEhgLGArLSBoYyBkeEggMGBdLFtgeUhgLGArLSB2YyBkeUggMGBdLFtgcklgLGBtaW4gcncyIHJoMmBdLFtgdTFgLGAqLyBkeEggZHhIIDFgXSxbYHUyYCxgKi8gZHlIIGR5SCAxYF0sW2B1M2AsYCovIHJJIHJJIDFgXSxbYHU0YCxgKy0gdTEgMCB1M2BdLFtgdTVgLGArLSB1MiAwIHUzYF0sW2B1NmAsYCovIHU0IHU1IHUxYF0sW2B1N2AsYCovIHU2IDEgdTJgXSxbYHU4YCxgKy0gMSAwIHU3YF0sW2B1OWAsYHNxcnQgdThgXSxbYHUxMGAsYCovIHU0IDEgZHhIYF0sW2B1MTFgLGAqLyB1MTAgMSBkeUhgXSxbYHUxMmAsYCsvIDEgdTkgdTExYF0sW2B1MTNgLGBhdDIgMSB1MTJgXSxbYHUxNGAsYCstIHUxMyAyMTYwMDAwMCAwYF0sW2B1MTVgLGA/OiB1MTMgdTEzIHUxNGBdLFtgdTE2YCxgKy0gdTE1IDAgZW5BbmdgXSxbYHUxN2AsYCstIHUxNiAyMTYwMDAwMCAwYF0sW2B1MThgLGA/OiB1MTYgdTE2IHUxN2BdLFtgdTE5YCxgKy0gdTE4IDAgY2QyYF0sW2B1MjBgLGArLSB1MTggMCAyMTYwMDAwMGBdLFtgdTIxYCxgPzogdTE5IHUyMCB1MThgXSxbYG1heEFuZ2AsYGFicyB1MjFgXSxbYGFBbmdgLGBwaW4gMCBhZGoyIG1heEFuZ2BdLFtgcHRBbmdgLGArLSBlbkFuZyBhQW5nIDBgXSxbYHd0QWAsYHNpbiBydzMgcHRBbmdgXSxbYGh0QWAsYGNvcyByaDMgcHRBbmdgXSxbYGR4QWAsYGNhdDIgcnczIGh0QSB3dEFgXSxbYGR5QWAsYHNhdDIgcmgzIGh0QSB3dEFgXSxbYHhBYCxgKy0gaGMgZHhBIDBgXSxbYHlBYCxgKy0gdmMgZHlBIDBgXSxbYGR4R2AsYGNvcyB0aGggcHRBbmdgXSxbYGR5R2AsYHNpbiB0aGggcHRBbmdgXSxbYHhHYCxgKy0geEggZHhHIDBgXSxbYHlHYCxgKy0geUggZHlHIDBgXSxbYGR4QmAsYGNvcyB0aGggcHRBbmdgXSxbYGR5QmAsYHNpbiB0aGggcHRBbmdgXSxbYHhCYCxgKy0geEggMCBkeEIgMGBdLFtgeUJgLGArLSB5SCAwIGR5QiAwYF0sW2BzeDFgLGArLSB4QiAwIGhjYF0sW2BzeTFgLGArLSB5QiAwIHZjYF0sW2BzeDJgLGArLSB4RyAwIGhjYF0sW2BzeTJgLGArLSB5RyAwIHZjYF0sW2ByT2AsYG1pbiBydzEgcmgxYF0sW2B4MU9gLGAqLyBzeDEgck8gcncxYF0sW2B5MU9gLGAqLyBzeTEgck8gcmgxYF0sW2B4Mk9gLGAqLyBzeDIgck8gcncxYF0sW2B5Mk9gLGAqLyBzeTIgck8gcmgxYF0sW2BkeE9gLGArLSB4Mk8gMCB4MU9gXSxbYGR5T2AsYCstIHkyTyAwIHkxT2BdLFtgZE9gLGBtb2QgZHhPIGR5TyAwYF0sW2BxMWAsYCovIHgxTyB5Mk8gMWBdLFtgcTJgLGAqLyB4Mk8geTFPIDFgXSxbYERPYCxgKy0gcTEgMCBxMmBdLFtgcTNgLGAqLyByTyByTyAxYF0sW2BxNGAsYCovIGRPIGRPIDFgXSxbYHE1YCxgKi8gcTMgcTQgMWBdLFtgcTZgLGAqLyBETyBETyAxYF0sW2BxN2AsYCstIHE1IDAgcTZgXSxbYHE4YCxgbWF4IHE3IDBgXSxbYHNkZWxPYCxgc3FydCBxOGBdLFtgbmR5T2AsYCovIGR5TyAtMSAxYF0sW2BzZHlPYCxgPzogbmR5TyAtMSAxYF0sW2BxOWAsYCovIHNkeU8gZHhPIDFgXSxbYHExMGAsYCovIHE5IHNkZWxPIDFgXSxbYHExMWAsYCovIERPIGR5TyAxYF0sW2BkeEYxYCxgKy8gcTExIHExMCBxNGBdLFtgcTEyYCxgKy0gcTExIDAgcTEwYF0sW2BkeEYyYCxgKi8gcTEyIDEgcTRgXSxbYGFkeU9gLGBhYnMgZHlPYF0sW2BxMTNgLGAqLyBhZHlPIHNkZWxPIDFgXSxbYHExNGAsYCovIERPIGR4TyAtMWBdLFtgZHlGMWAsYCsvIHExNCBxMTMgcTRgXSxbYHExNWAsYCstIHExNCAwIHExM2BdLFtgZHlGMmAsYCovIHExNSAxIHE0YF0sW2BxMTZgLGArLSB4Mk8gMCBkeEYxYF0sW2BxMTdgLGArLSB4Mk8gMCBkeEYyYF0sW2BxMThgLGArLSB5Mk8gMCBkeUYxYF0sW2BxMTlgLGArLSB5Mk8gMCBkeUYyYF0sW2BxMjBgLGBtb2QgcTE2IHExOCAwYF0sW2BxMjFgLGBtb2QgcTE3IHExOSAwYF0sW2BxMjJgLGArLSBxMjEgMCBxMjBgXSxbYGR4RmAsYD86IHEyMiBkeEYxIGR4RjJgXSxbYGR5RmAsYD86IHEyMiBkeUYxIGR5RjJgXSxbYHNkeEZgLGAqLyBkeEYgcncxIHJPYF0sW2BzZHlGYCxgKi8gZHlGIHJoMSByT2BdLFtgeEZgLGArLSBoYyBzZHhGIDBgXSxbYHlGYCxgKy0gdmMgc2R5RiAwYF0sW2B4MUlgLGAqLyBzeDEgckkgcncyYF0sW2B5MUlgLGAqLyBzeTEgckkgcmgyYF0sW2B4MklgLGAqLyBzeDIgckkgcncyYF0sW2B5MklgLGAqLyBzeTIgckkgcmgyYF0sW2BkeElgLGArLSB4MkkgMCB4MUlgXSxbYGR5SWAsYCstIHkySSAwIHkxSWBdLFtgZElgLGBtb2QgZHhJIGR5SSAwYF0sW2B2MWAsYCovIHgxSSB5MkkgMWBdLFtgdjJgLGAqLyB4MkkgeTFJIDFgXSxbYERJYCxgKy0gdjEgMCB2MmBdLFtgdjNgLGAqLyBySSBySSAxYF0sW2B2NGAsYCovIGRJIGRJIDFgXSxbYHY1YCxgKi8gdjMgdjQgMWBdLFtgdjZgLGAqLyBESSBESSAxYF0sW2B2N2AsYCstIHY1IDAgdjZgXSxbYHY4YCxgbWF4IHY3IDBgXSxbYHNkZWxJYCxgc3FydCB2OGBdLFtgdjlgLGAqLyBzZHlPIGR4SSAxYF0sW2B2MTBgLGAqLyB2OSBzZGVsSSAxYF0sW2B2MTFgLGAqLyBESSBkeUkgMWBdLFtgZHhDMWAsYCsvIHYxMSB2MTAgdjRgXSxbYHYxMmAsYCstIHYxMSAwIHYxMGBdLFtgZHhDMmAsYCovIHYxMiAxIHY0YF0sW2BhZHlJYCxgYWJzIGR5SWBdLFtgdjEzYCxgKi8gYWR5SSBzZGVsSSAxYF0sW2B2MTRgLGAqLyBESSBkeEkgLTFgXSxbYGR5QzFgLGArLyB2MTQgdjEzIHY0YF0sW2B2MTVgLGArLSB2MTQgMCB2MTNgXSxbYGR5QzJgLGAqLyB2MTUgMSB2NGBdLFtgdjE2YCxgKy0geDFJIDAgZHhDMWBdLFtgdjE3YCxgKy0geDFJIDAgZHhDMmBdLFtgdjE4YCxgKy0geTFJIDAgZHlDMWBdLFtgdjE5YCxgKy0geTFJIDAgZHlDMmBdLFtgdjIwYCxgbW9kIHYxNiB2MTggMGBdLFtgdjIxYCxgbW9kIHYxNyB2MTkgMGBdLFtgdjIyYCxgKy0gdjIxIDAgdjIwYF0sW2BkeENgLGA/OiB2MjIgZHhDMSBkeEMyYF0sW2BkeUNgLGA/OiB2MjIgZHlDMSBkeUMyYF0sW2BzZHhDYCxgKi8gZHhDIHJ3MiBySWBdLFtgc2R5Q2AsYCovIGR5QyByaDIgcklgXSxbYHhDYCxgKy0gaGMgc2R4QyAwYF0sW2B5Q2AsYCstIHZjIHNkeUMgMGBdLFtgd3RJYCxgc2luIHJ3MyBzdEFuZ2BdLFtgaHRJYCxgY29zIHJoMyBzdEFuZ2BdLFtgZHhJYCxgY2F0MiBydzMgaHRJIHd0SWBdLFtgZHlJYCxgc2F0MiByaDMgaHRJIHd0SWBdLFtgeElgLGArLSBoYyBkeEkgMGBdLFtgeUlgLGArLSB2YyBkeUkgMGBdLFtgbHB0QW5nYCxgKy0gc3RBbmcgMCBhQW5nYF0sW2B3dExgLGBzaW4gcnczIGxwdEFuZ2BdLFtgaHRMYCxgY29zIHJoMyBscHRBbmdgXSxbYGR4TGAsYGNhdDIgcnczIGh0TCB3dExgXSxbYGR5TGAsYHNhdDIgcmgzIGh0TCB3dExgXSxbYHhMYCxgKy0gaGMgZHhMIDBgXSxbYHlMYCxgKy0gdmMgZHlMIDBgXSxbYGR4S2AsYGNvcyB0aGggbHB0QW5nYF0sW2BkeUtgLGBzaW4gdGhoIGxwdEFuZ2BdLFtgeEtgLGArLSB4SSBkeEsgMGBdLFtgeUtgLGArLSB5SSBkeUsgMGBdLFtgZHhKYCxgY29zIHRoaCBscHRBbmdgXSxbYGR5SmAsYHNpbiB0aGggbHB0QW5nYF0sW2B4SmAsYCstIHhJIDAgZHhKIDBgXSxbYHlKYCxgKy0geUkgMCBkeUogMGBdLFtgcDFgLGArLSB4RiAwIHhDYF0sW2BwMmAsYCstIHlGIDAgeUNgXSxbYHAzYCxgbW9kIHAxIHAyIDBgXSxbYHA0YCxgKi8gcDMgMSAyYF0sW2BwNWAsYCstIHA0IDAgdGhoYF0sW2B4R3BgLGA/OiBwNSB4RiB4R2BdLFtgeUdwYCxgPzogcDUgeUYgeUdgXSxbYHhCcGAsYD86IHA1IHhDIHhCYF0sW2B5QnBgLGA/OiBwNSB5QyB5QmBdLFtgZW4wYCxgYXQyIHNkeEYgc2R5RmBdLFtgZW4xYCxgKy0gZW4wIDIxNjAwMDAwIDBgXSxbYGVuMmAsYD86IGVuMCBlbjAgZW4xYF0sW2BvZDBgLGArLSBlbjIgMCBlbkFuZ2BdLFtgb2QxYCxgKy0gb2QwIDIxNjAwMDAwIDBgXSxbYG9kMmAsYD86IG9kMCBvZDAgb2QxYF0sW2BzdDBgLGArLSBzdEFuZyAwIG9kMmBdLFtgc3QxYCxgKy0gc3QwIDIxNjAwMDAwIDBgXSxbYHN0MmAsYD86IHN0MCBzdDAgc3QxYF0sW2BzdzBgLGArLSBlbjIgMCBzdDJgXSxbYHN3MWAsYCstIHN3MCAyMTYwMDAwMCAwYF0sW2Bzd0FuZ2AsYD86IHN3MCBzdzAgc3cxYF0sW2Bpc3QwYCxgYXQyIHNkeEMgc2R5Q2BdLFtgaXN0MWAsYCstIGlzdDAgMjE2MDAwMDAgMGBdLFtgaXN0QW5nYCxgPzogaXN0MCBpc3QwIGlzdDFgXSxbYGlkMGAsYCstIGlzdEFuZyAwIGVuQW5nYF0sW2BpZDFgLGArLSBpZDAgMCAyMTYwMDAwMGBdLFtgaWQyYCxgPzogaWQwIGlkMSBpZDBgXSxbYGllbjBgLGArLSBzdEFuZyAwIGlkMmBdLFtgaWVuMWAsYCstIGllbjAgMCAyMTYwMDAwMGBdLFtgaWVuMmAsYD86IGllbjEgaWVuMSBpZW4wYF0sW2Bpc3cxYCxgKy0gaWVuMiAwIGlzdEFuZ2BdLFtgaXN3MmAsYCstIGlzdzEgMCAyMTYwMDAwMGBdLFtgaXN3QW5nYCxgPzogaXN3MSBpc3cyIGlzdzFgXSxbYHd0RWAsYHNpbiBydzEgc3QyYF0sW2BodEVgLGBjb3MgcmgxIHN0MmBdLFtgZHhFYCxgY2F0MiBydzEgaHRFIHd0RWBdLFtgZHlFYCxgc2F0MiByaDEgaHRFIHd0RWBdLFtgeEVgLGArLSBoYyBkeEUgMGBdLFtgeUVgLGArLSB2YyBkeUUgMGBdLFtgd3REYCxgc2luIHJ3MiBpZW4yYF0sW2BodERgLGBjb3MgcmgyIGllbjJgXSxbYGR4RGAsYGNhdDIgcncyIGh0RCB3dERgXSxbYGR5RGAsYHNhdDIgcmgyIGh0RCB3dERgXSxbYHhEYCxgKy0gaGMgZHhEIDBgXSxbYHlEYCxgKy0gdmMgZHlEIDBgXSxbYHhLcGAsYD86IHA1IHhFIHhLYF0sW2B5S3BgLGA/OiBwNSB5RSB5S2BdLFtgeEpwYCxgPzogcDUgeEQgeEpgXSxbYHlKcGAsYD86IHA1IHlEIHlKYF0sW2BhTGAsYCstIGxwdEFuZyAwIGNkNGBdLFtgYUFgLGArLSBwdEFuZyBjZDQgMGBdLFtgYUJgLGArLSBwdEFuZyBjZDIgMGBdLFtgYUpgLGArLSBscHRBbmcgY2QyIDBgXSxbYGlkeGAsYGNvcyBydzEgMjcwMDAwMGBdLFtgaWR5YCxgc2luIHJoMSAyNzAwMDAwYF0sW2BpbGAsYCstIGhjIDAgaWR4YF0sW2BpcmAsYCstIGhjIGlkeCAwYF0sW2BpdGAsYCstIHZjIDAgaWR5YF0sW2BpYmAsYCstIHZjIGlkeSAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHhMYCxgeUxgXSxbYGxgLGB4S3BgLGB5S3BgXSxbYGxgLGB4RWAsYHlFYF0sW2BhYCxgcncxYCxgcmgxYCxgc3QyYCxgc3dBbmdgXSxbYGxgLGB4R3BgLGB5R3BgXSxbYGxgLGB4QWAsYHlBYF0sW2BsYCxgeEJwYCxgeUJwYF0sW2BsYCxgeENgLGB5Q2BdLFtgYWAsYHJ3MmAsYHJoMmAsYGlzdEFuZ2AsYGlzd0FuZ2BdLFtgbGAsYHhKcGAsYHlKcGBdLFtgY2BdXX1dfSxWZj17YWRqOltbYGFkajFgLGB2YWwgNTAwMDBgXSxbYGFkajJgLGB2YWwgNTAwMDBgXSxbYGFkajNgLGB2YWwgMTY2NjdgXV0sZ2Q6W1tgYTNgLGBwaW4gMCBhZGozIDMzMzMzYF0sW2BtYXhBZGoxYCxgKy0gMTAwMDAwIDAgYTNgXSxbYGExYCxgcGluIDAgYWRqMSBtYXhBZGoxYF0sW2B3MWAsYCstIHdkMiAwIHdkMzJgXSxbYG1heEFkajJgLGAqLyAxMDAwMDAgdzEgc3NgXSxbYGEyYCxgcGluIDAgYWRqMiBtYXhBZGoyYF0sW2B4MWAsYCovIHNzIGEyIDEwMDAwMGBdLFtgeDRgLGArLSByIDAgeDFgXSxbYGR5MWAsYCovIGggYTEgMjAwMDAwYF0sW2BkeTJgLGAqLyBoIGEzIC0yMDAwMDBgXSxbYGx5MWAsYCstIHZjIGR5MiBkeTFgXSxbYHJ5NGAsYCstIHZjIGR5MSBkeTJgXSxbYGx5MmAsYCstIGx5MSBkeTEgMGBdLFtgcnkzYCxgKy0gYiAwIGx5MmBdLFtgbHk0YCxgKi8gbHkyIDIgMWBdLFtgcnkxYCxgKy0gYiAwIGx5NGBdLFtgbHkzYCxgKy0gbHk0IDAgbHkxYF0sW2ByeTJgLGArLSBiIDAgbHkzYF0sW2BoUmAsYCovIGEzIHNzIDQwMDAwMGBdLFtgeDJgLGArLSBoYyAwIHdkMzJgXSxbYHgzYCxgKy0gaGMgd2QzMiAwYF0sW2B5MWAsYCstIGx5MSBoUiAwYF0sW2B5MmAsYCstIHJ5MiAwIGhSYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGBseTJgXSxbYGxgLGB4MWAsYHRgXSxbYGxgLGB4MWAsYGx5MWBdLFtgbGAsYGhjYCxgbHkxYF0sW2BhYCxgd2QzMmAsYGhSYCxgM2NkNGAsYGNkMmBdLFtgYWAsYHdkMzJgLGBoUmAsYDNjZDRgLGAtMTA4MDAwMDBgXSxbYGxgLGB4NGAsYHJ5MmBdLFtgbGAsYHg0YCxgcnkxYF0sW2BsYCxgcmAsYHJ5M2BdLFtgbGAsYHg0YCxgYmBdLFtgbGAsYHg0YCxgcnk0YF0sW2BsYCxgaGNgLGByeTRgXSxbYGFgLGB3ZDMyYCxgaFJgLGBjZDRgLGBjZDRgXSxbYGxgLGB4MmAsYGx5M2BdLFtgbGAsYHgxYCxgbHkzYF0sW2BsYCxgeDFgLGBseTRgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YGRhcmtlbkxlc3NgLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4M2AsYHkxYF0sW2BhYCxgd2QzMmAsYGhSYCxgMGAsYGNkNGBdLFtgYWAsYHdkMzJgLGBoUmAsYDNjZDRgLGAtMTA4MDAwMDBgXSxbYGxgLGB4M2AsYHJ5MmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGBseTJgXSxbYGxgLGB4MWAsYHRgXSxbYGxgLGB4MWAsYGx5MWBdLFtgbGAsYGhjYCxgbHkxYF0sW2BhYCxgd2QzMmAsYGhSYCxgM2NkNGAsYGNkMmBdLFtgYWAsYHdkMzJgLGBoUmAsYDNjZDRgLGAtMTA4MDAwMDBgXSxbYGxgLGB4NGAsYHJ5MmBdLFtgbGAsYHg0YCxgcnkxYF0sW2BsYCxgcmAsYHJ5M2BdLFtgbGAsYHg0YCxgYmBdLFtgbGAsYHg0YCxgcnk0YF0sW2BsYCxgaGNgLGByeTRgXSxbYGFgLGB3ZDMyYCxgaFJgLGBjZDRgLGBjZDRgXSxbYGxgLGB4MmAsYGx5M2BdLFtgbGAsYHgxYCxgbHkzYF0sW2BsYCxgeDFgLGBseTRgXSxbYGNgXSxbYG1gLGB4M2AsYHkxYF0sW2BsYCxgeDNgLGByeTJgXSxbYG1gLGB4MmAsYHkyYF0sW2BsYCxgeDJgLGBseTNgXV19XX0sSGY9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDI1MDAwYF0sW2BhZGozYCxgdmFsIDI1MDAwYF1dLGdkOltbYGEyYCxgcGluIDAgYWRqMiA1MDAwMGBdLFtgbWF4QWRqMWAsYCovIGEyIDIgMWBdLFtgYTFgLGBwaW4gMCBhZGoxIG1heEFkajFgXSxbYHExYCxgKy0gMTAwMDAwIDAgbWF4QWRqMWBdLFtgbWF4QWRqM2AsYCovIHExIDEgMmBdLFtgYTNgLGBwaW4gMCBhZGozIG1heEFkajNgXSxbYHgxYCxgKi8gc3MgYTMgMTAwMDAwYF0sW2BkeDJgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHg1YCxgKy0gaGMgZHgyIDBgXSxbYGR4M2AsYCovIHNzIGExIDIwMDAwMGBdLFtgeDNgLGArLSBoYyAwIGR4M2BdLFtgeDRgLGArLSBoYyBkeDMgMGBdLFtgeDZgLGArLSByIDAgeDFgXSxbYGR5MmAsYCovIHNzIGEyIDUwMDAwYF0sW2B5MmAsYCstIGIgMCBkeTJgXSxbYHk0YCxgKy0gYiAwIGR4MmBdLFtgeTNgLGArLSB5NCAwIGR4M2BdLFtgeTVgLGArLSB5NCBkeDMgMGBdLFtgaWxgLGAqLyBkeDMgeDEgZHgyYF0sW2BpcmAsYCstIHIgMCBpbGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgeTRgXSxbYGxgLGB4MWAsYHkyYF0sW2BsYCxgeDFgLGB5M2BdLFtgbGAsYHgzYCxgeTNgXSxbYGxgLGB4M2AsYHgxYF0sW2BsYCxgeDJgLGB4MWBdLFtgbGAsYGhjYCxgdGBdLFtgbGAsYHg1YCxgeDFgXSxbYGxgLGB4NGAsYHgxYF0sW2BsYCxgeDRgLGB5M2BdLFtgbGAsYHg2YCxgeTNgXSxbYGxgLGB4NmAsYHkyYF0sW2BsYCxgcmAsYHk0YF0sW2BsYCxgeDZgLGBiYF0sW2BsYCxgeDZgLGB5NWBdLFtgbGAsYHgxYCxgeTVgXSxbYGxgLGB4MWAsYGJgXSxbYGNgXV19XX0sVWY9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDI1MDAwYF0sW2BhZGozYCxgdmFsIDI1MDAwYF1dLGdkOltbYGEyYCxgcGluIDAgYWRqMiA1MDAwMGBdLFtgbWF4QWRqMWAsYCovIGEyIDIgMWBdLFtgYTFgLGBwaW4gMCBhZGoxIG1heEFkajFgXSxbYG1heEFkajNgLGArLSAxMDAwMDAgMCBtYXhBZGoxYF0sW2BhM2AsYHBpbiAwIGFkajMgbWF4QWRqM2BdLFtgeDFgLGAqLyBzcyBhMyAxMDAwMDBgXSxbYGR4MmAsYCovIHNzIGEyIDUwMDAwYF0sW2B4MmAsYCstIHIgMCBkeDJgXSxbYHkyYCxgKy0gYiAwIGR4MmBdLFtgZHg0YCxgKi8gc3MgYTIgMTAwMDAwYF0sW2B4NGAsYCstIHIgMCBkeDRgXSxbYHk0YCxgKy0gYiAwIGR4NGBdLFtgZHgzYCxgKi8gc3MgYTEgMjAwMDAwYF0sW2B4M2AsYCstIHg0IDAgZHgzYF0sW2B4NWAsYCstIHg0IGR4MyAwYF0sW2B5M2AsYCstIHk0IDAgZHgzYF0sW2B5NWAsYCstIHk0IGR4MyAwYF0sW2BpbGAsYCovIGR4MyB4MSBkeDRgXSxbYGN4MWAsYCsvIHgxIHg1IDJgXSxbYGN5MWAsYCsvIHgxIHk1IDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHk0YF0sW2BsYCxgeDFgLGB5MmBdLFtgbGAsYHgxYCxgeTNgXSxbYGxgLGB4M2AsYHkzYF0sW2BsYCxgeDNgLGB4MWBdLFtgbGAsYHgyYCxgeDFgXSxbYGxgLGB4NGAsYHRgXSxbYGxgLGByYCxgeDFgXSxbYGxgLGB4NWAsYHgxYF0sW2BsYCxgeDVgLGB5NWBdLFtgbGAsYHgxYCxgeTVgXSxbYGxgLGB4MWAsYGJgXSxbYGNgXV19XX0sV2Y9e2FkajpbXSxnZDpbW2B4MWAsYCovIHcgNTAyMiAyMTYwMGBdLFtgeDNgLGAqLyB3IDg0NzIgMjE2MDBgXSxbYHg0YCxgKi8gdyA4NzU3IDIxNjAwYF0sW2B4NWAsYCovIHcgMTAwMTIgMjE2MDBgXSxbYHg4YCxgKi8gdyAxMjg2MCAyMTYwMGBdLFtgeDlgLGAqLyB3IDEzOTE3IDIxNjAwYF0sW2B4MTFgLGAqLyB3IDE2NTc3IDIxNjAwYF0sW2B5MWAsYCovIGggMzg5MCAyMTYwMGBdLFtgeTJgLGAqLyBoIDYwODAgMjE2MDBgXSxbYHk0YCxgKi8gaCA3NDM3IDIxNjAwYF0sW2B5NmAsYCovIGggOTcwNSAyMTYwMGBdLFtgeTdgLGAqLyBoIDEyMDA3IDIxNjAwYF0sW2B5MTBgLGAqLyBoIDE0Mjc3IDIxNjAwYF0sW2B5MTFgLGAqLyBoIDE0OTE1IDIxNjAwYF1dLHBhdGhzOlt7dzoyMTYwMCxoOjIxNjAwLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgODQ3MmAsYDBgXSxbYGxgLGAxMjg2MGAsYDYwODBgXSxbYGxgLGAxMTA1MGAsYDY3OTdgXSxbYGxgLGAxNjU3N2AsYDEyMDA3YF0sW2BsYCxgMTQ3NjdgLGAxMjg3N2BdLFtgbGAsYDIxNjAwYCxgMjE2MDBgXSxbYGxgLGAxMDAxMmAsYDE0OTE1YF0sW2BsYCxgMTIyMjJgLGAxMzk4N2BdLFtgbGAsYDUwMjJgLGA5NzA1YF0sW2BsYCxgNzYwMmAsYDgzODJgXSxbYGxgLGAwYCxgMzg5MGBdLFtgY2BdXX1dfSxHZj17YWRqOltdLGdkOltdLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYGJgXV19XX0sS2Y9e2FkajpbXSxnZDpbXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgYmBdLFtgbGAsYHJgLGB0YF1dfV19LHFmPXthZGo6W1tgYWRqMWAsYHZhbCAyMzUyMGBdLFtgYWRqMmAsYHZhbCA1ODgwYF0sW2BhZGozYCxgdmFsIDExNzYwYF1dLGdkOltbYGExYCxgcGluIDEwMDAgYWRqMSAzNjc0NWBdLFtgbWExYCxgKy0gMCAwIGExYF0sW2BtYTNoYCxgKy8gNzM0OTAgbWExIDRgXSxbYG1hM3dgLGAqLyAzNjc0NSB3IGhgXSxbYG1heEFkajNgLGBtaW4gbWEzaCBtYTN3YF0sW2BhM2AsYHBpbiAxMDAwIGFkajMgbWF4QWRqM2BdLFtgbTRhM2AsYCovIC00IGEzIDFgXSxbYG1heEFkajJgLGArLSA3MzQ5MCBtNGEzIGExYF0sW2BhMmAsYHBpbiAwIGFkajIgbWF4QWRqMmBdLFtgZHkxYCxgKi8gaCBhMSAyMDAwMDBgXSxbYHlnYCxgKi8gaCBhMiAxMDAwMDBgXSxbYHJhZGAsYCovIGggYTMgMTAwMDAwYF0sW2BkeDFgLGAqLyB3IDczNDkwIDIwMDAwMGBdLFtgeTNgLGArLSB2YyAwIGR5MWBdLFtgeTRgLGArLSB2YyBkeTEgMGBdLFtgYWAsYCstIHlnIHJhZCAwYF0sW2B5MmAsYCstIHkzIDAgYWBdLFtgeTFgLGArLSB5MiAwIHJhZGBdLFtgeTVgLGArLSBiIDAgeTFgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgzYCxgKy0gaGMgZHgxIDBgXSxbYHgyYCxgKy0gaGMgMCByYWRgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgaGNgLGB5MWBdLFtgYWAsYHJhZGAsYHJhZGAsYDNjZDRgLGAyMTYwMDAwMGBdLFtgY2BdLFtgbWAsYGhjYCxgeTVgXSxbYGFgLGByYWRgLGByYWRgLGBjZDRgLGAyMTYwMDAwMGBdLFtgY2BdLFtgbWAsYHgxYCxgeTNgXSxbYGxgLGB4M2AsYHkzYF0sW2BsYCxgeDNgLGB5NGBdLFtgbGAsYHgxYCxgeTRgXSxbYGNgXV19XX0sSmY9e2FkajpbW2BhZGoxYCxgdmFsIDIzNTIwYF0sW2BhZGoyYCxgdmFsIDExNzYwYF1dLGdkOltbYGExYCxgcGluIDAgYWRqMSAzNjc0NWBdLFtgMmExYCxgKi8gYTEgMiAxYF0sW2BtQWRqMmAsYCstIDEwMDAwMCAwIDJhMWBdLFtgYTJgLGBwaW4gMCBhZGoyIG1BZGoyYF0sW2BkeTFgLGAqLyBoIGExIDEwMDAwMGBdLFtgZHkyYCxgKi8gaCBhMiAyMDAwMDBgXSxbYGR4MWAsYCovIHcgNzM0OTAgMjAwMDAwYF0sW2B5MmAsYCstIHZjIDAgZHkyYF0sW2B5M2AsYCstIHZjIGR5MiAwYF0sW2B5MWAsYCstIHkyIDAgZHkxYF0sW2B5NGAsYCstIHkzIGR5MSAwYF0sW2B4MWAsYCstIGhjIDAgZHgxYF0sW2B4MmAsYCstIGhjIGR4MSAwYF0sW2B5QzFgLGArLyB5MSB5MiAyYF0sW2B5QzJgLGArLyB5MyB5NCAyYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHgxYCxgeTFgXSxbYGxgLGB4MmAsYHkxYF0sW2BsYCxgeDJgLGB5MmBdLFtgbGAsYHgxYCxgeTJgXSxbYGNgXSxbYG1gLGB4MWAsYHkzYF0sW2BsYCxgeDJgLGB5M2BdLFtgbGAsYHgyYCxgeTRgXSxbYGxgLGB4MWAsYHk0YF0sW2BjYF1dfV19LFlmPXthZGo6W1tgYWRqMWAsYHZhbCAyMzUyMGBdXSxnZDpbW2BhMWAsYHBpbiAwIGFkajEgMTAwMDAwYF0sW2BkeTFgLGAqLyBoIGExIDIwMDAwMGBdLFtgZHgxYCxgKi8gdyA3MzQ5MCAyMDAwMDBgXSxbYHkxYCxgKy0gdmMgMCBkeTFgXSxbYHkyYCxgKy0gdmMgZHkxIDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgZHgxIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeDFgLGB5MWBdLFtgbGAsYHgyYCxgeTFgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDFgLGB5MmBdLFtgY2BdXX1dfSxYZj17YWRqOltbYGFkajFgLGB2YWwgMjM1MjBgXV0sZ2Q6W1tgYTFgLGBwaW4gMCBhZGoxIDUxOTY1YF0sW2B0aGAsYCovIHNzIGExIDEwMDAwMGBdLFtgYWAsYGF0MiB3IGhgXSxbYHNhYCxgc2luIDEgYWBdLFtgY2FgLGBjb3MgMSBhYF0sW2B0YWAsYHRhbiAxIGFgXSxbYGRsYCxgbW9kIHcgaCAwYF0sW2Byd2AsYCovIGRsIDUxOTY1IDEwMDAwMGBdLFtgbE1gLGArLSBkbCAwIHJ3YF0sW2B4TWAsYCovIGNhIGxNIDJgXSxbYHlNYCxgKi8gc2EgbE0gMmBdLFtgZHhBTWAsYCovIHNhIHRoIDJgXSxbYGR5QU1gLGAqLyBjYSB0aCAyYF0sW2B4QWAsYCstIHhNIDAgZHhBTWBdLFtgeUFgLGArLSB5TSBkeUFNIDBgXSxbYHhCYCxgKy0geE0gZHhBTSAwYF0sW2B5QmAsYCstIHlNIDAgZHlBTWBdLFtgeEJDYCxgKy0gaGMgMCB4QmBdLFtgeUJDYCxgKi8geEJDIHRhIDFgXSxbYHlDYCxgKy0geUJDIHlCIDBgXSxbYHhEYCxgKy0gciAwIHhCYF0sW2B4RWAsYCstIHIgMCB4QWBdLFtgeUZFYCxgKy0gdmMgMCB5QWBdLFtgeEZFYCxgKi8geUZFIDEgdGFgXSxbYHhGYCxgKy0geEUgMCB4RkVgXSxbYHhMYCxgKy0geEEgeEZFIDBgXSxbYHlHYCxgKy0gYiAwIHlBYF0sW2B5SGAsYCstIGIgMCB5QmBdLFtgeUlgLGArLSBiIDAgeUNgXSxbYHhDMmAsYCstIHIgMCB4TWBdLFtgeUMzYCxgKy0gYiAwIHlNYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHhBYCxgeUFgXSxbYGxgLGB4QmAsYHlCYF0sW2BsYCxgaGNgLGB5Q2BdLFtgbGAsYHhEYCxgeUJgXSxbYGxgLGB4RWAsYHlBYF0sW2BsYCxgeEZgLGB2Y2BdLFtgbGAsYHhFYCxgeUdgXSxbYGxgLGB4RGAsYHlIYF0sW2BsYCxgaGNgLGB5SWBdLFtgbGAsYHhCYCxgeUhgXSxbYGxgLGB4QWAsYHlHYF0sW2BsYCxgeExgLGB2Y2BdLFtgY2BdXX1dfSxaZj17YWRqOltbYGFkajFgLGB2YWwgMjM1MjBgXSxbYGFkajJgLGB2YWwgNjYwMDAwMGBdLFtgYWRqM2AsYHZhbCAxMTc2MGBdXSxnZDpbW2BhMWAsYHBpbiAwIGFkajEgNTAwMDBgXSxbYGNyQW5nYCxgcGluIDQyMDAwMDAgYWRqMiA2NjAwMDAwYF0sW2AyYTFgLGAqLyBhMSAyIDFgXSxbYG1heEFkajNgLGArLSAxMDAwMDAgMCAyYTFgXSxbYGEzYCxgcGluIDAgYWRqMyBtYXhBZGozYF0sW2BkeTFgLGAqLyBoIGExIDEwMDAwMGBdLFtgZHkyYCxgKi8gaCBhMyAyMDAwMDBgXSxbYGR4MWAsYCovIHcgNzM0OTAgMjAwMDAwYF0sW2B4MWAsYCstIGhjIDAgZHgxYF0sW2B4OGAsYCstIGhjIGR4MSAwYF0sW2B5MmAsYCstIHZjIDAgZHkyYF0sW2B5M2AsYCstIHZjIGR5MiAwYF0sW2B5MWAsYCstIHkyIDAgZHkxYF0sW2B5NGAsYCstIHkzIGR5MSAwYF0sW2BjYWRqMmAsYCstIGNyQW5nIDAgY2Q0YF0sW2B4YWRqMmAsYHRhbiBoZDIgY2FkajJgXSxbYGxlbmAsYG1vZCB4YWRqMiBoZDIgMGBdLFtgYmh3YCxgKi8gbGVuIGR5MSBoZDJgXSxbYGJodzJgLGAqLyBiaHcgMSAyYF0sW2B4N2AsYCstIGhjIHhhZGoyIGJodzJgXSxbYGR4NjdgLGAqLyB4YWRqMiB5MSBoZDJgXSxbYHg2YCxgKy0geDcgMCBkeDY3YF0sW2BkeDU3YCxgKi8geGFkajIgeTIgaGQyYF0sW2B4NWAsYCstIHg3IDAgZHg1N2BdLFtgZHg0N2AsYCovIHhhZGoyIHkzIGhkMmBdLFtgeDRgLGArLSB4NyAwIGR4NDdgXSxbYGR4MzdgLGAqLyB4YWRqMiB5NCBoZDJgXSxbYHgzYCxgKy0geDcgMCBkeDM3YF0sW2BkeDI3YCxgKi8geGFkajIgMiAxYF0sW2B4MmAsYCstIHg3IDAgZHgyN2BdLFtgcng3YCxgKy0geDcgYmh3IDBgXSxbYHJ4NmAsYCstIHg2IGJodyAwYF0sW2ByeDVgLGArLSB4NSBiaHcgMGBdLFtgcng0YCxgKy0geDQgYmh3IDBgXSxbYHJ4M2AsYCstIHgzIGJodyAwYF0sW2ByeDJgLGArLSB4MiBiaHcgMGBdLFtgZHg3YCxgKi8gZHkxIGhkMiBsZW5gXSxbYHJ4dGAsYCstIHg3IGR4NyAwYF0sW2BseHRgLGArLSByeDcgMCBkeDdgXSxbYHJ4YCxgPzogY2FkajIgcnh0IHJ4N2BdLFtgbHhgLGA/OiBjYWRqMiB4NyBseHRgXSxbYGR5M2AsYCovIGR5MSB4YWRqMiBsZW5gXSxbYGR5NGAsYCstIDAgMCBkeTNgXSxbYHJ5YCxgPzogY2FkajIgZHkzIHRgXSxbYGx5YCxgPzogY2FkajIgdCBkeTRgXSxbYGRseGAsYCstIHcgMCByeGBdLFtgZHJ4YCxgKy0gdyAwIGx4YF0sW2BkbHlgLGArLSBoIDAgcnlgXSxbYGRyeWAsYCstIGggMCBseWBdLFtgeEMxYCxgKy8gcnggbHggMmBdLFtgeEMyYCxgKy8gZHJ4IGRseCAyYF0sW2B5QzFgLGArLyByeSBseSAyYF0sW2B5QzJgLGArLyB5MSB5MiAyYF0sW2B5QzNgLGArLyB5MyB5NCAyYF0sW2B5QzRgLGArLyBkcnkgZGx5IDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeDFgLGB5MWBdLFtgbGAsYHg2YCxgeTFgXSxbYGxgLGBseGAsYGx5YF0sW2BsYCxgcnhgLGByeWBdLFtgbGAsYHJ4NmAsYHkxYF0sW2BsYCxgeDhgLGB5MWBdLFtgbGAsYHg4YCxgeTJgXSxbYGxgLGByeDVgLGB5MmBdLFtgbGAsYHJ4NGAsYHkzYF0sW2BsYCxgeDhgLGB5M2BdLFtgbGAsYHg4YCxgeTRgXSxbYGxgLGByeDNgLGB5NGBdLFtgbGAsYGRyeGAsYGRyeWBdLFtgbGAsYGRseGAsYGRseWBdLFtgbGAsYHgzYCxgeTRgXSxbYGxgLGB4MWAsYHk0YF0sW2BsYCxgeDFgLGB5M2BdLFtgbGAsYHg0YCxgeTNgXSxbYGxgLGB4NWAsYHkyYF0sW2BsYCxgeDFgLGB5MmBdLFtgY2BdXX1dfSxRZj17YWRqOltbYGFkajFgLGB2YWwgMjM1MjBgXV0sZ2Q6W1tgYTFgLGBwaW4gMCBhZGoxIDczNDkwYF0sW2BkeDFgLGAqLyB3IDczNDkwIDIwMDAwMGBdLFtgZHkxYCxgKi8gaCA3MzQ5MCAyMDAwMDBgXSxbYGR4MmAsYCovIHNzIGExIDIwMDAwMGBdLFtgeDFgLGArLSBoYyAwIGR4MWBdLFtgeDJgLGArLSBoYyAwIGR4MmBdLFtgeDNgLGArLSBoYyBkeDIgMGBdLFtgeDRgLGArLSBoYyBkeDEgMGBdLFtgeTFgLGArLSB2YyAwIGR5MWBdLFtgeTJgLGArLSB2YyAwIGR4MmBdLFtgeTNgLGArLSB2YyBkeDIgMGBdLFtgeTRgLGArLSB2YyBkeTEgMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4MWAsYHkyYF0sW2BsYCxgeDJgLGB5MmBdLFtgbGAsYHgyYCxgeTFgXSxbYGxgLGB4M2AsYHkxYF0sW2BsYCxgeDNgLGB5MmBdLFtgbGAsYHg0YCxgeTJgXSxbYGxgLGB4NGAsYHkzYF0sW2BsYCxgeDNgLGB5M2BdLFtgbGAsYHgzYCxgeTRgXSxbYGxgLGB4MmAsYHk0YF0sW2BsYCxgeDJgLGB5M2BdLFtgbGAsYHgxYCxgeTNgXSxbYGNgXV19XX0sJGY9e2FkajpbW2BhZGpgLGB2YWwgNTAwMDBgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiA4NzUwMGBdLFtgZzBgLGAqLyBzcyBhIDEwMDAwMGBdLFtgZzB3YCxgKi8gZzAgdyBzc2BdLFtgZzFgLGArLSBzcyAwIGcwYF0sW2BnMmAsYCovIGcwIGcwIGcxYF0sW2BnM2AsYCovIHNzIHNzIGcxYF0sW2BnNGAsYCovIGczIDIgMWBdLFtgZzVgLGArLSBnNCAwIGcyYF0sW2BnNmAsYCstIGc1IDAgZzBgXSxbYGc2d2AsYCovIGc2IHcgc3NgXSxbYGc3YCxgKi8gZzUgMSAyYF0sW2BnOGAsYCstIGc3IDAgZzBgXSxbYGR5MWAsYCovIGc4IGhkMiBzc2BdLFtgZzEwaGAsYCstIHZjIDAgZHkxYF0sW2BnMTFoYCxgKy0gdmMgZHkxIDBgXSxbYGcxMmAsYCovIGcwIDk1OTggMzI3NjhgXSxbYGcxMndgLGAqLyBnMTIgdyBzc2BdLFtgZzEzYCxgKy0gc3MgMCBnMTJgXSxbYHExYCxgKi8gc3Mgc3MgMWBdLFtgcTJgLGAqLyBnMTMgZzEzIDFgXSxbYHEzYCxgKy0gcTEgMCBxMmBdLFtgcTRgLGBzcXJ0IHEzYF0sW2BkeTRgLGAqLyBxNCBoZDIgc3NgXSxbYGcxNWhgLGArLSB2YyAwIGR5NGBdLFtgZzE2aGAsYCstIHZjIGR5NCAwYF0sW2BnMTd3YCxgKy0gZzZ3IDAgZzB3YF0sW2BnMTh3YCxgKi8gZzE3dyAxIDJgXSxbYGR4MnBgLGArLSBnMHcgZzE4dyB3YF0sW2BkeDJgLGAqLyBkeDJwIC0xIDFgXSxbYGR5MmAsYCovIGhkMiAtMSAxYF0sW2BzdEFuZzFgLGBhdDIgZHgyIGR5MmBdLFtgZW5BbmdwMWAsYGF0MiBkeDIgaGQyYF0sW2BlbkFuZzFgLGArLSBlbkFuZ3AxIDAgMjE2MDAwMDBgXSxbYHN3QW5nMWAsYCstIGVuQW5nMSAwIHN0QW5nMWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGByYCxgYmBdLFtgYWAsYHdgLGBoZDJgLGBjZDRgLGBjZDJgXSxbYGFgLGBnMTh3YCxgZHkxYCxgc3RBbmcxYCxgc3dBbmcxYF0sW2BjYF1dfV19LGVwPXthZGo6W1tgYWRqMWAsYHZhbCAyNTAwMGBdLFtgYWRqMmAsYHZhbCAyNTAwMGBdXSxnZDpbW2BtYXhBZGpgLGAqLyA1MDAwMCB3IHNzYF0sW2BhMWAsYHBpbiAwIGFkajEgbWF4QWRqYF0sW2BhMmAsYHBpbiAwIGFkajIgbWF4QWRqYF0sW2B4MWAsYCovIHNzIGExIDIwMDAwMGBdLFtgeDJgLGAqLyBzcyBhMSAxMDAwMDBgXSxbYGR4M2AsYCovIHNzIGEyIDEwMDAwMGBdLFtgeDNgLGArLSByIDAgZHgzYF0sW2B4NGAsYCsvIHIgeDMgMmBdLFtgaWxgLGAqLyB3ZDMgYTEgbWF4QWRqYF0sW2BhZGptYCxgbWF4IGExIGEyYF0sW2BpdGAsYCovIGhkMyBhZGptIG1heEFkamBdLFtgaXJ0YCxgKi8gd2QzIGEyIG1heEFkamBdLFtgaXJgLGArLSByIDAgaXJ0YF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGBiYF0sW2BsYCxgeDJgLGB0YF0sW2BsYCxgeDNgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGNgXV19XX0sdHA9e2FkajpbW2BhZGpgLGB2YWwgMTg3NTBgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiA1MDAwMGBdLFtgZHJgLGAqLyBzcyBhIDEwMDAwMGBdLFtgaXdkMmAsYCstIHdkMiAwIGRyYF0sW2BpaGQyYCxgKy0gaGQyIDAgZHJgXSxbYGFuZ2AsYGF0MiB3IGhgXSxbYGN0YCxgY29zIGloZDIgYW5nYF0sW2BzdGAsYHNpbiBpd2QyIGFuZ2BdLFtgbWAsYG1vZCBjdCBzdCAwYF0sW2BuYCxgKi8gaXdkMiBpaGQyIG1gXSxbYGRyZDJgLGAqLyBkciAxIDJgXSxbYGRhbmdgLGBhdDIgbiBkcmQyYF0sW2BkYW5nMmAsYCovIGRhbmcgMiAxYF0sW2Bzd0FuZ2AsYCstIC0xMDgwMDAwMCBkYW5nMiAwYF0sW2B0M2AsYGF0MiB3IGhgXSxbYHN0QW5nMWAsYCstIHQzIDAgZGFuZ2BdLFtgc3RBbmcyYCxgKy0gc3RBbmcxIDAgY2QyYF0sW2BjdDFgLGBjb3MgaWhkMiBzdEFuZzFgXSxbYHN0MWAsYHNpbiBpd2QyIHN0QW5nMWBdLFtgbTFgLGBtb2QgY3QxIHN0MSAwYF0sW2BuMWAsYCovIGl3ZDIgaWhkMiBtMWBdLFtgZHgxYCxgY29zIG4xIHN0QW5nMWBdLFtgZHkxYCxgc2luIG4xIHN0QW5nMWBdLFtgeDFgLGArLSBoYyBkeDEgMGBdLFtgeTFgLGArLSB2YyBkeTEgMGBdLFtgeDJgLGArLSBoYyAwIGR4MWBdLFtgeTJgLGArLSB2YyAwIGR5MWBdLFtgaWR4YCxgY29zIHdkMiAyNzAwMDAwYF0sW2BpZHlgLGBzaW4gaGQyIDI3MDAwMDBgXSxbYGlsYCxgKy0gaGMgMCBpZHhgXSxbYGlyYCxgKy0gaGMgaWR4IDBgXSxbYGl0YCxgKy0gdmMgMCBpZHlgXSxbYGliYCxgKy0gdmMgaWR5IDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHZjYF0sW2BhYCxgd2QyYCxgaGQyYCxgY2QyYCxgY2Q0YF0sW2BhYCxgd2QyYCxgaGQyYCxgM2NkNGAsYGNkNGBdLFtgYWAsYHdkMmAsYGhkMmAsYDBgLGBjZDRgXSxbYGFgLGB3ZDJgLGBoZDJgLGBjZDRgLGBjZDRgXSxbYGNgXSxbYG1gLGB4MWAsYHkxYF0sW2BhYCxgaXdkMmAsYGloZDJgLGBzdEFuZzFgLGBzd0FuZ2BdLFtgY2BdLFtgbWAsYHgyYCxgeTJgXSxbYGFgLGBpd2QyYCxgaWhkMmAsYHN0QW5nMmAsYHN3QW5nYF0sW2BjYF1dfV19LG5wPXthZGo6W1tgYWRqMWAsYHZhbCA1MDAwMGBdLFtgYWRqMmAsYHZhbCA1MDAwMGBdXSxnZDpbW2BtYXhBZGoyYCxgKi8gMTAwMDAwIHcgc3NgXSxbYGExYCxgcGluIDAgYWRqMSAxMDAwMDBgXSxbYGEyYCxgcGluIDAgYWRqMiBtYXhBZGoyYF0sW2BkeDJgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYHgyYCxgKy0gciAwIGR4MmBdLFtgZHkxYCxgKi8gaCBhMSAyMDAwMDBgXSxbYHkxYCxgKy0gdmMgMCBkeTFgXSxbYHkyYCxgKy0gdmMgZHkxIDBgXSxbYHgxYCxgKi8gZHkxIGR4MiBoZDJgXSxbYHgzYCxgKy0gciAwIHgxYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB5MWBdLFtgbGAsYHgyYCxgeTFgXSxbYGxgLGB4MmAsYHRgXSxbYGxgLGByYCxgdmNgXSxbYGxgLGB4MmAsYGJgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgbGAsYHkyYF0sW2BsYCxgeDFgLGB2Y2BdLFtgY2BdXX1dfSxycD17YWRqOltbYGFkamAsYHZhbCAyOTI4OWBdXSxnZDpbW2BhYCxgcGluIDAgYWRqIDUwMDAwYF0sW2B4MWAsYCovIHNzIGEgMTAwMDAwYF0sW2B4MmAsYCstIHIgMCB4MWBdLFtgeTJgLGArLSBiIDAgeDFgXSxbYGlsYCxgKi8geDEgMSAyYF0sW2BpcmAsYCstIHIgMCBpbGBdLFtgaWJgLGArLSBiIDAgaWxgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHgxYF0sW2BsYCxgeDFgLGB0YF0sW2BsYCxgeDJgLGB0YF0sW2BsYCxgcmAsYHgxYF0sW2BsYCxgcmAsYHkyYF0sW2BsYCxgeDJgLGBiYF0sW2BsYCxgeDFgLGBiYF0sW2BsYCxgbGAsYHkyYF0sW2BjYF1dfV19LGlwPXthZGo6W1tgYWRqYCxgdmFsIDI1MDAwYF1dLGdkOltbYG1heEFkamAsYCovIDEwMDAwMCB3IHNzYF0sW2BhYCxgcGluIDAgYWRqIG1heEFkamBdLFtgeDFgLGAqLyBzcyBhIDIwMDAwMGBdLFtgeDJgLGAqLyBzcyBhIDEwMDAwMGBdLFtgeDZgLGArLSByIDAgeDFgXSxbYHg1YCxgKy0gciAwIHgyYF0sW2B4M2AsYCovIHg1IDEgMmBdLFtgeDRgLGArLSByIDAgeDNgXSxbYGlsYCxgKi8gd2QyIGEgbWF4QWRqYF0sW2BxMWAsYCovIDUgYSBtYXhBZGpgXSxbYHEyYCxgKy8gMSBxMSAxMmBdLFtgaWxgLGAqLyBxMiB3IDFgXSxbYGl0YCxgKi8gcTIgaCAxYF0sW2BpcmAsYCstIHIgMCBpbGBdLFtgaWJgLGArLSBiIDAgaXRgXSxbYHEzYCxgKi8gaCBoYyB4MmBdLFtgeTFgLGBwaW4gMCBxMyBoYF0sW2B5MmAsYCstIGIgMCB5MWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgYmBdLFtgbGAsYHgyYCxgdGBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgeDVgLGBiYF0sW2BjYF1dfV19LGFwPXthZGo6W1tgaGZgLGB2YWwgMTA1MTQ2YF0sW2B2ZmAsYHZhbCAxMTA1NTdgXV0sZ2Q6W1tgc3dkMmAsYCovIHdkMiBoZiAxMDAwMDBgXSxbYHNoZDJgLGAqLyBoZDIgdmYgMTAwMDAwYF0sW2BzdmNgLGAqLyB2YyAgdmYgMTAwMDAwYF0sW2BkeDFgLGBjb3Mgc3dkMiAxMDgwMDAwYF0sW2BkeDJgLGBjb3Mgc3dkMiAxODM2MDAwMGBdLFtgZHkxYCxgc2luIHNoZDIgMTA4MDAwMGBdLFtgZHkyYCxgc2luIHNoZDIgMTgzNjAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHgzYCxgKy0gaGMgZHgyIDBgXSxbYHg0YCxgKy0gaGMgZHgxIDBgXSxbYHkxYCxgKy0gc3ZjIDAgZHkxYF0sW2B5MmAsYCstIHN2YyAwIGR5MmBdLFtgaXRgLGAqLyB5MSBkeDIgZHgxYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHgxYCxgeTFgXSxbYGxgLGBoY2AsYHRgXSxbYGxgLGB4NGAsYHkxYF0sW2BsYCxgeDNgLGB5MmBdLFtgbGAsYHgyYCxgeTJgXSxbYGNgXV19XX0sb3A9e2FkajpbW2BhZGoxYCxgdmFsIDBgXSxbYGFkajJgLGB2YWwgMTYyMDAwMDBgXV0sZ2Q6W1tgc3RBbmdgLGBwaW4gMCBhZGoxIDIxNTk5OTk5YF0sW2BlbkFuZ2AsYHBpbiAwIGFkajIgMjE1OTk5OTlgXSxbYHN3MWAsYCstIGVuQW5nIDAgc3RBbmdgXSxbYHN3MmAsYCstIHN3MSAyMTYwMDAwMCAwYF0sW2Bzd0FuZ2AsYD86IHN3MSBzdzEgc3cyYF0sW2B3dDFgLGBzaW4gd2QyIHN0QW5nYF0sW2BodDFgLGBjb3MgaGQyIHN0QW5nYF0sW2BkeDFgLGBjYXQyIHdkMiBodDEgd3QxYF0sW2BkeTFgLGBzYXQyIGhkMiBodDEgd3QxYF0sW2B4MWAsYCstIGhjIGR4MSAwYF0sW2B5MWAsYCstIHZjIGR5MSAwYF0sW2B3dDJgLGBzaW4gd2QyIGVuQW5nYF0sW2BodDJgLGBjb3MgaGQyIGVuQW5nYF0sW2BkeDJgLGBjYXQyIHdkMiBodDIgd3QyYF0sW2BkeTJgLGBzYXQyIGhkMiBodDIgd3QyYF0sW2B4MmAsYCstIGhjIGR4MiAwYF0sW2B5MmAsYCstIHZjIGR5MiAwYF0sW2BpZHhgLGBjb3Mgd2QyIDI3MDAwMDBgXSxbYGlkeWAsYHNpbiBoZDIgMjcwMDAwMGBdLFtgaWxgLGArLSBoYyAwIGlkeGBdLFtgaXJgLGArLSBoYyBpZHggMGBdLFtgaXRgLGArLSB2YyAwIGlkeWBdLFtgaWJgLGArLSB2YyBpZHkgMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4MWAsYHkxYF0sW2BhYCxgd2QyYCxgaGQyYCxgc3RBbmdgLGBzd0FuZ2BdLFtgbGAsYGhjYCxgdmNgXSxbYGNgXV19XX0sc3A9e2FkajpbXSxnZDpbW2BnMWAsYGNvcyB3IDEzNTAwMDAwYF0sW2BnMmAsYHNpbiBoIDEzNTAwMDAwYF0sW2B4MWAsYCstIHIgZzEgMGBdLFtgeTFgLGArLSBiIGcyIDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYGJgXSxbYGFgLGB3YCxgaGAsYGNkMmAsYGNkNGBdLFtgbGAsYHJgLGBiYF0sW2BjYF1dfV19LGNwPXthZGo6W1tgYWRqYCxgdmFsIDE2NjY3YF1dLGdkOltbYGFgLGBwaW4gMCBhZGogNTAwMDBgXSxbYHgxYCxgKi8gc3MgYSAxMDAwMDBgXSxbYHgyYCxgKy0gciAwIHgxYF0sW2B5MmAsYCstIGIgMCB4MWBdLFtgaWxgLGAqLyB4MSA3MDcxMSAxMDAwMDBgXSxbYGlyYCxgKy0gciAwIGlsYF0sW2BpYmAsYCstIGIgMCBpbGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgeDFgXSxbYGFgLGB4MWAsYHgxYCxgY2Q0YCxgLTU0MDAwMDBgXSxbYGxgLGB4MmAsYHRgXSxbYGFgLGB4MWAsYHgxYCxgY2QyYCxgLTU0MDAwMDBgXSxbYGxgLGByYCxgeTJgXSxbYGFgLGB4MWAsYHgxYCxgM2NkNGAsYC01NDAwMDAwYF0sW2BsYCxgeDFgLGBiYF0sW2BhYCxgeDFgLGB4MWAsYDBgLGAtNTQwMDAwMGBdLFtgY2BdXX1dfSxscD17YWRqOltdLGdkOltbYG1kYCxgbW9kIHcgaCAwYF0sW2BkeGAsYCovIDEgbWQgMjBgXSxbYHkxYCxgKy0gMCBiIGR4YF0sW2B4MWAsYCstIDAgciBkeGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYGR4YCxgdGBdLFtgYWAsYGR4YCxgZHhgLGAwYCxgY2Q0YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB5MWBdLFtgYWAsYGR4YCxgZHhgLGAzY2Q0YCxgY2Q0YF0sW2BsYCxgbGAsYGJgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgcmAsYHRgXSxbYGxgLGByYCxgZHhgXSxbYGFgLGBkeGAsYGR4YCxgY2Q0YCxgY2Q0YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHgxYCxgYmBdLFtgYWAsYGR4YCxgZHhgLGBjZDJgLGBjZDRgXSxbYGxgLGByYCxgYmBdLFtgY2BdXX1dfSx1cD17YWRqOltbYGFkamAsYHZhbCAyNTAwMGBdXSxnZDpbW2BhYCxgcGluIDAgYWRqIDUwMDAwYF0sW2B4MWAsYCovIHNzIGEgMTAwMDAwYF0sW2B4MmAsYCstIHIgMCB4MWBdLFtgeTJgLGArLSBiIDAgeDFgXSxbYGRgLGArLSB3IDAgaGBdLFtgaWxgLGA/OiBkIGwgeDFgXSxbYGlyYCxgPzogZCByIHgyYF0sW2BpdGAsYD86IGQgeDEgdGBdLFtgaWJgLGA/OiBkIHkyIGJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHgxYF0sW2BsYCxgeDFgLGB4MWBdLFtgbGAsYHgxYCxgdGBdLFtgbGAsYHgyYCxgdGBdLFtgbGAsYHgyYCxgeDFgXSxbYGxgLGByYCxgeDFgXSxbYGxgLGByYCxgeTJgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDJgLGBiYF0sW2BsYCxgeDFgLGBiYF0sW2BsYCxgeDFgLGB5MmBdLFtgbGAsYGxgLGB5MmBdLFtgY2BdXX1dfSxkcD17YWRqOltbYGFkajFgLGB2YWwgMjI1MDBgXSxbYGFkajJgLGB2YWwgMjI1MDBgXSxbYGFkajNgLGB2YWwgMjI1MDBgXV0sZ2Q6W1tgYTJgLGBwaW4gMCBhZGoyIDUwMDAwYF0sW2BtYXhBZGoxYCxgKi8gYTIgMiAxYF0sW2BhMWAsYHBpbiAwIGFkajEgbWF4QWRqMWBdLFtgcTFgLGArLSAxMDAwMDAgMCBtYXhBZGoxYF0sW2BtYXhBZGozYCxgKi8gcTEgMSAyYF0sW2BhM2AsYHBpbiAwIGFkajMgbWF4QWRqM2BdLFtgeDFgLGAqLyBzcyBhMyAxMDAwMDBgXSxbYGR4MmAsYCovIHNzIGEyIDEwMDAwMGBdLFtgeDJgLGArLSBoYyAwIGR4MmBdLFtgeDVgLGArLSBoYyBkeDIgMGBdLFtgZHgzYCxgKi8gc3MgYTEgMjAwMDAwYF0sW2B4M2AsYCstIGhjIDAgZHgzYF0sW2B4NGAsYCstIGhjIGR4MyAwYF0sW2B4NmAsYCstIHIgMCB4MWBdLFtgeTJgLGArLSB2YyAwIGR4MmBdLFtgeTVgLGArLSB2YyBkeDIgMGBdLFtgeTNgLGArLSB2YyAwIGR4M2BdLFtgeTRgLGArLSB2YyBkeDMgMGBdLFtgeTZgLGArLSBiIDAgeDFgXSxbYGlsYCxgKi8gZHgzIHgxIGR4MmBdLFtgaXJgLGArLSByIDAgaWxgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHZjYF0sW2BsYCxgeDFgLGB5MmBdLFtgbGAsYHgxYCxgeTNgXSxbYGxgLGB4M2AsYHkzYF0sW2BsYCxgeDNgLGB4MWBdLFtgbGAsYHgyYCxgeDFgXSxbYGxgLGBoY2AsYHRgXSxbYGxgLGB4NWAsYHgxYF0sW2BsYCxgeDRgLGB4MWBdLFtgbGAsYHg0YCxgeTNgXSxbYGxgLGB4NmAsYHkzYF0sW2BsYCxgeDZgLGB5MmBdLFtgbGAsYHJgLGB2Y2BdLFtgbGAsYHg2YCxgeTVgXSxbYGxgLGB4NmAsYHk0YF0sW2BsYCxgeDRgLGB5NGBdLFtgbGAsYHg0YCxgeTZgXSxbYGxgLGB4NWAsYHk2YF0sW2BsYCxgaGNgLGBiYF0sW2BsYCxgeDJgLGB5NmBdLFtgbGAsYHgzYCxgeTZgXSxbYGxgLGB4M2AsYHk0YF0sW2BsYCxgeDFgLGB5NGBdLFtgbGAsYHgxYCxgeTVgXSxbYGNgXV19XX0sZnA9e2FkajpbW2BhZGoxYCxgdmFsIDE4NTE1YF0sW2BhZGoyYCxgdmFsIDE4NTE1YF0sW2BhZGozYCxgdmFsIDE4NTE1YF0sW2BhZGo0YCxgdmFsIDQ4MTIzYF1dLGdkOltbYGEyYCxgcGluIDAgYWRqMiA1MDAwMGBdLFtgbWF4QWRqMWAsYCovIGEyIDIgMWBdLFtgYTFgLGBwaW4gMCBhZGoxIG1heEFkajFgXSxbYG1heEFkajNgLGArLSA1MDAwMCAwIGEyYF0sW2BhM2AsYHBpbiAwIGFkajMgbWF4QWRqM2BdLFtgcTJgLGAqLyBhMyAyIDFgXSxbYG1heEFkajRgLGArLSAxMDAwMDAgMCBxMmBdLFtgYTRgLGBwaW4gYTEgYWRqNCBtYXhBZGo0YF0sW2BkeDJgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYGR4M2AsYCovIHNzIGExIDIwMDAwMGBdLFtgYWhgLGAqLyBzcyBhMyAxMDAwMDBgXSxbYGR4MWAsYCovIHcgYTQgMjAwMDAwYF0sW2BkeTFgLGAqLyBoIGE0IDIwMDAwMGBdLFtgeDhgLGArLSByIDAgYWhgXSxbYHgyYCxgKy0gaGMgMCBkeDFgXSxbYHg3YCxgKy0gaGMgZHgxIDBgXSxbYHgzYCxgKy0gaGMgMCBkeDJgXSxbYHg2YCxgKy0gaGMgZHgyIDBgXSxbYHg0YCxgKy0gaGMgMCBkeDNgXSxbYHg1YCxgKy0gaGMgZHgzIDBgXSxbYHk4YCxgKy0gYiAwIGFoYF0sW2B5MmAsYCstIHZjIDAgZHkxYF0sW2B5N2AsYCstIHZjIGR5MSAwYF0sW2B5M2AsYCstIHZjIDAgZHgyYF0sW2B5NmAsYCstIHZjIGR4MiAwYF0sW2B5NGAsYCstIHZjIDAgZHgzYF0sW2B5NWAsYCstIHZjIGR4MyAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB2Y2BdLFtgbGAsYGFoYCxgeTNgXSxbYGxgLGBhaGAsYHk0YF0sW2BsYCxgeDJgLGB5NGBdLFtgbGAsYHgyYCxgeTJgXSxbYGxgLGB4NGAsYHkyYF0sW2BsYCxgeDRgLGBhaGBdLFtgbGAsYHgzYCxgYWhgXSxbYGxgLGBoY2AsYHRgXSxbYGxgLGB4NmAsYGFoYF0sW2BsYCxgeDVgLGBhaGBdLFtgbGAsYHg1YCxgeTJgXSxbYGxgLGB4N2AsYHkyYF0sW2BsYCxgeDdgLGB5NGBdLFtgbGAsYHg4YCxgeTRgXSxbYGxgLGB4OGAsYHkzYF0sW2BsYCxgcmAsYHZjYF0sW2BsYCxgeDhgLGB5NmBdLFtgbGAsYHg4YCxgeTVgXSxbYGxgLGB4N2AsYHk1YF0sW2BsYCxgeDdgLGB5N2BdLFtgbGAsYHg1YCxgeTdgXSxbYGxgLGB4NWAsYHk4YF0sW2BsYCxgeDZgLGB5OGBdLFtgbGAsYGhjYCxgYmBdLFtgbGAsYHgzYCxgeThgXSxbYGxgLGB4NGAsYHk4YF0sW2BsYCxgeDRgLGB5N2BdLFtgbGAsYHgyYCxgeTdgXSxbYGxgLGB4MmAsYHk1YF0sW2BsYCxgYWhgLGB5NWBdLFtgbGAsYGFoYCxgeTZgXSxbYGNgXV19XX0scHA9e2FkajpbW2BhZGoxYCxgdmFsIDE2NjY3YF0sW2BhZGoyYCxgdmFsIDUwMDAwYF1dLGdkOltbYGExYCxgcGluIDAgYWRqMSAzMzMzM2BdLFtgYTJgLGBwaW4gMjUwMDAgYWRqMiA3NTAwMGBdLFtgeDEwYCxgKy0gciAwIHdkOGBdLFtgZHgyYCxgKi8gdyBhMiAyMDAwMDBgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHg5YCxgKy0gaGMgZHgyIDBgXSxbYHgzYCxgKy0geDIgd2QzMiAwYF0sW2B4OGAsYCstIHg5IDAgd2QzMmBdLFtgeDVgLGArLSB4MiB3ZDggMGBdLFtgeDZgLGArLSB4OSAwIHdkOGBdLFtgeDRgLGArLSB4NSAwIHdkMzJgXSxbYHg3YCxgKy0geDYgd2QzMiAwYF0sW2B5MWAsYCovIGggYTEgMjAwMDAwYF0sW2B5MmAsYCovIGggYTEgMTAwMDAwYF0sW2B5NGAsYCstIGIgMCB5MmBdLFtgeTNgLGAqLyB5NCAxIDJgXSxbYGhSYCxgKi8gaCBhMSA0MDAwMDBgXSxbYHk1YCxgKy0gYiAwIGhSYF0sW2B5NmAsYCstIHkyIDAgaFJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGB4NGAsYHRgXSxbYGFgLGB3ZDMyYCxgaFJgLGAzY2Q0YCxgY2QyYF0sW2BsYCxgeDNgLGB5MWBdLFtgYWAsYHdkMzJgLGBoUmAsYDNjZDRgLGAtMTA4MDAwMDBgXSxbYGxgLGB4OGAsYHkyYF0sW2BhYCxgd2QzMmAsYGhSYCxgY2Q0YCxgLTEwODAwMDAwYF0sW2BsYCxgeDdgLGB5MWBdLFtgYWAsYHdkMzJgLGBoUmAsYGNkNGAsYGNkMmBdLFtgbGAsYHJgLGB0YF0sW2BsYCxgeDEwYCxgeTNgXSxbYGxgLGByYCxgeTRgXSxbYGxgLGB4OWAsYHk0YF0sW2BsYCxgeDlgLGB5NWBdLFtgYWAsYHdkMzJgLGBoUmAsYDBgLGBjZDRgXSxbYGxgLGB4M2AsYGJgXSxbYGFgLGB3ZDMyYCxgaFJgLGBjZDRgLGBjZDRgXSxbYGxgLGB4MmAsYHk0YF0sW2BsYCxgbGAsYHk0YF0sW2BsYCxgd2Q4YCxgeTNgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YGRhcmtlbkxlc3NgLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4NWAsYGhSYF0sW2BhYCxgd2QzMmAsYGhSYCxgMGAsYGNkNGBdLFtgbGAsYHgzYCxgeTFgXSxbYGFgLGB3ZDMyYCxgaFJgLGAzY2Q0YCxgLTEwODAwMDAwYF0sW2BsYCxgeDVgLGB5MmBdLFtgY2BdLFtgbWAsYHg2YCxgaFJgXSxbYGFgLGB3ZDMyYCxgaFJgLGBjZDJgLGAtNTQwMDAwMGBdLFtgbGAsYHg4YCxgeTFgXSxbYGFgLGB3ZDMyYCxgaFJgLGAzY2Q0YCxgY2QyYF0sW2BsYCxgeDZgLGB5MmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgeDRgLGB0YF0sW2BhYCxgd2QzMmAsYGhSYCxgM2NkNGAsYGNkMmBdLFtgbGAsYHgzYCxgeTFgXSxbYGFgLGB3ZDMyYCxgaFJgLGAzY2Q0YCxgLTEwODAwMDAwYF0sW2BsYCxgeDhgLGB5MmBdLFtgYWAsYHdkMzJgLGBoUmAsYGNkNGAsYC0xMDgwMDAwMGBdLFtgbGAsYHg3YCxgeTFgXSxbYGFgLGB3ZDMyYCxgaFJgLGBjZDRgLGBjZDJgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHgxMGAsYHkzYF0sW2BsYCxgcmAsYHk0YF0sW2BsYCxgeDlgLGB5NGBdLFtgbGAsYHg5YCxgeTVgXSxbYGFgLGB3ZDMyYCxgaFJgLGAwYCxgY2Q0YF0sW2BsYCxgeDNgLGBiYF0sW2BhYCxgd2QzMmAsYGhSYCxgY2Q0YCxgY2Q0YF0sW2BsYCxgeDJgLGB5NGBdLFtgbGAsYGxgLGB5NGBdLFtgbGAsYHdkOGAsYHkzYF0sW2BjYF0sW2BtYCxgeDVgLGBoUmBdLFtgbGAsYHg1YCxgeTJgXSxbYG1gLGB4NmAsYHkyYF0sW2BsYCxgeDZgLGBoUmBdLFtgbWAsYHgyYCxgeTRgXSxbYGxgLGB4MmAsYHk2YF0sW2BtYCxgeDlgLGB5NmBdLFtgbGAsYHg5YCxgeTRgXV19XX0sbXA9e2FkajpbW2BhZGoxYCxgdmFsIDE2NjY3YF0sW2BhZGoyYCxgdmFsIDUwMDAwYF1dLGdkOltbYGExYCxgcGluIDAgYWRqMSAzMzMzM2BdLFtgYTJgLGBwaW4gMjUwMDAgYWRqMiA3NTAwMGBdLFtgeDEwYCxgKy0gciAwIHdkOGBdLFtgZHgyYCxgKi8gdyBhMiAyMDAwMDBgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHg5YCxgKy0gaGMgZHgyIDBgXSxbYHgzYCxgKy0geDIgd2QzMiAwYF0sW2B4OGAsYCstIHg5IDAgd2QzMmBdLFtgeDVgLGArLSB4MiB3ZDggMGBdLFtgeDZgLGArLSB4OSAwIHdkOGBdLFtgeDRgLGArLSB4NSAwIHdkMzJgXSxbYHg3YCxgKy0geDYgd2QzMiAwYF0sW2BkeTFgLGAqLyBoIGExIDIwMDAwMGBdLFtgeTFgLGArLSBiIDAgZHkxYF0sW2BkeTJgLGAqLyBoIGExIDEwMDAwMGBdLFtgeTJgLGArLSBiIDAgZHkyYF0sW2B5NGAsYCstIHQgZHkyIDBgXSxbYHkzYCxgKy8geTQgYiAyYF0sW2BoUmAsYCovIGggYTEgNDAwMDAwYF0sW2B5NmAsYCstIGIgMCBoUmBdLFtgeTdgLGArLSB5MSAwIGhSYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiExLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGBiYF0sW2BsYCxgeDRgLGBiYF0sW2BhYCxgd2QzMmAsYGhSYCxgY2Q0YCxgLTEwODAwMDAwYF0sW2BsYCxgeDNgLGB5MWBdLFtgYWAsYHdkMzJgLGBoUmAsYGNkNGAsYGNkMmBdLFtgbGAsYHg4YCxgeTJgXSxbYGFgLGB3ZDMyYCxgaFJgLGAzY2Q0YCxgY2QyYF0sW2BsYCxgeDdgLGB5MWBdLFtgYWAsYHdkMzJgLGBoUmAsYDNjZDRgLGAtMTA4MDAwMDBgXSxbYGxgLGByYCxgYmBdLFtgbGAsYHgxMGAsYHkzYF0sW2BsYCxgcmAsYHk0YF0sW2BsYCxgeDlgLGB5NGBdLFtgbGAsYHg5YCxgaFJgXSxbYGFgLGB3ZDMyYCxgaFJgLGAwYCxgLTU0MDAwMDBgXSxbYGxgLGB4M2AsYHRgXSxbYGFgLGB3ZDMyYCxgaFJgLGAzY2Q0YCxgLTU0MDAwMDBgXSxbYGxgLGB4MmAsYHk0YF0sW2BsYCxgbGAsYHk0YF0sW2BsYCxgd2Q4YCxgeTNgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YGRhcmtlbkxlc3NgLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4NWAsYHk2YF0sW2BhYCxgd2QzMmAsYGhSYCxgMGAsYC01NDAwMDAwYF0sW2BsYCxgeDNgLGB5MWBdLFtgYWAsYHdkMzJgLGBoUmAsYGNkNGAsYGNkMmBdLFtgbGAsYHg1YCxgeTJgXSxbYGNgXSxbYG1gLGB4NmAsYHk2YF0sW2BhYCxgd2QzMmAsYGhSYCxgY2QyYCxgY2Q0YF0sW2BsYCxgeDhgLGB5MWBdLFtgYWAsYHdkMzJgLGBoUmAsYGNkNGAsYC0xMDgwMDAwMGBdLFtgbGAsYHg2YCxgeTJgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgYmBdLFtgbGAsYHdkOGAsYHkzYF0sW2BsYCxgbGAsYHk0YF0sW2BsYCxgeDJgLGB5NGBdLFtgbGAsYHgyYCxgaFJgXSxbYGFgLGB3ZDMyYCxgaFJgLGBjZDJgLGBjZDRgXSxbYGxgLGB4OGAsYHRgXSxbYGFgLGB3ZDMyYCxgaFJgLGAzY2Q0YCxgY2Q0YF0sW2BsYCxgeDlgLGB5NGBdLFtgbGAsYHg5YCxgeTRgXSxbYGxgLGByYCxgeTRgXSxbYGxgLGB4MTBgLGB5M2BdLFtgbGAsYHJgLGBiYF0sW2BsYCxgeDdgLGBiYF0sW2BhYCxgd2QzMmAsYGhSYCxgY2Q0YCxgY2QyYF0sW2BsYCxgeDhgLGB5MWBdLFtgYWAsYHdkMzJgLGBoUmAsYGNkNGAsYC0xMDgwMDAwMGBdLFtgbGAsYHgzYCxgeTJgXSxbYGFgLGB3ZDMyYCxgaFJgLGAzY2Q0YCxgLTEwODAwMDAwYF0sW2BsYCxgeDRgLGB5MWBdLFtgYWAsYHdkMzJgLGBoUmAsYDNjZDRgLGBjZDJgXSxbYGNgXSxbYG1gLGB4NWAsYHkyYF0sW2BsYCxgeDVgLGB5NmBdLFtgbWAsYHg2YCxgeTZgXSxbYGxgLGB4NmAsYHkyYF0sW2BtYCxgeDJgLGB5N2BdLFtgbGAsYHgyYCxgeTRgXSxbYG1gLGB4OWAsYHk0YF0sW2BsYCxgeDlgLGB5N2BdXX1dfSxocD17YWRqOltbYGFkajFgLGB2YWwgNTAwMDBgXSxbYGFkajJgLGB2YWwgNTAwMDBgXV0sZ2Q6W1tgbWF4QWRqMmAsYCovIDEwMDAwMCB3IHNzYF0sW2BhMWAsYHBpbiAwIGFkajEgMTAwMDAwYF0sW2BhMmAsYHBpbiAwIGFkajIgbWF4QWRqMmBdLFtgZHgxYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2B4MWAsYCstIHIgMCBkeDFgXSxbYGR5MWAsYCovIGggYTEgMjAwMDAwYF0sW2B5MWAsYCstIHZjIDAgZHkxYF0sW2B5MmAsYCstIHZjIGR5MSAwYF0sW2BkeDJgLGAqLyB5MSBkeDEgaGQyYF0sW2B4MmAsYCstIHgxIGR4MiAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB5MWBdLFtgbGAsYHgxYCxgeTFgXSxbYGxgLGB4MWAsYHRgXSxbYGxgLGByYCxgdmNgXSxbYGxgLGB4MWAsYGJgXSxbYGxgLGB4MWAsYHkyYF0sW2BsYCxgbGAsYHkyYF0sW2BjYF1dfV19LGdwPXthZGo6W1tgYWRqMWAsYHZhbCAyNTAwMGBdLFtgYWRqMmAsYHZhbCAyNTAwMGBdLFtgYWRqM2AsYHZhbCAyNTAwMGBdLFtgYWRqNGAsYHZhbCA2NDk3N2BdXSxnZDpbW2BtYXhBZGoyYCxgKi8gNTAwMDAgaCBzc2BdLFtgYTJgLGBwaW4gMCBhZGoyIG1heEFkajJgXSxbYG1heEFkajFgLGAqLyBhMiAyIDFgXSxbYGExYCxgcGluIDAgYWRqMSBtYXhBZGoxYF0sW2BtYXhBZGozYCxgKi8gMTAwMDAwIHcgc3NgXSxbYGEzYCxgcGluIDAgYWRqMyBtYXhBZGozYF0sW2BxMmAsYCovIGEzIHNzIHdgXSxbYG1heEFkajRgLGArLSAxMDAwMDAgMCBxMmBdLFtgYTRgLGBwaW4gMCBhZGo0IG1heEFkajRgXSxbYGR5MWAsYCovIHNzIGEyIDEwMDAwMGBdLFtgZHkyYCxgKi8gc3MgYTEgMjAwMDAwYF0sW2B5MWAsYCstIHZjIDAgZHkxYF0sW2B5MmAsYCstIHZjIDAgZHkyYF0sW2B5M2AsYCstIHZjIGR5MiAwYF0sW2B5NGAsYCstIHZjIGR5MSAwYF0sW2BkeDNgLGAqLyBzcyBhMyAxMDAwMDBgXSxbYHgzYCxgKy0gciAwIGR4M2BdLFtgeDJgLGAqLyB3IGE0IDEwMDAwMGBdLFtgeDFgLGAqLyB4MiAxIDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGB4MmAsYHRgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDNgLGB5MmBdLFtgbGAsYHgzYCxgeTFgXSxbYGxgLGByYCxgdmNgXSxbYGxgLGB4M2AsYHk0YF0sW2BsYCxgeDNgLGB5M2BdLFtgbGAsYHgyYCxgeTNgXSxbYGxgLGB4MmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX1dfSxfcD17YWRqOltbYGFkajFgLGB2YWwgODMzM2BdLFtgYWRqMmAsYHZhbCA1MDAwMGBdXSxnZDpbW2BhMmAsYHBpbiAwIGFkajIgMTAwMDAwYF0sW2BxMWAsYCstIDEwMDAwMCAwIGEyYF0sW2BxMmAsYG1pbiBxMSBhMmBdLFtgcTNgLGAqLyBxMiAxIDJgXSxbYG1heEFkajFgLGAqLyBxMyBoIHNzYF0sW2BhMWAsYHBpbiAwIGFkajEgbWF4QWRqMWBdLFtgeTFgLGAqLyBzcyBhMSAxMDAwMDBgXSxbYHkzYCxgKi8gaCBhMiAxMDAwMDBgXSxbYHkyYCxgKy0geTMgMCB5MWBdLFtgeTRgLGArLSBiIDAgeTFgXSxbYGR4MWAsYGNvcyB3ZDIgMjcwMDAwMGBdLFtgZHkxYCxgc2luIHkxIDI3MDAwMDBgXSxbYGlyYCxgKy0gbCBkeDEgMGBdLFtgaXRgLGArLSB5MSAwIGR5MWBdLFtgaWJgLGArLSBiIGR5MSB5MWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgYWAsYHdkMmAsYHkxYCxgM2NkNGAsYGNkNGBdLFtgbGAsYGhjYCxgeTJgXSxbYGFgLGB3ZDJgLGB5MWAsYGNkMmAsYC01NDAwMDAwYF0sW2BhYCxgd2QyYCxgeTFgLGAzY2Q0YCxgLTU0MDAwMDBgXSxbYGxgLGBoY2AsYHk0YF0sW2BhYCxgd2QyYCxgeTFgLGAwYCxgY2Q0YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGFgLGB3ZDJgLGB5MWAsYDNjZDRgLGBjZDRgXSxbYGxgLGBoY2AsYHkyYF0sW2BhYCxgd2QyYCxgeTFgLGBjZDJgLGAtNTQwMDAwMGBdLFtgYWAsYHdkMmAsYHkxYCxgM2NkNGAsYC01NDAwMDAwYF0sW2BsYCxgaGNgLGB5NGBdLFtgYWAsYHdkMmAsYHkxYCxgMGAsYGNkNGBdXX1dfSx2cD17YWRqOltbYGFkamAsYHZhbCA4MzMzYF1dLGdkOltbYG1heEFkamAsYCovIDUwMDAwIGggc3NgXSxbYGFgLGBwaW4gMCBhZGogbWF4QWRqYF0sW2B5MWAsYCovIHNzIGEgMTAwMDAwYF0sW2B5MmAsYCstIGIgMCB5MWBdLFtgZHgxYCxgY29zIHcgMjcwMDAwMGBdLFtgZHkxYCxgc2luIHkxIDI3MDAwMDBgXSxbYGlyYCxgKy0gbCBkeDEgMGBdLFtgaXRgLGArLSB5MSAwIGR5MWBdLFtgaWJgLGArLSBiIGR5MSB5MWBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMSxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGBsYCxgdGBdLFtgYWAsYHdgLGB5MWAsYDNjZDRgLGBjZDRgXSxbYGxgLGByYCxgeTJgXSxbYGFgLGB3YCxgeTFgLGAwYCxgY2Q0YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBub25lYCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGFgLGB3YCxgeTFgLGAzY2Q0YCxgY2Q0YF0sW2BsYCxgcmAsYHkyYF0sW2BhYCxgd2AsYHkxYCxgMGAsYGNkNGBdXX1dfSx5cD17YWRqOltbYGFkamAsYHZhbCAxNjY2N2BdXSxnZDpbW2BhYCxgcGluIDAgYWRqIDUwMDAwYF0sW2BkeDFgLGAqLyBzcyBhIDEwMDAwMGBdLFtgeDFgLGArLSByIDAgZHgxYF0sW2BpZHhgLGAqLyBkeDEgMjkyODkgMTAwMDAwYF0sW2BpcmAsYCstIHIgMCBpZHhgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGB4MWAsYHRgXSxbYGFgLGBkeDFgLGBkeDFgLGAzY2Q0YCxgY2Q0YF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX1dfSxicD17YWRqOltbYGFkajFgLGB2YWwgMTY2NjdgXSxbYGFkajJgLGB2YWwgMGBdXSxnZDpbW2BhMWAsYHBpbiAwIGFkajEgNTAwMDBgXSxbYGEyYCxgcGluIDAgYWRqMiA1MDAwMGBdLFtgeDFgLGAqLyBzcyBhMSAxMDAwMDBgXSxbYHkxYCxgKy0gYiAwIHgxYF0sW2BhYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2B4MmAsYCstIHIgMCBhYF0sW2B5MmAsYCstIGIgMCBhYF0sW2BkeDFgLGAqLyB4MSAyOTI4OSAxMDAwMDBgXSxbYGR4MmAsYCovIGEgMjkyODkgMTAwMDAwYF0sW2BkYCxgKy0gZHgxIDAgZHgyYF0sW2BkeGAsYD86IGQgZHgxIGR4MmBdLFtgaXJgLGArLSByIDAgZHhgXSxbYGliYCxgKy0gYiAwIGR4YF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHgxYCxgdGBdLFtgbGAsYHgyYCxgdGBdLFtgYWAsYGFgLGBhYCxgM2NkNGAsYGNkNGBdLFtgbGAsYHJgLGB5MWBdLFtgYWAsYHgxYCxgeDFgLGAwYCxgY2Q0YF0sW2BsYCxgYWAsYGJgXSxbYGFgLGBhYCxgYWAsYGNkNGAsYGNkNGBdLFtgbGAsYGxgLGB4MWBdLFtgYWAsYHgxYCxgeDFgLGBjZDJgLGBjZDRgXSxbYGNgXV19XX0seHA9e2FkajpbW2BhZGoxYCxgdmFsIDE2NjY3YF0sW2BhZGoyYCxgdmFsIDBgXV0sZ2Q6W1tgYTFgLGBwaW4gMCBhZGoxIDUwMDAwYF0sW2BhMmAsYHBpbiAwIGFkajIgNTAwMDBgXSxbYHR4MWAsYCovIHNzIGExIDEwMDAwMGBdLFtgdHgyYCxgKy0gciAwIHR4MWBdLFtgYngxYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2BieDJgLGArLSByIDAgYngxYF0sW2BieTFgLGArLSBiIDAgYngxYF0sW2BkYCxgKy0gdHgxIDAgYngxYF0sW2B0ZHhgLGAqLyB0eDEgMjkyODkgMTAwMDAwYF0sW2BiZHhgLGAqLyBieDEgMjkyODkgMTAwMDAwYF0sW2BpbGAsYD86IGQgdGR4IGJkeGBdLFtgaXJgLGArLSByIDAgaWxgXSxbYGliYCxgKy0gYiAwIGJkeGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB0eDFgLGB0YF0sW2BsYCxgdHgyYCxgdGBdLFtgYWAsYHR4MWAsYHR4MWAsYDNjZDRgLGBjZDRgXSxbYGxgLGByYCxgYnkxYF0sW2BhYCxgYngxYCxgYngxYCxgMGAsYGNkNGBdLFtgbGAsYGJ4MWAsYGJgXSxbYGFgLGBieDFgLGBieDFgLGBjZDRgLGBjZDRgXSxbYGxgLGBsYCxgdHgxYF0sW2BhYCxgdHgxYCxgdHgxYCxgY2QyYCxgY2Q0YF0sW2BjYF1dfV19LFNwPXthZGo6W1tgYWRqYCxgdmFsIDE2NjY3YF1dLGdkOltbYGFgLGBwaW4gMCBhZGogNTAwMDBgXSxbYHgxYCxgKi8gc3MgYSAxMDAwMDBgXSxbYHgyYCxgKy0gciAwIHgxYF0sW2B5MmAsYCstIGIgMCB4MWBdLFtgaWxgLGAqLyB4MSAyOTI4OSAxMDAwMDBgXSxbYGlyYCxgKy0gciAwIGlsYF0sW2BpYmAsYCstIGIgMCBpbGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgeDFgXSxbYGFgLGB4MWAsYHgxYCxgY2QyYCxgY2Q0YF0sW2BsYCxgeDJgLGB0YF0sW2BhYCxgeDFgLGB4MWAsYDNjZDRgLGBjZDRgXSxbYGxgLGByYCxgeTJgXSxbYGFgLGB4MWAsYHgxYCxgMGAsYGNkNGBdLFtgbGAsYHgxYCxgYmBdLFtgYWAsYHgxYCxgeDFgLGBjZDRgLGBjZDRgXSxbYGNgXV19XX0sQ3A9e2FkajpbXSxnZDpbW2BpdGAsYCovIGggNyAxMmBdLFtgaXJgLGAqLyB3IDcgMTJgXSxbYGliYCxgKi8gaCAxMSAxMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgYmBdLFtgbGAsYGxgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGNgXV19XX0sd3A9e2FkajpbW2BhZGpgLGB2YWwgNDY1M2BdXSxnZDpbW2BhYCxgcGluIC00NjUzIGFkaiA0NjUzYF0sW2B4MWAsYCovIHcgNDk2OSAyMTY5OWBdLFtgeDJgLGAqLyB3IDYyMTUgMjE2MDBgXSxbYHgzYCxgKi8gdyAxMzEzNSAyMTYwMGBdLFtgeDRgLGAqLyB3IDE2NjQwIDIxNjAwYF0sW2B5MWAsYCovIGggNzU3MCAyMTYwMGBdLFtgeTNgLGAqLyBoIDE2NTE1IDIxNjAwYF0sW2BkeTJgLGAqLyBoIGEgMTAwMDAwYF0sW2B5MmAsYCstIHkzIDAgZHkyYF0sW2B5NGAsYCstIHkzIGR5MiAwYF0sW2BkeTNgLGAqLyBoIGEgNTAwMDBgXSxbYHk1YCxgKy0geTQgZHkzIDBgXSxbYGlkeGAsYGNvcyB3ZDIgMjcwMDAwMGBdLFtgaWR5YCxgc2luIGhkMiAyNzAwMDAwYF0sW2BpbGAsYCstIGhjIDAgaWR4YF0sW2BpcmAsYCstIGhjIGlkeCAwYF0sW2BpdGAsYCstIHZjIDAgaWR5YF0sW2BpYmAsYCstIHZjIGlkeSAwYF0sW2B3UmAsYCovIHcgMTEyNSAyMTYwMGBdLFtgaFJgLGAqLyBoIDExMjUgMjE2MDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgbGAsYHZjYF0sW2BhYCxgd2QyYCxgaGQyYCxgY2QyYCxgMjE2MDAwMDBgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6YGRhcmtlbkxlc3NgLHN0cm9rZTohMCxleHRydXNpb25PazohMSxjbWRzOltbYG1gLGB4MmAsYHkxYF0sW2BhYCxgd1JgLGBoUmAsYGNkMmAsYDIxNjAwMDAwYF0sW2BtYCxgeDNgLGB5MWBdLFtgYWAsYHdSYCxgaFJgLGBjZDJgLGAyMTYwMDAwMGBdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYHgxYCxgeTJgXSxbYFFgLGBoY2AsYHk1YCxgeDRgLGB5MmBdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB2Y2BdLFtgYWAsYHdkMmAsYGhkMmAsYGNkMmAsYDIxNjAwMDAwYF0sW2BjYF1dfV19LFRwPXthZGo6W1tgYWRqYCxgdmFsIDE2NjY3YF1dLGdkOltbYGFgLGBwaW4gMCBhZGogNTAwMDBgXSxbYGR4MWAsYCovIHNzIGEgMTAwMDAwYF0sW2B4MWAsYCstIHIgMCBkeDFgXSxbYGl0YCxgKi8gZHgxIDEgMmBdLFtgaXJgLGArLyB4MSByIDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGB4MWAsYHRgXSxbYGxgLGByYCxgZHgxYF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX1dfSxFcD17YWRqOltbYGFkajFgLGB2YWwgMGBdLFtgYWRqMmAsYHZhbCAxNjY2N2BdXSxnZDpbW2BhMWAsYHBpbiAwIGFkajEgNTAwMDBgXSxbYGEyYCxgcGluIDAgYWRqMiA1MDAwMGBdLFtgbHgxYCxgKi8gc3MgYTEgMTAwMDAwYF0sW2BseDJgLGArLSByIDAgbHgxYF0sW2BseTFgLGArLSBiIDAgbHgxYF0sW2ByeDFgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYHJ4MmAsYCstIHIgMCByeDFgXSxbYHJ5MWAsYCstIGIgMCByeDFgXSxbYGRgLGArLSBseDEgMCByeDFgXSxbYGR4YCxgPzogZCBseDEgcngxYF0sW2BpbGAsYCovIGR4IDEgMmBdLFtgaXJgLGArLSByIDAgaWxgXSxbYGliYCxgKy0gYiAwIGlsYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGx4MWAsYHRgXSxbYGxgLGByeDJgLGB0YF0sW2BsYCxgcmAsYHJ4MWBdLFtgbGAsYHJgLGBseTFgXSxbYGxgLGBseDJgLGBiYF0sW2BsYCxgcngxYCxgYmBdLFtgbGAsYGxgLGByeTFgXSxbYGxgLGBsYCxgbHgxYF0sW2BjYF1dfV19LERwPXthZGo6W1tgYWRqMWAsYHZhbCAxNjY2N2BdLFtgYWRqMmAsYHZhbCAwYF1dLGdkOltbYGExYCxgcGluIDAgYWRqMSA1MDAwMGBdLFtgYTJgLGBwaW4gMCBhZGoyIDUwMDAwYF0sW2B0eDFgLGAqLyBzcyBhMSAxMDAwMDBgXSxbYHR4MmAsYCstIHIgMCB0eDFgXSxbYGJ4MWAsYCovIHNzIGEyIDEwMDAwMGBdLFtgYngyYCxgKy0gciAwIGJ4MWBdLFtgYnkxYCxgKy0gYiAwIGJ4MWBdLFtgZGAsYCstIHR4MSAwIGJ4MWBdLFtgZHhgLGA/OiBkIHR4MSBieDFgXSxbYGlsYCxgKi8gZHggMSAyYF0sW2BpcmAsYCstIHIgMCBpbGBdLFtgaXRgLGAqLyB0eDEgMSAyYF0sW2BpYmAsYCsvIGJ5MSBiIDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgdHgxYCxgdGBdLFtgbGAsYHR4MmAsYHRgXSxbYGxgLGByYCxgdHgxYF0sW2BsYCxgcmAsYGJ5MWBdLFtgbGAsYGJ4MmAsYGJgXSxbYGxgLGBieDFgLGBiYF0sW2BsYCxgbGAsYGJ5MWBdLFtgbGAsYGxgLGB0eDFgXSxbYGNgXV19XX0sT3A9e2FkajpbW2BhZGoxYCxgdmFsIDE2NjY3YF0sW2BhZGoyYCxgdmFsIDE2NjY3YF1dLGdkOltbYGExYCxgcGluIDAgYWRqMSA1MDAwMGBdLFtgYTJgLGBwaW4gMCBhZGoyIDUwMDAwYF0sW2B4MWAsYCovIHNzIGExIDEwMDAwMGBdLFtgZHgyYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2B4MmAsYCstIHIgMCBkeDJgXSxbYGlsYCxgKi8geDEgMjkyODkgMTAwMDAwYF0sW2BpcmAsYCsvIHgyIHIgMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4MWAsYHRgXSxbYGxgLGB4MmAsYHRgXSxbYGxgLGByYCxgZHgyYF0sW2BsYCxgcmAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgbGAsYGxgLGB4MWBdLFtgYWAsYHgxYCxgeDFgLGBjZDJgLGBjZDRgXSxbYGNgXV19XX0sa3A9e2FkajpbXSxnZDpbW2BtZGAsYG1vZCB3IGggMGBdLFtgZHhgLGAqLyAxIG1kIDIwYF0sW2B5MWAsYCstIDAgYiBkeGBdLFtgeDFgLGArLSAwIHIgZHhgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGBkeGAsYHRgXSxbYGxgLGBkeGAsYGR4YF0sW2BsYCxgbGAsYGR4YF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB5MWBdLFtgbGAsYGR4YCxgeTFgXSxbYGxgLGBkeGAsYGJgXSxbYGxgLGBsYCxgYmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4MWAsYHRgXSxbYGxgLGByYCxgdGBdLFtgbGAsYHJgLGBkeGBdLFtgbGAsYHgxYCxgZHhgXSxbYGNgXV19LHt3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeDFgLGB5MWBdLFtgbGAsYHJgLGB5MWBdLFtgbGAsYHJgLGBiYF0sW2BsYCxgeDFgLGBiYF0sW2BjYF1dfV19LEFwPXthZGo6W1tgYWRqYCxgdmFsIDQyNTMzYF0sW2BoZmAsYHZhbCAxMDUxNDZgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiA1MDAwMGBdLFtgc3dkMmAsYCovIHdkMiBoZiAxMDAwMDBgXSxbYGR4MWAsYCovIHN3ZDIgOTUxMDYgMTAwMDAwYF0sW2BkeDJgLGAqLyBzd2QyIDU4Nzc5IDEwMDAwMGBdLFtgeDFgLGArLSBoYyAwIGR4MWBdLFtgeDJgLGArLSBoYyAwIGR4MmBdLFtgeDNgLGArLSBoYyBkeDIgMGBdLFtgeDRgLGArLSBoYyBkeDEgMGBdLFtgZHkxYCxgKi8gaGQyIDgwOTAyIDEwMDAwMGBdLFtgZHkyYCxgKi8gaGQyIDMwOTAyIDEwMDAwMGBdLFtgeTFgLGArLSB2YyAwIGR5MWBdLFtgeTJgLGArLSB2YyAwIGR5MmBdLFtgeTNgLGArLSB2YyBkeTIgMGBdLFtgeTRgLGArLSB2YyBkeTEgMGBdLFtgaXdkMmAsYCovIHN3ZDIgYSA1MDAwMGBdLFtgaWhkMmAsYCovIGhkMiBhIDUwMDAwYF0sW2BzZHgxYCxgKi8gaXdkMiA4MDkwMiAxMDAwMDBgXSxbYHNkeDJgLGAqLyBpd2QyIDMwOTAyIDEwMDAwMGBdLFtgc2R5MWAsYCovIGloZDIgOTUxMDYgMTAwMDAwYF0sW2BzZHkyYCxgKi8gaWhkMiA1ODc3OSAxMDAwMDBgXSxbYHN4MWAsYCstIGhjIDAgaXdkMmBdLFtgc3gyYCxgKy0gaGMgMCBzZHgxYF0sW2BzeDNgLGArLSBoYyAwIHNkeDJgXSxbYHN4NGAsYCstIGhjIHNkeDIgMGBdLFtgc3g1YCxgKy0gaGMgc2R4MSAwYF0sW2BzeDZgLGArLSBoYyBpd2QyIDBgXSxbYHN5MWAsYCstIHZjIDAgc2R5MWBdLFtgc3kyYCxgKy0gdmMgMCBzZHkyYF0sW2BzeTNgLGArLSB2YyBzZHkyIDBgXSxbYHN5NGAsYCstIHZjIHNkeTEgMGBdLFtgeUFkamAsYCstIHZjIDAgaWhkMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4MWAsYHkyYF0sW2BsYCxgc3gyYCxgc3kyYF0sW2BsYCxgeDJgLGB5MWBdLFtgbGAsYHN4M2AsYHN5MWBdLFtgbGAsYGhjYCxgdGBdLFtgbGAsYHN4NGAsYHN5MWBdLFtgbGAsYHgzYCxgeTFgXSxbYGxgLGBzeDVgLGBzeTJgXSxbYGxgLGB4NGAsYHkyYF0sW2BsYCxgc3g2YCxgdmNgXSxbYGxgLGB4NGAsYHkzYF0sW2BsYCxgc3g1YCxgc3kzYF0sW2BsYCxgeDNgLGB5NGBdLFtgbGAsYHN4NGAsYHN5NGBdLFtgbGAsYGhjYCxgYmBdLFtgbGAsYHN4M2AsYHN5NGBdLFtgbGAsYHgyYCxgeTRgXSxbYGxgLGBzeDJgLGBzeTNgXSxbYGxgLGB4MWAsYHkzYF0sW2BsYCxgc3gxYCxgdmNgXSxbYGNgXV19XX0sanA9e2FkajpbW2BhZGpgLGB2YWwgMzc1MDBgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiA1MDAwMGBdLFtgZHgxYCxgY29zIHdkMiAxODAwMDAwYF0sW2BkeTFgLGBzaW4gaGQyIDM2MDAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgzYCxgKi8gdyAzIDRgXSxbYHg0YCxgKy0gaGMgZHgxIDBgXSxbYHkxYCxgKy0gdmMgMCBkeTFgXSxbYHkzYCxgKi8gaCAzIDRgXSxbYHk0YCxgKy0gdmMgZHkxIDBgXSxbYGl3ZDJgLGAqLyB3ZDIgYSA1MDAwMGBdLFtgaWhkMmAsYCovIGhkMiBhIDUwMDAwYF0sW2BzZHgxYCxgY29zIGl3ZDIgOTAwMDAwYF0sW2BzZHgyYCxgY29zIGl3ZDIgMjcwMDAwMGBdLFtgc2R4M2AsYGNvcyBpd2QyIDQ1MDAwMDBgXSxbYHNkeTFgLGBzaW4gaWhkMiA0NTAwMDAwYF0sW2BzZHkyYCxgc2luIGloZDIgMjcwMDAwMGBdLFtgc2R5M2AsYHNpbiBpaGQyIDkwMDAwMGBdLFtgc3gxYCxgKy0gaGMgMCBzZHgxYF0sW2BzeDJgLGArLSBoYyAwIHNkeDJgXSxbYHN4M2AsYCstIGhjIDAgc2R4M2BdLFtgc3g0YCxgKy0gaGMgc2R4MyAwYF0sW2BzeDVgLGArLSBoYyBzZHgyIDBgXSxbYHN4NmAsYCstIGhjIHNkeDEgMGBdLFtgc3kxYCxgKy0gdmMgMCBzZHkxYF0sW2BzeTJgLGArLSB2YyAwIHNkeTJgXSxbYHN5M2AsYCstIHZjIDAgc2R5M2BdLFtgc3k0YCxgKy0gdmMgc2R5MyAwYF0sW2BzeTVgLGArLSB2YyBzZHkyIDBgXSxbYHN5NmAsYCstIHZjIHNkeTEgMGBdLFtgeUFkamAsYCstIHZjIDAgaWhkMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdmNgXSxbYGxgLGBzeDFgLGBzeTNgXSxbYGxgLGB4MWAsYGhkNGBdLFtgbGAsYHN4MmAsYHN5MmBdLFtgbGAsYHdkNGAsYHkxYF0sW2BsYCxgc3gzYCxgc3kxYF0sW2BsYCxgaGNgLGB0YF0sW2BsYCxgc3g0YCxgc3kxYF0sW2BsYCxgeDNgLGB5MWBdLFtgbGAsYHN4NWAsYHN5MmBdLFtgbGAsYHg0YCxgaGQ0YF0sW2BsYCxgc3g2YCxgc3kzYF0sW2BsYCxgcmAsYHZjYF0sW2BsYCxgc3g2YCxgc3k0YF0sW2BsYCxgeDRgLGB5M2BdLFtgbGAsYHN4NWAsYHN5NWBdLFtgbGAsYHgzYCxgeTRgXSxbYGxgLGBzeDRgLGBzeTZgXSxbYGxgLGBoY2AsYGJgXSxbYGxgLGBzeDNgLGBzeTZgXSxbYGxgLGB3ZDRgLGB5NGBdLFtgbGAsYHN4MmAsYHN5NWBdLFtgbGAsYHgxYCxgeTNgXSxbYGxgLGBzeDFgLGBzeTRgXSxbYGNgXV19XX0sTXA9e2FkajpbW2BhZGpgLGB2YWwgMzc1MDBgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiA1MDAwMGBdLFtgZHgxYCxgKi8gd2QyIDkyMzg4IDEwMDAwMGBdLFtgZHgyYCxgKi8gd2QyIDcwNzExIDEwMDAwMGBdLFtgZHgzYCxgKi8gd2QyIDM4MjY4IDEwMDAwMGBdLFtgZHkxYCxgKi8gaGQyIDkyMzg4IDEwMDAwMGBdLFtgZHkyYCxgKi8gaGQyIDcwNzExIDEwMDAwMGBdLFtgZHkzYCxgKi8gaGQyIDM4MjY4IDEwMDAwMGBdLFtgeDFgLGArLSBoYyAwIGR4MWBdLFtgeDJgLGArLSBoYyAwIGR4MmBdLFtgeDNgLGArLSBoYyAwIGR4M2BdLFtgeDRgLGArLSBoYyBkeDMgMGBdLFtgeDVgLGArLSBoYyBkeDIgMGBdLFtgeDZgLGArLSBoYyBkeDEgMGBdLFtgeTFgLGArLSB2YyAwIGR5MWBdLFtgeTJgLGArLSB2YyAwIGR5MmBdLFtgeTNgLGArLSB2YyAwIGR5M2BdLFtgeTRgLGArLSB2YyBkeTMgMGBdLFtgeTVgLGArLSB2YyBkeTIgMGBdLFtgeTZgLGArLSB2YyBkeTEgMGBdLFtgaXdkMmAsYCovIHdkMiBhIDUwMDAwYF0sW2BpaGQyYCxgKi8gaGQyIGEgNTAwMDBgXSxbYHNkeDFgLGAqLyBpd2QyIDk4MDc5IDEwMDAwMGBdLFtgc2R4MmAsYCovIGl3ZDIgODMxNDcgMTAwMDAwYF0sW2BzZHgzYCxgKi8gaXdkMiA1NTU1NyAxMDAwMDBgXSxbYHNkeDRgLGAqLyBpd2QyIDE5NTA5IDEwMDAwMGBdLFtgc2R5MWAsYCovIGloZDIgOTgwNzkgMTAwMDAwYF0sW2BzZHkyYCxgKi8gaWhkMiA4MzE0NyAxMDAwMDBgXSxbYHNkeTNgLGAqLyBpaGQyIDU1NTU3IDEwMDAwMGBdLFtgc2R5NGAsYCovIGloZDIgMTk1MDkgMTAwMDAwYF0sW2BzeDFgLGArLSBoYyAwIHNkeDFgXSxbYHN4MmAsYCstIGhjIDAgc2R4MmBdLFtgc3gzYCxgKy0gaGMgMCBzZHgzYF0sW2BzeDRgLGArLSBoYyAwIHNkeDRgXSxbYHN4NWAsYCstIGhjIHNkeDQgMGBdLFtgc3g2YCxgKy0gaGMgc2R4MyAwYF0sW2BzeDdgLGArLSBoYyBzZHgyIDBgXSxbYHN4OGAsYCstIGhjIHNkeDEgMGBdLFtgc3kxYCxgKy0gdmMgMCBzZHkxYF0sW2BzeTJgLGArLSB2YyAwIHNkeTJgXSxbYHN5M2AsYCstIHZjIDAgc2R5M2BdLFtgc3k0YCxgKy0gdmMgMCBzZHk0YF0sW2BzeTVgLGArLSB2YyBzZHk0IDBgXSxbYHN5NmAsYCstIHZjIHNkeTMgMGBdLFtgc3k3YCxgKy0gdmMgc2R5MiAwYF0sW2BzeThgLGArLSB2YyBzZHkxIDBgXSxbYGlkeGAsYGNvcyBpd2QyIDI3MDAwMDBgXSxbYGlkeWAsYHNpbiBpaGQyIDI3MDAwMDBgXSxbYGlsYCxgKy0gaGMgMCBpZHhgXSxbYGl0YCxgKy0gdmMgMCBpZHlgXSxbYGlyYCxgKy0gaGMgaWR4IDBgXSxbYGliYCxgKy0gdmMgaWR5IDBgXSxbYHlBZGpgLGArLSB2YyAwIGloZDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHZjYF0sW2BsYCxgc3gxYCxgc3k0YF0sW2BsYCxgeDFgLGB5M2BdLFtgbGAsYHN4MmAsYHN5M2BdLFtgbGAsYHgyYCxgeTJgXSxbYGxgLGBzeDNgLGBzeTJgXSxbYGxgLGB4M2AsYHkxYF0sW2BsYCxgc3g0YCxgc3kxYF0sW2BsYCxgaGNgLGB0YF0sW2BsYCxgc3g1YCxgc3kxYF0sW2BsYCxgeDRgLGB5MWBdLFtgbGAsYHN4NmAsYHN5MmBdLFtgbGAsYHg1YCxgeTJgXSxbYGxgLGBzeDdgLGBzeTNgXSxbYGxgLGB4NmAsYHkzYF0sW2BsYCxgc3g4YCxgc3k0YF0sW2BsYCxgcmAsYHZjYF0sW2BsYCxgc3g4YCxgc3k1YF0sW2BsYCxgeDZgLGB5NGBdLFtgbGAsYHN4N2AsYHN5NmBdLFtgbGAsYHg1YCxgeTVgXSxbYGxgLGBzeDZgLGBzeTdgXSxbYGxgLGB4NGAsYHk2YF0sW2BsYCxgc3g1YCxgc3k4YF0sW2BsYCxgaGNgLGBiYF0sW2BsYCxgc3g0YCxgc3k4YF0sW2BsYCxgeDNgLGB5NmBdLFtgbGAsYHN4M2AsYHN5N2BdLFtgbGAsYHgyYCxgeTVgXSxbYGxgLGBzeDJgLGBzeTZgXSxbYGxgLGB4MWAsYHk0YF0sW2BsYCxgc3gxYCxgc3k1YF0sW2BjYF1dfV19LE5wPXthZGo6W1tgYWRqYCxgdmFsIDM3NTAwYF1dLGdkOltbYGFgLGBwaW4gMCBhZGogNTAwMDBgXSxbYGR4MWAsYGNvcyB3ZDIgOTAwMDAwYF0sW2BkeDJgLGBjb3Mgd2QyIDE4MDAwMDBgXSxbYGR4M2AsYGNvcyB3ZDIgMjcwMDAwMGBdLFtgZHg0YCxgdmFsIHdkNGBdLFtgZHg1YCxgY29zIHdkMiA0NTAwMDAwYF0sW2BkeTFgLGBzaW4gaGQyIDQ1MDAwMDBgXSxbYGR5MmAsYHNpbiBoZDIgMzYwMDAwMGBdLFtgZHkzYCxgc2luIGhkMiAyNzAwMDAwYF0sW2BkeTRgLGB2YWwgaGQ0YF0sW2BkeTVgLGBzaW4gaGQyIDkwMDAwMGBdLFtgeDFgLGArLSBoYyAwIGR4MWBdLFtgeDJgLGArLSBoYyAwIGR4MmBdLFtgeDNgLGArLSBoYyAwIGR4M2BdLFtgeDRgLGArLSBoYyAwIGR4NGBdLFtgeDVgLGArLSBoYyAwIGR4NWBdLFtgeDZgLGArLSBoYyBkeDUgMGBdLFtgeDdgLGArLSBoYyBkeDQgMGBdLFtgeDhgLGArLSBoYyBkeDMgMGBdLFtgeDlgLGArLSBoYyBkeDIgMGBdLFtgeDEwYCxgKy0gaGMgZHgxIDBgXSxbYHkxYCxgKy0gdmMgMCBkeTFgXSxbYHkyYCxgKy0gdmMgMCBkeTJgXSxbYHkzYCxgKy0gdmMgMCBkeTNgXSxbYHk0YCxgKy0gdmMgMCBkeTRgXSxbYHk1YCxgKy0gdmMgMCBkeTVgXSxbYHk2YCxgKy0gdmMgZHk1IDBgXSxbYHk3YCxgKy0gdmMgZHk0IDBgXSxbYHk4YCxgKy0gdmMgZHkzIDBgXSxbYHk5YCxgKy0gdmMgZHkyIDBgXSxbYHkxMGAsYCstIHZjIGR5MSAwYF0sW2Bpd2QyYCxgKi8gd2QyIGEgNTAwMDBgXSxbYGloZDJgLGAqLyBoZDIgYSA1MDAwMGBdLFtgc2R4MWAsYCovIGl3ZDIgOTkxNDQgMTAwMDAwYF0sW2BzZHgyYCxgKi8gaXdkMiA5MjM4OCAxMDAwMDBgXSxbYHNkeDNgLGAqLyBpd2QyIDc5MzM1IDEwMDAwMGBdLFtgc2R4NGAsYCovIGl3ZDIgNjA4NzYgMTAwMDAwYF0sW2BzZHg1YCxgKi8gaXdkMiAzODI2OCAxMDAwMDBgXSxbYHNkeDZgLGAqLyBpd2QyIDEzMDUzIDEwMDAwMGBdLFtgc2R5MWAsYCovIGloZDIgOTkxNDQgMTAwMDAwYF0sW2BzZHkyYCxgKi8gaWhkMiA5MjM4OCAxMDAwMDBgXSxbYHNkeTNgLGAqLyBpaGQyIDc5MzM1IDEwMDAwMGBdLFtgc2R5NGAsYCovIGloZDIgNjA4NzYgMTAwMDAwYF0sW2BzZHk1YCxgKi8gaWhkMiAzODI2OCAxMDAwMDBgXSxbYHNkeTZgLGAqLyBpaGQyIDEzMDUzIDEwMDAwMGBdLFtgc3gxYCxgKy0gaGMgMCBzZHgxYF0sW2BzeDJgLGArLSBoYyAwIHNkeDJgXSxbYHN4M2AsYCstIGhjIDAgc2R4M2BdLFtgc3g0YCxgKy0gaGMgMCBzZHg0YF0sW2BzeDVgLGArLSBoYyAwIHNkeDVgXSxbYHN4NmAsYCstIGhjIDAgc2R4NmBdLFtgc3g3YCxgKy0gaGMgc2R4NiAwYF0sW2BzeDhgLGArLSBoYyBzZHg1IDBgXSxbYHN4OWAsYCstIGhjIHNkeDQgMGBdLFtgc3gxMGAsYCstIGhjIHNkeDMgMGBdLFtgc3gxMWAsYCstIGhjIHNkeDIgMGBdLFtgc3gxMmAsYCstIGhjIHNkeDEgMGBdLFtgc3kxYCxgKy0gdmMgMCBzZHkxYF0sW2BzeTJgLGArLSB2YyAwIHNkeTJgXSxbYHN5M2AsYCstIHZjIDAgc2R5M2BdLFtgc3k0YCxgKy0gdmMgMCBzZHk0YF0sW2BzeTVgLGArLSB2YyAwIHNkeTVgXSxbYHN5NmAsYCstIHZjIDAgc2R5NmBdLFtgc3k3YCxgKy0gdmMgc2R5NiAwYF0sW2BzeThgLGArLSB2YyBzZHk1IDBgXSxbYHN5OWAsYCstIHZjIHNkeTQgMGBdLFtgc3kxMGAsYCstIHZjIHNkeTMgMGBdLFtgc3kxMWAsYCstIHZjIHNkeTIgMGBdLFtgc3kxMmAsYCstIHZjIHNkeTEgMGBdLFtgaWR4YCxgY29zIGl3ZDIgMjcwMDAwMGBdLFtgaWR5YCxgc2luIGloZDIgMjcwMDAwMGBdLFtgaWxgLGArLSBoYyAwIGlkeGBdLFtgaXRgLGArLSB2YyAwIGlkeWBdLFtgaXJgLGArLSBoYyBpZHggMGBdLFtgaWJgLGArLSB2YyBpZHkgMGBdLFtgeUFkamAsYCstIHZjIDAgaWhkMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdmNgXSxbYGxgLGBzeDFgLGBzeTZgXSxbYGxgLGB4MWAsYHk1YF0sW2BsYCxgc3gyYCxgc3k1YF0sW2BsYCxgeDJgLGB5NGBdLFtgbGAsYHN4M2AsYHN5NGBdLFtgbGAsYHgzYCxgeTNgXSxbYGxgLGBzeDRgLGBzeTNgXSxbYGxgLGB4NGAsYHkyYF0sW2BsYCxgc3g1YCxgc3kyYF0sW2BsYCxgeDVgLGB5MWBdLFtgbGAsYHN4NmAsYHN5MWBdLFtgbGAsYGhjYCxgdGBdLFtgbGAsYHN4N2AsYHN5MWBdLFtgbGAsYHg2YCxgeTFgXSxbYGxgLGBzeDhgLGBzeTJgXSxbYGxgLGB4N2AsYHkyYF0sW2BsYCxgc3g5YCxgc3kzYF0sW2BsYCxgeDhgLGB5M2BdLFtgbGAsYHN4MTBgLGBzeTRgXSxbYGxgLGB4OWAsYHk0YF0sW2BsYCxgc3gxMWAsYHN5NWBdLFtgbGAsYHgxMGAsYHk1YF0sW2BsYCxgc3gxMmAsYHN5NmBdLFtgbGAsYHJgLGB2Y2BdLFtgbGAsYHN4MTJgLGBzeTdgXSxbYGxgLGB4MTBgLGB5NmBdLFtgbGAsYHN4MTFgLGBzeThgXSxbYGxgLGB4OWAsYHk3YF0sW2BsYCxgc3gxMGAsYHN5OWBdLFtgbGAsYHg4YCxgeThgXSxbYGxgLGBzeDlgLGBzeTEwYF0sW2BsYCxgeDdgLGB5OWBdLFtgbGAsYHN4OGAsYHN5MTFgXSxbYGxgLGB4NmAsYHkxMGBdLFtgbGAsYHN4N2AsYHN5MTJgXSxbYGxgLGBoY2AsYGJgXSxbYGxgLGBzeDZgLGBzeTEyYF0sW2BsYCxgeDVgLGB5MTBgXSxbYGxgLGBzeDVgLGBzeTExYF0sW2BsYCxgeDRgLGB5OWBdLFtgbGAsYHN4NGAsYHN5MTBgXSxbYGxgLGB4M2AsYHk4YF0sW2BsYCxgc3gzYCxgc3k5YF0sW2BsYCxgeDJgLGB5N2BdLFtgbGAsYHN4MmAsYHN5OGBdLFtgbGAsYHgxYCxgeTZgXSxbYGxgLGBzeDFgLGBzeTdgXSxbYGNgXV19XX0sUHA9e2FkajpbW2BhZGpgLGB2YWwgMzc1MDBgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiA1MDAwMGBdLFtgZHgxYCxgKi8gd2QyIDk4MDc5IDEwMDAwMGBdLFtgZHgyYCxgKi8gd2QyIDkyMzg4IDEwMDAwMGBdLFtgZHgzYCxgKi8gd2QyIDgzMTQ3IDEwMDAwMGBdLFtgZHg0YCxgY29zIHdkMiAyNzAwMDAwYF0sW2BkeDVgLGAqLyB3ZDIgNTU1NTcgMTAwMDAwYF0sW2BkeDZgLGAqLyB3ZDIgMzgyNjggMTAwMDAwYF0sW2BkeDdgLGAqLyB3ZDIgMTk1MDkgMTAwMDAwYF0sW2BkeTFgLGAqLyBoZDIgOTgwNzkgMTAwMDAwYF0sW2BkeTJgLGAqLyBoZDIgOTIzODggMTAwMDAwYF0sW2BkeTNgLGAqLyBoZDIgODMxNDcgMTAwMDAwYF0sW2BkeTRgLGBzaW4gaGQyIDI3MDAwMDBgXSxbYGR5NWAsYCovIGhkMiA1NTU1NyAxMDAwMDBgXSxbYGR5NmAsYCovIGhkMiAzODI2OCAxMDAwMDBgXSxbYGR5N2AsYCovIGhkMiAxOTUwOSAxMDAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHgzYCxgKy0gaGMgMCBkeDNgXSxbYHg0YCxgKy0gaGMgMCBkeDRgXSxbYHg1YCxgKy0gaGMgMCBkeDVgXSxbYHg2YCxgKy0gaGMgMCBkeDZgXSxbYHg3YCxgKy0gaGMgMCBkeDdgXSxbYHg4YCxgKy0gaGMgZHg3IDBgXSxbYHg5YCxgKy0gaGMgZHg2IDBgXSxbYHgxMGAsYCstIGhjIGR4NSAwYF0sW2B4MTFgLGArLSBoYyBkeDQgMGBdLFtgeDEyYCxgKy0gaGMgZHgzIDBgXSxbYHgxM2AsYCstIGhjIGR4MiAwYF0sW2B4MTRgLGArLSBoYyBkeDEgMGBdLFtgeTFgLGArLSB2YyAwIGR5MWBdLFtgeTJgLGArLSB2YyAwIGR5MmBdLFtgeTNgLGArLSB2YyAwIGR5M2BdLFtgeTRgLGArLSB2YyAwIGR5NGBdLFtgeTVgLGArLSB2YyAwIGR5NWBdLFtgeTZgLGArLSB2YyAwIGR5NmBdLFtgeTdgLGArLSB2YyAwIGR5N2BdLFtgeThgLGArLSB2YyBkeTcgMGBdLFtgeTlgLGArLSB2YyBkeTYgMGBdLFtgeTEwYCxgKy0gdmMgZHk1IDBgXSxbYHkxMWAsYCstIHZjIGR5NCAwYF0sW2B5MTJgLGArLSB2YyBkeTMgMGBdLFtgeTEzYCxgKy0gdmMgZHkyIDBgXSxbYHkxNGAsYCstIHZjIGR5MSAwYF0sW2Bpd2QyYCxgKi8gd2QyIGEgNTAwMDBgXSxbYGloZDJgLGAqLyBoZDIgYSA1MDAwMGBdLFtgc2R4MWAsYCovIGl3ZDIgOTk1MTggMTAwMDAwYF0sW2BzZHgyYCxgKi8gaXdkMiA5NTY5NCAxMDAwMDBgXSxbYHNkeDNgLGAqLyBpd2QyIDg4MTkyIDEwMDAwMGBdLFtgc2R4NGAsYCovIGl3ZDIgNzczMDEgMTAwMDAwYF0sW2BzZHg1YCxgKi8gaXdkMiA2MzQzOSAxMDAwMDBgXSxbYHNkeDZgLGAqLyBpd2QyIDQ3MTQwIDEwMDAwMGBdLFtgc2R4N2AsYCovIGl3ZDIgMjkwMjggMTAwMDAwYF0sW2BzZHg4YCxgKi8gaXdkMiA5ODAyIDEwMDAwMGBdLFtgc2R5MWAsYCovIGloZDIgOTk1MTggMTAwMDAwYF0sW2BzZHkyYCxgKi8gaWhkMiA5NTY5NCAxMDAwMDBgXSxbYHNkeTNgLGAqLyBpaGQyIDg4MTkyIDEwMDAwMGBdLFtgc2R5NGAsYCovIGloZDIgNzczMDEgMTAwMDAwYF0sW2BzZHk1YCxgKi8gaWhkMiA2MzQzOSAxMDAwMDBgXSxbYHNkeTZgLGAqLyBpaGQyIDQ3MTQwIDEwMDAwMGBdLFtgc2R5N2AsYCovIGloZDIgMjkwMjggMTAwMDAwYF0sW2BzZHk4YCxgKi8gaWhkMiA5ODAyIDEwMDAwMGBdLFtgc3gxYCxgKy0gaGMgMCBzZHgxYF0sW2BzeDJgLGArLSBoYyAwIHNkeDJgXSxbYHN4M2AsYCstIGhjIDAgc2R4M2BdLFtgc3g0YCxgKy0gaGMgMCBzZHg0YF0sW2BzeDVgLGArLSBoYyAwIHNkeDVgXSxbYHN4NmAsYCstIGhjIDAgc2R4NmBdLFtgc3g3YCxgKy0gaGMgMCBzZHg3YF0sW2BzeDhgLGArLSBoYyAwIHNkeDhgXSxbYHN4OWAsYCstIGhjIHNkeDggMGBdLFtgc3gxMGAsYCstIGhjIHNkeDcgMGBdLFtgc3gxMWAsYCstIGhjIHNkeDYgMGBdLFtgc3gxMmAsYCstIGhjIHNkeDUgMGBdLFtgc3gxM2AsYCstIGhjIHNkeDQgMGBdLFtgc3gxNGAsYCstIGhjIHNkeDMgMGBdLFtgc3gxNWAsYCstIGhjIHNkeDIgMGBdLFtgc3gxNmAsYCstIGhjIHNkeDEgMGBdLFtgc3kxYCxgKy0gdmMgMCBzZHkxYF0sW2BzeTJgLGArLSB2YyAwIHNkeTJgXSxbYHN5M2AsYCstIHZjIDAgc2R5M2BdLFtgc3k0YCxgKy0gdmMgMCBzZHk0YF0sW2BzeTVgLGArLSB2YyAwIHNkeTVgXSxbYHN5NmAsYCstIHZjIDAgc2R5NmBdLFtgc3k3YCxgKy0gdmMgMCBzZHk3YF0sW2BzeThgLGArLSB2YyAwIHNkeThgXSxbYHN5OWAsYCstIHZjIHNkeTggMGBdLFtgc3kxMGAsYCstIHZjIHNkeTcgMGBdLFtgc3kxMWAsYCstIHZjIHNkeTYgMGBdLFtgc3kxMmAsYCstIHZjIHNkeTUgMGBdLFtgc3kxM2AsYCstIHZjIHNkeTQgMGBdLFtgc3kxNGAsYCstIHZjIHNkeTMgMGBdLFtgc3kxNWAsYCstIHZjIHNkeTIgMGBdLFtgc3kxNmAsYCstIHZjIHNkeTEgMGBdLFtgaWR4YCxgY29zIGl3ZDIgMjcwMDAwMGBdLFtgaWR5YCxgc2luIGloZDIgMjcwMDAwMGBdLFtgaWxgLGArLSBoYyAwIGlkeGBdLFtgaXRgLGArLSB2YyAwIGlkeWBdLFtgaXJgLGArLSBoYyBpZHggMGBdLFtgaWJgLGArLSB2YyBpZHkgMGBdLFtgeUFkamAsYCstIHZjIDAgaWhkMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdmNgXSxbYGxgLGBzeDFgLGBzeThgXSxbYGxgLGB4MWAsYHk3YF0sW2BsYCxgc3gyYCxgc3k3YF0sW2BsYCxgeDJgLGB5NmBdLFtgbGAsYHN4M2AsYHN5NmBdLFtgbGAsYHgzYCxgeTVgXSxbYGxgLGBzeDRgLGBzeTVgXSxbYGxgLGB4NGAsYHk0YF0sW2BsYCxgc3g1YCxgc3k0YF0sW2BsYCxgeDVgLGB5M2BdLFtgbGAsYHN4NmAsYHN5M2BdLFtgbGAsYHg2YCxgeTJgXSxbYGxgLGBzeDdgLGBzeTJgXSxbYGxgLGB4N2AsYHkxYF0sW2BsYCxgc3g4YCxgc3kxYF0sW2BsYCxgaGNgLGB0YF0sW2BsYCxgc3g5YCxgc3kxYF0sW2BsYCxgeDhgLGB5MWBdLFtgbGAsYHN4MTBgLGBzeTJgXSxbYGxgLGB4OWAsYHkyYF0sW2BsYCxgc3gxMWAsYHN5M2BdLFtgbGAsYHgxMGAsYHkzYF0sW2BsYCxgc3gxMmAsYHN5NGBdLFtgbGAsYHgxMWAsYHk0YF0sW2BsYCxgc3gxM2AsYHN5NWBdLFtgbGAsYHgxMmAsYHk1YF0sW2BsYCxgc3gxNGAsYHN5NmBdLFtgbGAsYHgxM2AsYHk2YF0sW2BsYCxgc3gxNWAsYHN5N2BdLFtgbGAsYHgxNGAsYHk3YF0sW2BsYCxgc3gxNmAsYHN5OGBdLFtgbGAsYHJgLGB2Y2BdLFtgbGAsYHN4MTZgLGBzeTlgXSxbYGxgLGB4MTRgLGB5OGBdLFtgbGAsYHN4MTVgLGBzeTEwYF0sW2BsYCxgeDEzYCxgeTlgXSxbYGxgLGBzeDE0YCxgc3kxMWBdLFtgbGAsYHgxMmAsYHkxMGBdLFtgbGAsYHN4MTNgLGBzeTEyYF0sW2BsYCxgeDExYCxgeTExYF0sW2BsYCxgc3gxMmAsYHN5MTNgXSxbYGxgLGB4MTBgLGB5MTJgXSxbYGxgLGBzeDExYCxgc3kxNGBdLFtgbGAsYHg5YCxgeTEzYF0sW2BsYCxgc3gxMGAsYHN5MTVgXSxbYGxgLGB4OGAsYHkxNGBdLFtgbGAsYHN4OWAsYHN5MTZgXSxbYGxgLGBoY2AsYGJgXSxbYGxgLGBzeDhgLGBzeTE2YF0sW2BsYCxgeDdgLGB5MTRgXSxbYGxgLGBzeDdgLGBzeTE1YF0sW2BsYCxgeDZgLGB5MTNgXSxbYGxgLGBzeDZgLGBzeTE0YF0sW2BsYCxgeDVgLGB5MTJgXSxbYGxgLGBzeDVgLGBzeTEzYF0sW2BsYCxgeDRgLGB5MTFgXSxbYGxgLGBzeDRgLGBzeTEyYF0sW2BsYCxgeDNgLGB5MTBgXSxbYGxgLGBzeDNgLGBzeTExYF0sW2BsYCxgeDJgLGB5OWBdLFtgbGAsYHN4MmAsYHN5MTBgXSxbYGxgLGB4MWAsYHk4YF0sW2BsYCxgc3gxYCxgc3k5YF0sW2BjYF1dfV19LEZwPXthZGo6W1tgYWRqYCxgdmFsIDEyNTAwYF1dLGdkOltbYGFgLGBwaW4gMCBhZGogNTAwMDBgXSxbYGl3ZDJgLGAqLyB3ZDIgYSA1MDAwMGBdLFtgaWhkMmAsYCovIGhkMiBhIDUwMDAwYF0sW2BzZHhgLGBjb3MgaXdkMiAyNzAwMDAwYF0sW2BzZHlgLGBzaW4gaWhkMiAyNzAwMDAwYF0sW2BzeDFgLGArLSBoYyAwIHNkeGBdLFtgc3gyYCxgKy0gaGMgc2R4IDBgXSxbYHN5MWAsYCstIHZjIDAgc2R5YF0sW2BzeTJgLGArLSB2YyBzZHkgMGBdLFtgeUFkamAsYCstIHZjIDAgaWhkMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdmNgXSxbYGxgLGBzeDFgLGBzeTFgXSxbYGxgLGBoY2AsYHRgXSxbYGxgLGBzeDJgLGBzeTFgXSxbYGxgLGByYCxgdmNgXSxbYGxgLGBzeDJgLGBzeTJgXSxbYGxgLGBoY2AsYGJgXSxbYGxgLGBzeDFgLGBzeTJgXSxbYGNgXV19XX0sSXA9e2FkajpbW2BhZGpgLGB2YWwgMTkwOThgXSxbYGhmYCxgdmFsIDEwNTE0NmBdLFtgdmZgLGB2YWwgMTEwNTU3YF1dLGdkOltbYGFgLGBwaW4gMCBhZGogNTAwMDBgXSxbYHN3ZDJgLGAqLyB3ZDIgaGYgMTAwMDAwYF0sW2BzaGQyYCxgKi8gaGQyIHZmIDEwMDAwMGBdLFtgc3ZjYCxgKi8gdmMgIHZmIDEwMDAwMGBdLFtgZHgxYCxgY29zIHN3ZDIgMTA4MDAwMGBdLFtgZHgyYCxgY29zIHN3ZDIgMTgzNjAwMDBgXSxbYGR5MWAsYHNpbiBzaGQyIDEwODAwMDBgXSxbYGR5MmAsYHNpbiBzaGQyIDE4MzYwMDAwYF0sW2B4MWAsYCstIGhjIDAgZHgxYF0sW2B4MmAsYCstIGhjIDAgZHgyYF0sW2B4M2AsYCstIGhjIGR4MiAwYF0sW2B4NGAsYCstIGhjIGR4MSAwYF0sW2B5MWAsYCstIHN2YyAwIGR5MWBdLFtgeTJgLGArLSBzdmMgMCBkeTJgXSxbYGl3ZDJgLGAqLyBzd2QyIGEgNTAwMDBgXSxbYGloZDJgLGAqLyBzaGQyIGEgNTAwMDBgXSxbYHNkeDFgLGBjb3MgaXdkMiAyMDUyMDAwMGBdLFtgc2R4MmAsYGNvcyBpd2QyIDMyNDAwMDBgXSxbYHNkeTFgLGBzaW4gaWhkMiAzMjQwMDAwYF0sW2BzZHkyYCxgc2luIGloZDIgMjA1MjAwMDBgXSxbYHN4MWAsYCstIGhjIDAgc2R4MWBdLFtgc3gyYCxgKy0gaGMgMCBzZHgyYF0sW2BzeDNgLGArLSBoYyBzZHgyIDBgXSxbYHN4NGAsYCstIGhjIHNkeDEgMGBdLFtgc3kxYCxgKy0gc3ZjIDAgc2R5MWBdLFtgc3kyYCxgKy0gc3ZjIDAgc2R5MmBdLFtgc3kzYCxgKy0gc3ZjIGloZDIgMGBdLFtgeUFkamAsYCstIHN2YyAwIGloZDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeDFgLGB5MWBdLFtgbGAsYHN4MmAsYHN5MWBdLFtgbGAsYGhjYCxgdGBdLFtgbGAsYHN4M2AsYHN5MWBdLFtgbGAsYHg0YCxgeTFgXSxbYGxgLGBzeDRgLGBzeTJgXSxbYGxgLGB4M2AsYHkyYF0sW2BsYCxgaGNgLGBzeTNgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgc3gxYCxgc3kyYF0sW2BjYF1dfV19LExwPXthZGo6W1tgYWRqYCxgdmFsIDI4ODY4YF0sW2BoZmAsYHZhbCAxMTU0NzBgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiA1MDAwMGBdLFtgc3dkMmAsYCovIHdkMiBoZiAxMDAwMDBgXSxbYGR4MWAsYGNvcyBzd2QyIDE4MDAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgZHgxIDBgXSxbYHkyYCxgKy0gdmMgaGQ0IDBgXSxbYGl3ZDJgLGAqLyBzd2QyIGEgNTAwMDBgXSxbYGloZDJgLGAqLyBoZDIgYSA1MDAwMGBdLFtgc2R4MmAsYCovIGl3ZDIgMSAyYF0sW2BzeDFgLGArLSBoYyAwIGl3ZDJgXSxbYHN4MmAsYCstIGhjIDAgc2R4MmBdLFtgc3gzYCxgKy0gaGMgc2R4MiAwYF0sW2BzeDRgLGArLSBoYyBpd2QyIDBgXSxbYHNkeTFgLGBzaW4gaWhkMiAzNjAwMDAwYF0sW2BzeTFgLGArLSB2YyAwIHNkeTFgXSxbYHN5MmAsYCstIHZjIHNkeTEgMGBdLFtgeUFkamAsYCstIHZjIDAgaWhkMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGB4MWAsYGhkNGBdLFtgbGAsYHN4MmAsYHN5MWBdLFtgbGAsYGhjYCxgdGBdLFtgbGAsYHN4M2AsYHN5MWBdLFtgbGAsYHgyYCxgaGQ0YF0sW2BsYCxgc3g0YCxgdmNgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgc3gzYCxgc3kyYF0sW2BsYCxgaGNgLGBiYF0sW2BsYCxgc3gyYCxgc3kyYF0sW2BsYCxgeDFgLGB5MmBdLFtgbGAsYHN4MWAsYHZjYF0sW2BjYF1dfV19LFJwPXthZGo6W1tgYWRqYCxgdmFsIDM0NjAxYF0sW2BoZmAsYHZhbCAxMDI1NzJgXSxbYHZmYCxgdmFsIDEwNTIxMGBdXSxnZDpbW2BhYCxgcGluIDAgYWRqIDUwMDAwYF0sW2Bzd2QyYCxgKi8gd2QyIGhmIDEwMDAwMGBdLFtgc2hkMmAsYCovIGhkMiB2ZiAxMDAwMDBgXSxbYHN2Y2AsYCovIHZjICB2ZiAxMDAwMDBgXSxbYGR4MWAsYCovIHN3ZDIgOTc0OTMgMTAwMDAwYF0sW2BkeDJgLGAqLyBzd2QyIDc4MTgzIDEwMDAwMGBdLFtgZHgzYCxgKi8gc3dkMiA0MzM4OCAxMDAwMDBgXSxbYGR5MWAsYCovIHNoZDIgNjIzNDkgMTAwMDAwYF0sW2BkeTJgLGAqLyBzaGQyIDIyMjUyIDEwMDAwMGBdLFtgZHkzYCxgKi8gc2hkMiA5MDA5NyAxMDAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHgzYCxgKy0gaGMgMCBkeDNgXSxbYHg0YCxgKy0gaGMgZHgzIDBgXSxbYHg1YCxgKy0gaGMgZHgyIDBgXSxbYHg2YCxgKy0gaGMgZHgxIDBgXSxbYHkxYCxgKy0gc3ZjIDAgZHkxYF0sW2B5MmAsYCstIHN2YyBkeTIgMGBdLFtgeTNgLGArLSBzdmMgZHkzIDBgXSxbYGl3ZDJgLGAqLyBzd2QyIGEgNTAwMDBgXSxbYGloZDJgLGAqLyBzaGQyIGEgNTAwMDBgXSxbYHNkeDFgLGAqLyBpd2QyIDk3NDkzIDEwMDAwMGBdLFtgc2R4MmAsYCovIGl3ZDIgNzgxODMgMTAwMDAwYF0sW2BzZHgzYCxgKi8gaXdkMiA0MzM4OCAxMDAwMDBgXSxbYHN4MWAsYCstIGhjIDAgc2R4MWBdLFtgc3gyYCxgKy0gaGMgMCBzZHgyYF0sW2BzeDNgLGArLSBoYyAwIHNkeDNgXSxbYHN4NGAsYCstIGhjIHNkeDMgMGBdLFtgc3g1YCxgKy0gaGMgc2R4MiAwYF0sW2BzeDZgLGArLSBoYyBzZHgxIDBgXSxbYHNkeTFgLGAqLyBpaGQyIDkwMDk3IDEwMDAwMGBdLFtgc2R5MmAsYCovIGloZDIgMjIyNTIgMTAwMDAwYF0sW2BzZHkzYCxgKi8gaWhkMiA2MjM0OSAxMDAwMDBgXSxbYHN5MWAsYCstIHN2YyAwIHNkeTFgXSxbYHN5MmAsYCstIHN2YyAwIHNkeTJgXSxbYHN5M2AsYCstIHN2YyBzZHkzIDBgXSxbYHN5NGAsYCstIHN2YyBpaGQyIDBgXSxbYHlBZGpgLGArLSBzdmMgMCBpaGQyYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYHgxYCxgeTJgXSxbYGxgLGBzeDFgLGBzeTJgXSxbYGxgLGB4MmAsYHkxYF0sW2BsYCxgc3gzYCxgc3kxYF0sW2BsYCxgaGNgLGB0YF0sW2BsYCxgc3g0YCxgc3kxYF0sW2BsYCxgeDVgLGB5MWBdLFtgbGAsYHN4NmAsYHN5MmBdLFtgbGAsYHg2YCxgeTJgXSxbYGxgLGBzeDVgLGBzeTNgXSxbYGxgLGB4NGAsYHkzYF0sW2BsYCxgaGNgLGBzeTRgXSxbYGxgLGB4M2AsYHkzYF0sW2BsYCxgc3gyYCxgc3kzYF0sW2BjYF1dfV19LHpwPXthZGo6W1tgYWRqYCxgdmFsIDM3NTAwYF1dLGdkOltbYGFgLGBwaW4gMCBhZGogNTAwMDBgXSxbYGR4MWAsYGNvcyB3ZDIgMjcwMDAwMGBdLFtgeDFgLGArLSBoYyAwIGR4MWBdLFtgeDJgLGArLSBoYyBkeDEgMGBdLFtgZHkxYCxgc2luIGhkMiAyNzAwMDAwYF0sW2B5MWAsYCstIHZjIDAgZHkxYF0sW2B5MmAsYCstIHZjIGR5MSAwYF0sW2Bpd2QyYCxgKi8gd2QyIGEgNTAwMDBgXSxbYGloZDJgLGAqLyBoZDIgYSA1MDAwMGBdLFtgc2R4MWAsYCovIGl3ZDIgOTIzODggMTAwMDAwYF0sW2BzZHgyYCxgKi8gaXdkMiAzODI2OCAxMDAwMDBgXSxbYHNkeTFgLGAqLyBpaGQyIDkyMzg4IDEwMDAwMGBdLFtgc2R5MmAsYCovIGloZDIgMzgyNjggMTAwMDAwYF0sW2BzeDFgLGArLSBoYyAwIHNkeDFgXSxbYHN4MmAsYCstIGhjIDAgc2R4MmBdLFtgc3gzYCxgKy0gaGMgc2R4MiAwYF0sW2BzeDRgLGArLSBoYyBzZHgxIDBgXSxbYHN5MWAsYCstIHZjIDAgc2R5MWBdLFtgc3kyYCxgKy0gdmMgMCBzZHkyYF0sW2BzeTNgLGArLSB2YyBzZHkyIDBgXSxbYHN5NGAsYCstIHZjIHNkeTEgMGBdLFtgeUFkamAsYCstIHZjIDAgaWhkMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdmNgXSxbYGxgLGBzeDFgLGBzeTJgXSxbYGxgLGB4MWAsYHkxYF0sW2BsYCxgc3gyYCxgc3kxYF0sW2BsYCxgaGNgLGB0YF0sW2BsYCxgc3gzYCxgc3kxYF0sW2BsYCxgeDJgLGB5MWBdLFtgbGAsYHN4NGAsYHN5MmBdLFtgbGAsYHJgLGB2Y2BdLFtgbGAsYHN4NGAsYHN5M2BdLFtgbGAsYHgyYCxgeTJgXSxbYGxgLGBzeDNgLGBzeTRgXSxbYGxgLGBoY2AsYGJgXSxbYGxgLGBzeDJgLGBzeTRgXSxbYGxgLGB4MWAsYHkyYF0sW2BsYCxgc3gxYCxgc3kzYF0sW2BjYF1dfV19LEJwPXthZGo6W10sZ2Q6W10scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6YG5vbmVgLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdGBdLFtgbGAsYHJgLGBiYF1dfV19LFZwPXthZGo6W1tgYWRqMWAsYHZhbCA1MDAwMGBdLFtgYWRqMmAsYHZhbCA1MDAwMGBdXSxnZDpbW2BtYXhBZGoyYCxgKi8gODQzNzUgdyBzc2BdLFtgYTFgLGBwaW4gMCBhZGoxIDEwMDAwMGBdLFtgYTJgLGBwaW4gMCBhZGoyIG1heEFkajJgXSxbYHg0YCxgKi8gc3MgNSAzMmBdLFtgZHg1YCxgKi8gc3MgYTIgMTAwMDAwYF0sW2B4NWAsYCstIHIgMCBkeDVgXSxbYGR5MWAsYCovIGggYTEgMjAwMDAwYF0sW2B5MWAsYCstIHZjIDAgZHkxYF0sW2B5MmAsYCstIHZjIGR5MSAwYF0sW2BkeDZgLGAqLyBkeTEgZHg1IGhkMmBdLFtgeDZgLGArLSByIDAgZHg2YF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB5MWBdLFtgbGAsYHNzZDMyYCxgeTFgXSxbYGxgLGBzc2QzMmAsYHkyYF0sW2BsYCxgbGAsYHkyYF0sW2BjYF0sW2BtYCxgc3NkMTZgLGB5MWBdLFtgbGAsYHNzZDhgLGB5MWBdLFtgbGAsYHNzZDhgLGB5MmBdLFtgbGAsYHNzZDE2YCxgeTJgXSxbYGNgXSxbYG1gLGB4NGAsYHkxYF0sW2BsYCxgeDVgLGB5MWBdLFtgbGAsYHg1YCxgdGBdLFtgbGAsYHJgLGB2Y2BdLFtgbGAsYHg1YCxgYmBdLFtgbGAsYHg1YCxgeTJgXSxbYGxgLGB4NGAsYHkyYF0sW2BjYF1dfV19LEhwPXthZGo6W1tgYWRqYCxgdmFsIDI1MDAwYF1dLGdkOltbYGFgLGBwaW4gMTI1MDAgYWRqIDQ2ODc1YF0sW2BnMGAsYCstIDUwMDAwIDAgYWBdLFtgZzFgLGAqLyBnMCAzMDI3NCAzMjc2OGBdLFtgZzJgLGAqLyBnMCAxMjU0MCAzMjc2OGBdLFtgZzNgLGArLSBnMSA1MDAwMCAwYF0sW2BnNGAsYCstIGcyIDUwMDAwIDBgXSxbYGc1YCxgKy0gNTAwMDAgMCBnMWBdLFtgZzZgLGArLSA1MDAwMCAwIGcyYF0sW2BnN2AsYCovIGcwIDIzMTcwIDMyNzY4YF0sW2BnOGAsYCstIDUwMDAwIGc3IDBgXSxbYGc5YCxgKy0gNTAwMDAgMCBnN2BdLFtgZzEwYCxgKi8gZzUgMyA0YF0sW2BnMTFgLGAqLyBnNiAzIDRgXSxbYGcxMmAsYCstIGcxMCAzNjYyIDBgXSxbYGcxM2AsYCstIGcxMSAzNjYyIDBgXSxbYGcxNGAsYCstIGcxMSAxMjUwMCAwYF0sW2BnMTVgLGArLSAxMDAwMDAgMCBnMTBgXSxbYGcxNmAsYCstIDEwMDAwMCAwIGcxMmBdLFtgZzE3YCxgKy0gMTAwMDAwIDAgZzEzYF0sW2BnMThgLGArLSAxMDAwMDAgMCBnMTRgXSxbYG94MWAsYCovIHcgMTg0MzYgMjE2MDBgXSxbYG95MWAsYCovIGggMzE2MyAyMTYwMGBdLFtgb3gyYCxgKi8gdyAzMTYzIDIxNjAwYF0sW2BveTJgLGAqLyBoIDE4NDM2IDIxNjAwYF0sW2B4OGAsYCovIHcgZzggMTAwMDAwYF0sW2B4OWAsYCovIHcgZzkgMTAwMDAwYF0sW2B4MTBgLGAqLyB3IGcxMCAxMDAwMDBgXSxbYHgxMmAsYCovIHcgZzEyIDEwMDAwMGBdLFtgeDEzYCxgKi8gdyBnMTMgMTAwMDAwYF0sW2B4MTRgLGAqLyB3IGcxNCAxMDAwMDBgXSxbYHgxNWAsYCovIHcgZzE1IDEwMDAwMGBdLFtgeDE2YCxgKi8gdyBnMTYgMTAwMDAwYF0sW2B4MTdgLGAqLyB3IGcxNyAxMDAwMDBgXSxbYHgxOGAsYCovIHcgZzE4IDEwMDAwMGBdLFtgeDE5YCxgKi8gdyBhIDEwMDAwMGBdLFtgd1JgLGAqLyB3IGcwIDEwMDAwMGBdLFtgaFJgLGAqLyBoIGcwIDEwMDAwMGBdLFtgeThgLGAqLyBoIGc4IDEwMDAwMGBdLFtgeTlgLGAqLyBoIGc5IDEwMDAwMGBdLFtgeTEwYCxgKi8gaCBnMTAgMTAwMDAwYF0sW2B5MTJgLGAqLyBoIGcxMiAxMDAwMDBgXSxbYHkxM2AsYCovIGggZzEzIDEwMDAwMGBdLFtgeTE0YCxgKi8gaCBnMTQgMTAwMDAwYF0sW2B5MTVgLGAqLyBoIGcxNSAxMDAwMDBgXSxbYHkxNmAsYCovIGggZzE2IDEwMDAwMGBdLFtgeTE3YCxgKi8gaCBnMTcgMTAwMDAwYF0sW2B5MThgLGAqLyBoIGcxOCAxMDAwMDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgcmAsYHZjYF0sW2BsYCxgeDE1YCxgeTE4YF0sW2BsYCxgeDE1YCxgeTE0YF0sW2BjYF0sW2BtYCxgb3gxYCxgb3kxYF0sW2BsYCxgeDE2YCxgeTEzYF0sW2BsYCxgeDE3YCxgeTEyYF0sW2BjYF0sW2BtYCxgaGNgLGB0YF0sW2BsYCxgeDE4YCxgeTEwYF0sW2BsYCxgeDE0YCxgeTEwYF0sW2BjYF0sW2BtYCxgb3gyYCxgb3kxYF0sW2BsYCxgeDEzYCxgeTEyYF0sW2BsYCxgeDEyYCxgeTEzYF0sW2BjYF0sW2BtYCxgbGAsYHZjYF0sW2BsYCxgeDEwYCxgeTE0YF0sW2BsYCxgeDEwYCxgeTE4YF0sW2BjYF0sW2BtYCxgb3gyYCxgb3kyYF0sW2BsYCxgeDEyYCxgeTE3YF0sW2BsYCxgeDEzYCxgeTE2YF0sW2BjYF0sW2BtYCxgaGNgLGBiYF0sW2BsYCxgeDE0YCxgeTE1YF0sW2BsYCxgeDE4YCxgeTE1YF0sW2BjYF0sW2BtYCxgb3gxYCxgb3kyYF0sW2BsYCxgeDE3YCxgeTE2YF0sW2BsYCxgeDE2YCxgeTE3YF0sW2BjYF0sW2BtYCxgeDE5YCxgdmNgXSxbYGFgLGB3UmAsYGhSYCxgY2QyYCxgMjE2MDAwMDBgXSxbYGNgXV19XX0sVXA9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDE2NjY3YF1dLGdkOltbYGExYCxgcGluIDEgYWRqMSA3NTAwMGBdLFtgbWF4QWRqMmAsYCovIDcwMDAwIHcgc3NgXSxbYGEyYCxgcGluIDAgYWRqMiBtYXhBZGoyYF0sW2BhZDFgLGAqLyBoIGExIDEwMDAwMGBdLFtgYWQyYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2B4QmAsYCstIHIgMCBhZDJgXSxbYHlCYCxgKy0gdCBzc2Q4IDBgXSxbYGFsZmFgLGAqLyBjZDQgMSAxNGBdLFtgZHgwYCxgdGFuIHNzZDggYWxmYWBdLFtgeENgLGArLSB4QiAwIGR4MGBdLFtgZHgxYCxgdGFuIGFkMSBhbGZhYF0sW2B5RmAsYCstIHlCIGFkMSAwYF0sW2B4RmAsYCstIHhCIGR4MSAwYF0sW2B4RWAsYCstIHhGIGR4MCAwYF0sW2B5RWAsYCstIHlGIHNzZDggMGBdLFtgZHkyYCxgKy0geUUgMCB0YF0sW2BkeTIyYCxgKi8gZHkyIDEgMmBdLFtgZHkzYCxgKi8gaCAxIDIwYF0sW2B5RGAsYCstIHQgZHkyMiBkeTNgXSxbYGR5NGAsYCovIGhkNiAxIDFgXSxbYHlQMWAsYCstIGhkNiBkeTQgMGBdLFtgeFAxYCxgdmFsIHdkNmBdLFtgZHk1YCxgKi8gaGQ2IDEgMmBdLFtgeVAyYCxgKy0geUYgZHk1IDBgXSxbYHhQMmAsYHZhbCB3ZDRgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYGJgXSxbYFFgLGB4UDFgLGB5UDFgLGB4QmAsYHlCYF0sW2BsYCxgeENgLGB0YF0sW2BsYCxgcmAsYHlEYF0sW2BsYCxgeEVgLGB5RWBdLFtgbGAsYHhGYCxgeUZgXSxbYFFgLGB4UDJgLGB5UDJgLGBsYCxgYmBdLFtgY2BdXX1dfSxXcD17YWRqOltbYGFkamAsYHZhbCAxMDAwMDBgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiAyMDAwMDBgXSxbYHIyYCxgc3FydCAyYF0sW2B0d2AsYCovIHdkMiByMiAxYF0sW2B0aGAsYCovIGhkMiByMiAxYF0sW2Bzd2AsYCovIHR3IGEgMTAwMDAwYF0sW2BzaGAsYCovIHRoIGEgMTAwMDAwYF0sW2BkeDFgLGBjb3Mgc3cgMjcwMDAwMGBdLFtgZHkxYCxgc2luIHNoIDI3MDAwMDBgXSxbYHgxYCxgKy0gaGMgZHgxIDBgXSxbYHkxYCxgKy0gdmMgMCBkeTFgXSxbYHgyYCxgKy8gaGMgeDEgMmBdLFtgeTJgLGArLyB2YyB5MSAyYF0sW2BpZHhgLGBjb3Mgd2QyIDI3MDAwMDBgXSxbYGlkeWAsYHNpbiBoZDIgMjcwMDAwMGBdLFtgaWxgLGArLSBoYyAwIGlkeGBdLFtgaXJgLGArLSBoYyBpZHggMGBdLFtgaXRgLGArLSB2YyAwIGlkeWBdLFtgaWJgLGArLSB2YyBpZHkgMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgdmNgXSxbYGFgLGB3ZDJgLGBoZDJgLGBjZDJgLGBjZDRgXSxbYFFgLGB4MmAsYHRgLGB4MWAsYHkxYF0sW2BRYCxgcmAsYHkyYCxgcmAsYHZjYF0sW2BhYCxgd2QyYCxgaGQyYCxgMGAsYGNkNGBdLFtgYWAsYHdkMmAsYGhkMmAsYGNkNGAsYGNkNGBdLFtgY2BdXX1dfSxHcD17YWRqOltbYGFkamAsYHZhbCAyNTAwMGBdXSxnZDpbW2BtYXhBZGpgLGAqLyA1MDAwMCB3IHNzYF0sW2BhYCxgcGluIDAgYWRqIG1heEFkamBdLFtgeDFgLGAqLyBzcyBhIDIwMDAwMGBdLFtgeDJgLGAqLyBzcyBhIDEwMDAwMGBdLFtgeDNgLGArLSByIDAgeDJgXSxbYHg0YCxgKy0gciAwIHgxYF0sW2BpbGAsYCovIHdkMyBhIG1heEFkamBdLFtgaXRgLGAqLyBoZDMgYSBtYXhBZGpgXSxbYGlyYCxgKy0gciAwIGlsYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGBiYF0sW2BsYCxgeDJgLGB0YF0sW2BsYCxgeDNgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGNgXV19XX0sS3A9e2FkajpbW2BhZGpgLGB2YWwgNTAwMDBgXV0sZ2Q6W1tgYWAsYHBpbiAwIGFkaiAxMDAwMDBgXSxbYHgxYCxgKi8gdyBhIDIwMDAwMGBdLFtgeDJgLGAqLyB3IGEgMTAwMDAwYF0sW2B4M2AsYCstIHgxIHdkMiAwYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGBiYF0sW2BsYCxgeDJgLGB0YF0sW2BsYCxgcmAsYGJgXSxbYGNgXV19XX0scXA9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDI1MDAwYF0sW2BhZGozYCxgdmFsIDI1MDAwYF0sW2BhZGo0YCxgdmFsIDY0OTc3YF1dLGdkOltbYG1heEFkajJgLGAqLyA1MDAwMCB3IHNzYF0sW2BhMmAsYHBpbiAwIGFkajIgbWF4QWRqMmBdLFtgbWF4QWRqMWAsYCovIGEyIDIgMWBdLFtgYTFgLGBwaW4gMCBhZGoxIG1heEFkajFgXSxbYG1heEFkajNgLGAqLyAxMDAwMDAgaCBzc2BdLFtgYTNgLGBwaW4gMCBhZGozIG1heEFkajNgXSxbYHEyYCxgKi8gYTMgc3MgaGBdLFtgbWF4QWRqNGAsYCstIDEwMDAwMCAwIHEyYF0sW2BhNGAsYHBpbiAwIGFkajQgbWF4QWRqNGBdLFtgZHgxYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2BkeDJgLGAqLyBzcyBhMSAyMDAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgMCBkeDJgXSxbYHgzYCxgKy0gaGMgZHgyIDBgXSxbYHg0YCxgKy0gaGMgZHgxIDBgXSxbYHkxYCxgKi8gc3MgYTMgMTAwMDAwYF0sW2BkeTJgLGAqLyBoIGE0IDEwMDAwMGBdLFtgeTJgLGArLSBiIDAgZHkyYF0sW2B5M2AsYCsvIHkyIGIgMmBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgeTJgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDJgLGB5MWBdLFtgbGAsYHgxYCxgeTFgXSxbYGxgLGBoY2AsYHRgXSxbYGxgLGB4NGAsYHkxYF0sW2BsYCxgeDNgLGB5MWBdLFtgbGAsYHgzYCxgeTJgXSxbYGxgLGByYCxgeTJgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfV19LEpwPXthZGo6W1tgYWRqMWAsYHZhbCA1MDAwMGBdLFtgYWRqMmAsYHZhbCA1MDAwMGBdXSxnZDpbW2BtYXhBZGoyYCxgKi8gNTAwMDAgaCBzc2BdLFtgYTFgLGBwaW4gMCBhZGoxIDEwMDAwMGBdLFtgYTJgLGBwaW4gMCBhZGoyIG1heEFkajJgXSxbYHkyYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2B5M2AsYCstIGIgMCB5MmBdLFtgZHgxYCxgKi8gdyBhMSAyMDAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgZHgxIDBgXSxbYGR5MWAsYCovIHgxIHkyIHdkMmBdLFtgeTFgLGArLSB5MiAwIGR5MWBdLFtgeTRgLGArLSB5MyBkeTEgMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgeTJgXSxbYGxgLGBoY2AsYHRgXSxbYGxgLGByYCxgeTJgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDJgLGB5M2BdLFtgbGAsYHJgLGB5M2BdLFtgbGAsYGhjYCxgYmBdLFtgbGAsYGxgLGB5M2BdLFtgbGAsYHgxYCxgeTNgXSxbYGxgLGB4MWAsYHkyYF0sW2BjYF1dfV19LFlwPXthZGo6W1tgYWRqMWAsYHZhbCA1MDAwMGBdLFtgYWRqMmAsYHZhbCA1MDAwMGBdXSxnZDpbW2BtYXhBZGoyYCxgKi8gMTAwMDAwIGggc3NgXSxbYGExYCxgcGluIDAgYWRqMSAxMDAwMDBgXSxbYGEyYCxgcGluIDAgYWRqMiBtYXhBZGoyYF0sW2BkeTJgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYHkyYCxgKy0gdCBkeTIgMGBdLFtgZHgxYCxgKi8gdyBhMSAyMDAwMDBgXSxbYHgxYCxgKy0gaGMgMCBkeDFgXSxbYHgyYCxgKy0gaGMgZHgxIDBgXSxbYGR5MWAsYCovIHgxIGR5MiB3ZDJgXSxbYHkxYCxgKy0geTIgIDAgZHkxYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB5MmBdLFtgbGAsYGhjYCxgdGBdLFtgbGAsYHJgLGB5MmBdLFtgbGAsYHgyYCxgeTJgXSxbYGxgLGB4MmAsYGJgXSxbYGxgLGB4MWAsYGJgXSxbYGxgLGB4MWAsYHkyYF0sW2BjYF1dfV19LFhwPXthZGo6W1tgYWRqMWAsYHZhbCAyNTAwMGBdLFtgYWRqMmAsYHZhbCAyNTAwMGBdLFtgYWRqM2AsYHZhbCAyNTAwMGBdLFtgYWRqNGAsYHZhbCA0ODEyM2BdXSxnZDpbW2BtYXhBZGoyYCxgKi8gNTAwMDAgdyBzc2BdLFtgYTJgLGBwaW4gMCBhZGoyIG1heEFkajJgXSxbYG1heEFkajFgLGAqLyBhMiAyIDFgXSxbYGExYCxgcGluIDAgYWRqMSBtYXhBZGoxYF0sW2BtYXhBZGozYCxgKi8gNTAwMDAgaCBzc2BdLFtgYTNgLGBwaW4gMCBhZGozIG1heEFkajNgXSxbYHEyYCxgKi8gYTMgc3MgaGQyYF0sW2BtYXhBZGo0YCxgKy0gMTAwMDAwIDAgcTJgXSxbYGE0YCxgcGluIDAgYWRqNCBtYXhBZGo0YF0sW2BkeDFgLGAqLyBzcyBhMiAxMDAwMDBgXSxbYGR4MmAsYCovIHNzIGExIDIwMDAwMGBdLFtgeDFgLGArLSBoYyAwIGR4MWBdLFtgeDJgLGArLSBoYyAwIGR4MmBdLFtgeDNgLGArLSBoYyBkeDIgMGBdLFtgeDRgLGArLSBoYyBkeDEgMGBdLFtgeTFgLGAqLyBzcyBhMyAxMDAwMDBgXSxbYHk0YCxgKy0gYiAwIHkxYF0sW2BkeTJgLGAqLyBoIGE0IDIwMDAwMGBdLFtgeTJgLGArLSB2YyAwIGR5MmBdLFtgeTNgLGArLSB2YyBkeTIgMGBdXSxwYXRoczpbe3c6bnVsbCxoOm51bGwsZmlsbDpudWxsLHN0cm9rZTohMCxleHRydXNpb25PazohMCxjbWRzOltbYG1gLGBsYCxgeTJgXSxbYGxgLGB4MmAsYHkyYF0sW2BsYCxgeDJgLGB5MWBdLFtgbGAsYHgxYCxgeTFgXSxbYGxgLGBoY2AsYHRgXSxbYGxgLGB4NGAsYHkxYF0sW2BsYCxgeDNgLGB5MWBdLFtgbGAsYHgzYCxgeTJgXSxbYGxgLGByYCxgeTJgXSxbYGxgLGByYCxgeTNgXSxbYGxgLGB4M2AsYHkzYF0sW2BsYCxgeDNgLGB5NGBdLFtgbGAsYHg0YCxgeTRgXSxbYGxgLGBoY2AsYGJgXSxbYGxgLGB4MWAsYHk0YF0sW2BsYCxgeDJgLGB5NGBdLFtgbGAsYHgyYCxgeTNgXSxbYGxgLGBsYCxgeTNgXSxbYGNgXV19XX0sWnA9e2FkajpbW2BhZGoxYCxgdmFsIDI1MDAwYF0sW2BhZGoyYCxgdmFsIDI1MDAwYF0sW2BhZGozYCxgdmFsIDI1MDAwYF0sW2BhZGo0YCxgdmFsIDQzNzUwYF0sW2BhZGo1YCxgdmFsIDc1MDAwYF1dLGdkOltbYGEyYCxgcGluIDAgYWRqMiAyNTAwMGBdLFtgbWF4QWRqMWAsYCovIGEyIDIgMWBdLFtgYTFgLGBwaW4gMCBhZGoxIG1heEFkajFgXSxbYHEyYCxgKi8gYTEgc3MgaGBdLFtgcTNgLGArLSAxMDAwMDAgMCBxMmBdLFtgbWF4QWRqM2AsYCovIHEzIGggc3NgXSxbYGEzYCxgcGluIDAgYWRqMyBtYXhBZGozYF0sW2BxMWAsYCstIGEzIGExIDBgXSxbYG1pbkFkajVgLGAqLyBxMSBzcyBoYF0sW2BhNWAsYHBpbiBtaW5BZGo1IGFkajUgMTAwMDAwYF0sW2B0aGAsYCovIHNzIGExIDEwMDAwMGBdLFtgYXcyYCxgKi8gc3MgYTIgMTAwMDAwYF0sW2B0aDJgLGAqLyB0aCAxIDJgXSxbYGRoMmAsYCstIGF3MiAwIHRoMmBdLFtgeTVgLGAqLyBoIGE1IDEwMDAwMGBdLFtgYWhgLGAqLyBzcyBhMyAxMDAwMDBgXSxbYHk0YCxgKy0geTUgMCBhaGBdLFtgeDlgLGArLSByIDAgZGgyYF0sW2Bid2AsYCovIHg5IDEgMmBdLFtgYnNgLGBtaW4gYncgeTRgXSxbYG1heEFkajRgLGAqLyBicyAxMDAwMDAgc3NgXSxbYGE0YCxgcGluIDAgYWRqNCBtYXhBZGo0YF0sW2BiZGAsYCovIHNzIGE0IDEwMDAwMGBdLFtgYmQzYCxgKy0gYmQgMCB0aGBdLFtgYmQyYCxgbWF4IGJkMyAwYF0sW2B4M2AsYCstIHRoIGJkMiAwYF0sW2B4OGAsYCstIHIgMCBhdzJgXSxbYHg2YCxgKy0geDggMCBhdzJgXSxbYHg3YCxgKy0geDYgZGgyIDBgXSxbYHg0YCxgKy0geDkgMCBiZGBdLFtgeDVgLGArLSB4NyAwIGJkMmBdLFtgY3hgLGArLyB0aCB4NyAyYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGBiYF0sW2BsYCxgbGAsYGJkYF0sW2BhYCxgYmRgLGBiZGAsYGNkMmAsYGNkNGBdLFtgbGAsYHg0YCxgdGBdLFtgYWAsYGJkYCxgYmRgLGAzY2Q0YCxgY2Q0YF0sW2BsYCxgeDlgLGB5NGBdLFtgbGAsYHJgLGB5NGBdLFtgbGAsYHg4YCxgeTVgXSxbYGxgLGB4NmAsYHk0YF0sW2BsYCxgeDdgLGB5NGBdLFtgbGAsYHg3YCxgeDNgXSxbYGFgLGBiZDJgLGBiZDJgLGAwYCxgLTU0MDAwMDBgXSxbYGxgLGB4M2AsYHRoYF0sW2BhYCxgYmQyYCxgYmQyYCxgM2NkNGAsYC01NDAwMDAwYF0sW2BsYCxgdGhgLGBiYF0sW2BjYF1dfV19LFFwPXthZGo6W1tgYWRqYCxgdmFsIDEyNTAwYF1dLGdkOltbYGFgLGBwaW4gMCBhZGogMjUwMDBgXSxbYGNoYCxgKi8gc3MgYSAxMDAwMDBgXSxbYGNoMmAsYCovIGNoIDEgMmBdLFtgY2g0YCxgKi8gY2ggMSA0YF0sW2B4M2AsYCstIGNoIGNoMiAwYF0sW2B4NGAsYCstIGNoIGNoIDBgXSxbYHg2YCxgKy0gciAwIGNoYF0sW2B4N2AsYCstIHIgMCBjaDJgXSxbYHg1YCxgKy0geDYgMCBjaDJgXSxbYHkzYCxgKy0gYiAwIGNoYF0sW2B5NGAsYCstIGIgMCBjaDJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgY2gyYCxgYmBdLFtgYWAsYGNoMmAsYGNoMmAsYGNkNGAsYC01NDAwMDAwYF0sW2BsYCxgY2gyYCxgeTRgXSxbYGFgLGBjaDRgLGBjaDRgLGBjZDRgLGAtMTA4MDAwMDBgXSxbYGxgLGBjaGAsYHkzYF0sW2BsYCxgY2hgLGBjaDJgXSxbYGFgLGBjaDJgLGBjaDJgLGBjZDJgLGBjZDRgXSxbYGxgLGB4N2AsYHRgXSxbYGFgLGBjaDJgLGBjaDJgLGAzY2Q0YCxgY2QyYF0sW2BsYCxgeDZgLGBjaGBdLFtgbGAsYHg2YCxgeTRgXSxbYGFgLGBjaDJgLGBjaDJgLGAwYCxgY2Q0YF0sW2BjYF0sW2BtYCxgeDRgLGBjaDJgXSxbYGFgLGBjaDJgLGBjaDJgLGAwYCxgY2Q0YF0sW2BhYCxgY2g0YCxgY2g0YCxgY2Q0YCxgY2QyYF0sW2BjYF1dfSx7dzpudWxsLGg6bnVsbCxmaWxsOmBkYXJrZW5MZXNzYCxzdHJva2U6ITEsZXh0cnVzaW9uT2s6ITEsY21kczpbW2BtYCxgeDRgLGBjaDJgXSxbYGFgLGBjaDJgLGBjaDJgLGAwYCxgY2Q0YF0sW2BhYCxgY2g0YCxgY2g0YCxgY2Q0YCxgY2QyYF0sW2BjYF0sW2BtYCxgY2hgLGB5NGBdLFtgYWAsYGNoMmAsYGNoMmAsYDBgLGAzY2Q0YF0sW2BhYCxgY2g0YCxgY2g0YCxgM2NkNGAsYGNkMmBdLFtgY2BdXX0se3c6bnVsbCxoOm51bGwsZmlsbDpgbm9uZWAsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGNoYCxgeTNgXSxbYGxgLGBjaGAsYGNoMmBdLFtgYWAsYGNoMmAsYGNoMmAsYGNkMmAsYGNkNGBdLFtgbGAsYHg3YCxgdGBdLFtgYWAsYGNoMmAsYGNoMmAsYDNjZDRgLGBjZDJgXSxbYGxgLGB4NmAsYGNoYF0sW2BsYCxgeDZgLGB5NGBdLFtgYWAsYGNoMmAsYGNoMmAsYDBgLGBjZDRgXSxbYGxgLGBjaDJgLGBiYF0sW2BhYCxgY2gyYCxgY2gyYCxgY2Q0YCxgY2QyYF0sW2BjYF0sW2BtYCxgeDNgLGB0YF0sW2BhYCxgY2gyYCxgY2gyYCxgM2NkNGAsYGNkMmBdLFtgYWAsYGNoNGAsYGNoNGAsYGNkNGAsYGNkMmBdLFtgbGAsYHg0YCxgY2gyYF0sW2BtYCxgeDZgLGBjaGBdLFtgbGAsYHgzYCxgY2hgXSxbYG1gLGBjaDJgLGB5M2BdLFtgYWAsYGNoNGAsYGNoNGAsYDNjZDRgLGBjZDJgXSxbYGxgLGBjaGAsYHk0YF0sW2BtYCxgY2gyYCxgYmBdLFtgYWAsYGNoMmAsYGNoMmAsYGNkNGAsYC01NDAwMDAwYF0sW2BsYCxgY2hgLGB5M2BdXX1dfSwkcD17YWRqOltbYGFkajFgLGB2YWwgMTI1MDBgXSxbYGFkajJgLGB2YWwgMGBdXSxnZDpbW2BhMWAsYHBpbiAwIGFkajEgMjAwMDBgXSxbYGEyYCxgcGluIC0xMDAwMCBhZGoyIDEwMDAwYF0sW2B5MWAsYCovIGggYTEgMTAwMDAwYF0sW2BkeTJgLGAqLyB5MSAxMCAzYF0sW2B5MmAsYCstIHkxIDAgZHkyYF0sW2B5M2AsYCstIHkxIGR5MiAwYF0sW2B5NGAsYCstIGIgMCB5MWBdLFtgeTVgLGArLSB5NCAwIGR5MmBdLFtgeTZgLGArLSB5NCBkeTIgMGBdLFtgZHgxYCxgKi8gdyBhMiAxMDAwMDBgXSxbYG9mMmAsYCovIHcgYTIgNTAwMDBgXSxbYHgxYCxgYWJzIGR4MWBdLFtgZHgyYCxgPzogb2YyIDAgb2YyYF0sW2B4MmAsYCstIGwgMCBkeDJgXSxbYGR4NWAsYD86IG9mMiBvZjIgMGBdLFtgeDVgLGArLSByIDAgZHg1YF0sW2BkeDNgLGArLyBkeDIgeDUgM2BdLFtgeDNgLGArLSB4MiBkeDMgMGBdLFtgeDRgLGArLyB4MyB4NSAyYF0sW2B4NmAsYCstIGwgZHg1IDBgXSxbYHgxMGAsYCstIHIgZHgyIDBgXSxbYHg3YCxgKy0geDYgZHgzIDBgXSxbYHg4YCxgKy8geDcgeDEwIDJgXSxbYHg5YCxgKy0gciAwIHgxYF0sW2B4QWRqYCxgKy0gaGMgZHgxIDBgXSxbYHhBZGoyYCxgKy0gaGMgMCBkeDFgXSxbYGlsYCxgbWF4IHgyIHg2YF0sW2BpcmAsYG1pbiB4NSB4MTBgXSxbYGl0YCxgKi8gaCBhMSA1MDAwMGBdLFtgaWJgLGArLSBiIDAgaXRgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeDJgLGB5MWBdLFtgQ2AsYHgzYCxgeTJgLGB4NGAsYHkzYCxgeDVgLGB5MWBdLFtgbGAsYHgxMGAsYHk0YF0sW2BDYCxgeDhgLGB5NmAsYHg3YCxgeTVgLGB4NmAsYHk0YF0sW2BjYF1dfV19LGVtPXthZGo6W1tgYWRqMWAsYHZhbCAtMjA4MzNgXSxbYGFkajJgLGB2YWwgNjI1MDBgXV0sZ2Q6W1tgZHhQb3NgLGAqLyB3IGFkajEgMTAwMDAwYF0sW2BkeVBvc2AsYCovIGggYWRqMiAxMDAwMDBgXSxbYHhQb3NgLGArLSBoYyBkeFBvcyAwYF0sW2B5UG9zYCxgKy0gdmMgZHlQb3MgMGBdLFtgc2R4YCxgKi8gZHhQb3MgaCAxYF0sW2BzZHlgLGAqLyBkeVBvcyB3IDFgXSxbYHBhbmdgLGBhdDIgc2R4IHNkeWBdLFtgc3RBbmdgLGArLSBwYW5nIDY2MDAwMCAwYF0sW2BlbkFuZ2AsYCstIHBhbmcgMCA2NjAwMDBgXSxbYGR4MWAsYGNvcyB3ZDIgc3RBbmdgXSxbYGR5MWAsYHNpbiBoZDIgc3RBbmdgXSxbYHgxYCxgKy0gaGMgZHgxIDBgXSxbYHkxYCxgKy0gdmMgZHkxIDBgXSxbYGR4MmAsYGNvcyB3ZDIgZW5BbmdgXSxbYGR5MmAsYHNpbiBoZDIgZW5BbmdgXSxbYHgyYCxgKy0gaGMgZHgyIDBgXSxbYHkyYCxgKy0gdmMgZHkyIDBgXSxbYHN0QW5nMWAsYGF0MiBkeDEgZHkxYF0sW2BlbkFuZzFgLGBhdDIgZHgyIGR5MmBdLFtgc3dBbmcxYCxgKy0gZW5BbmcxIDAgc3RBbmcxYF0sW2Bzd0FuZzJgLGArLSBzd0FuZzEgMjE2MDAwMDAgMGBdLFtgc3dBbmdgLGA/OiBzd0FuZzEgc3dBbmcxIHN3QW5nMmBdLFtgaWR4YCxgY29zIHdkMiAyNzAwMDAwYF0sW2BpZHlgLGBzaW4gaGQyIDI3MDAwMDBgXSxbYGlsYCxgKy0gaGMgMCBpZHhgXSxbYGlyYCxgKy0gaGMgaWR4IDBgXSxbYGl0YCxgKy0gdmMgMCBpZHlgXSxbYGliYCxgKy0gdmMgaWR5IDBgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgeFBvc2AsYHlQb3NgXSxbYGxgLGB4MWAsYHkxYF0sW2BhYCxgd2QyYCxgaGQyYCxgc3RBbmcxYCxgc3dBbmdgXSxbYGNgXV19XX0sdG09e2FkajpbW2BhZGoxYCxgdmFsIC0yMDgzM2BdLFtgYWRqMmAsYHZhbCA2MjUwMGBdXSxnZDpbW2BkeFBvc2AsYCovIHcgYWRqMSAxMDAwMDBgXSxbYGR5UG9zYCxgKi8gaCBhZGoyIDEwMDAwMGBdLFtgeFBvc2AsYCstIGhjIGR4UG9zIDBgXSxbYHlQb3NgLGArLSB2YyBkeVBvcyAwYF0sW2BkeGAsYCstIHhQb3MgMCBoY2BdLFtgZHlgLGArLSB5UG9zIDAgdmNgXSxbYGRxYCxgKi8gZHhQb3MgaCB3YF0sW2BhZHlgLGBhYnMgZHlQb3NgXSxbYGFkcWAsYGFicyBkcWBdLFtgZHpgLGArLSBhZHkgMCBhZHFgXSxbYHhnMWAsYD86IGR4UG9zIDcgMmBdLFtgeGcyYCxgPzogZHhQb3MgMTAgNWBdLFtgeDFgLGAqLyB3IHhnMSAxMmBdLFtgeDJgLGAqLyB3IHhnMiAxMmBdLFtgeWcxYCxgPzogZHlQb3MgNyAyYF0sW2B5ZzJgLGA/OiBkeVBvcyAxMCA1YF0sW2B5MWAsYCovIGggeWcxIDEyYF0sW2B5MmAsYCovIGggeWcyIDEyYF0sW2B0MWAsYD86IGR4UG9zIGwgeFBvc2BdLFtgeGxgLGA/OiBkeiBsIHQxYF0sW2B0MmAsYD86IGR5UG9zIHgxIHhQb3NgXSxbYHh0YCxgPzogZHogdDIgeDFgXSxbYHQzYCxgPzogZHhQb3MgeFBvcyByYF0sW2B4cmAsYD86IGR6IHIgdDNgXSxbYHQ0YCxgPzogZHlQb3MgeFBvcyB4MWBdLFtgeGJgLGA/OiBkeiB0NCB4MWBdLFtgdDVgLGA/OiBkeFBvcyB5MSB5UG9zYF0sW2B5bGAsYD86IGR6IHkxIHQ1YF0sW2B0NmAsYD86IGR5UG9zIHQgeVBvc2BdLFtgeXRgLGA/OiBkeiB0NiB0YF0sW2B0N2AsYD86IGR4UG9zIHlQb3MgeTFgXSxbYHlyYCxgPzogZHogeTEgdDdgXSxbYHQ4YCxgPzogZHlQb3MgeVBvcyBiYF0sW2B5YmAsYD86IGR6IHQ4IGJgXV0scGF0aHM6W3t3Om51bGwsaDpudWxsLGZpbGw6bnVsbCxzdHJva2U6ITAsZXh0cnVzaW9uT2s6ITAsY21kczpbW2BtYCxgbGAsYHRgXSxbYGxgLGB4MWAsYHRgXSxbYGxgLGB4dGAsYHl0YF0sW2BsYCxgeDJgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgeTFgXSxbYGxgLGB4cmAsYHlyYF0sW2BsYCxgcmAsYHkyYF0sW2BsYCxgcmAsYGJgXSxbYGxgLGB4MmAsYGJgXSxbYGxgLGB4YmAsYHliYF0sW2BsYCxgeDFgLGBiYF0sW2BsYCxgbGAsYGJgXSxbYGxgLGBsYCxgeTJgXSxbYGxgLGB4bGAsYHlsYF0sW2BsYCxgbGAsYHkxYF0sW2BjYF1dfV19LG5tPXthZGo6W1tgYWRqMWAsYHZhbCAtMjA4MzNgXSxbYGFkajJgLGB2YWwgNjI1MDBgXSxbYGFkajNgLGB2YWwgMTY2NjdgXV0sZ2Q6W1tgZHhQb3NgLGAqLyB3IGFkajEgMTAwMDAwYF0sW2BkeVBvc2AsYCovIGggYWRqMiAxMDAwMDBgXSxbYHhQb3NgLGArLSBoYyBkeFBvcyAwYF0sW2B5UG9zYCxgKy0gdmMgZHlQb3MgMGBdLFtgZHFgLGAqLyBkeFBvcyBoIHdgXSxbYGFkeWAsYGFicyBkeVBvc2BdLFtgYWRxYCxgYWJzIGRxYF0sW2BkemAsYCstIGFkeSAwIGFkcWBdLFtgeGcxYCxgPzogZHhQb3MgNyAyYF0sW2B4ZzJgLGA/OiBkeFBvcyAxMCA1YF0sW2B4MWAsYCovIHcgeGcxIDEyYF0sW2B4MmAsYCovIHcgeGcyIDEyYF0sW2B5ZzFgLGA/OiBkeVBvcyA3IDJgXSxbYHlnMmAsYD86IGR5UG9zIDEwIDVgXSxbYHkxYCxgKi8gaCB5ZzEgMTJgXSxbYHkyYCxgKi8gaCB5ZzIgMTJgXSxbYHQxYCxgPzogZHhQb3MgbCB4UG9zYF0sW2B4bGAsYD86IGR6IGwgdDFgXSxbYHQyYCxgPzogZHlQb3MgeDEgeFBvc2BdLFtgeHRgLGA/OiBkeiB0MiB4MWBdLFtgdDNgLGA/OiBkeFBvcyB4UG9zIHJgXSxbYHhyYCxgPzogZHogciB0M2BdLFtgdDRgLGA/OiBkeVBvcyB4UG9zIHgxYF0sW2B4YmAsYD86IGR6IHQ0IHgxYF0sW2B0NWAsYD86IGR4UG9zIHkxIHlQb3NgXSxbYHlsYCxgPzogZHogeTEgdDVgXSxbYHQ2YCxgPzogZHlQb3MgdCB5UG9zYF0sW2B5dGAsYD86IGR6IHQ2IHRgXSxbYHQ3YCxgPzogZHhQb3MgeVBvcyB5MWBdLFtgeXJgLGA/OiBkeiB5MSB0N2BdLFtgdDhgLGA/OiBkeVBvcyB5UG9zIGJgXSxbYHliYCxgPzogZHogdDggYmBdLFtgdTFgLGAqLyBzcyBhZGozIDEwMDAwMGBdLFtgdTJgLGArLSByIDAgdTFgXSxbYHYyYCxgKy0gYiAwIHUxYF0sW2BpbGAsYCovIHUxIDI5Mjg5IDEwMDAwMGBdLFtgaXJgLGArLSByIDAgaWxgXSxbYGliYCxgKy0gYiAwIGlsYF1dLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiEwLGNtZHM6W1tgbWAsYGxgLGB1MWBdLFtgYWAsYHUxYCxgdTFgLGBjZDJgLGBjZDRgXSxbYGxgLGB4MWAsYHRgXSxbYGxgLGB4dGAsYHl0YF0sW2BsYCxgeDJgLGB0YF0sW2BsYCxgdTJgLGB0YF0sW2BhYCxgdTFgLGB1MWAsYDNjZDRgLGBjZDRgXSxbYGxgLGByYCxgeTFgXSxbYGxgLGB4cmAsYHlyYF0sW2BsYCxgcmAsYHkyYF0sW2BsYCxgcmAsYHYyYF0sW2BhYCxgdTFgLGB1MWAsYDBgLGBjZDRgXSxbYGxgLGB4MmAsYGJgXSxbYGxgLGB4YmAsYHliYF0sW2BsYCxgeDFgLGBiYF0sW2BsYCxgdTFgLGBiYF0sW2BhYCxgdTFgLGB1MWAsYGNkNGAsYGNkNGBdLFtgbGAsYGxgLGB5MmBdLFtgbGAsYHhsYCxgeWxgXSxbYGxgLGBsYCxgeTFgXSxbYGNgXV19XX0scm09e2FjY2VudGJvcmRlcmNhbGxvdXQxOk11LGFjY2VudGJvcmRlcmNhbGxvdXQyOk51LGFjY2VudGJvcmRlcmNhbGxvdXQzOlB1LGFjY2VudGNhbGxvdXQxOkZ1LGFjY2VudGNhbGxvdXQyOkl1LGFjY2VudGNhbGxvdXQzOkx1LGFjdGlvbmJ1dHRvbmJhY2twcmV2aW91czpSdSxhY3Rpb25idXR0b25iZWdpbm5pbmc6enUsYWN0aW9uYnV0dG9uYmxhbms6QnUsYWN0aW9uYnV0dG9uZG9jdW1lbnQ6VnUsYWN0aW9uYnV0dG9uZW5kOkh1LGFjdGlvbmJ1dHRvbmZvcndhcmRuZXh0OlV1LGFjdGlvbmJ1dHRvbmhlbHA6V3UsYWN0aW9uYnV0dG9uaG9tZTpHdSxhY3Rpb25idXR0b25pbmZvcm1hdGlvbjpLdSxhY3Rpb25idXR0b25tb3ZpZTpxdSxhY3Rpb25idXR0b25yZXR1cm46SnUsYWN0aW9uYnV0dG9uc291bmQ6WXUsYXJjOlh1LGJlbnRhcnJvdzpadSxiZW50Y29ubmVjdG9yMjpRdSxiZW50Y29ubmVjdG9yMzokdSxiZW50Y29ubmVjdG9yNDplZCxiZW50Y29ubmVjdG9yNTp0ZCxiZW50dXBhcnJvdzpuZCxiZXZlbDpyZCxibG9ja2FyYzppZCxib3JkZXJjYWxsb3V0MTphZCxib3JkZXJjYWxsb3V0MjpvZCxib3JkZXJjYWxsb3V0MzpzZCxicmFjZXBhaXI6Y2QsYnJhY2tldHBhaXI6bGQsY2FsbG91dDE6dWQsY2FsbG91dDI6ZGQsY2FsbG91dDM6ZmQsY2FuOnBkLGNoYXJ0cGx1czptZCxjaGFydHN0YXI6aGQsY2hhcnR4OmdkLGNoZXZyb246X2QsY2hvcmQ6dmQsY2lyY3VsYXJhcnJvdzp5ZCxjbG91ZDpiZCxjbG91ZGNhbGxvdXQ6eGQsY29ybmVyOlNkLGNvcm5lcnRhYnM6Q2QsY3ViZTp3ZCxjdXJ2ZWRjb25uZWN0b3IyOlRkLGN1cnZlZGNvbm5lY3RvcjM6RWQsY3VydmVkY29ubmVjdG9yNDpEZCxjdXJ2ZWRjb25uZWN0b3I1Ok9kLGN1cnZlZGRvd25hcnJvdzprZCxjdXJ2ZWRsZWZ0YXJyb3c6QWQsY3VydmVkcmlnaHRhcnJvdzpqZCxjdXJ2ZWR1cGFycm93Ok1kLGRlY2Fnb246TmQsZGlhZ3N0cmlwZTpQZCxkaWFtb25kOkZkLGRvZGVjYWdvbjpJZCxkb251dDpMZCxkb3VibGV3YXZlOlJkLGRvd25hcnJvdzp6ZCxkb3duYXJyb3djYWxsb3V0OkJkLGVsbGlwc2U6VmQsZWxsaXBzZXJpYmJvbjpIZCxlbGxpcHNlcmliYm9uMjpVZCxmbG93Y2hhcnRhbHRlcm5hdGVwcm9jZXNzOldkLGZsb3djaGFydGNvbGxhdGU6R2QsZmxvd2NoYXJ0Y29ubmVjdG9yOktkLGZsb3djaGFydGRlY2lzaW9uOnFkLGZsb3djaGFydGRlbGF5OkpkLGZsb3djaGFydGRpc3BsYXk6WWQsZmxvd2NoYXJ0ZG9jdW1lbnQ6WGQsZmxvd2NoYXJ0ZXh0cmFjdDpaZCxmbG93Y2hhcnRpbnB1dG91dHB1dDpRZCxmbG93Y2hhcnRpbnRlcm5hbHN0b3JhZ2U6JGQsZmxvd2NoYXJ0bWFnbmV0aWNkaXNrOmVmLGZsb3djaGFydG1hZ25ldGljZHJ1bTp0ZixmbG93Y2hhcnRtYWduZXRpY3RhcGU6bmYsZmxvd2NoYXJ0bWFudWFsaW5wdXQ6cmYsZmxvd2NoYXJ0bWFudWFsb3BlcmF0aW9uOmFmLGZsb3djaGFydG1lcmdlOm9mLGZsb3djaGFydG11bHRpZG9jdW1lbnQ6c2YsZmxvd2NoYXJ0b2ZmbGluZXN0b3JhZ2U6Y2YsZmxvd2NoYXJ0b2ZmcGFnZWNvbm5lY3RvcjpsZixmbG93Y2hhcnRvbmxpbmVzdG9yYWdlOnVmLGZsb3djaGFydG9yOmRmLGZsb3djaGFydHByZWRlZmluZWRwcm9jZXNzOmZmLGZsb3djaGFydHByZXBhcmF0aW9uOnBmLGZsb3djaGFydHByb2Nlc3M6bWYsZmxvd2NoYXJ0cHVuY2hlZGNhcmQ6aGYsZmxvd2NoYXJ0cHVuY2hlZHRhcGU6Z2YsZmxvd2NoYXJ0c29ydDpfZixmbG93Y2hhcnRzdW1taW5nanVuY3Rpb246dmYsZmxvd2NoYXJ0dGVybWluYXRvcjp5Zixmb2xkZWRjb3JuZXI6YmYsZnJhbWU6eGYsZnVubmVsOlNmLGdlYXI2OkNmLGdlYXI5OndmLGhhbGZmcmFtZTpUZixoZWFydDpFZixoZXB0YWdvbjpEZixoZXhhZ29uOk9mLGhvbWVwbGF0ZTprZixob3Jpem9udGFsc2Nyb2xsOkFmLGlycmVndWxhcnNlYWwxOmpmLGlycmVndWxhcnNlYWwyOk1mLGxlZnRhcnJvdzpOZixsZWZ0YXJyb3djYWxsb3V0OlBmLGxlZnRicmFjZTpGZixsZWZ0YnJhY2tldDpJZixsZWZ0Y2lyY3VsYXJhcnJvdzpMZixsZWZ0cmlnaHRhcnJvdzpSZixsZWZ0cmlnaHRhcnJvd2NhbGxvdXQ6emYsbGVmdHJpZ2h0Y2lyY3VsYXJhcnJvdzpCZixsZWZ0cmlnaHRyaWJib246VmYsbGVmdHJpZ2h0dXBhcnJvdzpIZixsZWZ0dXBhcnJvdzpVZixsaWdodG5pbmdib2x0OldmLGxpbmU6R2YsbGluZWludjpLZixtYXRoZGl2aWRlOnFmLG1hdGhlcXVhbDpKZixtYXRobWludXM6WWYsbWF0aG11bHRpcGx5OlhmLG1hdGhub3RlcXVhbDpaZixtYXRocGx1czpRZixtb29uOiRmLG5vbmlzb3NjZWxlc3RyYXBlem9pZDplcCxub3Ntb2tpbmc6dHAsbm90Y2hlZHJpZ2h0YXJyb3c6bnAsb2N0YWdvbjpycCxwYXJhbGxlbG9ncmFtOmlwLHBlbnRhZ29uOmFwLHBpZTpvcCxwaWV3ZWRnZTpzcCxwbGFxdWU6Y3AscGxhcXVldGFiczpscCxwbHVzOnVwLHF1YWRhcnJvdzpkcCxxdWFkYXJyb3djYWxsb3V0OmZwLHJpYmJvbjpwcCxyaWJib24yOm1wLHJpZ2h0YXJyb3c6aHAscmlnaHRhcnJvd2NhbGxvdXQ6Z3AscmlnaHRicmFjZTpfcCxyaWdodGJyYWNrZXQ6dnAscm91bmQxcmVjdDp5cCxyb3VuZDJkaWFncmVjdDpicCxyb3VuZDJzYW1lcmVjdDp4cCxyb3VuZHJlY3Q6U3AscnR0cmlhbmdsZTpDcCxzbWlsZXlmYWNlOndwLHNuaXAxcmVjdDpUcCxzbmlwMmRpYWdyZWN0OkVwLHNuaXAyc2FtZXJlY3Q6RHAsc25pcHJvdW5kcmVjdDpPcCxzcXVhcmV0YWJzOmtwLHN0YXIxMDpBcCxzdGFyMTI6anAsc3RhcjE2Ok1wLHN0YXIyNDpOcCxzdGFyMzI6UHAsc3RhcjQ6RnAsc3RhcjU6SXAsc3RhcjY6THAsc3Rhcjc6UnAsc3Rhcjg6enAsc3RyYWlnaHRjb25uZWN0b3IxOkJwLHN0cmlwZWRyaWdodGFycm93OlZwLHN1bjpIcCxzd29vc2hhcnJvdzpVcCx0ZWFyZHJvcDpXcCx0cmFwZXpvaWQ6R3AsdHJpYW5nbGU6S3AsdXBhcnJvd2NhbGxvdXQ6cXAsdXBkb3duYXJyb3c6SnAsdXBhcnJvdzpZcCx1cGRvd25hcnJvd2NhbGxvdXQ6WHAsdXR1cm5hcnJvdzpacCx2ZXJ0aWNhbHNjcm9sbDpRcCx3YXZlOiRwLHdlZGdlZWxsaXBzZWNhbGxvdXQ6ZW0sd2VkZ2VyZWN0Y2FsbG91dDp0bSx3ZWRnZXJvdW5kcmVjdGNhbGxvdXQ6bm19fSkpO2Z1bmN0aW9uIGFtKGUpe2xldCB0PWUudHJpbSgpLnNwbGl0KC9ccysvKTtyZXR1cm57b3A6dFswXSxhcmdUb2tlbnM6dC5zbGljZSgxKX19ZnVuY3Rpb24gb20oZSx0LG4pe2xldHt3OnIsaDppLGFkajphfT1lLG89TWF0aC5taW4ocixpKSxzPU1hdGgubWF4KHIsaSksYz1PYmplY3QuY3JlYXRlKG51bGwpO09iamVjdC5hc3NpZ24oYyx7dzpyLGg6aSxsOjAsdDowLHIsYjppLGhjOnIvMix2YzppLzIsd2QyOnIvMix3ZDM6ci8zLHdkNDpyLzQsd2Q1OnIvNSx3ZDY6ci82LHdkODpyLzgsd2QxMDpyLzEwLHdkMTI6ci8xMix3ZDE2OnIvMTYsd2QzMjpyLzMyLGhkMjppLzIsaGQzOmkvMyxoZDQ6aS80LGhkNTppLzUsaGQ2OmkvNixoZDg6aS84LGhkMTA6aS8xMCxoZDEyOmkvMTIsaGQxNjppLzE2LGhkMzI6aS8zMixzczpvLHNzZDI6by8yLHNzZDQ6by80LHNzZDY6by82LHNzZDg6by84LHNzZDE2Om8vMTYsc3NkMzI6by8zMixsczpzLGxzZDI6cy8yLGxzZDQ6cy80LGxzZDY6cy82LGxzZDg6cy84LGxzZDE2OnMvMTYsbHNkMzI6cy8zMixjZDpzbSxjZDI6c20vMixjZDQ6c20vNCxjZDg6c20vOCwiM2NkNCI6MypzbS80LCIzY2Q4IjozKnNtLzgsIjVjZDgiOjUqc20vOCwiN2NkOCI6NypzbS84fSksdC5mb3JFYWNoKChbZSx0XSxuKT0+e2xldCByPWFbbl07Y1tlXT10eXBlb2Ygcj09YG51bWJlcmA/cjp1KHQpLGU9PT1gYWRqYCYmKGMuYWRqMT1jLmFkaiksZT09PWBhZGoxYCYmKGMuYWRqPWMuYWRqMSl9KTtmb3IobGV0W2UsdF1vZiBuKWNbZV09dSh0KTtyZXR1cm57djplPT57aWYoZSBpbiBjKXJldHVybiBjW2VdO3Rocm93IEVycm9yKGBwcmVzZXQtc2hhcGU6IHVua25vd24gbmFtZSAiJHtlfSJgKX0sZm1sYTp1LHJlc29sdmU6bH07ZnVuY3Rpb24gbChlKXtpZihlIGluIGMpcmV0dXJuIGNbZV07bGV0IHQ9TnVtYmVyKGUpO2lmKE51bWJlci5pc0Zpbml0ZSh0KSlyZXR1cm4gdDt0aHJvdyBFcnJvcihgcHJlc2V0LXNoYXBlOiBjYW5ub3QgcmVzb2x2ZSAiJHtlfSJgKX1mdW5jdGlvbiB1KGUpe2xldCB0PWUuYXJnVG9rZW5zLm1hcChsKTtyZXR1cm4gZChlLm9wLHQsZSl9ZnVuY3Rpb24gZChlLHQsbil7c3dpdGNoKGUpe2Nhc2VgdmFsYDpyZXR1cm4gdFswXTtjYXNlYCovYDpyZXR1cm4gdFswXSp0WzFdL3RbMl07Y2FzZWArLWA6cmV0dXJuIHRbMF0rdFsxXS10WzJdO2Nhc2VgKy9gOnJldHVybih0WzBdK3RbMV0pL3RbMl07Y2FzZWA/OmA6cmV0dXJuIHRbMF0+MD90WzFdOnRbMl07Y2FzZWBhYnNgOnJldHVybiBNYXRoLmFicyh0WzBdKTtjYXNlYG1pbmA6cmV0dXJuIE1hdGgubWluKHRbMF0sdFsxXSk7Y2FzZWBtYXhgOnJldHVybiBNYXRoLm1heCh0WzBdLHRbMV0pO2Nhc2VgcGluYDpyZXR1cm4gdFsxXTx0WzBdP3RbMF06dFsxXT50WzJdP3RbMl06dFsxXTtjYXNlYHNxcnRgOnJldHVybiBNYXRoLnNxcnQoTWF0aC5tYXgoMCx0WzBdKSk7Y2FzZWBtb2RgOnJldHVybiBNYXRoLnNxcnQodFswXSp0WzBdK3RbMV0qdFsxXSt0WzJdKnRbMl0pO2Nhc2Vgc2luYDpyZXR1cm4gdFswXSpNYXRoLnNpbih0WzFdKmNtKTtjYXNlYGNvc2A6cmV0dXJuIHRbMF0qTWF0aC5jb3ModFsxXSpjbSk7Y2FzZWB0YW5gOnJldHVybiB0WzBdKk1hdGgudGFuKHRbMV0qY20pO2Nhc2VgYXQyYDpyZXR1cm4gTWF0aC5hdGFuMih0WzFdLHRbMF0pL2NtO2Nhc2VgY2F0MmA6cmV0dXJuIHRbMF0qTWF0aC5jb3MoTWF0aC5hdGFuMih0WzJdLHRbMV0pKTtjYXNlYHNhdDJgOnJldHVybiB0WzBdKk1hdGguc2luKE1hdGguYXRhbjIodFsyXSx0WzFdKSk7ZGVmYXVsdDp0aHJvdyBFcnJvcihgcHJlc2V0LXNoYXBlOiB1bmtub3duIG9wZXJhdG9yICIke2V9IiBpbiAiJHtbbi5vcCwuLi5uLmFyZ1Rva2Vuc10uam9pbihgIGApfSJgKX19fXZhciBzbSxjbSxsbT10KCgoKT0+e3NtPTIxNmU1LGNtPU1hdGguUEkqMi9zbX0pKTtmdW5jdGlvbiB1bShlLHQsbixyLGksYSxvKXtsZXQgcz10Lnc9PW51bGw/MTphL3QudyxjPXQuaD09bnVsbD8xOm8vdC5oLGw9ZT0+citlKnMsdT1lPT5pK2UqYyxkPTAsZj0wO2ZvcihsZXQgciBvZiB0LmNtZHMpc3dpdGNoKHJbMF0pe2Nhc2VgbWA6e2xldCB0PWwobi5yZXNvbHZlKHJbMV0pKSxpPXUobi5yZXNvbHZlKHJbMl0pKTtlLm1vdmVUbyh0LGkpLGQ9dCxmPWk7YnJlYWt9Y2FzZWBsYDp7bGV0IHQ9bChuLnJlc29sdmUoclsxXSkpLGk9dShuLnJlc29sdmUoclsyXSkpO2UubGluZVRvKHQsaSksZD10LGY9aTticmVha31jYXNlYENgOntsZXQgdD1sKG4ucmVzb2x2ZShyWzFdKSksaT11KG4ucmVzb2x2ZShyWzJdKSksYT1sKG4ucmVzb2x2ZShyWzNdKSksbz11KG4ucmVzb2x2ZShyWzRdKSkscz1sKG4ucmVzb2x2ZShyWzVdKSksYz11KG4ucmVzb2x2ZShyWzZdKSk7ZS5iZXppZXJDdXJ2ZVRvKHQsaSxhLG8scyxjKSxkPXMsZj1jO2JyZWFrfWNhc2VgUWA6e2xldCB0PWwobi5yZXNvbHZlKHJbMV0pKSxpPXUobi5yZXNvbHZlKHJbMl0pKSxhPWwobi5yZXNvbHZlKHJbM10pKSxvPXUobi5yZXNvbHZlKHJbNF0pKTtlLnF1YWRyYXRpY0N1cnZlVG8odCxpLGEsbyksZD1hLGY9bzticmVha31jYXNlYGFgOntsZXQgdD1uLnJlc29sdmUoclsxXSksaT1uLnJlc29sdmUoclsyXSksYT10KnMsbz1pKmMsbD1uLnJlc29sdmUoclszXSkqZG0sdT1uLnJlc29sdmUocls0XSkqZG0scD1NYXRoLlBJKjIsbT1lPT5NYXRoLmF0YW4yKHQqTWF0aC5zaW4oZSksaSpNYXRoLmNvcyhlKSksaD1tKGwpLGc9TWF0aC50cnVuYyh1L3ApLF89dS1nKnAsdj1tKGwrXyktaDtfPjAmJnY8MD92Kz1wOl88MCYmdj4wJiYodi09cCk7bGV0IHk9aCt2K2cqcCxiPWQtYSpNYXRoLmNvcyhoKSx4PWYtbypNYXRoLnNpbihoKTtNYXRoLmFicyhhKT4xZS02JiZNYXRoLmFicyhvKT4xZS02JiYoZS5lbGxpcHNlKGIseCxNYXRoLmFicyhhKSxNYXRoLmFicyhvKSwwLGgseSx1PDApLGQ9YithKk1hdGguY29zKHkpLGY9eCtvKk1hdGguc2luKHkpKTticmVha31jYXNlYGNgOmUuY2xvc2VQYXRoKCk7YnJlYWt9fXZhciBkbSxmbT10KCgoKT0+e2RtPU1hdGguUEkqMi8yMTZlNX0pKTtmdW5jdGlvbiBwbShlKXtsZXQgdD1ibS5nZXQoZSk7cmV0dXJuIHR8fCh0PXthZGo6ZS5hZGoubWFwKChbZSx0XSk9PltlLGFtKHQpXSksZ2Q6ZS5nZC5tYXAoKFtlLHRdKT0+W2UsYW0odCldKX0sYm0uc2V0KGUsdCkpLHR9ZnVuY3Rpb24gbW0oZSx0LG4scil7bGV0IGk9cG0oZSk7cmV0dXJuIG9tKHt3OnQsaDpuLGFkajpyfSxpLmFkaixpLmdkKX1mdW5jdGlvbiBobShlLHQsbil7bGV0IHI9ZVtuXTtpZih0eXBlb2Ygcj09YG51bWJlcmApcmV0dXJuIHI7bGV0IGk9dC5hZGpbbl07cmV0dXJuIGkmJk51bWJlcihpWzFdLnJlcGxhY2UoL152YWxccysvLGBgKSl8fDB9ZnVuY3Rpb24gZ20oZSx0LG4scil7bGV0IGk9eW1bZV07aWYoIWkpcmV0dXJuIG51bGw7aWYoZSBpbiB4bSl7bGV0IGE9aG0ocixpLDApLG89aG0ocixpLDEpLHM9dC8yK3QqYS8xZTUsYz1uLzIrbipvLzFlNTtpZihzPj0wJiZzPD10JiZjPj0wJiZjPD1uKXtsZXQgdD14bVtlXTt0PT09YHJvdW5kcmVjdGA/KGk9eW0ucm91bmRyZWN0LHI9W2htKHIseW1bZV0sMildKTp0JiZ5bVt0XT8oaT15bVt0XSxyPVtdKTooaT1TbSxyPVtdKX19cmV0dXJue2RlZjppLGFkajpyfX1mdW5jdGlvbiBfbShlLHQsbixyLGksYSxvLHMsYyxsLHUpe2xldCBkPWdtKHQudG9Mb3dlckNhc2UoKSxpLGEsbyk7aWYoIWQpcmV0dXJuITE7bGV0e2RlZjpmfT1kO289ZC5hZGo7bGV0IHA9bW0oZixpLGEsbyksbT0hMSxoPWYucGF0aHMubGVuZ3RoLTE7Zm9yKGxldCB0PTA7dDxmLnBhdGhzLmxlbmd0aDt0Kyspe2xldCBvPWYucGF0aHNbdF07ZS5iZWdpblBhdGgoKSx1bShlLG8scCxuLHIsaSxhKTtsZXQgZD1vLmZpbGw7aWYoZCE9PWBub25lYCYmcyE9bnVsbCl7ZS5zYXZlKCksZS5maWxsU3R5bGU9cyxlLmZpbGwoKTtsZXQgdD12bShkKTt0JiYoZS5maWxsU3R5bGU9dCxlLmZpbGwoKSksZS5yZXN0b3JlKCksbXx8PShsKCksITApfWlmKG8uc3Ryb2tlJiZjKXtsZXQgZT10PT09aCYmKG8uZmlsbD09PWBub25lYHx8by5maWxsPT1udWxsKTt1Py5za2lwVHJhaWxpbmdTdHJva2UmJmV8fGMoKX19cmV0dXJuITB9ZnVuY3Rpb24gdm0oZSl7c3dpdGNoKGUpe2Nhc2VgbGlnaHRlbmA6cmV0dXJuYHJnYmEoMjU1LDI1NSwyNTUsMC4zMClgO2Nhc2VgbGlnaHRlbkxlc3NgOnJldHVybmByZ2JhKDI1NSwyNTUsMjU1LDAuMTUpYDtjYXNlYGRhcmtlbmA6cmV0dXJuYHJnYmEoMCwwLDAsMC4zMClgO2Nhc2VgZGFya2VuTGVzc2A6cmV0dXJuYHJnYmEoMCwwLDAsMC4xNSlgO2RlZmF1bHQ6cmV0dXJuIG51bGx9fXZhciB5bSxibSx4bSxTbSxDbT10KCgoKT0+e2ltKCksbG0oKSxmbSgpLHltPXJtLGJtPW5ldyBXZWFrTWFwLHhtPXt3ZWRnZXJvdW5kcmVjdGNhbGxvdXQ6YHJvdW5kcmVjdGAsd2VkZ2VlbGxpcHNlY2FsbG91dDpgZWxsaXBzZWAsd2VkZ2VyZWN0Y2FsbG91dDpudWxsfSxTbT17YWRqOltdLGdkOltdLHBhdGhzOlt7dzpudWxsLGg6bnVsbCxmaWxsOm51bGwsc3Ryb2tlOiEwLGV4dHJ1c2lvbk9rOiExLGNtZHM6W1tgbWAsYGxgLGB0YF0sW2BsYCxgcmAsYHRgXSxbYGxgLGByYCxgYmBdLFtgbGAsYGxgLGBiYF0sW2BjYF1dfV19fSkpO2Z1bmN0aW9uIHdtKGUsdCl7cmV0dXJue20xMTplLm0xMSp0Lm0xMStlLm0yMSp0Lm0xMixtMTI6ZS5tMTIqdC5tMTErZS5tMjIqdC5tMTIsbTIxOmUubTExKnQubTIxK2UubTIxKnQubTIyLG0yMjplLm0xMip0Lm0yMStlLm0yMip0Lm0yMixkeDplLm0xMSp0LmR4K2UubTIxKnQuZHkrZS5keCxkeTplLm0xMip0LmR4K2UubTIyKnQuZHkrZS5keX19ZnVuY3Rpb24gVG0oZSx0KXtpZighZS5pblBhdGgpcmV0dXJuITA7aWYoZS5wYXRoRGlzY2FyZGVkKXJldHVybiExO2xldCBuPWUucGF0aENvbW1hbmRDb3VudCt0O3JldHVybiFOdW1iZXIuaXNTYWZlSW50ZWdlcihuKXx8dDwwfHxuPmUubWF4UGF0aENvbW1hbmRzPyhlLmN0eC5iZWdpblBhdGgoKSxlLnBhdGhEaXNjYXJkZWQ9ITAsITEpOihlLnBhdGhDb21tYW5kQ291bnQ9biwhMCl9ZnVuY3Rpb24gRW0oZSx0LG4pe2xldCByPW49PT12aD80Ojg7cmV0dXJuIE1hdGgubWluKHQsTWF0aC5mbG9vcihlLnJlbWFpbmluZy9yKSl9ZnVuY3Rpb24gRG0oZSx0LG4pe3JldHVybiBlLnd0Lm0xMSp0K2Uud3QubTIxKm4rZS53dC5keH1mdW5jdGlvbiBPbShlLHQsbil7cmV0dXJuIGUud3QubTEyKnQrZS53dC5tMjIqbitlLnd0LmR5fWZ1bmN0aW9uIGttKGUpe3JldHVybiBlLndpbkV4dFg9PT0wPzE6ZS52cEV4dFgvZS53aW5FeHRYfWZ1bmN0aW9uIEFtKGUpe3JldHVybiBlLndpbkV4dFk9PT0wPzE6ZS52cEV4dFkvZS53aW5FeHRZfWZ1bmN0aW9uIGptKGUpe3JldHVybiBNYXRoLm1pbihNYXRoLmFicyhrbShlKSksTWF0aC5hYnMoQW0oZSkpKX1mdW5jdGlvbiBNbShlKXtyZXR1cm4gZS5tYXBNb2RlPT09ZmguSVNPVFJPUElDP2ttKGUpPDA/LWptKGUpOmptKGUpOmttKGUpfWZ1bmN0aW9uIE5tKGUpe3JldHVybiBlLm1hcE1vZGU9PT1maC5JU09UUk9QSUM/QW0oZSk8MD8tam0oZSk6am0oZSk6QW0oZSl9ZnVuY3Rpb24gUG0oZSx0KXtyZXR1cm4odC1lLndpbk9yZ1gpKk1tKGUpK2UudnBPcmdYfWZ1bmN0aW9uIEZtKGUsdCl7cmV0dXJuKHQtZS53aW5PcmdZKSpObShlKStlLnZwT3JnWX1mdW5jdGlvbiBJbShlLHQsbil7bGV0IHI9UG0oZSxEbShlLHQsbikpLGk9Rm0oZSxPbShlLHQsbikpO3JldHVyblsoci1lLmxlZnQpKmUuVy9lLmJvdW5kc1csKGktZS50b3ApKmUuSC9lLmJvdW5kc0hdfWZ1bmN0aW9uIExtKGUpe3JldHVybihNYXRoLmh5cG90KGUud3QubTExLGUud3QubTEyKStNYXRoLmh5cG90KGUud3QubTIxLGUud3QubTIyKSkvMn1mdW5jdGlvbiBSbShlKXtyZXR1cm4oTWF0aC5hYnMoTW0oZSkpK01hdGguYWJzKE5tKGUpKSkvMn1mdW5jdGlvbiB6bShlKXtyZXR1cm4oZS5XL2UuYm91bmRzVytlLkgvZS5ib3VuZHNIKS8yfWZ1bmN0aW9uIEJtKGUpe3JldHVybiBNYXRoLmh5cG90KGUud3QubTIxLGUud3QubTIyKX1mdW5jdGlvbiBWbShlKXtyZXR1cm4gZS5IL2UuYm91bmRzSH1mdW5jdGlvbiBIbShlLHQpe2xldCBuPXQqTG0oZSkqUm0oZSkqem0oZSk7cmV0dXJuIE1hdGgubWF4KC43NSxuKX1mdW5jdGlvbiBVbShlLHQpe2lmKGUubWFwTW9kZT10LHQ9PT1maC5URVhUKXtlLndpbk9yZ1g9MCxlLndpbk9yZ1k9MCxlLnZwT3JnWD0wLGUudnBPcmdZPTAsZS53aW5FeHRYPTEsZS53aW5FeHRZPTEsZS52cEV4dFg9MSxlLnZwRXh0WT0xO3JldHVybn1pZih0PT09ZmguQU5JU09UUk9QSUN8fHQ9PT1maC5JU09UUk9QSUN8fGUuZGV2UHhQZXJNbVg8PTB8fGUuZGV2UHhQZXJNbVk8PTApcmV0dXJuO2xldCBuPTI1LjQscj10PT09ZmguTE9NRVRSSUM/LjE6dD09PWZoLkhJTUVUUklDPy4wMTp0PT09ZmguTE9FTkdMSVNIPy4wMSpuOnQ9PT1maC5ISUVOR0xJU0g/LjAwMSpuOnQ9PT1maC5UV0lQUz9uLzE0NDA6MDtyPD0wfHwoZS53aW5PcmdYPTAsZS53aW5PcmdZPTAsZS52cE9yZ1g9MCxlLnZwT3JnWT0wLGUud2luRXh0WD0xLGUud2luRXh0WT0xLGUudnBFeHRYPXIqZS5kZXZQeFBlck1tWCxlLnZwRXh0WT0tKHIqZS5kZXZQeFBlck1tWSkpfWZ1bmN0aW9uIFdtKGUsdCl7bGV0IG49Z2hbdF07aWYobil7ZS5jdXJCcnVzaD1uO3JldHVybn1sZXQgcj1faFt0XTtpZihyKXtlLmN1clBlbj1yO3JldHVybn10PT09ZGguRENfQlJVU0gmJihlLmN1ckJydXNoPWUuY3VyQnJ1c2g/P3traW5kOmBicnVzaGAsZmlsbDpgIzAwMDAwMGB9KX1mdW5jdGlvbiBHbShlKXtsZXQgdD0wLG49MCxyPTAsaT0wO2ZvcihsZXQgYT0wO2E8ZS5kYXRhLmxlbmd0aDthKz00KWUuZGF0YVthKzNdIT09MCYmKHQrPWUuZGF0YVthXSxuKz1lLmRhdGFbYSsxXSxyKz1lLmRhdGFbYSsyXSxpKyspO2lmKGk9PT0wKXJldHVybmAjODA4MDgwYDtsZXQgYT1lPT5NYXRoLnJvdW5kKGUvaSkudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsYDBgKTtyZXR1cm5gIyR7YSh0KX0ke2Eobil9JHthKHIpfWB9ZnVuY3Rpb24gS20oZSx0LG4pe3Quc2tpcCgxNik7bGV0IHI9dC51MzIoKTtpZihyPDJ8fHI+MTA0ODU3Nnx8IWUuaW5QYXRoJiYoIWUuY3VyUGVufHxlLmN1clBlbi5zdHJva2U9PW51bGwpKXJldHVybjtsZXR7Y3R4Oml9PWUsYT1UbShlLEVtKHQscixuKSk7ZS5pblBhdGh8fGkuYmVnaW5QYXRoKCk7bGV0IG89MCxzPTA7Zm9yKGxldCBjPTA7YzxyJiYhKHQucmVtYWluaW5nPDQpO2MrKyl7bGV0W3IsbF09bih0KSxbdSxkXT1JbShlLHIsbCk7YSYmKGM9PT0wP2kubW92ZVRvKHUsZCk6aS5saW5lVG8odSxkKSksbz1yLHM9bH0hZS5pblBhdGgmJmUuY3VyUGVuPy5zdHJva2UhPW51bGwmJihpLnN0cm9rZVN0eWxlPWUuY3VyUGVuLnN0cm9rZSxpLmxpbmVXaWR0aD1IbShlLGUuY3VyUGVuLndpZHRoKSxpLnN0cm9rZSgpLGUuZHJldz0hMCksZS5jdXJYPW8sZS5jdXJZPXN9ZnVuY3Rpb24gcW0oZSx0LG4pe3Quc2tpcCgxNik7bGV0IHI9dC51MzIoKTtpZihyPDF8fHI+MTA0ODU3NilyZXR1cm47bGV0e2N0eDppfT1lLGE9ZS5pblBhdGh8fGUuY3VyUGVuIT1udWxsJiZlLmN1clBlbi5zdHJva2UhPW51bGwsbz0hZS5pblBhdGh8fFRtKGUsRW0odCxyLG4pKTtpZihhJiYhZS5pblBhdGgpe2kuYmVnaW5QYXRoKCk7bGV0W3Qsbl09SW0oZSxlLmN1clgsZS5jdXJZKTtpLm1vdmVUbyh0LG4pfWZvcihsZXQgcz0wO3M8ciYmISh0LnJlbWFpbmluZzw0KTtzKyspe2xldFtyLHNdPW4odCk7aWYoYSYmbyl7bGV0W3Qsbl09SW0oZSxyLHMpO2kubGluZVRvKHQsbil9ZS5jdXJYPXIsZS5jdXJZPXN9YSYmIWUuaW5QYXRoJiZlLmN1clBlbiYmKGkuc3Ryb2tlU3R5bGU9ZS5jdXJQZW4uc3Ryb2tlLGkubGluZVdpZHRoPUhtKGUsZS5jdXJQZW4ud2lkdGgpLGkuc3Ryb2tlKCksZS5kcmV3PSEwKX1mdW5jdGlvbiBKbShlLHQsbil7dC5za2lwKDE2KTtsZXQgcj10LnUzMigpO2lmKHI8Mnx8cj4xMDQ4NTc2KXJldHVybjtsZXR7Y3R4Oml9PWUsYT1UbShlLEVtKHQscixuKSsxKTtlLmluUGF0aHx8aS5iZWdpblBhdGgoKTtsZXQgbz0hMTtmb3IobGV0IHM9MDtzPHImJiEodC5yZW1haW5pbmc8NCk7cysrKXtsZXRbcixzXT1uKHQpLFtjLGxdPUltKGUscixzKTtvP2EmJmkubGluZVRvKGMsbCk6KGEmJmkubW92ZVRvKGMsbCksbz0hMCl9byYmKGEmJmkuY2xvc2VQYXRoKCksIWUuaW5QYXRoJiYoZS5jdXJCcnVzaCYmZS5jdXJCcnVzaC5maWxsIT1udWxsJiYoaS5maWxsU3R5bGU9ZS5jdXJCcnVzaC5maWxsLGkuZmlsbChlLmZpbGxSdWxlKSxlLmRyZXc9ITApLGUuY3VyUGVuJiZlLmN1clBlbi5zdHJva2UhPW51bGwmJihpLnN0cm9rZVN0eWxlPWUuY3VyUGVuLnN0cm9rZSxpLmxpbmVXaWR0aD1IbShlLGUuY3VyUGVuLndpZHRoKSxpLnN0cm9rZSgpLGUuZHJldz0hMCkpKX1mdW5jdGlvbiBZbShlLHQsbixyKXt0LnNraXAoMTYpO2xldCBpPXQudTMyKCk7aWYoaTwxfHxpPjEwNDg1NzYpcmV0dXJuO2xldCBhPUVtKHQsaSxuKSxvPSFlLmluUGF0aHx8VG0oZSxhKTtpZihlLmluUGF0aCYmIW8pe2ZvcihsZXQgcj0wO3I8YTtyKyspe2xldFtyLGldPW4odCk7ZS5jdXJYPXIsZS5jdXJZPWl9cmV0dXJufWxldCBzPVtdO2ZvcihsZXQgZT0wO2U8aSYmISh0LnJlbWFpbmluZzw0KTtlKyspcy5wdXNoKG4odCkpO2lmKHMubGVuZ3RoPChyPzM6NCkpe3MubGVuZ3RoJiYoZS5jdXJYPXNbcy5sZW5ndGgtMV1bMF0sZS5jdXJZPXNbcy5sZW5ndGgtMV1bMV0pO3JldHVybn1sZXQgYz1lLmluUGF0aHx8ZS5jdXJQZW4hPW51bGwmJmUuY3VyUGVuLnN0cm9rZSE9bnVsbCx7Y3R4Omx9PWU7aWYoYyl7ZS5pblBhdGh8fGwuYmVnaW5QYXRoKCk7bGV0IHQ9cj9JbShlLGUuY3VyWCxlLmN1clkpOkltKGUsc1swXVswXSxzWzBdWzFdKTsoIXJ8fCFlLmluUGF0aCkmJmwubW92ZVRvKHRbMF0sdFsxXSl9bGV0IHU9KyFyO2Zvcig7dSsyPHMubGVuZ3RoKyArISFyO3UrPTMpe2xldCB0PXNbdV0sbj1zW3UrMV0scj1zW3UrMl07aWYoIXR8fCFufHwhcilicmVhaztpZihjKXtsZXQgaT1JbShlLHRbMF0sdFsxXSksYT1JbShlLG5bMF0sblsxXSksbz1JbShlLHJbMF0sclsxXSk7bC5iZXppZXJDdXJ2ZVRvKGlbMF0saVsxXSxhWzBdLGFbMV0sb1swXSxvWzFdKX1lLmN1clg9clswXSxlLmN1clk9clsxXX1jJiYhZS5pblBhdGgmJmUuY3VyUGVuJiYobC5zdHJva2VTdHlsZT1lLmN1clBlbi5zdHJva2UsbC5saW5lV2lkdGg9SG0oZSxlLmN1clBlbi53aWR0aCksbC5zdHJva2UoKSxlLmRyZXc9ITApfWZ1bmN0aW9uIFhtKGUsdCxuLHIpe3Quc2tpcCgxNik7bGV0IGk9dC51MzIoKSxhPXQudTMyKCk7aWYoaTw9MHx8aT42NTUzNnx8YTw9MHx8YT4yMDk3MTUyKXJldHVybjtsZXQgbz1bXSxzPTA7Zm9yKGxldCBlPTA7ZTxpO2UrKyl7aWYodC5yZW1haW5pbmc8NClyZXR1cm47bGV0IGU9dC51MzIoKTtpZihzKz1lLCFOdW1iZXIuaXNTYWZlSW50ZWdlcihzKXx8cz4yMDk3MTUyKXJldHVybjtvLnB1c2goZSl9aWYocyE9PWEpcmV0dXJuO2xldHtjdHg6Y309ZSxsPVRtKGUsRW0odCxhLG4pKyhyP2k6MCkpO2UuaW5QYXRofHxjLmJlZ2luUGF0aCgpO2xldCB1PSExO2ZvcihsZXQgaSBvZiBvKXtpZihpPDIpe2ZvcihsZXQgZT0wO2U8aSYmdC5yZW1haW5pbmc+PTQ7ZSsrKW4odCk7Y29udGludWV9Zm9yKGxldCByPTA7cjxpJiYhKHQucmVtYWluaW5nPDQpO3IrKyl7bGV0W2ksYV09bih0KTtpZihsKXtsZXRbdCxuXT1JbShlLGksYSk7cj09PTA/Yy5tb3ZlVG8odCxuKTpjLmxpbmVUbyh0LG4pfX1yJiZsJiZjLmNsb3NlUGF0aCgpLHU9ITB9IXV8fGUuaW5QYXRofHwociYmZS5jdXJCcnVzaCYmZS5jdXJCcnVzaC5maWxsIT1udWxsJiYoYy5maWxsU3R5bGU9ZS5jdXJCcnVzaC5maWxsLGMuZmlsbChlLmZpbGxSdWxlKSxlLmRyZXc9ITApLGUuY3VyUGVuJiZlLmN1clBlbi5zdHJva2UhPW51bGwmJihjLnN0cm9rZVN0eWxlPWUuY3VyUGVuLnN0cm9rZSxjLmxpbmVXaWR0aD1IbShlLGUuY3VyUGVuLndpZHRoKSxjLnN0cm9rZSgpLGUuZHJldz0hMCkpfWZ1bmN0aW9uIFptKGUsdCxuLHIsaSl7bGV0e2N0eDphfT1lLG89SW0oZSx0LG4pLHM9SW0oZSxyLG4pLGM9SW0oZSxyLGkpLGw9SW0oZSx0LGkpLHU9VG0oZSw1KTtlLmluUGF0aHx8YS5iZWdpblBhdGgoKSx1JiYoYS5tb3ZlVG8ob1swXSxvWzFdKSxhLmxpbmVUbyhzWzBdLHNbMV0pLGEubGluZVRvKGNbMF0sY1sxXSksYS5saW5lVG8obFswXSxsWzFdKSxhLmNsb3NlUGF0aCgpKSwhZS5pblBhdGgmJihlLmN1ckJydXNoJiZlLmN1ckJydXNoLmZpbGwhPW51bGwmJihhLmZpbGxTdHlsZT1lLmN1ckJydXNoLmZpbGwsYS5maWxsKGUuZmlsbFJ1bGUpLGUuZHJldz0hMCksZS5jdXJQZW4mJmUuY3VyUGVuLnN0cm9rZSE9bnVsbCYmKGEuc3Ryb2tlU3R5bGU9ZS5jdXJQZW4uc3Ryb2tlLGEubGluZVdpZHRoPUhtKGUsZS5jdXJQZW4ud2lkdGgpLGEuc3Ryb2tlKCksZS5kcmV3PSEwKSl9ZnVuY3Rpb24gUW0oZSx0LG4peyFlLnBhdGhEaXNjYXJkZWQmJnQmJmUuY3VyQnJ1c2g/LmZpbGwhPW51bGwmJihlLmN0eC5maWxsU3R5bGU9ZS5jdXJCcnVzaC5maWxsLGUuY3R4LmZpbGwoZS5maWxsUnVsZSksZS5kcmV3PSEwKSwhZS5wYXRoRGlzY2FyZGVkJiZuJiZlLmN1clBlbj8uc3Ryb2tlIT1udWxsJiYoZS5jdHguc3Ryb2tlU3R5bGU9ZS5jdXJQZW4uc3Ryb2tlLGUuY3R4LmxpbmVXaWR0aD1IbShlLGUuY3VyUGVuLndpZHRoKSxlLmN0eC5zdHJva2UoKSxlLmRyZXc9ITApLGUuY3R4LmJlZ2luUGF0aCgpLGUucGF0aENvbW1hbmRDb3VudD0wLGUucGF0aERpc2NhcmRlZD0hMX1mdW5jdGlvbiAkbShlKXtsZXQgdD1lLnUzMigpLG49ZS51MzIoKSxyPWUuaTMyKCk7ZS5pMzIoKTtsZXQgaT1lLnUzMigpO3JldHVyblt0LHtraW5kOmBwZW5gLHN0cm9rZToobiYyNTUpPT01P251bGw6VGUoaSksd2lkdGg6TWF0aC5hYnMocil9XX1mdW5jdGlvbiBlaChlKXtsZXQgdD1lLnUzMigpO2Uuc2tpcCgxNik7bGV0IG49ZS51MzIoKSxyPWUudTMyKCk7ZS51MzIoKTtsZXQgaT1lLnUzMigpO3JldHVyblt0LHtraW5kOmBwZW5gLHN0cm9rZToobiYyNTUpPT01P251bGw6VGUoaSksd2lkdGg6TWF0aC5hYnMocil9XX1mdW5jdGlvbiB0aChlKXtsZXQgdD1lLnUzMigpLG49ZS51MzIoKSxyPWUudTMyKCk7cmV0dXJuIGUudTMyKCksW3Qse2tpbmQ6YGJydXNoYCxmaWxsOm49PT0xP251bGw6VGUocil9XX1mdW5jdGlvbiBuaChlLHQsbil7bGV0IHI9ZS51MzIoKTtlLnUzMigpO2xldCBpPWUudTMyKCksYT1lLnUzMigpLG89ZS51MzIoKSxzPWUudTMyKCksYz1gIzgwODA4MGA7dHJ5e2xldCBlPXZlKHQsbitpLGEsbitvLHMpO2UmJihjPUdtKGUpKX1jYXRjaHt9cmV0dXJuW3Ise2tpbmQ6YGJydXNoYCxmaWxsOmN9XX1mdW5jdGlvbiByaChlLHQsbil7bGV0IHI9ZS51MzIoKSxpPW4rMTIsYT10LmdldEludDMyKGksITApLG89dC5nZXRJbnQzMihpKzgsITApLHM9dC5nZXRJbnQzMihpKzE2LCEwKSxjPXQuZ2V0VWludDgoaSsyMCksbD1gYDtmb3IobGV0IGU9MDtlPDMyO2UrKyl7bGV0IG49aSsyOCtlKjI7aWYobisyPnQuYnl0ZUxlbmd0aClicmVhaztsZXQgcj10LmdldFVpbnQxNihuLCEwKTtpZihyPT09MClicmVhaztsKz1TdHJpbmcuZnJvbUNoYXJDb2RlKHIpfXJldHVybltyLHtraW5kOmBmb250YCxoZWlnaHQ6TWF0aC5hYnMoYSksd2VpZ2h0OnMsaXRhbGljOmMhPT0wLGZhY2U6bCxlc2NhcGVtZW50Om99XX1mdW5jdGlvbiBpaChlLHQsbixyKXt0LnNraXAoMTYpLHQudTMyKCksdC5mMzIoKSx0LmYzMigpO2xldCBpPXQuaTMyKCksYT10LmkzMigpLG89dC51MzIoKSxzPXQudTMyKCk7aWYodC51MzIoKSxvPD0wfHxvPjY1NTM2KXJldHVybjtsZXQgYz1gYDtmb3IobGV0IGU9MDtlPG87ZSsrKXtsZXQgdD1yK3MrZSoyO2lmKHQrMj5uLmJ5dGVMZW5ndGgpYnJlYWs7Yys9U3RyaW5nLmZyb21DaGFyQ29kZShuLmdldFVpbnQxNih0LCEwKSl9aWYoYy5sZW5ndGg9PT0wKXJldHVybjtsZXQgbD1lLmN1ckZvbnQsdT1NYXRoLmFicyhsPy5oZWlnaHQ/PzApKkJtKGUpKk1hdGguYWJzKE5tKGUpKSpWbShlKTtpZighTnVtYmVyLmlzRmluaXRlKHUpfHx1PDEpcmV0dXJuO2xldHtjdHg6ZH09ZSxbZixwXT1JbShlLGksYSk7ZC5maWxsU3R5bGU9ZS50ZXh0Q29sb3I7bGV0IG09bCYmbC53ZWlnaHQ+PTcwMD9gYm9sZCBgOmBgO2QuZm9udD1gJHtsPy5pdGFsaWM/YGl0YWxpYyBgOmBgfSR7bX0ke3V9cHggJHtsPy5mYWNlfHxgc2Fucy1zZXJpZmB9YDtsZXQgaD1lLnRleHRBbGlnbiY2O2QudGV4dEFsaWduPWg9PT0yP2ByaWdodGA6aD09PTY/YGNlbnRlcmA6YGxlZnRgLGQudGV4dEJhc2VsaW5lPShlLnRleHRBbGlnbiYyNCk9PTI0P2BhbHBoYWJldGljYDpgdG9wYDtsZXQgZz1sPy5lc2NhcGVtZW50Pz8wO3RyeXtpZihnIT09MCl7ZC5zYXZlKCk7dHJ5e2QudHJhbnNsYXRlKGYscCksZC5yb3RhdGUoLWcvMTAqKE1hdGguUEkvMTgwKSksZC5maWxsVGV4dChjLDAsMCl9ZmluYWxseXtkLnJlc3RvcmUoKX19ZWxzZSBkLmZpbGxUZXh0KGMsZixwKTtlLmRyZXc9ITB9Y2F0Y2h7fX1mdW5jdGlvbiBhaChlLHQsbixyLGksYSxvLHMsYyxsLHUpe2lmKGk9PT0wfHxvPT09MClyZXR1cm47bGV0IGQ9dmUodCxuK3IsaSxuK2Esbyk7aWYoIWQpcmV0dXJuO2xldFtmLHBdPUltKGUscyxjKSxbbSxoXT1JbShlLGwsdSk7WihlLmN0eCxkLGYscCxtLGgpJiYoZS5kcmV3PSEwKX1mdW5jdGlvbiBvaChlLHQsbixyKXt0LnNraXAoMTYpO2xldCBpPXQuaTMyKCksYT10LmkzMigpLG89dC5pMzIoKSxzPXQuaTMyKCk7dC51MzIoKSx0LmkzMigpLHQuaTMyKCksdC5za2lwKDI0KSx0LnUzMigpLHQudTMyKCksYWgoZSxuLHIsdC51MzIoKSx0LnUzMigpLHQudTMyKCksdC51MzIoKSxpLGEsaStvLGErcyl9ZnVuY3Rpb24gc2goZSx0LG4scil7dC5za2lwKDE2KTtsZXQgaT10LmkzMigpLGE9dC5pMzIoKTt0LmkzMigpLHQuaTMyKCksdC5pMzIoKSx0LmkzMigpO2xldCBvPXQudTMyKCkscz10LnUzMigpLGM9dC51MzIoKSxsPXQudTMyKCk7dC51MzIoKSx0LnUzMigpO2xldCB1PXQuaTMyKCksZD10LmkzMigpO2FoKGUsbixyLG8scyxjLGwsaSxhLGkrdSxhK2QpfWZ1bmN0aW9uIGNoKGUsdCxuLHIsaT17fSl7aWYoIUNlKGUpfHxuPD0wfHxyPD0wKXJldHVybiExO2xldCBhPW5ldyBEYXRhVmlldyhlLmJ1ZmZlcixlLmJ5dGVPZmZzZXQsZS5ieXRlTGVuZ3RoKSxvPXtjdHg6dCxXOm4sSDpyLGxlZnQ6MCx0b3A6MCxib3VuZHNXOm4sYm91bmRzSDpyLHd0OnBoKCksbWFwTW9kZTpmaC5URVhULHdpbk9yZ1g6MCx3aW5PcmdZOjAsd2luRXh0WDoxLHdpbkV4dFk6MSx2cE9yZ1g6MCx2cE9yZ1k6MCx2cEV4dFg6MSx2cEV4dFk6MSxkZXZQeFBlck1tWDowLGRldlB4UGVyTW1ZOjAsb2JqZWN0czpuZXcgTWFwLGN1clBlbjpudWxsLGN1ckJydXNoOm51bGwsY3VyRm9udDpudWxsLHRleHRDb2xvcjpgIzAwMDAwMGAsYmtNb2RlOjEsdGV4dEFsaWduOjAsZmlsbFJ1bGU6YG5vbnplcm9gLGN1clg6MCxjdXJZOjAsc3RhY2s6W10sZHJldzohMSxpblBhdGg6ITEscGF0aENvbW1hbmRDb3VudDowLHBhdGhEaXNjYXJkZWQ6ITEsbWF4UGF0aENvbW1hbmRzOk51bWJlci5pc1NhZmVJbnRlZ2VyKGkubWF4UGF0aENvbW1hbmRzKSYmaS5tYXhQYXRoQ29tbWFuZHM+MD9NYXRoLm1pbihpLm1heFBhdGhDb21tYW5kcyxoaCk6aGh9LHM9MDtmb3IoO3MrODw9ZS5sZW5ndGg7KXtsZXQgbj1hLmdldFVpbnQzMihzLCEwKSxyPWEuZ2V0VWludDMyKHMrNCwhMCk7aWYocjw4fHxyJjMpYnJlYWs7bGV0IGk9cytyO2lmKGk+ZS5sZW5ndGh8fG49PT11aC5FT0YpYnJlYWs7bGV0IGM9bmV3IG1oKGEscys4LGkpO3RyeXtzd2l0Y2gobil7Y2FzZSB1aC5IRUFERVI6e2xldCBlPWEuZ2V0SW50MzIocys4LCEwKSx0PWEuZ2V0SW50MzIocysxMiwhMCksbj1hLmdldEludDMyKHMrMTYsITApLHI9YS5nZXRJbnQzMihzKzIwLCEwKTtpZihvLmxlZnQ9ZSxvLnRvcD10LG8uYm91bmRzVz1NYXRoLm1heCgxLG4tZSksby5ib3VuZHNIPU1hdGgubWF4KDEsci10KSxpPj1zKzg4KXtsZXQgZT1hLmdldEludDMyKHMrMjQsITApLHQ9YS5nZXRJbnQzMihzKzI4LCEwKSxuPWEuZ2V0SW50MzIocyszMiwhMCkscj1hLmdldEludDMyKHMrMzYsITApLGk9YS5nZXRJbnQzMihzKzcyLCEwKSxjPWEuZ2V0SW50MzIocys3NiwhMCksbD1hLmdldEludDMyKHMrODAsITApLHU9YS5nZXRJbnQzMihzKzg0LCEwKSxkPW4tZSxmPXItdDtpZihkPjAmJmY+MCYmaT4wJiZjPjAmJmw+MCYmdT4wKXtsZXQgbj1pLyhsKjEwMCkscj1jLyh1KjEwMCk7by5sZWZ0PWUqbixvLnRvcD10KnIsby5ib3VuZHNXPU1hdGgubWF4KDEsZCpuKSxvLmJvdW5kc0g9TWF0aC5tYXgoMSxmKnIpLG8uZGV2UHhQZXJNbVg9aS9sLG8uZGV2UHhQZXJNbVk9Yy91fX1icmVha31jYXNlIHVoLlNFVFdPUkxEVFJBTlNGT1JNOm8ud3Q9Yy54Zm9ybSgpO2JyZWFrO2Nhc2UgdWguTU9ESUZZV09STERUUkFOU0ZPUk06e2xldCBlPWMueGZvcm0oKSx0PWMudTMyKCk7dD09PTE/by53dD1waCgpOnQ9PT0yP28ud3Q9d20oZSxvLnd0KTp0PT09Mz9vLnd0PXdtKG8ud3QsZSk6dD09PTQmJihvLnd0PWUpO2JyZWFrfWNhc2UgdWguU0VUTUFQTU9ERTpVbShvLGMudTMyKCkpO2JyZWFrO2Nhc2UgdWguU0VUV0lORE9XT1JHRVg6by53aW5PcmdYPWMuaTMyKCksby53aW5PcmdZPWMuaTMyKCk7YnJlYWs7Y2FzZSB1aC5TRVRXSU5ET1dFWFRFWDp7bGV0IGU9Yy5pMzIoKSx0PWMuaTMyKCk7ZSE9PTAmJihvLndpbkV4dFg9ZSksdCE9PTAmJihvLndpbkV4dFk9dCk7YnJlYWt9Y2FzZSB1aC5TRVRWSUVXUE9SVE9SR0VYOm8udnBPcmdYPWMuaTMyKCksby52cE9yZ1k9Yy5pMzIoKTticmVhaztjYXNlIHVoLlNFVFZJRVdQT1JURVhURVg6e2xldCBlPWMuaTMyKCksdD1jLmkzMigpO2UhPT0wJiYoby52cEV4dFg9ZSksdCE9PTAmJihvLnZwRXh0WT10KTticmVha31jYXNlIHVoLlNDQUxFV0lORE9XRVhURVg6e2xldCBlPWMuaTMyKCksdD1jLmkzMigpLG49Yy5pMzIoKSxyPWMuaTMyKCk7dCE9PTAmJihvLndpbkV4dFg9by53aW5FeHRYKmUvdCksciE9PTAmJihvLndpbkV4dFk9by53aW5FeHRZKm4vcik7YnJlYWt9Y2FzZSB1aC5TQ0FMRVZJRVdQT1JURVhURVg6e2xldCBlPWMuaTMyKCksdD1jLmkzMigpLG49Yy5pMzIoKSxyPWMuaTMyKCk7dCE9PTAmJihvLnZwRXh0WD1vLnZwRXh0WCplL3QpLHIhPT0wJiYoby52cEV4dFk9by52cEV4dFkqbi9yKTticmVha31jYXNlIHVoLlNBVkVEQzpvLmN0eC5zYXZlKCksby5zdGFjay5wdXNoKHt3dDp7Li4uby53dH0sbWFwTW9kZTpvLm1hcE1vZGUsd2luT3JnWDpvLndpbk9yZ1gsd2luT3JnWTpvLndpbk9yZ1ksd2luRXh0WDpvLndpbkV4dFgsd2luRXh0WTpvLndpbkV4dFksdnBPcmdYOm8udnBPcmdYLHZwT3JnWTpvLnZwT3JnWSx2cEV4dFg6by52cEV4dFgsdnBFeHRZOm8udnBFeHRZLGN1clBlbjpvLmN1clBlbixjdXJCcnVzaDpvLmN1ckJydXNoLGN1ckZvbnQ6by5jdXJGb250LHRleHRDb2xvcjpvLnRleHRDb2xvcixia01vZGU6by5ia01vZGUsdGV4dEFsaWduOm8udGV4dEFsaWduLGZpbGxSdWxlOm8uZmlsbFJ1bGUsY3VyWDpvLmN1clgsY3VyWTpvLmN1cll9KTticmVhaztjYXNlIHVoLlJFU1RPUkVEQzp7bGV0IGU9Yy5pMzIoKSx0PU1hdGgubWluKE1hdGguYWJzKGUpfHwxLG8uc3RhY2subGVuZ3RoKSxuO2ZvcihsZXQgZT0wO2U8dDtlKyspbj1vLnN0YWNrLnBvcCgpLG8uY3R4LnJlc3RvcmUoKTtuJiYoby53dD1uLnd0LG8ubWFwTW9kZT1uLm1hcE1vZGUsby53aW5PcmdYPW4ud2luT3JnWCxvLndpbk9yZ1k9bi53aW5PcmdZLG8ud2luRXh0WD1uLndpbkV4dFgsby53aW5FeHRZPW4ud2luRXh0WSxvLnZwT3JnWD1uLnZwT3JnWCxvLnZwT3JnWT1uLnZwT3JnWSxvLnZwRXh0WD1uLnZwRXh0WCxvLnZwRXh0WT1uLnZwRXh0WSxvLmN1clBlbj1uLmN1clBlbixvLmN1ckJydXNoPW4uY3VyQnJ1c2gsby5jdXJGb250PW4uY3VyRm9udCxvLnRleHRDb2xvcj1uLnRleHRDb2xvcixvLmJrTW9kZT1uLmJrTW9kZSxvLnRleHRBbGlnbj1uLnRleHRBbGlnbixvLmZpbGxSdWxlPW4uZmlsbFJ1bGUsby5jdXJYPW4uY3VyWCxvLmN1clk9bi5jdXJZKTticmVha31jYXNlIHVoLkJFR0lOUEFUSDpvLmN0eC5iZWdpblBhdGgoKSxvLmluUGF0aD0hMCxvLnBhdGhDb21tYW5kQ291bnQ9MCxvLnBhdGhEaXNjYXJkZWQ9ITE7YnJlYWs7Y2FzZSB1aC5DTE9TRUZJR1VSRTpvLmluUGF0aCYmVG0obywxKSYmby5jdHguY2xvc2VQYXRoKCk7YnJlYWs7Y2FzZSB1aC5FTkRQQVRIOm8uaW5QYXRoPSExO2JyZWFrO2Nhc2UgdWguRklMTFBBVEg6UW0obywhMCwhMSk7YnJlYWs7Y2FzZSB1aC5TVFJPS0VBTkRGSUxMUEFUSDpRbShvLCEwLCEwKTticmVhaztjYXNlIHVoLlNUUk9LRVBBVEg6UW0obywhMSwhMCk7YnJlYWs7Y2FzZSB1aC5TRUxFQ1RDTElQUEFUSDppZighby5wYXRoRGlzY2FyZGVkKXRyeXtvLmN0eC5jbGlwKG8uZmlsbFJ1bGUpfWNhdGNoe31vLnBhdGhDb21tYW5kQ291bnQ9MCxvLnBhdGhEaXNjYXJkZWQ9ITE7YnJlYWs7Y2FzZSB1aC5TRUxFQ1RPQkpFQ1Q6e2xldCBlPWMudTMyKCk7aWYoZSYyMTQ3NDgzNjQ4KVdtKG8sZT4+PjApO2Vsc2V7bGV0IHQ9by5vYmplY3RzLmdldChlKTt0Py5raW5kPT09YHBlbmA/by5jdXJQZW49dDp0Py5raW5kPT09YGJydXNoYD9vLmN1ckJydXNoPXQ6dD8ua2luZD09PWBmb250YCYmKG8uY3VyRm9udD10KX1icmVha31jYXNlIHVoLkRFTEVURU9CSkVDVDp7bGV0IGU9Yy51MzIoKSx0PW8ub2JqZWN0cy5nZXQoZSk7dCYmKHQ9PT1vLmN1clBlbiYmKG8uY3VyUGVuPW51bGwpLHQ9PT1vLmN1ckJydXNoJiYoby5jdXJCcnVzaD1udWxsKSx0PT09by5jdXJGb250JiYoby5jdXJGb250PW51bGwpLG8ub2JqZWN0cy5kZWxldGUoZSkpO2JyZWFrfWNhc2UgdWguQ1JFQVRFUEVOOntsZXRbZSx0XT0kbShjKTtvLm9iamVjdHMuc2V0KGUsdCk7YnJlYWt9Y2FzZSB1aC5FWFRDUkVBVEVQRU46e2xldFtlLHRdPWVoKGMpO28ub2JqZWN0cy5zZXQoZSx0KTticmVha31jYXNlIHVoLkNSRUFURUJSVVNISU5ESVJFQ1Q6e2xldFtlLHRdPXRoKGMpO28ub2JqZWN0cy5zZXQoZSx0KTticmVha31jYXNlIHVoLkNSRUFURU1PTk9CUlVTSDpjYXNlIHVoLkNSRUFURURJQlBBVFRFUk5CUlVTSFBUOntsZXRbZSx0XT1uaChjLGEscyk7by5vYmplY3RzLnNldChlLHQpO2JyZWFrfWNhc2UgdWguRVhUQ1JFQVRFRk9OVElORElSRUNUVzp7bGV0W2UsdF09cmgoYyxhLHMpO28ub2JqZWN0cy5zZXQoZSx0KTticmVha31jYXNlIHVoLlBPTFlMSU5FMTY6S20obyxjLHZoKTticmVhaztjYXNlIHVoLlBPTFlMSU5FOkttKG8sYyx5aCk7YnJlYWs7Y2FzZSB1aC5QT0xZTElORVRPMTY6cW0obyxjLHZoKTticmVhaztjYXNlIHVoLlBPTFlMSU5FVE86cW0obyxjLHloKTticmVhaztjYXNlIHVoLlBPTFlHT04xNjpKbShvLGMsdmgpO2JyZWFrO2Nhc2UgdWguUE9MWUdPTjpKbShvLGMseWgpO2JyZWFrO2Nhc2UgdWguUE9MWUJFWklFUjE2OlltKG8sYyx2aCwhMSk7YnJlYWs7Y2FzZSB1aC5QT0xZQkVaSUVSOlltKG8sYyx5aCwhMSk7YnJlYWs7Y2FzZSB1aC5QT0xZQkVaSUVSVE8xNjpZbShvLGMsdmgsITApO2JyZWFrO2Nhc2UgdWguUE9MWUJFWklFUlRPOlltKG8sYyx5aCwhMCk7YnJlYWs7Y2FzZSB1aC5QT0xZUE9MWUdPTjE2OlhtKG8sYyx2aCwhMCk7YnJlYWs7Y2FzZSB1aC5QT0xZUE9MWUdPTjpYbShvLGMseWgsITApO2JyZWFrO2Nhc2UgdWguUE9MWVBPTFlMSU5FMTY6WG0obyxjLHZoLCExKTticmVhaztjYXNlIHVoLlBPTFlQT0xZTElORTpYbShvLGMseWgsITEpO2JyZWFrO2Nhc2UgdWguTU9WRVRPRVg6aWYoby5jdXJYPWMuaTMyKCksby5jdXJZPWMuaTMyKCksby5pblBhdGgmJlRtKG8sMSkpe2xldFtlLHRdPUltKG8sby5jdXJYLG8uY3VyWSk7by5jdHgubW92ZVRvKGUsdCl9YnJlYWs7Y2FzZSB1aC5MSU5FVE86e2xldCBlPWMuaTMyKCksdD1jLmkzMigpO2lmKG8uaW5QYXRoJiZUbShvLDEpKXtsZXRbbixyXT1JbShvLGUsdCk7by5jdHgubGluZVRvKG4scil9ZWxzZSBpZihvLmN1clBlbiYmby5jdXJQZW4uc3Ryb2tlIT1udWxsKXtsZXRbbixyXT1JbShvLG8uY3VyWCxvLmN1clkpLFtpLGFdPUltKG8sZSx0KTtvLmN0eC5iZWdpblBhdGgoKSxvLmN0eC5tb3ZlVG8obixyKSxvLmN0eC5saW5lVG8oaSxhKSxvLmN0eC5zdHJva2VTdHlsZT1vLmN1clBlbi5zdHJva2Usby5jdHgubGluZVdpZHRoPUhtKG8sby5jdXJQZW4ud2lkdGgpLG8uY3R4LnN0cm9rZSgpLG8uZHJldz0hMH1vLmN1clg9ZSxvLmN1clk9dDticmVha31jYXNlIHVoLlJFQ1RBTkdMRTpabShvLGMuaTMyKCksYy5pMzIoKSxjLmkzMigpLGMuaTMyKCkpO2JyZWFrO2Nhc2UgdWguRUxMSVBTRTp7bGV0IGU9Yy5pMzIoKSxuPWMuaTMyKCkscj1jLmkzMigpLGk9Yy5pMzIoKSxbYSxzXT1bKGUrcikvMiwobitpKS8yXSxbbCx1XT1JbShvLGEscyksW2RdPUltKG8scixzKSxbLGZdPUltKG8sYSxpKSxwPU1hdGguYWJzKGQtbCksbT1NYXRoLmFicyhmLXUpO3QuYmVnaW5QYXRoKCksdC5lbGxpcHNlKGwsdSxwLG0sMCwwLE1hdGguUEkqMiksby5jdXJCcnVzaCYmby5jdXJCcnVzaC5maWxsIT1udWxsJiYodC5maWxsU3R5bGU9by5jdXJCcnVzaC5maWxsLHQuZmlsbChvLmZpbGxSdWxlKSxvLmRyZXc9ITApLG8uY3VyUGVuJiZvLmN1clBlbi5zdHJva2UhPW51bGwmJih0LnN0cm9rZVN0eWxlPW8uY3VyUGVuLnN0cm9rZSx0LmxpbmVXaWR0aD1IbShvLG8uY3VyUGVuLndpZHRoKSx0LnN0cm9rZSgpLG8uZHJldz0hMCk7YnJlYWt9Y2FzZSB1aC5TRVRQT0xZRklMTE1PREU6by5maWxsUnVsZT1jLnUzMigpPT09MT9gZXZlbm9kZGA6YG5vbnplcm9gO2JyZWFrO2Nhc2UgdWguU0VUVEVYVENPTE9SOm8udGV4dENvbG9yPVRlKGMudTMyKCkpO2JyZWFrO2Nhc2UgdWguU0VUVEVYVEFMSUdOOm8udGV4dEFsaWduPWMudTMyKCk7YnJlYWs7Y2FzZSB1aC5TRVRCS01PREU6by5ia01vZGU9Yy51MzIoKTticmVhaztjYXNlIHVoLkVYVFRFWFRPVVRXOmloKG8sYyxhLHMpO2JyZWFrO2Nhc2UgdWguQklUQkxUOm9oKG8sYyxhLHMpO2JyZWFrO2Nhc2UgdWguU1RSRVRDSERJQklUUzpzaChvLGMsYSxzKTticmVhaztkZWZhdWx0OmJyZWFrfX1jYXRjaHt9cz1pfXJldHVybiBvLmRyZXd9YXN5bmMgZnVuY3Rpb24gbGgoZSx0LG4pe2lmKCFDZShlKXx8dDw9MHx8bjw9MClyZXR1cm4gbnVsbDtsZXQgcj1vZSh0LG4pO2lmKCFyKXJldHVybiBudWxsO2xldCBpPXIuZ2V0Q29udGV4dChgMmRgKTtyZXR1cm4haXx8KGkubGluZUpvaW49YHJvdW5kYCxpLmxpbmVDYXA9YHJvdW5kYCwhY2goZSxpLHQsbikpP251bGw6Y3JlYXRlSW1hZ2VCaXRtYXAocil9dmFyIHVoLGRoLGZoLHBoLG1oLGhoLGdoLF9oLHZoLHloLGJoPXQoKCgpPT57YmUoKSxldCgpLGNlKCksdWg9e0hFQURFUjoxLFBPTFlCRVpJRVI6MixQT0xZR09OOjMsUE9MWUxJTkU6NCxQT0xZQkVaSUVSVE86NSxQT0xZTElORVRPOjYsUE9MWVBPTFlMSU5FOjcsUE9MWVBPTFlHT046OCxTRVRXSU5ET1dFWFRFWDo5LFNFVFdJTkRPV09SR0VYOjEwLFNFVFZJRVdQT1JURVhURVg6MTEsU0VUVklFV1BPUlRPUkdFWDoxMixFT0Y6MTQsU0VUTUFQTU9ERToxNyxTRVRQT0xZRklMTE1PREU6MTksU0VUQktNT0RFOjE4LFNFVFRFWFRBTElHTjoyMixTRVRURVhUQ09MT1I6MjQsTU9WRVRPRVg6MjcsU0NBTEVWSUVXUE9SVEVYVEVYOjMxLFNDQUxFV0lORE9XRVhURVg6MzIsU0FWRURDOjMzLFJFU1RPUkVEQzozNCxTRVRXT1JMRFRSQU5TRk9STTozNSxNT0RJRllXT1JMRFRSQU5TRk9STTozNixTRUxFQ1RPQkpFQ1Q6MzcsQ1JFQVRFUEVOOjM4LENSRUFURUJSVVNISU5ESVJFQ1Q6MzksREVMRVRFT0JKRUNUOjQwLEVMTElQU0U6NDIsUkVDVEFOR0xFOjQzLExJTkVUTzo1NCxCRUdJTlBBVEg6NTksRU5EUEFUSDo2MCxDTE9TRUZJR1VSRTo2MSxGSUxMUEFUSDo2MixTVFJPS0VBTkRGSUxMUEFUSDo2MyxTVFJPS0VQQVRIOjY0LFNFTEVDVENMSVBQQVRIOjY3LEVYVENSRUFURUZPTlRJTkRJUkVDVFc6ODIsRVhUVEVYVE9VVFc6ODQsUE9MWUJFWklFUjE2Ojg1LFBPTFlHT04xNjo4NixQT0xZTElORTE2Ojg3LFBPTFlCRVpJRVJUTzE2Ojg4LFBPTFlMSU5FVE8xNjo4OSxQT0xZUE9MWUxJTkUxNjo5MCxQT0xZUE9MWUdPTjE2OjkxLENSRUFURU1PTk9CUlVTSDo5MyxDUkVBVEVESUJQQVRURVJOQlJVU0hQVDo5NCxFWFRDUkVBVEVQRU46OTUsQklUQkxUOjc2LFNUUkVUQ0hESUJJVFM6ODF9LGRoPXtXSElURV9CUlVTSDoyMTQ3NDgzNjQ4LExUR1JBWV9CUlVTSDoyMTQ3NDgzNjQ5LEdSQVlfQlJVU0g6MjE0NzQ4MzY1MCxES0dSQVlfQlJVU0g6MjE0NzQ4MzY1MSxCTEFDS19CUlVTSDoyMTQ3NDgzNjUyLE5VTExfQlJVU0g6MjE0NzQ4MzY1MyxXSElURV9QRU46MjE0NzQ4MzY1NCxCTEFDS19QRU46MjE0NzQ4MzY1NSxOVUxMX1BFTjoyMTQ3NDgzNjU2LERDX0JSVVNIOjIxNDc0ODM2NjYsRENfUEVOOjIxNDc0ODM2NjJ9LGZoPXtURVhUOjEsTE9NRVRSSUM6MixISU1FVFJJQzozLExPRU5HTElTSDo0LEhJRU5HTElTSDo1LFRXSVBTOjYsSVNPVFJPUElDOjcsQU5JU09UUk9QSUM6OH0scGg9KCk9Pih7bTExOjEsbTEyOjAsbTIxOjAsbTIyOjEsZHg6MCxkeTowfSksbWg9Y2xhc3N7cDtjb25zdHJ1Y3RvcihlLHQsbil7dGhpcy5kdj1lLHRoaXMuZW5kPW4sdGhpcy5wPXR9Z2V0IHBvcygpe3JldHVybiB0aGlzLnB9c2V0IHBvcyhlKXt0aGlzLnA9ZX1nZXQgcmVtYWluaW5nKCl7cmV0dXJuIHRoaXMuZW5kLXRoaXMucH1pMTYoKXtsZXQgZT10aGlzLmR2LmdldEludDE2KHRoaXMucCwhMCk7cmV0dXJuIHRoaXMucCs9MixlfWkzMigpe2xldCBlPXRoaXMuZHYuZ2V0SW50MzIodGhpcy5wLCEwKTtyZXR1cm4gdGhpcy5wKz00LGV9dTMyKCl7bGV0IGU9dGhpcy5kdi5nZXRVaW50MzIodGhpcy5wLCEwKTtyZXR1cm4gdGhpcy5wKz00LGV9ZjMyKCl7bGV0IGU9dGhpcy5kdi5nZXRGbG9hdDMyKHRoaXMucCwhMCk7cmV0dXJuIHRoaXMucCs9NCxlfXhmb3JtKCl7cmV0dXJue20xMTp0aGlzLmYzMigpLG0xMjp0aGlzLmYzMigpLG0yMTp0aGlzLmYzMigpLG0yMjp0aGlzLmYzMigpLGR4OnRoaXMuZjMyKCksZHk6dGhpcy5mMzIoKX19c2tpcChlKXt0aGlzLnArPWV9fSxoaD0yMTYyNjg4LGdoPXtbZGguV0hJVEVfQlJVU0hdOntraW5kOmBicnVzaGAsZmlsbDpgI2ZmZmZmZmB9LFtkaC5MVEdSQVlfQlJVU0hdOntraW5kOmBicnVzaGAsZmlsbDpgI2MwYzBjMGB9LFtkaC5HUkFZX0JSVVNIXTp7a2luZDpgYnJ1c2hgLGZpbGw6YCM4MDgwODBgfSxbZGguREtHUkFZX0JSVVNIXTp7a2luZDpgYnJ1c2hgLGZpbGw6YCM0MDQwNDBgfSxbZGguQkxBQ0tfQlJVU0hdOntraW5kOmBicnVzaGAsZmlsbDpgIzAwMDAwMGB9LFtkaC5OVUxMX0JSVVNIXTp7a2luZDpgYnJ1c2hgLGZpbGw6bnVsbH19LF9oPXtbZGguV0hJVEVfUEVOXTp7a2luZDpgcGVuYCxzdHJva2U6YCNmZmZmZmZgLHdpZHRoOjF9LFtkaC5CTEFDS19QRU5dOntraW5kOmBwZW5gLHN0cm9rZTpgIzAwMDAwMGAsd2lkdGg6MX0sW2RoLk5VTExfUEVOXTp7a2luZDpgcGVuYCxzdHJva2U6bnVsbCx3aWR0aDoxfSxbZGguRENfUEVOXTp7a2luZDpgcGVuYCxzdHJva2U6YCMwMDAwMDBgLHdpZHRoOjF9fSx2aD1lPT5bZS5pMTYoKSxlLmkxNigpXSx5aD1lPT5bZS5pMzIoKSxlLmkzMigpXX0pKTtmdW5jdGlvbiB4aChlKXtsZXQgdD1lLmNsb3NlO3R5cGVvZiB0PT1gZnVuY3Rpb25gJiZ0LmNhbGwoZSl9dmFyIFNoPXQoKCgpPT57fSkpO2Z1bmN0aW9uIENoKGUpe2lmKCEodHlwZW9mIGUhPWBvYmplY3RgfHwhZSkpdHJ5e2xldCB0PWUsbj10LmNvZGUscj10Lm1lc3NhZ2U7cmV0dXJuIG49PT1gb294bWwtdGlmZi1kZWNvZGVgJiZ0eXBlb2Ygcj09YHN0cmluZ2A/e21lc3NhZ2U6cn06dm9pZCAwfWNhdGNoe3JldHVybn19ZnVuY3Rpb24gd2goZSl7aWYoIUNoKGUpKXJldHVybiExO3RyeXtyZXR1cm4gdHlwZW9mIGUubmFtZT09YHN0cmluZ2B9Y2F0Y2h7cmV0dXJuITF9fWZ1bmN0aW9uIFRoKGUpe2lmKGUubGVuZ3RoPDQpcmV0dXJuITE7bGV0IHQ9ZVswXT09PTczJiZlWzFdPT09NzMsbj1lWzBdPT09NzcmJmVbMV09PT03NztyZXR1cm4hdCYmIW4/ITE6bmV3IERhdGFWaWV3KGUuYnVmZmVyLGUuYnl0ZU9mZnNldCxlLmJ5dGVMZW5ndGgpLmdldFVpbnQxNigyLHQpPT09NDJ9ZnVuY3Rpb24gRWgoZSl7aWYoIVRoKGUpfHxlLmxlbmd0aDw4KXJldHVybiBudWxsO2xldCB0PWVbMF09PT03MyxuPW5ldyBEYXRhVmlldyhlLmJ1ZmZlcixlLmJ5dGVPZmZzZXQsZS5ieXRlTGVuZ3RoKSxyPShlLHQpPT5OdW1iZXIuaXNTYWZlSW50ZWdlcihlKSYmZT49MCYmdD49MCYmZTw9bi5ieXRlTGVuZ3RoLXQsaT1uLmdldFVpbnQzMig0LHQpO2lmKCFyKGksMikpcmV0dXJuIG51bGw7bGV0IGE9bi5nZXRVaW50MTYoaSx0KTtpZighcihpKzIsYSoxMis0KSlyZXR1cm4gbnVsbDtsZXQgbyxzO2ZvcihsZXQgZT0wO2U8YTtlKyspe2xldCByPWkrMitlKjEyLGE9bi5nZXRVaW50MTYocix0KTtpZihhIT09MjU2JiZhIT09MjU3KWNvbnRpbnVlO2xldCBjPW4uZ2V0VWludDE2KHIrMix0KTtpZihuLmdldFVpbnQzMihyKzQsdCkhPT0xfHxjIT09MSYmYyE9PTMmJmMhPT00KXJldHVybiBudWxsO2xldCBsPWM9PT0xP24uZ2V0VWludDgocis4KTpjPT09Mz9uLmdldFVpbnQxNihyKzgsdCk6bi5nZXRVaW50MzIocis4LHQpO2E9PT0yNTY/bz1sOnM9bH1yZXR1cm4gbz09PXZvaWQgMHx8cz09PXZvaWQgMD9udWxsOnt3aWR0aDpvLGhlaWdodDpzfX12YXIgRGgsT2g9dCgoKCk9PntEaD1jbGFzcyBlIGV4dGVuZHMgRXJyb3J7Y29kZT1gb294bWwtdGlmZi1kZWNvZGVgO2NvbnN0cnVjdG9yKHQsbil7c3VwZXIodCxuKSx0aGlzLm5hbWU9YFRpZmZEZWNvZGVFcnJvcmAsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsZS5wcm90b3R5cGUpfX19KSk7ZnVuY3Rpb24ga2goZSx0KXtyZXR1cm4gZVt0XTw8OHxlW3QrMV19ZnVuY3Rpb24gQWgoZSx0KXtyZXR1cm4oZVt0XTw8MjR8ZVt0KzFdPDwxNnxlW3QrMl08PDh8ZVt0KzNdKT4+PjB9ZnVuY3Rpb24gamgoZSx0KXtyZXR1cm4gZVt0XXxlW3QrMV08PDh9ZnVuY3Rpb24gTWgoZSx0KXtyZXR1cm4gZVt0XXxlW3QrMV08PDh8ZVt0KzJdPDwxNnxlW3QrM108PDI0fDB9ZnVuY3Rpb24gTmgoZSl7bGV0IHQ9ZS5sZW5ndGg7cmV0dXJuIHQ+PTI0JiZlWzBdPT09MTM3JiZlWzFdPT09ODAmJmVbMl09PT03OCYmZVszXT09PTcxJiZlWzRdPT09MTMmJmVbNV09PT0xMCYmZVs2XT09PTI2JiZlWzddPT09MTA/ZVsxMl09PT03MyYmZVsxM109PT03MiYmZVsxNF09PT02OCYmZVsxNV09PT04Mj97d2lkdGg6QWgoZSwxNiksaGVpZ2h0OkFoKGUsMjApfTpudWxsOnQ+PTEwJiZlWzBdPT09NzEmJmVbMV09PT03MyYmZVsyXT09PTcwJiZlWzNdPT09NTYmJihlWzRdPT09NTV8fGVbNF09PT01NykmJmVbNV09PT05Nz97d2lkdGg6amgoZSw2KSxoZWlnaHQ6amgoZSw4KX06dD49MjYmJmVbMF09PT02NiYmZVsxXT09PTc3P1BoKGUsMTQpPT09MTI/e3dpZHRoOmpoKGUsMTgpLGhlaWdodDpqaChlLDIwKX06e3dpZHRoOk1hdGguYWJzKE1oKGUsMTgpKSxoZWlnaHQ6TWF0aC5hYnMoTWgoZSwyMikpfTp0Pj0xNiYmZVswXT09PTgyJiZlWzFdPT09NzMmJmVbMl09PT03MCYmZVszXT09PTcwJiZlWzhdPT09ODcmJmVbOV09PT02OSYmZVsxMF09PT02NiYmZVsxMV09PT04MD9GaChlKTp0Pj00JiZlWzBdPT09MjU1JiZlWzFdPT09MjE2P3poKGUpOnQ+PTQmJihlWzBdPT09NzMmJmVbMV09PT03M3x8ZVswXT09PTc3JiZlWzFdPT09NzcpP0VoKGUpOm51bGx9ZnVuY3Rpb24gUGgoZSx0KXtyZXR1cm4oZVt0XXxlW3QrMV08PDh8ZVt0KzJdPDwxNnxlW3QrM108PDI0KT4+PjB9ZnVuY3Rpb24gRmgoZSl7bGV0IHQ9ZS5sZW5ndGgsbj1lWzEyXSxyPWVbMTNdLGk9ZVsxNF0sYT1lWzE1XTtpZihuPT09ODYmJnI9PT04MCYmaT09PTU2JiZhPT09MzIpcmV0dXJuIHQ8MzA/bnVsbDp7d2lkdGg6amgoZSwyNikmMTYzODMsaGVpZ2h0OmpoKGUsMjgpJjE2MzgzfTtpZihuPT09ODYmJnI9PT04MCYmaT09PTU2JiZhPT09NzYpe2lmKHQ8MjV8fGVbMjBdIT09NDcpcmV0dXJuIG51bGw7bGV0IG49UGgoZSwyMSk7cmV0dXJue3dpZHRoOihuJjE2MzgzKSsxLGhlaWdodDoobj4+PjE0JjE2MzgzKSsxfX1yZXR1cm4gbj09PTg2JiZyPT09ODAmJmk9PT01NiYmYT09PTg4P3Q8MzA/bnVsbDp7d2lkdGg6KGVbMjRdfGVbMjVdPDw4fGVbMjZdPDwxNikrMSxoZWlnaHQ6KGVbMjddfGVbMjhdPDw4fGVbMjldPDwxNikrMX06bnVsbH1mdW5jdGlvbiBJaChlKXtyZXR1cm4gZS5sZW5ndGg+PTYmJmVbMF09PT02OSYmZVsxXT09PTEyMCYmZVsyXT09PTEwNSYmZVszXT09PTEwMiYmZVs0XT09PTAmJmVbNV09PT0wfWZ1bmN0aW9uIExoKGUpe2lmKGUubGVuZ3RoPDE0fHwhSWgoZSkpcmV0dXJuIG51bGw7bGV0IHQ9ZVs2XT09PTczJiZlWzddPT09NzMsbj1lWzZdPT09NzcmJmVbN109PT03NztpZighdCYmIW4pcmV0dXJuIG51bGw7bGV0IHI9bmV3IERhdGFWaWV3KGUuYnVmZmVyLGUuYnl0ZU9mZnNldCxlLmJ5dGVMZW5ndGgpO2lmKHIuZ2V0VWludDE2KDgsdCkhPT00MilyZXR1cm4gbnVsbDtsZXQgaT1yLmdldFVpbnQzMigxMCx0KSxhPTYraTtpZihpPDh8fGErMj5lLmxlbmd0aClyZXR1cm4gbnVsbDtsZXQgbz1yLmdldFVpbnQxNihhLHQpLHM9YSsyLGM9TWF0aC5taW4obyxNYXRoLmZsb29yKChlLmxlbmd0aC1zKS8xMikpO2ZvcihsZXQgZT0wO2U8YztlKyspe2xldCBuPXMrZSoxMjtpZihyLmdldFVpbnQxNihuLHQpIT09Mjc0fHxyLmdldFVpbnQxNihuKzIsdCkhPT0zfHxyLmdldFVpbnQzMihuKzQsdCkhPT0xKWNvbnRpbnVlO2xldCBpPXIuZ2V0VWludDE2KG4rOCx0KTtpZihpPj0xJiZpPD04KXJldHVybiBpfXJldHVybiBudWxsfWZ1bmN0aW9uIFJoKGUsdCl7cmV0dXJuIHQhPT1udWxsJiZ0Pj01JiZ0PD04P3t3aWR0aDplLmhlaWdodCxoZWlnaHQ6ZS53aWR0aH06ZX1mdW5jdGlvbiB6aChlKXtsZXQgdD1lLmxlbmd0aCxuPTIscj1udWxsLGk9ITEsYT1udWxsO2Zvcig7bisxPHQ7KXtpZihlW25dIT09MjU1KXtuKz0xO2NvbnRpbnVlfWxldCBvPWVbbisxXTtpZihvPT09MjU1KXtuKz0xO2NvbnRpbnVlfWlmKG89PT0yMTZ8fG89PT0xfHxvPj0yMDgmJm88PTIxNSl7bis9Mjtjb250aW51ZX1pZihvPT09MjE3fHxvPT09MjE4KXJldHVybiBhP1JoKGEscik6bnVsbDtpZihuKzM+PXQpcmV0dXJuIG51bGw7bGV0IHM9a2goZSxuKzIpO2lmKG8+PTE5MiYmbzw9MjA3JiZvIT09MTk2JiZvIT09MjAwJiZvIT09MjA0KXtpZihzPDd8fG4rOD49dClyZXR1cm4gbnVsbDtsZXQgcj1raChlLG4rNSksaT1raChlLG4rNyk7YT8/PXt3aWR0aDppLGhlaWdodDpyfX1pZihzPDIpcmV0dXJuIG51bGw7bGV0IGM9bisyK3M7aWYoYz50KXJldHVybiBhP1JoKGEscik6bnVsbDtpZihvPT09MjI1JiYhaSl7bGV0IHQ9ZS5zdWJhcnJheShuKzQsYyk7SWgodCkmJihpPSEwLHI9TGgodCkpfW49Y31yZXR1cm4gYT9SaChhLHIpOm51bGx9ZnVuY3Rpb24gQmgoZSl7bGV0e3dpZHRoOnQsaGVpZ2h0Om59PWU7cmV0dXJuIU51bWJlci5pc0Zpbml0ZSh0KXx8IU51bWJlci5pc0Zpbml0ZShuKXx8dDw9MHx8bjw9MHx8dD4zMjc2N3x8bj4zMjc2Nz8hMDp0Km4+WX1mdW5jdGlvbiBWaChlKXtsZXR7d2lkdGg6dCxoZWlnaHQ6bn09ZTtyZXR1cm4hTnVtYmVyLmlzRmluaXRlKHQpfHwhTnVtYmVyLmlzRmluaXRlKG4pfHx0PD0wfHxuPD0wfHx0PjEzNDIxNzcyOHx8bj4xMzQyMTc3Mjg/ITA6dCpuPmZlfXZhciBIaD10KCgoKT0+e19lKCksT2goKX0pKTtmdW5jdGlvbiBVaChlKXtzd2l0Y2goZS5zcGxpdChgO2AsMSlbMF0/LnRyaW0oKS50b0xvd2VyQ2FzZSgpKXtjYXNlYGltYWdlL3BuZ2A6Y2FzZWBpbWFnZS9qcGVnYDpjYXNlYGltYWdlL2pwZ2A6Y2FzZWBpbWFnZS9naWZgOmNhc2VgaW1hZ2UvYm1wYDpjYXNlYGltYWdlL3gtbXMtYm1wYDpjYXNlYGltYWdlL3dlYnBgOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fWZ1bmN0aW9uIFdoKGUsdD0hMSl7cmV0dXJuIGUhPT1udWxsJiZlIT09YHdtZmAmJmUhPT1gZW1mYCYmKGUhPT1gdGlmZmB8fHQpfWZ1bmN0aW9uIEdoKGUpe3JldHVybiBTZShlKT9gd21mYDpDZShlKT9gZW1mYDplLmxlbmd0aD49OCYmZVswXT09PTEzNyYmZVsxXT09PTgwJiZlWzJdPT09NzgmJmVbM109PT03MSYmZVs0XT09PTEzJiZlWzVdPT09MTAmJmVbNl09PT0yNiYmZVs3XT09PTEwP2BwbmdgOmUubGVuZ3RoPj0yJiZlWzBdPT09MjU1JiZlWzFdPT09MjE2P2BqcGVnYDplLmxlbmd0aD49NiYmZVswXT09PTcxJiZlWzFdPT09NzMmJmVbMl09PT03MCYmZVszXT09PTU2JiYoZVs0XT09PTU1fHxlWzRdPT09NTcpJiZlWzVdPT09OTc/YGdpZmA6ZS5sZW5ndGg+PTImJmVbMF09PT02NiYmZVsxXT09PTc3P2BibXBgOmUubGVuZ3RoPj0xMiYmZVswXT09PTgyJiZlWzFdPT09NzMmJmVbMl09PT03MCYmZVszXT09PTcwJiZlWzhdPT09ODcmJmVbOV09PT02OSYmZVsxMF09PT02NiYmZVsxMV09PT04MD9gd2VicGA6VGgoZSk/YHRpZmZgOm51bGx9ZnVuY3Rpb24gS2goZSl7cmV0dXJuIGU+PTE5MiYmZTw9MjA3JiZlIT09MTk2JiZlIT09MjAwJiZlIT09MjA0fWFzeW5jIGZ1bmN0aW9uIHFoKGUpe2xldCB0PWUuc2xpY2UoMikuc3RyZWFtKCkuZ2V0UmVhZGVyKCksbj0hMSxyPS0xLGk9LTEsYT0wLG89bnVsbCxzPTAsYz0wLGw9bnVsbCx1PW51bGwsZD0wLGY9bnVsbCxwPSExO3RyeXtmb3IoOzspe2xldHt2YWx1ZTplLGRvbmU6bX09YXdhaXQgdC5yZWFkKCk7aWYobSlyZXR1cm4gbD9SaChsLGYpOm51bGw7Zm9yKGxldCBtIG9mIGUpe2lmKG8pe2lmKG9bcysrXT1tLHM9PT1vLmxlbmd0aCl7bGV0IGU9b1sxXTw8OHxvWzJdLG49b1szXTw8OHxvWzRdO2lmKGw/Pz17d2lkdGg6bixoZWlnaHQ6ZX0sbz1udWxsLHM9MCxwKXJldHVybiBhd2FpdCB0LmNhbmNlbCgpLFJoKGwsZik7YT1jLGM9MH1jb250aW51ZX1pZih1KXtpZih1W2QrK109bSxkPT09dS5sZW5ndGgmJihJaCh1KSYmKHA9ITAsZj1MaCh1KSksdT1udWxsLGQ9MCxwJiZsKSlyZXR1cm4gYXdhaXQgdC5jYW5jZWwoKSxSaChsLGYpO2NvbnRpbnVlfWlmKGE+MCl7YS0tO2NvbnRpbnVlfWlmKHI+PTApe2lmKGk8MCl7aT1tO2NvbnRpbnVlfWxldCBlPWk8PDh8bTtpZihlPDIpcmV0dXJuIG51bGw7aWYoS2gocikpe2lmKGU8NylyZXR1cm4gbnVsbDtsP2E9ZS0yOihvPW5ldyBVaW50OEFycmF5KDUpLHM9MCxjPWUtNyl9ZWxzZSByPT09MjI1JiYhcCYmZT4yPyh1PW5ldyBVaW50OEFycmF5KGUtMiksZD0wKTphPWUtMjtyPS0xLGk9LTE7Y29udGludWV9aWYoIW4pe209PT0yNTUmJihuPSEwKTtjb250aW51ZX1pZihtIT09MjU1JiYobj0hMSxtIT09MCkpe2lmKG09PT0yMTd8fG09PT0yMTgpcmV0dXJuIGF3YWl0IHQuY2FuY2VsKCksbD9SaChsLGYpOm51bGw7bT09PTIxNnx8bT09PTF8fG0+PTIwOCYmbTw9MjE1fHwocj1tKX19fX1maW5hbGx5e3QucmVsZWFzZUxvY2soKX19YXN5bmMgZnVuY3Rpb24gSmgoZSx0KXtpZih0Lmxlbmd0aDw4fHwhVGgodCkpcmV0dXJuIG51bGw7bGV0IG49dFswXT09PTczLHI9bmV3IERhdGFWaWV3KHQuYnVmZmVyLHQuYnl0ZU9mZnNldCx0LmJ5dGVMZW5ndGgpLmdldFVpbnQzMig0LG4pO2lmKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihyKXx8cjw4fHxyPmUuc2l6ZS0yKXJldHVybiBudWxsO2xldCBpPW5ldyBVaW50OEFycmF5KGF3YWl0IGUuc2xpY2UocixyKzIpLmFycmF5QnVmZmVyKCkpO2lmKGkubGVuZ3RoIT09MilyZXR1cm4gbnVsbDtsZXQgYT1uZXcgRGF0YVZpZXcoaS5idWZmZXIsaS5ieXRlT2Zmc2V0LDIpLmdldFVpbnQxNigwLG4pLG89YSoxMjtpZihyKzIrbz5lLnNpemUpcmV0dXJuIG51bGw7bGV0IHM9bmV3IFVpbnQ4QXJyYXkoYXdhaXQgZS5zbGljZShyKzIscisyK28pLmFycmF5QnVmZmVyKCkpLGM9bmV3IERhdGFWaWV3KHMuYnVmZmVyLHMuYnl0ZU9mZnNldCxzLmJ5dGVMZW5ndGgpLGwsdTtmb3IobGV0IGU9MDtlPGE7ZSsrKXtsZXQgdD1lKjEyLHI9Yy5nZXRVaW50MTYodCxuKTtpZihyIT09MjU2JiZyIT09MjU3KWNvbnRpbnVlO2xldCBpPWMuZ2V0VWludDE2KHQrMixuKTtpZihjLmdldFVpbnQzMih0KzQsbikhPT0xfHxpIT09MSYmaSE9PTMmJmkhPT00KXJldHVybiBudWxsO2xldCBhPWk9PT0xP2MuZ2V0VWludDgodCs4KTppPT09Mz9jLmdldFVpbnQxNih0Kzgsbik6Yy5nZXRVaW50MzIodCs4LG4pO3I9PT0yNTY/bD1hOnU9YX1yZXR1cm4gbD09PXZvaWQgMHx8dT09PXZvaWQgMD9udWxsOnt3aWR0aDpsLGhlaWdodDp1fX1hc3luYyBmdW5jdGlvbiBZaChlLHQpe2xldCBuPXQ/P25ldyBVaW50OEFycmF5KGF3YWl0IGUuc2xpY2UoMCxYaCkuYXJyYXlCdWZmZXIoKSkscj1HaChuKTtpZighcilyZXR1cm57Zm9ybWF0Om51bGwsZGltZW5zaW9uczpudWxsfTtsZXQgaT1OaChuKTtyZXR1cm4gcj09PWBqcGVnYD97Zm9ybWF0OnIsZGltZW5zaW9uczphd2FpdCBxaChlKT8/aX06aT97Zm9ybWF0OnIsZGltZW5zaW9uczppfTpyPT09YHRpZmZgP3tmb3JtYXQ6cixkaW1lbnNpb25zOmF3YWl0IEpoKGUsbil9Ontmb3JtYXQ6cixkaW1lbnNpb25zOm51bGx9fXZhciBYaCxaaD10KCgoKT0+e0hoKCksT2goKSxldCgpLFhoPTY0KjEwMjR9KSk7ZnVuY3Rpb24gUWgoZSl7cmV0dXJuIHR5cGVvZiBlPT1gbnVtYmVyYCYmTnVtYmVyLmlzRmluaXRlKGUpJiZlPjA/ZTp2b2lkIDB9ZnVuY3Rpb24gJGgoZSx0LG4scj0hMSl7aWYoIU51bWJlci5pc0Zpbml0ZShlLndpZHRoKXx8IU51bWJlci5pc0Zpbml0ZShlLmhlaWdodCl8fCEoZS53aWR0aD4wKXx8IShlLmhlaWdodD4wKSlyZXR1cm4gbnVsbDtsZXQgaT1RaCh0KSxhPVFoKG4pO2lmKChyP2k9PT12b2lkIDAmJmE9PT12b2lkIDA6aT09PXZvaWQgMHx8YT09PXZvaWQgMCl8fGkhPT12b2lkIDAmJiEoaTxlLndpZHRoKXx8YSE9PXZvaWQgMCYmIShhPGUuaGVpZ2h0KSlyZXR1cm4gbnVsbDtsZXQgbz1pPT09dm9pZCAwPzA6aS9lLndpZHRoLHM9YT09PXZvaWQgMD8wOmEvZS5oZWlnaHQsYyxsO2lmKGkhPT12b2lkIDAmJm8+PXMpYz1NYXRoLm1heCgxLE1hdGguY2VpbChpKSksbD1NYXRoLm1heCgxLE1hdGguY2VpbChlLmhlaWdodCpjL2Uud2lkdGgpKTtlbHNlIGlmKGEhPT12b2lkIDApbD1NYXRoLm1heCgxLE1hdGguY2VpbChhKSksYz1NYXRoLm1heCgxLE1hdGguY2VpbChlLndpZHRoKmwvZS5oZWlnaHQpKTtlbHNlIHJldHVybiBudWxsO3JldHVybiBjPGUud2lkdGgmJmw8ZS5oZWlnaHQ/e3dpZHRoOmMsaGVpZ2h0Omx9Om51bGx9ZnVuY3Rpb24gZWcoZSx0LG4scj0hMSl7aWYoIU51bWJlci5pc0Zpbml0ZShlLndpZHRoKXx8IU51bWJlci5pc0Zpbml0ZShlLmhlaWdodCl8fCEoZS53aWR0aD4wKXx8IShlLmhlaWdodD4wKSlyZXR1cm4gbnVsbDtsZXQgaT1RaCh0KSxhPVFoKG4pO2lmKGkhPT12b2lkIDAmJmEhPT12b2lkIDApe2xldCB0PU1hdGgubWluKGUud2lkdGgsTWF0aC5tYXgoMSxNYXRoLmNlaWwoaSkpKSxuPU1hdGgubWluKGUuaGVpZ2h0LE1hdGgubWF4KDEsTWF0aC5jZWlsKGEpKSk7cmV0dXJuIHQ8ZS53aWR0aHx8bjxlLmhlaWdodD97d2lkdGg6dCxoZWlnaHQ6bn06bnVsbH1yZXR1cm4gJGgoZSxpLGEscil9ZnVuY3Rpb24gdGcoZSx0LG4scil7bGV0IGk9ZWcoe3dpZHRoOmUsaGVpZ2h0OnR9LG4sciwhMCk7cmV0dXJuIGk/e3Jlc2l6ZVdpZHRoOmkud2lkdGgscmVzaXplSGVpZ2h0OmkuaGVpZ2h0LHJlc2l6ZVF1YWxpdHk6YGhpZ2hgfTp2b2lkIDB9dmFyIG5nPXQoKCgpPT57fSkpO2Z1bmN0aW9uIHJnKGUsdCl7aWYodHlwZW9mIGUhPWBvYmplY3RgfHwhZSlyZXR1cm4hMTt0cnl7bGV0IG49ZTtyZXR1cm4gbi5jb2RlPT09YG9veG1sLW9wdGlvbmFsLWltYWdlLWNvZGVjLXVuYXZhaWxhYmxlYCYmbi5jb2RlYz09PWB0aWZmYCYmKHQ9PT12b2lkIDB8fG4uY29kZWM9PT10KX1jYXRjaHtyZXR1cm4hMX19ZnVuY3Rpb24gaWcoZSx0LG4pe2lmKCEoIVtuLngsbi55LG4ud2lkdGgsbi5oZWlnaHRdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSl8fG4ud2lkdGg8PTB8fG4uaGVpZ2h0PD0wKSl7ZS5zYXZlKCk7dHJ5e2UuZmlsbFN0eWxlPWAjODg4YCxlLmZvbnQ9YDExcHggc2Fucy1zZXJpZmAsZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7bGV0IHI9b2dbdF07ZS5maWxsVGV4dChyLG4ueCtuLndpZHRoLzIsbi55K24uaGVpZ2h0LzIsbi53aWR0aCl9ZmluYWxseXtlLnJlc3RvcmUoKX19fXZhciBhZyxvZyxzZz10KCgoKT0+e2FnPWNsYXNzIGUgZXh0ZW5kcyBFcnJvcntjb2RlPWBvb3htbC1vcHRpb25hbC1pbWFnZS1jb2RlYy11bmF2YWlsYWJsZWA7Y29uc3RydWN0b3IodCl7c3VwZXIoYCR7dC50b1VwcGVyQ2FzZSgpfSBpbWFnZSByZXF1aXJlcyBhbiBvcHRpb25hbCBjb2RlY2ApLHRoaXMuY29kZWM9dCx0aGlzLm5hbWU9YE9wdGlvbmFsSW1hZ2VDb2RlY1VuYXZhaWxhYmxlRXJyb3JgLE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLGUucHJvdG90eXBlKX19LG9nPXt0aWZmOmBUSUZGIGltYWdlIHVuYXZhaWxhYmxlYH19KSk7ZnVuY3Rpb24gY2coZSx0KXtyZXR1cm4gZS53aWR0aDw9MHx8ZS5oZWlnaHQ8PTB8fGUud2lkdGg+MzI3Njd8fGUuaGVpZ2h0PjMyNzY3fHxlLndpZHRoKmUuaGVpZ2h0PnR9ZnVuY3Rpb24gbGcoZSl7bGV0IHQ9ZS5zcGxpdChgO2AsMSlbMF0/LnRyaW0oKS50b0xvd2VyQ2FzZSgpO3JldHVybiB0PT09YGltYWdlL3RpZmZgfHx0PT09YGltYWdlL3gtdGlmZmB9ZnVuY3Rpb24gdWcoZSx0LG4scj0hMSl7bGV0IGk9e3JldGFpbmVkRGltZW5zaW9uczplLHJlc2l6ZU9wdGlvbnM6bnVsbH0sYT1lZyhlLHR5cGVvZiB0PT1gbnVtYmVyYCYmTnVtYmVyLmlzRmluaXRlKHQpJiZ0PjA/dDp2b2lkIDAsdHlwZW9mIG49PWBudW1iZXJgJiZOdW1iZXIuaXNGaW5pdGUobikmJm4+MD9uOnZvaWQgMCxyKTtyZXR1cm4gYT97cmV0YWluZWREaW1lbnNpb25zOmEscmVzaXplT3B0aW9uczp7cmVzaXplV2lkdGg6YS53aWR0aCxyZXNpemVIZWlnaHQ6YS5oZWlnaHQscmVzaXplUXVhbGl0eTpgaGlnaGB9fTppfWZ1bmN0aW9uIGRnKGUsdCxuKXtsZXQgcj1NYXRoLm1heChlLndpZHRoLGUuaGVpZ2h0KTtpZighTnVtYmVyLmlzRmluaXRlKHIpfHxyPnQpcmV0dXJuIG5ldyBnZShgaW1hZ2UtZGltZW5zaW9uYCx0LE51bWJlci5pc0Zpbml0ZShyKT9yOjIqKjUzLTEpO2xldCBpPWUud2lkdGgqZS5oZWlnaHQ7cmV0dXJuIG5ldyBnZShgaW1hZ2UtcGl4ZWxzYCxuLE51bWJlci5pc1NhZmVJbnRlZ2VyKGkpJiZpPj0wP2k6MioqNTMtMSl9YXN5bmMgZnVuY3Rpb24gZmcoZSx0PXt9KXtyZXR1cm4gcGcoZSx0KX1hc3luYyBmdW5jdGlvbiBwZyhlLHQ9e30sbil7bGV0e3dpZHRoUHQ6cj0wLGhlaWdodFB0Omk9MCxzdXBwcmVzc0JvdW5kYXJ5RnJhbWU6YT0hMSx0aWZmOm8sdGFyZ2V0V2lkdGhQeDpzLHRhcmdldEhlaWdodFB4OmMsbWF4UmV0YWluZWRQaXhlbHM6bD1ZfT10LHU9TnVtYmVyLmlzU2FmZUludGVnZXIobCkmJmw+MD9NYXRoLm1pbihsLFkpOlksZD1uZXcgVWludDhBcnJheShhd2FpdCBlLnNsaWNlKDAsNjQqMTAyNCkuYXJyYXlCdWZmZXIoKSk7aWYoU2UoZCkpe2xldHt3OnQsaDpufT1VZShyLGkpO3JldHVybiBtZyhhd2FpdCBXZShuZXcgVWludDhBcnJheShhd2FpdCBlLmFycmF5QnVmZmVyKCkpLHQsbixhKSx1KX1pZihDZShkKSl7bGV0e3c6dCxoOm59PVVlKHIsaSk7cmV0dXJuIG1nKGF3YWl0IGxoKG5ldyBVaW50OEFycmF5KGF3YWl0IGUuYXJyYXlCdWZmZXIoKSksdCxuKSx1KX1sZXQgZj0obj8/YXdhaXQgWWgoZSxkKSkuZGltZW5zaW9ucztpZihmJiZWaChmKSl0aHJvdyBkZyhmLHBlLGZlKTtsZXQgcD1UaChkKXx8bGcoZS50eXBlKSxtPWY/dWcoZixzLGMscCk6bnVsbDtpZihtJiZjZyhtLnJldGFpbmVkRGltZW5zaW9ucyx1KSl0aHJvdyBkZyhtLnJldGFpbmVkRGltZW5zaW9ucyxKLHUpO2lmKHApe2lmKCFvKXRocm93IG5ldyBhZyhgdGlmZmApO2xldCB0O3RyeXt0PWF3YWl0IG8ucmVuZGVyKG5ldyBVaW50OEFycmF5KGF3YWl0IGUuYXJyYXlCdWZmZXIoKSkse3RhcmdldFdpZHRoUHg6cyx0YXJnZXRIZWlnaHRQeDpjLG1heFJldGFpbmVkUGl4ZWxzOnV9KX1jYXRjaChlKXt0aHJvdyBkZShlKXx8d2goZSk/ZTpuZXcgRGgoYFRJRkYgY29kZWMgZmFpbGVkIHRvIGRlY29kZSB0aGUgaW1hZ2VgLHtjYXVzZTplfSl9aWYoIXQpdGhyb3cgbmV3IERoKGBUSUZGIGNvZGVjIGZhaWxlZCB0byBkZWNvZGUgdGhlIGltYWdlYCk7cmV0dXJuIG1nKHQsdSl9cmV0dXJuIG1nKG0/LnJlc2l6ZU9wdGlvbnM/YXdhaXQgY3JlYXRlSW1hZ2VCaXRtYXAoZSxtLnJlc2l6ZU9wdGlvbnMpOmF3YWl0IGNyZWF0ZUltYWdlQml0bWFwKGUpLHUpfWZ1bmN0aW9uIG1nKGUsdD1ZKXtpZighZSlyZXR1cm4gbnVsbDtsZXQgbj17d2lkdGg6TnVtYmVyKGUud2lkdGgpLGhlaWdodDpOdW1iZXIoZS5oZWlnaHQpfTtpZighY2cobix0KSlyZXR1cm4gZTt0aHJvdyB4aChlKSxkZyhuLEosdCl9dmFyIGhnPXQoKCgpPT57YmgoKSxTaCgpLF9lKCksWmgoKSxIaCgpLG5nKCksT2goKSxzZygpLGV0KCl9KSk7YXN5bmMgZnVuY3Rpb24gZ2coZSx0KXtsZXQgbj1fZy5nZXQoZSk7bnx8KG49e2FjdGl2ZTowLHdhaXRlcnM6W119LF9nLnNldChlLG4pKSxuLmFjdGl2ZT49Mnx8bi53YWl0ZXJzLmxlbmd0aD4wP2F3YWl0IG5ldyBQcm9taXNlKGU9Pm4ud2FpdGVycy5wdXNoKGUpKTpuLmFjdGl2ZSsrO3RyeXtyZXR1cm4gYXdhaXQgUHJvbWlzZS5yZXNvbHZlKCksYXdhaXQgdCgpfWZpbmFsbHl7bGV0IHQ9bi53YWl0ZXJzLnNoaWZ0KCk7dD90KCk6KG4uYWN0aXZlLS0sbi5hY3RpdmU9PT0wJiZfZy5kZWxldGUoZSkpfX12YXIgX2csdmc9dCgoKCk9PntfZSgpLF9nPW5ldyBXZWFrTWFwfSkpO2Z1bmN0aW9uIHlnKGU9dm9pZCAwKXtpZihlIT09dm9pZCAwJiYodHlwZW9mIGUhPWBvYmplY3RgfHwhZXx8QXJyYXkuaXNBcnJheShlKSkpdGhyb3cgVHlwZUVycm9yKGBpbWFnZVJlc291cmNlcyBtdXN0IGJlIGFuIG9iamVjdCB3aGVuIHByb3ZpZGVkYCk7bGV0IHQ9ZT8uZGVjb2RlZEJ5dGVCdWRnZXQ/PzEzNDIxNzcyODtpZighTnVtYmVyLmlzU2FmZUludGVnZXIodCl8fHQ8NHx8dD41MzY4NzA5MTIpdGhyb3cgUmFuZ2VFcnJvcihgaW1hZ2VSZXNvdXJjZXMuZGVjb2RlZEJ5dGVCdWRnZXQgbXVzdCBiZSBhIHNhZmUgaW50ZWdlciBmcm9tIDQgdG8gJHtoZX0gYnl0ZXNgKTtsZXQgbj1lPy5zdHJhdGVneT8/YGFkYXB0aXZlYDtpZihuIT09YGFkYXB0aXZlYCYmbiE9PWBzdHJpY3RgKXRocm93IFR5cGVFcnJvcihgaW1hZ2VSZXNvdXJjZXMuc3RyYXRlZ3kgbXVzdCBiZSAnYWRhcHRpdmUnIG9yICdzdHJpY3QnYCk7bGV0IHI9ZT8ucmVzb2x1dGlvbj8/YG5hdGl2ZS1pZi1maXRgO2lmKHIhPT1gbmF0aXZlLWlmLWZpdGAmJnIhPT1gZGlzcGxheWApdGhyb3cgVHlwZUVycm9yKGBpbWFnZVJlc291cmNlcy5yZXNvbHV0aW9uIG11c3QgYmUgJ25hdGl2ZS1pZi1maXQnIG9yICdkaXNwbGF5J2ApO3JldHVybiBPYmplY3QuZnJlZXplKHtkZWNvZGVkQnl0ZUJ1ZGdldDp0LHN0cmF0ZWd5Om4scmVzb2x1dGlvbjpyfSl9ZnVuY3Rpb24gYmcoZSl7cmV0dXJuIE51bWJlci5pc0Zpbml0ZShlKSYmZT4wP01hdGgubWF4KDEsTWF0aC5jZWlsKGUpKToxfWZ1bmN0aW9uIHhnKGUpe3JldHVybiBOdW1iZXIuaXNTYWZlSW50ZWdlcihlKSYmKGU/PzApPjA/ZToxfWZ1bmN0aW9uIFNnKGUsdCl7bGV0IG49MDtmb3IobGV0IHIgb2YgZS52YWx1ZXMoKSl7bGV0IGU9dChyKSxpPWUud2lkdGgqZS5oZWlnaHQqci5zdXJmYWNlcyo0O249TWF0aC5taW4oMioqNTMtMSxuK2kpfXJldHVybiBufWZ1bmN0aW9uIENnKGUsdCl7bGV0IG49bmV3IE1hcDtmb3IobGV0IHQgb2YgZSl7bGV0IGU9YmcodC50YXJnZXRXaWR0aFB4KSxyPWJnKHQudGFyZ2V0SGVpZ2h0UHgpLGk9dC5zb3VyY2VXaWR0aFB4IT09dm9pZCAwJiZ0LnNvdXJjZUhlaWdodFB4IT09dm9pZCAwLGE9aT9iZyh0LnNvdXJjZVdpZHRoUHgpOnZvaWQgMCxvPWk/YmcodC5zb3VyY2VIZWlnaHRQeCk6dm9pZCAwLHM9eGcodC5yZXRhaW5lZFN1cmZhY2VDb3VudCksYz1uLmdldCh0LmtleSk7Yz8oYy50YXJnZXRXaWR0aD1NYXRoLm1heChjLnRhcmdldFdpZHRoLGUpLGMudGFyZ2V0SGVpZ2h0PU1hdGgubWF4KGMudGFyZ2V0SGVpZ2h0LHIpLGEhPT12b2lkIDAmJm8hPT12b2lkIDAmJihjLnNvdXJjZVdpZHRoPU1hdGgubWF4KGMuc291cmNlV2lkdGg/PzAsYSksYy5zb3VyY2VIZWlnaHQ9TWF0aC5tYXgoYy5zb3VyY2VIZWlnaHQ/PzAsbykpLGMuc3VyZmFjZXM9TWF0aC5tYXgoYy5zdXJmYWNlcyxzKSk6bi5zZXQodC5rZXkse3RhcmdldFdpZHRoOmUsdGFyZ2V0SGVpZ2h0OnIsc291cmNlV2lkdGg6YSxzb3VyY2VIZWlnaHQ6byxzdXJmYWNlczpzfSl9bGV0IHI9ZT0+KHt3aWR0aDplLnNvdXJjZVdpZHRoPz9lLnRhcmdldFdpZHRoLGhlaWdodDplLnNvdXJjZUhlaWdodD8/ZS50YXJnZXRIZWlnaHR9KSxpPShlLHQpPT4oe3dpZHRoOk1hdGgubWF4KDEsTWF0aC5mbG9vcihlLnRhcmdldFdpZHRoKnQpKSxoZWlnaHQ6TWF0aC5tYXgoMSxNYXRoLmZsb29yKGUudGFyZ2V0SGVpZ2h0KnQpKX0pLGE9KGUsdCk9PntsZXQgbj1pKGUsdCk7cmV0dXJuIGUuc291cmNlV2lkdGg9PT12b2lkIDB8fGUuc291cmNlSGVpZ2h0PT09dm9pZCAwP246ZWcoe3dpZHRoOmUuc291cmNlV2lkdGgsaGVpZ2h0OmUuc291cmNlSGVpZ2h0fSxuLndpZHRoLG4uaGVpZ2h0KT8/e3dpZHRoOmUuc291cmNlV2lkdGgsaGVpZ2h0OmUuc291cmNlSGVpZ2h0fX0sbz0oZSx0LG4pPT57bGV0IHI9aShlLHQpLG89YShlLHQpLHM9by53aWR0aCpvLmhlaWdodDtyZXR1cm4gT2JqZWN0LmZyZWV6ZSh7Li4ucixyZXRhaW5lZFdpZHRoOm8ud2lkdGgscmV0YWluZWRIZWlnaHQ6by5oZWlnaHQscmV0YWluZWRQaXhlbHM6cyxtYXhSZXRhaW5lZFBpeGVsczpuPz9zfSl9LHM9U2cobixyKSxjPVsuLi5uLnZhbHVlcygpXS5ldmVyeShlPT57bGV0IHQ9cihlKTtyZXR1cm4gdC53aWR0aCp0LmhlaWdodDw9WX0pLGw9Wy4uLm4udmFsdWVzKCldLnNvbWUoZT0+ZS5zb3VyY2VXaWR0aD09PXZvaWQgMHx8ZS5zb3VyY2VIZWlnaHQ9PT12b2lkIDApLHU9dC5yZXNvbHV0aW9uPT09YG5hdGl2ZS1pZi1maXRgJiYhbCYmYyYmczw9dC5kZWNvZGVkQnl0ZUJ1ZGdldCxkPVNnKG4sZT0+YShlLDEpKTtpZih1KXtsZXQgZT1uZXcgTWFwO2ZvcihsZXRbdCxpXW9mIG4pe2xldCBuPXIoaSk7ZS5zZXQodCxPYmplY3QuZnJlZXplKHt3aWR0aDpuLndpZHRoLGhlaWdodDpuLmhlaWdodCxyZXRhaW5lZFdpZHRoOm4ud2lkdGgscmV0YWluZWRIZWlnaHQ6bi5oZWlnaHQscmV0YWluZWRQaXhlbHM6bi53aWR0aCpuLmhlaWdodCxtYXhSZXRhaW5lZFBpeGVsczpuLndpZHRoKm4uaGVpZ2h0fSkpfXJldHVybiBPYmplY3QuZnJlZXplKHt0YXJnZXRzOmUsaWRlYWxCeXRlczpkLHBsYW5uZWRCeXRlczpzLHF1YWxpdHlTY2FsZToxLGRlZ3JhZGVkOiExfSl9aWYodC5yZXNvbHV0aW9uPT09YG5hdGl2ZS1pZi1maXRgJiZ0LnN0cmF0ZWd5PT09YGFkYXB0aXZlYCYmbCYmZDw9dC5kZWNvZGVkQnl0ZUJ1ZGdldCl7bGV0IGU9TWF0aC5zcXJ0KHQuZGVjb2RlZEJ5dGVCdWRnZXQvTWF0aC5tYXgoMSxkKSk7Zm9yKGxldCB0IG9mIG4udmFsdWVzKCkpe2xldCBuPWEodCwxKTtlPU1hdGgubWluKGUsTWF0aC5zcXJ0KFkvKG4ud2lkdGgqbi5oZWlnaHQpKSl9bGV0IHI9bmV3IE1hcCxpPU1hdGguZmxvb3IodC5kZWNvZGVkQnl0ZUJ1ZGdldC80KSxzPTA7Zm9yKGxldFt0LGNdb2Ygbil7bGV0IG49YShjLDEpLGw9bi53aWR0aCpuLmhlaWdodCx1PU1hdGgubWF4KGwsTWF0aC5mbG9vcihsKmUqZSkpLGQ9TWF0aC5tYXgoMSxNYXRoLm1pbih1LE1hdGguZmxvb3IoaS9jLnN1cmZhY2VzKSkpLGY9TWF0aC5taW4oMixNYXRoLnNxcnQoZC9sKSk7ci5zZXQodCxvKGMsZixkKSk7bGV0IHA9ZCpjLnN1cmZhY2VzO2ktPXAscys9cCo0fXJldHVybiBPYmplY3QuZnJlZXplKHt0YXJnZXRzOnIsaWRlYWxCeXRlczpkLHBsYW5uZWRCeXRlczpzLHF1YWxpdHlTY2FsZToxLGRlZ3JhZGVkOiExfSl9aWYodC5zdHJhdGVneT09PWBzdHJpY3RgJiZkPnQuZGVjb2RlZEJ5dGVCdWRnZXQpdGhyb3cgbmV3IGdlKGBhY3RpdmUtZGVjb2RlZC1ieXRlc2AsdC5kZWNvZGVkQnl0ZUJ1ZGdldCxkKTtpZih0LnN0cmF0ZWd5PT09YGFkYXB0aXZlYCl7bGV0IGU9U2cobixlPT5hKGUsMCkpO2lmKGU+dC5kZWNvZGVkQnl0ZUJ1ZGdldCl0aHJvdyBuZXcgZ2UoYGFjdGl2ZS1kZWNvZGVkLWJ5dGVzYCx0LmRlY29kZWRCeXRlQnVkZ2V0LGUpfWxldCBmPTE7aWYodC5zdHJhdGVneT09PWBhZGFwdGl2ZWAmJmQ+dC5kZWNvZGVkQnl0ZUJ1ZGdldCl7bGV0IGU9MCxyPTE7Zm9yKGxldCBpPTA7aTw0MDtpKyspe2xldCBpPShlK3IpLzI7U2cobixlPT5hKGUsaSkpPD10LmRlY29kZWRCeXRlQnVkZ2V0P2U9aTpyPWl9Zj1lfWxldCBwPW5ldyBNYXA7Zm9yKGxldFtlLHRdb2YgbilwLnNldChlLG8odCxmKSk7bGV0IG09U2cobixlPT5hKGUsZikpLGg9ZjwxJiZuLnNpemU+MD9NYXRoLm1pbiguLi5bLi4ubi5lbnRyaWVzKCldLmZsYXRNYXAoKFtlLHRdKT0+e2xldCBuPXAuZ2V0KGUpO3JldHVybltuLndpZHRoL3QudGFyZ2V0V2lkdGgsbi5oZWlnaHQvdC50YXJnZXRIZWlnaHRdfSkpOmY7cmV0dXJuIE9iamVjdC5mcmVlemUoe3RhcmdldHM6cCxpZGVhbEJ5dGVzOmQscGxhbm5lZEJ5dGVzOm0scXVhbGl0eVNjYWxlOmgsZGVncmFkZWQ6ZjwxfSl9dmFyIHdnPXQoKCgpPT57X2UoKSxuZygpfSkpO2Z1bmN0aW9uIFRnKGUpe3JldHVybiB0eXBlb2YgZT09YG9iamVjdGAmJiEhZXx8dHlwZW9mIGU9PWBmdW5jdGlvbmB9ZnVuY3Rpb24gRWcoZSl7cmV0dXJuIGZfLmdldChlKT8/MH1mdW5jdGlvbiBEZyhlLHQpe3JldHVybiBwXy5nZXQoZSk/LmdldCh0KT8/MH1mdW5jdGlvbiBPZyhlLHQpe2lmKEVnKGUpIT09dCl0aHJvdyBFcnJvcihgRGVjb2RlZCBiaXRtYXAgY2FjaGUgd2FzIGRyb3BwZWQgZHVyaW5nIHJhc3RlciBpbnNwZWN0aW9uYCl9ZnVuY3Rpb24ga2coZSx0KXtyZXR1cm57b3duZXI6ZSxvd25lckdlbmVyYXRpb246RWcoZSksbmFtZXNwYWNlOnQsbmFtZXNwYWNlR2VuZXJhdGlvbjpEZyhlLHQpfX1mdW5jdGlvbiBBZyhlLHQpe2lmKHQub3duZXIhPT1lfHxFZyhlKSE9PXQub3duZXJHZW5lcmF0aW9uKXRocm93IEVycm9yKGBEZWNvZGVkIGJpdG1hcCBjYWNoZSB3YXMgZHJvcHBlZCBkdXJpbmcgYSBkZXJpdmVkIGltYWdlIG9wZXJhdGlvbmApfWZ1bmN0aW9uIGpnKGUsdCxuKXtpZihBZyhlLG4pLG4ubmFtZXNwYWNlIT09dHx8RGcoZSx0KSE9PW4ubmFtZXNwYWNlR2VuZXJhdGlvbil0aHJvdyBFcnJvcihgRGVjb2RlZCBiaXRtYXAgY2FjaGUgbmFtZXNwYWNlIHdhcyBkcm9wcGVkIGR1cmluZyBhIGRlcml2ZWQgaW1hZ2Ugb3BlcmF0aW9uYCl9ZnVuY3Rpb24gTWcoZSl7bGV0IHQ9ZF8uZ2V0KGUpO2lmKHQpZm9yKGxldCBlIG9mIHQudmFsdWVzKCkpZS50aGVuKGU9PntlLmluaXRpYWxCbG9iPXZvaWQgMH0pLmNhdGNoKCgpPT57fSl9ZnVuY3Rpb24gTmcoZSx0LG4scil7bGV0IGk9ZF8uZ2V0KGUpO2l8fChpPW5ldyBNYXAsZF8uc2V0KGUsaSkpO2xldCBhPWkuZ2V0KHQpO2lmKGEpcmV0dXJuIGE7bGV0IG89Z2coZSxhc3luYygpPT57bGV0IGU9YXdhaXQgcih0LG4pO3JldHVybntpbnNwZWN0aW9uOmF3YWl0IFloKGUpLGluaXRpYWxCbG9iOmV9fSkuY2F0Y2goZT0+e3Rocm93IGk/LmRlbGV0ZSh0KSxlfSk7cmV0dXJuIGkuc2V0KHQsbyksb31hc3luYyBmdW5jdGlvbiBQZyhlLHQsbixyPW4pe3JldHVybihhd2FpdCBOZyhyLGUsdCxuKSkuaW5zcGVjdGlvbn1mdW5jdGlvbiBGZyhlKXtsZXQgdD11Xy5nZXQoZSk7cmV0dXJuIHR8fCh0PXtlbnRyaWVzOm5ldyBNYXAscmV0YWluZWRCeXRlczowLHJldGFpbmVkTGltaXQ6bWV9LHVfLnNldChlLHQpKSx0fWFzeW5jIGZ1bmN0aW9uIElnKGUsdCxuKXtsZXQgcj1oXy5nZXQoZSk7aWYoIXIpe2xldCBpO3I9e3RhaWw6bmV3IFByb21pc2UoZT0+e2k9ZX0pLHBlbmRpbmc6MX0saF8uc2V0KGUscik7bGV0IGE7dHJ5e3JldHVybiBhPXpnKGUsdCksYXdhaXQgbigpfWZpbmFsbHl7TWcoZSksYT8uKCksaSgpLHIucGVuZGluZy0tLHIucGVuZGluZz09PTAmJmhfLmRlbGV0ZShlKX19bGV0IGk9cixhPWkudGFpbC5jYXRjaCgoKT0+e30pLG8scz1uZXcgUHJvbWlzZShlPT57bz1lfSk7aS5wZW5kaW5nKyssaS50YWlsPWEudGhlbigoKT0+cyksYXdhaXQgYTtsZXQgYzt0cnl7cmV0dXJuIGM9emcoZSx0KSxhd2FpdCBuKCl9ZmluYWxseXtNZyhlKSxjPy4oKSxvKCksaS5wZW5kaW5nLS0saS5wZW5kaW5nPT09MCYmaF8uZGVsZXRlKGUpfX1mdW5jdGlvbiBMZyhlKXshZXx8Z18uaGFzKGUpfHwoZ18uYWRkKGUpLHhoKGUpKX1mdW5jdGlvbiBSZyhlKXt0cnl7TGcoZSl9Y2F0Y2h7fX1mdW5jdGlvbiB6ZyhlLHQpe2xldCBuPXlnKHQpLHI9bV8uZ2V0KGUpO3J8fChyPXtjb3VudDowLGRlZmVycmVkOltdLGFjdGl2ZUJ5dGVzOjAsYWN0aXZlQml0bWFwczpuZXcgV2Vha1NldCxsaW1pdHM6bmV3IE1hcCxhY3RpdmVMaW1pdDpuLmRlY29kZWRCeXRlQnVkZ2V0fSxtXy5zZXQoZSxyKSk7bGV0IGk9cixhPVN5bWJvbChgZGVjb2RlZC1pbWFnZS1sZWFzZWApO2kubGltaXRzLnNldChhLG4uZGVjb2RlZEJ5dGVCdWRnZXQpLGkuYWN0aXZlTGltaXQ9TWF0aC5taW4oLi4uaS5saW1pdHMudmFsdWVzKCkpO2xldCBvPUZnKGUpO2ZvcihvLnJldGFpbmVkTGltaXQ9aS5hY3RpdmVMaW1pdDtvLnJldGFpbmVkQnl0ZXM+by5yZXRhaW5lZExpbWl0JiZIZyhlLG8pOyk7aS5jb3VudCsrO2xldCBzPSExO3JldHVybigpPT57aWYocylyZXR1cm47aWYocz0hMCxpLmNvdW50LS0saS5saW1pdHMuZGVsZXRlKGEpLGkuY291bnQ+MCl7aS5hY3RpdmVMaW1pdD1NYXRoLm1pbiguLi5pLmxpbWl0cy52YWx1ZXMoKSk7bGV0IHQ9dV8uZ2V0KGUpO3QmJih0LnJldGFpbmVkTGltaXQ9aS5hY3RpdmVMaW1pdCk7cmV0dXJufWZvcihsZXQgZSBvZiBpLmRlZmVycmVkKWUudGhlbihlPT5MZyhlKSkuY2F0Y2goKCk9Pnt9KTtpLmRlZmVycmVkPVtdLGkuYWN0aXZlQnl0ZXM9MCxpLmFjdGl2ZUJpdG1hcHM9bmV3IFdlYWtTZXQsbV8uZGVsZXRlKGUpO2xldCB0PXVfLmdldChlKTt0JiYodC5yZXRhaW5lZExpbWl0PW1lKX19ZnVuY3Rpb24gQmcoZSl7aWYoIWUpcmV0dXJuIDA7bGV0IHQ9TnVtYmVyKGUud2lkdGgpLG49TnVtYmVyKGUuaGVpZ2h0KTtyZXR1cm4gTnVtYmVyLmlzU2FmZUludGVnZXIodCkmJnQ+MCYmTnVtYmVyLmlzU2FmZUludGVnZXIobikmJm4+MD90Km4qNDowfWZ1bmN0aW9uIFZnKGUsdCl7aWYoIXQpcmV0dXJuO2xldCBuPW1fLmdldChlKTtpZighbnx8bi5jb3VudD09PTB8fG4uYWN0aXZlQml0bWFwcy5oYXModCkpcmV0dXJuO2xldCByPW4uYWN0aXZlQnl0ZXMrQmcodCk7aWYocj5uLmFjdGl2ZUxpbWl0KXRocm93IG5ldyBnZShgYWN0aXZlLWRlY29kZWQtYnl0ZXNgLG4uYWN0aXZlTGltaXQscik7bi5hY3RpdmVCaXRtYXBzLmFkZCh0KSxuLmFjdGl2ZUJ5dGVzPXJ9ZnVuY3Rpb24gSGcoZSx0LG4pe2xldCByPVsuLi50LmVudHJpZXNdLmZpbmQoKFtlXSk9PmUhPT1uKTtpZighcilyZXR1cm4hMTtsZXRbaSxhXT1yO3JldHVybiB0LmVudHJpZXMuZGVsZXRlKGkpLHQucmV0YWluZWRCeXRlcy09YS53ZWlnaHQsVWcoZSxhLm93bmVkUHJvbWlzZSksITB9ZnVuY3Rpb24gVWcoZSx0KXtsZXQgbj1tXy5nZXQoZSk7aWYobiYmbi5jb3VudD4wKXtuLmRlZmVycmVkLnB1c2godCk7cmV0dXJufXQudGhlbihlPT5MZyhlKSkuY2F0Y2goKCk9Pnt9KX1mdW5jdGlvbiBXZyhlKXtpZighKHR5cGVvZiBlIT1gbnVtYmVyYHx8IU51bWJlci5pc0Zpbml0ZShlKXx8IShlPjApKSlyZXR1cm4gTWF0aC5jZWlsKGUpfWZ1bmN0aW9uIEdnKGUpe3JldHVybnsuLi5lLHRhcmdldFdpZHRoUHg6V2coZS50YXJnZXRXaWR0aFB4KSx0YXJnZXRIZWlnaHRQeDpXZyhlLnRhcmdldEhlaWdodFB4KX19ZnVuY3Rpb24gS2coZSl7bGV0IHQ9ZS5tYXhSZXRhaW5lZFBpeGVscztyZXR1cm4gdHlwZW9mIHQ9PWBudW1iZXJgJiZOdW1iZXIuaXNTYWZlSW50ZWdlcih0KSYmdD4wP01hdGgubWluKHQsbWUvNCk6bWUvNH1mdW5jdGlvbiBxZyhlKXtyZXR1cm4gS2coZSk8bWUvNH1mdW5jdGlvbiBKZyhlLHQpe2lmKCFlKXJldHVybiBudWxsO2xldCBuPUtnKHQpLHI9TnVtYmVyKGUud2lkdGgpLGk9TnVtYmVyKGUuaGVpZ2h0KSxhPU1hdGgubWF4KHIsaSk7aWYoIU51bWJlci5pc0Zpbml0ZShhKXx8YT4zMjc2Nyl0aHJvdyBuZXcgZ2UoYGltYWdlLWRpbWVuc2lvbmAsSixOdW1iZXIuaXNGaW5pdGUoYSk/YToyKio1My0xKTtsZXQgbz1yKmk7aWYoIShyPjApfHwhKGk+MCl8fG8+bil0aHJvdyBuZXcgZ2UoYGltYWdlLXBpeGVsc2AsbixOdW1iZXIuaXNTYWZlSW50ZWdlcihvKSYmbz49MD9vOjIqKjUzLTEpO3JldHVybiBlfWZ1bmN0aW9uIFlnKGUsdD17fSl7bGV0IG49V2codC50YXJnZXRXaWR0aFB4KSxyPVdnKHQudGFyZ2V0SGVpZ2h0UHgpLGk9YCR7ZS5sZW5ndGh9OiR7ZX1gLGE9S2codCk7cmV0dXJuIG58fHI/YHJhc3Rlcjoke2l9OiR7bj8/MH14JHtyPz8wfTpwJHthfWA6YG5hdGl2ZToke2l9YH1mdW5jdGlvbiBYZyhlKXtyZXR1cm4gZS5pbnNwZWN0aW9uLmZvcm1hdD09PWB3bWZgfHxlLmluc3BlY3Rpb24uZm9ybWF0PT09YGVtZmB9ZnVuY3Rpb24gWmcoZSl7bGV0IHQ9VWUoZS53aWR0aFB0Pz8wLGUuaGVpZ2h0UHQ/PzApO3JldHVybnt3aWR0aDp0LncsaGVpZ2h0OnQuaCxzdXBwcmVzc0JvdW5kYXJ5RnJhbWU6ZS5zdXBwcmVzc0JvdW5kYXJ5RnJhbWU9PT0hMCxwaXhlbExpbWl0OktnKGUpfX1mdW5jdGlvbiBRZyhlLHQpe3JldHVybmBtZXRhZmlsZToke2Ake2UubGVuZ3RofToke2V9YH06cyR7KyEhdC5zdXBwcmVzc0JvdW5kYXJ5RnJhbWV9OnAke3QucGl4ZWxMaW1pdH06YH1mdW5jdGlvbiAkZyhlLHQsbil7bGV0IHI9WmcodCksaT1XZyhuPy53aWR0aCk/P3Iud2lkdGgsYT1XZyhuPy5oZWlnaHQpPz9yLmhlaWdodDtyZXR1cm5gJHtRZyhlLHIpfSR7aX14JHthfWB9ZnVuY3Rpb24gZV8oZSx0LG4pe2xldCByPVpnKG4pLGk9YCR7dl99JHtRZyh0LHIpfWAsYTtmb3IobGV0IHQgb2YgdV8uZ2V0KGUpPy5lbnRyaWVzLmtleXMoKT8/W10pe2lmKCF0LnN0YXJ0c1dpdGgoaSkpY29udGludWU7bGV0IGU9L14oXGQrKXgoXGQrKSQvLmV4ZWModC5zbGljZShpLmxlbmd0aCkpO2lmKCFlKWNvbnRpbnVlO2xldCBuPU51bWJlcihlWzFdKSxvPU51bWJlcihlWzJdKTtpZihuPHIud2lkdGh8fG88ci5oZWlnaHQpY29udGludWU7bGV0IHM9bipvOyghYXx8czxhLnBpeGVscykmJihhPXtrZXk6dC5zbGljZSh2Xy5sZW5ndGgpLHBpeGVsczpzfSl9cmV0dXJuIGE/LmtleX1mdW5jdGlvbiB0XyhlLHQsbixyKXtsZXQgaT1XZyhuLnRhcmdldFdpZHRoUHgpLGE9V2cobi50YXJnZXRIZWlnaHRQeCk7aWYoIWkmJiFhKXJldHVybjtsZXQgbz1LZyhuKSxzPWAke3ZffXJhc3Rlcjoke2Ake3QubGVuZ3RofToke3R9YH06YCxjO2ZvcihsZXRbdCxuXW9mIHVfLmdldChlKT8uZW50cmllcz8/W10pe2lmKCF0LnN0YXJ0c1dpdGgocykpY29udGludWU7bGV0IGU9L14oXGQrKXgoXGQrKTpwKFxkKykkLy5leGVjKHQuc2xpY2Uocy5sZW5ndGgpKTtpZighZSljb250aW51ZTtsZXQgbD1OdW1iZXIoZVsxXSksdT1OdW1iZXIoZVsyXSk7aWYoTnVtYmVyKGVbM10pIT09b3x8bDwoaT8/MCl8fHU8KGE/PzApKWNvbnRpbnVlO2xldCBkPU51bWJlcihuLmJpdG1hcD8ud2lkdGgpLGY9TnVtYmVyKG4uYml0bWFwPy5oZWlnaHQpLHA9TnVtYmVyLmlzRmluaXRlKGQpJiZkPjAmJk51bWJlci5pc0Zpbml0ZShmKSYmZj4wLG09cj9lZyhyLGwsdSk/P3I6dm9pZCAwLGg9cD9kKmY6bT9tLndpZHRoKm0uaGVpZ2h0OmwqdTsoIWN8fGg8Yy5waXhlbHMpJiYoYz17a2V5OnQuc2xpY2Uodl8ubGVuZ3RoKSxwaXhlbHM6aH0pfXJldHVybiBjPy5rZXl9ZnVuY3Rpb24gbl8oZSx0PXt9KXtsZXQgbj1LZyh0KSxyPWUuaW5zcGVjdGlvbi5kaW1lbnNpb25zO2lmKCFyKXJldHVybiExO2xldCBpPXIud2lkdGgqci5oZWlnaHQ7aWYodC5tYXhSZXRhaW5lZFBpeGVscyE9PXZvaWQgMCYmIUJoKHIpJiZpPD1uKXJldHVybiExO2xldCBhPVdnKHQudGFyZ2V0V2lkdGhQeCksbz1XZyh0LnRhcmdldEhlaWdodFB4KTtyZXR1cm4oZS5pbnNwZWN0aW9uLmZvcm1hdD09PWB0aWZmYD8oYSE9PXZvaWQgMHx8byE9PXZvaWQgMCkmJihhPT09dm9pZCAwfHxhPHIud2lkdGgpJiYobz09PXZvaWQgMHx8bzxyLmhlaWdodCk6YSE9PXZvaWQgMCYmbyE9PXZvaWQgMCYmKGE8ci53aWR0aHx8bzxyLmhlaWdodCkpfHxCaChyKXx8aT5ufWFzeW5jIGZ1bmN0aW9uIHJfKGUsdCxuLHI9e30saSxhKXtpJiZBZyhuLGkpO2xldCBvPUdnKHIpLHM9aT8ub3duZXJHZW5lcmF0aW9uPz9FZyhuKSxjPWF3YWl0IE5nKG4sZSx0LG4pO2k/QWcobixpKTpPZyhuLHMpO2xldCBsPVhnKGMpO2lmKGEpcmV0dXJuIGw/JGcoZSxvLHt3aWR0aDpOdW1iZXIoYS53aWR0aCksaGVpZ2h0Ok51bWJlcihhLmhlaWdodCl9KTpZZyhlLHt0YXJnZXRXaWR0aFB4Ok51bWJlcihhLndpZHRoKSx0YXJnZXRIZWlnaHRQeDpOdW1iZXIoYS5oZWlnaHQpLG1heFJldGFpbmVkUGl4ZWxzOm8ubWF4UmV0YWluZWRQaXhlbHN9KTtpZihsKXJldHVybiBlXyhuLGUsbyk/PyRnKGUsbyk7aWYoIW8udGFyZ2V0V2lkdGhQeCYmIW8udGFyZ2V0SGVpZ2h0UHgpcmV0dXJuIFlnKGUpO2xldCB1PWAke3ZffSR7WWcoZSl9YDtyZXR1cm4hcWcobykmJnVfLmdldChuKT8uZW50cmllcy5oYXModSk/WWcoZSk6bl8oYyxvKT90XyhuLGUsbyxjLmluc3BlY3Rpb24uZGltZW5zaW9ucyk/P1lnKGUsbyk6WWcoZSl9ZnVuY3Rpb24gaV8oZSx0LG4pe2xldCByPUZnKHQpLGk9ci5lbnRyaWVzLGE9aS5nZXQoZSk7aWYoYSlyZXR1cm4gaS5kZWxldGUoZSksaS5zZXQoZSxhKSxhLnByb21pc2UudGhlbihlPT4oVmcodCxlKSxlKSk7bGV0IG89Z2codCxuKSxzPW8udGhlbigoe2JpdG1hcDplLG93bmVkOnR9KT0+dD9lOm51bGwpLmNhdGNoKCgpPT5udWxsKSxjPW8udGhlbigoe2JpdG1hcDplLG93bmVkOm59KT0+e3RyeXtyZXR1cm4gVmcodCxlKSxlfWNhdGNoKHQpe3Rocm93IG4mJkxnKGUpLHR9fSksbD17cHJvbWlzZTpjLG93bmVkUHJvbWlzZTpzLHdlaWdodDowfTtmb3Ioby50aGVuKCh7Yml0bWFwOm4sb3duZWQ6YX0pPT57aWYoaS5nZXQoZSk9PT1sKXtpZihsLmJpdG1hcD1uLCFhKXtpLmRlbGV0ZShlKTtyZXR1cm59Zm9yKGwud2VpZ2h0PUJnKG4pLHIucmV0YWluZWRCeXRlcys9bC53ZWlnaHQ7ci5yZXRhaW5lZEJ5dGVzPnIucmV0YWluZWRMaW1pdCYmSGcodCxyLGUpOyk7fX0pLmNhdGNoKCgpPT57fSksYy5jYXRjaCgoKT0+e2kuZ2V0KGUpPT09bCYmKGkuZGVsZXRlKGUpLHIucmV0YWluZWRCeXRlcy09bC53ZWlnaHQsVWcodCxzKSl9KSxpLnNldChlLGwpO2kuc2l6ZT5sXyYmSGcodCxyLGUpOyk7cmV0dXJuIGN9ZnVuY3Rpb24gYV8oZSx0LG4scil7cmV0dXJuIGlfKGAke2V9OiR7dH1gLG4scil9ZnVuY3Rpb24gb18oZSx0LG4scixpKXtyZXR1cm4gaSYmamcobixlLGkpLGFfKGAke3lffSR7ZX1gLHQsbixyKX1mdW5jdGlvbiBzXyhlLHQsbixyPXt9LGk9bil7bGV0IGE9R2cocikse3dpZHRoUHQ6bz0wLGhlaWdodFB0OnM9MCxzdXBwcmVzc0JvdW5kYXJ5RnJhbWU6Yz0hMSx0aWZmOmwsdGFyZ2V0V2lkdGhQeDp1LHRhcmdldEhlaWdodFB4OmQsbWF4UmV0YWluZWRQaXhlbHM6ZixzdmdEZWNvZGVyOnB9PWE7aWYodD09PWBpbWFnZS9zdmcreG1sYCYmcClyZXR1cm4gYV8oX18sWWcoZSxhKSxpLGFzeW5jKCk9Pih7Yml0bWFwOmF3YWl0IHAoYXdhaXQgbihlLHQpLHt0YXJnZXRXaWR0aFB4OnUsdGFyZ2V0SGVpZ2h0UHg6ZH0pLG93bmVkOiEwfSkpO2xldCBtPShyLHAsbT0hMCk9PntsZXQgaD1wPy5pbml0aWFsQmxvYjtyZXR1cm4gcCYmKHAuaW5pdGlhbEJsb2I9dm9pZCAwKSxhXyhfXyxyLGksYXN5bmMoKT0+e2xldCByPWg/P2F3YWl0IG4oZSx0KSxpPXt3aWR0aFB0Om8saGVpZ2h0UHQ6cyxzdXBwcmVzc0JvdW5kYXJ5RnJhbWU6Yyx0aWZmOmwsdGFyZ2V0V2lkdGhQeDptP3U6dm9pZCAwLHRhcmdldEhlaWdodFB4Om0/ZDp2b2lkIDAsbWF4UmV0YWluZWRQaXhlbHM6Zn07cmV0dXJue2JpdG1hcDpwP2F3YWl0IHBnKHIsaSxwLmluc3BlY3Rpb24pOmF3YWl0IGZnKHIsaSksb3duZWQ6ITB9fSkudGhlbihlPT5KZyhlLGEpKX0saD1FZyhpKTtyZXR1cm4gTmcoaSxlLHQsbikudGhlbih0PT57aWYoT2coaSxoKSxYZyh0KSlyZXR1cm4gbShlXyhpLGUsYSk/PyRnKGUsYSksdCk7aWYoIXUmJiFkKXJldHVybiBtKFlnKGUpLHQsITEpO2xldCBuPWAke3ZffSR7WWcoZSl9YDtpZighcWcoYSkmJnVfLmdldChpKT8uZW50cmllcy5oYXMobikpcmV0dXJuIG0oWWcoZSksdCwhMSk7bGV0IHI9bl8odCxhKTtyZXR1cm4gbShyP3RfKGksZSxhLHQuaW5zcGVjdGlvbi5kaW1lbnNpb25zKT8/WWcoZSxhKTpZZyhlKSx0LHIpfSl9ZnVuY3Rpb24gY18oZSl7aWYoIVRnKGUpKXJldHVybjtmXy5zZXQoZSxFZyhlKSsxKSxwXy5kZWxldGUoZSksZF8uZGVsZXRlKGUpO2xldCB0PXVfLmdldChlKTtpZih0KXtmb3IobGV0IG4gb2YgdC5lbnRyaWVzLnZhbHVlcygpKVVnKGUsbi5vd25lZFByb21pc2UpO3QuZW50cmllcy5jbGVhcigpLHQucmV0YWluZWRCeXRlcz0wLHVfLmRlbGV0ZShlKX19dmFyIGxfLHVfLGRfLGZfLHBfLG1fLGhfLGdfLF9fLHZfLHlfLGJfPXQoKCgpPT57aGcoKSxaaCgpLEhoKCksbmcoKSxTaCgpLHZnKCksX2UoKSx3ZygpLGV0KCksbF89MjU2LHVfPW5ldyBXZWFrTWFwLGRfPW5ldyBXZWFrTWFwLGZfPW5ldyBXZWFrTWFwLHBfPW5ldyBXZWFrTWFwLG1fPW5ldyBXZWFrTWFwLGhfPW5ldyBXZWFrTWFwLGdfPW5ldyBXZWFrU2V0LF9fPWBiYXNlYCx2Xz1gJHtfX306YCx5Xz1gZGVyaXZlZDpgfSkpO2Z1bmN0aW9uIHhfKGUpe2xldCB0PXdfLmdldChlKTtyZXR1cm4gdHx8KHQ9e2ltZ3M6bmV3IE1hcH0sd18uc2V0KGUsdCkpLHR9ZnVuY3Rpb24gU18oZSx0LG49e30pe2lmKHR5cGVvZiBJbWFnZT5gdWApcmV0dXJuIHNfKGUsYGltYWdlL3N2Zyt4bWxgLHQse3RhcmdldFdpZHRoUHg6bi50YXJnZXRXaWR0aFB4LHRhcmdldEhlaWdodFB4Om4udGFyZ2V0SGVpZ2h0UHgsbWF4UmV0YWluZWRQaXhlbHM6bi5tYXhSZXRhaW5lZFBpeGVscyxzdmdEZWNvZGVyOm4ud29ya2VyRGVjb2Rlcn0pLnRoZW4odD0+e2lmKCF0KXRocm93IEVycm9yKGBzdmcgZGVjb2RlIGZhaWxlZDogJHtlfWApO3JldHVybiB0fSk7bGV0IHI9eF8odCksaT1yLmltZ3MuZ2V0KGUpO2lmKGkpcmV0dXJuIHIuaW1ncy5kZWxldGUoZSksci5pbWdzLnNldChlLGkpLGkucHJvbWlzZTtsZXQgYT17fTtpZihhLnByb21pc2U9Z2codCxhc3luYygpPT57aWYoci5pbWdzLmdldChlKSE9PWEpdGhyb3cgRXJyb3IoYFNWRyBkZWNvZGUgd2FzIHN1cGVyc2VkZWQgYmVmb3JlIGl0IHN0YXJ0ZWRgKTtsZXQgbj1hd2FpdCB0KGUsYGltYWdlL3N2Zyt4bWxgKSxpPVVSTC5jcmVhdGVPYmplY3RVUkwobik7dHJ5e2xldCB0PW5ldyBJbWFnZTtyZXR1cm4gYXdhaXQgbmV3IFByb21pc2UoKG4scik9Pnt0Lm9ubG9hZD0oKT0+e3R5cGVvZiB0LmRlY29kZT09YGZ1bmN0aW9uYD90LmRlY29kZSgpLnRoZW4obikuY2F0Y2gobik6bigpfSx0Lm9uZXJyb3I9KCk9PnIoRXJyb3IoYHN2ZyBsb2FkIGZhaWxlZDogJHtlfWApKSx0LnNyYz1pfSksdH1maW5hbGx5e1VSTC5yZXZva2VPYmplY3RVUkwoaSl9fSksYS5wcm9taXNlLmNhdGNoKCgpPT57ci5pbWdzLmdldChlKT09PWEmJnIuaW1ncy5kZWxldGUoZSl9KSxyLmltZ3Muc2V0KGUsYSksci5pbWdzLnNpemU+VF8pe2xldCBlPXIuaW1ncy5rZXlzKCkubmV4dCgpLnZhbHVlO3IuaW1ncy5kZWxldGUoZSl9cmV0dXJuIGEucHJvbWlzZX1mdW5jdGlvbiBDXyhlKXtsZXQgdD13Xy5nZXQoZSk7dCYmKHQuaW1ncy5jbGVhcigpLHdfLmRlbGV0ZShlKSl9dmFyIHdfLFRfLEVfPXQoKCgpPT57Yl8oKSx2ZygpLHdfPW5ldyBXZWFrTWFwLFRfPTI1Nn0pKTtmdW5jdGlvbiBEXyhlKXtyZXR1cm4vXlswLTlhLWZBLUZdezZ9JC8udGVzdChlKT9bcGFyc2VJbnQoZS5zbGljZSgwLDIpLDE2KSxwYXJzZUludChlLnNsaWNlKDIsNCksMTYpLHBhcnNlSW50KGUuc2xpY2UoNCw2KSwxNildOm51bGx9ZnVuY3Rpb24gT18oZSx0LG4pe3JldHVybiguMjk5KmUrLjU4Nyp0Ky4xMTQqbikvMjU1fWZ1bmN0aW9uIGtfKGUsdCxuKXtsZXQgcj1EXyh0KSxpPURfKG4pO2lmKCFyfHwhaSlyZXR1cm4gZTtsZXRbYSxvLHNdPXIsW2MsbCx1XT1pLGQ9ZS5kYXRhO2ZvcihsZXQgZT0wO2U8ZC5sZW5ndGg7ZSs9NCl7aWYoZFtlKzNdPT09MCljb250aW51ZTtsZXQgdD1PXyhkW2VdLGRbZSsxXSxkW2UrMl0pO2RbZV09TWF0aC5yb3VuZChhKyhjLWEpKnQpLGRbZSsxXT1NYXRoLnJvdW5kKG8rKGwtbykqdCksZFtlKzJdPU1hdGgucm91bmQocysodS1zKSp0KX1yZXR1cm4gZX1hc3luYyBmdW5jdGlvbiBBXyhlLHQsbil7bGV0e3dpZHRoOnIsaGVpZ2h0Oml9PW47aWYocjw9MHx8aTw9MHx8dHlwZW9mIGNyZWF0ZUltYWdlQml0bWFwPmB1YClyZXR1cm4gZTtsZXQgYT0obi5vZmZzY3JlZW5GYWN0b3J5Pz9qXykocixpKTtpZighYSlyZXR1cm4gZTtsZXQgbz1hLmdldENvbnRleHQoYDJkYCk7aWYoIW8pcmV0dXJuIGU7by5kcmF3SW1hZ2UoZSwwLDApO2xldCBzO3RyeXtzPW8uZ2V0SW1hZ2VEYXRhKDAsMCxyLGkpfWNhdGNoe3JldHVybiBlfWtfKHMsdC5jbHIxLHQuY2xyMiksby5wdXRJbWFnZURhdGEocywwLDApO2xldCBjPXRnKHIsaSxuLnRhcmdldFdpZHRoUHgsbi50YXJnZXRIZWlnaHRQeCk7cmV0dXJuIGM/Y3JlYXRlSW1hZ2VCaXRtYXAoYSxjKTpjcmVhdGVJbWFnZUJpdG1hcChhKX12YXIgal8sTV89dCgoKCk9PntuZygpLGpfPShlLHQpPT50eXBlb2YgT2Zmc2NyZWVuQ2FudmFzPmB1YD9udWxsOm5ldyBPZmZzY3JlZW5DYW52YXMoZSx0KX0pKTtmdW5jdGlvbiBOXyhlLHQpe3JldHVybiB0P2Ake2V9fGR1bzoke3QuY2xyMX06JHt0LmNscjJ9YDplfWFzeW5jIGZ1bmN0aW9uIFBfKGUsdCxuLHIsaT17fSl7bGV0e29mZnNjcmVlbkZhY3Rvcnk6YSxmYWlsQ2xvc2VkT25EdW90b25lRmFpbHVyZTpvPSExLC4uLnN9PWksYz1uP3suLi5zLG1heFJldGFpbmVkUGl4ZWxzOk1hdGgubWluKHMubWF4UmV0YWluZWRQaXhlbHM/PzMzNTU0NDMyLE1hdGguZmxvb3IoWS80KSl9OnMsbD1uP3suLi5jLHRhcmdldFdpZHRoUHg6dm9pZCAwLHRhcmdldEhlaWdodFB4OnZvaWQgMH06Yyx1PW4/a2cocixGXyk6dm9pZCAwLGQ9YXdhaXQgc18oZSx0LHIsbCk7aWYoIW58fCFkKXJldHVybiBkO2xldCBmPWF3YWl0IHJfKGUsdCxyLGwsdSxkKSxwPXRnKE51bWJlcihkLndpZHRoKSxOdW1iZXIoZC5oZWlnaHQpLHMudGFyZ2V0V2lkdGhQeCxzLnRhcmdldEhlaWdodFB4KSxtPXA/YHxyZXNpemU6JHtwLnJlc2l6ZVdpZHRofXgke3AucmVzaXplSGVpZ2h0fWA6YGA7cmV0dXJuIG9fKEZfLGAke05fKGYsbil9JHttfSR7bz9gfHN0cmljdGA6YGB9YCxyLGFzeW5jKCk9PntsZXR7dzplLGg6dH09bnQoZCk7aWYoZTw9MHx8dDw9MClyZXR1cm57Yml0bWFwOm8/bnVsbDpkLG93bmVkOiExfTtsZXQgcj1hd2FpdCBBXyhkLG4se3dpZHRoOmUsaGVpZ2h0OnQsb2Zmc2NyZWVuRmFjdG9yeTphLHRhcmdldFdpZHRoUHg6cy50YXJnZXRXaWR0aFB4LHRhcmdldEhlaWdodFB4OnMudGFyZ2V0SGVpZ2h0UHh9KTtpZihyPT09ZCl7aWYobylyZXR1cm57Yml0bWFwOm51bGwsb3duZWQ6ITF9O2lmKCFwKXJldHVybntiaXRtYXA6ZCxvd25lZDohMX07aWYodHlwZW9mIGNyZWF0ZUltYWdlQml0bWFwPmB1YCl0aHJvdyBFcnJvcihgY3JlYXRlSW1hZ2VCaXRtYXAgaXMgdW5hdmFpbGFibGUgZm9yIGR1b3RvbmUgZmFsbGJhY2sgcmVzYW1wbGluZ2ApO2xldCBlPWF3YWl0IGNyZWF0ZUltYWdlQml0bWFwKGQscCk7cmV0dXJue2JpdG1hcDplLG93bmVkOmUhPT1kfX1sZXQgaT1yO3JldHVybntiaXRtYXA6aSxvd25lZDppIT09ZH19LHUpfXZhciBGXyxJXz10KCgoKT0+e2JfKCksTV8oKSxzdCgpLF9lKCksbmcoKSxGXz1gZHVvdG9uZWB9KSk7ZnVuY3Rpb24gTF8oZSl7cmV0dXJuIGUuc3ZnSW1hZ2VQYXRoIT1udWxsJiZlLnNyY1JlY3Q9PW51bGx9dmFyIFJfPXQoKCgpPT57fSkpO2Z1bmN0aW9uIHpfKGUsdCxuKXtsZXR7dmFsdWVzOnJ9PW47aWYoci5sZW5ndGg9PT0wfHx0Lnc8PTB8fHQuaDw9MClyZXR1cm47bGV0IGk9bi5jb2xvclNlcmllcz8/YCM1QjlCRDVgLGE9TWF0aC5taW4oMix0LncqLjA4KSxvPU1hdGgubWF4KDIsdC5oKi4yKSxzPXQueCthLGM9dC55K28sbD1NYXRoLm1heCgxLHQudy1hKjIpLHU9TWF0aC5tYXgoMSx0LmgtbyoyKSxkPXIuZmlsdGVyKGU9PnR5cGVvZiBlPT1gbnVtYmVyYCk7aWYoZC5sZW5ndGg9PT0wKXJldHVybjtsZXQgZj1NYXRoLm1pbiguLi5kKSxwPU1hdGgubWF4KC4uLmQpLG09bi5taW4/P2YsaD1uLm1heD8/cDttPT09aCYmKGg9bSsxLC0tbSk7bGV0IGc9aC1tLF89ZT0+Yyt1LShlLW0pL2cqdTtpZihuLmtpbmQ9PT1gc3RlbWApe0hfKGUsbixzLGMsbCx1KTtyZXR1cm59aWYobi5raW5kPT09YGNvbHVtbmApe1ZfKGUsbixyLHMsYyxsLHUsbSxoKTtyZXR1cm59aWYobi5kaXNwbGF5WEF4aXMmJm08MCYmaD4wKXtlLnNhdmUoKSxlLnN0cm9rZVN0eWxlPW4uY29sb3JBeGlzPz9gIzAwMDAwMGAsZS5saW5lV2lkdGg9MSxlLmJlZ2luUGF0aCgpO2xldCB0PV8oMCk7ZS5tb3ZlVG8ocyx0KSxlLmxpbmVUbyhzK2wsdCksZS5zdHJva2UoKSxlLnJlc3RvcmUoKX1sZXQgdj1yLmxlbmd0aCx5PWU9PnY9PT0xP3MrbC8yOnMrZS8odi0xKSpsO2Uuc2F2ZSgpLGUuc3Ryb2tlU3R5bGU9aSxlLmxpbmVDYXA9YHJvdW5kYCxlLmxpbmVKb2luPWByb3VuZGAsZS5saW5lV2lkdGg9KG4ubGluZVdlaWdodD8/Ljc1KSp1dCxlLmJlZ2luUGF0aCgpO2xldCBiPSExLHg9bi5kaXNwbGF5RW1wdHlDZWxsc0FzPz9gZ2FwYDtmb3IobGV0IHQ9MDt0PHY7dCsrKXtsZXQgbj1yW3RdO2lmKG49PW51bGwpe2lmKHg9PT1gemVyb2Ape2xldCBuPXkodCkscj1fKDApO2I/ZS5saW5lVG8obixyKTooZS5tb3ZlVG8obixyKSxiPSEwKX1lbHNlIHg9PT1gZ2FwYCYmKGI9ITEpO2NvbnRpbnVlfWxldCBpPXkodCksYT1fKG4pO2I/ZS5saW5lVG8oaSxhKTooZS5tb3ZlVG8oaSxhKSxiPSEwKX1lLnN0cm9rZSgpLGUucmVzdG9yZSgpO2xldCBTPU1hdGgubWF4KDEsTWF0aC5taW4oMi41LHUqLjEyKSksQz1CXyhyLG4pO2ZvcihsZXQgdD0wO3Q8djt0Kyspe2xldCBhPXJbdF07aWYoYT09bnVsbCljb250aW51ZTtsZXQgbz1DW3RdOyhuLm1hcmtlcnN8fG8hPW51bGwpJiYoZS5zYXZlKCksZS5maWxsU3R5bGU9bz8/bi5jb2xvck1hcmtlcnM/P2ksZS5iZWdpblBhdGgoKSxlLmFyYyh5KHQpLF8oYSksUywwLE1hdGguUEkqMiksZS5maWxsKCksZS5yZXN0b3JlKCkpfX1mdW5jdGlvbiBCXyhlLHQpe2xldCBuPWUubWFwKCgpPT5udWxsKSxyPWUubWFwKGU9PnR5cGVvZiBlPT1gbnVtYmVyYD9lOm51bGwpLGk9ci5maW5kSW5kZXgoZT0+ZSE9bnVsbCksYT0tMTtmb3IobGV0IGU9ci5sZW5ndGgtMTtlPj0wO2UtLSlpZihyW2VdIT1udWxsKXthPWU7YnJlYWt9bGV0IG89ci5maWx0ZXIoZT0+ZSE9bnVsbCkscz1OYU4sYz1OYU47aWYoby5sZW5ndGg+MCYmKHM9TWF0aC5tYXgoLi4ubyksYz1NYXRoLm1pbiguLi5vKSksdC5uZWdhdGl2ZSYmdC5jb2xvck5lZ2F0aXZlKWZvcihsZXQgZT0wO2U8ci5sZW5ndGg7ZSsrKXtsZXQgaT1yW2VdO2khPW51bGwmJmk8MCYmKG5bZV09dC5jb2xvck5lZ2F0aXZlKX1pZih0LmZpcnN0JiZ0LmNvbG9yRmlyc3QmJmk+PTAmJihuW2ldPXQuY29sb3JGaXJzdCksdC5sYXN0JiZ0LmNvbG9yTGFzdCYmYT49MCYmKG5bYV09dC5jb2xvckxhc3QpLHQuaGlnaCYmdC5jb2xvckhpZ2gmJiFOdW1iZXIuaXNOYU4ocykpZm9yKGxldCBlPTA7ZTxyLmxlbmd0aDtlKyspcltlXT09PXMmJihuW2VdPXQuY29sb3JIaWdoKTtpZih0LmxvdyYmdC5jb2xvckxvdyYmIU51bWJlci5pc05hTihjKSlmb3IobGV0IGU9MDtlPHIubGVuZ3RoO2UrKylyW2VdPT09YyYmKG5bZV09dC5jb2xvckxvdyk7cmV0dXJuIG59ZnVuY3Rpb24gVl8oZSx0LG4scixpLGEsbyxzLGMpe2xldCBsPW4ubGVuZ3RoO2lmKGw9PT0wKXJldHVybjtsZXQgdT1zPDAmJmM+MD8wOnMsZD1jLXMsZj1lPT5pK28tKGUtcykvZCpvLHA9Zih1KSxtPWEvbCxoPU1hdGgubWluKDEuNSxtKi4xNSksZz1CXyhuLHQpO2ZvcihsZXQgaT0wO2k8bDtpKyspe2xldCBhPW5baV07aWYoYT09bnVsbCljb250aW51ZTtsZXQgbz1nW2ldPz8oYTwwJiZ0LmNvbG9yTmVnYXRpdmU/dC5jb2xvck5lZ2F0aXZlOnQuY29sb3JTZXJpZXM/P2AjNUI5QkQ1YCkscz1mKGEpLGM9cittKmkraC8yLGw9TWF0aC5tYXgoMSxtLWgpO2Uuc2F2ZSgpLGUuZmlsbFN0eWxlPW8sZS5maWxsUmVjdChjLE1hdGgubWluKHAscyksbCxNYXRoLmFicyhwLXMpKSxlLnJlc3RvcmUoKX19ZnVuY3Rpb24gSF8oZSx0LG4scixpLGEpe2xldCBvPXQudmFsdWVzLmxlbmd0aDtpZihvPT09MClyZXR1cm47bGV0IHM9cithLzIsYz1hLzIsbD1pL28sdT1NYXRoLm1pbigxLjUsbCouMTUpLGQ9Ql8odC52YWx1ZXMsdCk7Zm9yKGxldCByPTA7cjxvO3IrKyl7bGV0IGk9dC52YWx1ZXNbcl07aWYoaT09bnVsbHx8aT09PTApY29udGludWU7bGV0IGE9aTwwLG89ZFtyXT8/KGEmJnQuY29sb3JOZWdhdGl2ZT90LmNvbG9yTmVnYXRpdmU6dC5jb2xvclNlcmllcz8/YCM1QjlCRDVgKSxmPW4rbCpyK3UvMixwPU1hdGgubWF4KDEsbC11KTtlLnNhdmUoKSxlLmZpbGxTdHlsZT1vLGE/ZS5maWxsUmVjdChmLHMscCxjKTplLmZpbGxSZWN0KGYscy1jLHAsYyksZS5yZXN0b3JlKCl9fXZhciBVXz10KCgoKT0+e3B0KCl9KSk7ZnVuY3Rpb24gV18oZSl7aWYoZS5wcm90b2NvbCE9PUdfKXRocm93IFR5cGVFcnJvcihgVW5zdXBwb3J0ZWQgd29ya2VyIHJlbmRlcmVyIHByb3RvY29sOiAke1N0cmluZyhlLnByb3RvY29sKX1gKTtpZihlLmJ1aWx0aW4hPT1gbWF0aGAmJmUuYnVpbHRpbiE9PWB0aHJlZURgJiZlLmJ1aWx0aW4hPT1gcmVnaW9uTWFwYCYmZS5idWlsdGluIT09YGNoYXJ0RXhgJiZlLmJ1aWx0aW4hPT1gdGlmZmApdGhyb3cgVHlwZUVycm9yKGBVbnN1cHBvcnRlZCBidWlsdC1pbiB3b3JrZXIgcmVuZGVyZXI6ICR7U3RyaW5nKGUuYnVpbHRpbil9YCk7aWYoZS5idWlsdGluPT09YG1hdGhgJiZ0eXBlb2YgZS5lbmdpbmVBc3NldFVybCE9YHN0cmluZ2ApdGhyb3cgVHlwZUVycm9yKGBNYXRoIHdvcmtlciByZW5kZXJlciByZXF1aXJlcyBhbiBlbmdpbmUgYXNzZXQgVVJMYCk7cmV0dXJuIGV9dmFyIEdfLEtfPXQoKCgpPT57R189YG9veG1sLXdvcmtlci1yZW5kZXJlci1tb2R1bGUvdjFgfSkpO2Z1bmN0aW9uIHFfKGUsdD1gcm9tYW5gKXtpZih0PT09YGRvdWJsZS1zdHJ1Y2tgfHx0PT09YG1vbm9zcGFjZWApcmV0dXJuIHQ7aWYodD09PWBmcmFrdHVyYClyZXR1cm4gZT09PWBib2xkYHx8ZT09PWBib2xkSXRhbGljYD9gYm9sZC1mcmFrdHVyYDpgZnJha3R1cmA7aWYodD09PWBzY3JpcHRgKXJldHVybiBlPT09YGJvbGRgfHxlPT09YGJvbGRJdGFsaWNgP2Bib2xkLXNjcmlwdGA6YHNjcmlwdGA7aWYodD09PWBzYW5zLXNlcmlmYClzd2l0Y2goZSl7Y2FzZWByb21hbmA6cmV0dXJuYHNhbnMtc2VyaWZgO2Nhc2VgaXRhbGljYDpyZXR1cm5gc2Fucy1zZXJpZi1pdGFsaWNgO2Nhc2VgYm9sZGA6cmV0dXJuYGJvbGQtc2Fucy1zZXJpZmA7Y2FzZWBib2xkSXRhbGljYDpyZXR1cm5gc2Fucy1zZXJpZi1ib2xkLWl0YWxpY2B9c3dpdGNoKGUpe2Nhc2Vgcm9tYW5gOnJldHVybmBub3JtYWxgO2Nhc2VgYm9sZGA6cmV0dXJuYGJvbGRgO2Nhc2VgYm9sZEl0YWxpY2A6cmV0dXJuYGJvbGQtaXRhbGljYDtjYXNlYGl0YWxpY2A6cmV0dXJuIG51bGx9fWZ1bmN0aW9uIEpfKGUsdCxuKXtsZXQgcj1xXyh0LG4pLGk9cj9gIG1hdGh2YXJpYW50PSIke3J9ImA6YGAsYT1gYCxvPWBgLHM9KCk9PntvJiY9KGErPWA8bW4ke2l9PiR7c3Yobyl9PC9tbj5gLGBgKX07Zm9yKGxldCB0IG9mIGUpe2lmKHQ9PT1gIGApe3MoKTtjb250aW51ZX1pZih0Pj1gMGAmJnQ8PWA5YCl7bys9dDtjb250aW51ZX1zKCksbHYuaW5jbHVkZXModCl8fHV2LmluY2x1ZGVzKHQpfHxwdi5pbmNsdWRlcyh0KT9hKz1gPG1vPiR7c3YodCl9PC9tbz5gOmR2LmluY2x1ZGVzKHQpfHxmdi5pbmNsdWRlcyh0KT9hKz1gPG1vIGZlbmNlPSJ0cnVlIiBzdHJldGNoeT0iZmFsc2UiPiR7c3YodCl9PC9tbz5gOmErPWA8bWkke2l9PiR7c3YodCl9PC9taT5gfXJldHVybiBzKCksYX1mdW5jdGlvbiBZXyhlKXtyZXR1cm4gZS5tYXAoWl8pLmpvaW4oYGApfWZ1bmN0aW9uIFhfKGUpe3JldHVybmA8bXJvdz4ke1lfKGUpfTwvbXJvdz5gfWZ1bmN0aW9uIFpfKGUpe3N3aXRjaChlLmtpbmQpe2Nhc2VgcnVuYDpyZXR1cm4gSl8oZS50ZXh0LGUuc3R5bGUsZS5fX3NjcmlwdCk7Y2FzZWBncm91cGA6cmV0dXJuIFhfKGUuaXRlbXMpO2Nhc2VgZnJhY3Rpb25gOnJldHVybmA8bWZyYWMke2UuYmFyPT09ITE/YCBsaW5ldGhpY2tuZXNzPSIwImA6YGB9PiR7WF8oZS5udW0pfSR7WF8oZS5kZW4pfTwvbWZyYWM+YDtjYXNlYHN1cGA6cmV0dXJuYDxtc3VwPiR7WF8oZS5iYXNlKX0ke1hfKGUuc3VwPz9bXSl9PC9tc3VwPmA7Y2FzZWBzdWJgOnJldHVybmA8bXN1Yj4ke1hfKGUuYmFzZSl9JHtYXyhlLnN1Yj8/W10pfTwvbXN1Yj5gO2Nhc2Vgc3ViU3VwYDpyZXR1cm5gPG1zdWJzdXA+JHtYXyhlLmJhc2UpfSR7WF8oZS5zdWI/P1tdKX0ke1hfKGUuc3VwPz9bXSl9PC9tc3Vic3VwPmA7Y2FzZWBuYXJ5YDpyZXR1cm4gcnYoZSk7Y2FzZWBkZWxpbWl0ZXJgOnJldHVybiBpdihlKTtjYXNlYHJhZGljYWxgOnJldHVybiBlLmluZGV4JiZlLmluZGV4Lmxlbmd0aD9gPG1yb290PiR7WF8oZS5yYWRpY2FuZCl9JHtYXyhlLmluZGV4KX08L21yb290PmA6YDxtc3FydD4ke1lfKGUucmFkaWNhbmQpfTwvbXNxcnQ+YDtjYXNlYGxpbWl0YDpyZXR1cm4gdHYoZSk7Y2FzZWBhcnJheWA6cmV0dXJuIG52KGUpO2Nhc2VgZ3JvdXBDaHJgOntsZXQgdD1YXyhlLmJhc2UpLG49Y3YuaGFzKGUuY2hhcikscj1lLnBvcz09PWB0b3BgP2Btb3ZlcmA6YG11bmRlcmAsaT1gPG1vIHN0cmV0Y2h5PSIke259Ij4ke3N2KGUuY2hhcil9PC9tbz5gO3JldHVybiBuP2A8JHtyfT4ke3R9JHtpfTwvJHtyfT5gOmA8JHtyfSBhY2NlbnQ9InRydWUiPiR7dH0ke2l9PC8ke3J9PmB9Y2FzZWBiYXJgOntsZXQgdD1YXyhlLmJhc2UpLG49YDxtbyBzdHJldGNoeT0idHJ1ZSI+JiN4MjAxNTs8L21vPmA7cmV0dXJuIGUucG9zPT09YGJvdGA/YDxtdW5kZXI+JHt0fSR7bn08L211bmRlcj5gOmA8bW92ZXI+JHt0fSR7bn08L21vdmVyPmB9Y2FzZWBhY2NlbnRgOnJldHVybiBldihlKTtjYXNlYGZ1bmNgOnJldHVybmA8bXJvdz4ke1hfKGUubmFtZSl9PG1vPiYjeDIwNjE7PC9tbz4ke1hfKGUuYXJnKX08L21yb3c+YDtjYXNlYHBoYW50YDpyZXR1cm4gUV8oZSk7Y2FzZWBzUHJlYDpyZXR1cm5gPG1tdWx0aXNjcmlwdHM+JHtYXyhlLmJhc2UpfTxtcHJlc2NyaXB0cy8+JHtYXyhlLnN1Yil9JHtYXyhlLnN1cCl9PC9tbXVsdGlzY3JpcHRzPmA7Y2FzZWBib3hgOnJldHVybiBYXyhlLmJhc2UpO2Nhc2VgYm9yZGVyQm94YDpyZXR1cm4gJF8oZSl9fWZ1bmN0aW9uIFFfKGUpe2xldCB0PWUuc2hvdz9ZXyhlLmJhc2UpOmA8bXBoYW50b20+JHtZXyhlLmJhc2UpfTwvbXBoYW50b20+YCxuPVtdO3JldHVybiBlLnplcm9XaWQmJm4ucHVzaChgd2lkdGg9IjAiYCksZS56ZXJvQXNjJiZuLnB1c2goYGhlaWdodD0iMCJgKSxlLnplcm9EZXNjJiZuLnB1c2goYGRlcHRoPSIwImApLG4ubGVuZ3RoP2A8bXBhZGRlZCAke24uam9pbihgIGApfT4ke3R9PC9tcGFkZGVkPmA6YDxtcm93PiR7dH08L21yb3c+YH1mdW5jdGlvbiAkXyhlKXtsZXQgdD1bXSxuPSFlLmhpZGVUb3Ascj0hZS5oaWRlQm90LGk9IWUuaGlkZUxlZnQsYT0hZS5oaWRlUmlnaHQ7biYmciYmaSYmYT90LnB1c2goYGJveGApOihuJiZ0LnB1c2goYHRvcGApLHImJnQucHVzaChgYm90dG9tYCksaSYmdC5wdXNoKGBsZWZ0YCksYSYmdC5wdXNoKGByaWdodGApKSxlLnN0cmlrZUgmJnQucHVzaChgaG9yaXpvbnRhbHN0cmlrZWApLGUuc3RyaWtlViYmdC5wdXNoKGB2ZXJ0aWNhbHN0cmlrZWApLGUuc3RyaWtlQmx0ciYmdC5wdXNoKGB1cGRpYWdvbmFsc3RyaWtlYCksZS5zdHJpa2VUbGJyJiZ0LnB1c2goYGRvd25kaWFnb25hbHN0cmlrZWApO2xldCBvPVlfKGUuYmFzZSk7cmV0dXJuIHQubGVuZ3RoP2A8bWVuY2xvc2Ugbm90YXRpb249IiR7dC5qb2luKGAgYCl9Ij4ke299PC9tZW5jbG9zZT5gOmA8bXJvdz4ke299PC9tcm93PmB9ZnVuY3Rpb24gZXYoZSl7bGV0IHQ9WF8oZS5iYXNlKTtpZihodi5oYXMoZS5jaGFyKSlyZXR1cm5gPG1vdmVyPiR7dH08bW8gc3RyZXRjaHk9InRydWUiPiYjeDIwMTU7PC9tbz48L21vdmVyPmA7bGV0IG49bXZbZS5jaGFyXT8/ZS5jaGFyO3JldHVybmA8bW92ZXIgYWNjZW50PSJ0cnVlIj4ke3R9PG1vIHN0cmV0Y2h5PSIke249PT1g4oaSYHx8bj09PWDihpBgP2B0cnVlYDpgZmFsc2VgfSI+JHtzdihuKX08L21vPjwvbW92ZXI+YH1mdW5jdGlvbiB0dihlKXtsZXQgdD1YXyhlLmJhc2UpLG49ZS5sb3dlciYmZS5sb3dlci5sZW5ndGg/WF8oZS5sb3dlcik6bnVsbCxyPWUudXBwZXImJmUudXBwZXIubGVuZ3RoP1hfKGUudXBwZXIpOm51bGw7cmV0dXJuIG4mJnI/YDxtdW5kZXJvdmVyPiR7dH0ke259JHtyfTwvbXVuZGVyb3Zlcj5gOm4/YDxtdW5kZXI+JHt0fSR7bn08L211bmRlcj5gOnI/YDxtb3Zlcj4ke3R9JHtyfTwvbW92ZXI+YDp0fWZ1bmN0aW9uIG52KGUpe2xldCB0PU1hdGgubWF4KDEsLi4uZS5yb3dzLm1hcChlPT5lLmxlbmd0aCkpLG47bj1lLmFsaWduPT09YGVxYD9BcnJheS5mcm9tKHtsZW5ndGg6dH0sKGUsdCk9PnQlMj09MD9gcmlnaHRgOmBsZWZ0YCkuam9pbihgIGApOmUuYWxpZ249PT1gbGVmdGA/YGxlZnRgOmBjZW50ZXJgO2xldCByPWUucm93cy5tYXAoZT0+YDxtdHI+JHtlLm1hcChlPT5gPG10ZD4ke1lfKGUpfTwvbXRkPmApLmpvaW4oYGApfTwvbXRyPmApLmpvaW4oYGApO3JldHVybmA8bXRhYmxlIGNvbHVtbmFsaWduPSIke259IiByb3dzcGFjaW5nPSIwLjJlbSIgY29sdW1uc3BhY2luZz0iMC4zZW0iPiR7cn08L210YWJsZT5gfWZ1bmN0aW9uIHJ2KGUpe2xldCB0PWUubGltTG9jPT09YHN1YlN1cGA/ITA6ZS5saW1Mb2M9PT1gdW5kT3ZyYD8hMTpndi5oYXMoZS5vcCksbj1gPG1vIGxhcmdlb3A9InRydWUiPiR7c3YoZS5vcCl9PC9tbz5gLHI9ZS5zdWI/P1tdLGk9ZS5zdXA/P1tdLGE7cmV0dXJuIGE9dD9yLmxlbmd0aCYmaS5sZW5ndGg/YDxtc3Vic3VwPiR7bn0ke1hfKHIpfSR7WF8oaSl9PC9tc3Vic3VwPmA6ci5sZW5ndGg/YDxtc3ViPiR7bn0ke1hfKHIpfTwvbXN1Yj5gOmkubGVuZ3RoP2A8bXN1cD4ke259JHtYXyhpKX08L21zdXA+YDpuOnIubGVuZ3RoJiZpLmxlbmd0aD9gPG11bmRlcm92ZXI+JHtufSR7WF8ocil9JHtYXyhpKX08L211bmRlcm92ZXI+YDpyLmxlbmd0aD9gPG11bmRlcj4ke259JHtYXyhyKX08L211bmRlcj5gOmkubGVuZ3RoP2A8bW92ZXI+JHtufSR7WF8oaSl9PC9tb3Zlcj5gOm4sYDxtcm93PiR7YX0ke1lfKGUuYm9keSl9PC9tcm93PmB9ZnVuY3Rpb24gaXYoZSl7bGV0IHQ9ZT0+YDxtbyBmZW5jZT0idHJ1ZSIgc3RyZXRjaHk9InRydWUiPiR7c3YoZSl9PC9tbz5gLG49ZS5pdGVtcy5tYXAoZT0+WF8oZSkpLmpvaW4oYDxtbyBzZXBhcmF0b3I9InRydWUiPiw8L21vPmApO3JldHVybmA8bXJvdz4ke3QoZS5iZWdDaGFyKX0ke259JHt0KGUuZW5kQ2hhcil9PC9tcm93PmB9ZnVuY3Rpb24gYXYoZSx0KXtyZXR1cm5gPG1hdGggeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUwiIGRpc3BsYXk9IiR7dD9gYmxvY2tgOmBpbmxpbmVgfSI+JHtZXyhlKX08L21hdGg+YH12YXIgb3Ysc3YsY3YsbHYsdXYsZHYsZnYscHYsbXYsaHYsZ3YsX3Y9dCgoKCk9Pntvdj17IiYiOmAmYW1wO2AsIjwiOmAmbHQ7YCwiPiI6YCZndDtgLCciJzpgJnF1b3Q7YH0sc3Y9ZT0+ZS5yZXBsYWNlKC9bJjw+Il0vZyxlPT5vdltlXSksY3Y9bmV3IFNldChbLi4uYOKPnuKPn+KOtOKOte+4t++4uOKPnOKPnXt9W10oKcKvX+KAvmBdKSxsdj1gK+KIksKx4oiTw5fDt8K34oiX4ouF4oiY4oiZKi9gLHV2PWA94omgPD7iiaTiiaXiiYjiiaHiiLziiYXiiYPihpLihpDihpTih5LiiIjiiIniioLiiobiioPiiofiiJ3iiariiaviiqXiiZRgLGR2PWAoW3vin6jijIjijIpgLGZ2PWApXX3in6nijInijItgLHB2PWAsO2AsbXY9eyLMgCI6ImAiLCLMgSI6YMK0YCwizIIiOmBeYCwizIMiOmB+YCwizIYiOmDLmGAsIsyHIjpgy5lgLCLMiCI6YMKoYCwizIwiOmDLh2AsIuKDlyI6YOKGkmAsIuKDliI6YOKGkGB9LGh2PW5ldyBTZXQoW2DMhWAsYMyEYCxgwq9gLGDigL5gLGDMsmAsYMyzYF0pLGd2PW5ldyBTZXQoWy4uLmDiiKviiKziiK3iiK7iiK/iiLDiiLHiiLLiiLPiqIziqI3iqI7iqI/iqJDiqJHiqJLiqJPiqJTiqJXiqJbiqJdgXSl9KSk7ZnVuY3Rpb24gdnYoZSl7bGV0IHQ9L3ZpZXdCb3g9IihbLVxkLl0rKSAoWy1cZC5dKykgKFstXGQuXSspIChbLVxkLl0rKSIvLmV4ZWMoZSk7aWYoIXQpcmV0dXJue3dpZHRoRW06MCxhc2NlbnRFbTowLGRlc2NlbnRFbTowfTtsZXQgbj1wYXJzZUZsb2F0KHRbMl0pLHI9cGFyc2VGbG9hdCh0WzNdKSxpPXBhcnNlRmxvYXQodFs0XSk7cmV0dXJue3dpZHRoRW06ci9idixhc2NlbnRFbTpNYXRoLm1heCgwLC1uL2J2KSxkZXNjZW50RW06TWF0aC5tYXgoMCwobitpKS9idil9fWZ1bmN0aW9uIHl2KGUsdCl7cmV0dXJuIGUucmVwbGFjZSgvY3VycmVudENvbG9yL2csdCl9dmFyIGJ2LHh2PXQoKCgpPT57YnY9MWUzfSkpO2Z1bmN0aW9uIFN2KGUsdCxuKXtsZXQgcj1NYXRoLm1heCgxLE1hdGgucm91bmQodCoyNTYpKSxpPU1hdGgubWF4KDEsTWF0aC5yb3VuZChuKjI1NikpO3JldHVybiBlLnJlcGxhY2UoLzxzdmcoW14+XSo/KT4vLChlLHQpPT5gPHN2ZyR7dC5yZXBsYWNlKC9ccyg/OndpZHRofGhlaWdodCk9IlteIl0qIi9nLGBgKX0gd2lkdGg9IiR7cn0iIGhlaWdodD0iJHtpfSI+YCl9ZnVuY3Rpb24gQ3YoZSx0KXtyZXR1cm4gUmVnRXhwKGAoPzpefFxccykke3R9PSIoW14iXSopImApLmV4ZWMoZSk/LlsxXX1mdW5jdGlvbiB3dihlLHQsbj0wKXtsZXQgcj1OdW1iZXIucGFyc2VGbG9hdChDdihlLHQpPz9gYCk7cmV0dXJuIE51bWJlci5pc0Zpbml0ZShyKT9yOm59ZnVuY3Rpb24gVHYoZSl7bGV0IHQ9bmV3IE1hcDtmb3IobGV0IG4gb2ZbYGZpbGxgLGBzdHJva2VgLGBzdHJva2Utd2lkdGhgLGBzdHJva2UtbGluZWNhcGAsYHN0cm9rZS1saW5lam9pbmAsYGZpbGwtcnVsZWAsYG9wYWNpdHlgXSl7bGV0IHI9Q3YoZSxuKTtyIT09dm9pZCAwJiZ0LnNldChuLHIpfWxldCBuPUN2KGUsYHN0eWxlYCk7aWYobilmb3IobGV0IGUgb2Ygbi5zcGxpdChgO2ApKXtsZXQgbj1lLmluZGV4T2YoYDpgKTtpZihuPDApY29udGludWU7bGV0IHI9ZS5zbGljZSgwLG4pLnRyaW0oKSxpPWUuc2xpY2UobisxKS50cmltKCk7ciYmaSYmdC5zZXQocixpKX1yZXR1cm4gdH1mdW5jdGlvbiBFdihlLHQsbil7bGV0IHI9VHYodCksaT17Li4ubn0sYT1yLmdldChgZmlsbGApO2E9PT1gbm9uZWA/aS5maWxsPSExOmEmJihpLmZpbGw9ITAsZS5maWxsU3R5bGU9YSk7bGV0IG89ci5nZXQoYHN0cm9rZWApO289PT1gbm9uZWA/aS5zdHJva2U9ITE6byYmKGkuc3Ryb2tlPSEwLGUuc3Ryb2tlU3R5bGU9byk7bGV0IHM9TnVtYmVyLnBhcnNlRmxvYXQoci5nZXQoYHN0cm9rZS13aWR0aGApPz9gYCk7TnVtYmVyLmlzRmluaXRlKHMpJiYoZS5saW5lV2lkdGg9cyk7bGV0IGM9ci5nZXQoYHN0cm9rZS1saW5lY2FwYCk7KGM9PT1gYnV0dGB8fGM9PT1gcm91bmRgfHxjPT09YHNxdWFyZWApJiYoZS5saW5lQ2FwPWMpO2xldCBsPXIuZ2V0KGBzdHJva2UtbGluZWpvaW5gKTsobD09PWBiZXZlbGB8fGw9PT1gcm91bmRgfHxsPT09YG1pdGVyYCkmJihlLmxpbmVKb2luPWwpO2xldCB1PXIuZ2V0KGBmaWxsLXJ1bGVgKTsodT09PWBldmVub2RkYHx8dT09PWBub256ZXJvYCkmJihpLmZpbGxSdWxlPXUpO2xldCBkPU51bWJlci5wYXJzZUZsb2F0KHIuZ2V0KGBvcGFjaXR5YCk/P2BgKTtyZXR1cm4gTnVtYmVyLmlzRmluaXRlKGQpJiYoZS5nbG9iYWxBbHBoYSo9TWF0aC5tYXgoMCxNYXRoLm1pbigxLGQpKSksaX1mdW5jdGlvbiBEdihlLHQpe2lmKCF0KXJldHVybjtsZXQgbj0vKFthLXpBLVpdKylcKChbXildKilcKS9nO2ZvcihsZXQgcj1uLmV4ZWModCk7cjtyPW4uZXhlYyh0KSl7bGV0IHQ9clsyXS50cmltKCkuc3BsaXQoL1tccyxdKy8pLmZpbHRlcihCb29sZWFuKS5tYXAoTnVtYmVyKTtpZighdC5zb21lKGU9PiFOdW1iZXIuaXNGaW5pdGUoZSkpKXN3aXRjaChyWzFdKXtjYXNlYG1hdHJpeGA6dC5sZW5ndGg+PTYmJmUudHJhbnNmb3JtKC4uLnQuc2xpY2UoMCw2KSk7YnJlYWs7Y2FzZWB0cmFuc2xhdGVgOmUudHJhbnNsYXRlKHRbMF0/PzAsdFsxXT8/MCk7YnJlYWs7Y2FzZWBzY2FsZWA6e2xldCBuPXRbMF0/PzE7ZS5zY2FsZShuLHRbMV0/P24pO2JyZWFrfWNhc2Vgcm90YXRlYDp7bGV0IG49KHRbMF0/PzApKk1hdGguUEkvMTgwO3QubGVuZ3RoPj0zPyhlLnRyYW5zbGF0ZSh0WzFdLHRbMl0pLGUucm90YXRlKG4pLGUudHJhbnNsYXRlKC10WzFdLC10WzJdKSk6ZS5yb3RhdGUobik7YnJlYWt9fX19ZnVuY3Rpb24gT3YoZSx0LG4pe24uZmlsbCYmZS5maWxsKHQsbi5maWxsUnVsZSksbi5zdHJva2UmJmUubGluZVdpZHRoPjAmJmUuc3Ryb2tlKHQpfWZ1bmN0aW9uIGt2KGUsdCxuLHIpe2xldCBpPUN2KHQuc2xpY2UoMCx0LmluZGV4T2YoYD5gKSsxKSxgdmlld0JveGApPy50cmltKCkuc3BsaXQoL1tccyxdKy8pLm1hcChOdW1iZXIpO2lmKCFpfHxpLmxlbmd0aCE9PTR8fGkuc29tZShlPT4hTnVtYmVyLmlzRmluaXRlKGUpKSl0aHJvdyBUeXBlRXJyb3IoYE1hdGhKYXggU1ZHIG11c3QgY29udGFpbiBhIGZpbml0ZSB2aWV3Qm94YCk7bGV0W2EsbyxzLGNdPWk7aWYoIShzPjApfHwhKGM+MCkpdGhyb3cgVHlwZUVycm9yKGBNYXRoSmF4IFNWRyB2aWV3Qm94IG11c3QgaGF2ZSBwb3NpdGl2ZSBkaW1lbnNpb25zYCk7ZS5zYXZlKCksZS5zZXRUcmFuc2Zvcm0obi9zLDAsMCxyL2MsLWEqbi9zLC1vKnIvYyksZS5maWxsU3R5bGU9YCMwMDAwMDBgLGUuc3Ryb2tlU3R5bGU9YCMwMDAwMDBgLGUubGluZVdpZHRoPTE7bGV0IGw9e2ZpbGw6ITAsc3Ryb2tlOiExLGZpbGxSdWxlOmBub256ZXJvYH0sdT1bXSxkPS88XC8/KFtBLVphLXpdW1x3Oi1dKikoW14+XSopPi9nO2ZvcihsZXQgbj1kLmV4ZWModCk7bjtuPWQuZXhlYyh0KSl7bGV0W3QscixpPWBgXT1uLGE9ci50b0xvd2VyQ2FzZSgpLG89dC5zdGFydHNXaXRoKGA8L2ApO2lmKGE9PT1gc3ZnYCljb250aW51ZTtpZihvKXthPT09YGdgJiYoZS5yZXN0b3JlKCksbD11LnBvcCgpPz9sKTtjb250aW51ZX1pZihhPT09YGdgKXt1LnB1c2gobCksZS5zYXZlKCksbD1FdihlLGksbCksRHYoZSxDdihpLGB0cmFuc2Zvcm1gKSk7Y29udGludWV9aWYoYSE9PWBwYXRoYCYmYSE9PWByZWN0YCYmYSE9PWBsaW5lYCljb250aW51ZTtlLnNhdmUoKTtsZXQgcz1FdihlLGksbCk7RHYoZSxDdihpLGB0cmFuc2Zvcm1gKSk7bGV0IGM9YT09PWBwYXRoYD9uZXcgUGF0aDJEKEN2KGksYGRgKT8/YGApOm5ldyBQYXRoMkQ7YT09PWByZWN0YD9jLnJlY3Qod3YoaSxgeGApLHd2KGksYHlgKSx3dihpLGB3aWR0aGApLHd2KGksYGhlaWdodGApKTphPT09YGxpbmVgJiYoYy5tb3ZlVG8od3YoaSxgeDFgKSx3dihpLGB5MWApKSxjLmxpbmVUbyh3dihpLGB4MmApLHd2KGksYHkyYCkpKSxPdihlLGMscyksZS5yZXN0b3JlKCl9ZS5yZXN0b3JlKCl9YXN5bmMgZnVuY3Rpb24gQXYoZSx0KXtsZXR7d2lkdGg6bixoZWlnaHQ6cn09QnIoZS53aWR0aEVtKjI1NiwoZS5hc2NlbnRFbStlLmRlc2NlbnRFbSkqMjU2KSxpPW9lKG4sciksYT1pPy5nZXRDb250ZXh0KGAyZGApO2lmKCFpfHwhYXx8dHlwZW9mIFBhdGgyRD5gdWApdGhyb3cgRXJyb3IoYE1hdGggU1ZHIHJhc3Rlcml6YXRpb24gcmVxdWlyZXMgQ2FudmFzIDJEIGFuZCBQYXRoMkQgc3VwcG9ydGApO2t2KGEsU3YoeXYoZS5zdmcsdCksZS53aWR0aEVtLGUuYXNjZW50RW0rZS5kZXNjZW50RW0pLG4scik7bGV0IG89aSxzPW4sYz1yLGw9TXYvMjU2LHU9TWF0aC5tYXgoMSxNYXRoLnJvdW5kKG4qbCkpLGQ9TWF0aC5tYXgoMSxNYXRoLnJvdW5kKHIqbCkpO2Zvcig7cz51fHxjPmQ7KXtsZXQgZT1NYXRoLm1heCh1LE1hdGguY2VpbChzLzIpKSx0PU1hdGgubWF4KGQsTWF0aC5jZWlsKGMvMikpLG49b2UoZSx0KSxyPW4/LmdldENvbnRleHQoYDJkYCk7aWYoIW58fCFyKWJyZWFrO3IuaW1hZ2VTbW9vdGhpbmdFbmFibGVkPSEwLHIuaW1hZ2VTbW9vdGhpbmdRdWFsaXR5PWBoaWdoYCxyLmRyYXdJbWFnZShvLDAsMCxlLHQpLG89bixzPWUsYz10fXJldHVybntzb3VyY2U6byx3aWR0aFB4OnMsaGVpZ2h0UHg6Y319ZnVuY3Rpb24ganYoZSx0KXtsZXQgbj1vZShlLndpZHRoUHgsZS5oZWlnaHRQeCk7aWYoIW4pcmV0dXJuIGUuc291cmNlO2xldCByPW4uZ2V0Q29udGV4dChgMmRgKTtyZXR1cm4gcj8oci5kcmF3SW1hZ2UoZS5zb3VyY2UsMCwwLGUud2lkdGhQeCxlLmhlaWdodFB4KSxyLmdsb2JhbENvbXBvc2l0ZU9wZXJhdGlvbj1gc291cmNlLWluYCxyLmZpbGxTdHlsZT10LHIuZmlsbFJlY3QoMCwwLGUud2lkdGhQeCxlLmhlaWdodFB4KSxuKTplLnNvdXJjZX12YXIgTXYsTnY9dCgoKCk9Pnt4digpLGNlKCksVXIoKSxNdj02NH0pKSxQdj10KCgoKT0+e192KCkseHYoKSxOdigpfSkpO2Z1bmN0aW9uIEZ2KGUpe3JldHVybiB0eXBlb2YgSFRNTENhbnZhc0VsZW1lbnQ8YHVgJiZlIGluc3RhbmNlb2YgSFRNTENhbnZhc0VsZW1lbnR9ZnVuY3Rpb24gSXYoZT0xKXtyZXR1cm4gdHlwZW9mIHdpbmRvdzxgdWAmJndpbmRvdy5kZXZpY2VQaXhlbFJhdGlvfHxlfXZhciBMdj10KCgoKT0+e30pKTtmdW5jdGlvbiBSdihlLHQsbil7bGV0IHI9TWF0aC5yb3VuZCh0Km4pJTI9PTE/LjU6MCxpPWUqbjtyZXR1cm4oTWF0aC5yb3VuZChpLXIpK3IpL24tZX12YXIgenY9dCgoKCk9Pnt9KSk7ZnVuY3Rpb24gQnYoZSl7aWYoIWUuc3RhcnRzV2l0aChgZGF0YTpgKSlyZXR1cm4gbnVsbDtsZXQgdD1lLmluZGV4T2YoYCxgKTtpZih0PT09LTEpcmV0dXJuIG51bGw7bGV0IG49YXRvYihlLnNsaWNlKHQrMSkpLHI9bmV3IFVpbnQ4QXJyYXkobi5sZW5ndGgpO2ZvcihsZXQgZT0wO2U8bi5sZW5ndGg7ZSsrKXJbZV09bi5jaGFyQ29kZUF0KGUpO3JldHVybiByLmJ1ZmZlcn12YXIgVnY9dCgoKCk9Pnt9KSksSHYsVXY9dCgoKCk9PntIdj1jbGFzc3tzdGF0ZT1gdW5pbml0aWFsaXplZGA7Z2VuZXJhdGlvblZhbHVlPTA7cmVhZGluZXNzO3BvaXNvbkxpc3RlbmVycz1uZXcgU2V0O2NvbnN0cnVjdG9yKGUsdCxuKXt0aGlzLmluaXRpYWxpemU9ZSx0aGlzLnJlaW5pdGlhbGl6ZT10LHRoaXMubm9ybWFsaXplRmFpbHVyZT1ufWdldCBnZW5lcmF0aW9uKCl7cmV0dXJuIHRoaXMuZ2VuZXJhdGlvblZhbHVlfWdldCBwb2lzb25lZCgpe3JldHVybiB0aGlzLnN0YXRlPT09YHBvaXNvbmVkYH1vblBvaXNvbihlKXtyZXR1cm4gdGhpcy5wb2lzb25MaXN0ZW5lcnMuYWRkKGUpLCgpPT50aGlzLnBvaXNvbkxpc3RlbmVycy5kZWxldGUoZSl9YXN5bmMgZW5zdXJlUmVhZHkoKXtpZih0aGlzLnN0YXRlIT09YHJlYWR5YCl7aWYoIXRoaXMucmVhZGluZXNzKXtsZXQgZT10aGlzLnN0YXRlPT09YHVuaW5pdGlhbGl6ZWRgP3RoaXMuaW5pdGlhbGl6ZTp0aGlzLnJlaW5pdGlhbGl6ZTt0aGlzLnJlYWRpbmVzcz1Qcm9taXNlLnJlc29sdmUoKS50aGVuKGUpLnRoZW4oKCk9Pnt0aGlzLmdlbmVyYXRpb25WYWx1ZSs9MSx0aGlzLnN0YXRlPWByZWFkeWAsdGhpcy5yZWFkaW5lc3M9dm9pZCAwfSxlPT57dGhyb3cgdGhpcy5yZWFkaW5lc3M9dm9pZCAwLGV9KX1hd2FpdCB0aGlzLnJlYWRpbmVzc319cnVuKGUpe3RyeXtyZXR1cm4gZSgpfWNhdGNoKGUpe2xldCB0PXRoaXMubm9ybWFsaXplRmFpbHVyZShlKTt0aHJvdyB0Pyh0aGlzLnBvaXNvbih0KSx0KTplfX10cnlSdW5SZWFkeShlKXtpZih0aGlzLnN0YXRlIT09YHJlYWR5YClyZXR1cm57Y3VycmVudDohMX07bGV0IHQ9dGhpcy5nZW5lcmF0aW9uVmFsdWUsbj10aGlzLnJ1bihlKTtyZXR1cm4gdGhpcy5zdGF0ZSE9PWByZWFkeWB8fHQhPT10aGlzLmdlbmVyYXRpb25WYWx1ZT97Y3VycmVudDohMX06e2N1cnJlbnQ6ITAsZ2VuZXJhdGlvbjp0LHZhbHVlOm59fXBvaXNvbihlKXt0aGlzLnN0YXRlPWBwb2lzb25lZGAsdGhpcy5yZWFkaW5lc3M9dm9pZCAwO2ZvcihsZXQgdCBvZiB0aGlzLnBvaXNvbkxpc3RlbmVycyl0KGUpfWFzc2VydEN1cnJlbnQoZSl7aWYodGhpcy5zdGF0ZSE9PWByZWFkeWB8fGUhPT10aGlzLmdlbmVyYXRpb25WYWx1ZSl0aHJvdyBFcnJvcihgV0FTTSBhcmNoaXZlIHNlc3Npb24gYmVsb25ncyB0byBhIGRpc2NhcmRlZCBydW50aW1lIGdlbmVyYXRpb25gKX19fSkpO2Z1bmN0aW9uIFd2KGUpe2xldCB0PWdsb2JhbFRoaXMuV2ViQXNzZW1ibHk/LlJ1bnRpbWVFcnJvcjtyZXR1cm4gdCYmZSBpbnN0YW5jZW9mIHR8fGUgaW5zdGFuY2VvZiBSYW5nZUVycm9yPyEwOmUgaW5zdGFuY2VvZiBFcnJvcj9lLm5hbWU9PT1gUnVudGltZUVycm9yYHx8ZS5uYW1lPT09YENvbXBpbGVFcnJvcmB8fGUubmFtZT09PWBMaW5rRXJyb3JgfHxlLm5hbWU9PT1gSW50ZXJuYWxFcnJvcmB8fGUubmFtZT09PWBPT01FcnJvcmA6ITF9ZnVuY3Rpb24gR3YoZSl7dHJ5e2lmKCh0eXBlb2YgZSE9YG9iamVjdGB8fCFlKSYmdHlwZW9mIGUhPWBmdW5jdGlvbmApcmV0dXJuO2xldCB0PVJlZmxlY3QuZ2V0KGUsYF9fZGVzdHJveV9pbnRvX3Jhd2ApO3R5cGVvZiB0PT1gZnVuY3Rpb25gJiZSZWZsZWN0LmFwcGx5KHQsZSxbXSl9Y2F0Y2h7fX1mdW5jdGlvbiBLdihlLHQpe3JldHVybiBlKHttb2R1bGVfb3JfcGF0aDp0fSl9ZnVuY3Rpb24gcXYoZSl7cmV0dXJuIFd2KGUpP25ldyBKdihgV0FTTSBwYXJzZXIgdHJhcHBlZCBhbmQgd2FzIHJlY3ljbGVkOiAke2UgaW5zdGFuY2VvZiBFcnJvcj9lLm1lc3NhZ2U6U3RyaW5nKGUpfWApOm51bGx9dmFyIEp2LFl2LFh2PXQoKCgpPT57VXYoKSxKdj1jbGFzcyBlIGV4dGVuZHMgRXJyb3J7Y29kZT1gcGFyc2VyLWNyYXNoZWRgO2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXMubmFtZT1gV2FzbVRyYXBFcnJvcmAsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsZS5wcm90b3R5cGUpfX0sWXY9Y2xhc3N7cnVudGltZTt3YXNtSW5wdXQ9bnVsbDtjdXJyZW50QXJjaGl2ZT1udWxsO2NvbnN0cnVjdG9yKGUsdD17fSl7dGhpcy5pbml0PWUsdGhpcy5vcHRpb25zPXQsdGhpcy5ydW50aW1lPW5ldyBIdigoKT0+dGhpcy5pbnZva2VDb25maWd1cmVkKHRoaXMuaW5pdCksKCk9PnRoaXMuaW52b2tlQ29uZmlndXJlZCh0aGlzLm9wdGlvbnMucmVpbml0Pz90aGlzLmluaXQpLHF2KSx0aGlzLnJ1bnRpbWUub25Qb2lzb24oKCk9PnRoaXMuZHJvcFBvaXNvbmVkQXJjaGl2ZSgpKX1zZXRXYXNtSW5wdXQoZSl7dGhpcy53YXNtSW5wdXQ9ZSx0aGlzLnJ1bnRpbWUuZW5zdXJlUmVhZHkoKS5jYXRjaCgoKT0+dm9pZCAwKX1zZXRXYXNtVXJsKGUpe3RoaXMuc2V0V2FzbUlucHV0KGUpfWdldCBhcmNoaXZlKCl7cmV0dXJuIHRoaXMuY3VycmVudEFyY2hpdmV9c2V0QXJjaGl2ZShlKXt0aGlzLmZyZWVBcmNoaXZlKCksdGhpcy5jdXJyZW50QXJjaGl2ZT1lfWRpc3Bvc2VBcmNoaXZlKCl7dGhpcy5mcmVlQXJjaGl2ZSgpfWdldCBwb2lzb25lZCgpe3JldHVybiB0aGlzLnJ1bnRpbWUucG9pc29uZWR9YXN5bmMgZW5zdXJlUmVhZHkoKXthd2FpdCB0aGlzLnJ1bnRpbWUuZW5zdXJlUmVhZHkoKX1ydW4oZSl7cmV0dXJuIHRoaXMucnVudGltZS5ydW4oZSl9cG9pc29uKCl7dGhpcy5ydW50aW1lLnBvaXNvbihuZXcgSnYoYFdBU00gcGFyc2VyIHdhcyByZWN5Y2xlZGApKX1pbnZva2VDb25maWd1cmVkKGUpe3JldHVybiB0aGlzLndhc21JbnB1dD09PW51bGw/UHJvbWlzZS5yZWplY3QoRXJyb3IoYFdhc21QYXJzZXJIb3N0OiBzZXRXYXNtSW5wdXQgd2FzIG5ldmVyIGNhbGxlZGApKTpLdihlLHRoaXMud2FzbUlucHV0KX1mcmVlQXJjaGl2ZSgpe3RoaXMuY3VycmVudEFyY2hpdmUhPT1udWxsJiZ0aGlzLm9wdGlvbnMuZnJlZUFyY2hpdmUmJnRoaXMub3B0aW9ucy5mcmVlQXJjaGl2ZSh0aGlzLmN1cnJlbnRBcmNoaXZlKSx0aGlzLmN1cnJlbnRBcmNoaXZlPW51bGx9ZHJvcFBvaXNvbmVkQXJjaGl2ZSgpe2xldCBlPXRoaXMuY3VycmVudEFyY2hpdmU7dGhpcy5jdXJyZW50QXJjaGl2ZT1udWxsLEd2KGUpfX19KSk7ZnVuY3Rpb24gWnYoZSl7cmV0dXJuIHR5cGVvZiBlPT1gbnVtYmVyYCYmTnVtYmVyLmlzU2FmZUludGVnZXIoZSkmJmU+MH1mdW5jdGlvbiBRdihlKXtpZighZXx8dHlwZW9mIGUhPWBvYmplY3RgfHxBcnJheS5pc0FycmF5KGUpKXJldHVybiExO2xldCB0PWU7cmV0dXJuIFp2KHQucmVxdWlyZWRCeXRlcykmJlp2KHQub2ZmZXJlZEJ5dGVzKSYmdC5yZXF1aXJlZEJ5dGVzPnQub2ZmZXJlZEJ5dGVzfWZ1bmN0aW9uICR2KGUpe2lmKGUgaW5zdGFuY2VvZiBueSlyZXR1cm4gZTtsZXQgdD1lIGluc3RhbmNlb2YgRXJyb3I/ZS5tZXNzYWdlOlN0cmluZyhlKTtpZighdC5zdGFydHNXaXRoKHR5KSlyZXR1cm47bGV0IG47dHJ5e249SlNPTi5wYXJzZSh0LnNsaWNlKDI2KSl9Y2F0Y2h7cmV0dXJufWlmKCFufHx0eXBlb2YgbiE9YG9iamVjdGB8fEFycmF5LmlzQXJyYXkobikpcmV0dXJuO2xldCByPW47aWYoIShyLmNvZGUhPT1gb294bWwtaW5zdWZmaWNpZW50LWNyZWRpdGB8fCFRdihyKSkpcmV0dXJuIG5ldyBueShyKX12YXIgZXksdHksbnkscnk9dCgoKCk9PntleT1gb294bWwtaW5zdWZmaWNpZW50LWNyZWRpdGAsdHk9YE9PWE1MX0lOU1VGRklDSUVOVF9DUkVESVQ6YCxueT1jbGFzcyBlIGV4dGVuZHMgUmFuZ2VFcnJvcntjb2RlPWV5O3JlcXVpcmVkQnl0ZXM7b2ZmZXJlZEJ5dGVzO2NvbnN0cnVjdG9yKHQpe3N1cGVyKGBQdWxsIHVuaXQgcmVxdWlyZXMgJHt0LnJlcXVpcmVkQnl0ZXN9IGJ5dGVzIGJ1dCBjcmVkaXQgaXMgJHt0Lm9mZmVyZWRCeXRlc31gKSx0aGlzLm5hbWU9YFB1bGxTZXNzaW9uSW5zdWZmaWNpZW50Q3JlZGl0RXJyb3JgLHRoaXMucmVxdWlyZWRCeXRlcz10LnJlcXVpcmVkQnl0ZXMsdGhpcy5vZmZlcmVkQnl0ZXM9dC5vZmZlcmVkQnl0ZXMsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsZS5wcm90b3R5cGUpfX19KSk7ZnVuY3Rpb24gaXkoZSl7cmV0dXJuIHR5cGVvZiBlPT1gbnVtYmVyYCYmTnVtYmVyLmlzU2FmZUludGVnZXIoZSkmJmU+PTB9ZnVuY3Rpb24gYXkoZSl7aWYoIWV8fHR5cGVvZiBlIT1gb2JqZWN0YHx8QXJyYXkuaXNBcnJheShlKSlyZXR1cm4hMTtsZXQgdD1lO3JldHVybiBpeSh0LmFyY2hpdmVFbnRyeUNvdW50KSYmaXkodC5kZWNsYXJlZEluZmxhdGVkQnl0ZXMpJiYodC5sYXJnZXN0SW5mbGF0ZWRFbnRyeUJ5dGVzPT09dm9pZCAwfHxpeSh0Lmxhcmdlc3RJbmZsYXRlZEVudHJ5Qnl0ZXMpKSYmaXkodC5kaXN0aW5jdEluZmxhdGVkQnl0ZXMpJiZpeSh0Lm9wZXJhdGlvbkluZmxhdGVkQnl0ZXMpfWZ1bmN0aW9uIG95KGUpe2xldCB0O3RyeXt0PUpTT04ucGFyc2UobmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKGUpKX1jYXRjaHt0aHJvdyBUeXBlRXJyb3IoYE9PWE1MIHJlc291cmNlIHVzYWdlIGNoZWNrcG9pbnQgaXMgbm90IHZhbGlkIEpTT05gKX1pZighYXkodCkpdGhyb3cgVHlwZUVycm9yKGBPT1hNTCByZXNvdXJjZSB1c2FnZSBjaGVja3BvaW50IGlzIGludmFsaWRgKTtyZXR1cm4gdH1mdW5jdGlvbiBzeShlKXtyZXR1cm4gZT09PWBkb2N4YHx8ZT09PWB4bHN4YHx8ZT09PWBwcHR4YH1mdW5jdGlvbiBjeShlKXtyZXR1cm4gZT09PWBjb250YWluZXJgfHxlPT09YGRlY29tcHJlc3Npb25gfHxlPT09YHBhcnNpbmdgfHxlPT09YHNlcmlhbGl6YXRpb25gfHxlPT09YGxheW91dGB8fGU9PT1gcmVuZGVyaW5nYHx8ZT09PWB3b3JrZXJgfWZ1bmN0aW9uIGx5KGUsdCl7cmV0dXJuIHR5cGVvZiBlPT1gc3RyaW5nYCYmZS5sZW5ndGg+MCYmZS5sZW5ndGg8PXQmJiEvW1x1MDAwMC1cdTAwMWZcdTAwN2ZdL3UudGVzdChlKX1mdW5jdGlvbiB1eShlKXtyZXR1cm4gbHkoZSx4eSkmJi9eW2EtejAtOV1bYS16MC05LV0qJC91LnRlc3QoZSl9ZnVuY3Rpb24gZHkoZSl7cmV0dXJuIWx5KGUsQ3kpfHxlLnN0YXJ0c1dpdGgoYC9gKXx8ZS5zdGFydHNXaXRoKGBcXGApfHxlLmluY2x1ZGVzKGBcXGApfHxlLmluY2x1ZGVzKGA/YCl8fGUuaW5jbHVkZXMoYCNgKXx8ZS5pbmNsdWRlcyhgOi8vYCl8fC9eW2Etel06L2l1LnRlc3QoZSk/ITE6ZS5zcGxpdChgL2ApLmV2ZXJ5KGU9PmUhPT1gYCYmZSE9PWAuYCYmZSE9PWAuLmApfWZ1bmN0aW9uIGZ5KGUpe2lmKCFlfHx0eXBlb2YgZSE9YG9iamVjdGB8fEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuITE7bGV0IHQ9ZTtyZXR1cm4hc3kodC5mb3JtYXQpfHwhbHkodC5vcGVyYXRpb24sU3kpfHwhdXkodC5yZXNvdXJjZSl8fCF1eSh0Lm1ldHJpYyl8fCFpeSh0LmxpbWl0KXx8IWl5KHQub2JzZXJ2ZWQpfHx0eXBlb2YgdC5jb25maWd1cmFibGUhPWBib29sZWFuYHx8IWF5KHQudXNhZ2UpPyExOiEoYHBhcnRgaW4gdCl8fGR5KHQucGFydCl9ZnVuY3Rpb24gcHkoZSl7aWYoIWV8fHR5cGVvZiBlIT1gb2JqZWN0YHx8QXJyYXkuaXNBcnJheShlKSlyZXR1cm4hMTtsZXQgdD1lO2lmKCFjeSh0LnN0YWdlKXx8IWZ5KHQudmlvbGF0aW9uKSlyZXR1cm4hMTtsZXQgbj10LnZpb2xhdGlvbixyPXd5LmdldChgJHtuLnJlc291cmNlfToke24ubWV0cmljfWApO3JldHVybiByP3Quc3RhZ2UhPT1yLnN0YWdlfHxyLmNvbmZpZ3VyYWJsZT09PSExJiZuLmNvbmZpZ3VyYWJsZSE9PSExPyExOnIucGFydD09PWByZXF1aXJlZGA/bi5wYXJ0IT09dm9pZCAwOnIucGFydD09PWBmb3JiaWRkZW5gP24ucGFydD09PXZvaWQgMDohMDohKFR5LmhhcyhuLnJlc291cmNlKSYmRXkuaGFzKG4ubWV0cmljKSl9ZnVuY3Rpb24gbXkoZSl7cmV0dXJue2FyY2hpdmVFbnRyeUNvdW50OmUuYXJjaGl2ZUVudHJ5Q291bnQsZGVjbGFyZWRJbmZsYXRlZEJ5dGVzOmUuZGVjbGFyZWRJbmZsYXRlZEJ5dGVzLC4uLmUubGFyZ2VzdEluZmxhdGVkRW50cnlCeXRlcz09PXZvaWQgMD97fTp7bGFyZ2VzdEluZmxhdGVkRW50cnlCeXRlczplLmxhcmdlc3RJbmZsYXRlZEVudHJ5Qnl0ZXN9LGRpc3RpbmN0SW5mbGF0ZWRCeXRlczplLmRpc3RpbmN0SW5mbGF0ZWRCeXRlcyxvcGVyYXRpb25JbmZsYXRlZEJ5dGVzOmUub3BlcmF0aW9uSW5mbGF0ZWRCeXRlc319ZnVuY3Rpb24gaHkoZSl7aWYoIXB5KGUpKXJldHVybjtsZXQgdD1lLnZpb2xhdGlvbixuPXtzdGFnZTplLnN0YWdlLHZpb2xhdGlvbjp7Zm9ybWF0OnQuZm9ybWF0LG9wZXJhdGlvbjp0Lm9wZXJhdGlvbixyZXNvdXJjZTp0LnJlc291cmNlLG1ldHJpYzp0Lm1ldHJpYywuLi50LnBhcnQ9PT12b2lkIDA/e306e3BhcnQ6dC5wYXJ0fSxsaW1pdDp0LmxpbWl0LG9ic2VydmVkOnQub2JzZXJ2ZWQsY29uZmlndXJhYmxlOnQuY29uZmlndXJhYmxlLHVzYWdlOm15KHQudXNhZ2UpfX07cmV0dXJuIHB5KG4pP246dm9pZCAwfWZ1bmN0aW9uIGd5KGUpe2xldCB0PWUudmlvbGF0aW9uO3JldHVybmBPT1hNTCByZXNvdXJjZSBsaW1pdCBleGNlZWRlZCR7dC5wYXJ0P2AgZm9yICR7dC5wYXJ0fWA6YGB9OiAke3QubWV0cmljfSAke3Qub2JzZXJ2ZWR9ID4gJHt0LmxpbWl0fWB9ZnVuY3Rpb24gX3koZSl7bGV0IHQ9ZSBpbnN0YW5jZW9mIEVycm9yP2UubWVzc2FnZTpTdHJpbmcoZSk7aWYoIXQuc3RhcnRzV2l0aChieSkpcmV0dXJuO2xldCBuO3RyeXtuPUpTT04ucGFyc2UodC5zbGljZSgyMSkpfWNhdGNoe3JldHVybn1pZighbnx8dHlwZW9mIG4hPWBvYmplY3RgKXJldHVybjtsZXQgcj1uO2lmKCEoci5jb2RlIT09YG9veG1sLXJlc291cmNlLWxpbWl0YHx8IXB5KHIuZGV0YWlscykpKXJldHVybiBuZXcgaShneShyLmRldGFpbHMpLHIuZGV0YWlscyl9ZnVuY3Rpb24gdnkoZSl7bGV0IHQ9cShlKTtpZih0KXtsZXQgZT1uZXcgZ2UodC5tZXRyaWMsdC5saW1pdCx0Lm9ic2VydmVkKTtyZXR1cm57bWVzc2FnZTplLm1lc3NhZ2UsZXJyb3JOYW1lOmUubmFtZSxjb2RlOmUuY29kZSxkZWNvZGVkSW1hZ2U6dH19bGV0IG49Q2goZSk7aWYobilyZXR1cm57bWVzc2FnZTpuLm1lc3NhZ2UsZXJyb3JOYW1lOmBUaWZmRGVjb2RlRXJyb3JgLGNvZGU6YG9veG1sLXRpZmYtZGVjb2RlYH07bGV0IGE9JHYoZSk7aWYoYSlyZXR1cm57bWVzc2FnZTphLm1lc3NhZ2UsZXJyb3JOYW1lOmEubmFtZSxjb2RlOmEuY29kZSxpbnN1ZmZpY2llbnRDcmVkaXQ6e3JlcXVpcmVkQnl0ZXM6YS5yZXF1aXJlZEJ5dGVzLG9mZmVyZWRCeXRlczphLm9mZmVyZWRCeXRlc319O2xldCBvPWUgaW5zdGFuY2VvZiByfHxlIGluc3RhbmNlb2YgaT9lOl95KGUpO2lmKG8gaW5zdGFuY2VvZiBpKXtsZXQgZT1oeShvLmRldGFpbHMpO3JldHVybiBlP3ttZXNzYWdlOnR5cGVvZiBvLm1lc3NhZ2U9PWBzdHJpbmdgP28ubWVzc2FnZTpneShlKSxlcnJvck5hbWU6YE9veG1sUmVzb3VyY2VMaW1pdEVycm9yYCxjb2RlOmBvb3htbC1yZXNvdXJjZS1saW1pdGAscmVzb3VyY2VMaW1pdDplfTp7bWVzc2FnZTpgSW52YWxpZCBPT1hNTCByZXNvdXJjZS1saW1pdCBlcnJvciBwYXlsb2FkYCxlcnJvck5hbWU6YEVycm9yYH19aWYobyBpbnN0YW5jZW9mIHIpcmV0dXJue21lc3NhZ2U6dHlwZW9mIG8ubWVzc2FnZT09YHN0cmluZ2A/by5tZXNzYWdlOlN0cmluZyhvLm1lc3NhZ2UpLGVycm9yTmFtZTpseShvLm5hbWUseHkpP28ubmFtZTpgT294bWxFcnJvcmAsLi4udXkoby5jb2RlKT97Y29kZTpvLmNvZGV9Ont9fTtsZXQgcz1lIGluc3RhbmNlb2YgRXJyb3I/ZS5tZXNzYWdlOlN0cmluZyhlKTtpZih0eXBlb2Ygcz09YHN0cmluZ2AmJnMuc3RhcnRzV2l0aChieSkpcmV0dXJue21lc3NhZ2U6YEludmFsaWQgT09YTUwgcmVzb3VyY2UtbGltaXQgcGF5bG9hZGAsZXJyb3JOYW1lOmBFcnJvcmB9O2xldCBjPWUgaW5zdGFuY2VvZiBFcnJvcj9lOkVycm9yKHMpLGw9YztyZXR1cm57bWVzc2FnZTp0eXBlb2YgYy5tZXNzYWdlPT1gc3RyaW5nYD9jLm1lc3NhZ2U6U3RyaW5nKGMubWVzc2FnZSksZXJyb3JOYW1lOmx5KGMubmFtZSx4eSk/Yy5uYW1lOmBFcnJvcmAsLi4udHlwZW9mIGwuY29kZT09YHN0cmluZ2A/e2NvZGU6bC5jb2RlfTp7fX19ZnVuY3Rpb24geXkoZSl7dHJ5e3JldHVybiB2eShlKX1jYXRjaHtyZXR1cm57bWVzc2FnZTpgV29ya2VyIG9wZXJhdGlvbiBmYWlsZWQgd2l0aCBhbiB1bnJlYWRhYmxlIGVycm9yYCxlcnJvck5hbWU6YEVycm9yYH19fXZhciBieSx4eSxTeSxDeSx3eSxUeSxFeSxEeT10KCgoKT0+e2EoKSxfZSgpLE9oKCkscnkoKSxieT1gT09YTUxfUkVTT1VSQ0VfTElNSVQ6YCx4eT0xMjgsU3k9MjU2LEN5PTQwOTYsd3k9bmV3IE1hcChbW2BhcmNoaXZlLWVudHJ5OmRlY2xhcmVkLWluZmxhdGVkLWJ5dGVzYCx7c3RhZ2U6YGNvbnRhaW5lcmAscGFydDpgcmVxdWlyZWRgfV0sW2BhcmNoaXZlLWVudHJ5OmFjdHVhbC1pbmZsYXRlZC1ieXRlc2Ase3N0YWdlOmBkZWNvbXByZXNzaW9uYCxwYXJ0OmByZXF1aXJlZGB9XSxbYGFyY2hpdmU6ZW50cnktY291bnRgLHtzdGFnZTpgY29udGFpbmVyYCxwYXJ0OmBmb3JiaWRkZW5gfV0sW2BhcmNoaXZlOmNlbnRyYWwtZGlyZWN0b3J5LWJ5dGVzYCx7c3RhZ2U6YGNvbnRhaW5lcmAscGFydDpgZm9yYmlkZGVuYCxjb25maWd1cmFibGU6ITF9XSxbYGFyY2hpdmU6ZGlzdGluY3QtaW5mbGF0ZWQtYnl0ZXNgLHtzdGFnZTpgZGVjb21wcmVzc2lvbmAscGFydDpgcmVxdWlyZWRgfV0sW2B4bWwtZXZlbnQ6Ynl0ZXNgLHtzdGFnZTpgcGFyc2luZ2AscGFydDpgb3B0aW9uYWxgLGNvbmZpZ3VyYWJsZTohMX1dLFtgeG1sLWNvbnRleHQ6Ynl0ZXNgLHtzdGFnZTpgcGFyc2luZ2AscGFydDpgb3B0aW9uYWxgLGNvbmZpZ3VyYWJsZTohMX1dLFtgeG1sLXRyZWU6ZGVwdGhgLHtzdGFnZTpgcGFyc2luZ2AscGFydDpgb3B0aW9uYWxgLGNvbmZpZ3VyYWJsZTohMX1dLFtgd29ya3NoZWV0LXJvdzpwcm9qZWN0ZWQtYnl0ZXNgLHtzdGFnZTpgcGFyc2luZ2AscGFydDpgb3B0aW9uYWxgLGNvbmZpZ3VyYWJsZTohMX1dLFtgd29ya3NoZWV0LXNoZWxsOnByb2plY3RlZC1ieXRlc2Ase3N0YWdlOmBwYXJzaW5nYCxwYXJ0OmBvcHRpb25hbGAsY29uZmlndXJhYmxlOiExfV1dKSxUeT1uZXcgU2V0KFsuLi53eS5rZXlzKCldLm1hcChlPT5lLnNsaWNlKDAsZS5pbmRleE9mKGA6YCkpKSksRXk9bmV3IFNldChbLi4ud3kua2V5cygpXS5tYXAoZT0+ZS5zbGljZShlLmluZGV4T2YoYDpgKSsxKSkpfSkpO2Z1bmN0aW9uIE95KGUpe3JldHVybiBlLmJ5dGVPZmZzZXQ9PT0wJiZlLmJ5dGVMZW5ndGg9PT1lLmJ1ZmZlci5ieXRlTGVuZ3RoJiZlLmJ1ZmZlciBpbnN0YW5jZW9mIEFycmF5QnVmZmVyP2UuYnVmZmVyOmUuc2xpY2UoKS5idWZmZXJ9dmFyIGt5PXQoKCgpPT57fSkpO2Z1bmN0aW9uIEF5KGUsdCl7bGV0e2JpdG1hcDpufT10O3RyeXtlKHQsW25dKX1jYXRjaChlKXt0aHJvdyBSZyhuKSxlfX12YXIgank9dCgoKCk9PntiXygpfSkpLE15PW4oe2xvYWRNYXRoSmF4RnJvbVJlc29sdmVkQXNzZXQ6KCk9Pkl5LG1hdGhNTFRvU3ZnRnJvbVJlc29sdmVkQXNzZXQ6KCk9Pkx5fSk7ZnVuY3Rpb24gTnkoZSl7cmV0dXJuIG5ldyBQcm9taXNlKCh0LG4pPT57bGV0IHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChgc2NyaXB0YCk7ci5zcmM9ZSxyLmFzeW5jPSEwLHIub25sb2FkPSgpPT50KCksci5vbmVycm9yPSgpPT5uKEVycm9yKGBGYWlsZWQgdG8gbG9hZCBtYXRoIGVuZ2luZSBmcm9tICR7ZX1gKSksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChyKX0pfWFzeW5jIGZ1bmN0aW9uIFB5KGUpe2F3YWl0IGltcG9ydChlKX1mdW5jdGlvbiBGeShlKXtyZXR1cm4gUnl8fChSeT0oYXN5bmMoKT0+e2xldCB0PWdsb2JhbFRoaXMuX19vb3htbFN0aXgyO2lmKHQpcmV0dXJuIHQ7bGV0IG49bmV3IFVSTChlKS5ocmVmO3R5cGVvZiBkb2N1bWVudD5gdWA/YXdhaXQgUHkobik6YXdhaXQgTnkobik7bGV0IHI9Z2xvYmFsVGhpcy5fX29veG1sU3RpeDI7aWYoIXIpdGhyb3cgRXJyb3IoYE1hdGggZW5naW5lIGZhaWxlZCB0byBpbml0aWFsaXplYCk7cmV0dXJuIHJ9KSgpLFJ5KX1hc3luYyBmdW5jdGlvbiBJeShlKXthd2FpdCBGeShlKX1hc3luYyBmdW5jdGlvbiBMeShlLHQpe2xldCBuPShhd2FpdCBGeSh0KSkubWF0aG1sMnN2ZyhlKTtyZXR1cm57c3ZnOm4sLi4udnYobil9fXZhciBSeSx6eT10KCgoKT0+e3h2KCksUnk9bnVsbH0pKTtmdW5jdGlvbiBCeShlKXtzd2l0Y2goZSl7Y2FzZWBjeWxpbmRlcmA6Y2FzZWBjb25lYDpjYXNlYGNvbmVUb01heGA6Y2FzZWBweXJhbWlkYDpjYXNlYHB5cmFtaWRUb01heGA6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm5gYm94YH19ZnVuY3Rpb24gVnkoZSx0KXtpZih0Lmxlbmd0aDwzKXJldHVybiBudWxsO2xldCBuPWVbdFswXV07Zm9yKGxldCByPTE7cisxPHQubGVuZ3RoO3IrKylmb3IobGV0IGk9cisxO2k8dC5sZW5ndGg7aSsrKXtsZXQgYT1lW3Rbcl1dLG89ZVt0W2ldXSxzPXt4OmEueC1uLngseTphLnktbi55LGRlcHRoOmEuZGVwdGgtbi5kZXB0aH0sYz17eDpvLngtbi54LHk6by55LW4ueSxkZXB0aDpvLmRlcHRoLW4uZGVwdGh9LGw9e3g6cy55KmMuZGVwdGgtcy5kZXB0aCpjLnkseTpzLmRlcHRoKmMueC1zLngqYy5kZXB0aCxkZXB0aDpzLngqYy55LXMueSpjLnh9LHU9TWF0aC5oeXBvdChsLngsbC55LGwuZGVwdGgpO2lmKHU+MioqLTUyKXJldHVybnt4OmwueC91LHk6bC55L3UsZGVwdGg6bC5kZXB0aC91fX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBIeShlLHQpe2xldCBuPWUucmVkdWNlKCh0LG4pPT4oe3g6dC54K24ueC9lLmxlbmd0aCx5OnQueStuLnkvZS5sZW5ndGgsZGVwdGg6dC5kZXB0aCtuLmRlcHRoL2UubGVuZ3RofSkse3g6MCx5OjAsZGVwdGg6MH0pO3JldHVybiB0Lm1hcCh0PT57bGV0IHI9VnkoZSx0LmluZGljZXMpO2lmKCFyKXJldHVybiB0O2xldCBpPXQuaW5kaWNlcy5yZWR1Y2UoKG4scik9Pih7eDpuLngrZVtyXS54L3QuaW5kaWNlcy5sZW5ndGgseTpuLnkrZVtyXS55L3QuaW5kaWNlcy5sZW5ndGgsZGVwdGg6bi5kZXB0aCtlW3JdLmRlcHRoL3QuaW5kaWNlcy5sZW5ndGh9KSx7eDowLHk6MCxkZXB0aDowfSksYT17eDppLngtbi54LHk6aS55LW4ueSxkZXB0aDppLmRlcHRoLW4uZGVwdGh9O3JldHVybiByLngqYS54K3IueSphLnkrci5kZXB0aCphLmRlcHRoPj0wP3Q6ey4uLnQsaW5kaWNlczpbLi4udC5pbmRpY2VzXS5yZXZlcnNlKCl9fSl9ZnVuY3Rpb24gVXkoZSl7bGV0e2hvcml6b250YWw6dCxjcm9zc1N0YXJ0Om4sY3Jvc3NTaXplOnIsYmFzZUNvb3JkOmksZW5kQ29vcmQ6YSxuZWFyRGVwdGg6byxmYXJEZXB0aDpzfT1lO2lmKCFbbixyLGksYSxvLHNdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSl8fHI8PTB8fGk9PT1hfHxvPT09cylyZXR1cm4gbnVsbDtsZXQgYz1CeShlLnNoYXBlKSxsPWM9PT1gY3lsaW5kZXJgfHxjPT09YGNvbmVgfHxjPT09YGNvbmVUb01heGAsdT1jIT09YGJveGAmJmMhPT1gY3lsaW5kZXJgLGQ9Yz09PWBjb25lVG9NYXhgfHxjPT09YHB5cmFtaWRUb01heGAsZj1sP01hdGgubWF4KDgsTWF0aC5taW4oNjQsTWF0aC50cnVuYyhlLnJvdW5kU2VnbWVudHM/PzMyKSkpOjQscD1KeShlLmJhc2VTY2FsZT8/KGQ/ZS50b01heEJhc2VTY2FsZT8/MToxKSksbT1KeShlLmVuZFNjYWxlPz8odT9kP2UudG9NYXhFbmRTY2FsZT8/MDowOjEpKTtpZihwPT09MCYmbT09PTApcmV0dXJuIG51bGw7bGV0IGg9bityLzIsZz1yLzIsXz0obytzKS8yLHY9TWF0aC5hYnMocy1vKS8yLHk9W10sYj0oZSxuKT0+e2lmKG49PT0wKXtsZXQgbj15Lmxlbmd0aDtyZXR1cm4geS5wdXNoKHQ/e3g6ZSx5OmgsZGVwdGg6X306e3g6aCx5OmUsZGVwdGg6X30pLFtuXX1sZXQgcj1bXTtmb3IobGV0IGk9MDtpPGY7aSsrKXtsZXQgYT1sP2kvZipNYXRoLlBJKjI6TWF0aC5QSS80K2kvZipNYXRoLlBJKjIsbz1sPzE6TWF0aC5TUVJUMixzPWgrTWF0aC5jb3MoYSkqZypuKm8sYz1fK01hdGguc2luKGEpKnYqbipvO3IucHVzaCh5Lmxlbmd0aCkseS5wdXNoKHQ/e3g6ZSx5OnMsZGVwdGg6Y306e3g6cyx5OmUsZGVwdGg6Y30pfXJldHVybiByfSx4PWIoaSxwKSxTPWIoYSxtKSxDPWwsdz1bXTt4Lmxlbmd0aD4xJiZlLm9taXRCYXNlQ2FwIT09ITAmJncucHVzaCh7aW5kaWNlczp4LHJvbGU6YGJhc2VDYXBgLHNtb290aFN1cmZhY2U6Q30pLFMubGVuZ3RoPjEmJmUub21pdEVuZENhcCE9PSEwJiZ3LnB1c2goe2luZGljZXM6Uyxyb2xlOmBlbmRDYXBgLHNtb290aFN1cmZhY2U6Q30pO2xldCBUPVtdLEU9TWF0aC5tYXgoeC5sZW5ndGgsUy5sZW5ndGgpO2ZvcihsZXQgZT0wO2U8RTtlKyspe2xldCB0PShlKzEpJUUsbj14Lmxlbmd0aD09PTE/eFswXTp4W2VdLHI9eC5sZW5ndGg9PT0xP3hbMF06eFt0XSxpPVMubGVuZ3RoPT09MT9TWzBdOlNbZV0sYT1TLmxlbmd0aD09PTE/U1swXTpTW3RdLG89eC5sZW5ndGg9PT0xP1tuLGEsaV06Uy5sZW5ndGg9PT0xP1tuLHIsaV06W24scixhLGldO3cucHVzaCh7aW5kaWNlczpvLHJvbGU6YHNpZGVgLHNtb290aFN1cmZhY2U6QyxzZWdtZW50SW5kZXg6ZSxiYXNlUmltRWRnZTp4Lmxlbmd0aD4xP1tuLHJdOnZvaWQgMCxlbmRSaW1FZGdlOlMubGVuZ3RoPjE/W2ksYV06dm9pZCAwfSksVC5wdXNoKFtuLGldKX1yZXR1cm57c2hhcGU6Yyx2ZXJ0aWNlczp5LGZhY2VzOkh5KHksdyksc2lsaG91ZXR0ZUVkZ2VzOlR9fWZ1bmN0aW9uIFd5KGUpe2xldHt4MDp0LHgxOm4sbG93ZXIwOnIsbG93ZXIxOmksdXBwZXIwOmEsdXBwZXIxOm8sbmVhckRlcHRoOnMsZmFyRGVwdGg6YyxjYXBTdGFydDpsLGNhcEVuZDp1fT1lO2lmKCFbdCxuLHIsaSxhLG8scyxjXS5ldmVyeShOdW1iZXIuaXNGaW5pdGUpfHx0PT09bnx8cz09PWMpcmV0dXJuIG51bGw7bjx0JiYoW3Qsbl09W24sdF0sW3IsaV09W2kscl0sW2Esb109W28sYV0sW2wsdV09W3UsbF0pO2xldCBkPU1hdGgubWluKHMsYyksZj1NYXRoLm1heChzLGMpLHA9TWF0aC5taW4ocixhKSxtPU1hdGgubWluKGksbyksaD1NYXRoLm1heChyLGEpLGc9TWF0aC5tYXgoaSxvKTtpZihNYXRoLm1heChoLXAsZy1tKTwxZS05KXJldHVybiBudWxsO2xldCBfPVt7eDp0LHk6cCxkZXB0aDpkfSx7eDpuLHk6bSxkZXB0aDpkfSx7eDpuLHk6ZyxkZXB0aDpkfSx7eDp0LHk6aCxkZXB0aDpkfSx7eDp0LHk6cCxkZXB0aDpmfSx7eDpuLHk6bSxkZXB0aDpmfSx7eDpuLHk6ZyxkZXB0aDpmfSx7eDp0LHk6aCxkZXB0aDpmfV07cmV0dXJue3NoYXBlOmBhcmVhU3RyaXBgLHZlcnRpY2VzOl8sZmFjZXM6SHkoXyxbe2luZGljZXM6WzAsMywyLDFdLHJvbGU6YHNpZGVgLHNtb290aFN1cmZhY2U6ITF9LHtpbmRpY2VzOls0LDUsNiw3XSxyb2xlOmBzaWRlYCxzbW9vdGhTdXJmYWNlOiExfSx7aW5kaWNlczpbMCw0LDcsM10scm9sZTpgYmFzZUNhcGAsc21vb3RoU3VyZmFjZTohMX0se2luZGljZXM6WzEsMiw2LDVdLHJvbGU6YGVuZENhcGAsc21vb3RoU3VyZmFjZTohMX0se2luZGljZXM6WzAsMSw1LDRdLHJvbGU6YHNpZGVgLHNtb290aFN1cmZhY2U6ITF9LHtpbmRpY2VzOlszLDcsNiwyXSxyb2xlOmBzaWRlYCxzbW9vdGhTdXJmYWNlOiExfV0uZmlsdGVyKGU9PihlLnJvbGUhPT1gYmFzZUNhcGB8fGwpJiYoZS5yb2xlIT09YGVuZENhcGB8fHUpKSksc2lsaG91ZXR0ZUVkZ2VzOltdfX1mdW5jdGlvbiBHeShlKXtsZXQgdD1lLnVwcGVyMC1lLmxvd2VyMCxuPWUudXBwZXIxLWUubG93ZXIxO2lmKE51bWJlci5pc0Zpbml0ZSh0KSYmTnVtYmVyLmlzRmluaXRlKG4pJiZ0Km48MCl7bGV0IHI9dC8odC1uKSxpPWUueDArKGUueDEtZS54MCkqcixhPWUubG93ZXIwKyhlLmxvd2VyMS1lLmxvd2VyMCkqcjtyZXR1cm5bV3koey4uLmUseDE6aSxsb3dlcjE6YSx1cHBlcjE6YSxjYXBFbmQ6ITF9KSxXeSh7Li4uZSx4MDppLGxvd2VyMDphLHVwcGVyMDphLGNhcFN0YXJ0OiExfSldLmZpbHRlcihlPT5lIT1udWxsKX1sZXQgcj1XeShlKTtyZXR1cm4gcj9bcl06W119ZnVuY3Rpb24gS3koZSl7bGV0IHQ9ZS5vdXRsaW5lO2lmKHQubGVuZ3RoPDN8fHQubGVuZ3RoPjY0fHwhW2UubmVhckRlcHRoLGUuZmFyRGVwdGhdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSl8fE1hdGguYWJzKGUubmVhckRlcHRoLWUuZmFyRGVwdGgpPDFlLTl8fCF0LmV2ZXJ5KGU9Pk51bWJlci5pc0Zpbml0ZShlLngpJiZOdW1iZXIuaXNGaW5pdGUoZS55KSkpcmV0dXJuIG51bGw7bGV0IG49TWF0aC5taW4oZS5uZWFyRGVwdGgsZS5mYXJEZXB0aCkscj1NYXRoLm1heChlLm5lYXJEZXB0aCxlLmZhckRlcHRoKSxpPXQubGVuZ3RoLGE9Wy4uLnQubWFwKGU9Pih7Li4uZSxkZXB0aDpufSkpLC4uLnQubWFwKGU9Pih7Li4uZSxkZXB0aDpyfSkpXSxvPUFycmF5LmZyb20oe2xlbmd0aDppfSwoZSx0KT0+dCkscz1BcnJheS5mcm9tKHtsZW5ndGg6aX0sKGUsdCk9PmkrdCkucmV2ZXJzZSgpO3JldHVybntzaGFwZTpgbGluZVJpYmJvbmAsdmVydGljZXM6YSxmYWNlczpIeShhLFt7aW5kaWNlczpvLHJvbGU6YHNpZGVgLHNtb290aFN1cmZhY2U6ITF9LHtpbmRpY2VzOnMscm9sZTpgc2lkZWAsc21vb3RoU3VyZmFjZTohMX0sLi4uQXJyYXkuZnJvbSh7bGVuZ3RoOml9LChlLHQpPT57bGV0IG49KHQrMSklaTtyZXR1cm57aW5kaWNlczpbdCxuLGkrbixpK3RdLHJvbGU6YHNpZGVgLHNtb290aFN1cmZhY2U6ITF9fSldKSxzaWxob3VldHRlRWRnZXM6W119fWZ1bmN0aW9uIHF5KGUpe2xldHtjZW50ZXJYOnQsY2VudGVyWTpuLGNlbnRlckRlcHRoOnIscmFkaXVzOmksbW9kZWxEZXB0aDphLHRoaWNrbmVzczpvLHN0YXJ0QW5nbGU6cyxlbmRBbmdsZTpjfT1lO2lmKCFbdCxuLHIsaSxhLG8scyxjXS5ldmVyeShOdW1iZXIuaXNGaW5pdGUpfHwhKGk+MCl8fCEoYT4wKXx8IShvPjApfHwhKGM+cykpcmV0dXJuIG51bGw7bGV0IGw9TWF0aC5taW4oTWF0aC5QSSoyLGMtcyksdT1sPj1NYXRoLlBJKjItMWUtOSxkPU1hdGgubWF4KDIsTWF0aC5taW4oMTI4LE1hdGgudHJ1bmMoZS5zZWdtZW50cz8/TWF0aC5jZWlsKDMyKmwvKE1hdGguUEkqMikpKSkpLGY9bi1vLzIscD1uK28vMixtPVt7eDp0LHk6ZixkZXB0aDpyfSx7eDp0LHk6cCxkZXB0aDpyfV0saD1bXSxnPVtdLF89dT9kOmQrMTtmb3IobGV0IGU9MDtlPF87ZSsrKXtsZXQgbj1zK2wqZS9kLG89dCtNYXRoLmNvcyhuKSppLGM9citNYXRoLnNpbihuKSppL2E7aC5wdXNoKG0ubGVuZ3RoKSxtLnB1c2goe3g6byx5OmYsZGVwdGg6Y30pLGcucHVzaChtLmxlbmd0aCksbS5wdXNoKHt4Om8seTpwLGRlcHRoOmN9KX1sZXQgdj11P1t7aW5kaWNlczpbLi4uaF0scm9sZTpgYmFzZUNhcGAsc21vb3RoU3VyZmFjZTohMH0se2luZGljZXM6Wy4uLmddLHJvbGU6YGVuZENhcGAsc21vb3RoU3VyZmFjZTohMH1dOlt7aW5kaWNlczpbMCwuLi5oXSxyb2xlOmBiYXNlQ2FwYCxzbW9vdGhTdXJmYWNlOiEwfSx7aW5kaWNlczpbMSwuLi5nXSxyb2xlOmBlbmRDYXBgLHNtb290aFN1cmZhY2U6ITB9LHtpbmRpY2VzOlswLDEsZ1swXSxoWzBdXSxyb2xlOmBiYXNlQ2FwYCxzbW9vdGhTdXJmYWNlOiExfSx7aW5kaWNlczpbMCxoLmF0KC0xKSxnLmF0KC0xKSwxXSxyb2xlOmBlbmRDYXBgLHNtb290aFN1cmZhY2U6ITF9XTtmb3IobGV0IGU9MDtlPGQ7ZSsrKXtsZXQgdD11PyhlKzEpJWQ6ZSsxO3YucHVzaCh7aW5kaWNlczpbaFtlXSxnW2VdLGdbdF0saFt0XV0scm9sZTpgc2lkZWAsc21vb3RoU3VyZmFjZTohMCxzZWdtZW50SW5kZXg6ZSxiYXNlUmltRWRnZTpbaFtlXSxoW3RdXSxlbmRSaW1FZGdlOltnW2VdLGdbdF1dfSl9cmV0dXJue3NoYXBlOmBwaWVTZWN0b3JgLHZlcnRpY2VzOm0sZmFjZXM6SHkobSx2KSxzaWxob3VldHRlRWRnZXM6aC5zbGljZSgwLHU/dm9pZCAwOi0xKS5tYXAoKGUsdCk9PltlLGdbdF1dKX19dmFyIEp5LFl5PXQoKCgpPT57Snk9ZT0+TWF0aC5tYXgoMCxNYXRoLm1pbigxLGUpKX0pKTtmdW5jdGlvbiBYeShlLHQpe2lmKCFbZSx0XS5ldmVyeShOdW1iZXIuaXNGaW5pdGUpKXJldHVybiBudWxsO2xldCBuPXQtZTtpZihuPT09MClyZXR1cm4gZT49MCYmZTw9MT97c3RhcnRUOjAsZW5kVDoxfTpudWxsO2xldCByPS1lL24saT0oMS1lKS9uLGE9TWF0aC5tYXgoMCxNYXRoLm1pbihyLGkpKSxvPU1hdGgubWluKDEsTWF0aC5tYXgocixpKSk7cmV0dXJuIGE8PW8/e3N0YXJ0VDphLGVuZFQ6b306bnVsbH1mdW5jdGlvbiBaeShlLHQsbixyKXtpZighW2UsdCxuLHJdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSkpcmV0dXJuW107bGV0IGk9WzAsMV0sYT0oZSx0KT0+e2xldCBuPXQtZTtpZihuIT09MClmb3IobGV0IHQgb2ZbMCwxXSl7bGV0IHI9KHQtZSkvbjtyPjAmJnI8MSYmTnVtYmVyLmlzRmluaXRlKHIpJiZpLnB1c2gocil9fTthKGUsdCksYShuLHIpLGkuc29ydCgoZSx0KT0+ZS10KTtsZXQgbz1pLmZpbHRlcigoZSx0KT0+dD09PTB8fE1hdGguYWJzKGUtaVt0LTFdKT4xZS0xMikscz0oZSx0LG4pPT5lKyh0LWUpKm4sYz1lPT5NYXRoLm1heCgwLE1hdGgubWluKDEsZSkpLGw9W107Zm9yKGxldCBpPTA7aSsxPG8ubGVuZ3RoO2krKyl7bGV0IGE9b1tpXSx1PW9baSsxXSxkPShhK3UpLzIsZj1jKHMoZSx0LGQpKSxwPWMocyhuLHIsZCkpO01hdGguYWJzKHAtZik8PTFlLTEyfHxsLnB1c2goe3N0YXJ0VDphLGVuZFQ6dSxsb3dlclN0YXJ0OmMocyhlLHQsYSkpLGxvd2VyRW5kOmMocyhlLHQsdSkpLHVwcGVyU3RhcnQ6YyhzKG4scixhKSksdXBwZXJFbmQ6YyhzKG4scix1KSl9KX1yZXR1cm4gbH1mdW5jdGlvbiBReShlLHQsbixyKXtsZXQgaT1bXSxhPWU9PntpLmxlbmd0aD49MTJ8fGkuc29tZSh0PT5NYXRoLmh5cG90KHQueC1lLngsdC55LWUueSk8MWUtNyl8fGkucHVzaChlKX0sbz17eDooTWF0aC5tYXgobi5taW5YLHIubWluWCkrTWF0aC5taW4obi5tYXhYLHIubWF4WCkpLzIseTooTWF0aC5tYXgobi5taW5ZLHIubWluWSkrTWF0aC5taW4obi5tYXhZLHIubWF4WSkpLzJ9O25iKGUsbykmJm5iKHQsbykmJmEobyk7Zm9yKGxldCBuIG9mIGUpbmIodCxuKSYmYShuKTtmb3IobGV0IG4gb2YgdCluYihlLG4pJiZhKG4pO2ZvcihsZXQgbj0wO248ZS5sZW5ndGgmJmkubGVuZ3RoPDEyO24rKylmb3IobGV0IHI9MDtyPHQubGVuZ3RoJiZpLmxlbmd0aDwxMjtyKyspe2xldCBpPXJiKGVbbl0sZVsobisxKSVlLmxlbmd0aF0sdFtyXSx0WyhyKzEpJXQubGVuZ3RoXSk7aSYmYShpKX1yZXR1cm4gaX1mdW5jdGlvbiAkeShlLHQpe2xldCBuPWUuY2FtZXJhRGVwdGhzO2lmKCFufHxuLmxlbmd0aCE9PWUucG9pbnRzLmxlbmd0aHx8ZS5wb2ludHMubGVuZ3RoPDMpcmV0dXJuIGUuY2FtZXJhRGVwdGg7bGV0IHI9ZS5jYW1lcmFXZWlnaHRzPy5sZW5ndGg9PT1lLnBvaW50cy5sZW5ndGg/ZS5jYW1lcmFXZWlnaHRzOmUucG9pbnRzLm1hcCgoKT0+MSksaT1lLnBvaW50c1swXTtmb3IobGV0IGE9MTthKzE8ZS5wb2ludHMubGVuZ3RoO2ErKyl7bGV0IG89ZS5wb2ludHNbYV0scz1lLnBvaW50c1thKzFdLGM9KG8ueS1zLnkpKihpLngtcy54KSsocy54LW8ueCkqKGkueS1zLnkpO2lmKE1hdGguYWJzKGMpPDFlLTEyKWNvbnRpbnVlO2xldCBsPSgoby55LXMueSkqKHQueC1zLngpKyhzLngtby54KSoodC55LXMueSkpL2MsdT0oKHMueS1pLnkpKih0Lngtcy54KSsoaS54LXMueCkqKHQueS1zLnkpKS9jLGQ9MS1sLXU7aWYoTWF0aC5taW4obCx1LGQpPC0xZS03KWNvbnRpbnVlO2xldCBmPWwqclswXSt1KnJbYV0rZCpyW2ErMV07aWYoTWF0aC5hYnMoZik+MioqLTUyKXJldHVybihsKm5bMF0qclswXSt1Km5bYV0qclthXStkKm5bYSsxXSpyW2ErMV0pL2Z9cmV0dXJuIGUuY2FtZXJhRGVwdGh9ZnVuY3Rpb24gZWIoZSl7aWYoZS5sZW5ndGg8MilyZXR1cm5bLi4uZV07bGV0IHQ9Wy4uLmUua2V5cygpXS5zb3J0KCh0LG4pPT5lW3RdLmNhbWVyYURlcHRoLWVbbl0uY2FtZXJhRGVwdGh8fHQtbiksbj1lLm1hcChlPT50YihlLnBvaW50cykpLHI9Wy4uLmUua2V5cygpXS5zb3J0KChlLHQpPT5uW2VdLm1pblgtblt0XS5taW5YfHxlLXQpLGk9ZS5tYXAoKCk9Pm5ldyBTZXQpLGE9ZS5tYXAoKCk9PjApLG89W10scz0wO2ZvcihsZXQgYyBvZiByKXtmb3IobGV0IGU9by5sZW5ndGgtMTtlPj0wO2UtLSluW29bZV1dLm1heFg8bltjXS5taW5YLTFlLTkmJm8uc3BsaWNlKGUsMSk7Zm9yKGxldCByIG9mIG8pe2lmKCsrcz4yZTUpcmV0dXJuIHQubWFwKHQ9PmVbdF0pO2lmKG5bcl0ubWF4WTxuW2NdLm1pblktMWUtOXx8bltjXS5tYXhZPG5bcl0ubWluWS0xZS05KWNvbnRpbnVlO2xldCBvPVF5KGVbcl0ucG9pbnRzLGVbY10ucG9pbnRzLG5bcl0sbltjXSksbD0wO2ZvcihsZXQgdCBvZiBvKXtsZXQgbj0keShlW3JdLHQpLSR5KGVbY10sdCksaT0xZS04Kk1hdGgubWF4KDEsTWF0aC5hYnMoZVtyXS5jYW1lcmFEZXB0aCksTWF0aC5hYnMoZVtjXS5jYW1lcmFEZXB0aCkpO2lmKE1hdGguYWJzKG4pPD1pKWNvbnRpbnVlO2xldCBhPW48MD8tMToxO2lmKGwhPT0wJiZsIT09YSl7bD0wO2JyZWFrfWw9YX1pZihsPT09MCljb250aW51ZTtsZXQgdT1sPDA/cjpjLGQ9bDwwP2M6cjtpW3VdLmhhcyhkKXx8KGlbdV0uYWRkKGQpLGFbZF0rKyl9by5wdXNoKGMpfWxldCBjPW5ldyBTZXQoZS5rZXlzKCkpLGw9W107Zm9yKDtjLnNpemU7KXtsZXQgbj10LmZpbmQoZT0+Yy5oYXMoZSkmJmFbZV09PT0wKTtpZihuPz89dC5maW5kKGU9PmMuaGFzKGUpKSxuPT1udWxsKWJyZWFrO2MuZGVsZXRlKG4pLGwucHVzaChlW25dKTtmb3IobGV0IGUgb2YgaVtuXSlhW2VdLS19cmV0dXJuIGx9dmFyIHRiLG5iLHJiLGliPXQoKCgpPT57dGI9ZT0+KHttaW5YOk1hdGgubWluKC4uLmUubWFwKGU9PmUueCkpLG1heFg6TWF0aC5tYXgoLi4uZS5tYXAoZT0+ZS54KSksbWluWTpNYXRoLm1pbiguLi5lLm1hcChlPT5lLnkpKSxtYXhZOk1hdGgubWF4KC4uLmUubWFwKGU9PmUueSkpfSksbmI9KGUsdCk9PntsZXQgbj0hMTtmb3IobGV0IHI9MCxpPWUubGVuZ3RoLTE7cjxlLmxlbmd0aDtpPXIrKyl7bGV0IGE9ZVtyXSxvPWVbaV0scz0oYS54LXQueCkqKG8ueS10LnkpLShhLnktdC55KSooby54LXQueCksYz1NYXRoLm1heCgxLE1hdGguYWJzKGEueCksTWF0aC5hYnMoYS55KSxNYXRoLmFicyhvLngpLE1hdGguYWJzKG8ueSkpO2lmKE1hdGguYWJzKHMpPD1jKjFlLTkmJnQueD49TWF0aC5taW4oYS54LG8ueCktMWUtOSYmdC54PD1NYXRoLm1heChhLngsby54KSsxZS05JiZ0Lnk+PU1hdGgubWluKGEueSxvLnkpLTFlLTkmJnQueTw9TWF0aC5tYXgoYS55LG8ueSkrMWUtOSlyZXR1cm4hMDthLnk+dC55IT1vLnk+dC55JiZ0Lng8KG8ueC1hLngpKih0LnktYS55KS8oby55LWEueSkrYS54JiYobj0hbil9cmV0dXJuIG59LHJiPShlLHQsbixyKT0+e2xldCBpPXt4OnQueC1lLngseTp0LnktZS55fSxhPXt4OnIueC1uLngseTpyLnktbi55fSxvPWkueCphLnktaS55KmEueDtpZihNYXRoLmFicyhvKTwxZS0xMilyZXR1cm4gbnVsbDtsZXQgcz17eDpuLngtZS54LHk6bi55LWUueX0sYz0ocy54KmEueS1zLnkqYS54KS9vLGw9KHMueCppLnktcy55KmkueCkvbztyZXR1cm4gYzwtMWUtOXx8Yz4xLjAwMDAwMDAwMXx8bDwtMWUtOXx8bD4xLjAwMDAwMDAwMT9udWxsOnt4OmUueCtpLngqYyx5OmUueStpLnkqY319fSkpO2Z1bmN0aW9uIGFiKGUsdCxuPTApe2xldCByPXQuZmlsdGVyKGU9Pk51bWJlci5pc0Zpbml0ZShlKSYmZT5jYik7aWYoci5sZW5ndGg9PT0wKXJldHVybiBlLmxlbmd0aD49Mj9bWy4uLmVdXTpbXTtyLmxlbmd0aCUyPT0xJiZyLnB1c2goLi4ucik7bGV0IGk9W10sYT0wLG89clswXSxzPSEwLGM9ci5yZWR1Y2UoKGUsdCk9PmUrdCwwKSxsPWM+Y2ImJk51bWJlci5pc0Zpbml0ZShuKT8obiVjK2MpJWM6MDtmb3IoO2w+Y2I7KXtsZXQgZT1NYXRoLm1pbihsLG8pO2wtPWUsby09ZSxvPD1jYiYmKGE9KGErMSklci5sZW5ndGgsbz1yW2FdLHM9YSUyPT0wKX1sZXQgdT1udWxsO2ZvcihsZXQgdD0wO3QrMTxlLmxlbmd0aDt0Kyspe2xldCBuPWVbdF0sYz1lW3QrMV0sbD1NYXRoLmh5cG90KGMueC1uLngsYy55LW4ueSk7aWYoIShsPmNiKSljb250aW51ZTtsZXQgZD0wO2Zvcig7ZDxsLWNiOyl7bGV0IGU9TWF0aC5taW4obyxsLWQpLHQ9dWIobixjLGQvbCksZj11YihuLGMsKGQrZSkvbCk7aWYocyYmKHU/Pz1bXSwodS5sZW5ndGg9PT0wfHwhZGIodS5hdCgtMSksdCkpJiZ1LnB1c2godCksdS5wdXNoKGYpKSxkKz1lLG8tPWUsbzw9Y2Ipe2lmKHMmJnUmJnUubGVuZ3RoPj0yKXtpZihpLmxlbmd0aD49MWU0KXJldHVybiBudWxsO2kucHVzaCh1KX11PW51bGwsYT0oYSsxKSVyLmxlbmd0aCxvPXJbYV0scz1hJTI9PTB9fX1pZihzJiZ1JiZ1Lmxlbmd0aD49Mil7aWYoaS5sZW5ndGg+PTFlNClyZXR1cm4gbnVsbDtpLnB1c2godSl9aWYoaS5sZW5ndGg+MSYmZGIoZVswXSxlLmF0KC0xKSkmJmRiKGlbMF1bMF0sZVswXSkmJmRiKGkuYXQoLTEpLmF0KC0xKSxlLmF0KC0xKSkpe2xldCBlPWkuc2hpZnQoKSx0PWkucG9wKCk7aS51bnNoaWZ0KFsuLi50LC4uLmUuc2xpY2UoMSldKX1yZXR1cm4gaX1mdW5jdGlvbiBvYihlLHQsbil7bGV0IHI9TnVtYmVyLmlzRmluaXRlKG4ud2lkdGgpP01hdGgubWF4KDAsbi53aWR0aCk6MDtpZighKHI+Y2IpfHx0Lmxlbmd0aDwzKXJldHVybiBudWxsO2xldCBpPXIvMjtpZigobi5saW5lSm9pbj8/YG1pdGVyYCk9PT1gcm91bmRgKXJldHVybiBwYihlLGksYGpvaW5gKTtsZXQgYT1bXTtmb3IobGV0IG4gb2YgdCl7bGV0IHQ9bi54LWUueCxyPW4ueS1lLnksbz1NYXRoLmh5cG90KHQscik7aWYoIShvPmNiKSljb250aW51ZTtsZXQgcz0tci9vKmksYz10L28qaTthLnB1c2goey4uLmUseDplLngrcyx5OmUueStjfSx7Li4uZSx4OmUueC1zLHk6ZS55LWN9KX1pZihhLmxlbmd0aDwzKXJldHVybiBudWxsO2Euc29ydCgoZSx0KT0+ZS54LXQueHx8ZS55LXQueSk7bGV0IG89KGUsdCxuKT0+KHQueC1lLngpKihuLnktZS55KS0odC55LWUueSkqKG4ueC1lLngpLHM9W107Zm9yKGxldCBlIG9mIGEpe2Zvcig7cy5sZW5ndGg+PTImJm8ocy5hdCgtMikscy5hdCgtMSksZSk8PWNiOylzLnBvcCgpO3MucHVzaChlKX1sZXQgYz1bXTtmb3IobGV0IGUgb2ZbLi4uYV0ucmV2ZXJzZSgpKXtmb3IoO2MubGVuZ3RoPj0yJiZvKGMuYXQoLTIpLGMuYXQoLTEpLGUpPD1jYjspYy5wb3AoKTtjLnB1c2goZSl9bGV0IGw9Wy4uLnMuc2xpY2UoMCwtMSksLi4uYy5zbGljZSgwLC0xKV07cmV0dXJuIGwubGVuZ3RoPj0zP2ZiKGBqb2luYCxsKTpudWxsfWZ1bmN0aW9uIHNiKGUsdCl7bGV0IG49TnVtYmVyLmlzRmluaXRlKHQud2lkdGgpP01hdGgubWF4KDAsdC53aWR0aCk6MDtpZighKG4+Y2IpfHxlLmxlbmd0aDwyKXJldHVybltdO2xldCByPW4vMixpPXQubGluZUNhcD8/YGJ1dHRgLGE9dC5saW5lSm9pbj8/YG1pdGVyYCxvPU1hdGgubWF4KDEsdC5taXRlckxpbWl0Pz8xMCkscz1bXSxjPWFiKGUsdC5kYXNoPz9bXSx0LmRhc2hPZmZzZXQpO2lmKGM9PW51bGwpcmV0dXJuIG51bGw7bGV0IGw9ZT0+cy5sZW5ndGg+PTFlND8hMToocy5wdXNoKGUpLCEwKTtmb3IobGV0IG49MDtuPGMubGVuZ3RoO24rKyl7bGV0IHM9Y1tuXSx1PXMubGVuZ3RoPjImJmRiKHNbMF0scy5hdCgtMSkpLGQ9bj09PTAmJmRiKHNbMF0sZVswXSk/dC5zdGFydENhcD8/aTppLGY9bisxPT09Yy5sZW5ndGgmJmRiKHMuYXQoLTEpLGUuYXQoLTEpKT90LmVuZENhcD8/aTppLHA9W107Zm9yKGxldCBlPTA7ZSsxPHMubGVuZ3RoO2UrKyl7bGV0IHQ9c1tlXSxuPXNbZSsxXSxyPU1hdGguaHlwb3Qobi54LXQueCxuLnktdC55KTtwLnB1c2gocj5jYj97eDoobi54LXQueCkvcix5OihuLnktdC55KS9yfTpudWxsKX1mb3IobGV0IGU9MDtlKzE8cy5sZW5ndGg7ZSsrKXtsZXQgbj1wW2VdO2lmKCFuKWNvbnRpbnVlO2xldCBpPXt4Oi1uLnkqcix5Om4ueCpyfSxhPWU9PT0wLG89ZSsyPT09cy5sZW5ndGgsYz1NYXRoLm1pbiguNSxyLzIpLG09dXx8IWF8fHQub3ZlcmxhcFN0YXJ0PT09ITAsaD11fHwhb3x8dC5vdmVybGFwRW5kPT09ITAsZz0hdSYmYSYmZD09PWBzcXVhcmVgP3I6bT9jOjAsXz0hdSYmbyYmZj09PWBzcXVhcmVgP3I6aD9jOjAsdj17Li4uc1tlXSx4OnNbZV0ueC1uLngqZyx5OnNbZV0ueS1uLnkqZ30seT17Li4uc1tlKzFdLHg6c1tlKzFdLngrbi54Kl8seTpzW2UrMV0ueStuLnkqX307aWYoIWwoZmIoYHNlZ21lbnRgLFt7Li4udix4OnYueCtpLngseTp2LnkraS55fSx7Li4ueSx4OnkueCtpLngseTp5LnkraS55fSx7Li4ueSx4OnkueC1pLngseTp5LnktaS55fSx7Li4udix4OnYueC1pLngseTp2LnktaS55fV0pKSlyZXR1cm4gbnVsbH1pZighdSYmZD09PWByb3VuZGAmJiFsKHBiKHNbMF0scixgY2FwYCkpfHwhdSYmZj09PWByb3VuZGAmJiFsKHBiKHMuYXQoLTEpLHIsYGNhcGApKSlyZXR1cm4gbnVsbDtsZXQgbT0oZSx0LG4pPT57aWYoIXR8fCFuKXJldHVybiEwO2xldCBpPXQueCpuLnktdC55Km4ueDtpZihNYXRoLmFicyhpKTw9Y2IpcmV0dXJuITA7aWYoYT09PWByb3VuZGApcmV0dXJuIGwocGIoZSxyLGBqb2luYCkpO2xldCBzPWk+MD8tMToxLGM9ey4uLmUseDplLngrLXQueSpyKnMseTplLnkrdC54KnIqc30sdT17Li4uZSx4OmUueCstbi55KnIqcyx5OmUueStuLngqcipzfTtpZihhPT09YG1pdGVyYCl7bGV0IGk9bWIoYyx0LHUsbik7aWYoaSYmTWF0aC5oeXBvdChpLngtZS54LGkueS1lLnkpPD1yKm8pcmV0dXJuISFsKGZiKGBqb2luYCxbYyx7Li4uZSwuLi5pfSx1XSkpfXJldHVybiBsKGZiKGBqb2luYCxbYyxlLHVdKSl9O2ZvcihsZXQgZT0xO2UrMTxzLmxlbmd0aDtlKyspaWYoIW0oc1tlXSxwW2UtMV0scFtlXSkpcmV0dXJuIG51bGw7aWYodSYmIW0oc1swXSxwLmF0KC0xKT8/bnVsbCxwWzBdPz9udWxsKSlyZXR1cm4gbnVsbH1yZXR1cm4gc312YXIgY2IsbGIsdWIsZGIsZmIscGIsbWIsaGI9dCgoKCk9PntjYj0xZS05LGxiPTFlNCx1Yj0oZSx0LG4pPT4oe3g6ZS54Kyh0LngtZS54KSpuLHk6ZS55Kyh0LnktZS55KSpuLGNhbWVyYURlcHRoOmUuY2FtZXJhRGVwdGgrKHQuY2FtZXJhRGVwdGgtZS5jYW1lcmFEZXB0aCkqbixjYW1lcmFXZWlnaHQ6KGUuY2FtZXJhV2VpZ2h0Pz8xKSsoKHQuY2FtZXJhV2VpZ2h0Pz8xKS0oZS5jYW1lcmFXZWlnaHQ/PzEpKSpufSksZGI9KGUsdCk9Pk1hdGguaHlwb3QoZS54LXQueCxlLnktdC55KTw9Y2IsZmI9KGUsdCk9Pih7a2luZDplLHBvaW50czp0Lm1hcCgoe3g6ZSx5OnR9KT0+KHt4OmUseTp0fSkpLGNhbWVyYURlcHRoczp0Lm1hcChlPT5lLmNhbWVyYURlcHRoKSxjYW1lcmFXZWlnaHRzOnQubWFwKGU9PmUuY2FtZXJhV2VpZ2h0Pz8xKSxjYW1lcmFEZXB0aDp0LnJlZHVjZSgoZSx0KT0+ZSt0LmNhbWVyYURlcHRoLDApL3QubGVuZ3RofSkscGI9KGUsdCxuKT0+e2xldCByPVtdO2ZvcihsZXQgbj0wO248MTI7bisrKXtsZXQgaT1NYXRoLlBJKjIqbi8xMjtyLnB1c2goey4uLmUseDplLngrTWF0aC5jb3MoaSkqdCx5OmUueStNYXRoLnNpbihpKSp0fSl9cmV0dXJuIGZiKG4scil9LG1iPShlLHQsbixyKT0+e2xldCBpPXQueCpyLnktdC55KnIueDtpZihNYXRoLmFicyhpKTw9Y2IpcmV0dXJuIG51bGw7bGV0IGE9e3g6bi54LWUueCx5Om4ueS1lLnl9LG89KGEueCpyLnktYS55KnIueCkvaTtyZXR1cm57eDplLngrdC54Km8seTplLnkrdC55Km99fX0pKTtmdW5jdGlvbiBnYihlKXtsZXQgdD1bLi4uZV0ucmV2ZXJzZSgpO3JldHVybiBTYihlLHQpPD0wP2U6dH1mdW5jdGlvbiBfYihlKXtsZXQgdD1iYihlWzBdLGUuYXQoLTEpKT9lLnNsaWNlKDAsLTEpOlsuLi5lXTtpZih0Lmxlbmd0aD09PTApcmV0dXJuW107bGV0IG49MDtmb3IobGV0IGU9MTtlPHQubGVuZ3RoO2UrKyl4Yih0W2VdLHRbbl0pPDAmJihuPWUpO2xldCByPXQubWFwKChlLHIpPT50WyhuK3IpJXQubGVuZ3RoXSksaT10Lm1hcCgoZSxyKT0+dFsobi1yK3QubGVuZ3RoKSV0Lmxlbmd0aF0pLGE9U2IocixpKTw9MD9yOmk7cmV0dXJuWy4uLmEsYVswXV19ZnVuY3Rpb24gdmIoZSl7bGV0IHQ9W10sbj1lPT57bGV0IG49dC5maW5kKHQ9PmJiKHQucG9pbnQsZSkpO2lmKG4pcmV0dXJuIHhiKGUsbi5wb2ludCk8MCYmKG4ucG9pbnQ9ZSksbjtsZXQgcj17cG9pbnQ6ZSxlZGdlczpbXSxvcmRlcjotMX07cmV0dXJuIHQucHVzaChyKSxyfSxyPVtdO2ZvcihsZXRbdCxpXW9mIGUpe2lmKGJiKHQsaSkpY29udGludWU7bGV0IGU9bih0KSxhPW4oaSk7ZSE9PWEmJnIucHVzaChbZSxhXSl9dC5zb3J0KChlLHQpPT54YihlLnBvaW50LHQucG9pbnQpKSx0LmZvckVhY2goKGUsdCk9PntlLm9yZGVyPXR9KTtsZXQgaT1bXSxhPW5ldyBTZXQ7Zm9yKGxldFtlLHRdb2Ygcil7bGV0IG49ZS5vcmRlcjx0Lm9yZGVyP2U6dCxyPWUub3JkZXI8dC5vcmRlcj90OmUsbz1gJHtuLm9yZGVyfToke3Iub3JkZXJ9YDthLmhhcyhvKXx8KGEuYWRkKG8pLGkucHVzaCh7Zmlyc3Q6bixzZWNvbmQ6cixrZXk6b30pKX1pLnNvcnQoKGUsdCk9PmUua2V5LmxvY2FsZUNvbXBhcmUodC5rZXkpKSxpLmZvckVhY2goKGUsdCk9PntlLmZpcnN0LmVkZ2VzLnB1c2godCksZS5zZWNvbmQuZWRnZXMucHVzaCh0KX0pO2ZvcihsZXQgZSBvZiB0KWUuZWRnZXMuc29ydCgoZSx0KT0+ZS10KTtsZXQgbz1uZXcgU2V0LHM9KGUsdCk9PntsZXQgbj1bZS5wb2ludF0scj1lLGE9dDtmb3IoOyFvLmhhcyhhKTspe28uYWRkKGEpO2xldCBlPWlbYV0sdD1lLmZpcnN0PT09cj9lLnNlY29uZDplLmZpcnN0O2lmKG4ucHVzaCh0LnBvaW50KSx0LmVkZ2VzLmxlbmd0aCE9PTIpYnJlYWs7bGV0IHM9dC5lZGdlcy5maW5kKGU9PiFvLmhhcyhlKSk7aWYocz09PXZvaWQgMClicmVhaztyPXQsYT1zfXJldHVybiBufSxjPVtdO2ZvcihsZXQgZSBvZiB0KWlmKGUuZWRnZXMubGVuZ3RoIT09Milmb3IobGV0IHQgb2YgZS5lZGdlcylvLmhhcyh0KXx8Yy5wdXNoKGdiKHMoZSx0KSkpO2ZvcihsZXQgZT0wO2U8aS5sZW5ndGg7ZSsrKXtpZihvLmhhcyhlKSljb250aW51ZTtsZXQgdD1pW2VdLG49dC5maXJzdC5vcmRlcjw9dC5zZWNvbmQub3JkZXI/dC5maXJzdDp0LnNlY29uZDtjLnB1c2goX2IocyhuLGUpKSl9bGV0IGw9dC5maWx0ZXIoZT0+ZS5lZGdlcy5sZW5ndGg+MikubWFwKGU9Pih7cG9pbnQ6ZS5wb2ludCxuZWlnaGJvdXJzOmUuZWRnZXMubWFwKHQ9PntsZXQgbj1pW3RdO3JldHVybiBuLmZpcnN0PT09ZT9uLnNlY29uZC5wb2ludDpuLmZpcnN0LnBvaW50fSkuc29ydCh4Yil9KSk7cmV0dXJue3BhdGhzOmMuc29ydChTYiksanVuY3Rpb25zOmx9fXZhciB5YixiYix4YixTYixDYj10KCgoKT0+e3liPTFlLTksYmI9KGUsdCk9Pk1hdGguaHlwb3QoZS54LXQueCxlLnktdC55LGUuZGVwdGgtdC5kZXB0aCk8PXliLHhiPShlLHQpPT5lLngtdC54fHxlLnktdC55fHxlLmRlcHRoLXQuZGVwdGgsU2I9KGUsdCk9PntsZXQgbj1NYXRoLm1pbihlLmxlbmd0aCx0Lmxlbmd0aCk7Zm9yKGxldCByPTA7cjxuO3IrKyl7bGV0IG49eGIoZVtyXSx0W3JdKTtpZihuIT09MClyZXR1cm4gbn1yZXR1cm4gZS5sZW5ndGgtdC5sZW5ndGh9fSkpLHdiPW4oe1RIUkVFX0RfSU1QTEVNRU5UQVRJT05fTUFSS0VSOigpPT5DeCxUSFJFRV9EX1JPVU5EX01FU0hfRkFDRV9XRUlHSFQ6KCk9Pk94LGJ1Y2tldFRocmVlRFN0YWNrSXRlbXM6KCk9Pk9iLHJlbmRlclNpbXBsZVRocmVlRENoYXJ0OigpPT5TeCx0aHJlZURNZXNoT3V0bGluZVdpZHRoUHg6KCk9PkRiLHRocmVlRFBpZVNsaWNlQW5nbGVzOigpPT5heCx0aHJlZURXYWxsR2VvbWV0cnk6KCk9Pm94fSk7ZnVuY3Rpb24gVGIoZSl7bGV0IHQ9bmV3IE1hcDtmb3IobGV0IG4gb2YgZS5sZWdlbmRFbnRyaWVzPz9bXSl0LnNldChuLmlkeCxuKTtyZXR1cm4gdH1mdW5jdGlvbiBFYihlLHQsbil7bGV0IHI9QXQodD8uZm9udFNpemVIcHQ/P2UubGVnZW5kRm9udFNpemVIcHQsbik/PzkqbixpPXQ/LmZvbnRGYWNlPz9lLmxlZ2VuZEZvbnRGYWNlO3JldHVybntmb250UHg6cixmb250OmAke3Q/LmZvbnRCb2xkPz9lLmxlZ2VuZEZvbnRCb2xkPz8hMT9gYm9sZCBgOmBgfSR7cn1weCAke0F4KGkpfWAsY29sb3I6dD8uZm9udENvbG9yP2AjJHt0LmZvbnRDb2xvcn1gOmUubGVnZW5kRm9udENvbG9yP2AjJHtlLmxlZ2VuZEZvbnRDb2xvcn1gOmAjNTk1OTU5YH19ZnVuY3Rpb24gRGIoZSx0KXtsZXQgbj1OdW1iZXIuaXNGaW5pdGUodCkmJnQ+MD90L3V0OjEscj1OdW1iZXIuaXNGaW5pdGUoZSkmJmU+PTA/ZS9jdDowO3JldHVybiBNYXRoLm1heCguMjUscikqbn1mdW5jdGlvbiBPYihlLHQpe2xldCBuPU51bWJlci5pc1NhZmVJbnRlZ2VyKHQpJiZ0PjA/dDowLHI9QXJyYXkuZnJvbSh7bGVuZ3RoOm59LCgpPT5bXSk7Zm9yKGxldCB0IG9mIGUpe2xldCBlPXQuY2F0ZWdvcnlJbmRleDtOdW1iZXIuaXNTYWZlSW50ZWdlcihlKSYmZT49MCYmZTxuJiZyW2VdLnB1c2godCl9cmV0dXJuIHJ9ZnVuY3Rpb24ga2IoZSx0LG4pe2xldCByPTA7Zm9yKGxldCBpIG9mIGUpZm9yKGxldCBlIG9mW3QoaSksbihpKV0pe2lmKGU9PW51bGwpY29udGludWU7bGV0IHQ9TG4oZSk7aWYoZS5maWxsVHlwZT09PWBncmFkaWVudGAmJnQ+VHh8fHQ+RXgtcilyZXR1cm4hMTtyKz10fXJldHVybiEwfWZ1bmN0aW9uIEFiKGUsdCl7bGV0IG49QXJyYXkuZnJvbSh7bGVuZ3RoOnR9LCgpPT4oe21heE1hZ25pdHVkZTowLHNjYWxlZFRvdGFsOjB9KSk7Zm9yKGxldCByIG9mIGUuc2VyaWVzKWZvcihsZXQgZT0wO2U8dDtlKyspe2xldCB0PXIudmFsdWVzW2VdO3QhPW51bGwmJk51bWJlci5pc0Zpbml0ZSh0KSYmKG5bZV0ubWF4TWFnbml0dWRlPU1hdGgubWF4KG5bZV0ubWF4TWFnbml0dWRlLE1hdGguYWJzKHQpKSl9Zm9yKGxldCByIG9mIGUuc2VyaWVzKWZvcihsZXQgZT0wO2U8dDtlKyspe2xldCB0PXIudmFsdWVzW2VdLGk9bltlXS5tYXhNYWduaXR1ZGU7dCE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKHQpJiZpPjAmJihuW2VdLnNjYWxlZFRvdGFsKz1NYXRoLmFicyh0KS9pKX1yZXR1cm4gbn1mdW5jdGlvbiBqYihlLHQsbixyKXtsZXQgaT1lLnNlcmllc1t0XT8udmFsdWVzW25dPz8wO2lmKCFOdW1iZXIuaXNGaW5pdGUoaSkpcmV0dXJuIDA7aWYoIXIpcmV0dXJuIGk7bGV0e21heE1hZ25pdHVkZTphLHNjYWxlZFRvdGFsOm99PXJbbl0/P3ttYXhNYWduaXR1ZGU6MCxzY2FsZWRUb3RhbDowfTtyZXR1cm4gYT4wJiZvPjA/aS9hL28qMTAwOjB9ZnVuY3Rpb24gTWIoZSx0KXtsZXQgbj1lK3Q7cmV0dXJuIE51bWJlci5pc0Zpbml0ZShuKT9uOnQ8MD8tTnVtYmVyLk1BWF9WQUxVRTpOdW1iZXIuTUFYX1ZBTFVFfWZ1bmN0aW9uIE5iKGUpe2xldCB0PVtdO2ZvcihsZXRbbixyXW9mW1tlLnRocmVlRD8uZmxvb3IsYGZsb29yYF0sW2UudGhyZWVEPy5zaWRlV2FsbCxgd2FsbGBdLFtlLnRocmVlRD8uYmFja1dhbGwsYHdhbGxgXV0pe2xldCBpPW9yKGUsbixyKTt0LnB1c2goe2ZpbGw6aS5maWxsLGxpbmU6aS5saW5lfSl9aWYoZS5jaGFydFR5cGU9PT1gcGllYCl7bGV0IG49ZS5zZXJpZXNbMF07aWYobil7bGV0IHI9bmV3IE1hcChuLmRhdGFQb2ludE92ZXJyaWRlcz8ubWFwKGU9PltlLmlkeCxlXSk/P1tdKTtmb3IobGV0IGk9MDtpPG4udmFsdWVzLmxlbmd0aDtpKyspe2xldCBhPW4udmFsdWVzW2ldO2lmKGE9PW51bGx8fCFOdW1iZXIuaXNGaW5pdGUoYSl8fE1hdGguYWJzKGEpPD0wKWNvbnRpbnVlO2xldCBvPUZiKGUsbixyLmdldChpKSxpLDApO3QucHVzaCh7ZmlsbDpvLmZpbGwsbGluZTpvLmxpbmVGaWxsfSl9fX1lbHNlIGlmKGUuY2hhcnRUeXBlPT09YGNsdXN0ZXJlZEJhcmB8fGUuY2hhcnRUeXBlPT09YGNsdXN0ZXJlZEJhckhgfHxlLmNoYXJ0VHlwZS5zdGFydHNXaXRoKGBzdGFja2VkQmFyYCkpe2xldCBuPWUuY2hhcnRUeXBlLnN0YXJ0c1dpdGgoYHN0YWNrZWRgKSxyPWUuY2hhcnRUeXBlLmVuZHNXaXRoKGBQY3RgKSxpPW58fGUuZGlzcEJsYW5rc0FzPT09YHplcm9gLGE9ZS52YWxBeGlzTG9nQmFzZSE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGUudmFsQXhpc0xvZ0Jhc2UpJiZlLnZhbEF4aXNMb2dCYXNlPj0yLG89TWF0aC5tYXgoMSxlLmNhdGVnb3JpZXMubGVuZ3RoLC4uLmUuc2VyaWVzLm1hcChlPT5NYXRoLm1heChlLnZhbHVlcy5sZW5ndGgsZS5jYXRlZ29yaWVzPy5sZW5ndGg/PzApKSkscz1yP0FiKGUsbyk6dm9pZCAwLGM9KHQsbik9PntpZih0PT09bilyZXR1cm4hMTtsZXQgcj1NYXRoLm1pbih0LG4pLGk9TWF0aC5tYXgodCxuKSxvPWUudmFsTWluLHM9ZS52YWxNYXg7cmV0dXJuIG8hPW51bGwmJk51bWJlci5pc0Zpbml0ZShvKSYmaTw9b3x8cyE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKHMpJiZyPj1zPyExOiFhfHxpPjB9LGw9QXJyYXkobykuZmlsbCgwKSx1PUFycmF5KG8pLmZpbGwoMCk7Zm9yKGxldCByPTA7cjxlLnNlcmllcy5sZW5ndGg7cisrKXtsZXQgZD1lLnNlcmllc1tyXSxmPW5ldyBNYXAoZC5kYXRhUG9pbnRPdmVycmlkZXM/Lm1hcChlPT5bZS5pZHgsZV0pPz9bXSk7Zm9yKGxldCBwPTA7cDxvO3ArKyl7bGV0IG89ZC52YWx1ZXNbcF07aWYoIShvIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUobykmJighYXx8bz4wKXx8bz09bnVsbCYmaSkpY29udGludWU7bGV0IG09amIoZSxyLHAscyksaD1uP20+PTA/bFtwXTp1W3BdOjAsZz1NYihoLG0pO2lmKG4mJihtPj0wP2xbcF09Zzp1W3BdPWcpLCFjKGgsZykpY29udGludWU7bGV0IF89RmIoZSxkLGYuZ2V0KHApLHAscik7dC5wdXNoKHtmaWxsOl8uZmlsbCxsaW5lOl8ubGluZUZpbGx9KX19fWVsc2V7bGV0IG49ZS5jaGFydFR5cGUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhgYXJlYWApLHI9ZS5jaGFydFR5cGUuc3RhcnRzV2l0aChgc3RhY2tlZGApLGk9ZS5jaGFydFR5cGUuZW5kc1dpdGgoYFBjdGApLGE9cnx8ZS5kaXNwQmxhbmtzQXM9PT1gemVyb2Asbz1lLnZhbEF4aXNMb2dCYXNlIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUoZS52YWxBeGlzTG9nQmFzZSkmJmUudmFsQXhpc0xvZ0Jhc2U+PTIscz1NYXRoLm1heChlLmNhdGVnb3JpZXMubGVuZ3RoLC4uLmUuc2VyaWVzLm1hcChlPT5NYXRoLm1heChlLmNhdGVnb3JpZXM/Lmxlbmd0aD8/MCxlLnZhbHVlcy5sZW5ndGgpKSksYz1pP0FiKGUscyk6dm9pZCAwLGw9ZS5zZXJpZXMubWFwKCgpPT5BcnJheShzKS5maWxsKDApKTtpZihyKXtsZXQgdD1BcnJheShzKS5maWxsKDApLG49QXJyYXkocykuZmlsbCgwKTtmb3IobGV0IHI9MDtyPGUuc2VyaWVzLmxlbmd0aDtyKyspZm9yKGxldCBpPTA7aTxzO2krKyl7bGV0IGE9amIoZSxyLGksYyksbz1NYihhPj0wP3RbaV06bltpXSxhKTtsW3JdW2ldPW8sYT49MD90W2ldPW86bltpXT1vfX1mb3IobGV0IGk9MDtpPGUuc2VyaWVzLmxlbmd0aDtpKyspe2xldCB1PWUuc2VyaWVzW2ldLGQ9bmV3IE1hcCh1LmRhdGFQb2ludE92ZXJyaWRlcz8ubWFwKGU9PltlLmlkeCxlXSk/P1tdKSxmPXMscD0wLG09bnVsbCxoPSExLGc9ITE7Zm9yKGxldCBzPTA7czxmO3MrKyl7bGV0IGY9dS52YWx1ZXNbc107aWYoZiE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGYpJiYoIW98fGY+MCl8fGY9PW51bGwmJmEpe3ArKztsZXQgYT1yP2xbaV1bc106amIoZSxpLHMsYyksbz1tPT1udWxsP2E6TWF0aC5taW4obSxhKSxmPW09PW51bGw/YTpNYXRoLm1heChtLGEpLF89ZS52YWxNaW4hPW51bGwmJk51bWJlci5pc0Zpbml0ZShlLnZhbE1pbikmJmY8PWUudmFsTWlufHxlLnZhbE1heCE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGUudmFsTWF4KSYmbz49ZS52YWxNYXg7aWYocD49MiYmKG58fHUuc21vb3RoPT09ITB8fCFfKSl7aWYoaD0hMCxuKWJyZWFrO2xldCByPWQuZ2V0KHMpO2lmKEliKHIpKXtsZXQgbj1GYihlLHUscixzLGkpO3QucHVzaCh7ZmlsbDp2b2lkIDAsbGluZTpuLmxpbmVGaWxsfSl9ZWxzZSBnPSEwfW09YX1lbHNlIChlLmRpc3BCbGFua3NBcz8/YGdhcGApPT09YGdhcGAmJihwPTAsbT1udWxsKX1pZighaCljb250aW51ZTtsZXQgXz1GYihlLHUsdm9pZCAwLGksaSk7bj90LnB1c2goe2ZpbGw6Xy5maWxsLGxpbmU6Xy5saW5lRmlsbH0pOmcmJnQucHVzaCh7ZmlsbDp2b2lkIDAsbGluZTpfLmxpbmVGaWxsfSl9fXJldHVybiBrYih0LGU9PmUuZmlsbCxlPT5lLmxpbmUpfWZ1bmN0aW9uIFBiKGUsdCl7cmV0dXJuIGU/LmZpbGxUeXBlPT09YHNvbGlkYD97Y29sb3I6YCMke2UuY29sb3J9YCxmaWxsOnZvaWQgMH06e2NvbG9yOnQsZmlsbDplfX1mdW5jdGlvbiBGYihlLHQsbixyLGkpe2xldCBhPXQuZGF0YVBvaW50Q29sb3JzPy5bcl0/YCMke3QuZGF0YVBvaW50Q29sb3JzW3JdfWA6a3goaSx0KSxvPWUuY2hhcnRUeXBlPT09YHBpZWB8fGUudmFyeUNvbG9ycz09PSEwJiZlLnNlcmllcy5sZW5ndGg9PT0xJiZlLmNoYXJ0VHlwZS5pbmNsdWRlcyhgQmFyYCk/cjppLHMsYz1hLGw9aXIobj8uY2hhcnRleFN0eWxlLHIpO2lmKGwhPT12b2lkIDApKHtjb2xvcjpjLGZpbGw6c309UGIobCxjKSk7ZWxzZSBpZihuPy5maWxsSGlkZGVuPT09ITB8fG4/LmNvbG9yPT09YDAwMDAwMDAwYClzPW51bGw7ZWxzZSBpZihuPy5jb2xvciljPWAjJHtuLmNvbG9yfWA7ZWxzZXtsZXQgbj1pcih0LmNoYXJ0ZXhTdHlsZSxvKTtpZihuIT09dm9pZCAwKSh7Y29sb3I6YyxmaWxsOnN9PVBiKG4sYykpO2Vsc2V7bGV0IHQ9aXIoZS5jaGFydFN0eWxlUm9sZXM/LmRhdGFQb2ludDNELG8pO3QhPT12b2lkIDAmJih7Y29sb3I6YyxmaWxsOnN9PVBiKHQsYykpfX1sZXQgdSxkPW51bGwsZj1hcihuPy5jaGFydGV4U3R5bGUscik7aWYoZiE9PXZvaWQgMClmPy5maWxsVHlwZT09PWBzb2xpZGA/ZD1gIyR7Zi5jb2xvcn1gOnU9ZjtlbHNlIGlmKG4/LmxpbmVIaWRkZW49PT0hMCl1PW51bGw7ZWxzZSBpZihuPy5saW5lQ29sb3IpZD1gIyR7bi5saW5lQ29sb3J9YDtlbHNle2xldCBuPWFyKHQuY2hhcnRleFN0eWxlLG8pO2lmKG4hPT12b2lkIDApbj8uZmlsbFR5cGU9PT1gc29saWRgP2Q9YCMke24uY29sb3J9YDp1PW47ZWxzZSBpZih0LmxpbmVIaWRkZW49PT0hMCl1PW51bGw7ZWxzZSBpZih0LmxpbmVDb2xvcilkPWAjJHt0LmxpbmVDb2xvcn1gO2Vsc2V7bGV0IHQ9YXIoZS5jaGFydFN0eWxlUm9sZXM/LmRhdGFQb2ludDNELG8pO3QhPT12b2lkIDAmJih0Py5maWxsVHlwZT09PWBzb2xpZGA/ZD1gIyR7dC5jb2xvcn1gOnU9dCl9fWxldCBwPWUuY2hhcnRTdHlsZVJvbGVzPy5kYXRhUG9pbnQzRD8ubGluZU5vU3R5bGU9PT0hMD92b2lkIDA6ZS5jaGFydFN0eWxlUm9sZXM/LmRhdGFQb2ludDNELG09bj8uY2hhcnRleFN0eWxlPy5saW5lQ2FwPz90LmNoYXJ0ZXhTdHlsZT8ubGluZUNhcD8/cD8ubGluZUNhcCxoPW4/LmNoYXJ0ZXhTdHlsZT8ubGluZUpvaW4/P3QuY2hhcnRleFN0eWxlPy5saW5lSm9pbj8/cD8ubGluZUpvaW47cmV0dXJue2NvbG9yOmMsZmlsbDpzLGxpbmVDb2xvcjpkLGxpbmVGaWxsOnUsbGluZVdpZHRoRW11Om4/LmxpbmVXaWR0aEVtdT8/bj8uY2hhcnRleFN0eWxlPy5saW5lV2lkdGhFbXU/P3QubGluZVdpZHRoRW11Pz90LmNoYXJ0ZXhTdHlsZT8ubGluZVdpZHRoRW11Pz9wPy5saW5lV2lkdGhFbXUsbGluZURhc2g6bj8ubGluZURhc2g/P24/LmNoYXJ0ZXhTdHlsZT8ubGluZURhc2g/P3QuY2hhcnRleFN0eWxlPy5saW5lRGFzaD8/cD8ubGluZURhc2gsbGluZUN1c3RvbURhc2g6bj8uY2hhcnRleFN0eWxlPy5saW5lQ3VzdG9tRGFzaD8/dC5jaGFydGV4U3R5bGU/LmxpbmVDdXN0b21EYXNoPz9wPy5saW5lQ3VzdG9tRGFzaCxsaW5lQ2FwOm09PT1gcm5kYD9gcm91bmRgOm09PT1gc3FgP2BzcXVhcmVgOmBidXR0YCxsaW5lSm9pbjpoPT09YHJvdW5kYHx8aD09PWBiZXZlbGA/aDpgbWl0ZXJgfX1mdW5jdGlvbiBJYihlKXtpZighZSlyZXR1cm4hMTtsZXQgdD1lLmNoYXJ0ZXhTdHlsZTtyZXR1cm4gZS5saW5lSGlkZGVuIT1udWxsfHxlLmxpbmVDb2xvciE9bnVsbHx8ZS5saW5lV2lkdGhFbXUhPW51bGx8fGUubGluZURhc2ghPW51bGx8fHQ/LmxpbmVQYWludEF1dGhvcmVkPT09ITB8fHQ/LmxpbmVIaWRkZW4hPW51bGx8fHQ/LmxpbmVOb1N0eWxlPT09ITB8fHQ/LmxpbmVDb2xvcnM/LnNvbWUoZT0+ZSE9bnVsbCk9PT0hMHx8dD8ubGluZVBhaW50cz8uc29tZShlPT5lIT1udWxsKT09PSEwfHx0Py5saW5lV2lkdGhFbXUhPW51bGx8fHQ/LmxpbmVEYXNoIT1udWxsfHx0Py5saW5lQ3VzdG9tRGFzaCE9bnVsbHx8dD8ubGluZUNhcCE9bnVsbHx8dD8ubGluZUpvaW4hPW51bGx9ZnVuY3Rpb24gTGIoZSx0KXtsZXQgbj1lLmNhbWVyYU5vcm1hbCh0KTtpZighbilyZXR1cm4gMTtsZXQgcj17eDotLjIseTouMjUsejoxfSxpPU1hdGguaHlwb3Qoci54LHIueSxyLnopLGE9TWF0aC5tYXgoMCwobi54KnIueCtuLnkqci55K24ueipyLnopL2kpO3JldHVybiBNYXRoLm1heCguNzgsTWF0aC5taW4oMSwuNzgrLjI0KmEpKX1mdW5jdGlvbiBSYihlLHQpe2lmKHQubGVuZ3RoKXtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHRbMF0ueCx0WzBdLnkpO2ZvcihsZXQgbj0xO248dC5sZW5ndGg7bisrKWUubGluZVRvKHRbbl0ueCx0W25dLnkpO2UuY2xvc2VQYXRoKCl9fWZ1bmN0aW9uIHpiKGUsdCxuLHIpe014KG4pfHwoUmIoZSx0KSxlLmZpbGxTdHlsZT1uLGUuZmlsbCgpLHI+MCYmKFJiKGUsdCksZS5maWxsU3R5bGU9YHJnYmEoMCwwLDAsJHtyfSlgLGUuZmlsbCgpKSl9ZnVuY3Rpb24gQmIoZSx0LG4scixpLGEsbyxzLGMsbCx1LGQpe3JldHVybiBHeSh7eDA6dCx4MTpuLGxvd2VyMDpyLGxvd2VyMTppLHVwcGVyMDphLHVwcGVyMTpvLG5lYXJEZXB0aDpzLGZhckRlcHRoOmMsY2FwU3RhcnQ6dSxjYXBFbmQ6ZH0pLmZsYXRNYXAodD0+SGIoZSx0LGwpLm1hcChlPT4oey4uLmUsb3V0bGluZTohMSxvdXRsaW5lU2VnbWVudHM6dm9pZCAwfSkpKX1mdW5jdGlvbiBWYihlLHQsbixyLGksYSxvLHMsYyxsLHUsZCxmLHAsbT0hMSxoPSExLGcsXyl7aWYoIVtyLGksYSxvLHMsYyxsLHVdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSl8fGE8PTB8fG88PTB8fHM9PT1jKXJldHVybltdO2xldCB2PVV5KHtzaGFwZTp0LGhvcml6b250YWw6bixjcm9zc1N0YXJ0Om4/aTpyLGNyb3NzU2l6ZTpuP286YSxiYXNlQ29vcmQ6cyxlbmRDb29yZDpjLG5lYXJEZXB0aDpsLGZhckRlcHRoOnUsYmFzZVNjYWxlOmYsZW5kU2NhbGU6cCxvbWl0QmFzZUNhcDptLG9taXRFbmRDYXA6aH0pO3JldHVybiB2P0hiKGUsdixkLGcsXyk6W119ZnVuY3Rpb24gSGIoZSx0LG4scixpLGE9ITEpe2lmKGk/LmV4Y2VlZGVkKXJldHVybltdO2xldCBvPXQuZmFjZXMubWFwKHI9PntsZXQgaT1yLmluZGljZXMubWFwKGU9PnQudmVydGljZXNbZV0pLGE9ZS5jYW1lcmFGYWNpbmcoaSk7aWYoIWEpcmV0dXJue21lc2hGYWNlOnIsZmFjaW5nOmEsZmFjZTpudWxsfTtsZXQgbz1pLm1hcCh0PT5lLnByb2plY3QodC54LHQueSx0LmRlcHRoKSkscz1vLnJlZHVjZSgoZSx0LG4pPT57bGV0IHI9b1sobisxKSVvLmxlbmd0aF07cmV0dXJuIGUrdC54KnIueS10Lnkqci54fSwwKTtyZXR1cm4hTnVtYmVyLmlzRmluaXRlKHMpfHxNYXRoLmFicyhzKTwxZS03P3ttZXNoRmFjZTpyLGZhY2luZzphLGZhY2U6bnVsbH06e21lc2hGYWNlOnIsZmFjaW5nOmEsZmFjZTp7cG9pbnRzOm8sY29sb3I6dm8obixMYihlLGkpKSxwYWludFJvbGU6YGZpbGxgLHNoYWRlOjAsY2FtZXJhRGVwdGg6aS5yZWR1Y2UoKHQsbik9PnQrZS5jYW1lcmFEZXB0aChuLngsbi55LG4uZGVwdGgpLDApL2kubGVuZ3RoLGNhbWVyYURlcHRoczppLm1hcCh0PT5lLmNhbWVyYURlcHRoKHQueCx0LnksdC5kZXB0aCkpLGNhbWVyYVdlaWdodHM6aS5tYXAodD0+ZS5jYW1lcmFQcm9qZWN0aW9uV2VpZ2h0KHQueCx0LnksdC5kZXB0aCkpLG91dGxpbmU6ITF9fX0pLHM9YT9bXTpvLm1hcChlPT5lLmZhY2UpLmZpbHRlcihlPT5lIT1udWxsKTtpZihpKXtpZihzLmxlbmd0aD5pLnJlbWFpbmluZylyZXR1cm4gaS5leGNlZWRlZD0hMCxbXTtpLnJlbWFpbmluZy09cy5sZW5ndGh9bGV0IGM9bmV3IE1hcCxsPShlLHQpPT57aWYoZT09PXQpcmV0dXJuO2xldCBuPWU8dD9gJHtlfToke3R9YDpgJHt0fToke2V9YDtjLmhhcyhuKXx8Yy5zZXQobixbZSx0XSl9O2ZvcihsZXQgZSBvZiBvKXtpZighZS5mYWNpbmd8fCFlLmZhY2UpY29udGludWU7bGV0e2luZGljZXM6dCxzbW9vdGhTdXJmYWNlOm4scm9sZTpyfT1lLm1lc2hGYWNlO2lmKCEobiYmcj09PWBzaWRlYCkpZm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDtlKyspbCh0W2VdLHRbKGUrMSkldC5sZW5ndGhdKX1sZXQgdT1vLmZpbHRlcihlPT5lLm1lc2hGYWNlLnJvbGU9PT1gc2lkZWApLnNvcnQoKGUsdCk9PihlLm1lc2hGYWNlLnNlZ21lbnRJbmRleD8/MCktKHQubWVzaEZhY2Uuc2VnbWVudEluZGV4Pz8wKSk7aWYodC5zaWxob3VldHRlRWRnZXMubGVuZ3RoPT09dS5sZW5ndGgmJnUubGVuZ3RoPjApZm9yKGxldCBlPTA7ZTx1Lmxlbmd0aDtlKyspe2xldCBuPXVbKGUrdS5sZW5ndGgtMSkldS5sZW5ndGhdLHI9dVtlXTtpZihuLmZhY2luZz09PXIuZmFjaW5nfHwhKHIuZmFjaW5nP3IuZmFjZTpuLmZhY2UpKWNvbnRpbnVlO2xldFtpLGFdPXQuc2lsaG91ZXR0ZUVkZ2VzW2VdO2woaSxhKX1sZXQgZD1vLnNvbWUoZT0+ZS5tZXNoRmFjZS5yb2xlPT09YGJhc2VDYXBgJiZlLmZhY2luZyYmZS5mYWNlIT1udWxsKSxmPW8uc29tZShlPT5lLm1lc2hGYWNlLnJvbGU9PT1gZW5kQ2FwYCYmZS5mYWNpbmcmJmUuZmFjZSE9bnVsbCk7Zm9yKGxldCBlIG9mIHUpe2lmKCFlLmZhY2luZ3x8IWUuZmFjZSljb250aW51ZTtsZXQgdD1bZD92b2lkIDA6ZS5tZXNoRmFjZS5iYXNlUmltRWRnZSxmP3ZvaWQgMDplLm1lc2hGYWNlLmVuZFJpbUVkZ2VdLmZpbHRlcihlPT5lIT1udWxsKTtmb3IobGV0W2Usbl1vZiB0KWwoZSxuKX1sZXQgcD12YihbLi4uYy52YWx1ZXMoKV0ubWFwKChbZSxuXSk9Plt0LnZlcnRpY2VzW2VdLHQudmVydGljZXNbbl1dKSk7aWYoIXIpcmV0dXJuIHM7bGV0IG09KGUsdCk9Pk1hdGguaHlwb3QoZS54LXQueCxlLnktdC55LGUuZGVwdGgtdC5kZXB0aCk8PTFlLTksaD1lPT5wLmp1bmN0aW9ucy5zb21lKHQ9Pm0odC5wb2ludCxlKSk7Zm9yKGxldCB0IG9mIHAucGF0aHMpe2xldCBuPXQubWFwKHQ9PmUucHJvamVjdCh0LngsdC55LHQuZGVwdGgpKSxhPXQubWFwKHQ9PmUuY2FtZXJhRGVwdGgodC54LHQueSx0LmRlcHRoKSksbz10Lm1hcCh0PT5lLmNhbWVyYVByb2plY3Rpb25XZWlnaHQodC54LHQueSx0LmRlcHRoKSksYz1zYihuLm1hcCgoZSx0KT0+KHsuLi5lLGNhbWVyYURlcHRoOmFbdF0sY2FtZXJhV2VpZ2h0Om9bdF19KSkse3dpZHRoOnIud2lkdGgsZGFzaDpyLmRhc2gsbGluZUNhcDpyLmNhcCxzdGFydENhcDpoKHRbMF0pP2BidXR0YDpyLmNhcCxlbmRDYXA6aCh0LmF0KC0xKSk/YGJ1dHRgOnIuY2FwLG92ZXJsYXBTdGFydDpoKHRbMF0pLG92ZXJsYXBFbmQ6aCh0LmF0KC0xKSksbGluZUpvaW46ci5qb2lufSk7aWYoIWN8fGkmJmMubGVuZ3RoPmkucmVtYWluaW5nKXJldHVybiBpJiYoaS5leGNlZWRlZD0hMCksW107aSYmKGkucmVtYWluaW5nLT1jLmxlbmd0aCkscy5wdXNoKC4uLmMubWFwKGU9PntsZXQgdD0xZS02Kk1hdGgubWF4KDEsTWF0aC5hYnMoZS5jYW1lcmFEZXB0aCkpO3JldHVybntwb2ludHM6ZS5wb2ludHMsY29sb3I6ci5jb2xvcixwYWludFJvbGU6YG91dGxpbmVgLHNoYWRlOjAsY2FtZXJhRGVwdGg6ZS5jYW1lcmFEZXB0aCt0LGNhbWVyYURlcHRoczplLmNhbWVyYURlcHRocz8ubWFwKGU9PmUrdCksY2FtZXJhV2VpZ2h0czplLmNhbWVyYVdlaWdodHMsb3V0bGluZTohMX19KSl9Zm9yKGxldCB0IG9mIHAuanVuY3Rpb25zKXtsZXQgbj1vYih7Li4uZS5wcm9qZWN0KHQucG9pbnQueCx0LnBvaW50LnksdC5wb2ludC5kZXB0aCksY2FtZXJhRGVwdGg6ZS5jYW1lcmFEZXB0aCh0LnBvaW50LngsdC5wb2ludC55LHQucG9pbnQuZGVwdGgpLGNhbWVyYVdlaWdodDplLmNhbWVyYVByb2plY3Rpb25XZWlnaHQodC5wb2ludC54LHQucG9pbnQueSx0LnBvaW50LmRlcHRoKX0sdC5uZWlnaGJvdXJzLm1hcCh0PT4oey4uLmUucHJvamVjdCh0LngsdC55LHQuZGVwdGgpLGNhbWVyYURlcHRoOmUuY2FtZXJhRGVwdGgodC54LHQueSx0LmRlcHRoKSxjYW1lcmFXZWlnaHQ6ZS5jYW1lcmFQcm9qZWN0aW9uV2VpZ2h0KHQueCx0LnksdC5kZXB0aCl9KSkse3dpZHRoOnIud2lkdGgsbGluZUpvaW46ci5qb2lufSk7aWYoIW4pY29udGludWU7aWYoaSYmaS5yZW1haW5pbmc8MSlyZXR1cm4gaS5leGNlZWRlZD0hMCxbXTtpJiYtLWkucmVtYWluaW5nO2xldCBhPTFlLTYqTWF0aC5tYXgoMSxNYXRoLmFicyhuLmNhbWVyYURlcHRoKSk7cy5wdXNoKHtwb2ludHM6bi5wb2ludHMsY29sb3I6ci5jb2xvcixwYWludFJvbGU6YG91dGxpbmVgLHNoYWRlOjAsY2FtZXJhRGVwdGg6bi5jYW1lcmFEZXB0aCthLGNhbWVyYURlcHRoczpuLmNhbWVyYURlcHRocz8ubWFwKGU9PmUrYSksY2FtZXJhV2VpZ2h0czpuLmNhbWVyYVdlaWdodHMsb3V0bGluZTohMX0pfXJldHVybiBzfWZ1bmN0aW9uIFViKGUsdCxuLHIsaSxhLG8pe2lmKCF0Lmxlbmd0aHx8by5leGNlZWRlZClyZXR1cm5bXTtsZXQgcz1bLi4udF0uc29ydCgoZSx0KT0+ZS5zdGFydC10LnN0YXJ0KSxjPW4taS8yLGw9bitpLzIsdT1zWzBdLGQ9ZS5jYW1lcmFEZXB0aCh1LmNlbnRlclgsYyx1LmNlbnRlckRlcHRoKT49ZS5jYW1lcmFEZXB0aCh1LmNlbnRlclgsbCx1LmNlbnRlckRlcHRoKT9jOmwsZj1kPT09Yz9sOmMscD0odCxuLGkpPT4oe3g6dC5jZW50ZXJYK01hdGguY29zKG4pKnIseTppLGRlcHRoOnQuY2VudGVyRGVwdGgrTWF0aC5zaW4obikqci9lLm1vZGVsRGVwdGh9KSxtPWU9Pih7eDplLmNlbnRlclgseTpkLGRlcHRoOmUuY2VudGVyRGVwdGh9KSxoPVtdLGc9KHQsbj0hMSk9PntpZih0Lmxlbmd0aDwyfHxvLmV4Y2VlZGVkKXJldHVybjtsZXQgcj10WzBdLGk9dC5hdCgtMSkscz1NYXRoLmh5cG90KHIueC1pLngsci55LWkueSxyLmRlcHRoLWkuZGVwdGgpPD0xZS05LGM9c2IoKG4mJiFzP1suLi50LHJdOlsuLi50XSkubWFwKHQ9Pih7Li4uZS5wcm9qZWN0KHQueCx0LnksdC5kZXB0aCksY2FtZXJhRGVwdGg6ZS5jYW1lcmFEZXB0aCh0LngsdC55LHQuZGVwdGgpLGNhbWVyYVdlaWdodDplLmNhbWVyYVByb2plY3Rpb25XZWlnaHQodC54LHQueSx0LmRlcHRoKX0pKSx7d2lkdGg6YS53aWR0aCxkYXNoOmEuZGFzaCxsaW5lQ2FwOmEuY2FwLHN0YXJ0Q2FwOmBidXR0YCxlbmRDYXA6YGJ1dHRgLGxpbmVKb2luOmEuam9pbn0pO2lmKCFjfHxjLmxlbmd0aD5vLnJlbWFpbmluZyl7by5leGNlZWRlZD0hMDtyZXR1cm59by5yZW1haW5pbmctPWMubGVuZ3RoO2ZvcihsZXQgZSBvZiBjKXtsZXQgdD0xZS02Kk1hdGgubWF4KDEsTWF0aC5hYnMoZS5jYW1lcmFEZXB0aCkpO2gucHVzaCh7cG9pbnRzOmUucG9pbnRzLGNvbG9yOmEuY29sb3IscGFpbnRSb2xlOmBvdXRsaW5lYCxzaGFkZTowLGNhbWVyYURlcHRoOmUuY2FtZXJhRGVwdGgrdCxjYW1lcmFEZXB0aHM6ZS5jYW1lcmFEZXB0aHM/Lm1hcChlPT5lK3QpLGNhbWVyYVdlaWdodHM6ZS5jYW1lcmFXZWlnaHRzLG91dGxpbmU6ITF9KX19LF89W10sdj1bXSx5PVtdLGI9bmV3IFNldCx4PWU9PntsZXQgdD1NYXRoLlBJKjIsbj0oZSV0K3QpJXQ7cmV0dXJuKG48MWUtOHx8dC1uPDFlLTg/MDpuKS50b0ZpeGVkKDgpfSxTPW5ldyBNYXA7Zm9yKGxldCB0IG9mIHMpe1Muc2V0KHgodC5zdGFydCkse3NsaWNlOnQsYW5nbGU6dC5zdGFydH0pLFMuc2V0KHgodC5lbmQpLHtzbGljZTp0LGFuZ2xlOnQuZW5kfSk7Zm9yKGxldCBuPTA7bjw9dC5zZWdtZW50cztuKyspe2xldCByPXQuc3RhcnQrKHQuZW5kLXQuc3RhcnQpKm4vdC5zZWdtZW50cyxpPXAodCxyLGQpO2lmKCghXy5sZW5ndGh8fE1hdGguaHlwb3QoXy5hdCgtMSkueC1pLngsXy5hdCgtMSkueS1pLnksXy5hdCgtMSkuZGVwdGgtaS5kZXB0aCk+MWUtOSkmJl8ucHVzaChpKSxuPT09dC5zZWdtZW50cyljb250aW51ZTtsZXQgYT10LnN0YXJ0Kyh0LmVuZC10LnN0YXJ0KSoobisxKS90LnNlZ21lbnRzLG89cCh0LHIsYykscz1wKHQscixsKSx1PXAodCxhLGwpLG09cCh0LGEsYyk7aWYoZS5jYW1lcmFGYWNpbmcoW28scyx1LG1dKSl7bGV0IGU9cCh0LHIsZiksbj1wKHQsYSxmKTt5Lmxlbmd0aHx8eS5wdXNoKGUpLHkucHVzaChuKSxiLmFkZCh4KHIpKSxiLmFkZCh4KGEpKX1lbHNlIHkubGVuZ3RoJiYodi5wdXNoKHkpLHk9W10pfX1pZih5Lmxlbmd0aCYmdi5wdXNoKHkpLHYubGVuZ3RoPjEpe2xldCBlPXZbMF0sdD12LmF0KC0xKSxuPWVbMF0scj10LmF0KC0xKTtNYXRoLmh5cG90KG4ueC1yLngsbi55LXIueSxuLmRlcHRoLXIuZGVwdGgpPD0xZS05JiYodlswXT1bLi4udCwuLi5lLnNsaWNlKDEpXSx2LnBvcCgpKX1nKF8sITApO2xldCBDPW5ldyBNYXA7Zm9yKGxldHtzbGljZTplLGFuZ2xlOnR9b2YgUy52YWx1ZXMoKSlnKFttKGUpLHAoZSx0LGQpXSksYi5oYXMoeCh0KSkmJkMuc2V0KHgodCkse3NsaWNlOmUsYW5nbGU6dH0pO2ZvcihsZXQgdCBvZiB2KXtnKHQpO2ZvcihsZXQgbiBvZlt0WzBdLHQuYXQoLTEpXSl7bGV0IHQ9TWF0aC5hdGFuMigobi5kZXB0aC11LmNlbnRlckRlcHRoKSplLm1vZGVsRGVwdGgsbi54LXUuY2VudGVyWCk7Qy5zZXQoeCh0KSx7c2xpY2U6dSxhbmdsZTp0fSl9fWZvcihsZXR7c2xpY2U6ZSxhbmdsZTp0fW9mIEMudmFsdWVzKCkpZyhbcChlLHQsZCkscChlLHQsZildKTtyZXR1cm4gaH1mdW5jdGlvbiBXYihlLHQpe3QucGFpbnQhPT1udWxsJiYodC5wYWludD09PXZvaWQgMD96YihlLHQucG9pbnRzLHQuY29sb3IsdC5zaGFkZSk6KFJiKGUsdC5wb2ludHMpLGUuZmlsbFN0eWxlPXQucGFpbnQsZS5maWxsKCkpLHQub3V0bGluZSYmKGUuc3Ryb2tlU3R5bGU9dC5vdXRsaW5lQ29sb3I/P2ByZ2JhKDAsMCwwLDAuNDIpYCxlLmxpbmVXaWR0aD10Lm91dGxpbmVXaWR0aD8/Ljc1LGUuc2V0TGluZURhc2goWHIodC5vdXRsaW5lRGFzaD8/YHNvbGlkYCxlLmxpbmVXaWR0aCkpLGUubGluZUNhcD10Lm91dGxpbmVDYXA/P2BidXR0YCxlLmxpbmVKb2luPXQub3V0bGluZUpvaW4/P2BtaXRlcmAsdC5vdXRsaW5lJiYoUmIoZSx0LnBvaW50cyksZS5zdHJva2UoKSksZS5zZXRMaW5lRGFzaChbXSkpKX1mdW5jdGlvbiBHYihlLHQsbixyLGkpe2lmKHI9PT12b2lkIDApcmV0dXJuO2xldCBhPXQuZmlsdGVyKGU9PmUucGFpbnRSb2xlPT09bik7aWYoIWEubGVuZ3RoKXJldHVybjtpZihyPT09bnVsbCl7Zm9yKGxldCBlIG9mIGEpZS5wYWludD1udWxsO3JldHVybn1sZXQgbz1hLmZsYXRNYXAoZT0+ZS5wb2ludHMpLHM9TWF0aC5taW4oLi4uby5tYXAoZT0+ZS54KSksYz1NYXRoLm1heCguLi5vLm1hcChlPT5lLngpKSxsPU1hdGgubWluKC4uLm8ubWFwKGU9PmUueSkpLHU9TWF0aC5tYXgoLi4uby5tYXAoZT0+ZS55KSksZD1haShyLGUscyxsLGMtcyx1LWwsaSk7Zm9yKGxldCBlIG9mIGEpZS5wYWludD1kfWZ1bmN0aW9uIEtiKGUsdCl7ZS5maWxsU3R5bGU9YCM4ODhgLGUuZm9udD1gMTJweCBzYW5zLXNlcmlmYCxlLnRleHRBbGlnbj1gY2VudGVyYCxlLnRleHRCYXNlbGluZT1gbWlkZGxlYCxlLmZpbGxUZXh0KGAodG9vIG1hbnkgZGF0YSBwb2ludHMpYCx0LngrdC53LzIsdC55K3QuaC8yKX1mdW5jdGlvbiBxYihlKXtsZXQgdD1lLmNhdEF4aXNMYWJlbFJvdGF0aW9uO3JldHVybiB0PT1udWxsP251bGw6IU51bWJlci5pc0Zpbml0ZSh0KXx8TWF0aC5hYnModCk+NTRlNT8wOnQvNmU0Kk1hdGguUEkvMTgwfWZ1bmN0aW9uIEpiKGUsdCxuLHIsaSxhPTEsbz02KXtpZihpfHxyPT09MCl7ZS50ZXh0QWxpZ249aT9gcmlnaHRgOmBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWk/YG1pZGRsZWA6YTwwP2Bib3R0b21gOmB0b3BgLGUuZmlsbFRleHQodCxuLngrKGk/LW86MCksbi55KyhpPzA6YSpvKSk7cmV0dXJufWUuc2F2ZSgpLGUudHJhbnNsYXRlKG4ueCxuLnkrYSpvKSxlLnJvdGF0ZShyKSxlLnRleHRBbGlnbj1hPDA/YGxlZnRgOmByaWdodGAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWAsZS5maWxsVGV4dCh0LDAsMCksZS5yZXN0b3JlKCl9ZnVuY3Rpb24gWWIoZSx0LG4scixpLGEsbyxzPXZvaWQgMCxjPTAsbD11dCl7aWYoIShyPjApfHwhTnVtYmVyLmlzRmluaXRlKHQueCl8fCFOdW1iZXIuaXNGaW5pdGUodC55KSlyZXR1cm47bGV0IHU9ci8yO3N3aXRjaChlLmJlZ2luUGF0aCgpLG4pe2Nhc2Vgc3F1YXJlYDplLnJlY3QodC54LXUsdC55LXUscixyKTticmVhaztjYXNlYGRpYW1vbmRgOmUubW92ZVRvKHQueCx0LnktdSksZS5saW5lVG8odC54K3UsdC55KSxlLmxpbmVUbyh0LngsdC55K3UpLGUubGluZVRvKHQueC11LHQueSksZS5jbG9zZVBhdGgoKTticmVhaztjYXNlYHRyaWFuZ2xlYDplLm1vdmVUbyh0LngsdC55LXUpLGUubGluZVRvKHQueCt1LHQueSt1KSxlLmxpbmVUbyh0LngtdSx0LnkrdSksZS5jbG9zZVBhdGgoKTticmVhaztjYXNlYHhgOmNhc2VgcGx1c2A6e2xldCByPW49PT1geGA7ZS5tb3ZlVG8odC54LXUsdC55KyhyPy11OjApKSxlLmxpbmVUbyh0LngrdSx0LnkrKHI/dTowKSksZS5tb3ZlVG8odC54KyhyPy11OjApLHQueSt1KSxlLmxpbmVUbyh0LngrKHI/dTowKSx0LnktdSksZS5zdHJva2VTdHlsZT1hLGUubGluZVdpZHRoPW8sZS5zdHJva2UoKTtyZXR1cm59Y2FzZWBkYXNoYDplLnJlY3QodC54LXUsdC55LXIqLjEscixyKi4yKTticmVhaztjYXNlYHN0YXJgOmZvcihsZXQgbj0wO248MTA7bisrKXtsZXQgcj0tTWF0aC5QSS8yK24qTWF0aC5QSS81LGk9biUyPT0wP3U6dSouNCxhPXQueCtNYXRoLmNvcyhyKSppLG89dC55K01hdGguc2luKHIpKmk7bj9lLmxpbmVUbyhhLG8pOmUubW92ZVRvKGEsbyl9ZS5jbG9zZVBhdGgoKTticmVhaztjYXNlYGRvdGA6ZS5lbGxpcHNlKHQueCx0LnksciouMjUsciouMSwwLDAsTWF0aC5QSSoyKTticmVhaztjYXNlYHBpY3R1cmVgOnM/LmZpbGxUeXBlPT09YGltYWdlYCYmUHIoZSxzLHQueC11LHQueS11LHIscixsLGMpLGUuc3Ryb2tlU3R5bGU9YSxlLmxpbmVXaWR0aD1vLGUuc3Ryb2tlUmVjdCh0LngtdSx0LnktdSxyLHIpO3JldHVybjtkZWZhdWx0OmUuYXJjKHQueCx0LnksdSwwLE1hdGguUEkqMik7YnJlYWt9bGV0IGQ9cz8uZmlsbFR5cGU9PT1gaW1hZ2VgP3M6dm9pZCAwLGY9ZD9udWxsOnM9PT12b2lkIDA/aT09PWB0cmFuc3BhcmVudGA/bnVsbDppOnM9PW51bGw/bnVsbDphaShzLGUsdC54LXUsdC55LXUscixyLGMpO2Y9PW51bGw/ZCYmKGUuc2F2ZSgpLGUuY2xpcCgpLFByKGUsZCx0LngtdSx0LnktdSxyLHIsbCxjKSxlLnJlc3RvcmUoKSk6KGUuZmlsbFN0eWxlPWYsZS5maWxsKCkpLGUuc3Ryb2tlU3R5bGU9YSxlLmxpbmVXaWR0aD1vLGUuc3Ryb2tlKCl9ZnVuY3Rpb24gWGIoZSx0LG4scixpLGEsbyxzLGMsbD0wLHUsZCxmPWB0YCxwPW8sbT0hMCxoLGcsXz1hLHY9MCl7bGV0IHk9ZCxiPW4uc2VyaWVzRGF0YUxhYmVscztpZih1bihiLHkpfHx0LnNob3dEYXRhTGFiZWxzT3Zlck1heCE9PSEwJiZnIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUoZykmJl8+ZylyZXR1cm47bGV0IHg9eT8uc2hvd1ZhbD8/Yj8uc2hvd1ZhbD8/dC5zaG93RGF0YUxhYmVscyxTPXk/LnNob3dDYXROYW1lPz9iPy5zaG93Q2F0TmFtZT8/ITEsQz15Py5zaG93U2VyTmFtZT8/Yj8uc2hvd1Nlck5hbWU/PyExLHc9eT8uc2hvd1BlcmNlbnQ/P2I/LnNob3dQZXJjZW50Pz8hMSxUPXk/LnRleHQsRT1xYSh7Y3VzdG9tVGV4dDpULHNob3dDYXRlZ29yeTpTLHNob3dTZXJpZXM6QyxzaG93VmFsdWU6eCxzaG93UGVyY2VudDp3LGNhdGVnb3J5Om4uY2F0ZWdvcmllcz8uW2ldPz90LmNhdGVnb3JpZXNbaV0/P2Ake2krMX1gLHNlcmllc05hbWU6bi5uYW1lfHxgU2VyaWVzICR7cisxfWAsc291cmNlVmFsdWU6YSx2YWx1ZURpdmlzb3I6aD8uZGl2aXNvcixwZXJjZW50UmF0aW86dSE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKHUpP3U6dm9pZCAwLGZvcm1hdENvZGU6eT8uZm9ybWF0Q29kZT8/Yj8uZm9ybWF0Q29kZT8/dC5kYXRhTGFiZWxGb3JtYXRDb2RlPz9uLnZhbEZvcm1hdENvZGUscGVyY2VudEZvcm1hdENvZGU6eT8uZm9ybWF0Q29kZT8/Yj8uZm9ybWF0Q29kZT8/dC5kYXRhTGFiZWxGb3JtYXRDb2RlPz9gMCVgLGRhdGUxOTA0OnQuZGF0ZTE5MDQsc2VwYXJhdG9yOnk/LnNlcGFyYXRvcj8/Yj8uc2VwYXJhdG9yfSk7aWYoIUUpcmV0dXJuO2xldCBEPUF0KHk/LmZvbnRTaXplSHB0Pz9iPy5mb250U2l6ZUhwdD8/dC5kYXRhTGFiZWxGb250U2l6ZUhwdCxjKT8/OSpjLE89eT8uZm9udEJvbGQ/P2I/LmZvbnRCb2xkPz90LmRhdGFMYWJlbEZvbnRCb2xkPz8hMSxrPWRuKHksYiksQT1qeCh0LHk/LmZvbnRGYWNlPz9iPy5mb250RmFjZT8/dC5kYXRhTGFiZWxGb250RmFjZSk7ZS5mb250PWAke2suZm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHtPP2Bib2xkIGA6YGB9JHtEfXB4ICR7QX1gO2xldCBqPWAjJHt5Py5mb250Q29sb3I/P2I/LmZvbnRDb2xvcj8/bi5sYWJlbENvbG9yPz90LmRhdGFMYWJlbEZvbnRDb2xvcj8/YDExMTExMWB9YCxNPVQmJnk/LnJpY2hSdW5zPy5sZW5ndGg/VmEoZSx7cnVuczp5LnJpY2hSdW5zLHB0VG9QeDpjLGZvbnRGYW1pbHk6QSxmYWxsYmFja0JvbGQ6TyxmYWxsYmFja0l0YWxpYzprLmZvbnRJdGFsaWMsZmFsbGJhY2tCYXNlbGluZTprLmZvbnRCYXNlbGluZSxmYWxsYmFja0NvbG9ySGlkZGVuOmsuZm9udFBhaW50QXV0aG9yZWQ9PT0hMCYmKGsuZm9udEhpZGRlbj09PSEwfHxrLmZvbnRDb2xvcj09bnVsbCksZm9udEZhbWlseUZvckZhY2U6ZT0+angodCxlKX0sRCxqKTpudWxsLE49TT9bXTpfbihFLE1hdGgubWF4KEQscy53Ki40NSksTWF0aC5tYXgoRCoxLjIscy5oKi4zNSksRCoxLjIsdD0+ZS5tZWFzdXJlVGV4dCh0KS53aWR0aCxrKTtpZighTSYmIU4ubGVuZ3RoKXJldHVybjtsZXQgUD1NPy53aWR0aD8/TWF0aC5tYXgoLi4uTi5tYXAodD0+ZS5tZWFzdXJlVGV4dCh0KS53aWR0aCkpLEY9TT8uaGVpZ2h0Pz9OLmxlbmd0aCpEKjEuMixJPXBuKGssYyksTD1obihQK0kubGVmdCtJLnJpZ2h0LEYrSS50b3ArSS5ib3R0b20say50ZXh0Um90YXRpb24say50ZXh0VmVydGljYWxNb2RlKSxSPXRuKHtraW5kOmBwb2ludGAseDpvLngseTpvLnkscG9zaXRpb246eT8ucG9zaXRpb24/P2I/LnBvc2l0aW9uPz90LmRhdGFMYWJlbFBvc2l0aW9uPz9mLG1hcmtlckdhcDpsfSxzLHt3OkwudyxoOkwuaH0sRCx5Py5tYW51YWxMYXlvdXQscyk7aWYoIVIpcmV0dXJuO2xldCB6PU5pKHk/LmxhYmVsQm94LGI/LmxhYmVsQm94KTtiPy5zaG93TGVhZGVyTGluZXMmJmIubGVhZGVyTGluZUhpZGRlbiE9PSEwJiZtJiYoZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhwLngscC55KSxlLmxpbmVUbyhNYXRoLm1heChSLnJlY3QueCxNYXRoLm1pbihwLngsUi5yZWN0LngrUi5yZWN0LncpKSxNYXRoLm1heChSLnJlY3QueSxNYXRoLm1pbihwLnksUi5yZWN0LnkrUi5yZWN0LmgpKSksZS5zdHJva2VTdHlsZT1gIyR7Yi5sZWFkZXJMaW5lQ29sb3I/P2A4MDgwODBgfWAsZS5saW5lV2lkdGg9Yi5sZWFkZXJMaW5lV2lkdGhFbXU9PW51bGw/Ljc1KmM6TWF0aC5tYXgoLjI1LGIubGVhZGVyTGluZVdpZHRoRW11L2N0KmMpLGUuc2V0TGluZURhc2goWHIoYi5sZWFkZXJMaW5lRGFzaD8/YHNvbGlkYCxlLmxpbmVXaWR0aCkpLGUuc3Ryb2tlKCkpLFBpKGUseixSLnJlY3QsYyx2KSxlLnNhdmUoKSxlLmJlZ2luUGF0aCgpLGUucmVjdChSLmNsaXAueCxSLmNsaXAueSxSLmNsaXAudyxSLmNsaXAuaCksZS5jbGlwKCk7bGV0IEI9Zm4oayxSLnRleHRBbGlnbiksZWU9dm4oUi54LFIueSxSLnJlY3QsRitJLnRvcCtJLmJvdHRvbSxrLHk/Lm1hbnVhbExheW91dCE9bnVsbCxCLFIudGV4dEFsaWduLFArSS5sZWZ0K0kucmlnaHQsTC5yYWRpYW5zKSxWPWduKGUsZWUueCxlZS55LEwucmFkaWFucyxCLFIudGV4dEJhc2VsaW5lLEkpO2lmKE0pe0hhKGUsTSxWLngsVi55LEIsUi50ZXh0QmFzZWxpbmUseT8ubWFudWFsTGF5b3V0P01hdGgubWF4KDAsUi5yZWN0LnctSS5sZWZ0LUkucmlnaHQpOk0ud2lkdGgpLGUucmVzdG9yZSgpO3JldHVybn1pZighKGsuZm9udFBhaW50QXV0aG9yZWQ9PT0hMCYmKGsuZm9udEhpZGRlbj09PSEwfHxrLmZvbnRDb2xvcj09bnVsbCkpKXtlLmZpbGxTdHlsZT1qLGUudGV4dEFsaWduPUIsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7bGV0IHQ9RCoxLjIsbj0oay5mb250QmFzZWxpbmU/PzApKkQscj1WLnktKE4ubGVuZ3RoLTEpKnQvMi1uO04uZm9yRWFjaCgobixpKT0+ZS5maWxsVGV4dChuLFYueCxyK2kqdCkpfWUucmVzdG9yZSgpfWZ1bmN0aW9uIFpiKGUsdCxuKXtsZXQgcj10LnNlcmllc0RhdGFMYWJlbHM7cmV0dXJuIHVuKHIsbik/ITE6bj8udGV4dD8hMDoobj8uc2hvd1ZhbD8/cj8uc2hvd1ZhbD8/ZS5zaG93RGF0YUxhYmVscyl8fChuPy5zaG93Q2F0TmFtZT8/cj8uc2hvd0NhdE5hbWU/PyExKXx8KG4/LnNob3dTZXJOYW1lPz9yPy5zaG93U2VyTmFtZT8/ITEpfHwobj8uc2hvd1BlcmNlbnQ/P3I/LnNob3dQZXJjZW50Pz8hMSl9ZnVuY3Rpb24gUWIoZSx0LG4scixpLGEpe2xldCBvPUJ0KHQsbi5oLHIpO2lmKHQudGl0bGUpe2UuZm9udD1gJHt0LnRpdGxlRm9udEJvbGQ9PT0hMT9gYDpgYm9sZCBgfSR7by5mb250UHh9cHggJHtBeCh0LnRpdGxlRm9udEZhY2UpfWAsZS5maWxsU3R5bGU9dC50aXRsZUZvbnRDb2xvcj9gIyR7dC50aXRsZUZvbnRDb2xvcn1gOmAjMTExMTExYCxlLnRleHRBbGlnbj1gY2VudGVyYCxlLnRleHRCYXNlbGluZT1gdG9wYDtsZXQgcj1lLm1lYXN1cmVUZXh0KHQudGl0bGUpLndpZHRoLGk9e3g6bi54KyhuLnctcikvMix5Om4ueStvLnRvcFBhZCx3OnIsaDpNYXRoLm1heCgxLG8uZm9udFB4KX0sYT10LnRpdGxlTWFudWFsTGF5b3V0P0d0KHsuLi50LnRpdGxlTWFudWFsTGF5b3V0LHc6dm9pZCAwLGg6dm9pZCAwfSxuLGkpOm51bGw7ZS5maWxsVGV4dCh0LnRpdGxlLGE/YS54K2Eudy8yOm4ueCtuLncvMixhPy55Pz9pLnkpfWxldCBzPVRiKHQpO2Uuc2F2ZSgpO2xldCBjPSh0LmNoYXJ0VHlwZT09PWBwaWVgP3Quc2VyaWVzWzBdPy5jYXRlZ29yaWVzPy5sZW5ndGg/dC5zZXJpZXNbMF0uY2F0ZWdvcmllczp0LmNhdGVnb3JpZXM6dC5zZXJpZXMubWFwKChlLHQpPT5lLm5hbWV8fGBTZXJpZXMgJHt0KzF9YCkpLmZsYXRNYXAoKGUsdCk9PnMuZ2V0KHQpPy5kZWxldGVkPT09ITA/W106W3tsYWJlbDplLGluZGV4OnR9XSksbD1jLm1hcChlPT5FYih0LHMuZ2V0KGUuaW5kZXgpLHIpKSx1PU1hdGgubWF4KDAsLi4ubC5tYXAoZT0+ZS5mb250UHgpKSxkPWMubWFwKCh0LG4pPT4oZS5mb250PWxbbl0uZm9udCw3KnIrNCtlLm1lYXN1cmVUZXh0KHQubGFiZWwpLndpZHRoKSksZj1OdCh0LG4udyxuLmgsLjIzLHtpdGVtV2lkdGhzOmQscm93SGVpZ2h0Ok1hdGgubWF4KHUqMS40NSwxMiksaXRlbUdhcDoxMixob3Jpem9udGFsUGFkZGluZzo4LHZlcnRpY2FsUGFkZGluZzo0fSk7ZS5yZXN0b3JlKCk7bGV0IHA9UHQoZix0LmxlZ2VuZE92ZXJsYXk9PT0hMCksbT16dCh0LG4udyxuLmgsciksaD1JdCh0LmNhdEF4aXNUaXRsZVRleHRWZXJ0aWNhbEluc2V0RW11LHIpLGc9SXQodC52YWxBeGlzVGl0bGVUZXh0VmVydGljYWxJbnNldEVtdSxyKSxfPWk9PT1gaG9yaXpvbnRhbGA/dC5jYXRBeGlzVGl0bGU/bS5jYXRGb250UHgraCtSdChuLncpKzQ6MDppPT09YHZlcnRpY2FsYD9tLnZhbEJhbmRXOjAsdj1pPT09YGhvcml6b250YWxgP3QudmFsQXhpc1RpdGxlP20udmFsRm9udFB4K2crUnQobi5oKSs0OjA6aT09PWB2ZXJ0aWNhbGA/bS5jYXRCYW5kSDowLHk9S3QodCxuLngsbi55LG4udyxuLmgscix7dGl0bGVCYW5kOm8sbGVnZW5kU2lkZVJlc2VydmVGcmFjOi4yMyxsZWdlbmRSZXNlcnZlOmYscGFkOnt0Om8uYmFuZEgrcC5sZWdUb3BIK24uaCouMDQscjpwLmxlZ1JpZ2h0VytuLncqLjA1LGI6cC5sZWdCb3R0b21IK24uaCouMTkrdixsOnAubGVnTGVmdFcrbi53Ki4xMytffSxob25vclBsb3RBcmVhTWFudWFsTGF5b3V0OiEwLG1hbnVhbE91dGVySW5zZXRzOnt0Om8uYmFuZEgscjpwLmxlZ1JpZ2h0VyxiOnAubGVnQm90dG9tSCt2LGw6cC5sZWdMZWZ0VytffX0pLGI9e3g6eS5wbG90UmVjdC5weDAseTp5LnBsb3RSZWN0LnB5MCx3Ok1hdGgubWF4KDEseS5wbG90UmVjdC5wdyksaDpNYXRoLm1heCgxLHkucGxvdFJlY3QucGgpfTskYShlLHQsYi54LGIueSxiLncsYi5oLHIsYSk7bGV0IHg9Zj9mLnNpZGU9PT1gcmA/e3g6bi54K24udy1mLnJlc2VydmVXLHk6Yi55LHc6Zi5yZXNlcnZlVyxoOmIuaH06Zi5zaWRlPT09YGxgP3t4Om4ueCx5OmIueSx3OmYucmVzZXJ2ZVcsaDpiLmh9OmYuc2lkZT09PWB0YD97eDpuLngrNCx5Om4ueStvLmJhbmRILHc6TWF0aC5tYXgoMSxuLnctOCksaDpmLnJlc2VydmVIfTp7eDpuLngrNCx5Om4ueStuLmgtZi5yZXNlcnZlSCx3Ok1hdGgubWF4KDEsbi53LTgpLGg6Zi5yZXNlcnZlSH06bnVsbDtyZXR1cm57cGxvdDpiLGxlZ2VuZDooeCYmdC5sZWdlbmRNYW51YWxMYXlvdXQ/R3QodC5sZWdlbmRNYW51YWxMYXlvdXQsbix4KTpudWxsKT8/eCxsZWdlbmRNZWFzdXJlOntsYWJlbHM6Yy5tYXAoZT0+ZS5sYWJlbCksc3R5bGVzOmwsaXRlbVdpZHRoczpkfX19ZnVuY3Rpb24gJGIoZSx0LG4scixpLGEsbyxzLGMsbCx1LGQsZixwKXtlLnNhdmUoKSxlLmZvbnQ9YCR7bD9gaXRhbGljIGA6YGB9JHtjP2Bib2xkIGA6YGB9JHthfXB4ICR7b31gLGUuZmlsbFN0eWxlPXM/YCMke3N9YDpgIzU1NWA7bGV0IG09Zj90OmthKGUsdCxwKSxoPUx0KGksdSxkKSxnPXI7aWYoZil7bGV0IHQ9ZS5tZWFzdXJlVGV4dChtKS53aWR0aCxpPU1hdGguYWJzKE1hdGguY29zKGgpKSxvPU1hdGguYWJzKE1hdGguc2luKGgpKSxzPXt4OnIueC0odCppK2EqbykvMix5OnIueS0odCpvK2EqaSkvMix3OnQqaSthKm8saDp0Km8rYSppfSxjPUd0KHsuLi5mLHc6dm9pZCAwLGg6dm9pZCAwfSxuLHMpO2MmJihnPXt4OmMueCtjLncvMix5OmMueStjLmgvMn0pfWUudHJhbnNsYXRlKGcueCxnLnkpLGgmJmUucm90YXRlKGgpLGUudGV4dEFsaWduPWBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgLGUuZmlsbFRleHQobSwwLDApLGUucmVzdG9yZSgpfWZ1bmN0aW9uIGV4KGUsdCxuLHIsaSxhKXtpZih0LnZhbEF4aXNUaXRsZSl7bGV0IG89RnQodC52YWxBeGlzVGl0bGVGb250U2l6ZUhwdCxhKSxzPWk/YGhvcml6b250YWxgOmBsZWZ0YDskYihlLHQudmFsQXhpc1RpdGxlLG4saT97eDpyLngrci53LzIseTpyLnkrci5oK1J0KG4uaCkrby8yfTp7eDpyLngtUnQobi53KS1vLzIseTpyLnkrci5oLzJ9LHMsbyxqeCh0LHQudmFsQXhpc1RpdGxlRm9udEZhY2UsYG1ham9yYCksdC52YWxBeGlzVGl0bGVGb250Q29sb3IsdC52YWxBeGlzVGl0bGVGb250Qm9sZD8/ITAsdC52YWxBeGlzVGl0bGVGb250SXRhbGljPz8hMSx0LnZhbEF4aXNUaXRsZVJvdGF0aW9uLHQudmFsQXhpc1RpdGxlVmVydGljYWxNb2RlLHQudmFsQXhpc1RpdGxlTWFudWFsTGF5b3V0LGk/ci53OnIuaCl9aWYodC5jYXRBeGlzVGl0bGUpe2xldCBvPUZ0KHQuY2F0QXhpc1RpdGxlRm9udFNpemVIcHQsYSkscz1pP2BsZWZ0YDpgaG9yaXpvbnRhbGA7JGIoZSx0LmNhdEF4aXNUaXRsZSxuLGk/e3g6ci54LVJ0KG4udyktby8yLHk6ci55K3IuaC8yfTp7eDpyLngrci53LzIseTpyLnkrci5oK1J0KG4uaCkrby8yfSxzLG8sangodCx0LmNhdEF4aXNUaXRsZUZvbnRGYWNlLGBtYWpvcmApLHQuY2F0QXhpc1RpdGxlRm9udENvbG9yLHQuY2F0QXhpc1RpdGxlRm9udEJvbGQ/PyEwLHQuY2F0QXhpc1RpdGxlRm9udEl0YWxpYz8/ITEsdC5jYXRBeGlzVGl0bGVSb3RhdGlvbix0LmNhdEF4aXNUaXRsZVZlcnRpY2FsTW9kZSx0LmNhdEF4aXNUaXRsZU1hbnVhbExheW91dCxpP3IuaDpyLncpfX1mdW5jdGlvbiB0eChlLHQsbixyLGksYSxvLHMsYyxsLHUpe2xldCBkPXQudGhyZWVEPy5zZXJpZXNBeGlzO2lmKCFkfHxkLmhpZGRlbnx8dC50aHJlZUQ/LmJhckdyb3VwaW5nIT09YHN0YW5kYXJkYHx8dC5zZXJpZXMubGVuZ3RoPT09MClyZXR1cm47bGV0IGY9dngodCxyLGksYSxvLHMsYykscD1veChyKSxtPWM9PT1gdmVydGljYWxgP3Auc2VyaWVzQXhpc1g6Zi5heGlzWCxoPWM9PT1gaG9yaXpvbnRhbGA/cC5mbG9vclk9PT1yLmZyb250Lnk/ci5mcm9udC55K3IuZnJvbnQuaDpyLmZyb250Lnk6cC5mbG9vclksZz1yLnByb2plY3QobSxoLHIudG9wb2xvZ3kubmVhckRlcHRoKSxfPXIucHJvamVjdChtLGgsci50b3BvbG9neS5mYXJEZXB0aCksdj1NYXRoLmh5cG90KF8ueC1nLngsXy55LWcueSk7aWYoISh2PjFlLTYpKXJldHVybjtsZXQgeT17eDooXy54LWcueCkvdix5OihfLnktZy55KS92fSxiPXt4Oi15LnkseTp5Lnh9LHg9ci5wcm9qZWN0KHIuZnJvbnQueCtyLmZyb250LncvMixyLmZyb250Lnkrci5mcm9udC5oLzIsLjUpLFM9e3g6KGcueCtfLngpLzIseTooZy55K18ueSkvMn07KFMueC14LngpKmIueCsoUy55LXgueSkqYi55PDAmJihiPXt4Oi1iLngseTotYi55fSksKGQudGlja0xhYmVsUG9zPT09YGxvd2AmJmIueTwwfHxkLnRpY2tMYWJlbFBvcz09PWBoaWdoYCYmYi55PjApJiYoYj17eDotYi54LHk6LWIueX0pLGQubGluZUhpZGRlbnx8KHV4KGUsY3goZC5saW5lQ29sb3IsZC5saW5lV2lkdGhFbXUsZC5saW5lRGFzaCx1KSksZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhnLngsZy55KSxlLmxpbmVUbyhfLngsXy55KSxlLnN0cm9rZSgpKTtsZXQgQz1NYXRoLm1heCgxLE1hdGguZmxvb3IoZC50aWNrTWFya1NraXA/PzEpKSx3PU1hdGgubWF4KDEsTWF0aC5mbG9vcihkLnRpY2tMYWJlbFNraXA/PzEpKSxUPWQubWFqb3JUaWNrTWFyaz8/YG91dGAsRT1BdChkLmZvbnRTaXplSHB0LHUpPz85KnU7aWYoZS5mb250PWAke2QuZm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHtkLmZvbnRCb2xkP2Bib2xkIGA6YGB9JHtFfXB4ICR7angodCxkLmZvbnRGYWNlKX1gLGUuZmlsbFN0eWxlPWQuZm9udENvbG9yP2AjJHtkLmZvbnRDb2xvcn1gOmAjNTk1OTU5YCxlLnRleHRBbGlnbj1NYXRoLmFicyhiLngpPC4yP2BjZW50ZXJgOmIueDwwP2ByaWdodGA6YGxlZnRgLGUudGV4dEJhc2VsaW5lPU1hdGguYWJzKGIueSk8LjI/YG1pZGRsZWA6Yi55PDA/YGJvdHRvbWA6YHRvcGAsbCYmIWQubGluZUhpZGRlbiYmVCE9PWBub25lYCl7dXgoZSxseChkLmxpbmVDb2xvcixkLmxpbmVXaWR0aEVtdSxkLmxpbmVEYXNoLHUpKTtsZXQgbj10LnNlcmllcy5sZW5ndGg7Zm9yKGxldCB0PTA7dDw9bjt0Kz1DKXtsZXQgaT10L24sYT1kLm9yaWVudGF0aW9uPT09YG1heE1pbmA/MS1pOmksbz1yLnByb2plY3QobSxoLGEpLHM9Nip1LGM9VD09PWBjcm9zc2A/cy8yOlQ9PT1gb3V0YD9zOjAsbD1UPT09YGNyb3NzYD9zLzI6VD09PWBpbmA/czowO2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8oby54K2IueCpjLG8ueStiLnkqYyksZS5saW5lVG8oby54LWIueCpsLG8ueS1iLnkqbCksZS5zdHJva2UoKX19Zm9yKGxldCBuPTA7bjx0LnNlcmllcy5sZW5ndGg7bisrKXtsZXQgaT1yLnNlcmllc0RlcHRoKG4sdC5zZXJpZXMubGVuZ3RoLCExKSxhPWQub3JpZW50YXRpb249PT1gbWF4TWluYD8xLWk6aSxvPXIucHJvamVjdChtLGgsYSk7aWYoIWwmJiFkLmxpbmVIaWRkZW4mJm4lQz09PTAmJlQhPT1gbm9uZWApe2xldCB0PTYqdSxuPVQ9PT1gY3Jvc3NgP3QvMjpUPT09YG91dGA/dDowLHI9VD09PWBjcm9zc2A/dC8yOlQ9PT1gaW5gP3Q6MDtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKG8ueCtiLngqbixvLnkrYi55Km4pLGUubGluZVRvKG8ueC1iLngqcixvLnktYi55KnIpLGUuc3Ryb2tlKCl9ZC50aWNrTGFiZWxQb3MhPT1gbm9uZWAmJm4ldz09PTAmJmUuZmlsbFRleHQodC5zZXJpZXNbbl0ubmFtZXx8YFNlcmllcyAke24rMX1gLG8ueCtiLngqKDYqdSszKSxvLnkrYi55Kig2KnUrMykpfWlmKGUuc2V0TGluZURhc2goW10pLGQudGl0bGUpe2xldCBpPUZ0KGQudGl0bGVGb250U2l6ZUhwdCx1KTskYihlLGQudGl0bGUsbix7eDpTLngrYi54KihFK2krMTIpLHk6Uy55K2IueSooRStpKzEyKX0sYGhvcml6b250YWxgLGksangodCxkLnRpdGxlRm9udEZhY2UsYG1ham9yYCksZC50aXRsZUZvbnRDb2xvcixkLnRpdGxlRm9udEJvbGQ/PyEwLGQudGl0bGVGb250SXRhbGljPz8hMSxkLnRpdGxlUm90YXRpb24sZC50aXRsZVZlcnRpY2FsTW9kZSxkLnRpdGxlTWFudWFsTGF5b3V0LE1hdGgubWF4KHIuZnJvbnQudyxyLmZyb250LmgpKX19ZnVuY3Rpb24gbngoZSx0LG4scixpLGEsbyxzKXtpZih0LmxpbmVIaWRkZW4hPT0hMCl7bGV0IHM9dC5saW5lV2lkdGhFbXU9PW51bGw/TWF0aC5tYXgoMSwyKm8pOk1hdGgubWF4KC41LHQubGluZVdpZHRoRW11L2N0Km8pO2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8ocixpKSxlLmxpbmVUbyhyK2EsaSksZS5zdHJva2VTdHlsZT10LmxpbmVDb2xvcj9gIyR7dC5saW5lQ29sb3J9YDp2byhuLC43KSxlLmxpbmVXaWR0aD1zLGUuc2V0TGluZURhc2goWHIodC5jaGFydGV4U3R5bGU/LmxpbmVEYXNoPz9gc29saWRgLHMpKSxlLnN0cm9rZSgpLGUuc2V0TGluZURhc2goW10pfWlmKHQuc2hvd01hcmtlciE9PSEwfHx0Lm1hcmtlclN5bWJvbD09PWBub25lYClyZXR1cm47bGV0IGM9dC5tYXJrZXJTeW1ib2w/P2BjaXJjbGVgLGw9SW4odCxuLnJlcGxhY2UoL14jLyxgYCkpLHU9bD09PWAwMDAwMDAwMGA/YHRyYW5zcGFyZW50YDpsLnN0YXJ0c1dpdGgoYCNgKT9sOmAjJHtsfWAsZD10Lm1hcmtlckxpbmU/P3QubGluZUNvbG9yPz9uLnJlcGxhY2UoL14jLyxgYCksZj1kPT09YDAwMDAwMDAwYD9gcmdiYSgwLDAsMCwwKWA6ZC5zdGFydHNXaXRoKGAjYCk/ZDpgIyR7ZH1gLHA9dC5tYXJrZXJMaW5lV2lkdGhFbXU9PW51bGw/TWF0aC5tYXgoLjc1LG8pOk1hdGgubWF4KC4yNSx0Lm1hcmtlckxpbmVXaWR0aEVtdS9jdCpvKTtZYihlLHt4OnIrYS8yLHk6aX0sYyxNYXRoLm1pbihhLE1hdGgubWF4KDIsKHQubWFya2VyU2l6ZT8/NSkqbykpLHUsZixwLEZuKHQpLHMsbyl9ZnVuY3Rpb24gcngoZSx0LG4scixpPSExLGEsbz0wKXtpZighbilyZXR1cm47WmEoZSx0LG4scixvKTtsZXQgcz1uZXcgTWFwKHQuc2VyaWVzWzBdPy5kYXRhUG9pbnRPdmVycmlkZXM/Lm1hcChlPT5bZS5pZHgsZV0pPz9bXSksYz1pPyh0LnNlcmllc1swXT8uY2F0ZWdvcmllcz8ubGVuZ3RoP3Quc2VyaWVzWzBdLmNhdGVnb3JpZXM6dC5jYXRlZ29yaWVzKS5tYXAoKGUsbik9PntsZXQgcj10LnNlcmllc1swXT8uZGF0YVBvaW50Q29sb3JzPy5bbl07cmV0dXJue2xhYmVsOmUsY29sb3I6cj09PWAwMDAwMDAwMGA/YHRyYW5zcGFyZW50YDpyP2AjJHtyfWA6a3gobiksc2VyaWVzOnQuc2VyaWVzWzBdLHBvaW50OnMuZ2V0KG4pLHNvdXJjZUluZGV4Om59fSk6dC5zZXJpZXMubWFwKChlLHQpPT4oe2xhYmVsOmUubmFtZXx8YFNlcmllcyAke3QrMX1gLGNvbG9yOmt4KHQsZSksc2VyaWVzOmUscG9pbnQ6dm9pZCAwLHNvdXJjZUluZGV4OnR9KSksbD1UYih0KSx1PWMuZmlsdGVyKGU9PmwuZ2V0KGUuc291cmNlSW5kZXgpPy5kZWxldGVkIT09ITApLGQ9YSE9bnVsbCYmYS5sYWJlbHMubGVuZ3RoPT09dS5sZW5ndGgmJmEubGFiZWxzLmV2ZXJ5KChlLHQpPT5lPT09dVt0XS5sYWJlbCksZj1kP2Euc3R5bGVzOnUubWFwKGU9PkViKHQsbC5nZXQoZS5zb3VyY2VJbmRleCkscikpO2UudGV4dEFsaWduPWBsZWZ0YCxlLnRleHRCYXNlbGluZT1gbWlkZGxlYDtsZXQgcD1NYXRoLm1heChNYXRoLm1heCgwLC4uLmYubWFwKGU9PmUuZm9udFB4KSkqMS40NSwxMiksbT1NYXRoLm1pbig3KnIscCouNyk7aWYodC5sZWdlbmRQb3M9PT1gdGB8fHQubGVnZW5kUG9zPT09YGJgfHx0LmxlZ2VuZE1hbnVhbExheW91dCE9bnVsbCYmbi53Pj1uLmgpe2xldCBzPWQ/YS5pdGVtV2lkdGhzOnUubWFwKCh0LG4pPT4oZS5mb250PWZbbl0uZm9udCxtKzQrZS5tZWFzdXJlVGV4dCh0LmxhYmVsKS53aWR0aCkpLGM9a3QocyxNYXRoLm1heCgxLG4udy04KSwxMikuc2xpY2UoMCxNYXRoLm1heCgwLE1hdGguZmxvb3IoKG4uaC00KzFlLTYpL3ApKSksbD1uLnkrMitwLzI7Zm9yKGxldCBhIG9mIGMpe2xldCBjPWEubWFwKGU9Pk1hdGgubWluKG4udyxzW2VdKSksZD1jLnJlZHVjZSgoZSx0KT0+ZSt0LDApK01hdGgubWF4KDAsYS5sZW5ndGgtMSkqMTIsaD1uLngrTWF0aC5tYXgoNCwobi53LWQpLzIpO2ZvcihsZXQgbj0wO248YS5sZW5ndGg7bisrKXtsZXQgcz1hW25dLGQ9dVtzXSxwPWZbc107ZS5mb250PXAuZm9udDtsZXQgZz1NYXRoLm1heCgwLGNbbl0tbS00KTtpZighaSYmdC5jaGFydFR5cGUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhgbGluZWApJiZkLnNlcmllcylueChlLGQuc2VyaWVzLGQuY29sb3IsaCxsLG0scixvKTtlbHNle2QuY29sb3IhPT1gdHJhbnNwYXJlbnRgJiYoZS5maWxsU3R5bGU9ZC5jb2xvcixlLmZpbGxSZWN0KGgsbC1tLzIsbSxtKSk7bGV0IHQ9ZC5wb2ludD8ubGluZUhpZGRlbj8/ZC5zZXJpZXM/LmxpbmVIaWRkZW4sbj1kLnBvaW50Py5saW5lQ29sb3I/P2Quc2VyaWVzPy5saW5lQ29sb3I7dCE9PSEwJiZuJiYoZS5zdHJva2VTdHlsZT1gIyR7bn1gLGUubGluZVdpZHRoPShkLnBvaW50Py5saW5lV2lkdGhFbXU/P2Quc2VyaWVzPy5saW5lV2lkdGhFbXUpPT1udWxsPy43NSpyOk1hdGgubWF4KC4yNSwoZC5wb2ludD8ubGluZVdpZHRoRW11Pz9kLnNlcmllcz8ubGluZVdpZHRoRW11Pz8wKS9jdCpyKSxlLnNldExpbmVEYXNoKFhyKGQucG9pbnQ/LmxpbmVEYXNoPz9kLnNlcmllcz8uY2hhcnRleFN0eWxlPy5saW5lRGFzaD8/YHNvbGlkYCxlLmxpbmVXaWR0aCkpLGUuc3Ryb2tlUmVjdChoLGwtbS8yLG0sbSksZS5zZXRMaW5lRGFzaChbXSkpfWUuZmlsbFN0eWxlPXAuY29sb3IsZS5maWxsVGV4dChrYShlLGQubGFiZWwsZyksaCttKzQsbCksaCs9Y1tuXSsxMn1sKz1wfXJldHVybn1sZXQgaD1uLnk7Zm9yKGxldCBhPTA7YTx1Lmxlbmd0aDthKyspe2xldCBzPXVbYV0sYz1mW2FdO2UuZm9udD1jLmZvbnQ7bGV0IGw9bi54KzgrbSxkPU1hdGgubWF4KDAsbi54K24udy00LWwpLGc9TWF0aC5tYXgoYy5mb250UHgqMS4yLDEwKSxfPWFuKHMubGFiZWwsZCxnKihpPzE6MiksZyx0PT5lLm1lYXN1cmVUZXh0KHQpLndpZHRoKTtpZihfLmxlbmd0aD09PTApY29udGludWU7bGV0IHY9TWF0aC5tYXgocCxfLmxlbmd0aCpnKzIpO2lmKGgrdj5uLnkrbi5oKzFlLTYpYnJlYWs7bGV0IHk9aCt2LzI7aWYoIWkmJnQuY2hhcnRUeXBlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoYGxpbmVgKSYmcy5zZXJpZXMpbngoZSxzLnNlcmllcyxzLmNvbG9yLG4ueCs0LHksbSxyLG8pO2Vsc2V7cy5jb2xvciE9PWB0cmFuc3BhcmVudGAmJihlLmZpbGxTdHlsZT1zLmNvbG9yLGUuZmlsbFJlY3Qobi54KzQseS1tLzIsbSxtKSk7bGV0IHQ9cy5wb2ludD8ubGluZUhpZGRlbj8/cy5zZXJpZXM/LmxpbmVIaWRkZW4saT1zLnBvaW50Py5saW5lQ29sb3I/P3Muc2VyaWVzPy5saW5lQ29sb3I7dCE9PSEwJiZpJiYoZS5zdHJva2VTdHlsZT1gIyR7aX1gLGUubGluZVdpZHRoPShzLnBvaW50Py5saW5lV2lkdGhFbXU/P3Muc2VyaWVzPy5saW5lV2lkdGhFbXUpPT1udWxsPy43NSpyOk1hdGgubWF4KC4yNSwocy5wb2ludD8ubGluZVdpZHRoRW11Pz9zLnNlcmllcz8ubGluZVdpZHRoRW11Pz8wKS9jdCpyKSxlLnNldExpbmVEYXNoKFhyKHMucG9pbnQ/LmxpbmVEYXNoPz9zLnNlcmllcz8uY2hhcnRleFN0eWxlPy5saW5lRGFzaD8/YHNvbGlkYCxlLmxpbmVXaWR0aCkpLGUuc3Ryb2tlUmVjdChuLngrNCx5LW0vMixtLG0pLGUuc2V0TGluZURhc2goW10pKX1lLmZpbGxTdHlsZT1jLmNvbG9yO2xldCBiPXktKF8ubGVuZ3RoLTEpKmcvMjtfLmZvckVhY2goKHQsbik9PmUuZmlsbFRleHQodCxsLGIrbipnKSksaCs9dn19ZnVuY3Rpb24gaXgoZSx0LG4scixpLGEpe2xldCBvPWk/MTAwOjEscz1lLnZhbEF4aXNNaW5vclRpY2tNYXJrPz9gbm9uZWA7cmV0dXJuIGVhKHtkYXRhTWluOnQsZGF0YU1heDpuLGV4cGxpY2l0TWluOmUudmFsTWluPT1udWxsP2k/dDpudWxsOmUudmFsTWluKm8sZXhwbGljaXRNYXg6ZS52YWxNYXg9PW51bGw/aT9uOm51bGw6ZS52YWxNYXgqbyxtYWpvclVuaXQ6ZS52YWxBeGlzTWFqb3JVbml0PT1udWxsP251bGw6ZS52YWxBeGlzTWFqb3JVbml0Km8sbWlub3JVbml0OmUudmFsQXhpc01pbm9yVW5pdD09bnVsbD9udWxsOmUudmFsQXhpc01pbm9yVW5pdCpvLGF4aXNMZW5QdDpyLGF4aXNPcmllbnRhdGlvbjphLGxvZ0Jhc2U6ZS52YWxBeGlzTG9nQmFzZSxyZXZlcnNlZDplLnZhbEF4aXNPcmllbnRhdGlvbj09PWBtYXhNaW5gLG5lZWRNaW5vcjplLnZhbEF4aXNNaW5vckdyaWRsaW5lcz09PSEwfHxzIT09YG5vbmVgfSl9ZnVuY3Rpb24gYXgoZSx0LG4pe2xldCByPWUhPW51bGwmJk51bWJlci5pc0Zpbml0ZShlKT8oZSUzNjArMzYwKSUzNjA6MCxpPU51bWJlci5pc0Zpbml0ZSh0KT9NYXRoLm1heCgwLE1hdGgubWluKDEsdCkpOjAsYT1OdW1iZXIuaXNGaW5pdGUobik/TWF0aC5tYXgoMCxNYXRoLm1pbigxLWksbikpOjAsbz1NYXRoLlBJLzItKHIqTWF0aC5QSS8xODAraSpNYXRoLlBJKjIpLHM9by1hKk1hdGguUEkqMjtyZXR1cm57c3RhcnQ6TWF0aC5taW4obyxzKSxlbmQ6TWF0aC5tYXgobyxzKSxtaWRkbGU6KG8rcykvMixsZWFkaW5nOm99fWZ1bmN0aW9uIG94KGUpe2xldHtmcm9udDp0fT1lLG49dC54LHI9dC54K3QudyxpPWUudG9wb2xvZ3kuZmFyWD09PWBtaW5gP246cixhPWk9PT1uP3I6bixvPWUudG9wb2xvZ3kuYXhpc1k9PT1gbWluYD90Lnk6dC55K3QuaCxzPW89PT10Lnk/dC55K3QuaDp0Lnkse25lYXJEZXB0aDpjLGZhckRlcHRoOmx9PWUudG9wb2xvZ3ksdT1lLnByb2plY3QobixvLGMpLGQ9ZS5wcm9qZWN0KHIsbyxjKSxmPWUucHJvamVjdChyLG8sbCkscD1lLnByb2plY3QobixvLGwpLG09ZS5wcm9qZWN0KG4scyxsKSxoPWUucHJvamVjdChyLHMsbCksZz1lLnByb2plY3QoaSxvLGMpLF89ZS5wcm9qZWN0KGksbyxsKSx2PWUucHJvamVjdChpLHMsbCkseT1lLnByb2plY3QoaSxzLGMpO3JldHVybntmbG9vcjpbdSxkLGYscF0sc2lkZVdhbGw6W2csXyx2LHldLGJhY2tXYWxsOltwLGYsaCxtXSxzaWRlWDppLHNlcmllc0F4aXNYOmEsZmxvb3JZOm8sb3Bwb3NpdGVGbG9vclk6cyxuZWFyRGVwdGg6YyxmYXJEZXB0aDpsfX1mdW5jdGlvbiBzeChlLHQsbixyLGk9YEE2QTZBNmAsYT0uNzUpe2xldCBvPXQhPW51bGwmJk51bWJlci5pc0Zpbml0ZSh0KSYmdD49MD9NYXRoLm1heCguMjUsdC9jdCpyKTphKnI7cmV0dXJue2NvbG9yOmAjJHtlPz9pfWAsd2lkdGg6byxkYXNoOlhyKG4/P2Bzb2xpZGAsbyl9fWZ1bmN0aW9uIGN4KGUsdCxuLHIpe2xldCBpPXN4KGUsdCxuLHIsYDg5ODk4OWAsMSk7aWYodD09bnVsbHx8IU51bWJlci5pc0Zpbml0ZSh0KXx8dDwwKXJldHVybiBpO2xldCBhPXQvY3QqcjtpZighKGE+MCkpcmV0dXJuIGk7bGV0IG89YTtyZXR1cm57Li4uaSx3aWR0aDpvLGRhc2g6WHIobj8/YHNvbGlkYCxvKX19ZnVuY3Rpb24gbHgoZSx0LG4scil7cmV0dXJuIGN4KGUsdCxuLHIpfWZ1bmN0aW9uIHV4KGUsdCl7ZS5zdHJva2VTdHlsZT10LmNvbG9yLGUubGluZVdpZHRoPXQud2lkdGgsZS5zZXRMaW5lRGFzaCh0LmRhc2gpfWZ1bmN0aW9uIGR4KGUsdCxuLHIsaSxhLG8scyxjKXtsZXR7ZnJvbnQ6bH09bix1PWwueCxkPWwueCtsLncsZj1veChuKSx7c2lkZVg6cCxmbG9vclk6bSxvcHBvc2l0ZUZsb29yWTpoLG5lYXJEZXB0aDpnLGZhckRlcHRoOl99PWYsdj12eCh0LG4scixhLG8scyxpKSx5PVtdLGI9dC5jYXRBeGlzTGluZVBhaW50QXV0aG9yZWQ9PT0hMCx4PXQudmFsQXhpc0xpbmVQYWludEF1dGhvcmVkPT09ITAsUz1pPT09YHZlcnRpY2FsYD9iJiYhdC5jYXRBeGlzSGlkZGVuJiYhdC5jYXRBeGlzTGluZUhpZGRlbjp4JiYhdC52YWxBeGlzSGlkZGVuJiYhdC52YWxBeGlzTGluZUhpZGRlbixDPWk9PT1gdmVydGljYWxgP3gmJiF0LnZhbEF4aXNIaWRkZW4mJiF0LnZhbEF4aXNMaW5lSGlkZGVuOmImJiF0LmNhdEF4aXNIaWRkZW4mJiF0LmNhdEF4aXNMaW5lSGlkZGVuO1MmJnkucHVzaChbdi5ob3Jpem9udGFsU3RhcnQsdi5ob3Jpem9udGFsRW5kXSksQyYmeS5wdXNoKFt2LnZlcnRpY2FsU3RhcnQsdi52ZXJ0aWNhbEVuZF0pO2xldCB3PXQudGhyZWVEPy5zZXJpZXNBeGlzLFQ9dz8ubGluZVBhaW50QXV0aG9yZWQ9PT0hMDtpZih3JiYhdy5oaWRkZW4mJiF3LmxpbmVIaWRkZW4mJlQmJnQudGhyZWVEPy5iYXJHcm91cGluZz09PWBzdGFuZGFyZGAmJnQuc2VyaWVzLmxlbmd0aD4wKXtsZXQgZT1pPT09YHZlcnRpY2FsYD9mLnNlcmllc0F4aXNYOnYuYXhpc1gsdD1pPT09YGhvcml6b250YWxgP209PT1uLmZyb250Lnk/bi5mcm9udC55K24uZnJvbnQuaDpuLmZyb250Lnk6bTt5LnB1c2goW24ucHJvamVjdChlLHQsZyksbi5wcm9qZWN0KGUsdCxfKV0pfWxldCBFPShlLHQpPT5NYXRoLmh5cG90KGUueC10LngsZS55LXQueSk8PTFlLTYsRD0oZSx0KT0+eS5zb21lKChbbixyXSk9PkUoZSxuKSYmRSh0LHIpfHxFKGUscikmJkUodCxuKSksTz0oZSx0KT0+e2xldCByPUFvKG4sZSx0Py50aGlja25lc3NQZXJjZW50KSxpPXIuZmFjZXMubWFwKChlLHQpPT4oe3NjZW5lUG9pbnRzOmUsZmFjZUluZGV4OnR9KSkuZmlsdGVyKCh7c2NlbmVQb2ludHM6ZX0pPT5yLnRoaWNrbmVzcz09PTB8fG4uY2FtZXJhRmFjaW5nKGUpKS5tYXAoKHtzY2VuZVBvaW50czplLGZhY2VJbmRleDp0fSk9Pih7ZmFjZUluZGV4OnQsc2NlbmVQb2ludHM6ZSxwb2ludHM6ZS5tYXAoZT0+bi5wcm9qZWN0VW5ib3VuZGVkKGUueCxlLnksZS5kZXB0aCkpLGRlcHRoOmUucmVkdWNlKChlLHQpPT5lK24uY2FtZXJhRGVwdGgodC54LHQueSx0LmRlcHRoKSwwKS9lLmxlbmd0aH0pKS5zb3J0KChlLHQpPT5lLmRlcHRoLXQuZGVwdGgpO3JldHVybntzbGFiOnIsZmFjZXM6aSx2aXNpYmxlRmFjZUluZGljZXM6bmV3IFNldChpLm1hcChlPT5lLmZhY2VJbmRleCkpfX0saz1PKGBmbG9vcmAsdC50aHJlZUQ/LmZsb29yKSxBPU8oYHNpZGVXYWxsYCx0LnRocmVlRD8uc2lkZVdhbGwpLGo9TyhgYmFja1dhbGxgLHQudGhyZWVEPy5iYWNrV2FsbCksTT1rLmZhY2VzLE49QS5mYWNlcyxQPWouZmFjZXMsRj0oaSxhLG8scyk9PntsZXQgYz1vcih0LGEsbyksbD1pLmZhY2VzO2lmKCFjLmZpbGx8fCFsLmxlbmd0aClyZXR1cm47aWYoYy5maWxsLmZpbGxUeXBlPT09YGltYWdlYCl7bGV0IHQ9U3IoYy5maWxsKTtpZighdClyZXR1cm47amkoZSxjLmZpbGwsdCxhLHMsaS5zbGFiLGkuZmFjZXMubWFwKGU9PmUuZmFjZUluZGV4KSxlPT5uLnByb2plY3RVbmJvdW5kZWQoZS54LGUueSxlLmRlcHRoKSxyLm1heC1yLm1pbik7cmV0dXJufWxldCB1PWwuZmxhdE1hcChlPT5lLnBvaW50cyksZD1NYXRoLm1pbiguLi51Lm1hcChlPT5lLngpKSxmPU1hdGgubWF4KC4uLnUubWFwKGU9PmUueCkpLHA9TWF0aC5taW4oLi4udS5tYXAoZT0+ZS55KSksbT1NYXRoLm1heCguLi51Lm1hcChlPT5lLnkpKSxoPWMuZmlsbC5maWxsVHlwZT09PWBzb2xpZGA/YCMke2MuZmlsbC5jb2xvcn1gOmFpKGMuZmlsbCxlLGQscCxmLWQsbS1wKTtpZihoKWZvcihsZXQgdCBvZiBsKXQucG9pbnRzLmxlbmd0aDwzfHwoUmIoZSx0LnBvaW50cyksZS5maWxsU3R5bGU9aCxlLmZpbGwoKSl9O0Yoayx0LnRocmVlRD8uZmxvb3IsYGZsb29yYCxgZmxvb3JgKSxGKEEsdC50aHJlZUQ/LnNpZGVXYWxsLGB3YWxsYCxgc2lkZVdhbGxgKSxGKGosdC50aHJlZUQ/LmJhY2tXYWxsLGB3YWxsYCxgYmFja1dhbGxgKTtsZXQgST0odCxyLGksYSxvPSEwKT0+e2ZvcihsZXQgcyBvZiBqbyh0LnNsYWIscixpLGEpKXtpZighbyYmcy5mYWNlSW5kZXghPT0wfHwhdC52aXNpYmxlRmFjZUluZGljZXMuaGFzKHMuZmFjZUluZGV4KSljb250aW51ZTtsZXRbcixpXT1zLnNjZW5lUG9pbnRzLm1hcChlPT5uLnByb2plY3RVbmJvdW5kZWQoZS54LGUueSxlLmRlcHRoKSk7ZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhyLngsci55KSxlLmxpbmVUbyhpLngsaS55KSxlLnN0cm9rZSgpfX0sTD0odCxhLG8pPT57dXgoZSxhKTtmb3IobGV0IGEgb2YgdCl7bGV0IHQ9ci5mcmFjdGlvbihhKTtpZihvKXtpPT09YGhvcml6b250YWxgPyhJKGssYGZsb29yYCxgeGAsdCksSShqLGBiYWNrV2FsbGAsYHhgLHQpKTooSShBLGBzaWRlV2FsbGAsYHlgLHQpLEkoaixgYmFja1dhbGxgLGB5YCx0KSk7Y29udGludWV9aWYoaT09PWBob3Jpem9udGFsYCl7bGV0IHI9bC54K3QqbC53LGk9bi5wcm9qZWN0KHIsbSxfKSxhPW4ucHJvamVjdChyLGgsXyk7ZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhpLngsaS55KSxlLmxpbmVUbyhhLngsYS55KSxlLnN0cm9rZSgpfWVsc2V7bGV0IHI9bC55K2wuaC10KmwuaCxpPW4ucHJvamVjdChwLHIsZyksYT1uLnByb2plY3QocCxyLF8pLG89bi5wcm9qZWN0KHA9PT11P2Q6dSxyLF8pO2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8oaS54LGkueSksZS5saW5lVG8oYS54LGEueSksZS5zdHJva2UoKSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKGEueCxhLnkpLGUubGluZVRvKG8ueCxvLnkpLGUuc3Ryb2tlKCl9fX07dC52YWxBeGlzTWlub3JHcmlkbGluZXM9PT0hMCYmTChyLm1pbm9yVGlja3Msc3godC52YWxBeGlzTWlub3JHcmlkbGluZUNvbG9yLHQudmFsQXhpc01pbm9yR3JpZGxpbmVXaWR0aEVtdSx0LnZhbEF4aXNNaW5vckdyaWRsaW5lRGFzaCxjLGBEOUQ5RDlgLC41KSwhMCksdC52YWxBeGlzTWFqb3JHcmlkbGluZXM9PT0hMCYmTChyLm1ham9yVGlja3Msc3godC52YWxBeGlzR3JpZGxpbmVDb2xvcix0LnZhbEF4aXNHcmlkbGluZVdpZHRoRW11LHQudmFsQXhpc0dyaWRsaW5lRGFzaCxjLGA4OTg5ODlgLDEpLCEwKTtsZXQgUj0odCxuKT0+e3V4KGUsbik7Zm9yKGxldCBlIG9mIHQpaT09PWB2ZXJ0aWNhbGA/KEkoayxgZmxvb3JgLGB4YCxlKSxJKGosYGJhY2tXYWxsYCxgeGAsZSkpOihJKEEsYHNpZGVXYWxsYCxgeWAsZSksSShqLGBiYWNrV2FsbGAsYHlgLGUpKX07dC5jYXRBeGlzTWlub3JHcmlkbGluZXM9PT0hMCYmUihUdChhLG8pLHN4KHQuY2F0QXhpc01pbm9yR3JpZGxpbmVDb2xvcix0LmNhdEF4aXNNaW5vckdyaWRsaW5lV2lkdGhFbXUsdC5jYXRBeGlzTWlub3JHcmlkbGluZURhc2gsYyxgRTBFMEUwYCwuNSkpLHQuY2F0QXhpc01ham9yR3JpZGxpbmVzPT09ITAmJlIod3QoYSxvKSxzeCh0LmNhdEF4aXNHcmlkbGluZUNvbG9yLHQuY2F0QXhpc0dyaWRsaW5lV2lkdGhFbXUsdC5jYXRBeGlzR3JpZGxpbmVEYXNoLGMsYEUwRTBFMGAsLjUpKTtsZXQgej0obixyLGkpPT57aWYoIW4ubGVuZ3RoKXJldHVybjtsZXQgYT1vcih0LHIsaSk7aWYoYS5saW5lPT09bnVsbClyZXR1cm47bGV0IG89YS5saW5lPz97ZmlsbFR5cGU6YHNvbGlkYCxjb2xvcjpgODk4OTg5YH0scz1uLmZsYXRNYXAoZT0+ZS5wb2ludHMpLGw9TWF0aC5taW4oLi4ucy5tYXAoZT0+ZS54KSksdT1NYXRoLm1heCguLi5zLm1hcChlPT5lLngpKSxkPU1hdGgubWluKC4uLnMubWFwKGU9PmUueSkpLGY9TWF0aC5tYXgoLi4ucy5tYXAoZT0+ZS55KSkscD1vLmZpbGxUeXBlPT09YHNvbGlkYD9gIyR7by5jb2xvcn1gOmFpKG8sZSxsLGQsdS1sLGYtZCk7aWYoIXApcmV0dXJuO2xldCBtPWEubGluZVdpZHRoRW11PT1udWxsP2M6TWF0aC5tYXgoLjI1LGEubGluZVdpZHRoRW11L2N0KmMpO2Uuc3Ryb2tlU3R5bGU9cCxlLmxpbmVXaWR0aD1tLGUuc2V0TGluZURhc2goWnIoYS5saW5lQ3VzdG9tRGFzaCxhLmxpbmVEYXNoLG0pKSxlLmxpbmVDYXA9YS5saW5lQ2FwPT09YHJuZGA/YHJvdW5kYDphLmxpbmVDYXA9PT1gc3FgP2BzcXVhcmVgOmBidXR0YCxlLmxpbmVKb2luPWEubGluZUpvaW49PT1gcm91bmRgfHxhLmxpbmVKb2luPT09YGJldmVsYD9hLmxpbmVKb2luOmBtaXRlcmA7Zm9yKGxldCB0IG9mIG4pe2lmKHQucG9pbnRzLmxlbmd0aDwyKWNvbnRpbnVlO2xldCBuPXQucG9pbnRzLm1hcCgoZSxuKT0+KHtzdGFydDplLGVuZDp0LnBvaW50c1sobisxKSV0LnBvaW50cy5sZW5ndGhdfSkpO2lmKG4uc29tZShlPT5EKGUuc3RhcnQsZS5lbmQpKSl7Zm9yKGxldCB0IG9mIG4pRCh0LnN0YXJ0LHQuZW5kKXx8KGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8odC5zdGFydC54LHQuc3RhcnQueSksZS5saW5lVG8odC5lbmQueCx0LmVuZC55KSxlLnN0cm9rZSgpKTtjb250aW51ZX1lLmJlZ2luUGF0aCgpLGUubW92ZVRvKHQucG9pbnRzWzBdLngsdC5wb2ludHNbMF0ueSk7Zm9yKGxldCBuPTE7bjx0LnBvaW50cy5sZW5ndGg7bisrKWUubGluZVRvKHQucG9pbnRzW25dLngsdC5wb2ludHNbbl0ueSk7ZS5saW5lVG8odC5wb2ludHNbMF0ueCx0LnBvaW50c1swXS55KSxlLmNsb3NlUGF0aCgpLGUuc3Ryb2tlKCl9fTt6KE0sdC50aHJlZUQ/LmZsb29yLGBmbG9vcmApLHooTix0LnRocmVlRD8uc2lkZVdhbGwsYHdhbGxgKSx6KFAsdC50aHJlZUQ/LmJhY2tXYWxsLGB3YWxsYCksZS5zZXRMaW5lRGFzaChbXSl9ZnVuY3Rpb24gZngoZSx0LG4scixpLGEsbyxzLGMpe2xldCBsPXZ4KHQsbixyLGksYSxvLGMpLHU9Yz09PWB2ZXJ0aWNhbGA/IXQuY2F0QXhpc0hpZGRlbiYmIXQuY2F0QXhpc0xpbmVIaWRkZW46IXQudmFsQXhpc0hpZGRlbiYmIXQudmFsQXhpc0xpbmVIaWRkZW4sZD1jPT09YHZlcnRpY2FsYD8hdC52YWxBeGlzSGlkZGVuJiYhdC52YWxBeGlzTGluZUhpZGRlbjohdC5jYXRBeGlzSGlkZGVuJiYhdC5jYXRBeGlzTGluZUhpZGRlbjt1JiYodXgoZSxjeChjPT09YHZlcnRpY2FsYD90LmNhdEF4aXNMaW5lQ29sb3I6dC52YWxBeGlzTGluZUNvbG9yLGM9PT1gdmVydGljYWxgP3QuY2F0QXhpc0xpbmVXaWR0aEVtdTp0LnZhbEF4aXNMaW5lV2lkdGhFbXUsYz09PWB2ZXJ0aWNhbGA/dC5jYXRBeGlzTGluZURhc2g6dC52YWxBeGlzTGluZURhc2gscykpLGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8obC5ob3Jpem9udGFsU3RhcnQueCxsLmhvcml6b250YWxTdGFydC55KSxlLmxpbmVUbyhsLmhvcml6b250YWxFbmQueCxsLmhvcml6b250YWxFbmQueSksZS5zdHJva2UoKSksZCYmKHV4KGUsY3goYz09PWB2ZXJ0aWNhbGA/dC52YWxBeGlzTGluZUNvbG9yOnQuY2F0QXhpc0xpbmVDb2xvcixjPT09YHZlcnRpY2FsYD90LnZhbEF4aXNMaW5lV2lkdGhFbXU6dC5jYXRBeGlzTGluZVdpZHRoRW11LGM9PT1gdmVydGljYWxgP3QudmFsQXhpc0xpbmVEYXNoOnQuY2F0QXhpc0xpbmVEYXNoLHMpKSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKGwudmVydGljYWxTdGFydC54LGwudmVydGljYWxTdGFydC55KSxlLmxpbmVUbyhsLnZlcnRpY2FsRW5kLngsbC52ZXJ0aWNhbEVuZC55KSxlLnN0cm9rZSgpKSxlLnNldExpbmVEYXNoKFtdKX1mdW5jdGlvbiBweChlLHQsbixyKXtsZXQgaT17eDooZS54K3QueCkvMix5OihlLnkrdC55KS8yfTtyZXR1cm4gcj09PWBob3Jpem9udGFsYD97eDppLng8PW4ueD8tMToxLHk6MH06e3g6MCx5OmkueTw9bi55Py0xOjF9fWZ1bmN0aW9uIG14KGUsdCxuLHIsaSxhLG8scyxjKXtpZighdHx8dD09PWBub25lYClyZXR1cm47bGV0IGw9cHgocixpLGEsbyksdT1oeChzLGMpLGQ9dD09PWBjcm9zc2A/dS8yOnUsZj10PT09YG91dGB8fHQ9PT1gY3Jvc3NgP2Q6MCxwPXQ9PT1gaW5gfHx0PT09YGNyb3NzYD9kOjA7ZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhuLngrbC54KmYsbi55K2wueSpmKSxlLmxpbmVUbyhuLngtbC54KnAsbi55LWwueSpwKSxlLnN0cm9rZSgpfWZ1bmN0aW9uIGh4KGUsdCl7cmV0dXJuKGU9PT1gbWlub3JgPzQ6NikqdH1mdW5jdGlvbiBneChlLHQsbil7aWYoZSE9PWBvdXRgJiZlIT09YGNyb3NzYClyZXR1cm4gMDtsZXQgcj1oeCh0LG4pO3JldHVybiBlPT09YGNyb3NzYD9yLzI6cn1mdW5jdGlvbiBfeChlLHQsbixyKXtpZih0KXJldHVybiByO2xldCBpPWd4KGUsYG1ham9yYCxuKTtyZXR1cm4gTWF0aC5tYXgocixpKzMqbil9ZnVuY3Rpb24gdngoZSx0LG4scixpLGEsbyl7bGV0e2Zyb250OnN9PXQsYz1lPT5NYXRoLm1heCgwLE1hdGgubWluKDEsZSkpLGw9dC50b3BvbG9neS5heGlzWD09PWBtaW5gP3MueDpzLngrcy53LHU9dC50b3BvbG9neS5heGlzWT09PWBtaW5gP3MueTpzLnkrcy5oLGQ9KCk9PntpZihlLmNhdEF4aXNDcm9zc2VzQXQhPW51bGwmJk51bWJlci5pc0Zpbml0ZShlLmNhdEF4aXNDcm9zc2VzQXQpKXtsZXQgdD1lLmNoYXJ0VHlwZS5lbmRzV2l0aChgUGN0YCk/ZS5jYXRBeGlzQ3Jvc3Nlc0F0KjEwMDplLmNhdEF4aXNDcm9zc2VzQXQ7cmV0dXJuIGMobi5mcmFjdGlvbih0KSl9bGV0IHQ9ZS5jYXRBeGlzQ3Jvc3Nlcz8/YGF1dG9aZXJvYDtyZXR1cm4gYyh0PT09YG1pbmA/bi5mcmFjdGlvbihuLm1pbik6dD09PWBtYXhgP24uZnJhY3Rpb24obi5tYXgpOm4uZnJhY3Rpb24oMCkpfSxmPSgpPT57bGV0IHQ9ZS52YWxBeGlzQ3Jvc3Nlc0F0O2lmKHQhPW51bGwmJk51bWJlci5pc0Zpbml0ZSh0KSlyZXR1cm4gQ3QodC0xLHIsaSxhKTtsZXQgbj1lLnZhbEF4aXNDcm9zc2VzO2lmKG4hPT1gbWluYCYmbiE9PWBtYXhgKXJldHVybiBudWxsO2xldCBvPSsobj09PWBtYXhgKTtyZXR1cm4gYT8xLW86b30scD1kKCksbT1mKCksaD1vPT09YGhvcml6b250YWxgP3MueCtwKnMudzptPT1udWxsP2w6cy54K20qcy53LGc9bz09PWB2ZXJ0aWNhbGA/cy55K3MuaC1wKnMuaDptPT1udWxsP3U6cy55K20qcy5oLF89dC50b3BvbG9neS5uZWFyRGVwdGg7cmV0dXJue2F4aXNYOmgsYXhpc1k6ZyxkZXB0aDpfLGhvcml6b250YWxTdGFydDp0LnByb2plY3Qocy54LGcsXyksaG9yaXpvbnRhbEVuZDp0LnByb2plY3Qocy54K3MudyxnLF8pLHZlcnRpY2FsU3RhcnQ6dC5wcm9qZWN0KGgscy55K3MuaCxfKSx2ZXJ0aWNhbEVuZDp0LnByb2plY3QoaCxzLnksXyl9fWZ1bmN0aW9uIHl4KGUsdCxuLHIsaSxhLG8scyxjLGwpe2xldHtmcm9udDp1fT1uLGQ9dngodCxuLHIsaSxhLG8scykse2F4aXNYOmYsYXhpc1k6cCxkZXB0aDptfT1kLGg9bi5wcm9qZWN0KHUueCt1LncvMix1LnkrdS5oLzIsbSksZz10LnZhbEF4aXNNaW5vclRpY2tNYXJrPz9gbm9uZWAsXz1jP2x4OmN4O2lmKCF0LnZhbEF4aXNIaWRkZW4mJiF0LnZhbEF4aXNMaW5lSGlkZGVuKXt1eChlLF8odC52YWxBeGlzTGluZUNvbG9yLHQudmFsQXhpc0xpbmVXaWR0aEVtdSx0LnZhbEF4aXNMaW5lRGFzaCxsKSk7bGV0IGk9ZT0+cz09PWBob3Jpem9udGFsYD9uLnByb2plY3QodS54K3IuZnJhY3Rpb24oZSkqdS53LHAsbSk6bi5wcm9qZWN0KGYsdS55K3UuaC1yLmZyYWN0aW9uKGUpKnUuaCxtKSxhPXM9PT1gaG9yaXpvbnRhbGA/ZC5ob3Jpem9udGFsU3RhcnQ6ZC52ZXJ0aWNhbFN0YXJ0LG89cz09PWBob3Jpem9udGFsYD9kLmhvcml6b250YWxFbmQ6ZC52ZXJ0aWNhbEVuZDtmb3IobGV0IG4gb2Ygci5tYWpvclRpY2tzKW14KGUsdC52YWxBeGlzTWFqb3JUaWNrTWFyayxpKG4pLGEsbyxoLHM9PT1gdmVydGljYWxgP2Bob3Jpem9udGFsYDpgdmVydGljYWxgLGBtYWpvcmAsbCk7Zm9yKGxldCB0IG9mIHIubWlub3JUaWNrcylteChlLGcsaSh0KSxhLG8saCxzPT09YHZlcnRpY2FsYD9gaG9yaXpvbnRhbGA6YHZlcnRpY2FsYCxgbWlub3JgLGwpfWlmKCF0LmNhdEF4aXNIaWRkZW4mJiF0LmNhdEF4aXNMaW5lSGlkZGVuKXt1eChlLF8odC5jYXRBeGlzTGluZUNvbG9yLHQuY2F0QXhpc0xpbmVXaWR0aEVtdSx0LmNhdEF4aXNMaW5lRGFzaCxsKSk7bGV0IHI9cz09PWB2ZXJ0aWNhbGA/ZC5ob3Jpem9udGFsU3RhcnQ6ZC52ZXJ0aWNhbFN0YXJ0LGc9cz09PWB2ZXJ0aWNhbGA/ZC5ob3Jpem9udGFsRW5kOmQudmVydGljYWxFbmQsdj1NYXRoLm1heCgxLE1hdGguZmxvb3IodC5jYXRBeGlzVGlja01hcmtTa2lwPz8xKSkseT1pPT57bGV0IGE9cz09PWB2ZXJ0aWNhbGA/bi5wcm9qZWN0KHUueCtpKnUudyxwLG0pOm4ucHJvamVjdChmLHUueStpKnUuaCxtKTtteChlLHQuY2F0QXhpc01ham9yVGlja01hcmssYSxyLGcsaCxzPT09YHZlcnRpY2FsYD9gdmVydGljYWxgOmBob3Jpem9udGFsYCxgbWFqb3JgLGwpfTtpZihjKXtsZXQgZT13dChpLGEpO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCs9dil5KG8/MS1lW3RdOmVbdF0pfWVsc2UgZm9yKGxldCBlPTA7ZTxpO2UrPXYpeShDdChlLGksYSxvKSk7bGV0IGI9dC5jYXRBeGlzTWlub3JVbml0O2lmKHQuY2F0QXhpc01pbm9yVGlja01hcmsmJnQuY2F0QXhpc01pbm9yVGlja01hcmshPT1gbm9uZWAmJmIhPW51bGwmJk51bWJlci5pc0Zpbml0ZShiKSYmYj4wKXtsZXQgYz10LmNhdEF4aXNNYWpvclVuaXQhPW51bGwmJk51bWJlci5pc0Zpbml0ZSh0LmNhdEF4aXNNYWpvclVuaXQpJiZ0LmNhdEF4aXNNYWpvclVuaXQ+MD90LmNhdEF4aXNNYWpvclVuaXQ6dixkPU1hdGgubWluKDUxMixNYXRoLmNlaWwoaS9iKSk7Zm9yKGxldCBfPTE7XzxkO18rKyl7bGV0IGQ9XypiO2lmKCEoZDxpKSlicmVhaztpZihNYXRoLmFicyhkL2MtTWF0aC5yb3VuZChkL2MpKTwxZS05KWNvbnRpbnVlO2xldCB2PUN0KGQsaSxhLG8pLHk9cz09PWB2ZXJ0aWNhbGA/bi5wcm9qZWN0KHUueCt2KnUudyxwLG0pOm4ucHJvamVjdChmLHUueSt2KnUuaCxtKTtteChlLHQuY2F0QXhpc01pbm9yVGlja01hcmsseSxyLGcsaCxzPT09YHZlcnRpY2FsYD9gdmVydGljYWxgOmBob3Jpem9udGFsYCxgbWlub3JgLGwpfX19ZS5zZXRMaW5lRGFzaChbXSl9ZnVuY3Rpb24gYngoZSx0LG4scixpKXtpZighdC50aHJlZUQpcmV0dXJuITE7bGV0IGE9dC5jaGFydFR5cGU9PT1gY2x1c3RlcmVkQmFyYHx8dC5jaGFydFR5cGU9PT1gY2x1c3RlcmVkQmFySGB8fHQuY2hhcnRUeXBlLnN0YXJ0c1dpdGgoYHN0YWNrZWRCYXJgKSxvPXQuY2hhcnRUeXBlLmVuZHNXaXRoKGBIYCl8fHQuY2hhcnRUeXBlLmluY2x1ZGVzKGBCYXJIYCkscz10LmNoYXJ0VHlwZS5zdGFydHNXaXRoKGBzdGFja2VkYCksYz1hJiYhcyYmdC50aHJlZUQuYmFyR3JvdXBpbmc9PT1gc3RhbmRhcmRgLHtwbG90OmwsbGVnZW5kOnUsbGVnZW5kTWVhc3VyZTpkfT1RYihlLHQsbixyLG8/YGhvcml6b250YWxgOmB2ZXJ0aWNhbGAsaSksZj1Obyh0LnRocmVlRCxsLHtzY2VuZURlcHRoU2NhbGU6YT9jPy42NTouMTouNCxwZXJzcGVjdGl2ZVRhbmdlbnRHYWluOmM/MToyLHNjZW5lSGVpZ2h0U2NhbGU6IWEmJiEodC50aHJlZUQuaGVpZ2h0UGVyY2VudEF1dGhvcmVkPz90LnRocmVlRC5oZWlnaHRQZXJjZW50IT1udWxsKT8xLzM6dm9pZCAwfSk7aWYoIWYpcmV0dXJuITA7Zj1NbyhmLHQudGhyZWVELGwpO2xldCBwPXQuY2hhcnRUeXBlLmVuZHNXaXRoKGBQY3RgKSxtPXQuc2VyaWVzLmZpbmQoZT0+KGUuY2F0ZWdvcmllcz8ubGVuZ3RoPz8wKT4wKT8uY2F0ZWdvcmllcz8/dC5jYXRlZ29yaWVzLGg9TWF0aC5tYXgoMSxtLmxlbmd0aCwuLi50LnNlcmllcy5tYXAoZT0+ZS52YWx1ZXMubGVuZ3RoKSksZz1wP0FiKHQsaCk6dm9pZCAwLF89dC5jYXRBeGlzT3JpZW50YXRpb249PT1gbWF4TWluYCx2PXQuY2F0QXhpc0Nyb3NzQmV0d2Vlbj09PWBiZXR3ZWVuYCx5PXQuZGlzcEJsYW5rc0FzPz9gZ2FwYCxiPXQudmFsQXhpc0xvZ0Jhc2UhPW51bGwmJk51bWJlci5pc0Zpbml0ZSh0LnZhbEF4aXNMb2dCYXNlKSYmdC52YWxBeGlzTG9nQmFzZT49Mix4PShlLG4pPT57bGV0IHI9dC5zZXJpZXNbZV0/LnZhbHVlc1tuXTtyZXR1cm4gciE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKHIpJiYoIWJ8fHI+MCl8fHI9PW51bGwmJihzfHx5PT09YHplcm9gKX0sUz0oZSxuKT0+amIodCxlLG4sZyksQz0wLHc9MDtpZihzKXtmb3IobGV0IGU9MDtlPGg7ZSsrKXtsZXQgbj0wLHI9MDtmb3IobGV0IGk9MDtpPHQuc2VyaWVzLmxlbmd0aDtpKyspe2xldCB0PVMoaSxlKTt0Pj0wP249TWIobix0KTpyPU1iKHIsdCl9Qz1NYXRoLm1pbihDLHIpLHc9TWF0aC5tYXgodyxuKX1wJiYoQz1DPDA/LTEwMDowLHc9dz4wPzEwMDowLEM9PT0wJiZ3PT09MCYmKHc9MSkpfWVsc2V7bGV0IGU9QmkodC5zZXJpZXMuZmxhdE1hcChlPT5lLnZhbHVlcykuZmlsdGVyKGU9PmUhPW51bGwmJk51bWJlci5pc0Zpbml0ZShlKSYmKCFifHxlPjApKSxiP3ttaW46MSxtYXg6MTB9OnttaW46MCxtYXg6MX0pO0M9Yj9lLm1pbjpNYXRoLm1pbigwLGUubWluKSx3PWI/ZS5tYXg6TWF0aC5tYXgoMCxlLm1heCl9bGV0IFQ9bz9mLnByb2plY3QoZi5mcm9udC54LGYudG9wb2xvZ3kuYXhpc1k9PT1gbWluYD9mLmZyb250Lnk6Zi5mcm9udC55K2YuZnJvbnQuaCxmLnRvcG9sb2d5Lm5lYXJEZXB0aCk6Zi5wcm9qZWN0KGYudG9wb2xvZ3kuYXhpc1g9PT1gbWluYD9mLmZyb250Lng6Zi5mcm9udC54K2YuZnJvbnQudyxmLmZyb250LnksZi50b3BvbG9neS5uZWFyRGVwdGgpLEU9bz9mLnByb2plY3QoZi5mcm9udC54K2YuZnJvbnQudyxmLnRvcG9sb2d5LmF4aXNZPT09YG1pbmA/Zi5mcm9udC55OmYuZnJvbnQueStmLmZyb250LmgsZi50b3BvbG9neS5uZWFyRGVwdGgpOmYucHJvamVjdChmLnRvcG9sb2d5LmF4aXNYPT09YG1pbmA/Zi5mcm9udC54OmYuZnJvbnQueCtmLmZyb250LncsZi5mcm9udC55K2YuZnJvbnQuaCxmLnRvcG9sb2d5Lm5lYXJEZXB0aCksRD1NYXRoLmh5cG90KEUueC1ULngsRS55LVQueSkvcixPPWl4KHQsQyx3LEQscCxvP2Bob3Jpem9udGFsYDpgdmVydGljYWxgKSxrPWU9Pk51bWJlci5pc0Zpbml0ZShlKT9NYXRoLm1heChPLm1pbixNYXRoLm1pbihPLm1heCxlKSk6Ty5taW47YXx8ZHgoZSx0LGYsTyxvP2Bob3Jpem9udGFsYDpgdmVydGljYWxgLGgsdixfLHIpO2xldHtmcm9udDpBfT1mLGo9TWF0aC5tYXgoMSx0LnNlcmllcy5sZW5ndGgpLE09W10sTj10LnNlcmllcy5tYXAoZT0+bmV3IE1hcChlLmRhdGFQb2ludE92ZXJyaWRlcz8ubWFwKGU9PltlLmlkeCxlXSk/P1tdKSksUD10LnNlcmllcy5tYXAoZT0+bmV3IE1hcChlLmRhdGFMYWJlbE92ZXJyaWRlcz8ubWFwKGU9PltlLmlkeCxlXSk/P1tdKSk7aWYoYSl7bGV0IGE9Zi5wcmlzbUludGVydmFsKDAsMSwhMCksbD1bXSx1PUFycmF5KGgpLmZpbGwoMCksZD1BcnJheShoKS5maWxsKDApLG09KG8/QS5oOkEudykvaCxnPXQuYmFyR2FwV2lkdGghPW51bGwmJk51bWJlci5pc0Zpbml0ZSh0LmJhckdhcFdpZHRoKSYmdC5iYXJHYXBXaWR0aD49MD90LmJhckdhcFdpZHRoOjE1MDtmb3IobGV0IGU9MDtlPHQuc2VyaWVzLmxlbmd0aDtlKyspe2xldCBuPXQuc2VyaWVzW2VdLGk9Yz9mLnByaXNtSW50ZXJ2YWwoZSxqLCExKTphLHY9VG8obSxnLGM/MDplLGM/MTpqLHN8fGMpO2ZvcihsZXQgYT0wO2E8aDthKyspe2lmKCF4KGUsYSkpY29udGludWU7bGV0IGM9UyhlLGEpLGY9RmIodCxuLE5bZV0uZ2V0KGEpLGEsZSksZz1mLmZpbGw9PT1udWxsP2B0cmFuc3BhcmVudGA6Zi5jb2xvcix5PWYubGluZUZpbGwhPT1udWxsJiYoZi5saW5lQ29sb3IhPW51bGx8fGYubGluZUZpbGwhPT12b2lkIDApLEM9cz9jPj0wP3VbYV06ZFthXTowLHc9TWIoQyxjKTtzJiYoYz49MD91W2FdPXc6ZFthXT13KTtsZXQgVD1rKEMpLEU9ayh3KSxEPW4udGhyZWVEU2hhcGU/P3QudGhyZWVELnNoYXBlPz9gYm94YCxqPUQ9PT1gY29uZWB8fEQ9PT1gcHlyYW1pZGAsTT1EPT09YGNvbmVUb01heGB8fEQ9PT1gcHlyYW1pZFRvTWF4YCxQPWU9PntpZighailyZXR1cm4gMTtsZXQgdD1iJiYhKEM+MCk/Ty5taW46QyxuPU8uZnJhY3Rpb24odCkscj1PLmZyYWN0aW9uKHcpLGk9Ty5mcmFjdGlvbihlKSxhPXItbjtyZXR1cm4gYT09PTB8fCFOdW1iZXIuaXNGaW5pdGUoYSl8fCFOdW1iZXIuaXNGaW5pdGUoaS1uKT8rKGU9PT10KTpNYXRoLm1heCgwLE1hdGgubWluKDEsMS0oaS1uKS9hKSl9LEY9ZT0+e2lmKCFNKXJldHVybiAxO2xldCB0PXc+PUM/Ty5tYXg6Ty5taW4sbj1iP08ubWluOjAscj1PLmZyYWN0aW9uKHQpLGk9Ty5mcmFjdGlvbihuKSxhPU8uZnJhY3Rpb24oZSksbz1NYXRoLmFicyhyLWkpO3JldHVybiEobz4wKXx8IVtyLGksYV0uZXZlcnkoTnVtYmVyLmlzRmluaXRlKT9FbyhlLE8ubWluLE8ubWF4KTpNYXRoLm1heCgwLE1hdGgubWluKDEsTWF0aC5hYnMoci1hKS9vKSl9LEk9TT9GKFQpOlAoVCksTD1NP0YoRSk6UChFKTtpZihvKXtsZXQgdD1BLngrTy5mcmFjdGlvbihUKSpBLncsbj1BLngrTy5mcmFjdGlvbihFKSpBLncsbz1fP2gtMS1hOmEscz1BLnkrbyptK3Yub2Zmc2V0O2wucHVzaCh7eDpNYXRoLm1pbih0LG4pLHk6cyx3aWR0aDpNYXRoLmFicyhuLXQpLGhlaWdodDp2LnNpemUsbmVhckRlcHRoOmkubmVhcixmYXJEZXB0aDppLmZhcixjYXRlZ29yeUluZGV4OmEsc2VyaWVzSW5kZXg6ZSxjb2xvcjpnLGZpbGxQYWludDpmLmZpbGwsbGluZUZpbGw6Zi5saW5lRmlsbCxzaGFwZTpELGJhc2VDb29yZDp0LGVuZENvb3JkOm4sYmFzZVNjYWxlOkksZW5kU2NhbGU6TCxvbWl0QmFzZUNhcDohMSxvbWl0RW5kQ2FwOiExLG91dGxpbmU6eSxvdXRsaW5lQ29sb3I6Zi5saW5lQ29sb3I/P2ByZ2JhKDAsMCwwLDAuNDIpYCxvdXRsaW5lV2lkdGg6Zi5saW5lV2lkdGhFbXU9PW51bGw/Ljc1KnIvdXQ6RGIoZi5saW5lV2lkdGhFbXUsciksb3V0bGluZURhc2g6Zi5saW5lRGFzaD8/YHNvbGlkYCxvdXRsaW5lQ3VzdG9tRGFzaDpmLmxpbmVDdXN0b21EYXNoLG91dGxpbmVDYXA6Zi5saW5lQ2FwLG91dGxpbmVKb2luOmYubGluZUpvaW4sbGFiZWxWYWx1ZTpwP2MvMTAwOmMscGxvdHRlZExhYmVsVmFsdWU6d30pfWVsc2V7bGV0IHQ9QS55K0EuaC1PLmZyYWN0aW9uKFQpKkEuaCxuPUEueStBLmgtTy5mcmFjdGlvbihFKSpBLmgsbz1fP2gtMS1hOmEscz1BLngrbyptK3Yub2Zmc2V0O2wucHVzaCh7eDpzLHk6TWF0aC5taW4odCxuKSx3aWR0aDp2LnNpemUsaGVpZ2h0Ok1hdGguYWJzKG4tdCksbmVhckRlcHRoOmkubmVhcixmYXJEZXB0aDppLmZhcixjYXRlZ29yeUluZGV4OmEsc2VyaWVzSW5kZXg6ZSxjb2xvcjpnLGZpbGxQYWludDpmLmZpbGwsbGluZUZpbGw6Zi5saW5lRmlsbCxzaGFwZTpELGJhc2VDb29yZDp0LGVuZENvb3JkOm4sYmFzZVNjYWxlOkksZW5kU2NhbGU6TCxvbWl0QmFzZUNhcDohMSxvbWl0RW5kQ2FwOiExLG91dGxpbmU6eSxvdXRsaW5lQ29sb3I6Zi5saW5lQ29sb3I/P2ByZ2JhKDAsMCwwLDAuNDIpYCxvdXRsaW5lV2lkdGg6Zi5saW5lV2lkdGhFbXU9PW51bGw/Ljc1KnIvdXQ6RGIoZi5saW5lV2lkdGhFbXUsciksb3V0bGluZURhc2g6Zi5saW5lRGFzaD8/YHNvbGlkYCxvdXRsaW5lQ3VzdG9tRGFzaDpmLmxpbmVDdXN0b21EYXNoLG91dGxpbmVDYXA6Zi5saW5lQ2FwLG91dGxpbmVKb2luOmYubGluZUpvaW4sbGFiZWxWYWx1ZTpwP2MvMTAwOmMscGxvdHRlZExhYmVsVmFsdWU6d30pfX19aWYocyl7bGV0IGU9T2IobCxoKTtmb3IobGV0IHQ9MDt0PGg7dCsrKXtsZXQgbj1lW3RdO2ZvcihsZXQgZSBvZlstMSwxXSl7bGV0IHQ9bi5maWx0ZXIodD0+TWF0aC5zaWduKHQubGFiZWxWYWx1ZSk9PT1lJiYhTXgodC5jb2xvcikmJk1hdGguYWJzKHQuZW5kQ29vcmQtdC5iYXNlQ29vcmQpPjFlLTkpLnNvcnQoKGUsdCk9PmUuc2VyaWVzSW5kZXgtdC5zZXJpZXNJbmRleCk7Zm9yKGxldCBlPTA7ZSsxPHQubGVuZ3RoO2UrKyl7bGV0IG49dFtlXSxyPXRbZSsxXSxpPTFlLTgqTWF0aC5tYXgoMSxNYXRoLmFicyhuLmVuZENvb3JkKSxNYXRoLmFicyhyLmJhc2VDb29yZCkpO24uc2hhcGUhPT1yLnNoYXBlfHxNYXRoLmFicyhuLmVuZENvb3JkLXIuYmFzZUNvb3JkKT5pfHxNYXRoLmFicyhuLmVuZFNjYWxlLXIuYmFzZVNjYWxlKT4xZS05fHxuLm5lYXJEZXB0aCE9PXIubmVhckRlcHRofHxuLmZhckRlcHRoIT09ci5mYXJEZXB0aHx8KG4ub21pdEVuZENhcD0hMCxyLm9taXRCYXNlQ2FwPSEwKX19bGV0IHI9bi5maW5kKGU9PmUubGFiZWxWYWx1ZT4wJiYhTXgoZS5jb2xvcikpLGk9bi5maW5kKGU9PmUubGFiZWxWYWx1ZTwwJiYhTXgoZS5jb2xvcikpO2lmKHImJmkpe2xldCBlPTFlLTgqTWF0aC5tYXgoMSxNYXRoLmFicyhyLmJhc2VDb29yZCksTWF0aC5hYnMoaS5iYXNlQ29vcmQpKTtyLnNoYXBlPT09aS5zaGFwZSYmTWF0aC5hYnMoci5iYXNlQ29vcmQtaS5iYXNlQ29vcmQpPD1lJiZNYXRoLmFicyhyLmJhc2VTY2FsZS1pLmJhc2VTY2FsZSk8PTFlLTkmJnIubmVhckRlcHRoPT09aS5uZWFyRGVwdGgmJnIuZmFyRGVwdGg9PT1pLmZhckRlcHRoJiYoci5vbWl0QmFzZUNhcD0hMCxpLm9taXRCYXNlQ2FwPSEwKX19fWR4KGUsdCxmLE8sbz9gaG9yaXpvbnRhbGA6YHZlcnRpY2FsYCxoLHYsXyxyKTtsZXQgeT17cmVtYWluaW5nOmxiLGV4Y2VlZGVkOiExfSxDPWwuZmxhdE1hcCh0PT57bGV0IG49VmIoZix0LnNoYXBlLG8sdC54LHQueSx0LndpZHRoLHQuaGVpZ2h0LHQuYmFzZUNvb3JkLHQuZW5kQ29vcmQsdC5uZWFyRGVwdGgsdC5mYXJEZXB0aCx0LmNvbG9yLHQuYmFzZVNjYWxlLHQuZW5kU2NhbGUsdC5vbWl0QmFzZUNhcCx0Lm9taXRFbmRDYXAsdC5vdXRsaW5lJiZ0Lm91dGxpbmVDb2xvcj97Y29sb3I6dC5vdXRsaW5lQ29sb3Isd2lkdGg6dC5vdXRsaW5lV2lkdGgsZGFzaDpacih0Lm91dGxpbmVDdXN0b21EYXNoLHQub3V0bGluZURhc2gsdC5vdXRsaW5lV2lkdGgpLGNhcDp0Lm91dGxpbmVDYXAsam9pbjp0Lm91dGxpbmVKb2lufTp2b2lkIDAseSk7cmV0dXJuIEdiKGUsbixgZmlsbGAsdC5maWxsUGFpbnQsaSksR2IoZSxuLGBvdXRsaW5lYCx0LmxpbmVGaWxsLGkpLG59KTtpZih5LmV4Y2VlZGVkKXJldHVybiBLYihlLG4pLCEwO2ZvcihsZXQgdCBvZiBlYihDKSlXYihlLHQpO2ZvcihsZXQgYSBvZiBsKXtsZXQgcz10LnNlcmllc1thLnNlcmllc0luZGV4XSxjPW8/Zi5wcm9qZWN0KGEuZW5kQ29vcmQsYS55K2EuaGVpZ2h0LzIsKGEubmVhckRlcHRoK2EuZmFyRGVwdGgpLzIpOmYucHJvamVjdChhLngrYS53aWR0aC8yLGEuZW5kQ29vcmQsKGEubmVhckRlcHRoK2EuZmFyRGVwdGgpLzIpLGw9UFthLnNlcmllc0luZGV4XS5nZXQoYS5jYXRlZ29yeUluZGV4KTtaYih0LHMsbCkmJk0ucHVzaCgoKT0+WGIoZSx0LHMsYS5zZXJpZXNJbmRleCxhLmNhdGVnb3J5SW5kZXgsYS5sYWJlbFZhbHVlLGMsbixyLDAsdm9pZCAwLGwsYHRgLGMsITAsdC52YWxBeGlzRGlzcGxheVVuaXRzLE8ubWF4LGEucGxvdHRlZExhYmVsVmFsdWUsaSkpfX1lbHNle2xldCBhPXQuc2VyaWVzLm1hcCgoKT0+QXJyYXkoaCkuZmlsbCgwKSksbz10LnNlcmllcy5tYXAoKCk9PkFycmF5KGgpLmZpbGwoMCkpO2lmKHMpe2xldCBlPUFycmF5KGgpLmZpbGwoMCksbj1BcnJheShoKS5maWxsKDApO2ZvcihsZXQgcj0wO3I8dC5zZXJpZXMubGVuZ3RoO3IrKylmb3IobGV0IHQ9MDt0PGg7dCsrKXtsZXQgaT1TKHIsdCkscz1pPj0wP2VbdF06blt0XTthW3JdW3RdPXMsb1tyXVt0XT1NYihzLGkpLGk+PTA/ZVt0XT1NYihlW3RdLGkpOm5bdF09TWIoblt0XSxpKX19bGV0IGM9ZT0+e2xldCB0PWYuc2VyaWVzRGVwdGgoZSxqLHMpLG49MCxyPTA7Zm9yKGxldCBpPTA7aTxoO2krKyl7aWYoIXgoZSxpKSljb250aW51ZTtsZXQgYT1zP29bZV1baV06UyhlLGkpLGM9QS54K0N0KGksaCx2LF8pKkEudyxsPUEueStBLmgtTy5mcmFjdGlvbihrKGEpKSpBLmg7bis9Zi5jYW1lcmFEZXB0aChjLGwsdCkscisrfXJldHVybiByPjA/bi9yOi0xLzB9LGw9dC5zZXJpZXMubWFwKChlLHQpPT50KS5zb3J0KChlLHQpPT5jKGUpLWModCl8fHQtZSksdT10LnNlcmllcy5tYXAoKGUsbik9PkZiKHQsZSx2b2lkIDAsbixuKSksZD1bXSxtPVtdLGc9ITE7Zm9yKGxldCBjIG9mIGwpe2lmKGcpYnJlYWs7bGV0IGw9dC5zZXJpZXNbY10sYj11W2NdLEM9Yi5maWxsPT09bnVsbD9gdHJhbnNwYXJlbnRgOmIuY29sb3Isdz1zP2YucHJpc21JbnRlcnZhbCgwLDEsITApOmYucHJpc21JbnRlcnZhbChjLGosITEpLFQ9QS54K0Eudy8yLEU9QS55K0EuaC8yLEQ9Zi5jYW1lcmFEZXB0aChULEUsdy5uZWFyKT49Zi5jYW1lcmFEZXB0aChULEUsdy5mYXIpP3cubmVhcjp3LmZhcixrPVtdLEY9W10sST1bXSxMPVtdLFI9W10sej1bXSxCPVtdLGVlPVtdLFY9W10sSD1bXTtmb3IobGV0IGU9MDtlPGg7ZSsrKXtpZigheChjLGUpKXtrLnB1c2gobnVsbCksRi5wdXNoKG51bGwpLEkucHVzaChudWxsKSxMLnB1c2gobnVsbCksUi5wdXNoKG51bGwpLHoucHVzaChudWxsKSxCLnB1c2gobnVsbCksZWUucHVzaChudWxsKSxWLnB1c2gobnVsbCksSC5wdXNoKG51bGwpO2NvbnRpbnVlfWxldCBuPXM/b1tjXVtlXTpTKGMsZSkscj1zP2FbY11bZV06MCxpPUEueCtDdChlLGgsdixfKSpBLncsbD1PLmZyYWN0aW9uKG4pLHU9Ty5mcmFjdGlvbihyKSxkPU51bWJlci5pc0Zpbml0ZSh1KT91OnI8PU8ubWluPzA6MSxwPU51bWJlci5pc0Zpbml0ZShsKSYmbD49MCYmbDw9MSxtPU51bWJlci5pc0Zpbml0ZShsKT9NYXRoLm1heCgwLE1hdGgubWluKDEsbCkpOm48PU8ubWluPzA6MSxnPUEueStBLmgtbSpBLmgseT1BLnkrQS5oLU1hdGgubWF4KDAsTWF0aC5taW4oMSxkKSkqQS5oO2sucHVzaCh0LmNoYXJ0VHlwZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGBhcmVhYCl8fHA/Zi5wcm9qZWN0KGksZyxEKTpudWxsKSxGLnB1c2goZi5wcm9qZWN0KGkseSxEKSksSS5wdXNoKHA/Zi5jYW1lcmFEZXB0aChpLGcsRCk6bnVsbCksTC5wdXNoKGYuY2FtZXJhRGVwdGgoaSx5LEQpKSxSLnB1c2gobiksei5wdXNoKGkpLEIucHVzaChnKSxlZS5wdXNoKHkpLFYucHVzaChsKSxILnB1c2goZCl9bGV0IFU9W10sVz1udWxsO2ZvcihsZXQgZT0wO2U8ay5sZW5ndGg7ZSsrKXtsZXQgdD1rW2VdLG49RltlXTtpZighdHx8IW4pe3k9PT1gZ2FwYCYmKFcmJlUucHVzaChXKSxXPW51bGwpO2NvbnRpbnVlfVc/Pz17dXBwZXI6W10sbG93ZXI6W10sdXBwZXJEZXB0aHM6W10sbG93ZXJEZXB0aHM6W10saW5kaWNlczpbXSxzY2VuZVhzOltdLHVwcGVyWXM6W10sbG93ZXJZczpbXSx1cHBlckZyYWN0aW9uczpbXSxsb3dlckZyYWN0aW9uczpbXX0sVy51cHBlci5wdXNoKHQpLFcubG93ZXIucHVzaChuKSxXLnVwcGVyRGVwdGhzLnB1c2goSVtlXT8/MCksVy5sb3dlckRlcHRocy5wdXNoKExbZV0/PzApLFcuaW5kaWNlcy5wdXNoKGUpLFcuc2NlbmVYcy5wdXNoKHpbZV0/PzApLFcudXBwZXJZcy5wdXNoKEJbZV0/PzApLFcubG93ZXJZcy5wdXNoKGVlW2VdPz8wKSxXLnVwcGVyRnJhY3Rpb25zLnB1c2goVltlXT8/MCksVy5sb3dlckZyYWN0aW9ucy5wdXNoKEhbZV0/PzApfVcmJlUucHVzaChXKTtsZXQgRz1bXSxLPVtdO2lmKHQuY2hhcnRUeXBlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoYGFyZWFgKSl7Zm9yKGxldCB0IG9mIFUpe2xldCBuPW51bGw7Zm9yKGxldCByPTA7cisxPHQudXBwZXIubGVuZ3RoO3IrKyl7bGV0IGk9WnkodC5sb3dlckZyYWN0aW9uc1tyXSx0Lmxvd2VyRnJhY3Rpb25zW3IrMV0sdC51cHBlckZyYWN0aW9uc1tyXSx0LnVwcGVyRnJhY3Rpb25zW3IrMV0pO2ZvcihsZXQgYT0wO2E8aS5sZW5ndGg7YSsrKXtsZXQgbz1pW2FdLHM9dC5zY2VuZVhzW3JdKyh0LnNjZW5lWHNbcisxXS10LnNjZW5lWHNbcl0pKm8uc3RhcnRULGM9dC5zY2VuZVhzW3JdKyh0LnNjZW5lWHNbcisxXS10LnNjZW5lWHNbcl0pKm8uZW5kVCxsPUEueStBLmgtby5sb3dlclN0YXJ0KkEuaCx1PUEueStBLmgtby5sb3dlckVuZCpBLmgscD1BLnkrQS5oLW8udXBwZXJTdGFydCpBLmgsbT1BLnkrQS5oLW8udXBwZXJFbmQqQS5oLGg9ey4uLmYucHJvamVjdChzLHAsRCksY2FtZXJhRGVwdGg6Zi5jYW1lcmFEZXB0aChzLHAsRCksY2FtZXJhV2VpZ2h0OmYuY2FtZXJhUHJvamVjdGlvbldlaWdodChzLHAsRCl9LF89ey4uLmYucHJvamVjdChjLG0sRCksY2FtZXJhRGVwdGg6Zi5jYW1lcmFEZXB0aChjLG0sRCksY2FtZXJhV2VpZ2h0OmYuY2FtZXJhUHJvamVjdGlvbldlaWdodChjLG0sRCl9O24hPW51bGwmJk1hdGguaHlwb3Qobi5hdCgtMSkueC1oLngsbi5hdCgtMSkueS1oLnkpPD0xZS04P24ucHVzaChfKToobiYmbi5sZW5ndGg+PTImJkcucHVzaChuKSxuPVtoLF9dKTtsZXQgdj1CYihmLHMsYyxsLHUscCxtLHcubmVhcix3LmZhcixDLHI9PT0wJiZhPT09MCYmby5zdGFydFQ9PT0wLHIrMj09PXQudXBwZXIubGVuZ3RoJiZhKzE9PT1pLmxlbmd0aCYmby5lbmRUPT09MSk7Zm9yKGxldCB0IG9mIHYpe2lmKGQubGVuZ3RoPj0xZTQpe2c9ITA7YnJlYWt9ZC5wdXNoKHtwb2ludHM6dC5wb2ludHMsY2FtZXJhRGVwdGg6dC5jYW1lcmFEZXB0aCxjYW1lcmFEZXB0aHM6dC5jYW1lcmFEZXB0aHMsY2FtZXJhV2VpZ2h0czp0LmNhbWVyYVdlaWdodHMsbGF5ZXI6MCxwYWludDooKT0+V2IoZSx0KX0pLEsucHVzaCh0KX1pZihnKWJyZWFrfWlmKGcpYnJlYWt9aWYobiYmbi5sZW5ndGg+PTImJkcucHVzaChuKSxnKWJyZWFrfUdiKGUsSyxgZmlsbGAsYi5maWxsLGkpfWxldCB0ZT1bXTtpZighdC5jaGFydFR5cGUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhgYXJlYWApKXtsZXQgZT1bXSx0PW51bGw7Zm9yKGxldCBuPTA7bjxoO24rKyl7bGV0IHI9UltuXSxpPXI9PW51bGw/TmFOOk8uZnJhY3Rpb24ocik7aWYocj09bnVsbHx8IU51bWJlci5pc0Zpbml0ZShpKSl7eT09PWBnYXBgJiZ0JiYoZS5wdXNoKHQpLHQ9bnVsbCk7Y29udGludWV9dD8/PVtdLHQucHVzaCh7eDpBLngrQ3QobixoLHYsXykqQS53LGZyYWN0aW9uOmksb3duZXJJbmRleDpufSl9dCYmZS5wdXNoKHQpO2xldCBuPWU9PntsZXQgdD1NYXRoLm1heCgwLE1hdGgubWluKDEsZS5mcmFjdGlvbikpLG49QS55K0EuaC10KkEuaDtyZXR1cm57Li4uZi5wcm9qZWN0KGUueCxuLEQpLGNhbWVyYURlcHRoOmYuY2FtZXJhRGVwdGgoZS54LG4sRCksY2FtZXJhV2VpZ2h0OmYuY2FtZXJhUHJvamVjdGlvbldlaWdodChlLngsbixEKX19LHI9ZT0+e2UmJmUucGF0aC5sZW5ndGg+PTImJnRlLnB1c2goZSl9O2ZvcihsZXQgdCBvZiBlKXtpZih0Lmxlbmd0aDwyKWNvbnRpbnVlO2xldCBlPVt0WzBdXTtmb3IobGV0IG49MDtuKzE8dC5sZW5ndGg7bisrKXtsZXQgcj10W24tMV0/P3Rbbl0saT10W25dLGE9dFtuKzFdLG89dFtuKzJdPz9hO2lmKGwuc21vb3RoIT09ITB8fHQubGVuZ3RoPDMpe2UucHVzaChhKTtjb250aW51ZX1sZXQgcz17eDppLngrKGEueC1yLngpLzYsZnJhY3Rpb246aS5mcmFjdGlvbisoYS5mcmFjdGlvbi1yLmZyYWN0aW9uKS82fSxjPXt4OmEueC0oby54LWkueCkvNixmcmFjdGlvbjphLmZyYWN0aW9uLShvLmZyYWN0aW9uLWkuZnJhY3Rpb24pLzZ9O2ZvcihsZXQgdD0xO3Q8PTEyO3QrKyl7bGV0IG49dC8xMixyPTEtbjtlLnB1c2goe3g6cipyKnIqaS54KzMqcipyKm4qcy54KzMqcipuKm4qYy54K24qbipuKmEueCxmcmFjdGlvbjpyKnIqcippLmZyYWN0aW9uKzMqcipyKm4qcy5mcmFjdGlvbiszKnIqbipuKmMuZnJhY3Rpb24rbipuKm4qYS5mcmFjdGlvbixvd25lckluZGV4OmEub3duZXJJbmRleH0pfX1sZXQgaT1udWxsLGE9MDtmb3IobGV0IHQ9MDt0KzE8ZS5sZW5ndGg7dCsrKXtsZXQgbz1lW3RdLHM9ZVt0KzFdLGM9ZT0+Zi5wcm9qZWN0KGUueCxBLnkrQS5oLWUuZnJhY3Rpb24qQS5oLEQpLGw9YyhvKSx1PWMocyksZD1NYXRoLmh5cG90KHUueC1sLngsdS55LWwueSkscD1OdW1iZXIuaXNGaW5pdGUoZCk/ZDpNYXRoLmh5cG90KHMueC1vLngsKHMuZnJhY3Rpb24tby5mcmFjdGlvbikqQS5oKSxtPVh5KG8uZnJhY3Rpb24scy5mcmFjdGlvbik7aWYoIW18fG0uZW5kVC1tLnN0YXJ0VDw9MWUtMTIpe3IoaSksaT1udWxsLGErPXA7Y29udGludWV9bGV0IGg9ZT0+KHt4Om8ueCsocy54LW8ueCkqZSxmcmFjdGlvbjpvLmZyYWN0aW9uKyhzLmZyYWN0aW9uLW8uZnJhY3Rpb24pKmUsb3duZXJJbmRleDpzLm93bmVySW5kZXh9KSxnPWMoaChtLnN0YXJ0VCkpLF89TWF0aC5oeXBvdChnLngtbC54LGcueS1sLnkpLHY9bihoKG0uc3RhcnRUKSkseT1uKGgobS5lbmRUKSksYj1oKG0uc3RhcnRUKSx4PWgobS5lbmRUKSxTPWU9Pih7eDplLngseTpBLnkrQS5oLU1hdGgubWF4KDAsTWF0aC5taW4oMSxlLmZyYWN0aW9uKSkqQS5ofSk7aSE9bnVsbCYmTWF0aC5oeXBvdChpLnBhdGguYXQoLTEpLngtdi54LGkucGF0aC5hdCgtMSkueS12LnkpPD0xZS04JiZpLm93bmVySW5kZXg9PT1zLm93bmVySW5kZXg/KGkucGF0aC5wdXNoKHkpLGkubW9kZWxQYXRoLnB1c2goUyh4KSksaS5lbmRDbGlwcGVkPXQrMTxlLmxlbmd0aC0xfHxtLmVuZFQ8MSk6KHIoaSksaT17cGF0aDpbdix5XSxtb2RlbFBhdGg6W1MoYiksUyh4KV0sb3duZXJJbmRleDpzLm93bmVySW5kZXgsc3RhcnRDbGlwcGVkOnQ+MHx8bS5zdGFydFQ+MCxlbmRDbGlwcGVkOnQrMTxlLmxlbmd0aC0xfHxtLmVuZFQ8MSxkYXNoT2Zmc2V0OmErKE51bWJlci5pc0Zpbml0ZShfKT9fOnAqbS5zdGFydFQpfSksYSs9cH1yKGkpfX1sZXQgbmU9dC5jaGFydFR5cGUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhgYXJlYWApLHJlPWwubGluZUhpZGRlbiE9bnVsbHx8bC5saW5lQ29sb3IhPW51bGx8fGwubGluZVdpZHRoRW11IT1udWxsfHxsLmNoYXJ0ZXhTdHlsZT8ubGluZUhpZGRlbiE9bnVsbHx8bC5jaGFydGV4U3R5bGU/LmxpbmVDb2xvcnM/LnNvbWUoQm9vbGVhbil8fGwuY2hhcnRleFN0eWxlPy5saW5lV2lkdGhFbXUhPW51bGx8fGwuY2hhcnRleFN0eWxlPy5saW5lRGFzaCE9bnVsbHx8bC5jaGFydGV4U3R5bGU/LmxpbmVDYXAhPW51bGx8fGwuY2hhcnRleFN0eWxlPy5saW5lSm9pbiE9bnVsbHx8Yi5saW5lQ29sb3IhPW51bGx8fGIubGluZUZpbGwhPT12b2lkIDA7aWYoIW5lfHxiLmxpbmVGaWxsIT09bnVsbCYmcmUpe2xldCBuPW5ldyBNYXAsYT1lPT57bGV0IHI9TltjXS5nZXQoZSk7aWYoIUliKHIpKXJldHVybiBiO2xldCBpPW4uZ2V0KGUpO3JldHVybiBpfHwoaT1GYih0LGwscixlLGMpLG4uc2V0KGUsaSkpLGl9LG89bmV3IE1hcCxzPXtyZW1haW5pbmc6bGIsZXhjZWVkZWQ6ITF9LHU9KHQsbixpLGE9aSxjPTAsbCk9PntpZihuLmxpbmVGaWxsPT09bnVsbClyZXR1cm47bGV0IHU9bj09PWI/QzpuLmNvbG9yLHA9bi5saW5lQ29sb3I/P3ZvKHUsLjcpLG09bi5saW5lV2lkdGhFbXU/TWF0aC5tYXgoLjUsbi5saW5lV2lkdGhFbXUvY3QpKnI6bmU/Ljc1KnI6TWF0aC5tYXgoMSwyKnIpLGg9e3dpZHRoOm0sZGFzaDpacihuLmxpbmVDdXN0b21EYXNoLG4ubGluZURhc2gsbSksZGFzaE9mZnNldDpjLGxpbmVDYXA6bi5saW5lQ2FwLHN0YXJ0Q2FwOmksZW5kQ2FwOmEsbGluZUpvaW46bi5saW5lSm9pbn07aWYoIW5lJiZsJiZsLmxlbmd0aD49Mil7bGV0IHQ9c2IobC5tYXAoZT0+KHsuLi5lLGNhbWVyYURlcHRoOjAsY2FtZXJhV2VpZ2h0OjF9KSksaCk7aWYodD09bnVsbCl7Zz0hMDtyZXR1cm59bGV0IHI9by5nZXQobik/P1tdO2ZvcihsZXQgbiBvZiB0KXtsZXQgdD1LeSh7b3V0bGluZTpuLnBvaW50cyxuZWFyRGVwdGg6dy5uZWFyLGZhckRlcHRoOncuZmFyfSk7aWYoIXQpY29udGludWU7bGV0IGk9SGIoZix0LHAsdm9pZCAwLHMpLm1hcChlPT4oey4uLmUscGFpbnRSb2xlOmBvdXRsaW5lYH0pKTtpZihzLmV4Y2VlZGVkKXtnPSEwO3JldHVybn1yLnB1c2goLi4uaSk7Zm9yKGxldCB0IG9mIGkpZC5wdXNoKHtwb2ludHM6dC5wb2ludHMsY2FtZXJhRGVwdGg6dC5jYW1lcmFEZXB0aCxjYW1lcmFEZXB0aHM6dC5jYW1lcmFEZXB0aHMsY2FtZXJhV2VpZ2h0czp0LmNhbWVyYVdlaWdodHMsbGF5ZXI6MSxwYWludDooKT0+V2IoZSx0KX0pfW8uc2V0KG4scik7cmV0dXJufWxldCBfPXNiKHQsaCk7aWYoXz09bnVsbCl7Zz0hMDtyZXR1cm59aWYoZC5sZW5ndGgrXy5sZW5ndGg+MWU0KXtnPSEwO3JldHVybn1mb3IobGV0IHQgb2YgXyl7bGV0IHI9e3BvaW50czp0LnBvaW50cyxjb2xvcjpwLHBhaW50Um9sZTpgb3V0bGluZWAsc2hhZGU6MCxjYW1lcmFEZXB0aDp0LmNhbWVyYURlcHRoLGNhbWVyYURlcHRoczp0LmNhbWVyYURlcHRocyxjYW1lcmFXZWlnaHRzOnQuY2FtZXJhV2VpZ2h0cyxvdXRsaW5lOiExfSxpPW8uZ2V0KG4pPz9bXTtpLnB1c2gociksby5zZXQobixpKSxkLnB1c2goe3BvaW50czp0LnBvaW50cyxjYW1lcmFEZXB0aDp0LmNhbWVyYURlcHRoLGNhbWVyYURlcHRoczp0LmNhbWVyYURlcHRocyxjYW1lcmFXZWlnaHRzOnQuY2FtZXJhV2VpZ2h0cyxsYXllcjoxLHBhaW50OigpPT5XYihlLHIpfSl9fTtpZihuZSlmb3IobGV0IGUgb2YgRyl1KGUsYixiLmxpbmVDYXApO2Vsc2UgZm9yKGxldCBlIG9mIHRlKXtsZXQgdD1hKGUub3duZXJJbmRleCk7dShlLnBhdGgsdCxlLnN0YXJ0Q2xpcHBlZD9gYnV0dGA6dC5saW5lQ2FwLGUuZW5kQ2xpcHBlZD9gYnV0dGA6dC5saW5lQ2FwLGUuZGFzaE9mZnNldCxlLm1vZGVsUGF0aCl9Zm9yKGxldFt0LG5db2YgbylHYihlLG4sYG91dGxpbmVgLHQubGluZUZpbGwsaSl9bGV0IGllPShuZT9sLnNob3dNYXJrZXI9PT0hMHx8eG4obCk6bC5zaG93TWFya2VyPT09ITApJiZsLm1hcmtlclN5bWJvbCE9PWBub25lYDtpZigodC5jaGFydFR5cGUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhgbGluZWApfHxuZSkmJihpZXx8a24obCkpKWZvcihsZXQgdD0wO3Q8ay5sZW5ndGg7dCsrKXtsZXQgbj1rW3RdO2lmKCFuKWNvbnRpbnVlO2xldCBhPU5bY10uZ2V0KHQpLG89TW4obCxhLGBjaXJjbGVgLGllKTtpZihvPT09YG5vbmVgKWNvbnRpbnVlO2xldCBzPWE/Lm1hcmtlclNpemU/P2wubWFya2VyU2l6ZT8/NSx1PVBuKGwsYSx0LGwuY29sb3I/P3d4W2Mld3gubGVuZ3RoXSksZD1ObihsLGEsdCksZj1hPy5tYXJrZXJMaW5lPz9sLm1hcmtlckxpbmU/P2wubGluZUNvbG9yPz9sLmNvbG9yPz93eFtjJXd4Lmxlbmd0aF0scD0oYT8ubWFya2VyTGluZVdpZHRoRW11Pz9sLm1hcmtlckxpbmVXaWR0aEVtdSk9PW51bGw/TWF0aC5tYXgoLjc1LGwubGluZVdpZHRoRW11PT1udWxsP3I6bC5saW5lV2lkdGhFbXUvY3Qqcik6TWF0aC5tYXgoLjI1LChhPy5tYXJrZXJMaW5lV2lkdGhFbXU/P2wubWFya2VyTGluZVdpZHRoRW11Pz8wKS9jdCpyKTttLnB1c2goKCk9PlliKGUsbixvLE1hdGgubWF4KDIscykqcix1PT09YDAwMDAwMDAwYD9gdHJhbnNwYXJlbnRgOmAjJHt1fWAsYCMke2Z9YCxwLGQsaSxyKSl9Zm9yKGxldCBhPTA7YTxrLmxlbmd0aDthKyspe2xldCB1PWtbYV07aWYoIXUpY29udGludWU7bGV0IGQ9UyhjLGEpLGY9TltjXS5nZXQoYSksbT1mPy5tYXJrZXJTaXplPz9sLm1hcmtlclNpemU/PzUsaD1QW2NdLmdldChhKTtaYih0LGwsaCkmJk0ucHVzaCgoKT0+WGIoZSx0LGwsYyxhLHA/ZC8xMDA6ZCx1LG4scixsLnNob3dNYXJrZXI9PT0hMHx8Zj8ubWFya2VyU3ltYm9sIT1udWxsP20qci8yOjAsdm9pZCAwLGgsYHRgLHUsITAsdC52YWxBeGlzRGlzcGxheVVuaXRzLE8ubWF4LHM/b1tjXVthXTpkLGkpKX19aWYoZylyZXR1cm4gS2IoZSxuKSwhMDtmb3IobGV0IGUgb2YgZWIoZCkpZS5wYWludCgpO2ZvcihsZXQgZSBvZiBtKWUoKX1meChlLHQsZixPLGgsdixfLHIsbz9gaG9yaXpvbnRhbGA6YHZlcnRpY2FsYCkseXgoZSx0LGYsTyxoLHYsXyxvP2Bob3Jpem9udGFsYDpgdmVydGljYWxgLGEsciksdHgoZSx0LG4sZixPLGgsdixfLG8/YGhvcml6b250YWxgOmB2ZXJ0aWNhbGAsYSxyKTtsZXQgRj12eCh0LGYsTyxoLHYsXyxvP2Bob3Jpem9udGFsYDpgdmVydGljYWxgKSxJPShlLHQpPT57aWYodCE9PWBsb3dgJiZ0IT09YGhpZ2hgKXJldHVybiBGO2xldCBuPWYudG9wb2xvZ3kubmVhckRlcHRoLHI9Ri5heGlzWCxpPUYuYXhpc1k7aWYoZT09PWB2YWx1ZWA9PT1vKXtsZXQgZT1BLnkscj1BLnkrQS5oLGE9Zi5wcm9qZWN0KEEueCtBLncvMixlLG4pLG89Zi5wcm9qZWN0KEEueCtBLncvMixyLG4pLHM9YS55Pj1vLnk/ZTpyO2k9dD09PWBsb3dgP3M6cz09PWU/cjplfWVsc2V7bGV0IGU9QS54LGk9QS54K0EudyxhPWYucHJvamVjdChlLEEueStBLmgvMixuKSxvPWYucHJvamVjdChpLEEueStBLmgvMixuKSxzPWEueDw9by54P2U6aTtyPXQ9PT1gbG93YD9zOnM9PT1lP2k6ZX1yZXR1cm57YXhpc1g6cixheGlzWTppLGRlcHRoOm4saG9yaXpvbnRhbFN0YXJ0OmYucHJvamVjdChBLngsaSxuKSxob3Jpem9udGFsRW5kOmYucHJvamVjdChBLngrQS53LGksbiksdmVydGljYWxTdGFydDpmLnByb2plY3QocixBLnkrQS5oLG4pLHZlcnRpY2FsRW5kOmYucHJvamVjdChyLEEueSxuKX19LEw9SShgdmFsdWVgLHQudmFsQXhpc1RpY2tMYWJlbFBvcyksUj1JKGBjYXRlZ29yeWAsdC5jYXRBeGlzVGlja0xhYmVsUG9zKSx6PUF0KHQudmFsQXhpc0ZvbnRTaXplSHB0LHIpPz85KnI7aWYoZS5mb250PWAke3QudmFsQXhpc0ZvbnRJdGFsaWM/YGl0YWxpYyBgOmBgfSR7dC52YWxBeGlzRm9udEJvbGQ/YGJvbGQgYDpgYH0ke3p9cHggJHtBeCh0LnZhbEF4aXNGb250RmFjZSl9YCxlLmZpbGxTdHlsZT10LnZhbEF4aXNGb250Q29sb3I/YCMke3QudmFsQXhpc0ZvbnRDb2xvcn1gOmAjNTk1OTU5YCxlLnRleHRBbGlnbj1vP2BjZW50ZXJgOmByaWdodGAsZS50ZXh0QmFzZWxpbmU9bz9gdG9wYDpgbWlkZGxlYCwhdC52YWxBeGlzSGlkZGVuJiZ0LnZhbEF4aXNUaWNrTGFiZWxQb3MhPT1gbm9uZWApe2xldHtheGlzWDpuLGF4aXNZOmksZGVwdGg6YX09TCxzPWYucHJvamVjdChBLngrQS53LzIsQS55K0EuaC8yLGEpLGM9cHgobz9MLmhvcml6b250YWxTdGFydDpMLnZlcnRpY2FsU3RhcnQsbz9MLmhvcml6b250YWxFbmQ6TC52ZXJ0aWNhbEVuZCxzLG8/YHZlcnRpY2FsYDpgaG9yaXpvbnRhbGApO2UudGV4dEFsaWduPU1hdGguYWJzKGMueCk8LjI/YGNlbnRlcmA6Yy54PDA/YHJpZ2h0YDpgbGVmdGAsZS50ZXh0QmFzZWxpbmU9TWF0aC5hYnMoYy55KTwuMj9gbWlkZGxlYDpjLnk8MD9gYm90dG9tYDpgdG9wYDtsZXQgbD1feCh0LnZhbEF4aXNNYWpvclRpY2tNYXJrLHQudmFsQXhpc0xpbmVIaWRkZW4sciw1KSx1PXQudmFsQXhpc0Rpc3BsYXlVbml0cz8uZGl2aXNvcjtmb3IobGV0IHIgb2YgTy5tYWpvclRpY2tzKXtsZXQgcz1vP2YucHJvamVjdChBLngrTy5mcmFjdGlvbihyKSpBLncsaSxhKTpmLnByb2plY3QobixBLnkrQS5oLU8uZnJhY3Rpb24ocikqQS5oLGEpO2UuZmlsbFRleHQoYmEocD9yLzEwMDp1IT1udWxsJiZOdW1iZXIuaXNGaW5pdGUodSkmJnU+MD9yL3U6cixwP3QudmFsQXhpc0Zvcm1hdENvZGU/P2AwJWA6dC52YWxBeGlzRm9ybWF0Q29kZSx0LmRhdGUxOTA0KSxzLngrYy54Kmwscy55K2MueSpsKX19bGV0IEI9QXQodC5jYXRBeGlzRm9udFNpemVIcHQscik/PzkqcjtpZihlLmZvbnQ9YCR7dC5jYXRBeGlzRm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHt0LmNhdEF4aXNGb250Qm9sZD9gYm9sZCBgOmBgfSR7Qn1weCAke0F4KHQuY2F0QXhpc0ZvbnRGYWNlKX1gLGUuZmlsbFN0eWxlPXQuY2F0QXhpc0ZvbnRDb2xvcj9gIyR7dC5jYXRBeGlzRm9udENvbG9yfWA6YCM1OTU5NTlgLCF0LmNhdEF4aXNIaWRkZW4mJnQuY2F0QXhpc1RpY2tMYWJlbFBvcyE9PWBub25lYCl7bGV0IG49U3QoX3godC5jYXRBeGlzTWFqb3JUaWNrTWFyayx0LmNhdEF4aXNMaW5lSGlkZGVuLHIsNiksdC5jYXRBeGlzTGFiZWxPZmZzZXRQZXJjZW50KSxpPUFycmF5LmZyb20oe2xlbmd0aDpofSwoZSxuKT0+eGEoU3RyaW5nKG1bbl0/P24rMSksdC5jYXRBeGlzRm9ybWF0Q29kZSx0LmRhdGUxOTA0KSksYT1xYih0KTtpZihhPT1udWxsJiYoYT0wLCFvJiZoPjEpKXtsZXQgdD0xLzAsbj1udWxsLHI9Ui5heGlzWTtmb3IobGV0IGU9MDtlPGg7ZSsrKXtsZXQgaT1DdChlLGgsdixfKSxhPWYucHJvamVjdChBLngraSpBLncscixmLnRvcG9sb2d5Lm5lYXJEZXB0aCk7biYmKHQ9TWF0aC5taW4odCxNYXRoLmh5cG90KGEueC1uLngsYS55LW4ueSkpKSxuPWF9TWF0aC5tYXgoMCwuLi5pLm1hcCh0PT5lLm1lYXN1cmVUZXh0KHQpLndpZHRoKSk+dCouOSYmKGE9LU1hdGguUEkvNCl9bGV0IHM9TWF0aC5tYXgoMSxNYXRoLmZsb29yKHQuY2F0QXhpc1RpY2tMYWJlbFNraXA/PzEpKTtmb3IobGV0IHQ9MDt0PGg7dCs9cyl7bGV0IHI9Q3QodCxoLHYsXykse2F4aXNYOnMsYXhpc1k6YyxkZXB0aDpsfT1SLHU9bz9mLnByb2plY3QocyxBLnkrQ3QodCxoLHYsXykqQS5oLGwpOmYucHJvamVjdChBLngrcipBLncsYyxsKTtpZihvKXtsZXQgcj1mLnByb2plY3QocyxBLnkrQS5oLzIsbCksYT1mLnByb2plY3QoQS54K0Eudy8yLEEueStBLmgvMixsKSxvPXIueDw9YS54O2UudGV4dEFsaWduPW8/YHJpZ2h0YDpgbGVmdGAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWAsZS5maWxsVGV4dChpW3RdLHUueCsobz8tbjpuKSx1LnkpfWVsc2V7bGV0IHI9Zi5wcm9qZWN0KEEueCtBLncvMixBLnkrQS5oLzIsbCkscz1weChSLmhvcml6b250YWxTdGFydCxSLmhvcml6b250YWxFbmQscixgdmVydGljYWxgKTtKYihlLGlbdF0sdSxhLG8scy55PDA/LTE6MSxuKX19fWV4KGUsdCxuLGwsbyxyKTtmb3IobGV0IGUgb2YgTSllKCk7cmV0dXJuIHJ4KGUsdCx1LHIsITEsZCxpKSwhMH1mdW5jdGlvbiB4eChlLHQsbixyLGkpe2lmKCF0LnRocmVlRHx8dC5jaGFydFR5cGUhPT1gcGllYClyZXR1cm4hMTtsZXQgYT10LnNlcmllc1swXTtpZighYSlyZXR1cm4hMDtsZXQgbz1hLnZhbHVlcy5mbGF0TWFwKChlLHQpPT5lIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUoZSk/W3tpbmRleDp0LHZhbHVlOk1hdGguYWJzKGUpfV06W10pLHM9MDtmb3IobGV0IGUgb2YgbylzPU1hdGgubWF4KHMsZS52YWx1ZSk7aWYoIShzPjApKXJldHVybiEwO2xldCBjPW8ucmVkdWNlKChlLHQpPT5lK3QudmFsdWUvcywwKTtpZighKGM+MCl8fCFOdW1iZXIuaXNGaW5pdGUoYykpcmV0dXJuITA7bGV0e3Bsb3Q6bCxsZWdlbmQ6dSxsZWdlbmRNZWFzdXJlOmR9PVFiKGUsdCxuLHIsYHJhZGlhbGAsaSksZj1Obyh7Li4udC50aHJlZUQscm90YXRpb25ZOnQudGhyZWVELnJvdGF0aW9uWT8/MCxoZWlnaHRQZXJjZW50OnZvaWQgMCxkZXB0aFBlcmNlbnQ6MTAwfSxsLHtzY2VuZURlcHRoU2NhbGU6MSxzY2VuZUhlaWdodFNjYWxlOi4xNX0pO2lmKCFmKXJldHVybiEwO2xldCBwPW5ldyBNYXAoYS5kYXRhUG9pbnRPdmVycmlkZXM/Lm1hcChlPT5bZS5pZHgsZV0pPz9bXSksbT0wO2ZvcihsZXQgZSBvZiBwLnZhbHVlcygpKWUuZXhwbG9zaW9uIT1udWxsJiZOdW1iZXIuaXNGaW5pdGUoZS5leHBsb3Npb24pJiYobT1NYXRoLm1heChtLE1hdGgubWF4KDAsTWF0aC5taW4oMTAwLGUuZXhwbG9zaW9uKSkvMTAwKSk7bGV0e3NjZW5lOmh9PWYsZz1NYXRoLm1pbihoLncqLjQ1LygxK20pLGYubW9kZWxEZXB0aCouNDUvKDErbSksaC5oLy40NSk7aWYoIShnPjApKXJldHVybiEwO2xldCBfPWgueCtoLncvMix2PWgueStoLmgvMix5PS41LGI9ZyouMypEbyh0LnRocmVlRCkseD0wLFM9W10sQz1uZXcgTWFwKGEuZGF0YUxhYmVsT3ZlcnJpZGVzPy5tYXAoZT0+W2UuaWR4LGVdKT8/W10pLHc9TWF0aC5tYXgoNDgsTWF0aC5taW4oMTI4LE1hdGguY2VpbChNYXRoLlBJKjIqZy80KSkpO2ZvcihsZXQgZSBvZiBvKXtsZXQgbj1lLnZhbHVlL3MvYyxyPWF4KHQuZmlyc3RTbGljZUFuZ2xlLHgsbiksaT1wLmdldChlLmluZGV4KSxvPUZiKHQsYSxpLGUuaW5kZXgsMCksbD1yLm1pZGRsZSx1PWk/LmV4cGxvc2lvbiE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGkuZXhwbG9zaW9uKT9NYXRoLm1heCgwLE1hdGgubWluKDEwMCxpLmV4cGxvc2lvbikpLzEwMDowLGQ9XytNYXRoLmNvcyhsKSpnKnUsbT15K01hdGguc2luKGwpKmcqdS9mLm1vZGVsRGVwdGgsaD1NYXRoLm1heCgyLE1hdGguY2VpbCh3Km4pKSxDPXF5KHtjZW50ZXJYOmQsY2VudGVyWTp2LGNlbnRlckRlcHRoOm0scmFkaXVzOmcsbW9kZWxEZXB0aDpmLm1vZGVsRGVwdGgsdGhpY2tuZXNzOmIsc3RhcnRBbmdsZTpyLnN0YXJ0LGVuZEFuZ2xlOnIuZW5kLHNlZ21lbnRzOmh9KTtpZighQyl7eCs9bjtjb250aW51ZX1TLnB1c2goe2luZGV4OmUuaW5kZXgsc3RhcnQ6ci5zdGFydCxlbmQ6ci5lbmQsY29sb3I6by5maWxsPT09bnVsbD9gdHJhbnNwYXJlbnRgOm8uY29sb3IsZmlsbFBhaW50Om8uZmlsbCx2YWx1ZTplLnZhbHVlLHBlcmNlbnRWYWx1ZTpuLGNlbnRlclg6ZCxjZW50ZXJEZXB0aDptLHNlZ21lbnRzOmgsbWVzaDpDLGxpbmVDb2xvcjpvLmxpbmVDb2xvcixsaW5lRmlsbDpvLmxpbmVGaWxsLGxpbmVXaWR0aEVtdTpvLmxpbmVXaWR0aEVtdT8/bnVsbCxsaW5lRGFzaDpvLmxpbmVEYXNoPz9gc29saWRgLGxpbmVDdXN0b21EYXNoOm8ubGluZUN1c3RvbURhc2gsbGluZUNhcDpvLmxpbmVDYXAsbGluZUpvaW46by5saW5lSm9pbn0pLHgrPW59Zj1rbyhmLFMuZmxhdE1hcChlPT5lLm1lc2gudmVydGljZXMpLGwsLjA4KTtsZXQgVD1bXSxFPXtyZW1haW5pbmc6bGIsZXhjZWVkZWQ6ITF9LEQ9ZT0+e2xldCB0PWUubGluZVdpZHRoRW11PT1udWxsPy43NSpyOk1hdGgubWF4KC4yNSxlLmxpbmVXaWR0aEVtdS9jdCpyKTtyZXR1cm4gZS5saW5lRmlsbCE9PW51bGwmJihlLmxpbmVDb2xvciE9bnVsbHx8ZS5saW5lRmlsbCE9PXZvaWQgMCk/e2NvbG9yOmUubGluZUNvbG9yPz9gcmdiYSgwLDAsMCwwLjQyKWAsd2lkdGg6dCxkYXNoOlpyKGUubGluZUN1c3RvbURhc2gsZS5saW5lRGFzaCx0KSxjYXA6ZS5saW5lQ2FwLGpvaW46ZS5saW5lSm9pbn06dm9pZCAwfSxPPVMuZmxhdE1hcCh0PT57bGV0IG49SGIoZix0Lm1lc2gsdC5jb2xvcix2b2lkIDAsRSk7cmV0dXJuIEdiKGUsbixgZmlsbGAsdC5maWxsUGFpbnQsaSksbn0pLGs9W10sQT1TLm1hcChEKSxqPUFbMF0sTT1lPT5lPT1udWxsP251bGw6W2UuY29sb3IsZS53aWR0aCxlLmRhc2guam9pbihgLGApLGUuY2FwLGUuam9pbl0uam9pbihgfGApLE49aiE9bnVsbCYmUy5ldmVyeShlPT5lLmxpbmVGaWxsPT09dm9pZCAwKSYmQS5ldmVyeShlPT5NKGUpPT09TShqKSkmJlMuZXZlcnkoZT0+TWF0aC5hYnMoZS5jZW50ZXJYLV8pPDFlLTkmJk1hdGguYWJzKGUuY2VudGVyRGVwdGgteSk8MWUtOSk7aWYoTilrLnB1c2goLi4uVWIoZixTLHYsZyxiLGosRSkpO2Vsc2UgZm9yKGxldCB0PTA7dDxTLmxlbmd0aDt0Kyspe2xldCBuPUFbdF07aWYoIW4pY29udGludWU7bGV0IHI9SGIoZixTW3RdLm1lc2gsYHRyYW5zcGFyZW50YCxuLEUsITApO0diKGUscixgb3V0bGluZWAsU1t0XS5saW5lRmlsbCxpKSxrLnB1c2goLi4ucil9aWYoRS5leGNlZWRlZClyZXR1cm4gS2IoZSxuKSwhMDtpZihOKXtmb3IobGV0IHQgb2YgZWIoTykpV2IoZSx0KTtmb3IobGV0IHQgb2YgZWIoaykpV2IoZSx0KX1lbHNlIGZvcihsZXQgdCBvZiBlYihbLi4uTywuLi5rXSkpV2IoZSx0KTtmb3IobGV0IG4gb2YgUyl7bGV0IG89KG4uc3RhcnQrbi5lbmQpLzIscz1DLmdldChuLmluZGV4KTtpZihaYih0LGEscykpe2xldCBjPWEuc2VyaWVzRGF0YUxhYmVscyx1PUF0KHM/LmZvbnRTaXplSHB0Pz9jPy5mb250U2l6ZUhwdD8/dC5kYXRhTGFiZWxGb250U2l6ZUhwdCxyKT8/OSpyO2UuZm9udD1gJHtzPy5mb250Qm9sZD8/Yz8uZm9udEJvbGQ/P3QuZGF0YUxhYmVsRm9udEJvbGQ/YGJvbGQgYDpgYH0ke3V9cHggJHtqeCh0LHM/LmZvbnRGYWNlPz9jPy5mb250RmFjZT8/dC5kYXRhTGFiZWxGb250RmFjZSl9YDtsZXQgZD1xYSh7Y3VzdG9tVGV4dDpzPy50ZXh0LHNob3dDYXRlZ29yeTpzPy5zaG93Q2F0TmFtZT8/Yz8uc2hvd0NhdE5hbWU/PyExLHNob3dTZXJpZXM6cz8uc2hvd1Nlck5hbWU/P2M/LnNob3dTZXJOYW1lPz8hMSxzaG93VmFsdWU6cz8uc2hvd1ZhbD8/Yz8uc2hvd1ZhbD8/dC5zaG93RGF0YUxhYmVscyxzaG93UGVyY2VudDpzPy5zaG93UGVyY2VudD8/Yz8uc2hvd1BlcmNlbnQ/PyExLGNhdGVnb3J5OmEuY2F0ZWdvcmllcz8uW24uaW5kZXhdPz90LmNhdGVnb3JpZXNbbi5pbmRleF0/P2Ake24uaW5kZXgrMX1gLHNlcmllc05hbWU6YS5uYW1lfHxgU2VyaWVzIDFgLHNvdXJjZVZhbHVlOm4udmFsdWUscGVyY2VudFJhdGlvOm4ucGVyY2VudFZhbHVlLGZvcm1hdENvZGU6cz8uZm9ybWF0Q29kZT8/Yz8uZm9ybWF0Q29kZT8/dC5kYXRhTGFiZWxGb3JtYXRDb2RlPz9hLnZhbEZvcm1hdENvZGUsc2VwYXJhdG9yOnM/LnNlcGFyYXRvcj8/Yz8uc2VwYXJhdG9yLGRhdGUxOTA0OnQuZGF0ZTE5MDR9KSxwPWp4KHQscz8uZm9udEZhY2U/P2M/LmZvbnRGYWNlPz90LmRhdGFMYWJlbEZvbnRGYWNlKSxtPXM/LnRleHQmJnMucmljaFJ1bnM/Lmxlbmd0aD9WYShlLHtydW5zOnMucmljaFJ1bnMscHRUb1B4OnIsZm9udEZhbWlseTpwLGZhbGxiYWNrQm9sZDpzLmZvbnRCb2xkPz9jPy5mb250Qm9sZD8/dC5kYXRhTGFiZWxGb250Qm9sZD8/ITEsZm9udEZhbWlseUZvckZhY2U6ZT0+angodCxlKX0sdSxgIyR7cy5mb250Q29sb3I/P2M/LmZvbnRDb2xvcj8/YS5sYWJlbENvbG9yPz90LmRhdGFMYWJlbEZvbnRDb2xvcj8/YDExMTExMWB9YCk6bnVsbCxoPXM/LnBvc2l0aW9uPz9jPy5wb3NpdGlvbj8/dC5kYXRhTGFiZWxQb3NpdGlvbixfPXYtYi8yLHk9ditiLzIseD1mLmNhbWVyYURlcHRoKG4uY2VudGVyWCxfLG4uY2VudGVyRGVwdGgpPj1mLmNhbWVyYURlcHRoKG4uY2VudGVyWCx5LG4uY2VudGVyRGVwdGgpP186eSxTPTAsQz1udWxsO2ZvcihsZXQgZT0wO2U8PTEyO2UrKyl7bGV0IHQ9bi5zdGFydCsobi5lbmQtbi5zdGFydCkqZS8xMixyPWYucHJvamVjdChuLmNlbnRlclgrTWF0aC5jb3ModCkqZyouNjQseCxuLmNlbnRlckRlcHRoK01hdGguc2luKHQpKmcqLjY0L2YubW9kZWxEZXB0aCk7QyYmKFMrPU1hdGguaHlwb3Qoci54LUMueCxyLnktQy55KSksQz1yfWxldCB3PShoPT1udWxsfHxoPT09YGJlc3RGaXRgKSYmKG4ucGVyY2VudFZhbHVlPT09MHx8UzwobT8ud2lkdGg/P2UubWVhc3VyZVRleHQoZCkud2lkdGgpKXx8aD09PWBvdXRFbmRgLEU9Zyoodz8xLjEyOi42NCksRD1mLnByb2plY3Qobi5jZW50ZXJYK01hdGguY29zKG8pKkUseCxuLmNlbnRlckRlcHRoK01hdGguc2luKG8pKkUvZi5tb2RlbERlcHRoKSxPPWYucHJvamVjdChuLmNlbnRlclgrTWF0aC5jb3MobykqZyx4LG4uY2VudGVyRGVwdGgrTWF0aC5zaW4obykqZy9mLm1vZGVsRGVwdGgpO1QucHVzaCgoKT0+WGIoZSx0LGEsMCxuLmluZGV4LG4udmFsdWUsRCxsLHIsMCxuLnBlcmNlbnRWYWx1ZSxzLGBjdHJgLE8sdyx2b2lkIDAsdm9pZCAwLHZvaWQgMCxpKSl9fWZvcihsZXQgZSBvZiBUKWUoKTtsZXQgUD1hLmNhdGVnb3JpZXM/Lmxlbmd0aD9hLmNhdGVnb3JpZXM6dC5jYXRlZ29yaWVzLEY9QXJyYXkuZnJvbSh7bGVuZ3RoOlAubGVuZ3RofSwoZSx0KT0+e2xldCBuPXAuZ2V0KHQpLHI9bj8uZmlsbEhpZGRlbj09PSEwP2AwMDAwMDAwMGA6bj8uY29sb3I/P2EuZGF0YVBvaW50Q29sb3JzPy5bdF0/P2EuY29sb3I7cmV0dXJuIHI9PT1gMDAwMDAwMDBgP2AwMDAwMDAwMGA6dm8ocj9gIyR7cn1gOmt4KHQpLC44KS5yZXBsYWNlKC9eIy8sYGApfSk7cmV0dXJuIHJ4KGUsey4uLnQsY2F0ZWdvcmllczpQLHNlcmllczpbey4uLmEsY2F0ZWdvcmllczpQLGRhdGFQb2ludENvbG9yczpGfV19LHUsciwhMCxkLGkpLCEwfWZ1bmN0aW9uIFN4KGUsdCxuLHIsaT0wKXtyZXR1cm4hdC50aHJlZUR8fCEodC5jaGFydFR5cGU9PT1gcGllYHx8RHguaGFzKHQuY2hhcnRUeXBlKSk/ITE6TmIodCk/eHgoZSx0LG4scixpKT8hMDpieChlLHQsbixyLGkpOihLYihlLG4pLCEwKX12YXIgQ3gsd3gsVHgsRXgsRHgsT3gsa3gsQXgsangsTXgsTng9dCgoKCk9Pnt6cigpLE1pKCksUm4oKSx5bigpLHB0KCksbmkoKSxyYSgpLE9hKCksUXQoKSxqYSgpLGxuKCksS2EoKSxKYSgpLEZpKCksTG8oKSx3bygpLE90KCksWXkoKSxpYigpLGhiKCksQ2IoKSxRYSgpLGVvKCksdWkoKSxzcigpLHFuKCksQ3g9YG9veG1sLXRocmVlLWQtbWVzaC1pbXBsZW1lbnRhdGlvbi12MWAsd3g9W2A0NDcyQzRgLGBFRDdEMzFgLGA3MEFENDdgLGBBNUE1QTVgLGBGRkMwMDBgLGA1QjlCRDVgXSxUeD1VbixFeD1XbixEeD1uZXcgU2V0KFtgbGluZWAsYHN0YWNrZWRMaW5lYCxgc3RhY2tlZExpbmVQY3RgLGBhcmVhYCxgc3RhY2tlZEFyZWFgLGBzdGFja2VkQXJlYVBjdGAsYGNsdXN0ZXJlZEJhcmAsYGNsdXN0ZXJlZEJhckhgLGBzdGFja2VkQmFyYCxgc3RhY2tlZEJhckhgLGBzdGFja2VkQmFyUGN0YCxgc3RhY2tlZEJhckhQY3RgXSksT3g9MzYsa3g9KGUsdCk9PmAjJHt0Py5jb2xvcj8/d3hbZSV3eC5sZW5ndGhdfWAsQXg9ZT0+YCIke2UmJiFlLnN0YXJ0c1dpdGgoYCtgKT9lLnJlcGxhY2UoL1siXFxdL2csYGApOmBBcmlhbGB9ImAsang9KGUsdCxuPWBtaW5vcmApPT5BeCgodD8uc3RhcnRzV2l0aChgK21qLWApP2UudGhlbWVNYWpvckZvbnRMYXRpbjp0Py5zdGFydHNXaXRoKGArbW4tYCk/ZS50aGVtZU1pbm9yRm9udExhdGluOnQpPz8obj09PWBtYWpvcmA/ZS50aGVtZU1ham9yRm9udExhdGluOmUudGhlbWVNaW5vckZvbnRMYXRpbikpLE14PWU9PmU9PT1gdHJhbnNwYXJlbnRgfHxlPT09YCMwMDAwMDAwMGB8fGU9PT1gcmdiYSgwLDAsMCwwKWB9KSksUHgsRng9dCgoKCk9PntQeD1be246YEZpamlgLGEyOmBGSmAsYTM6YEZKSWAscDpgRkpgLGw6WzE3Ny45OCwtMTcuODNdLGc6W1tbWzE4MCwtMTYuMDddLFsxODAsLTE2LjU2XSxbMTc5LjM2LC0xNi44XSxbMTc4LjczLC0xNy4wMV0sWzE3OC42LC0xNi42NF0sWzE3OS4xLC0xNi40M10sWzE3OS40MSwtMTYuMzhdLFsxODAsLTE2LjA3XV1dLFtbWzE3OC4xMywtMTcuNV0sWzE3OC4zNywtMTcuMzRdLFsxNzguNzIsLTE3LjYzXSxbMTc4LjU1LC0xOC4xNV0sWzE3Ny45MywtMTguMjldLFsxNzcuMzgsLTE4LjE2XSxbMTc3LjI5LC0xNy43Ml0sWzE3Ny42NywtMTcuMzhdLFsxNzguMTMsLTE3LjVdXV0sW1tbLTE3OS43OSwtMTYuMDJdLFstMTc5LjkyLC0xNi41XSxbLTE4MCwtMTYuNTZdLFstMTgwLC0xNi4wN10sWy0xNzkuNzksLTE2LjAyXV1dXX0se246YFRhbnphbmlhYCxhMjpgVFpgLGEzOmBUWkFgLHA6YFRaYCxsOlszNC45NiwtNi4wNV0sZzpbW1tbMzMuOSwtLjk1XSxbMzQuMDcsLTEuMDZdLFszNy43LC0zLjFdLFszNy43NywtMy42OF0sWzM5LjIsLTQuNjhdLFszOC43NCwtNS45MV0sWzM4LjgsLTYuNDhdLFszOS40NCwtNi44NF0sWzM5LjQ3LC03LjFdLFszOS4xOSwtNy43XSxbMzkuMjUsLTguMDFdLFszOS4xOSwtOC40OV0sWzM5LjU0LC05LjExXSxbMzkuOTUsLTEwLjFdLFs0MC4zMiwtMTAuMzJdLFszOS41MiwtMTAuOV0sWzM4LjQzLC0xMS4yOV0sWzM3LjgzLC0xMS4yN10sWzM3LjQ3LC0xMS41N10sWzM2Ljc4LC0xMS41OV0sWzM2LjUxLC0xMS43Ml0sWzM1LjMxLC0xMS40NF0sWzM0LjU2LC0xMS41Ml0sWzM0LjI4LC0xMC4xNl0sWzMzLjk0LC05LjY5XSxbMzMuNzQsLTkuNDJdLFszMi43NiwtOS4yM10sWzMyLjE5LC04LjkzXSxbMzEuNTYsLTguNzZdLFszMS4xNiwtOC41OV0sWzMwLjc0LC04LjM0XSxbMzAuMiwtNy4wOF0sWzI5LjYyLC02LjUyXSxbMjkuNDIsLTUuOTRdLFsyOS41MiwtNS40Ml0sWzI5LjM0LC00LjVdLFsyOS43NSwtNC40NV0sWzMwLjEyLC00LjA5XSxbMzAuNTEsLTMuNTddLFszMC43NSwtMy4zNl0sWzMwLjc0LC0zLjAzXSxbMzAuNTMsLTIuODFdLFszMC40NywtMi40MV0sWzMwLjc2LC0yLjI5XSxbMzAuODIsLTEuN10sWzMwLjQyLC0xLjEzXSxbMzAuNzcsLTEuMDFdLFszMS44NywtMS4wM10sWzMzLjksLS45NV1dXV19LHtuOmBXZXN0ZXJuIFNhaGFyYWAsYTI6YEVIYCxhMzpgRVNIYCxwOmBXU2AsbDpbLTEyLjYzLDIzLjk3XSxnOltbW1stOC42NywyNy42Nl0sWy04LjY3LDI3LjU5XSxbLTguNjgsMjcuNF0sWy04LjY5LDI1Ljg4XSxbLTExLjk3LDI1LjkzXSxbLTExLjk0LDIzLjM3XSxbLTEyLjg3LDIzLjI4XSxbLTEzLjEyLDIyLjc3XSxbLTEyLjkzLDIxLjMzXSxbLTE2Ljg1LDIxLjMzXSxbLTE3LjA2LDIxXSxbLTE3LjAyLDIxLjQyXSxbLTE3LDIxLjQyXSxbLTE0Ljc1LDIxLjVdLFstMTQuNjMsMjEuODZdLFstMTQuMjIsMjIuMzFdLFstMTMuODksMjMuNjldLFstMTIuNSwyNC43N10sWy0xMi4wMywyNi4wM10sWy0xMS43MiwyNi4xXSxbLTExLjM5LDI2Ljg4XSxbLTEwLjU1LDI2Ljk5XSxbLTEwLjE5LDI2Ljg2XSxbLTkuNzQsMjYuODZdLFstOS40MSwyNy4wOV0sWy04Ljc5LDI3LjEyXSxbLTguODIsMjcuNjZdLFstOC42NywyNy42Nl1dXV19LHtuOmBDYW5hZGFgLGEyOmBDQWAsYTM6YENBTmAscDpgQ0FgLGw6Wy0xMDEuOTEsNjAuMzJdLGc6W1tbWy0xMjIuODQsNDldLFstMTIyLjk3LDQ5XSxbLTEyNC45MSw0OS45OF0sWy0xMjUuNjIsNTAuNDJdLFstMTI3LjQ0LDUwLjgzXSxbLTEyNy45OSw1MS43Ml0sWy0xMjcuODUsNTIuMzNdLFstMTI5LjEzLDUyLjc2XSxbLTEyOS4zMSw1My41Nl0sWy0xMzAuNTEsNTQuMjldLFstMTMwLjU0LDU0LjhdLFstMTI5Ljk4LDU1LjI5XSxbLTEzMC4wMSw1NS45Ml0sWy0xMzEuNzEsNTYuNTVdLFstMTMyLjczLDU3LjY5XSxbLTEzMy4zNiw1OC40MV0sWy0xMzQuMjcsNTguODZdLFstMTM0Ljk0LDU5LjI3XSxbLTEzNS40OCw1OS43OV0sWy0xMzYuNDgsNTkuNDZdLFstMTM3LjQ1LDU4LjkxXSxbLTEzOC4zNCw1OS41Nl0sWy0xMzkuMDQsNjBdLFstMTQwLjAxLDYwLjI4XSxbLTE0MSw2MC4zMV0sWy0xNDAuOTksNjZdLFstMTQwLjk5LDY5LjcxXSxbLTEzOS4xMiw2OS40N10sWy0xMzcuNTUsNjguOTldLFstMTM2LjUsNjguOV0sWy0xMzUuNjMsNjkuMzJdLFstMTM0LjQxLDY5LjYzXSxbLTEzMi45Myw2OS41MV0sWy0xMzEuNDMsNjkuOTRdLFstMTI5Ljc5LDcwLjE5XSxbLTEyOS4xMSw2OS43OF0sWy0xMjguMzYsNzAuMDFdLFstMTI4LjE0LDcwLjQ4XSxbLTEyNy40NSw3MC4zOF0sWy0xMjUuNzYsNjkuNDhdLFstMTI0LjQyLDcwLjE2XSxbLTEyNC4yOSw2OS40XSxbLTEyMy4wNiw2OS41Nl0sWy0xMjIuNjgsNjkuODZdLFstMTIxLjQ3LDY5LjhdLFstMTE5Ljk0LDY5LjM4XSxbLTExNy42LDY5LjAxXSxbLTExNi4yMyw2OC44NF0sWy0xMTUuMjUsNjguOTFdLFstMTEzLjksNjguNF0sWy0xMTUuMyw2Ny45XSxbLTExMy41LDY3LjY5XSxbLTExMC44LDY3LjgxXSxbLTEwOS45NSw2Ny45OF0sWy0xMDguODgsNjcuMzhdLFstMTA3Ljc5LDY3Ljg5XSxbLTEwOC44MSw2OC4zMV0sWy0xMDguMTcsNjguNjVdLFstMTA2Ljk1LDY4LjddLFstMTA2LjE1LDY4LjhdLFstMTA1LjM0LDY4LjU2XSxbLTEwNC4zNCw2OC4wMl0sWy0xMDMuMjIsNjguMV0sWy0xMDEuNDUsNjcuNjVdLFstOTkuOSw2Ny44MV0sWy05OC40NCw2Ny43OF0sWy05OC41Niw2OC40XSxbLTk3LjY3LDY4LjU4XSxbLTk2LjEyLDY4LjI0XSxbLTk2LjEzLDY3LjI5XSxbLTk1LjQ5LDY4LjA5XSxbLTk0LjY4LDY4LjA2XSxbLTk0LjIzLDY5LjA3XSxbLTk1LjMsNjkuNjldLFstOTYuNDcsNzAuMDldLFstOTYuMzksNzEuMTldLFstOTUuMjEsNzEuOTJdLFstOTMuODksNzEuNzZdLFstOTIuODgsNzEuMzJdLFstOTEuNTIsNzAuMTldLFstOTIuNDEsNjkuN10sWy05MC41NSw2OS41XSxbLTkwLjU1LDY4LjQ3XSxbLTg5LjIyLDY5LjI2XSxbLTg4LjAyLDY4LjYyXSxbLTg4LjMyLDY3Ljg3XSxbLTg3LjM1LDY3LjJdLFstODYuMzEsNjcuOTJdLFstODUuNTgsNjguNzhdLFstODUuNTIsNjkuODhdLFstODQuMSw2OS44MV0sWy04Mi42Miw2OS42Nl0sWy04MS4yOCw2OS4xNl0sWy04MS4yMiw2OC42N10sWy04MS45Niw2OC4xM10sWy04MS4yNiw2Ny42XSxbLTgxLjM5LDY3LjExXSxbLTgzLjM0LDY2LjQxXSxbLTg0Ljc0LDY2LjI2XSxbLTg1Ljc3LDY2LjU2XSxbLTg2LjA3LDY2LjA2XSxbLTg3LjAzLDY1LjIxXSxbLTg3LjMyLDY0Ljc4XSxbLTg4LjQ4LDY0LjFdLFstODkuOTEsNjQuMDNdLFstOTAuNyw2My42MV0sWy05MC43Nyw2Mi45Nl0sWy05MS45Myw2Mi44NF0sWy05My4xNiw2Mi4wMl0sWy05NC4yNCw2MC45XSxbLTk0LjYzLDYwLjExXSxbLTk0LjY4LDU4Ljk1XSxbLTkzLjIyLDU4Ljc4XSxbLTkyLjc2LDU3Ljg1XSxbLTkyLjMsNTcuMDldLFstOTAuOSw1Ny4yOF0sWy04OS4wNCw1Ni44NV0sWy04OC4wNCw1Ni40N10sWy04Ny4zMiw1Nl0sWy04Ni4wNyw1NS43Ml0sWy04NS4wMSw1NS4zXSxbLTgzLjM2LDU1LjI0XSxbLTgyLjI3LDU1LjE1XSxbLTgyLjQ0LDU0LjI4XSxbLTgyLjEzLDUzLjI4XSxbLTgxLjQsNTIuMTZdLFstNzkuOTEsNTEuMjFdLFstNzkuMTQsNTEuNTNdLFstNzguNiw1Mi41Nl0sWy03OS4xMiw1NC4xNF0sWy03OS44Myw1NC42N10sWy03OC4yMyw1NS4xNF0sWy03Ny4xLDU1Ljg0XSxbLTc2LjU0LDU2LjUzXSxbLTc2LjYyLDU3LjJdLFstNzcuMyw1OC4wNV0sWy03OC41Miw1OC44XSxbLTc3LjM0LDU5Ljg1XSxbLTc3Ljc3LDYwLjc2XSxbLTc4LjExLDYyLjMyXSxbLTc3LjQxLDYyLjU1XSxbLTc1LjcsNjIuMjhdLFstNzQuNjcsNjIuMThdLFstNzMuODQsNjIuNDRdLFstNzIuOTEsNjIuMTFdLFstNzEuNjgsNjEuNTNdLFstNzEuMzcsNjEuMTRdLFstNjkuNTksNjEuMDZdLFstNjkuNjIsNjAuMjJdLFstNjkuMjksNTguOTZdLFstNjguMzcsNTguOF0sWy02Ny42NSw1OC4yMV0sWy02Ni4yLDU4Ljc3XSxbLTY1LjI1LDU5Ljg3XSxbLTY0LjU4LDYwLjM0XSxbLTYzLjgsNTkuNDRdLFstNjIuNSw1OC4xN10sWy02MS40LDU2Ljk3XSxbLTYxLjgsNTYuMzRdLFstNjAuNDcsNTUuNzhdLFstNTkuNTcsNTUuMl0sWy01Ny45OCw1NC45NV0sWy01Ny4zMyw1NC42M10sWy01Ni45NCw1My43OF0sWy01Ni4xNiw1My42NV0sWy01NS43Niw1My4yN10sWy01NS42OCw1Mi4xNV0sWy01Ni40MSw1MS43N10sWy01Ny4xMyw1MS40Ml0sWy01OC43Nyw1MS4wNl0sWy02MC4wMyw1MC4yNF0sWy02MS43Miw1MC4wOF0sWy02My44Niw1MC4yOV0sWy02NS4zNiw1MC4zXSxbLTY2LjQsNTAuMjNdLFstNjcuMjQsNDkuNTFdLFstNjguNTEsNDkuMDddLFstNjkuOTUsNDcuNzRdLFstNzEuMSw0Ni44Ml0sWy03MC4yNiw0Ni45OV0sWy02OC42NSw0OC4zXSxbLTY2LjU1LDQ5LjEzXSxbLTY1LjA2LDQ5LjIzXSxbLTY0LjE3LDQ4Ljc0XSxbLTY1LjEyLDQ4LjA3XSxbLTY0LjgsNDYuOTldLFstNjQuNDcsNDYuMjRdLFstNjMuMTcsNDUuNzRdLFstNjEuNTIsNDUuODhdLFstNjAuNTIsNDcuMDFdLFstNjAuNDUsNDYuMjhdLFstNTkuOCw0NS45Ml0sWy02MS4wNCw0NS4yN10sWy02My4yNSw0NC42N10sWy02NC4yNSw0NC4yN10sWy02NS4zNiw0My41NV0sWy02Ni4xMiw0My42Ml0sWy02Ni4xNiw0NC40N10sWy02NC40Myw0NS4yOV0sWy02Ni4wMyw0NS4yNl0sWy02Ny4xNCw0NS4xNF0sWy02Ny43OSw0NS43XSxbLTY3Ljc5LDQ3LjA3XSxbLTY4LjIzLDQ3LjM1XSxbLTY4LjksNDcuMTldLFstNjkuMjQsNDcuNDVdLFstNzAsNDYuNjldLFstNzAuMzEsNDUuOTJdLFstNzAuNjYsNDUuNDZdLFstNzEuMDgsNDUuMzFdLFstNzEuNCw0NS4yNl0sWy03MS41MSw0NS4wMV0sWy03My4zNSw0NS4wMV0sWy03NC44Nyw0NV0sWy03NS4zMiw0NC44Ml0sWy03Ni4zNyw0NC4xXSxbLTc2LjUsNDQuMDJdLFstNzYuODIsNDMuNjNdLFstNzcuNzQsNDMuNjNdLFstNzguNzIsNDMuNjNdLFstNzkuMTcsNDMuNDddLFstNzkuMDEsNDMuMjddLFstNzguOTIsNDIuOTddLFstNzguOTQsNDIuODZdLFstODAuMjUsNDIuMzddLFstODEuMjgsNDIuMjFdLFstODIuNDQsNDEuNjhdLFstODIuNjksNDEuNjhdLFstODMuMDMsNDEuODNdLFstODMuMTQsNDEuOThdLFstODMuMTIsNDIuMDhdLFstODIuOSw0Mi40M10sWy04Mi40Myw0Mi45OF0sWy04Mi4xNCw0My41N10sWy04Mi4zNCw0NC40NF0sWy04Mi41NSw0NS4zNV0sWy04My41OSw0NS44Ml0sWy04My40Nyw0NS45OV0sWy04My42Miw0Ni4xMl0sWy04My44OSw0Ni4xMl0sWy04NC4wOSw0Ni4yOF0sWy04NC4xNCw0Ni41MV0sWy04NC4zNCw0Ni40MV0sWy04NC42LDQ2LjQ0XSxbLTg0LjU0LDQ2LjU0XSxbLTg0Ljc4LDQ2LjY0XSxbLTg0Ljg4LDQ2LjldLFstODUuNjUsNDcuMjJdLFstODYuNDYsNDcuNTVdLFstODcuNDQsNDcuOTRdLFstODguMzgsNDguM10sWy04OS4yNyw0OC4wMl0sWy04OS42LDQ4LjAxXSxbLTkwLjgzLDQ4LjI3XSxbLTkxLjY0LDQ4LjE0XSxbLTkyLjYxLDQ4LjQ1XSxbLTkzLjYzLDQ4LjYxXSxbLTk0LjMzLDQ4LjY3XSxbLTk0LjY0LDQ4Ljg0XSxbLTk0LjgyLDQ5LjM5XSxbLTk1LjE2LDQ5LjM4XSxbLTk1LjE2LDQ5XSxbLTk3LjIzLDQ5XSxbLTEwMC42NSw0OV0sWy0xMDQuMDUsNDldLFstMTA3LjA1LDQ5XSxbLTExMC4wNSw0OV0sWy0xMTMsNDldLFstMTE2LjA1LDQ5XSxbLTExNy4wMyw0OV0sWy0xMjAsNDldLFstMTIyLjg0LDQ5XV1dLFtbWy04My45OSw2Mi40NV0sWy04My4yNSw2Mi45MV0sWy04MS44OCw2Mi45XSxbLTgxLjksNjIuNzFdLFstODMuMDcsNjIuMTZdLFstODMuNzcsNjIuMThdLFstODMuOTksNjIuNDVdXV0sW1tbLTc5Ljc4LDcyLjhdLFstODAuODgsNzMuMzNdLFstODAuODMsNzMuNjldLFstODAuMzUsNzMuNzZdLFstNzguMDYsNzMuNjVdLFstNzYuMzQsNzMuMV0sWy03Ni4yNSw3Mi44M10sWy03Ny4zMSw3Mi44Nl0sWy03OC4zOSw3Mi44OF0sWy03OS40OSw3Mi43NF0sWy03OS43OCw3Mi44XV1dLFtbWy04MC4zMiw2Mi4wOV0sWy03OS45Myw2Mi4zOV0sWy03OS41Miw2Mi4zNl0sWy03OS4yNyw2Mi4xNl0sWy03OS42Niw2MS42M10sWy04MC4xLDYxLjcyXSxbLTgwLjM2LDYyLjAyXSxbLTgwLjMyLDYyLjA5XV1dLFtbWy05My42MSw3NC45OF0sWy05NC4xNiw3NC41OV0sWy05NS42MSw3NC42N10sWy05Ni44Miw3NC45M10sWy05Ni4yOSw3NS4zOF0sWy05NC44NSw3NS42NV0sWy05My45OCw3NS4zXSxbLTkzLjYxLDc0Ljk4XV1dLFtbWy05My44NCw3Ny41Ml0sWy05NC4zLDc3LjQ5XSxbLTk2LjE3LDc3LjU2XSxbLTk2LjQ0LDc3LjgzXSxbLTk0LjQyLDc3LjgyXSxbLTkzLjcyLDc3LjYzXSxbLTkzLjg0LDc3LjUyXV1dLFtbWy05Ni43NSw3OC43N10sWy05NS41Niw3OC40Ml0sWy05NS44Myw3OC4wNl0sWy05Ny4zMSw3Ny44NV0sWy05OC4xMiw3OC4wOF0sWy05OC41NSw3OC40Nl0sWy05OC42Myw3OC44N10sWy05Ny4zNCw3OC44M10sWy05Ni43NSw3OC43N11dXSxbW1stODguMTUsNzQuMzldLFstODkuNzYsNzQuNTJdLFstOTIuNDIsNzQuODRdLFstOTIuNzcsNzUuMzldLFstOTIuODksNzUuODhdLFstOTMuODksNzYuMzJdLFstOTUuOTYsNzYuNDRdLFstOTcuMTIsNzYuNzVdLFstOTYuNzUsNzcuMTZdLFstOTQuNjgsNzcuMV0sWy05My41Nyw3Ni43OF0sWy05MS42MSw3Ni43OF0sWy05MC43NCw3Ni40NV0sWy05MC45Nyw3Ni4wN10sWy04OS44Miw3NS44NV0sWy04OS4xOSw3NS42MV0sWy04Ny44NCw3NS41N10sWy04Ni4zOCw3NS40OF0sWy04NC43OSw3NS43XSxbLTgyLjc1LDc1Ljc4XSxbLTgxLjEzLDc1LjcxXSxbLTgwLjA2LDc1LjM0XSxbLTc5LjgzLDc0LjkyXSxbLTgwLjQ2LDc0LjY2XSxbLTgxLjk1LDc0LjQ0XSxbLTgzLjIzLDc0LjU2XSxbLTg2LjEsNzQuNDFdLFstODguMTUsNzQuMzldXV0sW1tbLTExMS4yNiw3OC4xNV0sWy0xMDkuODUsNzhdLFstMTEwLjE5LDc3LjddLFstMTEyLjA1LDc3LjQxXSxbLTExMy41Myw3Ny43M10sWy0xMTIuNzIsNzguMDVdLFstMTExLjI2LDc4LjE1XV1dLFtbWy0xMTAuOTYsNzguOF0sWy0xMDkuNjYsNzguNl0sWy0xMTAuODgsNzguNDFdLFstMTEyLjU0LDc4LjQxXSxbLTExMi41Myw3OC41NV0sWy0xMTEuNSw3OC44NV0sWy0xMTAuOTYsNzguOF1dXSxbW1stNTUuNiw1MS4zMl0sWy01Ni4xMyw1MC42OV0sWy01Ni44LDQ5LjgxXSxbLTU2LjE0LDUwLjE1XSxbLTU1LjQ3LDQ5Ljk0XSxbLTU1LjgyLDQ5LjU5XSxbLTU0Ljk0LDQ5LjMxXSxbLTU0LjQ3LDQ5LjU2XSxbLTUzLjQ4LDQ5LjI1XSxbLTUzLjc5LDQ4LjUyXSxbLTUzLjA5LDQ4LjY5XSxbLTUyLjk2LDQ4LjE2XSxbLTUyLjY1LDQ3LjU0XSxbLTUzLjA3LDQ2LjY2XSxbLTUzLjUyLDQ2LjYyXSxbLTU0LjE4LDQ2LjgxXSxbLTUzLjk2LDQ3LjYzXSxbLTU0LjI0LDQ3Ljc1XSxbLTU1LjQsNDYuODhdLFstNTYsNDYuOTJdLFstNTUuMjksNDcuMzldLFstNTYuMjUsNDcuNjNdLFstNTcuMzMsNDcuNTddLFstNTkuMjcsNDcuNl0sWy01OS40Miw0Ny45XSxbLTU4LjgsNDguMjVdLFstNTkuMjMsNDguNTJdLFstNTguMzksNDkuMTNdLFstNTcuMzYsNTAuNzJdLFstNTYuNzQsNTEuMjldLFstNTUuODcsNTEuNjNdLFstNTUuNDEsNTEuNTldLFstNTUuNiw1MS4zMl1dXSxbW1stODMuODgsNjUuMTFdLFstODIuNzksNjQuNzddLFstODEuNjQsNjQuNDZdLFstODEuNTUsNjMuOThdLFstODAuODIsNjQuMDZdLFstODAuMSw2My43M10sWy04MC45OSw2My40MV0sWy04Mi41NSw2My42NV0sWy04My4xMSw2NC4xXSxbLTg0LjEsNjMuNTddLFstODUuNTIsNjMuMDVdLFstODUuODcsNjMuNjRdLFstODcuMjIsNjMuNTRdLFstODYuMzUsNjQuMDRdLFstODYuMjIsNjQuODJdLFstODUuODgsNjUuNzRdLFstODUuMTYsNjUuNjZdLFstODQuOTgsNjUuMjJdLFstODQuNDYsNjUuMzddLFstODMuODgsNjUuMTFdXV0sW1tbLTc4Ljc3LDcyLjM1XSxbLTc3LjgyLDcyLjc1XSxbLTc1LjYxLDcyLjI0XSxbLTc0LjIzLDcxLjc3XSxbLTc0LjEsNzEuMzNdLFstNzIuMjQsNzEuNTZdLFstNzEuMiw3MC45Ml0sWy02OC43OSw3MC41M10sWy02Ny45MSw3MC4xMl0sWy02Ni45Nyw2OS4xOV0sWy02OC44MSw2OC43Ml0sWy02Ni40NSw2OC4wN10sWy02NC44Niw2Ny44NV0sWy02My40Miw2Ni45M10sWy02MS44NSw2Ni44Nl0sWy02Mi4xNiw2Ni4xNl0sWy02My45Miw2NV0sWy02NS4xNSw2NS40M10sWy02Ni43Miw2Ni4zOV0sWy02OC4wMiw2Ni4yNl0sWy02OC4xNCw2NS42OV0sWy02Ny4wOSw2NS4xMV0sWy02NS43Myw2NC42NV0sWy02NS4zMiw2NC4zOF0sWy02NC42Nyw2My4zOV0sWy02NS4wMSw2Mi42N10sWy02Ni4yOCw2Mi45NV0sWy02OC43OCw2My43NV0sWy02Ny4zNyw2Mi44OF0sWy02Ni4zMyw2Mi4yOF0sWy02Ni4xNyw2MS45M10sWy02OC44OCw2Mi4zM10sWy03MS4wMiw2Mi45MV0sWy03Mi4yNCw2My40XSxbLTcxLjg5LDYzLjY4XSxbLTczLjM4LDY0LjE5XSxbLTc0LjgzLDY0LjY4XSxbLTc0LjgyLDY0LjM5XSxbLTc3LjcxLDY0LjIzXSxbLTc4LjU2LDY0LjU3XSxbLTc3LjksNjUuMzFdLFstNzYuMDIsNjUuMzNdLFstNzMuOTYsNjUuNDVdLFstNzQuMjksNjUuODFdLFstNzMuOTQsNjYuMzFdLFstNzIuNjUsNjcuMjhdLFstNzIuOTMsNjcuNzNdLFstNzMuMzEsNjguMDddLFstNzQuODQsNjguNTVdLFstNzYuODcsNjguODldLFstNzYuMjMsNjkuMTVdLFstNzcuMjksNjkuNzddLFstNzguMTcsNjkuODNdLFstNzguOTYsNzAuMTddLFstNzkuNDksNjkuODddLFstODEuMzEsNjkuNzRdLFstODQuOTQsNjkuOTddLFstODcuMDYsNzAuMjZdLFstODguNjgsNzAuNDFdLFstODkuNTEsNzAuNzZdLFstODguNDcsNzEuMjJdLFstODkuODksNzEuMjJdLFstOTAuMjEsNzIuMjRdLFstODkuNDQsNzMuMTNdLFstODguNDEsNzMuNTRdLFstODUuODMsNzMuOF0sWy04Ni41Niw3My4xNl0sWy04NS43Nyw3Mi41M10sWy04NC44NSw3My4zNF0sWy04Mi4zMiw3My43NV0sWy04MC42LDcyLjcyXSxbLTgwLjc1LDcyLjA2XSxbLTc4Ljc3LDcyLjM1XV1dLFtbWy05NC41LDc0LjEzXSxbLTkyLjQyLDc0LjFdLFstOTAuNTEsNzMuODZdLFstOTIsNzIuOTddLFstOTMuMiw3Mi43N10sWy05NC4yNyw3Mi4wMl0sWy05NS40MSw3Mi4wNl0sWy05Ni4wMyw3Mi45NF0sWy05Ni4wMiw3My40NF0sWy05NS41LDczLjg2XSxbLTk0LjUsNzQuMTNdXV0sW1tbLTEyMi44NSw3Ni4xMl0sWy0xMjEuMTYsNzYuODZdLFstMTE5LjEsNzcuNTFdLFstMTE3LjU3LDc3LjVdLFstMTE2LjIsNzcuNjVdLFstMTE2LjM0LDc2Ljg4XSxbLTExNy4xMSw3Ni41M10sWy0xMTguMDQsNzYuNDhdLFstMTE5LjksNzYuMDVdLFstMTIxLjUsNzUuOV0sWy0xMjIuODUsNzYuMTJdXV0sW1tbLTEzMi43MSw1NC4wNF0sWy0xMzEuNzUsNTQuMTJdLFstMTMyLjA1LDUyLjk4XSxbLTEzMS4xOCw1Mi4xOF0sWy0xMzEuNTgsNTIuMThdLFstMTMyLjE4LDUyLjY0XSxbLTEzMi41NSw1My4xXSxbLTEzMy4wNSw1My40MV0sWy0xMzMuMjQsNTMuODVdLFstMTMzLjE4LDU0LjE3XSxbLTEzMi43MSw1NC4wNF1dXSxbW1stMTA1LjQ5LDc5LjNdLFstMTAzLjUzLDc5LjE3XSxbLTEwMC44Myw3OC44XSxbLTEwMC4wNiw3OC4zMl0sWy05OS42Nyw3Ny45MV0sWy0xMDEuMyw3OC4wMl0sWy0xMDIuOTUsNzguMzRdLFstMTA1LjE4LDc4LjM4XSxbLTEwNC4yMSw3OC42OF0sWy0xMDUuNDIsNzguOTJdLFstMTA1LjQ5LDc5LjNdXV0sW1tbLTEyMy41MSw0OC41MV0sWy0xMjQuMDEsNDguMzddLFstMTI1LjY2LDQ4LjgzXSxbLTEyNS45NSw0OS4xOF0sWy0xMjYuODUsNDkuNTNdLFstMTI3LjAzLDQ5LjgxXSxbLTEyOC4wNiw0OS45OV0sWy0xMjguNDQsNTAuNTRdLFstMTI4LjM2LDUwLjc3XSxbLTEyNy4zMSw1MC41NV0sWy0xMjYuNyw1MC40XSxbLTEyNS43Niw1MC4zXSxbLTEyNS40Miw0OS45NV0sWy0xMjQuOTIsNDkuNDhdLFstMTIzLjkyLDQ5LjA2XSxbLTEyMy41MSw0OC41MV1dXSxbW1stMTIxLjU0LDc0LjQ1XSxbLTEyMC4xMSw3NC4yNF0sWy0xMTcuNTYsNzQuMTldLFstMTE2LjU4LDczLjldLFstMTE1LjUxLDczLjQ4XSxbLTExNi43Nyw3My4yMl0sWy0xMTkuMjIsNzIuNTJdLFstMTIwLjQ2LDcxLjgyXSxbLTEyMC40Niw3MS4zOF0sWy0xMjMuMDksNzAuOV0sWy0xMjMuNjIsNzEuMzRdLFstMTI1LjkzLDcxLjg3XSxbLTEyNS41LDcyLjI5XSxbLTEyNC44MSw3My4wMl0sWy0xMjMuOTQsNzMuNjhdLFstMTI0LjkyLDc0LjI5XSxbLTEyMS41NCw3NC40NV1dXSxbW1stMTA3LjgyLDc1Ljg1XSxbLTEwNi45Myw3Ni4wMV0sWy0xMDUuODgsNzUuOTddLFstMTA1LjcsNzUuNDhdLFstMTA2LjMxLDc1LjAxXSxbLTEwOS43LDc0Ljg1XSxbLTExMi4yMiw3NC40Ml0sWy0xMTMuNzQsNzQuMzldLFstMTEzLjg3LDc0LjcyXSxbLTExMS43OSw3NS4xNl0sWy0xMTYuMzEsNzUuMDRdLFstMTE3LjcxLDc1LjIyXSxbLTExNi4zNSw3Ni4yXSxbLTExNS40LDc2LjQ4XSxbLTExMi41OSw3Ni4xNF0sWy0xMTAuODEsNzUuNTVdLFstMTA5LjA3LDc1LjQ3XSxbLTExMC41LDc2LjQzXSxbLTEwOS41OCw3Ni43OV0sWy0xMDguNTUsNzYuNjhdLFstMTA4LjIxLDc2LjJdLFstMTA3LjgyLDc1Ljg1XV1dLFtbWy0xMDYuNTIsNzMuMDhdLFstMTA1LjQsNzIuNjddLFstMTA0Ljc3LDcxLjddLFstMTA0LjQ2LDcwLjk5XSxbLTEwMi43OSw3MC41XSxbLTEwMC45OCw3MC4wMl0sWy0xMDEuMDksNjkuNThdLFstMTAyLjczLDY5LjVdLFstMTAyLjA5LDY5LjEyXSxbLTEwMi40Myw2OC43NV0sWy0xMDQuMjQsNjguOTFdLFstMTA1Ljk2LDY5LjE4XSxbLTEwNy4xMiw2OS4xMl0sWy0xMDksNjguNzhdLFstMTExLjUzLDY4LjYzXSxbLTExMy4zMSw2OC41NF0sWy0xMTMuODUsNjkuMDFdLFstMTE1LjIyLDY5LjI4XSxbLTExNi4xMSw2OS4xN10sWy0xMTcuMzQsNjkuOTZdLFstMTE2LjY3LDcwLjA3XSxbLTExNS4xMyw3MC4yNF0sWy0xMTMuNzIsNzAuMTldLFstMTEyLjQyLDcwLjM3XSxbLTExNC4zNSw3MC42XSxbLTExNi40OSw3MC41Ml0sWy0xMTcuOSw3MC41NF0sWy0xMTguNDMsNzAuOTFdLFstMTE2LjExLDcxLjMxXSxbLTExNy42Niw3MS4zXSxbLTExOS40LDcxLjU2XSxbLTExOC41Niw3Mi4zMV0sWy0xMTcuODcsNzIuNzFdLFstMTE1LjE5LDczLjMxXSxbLTExNC4xNyw3My4xMl0sWy0xMTQuNjcsNzIuNjVdLFstMTEyLjQ0LDcyLjk2XSxbLTExMS4wNSw3Mi40NV0sWy0xMDkuOTIsNzIuOTZdLFstMTA5LjAxLDcyLjYzXSxbLTEwOC4xOSw3MS42NV0sWy0xMDcuNjksNzIuMDddLFstMTA4LjQsNzMuMDldLFstMTA3LjUyLDczLjI0XSxbLTEwNi41Miw3My4wOF1dXSxbW1stMTAwLjQ0LDcyLjcxXSxbLTEwMS41NCw3My4zNl0sWy0xMDAuMzYsNzMuODRdLFstOTkuMTYsNzMuNjNdLFstOTcuMzgsNzMuNzZdLFstOTcuMTIsNzMuNDddLFstOTguMDUsNzIuOTldLFstOTYuNTQsNzIuNTZdLFstOTYuNzIsNzEuNjZdLFstOTguMzYsNzEuMjddLFstOTkuMzIsNzEuMzZdLFstMTAwLjAxLDcxLjc0XSxbLTEwMi41LDcyLjUxXSxbLTEwMi40OCw3Mi44M10sWy0xMDAuNDQsNzIuNzFdXV0sW1tbLTEwNi42LDczLjZdLFstMTA1LjI2LDczLjY0XSxbLTEwNC41LDczLjQyXSxbLTEwNS4zOCw3Mi43Nl0sWy0xMDYuOTQsNzMuNDZdLFstMTA2LjYsNzMuNl1dXSxbW1stOTguNSw3Ni43Ml0sWy05Ny43NCw3Ni4yNl0sWy05Ny43LDc1Ljc0XSxbLTk4LjE2LDc1XSxbLTk5LjgxLDc0LjldLFstMTAwLjg4LDc1LjA2XSxbLTEwMC44Niw3NS42NF0sWy0xMDIuNSw3NS41Nl0sWy0xMDIuNTcsNzYuMzRdLFstMTAxLjQ5LDc2LjMxXSxbLTk5Ljk4LDc2LjY1XSxbLTk4LjU4LDc2LjU5XSxbLTk4LjUsNzYuNzJdXV0sW1tbLTk2LjAyLDgwLjZdLFstOTUuMzIsODAuOTFdLFstOTQuMyw4MC45OF0sWy05NC43NCw4MS4yMV0sWy05Mi40MSw4MS4yNl0sWy05MS4xMyw4MC43Ml0sWy04OS40NSw4MC41MV0sWy04Ny44MSw4MC4zMl0sWy04Ny4wMiw3OS42Nl0sWy04NS44MSw3OS4zNF0sWy04Ny4xOSw3OS4wNF0sWy04OS4wNCw3OC4yOV0sWy05MC44LDc4LjIyXSxbLTkyLjg4LDc4LjM0XSxbLTkzLjk1LDc4Ljc1XSxbLTkzLjk0LDc5LjExXSxbLTkzLjE1LDc5LjM4XSxbLTk0Ljk3LDc5LjM3XSxbLTk2LjA4LDc5LjcxXSxbLTk2LjcxLDgwLjE2XSxbLTk2LjAyLDgwLjZdXV0sW1tbLTkxLjU5LDgxLjg5XSxbLTkwLjEsODIuMDldLFstODguOTMsODIuMTJdLFstODYuOTcsODIuMjhdLFstODUuNSw4Mi42NV0sWy04NC4yNiw4Mi42XSxbLTgzLjE4LDgyLjMyXSxbLTgyLjQyLDgyLjg2XSxbLTgxLjEsODMuMDJdLFstNzkuMzEsODMuMTNdLFstNzYuMjUsODMuMTddLFstNzUuNzIsODMuMDZdLFstNzIuODMsODMuMjNdLFstNzAuNjcsODMuMTddLFstNjguNSw4My4xMV0sWy02NS44Myw4My4wM10sWy02My42OCw4Mi45XSxbLTYxLjg1LDgyLjYzXSxbLTYxLjg5LDgyLjM2XSxbLTY0LjMzLDgxLjkzXSxbLTY2Ljc1LDgxLjczXSxbLTY3LjY2LDgxLjVdLFstNjUuNDgsODEuNTFdLFstNjcuODQsODAuOV0sWy02OS40Nyw4MC42Ml0sWy03MS4xOCw3OS44XSxbLTczLjI0LDc5LjYzXSxbLTczLjg4LDc5LjQzXSxbLTc2LjkxLDc5LjMyXSxbLTc1LjUzLDc5LjJdLFstNzYuMjIsNzkuMDJdLFstNzUuMzksNzguNTNdLFstNzYuMzQsNzguMThdLFstNzcuODksNzcuOV0sWy03OC4zNiw3Ny41MV0sWy03OS43Niw3Ny4yMV0sWy03OS42Miw3Ni45OF0sWy03Ny45MSw3Ny4wMl0sWy03Ny44OSw3Ni43OF0sWy04MC41Niw3Ni4xOF0sWy04My4xNyw3Ni40NV0sWy04Ni4xMSw3Ni4zXSxbLTg3LjYsNzYuNDJdLFstODkuNDksNzYuNDddLFstODkuNjIsNzYuOTVdLFstODcuNzcsNzcuMThdLFstODguMjYsNzcuOV0sWy04Ny42NSw3Ny45N10sWy04NC45OCw3Ny41NF0sWy04Ni4zNCw3OC4xOF0sWy04Ny45Niw3OC4zN10sWy04Ny4xNSw3OC43Nl0sWy04NS4zOCw3OV0sWy04NS4wOSw3OS4zNV0sWy04Ni41MSw3OS43NF0sWy04Ni45Myw4MC4yNV0sWy04NC4yLDgwLjIxXSxbLTgzLjQxLDgwLjFdLFstODEuODUsODAuNDZdLFstODQuMSw4MC41OF0sWy04Ny42LDgwLjUyXSxbLTg5LjM3LDgwLjg2XSxbLTkwLjIsODEuMjZdLFstOTEuMzcsODEuNTVdLFstOTEuNTksODEuODldXV0sW1tbLTc1LjIyLDY3LjQ0XSxbLTc1Ljg3LDY3LjE1XSxbLTc2Ljk5LDY3LjFdLFstNzcuMjQsNjcuNTldLFstNzYuODEsNjguMTVdLFstNzUuOSw2OC4yOV0sWy03NS4xMSw2OC4wMV0sWy03NS4xLDY3LjU4XSxbLTc1LjIyLDY3LjQ0XV1dLFtbWy05Ni4yNiw2OS40OV0sWy05NS42NSw2OS4xMV0sWy05Ni4yNyw2OC43Nl0sWy05Ny42Miw2OS4wNl0sWy05OC40Myw2OC45NV0sWy05OS44LDY5LjRdLFstOTguOTIsNjkuNzFdLFstOTguMjIsNzAuMTRdLFstOTcuMTYsNjkuODZdLFstOTYuNTYsNjkuNjhdLFstOTYuMjYsNjkuNDldXV0sW1tbLTY0LjUyLDQ5Ljg3XSxbLTY0LjE3LDQ5Ljk2XSxbLTYyLjg2LDQ5LjcxXSxbLTYxLjg0LDQ5LjI5XSxbLTYxLjgxLDQ5LjExXSxbLTYyLjI5LDQ5LjA5XSxbLTYzLjU5LDQ5LjRdLFstNjQuNTIsNDkuODddXV0sW1tbLTY0LjAxLDQ3LjA0XSxbLTYzLjY2LDQ2LjU1XSxbLTYyLjk0LDQ2LjQyXSxbLTYyLjAxLDQ2LjQ0XSxbLTYyLjUsNDYuMDNdLFstNjIuODcsNDUuOTddLFstNjQuMTQsNDYuMzldLFstNjQuMzksNDYuNzNdLFstNjQuMDEsNDcuMDRdXV1dfSx7bjpgVW5pdGVkIFN0YXRlc2AsYTI6YFVTYCxhMzpgVVNBYCxwOmBVU2AsbDpbLTk3LjQ4LDM5LjU0XSxnOltbW1stMTIyLjg0LDQ5XSxbLTEyMCw0OV0sWy0xMTcuMDMsNDldLFstMTE2LjA1LDQ5XSxbLTExMyw0OV0sWy0xMTAuMDUsNDldLFstMTA3LjA1LDQ5XSxbLTEwNC4wNSw0OV0sWy0xMDAuNjUsNDldLFstOTcuMjMsNDldLFstOTUuMTYsNDldLFstOTUuMTYsNDkuMzhdLFstOTQuODIsNDkuMzldLFstOTQuNjQsNDguODRdLFstOTQuMzMsNDguNjddLFstOTMuNjMsNDguNjFdLFstOTIuNjEsNDguNDVdLFstOTEuNjQsNDguMTRdLFstOTAuODMsNDguMjddLFstODkuNiw0OC4wMV0sWy04OS4yNyw0OC4wMl0sWy04OC4zOCw0OC4zXSxbLTg3LjQ0LDQ3Ljk0XSxbLTg2LjQ2LDQ3LjU1XSxbLTg1LjY1LDQ3LjIyXSxbLTg0Ljg4LDQ2LjldLFstODQuNzgsNDYuNjRdLFstODQuNTQsNDYuNTRdLFstODQuNiw0Ni40NF0sWy04NC4zNCw0Ni40MV0sWy04NC4xNCw0Ni41MV0sWy04NC4wOSw0Ni4yOF0sWy04My44OSw0Ni4xMl0sWy04My42Miw0Ni4xMl0sWy04My40Nyw0NS45OV0sWy04My41OSw0NS44Ml0sWy04Mi41NSw0NS4zNV0sWy04Mi4zNCw0NC40NF0sWy04Mi4xNCw0My41N10sWy04Mi40Myw0Mi45OF0sWy04Mi45LDQyLjQzXSxbLTgzLjEyLDQyLjA4XSxbLTgzLjE0LDQxLjk4XSxbLTgzLjAzLDQxLjgzXSxbLTgyLjY5LDQxLjY4XSxbLTgyLjQ0LDQxLjY4XSxbLTgxLjI4LDQyLjIxXSxbLTgwLjI1LDQyLjM3XSxbLTc4Ljk0LDQyLjg2XSxbLTc4LjkyLDQyLjk3XSxbLTc5LjAxLDQzLjI3XSxbLTc5LjE3LDQzLjQ3XSxbLTc4LjcyLDQzLjYzXSxbLTc3Ljc0LDQzLjYzXSxbLTc2LjgyLDQzLjYzXSxbLTc2LjUsNDQuMDJdLFstNzYuMzcsNDQuMV0sWy03NS4zMiw0NC44Ml0sWy03NC44Nyw0NV0sWy03My4zNSw0NS4wMV0sWy03MS41MSw0NS4wMV0sWy03MS40LDQ1LjI2XSxbLTcxLjA4LDQ1LjMxXSxbLTcwLjY2LDQ1LjQ2XSxbLTcwLjMxLDQ1LjkyXSxbLTcwLDQ2LjY5XSxbLTY5LjI0LDQ3LjQ1XSxbLTY4LjksNDcuMTldLFstNjguMjMsNDcuMzVdLFstNjcuNzksNDcuMDddLFstNjcuNzksNDUuN10sWy02Ny4xNCw0NS4xNF0sWy02Ni45Niw0NC44MV0sWy02OC4wMyw0NC4zM10sWy02OS4wNiw0My45OF0sWy03MC4xMiw0My42OF0sWy03MC42NSw0My4wOV0sWy03MC44MSw0Mi44N10sWy03MC44Miw0Mi4zNF0sWy03MC40OSw0MS44MV0sWy03MC4wOCw0MS43OF0sWy03MC4xOCw0Mi4xNV0sWy02OS44OCw0MS45Ml0sWy02OS45Nyw0MS42NF0sWy03MC42NCw0MS40OF0sWy03MS4xMiw0MS40OV0sWy03MS44Niw0MS4zMl0sWy03Mi4yOSw0MS4yN10sWy03Mi44OCw0MS4yMl0sWy03My43MSw0MC45M10sWy03Mi4yNCw0MS4xMl0sWy03MS45NCw0MC45M10sWy03My4zNCw0MC42M10sWy03My45OCw0MC42M10sWy03My45NSw0MC43NV0sWy03NC4yNiw0MC40N10sWy03My45Niw0MC40M10sWy03NC4xOCwzOS43MV0sWy03NC45MSwzOC45NF0sWy03NC45OCwzOS4yXSxbLTc1LjIsMzkuMjVdLFstNzUuNTMsMzkuNV0sWy03NS4zMiwzOC45Nl0sWy03NS4wNywzOC43OF0sWy03NS4wNiwzOC40XSxbLTc1LjM4LDM4LjAyXSxbLTc1Ljk0LDM3LjIyXSxbLTc2LjAzLDM3LjI2XSxbLTc1LjcyLDM3Ljk0XSxbLTc2LjIzLDM4LjMyXSxbLTc2LjM1LDM5LjE1XSxbLTc2LjU0LDM4LjcyXSxbLTc2LjMzLDM4LjA4XSxbLTc2Ljk5LDM4LjI0XSxbLTc2LjMsMzcuOTJdLFstNzYuMjYsMzYuOTddLFstNzUuOTcsMzYuOV0sWy03NS44NywzNi41NV0sWy03NS43MywzNS41NV0sWy03Ni4zNiwzNC44MV0sWy03Ny40LDM0LjUxXSxbLTc4LjA1LDMzLjkzXSxbLTc4LjU1LDMzLjg2XSxbLTc5LjA2LDMzLjQ5XSxbLTc5LjIsMzMuMTZdLFstODAuMywzMi41MV0sWy04MC44NiwzMi4wM10sWy04MS4zNCwzMS40NF0sWy04MS40OSwzMC43M10sWy04MS4zMSwzMC4wNF0sWy04MC45OCwyOS4xOF0sWy04MC41NCwyOC40N10sWy04MC41MywyOC4wNF0sWy04MC4wNiwyNi44OF0sWy04MC4wOSwyNi4yMV0sWy04MC4xMywyNS44Ml0sWy04MC4zOCwyNS4yMV0sWy04MC42OCwyNS4wOF0sWy04MS4xNywyNS4yXSxbLTgxLjMzLDI1LjY0XSxbLTgxLjcxLDI1Ljg3XSxbLTgyLjI0LDI2LjczXSxbLTgyLjcxLDI3LjVdLFstODIuODYsMjcuODldLFstODIuNjUsMjguNTVdLFstODIuOTMsMjkuMV0sWy04My43MSwyOS45NF0sWy04NC4xLDMwLjA5XSxbLTg1LjExLDI5LjY0XSxbLTg1LjI5LDI5LjY5XSxbLTg1Ljc3LDMwLjE1XSxbLTg2LjQsMzAuNF0sWy04Ny41MywzMC4yN10sWy04OC40MiwzMC4zOF0sWy04OS4xOCwzMC4zMl0sWy04OS41OSwzMC4xNl0sWy04OS40MSwyOS44OV0sWy04OS40MywyOS40OV0sWy04OS4yMiwyOS4yOV0sWy04OS40MSwyOS4xNl0sWy04OS43OCwyOS4zMV0sWy05MC4xNSwyOS4xMl0sWy05MC44OCwyOS4xNV0sWy05MS42MywyOS42OF0sWy05Mi41LDI5LjU1XSxbLTkzLjIzLDI5Ljc4XSxbLTkzLjg1LDI5LjcxXSxbLTk0LjY5LDI5LjQ4XSxbLTk1LjYsMjguNzRdLFstOTYuNTksMjguMzFdLFstOTcuMTQsMjcuODNdLFstOTcuMzcsMjcuMzhdLFstOTcuMzgsMjYuNjldLFstOTcuMzMsMjYuMjFdLFstOTcuMTQsMjUuODddLFstOTcuNTMsMjUuODRdLFstOTguMjQsMjYuMDZdLFstOTkuMDIsMjYuMzddLFstOTkuMywyNi44NF0sWy05OS41MiwyNy41NF0sWy0xMDAuMTEsMjguMTFdLFstMTAwLjQ2LDI4LjddLFstMTAwLjk2LDI5LjM4XSxbLTEwMS42NiwyOS43OF0sWy0xMDIuNDgsMjkuNzZdLFstMTAzLjExLDI4Ljk3XSxbLTEwMy45NCwyOS4yN10sWy0xMDQuNDYsMjkuNTddLFstMTA0LjcxLDMwLjEyXSxbLTEwNS4wNCwzMC42NF0sWy0xMDUuNjMsMzEuMDhdLFstMTA2LjE0LDMxLjRdLFstMTA2LjUxLDMxLjc1XSxbLTEwOC4yNCwzMS43NV0sWy0xMDguMjQsMzEuMzRdLFstMTA5LjAzLDMxLjM0XSxbLTExMS4wMiwzMS4zM10sWy0xMTMuMywzMi4wNF0sWy0xMTQuODEsMzIuNTNdLFstMTE0LjcyLDMyLjcyXSxbLTExNS45OSwzMi42MV0sWy0xMTcuMTMsMzIuNTRdLFstMTE3LjMsMzMuMDVdLFstMTE3Ljk0LDMzLjYyXSxbLTExOC40MSwzMy43NF0sWy0xMTguNTIsMzQuMDNdLFstMTE5LjA4LDM0LjA4XSxbLTExOS40NCwzNC4zNV0sWy0xMjAuMzcsMzQuNDVdLFstMTIwLjYyLDM0LjYxXSxbLTEyMC43NCwzNS4xNl0sWy0xMjEuNzEsMzYuMTZdLFstMTIyLjU1LDM3LjU1XSxbLTEyMi41MSwzNy43OF0sWy0xMjIuOTUsMzguMTFdLFstMTIzLjczLDM4Ljk1XSxbLTEyMy44NywzOS43N10sWy0xMjQuNCw0MC4zMV0sWy0xMjQuMTgsNDEuMTRdLFstMTI0LjIxLDQyXSxbLTEyNC41Myw0Mi43N10sWy0xMjQuMTQsNDMuNzFdLFstMTI0LjAyLDQ0LjYyXSxbLTEyMy45LDQ1LjUyXSxbLTEyNC4wOCw0Ni44Nl0sWy0xMjQuNCw0Ny43Ml0sWy0xMjQuNjksNDguMThdLFstMTI0LjU3LDQ4LjM4XSxbLTEyMy4xMiw0OC4wNF0sWy0xMjIuNTksNDcuMV0sWy0xMjIuMzQsNDcuMzZdLFstMTIyLjUsNDguMThdLFstMTIyLjg0LDQ5XV1dLFtbWy0xNTUuNCwyMC4wOF0sWy0xNTUuMjIsMTkuOTldLFstMTU1LjA2LDE5Ljg2XSxbLTE1NC44MSwxOS41MV0sWy0xNTQuODMsMTkuNDVdLFstMTU1LjIyLDE5LjI0XSxbLTE1NS41NCwxOS4wOF0sWy0xNTUuNjksMTguOTJdLFstMTU1Ljk0LDE5LjA2XSxbLTE1NS45MSwxOS4zNF0sWy0xNTYuMDcsMTkuN10sWy0xNTYuMDIsMTkuODFdLFstMTU1Ljg1LDE5Ljk4XSxbLTE1NS45MiwyMC4xN10sWy0xNTUuODYsMjAuMjddLFstMTU1Ljc5LDIwLjI1XSxbLTE1NS40LDIwLjA4XV1dLFtbWy0xNTYsMjAuNzZdLFstMTU2LjA4LDIwLjY0XSxbLTE1Ni40MSwyMC41N10sWy0xNTYuNTksMjAuNzhdLFstMTU2LjcsMjAuODZdLFstMTU2LjcxLDIwLjkzXSxbLTE1Ni42MSwyMS4wMV0sWy0xNTYuMjYsMjAuOTJdLFstMTU2LDIwLjc2XV1dLFtbWy0xNTYuNzYsMjEuMThdLFstMTU2Ljc5LDIxLjA3XSxbLTE1Ny4zMywyMS4xXSxbLTE1Ny4yNSwyMS4yMl0sWy0xNTYuNzYsMjEuMThdXV0sW1tbLTE1OC4wMywyMS43Ml0sWy0xNTcuOTQsMjEuNjVdLFstMTU3LjY1LDIxLjMyXSxbLTE1Ny43MSwyMS4yNl0sWy0xNTcuNzgsMjEuMjhdLFstMTU4LjEzLDIxLjMxXSxbLTE1OC4yNSwyMS41NF0sWy0xNTguMjksMjEuNThdLFstMTU4LjAzLDIxLjcyXV1dLFtbWy0xNTkuMzcsMjIuMjFdLFstMTU5LjM1LDIxLjk4XSxbLTE1OS40NiwyMS44OF0sWy0xNTkuOCwyMi4wN10sWy0xNTkuNzUsMjIuMTRdLFstMTU5LjYsMjIuMjRdLFstMTU5LjM3LDIyLjIxXV1dLFtbWy0xNjYuNDcsNjAuMzhdLFstMTY1LjY3LDYwLjI5XSxbLTE2NS41OCw1OS45MV0sWy0xNjYuMTksNTkuNzVdLFstMTY2Ljg1LDU5Ljk0XSxbLTE2Ny40Niw2MC4yMV0sWy0xNjYuNDcsNjAuMzhdXV0sW1tbLTE1My4yMyw1Ny45N10sWy0xNTIuNTYsNTcuOV0sWy0xNTIuMTQsNTcuNTldLFstMTUzLjAxLDU3LjEyXSxbLTE1NC4wMSw1Ni43M10sWy0xNTQuNTIsNTYuOTldLFstMTU0LjY3LDU3LjQ2XSxbLTE1My43Niw1Ny44Ml0sWy0xNTMuMjMsNTcuOTddXV0sW1tbLTE0MC45OSw2OS43MV0sWy0xNDAuOTksNjZdLFstMTQxLDYwLjMxXSxbLTE0MC4wMSw2MC4yOF0sWy0xMzkuMDQsNjBdLFstMTM4LjM0LDU5LjU2XSxbLTEzNy40NSw1OC45MV0sWy0xMzYuNDgsNTkuNDZdLFstMTM1LjQ4LDU5Ljc5XSxbLTEzNC45NCw1OS4yN10sWy0xMzQuMjcsNTguODZdLFstMTMzLjM2LDU4LjQxXSxbLTEzMi43Myw1Ny42OV0sWy0xMzEuNzEsNTYuNTVdLFstMTMwLjAxLDU1LjkyXSxbLTEyOS45OCw1NS4yOV0sWy0xMzAuNTQsNTQuOF0sWy0xMzEuMDksNTUuMThdLFstMTMxLjk3LDU1LjVdLFstMTMyLjI1LDU2LjM3XSxbLTEzMy41NCw1Ny4xOF0sWy0xMzQuMDgsNTguMTJdLFstMTM1LjA0LDU4LjE5XSxbLTEzNi42Myw1OC4yMV0sWy0xMzcuOCw1OC41XSxbLTEzOS44Nyw1OS41NF0sWy0xNDAuODMsNTkuNzNdLFstMTQyLjU3LDYwLjA4XSxbLTE0My45Niw2MF0sWy0xNDUuOTMsNjAuNDZdLFstMTQ3LjExLDYwLjg4XSxbLTE0OC4yMiw2MC42N10sWy0xNDguMDIsNTkuOThdLFstMTQ4LjU3LDU5LjkxXSxbLTE0OS43Myw1OS43MV0sWy0xNTAuNjEsNTkuMzddLFstMTUxLjcyLDU5LjE2XSxbLTE1MS44Niw1OS43NF0sWy0xNTEuNDEsNjAuNzNdLFstMTUwLjM1LDYxLjAzXSxbLTE1MC42Miw2MS4yOF0sWy0xNTEuOSw2MC43M10sWy0xNTIuNTgsNjAuMDZdLFstMTU0LjAyLDU5LjM1XSxbLTE1My4yOSw1OC44Nl0sWy0xNTQuMjMsNTguMTVdLFstMTU1LjMxLDU3LjczXSxbLTE1Ni4zMSw1Ny40Ml0sWy0xNTYuNTYsNTYuOThdLFstMTU4LjEyLDU2LjQ2XSxbLTE1OC40Myw1NS45OV0sWy0xNTkuNiw1NS41N10sWy0xNjAuMjksNTUuNjRdLFstMTYxLjIyLDU1LjM2XSxbLTE2Mi4yNCw1NS4wMl0sWy0xNjMuMDcsNTQuNjldLFstMTY0Ljc5LDU0LjRdLFstMTY0Ljk0LDU0LjU3XSxbLTE2My44NSw1NS4wNF0sWy0xNjIuODcsNTUuMzVdLFstMTYxLjgsNTUuODldLFstMTYwLjU2LDU2LjAxXSxbLTE2MC4wNyw1Ni40Ml0sWy0xNTguNjgsNTcuMDJdLFstMTU4LjQ2LDU3LjIyXSxbLTE1Ny43Miw1Ny41N10sWy0xNTcuNTUsNTguMzNdLFstMTU3LjA0LDU4LjkyXSxbLTE1OC4xOSw1OC42Ml0sWy0xNTguNTIsNTguNzldLFstMTU5LjA2LDU4LjQyXSxbLTE1OS43MSw1OC45M10sWy0xNTkuOTgsNTguNTddLFstMTYwLjM2LDU5LjA3XSxbLTE2MS4zNiw1OC42N10sWy0xNjEuOTcsNTguNjddLFstMTYyLjA1LDU5LjI3XSxbLTE2MS44Nyw1OS42M10sWy0xNjIuNTIsNTkuOTldLFstMTYzLjgyLDU5LjhdLFstMTY0LjY2LDYwLjI3XSxbLTE2NS4zNSw2MC41MV0sWy0xNjUuMzUsNjEuMDddLFstMTY2LjEyLDYxLjVdLFstMTY1LjczLDYyLjA3XSxbLTE2NC45Miw2Mi42M10sWy0xNjQuNTYsNjMuMTVdLFstMTYzLjc1LDYzLjIyXSxbLTE2My4wNyw2My4wNl0sWy0xNjIuMjYsNjMuNTRdLFstMTYxLjUzLDYzLjQ2XSxbLTE2MC43Nyw2My43N10sWy0xNjAuOTYsNjQuMjJdLFstMTYxLjUyLDY0LjRdLFstMTYwLjc4LDY0Ljc5XSxbLTE2MS4zOSw2NC43OF0sWy0xNjIuNDUsNjQuNTZdLFstMTYyLjc2LDY0LjM0XSxbLTE2My41NSw2NC41Nl0sWy0xNjQuOTYsNjQuNDVdLFstMTY2LjQzLDY0LjY5XSxbLTE2Ni44NSw2NS4wOV0sWy0xNjguMTEsNjUuNjddLFstMTY2LjcxLDY2LjA5XSxbLTE2NC40Nyw2Ni41OF0sWy0xNjMuNjUsNjYuNThdLFstMTYzLjc5LDY2LjA4XSxbLTE2MS42OCw2Ni4xMl0sWy0xNjIuNDksNjYuNzRdLFstMTYzLjcyLDY3LjEyXSxbLTE2NC40Myw2Ny42Ml0sWy0xNjUuMzksNjguMDRdLFstMTY2Ljc2LDY4LjM2XSxbLTE2Ni4yLDY4Ljg4XSxbLTE2NC40Myw2OC45Ml0sWy0xNjMuMTcsNjkuMzddLFstMTYyLjkzLDY5Ljg2XSxbLTE2MS45MSw3MC4zM10sWy0xNjAuOTMsNzAuNDVdLFstMTU5LjA0LDcwLjg5XSxbLTE1OC4xMiw3MC44Ml0sWy0xNTYuNTgsNzEuMzZdLFstMTU1LjA3LDcxLjE1XSxbLTE1NC4zNCw3MC43XSxbLTE1My45LDcwLjg5XSxbLTE1Mi4yMSw3MC44M10sWy0xNTIuMjcsNzAuNl0sWy0xNTAuNzQsNzAuNDNdLFstMTQ5LjcyLDcwLjUzXSxbLTE0Ny42MSw3MC4yMV0sWy0xNDUuNjksNzAuMTJdLFstMTQ0LjkyLDY5Ljk5XSxbLTE0My41OSw3MC4xNV0sWy0xNDIuMDcsNjkuODVdLFstMTQwLjk5LDY5LjcxXV1dLFtbWy0xNzEuNzMsNjMuNzhdLFstMTcxLjExLDYzLjU5XSxbLTE3MC40OSw2My42OV0sWy0xNjkuNjgsNjMuNDNdLFstMTY4LjY5LDYzLjNdLFstMTY4Ljc3LDYzLjE5XSxbLTE2OS41Myw2Mi45OF0sWy0xNzAuMjksNjMuMTldLFstMTcwLjY3LDYzLjM4XSxbLTE3MS41NSw2My4zMl0sWy0xNzEuNzksNjMuNDFdLFstMTcxLjczLDYzLjc4XV1dXX0se246YEthemFraHN0YW5gLGEyOmBLWmAsYTM6YEtBWmAscDpgS1pgLGw6WzY4LjY5LDQ5LjA1XSxnOltbW1s4Ny4zNiw0OS4yMV0sWzg2LjYsNDguNTVdLFs4NS43Nyw0OC40Nl0sWzg1LjcyLDQ3LjQ1XSxbODUuMTYsNDddLFs4My4xOCw0Ny4zM10sWzgyLjQ2LDQ1LjU0XSxbODEuOTUsNDUuMzJdLFs3OS45Nyw0NC45Ml0sWzgwLjg3LDQzLjE4XSxbODAuMTgsNDIuOTJdLFs4MC4yNiw0Mi4zNV0sWzc5LjY0LDQyLjVdLFs3OS4xNCw0Mi44Nl0sWzc3LjY2LDQyLjk2XSxbNzYsNDIuOTldLFs3NS42NCw0Mi44OF0sWzc0LjIxLDQzLjNdLFs3My42NSw0My4wOV0sWzczLjQ5LDQyLjVdLFs3MS44NCw0Mi44NV0sWzcxLjE5LDQyLjddLFs3MC45Niw0Mi4yN10sWzcwLjM5LDQyLjA4XSxbNjkuMDcsNDEuMzhdLFs2OC42Myw0MC42N10sWzY4LjI2LDQwLjY2XSxbNjcuOTksNDEuMTRdLFs2Ni43MSw0MS4xN10sWzY2LjUxLDQxLjk5XSxbNjYuMDIsNDEuOTldLFs2Ni4xLDQzXSxbNjQuOSw0My43M10sWzYzLjE5LDQzLjY1XSxbNjIuMDEsNDMuNV0sWzYxLjA2LDQ0LjQxXSxbNjAuMjQsNDQuNzhdLFs1OC42OSw0NS41XSxbNTguNSw0NS41OV0sWzU1LjkzLDQ1XSxbNTUuOTcsNDEuMzFdLFs1NS40Niw0MS4yNl0sWzU0Ljc2LDQyLjA0XSxbNTQuMDgsNDIuMzJdLFs1Mi45NCw0Mi4xMl0sWzUyLjUsNDEuNzhdLFs1Mi40NSw0Mi4wM10sWzUyLjY5LDQyLjQ0XSxbNTIuNSw0Mi43OV0sWzUxLjM0LDQzLjEzXSxbNTAuODksNDQuMDNdLFs1MC4zNCw0NC4yOF0sWzUwLjMxLDQ0LjYxXSxbNTEuMjgsNDQuNTFdLFs1MS4zMiw0NS4yNV0sWzUyLjE3LDQ1LjQxXSxbNTMuMDQsNDUuMjZdLFs1My4yMiw0Ni4yM10sWzUzLjA0LDQ2Ljg1XSxbNTIuMDQsNDYuOF0sWzUxLjE5LDQ3LjA1XSxbNTAuMDMsNDYuNjFdLFs0OS4xLDQ2LjRdLFs0OC41OSw0Ni41Nl0sWzQ4LjY5LDQ3LjA4XSxbNDguMDYsNDcuNzRdLFs0Ny4zMiw0Ny43Ml0sWzQ2LjQ3LDQ4LjM5XSxbNDcuMDQsNDkuMTVdLFs0Ni43NSw0OS4zNl0sWzQ3LjU1LDUwLjQ1XSxbNDguNTgsNDkuODddLFs0OC43LDUwLjYxXSxbNTAuNzcsNTEuNjldLFs1Mi4zMyw1MS43Ml0sWzU0LjUzLDUxLjAzXSxbNTUuNzIsNTAuNjJdLFs1Ni43OCw1MS4wNF0sWzU4LjM2LDUxLjA2XSxbNTkuNjQsNTAuNTVdLFs1OS45Myw1MC44NF0sWzYxLjM0LDUwLjhdLFs2MS41OSw1MS4yN10sWzU5Ljk3LDUxLjk2XSxbNjAuOTMsNTIuNDVdLFs2MC43NCw1Mi43Ml0sWzYxLjcsNTIuOThdLFs2MC45OCw1My42Nl0sWzYxLjQ0LDU0LjAxXSxbNjUuMTgsNTQuMzVdLFs2NS42Nyw1NC42XSxbNjguMTcsNTQuOTddLFs2OS4wNyw1NS4zOV0sWzcwLjg3LDU1LjE3XSxbNzEuMTgsNTQuMTNdLFs3Mi4yMiw1NC4zOF0sWzczLjUxLDU0LjA0XSxbNzMuNDMsNTMuNDldLFs3NC4zOCw1My41NV0sWzc2Ljg5LDU0LjQ5XSxbNzYuNTMsNTQuMThdLFs3Ny44LDUzLjRdLFs4MC4wNCw1MC44Nl0sWzgwLjU3LDUxLjM5XSxbODEuOTUsNTAuODFdLFs4My4zOCw1MS4wN10sWzgzLjk0LDUwLjg5XSxbODQuNDIsNTAuMzFdLFs4NS4xMiw1MC4xMl0sWzg1LjU0LDQ5LjY5XSxbODYuODMsNDkuODNdLFs4Ny4zNiw0OS4yMV1dXV19LHtuOmBVemJla2lzdGFuYCxhMjpgVVpgLGEzOmBVWkJgLHA6YFVaYCxsOls2NC4wMSw0MS42OV0sZzpbW1tbNTUuOTcsNDEuMzFdLFs1NS45Myw0NV0sWzU4LjUsNDUuNTldLFs1OC42OSw0NS41XSxbNjAuMjQsNDQuNzhdLFs2MS4wNiw0NC40MV0sWzYyLjAxLDQzLjVdLFs2My4xOSw0My42NV0sWzY0LjksNDMuNzNdLFs2Ni4xLDQzXSxbNjYuMDIsNDEuOTldLFs2Ni41MSw0MS45OV0sWzY2LjcxLDQxLjE3XSxbNjcuOTksNDEuMTRdLFs2OC4yNiw0MC42Nl0sWzY4LjYzLDQwLjY3XSxbNjkuMDcsNDEuMzhdLFs3MC4zOSw0Mi4wOF0sWzcwLjk2LDQyLjI3XSxbNzEuMjYsNDIuMTddLFs3MC40Miw0MS41Ml0sWzcxLjE2LDQxLjE0XSxbNzEuODcsNDEuMzldLFs3My4wNiw0MC44N10sWzcxLjc3LDQwLjE1XSxbNzEuMDEsNDAuMjRdLFs3MC42LDQwLjIyXSxbNzAuNDYsNDAuNV0sWzcwLjY3LDQwLjk2XSxbNjkuMzMsNDAuNzNdLFs2OS4wMSw0MC4wOV0sWzY4LjU0LDM5LjUzXSxbNjcuNywzOS41OF0sWzY3LjQ0LDM5LjE0XSxbNjguMTgsMzguOV0sWzY4LjM5LDM4LjE2XSxbNjcuODMsMzcuMTRdLFs2Ny4wOCwzNy4zNl0sWzY2LjUyLDM3LjM2XSxbNjYuNTUsMzcuOTddLFs2NS4yMiwzOC40XSxbNjQuMTcsMzguODldLFs2My41MiwzOS4zNl0sWzYyLjM3LDQwLjA1XSxbNjEuODgsNDEuMDhdLFs2MS41NSw0MS4yN10sWzYwLjQ3LDQxLjIyXSxbNjAuMDgsNDEuNDNdLFs1OS45OCw0Mi4yMl0sWzU4LjYzLDQyLjc1XSxbNTcuNzksNDIuMTddLFs1Ni45Myw0MS44M10sWzU3LjEsNDEuMzJdLFs1NS45Nyw0MS4zMV1dXV19LHtuOmBQYXB1YSBOZXcgR3VpbmVhYCxhMjpgUEdgLGEzOmBQTkdgLHA6YFBHYCxsOlsxNDMuOTEsLTUuN10sZzpbW1tbMTQxLC0yLjZdLFsxNDIuNzQsLTMuMjldLFsxNDQuNTgsLTMuODZdLFsxNDUuMjcsLTQuMzddLFsxNDUuODMsLTQuODhdLFsxNDUuOTgsLTUuNDddLFsxNDcuNjUsLTYuMDhdLFsxNDcuODksLTYuNjFdLFsxNDYuOTcsLTYuNzJdLFsxNDcuMTksLTcuMzldLFsxNDguMDgsLTguMDRdLFsxNDguNzMsLTkuMV0sWzE0OS4zMSwtOS4wN10sWzE0OS4yNywtOS41MV0sWzE1MC4wNCwtOS42OF0sWzE0OS43NCwtOS44N10sWzE1MC44LC0xMC4yOV0sWzE1MC42OSwtMTAuNThdLFsxNTAuMDMsLTEwLjY1XSxbMTQ5Ljc4LC0xMC4zOV0sWzE0OC45MiwtMTAuMjhdLFsxNDcuOTEsLTEwLjEzXSxbMTQ3LjE0LC05LjQ5XSxbMTQ2LjU3LC04Ljk0XSxbMTQ2LjA1LC04LjA3XSxbMTQ0Ljc0LC03LjYzXSxbMTQzLjksLTcuOTJdLFsxNDMuMjksLTguMjVdLFsxNDMuNDEsLTguOThdLFsxNDIuNjMsLTkuMzNdLFsxNDIuMDcsLTkuMTZdLFsxNDEuMDMsLTkuMTJdLFsxNDEuMDIsLTUuODZdLFsxNDEsLTIuNl1dXSxbW1sxNTIuNjQsLTMuNjZdLFsxNTMuMDIsLTMuOThdLFsxNTMuMTQsLTQuNV0sWzE1Mi44MywtNC43N10sWzE1Mi42NCwtNC4xOF0sWzE1Mi40MSwtMy43OV0sWzE1MS45NSwtMy40Nl0sWzE1MS4zOCwtMy4wNF0sWzE1MC42NiwtMi43NF0sWzE1MC45NCwtMi41XSxbMTUxLjQ4LC0yLjc4XSxbMTUxLjgyLC0zXSxbMTUyLjI0LC0zLjI0XSxbMTUyLjY0LC0zLjY2XV1dLFtbWzE1MS4zLC01Ljg0XSxbMTUwLjc1LC02LjA4XSxbMTUwLjI0LC02LjMyXSxbMTQ5LjcxLC02LjMyXSxbMTQ4Ljg5LC02LjAzXSxbMTQ4LjMyLC01Ljc1XSxbMTQ4LjQsLTUuNDRdLFsxNDkuMywtNS41OF0sWzE0OS44NSwtNS41MV0sWzE1MCwtNS4wM10sWzE1MC4xNCwtNV0sWzE1MC4yNCwtNS41M10sWzE1MC44MSwtNS40Nl0sWzE1MS4wOSwtNS4xMV0sWzE1MS42NSwtNC43Nl0sWzE1MS41NCwtNC4xN10sWzE1Mi4xNCwtNC4xNV0sWzE1Mi4zNCwtNC4zMV0sWzE1Mi4zMiwtNC44N10sWzE1MS45OCwtNS40OF0sWzE1MS40NiwtNS41Nl0sWzE1MS4zLC01Ljg0XV1dLFtbWzE1NC43NiwtNS4zNF0sWzE1NS4wNiwtNS41N10sWzE1NS41NSwtNi4yXSxbMTU2LjAyLC02LjU0XSxbMTU1Ljg4LC02LjgyXSxbMTU1LjYsLTYuOTJdLFsxNTUuMTcsLTYuNTRdLFsxNTQuNzMsLTUuOV0sWzE1NC41MSwtNS4xNF0sWzE1NC42NSwtNS4wNF0sWzE1NC43NiwtNS4zNF1dXV19LHtuOmBJbmRvbmVzaWFgLGEyOmBJRGAsYTM6YElETmAscDpgSU5ET2AsbDpbMTAxLjg5LC0uOTVdLGc6W1tbWzE0MSwtMi42XSxbMTQxLjAyLC01Ljg2XSxbMTQxLjAzLC05LjEyXSxbMTQwLjE0LC04LjNdLFsxMzkuMTMsLTguMV0sWzEzOC44OCwtOC4zOF0sWzEzNy42MSwtOC40MV0sWzEzOC4wNCwtNy42XSxbMTM4LjY3LC03LjMyXSxbMTM4LjQxLC02LjIzXSxbMTM3LjkzLC01LjM5XSxbMTM1Ljk5LC00LjU1XSxbMTM1LjE2LC00LjQ2XSxbMTMzLjY2LC0zLjU0XSxbMTMzLjM3LC00LjAyXSxbMTMyLjk4LC00LjExXSxbMTMyLjc2LC0zLjc1XSxbMTMyLjc1LC0zLjMxXSxbMTMxLjk5LC0yLjgyXSxbMTMzLjA3LC0yLjQ2XSxbMTMzLjc4LC0yLjQ4XSxbMTMzLjcsLTIuMjFdLFsxMzIuMjMsLTIuMjFdLFsxMzEuODQsLTEuNjJdLFsxMzAuOTQsLTEuNDNdLFsxMzAuNTIsLS45NF0sWzEzMS44NywtLjddLFsxMzIuMzgsLS4zN10sWzEzMy45OSwtLjc4XSxbMTM0LjE0LC0xLjE1XSxbMTM0LjQyLC0yLjc3XSxbMTM1LjQ2LC0zLjM3XSxbMTM2LjI5LC0yLjMxXSxbMTM3LjQ0LC0xLjddLFsxMzguMzMsLTEuN10sWzEzOS4xOCwtMi4wNV0sWzEzOS45MywtMi40MV0sWzE0MSwtMi42XV1dLFtbWzEyNC45NywtOC44OV0sWzEyNS4wNywtOS4wOV0sWzEyNS4wOSwtOS4zOV0sWzEyNC40NCwtMTAuMTRdLFsxMjMuNTgsLTEwLjM2XSxbMTIzLjQ2LC0xMC4yNF0sWzEyMy41NSwtOS45XSxbMTIzLjk4LC05LjI5XSxbMTI0Ljk3LC04Ljg5XV1dLFtbWzEzNC4yMSwtNi45XSxbMTM0LjExLC02LjE0XSxbMTM0LjI5LC01Ljc4XSxbMTM0LjUsLTUuNDVdLFsxMzQuNzMsLTUuNzRdLFsxMzQuNzIsLTYuMjFdLFsxMzQuMjEsLTYuOV1dXSxbW1sxMTcuODgsNC4xNF0sWzExNy4zMSwzLjIzXSxbMTE4LjA1LDIuMjldLFsxMTcuODgsMS44M10sWzExOSwuOV0sWzExNy44MSwuNzhdLFsxMTcuNDgsLjFdLFsxMTcuNTIsLS44XSxbMTE2LjU2LC0xLjQ5XSxbMTE2LjUzLC0yLjQ4XSxbMTE2LjE1LC00LjAxXSxbMTE2LC0zLjY2XSxbMTE0Ljg2LC00LjExXSxbMTE0LjQ3LC0zLjVdLFsxMTMuNzYsLTMuNDRdLFsxMTMuMjYsLTMuMTJdLFsxMTIuMDcsLTMuNDhdLFsxMTEuNywtMi45OV0sWzExMS4wNSwtMy4wNV0sWzExMC4yMiwtMi45M10sWzExMC4wNywtMS41OV0sWzEwOS41NywtMS4zMV0sWzEwOS4wOSwtLjQ2XSxbMTA4Ljk1LC40Ml0sWzEwOS4wNywxLjM0XSxbMTA5LjY2LDIuMDFdLFsxMDkuODMsMS4zNF0sWzExMC41MSwuNzddLFsxMTEuMTYsLjk4XSxbMTExLjgsLjldLFsxMTIuMzgsMS40MV0sWzExMi44NiwxLjVdLFsxMTMuODEsMS4yMl0sWzExNC42MiwxLjQzXSxbMTE1LjEzLDIuODJdLFsxMTUuNTIsMy4xN10sWzExNS44Nyw0LjMxXSxbMTE3LjAyLDQuMzFdLFsxMTcuODgsNC4xNF1dXSxbW1sxMjkuMzcsLTIuOF0sWzEzMC40NywtMy4wOV0sWzEzMC44MywtMy44Nl0sWzEyOS45OSwtMy40NV0sWzEyOS4xNiwtMy4zNl0sWzEyOC41OSwtMy40M10sWzEyNy45LC0zLjM5XSxbMTI4LjE0LC0yLjg0XSxbMTI5LjM3LC0yLjhdXV0sW1tbMTI2Ljg3LC0zLjc5XSxbMTI2LjE4LC0zLjYxXSxbMTI1Ljk5LC0zLjE4XSxbMTI3LC0zLjEzXSxbMTI3LjI1LC0zLjQ2XSxbMTI2Ljg3LC0zLjc5XV1dLFtbWzEyNy45MywyLjE3XSxbMTI4LDEuNjNdLFsxMjguNTksMS41NF0sWzEyOC42OSwxLjEzXSxbMTI4LjY0LC4yNl0sWzEyOC4xMiwuMzZdLFsxMjcuOTcsLS4yNV0sWzEyOC4zOCwtLjc4XSxbMTI4LjEsLS45XSxbMTI3LjcsLS4yN10sWzEyNy40LDEuMDFdLFsxMjcuNiwxLjgxXSxbMTI3LjkzLDIuMTddXV0sW1tbMTIyLjkzLC44OF0sWzEyNC4wOCwuOTJdLFsxMjUuMDcsMS42NF0sWzEyNS4yNCwxLjQyXSxbMTI0LjQ0LC40M10sWzEyMy42OSwuMjRdLFsxMjIuNzIsLjQzXSxbMTIxLjA2LC4zOF0sWzEyMC4xOCwuMjRdLFsxMjAuMDQsLS41Ml0sWzEyMC45NCwtMS40MV0sWzEyMS40OCwtLjk2XSxbMTIzLjM0LC0uNjJdLFsxMjMuMjYsLTEuMDhdLFsxMjIuODIsLS45M10sWzEyMi4zOSwtMS41Ml0sWzEyMS41MSwtMS45XSxbMTIyLjQ1LC0zLjE5XSxbMTIyLjI3LC0zLjUzXSxbMTIzLjE3LC00LjY4XSxbMTIzLjE2LC01LjM0XSxbMTIyLjYzLC01LjYzXSxbMTIyLjI0LC01LjI4XSxbMTIyLjcyLC00LjQ2XSxbMTIxLjc0LC00Ljg1XSxbMTIxLjQ5LC00LjU3XSxbMTIxLjYyLC00LjE5XSxbMTIwLjksLTMuNl0sWzEyMC45NywtMi42M10sWzEyMC4zMSwtMi45M10sWzEyMC4zOSwtNC4xXSxbMTIwLjQzLC01LjUzXSxbMTE5LjgsLTUuNjddLFsxMTkuMzcsLTUuMzhdLFsxMTkuNjUsLTQuNDZdLFsxMTkuNSwtMy40OV0sWzExOS4wOCwtMy40OV0sWzExOC43NywtMi44XSxbMTE5LjE4LC0yLjE1XSxbMTE5LjMyLC0xLjM1XSxbMTE5LjgzLC4xNV0sWzEyMC4wNCwuNTddLFsxMjAuODksMS4zMV0sWzEyMS42NywxLjAxXSxbMTIyLjkzLC44OF1dXSxbW1sxMjAuMywtMTAuMjZdLFsxMTguOTcsLTkuNTZdLFsxMTkuOSwtOS4zNl0sWzEyMC40MywtOS42N10sWzEyMC43OCwtOS45N10sWzEyMC43MiwtMTAuMjRdLFsxMjAuMywtMTAuMjZdXV0sW1tbMTIxLjM0LC04LjU0XSxbMTIyLjAxLC04LjQ2XSxbMTIyLjksLTguMDldLFsxMjIuNzYsLTguNjVdLFsxMjEuMjUsLTguOTNdLFsxMTkuOTIsLTguODFdLFsxMTkuOTIsLTguNDRdLFsxMjAuNzIsLTguMjRdLFsxMjEuMzQsLTguNTRdXV0sW1tbMTE4LjI2LC04LjM2XSxbMTE4Ljg4LC04LjI4XSxbMTE5LjEzLC04LjcxXSxbMTE3Ljk3LC04LjkxXSxbMTE3LjI4LC05LjA0XSxbMTE2Ljc0LC05LjAzXSxbMTE3LjA4LC04LjQ2XSxbMTE3LjYzLC04LjQ1XSxbMTE3LjksLTguMV0sWzExOC4yNiwtOC4zNl1dXSxbW1sxMDguNDksLTYuNDJdLFsxMDguNjIsLTYuNzhdLFsxMTAuNTQsLTYuODhdLFsxMTAuNzYsLTYuNDddLFsxMTIuNjEsLTYuOTVdLFsxMTIuOTgsLTcuNTldLFsxMTQuNDgsLTcuNzhdLFsxMTUuNzEsLTguMzddLFsxMTQuNTYsLTguNzVdLFsxMTMuNDYsLTguMzVdLFsxMTIuNTYsLTguMzhdLFsxMTEuNTIsLTguM10sWzExMC41OSwtOC4xMl0sWzEwOS40MywtNy43NF0sWzEwOC42OSwtNy42NF0sWzEwOC4yOCwtNy43N10sWzEwNi40NSwtNy4zNV0sWzEwNi4yOCwtNi45Ml0sWzEwNS4zNywtNi44NV0sWzEwNi4wNSwtNS45XSxbMTA3LjI3LC01Ljk1XSxbMTA4LjA3LC02LjM1XSxbMTA4LjQ5LC02LjQyXV1dLFtbWzEwNC4zNywtMS4wOF0sWzEwNC41NCwtMS43OF0sWzEwNC44OSwtMi4zNF0sWzEwNS42MiwtMi40M10sWzEwNi4xMSwtMy4wNl0sWzEwNS44NiwtNC4zMV0sWzEwNS44MiwtNS44NV0sWzEwNC43MSwtNS44N10sWzEwMy44NywtNS4wNF0sWzEwMi41OCwtNC4yMl0sWzEwMi4xNiwtMy42MV0sWzEwMS40LC0yLjhdLFsxMDAuOSwtMi4wNV0sWzEwMC4xNCwtLjY1XSxbOTkuMjYsLjE4XSxbOTguOTcsMS4wNF0sWzk4LjYsMS44Ml0sWzk3LjcsMi40NV0sWzk3LjE4LDMuMzFdLFs5Ni40MiwzLjg3XSxbOTUuMzgsNC45N10sWzk1LjI5LDUuNDhdLFs5NS45NCw1LjQ0XSxbOTcuNDgsNS4yNV0sWzk4LjM3LDQuMjddLFs5OS4xNCwzLjU5XSxbOTkuNjksMy4xN10sWzEwMC42NCwyLjFdLFsxMDEuNjYsMi4wOF0sWzEwMi41LDEuNF0sWzEwMy4wOCwuNTZdLFsxMDMuODQsLjFdLFsxMDMuNDQsLS43MV0sWzEwNC4wMSwtMS4wNl0sWzEwNC4zNywtMS4wOF1dXV19LHtuOmBBcmdlbnRpbmFgLGEyOmBBUmAsYTM6YEFSR2AscDpgQVJgLGw6Wy02NC4xNywtMzMuNV0sZzpbW1tbLTY4LjYzLC01Mi42NF0sWy02OC4yNSwtNTMuMV0sWy02Ny43NSwtNTMuODVdLFstNjYuNDUsLTU0LjQ1XSxbLTY1LjA1LC01NC43XSxbLTY1LjUsLTU1LjJdLFstNjYuNDUsLTU1LjI1XSxbLTY2Ljk2LC01NC45XSxbLTY3LjU2LC01NC44N10sWy02OC42MywtNTQuODddLFstNjguNjMsLTUyLjY0XV1dLFtbWy01Ny42MywtMzAuMjJdLFstNTcuODcsLTMxLjAyXSxbLTU4LjE0LC0zMi4wNF0sWy01OC4xMywtMzMuMDRdLFstNTguMzUsLTMzLjI2XSxbLTU4LjQzLC0zMy45MV0sWy01OC41LC0zNC40M10sWy01Ny4yMywtMzUuMjldLFstNTcuMzYsLTM1Ljk4XSxbLTU2Ljc0LC0zNi40MV0sWy01Ni43OSwtMzYuOV0sWy01Ny43NSwtMzguMThdLFstNTkuMjMsLTM4LjcyXSxbLTYxLjI0LC0zOC45M10sWy02Mi4zNCwtMzguODNdLFstNjIuMTMsLTM5LjQyXSxbLTYyLjMzLC00MC4xN10sWy02Mi4xNSwtNDAuNjhdLFstNjIuNzUsLTQxLjAzXSxbLTYzLjc3LC00MS4xN10sWy02NC43MywtNDAuOF0sWy02NS4xMiwtNDEuMDZdLFstNjQuOTgsLTQyLjA2XSxbLTY0LjMsLTQyLjM2XSxbLTYzLjc2LC00Mi4wNF0sWy02My40NiwtNDIuNTZdLFstNjQuMzgsLTQyLjg3XSxbLTY1LjE4LC00My41XSxbLTY1LjMzLC00NC41XSxbLTY1LjU3LC00NS4wNF0sWy02Ni41MSwtNDUuMDRdLFstNjcuMjksLTQ1LjU1XSxbLTY3LjU4LC00Ni4zXSxbLTY2LjYsLTQ3LjAzXSxbLTY1LjY0LC00Ny4yNF0sWy02NS45OSwtNDguMTNdLFstNjcuMTcsLTQ4LjddLFstNjcuODIsLTQ5Ljg3XSxbLTY4LjczLC01MC4yNl0sWy02OS4xNCwtNTAuNzNdLFstNjguODIsLTUxLjc3XSxbLTY4LjE1LC01Mi4zNV0sWy02OC41NywtNTIuM10sWy02OS41LC01Mi4xNF0sWy03MS45MSwtNTIuMDFdLFstNzIuMzMsLTUxLjQzXSxbLTcyLjMxLC01MC42OF0sWy03Mi45OCwtNTAuNzRdLFstNzMuMzMsLTUwLjM4XSxbLTczLjQyLC00OS4zMl0sWy03Mi42NSwtNDguODhdLFstNzIuMzMsLTQ4LjI0XSxbLTcyLjQ1LC00Ny43NF0sWy03MS45MiwtNDYuODhdLFstNzEuNTUsLTQ1LjU2XSxbLTcxLjY2LC00NC45N10sWy03MS4yMiwtNDQuNzhdLFstNzEuMzMsLTQ0LjQxXSxbLTcxLjc5LC00NC4yMV0sWy03MS40NiwtNDMuNzldLFstNzEuOTIsLTQzLjQxXSxbLTcyLjE1LC00Mi4yNV0sWy03MS43NSwtNDIuMDVdLFstNzEuOTIsLTQwLjgzXSxbLTcxLjY4LC0zOS44MV0sWy03MS40MSwtMzguOTJdLFstNzAuODEsLTM4LjU1XSxbLTcxLjEyLC0zNy41OF0sWy03MS4xMiwtMzYuNjZdLFstNzAuMzYsLTM2LjAxXSxbLTcwLjM5LC0zNS4xN10sWy02OS44MiwtMzQuMTldLFstNjkuODEsLTMzLjI3XSxbLTcwLjA3LC0zMy4wOV0sWy03MC41NCwtMzEuMzddLFstNjkuOTIsLTMwLjM0XSxbLTcwLjAxLC0yOS4zN10sWy02OS42NiwtMjguNDZdLFstNjksLTI3LjUyXSxbLTY4LjMsLTI2LjldLFstNjguNTksLTI2LjUxXSxbLTY4LjM5LC0yNi4xOV0sWy02OC40MiwtMjQuNTJdLFstNjcuMzMsLTI0LjAzXSxbLTY2Ljk5LC0yMi45OV0sWy02Ny4xMSwtMjIuNzRdLFstNjYuMjcsLTIxLjgzXSxbLTY0Ljk2LC0yMi4wOF0sWy02NC4zOCwtMjIuOF0sWy02My45OSwtMjEuOTldLFstNjIuODUsLTIyLjAzXSxbLTYyLjY5LC0yMi4yNV0sWy02MC44NSwtMjMuODhdLFstNjAuMDMsLTI0LjAzXSxbLTU4LjgxLC0yNC43N10sWy01Ny43OCwtMjUuMTZdLFstNTcuNjMsLTI1LjZdLFstNTguNjIsLTI3LjEyXSxbLTU3LjYxLC0yNy40XSxbLTU2LjQ5LC0yNy41NV0sWy01NS43LC0yNy4zOV0sWy01NC43OSwtMjYuNjJdLFstNTQuNjMsLTI1Ljc0XSxbLTU0LjEzLC0yNS41NV0sWy01My42MywtMjYuMTJdLFstNTMuNjUsLTI2LjkyXSxbLTU0LjQ5LC0yNy40N10sWy01NS4xNiwtMjcuODhdLFstNTYuMjksLTI4Ljg1XSxbLTU3LjYzLC0zMC4yMl1dXV19LHtuOmBDaGlsZWAsYTI6YENMYCxhMzpgQ0hMYCxwOmBDTGAsbDpbLTcyLjMyLC0zOC4xNV0sZzpbW1tbLTY4LjYzLC01Mi42NF0sWy02OC42MywtNTQuODddLFstNjcuNTYsLTU0Ljg3XSxbLTY2Ljk2LC01NC45XSxbLTY3LjI5LC01NS4zXSxbLTY4LjE1LC01NS42MV0sWy02OC42NCwtNTUuNThdLFstNjkuMjMsLTU1LjVdLFstNjkuOTYsLTU1LjJdLFstNzEuMDEsLTU1LjA1XSxbLTcyLjI2LC01NC41XSxbLTczLjI5LC01My45Nl0sWy03NC42NiwtNTIuODRdLFstNzMuODQsLTUzLjA1XSxbLTcyLjQzLC01My43Ml0sWy03MS4xMSwtNTQuMDddLFstNzAuNTksLTUzLjYyXSxbLTcwLjI3LC01Mi45M10sWy02OS4zNSwtNTIuNTJdLFstNjguNjMsLTUyLjY0XV1dLFtbWy02OS41OSwtMTcuNThdLFstNjkuMSwtMTguMjZdLFstNjguOTcsLTE4Ljk4XSxbLTY4LjQ0LC0xOS40MV0sWy02OC43NiwtMjAuMzddLFstNjguMjIsLTIxLjQ5XSxbLTY3LjgzLC0yMi44N10sWy02Ny4xMSwtMjIuNzRdLFstNjYuOTksLTIyLjk5XSxbLTY3LjMzLC0yNC4wM10sWy02OC40MiwtMjQuNTJdLFstNjguMzksLTI2LjE5XSxbLTY4LjU5LC0yNi41MV0sWy02OC4zLC0yNi45XSxbLTY5LC0yNy41Ml0sWy02OS42NiwtMjguNDZdLFstNzAuMDEsLTI5LjM3XSxbLTY5LjkyLC0zMC4zNF0sWy03MC41NCwtMzEuMzddLFstNzAuMDcsLTMzLjA5XSxbLTY5LjgxLC0zMy4yN10sWy02OS44MiwtMzQuMTldLFstNzAuMzksLTM1LjE3XSxbLTcwLjM2LC0zNi4wMV0sWy03MS4xMiwtMzYuNjZdLFstNzEuMTIsLTM3LjU4XSxbLTcwLjgxLC0zOC41NV0sWy03MS40MSwtMzguOTJdLFstNzEuNjgsLTM5LjgxXSxbLTcxLjkyLC00MC44M10sWy03MS43NSwtNDIuMDVdLFstNzIuMTUsLTQyLjI1XSxbLTcxLjkyLC00My40MV0sWy03MS40NiwtNDMuNzldLFstNzEuNzksLTQ0LjIxXSxbLTcxLjMzLC00NC40MV0sWy03MS4yMiwtNDQuNzhdLFstNzEuNjYsLTQ0Ljk3XSxbLTcxLjU1LC00NS41Nl0sWy03MS45MiwtNDYuODhdLFstNzIuNDUsLTQ3Ljc0XSxbLTcyLjMzLC00OC4yNF0sWy03Mi42NSwtNDguODhdLFstNzMuNDIsLTQ5LjMyXSxbLTczLjMzLC01MC4zOF0sWy03Mi45OCwtNTAuNzRdLFstNzIuMzEsLTUwLjY4XSxbLTcyLjMzLC01MS40M10sWy03MS45MSwtNTIuMDFdLFstNjkuNSwtNTIuMTRdLFstNjguNTcsLTUyLjNdLFstNjkuNDYsLTUyLjI5XSxbLTY5Ljk0LC01Mi41NF0sWy03MC44NSwtNTIuOV0sWy03MS4wMSwtNTMuODNdLFstNzEuNDMsLTUzLjg2XSxbLTcyLjU2LC01My41M10sWy03My43LC01Mi44NF0sWy03NC45NSwtNTIuMjZdLFstNzUuMjYsLTUxLjYzXSxbLTc0Ljk4LC01MS4wNF0sWy03NS40OCwtNTAuMzhdLFstNzUuNjEsLTQ4LjY3XSxbLTc1LjE4LC00Ny43MV0sWy03NC4xMywtNDYuOTRdLFstNzUuNjQsLTQ2LjY1XSxbLTc0LjY5LC00NS43Nl0sWy03NC4zNSwtNDQuMV0sWy03My4yNCwtNDQuNDVdLFstNzIuNzIsLTQyLjM4XSxbLTczLjM5LC00Mi4xMl0sWy03My43LC00My4zN10sWy03NC4zMywtNDMuMjJdLFstNzQuMDIsLTQxLjc5XSxbLTczLjY4LC0zOS45NF0sWy03My4yMiwtMzkuMjZdLFstNzMuNTEsLTM4LjI4XSxbLTczLjU5LC0zNy4xNl0sWy03My4xNywtMzcuMTJdLFstNzIuNTUsLTM1LjUxXSxbLTcxLjg2LC0zMy45MV0sWy03MS40NCwtMzIuNDJdLFstNzEuNjcsLTMwLjkyXSxbLTcxLjM3LC0zMC4xXSxbLTcxLjQ5LC0yOC44Nl0sWy03MC45MSwtMjcuNjRdLFstNzAuNzIsLTI1LjcxXSxbLTcwLjQsLTIzLjYzXSxbLTcwLjA5LC0yMS4zOV0sWy03MC4xNiwtMTkuNzZdLFstNzAuMzcsLTE4LjM1XSxbLTY5Ljg2LC0xOC4wOV0sWy02OS41OSwtMTcuNThdXV1dfSx7bjpgRGVtb2NyYXRpYyBSZXB1YmxpYyBvZiB0aGUgQ29uZ29gLGEyOmBDRGAsYTM6YENPRGAscDpgRFJDYCxsOlsyMy40NiwtMS44Nl0sZzpbW1tbMjkuMzQsLTQuNV0sWzI5LjUyLC01LjQyXSxbMjkuNDIsLTUuOTRdLFsyOS42MiwtNi41Ml0sWzMwLjIsLTcuMDhdLFszMC43NCwtOC4zNF0sWzMwLjM1LC04LjI0XSxbMjksLTguNDFdLFsyOC43MywtOC41M10sWzI4LjQ1LC05LjE2XSxbMjguNjcsLTkuNjFdLFsyOC41LC0xMC43OV0sWzI4LjM3LC0xMS43OV0sWzI4LjY0LC0xMS45N10sWzI5LjM0LC0xMi4zNl0sWzI5LjYyLC0xMi4xOF0sWzI5LjcsLTEzLjI2XSxbMjguOTMsLTEzLjI1XSxbMjguNTIsLTEyLjddLFsyOC4xNiwtMTIuMjddLFsyNy4zOSwtMTIuMTNdLFsyNy4xNiwtMTEuNjFdLFsyNi41NSwtMTEuOTJdLFsyNS43NSwtMTEuNzhdLFsyNS40MiwtMTEuMzNdLFsyNC43OCwtMTEuMjRdLFsyNC4zMSwtMTEuMjZdLFsyNC4yNiwtMTAuOTVdLFsyMy45MSwtMTAuOTNdLFsyMy40NiwtMTAuODddLFsyMi44NCwtMTEuMDJdLFsyMi40LC0xMC45OV0sWzIyLjE2LC0xMS4wOF0sWzIyLjIxLC05Ljg5XSxbMjEuODgsLTkuNTJdLFsyMS44LC04LjkxXSxbMjEuOTUsLTguMzFdLFsyMS43NSwtNy45Ml0sWzIxLjczLC03LjI5XSxbMjAuNTEsLTcuM10sWzIwLjYsLTYuOTRdLFsyMC4wOSwtNi45NF0sWzIwLjA0LC03LjEyXSxbMTkuNDIsLTcuMTZdLFsxOS4xNywtNy43NF0sWzE5LjAyLC03Ljk5XSxbMTguNDYsLTcuODVdLFsxOC4xMywtNy45OV0sWzE3LjQ3LC04LjA3XSxbMTcuMDksLTcuNTVdLFsxNi44NiwtNy4yMl0sWzE2LjU3LC02LjYyXSxbMTYuMzMsLTUuODhdLFsxMy4zOCwtNS44Nl0sWzEzLjAyLC01Ljk4XSxbMTIuNzQsLTUuOTddLFsxMi4zMiwtNi4xXSxbMTIuMTgsLTUuNzldLFsxMi40NCwtNS42OF0sWzEyLjQ3LC01LjI1XSxbMTIuNjMsLTQuOTldLFsxMywtNC43OF0sWzEzLjI2LC00Ljg4XSxbMTMuNiwtNC41XSxbMTQuMTQsLTQuNTFdLFsxNC4yMSwtNC43OV0sWzE0LjU4LC00Ljk3XSxbMTUuMTcsLTQuMzRdLFsxNS43NSwtMy44Nl0sWzE2LjAxLC0zLjU0XSxbMTUuOTcsLTIuNzFdLFsxNi40MSwtMS43NF0sWzE2Ljg3LC0xLjIzXSxbMTcuNTIsLS43NF0sWzE3LjY0LC0uNDJdLFsxNy42NiwtLjA2XSxbMTcuODMsLjI5XSxbMTcuNzcsLjg2XSxbMTcuOSwxLjc0XSxbMTguMDksMi4zN10sWzE4LjM5LDIuOV0sWzE4LjQ1LDMuNV0sWzE4LjU0LDQuMl0sWzE4LjkzLDQuNzFdLFsxOS40Nyw1LjAzXSxbMjAuMjksNC42OV0sWzIwLjkzLDQuMzJdLFsyMS42Niw0LjIyXSxbMjIuNDEsNC4wM10sWzIyLjcsNC42M10sWzIyLjg0LDQuNzFdLFsyMy4zLDQuNjFdLFsyNC40MSw1LjExXSxbMjQuODEsNC45XSxbMjUuMTMsNC45M10sWzI1LjI4LDUuMTddLFsyNS42NSw1LjI2XSxbMjYuNCw1LjE1XSxbMjcuMDQsNS4xM10sWzI3LjM3LDUuMjNdLFsyNy45OCw0LjQxXSxbMjguNDMsNC4yOV0sWzI4LjcsNC40Nl0sWzI5LjE2LDQuMzldLFsyOS43Miw0LjZdLFsyOS45NSw0LjE3XSxbMzAuODMsMy41MV0sWzMwLjc3LDIuMzRdLFszMS4xNywyLjJdLFszMC44NSwxLjg1XSxbMzAuNDcsMS41OF0sWzMwLjA5LDEuMDZdLFsyOS44OCwuNl0sWzI5LjgyLC0uMjFdLFsyOS41OSwtLjU5XSxbMjkuNTgsLTEuMzRdLFsyOS4yOSwtMS42Ml0sWzI5LjI1LC0yLjIyXSxbMjkuMTIsLTIuMjldLFsyOS4wMiwtMi44NF0sWzI5LjI4LC0zLjI5XSxbMjkuMzQsLTQuNV1dXV19LHtuOmBTb21hbGlhYCxhMjpgU09gLGEzOmBTT01gLHA6YFNPYCxsOls0NS4xOSwzLjU3XSxnOltbW1s0MS41OSwtMS42OF0sWzQwLjk5LC0uODZdLFs0MC45OCwyLjc4XSxbNDEuODYsMy45Ml0sWzQyLjEzLDQuMjNdLFs0Mi43Nyw0LjI1XSxbNDMuNjYsNC45Nl0sWzQ0Ljk2LDVdLFs0Ny43OSw4XSxbNDguNDksOC44NF0sWzQ4Ljk0LDkuNDVdLFs0OC45NCw5Ljk3XSxbNDguOTQsMTAuOThdLFs0OC45NCwxMS4zOV0sWzQ4Ljk1LDExLjQxXSxbNDkuMjcsMTEuNDNdLFs0OS43MywxMS41OF0sWzUwLjI2LDExLjY4XSxbNTAuNzMsMTIuMDJdLFs1MS4xMSwxMi4wMl0sWzUxLjEzLDExLjc1XSxbNTEuMDQsMTEuMTddLFs1MS4wNSwxMC42NF0sWzUwLjgzLDEwLjI4XSxbNTAuNTUsOS4yXSxbNTAuMDcsOC4wOF0sWzQ5LjQ1LDYuOF0sWzQ4LjU5LDUuMzRdLFs0Ny43NCw0LjIyXSxbNDYuNTYsMi44Nl0sWzQ1LjU2LDIuMDVdLFs0NC4wNywxLjA1XSxbNDMuMTQsLjI5XSxbNDIuMDQsLS45Ml0sWzQxLjgxLC0xLjQ1XSxbNDEuNTksLTEuNjhdXV1dfSx7bjpgS2VueWFgLGEyOmBLRWAsYTM6YEtFTmAscDpgS0VgLGw6WzM3LjkxLC41NV0sZzpbW1tbMzkuMiwtNC42OF0sWzM3Ljc3LC0zLjY4XSxbMzcuNywtMy4xXSxbMzQuMDcsLTEuMDZdLFszMy45LC0uOTVdLFszMy44OSwuMTFdLFszNC4xOCwuNTJdLFszNC42NywxLjE4XSxbMzUuMDQsMS45MV0sWzM0LjYsMy4wNV0sWzM0LjQ4LDMuNTZdLFszNC4wMSw0LjI1XSxbMzQuNjIsNC44NV0sWzM1LjMsNS41MV0sWzM1LjgyLDUuMzRdLFszNS44Miw0Ljc4XSxbMzYuMTYsNC40NV0sWzM2Ljg2LDQuNDVdLFszOC4xMiwzLjZdLFszOC40NCwzLjU5XSxbMzguNjcsMy42Ml0sWzM4Ljg5LDMuNV0sWzM5LjU2LDMuNDJdLFszOS44NSwzLjg0XSxbNDAuNzcsNC4yNl0sWzQxLjE3LDMuOTJdLFs0MS44NiwzLjkyXSxbNDAuOTgsMi43OF0sWzQwLjk5LC0uODZdLFs0MS41OSwtMS42OF0sWzQwLjg4LC0yLjA4XSxbNDAuNjQsLTIuNV0sWzQwLjI2LC0yLjU3XSxbNDAuMTIsLTMuMjhdLFszOS44LC0zLjY4XSxbMzkuNiwtNC4zNV0sWzM5LjIsLTQuNjhdXV1dfSx7bjpgU3VkYW5gLGEyOmBTRGAsYTM6YFNETmAscDpgU0RgLGw6WzI5LjI2LDE2LjMzXSxnOltbW1syNC41Nyw4LjIzXSxbMjMuODEsOC42N10sWzIzLjQ2LDguOTVdLFsyMy4zOSw5LjI3XSxbMjMuNTYsOS42OF0sWzIzLjU1LDEwLjA5XSxbMjIuOTgsMTAuNzFdLFsyMi44NiwxMS4xNF0sWzIyLjg4LDExLjM4XSxbMjIuNTEsMTEuNjhdLFsyMi41LDEyLjI2XSxbMjIuMjksMTIuNjVdLFsyMS45NCwxMi41OV0sWzIyLjA0LDEyLjk2XSxbMjIuMywxMy4zN10sWzIyLjE4LDEzLjc5XSxbMjIuNTEsMTQuMDldLFsyMi4zLDE0LjMzXSxbMjIuNTcsMTQuOTRdLFsyMy4wMiwxNS42OF0sWzIzLjg5LDE1LjYxXSxbMjMuODQsMTkuNThdLFsyMy44NSwyMF0sWzI1LDIwXSxbMjUsMjJdLFsyOS4wMiwyMl0sWzMyLjksMjJdLFszNi44NywyMl0sWzM3LjE5LDIxLjAyXSxbMzYuOTcsMjAuODRdLFszNy4xMSwxOS44MV0sWzM3LjQ4LDE4LjYxXSxbMzcuODYsMTguMzddLFszOC40MSwxOF0sWzM3LjksMTcuNDNdLFszNy4xNywxNy4yNl0sWzM2Ljg1LDE2Ljk2XSxbMzYuNzUsMTYuMjldLFszNi4zMiwxNC44Ml0sWzM2LjQzLDE0LjQyXSxbMzYuMjcsMTMuNTZdLFszNS44NiwxMi41OF0sWzM1LjI2LDEyLjA4XSxbMzQuODMsMTEuMzJdLFszNC43MywxMC45MV0sWzM0LjI2LDEwLjYzXSxbMzMuOTYsOS41OF0sWzMzLjk3LDguNjhdLFszMy45Niw5LjQ2XSxbMzMuODIsOS40OF0sWzMzLjg0LDkuOThdLFszMy43MiwxMC4zM10sWzMzLjIxLDEwLjcyXSxbMzMuMDksMTEuNDRdLFszMy4yMSwxMi4xOF0sWzMyLjc0LDEyLjI1XSxbMzIuNjcsMTIuMDJdLFszMi4wNywxMS45N10sWzMyLjMxLDExLjY4XSxbMzIuNCwxMS4wOF0sWzMxLjg1LDEwLjUzXSxbMzEuMzUsOS44MV0sWzMwLjg0LDkuNzFdLFszMCwxMC4yOV0sWzI5LjYyLDEwLjA4XSxbMjkuNTIsOS43OV0sWzI5LDkuNl0sWzI4Ljk3LDkuNF0sWzI3Ljk3LDkuNF0sWzI3LjgzLDkuNl0sWzI3LjExLDkuNjRdLFsyNi43NSw5LjQ3XSxbMjYuNDgsOS41NV0sWzI1Ljk2LDEwLjE0XSxbMjUuNzksMTAuNDFdLFsyNS4wNywxMC4yN10sWzI0Ljc5LDkuODFdLFsyNC41NCw4LjkyXSxbMjQuMTksOC43M10sWzIzLjg5LDguNjJdLFsyNC41Nyw4LjIzXV1dXX0se246YENoYWRgLGEyOmBURGAsYTM6YFRDRGAscDpgVERgLGw6WzE4LjY1LDE1LjE0XSxnOltbW1syMy44NCwxOS41OF0sWzIzLjg5LDE1LjYxXSxbMjMuMDIsMTUuNjhdLFsyMi41NywxNC45NF0sWzIyLjMsMTQuMzNdLFsyMi41MSwxNC4wOV0sWzIyLjE4LDEzLjc5XSxbMjIuMywxMy4zN10sWzIyLjA0LDEyLjk2XSxbMjEuOTQsMTIuNTldLFsyMi4yOSwxMi42NV0sWzIyLjUsMTIuMjZdLFsyMi41MSwxMS42OF0sWzIyLjg4LDExLjM4XSxbMjIuODYsMTEuMTRdLFsyMi4yMywxMC45N10sWzIxLjcyLDEwLjU3XSxbMjEsOS40OF0sWzIwLjA2LDkuMDFdLFsxOS4wOSw5LjA3XSxbMTguODEsOC45OF0sWzE4LjkxLDguNjNdLFsxOC4zOSw4LjI4XSxbMTcuOTYsNy44OV0sWzE2LjcxLDcuNTFdLFsxNi40Niw3LjczXSxbMTYuMjksNy43NV0sWzE2LjExLDcuNV0sWzE1LjI4LDcuNDJdLFsxNS40NCw3LjY5XSxbMTUuMTIsOC4zOF0sWzE0Ljk4LDguOF0sWzE0LjU0LDguOTddLFsxMy45NSw5LjU1XSxbMTQuMTcsMTAuMDJdLFsxNC42Myw5LjkyXSxbMTQuOTEsOS45OV0sWzE1LjQ3LDkuOThdLFsxNC45MiwxMC44OV0sWzE0Ljk2LDExLjU2XSxbMTQuODksMTIuMjJdLFsxNC41LDEyLjg2XSxbMTQuNiwxMy4zM10sWzEzLjk1LDEzLjM1XSxbMTMuOTYsMTRdLFsxMy41NCwxNC4zN10sWzEzLjk3LDE1LjY4XSxbMTUuMjUsMTYuNjNdLFsxNS4zLDE3LjkzXSxbMTUuNjksMTkuOTZdLFsxNS45LDIwLjM5XSxbMTUuNDksMjAuNzNdLFsxNS40NywyMS4wNV0sWzE1LjEsMjEuMzFdLFsxNC44NSwyMi44Nl0sWzE1Ljg2LDIzLjQxXSxbMTkuODUsMjEuNV0sWzIzLjg0LDE5LjU4XV1dXX0se246YEhhaXRpYCxhMjpgSFRgLGEzOmBIVElgLHA6YEhUYCxsOlstNzIuMjIsMTkuMjZdLGc6W1tbWy03MS43MSwxOS43MV0sWy03MS42MiwxOS4xN10sWy03MS43LDE4Ljc5XSxbLTcxLjk1LDE4LjYyXSxbLTcxLjY5LDE4LjMyXSxbLTcxLjcxLDE4LjA0XSxbLTcyLjM3LDE4LjIxXSxbLTcyLjg0LDE4LjE1XSxbLTczLjQ1LDE4LjIyXSxbLTczLjkyLDE4LjAzXSxbLTc0LjQ2LDE4LjM0XSxbLTc0LjM3LDE4LjY2XSxbLTczLjQ1LDE4LjUzXSxbLTcyLjY5LDE4LjQ1XSxbLTcyLjMzLDE4LjY3XSxbLTcyLjc5LDE5LjFdLFstNzIuNzgsMTkuNDhdLFstNzMuNDIsMTkuNjRdLFstNzMuMTksMTkuOTJdLFstNzIuNTgsMTkuODddLFstNzEuNzEsMTkuNzFdXV1dfSx7bjpgRG9taW5pY2FuIFJlcHVibGljYCxhMjpgRE9gLGEzOmBET01gLHA6YERPYCxsOlstNzAuNjUsMTkuMV0sZzpbW1tbLTcxLjcxLDE4LjA0XSxbLTcxLjY5LDE4LjMyXSxbLTcxLjk1LDE4LjYyXSxbLTcxLjcsMTguNzldLFstNzEuNjIsMTkuMTddLFstNzEuNzEsMTkuNzFdLFstNzEuNTksMTkuODhdLFstNzAuODEsMTkuODhdLFstNzAuMjEsMTkuNjJdLFstNjkuOTUsMTkuNjVdLFstNjkuNzcsMTkuMjldLFstNjkuMjIsMTkuMzFdLFstNjkuMjUsMTkuMDJdLFstNjguODEsMTguOThdLFstNjguMzIsMTguNjFdLFstNjguNjksMTguMjFdLFstNjkuMTYsMTguNDJdLFstNjkuNjIsMTguMzhdLFstNjkuOTUsMTguNDNdLFstNzAuMTMsMTguMjVdLFstNzAuNTIsMTguMThdLFstNzAuNjcsMTguNDNdLFstNzEsMTguMjhdLFstNzEuNCwxNy42XSxbLTcxLjY2LDE3Ljc2XSxbLTcxLjcxLDE4LjA0XV1dXX0se246YFJ1c3NpYW4gRmVkZXJhdGlvbmAsYTI6YFJVYCxhMzpgUlVTYCxwOmBSVVNgLGw6WzQ0LjY5LDU4LjI1XSxnOltbW1sxNzguNzMsNzEuMV0sWzE4MCw3MS41Ml0sWzE4MCw3MC44M10sWzE3OC45LDcwLjc4XSxbMTc4LjczLDcxLjFdXV0sW1tbNDkuMSw0Ni40XSxbNDguNjUsNDUuODFdLFs0Ny42OCw0NS42NF0sWzQ2LjY4LDQ0LjYxXSxbNDcuNTksNDMuNjZdLFs0Ny40OSw0Mi45OV0sWzQ4LjU4LDQxLjgxXSxbNDcuOTksNDEuNDFdLFs0Ny44Miw0MS4xNV0sWzQ3LjM3LDQxLjIyXSxbNDYuNjksNDEuODNdLFs0Ni40LDQxLjg2XSxbNDUuNzgsNDIuMDldLFs0NS40Nyw0Mi41XSxbNDQuNTQsNDIuNzFdLFs0My45Myw0Mi41NV0sWzQzLjc2LDQyLjc0XSxbNDIuMzksNDMuMjJdLFs0MC45Miw0My4zOF0sWzQwLjA4LDQzLjU1XSxbMzkuOTYsNDMuNDNdLFszOC42OCw0NC4yOF0sWzM3LjU0LDQ0LjY2XSxbMzYuNjgsNDUuMjRdLFszNy40LDQ1LjRdLFszOC4yMyw0Ni4yNF0sWzM3LjY3LDQ2LjY0XSxbMzkuMTUsNDcuMDRdLFszOS4xMiw0Ny4yNl0sWzM4LjIyLDQ3LjFdLFszOC4yNiw0Ny41NV0sWzM4Ljc3LDQ3LjgzXSxbMzkuNzQsNDcuOV0sWzM5LjksNDguMjNdLFszOS42Nyw0OC43OF0sWzQwLjA4LDQ5LjMxXSxbNDAuMDcsNDkuNl0sWzM4LjU5LDQ5LjkzXSxbMzguMDEsNDkuOTJdLFszNy4zOSw1MC4zOF0sWzM2LjYzLDUwLjIzXSxbMzUuMzYsNTAuNThdLFszNS4zOCw1MC43N10sWzM1LjAyLDUxLjIxXSxbMzQuMjIsNTEuMjZdLFszNC4xNCw1MS41N10sWzM0LjM5LDUxLjc3XSxbMzMuNzUsNTIuMzRdLFszMi43Miw1Mi4yNF0sWzMyLjQxLDUyLjI5XSxbMzIuMTYsNTIuMDZdLFszMS43OSw1Mi4xXSxbMzEuNTQsNTIuNzRdLFszMS4zMSw1My4wN10sWzMxLjUsNTMuMTddLFszMi4zLDUzLjEzXSxbMzIuNjksNTMuMzVdLFszMi40MSw1My42Ml0sWzMxLjczLDUzLjc5XSxbMzEuNzksNTMuOTddLFszMS4zOCw1NC4xNl0sWzMwLjc2LDU0LjgxXSxbMzAuOTcsNTUuMDhdLFszMC44Nyw1NS41NV0sWzI5LjksNTUuNzldLFsyOS4zNyw1NS42N10sWzI5LjIzLDU1LjkyXSxbMjguMTgsNTYuMTddLFsyNy44Niw1Ni43Nl0sWzI3Ljc3LDU3LjI0XSxbMjcuMjksNTcuNDddLFsyNy43Miw1Ny43OV0sWzI3LjQyLDU4LjcyXSxbMjguMTMsNTkuM10sWzI3Ljk4LDU5LjQ4XSxbMjkuMTIsNjAuMDNdLFsyOC4wNyw2MC41XSxbMzAuMjEsNjEuNzhdLFszMS4xNCw2Mi4zNl0sWzMxLjUyLDYyLjg3XSxbMzAuMDQsNjMuNTVdLFszMC40NCw2NC4yXSxbMjkuNTQsNjQuOTVdLFszMC4yMiw2NS44MV0sWzI5LjA1LDY2Ljk0XSxbMjkuOTgsNjcuN10sWzI4LjQ1LDY4LjM2XSxbMjguNTksNjkuMDZdLFsyOS40LDY5LjE2XSxbMzEuMSw2OS41Nl0sWzMyLjEzLDY5LjkxXSxbMzMuNzgsNjkuM10sWzM2LjUxLDY5LjA2XSxbNDAuMjksNjcuOTNdLFs0MS4wNiw2Ny40Nl0sWzQxLjEzLDY2Ljc5XSxbNDAuMDIsNjYuMjddLFszOC4zOCw2Nl0sWzMzLjkyLDY2Ljc2XSxbMzMuMTgsNjYuNjNdLFszNC44MSw2NS45XSxbMzQuODgsNjUuNDRdLFszNC45NCw2NC40MV0sWzM2LjIzLDY0LjExXSxbMzcuMDEsNjMuODVdLFszNy4xNCw2NC4zM10sWzM2LjU0LDY0Ljc2XSxbMzcuMTgsNjUuMTRdLFszOS41OSw2NC41Ml0sWzQwLjQ0LDY0Ljc2XSxbMzkuNzYsNjUuNV0sWzQyLjA5LDY2LjQ4XSxbNDMuMDIsNjYuNDJdLFs0My45NSw2Ni4wN10sWzQ0LjUzLDY2Ljc2XSxbNDMuNyw2Ny4zNV0sWzQ0LjE5LDY3Ljk1XSxbNDMuNDUsNjguNTddLFs0Ni4yNSw2OC4yNV0sWzQ2LjgyLDY3LjY5XSxbNDUuNTYsNjcuNTddLFs0NS41Niw2Ny4wMV0sWzQ2LjM1LDY2LjY3XSxbNDcuODksNjYuODhdLFs0OC4xNCw2Ny41Ml0sWzUwLjIzLDY4XSxbNTMuNzIsNjguODZdLFs1NC40Nyw2OC44MV0sWzUzLjQ5LDY4LjJdLFs1NC43Myw2OC4xXSxbNTUuNDQsNjguNDRdLFs1Ny4zMiw2OC40N10sWzU4LjgsNjguODhdLFs1OS45NCw2OC4yOF0sWzYxLjA4LDY4Ljk0XSxbNjAuMDMsNjkuNTJdLFs2MC41NSw2OS44NV0sWzYzLjUsNjkuNTVdLFs2NC44OSw2OS4yM10sWzY4LjUxLDY4LjA5XSxbNjkuMTgsNjguNjJdLFs2OC4xNiw2OS4xNF0sWzY4LjE0LDY5LjM2XSxbNjYuOTMsNjkuNDVdLFs2Ny4yNiw2OS45M10sWzY2LjcyLDcwLjcxXSxbNjYuNjksNzEuMDNdLFs2OC41NCw3MS45M10sWzY5LjIsNzIuODRdLFs2OS45NCw3My4wNF0sWzcyLjU5LDcyLjc4XSxbNzIuOCw3Mi4yMl0sWzcxLjg1LDcxLjQxXSxbNzIuNDcsNzEuMDldLFs3Mi43OSw3MC4zOV0sWzcyLjU2LDY5LjAyXSxbNzMuNjcsNjguNDFdLFs3My4yNCw2Ny43NF0sWzcxLjI4LDY2LjMyXSxbNzIuNDIsNjYuMTddLFs3Mi44Miw2Ni41M10sWzczLjkyLDY2Ljc5XSxbNzQuMTksNjcuMjhdLFs3NS4wNSw2Ny43Nl0sWzc0LjQ3LDY4LjMzXSxbNzQuOTQsNjguOTldLFs3My44NCw2OS4wN10sWzczLjYsNjkuNjNdLFs3NC40LDcwLjYzXSxbNzMuMSw3MS40NV0sWzc0Ljg5LDcyLjEyXSxbNzQuNjYsNzIuODNdLFs3NS4xNiw3Mi44NV0sWzc1LjY4LDcyLjNdLFs3NS4yOSw3MS4zNF0sWzc2LjM2LDcxLjE1XSxbNzUuOSw3MS44N10sWzc3LjU4LDcyLjI3XSxbNzkuNjUsNzIuMzJdLFs4MS41LDcxLjc1XSxbODAuNjEsNzIuNThdLFs4MC41MSw3My42NV0sWzgyLjI1LDczLjg1XSxbODQuNjYsNzMuODFdLFs4Ni44Miw3My45NF0sWzg2LjAxLDc0LjQ2XSxbODcuMTcsNzUuMTJdLFs4OC4zMiw3NS4xNF0sWzkwLjI2LDc1LjY0XSxbOTIuOSw3NS43N10sWzkzLjIzLDc2LjA1XSxbOTUuODYsNzYuMTRdLFs5Ni42OCw3NS45Ml0sWzk4LjkyLDc2LjQ1XSxbMTAwLjc2LDc2LjQzXSxbMTAxLjA0LDc2Ljg2XSxbMTAxLjk5LDc3LjI5XSxbMTA0LjM1LDc3LjddLFsxMDYuMDcsNzcuMzddLFsxMDQuNzEsNzcuMTNdLFsxMDYuOTcsNzYuOTddLFsxMDcuMjQsNzYuNDhdLFsxMDguMTUsNzYuNzJdLFsxMTEuMDgsNzYuNzFdLFsxMTMuMzMsNzYuMjJdLFsxMTQuMTMsNzUuODVdLFsxMTMuODksNzUuMzNdLFsxMTIuNzgsNzUuMDNdLFsxMTAuMTUsNzQuNDhdLFsxMDkuNCw3NC4xOF0sWzExMC42NCw3NC4wNF0sWzExMi4xMiw3My43OV0sWzExMy4wMiw3My45OF0sWzExMy41Myw3My4zNF0sWzExMy45Nyw3My41OV0sWzExNS41Nyw3My43NV0sWzExOC43OCw3My41OV0sWzExOS4wMiw3My4xMl0sWzEyMy4yLDcyLjk3XSxbMTIzLjI2LDczLjc0XSxbMTI1LjM4LDczLjU2XSxbMTI2Ljk4LDczLjU3XSxbMTI4LjU5LDczLjA0XSxbMTI5LjA1LDcyLjRdLFsxMjguNDYsNzEuOThdLFsxMjkuNzIsNzEuMTldLFsxMzEuMjksNzAuNzldLFsxMzIuMjUsNzEuODRdLFsxMzMuODYsNzEuMzldLFsxMzUuNTYsNzEuNjZdLFsxMzcuNSw3MS4zNV0sWzEzOC4yMyw3MS42M10sWzEzOS44Nyw3MS40OV0sWzEzOS4xNSw3Mi40Ml0sWzE0MC40Nyw3Mi44NV0sWzE0OS41LDcyLjJdLFsxNTAuMzUsNzEuNjFdLFsxNTIuOTcsNzAuODRdLFsxNTcuMDEsNzEuMDNdLFsxNTksNzAuODddLFsxNTkuODMsNzAuNDVdLFsxNTkuNzEsNjkuNzJdLFsxNjAuOTQsNjkuNDRdLFsxNjIuMjgsNjkuNjRdLFsxNjQuMDUsNjkuNjddLFsxNjUuOTQsNjkuNDddLFsxNjcuODQsNjkuNThdLFsxNjkuNTgsNjguNjldLFsxNzAuODIsNjkuMDFdLFsxNzAuMDEsNjkuNjVdLFsxNzAuNDUsNzAuMV0sWzE3My42NCw2OS44Ml0sWzE3NS43Miw2OS44OF0sWzE3OC42LDY5LjRdLFsxODAsNjguOTZdLFsxODAsNjQuOThdLFsxNzkuOTksNjQuOTddLFsxNzguNzEsNjQuNTNdLFsxNzcuNDEsNjQuNjFdLFsxNzguMzEsNjQuMDhdLFsxNzguOTEsNjMuMjVdLFsxNzkuMzcsNjIuOThdLFsxNzkuNDksNjIuNTddLFsxNzkuMjMsNjIuM10sWzE3Ny4zNiw2Mi41Ml0sWzE3NC41Nyw2MS43N10sWzE3My42OCw2MS42NV0sWzE3Mi4xNSw2MC45NV0sWzE3MC43LDYwLjM0XSxbMTcwLjMzLDU5Ljg4XSxbMTY4LjksNjAuNTddLFsxNjYuMjksNTkuNzldLFsxNjUuODQsNjAuMTZdLFsxNjQuODgsNTkuNzNdLFsxNjMuNTQsNTkuODddLFsxNjMuMjIsNTkuMjFdLFsxNjIuMDIsNTguMjRdLFsxNjIuMDUsNTcuODRdLFsxNjMuMTksNTcuNjJdLFsxNjMuMDYsNTYuMTZdLFsxNjIuMTMsNTYuMTJdLFsxNjEuNyw1NS4yOV0sWzE2Mi4xMiw1NC44Nl0sWzE2MC4zNyw1NC4zNF0sWzE2MC4wMiw1My4yXSxbMTU4LjUzLDUyLjk2XSxbMTU4LjIzLDUxLjk0XSxbMTU2Ljc5LDUxLjAxXSxbMTU2LjQyLDUxLjddLFsxNTUuOTksNTMuMTZdLFsxNTUuNDMsNTUuMzhdLFsxNTUuOTEsNTYuNzddLFsxNTYuNzYsNTcuMzZdLFsxNTYuODEsNTcuODNdLFsxNTguMzYsNTguMDZdLFsxNjAuMTUsNTkuMzFdLFsxNjEuODcsNjAuMzRdLFsxNjMuNjcsNjEuMTRdLFsxNjQuNDcsNjIuNTVdLFsxNjMuMjYsNjIuNDddLFsxNjIuNjYsNjEuNjRdLFsxNjAuMTIsNjAuNTRdLFsxNTkuMyw2MS43N10sWzE1Ni43Miw2MS40M10sWzE1NC4yMiw1OS43Nl0sWzE1NS4wNCw1OS4xNF0sWzE1Mi44MSw1OC44OF0sWzE1MS4yNyw1OC43OF0sWzE1MS4zNCw1OS41XSxbMTQ5Ljc4LDU5LjY2XSxbMTQ4LjU0LDU5LjE2XSxbMTQ1LjQ5LDU5LjM0XSxbMTQyLjIsNTkuMDRdLFsxMzguOTYsNTcuMDldLFsxMzUuMTMsNTQuNzNdLFsxMzYuNyw1NC42XSxbMTM3LjE5LDUzLjk4XSxbMTM4LjE2LDUzLjc2XSxbMTM4LjgsNTQuMjVdLFsxMzkuOSw1NC4xOV0sWzE0MS4zNSw1My4wOV0sWzE0MS4zOCw1Mi4yNF0sWzE0MC42LDUxLjI0XSxbMTQwLjUxLDUwLjA1XSxbMTQwLjA2LDQ4LjQ1XSxbMTM4LjU1LDQ3XSxbMTM4LjIyLDQ2LjMxXSxbMTM2Ljg2LDQ1LjE0XSxbMTM1LjUyLDQzLjk5XSxbMTM0Ljg3LDQzLjRdLFsxMzMuNTQsNDIuODFdLFsxMzIuOTEsNDIuOF0sWzEzMi4yOCw0My4yOF0sWzEzMC45NCw0Mi41NV0sWzEzMC43OCw0Mi4yMl0sWzEzMC42NCw0Mi40XSxbMTMwLjYzLDQyLjldLFsxMzEuMTQsNDIuOTNdLFsxMzEuMjksNDQuMTFdLFsxMzEuMDMsNDQuOTddLFsxMzEuODgsNDUuMzJdLFsxMzMuMSw0NS4xNF0sWzEzMy43Nyw0Ni4xMl0sWzEzNC4xMSw0Ny4yMV0sWzEzNC41LDQ3LjU4XSxbMTM1LjAzLDQ4LjQ4XSxbMTMzLjM3LDQ4LjE4XSxbMTMyLjUxLDQ3Ljc5XSxbMTMwLjk5LDQ3Ljc5XSxbMTMwLjU4LDQ4LjczXSxbMTI5LjQsNDkuNDRdLFsxMjcuNjYsNDkuNzZdLFsxMjcuMjksNTAuNzRdLFsxMjYuOTQsNTEuMzVdLFsxMjYuNTYsNTEuNzhdLFsxMjUuOTUsNTIuNzldLFsxMjUuMDcsNTMuMTZdLFsxMjMuNTcsNTMuNDZdLFsxMjIuMjUsNTMuNDNdLFsxMjEsNTMuMjVdLFsxMjAuMTgsNTIuNzVdLFsxMjAuNzMsNTIuNTJdLFsxMjAuNzQsNTEuOTZdLFsxMjAuMTgsNTEuNjRdLFsxMTkuMjgsNTAuNThdLFsxMTkuMjksNTAuMTRdLFsxMTcuODgsNDkuNTFdLFsxMTYuNjgsNDkuODldLFsxMTUuNDksNDkuODFdLFsxMTQuOTYsNTAuMTRdLFsxMTQuMzYsNTAuMjVdLFsxMTIuOSw0OS41NF0sWzExMS41OCw0OS4zOF0sWzExMC42Niw0OS4xM10sWzEwOS40LDQ5LjI5XSxbMTA4LjQ4LDQ5LjI4XSxbMTA3Ljg3LDQ5Ljc5XSxbMTA2Ljg5LDUwLjI3XSxbMTA1Ljg5LDUwLjQxXSxbMTA0LjYyLDUwLjI4XSxbMTAzLjY4LDUwLjA5XSxbMTAyLjI2LDUwLjUxXSxbMTAyLjA3LDUxLjI2XSxbMTAwLjg5LDUxLjUyXSxbOTkuOTgsNTEuNjNdLFs5OC44Niw1Mi4wNV0sWzk3LjgzLDUxLjAxXSxbOTguMjMsNTAuNDJdLFs5Ny4yNiw0OS43M10sWzk1LjgxLDQ5Ljk4XSxbOTQuODIsNTAuMDFdLFs5NC4xNSw1MC40OF0sWzkzLjEsNTAuNV0sWzkyLjIzLDUwLjhdLFs5MC43MSw1MC4zM10sWzg4LjgxLDQ5LjQ3XSxbODcuNzUsNDkuM10sWzg3LjM2LDQ5LjIxXSxbODYuODMsNDkuODNdLFs4NS41NCw0OS42OV0sWzg1LjEyLDUwLjEyXSxbODQuNDIsNTAuMzFdLFs4My45NCw1MC44OV0sWzgzLjM4LDUxLjA3XSxbODEuOTUsNTAuODFdLFs4MC41Nyw1MS4zOV0sWzgwLjA0LDUwLjg2XSxbNzcuOCw1My40XSxbNzYuNTMsNTQuMThdLFs3Ni44OSw1NC40OV0sWzc0LjM4LDUzLjU1XSxbNzMuNDMsNTMuNDldLFs3My41MSw1NC4wNF0sWzcyLjIyLDU0LjM4XSxbNzEuMTgsNTQuMTNdLFs3MC44Nyw1NS4xN10sWzY5LjA3LDU1LjM5XSxbNjguMTcsNTQuOTddLFs2NS42Nyw1NC42XSxbNjUuMTgsNTQuMzVdLFs2MS40NCw1NC4wMV0sWzYwLjk4LDUzLjY2XSxbNjEuNyw1Mi45OF0sWzYwLjc0LDUyLjcyXSxbNjAuOTMsNTIuNDVdLFs1OS45Nyw1MS45Nl0sWzYxLjU5LDUxLjI3XSxbNjEuMzQsNTAuOF0sWzU5LjkzLDUwLjg0XSxbNTkuNjQsNTAuNTVdLFs1OC4zNiw1MS4wNl0sWzU2Ljc4LDUxLjA0XSxbNTUuNzIsNTAuNjJdLFs1NC41Myw1MS4wM10sWzUyLjMzLDUxLjcyXSxbNTAuNzcsNTEuNjldLFs0OC43LDUwLjYxXSxbNDguNTgsNDkuODddLFs0Ny41NSw1MC40NV0sWzQ2Ljc1LDQ5LjM2XSxbNDcuMDQsNDkuMTVdLFs0Ni40Nyw0OC4zOV0sWzQ3LjMyLDQ3LjcyXSxbNDguMDYsNDcuNzRdLFs0OC42OSw0Ny4wOF0sWzQ4LjU5LDQ2LjU2XSxbNDkuMSw0Ni40XV1dLFtbWzkzLjc4LDgxLjAyXSxbOTUuOTQsODEuMjVdLFs5Ny44OCw4MC43NV0sWzEwMC4xOSw3OS43OF0sWzk5Ljk0LDc4Ljg4XSxbOTcuNzYsNzguNzZdLFs5NC45Nyw3OS4wNF0sWzkzLjMxLDc5LjQzXSxbOTIuNTUsODAuMTRdLFs5MS4xOCw4MC4zNF0sWzkzLjc4LDgxLjAyXV1dLFtbWzEwMi44NCw3OS4yOF0sWzEwNS4zNyw3OC43MV0sWzEwNS4wOCw3OC4zMV0sWzk5LjQ0LDc3LjkyXSxbMTAxLjI2LDc5LjIzXSxbMTAyLjA5LDc5LjM1XSxbMTAyLjg0LDc5LjI4XV1dLFtbWzEzOC44Myw3Ni4xNF0sWzE0MS40Nyw3Ni4wOV0sWzE0NS4wOSw3NS41Nl0sWzE0NC4zLDc0LjgyXSxbMTQwLjYxLDc0Ljg1XSxbMTM4Ljk2LDc0LjYxXSxbMTM2Ljk3LDc1LjI2XSxbMTM3LjUxLDc1Ljk1XSxbMTM4LjgzLDc2LjE0XV1dLFtbWzE0OC4yMiw3NS4zNV0sWzE1MC43Myw3NS4wOF0sWzE0OS41OCw3NC42OV0sWzE0Ny45OCw3NC43OF0sWzE0Ni4xMiw3NS4xN10sWzE0Ni4zNiw3NS41XSxbMTQ4LjIyLDc1LjM1XV1dLFtbWzEzOS44Niw3My4zN10sWzE0MC44MSw3My43N10sWzE0Mi4wNiw3My44Nl0sWzE0My40OCw3My40OF0sWzE0My42LDczLjIxXSxbMTQyLjA5LDczLjIxXSxbMTQwLjA0LDczLjMyXSxbMTM5Ljg2LDczLjM3XV1dLFtbWzQ0Ljg1LDgwLjU5XSxbNDYuOCw4MC43N10sWzQ4LjMyLDgwLjc4XSxbNDguNTIsODAuNTFdLFs0OS4xLDgwLjc1XSxbNTAuMDQsODAuOTJdLFs1MS41Miw4MC43XSxbNTEuMTQsODAuNTVdLFs0OS43OSw4MC40Ml0sWzQ4Ljg5LDgwLjM0XSxbNDguNzUsODAuMThdLFs0Ny41OSw4MC4wMV0sWzQ2LjUsODAuMjVdLFs0Ny4wNyw4MC41Nl0sWzQ0Ljg1LDgwLjU5XV1dLFtbWzIyLjczLDU0LjMzXSxbMjAuODksNTQuMzFdLFsxOS42Niw1NC40M10sWzE5Ljg5LDU0Ljg3XSxbMjEuMjcsNTUuMTldLFsyMi4zMiw1NS4wMl0sWzIyLjc2LDU0Ljg2XSxbMjIuNjUsNTQuNThdLFsyMi43Myw1NC4zM11dXSxbW1s1My41MSw3My43NV0sWzU1LjksNzQuNjNdLFs1NS42Myw3NS4wOF0sWzU3Ljg3LDc1LjYxXSxbNjEuMTcsNzYuMjVdLFs2NC41LDc2LjQ0XSxbNjYuMjEsNzYuODFdLFs2OC4xNiw3Ni45NF0sWzY4Ljg1LDc2LjU0XSxbNjguMTgsNzYuMjNdLFs2NC42NCw3NS43NF0sWzYxLjU4LDc1LjI2XSxbNTguNDgsNzQuMzFdLFs1Ni45OSw3My4zM10sWzU1LjQyLDcyLjM3XSxbNTUuNjIsNzEuNTRdLFs1Ny41NCw3MC43Ml0sWzU2Ljk0LDcwLjYzXSxbNTMuNjgsNzAuNzZdLFs1My40MSw3MS4yMV0sWzUxLjYsNzEuNDddLFs1MS40Niw3Mi4wMV0sWzUyLjQ4LDcyLjIzXSxbNTIuNDQsNzIuNzddLFs1NC40Myw3My42M10sWzUzLjUxLDczLjc1XV1dLFtbWzE0Mi45MSw1My43XSxbMTQzLjI2LDUyLjc0XSxbMTQzLjI0LDUxLjc2XSxbMTQzLjY1LDUwLjc1XSxbMTQ0LjY1LDQ4Ljk4XSxbMTQzLjE3LDQ5LjMxXSxbMTQyLjU2LDQ3Ljg2XSxbMTQzLjUzLDQ2Ljg0XSxbMTQzLjUxLDQ2LjE0XSxbMTQyLjc1LDQ2Ljc0XSxbMTQyLjA5LDQ1Ljk3XSxbMTQxLjkxLDQ2LjgxXSxbMTQyLjAyLDQ3Ljc4XSxbMTQxLjksNDguODZdLFsxNDIuMTQsNDkuNjJdLFsxNDIuMTgsNTAuOTVdLFsxNDEuNTksNTEuOTRdLFsxNDEuNjgsNTMuM10sWzE0Mi42MSw1My43Nl0sWzE0Mi4yMSw1NC4yM10sWzE0Mi42NSw1NC4zN10sWzE0Mi45MSw1My43XV1dLFtbWy0xNzQuOTMsNjcuMjFdLFstMTc1LjAxLDY2LjU4XSxbLTE3NC4zNCw2Ni4zNF0sWy0xNzQuNTcsNjcuMDZdLFstMTcxLjg2LDY2LjkxXSxbLTE2OS45LDY1Ljk4XSxbLTE3MC44OSw2NS41NF0sWy0xNzIuNTMsNjUuNDRdLFstMTcyLjU1LDY0LjQ2XSxbLTE3Mi45Niw2NC4yNV0sWy0xNzMuODksNjQuMjhdLFstMTc0LjY1LDY0LjYzXSxbLTE3NS45OCw2NC45Ml0sWy0xNzYuMjEsNjUuMzZdLFstMTc3LjIyLDY1LjUyXSxbLTE3OC4zNiw2NS4zOV0sWy0xNzguOSw2NS43NF0sWy0xNzguNjksNjYuMTFdLFstMTc5Ljg4LDY1Ljg3XSxbLTE3OS40Myw2NS40XSxbLTE4MCw2NC45OF0sWy0xODAsNjguOTZdLFstMTc3LjU1LDY4LjJdLFstMTc0LjkzLDY3LjIxXV1dLFtbWy0xNzguNjksNzAuODldLFstMTgwLDcwLjgzXSxbLTE4MCw3MS41Ml0sWy0xNzkuODcsNzEuNTZdLFstMTc5LjAyLDcxLjU2XSxbLTE3Ny41OCw3MS4yN10sWy0xNzcuNjYsNzEuMTNdLFstMTc4LjY5LDcwLjg5XV1dLFtbWzMzLjQ0LDQ1Ljk3XSxbMzMuNyw0Ni4yMl0sWzM0LjQxLDQ2LjAxXSxbMzQuNzMsNDUuOTddLFszNC44Niw0NS43N10sWzM1LjAxLDQ1Ljc0XSxbMzUuMDIsNDUuNjVdLFszNS41MSw0NS40MV0sWzM2LjUzLDQ1LjQ3XSxbMzYuMzMsNDUuMTFdLFszNS4yNCw0NC45NF0sWzMzLjg4LDQ0LjM2XSxbMzMuMzMsNDQuNTZdLFszMy41NSw0NS4wM10sWzMyLjQ1LDQ1LjMzXSxbMzIuNjMsNDUuNTJdLFszMy41OSw0NS44NV0sWzMzLjQ0LDQ1Ljk3XV1dXX0se246YEJhaGFtYXNgLGEyOmBCU2AsYTM6YEJIU2AscDpgQlNgLGw6Wy03Ny4xNSwyNi40XSxnOltbW1stNzguOTgsMjYuNzldLFstNzguNTEsMjYuODddLFstNzcuODUsMjYuODRdLFstNzcuODIsMjYuNThdLFstNzguOTEsMjYuNDJdLFstNzguOTgsMjYuNzldXV0sW1tbLTc3Ljc5LDI3LjA0XSxbLTc3LDI2LjU5XSxbLTc3LjE3LDI1Ljg4XSxbLTc3LjM2LDI2LjAxXSxbLTc3LjM0LDI2LjUzXSxbLTc3Ljc5LDI2LjkzXSxbLTc3Ljc5LDI3LjA0XV1dLFtbWy03OC4xOSwyNS4yMV0sWy03Ny44OSwyNS4xN10sWy03Ny41NCwyNC4zNF0sWy03Ny41MywyMy43Nl0sWy03Ny43OCwyMy43MV0sWy03OC4wMywyNC4yOV0sWy03OC40MSwyNC41OF0sWy03OC4xOSwyNS4yMV1dXV19LHtuOmBGYWxrbGFuZCBJc2xhbmRzIC8gTWFsdmluYXNgLGEyOmBGS2AsYTM6YEZMS2AscDpgRktgLGw6Wy01OC43NCwtNTEuNjFdLGc6W1tbWy02MS4yLC01MS44NV0sWy02MCwtNTEuMjVdLFstNTkuMTUsLTUxLjVdLFstNTguNTUsLTUxLjFdLFstNTcuNzUsLTUxLjU1XSxbLTU4LjA1LC01MS45XSxbLTU5LjQsLTUyLjJdLFstNTkuODUsLTUxLjg1XSxbLTYwLjcsLTUyLjNdLFstNjEuMiwtNTEuODVdXV1dfSx7bjpgTm9yd2F5YCxhMjpgYCxhMzpgTk9SYCxwOmBOYCxsOls5LjY4LDYxLjM2XSxnOltbW1sxNS4xNCw3OS42N10sWzE1LjUyLDgwLjAyXSxbMTYuOTksODAuMDVdLFsxOC4yNSw3OS43XSxbMjEuNTQsNzguOTZdLFsxOS4wMyw3OC41Nl0sWzE4LjQ3LDc3LjgzXSxbMTcuNTksNzcuNjRdLFsxNy4xMiw3Ni44MV0sWzE1LjkxLDc2Ljc3XSxbMTMuNzYsNzcuMzhdLFsxNC42Nyw3Ny43NF0sWzEzLjE3LDc4LjAyXSxbMTEuMjIsNzguODddLFsxMC40NCw3OS42NV0sWzEzLjE3LDgwLjAxXSxbMTMuNzIsNzkuNjZdLFsxNS4xNCw3OS42N11dXSxbW1szMS4xLDY5LjU2XSxbMjkuNCw2OS4xNl0sWzI4LjU5LDY5LjA2XSxbMjkuMDIsNjkuNzddLFsyNy43Myw3MC4xNl0sWzI2LjE4LDY5LjgzXSxbMjUuNjksNjkuMDldLFsyNC43NCw2OC42NV0sWzIzLjY2LDY4Ljg5XSxbMjIuMzYsNjguODRdLFsyMS4yNCw2OS4zN10sWzIwLjY1LDY5LjExXSxbMjAuMDMsNjkuMDddLFsxOS44OCw2OC40MV0sWzE3Ljk5LDY4LjU3XSxbMTcuNzMsNjguMDFdLFsxNi43Nyw2OC4wMV0sWzE2LjExLDY3LjNdLFsxNS4xMSw2Ni4xOV0sWzEzLjU2LDY0Ljc5XSxbMTMuOTIsNjQuNDVdLFsxMy41Nyw2NC4wNV0sWzEyLjU4LDY0LjA3XSxbMTEuOTMsNjMuMTNdLFsxMS45OSw2MS44XSxbMTIuNjMsNjEuMjldLFsxMi4zLDYwLjEyXSxbMTEuNDcsNTkuNDNdLFsxMS4wMyw1OC44Nl0sWzEwLjM2LDU5LjQ3XSxbOC4zOCw1OC4zMV0sWzcuMDUsNTguMDhdLFs1LjY3LDU4LjU5XSxbNS4zMSw1OS42Nl0sWzQuOTksNjEuOTddLFs1LjkxLDYyLjYxXSxbOC41NSw2My40NV0sWzEwLjUzLDY0LjQ5XSxbMTIuMzYsNjUuODhdLFsxNC43Niw2Ny44MV0sWzE2LjQ0LDY4LjU2XSxbMTkuMTgsNjkuODJdLFsyMS4zOCw3MC4yNl0sWzIzLjAyLDcwLjJdLFsyNC41NSw3MS4wM10sWzI2LjM3LDcwLjk5XSxbMjguMTcsNzEuMTldLFszMS4yOSw3MC40NV0sWzMwLjAxLDcwLjE5XSxbMzEuMSw2OS41Nl1dXSxbW1syNy40MSw4MC4wNl0sWzI1LjkyLDc5LjUyXSxbMjMuMDIsNzkuNF0sWzIwLjA4LDc5LjU3XSxbMTkuOSw3OS44NF0sWzE4LjQ2LDc5Ljg2XSxbMTcuMzcsODAuMzJdLFsyMC40Niw4MC42XSxbMjEuOTEsODAuMzZdLFsyMi45Miw4MC42Nl0sWzI1LjQ1LDgwLjQxXSxbMjcuNDEsODAuMDZdXV0sW1tbMjQuNzIsNzcuODVdLFsyMi40OSw3Ny40NF0sWzIwLjczLDc3LjY4XSxbMjEuNDIsNzcuOTRdLFsyMC44MSw3OC4yNV0sWzIyLjg4LDc4LjQ1XSxbMjMuMjgsNzguMDhdLFsyNC43Miw3Ny44NV1dXV19LHtuOmBHcmVlbmxhbmRgLGEyOmBHTGAsYTM6YEdSTGAscDpgR0xgLGw6Wy0zOS4zNCw3NC4zMl0sZzpbW1tbLTQ2Ljc2LDgyLjYzXSxbLTQzLjQxLDgzLjIzXSxbLTM5LjksODMuMThdLFstMzguNjIsODMuNTVdLFstMzUuMDksODMuNjVdLFstMjcuMSw4My41Ml0sWy0yMC44NSw4Mi43M10sWy0yMi42OSw4Mi4zNF0sWy0yNi41Miw4Mi4zXSxbLTMxLjksODIuMl0sWy0zMS40LDgyLjAyXSxbLTI3Ljg2LDgyLjEzXSxbLTI0Ljg0LDgxLjc5XSxbLTIyLjksODIuMDldLFstMjIuMDcsODEuNzNdLFstMjMuMTcsODEuMTVdLFstMjAuNjIsODEuNTJdLFstMTUuNzcsODEuOTFdLFstMTIuNzcsODEuNzJdLFstMTIuMjEsODEuMjldLFstMTYuMjksODAuNThdLFstMTYuODUsODAuMzVdLFstMjAuMDUsODAuMThdLFstMTcuNzMsODAuMTNdLFstMTguOSw3OS40XSxbLTE5LjcsNzguNzVdLFstMTkuNjcsNzcuNjRdLFstMTguNDcsNzYuOTldLFstMjAuMDQsNzYuOTRdLFstMjEuNjgsNzYuNjNdLFstMTkuODMsNzYuMV0sWy0xOS42LDc1LjI1XSxbLTIwLjY3LDc1LjE2XSxbLTE5LjM3LDc0LjNdLFstMjEuNTksNzQuMjJdLFstMjAuNDMsNzMuODJdLFstMjAuNzYsNzMuNDZdLFstMjIuMTcsNzMuMzFdLFstMjMuNTcsNzMuMzFdLFstMjIuMzEsNzIuNjNdLFstMjIuMyw3Mi4xOF0sWy0yNC4yOCw3Mi42XSxbLTI0Ljc5LDcyLjMzXSxbLTIzLjQ0LDcyLjA4XSxbLTIyLjEzLDcxLjQ3XSxbLTIxLjc1LDcwLjY2XSxbLTIzLjU0LDcwLjQ3XSxbLTI0LjMxLDcwLjg2XSxbLTI1LjU0LDcxLjQzXSxbLTI1LjIsNzAuNzVdLFstMjYuMzYsNzAuMjNdLFstMjMuNzMsNzAuMThdLFstMjIuMzUsNzAuMTNdLFstMjUuMDMsNjkuMjZdLFstMjcuNzUsNjguNDddLFstMzAuNjcsNjguMTNdLFstMzEuNzgsNjguMTJdLFstMzIuODEsNjcuNzRdLFstMzQuMiw2Ni42OF0sWy0zNi4zNSw2NS45OF0sWy0zNy4wNCw2NS45NF0sWy0zOC4zOCw2NS42OV0sWy0zOS44MSw2NS40Nl0sWy00MC42Nyw2NC44NF0sWy00MC42OCw2NC4xNF0sWy00MS4xOSw2My40OF0sWy00Mi44Miw2Mi42OF0sWy00Mi40Miw2MS45XSxbLTQyLjg3LDYxLjA3XSxbLTQzLjM4LDYwLjFdLFstNDQuNzksNjAuMDRdLFstNDYuMjYsNjAuODVdLFstNDguMjYsNjAuODZdLFstNDkuMjMsNjEuNDFdLFstNDkuOSw2Mi4zOF0sWy01MS42Myw2My42M10sWy01Mi4xNCw2NC4yOF0sWy01Mi4yOCw2NS4xOF0sWy01My42Niw2Ni4xXSxbLTUzLjMsNjYuODRdLFstNTMuOTcsNjcuMTldLFstNTIuOTgsNjguMzZdLFstNTEuNDgsNjguNzNdLFstNTEuMDgsNjkuMTVdLFstNTAuODcsNjkuOTNdLFstNTIuMDEsNjkuNTddLFstNTIuNTYsNjkuNDNdLFstNTMuNDYsNjkuMjhdLFstNTQuNjgsNjkuNjFdLFstNTQuNzUsNzAuMjldLFstNTQuMzYsNzAuODJdLFstNTMuNDMsNzAuODRdLFstNTEuMzksNzAuNTddLFstNTMuMTEsNzEuMl0sWy01NCw3MS41NV0sWy01NSw3MS40MV0sWy01NS44Myw3MS42NV0sWy01NC43Miw3Mi41OV0sWy01NS4zMyw3Mi45Nl0sWy01Ni4xMiw3My42NV0sWy01Ny4zMiw3NC43MV0sWy01OC42LDc1LjFdLFstNTguNTksNzUuNTJdLFstNjEuMjcsNzYuMV0sWy02My4zOSw3Ni4xOF0sWy02Ni4wNiw3Ni4xM10sWy02OC41LDc2LjA2XSxbLTY5LjY2LDc2LjM4XSxbLTcxLjQsNzcuMDFdLFstNjguNzgsNzcuMzJdLFstNjYuNzYsNzcuMzhdLFstNzEuMDQsNzcuNjRdLFstNzMuMyw3OC4wNF0sWy03My4xNiw3OC40M10sWy02OS4zNyw3OC45MV0sWy02NS43MSw3OS4zOV0sWy02NS4zMiw3OS43Nl0sWy02OC4wMiw4MC4xMl0sWy02Ny4xNSw4MC41Ml0sWy02My42OSw4MS4yMV0sWy02Mi4yMyw4MS4zMl0sWy02Mi42NSw4MS43N10sWy02MC4yOCw4Mi4wM10sWy01Ny4yMSw4Mi4xOV0sWy01NC4xMyw4Mi4yXSxbLTUzLjA0LDgxLjg5XSxbLTUwLjM5LDgyLjQ0XSxbLTQ4LDgyLjA2XSxbLTQ2LjYsODEuOTldLFstNDQuNTIsODEuNjZdLFstNDYuOSw4Mi4yXSxbLTQ2Ljc2LDgyLjYzXV1dXX0se246YEZyZW5jaCBTb3V0aGVybiBhbmQgQW50YXJjdGljIExhbmRzYCxhMjpgVEZgLGEzOmBBVEZgLHA6YFRGYCxsOls2OS4xMiwtNDkuM10sZzpbW1tbNjguOTQsLTQ4LjYyXSxbNjkuNTgsLTQ4Ljk0XSxbNzAuNTMsLTQ5LjA2XSxbNzAuNTYsLTQ5LjI1XSxbNzAuMjgsLTQ5LjcxXSxbNjguNzUsLTQ5Ljc3XSxbNjguNzIsLTQ5LjI0XSxbNjguODcsLTQ4LjgzXSxbNjguOTQsLTQ4LjYyXV1dXX0se246YFRpbW9yLUxlc3RlYCxhMjpgVExgLGEzOmBUTFNgLHA6YFRMYCxsOlsxMjUuODUsLTguOF0sZzpbW1tbMTI0Ljk3LC04Ljg5XSxbMTI1LjA5LC04LjY2XSxbMTI1Ljk1LC04LjQzXSxbMTI2LjY0LC04LjRdLFsxMjYuOTYsLTguMjddLFsxMjcuMzQsLTguNF0sWzEyNi45NywtOC42N10sWzEyNS45MywtOS4xMV0sWzEyNS4wOSwtOS4zOV0sWzEyNS4wNywtOS4wOV0sWzEyNC45NywtOC44OV1dXV19LHtuOmBTb3V0aCBBZnJpY2FgLGEyOmBaQWAsYTM6YFpBRmAscDpgWkFgLGw6WzIzLjY3LC0yOS43MV0sZzpbW1tbMTYuMzQsLTI4LjU4XSxbMTYuODIsLTI4LjA4XSxbMTcuMjIsLTI4LjM2XSxbMTcuMzksLTI4Ljc4XSxbMTcuODQsLTI4Ljg2XSxbMTguNDYsLTI5LjA1XSxbMTksLTI4Ljk3XSxbMTkuODksLTI4LjQ2XSxbMTkuOSwtMjQuNzddLFsyMC4xNywtMjQuOTJdLFsyMC43NiwtMjUuODddLFsyMC42NywtMjYuNDhdLFsyMC44OSwtMjYuODNdLFsyMS42MSwtMjYuNzNdLFsyMi4xMSwtMjYuMjhdLFsyMi41OCwtMjUuOThdLFsyMi44MiwtMjUuNV0sWzIzLjMxLC0yNS4yN10sWzIzLjczLC0yNS4zOV0sWzI0LjIxLC0yNS42N10sWzI1LjAzLC0yNS43Ml0sWzI1LjY2LC0yNS40OV0sWzI1Ljc3LC0yNS4xN10sWzI1Ljk0LC0yNC43XSxbMjYuNDksLTI0LjYyXSxbMjYuNzksLTI0LjI0XSxbMjcuMTIsLTIzLjU3XSxbMjguMDIsLTIyLjgzXSxbMjkuNDMsLTIyLjA5XSxbMjkuODQsLTIyLjFdLFszMC4zMiwtMjIuMjddLFszMC42NiwtMjIuMTVdLFszMS4xOSwtMjIuMjVdLFszMS42NywtMjMuNjZdLFszMS45MywtMjQuMzddLFszMS43NSwtMjUuNDhdLFszMS44NCwtMjUuODRdLFszMS4zMywtMjUuNjZdLFszMS4wNCwtMjUuNzNdLFszMC45NSwtMjYuMDJdLFszMC42OCwtMjYuNF0sWzMwLjY5LC0yNi43NF0sWzMxLjI4LC0yNy4yOV0sWzMxLjg3LC0yNy4xOF0sWzMyLjA3LC0yNi43M10sWzMyLjgzLC0yNi43NF0sWzMyLjU4LC0yNy40N10sWzMyLjQ2LC0yOC4zXSxbMzIuMiwtMjguNzVdLFszMS41MiwtMjkuMjZdLFszMS4zMywtMjkuNF0sWzMwLjksLTI5LjkxXSxbMzAuNjIsLTMwLjQyXSxbMzAuMDYsLTMxLjE0XSxbMjguOTMsLTMyLjE3XSxbMjguMjIsLTMyLjc3XSxbMjcuNDYsLTMzLjIzXSxbMjYuNDIsLTMzLjYxXSxbMjUuOTEsLTMzLjY3XSxbMjUuNzgsLTMzLjk0XSxbMjUuMTcsLTMzLjhdLFsyNC42OCwtMzMuOTldLFsyMy41OSwtMzMuNzldLFsyMi45OSwtMzMuOTJdLFsyMi41NywtMzMuODZdLFsyMS41NCwtMzQuMjZdLFsyMC42OSwtMzQuNDJdLFsyMC4wNywtMzQuOF0sWzE5LjYyLC0zNC44Ml0sWzE5LjE5LC0zNC40Nl0sWzE4Ljg2LC0zNC40NF0sWzE4LjQyLC0zNF0sWzE4LjM4LC0zNC4xNF0sWzE4LjI0LC0zMy44N10sWzE4LjI1LC0zMy4yOF0sWzE3LjkzLC0zMi42MV0sWzE4LjI1LC0zMi40M10sWzE4LjIyLC0zMS42Nl0sWzE3LjU3LC0zMC43M10sWzE3LjA2LC0yOS44OF0sWzE2LjM0LC0yOC41OF1dLFtbMjguOTgsLTI4Ljk2XSxbMjguNTQsLTI4LjY1XSxbMjguMDcsLTI4Ljg1XSxbMjcuNTMsLTI5LjI0XSxbMjcsLTI5Ljg4XSxbMjcuNzUsLTMwLjY1XSxbMjguMTEsLTMwLjU1XSxbMjguMjksLTMwLjIzXSxbMjguODUsLTMwLjA3XSxbMjkuMDIsLTI5Ljc0XSxbMjkuMzMsLTI5LjI2XSxbMjguOTgsLTI4Ljk2XV1dXX0se246YExlc290aG9gLGEyOmBMU2AsYTM6YExTT2AscDpgTFNgLGw6WzI4LjI1LC0yOS40OF0sZzpbW1tbMjguOTgsLTI4Ljk2XSxbMjkuMzMsLTI5LjI2XSxbMjkuMDIsLTI5Ljc0XSxbMjguODUsLTMwLjA3XSxbMjguMjksLTMwLjIzXSxbMjguMTEsLTMwLjU1XSxbMjcuNzUsLTMwLjY1XSxbMjcsLTI5Ljg4XSxbMjcuNTMsLTI5LjI0XSxbMjguMDcsLTI4Ljg1XSxbMjguNTQsLTI4LjY1XSxbMjguOTgsLTI4Ljk2XV1dXX0se246YE1leGljb2AsYTI6YE1YYCxhMzpgTUVYYCxwOmBNWGAsbDpbLTEwMi4yOSwyMy45Ml0sZzpbW1tbLTExNy4xMywzMi41NF0sWy0xMTUuOTksMzIuNjFdLFstMTE0LjcyLDMyLjcyXSxbLTExNC44MSwzMi41M10sWy0xMTMuMywzMi4wNF0sWy0xMTEuMDIsMzEuMzNdLFstMTA5LjAzLDMxLjM0XSxbLTEwOC4yNCwzMS4zNF0sWy0xMDguMjQsMzEuNzVdLFstMTA2LjUxLDMxLjc1XSxbLTEwNi4xNCwzMS40XSxbLTEwNS42MywzMS4wOF0sWy0xMDUuMDQsMzAuNjRdLFstMTA0LjcxLDMwLjEyXSxbLTEwNC40NiwyOS41N10sWy0xMDMuOTQsMjkuMjddLFstMTAzLjExLDI4Ljk3XSxbLTEwMi40OCwyOS43Nl0sWy0xMDEuNjYsMjkuNzhdLFstMTAwLjk2LDI5LjM4XSxbLTEwMC40NiwyOC43XSxbLTEwMC4xMSwyOC4xMV0sWy05OS41MiwyNy41NF0sWy05OS4zLDI2Ljg0XSxbLTk5LjAyLDI2LjM3XSxbLTk4LjI0LDI2LjA2XSxbLTk3LjUzLDI1Ljg0XSxbLTk3LjE0LDI1Ljg3XSxbLTk3LjUzLDI0Ljk5XSxbLTk3LjcsMjQuMjddLFstOTcuNzgsMjIuOTNdLFstOTcuODcsMjIuNDRdLFstOTcuNywyMS45XSxbLTk3LjM5LDIxLjQxXSxbLTk3LjE5LDIwLjY0XSxbLTk2LjUzLDE5Ljg5XSxbLTk2LjI5LDE5LjMyXSxbLTk1LjksMTguODNdLFstOTQuODQsMTguNTZdLFstOTQuNDMsMTguMTRdLFstOTMuNTUsMTguNDJdLFstOTIuNzksMTguNTJdLFstOTIuMDQsMTguN10sWy05MS40MSwxOC44OF0sWy05MC43NywxOS4yOF0sWy05MC41MywxOS44N10sWy05MC40NSwyMC43MV0sWy05MC4yOCwyMV0sWy04OS42LDIxLjI2XSxbLTg4LjU0LDIxLjQ5XSxbLTg3LjY2LDIxLjQ2XSxbLTg3LjA1LDIxLjU0XSxbLTg2LjgxLDIxLjMzXSxbLTg2Ljg1LDIwLjg1XSxbLTg3LjM4LDIwLjI2XSxbLTg3LjYyLDE5LjY1XSxbLTg3LjQ0LDE5LjQ3XSxbLTg3LjU5LDE5LjA0XSxbLTg3Ljg0LDE4LjI2XSxbLTg4LjA5LDE4LjUyXSxbLTg4LjMsMTguNV0sWy04OC40OSwxOC40OV0sWy04OC44NSwxNy44OF0sWy04OS4wMywxOF0sWy04OS4xNSwxNy45Nl0sWy04OS4xNCwxNy44MV0sWy05MC4wNywxNy44Ml0sWy05MSwxNy44Ml0sWy05MSwxNy4yNV0sWy05MS40NSwxNy4yNV0sWy05MS4wOCwxNi45Ml0sWy05MC43MSwxNi42OV0sWy05MC42LDE2LjQ3XSxbLTkwLjQ0LDE2LjQxXSxbLTkwLjQ2LDE2LjA3XSxbLTkxLjc1LDE2LjA3XSxbLTkyLjIzLDE1LjI1XSxbLTkyLjA5LDE1LjA2XSxbLTkyLjIsMTQuODNdLFstOTIuMjMsMTQuNTRdLFstOTMuMzYsMTUuNjJdLFstOTMuODgsMTUuOTRdLFstOTQuNjksMTYuMl0sWy05NS4yNSwxNi4xM10sWy05Ni4wNSwxNS43NV0sWy05Ni41NiwxNS42NV0sWy05Ny4yNiwxNS45Ml0sWy05OC4wMSwxNi4xMV0sWy05OC45NSwxNi41N10sWy05OS43LDE2LjcxXSxbLTEwMC44MywxNy4xN10sWy0xMDEuNjcsMTcuNjVdLFstMTAxLjkyLDE3LjkyXSxbLTEwMi40OCwxNy45OF0sWy0xMDMuNSwxOC4yOV0sWy0xMDMuOTIsMTguNzVdLFstMTA0Ljk5LDE5LjMyXSxbLTEwNS40OSwxOS45NV0sWy0xMDUuNzMsMjAuNDNdLFstMTA1LjQsMjAuNTNdLFstMTA1LjUsMjAuODJdLFstMTA1LjI3LDIxLjA4XSxbLTEwNS4yNywyMS40Ml0sWy0xMDUuNiwyMS44N10sWy0xMDUuNjksMjIuMjddLFstMTA2LjAzLDIyLjc3XSxbLTEwNi45MSwyMy43N10sWy0xMDcuOTIsMjQuNTVdLFstMTA4LjQsMjUuMTddLFstMTA5LjI2LDI1LjU4XSxbLTEwOS40NCwyNS44Ml0sWy0xMDkuMjksMjYuNDRdLFstMTA5LjgsMjYuNjhdLFstMTEwLjM5LDI3LjE2XSxbLTExMC42NCwyNy44Nl0sWy0xMTEuMTgsMjcuOTRdLFstMTExLjc2LDI4LjQ3XSxbLTExMi4yMywyOC45NV0sWy0xMTIuMjcsMjkuMjddLFstMTEyLjgxLDMwLjAyXSxbLTExMy4xNiwzMC43OV0sWy0xMTMuMTUsMzEuMTddLFstMTEzLjg3LDMxLjU3XSxbLTExNC4yMSwzMS41Ml0sWy0xMTQuNzgsMzEuOF0sWy0xMTQuOTQsMzEuMzldLFstMTE0Ljc3LDMwLjkxXSxbLTExNC42NywzMC4xNl0sWy0xMTQuMzMsMjkuNzVdLFstMTEzLjU5LDI5LjA2XSxbLTExMy40MiwyOC44M10sWy0xMTMuMjcsMjguNzVdLFstMTEzLjE0LDI4LjQxXSxbLTExMi45NiwyOC40M10sWy0xMTIuNzYsMjcuNzhdLFstMTEyLjQ2LDI3LjUzXSxbLTExMi4yNCwyNy4xN10sWy0xMTEuNjIsMjYuNjZdLFstMTExLjI4LDI1LjczXSxbLTExMC45OSwyNS4yOV0sWy0xMTAuNzEsMjQuODNdLFstMTEwLjY2LDI0LjNdLFstMTEwLjE3LDI0LjI3XSxbLTEwOS43NywyMy44MV0sWy0xMDkuNDEsMjMuMzZdLFstMTA5LjQzLDIzLjE5XSxbLTEwOS44NSwyMi44Ml0sWy0xMTAuMDMsMjIuODJdLFstMTEwLjMsMjMuNDNdLFstMTEwLjk1LDI0XSxbLTExMS42NywyNC40OF0sWy0xMTIuMTgsMjQuNzRdLFstMTEyLjE1LDI1LjQ3XSxbLTExMi4zLDI2LjAxXSxbLTExMi43OCwyNi4zMl0sWy0xMTMuNDYsMjYuNzddLFstMTEzLjYsMjYuNjRdLFstMTEzLjg1LDI2LjldLFstMTE0LjQ3LDI3LjE0XSxbLTExNS4wNiwyNy43Ml0sWy0xMTQuOTgsMjcuOF0sWy0xMTQuNTcsMjcuNzRdLFstMTE0LjIsMjguMTJdLFstMTE0LjE2LDI4LjU3XSxbLTExNC45MywyOS4yOF0sWy0xMTUuNTIsMjkuNTZdLFstMTE1Ljg5LDMwLjE4XSxbLTExNi4yNiwzMC44NF0sWy0xMTYuNzIsMzEuNjRdLFstMTE3LjEzLDMyLjU0XV1dXX0se246YFVydWd1YXlgLGEyOmBVWWAsYTM6YFVSWWAscDpgVVlgLGw6Wy01NS45NywtMzIuOTZdLGc6W1tbWy01Ny42MywtMzAuMjJdLFstNTYuOTgsLTMwLjExXSxbLTU1Ljk3LC0zMC44OF0sWy01NS42LC0zMC44NV0sWy01NC41NywtMzEuNDldLFstNTMuNzksLTMyLjA1XSxbLTUzLjIxLC0zMi43M10sWy01My42NSwtMzMuMl0sWy01My4zNywtMzMuNzddLFstNTMuODEsLTM0LjRdLFstNTQuOTQsLTM0Ljk1XSxbLTU1LjY3LC0zNC43NV0sWy01Ni4yMiwtMzQuODZdLFstNTcuMTQsLTM0LjQzXSxbLTU3LjgyLC0zNC40Nl0sWy01OC40MywtMzMuOTFdLFstNTguMzUsLTMzLjI2XSxbLTU4LjEzLC0zMy4wNF0sWy01OC4xNCwtMzIuMDRdLFstNTcuODcsLTMxLjAyXSxbLTU3LjYzLC0zMC4yMl1dXV19LHtuOmBCcmF6aWxgLGEyOmBCUmAsYTM6YEJSQWAscDpgQlJgLGw6Wy00OS41NiwtMTIuMV0sZzpbW1tbLTUzLjM3LC0zMy43N10sWy01My42NSwtMzMuMl0sWy01My4yMSwtMzIuNzNdLFstNTMuNzksLTMyLjA1XSxbLTU0LjU3LC0zMS40OV0sWy01NS42LC0zMC44NV0sWy01NS45NywtMzAuODhdLFstNTYuOTgsLTMwLjExXSxbLTU3LjYzLC0zMC4yMl0sWy01Ni4yOSwtMjguODVdLFstNTUuMTYsLTI3Ljg4XSxbLTU0LjQ5LC0yNy40N10sWy01My42NSwtMjYuOTJdLFstNTMuNjMsLTI2LjEyXSxbLTU0LjEzLC0yNS41NV0sWy01NC42MywtMjUuNzRdLFstNTQuNDMsLTI1LjE2XSxbLTU0LjI5LC0yNC41N10sWy01NC4yOSwtMjQuMDJdLFstNTQuNjUsLTIzLjg0XSxbLTU1LjAzLC0yNF0sWy01NS40LC0yMy45Nl0sWy01NS41MiwtMjMuNTddLFstNTUuNjEsLTIyLjY2XSxbLTU1LjgsLTIyLjM2XSxbLTU2LjQ3LC0yMi4wOV0sWy01Ni44OCwtMjIuMjhdLFstNTcuOTQsLTIyLjA5XSxbLTU3Ljg3LC0yMC43M10sWy01OC4xNywtMjAuMThdLFstNTcuODUsLTE5Ljk3XSxbLTU3Ljk1LC0xOS40XSxbLTU3LjY4LC0xOC45Nl0sWy01Ny41LC0xOC4xN10sWy01Ny43MywtMTcuNTVdLFstNTguMjgsLTE3LjI3XSxbLTU4LjM5LC0xNi44OF0sWy01OC4yNCwtMTYuM10sWy02MC4xNiwtMTYuMjZdLFstNjAuNTQsLTE1LjA5XSxbLTYwLjI1LC0xNS4wOF0sWy02MC4yNiwtMTQuNjVdLFstNjAuNDYsLTE0LjM1XSxbLTYwLjUsLTEzLjc4XSxbLTYxLjA4LC0xMy40OF0sWy02MS43MSwtMTMuNDldLFstNjIuMTMsLTEzLjJdLFstNjIuOCwtMTNdLFstNjMuMiwtMTIuNjNdLFstNjQuMzIsLTEyLjQ2XSxbLTY1LjQsLTExLjU3XSxbLTY1LjMyLC0xMC45XSxbLTY1LjQ0LC0xMC41MV0sWy02NS4zNCwtOS43Nl0sWy02Ni42NSwtOS45M10sWy02Ny4xNywtMTAuMzFdLFstNjguMDUsLTEwLjcxXSxbLTY4LjI3LC0xMS4wMV0sWy02OC43OSwtMTEuMDRdLFstNjkuNTMsLTEwLjk1XSxbLTcwLjA5LC0xMS4xMl0sWy03MC41NSwtMTEuMDFdLFstNzAuNDgsLTkuNDldLFstNzEuMywtMTAuMDhdLFstNzIuMTgsLTEwLjA1XSxbLTcyLjU2LC05LjUyXSxbLTczLjIzLC05LjQ2XSxbLTczLjAyLC05LjAzXSxbLTczLjU3LC04LjQyXSxbLTczLjk5LC03LjUyXSxbLTczLjcyLC03LjM0XSxbLTczLjcyLC02LjkyXSxbLTczLjEyLC02LjYzXSxbLTczLjIyLC02LjA5XSxbLTcyLjk2LC01Ljc0XSxbLTcyLjg5LC01LjI3XSxbLTcxLjc1LC00LjU5XSxbLTcwLjkzLC00LjRdLFstNzAuNzksLTQuMjVdLFstNjkuODksLTQuM10sWy02OS40NCwtMS41Nl0sWy02OS40MiwtMS4xMl0sWy02OS41OCwtLjU1XSxbLTcwLjAyLC0uMTldLFstNzAuMDIsLjU0XSxbLTY5LjQ1LC43MV0sWy02OS4yNSwuNl0sWy02OS4yMiwuOTldLFstNjkuOCwxLjA5XSxbLTY5LjgyLDEuNzFdLFstNjcuODcsMS42OV0sWy02Ny41NCwyLjA0XSxbLTY3LjI2LDEuNzJdLFstNjcuMDcsMS4xM10sWy02Ni44OCwxLjI1XSxbLTY2LjMzLC43Ml0sWy02NS41NSwuNzldLFstNjUuMzUsMS4xXSxbLTY0LjYxLDEuMzNdLFstNjQuMiwxLjQ5XSxbLTY0LjA4LDEuOTJdLFstNjMuMzcsMi4yXSxbLTYzLjQyLDIuNDFdLFstNjQuMjcsMi41XSxbLTY0LjQxLDMuMTNdLFstNjQuMzcsMy44XSxbLTY0LjgyLDQuMDZdLFstNjQuNjMsNC4xNV0sWy02My44OSw0LjAyXSxbLTYzLjA5LDMuNzddLFstNjIuOCw0LjAxXSxbLTYyLjA5LDQuMTZdLFstNjAuOTcsNC41NF0sWy02MC42LDQuOTJdLFstNjAuNzMsNS4yXSxbLTYwLjIxLDUuMjRdLFstNTkuOTgsNS4wMV0sWy02MC4xMSw0LjU3XSxbLTU5Ljc3LDQuNDJdLFstNTkuNTQsMy45Nl0sWy01OS44MiwzLjYxXSxbLTU5Ljk3LDIuNzZdLFstNTkuNzIsMi4yNV0sWy01OS42NSwxLjc5XSxbLTU5LjAzLDEuMzJdLFstNTguNTQsMS4yN10sWy01OC40MywxLjQ2XSxbLTU4LjExLDEuNTFdLFstNTcuNjYsMS42OF0sWy01Ny4zNCwxLjk1XSxbLTU2Ljc4LDEuODZdLFstNTYuNTQsMS45XSxbLTU2LDEuODJdLFstNTUuOTEsMi4wMl0sWy01Ni4wNywyLjIyXSxbLTU1Ljk3LDIuNTFdLFstNTUuNTcsMi40Ml0sWy01NS4xLDIuNTJdLFstNTQuNTIsMi4zMV0sWy01NC4wOSwyLjExXSxbLTUzLjc4LDIuMzhdLFstNTMuNTUsMi4zM10sWy01My40MiwyLjA1XSxbLTUyLjk0LDIuMTJdLFstNTIuNTYsMi41XSxbLTUyLjI1LDMuMjRdLFstNTEuNjYsNC4xNl0sWy01MS4zMiw0LjJdLFstNTEuMDcsMy42NV0sWy01MC41MSwxLjldLFstNDkuOTcsMS43NF0sWy00OS45NSwxLjA1XSxbLTUwLjcsLjIyXSxbLTUwLjM5LC0uMDhdLFstNDguNjIsLS4yNF0sWy00OC41OCwtMS4yNF0sWy00Ny44MiwtLjU4XSxbLTQ2LjU3LC0uOTRdLFstNDQuOTEsLTEuNTVdLFstNDQuNDIsLTIuMTRdLFstNDQuNTgsLTIuNjldLFstNDMuNDIsLTIuMzhdLFstNDEuNDcsLTIuOTFdLFstMzkuOTgsLTIuODddLFstMzguNSwtMy43XSxbLTM3LjIyLC00LjgyXSxbLTM2LjQ1LC01LjExXSxbLTM1LjYsLTUuMTVdLFstMzUuMjQsLTUuNDZdLFstMzQuOSwtNi43NF0sWy0zNC43MywtNy4zNF0sWy0zNS4xMywtOV0sWy0zNS42NCwtOS42NV0sWy0zNy4wNSwtMTEuMDRdLFstMzcuNjgsLTEyLjE3XSxbLTM4LjQyLC0xMy4wNF0sWy0zOC42NywtMTMuMDZdLFstMzguOTUsLTEzLjc5XSxbLTM4Ljg4LC0xNS42N10sWy0zOS4xNiwtMTcuMjFdLFstMzkuMjcsLTE3Ljg3XSxbLTM5LjU4LC0xOC4yNl0sWy0zOS43NiwtMTkuNl0sWy00MC43NywtMjAuOV0sWy00MC45NCwtMjEuOTRdLFstNDEuNzUsLTIyLjM3XSxbLTQxLjk5LC0yMi45N10sWy00My4wNywtMjIuOTddLFstNDQuNjUsLTIzLjM1XSxbLTQ1LjM1LC0yMy44XSxbLTQ2LjQ3LC0yNC4wOV0sWy00Ny42NSwtMjQuODldLFstNDguNSwtMjUuODhdLFstNDguNjQsLTI2LjYyXSxbLTQ4LjQ3LC0yNy4xOF0sWy00OC42NiwtMjguMTldLFstNDguODksLTI4LjY3XSxbLTQ5LjU5LC0yOS4yMl0sWy01MC43LC0zMC45OF0sWy01MS41OCwtMzEuNzhdLFstNTIuMjYsLTMyLjI1XSxbLTUyLjcxLC0zMy4yXSxbLTUzLjM3LC0zMy43N11dXV19LHtuOmBCb2xpdmlhYCxhMjpgQk9gLGEzOmBCT0xgLHA6YEJPYCxsOlstNjQuNTksLTE2LjY3XSxnOltbW1stNjkuNTMsLTEwLjk1XSxbLTY4Ljc5LC0xMS4wNF0sWy02OC4yNywtMTEuMDFdLFstNjguMDUsLTEwLjcxXSxbLTY3LjE3LC0xMC4zMV0sWy02Ni42NSwtOS45M10sWy02NS4zNCwtOS43Nl0sWy02NS40NCwtMTAuNTFdLFstNjUuMzIsLTEwLjldLFstNjUuNCwtMTEuNTddLFstNjQuMzIsLTEyLjQ2XSxbLTYzLjIsLTEyLjYzXSxbLTYyLjgsLTEzXSxbLTYyLjEzLC0xMy4yXSxbLTYxLjcxLC0xMy40OV0sWy02MS4wOCwtMTMuNDhdLFstNjAuNSwtMTMuNzhdLFstNjAuNDYsLTE0LjM1XSxbLTYwLjI2LC0xNC42NV0sWy02MC4yNSwtMTUuMDhdLFstNjAuNTQsLTE1LjA5XSxbLTYwLjE2LC0xNi4yNl0sWy01OC4yNCwtMTYuM10sWy01OC4zOSwtMTYuODhdLFstNTguMjgsLTE3LjI3XSxbLTU3LjczLC0xNy41NV0sWy01Ny41LC0xOC4xN10sWy01Ny42OCwtMTguOTZdLFstNTcuOTUsLTE5LjRdLFstNTcuODUsLTE5Ljk3XSxbLTU4LjE3LC0yMC4xOF0sWy01OC4xOCwtMTkuODddLFstNTkuMTIsLTE5LjM2XSxbLTYwLjA0LC0xOS4zNF0sWy02MS43OSwtMTkuNjNdLFstNjIuMjcsLTIwLjUxXSxbLTYyLjI5LC0yMS4wNV0sWy02Mi42OSwtMjIuMjVdLFstNjIuODUsLTIyLjAzXSxbLTYzLjk5LC0yMS45OV0sWy02NC4zOCwtMjIuOF0sWy02NC45NiwtMjIuMDhdLFstNjYuMjcsLTIxLjgzXSxbLTY3LjExLC0yMi43NF0sWy02Ny44MywtMjIuODddLFstNjguMjIsLTIxLjQ5XSxbLTY4Ljc2LC0yMC4zN10sWy02OC40NCwtMTkuNDFdLFstNjguOTcsLTE4Ljk4XSxbLTY5LjEsLTE4LjI2XSxbLTY5LjU5LC0xNy41OF0sWy02OC45NiwtMTYuNV0sWy02OS4zOSwtMTUuNjZdLFstNjkuMTYsLTE1LjMyXSxbLTY5LjM0LC0xNC45NV0sWy02OC45NSwtMTQuNDVdLFstNjguOTMsLTEzLjZdLFstNjguODgsLTEyLjldLFstNjguNjcsLTEyLjU2XSxbLTY5LjUzLC0xMC45NV1dXV19LHtuOmBQZXJ1YCxhMjpgUEVgLGEzOmBQRVJgLHA6YFBFYCxsOlstNzIuOSwtMTIuOThdLGc6W1tbWy02OS44OSwtNC4zXSxbLTcwLjc5LC00LjI1XSxbLTcwLjkzLC00LjRdLFstNzEuNzUsLTQuNTldLFstNzIuODksLTUuMjddLFstNzIuOTYsLTUuNzRdLFstNzMuMjIsLTYuMDldLFstNzMuMTIsLTYuNjNdLFstNzMuNzIsLTYuOTJdLFstNzMuNzIsLTcuMzRdLFstNzMuOTksLTcuNTJdLFstNzMuNTcsLTguNDJdLFstNzMuMDIsLTkuMDNdLFstNzMuMjMsLTkuNDZdLFstNzIuNTYsLTkuNTJdLFstNzIuMTgsLTEwLjA1XSxbLTcxLjMsLTEwLjA4XSxbLTcwLjQ4LC05LjQ5XSxbLTcwLjU1LC0xMS4wMV0sWy03MC4wOSwtMTEuMTJdLFstNjkuNTMsLTEwLjk1XSxbLTY4LjY3LC0xMi41Nl0sWy02OC44OCwtMTIuOV0sWy02OC45MywtMTMuNl0sWy02OC45NSwtMTQuNDVdLFstNjkuMzQsLTE0Ljk1XSxbLTY5LjE2LC0xNS4zMl0sWy02OS4zOSwtMTUuNjZdLFstNjguOTYsLTE2LjVdLFstNjkuNTksLTE3LjU4XSxbLTY5Ljg2LC0xOC4wOV0sWy03MC4zNywtMTguMzVdLFstNzEuMzgsLTE3Ljc3XSxbLTcxLjQ2LC0xNy4zNl0sWy03My40NCwtMTYuMzZdLFstNzUuMjQsLTE1LjI3XSxbLTc2LjAxLC0xNC42NV0sWy03Ni40MiwtMTMuODJdLFstNzYuMjYsLTEzLjU0XSxbLTc3LjExLC0xMi4yMl0sWy03OC4wOSwtMTAuMzhdLFstNzkuMDQsLTguMzldLFstNzkuNDUsLTcuOTNdLFstNzkuNzYsLTcuMTldLFstODAuNTQsLTYuNTRdLFstODEuMjUsLTYuMTRdLFstODAuOTMsLTUuNjldLFstODEuNDEsLTQuNzRdLFstODEuMSwtNC4wNF0sWy04MC4zLC0zLjRdLFstODAuMTgsLTMuODJdLFstODAuNDcsLTQuMDZdLFstODAuNDQsLTQuNDNdLFstODAuMDMsLTQuMzVdLFstNzkuNjIsLTQuNDVdLFstNzkuMjEsLTQuOTZdLFstNzguNjQsLTQuNTVdLFstNzguNDUsLTMuODddLFstNzcuODQsLTNdLFstNzYuNjQsLTIuNjFdLFstNzUuNTQsLTEuNTZdLFstNzUuMjMsLS45MV0sWy03NS4zNywtLjE1XSxbLTc1LjExLC0uMDZdLFstNzQuNDQsLS41M10sWy03NC4xMiwtMV0sWy03My42NiwtMS4yNl0sWy03My4wNywtMi4zMV0sWy03Mi4zMywtMi40M10sWy03MS43NywtMi4xN10sWy03MS40MSwtMi4zNF0sWy03MC44MSwtMi4yNl0sWy03MC4wNSwtMi43M10sWy03MC42OSwtMy43NF0sWy03MC4zOSwtMy43N10sWy02OS44OSwtNC4zXV1dXX0se246YENvbG9tYmlhYCxhMjpgQ09gLGEzOmBDT0xgLHA6YENPYCxsOlstNzMuMTcsMy4zN10sZzpbW1tbLTY2Ljg4LDEuMjVdLFstNjcuMDcsMS4xM10sWy02Ny4yNiwxLjcyXSxbLTY3LjU0LDIuMDRdLFstNjcuODcsMS42OV0sWy02OS44MiwxLjcxXSxbLTY5LjgsMS4wOV0sWy02OS4yMiwuOTldLFstNjkuMjUsLjZdLFstNjkuNDUsLjcxXSxbLTcwLjAyLC41NF0sWy03MC4wMiwtLjE5XSxbLTY5LjU4LC0uNTVdLFstNjkuNDIsLTEuMTJdLFstNjkuNDQsLTEuNTZdLFstNjkuODksLTQuM10sWy03MC4zOSwtMy43N10sWy03MC42OSwtMy43NF0sWy03MC4wNSwtMi43M10sWy03MC44MSwtMi4yNl0sWy03MS40MSwtMi4zNF0sWy03MS43NywtMi4xN10sWy03Mi4zMywtMi40M10sWy03My4wNywtMi4zMV0sWy03My42NiwtMS4yNl0sWy03NC4xMiwtMV0sWy03NC40NCwtLjUzXSxbLTc1LjExLC0uMDZdLFstNzUuMzcsLS4xNV0sWy03NS44LC4wOF0sWy03Ni4yOSwuNDJdLFstNzYuNTgsLjI2XSxbLTc3LjQyLC40XSxbLTc3LjY3LC44M10sWy03Ny44NiwuODFdLFstNzguODYsMS4zOF0sWy03OC45OSwxLjY5XSxbLTc4LjYyLDEuNzddLFstNzguNjYsMi4yN10sWy03OC40MywyLjYzXSxbLTc3LjkzLDIuN10sWy03Ny41MSwzLjMzXSxbLTc3LjEzLDMuODVdLFstNzcuNSw0LjA5XSxbLTc3LjMxLDQuNjddLFstNzcuNTMsNS41OF0sWy03Ny4zMiw1Ljg1XSxbLTc3LjQ4LDYuNjldLFstNzcuODgsNy4yMl0sWy03Ny43NSw3LjcxXSxbLTc3LjQzLDcuNjRdLFstNzcuMjQsNy45NF0sWy03Ny40Nyw4LjUyXSxbLTc3LjM1LDguNjddLFstNzYuODQsOC42NF0sWy03Ni4wOSw5LjM0XSxbLTc1LjY3LDkuNDRdLFstNzUuNjYsOS43N10sWy03NS40OCwxMC42Ml0sWy03NC45MSwxMS4wOF0sWy03NC4yOCwxMS4xXSxbLTc0LjIsMTEuMzFdLFstNzMuNDEsMTEuMjNdLFstNzIuNjMsMTEuNzNdLFstNzIuMjQsMTEuOTZdLFstNzEuNzUsMTIuNDRdLFstNzEuNCwxMi4zOF0sWy03MS4xNCwxMi4xMV0sWy03MS4zMywxMS43OF0sWy03MS45NywxMS42MV0sWy03Mi4yMywxMS4xMV0sWy03Mi42MSwxMC44Ml0sWy03Mi45MSwxMC40NV0sWy03My4wMyw5Ljc0XSxbLTczLjMsOS4xNV0sWy03Mi43OSw5LjA5XSxbLTcyLjY2LDguNjNdLFstNzIuNDQsOC40MV0sWy03Mi4zNiw4XSxbLTcyLjQ4LDcuNjNdLFstNzIuNDQsNy40Ml0sWy03Mi4yLDcuMzRdLFstNzEuOTYsNi45OV0sWy03MC42Nyw3LjA5XSxbLTcwLjA5LDYuOTZdLFstNjkuMzksNi4xXSxbLTY4Ljk5LDYuMjFdLFstNjguMjcsNi4xNV0sWy02Ny43LDYuMjddLFstNjcuMzQsNi4xXSxbLTY3LjUyLDUuNTZdLFstNjcuNzQsNS4yMl0sWy02Ny44Miw0LjVdLFstNjcuNjIsMy44NF0sWy02Ny4zNCwzLjU0XSxbLTY3LjMsMy4zMl0sWy02Ny44MSwyLjgyXSxbLTY3LjQ1LDIuNl0sWy02Ny4xOCwyLjI1XSxbLTY2Ljg4LDEuMjVdXV1dfSx7bjpgUGFuYW1hYCxhMjpgUEFgLGEzOmBQQU5gLHA6YFBBYCxsOlstODAuMzUsOC43Ml0sZzpbW1tbLTc3LjM1LDguNjddLFstNzcuNDcsOC41Ml0sWy03Ny4yNCw3Ljk0XSxbLTc3LjQzLDcuNjRdLFstNzcuNzUsNy43MV0sWy03Ny44OCw3LjIyXSxbLTc4LjIxLDcuNTFdLFstNzguNDMsOC4wNV0sWy03OC4xOCw4LjMyXSxbLTc4LjQ0LDguMzldLFstNzguNjIsOC43Ml0sWy03OS4xMiw5XSxbLTc5LjU2LDguOTNdLFstNzkuNzYsOC41OF0sWy04MC4xNiw4LjMzXSxbLTgwLjM4LDguM10sWy04MC40OCw4LjA5XSxbLTgwLDcuNTVdLFstODAuMjgsNy40Ml0sWy04MC40Miw3LjI3XSxbLTgwLjg5LDcuMjJdLFstODEuMDYsNy44Ml0sWy04MS4xOSw3LjY1XSxbLTgxLjUyLDcuNzFdLFstODEuNzIsOC4xMV0sWy04Mi4xMyw4LjE4XSxbLTgyLjM5LDguMjldLFstODIuODIsOC4yOV0sWy04Mi44NSw4LjA3XSxbLTgyLjk3LDguMjNdLFstODIuOTEsOC40Ml0sWy04Mi44Myw4LjYzXSxbLTgyLjg3LDguODFdLFstODIuNzIsOC45M10sWy04Mi45Myw5LjA3XSxbLTgyLjkzLDkuNDhdLFstODIuNTUsOS41N10sWy04Mi4xOSw5LjIxXSxbLTgyLjIxLDldLFstODEuODEsOC45NV0sWy04MS43MSw5LjAzXSxbLTgxLjQ0LDguNzldLFstODAuOTUsOC44Nl0sWy04MC41Miw5LjExXSxbLTc5LjkxLDkuMzFdLFstNzkuNTcsOS42MV0sWy03OS4wMiw5LjU1XSxbLTc5LjA2LDkuNDVdLFstNzguNSw5LjQyXSxbLTc4LjA2LDkuMjVdLFstNzcuNzMsOC45NV0sWy03Ny4zNSw4LjY3XV1dXX0se246YENvc3RhIFJpY2FgLGEyOmBDUmAsYTM6YENSSWAscDpgQ1JgLGw6Wy04NC4wOCwxMC4wN10sZzpbW1tbLTgyLjU1LDkuNTddLFstODIuOTMsOS40OF0sWy04Mi45Myw5LjA3XSxbLTgyLjcyLDguOTNdLFstODIuODcsOC44MV0sWy04Mi44Myw4LjYzXSxbLTgyLjkxLDguNDJdLFstODIuOTcsOC4yM10sWy04My41MSw4LjQ1XSxbLTgzLjcxLDguNjZdLFstODMuNiw4LjgzXSxbLTgzLjYzLDkuMDVdLFstODMuOTEsOS4yOV0sWy04NC4zLDkuNDldLFstODQuNjUsOS42Ml0sWy04NC43MSw5LjkxXSxbLTg0Ljk4LDEwLjA5XSxbLTg0LjkxLDkuOF0sWy04NS4xMSw5LjU2XSxbLTg1LjM0LDkuODNdLFstODUuNjYsOS45M10sWy04NS44LDEwLjEzXSxbLTg1Ljc5LDEwLjQ0XSxbLTg1LjY2LDEwLjc1XSxbLTg1Ljk0LDEwLjldLFstODUuNzEsMTEuMDldLFstODUuNTYsMTEuMjJdLFstODQuOSwxMC45NV0sWy04NC42NywxMS4wOF0sWy04NC4zNiwxMV0sWy04NC4xOSwxMC43OV0sWy04My45LDEwLjczXSxbLTgzLjY2LDEwLjk0XSxbLTgzLjQsMTAuNF0sWy04My4wMiw5Ljk5XSxbLTgyLjU1LDkuNTddXV1dfSx7bjpgTmljYXJhZ3VhYCxhMjpgTklgLGEzOmBOSUNgLHA6YE5JYCxsOlstODUuMDcsMTIuNjddLGc6W1tbWy04My42NiwxMC45NF0sWy04My45LDEwLjczXSxbLTg0LjE5LDEwLjc5XSxbLTg0LjM2LDExXSxbLTg0LjY3LDExLjA4XSxbLTg0LjksMTAuOTVdLFstODUuNTYsMTEuMjJdLFstODUuNzEsMTEuMDldLFstODYuMDYsMTEuNF0sWy04Ni41MywxMS44MV0sWy04Ni43NSwxMi4xNF0sWy04Ny4xNywxMi40Nl0sWy04Ny42NywxMi45MV0sWy04Ny41NiwxMy4wNl0sWy04Ny4zOSwxMi45MV0sWy04Ny4zMiwxMi45OF0sWy04Ny4wMSwxMy4wM10sWy04Ni44OCwxMy4yNV0sWy04Ni43MywxMy4yNl0sWy04Ni43NiwxMy43NV0sWy04Ni41MiwxMy43OF0sWy04Ni4zMSwxMy43N10sWy04Ni4xLDE0LjA0XSxbLTg1LjgsMTMuODRdLFstODUuNywxMy45Nl0sWy04NS41MSwxNC4wOF0sWy04NS4xNywxNC4zNV0sWy04NS4xNSwxNC41Nl0sWy04NS4wNSwxNC41NV0sWy04NC45MiwxNC43OV0sWy04NC44MiwxNC44Ml0sWy04NC42NSwxNC42N10sWy04NC40NSwxNC42Ml0sWy04NC4yMywxNC43NV0sWy04My45OCwxNC43NV0sWy04My42MywxNC44OF0sWy04My40OSwxNS4wMl0sWy04My4xNSwxNV0sWy04My4yMywxNC45XSxbLTgzLjI4LDE0LjY4XSxbLTgzLjE4LDE0LjMxXSxbLTgzLjQxLDEzLjk3XSxbLTgzLjUyLDEzLjU3XSxbLTgzLjU1LDEzLjEzXSxbLTgzLjUsMTIuODddLFstODMuNDcsMTIuNDJdLFstODMuNjMsMTIuMzJdLFstODMuNzIsMTEuODldLFstODMuNjUsMTEuNjNdLFstODMuODYsMTEuMzddLFstODMuODEsMTEuMV0sWy04My42NiwxMC45NF1dXV19LHtuOmBIb25kdXJhc2AsYTI6YEhOYCxhMzpgSE5EYCxwOmBITmAsbDpbLTg2Ljg5LDE0Ljc5XSxnOltbW1stODMuMTUsMTVdLFstODMuNDksMTUuMDJdLFstODMuNjMsMTQuODhdLFstODMuOTgsMTQuNzVdLFstODQuMjMsMTQuNzVdLFstODQuNDUsMTQuNjJdLFstODQuNjUsMTQuNjddLFstODQuODIsMTQuODJdLFstODQuOTIsMTQuNzldLFstODUuMDUsMTQuNTVdLFstODUuMTUsMTQuNTZdLFstODUuMTcsMTQuMzVdLFstODUuNTEsMTQuMDhdLFstODUuNywxMy45Nl0sWy04NS44LDEzLjg0XSxbLTg2LjEsMTQuMDRdLFstODYuMzEsMTMuNzddLFstODYuNTIsMTMuNzhdLFstODYuNzYsMTMuNzVdLFstODYuNzMsMTMuMjZdLFstODYuODgsMTMuMjVdLFstODcuMDEsMTMuMDNdLFstODcuMzIsMTIuOThdLFstODcuNDksMTMuM10sWy04Ny43OSwxMy4zOF0sWy04Ny43MiwxMy43OV0sWy04Ny44NiwxMy44OV0sWy04OC4wNywxMy45Nl0sWy04OC41LDEzLjg1XSxbLTg4LjU0LDEzLjk4XSxbLTg4Ljg0LDE0LjE0XSxbLTg5LjA2LDE0LjM0XSxbLTg5LjM1LDE0LjQyXSxbLTg5LjE1LDE0LjY4XSxbLTg5LjIzLDE0Ljg3XSxbLTg5LjE1LDE1LjA3XSxbLTg4LjY4LDE1LjM1XSxbLTg4LjIzLDE1LjczXSxbLTg4LjEyLDE1LjY5XSxbLTg3LjksMTUuODZdLFstODcuNjIsMTUuODhdLFstODcuNTIsMTUuOF0sWy04Ny4zNywxNS44NV0sWy04Ni45LDE1Ljc2XSxbLTg2LjQ0LDE1Ljc4XSxbLTg2LjEyLDE1Ljg5XSxbLTg2LDE2LjAxXSxbLTg1LjY4LDE1Ljk1XSxbLTg1LjQ0LDE1Ljg5XSxbLTg1LjE4LDE1LjkxXSxbLTg0Ljk4LDE2XSxbLTg0LjUzLDE1Ljg2XSxbLTg0LjM3LDE1Ljg0XSxbLTg0LjA2LDE1LjY1XSxbLTgzLjc3LDE1LjQyXSxbLTgzLjQxLDE1LjI3XSxbLTgzLjE1LDE1XV1dXX0se246YEVsIFNhbHZhZG9yYCxhMjpgU1ZgLGEzOmBTTFZgLHA6YFNWYCxsOlstODguODksMTMuNjldLGc6W1tbWy04OS4zNSwxNC40Ml0sWy04OS4wNiwxNC4zNF0sWy04OC44NCwxNC4xNF0sWy04OC41NCwxMy45OF0sWy04OC41LDEzLjg1XSxbLTg4LjA3LDEzLjk2XSxbLTg3Ljg2LDEzLjg5XSxbLTg3LjcyLDEzLjc5XSxbLTg3Ljc5LDEzLjM4XSxbLTg3LjksMTMuMTVdLFstODguNDgsMTMuMTZdLFstODguODQsMTMuMjZdLFstODkuMjYsMTMuNDZdLFstODkuODEsMTMuNTJdLFstOTAuMSwxMy43NF0sWy05MC4wNiwxMy44OF0sWy04OS43MiwxNC4xM10sWy04OS41MywxNC4yNF0sWy04OS41OSwxNC4zNl0sWy04OS4zNSwxNC40Ml1dXV19LHtuOmBHdWF0ZW1hbGFgLGEyOmBHVGAsYTM6YEdUTWAscDpgR1RgLGw6Wy05MC41LDE0Ljk4XSxnOltbW1stOTIuMjMsMTQuNTRdLFstOTIuMiwxNC44M10sWy05Mi4wOSwxNS4wNl0sWy05Mi4yMywxNS4yNV0sWy05MS43NSwxNi4wN10sWy05MC40NiwxNi4wN10sWy05MC40NCwxNi40MV0sWy05MC42LDE2LjQ3XSxbLTkwLjcxLDE2LjY5XSxbLTkxLjA4LDE2LjkyXSxbLTkxLjQ1LDE3LjI1XSxbLTkxLDE3LjI1XSxbLTkxLDE3LjgyXSxbLTkwLjA3LDE3LjgyXSxbLTg5LjE0LDE3LjgxXSxbLTg5LjE1LDE3LjAyXSxbLTg5LjIzLDE1Ljg5XSxbLTg4LjkzLDE1Ljg5XSxbLTg4LjYsMTUuNzFdLFstODguNTIsMTUuODZdLFstODguMjMsMTUuNzNdLFstODguNjgsMTUuMzVdLFstODkuMTUsMTUuMDddLFstODkuMjMsMTQuODddLFstODkuMTUsMTQuNjhdLFstODkuMzUsMTQuNDJdLFstODkuNTksMTQuMzZdLFstODkuNTMsMTQuMjRdLFstODkuNzIsMTQuMTNdLFstOTAuMDYsMTMuODhdLFstOTAuMSwxMy43NF0sWy05MC42MSwxMy45MV0sWy05MS4yMywxMy45M10sWy05MS42OSwxNC4xM10sWy05Mi4yMywxNC41NF1dXV19LHtuOmBCZWxpemVgLGEyOmBCWmAsYTM6YEJMWmAscDpgQlpgLGw6Wy04OC43MSwxNy4yXSxnOltbW1stODkuMTQsMTcuODFdLFstODkuMTUsMTcuOTZdLFstODkuMDMsMThdLFstODguODUsMTcuODhdLFstODguNDksMTguNDldLFstODguMywxOC41XSxbLTg4LjMsMTguMzVdLFstODguMTEsMTguMzVdLFstODguMTIsMTguMDhdLFstODguMjksMTcuNjRdLFstODguMiwxNy40OV0sWy04OC4zLDE3LjEzXSxbLTg4LjI0LDE3LjA0XSxbLTg4LjM2LDE2LjUzXSxbLTg4LjU1LDE2LjI3XSxbLTg4LjczLDE2LjIzXSxbLTg4LjkzLDE1Ljg5XSxbLTg5LjIzLDE1Ljg5XSxbLTg5LjE1LDE3LjAyXSxbLTg5LjE0LDE3LjgxXV1dXX0se246YFZlbmV6dWVsYWAsYTI6YFZFYCxhMzpgVkVOYCxwOmBWRWAsbDpbLTY0LjYsNy4xOF0sZzpbW1tbLTYwLjczLDUuMl0sWy02MC42LDQuOTJdLFstNjAuOTcsNC41NF0sWy02Mi4wOSw0LjE2XSxbLTYyLjgsNC4wMV0sWy02My4wOSwzLjc3XSxbLTYzLjg5LDQuMDJdLFstNjQuNjMsNC4xNV0sWy02NC44Miw0LjA2XSxbLTY0LjM3LDMuOF0sWy02NC40MSwzLjEzXSxbLTY0LjI3LDIuNV0sWy02My40MiwyLjQxXSxbLTYzLjM3LDIuMl0sWy02NC4wOCwxLjkyXSxbLTY0LjIsMS40OV0sWy02NC42MSwxLjMzXSxbLTY1LjM1LDEuMV0sWy02NS41NSwuNzldLFstNjYuMzMsLjcyXSxbLTY2Ljg4LDEuMjVdLFstNjcuMTgsMi4yNV0sWy02Ny40NSwyLjZdLFstNjcuODEsMi44Ml0sWy02Ny4zLDMuMzJdLFstNjcuMzQsMy41NF0sWy02Ny42MiwzLjg0XSxbLTY3LjgyLDQuNV0sWy02Ny43NCw1LjIyXSxbLTY3LjUyLDUuNTZdLFstNjcuMzQsNi4xXSxbLTY3LjcsNi4yN10sWy02OC4yNyw2LjE1XSxbLTY4Ljk5LDYuMjFdLFstNjkuMzksNi4xXSxbLTcwLjA5LDYuOTZdLFstNzAuNjcsNy4wOV0sWy03MS45Niw2Ljk5XSxbLTcyLjIsNy4zNF0sWy03Mi40NCw3LjQyXSxbLTcyLjQ4LDcuNjNdLFstNzIuMzYsOF0sWy03Mi40NCw4LjQxXSxbLTcyLjY2LDguNjNdLFstNzIuNzksOS4wOV0sWy03My4zLDkuMTVdLFstNzMuMDMsOS43NF0sWy03Mi45MSwxMC40NV0sWy03Mi42MSwxMC44Ml0sWy03Mi4yMywxMS4xMV0sWy03MS45NywxMS42MV0sWy03MS4zMywxMS43OF0sWy03MS4zNiwxMS41NF0sWy03MS45NSwxMS40Ml0sWy03MS42MiwxMC45N10sWy03MS42MywxMC40NV0sWy03Mi4wNyw5Ljg3XSxbLTcxLjcsOS4wN10sWy03MS4yNiw5LjE0XSxbLTcxLjA0LDkuODZdLFstNzEuMzUsMTAuMjFdLFstNzEuNCwxMC45N10sWy03MC4xNiwxMS4zOF0sWy03MC4yOSwxMS44NV0sWy02OS45NCwxMi4xNl0sWy02OS41OCwxMS40Nl0sWy02OC44OCwxMS40NF0sWy02OC4yMywxMC44OV0sWy02OC4xOSwxMC41NV0sWy02Ny4zLDEwLjU1XSxbLTY2LjIzLDEwLjY1XSxbLTY1LjY2LDEwLjJdLFstNjQuODksMTAuMDhdLFstNjQuMzMsMTAuMzldLFstNjQuMzIsMTAuNjRdLFstNjMuMDgsMTAuN10sWy02MS44OCwxMC43Ml0sWy02Mi43MywxMC40Ml0sWy02Mi4zOSw5Ljk1XSxbLTYxLjU5LDkuODddLFstNjAuODMsOS4zOF0sWy02MC42Nyw4LjU4XSxbLTYwLjE1LDguNl0sWy01OS43Niw4LjM3XSxbLTYwLjU1LDcuNzhdLFstNjAuNjQsNy40Ml0sWy02MC4zLDcuMDRdLFstNjAuNTQsNi44Nl0sWy02MS4xNiw2LjddLFstNjEuMTQsNi4yM10sWy02MS40MSw1Ljk2XSxbLTYwLjczLDUuMl1dXV19LHtuOmBHdXlhbmFgLGEyOmBHWWAsYTM6YEdVWWAscDpgR1lgLGw6Wy01OC45NCw1LjEyXSxnOltbW1stNTYuNTQsMS45XSxbLTU2Ljc4LDEuODZdLFstNTcuMzQsMS45NV0sWy01Ny42NiwxLjY4XSxbLTU4LjExLDEuNTFdLFstNTguNDMsMS40Nl0sWy01OC41NCwxLjI3XSxbLTU5LjAzLDEuMzJdLFstNTkuNjUsMS43OV0sWy01OS43MiwyLjI1XSxbLTU5Ljk3LDIuNzZdLFstNTkuODIsMy42MV0sWy01OS41NCwzLjk2XSxbLTU5Ljc3LDQuNDJdLFstNjAuMTEsNC41N10sWy01OS45OCw1LjAxXSxbLTYwLjIxLDUuMjRdLFstNjAuNzMsNS4yXSxbLTYxLjQxLDUuOTZdLFstNjEuMTQsNi4yM10sWy02MS4xNiw2LjddLFstNjAuNTQsNi44Nl0sWy02MC4zLDcuMDRdLFstNjAuNjQsNy40Ml0sWy02MC41NSw3Ljc4XSxbLTU5Ljc2LDguMzddLFstNTkuMSw4XSxbLTU4LjQ4LDcuMzVdLFstNTguNDUsNi44M10sWy01OC4wOCw2LjgxXSxbLTU3LjU0LDYuMzJdLFstNTcuMTUsNS45N10sWy01Ny4zMSw1LjA3XSxbLTU3LjkxLDQuODFdLFstNTcuODYsNC41OF0sWy01OC4wNCw0LjA2XSxbLTU3LjYsMy4zM10sWy01Ny4yOCwzLjMzXSxbLTU3LjE1LDIuNzddLFstNTYuNTQsMS45XV1dXX0se246YFN1cmluYW1lYCxhMjpgU1JgLGEzOmBTVVJgLHA6YFNSYCxsOlstNTUuOTEsNC4xNF0sZzpbW1tbLTU0LjUyLDIuMzFdLFstNTUuMSwyLjUyXSxbLTU1LjU3LDIuNDJdLFstNTUuOTcsMi41MV0sWy01Ni4wNywyLjIyXSxbLTU1LjkxLDIuMDJdLFstNTYsMS44Ml0sWy01Ni41NCwxLjldLFstNTcuMTUsMi43N10sWy01Ny4yOCwzLjMzXSxbLTU3LjYsMy4zM10sWy01OC4wNCw0LjA2XSxbLTU3Ljg2LDQuNThdLFstNTcuOTEsNC44MV0sWy01Ny4zMSw1LjA3XSxbLTU3LjE1LDUuOTddLFstNTUuOTUsNS43N10sWy01NS44NCw1Ljk1XSxbLTU1LjAzLDYuMDNdLFstNTMuOTYsNS43Nl0sWy01NC40OCw0LjldLFstNTQuNCw0LjIxXSxbLTU0LjAxLDMuNjJdLFstNTQuMTgsMy4xOV0sWy01NC4yNywyLjczXSxbLTU0LjUyLDIuMzFdXV1dfSx7bjpgRnJhbmNlYCxhMjpgYCxhMzpgRlJBYCxwOmBGYCxsOlsyLjU1LDQ2LjddLGc6W1tbWy01MS42Niw0LjE2XSxbLTUyLjI1LDMuMjRdLFstNTIuNTYsMi41XSxbLTUyLjk0LDIuMTJdLFstNTMuNDIsMi4wNV0sWy01My41NSwyLjMzXSxbLTUzLjc4LDIuMzhdLFstNTQuMDksMi4xMV0sWy01NC41MiwyLjMxXSxbLTU0LjI3LDIuNzNdLFstNTQuMTgsMy4xOV0sWy01NC4wMSwzLjYyXSxbLTU0LjQsNC4yMV0sWy01NC40OCw0LjldLFstNTMuOTYsNS43Nl0sWy01My42Miw1LjY1XSxbLTUyLjg4LDUuNDFdLFstNTEuODIsNC41N10sWy01MS42Niw0LjE2XV1dLFtbWzYuMTksNDkuNDZdLFs2LjY2LDQ5LjJdLFs4LjEsNDkuMDJdLFs3LjU5LDQ4LjMzXSxbNy40Nyw0Ny42Ml0sWzcuMTksNDcuNDVdLFs2Ljc0LDQ3LjU0XSxbNi43Nyw0Ny4yOV0sWzYuMDQsNDYuNzNdLFs2LjAyLDQ2LjI3XSxbNi41LDQ2LjQzXSxbNi44NCw0NS45OV0sWzYuOCw0NS43MV0sWzcuMSw0NS4zM10sWzYuNzUsNDUuMDNdLFs3LjAxLDQ0LjI1XSxbNy41NSw0NC4xM10sWzcuNDQsNDMuNjldLFs2LjUzLDQzLjEzXSxbNC41Niw0My40XSxbMy4xLDQzLjA4XSxbMi45OSw0Mi40N10sWzEuODMsNDIuMzRdLFsuNyw0Mi44XSxbLjM0LDQyLjU4XSxbLTEuNSw0My4wM10sWy0xLjksNDMuNDJdLFstMS4zOCw0NC4wMl0sWy0xLjE5LDQ2LjAxXSxbLTIuMjMsNDcuMDZdLFstMi45Niw0Ny41N10sWy00LjQ5LDQ3Ljk1XSxbLTQuNTksNDguNjhdLFstMy4zLDQ4LjldLFstMS42Miw0OC42NF0sWy0xLjkzLDQ5Ljc4XSxbLS45OSw0OS4zNV0sWzEuMzQsNTAuMTNdLFsxLjY0LDUwLjk1XSxbMi41MSw1MS4xNV0sWzIuNjYsNTAuOF0sWzMuMTIsNTAuNzhdLFszLjU5LDUwLjM4XSxbNC4yOSw0OS45MV0sWzQuOCw0OS45OV0sWzUuNjcsNDkuNTNdLFs1LjksNDkuNDRdLFs2LjE5LDQ5LjQ2XV1dLFtbWzguNzUsNDIuNjNdLFs5LjM5LDQzLjAxXSxbOS41Niw0Mi4xNV0sWzkuMjMsNDEuMzhdLFs4Ljc4LDQxLjU4XSxbOC41NCw0Mi4yNl0sWzguNzUsNDIuNjNdXV1dfSx7bjpgRWN1YWRvcmAsYTI6YEVDYCxhMzpgRUNVYCxwOmBFQ2AsbDpbLTc4LjE5LC0xLjI2XSxnOltbW1stNzUuMzcsLS4xNV0sWy03NS4yMywtLjkxXSxbLTc1LjU0LC0xLjU2XSxbLTc2LjY0LC0yLjYxXSxbLTc3Ljg0LC0zXSxbLTc4LjQ1LC0zLjg3XSxbLTc4LjY0LC00LjU1XSxbLTc5LjIxLC00Ljk2XSxbLTc5LjYyLC00LjQ1XSxbLTgwLjAzLC00LjM1XSxbLTgwLjQ0LC00LjQzXSxbLTgwLjQ3LC00LjA2XSxbLTgwLjE4LC0zLjgyXSxbLTgwLjMsLTMuNF0sWy03OS43NywtMi42Nl0sWy03OS45OSwtMi4yMl0sWy04MC4zNywtMi42OV0sWy04MC45NywtMi4yNV0sWy04MC43NiwtMS45N10sWy04MC45MywtMS4wNl0sWy04MC41OCwtLjkxXSxbLTgwLjQsLS4yOF0sWy04MC4wMiwuMzZdLFstODAuMDksLjc3XSxbLTc5LjU0LC45OF0sWy03OC44NiwxLjM4XSxbLTc3Ljg2LC44MV0sWy03Ny42NywuODNdLFstNzcuNDIsLjRdLFstNzYuNTgsLjI2XSxbLTc2LjI5LC40Ml0sWy03NS44LC4wOF0sWy03NS4zNywtLjE1XV1dXX0se246YFB1ZXJ0byBSaWNvYCxhMjpgUFJgLGEzOmBQUklgLHA6YFBSYCxsOlstNjYuNDgsMTguMjNdLGc6W1tbWy02Ni4yOCwxOC41MV0sWy02NS43NywxOC40M10sWy02NS41OSwxOC4yM10sWy02NS44NSwxNy45OF0sWy02Ni42LDE3Ljk4XSxbLTY3LjE4LDE3Ljk1XSxbLTY3LjI0LDE4LjM3XSxbLTY3LjEsMTguNTJdLFstNjYuMjgsMTguNTFdXV1dfSx7bjpgSmFtYWljYWAsYTI6YEpNYCxhMzpgSkFNYCxwOmBKYCxsOlstNzcuMzIsMTguMTRdLGc6W1tbWy03Ny41NywxOC40OV0sWy03Ni45LDE4LjRdLFstNzYuMzcsMTguMTZdLFstNzYuMiwxNy44OV0sWy03Ni45LDE3Ljg3XSxbLTc3LjIxLDE3LjddLFstNzcuNzcsMTcuODZdLFstNzguMzQsMTguMjNdLFstNzguMjIsMTguNDVdLFstNzcuOCwxOC41Ml0sWy03Ny41NywxOC40OV1dXV19LHtuOmBDdWJhYCxhMjpgQ1VgLGEzOmBDVUJgLHA6YENVYCxsOlstNzcuOTgsMjEuMzNdLGc6W1tbWy04Mi4yNywyMy4xOV0sWy04MS40LDIzLjEyXSxbLTgwLjYyLDIzLjExXSxbLTc5LjY4LDIyLjc3XSxbLTc5LjI4LDIyLjRdLFstNzguMzUsMjIuNTFdLFstNzcuOTksMjIuMjhdLFstNzcuMTUsMjEuNjZdLFstNzYuNTIsMjEuMjFdLFstNzYuMTksMjEuMjJdLFstNzUuNiwyMS4wMl0sWy03NS42NywyMC43NF0sWy03NC45MywyMC42OV0sWy03NC4xOCwyMC4yOF0sWy03NC4zLDIwLjA1XSxbLTc0Ljk2LDE5LjkyXSxbLTc1LjYzLDE5Ljg3XSxbLTc2LjMyLDE5Ljk1XSxbLTc3Ljc2LDE5Ljg2XSxbLTc3LjA5LDIwLjQxXSxbLTc3LjQ5LDIwLjY3XSxbLTc4LjE0LDIwLjc0XSxbLTc4LjQ4LDIxLjAzXSxbLTc4LjcyLDIxLjZdLFstNzkuMjgsMjEuNTZdLFstODAuMjIsMjEuODNdLFstODAuNTIsMjIuMDRdLFstODEuODIsMjIuMTldLFstODIuMTcsMjIuMzldLFstODEuOCwyMi42NF0sWy04Mi43OCwyMi42OV0sWy04My40OSwyMi4xN10sWy04My45MSwyMi4xNV0sWy04NC4wNSwyMS45MV0sWy04NC41NSwyMS44XSxbLTg0Ljk3LDIxLjldLFstODQuNDUsMjIuMl0sWy04NC4yMywyMi41N10sWy04My43OCwyMi43OV0sWy04My4yNywyMi45OF0sWy04Mi41MSwyMy4wOF0sWy04Mi4yNywyMy4xOV1dXV19LHtuOmBaaW1iYWJ3ZWAsYTI6YFpXYCxhMzpgWldFYCxwOmBaV2AsbDpbMjkuOTMsLTE4LjkxXSxnOltbW1szMS4xOSwtMjIuMjVdLFszMC42NiwtMjIuMTVdLFszMC4zMiwtMjIuMjddLFsyOS44NCwtMjIuMV0sWzI5LjQzLC0yMi4wOV0sWzI4Ljc5LC0yMS42NF0sWzI4LjAyLC0yMS40OV0sWzI3LjczLC0yMC44NV0sWzI3LjcyLC0yMC41XSxbMjcuMywtMjAuMzldLFsyNi4xNiwtMTkuMjldLFsyNS44NSwtMTguNzFdLFsyNS42NSwtMTguNTRdLFsyNS4yNiwtMTcuNzRdLFsyNi4zOCwtMTcuODVdLFsyNi43MSwtMTcuOTZdLFsyNy4wNCwtMTcuOTRdLFsyNy42LC0xNy4yOV0sWzI4LjQ3LC0xNi40N10sWzI4LjgzLC0xNi4zOV0sWzI4Ljk1LC0xNi4wNF0sWzI5LjUyLC0xNS42NF0sWzMwLjI3LC0xNS41MV0sWzMwLjM0LC0xNS44OF0sWzMxLjE3LC0xNS44Nl0sWzMxLjY0LC0xNi4wN10sWzMxLjg1LC0xNi4zMl0sWzMyLjMzLC0xNi4zOV0sWzMyLjg1LC0xNi43MV0sWzMyLjg1LC0xNy45OF0sWzMyLjY1LC0xOC42N10sWzMyLjYxLC0xOS40Ml0sWzMyLjc3LC0xOS43Ml0sWzMyLjY2LC0yMC4zXSxbMzIuNTEsLTIwLjRdLFszMi4yNCwtMjEuMTJdLFszMS4xOSwtMjIuMjVdXV1dfSx7bjpgQm90c3dhbmFgLGEyOmBCV2AsYTM6YEJXQWAscDpgQldgLGw6WzI0LjE4LC0yMi4xXSxnOltbW1syOS40MywtMjIuMDldLFsyOC4wMiwtMjIuODNdLFsyNy4xMiwtMjMuNTddLFsyNi43OSwtMjQuMjRdLFsyNi40OSwtMjQuNjJdLFsyNS45NCwtMjQuN10sWzI1Ljc3LC0yNS4xN10sWzI1LjY2LC0yNS40OV0sWzI1LjAzLC0yNS43Ml0sWzI0LjIxLC0yNS42N10sWzIzLjczLC0yNS4zOV0sWzIzLjMxLC0yNS4yN10sWzIyLjgyLC0yNS41XSxbMjIuNTgsLTI1Ljk4XSxbMjIuMTEsLTI2LjI4XSxbMjEuNjEsLTI2LjczXSxbMjAuODksLTI2LjgzXSxbMjAuNjcsLTI2LjQ4XSxbMjAuNzYsLTI1Ljg3XSxbMjAuMTcsLTI0LjkyXSxbMTkuOSwtMjQuNzddLFsxOS45LC0yMS44NV0sWzIwLjg4LC0yMS44MV0sWzIwLjkxLC0xOC4yNV0sWzIxLjY2LC0xOC4yMl0sWzIzLjIsLTE3Ljg3XSxbMjMuNTgsLTE4LjI4XSxbMjQuMjIsLTE3Ljg5XSxbMjQuNTIsLTE3Ljg5XSxbMjUuMDgsLTE3LjY2XSxbMjUuMjYsLTE3Ljc0XSxbMjUuNjUsLTE4LjU0XSxbMjUuODUsLTE4LjcxXSxbMjYuMTYsLTE5LjI5XSxbMjcuMywtMjAuMzldLFsyNy43MiwtMjAuNV0sWzI3LjczLC0yMC44NV0sWzI4LjAyLC0yMS40OV0sWzI4Ljc5LC0yMS42NF0sWzI5LjQzLC0yMi4wOV1dXV19LHtuOmBOYW1pYmlhYCxhMjpgTkFgLGEzOmBOQU1gLHA6YE5BYCxsOlsxNy4xMSwtMjAuNThdLGc6W1tbWzE5LjksLTI0Ljc3XSxbMTkuODksLTI4LjQ2XSxbMTksLTI4Ljk3XSxbMTguNDYsLTI5LjA1XSxbMTcuODQsLTI4Ljg2XSxbMTcuMzksLTI4Ljc4XSxbMTcuMjIsLTI4LjM2XSxbMTYuODIsLTI4LjA4XSxbMTYuMzQsLTI4LjU4XSxbMTUuNiwtMjcuODJdLFsxNS4yMSwtMjcuMDldLFsxNC45OSwtMjYuMTJdLFsxNC43NCwtMjUuMzldLFsxNC40MSwtMjMuODVdLFsxNC4zOSwtMjIuNjZdLFsxNC4yNiwtMjIuMTFdLFsxMy44NywtMjEuN10sWzEzLjM1LC0yMC44N10sWzEyLjgzLC0xOS42N10sWzEyLjYxLC0xOS4wNV0sWzExLjc5LC0xOC4wN10sWzExLjczLC0xNy4zXSxbMTIuMjIsLTE3LjExXSxbMTIuODEsLTE2Ljk0XSxbMTMuNDYsLTE2Ljk3XSxbMTQuMDYsLTE3LjQyXSxbMTQuMjEsLTE3LjM1XSxbMTguMjYsLTE3LjMxXSxbMTguOTYsLTE3Ljc5XSxbMjEuMzgsLTE3LjkzXSxbMjMuMjIsLTE3LjUyXSxbMjQuMDMsLTE3LjNdLFsyNC42OCwtMTcuMzVdLFsyNS4wOCwtMTcuNThdLFsyNS4wOCwtMTcuNjZdLFsyNC41MiwtMTcuODldLFsyNC4yMiwtMTcuODldLFsyMy41OCwtMTguMjhdLFsyMy4yLC0xNy44N10sWzIxLjY2LC0xOC4yMl0sWzIwLjkxLC0xOC4yNV0sWzIwLjg4LC0yMS44MV0sWzE5LjksLTIxLjg1XSxbMTkuOSwtMjQuNzddXV1dfSx7bjpgU2VuZWdhbGAsYTI6YFNOYCxhMzpgU0VOYCxwOmBTTmAsbDpbLTE0Ljc4LDE1LjE0XSxnOltbW1stMTYuNzEsMTMuNTldLFstMTcuMTMsMTQuMzddLFstMTcuNjMsMTQuNzNdLFstMTcuMTksMTQuOTJdLFstMTYuNywxNS42Ml0sWy0xNi40NiwxNi4xNF0sWy0xNi4xMiwxNi40Nl0sWy0xNS42MiwxNi4zN10sWy0xNS4xNCwxNi41OV0sWy0xNC41OCwxNi42XSxbLTE0LjEsMTYuM10sWy0xMy40NCwxNi4wNF0sWy0xMi44MywxNS4zXSxbLTEyLjE3LDE0LjYyXSxbLTEyLjEyLDEzLjk5XSxbLTExLjkzLDEzLjQyXSxbLTExLjU1LDEzLjE0XSxbLTExLjQ3LDEyLjc1XSxbLTExLjUxLDEyLjQ0XSxbLTExLjY2LDEyLjM5XSxbLTEyLjIsMTIuNDddLFstMTIuMjgsMTIuMzVdLFstMTIuNSwxMi4zM10sWy0xMy4yMiwxMi41OF0sWy0xMy43LDEyLjU5XSxbLTE1LjU1LDEyLjYzXSxbLTE1LjgyLDEyLjUyXSxbLTE2LjE1LDEyLjU1XSxbLTE2LjY4LDEyLjM4XSxbLTE2Ljg0LDEzLjE1XSxbLTE1LjkzLDEzLjEzXSxbLTE1LjY5LDEzLjI3XSxbLTE1LjUxLDEzLjI4XSxbLTE1LjE0LDEzLjUxXSxbLTE0LjcxLDEzLjNdLFstMTQuMjgsMTMuMjhdLFstMTMuODQsMTMuNTFdLFstMTQuMDUsMTMuNzldLFstMTQuMzgsMTMuNjNdLFstMTQuNjksMTMuNjNdLFstMTUuMDgsMTMuODhdLFstMTUuNCwxMy44Nl0sWy0xNS42MiwxMy42Ml0sWy0xNi43MSwxMy41OV1dXV19LHtuOmBNYWxpYCxhMjpgTUxgLGEzOmBNTElgLHA6YE1MYCxsOlstMi4wNCwxOC42OV0sZzpbW1tbLTExLjUxLDEyLjQ0XSxbLTExLjQ3LDEyLjc1XSxbLTExLjU1LDEzLjE0XSxbLTExLjkzLDEzLjQyXSxbLTEyLjEyLDEzLjk5XSxbLTEyLjE3LDE0LjYyXSxbLTExLjgzLDE0LjhdLFstMTEuNjcsMTUuMzldLFstMTEuMzUsMTUuNDFdLFstMTAuNjUsMTUuMTNdLFstMTAuMDksMTUuMzNdLFstOS43LDE1LjI2XSxbLTkuNTUsMTUuNDldLFstNS41NCwxNS41XSxbLTUuMzIsMTYuMl0sWy01LjQ5LDE2LjMzXSxbLTUuOTcsMjAuNjRdLFstNi40NSwyNC45Nl0sWy00LjkyLDI0Ljk3XSxbLTEuNTUsMjIuNzldLFsxLjgyLDIwLjYxXSxbMi4wNiwyMC4xNF0sWzIuNjgsMTkuODZdLFszLjE1LDE5LjY5XSxbMy4xNiwxOS4wNl0sWzQuMjcsMTkuMTZdLFs0LjI3LDE2Ljg1XSxbMy43MiwxNi4xOF0sWzMuNjQsMTUuNTddLFsyLjc1LDE1LjQxXSxbMS4zOSwxNS4zMl0sWzEuMDIsMTQuOTddLFsuMzcsMTQuOTNdLFstLjI3LDE0LjkyXSxbLS41MiwxNS4xMl0sWy0xLjA3LDE0Ljk3XSxbLTIsMTQuNTZdLFstMi4xOSwxNC4yNV0sWy0yLjk3LDEzLjhdLFstMy4xLDEzLjU0XSxbLTMuNTIsMTMuMzRdLFstNC4wMSwxMy40N10sWy00LjI4LDEzLjIzXSxbLTQuNDMsMTIuNTRdLFstNS4yMiwxMS43MV0sWy01LjIsMTEuMzhdLFstNS40NywxMC45NV0sWy01LjQsMTAuMzddLFstNS44MiwxMC4yMl0sWy02LjA1LDEwLjFdLFstNi4yMSwxMC41Ml0sWy02LjQ5LDEwLjQxXSxbLTYuNjcsMTAuNDNdLFstNi44NSwxMC4xNF0sWy03LjYyLDEwLjE1XSxbLTcuOSwxMC4zXSxbLTguMDMsMTAuMjFdLFstOC4zNCwxMC40OV0sWy04LjI4LDEwLjc5XSxbLTguNDEsMTAuOTFdLFstOC42MiwxMC44MV0sWy04LjU4LDExLjE0XSxbLTguMzgsMTEuMzldLFstOC43OSwxMS44MV0sWy04LjkxLDEyLjA5XSxbLTkuMTMsMTIuMzFdLFstOS4zMywxMi4zM10sWy05LjU3LDEyLjE5XSxbLTkuODksMTIuMDZdLFstMTAuMTcsMTEuODRdLFstMTAuNTksMTEuOTJdLFstMTAuODcsMTIuMThdLFstMTEuMDQsMTIuMjFdLFstMTEuMywxMi4wOF0sWy0xMS40NiwxMi4wOF0sWy0xMS41MSwxMi40NF1dXV19LHtuOmBNYXVyaXRhbmlhYCxhMjpgTVJgLGEzOmBNUlRgLHA6YE1SYCxsOlstOS43NCwxOS41OV0sZzpbW1tbLTE3LjA2LDIxXSxbLTE2Ljg1LDIxLjMzXSxbLTEyLjkzLDIxLjMzXSxbLTEzLjEyLDIyLjc3XSxbLTEyLjg3LDIzLjI4XSxbLTExLjk0LDIzLjM3XSxbLTExLjk3LDI1LjkzXSxbLTguNjksMjUuODhdLFstOC42OCwyNy40XSxbLTQuOTIsMjQuOTddLFstNi40NSwyNC45Nl0sWy01Ljk3LDIwLjY0XSxbLTUuNDksMTYuMzNdLFstNS4zMiwxNi4yXSxbLTUuNTQsMTUuNV0sWy05LjU1LDE1LjQ5XSxbLTkuNywxNS4yNl0sWy0xMC4wOSwxNS4zM10sWy0xMC42NSwxNS4xM10sWy0xMS4zNSwxNS40MV0sWy0xMS42NywxNS4zOV0sWy0xMS44MywxNC44XSxbLTEyLjE3LDE0LjYyXSxbLTEyLjgzLDE1LjNdLFstMTMuNDQsMTYuMDRdLFstMTQuMSwxNi4zXSxbLTE0LjU4LDE2LjZdLFstMTUuMTQsMTYuNTldLFstMTUuNjIsMTYuMzddLFstMTYuMTIsMTYuNDZdLFstMTYuNDYsMTYuMTRdLFstMTYuNTUsMTYuNjddLFstMTYuMjcsMTcuMTddLFstMTYuMTUsMTguMTFdLFstMTYuMjYsMTkuMV0sWy0xNi4zOCwxOS41OV0sWy0xNi4yOCwyMC4wOV0sWy0xNi41NCwyMC41N10sWy0xNy4wNiwyMV1dXV19LHtuOmBCZW5pbmAsYTI6YEJKYCxhMzpgQkVOYCxwOmBCSmAsbDpbMi4zNSwxMC4zMl0sZzpbW1tbMi42OSw2LjI2XSxbMS44Nyw2LjE0XSxbMS42Miw2LjgzXSxbMS42Niw5LjEzXSxbMS40Niw5LjMzXSxbMS40Myw5LjgzXSxbMS4wOCwxMC4xOF0sWy43NywxMC40N10sWy45LDExXSxbMS4yNCwxMS4xMV0sWzEuNDUsMTEuNTVdLFsxLjk0LDExLjY0XSxbMi4xNSwxMS45NF0sWzIuNDksMTIuMjNdLFsyLjg1LDEyLjI0XSxbMy42MSwxMS42Nl0sWzMuNTcsMTEuMzNdLFszLjgsMTAuNzNdLFszLjYsMTAuMzNdLFszLjcxLDEwLjA2XSxbMy4yMiw5LjQ0XSxbMi45MSw5LjE0XSxbMi43Miw4LjUxXSxbMi43NSw3Ljg3XSxbMi42OSw2LjI2XV1dXX0se246YE5pZ2VyYCxhMjpgTkVgLGEzOmBORVJgLHA6YE5FYCxsOls5LjUsMTcuNDVdLGc6W1tbWzE0Ljg1LDIyLjg2XSxbMTUuMSwyMS4zMV0sWzE1LjQ3LDIxLjA1XSxbMTUuNDksMjAuNzNdLFsxNS45LDIwLjM5XSxbMTUuNjksMTkuOTZdLFsxNS4zLDE3LjkzXSxbMTUuMjUsMTYuNjNdLFsxMy45NywxNS42OF0sWzEzLjU0LDE0LjM3XSxbMTMuOTYsMTRdLFsxMy45NSwxMy4zNV0sWzE0LjYsMTMuMzNdLFsxNC41LDEyLjg2XSxbMTQuMjEsMTIuOF0sWzE0LjE4LDEyLjQ4XSxbMTQsMTIuNDZdLFsxMy4zMiwxMy41Nl0sWzEzLjA4LDEzLjZdLFsxMi4zLDEzLjA0XSxbMTEuNTMsMTMuMzNdLFsxMC45OSwxMy4zOV0sWzEwLjcsMTMuMjVdLFsxMC4xMSwxMy4yOF0sWzkuNTIsMTIuODVdLFs5LjAxLDEyLjgzXSxbNy44LDEzLjM0XSxbNy4zMywxMy4xXSxbNi44MiwxMy4xMl0sWzYuNDUsMTMuNDldLFs1LjQ0LDEzLjg3XSxbNC4zNywxMy43NV0sWzQuMTEsMTMuNTNdLFszLjk3LDEyLjk2XSxbMy42OCwxMi41NV0sWzMuNjEsMTEuNjZdLFsyLjg1LDEyLjI0XSxbMi40OSwxMi4yM10sWzIuMTUsMTEuOTRdLFsyLjE4LDEyLjYzXSxbMS4wMiwxMi44NV0sWy45OSwxMy4zNF0sWy40MywxMy45OV0sWy4zLDE0LjQ0XSxbLjM3LDE0LjkzXSxbMS4wMiwxNC45N10sWzEuMzksMTUuMzJdLFsyLjc1LDE1LjQxXSxbMy42NCwxNS41N10sWzMuNzIsMTYuMThdLFs0LjI3LDE2Ljg1XSxbNC4yNywxOS4xNl0sWzUuNjgsMTkuNl0sWzguNTcsMjEuNTddLFsxMiwyMy40N10sWzEzLjU4LDIzLjA0XSxbMTQuMTQsMjIuNDldLFsxNC44NSwyMi44Nl1dXV19LHtuOmBOaWdlcmlhYCxhMjpgTkdgLGEzOmBOR0FgLHA6YE5HYCxsOls3LjUsOS40NF0sZzpbW1tbMi42OSw2LjI2XSxbMi43NSw3Ljg3XSxbMi43Miw4LjUxXSxbMi45MSw5LjE0XSxbMy4yMiw5LjQ0XSxbMy43MSwxMC4wNl0sWzMuNiwxMC4zM10sWzMuOCwxMC43M10sWzMuNTcsMTEuMzNdLFszLjYxLDExLjY2XSxbMy42OCwxMi41NV0sWzMuOTcsMTIuOTZdLFs0LjExLDEzLjUzXSxbNC4zNywxMy43NV0sWzUuNDQsMTMuODddLFs2LjQ1LDEzLjQ5XSxbNi44MiwxMy4xMl0sWzcuMzMsMTMuMV0sWzcuOCwxMy4zNF0sWzkuMDEsMTIuODNdLFs5LjUyLDEyLjg1XSxbMTAuMTEsMTMuMjhdLFsxMC43LDEzLjI1XSxbMTAuOTksMTMuMzldLFsxMS41MywxMy4zM10sWzEyLjMsMTMuMDRdLFsxMy4wOCwxMy42XSxbMTMuMzIsMTMuNTZdLFsxNCwxMi40Nl0sWzE0LjE4LDEyLjQ4XSxbMTQuNTgsMTIuMDldLFsxNC40NywxMS45XSxbMTQuNDIsMTEuNTddLFsxMy41NywxMC44XSxbMTMuMzEsMTAuMTZdLFsxMy4xNyw5LjY0XSxbMTIuOTYsOS40Ml0sWzEyLjc1LDguNzJdLFsxMi4yMiw4LjMxXSxbMTIuMDYsNy44XSxbMTEuODQsNy40XSxbMTEuNzUsNi45OF0sWzExLjA2LDYuNjRdLFsxMC41LDcuMDZdLFsxMC4xMiw3LjA0XSxbOS41Miw2LjQ1XSxbOS4yMyw2LjQ0XSxbOC43Niw1LjQ4XSxbOC41LDQuNzddLFs3LjQ2LDQuNDFdLFs3LjA4LDQuNDZdLFs2LjcsNC4yNF0sWzUuOSw0LjI2XSxbNS4zNiw0Ljg5XSxbNS4wMyw1LjYxXSxbNC4zMyw2LjI3XSxbMy41Nyw2LjI2XSxbMi42OSw2LjI2XV1dXX0se246YENhbWVyb29uYCxhMjpgQ01gLGEzOmBDTVJgLHA6YENNYCxsOlsxMi40Nyw0LjU5XSxnOltbW1sxNC41LDEyLjg2XSxbMTQuODksMTIuMjJdLFsxNC45NiwxMS41Nl0sWzE0LjkyLDEwLjg5XSxbMTUuNDcsOS45OF0sWzE0LjkxLDkuOTldLFsxNC42Myw5LjkyXSxbMTQuMTcsMTAuMDJdLFsxMy45NSw5LjU1XSxbMTQuNTQsOC45N10sWzE0Ljk4LDguOF0sWzE1LjEyLDguMzhdLFsxNS40NCw3LjY5XSxbMTUuMjgsNy40Ml0sWzE0Ljc4LDYuNDFdLFsxNC41NCw2LjIzXSxbMTQuNDYsNS40NV0sWzE0LjU2LDUuMDNdLFsxNC40OCw0LjczXSxbMTQuOTUsNC4yMV0sWzE1LjA0LDMuODVdLFsxNS40MSwzLjM0XSxbMTUuODYsMy4wMV0sWzE1LjkxLDIuNTZdLFsxNi4wMSwyLjI3XSxbMTUuOTQsMS43M10sWzE1LjE1LDEuOTZdLFsxNC4zNCwyLjIzXSxbMTMuMDgsMi4yN10sWzEyLjk1LDIuMzJdLFsxMi4zNiwyLjE5XSxbMTEuNzUsMi4zM10sWzExLjI4LDIuMjZdLFs5LjY1LDIuMjhdLFs5LjgsMy4wN10sWzkuNCwzLjczXSxbOC45NSwzLjldLFs4Ljc0LDQuMzVdLFs4LjQ5LDQuNV0sWzguNSw0Ljc3XSxbOC43Niw1LjQ4XSxbOS4yMyw2LjQ0XSxbOS41Miw2LjQ1XSxbMTAuMTIsNy4wNF0sWzEwLjUsNy4wNl0sWzExLjA2LDYuNjRdLFsxMS43NSw2Ljk4XSxbMTEuODQsNy40XSxbMTIuMDYsNy44XSxbMTIuMjIsOC4zMV0sWzEyLjc1LDguNzJdLFsxMi45Niw5LjQyXSxbMTMuMTcsOS42NF0sWzEzLjMxLDEwLjE2XSxbMTMuNTcsMTAuOF0sWzE0LjQyLDExLjU3XSxbMTQuNDcsMTEuOV0sWzE0LjU4LDEyLjA5XSxbMTQuMTgsMTIuNDhdLFsxNC4yMSwxMi44XSxbMTQuNSwxMi44Nl1dXV19LHtuOmBUb2dvYCxhMjpgVEdgLGEzOmBUR09gLHA6YFRHYCxsOlsxLjA2LDguODFdLGc6W1tbWy45LDExXSxbLjc3LDEwLjQ3XSxbMS4wOCwxMC4xOF0sWzEuNDMsOS44M10sWzEuNDYsOS4zM10sWzEuNjYsOS4xM10sWzEuNjIsNi44M10sWzEuODcsNi4xNF0sWzEuMDYsNS45M10sWy44NCw2LjI4XSxbLjU3LDYuOTFdLFsuNDksNy40MV0sWy43MSw4LjMxXSxbLjQ2LDguNjhdLFsuMzcsOS40N10sWy4zNywxMC4xOV0sWy0uMDUsMTAuNzFdLFsuMDIsMTEuMDJdLFsuOSwxMV1dXV19LHtuOmBHaGFuYWAsYTI6YEdIYCxhMzpgR0hBYCxwOmBHSGAsbDpbLTEuMDQsNy43Ml0sZzpbW1tbLjAyLDExLjAyXSxbLS4wNSwxMC43MV0sWy4zNywxMC4xOV0sWy4zNyw5LjQ3XSxbLjQ2LDguNjhdLFsuNzEsOC4zMV0sWy40OSw3LjQxXSxbLjU3LDYuOTFdLFsuODQsNi4yOF0sWzEuMDYsNS45M10sWy0uNTEsNS4zNF0sWy0xLjA2LDVdLFstMS45Niw0LjcxXSxbLTIuODYsNC45OV0sWy0yLjgxLDUuMzldLFstMy4yNCw2LjI1XSxbLTIuOTgsNy4zOF0sWy0yLjU2LDguMjJdLFstMi44Myw5LjY0XSxbLTIuOTYsMTAuNF0sWy0yLjk0LDEwLjk2XSxbLTEuMiwxMS4wMV0sWy0uNzYsMTAuOTRdLFstLjQ0LDExLjFdLFsuMDIsMTEuMDJdXV1dfSx7bjpgQ8O0dGUgZCdJdm9pcmVgLGEyOmBDSWAsYTM6YENJVmAscDpgQ0lgLGw6Wy01LjU3LDcuNDldLGc6W1tbWy04LjAzLDEwLjIxXSxbLTcuOSwxMC4zXSxbLTcuNjIsMTAuMTVdLFstNi44NSwxMC4xNF0sWy02LjY3LDEwLjQzXSxbLTYuNDksMTAuNDFdLFstNi4yMSwxMC41Ml0sWy02LjA1LDEwLjFdLFstNS44MiwxMC4yMl0sWy01LjQsMTAuMzddLFstNC45NSwxMC4xNV0sWy00Ljc4LDkuODJdLFstNC4zMyw5LjYxXSxbLTMuOTgsOS44Nl0sWy0zLjUxLDkuOV0sWy0yLjgzLDkuNjRdLFstMi41Niw4LjIyXSxbLTIuOTgsNy4zOF0sWy0zLjI0LDYuMjVdLFstMi44MSw1LjM5XSxbLTIuODYsNC45OV0sWy0zLjMxLDQuOThdLFstNC4wMSw1LjE4XSxbLTQuNjUsNS4xN10sWy01LjgzLDQuOTldLFstNi41Myw0LjcxXSxbLTcuNTIsNC4zNF0sWy03LjcxLDQuMzZdLFstNy42NCw1LjE5XSxbLTcuNTQsNS4zMV0sWy03LjU3LDUuNzFdLFstNy45OSw2LjEzXSxbLTguMzEsNi4xOV0sWy04LjYsNi40N10sWy04LjM5LDYuOTFdLFstOC40OSw3LjRdLFstOC40NCw3LjY5XSxbLTguMjgsNy42OV0sWy04LjIyLDguMTJdLFstOC4zLDguMzJdLFstOC4yLDguNDZdLFstNy44Myw4LjU4XSxbLTguMDgsOS4zOF0sWy04LjMxLDkuNzldLFstOC4yMywxMC4xM10sWy04LjAzLDEwLjIxXV1dXX0se246YEd1aW5lYWAsYTI6YEdOYCxhMzpgR0lOYCxwOmBHTmAsbDpbLTEwLjAyLDEwLjYyXSxnOltbW1stMTMuNywxMi41OV0sWy0xMy4yMiwxMi41OF0sWy0xMi41LDEyLjMzXSxbLTEyLjI4LDEyLjM1XSxbLTEyLjIsMTIuNDddLFstMTEuNjYsMTIuMzldLFstMTEuNTEsMTIuNDRdLFstMTEuNDYsMTIuMDhdLFstMTEuMywxMi4wOF0sWy0xMS4wNCwxMi4yMV0sWy0xMC44NywxMi4xOF0sWy0xMC41OSwxMS45Ml0sWy0xMC4xNywxMS44NF0sWy05Ljg5LDEyLjA2XSxbLTkuNTcsMTIuMTldLFstOS4zMywxMi4zM10sWy05LjEzLDEyLjMxXSxbLTguOTEsMTIuMDldLFstOC43OSwxMS44MV0sWy04LjM4LDExLjM5XSxbLTguNTgsMTEuMTRdLFstOC42MiwxMC44MV0sWy04LjQxLDEwLjkxXSxbLTguMjgsMTAuNzldLFstOC4zNCwxMC40OV0sWy04LjAzLDEwLjIxXSxbLTguMjMsMTAuMTNdLFstOC4zMSw5Ljc5XSxbLTguMDgsOS4zOF0sWy03LjgzLDguNThdLFstOC4yLDguNDZdLFstOC4zLDguMzJdLFstOC4yMiw4LjEyXSxbLTguMjgsNy42OV0sWy04LjQ0LDcuNjldLFstOC43Miw3LjcxXSxbLTguOTMsNy4zMV0sWy05LjIxLDcuMzFdLFstOS40LDcuNTNdLFstOS4zNCw3LjkzXSxbLTkuNzYsOC41NF0sWy0xMC4wMiw4LjQzXSxbLTEwLjIzLDguNDFdLFstMTAuNTEsOC4zNV0sWy0xMC40OSw4LjcyXSxbLTEwLjY1LDguOThdLFstMTAuNjIsOS4yN10sWy0xMC44NCw5LjY5XSxbLTExLjEyLDEwLjA1XSxbLTExLjkyLDEwLjA1XSxbLTEyLjE1LDkuODZdLFstMTIuNDMsOS44NF0sWy0xMi42LDkuNjJdLFstMTIuNzEsOS4zNF0sWy0xMy4yNSw4LjldLFstMTMuNjksOS40OV0sWy0xNC4wNyw5Ljg5XSxbLTE0LjMzLDEwLjAyXSxbLTE0LjU4LDEwLjIxXSxbLTE0LjY5LDEwLjY2XSxbLTE0Ljg0LDEwLjg4XSxbLTE1LjEzLDExLjA0XSxbLTE0LjY5LDExLjUzXSxbLTE0LjM4LDExLjUxXSxbLTE0LjEyLDExLjY4XSxbLTEzLjksMTEuNjhdLFstMTMuNzQsMTEuODFdLFstMTMuODMsMTIuMTRdLFstMTMuNzIsMTIuMjVdLFstMTMuNywxMi41OV1dXV19LHtuOmBHdWluZWEtQmlzc2F1YCxhMjpgR1dgLGEzOmBHTkJgLHA6YEdXYCxsOlstMTQuNTIsMTIuMTZdLGc6W1tbWy0xNi42OCwxMi4zOF0sWy0xNi4xNSwxMi41NV0sWy0xNS44MiwxMi41Ml0sWy0xNS41NSwxMi42M10sWy0xMy43LDEyLjU5XSxbLTEzLjcyLDEyLjI1XSxbLTEzLjgzLDEyLjE0XSxbLTEzLjc0LDExLjgxXSxbLTEzLjksMTEuNjhdLFstMTQuMTIsMTEuNjhdLFstMTQuMzgsMTEuNTFdLFstMTQuNjksMTEuNTNdLFstMTUuMTMsMTEuMDRdLFstMTUuNjYsMTEuNDZdLFstMTYuMDksMTEuNTJdLFstMTYuMzEsMTEuODFdLFstMTYuMzEsMTEuOTZdLFstMTYuNjEsMTIuMTddLFstMTYuNjgsMTIuMzhdXV1dfSx7bjpgTGliZXJpYWAsYTI6YExSYCxhMzpgTEJSYCxwOmBMUmAsbDpbLTkuNDYsNi40NV0sZzpbW1tbLTguNDQsNy42OV0sWy04LjQ5LDcuNF0sWy04LjM5LDYuOTFdLFstOC42LDYuNDddLFstOC4zMSw2LjE5XSxbLTcuOTksNi4xM10sWy03LjU3LDUuNzFdLFstNy41NCw1LjMxXSxbLTcuNjQsNS4xOV0sWy03LjcxLDQuMzZdLFstNy45Nyw0LjM2XSxbLTksNC44M10sWy05LjkxLDUuNTldLFstMTAuNzcsNi4xNF0sWy0xMS40NCw2Ljc5XSxbLTExLjIsNy4xMV0sWy0xMS4xNSw3LjRdLFstMTAuNyw3Ljk0XSxbLTEwLjIzLDguNDFdLFstMTAuMDIsOC40M10sWy05Ljc2LDguNTRdLFstOS4zNCw3LjkzXSxbLTkuNCw3LjUzXSxbLTkuMjEsNy4zMV0sWy04LjkzLDcuMzFdLFstOC43Miw3LjcxXSxbLTguNDQsNy42OV1dXV19LHtuOmBTaWVycmEgTGVvbmVgLGEyOmBTTGAsYTM6YFNMRWAscDpgU0xgLGw6Wy0xMS43Niw4LjYyXSxnOltbW1stMTMuMjUsOC45XSxbLTEyLjcxLDkuMzRdLFstMTIuNiw5LjYyXSxbLTEyLjQzLDkuODRdLFstMTIuMTUsOS44Nl0sWy0xMS45MiwxMC4wNV0sWy0xMS4xMiwxMC4wNV0sWy0xMC44NCw5LjY5XSxbLTEwLjYyLDkuMjddLFstMTAuNjUsOC45OF0sWy0xMC40OSw4LjcyXSxbLTEwLjUxLDguMzVdLFstMTAuMjMsOC40MV0sWy0xMC43LDcuOTRdLFstMTEuMTUsNy40XSxbLTExLjIsNy4xMV0sWy0xMS40NCw2Ljc5XSxbLTExLjcxLDYuODZdLFstMTIuNDMsNy4yNl0sWy0xMi45NSw3LjhdLFstMTMuMTIsOC4xNl0sWy0xMy4yNSw4LjldXV1dfSx7bjpgQnVya2luYSBGYXNvYCxhMjpgQkZgLGEzOmBCRkFgLHA6YEJGYCxsOlstMS4zNiwxMi42N10sZzpbW1tbLTUuNCwxMC4zN10sWy01LjQ3LDEwLjk1XSxbLTUuMiwxMS4zOF0sWy01LjIyLDExLjcxXSxbLTQuNDMsMTIuNTRdLFstNC4yOCwxMy4yM10sWy00LjAxLDEzLjQ3XSxbLTMuNTIsMTMuMzRdLFstMy4xLDEzLjU0XSxbLTIuOTcsMTMuOF0sWy0yLjE5LDE0LjI1XSxbLTIsMTQuNTZdLFstMS4wNywxNC45N10sWy0uNTIsMTUuMTJdLFstLjI3LDE0LjkyXSxbLjM3LDE0LjkzXSxbLjMsMTQuNDRdLFsuNDMsMTMuOTldLFsuOTksMTMuMzRdLFsxLjAyLDEyLjg1XSxbMi4xOCwxMi42M10sWzIuMTUsMTEuOTRdLFsxLjk0LDExLjY0XSxbMS40NSwxMS41NV0sWzEuMjQsMTEuMTFdLFsuOSwxMV0sWy4wMiwxMS4wMl0sWy0uNDQsMTEuMV0sWy0uNzYsMTAuOTRdLFstMS4yLDExLjAxXSxbLTIuOTQsMTAuOTZdLFstMi45NiwxMC40XSxbLTIuODMsOS42NF0sWy0zLjUxLDkuOV0sWy0zLjk4LDkuODZdLFstNC4zMyw5LjYxXSxbLTQuNzgsOS44Ml0sWy00Ljk1LDEwLjE1XSxbLTUuNCwxMC4zN11dXV19LHtuOmBDZW50cmFsIEFmcmljYW4gUmVwdWJsaWNgLGEyOmBDRmAsYTM6YENBRmAscDpgQ0ZgLGw6WzIwLjkxLDYuOTldLGc6W1tbWzI3LjM3LDUuMjNdLFsyNy4wNCw1LjEzXSxbMjYuNCw1LjE1XSxbMjUuNjUsNS4yNl0sWzI1LjI4LDUuMTddLFsyNS4xMyw0LjkzXSxbMjQuODEsNC45XSxbMjQuNDEsNS4xMV0sWzIzLjMsNC42MV0sWzIyLjg0LDQuNzFdLFsyMi43LDQuNjNdLFsyMi40MSw0LjAzXSxbMjEuNjYsNC4yMl0sWzIwLjkzLDQuMzJdLFsyMC4yOSw0LjY5XSxbMTkuNDcsNS4wM10sWzE4LjkzLDQuNzFdLFsxOC41NCw0LjJdLFsxOC40NSwzLjVdLFsxNy44MSwzLjU2XSxbMTcuMTMsMy43M10sWzE2LjU0LDMuMl0sWzE2LjAxLDIuMjddLFsxNS45MSwyLjU2XSxbMTUuODYsMy4wMV0sWzE1LjQxLDMuMzRdLFsxNS4wNCwzLjg1XSxbMTQuOTUsNC4yMV0sWzE0LjQ4LDQuNzNdLFsxNC41Niw1LjAzXSxbMTQuNDYsNS40NV0sWzE0LjU0LDYuMjNdLFsxNC43OCw2LjQxXSxbMTUuMjgsNy40Ml0sWzE2LjExLDcuNV0sWzE2LjI5LDcuNzVdLFsxNi40Niw3LjczXSxbMTYuNzEsNy41MV0sWzE3Ljk2LDcuODldLFsxOC4zOSw4LjI4XSxbMTguOTEsOC42M10sWzE4LjgxLDguOThdLFsxOS4wOSw5LjA3XSxbMjAuMDYsOS4wMV0sWzIxLDkuNDhdLFsyMS43MiwxMC41N10sWzIyLjIzLDEwLjk3XSxbMjIuODYsMTEuMTRdLFsyMi45OCwxMC43MV0sWzIzLjU1LDEwLjA5XSxbMjMuNTYsOS42OF0sWzIzLjM5LDkuMjddLFsyMy40Niw4Ljk1XSxbMjMuODEsOC42N10sWzI0LjU3LDguMjNdLFsyNS4xMSw3LjgzXSxbMjUuMTIsNy41XSxbMjUuOCw2Ljk4XSxbMjYuMjEsNi41NV0sWzI2LjQ3LDUuOTVdLFsyNy4yMSw1LjU1XSxbMjcuMzcsNS4yM11dXV19LHtuOmBSZXB1YmxpYyBvZiB0aGUgQ29uZ29gLGEyOmBDR2AsYTM6YENPR2AscDpgQ0dgLGw6WzE1LjksLjE0XSxnOltbW1sxOC40NSwzLjVdLFsxOC4zOSwyLjldLFsxOC4wOSwyLjM3XSxbMTcuOSwxLjc0XSxbMTcuNzcsLjg2XSxbMTcuODMsLjI5XSxbMTcuNjYsLS4wNl0sWzE3LjY0LC0uNDJdLFsxNy41MiwtLjc0XSxbMTYuODcsLTEuMjNdLFsxNi40MSwtMS43NF0sWzE1Ljk3LC0yLjcxXSxbMTYuMDEsLTMuNTRdLFsxNS43NSwtMy44Nl0sWzE1LjE3LC00LjM0XSxbMTQuNTgsLTQuOTddLFsxNC4yMSwtNC43OV0sWzE0LjE0LC00LjUxXSxbMTMuNiwtNC41XSxbMTMuMjYsLTQuODhdLFsxMywtNC43OF0sWzEyLjYyLC00LjQ0XSxbMTIuMzIsLTQuNjFdLFsxMS45MSwtNS4wNF0sWzExLjA5LC0zLjk4XSxbMTEuODYsLTMuNDNdLFsxMS40OCwtMi43N10sWzExLjgyLC0yLjUxXSxbMTIuNSwtMi4zOV0sWzEyLjU4LC0xLjk1XSxbMTMuMTEsLTIuNDNdLFsxMy45OSwtMi40N10sWzE0LjMsLTJdLFsxNC40MywtMS4zM10sWzE0LjMyLC0uNTVdLFsxMy44NCwuMDRdLFsxNC4yOCwxLjJdLFsxNC4wMywxLjRdLFsxMy4yOCwxLjMxXSxbMTMsMS44M10sWzEzLjA4LDIuMjddLFsxNC4zNCwyLjIzXSxbMTUuMTUsMS45Nl0sWzE1Ljk0LDEuNzNdLFsxNi4wMSwyLjI3XSxbMTYuNTQsMy4yXSxbMTcuMTMsMy43M10sWzE3LjgxLDMuNTZdLFsxOC40NSwzLjVdXV1dfSx7bjpgR2Fib25gLGEyOmBHQWAsYTM6YEdBQmAscDpgR0FgLGw6WzExLjg0LC0uNDRdLGc6W1tbWzExLjI4LDIuMjZdLFsxMS43NSwyLjMzXSxbMTIuMzYsMi4xOV0sWzEyLjk1LDIuMzJdLFsxMy4wOCwyLjI3XSxbMTMsMS44M10sWzEzLjI4LDEuMzFdLFsxNC4wMywxLjRdLFsxNC4yOCwxLjJdLFsxMy44NCwuMDRdLFsxNC4zMiwtLjU1XSxbMTQuNDMsLTEuMzNdLFsxNC4zLC0yXSxbMTMuOTksLTIuNDddLFsxMy4xMSwtMi40M10sWzEyLjU4LC0xLjk1XSxbMTIuNSwtMi4zOV0sWzExLjgyLC0yLjUxXSxbMTEuNDgsLTIuNzddLFsxMS44NiwtMy40M10sWzExLjA5LC0zLjk4XSxbMTAuMDcsLTIuOTddLFs5LjQxLC0yLjE0XSxbOC44LC0xLjExXSxbOC44MywtLjc4XSxbOS4wNSwtLjQ2XSxbOS4yOSwuMjddLFs5LjQ5LDEuMDFdLFs5LjgzLDEuMDddLFsxMS4yOSwxLjA2XSxbMTEuMjgsMi4yNl1dXV19LHtuOmBFcXVhdG9yaWFsIEd1aW5lYWAsYTI6YEdRYCxhMzpgR05RYCxwOmBHUWAsbDpbOC45OSwyLjMzXSxnOltbW1s5LjY1LDIuMjhdLFsxMS4yOCwyLjI2XSxbMTEuMjksMS4wNl0sWzkuODMsMS4wN10sWzkuNDksMS4wMV0sWzkuMzEsMS4xNl0sWzkuNjUsMi4yOF1dXV19LHtuOmBaYW1iaWFgLGEyOmBaTWAsYTM6YFpNQmAscDpgWk1gLGw6WzI2LjQsLTE0LjY2XSxnOltbW1szMC43NCwtOC4zNF0sWzMxLjE2LC04LjU5XSxbMzEuNTYsLTguNzZdLFszMi4xOSwtOC45M10sWzMyLjc2LC05LjIzXSxbMzMuMjMsLTkuNjhdLFszMy40OSwtMTAuNTNdLFszMy4zMiwtMTAuOF0sWzMzLjExLC0xMS42MV0sWzMzLjMxLC0xMi40NF0sWzMyLjk5LC0xMi43OF0sWzMyLjY5LC0xMy43MV0sWzMzLjIxLC0xMy45N10sWzMwLjE4LC0xNC44XSxbMzAuMjcsLTE1LjUxXSxbMjkuNTIsLTE1LjY0XSxbMjguOTUsLTE2LjA0XSxbMjguODMsLTE2LjM5XSxbMjguNDcsLTE2LjQ3XSxbMjcuNiwtMTcuMjldLFsyNy4wNCwtMTcuOTRdLFsyNi43MSwtMTcuOTZdLFsyNi4zOCwtMTcuODVdLFsyNS4yNiwtMTcuNzRdLFsyNS4wOCwtMTcuNjZdLFsyNS4wOCwtMTcuNThdLFsyNC42OCwtMTcuMzVdLFsyNC4wMywtMTcuM10sWzIzLjIyLC0xNy41Ml0sWzIyLjU2LC0xNi45XSxbMjEuODksLTE2LjA4XSxbMjEuOTMsLTEyLjldLFsyNC4wMiwtMTIuOTFdLFsyMy45MywtMTIuNTddLFsyNC4wOCwtMTIuMTldLFsyMy45LC0xMS43Ml0sWzI0LjAyLC0xMS4yNF0sWzIzLjkxLC0xMC45M10sWzI0LjI2LC0xMC45NV0sWzI0LjMxLC0xMS4yNl0sWzI0Ljc4LC0xMS4yNF0sWzI1LjQyLC0xMS4zM10sWzI1Ljc1LC0xMS43OF0sWzI2LjU1LC0xMS45Ml0sWzI3LjE2LC0xMS42MV0sWzI3LjM5LC0xMi4xM10sWzI4LjE2LC0xMi4yN10sWzI4LjUyLC0xMi43XSxbMjguOTMsLTEzLjI1XSxbMjkuNywtMTMuMjZdLFsyOS42MiwtMTIuMThdLFsyOS4zNCwtMTIuMzZdLFsyOC42NCwtMTEuOTddLFsyOC4zNywtMTEuNzldLFsyOC41LC0xMC43OV0sWzI4LjY3LC05LjYxXSxbMjguNDUsLTkuMTZdLFsyOC43MywtOC41M10sWzI5LC04LjQxXSxbMzAuMzUsLTguMjRdLFszMC43NCwtOC4zNF1dXV19LHtuOmBNYWxhd2lgLGEyOmBNV2AsYTM6YE1XSWAscDpgTVdgLGw6WzMzLjYxLC0xMy4zOV0sZzpbW1tbMzIuNzYsLTkuMjNdLFszMy43NCwtOS40Ml0sWzMzLjk0LC05LjY5XSxbMzQuMjgsLTEwLjE2XSxbMzQuNTYsLTExLjUyXSxbMzQuMjgsLTEyLjI4XSxbMzQuNTYsLTEzLjU4XSxbMzQuOTEsLTEzLjU3XSxbMzUuMjcsLTEzLjg5XSxbMzUuNjksLTE0LjYxXSxbMzUuNzcsLTE1LjldLFszNS4zNCwtMTYuMTFdLFszNS4wMywtMTYuOF0sWzM0LjM4LC0xNi4xOF0sWzM0LjMxLC0xNS40OF0sWzM0LjUyLC0xNS4wMV0sWzM0LjQ2LC0xNC42MV0sWzM0LjA2LC0xNC4zNl0sWzMzLjc5LC0xNC40NV0sWzMzLjIxLC0xMy45N10sWzMyLjY5LC0xMy43MV0sWzMyLjk5LC0xMi43OF0sWzMzLjMxLC0xMi40NF0sWzMzLjExLC0xMS42MV0sWzMzLjMyLC0xMC44XSxbMzMuNDksLTEwLjUzXSxbMzMuMjMsLTkuNjhdLFszMi43NiwtOS4yM11dXV19LHtuOmBNb3phbWJpcXVlYCxhMjpgTVpgLGEzOmBNT1pgLHA6YE1aYCxsOlszNy44NCwtMTMuOTRdLGc6W1tbWzM0LjU2LC0xMS41Ml0sWzM1LjMxLC0xMS40NF0sWzM2LjUxLC0xMS43Ml0sWzM2Ljc4LC0xMS41OV0sWzM3LjQ3LC0xMS41N10sWzM3LjgzLC0xMS4yN10sWzM4LjQzLC0xMS4yOV0sWzM5LjUyLC0xMC45XSxbNDAuMzIsLTEwLjMyXSxbNDAuNDgsLTEwLjc3XSxbNDAuNDQsLTExLjc2XSxbNDAuNTYsLTEyLjY0XSxbNDAuNiwtMTQuMl0sWzQwLjc4LC0xNC42OV0sWzQwLjQ4LC0xNS40MV0sWzQwLjA5LC0xNi4xXSxbMzkuNDUsLTE2LjcyXSxbMzguNTQsLTE3LjFdLFszNy40MSwtMTcuNTldLFszNi4yOCwtMTguNjZdLFszNS45LC0xOC44NF0sWzM1LjIsLTE5LjU1XSxbMzQuNzksLTE5Ljc4XSxbMzQuNywtMjAuNV0sWzM1LjE4LC0yMS4yNV0sWzM1LjM3LC0yMS44NF0sWzM1LjM5LC0yMi4xNF0sWzM1LjU2LC0yMi4wOV0sWzM1LjUzLC0yMy4wN10sWzM1LjM3LC0yMy41NF0sWzM1LjYxLC0yMy43MV0sWzM1LjQ2LC0yNC4xMl0sWzM1LjA0LC0yNC40OF0sWzM0LjIyLC0yNC44Ml0sWzMzLjAxLC0yNS4zNl0sWzMyLjU3LC0yNS43M10sWzMyLjY2LC0yNi4xNV0sWzMyLjkyLC0yNi4yMl0sWzMyLjgzLC0yNi43NF0sWzMyLjA3LC0yNi43M10sWzMxLjk5LC0yNi4yOV0sWzMxLjg0LC0yNS44NF0sWzMxLjc1LC0yNS40OF0sWzMxLjkzLC0yNC4zN10sWzMxLjY3LC0yMy42Nl0sWzMxLjE5LC0yMi4yNV0sWzMyLjI0LC0yMS4xMl0sWzMyLjUxLC0yMC40XSxbMzIuNjYsLTIwLjNdLFszMi43NywtMTkuNzJdLFszMi42MSwtMTkuNDJdLFszMi42NSwtMTguNjddLFszMi44NSwtMTcuOThdLFszMi44NSwtMTYuNzFdLFszMi4zMywtMTYuMzldLFszMS44NSwtMTYuMzJdLFszMS42NCwtMTYuMDddLFszMS4xNywtMTUuODZdLFszMC4zNCwtMTUuODhdLFszMC4yNywtMTUuNTFdLFszMC4xOCwtMTQuOF0sWzMzLjIxLC0xMy45N10sWzMzLjc5LC0xNC40NV0sWzM0LjA2LC0xNC4zNl0sWzM0LjQ2LC0xNC42MV0sWzM0LjUyLC0xNS4wMV0sWzM0LjMxLC0xNS40OF0sWzM0LjM4LC0xNi4xOF0sWzM1LjAzLC0xNi44XSxbMzUuMzQsLTE2LjExXSxbMzUuNzcsLTE1LjldLFszNS42OSwtMTQuNjFdLFszNS4yNywtMTMuODldLFszNC45MSwtMTMuNTddLFszNC41NiwtMTMuNThdLFszNC4yOCwtMTIuMjhdLFszNC41NiwtMTEuNTJdXV1dfSx7bjpgS2luZ2RvbSBvZiBlU3dhdGluaWAsYTI6YFNaYCxhMzpgU1daYCxwOmBFU2AsbDpbMzEuNDcsLTI2LjUzXSxnOltbW1szMi4wNywtMjYuNzNdLFszMS44NywtMjcuMThdLFszMS4yOCwtMjcuMjldLFszMC42OSwtMjYuNzRdLFszMC42OCwtMjYuNF0sWzMwLjk1LC0yNi4wMl0sWzMxLjA0LC0yNS43M10sWzMxLjMzLC0yNS42Nl0sWzMxLjg0LC0yNS44NF0sWzMxLjk5LC0yNi4yOV0sWzMyLjA3LC0yNi43M11dXV19LHtuOmBBbmdvbGFgLGEyOmBBT2AsYTM6YEFHT2AscDpgQU9gLGw6WzE3Ljk4LC0xMi4xOF0sZzpbW1tbMTMsLTQuNzhdLFsxMi42MywtNC45OV0sWzEyLjQ3LC01LjI1XSxbMTIuNDQsLTUuNjhdLFsxMi4xOCwtNS43OV0sWzExLjkxLC01LjA0XSxbMTIuMzIsLTQuNjFdLFsxMi42MiwtNC40NF0sWzEzLC00Ljc4XV1dLFtbWzEyLjMyLC02LjFdLFsxMi43NCwtNS45N10sWzEzLjAyLC01Ljk4XSxbMTMuMzgsLTUuODZdLFsxNi4zMywtNS44OF0sWzE2LjU3LC02LjYyXSxbMTYuODYsLTcuMjJdLFsxNy4wOSwtNy41NV0sWzE3LjQ3LC04LjA3XSxbMTguMTMsLTcuOTldLFsxOC40NiwtNy44NV0sWzE5LjAyLC03Ljk5XSxbMTkuMTcsLTcuNzRdLFsxOS40MiwtNy4xNl0sWzIwLjA0LC03LjEyXSxbMjAuMDksLTYuOTRdLFsyMC42LC02Ljk0XSxbMjAuNTEsLTcuM10sWzIxLjczLC03LjI5XSxbMjEuNzUsLTcuOTJdLFsyMS45NSwtOC4zMV0sWzIxLjgsLTguOTFdLFsyMS44OCwtOS41Ml0sWzIyLjIxLC05Ljg5XSxbMjIuMTYsLTExLjA4XSxbMjIuNCwtMTAuOTldLFsyMi44NCwtMTEuMDJdLFsyMy40NiwtMTAuODddLFsyMy45MSwtMTAuOTNdLFsyNC4wMiwtMTEuMjRdLFsyMy45LC0xMS43Ml0sWzI0LjA4LC0xMi4xOV0sWzIzLjkzLC0xMi41N10sWzI0LjAyLC0xMi45MV0sWzIxLjkzLC0xMi45XSxbMjEuODksLTE2LjA4XSxbMjIuNTYsLTE2LjldLFsyMy4yMiwtMTcuNTJdLFsyMS4zOCwtMTcuOTNdLFsxOC45NiwtMTcuNzldLFsxOC4yNiwtMTcuMzFdLFsxNC4yMSwtMTcuMzVdLFsxNC4wNiwtMTcuNDJdLFsxMy40NiwtMTYuOTddLFsxMi44MSwtMTYuOTRdLFsxMi4yMiwtMTcuMTFdLFsxMS43MywtMTcuM10sWzExLjY0LC0xNi42N10sWzExLjc4LC0xNS43OV0sWzEyLjEyLC0xNC44OF0sWzEyLjE4LC0xNC40NV0sWzEyLjUsLTEzLjU1XSxbMTIuNzQsLTEzLjE0XSxbMTMuMzEsLTEyLjQ4XSxbMTMuNjMsLTEyLjA0XSxbMTMuNzQsLTExLjNdLFsxMy42OSwtMTAuNzNdLFsxMy4zOSwtMTAuMzddLFsxMy4xMiwtOS43N10sWzEyLjg4LC05LjE3XSxbMTIuOTMsLTguOTZdLFsxMy4yNCwtOC41Nl0sWzEyLjkzLC03LjZdLFsxMi43MywtNi45M10sWzEyLjIzLC02LjI5XSxbMTIuMzIsLTYuMV1dXV19LHtuOmBCdXJ1bmRpYCxhMjpgQklgLGEzOmBCRElgLHA6YEJJYCxsOlsyOS45MiwtMy4zM10sZzpbW1tbMzAuNDcsLTIuNDFdLFszMC41MywtMi44MV0sWzMwLjc0LC0zLjAzXSxbMzAuNzUsLTMuMzZdLFszMC41MSwtMy41N10sWzMwLjEyLC00LjA5XSxbMjkuNzUsLTQuNDVdLFsyOS4zNCwtNC41XSxbMjkuMjgsLTMuMjldLFsyOS4wMiwtMi44NF0sWzI5LjYzLC0yLjkyXSxbMjkuOTQsLTIuMzVdLFszMC40NywtMi40MV1dXV19LHtuOmBJc3JhZWxgLGEyOmBJTGAsYTM6YElTUmAscDpgSVNgLGw6WzM0Ljg1LDMwLjkxXSxnOltbW1szNS43MiwzMi43MV0sWzM1LjU1LDMyLjM5XSxbMzUuMTgsMzIuNTNdLFszNC45NywzMS44N10sWzM1LjIzLDMxLjc1XSxbMzQuOTcsMzEuNjJdLFszNC45MywzMS4zNV0sWzM1LjQsMzEuNDldLFszNS40MiwzMS4xXSxbMzQuOTIsMjkuNV0sWzM0LjgyLDI5Ljc2XSxbMzQuMjcsMzEuMjJdLFszNC41NiwzMS41NV0sWzM0LjQ5LDMxLjYxXSxbMzQuNzUsMzIuMDddLFszNC45NiwzMi44M10sWzM1LjEsMzMuMDhdLFszNS4xMywzMy4wOV0sWzM1LjQ2LDMzLjA5XSxbMzUuNTUsMzMuMjZdLFszNS44MiwzMy4yOF0sWzM1Ljg0LDMyLjg3XSxbMzUuNywzMi43Ml0sWzM1LjcyLDMyLjcxXV1dXX0se246YExlYmFub25gLGEyOmBMQmAsYTM6YExCTmAscDpgTEJgLGw6WzM1Ljk5LDM0LjEzXSxnOltbW1szNS44MiwzMy4yOF0sWzM1LjU1LDMzLjI2XSxbMzUuNDYsMzMuMDldLFszNS4xMywzMy4wOV0sWzM1LjQ4LDMzLjkxXSxbMzUuOTgsMzQuNjFdLFszNiwzNC42NF0sWzM2LjQ1LDM0LjU5XSxbMzYuNjEsMzQuMl0sWzM2LjA3LDMzLjgyXSxbMzUuODIsMzMuMjhdXV1dfSx7bjpgTWFkYWdhc2NhcmAsYTI6YE1HYCxhMzpgTURHYCxwOmBNR2AsbDpbNDYuNywtMTguNjNdLGc6W1tbWzQ5LjU0LC0xMi40N10sWzQ5LjgxLC0xMi45XSxbNTAuMDYsLTEzLjU2XSxbNTAuMjIsLTE0Ljc2XSxbNTAuNDgsLTE1LjIzXSxbNTAuMzgsLTE1LjcxXSxbNTAuMiwtMTZdLFs0OS44NiwtMTUuNDFdLFs0OS42NywtMTUuNzFdLFs0OS44NiwtMTYuNDVdLFs0OS43NywtMTYuODhdLFs0OS41LC0xNy4xMV0sWzQ5LjQ0LC0xNy45NV0sWzQ5LjA0LC0xOS4xMl0sWzQ4LjU1LC0yMC41XSxbNDcuOTMsLTIyLjM5XSxbNDcuNTUsLTIzLjc4XSxbNDcuMSwtMjQuOTRdLFs0Ni4yOCwtMjUuMThdLFs0NS40MSwtMjUuNl0sWzQ0LjgzLC0yNS4zNV0sWzQ0LjA0LC0yNC45OV0sWzQzLjc2LC0yNC40Nl0sWzQzLjcsLTIzLjU3XSxbNDMuMzUsLTIyLjc4XSxbNDMuMjUsLTIyLjA2XSxbNDMuNDMsLTIxLjM0XSxbNDMuODksLTIxLjE2XSxbNDMuOSwtMjAuODNdLFs0NC4zNywtMjAuMDddLFs0NC40NiwtMTkuNDRdLFs0NC4yMywtMTguOTZdLFs0NC4wNCwtMTguMzNdLFs0My45NiwtMTcuNDFdLFs0NC4zMSwtMTYuODVdLFs0NC40NSwtMTYuMjJdLFs0NC45NCwtMTYuMThdLFs0NS41LC0xNS45N10sWzQ1Ljg3LC0xNS43OV0sWzQ2LjMxLC0xNS43OF0sWzQ2Ljg4LC0xNS4yMV0sWzQ3LjcxLC0xNC41OV0sWzQ4LjAxLC0xNC4wOV0sWzQ3Ljg3LC0xMy42Nl0sWzQ4LjI5LC0xMy43OF0sWzQ4Ljg1LC0xMy4wOV0sWzQ4Ljg2LC0xMi40OV0sWzQ5LjE5LC0xMi4wNF0sWzQ5LjU0LC0xMi40N11dXV19LHtuOmBQYWxlc3RpbmVgLGEyOmBQU2AsYTM6YFBTRWAscDpgUEFMYCxsOlszNS4yOSwzMi4wNV0sZzpbW1tbMzUuNCwzMS40OV0sWzM0LjkzLDMxLjM1XSxbMzQuOTcsMzEuNjJdLFszNS4yMywzMS43NV0sWzM0Ljk3LDMxLjg3XSxbMzUuMTgsMzIuNTNdLFszNS41NSwzMi4zOV0sWzM1LjU1LDMxLjc4XSxbMzUuNCwzMS40OV1dXV19LHtuOmBUaGUgR2FtYmlhYCxhMjpgR01gLGEzOmBHTUJgLHA6YEdNYCxsOlstMTUsMTMuNjRdLGc6W1tbWy0xNi43MSwxMy41OV0sWy0xNS42MiwxMy42Ml0sWy0xNS40LDEzLjg2XSxbLTE1LjA4LDEzLjg4XSxbLTE0LjY5LDEzLjYzXSxbLTE0LjM4LDEzLjYzXSxbLTE0LjA1LDEzLjc5XSxbLTEzLjg0LDEzLjUxXSxbLTE0LjI4LDEzLjI4XSxbLTE0LjcxLDEzLjNdLFstMTUuMTQsMTMuNTFdLFstMTUuNTEsMTMuMjhdLFstMTUuNjksMTMuMjddLFstMTUuOTMsMTMuMTNdLFstMTYuODQsMTMuMTVdLFstMTYuNzEsMTMuNTldXV1dfSx7bjpgVHVuaXNpYWAsYTI6YFROYCxhMzpgVFVOYCxwOmBUTmAsbDpbOS4wMSwzMy42OV0sZzpbW1tbOS40OCwzMC4zMV0sWzkuMDYsMzIuMV0sWzguNDQsMzIuNTFdLFs4LjQzLDMyLjc1XSxbNy42MSwzMy4zNF0sWzcuNTIsMzQuMV0sWzguMTQsMzQuNjZdLFs4LjM4LDM1LjQ4XSxbOC4yMiwzNi40M10sWzguNDIsMzYuOTVdLFs5LjUxLDM3LjM1XSxbMTAuMjEsMzcuMjNdLFsxMC4xOCwzNi43Ml0sWzExLjAzLDM3LjA5XSxbMTEuMSwzNi45XSxbMTAuNiwzNi40MV0sWzEwLjU5LDM1Ljk1XSxbMTAuOTQsMzUuN10sWzEwLjgxLDM0LjgzXSxbMTAuMTUsMzQuMzNdLFsxMC4zNCwzMy43OV0sWzEwLjg2LDMzLjc3XSxbMTEuMTEsMzMuMjldLFsxMS40OSwzMy4xNF0sWzExLjQzLDMyLjM3XSxbMTAuOTQsMzIuMDhdLFsxMC42NCwzMS43Nl0sWzkuOTUsMzEuMzhdLFsxMC4wNiwzMC45Nl0sWzkuOTcsMzAuNTRdLFs5LjQ4LDMwLjMxXV1dXX0se246YEFsZ2VyaWFgLGEyOmBEWmAsYTM6YERaQWAscDpgRFpgLGw6WzIuODEsMjcuNF0sZzpbW1tbLTguNjgsMjcuNF0sWy04LjY3LDI3LjU5XSxbLTguNjcsMjcuNjZdLFstOC42NywyOC44NF0sWy03LjA2LDI5LjU4XSxbLTYuMDYsMjkuNzNdLFstNS4yNCwzMF0sWy00Ljg2LDMwLjVdLFstMy42OSwzMC45XSxbLTMuNjUsMzEuNjRdLFstMy4wNywzMS43Ml0sWy0yLjYyLDMyLjA5XSxbLTEuMzEsMzIuMjZdLFstMS4xMiwzMi42NV0sWy0xLjM5LDMyLjg2XSxbLTEuNzMsMzMuOTJdLFstMS43OSwzNC41M10sWy0yLjE3LDM1LjE3XSxbLTEuMjEsMzUuNzFdLFstLjEzLDM1Ljg5XSxbLjUsMzYuM10sWzEuNDcsMzYuNjFdLFszLjE2LDM2Ljc4XSxbNC44MiwzNi44N10sWzUuMzIsMzYuNzJdLFs2LjI2LDM3LjExXSxbNy4zMywzNy4xMl0sWzcuNzQsMzYuODldLFs4LjQyLDM2Ljk1XSxbOC4yMiwzNi40M10sWzguMzgsMzUuNDhdLFs4LjE0LDM0LjY2XSxbNy41MiwzNC4xXSxbNy42MSwzMy4zNF0sWzguNDMsMzIuNzVdLFs4LjQ0LDMyLjUxXSxbOS4wNiwzMi4xXSxbOS40OCwzMC4zMV0sWzkuODEsMjkuNDJdLFs5Ljg2LDI4Ljk2XSxbOS42OCwyOC4xNF0sWzkuNzYsMjcuNjldLFs5LjYzLDI3LjE0XSxbOS43MiwyNi41MV0sWzkuMzIsMjYuMDldLFs5LjkxLDI1LjM3XSxbOS45NSwyNC45NF0sWzEwLjMsMjQuMzhdLFsxMC43NywyNC41Nl0sWzExLjU2LDI0LjFdLFsxMiwyMy40N10sWzguNTcsMjEuNTddLFs1LjY4LDE5LjZdLFs0LjI3LDE5LjE2XSxbMy4xNiwxOS4wNl0sWzMuMTUsMTkuNjldLFsyLjY4LDE5Ljg2XSxbMi4wNiwyMC4xNF0sWzEuODIsMjAuNjFdLFstMS41NSwyMi43OV0sWy00LjkyLDI0Ljk3XSxbLTguNjgsMjcuNF1dXV19LHtuOmBKb3JkYW5gLGEyOmBKT2AsYTM6YEpPUmAscDpgSmAsbDpbMzYuMzgsMzAuODFdLGc6W1tbWzM1LjU1LDMyLjM5XSxbMzUuNzIsMzIuNzFdLFszNi44MywzMi4zMV0sWzM4Ljc5LDMzLjM4XSxbMzkuMiwzMi4xNl0sWzM5LDMyLjAxXSxbMzcsMzEuNTFdLFszOCwzMC41MV0sWzM3LjY3LDMwLjM0XSxbMzcuNSwzMF0sWzM2Ljc0LDI5Ljg3XSxbMzYuNSwyOS41MV0sWzM2LjA3LDI5LjJdLFszNC45NiwyOS4zNl0sWzM0LjkyLDI5LjVdLFszNS40MiwzMS4xXSxbMzUuNCwzMS40OV0sWzM1LjU1LDMxLjc4XSxbMzUuNTUsMzIuMzldXV1dfSx7bjpgVW5pdGVkIEFyYWIgRW1pcmF0ZXNgLGEyOmBBRWAsYTM6YEFSRWAscDpgQUVgLGw6WzU0LjU1LDIzLjQ3XSxnOltbW1s1MS41OCwyNC4yNV0sWzUxLjc2LDI0LjI5XSxbNTEuNzksMjQuMDJdLFs1Mi41OCwyNC4xOF0sWzUzLjQsMjQuMTVdLFs1NC4wMSwyNC4xMl0sWzU0LjY5LDI0LjhdLFs1NS40NCwyNS40NF0sWzU2LjA3LDI2LjA2XSxbNTYuMjYsMjUuNzFdLFs1Ni40LDI0LjkyXSxbNTUuODksMjQuOTJdLFs1NS44LDI0LjI3XSxbNTUuOTgsMjQuMTNdLFs1NS41MywyMy45M10sWzU1LjUzLDIzLjUyXSxbNTUuMjMsMjMuMTFdLFs1NS4yMSwyMi43MV0sWzU1LjAxLDIyLjVdLFs1MiwyM10sWzUxLjYyLDI0LjAxXSxbNTEuNTgsMjQuMjVdXV1dfSx7bjpgUWF0YXJgLGEyOmBRQWAsYTM6YFFBVGAscDpgUUFgLGw6WzUxLjE0LDI1LjI0XSxnOltbW1s1MC44MSwyNC43NV0sWzUwLjc0LDI1LjQ4XSxbNTEuMDEsMjYuMDFdLFs1MS4yOSwyNi4xMV0sWzUxLjU5LDI1LjhdLFs1MS42MSwyNS4yMl0sWzUxLjM5LDI0LjYzXSxbNTEuMTEsMjQuNTZdLFs1MC44MSwyNC43NV1dXV19LHtuOmBLdXdhaXRgLGEyOmBLV2AsYTM6YEtXVGAscDpgS1dgLGw6WzQ3LjMxLDI5LjQxXSxnOltbW1s0Ny45NywyOS45OF0sWzQ4LjE4LDI5LjUzXSxbNDguMDksMjkuMzFdLFs0OC40MiwyOC41NV0sWzQ3LjcxLDI4LjUzXSxbNDcuNDYsMjldLFs0Ni41NywyOS4xXSxbNDcuMywzMC4wNl0sWzQ3Ljk3LDI5Ljk4XV1dXX0se246YElyYXFgLGEyOmBJUWAsYTM6YElSUWAscDpgSVJRYCxsOls0My4yNiwzMy4wOV0sZzpbW1tbMzkuMiwzMi4xNl0sWzM4Ljc5LDMzLjM4XSxbNDEuMDEsMzQuNDJdLFs0MS4zOCwzNS42M10sWzQxLjI5LDM2LjM2XSxbNDEuODQsMzYuNjFdLFs0Mi4zNSwzNy4yM10sWzQyLjc4LDM3LjM5XSxbNDMuOTQsMzcuMjZdLFs0NC4yOSwzN10sWzQ0Ljc3LDM3LjE3XSxbNDUuNDIsMzUuOThdLFs0Ni4wOCwzNS42OF0sWzQ2LjE1LDM1LjA5XSxbNDUuNjUsMzQuNzVdLFs0NS40MiwzMy45N10sWzQ2LjExLDMzLjAyXSxbNDcuMzMsMzIuNDddLFs0Ny44NSwzMS43MV0sWzQ3LjY5LDMwLjk4XSxbNDgsMzAuOTldLFs0OC4wMSwzMC40NV0sWzQ4LjU3LDI5LjkzXSxbNDcuOTcsMjkuOThdLFs0Ny4zLDMwLjA2XSxbNDYuNTcsMjkuMV0sWzQ0LjcxLDI5LjE4XSxbNDEuODksMzEuMTldLFs0MC40LDMxLjg5XSxbMzkuMiwzMi4xNl1dXV19LHtuOmBPbWFuYCxhMjpgT01gLGEzOmBPTU5gLHA6YE9NYCxsOls1Ny4zNCwyMi4xMl0sZzpbW1tbNTUuMjEsMjIuNzFdLFs1NS4yMywyMy4xMV0sWzU1LjUzLDIzLjUyXSxbNTUuNTMsMjMuOTNdLFs1NS45OCwyNC4xM10sWzU1LjgsMjQuMjddLFs1NS44OSwyNC45Ml0sWzU2LjQsMjQuOTJdLFs1Ni44NSwyNC4yNF0sWzU3LjQsMjMuODhdLFs1OC4xNCwyMy43NV0sWzU4LjczLDIzLjU3XSxbNTkuMTgsMjIuOTldLFs1OS40NSwyMi42Nl0sWzU5LjgxLDIyLjUzXSxbNTkuODEsMjIuMzFdLFs1OS40NCwyMS43MV0sWzU5LjI4LDIxLjQzXSxbNTguODYsMjEuMTFdLFs1OC40OSwyMC40M10sWzU4LjAzLDIwLjQ4XSxbNTcuODMsMjAuMjRdLFs1Ny42NywxOS43NF0sWzU3Ljc5LDE5LjA3XSxbNTcuNjksMTguOTRdLFs1Ny4yMywxOC45NV0sWzU2LjYxLDE4LjU3XSxbNTYuNTEsMTguMDldLFs1Ni4yOCwxNy44OF0sWzU1LjY2LDE3Ljg4XSxbNTUuMjcsMTcuNjNdLFs1NS4yNywxNy4yM10sWzU0Ljc5LDE2Ljk1XSxbNTQuMjQsMTcuMDRdLFs1My41NywxNi43MV0sWzUzLjExLDE2LjY1XSxbNTIuNzgsMTcuMzVdLFs1MiwxOV0sWzU1LDIwXSxbNTUuNjcsMjJdLFs1NS4yMSwyMi43MV1dXSxbW1s1Ni4yNiwyNS43MV0sWzU2LjA3LDI2LjA2XSxbNTYuMzYsMjYuNF0sWzU2LjQ5LDI2LjMxXSxbNTYuMzksMjUuOV0sWzU2LjI2LDI1LjcxXV1dXX0se246YFZhbnVhdHVgLGEyOmBWVWAsYTM6YFZVVGAscDpgVlVgLGw6WzE2Ni45MSwtMTUuMzddLGc6W1tbWzE2Ny4yMiwtMTUuODldLFsxNjcuODQsLTE2LjQ3XSxbMTY3LjUyLC0xNi42XSxbMTY3LjE4LC0xNi4xNl0sWzE2Ny4yMiwtMTUuODldXV0sW1tbMTY2Ljc5LC0xNS42N10sWzE2Ni42NSwtMTUuMzldLFsxNjYuNjMsLTE0LjYzXSxbMTY3LjExLC0xNC45M10sWzE2Ny4yNywtMTUuNzRdLFsxNjcsLTE1LjYxXSxbMTY2Ljc5LC0xNS42N11dXV19LHtuOmBDYW1ib2RpYWAsYTI6YEtIYCxhMzpgS0hNYCxwOmBLSGAsbDpbMTA0LjUsMTIuNjVdLGc6W1tbWzEwMi41OCwxMi4xOV0sWzEwMi4zNSwxMy4zOV0sWzEwMi45OSwxNC4yM10sWzEwNC4yOCwxNC40Ml0sWzEwNS4yMiwxNC4yN10sWzEwNi4wNCwxMy44OF0sWzEwNi41LDE0LjU3XSxbMTA3LjM4LDE0LjJdLFsxMDcuNjEsMTMuNTRdLFsxMDcuNDksMTIuMzRdLFsxMDUuODEsMTEuNTddLFsxMDYuMjUsMTAuOTZdLFsxMDUuMiwxMC44OV0sWzEwNC4zMywxMC40OV0sWzEwMy41LDEwLjYzXSxbMTAzLjA5LDExLjE1XSxbMTAyLjU4LDEyLjE5XV1dXX0se246YFRoYWlsYW5kYCxhMjpgVEhgLGEzOmBUSEFgLHA6YFRIYCxsOlsxMDEuMDcsMTUuNDZdLGc6W1tbWzEwNS4yMiwxNC4yN10sWzEwNC4yOCwxNC40Ml0sWzEwMi45OSwxNC4yM10sWzEwMi4zNSwxMy4zOV0sWzEwMi41OCwxMi4xOV0sWzEwMS42OSwxMi42NV0sWzEwMC44MywxMi42M10sWzEwMC45OCwxMy40MV0sWzEwMC4xLDEzLjQxXSxbMTAwLjAyLDEyLjMxXSxbOTkuNDgsMTAuODVdLFs5OS4xNSw5Ljk2XSxbOTkuMjIsOS4yNF0sWzk5Ljg3LDkuMjFdLFsxMDAuMjgsOC4zXSxbMTAwLjQ2LDcuNDNdLFsxMDEuMDIsNi44Nl0sWzEwMS42Miw2Ljc0XSxbMTAyLjE0LDYuMjJdLFsxMDEuODEsNS44MV0sWzEwMS4xNSw1LjY5XSxbMTAxLjA4LDYuMl0sWzEwMC4yNiw2LjY0XSxbMTAwLjA5LDYuNDZdLFs5OS42OSw2Ljg1XSxbOTkuNTIsNy4zNF0sWzk4Ljk5LDcuOTFdLFs5OC41LDguMzhdLFs5OC4zNCw3Ljc5XSxbOTguMTUsOC4zNV0sWzk4LjI2LDguOTddLFs5OC41NSw5LjkzXSxbOTkuMDQsMTAuOTZdLFs5OS41OSwxMS44OV0sWzk5LjIsMTIuOF0sWzk5LjIxLDEzLjI3XSxbOTkuMSwxMy44M10sWzk4LjQzLDE0LjYyXSxbOTguMTksMTUuMTJdLFs5OC41NCwxNS4zMV0sWzk4LjksMTYuMThdLFs5OC40OSwxNi44NF0sWzk3Ljg2LDE3LjU3XSxbOTcuMzgsMTguNDVdLFs5Ny44LDE4LjYzXSxbOTguMjUsMTkuNzFdLFs5OC45NiwxOS43NV0sWzk5LjU0LDIwLjE5XSxbMTAwLjEyLDIwLjQyXSxbMTAwLjU1LDIwLjExXSxbMTAwLjYxLDE5LjUxXSxbMTAxLjI4LDE5LjQ2XSxbMTAxLjA0LDE4LjQxXSxbMTAxLjA2LDE3LjUxXSxbMTAyLjExLDE4LjExXSxbMTAyLjQxLDE3LjkzXSxbMTAzLDE3Ljk2XSxbMTAzLjIsMTguMzFdLFsxMDMuOTYsMTguMjRdLFsxMDQuNzIsMTcuNDNdLFsxMDQuNzgsMTYuNDRdLFsxMDUuNTksMTUuNTddLFsxMDUuNTQsMTQuNzJdLFsxMDUuMjIsMTQuMjddXV1dfSx7bjpgTGFvIFBEUmAsYTI6YExBYCxhMzpgTEFPYCxwOmBMQWAsbDpbMTAyLjUzLDE5LjQzXSxnOltbW1sxMDcuMzgsMTQuMl0sWzEwNi41LDE0LjU3XSxbMTA2LjA0LDEzLjg4XSxbMTA1LjIyLDE0LjI3XSxbMTA1LjU0LDE0LjcyXSxbMTA1LjU5LDE1LjU3XSxbMTA0Ljc4LDE2LjQ0XSxbMTA0LjcyLDE3LjQzXSxbMTAzLjk2LDE4LjI0XSxbMTAzLjIsMTguMzFdLFsxMDMsMTcuOTZdLFsxMDIuNDEsMTcuOTNdLFsxMDIuMTEsMTguMTFdLFsxMDEuMDYsMTcuNTFdLFsxMDEuMDQsMTguNDFdLFsxMDEuMjgsMTkuNDZdLFsxMDAuNjEsMTkuNTFdLFsxMDAuNTUsMjAuMTFdLFsxMDAuMTIsMjAuNDJdLFsxMDAuMzMsMjAuNzldLFsxMDEuMTgsMjEuNDRdLFsxMDEuMjcsMjEuMl0sWzEwMS44LDIxLjE3XSxbMTAxLjY1LDIyLjMyXSxbMTAyLjE3LDIyLjQ2XSxbMTAyLjc1LDIxLjY4XSxbMTAzLjIsMjAuNzddLFsxMDQuNDQsMjAuNzZdLFsxMDQuODIsMTkuODldLFsxMDQuMTgsMTkuNjJdLFsxMDMuOSwxOS4yN10sWzEwNS4wOSwxOC42N10sWzEwNS45MywxNy40OV0sWzEwNi41NiwxNi42XSxbMTA3LjMxLDE1LjkxXSxbMTA3LjU2LDE1LjJdLFsxMDcuMzgsMTQuMl1dXV19LHtuOmBNeWFubWFyYCxhMjpgTU1gLGEzOmBNTVJgLHA6YE1NYCxsOls5NS44LDIxLjU3XSxnOltbW1sxMDAuMTIsMjAuNDJdLFs5OS41NCwyMC4xOV0sWzk4Ljk2LDE5Ljc1XSxbOTguMjUsMTkuNzFdLFs5Ny44LDE4LjYzXSxbOTcuMzgsMTguNDVdLFs5Ny44NiwxNy41N10sWzk4LjQ5LDE2Ljg0XSxbOTguOSwxNi4xOF0sWzk4LjU0LDE1LjMxXSxbOTguMTksMTUuMTJdLFs5OC40MywxNC42Ml0sWzk5LjEsMTMuODNdLFs5OS4yMSwxMy4yN10sWzk5LjIsMTIuOF0sWzk5LjU5LDExLjg5XSxbOTkuMDQsMTAuOTZdLFs5OC41NSw5LjkzXSxbOTguNDYsMTAuNjhdLFs5OC43NiwxMS40NF0sWzk4LjQzLDEyLjAzXSxbOTguNTEsMTMuMTJdLFs5OC4xLDEzLjY0XSxbOTcuNzgsMTQuODRdLFs5Ny42LDE2LjFdLFs5Ny4xNiwxNi45M10sWzk2LjUxLDE2LjQzXSxbOTUuMzcsMTUuNzFdLFs5NC44MSwxNS44XSxbOTQuMTksMTYuMDRdLFs5NC41MywxNy4yOF0sWzk0LjMyLDE4LjIxXSxbOTMuNTQsMTkuMzddLFs5My42NiwxOS43M10sWzkzLjA4LDE5Ljg2XSxbOTIuMzcsMjAuNjddLFs5Mi4zLDIxLjQ4XSxbOTIuNjUsMjEuMzJdLFs5Mi42NywyMi4wNF0sWzkzLjE3LDIyLjI4XSxbOTMuMDYsMjIuN10sWzkzLjI5LDIzLjA0XSxbOTMuMzMsMjQuMDhdLFs5NC4xMSwyMy44NV0sWzk0LjU1LDI0LjY4XSxbOTQuNiwyNS4xNl0sWzk1LjE2LDI2XSxbOTUuMTIsMjYuNTddLFs5Ni40MiwyNy4yNl0sWzk3LjEzLDI3LjA4XSxbOTcuMDUsMjcuN10sWzk3LjQsMjcuODhdLFs5Ny4zMywyOC4yNl0sWzk3LjkxLDI4LjM0XSxbOTguMjUsMjcuNzVdLFs5OC42OCwyNy41MV0sWzk4LjcxLDI2Ljc0XSxbOTguNjcsMjUuOTJdLFs5Ny43MiwyNS4wOF0sWzk3LjYsMjMuOV0sWzk4LjY2LDI0LjA2XSxbOTguOSwyMy4xNF0sWzk5LjUzLDIyLjk1XSxbOTkuMjQsMjIuMTJdLFs5OS45OCwyMS43NF0sWzEwMC40MiwyMS41Nl0sWzEwMS4xNSwyMS44NV0sWzEwMS4xOCwyMS40NF0sWzEwMC4zMywyMC43OV0sWzEwMC4xMiwyMC40Ml1dXV19LHtuOmBWaWV0bmFtYCxhMjpgVk5gLGEzOmBWTk1gLHA6YFZOYCxsOlsxMDUuMzksMjEuNzJdLGc6W1tbWzEwNC4zMywxMC40OV0sWzEwNS4yLDEwLjg5XSxbMTA2LjI1LDEwLjk2XSxbMTA1LjgxLDExLjU3XSxbMTA3LjQ5LDEyLjM0XSxbMTA3LjYxLDEzLjU0XSxbMTA3LjM4LDE0LjJdLFsxMDcuNTYsMTUuMl0sWzEwNy4zMSwxNS45MV0sWzEwNi41NiwxNi42XSxbMTA1LjkzLDE3LjQ5XSxbMTA1LjA5LDE4LjY3XSxbMTAzLjksMTkuMjddLFsxMDQuMTgsMTkuNjJdLFsxMDQuODIsMTkuODldLFsxMDQuNDQsMjAuNzZdLFsxMDMuMiwyMC43N10sWzEwMi43NSwyMS42OF0sWzEwMi4xNywyMi40Nl0sWzEwMi43MSwyMi43MV0sWzEwMy41LDIyLjddLFsxMDQuNDgsMjIuODJdLFsxMDUuMzMsMjMuMzVdLFsxMDUuODEsMjIuOThdLFsxMDYuNzMsMjIuNzldLFsxMDYuNTcsMjIuMjJdLFsxMDcuMDQsMjEuODFdLFsxMDguMDUsMjEuNTVdLFsxMDYuNzIsMjAuN10sWzEwNS44OCwxOS43NV0sWzEwNS42NiwxOS4wNl0sWzEwNi40MywxOF0sWzEwNy4zNiwxNi43XSxbMTA4LjI3LDE2LjA4XSxbMTA4Ljg4LDE1LjI4XSxbMTA5LjM0LDEzLjQzXSxbMTA5LjIsMTEuNjddLFsxMDguMzcsMTEuMDFdLFsxMDcuMjIsMTAuMzZdLFsxMDYuNDEsOS41M10sWzEwNS4xNiw4LjZdLFsxMDQuOCw5LjI0XSxbMTA1LjA4LDkuOTJdLFsxMDQuMzMsMTAuNDldXV1dfSx7bjpgRGVtLiBSZXAuIEtvcmVhYCxhMjpgS1BgLGEzOmBQUktgLHA6YEtQYCxsOlsxMjYuNDQsMzkuODldLGc6W1tbWzEzMC42NCw0Mi40XSxbMTMwLjc4LDQyLjIyXSxbMTMwLjQsNDIuMjhdLFsxMjkuOTcsNDEuOTRdLFsxMjkuNjcsNDEuNl0sWzEyOS43MSw0MC44OF0sWzEyOS4xOSw0MC42Nl0sWzEyOS4wMSw0MC40OV0sWzEyOC42Myw0MC4xOV0sWzEyNy45Nyw0MC4wM10sWzEyNy41MywzOS43Nl0sWzEyNy41LDM5LjMyXSxbMTI3LjM5LDM5LjIxXSxbMTI3Ljc4LDM5LjA1XSxbMTI4LjM1LDM4LjYxXSxbMTI4LjIxLDM4LjM3XSxbMTI3Ljc4LDM4LjNdLFsxMjcuMDcsMzguMjZdLFsxMjYuNjgsMzcuOF0sWzEyNi4yNCwzNy44NF0sWzEyNi4xNywzNy43NV0sWzEyNS42OSwzNy45NF0sWzEyNS41NywzNy43NV0sWzEyNS4yOCwzNy42N10sWzEyNS4yNCwzNy44Nl0sWzEyNC45OCwzNy45NV0sWzEyNC43MSwzOC4xMV0sWzEyNC45OSwzOC41NV0sWzEyNS4yMiwzOC42N10sWzEyNS4xMywzOC44NV0sWzEyNS4zOSwzOS4zOV0sWzEyNS4zMiwzOS41NV0sWzEyNC43NCwzOS42Nl0sWzEyNC4yNywzOS45M10sWzEyNS4wOCw0MC41N10sWzEyNi4xOCw0MS4xMV0sWzEyNi44Nyw0MS44Ml0sWzEyNy4zNCw0MS41XSxbMTI4LjIxLDQxLjQ3XSxbMTI4LjA1LDQxLjk5XSxbMTI5LjYsNDIuNDJdLFsxMjkuOTksNDIuOTldLFsxMzAuNjQsNDIuNF1dXV19LHtuOmBSZXB1YmxpYyBvZiBLb3JlYWAsYTI6YEtSYCxhMzpgS09SYCxwOmBLUmAsbDpbMTI4LjEzLDM2LjM4XSxnOltbW1sxMjYuMTcsMzcuNzVdLFsxMjYuMjQsMzcuODRdLFsxMjYuNjgsMzcuOF0sWzEyNy4wNywzOC4yNl0sWzEyNy43OCwzOC4zXSxbMTI4LjIxLDM4LjM3XSxbMTI4LjM1LDM4LjYxXSxbMTI5LjIxLDM3LjQzXSxbMTI5LjQ2LDM2Ljc4XSxbMTI5LjQ3LDM1LjYzXSxbMTI5LjA5LDM1LjA4XSxbMTI4LjE5LDM0Ljg5XSxbMTI3LjM5LDM0LjQ4XSxbMTI2LjQ5LDM0LjM5XSxbMTI2LjM3LDM0LjkzXSxbMTI2LjU2LDM1LjY4XSxbMTI2LjEyLDM2LjczXSxbMTI2Ljg2LDM2Ljg5XSxbMTI2LjE3LDM3Ljc1XV1dXX0se246YE1vbmdvbGlhYCxhMjpgTU5gLGEzOmBNTkdgLHA6YE1OYCxsOlsxMDQuMTUsNDZdLGc6W1tbWzg3Ljc1LDQ5LjNdLFs4OC44MSw0OS40N10sWzkwLjcxLDUwLjMzXSxbOTIuMjMsNTAuOF0sWzkzLjEsNTAuNV0sWzk0LjE1LDUwLjQ4XSxbOTQuODIsNTAuMDFdLFs5NS44MSw0OS45OF0sWzk3LjI2LDQ5LjczXSxbOTguMjMsNTAuNDJdLFs5Ny44Myw1MS4wMV0sWzk4Ljg2LDUyLjA1XSxbOTkuOTgsNTEuNjNdLFsxMDAuODksNTEuNTJdLFsxMDIuMDcsNTEuMjZdLFsxMDIuMjYsNTAuNTFdLFsxMDMuNjgsNTAuMDldLFsxMDQuNjIsNTAuMjhdLFsxMDUuODksNTAuNDFdLFsxMDYuODksNTAuMjddLFsxMDcuODcsNDkuNzldLFsxMDguNDgsNDkuMjhdLFsxMDkuNCw0OS4yOV0sWzExMC42Niw0OS4xM10sWzExMS41OCw0OS4zOF0sWzExMi45LDQ5LjU0XSxbMTE0LjM2LDUwLjI1XSxbMTE0Ljk2LDUwLjE0XSxbMTE1LjQ5LDQ5LjgxXSxbMTE2LjY4LDQ5Ljg5XSxbMTE2LjE5LDQ5LjEzXSxbMTE1LjQ5LDQ4LjE0XSxbMTE1Ljc0LDQ3LjczXSxbMTE2LjMxLDQ3Ljg1XSxbMTE3LjMsNDcuN10sWzExOC4wNiw0OC4wN10sWzExOC44Nyw0Ny43NV0sWzExOS43Nyw0Ny4wNV0sWzExOS42Niw0Ni42OV0sWzExOC44Nyw0Ni44MV0sWzExNy40Miw0Ni42N10sWzExNi43Miw0Ni4zOV0sWzExNS45OSw0NS43M10sWzExNC40Niw0NS4zNF0sWzExMy40Niw0NC44MV0sWzExMi40NCw0NS4wMV0sWzExMS44Nyw0NS4xXSxbMTExLjM1LDQ0LjQ2XSxbMTExLjY3LDQ0LjA3XSxbMTExLjgzLDQzLjc0XSxbMTExLjEzLDQzLjQxXSxbMTEwLjQxLDQyLjg3XSxbMTA5LjI0LDQyLjUyXSxbMTA3Ljc0LDQyLjQ4XSxbMTA2LjEzLDQyLjEzXSxbMTA0Ljk2LDQxLjZdLFsxMDQuNTIsNDEuOTFdLFsxMDMuMzEsNDEuOTFdLFsxMDEuODMsNDIuNTFdLFsxMDAuODUsNDIuNjZdLFs5OS41Miw0Mi41Ml0sWzk3LjQ1LDQyLjc1XSxbOTYuMzUsNDIuNzNdLFs5NS43Niw0My4zMl0sWzk1LjMxLDQ0LjI0XSxbOTQuNjksNDQuMzVdLFs5My40OCw0NC45OF0sWzkyLjEzLDQ1LjEyXSxbOTAuOTUsNDUuMjldLFs5MC41OSw0NS43Ml0sWzkwLjk3LDQ2Ljg5XSxbOTAuMjgsNDcuNjldLFs4OC44NSw0OC4wN10sWzg4LjAxLDQ4LjZdLFs4Ny43NSw0OS4zXV1dXX0se246YEluZGlhYCxhMjpgSU5gLGEzOmBJTkRgLHA6YElORGAsbDpbNzkuMzYsMjIuNjldLGc6W1tbWzk3LjMzLDI4LjI2XSxbOTcuNCwyNy44OF0sWzk3LjA1LDI3LjddLFs5Ny4xMywyNy4wOF0sWzk2LjQyLDI3LjI2XSxbOTUuMTIsMjYuNTddLFs5NS4xNiwyNl0sWzk0LjYsMjUuMTZdLFs5NC41NSwyNC42OF0sWzk0LjExLDIzLjg1XSxbOTMuMzMsMjQuMDhdLFs5My4yOSwyMy4wNF0sWzkzLjA2LDIyLjddLFs5My4xNywyMi4yOF0sWzkyLjY3LDIyLjA0XSxbOTIuMTUsMjMuNjNdLFs5MS44NywyMy42Ml0sWzkxLjcxLDIyLjk5XSxbOTEuMTYsMjMuNV0sWzkxLjQ3LDI0LjA3XSxbOTEuOTIsMjQuMTNdLFs5Mi4zOCwyNC45OF0sWzkxLjgsMjUuMTVdLFs5MC44NywyNS4xM10sWzg5LjkyLDI1LjI3XSxbODkuODMsMjUuOTddLFs4OS4zNiwyNi4wMV0sWzg4LjU2LDI2LjQ1XSxbODguMjEsMjUuNzddLFs4OC45MywyNS4yNF0sWzg4LjMxLDI0Ljg3XSxbODguMDgsMjQuNV0sWzg4LjcsMjQuMjNdLFs4OC41MywyMy42M10sWzg4Ljg4LDIyLjg4XSxbODkuMDMsMjIuMDZdLFs4OC44OSwyMS42OV0sWzg4LjIxLDIxLjddLFs4Ni45OCwyMS41XSxbODcuMDMsMjAuNzRdLFs4Ni41LDIwLjE1XSxbODUuMDYsMTkuNDhdLFs4My45NCwxOC4zXSxbODMuMTksMTcuNjddLFs4Mi4xOSwxNy4wMl0sWzgyLjE5LDE2LjU2XSxbODEuNjksMTYuMzFdLFs4MC43OSwxNS45NV0sWzgwLjMyLDE1LjldLFs4MC4wMywxNS4xNF0sWzgwLjIzLDEzLjg0XSxbODAuMjksMTMuMDFdLFs3OS44NiwxMi4wNl0sWzc5Ljg2LDEwLjM2XSxbNzkuMzQsMTAuMzFdLFs3OC44OSw5LjU1XSxbNzkuMTksOS4yMl0sWzc4LjI4LDguOTNdLFs3Ny45NCw4LjI1XSxbNzcuNTQsNy45N10sWzc2LjU5LDguOV0sWzc2LjEzLDEwLjNdLFs3NS43NSwxMS4zMV0sWzc1LjQsMTEuNzhdLFs3NC44NiwxMi43NF0sWzc0LjYyLDEzLjk5XSxbNzQuNDQsMTQuNjJdLFs3My41MywxNS45OV0sWzczLjEyLDE3LjkzXSxbNzIuODIsMTkuMjFdLFs3Mi44MiwyMC40Ml0sWzcyLjYzLDIxLjM2XSxbNzEuMTgsMjAuNzZdLFs3MC40NywyMC44OF0sWzY5LjE2LDIyLjA5XSxbNjkuNjQsMjIuNDVdLFs2OS4zNSwyMi44NF0sWzY4LjE4LDIzLjY5XSxbNjguODQsMjQuMzZdLFs3MS4wNCwyNC4zNl0sWzcwLjg0LDI1LjIyXSxbNzAuMjgsMjUuNzJdLFs3MC4xNywyNi40OV0sWzY5LjUxLDI2Ljk0XSxbNzAuNjIsMjcuOTldLFs3MS43OCwyNy45MV0sWzcyLjgyLDI4Ljk2XSxbNzMuNDUsMjkuOThdLFs3NC40MiwzMC45OF0sWzc0LjQxLDMxLjY5XSxbNzUuMjYsMzIuMjddLFs3NC40NSwzMi43Nl0sWzc0LjEsMzMuNDRdLFs3My43NSwzNC4zMl0sWzc0LjI0LDM0Ljc1XSxbNzUuNzYsMzQuNV0sWzc2Ljg3LDM0LjY1XSxbNzcuODQsMzUuNDldLFs3OC45MSwzNC4zMl0sWzc4LjgxLDMzLjUxXSxbNzkuMjEsMzIuOTldLFs3OS4xOCwzMi40OF0sWzc4LjQ2LDMyLjYyXSxbNzguNzQsMzEuNTJdLFs3OS43MiwzMC44OF0sWzgxLjExLDMwLjE4XSxbODAuNDgsMjkuNzNdLFs4MC4wOSwyOC43OV0sWzgxLjA2LDI4LjQyXSxbODIsMjcuOTNdLFs4My4zLDI3LjM2XSxbODQuNjgsMjcuMjNdLFs4NS4yNSwyNi43M10sWzg2LjAyLDI2LjYzXSxbODcuMjMsMjYuNF0sWzg4LjA2LDI2LjQxXSxbODguMTcsMjYuODFdLFs4OC4wNCwyNy40NV0sWzg4LjEyLDI3Ljg4XSxbODguNzMsMjguMDldLFs4OC44MSwyNy4zXSxbODguODQsMjcuMV0sWzg5Ljc0LDI2LjcyXSxbOTAuMzcsMjYuODhdLFs5MS4yMiwyNi44MV0sWzkyLjAzLDI2Ljg0XSxbOTIuMSwyNy40NV0sWzkxLjcsMjcuNzddLFs5Mi41LDI3LjldLFs5My40MSwyOC42NF0sWzk0LjU3LDI5LjI4XSxbOTUuNCwyOS4wM10sWzk2LjEyLDI5LjQ1XSxbOTYuNTksMjguODNdLFs5Ni4yNSwyOC40MV0sWzk3LjMzLDI4LjI2XV1dXX0se246YEJhbmdsYWRlc2hgLGEyOmBCRGAsYTM6YEJHRGAscDpgQkRgLGw6Wzg5LjY4LDI0LjIxXSxnOltbW1s5Mi42NywyMi4wNF0sWzkyLjY1LDIxLjMyXSxbOTIuMywyMS40OF0sWzkyLjM3LDIwLjY3XSxbOTIuMDgsMjEuMTldLFs5Mi4wMywyMS43XSxbOTEuODMsMjIuMThdLFs5MS40MiwyMi43N10sWzkwLjUsMjIuODFdLFs5MC41OSwyMi4zOV0sWzkwLjI3LDIxLjg0XSxbODkuODUsMjIuMDRdLFs4OS43LDIxLjg2XSxbODkuNDIsMjEuOTddLFs4OS4wMywyMi4wNl0sWzg4Ljg4LDIyLjg4XSxbODguNTMsMjMuNjNdLFs4OC43LDI0LjIzXSxbODguMDgsMjQuNV0sWzg4LjMxLDI0Ljg3XSxbODguOTMsMjUuMjRdLFs4OC4yMSwyNS43N10sWzg4LjU2LDI2LjQ1XSxbODkuMzYsMjYuMDFdLFs4OS44MywyNS45N10sWzg5LjkyLDI1LjI3XSxbOTAuODcsMjUuMTNdLFs5MS44LDI1LjE1XSxbOTIuMzgsMjQuOThdLFs5MS45MiwyNC4xM10sWzkxLjQ3LDI0LjA3XSxbOTEuMTYsMjMuNV0sWzkxLjcxLDIyLjk5XSxbOTEuODcsMjMuNjJdLFs5Mi4xNSwyMy42M10sWzkyLjY3LDIyLjA0XV1dXX0se246YEJodXRhbmAsYTI6YEJUYCxhMzpgQlROYCxwOmBCVGAsbDpbOTAuMDQsMjcuNTRdLGc6W1tbWzkxLjcsMjcuNzddLFs5Mi4xLDI3LjQ1XSxbOTIuMDMsMjYuODRdLFs5MS4yMiwyNi44MV0sWzkwLjM3LDI2Ljg4XSxbODkuNzQsMjYuNzJdLFs4OC44NCwyNy4xXSxbODguODEsMjcuM10sWzg5LjQ4LDI4LjA0XSxbOTAuMDIsMjguM10sWzkwLjczLDI4LjA2XSxbOTEuMjYsMjguMDRdLFs5MS43LDI3Ljc3XV1dXX0se246YE5lcGFsYCxhMjpgTlBgLGEzOmBOUExgLHA6YE5QYCxsOls4My42NCwyOC4zXSxnOltbW1s4OC4xMiwyNy44OF0sWzg4LjA0LDI3LjQ1XSxbODguMTcsMjYuODFdLFs4OC4wNiwyNi40MV0sWzg3LjIzLDI2LjRdLFs4Ni4wMiwyNi42M10sWzg1LjI1LDI2LjczXSxbODQuNjgsMjcuMjNdLFs4My4zLDI3LjM2XSxbODIsMjcuOTNdLFs4MS4wNiwyOC40Ml0sWzgwLjA5LDI4Ljc5XSxbODAuNDgsMjkuNzNdLFs4MS4xMSwzMC4xOF0sWzgxLjUzLDMwLjQyXSxbODIuMzMsMzAuMTJdLFs4My4zNCwyOS40Nl0sWzgzLjksMjkuMzJdLFs4NC4yMywyOC44NF0sWzg1LjAxLDI4LjY0XSxbODUuODIsMjguMl0sWzg2Ljk1LDI3Ljk3XSxbODguMTIsMjcuODhdXV1dfSx7bjpgUGFraXN0YW5gLGEyOmBQS2AsYTM6YFBBS2AscDpgUEtgLGw6WzY4LjU1LDI5LjMzXSxnOltbW1s3Ny44NCwzNS40OV0sWzc2Ljg3LDM0LjY1XSxbNzUuNzYsMzQuNV0sWzc0LjI0LDM0Ljc1XSxbNzMuNzUsMzQuMzJdLFs3NC4xLDMzLjQ0XSxbNzQuNDUsMzIuNzZdLFs3NS4yNiwzMi4yN10sWzc0LjQxLDMxLjY5XSxbNzQuNDIsMzAuOThdLFs3My40NSwyOS45OF0sWzcyLjgyLDI4Ljk2XSxbNzEuNzgsMjcuOTFdLFs3MC42MiwyNy45OV0sWzY5LjUxLDI2Ljk0XSxbNzAuMTcsMjYuNDldLFs3MC4yOCwyNS43Ml0sWzcwLjg0LDI1LjIyXSxbNzEuMDQsMjQuMzZdLFs2OC44NCwyNC4zNl0sWzY4LjE4LDIzLjY5XSxbNjcuNDQsMjMuOTRdLFs2Ny4xNSwyNC42Nl0sWzY2LjM3LDI1LjQzXSxbNjQuNTMsMjUuMjRdLFs2Mi45MSwyNS4yMl0sWzYxLjUsMjUuMDhdLFs2MS44NywyNi4yNF0sWzYzLjMyLDI2Ljc2XSxbNjMuMjMsMjcuMjJdLFs2Mi43NiwyNy4zOF0sWzYyLjczLDI4LjI2XSxbNjEuNzcsMjguN10sWzYxLjM3LDI5LjNdLFs2MC44NywyOS44M10sWzYyLjU1LDI5LjMyXSxbNjMuNTUsMjkuNDddLFs2NC4xNSwyOS4zNF0sWzY0LjM1LDI5LjU2XSxbNjUuMDUsMjkuNDddLFs2Ni4zNSwyOS44OV0sWzY2LjM4LDMwLjc0XSxbNjYuOTQsMzEuM10sWzY3LjY4LDMxLjNdLFs2Ny43OSwzMS41OF0sWzY4LjU2LDMxLjcxXSxbNjguOTMsMzEuNjJdLFs2OS4zMiwzMS45XSxbNjkuMjYsMzIuNV0sWzY5LjY5LDMzLjExXSxbNzAuMzIsMzMuMzZdLFs2OS45MywzNC4wMl0sWzcwLjg4LDMzLjk5XSxbNzEuMTYsMzQuMzVdLFs3MS4xMiwzNC43M10sWzcxLjYxLDM1LjE1XSxbNzEuNSwzNS42NV0sWzcxLjI2LDM2LjA3XSxbNzEuODUsMzYuNTFdLFs3Mi45MiwzNi43Ml0sWzc0LjA3LDM2Ljg0XSxbNzQuNTgsMzcuMDJdLFs3NS4xNiwzNy4xM10sWzc1LjksMzYuNjddLFs3Ni4xOSwzNS45XSxbNzcuODQsMzUuNDldXV1dfSx7bjpgQWZnaGFuaXN0YW5gLGEyOmBBRmAsYTM6YEFGR2AscDpgQUZgLGw6WzY2LjUsMzQuMTZdLGc6W1tbWzY2LjUyLDM3LjM2XSxbNjcuMDgsMzcuMzZdLFs2Ny44MywzNy4xNF0sWzY4LjE0LDM3LjAyXSxbNjguODYsMzcuMzRdLFs2OS4yLDM3LjE1XSxbNjkuNTIsMzcuNjFdLFs3MC4xMiwzNy41OV0sWzcwLjI3LDM3Ljc0XSxbNzAuMzgsMzguMTRdLFs3MC44MSwzOC40OV0sWzcxLjM1LDM4LjI2XSxbNzEuMjQsMzcuOTVdLFs3MS41NCwzNy45MV0sWzcxLjQ1LDM3LjA3XSxbNzEuODQsMzYuNzRdLFs3Mi4xOSwzNi45NV0sWzcyLjY0LDM3LjA1XSxbNzMuMjYsMzcuNV0sWzczLjk1LDM3LjQyXSxbNzQuOTgsMzcuNDJdLFs3NS4xNiwzNy4xM10sWzc0LjU4LDM3LjAyXSxbNzQuMDcsMzYuODRdLFs3Mi45MiwzNi43Ml0sWzcxLjg1LDM2LjUxXSxbNzEuMjYsMzYuMDddLFs3MS41LDM1LjY1XSxbNzEuNjEsMzUuMTVdLFs3MS4xMiwzNC43M10sWzcxLjE2LDM0LjM1XSxbNzAuODgsMzMuOTldLFs2OS45MywzNC4wMl0sWzcwLjMyLDMzLjM2XSxbNjkuNjksMzMuMTFdLFs2OS4yNiwzMi41XSxbNjkuMzIsMzEuOV0sWzY4LjkzLDMxLjYyXSxbNjguNTYsMzEuNzFdLFs2Ny43OSwzMS41OF0sWzY3LjY4LDMxLjNdLFs2Ni45NCwzMS4zXSxbNjYuMzgsMzAuNzRdLFs2Ni4zNSwyOS44OV0sWzY1LjA1LDI5LjQ3XSxbNjQuMzUsMjkuNTZdLFs2NC4xNSwyOS4zNF0sWzYzLjU1LDI5LjQ3XSxbNjIuNTUsMjkuMzJdLFs2MC44NywyOS44M10sWzYxLjc4LDMwLjc0XSxbNjEuNywzMS4zOF0sWzYwLjk0LDMxLjU1XSxbNjAuODYsMzIuMThdLFs2MC41NCwzMi45OF0sWzYwLjk2LDMzLjUzXSxbNjAuNTMsMzMuNjhdLFs2MC44LDM0LjRdLFs2MS4yMSwzNS42NV0sWzYyLjIzLDM1LjI3XSxbNjIuOTgsMzUuNF0sWzYzLjE5LDM1Ljg2XSxbNjMuOTgsMzYuMDFdLFs2NC41NSwzNi4zMV0sWzY0Ljc1LDM3LjExXSxbNjUuNTksMzcuMzFdLFs2NS43NSwzNy42Nl0sWzY2LjIyLDM3LjM5XSxbNjYuNTIsMzcuMzZdXV1dfSx7bjpgVGFqaWtpc3RhbmAsYTI6YFRKYCxhMzpgVEpLYCxwOmBUSmAsbDpbNzIuNTksMzguMl0sZzpbW1tbNjcuODMsMzcuMTRdLFs2OC4zOSwzOC4xNl0sWzY4LjE4LDM4LjldLFs2Ny40NCwzOS4xNF0sWzY3LjcsMzkuNThdLFs2OC41NCwzOS41M10sWzY5LjAxLDQwLjA5XSxbNjkuMzMsNDAuNzNdLFs3MC42Nyw0MC45Nl0sWzcwLjQ2LDQwLjVdLFs3MC42LDQwLjIyXSxbNzEuMDEsNDAuMjRdLFs3MC42NSwzOS45NF0sWzY5LjU2LDQwLjFdLFs2OS40NiwzOS41M10sWzcwLjU1LDM5LjZdLFs3MS43OCwzOS4yOF0sWzczLjY4LDM5LjQzXSxbNzMuOTMsMzguNTFdLFs3NC4yNiwzOC42MV0sWzc0Ljg2LDM4LjM4XSxbNzQuODMsMzcuOTldLFs3NC45OCwzNy40Ml0sWzczLjk1LDM3LjQyXSxbNzMuMjYsMzcuNV0sWzcyLjY0LDM3LjA1XSxbNzIuMTksMzYuOTVdLFs3MS44NCwzNi43NF0sWzcxLjQ1LDM3LjA3XSxbNzEuNTQsMzcuOTFdLFs3MS4yNCwzNy45NV0sWzcxLjM1LDM4LjI2XSxbNzAuODEsMzguNDldLFs3MC4zOCwzOC4xNF0sWzcwLjI3LDM3Ljc0XSxbNzAuMTIsMzcuNTldLFs2OS41MiwzNy42MV0sWzY5LjIsMzcuMTVdLFs2OC44NiwzNy4zNF0sWzY4LjE0LDM3LjAyXSxbNjcuODMsMzcuMTRdXV1dfSx7bjpgS3lyZ3l6c3RhbmAsYTI6YEtHYCxhMzpgS0daYCxwOmBLR2AsbDpbNzQuNTMsNDEuNjddLGc6W1tbWzcwLjk2LDQyLjI3XSxbNzEuMTksNDIuN10sWzcxLjg0LDQyLjg1XSxbNzMuNDksNDIuNV0sWzczLjY1LDQzLjA5XSxbNzQuMjEsNDMuM10sWzc1LjY0LDQyLjg4XSxbNzYsNDIuOTldLFs3Ny42Niw0Mi45Nl0sWzc5LjE0LDQyLjg2XSxbNzkuNjQsNDIuNV0sWzgwLjI2LDQyLjM1XSxbODAuMTIsNDIuMTJdLFs3OC41NCw0MS41OF0sWzc4LjE5LDQxLjE5XSxbNzYuOSw0MS4wN10sWzc2LjUzLDQwLjQzXSxbNzUuNDcsNDAuNTZdLFs3NC43OCw0MC4zN10sWzczLjgyLDM5Ljg5XSxbNzMuOTYsMzkuNjZdLFs3My42OCwzOS40M10sWzcxLjc4LDM5LjI4XSxbNzAuNTUsMzkuNl0sWzY5LjQ2LDM5LjUzXSxbNjkuNTYsNDAuMV0sWzcwLjY1LDM5Ljk0XSxbNzEuMDEsNDAuMjRdLFs3MS43Nyw0MC4xNV0sWzczLjA2LDQwLjg3XSxbNzEuODcsNDEuMzldLFs3MS4xNiw0MS4xNF0sWzcwLjQyLDQxLjUyXSxbNzEuMjYsNDIuMTddLFs3MC45Niw0Mi4yN11dXV19LHtuOmBUdXJrbWVuaXN0YW5gLGEyOmBUTWAsYTM6YFRLTWAscDpgVE1gLGw6WzU4LjY4LDM5Ljg2XSxnOltbW1s1Mi41LDQxLjc4XSxbNTIuOTQsNDIuMTJdLFs1NC4wOCw0Mi4zMl0sWzU0Ljc2LDQyLjA0XSxbNTUuNDYsNDEuMjZdLFs1NS45Nyw0MS4zMV0sWzU3LjEsNDEuMzJdLFs1Ni45Myw0MS44M10sWzU3Ljc5LDQyLjE3XSxbNTguNjMsNDIuNzVdLFs1OS45OCw0Mi4yMl0sWzYwLjA4LDQxLjQzXSxbNjAuNDcsNDEuMjJdLFs2MS41NSw0MS4yN10sWzYxLjg4LDQxLjA4XSxbNjIuMzcsNDAuMDVdLFs2My41MiwzOS4zNl0sWzY0LjE3LDM4Ljg5XSxbNjUuMjIsMzguNF0sWzY2LjU1LDM3Ljk3XSxbNjYuNTIsMzcuMzZdLFs2Ni4yMiwzNy4zOV0sWzY1Ljc1LDM3LjY2XSxbNjUuNTksMzcuMzFdLFs2NC43NSwzNy4xMV0sWzY0LjU1LDM2LjMxXSxbNjMuOTgsMzYuMDFdLFs2My4xOSwzNS44Nl0sWzYyLjk4LDM1LjRdLFs2Mi4yMywzNS4yN10sWzYxLjIxLDM1LjY1XSxbNjEuMTIsMzYuNDldLFs2MC4zOCwzNi41M10sWzU5LjIzLDM3LjQxXSxbNTguNDQsMzcuNTJdLFs1Ny4zMywzOC4wM10sWzU2LjYyLDM4LjEyXSxbNTYuMTgsMzcuOTRdLFs1NS41MSwzNy45Nl0sWzU0LjgsMzcuMzldLFs1My45MiwzNy4yXSxbNTMuNzQsMzcuOTFdLFs1My44OCwzOC45NV0sWzUzLjEsMzkuMjldLFs1My4zNiwzOS45OF0sWzUyLjY5LDQwLjAzXSxbNTIuOTIsNDAuODhdLFs1My44Niw0MC42M10sWzU0Ljc0LDQwLjk1XSxbNTQuMDEsNDEuNTVdLFs1My43Miw0Mi4xMl0sWzUyLjkyLDQxLjg3XSxbNTIuODEsNDEuMTRdLFs1Mi41LDQxLjc4XV1dXX0se246YElyYW5gLGEyOmBJUmAsYTM6YElSTmAscDpgSVJOYCxsOls1NC45MywzMi4xN10sZzpbW1tbNDguNTcsMjkuOTNdLFs0OC4wMSwzMC40NV0sWzQ4LDMwLjk5XSxbNDcuNjksMzAuOThdLFs0Ny44NSwzMS43MV0sWzQ3LjMzLDMyLjQ3XSxbNDYuMTEsMzMuMDJdLFs0NS40MiwzMy45N10sWzQ1LjY1LDM0Ljc1XSxbNDYuMTUsMzUuMDldLFs0Ni4wOCwzNS42OF0sWzQ1LjQyLDM1Ljk4XSxbNDQuNzcsMzcuMTddLFs0NC4yMywzNy45N10sWzQ0LjQyLDM4LjI4XSxbNDQuMTEsMzkuNDNdLFs0NC43OSwzOS43MV0sWzQ0Ljk1LDM5LjM0XSxbNDUuNDYsMzguODddLFs0Ni4xNCwzOC43NF0sWzQ2LjUxLDM4Ljc3XSxbNDcuNjksMzkuNTFdLFs0OC4wNiwzOS41OF0sWzQ4LjM2LDM5LjI5XSxbNDguMDEsMzguNzldLFs0OC42MywzOC4yN10sWzQ4Ljg4LDM4LjMyXSxbNDkuMiwzNy41OF0sWzUwLjE1LDM3LjM3XSxbNTAuODQsMzYuODddLFs1Mi4yNiwzNi43XSxbNTMuODMsMzYuOTddLFs1My45MiwzNy4yXSxbNTQuOCwzNy4zOV0sWzU1LjUxLDM3Ljk2XSxbNTYuMTgsMzcuOTRdLFs1Ni42MiwzOC4xMl0sWzU3LjMzLDM4LjAzXSxbNTguNDQsMzcuNTJdLFs1OS4yMywzNy40MV0sWzYwLjM4LDM2LjUzXSxbNjEuMTIsMzYuNDldLFs2MS4yMSwzNS42NV0sWzYwLjgsMzQuNF0sWzYwLjUzLDMzLjY4XSxbNjAuOTYsMzMuNTNdLFs2MC41NCwzMi45OF0sWzYwLjg2LDMyLjE4XSxbNjAuOTQsMzEuNTVdLFs2MS43LDMxLjM4XSxbNjEuNzgsMzAuNzRdLFs2MC44NywyOS44M10sWzYxLjM3LDI5LjNdLFs2MS43NywyOC43XSxbNjIuNzMsMjguMjZdLFs2Mi43NiwyNy4zOF0sWzYzLjIzLDI3LjIyXSxbNjMuMzIsMjYuNzZdLFs2MS44NywyNi4yNF0sWzYxLjUsMjUuMDhdLFs1OS42MiwyNS4zOF0sWzU4LjUzLDI1LjYxXSxbNTcuNCwyNS43NF0sWzU2Ljk3LDI2Ljk3XSxbNTYuNDksMjcuMTRdLFs1NS43MiwyNi45Nl0sWzU0LjcyLDI2LjQ4XSxbNTMuNDksMjYuODFdLFs1Mi40OCwyNy41OF0sWzUxLjUyLDI3Ljg3XSxbNTAuODUsMjguODFdLFs1MC4xMiwzMC4xNV0sWzQ5LjU4LDI5Ljk5XSxbNDguOTQsMzAuMzJdLFs0OC41NywyOS45M11dXV19LHtuOmBTeXJpYWAsYTI6YFNZYCxhMzpgU1lSYCxwOmBTWVJgLGw6WzM4LjI4LDM1LjAxXSxnOltbW1szNS43MiwzMi43MV0sWzM1LjcsMzIuNzJdLFszNS44NCwzMi44N10sWzM1LjgyLDMzLjI4XSxbMzYuMDcsMzMuODJdLFszNi42MSwzNC4yXSxbMzYuNDUsMzQuNTldLFszNiwzNC42NF0sWzM1LjkxLDM1LjQxXSxbMzYuMTUsMzUuODJdLFszNi40MiwzNi4wNF0sWzM2LjY5LDM2LjI2XSxbMzYuNzQsMzYuODJdLFszNy4wNywzNi42Ml0sWzM4LjE3LDM2LjldLFszOC43LDM2LjcxXSxbMzkuNTIsMzYuNzJdLFs0MC42NywzNy4wOV0sWzQxLjIxLDM3LjA3XSxbNDIuMzUsMzcuMjNdLFs0MS44NCwzNi42MV0sWzQxLjI5LDM2LjM2XSxbNDEuMzgsMzUuNjNdLFs0MS4wMSwzNC40Ml0sWzM4Ljc5LDMzLjM4XSxbMzYuODMsMzIuMzFdLFszNS43MiwzMi43MV1dXV19LHtuOmBBcm1lbmlhYCxhMjpgQU1gLGEzOmBBUk1gLHA6YEFSTWAsbDpbNDQuOCw0MC40Nl0sZzpbW1tbNDYuNTEsMzguNzddLFs0Ni4xNCwzOC43NF0sWzQ1Ljc0LDM5LjMyXSxbNDUuNzQsMzkuNDddLFs0NS4zLDM5LjQ3XSxbNDUsMzkuNzRdLFs0NC43OSwzOS43MV0sWzQ0LjQsNDAuMDFdLFs0My42Niw0MC4yNV0sWzQzLjc1LDQwLjc0XSxbNDMuNTgsNDEuMDldLFs0NC45Nyw0MS4yNV0sWzQ1LjE4LDQwLjk5XSxbNDUuNTYsNDAuODFdLFs0NS4zNiw0MC41Nl0sWzQ1Ljg5LDQwLjIyXSxbNDUuNjEsMzkuOV0sWzQ2LjAzLDM5LjYzXSxbNDYuNDgsMzkuNDZdLFs0Ni41MSwzOC43N11dXV19LHtuOmBTd2VkZW5gLGEyOmBTRWAsYTM6YFNXRWAscDpgU2AsbDpbMTkuMDIsNjUuODZdLGc6W1tbWzExLjAzLDU4Ljg2XSxbMTEuNDcsNTkuNDNdLFsxMi4zLDYwLjEyXSxbMTIuNjMsNjEuMjldLFsxMS45OSw2MS44XSxbMTEuOTMsNjMuMTNdLFsxMi41OCw2NC4wN10sWzEzLjU3LDY0LjA1XSxbMTMuOTIsNjQuNDVdLFsxMy41Niw2NC43OV0sWzE1LjExLDY2LjE5XSxbMTYuMTEsNjcuM10sWzE2Ljc3LDY4LjAxXSxbMTcuNzMsNjguMDFdLFsxNy45OSw2OC41N10sWzE5Ljg4LDY4LjQxXSxbMjAuMDMsNjkuMDddLFsyMC42NSw2OS4xMV0sWzIxLjk4LDY4LjYyXSxbMjMuNTQsNjcuOTRdLFsyMy41Nyw2Ni40XSxbMjMuOSw2Ni4wMV0sWzIyLjE4LDY1LjcyXSxbMjEuMjEsNjUuMDNdLFsyMS4zNyw2NC40MV0sWzE5Ljc4LDYzLjYxXSxbMTcuODUsNjIuNzVdLFsxNy4xMiw2MS4zNF0sWzE3LjgzLDYwLjY0XSxbMTguNzksNjAuMDhdLFsxNy44Nyw1OC45NV0sWzE2LjgzLDU4LjcyXSxbMTYuNDUsNTcuMDRdLFsxNS44OCw1Ni4xXSxbMTQuNjcsNTYuMl0sWzE0LjEsNTUuNDFdLFsxMi45NCw1NS4zNl0sWzEyLjYzLDU2LjMxXSxbMTEuNzksNTcuNDRdLFsxMS4wMyw1OC44Nl1dXV19LHtuOmBCZWxhcnVzYCxhMjpgQllgLGEzOmBCTFJgLHA6YEJZYCxsOlsyOC40Miw1My44Ml0sZzpbW1tbMjguMTgsNTYuMTddLFsyOS4yMyw1NS45Ml0sWzI5LjM3LDU1LjY3XSxbMjkuOSw1NS43OV0sWzMwLjg3LDU1LjU1XSxbMzAuOTcsNTUuMDhdLFszMC43Niw1NC44MV0sWzMxLjM4LDU0LjE2XSxbMzEuNzksNTMuOTddLFszMS43Myw1My43OV0sWzMyLjQxLDUzLjYyXSxbMzIuNjksNTMuMzVdLFszMi4zLDUzLjEzXSxbMzEuNSw1My4xN10sWzMxLjMxLDUzLjA3XSxbMzEuNTQsNTIuNzRdLFszMS43OSw1Mi4xXSxbMzAuOTMsNTIuMDRdLFszMC42Miw1MS44Ml0sWzMwLjU2LDUxLjMyXSxbMzAuMTYsNTEuNDJdLFsyOS4yNSw1MS4zN10sWzI4Ljk5LDUxLjZdLFsyOC42Miw1MS40M10sWzI4LjI0LDUxLjU3XSxbMjcuNDUsNTEuNTldLFsyNi4zNCw1MS44M10sWzI1LjMzLDUxLjkxXSxbMjQuNTUsNTEuODldLFsyNC4wMSw1MS42Ml0sWzIzLjUzLDUxLjU4XSxbMjMuNTEsNTIuMDJdLFsyMy4yLDUyLjQ5XSxbMjMuOCw1Mi42OV0sWzIzLjgsNTMuMDldLFsyMy41Myw1My40N10sWzIzLjQ4LDUzLjkxXSxbMjQuNDUsNTMuOTFdLFsyNS41NCw1NC4yOF0sWzI1Ljc3LDU0Ljg1XSxbMjYuNTksNTUuMTddLFsyNi40OSw1NS42Ml0sWzI3LjEsNTUuNzhdLFsyOC4xOCw1Ni4xN11dXV19LHtuOmBVa3JhaW5lYCxhMjpgVUFgLGEzOmBVS1JgLHA6YFVBYCxsOlszMi4xNCw0OS43Ml0sZzpbW1tbMzEuNzksNTIuMV0sWzMyLjE2LDUyLjA2XSxbMzIuNDEsNTIuMjldLFszMi43Miw1Mi4yNF0sWzMzLjc1LDUyLjM0XSxbMzQuMzksNTEuNzddLFszNC4xNCw1MS41N10sWzM0LjIyLDUxLjI2XSxbMzUuMDIsNTEuMjFdLFszNS4zOCw1MC43N10sWzM1LjM2LDUwLjU4XSxbMzYuNjMsNTAuMjNdLFszNy4zOSw1MC4zOF0sWzM4LjAxLDQ5LjkyXSxbMzguNTksNDkuOTNdLFs0MC4wNyw0OS42XSxbNDAuMDgsNDkuMzFdLFszOS42Nyw0OC43OF0sWzM5LjksNDguMjNdLFszOS43NCw0Ny45XSxbMzguNzcsNDcuODNdLFszOC4yNiw0Ny41NV0sWzM4LjIyLDQ3LjFdLFszNy40Myw0Ny4wMl0sWzM2Ljc2LDQ2LjddLFszNS44Miw0Ni42NV0sWzM0Ljk2LDQ2LjI3XSxbMzUuMDEsNDUuNzRdLFszNC44Niw0NS43N10sWzM0LjczLDQ1Ljk3XSxbMzQuNDEsNDYuMDFdLFszMy43LDQ2LjIyXSxbMzMuNDQsNDUuOTddLFszMy4zLDQ2LjA4XSxbMzEuNzQsNDYuMzNdLFszMS42OCw0Ni43MV0sWzMwLjc1LDQ2LjU4XSxbMzAuMzgsNDYuMDNdLFsyOS42LDQ1LjI5XSxbMjkuMTUsNDUuNDZdLFsyOC42OCw0NS4zXSxbMjguMjMsNDUuNDldLFsyOC40OSw0NS42XSxbMjguNjYsNDUuOTRdLFsyOC45Myw0Ni4yNl0sWzI4Ljg2LDQ2LjQ0XSxbMjkuMDcsNDYuNTJdLFsyOS4xNyw0Ni4zOF0sWzI5Ljc2LDQ2LjM1XSxbMzAuMDIsNDYuNDJdLFsyOS44NCw0Ni41M10sWzI5LjkxLDQ2LjY3XSxbMjkuNTYsNDYuOTNdLFsyOS40Miw0Ny4zNV0sWzI5LjA1LDQ3LjUxXSxbMjkuMTIsNDcuODVdLFsyOC42Nyw0OC4xMl0sWzI4LjI2LDQ4LjE2XSxbMjcuNTIsNDguNDddLFsyNi44Niw0OC4zN10sWzI2LjYyLDQ4LjIyXSxbMjYuMiw0OC4yMl0sWzI1Ljk1LDQ3Ljk5XSxbMjUuMjEsNDcuODldLFsyNC44Nyw0Ny43NF0sWzI0LjQsNDcuOThdLFsyMy43Niw0Ny45OV0sWzIzLjE0LDQ4LjFdLFsyMi43MSw0Ny44OF0sWzIyLjY0LDQ4LjE1XSxbMjIuMDksNDguNDJdLFsyMi4yOCw0OC44M10sWzIyLjU2LDQ5LjA5XSxbMjIuNzgsNDkuMDNdLFsyMi41Miw0OS40OF0sWzIzLjQzLDUwLjMxXSxbMjMuOTIsNTAuNDJdLFsyNC4wMyw1MC43MV0sWzIzLjUzLDUxLjU4XSxbMjQuMDEsNTEuNjJdLFsyNC41NSw1MS44OV0sWzI1LjMzLDUxLjkxXSxbMjYuMzQsNTEuODNdLFsyNy40NSw1MS41OV0sWzI4LjI0LDUxLjU3XSxbMjguNjIsNTEuNDNdLFsyOC45OSw1MS42XSxbMjkuMjUsNTEuMzddLFszMC4xNiw1MS40Ml0sWzMwLjU2LDUxLjMyXSxbMzAuNjIsNTEuODJdLFszMC45Myw1Mi4wNF0sWzMxLjc5LDUyLjFdXV1dfSx7bjpgUG9sYW5kYCxhMjpgUExgLGEzOmBQT0xgLHA6YFBMYCxsOlsxOS40OSw1MS45OV0sZzpbW1tbMjMuNDgsNTMuOTFdLFsyMy41Myw1My40N10sWzIzLjgsNTMuMDldLFsyMy44LDUyLjY5XSxbMjMuMiw1Mi40OV0sWzIzLjUxLDUyLjAyXSxbMjMuNTMsNTEuNThdLFsyNC4wMyw1MC43MV0sWzIzLjkyLDUwLjQyXSxbMjMuNDMsNTAuMzFdLFsyMi41Miw0OS40OF0sWzIyLjc4LDQ5LjAzXSxbMjIuNTYsNDkuMDldLFsyMS42MSw0OS40N10sWzIwLjg5LDQ5LjMzXSxbMjAuNDIsNDkuNDNdLFsxOS44Myw0OS4yMl0sWzE5LjMyLDQ5LjU3XSxbMTguOTEsNDkuNDRdLFsxOC44NSw0OS41XSxbMTguMzksNDkuOTldLFsxNy42NSw1MC4wNV0sWzE3LjU1LDUwLjM2XSxbMTYuODcsNTAuNDddLFsxNi43Miw1MC4yMl0sWzE2LjE4LDUwLjQyXSxbMTYuMjQsNTAuN10sWzE1LjQ5LDUwLjc4XSxbMTUuMDIsNTEuMTFdLFsxNC42MSw1MS43NV0sWzE0LjY5LDUyLjA5XSxbMTQuNDQsNTIuNjJdLFsxNC4wNyw1Mi45OF0sWzE0LjM1LDUzLjI1XSxbMTQuMTIsNTMuNzZdLFsxNC44LDU0LjA1XSxbMTYuMzYsNTQuNTFdLFsxNy42Miw1NC44NV0sWzE4LjYyLDU0LjY4XSxbMTguNyw1NC40NF0sWzE5LjY2LDU0LjQzXSxbMjAuODksNTQuMzFdLFsyMi43Myw1NC4zM10sWzIzLjI0LDU0LjIyXSxbMjMuNDgsNTMuOTFdXV1dfSx7bjpgQXVzdHJpYWAsYTI6YEFUYCxhMzpgQVVUYCxwOmBBYCxsOlsxNC4xMyw0Ny41Ml0sZzpbW1tbMTYuOTgsNDguMTJdLFsxNi45LDQ3LjcxXSxbMTYuMzQsNDcuNzFdLFsxNi41Myw0Ny41XSxbMTYuMiw0Ni44NV0sWzE2LjAxLDQ2LjY4XSxbMTUuMTQsNDYuNjZdLFsxNC42Myw0Ni40M10sWzEzLjgxLDQ2LjUxXSxbMTIuMzgsNDYuNzddLFsxMi4xNSw0Ny4xMl0sWzExLjE2LDQ2Ljk0XSxbMTEuMDUsNDYuNzVdLFsxMC40NCw0Ni44OV0sWzkuOTMsNDYuOTJdLFs5LjQ4LDQ3LjFdLFs5LjYzLDQ3LjM1XSxbOS41OSw0Ny41M10sWzkuOSw0Ny41OF0sWzEwLjQsNDcuM10sWzEwLjU0LDQ3LjU3XSxbMTEuNDMsNDcuNTJdLFsxMi4xNCw0Ny43XSxbMTIuNjIsNDcuNjddLFsxMi45Myw0Ny40N10sWzEzLjAzLDQ3LjY0XSxbMTIuODgsNDguMjldLFsxMy4yNCw0OC40Ml0sWzEzLjYsNDguODhdLFsxNC4zNCw0OC41Nl0sWzE0LjksNDguOTZdLFsxNS4yNSw0OS4wNF0sWzE2LjAzLDQ4LjczXSxbMTYuNSw0OC43OV0sWzE2Ljk2LDQ4LjZdLFsxNi44OCw0OC40N10sWzE2Ljk4LDQ4LjEyXV1dXX0se246YEh1bmdhcnlgLGEyOmBIVWAsYTM6YEhVTmAscDpgSFVgLGw6WzE5LjQ1LDQ3LjA5XSxnOltbW1syMi4wOSw0OC40Ml0sWzIyLjY0LDQ4LjE1XSxbMjIuNzEsNDcuODhdLFsyMi4xLDQ3LjY3XSxbMjEuNjMsNDYuOTldLFsyMS4wMiw0Ni4zMl0sWzIwLjIyLDQ2LjEzXSxbMTkuNiw0Ni4xN10sWzE4LjgzLDQ1LjkxXSxbMTguNDYsNDUuNzZdLFsxNy42Myw0NS45NV0sWzE2Ljg4LDQ2LjM4XSxbMTYuNTYsNDYuNV0sWzE2LjM3LDQ2Ljg0XSxbMTYuMiw0Ni44NV0sWzE2LjUzLDQ3LjVdLFsxNi4zNCw0Ny43MV0sWzE2LjksNDcuNzFdLFsxNi45OCw0OC4xMl0sWzE3LjQ5LDQ3Ljg3XSxbMTcuODYsNDcuNzZdLFsxOC43LDQ3Ljg4XSxbMTguNzgsNDguMDhdLFsxOS4xNyw0OC4xMV0sWzE5LjY2LDQ4LjI3XSxbMTkuNzcsNDguMl0sWzIwLjI0LDQ4LjMzXSxbMjAuNDcsNDguNTZdLFsyMC44LDQ4LjYyXSxbMjEuODcsNDguMzJdLFsyMi4wOSw0OC40Ml1dXV19LHtuOmBNb2xkb3ZhYCxhMjpgTURgLGEzOmBNREFgLHA6YE1EYCxsOlsyOC40OSw0Ny40M10sZzpbW1tbMjYuNjIsNDguMjJdLFsyNi44Niw0OC4zN10sWzI3LjUyLDQ4LjQ3XSxbMjguMjYsNDguMTZdLFsyOC42Nyw0OC4xMl0sWzI5LjEyLDQ3Ljg1XSxbMjkuMDUsNDcuNTFdLFsyOS40Miw0Ny4zNV0sWzI5LjU2LDQ2LjkzXSxbMjkuOTEsNDYuNjddLFsyOS44NCw0Ni41M10sWzMwLjAyLDQ2LjQyXSxbMjkuNzYsNDYuMzVdLFsyOS4xNyw0Ni4zOF0sWzI5LjA3LDQ2LjUyXSxbMjguODYsNDYuNDRdLFsyOC45Myw0Ni4yNl0sWzI4LjY2LDQ1Ljk0XSxbMjguNDksNDUuNl0sWzI4LjIzLDQ1LjQ5XSxbMjguMDUsNDUuOTRdLFsyOC4xNiw0Ni4zN10sWzI4LjEzLDQ2LjgxXSxbMjcuNTUsNDcuNDFdLFsyNy4yMyw0Ny44M10sWzI2LjkyLDQ4LjEyXSxbMjYuNjIsNDguMjJdXV1dfSx7bjpgUm9tYW5pYWAsYTI6YFJPYCxhMzpgUk9VYCxwOmBST2AsbDpbMjQuOTcsNDUuNzNdLGc6W1tbWzI4LjIzLDQ1LjQ5XSxbMjguNjgsNDUuM10sWzI5LjE1LDQ1LjQ2XSxbMjkuNiw0NS4yOV0sWzI5LjYzLDQ1LjA0XSxbMjkuMTQsNDQuODJdLFsyOC44NCw0NC45MV0sWzI4LjU2LDQzLjcxXSxbMjcuOTcsNDMuODFdLFsyNy4yNCw0NC4xOF0sWzI2LjA3LDQzLjk0XSxbMjUuNTcsNDMuNjldLFsyNC4xLDQzLjc0XSxbMjMuMzMsNDMuOV0sWzIyLjk0LDQzLjgyXSxbMjIuNjYsNDQuMjNdLFsyMi40Nyw0NC40MV0sWzIyLjcxLDQ0LjU4XSxbMjIuNDYsNDQuN10sWzIyLjE1LDQ0LjQ4XSxbMjEuNTYsNDQuNzddLFsyMS40OCw0NS4xOF0sWzIwLjg3LDQ1LjQyXSxbMjAuNzYsNDUuNzNdLFsyMC4yMiw0Ni4xM10sWzIxLjAyLDQ2LjMyXSxbMjEuNjMsNDYuOTldLFsyMi4xLDQ3LjY3XSxbMjIuNzEsNDcuODhdLFsyMy4xNCw0OC4xXSxbMjMuNzYsNDcuOTldLFsyNC40LDQ3Ljk4XSxbMjQuODcsNDcuNzRdLFsyNS4yMSw0Ny44OV0sWzI1Ljk1LDQ3Ljk5XSxbMjYuMiw0OC4yMl0sWzI2LjYyLDQ4LjIyXSxbMjYuOTIsNDguMTJdLFsyNy4yMyw0Ny44M10sWzI3LjU1LDQ3LjQxXSxbMjguMTMsNDYuODFdLFsyOC4xNiw0Ni4zN10sWzI4LjA1LDQ1Ljk0XSxbMjguMjMsNDUuNDldXV1dfSx7bjpgTGl0aHVhbmlhYCxhMjpgTFRgLGEzOmBMVFVgLHA6YExUYCxsOlsyNC4wOSw1NS4xXSxnOltbW1syNi40OSw1NS42Ml0sWzI2LjU5LDU1LjE3XSxbMjUuNzcsNTQuODVdLFsyNS41NCw1NC4yOF0sWzI0LjQ1LDUzLjkxXSxbMjMuNDgsNTMuOTFdLFsyMy4yNCw1NC4yMl0sWzIyLjczLDU0LjMzXSxbMjIuNjUsNTQuNThdLFsyMi43Niw1NC44Nl0sWzIyLjMyLDU1LjAyXSxbMjEuMjcsNTUuMTldLFsyMS4wNiw1Ni4wM10sWzIyLjIsNTYuMzRdLFsyMy44OCw1Ni4yN10sWzI0Ljg2LDU2LjM3XSxbMjUsNTYuMTZdLFsyNS41Myw1Ni4xXSxbMjYuNDksNTUuNjJdXV1dfSx7bjpgTGF0dmlhYCxhMjpgTFZgLGEzOmBMVkFgLHA6YExWYCxsOlsyNS40Niw1Ny4wN10sZzpbW1tbMjcuMjksNTcuNDddLFsyNy43Nyw1Ny4yNF0sWzI3Ljg2LDU2Ljc2XSxbMjguMTgsNTYuMTddLFsyNy4xLDU1Ljc4XSxbMjYuNDksNTUuNjJdLFsyNS41Myw1Ni4xXSxbMjUsNTYuMTZdLFsyNC44Niw1Ni4zN10sWzIzLjg4LDU2LjI3XSxbMjIuMiw1Ni4zNF0sWzIxLjA2LDU2LjAzXSxbMjEuMDksNTYuNzhdLFsyMS41OCw1Ny40MV0sWzIyLjUyLDU3Ljc1XSxbMjMuMzIsNTcuMDFdLFsyNC4xMiw1Ny4wM10sWzI0LjMxLDU3Ljc5XSxbMjUuMTYsNTcuOTddLFsyNS42LDU3Ljg1XSxbMjYuNDYsNTcuNDhdLFsyNy4yOSw1Ny40N11dXV19LHtuOmBFc3RvbmlhYCxhMjpgRUVgLGEzOmBFU1RgLHA6YEVTVGAsbDpbMjUuODcsNTguNzJdLGc6W1tbWzI3Ljk4LDU5LjQ4XSxbMjguMTMsNTkuM10sWzI3LjQyLDU4LjcyXSxbMjcuNzIsNTcuNzldLFsyNy4yOSw1Ny40N10sWzI2LjQ2LDU3LjQ4XSxbMjUuNiw1Ny44NV0sWzI1LjE2LDU3Ljk3XSxbMjQuMzEsNTcuNzldLFsyNC40Myw1OC4zOF0sWzI0LjA2LDU4LjI2XSxbMjMuNDMsNTguNjFdLFsyMy4zNCw1OS4xOV0sWzI0LjYsNTkuNDddLFsyNS44Niw1OS42MV0sWzI2Ljk1LDU5LjQ1XSxbMjcuOTgsNTkuNDhdXV1dfSx7bjpgR2VybWFueWAsYTI6YERFYCxhMzpgREVVYCxwOmBEYCxsOls5LjY4LDUwLjk2XSxnOltbW1sxNC4xMiw1My43Nl0sWzE0LjM1LDUzLjI1XSxbMTQuMDcsNTIuOThdLFsxNC40NCw1Mi42Ml0sWzE0LjY5LDUyLjA5XSxbMTQuNjEsNTEuNzVdLFsxNS4wMiw1MS4xMV0sWzE0LjU3LDUxXSxbMTQuMzEsNTEuMTJdLFsxNC4wNiw1MC45M10sWzEzLjM0LDUwLjczXSxbMTIuOTcsNTAuNDhdLFsxMi4yNCw1MC4yN10sWzEyLjQyLDQ5Ljk3XSxbMTIuNTIsNDkuNTVdLFsxMy4wMyw0OS4zMV0sWzEzLjYsNDguODhdLFsxMy4yNCw0OC40Ml0sWzEyLjg4LDQ4LjI5XSxbMTMuMDMsNDcuNjRdLFsxMi45Myw0Ny40N10sWzEyLjYyLDQ3LjY3XSxbMTIuMTQsNDcuN10sWzExLjQzLDQ3LjUyXSxbMTAuNTQsNDcuNTddLFsxMC40LDQ3LjNdLFs5LjksNDcuNThdLFs5LjU5LDQ3LjUzXSxbOC41Miw0Ny44M10sWzguMzIsNDcuNjFdLFs3LjQ3LDQ3LjYyXSxbNy41OSw0OC4zM10sWzguMSw0OS4wMl0sWzYuNjYsNDkuMl0sWzYuMTksNDkuNDZdLFs2LjI0LDQ5LjldLFs2LjA0LDUwLjEzXSxbNi4xNiw1MC44XSxbNS45OSw1MS44NV0sWzYuNTksNTEuODVdLFs2Ljg0LDUyLjIzXSxbNy4wOSw1My4xNF0sWzYuOTEsNTMuNDhdLFs3LjEsNTMuNjldLFs3Ljk0LDUzLjc1XSxbOC4xMiw1My41M10sWzguOCw1NC4wMl0sWzguNTcsNTQuNF0sWzguNTMsNTQuOTZdLFs5LjI4LDU0LjgzXSxbOS45Miw1NC45OF0sWzkuOTQsNTQuNl0sWzEwLjk1LDU0LjM2XSxbMTAuOTQsNTQuMDFdLFsxMS45Niw1NC4yXSxbMTIuNTIsNTQuNDddLFsxMy42NSw1NC4wOF0sWzE0LjEyLDUzLjc2XV1dXX0se246YEJ1bGdhcmlhYCxhMjpgQkdgLGEzOmBCR1JgLHA6YEJHYCxsOlsyNS4xNiw0Mi41MV0sZzpbW1tbMjIuNjYsNDQuMjNdLFsyMi45NCw0My44Ml0sWzIzLjMzLDQzLjldLFsyNC4xLDQzLjc0XSxbMjUuNTcsNDMuNjldLFsyNi4wNyw0My45NF0sWzI3LjI0LDQ0LjE4XSxbMjcuOTcsNDMuODFdLFsyOC41Niw0My43MV0sWzI4LjA0LDQzLjI5XSxbMjcuNjcsNDIuNThdLFsyOCw0Mi4wMV0sWzI3LjE0LDQyLjE0XSxbMjYuMTIsNDEuODNdLFsyNi4xMSw0MS4zM10sWzI1LjIsNDEuMjNdLFsyNC40OSw0MS41OF0sWzIzLjY5LDQxLjMxXSxbMjIuOTUsNDEuMzRdLFsyMi44OCw0Ml0sWzIyLjM4LDQyLjMyXSxbMjIuNTUsNDIuNDZdLFsyMi40NCw0Mi41OF0sWzIyLjYsNDIuOV0sWzIyLjk5LDQzLjIxXSxbMjIuNSw0My42NF0sWzIyLjQxLDQ0LjAxXSxbMjIuNjYsNDQuMjNdXV1dfSx7bjpgR3JlZWNlYCxhMjpgR1JgLGEzOmBHUkNgLHA6YEdSYCxsOlsyMS43MywzOS40OV0sZzpbW1tbMjYuMjksMzUuM10sWzI2LjE2LDM1XSxbMjQuNzIsMzQuOTJdLFsyNC43NCwzNS4wOF0sWzIzLjUxLDM1LjI4XSxbMjMuNywzNS43MV0sWzI0LjI1LDM1LjM3XSxbMjUuMDMsMzUuNDJdLFsyNS43NywzNS4zNV0sWzI1Ljc1LDM1LjE4XSxbMjYuMjksMzUuM11dXSxbW1syMi45NSw0MS4zNF0sWzIzLjY5LDQxLjMxXSxbMjQuNDksNDEuNThdLFsyNS4yLDQxLjIzXSxbMjYuMTEsNDEuMzNdLFsyNi4xMiw0MS44M10sWzI2LjYsNDEuNTZdLFsyNi4yOSw0MC45NF0sWzI2LjA2LDQwLjgyXSxbMjUuNDUsNDAuODVdLFsyNC45Myw0MC45NV0sWzIzLjcxLDQwLjY5XSxbMjQuNDEsNDAuMTJdLFsyMy45LDM5Ljk2XSxbMjMuMzQsMzkuOTZdLFsyMi44MSw0MC40OF0sWzIyLjYzLDQwLjI2XSxbMjIuODUsMzkuNjZdLFsyMy4zNSwzOS4xOV0sWzIyLjk3LDM4Ljk3XSxbMjMuNTMsMzguNTFdLFsyNC4wMywzOC4yMl0sWzI0LjA0LDM3LjY2XSxbMjMuMTIsMzcuOTJdLFsyMy40MSwzNy40MV0sWzIyLjc3LDM3LjMxXSxbMjMuMTUsMzYuNDJdLFsyMi40OSwzNi40MV0sWzIxLjY3LDM2Ljg0XSxbMjEuMywzNy42NF0sWzIxLjEyLDM4LjMxXSxbMjAuNzMsMzguNzddLFsyMC4yMiwzOS4zNF0sWzIwLjE1LDM5LjYyXSxbMjAuNjIsNDAuMTFdLFsyMC42Nyw0MC40NF0sWzIxLDQwLjU4XSxbMjEuMDIsNDAuODRdLFsyMS42Nyw0MC45M10sWzIyLjA2LDQxLjE1XSxbMjIuNiw0MS4xM10sWzIyLjc2LDQxLjNdLFsyMi45NSw0MS4zNF1dXV19LHtuOmBUdXJrZXlgLGEyOmBUUmAsYTM6YFRVUmAscDpgVFJgLGw6WzM0LjUxLDM5LjM1XSxnOltbW1s0NC43NywzNy4xN10sWzQ0LjI5LDM3XSxbNDMuOTQsMzcuMjZdLFs0Mi43OCwzNy4zOV0sWzQyLjM1LDM3LjIzXSxbNDEuMjEsMzcuMDddLFs0MC42NywzNy4wOV0sWzM5LjUyLDM2LjcyXSxbMzguNywzNi43MV0sWzM4LjE3LDM2LjldLFszNy4wNywzNi42Ml0sWzM2Ljc0LDM2LjgyXSxbMzYuNjksMzYuMjZdLFszNi40MiwzNi4wNF0sWzM2LjE1LDM1LjgyXSxbMzUuNzgsMzYuMjddLFszNi4xNiwzNi42NV0sWzM1LjU1LDM2LjU3XSxbMzQuNzEsMzYuOF0sWzM0LjAzLDM2LjIyXSxbMzIuNTEsMzYuMTFdLFszMS43LDM2LjY0XSxbMzAuNjIsMzYuNjhdLFszMC4zOSwzNi4yNl0sWzI5LjcsMzYuMTRdLFsyOC43MywzNi42OF0sWzI3LjY0LDM2LjY2XSxbMjcuMDUsMzcuNjVdLFsyNi4zMiwzOC4yMV0sWzI2LjgsMzguOTldLFsyNi4xNywzOS40Nl0sWzI3LjI4LDQwLjQyXSxbMjguODIsNDAuNDZdLFsyOS4yNCw0MS4yMl0sWzMxLjE1LDQxLjA5XSxbMzIuMzUsNDEuNzRdLFszMy41MSw0Mi4wMl0sWzM1LjE3LDQyLjA0XSxbMzYuOTEsNDEuMzRdLFszOC4zNSw0MC45NV0sWzM5LjUxLDQxLjFdLFs0MC4zNyw0MS4wMV0sWzQxLjU1LDQxLjU0XSxbNDIuNjIsNDEuNThdLFs0My41OCw0MS4wOV0sWzQzLjc1LDQwLjc0XSxbNDMuNjYsNDAuMjVdLFs0NC40LDQwLjAxXSxbNDQuNzksMzkuNzFdLFs0NC4xMSwzOS40M10sWzQ0LjQyLDM4LjI4XSxbNDQuMjMsMzcuOTddLFs0NC43NywzNy4xN11dXSxbW1syNi4xMiw0MS44M10sWzI3LjE0LDQyLjE0XSxbMjgsNDIuMDFdLFsyOC4xMiw0MS42Ml0sWzI4Ljk5LDQxLjNdLFsyOC44MSw0MS4wNV0sWzI3LjYyLDQxXSxbMjcuMTksNDAuNjldLFsyNi4zNiw0MC4xNV0sWzI2LjA0LDQwLjYyXSxbMjYuMDYsNDAuODJdLFsyNi4yOSw0MC45NF0sWzI2LjYsNDEuNTZdLFsyNi4xMiw0MS44M11dXV19LHtuOmBBbGJhbmlhYCxhMjpgQUxgLGEzOmBBTEJgLHA6YEFMYCxsOlsyMC4xMSw0MC42NV0sZzpbW1tbMjEuMDIsNDAuODRdLFsyMSw0MC41OF0sWzIwLjY3LDQwLjQ0XSxbMjAuNjIsNDAuMTFdLFsyMC4xNSwzOS42Ml0sWzE5Ljk4LDM5LjY5XSxbMTkuOTYsMzkuOTJdLFsxOS40MSw0MC4yNV0sWzE5LjMyLDQwLjczXSxbMTkuNCw0MS40MV0sWzE5LjU0LDQxLjcyXSxbMTkuMzcsNDEuODhdLFsxOS4zLDQyLjJdLFsxOS43NCw0Mi42OV0sWzE5LjgsNDIuNV0sWzIwLjA3LDQyLjU5XSxbMjAuMjgsNDIuMzJdLFsyMC41Miw0Mi4yMl0sWzIwLjU5LDQxLjg2XSxbMjAuNDYsNDEuNTJdLFsyMC42MSw0MS4wOV0sWzIxLjAyLDQwLjg0XV1dXX0se246YENyb2F0aWFgLGEyOmBIUmAsYTM6YEhSVmAscDpgSFJgLGw6WzE2LjM3LDQ1LjgxXSxnOltbW1sxNi41Niw0Ni41XSxbMTYuODgsNDYuMzhdLFsxNy42Myw0NS45NV0sWzE4LjQ2LDQ1Ljc2XSxbMTguODMsNDUuOTFdLFsxOS4wNyw0NS41Ml0sWzE5LjM5LDQ1LjI0XSxbMTkuMDEsNDQuODZdLFsxOC41NSw0NS4wOF0sWzE3Ljg2LDQ1LjA3XSxbMTcsNDUuMjNdLFsxNi41Myw0NS4yMV0sWzE2LjMyLDQ1XSxbMTUuOTYsNDUuMjNdLFsxNS43NSw0NC44Ml0sWzE2LjI0LDQ0LjM1XSxbMTYuNDYsNDQuMDRdLFsxNi45Miw0My42N10sWzE3LjMsNDMuNDVdLFsxNy42Nyw0My4wM10sWzE4LjU2LDQyLjY1XSxbMTguNDUsNDIuNDhdLFsxNy41MSw0Mi44NV0sWzE2LjkzLDQzLjIxXSxbMTYuMDIsNDMuNTFdLFsxNS4xNyw0NC4yNF0sWzE1LjM4LDQ0LjMyXSxbMTQuOTIsNDQuNzRdLFsxNC45LDQ1LjA4XSxbMTQuMjYsNDUuMjNdLFsxMy45NSw0NC44XSxbMTMuNjYsNDUuMTRdLFsxMy42OCw0NS40OF0sWzEzLjcyLDQ1LjVdLFsxNC40MSw0NS40N10sWzE0LjYsNDUuNjNdLFsxNC45NCw0NS40N10sWzE1LjMzLDQ1LjQ1XSxbMTUuMzIsNDUuNzNdLFsxNS42Nyw0NS44M10sWzE1Ljc3LDQ2LjI0XSxbMTYuNTYsNDYuNV1dXV19LHtuOmBTd2l0emVybGFuZGAsYTI6YENIYCxhMzpgQ0hFYCxwOmBDSGAsbDpbNy40Niw0Ni43Ml0sZzpbW1tbOS41OSw0Ny41M10sWzkuNjMsNDcuMzVdLFs5LjQ4LDQ3LjFdLFs5LjkzLDQ2LjkyXSxbMTAuNDQsNDYuODldLFsxMC4zNiw0Ni40OF0sWzkuOTIsNDYuMzFdLFs5LjE4LDQ2LjQ0XSxbOC45Nyw0Ni4wNF0sWzguNDksNDYuMDFdLFs4LjMyLDQ2LjE2XSxbNy43Niw0NS44Ml0sWzcuMjcsNDUuNzhdLFs2Ljg0LDQ1Ljk5XSxbNi41LDQ2LjQzXSxbNi4wMiw0Ni4yN10sWzYuMDQsNDYuNzNdLFs2Ljc3LDQ3LjI5XSxbNi43NCw0Ny41NF0sWzcuMTksNDcuNDVdLFs3LjQ3LDQ3LjYyXSxbOC4zMiw0Ny42MV0sWzguNTIsNDcuODNdLFs5LjU5LDQ3LjUzXV1dXX0se246YEx1eGVtYm91cmdgLGEyOmBMVWAsYTM6YExVWGAscDpgTGAsbDpbNi4wOCw0OS43M10sZzpbW1tbNi4wNCw1MC4xM10sWzYuMjQsNDkuOV0sWzYuMTksNDkuNDZdLFs1LjksNDkuNDRdLFs1LjY3LDQ5LjUzXSxbNS43OCw1MC4wOV0sWzYuMDQsNTAuMTNdXV1dfSx7bjpgQmVsZ2l1bWAsYTI6YEJFYCxhMzpgQkVMYCxwOmBCYCxsOls0LjgsNTAuNzldLGc6W1tbWzYuMTYsNTAuOF0sWzYuMDQsNTAuMTNdLFs1Ljc4LDUwLjA5XSxbNS42Nyw0OS41M10sWzQuOCw0OS45OV0sWzQuMjksNDkuOTFdLFszLjU5LDUwLjM4XSxbMy4xMiw1MC43OF0sWzIuNjYsNTAuOF0sWzIuNTEsNTEuMTVdLFszLjMxLDUxLjM1XSxbMy4zMiw1MS4zNV0sWzMuMzEsNTEuMzVdLFs0LjA1LDUxLjI3XSxbNC45Nyw1MS40OF0sWzUuNjEsNTEuMDRdLFs2LjE2LDUwLjhdXV1dfSx7bjpgTmV0aGVybGFuZHNgLGEyOmBOTGAsYTM6YE5MRGAscDpgTkxgLGw6WzUuNjEsNTIuNDJdLGc6W1tbWzYuOTEsNTMuNDhdLFs3LjA5LDUzLjE0XSxbNi44NCw1Mi4yM10sWzYuNTksNTEuODVdLFs1Ljk5LDUxLjg1XSxbNi4xNiw1MC44XSxbNS42MSw1MS4wNF0sWzQuOTcsNTEuNDhdLFs0LjA1LDUxLjI3XSxbMy4zMSw1MS4zNV0sWzMuMzIsNTEuMzVdLFszLjgzLDUxLjYyXSxbNC43MSw1My4wOV0sWzYuMDcsNTMuNTFdLFs2LjkxLDUzLjQ4XV1dXX0se246YFBvcnR1Z2FsYCxhMjpgUFRgLGEzOmBQUlRgLHA6YFBgLGw6Wy04LjI3LDM5LjYxXSxnOltbW1stOS4wMyw0MS44OF0sWy04LjY3LDQyLjEzXSxbLTguMjYsNDIuMjhdLFstOC4wMSw0MS43OV0sWy03LjQyLDQxLjc5XSxbLTcuMjUsNDEuOTJdLFstNi42Nyw0MS44OF0sWy02LjM5LDQxLjM4XSxbLTYuODUsNDEuMTFdLFstNi44Niw0MC4zM10sWy03LjAzLDQwLjE4XSxbLTcuMDcsMzkuNzFdLFstNy41LDM5LjYzXSxbLTcuMSwzOS4wM10sWy03LjM3LDM4LjM3XSxbLTcuMDMsMzguMDhdLFstNy4xNywzNy44XSxbLTcuNTQsMzcuNDNdLFstNy40NSwzNy4xXSxbLTcuODYsMzYuODRdLFstOC4zOCwzNi45OF0sWy04LjksMzYuODddLFstOC43NSwzNy42NV0sWy04Ljg0LDM4LjI3XSxbLTkuMjksMzguMzZdLFstOS41MywzOC43NF0sWy05LjQ1LDM5LjM5XSxbLTkuMDUsMzkuNzZdLFstOC45OCw0MC4xNl0sWy04Ljc3LDQwLjc2XSxbLTguNzksNDEuMThdLFstOC45OSw0MS41NF0sWy05LjAzLDQxLjg4XV1dXX0se246YFNwYWluYCxhMjpgRVNgLGEzOmBFU1BgLHA6YEVgLGw6Wy0zLjQ2LDQwLjA5XSxnOltbW1stNy40NSwzNy4xXSxbLTcuNTQsMzcuNDNdLFstNy4xNywzNy44XSxbLTcuMDMsMzguMDhdLFstNy4zNywzOC4zN10sWy03LjEsMzkuMDNdLFstNy41LDM5LjYzXSxbLTcuMDcsMzkuNzFdLFstNy4wMyw0MC4xOF0sWy02Ljg2LDQwLjMzXSxbLTYuODUsNDEuMTFdLFstNi4zOSw0MS4zOF0sWy02LjY3LDQxLjg4XSxbLTcuMjUsNDEuOTJdLFstNy40Miw0MS43OV0sWy04LjAxLDQxLjc5XSxbLTguMjYsNDIuMjhdLFstOC42Nyw0Mi4xM10sWy05LjAzLDQxLjg4XSxbLTguOTgsNDIuNTldLFstOS4zOSw0My4wM10sWy03Ljk4LDQzLjc1XSxbLTYuNzUsNDMuNTddLFstNS40MSw0My41N10sWy00LjM1LDQzLjRdLFstMy41Miw0My40Nl0sWy0xLjksNDMuNDJdLFstMS41LDQzLjAzXSxbLjM0LDQyLjU4XSxbLjcsNDIuOF0sWzEuODMsNDIuMzRdLFsyLjk5LDQyLjQ3XSxbMy4wNCw0MS44OV0sWzIuMDksNDEuMjNdLFsuODEsNDEuMDFdLFsuNzIsNDAuNjhdLFsuMTEsNDAuMTJdLFstLjI4LDM5LjMxXSxbLjExLDM4Ljc0XSxbLS40NywzOC4yOV0sWy0uNjgsMzcuNjRdLFstMS40NCwzNy40NF0sWy0yLjE1LDM2LjY3XSxbLTMuNDIsMzYuNjZdLFstNC4zNywzNi42OF0sWy01LDM2LjMyXSxbLTUuMzgsMzUuOTVdLFstNS44NywzNi4wM10sWy02LjI0LDM2LjM3XSxbLTYuNTIsMzYuOTRdLFstNy40NSwzNy4xXV1dXX0se246YElyZWxhbmRgLGEyOmBJRWAsYTM6YElSTGAscDpgSVJMYCxsOlstNy44LDUzLjA4XSxnOltbW1stNi4yLDUzLjg3XSxbLTYuMDMsNTMuMTVdLFstNi43OSw1Mi4yNl0sWy04LjU2LDUxLjY3XSxbLTkuOTgsNTEuODJdLFstOS4xNyw1Mi44Nl0sWy05LjY5LDUzLjg4XSxbLTguMzMsNTQuNjZdLFstNy41Nyw1NS4xM10sWy03LjM3LDU0LjZdLFstNy41Nyw1NC4wNl0sWy02Ljk1LDU0LjA3XSxbLTYuMiw1My44N11dXV19LHtuOmBOZXcgQ2FsZWRvbmlhYCxhMjpgTkNgLGEzOmBOQ0xgLHA6YE5DYCxsOlsxNjUuMDgsLTIxLjA2XSxnOltbW1sxNjUuNzgsLTIxLjA4XSxbMTY2LjYsLTIxLjddLFsxNjcuMTIsLTIyLjE2XSxbMTY2Ljc0LC0yMi40XSxbMTY2LjE5LC0yMi4xM10sWzE2NS40NywtMjEuNjhdLFsxNjQuODMsLTIxLjE1XSxbMTY0LjE3LC0yMC40NF0sWzE2NC4wMywtMjAuMTFdLFsxNjQuNDYsLTIwLjEyXSxbMTY1LjAyLC0yMC40Nl0sWzE2NS40NiwtMjAuOF0sWzE2NS43OCwtMjEuMDhdXV1dfSx7bjpgU29sb21vbiBJc2xhbmRzYCxhMjpgU0JgLGEzOmBTTEJgLHA6YFNCYCxsOlsxNTkuMTcsLTguMDNdLGc6W1tbWzE2Mi4xMiwtMTAuNDhdLFsxNjIuNCwtMTAuODNdLFsxNjEuNywtMTAuODJdLFsxNjEuMzIsLTEwLjJdLFsxNjEuOTIsLTEwLjQ1XSxbMTYyLjEyLC0xMC40OF1dXSxbW1sxNjEuNjgsLTkuNl0sWzE2MS41MywtOS43OF0sWzE2MC43OSwtOC45Ml0sWzE2MC41OCwtOC4zMl0sWzE2MC45MiwtOC4zMl0sWzE2MS4yOCwtOS4xMl0sWzE2MS42OCwtOS42XV1dLFtbWzE2MC44NSwtOS44N10sWzE2MC40NiwtOS45XSxbMTU5Ljg1LC05Ljc5XSxbMTU5LjY0LC05LjY0XSxbMTU5LjcsLTkuMjRdLFsxNjAuMzYsLTkuNF0sWzE2MC42OSwtOS42MV0sWzE2MC44NSwtOS44N11dXSxbW1sxNTkuNjQsLTguMDJdLFsxNTkuODgsLTguMzRdLFsxNTkuOTIsLTguNTRdLFsxNTkuMTMsLTguMTFdLFsxNTguNTksLTcuNzVdLFsxNTguMjEsLTcuNDJdLFsxNTguMzYsLTcuMzJdLFsxNTguODIsLTcuNTZdLFsxNTkuNjQsLTguMDJdXV0sW1tbMTU3LjE0LC03LjAyXSxbMTU3LjU0LC03LjM1XSxbMTU3LjM0LC03LjRdLFsxNTYuOSwtNy4xOF0sWzE1Ni40OSwtNi43N10sWzE1Ni41NCwtNi42XSxbMTU3LjE0LC03LjAyXV1dXX0se246YE5ldyBaZWFsYW5kYCxhMjpgTlpgLGEzOmBOWkxgLHA6YE5aYCxsOlsxNzIuNzksLTM5Ljc2XSxnOltbW1sxNzYuODksLTQwLjA3XSxbMTc2LjUxLC00MC42XSxbMTc2LjAxLC00MS4yOV0sWzE3NS4yNCwtNDEuNjldLFsxNzUuMDcsLTQxLjQzXSxbMTc0LjY1LC00MS4yOF0sWzE3NS4yMywtNDAuNDZdLFsxNzQuOSwtMzkuOTFdLFsxNzMuODIsLTM5LjUxXSxbMTczLjg1LC0zOS4xNV0sWzE3NC41NywtMzguOF0sWzE3NC43NCwtMzguMDNdLFsxNzQuNywtMzcuMzhdLFsxNzQuMjksLTM2LjcxXSxbMTc0LjMyLC0zNi41M10sWzE3My44NCwtMzYuMTJdLFsxNzMuMDUsLTM1LjI0XSxbMTcyLjY0LC0zNC41M10sWzE3My4wMSwtMzQuNDVdLFsxNzMuNTUsLTM1LjAxXSxbMTc0LjMzLC0zNS4yN10sWzE3NC42MSwtMzYuMTZdLFsxNzUuMzQsLTM3LjIxXSxbMTc1LjM2LC0zNi41M10sWzE3NS44MSwtMzYuOF0sWzE3NS45NiwtMzcuNTZdLFsxNzYuNzYsLTM3Ljg4XSxbMTc3LjQ0LC0zNy45Nl0sWzE3OC4wMSwtMzcuNThdLFsxNzguNTIsLTM3LjddLFsxNzguMjcsLTM4LjU4XSxbMTc3Ljk3LC0zOS4xN10sWzE3Ny4yMSwtMzkuMTVdLFsxNzYuOTQsLTM5LjQ1XSxbMTc3LjAzLC0zOS44OF0sWzE3Ni44OSwtNDAuMDddXV0sW1tbMTY5LjY3LC00My41Nl0sWzE3MC41MiwtNDMuMDNdLFsxNzEuMTMsLTQyLjUxXSxbMTcxLjU3LC00MS43N10sWzE3MS45NSwtNDEuNTFdLFsxNzIuMSwtNDAuOTZdLFsxNzIuOCwtNDAuNDldLFsxNzMuMDIsLTQwLjkyXSxbMTczLjI1LC00MS4zM10sWzE3My45NiwtNDAuOTNdLFsxNzQuMjUsLTQxLjM1XSxbMTc0LjI1LC00MS43N10sWzE3My44OCwtNDIuMjNdLFsxNzMuMjIsLTQyLjk3XSxbMTcyLjcxLC00My4zN10sWzE3My4wOCwtNDMuODVdLFsxNzIuMzEsLTQzLjg3XSxbMTcxLjQ1LC00NC4yNF0sWzE3MS4xOSwtNDQuOV0sWzE3MC42MiwtNDUuOTFdLFsxNjkuODMsLTQ2LjM2XSxbMTY5LjMzLC00Ni42NF0sWzE2OC40MSwtNDYuNjJdLFsxNjcuNzYsLTQ2LjI5XSxbMTY2LjY4LC00Ni4yMl0sWzE2Ni41MSwtNDUuODVdLFsxNjcuMDUsLTQ1LjExXSxbMTY4LjMsLTQ0LjEyXSxbMTY4Ljk1LC00My45NF0sWzE2OS42NywtNDMuNTZdXV1dfSx7bjpgQXVzdHJhbGlhYCxhMjpgQVVgLGEzOmBBVVNgLHA6YEFVYCxsOlsxMzQuMDUsLTI0LjEzXSxnOltbW1sxNDcuNjksLTQwLjgxXSxbMTQ4LjI5LC00MC44OF0sWzE0OC4zNiwtNDIuMDZdLFsxNDguMDIsLTQyLjQxXSxbMTQ3LjkxLC00My4yMV0sWzE0Ny41NiwtNDIuOTRdLFsxNDYuODcsLTQzLjYzXSxbMTQ2LjY2LC00My41OF0sWzE0Ni4wNSwtNDMuNTVdLFsxNDUuNDMsLTQyLjY5XSxbMTQ1LjMsLTQyLjAzXSxbMTQ0LjcyLC00MS4xNl0sWzE0NC43NCwtNDAuN10sWzE0NS40LC00MC43OV0sWzE0Ni4zNiwtNDEuMTRdLFsxNDYuOTEsLTQxXSxbMTQ3LjY5LC00MC44MV1dXSxbW1sxMjYuMTUsLTMyLjIyXSxbMTI1LjA5LC0zMi43M10sWzEyNC4yMiwtMzIuOTZdLFsxMjQuMDMsLTMzLjQ4XSxbMTIzLjY2LC0zMy44OV0sWzEyMi44MSwtMzMuOTFdLFsxMjIuMTgsLTM0XSxbMTIxLjMsLTMzLjgyXSxbMTIwLjU4LC0zMy45M10sWzExOS44OSwtMzMuOThdLFsxMTkuMywtMzQuNTFdLFsxMTkuMDEsLTM0LjQ2XSxbMTE4LjUxLC0zNC43NV0sWzExOC4wMiwtMzUuMDZdLFsxMTcuMywtMzUuMDNdLFsxMTYuNjMsLTM1LjAzXSxbMTE1LjU2LC0zNC4zOV0sWzExNS4wMywtMzQuMl0sWzExNS4wNSwtMzMuNjJdLFsxMTUuNTUsLTMzLjQ5XSxbMTE1LjcxLC0zMy4yNl0sWzExNS42OCwtMzIuOV0sWzExNS44LC0zMi4yMV0sWzExNS42OSwtMzEuNjFdLFsxMTUuMTYsLTMwLjZdLFsxMTUsLTMwLjAzXSxbMTE1LjA0LC0yOS40Nl0sWzExNC42NCwtMjguODFdLFsxMTQuNjIsLTI4LjUyXSxbMTE0LjE3LC0yOC4xMl0sWzExNC4wNSwtMjcuMzNdLFsxMTMuNDgsLTI2LjU0XSxbMTEzLjM0LC0yNi4xMl0sWzExMy43OCwtMjYuNTVdLFsxMTMuNDQsLTI1LjYyXSxbMTEzLjk0LC0yNS45MV0sWzExNC4yMywtMjYuM10sWzExNC4yMiwtMjUuNzldLFsxMTMuNzIsLTI1XSxbMTEzLjYzLC0yNC42OF0sWzExMy4zOSwtMjQuMzhdLFsxMTMuNSwtMjMuODFdLFsxMTMuNzEsLTIzLjU2XSxbMTEzLjg0LC0yMy4wNl0sWzExMy43NCwtMjIuNDhdLFsxMTQuMTUsLTIxLjc2XSxbMTE0LjIzLC0yMi41Ml0sWzExNC42NSwtMjEuODNdLFsxMTUuNDYsLTIxLjVdLFsxMTUuOTUsLTIxLjA3XSxbMTE2LjcxLC0yMC43XSxbMTE3LjE3LC0yMC42Ml0sWzExNy40NCwtMjAuNzVdLFsxMTguMjMsLTIwLjM3XSxbMTE4Ljg0LC0yMC4yNl0sWzExOC45OSwtMjAuMDRdLFsxMTkuMjUsLTE5Ljk1XSxbMTE5LjgxLC0xOS45OF0sWzEyMC44NiwtMTkuNjhdLFsxMjEuNCwtMTkuMjRdLFsxMjEuNjYsLTE4LjcxXSxbMTIyLjI0LC0xOC4yXSxbMTIyLjI5LC0xNy44XSxbMTIyLjMxLC0xNy4yNV0sWzEyMy4wMSwtMTYuNDFdLFsxMjMuNDMsLTE3LjI3XSxbMTIzLjg2LC0xNy4wN10sWzEyMy41LC0xNi42XSxbMTIzLjgyLC0xNi4xMV0sWzEyNC4yNiwtMTYuMzNdLFsxMjQuMzgsLTE1LjU3XSxbMTI0LjkzLC0xNS4wOF0sWzEyNS4xNywtMTQuNjhdLFsxMjUuNjcsLTE0LjUxXSxbMTI1LjY5LC0xNC4yM10sWzEyNi4xMywtMTQuMzVdLFsxMjYuMTQsLTE0LjFdLFsxMjYuNTgsLTEzLjk1XSxbMTI3LjA3LC0xMy44Ml0sWzEyNy44LC0xNC4yOF0sWzEyOC4zNiwtMTQuODddLFsxMjguOTksLTE0Ljg4XSxbMTI5LjYyLC0xNC45N10sWzEyOS40MSwtMTQuNDJdLFsxMjkuODksLTEzLjYyXSxbMTMwLjM0LC0xMy4zNl0sWzEzMC4xOCwtMTMuMTFdLFsxMzAuNjIsLTEyLjU0XSxbMTMxLjIyLC0xMi4xOF0sWzEzMS43NCwtMTIuM10sWzEzMi41OCwtMTIuMTFdLFsxMzIuNTYsLTExLjZdLFsxMzEuODIsLTExLjI3XSxbMTMyLjM2LC0xMS4xM10sWzEzMy4wMiwtMTEuMzhdLFsxMzMuNTUsLTExLjc5XSxbMTM0LjM5LC0xMi4wNF0sWzEzNC42OCwtMTEuOTRdLFsxMzUuMywtMTIuMjVdLFsxMzUuODgsLTExLjk2XSxbMTM2LjI2LC0xMi4wNV0sWzEzNi40OSwtMTEuODZdLFsxMzYuOTUsLTEyLjM1XSxbMTM2LjY5LC0xMi44OV0sWzEzNi4zMSwtMTMuMjldLFsxMzUuOTYsLTEzLjMyXSxbMTM2LjA4LC0xMy43Ml0sWzEzNS43OCwtMTQuMjJdLFsxMzUuNDMsLTE0LjcyXSxbMTM1LjUsLTE1XSxbMTM2LjMsLTE1LjU1XSxbMTM3LjA3LC0xNS44N10sWzEzNy41OCwtMTYuMjJdLFsxMzguMywtMTYuODFdLFsxMzguNTksLTE2LjgxXSxbMTM5LjExLC0xNy4wNl0sWzEzOS4yNiwtMTcuMzddLFsxNDAuMjIsLTE3LjcxXSxbMTQwLjg4LC0xNy4zN10sWzE0MS4wNywtMTYuODNdLFsxNDEuMjcsLTE2LjM5XSxbMTQxLjQsLTE1Ljg0XSxbMTQxLjcsLTE1LjA0XSxbMTQxLjU2LC0xNC41Nl0sWzE0MS42NCwtMTQuMjddLFsxNDEuNTIsLTEzLjddLFsxNDEuNjUsLTEyLjk0XSxbMTQxLjg0LC0xMi43NF0sWzE0MS42OSwtMTIuNDFdLFsxNDEuOTMsLTExLjg4XSxbMTQyLjEyLC0xMS4zM10sWzE0Mi4xNCwtMTEuMDRdLFsxNDIuNTIsLTEwLjY3XSxbMTQyLjgsLTExLjE2XSxbMTQyLjg3LC0xMS43OF0sWzE0My4xMiwtMTEuOTFdLFsxNDMuMTYsLTEyLjMzXSxbMTQzLjUyLC0xMi44M10sWzE0My42LC0xMy40XSxbMTQzLjU2LC0xMy43Nl0sWzE0My45MiwtMTQuNTVdLFsxNDQuNTYsLTE0LjE3XSxbMTQ0Ljg5LC0xNC41OV0sWzE0NS4zNywtMTQuOThdLFsxNDUuMjcsLTE1LjQzXSxbMTQ1LjQ5LC0xNi4yOV0sWzE0NS42NCwtMTYuNzhdLFsxNDUuODksLTE2LjkxXSxbMTQ2LjE2LC0xNy43Nl0sWzE0Ni4wNiwtMTguMjhdLFsxNDYuMzksLTE4Ljk2XSxbMTQ3LjQ3LC0xOS40OF0sWzE0OC4xOCwtMTkuOTZdLFsxNDguODUsLTIwLjM5XSxbMTQ4LjcyLC0yMC42M10sWzE0OS4yOSwtMjEuMjZdLFsxNDkuNjgsLTIyLjM0XSxbMTUwLjA4LC0yMi4xMl0sWzE1MC40OCwtMjIuNTZdLFsxNTAuNzMsLTIyLjRdLFsxNTAuOSwtMjMuNDZdLFsxNTEuNjEsLTI0LjA4XSxbMTUyLjA3LC0yNC40Nl0sWzE1Mi44NiwtMjUuMjddLFsxNTMuMTQsLTI2LjA3XSxbMTUzLjE2LC0yNi42NF0sWzE1My4wOSwtMjcuMjZdLFsxNTMuNTcsLTI4LjExXSxbMTUzLjUxLC0yOV0sWzE1My4zNCwtMjkuNDZdLFsxNTMuMDcsLTMwLjM1XSxbMTUzLjA5LC0zMC45Ml0sWzE1Mi44OSwtMzEuNjRdLFsxNTIuNDUsLTMyLjU1XSxbMTUxLjcxLC0zMy4wNF0sWzE1MS4zNCwtMzMuODJdLFsxNTEuMDEsLTM0LjMxXSxbMTUwLjcxLC0zNS4xN10sWzE1MC4zMywtMzUuNjddLFsxNTAuMDgsLTM2LjQyXSxbMTQ5Ljk1LC0zNy4xMV0sWzE1MCwtMzcuNDNdLFsxNDkuNDIsLTM3Ljc3XSxbMTQ4LjMsLTM3LjgxXSxbMTQ3LjM4LC0zOC4yMl0sWzE0Ni45MiwtMzguNjFdLFsxNDYuMzIsLTM5LjA0XSxbMTQ1LjQ5LC0zOC41OV0sWzE0NC44OCwtMzguNDJdLFsxNDUuMDMsLTM3LjldLFsxNDQuNDksLTM4LjA5XSxbMTQzLjYxLC0zOC44MV0sWzE0Mi43NSwtMzguNTRdLFsxNDIuMTgsLTM4LjM4XSxbMTQxLjYxLC0zOC4zMV0sWzE0MC42NCwtMzguMDJdLFsxMzkuOTksLTM3LjRdLFsxMzkuODEsLTM2LjY0XSxbMTM5LjU3LC0zNi4xNF0sWzEzOS4wOCwtMzUuNzNdLFsxMzguMTIsLTM1LjYxXSxbMTM4LjQ1LC0zNS4xM10sWzEzOC4yMSwtMzQuMzhdLFsxMzcuNzIsLTM1LjA4XSxbMTM2LjgzLC0zNS4yNl0sWzEzNy4zNSwtMzQuNzFdLFsxMzcuNSwtMzQuMTNdLFsxMzcuODksLTMzLjY0XSxbMTM3LjgxLC0zMi45XSxbMTM3LC0zMy43NV0sWzEzNi4zNywtMzQuMDldLFsxMzUuOTksLTM0Ljg5XSxbMTM1LjIxLC0zNC40OF0sWzEzNS4yNCwtMzMuOTVdLFsxMzQuNjEsLTMzLjIyXSxbMTM0LjA5LC0zMi44NV0sWzEzNC4yNywtMzIuNjJdLFsxMzIuOTksLTMyLjAxXSxbMTMyLjI5LC0zMS45OF0sWzEzMS4zMywtMzEuNV0sWzEyOS41NCwtMzEuNTldLFsxMjguMjQsLTMxLjk1XSxbMTI3LjEsLTMyLjI4XSxbMTI2LjE1LC0zMi4yMl1dXV19LHtuOmBTcmkgTGFua2FgLGEyOmBMS2AsYTM6YExLQWAscDpgTEtgLGw6WzgwLjcsNy41OF0sZzpbW1tbODEuNzksNy41Ml0sWzgxLjY0LDYuNDhdLFs4MS4yMiw2LjJdLFs4MC4zNSw1Ljk3XSxbNzkuODcsNi43Nl0sWzc5LjcsOC4yXSxbODAuMTUsOS44Ml0sWzgwLjg0LDkuMjddLFs4MS4zLDguNTZdLFs4MS43OSw3LjUyXV1dXX0se246YENoaW5hYCxhMjpgQ05gLGEzOmBDSE5gLHA6YENOYCxsOlsxMDYuMzQsMzIuNV0sZzpbW1tbMTA5LjQ4LDE4LjJdLFsxMDguNjYsMTguNTFdLFsxMDguNjMsMTkuMzddLFsxMDkuMTIsMTkuODJdLFsxMTAuMjEsMjAuMV0sWzExMC43OSwyMC4wOF0sWzExMS4wMSwxOS43XSxbMTEwLjU3LDE5LjI2XSxbMTEwLjM0LDE4LjY4XSxbMTA5LjQ4LDE4LjJdXV0sW1tbODAuMjYsNDIuMzVdLFs4MC4xOCw0Mi45Ml0sWzgwLjg3LDQzLjE4XSxbNzkuOTcsNDQuOTJdLFs4MS45NSw0NS4zMl0sWzgyLjQ2LDQ1LjU0XSxbODMuMTgsNDcuMzNdLFs4NS4xNiw0N10sWzg1LjcyLDQ3LjQ1XSxbODUuNzcsNDguNDZdLFs4Ni42LDQ4LjU1XSxbODcuMzYsNDkuMjFdLFs4Ny43NSw0OS4zXSxbODguMDEsNDguNl0sWzg4Ljg1LDQ4LjA3XSxbOTAuMjgsNDcuNjldLFs5MC45Nyw0Ni44OV0sWzkwLjU5LDQ1LjcyXSxbOTAuOTUsNDUuMjldLFs5Mi4xMyw0NS4xMl0sWzkzLjQ4LDQ0Ljk4XSxbOTQuNjksNDQuMzVdLFs5NS4zMSw0NC4yNF0sWzk1Ljc2LDQzLjMyXSxbOTYuMzUsNDIuNzNdLFs5Ny40NSw0Mi43NV0sWzk5LjUyLDQyLjUyXSxbMTAwLjg1LDQyLjY2XSxbMTAxLjgzLDQyLjUxXSxbMTAzLjMxLDQxLjkxXSxbMTA0LjUyLDQxLjkxXSxbMTA0Ljk2LDQxLjZdLFsxMDYuMTMsNDIuMTNdLFsxMDcuNzQsNDIuNDhdLFsxMDkuMjQsNDIuNTJdLFsxMTAuNDEsNDIuODddLFsxMTEuMTMsNDMuNDFdLFsxMTEuODMsNDMuNzRdLFsxMTEuNjcsNDQuMDddLFsxMTEuMzUsNDQuNDZdLFsxMTEuODcsNDUuMV0sWzExMi40NCw0NS4wMV0sWzExMy40Niw0NC44MV0sWzExNC40Niw0NS4zNF0sWzExNS45OSw0NS43M10sWzExNi43Miw0Ni4zOV0sWzExNy40Miw0Ni42N10sWzExOC44Nyw0Ni44MV0sWzExOS42Niw0Ni42OV0sWzExOS43Nyw0Ny4wNV0sWzExOC44Nyw0Ny43NV0sWzExOC4wNiw0OC4wN10sWzExNy4zLDQ3LjddLFsxMTYuMzEsNDcuODVdLFsxMTUuNzQsNDcuNzNdLFsxMTUuNDksNDguMTRdLFsxMTYuMTksNDkuMTNdLFsxMTYuNjgsNDkuODldLFsxMTcuODgsNDkuNTFdLFsxMTkuMjksNTAuMTRdLFsxMTkuMjgsNTAuNThdLFsxMjAuMTgsNTEuNjRdLFsxMjAuNzQsNTEuOTZdLFsxMjAuNzMsNTIuNTJdLFsxMjAuMTgsNTIuNzVdLFsxMjEsNTMuMjVdLFsxMjIuMjUsNTMuNDNdLFsxMjMuNTcsNTMuNDZdLFsxMjUuMDcsNTMuMTZdLFsxMjUuOTUsNTIuNzldLFsxMjYuNTYsNTEuNzhdLFsxMjYuOTQsNTEuMzVdLFsxMjcuMjksNTAuNzRdLFsxMjcuNjYsNDkuNzZdLFsxMjkuNCw0OS40NF0sWzEzMC41OCw0OC43M10sWzEzMC45OSw0Ny43OV0sWzEzMi41MSw0Ny43OV0sWzEzMy4zNyw0OC4xOF0sWzEzNS4wMyw0OC40OF0sWzEzNC41LDQ3LjU4XSxbMTM0LjExLDQ3LjIxXSxbMTMzLjc3LDQ2LjEyXSxbMTMzLjEsNDUuMTRdLFsxMzEuODgsNDUuMzJdLFsxMzEuMDMsNDQuOTddLFsxMzEuMjksNDQuMTFdLFsxMzEuMTQsNDIuOTNdLFsxMzAuNjMsNDIuOV0sWzEzMC42NCw0Mi40XSxbMTI5Ljk5LDQyLjk5XSxbMTI5LjYsNDIuNDJdLFsxMjguMDUsNDEuOTldLFsxMjguMjEsNDEuNDddLFsxMjcuMzQsNDEuNV0sWzEyNi44Nyw0MS44Ml0sWzEyNi4xOCw0MS4xMV0sWzEyNS4wOCw0MC41N10sWzEyNC4yNywzOS45M10sWzEyMi44NywzOS42NF0sWzEyMi4xMywzOS4xN10sWzEyMS4wNSwzOC45XSxbMTIxLjU5LDM5LjM2XSxbMTIxLjM4LDM5Ljc1XSxbMTIyLjE3LDQwLjQyXSxbMTIxLjY0LDQwLjk1XSxbMTIwLjc3LDQwLjU5XSxbMTE5LjY0LDM5LjldLFsxMTkuMDIsMzkuMjVdLFsxMTguMDQsMzkuMl0sWzExNy41MywzOC43NF0sWzExOC4wNiwzOC4wNl0sWzExOC44OCwzNy45XSxbMTE4LjkxLDM3LjQ1XSxbMTE5LjcsMzcuMTZdLFsxMjAuODIsMzcuODddLFsxMjEuNzEsMzcuNDhdLFsxMjIuMzYsMzcuNDVdLFsxMjIuNTIsMzYuOTNdLFsxMjEuMSwzNi42NV0sWzEyMC42NCwzNi4xMV0sWzExOS42NiwzNS42MV0sWzExOS4xNSwzNC45MV0sWzEyMC4yMywzNC4zNl0sWzEyMC42MiwzMy4zOF0sWzEyMS4yMywzMi40Nl0sWzEyMS45MSwzMS42OV0sWzEyMS44OSwzMC45NV0sWzEyMS4yNiwzMC42OF0sWzEyMS41LDMwLjE0XSxbMTIyLjA5LDI5LjgzXSxbMTIxLjk0LDI5LjAyXSxbMTIxLjY4LDI4LjIzXSxbMTIxLjEzLDI4LjE0XSxbMTIwLjQsMjcuMDVdLFsxMTkuNTksMjUuNzRdLFsxMTguNjYsMjQuNTVdLFsxMTcuMjgsMjMuNjJdLFsxMTUuODksMjIuNzhdLFsxMTQuNzYsMjIuNjddLFsxMTQuMTUsMjIuMjJdLFsxMTMuODEsMjIuNTVdLFsxMTMuMjQsMjIuMDVdLFsxMTEuODQsMjEuNTVdLFsxMTAuNzksMjEuNF0sWzExMC40NCwyMC4zNF0sWzEwOS44OSwyMC4yOF0sWzEwOS42MywyMS4wMV0sWzEwOS44NiwyMS40XSxbMTA4LjUyLDIxLjcyXSxbMTA4LjA1LDIxLjU1XSxbMTA3LjA0LDIxLjgxXSxbMTA2LjU3LDIyLjIyXSxbMTA2LjczLDIyLjc5XSxbMTA1LjgxLDIyLjk4XSxbMTA1LjMzLDIzLjM1XSxbMTA0LjQ4LDIyLjgyXSxbMTAzLjUsMjIuN10sWzEwMi43MSwyMi43MV0sWzEwMi4xNywyMi40Nl0sWzEwMS42NSwyMi4zMl0sWzEwMS44LDIxLjE3XSxbMTAxLjI3LDIxLjJdLFsxMDEuMTgsMjEuNDRdLFsxMDEuMTUsMjEuODVdLFsxMDAuNDIsMjEuNTZdLFs5OS45OCwyMS43NF0sWzk5LjI0LDIyLjEyXSxbOTkuNTMsMjIuOTVdLFs5OC45LDIzLjE0XSxbOTguNjYsMjQuMDZdLFs5Ny42LDIzLjldLFs5Ny43MiwyNS4wOF0sWzk4LjY3LDI1LjkyXSxbOTguNzEsMjYuNzRdLFs5OC42OCwyNy41MV0sWzk4LjI1LDI3Ljc1XSxbOTcuOTEsMjguMzRdLFs5Ny4zMywyOC4yNl0sWzk2LjI1LDI4LjQxXSxbOTYuNTksMjguODNdLFs5Ni4xMiwyOS40NV0sWzk1LjQsMjkuMDNdLFs5NC41NywyOS4yOF0sWzkzLjQxLDI4LjY0XSxbOTIuNSwyNy45XSxbOTEuNywyNy43N10sWzkxLjI2LDI4LjA0XSxbOTAuNzMsMjguMDZdLFs5MC4wMiwyOC4zXSxbODkuNDgsMjguMDRdLFs4OC44MSwyNy4zXSxbODguNzMsMjguMDldLFs4OC4xMiwyNy44OF0sWzg2Ljk1LDI3Ljk3XSxbODUuODIsMjguMl0sWzg1LjAxLDI4LjY0XSxbODQuMjMsMjguODRdLFs4My45LDI5LjMyXSxbODMuMzQsMjkuNDZdLFs4Mi4zMywzMC4xMl0sWzgxLjUzLDMwLjQyXSxbODEuMTEsMzAuMThdLFs3OS43MiwzMC44OF0sWzc4Ljc0LDMxLjUyXSxbNzguNDYsMzIuNjJdLFs3OS4xOCwzMi40OF0sWzc5LjIxLDMyLjk5XSxbNzguODEsMzMuNTFdLFs3OC45MSwzNC4zMl0sWzc3Ljg0LDM1LjQ5XSxbNzYuMTksMzUuOV0sWzc1LjksMzYuNjddLFs3NS4xNiwzNy4xM10sWzc0Ljk4LDM3LjQyXSxbNzQuODMsMzcuOTldLFs3NC44NiwzOC4zOF0sWzc0LjI2LDM4LjYxXSxbNzMuOTMsMzguNTFdLFs3My42OCwzOS40M10sWzczLjk2LDM5LjY2XSxbNzMuODIsMzkuODldLFs3NC43OCw0MC4zN10sWzc1LjQ3LDQwLjU2XSxbNzYuNTMsNDAuNDNdLFs3Ni45LDQxLjA3XSxbNzguMTksNDEuMTldLFs3OC41NCw0MS41OF0sWzgwLjEyLDQyLjEyXSxbODAuMjYsNDIuMzVdXV1dfSx7bjpgVGFpd2FuYCxhMjpgQ04tVFdgLGEzOmBUV05gLHA6YFRXYCxsOlsxMjAuODcsMjMuNjVdLGc6W1tbWzEyMS43OCwyNC4zOV0sWzEyMS4xOCwyMi43OV0sWzEyMC43NSwyMS45N10sWzEyMC4yMiwyMi44MV0sWzEyMC4xMSwyMy41Nl0sWzEyMC42OSwyNC41NF0sWzEyMS41LDI1LjNdLFsxMjEuOTUsMjVdLFsxMjEuNzgsMjQuMzldXV1dfSx7bjpgSXRhbHlgLGEyOmBJVGAsYTM6YElUQWAscDpgSWAsbDpbMTEuMDgsNDQuNzNdLGc6W1tbWzEwLjQ0LDQ2Ljg5XSxbMTEuMDUsNDYuNzVdLFsxMS4xNiw0Ni45NF0sWzEyLjE1LDQ3LjEyXSxbMTIuMzgsNDYuNzddLFsxMy44MSw0Ni41MV0sWzEzLjcsNDYuMDJdLFsxMy45NCw0NS41OV0sWzEzLjE0LDQ1Ljc0XSxbMTIuMzMsNDUuMzhdLFsxMi4zOCw0NC44OV0sWzEyLjI2LDQ0LjZdLFsxMi41OSw0NC4wOV0sWzEzLjUzLDQzLjU5XSxbMTQuMDMsNDIuNzZdLFsxNS4xNCw0MS45Nl0sWzE1LjkzLDQxLjk2XSxbMTYuMTcsNDEuNzRdLFsxNS44OSw0MS41NF0sWzE2Ljc5LDQxLjE4XSxbMTcuNTIsNDAuODhdLFsxOC4zOCw0MC4zNl0sWzE4LjQ4LDQwLjE3XSxbMTguMjksMzkuODFdLFsxNy43NCw0MC4yOF0sWzE2Ljg3LDQwLjQ0XSxbMTYuNDUsMzkuOF0sWzE3LjE3LDM5LjQyXSxbMTcuMDUsMzguOV0sWzE2LjY0LDM4Ljg0XSxbMTYuMSwzNy45OV0sWzE1LjY4LDM3LjkxXSxbMTUuNjksMzguMjFdLFsxNS44OSwzOC43NV0sWzE2LjExLDM4Ljk2XSxbMTUuNzIsMzkuNTRdLFsxNS40MSw0MC4wNV0sWzE1LDQwLjE3XSxbMTQuNyw0MC42XSxbMTQuMDYsNDAuNzldLFsxMy42Myw0MS4xOV0sWzEyLjg5LDQxLjI1XSxbMTIuMTEsNDEuN10sWzExLjE5LDQyLjM2XSxbMTAuNTEsNDIuOTNdLFsxMC4yLDQzLjkyXSxbOS43LDQ0LjA0XSxbOC44OSw0NC4zN10sWzguNDMsNDQuMjNdLFs3Ljg1LDQzLjc3XSxbNy40NCw0My42OV0sWzcuNTUsNDQuMTNdLFs3LjAxLDQ0LjI1XSxbNi43NSw0NS4wM10sWzcuMSw0NS4zM10sWzYuOCw0NS43MV0sWzYuODQsNDUuOTldLFs3LjI3LDQ1Ljc4XSxbNy43Niw0NS44Ml0sWzguMzIsNDYuMTZdLFs4LjQ5LDQ2LjAxXSxbOC45Nyw0Ni4wNF0sWzkuMTgsNDYuNDRdLFs5LjkyLDQ2LjMxXSxbMTAuMzYsNDYuNDhdLFsxMC40NCw0Ni44OV1dXSxbW1sxNC43NiwzOC4xNF0sWzE1LjUyLDM4LjIzXSxbMTUuMTYsMzcuNDRdLFsxNS4zMSwzNy4xM10sWzE1LjEsMzYuNjJdLFsxNC4zNCwzN10sWzEzLjgzLDM3LjFdLFsxMi40MywzNy42MV0sWzEyLjU3LDM4LjEzXSxbMTMuNzQsMzguMDNdLFsxNC43NiwzOC4xNF1dXSxbW1s4LjcxLDQwLjldLFs5LjIxLDQxLjIxXSxbOS44MSw0MC41XSxbOS42NywzOS4xOF0sWzkuMjEsMzkuMjRdLFs4LjgxLDM4LjkxXSxbOC40MywzOS4xN10sWzguMzksNDAuMzhdLFs4LjE2LDQwLjk1XSxbOC43MSw0MC45XV1dXX0se246YERlbm1hcmtgLGEyOmBES2AsYTM6YEROS2AscDpgREtgLGw6WzkuMDIsNTUuOTddLGc6W1tbWzkuOTIsNTQuOThdLFs5LjI4LDU0LjgzXSxbOC41Myw1NC45Nl0sWzguMTIsNTUuNTJdLFs4LjA5LDU2LjU0XSxbOC4yNiw1Ni44MV0sWzguNTQsNTcuMTFdLFs5LjQyLDU3LjE3XSxbOS43OCw1Ny40NV0sWzEwLjU4LDU3LjczXSxbMTAuNTUsNTcuMjJdLFsxMC4yNSw1Ni44OV0sWzEwLjM3LDU2LjYxXSxbMTAuOTEsNTYuNDZdLFsxMC42Nyw1Ni4wOF0sWzEwLjM3LDU2LjE5XSxbOS42NSw1NS40N10sWzkuOTIsNTQuOThdXV0sW1tbMTIuMzcsNTYuMTFdLFsxMi42OSw1NS42MV0sWzEyLjA5LDU0LjhdLFsxMS4wNCw1NS4zNl0sWzEwLjksNTUuNzhdLFsxMi4zNyw1Ni4xMV1dXV19LHtuOmBVbml0ZWQgS2luZ2RvbWAsYTI6YEdCYCxhMzpgR0JSYCxwOmBHQmAsbDpbLTIuMTIsNTQuNF0sZzpbW1tbLTYuMiw1My44N10sWy02Ljk1LDU0LjA3XSxbLTcuNTcsNTQuMDZdLFstNy4zNyw1NC42XSxbLTcuNTcsNTUuMTNdLFstNi43Myw1NS4xN10sWy01LjY2LDU0LjU1XSxbLTYuMiw1My44N11dXSxbW1stMy4wOSw1My40XSxbLTIuOTUsNTMuOTldLFstMy42MSw1NC42XSxbLTMuNjMsNTQuNjJdLFstNC44NCw1NC43OV0sWy01LjA4LDU1LjA2XSxbLTQuNzIsNTUuNTFdLFstNS4wNSw1NS43OF0sWy01LjU5LDU1LjMxXSxbLTUuNjQsNTYuMjhdLFstNi4xNSw1Ni43OV0sWy01Ljc5LDU3LjgyXSxbLTUuMDEsNTguNjNdLFstNC4yMSw1OC41NV0sWy0zLjAxLDU4LjY0XSxbLTQuMDcsNTcuNTVdLFstMy4wNiw1Ny42OV0sWy0xLjk2LDU3LjY4XSxbLTIuMjIsNTYuODddLFstMy4xMiw1NS45N10sWy0yLjA5LDU1LjkxXSxbLTIuMDEsNTUuOF0sWy0xLjExLDU0LjYyXSxbLS40Myw1NC40Nl0sWy4xOCw1My4zM10sWy40Nyw1Mi45M10sWzEuNjgsNTIuNzRdLFsxLjU2LDUyLjFdLFsxLjA1LDUxLjgxXSxbMS40NSw1MS4yOV0sWy41NSw1MC43N10sWy0uNzksNTAuNzddLFstMi40OSw1MC41XSxbLTIuOTYsNTAuN10sWy0zLjYyLDUwLjIzXSxbLTQuNTQsNTAuMzRdLFstNS4yNSw0OS45Nl0sWy01Ljc4LDUwLjE2XSxbLTQuMzEsNTEuMjFdLFstMy40MSw1MS40M10sWy0zLjQyLDUxLjQzXSxbLTQuOTgsNTEuNTldLFstNS4yNyw1MS45OV0sWy00LjIyLDUyLjNdLFstNC43Nyw1Mi44NF0sWy00LjU4LDUzLjVdLFstMy4wOSw1My40XV1dXX0se246YEljZWxhbmRgLGEyOmBJU2AsYTM6YElTTGAscDpgSVNgLGw6Wy0xOC42Nyw2NC43OF0sZzpbW1tbLTE0LjUxLDY2LjQ2XSxbLTE0Ljc0LDY1LjgxXSxbLTEzLjYxLDY1LjEzXSxbLTE0LjkxLDY0LjM2XSxbLTE3Ljc5LDYzLjY4XSxbLTE4LjY2LDYzLjVdLFstMTkuOTcsNjMuNjRdLFstMjIuNzYsNjMuOTZdLFstMjEuNzgsNjQuNF0sWy0yMy45Niw2NC44OV0sWy0yMi4xOCw2NS4wOF0sWy0yMi4yMyw2NS4zOF0sWy0yNC4zMyw2NS42MV0sWy0yMy42NSw2Ni4yNl0sWy0yMi4xMyw2Ni40MV0sWy0yMC41OCw2NS43M10sWy0xOS4wNiw2Ni4yOF0sWy0xNy44LDY1Ljk5XSxbLTE2LjE3LDY2LjUzXSxbLTE0LjUxLDY2LjQ2XV1dXX0se246YEF6ZXJiYWlqYW5gLGEyOmBBWmAsYTM6YEFaRWAscDpgQVpgLGw6WzQ3LjIxLDQwLjRdLGc6W1tbWzQ2LjQsNDEuODZdLFs0Ni42OSw0MS44M10sWzQ3LjM3LDQxLjIyXSxbNDcuODIsNDEuMTVdLFs0Ny45OSw0MS40MV0sWzQ4LjU4LDQxLjgxXSxbNDkuMTEsNDEuMjhdLFs0OS42Miw0MC41N10sWzUwLjA4LDQwLjUzXSxbNTAuMzksNDAuMjZdLFs0OS41Nyw0MC4xOF0sWzQ5LjQsMzkuNF0sWzQ5LjIyLDM5LjA1XSxbNDguODYsMzguODJdLFs0OC44OCwzOC4zMl0sWzQ4LjYzLDM4LjI3XSxbNDguMDEsMzguNzldLFs0OC4zNiwzOS4yOV0sWzQ4LjA2LDM5LjU4XSxbNDcuNjksMzkuNTFdLFs0Ni41MSwzOC43N10sWzQ2LjQ4LDM5LjQ2XSxbNDYuMDMsMzkuNjNdLFs0NS42MSwzOS45XSxbNDUuODksNDAuMjJdLFs0NS4zNiw0MC41Nl0sWzQ1LjU2LDQwLjgxXSxbNDUuMTgsNDAuOTldLFs0NC45Nyw0MS4yNV0sWzQ1LjIyLDQxLjQxXSxbNDUuOTYsNDEuMTJdLFs0Ni41LDQxLjA2XSxbNDYuNjQsNDEuMThdLFs0Ni4xNSw0MS43Ml0sWzQ2LjQsNDEuODZdXV0sW1tbNDYuMTQsMzguNzRdLFs0NS40NiwzOC44N10sWzQ0Ljk1LDM5LjM0XSxbNDQuNzksMzkuNzFdLFs0NSwzOS43NF0sWzQ1LjMsMzkuNDddLFs0NS43NCwzOS40N10sWzQ1Ljc0LDM5LjMyXSxbNDYuMTQsMzguNzRdXV1dfSx7bjpgR2VvcmdpYWAsYTI6YEdFYCxhMzpgR0VPYCxwOmBHRWAsbDpbNDMuNzQsNDEuODddLGc6W1tbWzM5Ljk2LDQzLjQzXSxbNDAuMDgsNDMuNTVdLFs0MC45Miw0My4zOF0sWzQyLjM5LDQzLjIyXSxbNDMuNzYsNDIuNzRdLFs0My45Myw0Mi41NV0sWzQ0LjU0LDQyLjcxXSxbNDUuNDcsNDIuNV0sWzQ1Ljc4LDQyLjA5XSxbNDYuNCw0MS44Nl0sWzQ2LjE1LDQxLjcyXSxbNDYuNjQsNDEuMThdLFs0Ni41LDQxLjA2XSxbNDUuOTYsNDEuMTJdLFs0NS4yMiw0MS40MV0sWzQ0Ljk3LDQxLjI1XSxbNDMuNTgsNDEuMDldLFs0Mi42Miw0MS41OF0sWzQxLjU1LDQxLjU0XSxbNDEuNyw0MS45Nl0sWzQxLjQ1LDQyLjY1XSxbNDAuODgsNDMuMDFdLFs0MC4zMiw0My4xM10sWzM5Ljk2LDQzLjQzXV1dXX0se246YFBoaWxpcHBpbmVzYCxhMjpgUEhgLGEzOmBQSExgLHA6YFBIYCxsOlsxMjIuNDcsMTEuMl0sZzpbW1tbMTIwLjgzLDEyLjddLFsxMjAuMzIsMTMuNDddLFsxMjEuMTgsMTMuNDNdLFsxMjEuNTMsMTMuMDddLFsxMjEuMjYsMTIuMjFdLFsxMjAuODMsMTIuN11dXSxbW1sxMjIuNTksOS45OF0sWzEyMi44NCwxMC4yNl0sWzEyMi45NSwxMC44OF0sWzEyMy41LDEwLjk0XSxbMTIzLjM0LDEwLjI3XSxbMTI0LjA4LDExLjIzXSxbMTIzLjk4LDEwLjI4XSxbMTIzLjYyLDkuOTVdLFsxMjMuMzEsOS4zMl0sWzEyMyw5LjAyXSxbMTIyLjM4LDkuNzFdLFsxMjIuNTksOS45OF1dXSxbW1sxMjYuMzgsOC40MV0sWzEyNi40OCw3Ljc1XSxbMTI2LjU0LDcuMTldLFsxMjYuMiw2LjI3XSxbMTI1LjgzLDcuMjldLFsxMjUuMzYsNi43OV0sWzEyNS42OCw2LjA1XSxbMTI1LjQsNS41OF0sWzEyNC4yMiw2LjE2XSxbMTIzLjk0LDYuODldLFsxMjQuMjQsNy4zNl0sWzEyMy42MSw3LjgzXSxbMTIzLjMsNy40Ml0sWzEyMi44Myw3LjQ2XSxbMTIyLjA5LDYuOV0sWzEyMS45Miw3LjE5XSxbMTIyLjMxLDguMDNdLFsxMjIuOTQsOC4zMl0sWzEyMy40OSw4LjY5XSxbMTIzLjg0LDguMjRdLFsxMjQuNiw4LjUxXSxbMTI0Ljc2LDguOTZdLFsxMjUuNDcsOC45OV0sWzEyNS40MSw5Ljc2XSxbMTI2LjIyLDkuMjldLFsxMjYuMzEsOC43OF0sWzEyNi4zOCw4LjQxXV1dLFtbWzExOC41LDkuMzJdLFsxMTcuMTcsOC4zN10sWzExNy42Niw5LjA3XSxbMTE4LjM5LDkuNjhdLFsxMTguOTksMTAuMzhdLFsxMTkuNTEsMTEuMzddLFsxMTkuNjksMTAuNTVdLFsxMTkuMDMsMTBdLFsxMTguNSw5LjMyXV1dLFtbWzEyMi4zNCwxOC4yMl0sWzEyMi4xNywxNy44MV0sWzEyMi41MiwxNy4wOV0sWzEyMi4yNSwxNi4yNl0sWzEyMS42NiwxNS45M10sWzEyMS41MSwxNS4xMl0sWzEyMS43MywxNC4zM10sWzEyMi4yNiwxNC4yMl0sWzEyMi43LDE0LjM0XSxbMTIzLjk1LDEzLjc4XSxbMTIzLjg2LDEzLjI0XSxbMTI0LjE4LDEzXSxbMTI0LjA4LDEyLjU0XSxbMTIzLjMsMTMuMDNdLFsxMjIuOTMsMTMuNTVdLFsxMjIuNjcsMTMuMTldLFsxMjIuMDMsMTMuNzhdLFsxMjEuMTMsMTMuNjRdLFsxMjAuNjMsMTMuODZdLFsxMjAuNjgsMTQuMjddLFsxMjAuOTksMTQuNTNdLFsxMjAuNjksMTQuNzZdLFsxMjAuNTYsMTQuNF0sWzEyMC4wNywxNC45N10sWzExOS45MiwxNS40MV0sWzExOS44OCwxNi4zNl0sWzEyMC4yOSwxNi4wM10sWzEyMC4zOSwxNy42XSxbMTIwLjcyLDE4LjUxXSxbMTIxLjMyLDE4LjVdLFsxMjEuOTQsMTguMjJdLFsxMjIuMjUsMTguNDhdLFsxMjIuMzQsMTguMjJdXV0sW1tbMTIyLjA0LDExLjQyXSxbMTIxLjg4LDExLjg5XSxbMTIyLjQ4LDExLjU4XSxbMTIzLjEyLDExLjU4XSxbMTIzLjEsMTEuMTddLFsxMjIuNjQsMTAuNzRdLFsxMjIsMTAuNDRdLFsxMjEuOTcsMTAuOTFdLFsxMjIuMDQsMTEuNDJdXV0sW1tbMTI1LjUsMTIuMTZdLFsxMjUuNzgsMTEuMDVdLFsxMjUuMDEsMTEuMzFdLFsxMjUuMDMsMTAuOThdLFsxMjUuMjgsMTAuMzZdLFsxMjQuOCwxMC4xM10sWzEyNC43NiwxMC44NF0sWzEyNC40NiwxMC44OV0sWzEyNC4zLDExLjVdLFsxMjQuODksMTEuNDJdLFsxMjQuODgsMTEuNzldLFsxMjQuMjcsMTIuNTZdLFsxMjUuMjMsMTIuNTRdLFsxMjUuNSwxMi4xNl1dXV19LHtuOmBNYWxheXNpYWAsYTI6YE1ZYCxhMzpgTVlTYCxwOmBNWWAsbDpbMTEzLjg0LDIuNTNdLGc6W1tbWzEwMC4wOSw2LjQ2XSxbMTAwLjI2LDYuNjRdLFsxMDEuMDgsNi4yXSxbMTAxLjE1LDUuNjldLFsxMDEuODEsNS44MV0sWzEwMi4xNCw2LjIyXSxbMTAyLjM3LDYuMTNdLFsxMDIuOTYsNS41Ml0sWzEwMy4zOCw0Ljg2XSxbMTAzLjQ0LDQuMThdLFsxMDMuMzMsMy43M10sWzEwMy40MywzLjM4XSxbMTAzLjUsMi43OV0sWzEwMy44NSwyLjUyXSxbMTA0LjI1LDEuNjNdLFsxMDQuMjMsMS4yOV0sWzEwMy41MiwxLjIzXSxbMTAyLjU3LDEuOTddLFsxMDEuMzksMi43Nl0sWzEwMS4yNywzLjI3XSxbMTAwLjcsMy45NF0sWzEwMC41Niw0Ljc3XSxbMTAwLjIsNS4zMV0sWzEwMC4zMSw2LjA0XSxbMTAwLjA5LDYuNDZdXV0sW1tbMTE3Ljg4LDQuMTRdLFsxMTcuMDIsNC4zMV0sWzExNS44Nyw0LjMxXSxbMTE1LjUyLDMuMTddLFsxMTUuMTMsMi44Ml0sWzExNC42MiwxLjQzXSxbMTEzLjgxLDEuMjJdLFsxMTIuODYsMS41XSxbMTEyLjM4LDEuNDFdLFsxMTEuOCwuOV0sWzExMS4xNiwuOThdLFsxMTAuNTEsLjc3XSxbMTA5LjgzLDEuMzRdLFsxMDkuNjYsMi4wMV0sWzExMC40LDEuNjZdLFsxMTEuMTcsMS44NV0sWzExMS4zNywyLjddLFsxMTEuOCwyLjg5XSxbMTEzLDMuMV0sWzExMy43MSwzLjg5XSxbMTE0LjIsNC41M10sWzExNC42Niw0LjAxXSxbMTE0Ljg3LDQuMzVdLFsxMTUuMzUsNC4zMl0sWzExNS40MSw0Ljk2XSxbMTE1LjQ1LDUuNDVdLFsxMTYuMjIsNi4xNF0sWzExNi43Myw2LjkyXSxbMTE3LjEzLDYuOTNdLFsxMTcuNjQsNi40Ml0sWzExNy42OSw1Ljk5XSxbMTE4LjM1LDUuNzFdLFsxMTkuMTgsNS40MV0sWzExOS4xMSw1LjAyXSxbMTE4LjQ0LDQuOTddLFsxMTguNjIsNC40OF0sWzExNy44OCw0LjE0XV1dXX0se246YEJydW5laSBEYXJ1c3NhbGFtYCxhMjpgQk5gLGEzOmBCUk5gLHA6YEJOYCxsOlsxMTQuNTUsNC40NV0sZzpbW1tbMTE1LjQ1LDUuNDVdLFsxMTUuNDEsNC45Nl0sWzExNS4zNSw0LjMyXSxbMTE0Ljg3LDQuMzVdLFsxMTQuNjYsNC4wMV0sWzExNC4yLDQuNTNdLFsxMTQuNiw0LjldLFsxMTUuNDUsNS40NV1dXV19LHtuOmBTbG92ZW5pYWAsYTI6YFNJYCxhMzpgU1ZOYCxwOmBTTE9gLGw6WzE0LjkyLDQ2LjA2XSxnOltbW1sxMy44MSw0Ni41MV0sWzE0LjYzLDQ2LjQzXSxbMTUuMTQsNDYuNjZdLFsxNi4wMSw0Ni42OF0sWzE2LjIsNDYuODVdLFsxNi4zNyw0Ni44NF0sWzE2LjU2LDQ2LjVdLFsxNS43Nyw0Ni4yNF0sWzE1LjY3LDQ1LjgzXSxbMTUuMzIsNDUuNzNdLFsxNS4zMyw0NS40NV0sWzE0Ljk0LDQ1LjQ3XSxbMTQuNiw0NS42M10sWzE0LjQxLDQ1LjQ3XSxbMTMuNzIsNDUuNV0sWzEzLjk0LDQ1LjU5XSxbMTMuNyw0Ni4wMl0sWzEzLjgxLDQ2LjUxXV1dXX0se246YEZpbmxhbmRgLGEyOmBGSWAsYTM6YEZJTmAscDpgRklOYCxsOlsyNy4yOCw2My4yNV0sZzpbW1tbMjguNTksNjkuMDZdLFsyOC40NSw2OC4zNl0sWzI5Ljk4LDY3LjddLFsyOS4wNSw2Ni45NF0sWzMwLjIyLDY1LjgxXSxbMjkuNTQsNjQuOTVdLFszMC40NCw2NC4yXSxbMzAuMDQsNjMuNTVdLFszMS41Miw2Mi44N10sWzMxLjE0LDYyLjM2XSxbMzAuMjEsNjEuNzhdLFsyOC4wNyw2MC41XSxbMjYuMjYsNjAuNDJdLFsyNC41LDYwLjA2XSxbMjIuODcsNTkuODVdLFsyMi4yOSw2MC4zOV0sWzIxLjMyLDYwLjcyXSxbMjEuNTQsNjEuNzFdLFsyMS4wNiw2Mi42MV0sWzIxLjU0LDYzLjE5XSxbMjIuNDQsNjMuODJdLFsyNC43Myw2NC45XSxbMjUuNCw2NS4xMV0sWzI1LjI5LDY1LjUzXSxbMjMuOSw2Ni4wMV0sWzIzLjU3LDY2LjRdLFsyMy41NCw2Ny45NF0sWzIxLjk4LDY4LjYyXSxbMjAuNjUsNjkuMTFdLFsyMS4yNCw2OS4zN10sWzIyLjM2LDY4Ljg0XSxbMjMuNjYsNjguODldLFsyNC43NCw2OC42NV0sWzI1LjY5LDY5LjA5XSxbMjYuMTgsNjkuODNdLFsyNy43Myw3MC4xNl0sWzI5LjAyLDY5Ljc3XSxbMjguNTksNjkuMDZdXV1dfSx7bjpgU2xvdmFraWFgLGEyOmBTS2AsYTM6YFNWS2AscDpgU0tgLGw6WzE5LjA1LDQ4LjczXSxnOltbW1syMi41Niw0OS4wOV0sWzIyLjI4LDQ4LjgzXSxbMjIuMDksNDguNDJdLFsyMS44Nyw0OC4zMl0sWzIwLjgsNDguNjJdLFsyMC40Nyw0OC41Nl0sWzIwLjI0LDQ4LjMzXSxbMTkuNzcsNDguMl0sWzE5LjY2LDQ4LjI3XSxbMTkuMTcsNDguMTFdLFsxOC43OCw0OC4wOF0sWzE4LjcsNDcuODhdLFsxNy44Niw0Ny43Nl0sWzE3LjQ5LDQ3Ljg3XSxbMTYuOTgsNDguMTJdLFsxNi44OCw0OC40N10sWzE2Ljk2LDQ4LjZdLFsxNy4xLDQ4LjgyXSxbMTcuNTUsNDguOF0sWzE3Ljg5LDQ4LjldLFsxNy45MSw0OV0sWzE4LjEsNDkuMDRdLFsxOC4xNyw0OS4yN10sWzE4LjQsNDkuMzJdLFsxOC41NSw0OS41XSxbMTguODUsNDkuNV0sWzE4LjkxLDQ5LjQ0XSxbMTkuMzIsNDkuNTddLFsxOS44Myw0OS4yMl0sWzIwLjQyLDQ5LjQzXSxbMjAuODksNDkuMzNdLFsyMS42MSw0OS40N10sWzIyLjU2LDQ5LjA5XV1dXX0se246YEN6ZWNoIFJlcHVibGljYCxhMjpgQ1pgLGEzOmBDWkVgLHA6YENaYCxsOlsxNS4zOCw0OS44OF0sZzpbW1tbMTUuMDIsNTEuMTFdLFsxNS40OSw1MC43OF0sWzE2LjI0LDUwLjddLFsxNi4xOCw1MC40Ml0sWzE2LjcyLDUwLjIyXSxbMTYuODcsNTAuNDddLFsxNy41NSw1MC4zNl0sWzE3LjY1LDUwLjA1XSxbMTguMzksNDkuOTldLFsxOC44NSw0OS41XSxbMTguNTUsNDkuNV0sWzE4LjQsNDkuMzJdLFsxOC4xNyw0OS4yN10sWzE4LjEsNDkuMDRdLFsxNy45MSw0OV0sWzE3Ljg5LDQ4LjldLFsxNy41NSw0OC44XSxbMTcuMSw0OC44Ml0sWzE2Ljk2LDQ4LjZdLFsxNi41LDQ4Ljc5XSxbMTYuMDMsNDguNzNdLFsxNS4yNSw0OS4wNF0sWzE0LjksNDguOTZdLFsxNC4zNCw0OC41Nl0sWzEzLjYsNDguODhdLFsxMy4wMyw0OS4zMV0sWzEyLjUyLDQ5LjU1XSxbMTIuNDIsNDkuOTddLFsxMi4yNCw1MC4yN10sWzEyLjk3LDUwLjQ4XSxbMTMuMzQsNTAuNzNdLFsxNC4wNiw1MC45M10sWzE0LjMxLDUxLjEyXSxbMTQuNTcsNTFdLFsxNS4wMiw1MS4xMV1dXV19LHtuOmBFcml0cmVhYCxhMjpgRVJgLGEzOmBFUklgLHA6YEVSYCxsOlszOC4yOSwxNS43OV0sZzpbW1tbMzYuNDMsMTQuNDJdLFszNi4zMiwxNC44Ml0sWzM2Ljc1LDE2LjI5XSxbMzYuODUsMTYuOTZdLFszNy4xNywxNy4yNl0sWzM3LjksMTcuNDNdLFszOC40MSwxOF0sWzM4Ljk5LDE2Ljg0XSxbMzkuMjcsMTUuOTJdLFszOS44MSwxNS40NF0sWzQxLjE4LDE0LjQ5XSxbNDEuNzMsMTMuOTJdLFs0Mi4yOCwxMy4zNF0sWzQyLjU5LDEzXSxbNDMuMDgsMTIuN10sWzQyLjc4LDEyLjQ2XSxbNDIuMzUsMTIuNTRdLFs0Mi4wMSwxMi44N10sWzQxLjYsMTMuNDVdLFs0MS4xNiwxMy43N10sWzQwLjksMTQuMTJdLFs0MC4wMywxNC41Ml0sWzM5LjM0LDE0LjUzXSxbMzkuMSwxNC43NF0sWzM4LjUxLDE0LjUxXSxbMzcuOTEsMTQuOTZdLFszNy41OSwxNC4yMV0sWzM2LjQzLDE0LjQyXV1dXX0se246YEphcGFuYCxhMjpgSlBgLGEzOmBKUE5gLHA6YEpgLGw6WzEzOC40NCwzNi4xNF0sZzpbW1tbMTQxLjg4LDM5LjE4XSxbMTQwLjk2LDM4LjE3XSxbMTQwLjk4LDM3LjE0XSxbMTQwLjYsMzYuMzRdLFsxNDAuNzcsMzUuODRdLFsxNDAuMjUsMzUuMTRdLFsxMzguOTgsMzQuNjddLFsxMzcuMjIsMzQuNjFdLFsxMzUuNzksMzMuNDZdLFsxMzUuMTIsMzMuODVdLFsxMzUuMDgsMzQuNl0sWzEzMy4zNCwzNC4zOF0sWzEzMi4xNiwzMy45XSxbMTMwLjk5LDMzLjg5XSxbMTMyLDMzLjE1XSxbMTMxLjMzLDMxLjQ1XSxbMTMwLjY5LDMxLjAzXSxbMTMwLjIsMzEuNDJdLFsxMzAuNDUsMzIuMzJdLFsxMjkuODEsMzIuNjFdLFsxMjkuNDEsMzMuM10sWzEzMC4zNSwzMy42XSxbMTMwLjg4LDM0LjIzXSxbMTMxLjg4LDM0Ljc1XSxbMTMyLjYyLDM1LjQzXSxbMTM0LjYxLDM1LjczXSxbMTM1LjY4LDM1LjUzXSxbMTM2LjcyLDM3LjNdLFsxMzcuMzksMzYuODNdLFsxMzguODYsMzcuODNdLFsxMzkuNDMsMzguMjJdLFsxNDAuMDUsMzkuNDRdLFsxMzkuODgsNDAuNTZdLFsxNDAuMzEsNDEuMl0sWzE0MS4zNyw0MS4zOF0sWzE0MS45MSwzOS45OV0sWzE0MS44OCwzOS4xOF1dXSxbW1sxNDQuNjEsNDMuOTZdLFsxNDUuMzIsNDQuMzhdLFsxNDUuNTQsNDMuMjZdLFsxNDQuMDYsNDIuOTldLFsxNDMuMTgsNDJdLFsxNDEuNjEsNDIuNjhdLFsxNDEuMDcsNDEuNThdLFsxMzkuOTYsNDEuNTddLFsxMzkuODIsNDIuNTZdLFsxNDAuMzEsNDMuMzNdLFsxNDEuMzgsNDMuMzldLFsxNDEuNjcsNDQuNzddLFsxNDEuOTcsNDUuNTVdLFsxNDMuMTQsNDQuNTFdLFsxNDMuOTEsNDQuMTddLFsxNDQuNjEsNDMuOTZdXV0sW1tbMTMyLjM3LDMzLjQ2XSxbMTMyLjkyLDM0LjA2XSxbMTMzLjQ5LDMzLjk0XSxbMTMzLjksMzQuMzZdLFsxMzQuNjQsMzQuMTVdLFsxMzQuNzcsMzMuODFdLFsxMzQuMiwzMy4yXSxbMTMzLjc5LDMzLjUyXSxbMTMzLjI4LDMzLjI5XSxbMTMzLjAxLDMyLjddLFsxMzIuMzYsMzIuOTldLFsxMzIuMzcsMzMuNDZdXV1dfSx7bjpgUGFyYWd1YXlgLGEyOmBQWWAsYTM6YFBSWWAscDpgUFlgLGw6Wy02MC4xNSwtMjEuNjddLGc6W1tbWy01OC4xNywtMjAuMThdLFstNTcuODcsLTIwLjczXSxbLTU3Ljk0LC0yMi4wOV0sWy01Ni44OCwtMjIuMjhdLFstNTYuNDcsLTIyLjA5XSxbLTU1LjgsLTIyLjM2XSxbLTU1LjYxLC0yMi42Nl0sWy01NS41MiwtMjMuNTddLFstNTUuNCwtMjMuOTZdLFstNTUuMDMsLTI0XSxbLTU0LjY1LC0yMy44NF0sWy01NC4yOSwtMjQuMDJdLFstNTQuMjksLTI0LjU3XSxbLTU0LjQzLC0yNS4xNl0sWy01NC42MywtMjUuNzRdLFstNTQuNzksLTI2LjYyXSxbLTU1LjcsLTI3LjM5XSxbLTU2LjQ5LC0yNy41NV0sWy01Ny42MSwtMjcuNF0sWy01OC42MiwtMjcuMTJdLFstNTcuNjMsLTI1LjZdLFstNTcuNzgsLTI1LjE2XSxbLTU4LjgxLC0yNC43N10sWy02MC4wMywtMjQuMDNdLFstNjAuODUsLTIzLjg4XSxbLTYyLjY5LC0yMi4yNV0sWy02Mi4yOSwtMjEuMDVdLFstNjIuMjcsLTIwLjUxXSxbLTYxLjc5LC0xOS42M10sWy02MC4wNCwtMTkuMzRdLFstNTkuMTIsLTE5LjM2XSxbLTU4LjE4LC0xOS44N10sWy01OC4xNywtMjAuMThdXV1dfSx7bjpgWWVtZW5gLGEyOmBZRWAsYTM6YFlFTWAscDpgWUVgLGw6WzQ1Ljg3LDE1LjMzXSxnOltbW1s1MiwxOV0sWzUyLjc4LDE3LjM1XSxbNTMuMTEsMTYuNjVdLFs1Mi4zOSwxNi4zOF0sWzUyLjE5LDE1Ljk0XSxbNTIuMTcsMTUuNl0sWzUxLjE3LDE1LjE4XSxbNDkuNTcsMTQuNzFdLFs0OC42OCwxNF0sWzQ4LjI0LDEzLjk1XSxbNDcuOTQsMTQuMDFdLFs0Ny4zNSwxMy41OV0sWzQ2LjcyLDEzLjRdLFs0NS44OCwxMy4zNV0sWzQ1LjYzLDEzLjI5XSxbNDUuNDEsMTMuMDNdLFs0NS4xNCwxMi45NV0sWzQ0Ljk5LDEyLjddLFs0NC40OSwxMi43Ml0sWzQ0LjE4LDEyLjU5XSxbNDMuNDgsMTIuNjRdLFs0My4yMiwxMy4yMl0sWzQzLjI1LDEzLjc3XSxbNDMuMDksMTQuMDZdLFs0Mi44OSwxNC44XSxbNDIuNiwxNS4yMV0sWzQyLjgxLDE1LjI2XSxbNDIuNywxNS43Ml0sWzQyLjgyLDE1LjkxXSxbNDIuNzgsMTYuMzVdLFs0My4yMiwxNi42N10sWzQzLjEyLDE3LjA5XSxbNDMuMzgsMTcuNThdLFs0My43OSwxNy4zMl0sWzQ0LjA2LDE3LjQxXSxbNDUuMjIsMTcuNDNdLFs0NS40LDE3LjMzXSxbNDYuMzcsMTcuMjNdLFs0Ni43NSwxNy4yOF0sWzQ3LDE2Ljk1XSxbNDcuNDcsMTcuMTJdLFs0OC4xOCwxOC4xN10sWzQ5LjEyLDE4LjYyXSxbNTIsMTldXV1dfSx7bjpgU2F1ZGkgQXJhYmlhYCxhMjpgU0FgLGEzOmBTQVVgLHA6YFNBYCxsOls0NC43LDIzLjgxXSxnOltbW1szNC45NiwyOS4zNl0sWzM2LjA3LDI5LjJdLFszNi41LDI5LjUxXSxbMzYuNzQsMjkuODddLFszNy41LDMwXSxbMzcuNjcsMzAuMzRdLFszOCwzMC41MV0sWzM3LDMxLjUxXSxbMzksMzIuMDFdLFszOS4yLDMyLjE2XSxbNDAuNCwzMS44OV0sWzQxLjg5LDMxLjE5XSxbNDQuNzEsMjkuMThdLFs0Ni41NywyOS4xXSxbNDcuNDYsMjldLFs0Ny43MSwyOC41M10sWzQ4LjQyLDI4LjU1XSxbNDguODEsMjcuNjldLFs0OS4zLDI3LjQ2XSxbNDkuNDcsMjcuMTFdLFs1MC4xNSwyNi42OV0sWzUwLjIxLDI2LjI4XSxbNTAuMTEsMjUuOTRdLFs1MC4yNCwyNS42MV0sWzUwLjUzLDI1LjMzXSxbNTAuNjYsMjVdLFs1MC44MSwyNC43NV0sWzUxLjExLDI0LjU2XSxbNTEuMzksMjQuNjNdLFs1MS41OCwyNC4yNV0sWzUxLjYyLDI0LjAxXSxbNTIsMjNdLFs1NS4wMSwyMi41XSxbNTUuMjEsMjIuNzFdLFs1NS42NywyMl0sWzU1LDIwXSxbNTIsMTldLFs0OS4xMiwxOC42Ml0sWzQ4LjE4LDE4LjE3XSxbNDcuNDcsMTcuMTJdLFs0NywxNi45NV0sWzQ2Ljc1LDE3LjI4XSxbNDYuMzcsMTcuMjNdLFs0NS40LDE3LjMzXSxbNDUuMjIsMTcuNDNdLFs0NC4wNiwxNy40MV0sWzQzLjc5LDE3LjMyXSxbNDMuMzgsMTcuNThdLFs0My4xMiwxNy4wOV0sWzQzLjIyLDE2LjY3XSxbNDIuNzgsMTYuMzVdLFs0Mi42NSwxNi43N10sWzQyLjM1LDE3LjA4XSxbNDIuMjcsMTcuNDddLFs0MS43NSwxNy44M10sWzQxLjIyLDE4LjY3XSxbNDAuOTQsMTkuNDldLFs0MC4yNSwyMC4xN10sWzM5LjgsMjAuMzRdLFszOS4xNCwyMS4yOV0sWzM5LjAyLDIxLjk5XSxbMzkuMDcsMjIuNThdLFszOC40OSwyMy42OV0sWzM4LjAyLDI0LjA4XSxbMzcuNDgsMjQuMjldLFszNy4xNSwyNC44Nl0sWzM3LjIxLDI1LjA4XSxbMzYuOTMsMjUuNl0sWzM2LjY0LDI1LjgzXSxbMzYuMjUsMjYuNTddLFszNS42NCwyNy4zOF0sWzM1LjEzLDI4LjA2XSxbMzQuNjMsMjguMDZdLFszNC43OSwyOC42MV0sWzM0LjgzLDI4Ljk2XSxbMzQuOTYsMjkuMzZdXV1dfSx7bjpgQW50YXJjdGljYWAsYTI6YEFRYCxhMzpgQVRBYCxwOmBBUWAsbDpbMzUuODksLTc5Ljg0XSxnOltbW1stNDguNjYsLTc4LjA1XSxbLTQ4LjE1LC03OC4wNV0sWy00Ni42NiwtNzcuODNdLFstNDUuMTUsLTc4LjA1XSxbLTQzLjkyLC03OC40OF0sWy00My40OSwtNzkuMDldLFstNDMuMzcsLTc5LjUyXSxbLTQzLjMzLC04MC4wM10sWy00NC44OCwtODAuMzRdLFstNDYuNTEsLTgwLjU5XSxbLTQ4LjM5LC04MC44M10sWy01MC40OCwtODEuMDNdLFstNTIuODUsLTgwLjk3XSxbLTU0LjE2LC04MC42M10sWy01My45OSwtODAuMjJdLFstNTEuODUsLTc5Ljk1XSxbLTUwLjk5LC03OS42MV0sWy01MC4zNiwtNzkuMThdLFstNDkuOTEsLTc4LjgxXSxbLTQ5LjMxLC03OC40Nl0sWy00OC42NiwtNzguMDVdXV0sW1tbLTY2LjI5LC04MC4yNl0sWy02NC4wNCwtODAuMjldLFstNjEuODgsLTgwLjM5XSxbLTYxLjE0LC03OS45OF0sWy02MC42MSwtNzkuNjNdLFstNTkuNTcsLTgwLjA0XSxbLTU5Ljg3LC04MC41NV0sWy02MC4xNiwtODFdLFstNjIuMjYsLTgwLjg2XSxbLTY0LjQ5LC04MC45Ml0sWy02NS43NCwtODAuNTldLFstNjUuNzQsLTgwLjU1XSxbLTY2LjI5LC04MC4yNl1dXSxbW1stNzMuOTIsLTcxLjI3XSxbLTczLjIzLC03MS4xNV0sWy03Mi4wNywtNzEuMTldLFstNzEuNzgsLTcwLjY4XSxbLTcxLjcyLC03MC4zMV0sWy03MS43NCwtNjkuNTFdLFstNzEuMTcsLTY5LjA0XSxbLTcwLjI1LC02OC44OF0sWy02OS43MiwtNjkuMjVdLFstNjkuNDksLTY5LjYyXSxbLTY5LjA2LC03MC4wN10sWy02OC43MywtNzAuNTFdLFstNjguNDUsLTcwLjk2XSxbLTY4LjMzLC03MS40MV0sWy02OC41MSwtNzEuOF0sWy02OC43OCwtNzIuMTddLFstNjkuOTYsLTcyLjMxXSxbLTcxLjA4LC03Mi41XSxbLTcyLjM5LC03Mi40OF0sWy03MS45LC03Mi4wOV0sWy03My4wNywtNzIuMjNdLFstNzQuMTksLTcyLjM3XSxbLTc0Ljk1LC03Mi4wN10sWy03NS4wMSwtNzEuNjZdLFstNzMuOTIsLTcxLjI3XV1dLFtbWy0xMDIuMzMsLTcxLjg5XSxbLTEwMS43LC03MS43Ml0sWy0xMDAuNDMsLTcxLjg1XSxbLTk4Ljk4LC03MS45M10sWy05Ny44OCwtNzIuMDddLFstOTYuNzksLTcxLjk1XSxbLTk2LjIsLTcyLjUyXSxbLTk2Ljk4LC03Mi40NF0sWy05OC4yLC03Mi40OF0sWy05OS40MywtNzIuNDRdLFstMTAwLjc4LC03Mi41XSxbLTEwMS44LC03Mi4zMV0sWy0xMDIuMzMsLTcxLjg5XV1dLFtbWy0xMjIuNjIsLTczLjY2XSxbLTEyMi40MSwtNzMuMzJdLFstMTIxLjIxLC03My41XSxbLTExOS45MiwtNzMuNjZdLFstMTE4LjcyLC03My40OF0sWy0xMTkuMjksLTczLjgzXSxbLTEyMC4yMywtNzQuMDldLFstMTIxLjYyLC03NC4wMV0sWy0xMjIuNjIsLTczLjY2XV1dLFtbWy0xMjcuMjgsLTczLjQ2XSxbLTEyNi41NiwtNzMuMjVdLFstMTI1LjU2LC03My40OF0sWy0xMjQuMDMsLTczLjg3XSxbLTEyNC42MiwtNzMuODNdLFstMTI1LjkxLC03My43NF0sWy0xMjcuMjgsLTczLjQ2XV1dLFtbWy0xNjMuNzEsLTc4LjZdLFstMTYzLjExLC03OC4yMl0sWy0xNjEuMjUsLTc4LjM4XSxbLTE2MC4yNSwtNzguNjldLFstMTU5LjQ4LC03OS4wNV0sWy0xNTkuMjEsLTc5LjVdLFstMTYxLjEzLC03OS42M10sWy0xNjIuNDQsLTc5LjI4XSxbLTE2My4wMywtNzguOTNdLFstMTYzLjA3LC03OC44N10sWy0xNjMuNzEsLTc4LjZdXV0sW1tbMTgwLC04NC43MV0sWzE4MCwtOTBdLFstMTgwLC05MF0sWy0xODAsLTg0LjcxXSxbLTE3OS45NCwtODQuNzJdLFstMTc5LjA2LC04NC4xNF0sWy0xNzcuMjYsLTg0LjQ1XSxbLTE3Ny4xNCwtODQuNDJdLFstMTc2LjA4LC04NC4xXSxbLTE3NS45NSwtODQuMTFdLFstMTc1LjgzLC04NC4xMl0sWy0xNzQuMzgsLTg0LjUzXSxbLTE3My4xMiwtODQuMTJdLFstMTcyLjg5LC04NC4wNl0sWy0xNjkuOTUsLTgzLjg4XSxbLTE2OSwtODQuMTJdLFstMTY4LjUzLC04NC4yNF0sWy0xNjcuMDIsLTg0LjU3XSxbLTE2NC4xOCwtODQuODNdLFstMTYxLjkzLC04NS4xNF0sWy0xNTguMDcsLTg1LjM3XSxbLTE1NS4xOSwtODUuMV0sWy0xNTAuOTQsLTg1LjNdLFstMTQ4LjUzLC04NS42MV0sWy0xNDUuODksLTg1LjMyXSxbLTE0My4xMSwtODUuMDRdLFstMTQyLjg5LC04NC41N10sWy0xNDYuODMsLTg0LjUzXSxbLTE1MC4wNiwtODQuM10sWy0xNTAuOSwtODMuOV0sWy0xNTMuNTksLTgzLjY5XSxbLTE1My40MSwtODMuMjRdLFstMTUzLjA0LC04Mi44M10sWy0xNTIuNjcsLTgyLjQ1XSxbLTE1Mi44NiwtODIuMDRdLFstMTU0LjUzLC04MS43N10sWy0xNTUuMjksLTgxLjQyXSxbLTE1Ni44NCwtODEuMV0sWy0xNTQuNDEsLTgxLjE2XSxbLTE1Mi4xLC04MV0sWy0xNTAuNjUsLTgxLjM0XSxbLTE0OC44NywtODEuMDRdLFstMTQ3LjIyLC04MC42N10sWy0xNDYuNDIsLTgwLjM0XSxbLTE0Ni43NywtNzkuOTNdLFstMTQ4LjA2LC03OS42NV0sWy0xNDkuNTMsLTc5LjM2XSxbLTE1MS41OSwtNzkuM10sWy0xNTMuMzksLTc5LjE2XSxbLTE1NS4zMywtNzkuMDZdLFstMTU1Ljk4LC03OC42OV0sWy0xNTcuMjcsLTc4LjM4XSxbLTE1OC4wNSwtNzguMDNdLFstMTU4LjM3LC03Ni44OV0sWy0xNTcuODgsLTc2Ljk5XSxbLTE1Ni45NywtNzcuM10sWy0xNTUuMzMsLTc3LjJdLFstMTUzLjc0LC03Ny4wN10sWy0xNTIuOTIsLTc3LjVdLFstMTUxLjMzLC03Ny40XSxbLTE1MCwtNzcuMThdLFstMTQ4Ljc1LC03Ni45MV0sWy0xNDcuNjEsLTc2LjU4XSxbLTE0Ni4xLC03Ni40OF0sWy0xNDYuMTQsLTc2LjExXSxbLTE0Ni41LC03NS43M10sWy0xNDYuMiwtNzUuMzhdLFstMTQ0LjkxLC03NS4yXSxbLTE0NC4zMiwtNzUuNTRdLFstMTQyLjc5LC03NS4zNF0sWy0xNDEuNjQsLTc1LjA5XSxbLTE0MC4yMSwtNzUuMDddLFstMTM4Ljg2LC03NC45N10sWy0xMzcuNTEsLTc0LjczXSxbLTEzNi40MywtNzQuNTJdLFstMTM1LjIxLC03NC4zXSxbLTEzNC40MywtNzQuMzZdLFstMTMzLjc1LC03NC40NF0sWy0xMzIuMjYsLTc0LjNdLFstMTMwLjkzLC03NC40OF0sWy0xMjkuNTUsLTc0LjQ2XSxbLTEyOC4yNCwtNzQuMzJdLFstMTI2Ljg5LC03NC40Ml0sWy0xMjUuNCwtNzQuNTJdLFstMTI0LjAxLC03NC40OF0sWy0xMjIuNTYsLTc0LjVdLFstMTIxLjA3LC03NC41Ml0sWy0xMTkuNywtNzQuNDhdLFstMTE4LjY4LC03NC4xOV0sWy0xMTcuNDcsLTc0LjAzXSxbLTExNi4yMiwtNzQuMjRdLFstMTE1LjAyLC03NC4wN10sWy0xMTMuOTQsLTczLjcxXSxbLTExMy4zLC03NC4wM10sWy0xMTIuOTUsLTc0LjM4XSxbLTExMi4zLC03NC43MV0sWy0xMTEuMjYsLTc0LjQyXSxbLTExMC4wNywtNzQuNzldLFstMTA4LjcxLC03NC45MV0sWy0xMDcuNTYsLTc1LjE4XSxbLTEwNi4xNSwtNzUuMTNdLFstMTA0Ljg4LC03NC45NV0sWy0xMDMuMzcsLTc0Ljk5XSxbLTEwMi4wMiwtNzUuMTNdLFstMTAwLjY1LC03NS4zXSxbLTEwMC4xMiwtNzQuODddLFstMTAwLjc2LC03NC41NF0sWy0xMDEuMjUsLTc0LjE5XSxbLTEwMi41NSwtNzQuMTFdLFstMTAzLjExLC03My43M10sWy0xMDMuMzMsLTczLjM2XSxbLTEwMy42OCwtNzIuNjJdLFstMTAyLjkyLC03Mi43NV0sWy0xMDEuNjEsLTcyLjgxXSxbLTEwMC4zMSwtNzIuNzVdLFstOTkuMTQsLTcyLjkxXSxbLTk4LjEyLC03My4yMV0sWy05Ny42OSwtNzMuNTZdLFstOTYuMzQsLTczLjYyXSxbLTk1LjA0LC03My40OF0sWy05My42NywtNzMuMjhdLFstOTIuNDQsLTczLjE3XSxbLTkxLjQyLC03My40XSxbLTkwLjA5LC03My4zMl0sWy04OS4yMywtNzIuNTZdLFstODguNDIsLTczLjAxXSxbLTg3LjI3LC03My4xOV0sWy04Ni4wMSwtNzMuMDldLFstODUuMTksLTczLjQ4XSxbLTgzLjg4LC03My41Ml0sWy04Mi42NywtNzMuNjRdLFstODEuNDcsLTczLjg1XSxbLTgwLjY5LC03My40OF0sWy04MC4zLC03My4xM10sWy03OS4zLC03My41Ml0sWy03Ny45MywtNzMuNDJdLFstNzYuOTEsLTczLjY0XSxbLTc2LjIyLC03My45N10sWy03NC44OSwtNzMuODddLFstNzMuODUsLTczLjY2XSxbLTcyLjgzLC03My40XSxbLTcxLjYyLC03My4yNl0sWy03MC4yMSwtNzMuMTVdLFstNjguOTQsLTczLjAxXSxbLTY3Ljk2LC03Mi43OV0sWy02Ny4zNywtNzIuNDhdLFstNjcuMTMsLTcyLjA1XSxbLTY3LjI1LC03MS42NF0sWy02Ny41NiwtNzEuMjVdLFstNjcuOTIsLTcwLjg1XSxbLTY4LjIzLC03MC40Nl0sWy02OC40OSwtNzAuMTFdLFstNjguNTQsLTY5LjcyXSxbLTY4LjQ1LC02OS4zM10sWy02Ny45OCwtNjguOTVdLFstNjcuNTgsLTY4LjU0XSxbLTY3LjQzLC02OC4xNV0sWy02Ny42MiwtNjcuNzJdLFstNjcuNzQsLTY3LjMzXSxbLTY3LjI1LC02Ni44OF0sWy02Ni43LC02Ni41OF0sWy02Ni4wNiwtNjYuMjFdLFstNjUuMzcsLTY1LjldLFstNjQuNTcsLTY1LjZdLFstNjQuMTgsLTY1LjE3XSxbLTYzLjYzLC02NC45XSxbLTYzLC02NC42NF0sWy02Mi4wNCwtNjQuNThdLFstNjEuNDEsLTY0LjI3XSxbLTYwLjcxLC02NC4wN10sWy01OS44OSwtNjMuOTZdLFstNTkuMTYsLTYzLjddLFstNTguNTksLTYzLjM5XSxbLTU3LjgxLC02My4yN10sWy01Ny4yMiwtNjMuNTNdLFstNTcuNiwtNjMuODZdLFstNTguNjEsLTY0LjE1XSxbLTU5LjA1LC02NC4zN10sWy01OS43OSwtNjQuMjFdLFstNjAuNjEsLTY0LjMxXSxbLTYxLjMsLTY0LjU0XSxbLTYyLjAyLC02NC44XSxbLTYyLjUxLC02NS4wOV0sWy02Mi42NSwtNjUuNDhdLFstNjIuNTksLTY1Ljg2XSxbLTYyLjEyLC02Ni4xOV0sWy02Mi44MSwtNjYuNDNdLFstNjMuNzUsLTY2LjVdLFstNjQuMjksLTY2Ljg0XSxbLTY0Ljg4LC02Ny4xNV0sWy02NS41MSwtNjcuNThdLFstNjUuNjcsLTY3Ljk1XSxbLTY1LjMxLC02OC4zN10sWy02NC43OCwtNjguNjhdLFstNjMuOTYsLTY4LjkxXSxbLTYzLjIsLTY5LjIzXSxbLTYyLjc5LC02OS42Ml0sWy02Mi41NywtNjkuOTldLFstNjIuMjgsLTcwLjM4XSxbLTYxLjgxLC03MC43Ml0sWy02MS41MSwtNzEuMDldLFstNjEuMzgsLTcyLjAxXSxbLTYxLjA4LC03Mi4zOF0sWy02MSwtNzIuNzddLFstNjAuNjksLTczLjE3XSxbLTYwLjgzLC03My43XSxbLTYxLjM4LC03NC4xMV0sWy02MS45NiwtNzQuNDRdLFstNjMuMywtNzQuNThdLFstNjMuNzUsLTc0LjkzXSxbLTY0LjM1LC03NS4yNl0sWy02NS44NiwtNzUuNjRdLFstNjcuMTksLTc1Ljc5XSxbLTY4LjQ1LC03Ni4wMV0sWy02OS44LC03Ni4yMl0sWy03MC42LC03Ni42M10sWy03Mi4yMSwtNzYuNjddLFstNzMuOTcsLTc2LjYzXSxbLTc1LjU2LC03Ni43MV0sWy03Ny4yNCwtNzYuNzFdLFstNzYuOTMsLTc3LjFdLFstNzUuNCwtNzcuMjhdLFstNzQuMjgsLTc3LjU2XSxbLTczLjY2LC03Ny45MV0sWy03NC43NywtNzguMjJdLFstNzYuNSwtNzguMTJdLFstNzcuOTMsLTc4LjM4XSxbLTc3Ljk4LC03OC43OV0sWy03OC4wMiwtNzkuMThdLFstNzYuODUsLTc5LjUxXSxbLTc2LjYzLC03OS44OV0sWy03NS4zNiwtODAuMjZdLFstNzMuMjQsLTgwLjQyXSxbLTcxLjQ0LC04MC42OV0sWy03MC4wMSwtODFdLFstNjguMTksLTgxLjMyXSxbLTY1LjcsLTgxLjQ3XSxbLTYzLjI2LC04MS43NV0sWy02MS41NSwtODIuMDRdLFstNTkuNjksLTgyLjM4XSxbLTU4LjcxLC04Mi44NV0sWy01OC4yMiwtODMuMjJdLFstNTcuMDEsLTgyLjg3XSxbLTU1LjM2LC04Mi41N10sWy01My42MiwtODIuMjZdLFstNTEuNTQsLTgyXSxbLTQ5Ljc2LC04MS43M10sWy00Ny4yNywtODEuNzFdLFstNDQuODMsLTgxLjg1XSxbLTQyLjgxLC04Mi4wOF0sWy00Mi4xNiwtODEuNjVdLFstNDAuNzcsLTgxLjM2XSxbLTM4LjI0LC04MS4zNF0sWy0zNi4yNywtODEuMTJdLFstMzQuMzksLTgwLjkxXSxbLTMyLjMxLC04MC43N10sWy0zMC4xLC04MC41OV0sWy0yOC41NSwtODAuMzRdLFstMjkuMjUsLTc5Ljk5XSxbLTI5LjY5LC03OS42M10sWy0yOS42OSwtNzkuMjZdLFstMzEuNjIsLTc5LjNdLFstMzMuNjgsLTc5LjQ2XSxbLTM1LjY0LC03OS40Nl0sWy0zNS45MSwtNzkuMDhdLFstMzUuNzgsLTc4LjM0XSxbLTM1LjMzLC03OC4xMl0sWy0zMy45LC03Ny44OV0sWy0zMi4yMSwtNzcuNjVdLFstMzEsLTc3LjM2XSxbLTI5Ljc4LC03Ny4wN10sWy0yOC44OCwtNzYuNjddLFstMjcuNTEsLTc2LjVdLFstMjYuMTYsLTc2LjM2XSxbLTI1LjQ3LC03Ni4yOF0sWy0yMy45MywtNzYuMjRdLFstMjIuNDYsLTc2LjExXSxbLTIxLjIyLC03NS45MV0sWy0yMC4wMSwtNzUuNjddLFstMTguOTEsLTc1LjQ0XSxbLTE3LjUyLC03NS4xM10sWy0xNi42NCwtNzQuNzldLFstMTUuNywtNzQuNV0sWy0xNS40MSwtNzQuMTFdLFstMTYuNDcsLTczLjg3XSxbLTE2LjExLC03My40Nl0sWy0xNS40NSwtNzMuMTVdLFstMTQuNDEsLTcyLjk1XSxbLTEzLjMxLC03Mi43Ml0sWy0xMi4yOSwtNzIuNF0sWy0xMS41MSwtNzIuMDFdLFstMTEuMDIsLTcxLjU0XSxbLTEwLjMsLTcxLjI3XSxbLTkuMSwtNzEuMzJdLFstOC42MSwtNzEuNjZdLFstNy40MiwtNzEuN10sWy03LjM4LC03MS4zMl0sWy02Ljg3LC03MC45M10sWy01Ljc5LC03MS4wM10sWy01LjU0LC03MS40XSxbLTQuMzQsLTcxLjQ2XSxbLTMuMDUsLTcxLjI5XSxbLTEuOCwtNzEuMTddLFstLjY2LC03MS4yM10sWy0uMjMsLTcxLjY0XSxbLjg3LC03MS4zXSxbMS44OSwtNzEuMTNdLFszLjAyLC03MC45OV0sWzQuMTQsLTcwLjg1XSxbNS4xNiwtNzAuNjJdLFs2LjI3LC03MC40Nl0sWzcuMTQsLTcwLjI1XSxbNy43NCwtNjkuODldLFs4LjQ5LC03MC4xNV0sWzkuNTMsLTcwLjAxXSxbMTAuMjUsLTcwLjQ4XSxbMTAuODIsLTcwLjgzXSxbMTEuOTUsLTcwLjY0XSxbMTIuNCwtNzAuMjVdLFsxMy40MiwtNjkuOTddLFsxNC43MywtNzAuMDNdLFsxNS4xMywtNzAuNF0sWzE1Ljk1LC03MC4wM10sWzE3LjAzLC02OS45MV0sWzE4LjIsLTY5Ljg3XSxbMTkuMjYsLTY5Ljg5XSxbMjAuMzgsLTcwLjAxXSxbMjEuNDUsLTcwLjA3XSxbMjEuOTIsLTcwLjRdLFsyMi41NywtNzAuN10sWzIzLjY3LC03MC41Ml0sWzI0Ljg0LC03MC40OF0sWzI1Ljk4LC03MC40OF0sWzI3LjA5LC03MC40Nl0sWzI4LjA5LC03MC4zMl0sWzI5LjE1LC03MC4yMV0sWzMwLjAzLC02OS45M10sWzMwLjk3LC02OS43Nl0sWzMxLjk5LC02OS42Nl0sWzMyLjc1LC02OS4zOF0sWzMzLjMsLTY4Ljg0XSxbMzMuODcsLTY4LjVdLFszNC45MSwtNjguNjZdLFszNS4zLC02OS4wMV0sWzM2LjE2LC02OS4yNV0sWzM3LjIsLTY5LjE3XSxbMzcuOTEsLTY5LjUyXSxbMzguNjUsLTY5Ljc4XSxbMzkuNjcsLTY5LjU0XSxbNDAuMDIsLTY5LjExXSxbNDAuOTIsLTY4LjkzXSxbNDEuOTYsLTY4LjZdLFs0Mi45NCwtNjguNDZdLFs0NC4xMSwtNjguMjddLFs0NC45LC02OC4wNV0sWzQ1LjcyLC02Ny44Ml0sWzQ2LjUsLTY3LjZdLFs0Ny40NCwtNjcuNzJdLFs0OC4zNCwtNjcuMzddLFs0OC45OSwtNjcuMDldLFs0OS45MywtNjcuMTFdLFs1MC43NSwtNjYuODhdLFs1MC45NSwtNjYuNTJdLFs1MS43OSwtNjYuMjVdLFs1Mi42MSwtNjYuMDVdLFs1My42MSwtNjUuOV0sWzU0LjUzLC02NS44Ml0sWzU1LjQxLC02NS44OF0sWzU2LjM2LC02NS45N10sWzU3LjE2LC02Ni4yNV0sWzU3LjI2LC02Ni42OF0sWzU4LjE0LC02Ny4wMV0sWzU4Ljc0LC02Ny4yOV0sWzU5Ljk0LC02Ny40MV0sWzYwLjYxLC02Ny42OF0sWzYxLjQzLC02Ny45NV0sWzYyLjM5LC02OC4wMV0sWzYzLjE5LC02Ny44Ml0sWzY0LjA1LC02Ny40MV0sWzY0Ljk5LC02Ny42Ml0sWzY1Ljk3LC02Ny43NF0sWzY2LjkxLC02Ny44Nl0sWzY3Ljg5LC02Ny45M10sWzY4Ljg5LC02Ny45M10sWzY5LjcxLC02OC45N10sWzY5LjY3LC02OS4yM10sWzY5LjU2LC02OS42OF0sWzY4LjYsLTY5LjkzXSxbNjcuODEsLTcwLjMxXSxbNjcuOTUsLTcwLjddLFs2OS4wNywtNzAuNjhdLFs2OC45MywtNzEuMDddLFs2OC40MiwtNzEuNDRdLFs2Ny45NSwtNzEuODVdLFs2OC43MSwtNzIuMTddLFs2OS44NywtNzIuMjZdLFs3MS4wMiwtNzIuMDldLFs3MS41NywtNzEuN10sWzcxLjkxLC03MS4zMl0sWzcyLjQ1LC03MS4wMV0sWzczLjA4LC03MC43Ml0sWzczLjM0LC03MC4zNl0sWzczLjg2LC02OS44N10sWzc0LjQ5LC02OS43OF0sWzc1LjYzLC02OS43NF0sWzc2LjYzLC02OS42Ml0sWzc3LjY0LC02OS40Nl0sWzc4LjEzLC02OS4wN10sWzc4LjQzLC02OC43XSxbNzkuMTEsLTY4LjMzXSxbODAuMDksLTY4LjA3XSxbODAuOTQsLTY3Ljg4XSxbODEuNDgsLTY3LjU0XSxbODIuMDUsLTY3LjM3XSxbODIuNzgsLTY3LjIxXSxbODMuNzgsLTY3LjMxXSxbODQuNjgsLTY3LjIxXSxbODUuNjYsLTY3LjA5XSxbODYuNzUsLTY3LjE1XSxbODcuNDgsLTY2Ljg4XSxbODcuOTksLTY2LjIxXSxbODguMzYsLTY2LjQ4XSxbODguODMsLTY2Ljk1XSxbODkuNjcsLTY3LjE1XSxbOTAuNjMsLTY3LjIzXSxbOTEuNTksLTY3LjExXSxbOTIuNjEsLTY3LjE5XSxbOTMuNTUsLTY3LjIxXSxbOTQuMTgsLTY3LjExXSxbOTUuMDIsLTY3LjE3XSxbOTUuNzgsLTY3LjM5XSxbOTYuNjgsLTY3LjI1XSxbOTcuNzYsLTY3LjI1XSxbOTguNjgsLTY3LjExXSxbOTkuNzIsLTY3LjI1XSxbMTAwLjM4LC02Ni45Ml0sWzEwMC44OSwtNjYuNThdLFsxMDEuNTgsLTY2LjMxXSxbMTAyLjgzLC02NS41Nl0sWzEwMy40OCwtNjUuN10sWzEwNC4yNCwtNjUuOTddLFsxMDQuOTEsLTY2LjMzXSxbMTA2LjE4LC02Ni45M10sWzEwNy4xNiwtNjYuOTVdLFsxMDguMDgsLTY2Ljk1XSxbMTA5LjE2LC02Ni44NF0sWzExMC4yNCwtNjYuN10sWzExMS4wNiwtNjYuNDNdLFsxMTEuNzQsLTY2LjEzXSxbMTEyLjg2LC02Ni4wOV0sWzExMy42LC02NS44OF0sWzExNC4zOSwtNjYuMDddLFsxMTQuOSwtNjYuMzldLFsxMTUuNiwtNjYuN10sWzExNi43LC02Ni42Nl0sWzExNy4zOCwtNjYuOTJdLFsxMTguNTgsLTY3LjE3XSxbMTE5LjgzLC02Ny4yN10sWzEyMC44NywtNjcuMTldLFsxMjEuNjUsLTY2Ljg4XSxbMTIyLjMyLC02Ni41Nl0sWzEyMy4yMiwtNjYuNDhdLFsxMjQuMTIsLTY2LjYyXSxbMTI1LjE2LC02Ni43Ml0sWzEyNi4xLC02Ni41Nl0sWzEyNywtNjYuNTZdLFsxMjcuODgsLTY2LjY2XSxbMTI4LjgsLTY2Ljc2XSxbMTI5LjcsLTY2LjU4XSxbMTMwLjc4LC02Ni40M10sWzEzMS44LC02Ni4zOV0sWzEzMi45NCwtNjYuMzldLFsxMzMuODYsLTY2LjI5XSxbMTM0Ljc2LC02Ni4yMV0sWzEzNS4wMywtNjUuNzJdLFsxMzUuMDcsLTY1LjMxXSxbMTM1LjcsLTY1LjU4XSxbMTM1Ljg3LC02Ni4wM10sWzEzNi4yMSwtNjYuNDVdLFsxMzYuNjIsLTY2Ljc4XSxbMTM3LjQ2LC02Ni45NV0sWzEzOC42LC02Ni45XSxbMTM5LjkxLC02Ni44OF0sWzE0MC44MSwtNjYuODJdLFsxNDIuMTIsLTY2LjgyXSxbMTQzLjA2LC02Ni44XSxbMTQ0LjM3LC02Ni44NF0sWzE0NS40OSwtNjYuOTJdLFsxNDYuMiwtNjcuMjNdLFsxNDYsLTY3LjZdLFsxNDYuNjUsLTY3LjldLFsxNDcuNzIsLTY4LjEzXSxbMTQ4Ljg0LC02OC4zOV0sWzE1MC4xMywtNjguNTZdLFsxNTEuNDgsLTY4LjcyXSxbMTUyLjUsLTY4Ljg3XSxbMTUzLjY0LC02OC44OV0sWzE1NC4yOCwtNjguNTZdLFsxNTUuMTcsLTY4Ljg0XSxbMTU1LjkzLC02OS4xNV0sWzE1Ni44MSwtNjkuMzhdLFsxNTguMDMsLTY5LjQ4XSxbMTU5LjE4LC02OS42XSxbMTU5LjY3LC02OS45OV0sWzE2MC44MSwtNzAuMjNdLFsxNjEuNTcsLTcwLjU4XSxbMTYyLjY5LC03MC43NF0sWzE2My44NCwtNzAuNzJdLFsxNjQuOTIsLTcwLjc4XSxbMTY2LjExLC03MC43Nl0sWzE2Ny4zMSwtNzAuODNdLFsxNjguNDMsLTcwLjk3XSxbMTY5LjQ2LC03MS4yMV0sWzE3MC41LC03MS40XSxbMTcxLjIxLC03MS43XSxbMTcxLjA5LC03Mi4wOV0sWzE3MC41NiwtNzIuNDRdLFsxNzAuMTEsLTcyLjg5XSxbMTY5Ljc2LC03My4yNF0sWzE2OS4yOSwtNzMuNjZdLFsxNjcuOTgsLTczLjgxXSxbMTY3LjM5LC03NC4xN10sWzE2Ni4wOSwtNzQuMzhdLFsxNjUuNjQsLTc0Ljc3XSxbMTY0Ljk2LC03NS4xNV0sWzE2NC4yMywtNzUuNDZdLFsxNjMuODIsLTc1Ljg3XSxbMTYzLjU3LC03Ni4yNF0sWzE2My40NywtNzYuNjldLFsxNjMuNDksLTc3LjA3XSxbMTY0LjA2LC03Ny40Nl0sWzE2NC4yNywtNzcuODNdLFsxNjQuNzQsLTc4LjE4XSxbMTY2LjYsLTc4LjMyXSxbMTY3LC03OC43NV0sWzE2NS4xOSwtNzguOTFdLFsxNjMuNjcsLTc5LjEyXSxbMTYxLjc3LC03OS4xNl0sWzE2MC45MiwtNzkuNzNdLFsxNjAuNzUsLTgwLjJdLFsxNjAuMzIsLTgwLjU3XSxbMTU5Ljc5LC04MC45NV0sWzE2MS4xMiwtODEuMjhdLFsxNjEuNjMsLTgxLjY5XSxbMTYyLjQ5LC04Mi4wNl0sWzE2My43MSwtODIuNF0sWzE2NS4xLC04Mi43MV0sWzE2Ni42LC04My4wMl0sWzE2OC45LC04My4zNF0sWzE2OS40LC04My44M10sWzE3Mi4yOCwtODQuMDRdLFsxNzIuNDgsLTg0LjEyXSxbMTczLjIyLC04NC40MV0sWzE3NS45OSwtODQuMTZdLFsxNzguMjgsLTg0LjQ3XSxbMTgwLC04NC43MV1dXV19LHtuOmBOb3J0aGVybiBDeXBydXNgLGEyOmBgLGEzOmBDWU5gLHA6YENOYCxsOlszMy42OSwzNS4yMl0sZzpbW1tbMzIuNzMsMzUuMTRdLFszMi44LDM1LjE1XSxbMzIuOTUsMzUuMzldLFszMy42NywzNS4zN10sWzM0LjU4LDM1LjY3XSxbMzMuOSwzNS4yNV0sWzMzLjk3LDM1LjA2XSxbMzMuODcsMzUuMDldLFszMy42OCwzNS4wMl0sWzMzLjUzLDM1LjA0XSxbMzMuNDgsMzVdLFszMy40NiwzNS4xXSxbMzMuMzgsMzUuMTZdLFszMy4xOSwzNS4xN10sWzMyLjkyLDM1LjA5XSxbMzIuNzMsMzUuMTRdXV1dfSx7bjpgQ3lwcnVzYCxhMjpgQ1lgLGEzOmBDWVBgLHA6YENZYCxsOlszMy4wOCwzNC45MV0sZzpbW1tbMzIuNzMsMzUuMTRdLFszMi45MiwzNS4wOV0sWzMzLjE5LDM1LjE3XSxbMzMuMzgsMzUuMTZdLFszMy40NiwzNS4xXSxbMzMuNDgsMzVdLFszMy41MywzNS4wNF0sWzMzLjY4LDM1LjAyXSxbMzMuODcsMzUuMDldLFszMy45NywzNS4wNl0sWzM0LDM0Ljk4XSxbMzIuOTgsMzQuNTddLFszMi40OSwzNC43XSxbMzIuMjYsMzUuMV0sWzMyLjczLDM1LjE0XV1dXX0se246YE1vcm9jY29gLGEyOmBNQWAsYTM6YE1BUmAscDpgTUFgLGw6Wy03LjE5LDMxLjY1XSxnOltbW1stMi4xNywzNS4xN10sWy0xLjc5LDM0LjUzXSxbLTEuNzMsMzMuOTJdLFstMS4zOSwzMi44Nl0sWy0xLjEyLDMyLjY1XSxbLTEuMzEsMzIuMjZdLFstMi42MiwzMi4wOV0sWy0zLjA3LDMxLjcyXSxbLTMuNjUsMzEuNjRdLFstMy42OSwzMC45XSxbLTQuODYsMzAuNV0sWy01LjI0LDMwXSxbLTYuMDYsMjkuNzNdLFstNy4wNiwyOS41OF0sWy04LjY3LDI4Ljg0XSxbLTguNjcsMjcuNjZdLFstOC44MiwyNy42Nl0sWy04Ljc5LDI3LjEyXSxbLTkuNDEsMjcuMDldLFstOS43NCwyNi44Nl0sWy0xMC4xOSwyNi44Nl0sWy0xMC41NSwyNi45OV0sWy0xMS4zOSwyNi44OF0sWy0xMS43MiwyNi4xXSxbLTEyLjAzLDI2LjAzXSxbLTEyLjUsMjQuNzddLFstMTMuODksMjMuNjldLFstMTQuMjIsMjIuMzFdLFstMTQuNjMsMjEuODZdLFstMTQuNzUsMjEuNV0sWy0xNywyMS40Ml0sWy0xNy4wMiwyMS40Ml0sWy0xNi45NywyMS44OV0sWy0xNi41OSwyMi4xNl0sWy0xNi4yNiwyMi42OF0sWy0xNi4zMywyMy4wMl0sWy0xNS45OCwyMy43Ml0sWy0xNS40MywyNC4zNl0sWy0xNS4wOSwyNC41Ml0sWy0xNC44MiwyNS4xXSxbLTE0LjgsMjUuNjRdLFstMTQuNDQsMjYuMjVdLFstMTMuNzcsMjYuNjJdLFstMTMuMTQsMjcuNjRdLFstMTMuMTIsMjcuNjVdLFstMTIuNjIsMjguMDRdLFstMTEuNjksMjguMTVdLFstMTAuOSwyOC44M10sWy0xMC40LDI5LjFdLFstOS41NiwyOS45M10sWy05LjgxLDMxLjE4XSxbLTkuNDMsMzIuMDRdLFstOS4zLDMyLjU2XSxbLTguNjYsMzMuMjRdLFstNy42NSwzMy43XSxbLTYuOTEsMzQuMTFdLFstNi4yNCwzNS4xNV0sWy01LjkzLDM1Ljc2XSxbLTUuMTksMzUuNzZdLFstNC41OSwzNS4zM10sWy0zLjY0LDM1LjRdLFstMi42LDM1LjE4XSxbLTIuMTcsMzUuMTddXV1dfSx7bjpgRWd5cHRgLGEyOmBFR2AsYTM6YEVHWWAscDpgRUdgLGw6WzI5LjQ1LDI2LjE5XSxnOltbW1szNi44NywyMl0sWzMyLjksMjJdLFsyOS4wMiwyMl0sWzI1LDIyXSxbMjUsMjUuNjhdLFsyNSwyOS4yNF0sWzI0LjcsMzAuMDRdLFsyNC45NiwzMC42Nl0sWzI0LjgsMzEuMDldLFsyNS4xNiwzMS41N10sWzI2LjUsMzEuNTldLFsyNy40NiwzMS4zMl0sWzI4LjQ1LDMxLjAzXSxbMjguOTEsMzAuODddLFsyOS42OCwzMS4xOV0sWzMwLjEsMzEuNDddLFszMC45OCwzMS41Nl0sWzMxLjY5LDMxLjQzXSxbMzEuOTYsMzAuOTNdLFszMi4xOSwzMS4yNl0sWzMyLjk5LDMxLjAyXSxbMzMuNzcsMzAuOTddLFszNC4yNywzMS4yMl0sWzM0LjgyLDI5Ljc2XSxbMzQuOTIsMjkuNV0sWzM0LjY0LDI5LjFdLFszNC40MywyOC4zNF0sWzM0LjE1LDI3LjgyXSxbMzMuOTIsMjcuNjVdLFszMy41OSwyNy45N10sWzMzLjE0LDI4LjQyXSxbMzIuNDIsMjkuODVdLFszMi4zMiwyOS43Nl0sWzMyLjczLDI4LjcxXSxbMzMuMzUsMjcuN10sWzM0LjEsMjYuMTRdLFszNC40NywyNS42XSxbMzQuOCwyNS4wM10sWzM1LjY5LDIzLjkzXSxbMzUuNDksMjMuNzVdLFszNS41MywyMy4xXSxbMzYuNjksMjIuMl0sWzM2Ljg3LDIyXV1dXX0se246YExpYnlhYCxhMjpgTFlgLGEzOmBMQllgLHA6YExZYCxsOlsxOC4wMSwyNi42NF0sZzpbW1tbMjUsMjJdLFsyNSwyMF0sWzIzLjg1LDIwXSxbMjMuODQsMTkuNThdLFsxOS44NSwyMS41XSxbMTUuODYsMjMuNDFdLFsxNC44NSwyMi44Nl0sWzE0LjE0LDIyLjQ5XSxbMTMuNTgsMjMuMDRdLFsxMiwyMy40N10sWzExLjU2LDI0LjFdLFsxMC43NywyNC41Nl0sWzEwLjMsMjQuMzhdLFs5Ljk1LDI0Ljk0XSxbOS45MSwyNS4zN10sWzkuMzIsMjYuMDldLFs5LjcyLDI2LjUxXSxbOS42MywyNy4xNF0sWzkuNzYsMjcuNjldLFs5LjY4LDI4LjE0XSxbOS44NiwyOC45Nl0sWzkuODEsMjkuNDJdLFs5LjQ4LDMwLjMxXSxbOS45NywzMC41NF0sWzEwLjA2LDMwLjk2XSxbOS45NSwzMS4zOF0sWzEwLjY0LDMxLjc2XSxbMTAuOTQsMzIuMDhdLFsxMS40MywzMi4zN10sWzExLjQ5LDMzLjE0XSxbMTIuNjYsMzIuNzldLFsxMy4wOCwzMi44OF0sWzEzLjkyLDMyLjcxXSxbMTUuMjUsMzIuMjddLFsxNS43MSwzMS4zOF0sWzE2LjYxLDMxLjE4XSxbMTguMDIsMzAuNzZdLFsxOS4wOSwzMC4yN10sWzE5LjU3LDMwLjUzXSxbMjAuMDUsMzAuOTldLFsxOS44MiwzMS43NV0sWzIwLjEzLDMyLjI0XSxbMjAuODUsMzIuNzFdLFsyMS41NCwzMi44NF0sWzIyLjksMzIuNjRdLFsyMy4yNCwzMi4xOV0sWzIzLjYxLDMyLjE5XSxbMjMuOTMsMzIuMDJdLFsyNC45MiwzMS45XSxbMjUuMTYsMzEuNTddLFsyNC44LDMxLjA5XSxbMjQuOTYsMzAuNjZdLFsyNC43LDMwLjA0XSxbMjUsMjkuMjRdLFsyNSwyNS42OF0sWzI1LDIyXV1dXX0se246YEV0aGlvcGlhYCxhMjpgRVRgLGEzOmBFVEhgLHA6YEVUYCxsOlszOS4wOSw4LjAzXSxnOltbW1s0Ny43OSw4XSxbNDQuOTYsNV0sWzQzLjY2LDQuOTZdLFs0Mi43Nyw0LjI1XSxbNDIuMTMsNC4yM10sWzQxLjg2LDMuOTJdLFs0MS4xNywzLjkyXSxbNDAuNzcsNC4yNl0sWzM5Ljg1LDMuODRdLFszOS41NiwzLjQyXSxbMzguODksMy41XSxbMzguNjcsMy42Ml0sWzM4LjQ0LDMuNTldLFszOC4xMiwzLjZdLFszNi44Niw0LjQ1XSxbMzYuMTYsNC40NV0sWzM1LjgyLDQuNzhdLFszNS44Miw1LjM0XSxbMzUuMyw1LjUxXSxbMzQuNzEsNi41OV0sWzM0LjI1LDYuODNdLFszNC4wOCw3LjIzXSxbMzMuNTcsNy43MV0sWzMyLjk1LDcuNzhdLFszMy4yOSw4LjM1XSxbMzMuODMsOC4zOF0sWzMzLjk3LDguNjhdLFszMy45Niw5LjU4XSxbMzQuMjYsMTAuNjNdLFszNC43MywxMC45MV0sWzM0LjgzLDExLjMyXSxbMzUuMjYsMTIuMDhdLFszNS44NiwxMi41OF0sWzM2LjI3LDEzLjU2XSxbMzYuNDMsMTQuNDJdLFszNy41OSwxNC4yMV0sWzM3LjkxLDE0Ljk2XSxbMzguNTEsMTQuNTFdLFszOS4xLDE0Ljc0XSxbMzkuMzQsMTQuNTNdLFs0MC4wMywxNC41Ml0sWzQwLjksMTQuMTJdLFs0MS4xNiwxMy43N10sWzQxLjYsMTMuNDVdLFs0Mi4wMSwxMi44N10sWzQyLjM1LDEyLjU0XSxbNDIsMTIuMV0sWzQxLjY2LDExLjYzXSxbNDEuNzQsMTEuMzZdLFs0MS43NiwxMS4wNV0sWzQyLjMxLDExLjAzXSxbNDIuNTUsMTEuMTFdLFs0Mi43OCwxMC45M10sWzQyLjU2LDEwLjU3XSxbNDIuOTMsMTAuMDJdLFs0My4zLDkuNTRdLFs0My42OCw5LjE4XSxbNDYuOTUsOF0sWzQ3Ljc5LDhdXV1dfSx7bjpgRGppYm91dGlgLGEyOmBESmAsYTM6YERKSWAscDpgREpgLGw6WzQyLjUsMTEuOThdLGc6W1tbWzQyLjM1LDEyLjU0XSxbNDIuNzgsMTIuNDZdLFs0My4wOCwxMi43XSxbNDMuMzIsMTIuMzldLFs0My4yOSwxMS45N10sWzQyLjcyLDExLjc0XSxbNDMuMTUsMTEuNDZdLFs0Mi43OCwxMC45M10sWzQyLjU1LDExLjExXSxbNDIuMzEsMTEuMDNdLFs0MS43NiwxMS4wNV0sWzQxLjc0LDExLjM2XSxbNDEuNjYsMTEuNjNdLFs0MiwxMi4xXSxbNDIuMzUsMTIuNTRdXV1dfSx7bjpgU29tYWxpbGFuZGAsYTI6YGAsYTM6YFNPTGAscDpgU0xgLGw6WzQ2LjczLDkuNDRdLGc6W1tbWzQ4Ljk1LDExLjQxXSxbNDguOTQsMTEuMzldLFs0OC45NCwxMC45OF0sWzQ4Ljk0LDkuOTddLFs0OC45NCw5LjQ1XSxbNDguNDksOC44NF0sWzQ3Ljc5LDhdLFs0Ni45NSw4XSxbNDMuNjgsOS4xOF0sWzQzLjMsOS41NF0sWzQyLjkzLDEwLjAyXSxbNDIuNTYsMTAuNTddLFs0Mi43OCwxMC45M10sWzQzLjE1LDExLjQ2XSxbNDMuNDcsMTEuMjhdLFs0My42NywxMC44Nl0sWzQ0LjEyLDEwLjQ1XSxbNDQuNjEsMTAuNDRdLFs0NS41NiwxMC43XSxbNDYuNjUsMTAuODJdLFs0Ny41MywxMS4xM10sWzQ4LjAyLDExLjE5XSxbNDguMzgsMTEuMzhdLFs0OC45NSwxMS40MV1dXV19LHtuOmBVZ2FuZGFgLGEyOmBVR2AsYTM6YFVHQWAscDpgVUdgLGw6WzMyLjk1LDEuOTddLGc6W1tbWzMzLjksLS45NV0sWzMxLjg3LC0xLjAzXSxbMzAuNzcsLTEuMDFdLFszMC40MiwtMS4xM10sWzI5LjgyLC0xLjQ0XSxbMjkuNTgsLTEuMzRdLFsyOS41OSwtLjU5XSxbMjkuODIsLS4yMV0sWzI5Ljg4LC42XSxbMzAuMDksMS4wNl0sWzMwLjQ3LDEuNThdLFszMC44NSwxLjg1XSxbMzEuMTcsMi4yXSxbMzAuNzcsMi4zNF0sWzMwLjgzLDMuNTFdLFszMS4yNSwzLjc4XSxbMzEuODgsMy41Nl0sWzMyLjY5LDMuNzldLFszMy4zOSwzLjc5XSxbMzQuMDEsNC4yNV0sWzM0LjQ4LDMuNTZdLFszNC42LDMuMDVdLFszNS4wNCwxLjkxXSxbMzQuNjcsMS4xOF0sWzM0LjE4LC41Ml0sWzMzLjg5LC4xMV0sWzMzLjksLS45NV1dXV19LHtuOmBSd2FuZGFgLGEyOmBSV2AsYTM6YFJXQWAscDpgUldgLGw6WzMwLjEsLTEuOV0sZzpbW1tbMzAuNDIsLTEuMTNdLFszMC44MiwtMS43XSxbMzAuNzYsLTIuMjldLFszMC40NywtMi40MV0sWzI5Ljk0LC0yLjM1XSxbMjkuNjMsLTIuOTJdLFsyOS4wMiwtMi44NF0sWzI5LjEyLC0yLjI5XSxbMjkuMjUsLTIuMjJdLFsyOS4yOSwtMS42Ml0sWzI5LjU4LC0xLjM0XSxbMjkuODIsLTEuNDRdLFszMC40MiwtMS4xM11dXV19LHtuOmBCb3NuaWEgYW5kIEhlcnplZ292aW5hYCxhMjpgQkFgLGEzOmBCSUhgLHA6YEJpSGAsbDpbMTguMDcsNDQuMDldLGc6W1tbWzE4LjU2LDQyLjY1XSxbMTcuNjcsNDMuMDNdLFsxNy4zLDQzLjQ1XSxbMTYuOTIsNDMuNjddLFsxNi40Niw0NC4wNF0sWzE2LjI0LDQ0LjM1XSxbMTUuNzUsNDQuODJdLFsxNS45Niw0NS4yM10sWzE2LjMyLDQ1XSxbMTYuNTMsNDUuMjFdLFsxNyw0NS4yM10sWzE3Ljg2LDQ1LjA3XSxbMTguNTUsNDUuMDhdLFsxOS4wMSw0NC44Nl0sWzE5LjM3LDQ0Ljg2XSxbMTkuMTIsNDQuNDJdLFsxOS42LDQ0LjA0XSxbMTkuNDUsNDMuNTddLFsxOS4yMiw0My41Ml0sWzE5LjAzLDQzLjQzXSxbMTguNzEsNDMuMl0sWzE4LjU2LDQyLjY1XV1dXX0se246YE5vcnRoIE1hY2Vkb25pYWAsYTI6YE1LYCxhMzpgTUtEYCxwOmBOTWAsbDpbMjEuNTYsNDEuNTZdLGc6W1tbWzIyLjM4LDQyLjMyXSxbMjIuODgsNDJdLFsyMi45NSw0MS4zNF0sWzIyLjc2LDQxLjNdLFsyMi42LDQxLjEzXSxbMjIuMDYsNDEuMTVdLFsyMS42Nyw0MC45M10sWzIxLjAyLDQwLjg0XSxbMjAuNjEsNDEuMDldLFsyMC40Niw0MS41Ml0sWzIwLjU5LDQxLjg2XSxbMjAuNzIsNDEuODVdLFsyMC43Niw0Mi4wNV0sWzIxLjM1LDQyLjIxXSxbMjEuNTgsNDIuMjVdLFsyMS45Miw0Mi4zXSxbMjIuMzgsNDIuMzJdXV1dfSx7bjpgU2VyYmlhYCxhMjpgUlNgLGEzOmBTUkJgLHA6YFJTYCxsOlsyMC43OSw0NC4xOV0sZzpbW1tbMTguODMsNDUuOTFdLFsxOS42LDQ2LjE3XSxbMjAuMjIsNDYuMTNdLFsyMC43Niw0NS43M10sWzIwLjg3LDQ1LjQyXSxbMjEuNDgsNDUuMThdLFsyMS41Niw0NC43N10sWzIyLjE1LDQ0LjQ4XSxbMjIuNDYsNDQuN10sWzIyLjcxLDQ0LjU4XSxbMjIuNDcsNDQuNDFdLFsyMi42Niw0NC4yM10sWzIyLjQxLDQ0LjAxXSxbMjIuNSw0My42NF0sWzIyLjk5LDQzLjIxXSxbMjIuNiw0Mi45XSxbMjIuNDQsNDIuNThdLFsyMi41NSw0Mi40Nl0sWzIyLjM4LDQyLjMyXSxbMjEuOTIsNDIuM10sWzIxLjU4LDQyLjI1XSxbMjEuNTQsNDIuMzJdLFsyMS42Niw0Mi40NF0sWzIxLjc4LDQyLjY4XSxbMjEuNjMsNDIuNjhdLFsyMS40NCw0Mi44Nl0sWzIxLjI3LDQyLjkxXSxbMjEuMTQsNDMuMDddLFsyMC45Niw0My4xM10sWzIwLjgxLDQzLjI3XSxbMjAuNjQsNDMuMjJdLFsyMC41LDQyLjg4XSxbMjAuMjYsNDIuODFdLFsyMC4zNCw0Mi45XSxbMTkuOTYsNDMuMTFdLFsxOS42Myw0My4yMV0sWzE5LjQ4LDQzLjM1XSxbMTkuMjIsNDMuNTJdLFsxOS40NSw0My41N10sWzE5LjYsNDQuMDRdLFsxOS4xMiw0NC40Ml0sWzE5LjM3LDQ0Ljg2XSxbMTkuMDEsNDQuODZdLFsxOS4zOSw0NS4yNF0sWzE5LjA3LDQ1LjUyXSxbMTguODMsNDUuOTFdXV1dfSx7bjpgTW9udGVuZWdyb2AsYTI6YE1FYCxhMzpgTU5FYCxwOmBNRWAsbDpbMTkuMTQsNDIuOF0sZzpbW1tbMjAuMDcsNDIuNTldLFsxOS44LDQyLjVdLFsxOS43NCw0Mi42OV0sWzE5LjMsNDIuMl0sWzE5LjM3LDQxLjg4XSxbMTkuMTYsNDEuOTZdLFsxOC44OCw0Mi4yOF0sWzE4LjQ1LDQyLjQ4XSxbMTguNTYsNDIuNjVdLFsxOC43MSw0My4yXSxbMTkuMDMsNDMuNDNdLFsxOS4yMiw0My41Ml0sWzE5LjQ4LDQzLjM1XSxbMTkuNjMsNDMuMjFdLFsxOS45Niw0My4xMV0sWzIwLjM0LDQyLjldLFsyMC4yNiw0Mi44MV0sWzIwLjA3LDQyLjU5XV1dXX0se246YEtvc292b2AsYTI6YGAsYTM6YEtPU2AscDpgS09gLGw6WzIwLjg2LDQyLjU5XSxnOltbW1syMC41OSw0MS44Nl0sWzIwLjUyLDQyLjIyXSxbMjAuMjgsNDIuMzJdLFsyMC4wNyw0Mi41OV0sWzIwLjI2LDQyLjgxXSxbMjAuNSw0Mi44OF0sWzIwLjY0LDQzLjIyXSxbMjAuODEsNDMuMjddLFsyMC45Niw0My4xM10sWzIxLjE0LDQzLjA3XSxbMjEuMjcsNDIuOTFdLFsyMS40NCw0Mi44Nl0sWzIxLjYzLDQyLjY4XSxbMjEuNzgsNDIuNjhdLFsyMS42Niw0Mi40NF0sWzIxLjU0LDQyLjMyXSxbMjEuNTgsNDIuMjVdLFsyMS4zNSw0Mi4yMV0sWzIwLjc2LDQyLjA1XSxbMjAuNzIsNDEuODVdLFsyMC41OSw0MS44Nl1dXV19LHtuOmBUcmluaWRhZCBhbmQgVG9iYWdvYCxhMjpgVFRgLGEzOmBUVE9gLHA6YFRUYCxsOlstNjAuOTIsMTFdLGc6W1tbWy02MS42OCwxMC43Nl0sWy02MS4xLDEwLjg5XSxbLTYwLjg5LDEwLjg2XSxbLTYwLjkzLDEwLjExXSxbLTYxLjc3LDEwXSxbLTYxLjk1LDEwLjA5XSxbLTYxLjY2LDEwLjM3XSxbLTYxLjY4LDEwLjc2XV1dXX0se246YFNvdXRoIFN1ZGFuYCxhMjpgU1NgLGEzOmBTU0RgLHA6YFNTYCxsOlszMC4zOSw3LjIzXSxnOltbW1szMC44MywzLjUxXSxbMjkuOTUsNC4xN10sWzI5LjcyLDQuNl0sWzI5LjE2LDQuMzldLFsyOC43LDQuNDZdLFsyOC40Myw0LjI5XSxbMjcuOTgsNC40MV0sWzI3LjM3LDUuMjNdLFsyNy4yMSw1LjU1XSxbMjYuNDcsNS45NV0sWzI2LjIxLDYuNTVdLFsyNS44LDYuOThdLFsyNS4xMiw3LjVdLFsyNS4xMSw3LjgzXSxbMjQuNTcsOC4yM10sWzIzLjg5LDguNjJdLFsyNC4xOSw4LjczXSxbMjQuNTQsOC45Ml0sWzI0Ljc5LDkuODFdLFsyNS4wNywxMC4yN10sWzI1Ljc5LDEwLjQxXSxbMjUuOTYsMTAuMTRdLFsyNi40OCw5LjU1XSxbMjYuNzUsOS40N10sWzI3LjExLDkuNjRdLFsyNy44Myw5LjZdLFsyNy45Nyw5LjRdLFsyOC45Nyw5LjRdLFsyOSw5LjZdLFsyOS41Miw5Ljc5XSxbMjkuNjIsMTAuMDhdLFszMCwxMC4yOV0sWzMwLjg0LDkuNzFdLFszMS4zNSw5LjgxXSxbMzEuODUsMTAuNTNdLFszMi40LDExLjA4XSxbMzIuMzEsMTEuNjhdLFszMi4wNywxMS45N10sWzMyLjY3LDEyLjAyXSxbMzIuNzQsMTIuMjVdLFszMy4yMSwxMi4xOF0sWzMzLjA5LDExLjQ0XSxbMzMuMjEsMTAuNzJdLFszMy43MiwxMC4zM10sWzMzLjg0LDkuOThdLFszMy44Miw5LjQ4XSxbMzMuOTYsOS40Nl0sWzMzLjk3LDguNjhdLFszMy44Myw4LjM4XSxbMzMuMjksOC4zNV0sWzMyLjk1LDcuNzhdLFszMy41Nyw3LjcxXSxbMzQuMDgsNy4yM10sWzM0LjI1LDYuODNdLFszNC43MSw2LjU5XSxbMzUuMyw1LjUxXSxbMzQuNjIsNC44NV0sWzM0LjAxLDQuMjVdLFszMy4zOSwzLjc5XSxbMzIuNjksMy43OV0sWzMxLjg4LDMuNTZdLFszMS4yNSwzLjc4XSxbMzAuODMsMy41MV1dXV19XX0pKSxJeD1uKHtSRUdJT05fTUFQX0lNUExFTUVOVEFUSU9OX01BUktFUjooKT0+dFMscHJvamVjdFJlZ2lvbk1hcFBvaW50OigpPT5MeCxyZWdpb25NYXBDb2xvclNjYWxlOigpPT5ZeCxyZW5kZXJSZWdpb25NYXBDaGFydDooKT0+ZVMscmVzb2x2ZVJlZ2lvbk1hcEZlYXR1cmU6KCk9Pnp4fSk7ZnVuY3Rpb24gTHgoZSx0KXtsZXQgbj10PT09YG1lcmNhdG9yYHx8dD09PWBtaWxsZXJgfHx0PT09YGFsYmVyc2B8fHQ9PT1gcm9iaW5zb25gP3Q6YHJvYmluc29uYCxyPWlTKE1hdGgubWF4KC0xODAsTWF0aC5taW4oMTgwLGVbMF0pKSksaT1NYXRoLm1heCgtODkuOTk5LE1hdGgubWluKDg5Ljk5OSxlWzFdKSksYT1pUyhpKTtpZihuPT09YG1lcmNhdG9yYCl7bGV0IGU9aVMoTWF0aC5tYXgoLTg1LE1hdGgubWluKDg1LGkpKSk7cmV0dXJue3g6cix5Oi1NYXRoLmxvZyhNYXRoLnRhbihNYXRoLlBJLzQrZS8yKSl9fWlmKG49PT1gbWlsbGVyYClyZXR1cm57eDpyLHk6LTEuMjUqTWF0aC5sb2coTWF0aC50YW4oTWF0aC5QSS80Ky40KmEpKX07aWYobj09PWBhbGJlcnNgKXtsZXQgZT1pUygyMCksdD1pUyg1MCksbj0uNSooTWF0aC5zaW4oZSkrTWF0aC5zaW4odCkpLGk9TWF0aC5jb3MoZSkqKjIrMipuKk1hdGguc2luKGUpLG89TWF0aC5zcXJ0KGkpL24scz1NYXRoLnNxcnQoTWF0aC5tYXgoMCxpLTIqbipNYXRoLnNpbihhKSkpL24sYz1uKnI7cmV0dXJue3g6cypNYXRoLnNpbihjKSx5Om8tcypNYXRoLmNvcyhjKX19bGV0IG89TWF0aC5hYnMoaSkscz1NYXRoLm1pbigxNyxNYXRoLmZsb29yKG8vNSkpLGM9TWF0aC5taW4oMSwoby1zKjUpLzUpLGw9ZT0+ZVtzXSsoZVtzKzFdLWVbc10pKmM7cmV0dXJue3g6Ljg0ODcqcipsKG5TKSx5Oi0xLjM1MjMqTWF0aC5zaWduKGkpKmwoclMpfX1mdW5jdGlvbiBSeChlKXtyZXR1cm4gZS5ub3JtYWxpemUoYE5GS0RgKS5yZXBsYWNlKC9bXHUwMzAwLVx1MDM2Zl0vZyxgYCkudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC9bXmEtejAtOV0rL2csYGApfWZ1bmN0aW9uIHp4KGUsdCl7bGV0IG49ZT0+b1MuZ2V0KGUpPz9zUy5nZXQoZSk/P2NTLmdldChlKT8/bFMuZ2V0KGUpLHI9dD9uKFJ4KHQpKTp2b2lkIDA7aWYocilyZXR1cm4gcjtsZXQgaT1SeChlKTtyZXR1cm4gbihpKT8/KHVTW2ldP24oUngodVNbaV0pKTp2b2lkIDApfWZ1bmN0aW9uIEJ4KGUsdCl7bGV0IG49KGU/P2BgKS5yZXBsYWNlKC9eIy8sYGApLnNsaWNlKDAsNik7cmV0dXJuL15bMC05YS1mXXs2fSQvaS50ZXN0KG4pP1swLDIsNF0ubWFwKGU9Pk51bWJlci5wYXJzZUludChuLnNsaWNlKGUsZSsyKSwxNikpOkJ4KHQsYDAwMDAwMGApfWZ1bmN0aW9uIFZ4KGUpe3JldHVybmAjJHtlLm1hcChlPT5NYXRoLnJvdW5kKE1hdGgubWF4KDAsTWF0aC5taW4oMjU1LGUpKSkudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsYDBgKSkuam9pbihgYCkudG9VcHBlckNhc2UoKX1gfWZ1bmN0aW9uIEh4KGUsdCxuKXtyZXR1cm4gVngoZS5tYXAoKGUscik9PmUrKHRbcl0tZSkqTWF0aC5tYXgoMCxNYXRoLm1pbigxLG4pKSkpfWZ1bmN0aW9uIFV4KFtlLHQsbl0pe2xldCByPWUvMjU1LGk9dC8yNTUsYT1uLzI1NSxvPU1hdGgubWF4KHIsaSxhKSxzPU1hdGgubWluKHIsaSxhKSxjPShvK3MpLzIsbD1vLXM7aWYobD09PTApcmV0dXJuWzAsMCxjXTtsZXQgdT1sLygxLU1hdGguYWJzKDIqYy0xKSk7cmV0dXJuWygobz09PXI/KGktYSkvbCU2Om89PT1pPyhhLXIpL2wrMjooci1pKS9sKzQpKjYwKzM2MCklMzYwLHUsY119ZnVuY3Rpb24gV3goZSx0LG4pe2xldCByPSgxLU1hdGguYWJzKDIqbi0xKSkqdCxpPShlJTM2MCszNjApJTM2MC82MCxhPXIqKDEtTWF0aC5hYnMoaSUyLTEpKSxbbyxzLGNdPWk8MT9bcixhLDBdOmk8Mj9bYSxyLDBdOmk8Mz9bMCxyLGFdOmk8ND9bMCxhLHJdOmk8NT9bYSwwLHJdOltyLDAsYV0sbD1uLXIvMjtyZXR1cm5bbytsLHMrbCxjK2xdLm1hcChlPT5lKjI1NSl9ZnVuY3Rpb24gR3goZSl7bGV0W3QsbixyXT1VeChCeChlLGA0NDcyQzRgKSk7cmV0dXJue21pbjpWeChXeCh0LG4sciouMisuOCkpLG1heDpWeChXeCh0LG4sciouNzUpKX19ZnVuY3Rpb24gS3goZSx0LG4pe2xldCByPU1hdGgubWF4KDAsTWF0aC5taW4oMSxuKSksaT1lKyh0LWUpKnI7aWYoTnVtYmVyLmlzRmluaXRlKGkpKXJldHVybiBpO2xldCBhPU1hdGgubWF4KE1hdGguYWJzKGUpLE1hdGguYWJzKHQpKTtyZXR1cm4hKGE+MCl8fCFOdW1iZXIuaXNGaW5pdGUoYSk/MDooZS9hKigxLXIpK3QvYSpyKSphfWZ1bmN0aW9uIHF4KGUsdCxuKXtpZih0PT09bilyZXR1cm4gLjU7bGV0IHI9KGUtdCkvKG4tdCk7aWYoTnVtYmVyLmlzRmluaXRlKHIpKXJldHVybiByO2xldCBpPU1hdGgubWF4KE1hdGguYWJzKGUpLE1hdGguYWJzKHQpLE1hdGguYWJzKG4pKTtyZXR1cm4hKGk+MCl8fCFOdW1iZXIuaXNGaW5pdGUoaSk/LjU6KGUvaS10L2kpLyhuL2ktdC9pKX1mdW5jdGlvbiBKeChlLHQsbixyKXtyZXR1cm4hZXx8ZS5raW5kPT09YGV4dHJlbWVWYWx1ZWA/dDplLmtpbmQ9PT1gcGVyY2VudGAmJk51bWJlci5pc0Zpbml0ZShlLnZhbHVlKT9LeChuLHIsZS52YWx1ZS8xMDApOmUua2luZD09PWBudW1iZXJgJiZOdW1iZXIuaXNGaW5pdGUoZS52YWx1ZSk/ZS52YWx1ZTp0fWZ1bmN0aW9uIFl4KGUsdCxuKXtsZXQgcj0xLzAsaT0tMS8wO2ZvcihsZXQgdCBvZiBlKU51bWJlci5pc0Zpbml0ZSh0KSYmKHI9TWF0aC5taW4ocix0KSxpPU1hdGgubWF4KGksdCkpOyghTnVtYmVyLmlzRmluaXRlKHIpfHwhTnVtYmVyLmlzRmluaXRlKGkpKSYmKHI9MCxpPTEpO2xldCBhPUd4KG4pLG89VngoQngodD8ubWluQ29sb3IsYS5taW4pKSxzPXQ/LnN0b3BDb3VudD09PTMmJnQubWlkQ29sb3I/VngoQngodC5taWRDb2xvcixgNUI5QkQ1YCkpOnZvaWQgMCxjPVZ4KEJ4KHQ/Lm1heENvbG9yLGEubWF4KSksbD1KeCh0Py5taW5Qb3NpdGlvbixyLHIsaSksdT1KeCh0Py5tYXhQb3NpdGlvbixpLHIsaSksZD1KeCh0Py5taWRQb3NpdGlvbiwobCt1KS8yLHIsaSksZj1NYXRoLm1pbihsLHUpLHA9TWF0aC5tYXgobCx1KTtyZXR1cm57bWluOnIsbWF4OmksbWluQ29sb3I6byxtaWRDb2xvcjpzLG1heENvbG9yOmMsY29sb3IoZSl7cmV0dXJuIHM/ZTw9ZD9IeChCeChvLG8pLEJ4KHMscykscXgoZSxmLGQpKTpIeChCeChzLHMpLEJ4KGMsYykscXgoZSxkLHApKTpIeChCeChvLG8pLEJ4KGMsYykscXgoZSxmLHApKX19fWZ1bmN0aW9uIFh4KGUpe2xldCB0PW5ldyBNYXA7Zm9yKGxldCBuPTA7bjxlLnJvd3MubGVuZ3RoO24rKyl7bGV0IHI9ZS5yb3dzW25dO2lmKCFOdW1iZXIuaXNGaW5pdGUoci52YWx1ZSkpY29udGludWU7bGV0IGk9engoci5sYWJlbCxyLmVudGl0eUlkKTtpZighaSljb250aW51ZTtsZXQgYT10LmdldChpKT8/MCxvPXIudmFsdWUscz1hK28sYz1OdW1iZXIuaXNGaW5pdGUocyk/czphPjAmJm8+MD9OdW1iZXIuTUFYX1ZBTFVFOmE8MCYmbzwwPy1OdW1iZXIuTUFYX1ZBTFVFOjA7dC5zZXQoaSxjKX1yZXR1cm4gdH1mdW5jdGlvbiBaeChlLHQsbixyLGkpe2lmKCF0LnRpdGxlJiYhdC50aXRsZVByZXNlbnQpcmV0dXJuO2xldCBhPXQudGl0bGVGb250RmFjZXx8dC50aGVtZU1ham9yRm9udExhdGlufHxgc2Fucy1zZXJpZmA7ZS5mb250PWAke3QudGl0bGVGb250Qm9sZD8/ITA/YGJvbGQgYDpgYH0ke3J9cHggJHtKU09OLnN0cmluZ2lmeShhKX1gLGUuZmlsbFN0eWxlPXQudGl0bGVGb250Q29sb3I/YCMke3QudGl0bGVGb250Q29sb3J9YDpgIzMzMzMzM2AsZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YHRvcGAsZS5maWxsVGV4dCh0LnRpdGxlPz9gYCxuLngrbi53LzIsbi55K2kpfWZ1bmN0aW9uIFF4KGUsdCxuLHIsaSxhLG8scyl7bGV0IGM9dC5zZXJpZXNbMF0/Lm5hbWU/P2BgLGw9TWF0aC5tYXgoOCwodC5sZWdlbmRGb250U2l6ZUhwdD8/OTAwKS8xMDAqcyk7ZS5mb250PWAke3QubGVnZW5kRm9udEJvbGQ/YGJvbGQgYDpgYH0ke2x9cHggJHtKU09OLnN0cmluZ2lmeSh0LmxlZ2VuZEZvbnRGYWNlfHx0LnRoZW1lTWlub3JGb250TGF0aW58fGBzYW5zLXNlcmlmYCl9YCxlLmZpbGxTdHlsZT10LmxlZ2VuZEZvbnRDb2xvcj9gIyR7dC5sZWdlbmRGb250Q29sb3J9YDpgIzU5NTk1OWAsZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YHRvcGAsYyYmZS5maWxsVGV4dChjLHIrYS8yLGkpO2xldCB1PU1hdGgubWluKGEqLjU4LDI0MCksZD1NYXRoLm1heCg2LE1hdGgubWluKDEyLG8qLjI1KSksZj1yKyhhLXUpLzIscD1pKyhjP2wrMjowKSxtPWUuY3JlYXRlTGluZWFyR3JhZGllbnQoZiwwLGYrdSwwKTttLmFkZENvbG9yU3RvcCgwLG4ubWluQ29sb3IpLG4ubWlkQ29sb3ImJm0uYWRkQ29sb3JTdG9wKC41LG4ubWlkQ29sb3IpLG0uYWRkQ29sb3JTdG9wKDEsbi5tYXhDb2xvciksZS5maWxsU3R5bGU9bSxlLmZpbGxSZWN0KGYscCx1LGQpLGUuZmlsbFN0eWxlPXQubGVnZW5kRm9udENvbG9yP2AjJHt0LmxlZ2VuZEZvbnRDb2xvcn1gOmAjNTk1OTU5YCxlLnRleHRCYXNlbGluZT1gdG9wYCxlLnRleHRBbGlnbj1gbGVmdGA7bGV0IGg9dC5zZXJpZXNbMF0/LnZhbEZvcm1hdENvZGU/P251bGw7ZS5maWxsVGV4dChiYShuLm1pbixoLHQuZGF0ZTE5MDQpLGYscCtkKzIpLGUudGV4dEFsaWduPWByaWdodGAsZS5maWxsVGV4dChiYShuLm1heCxoLHQuZGF0ZTE5MDQpLGYrdSxwK2QrMil9ZnVuY3Rpb24gJHgoZSx0LG4scil7ZS5maWxsU3R5bGU9YCM2NjY2NjZgLGUuZm9udD1gJHtNYXRoLm1heCg5LDkqbil9cHggc2Fucy1zZXJpZmAsZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWAsZS5maWxsVGV4dChyLHQueCt0LncvMix0LnkrdC5oLzIpfWZ1bmN0aW9uIGVTKGUsdCxuLHIsaT0wKXtpZih0LmNoYXJ0VHlwZSE9PWByZWdpb25NYXBgfHwhdC5jaGFydGV4UmVnaW9uTWFwKXJldHVybiExO2xldCBhPXQuY2hhcnRleFJlZ2lvbk1hcDtpZihhLnJvd3MubGVuZ3RoPmFTKXJldHVybiAkeChlLG4scixgKGNoYXJ0IHZhbHVlcyBleGNlZWQgcmVuZGVyaW5nIGxpbWl0KWApLCEwO2lmKGEuZ2VvZ3JhcGh5Py5jYWNoZVByZXNlbnQpcmV0dXJuICR4KGUsbixyLGAocmVnaW9uIG1hcCBjYWNoZSBpcyB1bmF2YWlsYWJsZSBvZmZsaW5lKWApLCEwO2xldCBvPWEuZ2VvZ3JhcGh5Py52aWV3ZWRSZWdpb25UeXBlO2lmKG8hPW51bGwmJm8hPT1gd29ybGRgKXJldHVybiAkeChlLG4scixgKHJlZ2lvbiBtYXAgZGV0YWlsIGlzIHVuYXZhaWxhYmxlIG9mZmxpbmUpYCksITA7bGV0IHM9WHgoYSksYz1ZeChbLi4ucy52YWx1ZXMoKV0sYS5jb2xvcnMsdC5jaGFydGV4QWNjZW50cz8uWzBdKSxsPU10KHQsbi5oLHIsLjAyLC4wMTUpO1p4KGUsdCxuLGwuZm9udFB4LGwudG9wUGFkKTtsZXQgdT10LnNob3dMZWdlbmQ/TWF0aC5tYXgoMzIsbi5oKi4xNik6MCxkPXQuc2hvd0xlZ2VuZD97eDpuLngseTpuLnkrbC5iYW5kSCx3Om4udyxoOnV9Om51bGwsZj1kJiZ0LmxlZ2VuZE1hbnVhbExheW91dD9HdCh0LmxlZ2VuZE1hbnVhbExheW91dCxuLGQpPz9kOmQscD10LmxlZ2VuZE92ZXJsYXk9PT0hMD8wOnUsbT1uLncqLjAzLGg9bi5oKi4wMzUsZz17eDpuLngrbSx5Om4ueStsLmJhbmRIK3AsdzpNYXRoLm1heCgxLG4udy1tKjIpLGg6TWF0aC5tYXgoMSxuLmgtbC5iYW5kSC1wLWgpfSxfPXQucGxvdEFyZWFNYW51YWxMYXlvdXQ/R3QodC5wbG90QXJlYU1hbnVhbExheW91dCxuLGcpPz9nOmc7JGEoZSx0LF8ueCxfLnksXy53LF8uaCxyLGkpLGYmJihaYShlLHQsZixyLGkpLFF4KGUsdCxjLGYueCxmLnksZi53LGYuaCxyKSk7bGV0IHY9YS5nZW9ncmFwaHk/LnByb2plY3Rpb25UeXBlLHk9MS8wLGI9MS8wLHg9LTEvMCxTPS0xLzA7Zm9yKGxldCBlIG9mIFB4KWZvcihsZXQgdCBvZiBlLmcpZm9yKGxldCBlIG9mIHQpZm9yKGxldCB0IG9mIGUpe2xldCBlPUx4KHQsdik7eT1NYXRoLm1pbih5LGUueCkseD1NYXRoLm1heCh4LGUueCksYj1NYXRoLm1pbihiLGUueSksUz1NYXRoLm1heChTLGUueSl9bGV0IEM9TWF0aC5taW4oXy53L01hdGgubWF4KE51bWJlci5NSU5fVkFMVUUseC15KSxfLmgvTWF0aC5tYXgoTnVtYmVyLk1JTl9WQUxVRSxTLWIpKSx3PV8ueCsoXy53LSh4LXkpKkMpLzIteSpDLFQ9Xy55KyhfLmgtKFMtYikqQykvMi1iKkMsRT1lPT57bGV0IHQ9THgoZSx2KTtyZXR1cm57eDp3K3QueCpDLHk6VCt0LnkqQ319LEQ9bmV3IE1hcDtlLmxpbmVXaWR0aD1NYXRoLm1heCguMzUsLjU1KnIpLGUuc3Ryb2tlU3R5bGU9YCNGRkZGRkZgO2ZvcihsZXQgdCBvZiBQeCl7ZS5iZWdpblBhdGgoKTtsZXQgbj17bWluWDoxLzAsbWluWToxLzAsbWF4WDotMS8wLG1heFk6LTEvMH07Zm9yKGxldCByIG9mIHQuZylmb3IobGV0IHQgb2Ygcil7bGV0IHI7Zm9yKGxldCBpPTA7aTx0Lmxlbmd0aDtpKyspe2xldCBhPXRbaV0sbz1FKGEpO24ubWluWD1NYXRoLm1pbihuLm1pblgsby54KSxuLm1heFg9TWF0aC5tYXgobi5tYXhYLG8ueCksbi5taW5ZPU1hdGgubWluKG4ubWluWSxvLnkpLG4ubWF4WT1NYXRoLm1heChuLm1heFksby55KSxpPT09MHx8ciYmTWF0aC5hYnMoYVswXS1yWzBdKT4xODA/ZS5tb3ZlVG8oby54LG8ueSk6ZS5saW5lVG8oby54LG8ueSkscj1hfWUuY2xvc2VQYXRoKCl9ZS5maWxsU3R5bGU9cy5oYXModCk/Yy5jb2xvcihzLmdldCh0KSk6YCNFMEUwRTBgLGUuZmlsbChgZXZlbm9kZGApLGUuc3Ryb2tlKCksRC5zZXQodCxuKX1pZihhLnJlZ2lvbkxhYmVsTGF5b3V0JiZhLnJlZ2lvbkxhYmVsTGF5b3V0IT09YG5vbmVgKXtlLmZvbnQ9YCR7TWF0aC5tYXgoNywodC5kYXRhTGFiZWxGb250U2l6ZUhwdD8/ODAwKS8xMDAqcil9cHggJHtKU09OLnN0cmluZ2lmeSh0LmRhdGFMYWJlbEZvbnRGYWNlfHx0LnRoZW1lTWlub3JGb250TGF0aW58fGBzYW5zLXNlcmlmYCl9YCxlLmZpbGxTdHlsZT10LmRhdGFMYWJlbEZvbnRDb2xvcj9gIyR7dC5kYXRhTGFiZWxGb250Q29sb3J9YDpgIzQwNDA0MGAsZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7Zm9yKGxldCB0IG9mIGEucm93cyl7bGV0IG49engodC5sYWJlbCx0LmVudGl0eUlkKSxyPW4/RC5nZXQobik6dm9pZCAwO2lmKCFufHwhcnx8IXQubGFiZWwpY29udGludWU7bGV0IGk9RShuLmwpLG89ZS5tZWFzdXJlVGV4dCh0LmxhYmVsKS53aWR0aDw9TWF0aC5tYXgoMCxyLm1heFgtci5taW5YLTQpOyhhLnJlZ2lvbkxhYmVsTGF5b3V0PT09YHNob3dBbGxgfHxvKSYmZS5maWxsVGV4dCh0LmxhYmVsLGkueCxpLnkpfX1yZXR1cm4gYS5nZW9ncmFwaHk/LmF0dHJpYnV0aW9uJiYoZS5mb250PWAke01hdGgubWF4KDcsNypyKX1weCBzYW5zLXNlcmlmYCxlLmZpbGxTdHlsZT1gIzc3Nzc3N2AsZS50ZXh0QWxpZ249YHJpZ2h0YCxlLnRleHRCYXNlbGluZT1gYm90dG9tYCxlLmZpbGxUZXh0KGEuZ2VvZ3JhcGh5LmF0dHJpYnV0aW9uLG4ueCtuLnctNCxuLnkrbi5oLTIpKSwhMH12YXIgdFMsblMsclMsaVMsYVMsb1Msc1MsY1MsbFMsdVMsZFM9dCgoKCk9PntRdCgpLFFhKCksZW8oKSxPYSgpLEZ4KCksdFM9YG9veG1sLXJlZ2lvbi1tYXAtbmF0dXJhbC1lYXJ0aC12MWAsblM9WzEsLjk5ODYsLjk5NTQsLjk5LC45ODIyLC45NzMsLjk2LC45NDI3LC45MjE2LC44OTYyLC44Njc5LC44MzUsLjc5ODYsLjc1OTcsLjcxODYsLjY3MzIsLjYyMTMsLjU3MjIsLjUzMjJdLHJTPVswLC4wNjIsLjEyNCwuMTg2LC4yNDgsLjMxLC4zNzIsLjQzNCwuNDk1OCwuNTU3MSwuNjE3NiwuNjc2OSwuNzM0NiwuNzkwMywuODQzNSwuODkzNiwuOTM5NCwuOTc2MSwxXSxpUz1lPT5lKk1hdGguUEkvMTgwLGFTPTFlNCxvUz1uZXcgTWFwLHNTPW5ldyBNYXAsY1M9bmV3IE1hcCxsUz1uZXcgTWFwO2ZvcihsZXQgZSBvZiBQeClpZihvUy5zZXQoUngoZS5uKSxlKSxlLmEyJiZzUy5zZXQoUngoZS5hMiksZSksZS5hMyYmY1Muc2V0KFJ4KGUuYTMpLGUpLGUucCl7bGV0IHQ9UngoZS5wKTtsUy5oYXModCl8fGxTLnNldCh0LGUpfXVTPXt1bml0ZWRzdGF0ZXNvZmFtZXJpY2E6YFVuaXRlZCBTdGF0ZXNgLHVzYTpgVW5pdGVkIFN0YXRlc2AsdWs6YFVuaXRlZCBLaW5nZG9tYCxydXNzaWE6YFJ1c3NpYW4gRmVkZXJhdGlvbmAsc291dGhrb3JlYTpgUmVwdWJsaWMgb2YgS29yZWFgLG5vcnRoa29yZWE6YERlbS4gUmVwLiBLb3JlYWAsY3plY2hpYTpgQ3plY2ggUmVwdWJsaWNgLGl2b3J5Y29hc3Q6YEPDtHRlIGQnSXZvaXJlYCxkcmNvbmdvOmBEZW1vY3JhdGljIFJlcHVibGljIG9mIHRoZSBDb25nb2AsY29uZ29kZW1vY3JhdGljcmVwdWJsaWM6YERlbW9jcmF0aWMgUmVwdWJsaWMgb2YgdGhlIENvbmdvYH19KSk7ZnVuY3Rpb24gZlMoZSl7cmV0dXJuIGUhPW51bGwmJk51bWJlci5pc0Zpbml0ZShlKT9lOm51bGx9ZnVuY3Rpb24gcFMoZSl7cmV0dXJuIE9iamVjdC5pcyhlLC0wKT9gMGA6U3RyaW5nKE51bWJlci5pc0ludGVnZXIoZSk/ZTpOdW1iZXIoZS50b1ByZWNpc2lvbig2KSkpfWZ1bmN0aW9uIG1TKGUsdCl7aWYoZS5sZW5ndGg+MTA0ODU3NilyZXR1cm57a2luZDpgdG9vTWFueUlucHV0UG9pbnRzYH07bGV0IG49dC5pbnRlcnZhbENsb3NlZD09PWByYD9gcmA6YGxgLHI9ZlModC51bmRlcmZsb3cpLGk9ZlModC5vdmVyZmxvdyk7ciE9bnVsbCYmaSE9bnVsbCYmcj49aSYmKHI9bnVsbCxpPW51bGwpO2xldCBhPWU9PnIhPW51bGwmJihuPT09YHJgP2U8PXI6ZTxyKSxvPWU9PmkhPW51bGwmJihuPT09YHJgP2U+aTplPj1pKSxzPTEvMCxjPS0xLzAsbD0wLHU9MCxkPTA7Zm9yKGxldCB0IG9mIGUpe2xldCBlPWZTKHQpO2UhPW51bGwmJihhKGUpP3UrKzpvKGUpP2QrKzoobCsrLHM9TWF0aC5taW4ocyxlKSxjPU1hdGgubWF4KGMsZSkpKX1pZihsK3UrZD09PTApcmV0dXJue2tpbmQ6YGJpbnNgLGNhdGVnb3JpZXM6W10sY291bnRzOltdfTtsZXQgZj1bXSxwPVtdO2lmKHIhPW51bGwmJihmLnB1c2goYCR7bj09PWByYD9g4omkYDpgPGB9ICR7cFMocil9YCkscC5wdXNoKHUpKSxsPjApe2xldCB1PXI/P3MsZD1pPz9jLG09ZC11O2lmKCFOdW1iZXIuaXNGaW5pdGUobSkpZi5wdXNoKGAke3BTKHUpfSDigJMgJHtwUyhkKX1gKSxwLnB1c2gobCk7ZWxzZXtsZXQgcz1mUyh0LmJpblNpemUpLGM7Yz1zIT1udWxsJiZzPjAmJm0+MD9NYXRoLm1heCgxLE1hdGguY2VpbChtL3MpKTp0LmJpbkNvdW50IT1udWxsJiZOdW1iZXIuaXNGaW5pdGUodC5iaW5Db3VudCkmJnQuYmluQ291bnQ+MD9NYXRoLm1heCgxLE1hdGguZmxvb3IodC5iaW5Db3VudCkpOk1hdGgubWF4KDEsTWF0aC5jZWlsKE1hdGguc3FydChsKSkpO2xldCBkPW08PTA/MTpNYXRoLm1pbig1MTIsYyksaD1tPjAmJnMhPW51bGwmJnM+MCYmYzw9NTEyLGc9bT09PTA/MTpoP3M6bS9kLF89QXJyYXkoZCkuZmlsbCgwKTtmb3IobGV0IHQgb2YgZSl7bGV0IGU9ZlModCk7aWYoZT09bnVsbHx8YShlKXx8byhlKSljb250aW51ZTtsZXQgcj1oPyhlLXUpL2c6bT09PTA/MDooZS11KS9tKmQsaT1uPT09YHJgP01hdGguY2VpbChyKS0xOk1hdGguZmxvb3Iocikscz1NYXRoLm1heCgwLE1hdGgubWluKGQtMSxpKSk7X1tzXSsrfWZvcihsZXQgZT0wO2U8ZDtlKyspe2xldCB0PWg/dStnKmU6dStlL2QqbSxhPWg/dCtnOnUrbSooKGUrMSkvZCksbz1pPT1udWxsP2E6TWF0aC5taW4oYSxpKSxzPW49PT1gcmAmJihyIT1udWxsfHxlPjApP2A+YDpg4omlYCxjPW49PT1gbGAmJihpIT1udWxsfHxlPGQtMSk/YDxgOmDiiaRgO2YucHVzaChgJHtzfSAke3BTKHQpfSDigJMgJHtjfSAke3BTKG8pfWApLHAucHVzaChfW2VdKX19fXJldHVybiBpIT1udWxsJiYoZi5wdXNoKGAke249PT1gcmA/YD5gOmDiiaVgfSAke3BTKGkpfWApLHAucHVzaChkKSkse2tpbmQ6YGJpbnNgLGNhdGVnb3JpZXM6Zixjb3VudHM6cH19dmFyIGhTPXQoKCgpPT57fSkpO2Z1bmN0aW9uIGdTKGUsdCl7cmV0dXJuIGU9PW51bGw/ZTplLmZsYXRNYXAoZT0+e2xldCBuPXQuZ2V0KGUuaWR4KTtyZXR1cm4gbj09bnVsbD9bXTpbey4uLmUsaWR4Om59XX0pfWZ1bmN0aW9uIF9TKGUsdCl7cmV0dXJuIGU9PW51bGw/ZTp0Lm1hcCh0PT5lW3RdPz9udWxsKX1mdW5jdGlvbiB2UyhlLHQsbj17fSl7bGV0IHI9ZS52YWx1ZXMubWFwKChlLHQpPT4oe3ZhbHVlOmUsc291cmNlSW5kZXg6dH0pKS5maWx0ZXIoZT0+ZS52YWx1ZSE9bnVsbCYmTnVtYmVyLmlzRmluaXRlKGUudmFsdWUpJiZlLnZhbHVlPj0wKTtuLnNvcnREZXNjZW5kaW5nIT09ITEmJnIuc29ydCgoZSx0KT0+dC52YWx1ZS1lLnZhbHVlfHxlLnNvdXJjZUluZGV4LXQuc291cmNlSW5kZXgpO2xldCBpPXJbMF0/LnZhbHVlPz8wLGE9aT4wP3IucmVkdWNlKChlLHQpPT5lK3QudmFsdWUvaSwwKTowLG89MCxzPXIubWFwKG49PihpPjAmJihvKz1uLnZhbHVlL2kpLHtzb3VyY2VJbmRleDpuLnNvdXJjZUluZGV4LGNhdGVnb3J5OmUuY2F0ZWdvcmllcz8uW24uc291cmNlSW5kZXhdPz90W24uc291cmNlSW5kZXhdPz9TdHJpbmcobi5zb3VyY2VJbmRleCsxKSx2YWx1ZTpuLnZhbHVlLGN1bXVsYXRpdmVGcmFjdGlvbjphPjA/bz49YT8xOm8vYTowfSkpLGM9cy5tYXAoZT0+ZS5zb3VyY2VJbmRleCksbD1uZXcgTWFwKGMubWFwKChlLHQpPT5bZSx0XSkpLHU9cy5tYXAoZT0+ZS5jYXRlZ29yeSksZD17Li4uZSxjYXRlZ29yaWVzOnUsY2F0Rm9ybWF0Q29kZXM6X1MoZS5jYXRGb3JtYXRDb2RlcyxjKSxkYXRhUG9pbnRDb2xvcnM6X1MoZS5kYXRhUG9pbnRDb2xvcnMsYyksZGF0YUxhYmVsQ29sb3JzOl9TKGUuZGF0YUxhYmVsQ29sb3JzLGMpLGRhdGFQb2ludE92ZXJyaWRlczpnUyhlLmRhdGFQb2ludE92ZXJyaWRlcyxsKSxkYXRhTGFiZWxPdmVycmlkZXM6Z1MoZS5kYXRhTGFiZWxPdmVycmlkZXMsbCl9O3JldHVybntwb2ludHM6cyxjYXRlZ29yaWVzOnUsb3JkZXJlZFNlcmllczp7Li4uZCx2YWx1ZXM6cy5tYXAoZT0+ZS52YWx1ZSl9LHNlcmllczp7Li4uZCx2YWx1ZXM6cy5tYXAoZT0+ZS5jdW11bGF0aXZlRnJhY3Rpb24pfX19dmFyIHlTPXQoKCgpPT57fSkpO2Z1bmN0aW9uIGJTKGUpe2lmKGUubGVuZ3RoPjFlNClyZXR1cm4hMDtsZXQgdD0wO2ZvcihsZXQgbiBvZiBlKXtpZihuLnBhdGgubGVuZ3RoPjUxMnx8dD4xZTQtbi5wYXRoLmxlbmd0aClyZXR1cm4hMDt0Kz1uLnBhdGgubGVuZ3RofXJldHVybiExfWZ1bmN0aW9uIHhTKGUsdD0hMSl7bGV0IG49e2xhYmVsOmBgLGxheW91dFdlaWdodDowLHZhbHVlOjAsZGVwdGg6LTEsY2hpbGRyZW46W10sYnJhbmNoSW5kZXg6LTEsbGFiZWxJbmRleDotMSxhMDowLGExOjB9LHI9ZS5yZWR1Y2UoKGUsdCk9Pk51bWJlci5pc0Zpbml0ZSh0LnNpemUpJiZ0LnNpemU+ZT90LnNpemU6ZSwwKSxpPShlLHQpPT5lPk51bWJlci5NQVhfVkFMVUUtdD9OdW1iZXIuTUFYX1ZBTFVFOmUrdCxhPW5ldyBXZWFrTWFwO2ZvcihsZXQgbyBvZiBlKXtsZXQgZT1OdW1iZXIuaXNGaW5pdGUoby5zaXplKSYmby5zaXplPjA/by5zaXplOjAscz1yPjA/ZS9yOjAsYz1uO2ZvcihsZXQgbj0wO248by5wYXRoLmxlbmd0aDtuKyspe2xldCByPW8ucGF0aFtuXSxsPWEuZ2V0KGMpO2x8fChsPW5ldyBNYXAsYS5zZXQoYyxsKSk7bGV0IHU9dCYmbj09PW8ucGF0aC5sZW5ndGgtMSxkPXU/dm9pZCAwOmwuZ2V0KHIpO2R8fChkPXtsYWJlbDpyLGxheW91dFdlaWdodDowLHZhbHVlOjAsZGVwdGg6bixjaGlsZHJlbjpbXSxicmFuY2hJbmRleDpuPT09MD9jLmNoaWxkcmVuLmxlbmd0aDpjLmJyYW5jaEluZGV4LGxhYmVsSW5kZXg6LTEsYTA6MCxhMTowfSxjLmNoaWxkcmVuLnB1c2goZCksdXx8bC5zZXQocixkKSksZC5sYXlvdXRXZWlnaHQrPXMsZC52YWx1ZT1pKGQudmFsdWUsZSksYz1kfX1uLmxheW91dFdlaWdodD1uLmNoaWxkcmVuLnJlZHVjZSgoZSx0KT0+ZSt0LmxheW91dFdlaWdodCwwKSxuLnZhbHVlPW4uY2hpbGRyZW4ucmVkdWNlKChlLHQpPT5pKGUsdC52YWx1ZSksMCk7bGV0IG89MCxzPVsuLi5uLmNoaWxkcmVuXS5yZXZlcnNlKCk7Zm9yKDtzLmxlbmd0aD4wOyl7bGV0IGU9cy5wb3AoKTtlLmxhYmVsSW5kZXg9bysrO2ZvcihsZXQgdD1lLmNoaWxkcmVuLmxlbmd0aC0xO3Q+PTA7dC0tKXMucHVzaChlLmNoaWxkcmVuW3RdKX1yZXR1cm4gbn1mdW5jdGlvbiBTUyhlKXtsZXQgdD1bZV07Zm9yKDt0Lmxlbmd0aD4wOyl7bGV0IGU9dC5wb3AoKSxuPTA7Zm9yKGxldCB0IG9mIGUuY2hpbGRyZW4pbis9dC5sYXlvdXRXZWlnaHQ7aWYobjw9MCljb250aW51ZTtsZXQgcj1lLmEwO2ZvcihsZXQgaSBvZiBlLmNoaWxkcmVuKXtsZXQgYT0oZS5hMS1lLmEwKSppLmxheW91dFdlaWdodC9uO2kuYTA9cixpLmExPXIrYSxyPWkuYTEsdC5wdXNoKGkpfX19ZnVuY3Rpb24gQ1MoZSl7bGV0IHQ9ZS5kZXB0aCxuPVtlXTtmb3IoO24ubGVuZ3RoPjA7KXtsZXQgZT1uLnBvcCgpO3Q9TWF0aC5tYXgodCxlLmRlcHRoKTtmb3IobGV0IHQ9ZS5jaGlsZHJlbi5sZW5ndGgtMTt0Pj0wO3QtLSluLnB1c2goZS5jaGlsZHJlblt0XSl9cmV0dXJuIHR9dmFyIHdTPXQoKCgpPT57cW4oKX0pKSxUUz1uKHtjaGFydEV4SGllcmFyY2h5TGFiZWxQYWludFdvcmtDb3VudDooKT0+a1MscmVuZGVyQ2hhcnRFeENoYXJ0OigpPT5CU30pO2Z1bmN0aW9uIEVTKGUpe3JldHVybiFlfHxlLmZpbGxOb1N0eWxlPT09ITA/ITE6ZS5maWxsUGFpbnRBdXRob3JlZD09PSEwfHxlLmZpbGxIaWRkZW49PT0hMHx8ZS5maWxsQ29sb3JzPy5zb21lKGU9PmUhPW51bGwpPT09ITB8fGUuZmlsbFBhaW50cz8uc29tZShlPT5lIT1udWxsKT09PSEwfWZ1bmN0aW9uIERTKGUsdCxuLHIpe3JldHVybiB0Py5maWxsSGlkZGVuPT09ITB8fHQ/LmNvbG9yIT1udWxsfHxFUyh0Py5jaGFydGV4U3R5bGUpP0hsKGUsciwzLHQ/LmZpbGxIaWRkZW49PT0hMD97Li4udC5jaGFydGV4U3R5bGUsZmlsbEhpZGRlbjohMCxmaWxsUGFpbnRBdXRob3JlZDohMH06dD8uY2hhcnRleFN0eWxlLHQ/LmNvbG9yLHtmaWxsSGlkZGVuOiEwLGZpbGxQYWludEF1dGhvcmVkOiEwfSk6bj8uY2hhcnRleFN0eWxlPy5maWxsUGFpbnRBdXRob3JlZD09PSEwP0hsKGUsciwzLG4uY2hhcnRleFN0eWxlLG4uY29sb3Ise2ZpbGxIaWRkZW46ITAsZmlsbFBhaW50QXV0aG9yZWQ6ITB9KTpVbChlLHIsMyxuPy5jaGFydGV4U3R5bGUsbj8uY29sb3IpfWZ1bmN0aW9uIE9TKGUpe2xldCB0PWU/LmNoYXJ0ZXhTdHlsZTtyZXR1cm4gZT8ubGluZUhpZGRlbiE9bnVsbHx8ZT8ubGluZUNvbG9yIT1udWxsfHxlPy5saW5lV2lkdGhFbXUhPW51bGx8fGU/LmxpbmVEYXNoIT1udWxsfHx0Py5saW5lUGFpbnRBdXRob3JlZD09PSEwfHx0Py5saW5lSGlkZGVuIT1udWxsfHx0Py5saW5lQ29sb3JzPy5zb21lKGU9PmUhPW51bGwpPT09ITB8fHQ/LmxpbmVQYWludHM/LnNvbWUoZT0+ZSE9bnVsbCk9PT0hMHx8dD8ubGluZVdpZHRoRW11IT1udWxsfHx0Py5saW5lRGFzaCE9bnVsbHx8dD8ubGluZUN1c3RvbURhc2ghPW51bGx8fHQ/LmxpbmVDYXAhPW51bGx8fHQ/LmxpbmVKb2luIT1udWxsfWZ1bmN0aW9uIGtTKGUpe2xldCB0PWUuY2hhcnRleFN1bmJ1cnN0P3tyb3dzOmUuY2hhcnRleFN1bmJ1cnN0LnJvd3Msa2luZDpgc3VuYnVyc3RgfTplLmNoYXJ0ZXhUcmVlbWFwP3tyb3dzOmUuY2hhcnRleFRyZWVtYXAucm93cyxraW5kOmB0cmVlbWFwYH06dm9pZCAwO2lmKCF0KXJldHVybiBudWxsO2lmKHQucm93cy5sZW5ndGg9PT0wKXJldHVybiAwO2lmKGJTKHQucm93cykpcmV0dXJuIFduKzE7bGV0IG49eFModC5yb3dzLHQua2luZD09PWB0cmVlbWFwYCk7aWYobi5sYXlvdXRXZWlnaHQ8PTB8fG4uY2hpbGRyZW4ubGVuZ3RoPT09MClyZXR1cm4gMDt0LmtpbmQ9PT1gc3VuYnVyc3RgJiYobi5hMD0tTWF0aC5QSS8yLG4uYTE9bi5hMCtNYXRoLlBJKjIsU1MobikpO2xldCByPWUuc2VyaWVzWzBdLGk9em8ocj8uZGF0YUxhYmVsT3ZlcnJpZGVzKSxhPWUuY2hhcnRleFRyZWVtYXA/LnBhcmVudExhYmVsTGF5b3V0Pz9gb3ZlcmxhcHBpbmdgLG89MCxzPVsuLi5uLmNoaWxkcmVuXTtmb3IoO3MubGVuZ3RoPjA7KXtsZXQgbj1zLnBvcCgpO2ZvcihsZXQgZSBvZiBuLmNoaWxkcmVuKXMucHVzaChlKTtpZihuLmxheW91dFdlaWdodDw9MHx8dC5raW5kPT09YHN1bmJ1cnN0YCYmbi5hMS1uLmEwPD0xZS00KWNvbnRpbnVlO2xldCBjO3Qua2luZD09PWBzdW5idXJzdGA/Yz1ObChlLHIsbi5sYWJlbEluZGV4LG4ubGFiZWwsbi52YWx1ZSx7dmlzaWJsZTohMSxzaG93VmFsOiExLHNob3dDYXROYW1lOiExfSxpKTpuLmNoaWxkcmVuLmxlbmd0aD4wPyhjPU5sKGUscixuLmxhYmVsSW5kZXgsbi5sYWJlbCxuLnZhbHVlLHt2aXNpYmxlOmEhPT1gbm9uZWAsc2hvd1ZhbDohMSxzaG93Q2F0TmFtZTohMH0saSksYT09PWBvdmVybGFwcGluZ2AmJm4uZGVwdGghPT0wJiYoYz1udWxsKSk6Yz1ObChlLHIsbi5sYWJlbEluZGV4LG4ubGFiZWwsbi52YWx1ZSx7dmlzaWJsZTohMSxzaG93VmFsOiExLHNob3dDYXROYW1lOiExfSxpKTtmb3IobGV0IGUgb2ZbYz8ubGFiZWxCb3g/LmZpbGxQYWludCxjPy5sYWJlbEJveD8uYm9yZGVyRmlsbF0pe2lmKCFlKWNvbnRpbnVlO2xldCB0PUxuKGUpO2lmKGUuZmlsbFR5cGU9PT1gZ3JhZGllbnRgJiZ0PjQwOTZ8fHQ+MTA0ODU3Ni1vKXJldHVybiBXbisxO28rPXR9fXJldHVybiBvfWZ1bmN0aW9uIEFTKGUsdCxuLHIsaT0wKXtsZXQgYT10LnNlcmllc1swXTtpZighYSlyZXR1cm47bGV0IG89bVMoYS52YWx1ZXMsdC5jaGFydGV4SGlzdG9ncmFtQmlubmluZz8/e30pO2lmKG8ua2luZD09PWB0b29NYW55SW5wdXRQb2ludHNgKXtudShlLG4sSG4rMSk7cmV0dXJufXZjKGUsey4uLnQsY2hhcnRUeXBlOmBjbHVzdGVyZWRCYXJgLGNhdGVnb3JpZXM6by5jYXRlZ29yaWVzLHNlcmllczpbey4uLmEsY2F0ZWdvcmllczp2b2lkIDAsdmFsdWVzOm8uY291bnRzfV19LG4scix7Z2FwUG9saWN5OmBjaGFydGV4YH0saSl9ZnVuY3Rpb24galMoZSx0LG4scixpKXtsZXR7eDphLHk6byx3OnMsaDpjfT1uLGw9dC5zZXJpZXNbMF0/LnZhbHVlcz8/W10sdT10LmNhdGVnb3JpZXMsZD1NYXRoLm1heChsLmxlbmd0aCx1Lmxlbmd0aCk7aWYoZD09PTB8fG51KGUsbixkKSlyZXR1cm47bGV0IGY9bmV3IFNldCh0LnN1YnRvdGFsSW5kaWNlcykscD0hMSxtPShlLHQpPT57bGV0IG49ZSt0O3JldHVybiBOdW1iZXIuaXNGaW5pdGUobik/bjoocD0hMCxuPDA/LU51bWJlci5NQVhfVkFMVUU6TnVtYmVyLk1BWF9WQUxVRSl9LGg9MCxnPVtdLF89LTEvMCx2PTA7Zm9yKGxldCBlPTA7ZTxkO2UrKyl7bGV0IHQ9bFtlXSxuPXQhPW51bGwmJk51bWJlci5pc0Zpbml0ZSh0KSxyPXQ9PW51bGx8fG4saT1uP3Q6MDtpZihmLmhhcyhlKSl7bGV0IGU9e3N0YXJ0OjAsZW5kOmksaXNTdWI6ITAsaXNQb3M6ITAsaGFzVmFsdWU6bixwYWludFNsb3Q6cn07Zy5wdXNoKGUpLHImJihfPU1hdGgubWF4KF8sZS5zdGFydCxlLmVuZCksdj1NYXRoLm1pbih2LGUuc3RhcnQsZS5lbmQpKSxuJiYoaD1pKX1lbHNle2xldCBlPW0oaCxpKSx0PXtzdGFydDppPj0wP2g6ZSxlbmQ6aT49MD9lOmgsaXNTdWI6ITEsaXNQb3M6aT49MCxoYXNWYWx1ZTpuLHBhaW50U2xvdDpyfTtnLnB1c2godCksciYmKF89TWF0aC5tYXgoXyx0LnN0YXJ0LHQuZW5kKSx2PU1hdGgubWluKHYsdC5zdGFydCx0LmVuZCkpLG4mJihoPWUpfX1pZihwKXtlLmZpbGxTdHlsZT1gIzg4OGAsZS5mb250PWAxMnB4IHNhbnMtc2VyaWZgLGUudGV4dEFsaWduPWBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgLGUuZmlsbFRleHQoYChjaGFydCB2YWx1ZXMgb3V0IG9mIHJhbmdlKWAsYStzLzIsbytjLzIpO3JldHVybn1pZihfPD12KXJldHVybjtsZXQgeT1mLnNpemU9PT0wJiZnLmV2ZXJ5KChlLHQpPT4hZS5oYXNWYWx1ZXx8bFt0XT49MCksYj0hdC52YWxBeGlzSGlkZGVuJiZ0LnZhbEF4aXNUaWNrTGFiZWxQb3MhPT1gbm9uZWAmJiF5LHg9dWMoZSx0LHMsYyxyKSxTPXp0KHQscyxjLHIpLEM9WXModC52YWxBeGlzRm9udFNpemVIcHQsYyxyKSx3PVlzKHQuY2F0QXhpc0ZvbnRTaXplSHB0LGMsciksVD0kKHQsdC52YWxBeGlzRm9udEZhY2UsYG1pbm9yYCksRT0kKHQsdC5jYXRBeGlzRm9udEZhY2UsYG1pbm9yYCksRD1Icyh0LHYsXyxjL3IpO2Uuc2F2ZSgpO2xldCBPPTA7aWYoYil7ZS5mb250PUhvKEMsVCx0LnZhbEF4aXNGb250Qm9sZD8/ITEsdC52YWxBeGlzRm9udEl0YWxpYz8/ITEpO2xldCBuPTA7Zm9yKGxldCByIG9mIEQubWFqb3JMaW5lcyluPU1hdGgubWF4KG4sZS5tZWFzdXJlVGV4dChMcyh0LHIsITEpKS53aWR0aCk7Tz1uKzh9bGV0IGs9TWF0aC5tYXgoMSxzLVMudmFsQmFuZFctTy1zKi4wMikvZDtlLmZvbnQ9SG8odyxFLHQuY2F0QXhpc0ZvbnRCb2xkPz8hMSx0LmNhdEF4aXNGb250SXRhbGljPz8hMSk7bGV0IEE9dS5zbGljZSgwLGQpLm1hcChuPT5YcyhlLHhhKG4sdC5jYXRBeGlzRm9ybWF0Q29kZSx0LmRhdGUxOTA0KSxNYXRoLm1heCgxLGstOCkpKSxqPTA7Zm9yKGxldCBlIG9mIEEpZS5zb21lKEJvb2xlYW4pJiYoaj1NYXRoLm1heChqLGUubGVuZ3RoKSk7bGV0IE09dC5jYXRBeGlzSGlkZGVufHxqPT09MD8wOmoqKHcrMikrNCxOPXQuc2VyaWVzWzBdLFA9em8oTj8uZGF0YUxhYmVsT3ZlcnJpZGVzKSxGPXpvKE4/LmRhdGFQb2ludE92ZXJyaWRlcyksST1OPy5jaGFydGV4U3R5bGUsTD1gIyR7Tj8uY29sb3I/P0xsKHQsMCwzLEkpfWAsUj1gIyR7TGwodCwxLDMsSSl9YCx6PWAjJHtMbCh0LDIsMyxJKX1gLEI9VWwodCwwLDMsSSxOPy5jb2xvciksZWU9VWwodCwxLDMsSSksVj1VbCh0LDIsMyxJKSxIPXsuLi50LGNoYXJ0VHlwZTpgY2x1c3RlcmVkQmFyYCxzZXJpZXM6W0psKHQsYEluY3JlYXNlYCxOLHQuY2hhcnRleERhdGFQb2ludFN0eWxlLDAsMyxMKSxKbCh0LGBEZWNyZWFzZWAsTix0LmNoYXJ0ZXhEYXRhUG9pbnRTdHlsZSwxLDMsUiksSmwodCxgVG90YWxgLE4sdC5jaGFydGV4RGF0YVBvaW50U3R5bGUsMiwzLHopXX0sVT1ocyhlLEgscyxjLC4yMixyKSx7bGVnUmlnaHRXOlcsbGVnTGVmdFc6RyxsZWdUb3BIOkssbGVnQm90dG9tSDp0ZX09UHQoVSx0LmxlZ2VuZE92ZXJsYXk9PT0hMCksbmU9S3QodCxhLG8scyxjLHIse3RpdGxlQmFuZDp4LGxlZ2VuZFNpZGVSZXNlcnZlRnJhYzowLGxlZ2VuZFJlc2VydmU6VSxwYWQ6e3Q6eC5iYW5kSCtLK0MvMisyLHI6VytzKi4wMixiOnRlK1MuY2F0QmFuZEgrTSxsOkcrUy52YWxCYW5kVysodC52YWxBeGlzSGlkZGVuP3MqLjAyOk1hdGgubWF4KHMqLjAzLE8pKX0saG9ub3JQbG90QXJlYU1hbnVhbExheW91dDohMH0pO2ZjKGUsdCxhLG8scyxjLG8rbmUudGl0bGUudG9wUGFkLG5lLnRpdGxlLmZvbnRQeCk7bGV0e3B4MDpyZSxweTA6aWUscHc6YWUscGg6b2V9PW5lLnBsb3RSZWN0OyRhKGUsdCxyZSxpZSxhZSxvZSxyLGkpO2xldCBzZT1Icyh0LHYsXyxvZS9yKSxjZT1lPT5pZStvZS1zZS5mcmFjKGUpKm9lLGxlPWFhKHQudmFsQXhpc0xpbmVDb2xvcix0LnZhbEF4aXNMaW5lV2lkdGhFbXUsciksdWU9YWEodC5jYXRBeGlzTGluZUNvbG9yLHQuY2F0QXhpc0xpbmVXaWR0aEVtdSxyKSxxPVRzKHQscik7aWYoIXQudmFsQXhpc0hpZGRlbil7ZS5mb250PUhvKEMsVCx0LnZhbEF4aXNGb250Qm9sZD8/ITEsdC52YWxBeGlzRm9udEl0YWxpYz8/ITEpLGUuZmlsbFN0eWxlPXQudmFsQXhpc0ZvbnRDb2xvcj9gIyR7dC52YWxBeGlzRm9udENvbG9yfWA6YCM1OTU5NTlgLGUudGV4dEFsaWduPWByaWdodGAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7bGV0IG49RXModCxyKTtmb3IobGV0IHQgb2Ygc2UubWlub3JMaW5lcyl3cyhlLHJlLGFlLGNlKHQpLCExLG4pO2ZvcihsZXQgbiBvZiBzZS5tYWpvckxpbmVzKXtsZXQgaT1jZShuKTtpZihGcyh0KSl7ZS5zdHJva2VTdHlsZT1xLmNvbG9yLGUubGluZVdpZHRoPXEud2lkdGg7bGV0IHQ9cS5kYXNoLmxlbmd0aD4wJiZlLmdldExpbmVEYXNoP2UuZ2V0TGluZURhc2goKTpbXTtxLmRhc2gubGVuZ3RoPjAmJmUuc2V0TGluZURhc2gocS5kYXNoKSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHJlLGkpLGUubGluZVRvKHJlK2FlLGkpLGUuc3Ryb2tlKCkscS5kYXNoLmxlbmd0aD4wJiZlLnNldExpbmVEYXNoKHQpfWImJmUuZmlsbFRleHQoTHModCxuLCExKSxyZS00LGkpLGJzKGUsdC52YWxBeGlzTWFqb3JUaWNrTWFyayxgdmFsYCxyZSxpLGxlLmNvbG9yLGxlLndpZHRoLCExLHQudmFsQXhpc0xpbmVIaWRkZW4sYG1ham9yYCxyLHQudmFsQXhpc0xpbmVEYXNoKX1mb3IobGV0IG4gb2Ygc2UubWlub3JUaWNrcylicyhlLHQudmFsQXhpc01pbm9yVGlja01hcmssYHZhbGAscmUsY2UobiksbGUuY29sb3IsbGUud2lkdGgsITEsdC52YWxBeGlzTGluZUhpZGRlbixgbWlub3JgLHIsdC52YWxBeGlzTGluZURhc2gpfWxldCBkZT0hdC52YWxBeGlzSGlkZGVuJiYhdC52YWxBeGlzTGluZUhpZGRlbixKPSF0LmNhdEF4aXNIaWRkZW4mJiF0LmNhdEF4aXNMaW5lSGlkZGVuO2RlJiZ4cyhlLHJlLGllLHJlLGllK29lLGxlLmNvbG9yLGxlLndpZHRoLHQudmFsQXhpc0xpbmVEYXNoKSxKJiZ4cyhlLHJlLGllK29lLHJlK2FlLGllK29lLHVlLmNvbG9yLHVlLndpZHRoLHQuY2F0QXhpc0xpbmVEYXNoKTtsZXQgWT1hZS9kLGZlPVkvKDErRHQodC5iYXJHYXBXaWR0aCxgY2hhcnRleGApLzEwMCk7Zy5mb3JFYWNoKChuLGYpPT57bGV0IHA9cmUrWSpmKyhZLWZlKS8yLG09TWF0aC5taW4oY2Uobi5zdGFydCksY2Uobi5lbmQpKSxoPU1hdGgubWF4KGNlKG4uc3RhcnQpLGNlKG4uZW5kKSksXz1NYXRoLm1heCgxLGgtbSksdj1uLmlzU3ViPzI6KyFuLmlzUG9zLHk9Ri5nZXQoZiksYj1EUyh0LHksTix2KSx4PXk/LmNvbG9yP2AjJHt5LmNvbG9yfWA6bi5pc1N1Yj96Om4uaXNQb3M/TDpSO24ucGFpbnRTbG90JiZiJiYoZS5maWxsU3R5bGU9V2woZSxiLHAsbSxmZSxfLHgsaSksZS5maWxsUmVjdChwLG0sZmUsXykpO2xldCBTPVBsKHQsdC5jaGFydGV4RGF0YVBvaW50U3R5bGUsYGxpbmVgLHYsMyksQz1PUyh5KT95Ok47aWYobi5wYWludFNsb3QmJnFsKGUsdCx0LmNoYXJ0ZXhEYXRhUG9pbnRTdHlsZSxDLHYsMyxTP2AjJHtTfWA6eCxyKSYmZS5zdHJva2VSZWN0KHAsbSxmZSxfKSxuLnBhaW50U2xvdCYmZ1tmKzFdPy5wYWludFNsb3QmJmY8ZC0xJiZ0LmNoYXJ0ZXhDb25uZWN0b3JMaW5lcyE9PSExKXtsZXQgaT1yZStZKihmKzEpKyhZLWZlKS8yLGE9bi5pc1Bvcz9tOmg7ZS5zYXZlKCk7bGV0IG89R2wodCx0LmNoYXJ0ZXhTZXJpZXNMaW5lU3R5bGUsTix2LDMsYCMwMDAwMDBgLHtsaW5rZWROb1N0eWxlRmFsbGJhY2s6ITB9KTtLbChlLG8scikmJihvLndpZHRoRW11Pz8oZS5saW5lV2lkdGg9Ljc1KnIpLGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8ocCtmZSxhKSxlLmxpbmVUbyhpLGEpLGUuc3Ryb2tlKCkpLGUucmVzdG9yZSgpfWxldCB3PW4uaGFzVmFsdWU/bFtmXTowLFQ9TmwodCxOLGYsdVtmXT8/YGAsdyx7dmlzaWJsZTp0LnNob3dEYXRhTGFiZWxzLHNob3dWYWw6ITAsc2hvd0NhdE5hbWU6ITF9LFAsIW4uaGFzVmFsdWUpO2lmKFQpe2xldCBuPU4/LmRhdGFMYWJlbENvbG9ycz8uW2ZdPz9ULmZvbnRDb2xvcj8/bnVsbCxsPW4/YCMke259YDp0LmRhdGFMYWJlbEZvbnRDb2xvcj9gIyR7dC5kYXRhTGFiZWxGb250Q29sb3J9YDpgIzU5NTk1OWAsdT1BdChULmZvbnRTaXplSHB0LHIpPz9Zcyh0LmRhdGFMYWJlbEZvbnRTaXplSHB0LGMsciksZD1ULmZvbnRCb2xkPz90LmRhdGFMYWJlbEZvbnRCb2xkPz8hMSxoPSQodCxULmZvbnRGYWNlPz90LmRhdGFMYWJlbEZvbnRGYWNlLGBtaW5vcmApO2UuZm9udD1gJHtULnRleHRTdHlsZS5mb250SXRhbGljP2BpdGFsaWMgYDpgYH0ke2Q/YGJvbGQgYDpgYH0ke3V9cHggJHtofWAsQ2woZSxULnRleHQse2tpbmQ6YGJhcmAscmVjdDp7eDpwLHk6bSx3OmZlLGg6X30sb3JpZW50YXRpb246YHZlcnRpY2FsYCxuZWdhdGl2ZTp3PDAscG9zaXRpb246VC5wb3NpdGlvbj8/YG91dEVuZGB9LHt4OnJlLHk6aWUsdzphZSxoOm9lfSx1LGwsVC5tYW51YWxMYXlvdXQse3g6YSx5Om8sdzpzLGg6Y30sU2wodCxULnJpY2hSdW5zLHIsaCxkLFQudGV4dFN0eWxlKSx2b2lkIDAsVC50ZXh0U3R5bGUscixULmxhYmVsQm94LGkpfX0pLGUudGV4dEFsaWduPWBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWB0b3BgLGUuZmlsbFN0eWxlPXQuY2F0QXhpc0ZvbnRDb2xvcj9gIyR7dC5jYXRBeGlzRm9udENvbG9yfWA6YCM1OTU5NTlgLGUuZm9udD1Ibyh3LEUsdC5jYXRBeGlzRm9udEJvbGQ/PyExLHQuY2F0QXhpc0ZvbnRJdGFsaWM/PyExKTtsZXQgcGU9aWUrb2UrNDtmb3IobGV0IG49MDtuPGQmJiF0LmNhdEF4aXNIaWRkZW47bisrKXtsZXQgdD1yZStZKm4rWS8yOyhBW25dPz9bXSkuZm9yRWFjaCgobixyKT0+biYmZS5maWxsVGV4dChuLHQscGUrcioodysyKSkpfUpvKGUsdCxhLG8scyxjLHJlLGllLGFlLG9lLEcsdGUsUy5jYXRGb250UHgsUy52YWxGb250UHgpLHZzKGUsSCxVLGEsbyxzLGMscmUsaWUsYWUsb2UseC5iYW5kSCsyLHIsW0IsZWUsVl0saSksZS5yZXN0b3JlKCl9ZnVuY3Rpb24gTVMoZSx0LG4scixpKXtsZXQgYT10LnNlcmllc1swXT8udmFsdWVzPz9bXSxvPU1hdGgubWF4KGEubGVuZ3RoLHQuY2F0ZWdvcmllcy5sZW5ndGgpO2lmKG89PT0wfHxudShlLG4sbykpcmV0dXJuO2xldCBzPTA7Zm9yKGxldCBlPTA7ZTxvO2UrKylzPU1hdGgubWF4KHMsYVtlXT8/MCk7aWYoIShzPjApKXJldHVybjtsZXR7eDpjLHk6bCx3OnUsaDpkfT1uLGY9dWMoZSx0LHUsZCxyKSxwPXQuc2VyaWVzWzBdLG09em8ocD8uZGF0YUxhYmVsT3ZlcnJpZGVzKSxoPWAjJHtwPy5jb2xvcj8/TGwodCwwLDEscD8uY2hhcnRleFN0eWxlKX1gLGc9VWwodCwwLDEscD8uY2hhcnRleFN0eWxlLHA/LmNvbG9yKSxfPXsuLi50LHNlcmllczpbSmwodCxwPy5uYW1lPz9gYCxwLHQuY2hhcnRleERhdGFQb2ludFN0eWxlLDAsMSxoKV19LHY9aHMoZSxfLHUsZCwuMjIscikse2xlZ1JpZ2h0Vzp5LGxlZ0xlZnRXOmIsbGVnVG9wSDp4LGxlZ0JvdHRvbUg6U309UHQodix0LmxlZ2VuZE92ZXJsYXk9PT0hMCksQz1Zcyh0LmNhdEF4aXNGb250U2l6ZUhwdCxkLHIpO2Uuc2F2ZSgpLGUuZm9udD1IbyhDLCQodCx0LmNhdEF4aXNGb250RmFjZSxgbWlub3JgKSx0LmNhdEF4aXNGb250Qm9sZD8/ITEsdC5jYXRBeGlzRm9udEl0YWxpYz8/ITEpO2xldCB3PTA7aWYoIXQuY2F0QXhpc0hpZGRlbil7Zm9yKGxldCBuPTA7bjxNYXRoLm1pbihvLHQuY2F0ZWdvcmllcy5sZW5ndGgpO24rKyl3PU1hdGgubWF4KHcsZS5tZWFzdXJlVGV4dCh0LmNhdGVnb3JpZXNbbl0pLndpZHRoKTt0LmNhdGVnb3JpZXMubGVuZ3RoPjAmJih3Kz0xMCl9bGV0IFQ9S3QodCxjLGwsdSxkLHIse3RpdGxlQmFuZDpmLGxlZ2VuZFNpZGVSZXNlcnZlRnJhYzouMjIsbGVnZW5kUmVzZXJ2ZTp2LHBhZDp7dDpmLmJhbmRIK3grMixyOnkrdSouMDIsYjpTK2QqLjAyLGw6Yit3K3UqLjAyfSxob25vclBsb3RBcmVhTWFudWFsTGF5b3V0OiEwfSk7ZmMoZSx0LGMsbCx1LGQsbCtULnRpdGxlLnRvcFBhZCxULnRpdGxlLmZvbnRQeCk7bGV0e3B4MDpFLHB5MDpELHB3Ok8scGg6a309VC5wbG90UmVjdDskYShlLHQsRSxELE8sayxyLGkpO2xldCBBPWsvbyxqPUEvKDErRHQodC5iYXJHYXBXaWR0aCxgY2hhcnRleGApLzEwMCk7Zm9yKGxldCBuPTA7bjxvO24rKyl7bGV0IG89TWF0aC5tYXgoMCxhW25dPz8wKSxmPU8qby9zLF89RSsoTy1mKS8yLHY9RCtBKm4rKEEtaikvMjtnJiYoZS5maWxsU3R5bGU9V2woZSxnLF8sdixmLGosaCxpKSxlLmZpbGxSZWN0KF8sdixmLGopKSxxbChlLHQsdC5jaGFydGV4RGF0YVBvaW50U3R5bGUscCwwLDEsaCxyKSYmZS5zdHJva2VSZWN0KF8sdixmLGopO2xldCB5PXQuY2F0ZWdvcmllc1tuXTshdC5jYXRBeGlzSGlkZGVuJiZ5IT1udWxsJiYoZS5maWxsU3R5bGU9dC5jYXRBeGlzRm9udENvbG9yP2AjJHt0LmNhdEF4aXNGb250Q29sb3J9YDpgIzU5NTk1OWAsZS50ZXh0QWxpZ249YHJpZ2h0YCxlLnRleHRCYXNlbGluZT1gbWlkZGxlYCxlLmZpbGxUZXh0KHksRS02LHYrai8yKSk7bGV0IGI9TmwodCxwLG4seT8/YGAsbyx7dmlzaWJsZTohMSxzaG93VmFsOiExLHNob3dDYXROYW1lOiExfSxtKTtpZihiKXtsZXQgbj1BdChiLmZvbnRTaXplSHB0LHIpPz9Zcyh0LmRhdGFMYWJlbEZvbnRTaXplSHB0LGQsciksYT0kKHQsYi5mb250RmFjZT8/dC5kYXRhTGFiZWxGb250RmFjZSxgbWlub3JgKTtlLmZvbnQ9YCR7Yi50ZXh0U3R5bGUuZm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHtiLmZvbnRCb2xkP2Bib2xkIGA6YGB9JHtufXB4ICR7YX1gLENsKGUsYi50ZXh0LHtraW5kOmBiYXJgLHJlY3Q6e3g6Xyx5OnYsdzpmLGg6an0sb3JpZW50YXRpb246YGhvcml6b250YWxgLG5lZ2F0aXZlOiExLHBvc2l0aW9uOmIucG9zaXRpb24/P2BjdHJgfSx7eDpFLHk6RCx3Ok8saDprfSxuLGIuZm9udENvbG9yP2AjJHtiLmZvbnRDb2xvcn1gOmAjZmZmZmZmYCxiLm1hbnVhbExheW91dCx7eDpjLHk6bCx3OnUsaDpkfSxTbCh0LGIucmljaFJ1bnMscixhLGIuZm9udEJvbGQ/PyExLGIudGV4dFN0eWxlKSx2b2lkIDAsYi50ZXh0U3R5bGUscixiLmxhYmVsQm94LGkpfX1pZighdC5jYXRBeGlzSGlkZGVuJiYhdC5jYXRBeGlzTGluZUhpZGRlbil7bGV0IG49YWEodC5jYXRBeGlzTGluZUNvbG9yLHQuY2F0QXhpc0xpbmVXaWR0aEVtdSxyKTtlLnN0cm9rZVN0eWxlPW4uY29sb3IsZS5saW5lV2lkdGg9bi53aWR0aCxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKEUsRCksZS5saW5lVG8oRSxEK2spLGUuc3Ryb2tlKCl9dnMoZSxfLHYsYyxsLHUsZCxFLEQsTyxrLGYuYmFuZEgrMixyLFtnXSxpKSxlLnJlc3RvcmUoKX1mdW5jdGlvbiBOUyhlLHQsbixyLGk9MCl7bGV0IGE9dC5zZXJpZXNbMF07aWYoIWF8fG51KGUsbixNYXRoLm1heCh0LmNhdGVnb3JpZXMubGVuZ3RoLGEuY2F0ZWdvcmllcz8ubGVuZ3RoPz8wLGEudmFsdWVzLmxlbmd0aCkpKXJldHVybjtsZXQgbz12UyhhLHQuY2F0ZWdvcmllcyx7c29ydERlc2NlbmRpbmc6ITF9KTtpZihvLnBvaW50cy5sZW5ndGg9PT0wKXJldHVybjtsZXQgcz1NbChhLDApLGM9R2wodCx0LmNoYXJ0ZXhEYXRhUG9pbnRMaW5lU3R5bGUsYSxzLDEsUm8oMCxhKSx7bGlua2VkTm9TdHlsZUZhbGxiYWNrOiEwfSk7cWMoZSx7Li4udCxjaGFydFR5cGU6YGxpbmVgLGNhdGVnb3JpZXM6by5jYXRlZ29yaWVzLHNlcmllczpbey4uLm8uc2VyaWVzLHNob3dNYXJrZXI6ITEsbGluZUhpZGRlbjohYy52aXNpYmxlLGxpbmVDb2xvcjpjLmNvbG9yLnJlcGxhY2UoL14jLyxgYCksbGluZVdpZHRoRW11OmMud2lkdGhFbXUsY2hhcnRleFN0eWxlOntsaW5lRGFzaDpjLmRhc2gsbGluZUNhcDpjLmNhcCxsaW5lSm9pbjpjLmpvaW59fV0sY2F0QXhpc0hpZGRlbjohMSxjYXRBeGlzVGlja0xhYmVsUG9zOmBub25lYCxzaG93TGVnZW5kOiExLHZhbE1pbjp0LnZhbE1pbj8/MCx2YWxNYXg6dC52YWxNYXg/PzEuMix2YWxBeGlzTWFqb3JVbml0OnQudmFsQXhpc01ham9yVW5pdD8/LjJ9LG4scixpKX1mdW5jdGlvbiBQUyhlLHQsbixyLGk9MCl7bGV0IGE9dC5zZXJpZXNbMF07aWYoIWF8fG51KGUsbixNYXRoLm1heCh0LmNhdGVnb3JpZXMubGVuZ3RoLGEuY2F0ZWdvcmllcz8ubGVuZ3RoPz8wLGEudmFsdWVzLmxlbmd0aCkpKXJldHVybjtsZXQgbz12UyhhLHQuY2F0ZWdvcmllcyk7aWYoby5wb2ludHMubGVuZ3RoPT09MClyZXR1cm47bGV0IHM9dC5zZXJpZXMuZmluZChlPT5lLnNlcmllc1R5cGU9PT1gbGluZWApLGM9cz8uY2hhcnRleEZvcm1hdElkeD8/YS5jaGFydGV4Rm9ybWF0SWR4Pz8wLGw9ey4uLnM/P28uc2VyaWVzLG5hbWU6cz8ubmFtZXx8YEN1bXVsYXRpdmUgJWAsdmFsdWVzOm8uc2VyaWVzLnZhbHVlcyxjYXRlZ29yaWVzOm8uY2F0ZWdvcmllcyxjb2xvcjpzPy5jb2xvcj8/UGwodCx0LmNoYXJ0ZXhEYXRhUG9pbnRMaW5lU3R5bGUsYGxpbmVgLGMsMSk/P2EubGluZUNvbG9yPz9hLmNvbG9yLHNlcmllc1R5cGU6YGxpbmVgLHVzZVNlY29uZGFyeUF4aXM6ITAsc2hvd01hcmtlcjohMX0sdT17bWluOnQuc2Vjb25kYXJ5VmFsQXhpcz8ubWluPz8wLG1heDp0LnNlY29uZGFyeVZhbEF4aXM/Lm1heD8/MSx0aXRsZTp0LnNlY29uZGFyeVZhbEF4aXM/LnRpdGxlPz9udWxsLGhpZGRlbjp0LnNlY29uZGFyeVZhbEF4aXM/LmhpZGRlbj8/ITEsZm9ybWF0Q29kZTp0LnNlY29uZGFyeVZhbEF4aXM/LmZvcm1hdENvZGU/P2AwJWAsZm9udENvbG9yOnQuc2Vjb25kYXJ5VmFsQXhpcz8uZm9udENvbG9yPz9udWxsLGZvbnRTaXplSHB0OnQuc2Vjb25kYXJ5VmFsQXhpcz8uZm9udFNpemVIcHQ/P251bGwsZm9udEZhY2U6dC5zZWNvbmRhcnlWYWxBeGlzPy5mb250RmFjZT8/bnVsbCxsaW5lQ29sb3I6dC5zZWNvbmRhcnlWYWxBeGlzPy5saW5lQ29sb3I/P251bGwsbGluZVdpZHRoRW11OnQuc2Vjb25kYXJ5VmFsQXhpcz8ubGluZVdpZHRoRW11Pz9udWxsLGxpbmVIaWRkZW46dC5zZWNvbmRhcnlWYWxBeGlzPy5saW5lSGlkZGVuPz8hMSxtYWpvclRpY2tNYXJrOnQuc2Vjb25kYXJ5VmFsQXhpcz8ubWFqb3JUaWNrTWFyaz8/YG91dGAsbWlub3JUaWNrTWFyazp0LnNlY29uZGFyeVZhbEF4aXM/Lm1pbm9yVGlja01hcms/P251bGwsbWFqb3JVbml0OnQuc2Vjb25kYXJ5VmFsQXhpcz8ubWFqb3JVbml0Pz9udWxsLG1pbm9yVW5pdDp0LnNlY29uZGFyeVZhbEF4aXM/Lm1pbm9yVW5pdD8/bnVsbCx0aXRsZUZvbnRTaXplSHB0OnQuc2Vjb25kYXJ5VmFsQXhpcz8udGl0bGVGb250U2l6ZUhwdD8/bnVsbCx0aXRsZUZvbnRCb2xkOnQuc2Vjb25kYXJ5VmFsQXhpcz8udGl0bGVGb250Qm9sZD8/bnVsbCx0aXRsZUZvbnRDb2xvcjp0LnNlY29uZGFyeVZhbEF4aXM/LnRpdGxlRm9udENvbG9yPz9udWxsLHRpdGxlRm9udEZhY2U6dC5zZWNvbmRhcnlWYWxBeGlzPy50aXRsZUZvbnRGYWNlPz9udWxsfTt2YyhlLHsuLi50LGNoYXJ0VHlwZTpgY2x1c3RlcmVkQmFyYCxjYXRlZ29yaWVzOm8uY2F0ZWdvcmllcyxzZXJpZXM6W3suLi5vLm9yZGVyZWRTZXJpZXMsc2VyaWVzVHlwZTpudWxsLHVzZVNlY29uZGFyeUF4aXM6ITF9LGxdLHNlY29uZGFyeVZhbEF4aXM6dX0sbixyLHtnYXBQb2xpY3k6YGNoYXJ0ZXhgLHNlbWFudGljTGluZU5vU3R5bGVGYWxsYmFjazohMH0saSl9ZnVuY3Rpb24gRlMoZSx0LG4scil7bGV0IGk9KHI/P3QpLShuPz9lKTtpZighKGk+MCl8fCFOdW1iZXIuaXNGaW5pdGUoaSkpcmV0dXJuIG51bGw7bGV0IGE9VmkoaSxWUyk7aWYoIShhPjApfHwhTnVtYmVyLmlzRmluaXRlKGEpKXJldHVybiBudWxsO2xldCBvPWUtaSpIUyxzPXQraSpIUztlPj0wJiYoZT09PTB8fHQ+VVMqZSkmJihvPTApLHQ8PTAmJih0PT09MHx8TWF0aC5hYnMoZSk+VVMqTWF0aC5hYnModCkpJiYocz0wKTtsZXQgYz1uPz9NYXRoLmZsb29yKG8vYSkqYSxsPXI/P01hdGguY2VpbChzL2EpKmE7cmV0dXJuIVtjLGxdLmV2ZXJ5KE51bWJlci5pc0Zpbml0ZSl8fCEobD5jKT9udWxsOnttaW46YyxtYXg6bCxtYWpvclVuaXQ6YX19ZnVuY3Rpb24gSVMoZSx0LG4scixpKXtsZXQgYT0zKnIsbz10LmNoYXJ0ZXhCb3g7aWYoIW98fG8uY2F0ZWdvcmllcy5sZW5ndGg9PT0wfHxvLnNlcmllcy5sZW5ndGg9PT0wKXJldHVybjtsZXR7eDpzLHk6Yyx3OmwsaDp1fT1uO2lmKG51KGUsbix2dChvLnNlcmllcy5tYXAoZT0+ZS52YWx1ZXNCeUNhdGVnb3J5KSwxZTQpKSlyZXR1cm47bGV0IGQ9KCk9PntlLmZpbGxTdHlsZT1gIzg4OGAsZS5mb250PWAxMnB4IHNhbnMtc2VyaWZgLGUudGV4dEFsaWduPWBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgLGUuZmlsbFRleHQoYChjaGFydCB2YWx1ZXMgb3V0IG9mIHJhbmdlKWAscytsLzIsYyt1LzIpfSxmPWU9PntsZXQgdD1lLm1heC1lLm1pbixuPXQvZS5zdGVwO3JldHVybiBOdW1iZXIuaXNGaW5pdGUoZS5taW4pJiZOdW1iZXIuaXNGaW5pdGUoZS5tYXgpJiZOdW1iZXIuaXNGaW5pdGUoZS5zdGVwKSYmTnVtYmVyLmlzRmluaXRlKHQpJiZOdW1iZXIuaXNGaW5pdGUobikmJmUubWF4PmUubWluJiZlLnN0ZXA+MCYmbjw9MWUzJiZlLm1pbitlLnN0ZXA+ZS5taW59LHA9MS8wLG09LTEvMDtmb3IobGV0IGUgb2Ygby5zZXJpZXMpZm9yKGxldCB0IG9mIGUudmFsdWVzQnlDYXRlZ29yeSlmb3IobGV0IGUgb2YgdClOdW1iZXIuaXNGaW5pdGUoZSkmJihlPHAmJihwPWUpLGU+bSYmKG09ZSkpO2lmKCFpc0Zpbml0ZShwKXx8IWlzRmluaXRlKG0pKXJldHVybjtpZighTnVtYmVyLmlzRmluaXRlKG0tcCkpe2QoKTtyZXR1cm59bGV0IGg9dC52YWxBeGlzTWFqb3JVbml0PT1udWxsP0ZTKHAsbSx0LnZhbE1pbix0LnZhbE1heCk6bnVsbCxnPWg/ey4uLnQsdmFsTWluOmgubWluLHZhbE1heDpoLm1heCx2YWxBeGlzTWFqb3JVbml0OmgubWFqb3JVbml0fTp0LF89JCh0LHQudmFsQXhpc0ZvbnRGYWNlLGBtaW5vcmApLHY9WXModC52YWxBeGlzRm9udFNpemVIcHQsdSxyKSx5PVV0KHYpLGI9X2MocikseD1aaSh7ZGF0YU1pbjpwLGRhdGFNYXg6bSxleHBsaWNpdE1pbjpnLnZhbE1pbixleHBsaWNpdE1heDpnLnZhbE1heCxheGlzTGVuUHQ6dS9yLG1ham9yVW5pdDpnLnZhbEF4aXNNYWpvclVuaXR9KTtpZighZih7bWluOngubWluLG1heDp4Lm1heCxzdGVwOngubWFqb3JVbml0fSkpe2QoKTtyZXR1cm59bGV0IFM9MDtpZighdC52YWxBeGlzSGlkZGVuKXtsZXQgbj1lLmZvbnQ7ZS5mb250PUhvKHYsXyx0LnZhbEF4aXNGb250Qm9sZD8/ITEsdC52YWxBeGlzRm9udEl0YWxpYz8/ITEpO2xldCBpPTA7Zm9yKGxldCBuIG9mIHgubWFqb3JUaWNrcyl7bGV0IHI9THModCxuLCExKTtpPU1hdGgubWF4KGksZS5tZWFzdXJlVGV4dChyKS53aWR0aCl9ZS5mb250PW4sUz1pK3krWnQqcn1sZXQgQz11YyhlLHQsbCx1LHIpLHc9WXModC5jYXRBeGlzRm9udFNpemVIcHQsdSxyKSxUPVlzKHQudmFsQXhpc0ZvbnRTaXplSHB0LHUsciksRT16dCh0LGwsdSxyKSxEPW8uc2VyaWVzLmxlbmd0aCxPPW8uc2VyaWVzLm1hcCgoZSx0KT0+TWwoZSx0KSksaz1vLnNlcmllcy5tYXAoKGUsbik9PntsZXQgcj1PW25dLGk9ZS5jb2xvcj8/TGwodCxyLEQsZS5jaGFydGV4U3R5bGUpO3JldHVybiBKbCh0LGUubmFtZSxlLHQuY2hhcnRleERhdGFQb2ludFN0eWxlLHIsRCxpLCEwKX0pLEE9ey4uLnQsc2VyaWVzOmt9LGo9aHMoZSxBLGwsdSwuMjIscikse2xlZ1JpZ2h0VzpNLGxlZ0xlZnRXOk4sbGVnVG9wSDpQLGxlZ0JvdHRvbUg6Rn09UHQoaix0LmxlZ2VuZE92ZXJsYXk9PT0hMCksST1LdCh0LHMsYyxsLHUscix7dGl0bGVCYW5kOkMsbGVnZW5kU2lkZVJlc2VydmVGcmFjOi4yMixsZWdlbmRSZXNlcnZlOmoscGFkOnt0OkMuYmFuZEgrUCtULzIrMixyOk0rbCouMDIsYjpGK0UuY2F0QmFuZEgrKHQuY2F0QXhpc0hpZGRlbj91Ki4wMjpWdCh3KSksbDpOK0UudmFsQmFuZFcrKHQudmFsQXhpc0hpZGRlbj9sKi4wMjpTKX0saG9ub3JQbG90QXJlYU1hbnVhbExheW91dDohMH0pLHtweDA6TCxweTA6Uixwdzp6LHBoOkJ9PUkucGxvdFJlY3Q7JGEoZSx0LEwsUix6LEIscixpKTtsZXQgZWU9by5jYXRlZ29yaWVzLFY9ZWUubGVuZ3RoLEg9SHMoZyxwLG0sQi9yKTtpZighZihIKSl7ZCgpO3JldHVybn1mYyhlLHQscyxjLGwsdSxjK0kudGl0bGUudG9wUGFkLEkudGl0bGUuZm9udFB4KTtsZXR7bWluOlUsbWF4Old9PUgsRz1XLVUsSz1lPT5SK0IqKDEtKGUtVSkvRyksdGU9YWEodC52YWxBeGlzTGluZUNvbG9yLHQudmFsQXhpc0xpbmVXaWR0aEVtdSxyKSxuZT1Ucyh0LHIpO2lmKGUuc2F2ZSgpLCF0LnZhbEF4aXNIaWRkZW4pe2lmKGUuZm9udD1Ibyh2LF8sdC52YWxBeGlzRm9udEJvbGQ/PyExLHQudmFsQXhpc0ZvbnRJdGFsaWM/PyExKSxlLnRleHRBbGlnbj1gcmlnaHRgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgLHQudmFsQXhpc01pbm9yR3JpZGxpbmVzKXtsZXQgbj1Fcyh0LHIpO2ZvcihsZXQgdCBvZiBILm1pbm9yTGluZXMpd3MoZSxMLHosSyh0KSwhMSxuKX1mb3IobGV0IG4gb2YgSC5tYWpvckxpbmVzKXtsZXQgaT1LKG4pO2lmKHQudmFsQXhpc01ham9yR3JpZGxpbmVzIT09ITEpe2Uuc3Ryb2tlU3R5bGU9bmUuY29sb3IsZS5saW5lV2lkdGg9bmUud2lkdGg7bGV0IHQ9bmUuZGFzaC5sZW5ndGg+MCYmZS5nZXRMaW5lRGFzaD9lLmdldExpbmVEYXNoKCk6W107bmUuZGFzaC5sZW5ndGg+MCYmZS5zZXRMaW5lRGFzaChuZS5kYXNoKSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKEwsaSksZS5saW5lVG8oTCt6LGkpLGUuc3Ryb2tlKCksbmUuZGFzaC5sZW5ndGg+MCYmZS5zZXRMaW5lRGFzaCh0KX1lLmZpbGxTdHlsZT10LnZhbEF4aXNGb250Q29sb3I/YCMke3QudmFsQXhpc0ZvbnRDb2xvcn1gOmAjNTk1OTU5YCxlLmZpbGxUZXh0KExzKHQsbiwhMSksTC1iLGkpLGJzKGUsdC52YWxBeGlzTWFqb3JUaWNrTWFyayxgdmFsYCxMLGksdGUuY29sb3IsdGUud2lkdGgsITEsdC52YWxBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC52YWxBeGlzTGluZURhc2gpfWZvcihsZXQgbiBvZiBILm1pbm9yVGlja3MpYnMoZSx0LnZhbEF4aXNNaW5vclRpY2tNYXJrLGB2YWxgLEwsSyhuKSx0ZS5jb2xvcix0ZS53aWR0aCwhMSx0LnZhbEF4aXNMaW5lSGlkZGVuLGBtaW5vcmAscix0LnZhbEF4aXNMaW5lRGFzaCk7dC52YWxBeGlzTGluZUhpZGRlbnx8eHMoZSxMLFIsTCxSK0IsdGUuY29sb3IsdGUud2lkdGgsdC52YWxBeGlzTGluZURhc2gpfWxldCByZT1hYSh0LmNhdEF4aXNMaW5lQ29sb3IsdC5jYXRBeGlzTGluZVdpZHRoRW11LHIpOyF0LmNhdEF4aXNIaWRkZW4mJiF0LmNhdEF4aXNMaW5lSGlkZGVuJiZ4cyhlLEwsUitCLEwreixSK0IscmUuY29sb3IscmUud2lkdGgsdC5jYXRBeGlzTGluZURhc2gpO2xldCBpZT16L1YsYWU9RHQodC5iYXJHYXBXaWR0aCxgY2hhcnRleGApLG9lPWU9PmAjJHtvLnNlcmllc1tlXS5jb2xvcj8/TGwodCxPW2VdLEQsby5zZXJpZXNbZV0uY2hhcnRleFN0eWxlKX1gLHNlPWU9PlVsKHQsT1tlXSxELG8uc2VyaWVzW2VdLmNoYXJ0ZXhTdHlsZSxvLnNlcmllc1tlXS5jb2xvciksY2U9by5zZXJpZXMubWFwKGU9PmUudmFsdWVzQnlDYXRlZ29yeS5tYXAodD0+X3QodCxlLnF1YXJ0aWxlTWV0aG9kKSkpLGxlPShlLHQpPT57bGV0IG49eXQoTCx6LG8ub25lQm94UGVyU2VyaWVzPzE6VixELG8ub25lQm94UGVyU2VyaWVzPzA6ZSx0LGFlKTtyZXR1cm4gbj97Yng6bi5ib3hYLGJveFc6bi5ib3hXaWR0aCxjeDpuLmNlbnRlclh9OntieDpMLGJveFc6MCxjeDpMfX07Zm9yKGxldCBuPTA7bjxEO24rKyl7bGV0IGk9by5zZXJpZXNbbl07aWYoIWkubWVhbkxpbmUpY29udGludWU7bGV0IGE9dC5jaGFydGV4RGF0YVBvaW50TGluZVN0eWxlPz90LmNoYXJ0ZXhEYXRhUG9pbnRTdHlsZSxzPWkubGluZUNvbG9yP2AjJHtpLmxpbmVDb2xvcn1gOm9lKG4pO2lmKGUuc2F2ZSgpLHFsKGUsdCxhLGksT1tuXSxELHMscil8fGkubGluZUNvbG9yIT1udWxsKXtpLmxpbmVDb2xvciYmKGUuc3Ryb2tlU3R5bGU9cyksaS5saW5lV2lkdGhFbXUmJihlLmxpbmVXaWR0aD1pYShpLmxpbmVXaWR0aEVtdSxyKSk7bGV0IHQ9ITE7ZS5iZWdpblBhdGgoKTtmb3IobGV0IHI9MDtyPFY7cisrKXtsZXQgaT1jZVtuXVtyXTtpZighaSl7dD0hMTtjb250aW51ZX1sZXR7Y3g6YX09bGUocixuKSxvPUsoaS5tZWFuKTt0P2UubGluZVRvKGEsbyk6ZS5tb3ZlVG8oYSxvKSx0PSEwfWUuc3Ryb2tlKCl9ZS5yZXN0b3JlKCl9bGV0IHVlPVlzKHQuY2F0QXhpc0ZvbnRTaXplSHB0LHUscikscT1IdCh1ZSk7Zm9yKGxldCBuPTA7bjxWO24rKyl7bGV0IHM9TCtpZSoobisuNSk7dC5jYXRBeGlzSGlkZGVufHxicyhlLHQuY2F0QXhpc01ham9yVGlja01hcmssYGNhdGAsUitCLHMscmUuY29sb3IscmUud2lkdGgsITEsdC5jYXRBeGlzTGluZUhpZGRlbixgbWFqb3JgLHIsdC5jYXRBeGlzTGluZURhc2gpO2ZvcihsZXQgcz0wO3M8RDtzKyspe2xldCBjPW8uc2VyaWVzW3NdLGw9Y2Vbc11bbl07aWYoIWwpY29udGludWU7bGV0e2J4OnUsYm94VzpkLGN4OmZ9PWxlKG4scykscD1vZShzKSxtPXNlKHMpLGg9dC5jaGFydGV4RGF0YVBvaW50U3R5bGUsZz10LmNoYXJ0ZXhEYXRhUG9pbnRMaW5lU3R5bGU/P2gsXz10LmNoYXJ0ZXhEYXRhUG9pbnRNYXJrZXJTdHlsZT8/aCx2PU9bc10seT1QbCh0LGgsYGxpbmVgLHYsRCksYj1jLmxpbmVDb2xvcj9gIyR7Yy5saW5lQ29sb3J9YDp5P2AjJHt5fWA6cCx4PWMubGluZVdpZHRoRW11P2lhKGMubGluZVdpZHRoRW11LHIpOmg/LmxpbmVXaWR0aEVtdT09bnVsbD8xOmlhKGgubGluZVdpZHRoRW11LHIpLFM9UGwodCxnLGBsaW5lYCx2LEQpLEM9UGwodCxfLGBmaWxsYCx2LEQpLHc9SGwodCx2LEQsYy5jaGFydGV4U3R5bGUsYy5jb2xvcixfKSxUPVBsKHQsXyxgbGluZWAsdixEKSxFPShuLGkpPT57bGV0IGE9Yy5jaGFydGV4U3R5bGUsbz1hPy5saW5lSGlkZGVuIT1udWxsfHxhPy5saW5lQ29sb3JzPy5zb21lKEJvb2xlYW4pfHxhPy5saW5lV2lkdGhFbXUhPW51bGx8fGE/LmxpbmVEYXNoIT1udWxsfHxhPy5saW5lQ2FwIT1udWxsfHxhPy5saW5lSm9pbiE9bnVsbCxzPXFsKGUsdCxuLGMsdixELGksciksbD1uPy5saW5lTm9TdHlsZT09PSEwJiYhbyYmYy5saW5lQ29sb3I9PW51bGwmJmMubGluZVdpZHRoRW11PT1udWxsO3JldHVybiFzJiZsJiYoZS5zdHJva2VTdHlsZT1pLGUubGluZVdpZHRoPTEsZS5zZXRMaW5lRGFzaChbXSkpLGMubGluZUNvbG9yJiYoZS5zdHJva2VTdHlsZT1iKSxjLmxpbmVXaWR0aEVtdSYmKGUubGluZVdpZHRoPXgpLHN8fGx8fGMubGluZUNvbG9yIT1udWxsfSxrPUsobC5xMSksQT1LKGwucTMpLGo9TWF0aC5taW4oayxBKSxNPU1hdGgubWF4KDEsTWF0aC5hYnMoay1BKSksTj1kKi40O0UoZyxTPz9iKSYmKGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8oZixLKGwud2hpc2tlckhpKSksZS5saW5lVG8oZixBKSxlLm1vdmVUbyhmLGspLGUubGluZVRvKGYsSyhsLndoaXNrZXJMbykpLGUubW92ZVRvKGYtTi8yLEsobC53aGlza2VySGkpKSxlLmxpbmVUbyhmK04vMixLKGwud2hpc2tlckhpKSksZS5tb3ZlVG8oZi1OLzIsSyhsLndoaXNrZXJMbykpLGUubGluZVRvKGYrTi8yLEsobC53aGlza2VyTG8pKSxlLnN0cm9rZSgpKSxtJiYoZS5maWxsU3R5bGU9V2woZSxtLHUsaixkLE0scCxpKSxlLmZpbGxSZWN0KHUsaixkLE0pKSxFKGgsYikmJmUuc3Ryb2tlUmVjdCh1K3gvMixqK3gvMixkLXgsTS14KTtsZXQgUD1LKGwubWVkaWFuKTtpZihFKGcsUz8/YikmJihlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHUsUCksZS5saW5lVG8odStkLFApLGUuc3Ryb2tlKCkpLGMuc2hvd05vbm91dGxpZXJzKXtsZXQgbj10LmNoYXJ0U3R5bGVNYXJrZXJTeW1ib2w/P3QuY2hhcnRleE1hcmtlclN5bWJvbD8/YGNpcmNsZWA7Zm9yKGxldCB0IG9mIGwuaW5uZXIpe2lmKG49PT1gbm9uZWApY29udGludWU7bGV0IGE9RShfLFQ/P2IpO19sKGUsZixLKHQpLG4sMyx3P0M/YCMke0N9YDpwOmB0cmFuc3BhcmVudGAsYT9iOm51bGwscixlLmxpbmVXaWR0aCx3LGkpfX1pZihjLm1lYW5NYXJrZXIpe2xldCB0PUsobC5tZWFuKSxuPWE7RShfLFQ/P2IpJiYoZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhmLW4sdC1uKSxlLmxpbmVUbyhmK24sdCtuKSxlLm1vdmVUbyhmK24sdC1uKSxlLmxpbmVUbyhmLW4sdCtuKSxlLnN0cm9rZSgpKX1pZihjLnNob3dPdXRsaWVycyl7bGV0IG49dC5jaGFydFN0eWxlTWFya2VyU3ltYm9sPz90LmNoYXJ0ZXhNYXJrZXJTeW1ib2w/P2BjaXJjbGVgO2ZvcihsZXQgdCBvZiBsLm91dGxpZXJzKXtpZihuPT09YG5vbmVgKWNvbnRpbnVlO2xldCBhPUUoXyxUPz9iKTtfbChlLGYsSyh0KSxuLDMsdz9DP2AjJHtDfWA6cDpgdHJhbnNwYXJlbnRgLGE/YjpudWxsLHIsZS5saW5lV2lkdGgsdyxpKX19fWlmKCF0LmNhdEF4aXNIaWRkZW4pe2UuZm9udD1Ibyh1ZSwkKHQsdC5jYXRBeGlzRm9udEZhY2UsYG1pbm9yYCksdC5jYXRBeGlzRm9udEJvbGQ/PyExLHQuY2F0QXhpc0ZvbnRJdGFsaWM/PyExKSxlLmZpbGxTdHlsZT10LmNhdEF4aXNGb250Q29sb3I/YCMke3QuY2F0QXhpc0ZvbnRDb2xvcn1gOmAjNTk1OTU5YCxlLnRleHRBbGlnbj1gY2VudGVyYCxlLnRleHRCYXNlbGluZT1gdG9wYDtsZXQgcj1lZVtuXTtlLmZpbGxUZXh0KHIscyxSK0IrcSl9fWUucmVzdG9yZSgpLEpvKGUsdCxzLGMsbCx1LEwsUix6LEIsTixGLEUuY2F0Rm9udFB4LEUudmFsRm9udFB4KSx2cyhlLEEsaixzLGMsbCx1LEwsUix6LEIsQy5iYW5kSCsyLHIsby5zZXJpZXMubWFwKChlLHQpPT5zZSh0KSksaSl9ZnVuY3Rpb24gTFMoZSx0LG4scixpKXtsZXQgYT10LmNoYXJ0ZXhTdW5idXJzdDtpZighYXx8YS5yb3dzLmxlbmd0aD09PTApcmV0dXJuO2xldHt4Om8seTpzLHc6YyxoOmx9PW47aWYoYlMoYS5yb3dzKSl7bnUoZSxuLEhuKzEpO3JldHVybn1sZXQgdT14UyhhLnJvd3MpO2lmKHUubGF5b3V0V2VpZ2h0PD0wfHx1LmNoaWxkcmVuLmxlbmd0aD09PTApcmV0dXJuO2xldCBkPXQuc2VyaWVzWzBdLGY9em8oZD8uZGF0YUxhYmVsT3ZlcnJpZGVzKSxwPXUuY2hpbGRyZW4ubWFwKChlLG4pPT5VbCh0LG4sdS5jaGlsZHJlbi5sZW5ndGgsZD8uY2hhcnRleFN0eWxlLGQ/LmNvbG9yKSksbT17Li4udCxjaGFydFR5cGU6YGNsdXN0ZXJlZEJhcmAsc2VyaWVzOnUuY2hpbGRyZW4ubWFwKGU9PntsZXQgbj1MbCh0LGUuYnJhbmNoSW5kZXgsdS5jaGlsZHJlbi5sZW5ndGgsZD8uY2hhcnRleFN0eWxlKTtyZXR1cm4gSmwodCxlLmxhYmVsLGQsdC5jaGFydGV4RGF0YVBvaW50U3R5bGUsZS5icmFuY2hJbmRleCx1LmNoaWxkcmVuLmxlbmd0aCxuLCExLCExKX0pfSxoPWhzKGUsbSxjLGwsLjIyLHIpLGc9S3QodCxvLHMsYyxsLHIse3RpdGxlVG9wUGFkRnJhYzouMDM1LHRpdGxlQm90dG9tUGFkRnJhYzouMDM1LGxlZ2VuZFNpZGVSZXNlcnZlRnJhYzowLGxlZ2VuZFJlc2VydmU6aCxyYWRpYWxHYXBGcmFjOi4wMixob25vclBsb3RBcmVhTWFudWFsTGF5b3V0OiEwfSk7ZmMoZSx0LG8scyxjLGwscytnLnRpdGxlLnRvcFBhZCxnLnRpdGxlLmZvbnRQeCk7bGV0e3B4MDpfLHB5MDp2LHB3OnkscGg6Yn09Zy5wbG90UmVjdDskYShlLHQsXyx2LHksYixyLGkpO2xldCB4PV8reS8yLFM9ditiLzIsQz1NYXRoLm1pbih5LGIpKi40Njt1LmEwPS1NYXRoLlBJLzIsdS5hMT0tTWF0aC5QSS8yK01hdGguUEkqMixTUyh1KTtsZXQgdz1DUyh1KSsxLFQ9QypXUyxFPShDLVQpL3csRD1lPT5gIyR7TGwodCxlLHUuY2hpbGRyZW4ubGVuZ3RoLGQ/LmNoYXJ0ZXhTdHlsZSl9YCxPPWU9PlVsKHQsZSx1LmNoaWxkcmVuLmxlbmd0aCxkPy5jaGFydGV4U3R5bGUsZD8uY29sb3IpLGs9ZD8uc2VyaWVzRGF0YUxhYmVscyxBPSQodCxrPy5mb250RmFjZT8/dC5kYXRhTGFiZWxGb250RmFjZSxgbWlub3JgKSxqPUF0KGs/LmZvbnRTaXplSHB0LHIpPz9NYXRoLm1heCg3LE1hdGgubWluKDEzLEMqLjA3NSkpLE09az8uZm9udENvbG9yP2AjJHtrLmZvbnRDb2xvcn1gOmAjZmZmZmZmYCxOPUFycmF5LmZyb20oe2xlbmd0aDp3fSwoKT0+W10pLFA9W3VdO2Zvcig7UC5sZW5ndGg+MDspe2xldCBlPVAucG9wKCk7ZS5kZXB0aD49MCYmTltlLmRlcHRoXS5wdXNoKGUpO2ZvcihsZXQgdD1lLmNoaWxkcmVuLmxlbmd0aC0xO3Q+PTA7dC0tKVAucHVzaChlLmNoaWxkcmVuW3RdKX1lLnNhdmUoKTtmb3IobGV0IG49MDtuPHc7bisrKXtsZXQgYT1UK24qRSxwPWErRTtmb3IobGV0IG0gb2YgTltuXSl7bGV0IG49bS5hMS1tLmEwO2lmKG48PTFlLTQpY29udGludWU7ZS5iZWdpblBhdGgoKSxlLmFyYyh4LFMscCxtLmEwLG0uYTEpLGUuYXJjKHgsUyxhLG0uYTEsbS5hMCwhMCksZS5jbG9zZVBhdGgoKTtsZXQgaD1PKG0uYnJhbmNoSW5kZXgpO2gmJihlLmZpbGxTdHlsZT1XbChlLGgseC1wLFMtcCxwKjIscCoyLEQobS5icmFuY2hJbmRleCksaSksZS5maWxsKCkpLHFsKGUsdCx0LmNoYXJ0ZXhEYXRhUG9pbnRTdHlsZSx0LnNlcmllc1swXSxtLmJyYW5jaEluZGV4LHUuY2hpbGRyZW4ubGVuZ3RoLGAjZmZmZmZmYCxyKSYmZS5zdHJva2UoKTtsZXQgZz1ObCh0LGQsbS5sYWJlbEluZGV4LG0ubGFiZWwsbS52YWx1ZSx7dmlzaWJsZTohMSxzaG93VmFsOiExLHNob3dDYXROYW1lOiExfSxmKTtpZighZyljb250aW51ZTtsZXQgQz1nLnRleHQsdz1BdChnLmZvbnRTaXplSHB0LHIpPz9qLFQ9Zy5mb250Q29sb3I/YCMke2cuZm9udENvbG9yfWA6TSxrPWcuZm9udEZhY2U/JCh0LGcuZm9udEZhY2UsYG1pbm9yYCk6QSxOPShtLmEwK20uYTEpLzIsUD0oYStwKS8yLEY9RS00LEk9bipQO2lmKCFnLm1hbnVhbExheW91dCYmRjx3Ki45JiZJPHcqLjkpY29udGludWU7bGV0IEw9eCtNYXRoLmNvcyhOKSpQLFI9UytNYXRoLnNpbihOKSpQO2lmKGUuZm9udD1gJHtnLnRleHRTdHlsZS5mb250SXRhbGljP2BpdGFsaWMgYDpgYH0ke2cuZm9udEJvbGQ/YGJvbGQgYDpgYH0ke3d9cHggJHtrfWAsZy5tYW51YWxMYXlvdXQpe0NsKGUsQyx7a2luZDpgcG9pbnRgLHg6TCx5OlIscG9zaXRpb246Zy5wb3NpdGlvbj8/YGN0cmB9LHt4Ol8seTp2LHc6eSxoOmJ9LHcsVCxnLm1hbnVhbExheW91dCx7eDpvLHk6cyx3OmMsaDpsfSxTbCh0LGcucmljaFJ1bnMscixrLGcuZm9udEJvbGQ/PyExLGcudGV4dFN0eWxlKSx2b2lkIDAsZy50ZXh0U3R5bGUscixnLmxhYmVsQm94LGkpO2NvbnRpbnVlfWUuc2F2ZSgpLGUudHJhbnNsYXRlKEwsUik7bGV0IHo9TixCPXoqMTgwL01hdGguUEklMzYwOyhCPjkwfHxCPC05MCkmJih6Kz1NYXRoLlBJKSxlLnJvdGF0ZSh6KSxlLmZvbnQ9YCR7Zy50ZXh0U3R5bGUuZm9udEl0YWxpYz9gaXRhbGljIGA6YGB9JHtnLmZvbnRCb2xkP2Bib2xkIGA6YGB9JHt3fXB4ICR7a31gLENsKGUsQyx7a2luZDpgcG9pbnRgLHg6MCx5OjAscG9zaXRpb246Zy5wb3NpdGlvbj8/YGN0cmB9LHt4Oi1GLzIseTotSS8yLHc6RixoOkl9LHcsVCx2b2lkIDAse3g6LUYvMix5Oi1JLzIsdzpGLGg6SX0sU2wodCxnLnJpY2hSdW5zLHIsayxnLmZvbnRCb2xkPz8hMSxnLnRleHRTdHlsZSksdm9pZCAwLGcudGV4dFN0eWxlLHIsZy5sYWJlbEJveCxpKSxlLnJlc3RvcmUoKX19ZS5yZXN0b3JlKCksdnMoZSxtLGgsbyxzLGMsbCxfLHYseSxiLGcudGl0bGUuYmFuZEgrMixyLHAsaSl9ZnVuY3Rpb24gUlMoZSx0KXtsZXQgbj1lLm1hcCgoZSx0KT0+KHtub2RlOmUsaW5kZXg6dCx2YWx1ZTplLmxheW91dFdlaWdodH0pKS5maWx0ZXIoZT0+ZS52YWx1ZT4wKS5zb3J0KChlLHQpPT50LnZhbHVlLWUudmFsdWV8fGUuaW5kZXgtdC5pbmRleCkscj1uLnJlZHVjZSgoZSx0KT0+ZSt0LnZhbHVlLDApO2lmKHI8PTB8fHQudzw9MHx8dC5oPD0wKXJldHVybltdO2xldCBpPXQudyp0LmgvcixhPW4ubWFwKGU9Pih7Li4uZSxhcmVhOmUudmFsdWUqaX0pKSxvPVtdLHM9ey4uLnR9LGM9W10sbD0wLHU9MS8wLGQ9MCxmPShlLHQsbixyKT0+e2lmKGU8PTB8fHQ8PTB8fHI8PTApcmV0dXJuIDEvMDtsZXQgaT1yKnI7cmV0dXJuIE1hdGgubWF4KGkqbi8oZSplKSxlKmUvKGkqdCkpfSxwPShlLHQpPT57aWYoZS5sZW5ndGghPT0wKWlmKHMudz49cy5oKXtsZXQgbj1zLmg+MD90L3MuaDowLHI9cy55O2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKXtsZXQgaT10PT09ZS5sZW5ndGgtMT9zLnkrcy5oLXI6ZVt0XS5hcmVhL247by5wdXNoKHtub2RlOmVbdF0ubm9kZSxyZWN0Ont4OnMueCx5OnIsdzpuLGg6aX19KSxyKz1pfXM9e3g6cy54K24seTpzLnksdzpNYXRoLm1heCgwLHMudy1uKSxoOnMuaH19ZWxzZXtsZXQgbj1zLnc+MD90L3MudzowLHI9cy54O2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKXtsZXQgaT10PT09ZS5sZW5ndGgtMT9zLngrcy53LXI6ZVt0XS5hcmVhL247by5wdXNoKHtub2RlOmVbdF0ubm9kZSxyZWN0Ont4OnIseTpzLnksdzppLGg6bn19KSxyKz1pfXM9e3g6cy54LHk6cy55K24sdzpzLncsaDpNYXRoLm1heCgwLHMuaC1uKX19fSxtPTA7Zm9yKDttPGEubGVuZ3RoOyl7bGV0IGU9YVttXSx0PU1hdGgubWluKHMudyxzLmgpLG49bCtlLmFyZWEscj1NYXRoLm1pbih1LGUuYXJlYSksaT1NYXRoLm1heChkLGUuYXJlYSk7Yy5sZW5ndGg9PT0wfHxmKG4scixpLHQpPD1mKGwsdSxkLHQpPyhjLnB1c2goZSksbD1uLHU9cixkPWksbSsrKToocChjLGwpLGM9W10sbD0wLHU9MS8wLGQ9MCl9cmV0dXJuIHAoYyxsKSxvfWZ1bmN0aW9uIHpTKGUsdCxuLHIsaSl7bGV0IGE9dC5jaGFydGV4VHJlZW1hcDtpZighYXx8YS5yb3dzLmxlbmd0aD09PTApcmV0dXJuO2lmKGJTKGEucm93cykpe251KGUsbixIbisxKTtyZXR1cm59bGV0IG89eFMoYS5yb3dzLCEwKTtpZihvLmxheW91dFdlaWdodDw9MHx8by5jaGlsZHJlbi5sZW5ndGg9PT0wKXJldHVybjtsZXQgcz10LnNlcmllc1swXSxjPW8uY2hpbGRyZW4ubWFwKGU9PlVsKHQsZS5icmFuY2hJbmRleCxvLmNoaWxkcmVuLmxlbmd0aCxzPy5jaGFydGV4U3R5bGUscz8uY29sb3IpKSxsPXsuLi50LGNoYXJ0VHlwZTpgY2x1c3RlcmVkQmFyYCxzZXJpZXM6by5jaGlsZHJlbi5tYXAoZT0+e2xldCBuPUxsKHQsZS5icmFuY2hJbmRleCxvLmNoaWxkcmVuLmxlbmd0aCxzPy5jaGFydGV4U3R5bGUpO3JldHVybiBKbCh0LGUubGFiZWwscyx0LmNoYXJ0ZXhEYXRhUG9pbnRTdHlsZSxlLmJyYW5jaEluZGV4LG8uY2hpbGRyZW4ubGVuZ3RoLG4sITAsITEpfSl9LHU9aHMoZSxsLG4udyxuLmgsLjIyLHIpLGQ9S3QodCxuLngsbi55LG4udyxuLmgscix7dGl0bGVUb3BQYWRGcmFjOi4wMzUsdGl0bGVCb3R0b21QYWRGcmFjOi4wMzUsbGVnZW5kU2lkZVJlc2VydmVGcmFjOjAsbGVnZW5kUmVzZXJ2ZTp1LHJhZGlhbEdhcEZyYWM6LjAxNSxob25vclBsb3RBcmVhTWFudWFsTGF5b3V0OiEwfSk7ZmMoZSx0LG4ueCxuLnksbi53LG4uaCxuLnkrZC50aXRsZS50b3BQYWQsZC50aXRsZS5mb250UHgpO2xldHtweDA6ZixweTA6cCxwdzptLHBoOmh9PWQucGxvdFJlY3Q7JGEoZSx0LGYscCxtLGgscixpKTtsZXQgZz17eDpmLHk6cCx3Om0saH0sXz1hLnBhcmVudExhYmVsTGF5b3V0Pz9gb3ZlcmxhcHBpbmdgLHY9dC5zZXJpZXNbMF0/LnNlcmllc0RhdGFMYWJlbHMseT0kKHQsdj8uZm9udEZhY2U/P3QuZGF0YUxhYmVsRm9udEZhY2UsYG1pbm9yYCksYj1BdCh2Py5mb250U2l6ZUhwdCxyKT8/TWF0aC5tYXgoOCxNYXRoLm1pbigxMyxkLnBsb3RSZWN0LnBoKi4wMjUpKSx4PXY/LmZvbnRDb2xvcj9gIyR7di5mb250Q29sb3J9YDpgI2ZmZmZmZmAsUz1uZXcgTWFwKCh0LnNlcmllc1swXT8uZGF0YUxhYmVsT3ZlcnJpZGVzPz9bXSkubWFwKGU9PltlLmlkeCxlXSkpLEM9dC5jaGFydEJnP3QuY2hhcnRCZy5zdGFydHNXaXRoKGAjYCk/dC5jaGFydEJnOmAjJHt0LmNoYXJ0Qmd9YDpgI2ZmZmZmZmAsdz0oYSxjKT0+e2lmKGMudzwuNXx8Yy5oPC41KXJldHVybjtsZXQgbD1gIyR7TGwodCxhLmJyYW5jaEluZGV4LG8uY2hpbGRyZW4ubGVuZ3RoLHM/LmNoYXJ0ZXhTdHlsZSl9YCx1PVVsKHQsYS5icmFuY2hJbmRleCxvLmNoaWxkcmVuLmxlbmd0aCxzPy5jaGFydGV4U3R5bGUscz8uY29sb3IpLGQ9Uy5nZXQoYS5sYWJlbEluZGV4KSxmPWQ/LmZvbnRDb2xvcj9gIyR7ZC5mb250Q29sb3J9YDp4LHA9QXQoZD8uZm9udFNpemVIcHQscik/P2IsbT1kPy5mb250Qm9sZD8/dj8uZm9udEJvbGQ/PyExO2lmKGEuY2hpbGRyZW4ubGVuZ3RoPjApe2xldCBvPU5sKHQscyxhLmxhYmVsSW5kZXgsYS5sYWJlbCxhLnZhbHVlLHt2aXNpYmxlOl8hPT1gbm9uZWAsc2hvd1ZhbDohMSxzaG93Q2F0TmFtZTohMH0sUywhMCksaD1vIT1udWxsJiYoXyE9PWBvdmVybGFwcGluZ2B8fGEuZGVwdGg9PT0wKSx2PXAsYj1vPy5mb250RmFjZT8kKHQsby5mb250RmFjZSxgbWlub3JgKTp5LHg9Xz09PWBiYW5uZXJgJiZoP01hdGgubWluKGMuaCouMjgsdis3KTowO3g+MCYmdSYmKGUuZmlsbFN0eWxlPVdsKGUsdSxjLngsYy55LGMudyx4LGwsaSksZS5maWxsUmVjdChjLngsYy55LGMudyx4KSk7bGV0IEM9e3g6Yy54LHk6Yy55K3gsdzpjLncsaDpNYXRoLm1heCgwLGMuaC14KX07Zm9yKGxldCBlIG9mIFJTKGEuY2hpbGRyZW4sQykpdyhlLm5vZGUsZS5yZWN0KTtpZihoJiYoby5tYW51YWxMYXlvdXR8fGMudz52KjImJmMuaD52KzQpKXtlLmZvbnQ9YCR7bT9gYm9sZCBgOmBgfSR7dn1weCAke2J9YDtsZXQgYT14PjA/e3g6Yy54LHk6Yy55LHc6Yy53LGg6eH06YyxzPWQ/LnBvc2l0aW9uPz9gaW5CYXNlYDtDbChlLG8udGV4dCxvLm1hbnVhbExheW91dD97a2luZDpgcG9pbnRgLHg6Yy54K2Mudy8yLHk6Yy55K2MuaC8yLHBvc2l0aW9uOnN9OntraW5kOmBib3hgLHJlY3Q6YSxwb3NpdGlvbjpzfSxvLm1hbnVhbExheW91dD9nOmEsdixmLG8ubWFudWFsTGF5b3V0LG4sU2wodCxvLnJpY2hSdW5zLHIsYixtLG8udGV4dFN0eWxlKSx2b2lkIDAsby50ZXh0U3R5bGUscixvLmxhYmVsQm94LGkpfXJldHVybn11JiYoZS5maWxsU3R5bGU9V2woZSx1LGMueCxjLnksYy53LGMuaCxsLGkpLGUuZmlsbFJlY3QoYy54LGMueSxjLncsYy5oKSkscWwoZSx0LHQuY2hhcnRleERhdGFQb2ludFN0eWxlLHQuc2VyaWVzWzBdLGEuYnJhbmNoSW5kZXgsby5jaGlsZHJlbi5sZW5ndGgsQyxyLHtsaW5rZWROb1N0eWxlRmFsbGJhY2s6ITB9KSYmZS5zdHJva2VSZWN0KGMueCxjLnksYy53LGMuaCk7bGV0IGg9TmwodCxzLGEubGFiZWxJbmRleCxhLmxhYmVsLGEudmFsdWUse3Zpc2libGU6ITEsc2hvd1ZhbDohMSxzaG93Q2F0TmFtZTohMX0sUyk7aWYoIWgpcmV0dXJuO2xldCBUPUF0KGguZm9udFNpemVIcHQscik/P3A7aWYoIWgubWFudWFsTGF5b3V0JiYoYy53PD1UKjEuMnx8Yy5oPD1UKjEuMikpcmV0dXJuO2xldCBFPWguZm9udEZhY2U/JCh0LGguZm9udEZhY2UsYG1pbm9yYCk6eTtlLmZvbnQ9YCR7aC5mb250Qm9sZD9gYm9sZCBgOmBgfSR7VH1weCAke0V9YDtsZXQgRD1jLE89aC5wb3NpdGlvbj09PWBvdXRFbmRgP2BpbkVuZGA6aC5wb3NpdGlvbj8/YGN0cmA7Q2woZSxoLnRleHQsaC5tYW51YWxMYXlvdXQ/e2tpbmQ6YHBvaW50YCx4OmMueCtjLncvMix5OmMueStjLmgvMixwb3NpdGlvbjpPfTp7a2luZDpgYm94YCxyZWN0OkQscG9zaXRpb246T30saC5tYW51YWxMYXlvdXQ/ZzpELFQsaC5mb250Q29sb3I/YCMke2guZm9udENvbG9yfWA6ZixoLm1hbnVhbExheW91dCxuLFNsKHQsaC5yaWNoUnVucyxyLEUsaC5mb250Qm9sZD8/ITEsaC50ZXh0U3R5bGUpLHZvaWQgMCxoLnRleHRTdHlsZSxyLGgubGFiZWxCb3gsaSl9O2Uuc2F2ZSgpLGUuYmVnaW5QYXRoKCksZS5yZWN0KGYscCxtLGgpLGUuY2xpcCgpO2ZvcihsZXQgZSBvZiBSUyhvLmNoaWxkcmVuLHt4OmYseTpwLHc6bSxofSkpdyhlLm5vZGUsZS5yZWN0KTtlLnJlc3RvcmUoKSx2cyhlLGwsdSxuLngsbi55LG4udyxuLmgsZixwLG0saCxkLnRpdGxlLmJhbmRIKzIscixjLGkpfWZ1bmN0aW9uIEJTKGUsdCxuLHIsaT0wKXtsZXQgYT1rUyh0KTtpZihhIT1udWxsJiZhPjEwNDg1NzYpcmV0dXJuIG51KGUsbixIbisxKSwhMDtzd2l0Y2godC5jaGFydFR5cGUpe2Nhc2Vgd2F0ZXJmYWxsYDpyZXR1cm4galMoZSx0LG4scixpKSwhMDtjYXNlYGNsdXN0ZXJlZENvbHVtbmA6cmV0dXJuIHZjKGUsey4uLnQsY2hhcnRUeXBlOmBjbHVzdGVyZWRCYXJgfSxuLHIse2dhcFBvbGljeTpgY2hhcnRleGB9LGkpLCEwO2Nhc2VgaGlzdG9ncmFtYDpyZXR1cm4gQVMoZSx0LG4scixpKSwhMDtjYXNlYGZ1bm5lbGA6cmV0dXJuIE1TKGUsdCxuLHIsaSksITA7Y2FzZWBwYXJldG9MaW5lYDpyZXR1cm4gTlMoZSx0LG4scixpKSwhMDtjYXNlYHBhcmV0b2A6cmV0dXJuIFBTKGUsdCxuLHIsaSksITA7Y2FzZWBib3hXaGlza2VyYDpyZXR1cm4gSVMoZSx0LG4scixpKSwhMDtjYXNlYHN1bmJ1cnN0YDpyZXR1cm4gTFMoZSx0LG4scixpKSwhMDtjYXNlYHRyZWVtYXBgOnJldHVybiB6UyhlLHQsbixyLGkpLCEwO2RlZmF1bHQ6cmV0dXJuITF9fXZhciBWUyxIUyxVUyxXUyxHUz10KCgoKT0+e1F0KCkscmEoKSxjYSgpLE9hKCksT3QoKSxoUygpLHh0KCkseVMoKSxSbigpLHFuKCksd1MoKSxlbygpLGp1KCksVlM9NyxIUz0uMDUsVVM9MS4yLFdTPS4xOH0pKSxLUz1uKHtUSUZGX0lNUExFTUVOVEFUSU9OX01BUktFUjooKT0+T0MsVGlmZkRlY29kZUVycm9yOigpPT5EaCxfX3Rlc3RfZGVjb2RlVGlmZlJnYmFXaXRoR3JvdXA0RGlhZ25vc3RpY3M6KCk9PkVDLGRlY29kZVRpZmZSZ2JhOigpPT5UQyxpc1RpZmZEZWNvZGVFcnJvcjooKT0+d2gscmVuZGVyVGlmZlRvQml0bWFwOigpPT5EQ30pO2Z1bmN0aW9uIHFTKGUsdCl7dGhyb3cgbmV3IERoKGUsdD09PXZvaWQgMD92b2lkIDA6e2NhdXNlOnR9KX1mdW5jdGlvbiBKUyhlKXtyZXR1cm4gZS5sZW5ndGg+PTImJihlWzBdPT09NzMmJmVbMV09PT03M3x8ZVswXT09PTc3JiZlWzFdPT09NzcpfWZ1bmN0aW9uIFlTKGUpe2lmKCFUaChlKSl7aWYoIUpTKGUpKXJldHVybiBudWxsO2UubGVuZ3RoPDQmJnFTKGBNYWxmb3JtZWQgVElGRiBoZWFkZXI6IG1pc3NpbmcgdmVyc2lvbmApO2xldCB0PWVbMF09PT03MztxUyhgVW5zdXBwb3J0ZWQgVElGRiB2ZXJzaW9uOiAke25ldyBEYXRhVmlldyhlLmJ1ZmZlcixlLmJ5dGVPZmZzZXQsZS5ieXRlTGVuZ3RoKS5nZXRVaW50MTYoMix0KX1gKX1lLmxlbmd0aDw4JiZxUyhgTWFsZm9ybWVkIFRJRkYgaGVhZGVyOiBtaXNzaW5nIGZpcnN0LUlGRCBvZmZzZXRgKTtsZXQgdD1uZXcgUEMoZSxlWzBdPT09NzMpLG49dC51MzIoNCxgZmlyc3QtSUZEIG9mZnNldGApLHI9dC51MTYobixgZmlyc3QgSUZEYCksaT1yKjEyKzQ7dC5jb250YWlucyhuKzIsaSl8fHFTKGBNYWxmb3JtZWQgVElGRiBmaXJzdC1JRkQgZW50cnkgcmFuZ2VgKTtsZXQgYT1uZXcgTWFwO2ZvcihsZXQgZT0wO2U8cjtlKyspe2xldCByPW4rMitlKjEyLGk9dC51MTYocixgSUZEIGVudHJ5ICR7ZX1gKSxvPXQudTE2KHIrMixgSUZEIGVudHJ5ICR7ZX0gdHlwZWApLHM9dC51MzIocis0LGBJRkQgZW50cnkgJHtlfSBjb3VudGApO2EuaGFzKGkpJiZxUyhgTWFsZm9ybWVkIFRJRkY6IGR1cGxpY2F0ZSB0YWcgJHtpfWApLGEuc2V0KGkse3R5cGU6byxjb3VudDpzLGVudHJ5T2Zmc2V0OnJ9KX1yZXR1cm57cmVhZGVyOnQsZmllbGRzOmF9fWZ1bmN0aW9uIFhTKGUpe3JldHVybiBlPT09a0M/MTplPT09QUM/MjplPT09akM/NDowfWZ1bmN0aW9uIFpTKGUsdCxuLHIpe2xldCBpPWUuZmllbGRzLmdldCh0KTtpZighaSlyZXR1cm47ci5pbmNsdWRlcyhpLnR5cGUpfHxxUyhgVW5zdXBwb3J0ZWQgVElGRiAke259IGZpZWxkIHR5cGU6ICR7aS50eXBlfWApLGkuY291bnQ8MSYmcVMoYE1hbGZvcm1lZCBUSUZGICR7bn06IGVtcHR5IHZhbHVlIGxpc3RgKTtsZXQgYT1YUyhpLnR5cGUpLG89aS5jb3VudCphO051bWJlci5pc1NhZmVJbnRlZ2VyKG8pfHxxUyhgTWFsZm9ybWVkIFRJRkYgJHtufSB2YWx1ZSBjb3VudGApO2xldCBzPW88PTQ/aS5lbnRyeU9mZnNldCs4OmUucmVhZGVyLnUzMihpLmVudHJ5T2Zmc2V0KzgsYCR7bn0gdmFsdWUgb2Zmc2V0YCk7cmV0dXJuIGUucmVhZGVyLmNvbnRhaW5zKHMsbyl8fHFTKGBNYWxmb3JtZWQgVElGRiAke259IHZhbHVlIHJhbmdlYCkse2NvdW50OmkuY291bnQsYXQodCl7KCFOdW1iZXIuaXNTYWZlSW50ZWdlcih0KXx8dDwwfHx0Pj1pLmNvdW50KSYmcVMoYE1hbGZvcm1lZCBUSUZGICR7bn0gdmFsdWUgaW5kZXhgKTtsZXQgcj1zK3QqYTtyZXR1cm4gaS50eXBlPT09a0M/ZS5yZWFkZXIudTgocixuKTppLnR5cGU9PT1BQz9lLnJlYWRlci51MTYocixuKTplLnJlYWRlci51MzIocixuKX19fWZ1bmN0aW9uIFFTKGUsdCxuLHIsaSl7bGV0IGE9WlMoZSx0LG4scik7aWYoIWEpe2lmKGkhPT12b2lkIDApcmV0dXJuIGk7cVMoYE1hbGZvcm1lZCBUSUZGOiBtaXNzaW5nICR7bn1gKX1yZXR1cm4gYS5jb3VudCE9PTEmJnFTKGBNYWxmb3JtZWQgVElGRiAke259OiBleHBlY3RlZCBvbmUgdmFsdWVgKSxhLmF0KDApfWZ1bmN0aW9uICRTKGUsdCxuLHIsaSl7bGV0IGE9WlMoZSx0LG4scik7cmV0dXJuIGF8fHFTKGBNYWxmb3JtZWQgVElGRjogbWlzc2luZyAke259YCksYS5jb3VudCE9PWkmJnFTKGBNYWxmb3JtZWQgVElGRiAke259OiBleHBlY3RlZCAke2l9IHZhbHVlJHtpPT09MT9gYDpgc2B9YCksYX1mdW5jdGlvbiBlQyhlLHQpeyhlPDF8fHQ8MSkmJnFTKGBNYWxmb3JtZWQgVElGRjogaW1hZ2UgZGltZW5zaW9ucyBtdXN0IGJlIHBvc2l0aXZlYCk7bGV0IG49TWF0aC5tYXgoZSx0KTtpZihuPjEzNDIxNzcyOCl0aHJvdyBuZXcgZ2UoYGltYWdlLWRpbWVuc2lvbmAscGUsbik7bGV0IHI9ZSp0O2lmKHI+MTM0MjE3NzI4KXRocm93IG5ldyBnZShgaW1hZ2UtcGl4ZWxzYCxmZSxOdW1iZXIuaXNTYWZlSW50ZWdlcihyKT9yOjIqKjUzLTEpfWZ1bmN0aW9uIHRDKGUsdCl7aWYoIWUuZmllbGRzLmhhcyhNQy5iaXRzUGVyU2FtcGxlKSlyZXR1cm5bMV07bGV0IG49JFMoZSxNQy5iaXRzUGVyU2FtcGxlLGBCaXRzUGVyU2FtcGxlYCxbQUNdLHQpLHI9QXJyYXkodCk7Zm9yKGxldCBlPTA7ZTx0O2UrKylyW2VdPW4uYXQoZSk7cmV0dXJuIHJ9ZnVuY3Rpb24gbkMoZSx0KXtpZighZS5maWVsZHMuaGFzKE1DLnNhbXBsZUZvcm1hdCkpcmV0dXJuO2xldCBuPSRTKGUsTUMuc2FtcGxlRm9ybWF0LGBTYW1wbGVGb3JtYXRgLFtBQ10sdCk7Zm9yKGxldCBlPTA7ZTxuLmNvdW50O2UrKyluLmF0KGUpIT09MSYmcVMoYFVuc3VwcG9ydGVkIFRJRkYgU2FtcGxlRm9ybWF0OiBvbmx5IHVuc2lnbmVkIGludGVnZXJzIGFyZSBzdXBwb3J0ZWRgKX1mdW5jdGlvbiByQyhlLHQpe2xldCBuPVFTKGUsTUMuY29tcHJlc3Npb24sYENvbXByZXNzaW9uYCxbQUNdLDEpO24hPT0xJiZuIT09NCYmcVMoYFVuc3VwcG9ydGVkIFRJRkYgY29tcHJlc3Npb246ICR7bn1gKTtsZXQgcj1RUyhlLE1DLnBob3RvbWV0cmljLGBQaG90b21ldHJpY0ludGVycHJldGF0aW9uYCxbQUNdKSxpPVFTKGUsTUMuc2FtcGxlc1BlclBpeGVsLGBTYW1wbGVzUGVyUGl4ZWxgLFtBQ10sMSk7aSE9PTEmJmkhPT0zJiZpIT09NCYmcVMoYFVuc3VwcG9ydGVkIFRJRkYgU2FtcGxlc1BlclBpeGVsOiAke2l9YCk7bGV0IGE9dEMoZSxpKTtpZihuQyhlLGkpLG49PT00KXsoaSE9PTF8fGEubGVuZ3RoIT09MXx8YVswXSE9PTF8fHIhPT0wJiZyIT09MSkmJnFTKGBVbnN1cHBvcnRlZCBDQ0lUVCBHcm91cCA0IFRJRkYgc2FtcGxlIGxheW91dGApLGUuZmllbGRzLmhhcyhNQy5leHRyYVNhbXBsZXMpJiZxUyhgVW5zdXBwb3J0ZWQgQ0NJVFQgR3JvdXAgNCBUSUZGIEV4dHJhU2FtcGxlc2ApO2xldCB0PVFTKGUsTUMudDZPcHRpb25zLGBUNk9wdGlvbnNgLFtqQ10sMCk7cmV0dXJuIHQhPT0wJiZxUyhgVW5zdXBwb3J0ZWQgVElGRiBUNk9wdGlvbnM6ICR7dH1gKSx7Y29tcHJlc3Npb246bixsYXlvdXQ6e2tpbmQ6YGdyb3VwNGAscGhvdG9tZXRyaWM6cn19fWlmKHI9PT0wfHxyPT09MSl7aWYoKGkhPT0xfHxlLmZpZWxkcy5oYXMoTUMuZXh0cmFTYW1wbGVzKSkmJnFTKGBVbnN1cHBvcnRlZCBUSUZGIGdyYXlzY2FsZSBzYW1wbGUgbGF5b3V0YCksYVswXT09PTEpcmV0dXJue2NvbXByZXNzaW9uOm4sbGF5b3V0OntraW5kOmBncmF5LTFgLHBob3RvbWV0cmljOnIsYnl0ZXNQZXJSb3c6TWF0aC5jZWlsKHQvOCl9fTtpZihhWzBdPT09OClyZXR1cm57Y29tcHJlc3Npb246bixsYXlvdXQ6e2tpbmQ6YGdyYXktOGAscGhvdG9tZXRyaWM6cixieXRlc1BlclJvdzp0fX07cVMoYFVuc3VwcG9ydGVkIFRJRkYgZ3JheXNjYWxlIEJpdHNQZXJTYW1wbGU6ICR7YVswXX1gKX1pZihyPT09Mil7aWYoYS5zb21lKGU9PmUhPT04KSYmcVMoYFVuc3VwcG9ydGVkIFRJRkYgUkdCIEJpdHNQZXJTYW1wbGU6IG9ubHkgOC1iaXQgc2FtcGxlcyBhcmUgc3VwcG9ydGVkYCksaT09PTMpcmV0dXJuIGUuZmllbGRzLmhhcyhNQy5leHRyYVNhbXBsZXMpJiZxUyhgVW5zdXBwb3J0ZWQgVElGRiBSR0IgRXh0cmFTYW1wbGVzYCkse2NvbXByZXNzaW9uOm4sbGF5b3V0OntraW5kOmByZ2JgLGJ5dGVzUGVyUm93OnQqM319O2lmKGk9PT00KXtsZXQgcj0kUyhlLE1DLmV4dHJhU2FtcGxlcyxgRXh0cmFTYW1wbGVzYCxbQUNdLDEpLmF0KDApO2lmKHI9PT0xKXJldHVybntjb21wcmVzc2lvbjpuLGxheW91dDp7a2luZDpgcmdiYS1hc3NvY2lhdGVkYCxieXRlc1BlclJvdzp0KjR9fTtpZihyPT09MilyZXR1cm57Y29tcHJlc3Npb246bixsYXlvdXQ6e2tpbmQ6YHJnYmEtdW5hc3NvY2lhdGVkYCxieXRlc1BlclJvdzp0KjR9fTtxUyhgVW5zdXBwb3J0ZWQgVElGRiBFeHRyYVNhbXBsZXMgdmFsdWU6ICR7cn1gKX1xUyhgVW5zdXBwb3J0ZWQgVElGRiBSR0IgU2FtcGxlc1BlclBpeGVsOiAke2l9YCl9aWYocj09PTUpeyhpIT09NHx8YS5sZW5ndGghPT00fHxhLnNvbWUoZT0+ZSE9PTgpKSYmcVMoYFVuc3VwcG9ydGVkIFRJRkYgc2VwYXJhdGVkIHNhbXBsZSBsYXlvdXQ6IGV4cGVjdGVkIDgtYml0IHByb2Nlc3MgQ01ZS2ApLGUuZmllbGRzLmhhcyhNQy5leHRyYVNhbXBsZXMpJiZxUyhgVW5zdXBwb3J0ZWQgVElGRiBDTVlLIEV4dHJhU2FtcGxlc2ApO2xldCByPVFTKGUsTUMuaW5rU2V0LGBJbmtTZXRgLFtBQ10sMSk7cmV0dXJuIHIhPT0xJiZxUyhgVW5zdXBwb3J0ZWQgVElGRiBJbmtTZXQ6ICR7cn1gKSx7Y29tcHJlc3Npb246bixsYXlvdXQ6e2tpbmQ6YGNteWtgLGJ5dGVzUGVyUm93OnQqNH19fXFTKGBVbnN1cHBvcnRlZCBUSUZGIFBob3RvbWV0cmljSW50ZXJwcmV0YXRpb246ICR7cn1gKX1mdW5jdGlvbiBpQyhlKXtsZXQgdD1ZUyhlKTtpZighdClyZXR1cm4gbnVsbDtsZXQgbj1RUyh0LE1DLndpZHRoLGBJbWFnZVdpZHRoYCxbQUMsakNdKSxyPVFTKHQsTUMuaGVpZ2h0LGBJbWFnZUxlbmd0aGAsW0FDLGpDXSk7ZUMobixyKSxOQy5zb21lKGU9PnQuZmllbGRzLmhhcyhlKSkmJnFTKGBVbnN1cHBvcnRlZCB0aWxlZCBUSUZGOiBvbmx5IHN0cmlwcGVkIGltYWdlcyBhcmUgc3VwcG9ydGVkYCk7bGV0IGk9UVModCxNQy5vcmllbnRhdGlvbixgT3JpZW50YXRpb25gLFtBQ10sMSk7aSE9PTEmJnFTKGBVbnN1cHBvcnRlZCBUSUZGIG9yaWVudGF0aW9uOiAke2l9YCk7bGV0IGE9UVModCxNQy5wbGFuYXJDb25maWd1cmF0aW9uLGBQbGFuYXJDb25maWd1cmF0aW9uYCxbQUNdLDEpO2EhPT0xJiZxUyhgVW5zdXBwb3J0ZWQgVElGRiBQbGFuYXJDb25maWd1cmF0aW9uOiAke2F9YCk7bGV0IG89UVModCxNQy5maWxsT3JkZXIsYEZpbGxPcmRlcmAsW0FDXSwxKTtvIT09MSYmcVMoYFVuc3VwcG9ydGVkIFRJRkYgRmlsbE9yZGVyOiAke299YCk7bGV0IHM9UVModCxNQy5wcmVkaWN0b3IsYFByZWRpY3RvcmAsW0FDXSwxKTtzIT09MSYmcVMoYFVuc3VwcG9ydGVkIFRJRkYgUHJlZGljdG9yOiAke3N9YCk7bGV0IGM9UVModCxNQy5yb3dzUGVyU3RyaXAsYFJvd3NQZXJTdHJpcGAsW0FDLGpDXSw0Mjk0OTY3Mjk1KTtjPDEmJnFTKGBNYWxmb3JtZWQgVElGRiBSb3dzUGVyU3RyaXA6IGV4cGVjdGVkIGEgcG9zaXRpdmUgdmFsdWVgKTtsZXQgbD1NYXRoLmNlaWwoci9jKSx1PSRTKHQsTUMuc3RyaXBPZmZzZXRzLGBTdHJpcE9mZnNldHNgLFtBQyxqQ10sbCksZD0kUyh0LE1DLnN0cmlwQnl0ZUNvdW50cyxgU3RyaXBCeXRlQ291bnRzYCxbQUMsakNdLGwpLHtjb21wcmVzc2lvbjpmLGxheW91dDpwfT1yQyh0LG4pO2ZvcihsZXQgZT0wO2U8bDtlKyspe2xldCBuPXUuYXQoZSksaT1kLmF0KGUpO2lmKHQucmVhZGVyLmNvbnRhaW5zKG4saSl8fHFTKGBNYWxmb3JtZWQgVElGRiBzdHJpcCAke2V9IGJ5dGUgcmFuZ2VgKSxmPT09MSl7bGV0IHQ9ZSpjLG49TWF0aC5taW4oYyxyLXQpKnAuYnl0ZXNQZXJSb3c7aTxuJiZxUyhgTWFsZm9ybWVkIFRJRkYgc3RyaXAgJHtlfTogJHtpfSBieXRlcyBjYW5ub3QgaG9sZCAke259IGJ5dGVzYCl9fXJldHVybntkaXJlY3Rvcnk6dCx3aWR0aDpuLGhlaWdodDpyLHJvd3NQZXJTdHJpcDpjLHN0cmlwQ291bnQ6bCxzdHJpcE9mZnNldHM6dSxzdHJpcEJ5dGVDb3VudHM6ZCxsYXlvdXQ6cH19ZnVuY3Rpb24gYUMoZSx0KXtpZihlIT09dm9pZCAwKXJldHVybighTnVtYmVyLmlzRmluaXRlKGUpfHxlPD0wKSYmcVMoYEludmFsaWQgVElGRiAke3R9OiBleHBlY3RlZCBhIHBvc2l0aXZlIGZpbml0ZSBudW1iZXJgKSxlfWZ1bmN0aW9uIG9DKGUsdCxuKXtsZXQgcj1hQyhuLnRhcmdldFdpZHRoUHgsYHRhcmdldFdpZHRoUHhgKSxpPWFDKG4udGFyZ2V0SGVpZ2h0UHgsYHRhcmdldEhlaWdodFB4YCksYT0kaCh7d2lkdGg6ZSxoZWlnaHQ6dH0scixpLCEwKSxvPWE/LndpZHRoPz9lLHM9YT8uaGVpZ2h0Pz90LGM9TWF0aC5tYXgobyxzKTtpZihjPjMyNzY3KXRocm93IG5ldyBnZShgaW1hZ2UtZGltZW5zaW9uYCxKLGMpO2xldCBsPW4ubWF4UmV0YWluZWRQaXhlbHM/PzMzNTU0NDMyOyghTnVtYmVyLmlzRmluaXRlKGwpfHxsPDApJiZxUyhgSW52YWxpZCBUSUZGIG1heFJldGFpbmVkUGl4ZWxzOiBleHBlY3RlZCBhIG5vbi1uZWdhdGl2ZSBmaW5pdGUgbnVtYmVyYCk7bGV0IHU9TWF0aC5taW4oWSxNYXRoLmZsb29yKGwpKSxkPW8qcztpZihkPnUpdGhyb3cgbmV3IGdlKGBpbWFnZS1waXhlbHNgLHUsZCk7cmV0dXJue3dpZHRoOm8saGVpZ2h0OnMscGl4ZWxzOmR9fWZ1bmN0aW9uIHNDKGUsdCl7cmV0dXJuIE1hdGgucm91bmQoKDI1NS1lKSooMjU1LXQpLzI1NSl9ZnVuY3Rpb24gY0MoZSx0KXtyZXR1cm4gdD09PTA/MDpNYXRoLm1pbigyNTUsTWF0aC5yb3VuZChlKjI1NS90KSl9ZnVuY3Rpb24gbEMoZSx0KXtsZXQgbj1lLmxheW91dCxyPWUuZGlyZWN0b3J5LnJlYWRlci5ieXRlcztmb3IobGV0IGk9MDtpPGUuaGVpZ2h0O2krKyl7bGV0IGE9TWF0aC5mbG9vcihpL2Uucm93c1BlclN0cmlwKSxvPWktYSplLnJvd3NQZXJTdHJpcCxzPWUuc3RyaXBPZmZzZXRzLmF0KGEpK28qbi5ieXRlc1BlclJvdztmb3IobGV0IGE9MDthPGUud2lkdGg7YSsrKXtsZXQgbz0oaSplLndpZHRoK2EpKjQ7aWYobi5raW5kPT09YGdyYXktMWApe2xldCBlPXJbcysoYT4+MyldPj43LShhJjcpJjEsaT1uLnBob3RvbWV0cmljPT09MD9lPT09MD8yNTU6MDplPT09MD8wOjI1NTt0W29dPWksdFtvKzFdPWksdFtvKzJdPWksdFtvKzNdPTI1NTtjb250aW51ZX1pZihuLmtpbmQ9PT1gZ3JheS04YCl7bGV0IGU9cltzK2FdLGk9bi5waG90b21ldHJpYz09PTA/MjU1LWU6ZTt0W29dPWksdFtvKzFdPWksdFtvKzJdPWksdFtvKzNdPTI1NTtjb250aW51ZX1pZihuLmtpbmQ9PT1gcmdiYCl7bGV0IGU9cythKjM7dFtvXT1yW2VdLHRbbysxXT1yW2UrMV0sdFtvKzJdPXJbZSsyXSx0W28rM109MjU1O2NvbnRpbnVlfWlmKG4ua2luZD09PWByZ2JhLWFzc29jaWF0ZWRgfHxuLmtpbmQ9PT1gcmdiYS11bmFzc29jaWF0ZWRgKXtsZXQgZT1zK2EqNCxpPXJbZSszXTt0W29dPW4ua2luZD09PWByZ2JhLWFzc29jaWF0ZWRgP2NDKHJbZV0saSk6cltlXSx0W28rMV09bi5raW5kPT09YHJnYmEtYXNzb2NpYXRlZGA/Y0MocltlKzFdLGkpOnJbZSsxXSx0W28rMl09bi5raW5kPT09YHJnYmEtYXNzb2NpYXRlZGA/Y0MocltlKzJdLGkpOnJbZSsyXSx0W28rM109aTtjb250aW51ZX1sZXQgYz1zK2EqNCxsPXJbYyszXTt0W29dPXNDKHJbY10sbCksdFtvKzFdPXNDKHJbYysxXSxsKSx0W28rMl09c0MocltjKzJdLGwpLHRbbyszXT0yNTV9fX1mdW5jdGlvbiB1QyhlKXtyZXR1cm4gTWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsTWF0aC5yb3VuZChlKSkpfWZ1bmN0aW9uIGRDKGUsdCxuLHIsaSl7bGV0IGE9ZS5sYXlvdXQsbz1lLmRpcmVjdG9yeS5yZWFkZXIuYnl0ZXM7Zm9yKGxldCBzPTA7czx0LndpZHRoO3MrKyl7bGV0IGM9cyplLndpZHRoLGw9KHMrMSkqZS53aWR0aCx1PU1hdGguZmxvb3IoYy90LndpZHRoKSxkPU1hdGguZmxvb3IoKGwtMSkvdC53aWR0aCksZj0wLHA9MCxtPTAsaD0wO2ZvcihsZXQgZT11O2U8PWQ7ZSsrKXtsZXQgaT1lKnQud2lkdGgscz0oZSsxKSp0LndpZHRoLHU9KE1hdGgubWluKGwscyktTWF0aC5tYXgoYyxpKSkqcixkLGcsXyx2PTI1NTtpZihhLmtpbmQ9PT1gZ3JheS0xYCl7bGV0IHQ9b1tuKyhlPj4zKV0+PjctKGUmNykmMTtkPWEucGhvdG9tZXRyaWM9PT0wP3Q9PT0wPzI1NTowOnQ9PT0wPzA6MjU1LGc9ZCxfPWR9ZWxzZSBpZihhLmtpbmQ9PT1gZ3JheS04YCl7bGV0IHQ9b1tuK2VdO2Q9YS5waG90b21ldHJpYz09PTA/MjU1LXQ6dCxnPWQsXz1kfWVsc2UgaWYoYS5raW5kPT09YHJnYmApe2xldCB0PW4rZSozO2Q9b1t0XSxnPW9bdCsxXSxfPW9bdCsyXX1lbHNlIGlmKGEua2luZD09PWByZ2JhLWFzc29jaWF0ZWRgKXtsZXQgdD1uK2UqNDt2PW9bdCszXSxkPXY9PT0wPzA6b1t0XSoyNTUsZz12PT09MD8wOm9bdCsxXSoyNTUsXz12PT09MD8wOm9bdCsyXSoyNTV9ZWxzZSBpZihhLmtpbmQ9PT1gcmdiYS11bmFzc29jaWF0ZWRgKXtsZXQgdD1uK2UqNDt2PW9bdCszXSxkPW9bdF0qdixnPW9bdCsxXSp2LF89b1t0KzJdKnZ9ZWxzZXtsZXQgdD1uK2UqNCxyPW9bdCszXTtkPXNDKG9bdF0sciksZz1zQyhvW3QrMV0sciksXz1zQyhvW3QrMl0scil9YS5raW5kIT09YHJnYmEtYXNzb2NpYXRlZGAmJmEua2luZCE9PWByZ2JhLXVuYXNzb2NpYXRlZGAmJihkKj0yNTUsZyo9MjU1LF8qPTI1NSksZis9ZCp1LHArPWcqdSxtKz1fKnUsaCs9dip1fWxldCBnPXMqNDtpW2ddKz1mLGlbZysxXSs9cCxpW2crMl0rPW0saVtnKzNdKz1ofX1mdW5jdGlvbiBmQyhlLHQsbixyLGkpe2ZvcihsZXQgYT0wO2E8bjthKyspe2xldCBvPWEqNCxzPShyKm4rYSkqNCxjPWVbbyszXTt0W3NdPWM9PT0wPzA6dUMoZVtvXS9jKSx0W3MrMV09Yz09PTA/MDp1QyhlW28rMV0vYyksdFtzKzJdPWM9PT0wPzA6dUMoZVtvKzJdL2MpLHRbcyszXT11QyhjL2kpfX1mdW5jdGlvbiBwQyhlLHQsbil7bGV0IHI9ZS5sYXlvdXQsaT1uZXcgRmxvYXQ2NEFycmF5KHQud2lkdGgqNCksYT1lLndpZHRoKmUuaGVpZ2h0LG89LTE7Zm9yKGxldCBzPTA7czxlLmhlaWdodDtzKyspe2xldCBjPU1hdGguZmxvb3Iocy9lLnJvd3NQZXJTdHJpcCksbD1zLWMqZS5yb3dzUGVyU3RyaXAsdT1lLnN0cmlwT2Zmc2V0cy5hdChjKStsKnIuYnl0ZXNQZXJSb3csZD1zKnQuaGVpZ2h0LGY9KHMrMSkqdC5oZWlnaHQscD1NYXRoLmZsb29yKGQvZS5oZWlnaHQpLG09TWF0aC5mbG9vcigoZi0xKS9lLmhlaWdodCk7Zm9yKGxldCByPXA7cjw9bTtyKyspe3IhPT1vJiYobz49MCYmKGZDKGksbix0LndpZHRoLG8sYSksaS5maWxsKDApKSxyIT09bysxJiZxUyhgSW50ZXJuYWwgVElGRiBhcmVhLXJvdyBzZXF1ZW5jZSBmYWlsdXJlYCksbz1yKTtsZXQgcz1yKmUuaGVpZ2h0LGM9KHIrMSkqZS5oZWlnaHQ7ZEMoZSx0LHUsTWF0aC5taW4oZixjKS1NYXRoLm1heChkLHMpLGkpfX1vIT09dC5oZWlnaHQtMSYmcVMoYEludGVybmFsIFRJRkYgYXJlYS1yb3cgY292ZXJhZ2UgZmFpbHVyZWApLGZDKGksbix0LndpZHRoLG8sYSl9ZnVuY3Rpb24gbUMoZSx0LG4pe3Qud2lkdGg9PT1lLndpZHRoJiZ0LmhlaWdodD09PWUuaGVpZ2h0P2xDKGUsbik6cEMoZSx0LG4pfWZ1bmN0aW9uIGhDKGUpe2xldCB0PW5ldyBNYXA7Zm9yKGxldFtuLHJdb2YgZSl0LnNldCgxPDxuLmxlbmd0aHxOdW1iZXIucGFyc2VJbnQobiwyKSxyKTtyZXR1cm4gdH1mdW5jdGlvbiBnQyhlKXtsZXQgdD0wO2ZvcihsZXQgbj0xO248PTc7bisrKXt0PXQ8PDF8ZS5yZWFkQml0KCk7bGV0IHI9VkMuZ2V0KDE8PG58dCk7aWYociE9PXZvaWQgMClyZXR1cm4gcn1xUyhgSW52YWxpZCBvciB1bnN1cHBvcnRlZCBDQ0lUVCBHcm91cCA0IHR3by1kaW1lbnNpb25hbCBtb2RlYCl9ZnVuY3Rpb24gX0MoZSx0LG4pe2xldCByPXQ/QkM6ekMsaT0wLGE9TWF0aC5jZWlsKG4vNjQpKzY0O2ZvcihsZXQgdD0wO3Q8YTt0Kyspe2xldCB0PTAsYTtmb3IobGV0IG49MTtuPD0xMyYmKHQ9dDw8MXxlLnJlYWRCaXQoKSxhPXIuZ2V0KDE8PG58dCksYT09PXZvaWQgMCk7bisrKTtpZihhPT09dm9pZCAwJiZxUyhgSW52YWxpZCBDQ0lUVCBHcm91cCA0IHJ1bi1sZW5ndGggY29kZWApLGkrPWEsaT5uJiZxUyhgQ0NJVFQgR3JvdXAgNCBydW4gZXhjZWVkcyB0aGUgc2NhbmxpbmUgd2lkdGhgKSxhPDY0KXJldHVybiBpfXFTKGBDQ0lUVCBHcm91cCA0IHJ1bi1sZW5ndGggY29kZSBsaW1pdCBleGNlZWRlZGApfWZ1bmN0aW9uIHZDKGUsdCl7bGV0IG49ZVtlLmxlbmd0aC0xXTtuIT09dm9pZCAwJiZuPnQmJnFTKGBJbnRlcm5hbCBUSUZGIEdyb3VwIDQgY2hhbmdpbmctZWxlbWVudCBvcmRlciBmYWlsdXJlYCksbj09PXQ/ZS5wb3AoKTooZS5sZW5ndGg+PUhDJiZxUyhgQ0NJVFQgR3JvdXAgNCBjaGFuZ2luZy1lbGVtZW50IGxpbWl0IGV4Y2VlZGVkYCksZS5wdXNoKHQpKX1mdW5jdGlvbiB5QyhlLHQsbixyLGksYSxvKXtsZXQgcz1pP246bisxO2Zvcig7YS5pbmRleDxlLmxlbmd0aCYmKG8mJm8ucmVmZXJlbmNlUHJvYmVDb3VudCsrLCEoZVthLmluZGV4XT49cykpOylhLmluZGV4Kys7bGV0IGM9YS5pbmRleDtyZXR1cm4gYzxlLmxlbmd0aCYmKGMrMSYxKSE9KHJeMSkmJmMrKyxbZVtjXT8/dCxlW2MrMV0/P3RdfWZ1bmN0aW9uIGJDKGUsdCxuLHIsaSl7bi5sZW5ndGg9MDtsZXQgYT0wLG89MCxzPSEwLGM9e2luZGV4OjB9LGw9cio0KzMyO2ZvcihsZXQgdT0wO2E8cjt1Kyspe3U+PWwmJnFTKGBDQ0lUVCBHcm91cCA0IHNjYW5saW5lIG9wZXJhdGlvbiBsaW1pdCBleGNlZWRlZGApLGkmJmkubW9kZUNvdW50Kys7bGV0IGQ9Z0MoZSk7aWYoZD09PWBob3Jpem9udGFsYCl7bGV0IHQ9X0MoZSxvPT09MSxyLWEpLGk9YSt0LGM9aStfQyhlLG89PT0wLHItaSk7Yzw9YSYmcVMoYEludmFsaWQgQ0NJVFQgR3JvdXAgNCBob3Jpem9udGFsIG1vZGUgd2l0aCBubyBwcm9ncmVzc2ApLHZDKG4saSksdkMobixjKSxhPWMscz0hMTtjb250aW51ZX1sZXRbZixwXT15Qyh0LHIsYSxvLHMsYyxpKTtpZihkPT09YHBhc3NgKXtwPD1hJiZxUyhgSW52YWxpZCBDQ0lUVCBHcm91cCA0IHBhc3MgbW9kZSB3aXRoIG5vIHByb2dyZXNzYCksYT1wLHM9ITE7Y29udGludWV9bGV0IG09ZitkOyhtPGF8fG0+cikmJnFTKGBJbnZhbGlkIENDSVRUIEdyb3VwIDQgdmVydGljYWwgbW9kZSBwb3NpdGlvbmApLHZDKG4sbSksYT1tLG9ePTEscz0hMX1uW24ubGVuZ3RoLTFdIT09ciYmKG4ubGVuZ3RoPj1IQyYmcVMoYENDSVRUIEdyb3VwIDQgY2hhbmdpbmctZWxlbWVudCBsaW1pdCBleGNlZWRlZGApLG4ucHVzaChyKSl9ZnVuY3Rpb24geEMoZSx0LG4scixpKXtsZXQgYT0wO2ZvcihsZXQgbz0wO288ZS5sZW5ndGg7bysrKXtsZXQgcz1lW29dLGM9byYxLGw9aT09PTA/Yz09PTA/MjU1OjA6Yz09PTA/MDoyNTU7Zm9yKGxldCBlPWE7ZTxzO2UrKyl7bGV0IGk9KHIqbitlKSo0O3RbaV09bCx0W2krMV09bCx0W2krMl09bCx0W2krM109MjU1fWE9c319ZnVuY3Rpb24gU0MoZSx0LG4scixpLGEsbyl7bGV0IHM9MCxjPW5bMF0qdC53aWR0aDtmb3IobGV0IGw9MDtsPHQud2lkdGg7bCsrKXtsZXQgdT1sKmUud2lkdGgsZD0obCsxKSplLndpZHRoLGY9dTtmb3IoO2Y8ZDspe2ZvcihvJiZvLmFyZWFTZWdtZW50Q291bnQrKztjPD1mJiZzKzE8bi5sZW5ndGg7KXMrKyxjPW5bc10qdC53aWR0aDtsZXQgZT1NYXRoLm1pbihkLGMpO2U8PWYmJnFTKGBJbnRlcm5hbCBUSUZGIEdyb3VwIDQgYXJlYS1ydW4gY292ZXJhZ2UgZmFpbHVyZWApO2xldCB1PXMmMSxwPXI9PT0wP3U9PT0wPzI1NTowOnU9PT0wPzA6MjU1LG09KGUtZikqaSxoPWwqNCxnPXAqMjU1Km07YVtoXSs9ZyxhW2grMV0rPWcsYVtoKzJdKz1nLGFbaCszXSs9MjU1Km0sZj1lfX19ZnVuY3Rpb24gQ0MoZSx0LG4scil7bGV0IGk9ZS5sYXlvdXQsYT1bZS53aWR0aF0sbz1bXSxzPXQud2lkdGghPT1lLndpZHRofHx0LmhlaWdodCE9PWUuaGVpZ2h0P25ldyBGbG9hdDY0QXJyYXkodC53aWR0aCo0KTpudWxsLGM9ZS53aWR0aCplLmhlaWdodCxsPS0xO2ZvcihsZXQgdT0wO3U8ZS5zdHJpcENvdW50O3UrKyl7YS5sZW5ndGg9MSxhWzBdPWUud2lkdGg7bGV0IGQ9dSplLnJvd3NQZXJTdHJpcCxmPU1hdGgubWluKGUucm93c1BlclN0cmlwLGUuaGVpZ2h0LWQpLHA9bmV3IEZDKGUuZGlyZWN0b3J5LnJlYWRlci5ieXRlcyxlLnN0cmlwT2Zmc2V0cy5hdCh1KSxlLnN0cmlwQnl0ZUNvdW50cy5hdCh1KSk7Zm9yKGxldCB1PTA7dTxmO3UrKyl7bGV0IGY9ZCt1O2lmKGJDKHAsYSxvLGUud2lkdGgsciksIXMpeEMobyxuLGUud2lkdGgsZixpLnBob3RvbWV0cmljKTtlbHNle2xldCBhPWYqdC5oZWlnaHQsdT0oZisxKSp0LmhlaWdodCxkPU1hdGguZmxvb3IoYS9lLmhlaWdodCkscD1NYXRoLmZsb29yKCh1LTEpL2UuaGVpZ2h0KTtmb3IobGV0IGY9ZDtmPD1wO2YrKyl7ZiE9PWwmJihsPj0wJiYoZkMocyxuLHQud2lkdGgsbCxjKSxzLmZpbGwoMCkpLGYhPT1sKzEmJnFTKGBJbnRlcm5hbCBUSUZGIEdyb3VwIDQgYXJlYS1yb3cgc2VxdWVuY2UgZmFpbHVyZWApLGw9Zik7bGV0IGQ9ZiplLmhlaWdodCxwPShmKzEpKmUuaGVpZ2h0LG09TWF0aC5taW4odSxwKS1NYXRoLm1heChhLGQpO1NDKGUsdCxvLGkucGhvdG9tZXRyaWMsbSxzLHIpfX1bYSxvXT1bbyxhXX19cyYmKGwhPT10LmhlaWdodC0xJiZxUyhgSW50ZXJuYWwgVElGRiBHcm91cCA0IGFyZWEtcm93IGNvdmVyYWdlIGZhaWx1cmVgKSxmQyhzLG4sdC53aWR0aCxsLGMpKX1mdW5jdGlvbiB3QyhlLHQsbil7bGV0IHI9aUMoZSk7aWYoIXIpcmV0dXJuIG51bGw7bGV0IGk9b0Moci53aWR0aCxyLmhlaWdodCx0KSxhPW5ldyBVaW50OENsYW1wZWRBcnJheShpLnBpeGVscyo0KTtyZXR1cm4gci5sYXlvdXQua2luZD09PWBncm91cDRgP0NDKHIsaSxhLG4pOm1DKHIsaSxhKSx7d2lkdGg6aS53aWR0aCxoZWlnaHQ6aS5oZWlnaHQsZGF0YTphfX1mdW5jdGlvbiBUQyhlLHQ9e30pe3JldHVybiB3QyhlLHQpfWZ1bmN0aW9uIEVDKGUsdD17fSl7bGV0IG49e21vZGVDb3VudDowLHJlZmVyZW5jZVByb2JlQ291bnQ6MCxhcmVhU2VnbWVudENvdW50OjB9LHI9d0MoZSx0LG4pO3JldHVybiBPYmplY3QuZnJlZXplKHtkZWNvZGVkOnIsLi4ubn0pfWFzeW5jIGZ1bmN0aW9uIERDKGUsdD17fSl7bGV0IG49VEMoZSx0KTtpZighbilyZXR1cm4gbnVsbDt0eXBlb2YgSW1hZ2VEYXRhIT1gZnVuY3Rpb25gJiZxUyhgVElGRiBJbWFnZURhdGEgY29uc3RydWN0aW9uIGlzIHVuYXZhaWxhYmxlYCk7bGV0IHI7dHJ5e3I9bmV3IEltYWdlRGF0YShuLmRhdGEsbi53aWR0aCxuLmhlaWdodCl9Y2F0Y2goZSl7cVMoYFRJRkYgSW1hZ2VEYXRhIGNvbnN0cnVjdGlvbiBmYWlsZWRgLGUpfXR5cGVvZiBjcmVhdGVJbWFnZUJpdG1hcCE9YGZ1bmN0aW9uYCYmcVMoYFRJRkYgSW1hZ2VCaXRtYXAgY3JlYXRpb24gaXMgdW5hdmFpbGFibGVgKTtsZXQgaTt0cnl7aT1hd2FpdCBjcmVhdGVJbWFnZUJpdG1hcChyKX1jYXRjaChlKXtxUyhgVElGRiBJbWFnZUJpdG1hcCBjcmVhdGlvbiBmYWlsZWRgLGUpfXJldHVybiBpfHxxUyhgVElGRiBJbWFnZUJpdG1hcCBjcmVhdGlvbiByZXR1cm5lZCBubyBiaXRtYXBgKSxpfXZhciBPQyxrQyxBQyxqQyxNQyxOQyxQQyxGQyxJQyxMQyxSQyx6QyxCQyxWQyxIQyxVQz10KCgoKT0+e19lKCksbmcoKSxPaCgpLE9DPWBwYWNrYWdlcy9jb3JlL3NyYy9pbWFnZS90aWZmLnRzYCxrQz0xLEFDPTMsakM9NCxNQz17d2lkdGg6MjU2LGhlaWdodDoyNTcsYml0c1BlclNhbXBsZToyNTgsY29tcHJlc3Npb246MjU5LHBob3RvbWV0cmljOjI2MixmaWxsT3JkZXI6MjY2LHN0cmlwT2Zmc2V0czoyNzMsb3JpZW50YXRpb246Mjc0LHNhbXBsZXNQZXJQaXhlbDoyNzcscm93c1BlclN0cmlwOjI3OCxzdHJpcEJ5dGVDb3VudHM6Mjc5LHBsYW5hckNvbmZpZ3VyYXRpb246Mjg0LHQ2T3B0aW9uczoyOTMscHJlZGljdG9yOjMxNyx0aWxlV2lkdGg6MzIyLHRpbGVMZW5ndGg6MzIzLHRpbGVPZmZzZXRzOjMyNCx0aWxlQnl0ZUNvdW50czozMjUsaW5rU2V0OjMzMixleHRyYVNhbXBsZXM6MzM4LHNhbXBsZUZvcm1hdDozMzl9LE5DPVtNQy50aWxlV2lkdGgsTUMudGlsZUxlbmd0aCxNQy50aWxlT2Zmc2V0cyxNQy50aWxlQnl0ZUNvdW50c10sUEM9Y2xhc3N7dmlldztjb25zdHJ1Y3RvcihlLHQpe3RoaXMuYnl0ZXM9ZSx0aGlzLmxpdHRsZUVuZGlhbj10LHRoaXMudmlldz1uZXcgRGF0YVZpZXcoZS5idWZmZXIsZS5ieXRlT2Zmc2V0LGUuYnl0ZUxlbmd0aCl9Y29udGFpbnMoZSx0KXtyZXR1cm4gTnVtYmVyLmlzU2FmZUludGVnZXIoZSkmJk51bWJlci5pc1NhZmVJbnRlZ2VyKHQpJiZlPj0wJiZ0Pj0wJiZlPD10aGlzLnZpZXcuYnl0ZUxlbmd0aC10fXU4KGUsdCl7cmV0dXJuIHRoaXMuY29udGFpbnMoZSwxKXx8cVMoYE1hbGZvcm1lZCBUSUZGICR7dH0gcmFuZ2VgKSx0aGlzLnZpZXcuZ2V0VWludDgoZSl9dTE2KGUsdCl7cmV0dXJuIHRoaXMuY29udGFpbnMoZSwyKXx8cVMoYE1hbGZvcm1lZCBUSUZGICR7dH0gcmFuZ2VgKSx0aGlzLnZpZXcuZ2V0VWludDE2KGUsdGhpcy5saXR0bGVFbmRpYW4pfXUzMihlLHQpe3JldHVybiB0aGlzLmNvbnRhaW5zKGUsNCl8fHFTKGBNYWxmb3JtZWQgVElGRiAke3R9IHJhbmdlYCksdGhpcy52aWV3LmdldFVpbnQzMihlLHRoaXMubGl0dGxlRW5kaWFuKX19LEZDPWNsYXNze2JpdE9mZnNldD0wO2NvbnN0cnVjdG9yKGUsdCxuKXt0aGlzLmJ5dGVzPWUsdGhpcy5ieXRlT2Zmc2V0PXQsdGhpcy5ieXRlTGVuZ3RoPW59cmVhZEJpdCgpe3RoaXMuYml0T2Zmc2V0Pj10aGlzLmJ5dGVMZW5ndGgqOCYmcVMoYENDSVRUIEdyb3VwIDQgZGF0YSBpcyB0cnVuY2F0ZWRgKTtsZXQgZT10aGlzLmJ5dGVzW3RoaXMuYnl0ZU9mZnNldCsodGhpcy5iaXRPZmZzZXQ+PjMpXT4+Ny0odGhpcy5iaXRPZmZzZXQmNykmMTtyZXR1cm4gdGhpcy5iaXRPZmZzZXQrKyxlfX0sSUM9W1tgMDAwMDAwMDEwMDBgLDE3OTJdLFtgMDAwMDAwMDExMDBgLDE4NTZdLFtgMDAwMDAwMDExMDFgLDE5MjBdLFtgMDAwMDAwMDEwMDEwYCwxOTg0XSxbYDAwMDAwMDAxMDAxMWAsMjA0OF0sW2AwMDAwMDAwMTAxMDBgLDIxMTJdLFtgMDAwMDAwMDEwMTAxYCwyMTc2XSxbYDAwMDAwMDAxMDExMGAsMjI0MF0sW2AwMDAwMDAwMTAxMTFgLDIzMDRdLFtgMDAwMDAwMDExMTAwYCwyMzY4XSxbYDAwMDAwMDAxMTEwMWAsMjQzMl0sW2AwMDAwMDAwMTExMTBgLDI0OTZdLFtgMDAwMDAwMDExMTExYCwyNTYwXV0sTEM9W1tgMDAxMTAxMDFgLDBdLFtgMDAwMTExYCwxXSxbYDAxMTFgLDJdLFtgMTAwMGAsM10sW2AxMDExYCw0XSxbYDExMDBgLDVdLFtgMTExMGAsNl0sW2AxMTExYCw3XSxbYDEwMDExYCw4XSxbYDEwMTAwYCw5XSxbYDAwMTExYCwxMF0sW2AwMTAwMGAsMTFdLFtgMDAxMDAwYCwxMl0sW2AwMDAwMTFgLDEzXSxbYDExMDEwMGAsMTRdLFtgMTEwMTAxYCwxNV0sW2AxMDEwMTBgLDE2XSxbYDEwMTAxMWAsMTddLFtgMDEwMDExMWAsMThdLFtgMDAwMTEwMGAsMTldLFtgMDAwMTAwMGAsMjBdLFtgMDAxMDExMWAsMjFdLFtgMDAwMDAxMWAsMjJdLFtgMDAwMDEwMGAsMjNdLFtgMDEwMTAwMGAsMjRdLFtgMDEwMTAxMWAsMjVdLFtgMDAxMDAxMWAsMjZdLFtgMDEwMDEwMGAsMjddLFtgMDAxMTAwMGAsMjhdLFtgMDAwMDAwMTBgLDI5XSxbYDAwMDAwMDExYCwzMF0sW2AwMDAxMTAxMGAsMzFdLFtgMDAwMTEwMTFgLDMyXSxbYDAwMDEwMDEwYCwzM10sW2AwMDAxMDAxMWAsMzRdLFtgMDAwMTAxMDBgLDM1XSxbYDAwMDEwMTAxYCwzNl0sW2AwMDAxMDExMGAsMzddLFtgMDAwMTAxMTFgLDM4XSxbYDAwMTAxMDAwYCwzOV0sW2AwMDEwMTAwMWAsNDBdLFtgMDAxMDEwMTBgLDQxXSxbYDAwMTAxMDExYCw0Ml0sW2AwMDEwMTEwMGAsNDNdLFtgMDAxMDExMDFgLDQ0XSxbYDAwMDAwMTAwYCw0NV0sW2AwMDAwMDEwMWAsNDZdLFtgMDAwMDEwMTBgLDQ3XSxbYDAwMDAxMDExYCw0OF0sW2AwMTAxMDAxMGAsNDldLFtgMDEwMTAwMTFgLDUwXSxbYDAxMDEwMTAwYCw1MV0sW2AwMTAxMDEwMWAsNTJdLFtgMDAxMDAxMDBgLDUzXSxbYDAwMTAwMTAxYCw1NF0sW2AwMTAxMTAwMGAsNTVdLFtgMDEwMTEwMDFgLDU2XSxbYDAxMDExMDEwYCw1N10sW2AwMTAxMTAxMWAsNThdLFtgMDEwMDEwMTBgLDU5XSxbYDAxMDAxMDExYCw2MF0sW2AwMDExMDAxMGAsNjFdLFtgMDAxMTAwMTFgLDYyXSxbYDAwMTEwMTAwYCw2M10sW2AxMTAxMWAsNjRdLFtgMTAwMTBgLDEyOF0sW2AwMTAxMTFgLDE5Ml0sW2AwMTEwMTExYCwyNTZdLFtgMDAxMTAxMTBgLDMyMF0sW2AwMDExMDExMWAsMzg0XSxbYDAxMTAwMTAwYCw0NDhdLFtgMDExMDAxMDFgLDUxMl0sW2AwMTEwMTAwMGAsNTc2XSxbYDAxMTAwMTExYCw2NDBdLFtgMDExMDAxMTAwYCw3MDRdLFtgMDExMDAxMTAxYCw3NjhdLFtgMDExMDEwMDEwYCw4MzJdLFtgMDExMDEwMDExYCw4OTZdLFtgMDExMDEwMTAwYCw5NjBdLFtgMDExMDEwMTAxYCwxMDI0XSxbYDAxMTAxMDExMGAsMTA4OF0sW2AwMTEwMTAxMTFgLDExNTJdLFtgMDExMDExMDAwYCwxMjE2XSxbYDAxMTAxMTAwMWAsMTI4MF0sW2AwMTEwMTEwMTBgLDEzNDRdLFtgMDExMDExMDExYCwxNDA4XSxbYDAxMDAxMTAwMGAsMTQ3Ml0sW2AwMTAwMTEwMDFgLDE1MzZdLFtgMDEwMDExMDEwYCwxNjAwXSxbYDAxMTAwMGAsMTY2NF0sW2AwMTAwMTEwMTFgLDE3MjhdLC4uLklDXSxSQz1bW2AwMDAwMTEwMTExYCwwXSxbYDAxMGAsMV0sW2AxMWAsMl0sW2AxMGAsM10sW2AwMTFgLDRdLFtgMDAxMWAsNV0sW2AwMDEwYCw2XSxbYDAwMDExYCw3XSxbYDAwMDEwMWAsOF0sW2AwMDAxMDBgLDldLFtgMDAwMDEwMGAsMTBdLFtgMDAwMDEwMWAsMTFdLFtgMDAwMDExMWAsMTJdLFtgMDAwMDAxMDBgLDEzXSxbYDAwMDAwMTExYCwxNF0sW2AwMDAwMTEwMDBgLDE1XSxbYDAwMDAwMTAxMTFgLDE2XSxbYDAwMDAwMTEwMDBgLDE3XSxbYDAwMDAwMDEwMDBgLDE4XSxbYDAwMDAxMTAwMTExYCwxOV0sW2AwMDAwMTEwMTAwMGAsMjBdLFtgMDAwMDExMDExMDBgLDIxXSxbYDAwMDAwMTEwMTExYCwyMl0sW2AwMDAwMDEwMTAwMGAsMjNdLFtgMDAwMDAwMTAxMTFgLDI0XSxbYDAwMDAwMDExMDAwYCwyNV0sW2AwMDAwMTEwMDEwMTBgLDI2XSxbYDAwMDAxMTAwMTAxMWAsMjddLFtgMDAwMDExMDAxMTAwYCwyOF0sW2AwMDAwMTEwMDExMDFgLDI5XSxbYDAwMDAwMTEwMTAwMGAsMzBdLFtgMDAwMDAxMTAxMDAxYCwzMV0sW2AwMDAwMDExMDEwMTBgLDMyXSxbYDAwMDAwMTEwMTAxMWAsMzNdLFtgMDAwMDExMDEwMDEwYCwzNF0sW2AwMDAwMTEwMTAwMTFgLDM1XSxbYDAwMDAxMTAxMDEwMGAsMzZdLFtgMDAwMDExMDEwMTAxYCwzN10sW2AwMDAwMTEwMTAxMTBgLDM4XSxbYDAwMDAxMTAxMDExMWAsMzldLFtgMDAwMDAxMTAxMTAwYCw0MF0sW2AwMDAwMDExMDExMDFgLDQxXSxbYDAwMDAxMTAxMTAxMGAsNDJdLFtgMDAwMDExMDExMDExYCw0M10sW2AwMDAwMDEwMTAxMDBgLDQ0XSxbYDAwMDAwMTAxMDEwMWAsNDVdLFtgMDAwMDAxMDEwMTEwYCw0Nl0sW2AwMDAwMDEwMTAxMTFgLDQ3XSxbYDAwMDAwMTEwMDEwMGAsNDhdLFtgMDAwMDAxMTAwMTAxYCw0OV0sW2AwMDAwMDEwMTAwMTBgLDUwXSxbYDAwMDAwMTAxMDAxMWAsNTFdLFtgMDAwMDAwMTAwMTAwYCw1Ml0sW2AwMDAwMDAxMTAxMTFgLDUzXSxbYDAwMDAwMDExMTAwMGAsNTRdLFtgMDAwMDAwMTAwMTExYCw1NV0sW2AwMDAwMDAxMDEwMDBgLDU2XSxbYDAwMDAwMTAxMTAwMGAsNTddLFtgMDAwMDAxMDExMDAxYCw1OF0sW2AwMDAwMDAxMDEwMTFgLDU5XSxbYDAwMDAwMDEwMTEwMGAsNjBdLFtgMDAwMDAxMDExMDEwYCw2MV0sW2AwMDAwMDExMDAxMTBgLDYyXSxbYDAwMDAwMTEwMDExMWAsNjNdLFtgMDAwMDAwMTExMWAsNjRdLFtgMDAwMDExMDAxMDAwYCwxMjhdLFtgMDAwMDExMDAxMDAxYCwxOTJdLFtgMDAwMDAxMDExMDExYCwyNTZdLFtgMDAwMDAwMTEwMDExYCwzMjBdLFtgMDAwMDAwMTEwMTAwYCwzODRdLFtgMDAwMDAwMTEwMTAxYCw0NDhdLFtgMDAwMDAwMTEwMTEwMGAsNTEyXSxbYDAwMDAwMDExMDExMDFgLDU3Nl0sW2AwMDAwMDAxMDAxMDEwYCw2NDBdLFtgMDAwMDAwMTAwMTAxMWAsNzA0XSxbYDAwMDAwMDEwMDExMDBgLDc2OF0sW2AwMDAwMDAxMDAxMTAxYCw4MzJdLFtgMDAwMDAwMTExMDAxMGAsODk2XSxbYDAwMDAwMDExMTAwMTFgLDk2MF0sW2AwMDAwMDAxMTEwMTAwYCwxMDI0XSxbYDAwMDAwMDExMTAxMDFgLDEwODhdLFtgMDAwMDAwMTExMDExMGAsMTE1Ml0sW2AwMDAwMDAxMTEwMTExYCwxMjE2XSxbYDAwMDAwMDEwMTAwMTBgLDEyODBdLFtgMDAwMDAwMTAxMDAxMWAsMTM0NF0sW2AwMDAwMDAxMDEwMTAwYCwxNDA4XSxbYDAwMDAwMDEwMTAxMDFgLDE0NzJdLFtgMDAwMDAwMTAxMTAxMGAsMTUzNl0sW2AwMDAwMDAxMDExMDExYCwxNjAwXSxbYDAwMDAwMDExMDAxMDBgLDE2NjRdLFtgMDAwMDAwMTEwMDEwMWAsMTcyOF0sLi4uSUNdLHpDPWhDKExDKSxCQz1oQyhSQyksVkM9bmV3IE1hcChbWzMsMF0sWzksYGhvcml6b250YWxgXSxbMTAsLTFdLFsxMSwxXSxbMTcsYHBhc3NgXSxbNjYsLTJdLFs2NywyXSxbMTMwLC0zXSxbMTMxLDNdXSksSEM9SisxfSkpO2FzeW5jIGZ1bmN0aW9uIFdDKGUpe3JldHVybiBXXyhlKSxHQyhlKX1hc3luYyBmdW5jdGlvbiBHQyhlKXtzd2l0Y2goZS5idWlsdGluKXtjYXNlYG1hdGhgOntsZXQgdD1hd2FpdCBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT4oenkoKSxNeSkpO3JldHVybiBPYmplY3QuZnJlZXplKHtsb2FkTWF0aEpheDooKT0+dC5sb2FkTWF0aEpheEZyb21SZXNvbHZlZEFzc2V0KGUuZW5naW5lQXNzZXRVcmwpLG1hdGhNTFRvU3ZnOm49PnQubWF0aE1MVG9TdmdGcm9tUmVzb2x2ZWRBc3NldChuLGUuZW5naW5lQXNzZXRVcmwpfSl9Y2FzZWB0aHJlZURgOntsZXQgZT1hd2FpdCBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT4oTngoKSx3YikpO3JldHVybiBPYmplY3QuZnJlZXplKHtyZW5kZXI6ZS5yZW5kZXJTaW1wbGVUaHJlZURDaGFydH0pfWNhc2VgcmVnaW9uTWFwYDp7bGV0IGU9YXdhaXQgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+KGRTKCksSXgpKTtyZXR1cm4gT2JqZWN0LmZyZWV6ZSh7cmVuZGVyOmUucmVuZGVyUmVnaW9uTWFwQ2hhcnR9KX1jYXNlYGNoYXJ0RXhgOntsZXQgZT1hd2FpdCBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT4oR1MoKSxUUykpO3JldHVybiBPYmplY3QuZnJlZXplKHtyZW5kZXI6ZS5yZW5kZXJDaGFydEV4Q2hhcnR9KX1jYXNlYHRpZmZgOntsZXQgZT1hd2FpdCBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT4oVUMoKSxLUykpO3JldHVybiBPYmplY3QuZnJlZXplKHtyZW5kZXI6ZS5yZW5kZXJUaWZmVG9CaXRtYXB9KX19fWZ1bmN0aW9uIEtDKGUsdCxuKXtpZih0eXBlb2YgdCE9YG9iamVjdGB8fCF0KXRocm93IFR5cGVFcnJvcihgV29ya2VyICR7ZX0gcmVuZGVyZXIgZXhwb3J0IG11c3QgYmUgYW4gb2JqZWN0YCk7bGV0IHI9dDtmb3IobGV0IHQgb2YgbilpZih0eXBlb2Ygclt0XSE9YGZ1bmN0aW9uYCl0aHJvdyBUeXBlRXJyb3IoYFdvcmtlciAke2V9IHJlbmRlcmVyIG11c3QgaW1wbGVtZW50ICR7dH0oKWApO3JldHVybiB0fWFzeW5jIGZ1bmN0aW9uIHFDKGUpe2xldFt0LG4scixpLGFdPWF3YWl0IFByb21pc2UuYWxsKFtlPy5tYXRoP1dDKGUubWF0aCk6dm9pZCAwLGU/LnRocmVlRD9XQyhlLnRocmVlRCk6dm9pZCAwLGU/LnJlZ2lvbk1hcD9XQyhlLnJlZ2lvbk1hcCk6dm9pZCAwLGU/LmNoYXJ0RXg/V0MoZS5jaGFydEV4KTp2b2lkIDAsZT8udGlmZj9XQyhlLnRpZmYpOnZvaWQgMF0pO3JldHVybiBPYmplY3QuZnJlZXplKHsuLi50P3ttYXRoOktDKGBtYXRoYCx0LFtgbG9hZE1hdGhKYXhgLGBtYXRoTUxUb1N2Z2BdKX06e30sLi4ubj97dGhyZWVEOktDKGB0aHJlZURgLG4sW2ByZW5kZXJgXSl9Ont9LC4uLnI/e3JlZ2lvbk1hcDpLQyhgcmVnaW9uTWFwYCxyLFtgcmVuZGVyYF0pfTp7fSwuLi5pP3tjaGFydEV4OktDKGBjaGFydEV4YCxpLFtgcmVuZGVyYF0pfTp7fSwuLi5hP3t0aWZmOktDKGB0aWZmYCxhLFtgcmVuZGVyYF0pfTp7fX0pfXZhciBKQz10KCgoKT0+e0tfKCl9KSk7ZnVuY3Rpb24gWUMoZSl7cmV0dXJuW2UubWF4QXJjaGl2ZUVudHJ5Qnl0ZXM9PT1udWxsPzBuOkJpZ0ludChlLm1heEFyY2hpdmVFbnRyeUJ5dGVzKSxlLm1heFRvdGFsSW5mbGF0ZWRCeXRlcz09PW51bGw/MG46QmlnSW50KGUubWF4VG90YWxJbmZsYXRlZEJ5dGVzKSxlLm1heEFyY2hpdmVFbnRyaWVzPT09bnVsbD8wbjpCaWdJbnQoZS5tYXhBcmNoaXZlRW50cmllcyldfXZhciBYQz10KCgoKT0+e0EoKSxPYmplY3QuZnJlZXplKHttYXhBcmNoaXZlRW50cnlCeXRlczpfLG1heFRvdGFsSW5mbGF0ZWRCeXRlczp2LG1heEFyY2hpdmVFbnRyaWVzOnl9KX0pKTtmdW5jdGlvbiBaQyhlKXtpZighZXx8dHlwZW9mIGUhPWBvYmplY3RgKXJldHVybiExO2xldCB0PWUua2luZDtyZXR1cm4gdD09PWBvb3htbFN2Z0RlY29kZWRgfHx0PT09YG9veG1sU3ZnRGVjb2RlRmFpbGVkYH12YXIgUUMsJEM9dCgoKCk9PntTaCgpLFFDPWNsYXNze25leHRJZD0xO3BlbmRpbmc9bmV3IE1hcDtjb25zdHJ1Y3RvcihlKXt0aGlzLnBvc3Q9ZX1kZWNvZGU9YXN5bmMoZSx0PXt9KT0+e2xldCBuPXRoaXMubmV4dElkKysscj1hd2FpdCBlLmFycmF5QnVmZmVyKCk7cmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlKChlLGkpPT57dGhpcy5wZW5kaW5nLnNldChuLHtyZXNvbHZlOmUscmVqZWN0Oml9KTt0cnl7dGhpcy5wb3N0KHtraW5kOmBvb3htbERlY29kZVN2Z2AsZGVjb2RlSWQ6bixieXRlczpyLC4uLnR9LFtyXSl9Y2F0Y2goZSl7dGhpcy5wZW5kaW5nLmRlbGV0ZShuKSxpKGUgaW5zdGFuY2VvZiBFcnJvcj9lOkVycm9yKFN0cmluZyhlKSkpfX0pfTthY2NlcHQoZSl7aWYoIVpDKGUpKXJldHVybiExO2xldCB0PXRoaXMucGVuZGluZy5nZXQoZS5kZWNvZGVJZCk7cmV0dXJuIHQ/KHRoaXMucGVuZGluZy5kZWxldGUoZS5kZWNvZGVJZCksZS5raW5kPT09YG9veG1sU3ZnRGVjb2RlZGA/dC5yZXNvbHZlKGUuYml0bWFwKTp0LnJlamVjdChFcnJvcihlLm1lc3NhZ2UpKSwhMCk6KGUua2luZD09PWBvb3htbFN2Z0RlY29kZWRgJiZ4aChlLmJpdG1hcCksITApfWRpc3Bvc2UoZT1FcnJvcihgU1ZHIGRlY29kZSB3b3JrZXIgZGlzcG9zZWRgKSl7Zm9yKGxldCB0IG9mIHRoaXMucGVuZGluZy52YWx1ZXMoKSl0LnJlamVjdChlKTt0aGlzLnBlbmRpbmcuY2xlYXIoKX19fSkpO2Z1bmN0aW9uIGV3KGUsdCl7aWYoIU51bWJlci5pc1NhZmVJbnRlZ2VyKGUpfHxlPD0wKXRocm93IFJhbmdlRXJyb3IoYCR7dH0gbXVzdCBiZSBhIHBvc2l0aXZlIHNhZmUgaW50ZWdlcmApfWZ1bmN0aW9uIHR3KGUpe2lmKCEodHlwZW9mIGU9PWBzdHJpbmdgJiZlLmxlbmd0aD4wfHx0eXBlb2YgZT09YG51bWJlcmAmJk51bWJlci5pc1NhZmVJbnRlZ2VyKGUpJiZlPjApKXRocm93IFJhbmdlRXJyb3IoYHNlc3Npb24gaWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcgb3IgcG9zaXRpdmUgc2FmZSBpbnRlZ2VyYCl9dmFyIG53LHJ3LGl3LGF3PXQoKCgpPT57RHkoKSxyeSgpLG53PWBvb3htbC1wdWxsLXYxYCxydz1jbGFzc3tvd25lcjtxdWV1ZT1Qcm9taXNlLnJlc29sdmUoKTtsZWFzZXM9bmV3IE1hcDtyZXRhaW5lZEJ5dGVzPTA7cmV0YWluZWRDb3VudD0wO21heFJldGFpbmVkQnl0ZXM7bWF4UmV0YWluZWRDb3VudDtjbGVhbnVwcz1uZXcgU2V0O3BlbmRpbmdGYXRhbENsZWFudXBzPVtdO3BvaXNvblJ1bm5pbmc9ITE7ZmF0YWw7Y29uc3RydWN0b3IoZSl7dGhpcy5tYXhSZXRhaW5lZEJ5dGVzPWU/Lm1heFJldGFpbmVkQnl0ZXM/PzY0KjEwMjQqMTAyNCx0aGlzLm1heFJldGFpbmVkQ291bnQ9ZT8ubWF4UmV0YWluZWRDb3VudD8/MjU2LGV3KHRoaXMubWF4UmV0YWluZWRCeXRlcyxgbWF4IHJldGFpbmVkIGxlYXNlIGJ5dGVzYCksZXcodGhpcy5tYXhSZXRhaW5lZENvdW50LGBtYXggcmV0YWluZWQgbGVhc2UgY291bnRgKX1lbnF1ZXVlKGUpe2xldCB0PXRoaXMucXVldWUudGhlbihlLGUpO3JldHVybiB0aGlzLnF1ZXVlPXQudGhlbigoKT0+dm9pZCAwLCgpPT52b2lkIDApLHR9YWNxdWlyZShlKXtyZXR1cm4gdGhpcy5vd25lcj09PXZvaWQgMD8odGhpcy5vd25lcj1lLCEwKTp0aGlzLm93bmVyPT09ZX1yZWxlYXNlKGUpe3RoaXMub3duZXI9PT1lJiYodGhpcy5vd25lcj12b2lkIDApfXJldGFpbkxlYXNlKGUsdCxuKXtpZighTnVtYmVyLmlzU2FmZUludGVnZXIobil8fG48MCl0aHJvdyBSYW5nZUVycm9yKGByZXRhaW5lZCBsZWFzZSBieXRlcyBhcmUgaW52YWxpZGApO2xldCByPXRoaXMubGVhc2VzLmdldChlKT8/bmV3IE1hcDtpZihyLmhhcyh0KSl0aHJvdyBFcnJvcihgZHJpdmVyIHJldHVybmVkIGEgZHVwbGljYXRlIGxlYXNlIGlkYCk7aWYodGhpcy5yZXRhaW5lZENvdW50KzE+dGhpcy5tYXhSZXRhaW5lZENvdW50KXRocm93IFJhbmdlRXJyb3IoYHJldGFpbmVkIGxlYXNlIGNvdW50IGV4Y2VlZHMgbGltaXRgKTtpZih0aGlzLnJldGFpbmVkQnl0ZXMrbj50aGlzLm1heFJldGFpbmVkQnl0ZXMpdGhyb3cgUmFuZ2VFcnJvcihgcmV0YWluZWQgbGVhc2UgYnl0ZXMgZXhjZWVkIGxpbWl0YCk7ci5zZXQodCxuKSx0aGlzLmxlYXNlcy5zZXQoZSxyKSx0aGlzLnJldGFpbmVkQ291bnQrKyx0aGlzLnJldGFpbmVkQnl0ZXMrPW59cmVsZWFzZUxlYXNlKGUsdCl7bGV0IG49dGhpcy5sZWFzZXMuZ2V0KGUpLHI9bj8uZ2V0KHQpO3IhPT12b2lkIDAmJihuPy5kZWxldGUodCksbj8uc2l6ZT09PTAmJnRoaXMubGVhc2VzLmRlbGV0ZShlKSx0aGlzLnJldGFpbmVkQ291bnQtLSx0aGlzLnJldGFpbmVkQnl0ZXMtPXIpfXJlZ2lzdGVyQ2xlYW51cChlKXtyZXR1cm4gdGhpcy5mYXRhbD8odGhpcy5wb2lzb25SdW5uaW5nP3RoaXMucGVuZGluZ0ZhdGFsQ2xlYW51cHMucHVzaChlKTp0aGlzLmVucXVldWUoZSkuY2F0Y2goKCk9PnZvaWQgMCksKCk9PnZvaWQgMCk6KHRoaXMuY2xlYW51cHMuYWRkKGUpLCgpPT50aGlzLmNsZWFudXBzLmRlbGV0ZShlKSl9Z2V0IGZhdGFsRXJyb3IoKXtyZXR1cm4gdGhpcy5mYXRhbH1nZXQgcmVnaXN0ZXJlZEhvc3RDb3VudCgpe3JldHVybiB0aGlzLmNsZWFudXBzLnNpemV9YXN5bmMgcG9pc29uKGUpe2lmKHRoaXMuZmF0YWw/Pz1lLHRoaXMucG9pc29uUnVubmluZylyZXR1cm4gdGhpcy5mYXRhbDt0aGlzLnBvaXNvblJ1bm5pbmc9ITAsdGhpcy5wZW5kaW5nRmF0YWxDbGVhbnVwcy5wdXNoKC4uLnRoaXMuY2xlYW51cHMpO3RyeXtsZXQgZTtmb3IoOyhlPXRoaXMucGVuZGluZ0ZhdGFsQ2xlYW51cHMuc2hpZnQoKSkhPT12b2lkIDA7KWF3YWl0IGUoKS5jYXRjaCgoKT0+dm9pZCAwKX1maW5hbGx5e3RoaXMucG9pc29uUnVubmluZz0hMX1yZXR1cm4gdGhpcy5mYXRhbH19LGl3PWNsYXNze29wdGlvbnM7Y29vcmRpbmF0b3I7Y29vcmRpbmF0b3JPd25lcj1TeW1ib2woYHB1bGwtc2Vzc2lvbi1ob3N0YCk7dW5yZWdpc3RlckNsZWFudXA7c2VxdWVuY2U9MDt1bmFja2VkO2xlYXNlcz1uZXcgTWFwO2FjdGl2ZURyaXZlckxlYXNlcz1uZXcgU2V0O25leHRXaXJlTGVhc2VJZDtjYW5jZWxSZXF1ZXN0ZWQ9ITE7Y2FuY2VsQ29tcGxldGU9ITE7Y2xvc2VSZXF1ZXN0ZWQ9ITE7Y2xvc2VDb21wbGV0ZT0hMTtkcml2ZXJDYW5jZWxDb21wbGV0ZT0hMTtkcml2ZXJDbG9zZUNvbXBsZXRlPSExO2NvbXBsZXRlZD0hMTtjb25zdHJ1Y3RvcihlKXt0dyhlLnNlc3Npb25JZCksZXcoZS5vcGVyYXRpb25JZCxgb3BlcmF0aW9uIGlkYCksZXcoZS5nZW5lcmF0aW9uLGBnZW5lcmF0aW9uYCksZXcoZS5tYXhCeXRlQ3JlZGl0LGBtYXggYnl0ZSBjcmVkaXRgKSxlLndpcmVMZWFzZUlkU3RhcnQhPT12b2lkIDAmJmV3KGUud2lyZUxlYXNlSWRTdGFydCxgd2lyZSBsZWFzZSBpZCBzdGFydGApLHRoaXMub3B0aW9ucz1lLHRoaXMuY29vcmRpbmF0b3I9ZS5jb29yZGluYXRvcix0aGlzLm5leHRXaXJlTGVhc2VJZD1lLndpcmVMZWFzZUlkU3RhcnQ/PzEsdGhpcy51bnJlZ2lzdGVyQ2xlYW51cD10aGlzLmNvb3JkaW5hdG9yLnJlZ2lzdGVyQ2xlYW51cCgoKT0+dGhpcy5mb3JjZUZhdGFsQ2xlYW51cCgpKX1kaXNwYXRjaChlLHQpe3JldHVybiB0aGlzLmNvb3JkaW5hdG9yLmVucXVldWUoYXN5bmMoKT0+e2xldCBuPWF3YWl0IHRoaXMuZXhlY3V0ZShlKTt0cnl7dChuLnJlc3BvbnNlLG4udHJhbnNmZXIpfWNhdGNoKGUpe3Rocm93IGF3YWl0IHRoaXMucm9sbGJhY2tGYWlsZWRQb3N0KG4pLGV9fSl9YXN5bmMgcm9sbGJhY2tGYWlsZWRQb3N0KGUpe2xldCB0PWUucmVzcG9uc2U7aWYodC5raW5kPT09YGNodW5rYCl7bGV0IG49dC5sZWFzZUlkPT09dm9pZCAwP3ZvaWQgMDp0aGlzLmxlYXNlcy5nZXQodC5sZWFzZUlkKTt0cnl7YXdhaXQgdGhpcy5vcHRpb25zLmRyaXZlci5kaXNwb3NlSW52YWxpZENodW5rPy4oe3BheWxvYWQ6dC5wYXlsb2FkLGJ5dGVMZW5ndGg6dC5ieXRlTGVuZ3RoLGRvbmU6dC5kb25lLGxlYXNlSWQ6bj8uZHJpdmVyTGVhc2VJZCxyZXRhaW5lZEJ5dGVzOm4/LnJldGFpbmVkQnl0ZXMsdHJhbnNmZXI6ZS50cmFuc2Zlcn0pfWNhdGNoe319dGhpcy51bmFja2VkPXZvaWQgMCx0aGlzLmNvb3JkaW5hdG9yLnJlbGVhc2UodGhpcy5jb29yZGluYXRvck93bmVyKTtmb3IobGV0W2UsdF1vZlsuLi50aGlzLmxlYXNlc10pdHJ5e2F3YWl0IHRoaXMub3B0aW9ucy5kcml2ZXIucmVsZWFzZUxlYXNlPy4odC5kcml2ZXJMZWFzZUlkKX1jYXRjaHt9ZmluYWxseXt0aGlzLmxlYXNlcy5kZWxldGUoZSksdGhpcy5hY3RpdmVEcml2ZXJMZWFzZXMuZGVsZXRlKHQuZHJpdmVyTGVhc2VJZCksdGhpcy5jb29yZGluYXRvci5yZWxlYXNlTGVhc2UodGhpcy5jb29yZGluYXRvck93bmVyLGUpfWlmKHRoaXMuY2FuY2VsUmVxdWVzdGVkPSEwLCF0aGlzLmRyaXZlckNhbmNlbENvbXBsZXRlKXRyeXthd2FpdCB0aGlzLm9wdGlvbnMuZHJpdmVyLmNhbmNlbD8uKCksdGhpcy5kcml2ZXJDYW5jZWxDb21wbGV0ZT0hMH1jYXRjaHt9dGhpcy51bnJlZ2lzdGVyQ2xlYW51cCgpfWFzeW5jIGV4ZWN1dGUoZSl7dHJ5e2lmKHRoaXMuaXNTdGFsZUxpZmVjeWNsZShlKSl7bGV0IHQ9ZS5raW5kPT09YGNhbmNlbGA/YGNhbmNlbGA6YGNsb3NlYDtyZXR1cm4gdGhpcy5zYW1lT3BlcmF0aW9uSWRlbnRpdHkoZSk/e3Jlc3BvbnNlOnRoaXMuYWNjZXB0ZWQoZSx0LCEwKX06e3Jlc3BvbnNlOnRoaXMuZXJyb3JSZXNwb25zZShlLHttZXNzYWdlOmBzdGFsZSBsaWZlY3ljbGUgdGFyZ2V0cyBhbm90aGVyIHNlc3Npb24gb3Igb3BlcmF0aW9uYCxlcnJvck5hbWU6YFB1bGxTZXNzaW9uUHJvdG9jb2xFcnJvcmAsY29kZTpgb294bWwtc3RhbGUtbGlmZWN5Y2xlYH0pfX10aGlzLnZhbGlkYXRlQ29tbWFuZElkZW50aXR5KGUpO2xldCB0PXRoaXMuY29vcmRpbmF0b3IuZmF0YWxFcnJvcjtpZih0KXJldHVybiBlLmtpbmQ9PT1gcHVsbGA/e3Jlc3BvbnNlOnRoaXMuZXJyb3JSZXNwb25zZShlLHQpfTooZS5raW5kPT09YGNhbmNlbGA/YXdhaXQgdGhpcy5jYW5jZWwoKTplLmtpbmQ9PT1gY2xvc2VgP2F3YWl0IHRoaXMuY2xvc2UoKTplLmtpbmQ9PT1gcmVsZWFzZWAmJmF3YWl0IHRoaXMucmVsZWFzZShlLmxlYXNlSWQpLHtyZXNwb25zZTp0aGlzLmFjY2VwdGVkKGUsZS5raW5kKX0pO3N3aXRjaChlLmtpbmQpe2Nhc2VgcHVsbGA6cmV0dXJuIGF3YWl0IHRoaXMucHVsbChlKTtjYXNlYGFja2A6cmV0dXJuIGF3YWl0IHRoaXMuYWNrKGUuc2VxdWVuY2UpLHtyZXNwb25zZTp0aGlzLmFjY2VwdGVkKGUsYGFja2ApfTtjYXNlYHJlbGVhc2VgOnJldHVybiBhd2FpdCB0aGlzLnJlbGVhc2UoZS5sZWFzZUlkKSx7cmVzcG9uc2U6dGhpcy5hY2NlcHRlZChlLGByZWxlYXNlYCl9O2Nhc2VgY2FuY2VsYDpyZXR1cm4gYXdhaXQgdGhpcy5jYW5jZWwoKSx7cmVzcG9uc2U6dGhpcy5hY2NlcHRlZChlLGBjYW5jZWxgKX07Y2FzZWBjbG9zZWA6cmV0dXJuIGF3YWl0IHRoaXMuY2xvc2UoKSx7cmVzcG9uc2U6dGhpcy5hY2NlcHRlZChlLGBjbG9zZWApfX19Y2F0Y2godCl7bGV0IG49eXkodCk7cmV0dXJuIG4uY29kZT09PWBvb3htbC1yZXNvdXJjZS1saW1pdGAmJihuPWF3YWl0IHRoaXMuY29vcmRpbmF0b3IucG9pc29uKG4pKSx7cmVzcG9uc2U6dGhpcy5lcnJvclJlc3BvbnNlKGUsbil9fX1hc3luYyBwdWxsKGUpe2lmKHRoaXMuY2xvc2VSZXF1ZXN0ZWR8fHRoaXMuY2FuY2VsUmVxdWVzdGVkfHx0aGlzLmNvbXBsZXRlZCl0aHJvdyBFcnJvcihgcHVsbCBzZXNzaW9uIGlzIGNsb3NlZGApO2lmKHRoaXMudW5hY2tlZCl0aHJvdyBFcnJvcihgcHJldmlvdXMgY2h1bmsgaXMgbm90IGFja25vd2xlZGdlZGApO2lmKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihlLnNlcXVlbmNlKXx8ZS5zZXF1ZW5jZTwwfHxlLnNlcXVlbmNlIT09dGhpcy5zZXF1ZW5jZSl0aHJvdyBFcnJvcihgcHVsbCBjb21tYW5kIHNlcXVlbmNlIG1pc21hdGNoYCk7aWYodGhpcy52YWxpZGF0ZUhvc3RDcmVkaXQoZS5ieXRlQ3JlZGl0KSwhdGhpcy5jb29yZGluYXRvci5hY3F1aXJlKHRoaXMuY29vcmRpbmF0b3JPd25lcikpdGhyb3cgRXJyb3IoYGFub3RoZXIgb3BlcmF0aW9uIGhhcyBhbiB1bmFja25vd2xlZGdlZCBwYWNrYWdlIGNodW5rYCk7bGV0IHQ7dHJ5e3Q9YXdhaXQgdGhpcy5vcHRpb25zLmRyaXZlci5wdWxsKGUuYnl0ZUNyZWRpdCl9Y2F0Y2goZSl7dGhyb3cgdGhpcy5jb29yZGluYXRvci5yZWxlYXNlKHRoaXMuY29vcmRpbmF0b3JPd25lciksZX1sZXQgbj0hMSxyPSExLGksYTt0cnl7bGV0IG89dGhpcy5vcHRpb25zLmRyaXZlci5tZWFzdXJlQ2h1bmsodCkscz10aGlzLmFycmF5QnVmZmVyVHJhbnNmZXJCeXRlcyh0LnRyYW5zZmVyKTtpZihvPHMpdGhyb3cgUmFuZ2VFcnJvcihgbWVhc3VyZWQgY2h1bmsgYnl0ZXMgYXJlIGJlbG93IEFycmF5QnVmZmVyIHRyYW5zZmVyIGJ5dGVzYCk7aWYoYT1NYXRoLm1heChvLHMpLHQubGVhc2VJZCE9PXZvaWQgMCl7aWYoZXcodC5sZWFzZUlkLGBsZWFzZSBpZGApLHQucmV0YWluZWRCeXRlcz09PXZvaWQgMCl0aHJvdyBFcnJvcihgcmV0YWluZWQgbGVhc2UgYnl0ZXMgYXJlIHJlcXVpcmVkYCk7aWYodGhpcy5hY3RpdmVEcml2ZXJMZWFzZXMuaGFzKHQubGVhc2VJZCkpdGhyb3cgcj0hMCxFcnJvcihgZHJpdmVyIHJldHVybmVkIGFuIGFjdGl2ZSBkdXBsaWNhdGUgbGVhc2UgaWRgKTtpPXRoaXMuYWxsb2NhdGVXaXJlTGVhc2VJZCgpLHRoaXMuY29vcmRpbmF0b3IucmV0YWluTGVhc2UodGhpcy5jb29yZGluYXRvck93bmVyLGksdC5yZXRhaW5lZEJ5dGVzKSx0aGlzLmxlYXNlcy5zZXQoaSx7ZHJpdmVyTGVhc2VJZDp0LmxlYXNlSWQscmV0YWluZWRCeXRlczp0LnJldGFpbmVkQnl0ZXN9KSx0aGlzLmFjdGl2ZURyaXZlckxlYXNlcy5hZGQodC5sZWFzZUlkKSxuPSEwfWVsc2UgaWYodC5yZXRhaW5lZEJ5dGVzIT09dm9pZCAwKXRocm93IEVycm9yKGByZXRhaW5lZCBsZWFzZSBieXRlcyByZXF1aXJlIGEgbGVhc2UgaWRgKTtpZighTnVtYmVyLmlzU2FmZUludGVnZXIoYSl8fGE8MCl0aHJvdyBSYW5nZUVycm9yKGBob3N0IGNodW5rIGJ5dGUgbGVuZ3RoIG11c3QgYmUgYSBub24tbmVnYXRpdmUgc2FmZSBpbnRlZ2VyYCk7aWYoYT5lLmJ5dGVDcmVkaXQpdGhyb3cgUmFuZ2VFcnJvcihgaG9zdCBjaHVuayBleGNlZWRzIGJ5dGUgY3JlZGl0YCl9Y2F0Y2goZSl7bGV0IGE7dHJ5e2F3YWl0IHRoaXMub3B0aW9ucy5kcml2ZXIuZGlzcG9zZUludmFsaWRDaHVuaz8uKHQpfWNhdGNoKGUpe2E9ZX1pZihuJiZpIT09dm9pZCAwKXRyeXthd2FpdCB0aGlzLnJlbGVhc2UoaSl9Y2F0Y2goZSl7YT8/PWV9ZWxzZSBpZih0LmxlYXNlSWQhPT12b2lkIDAmJiFyKXRyeXthd2FpdCB0aGlzLm9wdGlvbnMuZHJpdmVyLnJlbGVhc2VMZWFzZT8uKHQubGVhc2VJZCl9Y2F0Y2goZSl7YT8/PWV9aWYocil0cnl7YXdhaXQgdGhpcy5jYW5jZWwoKX1jYXRjaChlKXthPz89ZX10aHJvdyB0aGlzLmNvb3JkaW5hdG9yLnJlbGVhc2UodGhpcy5jb29yZGluYXRvck93bmVyKSxhfHxlfXJldHVybiB0aGlzLnVuYWNrZWQ9e3NlcXVlbmNlOnRoaXMuc2VxdWVuY2UsZG9uZTp0LmRvbmV9LHtyZXNwb25zZTp7a2luZDpgY2h1bmtgLHByb3RvY29sOm53LC4uLnRoaXMuaWRlbnRpdHkoKSxyZXF1ZXN0SWQ6ZS5yZXF1ZXN0SWQsc2VxdWVuY2U6dGhpcy5zZXF1ZW5jZSxieXRlTGVuZ3RoOmEsZG9uZTp0LmRvbmUscGF5bG9hZDp0LnBheWxvYWQsbGVhc2VJZDppLHVzYWdlOnRoaXMucmVzb3VyY2VVc2FnZSgpfSx0cmFuc2Zlcjp0LnRyYW5zZmVyfX1hc3luYyBhY2soZSl7aWYoIU51bWJlci5pc1NhZmVJbnRlZ2VyKGUpfHxlPDApdGhyb3cgUmFuZ2VFcnJvcihgaW52YWxpZCBhY2sgc2VxdWVuY2VgKTtpZihlPHRoaXMuc2VxdWVuY2UpcmV0dXJuO2lmKCF0aGlzLnVuYWNrZWR8fGUhPT10aGlzLnNlcXVlbmNlKXRocm93IEVycm9yKGBhY2sgc2VxdWVuY2UgbWlzbWF0Y2hgKTtsZXQgdD10aGlzLnVuYWNrZWQuZG9uZTthd2FpdCB0aGlzLm9wdGlvbnMuZHJpdmVyLmFja25vd2xlZGdlPy4oZSksdGhpcy51bmFja2VkPXZvaWQgMCx0aGlzLmNvb3JkaW5hdG9yLnJlbGVhc2UodGhpcy5jb29yZGluYXRvck93bmVyKSx0aGlzLnNlcXVlbmNlKyssdCYmKHRoaXMuY29tcGxldGVkPSEwLHRoaXMubWF5YmVVbnJlZ2lzdGVyQ29tcGxldGVkKCkpfWFzeW5jIHJlbGVhc2UoZSl7ZXcoZSxgd2lyZSBsZWFzZSBpZGApO2xldCB0PXRoaXMubGVhc2VzLmdldChlKTt0JiYoYXdhaXQgdGhpcy5vcHRpb25zLmRyaXZlci5yZWxlYXNlTGVhc2U/Lih0LmRyaXZlckxlYXNlSWQpLHRoaXMubGVhc2VzLmRlbGV0ZShlKSx0aGlzLmFjdGl2ZURyaXZlckxlYXNlcy5kZWxldGUodC5kcml2ZXJMZWFzZUlkKSx0aGlzLmNvb3JkaW5hdG9yLnJlbGVhc2VMZWFzZSh0aGlzLmNvb3JkaW5hdG9yT3duZXIsZSksdGhpcy5tYXliZVVucmVnaXN0ZXJDb21wbGV0ZWQoKSl9YXN5bmMgY2FuY2VsKCl7aWYodGhpcy5jYW5jZWxDb21wbGV0ZSlyZXR1cm47dGhpcy5jYW5jZWxSZXF1ZXN0ZWQ9ITAsdGhpcy51bmFja2VkPXZvaWQgMCx0aGlzLmNvb3JkaW5hdG9yLnJlbGVhc2UodGhpcy5jb29yZGluYXRvck93bmVyKTtsZXQgZTt0cnl7YXdhaXQgdGhpcy5yZWxlYXNlQWxsTGVhc2VzKCl9Y2F0Y2godCl7ZT10fWlmKCF0aGlzLmRyaXZlckNhbmNlbENvbXBsZXRlKXRyeXthd2FpdCB0aGlzLm9wdGlvbnMuZHJpdmVyLmNhbmNlbD8uKCksdGhpcy5kcml2ZXJDYW5jZWxDb21wbGV0ZT0hMH1jYXRjaCh0KXtlPz89dH1pZihlKXRocm93IGU7dGhpcy5jYW5jZWxDb21wbGV0ZT0hMCx0aGlzLnVucmVnaXN0ZXJDbGVhbnVwKCl9YXN5bmMgY2xvc2UoKXtpZih0aGlzLmNsb3NlQ29tcGxldGUpcmV0dXJuO3RoaXMuY2xvc2VSZXF1ZXN0ZWQ9ITAsdGhpcy51bmFja2VkPXZvaWQgMCx0aGlzLmNvb3JkaW5hdG9yLnJlbGVhc2UodGhpcy5jb29yZGluYXRvck93bmVyKTtsZXQgZTt0cnl7YXdhaXQgdGhpcy5yZWxlYXNlQWxsTGVhc2VzKCl9Y2F0Y2godCl7ZT10fWlmKCF0aGlzLmRyaXZlckNsb3NlQ29tcGxldGUpdHJ5e2F3YWl0IHRoaXMub3B0aW9ucy5kcml2ZXIuY2xvc2U/LigpLHRoaXMuZHJpdmVyQ2xvc2VDb21wbGV0ZT0hMH1jYXRjaCh0KXtlPz89dH1pZihlKXRocm93IGU7dGhpcy5jbG9zZUNvbXBsZXRlPSEwLHRoaXMudW5yZWdpc3RlckNsZWFudXAoKX1hc3luYyByZWxlYXNlQWxsTGVhc2VzKCl7bGV0IGU7Zm9yKGxldCB0IG9mWy4uLnRoaXMubGVhc2VzLmtleXMoKV0pdHJ5e2F3YWl0IHRoaXMucmVsZWFzZSh0KX1jYXRjaCh0KXtlPz89dH1pZihlKXRocm93IGV9dmFsaWRhdGVDb21tYW5kSWRlbnRpdHkoZSl7aWYoZS5wcm90b2NvbCE9PWBvb3htbC1wdWxsLXYxYHx8ZS5zZXNzaW9uSWQhPT10aGlzLm9wdGlvbnMuc2Vzc2lvbklkfHxlLm9wZXJhdGlvbklkIT09dGhpcy5vcHRpb25zLm9wZXJhdGlvbklkfHxlLmdlbmVyYXRpb24hPT10aGlzLm9wdGlvbnMuZ2VuZXJhdGlvbnx8IU51bWJlci5pc1NhZmVJbnRlZ2VyKGUucmVxdWVzdElkKXx8ZS5yZXF1ZXN0SWQ8PTApdGhyb3cgRXJyb3IoYHN0YWxlIG9yIG1pc21hdGNoZWQgcHVsbCBzZXNzaW9uIGNvbW1hbmRgKX12YWxpZGF0ZUhvc3RDcmVkaXQoZSl7aWYoZXcoZSxgYnl0ZSBjcmVkaXRgKSxlPnRoaXMub3B0aW9ucy5tYXhCeXRlQ3JlZGl0KXRocm93IFJhbmdlRXJyb3IoYGJ5dGUgY3JlZGl0IGV4Y2VlZHMgaG9zdCBtYXhpbXVtYCl9YWNjZXB0ZWQoZSx0LG49ITEpe3JldHVybntraW5kOmBhY2NlcHRlZGAscHJvdG9jb2w6bncsLi4ubj97c2Vzc2lvbklkOmUuc2Vzc2lvbklkLG9wZXJhdGlvbklkOmUub3BlcmF0aW9uSWQsZ2VuZXJhdGlvbjplLmdlbmVyYXRpb259OnRoaXMuaWRlbnRpdHkoKSxyZXF1ZXN0SWQ6ZS5yZXF1ZXN0SWQsY29tbWFuZDp0LHVzYWdlOnRoaXMucmVzb3VyY2VVc2FnZSgpfX1pZGVudGl0eSgpe3JldHVybntzZXNzaW9uSWQ6dGhpcy5vcHRpb25zLnNlc3Npb25JZCxvcGVyYXRpb25JZDp0aGlzLm9wdGlvbnMub3BlcmF0aW9uSWQsZ2VuZXJhdGlvbjp0aGlzLm9wdGlvbnMuZ2VuZXJhdGlvbn19aXNTdGFsZUxpZmVjeWNsZShlKXtyZXR1cm4oZS5raW5kPT09YGNhbmNlbGB8fGUua2luZD09PWBjbG9zZWApJiZlLnByb3RvY29sPT09YG9veG1sLXB1bGwtdjFgJiZOdW1iZXIuaXNTYWZlSW50ZWdlcihlLnJlcXVlc3RJZCkmJmUucmVxdWVzdElkPjAmJk51bWJlci5pc1NhZmVJbnRlZ2VyKGUuZ2VuZXJhdGlvbikmJmUuZ2VuZXJhdGlvbj4wJiZlLmdlbmVyYXRpb248dGhpcy5vcHRpb25zLmdlbmVyYXRpb259c2FtZU9wZXJhdGlvbklkZW50aXR5KGUpe3JldHVybiBlLnNlc3Npb25JZD09PXRoaXMub3B0aW9ucy5zZXNzaW9uSWQmJmUub3BlcmF0aW9uSWQ9PT10aGlzLm9wdGlvbnMub3BlcmF0aW9uSWR9ZXJyb3JSZXNwb25zZShlLHQpe3JldHVybntraW5kOmBlcnJvcmAscHJvdG9jb2w6bncsc2Vzc2lvbklkOmUuc2Vzc2lvbklkLG9wZXJhdGlvbklkOmUub3BlcmF0aW9uSWQsZ2VuZXJhdGlvbjplLmdlbmVyYXRpb24scmVxdWVzdElkOmUucmVxdWVzdElkLGVycm9yOnQsdXNhZ2U6dGhpcy5lcnJvclJlc291cmNlVXNhZ2UoKX19YXN5bmMgZm9yY2VGYXRhbENsZWFudXAoKXt0aGlzLmNhbmNlbFJlcXVlc3RlZD0hMCx0aGlzLnVuYWNrZWQ9dm9pZCAwLHRoaXMuY29vcmRpbmF0b3IucmVsZWFzZSh0aGlzLmNvb3JkaW5hdG9yT3duZXIpO2xldCBlO2ZvcihsZXQgdCBvZlsuLi50aGlzLmxlYXNlcy5rZXlzKCldKXRyeXthd2FpdCB0aGlzLnJlbGVhc2UodCl9Y2F0Y2godCl7ZT8/PXR9aWYoIXRoaXMuZHJpdmVyQ2FuY2VsQ29tcGxldGUpdHJ5e2F3YWl0IHRoaXMub3B0aW9ucy5kcml2ZXIuY2FuY2VsPy4oKSx0aGlzLmRyaXZlckNhbmNlbENvbXBsZXRlPSEwfWNhdGNoKHQpe2U/Pz10fWlmKGUpdGhyb3cgZTt0aGlzLnVucmVnaXN0ZXJDbGVhbnVwKCl9YWxsb2NhdGVXaXJlTGVhc2VJZCgpe2lmKCFOdW1iZXIuaXNTYWZlSW50ZWdlcih0aGlzLm5leHRXaXJlTGVhc2VJZCl8fHRoaXMubmV4dFdpcmVMZWFzZUlkPD0wKXRocm93IFJhbmdlRXJyb3IoYHdpcmUgbGVhc2UgaWQgc3BhY2UgZXhoYXVzdGVkYCk7cmV0dXJuIHRoaXMubmV4dFdpcmVMZWFzZUlkKyt9YXJyYXlCdWZmZXJUcmFuc2ZlckJ5dGVzKGUpe2xldCB0PTA7Zm9yKGxldCBuIG9mIGU/P1tdKWlmKG4gaW5zdGFuY2VvZiBBcnJheUJ1ZmZlciYmKHQrPW4uYnl0ZUxlbmd0aCwhTnVtYmVyLmlzU2FmZUludGVnZXIodCkpKXRocm93IFJhbmdlRXJyb3IoYEFycmF5QnVmZmVyIHRyYW5zZmVyIGJ5dGVzIG92ZXJmbG93YCk7cmV0dXJuIHR9bWF5YmVVbnJlZ2lzdGVyQ29tcGxldGVkKCl7dGhpcy5jb21wbGV0ZWQmJnRoaXMubGVhc2VzLnNpemU9PT0wJiZ0aGlzLnVucmVnaXN0ZXJDbGVhbnVwKCl9cmVzb3VyY2VVc2FnZSgpe3JldHVybiB0aGlzLm9wdGlvbnMuZHJpdmVyLnJlc291cmNlVXNhZ2U/LigpfWVycm9yUmVzb3VyY2VVc2FnZSgpe3RyeXtyZXR1cm4gdGhpcy5yZXNvdXJjZVVzYWdlKCl9Y2F0Y2h7cmV0dXJufX19fSkpLG93PXQoKCgpPT57VnYoKSxYdigpLER5KCkscnkoKSxreSgpLGp5KCksS18oKSxKQygpLFhDKCksYSgpLF9lKCksQSgpLCRDKCksYXcoKX0pKSxzdz10KCgoKT0+e30pKSxjdyxsdyx1dyxkdyxmdyxwdz10KCgoKT0+e2N3PVtgTGAsYFJgLGBBTGAsYEVOYCxgRVNgLGBFVGAsYEFOYCxgQ1NgLGBOU01gLGBCTmAsYEJgLGBTYCxgV1NgLGBPTmAsYExSRWAsYExST2AsYFJMRWAsYFJMT2AsYFBERmAsYExSSWAsYFJMSWAsYEZTSWAsYFBESWBdLGx3PVswLDksMTAsMTEsMTIsMTMsMTQsMjgsMzEsMzIsMzMsMzUsMzgsNDMsNDQsNDUsNDYsNDgsNTgsNTksNjUsOTEsOTcsMTIzLDEyNywxMzMsMTM0LDE2MCwxNjEsMTYyLDE2NiwxNzAsMTcxLDE3MywxNzQsMTc2LDE3OCwxODAsMTgxLDE4MiwxODUsMTg2LDE4NywxOTIsMjE1LDIxNiwyNDcsMjQ4LDY5Nyw2OTksNzA2LDcyMCw3MjIsNzM2LDc0MSw3NTAsNzUxLDc2OCw4ODAsODg0LDg4Niw4OTQsODk1LDkwMCw5MDIsOTAzLDkwNCwxMDE0LDEwMTUsMTE1NSwxMTYyLDE0MTgsMTQxOSwxNDIxLDE0MjMsMTQyNCwxNDI1LDE0NzAsMTQ3MSwxNDcyLDE0NzMsMTQ3NSwxNDc2LDE0NzgsMTQ3OSwxNDgwLDE1MzYsMTU0MiwxNTQ0LDE1NDUsMTU0NywxNTQ4LDE1NDksMTU1MCwxNTUyLDE1NjMsMTYxMSwxNjMyLDE2NDIsMTY0MywxNjQ1LDE2NDgsMTY0OSwxNzUwLDE3NTcsMTc1OCwxNzU5LDE3NjUsMTc2NywxNzY5LDE3NzAsMTc3NCwxNzc2LDE3ODYsMTgwOSwxODEwLDE4NDAsMTg2NywxOTU4LDE5NjksMTk4NCwyMDI3LDIwMzYsMjAzOCwyMDQyLDIwNDUsMjA0NiwyMDcwLDIwNzQsMjA3NSwyMDg0LDIwODUsMjA4OCwyMDg5LDIwOTQsMjEzNywyMTQwLDIxNDQsMjE5MiwyMTk0LDIxOTksMjIwOCwyMjUwLDIyNzQsMjI3NSwyMzA3LDIzNjIsMjM2MywyMzY0LDIzNjUsMjM2OSwyMzc3LDIzODEsMjM4MiwyMzg1LDIzOTIsMjQwMiwyNDA0LDI0MzMsMjQzNCwyNDkyLDI0OTMsMjQ5NywyNTAxLDI1MDksMjUxMCwyNTMwLDI1MzIsMjU0NiwyNTQ4LDI1NTUsMjU1NiwyNTU4LDI1NTksMjU2MSwyNTYzLDI2MjAsMjYyMSwyNjI1LDI2MjcsMjYzMSwyNjMzLDI2MzUsMjYzOCwyNjQxLDI2NDIsMjY3MiwyNjc0LDI2NzcsMjY3OCwyNjg5LDI2OTEsMjc0OCwyNzQ5LDI3NTMsMjc1OCwyNzU5LDI3NjEsMjc2NSwyNzY2LDI3ODYsMjc4OCwyODAxLDI4MDIsMjgxMCwyODE2LDI4MTcsMjgxOCwyODc2LDI4NzcsMjg3OSwyODgwLDI4ODEsMjg4NSwyODkzLDI4OTQsMjkwMSwyOTAzLDI5MTQsMjkxNiwyOTQ2LDI5NDcsMzAwOCwzMDA5LDMwMjEsMzAyMiwzMDU5LDMwNjUsMzA2NiwzMDY3LDMwNzIsMzA3MywzMDc2LDMwNzcsMzEzMiwzMTMzLDMxMzQsMzEzNywzMTQyLDMxNDUsMzE0NiwzMTUwLDMxNTcsMzE1OSwzMTcwLDMxNzIsMzE5MiwzMTk5LDMyMDEsMzIwMiwzMjYwLDMyNjEsMzI3NiwzMjc4LDMyOTgsMzMwMCwzMzI4LDMzMzAsMzM4NywzMzg5LDMzOTMsMzM5NywzNDA1LDM0MDYsMzQyNiwzNDI4LDM0NTcsMzQ1OCwzNTMwLDM1MzEsMzUzOCwzNTQxLDM1NDIsMzU0MywzNjMzLDM2MzQsMzYzNiwzNjQzLDM2NDcsMzY0OCwzNjU1LDM2NjMsMzc2MSwzNzYyLDM3NjQsMzc3MywzNzg0LDM3OTEsMzg2NCwzODY2LDM4OTMsMzg5NCwzODk1LDM4OTYsMzg5NywzODk4LDM5MDIsMzk1MywzOTY3LDM5NjgsMzk3MywzOTc0LDM5NzYsMzk4MSwzOTkyLDM5OTMsNDAyOSw0MDM4LDQwMzksNDE0MSw0MTQ1LDQxNDYsNDE1Miw0MTUzLDQxNTUsNDE1Nyw0MTU5LDQxODQsNDE4Niw0MTkwLDQxOTMsNDIwOSw0MjEzLDQyMjYsNDIyNyw0MjI5LDQyMzEsNDIzNyw0MjM4LDQyNTMsNDI1NCw0OTU3LDQ5NjAsNTAwOCw1MDE4LDUxMjAsNTEyMSw1NzYwLDU3NjEsNTc4Nyw1Nzg5LDU5MDYsNTkwOSw1OTM4LDU5NDAsNTk3MCw1OTcyLDYwMDIsNjAwNCw2MDY4LDYwNzAsNjA3MSw2MDc4LDYwODYsNjA4Nyw2MDg5LDYxMDAsNjEwNyw2MTA4LDYxMDksNjExMCw2MTI4LDYxMzgsNjE0NCw2MTU1LDYxNTgsNjE1OSw2MTYwLDYyNzcsNjI3OSw2MzEzLDYzMTQsNjQzMiw2NDM1LDY0MzksNjQ0MSw2NDUwLDY0NTEsNjQ1Nyw2NDYwLDY0NjQsNjQ2NSw2NDY4LDY0NzAsNjYyMiw2NjU2LDY2NzksNjY4MSw2NjgzLDY2ODQsNjc0Miw2NzQzLDY3NDQsNjc1MSw2NzUyLDY3NTMsNjc1NCw2NzU1LDY3NTcsNjc2NSw2NzcxLDY3ODEsNjc4Myw2Nzg0LDY4MzIsNjg3OCw2ODgwLDY4OTIsNjkxMiw2OTE2LDY5NjQsNjk2NSw2OTY2LDY5NzEsNjk3Miw2OTczLDY5NzgsNjk3OSw3MDE5LDcwMjgsNzA0MCw3MDQyLDcwNzQsNzA3OCw3MDgwLDcwODIsNzA4Myw3MDg2LDcxNDIsNzE0Myw3MTQ0LDcxNDYsNzE0OSw3MTUwLDcxNTEsNzE1NCw3MjEyLDcyMjAsNzIyMiw3MjI0LDczNzYsNzM3OSw3MzgwLDczOTMsNzM5NCw3NDAxLDc0MDUsNzQwNiw3NDEyLDc0MTMsNzQxNiw3NDE4LDc2MTYsNzY4MCw4MTI1LDgxMjYsODEyNyw4MTMwLDgxNDEsODE0NCw4MTU3LDgxNjAsODE3Myw4MTc2LDgxODksODE5MSw4MTkyLDgyMDMsODIwNiw4MjA3LDgyMDgsODIzMiw4MjMzLDgyMzQsODIzNSw4MjM2LDgyMzcsODIzOCw4MjM5LDgyNDAsODI0NSw4MjYwLDgyNjEsODI4Nyw4Mjg4LDgyOTQsODI5NSw4Mjk2LDgyOTcsODI5OCw4MzA0LDgzMDUsODMwOCw4MzE0LDgzMTYsODMxOSw4MzIwLDgzMzAsODMzMiw4MzM1LDgzNTIsODQwMCw4NDMzLDg0NDgsODQ1MCw4NDUxLDg0NTUsODQ1Niw4NDU4LDg0NjgsODQ2OSw4NDcwLDg0NzMsODQ3OCw4NDg0LDg0ODUsODQ4Niw4NDg3LDg0ODgsODQ4OSw4NDkwLDg0OTQsODQ5NSw4NTA2LDg1MDgsODUxMiw4NTE3LDg1MjIsODUyNiw4NTI4LDg1NDQsODU4NSw4NTg4LDg1OTIsODcyMiw4NzIzLDg3MjQsOTAxNCw5MDgzLDkxMDksOTExMCw5MjU4LDkyODAsOTI5MSw5MzEyLDkzNTIsOTM3Miw5NDUwLDk5MDAsOTkwMSwxMDI0MCwxMDQ5NiwxMTEyNCwxMTEyNiwxMTI2NCwxMTQ5MywxMTQ5OSwxMTUwMywxMTUwNiwxMTUxMywxMTUyMCwxMTY0NywxMTY0OCwxMTc0NCwxMTc3NiwxMTg3MCwxMTkwNCwxMTkzMCwxMTkzMSwxMjAyMCwxMjAzMiwxMjI0NiwxMjI3MiwxMjI4OCwxMjI4OSwxMjI5MywxMjI5NiwxMjMyMSwxMjMzMCwxMjMzNCwxMjMzNiwxMjMzNywxMjM0MiwxMjM0NCwxMjM0OSwxMjM1MiwxMjQ0MSwxMjQ0MywxMjQ0NSwxMjQ0OCwxMjQ0OSwxMjUzOSwxMjU0MCwxMjczNiwxMjc3NCwxMjc4MywxMjc4NCwxMjgyOSwxMjgzMSwxMjg4MCwxMjg5NiwxMjkyNCwxMjkyNywxMjk3NywxMjk5MiwxMzAwNCwxMzAwOCwxMzE3NSwxMzE3OSwxMzI3OCwxMzI4MCwxMzMxMSwxMzMxMiwxOTkwNCwxOTk2OCw0MjEyOCw0MjE4Myw0MjUwOSw0MjUxMiw0MjYwNyw0MjYxMSw0MjYxMiw0MjYyMiw0MjYyNCw0MjY1NCw0MjY1Niw0MjczNiw0MjczOCw0Mjc1Miw0Mjc4Niw0Mjg4OCw0Mjg4OSw0MzAxMCw0MzAxMSw0MzAxNCw0MzAxNSw0MzAxOSw0MzAyMCw0MzA0NSw0MzA0Nyw0MzA0OCw0MzA1Miw0MzA1Myw0MzA2NCw0MzA2Niw0MzEyNCw0MzEyOCw0MzIwNCw0MzIwNiw0MzIzMiw0MzI1MCw0MzI2Myw0MzI2NCw0MzMwMiw0MzMxMCw0MzMzNSw0MzM0Niw0MzM5Miw0MzM5NSw0MzQ0Myw0MzQ0NCw0MzQ0Niw0MzQ1MCw0MzQ1Miw0MzQ1NCw0MzQ5Myw0MzQ5NCw0MzU2MSw0MzU2Nyw0MzU2OSw0MzU3MSw0MzU3Myw0MzU3NSw0MzU4Nyw0MzU4OCw0MzU5Niw0MzU5Nyw0MzY0NCw0MzY0NSw0MzY5Niw0MzY5Nyw0MzY5OCw0MzcwMSw0MzcwMyw0MzcwNSw0MzcxMCw0MzcxMiw0MzcxMyw0MzcxNCw0Mzc1Niw0Mzc1OCw0Mzc2Niw0Mzc2Nyw0Mzg4Miw0Mzg4NCw0NDAwNSw0NDAwNiw0NDAwOCw0NDAwOSw0NDAxMyw0NDAxNCw2NDI4NSw2NDI4Niw2NDI4Nyw2NDI5Nyw2NDI5OCw2NDMzNiw2NDQ1MSw2NDQ2Nyw2NDgzMCw2NDg0OCw2NDkxMiw2NDkxNCw2NDk2OCw2NDk3Niw2NTAwOCw2NTAyMSw2NTAyNCw2NTA0MCw2NTA1MCw2NTA1Niw2NTA3Miw2NTEwNCw2NTEwNSw2NTEwNiw2NTEwNyw2NTEwOCw2NTEwOSw2NTExMCw2NTExOSw2NTEyMCw2NTEyMiw2NTEyNCw2NTEyNyw2NTEyOCw2NTEyOSw2NTEzMSw2NTEzMiw2NTEzNiw2NTI3OSw2NTI4MCw2NTI4MSw2NTI4Myw2NTI4Niw2NTI5MSw2NTI5Miw2NTI5Myw2NTI5NCw2NTI5Niw2NTMwNiw2NTMwNyw2NTMxMyw2NTMzOSw2NTM0NSw2NTM3MSw2NTM4Miw2NTUwNCw2NTUwNiw2NTUwOSw2NTUxMSw2NTUxMiw2NTUxOSw2NTUyMCw2NTUyOSw2NTUzNCw2NTUzNiw2NTc5Myw2NTc5NCw2NTg1Niw2NTkzMyw2NTkzNiw2NTk0OSw2NTk1Miw2NTk1Myw2NjA0NSw2NjA0Niw2NjI3Miw2NjI3Myw2NjMwMCw2NjQyMiw2NjQyNyw2NzU4NCw2Nzg3MSw2Nzg3Miw2ODA5Nyw2ODEwMCw2ODEwMSw2ODEwMyw2ODEwOCw2ODExMiw2ODE1Miw2ODE1NSw2ODE1OSw2ODE2MCw2ODMyNSw2ODMyNyw2ODQwOSw2ODQxNiw2ODg2NCw2ODkwMCw2ODkwNCw2ODkxMiw2ODkyMiw2ODkyOCw2ODkzOCw2ODk2OSw2ODk3NCw2ODk3NSw2OTIxNiw2OTI0Nyw2OTI5MSw2OTI5Myw2OTMxMiw2OTMyOCw2OTMzNyw2OTM3MCw2OTM3Niw2OTQyNCw2OTQ0Niw2OTQ1Nyw2OTQ4OCw2OTUwNiw2OTUxMCw2OTYzMiw2OTYzMyw2OTYzNCw2OTY4OCw2OTcwMyw2OTcxNCw2OTczNCw2OTc0NCw2OTc0NSw2OTc0Nyw2OTc0OSw2OTc1OSw2OTc2Miw2OTgxMSw2OTgxNSw2OTgxNyw2OTgxOSw2OTgyNiw2OTgyNyw2OTg4OCw2OTg5MSw2OTkyNyw2OTkzMiw2OTkzMyw2OTk0MSw3MDAwMyw3MDAwNCw3MDAxNiw3MDAxOCw3MDA3MCw3MDA3OSw3MDA4OSw3MDA5Myw3MDA5NSw3MDA5Niw3MDE5MSw3MDE5NCw3MDE5Niw3MDE5Nyw3MDE5OCw3MDIwMCw3MDIwNiw3MDIwNyw3MDIwOSw3MDIxMCw3MDM2Nyw3MDM2OCw3MDM3MSw3MDM3OSw3MDQwMCw3MDQwMiw3MDQ1OSw3MDQ2MSw3MDQ2NCw3MDQ2NSw3MDUwMiw3MDUwOSw3MDUxMiw3MDUxNyw3MDU4Nyw3MDU5Myw3MDYwNiw3MDYwNyw3MDYwOCw3MDYwOSw3MDYxMCw3MDYxMSw3MDYyNSw3MDYyNyw3MDcxMiw3MDcyMCw3MDcyMiw3MDcyNSw3MDcyNiw3MDcyNyw3MDc1MCw3MDc1MSw3MDgzNSw3MDg0MSw3MDg0Miw3MDg0Myw3MDg0Nyw3MDg0OSw3MDg1MCw3MDg1Miw3MTA5MCw3MTA5NCw3MTEwMCw3MTEwMiw3MTEwMyw3MTEwNSw3MTEzMiw3MTEzNCw3MTIxOSw3MTIyNyw3MTIyOSw3MTIzMCw3MTIzMSw3MTIzMyw3MTI2NCw3MTI3Nyw3MTMzOSw3MTM0MCw3MTM0MSw3MTM0Miw3MTM0NCw3MTM1MCw3MTM1MSw3MTM1Miw3MTQ1Myw3MTQ1NCw3MTQ1NSw3MTQ1Niw3MTQ1OCw3MTQ2Miw3MTQ2Myw3MTQ2OCw3MTcyNyw3MTczNiw3MTczNyw3MTczOSw3MTk5NSw3MTk5Nyw3MTk5OCw3MTk5OSw3MjAwMyw3MjAwNCw3MjE0OCw3MjE1Miw3MjE1NCw3MjE1Niw3MjE2MCw3MjE2MSw3MjE5Myw3MjE5OSw3MjIwMSw3MjIwMyw3MjI0Myw3MjI0OSw3MjI1MSw3MjI1NSw3MjI2Myw3MjI2NCw3MjI3Myw3MjI3OSw3MjI4MSw3MjI4NCw3MjMzMCw3MjM0Myw3MjM0NCw3MjM0Niw3MjU0NCw3MjU0NSw3MjU0Niw3MjU0OSw3MjU1MCw3MjU1MSw3Mjc1Miw3Mjc1OSw3Mjc2MCw3Mjc2Niw3Mjg1MCw3Mjg3Miw3Mjg3NCw3Mjg4MSw3Mjg4Miw3Mjg4NCw3Mjg4NSw3Mjg4Nyw3MzAwOSw3MzAxNSw3MzAxOCw3MzAxOSw3MzAyMCw3MzAyMiw3MzAyMyw3MzAzMCw3MzAzMSw3MzAzMiw3MzEwNCw3MzEwNiw3MzEwOSw3MzExMCw3MzExMSw3MzExMiw3MzQ1OSw3MzQ2MSw3MzQ3Miw3MzQ3NCw3MzUyNiw3MzUzMSw3MzUzNiw3MzUzNyw3MzUzOCw3MzUzOSw3MzU2Miw3MzU2Myw3MzY4NSw3MzY5Myw3MzY5Nyw3MzcxNCw3ODkxMiw3ODkxMyw3ODkxOSw3ODkzNCw5MDM5OCw5MDQxMCw5MDQxMyw5MDQxNiw5MjkxMiw5MjkxNyw5Mjk3Niw5Mjk4Myw5NDAzMSw5NDAzMiw5NDA5NSw5NDA5OSw5NDE3OCw5NDE3OSw5NDE4MCw5NDE4MSwxMTM4MjEsMTEzODIzLDExMzgyNCwxMTM4MjgsMTE3NzYwLDExNzk3NCwxMThlMywxMTgwMTAsMTE4MDEzLDExODAxNiwxMTg0NTIsMTE4NDU4LDExODQ4MSwxMTg0OTYsMTE4NTEzLDExODUyOCwxMTg1NzQsMTE4NTc2LDExODU5OSwxMTkxNDMsMTE5MTQ2LDExOTE1NSwxMTkxNjMsMTE5MTcxLDExOTE3MywxMTkxODAsMTE5MjEwLDExOTIxNCwxMTkyNzMsMTE5Mjc1LDExOTI5NiwxMTkzNjIsMTE5MzY1LDExOTM2NiwxMTk1NTIsMTE5NjM5LDEyMDUxMywxMjA1MTQsMTIwNTM5LDEyMDU0MCwxMjA1NzEsMTIwNTcyLDEyMDU5NywxMjA1OTgsMTIwNjI5LDEyMDYzMCwxMjA2NTUsMTIwNjU2LDEyMDY4NywxMjA2ODgsMTIwNzEzLDEyMDcxNCwxMjA3NDUsMTIwNzQ2LDEyMDc3MSwxMjA3NzIsMTIwNzgyLDEyMDgzMiwxMjEzNDQsMTIxMzk5LDEyMTQwMywxMjE0NTMsMTIxNDYxLDEyMTQ2MiwxMjE0NzYsMTIxNDc3LDEyMTQ5OSwxMjE1MDQsMTIxNTA1LDEyMTUyMCwxMjI4ODAsMTIyODg3LDEyMjg4OCwxMjI5MDUsMTIyOTA3LDEyMjkxNCwxMjI5MTUsMTIyOTE3LDEyMjkxOCwxMjI5MjMsMTIzMDIzLDEyMzAyNCwxMjMxODQsMTIzMTkxLDEyMzU2NiwxMjM1NjcsMTIzNjI4LDEyMzYzMiwxMjM2NDcsMTIzNjQ4LDEyNDE0MCwxMjQxNDQsMTI0Mzk4LDEyNDQwMCwxMjQ2NDMsMTI0NjQ0LDEyNDY0NiwxMjQ2NDcsMTI0NjU0LDEyNDY1NiwxMjQ2NjEsMTI0NjYyLDEyNDkyOCwxMjUxMzYsMTI1MTQzLDEyNTI1MiwxMjUyNTksMTI2MDY0LDEyNjE0NCwxMjYyMDgsMTI2Mjg4LDEyNjQ2NCwxMjY3MDQsMTI2NzA2LDEyNjcyMCwxMjY5NzYsMTI3MDIwLDEyNzAyNCwxMjcxMjQsMTI3MTM2LDEyNzE1MSwxMjcxNTMsMTI3MTY4LDEyNzE2OSwxMjcxODQsMTI3MTg1LDEyNzIyMiwxMjcyMzIsMTI3MjQzLDEyNzI0OCwxMjcyNzksMTI3MjgwLDEyNzMzOCwxMjczNDQsMTI3NDA1LDEyNzQwNiwxMjc1ODQsMTI3NTkwLDEyNzc0NCwxMjg3MjksMTI4NzMyLDEyODc0OSwxMjg3NTIsMTI4NzY1LDEyODc2OCwxMjg5ODYsMTI4OTkyLDEyOTAwNCwxMjkwMDgsMTI5MDA5LDEyOTAyNCwxMjkwMzYsMTI5MDQwLDEyOTA5NiwxMjkxMDQsMTI5MTE0LDEyOTEyMCwxMjkxNjAsMTI5MTY4LDEyOTE5OCwxMjkyMDAsMTI5MjEyLDEyOTIxNiwxMjkyMTgsMTI5MjMyLDEyOTI0MSwxMjkyODAsMTI5NjI0LDEyOTYzMiwxMjk2NDYsMTI5NjQ4LDEyOTY2MSwxMjk2NjQsMTI5Njc1LDEyOTY3OCwxMjk3MzUsMTI5NzM2LDEyOTczNywxMjk3NDEsMTI5NzU3LDEyOTc1OSwxMjk3NzEsMTI5Nzc1LDEyOTc4NSwxMjk3OTIsMTI5OTM5LDEyOTk0MCwxMzAwMzIsMTMwMDQyLDEzMDA0MywxMzEwNzAsMTMxMDcyLDE5NjYwNiwxOTY2MDgsMjYyMTQyLDI2MjE0NCwzMjc2NzgsMzI3NjgwLDM5MzIxNCwzOTMyMTYsNDU4NzUwLDQ1ODc1Miw1MjQyODYsNTI0Mjg4LDU4OTgyMiw1ODk4MjQsNjU1MzU4LDY1NTM2MCw3MjA4OTQsNzIwODk2LDc4NjQzMCw3ODY0MzIsODUxOTY2LDg1MTk2OCw5MTc1MDIsOTE3NzYwLDkxOGUzLDkyMTYwMCw5ODMwMzgsOTgzMDQwLDEwNDg1NzQsMTA0ODU3NiwxMTE0MTEwXSx1dz1bOSwxMSwxMCwxMSwxMiwxMCw5LDEwLDExLDEyLDEzLDUsMTMsNCw3LDQsNywzLDcsMTMsMCwxMywwLDEzLDksMTAsOSw3LDEzLDUsMTMsMCwxMyw5LDEzLDUsMywxMywwLDEzLDMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDgsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsOCwwLDEzLDAsMTMsNSwxLDgsMSw4LDEsOCwxLDgsMSw4LDEsNiwxMywyLDUsMiw3LDIsMTMsOCwyLDgsNiw1LDYsMiw4LDIsOCw2LDEzLDgsMiw4LDEzLDgsMiwzLDIsOCwyLDgsMiw4LDIsMSw4LDEsMTMsMSw4LDEsOCwxLDgsMSw4LDEsOCwxLDgsMSwyLDYsMiw4LDIsOCw2LDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDUsMCw1LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsNSwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsMTMsNSwxMywwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsMTMsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw1LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMTMsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCwxMywwLDEzLDAsMTIsMCwxMywwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsNSwwLDgsMCwxMywwLDEzLDgsOSw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsMTMsMCwxMywwLDEzLDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEyLDksMCwxLDEzLDEyLDEwLDE0LDE2LDE4LDE1LDE3LDcsNSwxMyw3LDEzLDEyLDksMTksMjAsMjEsMjIsOSwzLDAsMyw0LDEzLDAsMyw0LDEzLDAsNSw4LDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsNSwwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMyw0LDUsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDgsMCwxMywwLDgsMCw4LDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMTIsMTMsMCwxMywwLDgsMCwxMywwLDEzLDAsMTMsMCw4LDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsOCwxMyw4LDEzLDAsOCwwLDgsMCwxMywwLDEzLDAsOCwwLDgsMCw4LDAsOCwwLDEzLDgsMCw1LDAsMTMsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDEzLDAsOCwwLDgsMCw4LDAsMSw4LDEsNCwxLDIsMTMsMiwxMywyLDEzLDIsMTMsOSwyLDEzLDgsMTMsMCw4LDEzLDcsMTMsNywwLDEzLDcsMTMsNSwxMyw0LDEzLDAsMTMsNSwxMywwLDIsOSwwLDEzLDUsMTMsNCw3LDQsNywzLDcsMTMsMCwxMywwLDEzLDAsNSwxMyw1LDAsMTMsMCw5LDEzLDksMCwxMywwLDEzLDAsMTMsMCwxMywwLDgsMCw4LDMsMCw4LDAsMSwxMywxLDgsMSw4LDEsOCwxLDgsMSw4LDEsOCwxLDEzLDEsMiw4LDIsNiwyLDYsMSw4LDEzLDEsNiwxLDgsMSwyLDEzLDIsOCwxLDIsOCwyLDEsOCwxLDAsOCwwLDgsMCwxMywwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCwxMywwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDEzLDUsMTMsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDEzLDAsOCwwLDgsMCw5LDAsMTMsMCwzLDEzLDAsMTMsMCwxMywwLDEzLDAsOCwwLDgsMCw4LDAsOSw4LDAsOCwwLDgsMCwxMywwLDEzLDgsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMywwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDUsMCw4LDAsOCwwLDgsMCw4LDAsOCwwLDgsMCwxLDgsMSw4LDEsMiwxLDIsMSwyLDEzLDIsMSwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwzLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywwLDEzLDAsMTMsMCwxMywzLDEzLDAsOSwwLDksMCw5LDAsOSwwLDksMCw5LDAsOSwwLDksMCw5LDAsOSwwLDksMCw5LDAsOSw4LDksMCw5LDAsOSwwLDldLGR3PVs0MCw0MSw0MSw0MCw2MCw2Miw2Miw2MCw5MSw5Myw5Myw5MSwxMjMsMTI1LDEyNSwxMjMsMTcxLDE4NywxODcsMTcxLDM4OTgsMzg5OSwzODk5LDM4OTgsMzkwMCwzOTAxLDM5MDEsMzkwMCw1Nzg3LDU3ODgsNTc4OCw1Nzg3LDgyNDksODI1MCw4MjUwLDgyNDksODI2MSw4MjYyLDgyNjIsODI2MSw4MzE3LDgzMTgsODMxOCw4MzE3LDgzMzMsODMzNCw4MzM0LDgzMzMsODcxMiw4NzE1LDg3MTMsODcxNiw4NzE0LDg3MTcsODcxNSw4NzEyLDg3MTYsODcxMyw4NzE3LDg3MTQsODcyNSwxMDc0MSw4NzM1LDExMjYyLDg3MzYsMTA2NTksODczNywxMDY1MSw4NzM4LDEwNjU2LDg3NDAsMTA5OTAsODc2NCw4NzY1LDg3NjUsODc2NCw4NzcxLDg5MDksODc3Myw4NzgwLDg3ODAsODc3Myw4Nzg2LDg3ODcsODc4Nyw4Nzg2LDg3ODgsODc4OSw4Nzg5LDg3ODgsODgwNCw4ODA1LDg4MDUsODgwNCw4ODA2LDg4MDcsODgwNyw4ODA2LDg4MDgsODgwOSw4ODA5LDg4MDgsODgxMCw4ODExLDg4MTEsODgxMCw4ODE0LDg4MTUsODgxNSw4ODE0LDg4MTYsODgxNyw4ODE3LDg4MTYsODgxOCw4ODE5LDg4MTksODgxOCw4ODIwLDg4MjEsODgyMSw4ODIwLDg4MjIsODgyMyw4ODIzLDg4MjIsODgyNCw4ODI1LDg4MjUsODgyNCw4ODI2LDg4MjcsODgyNyw4ODI2LDg4MjgsODgyOSw4ODI5LDg4MjgsODgzMCw4ODMxLDg4MzEsODgzMCw4ODMyLDg4MzMsODgzMyw4ODMyLDg4MzQsODgzNSw4ODM1LDg4MzQsODgzNiw4ODM3LDg4MzcsODgzNiw4ODM4LDg4MzksODgzOSw4ODM4LDg4NDAsODg0MSw4ODQxLDg4NDAsODg0Miw4ODQzLDg4NDMsODg0Miw4ODQ3LDg4NDgsODg0OCw4ODQ3LDg4NDksODg1MCw4ODUwLDg4NDksODg1NiwxMDY4MCw4ODY2LDg4NjcsODg2Nyw4ODY2LDg4NzAsMTA5NzQsODg3MiwxMDk4MCw4ODczLDEwOTc5LDg4NzUsMTA5ODEsODg4MCw4ODgxLDg4ODEsODg4MCw4ODgyLDg4ODMsODg4Myw4ODgyLDg4ODQsODg4NSw4ODg1LDg4ODQsODg4Niw4ODg3LDg4ODcsODg4Niw4ODg4LDEwMjA0LDg5MDUsODkwNiw4OTA2LDg5MDUsODkwNyw4OTA4LDg5MDgsODkwNyw4OTA5LDg3NzEsODkxMiw4OTEzLDg5MTMsODkxMiw4OTE4LDg5MTksODkxOSw4OTE4LDg5MjAsODkyMSw4OTIxLDg5MjAsODkyMiw4OTIzLDg5MjMsODkyMiw4OTI0LDg5MjUsODkyNSw4OTI0LDg5MjYsODkyNyw4OTI3LDg5MjYsODkyOCw4OTI5LDg5MjksODkyOCw4OTMwLDg5MzEsODkzMSw4OTMwLDg5MzIsODkzMyw4OTMzLDg5MzIsODkzNCw4OTM1LDg5MzUsODkzNCw4OTM2LDg5MzcsODkzNyw4OTM2LDg5MzgsODkzOSw4OTM5LDg5MzgsODk0MCw4OTQxLDg5NDEsODk0MCw4OTQ0LDg5NDUsODk0NSw4OTQ0LDg5NDYsODk1NCw4OTQ3LDg5NTUsODk0OCw4OTU2LDg5NTAsODk1Nyw4OTUxLDg5NTgsODk1NCw4OTQ2LDg5NTUsODk0Nyw4OTU2LDg5NDgsODk1Nyw4OTUwLDg5NTgsODk1MSw4OTY4LDg5NjksODk2OSw4OTY4LDg5NzAsODk3MSw4OTcxLDg5NzAsOTAwMSw5MDAyLDkwMDIsOTAwMSwxMDA4OCwxMDA4OSwxMDA4OSwxMDA4OCwxMDA5MCwxMDA5MSwxMDA5MSwxMDA5MCwxMDA5MiwxMDA5MywxMDA5MywxMDA5MiwxMDA5NCwxMDA5NSwxMDA5NSwxMDA5NCwxMDA5NiwxMDA5NywxMDA5NywxMDA5NiwxMDA5OCwxMDA5OSwxMDA5OSwxMDA5OCwxMDEwMCwxMDEwMSwxMDEwMSwxMDEwMCwxMDE3OSwxMDE4MCwxMDE4MCwxMDE3OSwxMDE4MSwxMDE4MiwxMDE4MiwxMDE4MSwxMDE4NCwxMDE4NSwxMDE4NSwxMDE4NCwxMDE4NywxMDE4OSwxMDE4OSwxMDE4NywxMDE5NywxMDE5OCwxMDE5OCwxMDE5NywxMDIwNCw4ODg4LDEwMjA1LDEwMjA2LDEwMjA2LDEwMjA1LDEwMjEwLDEwMjExLDEwMjExLDEwMjEwLDEwMjEyLDEwMjEzLDEwMjEzLDEwMjEyLDEwMjE0LDEwMjE1LDEwMjE1LDEwMjE0LDEwMjE2LDEwMjE3LDEwMjE3LDEwMjE2LDEwMjE4LDEwMjE5LDEwMjE5LDEwMjE4LDEwMjIwLDEwMjIxLDEwMjIxLDEwMjIwLDEwMjIyLDEwMjIzLDEwMjIzLDEwMjIyLDEwNjI3LDEwNjI4LDEwNjI4LDEwNjI3LDEwNjI5LDEwNjMwLDEwNjMwLDEwNjI5LDEwNjMxLDEwNjMyLDEwNjMyLDEwNjMxLDEwNjMzLDEwNjM0LDEwNjM0LDEwNjMzLDEwNjM1LDEwNjM2LDEwNjM2LDEwNjM1LDEwNjM3LDEwNjQwLDEwNjM4LDEwNjM5LDEwNjM5LDEwNjM4LDEwNjQwLDEwNjM3LDEwNjQxLDEwNjQyLDEwNjQyLDEwNjQxLDEwNjQzLDEwNjQ0LDEwNjQ0LDEwNjQzLDEwNjQ1LDEwNjQ2LDEwNjQ2LDEwNjQ1LDEwNjQ3LDEwNjQ4LDEwNjQ4LDEwNjQ3LDEwNjUxLDg3MzcsMTA2NTYsODczOCwxMDY1OSw4NzM2LDEwNjYwLDEwNjYxLDEwNjYxLDEwNjYwLDEwNjY0LDEwNjY1LDEwNjY1LDEwNjY0LDEwNjY2LDEwNjY3LDEwNjY3LDEwNjY2LDEwNjY4LDEwNjY5LDEwNjY5LDEwNjY4LDEwNjcwLDEwNjcxLDEwNjcxLDEwNjcwLDEwNjgwLDg4NTYsMTA2ODgsMTA2ODksMTA2ODksMTA2ODgsMTA2OTIsMTA2OTMsMTA2OTMsMTA2OTIsMTA3MDMsMTA3MDQsMTA3MDQsMTA3MDMsMTA3MDUsMTA3MDYsMTA3MDYsMTA3MDUsMTA3MDgsMTA3MDksMTA3MDksMTA3MDgsMTA3MTIsMTA3MTMsMTA3MTMsMTA3MTIsMTA3MTQsMTA3MTUsMTA3MTUsMTA3MTQsMTA3MjgsMTA3MjksMTA3MjksMTA3MjgsMTA3NDEsODcyNSwxMDc0NCwxMDc0NSwxMDc0NSwxMDc0NCwxMDc0OCwxMDc0OSwxMDc0OSwxMDc0OCwxMDc5NSwxMDc5NiwxMDc5NiwxMDc5NSwxMDc5NywxMDc5OCwxMDc5OCwxMDc5NywxMDgwNCwxMDgwNSwxMDgwNSwxMDgwNCwxMDgxMiwxMDgxMywxMDgxMywxMDgxMiwxMDg1MiwxMDg1MywxMDg1MywxMDg1MiwxMDg3MywxMDg3NCwxMDg3NCwxMDg3MywxMDg3NSwxMDg3NiwxMDg3NiwxMDg3NSwxMDg3NywxMDg3OCwxMDg3OCwxMDg3NywxMDg3OSwxMDg4MCwxMDg4MCwxMDg3OSwxMDg4MSwxMDg4MiwxMDg4MiwxMDg4MSwxMDg4MywxMDg4NCwxMDg4NCwxMDg4MywxMDg4NSwxMDg4NiwxMDg4NiwxMDg4NSwxMDg4NywxMDg4OCwxMDg4OCwxMDg4NywxMDg4OSwxMDg5MCwxMDg5MCwxMDg4OSwxMDg5MSwxMDg5MiwxMDg5MiwxMDg5MSwxMDg5MywxMDg5NCwxMDg5NCwxMDg5MywxMDg5NSwxMDg5NiwxMDg5NiwxMDg5NSwxMDg5NywxMDg5OCwxMDg5OCwxMDg5NywxMDg5OSwxMDkwMCwxMDkwMCwxMDg5OSwxMDkwMSwxMDkwMiwxMDkwMiwxMDkwMSwxMDkwMywxMDkwNCwxMDkwNCwxMDkwMywxMDkwNSwxMDkwNiwxMDkwNiwxMDkwNSwxMDkwNywxMDkwOCwxMDkwOCwxMDkwNywxMDkwOSwxMDkxMCwxMDkxMCwxMDkwOSwxMDkxMSwxMDkxMiwxMDkxMiwxMDkxMSwxMDkxMywxMDkxNCwxMDkxNCwxMDkxMywxMDkxOCwxMDkxOSwxMDkxOSwxMDkxOCwxMDkyMCwxMDkyMSwxMDkyMSwxMDkyMCwxMDkyMiwxMDkyMywxMDkyMywxMDkyMiwxMDkyNCwxMDkyNSwxMDkyNSwxMDkyNCwxMDkyNywxMDkyOCwxMDkyOCwxMDkyNywxMDkyOSwxMDkzMCwxMDkzMCwxMDkyOSwxMDkzMSwxMDkzMiwxMDkzMiwxMDkzMSwxMDkzMywxMDkzNCwxMDkzNCwxMDkzMywxMDkzNSwxMDkzNiwxMDkzNiwxMDkzNSwxMDkzNywxMDkzOCwxMDkzOCwxMDkzNywxMDkzOSwxMDk0MCwxMDk0MCwxMDkzOSwxMDk0MSwxMDk0MiwxMDk0MiwxMDk0MSwxMDk0MywxMDk0NCwxMDk0NCwxMDk0MywxMDk0NSwxMDk0NiwxMDk0NiwxMDk0NSwxMDk0NywxMDk0OCwxMDk0OCwxMDk0NywxMDk0OSwxMDk1MCwxMDk1MCwxMDk0OSwxMDk1MSwxMDk1MiwxMDk1MiwxMDk1MSwxMDk1MywxMDk1NCwxMDk1NCwxMDk1MywxMDk1NSwxMDk1NiwxMDk1NiwxMDk1NSwxMDk1NywxMDk1OCwxMDk1OCwxMDk1NywxMDk1OSwxMDk2MCwxMDk2MCwxMDk1OSwxMDk2MSwxMDk2MiwxMDk2MiwxMDk2MSwxMDk2MywxMDk2NCwxMDk2NCwxMDk2MywxMDk2NSwxMDk2NiwxMDk2NiwxMDk2NSwxMDk3NCw4ODcwLDEwOTc5LDg4NzMsMTA5ODAsODg3MiwxMDk4MSw4ODc1LDEwOTg4LDEwOTg5LDEwOTg5LDEwOTg4LDEwOTkwLDg3NDAsMTA5OTksMTFlMywxMWUzLDEwOTk5LDExMDAxLDExMDAyLDExMDAyLDExMDAxLDExMjYyLDg3MzUsMTE3NzgsMTE3NzksMTE3NzksMTE3NzgsMTE3ODAsMTE3ODEsMTE3ODEsMTE3ODAsMTE3ODUsMTE3ODYsMTE3ODYsMTE3ODUsMTE3ODgsMTE3ODksMTE3ODksMTE3ODgsMTE4MDQsMTE4MDUsMTE4MDUsMTE4MDQsMTE4MDgsMTE4MDksMTE4MDksMTE4MDgsMTE4MTAsMTE4MTEsMTE4MTEsMTE4MTAsMTE4MTIsMTE4MTMsMTE4MTMsMTE4MTIsMTE4MTQsMTE4MTUsMTE4MTUsMTE4MTQsMTE4MTYsMTE4MTcsMTE4MTcsMTE4MTYsMTE4NjEsMTE4NjIsMTE4NjIsMTE4NjEsMTE4NjMsMTE4NjQsMTE4NjQsMTE4NjMsMTE4NjUsMTE4NjYsMTE4NjYsMTE4NjUsMTE4NjcsMTE4NjgsMTE4NjgsMTE4NjcsMTIyOTYsMTIyOTcsMTIyOTcsMTIyOTYsMTIyOTgsMTIyOTksMTIyOTksMTIyOTgsMTIzMDAsMTIzMDEsMTIzMDEsMTIzMDAsMTIzMDIsMTIzMDMsMTIzMDMsMTIzMDIsMTIzMDQsMTIzMDUsMTIzMDUsMTIzMDQsMTIzMDgsMTIzMDksMTIzMDksMTIzMDgsMTIzMTAsMTIzMTEsMTIzMTEsMTIzMTAsMTIzMTIsMTIzMTMsMTIzMTMsMTIzMTIsMTIzMTQsMTIzMTUsMTIzMTUsMTIzMTQsNjUxMTMsNjUxMTQsNjUxMTQsNjUxMTMsNjUxMTUsNjUxMTYsNjUxMTYsNjUxMTUsNjUxMTcsNjUxMTgsNjUxMTgsNjUxMTcsNjUxMjQsNjUxMjUsNjUxMjUsNjUxMjQsNjUyODgsNjUyODksNjUyODksNjUyODgsNjUzMDgsNjUzMTAsNjUzMTAsNjUzMDgsNjUzMzksNjUzNDEsNjUzNDEsNjUzMzksNjUzNzEsNjUzNzMsNjUzNzMsNjUzNzEsNjUzNzUsNjUzNzYsNjUzNzYsNjUzNzUsNjUzNzgsNjUzNzksNjUzNzksNjUzNzhdLGZ3PVs0MCw0MSwwLDQxLDQwLDEsOTEsOTMsMCw5Myw5MSwxLDEyMywxMjUsMCwxMjUsMTIzLDEsMzg5OCwzODk5LDAsMzg5OSwzODk4LDEsMzkwMCwzOTAxLDAsMzkwMSwzOTAwLDEsNTc4Nyw1Nzg4LDAsNTc4OCw1Nzg3LDEsODI2MSw4MjYyLDAsODI2Miw4MjYxLDEsODMxNyw4MzE4LDAsODMxOCw4MzE3LDEsODMzMyw4MzM0LDAsODMzNCw4MzMzLDEsODk2OCw4OTY5LDAsODk2OSw4OTY4LDEsODk3MCw4OTcxLDAsODk3MSw4OTcwLDEsOTAwMSw5MDAyLDAsOTAwMiw5MDAxLDEsMTAwODgsMTAwODksMCwxMDA4OSwxMDA4OCwxLDEwMDkwLDEwMDkxLDAsMTAwOTEsMTAwOTAsMSwxMDA5MiwxMDA5MywwLDEwMDkzLDEwMDkyLDEsMTAwOTQsMTAwOTUsMCwxMDA5NSwxMDA5NCwxLDEwMDk2LDEwMDk3LDAsMTAwOTcsMTAwOTYsMSwxMDA5OCwxMDA5OSwwLDEwMDk5LDEwMDk4LDEsMTAxMDAsMTAxMDEsMCwxMDEwMSwxMDEwMCwxLDEwMTgxLDEwMTgyLDAsMTAxODIsMTAxODEsMSwxMDIxNCwxMDIxNSwwLDEwMjE1LDEwMjE0LDEsMTAyMTYsMTAyMTcsMCwxMDIxNywxMDIxNiwxLDEwMjE4LDEwMjE5LDAsMTAyMTksMTAyMTgsMSwxMDIyMCwxMDIyMSwwLDEwMjIxLDEwMjIwLDEsMTAyMjIsMTAyMjMsMCwxMDIyMywxMDIyMiwxLDEwNjI3LDEwNjI4LDAsMTA2MjgsMTA2MjcsMSwxMDYyOSwxMDYzMCwwLDEwNjMwLDEwNjI5LDEsMTA2MzEsMTA2MzIsMCwxMDYzMiwxMDYzMSwxLDEwNjMzLDEwNjM0LDAsMTA2MzQsMTA2MzMsMSwxMDYzNSwxMDYzNiwwLDEwNjM2LDEwNjM1LDEsMTA2MzcsMTA2NDAsMCwxMDYzOCwxMDYzOSwxLDEwNjM5LDEwNjM4LDAsMTA2NDAsMTA2MzcsMSwxMDY0MSwxMDY0MiwwLDEwNjQyLDEwNjQxLDEsMTA2NDMsMTA2NDQsMCwxMDY0NCwxMDY0MywxLDEwNjQ1LDEwNjQ2LDAsMTA2NDYsMTA2NDUsMSwxMDY0NywxMDY0OCwwLDEwNjQ4LDEwNjQ3LDEsMTA3MTIsMTA3MTMsMCwxMDcxMywxMDcxMiwxLDEwNzE0LDEwNzE1LDAsMTA3MTUsMTA3MTQsMSwxMDc0OCwxMDc0OSwwLDEwNzQ5LDEwNzQ4LDEsMTE4MTAsMTE4MTEsMCwxMTgxMSwxMTgxMCwxLDExODEyLDExODEzLDAsMTE4MTMsMTE4MTIsMSwxMTgxNCwxMTgxNSwwLDExODE1LDExODE0LDEsMTE4MTYsMTE4MTcsMCwxMTgxNywxMTgxNiwxLDExODYxLDExODYyLDAsMTE4NjIsMTE4NjEsMSwxMTg2MywxMTg2NCwwLDExODY0LDExODYzLDEsMTE4NjUsMTE4NjYsMCwxMTg2NiwxMTg2NSwxLDExODY3LDExODY4LDAsMTE4NjgsMTE4NjcsMSwxMjI5NiwxMjI5NywwLDEyMjk3LDEyMjk2LDEsMTIyOTgsMTIyOTksMCwxMjI5OSwxMjI5OCwxLDEyMzAwLDEyMzAxLDAsMTIzMDEsMTIzMDAsMSwxMjMwMiwxMjMwMywwLDEyMzAzLDEyMzAyLDEsMTIzMDQsMTIzMDUsMCwxMjMwNSwxMjMwNCwxLDEyMzA4LDEyMzA5LDAsMTIzMDksMTIzMDgsMSwxMjMxMCwxMjMxMSwwLDEyMzExLDEyMzEwLDEsMTIzMTIsMTIzMTMsMCwxMjMxMywxMjMxMiwxLDEyMzE0LDEyMzE1LDAsMTIzMTUsMTIzMTQsMSw2NTExMyw2NTExNCwwLDY1MTE0LDY1MTEzLDEsNjUxMTUsNjUxMTYsMCw2NTExNiw2NTExNSwxLDY1MTE3LDY1MTE4LDAsNjUxMTgsNjUxMTcsMSw2NTI4OCw2NTI4OSwwLDY1Mjg5LDY1Mjg4LDEsNjUzMzksNjUzNDEsMCw2NTM0MSw2NTMzOSwxLDY1MzcxLDY1MzczLDAsNjUzNzMsNjUzNzEsMSw2NTM3NSw2NTM3NiwwLDY1Mzc2LDY1Mzc1LDEsNjUzNzgsNjUzNzksMCw2NTM3OSw2NTM3OCwxXX0pKTtmdW5jdGlvbiBtdyhlKXtsZXQgdD0wLG49bHcubGVuZ3RoLTE7Zm9yKDt0PG47KXtsZXQgcj10K24rMT4+MTtsd1tyXTw9ZT90PXI6bj1yLTF9cmV0dXJuIHV3W3RdfWZ1bmN0aW9uIGh3KGUpe3JldHVybiBjd1ttdyhlKV19ZnVuY3Rpb24gZ3coZSl7cmV0dXJuIHZ3LmdldChlKT8/bnVsbH1mdW5jdGlvbiBfdyhlKXtyZXR1cm4geXcuZ2V0KGUpPz9udWxsfXZhciB2dyx5dyxidz10KCgoKT0+e3B3KCksdnc9KCgpPT57bGV0IGU9bmV3IE1hcDtmb3IobGV0IHQ9MDt0PGR3Lmxlbmd0aDt0Kz0yKWUuc2V0KGR3W3RdLGR3W3QrMV0pO3JldHVybiBlfSkoKSx5dz0oKCk9PntsZXQgZT1uZXcgTWFwO2ZvcihsZXQgdD0wO3Q8ZncubGVuZ3RoO3QrPTMpZS5zZXQoZndbdF0se3BhaXI6ZndbdCsxXSx0eXBlOmZ3W3QrMl09PT0wP2BvYDpgY2B9KTtyZXR1cm4gZX0pKCl9KSk7ZnVuY3Rpb24geHcoZSx0LG4pe2xldCByPTA7Zm9yKGxldCBpPXQ7aTxuO2krKyl7bGV0IHQ9ZVtpXTtpZihBdyh0KSlyKys7ZWxzZSBpZih0PT09YFBESWApcj4wJiZyLS07ZWxzZSBpZihyPT09MCl7aWYodD09PWBMYClyZXR1cm4gMDtpZih0PT09YFJgfHx0PT09YEFMYClyZXR1cm4gMX19cmV0dXJuIDB9ZnVuY3Rpb24gU3coZSl7bGV0IHQ9ZS5sZW5ndGgsbj1uZXcgSW50MzJBcnJheSh0KS5maWxsKHQpLHI9bmV3IEludDMyQXJyYXkodCkuZmlsbCgtMSksaT1bXTtmb3IobGV0IGE9MDthPHQ7YSsrKXtsZXQgdD1lW2FdO2lmKEF3KHQpKWkucHVzaChhKTtlbHNlIGlmKHQ9PT1gUERJYCYmaS5sZW5ndGgpe2xldCBlPWkucG9wKCk7bltlXT1hLHJbYV09ZX19cmV0dXJue3BkaU9mOm4saW5pdE9mOnJ9fWZ1bmN0aW9uIEN3KGUsdCxuKXtsZXQgcj1lLmxlbmd0aCxpPUFycmF5KHIpLmZpbGwodCksYT1lLnNsaWNlKCksbz1be2xldmVsOnQsb3ZlcnJpZGU6YG5ldXRyYWxgLGlzb2xhdGU6ITF9XSxzPTAsYz0wLGw9MCx1PSgpPT5vW28ubGVuZ3RoLTFdO2ZvcihsZXQgZD0wO2Q8cjtkKyspe2xldCByPWVbZF07c3dpdGNoKHIpe2Nhc2VgUkxFYDpjYXNlYExSRWA6Y2FzZWBSTE9gOmNhc2VgTFJPYDp7aVtkXT11KCkubGV2ZWw7bGV0IGU9cj09PWBSTEVgfHxyPT09YFJMT2A/TXcodSgpLmxldmVsKTpOdyh1KCkubGV2ZWwpO2U8PTEyNSYmcz09PTAmJmM9PT0wP28ucHVzaCh7bGV2ZWw6ZSxvdmVycmlkZTpyPT09YFJMT2A/YFJgOnI9PT1gTFJPYD9gTGA6YG5ldXRyYWxgLGlzb2xhdGU6ITF9KTpzPT09MCYmYysrO2JyZWFrfWNhc2VgUkxJYDpjYXNlYExSSWA6Y2FzZWBGU0lgOntpW2RdPXUoKS5sZXZlbDtsZXQgdD11KCkub3ZlcnJpZGU7dCE9PWBuZXV0cmFsYCYmKGFbZF09dCk7bGV0IGY7Zj1yPT09YFJMSWA/YFJgOnI9PT1gTFJJYD9gTGA6eHcoZSxkKzEsbltkXSk9PT0xP2BSYDpgTGA7bGV0IHA9Zj09PWBSYD9Ndyh1KCkubGV2ZWwpOk53KHUoKS5sZXZlbCk7cDw9MTI1JiZzPT09MCYmYz09PTA/KGwrKyxvLnB1c2goe2xldmVsOnAsb3ZlcnJpZGU6YG5ldXRyYWxgLGlzb2xhdGU6ITB9KSk6cysrO2JyZWFrfWNhc2VgUERJYDppZihzPjApcy0tO2Vsc2UgaWYobD4wKXtmb3IoYz0wOyF1KCkuaXNvbGF0ZTspby5wb3AoKTtvLnBvcCgpLGwtLX17aVtkXT11KCkubGV2ZWw7bGV0IGU9dSgpLm92ZXJyaWRlO2UhPT1gbmV1dHJhbGAmJihhW2RdPWUpfWJyZWFrO2Nhc2VgUERGYDppW2RdPXUoKS5sZXZlbCxzPjB8fChjPjA/Yy0tOiF1KCkuaXNvbGF0ZSYmby5sZW5ndGg+PTImJm8ucG9wKCkpO2JyZWFrO2Nhc2VgQmA6by5sZW5ndGg9MSxzPTAsYz0wLGw9MCxpW2RdPXQ7YnJlYWs7Y2FzZWBCTmA6aVtkXT11KCkubGV2ZWw7YnJlYWs7ZGVmYXVsdDp7aVtkXT11KCkubGV2ZWw7bGV0IGU9dSgpLm92ZXJyaWRlO2UhPT1gbmV1dHJhbGAmJihhW2RdPWUpO2JyZWFrfX19cmV0dXJue2xldmVsczppLHR5cGVzOmF9fWZ1bmN0aW9uIHd3KGUpe3JldHVybiBlPT09OTAwMT8xMjI5NjplPT09OTAwMj8xMjI5NzplfWZ1bmN0aW9uIFR3KGUsdCxuLHIsaSxhKXtsZXQgbz1lLmxlbmd0aCxzPVtdO2ZvcihsZXQgZT0wO2U8bztlKyspbltlXXx8cy5wdXNoKGUpO2xldCBjPVtdO2ZvcihsZXQgZT0wO2U8cy5sZW5ndGg7ZSsrKXtsZXQgbj1zW2VdO2U9PT0wfHx0W25dIT09dFtzW2UtMV1dP2MucHVzaChbbl0pOmNbYy5sZW5ndGgtMV0ucHVzaChuKX1sZXQgbD1uZXcgTWFwO2ZvcihsZXQgZSBvZiBjKWwuc2V0KGVbMF0sZSk7bGV0IHU9ZT0+ZSYxP2BSYDpgTGAsZD1bXTtmb3IobGV0IHMgb2YgYyl7bGV0IGM9c1swXTtpZihlW2NdPT09YFBESWAmJmFbY10hPT0tMSljb250aW51ZTtsZXQgZj1bXSxwPXM7Zm9yKDs7KXtmb3IobGV0IGUgb2YgcClmLnB1c2goZSk7bGV0IHQ9cFtwLmxlbmd0aC0xXTtpZihBdyhlW3RdKSYmaVt0XSE9PW8pe2xldCBlPWwuZ2V0KGlbdF0pO2lmKGUpe3A9ZTtjb250aW51ZX19YnJlYWt9bGV0IG09dFtmWzBdXSxoPXI7Zm9yKGxldCBlPWZbMF0tMTtlPj0wO2UtLSlpZighbltlXSl7aD10W2VdO2JyZWFrfWxldCBnPXUoTWF0aC5tYXgobSxoKSksXz1mW2YubGVuZ3RoLTFdLHY9cjtpZighKEF3KGVbX10pJiZpW19dPT09bykpe2ZvcihsZXQgZT1fKzE7ZTxvO2UrKylpZighbltlXSl7dj10W2VdO2JyZWFrfX1sZXQgeT11KE1hdGgubWF4KG0sdikpO2QucHVzaCh7aW5kaWNlczpmLGxldmVsOm0sc29zOmcsZW9zOnl9KX1yZXR1cm4gZH1mdW5jdGlvbiBFdyhlLHQsbixyLGkpe2xldCBhPWUuaW5kaWNlcyxvPWEubGVuZ3RoLHtzb3M6cyxlb3M6YyxsZXZlbDpsfT1lO2ZvcihsZXQgZT0wO2U8bztlKyspe2xldCB0PWFbZV07aWYoclt0XT09PWBOU01gKWlmKGU9PT0wKXJbdF09cztlbHNle2xldCBuPXJbYVtlLTFdXTtyW3RdPW49PT1gTFJJYHx8bj09PWBSTElgfHxuPT09YEZTSWB8fG49PT1gUERJYD9gT05gOm59fXtsZXQgZT1zO2ZvcihsZXQgdD0wO3Q8bzt0Kyspe2xldCBuPXJbYVt0XV07bj09PWBSYHx8bj09PWBMYHx8bj09PWBBTGA/ZT1uOm49PT1gRU5gJiZlPT09YEFMYCYmKHJbYVt0XV09YEFOYCl9fWZvcihsZXQgZT0wO2U8bztlKyspclthW2VdXT09PWBBTGAmJihyW2FbZV1dPWBSYCk7Zm9yKGxldCBlPTE7ZTxvLTE7ZSsrKXtsZXQgdD1yW2FbZV1dLG49clthW2UtMV1dLGk9clthW2UrMV1dO3Q9PT1gRVNgJiZuPT09YEVOYCYmaT09PWBFTmB8fHQ9PT1gQ1NgJiZuPT09YEVOYCYmaT09PWBFTmA/clthW2VdXT1gRU5gOnQ9PT1gQ1NgJiZuPT09YEFOYCYmaT09PWBBTmAmJihyW2FbZV1dPWBBTmApfWZvcihsZXQgZT0wO2U8bztlKyspe2lmKHJbYVtlXV0hPT1gRVRgKWNvbnRpbnVlO2xldCB0PWU7Zm9yKDt0PG8mJnJbYVt0XV09PT1gRVRgOyl0Kys7bGV0IG49ZT4wP3JbYVtlLTFdXTpzLGk9dDxvP3JbYVt0XV06YztpZihuPT09YEVOYHx8aT09PWBFTmApZm9yKGxldCBuPWU7bjx0O24rKylyW2Fbbl1dPWBFTmA7ZT10LTF9Zm9yKGxldCBlPTA7ZTxvO2UrKyl7bGV0IHQ9clthW2VdXTsodD09PWBFU2B8fHQ9PT1gRVRgfHx0PT09YENTYCkmJihyW2FbZV1dPWBPTmApfXtsZXQgZT1zO2ZvcihsZXQgdD0wO3Q8bzt0Kyspe2xldCBuPXJbYVt0XV07bj09PWBSYHx8bj09PWBMYD9lPW46bj09PWBFTmAmJmU9PT1gTGAmJihyW2FbdF1dPWBMYCl9fWxldCB1PWwmMT9gUmA6YExgLGQ9dT09PWBSYD9gTGA6YFJgLGY9W107e2xldCBlPVtdO291dGVyOmZvcihsZXQgbj0wO248bztuKyspe2xldCBpPWFbbl07aWYocltpXSE9PWBPTmApY29udGludWU7bGV0IG89X3codFtpXSk7aWYobylpZihvLnR5cGU9PT1gb2Ape2lmKGUubGVuZ3RoPT09NjMpYnJlYWsgb3V0ZXI7ZS5wdXNoKHtleHBlY3Q6d3coby5wYWlyKSxwb3M6bn0pfWVsc2V7bGV0IHI9d3codFtpXSk7Zm9yKGxldCB0PWUubGVuZ3RoLTE7dD49MDt0LS0paWYoZVt0XS5leHBlY3Q9PT1yKXtmLnB1c2goe29wZW46ZVt0XS5wb3MsY2xvc2U6bn0pLGUubGVuZ3RoPXQ7YnJlYWt9fX1mLnNvcnQoKGUsdCk9PmUub3Blbi10Lm9wZW4pfWxldCBwPShlLHQpPT57Zm9yKGxldCBpPWUrMTtpPG8mJm5bYVtpXV09PT1gTlNNYDtpKyspclthW2ldXT10fTtmb3IobGV0e29wZW46ZSxjbG9zZTp0fW9mIGYpe2xldCBuPSExLGk9ITE7Zm9yKGxldCBvPWUrMTtvPHQ7bysrKXtsZXQgZT1QdyhyW2Fbb11dKTtlPT09dT9uPSEwOmU9PT1kJiYoaT0hMCl9bGV0IG89bnVsbDtpZihuKW89dTtlbHNlIGlmKGkpe2xldCB0PXM7Zm9yKGxldCBuPWUtMTtuPj0wO24tLSl7bGV0IGU9UHcoclthW25dXSk7aWYoZSl7dD1lO2JyZWFrfX1vPXQ9PT1kP2Q6dX1vJiYoclthW2VdXT1vLHJbYVt0XV09byxwKGUsbykscCh0LG8pKX1mb3IobGV0IGU9MDtlPG87ZSsrKXtpZighancoclthW2VdXSkpY29udGludWU7bGV0IHQ9ZTtmb3IoO3Q8byYmancoclthW3RdXSk7KXQrKztsZXQgbj1lPjA/UHcoclthW2UtMV1dKTpzLGk9dDxvP1B3KHJbYVt0XV0pOmM7aWYobiYmaSYmbj09PWkpZm9yKGxldCBpPWU7aTx0O2krKylyW2FbaV1dPW47ZT10LTF9Zm9yKGxldCBlPTA7ZTxvO2UrKylqdyhyW2FbZV1dKSYmKHJbYVtlXV09dSk7Zm9yKGxldCBlPTA7ZTxvO2UrKyl7bGV0IHQ9YVtlXSxuPXJbdF07bCYxPyhuPT09YExgfHxuPT09YEVOYHx8bj09PWBBTmApJiYoaVt0XSs9MSk6bj09PWBSYD9pW3RdKz0xOihuPT09YEFOYHx8bj09PWBFTmApJiYoaVt0XSs9Mil9fWZ1bmN0aW9uIER3KGUsdCxuKXtsZXQgcj1lLmxlbmd0aCxpPUFycmF5KHIpO2ZvcihsZXQgdD0wO3Q8cjt0KyspaVt0XT1uPy5bdF0/P2h3KGVbdF0pO2xldCBhPXQ9PT1gcnRsYD8xOnQ9PT1gbHRyYD8wOnh3KGksMCxyKSx7cGRpT2Y6byxpbml0T2Y6c309U3coaSkse2xldmVsczpjLHR5cGVzOmx9PUN3KGksYSxvKSx1PUFycmF5KHIpO2ZvcihsZXQgZT0wO2U8cjtlKyspdVtlXT1rdyhpW2VdKTtsZXQgZD1UdyhpLGMsdSxhLG8scyksZj1sLnNsaWNlKCk7Zm9yKGxldCB0IG9mIGQpRXcodCxlLGksZixjKTtsZXQgcD1lPT57bGV0IHQ9aVtlXTtyZXR1cm4gdD09PWBXU2B8fEF3KHQpfHx0PT09YFBESWB8fHVbZV19O2ZvcihsZXQgZT0wO2U8cjtlKyspe2xldCB0PWlbZV07aWYodD09PWBCYHx8dD09PWBTYCl7Y1tlXT1hO2ZvcihsZXQgdD1lLTE7dD49MCYmcCh0KTt0LS0pdVt0XXx8KGNbdF09YSl9fWZvcihsZXQgZT1yLTE7ZT49MCYmcChlKTtlLS0pdVtlXXx8KGNbZV09YSk7Zm9yKGxldCBlPTA7ZTxyO2UrKyl1W2VdJiYoY1tlXT0tMSk7cmV0dXJue2xldmVsczpjLHBhcmFncmFwaExldmVsOmF9fWZ1bmN0aW9uIE93KGUsdCxuKXtsZXQgcj1bXTtmb3IobGV0IGk9dDtpPG47aSsrKXtsZXQgdD1lW2ldO3Q+PTAmJnQ8PTEyNiYmci5wdXNoKGkpfWlmKHIubGVuZ3RoPT09MClyZXR1cm4gcjtsZXQgaT0wLGE9MTI3O2ZvcihsZXQgdCBvZiByKXtsZXQgbj1lW3RdO24+aSYmKGk9biksbiYxJiZuPGEmJihhPW4pfWZvcihsZXQgdD1pO3Q+PWE7dC0tKXtsZXQgbj0wO2Zvcig7bjxyLmxlbmd0aDspaWYoZVtyW25dXT49dCl7bGV0IGk9bisxO2Zvcig7aTxyLmxlbmd0aCYmZVtyW2ldXT49dDspaSsrO2ZvcihsZXQgZT1uLHQ9aS0xO2U8dDtlKyssdC0tKXtsZXQgbj1yW2VdO3JbZV09clt0XSxyW3RdPW59bj1pfWVsc2UgbisrfXJldHVybiByfXZhciBrdyxBdyxqdyxNdyxOdyxQdyxGdz10KCgoKT0+e2J3KCksa3c9ZT0+ZT09PWBSTEVgfHxlPT09YExSRWB8fGU9PT1gUkxPYHx8ZT09PWBMUk9gfHxlPT09YFBERmB8fGU9PT1gQk5gLEF3PWU9PmU9PT1gTFJJYHx8ZT09PWBSTElgfHxlPT09YEZTSWAsanc9ZT0+ZT09PWBCYHx8ZT09PWBTYHx8ZT09PWBXU2B8fGU9PT1gT05gfHxlPT09YEZTSWB8fGU9PT1gTFJJYHx8ZT09PWBSTElgfHxlPT09YFBESWAsTXc9ZT0+ZSYxP2UrMjplKzEsTnc9ZT0+ZSYxP2UrMTplKzIsUHc9ZT0+ZT09PWBMYD9gTGA6ZT09PWBSYHx8ZT09PWBFTmB8fGU9PT1gQU5gP2BSYDpudWxsfSkpO2Z1bmN0aW9uIEl3KGUpe2xldCB0PVtdLG49W10scj1bXTtmb3IobGV0IGk9MDtpPGUubGVuZ3RoOyl7bGV0IGE9ZS5jb2RlUG9pbnRBdChpKSxvPWE+NjU1MzU/MjoxO3QucHVzaChhKSxuLnB1c2gobyksci5wdXNoKGkpLGkrPW99cmV0dXJue2Nwczp0LHVuaXRzOm4sc3RhcnRzOnJ9fWZ1bmN0aW9uIEx3KCl7cmV0dXJuIG5ldyBSd312YXIgUncsenc9dCgoKCk9PntzdygpLGJ3KCksRncoKSxSdz1jbGFzc3tjb21wdXRlTGV2ZWxzKGUsdCxuKXtsZXR7Y3BzOnIsdW5pdHM6aSxzdGFydHM6YX09SXcoZSkse2xldmVsczpvLHBhcmFncmFwaExldmVsOnN9PUR3KHIsdCxuP3IubWFwKChlLHQpPT5uW2FbdF1dPz9udWxsKTp2b2lkIDApLGM9bmV3IFVpbnQ4QXJyYXkoZS5sZW5ndGgpLGw9MDtmb3IobGV0IGU9MDtlPG8ubGVuZ3RoO2UrKyl7bGV0IHQ9b1tlXT09PS0xPzI1NTpvW2VdO2ZvcihsZXQgbj0wO248aVtlXTtuKyspY1tsKytdPXR9cmV0dXJue2xldmVsczpjLHBhcmFncmFwaExldmVsOnN9fXJlb3JkZXJWaXN1YWwoZSx0LG4pe3JldHVybiBPdyhlLHQsbil9Z2V0TWlycm9yKGUpe3JldHVybiBndyhlKX19fSkpO2Z1bmN0aW9uIEJ3KCl7cmV0dXJuIFZ3PT09bnVsbCYmKFZ3PUx3KCkpLFZ3fXZhciBWdyxIdz10KCgoKT0+e3p3KCksVnc9bnVsbH0pKTtmdW5jdGlvbiBVdyhlLHQpe3JldHVybiBlPT09ITA/YHJ0bGA6ZT09PSExP2BsdHJgOkJ3KCkuY29tcHV0ZUxldmVscyh0LGBhdXRvYCkucGFyYWdyYXBoTGV2ZWw9PT0xP2BydGxgOmBsdHJgfXZhciBXdz10KCgoKT0+e0h3KCl9KSk7ZnVuY3Rpb24gR3coZSl7cmV0dXJuIHF3LnRlc3QoZSl9ZnVuY3Rpb24gS3coZSx0LG4pe2xldCByPW4ubGVuZ3RoLGk9bmV3IFVpbnQ4QXJyYXkocik7Zm9yKGxldCBhPTA7YTxyO2ErKyl7bGV0IHI9ZVtuW2FdXTtpW2FdPXI9PT0yNTU/dDpyfXJldHVybntvcmRlcjpCdygpLnJlb3JkZXJWaXN1YWwoaSwwLHIpLHNlZ0xldmVsczppfX12YXIgcXcsSnc9dCgoKCk9PntIdygpLHN3KCkscXc9L1tcdTA1OTAtXHUwOEZGXHVGQjFELVx1RkRGRlx1RkU3MC1cdUZFRkZcdTIwMEZcdTIwMkJcdTIwMkVcdTIwNjddfFtcdXsxMDgwMH0tXHV7MTBGRkZ9XHV7MUU4MDB9LVx1ezFFRkZGfV0vdX0pKSxZdz10KCgoKT0+e3N3KCksSHcoKSxXdygpLEp3KCl9KSk7ZnVuY3Rpb24gWHcoZSl7bGV0IHQ9bmV3IFNldDtmb3IobGV0IG4gb2YgZSl0LmFkZChuLmNvZGVQb2ludEF0KDApKTtyZXR1cm4gdH1mdW5jdGlvbiBadyhlKXtyZXR1cm57ZW5hYmxlZDplPy5raW5zb2t1IT09ITEsbGluZVN0YXJ0Rm9yYmlkZGVuOlh3KGU/Lm5vTGluZUJyZWFrc0JlZm9yZT8/UXcpLGxpbmVFbmRGb3JiaWRkZW46WHcoZT8ubm9MaW5lQnJlYWtzQWZ0ZXI/PyR3KX19dmFyIFF3LCR3LGVULHRUPXQoKCgpPT57UXc9YOKAneKAme+8ieOAle+8ve+9neOAieOAi+OAjeOAj+OAkeOAmeOAl+OAn++9oMK744CB44CC77yM77yO44O777ya77yb77yP77yf77yB4oCQ44O844Kg4oCT44Cc772e44GB44GD44GF44GH44GJ44Gj44KD44KF44KH44KO44KV44KW44Kh44Kj44Kl44Kn44Kp44OD44Oj44Ol44On44Ou44O144O244ew44ex44ey44ez44e044e144e244e344e444e544e644e744e844e944e+44e/44CF44C744Kd44Ke44O944O+44Kb44Kc77yF4oCw4oSDwrDigLLigLPvvaHvvaPvvaTvvaXvvbDvvp7vvp8hKSwuOjs/XX3vvaBgLCR3PWDigJzigJjvvIjjgJTvvLvvvZvjgIjjgIrjgIzjgI7jgJDjgJjjgJbjgJ3vvZ/Cq++8hO+/pe+8g++/oe+/oChbe++9n2AsZVQ9WncoKX0pKTtmdW5jdGlvbiBuVChlLHQsbixyPTEpe2lmKCFuLmVuYWJsZWR8fHQ8PTB8fHQ+PWUubGVuZ3RoKXJldHVybiB0O2xldCBpPXQ9PnQ8ZS5sZW5ndGgmJm4ubGluZVN0YXJ0Rm9yYmlkZGVuLmhhcyhlW3RdLmNvZGVQb2ludEF0KDApKSxhPXQ9PnQ+PTAmJm4ubGluZUVuZEZvcmJpZGRlbi5oYXMoZVt0XS5jb2RlUG9pbnRBdCgwKSksbz10O2Zvcig7bz5yJiYoaShvKXx8YShvLTEpKTspby0tO3JldHVybiBvPD1yJiYoaShvKXx8YShvLTEpKT90Om99dmFyIHJUPXQoKCgpPT57fSkpLGlUPXQoKCgpPT57dFQoKSxyVCgpfSkpO2Z1bmN0aW9uIGFUKGUpe3JldHVybiBlPj0xMjI4OCYmZTw9NDA5NTl8fGU+PTQ0MDMyJiZlPD01NTIwM3x8ZT49NjM3NDQmJmU8PTY0MjU1fHxlPj02NTI4MCYmZTw9NjU1MTl9ZnVuY3Rpb24gb1QoZSl7cmV0dXJuIGU9PT0zMnx8ZT09PTl8fGU9PT0xMHx8ZT09PTEzPyExOiFhVChlKX12YXIgc1Q9dCgoKCk9Pnt9KSksY1QsbFQsdVQsZFQsZlQscFQ9dCgoKCk9PntjVD1gQksuQ00uQ1IuR0wuTEYuTkwuU1AuV0ouWlcuWldKLkFLLkFMLkFQLkFTLkIyLkJBLkJCLkNCLkNMLkNQLkVCLkVNLkVYLkgyLkgzLkhMLkhILkhZLklELklOLklTLkpMLkpULkpWLk5TLk5VLk9QLlBPLlBSLlFVLlJJLlNZLlZGLlZJYC5zcGxpdChgLmApLGxUPVswLDksMTAsMTEsMTMsMTQsMzIsMzMsMzQsMzUsMzYsMzcsMzgsMzksNDAsNDEsNDIsNDMsNDQsNDUsNDYsNDcsNDgsNTgsNjAsNjMsNjQsOTEsOTIsOTMsOTQsMTIzLDEyNCwxMjUsMTI2LDEyNywxMzMsMTM0LDE2MCwxNjEsMTYyLDE2MywxNjYsMTcxLDE3MiwxNzMsMTc0LDE3NiwxNzcsMTc4LDE4MCwxODEsMTg3LDE4OCwxOTEsMTkyLDcxMiw3MTMsNzE2LDcxNyw3MzUsNzM2LDc2OCw4NjAsODY3LDg4MCw4OTQsODk1LDExNTUsMTE2MiwxNDE3LDE0MTgsMTQxOSwxNDIzLDE0MjQsMTQyNSwxNDcwLDE0NzEsMTQ3MiwxNDczLDE0NzUsMTQ3NiwxNDc4LDE0NzksMTQ4MCwxNDg4LDE1MTUsMTUxOSwxNTIzLDE1MzYsMTU0MiwxNTQ1LDE1NDgsMTU1MCwxNTUyLDE1NjMsMTU2NCwxNTY1LDE1NjgsMTYxMSwxNjMyLDE2NDIsMTY0MywxNjQ1LDE2NDgsMTY0OSwxNzQ4LDE3NDksMTc1MCwxNzU3LDE3NTgsMTc1OSwxNzY1LDE3NjcsMTc2OSwxNzcwLDE3NzQsMTc3NiwxNzg2LDE4MDksMTgxMCwxODQwLDE4NjcsMTk1OCwxOTY5LDE5ODQsMTk5NCwyMDI3LDIwMzYsMjA0MCwyMDQxLDIwNDIsMjA0NSwyMDQ2LDIwNDgsMjA3MCwyMDc0LDIwNzUsMjA4NCwyMDg1LDIwODgsMjA4OSwyMDk0LDIxMzcsMjE0MCwyMTkyLDIxOTQsMjE5OSwyMjA4LDIyNTAsMjI3NCwyMjc1LDIzMDgsMjM2MiwyMzY1LDIzNjYsMjM4NCwyMzg1LDIzOTIsMjQwMiwyNDA0LDI0MDYsMjQxNiwyNDMzLDI0MzYsMjQ5MiwyNDkzLDI0OTQsMjUwMSwyNTAzLDI1MDUsMjUwNywyNTEwLDI1MTksMjUyMCwyNTMwLDI1MzIsMjUzNCwyNTQ0LDI1NDYsMjU0OCwyNTUzLDI1NTQsMjU1NSwyNTU2LDI1NTgsMjU1OSwyNTYxLDI1NjQsMjYyMCwyNjIxLDI2MjIsMjYyNywyNjMxLDI2MzMsMjYzNSwyNjM4LDI2NDEsMjY0MiwyNjYyLDI2NzIsMjY3NCwyNjc3LDI2NzgsMjY4OSwyNjkyLDI3NDgsMjc0OSwyNzUwLDI3NTgsMjc1OSwyNzYyLDI3NjMsMjc2NiwyNzg2LDI3ODgsMjc5MCwyODAwLDI4MDEsMjgwMiwyODEwLDI4MTYsMjgxNywyODIwLDI4NzYsMjg3NywyODc4LDI4ODUsMjg4NywyODg5LDI4OTEsMjg5NCwyOTAxLDI5MDQsMjkxNCwyOTE2LDI5MTgsMjkyOCwyOTQ2LDI5NDcsMzAwNiwzMDExLDMwMTQsMzAxNywzMDE4LDMwMjIsMzAzMSwzMDMyLDMwNDYsMzA1NiwzMDY1LDMwNjYsMzA3MiwzMDc3LDMxMzIsMzEzMywzMTM0LDMxNDEsMzE0MiwzMTQ1LDMxNDYsMzE1MCwzMTU3LDMxNTksMzE3MCwzMTcyLDMxNzQsMzE4NCwzMTkxLDMxOTIsMzIwMSwzMjA0LDMyMDUsMzI2MCwzMjYxLDMyNjIsMzI2OSwzMjcwLDMyNzMsMzI3NCwzMjc4LDMyODUsMzI4NywzMjk4LDMzMDAsMzMwMiwzMzEyLDMzMTUsMzMxNiwzMzI4LDMzMzIsMzM4NywzMzg5LDMzOTAsMzM5NywzMzk4LDM0MDEsMzQwMiwzNDA2LDM0MTUsMzQxNiwzNDI2LDM0MjgsMzQzMCwzNDQwLDM0NDksMzQ1MCwzNDU3LDM0NjAsMzUzMCwzNTMxLDM1MzUsMzU0MSwzNTQyLDM1NDMsMzU0NCwzNTUyLDM1NTgsMzU2OCwzNTcwLDM1NzIsMzYzMywzNjM0LDM2MzYsMzY0MywzNjQ3LDM2NDgsMzY1NSwzNjYzLDM2NjQsMzY3NCwzNjc2LDM3NjEsMzc2MiwzNzY0LDM3NzMsMzc4NCwzNzkxLDM3OTIsMzgwMiwzODQxLDM4NDUsMzg0NiwzODQ4LDM4NDksMzg1MSwzODUyLDM4NTMsMzg1OCwzODU5LDM4NjAsMzg2MSwzODY0LDM4NjYsMzg3MiwzODgyLDM4OTIsMzg5MywzODk0LDM4OTUsMzg5NiwzODk3LDM4OTgsMzg5OSwzOTAwLDM5MDEsMzkwMiwzOTA0LDM5NTMsMzk2NywzOTY4LDM5NzMsMzk3NCwzOTc2LDM5ODEsMzk5MiwzOTkzLDQwMjksNDAzMCw0MDMyLDQwMzgsNDAzOSw0MDQ4LDQwNTAsNDA1MSw0MDUyLDQwNTcsNDA1OSw0MTM5LDQxNTksNDE2MCw0MTcwLDQxNzIsNDE4Miw0MTg2LDQxOTAsNDE5Myw0MTk0LDQxOTcsNDE5OSw0MjA2LDQyMDksNDIxMyw0MjI2LDQyMzgsNDIzOSw0MjQwLDQyNTAsNDI1NCw0MzUyLDQ0NDgsNDUyMCw0NjA4LDQ5NTcsNDk2MCw0OTYxLDQ5NjIsNTEyMCw1MTIxLDU3NjAsNTc2MSw1Nzg3LDU3ODgsNTc4OSw1ODY3LDU4NzAsNTkwNiw1OTEwLDU5MzgsNTk0MSw1OTQzLDU5NzAsNTk3Miw2MDAyLDYwMDQsNjA2OCw2MTAwLDYxMDIsNjEwMyw2MTA0LDYxMDUsNjEwNiw2MTA3LDYxMDgsNjEwOSw2MTEwLDYxMTIsNjEyMiw2MTQ2LDYxNDgsNjE1MCw2MTUxLDYxNTIsNjE1NCw2MTU1LDYxNTgsNjE1OSw2MTYwLDYxNzAsNjI3Nyw2Mjc5LDYzMTMsNjMxNCw2NDMyLDY0NDQsNjQ0OCw2NDYwLDY0NjgsNjQ3MCw2NDgwLDY2MDgsNjYxOSw2Njc5LDY2ODQsNjc0MSw2NzUxLDY3NTIsNjc4MSw2NzgzLDY3ODQsNjc5NCw2ODAwLDY4MTAsNjgzMiw2ODc4LDY4ODAsNjg5MSw2ODkyLDY5MTIsNjkxNyw2OTY0LDY5ODAsNjk4MSw2OTg5LDY5OTAsNjk5Miw3MDAyLDcwMDQsNzAwNSw3MDA5LDcwMTksNzAyOCw3MDM3LDcwNDAsNzA0Myw3MDczLDcwODYsNzA4OCw3MDk4LDcxMDQsNzE0Miw3MTU0LDcxNTYsNzIwNCw3MjI0LDcyMjcsNzIzMiw3MjQyLDcyNDgsNzI1OCw3Mjk0LDcyOTYsNzM3Niw3Mzc5LDczODAsNzQwMSw3NDA1LDc0MDYsNzQxMiw3NDEzLDc0MTUsNzQxOCw3NjE2LDc2MjksNzYzMCw3Njc2LDc2NzcsNzY4MCw4MTg5LDgxOTAsODE5Miw4MTk5LDgyMDAsODIwMyw4MjA0LDgyMDUsODIwNiw4MjA4LDgyMDksODIxMCw4MjEyLDgyMTMsODIxNiw4MjE4LDgyMTksODIyMiw4MjIzLDgyMjQsODIyOCw4MjMxLDgyMzIsODIzNCw4MjM5LDgyNDAsODI0OCw4MjQ5LDgyNTEsODI1Miw4MjU0LDgyNjAsODI2MSw4MjYyLDgyNjMsODI2Niw4Mjc4LDgyNzksODI4MCw4Mjg0LDgyODUsODI4OCw4Mjg5LDgyOTQsODMwNCw4MzE3LDgzMTgsODMxOSw4MzMzLDgzMzQsODMzNSw4MzUyLDgzNTksODM2MCw4Mzc0LDgzNzUsODM3OSw4MzgwLDgzODIsODM4Myw4Mzg0LDgzODUsODQwMCw4NDMzLDg0NTEsODQ1Miw4NDU3LDg0NTgsODQ3MCw4NDcxLDg3MjIsODcyNCw4OTQzLDg5NDQsODk2OCw4OTY5LDg5NzAsODk3MSw4OTcyLDg5ODYsODk4OCw5MDAxLDkwMDIsOTAwMyw5MjAwLDkyMDQsOTcyOCw5NzMyLDk3NDgsOTc1MCw5NzUyLDk3NTMsOTc1NCw5NzU3LDk3NTgsOTc2MCw5Nzg1LDk3ODgsOTgzMiw5ODMzLDk4NTUsOTg1Niw5OTE3LDk5MjksOTkzMyw5OTM0LDk5MzUsOTkzOCw5OTM5LDk5NDEsOTk0NCw5OTQ2LDk5NDgsOTk0OSw5OTUxLDk5NTQsOTk2Miw5OTYzLDk5NjksOTk3NCw5OTc1LDk5NzcsOTk3OCw5OTc5LDk5ODEsOTk4OSw5OTkyLDk5OTQsOTk5OCwxMDA3NSwxMDA4MSwxMDA4MiwxMDA4NCwxMDA4NSwxMDA4OCwxMDA4OSwxMDA5MCwxMDA5MSwxMDA5MiwxMDA5MywxMDA5NCwxMDA5NSwxMDA5NiwxMDA5NywxMDA5OCwxMDA5OSwxMDEwMCwxMDEwMSwxMDEwMiwxMDE4MSwxMDE4MiwxMDE4MywxMDIxNCwxMDIxNSwxMDIxNiwxMDIxNywxMDIxOCwxMDIxOSwxMDIyMCwxMDIyMSwxMDIyMiwxMDIyMywxMDIyNCwxMDI0MCwxMDI0MSwxMDYyNywxMDYyOCwxMDYyOSwxMDYzMCwxMDYzMSwxMDYzMiwxMDYzMywxMDYzNCwxMDYzNSwxMDYzNiwxMDYzNywxMDYzOCwxMDYzOSwxMDY0MCwxMDY0MSwxMDY0MiwxMDY0MywxMDY0NCwxMDY0NSwxMDY0NiwxMDY0NywxMDY0OCwxMDY0OSwxMDcxMiwxMDcxMywxMDcxNCwxMDcxNSwxMDcxNiwxMDc0OCwxMDc0OSwxMDc1MCwxMTUwMywxMTUwNiwxMTUxMywxMTUxNCwxMTUxNywxMTUxOCwxMTUxOSwxMTUyMCwxMTYzMiwxMTYzMywxMTY0NywxMTY0OCwxMTc0NCwxMTc3NiwxMTc5MCwxMTc5OCwxMTc5OSwxMTgwMCwxMTgwMSwxMTgwMiwxMTgwNCwxMTgwNiwxMTgwOCwxMTgxMCwxMTgxMSwxMTgxMiwxMTgxMywxMTgxNCwxMTgxNSwxMTgxNiwxMTgxNywxMTgxOCwxMTgyMiwxMTgyMywxMTgyNCwxMTgyNiwxMTgyNywxMTgyOSwxMTgzNCwxMTgzNiwxMTgzOSwxMTg0MCwxMTg0MSwxMTg0MiwxMTg0MywxMTg1MSwxMTg1MiwxMTg1MywxMTg1NCwxMTg1NiwxMTg1OSwxMTg2MSwxMTg2MiwxMTg2MywxMTg2NCwxMTg2NSwxMTg2NiwxMTg2NywxMTg2OCwxMTg2OSwxMTg3MCwxMTkwNCwxMTkzMCwxMTkzMSwxMjAyMCwxMjAzMiwxMjI0NiwxMjI3MiwxMjI4OCwxMjI4OSwxMjI5MSwxMjI5MywxMjI5NCwxMjI5NiwxMjI5NywxMjI5OCwxMjI5OSwxMjMwMCwxMjMwMSwxMjMwMiwxMjMwMywxMjMwNCwxMjMwNSwxMjMwNiwxMjMwOCwxMjMwOSwxMjMxMCwxMjMxMSwxMjMxMiwxMjMxMywxMjMxNCwxMjMxNSwxMjMxNiwxMjMxNywxMjMxOCwxMjMyMCwxMjMzMCwxMjMzNiwxMjM0MSwxMjM0MiwxMjM0NywxMjM0OSwxMjM1MiwxMjM1MywxMjM1NCwxMjM1NSwxMjM1NiwxMjM1NywxMjM1OCwxMjM1OSwxMjM2MCwxMjM2MSwxMjM2MiwxMjM4NywxMjM4OCwxMjQxOSwxMjQyMCwxMjQyMSwxMjQyMiwxMjQyMywxMjQyNCwxMjQzMCwxMjQzMSwxMjQzNywxMjQzOSwxMjQ0MSwxMjQ0MywxMjQ0NywxMjQ0OCwxMjQ1MCwxMjQ1MSwxMjQ1MiwxMjQ1MywxMjQ1NCwxMjQ1NSwxMjQ1NiwxMjQ1NywxMjQ1OCwxMjQ4MywxMjQ4NCwxMjUxNSwxMjUxNiwxMjUxNywxMjUxOCwxMjUxOSwxMjUyMCwxMjUyNiwxMjUyNywxMjUzMywxMjUzNSwxMjUzOSwxMjU0MywxMjU0NCwxMjU0OSwxMjU5MiwxMjU5MywxMjY4NywxMjY4OCwxMjc3NCwxMjc4MywxMjc4NCwxMjgwMCwxMjgzMSwxMjgzMiwxMjg3MiwxMjg4MCwxOTkwNCwxOTk2OCw0MDk4MSw0MDk4Miw0MjEyNSw0MjEyOCw0MjE4Myw0MjIzOCw0MjI0MCw0MjUwOSw0MjUxMCw0MjUxMSw0MjUxMiw0MjUyOCw0MjUzOCw0MjYwNyw0MjYxMSw0MjYxMiw0MjYyMiw0MjY1NCw0MjY1Niw0MjczNiw0MjczOCw0MjczOSw0Mjc0NCw0MzAxMCw0MzAxMSw0MzAxNCw0MzAxNSw0MzAxOSw0MzAyMCw0MzA0Myw0MzA0OCw0MzA1Miw0MzA1Myw0MzA2NCw0MzA2NSw0MzEyNCw0MzEyNiw0MzEyOCw0MzEzNiw0MzEzOCw0MzE4OCw0MzIwNiw0MzIxNCw0MzIxNiw0MzIyNiw0MzIzMiw0MzI1MCw0MzI2MCw0MzI2MSw0MzI2Myw0MzI2NCw0MzI3NCw0MzMwMiw0MzMxMCw0MzMxMiw0MzMzNSw0MzM0OCw0MzM2MCw0MzM4OSw0MzM5Miw0MzM5Niw0MzQ0Myw0MzQ1Niw0MzQ1Nyw0MzQ2Myw0MzQ2Niw0MzQ3MCw0MzQ3MSw0MzQ3Miw0MzQ4Miw0MzQ4Niw0MzQ4OCw0MzQ5Myw0MzQ5NCw0MzUwNCw0MzUxNCw0MzUyMCw0MzU2MSw0MzU3NSw0MzU4NCw0MzU4Nyw0MzU4OCw0MzU5Niw0MzU5OCw0MzYwMCw0MzYxMCw0MzYxMiw0MzYxMyw0MzYxNiw0MzY0Myw0MzY0Niw0MzY5Niw0MzY5Nyw0MzY5OCw0MzcwMSw0MzcwMyw0MzcwNSw0MzcxMCw0MzcxMiw0MzcxMyw0MzcxNCw0Mzc1NSw0Mzc2MCw0Mzc2Miw0Mzc2NSw0Mzc2Nyw0NDAwMyw0NDAxMSw0NDAxMiw0NDAxNCw0NDAxNiw0NDAyNiw0NDAzMiw0NDAzMyw0NDA2MCw0NDA2MSw0NDA4OCw0NDA4OSw0NDExNiw0NDExNyw0NDE0NCw0NDE0NSw0NDE3Miw0NDE3Myw0NDIwMCw0NDIwMSw0NDIyOCw0NDIyOSw0NDI1Niw0NDI1Nyw0NDI4NCw0NDI4NSw0NDMxMiw0NDMxMyw0NDM0MCw0NDM0MSw0NDM2OCw0NDM2OSw0NDM5Niw0NDM5Nyw0NDQyNCw0NDQyNSw0NDQ1Miw0NDQ1Myw0NDQ4MCw0NDQ4MSw0NDUwOCw0NDUwOSw0NDUzNiw0NDUzNyw0NDU2NCw0NDU2NSw0NDU5Miw0NDU5Myw0NDYyMCw0NDYyMSw0NDY0OCw0NDY0OSw0NDY3Niw0NDY3Nyw0NDcwNCw0NDcwNSw0NDczMiw0NDczMyw0NDc2MCw0NDc2MSw0NDc4OCw0NDc4OSw0NDgxNiw0NDgxNyw0NDg0NCw0NDg0NSw0NDg3Miw0NDg3Myw0NDkwMCw0NDkwMSw0NDkyOCw0NDkyOSw0NDk1Niw0NDk1Nyw0NDk4NCw0NDk4NSw0NTAxMiw0NTAxMyw0NTA0MCw0NTA0MSw0NTA2OCw0NTA2OSw0NTA5Niw0NTA5Nyw0NTEyNCw0NTEyNSw0NTE1Miw0NTE1Myw0NTE4MCw0NTE4MSw0NTIwOCw0NTIwOSw0NTIzNiw0NTIzNyw0NTI2NCw0NTI2NSw0NTI5Miw0NTI5Myw0NTMyMCw0NTMyMSw0NTM0OCw0NTM0OSw0NTM3Niw0NTM3Nyw0NTQwNCw0NTQwNSw0NTQzMiw0NTQzMyw0NTQ2MCw0NTQ2MSw0NTQ4OCw0NTQ4OSw0NTUxNiw0NTUxNyw0NTU0NCw0NTU0NSw0NTU3Miw0NTU3Myw0NTYwMCw0NTYwMSw0NTYyOCw0NTYyOSw0NTY1Niw0NTY1Nyw0NTY4NCw0NTY4NSw0NTcxMiw0NTcxMyw0NTc0MCw0NTc0MSw0NTc2OCw0NTc2OSw0NTc5Niw0NTc5Nyw0NTgyNCw0NTgyNSw0NTg1Miw0NTg1Myw0NTg4MCw0NTg4MSw0NTkwOCw0NTkwOSw0NTkzNiw0NTkzNyw0NTk2NCw0NTk2NSw0NTk5Miw0NTk5Myw0NjAyMCw0NjAyMSw0NjA0OCw0NjA0OSw0NjA3Niw0NjA3Nyw0NjEwNCw0NjEwNSw0NjEzMiw0NjEzMyw0NjE2MCw0NjE2MSw0NjE4OCw0NjE4OSw0NjIxNiw0NjIxNyw0NjI0NCw0NjI0NSw0NjI3Miw0NjI3Myw0NjMwMCw0NjMwMSw0NjMyOCw0NjMyOSw0NjM1Niw0NjM1Nyw0NjM4NCw0NjM4NSw0NjQxMiw0NjQxMyw0NjQ0MCw0NjQ0MSw0NjQ2OCw0NjQ2OSw0NjQ5Niw0NjQ5Nyw0NjUyNCw0NjUyNSw0NjU1Miw0NjU1Myw0NjU4MCw0NjU4MSw0NjYwOCw0NjYwOSw0NjYzNiw0NjYzNyw0NjY2NCw0NjY2NSw0NjY5Miw0NjY5Myw0NjcyMCw0NjcyMSw0Njc0OCw0Njc0OSw0Njc3Niw0Njc3Nyw0NjgwNCw0NjgwNSw0NjgzMiw0NjgzMyw0Njg2MCw0Njg2MSw0Njg4OCw0Njg4OSw0NjkxNiw0NjkxNyw0Njk0NCw0Njk0NSw0Njk3Miw0Njk3Myw0N2UzLDQ3MDAxLDQ3MDI4LDQ3MDI5LDQ3MDU2LDQ3MDU3LDQ3MDg0LDQ3MDg1LDQ3MTEyLDQ3MTEzLDQ3MTQwLDQ3MTQxLDQ3MTY4LDQ3MTY5LDQ3MTk2LDQ3MTk3LDQ3MjI0LDQ3MjI1LDQ3MjUyLDQ3MjUzLDQ3MjgwLDQ3MjgxLDQ3MzA4LDQ3MzA5LDQ3MzM2LDQ3MzM3LDQ3MzY0LDQ3MzY1LDQ3MzkyLDQ3MzkzLDQ3NDIwLDQ3NDIxLDQ3NDQ4LDQ3NDQ5LDQ3NDc2LDQ3NDc3LDQ3NTA0LDQ3NTA1LDQ3NTMyLDQ3NTMzLDQ3NTYwLDQ3NTYxLDQ3NTg4LDQ3NTg5LDQ3NjE2LDQ3NjE3LDQ3NjQ0LDQ3NjQ1LDQ3NjcyLDQ3NjczLDQ3NzAwLDQ3NzAxLDQ3NzI4LDQ3NzI5LDQ3NzU2LDQ3NzU3LDQ3Nzg0LDQ3Nzg1LDQ3ODEyLDQ3ODEzLDQ3ODQwLDQ3ODQxLDQ3ODY4LDQ3ODY5LDQ3ODk2LDQ3ODk3LDQ3OTI0LDQ3OTI1LDQ3OTUyLDQ3OTUzLDQ3OTgwLDQ3OTgxLDQ4MDA4LDQ4MDA5LDQ4MDM2LDQ4MDM3LDQ4MDY0LDQ4MDY1LDQ4MDkyLDQ4MDkzLDQ4MTIwLDQ4MTIxLDQ4MTQ4LDQ4MTQ5LDQ4MTc2LDQ4MTc3LDQ4MjA0LDQ4MjA1LDQ4MjMyLDQ4MjMzLDQ4MjYwLDQ4MjYxLDQ4Mjg4LDQ4Mjg5LDQ4MzE2LDQ4MzE3LDQ4MzQ0LDQ4MzQ1LDQ4MzcyLDQ4MzczLDQ4NDAwLDQ4NDAxLDQ4NDI4LDQ4NDI5LDQ4NDU2LDQ4NDU3LDQ4NDg0LDQ4NDg1LDQ4NTEyLDQ4NTEzLDQ4NTQwLDQ4NTQxLDQ4NTY4LDQ4NTY5LDQ4NTk2LDQ4NTk3LDQ4NjI0LDQ4NjI1LDQ4NjUyLDQ4NjUzLDQ4NjgwLDQ4NjgxLDQ4NzA4LDQ4NzA5LDQ4NzM2LDQ4NzM3LDQ4NzY0LDQ4NzY1LDQ4NzkyLDQ4NzkzLDQ4ODIwLDQ4ODIxLDQ4ODQ4LDQ4ODQ5LDQ4ODc2LDQ4ODc3LDQ4OTA0LDQ4OTA1LDQ4OTMyLDQ4OTMzLDQ4OTYwLDQ4OTYxLDQ4OTg4LDQ4OTg5LDQ5MDE2LDQ5MDE3LDQ5MDQ0LDQ5MDQ1LDQ5MDcyLDQ5MDczLDQ5MTAwLDQ5MTAxLDQ5MTI4LDQ5MTI5LDQ5MTU2LDQ5MTU3LDQ5MTg0LDQ5MTg1LDQ5MjEyLDQ5MjEzLDQ5MjQwLDQ5MjQxLDQ5MjY4LDQ5MjY5LDQ5Mjk2LDQ5Mjk3LDQ5MzI0LDQ5MzI1LDQ5MzUyLDQ5MzUzLDQ5MzgwLDQ5MzgxLDQ5NDA4LDQ5NDA5LDQ5NDM2LDQ5NDM3LDQ5NDY0LDQ5NDY1LDQ5NDkyLDQ5NDkzLDQ5NTIwLDQ5NTIxLDQ5NTQ4LDQ5NTQ5LDQ5NTc2LDQ5NTc3LDQ5NjA0LDQ5NjA1LDQ5NjMyLDQ5NjMzLDQ5NjYwLDQ5NjYxLDQ5Njg4LDQ5Njg5LDQ5NzE2LDQ5NzE3LDQ5NzQ0LDQ5NzQ1LDQ5NzcyLDQ5NzczLDQ5ODAwLDQ5ODAxLDQ5ODI4LDQ5ODI5LDQ5ODU2LDQ5ODU3LDQ5ODg0LDQ5ODg1LDQ5OTEyLDQ5OTEzLDQ5OTQwLDQ5OTQxLDQ5OTY4LDQ5OTY5LDQ5OTk2LDQ5OTk3LDUwMDI0LDUwMDI1LDUwMDUyLDUwMDUzLDUwMDgwLDUwMDgxLDUwMTA4LDUwMTA5LDUwMTM2LDUwMTM3LDUwMTY0LDUwMTY1LDUwMTkyLDUwMTkzLDUwMjIwLDUwMjIxLDUwMjQ4LDUwMjQ5LDUwMjc2LDUwMjc3LDUwMzA0LDUwMzA1LDUwMzMyLDUwMzMzLDUwMzYwLDUwMzYxLDUwMzg4LDUwMzg5LDUwNDE2LDUwNDE3LDUwNDQ0LDUwNDQ1LDUwNDcyLDUwNDczLDUwNTAwLDUwNTAxLDUwNTI4LDUwNTI5LDUwNTU2LDUwNTU3LDUwNTg0LDUwNTg1LDUwNjEyLDUwNjEzLDUwNjQwLDUwNjQxLDUwNjY4LDUwNjY5LDUwNjk2LDUwNjk3LDUwNzI0LDUwNzI1LDUwNzUyLDUwNzUzLDUwNzgwLDUwNzgxLDUwODA4LDUwODA5LDUwODM2LDUwODM3LDUwODY0LDUwODY1LDUwODkyLDUwODkzLDUwOTIwLDUwOTIxLDUwOTQ4LDUwOTQ5LDUwOTc2LDUwOTc3LDUxMDA0LDUxMDA1LDUxMDMyLDUxMDMzLDUxMDYwLDUxMDYxLDUxMDg4LDUxMDg5LDUxMTE2LDUxMTE3LDUxMTQ0LDUxMTQ1LDUxMTcyLDUxMTczLDUxMjAwLDUxMjAxLDUxMjI4LDUxMjI5LDUxMjU2LDUxMjU3LDUxMjg0LDUxMjg1LDUxMzEyLDUxMzEzLDUxMzQwLDUxMzQxLDUxMzY4LDUxMzY5LDUxMzk2LDUxMzk3LDUxNDI0LDUxNDI1LDUxNDUyLDUxNDUzLDUxNDgwLDUxNDgxLDUxNTA4LDUxNTA5LDUxNTM2LDUxNTM3LDUxNTY0LDUxNTY1LDUxNTkyLDUxNTkzLDUxNjIwLDUxNjIxLDUxNjQ4LDUxNjQ5LDUxNjc2LDUxNjc3LDUxNzA0LDUxNzA1LDUxNzMyLDUxNzMzLDUxNzYwLDUxNzYxLDUxNzg4LDUxNzg5LDUxODE2LDUxODE3LDUxODQ0LDUxODQ1LDUxODcyLDUxODczLDUxOTAwLDUxOTAxLDUxOTI4LDUxOTI5LDUxOTU2LDUxOTU3LDUxOTg0LDUxOTg1LDUyMDEyLDUyMDEzLDUyMDQwLDUyMDQxLDUyMDY4LDUyMDY5LDUyMDk2LDUyMDk3LDUyMTI0LDUyMTI1LDUyMTUyLDUyMTUzLDUyMTgwLDUyMTgxLDUyMjA4LDUyMjA5LDUyMjM2LDUyMjM3LDUyMjY0LDUyMjY1LDUyMjkyLDUyMjkzLDUyMzIwLDUyMzIxLDUyMzQ4LDUyMzQ5LDUyMzc2LDUyMzc3LDUyNDA0LDUyNDA1LDUyNDMyLDUyNDMzLDUyNDYwLDUyNDYxLDUyNDg4LDUyNDg5LDUyNTE2LDUyNTE3LDUyNTQ0LDUyNTQ1LDUyNTcyLDUyNTczLDUyNjAwLDUyNjAxLDUyNjI4LDUyNjI5LDUyNjU2LDUyNjU3LDUyNjg0LDUyNjg1LDUyNzEyLDUyNzEzLDUyNzQwLDUyNzQxLDUyNzY4LDUyNzY5LDUyNzk2LDUyNzk3LDUyODI0LDUyODI1LDUyODUyLDUyODUzLDUyODgwLDUyODgxLDUyOTA4LDUyOTA5LDUyOTM2LDUyOTM3LDUyOTY0LDUyOTY1LDUyOTkyLDUyOTkzLDUzMDIwLDUzMDIxLDUzMDQ4LDUzMDQ5LDUzMDc2LDUzMDc3LDUzMTA0LDUzMTA1LDUzMTMyLDUzMTMzLDUzMTYwLDUzMTYxLDUzMTg4LDUzMTg5LDUzMjE2LDUzMjE3LDUzMjQ0LDUzMjQ1LDUzMjcyLDUzMjczLDUzMzAwLDUzMzAxLDUzMzI4LDUzMzI5LDUzMzU2LDUzMzU3LDUzMzg0LDUzMzg1LDUzNDEyLDUzNDEzLDUzNDQwLDUzNDQxLDUzNDY4LDUzNDY5LDUzNDk2LDUzNDk3LDUzNTI0LDUzNTI1LDUzNTUyLDUzNTUzLDUzNTgwLDUzNTgxLDUzNjA4LDUzNjA5LDUzNjM2LDUzNjM3LDUzNjY0LDUzNjY1LDUzNjkyLDUzNjkzLDUzNzIwLDUzNzIxLDUzNzQ4LDUzNzQ5LDUzNzc2LDUzNzc3LDUzODA0LDUzODA1LDUzODMyLDUzODMzLDUzODYwLDUzODYxLDUzODg4LDUzODg5LDUzOTE2LDUzOTE3LDUzOTQ0LDUzOTQ1LDUzOTcyLDUzOTczLDU0ZTMsNTQwMDEsNTQwMjgsNTQwMjksNTQwNTYsNTQwNTcsNTQwODQsNTQwODUsNTQxMTIsNTQxMTMsNTQxNDAsNTQxNDEsNTQxNjgsNTQxNjksNTQxOTYsNTQxOTcsNTQyMjQsNTQyMjUsNTQyNTIsNTQyNTMsNTQyODAsNTQyODEsNTQzMDgsNTQzMDksNTQzMzYsNTQzMzcsNTQzNjQsNTQzNjUsNTQzOTIsNTQzOTMsNTQ0MjAsNTQ0MjEsNTQ0NDgsNTQ0NDksNTQ0NzYsNTQ0NzcsNTQ1MDQsNTQ1MDUsNTQ1MzIsNTQ1MzMsNTQ1NjAsNTQ1NjEsNTQ1ODgsNTQ1ODksNTQ2MTYsNTQ2MTcsNTQ2NDQsNTQ2NDUsNTQ2NzIsNTQ2NzMsNTQ3MDAsNTQ3MDEsNTQ3MjgsNTQ3MjksNTQ3NTYsNTQ3NTcsNTQ3ODQsNTQ3ODUsNTQ4MTIsNTQ4MTMsNTQ4NDAsNTQ4NDEsNTQ4NjgsNTQ4NjksNTQ4OTYsNTQ4OTcsNTQ5MjQsNTQ5MjUsNTQ5NTIsNTQ5NTMsNTQ5ODAsNTQ5ODEsNTUwMDgsNTUwMDksNTUwMzYsNTUwMzcsNTUwNjQsNTUwNjUsNTUwOTIsNTUwOTMsNTUxMjAsNTUxMjEsNTUxNDgsNTUxNDksNTUxNzYsNTUxNzcsNTUyMDQsNTUyMTYsNTUyMzksNTUyNDMsNTUyOTIsNjM3NDQsNjQyNTYsNjQyODUsNjQyODYsNjQyODcsNjQyOTcsNjQyOTgsNjQzMTEsNjQzMTIsNjQzMTcsNjQzMTgsNjQzMTksNjQzMjAsNjQzMjIsNjQzMjMsNjQzMjUsNjQzMjYsNjQzMzYsNjQ4MzAsNjQ4MzEsNjQ4MzIsNjUwMjAsNjUwMjEsNjUwMjQsNjUwNDAsNjUwNDMsNjUwNDUsNjUwNDcsNjUwNDgsNjUwNDksNjUwNTAsNjUwNTYsNjUwNTcsNjUwNTgsNjUwNTksNjUwNjAsNjUwNjEsNjUwNjIsNjUwNjQsNjUwNjUsNjUwNjYsNjUwNjcsNjUwNjgsNjUwNjksNjUwNzEsNjUwNzIsNjUwNzcsNjUwNzgsNjUwNzksNjUwODAsNjUwODEsNjUwODIsNjUwODMsNjUwODQsNjUwODUsNjUwODYsNjUwODcsNjUwODgsNjUwODksNjUwOTAsNjUwOTEsNjUwOTIsNjUwOTMsNjUwOTUsNjUwOTYsNjUwOTcsNjUxMDQsNjUxMDUsNjUxMDYsNjUxMDcsNjUxMDgsNjUxMTAsNjUxMTIsNjUxMTMsNjUxMTQsNjUxMTUsNjUxMTYsNjUxMTcsNjUxMTgsNjUxMTksNjUxMjcsNjUxMjgsNjUxMjksNjUxMzAsNjUxMzEsNjUxMzIsNjUyNzksNjUyODAsNjUyODEsNjUyODIsNjUyODQsNjUyODUsNjUyODYsNjUyODgsNjUyODksNjUyOTAsNjUyOTIsNjUyOTMsNjUyOTQsNjUyOTUsNjUzMDYsNjUzMDgsNjUzMTEsNjUzMTIsNjUzMzksNjUzNDAsNjUzNDEsNjUzNDIsNjUzNzEsNjUzNzIsNjUzNzMsNjUzNzQsNjUzNzUsNjUzNzYsNjUzNzgsNjUzNzksNjUzODEsNjUzODIsNjUzODMsNjUzOTMsNjU0MzgsNjU0NDAsNjU0NzEsNjU0NzQsNjU0ODAsNjU0ODIsNjU0ODgsNjU0OTAsNjU0OTYsNjU0OTgsNjU1MDEsNjU1MDQsNjU1MDUsNjU1MDYsNjU1MDksNjU1MTEsNjU1MjksNjU1MzIsNjU1MzMsNjU3OTIsNjU3OTUsNjYwNDUsNjYwNDYsNjYyNzIsNjYyNzMsNjY0MjIsNjY0MjcsNjY0NjMsNjY0NjQsNjY1MTIsNjY1MTMsNjY3MjAsNjY3MzAsNjc2NzEsNjc2NzIsNjc4NzEsNjc4NzIsNjgwOTcsNjgxMDAsNjgxMDEsNjgxMDMsNjgxMDgsNjgxMTIsNjgxNTIsNjgxNTUsNjgxNTksNjgxNjAsNjgxNzYsNjgxODQsNjgzMjUsNjgzMjcsNjgzMzYsNjgzNDIsNjgzNDMsNjg0MDksNjg0MTYsNjg5MDAsNjg5MDQsNjg5MTIsNjg5MjIsNjg5MjgsNjg5MzgsNjg5NjksNjg5NzQsNjg5NzUsNjkyOTEsNjkyOTMsNjkyOTQsNjkzMjgsNjkzMjksNjkzNzAsNjkzNzYsNjk0NDYsNjk0NTcsNjk1MDYsNjk1MTAsNjk2MzIsNjk2MzUsNjk2MzcsNjk2ODgsNjk3MDIsNjk3MDMsNjk3MDUsNjk3MTAsNjk3MTQsNjk3MzQsNjk3NDQsNjk3NDUsNjk3NDcsNjk3NDksNjk3NTAsNjk3NTksNjk3NjAsNjk3NjMsNjk4MDgsNjk4MTksNjk4MjEsNjk4MjIsNjk4MjYsNjk4MjcsNjk4MzcsNjk4MzgsNjk4NzIsNjk4ODIsNjk4ODgsNjk4OTEsNjk5MjcsNjk5NDEsNjk5NDIsNjk5NTIsNjk5NTYsNjk5NTcsNjk5NTksNzAwMDMsNzAwMDQsNzAwMDUsNzAwMDYsNzAwMTYsNzAwMTksNzAwNjcsNzAwODEsNzAwODUsNzAwODcsNzAwODgsNzAwODksNzAwOTMsNzAwOTQsNzAwOTYsNzAxMDYsNzAxMDcsNzAxMDgsNzAxMDksNzAxMTIsNzAxODgsNzAyMDAsNzAyMDIsNzAyMDMsNzAyMDUsNzAyMDYsNzAyMDcsNzAyMDksNzAyMTAsNzAzMTMsNzAzMTQsNzAzNjcsNzAzNzksNzAzODQsNzAzOTQsNzA0MDAsNzA0MDQsNzA0MDUsNzA0MTMsNzA0MTUsNzA0MTcsNzA0MTksNzA0NDEsNzA0NDIsNzA0NDksNzA0NTAsNzA0NTIsNzA0NTMsNzA0NTgsNzA0NTksNzA0NjEsNzA0NjIsNzA0NjksNzA0NzEsNzA0NzMsNzA0NzUsNzA0NzcsNzA0NzgsNzA0ODAsNzA0ODEsNzA0ODcsNzA0ODgsNzA0OTMsNzA0OTQsNzA0OTYsNzA0OTgsNzA1MDAsNzA1MDIsNzA1MDksNzA1MTIsNzA1MTcsNzA1MjgsNzA1MzgsNzA1MzksNzA1NDAsNzA1NDIsNzA1NDMsNzA1NDQsNzA1NDYsNzA1ODIsNzA1ODMsNzA1ODQsNzA1OTMsNzA1OTQsNzA1OTUsNzA1OTcsNzA1OTgsNzA1OTksNzA2MDMsNzA2MDQsNzA2MDgsNzA2MDksNzA2MTAsNzA2MTEsNzA2MTQsNzA2MTUsNzA2MTcsNzA2MjUsNzA2MjcsNzA3MDksNzA3MjcsNzA3MzEsNzA3MzUsNzA3MzYsNzA3NDYsNzA3NDgsNzA3NTAsNzA3NTEsNzA4MzIsNzA4NTIsNzA4NjQsNzA4NzQsNzEwODcsNzEwOTQsNzEwOTYsNzExMDUsNzExMDYsNzExMDgsNzExMTAsNzExMTMsNzExMjgsNzExMzIsNzExMzQsNzEyMTYsNzEyMzMsNzEyMzUsNzEyNDgsNzEyNTgsNzEyNjQsNzEyNzcsNzEzMzksNzEzNTIsNzEzNjAsNzEzNzAsNzEzNzYsNzEzOTYsNzE0NTMsNzE0NjgsNzE0NzIsNzE0ODIsNzE0ODQsNzE0ODcsNzE3MjQsNzE3MzksNzE5MDQsNzE5MTQsNzE5MzYsNzE5NDMsNzE5NDUsNzE5NDYsNzE5NDgsNzE5NTYsNzE5NTcsNzE5NTksNzE5NjAsNzE5ODQsNzE5OTAsNzE5OTEsNzE5OTMsNzE5OTUsNzE5OTgsNzE5OTksNzJlMyw3MjAwMSw3MjAwMiw3MjAwNCw3MjAwNyw3MjAxNiw3MjAyNiw3MjE0NSw3MjE1Miw3MjE1NCw3MjE2MSw3MjE2Miw3MjE2Myw3MjE2NCw3MjE2NSw3MjE5Myw3MjIwMyw3MjI0Myw3MjI1MCw3MjI1MSw3MjI1NSw3MjI1Niw3MjI1Nyw3MjI2MSw3MjI2Miw3MjI2Myw3MjI2NCw3MjI3Myw3MjI4NCw3MjMzMCw3MjM0Niw3MjM0OSw3MjM1MCw3MjM1Myw3MjM1NSw3MjQ0OCw3MjQ1OCw3MjU0NCw3MjU1Miw3MjY4OCw3MjY5OCw3Mjc1MSw3Mjc1OSw3Mjc2MCw3Mjc2OCw3Mjc2OSw3Mjc3NCw3Mjc4NCw3Mjc5NCw3MjgxNiw3MjgxNyw3MjgxOCw3Mjg1MCw3Mjg3Miw3Mjg3Myw3Mjg4Nyw3MzAwOSw3MzAxNSw3MzAxOCw3MzAxOSw3MzAyMCw3MzAyMiw3MzAyMyw3MzAzMCw3MzAzMSw3MzAzMiw3MzA0MCw3MzA1MCw3MzA5OCw3MzEwMyw3MzEwNCw3MzEwNiw3MzEwNyw3MzExMiw3MzEyMCw3MzEzMCw3MzE4NCw3MzE5NCw3MzQ0MCw3MzQ1OCw3MzQ1OSw3MzQ2Myw3MzQ2NSw3MzQ3Miw3MzQ3NCw3MzQ3NSw3MzQ3Niw3MzQ4OSw3MzQ5MCw3MzUyNCw3MzUzMSw3MzUzNCw3MzUzOCw3MzUzOSw3MzU0MSw3MzU1Miw3MzU2Miw3MzU2Myw3MzY5Myw3MzY5Nyw3MzcyNyw3MzcyOCw3NDg2NCw3NDg2OSw3ODQyNCw3ODQyNyw3ODQzMCw3ODQ2Niw3ODQ2Nyw3ODQ3MCw3ODQ3MSw3ODQ3Miw3ODQ3Myw3ODQ3NCw3ODcxMyw3ODcxNCw3ODcxNiw3ODg5NSw3ODg5Niw3ODkwMyw3ODkwNCw3ODkwNSw3ODkwOCw3ODkwOSw3ODkxMCw3ODkxMSw3ODkxMiw3ODkxMyw3ODkxOSw3ODkzNCw4MzQwNiw4MzQwNyw4MzQwOCw5MDM2OCw5MDM5OCw5MDQxNiw5MDQyNiw5Mjc2OCw5Mjc3OCw5Mjc4Miw5Mjc4NCw5Mjg2NCw5Mjg3NCw5MjkxMiw5MjkxNyw5MjkxOCw5Mjk3Niw5Mjk4Myw5Mjk4Niw5Mjk5Niw5Mjk5Nyw5MzAwOCw5MzAxOCw5MzU1MCw5MzU1Miw5MzU2Miw5Mzg0Nyw5Mzg0OSw5NDAzMSw5NDAzMiw5NDAzMyw5NDA4OCw5NDA5NSw5NDA5OSw5NDE3Niw5NDE4MCw5NDE4MSw5NDE5Miw5NDE5NCw5NDE5Niw5NDE5OSw5NDIwOCwxMDExMjAsMTAxNjMyLDEwMTY2MywxMDE3NjAsMTAxODc1LDExMDU5MiwxMTA4ODMsMTEwODk4LDExMDg5OSwxMTA5MjgsMTEwOTMxLDExMDkzMywxMTA5MzQsMTEwOTQ4LDExMDk1MiwxMTA5NjAsMTExMzU2LDExMzgyMSwxMTM4MjMsMTEzODI0LDExMzgyOCwxMThlMywxMTgwMTAsMTE4NTI4LDExODU3NCwxMTg1NzYsMTE4NTk5LDExOTE0MSwxMTkxNDYsMTE5MTQ5LDExOTE3MSwxMTkxNzMsMTE5MTgwLDExOTIxMCwxMTkyMTQsMTE5MzYyLDExOTM2NSwxMjA3ODIsMTIwODMyLDEyMTM0NCwxMjEzOTksMTIxNDAzLDEyMTQ1MywxMjE0NjEsMTIxNDYyLDEyMTQ3NiwxMjE0NzcsMTIxNDc5LDEyMTQ4MywxMjE0OTksMTIxNTA0LDEyMTUwNSwxMjE1MjAsMTIyODgwLDEyMjg4NywxMjI4ODgsMTIyOTA1LDEyMjkwNywxMjI5MTQsMTIyOTE1LDEyMjkxNywxMjI5MTgsMTIyOTIzLDEyMzAyMywxMjMwMjQsMTIzMTg0LDEyMzE5MSwxMjMyMDAsMTIzMjEwLDEyMzU2NiwxMjM1NjcsMTIzNjI4LDEyMzYzMiwxMjM2NDIsMTIzNjQ3LDEyMzY0OCwxMjQxNDAsMTI0MTQ0LDEyNDE1NCwxMjQzOTgsMTI0NDAwLDEyNDQwMSwxMjQ0MTEsMTI0NjQzLDEyNDY0NCwxMjQ2NDYsMTI0NjQ3LDEyNDY1NCwxMjQ2NTYsMTI0NjYxLDEyNDY2MiwxMjUxMzYsMTI1MTQzLDEyNTI1MiwxMjUyNTksMTI1MjY0LDEyNTI3NCwxMjUyNzgsMTI1MjgwLDEyNjEyNCwxMjYxMjUsMTI2MTI4LDEyNjEyOSwxMjY5NzYsMTI3MjMyLDEyNzQwNiwxMjc0NjIsMTI3NDg4LDEyNzg3NywxMjc4NzgsMTI3OTAwLDEyNzkwMiwxMjc5MjUsMTI3OTI3LDEyNzkzMiwxMjc5MzMsMTI3OTM4LDEyNzk0MSwxMjc5NDMsMTI3OTQ0LDEyNzk0NiwxMjc5NDksMTI3OTk1LDEyOGUzLDEyODA2NiwxMjgwNjgsMTI4MDcwLDEyODA4MSwxMjgxMDIsMTI4MTIxLDEyODEyNCwxMjgxMjUsMTI4MTI5LDEyODEzMiwxMjgxMzMsMTI4MTM2LDEyODE0MywxMjgxNDQsMTI4MTQ1LDEyODE0NiwxMjgxNjAsMTI4MTYxLDEyODE2MiwxMjgxNjMsMTI4MTY0LDEyODE2NSwxMjgxNzAsMTI4MTcxLDEyODE3NSwxMjgxNzYsMTI4MTc3LDEyODE3OSwxMjgyNTYsMTI4MjYzLDEyODI3OSwxMjgyOTMsMTI4MzA2LDEyODMzMCwxMjgzNzIsMTI4Mzc0LDEyODM3OCwxMjgzNzksMTI4NDAwLDEyODQwMSwxMjg0MDUsMTI4NDA3LDEyODQ2OCwxMjg0NzYsMTI4NTAwLDEyODUwNiwxMjg1ODEsMTI4NTg0LDEyODU4NywxMjg1OTIsMTI4NjMwLDEyODYzMywxMjg2MzYsMTI4NjQwLDEyODY3NSwxMjg2NzYsMTI4NjkyLDEyODY5NSwxMjg3MDQsMTI4NzA1LDEyODcxNiwxMjg3MTcsMTI4NzY4LDEyODg4NCwxMjg4ODcsMTI4ODkxLDEyODg5NiwxMjg5ODEsMTI5MDI0LDEyOTI5MiwxMjkyOTMsMTI5Mjk1LDEyOTI5NiwxMjkzMDQsMTI5MzEyLDEyOTMxOCwxMjkzMTksMTI5MzI4LDEyOTMzOCwxMjkzNDAsMTI5MzQzLDEyOTM5OSwxMjk0MDAsMTI5NDYxLDEyOTQ2MywxMjk0NjQsMTI5NDY2LDEyOTQ2NywxMjk0NjgsMTI5NDg1LDEyOTQ4OCwxMjk0ODksMTI5NTAyLDEyOTUzNiwxMjk2MjQsMTI5NzMxLDEyOTczNCwxMjk3NzYsMTI5Nzg1LDEyOTc5MiwxMzAwMzIsMTMwMDQyLDEzMDA0OCwxMzEwNzAsMTMxMDcyLDE5NjYwNiwxOTY2MDgsMjYyMTQyLDkxNzUwNSw5MTc1MDYsOTE3NTM2LDkxNzYzMiw5MTc3NjAsOTE4ZTNdLHVUPVsxLDE1LDQsMCwyLDEsNiwyMiwzOSwxMSwzOCwzNywxMSwzOSwzNiwxOSwxMSwzOCwzMCwyNywzMCw0MSwzNSwzMCwxMSwyMiwxMSwzNiwzOCwxOSwxMSwzNiwxNSwxOCwxMSwxLDUsMSwzLDM2LDM3LDM4LDExLDM5LDExLDE1LDExLDM3LDM4LDExLDE2LDExLDM5LDExLDM2LDExLDE2LDExLDE2LDExLDE2LDExLDEsMywxLDExLDMwLDExLDEsMTEsMzAsMjYsMTEsMzgsMTEsMSwyNiwxLDExLDEsMTEsMSwyMiwxLDExLDI1LDExLDI1LDExLDM1LDExLDM3LDMwLDExLDEsMjIsMSwyMiwxMSwxLDM1LDM3LDM1LDExLDEsMTEsMjIsMTEsMSwzNSwxMSwxLDExLDEsMTEsMSwxMSwzNSwxMSwxLDExLDEsMTEsMSwxMSwzNSwxMSwxLDExLDMwLDIyLDExLDEsMzgsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDM1LDExLDEsMTEsMSwzNSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTUsMzUsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwzNSwxMSwzNywxMSwzNywxMSwzOCwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDM1LDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwzNSwxMSwzOCwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMzUsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDM1LDExLDM4LDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMzUsMTEsMTYsMTEsMSwxNiwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwzNSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMzUsMTEsMzcsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDM1LDExLDEsMTEsMSwxMSwxLDExLDM4LDExLDEsMTEsMzUsMTUsMTEsMSwxMSwxLDExLDEsMTEsMzUsMTEsMTYsMTEsMTYsMywxNiwxNSwzLDIyLDMsMTEsMjIsMTEsMSwxMSwzNSwxMSwxNSwxLDExLDEsMTEsMSwzNiwxOCwzNiwxOCwxLDExLDEsMTUsMSwxNSwxLDExLDEsMTEsMSwxMSwxNSwxMSwxLDExLDE2LDE1LDE2LDExLDMsMTEsMSwxMSwzNSwxNSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDM1LDEsMTEsMzEsMzMsMzIsMTEsMSwxMSwxNSwxMSwyNiwxMSwxNSwxMSwzNiwxOCwxMSwxNSwxMSwxLDExLDEsMTUsMTEsMSwxMSwxLDExLDEsMTUsMzQsMTEsMTUsMTEsMTUsMzgsMTEsMSwxMSwzNSwxMSwyMiwxNSwxNiwxMSwyMiwxMSwxLDMsMSwzNSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDIyLDM1LDExLDM1LDExLDEsMTEsMSwxMSwxLDExLDEsMzUsMTEsMzUsMTEsMSwxMSwxLDMsMTEsMSwxMCwxLDQzLDEwLDExLDE1LDEzLDE1LDI4LDE1LDI4LDEsMjgsMTUsMSwxMSwxLDExLDM1LDExLDEzLDEsNDIsMTEsMSwxMSwxNSwzNSwxMSwzNSwxMSwxNSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwzLDEsMywxLDExLDE2LDExLDE1LDMsMTUsOCwxLDksMSwyNiwzLDI2LDE0LDExLDM5LDM2LDM5LDM2LDM5LDExLDI5LDE1LDAsMSwzLDM3LDExLDM5LDExLDM0LDExLDMwLDM2LDE4LDM0LDExLDE1LDM3LDE1LDExLDE1LDcsMTEsMSwxMSwzNiwxOCwxMSwzNiwxOCwxMSwzOCwzNywzOCwzNywzOCwzNywzOCwzNywzOCwzNywzOCwxLDExLDM3LDExLDM3LDExLDM4LDExLDM4LDExLDI5LDExLDM2LDE4LDM2LDE4LDExLDI4LDExLDM2LDE4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDIwLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDIwLDI4LDExLDI4LDExLDI4LDIwLDExLDM5LDExLDIyLDI4LDExLDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDExLDM2LDE4LDExLDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDExLDE1LDExLDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDExLDM2LDE4LDM2LDE4LDExLDM2LDE4LDExLDEsMTEsMjIsMTUsMTEsMjIsMTUsMTEsMTUsMTEsMSwxMSwxLDM5LDE1LDExLDI2LDM2LDE1LDExLDM5LDExLDM5LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDE1LDIyLDExLDE1LDExLDE1LDExLDE0LDE1LDExLDI2LDE1LDM2LDE1LDExLDE1LDExLDE1LDExLDIyLDM2LDE5LDM2LDE5LDM2LDE5LDM2LDE5LDI2LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDE1LDE4LDI4LDM0LDI4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDI4LDM2LDE4LDM2LDE4LDM2LDE4LDM2LDE4LDM0LDM2LDE4LDI4LDEsMjgsMSwyOCwzNCwyOCwxMSwzNCwyOCwzNCwyOCwzNCwyOCwzNCwyOCwzNCwyOCwzNCwyOCwzNCwyOCwzNCwyOCwzNCwyOCwzNCwyOCwzNCwxMSwxLDM0LDI4LDM0LDI4LDM0LDI4LDM0LDI4LDM0LDI4LDM0LDI4LDM0LDI4LDM0LDI4LDM0LDI4LDM0LDI4LDM0LDI4LDM0LDI4LDM0LDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDM0LDI4LDExLDI4LDExLDI4LDExLDI4LDM0LDI4LDExLDI4LDExLDE1LDExLDE1LDIyLDE1LDExLDM1LDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMTUsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDM3LDExLDE2LDIyLDExLDEsMTEsMSwxMSwxNSwzNSwxMSwxLDExLDE2LDExLDEsMzUsMTEsMSwxNSwxMSwxLDExLDMxLDExLDEsMTAsMSw0MywyOCwxNSwyOCwxMSwxNSwxMywxMSwyOCwxMSwxLDExLDM1LDExLDEzLDEsMTEsMTUsMSwxNSwxLDExLDEzLDExLDI4LDE1LDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTUsMTEsMSwxMSwxLDE1LDEsMTEsMzUsMTEsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMjMsMjQsMTEsMzMsMTEsMzIsMTEsMjgsMTEsMjUsMSwyNSwxMSwyNSwxMSwyNSwxMSwyNSwxMSwyNSwxMSwyNSwxMSwyNSwxMSwxOCwzNiwxMSwzNywxMSwxLDE4LDM0LDIyLDM2LDE4LDI5LDExLDMsMSwzLDEsMywxLDMsMSwzLDEsMywxLDMsMSwyOCwzNiwxOCwzNiwxOCwzNiwxOCwzNiwxOCwzNiwxOCwzNiwxOCwzNiwxOCwzNiwxOCwyOCwzNiwxOCwyOCwxOCwyOCwxOCwxMSwzNCwyMiwyOCwzNiwxOCwzNiwxOCwzNiwxOCwyOCwxMSwyOCwzOCwzNywyOCwxMSw3LDExLDIyLDI4LDM4LDM3LDI4LDM2LDE4LDI4LDE4LDI4LDE4LDI4LDM0LDI4LDIyLDI4LDM2LDI4LDE4LDI4LDM2LDI4LDE4LDI4LDM2LDE4LDM2LDE4LDM0LDI4LDM0LDI4LDM0LDI4LDExLDI4LDExLDI4LDExLDI4LDExLDI4LDExLDM3LDM4LDI4LDM4LDExLDEsMTcsMTEsMTUsMTEsMSwxMSwxLDExLDEsMTEsMTUsMTEsMTUsMTEsMzUsMTEsMTUsMTEsMTUsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDE1LDExLDEsMTEsMTUsMjksMTEsMTUsMTEsMSwxMSwzNSwxMSwzNSwxMSwxLDI2LDExLDEsMjYsMTEsMTUsMTEsMSwxMSwxLDExLDEsMTEsMSwxMiwxMCwxLDQzLDE1LDI4LDExLDI4LDEzLDEsMTAsMSwxMCwxMSwzLDEsMTEsMSwxMSwzNSwxNSwxLDExLDM1LDExLDM1LDExLDEsMTEsMSwxMSwzNSwxNSwxMSwxLDExLDEsMTEsMTYsMTEsMSwxMSwxLDExLDE1LDExLDE1LDEsMTEsMSwzNSwxMSwxNiwxMSwxNSwxMSwxLDE1LDExLDE1LDExLDEsMTEsMSwxMSwxNSwxMSwxLDExLDM1LDExLDEsMTEsMTAsMTEsMTAsMTEsMTAsMTEsMTAsMTEsMTAsMTEsMTAsMTEsMSwxNSwxLDExLDEsMTEsMSw0MywxMSwxMywxMSwxLDExLDE1LDEzLDEwLDEsMTEsMSwxMSwxLDExLDEzLDExLDEzLDExLDEzLDExLDEzLDEwLDExLDI4LDEsMTEsMSwxMSwxLDExLDEsMTEsMSw0MywxMiwxLDI4LDExLDI4LDExLDEsMTEsMSwxMSwxNSwxMSwzNSwxNSwxMSwxLDExLDEsMTEsMzUsMTEsMSwxMSwxLDE2LDE1LDIyLDExLDE1LDExLDEsMTEsMSwxNSwxMSwzNSwxMSwxNiwxMSwxLDExLDM1LDExLDM1LDExLDEsMTEsMzUsMTEsMTUsMTEsMSwxMSwzNSwxMSwxMCwxMSwxMCwxMSwxMCwxMSwxMCwxMSwxMCwxLDExLDEsMTEsMSw0MywxMiwxLDEyLDEsMTUsMTEsMTMsMTEsMSwxMSwxLDExLDE2LDExLDEsMTEsMSwxMSwxLDExLDEsMTYsMTEsMTUsMTYsMTEsMSwxMSwxLDExLDEsMTUsMTEsMTYsMTUsMTEsMTYsMTEsMSwxMSwzNSwxMSwxLDExLDEsMTEsMTUsMTEsMzUsMTEsMTYsMjIsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwzNSwxMSwxLDExLDEsMTEsMSwxMSwzNSwxMSwzNSwxMSwxMywxNSwxLDE1LDExLDEsMTIsMSwxMCwxMSwxMCwxLDExLDEsNDMsMTUsMjgsMTMsMSwxMSwzNywxMSwxNSwxMSwxNSwxMSwzNiwxOCwxMSwxOCwxMSwzNiwxOCwzNiwxOCwxMSwzNiwxOCwxMSwzNiwzLDM2LDE4LDMsMzYsMTgsMzYsMTgsMSwxMSwxLDExLDM2LDE4LDExLDEzLDEsMTMsMTEsMzUsMTEsMTUsMTEsMzUsMTEsMSwxNSwxMSwxLDE1LDExLDE1LDExLDM1LDExLDE1LDM1LDExLDE1LDExLDEsMTEsMSwxMSwxLDExLDM0LDMsMTEsMSwzNCwyOCwxMSwyOCwxMSwyOCwxMSwyOCwxMSwyOCwxMSwzNCwxMSwzNCwxMSwzNCwxMSwzNCwxMSwyOCwxMSwxLDE1LDEsMTEsMzUsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwzNSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDE1LDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDM1LDExLDEsMTEsMSwzNSwxMSwzOCwxMSwxLDM1LDExLDEsMTEsMzUsMTEsMSwxMSwxLDExLDEsMTEsMSwxMSwxLDExLDEsMTEsMzUsMTEsMzYsMTEsMzcsMTEsMzcsMTEsMjgsMTEsMjgsNDAsMjgsMjAsMjgsMTEsMjgsMTEsMjgsMTEsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjEsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMTEsMjgsMTEsMjgsMTEsMjgsMjAsMjgsMTEsMjgsMTEsMjgsMTEsMjgsMTEsMjgsMTEsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMTEsMjgsMTEsMjgsMjAsMjgsMjAsMTEsMzksMzQsMTEsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMTEsMjgsMTEsMjgsMTEsMjgsMTEsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMjAsMjgsMTEsMjgsMjAsMjgsMjAsMjgsMTEsMzUsMTEsMjgsMTEsMjgsMTEsMjgsMTEsMSwxMSwxLDExLDEsMTFdLGRUPVs0MzUyLDgzNjEsODk4Niw5MDAxLDkxOTMsOTIwMCw5MjAzLDk3MjUsOTc0OCw5Nzc2LDk4MDAsOTg1NSw5ODY2LDk4NzUsOTg4OSw5ODk4LDk5MTcsOTkyNCw5OTM0LDk5NDAsOTk2Miw5OTcwLDk5NzMsOTk3OCw5OTgxLDk5ODksOTk5NCwxMDAyNCwxMDA2MCwxMDA2MiwxMDA2NywxMDA3MSwxMDEzMywxMDE2MCwxMDE3NSwxMTAzNSwxMTA4OCwxMTA5MywxMTkwNCwxMTkzMSwxMjAzMiwxMjI3MiwxMjM1MywxMjQ0MSwxMjU0OSwxMjU5MywxMjY4OCwxMjc4MywxMjgzMiwxMjg4MCw0MjEyOCw0MzM2MCw0NDAzMiw2Mzc0NCw2NTA0MCw2NTA3Miw2NTEwOCw2NTEyOCw2NTI4MSw2NTQ3NCw2NTQ4Miw2NTQ5MCw2NTQ5OCw2NTUwNCw2NTUxMiw5NDE3Niw5NDE5Miw5NDIwOCwxMDE2MzEsMTAxNzYwLDExMDU3NiwxMTA1ODEsMTEwNTg5LDExMDU5MiwxMTA4OTgsMTEwOTI4LDExMDkzMywxMTA5NDgsMTEwOTYwLDExOTU1MiwxMTk2NDgsMTI2OTgwLDEyNzE4MywxMjczNzQsMTI3Mzc3LDEyNzQ4OCwxMjc1MDQsMTI3NTUyLDEyNzU2OCwxMjc1ODQsMTI3NzQ0LDEyNzc4OSwxMjc3OTksMTI3ODcwLDEyNzkwNCwxMjc5NTEsMTI3OTY4LDEyNzk4OCwxMjc5OTIsMTI4MDY0LDEyODA2NiwxMjgyNTUsMTI4MzMxLDEyODMzNiwxMjgzNzgsMTI4NDA1LDEyODQyMCwxMjg1MDcsMTI4NjQwLDEyODcxNiwxMjg3MjAsMTI4NzI1LDEyODczMiwxMjg3NDcsMTI4NzU2LDEyODk5MiwxMjkwMDgsMTI5MjkyLDEyOTM0MCwxMjkzNTEsMTI5NjQ4LDEyOTY2NCwxMjk2NzgsMTI5NzM2LDEyOTc0MSwxMjk3NTksMTI5Nzc1LDEzMTA3MiwxOTY2MDhdLGZUPVs0NDQ4LDgzNjIsODk4OCw5MDAzLDkxOTcsOTIwMSw5MjA0LDk3MjcsOTc1MCw5Nzg0LDk4MTIsOTg1Niw5ODcyLDk4NzYsOTg5MCw5OTAwLDk5MTksOTkyNiw5OTM1LDk5NDEsOTk2Myw5OTcyLDk5NzQsOTk3OSw5OTgyLDk5OTAsOTk5NiwxMDAyNSwxMDA2MSwxMDA2MywxMDA3MCwxMDA3MiwxMDEzNiwxMDE2MSwxMDE3NiwxMTAzNywxMTA4OSwxMTA5NCwxMTkzMCwxMjAyMCwxMjI0NiwxMjM1MSwxMjQzOSwxMjU0NCwxMjU5MiwxMjY4NywxMjc3NCwxMjgzMSwxMjg3Miw0MjEyNSw0MjE4Myw0MzM4OSw1NTIwNCw2NDI1Niw2NTA1MCw2NTEwNyw2NTEyNyw2NTEzMiw2NTQ3MSw2NTQ4MCw2NTQ4OCw2NTQ5Niw2NTUwMSw2NTUxMSw2NTUxOSw5NDE4MSw5NDE5OSwxMDE1OTAsMTAxNjYzLDEwMTg3NSwxMTA1ODAsMTEwNTg4LDExMDU5MSwxMTA4ODMsMTEwODk5LDExMDkzMSwxMTA5MzQsMTEwOTUyLDExMTM1NiwxMTk2MzksMTE5NjcxLDEyNjk4MSwxMjcxODQsMTI3Mzc1LDEyNzM4NywxMjc0OTEsMTI3NTQ4LDEyNzU2MSwxMjc1NzAsMTI3NTkwLDEyNzc3NywxMjc3OTgsMTI3ODY5LDEyNzg5MiwxMjc5NDcsMTI3OTU2LDEyNzk4NSwxMjc5ODksMTI4MDYzLDEyODA2NSwxMjgyNTMsMTI4MzE4LDEyODMzNSwxMjgzNjAsMTI4Mzc5LDEyODQwNywxMjg0MjEsMTI4NTkyLDEyODcxMCwxMjg3MTcsMTI4NzIzLDEyODcyOSwxMjg3MzYsMTI4NzQ5LDEyODc2NSwxMjkwMDQsMTI5MDA5LDEyOTMzOSwxMjkzNTAsMTI5NTM2LDEyOTY2MSwxMjk2NzUsMTI5NzM1LDEyOTczNywxMjk3NTcsMTI5NzcxLDEyOTc4NSwxOTY2MDYsMjYyMTQyXX0pKTtmdW5jdGlvbiBtVChlKXtsZXQgdD0wLG49bFQubGVuZ3RoLTE7Zm9yKDt0PG47KXtsZXQgcj10K24rMT4+MTtsVFtyXTw9ZT90PXI6bj1yLTF9cmV0dXJuIGNUW3VUW3RdXX1mdW5jdGlvbiBoVChlKXtsZXQgdD0wLG49ZFQubGVuZ3RoLTE7aWYobjwwfHxlPGRUWzBdKXJldHVybiExO2Zvcig7dDxuOyl7bGV0IHI9dCtuKzE+PjE7ZFRbcl08PWU/dD1yOm49ci0xfXJldHVybiBlPGZUW3RdfWZ1bmN0aW9uIGdUKGUsdCl7bGV0IG49bVQoZSk7aWYobj09PWBPUGApcmV0dXJuITA7bGV0IHI9bVQodCksaT1uPT09YEFMYHx8bj09PWBITGAsYT1yPT09YEFMYHx8cj09PWBITGA7cmV0dXJuISEoaSYmKGF8fHI9PT1gTlVgfHxyPT09YFBSYHx8cj09PWBQT2ApfHxhJiYobj09PWBOVWB8fG49PT1gUFJgfHxuPT09YFBPYCl8fG49PT1gUFJgJiYocj09PWBJRGB8fHI9PT1gRUJgfHxyPT09YEVNYCl8fChuPT09YElEYHx8bj09PWBFQmB8fG49PT1gRU1gKSYmcj09PWBQT2B8fG49PT1gTlVgJiYocj09PWBOVWB8fHI9PT1gUE9gfHxyPT09YFBSYCl8fHI9PT1gTlVgJiYobj09PWBQT2B8fG49PT1gUFJgfHxuPT09YEhZYHx8bj09PWBJU2ApfHwoaXx8bj09PWBOVWApJiZyPT09YE9QYCYmIWhUKHQpfHxuPT09YENQYCYmIWhUKGUpJiYoYXx8cj09PWBOVWApKX12YXIgX1Q9dCgoKCk9PntwVCgpfSkpO2Z1bmN0aW9uIHZUKGUpe3JldHVybiBlPT09YG15YHx8ZT09PWBib2B9ZnVuY3Rpb24geVQoZSl7cmV0dXJuIGU+PTM1ODQmJmU8PTM3MTF8fGU+PTM3MTImJmU8PTM4Mzl8fGU+PTYwMTYmJmU8PTYxNDN8fGU+PTQwOTYmJmU8PTQyNTV8fGU+PTQzNjE2JiZlPD00MzY0N3x8ZT49NDM0ODgmJmU8PTQzNTE5fHxlPj0zODQwJiZlPD00MDk1fWZ1bmN0aW9uIGJUKGUpe3JldHVybiBlPD0zNzExP2B0aGA6ZTw9MzgzOT9gbG9gOmU8PTQwOTU/YGJvYDplPD00MjU1P2BteWA6ZTw9NjE0Mz9ga21gOmBteWB9ZnVuY3Rpb24geFQoZSl7Zm9yKGxldCB0IG9mIGUpaWYoeVQodC5jb2RlUG9pbnRBdCgwKSkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gU1QoZSl7Zm9yKGxldCB0IG9mIGUpe2xldCBlPXQuY29kZVBvaW50QXQoMCk7aWYoeVQoZSkpcmV0dXJuIHZUKGJUKGUpKX1yZXR1cm4hMX1mdW5jdGlvbiBDVChlKXtsZXQgdD1QVC5nZXQoZSk7aWYodCE9PXZvaWQgMClyZXR1cm4gdDtsZXQgbj1udWxsO3RyeXt0eXBlb2YgSW50bDxgdWAmJnR5cGVvZiBJbnRsLlNlZ21lbnRlcj09YGZ1bmN0aW9uYCYmKG49bmV3IEludGwuU2VnbWVudGVyKGUse2dyYW51bGFyaXR5OmB3b3JkYH0pKX1jYXRjaHtuPW51bGx9cmV0dXJuIFBULnNldChlLG4pLG59ZnVuY3Rpb24gd1QoZSl7aWYoTlQ9PT1udWxsKXJldHVybiBudWxsO2lmKHR5cGVvZiBOVD09YGZ1bmN0aW9uYCl7bGV0IHQ9TlQ7cmV0dXJuIG49PnQobixlKX1sZXQgdD1DVChlKTtyZXR1cm4gdD9lPT50LnNlZ21lbnQoZSk6bnVsbH1mdW5jdGlvbiBUVChlKXtpZigheFQoZSkpcmV0dXJuW107bGV0IHQ9W10sbj1lLmxlbmd0aCxyPTA7Zm9yKDtyPG47KXtsZXQgaT1lLmNvZGVQb2ludEF0KHIpLGE9aT42NTUzNT8yOjE7aWYoIXlUKGkpKXtyKz1hO2NvbnRpbnVlfWxldCBvPWJUKGkpLHM9dlQobyksYz1yK2E7Zm9yKDtjPG47KXtsZXQgdD1lLmNvZGVQb2ludEF0KGMpO2lmKCF5VCh0KXx8dlQoYlQodCkpIT09cylicmVhaztjKz10PjY1NTM1PzI6MX1sZXQgbD1lLnNsaWNlKHIsYyk7aWYocylmb3IobGV0IGUgb2YgTVQobCkpdC5wdXNoKHIrZSk7ZWxzZXtsZXQgZT13VChvKTtpZihlKXtsZXQgbj1bXTt0cnl7Zm9yKGxldCB0IG9mIGUobCkpdC5pbmRleD4wJiYodC5pc1dvcmRMaWtlPz8hMCkmJm4ucHVzaChyK3QuaW5kZXgpO2ZvcihsZXQgZSBvZiBuKXQucHVzaChlKX1jYXRjaHt9fX1yPWN9cmV0dXJuIHR9ZnVuY3Rpb24gRVQoZSl7aWYoIXhUKGUpKXJldHVybltdO2xldCB0PVtdLG49ZS5sZW5ndGgscj1lLmNvZGVQb2ludEF0KDApLGk9cj42NTUzNT8yOjE7Zm9yKDtpPG47KXtsZXQgbj1lLmNvZGVQb2ludEF0KGkpLGE9bj42NTUzNT8yOjE7eVQocikhPT15VChuKSYmIURUKHIpJiYhRFQobikmJnQucHVzaChpKSxyPW4saSs9YX1yZXR1cm4gdH1mdW5jdGlvbiBEVChlKXtyZXR1cm4gZT09PTMyfHxlPT09OXx8ZT09PTEwfHxlPT09MTN8fGU9PT0xMjI4OHx8ZT09PTE2MHx8ZT09PTgxOTl8fGU9PT04MjM5fHxlPT09ODI4OHx8ZT09PTY1Mjc5fWZ1bmN0aW9uIE9UKGUsdCl7aWYoIXhUKGUpKXJldHVybltdO2xldCBuPWUubGVuZ3RoLHI9bmV3IFNldChUVChlKSksaT1uZXcgU2V0KE1UKGUpKSxhPWU9PntpLmhhcyhlKSYmci5hZGQoZSl9O2ZvcihsZXQgdCBvZiBFVChlKSlhKHQpO2lmKHQ/LmNqayl7bGV0IHQ9ZS5jb2RlUG9pbnRBdCgwKSxyPXQ+NjU1MzU/MjoxO2Zvcig7cjxuOyl7bGV0IG49ZS5jb2RlUG9pbnRBdChyKTsoYVQobil8fGFUKHQpKSYmYShyKSx0PW4scis9bj42NTUzNT8yOjF9fWxldCBvPXQ/LmtpbnNva3Uscz1vIT1udWxsJiZvLmVuYWJsZWQhPT0hMSxjPVtdO2ZvcihsZXQgdCBvZiByKWlmKCEodDw9MHx8dD49bikpe2lmKHMpe2xldCBuPWUuY29kZVBvaW50QXQodCkscj1rVChlLHQpO2lmKHIhPT12b2lkIDAmJm8ubGluZUVuZEZvcmJpZGRlbi5oYXMocil8fG8ubGluZVN0YXJ0Rm9yYmlkZGVuLmhhcyhuKSljb250aW51ZX1jLnB1c2godCl9cmV0dXJuIGMuc29ydCgoZSx0KT0+ZS10KSxjfWZ1bmN0aW9uIGtUKGUsdCl7aWYodDw9MClyZXR1cm47bGV0IG49ZS5jaGFyQ29kZUF0KHQtMSk7aWYobj49NTYzMjAmJm48PTU3MzQzJiZ0Pj0yKXtsZXQgbj1lLmNoYXJDb2RlQXQodC0yKTtpZihuPj01NTI5NiYmbjw9NTYzMTkpcmV0dXJuIGUuY29kZVBvaW50QXQodC0yKX1yZXR1cm4gbn1mdW5jdGlvbiBBVChlLHQsbixyLGksYT0hMSl7bGV0IG89ZS5sZW5ndGg7aWYobj49bylyZXR1cm4gbjtpZihhKXtpZihpKGUuc2xpY2UobixvKSk8PXIpcmV0dXJuIG87bGV0IGE9MCxzPXQubGVuZ3RoLTEsYz1uO2Zvcig7YTw9czspe2xldCBsPWErcz4+MSx1PXRbbF07dTw9bj9hPWwrMTp1Pj1vP3M9bC0xOmkoZS5zbGljZShuLHUpKTw9cj8oYz11LGE9bCsxKTpzPWwtMX1yZXR1cm4gY31sZXQgcz1uO2ZvcihsZXQgYSBvZiB0KWE8PW58fGE+PW98fGkoZS5zbGljZShuLGEpKTw9ciYmKHM9YSk7cmV0dXJuIGkoZS5zbGljZShuLG8pKTw9ciYmKHM9byksc31mdW5jdGlvbiBqVCgpe2lmKEZUIT09dm9pZCAwKXJldHVybiBGVDtsZXQgZT1udWxsO3RyeXt0eXBlb2YgSW50bDxgdWAmJnR5cGVvZiBJbnRsLlNlZ21lbnRlcj09YGZ1bmN0aW9uYCYmKGU9bmV3IEludGwuU2VnbWVudGVyKHZvaWQgMCx7Z3JhbnVsYXJpdHk6YGdyYXBoZW1lYH0pKX1jYXRjaHtlPW51bGx9cmV0dXJuIEZUPWUsZX1mdW5jdGlvbiBNVChlKXtsZXQgdD1qVCgpO2lmKHQpdHJ5e2xldCBuPVtdO2ZvcihsZXQgciBvZiB0LnNlZ21lbnQoZSkpci5pbmRleD4wJiZuLnB1c2goci5pbmRleCk7cmV0dXJuIG59Y2F0Y2h7fWxldCBuPVtdO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7KXtsZXQgcj1lLmNvZGVQb2ludEF0KHQpO3QrPXI+NjU1MzU/MjoxLHQ8ZS5sZW5ndGgmJm4ucHVzaCh0KX1yZXR1cm4gbn12YXIgTlQsUFQsRlQsSVQ9dCgoKCk9PntzVCgpLFBUPW5ldyBNYXB9KSksTFQsUlQselQsQlQ9dCgoKCk9PntMVD1bYFVgLGBSYCxgVHVgLGBUcmBdLFJUPVswLDE2NywxNjgsMTY5LDE3MCwxNzQsMTc1LDE3NywxNzgsMTg4LDE5MSwyMTUsMjE2LDI0NywyNDgsNzQ2LDc0OCw0MzUyLDQ2MDgsNTEyMSw1NzYwLDYzMjAsNjQwMCw4MjE0LDgyMTUsODIxNiw4MjE4LDgyMjAsODIyMiw4MjI0LDgyMjYsODI0MCw4MjQyLDgyNTEsODI1Myw4MjU4LDgyNTksODI2Myw4MjY2LDgyNzMsODI3NCw4MjkzLDgyOTQsODQxMyw4NDE3LDg0MTgsODQyMSw4NDQ4LDg0NTAsODQ1MSw4NDU4LDg0NjMsODQ2NCw4NDY3LDg0NjksODQ3MCw4NDcyLDg0NzgsODQ4NCw4NDg1LDg0ODYsODQ4Nyw4NDg4LDg0ODksODQ5MCw4NDk0LDg0OTUsODUwMSw4NTEyLDg1MTcsODUyMyw4NTI0LDg1MjYsODUyNyw4NTg2LDg1ODgsODU5Miw4NzM0LDg3MzUsODc1Niw4NzU4LDg5NjAsODk2OCw4OTcyLDg5OTIsODk5Niw5MDAxLDkwMDMsOTAwNCw5MDg1LDkxMTUsOTE1MCw5MTY2LDkxNjcsOTE2OCw5MTY5LDkxODAsOTE4Niw5MjUxLDkyNTIsOTQ3Miw5NjMyLDk3NTQsOTc2MCwxMDA4OCwxMDEwMiwxMDEzMiwxMTAyNiwxMTA1NiwxMTA4OCwxMTA5OCwxMTE1OSwxMTE2MCwxMTE5MiwxMTIxOCwxMTIxOSwxMTI0NCwxMTI0OCwxMTI2NCwxMTg1NiwxMTg1OCwxMTkwNCwxMjI4OSwxMjI5MSwxMjI5NiwxMjMwNiwxMjMwOCwxMjMyMCwxMjMzNiwxMjMzNywxMjM1MywxMjM1NCwxMjM1NSwxMjM1NiwxMjM1NywxMjM1OCwxMjM1OSwxMjM2MCwxMjM2MSwxMjM2MiwxMjM4NywxMjM4OCwxMjQxOSwxMjQyMCwxMjQyMSwxMjQyMiwxMjQyMywxMjQyNCwxMjQzMCwxMjQzMSwxMjQzNywxMjQzOSwxMjQ0MywxMjQ0NSwxMjQ0OCwxMjQ0OSwxMjQ1MCwxMjQ1MSwxMjQ1MiwxMjQ1MywxMjQ1NCwxMjQ1NSwxMjQ1NiwxMjQ1NywxMjQ1OCwxMjQ4MywxMjQ4NCwxMjUxNSwxMjUxNiwxMjUxNywxMjUxOCwxMjUxOSwxMjUyMCwxMjUyNiwxMjUyNywxMjUzMywxMjUzNSwxMjU0MCwxMjU0MSwxMjU4MywxMjU4NCwxMjcyNCwxMjcyOCwxMjczMSwxMjczMiwxMjc4NCwxMjgwMCwxMzA1NSwxMzE0NCwxMzE3OSwxMzE4NCw0MjE5Miw0MzM2MCw0MzM5Miw0NDAzMiw1NTI5Niw1NzM0NCw2NDI1Niw2NTA0MCw2NTA1Niw2NTA3Miw2NTA5Nyw2NTEwNCw2NTEwNyw2NTExMiw2NTExMyw2NTExOSw2NTEyMyw2NTEyNyw2NTEzNiw2NTI4MSw2NTI4Miw2NTI4OCw2NTI5MCw2NTI5Miw2NTI5Myw2NTI5NCw2NTI5NSw2NTMwNiw2NTMwOCw2NTMxMSw2NTMxMiw2NTMzOSw2NTM0MCw2NTM0MSw2NTM0Miw2NTM0Myw2NTM0NCw2NTM3MSw2NTM3Nyw2NTUwNCw2NTUwNyw2NTUwOCw2NTUxMiw2NTUyMCw2NTUyOSw2NTUzMiw2NTUzNCw2Nzk2OCw2OGUzLDcxMDQwLDcxMTY4LDcyMTkyLDcyMzg0LDc3ODI0LDgzNTg0LDk0MTc2LDEwMTg4OCwxMTA1NzYsMTEwODk4LDExMDg5OSwxMTA5MjgsMTEwOTMxLDExMDkzMywxMTA5MzQsMTEwOTQ4LDExMDk1MiwxMTEzNjAsMTE4NDY0LDExODczNiwxMTg3ODQsMTE5Mjk2LDExOTUyMCwxMTk2ODAsMTIwODMyLDEyMTUyMCwxMjY5NzYsMTI3NDg4LDEyNzQ5MCwxMjkwMjQsMTI5MjgwLDEyOTc5MiwxMzEwNzIsMTk2NjA2LDE5NjYwOCwyNjIxNDIsOTgzMDQwLDEwNDg1NzQsMTA0ODU3NiwxMTE0MTEwXSx6VD1bMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwzLDEsMywxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDMsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDIsMCwzLDAsMywwLDMsMCwyLDAsMiwwLDIsMCwyLDAsMiwwLDIsMCwyLDAsMiwwLDIsMCwyLDAsMiwwLDIsMCwzLDIsMCwyLDAsMiwwLDIsMCwyLDAsMiwwLDIsMCwyLDAsMiwwLDIsMCwyLDAsMywwLDIsMCwyLDAsMiwwLDIsMCwyLDAsMiwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwyLDAsMSwzLDAsMSwwLDEsMiwwLDMsMCwyLDEsMiwwLDMsMSwyLDAsMywwLDMsMCwzLDAsMywxLDAsMywwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMiwwLDIsMCwyLDAsMiwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMiwwLDEsMCwxLDAsMSwwLDEsMCwxLDAsMV19KSk7ZnVuY3Rpb24gVlQoZSl7bGV0IHQ9MCxuPVJULmxlbmd0aC0xO2Zvcig7dDxuOyl7bGV0IHI9dCtuKzE+PjE7UlRbcl08PWU/dD1yOm49ci0xfXJldHVybiB6VFt0XX1mdW5jdGlvbiBIVChlKXtyZXR1cm4gTFRbVlQoZSldfWZ1bmN0aW9uIFVUKGUpe3JldHVybiBxVC5nZXQoZSk/P251bGx9ZnVuY3Rpb24gV1QoZSl7cmV0dXJuIEpULmdldChlKT8/bnVsbH1mdW5jdGlvbiBHVChlKXtyZXR1cm4gWVQuaGFzKGUpfWZ1bmN0aW9uIEtUKGUpe3JldHVybiBYVC5oYXMoZSl9dmFyIHFULEpULFlULFhULFpUPXQoKCgpPT57QlQoKSxxVD1uZXcgTWFwKFtbNjUyOTIsNjUwNDBdLFsxMjI4OSw2NTA0MV0sWzEyMjkwLDY1MDQyXV0pLEpUPW5ldyBNYXAoW1s2NTI4OCw2NTA3N10sWzY1Mjg5LDY1MDc4XSxbNjUzNzEsNjUwNzldLFs2NTM3Myw2NTA4MF0sWzEyMzA4LDY1MDgxXSxbMTIzMDksNjUwODJdLFsxMjMwNCw2NTA4M10sWzEyMzA1LDY1MDg0XSxbMTIyOTgsNjUwODVdLFsxMjI5OSw2NTA4Nl0sWzEyMjk2LDY1MDg3XSxbMTIyOTcsNjUwODhdLFsxMjMwMCw2NTA4OV0sWzEyMzAxLDY1MDkwXSxbMTIzMDIsNjUwOTFdLFsxMjMwMyw2NTA5Ml0sWzEyMzEwLDY1MDQ3XSxbMTIzMTEsNjUwNDhdXSksWVQ9bmV3IFNldChbNjUzMDddKSxYVD1uZXcgU2V0KFsxMjU0MCwxMjMxNiw2NTM3NF0pfSkpO2Z1bmN0aW9uIFFUKGUpe2xldCB0PWUuY2FudmFzLG49dD8ub3duZXJEb2N1bWVudD8uZGVmYXVsdFZpZXc/LkhUTUxDYW52YXNFbGVtZW50O3JldHVybiB0eXBlb2Ygbj09YGZ1bmN0aW9uYCYmdCBpbnN0YW5jZW9mIG58fHR5cGVvZiBIVE1MQ2FudmFzRWxlbWVudDxgdWAmJnQgaW5zdGFuY2VvZiBIVE1MQ2FudmFzRWxlbWVudD90Om51bGx9ZnVuY3Rpb24gJFQoZSx0KXtyZXR1cm4gZS5yZXBsYWNlKC8oXnxccylcZCpcLj9cZCsoPzpweHxwdHxwY3xpbnxjbXxtbXxxfGVtfHJlbXwlKSg/OlwvW15cc10rKT8oPz1ccykvaSxgJDEke3R9YCl9ZnVuY3Rpb24gZUUoZSx0PSEwKXtsZXQgbj1lLnRyaW0oKTtyZXR1cm5bLi4ubj09PWBgfHxuLnRvTG93ZXJDYXNlKCk9PT1gbm9ybWFsYD9bXTpuLnNwbGl0KGAsYCkubWFwKGU9PmUudHJpbSgpKS5maWx0ZXIoZT0+IS9eKFsiJ10pdmVydFwxKD86XHMrKD86b258b2ZmfFxkKykpPyQvaS50ZXN0KGUpKSxgInZlcnQiICR7KyEhdH1gXS5qb2luKGAsIGApfWZ1bmN0aW9uIHRFKGUpe3RyeXtsZXQgdD1lLm93bmVyRG9jdW1lbnQ/LmRlZmF1bHRWaWV3LG49dD8uZ2V0Q29tcHV0ZWRTdHlsZT90LmdldENvbXB1dGVkU3R5bGUoZSk6dHlwZW9mIGdldENvbXB1dGVkU3R5bGU9PWBmdW5jdGlvbmA/Z2V0Q29tcHV0ZWRTdHlsZShlKTpudWxsO2lmKG4/LmZvbnRGZWF0dXJlU2V0dGluZ3MpcmV0dXJuIG4uZm9udEZlYXR1cmVTZXR0aW5nc31jYXRjaHt9cmV0dXJuIGUuc3R5bGUuZm9udEZlYXR1cmVTZXR0aW5nc31mdW5jdGlvbiBuRShlLHQpe2lmKGUuaXNDb25uZWN0ZWQpcmV0dXJuIHQoKTtsZXQgbj1lLm93bmVyRG9jdW1lbnQ/Pyh0eXBlb2YgZG9jdW1lbnQ+YHVgP251bGw6ZG9jdW1lbnQpLHI9bj8uYm9keT8/bj8uZG9jdW1lbnRFbGVtZW50O2lmKCFyKXJldHVybiB0KCk7bGV0IGk9ZS5wYXJlbnROb2RlLGE9ZS5uZXh0U2libGluZyxvPWUuc3R5bGUscz17cG9zaXRpb246by5wb3NpdGlvbixsZWZ0Om8ubGVmdCx0b3A6by50b3Asb3BhY2l0eTpvLm9wYWNpdHkscG9pbnRlckV2ZW50czpvLnBvaW50ZXJFdmVudHN9O09iamVjdC5hc3NpZ24obyx7cG9zaXRpb246YGZpeGVkYCxsZWZ0OmAtOTk5OTlweGAsdG9wOmAwYCxvcGFjaXR5OmAwYCxwb2ludGVyRXZlbnRzOmBub25lYH0pLHIuYXBwZW5kQ2hpbGQoZSk7bGV0IGM9ITE7dHJ5e3JldHVybiB0KCl9Y2F0Y2goZSl7dGhyb3cgYz0hMCxlfWZpbmFsbHl7bGV0IHQ7dHJ5e2lmKGkpe2xldCB0PWE/LnBhcmVudE5vZGU9PT1pP2E6bnVsbDtpLmluc2VydEJlZm9yZShlLHQpfWVsc2UgZS5yZW1vdmUoKX1jYXRjaChuKXt0PW47dHJ5e2UucmVtb3ZlKCl9Y2F0Y2h7fX1maW5hbGx5e09iamVjdC5hc3NpZ24obyxzKX1pZih0IT09dm9pZCAwJiYhYyl0aHJvdyB0fX1mdW5jdGlvbiByRShlLHQpe2xldCBuPVFUKGUpO3JldHVybiBuPT09bnVsbD90KCk6bkUobix0KX1mdW5jdGlvbiBpRShlKXtsZXQgdD1wRS5nZXQoZSk7aWYodClyZXR1cm4gdDtsZXQgbj1lLmNyZWF0ZUVsZW1lbnQoYGNhbnZhc2ApO24ud2lkdGg9ZEUsbi5oZWlnaHQ9ZEUsbi5zZXRBdHRyaWJ1dGUoYGFyaWEtaGlkZGVuYCxgdHJ1ZWApLE9iamVjdC5hc3NpZ24obi5zdHlsZSx7cG9zaXRpb246YGZpeGVkYCxsZWZ0OmAtOTk5OTlweGAsdG9wOmAwYCxvcGFjaXR5OmAwYCxwb2ludGVyRXZlbnRzOmBub25lYH0pO2xldCByPXtjYW52YXM6bixjYWNoZTpuZXcgTWFwLGVwb2NoOjB9LGk9KCk9PntyLmVwb2NoKz0xLHIuY2FjaGUuY2xlYXIoKX07cmV0dXJuIGUuZm9udHM/LmFkZEV2ZW50TGlzdGVuZXI/LihgbG9hZGluZ2RvbmVgLGkpLGUuZm9udHM/LmFkZEV2ZW50TGlzdGVuZXI/LihgbG9hZGluZ2Vycm9yYCxpKSxwRS5zZXQoZSxyKSxyfWZ1bmN0aW9uIGFFKGUsdCl7bGV0e3dpZHRoOm4saGVpZ2h0OnJ9PWUuY2FudmFzLGk9ZS5nZXRJbWFnZURhdGEoMCwwLG4scikuZGF0YSxhPW5ldyBVaW50OENsYW1wZWRBcnJheShuKnIpLG89bixzPXIsYz0tMSxsPS0xLHU9MCxkPTAsZj0wO2ZvcihsZXQgZT0wO2U8cjtlKz0xKWZvcihsZXQgdD0wO3Q8bjt0Kz0xKXtsZXQgcj1pWyhlKm4rdCkqNCszXTthW2Uqbit0XT1yLHIhPT0wJiYobz1NYXRoLm1pbihvLHQpLHM9TWF0aC5taW4ocyxlKSxjPU1hdGgubWF4KGMsdCksbD1NYXRoLm1heChsLGUpLHUrPXIsZCs9dCpyLGYrPWUqcil9aWYoYzxvfHxsPHN8fHU9PT0wKXJldHVybiBudWxsO2xldCBwPWUubWVhc3VyZVRleHQodCksbT1lPT50eXBlb2YgZT09YG51bWJlcmAmJk51bWJlci5pc0Zpbml0ZShlKT9lOjA7cmV0dXJue2FscGhhOmEsZ2VvbWV0cnk6W28scyxjLGwsZC91LGYvdV0sbWV0cmljczpbbShwLndpZHRoKSxtKHAuYWN0dWFsQm91bmRpbmdCb3hMZWZ0KSxtKHAuYWN0dWFsQm91bmRpbmdCb3hSaWdodCksbShwLmFjdHVhbEJvdW5kaW5nQm94QXNjZW50KSxtKHAuYWN0dWFsQm91bmRpbmdCb3hEZXNjZW50KV19fWZ1bmN0aW9uIG9FKGUsdCxuKXtsZXQgcj1lLmNhbnZhcztyLnN0eWxlLmZvbnRGZWF0dXJlU2V0dGluZ3M9bixlLmZvbnQ9ZS5mb250LGUuY2xlYXJSZWN0KDAsMCxyLndpZHRoLHIuaGVpZ2h0KTtsZXQgaT1TdHJpbmcuZnJvbUNvZGVQb2ludCh0KTtyZXR1cm4gZS5maWxsVGV4dChpLHIud2lkdGgvMixyLmhlaWdodC8yKSxhRShlLGkpfWZ1bmN0aW9uIHNFKGUsdCl7bGV0IG49MCxyPU1hdGgubWluKGUubGVuZ3RoLHQubGVuZ3RoKTtmb3IobGV0IGk9MDtpPHI7aSs9MSluKz1NYXRoLmFicyhlW2ldLXRbaV0pO3JldHVybiBufWZ1bmN0aW9uIGNFKGUsdCxuLHIpe2xldCBpPShlLHQsbixyKT0+e2xldCBpPU1hdGgubWF4KHNFKGUsdCksc0UobixyKSk7cmV0dXJuIE1hdGgubWluKHNFKGUsbiksc0UoZSxyKSxzRSh0LG4pLHNFKHQscikpPml9O3JldHVybiBpKGUuYWxwaGEsdC5hbHBoYSxuLmFscGhhLHIuYWxwaGEpfHxpKGUuZ2VvbWV0cnksdC5nZW9tZXRyeSxuLmdlb21ldHJ5LHIuZ2VvbWV0cnkpfHxpKGUubWV0cmljcyx0Lm1ldHJpY3Msbi5tZXRyaWNzLHIubWV0cmljcyl9ZnVuY3Rpb24gbEUoZSx0KXtsZXQgbj1RVChlKTtpZihuPT09bnVsbHx8dHlwZW9mIGRvY3VtZW50PmB1YClyZXR1cm4hMTtsZXQgcj1uLm93bmVyRG9jdW1lbnQ/P2RvY3VtZW50LGk9aUUociksYT10RShuKSxvPWAke2kuZXBvY2h9OiR7JFQoZS5mb250LGA8c2l6ZT5gKX06JHthfToke3R9YCxzPWkuY2FjaGUuZ2V0KG8pO2lmKHMhPT12b2lkIDApcmV0dXJuIHM7bGV0IGM9ITEsbD1yLmJvZHk/P3IuZG9jdW1lbnRFbGVtZW50O2lmKCFsKXJldHVybiExO2xldCB1PWkuY2FudmFzLmlzQ29ubmVjdGVkO3V8fGwuYXBwZW5kQ2hpbGQoaS5jYW52YXMpO2xldCBkPWkuY2FudmFzLmdldENvbnRleHQoYDJkYCx7d2lsbFJlYWRGcmVxdWVudGx5OiEwfSk7aWYoZCE9PW51bGwpe2xldCBuPWkuY2FudmFzLnN0eWxlLmZvbnRGZWF0dXJlU2V0dGluZ3M7dHJ5e2QuZm9udD0kVChlLmZvbnQsYCR7ZkV9cHhgKSxkLmZpbGxTdHlsZT1gIzAwMGAsZC50ZXh0QWxpZ249YGNlbnRlcmAsZC50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7bGV0IG49ZUUoYSwhMSkscj1lRShhLCEwKSxpPW9FKGQsdCxuKSxvPW9FKGQsdCxuKSxzPW9FKGQsdCxyKSxsPW9FKGQsdCxyKTtjPWkhPT1udWxsJiZvIT09bnVsbCYmcyE9PW51bGwmJmwhPT1udWxsJiZjRShpLG8scyxsKX1jYXRjaHtjPSExfWZpbmFsbHl7aS5jYW52YXMuc3R5bGUuZm9udEZlYXR1cmVTZXR0aW5ncz1uLGQuZm9udD1kLmZvbnQsZC5jbGVhclJlY3QoMCwwLGkuY2FudmFzLndpZHRoLGkuY2FudmFzLmhlaWdodCksdXx8aS5jYW52YXMucmVtb3ZlKCl9fXJldHVybiBpLmNhY2hlLnNldChvLGMpLGN9ZnVuY3Rpb24gdUUoZSx0KXtsZXQgbj1lLmNhbnZhcztyZXR1cm4gbj8uc3R5bGU/ckUoZSwoKT0+e2xldCByPW4uc3R5bGUsaT1yLmZvbnRGZWF0dXJlU2V0dGluZ3M7ci5mb250RmVhdHVyZVNldHRpbmdzPWVFKHRFKG4pKSxlLmZvbnQ9ZS5mb250O3RyeXtyZXR1cm4gdCgpfWZpbmFsbHl7ci5mb250RmVhdHVyZVNldHRpbmdzPWksZS5mb250PWUuZm9udH19KTp0KCl9dmFyIGRFLGZFLHBFLG1FPXQoKCgpPT57ZEU9MjU2LGZFPTIwMCxwRT1uZXcgV2Vha01hcH0pKTtmdW5jdGlvbiBoRShlLHQpe2lmKCFlKXJldHVybiBudWxsO2xldCBuPWUudG9Mb3dlckNhc2UoKTtmb3IobGV0W2Uscl1vZiB2RSlpZihlKG4pJiYodHx8IXIuZWFPbmx5KSlyZXR1cm4gcjtyZXR1cm4gbnVsbH1mdW5jdGlvbiBnRShlLHQ9ITEpe2xldCBuPWhFKGUsdCk7cmV0dXJuIG49PT1udWxsP251bGw6bi5hc2Mrbi5kZXNjfWZ1bmN0aW9uIF9FKGUsdCxuPSExKXtsZXQgcj1nRShlLG4pO3JldHVybiByPT09bnVsbD8wOnIqdH12YXIgdkUseUU9dCgoKCk9Pnt2RT1bW2U9PmUuaW5jbHVkZXMoYG1laXJ5byB1aWApfHxlLmluY2x1ZGVzKGBtZWlyeW91aWApfHxlLmluY2x1ZGVzKGDjg6HjgqTjg6rjgqpgKSYmZS5pbmNsdWRlcyhgdWlgKSx7YXNjOjIxNzEqMS4zLzIwNDgsZGVzYzo0MzAqMS4zLzIwNDgsZWFPbmx5OiEwfV0sW2U9PmUuaW5jbHVkZXMoYG1laXJ5b2ApfHxlLmluY2x1ZGVzKGDjg6HjgqTjg6rjgqpgKSx7YXNjOjIyMTAvMjA0OCxkZXNjOjEwNTkvMjA0OH1dLFtlPT4hZS5pbmNsdWRlcyhgdWlgKSYmKGUuaW5jbHVkZXMoYHl1IG1pbmNob2ApfHxlLmluY2x1ZGVzKGB5dW1pbmNob2ApfHxlLmluY2x1ZGVzKGDmuLjmmI7mnJ1gKXx8ZS5pbmNsdWRlcyhgeXUgZ290aGljYCl8fGUuaW5jbHVkZXMoYHl1Z290aGljYCl8fGUuaW5jbHVkZXMoYOa4uOOCtOOCt+ODg+OCr2ApKSx7YXNjOjE4MDIqMS4zLzIwNDgsZGVzYzo0NTUqMS4zLzIwNDgsZWFPbmx5OiEwfV0sW2U9PmUuaW5jbHVkZXMoYHNha2thbCBtYWphbGxhYCl8fGUuaW5jbHVkZXMoYG1hamFsbGFgKSx7YXNjOjE4MTAvMjA0OCxkZXNjOjEwNTAvMjA0OH1dLFtlPT5lPT09YHRpbWVzIG5ldyByb21hbmAse2FzYzoxODI1LzIwNDgsZGVzYzo1MzAvMjA0OH1dLFtlPT5lPT09YGFyaWFsYCx7YXNjOjE4NTQvMjA0OCxkZXNjOjUwMS8yMDQ4fV1dfSkpLGJFPXQoKCgpPT57YSgpLGcoKSxjKCksQSgpLEYoKSxpZSgpLGp1KCksT2EoKSx1aSgpLENtKCksRV8oKSxiXygpLFpoKCksenIoKSxldCgpLGhnKCksT2goKSxzZygpLF9lKCksd2coKSxIaCgpLHN0KCksTV8oKSxJXygpLG5nKCksUl8oKSxsbSgpLGRpKCksVGkoKSxVXygpLEJhKCksS18oKSxQdigpLHB0KCksTHYoKSx6digpLFVyKCksbmkoKSxvdygpLFl3KCksaVQoKSxzVCgpLF9UKCksSVQoKSxaVCgpLG1FKCksbWEoKSxfYSgpLHlFKCl9KSk7YkUoKTtjb25zdCB4RT17Li4uUCwuLi5uZX07ZnVuY3Rpb24qU0UoZSl7Zm9yKGxldCB0IG9mIGU/LnNoYXJlZFN0cmluZ3M/P1tdKWlmKHQucnVucyYmdC5ydW5zLmxlbmd0aD4wKWZvcihsZXQgZSBvZiB0LnJ1bnMpeWllbGQgZS50ZXh0O2Vsc2UgeWllbGQgdC50ZXh0fWZ1bmN0aW9uIENFKGUsdCl7bGV0IG49bmV3IFNldCxyPW51bGw7Zm9yKGxldCB0IG9mIGU/LnN0eWxlcz8uZm9udHM/P1tdKXQubmFtZSYmKG4uYWRkKHQubmFtZSkscj8/PUwodC5uYW1lKSk7Zm9yKGxldCBpIG9mIGVlKFNFKGUpLHI/P3Q/P251bGwpKW4uYWRkKGkpO3JldHVybiBufWZ1bmN0aW9uIHdFKGUsdCl7Zm9yKGxldCB0IG9mIGU/LnN0eWxlcz8uZm9udHM/P1tdKXtsZXQgbj1MKHQubmFtZSk7aWYobilyZXR1cm4gVihTRShlKSxuKX1yZXR1cm4gVihTRShlKSx0KX12YXIgVEU9Y2xhc3N7X19kZXN0cm95X2ludG9fcmF3KCl7bGV0IGU9dGhpcy5fX3diZ19wdHI7cmV0dXJuIHRoaXMuX193YmdfcHRyPTAsREUudW5yZWdpc3Rlcih0aGlzKSxlfWZyZWUoKXtsZXQgZT10aGlzLl9fZGVzdHJveV9pbnRvX3JhdygpO1VFLl9fd2JnX3hsc3hhcmNoaXZlX2ZyZWUoZSwwKX1hY2tub3dsZWRnZV9zaGVldF9jdXJzb3JfdGVybWluYWwoKXtsZXQgZT1VRS54bHN4YXJjaGl2ZV9hY2tub3dsZWRnZV9zaGVldF9jdXJzb3JfdGVybWluYWwodGhpcy5fX3diZ19wdHIpO2lmKGVbMV0pdGhyb3cgTEUoZVswXSl9YXNzZXJ0X2hlYWx0aHkoKXtsZXQgZT1VRS54bHN4YXJjaGl2ZV9hc3NlcnRfaGVhbHRoeSh0aGlzLl9fd2JnX3B0cik7aWYoZVsxXSl0aHJvdyBMRShlWzBdKX1jYW5jZWxfc2hlZXRfY3Vyc29yKCl7VUUueGxzeGFyY2hpdmVfY2FuY2VsX3NoZWV0X2N1cnNvcih0aGlzLl9fd2JnX3B0cil9Y2xvc2Vfc2hlZXRfY3Vyc29yKCl7VUUueGxzeGFyY2hpdmVfY2xvc2Vfc2hlZXRfY3Vyc29yKHRoaXMuX193YmdfcHRyKX1leHRyYWN0X2ltYWdlKGUpe2xldCB0PUlFKGUsVUUuX193YmluZGdlbl9tYWxsb2MsVUUuX193YmluZGdlbl9yZWFsbG9jKSxuPUhFLHI9VUUueGxzeGFyY2hpdmVfZXh0cmFjdF9pbWFnZSh0aGlzLl9fd2JnX3B0cix0LG4pO2lmKHJbM10pdGhyb3cgTEUoclsyXSk7dmFyIGk9T0UoclswXSxyWzFdKS5zbGljZSgpO3JldHVybiBVRS5fX3diaW5kZ2VuX2ZyZWUoclswXSxyWzFdKjEsMSksaX1jb25zdHJ1Y3RvcihlLHQsbixyKXtsZXQgaT1GRShlLFVFLl9fd2JpbmRnZW5fbWFsbG9jKSxhPUhFLG89VUUueGxzeGFyY2hpdmVfbmV3KGksYSwhUEUodCksUEUodCk/QmlnSW50KDApOnQsIVBFKG4pLFBFKG4pP0JpZ0ludCgwKTpuLCFQRShyKSxQRShyKT9CaWdJbnQoMCk6cik7aWYob1syXSl0aHJvdyBMRShvWzFdKTtyZXR1cm4gdGhpcy5fX3diZ19wdHI9b1swXT4+PjAsREUucmVnaXN0ZXIodGhpcyx0aGlzLl9fd2JnX3B0cix0aGlzKSx0aGlzfW9wZW5fc2hlZXRfY3Vyc29yKGUsdCl7bGV0IG49SUUodCxVRS5fX3diaW5kZ2VuX21hbGxvYyxVRS5fX3diaW5kZ2VuX3JlYWxsb2MpLHI9SEUsaT1VRS54bHN4YXJjaGl2ZV9vcGVuX3NoZWV0X2N1cnNvcih0aGlzLl9fd2JnX3B0cixlLG4scik7aWYoaVsxXSl0aHJvdyBMRShpWzBdKX1wYXJzZSgpe2xldCBlPVVFLnhsc3hhcmNoaXZlX3BhcnNlKHRoaXMuX193YmdfcHRyKTtpZihlWzNdKXRocm93IExFKGVbMl0pO3ZhciB0PU9FKGVbMF0sZVsxXSkuc2xpY2UoKTtyZXR1cm4gVUUuX193YmluZGdlbl9mcmVlKGVbMF0sZVsxXSoxLDEpLHR9cHVsbF9zaGVldF9jdXJzb3IoZSl7bGV0IHQ9VUUueGxzeGFyY2hpdmVfcHVsbF9zaGVldF9jdXJzb3IodGhpcy5fX3diZ19wdHIsZSk7aWYodFszXSl0aHJvdyBMRSh0WzJdKTt2YXIgbj1PRSh0WzBdLHRbMV0pLnNsaWNlKCk7cmV0dXJuIFVFLl9fd2JpbmRnZW5fZnJlZSh0WzBdLHRbMV0qMSwxKSxufXJlc291cmNlX3VzYWdlKCl7bGV0IGU9VUUueGxzeGFyY2hpdmVfcmVzb3VyY2VfdXNhZ2UodGhpcy5fX3diZ19wdHIpO2lmKGVbM10pdGhyb3cgTEUoZVsyXSk7dmFyIHQ9T0UoZVswXSxlWzFdKS5zbGljZSgpO3JldHVybiBVRS5fX3diaW5kZ2VuX2ZyZWUoZVswXSxlWzFdKjEsMSksdH1zaGVldF9jdXJzb3JfcHVsbF9maW5pc2hlZCgpe3JldHVybiBVRS54bHN4YXJjaGl2ZV9zaGVldF9jdXJzb3JfcHVsbF9maW5pc2hlZCh0aGlzLl9fd2JnX3B0cikhPT0wfXNoZWV0X2N1cnNvcl9yZXNvdXJjZV91c2FnZSgpe2xldCBlPVVFLnhsc3hhcmNoaXZlX3NoZWV0X2N1cnNvcl9yZXNvdXJjZV91c2FnZSh0aGlzLl9fd2JnX3B0cik7aWYoZVszXSl0aHJvdyBMRShlWzJdKTt2YXIgdD1PRShlWzBdLGVbMV0pLnNsaWNlKCk7cmV0dXJuIFVFLl9fd2JpbmRnZW5fZnJlZShlWzBdLGVbMV0qMSwxKSx0fXRvX21hcmtkb3duKCl7bGV0IGUsdDt0cnl7bGV0IGk9VUUueGxzeGFyY2hpdmVfdG9fbWFya2Rvd24odGhpcy5fX3diZ19wdHIpO3ZhciBuPWlbMF0scj1pWzFdO2lmKGlbM10pdGhyb3cgbj0wLHI9MCxMRShpWzJdKTtyZXR1cm4gZT1uLHQ9cixqRShuLHIpfWZpbmFsbHl7VUUuX193YmluZGdlbl9mcmVlKGUsdCwxKX19fTtTeW1ib2wuZGlzcG9zZSYmKFRFLnByb3RvdHlwZVtTeW1ib2wuZGlzcG9zZV09VEUucHJvdG90eXBlLmZyZWUpO2Z1bmN0aW9uIEVFKCl7cmV0dXJue19fcHJvdG9fXzpudWxsLCIuL3hsc3hfcGFyc2VyX2JnLmpzIjp7X19wcm90b19fOm51bGwsX193YmdfX193YmluZGdlbl90aHJvd182YjY0NDQ5YjliOWVkMzNjOmZ1bmN0aW9uKGUsdCl7dGhyb3cgRXJyb3IoakUoZSx0KSl9LF9fd2JnX2Vycm9yX2E2ZmEyMDJiNThhYTFjZDM6ZnVuY3Rpb24oZSx0KXtsZXQgbixyO3RyeXtuPWUscj10LGNvbnNvbGUuZXJyb3IoakUoZSx0KSl9ZmluYWxseXtVRS5fX3diaW5kZ2VuX2ZyZWUobixyLDEpfX0sX193YmdfbmV3XzIyN2Q3YzA1NDE0ZWI4NjE6ZnVuY3Rpb24oKXtyZXR1cm4gRXJyb3IoKX0sX193Ymdfc3RhY2tfM2IwZDk3NGJiZjMxZTQ0ZjpmdW5jdGlvbihlLHQpe2xldCBuPXQuc3RhY2sscj1JRShuLFVFLl9fd2JpbmRnZW5fbWFsbG9jLFVFLl9fd2JpbmRnZW5fcmVhbGxvYyksaT1IRTtBRSgpLnNldEludDMyKGUrNCxpLCEwKSxBRSgpLnNldEludDMyKGUrMCxyLCEwKX0sX193YmluZGdlbl9jYXN0XzAwMDAwMDAwMDAwMDAwMDE6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gakUoZSx0KX0sX193YmluZGdlbl9pbml0X2V4dGVybnJlZl90YWJsZTpmdW5jdGlvbigpe2xldCBlPVVFLl9fd2JpbmRnZW5fZXh0ZXJucmVmcyx0PWUuZ3Jvdyg0KTtlLnNldCgwLHZvaWQgMCksZS5zZXQodCswLHZvaWQgMCksZS5zZXQodCsxLG51bGwpLGUuc2V0KHQrMiwhMCksZS5zZXQodCszLCExKX19fX1jb25zdCBERT10eXBlb2YgRmluYWxpemF0aW9uUmVnaXN0cnk+YHVgP3tyZWdpc3RlcjooKT0+e30sdW5yZWdpc3RlcjooKT0+e319Om5ldyBGaW5hbGl6YXRpb25SZWdpc3RyeShlPT5VRS5fX3diZ194bHN4YXJjaGl2ZV9mcmVlKGU+Pj4wLDEpKTtmdW5jdGlvbiBPRShlLHQpe3JldHVybiBlPj4+PTAsTkUoKS5zdWJhcnJheShlLzEsZS8xK3QpfWxldCBrRT1udWxsO2Z1bmN0aW9uIEFFKCl7cmV0dXJuKGtFPT09bnVsbHx8a0UuYnVmZmVyLmRldGFjaGVkPT09ITB8fGtFLmJ1ZmZlci5kZXRhY2hlZD09PXZvaWQgMCYma0UuYnVmZmVyIT09VUUubWVtb3J5LmJ1ZmZlcikmJihrRT1uZXcgRGF0YVZpZXcoVUUubWVtb3J5LmJ1ZmZlcikpLGtFfWZ1bmN0aW9uIGpFKGUsdCl7cmV0dXJuIGU+Pj49MCxCRShlLHQpfWxldCBNRT1udWxsO2Z1bmN0aW9uIE5FKCl7cmV0dXJuKE1FPT09bnVsbHx8TUUuYnl0ZUxlbmd0aD09PTApJiYoTUU9bmV3IFVpbnQ4QXJyYXkoVUUubWVtb3J5LmJ1ZmZlcikpLE1FfWZ1bmN0aW9uIFBFKGUpe3JldHVybiBlPT1udWxsfWZ1bmN0aW9uIEZFKGUsdCl7bGV0IG49dChlLmxlbmd0aCoxLDEpPj4+MDtyZXR1cm4gTkUoKS5zZXQoZSxuLzEpLEhFPWUubGVuZ3RoLG59ZnVuY3Rpb24gSUUoZSx0LG4pe2lmKG49PT12b2lkIDApe2xldCBuPVZFLmVuY29kZShlKSxyPXQobi5sZW5ndGgsMSk+Pj4wO3JldHVybiBORSgpLnN1YmFycmF5KHIscituLmxlbmd0aCkuc2V0KG4pLEhFPW4ubGVuZ3RoLHJ9bGV0IHI9ZS5sZW5ndGgsaT10KHIsMSk+Pj4wLGE9TkUoKSxvPTA7Zm9yKDtvPHI7bysrKXtsZXQgdD1lLmNoYXJDb2RlQXQobyk7aWYodD4xMjcpYnJlYWs7YVtpK29dPXR9aWYobyE9PXIpe28hPT0wJiYoZT1lLnNsaWNlKG8pKSxpPW4oaSxyLHI9bytlLmxlbmd0aCozLDEpPj4+MDtsZXQgdD1ORSgpLnN1YmFycmF5KGkrbyxpK3IpLGE9VkUuZW5jb2RlSW50byhlLHQpO28rPWEud3JpdHRlbixpPW4oaSxyLG8sMSk+Pj4wfXJldHVybiBIRT1vLGl9ZnVuY3Rpb24gTEUoZSl7bGV0IHQ9VUUuX193YmluZGdlbl9leHRlcm5yZWZzLmdldChlKTtyZXR1cm4gVUUuX19leHRlcm5yZWZfdGFibGVfZGVhbGxvYyhlKSx0fWxldCBSRT1uZXcgVGV4dERlY29kZXIoYHV0Zi04YCx7aWdub3JlQk9NOiEwLGZhdGFsOiEwfSk7UkUuZGVjb2RlKCk7bGV0IHpFPTA7ZnVuY3Rpb24gQkUoZSx0KXtyZXR1cm4gekUrPXQsekU+PTIxNDY0MzUwNzImJihSRT1uZXcgVGV4dERlY29kZXIoYHV0Zi04YCx7aWdub3JlQk9NOiEwLGZhdGFsOiEwfSksUkUuZGVjb2RlKCksekU9dCksUkUuZGVjb2RlKE5FKCkuc3ViYXJyYXkoZSxlK3QpKX1jb25zdCBWRT1uZXcgVGV4dEVuY29kZXI7YGVuY29kZUludG9gaW4gVkV8fChWRS5lbmNvZGVJbnRvPWZ1bmN0aW9uKGUsdCl7bGV0IG49VkUuZW5jb2RlKGUpO3JldHVybiB0LnNldChuKSx7cmVhZDplLmxlbmd0aCx3cml0dGVuOm4ubGVuZ3RofX0pO2xldCBIRT0wLFVFO2Z1bmN0aW9uIFdFKGUsdCl7cmV0dXJuIFVFPWUuZXhwb3J0cyxrRT1udWxsLE1FPW51bGwsVUUuX193YmluZGdlbl9zdGFydCgpLFVFfWFzeW5jIGZ1bmN0aW9uIEdFKGUsdCl7aWYodHlwZW9mIFJlc3BvbnNlPT1gZnVuY3Rpb25gJiZlIGluc3RhbmNlb2YgUmVzcG9uc2Upe2lmKHR5cGVvZiBXZWJBc3NlbWJseS5pbnN0YW50aWF0ZVN0cmVhbWluZz09YGZ1bmN0aW9uYCl0cnl7cmV0dXJuIGF3YWl0IFdlYkFzc2VtYmx5Lmluc3RhbnRpYXRlU3RyZWFtaW5nKGUsdCl9Y2F0Y2godCl7aWYoZS5vayYmbihlLnR5cGUpJiZlLmhlYWRlcnMuZ2V0KGBDb250ZW50LVR5cGVgKSE9PWBhcHBsaWNhdGlvbi93YXNtYCljb25zb2xlLndhcm4oImBXZWJBc3NlbWJseS5pbnN0YW50aWF0ZVN0cmVhbWluZ2AgZmFpbGVkIGJlY2F1c2UgeW91ciBzZXJ2ZXIgZG9lcyBub3Qgc2VydmUgV2FzbSB3aXRoIGBhcHBsaWNhdGlvbi93YXNtYCBNSU1FIHR5cGUuIEZhbGxpbmcgYmFjayB0byBgV2ViQXNzZW1ibHkuaW5zdGFudGlhdGVgIHdoaWNoIGlzIHNsb3dlci4gT3JpZ2luYWwgZXJyb3I6XG4iLHQpO2Vsc2UgdGhyb3cgdH1sZXQgcj1hd2FpdCBlLmFycmF5QnVmZmVyKCk7cmV0dXJuIGF3YWl0IFdlYkFzc2VtYmx5Lmluc3RhbnRpYXRlKHIsdCl9ZWxzZXtsZXQgbj1hd2FpdCBXZWJBc3NlbWJseS5pbnN0YW50aWF0ZShlLHQpO3JldHVybiBuIGluc3RhbmNlb2YgV2ViQXNzZW1ibHkuSW5zdGFuY2U/e2luc3RhbmNlOm4sbW9kdWxlOmV9Om59ZnVuY3Rpb24gbihlKXtzd2l0Y2goZSl7Y2FzZWBiYXNpY2A6Y2FzZWBjb3JzYDpjYXNlYGRlZmF1bHRgOnJldHVybiEwfXJldHVybiExfX1hc3luYyBmdW5jdGlvbiBLRShlKXtpZihVRSE9PXZvaWQgMClyZXR1cm4gVUU7ZSE9PXZvaWQgMCYmKE9iamVjdC5nZXRQcm90b3R5cGVPZihlKT09PU9iamVjdC5wcm90b3R5cGU/e21vZHVsZV9vcl9wYXRoOmV9PWU6Y29uc29sZS53YXJuKGB1c2luZyBkZXByZWNhdGVkIHBhcmFtZXRlcnMgZm9yIHRoZSBpbml0aWFsaXphdGlvbiBmdW5jdGlvbjsgcGFzcyBhIHNpbmdsZSBvYmplY3QgaW5zdGVhZGApKTtsZXQgdD1FRSgpOyh0eXBlb2YgZT09YHN0cmluZ2B8fHR5cGVvZiBSZXF1ZXN0PT1gZnVuY3Rpb25gJiZlIGluc3RhbmNlb2YgUmVxdWVzdHx8dHlwZW9mIFVSTD09YGZ1bmN0aW9uYCYmZSBpbnN0YW5jZW9mIFVSTCkmJihlPWZldGNoKGUpKTtsZXR7aW5zdGFuY2U6bixtb2R1bGU6cn09YXdhaXQgR0UoYXdhaXQgZSx0KTtyZXR1cm4gV0UobixyKX1hc3luYyBmdW5jdGlvbiBxRShlKXtyZXR1cm4gVUU9dm9pZCAwLGtFPW51bGwsTUU9bnVsbCxLRShlKX1mdW5jdGlvbiBKRShlLHQpe2lmKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihlKXx8ZTw9MCl0aHJvdyBUeXBlRXJyb3IoYCR7dH0gbXVzdCBiZSBhIHBvc2l0aXZlIHNhZmUgaW50ZWdlcmApfWZ1bmN0aW9uIFlFKGUpe2lmKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihlKXx8ZTwwKXRocm93IFR5cGVFcnJvcihgY2FjaGUgZW50cnkgd2VpZ2h0IG11c3QgYmUgYSBub24tbmVnYXRpdmUgc2FmZSBpbnRlZ2VyYCl9dmFyIFhFPWNsYXNzeyNlOyN0OyNuOyNyOyNpPW5ldyBNYXA7I2E9bmV3IE1hcDsjbz0wO2NvbnN0cnVjdG9yKGUpe0pFKGUubWF4RW50cmllcyxgbWF4RW50cmllc2ApLEpFKGUubWF4V2VpZ2h0LGBtYXhXZWlnaHRgKSx0aGlzLiNlPWUubWF4RW50cmllcyx0aGlzLiN0PWUubWF4V2VpZ2h0LHRoaXMuI249ZS5tZWFzdXJlLHRoaXMuI3I9ZS5vblJlbW92ZX1nZXQgdXNhZ2UoKXtyZXR1cm57ZW50cmllczp0aGlzLiNpLnNpemUsd2VpZ2h0OnRoaXMuI28scGVuZGluZzp0aGlzLiNhLnNpemV9fWhhcyhlKXtyZXR1cm4gdGhpcy4jaS5oYXMoZSl9Z2V0KGUpe2xldCB0PXRoaXMuI2kuZ2V0KGUpO2lmKHQhPT12b2lkIDApcmV0dXJuIHRoaXMuI2kuZGVsZXRlKGUpLHRoaXMuI2kuc2V0KGUsdCksdC52YWx1ZX1nZXRPckxvYWQoZSx0KXtsZXQgbj10aGlzLmdldChlKTtpZihuIT09dm9pZCAwfHx0aGlzLiNpLmhhcyhlKSlyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG4pO2xldCByPXRoaXMuI2EuZ2V0KGUpO2lmKHIhPT12b2lkIDApcmV0dXJuIHIucHJvbWlzZTtsZXQgaT17fSxhPVByb21pc2UucmVzb2x2ZSgpLnRoZW4odCkudGhlbih0PT50aGlzLiNjKGUsaSx0KSx0PT57dGhyb3cgdGhpcy4jcyhlLGkpLHR9KTtyZXR1cm4gdGhpcy4jYS5zZXQoZSx7dG9rZW46aSxwcm9taXNlOmF9KSxhfWRlbGV0ZShlKXtsZXQgdD10aGlzLiNhLmRlbGV0ZShlKSxuPXRoaXMuI2kuZ2V0KGUpO3JldHVybiBuPT09dm9pZCAwP3Q6KHRoaXMuI2kuZGVsZXRlKGUpLHRoaXMuI28tPW4ud2VpZ2h0LHRoaXMuI2wobi52YWx1ZSxlLGBkZWxldGVkYCksITApfWNsZWFyKCl7dGhpcy4jYS5jbGVhcigpO2xldCBlPVsuLi50aGlzLiNpXTt0aGlzLiNpLmNsZWFyKCksdGhpcy4jbz0wO2ZvcihsZXRbdCxuXW9mIGUpdGhpcy4jbChuLnZhbHVlLHQsYGNsZWFyZWRgKX0jcyhlLHQpe3RoaXMuI2EuZ2V0KGUpPy50b2tlbj09PXQmJnRoaXMuI2EuZGVsZXRlKGUpfSNjKGUsdCxuKXtpZih0aGlzLiNhLmdldChlKT8udG9rZW4hPT10KXJldHVybiBuO2xldCByO3RyeXtyPXRoaXMuI24obiksWUUocil9Y2F0Y2gobil7dGhyb3cgdGhpcy4jcyhlLHQpLG59aWYodGhpcy4jYS5nZXQoZSk/LnRva2VuIT09dHx8KHRoaXMuI2EuZGVsZXRlKGUpLHI+dGhpcy4jdCkpcmV0dXJuIG47bGV0IGk9W107Zm9yKDt0aGlzLiNpLnNpemU+PXRoaXMuI2V8fHI+dGhpcy4jdC10aGlzLiNvOyl7bGV0IGU9dGhpcy4jaS5lbnRyaWVzKCkubmV4dCgpLnZhbHVlO2lmKGU9PT12b2lkIDApYnJlYWs7bGV0W3Qsbl09ZTt0aGlzLiNpLmRlbGV0ZSh0KSx0aGlzLiNvLT1uLndlaWdodCxpLnB1c2goW3Qsbl0pfXRoaXMuI2kuc2V0KGUse3ZhbHVlOm4sd2VpZ2h0OnJ9KSx0aGlzLiNvKz1yO2ZvcihsZXRbZSx0XW9mIGkpdGhpcy4jbCh0LnZhbHVlLGUsYGV2aWN0ZWRgKTtyZXR1cm4gbn0jbChlLHQsbil7dHJ5e3RoaXMuI3I/LihlLHQsbil9Y2F0Y2h7fX19LFpFPWNsYXNzeyNlO2NvbnN0cnVjdG9yKGUpe3RoaXMuI2U9bmV3IFhFKHttYXhFbnRyaWVzOmUubWF4RW50cmllcyxtYXhXZWlnaHQ6ZS5tYXhCeXRlcyxtZWFzdXJlOmU9PmUuc2l6ZX0pfWdldCB1c2FnZSgpe2xldCBlPXRoaXMuI2UudXNhZ2U7cmV0dXJue2VudHJpZXM6ZS5lbnRyaWVzLGJ5dGVzOmUud2VpZ2h0LHBlbmRpbmc6ZS5wZW5kaW5nfX1hc3luYyBnZXQoZSx0LG4pe2lmKHR5cGVvZiBlIT1gc3RyaW5nYHx8ZS5sZW5ndGg9PT0wKXRocm93IFR5cGVFcnJvcihgcmF3IHBhY2thZ2UgcGFydCBwYXRoIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nYCk7aWYodHlwZW9mIHQhPWBzdHJpbmdgKXRocm93IFR5cGVFcnJvcihgcmF3IHBhY2thZ2UgcGFydCBNSU1FIHR5cGUgbXVzdCBiZSBhIHN0cmluZ2ApO2xldCByPWF3YWl0IHRoaXMuI2UuZ2V0T3JMb2FkKGUsYXN5bmMoKT0+e2xldCBlPWF3YWl0IG4oKTtpZighKGUgaW5zdGFuY2VvZiBCbG9iKSl0aHJvdyBUeXBlRXJyb3IoYHJhdyBwYWNrYWdlIHBhcnQgbG9hZGVyIG11c3QgcmV0dXJuIGEgQmxvYmApO3JldHVybiBlfSk7cmV0dXJuIHQ9PT1gYHx8ci50eXBlPT09dD9yOnIuc2xpY2UoMCxyLnNpemUsdCl9Y2xlYXIoKXt0aGlzLiNlLmNsZWFyKCl9fTtmdW5jdGlvbiBRRShlLHQsbil7cmV0dXJue3dzOmUsc3R5bGVzOnQsbWF0aDpuLm1hdGgsdGhyZWVEOm4udGhyZWVELHJlZ2lvbk1hcDpuLnJlZ2lvbk1hcCxjaGFydEV4Om4uY2hhcnRFeCx0aWZmOm4udGlmZn19ZnVuY3Rpb24gJEUoZSx0KXtmb3IobGV0IG4gb2YgZSlmb3IobGV0IGUgb2Ygbi5jZWxscyl7bGV0IG49ZS52YWx1ZTtpZihuLnR5cGU9PT1gc2hhcmVkYCl7bGV0IHI9dFtuLnNpXTtpZihyKXtsZXQgdD17dHlwZTpgdGV4dGAsdGV4dDpyLnRleHR9O3IucnVucyE9PXZvaWQgMCYmKHQucnVucz1yLnJ1bnMpLHIucGhvbmV0aWNSdW5zIT09dm9pZCAwJiYodC5waG9uZXRpY1J1bnM9ci5waG9uZXRpY1J1bnMpLHIucGhvbmV0aWNQciE9PXZvaWQgMCYmKHQucGhvbmV0aWNQcj1yLnBob25ldGljUHIpLGUudmFsdWU9dH1lbHNlIGUudmFsdWU9e3R5cGU6YHRleHRgLHRleHQ6YGB9fX1yZXR1cm4gZX1mdW5jdGlvbiBlRChlLHQpe2lmKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihlKXx8ZTwwKXRocm93IEVycm9yKGAke3R9IG11c3QgYmUgYSBub24tbmVnYXRpdmUgc2FmZSBpbnRlZ2VyYCl9ZnVuY3Rpb24gdEQoZSx0LG4pe3JldHVybiBlRChlLGByZXNvdXJjZSBtZWFzdXJlbWVudGApLGVEKHQsYHJlc291cmNlIG1lYXN1cmVtZW50YCksZUQobixgcmVzb3VyY2UgbWVhc3VyZW1lbnQgbGltaXRgKSxlPm58fHQ+bnx8dD5uLWU/bj09PTIqKjUzLTE/bjpuKzE6ZSt0fWZ1bmN0aW9uIG5EKGUsdD0yKio1My0xKXtlRCh0LGByZXNvdXJjZSBtZWFzdXJlbWVudCBsaW1pdGApO2xldCBuPTA7Zm9yKGxldCByPTA7cjxlLmxlbmd0aDtyKz0xKXtsZXQgaT1lLmNoYXJDb2RlQXQociksYTtpZihpPD0xMjcpYT0xO2Vsc2UgaWYoaTw9MjA0NylhPTI7ZWxzZSBpZihpPj01NTI5NiYmaTw9NTYzMTkmJnIrMTxlLmxlbmd0aCl7bGV0IHQ9ZS5jaGFyQ29kZUF0KHIrMSk7dD49NTYzMjAmJnQ8PTU3MzQzPyhhPTQscis9MSk6YT0zfWVsc2UgYT0zO2lmKG49dEQobixhLHQpLG4+dClyZXR1cm4gbn1yZXR1cm4gbn1mdW5jdGlvbiByRChlLHQ9MioqNTMtMSl7ZUQodCxgcmVzb3VyY2UgbWVhc3VyZW1lbnQgbGltaXRgKTtsZXQgbj10RCgwLDIsdCk7aWYobj50KXJldHVybiBuO2ZvcihsZXQgcj0wO3I8ZS5sZW5ndGg7cis9MSl7bGV0IGk9ZS5jaGFyQ29kZUF0KHIpLGE7aWYoaT09PTM0fHxpPT09OTJ8fGk9PT04fHxpPT09OXx8aT09PTEwfHxpPT09MTJ8fGk9PT0xMylhPTI7ZWxzZSBpZihpPD0zMSlhPTY7ZWxzZSBpZihpPD0xMjcpYT0xO2Vsc2UgaWYoaTw9MjA0NylhPTI7ZWxzZSBpZihpPj01NTI5NiYmaTw9NTYzMTkmJnIrMTxlLmxlbmd0aCl7bGV0IHQ9ZS5jaGFyQ29kZUF0KHIrMSk7dD49NTYzMjAmJnQ8PTU3MzQzPyhhPTQscis9MSk6YT02fWVsc2UgYT1pPj01NTI5NiYmaTw9NTczNDM/NjozO2lmKG49dEQobixhLHQpLG4+dClyZXR1cm4gbn1yZXR1cm4gbn1mdW5jdGlvbiBpRChlLHQpe3JldHVybiB0RCgwLGUsdCl9ZnVuY3Rpb24gYUQoZSx0PTIqKjUzLTEsbj0hMSl7aWYoZUQodCxgcmVzb3VyY2UgbWVhc3VyZW1lbnQgbGltaXRgKSxlPT09bnVsbClyZXR1cm57anNvbkJ5dGVzOmlEKDQsdCksc3RyaW5nVmFsdWVVdGY4Qnl0ZXM6MH07aWYodHlwZW9mIGU9PWBzdHJpbmdgKXJldHVybntqc29uQnl0ZXM6ckQoZSx0KSxzdHJpbmdWYWx1ZVV0ZjhCeXRlczpuRChlLHQpfTtpZih0eXBlb2YgZT09YGJvb2xlYW5gKXJldHVybntqc29uQnl0ZXM6aUQoZT80OjUsdCksc3RyaW5nVmFsdWVVdGY4Qnl0ZXM6MH07aWYodHlwZW9mIGU9PWBudW1iZXJgKXJldHVybntqc29uQnl0ZXM6aUQoKE51bWJlci5pc0Zpbml0ZShlKT9TdHJpbmcoT2JqZWN0LmlzKGUsLTApPzA6ZSk6YG51bGxgKS5sZW5ndGgsdCksc3RyaW5nVmFsdWVVdGY4Qnl0ZXM6MH07aWYodHlwZW9mIGU9PWBiaWdpbnRgKXRocm93IFR5cGVFcnJvcihgQmlnSW50IHZhbHVlcyBjYW5ub3QgYmUgc2VyaWFsaXplZCB0byBKU09OYCk7aWYoQXJyYXkuaXNBcnJheShlKSl7bGV0IG49aUQoMix0KSxyPTA7Zm9yKGxldCBpPTA7aTxlLmxlbmd0aDtpKz0xKXtpIT09MCYmKG49dEQobiwxLHQpKTtsZXQgYT1hRChlW2ldLHQsITApO249dEQobixhLmpzb25CeXRlcyx0KSxyPXREKHIsYS5zdHJpbmdWYWx1ZVV0ZjhCeXRlcyx0KX1yZXR1cm57anNvbkJ5dGVzOm4sc3RyaW5nVmFsdWVVdGY4Qnl0ZXM6cn19aWYodHlwZW9mIGU9PWBvYmplY3RgKXtsZXQgbj1pRCgyLHQpLHI9MCxpPTA7Zm9yKGxldFthLG9db2YgT2JqZWN0LmVudHJpZXMoZSkpe2lmKG89PT12b2lkIDB8fHR5cGVvZiBvPT1gZnVuY3Rpb25gfHx0eXBlb2Ygbz09YHN5bWJvbGApY29udGludWU7aSsrIT09MCYmKG49dEQobiwxLHQpKSxuPXREKG4sckQoYSx0KSx0KSxuPXREKG4sMSx0KTtsZXQgZT1hRChvLHQpO249dEQobixlLmpzb25CeXRlcyx0KSxyPXREKHIsZS5zdHJpbmdWYWx1ZVV0ZjhCeXRlcyx0KX1yZXR1cm57anNvbkJ5dGVzOm4sc3RyaW5nVmFsdWVVdGY4Qnl0ZXM6cn19cmV0dXJue2pzb25CeXRlczpuP2lEKDQsdCk6MCxzdHJpbmdWYWx1ZVV0ZjhCeXRlczowfX12YXIgb0Q9dCgoKCk9Pnt9KSk7ZnVuY3Rpb24gc0QoZSl7bGV0IHQ9ZS5yZWR1Y2UoKGUsdCk9PnREKGUsdC5jZWxscy5sZW5ndGgsX0QpLDApO3JldHVybntyb3dzOmUubGVuZ3RoLGNlbGxzOnQsb3duZWRVdGY4Qnl0ZXM6ZS5yZWR1Y2UoKGUsdCk9PnQuY2VsbHMucmVkdWNlKChlLHQpPT57bGV0IG49YUQodC52YWx1ZSx2RCkuc3RyaW5nVmFsdWVVdGY4Qnl0ZXM7cmV0dXJuIHREKGUsdEQobix0LmZvcm11bGE9PT12b2lkIDA/MDpuRCh0LmZvcm11bGEsdkQpLHZEKSx2RCl9LGUpLDApfX1mdW5jdGlvbiBjRChlKXtyZXR1cm4gbEQoZSxzRChlLnJvd3MpKX1mdW5jdGlvbiBsRChlLHQpe2xldCBuPWFEKGUsTWF0aC5tYXgodkQseUQpKTtyZXR1cm57Li4udCxqc29uQnl0ZXM6bi5qc29uQnl0ZXN9fWZ1bmN0aW9uIHVEKGUsdCl7cmV0dXJue3Jvd3M6dEQoZS5yb3dzLHQucm93cyxnRCksY2VsbHM6dEQoZS5jZWxscyx0LmNlbGxzLF9EKSxvd25lZFV0ZjhCeXRlczp0RChlLm93bmVkVXRmOEJ5dGVzLHQub3duZWRVdGY4Qnl0ZXMsdkQpfX1mdW5jdGlvbiBkRChlLHQsbj17fSl7bGV0IHI9ZS5yb3dzLShuLnJvd3M/PzApLGk9ZS5jZWxscy0obi5jZWxscz8/MCksYT1lLm93bmVkVXRmOEJ5dGVzLShuLm93bmVkVXRmOEJ5dGVzPz8wKSxvPWUuanNvbkJ5dGVzLShuLmpzb25CeXRlcz8/MCk7aWYocjwwfHxpPDB8fGE8MHx8bzwwKXRocm93IEVycm9yKGB3b3Jrc2hlZXQgY2FjaGUgYWNjb3VudGluZyB1bmRlcmZsb3dgKTtyZXR1cm57cm93czp0RChyLHQucm93cyxiRCksY2VsbHM6dEQoaSx0LmNlbGxzLHhEKSxvd25lZFV0ZjhCeXRlczp0RChhLHQub3duZWRVdGY4Qnl0ZXMsU0QpLGpzb25CeXRlczp0RChvLHQuanNvbkJ5dGVzLENEKX19ZnVuY3Rpb24gZkQoZSx0LG4scixhLG8scyl7bGV0IGM9bj09PWB3b3Jrc2hlZXQtanNvbmA/YHNlcmlhbGl6YXRpb25gOmBwYXJzaW5nYDtyZXR1cm4gbmV3IGkoYE9PWE1MIHJlc291cmNlIGxpbWl0IGV4Y2VlZGVkJHt0P2AgZm9yICR7dH1gOmBgfTogJHtyfSAke299ID4gJHthfWAse3N0YWdlOmMsdmlvbGF0aW9uOntmb3JtYXQ6YHhsc3hgLG9wZXJhdGlvbjplLHJlc291cmNlOm4sbWV0cmljOnIsLi4udD09PXZvaWQgMD97fTp7cGFydDp0fSxsaW1pdDphLG9ic2VydmVkOk1hdGgubWluKG8sYSsxKSxjb25maWd1cmFibGU6ITEsdXNhZ2U6cz8/d0R9fSl9ZnVuY3Rpb24gcEQoZSx0LG4scil7bGV0IGk9W1tgcm93c2AsZS5yb3dzLGdEXSxbYGNlbGxzYCxlLmNlbGxzLF9EXSxbYG93bmVkLXV0ZjgtYnl0ZXNgLGUub3duZWRVdGY4Qnl0ZXMsdkRdXTtmb3IobGV0W2UsYSxvXW9mIGkpaWYoYT5vKXRocm93IGZEKHQsbixlPT09YG93bmVkLXV0ZjgtYnl0ZXNgP2B3b3Jrc2hlZXQtY2VsbC1jb250ZW50YDpgd29ya3NoZWV0LW1vZGVsYCxlLG8sYSxyKX1mdW5jdGlvbiBtRChlLHQsbixyKXtpZihlPnlEKXRocm93IGZEKHQsbixgd29ya3NoZWV0LWpzb25gLGBieXRlc2AseUQsZSxyKX1mdW5jdGlvbiBoRChlLHQsbixyKXtpZihlLnJvd3M+YkQpdGhyb3cgZkQodCxuLGB3b3Jrc2hlZXQtY2FjaGVgLGByb3dzYCxiRCxlLnJvd3Mscik7aWYoZS5jZWxscz54RCl0aHJvdyBmRCh0LG4sYHdvcmtzaGVldC1jYWNoZWAsYGNlbGxzYCx4RCxlLmNlbGxzLHIpO2lmKGUub3duZWRVdGY4Qnl0ZXM+U0QpdGhyb3cgZkQodCxuLGB3b3Jrc2hlZXQtY2FjaGVgLGBvd25lZC11dGY4LWJ5dGVzYCxTRCxlLm93bmVkVXRmOEJ5dGVzLHIpO2lmKGUuanNvbkJ5dGVzPkNEKXRocm93IGZEKHQsbixgd29ya3NoZWV0LWNhY2hlYCxgYnl0ZXNgLENELGUuanNvbkJ5dGVzLHIpfXZhciBnRCxfRCx2RCx5RCxiRCx4RCxTRCxDRCx3RCxURD10KCgoKT0+e293KCksYkUoKSxvRCgpLGdEPXgsX0Q9Uyx2RD1DLHlEPXcsYkQ9VCx4RD1FLFNEPUQsQ0Q9Tyx3RD1PYmplY3QuZnJlZXplKHthcmNoaXZlRW50cnlDb3VudDowLGRlY2xhcmVkSW5mbGF0ZWRCeXRlczowLGRpc3RpbmN0SW5mbGF0ZWRCeXRlczowLG9wZXJhdGlvbkluZmxhdGVkQnl0ZXM6MH0pfSkpO2Z1bmN0aW9uIEVEKGUsdD04KXtyZXR1cm4gTWF0aC50cnVuYygoMjU2KmUrTWF0aC50cnVuYygxMjgvdCkpLzI1Nip0KX1mdW5jdGlvbiBERChlLHQ9OCl7cmV0dXJuIGUvdH1mdW5jdGlvbiBPRChlKXtyZXR1cm4gTWF0aC5yb3VuZChlKnV0KX1mdW5jdGlvbiBrRChlKXtyZXR1cm4gZS91dH12YXIgQUQ9dCgoKCk9PntiRSgpfSkpLGpELE1EPXQoKCgpPT57akQ9Y2xhc3MgZXtpbmRpY2VzO2N1bXVsYXRpdmVEZWx0YTtjdXN0b21QeDtkZWZhdWx0UHg7Y29uc3RydWN0b3IoZSx0LG4scixpKXt0aGlzLm1heEluZGV4PXIsdGhpcy5kZWZhdWx0UHg9TnVtYmVyLmlzRmluaXRlKHQpJiZ0Pj0wP3Q6MCx0aGlzLmluZGljZXM9aT9pLm1hcChlPT5lLmluZGV4KTpPYmplY3Qua2V5cyhlKS5tYXAoTnVtYmVyKS5maWx0ZXIoZT0+ZT49MSYmZTw9cikuc29ydCgoZSx0KT0+ZS10KSx0aGlzLmN1bXVsYXRpdmVEZWx0YT1BcnJheSh0aGlzLmluZGljZXMubGVuZ3RoKSx0aGlzLmN1c3RvbVB4PUFycmF5KHRoaXMuaW5kaWNlcy5sZW5ndGgpO2xldCBhPTA7Zm9yKGxldCB0PTA7dDx0aGlzLmluZGljZXMubGVuZ3RoO3QrKyl7bGV0IHI9aT8uW3RdPy5weD8/bihlW3RoaXMuaW5kaWNlc1t0XV0pLG89TnVtYmVyLmlzRmluaXRlKHIpJiZyPj0wP3I6dGhpcy5kZWZhdWx0UHg7dGhpcy5jdXN0b21QeFt0XT1vLGErPW8tdGhpcy5kZWZhdWx0UHgsdGhpcy5jdW11bGF0aXZlRGVsdGFbdF09YX19ZGVsdGFCZWZvcmUoZSl7bGV0IHQ9MCxuPXRoaXMuaW5kaWNlcy5sZW5ndGg7Zm9yKDt0PG47KXtsZXQgcj10K24+PjE7dGhpcy5pbmRpY2VzW3JdPGU/dD1yKzE6bj1yfXJldHVybiB0PT09MD8wOnRoaXMuY3VtdWxhdGl2ZURlbHRhW3QtMV19b2Zmc2V0T2YoZSl7cmV0dXJuKGUtMSkqdGhpcy5kZWZhdWx0UHgrdGhpcy5kZWx0YUJlZm9yZShlKX1pbmRleEF0KGUpe2lmKGU8MClyZXR1cm57aW5kZXg6MSxwYXJ0aWFsOjB9O2xldCB0PTEsbj10aGlzLm1heEluZGV4O2Zvcig7dDxuOyl7bGV0IHI9dCtuKzE+PjE7dGhpcy5vZmZzZXRPZihyKTw9ZT90PXI6bj1yLTF9cmV0dXJue2luZGV4OnQscGFydGlhbDplLXRoaXMub2Zmc2V0T2YodCl9fXNjcm9sbGFibGVJbmRleEF0KGUsdCl7bGV0IG49ZSt0aGlzLm9mZnNldE9mKHQpO3JldHVybiBuPj10aGlzLm9mZnNldE9mKHRoaXMubWF4SW5kZXgpK3RoaXMuc2l6ZU9mKHRoaXMubWF4SW5kZXgpP251bGw6dGhpcy5pbmRleEF0KG4pLmluZGV4fXNpemVPZihlKXtyZXR1cm4gdGhpcy5vZmZzZXRPZihlKzEpLXRoaXMub2Zmc2V0T2YoZSl9c2NhbGVkKHQpe3JldHVybiBuZXcgZSh7fSxNYXRoLnJvdW5kKHRoaXMuZGVmYXVsdFB4KnQpLGU9PmUsdGhpcy5tYXhJbmRleCx0aGlzLmluZGljZXMubWFwKChlLG4pPT4oe2luZGV4OmUscHg6TWF0aC5yb3VuZCh0aGlzLmN1c3RvbVB4W25dKnQpfSkpKX1jb3VudFRvQ292ZXIoZSx0KXtpZihlPnRoaXMubWF4SW5kZXh8fHQ8PTApcmV0dXJuIDA7bGV0IG49dGhpcy5vZmZzZXRPZihlKSt0O2lmKG4+PXRoaXMub2Zmc2V0T2YodGhpcy5tYXhJbmRleCkrdGhpcy5zaXplT2YodGhpcy5tYXhJbmRleCkpcmV0dXJuIHRoaXMubWF4SW5kZXgtZSsxO2xldCByPXRoaXMuaW5kZXhBdChuKTtyZXR1cm4gci5pbmRleC1lKyArKHIucGFydGlhbD4wKX1iYW5kc1RvQ292ZXIoZSx0LG49MS8wKXtsZXQgcj1NYXRoLm1heCgxLGUpLGk9TWF0aC5taW4odGhpcy5tYXhJbmRleCx0KTtpZihyPml8fG48PTApcmV0dXJuW107bGV0IGE9W10sbz0wLHM9TWF0aC5tYXgocix0aGlzLmluZGV4QXQodGhpcy5vZmZzZXRPZihyKSkuaW5kZXgpO2Zvcig7czw9aSYmbzxuOyl7bGV0IGU9dGhpcy5zaXplT2Yocyk7aWYoTnVtYmVyLmlzRmluaXRlKGUpJiZlPjAmJihhLnB1c2goe2luZGV4OnMsc2l6ZTplfSksbys9ZSkscz49aSlicmVhaztsZXQgdD10aGlzLm9mZnNldE9mKHMrMSksbj10aGlzLmluZGV4QXQodCkuaW5kZXg7cz1NYXRoLm1heChzKzEsbil9cmV0dXJuIGF9fX0pKSxORCxQRCxGRCxJRD10KCgoKT0+e0FEKCksTUQoKSxORD0xMDQ4NTc2LFBEPTE2Mzg0LEZEPWNsYXNzIGV7c3RhdGljIGNhY2hlPW5ldyBXZWFrTWFwO3N0YXRpYyBmb3JXb3Jrc2hlZXQodCxuKXtsZXQgcj10aGlzLmNhY2hlLmdldCh0KTtpZihyJiZPYmplY3QuaXMoci5tZHcsbikpcmV0dXJuIHIuZ2VvbWV0cnk7bGV0IGk9bmV3IGUodCxuKTtyZXR1cm4gdGhpcy5jYWNoZS5zZXQodCx7bWR3Om4sZ2VvbWV0cnk6aX0pLGl9c3RhdGljIGZvcldvcmtzaGVldE1lYXN1cmVkKGUsdCl7bGV0IG49dGhpcy5jYWNoZS5nZXQoZSk7cmV0dXJuIG4/bi5nZW9tZXRyeTp0aGlzLmZvcldvcmtzaGVldChlLHQoKSl9c3RhdGljIGludmFsaWRhdGUoZSl7dGhpcy5jYWNoZS5kZWxldGUoZSl9Y29sO3JvdzttYXhpbXVtRGlnaXRXaWR0aDtmcmVlemVSb3dzO2ZyZWV6ZUNvbHM7c2NhbGVkQ2FjaGU9bnVsbDtjb25zdHJ1Y3RvcihlLHQpe3RoaXMubWF4aW11bURpZ2l0V2lkdGg9dCx0aGlzLmZyZWV6ZVJvd3M9TWF0aC5taW4oTkQsTWF0aC5tYXgoMCxlLmZyZWV6ZVJvd3M/PzApKSx0aGlzLmZyZWV6ZUNvbHM9TWF0aC5taW4oUEQsTWF0aC5tYXgoMCxlLmZyZWV6ZUNvbHM/PzApKTtsZXQgbj1FRChlLmRlZmF1bHRDb2xXaWR0aCx0KSxyPW5ldyBGbG9hdDY0QXJyYXkoUEQrMSk7ci5maWxsKE5hTik7bGV0IGk9bmV3IEludDMyQXJyYXkoUEQrMik7Zm9yKGxldCBlPTE7ZTxpLmxlbmd0aDtlKyspaVtlXT1lO2xldCBhPWU9PntsZXQgdD1lO2Zvcig7aVt0XSE9PXQ7KXQ9aVt0XTtsZXQgbj1lO2Zvcig7aVtuXSE9PW47KXtsZXQgZT1pW25dO2lbbl09dCxuPWV9cmV0dXJuIHR9LG89ZS5jb2xXaWR0aFJhbmdlcz8/W107Zm9yKGxldCBlPW8ubGVuZ3RoLTE7ZT49MDtlLS0pe2xldCB0PW9bZV0sbj1NYXRoLm1heCgxLE1hdGgubWluKFBELE1hdGgudHJ1bmModC5taW4pKSkscz1NYXRoLm1heCgxLE1hdGgubWluKFBELE1hdGgudHJ1bmModC5tYXgpKSk7aWYoczxufHwhTnVtYmVyLmlzRmluaXRlKHQud2lkdGgpfHx0LndpZHRoPDApY29udGludWU7bGV0IGM9YShuKTtmb3IoO2M8PXM7KXJbY109dC53aWR0aCxpW2NdPWEoYysxKSxjPWlbY119Zm9yKGxldFt0LG5db2YgT2JqZWN0LmVudHJpZXMoZS5jb2xXaWR0aHMpKXtsZXQgZT1OdW1iZXIodCk7TnVtYmVyLmlzSW50ZWdlcihlKSYmZT49MSYmZTw9MTYzODQmJihyW2VdPW4pfWxldCBzPVtdO2ZvcihsZXQgZT0xO2U8PVBEO2UrKyl7bGV0IGk9cltlXTtpZighTnVtYmVyLmlzRmluaXRlKGkpfHxpPDApY29udGludWU7bGV0IGE9RUQoaSx0KTthIT09biYmcy5wdXNoKHtpbmRleDplLHB4OmF9KX10aGlzLmNvbD1uZXcgakQoe30sbixlPT5FRChlLHQpLFBELHMpLHRoaXMucm93PW5ldyBqRChlLnJvd0hlaWdodHMsT0QoZS5kZWZhdWx0Um93SGVpZ2h0KSxPRCxORCl9bG9naWNhbEZyb3plbkV4dGVudCgpe3JldHVybnt3aWR0aDp0aGlzLmNvbC5vZmZzZXRPZih0aGlzLmZyZWV6ZUNvbHMrMSksaGVpZ2h0OnRoaXMucm93Lm9mZnNldE9mKHRoaXMuZnJlZXplUm93cysxKX19cm91bmRlZEZyb3plbkV4dGVudChlKXtsZXQgdD10aGlzLmF4ZXNBdFNjYWxlKGUpO3JldHVybnt3aWR0aDp0LmNvbC5vZmZzZXRPZih0aGlzLmZyZWV6ZUNvbHMrMSksaGVpZ2h0OnQucm93Lm9mZnNldE9mKHRoaXMuZnJlZXplUm93cysxKX19ZWZmZWN0aXZlRnJvemVuQmFuZHMoZSl7bGV0IHQ9dGhpcy5heGVzQXRTY2FsZShlLnNjYWxlKSxuPXQucm93LmJhbmRzVG9Db3ZlcigxLE1hdGgubWF4KDAsZS5yb3dzKSxNYXRoLm1heCgwLGUuaGVpZ2h0LU1hdGgucm91bmQoZS5oZWFkZXJIZWlnaHQqZS5zY2FsZSkpKSxyPXQuY29sLmJhbmRzVG9Db3ZlcigxLE1hdGgubWF4KDAsZS5jb2xzKSxNYXRoLm1heCgwLGUud2lkdGgtTWF0aC5yb3VuZChlLmhlYWRlcldpZHRoKmUuc2NhbGUpKSk7cmV0dXJue3Jvd3M6bi5hdCgtMSk/LmluZGV4Pz8wLGNvbHM6ci5hdCgtMSk/LmluZGV4Pz8wfX1sb2dpY2FsQ29udGVudEV4dGVudChlLHQsbixyKXtyZXR1cm57d2lkdGg6bit0aGlzLmNvbC5vZmZzZXRPZihNYXRoLm1pbihQRCx0KSsxKSxoZWlnaHQ6cit0aGlzLnJvdy5vZmZzZXRPZihNYXRoLm1pbihORCxlKSsxKX19cm91bmRlZENvbnRlbnRFeHRlbnQoZSx0LG4scixpKXtsZXQgYT10aGlzLmF4ZXNBdFNjYWxlKG4pO3JldHVybnt3aWR0aDpNYXRoLnJvdW5kKHIqbikrYS5jb2wub2Zmc2V0T2YoTWF0aC5taW4oUEQsdCkrMSksaGVpZ2h0Ok1hdGgucm91bmQoaSpuKSthLnJvdy5vZmZzZXRPZihNYXRoLm1pbihORCxlKSsxKX19Y2VsbEF0KGUsdCxuKXtpZihlPDB8fHQ8MClyZXR1cm4gbnVsbDtsZXQgcj10aGlzLnJvd0F0KHQsbi5zY3JvbGxZLG4uc2NhbGUpO2lmKHI9PT1udWxsKXJldHVybiBudWxsO2xldCBpPXRoaXMuY29sQXQoZSxuLnNjcm9sbFgsbi5zY2FsZSk7cmV0dXJuIGk9PT1udWxsP251bGw6e3JvdzpyLGNvbDppfX1yb3dBdChlLHQsbj0xKXtpZihlPDApcmV0dXJuIG51bGw7bGV0IHI9dGhpcy5heGVzQXRTY2FsZShuKS5yb3csaT1yLm9mZnNldE9mKHRoaXMuZnJlZXplUm93cysxKTtyZXR1cm4gZTxpP3RoaXMuaW5kZXhXaXRoaW5Gcm96ZW4ocixlLHRoaXMuZnJlZXplUm93cyk6ci5zY3JvbGxhYmxlSW5kZXhBdChlLWkrdCx0aGlzLmZyZWV6ZVJvd3MrMSl9Y29sQXQoZSx0LG49MSl7aWYoZTwwKXJldHVybiBudWxsO2xldCByPXRoaXMuYXhlc0F0U2NhbGUobikuY29sLGk9ci5vZmZzZXRPZih0aGlzLmZyZWV6ZUNvbHMrMSk7cmV0dXJuIGU8aT90aGlzLmluZGV4V2l0aGluRnJvemVuKHIsZSx0aGlzLmZyZWV6ZUNvbHMpOnIuc2Nyb2xsYWJsZUluZGV4QXQoZS1pK3QsdGhpcy5mcmVlemVDb2xzKzEpfWNlbGxSZWN0KGUsdCxuKXtpZihlPDF8fGU+MTA0ODU3Nnx8dDwxfHx0PjE2Mzg0KXJldHVybiBudWxsO2xldCByPXRoaXMuYXhlc0F0U2NhbGUobi5zY2FsZSksaT1NYXRoLnJvdW5kKG4uaGVhZGVyV2lkdGgqbi5zY2FsZSksYT1NYXRoLnJvdW5kKG4uaGVhZGVySGVpZ2h0Km4uc2NhbGUpLG89dGhpcy5yb3VuZGVkRnJvemVuRXh0ZW50KG4uc2NhbGUpO3JldHVybnt4OnQ8PXRoaXMuZnJlZXplQ29scz9pK3IuY29sLm9mZnNldE9mKHQpOnRoaXMuc2Nyb2xsYWJsZUNlbGxQb3NpdGlvbihyLmNvbCx0LHRoaXMuZnJlZXplQ29scyxuLnNjcm9sbFgsaStvLndpZHRoKSx5OmU8PXRoaXMuZnJlZXplUm93cz9hK3Iucm93Lm9mZnNldE9mKGUpOnRoaXMuc2Nyb2xsYWJsZUNlbGxQb3NpdGlvbihyLnJvdyxlLHRoaXMuZnJlZXplUm93cyxuLnNjcm9sbFksYStvLmhlaWdodCksdzpyLmNvbC5zaXplT2YodCksaDpyLnJvdy5zaXplT2YoZSl9fXZpc2libGVSYW5nZShlKXtsZXQgdD10aGlzLmF4ZXNBdFNjYWxlKGUuc2NhbGUpLG49dGhpcy5yb3VuZGVkRnJvemVuRXh0ZW50KGUuc2NhbGUpLHI9dC5jb2wuaW5kZXhBdChlLnNjcm9sbFgrdC5jb2wub2Zmc2V0T2YodGhpcy5mcmVlemVDb2xzKzEpKSxpPXQucm93LmluZGV4QXQoZS5zY3JvbGxZK3Qucm93Lm9mZnNldE9mKHRoaXMuZnJlZXplUm93cysxKSksYT1lLndpZHRoLU1hdGgucm91bmQoZS5oZWFkZXJXaWR0aCplLnNjYWxlKS1uLndpZHRoLG89ZS5oZWlnaHQtTWF0aC5yb3VuZChlLmhlYWRlckhlaWdodCplLnNjYWxlKS1uLmhlaWdodCxzPWUuYnVmZmVyPz8wO3JldHVybntyYW5nZTp7cm93OmkuaW5kZXgsY29sOnIuaW5kZXgscm93czp0LnJvdy5jb3VudFRvQ292ZXIoaS5pbmRleCxvK2kucGFydGlhbCoyKStzLGNvbHM6dC5jb2wuY291bnRUb0NvdmVyKHIuaW5kZXgsYStyLnBhcnRpYWwqMikrc30sb2Zmc2V0WDpyLnBhcnRpYWwvZS5zY2FsZSxvZmZzZXRZOmkucGFydGlhbC9lLnNjYWxlLGZyb3plbldpZHRoOm4ud2lkdGgvZS5zY2FsZSxmcm96ZW5IZWlnaHQ6bi5oZWlnaHQvZS5zY2FsZX19c2Nyb2xsT2Zmc2V0Rm9yQ2VsbChlLHQsbil7bGV0IHI9dGhpcy5yb3VuZGVkRnJvemVuRXh0ZW50KG4uc2NhbGUpLGk9TWF0aC5yb3VuZChuLmhlYWRlckhlaWdodCpuLnNjYWxlKStyLmhlaWdodCxhPU1hdGgucm91bmQobi5oZWFkZXJXaWR0aCpuLnNjYWxlKStyLndpZHRoLG89bi5jdXJyZW50WSxzPXRoaXMuYXhlc0F0U2NhbGUobi5zY2FsZSk7aWYoZT50aGlzLmZyZWV6ZVJvd3MmJmU8PTEwNDg1NzYpe2xldCB0PXMucm93Lm9mZnNldE9mKGUpLXMucm93Lm9mZnNldE9mKHRoaXMuZnJlZXplUm93cysxKSxyPXMucm93LnNpemVPZihlKTtvPXRoaXMuYWxpZ25lZE9mZnNldCh0LHIsbi5jdXJyZW50WSxpLG4udmlld3BvcnRIZWlnaHQsbi5hbGlnbil9bGV0IGM9bi5jdXJyZW50WDtpZih0PnRoaXMuZnJlZXplQ29scyYmdDw9MTYzODQpe2xldCBlPXMuY29sLm9mZnNldE9mKHQpLXMuY29sLm9mZnNldE9mKHRoaXMuZnJlZXplQ29scysxKSxyPXMuY29sLnNpemVPZih0KTtjPXRoaXMuYWxpZ25lZE9mZnNldChlLHIsbi5jdXJyZW50WCxhLG4udmlld3BvcnRXaWR0aCxuLmFsaWduKX1yZXR1cm57eDpNYXRoLm1heCgwLGMpLHk6TWF0aC5tYXgoMCxvKX19YXhlc0F0U2NhbGUoZSl7aWYodGhpcy5zY2FsZWRDYWNoZT8uc2NhbGU9PT1lKXJldHVybiB0aGlzLnNjYWxlZENhY2hlO2xldCB0PXtzY2FsZTplLHJvdzp0aGlzLnJvdy5zY2FsZWQoZSksY29sOnRoaXMuY29sLnNjYWxlZChlKX07cmV0dXJuIHRoaXMuc2NhbGVkQ2FjaGU9dCx0fWluZGV4V2l0aGluRnJvemVuKGUsdCxuKXtpZihuPT09MClyZXR1cm4gbnVsbDtsZXQgcj1lLmluZGV4QXQodCkuaW5kZXg7cmV0dXJuIHI8PW4/cjpudWxsfXNjcm9sbGFibGVDZWxsUG9zaXRpb24oZSx0LG4scixpKXtsZXQgYT1lLmluZGV4QXQocitlLm9mZnNldE9mKG4rMSkpO3JldHVybiBpLWEucGFydGlhbCtlLm9mZnNldE9mKHQpLWUub2Zmc2V0T2YoYS5pbmRleCl9YWxpZ25lZE9mZnNldChlLHQsbixyLGksYSl7bGV0IG89citlLW47cmV0dXJuIGE9PT1gc3RhcnRgP2U6YT09PWBjZW50ZXJgP2UtKGktci10KS8yOmE9PT1gZW5kYD9lLShpLXItdCk6bzxyP2U6byt0Pmk/ZS0oaS1yLXQpOm59fX0pKTtURCgpLElEKCk7ZnVuY3Rpb24gTEQoZSx0KXtpZighdClyZXR1cm47bGV0IG49ITE7aWYodC5yb3dzKWZvcihsZXRbcixpXW9mIE9iamVjdC5lbnRyaWVzKHQucm93cykpe2xldCB0PU51bWJlcihyKTtpPT09bnVsbD9PYmplY3QuaGFzT3duKGUucm93SGVpZ2h0cyx0KSYmKGRlbGV0ZSBlLnJvd0hlaWdodHNbdF0sbj0hMCk6ZS5yb3dIZWlnaHRzW3RdIT09aSYmKGUucm93SGVpZ2h0c1t0XT1pLG49ITApfWlmKHQuY29scylmb3IobGV0W3IsaV1vZiBPYmplY3QuZW50cmllcyh0LmNvbHMpKXtsZXQgdD1OdW1iZXIocik7aT09PW51bGw/T2JqZWN0Lmhhc093bihlLmNvbFdpZHRocyx0KSYmKGRlbGV0ZSBlLmNvbFdpZHRoc1t0XSxuPSEwKTplLmNvbFdpZHRoc1t0XSE9PWkmJihlLmNvbFdpZHRoc1t0XT1pLG49ITApfW4mJkZELmludmFsaWRhdGUoZSl9ZnVuY3Rpb24gUkQoZSx0KXtpZighdClyZXR1cm4gZTtsZXQgbj17Li4uZSxyb3dIZWlnaHRzOnsuLi5lLnJvd0hlaWdodHN9LGNvbFdpZHRoczp7Li4uZS5jb2xXaWR0aHN9fTtyZXR1cm4gTEQobix0KSxufXZhciB6RD1jbGFzc3tlbnRyaWVzPW5ldyBNYXA7cmVsZWFzZWRQcm9qZWN0aW9uSWRzPW5ldyBTZXQ7cmVzb2x2ZShlLHQsbixyKXtpZighbil7bGV0IHQ9UkQoZSxyKTtyZXR1cm57d29ya3NoZWV0OnQsY3JlYXRlZDp0IT09ZX19bGV0IGk9IXRoaXMucmVsZWFzZWRQcm9qZWN0aW9uSWRzLmhhcyhuLmlkKSxhPWAke24uaWR9OiR7dH1gLG89aT90aGlzLmVudHJpZXMuZ2V0KGEpOnZvaWQgMDtpZihvJiZvLnJldmlzaW9uPT09bi5yZXZpc2lvbiYmby5zb3VyY2U9PT1lKXJldHVybnt3b3Jrc2hlZXQ6by53b3Jrc2hlZXQsY3JlYXRlZDohMX07bGV0IHM9UkQoZSxyKTtyZXR1cm4gcyE9PWUmJmk/KHRoaXMuZW50cmllcy5zZXQoYSx7cmV2aXNpb246bi5yZXZpc2lvbixzb3VyY2U6ZSx3b3Jrc2hlZXQ6c30pLHt3b3Jrc2hlZXQ6cyxjcmVhdGVkOiEwfSk6KHRoaXMuZW50cmllcy5kZWxldGUoYSkse3dvcmtzaGVldDpzLGNyZWF0ZWQ6cyE9PWV9KX1yZWxlYXNlKGUpe3RoaXMucmVsZWFzZWRQcm9qZWN0aW9uSWRzLmFkZChlKTtsZXQgdD1gJHtlfTpgO2ZvcihsZXQgZSBvZiB0aGlzLmVudHJpZXMua2V5cygpKWUuc3RhcnRzV2l0aCh0KSYmdGhpcy5lbnRyaWVzLmRlbGV0ZShlKX1jbGVhcigpe3RoaXMuZW50cmllcy5jbGVhcigpLHRoaXMucmVsZWFzZWRQcm9qZWN0aW9uSWRzLmNsZWFyKCl9fTtvdygpO2Z1bmN0aW9uIEJEKGUsdCl7bGV0IG49ZSgpO3RyeXtyZXR1cm57d29ya2Jvb2s6bix1c2FnZTpveSh0KCkpfX1jYXRjaChlKXtpZigoZSBpbnN0YW5jZW9mIEVycm9yP2UubWVzc2FnZTpTdHJpbmcoZSkpPT09YHhsc3ggcmVzb3VyY2UgdXNhZ2UgaXMgdW5hdmFpbGFibGVgKXJldHVybnt3b3JrYm9vazpuLHVzYWdlOnZvaWQgMH07dGhyb3cgZX19ZnVuY3Rpb24gVkQoZSx0LG4scil7bGV0IGk9ZSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyP25ldyBVaW50OEFycmF5KGUpOm5ldyBVaW50OEFycmF5KGUuYnVmZmVyLGUuYnl0ZU9mZnNldCxlLmJ5dGVMZW5ndGgpLGE9SlNPTi5wYXJzZShuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUoaSkpO2lmKCFhfHx0eXBlb2YgYSE9YG9iamVjdGB8fCEoYGtpbmRgaW4gYSkpdGhyb3cgRXJyb3IoYHdvcmtzaGVldCBjdXJzb3IgcmV0dXJuZWQgYW4gaW52YWxpZCB1bml0YCk7bGV0IG89YTtpZih0IT09KG8ua2luZD09PWBmaW5pc2hlZGApKXRocm93IEVycm9yKGB3b3Jrc2hlZXQgY3Vyc29yIHRlcm1pbmFsIG1hcmtlciBtaXNtYXRjaGApO2lmKG8ua2luZD09PWByb3dzYCl7aWYoIUFycmF5LmlzQXJyYXkoby5yb3dzKSl0aHJvdyBFcnJvcihgd29ya3NoZWV0IHJvdyB1bml0IGlzIG1pc3Npbmcgcm93c2ApO3JldHVybiBuJiYkRShvLnJvd3Msbikscj8uKG8ucm93cykse2tpbmQ6YHJvd3NgLHJvd3M6by5yb3dzfX1pZihvLmtpbmQ9PT1gZmluaXNoZWRgKXtpZighby53b3Jrc2hlZXR8fHR5cGVvZiBvLndvcmtzaGVldCE9YG9iamVjdGApdGhyb3cgRXJyb3IoYHdvcmtzaGVldCB0ZXJtaW5hbCB1bml0IGlzIG1pc3NpbmcgaXRzIHdvcmtzaGVldGApO3JldHVybiBvLndvcmtzaGVldC5yb3dzPVtdLHtraW5kOmBmaW5pc2hlZGAsd29ya3NoZWV0Om8ud29ya3NoZWV0fX10aHJvdyBFcnJvcihgd29ya3NoZWV0IGN1cnNvciByZXR1cm5lZCBhbiB1bmtub3duIHVuaXQga2luZGApfWJFKCksb3coKTt2YXIgSEQ9Y2xhc3N7Y29vcmRpbmF0b3I9bmV3IHJ3O3Nlc3Npb25zPW5ldyBNYXA7b3BlcmF0aW9uVGFpbD1Qcm9taXNlLnJlc29sdmUoKTtwZW5kaW5nT3BlbnM9bmV3IE1hcDtyZXNvdXJjZUZhaWx1cmU7Y29uc3RydWN0b3IoZSx0LG49ZT0+ZSh0aGlzLnJlcXVpcmVBcmNoaXZlKCkpLHIpe3RoaXMuYXJjaGl2ZT1lLHRoaXMuYWNjZXB0V29ya3NoZWV0PXQsdGhpcy5leGVjdXRlQXJjaGl2ZT1uLHRoaXMucHJlcGFyZVJvd3M9cn1yZXNlcnZlT3BlbihlKXt0aGlzLnBlbmRpbmdPcGVucy5zZXQoZS5zZXNzaW9uSWQse2lkZW50aXR5OmUsY2FuY2VsZWQ6ITF9KX1hYmFuZG9uT3BlbihlKXt0aGlzLnBlbmRpbmdPcGVucy5kZWxldGUoZSl9Z2V0IHBlbmRpbmdPcGVuQ291bnQoKXtyZXR1cm4gdGhpcy5wZW5kaW5nT3BlbnMuc2l6ZX1hc3luYyBvcGVuKGUsdCxuKXtpZih0aGlzLnJlc291cmNlRmFpbHVyZSl0aHJvdyB0aGlzLnJlc291cmNlRmFpbHVyZTtsZXQgcj10aGlzLnBlbmRpbmdPcGVucy5nZXQobi5zZXNzaW9uSWQpO2lmKCFyfHxyLmlkZW50aXR5Lm9wZXJhdGlvbklkIT09bi5vcGVyYXRpb25JZHx8ci5pZGVudGl0eS5nZW5lcmF0aW9uIT09bi5nZW5lcmF0aW9uKXRocm93IEVycm9yKGB3b3Jrc2hlZXQgcHVsbCBzZXNzaW9uIG9wZW4gcmVzZXJ2YXRpb24gaXMgc3RhbGUgb3IgbWlzc2luZ2ApO2xldCBhLG89bmV3IFByb21pc2UoZT0+e2E9ZX0pLHM9dGhpcy5vcGVyYXRpb25UYWlsLnRoZW4oKCk9PnRoaXMuY29vcmRpbmF0b3IuZW5xdWV1ZShhc3luYygpPT57aWYoci5jYW5jZWxlZCl0aHJvdyBFcnJvcihgd29ya3NoZWV0IHB1bGwgc2Vzc2lvbiBvcGVuIHdhcyBjYW5jZWxlZGApO3RoaXMuZXhlY3V0ZUFyY2hpdmUobj0+bi5vcGVuX3NoZWV0X2N1cnNvcihlLHQpKTtsZXQgbz1bXSxzPXtyb3dzOjAsY2VsbHM6MCxvd25lZFV0ZjhCeXRlczowfSxjLGw9ITEsdT1uZXcgaXcoey4uLm4sbWF4Qnl0ZUNyZWRpdDo2NzEwODg2NCxjb29yZGluYXRvcjp0aGlzLmNvb3JkaW5hdG9yLGRyaXZlcjp7cHVsbDooKT0+e2xldCBlPXRoaXMuZXhlY3V0ZUFyY2hpdmUoZT0+ZS5wdWxsX3NoZWV0X2N1cnNvcigxMjgpKSx0PXRoaXMuZXhlY3V0ZUFyY2hpdmUoZT0+ZS5zaGVldF9jdXJzb3JfcHVsbF9maW5pc2hlZCgpKTtpZih0aGlzLmFjY2VwdFdvcmtzaGVldCl7bGV0IG49VkQoZSx0LHZvaWQgMCx0aGlzLnByZXBhcmVSb3dzKTt0cnl7aWYobi5raW5kPT09YHJvd3NgKXtsZXQgZT11RChzLHNEKG4ucm93cykpO3BEKGUsYGdldC13b3Jrc2hlZXQtd29ya2VyYCx2b2lkIDAsdGhpcy5yZWFkUmVzb3VyY2VVc2FnZSgpKSxvLnB1c2goLi4ubi5yb3dzKSxzPWV9ZWxzZSBjPW4ud29ya3NoZWV0fWNhdGNoKGUpe3Rocm93IGUgaW5zdGFuY2VvZiBpJiYodGhpcy5yZXNvdXJjZUZhaWx1cmU/Pz1lKSxlfX1sPXQ7bGV0IG49T3koZSk7cmV0dXJue3BheWxvYWQ6bixieXRlTGVuZ3RoOm4uYnl0ZUxlbmd0aCxkb25lOnQsdHJhbnNmZXI6W25dfX0sbWVhc3VyZUNodW5rOih7cGF5bG9hZDplfSk9PmUuYnl0ZUxlbmd0aCxhY2tub3dsZWRnZTooKT0+e2lmKCFsKXJldHVybjtsZXQgdCxyO3RyeXtpZih0aGlzLmFjY2VwdFdvcmtzaGVldCl7aWYoIWMpdGhyb3cgRXJyb3IoYHdvcmtzaGVldCB0ZXJtaW5hbCBwYXlsb2FkIGlzIG1pc3NpbmdgKTtjLnJvd3M9Yy5wYXJzZUVycm9yP1tdOm87bGV0IG49Yy5wYXJzZUVycm9yP3tyb3dzOjAsY2VsbHM6MCxvd25lZFV0ZjhCeXRlczowfTpzLGk9bEQoYyxuKSxhPXRoaXMucmVhZFJlc291cmNlVXNhZ2UoKTtwRChpLGBnZXQtd29ya3NoZWV0LXdvcmtlcmAsdm9pZCAwLGEpLG1EKGkuanNvbkJ5dGVzLGBnZXQtd29ya3NoZWV0LXdvcmtlcmAsdm9pZCAwLGEpO2xldCBsPXRoaXMuYWNjZXB0V29ya3NoZWV0KGUsYyxpLGEpO3R5cGVvZiBsPT1gZnVuY3Rpb25gP3Q9bDpsJiYoe3JvbGxiYWNrOnQsY29tbWl0OnJ9PWwpfXRoaXMuZXhlY3V0ZUFyY2hpdmUoZT0+ZS5hY2tub3dsZWRnZV9zaGVldF9jdXJzb3JfdGVybWluYWwoKSkscj8uKCl9Y2F0Y2goZSl7dGhyb3cgdD8uKCksZSBpbnN0YW5jZW9mIGkmJih0aGlzLnJlc291cmNlRmFpbHVyZT8/PWUpLGV9bD0hMSx0aGlzLnNlc3Npb25zLmRlbGV0ZShuLnNlc3Npb25JZCksYSgpfSxjYW5jZWw6KCk9Pnt0cnl7dGhpcy5hcmNoaXZlKCkmJnRoaXMuZXhlY3V0ZUFyY2hpdmUoZT0+ZS5jYW5jZWxfc2hlZXRfY3Vyc29yKCkpfWZpbmFsbHl7dGhpcy5zZXNzaW9ucy5kZWxldGUobi5zZXNzaW9uSWQpLGEoKX19LGNsb3NlOigpPT57dHJ5e3RoaXMuYXJjaGl2ZSgpJiZ0aGlzLmV4ZWN1dGVBcmNoaXZlKGU9PmUuY2xvc2Vfc2hlZXRfY3Vyc29yKCkpfWZpbmFsbHl7dGhpcy5zZXNzaW9ucy5kZWxldGUobi5zZXNzaW9uSWQpLGEoKX19LHJlc291cmNlVXNhZ2U6KCk9PnRoaXMucmVhZFJlc291cmNlVXNhZ2UoKX19KTt0aGlzLnNlc3Npb25zLnNldChuLnNlc3Npb25JZCx7aG9zdDp1LGlkZW50aXR5Om59KSx0aGlzLnBlbmRpbmdPcGVucy5kZWxldGUobi5zZXNzaW9uSWQpfSkpO3RoaXMub3BlcmF0aW9uVGFpbD1zLnRoZW4oKCk9Pm8sKCk9PnZvaWQgMCk7dHJ5e2F3YWl0IHN9Y2F0Y2goZSl7dGhyb3cgdGhpcy5wZW5kaW5nT3BlbnMuZGVsZXRlKG4uc2Vzc2lvbklkKSxhKCksZX19YXN5bmMgcG9zdE9wZW5lZFNhZmVseShlLHQsbil7dHJ5e3QoKX1jYXRjaCh0KXthd2FpdCB0aGlzLmNsb3NlSWRlbnRpdHkoZSk7dHJ5e24odCl9Y2F0Y2h7fX19ZGlzcGF0Y2goZSx0KXtsZXQgbj10aGlzLnNlc3Npb25zLmdldChlLnNlc3Npb25JZCk7aWYobilyZXR1cm4gbi5ob3N0LmRpc3BhdGNoKGUsdCk7bGV0IHI9dGhpcy5wZW5kaW5nT3BlbnMuZ2V0KGUuc2Vzc2lvbklkKTtpZihyJiYoZS5raW5kPT09YGNhbmNlbGB8fGUua2luZD09PWBjbG9zZWApKXtsZXQgbj1yLmlkZW50aXR5Lm9wZXJhdGlvbklkPT09ZS5vcGVyYXRpb25JZCYmci5pZGVudGl0eS5nZW5lcmF0aW9uPT09ZS5nZW5lcmF0aW9uO3JldHVybiBuJiYoci5jYW5jZWxlZD0hMCksdChuP3twcm90b2NvbDpudyxraW5kOmBhY2NlcHRlZGAsc2Vzc2lvbklkOmUuc2Vzc2lvbklkLG9wZXJhdGlvbklkOmUub3BlcmF0aW9uSWQsZ2VuZXJhdGlvbjplLmdlbmVyYXRpb24scmVxdWVzdElkOmUucmVxdWVzdElkLGNvbW1hbmQ6ZS5raW5kfTp7cHJvdG9jb2w6bncsa2luZDpgZXJyb3JgLHNlc3Npb25JZDplLnNlc3Npb25JZCxvcGVyYXRpb25JZDplLm9wZXJhdGlvbklkLGdlbmVyYXRpb246ZS5nZW5lcmF0aW9uLHJlcXVlc3RJZDplLnJlcXVlc3RJZCxlcnJvcjp7bWVzc2FnZTpgc3RhbGUgbGlmZWN5Y2xlIHRhcmdldHMgYW5vdGhlciBwZW5kaW5nIHdvcmtzaGVldCBvcGVyYXRpb25gLGVycm9yTmFtZTpgUHVsbFNlc3Npb25Qcm90b2NvbEVycm9yYCxjb2RlOmBvb3htbC1zdGFsZS1saWZlY3ljbGVgfX0pLFByb21pc2UucmVzb2x2ZSgpfXJldHVybiBlLmtpbmQ9PT1gY2FuY2VsYHx8ZS5raW5kPT09YGNsb3NlYD8odCh7cHJvdG9jb2w6bncsa2luZDpgYWNjZXB0ZWRgLHNlc3Npb25JZDplLnNlc3Npb25JZCxvcGVyYXRpb25JZDplLm9wZXJhdGlvbklkLGdlbmVyYXRpb246ZS5nZW5lcmF0aW9uLHJlcXVlc3RJZDplLnJlcXVlc3RJZCxjb21tYW5kOmUua2luZH0pLFByb21pc2UucmVzb2x2ZSgpKToodCh7cHJvdG9jb2w6bncsa2luZDpgZXJyb3JgLHNlc3Npb25JZDplLnNlc3Npb25JZCxvcGVyYXRpb25JZDplLm9wZXJhdGlvbklkLGdlbmVyYXRpb246ZS5nZW5lcmF0aW9uLHJlcXVlc3RJZDplLnJlcXVlc3RJZCxlcnJvcjp5eShFcnJvcihgd29ya3NoZWV0IHB1bGwgc2Vzc2lvbiBpcyBub3Qgb3BlbmApKX0pLFByb21pc2UucmVzb2x2ZSgpKX1hc3luYyBkaXNwYXRjaFNhZmVseShlLHQpe3RyeXthd2FpdCB0aGlzLmRpc3BhdGNoKGUsdCl9Y2F0Y2gobil7dHJ5e3Qoe3Byb3RvY29sOm53LGtpbmQ6YGVycm9yYCxzZXNzaW9uSWQ6ZS5zZXNzaW9uSWQsb3BlcmF0aW9uSWQ6ZS5vcGVyYXRpb25JZCxnZW5lcmF0aW9uOmUuZ2VuZXJhdGlvbixyZXF1ZXN0SWQ6ZS5yZXF1ZXN0SWQsZXJyb3I6eXkobil9KX1jYXRjaHt9fX1ydW4oZSl7bGV0IHQ9dGhpcy5vcGVyYXRpb25UYWlsLnRoZW4oKCk9PnRoaXMuY29vcmRpbmF0b3IuZW5xdWV1ZShhc3luYygpPT57aWYodGhpcy5yZXNvdXJjZUZhaWx1cmUpdGhyb3cgdGhpcy5yZXNvdXJjZUZhaWx1cmU7cmV0dXJuIGUoKX0pKS5jYXRjaChlPT57dGhyb3cgZSBpbnN0YW5jZW9mIGkmJih0aGlzLnJlc291cmNlRmFpbHVyZT8/PWUpLGV9KTtyZXR1cm4gdGhpcy5vcGVyYXRpb25UYWlsPXQudGhlbigoKT0+dm9pZCAwLCgpPT52b2lkIDApLHR9YXN5bmMgcmVzZXQoKXtmb3IobGV0IGUgb2YgdGhpcy5wZW5kaW5nT3BlbnMudmFsdWVzKCkpZS5jYW5jZWxlZD0hMDtsZXQgZT0xO2ZvcihsZXR7aG9zdDp0LGlkZW50aXR5Om59b2ZbLi4udGhpcy5zZXNzaW9ucy52YWx1ZXMoKV0pYXdhaXQgdC5kaXNwYXRjaCh7cHJvdG9jb2w6bncsa2luZDpgY2xvc2VgLC4uLm4scmVxdWVzdElkOmUrK30sKCk9PnZvaWQgMCk7dGhpcy5zZXNzaW9ucy5jbGVhcigpLGF3YWl0IHRoaXMub3BlcmF0aW9uVGFpbCx0aGlzLnBlbmRpbmdPcGVucy5jbGVhcigpLHRoaXMucmVzb3VyY2VGYWlsdXJlPXZvaWQgMH1yZXF1aXJlQXJjaGl2ZSgpe2xldCBlPXRoaXMuYXJjaGl2ZSgpO2lmKCFlKXRocm93IEVycm9yKGBXb3JrYm9vayBub3QgbG9hZGVkYCk7cmV0dXJuIGV9YXN5bmMgY2xvc2VJZGVudGl0eShlKXtsZXQgdD10aGlzLnNlc3Npb25zLmdldChlLnNlc3Npb25JZCk7aWYodCl7YXdhaXQgdC5ob3N0LmRpc3BhdGNoKHtwcm90b2NvbDpudyxraW5kOmBjbG9zZWAsLi4uZSxyZXF1ZXN0SWQ6MX0sKCk9PnZvaWQgMCk7cmV0dXJufWxldCBuPXRoaXMucGVuZGluZ09wZW5zLmdldChlLnNlc3Npb25JZCk7biYmbi5pZGVudGl0eS5vcGVyYXRpb25JZD09PWUub3BlcmF0aW9uSWQmJm4uaWRlbnRpdHkuZ2VuZXJhdGlvbj09PWUuZ2VuZXJhdGlvbiYmKG4uY2FuY2VsZWQ9ITApfXJlYWRSZXNvdXJjZVVzYWdlKCl7dHJ5e3JldHVybiBveSh0aGlzLmV4ZWN1dGVBcmNoaXZlKGU9PmUuc2hlZXRfY3Vyc29yX3Jlc291cmNlX3VzYWdlKCkpKX1jYXRjaChlKXtpZihTdHJpbmcoZSkuaW5jbHVkZXMoYHdvcmtzaGVldCBjdXJzb3IgdXNhZ2UgaXMgdW5hdmFpbGFibGVgKSlyZXR1cm47dGhyb3cgZX19fTtmdW5jdGlvbiBVRChlKXtyZXR1cm4hIWUmJnR5cGVvZiBlPT1gb2JqZWN0YCYmZS5wcm90b2NvbD09PWBvb3htbC1wdWxsLXYxYH12YXIgV0Q9dCgoKCk9PntpZSgpfSkpO2Z1bmN0aW9uIEdEKGUpe3JldHVybiBBcnJheS5mcm9tKGUpfWZ1bmN0aW9uIEtEKGUsdCxuLHIsaSl7bGV0IGE9R0QodCksbz1hLmxlbmd0aCxzPVtdO2ZvcihsZXQgdCBvZiBlKXtsZXQgZT10LnNiLGM9dC5lYjtpZighKGU8Yyl8fGU+PW8pY29udGludWU7bGV0IGw9TWF0aC5taW4oYyxvKSx1PW4raShhLnNsaWNlKDAsZSkuam9pbihgYCkpLGQ9aShhLnNsaWNlKGUsbCkuam9pbihgYCkpLGY9cj09PWBjZW50ZXJgP2BjZW50ZXJgOnI9PT1gZGlzdHJpYnV0ZWRgP2BkaXN0cmlidXRlYDpgc3RhcnRgO3MucHVzaCh7dGV4dDp0LnRleHQseDp1LHdpZHRoOmQsc3ByZWFkOmZ9KX1yZXR1cm4gc312YXIgcUQ9dCgoKCk9Pnt9KSk7ZnVuY3Rpb24gSkQoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZTpbZV19ZnVuY3Rpb24gWUQoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZVswXT8/MDplfWZ1bmN0aW9uIFhEKGUsdCl7dHJ5e3JldHVybiBaRChpTyhlLHQpKX1jYXRjaHtyZXR1cm4hMX19ZnVuY3Rpb24gWkQoZSl7bGV0IHQ9WUQoZSk7cmV0dXJuIHR5cGVvZiB0PT1gYm9vbGVhbmA/dDp0eXBlb2YgdD09YG51bWJlcmA/dCE9PTA6dHlwZW9mIHQ9PWBzdHJpbmdgP3QubGVuZ3RoPjAmJnQudG9VcHBlckNhc2UoKSE9PWBGQUxTRWA6ITF9ZnVuY3Rpb24gUUQoZSl7bGV0IHQ9WUQoZSk7aWYodHlwZW9mIHQ9PWBudW1iZXJgKXJldHVybiB0O2lmKHR5cGVvZiB0PT1gYm9vbGVhbmApcmV0dXJuKyEhdDtpZih0PT1udWxsKXJldHVybiAwO2xldCBuPXBhcnNlRmxvYXQoU3RyaW5nKHQpKTtyZXR1cm4gaXNOYU4obik/MDpufWZ1bmN0aW9uICREKGUpe2xldCB0PVlEKGUpO3JldHVybiB0PT1udWxsP2BgOnR5cGVvZiB0PT1gYm9vbGVhbmA/dD9gVFJVRWA6YEZBTFNFYDpTdHJpbmcodCl9ZnVuY3Rpb24gZU8oZSl7bGV0IHQ9W10sbj0wLHI9ZTtmb3IoO248ci5sZW5ndGg7KXtsZXQgZT1yW25dO2lmKGU9PT1gIGB8fGU9PT1gCWB8fGU9PT1gCmB8fGU9PT1gXHJgKXtuKys7Y29udGludWV9aWYoZT09PWAoYCl7dC5wdXNoKHtraW5kOmBscGFyZW5gLHRleHQ6ZX0pLG4rKztjb250aW51ZX1pZihlPT09YClgKXt0LnB1c2goe2tpbmQ6YHJwYXJlbmAsdGV4dDplfSksbisrO2NvbnRpbnVlfWlmKGU9PT1gLGApe3QucHVzaCh7a2luZDpgY29tbWFgLHRleHQ6ZX0pLG4rKztjb250aW51ZX1pZihlPT09YDpgKXt0LnB1c2goe2tpbmQ6YGNvbG9uYCx0ZXh0OmV9KSxuKys7Y29udGludWV9aWYoZT09PWAiYCl7bGV0IGU9bisxLGk9YGA7Zm9yKDtlPHIubGVuZ3RoOyl7aWYocltlXT09PWAiYCYmcltlKzFdPT09YCJgKXtpKz1gImAsZSs9Mjtjb250aW51ZX1pZihyW2VdPT09YCJgKWJyZWFrO2krPXJbZV0sZSsrfXQucHVzaCh7a2luZDpgc3RyYCx0ZXh0Oml9KSxuPWUrMTtjb250aW51ZX1pZihlPj1gMGAmJmU8PWA5YCl7bGV0IGU9bjtmb3IoO2U8ci5sZW5ndGgmJihyW2VdPj1gMGAmJnJbZV08PWA5YHx8cltlXT09PWAuYCk7KWUrKzt0LnB1c2goe2tpbmQ6YG51bWAsdGV4dDpyLnNsaWNlKG4sZSl9KSxuPWU7Y29udGludWV9aWYoa08uaGFzKGUpKXsoZT09PWA8YHx8ZT09PWA+YCkmJihyW24rMV09PT1gPWB8fGU9PT1gPGAmJnJbbisxXT09PWA+YCk/KHQucHVzaCh7a2luZDpgb3BgLHRleHQ6ci5zbGljZShuLG4rMil9KSxuKz0yKToodC5wdXNoKHtraW5kOmBvcGAsdGV4dDplfSksbisrKTtjb250aW51ZX1pZihlPT09YCRgfHx0TyhlKSl7bGV0IGU9bjtmb3IoO2U8ci5sZW5ndGgmJihyW2VdPT09YCRgfHxuTyhyW2VdKSk7KWUrKztsZXQgaT1yLnNsaWNlKG4sZSk7bj1lO2xldCBhPXJPKGkpO2lmKGEpdC5wdXNoKHtraW5kOmByZWZgLHRleHQ6aSxyZWY6YX0pO2Vsc2V7bGV0IGU9aS50b1VwcGVyQ2FzZSgpO2U9PT1gVFJVRWB8fGU9PT1gRkFMU0VgP3QucHVzaCh7a2luZDpgYm9vbGAsdGV4dDplfSk6dC5wdXNoKHtraW5kOmBuYW1lYCx0ZXh0Oml9KX1jb250aW51ZX1uKyt9cmV0dXJuIHR9ZnVuY3Rpb24gdE8oZSl7cmV0dXJuIGU+PWBBYCYmZTw9YFpgfHxlPj1gYWAmJmU8PWB6YHx8ZT09PWBfYH1mdW5jdGlvbiBuTyhlKXtyZXR1cm4gdE8oZSl8fGU+PWAwYCYmZTw9YDlgfHxlPT09YC5gfWZ1bmN0aW9uIHJPKGUpe2xldCB0PTAsbj0hMSxyPSExO2VbdF09PT1gJGAmJihuPSEwLHQrKyk7bGV0IGk9dDtmb3IoO3Q8ZS5sZW5ndGgmJmVbdF0+PWBBYCYmZVt0XS50b1VwcGVyQ2FzZSgpPD1gWmAmJiEoIShlW3RdPj1gQWAmJmVbdF08PWBaYCkmJiEoZVt0XT49YGFgJiZlW3RdPD1gemApKTspdCsrO2lmKHQ9PT1pKXJldHVybiBudWxsO2xldCBhPWUuc2xpY2UoaSx0KS50b1VwcGVyQ2FzZSgpO2VbdF09PT1gJGAmJihyPSEwLHQrKyk7bGV0IG89dDtmb3IoO3Q8ZS5sZW5ndGgmJmVbdF0+PWAwYCYmZVt0XTw9YDlgOyl0Kys7aWYodD09PW98fHQhPT1lLmxlbmd0aClyZXR1cm4gbnVsbDtsZXQgcz1wYXJzZUludChlLnNsaWNlKG8sdCksMTApLGM9MDtmb3IobGV0IGU9MDtlPGEubGVuZ3RoO2UrKyljPWMqMjYrKGEuY2hhckNvZGVBdChlKS02NCk7cmV0dXJue2NvbEFiczpuLGNvbDpjLHJvd0FiczpyLHJvdzpzfX1mdW5jdGlvbiBpTyhlLHQpe3JldHVybiBzTyh7dG9rczplTyhlKSxwb3M6MH0sdCl9ZnVuY3Rpb24gYU8oZSl7cmV0dXJuIGUudG9rc1tlLnBvc119ZnVuY3Rpb24gb08oZSl7cmV0dXJuIGUudG9rc1tlLnBvcysrXX1mdW5jdGlvbiBzTyhlLHQpe3JldHVybiBjTyhlLHQpfWZ1bmN0aW9uIGNPKGUsdCl7bGV0IG49bE8oZSx0KSxyPWFPKGUpO2lmKHImJnIua2luZD09PWBvcGAmJihyLnRleHQ9PT1gPGB8fHIudGV4dD09PWA+YHx8ci50ZXh0PT09YDw9YHx8ci50ZXh0PT09YD49YHx8ci50ZXh0PT09YD1gfHxyLnRleHQ9PT1gPD5gKSl7b08oZSk7bGV0IGk9bE8oZSx0KTtyZXR1cm4gdU8oci50ZXh0LG4saSl9cmV0dXJuIG59ZnVuY3Rpb24gbE8oZSx0KXtsZXQgbj1kTyhlLHQpO2Zvcig7Oyl7bGV0IHI9YU8oZSk7aWYoIXJ8fHIua2luZCE9PWBvcGB8fHIudGV4dCE9PWAmYClicmVhaztvTyhlKTtsZXQgaT1kTyhlLHQpO249JEQobikrJEQoaSl9cmV0dXJuIG59ZnVuY3Rpb24gdU8oZSx0LG4pe2xldCByPXR5cGVvZiB0PT1gc3RyaW5nYCYmaXNOYU4ocGFyc2VGbG9hdCh0KSk/bnVsbDpRRCh0KSxpPXR5cGVvZiBuPT1gc3RyaW5nYCYmaXNOYU4ocGFyc2VGbG9hdChuKSk/bnVsbDpRRChuKTtpZihyIT09bnVsbCYmaSE9PW51bGwpc3dpdGNoKGUpe2Nhc2VgPGA6cmV0dXJuIHI8aTtjYXNlYD5gOnJldHVybiByPmk7Y2FzZWA8PWA6cmV0dXJuIHI8PWk7Y2FzZWA+PWA6cmV0dXJuIHI+PWk7Y2FzZWA9YDpyZXR1cm4gcj09PWk7Y2FzZWA8PmA6cmV0dXJuIHIhPT1pfWxldCBhPVN0cmluZyh0Pz9gYCksbz1TdHJpbmcobj8/YGApO3N3aXRjaChlKXtjYXNlYDxgOnJldHVybiBhPG87Y2FzZWA+YDpyZXR1cm4gYT5vO2Nhc2VgPD1gOnJldHVybiBhPD1vO2Nhc2VgPj1gOnJldHVybiBhPj1vO2Nhc2VgPWA6cmV0dXJuIGE9PT1vO2Nhc2VgPD5gOnJldHVybiBhIT09b31yZXR1cm4hMX1mdW5jdGlvbiBkTyhlLHQpe2xldCBuPWZPKGUsdCk7Zm9yKDs7KXtsZXQgcj1hTyhlKTtpZighcnx8ci5raW5kIT09YG9wYHx8ci50ZXh0IT09YCtgJiZyLnRleHQhPT1gLWApYnJlYWs7b08oZSk7bGV0IGk9Zk8oZSx0KTtuPXIudGV4dD09PWArYD9RRChuKStRRChpKTpRRChuKS1RRChpKX1yZXR1cm4gbn1mdW5jdGlvbiBmTyhlLHQpe2xldCBuPXBPKGUsdCk7Zm9yKDs7KXtsZXQgcj1hTyhlKTtpZighcnx8ci5raW5kIT09YG9wYHx8ci50ZXh0IT09YCpgJiZyLnRleHQhPT1gL2ApYnJlYWs7b08oZSk7bGV0IGk9cE8oZSx0KTtpZihyLnRleHQ9PT1gKmApbj1RRChuKSpRRChpKTtlbHNle2xldCBlPVFEKGkpO249ZT09PTA/MDpRRChuKS9lfX1yZXR1cm4gbn1mdW5jdGlvbiBwTyhlLHQpe2xldCBuPWFPKGUpO3JldHVybiBuJiZuLmtpbmQ9PT1gb3BgJiZuLnRleHQ9PT1gLWA/KG9PKGUpLC1RRChwTyhlLHQpKSk6biYmbi5raW5kPT09YG9wYCYmbi50ZXh0PT09YCtgPyhvTyhlKSxRRChwTyhlLHQpKSk6bU8oZSx0KX1mdW5jdGlvbiBtTyhlLHQpe2xldCBuPW9PKGUpO2lmKCFuKXJldHVybiAwO2lmKG4ua2luZD09PWBudW1gKXJldHVybiBwYXJzZUZsb2F0KG4udGV4dCk7aWYobi5raW5kPT09YHN0cmApcmV0dXJuIG4udGV4dDtpZihuLmtpbmQ9PT1gYm9vbGApcmV0dXJuIG4udGV4dD09PWBUUlVFYDtpZihuLmtpbmQ9PT1gbHBhcmVuYCl7bGV0IG49c08oZSx0KSxyPW9PKGUpO2lmKCFyfHxyLmtpbmQhPT1gcnBhcmVuYCl0aHJvdyBFcnJvcihgbWlzc2luZyApYCk7cmV0dXJuIG59aWYobi5raW5kPT09YHJlZmApe2lmKGFPKGUpPy5raW5kPT09YGNvbG9uYCl7b08oZSk7bGV0IHI9b08oZSk7aWYocj8ua2luZCE9PWByZWZgfHwhci5yZWYpdGhyb3cgRXJyb3IoYHJhbmdlOiBleHBlY3RlZCByZWYgYWZ0ZXIgOmApO3JldHVybiBfTyhuLnJlZixyLnJlZix0KX1yZXR1cm4gZ08obi5yZWYsdCl9aWYobi5raW5kPT09YG5hbWVgKXtpZihhTyhlKT8ua2luZD09PWBscGFyZW5gKXtvTyhlKTtsZXQgcj1bXTtpZihhTyhlKT8ua2luZCE9PWBycGFyZW5gKWZvcihyLnB1c2goc08oZSx0KSk7YU8oZSk/LmtpbmQ9PT1gY29tbWFgOylvTyhlKSxyLnB1c2goc08oZSx0KSk7bGV0IGk9b08oZSk7aWYoIWl8fGkua2luZCE9PWBycGFyZW5gKXRocm93IEVycm9yKGBtaXNzaW5nIClgKTtyZXR1cm4geU8obi50ZXh0LHIsdCl9bGV0IHI9dC5kZWZpbmVkTmFtZXMuZ2V0KG4udGV4dCk7cmV0dXJuIHImJnQuZGVwdGg8T08/aU8oaE8oci5mb3JtdWxhKSx7Li4udCxhbmNob3JSb3c6MSxhbmNob3JDb2w6MSxkZXB0aDp0LmRlcHRoKzF9KTowfXJldHVybiAwfWZ1bmN0aW9uIGhPKGUpe2xldCB0PWUubWF0Y2goL14oPzonW14nXSonfFtBLVphLXpfXVtBLVphLXowLTlfLl0qKSEoLiopJC8pO3JldHVybiB0P3RbMV06ZX1mdW5jdGlvbiBnTyhlLHQpe2xldCBuPWUuY29sQWJzP2UuY29sOmUuY29sKyh0LmNvbC10LmFuY2hvckNvbCkscj1lLnJvd0Ficz9lLnJvdzplLnJvdysodC5yb3ctdC5hbmNob3JSb3cpO3JldHVybiB2Tyh0LmNlbGxJbmRleC5nZXQoYCR7cn06JHtufWApKX1mdW5jdGlvbiBfTyhlLHQsbil7bGV0IHI9ZS5jb2xBYnM/ZS5jb2w6ZS5jb2wrKG4uY29sLW4uYW5jaG9yQ29sKSxpPWUucm93QWJzP2Uucm93OmUucm93KyhuLnJvdy1uLmFuY2hvclJvdyksYT10LmNvbEFicz90LmNvbDp0LmNvbCsobi5jb2wtbi5hbmNob3JDb2wpLG89dC5yb3dBYnM/dC5yb3c6dC5yb3crKG4ucm93LW4uYW5jaG9yUm93KSxzPU1hdGgubWluKHIsYSksYz1NYXRoLm1heChyLGEpLGw9TWF0aC5taW4oaSxvKSx1PU1hdGgubWF4KGksbyksZD1bXSxmPTQwOTY7Zm9yKGxldCBlPWw7ZTw9dSYmZC5sZW5ndGg8ZjtlKyspZm9yKGxldCB0PXM7dDw9YyYmZC5sZW5ndGg8Zjt0KyspZC5wdXNoKHZPKG4uY2VsbEluZGV4LmdldChgJHtlfToke3R9YCkpKTtyZXR1cm4gZH1mdW5jdGlvbiB2TyhlKXtpZighZSlyZXR1cm4gbnVsbDtzd2l0Y2goZS52YWx1ZS50eXBlKXtjYXNlYG51bWJlcmA6cmV0dXJuIGUudmFsdWUubnVtYmVyO2Nhc2VgYm9vbGA6cmV0dXJuIGUudmFsdWUuYm9vbDtjYXNlYHRleHRgOnJldHVybiBlLnZhbHVlLnRleHQ7Y2FzZWBlcnJvcmA6cmV0dXJuIG51bGw7ZGVmYXVsdDpyZXR1cm4gbnVsbH19ZnVuY3Rpb24geU8oZSx0LG4pe3N3aXRjaChlLnRvVXBwZXJDYXNlKCkpe2Nhc2VgQU5EYDpyZXR1cm4gdC5mbGF0TWFwKEpEKS5ldmVyeShlPT5aRChlKSk7Y2FzZWBPUmA6cmV0dXJuIHQuZmxhdE1hcChKRCkuc29tZShlPT5aRChlKSk7Y2FzZWBOT1RgOnJldHVybiFaRCh0WzBdKTtjYXNlYElGYDpyZXR1cm4gWkQodFswXSk/dFsxXT8/ITA6dFsyXT8/ITE7Y2FzZWBJRkVSUk9SYDpyZXR1cm4gdFswXT09bnVsbD90WzFdPz8wOnRbMF07Y2FzZWBJRlNgOmZvcihsZXQgZT0wO2UrMTx0Lmxlbmd0aDtlKz0yKWlmKFpEKHRbZV0pKXJldHVybiB0W2UrMV07cmV0dXJuIG51bGw7Y2FzZWBUUlVFYDpyZXR1cm4hMDtjYXNlYEZBTFNFYDpyZXR1cm4hMTtjYXNlYElTQkxBTktgOntsZXQgZT1ZRCh0WzBdKTtyZXR1cm4gZT09bnVsbHx8ZT09PWBgfWNhc2VgSVNOVU1CRVJgOnJldHVybiB0eXBlb2YgWUQodFswXSk9PWBudW1iZXJgO2Nhc2VgSVNURVhUYDpyZXR1cm4gdHlwZW9mIFlEKHRbMF0pPT1gc3RyaW5nYDtjYXNlYElTTk9OVEVYVGA6cmV0dXJuIHR5cGVvZiBZRCh0WzBdKSE9YHN0cmluZ2A7Y2FzZWBJU0VSUk9SYDpjYXNlYElTRVJSYDpjYXNlYElTTkFgOnJldHVybiBZRCh0WzBdKT09bnVsbDtjYXNlYElTTE9HSUNBTGA6cmV0dXJuIHR5cGVvZiBZRCh0WzBdKT09YGJvb2xlYW5gO2Nhc2VgUk9VTkRET1dOYDp7bGV0IGU9UUQodFswXSksbj0xMCoqUUQodFsxXSk7cmV0dXJuKGU+PTA/TWF0aC5mbG9vcihlKm4pOk1hdGguY2VpbChlKm4pKS9ufWNhc2VgUk9VTkRVUGA6e2xldCBlPVFEKHRbMF0pLG49MTAqKlFEKHRbMV0pO3JldHVybihlPj0wP01hdGguY2VpbChlKm4pOk1hdGguZmxvb3IoZSpuKSkvbn1jYXNlYFJPVU5EYDp7bGV0IGU9UUQodFswXSksbj0xMCoqUUQodFsxXSk7cmV0dXJuIE1hdGgucm91bmQoZSpuKS9ufWNhc2VgSU5UYDpyZXR1cm4gTWF0aC5mbG9vcihRRCh0WzBdKSk7Y2FzZWBUUlVOQ2A6e2xldCBlPVFEKHRbMF0pLG49MTAqKlFEKHRbMV0/PzApO3JldHVybihlPj0wP01hdGguZmxvb3IoZSpuKTpNYXRoLmNlaWwoZSpuKSkvbn1jYXNlYENFSUxJTkdgOntsZXQgZT1RRCh0WzBdKSxuPVFEKHRbMV0/PzEpO3JldHVybiBuPT09MD8wOk1hdGguY2VpbChlL24pKm59Y2FzZWBGTE9PUmA6e2xldCBlPVFEKHRbMF0pLG49UUQodFsxXT8/MSk7cmV0dXJuIG49PT0wPzA6TWF0aC5mbG9vcihlL24pKm59Y2FzZWBNT0RgOntsZXQgZT1RRCh0WzBdKSxuPVFEKHRbMV0pO3JldHVybiBuPT09MD9udWxsOmUtTWF0aC5mbG9vcihlL24pKm59Y2FzZWBQT1dFUmA6cmV0dXJuIFFEKHRbMF0pKiorUUQodFsxXSk7Y2FzZWBTUVJUYDp7bGV0IGU9UUQodFswXSk7cmV0dXJuIGU8MD9udWxsOk1hdGguc3FydChlKX1jYXNlYEFCU2A6cmV0dXJuIE1hdGguYWJzKFFEKHRbMF0pKTtjYXNlYFNJR05gOntsZXQgZT1RRCh0WzBdKTtyZXR1cm4gZT4wPzE6ZTwwPy0xOjB9Y2FzZWBFWFBgOnJldHVybiBNYXRoLmV4cChRRCh0WzBdKSk7Y2FzZWBMTmA6e2xldCBlPVFEKHRbMF0pO3JldHVybiBlPD0wP251bGw6TWF0aC5sb2coZSl9Y2FzZWBMT0cxMGA6e2xldCBlPVFEKHRbMF0pO3JldHVybiBlPD0wP251bGw6TWF0aC5sb2cxMChlKX1jYXNlYE1JTmA6e2xldCBlPXQuZmxhdE1hcChKRCkuZmlsdGVyKGU9PnR5cGVvZiBlPT1gbnVtYmVyYCk7cmV0dXJuIGUubGVuZ3RoP01hdGgubWluKC4uLmUpOjB9Y2FzZWBNQVhgOntsZXQgZT10LmZsYXRNYXAoSkQpLmZpbHRlcihlPT50eXBlb2YgZT09YG51bWJlcmApO3JldHVybiBlLmxlbmd0aD9NYXRoLm1heCguLi5lKTowfWNhc2VgU1VNYDpyZXR1cm4gdC5mbGF0TWFwKEpEKS5yZWR1Y2UoKGUsdCk9PmUrKHR5cGVvZiB0PT1gbnVtYmVyYD90OjApLDApO2Nhc2VgQVZFUkFHRWA6e2xldCBlPXQuZmxhdE1hcChKRCkuZmlsdGVyKGU9PnR5cGVvZiBlPT1gbnVtYmVyYCk7cmV0dXJuIGUubGVuZ3RoP2UucmVkdWNlKChlLHQpPT5lK3QsMCkvZS5sZW5ndGg6bnVsbH1jYXNlYENPVU5UYDpyZXR1cm4gdC5mbGF0TWFwKEpEKS5maWx0ZXIoZT0+dHlwZW9mIGU9PWBudW1iZXJgKS5sZW5ndGg7Y2FzZWBDT1VOVEFgOnJldHVybiB0LmZsYXRNYXAoSkQpLmZpbHRlcihlPT5lIT1udWxsJiZlIT09YGApLmxlbmd0aDtjYXNlYENPVU5UQkxBTktgOnJldHVybiB0LmZsYXRNYXAoSkQpLmZpbHRlcihlPT5lPT1udWxsfHxlPT09YGApLmxlbmd0aDtjYXNlYENPVU5USUZgOnJldHVybiBiTyhKRCh0WzBdKSx0WzFdKTtjYXNlYFNVTUlGYDpyZXR1cm4geE8oSkQodFswXSksdFsxXSx0WzJdPT09dm9pZCAwP251bGw6SkQodFsyXSkpO2Nhc2VgQVZFUkFHRUlGYDp7bGV0IGU9SkQodFswXSksbj14TyhlLHRbMV0sdFsyXT09PXZvaWQgMD9udWxsOkpEKHRbMl0pKSxyPWJPKGUsdFsxXSk7cmV0dXJuIHI9PT0wP251bGw6UUQobikvcn1jYXNlYExFTmA6cmV0dXJuICREKHRbMF0pLmxlbmd0aDtjYXNlYExFRlRgOnJldHVybiAkRCh0WzBdKS5zbGljZSgwLE1hdGgubWF4KDAsUUQodFsxXT8/MSkpKTtjYXNlYFJJR0hUYDp7bGV0IGU9JEQodFswXSksbj1NYXRoLm1heCgwLFFEKHRbMV0/PzEpKTtyZXR1cm4gbj49ZS5sZW5ndGg/ZTplLnNsaWNlKGUubGVuZ3RoLW4pfWNhc2VgTUlEYDp7bGV0IGU9JEQodFswXSksbj1NYXRoLm1heCgxLFFEKHRbMV0pKS0xLHI9TWF0aC5tYXgoMCxRRCh0WzJdKSk7cmV0dXJuIGUuc2xpY2UobixuK3IpfWNhc2VgVVBQRVJgOnJldHVybiAkRCh0WzBdKS50b1VwcGVyQ2FzZSgpO2Nhc2VgTE9XRVJgOnJldHVybiAkRCh0WzBdKS50b0xvd2VyQ2FzZSgpO2Nhc2VgVFJJTWA6cmV0dXJuICREKHRbMF0pLnJlcGxhY2UoL1xzKy9nLGAgYCkudHJpbSgpO2Nhc2VgRVhBQ1RgOnJldHVybiAkRCh0WzBdKT09PSREKHRbMV0pO2Nhc2VgRklORGA6e2xldCBlPSREKHRbMF0pLG49JEQodFsxXSkscj1NYXRoLm1heCgxLFFEKHRbMl0/PzEpKS0xLGk9bi5pbmRleE9mKGUscik7cmV0dXJuIGk8MD9udWxsOmkrMX1jYXNlYFNFQVJDSGA6e2xldCBlPSREKHRbMF0pLnRvTG93ZXJDYXNlKCksbj0kRCh0WzFdKS50b0xvd2VyQ2FzZSgpLHI9TWF0aC5tYXgoMSxRRCh0WzJdPz8xKSktMSxpPW4uaW5kZXhPZihlLHIpO3JldHVybiBpPDA/bnVsbDppKzF9Y2FzZWBDT05DQVRFTkFURWA6Y2FzZWBDT05DQVRgOnJldHVybiB0LmZsYXRNYXAoSkQpLm1hcChlPT5lPT1udWxsP2BgOnR5cGVvZiBlPT1gYm9vbGVhbmA/ZT9gVFJVRWA6YEZBTFNFYDpTdHJpbmcoZSkpLmpvaW4oYGApO2Nhc2VgVGA6e2xldCBlPVlEKHRbMF0pO3JldHVybiB0eXBlb2YgZT09YHN0cmluZ2A/ZTpgYH1jYXNlYE5gOntsZXQgZT1ZRCh0WzBdKTtyZXR1cm4gdHlwZW9mIGU9PWBudW1iZXJgP2U6dHlwZW9mIGU9PWBib29sZWFuYD8rISFlOjB9Y2FzZWBWQUxVRWA6cmV0dXJuIFFEKHRbMF0pO2Nhc2VgUk9XYDpyZXR1cm4gbi5yb3c7Y2FzZWBDT0xVTU5gOnJldHVybiBuLmNvbDtjYXNlYFRPREFZYDpyZXR1cm4gQ08oKTtjYXNlYE5PV2A6cmV0dXJuIHdPKCk7Y2FzZWBEQVRFYDpyZXR1cm4gVE8oUUQodFswXSksUUQodFsxXSksUUQodFsyXSkpO2Nhc2VgWUVBUmA6cmV0dXJuIERPKFFEKHRbMF0pKS55O2Nhc2VgTU9OVEhgOnJldHVybiBETyhRRCh0WzBdKSkubTtjYXNlYERBWWA6cmV0dXJuIERPKFFEKHRbMF0pKS5kO2Nhc2VgV0VFS0RBWWA6e2xldCBlPUVPKFFEKHRbMF0pKS5nZXRVVENEYXkoKSxuPVFEKHRbMV0/PzEpO3JldHVybiBuPT09Mj9lPT09MD83OmU6bj09PTM/ZT09PTA/NjplLTE6ZSsxfWRlZmF1bHQ6cmV0dXJuIDB9fWZ1bmN0aW9uIGJPKGUsdCl7bGV0IG49U08odCkscj0wO2ZvcihsZXQgdCBvZiBlKW4odCkmJnIrKztyZXR1cm4gcn1mdW5jdGlvbiB4TyhlLHQsbil7bGV0IHI9U08odCksaT1uPz9lLGE9MDtmb3IobGV0IHQ9MDt0PGUubGVuZ3RoO3QrKylpZihyKGVbdF0pKXtsZXQgZT1pW3RdO3R5cGVvZiBlPT1gbnVtYmVyYCYmKGErPWUpfXJldHVybiBhfWZ1bmN0aW9uIFNPKGUpe2xldCB0PVlEKGUpO2lmKHR5cGVvZiB0IT1gc3RyaW5nYCl7bGV0IGU9dHlwZW9mIHQ9PWBudW1iZXJgP3Q6bnVsbDtyZXR1cm4gbj0+ZSE9PW51bGwmJnR5cGVvZiBuPT1gbnVtYmVyYD9uPT09ZTpuPT09dH1sZXQgbj10Lm1hdGNoKC9eKDw9fD49fDw+fDx8Pnw9KSguKikkLykscj1uP25bMV06YD1gLGk9bj9uWzJdOnQsYT1pLnRyaW0oKT09PWBgP05hTjpwYXJzZUZsb2F0KGkpLG89IWlzTmFOKGEpJiYvXi0/XGQrKFwuXGQrKT8kLy50ZXN0KGkudHJpbSgpKTtyZXR1cm4gZT0+e2lmKG8mJnR5cGVvZiBlPT1gbnVtYmVyYClzd2l0Y2gocil7Y2FzZWA8YDpyZXR1cm4gZTxhO2Nhc2VgPmA6cmV0dXJuIGU+YTtjYXNlYDw9YDpyZXR1cm4gZTw9YTtjYXNlYD49YDpyZXR1cm4gZT49YTtjYXNlYDw+YDpyZXR1cm4gZSE9PWE7ZGVmYXVsdDpyZXR1cm4gZT09PWF9bGV0IHQ9ZT09bnVsbD9gYDp0eXBlb2YgZT09YGJvb2xlYW5gP2U/YFRSVUVgOmBGQUxTRWA6U3RyaW5nKGUpO3N3aXRjaChyKXtjYXNlYDw+YDpyZXR1cm4gdCE9PWk7Y2FzZWA8YDpyZXR1cm4gdDxpO2Nhc2VgPmA6cmV0dXJuIHQ+aTtjYXNlYDw9YDpyZXR1cm4gdDw9aTtjYXNlYD49YDpyZXR1cm4gdD49aTtkZWZhdWx0OnJldHVybiB0PT09aX19fWZ1bmN0aW9uIENPKCl7bGV0IGU9bmV3IERhdGU7cmV0dXJuIHVhKG5ldyBEYXRlKERhdGUuVVRDKGUuZ2V0RnVsbFllYXIoKSxlLmdldE1vbnRoKCksZS5nZXREYXRlKCkpKSwhMSl9ZnVuY3Rpb24gd08oKXtyZXR1cm4gdWEobmV3IERhdGUoRGF0ZS5ub3coKSksITEpfWZ1bmN0aW9uIFRPKGUsdCxuKXtyZXR1cm4gTWF0aC5mbG9vcih1YShuZXcgRGF0ZShEYXRlLlVUQyhlLHQtMSxuKSksITEpKX1mdW5jdGlvbiBFTyhlKXtyZXR1cm4gbGEoTWF0aC5mbG9vcihlKSwhMSl9ZnVuY3Rpb24gRE8oZSl7bGV0IHQ9RU8oZSk7cmV0dXJue3k6dC5nZXRVVENGdWxsWWVhcigpLG06dC5nZXRVVENNb250aCgpKzEsZDp0LmdldFVUQ0RhdGUoKX19dmFyIE9PLGtPLEFPPXQoKCgpPT57YkUoKSxPTz04LGtPPW5ldyBTZXQoW2A8YCxgPmAsYD1gLGArYCxgLWAsYCpgLGAvYCxgJmAsYF5gLGAlYF0pfSkpO2Z1bmN0aW9uIGpPKGUpe3N3aXRjaChlLnR5cGUpe2Nhc2VgZW1wdHlgOnJldHVybmBgO2Nhc2VgdGV4dGA6cmV0dXJuIGUudGV4dDtjYXNlYG51bWJlcmA6cmV0dXJuIFN0cmluZyhlLm51bWJlcik7Y2FzZWBib29sYDpyZXR1cm4gZS5ib29sP2BUUlVFYDpgRkFMU0VgO2Nhc2VgZXJyb3JgOnJldHVybiBlLmVycm9yO2Nhc2Vgc2hhcmVkYDpyZXR1cm5gYH19ZnVuY3Rpb24gTU8oZSx0LG4scj0hMSl7bGV0IGk9dC5jZWxsWGZzW2Uuc3R5bGVJbmRleD8/MF0/Lm51bUZtdElkPz8wLGE9dC5udW1GbXRzPy5maW5kKGU9PmUubnVtRm10SWQ9PT1pKT8uZm9ybWF0Q29kZT8/bnVsbCxvPW4/Lm51bUZtdElkPz9pLHM9bj8uZm9ybWF0Q29kZT8/YTtpZihlLnZhbHVlLnR5cGUhPT1gbnVtYmVyYCl7bGV0IHQ9ak8oZS52YWx1ZSk7cmV0dXJue3RleHQ6cz9OTyh0LHMpOnR9fWxldCBjPVBPKGUuZm9ybXVsYSk7cmV0dXJuIEhPKGM/P2UudmFsdWUubnVtYmVyLG8scyxjPT09bnVsbD9yOiExKX1mdW5jdGlvbiBOTyhlLHQpe2xldCBuPVVPKHQpLHI7aWYobi5sZW5ndGg+PTQpcj1uWzNdO2Vsc2V7bGV0IHQ9bltuLmxlbmd0aC0xXTtpZighdC5pbmNsdWRlcyhgQGApKXJldHVybiBlO3I9dH1pZihyPT09YGApcmV0dXJuYGA7bGV0IGk9YGAsYT0wO2Zvcig7YTxyLmxlbmd0aDspe2xldCB0PXJbYV07aWYodD09PWAiYCl7Zm9yKGErKzthPHIubGVuZ3RoJiZyW2FdIT09YCJgOylpKz1yW2ErK107YTxyLmxlbmd0aCYmYSsrfWVsc2UgaWYodD09PWBcXGApYSsxPHIubGVuZ3RoJiYoaSs9clthKzFdKSxhKz0yO2Vsc2UgaWYodD09PWBbYCl7Zm9yKDthPHIubGVuZ3RoJiZyW2FdIT09YF1gOylhKys7YTxyLmxlbmd0aCYmYSsrfWVsc2UgdD09PWBAYD8oaSs9ZSxhKyspOnQ9PT1gX2B8fHQ9PT1gKmA/YSs9MjooaSs9dCxhKyspfXJldHVybiBpfWZ1bmN0aW9uIFBPKGUpe2lmKCFlKXJldHVybiBudWxsO2xldCB0PWUudHJpbSgpLnJlcGxhY2UoL149LyxgYCkudG9VcHBlckNhc2UoKS5yZXBsYWNlKC9ccysvZyxgYCk7cmV0dXJuIHQ9PT1gVE9EQVkoKWA/Q08oKTp0PT09YE5PVygpYD93TygpOm51bGx9ZnVuY3Rpb24gRk8oZSl7Zm9yKGxldCB0IG9mIGFrKWlmKGUuZ2V0VGltZSgpPj10LnN0YXJ0LmdldFRpbWUoKSlyZXR1cm57YWJicjp0LmFiYnIsc2hvcnQ6dC5zaG9ydCxsb25nOnQubG9uZyx5ZWFyOmUuZ2V0VVRDRnVsbFllYXIoKS10LnN0YXJ0LmdldFVUQ0Z1bGxZZWFyKCkrMX07bGV0IHQ9YWtbYWsubGVuZ3RoLTFdO3JldHVybnthYmJyOnQuYWJicixzaG9ydDp0LnNob3J0LGxvbmc6dC5sb25nLHllYXI6ZS5nZXRVVENGdWxsWWVhcigpfX1mdW5jdGlvbiBJTyhlLHQsbj0hMSl7bGV0IHI9bGEoZSxuKSxpPXIuZ2V0VVRDRnVsbFllYXIoKSxhPXIuZ2V0VVRDTW9udGgoKSsxLG89ci5nZXRVVENEYXRlKCkscz1yLmdldFVUQ0RheSgpLGM9ci5nZXRVVENIb3VycygpLGw9ci5nZXRVVENNaW51dGVzKCksdT1yLmdldFVUQ1NlY29uZHMoKSxkPXQuc3BsaXQoYDtgKVswXSxmPS9hbVwvcG18YVwvcC9pLnRlc3QoZCkscD1udWxsLG09KCk9PnA/Pz1GTyhyKSxoPWBgLGc9MCxfPSExO2Zvcig7ZzxkLmxlbmd0aDspe2xldCB0PWRbZ107aWYodD09PWAiYCl7Zm9yKGcrKztnPGQubGVuZ3RoJiZkW2ddIT09YCJgOyloKz1kW2crK107ZzxkLmxlbmd0aCYmZysrLF89ITF9ZWxzZSBpZih0PT09YFtgKXtsZXQgdD1kLmluZGV4T2YoYF1gLGcpLG49dD5nP2Quc2xpY2UoZysxLHQpOmBgLHI9bi5tYXRjaCgvXihbaG1zXSlcMSokL2kpO2lmKHIpe2xldCBpPXJbMV0udG9Mb3dlckNhc2UoKSxhPWU8MD9gLWA6YGAsbz1NYXRoLmZsb29yKE1hdGguYWJzKGUpKjg2NDAwKSxzO3M9aT09PWBoYD9NYXRoLmZsb29yKG8vMzYwMCk6aT09PWBtYD9NYXRoLmZsb29yKG8vNjApOm87bGV0IGM9bi5sZW5ndGg+PTI/U3RyaW5nKHMpLnBhZFN0YXJ0KG4ubGVuZ3RoLGAwYCk6U3RyaW5nKHMpO2grPWErYyxnPXQrMSxfPWk9PT1gaGB9ZWxzZXtmb3IoO2c8ZC5sZW5ndGgmJmRbZ10hPT1gXWA7KWcrKztnPGQubGVuZ3RoJiZnKyt9fWVsc2UgaWYodD09PWBfYClnKz0yO2Vsc2UgaWYodD09PWAqYClnKz0yO2Vsc2UgaWYodD09PWBcXGApZysxPGQubGVuZ3RoJiYoaCs9ZFtnKzFdKSxnKz0yLF89ITE7ZWxzZSBpZih0PT09YHlgfHx0PT09YFlgKXtsZXQgZT0wO2Zvcig7ZzxkLmxlbmd0aCYmZFtnXS50b0xvd2VyQ2FzZSgpPT09YHlgOyllKyssZysrO2grPWU8PTI/U3RyaW5nKGkpLnNsaWNlKC0yKTpTdHJpbmcoaSkucGFkU3RhcnQoNCxgMGApLF89ITF9ZWxzZSBpZih0PT09YG1gfHx0PT09YE1gKXtsZXQgZT0wO2Zvcig7ZzxkLmxlbmd0aCYmZFtnXS50b0xvd2VyQ2FzZSgpPT09YG1gOyllKyssZysrO2xldCB0PWQuc2xpY2UoZykucmVwbGFjZSgvXFtbXlxdXSpcXS9nLGBgKTtffHwvXjpzL2kudGVzdCh0KT9oKz1lPj0yP1N0cmluZyhsKS5wYWRTdGFydCgyLGAwYCk6U3RyaW5nKGwpOmU9PT0xP2grPVN0cmluZyhhKTplPT09Mj9oKz1TdHJpbmcoYSkucGFkU3RhcnQoMixgMGApOmU9PT0zP2grPXRrW2EtMV0uc2xpY2UoMCwzKTplPT09ND9oKz10a1thLTFdOmgrPXRrW2EtMV1bMF0sXz0hMX1lbHNlIGlmKHQ9PT1gZGB8fHQ9PT1gRGApe2xldCBlPTA7Zm9yKDtnPGQubGVuZ3RoJiZkW2ddLnRvTG93ZXJDYXNlKCk9PT1gZGA7KWUrKyxnKys7ZT09PTE/aCs9U3RyaW5nKG8pOmU9PT0yP2grPVN0cmluZyhvKS5wYWRTdGFydCgyLGAwYCk6ZT09PTM/aCs9bmtbc10uc2xpY2UoMCwzKTpoKz1ua1tzXSxfPSExfWVsc2UgaWYodD09PWBoYHx8dD09PWBIYCl7bGV0IGU9MDtmb3IoO2c8ZC5sZW5ndGgmJmRbZ10udG9Mb3dlckNhc2UoKT09PWBoYDspZSsrLGcrKztsZXQgdD1mP2MlMTJ8fDEyOmM7aCs9ZT49Mj9TdHJpbmcodCkucGFkU3RhcnQoMixgMGApOlN0cmluZyh0KSxfPSEwfWVsc2UgaWYodD09PWBzYHx8dD09PWBTYCl7bGV0IGU9MDtmb3IoO2c8ZC5sZW5ndGgmJmRbZ10udG9Mb3dlckNhc2UoKT09PWBzYDspZSsrLGcrKztoKz1lPj0yP1N0cmluZyh1KS5wYWRTdGFydCgyLGAwYCk6U3RyaW5nKHUpLF89ITF9ZWxzZSBpZih0PT09YGdgfHx0PT09YEdgKXtsZXQgZT0wO2Zvcig7ZzxkLmxlbmd0aCYmZFtnXS50b0xvd2VyQ2FzZSgpPT09YGdgOyllKyssZysrO2xldCB0PW0oKTtlPT09MT9oKz10LmFiYnI6ZT09PTI/aCs9dC5zaG9ydDpoKz10LmxvbmcsXz0hMX1lbHNlIGlmKHQ9PT1gZWB8fHQ9PT1gRWApe2xldCBlPTA7Zm9yKDtnPGQubGVuZ3RoJiZkW2ddLnRvTG93ZXJDYXNlKCk9PT1gZWA7KWUrKyxnKys7bGV0IHQ9bSgpLnllYXI7aCs9ZT49Mj9TdHJpbmcodCkucGFkU3RhcnQoMixgMGApOlN0cmluZyh0KSxfPSExfWVsc2UgaWYodD09PWByYHx8dD09PWBSYCl7bGV0IGU9MDtmb3IoO2c8ZC5sZW5ndGgmJmRbZ10udG9Mb3dlckNhc2UoKT09PWByYDspZSsrLGcrKztsZXQgdD1tKCkueWVhcjtoKz1lPj0yP1N0cmluZyh0KS5wYWRTdGFydCgyLGAwYCk6U3RyaW5nKHQpLF89ITF9ZWxzZSBpZih0PT09YEFgfHx0PT09YGFgKXtsZXQgZT1kLnNsaWNlKGcpLnRvVXBwZXJDYXNlKCk7ZS5zdGFydHNXaXRoKGBBQUFBYCk/KGgrPWlrW3NdLGcrPTQpOmUuc3RhcnRzV2l0aChgQUFBYCk/KGgrPXJrW3NdLGcrPTMpOmUuc3RhcnRzV2l0aChgQU0vUE1gKT8oaCs9YzwxMj9gQU1gOmBQTWAsZys9NSk6ZS5zdGFydHNXaXRoKGBBL1BgKT8oaCs9YzwxMj9gQWA6YFBgLGcrPTMpOihoKz10LGcrKyksXz0hMX1lbHNlIGgrPXQsZysrLHQhPT1gOmAmJnQhPT1gL2AmJnQhPT1gLWAmJnQhPT1gLmAmJnQhPT1gIGAmJihfPSExKX1yZXR1cm4gaH1mdW5jdGlvbiBMTyhlKXtpZigvXFtbaG1zXStcXS9pLnRlc3QoZSkpcmV0dXJuITA7bGV0IHQ9ZS5yZXBsYWNlKC8iW14iXSoiL2csYGApLnJlcGxhY2UoL1xbW15cXV0qXF0vZyxgYCk7cmV0dXJuL1t5ZF0vaS50ZXN0KHQpfHwvYXszLH0vaS50ZXN0KHQpfWZ1bmN0aW9uIFJPKGUpe3JldHVybiBlLmluY2x1ZGVzKGAuYCk/ZS5yZXBsYWNlKC8wKyQvLGBgKS5yZXBsYWNlKC9cLiQvLGBgKTplfWZ1bmN0aW9uIHpPKGUpe3JldHVybmAke2U+PTA/YCtgOmAtYH0ke01hdGguYWJzKGUpLnRvU3RyaW5nKCkucGFkU3RhcnQoMixgMGApfWB9ZnVuY3Rpb24gQk8oZSl7bGV0W3Qsbl09ZS50b0V4cG9uZW50aWFsKHNrLTEpLnNwbGl0KGBlYCk7cmV0dXJuYCR7Uk8odCl9RSR7ek8oTnVtYmVyKG4pKX1gfWZ1bmN0aW9uIFZPKGUpe2lmKCFOdW1iZXIuaXNGaW5pdGUoZSkpcmV0dXJuIFN0cmluZyhlKTtpZihlPT09MClyZXR1cm5gMGA7bGV0IHQ9ZTwwLG49TWF0aC5hYnMoZSkscj1OdW1iZXIobi50b0V4cG9uZW50aWFsKG9rLTEpLnNwbGl0KGBlYClbMV0pLGk9cj49b2t8fHI8LTU/Qk8obik6Uk8obi50b1ByZWNpc2lvbihvaykpO3JldHVybiB0P2AtJHtpfWA6aX1mdW5jdGlvbiBITyhlLHQsbixyPSExKXtpZih0PT09MTQmJiFuKXJldHVybnt0ZXh0OnZhKGUscil9O2xldCBpPWVrW3RdO2lmKGkpcmV0dXJue3RleHQ6SU8oZSxpLHIpfTtpZihuJiZuLnRyaW0oKS50b0xvd2VyQ2FzZSgpPT09YGdlbmVyYWxgKXJldHVybnt0ZXh0OlZPKGUpfTtpZihuKXJldHVybiBMTyhuKT97dGV4dDpJTyhlLG4scil9OiRPKGUsbik7c3dpdGNoKHQpe2Nhc2UgMDpyZXR1cm57dGV4dDpWTyhlKX07Y2FzZSAxOnJldHVybiAkTyhlLGAwYCk7Y2FzZSAyOnJldHVybiAkTyhlLGAwLjAwYCk7Y2FzZSAzOnJldHVybiAkTyhlLGAjLCMjMGApO2Nhc2UgNDpyZXR1cm4gJE8oZSxgIywjIzAuMDBgKTtjYXNlIDk6cmV0dXJuICRPKGUsYDAlYCk7Y2FzZSAxMDpyZXR1cm4gJE8oZSxgMC4wMCVgKTtjYXNlIDExOnJldHVybiAkTyhlLGAwLjAwRSswMGApO2Nhc2UgMzc6cmV0dXJuICRPKGUsYCMsIyMwIDsoIywjIzApYCk7Y2FzZSAzODpyZXR1cm4gJE8oZSxgIywjIzAgO1tSZWRdKCMsIyMwKWApO2Nhc2UgMzk6cmV0dXJuICRPKGUsYCMsIyMwLjAwOygjLCMjMC4wMClgKTtjYXNlIDQwOnJldHVybiAkTyhlLGAjLCMjMC4wMDtbUmVkXSgjLCMjMC4wMClgKTtjYXNlIDQ4OnJldHVybiAkTyhlLGAjIzAuMEUrMGApO2Nhc2UgNDk6cmV0dXJue3RleHQ6U3RyaW5nKGUpfTtkZWZhdWx0OnJldHVybnt0ZXh0OlZPKGUpfX19ZnVuY3Rpb24gVU8oZSl7bGV0IHQ9W10sbj1gYCxyPTA7Zm9yKDtyPGUubGVuZ3RoOyl7bGV0IGk9ZVtyXTtpZihpPT09YCJgKXtmb3Iobis9aSxyKys7cjxlLmxlbmd0aCYmZVtyXSE9PWAiYDspbis9ZVtyKytdO3I8ZS5sZW5ndGgmJihuKz1lW3IrK10pfWVsc2UgaWYoaT09PWBcXGApbis9aSxyKzE8ZS5sZW5ndGgmJihuKz1lW3IrMV0pLHIrPTI7ZWxzZSBpZihpPT09YFtgKXtmb3Iobis9aSxyKys7cjxlLmxlbmd0aCYmZVtyXSE9PWBdYDspbis9ZVtyKytdO3I8ZS5sZW5ndGgmJihuKz1lW3IrK10pfWVsc2UgaT09PWA7YD8odC5wdXNoKG4pLG49YGAscisrKToobis9aSxyKyspfXJldHVybiB0LnB1c2gobiksdH1mdW5jdGlvbiBXTyhlKXtsZXQgdD1gYCxuLHIsaT0wO2Zvcig7aTxlLmxlbmd0aDspe2xldCBhPWVbaV07aWYoYT09PWAiYCl7Zm9yKHQrPWEsaSsrO2k8ZS5sZW5ndGgmJmVbaV0hPT1gImA7KXQrPWVbaSsrXTtpPGUubGVuZ3RoJiYodCs9ZVtpKytdKX1lbHNlIGlmKGE9PT1gXFxgKXQrPWEsaSsxPGUubGVuZ3RoJiYodCs9ZVtpKzFdKSxpKz0yO2Vsc2UgaWYoYT09PWBbYCl7bGV0IG89ZS5pbmRleE9mKGBdYCxpKTtpZihvPDApe3QrPWEsaSsrO2NvbnRpbnVlfWxldCBzPWUuc2xpY2UoaSsxLG8pLGM9cy50b0xvd2VyQ2FzZSgpLGw9Yy5tYXRjaCgvXmNvbG9yKFxkezEsMn0pJC8pLHU9cy5tYXRjaCgvXig8PXw+PXw8Pnw8fD58PSlccyooLT9bMC05Ll0rKD86W2VFXVstK10/XGQrKT8pJC8pO2lmKGMgaW4gY2spbj1ja1tjXTtlbHNlIGlmKGwpe2xldCBlPXBhcnNlSW50KGxbMV0sMTApO2U+PTEmJmU8PTU2JiYobj1sa1tlKzddPz9uKX1lbHNlIHU/cj17b3A6dVsxXSx2YWx1ZTpOdW1iZXIodVsyXSl9OnQrPWUuc2xpY2UoaSxvKzEpO2k9bysxfWVsc2UgdCs9YSxpKyt9cmV0dXJue2JvZHk6dCxjb2xvcjpuLGNvbmRpdGlvbjpyfX1mdW5jdGlvbiBHTyhlLHQpe3N3aXRjaChlLm9wKXtjYXNlYDxgOnJldHVybiB0PGUudmFsdWU7Y2FzZWA8PWA6cmV0dXJuIHQ8PWUudmFsdWU7Y2FzZWA+YDpyZXR1cm4gdD5lLnZhbHVlO2Nhc2VgPj1gOnJldHVybiB0Pj1lLnZhbHVlO2Nhc2VgPWA6cmV0dXJuIHQ9PT1lLnZhbHVlO2Nhc2VgPD5gOnJldHVybiB0IT09ZS52YWx1ZX19ZnVuY3Rpb24gS08oZSl7bGV0IHQ9W10sbj1gYCxyPWBgLGk9ITEsYT0hMSxvLHM9ITEsYz0wLGw9MCx1PWU9PntpZighZSlyZXR1cm47IWEmJiFzJiYoYz1uLnJlcGxhY2UoLywvZyxgYCkubGVuZ3RoKTtsZXQgcj10W3QubGVuZ3RoLTFdO3ImJnIua2luZD09PWBsaXRgP3IudGV4dCs9ZTp0LnB1c2goe2tpbmQ6YGxpdGAsdGV4dDplfSl9LGQ9MDtmb3IoO2Q8ZS5sZW5ndGg7KXtsZXQgYz1lW2RdO2lmKGM9PT1gImApe2QrKztsZXQgdD1gYDtmb3IoO2Q8ZS5sZW5ndGgmJmVbZF0hPT1gImA7KXQrPWVbZCsrXTtkPGUubGVuZ3RoJiZkKyssdSh0KX1lbHNlIGlmKGM9PT1gXFxgKWQrMTxlLmxlbmd0aCYmdShlW2QrMV0pLGQrPTI7ZWxzZSBpZihjPT09YFtgKXtsZXQgdD1lLmluZGV4T2YoYF1gLGQpLG49dD5kP2Uuc2xpY2UoZCsxLHQpOmBgO2lmKG4uc3RhcnRzV2l0aChgJGApKXtsZXQgZT1uLnNsaWNlKDEpLHQ9ZS5pbmRleE9mKGAtYCk7dSh0Pj0wP2Uuc2xpY2UoMCx0KTplKX1kPXQ8MD9lLmxlbmd0aDp0KzF9ZWxzZSBpZihjPT09YF9gKXUoYCBgKSxkKz0yO2Vsc2UgaWYoYz09PWAqYCl1KGVbZCsxXT8/YGApLGQrPTI7ZWxzZSBpZihjPT09YCNgfHxjPT09YDBgfHxjPT09YD9gKWE/KHIrPWMsdC5wdXNoKHtraW5kOmBmcmFjcGhgLHBoOmN9KSk6KG4rPWMsdC5wdXNoKHtraW5kOmBpbnRwaGAscGg6Y30pKSxsPTAsZCsrO2Vsc2UgaWYoYz09PWAuYClhPSEwLHQucHVzaCh7a2luZDpgZG90YH0pLGQrKztlbHNlIGlmKGM9PT1gLGApYXx8KG4rPWAsYCksbCsrLGQrKztlbHNlIGlmKGM9PT1gL2AmJm4ucmVwbGFjZSgvLC9nLGBgKS5sZW5ndGg+MCl7cz0hMCx0LnB1c2goe2tpbmQ6YGZyYWN0aW9uYH0pLGQrKztsZXQgbj1gYDtmb3IoO2Q8ZS5sZW5ndGgmJi9bMC05Iz9dLy50ZXN0KGVbZF0pOyluKz1lW2QrK107dFt0Lmxlbmd0aC0xXS5kZW49bn1lbHNlIGlmKGM9PT1gJWApaT0hMCx0LnB1c2goe2tpbmQ6YHBlcmNlbnRgfSksZCsrO2Vsc2UgaWYoKGM9PT1gRWB8fGM9PT1gZWApJiYoZVtkKzFdPT09YCtgfHxlW2QrMV09PT1gLWApKXtsZXQgbj1lW2QrMV09PT1gK2A7ZCs9MjtsZXQgcj0wO2Zvcig7ZDxlLmxlbmd0aCYmKGVbZF09PT1gMGB8fGVbZF09PT1gI2B8fGVbZF09PT1gP2ApOylyKyssZCsrO289e3BsdXM6bix3aWR0aDpNYXRoLm1heChyLDEpfSx0LnB1c2goe2tpbmQ6YGV4cGB9KX1lbHNlIHUoYyksZCsrfWxldCBmPWwscD0vLCg/PVsjMD9dKS8udGVzdChuKSxtPW4ucmVwbGFjZSgvLC9nLGBgKSxoO2lmKHMpe2xldCBlPXQuZmluZChlPT5lLmtpbmQ9PT1gZnJhY3Rpb25gKT8uZGVuPz9gP2Asbj1lLm1hdGNoKC9bMC05XSsvKTtoPXt3aG9sZVNwZWM6bS5zbGljZSgwLGMpLG51bVNwZWM6bS5zbGljZShjKXx8YD9gLGRlblNwZWM6ZS5yZXBsYWNlKC9bXjAjP10vZyxgYCksZml4ZWREZW46bj9wYXJzZUludChuWzBdLDEwKTpudWxsfX1yZXR1cm57cGFydHM6dCxpbnRTcGVjOm0sZnJhY1NwZWM6cixoYXNQZXJjZW50OmksY29tbWFTY2FsZTpmLGdyb3VwaW5nOnAsZXhwOm8sZnJhY3Rpb246aH19ZnVuY3Rpb24gcU8oZSl7cmV0dXJuIGUucmVwbGFjZSgvXEIoPz0oXGR7M30pKyg/IVxkKSkvZyxgLGApfWZ1bmN0aW9uIEpPKGUsdCxuKXtsZXQgcj10LnNwbGl0KGBgKSxpPWUuc3BsaXQoYGApLGE9W10sbz1pLmxlbmd0aC0xLHM9W107Zm9yKGxldCBlPXIubGVuZ3RoLTE7ZT49MDtlLS0pbz49MD8oYS51bnNoaWZ0KGlbb10pLHMudW5zaGlmdChpW29dKSxvLS0pOnJbZV09PT1gMGA/KGEudW5zaGlmdChgMGApLHMudW5zaGlmdChgMGApKTpyW2VdPT09YD9gJiZhLnVuc2hpZnQoYCBgKTtmb3IoO28+PTA7KWEudW5zaGlmdChpW29dKSxzLnVuc2hpZnQoaVtvXSksby0tO2lmKG4pe2xldCBlPXFPKHMuam9pbihgYCkpO3JldHVybihhLmxlbmd0aC1zLmxlbmd0aD4wP2Euc2xpY2UoMCxhLmxlbmd0aC1zLmxlbmd0aCkuam9pbihgYCk6YGApK2V9cmV0dXJuIGEuam9pbihgYCl9ZnVuY3Rpb24gWU8oZSx0KXtsZXQgbj10Lmxlbmd0aDtpZihuPT09MClyZXR1cm5gYDtsZXQgcj1lLnBhZEVuZChuLGAwYCkuc2xpY2UoMCxuKS5zcGxpdChgYCk7Zm9yKGxldCBlPW4tMTtlPj0wO2UtLSl7bGV0IG49dFtlXT8/YCNgO2lmKHJbZV09PT1gMGAmJm49PT1gI2ApcltlXT1gYDtlbHNlIGlmKHJbZV09PT1gMGAmJm49PT1gP2ApcltlXT1gIGA7ZWxzZSBicmVha31yZXR1cm4gci5qb2luKGBgKX1mdW5jdGlvbiBYTyhlLHQsbil7aWYobiE9PW51bGwpcmV0dXJuW01hdGgucm91bmQoZSpuKSxuXTtsZXQgcj0xMCoqTWF0aC5tYXgodCwxKS0xLGk9MCxhPTEsbz1NYXRoLmFicyhlKSxzPVswLDFdLGM9WzEsMV07Zm9yKGxldCB0PTA7dDwxMDA7dCsrKXtsZXQgdD1zWzBdK2NbMF0sbj1zWzFdK2NbMV07aWYobj5yKWJyZWFrO2xldCBsPXQvbix1PU1hdGguYWJzKGwtZSk7aWYodTxvJiYobz11LGk9dCxhPW4pLGw8ZSlzPVt0LG5dO2Vsc2UgaWYobD5lKWM9W3Qsbl07ZWxzZSBicmVha31yZXR1cm5baSxhXX1mdW5jdGlvbiBaTyhlLHQsbil7bGV0IHI9S08odCksaT1uP01hdGguYWJzKGUpOmU7ci5oYXNQZXJjZW50JiYoaSo9MTAwKSxyLmNvbW1hU2NhbGU+MCYmKGkvPTFlMyoqci5jb21tYVNjYWxlKTtsZXQgYT1pPDA/YC1gOmBgLG89TWF0aC5hYnMoaSk7aWYoci5mcmFjdGlvbil7bGV0IGU9TWF0aC5mbG9vcihvKSx0PW8tZSx7d2hvbGVTcGVjOm4sbnVtU3BlYzppLGRlblNwZWM6cyxmaXhlZERlbjpjfT1yLmZyYWN0aW9uLGw9bi5sZW5ndGg+MCxbdSxkXT1YTyh0LHMubGVuZ3RoLGMpLGY9KGUsdCk9PntsZXQgbj1TdHJpbmcoZSkscj10LmluY2x1ZGVzKGAwYCk/YDBgOmAgYDtmb3IoO24ubGVuZ3RoPHQubGVuZ3RoOyluPXIrbjtyZXR1cm4gbn0scD0oZSx0KT0+e2xldCBuPVN0cmluZyhlKSxyPXQuaW5jbHVkZXMoYDBgKT9gMGA6YCBgO2Zvcig7bi5sZW5ndGg8dC5sZW5ndGg7KW4rPXI7cmV0dXJuIG59LG09YTtpZihsKXtsZXQgdD1lPjA/U3RyaW5nKGUpOm4uaW5jbHVkZXMoYDBgKT9gMGA6YGA7aWYodT09PTApe2xldCBlPWM9PT1udWxsP3MubGVuZ3RofHwxOlN0cmluZyhjKS5sZW5ndGg7bSs9dCtgIGAucmVwZWF0KDEraS5sZW5ndGgrMStlKX1lbHNle2xldCBlPWM9PT1udWxsP3AoZCxzKTpTdHJpbmcoYyk7bSs9dCtgIGArZih1LGkpK2AvYCtlfX1lbHNle2xldCB0PXUrZSpkLG49Yz09PW51bGw/cChkLHMpOlN0cmluZyhjKTttKz1mKHQsaSkrYC9gK259cmV0dXJuIG19aWYoci5leHApe2xldCBlPU1hdGgubWF4KHIuaW50U3BlYy5sZW5ndGgsMSksdD1yLmZyYWNTcGVjLmxlbmd0aCxuPTAsaT0wO28hPT0wJiYoaT1NYXRoLmZsb29yKE1hdGgubG9nMTAobykpLGk9TWF0aC5mbG9vcihpL2UpKmUsbj1vLzEwKippLHBhcnNlRmxvYXQoaGEobix0KSk+PTEwKiplJiYoaSs9ZSxuPW8vMTAqKmkpKTtsZXRbcyxjPWBgXT1oYShuLHQpLnNwbGl0KGAuYCk7cmV0dXJuIGErUU8ocixKTyhzLHIuaW50U3BlYywhMSksWU8oYyxyLmZyYWNTcGVjKSxgRWArKGk8MD9gLWA6ci5leHAucGx1cz9gK2A6YGApK1N0cmluZyhNYXRoLmFicyhpKSkucGFkU3RhcnQoci5leHAud2lkdGgsYDBgKSl9bGV0IHM9ci5mcmFjU3BlYy5sZW5ndGgsW2MsbD1gYF09aGEobyxzKS5zcGxpdChgLmApLHU9Yy5yZXBsYWNlKC9eMCsvLGBgKSxkPS9bMF0vLnRlc3Qoci5pbnRTcGVjKXx8ci5pbnRTcGVjPT09YGAmJiExO3JldHVybiB1PT09YGAmJmQmJih1PWAwYCksYStRTyhyLEpPKHUsci5pbnRTcGVjLHIuZ3JvdXBpbmcpLFlPKGwsci5mcmFjU3BlYyksYGApfWZ1bmN0aW9uIFFPKGUsdCxuLHIpe2xldCBpPXQuc3BsaXQoYGApLGE9W107ZS5wYXJ0cy5mb3JFYWNoKChlLHQpPT57ZS5raW5kPT09YGludHBoYCYmYS5wdXNoKHQpfSk7bGV0IG89bi5zcGxpdChgYCkscz1bXTtlLnBhcnRzLmZvckVhY2goKGUsdCk9PntlLmtpbmQ9PT1gZnJhY3BoYCYmcy5wdXNoKHQpfSk7bGV0IGM9bmV3IE1hcCxsPWkubGVuZ3RoLTE7Zm9yKGxldCBlPWEubGVuZ3RoLTE7ZT49MDtlLS0paWYoZT09PTApe2xldCB0PWBgO2Zvcig7bD49MDspdD1pW2wtLV0rdDtjLnNldChhW2VdLHQpfWVsc2UgbD49MD9jLnNldChhW2VdLGlbbC0tXSk6Yy5zZXQoYVtlXSxgYCk7bGV0IHU9bmV3IE1hcDtmb3IobGV0IGU9MDtlPHMubGVuZ3RoO2UrKyl1LnNldChzW2VdLG9bZV0/P2BgKTtsZXQgZD1lLmZyYWNTcGVjLmxlbmd0aD4wJiYobi5sZW5ndGg+MHx8L1swP10vLnRlc3QoZS5mcmFjU3BlYykpLGY9YGA7Zm9yKGxldCB0PTA7dDxlLnBhcnRzLmxlbmd0aDt0Kyspe2xldCBuPWUucGFydHNbdF07bi5raW5kPT09YGxpdGA/Zis9bi50ZXh0Om4ua2luZD09PWBpbnRwaGA/Zis9Yy5nZXQodCk/P2BgOm4ua2luZD09PWBmcmFjcGhgP2YrPXUuZ2V0KHQpPz9gYDpuLmtpbmQ9PT1gZG90YD9mKz1kP2AuYDpgYDpuLmtpbmQ9PT1gcGVyY2VudGA/Zis9YCVgOm4ua2luZD09PWBleHBgJiYoZis9cil9cmV0dXJuIGZ9ZnVuY3Rpb24gJE8oZSx0KXtsZXQgbj1VTyh0KS5tYXAoV08pLHI9bi5zb21lKGU9PmUuY29uZGl0aW9uKSxpLGE9ITE7aWYocil7bGV0IHQ9ITE7Zm9yKGxldCByIG9mIG4paWYoci5jb25kaXRpb24pe2lmKEdPKHIuY29uZGl0aW9uLGUpKXtpPXIsdD0hMDticmVha319ZWxzZSBpZihpPz89cixpPT09cilicmVhaztpZighaSlyZXR1cm57dGV4dDpgI2B9O2E9dCYmZTwwfWVsc2UgZT4wP2k9blswXTplPDA/bi5sZW5ndGg+MT8oaT1uWzFdLGE9ITApOmk9blswXTppPW4ubGVuZ3RoPjI/blsyXTpuWzBdO2xldCBvPVpPKGUsaS5ib2R5LGEpO3JldHVybiBpLmNvbG9yP3t0ZXh0Om8sY29sb3I6aS5jb2xvcn06e3RleHQ6b319dmFyIGVrLHRrLG5rLHJrLGlrLGFrLG9rLHNrLGNrLGxrLHVrPXQoKCgpPT57YkUoKSxBTygpLGVrPXsxNTpgZC1tbW0teXlgLDE2OmBkLW1tbWAsMTc6YG1tbS15eWAsMTg6YGg6bW0gQU0vUE1gLDE5OmBoOm1tOnNzIEFNL1BNYCwyMDpgaDptbWAsMjE6YGg6bW06c3NgLDIyOmBtL2QveXl5eSBoOm1tYCwyNzpgWyQtNDExXWdlLm0uZGAsMjg6YFskLTQxMV1nZ2dlIuW5tCJtIuaciCJkIuaXpSJgLDI5OmBbJC00MTFdZ2dnZSLlubQibSLmnIgiZCLml6UiYCwzMDpgbS9kL3l5YCwzMTpgeXl5eSLlubQibSLmnIgiZCLml6UiYCw1MDpgWyQtNDExXWdlLm0uZGAsNTE6YFskLTQxMV1nZ2dlIuW5tCJtIuaciCJkIuaXpSJgLDUyOmB5eXl5IuW5tCJtIuaciCJgLDUzOmBtIuaciCJkIuaXpSJgLDU0OmBbJC00MTFdZ2dnZSLlubQibSLmnIgiZCLml6UiYCw1NTpgeXl5eSLlubQibSLmnIgiYCw1NjpgbSLmnIgiZCLml6UiYCw1NzpgWyQtNDExXWdlLm0uZGAsNTg6YFskLTQxMV1nZ2dlIuW5tCJtIuaciCJkIuaXpSJgfSx0az1bYEphbnVhcnlgLGBGZWJydWFyeWAsYE1hcmNoYCxgQXByaWxgLGBNYXlgLGBKdW5lYCxgSnVseWAsYEF1Z3VzdGAsYFNlcHRlbWJlcmAsYE9jdG9iZXJgLGBOb3ZlbWJlcmAsYERlY2VtYmVyYF0sbms9W2BTdW5kYXlgLGBNb25kYXlgLGBUdWVzZGF5YCxgV2VkbmVzZGF5YCxgVGh1cnNkYXlgLGBGcmlkYXlgLGBTYXR1cmRheWBdLHJrPVtg5pelYCxg5pyIYCxg54GrYCxg5rC0YCxg5pyoYCxg6YeRYCxg5ZyfYF0saWs9W2Dml6Xmm5zml6VgLGDmnIjmm5zml6VgLGDngavmm5zml6VgLGDmsLTmm5zml6VgLGDmnKjmm5zml6VgLGDph5Hmm5zml6VgLGDlnJ/mm5zml6VgXSxhaz1be3N0YXJ0Om5ldyBEYXRlKERhdGUuVVRDKDIwMTksNCwxKSksYWJicjpgUmAsc2hvcnQ6YOS7pGAsbG9uZzpg5Luk5ZKMYH0se3N0YXJ0Om5ldyBEYXRlKERhdGUuVVRDKDE5ODksMCw4KSksYWJicjpgSGAsc2hvcnQ6YOW5s2AsbG9uZzpg5bmz5oiQYH0se3N0YXJ0Om5ldyBEYXRlKERhdGUuVVRDKDE5MjYsMTEsMjUpKSxhYmJyOmBTYCxzaG9ydDpg5pitYCxsb25nOmDmmK3lkoxgfSx7c3RhcnQ6bmV3IERhdGUoRGF0ZS5VVEMoMTkxMiw2LDMwKSksYWJicjpgVGAsc2hvcnQ6YOWkp2AsbG9uZzpg5aSn5q2jYH0se3N0YXJ0Om5ldyBEYXRlKERhdGUuVVRDKDE4NjgsMCwyNSkpLGFiYnI6YE1gLHNob3J0OmDmmI5gLGxvbmc6YOaYjuayu2B9XSxvaz0xMSxzaz02LGNrPXtibGFjazpgIzAwMDAwMGAsYmx1ZTpgIzAwMDBGRmAsY3lhbjpgIzAwRkZGRmAsZ3JlZW46YCMwMDgwMDBgLG1hZ2VudGE6YCNGRjAwRkZgLHJlZDpgI0ZGMDAwMGAsd2hpdGU6YCNGRkZGRkZgLHllbGxvdzpgI0ZGRkYwMGB9LGxrPWAjMDAwMDAwLiNGRkZGRkYuI0ZGMDAwMC4jMDBGRjAwLiMwMDAwRkYuI0ZGRkYwMC4jRkYwMEZGLiMwMEZGRkYuIzAwMDAwMC4jRkZGRkZGLiNGRjAwMDAuIzAwRkYwMC4jMDAwMEZGLiNGRkZGMDAuI0ZGMDBGRi4jMDBGRkZGLiM4MDAwMDAuIzAwODAwMC4jMDAwMDgwLiM4MDgwMDAuIzgwMDA4MC4jMDA4MDgwLiNDMEMwQzAuIzgwODA4MC4jOTk5OUZGLiM5OTMzNjYuI0ZGRkZDQy4jQ0NGRkZGLiM2NjAwNjYuI0ZGODA4MC4jMDA2NkNDLiNDQ0NDRkYuIzAwMDA4MC4jRkYwMEZGLiNGRkZGMDAuIzAwRkZGRi4jODAwMDgwLiM4MDAwMDAuIzAwODA4MC4jMDAwMEZGLiMwMENDRkYuI0NDRkZGRi4jQ0NGRkNDLiNGRkZGOTkuIzk5Q0NGRi4jRkY5OUNDLiNDQzk5RkYuI0ZGQ0M5OS4jMzM2NkZGLiMzM0NDQ0MuIzk5Q0MwMC4jRkZDQzAwLiNGRjk5MDAuI0ZGNjYwMC4jNjY2Njk5LiM5Njk2OTYuIzAwMzM2Ni4jMzM5OTY2LiMwMDMzMDAuIzMzMzMwMC4jOTkzMzAwLiM5OTMzNjYuIzMzMzM5OS4jMzMzMzMzYC5zcGxpdChgLmApfSkpO2Z1bmN0aW9uIGRrKGUsdCl7bGV0IG49Z2s7cmV0dXJuIG5ldyBpKGBYTFNYIHJlbmRlcmVyICR7ZS5yZXNvdXJjZX0gZXhjZWVkZWQgaXRzIGhhcmQgbGltaXQgb2YgJHtufSBlbnRyaWVzYCx7c3RhZ2U6YHJlbmRlcmluZ2AsdmlvbGF0aW9uOntmb3JtYXQ6YHhsc3hgLG9wZXJhdGlvbjplLm9wZXJhdGlvbixyZXNvdXJjZTplLnJlc291cmNlLG1ldHJpYzpgZW50cnktY291bnRgLGxpbWl0Om4sb2JzZXJ2ZWQ6dCxjb25maWd1cmFibGU6ITEsdXNhZ2U6e2FyY2hpdmVFbnRyeUNvdW50OjAsZGVjbGFyZWRJbmZsYXRlZEJ5dGVzOjAsZGlzdGluY3RJbmZsYXRlZEJ5dGVzOjAsb3BlcmF0aW9uSW5mbGF0ZWRCeXRlczowfX19KX1mdW5jdGlvbiBmayhlLHQsbj0wKXtsZXR7dG9wOnIsYm90dG9tOmksbGVmdDphLHJpZ2h0Om99PWU7aWYoaTxyfHxvPGEpcmV0dXJuIDA7aWYoIVtyLGksYSxvXS5ldmVyeShOdW1iZXIuaXNTYWZlSW50ZWdlcil8fCFOdW1iZXIuaXNTYWZlSW50ZWdlcihuKXx8bjwwKXRocm93IGRrKHQsZ2srMSk7bGV0IHM9aS1yKzEsYz1vLWErMSxsPWdrK247aWYoIU51bWJlci5pc1NhZmVJbnRlZ2VyKHMpfHwhTnVtYmVyLmlzU2FmZUludGVnZXIoYyl8fHM+bHx8Yz5NYXRoLmZsb29yKGwvcykpdGhyb3cgZGsodCxnaysxKTtsZXQgdT1zKmMtbjtpZih1PmdrKXRocm93IGRrKHQsdSk7cmV0dXJuIHV9ZnVuY3Rpb24gcGsoZSx0LG4scil7aWYoIWUuaGFzKHQpJiZlLnNpemU+PWdrKXRocm93IGRrKHIsZS5zaXplKzEpO2Uuc2V0KHQsbil9ZnVuY3Rpb24gbWsoZSx0KXtsZXQgbj1uZXcgTWFwO2ZvcihsZXQgciBvZiBlKWZvcihsZXQgZSBvZiByLmNlbGxzKXBrKG4sYCR7ZS5yb3d9OiR7ZS5jb2x9YCxlLHQpO3JldHVybiBufWZ1bmN0aW9uIGhrKGUsdCxuKXtpZighZS5oYXModCkmJmUuc2l6ZT49Z2spdGhyb3cgZGsobixlLnNpemUrMSk7ZS5hZGQodCl9dmFyIGdrLF9rPXQoKCgpPT57YkUoKSxvdygpLGdrPWt9KSk7ZnVuY3Rpb24gdmsoZSx0LG4pe2ZvcihsZXQgciBvZiBlKWlmKHQ+PXIudG9wJiZ0PD1yLmJvdHRvbSYmbj49ci5sZWZ0JiZuPD1yLnJpZ2h0KXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIHlrKGUpe3JldHVybiBlJiZlLnZhbHVlLnR5cGU9PT1gbnVtYmVyYD9lLnZhbHVlLm51bWJlcjpudWxsfWZ1bmN0aW9uIGJrKGUpe3JldHVybiBlJiZlLnZhbHVlLnR5cGU9PT1gdGV4dGA/ZS52YWx1ZS50ZXh0Om51bGx9ZnVuY3Rpb24geGsoZSx0KXtsZXQgbj1bXTtmb3IobGV0IHIgb2YgZS5yb3dzKWZvcihsZXQgZSBvZiByLmNlbGxzKWUudmFsdWUudHlwZT09PWBudW1iZXJgJiZ2ayh0LGUucm93LGUuY29sKSYmbi5wdXNoKGUudmFsdWUubnVtYmVyKTtyZXR1cm4gbn1mdW5jdGlvbiBTayhlLHQpe2xldCBuPXQubGVuZ3RoP01hdGgubWluKC4uLnQpOjAscj10Lmxlbmd0aD9NYXRoLm1heCguLi50KTowLGk9ZS52YWx1ZT09bnVsbD9OYU46cGFyc2VGbG9hdChlLnZhbHVlKTtzd2l0Y2goZS5raW5kKXtjYXNlYG1pbmA6cmV0dXJuIG47Y2FzZWBtYXhgOnJldHVybiByO2Nhc2VgbnVtYDpyZXR1cm4gaXNOYU4oaSk/MDppO2Nhc2VgcGVyY2VudGA6e2xldCBlPWlzTmFOKGkpPzUwOmk7cmV0dXJuIG4rKHItbikqKGUvMTAwKX1jYXNlYHBlcmNlbnRpbGVgOntpZighdC5sZW5ndGgpcmV0dXJuIDA7bGV0IGU9Wy4uLnRdLnNvcnQoKGUsdCk9PmUtdCksbj0oaXNOYU4oaSk/NTA6aSkvMTAwO3JldHVybiBlW01hdGgubWF4KDAsTWF0aC5taW4oZS5sZW5ndGgtMSxNYXRoLnJvdW5kKG4qKGUubGVuZ3RoLTEpKSkpXX1kZWZhdWx0OnJldHVybiBpc05hTihpKT8wOml9fWZ1bmN0aW9uIENrKGUsdD13ayhlKSl7bGV0IG49W10scj1uZXcgTWFwO2ZvcihsZXQgdCBvZiBlLmRlZmluZWROYW1lcz8/W10pci5zZXQodC5uYW1lLHQpO2ZvcihsZXQgdCBvZiBlLmNvbmRpdGlvbmFsRm9ybWF0cz8/W10pe2xldCByPXhrKGUsdC5zcXJlZik7Zm9yKGxldCBlIG9mIHQucnVsZXMpe2xldCBpPXtydWxlOmUsc3FyZWY6dC5zcXJlZn07aWYoZS50eXBlPT09YGNvbG9yU2NhbGVgKWkuc2NhbGVTdG9wcz1lLnN0b3BzLm1hcChlPT5TayhlLHIpKTtlbHNlIGlmKGUudHlwZT09PWBkYXRhQmFyYClpLmJhck1pbj1TayhlLm1pbixyKSxpLmJhck1heD1TayhlLm1heCxyKTtlbHNlIGlmKGUudHlwZT09PWB0b3AxMGApe2xldCB0PVsuLi5yXS5zb3J0KChlLHQpPT5lLXQpLG49dC5sZW5ndGg7aWYobj4wKXtsZXQgcj1NYXRoLm1pbihlLnJhbmssbik7aWYoZS5wZXJjZW50KXtsZXQgYT1lLnRvcD8xLXIvMTAwOnIvMTAwO2kudG9wMTBUaHJlc2hvbGQ9dFtNYXRoLm1heCgwLE1hdGgubWluKG4tMSxNYXRoLnJvdW5kKGEqKG4tMSkpKSldfWVsc2UgaS50b3AxMFRocmVzaG9sZD1lLnRvcD90W01hdGgubWF4KDAsbi1yKV06dFtNYXRoLm1pbihuLTEsci0xKV07aS50b3AxMElzVG9wPWUudG9wfX1lbHNlIGlmKGUudHlwZT09PWBhYm92ZUF2ZXJhZ2VgKXtpZihyLmxlbmd0aD4wKXtsZXQgdD1yLnJlZHVjZSgoZSx0KT0+ZSt0LDApL3IubGVuZ3RoO2lmKGkuYXZnVmFsdWU9dCxpLmF2Z0lzQWJvdmU9ZS5hYm92ZUF2ZXJhZ2UsZS5zdGREZXYmJmUuc3RkRGV2PjApe2xldCBlPXIucmVkdWNlKChlLG4pPT5lKyhuLXQpKihuLXQpLDApL3IubGVuZ3RoO2kuYXZnU3RkRGV2PU1hdGguc3FydChlKX19fWVsc2UgZS50eXBlPT09YGljb25TZXRgJiYoaS5pY29uVGhyZXNob2xkcz1lLmNmdm9zLm1hcChlPT5TayhlLHIpKSk7bi5wdXNoKGkpfX1yZXR1cm4gbi5zb3J0KChlLHQpPT4oZS5ydWxlLnByaW9yaXR5Pz8wKS0odC5ydWxlLnByaW9yaXR5Pz8wKSkse2NvbXBpbGVkOm4sd29ya3NoZWV0OmUsY2VsbEluZGV4OnQsZGVmaW5lZE5hbWVzOnJ9fWZ1bmN0aW9uIHdrKGUpe3JldHVybiBtayhlLnJvd3Mse3Jlc291cmNlOmB3b3Jrc2hlZXQtY2VsbC1pbmRleGAsb3BlcmF0aW9uOmBpbmRleC13b3Jrc2hlZXQtY2VsbHNgfSl9ZnVuY3Rpb24gVGsoZSx0LG4pe3N3aXRjaCh0KXtjYXNlYGdyZWF0ZXJUaGFuYDpyZXR1cm4gZT4oblswXT8/MCk7Y2FzZWBncmVhdGVyVGhhbk9yRXF1YWxgOnJldHVybiBlPj0oblswXT8/MCk7Y2FzZWBsZXNzVGhhbmA6cmV0dXJuIGU8KG5bMF0/PzApO2Nhc2VgbGVzc1RoYW5PckVxdWFsYDpyZXR1cm4gZTw9KG5bMF0/PzApO2Nhc2VgZXF1YWxgOnJldHVybiBlPT09KG5bMF0/PzApO2Nhc2Vgbm90RXF1YWxgOnJldHVybiBlIT09KG5bMF0/PzApO2Nhc2VgYmV0d2VlbmA6cmV0dXJuIGU+PShuWzBdPz8wKSYmZTw9KG5bMV0/PzApO2Nhc2Vgbm90QmV0d2VlbmA6cmV0dXJuIGU8KG5bMF0/PzApfHxlPihuWzFdPz8wKTtkZWZhdWx0OnJldHVybiExfX1mdW5jdGlvbiBFayhlKXtsZXQgdD1lLnRyaW0oKTtpZih0Lmxlbmd0aD49MiYmdC5zdGFydHNXaXRoKGAiYCkmJnQuZW5kc1dpdGgoYCJgKSlyZXR1cm57dGV4dDp0LnNsaWNlKDEsLTEpLnJlcGxhY2UoLyIiL2csYCJgKX07bGV0IG49cGFyc2VGbG9hdCh0KTtyZXR1cm4gaXNOYU4obik/e3RleHQ6dH06e251bTpufX1mdW5jdGlvbiBEayhlLHQsbil7bGV0IHI9blswXT8/YGAsaT1uWzFdPz9gYCxhPWU9PmUudG9Mb3dlckNhc2UoKTtzd2l0Y2godCl7Y2FzZWBlcXVhbGA6cmV0dXJuIGEoZSk9PT1hKHIpO2Nhc2Vgbm90RXF1YWxgOnJldHVybiBhKGUpIT09YShyKTtjYXNlYGNvbnRhaW5zVGV4dGA6cmV0dXJuIGEoZSkuaW5jbHVkZXMoYShyKSk7Y2FzZWBub3RDb250YWluc2A6cmV0dXJuIWEoZSkuaW5jbHVkZXMoYShyKSk7Y2FzZWBiZWdpbnNXaXRoYDpyZXR1cm4gYShlKS5zdGFydHNXaXRoKGEocikpO2Nhc2VgZW5kc1dpdGhgOnJldHVybiBhKGUpLmVuZHNXaXRoKGEocikpO2Nhc2VgYmV0d2VlbmA6cmV0dXJuIGEoZSk+PWEocikmJmEoZSk8PWEoaSk7Y2FzZWBub3RCZXR3ZWVuYDpyZXR1cm4gYShlKTxhKHIpfHxhKGUpPmEoaSk7ZGVmYXVsdDpyZXR1cm4hMX19ZnVuY3Rpb24gT2soZSx0LG4pe2xldCByPWUucmVwbGFjZShgI2AsYGApLGk9dC5yZXBsYWNlKGAjYCxgYCksYT1wYXJzZUludChyLnNsaWNlKDAsMiksMTYpLG89cGFyc2VJbnQoci5zbGljZSgyLDQpLDE2KSxzPXBhcnNlSW50KHIuc2xpY2UoNCw2KSwxNiksYz1wYXJzZUludChpLnNsaWNlKDAsMiksMTYpLGw9cGFyc2VJbnQoaS5zbGljZSgyLDQpLDE2KSx1PXBhcnNlSW50KGkuc2xpY2UoNCw2KSwxNiksZD1NYXRoLnJvdW5kKGErKGMtYSkqbiksZj1NYXRoLnJvdW5kKG8rKGwtbykqbikscD1NYXRoLnJvdW5kKHMrKHUtcykqbik7cmV0dXJuYCMke2QudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsYDBgKS50b1VwcGVyQ2FzZSgpfSR7Zi50b1N0cmluZygxNikucGFkU3RhcnQoMixgMGApLnRvVXBwZXJDYXNlKCl9JHtwLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLGAwYCkudG9VcHBlckNhc2UoKX1gfWZ1bmN0aW9uIGtrKGUsdCxuKXtpZighdC5sZW5ndGgpcmV0dXJuYCNGRkZGRkZgO2lmKGU8PW5bMF0pcmV0dXJuIHRbMF0uY29sb3I7aWYoZT49bltuLmxlbmd0aC0xXSlyZXR1cm4gdFt0Lmxlbmd0aC0xXS5jb2xvcjtmb3IobGV0IHI9MTtyPG4ubGVuZ3RoO3IrKylpZihlPD1uW3JdKXtsZXQgaT1uW3ItMV0sYT1uW3JdLG89YT09PWk/MDooZS1pKS8oYS1pKTtyZXR1cm4gT2sodFtyLTFdLmNvbG9yLHRbcl0uY29sb3Isbyl9cmV0dXJuIHRbdC5sZW5ndGgtMV0uY29sb3J9ZnVuY3Rpb24gQWsoZSx0KXtpZih0JiYodC5maWxsJiYhZS5maWxsJiYoZS5maWxsPXQuZmlsbCksdC5mb250Py5jb2xvciYmZS5mb250Q29sb3I9PW51bGwmJihlLmZvbnRDb2xvcj10LmZvbnQuY29sb3IpLHQuZm9udD8uYm9sZCYmZS5mb250Qm9sZD09bnVsbCYmKGUuZm9udEJvbGQ9ITApLHQuZm9udD8uaXRhbGljJiZlLmZvbnRJdGFsaWM9PW51bGwmJihlLmZvbnRJdGFsaWM9ITApLHQuZm9udD8udW5kZXJsaW5lJiZlLmZvbnRVbmRlcmxpbmU9PW51bGwmJihlLmZvbnRVbmRlcmxpbmU9ITApLHQuZm9udD8uc3RyaWtlJiZlLmZvbnRTdHJpa2U9PW51bGwmJihlLmZvbnRTdHJpa2U9ITApLHQubnVtRm10JiZlLm51bUZtdD09bnVsbCYmKGUubnVtRm10PXtudW1GbXRJZDp0Lm51bUZtdC5udW1GbXRJZCxmb3JtYXRDb2RlOnQubnVtRm10LmZvcm1hdENvZGV8fG51bGx9KSx0LmJvcmRlcikpe2xldCBuPWUuYm9yZGVyPz97fTtlLmJvcmRlcj17bGVmdDpuLmxlZnQ/P3QuYm9yZGVyLmxlZnQscmlnaHQ6bi5yaWdodD8/dC5ib3JkZXIucmlnaHQsdG9wOm4udG9wPz90LmJvcmRlci50b3AsYm90dG9tOm4uYm90dG9tPz90LmJvcmRlci5ib3R0b20sZGlhZ29uYWxVcDpuLmRpYWdvbmFsVXA/P3QuYm9yZGVyLmRpYWdvbmFsVXAsZGlhZ29uYWxEb3duOm4uZGlhZ29uYWxEb3duPz90LmJvcmRlci5kaWFnb25hbERvd259fX1mdW5jdGlvbiBqayhlLHQsbixyLGkpe2xldCBhPXt9O2lmKCFyLmNvbXBpbGVkLmxlbmd0aClyZXR1cm4gYTtmb3IobGV0IG8gb2Ygci5jb21waWxlZCl7aWYoIXZrKG8uc3FyZWYsdCxuKSljb250aW51ZTtsZXQgcz1vLnJ1bGUsYz15ayhlKTtpZihzLnR5cGU9PT1gZXhwcmVzc2lvbmApe2xldCBlPW8uc3FyZWZbMF07aWYoIWUpY29udGludWU7aWYoWEQocy5mb3JtdWxhLHtyb3c6dCxjb2w6bixhbmNob3JSb3c6ZS50b3AsYW5jaG9yQ29sOmUubGVmdCxjZWxsSW5kZXg6ci5jZWxsSW5kZXgsZGVmaW5lZE5hbWVzOnIuZGVmaW5lZE5hbWVzLGRlcHRoOjB9KSYmKEFrKGEscy5keGZJZD09bnVsbD9udWxsOmlbcy5keGZJZF0pLHMuc3RvcElmVHJ1ZSkpYnJlYWs7Y29udGludWV9aWYocy50eXBlPT09YGNlbGxJc2Ape2xldCB0PXMuZm9ybXVsYXMubWFwKEVrKSxuPWJrKGUpLHI9ITE7YyE9bnVsbCYmdC5ldmVyeShlPT5lLm51bSE9bnVsbCk/cj1UayhjLHMub3BlcmF0b3IsdC5tYXAoZT0+ZS5udW0pKTpuIT1udWxsJiZ0LmV2ZXJ5KGU9PmUudGV4dCE9bnVsbCkmJihyPURrKG4scy5vcGVyYXRvcix0Lm1hcChlPT5lLnRleHQpKSksciYmQWsoYSxzLmR4ZklkPT1udWxsP251bGw6aVtzLmR4ZklkXSl9ZWxzZSBpZihzLnR5cGU9PT1gdG9wMTBgKXtpZihjPT1udWxsfHxvLnRvcDEwVGhyZXNob2xkPT1udWxsKWNvbnRpbnVlOyhvLnRvcDEwSXNUb3A/Yz49by50b3AxMFRocmVzaG9sZDpjPD1vLnRvcDEwVGhyZXNob2xkKSYmQWsoYSxzLmR4ZklkPT1udWxsP251bGw6aVtzLmR4ZklkXSl9ZWxzZSBpZihzLnR5cGU9PT1gYWJvdmVBdmVyYWdlYCl7aWYoYz09bnVsbHx8by5hdmdWYWx1ZT09bnVsbCljb250aW51ZTtsZXQgZT1vLmF2Z1N0ZERldj09bnVsbD8wOm8uYXZnU3RkRGV2KihzLnN0ZERldj8/MSksdD1vLmF2Z0lzQWJvdmU/by5hdmdWYWx1ZStlOm8uYXZnVmFsdWUtZSxuPXMuZXF1YWxBdmVyYWdlPT09ITA7KG8uYXZnSXNBYm92ZT9uP2M+PXQ6Yz50Om4/Yzw9dDpjPHQpJiZBayhhLHMuZHhmSWQ9PW51bGw/bnVsbDppW3MuZHhmSWRdKX1lbHNlIGlmKHMudHlwZT09PWBpY29uU2V0YCl7aWYoYz09bnVsbHx8IW8uaWNvblRocmVzaG9sZHM/Lmxlbmd0aCljb250aW51ZTtsZXQgZT1vLmljb25UaHJlc2hvbGRzLHQ9ZS5sZW5ndGgsbj0wO2ZvcihsZXQgcj0xO3I8dDtyKyspYz49ZVtyXSYmKG49cik7aWYocy5yZXZlcnNlJiYobj10LTEtbikscy5jdXN0b21JY29ucyYmcy5jdXN0b21JY29uc1tuXSl7bGV0IGU9cy5jdXN0b21JY29uc1tuXTtlLmljb25TZXQhPT1gTm9JY29uc2AmJihhLmljb25TZXQ9e25hbWU6ZS5pY29uU2V0LGluZGV4OmUuaWNvbklkfSl9ZWxzZSBhLmljb25TZXQ9e25hbWU6cy5pY29uU2V0LGluZGV4Om59fWVsc2UgaWYocy50eXBlPT09YGNvbG9yU2NhbGVgKXtpZihjPT1udWxsfHwhby5zY2FsZVN0b3BzfHxhLmZpbGwpY29udGludWU7bGV0IGU9a2soYyxzLnN0b3BzLG8uc2NhbGVTdG9wcyk7YS5maWxsPXtwYXR0ZXJuVHlwZTpgc29saWRgLGZnQ29sb3I6ZSxiZ0NvbG9yOmV9fWVsc2UgaWYocy50eXBlPT09YGRhdGFCYXJgKXtpZihjPT1udWxsfHxvLmJhck1pbj09bnVsbHx8by5iYXJNYXg9PW51bGx8fGEuZGF0YUJhciljb250aW51ZTtsZXQgZT1vLmJhck1heC1vLmJhck1pbix0PWU9PT0wPzA6TWF0aC5tYXgoMCxNYXRoLm1pbigxLChjLW8uYmFyTWluKS9lKSk7YS5kYXRhQmFyPXtjb2xvcjpzLmNvbG9yLHJhdGlvOnQsZ3JhZGllbnQ6cy5ncmFkaWVudH19fXJldHVybiBhfXZhciBNaz10KCgoKT0+e0FPKCksX2soKX0pKTtmdW5jdGlvbiBOayhlLHQpe3JldHVybiBlPT09Mj8hMDplPT09MT8hMTpVdyh2b2lkIDAsdCk9PT1gcnRsYH1mdW5jdGlvbiBQayhlLHQpe2xldCBuPWU9PT0yfHxHdyh0KTtyZXR1cm57bmVlZEJpZGk6bixiYXNlUnRsOm4mJk5rKGUsdCl9fWZ1bmN0aW9uIEZrKGUsdCl7bGV0IG49ZS5sZW5ndGg7aWYobj09PTApcmV0dXJue29yZGVyOltdLHJ0bDpbXX07bGV0IHI9YGAsaT1BcnJheShuKTtmb3IobGV0IHQ9MDt0PG47dCsrKXtpW3RdPXIubGVuZ3RoO2xldCBuPUlrKGVbdF0pPz9gYDtyKz1uLmxlbmd0aD4wP246YO+/vGB9bGV0e2xldmVsczphLHBhcmFncmFwaExldmVsOm99PUJ3KCkuY29tcHV0ZUxldmVscyhyLHQ/YHJ0bGA6YGx0cmApLHtvcmRlcjpzLHNlZ0xldmVsczpjfT1LdyhhLG8saSksbD1BcnJheShuKTtmb3IobGV0IGU9MDtlPG47ZSsrKWxbZV09KGNbZV0mMSk9PTE7cmV0dXJue29yZGVyOnMscnRsOmx9fXZhciBJayxMaz10KCgoKT0+e2JFKCksSWs9ZT0+e2xldCB0PWUudGV4dDtyZXR1cm4gdHlwZW9mIHQ9PWBzdHJpbmdgP3Q6dm9pZCAwfX0pKTtmdW5jdGlvbiBSayhlKXtsZXQgdD0vXlwkPyhbQS1aXSspXCQ/KFxkKykkLy5leGVjKGUudHJpbSgpKTtpZighdClyZXR1cm4gbnVsbDtsZXQgbj10WzFdLHI9MDtmb3IobGV0IGU9MDtlPG4ubGVuZ3RoO2UrKylyPXIqMjYrKG4uY2hhckNvZGVBdChlKS02NCk7bGV0IGk9cGFyc2VJbnQodFsyXSwxMCk7cmV0dXJuIGk8MXx8aT4xMDQ4NTc2fHxyPjE2Mzg0P251bGw6e3JvdzppLGNvbDpyfX1mdW5jdGlvbiB6ayhlLHQpe2xldCBuPWBgLHI9dDtmb3IoO3I+MDspe2xldCBlPShyLTEpJTI2O249U3RyaW5nLmZyb21DaGFyQ29kZSg2NStlKStuLHI9TWF0aC5mbG9vcigoci0xKS8yNil9cmV0dXJuYCR7bn0ke2V9YH12YXIgQms9dCgoKCk9PntJRCgpfSkpO2Z1bmN0aW9uIFZrKGUsdCxuLHIsaSxhPSExKXtsZXQgbz10LmNvZGVQb2ludEF0KDApPz8wLHM9SFQobyk7aWYoYSYmS1Qobykpe2Uuc2F2ZSgpLGUudHJhbnNsYXRlKG4scitpLzIpLGUudGV4dEFsaWduPWBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgLHVFKGUsKCk9PmUuZmlsbFRleHQodCwwLDApKSxlLnJlc3RvcmUoKTtyZXR1cm59aWYocz09PWBUcmApe2xldCBhPVdUKG8pO2lmKGEhPT1udWxsKXtlLmZpbGxUZXh0KFN0cmluZy5mcm9tQ29kZVBvaW50KGEpLG4scik7cmV0dXJufWlmKEdUKG8pKXtlLmZpbGxUZXh0KHQsbixyKTtyZXR1cm59ZS5zYXZlKCksZS50cmFuc2xhdGUobixyK2kvMiksZS5yb3RhdGUoTWF0aC5QSS8yKSxlLnRleHRBbGlnbj1gY2VudGVyYCxlLnRleHRCYXNlbGluZT1gbWlkZGxlYCxlLmZpbGxUZXh0KHQsMCwwKSxlLnJlc3RvcmUoKTtyZXR1cm59bGV0IGM9cz09PWBUdWA/VVQobyk6bnVsbDtlLmZpbGxUZXh0KGM9PT1udWxsP3Q6U3RyaW5nLmZyb21Db2RlUG9pbnQoYyksbixyKX12YXIgSGs9dCgoKCk9PntiRSgpfSkpO2Z1bmN0aW9uIFVrKGUpe3JldHVybiBlLmVkaXRBcz09PWBvbmVDZWxsYCYmKGUubmF0aXZlRXh0Q3g/PzApPjAmJihlLm5hdGl2ZUV4dEN5Pz8wKT4wfXZhciBXaz10KCgoKT0+e30pKTtmdW5jdGlvbiBHayhlKXtKay5kZWxldGUoZSl9ZnVuY3Rpb24gS2soZSx0LG4pe2xldCByPUprLmdldChlKTtyfHwocj1uZXcgTWFwLEprLnNldChlLHIpKSxyLnNldCh0LG4pfWZ1bmN0aW9uIHFrKGUsdCxuKXtyZXR1cm4gZSE9PXZvaWQgMCYmSmsuZ2V0KGUpPy5nZXQodCk9PT1ufXZhciBKayxZaz10KCgoKT0+e0prPW5ldyBXZWFrTWFwfSkpLFhrPW4oe0hFQURFUl9IOigpPT4yMixIRUFERVJfVzooKT0+NTAsYXBwbHlBdXRvUm93SGVpZ2h0czooKT0+UUEsYnVpbGRUYWJsZVN0eWxlTWFwOigpPT5WQSxjb2xXaWR0aFRvUHg6KCk9PkVELGNvbXB1dGVNZHc6KCk9Pm5BLGNzc1RhaWxGb3I6KCk9PlFrLGRlcml2ZWRBdXRvUm93SGVpZ2h0czooKT0+ZWosZG91YmxlQm9yZGVyUmFpbEVuZHBvaW50czooKT0+RWosZHJhd05vbldyYXBSaWNoVGV4dDooKT0+RkEsZHJhd1Bob25ldGljQmFuZDooKT0+bUEsZHJhd1Jlc29sdmVkUmljaExpbmU6KCk9PkFBLGRyYXdTaGFwZVRleHQ6KCk9PmJqLGRyYXdTbGljZXJGcmFtZTooKT0+UGosZHJhd1dyYXBwZWRQbGFpblRleHQ6KCk9PklBLGRyYXdXcmFwcGVkUmljaFRleHQ6KCk9PkxBLGZvbnRTdGFja0ZvcjooKT0+JGssZ2V0R3JpZEdlb21ldHJ5Rm9yV29ya3NoZWV0OigpPT5pQSxnZXRNZHdGb3JXb3Jrc2hlZXQ6KCk9PnJBLGdldFNoZWV0UmVuZGVyQ2FjaGU6KCk9PnFBLGhhc1ByZXBhcmVkQXV0b1Jvd0hlaWdodHM6KCk9PiRBLGltYWdlQ2FjaGVLZXk6KCk9PlprLGluaGVyaXRTaGVldFJlbmRlckNhY2hlOigpPT5zaixpbnZhbGlkYXRlQXV0b1Jvd0hlaWdodHM6KCk9Pm5qLGxheW91dFJpY2hUZXh0TGluZXM6KCk9PkVBLG1hcmtBdXRvUm93SGVpZ2h0c1ByZXBhcmVkOigpPT50aixwcmVwYXJlV29ya3NoZWV0TWF0aDooKT0+eWoscHhUb0NvbFdpZHRoOigpPT5ERCxweFRvUm93SGVpZ2h0OigpPT5rRCxyZW5kZXJWaWV3cG9ydDooKT0+Y2oscm93SGVpZ2h0VG9QeDooKT0+T0QscnRsTWlycm9yWDooKT0+ZUEsc2hlZXRBbmNob3JlZFJlY3RYOigpPT50QSx0YWJsZU92ZXJsYXlCb3JkZXI6KCk9PkhBLHdvcmtzaGVldEhhc1VuY2FjaGVkTWF0aDooKT0+dmosd3JhcFBhcmFncmFwaExpbmVzOigpPT5UQX0pO2Z1bmN0aW9uIFprKGUsdCl7cmV0dXJuIHQ/YCR7ZX18ZHVvOiR7dC5jbHIxfToke3QuY2xyMn1gOmV9ZnVuY3Rpb24gUWsoZSx0KXtsZXQgbj1lP0woZSk6bnVsbCxyPVIoZSk7aWYoIW4pe2xldCBlPXI9PT1gc2VyaWZgP0hqOnI9PT1gbW9ub2A/VWo6Vmo7aWYoIXQpcmV0dXJuIGU7bGV0IG49ZS5sYXN0SW5kZXhPZihgLGApLGk9eih0LHI9PT1gc2VyaWZgP2BzZXJpZmA6YHNhbnNgKTtyZXR1cm4gaS5sZW5ndGg9PT0wP2U6YCR7ZS5zbGljZSgwLG4pfSwgJHtpLm1hcChlPT5gIiR7ZX0iYCkuam9pbihgLCBgKX0ke2Uuc2xpY2Uobil9YH1sZXQgaT1yPT09YHNlcmlmYCxhPUkoZSksbz1bLi4uYT9bYV06W10sLi4ueihuLGk/YHNlcmlmYDpgc2Fuc2ApLmZpbHRlcihlPT5lIT09YSldLm1hcChlPT5gIiR7ZX0iYCkuam9pbihgLCBgKTtyZXR1cm5gJHtvP2Ake299LCBgOmBgfSJDYWxpYnJpIiwgIkNhcmxpdG8iLCAiQ2FtYnJpYSIsICJDYWxhZGVhIiwgQXJpYWwsICJOb3RvIE5hc2toIEFyYWJpYyIsICJOb3RvIFNhbnMgQXJhYmljIiwgJHtpP0JqOnpqfSwgJHtpP2BzZXJpZmA6YHNhbnMtc2VyaWZgfWB9ZnVuY3Rpb24gJGsoZSx0LG49YGApe2xldCByPWU/LnRyaW0oKSxpPUIobik/dDp2b2lkIDA7cmV0dXJuIHI/YCIke3J9IiwgJHtRayhyLGkpfWA6UWsobnVsbCxpKX1mdW5jdGlvbiBlQShlLHQsbil7cmV0dXJuIG4tZS10fWZ1bmN0aW9uIHRBKGUsdCxuLHIpe3JldHVybiByP2VBKGUsdCxuKTplfWZ1bmN0aW9uIG5BKGUsdCl7bGV0IG49dCp1dCxyPXR5cGVvZiBPZmZzY3JlZW5DYW52YXM8YHVgP25ldyBPZmZzY3JlZW5DYW52YXMoMSwxKTp0eXBlb2YgZG9jdW1lbnQ8YHVgP2RvY3VtZW50LmNyZWF0ZUVsZW1lbnQoYGNhbnZhc2ApOm51bGw7aWYoIXIpcmV0dXJuIDg7bGV0IGk9ci5nZXRDb250ZXh0KGAyZGApO2lmKCFpKXJldHVybiA4O2kuZm9udD1gJHtufXB4ICR7JGsoZSl9YDtsZXQgYT0wO2ZvcihsZXQgZSBvZmAwMTIzNDU2Nzg5YCl7bGV0IHQ9aS5tZWFzdXJlVGV4dChlKS53aWR0aDt0PmEmJihhPXQpfXJldHVybiBNYXRoLnJvdW5kKGEpfHw4fWZ1bmN0aW9uIHJBKGUpe3JldHVybiFlLmRlZmF1bHRGb250RmFtaWx5fHwhZS5kZWZhdWx0Rm9udFNpemU/ODpuQShlLmRlZmF1bHRGb250RmFtaWx5LGUuZGVmYXVsdEZvbnRTaXplKX1mdW5jdGlvbiBpQShlKXtyZXR1cm4gRkQuZm9yV29ya3NoZWV0TWVhc3VyZWQoZSwoKT0+ckEoZSkpfWZ1bmN0aW9uIGFBKGUsdCxuLHIsaSxhLG8pe2lmKCEoaTw9MHx8YTw9MCkpe2lmKG8pe2xldCBhPWUuY3JlYXRlTGluZWFyR3JhZGllbnQobixyLG4raSxyKTthLmFkZENvbG9yU3RvcCgwLGlpKHQsLjg1KSksYS5hZGRDb2xvclN0b3AoMSxpaSh0LC4xNSkpLGUuZmlsbFN0eWxlPWF9ZWxzZSBlLmZpbGxTdHlsZT1paSh0KTtlLmZpbGxSZWN0KG4scixpLGEpfX1mdW5jdGlvbiBvQShlKXtzd2l0Y2goZSl7Y2FzZWBzb2xpZGA6cmV0dXJuIDE7Y2FzZWBkYXJrR3JheWA6cmV0dXJuIC43NTtjYXNlYG1lZGl1bUdyYXlgOnJldHVybiAuNTtjYXNlYGxpZ2h0R3JheWA6cmV0dXJuIC4yNTtjYXNlYGdyYXkxMjVgOnJldHVybiAuMTI1O2Nhc2VgZ3JheTA2MjVgOnJldHVybiAuMDYyNTtjYXNlYGRhcmtIb3Jpem9udGFsYDpjYXNlYGRhcmtWZXJ0aWNhbGA6Y2FzZWBkYXJrRG93bmA6Y2FzZWBkYXJrVXBgOmNhc2VgZGFya0dyaWRgOmNhc2VgZGFya1RyZWxsaXNgOnJldHVybiAuNTtjYXNlYGxpZ2h0SG9yaXpvbnRhbGA6Y2FzZWBsaWdodFZlcnRpY2FsYDpjYXNlYGxpZ2h0RG93bmA6Y2FzZWBsaWdodFVwYDpjYXNlYGxpZ2h0R3JpZGA6Y2FzZWBsaWdodFRyZWxsaXNgOnJldHVybiAuMjU7ZGVmYXVsdDpyZXR1cm4gMX19ZnVuY3Rpb24gc0EoZSx0LG4scil7bGV0IGk9ZS5nZXRUcmFuc2Zvcm0oKSxhPU1hdGgubWF4KDEsTWF0aC5yb3VuZChNYXRoLmh5cG90KGkuYSxpLmIpKSksbz1NYXRoLm1heCgxLE1hdGgucm91bmQoTWF0aC5oeXBvdChpLmMsaS5kKSkpLHM9YCR7dH18JHtufXwke3J9fCR7YX18JHtvfWA7aWYoS2ouaGFzKHMpKXJldHVybiBLai5nZXQocyk7bGV0IGM9cWpbdF07aWYoIWMpcmV0dXJuIEtqLnNldChzLG51bGwpLG51bGw7bGV0IGw9Yy5sZW5ndGgsdT1vZShsLGwpO2lmKCF1KXJldHVybiBLai5zZXQocyxudWxsKSxudWxsO2xldCBkPXUuZ2V0Q29udGV4dChgMmRgKTtpZighZClyZXR1cm4gS2ouc2V0KHMsbnVsbCksbnVsbDtkLmZpbGxTdHlsZT1paShyKSxkLmZpbGxSZWN0KDAsMCxsLGwpLGQuZmlsbFN0eWxlPWlpKG4pO2ZvcihsZXQgZT0wO2U8bDtlKyspe2xldCB0PWNbZV07Zm9yKGxldCBuPTA7bjxsO24rKyl0JjE8PGwtMS1uJiZkLmZpbGxSZWN0KG4sZSwxLDEpfWxldCBmPWUuY3JlYXRlUGF0dGVybih1LGByZXBlYXRgKTtpZihmJiZ0eXBlb2YgRE9NTWF0cml4PGB1YCYmKGE+PTJ8fG8+PTIpKXtsZXQgZT1uZXcgRE9NTWF0cml4O2Uuc2NhbGVTZWxmKDEvYSwxL28pLGYuc2V0VHJhbnNmb3JtKGUpfXJldHVybiBLai5zZXQocyxmKSxmfWZ1bmN0aW9uIGNBKGUsdCxuLHIsaSxhKXtpZih0LmdyYWRpZW50JiZ0LmdyYWRpZW50LnN0b3BzLmxlbmd0aD4wKXJldHVybiBlLmZpbGxTdHlsZT1sQShlLHQuZ3JhZGllbnQsbixyLGksYSksZS5maWxsUmVjdChuLHIsaSxhKSwhMDtsZXQgbz10LnBhdHRlcm5UeXBlO2lmKCFvfHxvPT09YG5vbmVgKXJldHVybiExO2xldCBzPXQuZmdDb2xvcj8/YDAwMDAwMGAsYz10LmJnQ29sb3I/P2BGRkZGRkZgO2lmKG89PT1gc29saWRgKXJldHVybiBlLmZpbGxTdHlsZT1paShzKSxlLmZpbGxSZWN0KG4scixpLGEpLCEwO2xldCBsPXNBKGUsbyxzLGMpO2lmKGwpZS5maWxsU3R5bGU9bDtlbHNle2xldCB0PW9BKG8pO2UuZmlsbFN0eWxlPXQ+PTE/aWkocyk6ZEEocyxjLHQpfXJldHVybiBlLmZpbGxSZWN0KG4scixpLGEpLCEwfWZ1bmN0aW9uIGxBKGUsdCxuLHIsaSxhKXtsZXQgbztpZih0LmdyYWRpZW50VHlwZT09PWBwYXRoYCl7bGV0IHM9bitpKih0LmxlZnQrKDEtdC5yaWdodC10LmxlZnQpLzIpLGM9cithKih0LnRvcCsoMS10LmJvdHRvbS10LnRvcCkvMiksbD1NYXRoLmh5cG90KE1hdGgubWF4KHMtbixuK2ktcyksTWF0aC5tYXgoYy1yLHIrYS1jKSk7bz1lLmNyZWF0ZVJhZGlhbEdyYWRpZW50KHMsYywwLHMsYyxsKX1lbHNle2xldCBzPXQuZGVncmVlKk1hdGguUEkvMTgwLGM9bitpLzIsbD1yK2EvMix1PShNYXRoLmFicyhNYXRoLmNvcyhzKSkqaStNYXRoLmFicyhNYXRoLnNpbihzKSkqYSkvMjtvPWUuY3JlYXRlTGluZWFyR3JhZGllbnQoYy1NYXRoLmNvcyhzKSp1LGwtTWF0aC5zaW4ocykqdSxjK01hdGguY29zKHMpKnUsbCtNYXRoLnNpbihzKSp1KX1mb3IobGV0IGUgb2YgdC5zdG9wcyl7bGV0IHQ9TWF0aC5taW4oMSxNYXRoLm1heCgwLGUucG9zaXRpb24pKTtvLmFkZENvbG9yU3RvcCh0LGlpKGUuY29sb3IpKX1yZXR1cm4gb31mdW5jdGlvbiB1QShlLHQsbixyLGkpe2xldCBhPU1hdGgubWF4KDQsTWF0aC5taW4oOCxNYXRoLm1pbihyLGkpKi4xOCkpO2Uuc2F2ZSgpLGUuZmlsbFN0eWxlPWAjRDQwMDAwYCxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHQrci1hLG4pLGUubGluZVRvKHQrcixuKSxlLmxpbmVUbyh0K3IsbithKSxlLmNsb3NlUGF0aCgpLGUuZmlsbCgpLGUucmVzdG9yZSgpfWZ1bmN0aW9uIGRBKGUsdCxuKXtsZXQgcj1lLnJlcGxhY2UoYCNgLGBgKSxpPXQucmVwbGFjZShgI2AsYGApLGE9cGFyc2VJbnQoci5zbGljZSgwLDIpLDE2KSxvPXBhcnNlSW50KHIuc2xpY2UoMiw0KSwxNikscz1wYXJzZUludChyLnNsaWNlKDQsNiksMTYpLGM9cGFyc2VJbnQoaS5zbGljZSgwLDIpLDE2KSxsPXBhcnNlSW50KGkuc2xpY2UoMiw0KSwxNiksdT1wYXJzZUludChpLnNsaWNlKDQsNiksMTYpLGQ9TWF0aC5taW4oMSxNYXRoLm1heCgwLG4pKTtyZXR1cm5gcmdiKCR7TWF0aC5yb3VuZChhKmQrYyooMS1kKSl9LCR7TWF0aC5yb3VuZChvKmQrbCooMS1kKSl9LCR7TWF0aC5yb3VuZChzKmQrdSooMS1kKSl9KWB9ZnVuY3Rpb24gZkEoZSx0LG49MSxyKXtsZXQgaT1NYXRoLnJvdW5kKGUqdXQqbip0KTtyZXR1cm4gcj9NYXRoLm1heChpLE1hdGgucm91bmQoX0UocixlKnV0KnQpKSk6aX1mdW5jdGlvbiBwQShlLHQ9MSxuLHI9YGApe3JldHVybmAke2UuaXRhbGljP2BpdGFsaWMgYDpgYH0ke2UuYm9sZD9gYm9sZCBgOmBgfSR7TWF0aC5tYXgoMSxNYXRoLnJvdW5kKGUuc2l6ZSp1dCp0KSl9cHggJHskayhlLm5hbWUsbixyKX1gfWZ1bmN0aW9uIG1BKGUsdCxuLHIsaSxhLG8scyxjLGwsdSl7aWYodC5sZW5ndGg9PT0wKXJldHVybjtsZXQgZD1uPy5mb250SWQ/PzAsZj1hLmZvbnRzW2RdPz9hLmZvbnRzWzBdO2lmKCFmKXJldHVybjtsZXQgcD1uPy5hbGlnbm1lbnQ/P2BsZWZ0YDtlLnNhdmUoKSxlLmZvbnQ9cEEoZixjLHUsdC5tYXAoZT0+ZS50ZXh0KS5qb2luKGBgKSksZS50ZXh0QmFzZWxpbmU9YHRvcGAsZS50ZXh0QWxpZ249YGxlZnRgLGUuZmlsbFN0eWxlPWw7bGV0IG09cytNYXRoLnJvdW5kKDIqYyk7aWYocD09PWBub0NvbnRyb2xgKXtsZXQgbj1vO2ZvcihsZXQgciBvZiB0KWUuZmlsbFRleHQoci50ZXh0LG4sbSksbis9ZS5tZWFzdXJlVGV4dChyLnRleHQpLndpZHRoO2UucmVzdG9yZSgpO3JldHVybn1sZXQgaD1LRCh0LHIsbyxwLHQ9PmhBKGUsdCxpKSk7Zm9yKGxldCB0IG9mIGgpe2xldCBuPWUubWVhc3VyZVRleHQodC50ZXh0KS53aWR0aCxyPVsuLi50LnRleHRdO2lmKHQuc3ByZWFkPT09YGRpc3RyaWJ1dGVgJiZyLmxlbmd0aD4xJiZuPHQud2lkdGgpe2xldCBpPSh0LndpZHRoLW4pLyhyLmxlbmd0aC0xKTt0cnl7ZS5sZXR0ZXJTcGFjaW5nPWAke2l9cHhgfWNhdGNoe31lLmZpbGxUZXh0KHQudGV4dCx0LngsbSk7dHJ5e2UubGV0dGVyU3BhY2luZz1gMHB4YH1jYXRjaHt9fWVsc2UgdC5zcHJlYWQ9PT1gY2VudGVyYD9lLmZpbGxUZXh0KHQudGV4dCx0LngrKHQud2lkdGgtbikvMixtKTplLmZpbGxUZXh0KHQudGV4dCx0LngsbSl9ZS5yZXN0b3JlKCl9ZnVuY3Rpb24gaEEoZSx0LG4pe2xldCByPWUuZm9udDtlLmZvbnQ9bjtsZXQgaT1lLm1lYXN1cmVUZXh0KHQpLndpZHRoO3JldHVybiBlLmZvbnQ9cixpfWZ1bmN0aW9uIGdBKGUsdCxuLHIsaSxhLG89MSl7aWYoZS5zYXZlKCksZS5zdHJva2VTdHlsZT1pLGUubGluZVdpZHRoPS41LGUuYmVnaW5QYXRoKCksYSl7bGV0IGk9ci0xLGE9cisxLHM9aStSdihpLC41LG8pLGM9YStSdihhLC41LG8pO2UubW92ZVRvKHQscyksZS5saW5lVG8obixzKSxlLm1vdmVUbyh0LGMpLGUubGluZVRvKG4sYyl9ZWxzZXtsZXQgaT1yK1J2KHIsLjUsbyk7ZS5tb3ZlVG8odCxpKSxlLmxpbmVUbyhuLGkpfWUuc3Ryb2tlKCksZS5yZXN0b3JlKCl9ZnVuY3Rpb24gX0EoZSx0KXtsZXQgbj10LmZvbnQ7cmV0dXJuIG4/e2JvbGQ6bi5ib2xkLGl0YWxpYzpuLml0YWxpYyx1bmRlcmxpbmU6bi51bmRlcmxpbmUsdW5kZXJsaW5lU3R5bGU6bi51bmRlcmxpbmVTdHlsZSxzdHJpa2U6bi5zdHJpa2Usc2l6ZTpuLnNpemU/P2Uuc2l6ZSxjb2xvcjpuLmNvbG9yPz9lLmNvbG9yLG5hbWU6bi5uYW1lPz9lLm5hbWUsdmVydEFsaWduOm4udmVydEFsaWdufTplfWZ1bmN0aW9uIHZBKGUsdCl7bGV0IG49ZS5jZWxsWGZzW3RdPz9lLmNlbGxYZnNbMF0/P3tmb250SWQ6MCxmaWxsSWQ6MCxib3JkZXJJZDowLG51bUZtdElkOjAsYWxpZ25IOm51bGwsYWxpZ25WOm51bGwsd3JhcFRleHQ6ITF9O3JldHVybntmb250OmUuZm9udHNbbi5mb250SWRdPz97Ym9sZDohMSxpdGFsaWM6ITEsdW5kZXJsaW5lOiExLHN0cmlrZTohMSxzaXplOldqLGNvbG9yOm51bGwsbmFtZTpudWxsfSxmaWxsOmUuZmlsbHNbbi5maWxsSWRdPz97cGF0dGVyblR5cGU6YG5vbmVgLGZnQ29sb3I6bnVsbCxiZ0NvbG9yOm51bGx9LGJvcmRlcjplLmJvcmRlcnNbbi5ib3JkZXJJZF0/P3tsZWZ0Om51bGwscmlnaHQ6bnVsbCx0b3A6bnVsbCxib3R0b206bnVsbH0seGY6bn19ZnVuY3Rpb24geUEoZSx0KXtsZXQgbj1lLmNvbFN0eWxlUmFuZ2VzPz9bXTtmb3IobGV0IGU9bi5sZW5ndGgtMTtlPj0wO2UtLSl7bGV0IHI9bltlXTtpZih0Pj1yLm1pbiYmdDw9ci5tYXgpcmV0dXJuIHIuc3R5bGVJbmRleH1yZXR1cm4gMH1mdW5jdGlvbiBiQShlLHQsbil7cmV0dXJuIHQ/LnN0eWxlSW5kZXg/P3lBKGUsbil9ZnVuY3Rpb24geEEoZSx0LG4pe2xldCByPVtdO2ZvcihsZXQgaSBvZiB0LnNwbGl0KGAKYCkpci5wdXNoKC4uLlRBKGUsaSxuKSk7cmV0dXJuIHJ9ZnVuY3Rpb24gU0EoZSx0KXtpZihlLmxlbmd0aD09PTB8fHQubGVuZ3RoPT09MClyZXR1cm4gMDtsZXQgbj1bLi4uZSwuLi50XSxyPWUubGVuZ3RoO3JldHVybiByLW5UKG4scixlVCwxKX1mdW5jdGlvbiBDQShlLHQpe2xldCBuPXQ7Zm9yKDtuPGUubGVuZ3RoOyl7bGV0IHQ9ZVtlLmxlbmd0aC1uLTFdLHI9ZVtlLmxlbmd0aC1uXSxpPXQ/LmNvZGVQb2ludEF0KDApLGE9cj8uY29kZVBvaW50QXQoMCk7aWYoaSE9PXZvaWQgMCYmYSE9PXZvaWQgMCYmb1QoaSkmJm9UKGEpKW4rKztlbHNlIGJyZWFrfXJldHVybiBuPj1lLmxlbmd0aD90Om59ZnVuY3Rpb24gd0EoZSx0KXtpZihlLmxlbmd0aD09PTB8fHQubGVuZ3RoPT09MClyZXR1cm4gMDtsZXQgbj10WzBdLmNvZGVQb2ludEF0KDApLHI9ZS5sZW5ndGgtMSxpPWVbcl0uY29kZVBvaW50QXQoMCk7aWYoaT09PXZvaWQgMHx8bj09PXZvaWQgMHx8aT09PTgyMDN8fG49PT04MjAzfHwhZ1QoaSxuKSlyZXR1cm4gMDtmb3IoO3I+MDspe2xldCB0PWVbci0xXS5jb2RlUG9pbnRBdCgwKSxuPWVbcl0uY29kZVBvaW50QXQoMCk7aWYodD09PXZvaWQgMHx8bj09PXZvaWQgMHx8IWdUKHQsbikpYnJlYWs7ci0tfXJldHVybiByPT09MD8wOmUubGVuZ3RoLXJ9ZnVuY3Rpb24gVEEoZSx0LG4pe2xldCByPVtdLGk9W10sYT0wO2Zvcig7YTx0Lmxlbmd0aDspe2xldCBlPXRbYV0sbj1lLmNvZGVQb2ludEF0KDApPz8wO2lmKGFUKG4pKWkucHVzaChlKSxhKz1uPjY1NTM1PzI6MTtlbHNlIGlmKGU9PT1gIGApe2xldCBlPWE7Zm9yKDtlPHQubGVuZ3RoJiZ0W2VdPT09YCBgOyllKys7aS5wdXNoKHQuc2xpY2UoYSxlKSksYT1lfWVsc2V7bGV0IGU9YTtmb3IoO2U8dC5sZW5ndGg7KXtsZXQgbj10W2VdLHI9bi5jb2RlUG9pbnRBdCgwKT8/MDtpZihuPT09YCBgfHxhVChyKSlicmVhaztlKz1yPjY1NTM1PzI6MX1sZXQgbj10LnNsaWNlKGEsZSkscj14VChuKT9PVChuKTpudWxsO2lmKHImJnIubGVuZ3RoPjApe2xldCBlPTA7Zm9yKGxldCB0IG9mIHIpaS5wdXNoKG4uc2xpY2UoZSx0KSksZT10O2kucHVzaChuLnNsaWNlKGUpKX1lbHNlIGkucHVzaChuKTthPWV9fWxldCBvPWBgO2ZvcihsZXQgdCBvZiBpKXtpZihvPT09YGApe289dDtjb250aW51ZX1sZXQgaT1vK3Q7aWYoZS5tZWFzdXJlVGV4dChpKS53aWR0aDw9bilvPWk7ZWxzZXtsZXQgZT10LnJlcGxhY2UoL14gKy8sYGApO2U9PT1gYCYmKGU9dCk7bGV0IG49Wy4uLm9dLGk9U0EobixbLi4uZV0pO2lmKGk+MCl7bGV0IHQ9bi5sZW5ndGgtaTtyLnB1c2gobi5zbGljZSgwLHQpLmpvaW4oYGApKSxvPW4uc2xpY2UodCkuam9pbihgYCkrZX1lbHNlIHIucHVzaChvKSxvPWV9fXJldHVybiByLnB1c2gobykscn1mdW5jdGlvbiBFQShlLHQsbixyLGksYSl7bGV0IG89W10scz1bXSxjPTAsbD0wLHU9bnVsbCxkPW4uc2l6ZSxmPW4ubmFtZSxwPTAsbT0oKT0+e3MubGVuZ3RoIT09MCYmKG8ucHVzaCh7c2VnbWVudHM6cyxtYXhGb250U2l6ZTpsLG1heEZvbnRGYW1pbHk6dSxwYXJhOnB9KSxzPVtdLGM9MCxsPTAsdT1udWxsKX0saD0oKT0+e2lmKHMubGVuZ3RoPT09MCl7by5wdXNoKHtzZWdtZW50czpbXSxtYXhGb250U2l6ZTpkfHxXaixtYXhGb250RmFtaWx5OmYscGFyYTpwfSk7cmV0dXJufW0oKX0sZz0odCxuKT0+e2lmKCF0KXJldHVybjtkPW4uc2l6ZSxmPW4ubmFtZSxlLmZvbnQ9cEEoa0EobikscixhLHQpO2xldCBvPWUubWVhc3VyZVRleHQodCkud2lkdGg7aWYocy5sZW5ndGg+MCYmYytvPmkpe2xldCBpPXMuZmxhdE1hcChlPT5bLi4uZS50ZXh0XSksbz1TQShpLFsuLi50XSk7bz4wP289Q0EoaSxvKToheFQodCkmJiF4VChzW3MubGVuZ3RoLTFdPy50ZXh0Pz9gYCkmJiEvXlxzL3UudGVzdCh0KSYmIS9ccyQvdS50ZXN0KGkuYXQoLTEpPz9gYCkmJihvPXdBKGksWy4uLnRdKSk7bGV0IGQ9c1tzLmxlbmd0aC0xXSxmPVsuLi5kLnRleHRdO28+Zi5sZW5ndGgmJihvPWYubGVuZ3RoKTtsZXQgcD1udWxsO2lmKG8+MCl7bGV0IHQ9Zi5zbGljZSgwLGYubGVuZ3RoLW8pLG49Zi5zbGljZShmLmxlbmd0aC1vKTtpZih0Lmxlbmd0aD09PTApcy5wb3AoKTtlbHNle2xldCBuPXQuam9pbihgYCk7ZS5mb250PXBBKGtBKGQuZm9udCkscixhLG4pLGQudGV4dD1uLGQud2lkdGg9ZS5tZWFzdXJlVGV4dChuKS53aWR0aH1sZXQgaT1uLmpvaW4oYGApO2UuZm9udD1wQShrQShkLmZvbnQpLHIsYSxpKSxwPXt0ZXh0OmksZm9udDpkLmZvbnQsd2lkdGg6ZS5tZWFzdXJlVGV4dChpKS53aWR0aH19bSgpLHAmJihzLnB1c2gocCksYys9cC53aWR0aCxwLmZvbnQuc2l6ZT5sJiYobD1wLmZvbnQuc2l6ZSx1PXAuZm9udC5uYW1lKSksZS5mb250PXBBKGtBKG4pLHIsYSx0KX1zLnB1c2goe3RleHQ6dCxmb250Om4sd2lkdGg6b30pLGMrPW8sbi5zaXplPmwmJihsPW4uc2l6ZSx1PW4ubmFtZSl9LF89KHQsbik9PntsZXQgbz1PVCh0KTtpZihvLmxlbmd0aD09PTApe2codCxuKTtyZXR1cm59ZS5mb250PXBBKGtBKG4pLHIsYSx0KTtsZXQgcz10PT5lLm1lYXN1cmVUZXh0KHQpLndpZHRoLGw9U1QodCksdT10Lmxlbmd0aCxkPTA7Zm9yKDtkPHU7KXtsZXQgZT1pLWMscj1BVCh0LG8sZCxlLHMsbCk7aWYocjw9ZCl7aWYoYz4wKXttKCk7Y29udGludWV9bGV0IG49by5maW5kKGU9PmU+ZCk/P3UsaT10LnNsaWNlKGQsbiksYT1NVChpKSxmPUFUKGksYSwwLGUscyxsKTtmPD0wJiYoZj1hLmxlbmd0aD4wP2FbMF06aS5sZW5ndGgpLHI9ZCtmfWcodC5zbGljZShkLHIpLG4pLGQ9cixkPHUmJm0oKX19O2ZvcihsZXQgZSBvZiB0KXtsZXQgdD1fQShuLGUpLHI9W10saT0wO2Zvcig7aTxlLnRleHQubGVuZ3RoOyl7bGV0IHQ9ZS50ZXh0W2ldLG49dC5jb2RlUG9pbnRBdCgwKT8/MDtpZihuPT09MTApci5wdXNoKGAKYCksaSs9MTtlbHNlIGlmKGFUKG4pKXIucHVzaCh0KSxpKz1uPjY1NTM1PzI6MTtlbHNlIGlmKHQ9PT1gIGApe2xldCB0PWk7Zm9yKDt0PGUudGV4dC5sZW5ndGgmJmUudGV4dFt0XT09PWAgYDspdCsrO3IucHVzaChlLnRleHQuc2xpY2UoaSx0KSksaT10fWVsc2V7bGV0IHQ9aTtmb3IoO3Q8ZS50ZXh0Lmxlbmd0aDspe2xldCBuPWUudGV4dFt0XSxyPW4uY29kZVBvaW50QXQoMCk/PzA7aWYobj09PWAgYHx8bj09PWAKYHx8YVQocikpYnJlYWs7dCs9cj42NTUzNT8yOjF9ci5wdXNoKGUudGV4dC5zbGljZShpLHQpKSxpPXR9fWZvcihsZXQgZSBvZiByKWU9PT1gCmA/KGgoKSxwKyspOnhUKGUpP18oZSx0KTpnKGUsdCl9cmV0dXJuKHMubGVuZ3RoPjB8fG8ubGVuZ3RoPjApJiZoKCksb31mdW5jdGlvbiBEQShlLHQsbil7cmV0dXJuIGU9PT1gbWlkZGxlYD97dW5kZXJsaW5lOnQrTWF0aC5yb3VuZChuKi41NSksc3RyaWtlOnR9OmU9PT1gYm90dG9tYD97dW5kZXJsaW5lOnQrMSxzdHJpa2U6dC1NYXRoLnJvdW5kKG4qLjM1KX06e3VuZGVybGluZTp0K24rMSxzdHJpa2U6dCtNYXRoLnJvdW5kKG4qLjUpfX1mdW5jdGlvbiBPQShlKXtsZXR7YWxpZ25WOnQsY3k6bixjZWxsSDpyLHBhZGRpbmdZOml9PWU7cmV0dXJuIHQ9PT1gdG9wYD97YmFzZWxpbmU6YHRvcGAsdGV4dFk6bitpfTp0PT09YGNlbnRlcmA/e2Jhc2VsaW5lOmBtaWRkbGVgLHRleHRZOm4rci8yfTp7YmFzZWxpbmU6YGJvdHRvbWAsdGV4dFk6bityLWl9fWZ1bmN0aW9uIGtBKGUpe3JldHVybiBlLnZlcnRBbGlnbj09PWBzdXBlcnNjcmlwdGB8fGUudmVydEFsaWduPT09YHN1YnNjcmlwdGA/ey4uLmUsc2l6ZTplLnNpemUqLjY1fTplfWZ1bmN0aW9uIEFBKGUsdCxuLHIsaSxhLG8scyxjKXtlLnRleHRBbGlnbj1gbGVmdGAsZS50ZXh0QmFzZWxpbmU9aTtsZXQgbD1zLm5lZWRCaWRpP0ZrKHQscy5iYXNlUnRsPz8hMSk6bnVsbCx1PWUsZD1uO2ZvcihsZXQgbj0wO248dC5sZW5ndGg7bisrKXtsZXQgZj1sP2wub3JkZXJbbl06bjtpZihsKXRyeXt1LmRpcmVjdGlvbj1sLnJ0bFtmXT9gcnRsYDpgbHRyYH1jYXRjaHt9bGV0IHA9dFtmXSxtPWtBKHAuZm9udCk7ZS5mb250PXBBKG0sYSxjLHAudGV4dCk7bGV0IGg9cy5mb250Q29sb3I/P3AuZm9udC5jb2xvcjtlLmZpbGxTdHlsZT1oP2lpKGgpOmAjMDAwMDAwYDtsZXQgZz1mQShwLmZvbnQuc2l6ZSxhKSxfPTA7cC5mb250LnZlcnRBbGlnbj09PWBzdXBlcnNjcmlwdGA/Xz0tTWF0aC5yb3VuZChnKi4zNSk6cC5mb250LnZlcnRBbGlnbj09PWBzdWJzY3JpcHRgJiYoXz1NYXRoLnJvdW5kKGcqLjEpKSxlLmZpbGxUZXh0KHAudGV4dCxkLHIrXyk7bGV0IHY9ZkEobS5zaXplLGEpO2lmKHAuZm9udC51bmRlcmxpbmV8fHAuZm9udC5zdHJpa2Upe2xldCB0PURBKGkscix2KTtpZihwLmZvbnQudW5kZXJsaW5lKXtsZXQgbj1oP2lpKGgpOmAjMDAwMDAwYCxyPXAuZm9udC51bmRlcmxpbmVTdHlsZT09PWBkb3VibGVgfHxwLmZvbnQudW5kZXJsaW5lU3R5bGU9PT1gZG91YmxlQWNjb3VudGluZ2A7Z0EoZSxkLGQrcC53aWR0aCx0LnVuZGVybGluZStfLG4scixvKX1pZihwLmZvbnQuc3RyaWtlKXtsZXQgbj10LnN0cmlrZStfLHI9bitSdihuLC41LG8pO2Uuc2F2ZSgpLGUuc3Ryb2tlU3R5bGU9aD9paShoKTpgIzAwMDAwMGAsZS5saW5lV2lkdGg9LjUsZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhkLHIpLGUubGluZVRvKGQrcC53aWR0aCxyKSxlLnN0cm9rZSgpLGUucmVzdG9yZSgpfX1kKz1wLndpZHRofWlmKGwpdHJ5e3UuZGlyZWN0aW9uPWBsdHJgfWNhdGNoe319ZnVuY3Rpb24gakEoZSx0LG4scixpLGEsbyxzLGMpe2xldHthbGlnbkg6bCxjeDp1LGNlbGxXOmQsbGVmdFBhZDpmLHBhZGRpbmdYOnB9PW4sbT10LnJlZHVjZSgoZSx0KT0+ZSt0LndpZHRoLDApLGg7aD1sPT09YHJpZ2h0YD91K2QtcC1tOmw9PT1gY2VudGVyYD91K2QvMi1tLzI6dStmO2xldHtuZWVkQmlkaTpnLGJhc2VSdGw6X309UGsoYS5yZWFkaW5nT3JkZXIsdC5tYXAoZT0+ZS50ZXh0KS5qb2luKGBgKSk7QUEoZSx0LGgsbyxzLHIsaSx7Zm9udENvbG9yOmEuZm9udENvbG9yLG5lZWRCaWRpOmcsYmFzZVJ0bDpffSxjKX1mdW5jdGlvbiBNQShlLHQsbixyLGksYSxvLHMsYyxsKXtqQShlLHQubWFwKHQ9PntsZXQgcj1fQShuLHQpO3JldHVybiBlLmZvbnQ9cEEoa0EociksaSxsLHQudGV4dCkse3RleHQ6dC50ZXh0LGZvbnQ6cix3aWR0aDplLm1lYXN1cmVUZXh0KHQudGV4dCkud2lkdGh9fSkscixpLGEsbyxzLGMsbCl9ZnVuY3Rpb24gTkEoZSx0LG4scixpLGEsbz17fSxzKXtsZXR7YmFzZWxpbmU6Yyx0ZXh0WTpsfT1PQShyKTtNQShlLHQsbixyLGksYSxvLGwsYyxzKX1mdW5jdGlvbiBQQShlLHQsbixyLGksYSxvPXt9LHMpe2xldHthbGlnblY6YyxjeTpsLGNlbGxIOnUscGFkZGluZ1k6ZH09cixmPVlBKHQsbixpKSxwPWYucmVkdWNlKChlLHQpPT5lK3QuaGVpZ2h0UHgsMCksbTttPWM9PT1gdG9wYD9sK2Q6Yz09PWBjZW50ZXJgP2wrKHUtcCkvMjpsK3UtcC1kO2ZvcihsZXQgdCBvZiBmKXQucnVucy5sZW5ndGg+MCYmTUEoZSx0LnJ1bnMsbixyLGksYSxvLG0sYHRvcGAscyksbSs9dC5oZWlnaHRQeH1mdW5jdGlvbiBGQShlLHQsbixyLGksYSxvPXt9LHMpe3Quc29tZShlPT5lLnRleHQuaW5jbHVkZXMoYApgKSk/UEEoZSx0LG4scixpLGEsbyxzKTpOQShlLHQsbixyLGksYSxvLHMpfWZ1bmN0aW9uIElBKGUsdCxuLHIsaSxhKXtsZXR7YWxpZ25WOm8sY3k6cyxjZWxsSDpjLGxlZnRQYWQ6bCxwYWRkaW5nWDp1LHBhZGRpbmdZOmR9PWksZj14QShlLHQsaS5jZWxsVy1sLXUpO2lmKGYubGVuZ3RoPT09MSl7bGV0e2Jhc2VsaW5lOnQsdGV4dFk6cn09T0EoaSk7ZS50ZXh0QmFzZWxpbmU9dCxlLmZpbGxUZXh0KGZbMF0sbixyKTtyZXR1cm59bGV0IHA9ZkEoci5zaXplLGEsMS4yLHIubmFtZT8/dm9pZCAwKSxtPWYubGVuZ3RoKnAsaDtoPW89PT1gdG9wYD9zK2Q6bz09PWBjZW50ZXJgP3MrKGMtbSkvMjpzK2MtbS1kLGUudGV4dEJhc2VsaW5lPWB0b3BgO2ZvcihsZXQgdD0wO3Q8Zi5sZW5ndGg7dCsrKWUuZmlsbFRleHQoZlt0XSxuLGgrdCpwKX1mdW5jdGlvbiBMQShlLHQsbixyLGksYSxvPXt9LHMpe2xldHthbGlnbkg6YyxhbGlnblY6bCxjeDp1LGN5OmQsY2VsbFc6ZixjZWxsSDpwLGxlZnRQYWQ6bSxwYWRkaW5nWDpoLHBhZGRpbmdZOmd9PXIsXz1FQShlLHQsbixpLGYtbS1oLHMpO2lmKF8ubGVuZ3RoPT09MSl7bGV0e2Jhc2VsaW5lOnQsdGV4dFk6bn09T0Eocik7akEoZSxfWzBdLnNlZ21lbnRzLHIsaSxhLG8sbix0LHMpO3JldHVybn1sZXQgdj1fLnJlZHVjZSgoZSx0KT0+ZStmQSh0Lm1heEZvbnRTaXplLGksMS4yLHQubWF4Rm9udEZhbWlseT8/dm9pZCAwKSwwKSx5O3k9bD09PWB0b3BgP2QrZzpsPT09YGNlbnRlcmA/ZCsocC12KS8yOmQrcC12LWc7bGV0IGI9dC5tYXAoZT0+ZS50ZXh0KS5qb2luKGBgKS5zcGxpdChgCmApLm1hcChlPT5QayhvLnJlYWRpbmdPcmRlcixlKSk7Zm9yKGxldCB0IG9mIF8pe2xldCBuPXQuc2VnbWVudHMucmVkdWNlKChlLHQpPT5lK3Qud2lkdGgsMCkscjtyPWM9PT1gcmlnaHRgP3UrZi1oLW46Yz09PWBjZW50ZXJgP3UrZi8yLW4vMjp1K207bGV0e25lZWRCaWRpOmwsYmFzZVJ0bDpkfT1iW3QucGFyYV07QUEoZSx0LnNlZ21lbnRzLHIseSxgdG9wYCxpLGEse2ZvbnRDb2xvcjpvLmZvbnRDb2xvcixuZWVkQmlkaTpsLGJhc2VSdGw6ZH0scykseSs9ZkEodC5tYXhGb250U2l6ZSxpLDEuMix0Lm1heEZvbnRGYW1pbHk/P3ZvaWQgMCl9fWZ1bmN0aW9uIFJBKGUpe2xldCB0PWBgO2Zvcig7ZT4wOyl7bGV0IG49KGUtMSklMjY7dD1TdHJpbmcuZnJvbUNoYXJDb2RlKDY1K24pK3QsZT1NYXRoLmZsb29yKChlLTEpLzI2KX1yZXR1cm4gdH1mdW5jdGlvbiB6QShlLHQsbixyLGksYSl7aWYodD09PWBOb0ljb25zYClyZXR1cm47bGV0IG89dHx8YDNUcmFmZmljTGlnaHRzMWAscz1wYXJzZUludChvWzBdKXx8MyxjPXM9PT01P1pqOnM9PT00P1hqOllqLGw9Y1tNYXRoLm1heCgwLE1hdGgubWluKG4sYy5sZW5ndGgtMSkpXTtpZihlLnNhdmUoKSxlLmZpbGxTdHlsZT1sLG8uaW5jbHVkZXMoYEFycm93YCkpe2xldCB0PWEvMjtlLmJlZ2luUGF0aCgpLG49PT1zLTE/KGUubW92ZVRvKHIrdCxpKSxlLmxpbmVUbyhyK2EsaSthKSxlLmxpbmVUbyhyLGkrYSkpOm49PT0wPyhlLm1vdmVUbyhyLGkpLGUubGluZVRvKHIrYSxpKSxlLmxpbmVUbyhyK3QsaSthKSk6KGUubW92ZVRvKHIsaSthKi4zKSxlLmxpbmVUbyhyK2EsaSt0KSxlLmxpbmVUbyhyLGkrYSouNykpLGUuY2xvc2VQYXRoKCksZS5maWxsKCl9ZWxzZSBvLmluY2x1ZGVzKGBGbGFnYCk/KGUuYmVnaW5QYXRoKCksZS5tb3ZlVG8ocixpKSxlLmxpbmVUbyhyK2EsaSksZS5saW5lVG8ocixpK2EpLGUuY2xvc2VQYXRoKCksZS5maWxsKCkpOihlLmJlZ2luUGF0aCgpLGUuYXJjKHIrYS8yLGkrYS8yLGEvMiwwLE1hdGguUEkqMiksZS5maWxsKCkpO2UucmVzdG9yZSgpfWZ1bmN0aW9uIEJBKGUsdCxuLHIsaSl7bGV0IGE9TWF0aC5tYXgoNixNYXRoLnJvdW5kKE1hdGgubWluKHIsaSkqLjQ1KSksbz10K3ItYS0xLHM9bitpLWEtMTtlLnNhdmUoKSxlLmZpbGxTdHlsZT1gI0QwRDBEMGAsZS5maWxsUmVjdChvLHMsYSxhKSxlLmZpbGxTdHlsZT1gIzQ0NDQ0NGA7bGV0IGM9YSouNTUsbD1vKyhhLWMpLzIsdT1zKyhhLWMqLjUpLzI7ZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhsLHUpLGUubGluZVRvKGwrYyx1KSxlLmxpbmVUbyhsK2MvMix1K2MqLjUpLGUuY2xvc2VQYXRoKCksZS5maWxsKCksZS5yZXN0b3JlKCl9ZnVuY3Rpb24gVkEoZSl7bGV0IHQ9bmV3IE1hcCxuPUtBKGB3b3Jrc2hlZXQtdGFibGUtc3R5bGUtaW5kZXhgLGBleHBhbmQtc3R5bGVkLXRhYmxlLWNvb3JkaW5hdGVzYCk7Zm9yKGxldCByIG9mIGUudGFibGVzPz9bXSl7aWYoIXIuc3R5bGVOYW1lKWNvbnRpbnVlO2xldHt0b3A6ZSxib3R0b206aSxsZWZ0OmEscmlnaHQ6b309ci5yYW5nZTtmayhyLnJhbmdlLG4pO2xldCBzPXIuYWNjZW50Q29sb3J8fGAjODA4MDgwYCxjPSEhci5pc0N1c3RvbSxsPU1hdGgubWF4KDAsci5oZWFkZXJSb3dDb3VudD8/MSksdT1NYXRoLm1heCgwLHIudG90YWxzUm93Q291bnQ/PzApLGQ9ZStsLTEsZj1pLXUrMTtmb3IobGV0IHA9ZTtwPD1pO3ArKyl7bGV0IG09bD4wJiZwPD1kLGg9dT4wJiZwPj1mLGc9IW0mJiFoP3AtZC0xOi0xLF89ci5zaG93Um93U3RyaXBlcyYmZz49MD9nJTI9PTE/ci5iYW5kMUhvcml6b250YWxEeGY6ci5iYW5kMkhvcml6b250YWxEeGY6dm9pZCAwO2ZvcihsZXQgbD1hO2w8PW87bCsrKXBrKHQsYCR7cH06JHtsfWAse2FjY2VudDpzLGlzQ3VzdG9tOmMsaXNIZWFkZXI6bSxpc1RvdGFsczpoLGlzQmFuZGVkOnIuc2hvd1Jvd1N0cmlwZXMmJmc+PTAmJmclMj09MSxpc0ZpcnN0Q29sOnIuc2hvd0ZpcnN0Q29sdW1uJiZsPT09YSxpc0xhc3RDb2w6ci5zaG93TGFzdENvbHVtbiYmbD09PW8saXNUb3BFZGdlOnA9PT1lLGlzQm90dG9tRWRnZTpwPT09aSx3aG9sZVRhYmxlRHhmOnIud2hvbGVUYWJsZUR4ZixoZWFkZXJSb3dEeGY6ci5oZWFkZXJSb3dEeGYsdG90YWxSb3dEeGY6ci50b3RhbFJvd0R4ZixmaXJzdENvbHVtbkR4ZjpyLmZpcnN0Q29sdW1uRHhmLGxhc3RDb2x1bW5EeGY6ci5sYXN0Q29sdW1uRHhmLHN0cmlwZUR4ZjpffSxuKX19cmV0dXJuIHR9ZnVuY3Rpb24gSEEoZSx0LG4scil7bGV0IGk9dD8uYm9yZGVyPy5ob3Jpem9udGFsLGE9dD8uYm9yZGVyPy50b3Asbz10Py5ib3JkZXI/LmJvdHRvbSxzPXQ/LmJvcmRlcj8ubGVmdCxjPXQ/LmJvcmRlcj8ucmlnaHQsbD1uPy5ib3JkZXI/LmJvdHRvbSx1PW4/LmJvcmRlcj8udG9wO2lmKGl8fGF8fG98fHN8fGN8fGx8fHUpe2xldCB0PXtsZWZ0Om51bGwscmlnaHQ6bnVsbCx0b3A6bnVsbCxib3R0b206bnVsbH07cmV0dXJuIGUuaXNUb3BFZGdlP3QudG9wPWE/P251bGw6aSYmKHQudG9wPWkpLGUuaXNIZWFkZXImJmw/dC5ib3R0b209bDplLmlzQm90dG9tRWRnZT90LmJvdHRvbT1vPz9udWxsOmkmJih0LmJvdHRvbT1pKSwoZS5pc0ZpcnN0Q29sfHxyPT09MCkmJih0LmxlZnQ9cz8/bnVsbCksZS5pc0xhc3RDb2wmJih0LnJpZ2h0PWM/P251bGwpLHtraW5kOmBkeGZgLGJvcmRlcjp0fX1yZXR1cm4gZS5pc0N1c3RvbT97a2luZDpgbm9uZWB9OntraW5kOmBhY2NlbnRgLGNvbG9yOmUuYWNjZW50LGxpbmVXaWR0aDplLmlzSGVhZGVyPzEuNToxLHRvcEVkZ2U6ZS5pc1RvcEVkZ2V9fWZ1bmN0aW9uIFVBKGUpe2xldCB0PW5ldyBNYXAsbj1LQShgd29ya3NoZWV0LXNwYXJrbGluZS1pbmRleGAsYGluZGV4LXNwYXJrbGluZS1jb29yZGluYXRlc2ApO2ZvcihsZXQgciBvZiBlLnNwYXJrbGluZUdyb3Vwcz8/W10pe2xldCBlPTEvMCxpPS0xLzA7aWYoci5taW5BeGlzVHlwZT09PWBncm91cGB8fHIubWF4QXhpc1R5cGU9PT1gZ3JvdXBgKXtmb3IobGV0IHQgb2Ygci5zcGFya2xpbmVzKWZvcihsZXQgbiBvZiB0LnZhbHVlcyl0eXBlb2Ygbj09YG51bWJlcmAmJihuPGUmJihlPW4pLG4+aSYmKGk9bikpOyghaXNGaW5pdGUoZSl8fCFpc0Zpbml0ZShpKSkmJihlPTAsaT0xKX1mb3IobGV0IGEgb2Ygci5zcGFya2xpbmVzKXtsZXQgbz1hLnZhbHVlcy5maWx0ZXIoZT0+dHlwZW9mIGU9PWBudW1iZXJgKSxzPW8ubGVuZ3RoP01hdGgubWluKC4uLm8pOjAsYz1vLmxlbmd0aD9NYXRoLm1heCguLi5vKToxLGw9ci5taW5BeGlzVHlwZT09PWBjdXN0b21gJiZ0eXBlb2Ygci5tYW51YWxNaW49PWBudW1iZXJgP3IubWFudWFsTWluOnIubWluQXhpc1R5cGU9PT1gZ3JvdXBgP2U6cyx1PXIubWF4QXhpc1R5cGU9PT1gY3VzdG9tYCYmdHlwZW9mIHIubWFudWFsTWF4PT1gbnVtYmVyYD9yLm1hbnVhbE1heDpyLm1heEF4aXNUeXBlPT09YGdyb3VwYD9pOmM7cGsodCxgJHthLnJvd306JHthLmNvbH1gLHtraW5kOnIua2luZCx2YWx1ZXM6YS52YWx1ZXMsbWluOmwsbWF4OnUsZGlzcGxheUVtcHR5Q2VsbHNBczpyLmRpc3BsYXlFbXB0eUNlbGxzQXM9PT1gemVyb2B8fHIuZGlzcGxheUVtcHR5Q2VsbHNBcz09PWBzcGFuYD9yLmRpc3BsYXlFbXB0eUNlbGxzQXM6YGdhcGAsZGlzcGxheVhBeGlzOnIuZGlzcGxheVhBeGlzLGxpbmVXZWlnaHQ6ci5saW5lV2VpZ2h0LG1hcmtlcnM6ci5tYXJrZXJzLGhpZ2g6ci5oaWdoLGxvdzpyLmxvdyxmaXJzdDpyLmZpcnN0LGxhc3Q6ci5sYXN0LG5lZ2F0aXZlOnIubmVnYXRpdmUsY29sb3JTZXJpZXM6ci5jb2xvclNlcmllcyxjb2xvck5lZ2F0aXZlOnIuY29sb3JOZWdhdGl2ZSxjb2xvckF4aXM6ci5jb2xvckF4aXMsY29sb3JNYXJrZXJzOnIuY29sb3JNYXJrZXJzLGNvbG9yRmlyc3Q6ci5jb2xvckZpcnN0LGNvbG9yTGFzdDpyLmNvbG9yTGFzdCxjb2xvckhpZ2g6ci5jb2xvckhpZ2gsY29sb3JMb3c6ci5jb2xvckxvd30sbil9fXJldHVybiB0fWZ1bmN0aW9uIFdBKGUpe2xldCB0PWUucmVwbGFjZShgI2AsYGApO2lmKHQubGVuZ3RoPDYpcmV0dXJuYCNGMkYyRjJgO2xldCBuPXBhcnNlSW50KHQuc2xpY2UoMCwyKSwxNikscj1wYXJzZUludCh0LnNsaWNlKDIsNCksMTYpLGk9cGFyc2VJbnQodC5zbGljZSg0LDYpLDE2KSxhPWU9Pk1hdGgucm91bmQoZSouMisyNTUqLjgpLG89ZT0+ZS50b1N0cmluZygxNikucGFkU3RhcnQoMixgMGApLnRvVXBwZXJDYXNlKCk7cmV0dXJuYCMke28oYShuKSl9JHtvKGEocikpfSR7byhhKGkpKX1gfWZ1bmN0aW9uIEdBKGUsdCxuLHIsaSxhLG8scyxjLGwsdSxkLGYscCxtLGgsZyl7aWYobTw9MHx8aDw9MClyZXR1cm47bGV0e3N0eWxlczpfLGNlbGxNYXA6dixtZXJnZUFuY2hvck1hcDp5LG1lcmdlU2tpcFNldDpiLGNmQ29udGV4dDp4LGNzOlMsZHByOkN9PXQsdz1pLmxlbmd0aCxUPWEubGVuZ3RoLEU9bmV3IFNldChzKSxEPW5ldyBTZXQobyksTz0oZSxuKT0+dC5ydGw/ZUEoZSxuLHQuY2FudmFzVyk6ZSxrPVtdLEE9LWM7Zm9yKGxldCBlPTA7ZTx3O2UrKylrLnB1c2goQSksQSs9aVtlXTtsZXQgaj1bXSxNPS1sO2ZvcihsZXQgZT0wO2U8VDtlKyspai5wdXNoKE0pLE0rPWFbZV07ZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3QoTyhmLG0pLHAsbSxoKSxlLmNsaXAoKTtsZXQgTj1bXSxQPVtdLEY9W107Zm9yKGxldCBpIG9mIHQud29ya3NoZWV0Lm1lcmdlQ2VsbHM/P1tdKXtsZXQgYT1pLnRvcCxmPWkubGVmdDtpZihFLmhhcyhhKSYmRC5oYXMoZil8fCFzLnNvbWUoZT0+ZT49aS50b3AmJmU8PWkuYm90dG9tKXx8IW8uc29tZShlPT5lPj1pLmxlZnQmJmU8PWkucmlnaHQpKWNvbnRpbnVlO2xldCBwPXQubWVyZ2VBbmNob3JNYXAuZ2V0KGAke2F9OiR7Zn1gKTtpZighcCljb250aW51ZTtsZXQgbT11LWMrdC5jb2xBeGlzLm9mZnNldE9mKGYpLXQuY29sQXhpcy5vZmZzZXRPZihyKSxoPWQtbCt0LnJvd0F4aXMub2Zmc2V0T2YoYSktdC5yb3dBeGlzLm9mZnNldE9mKG4pLHY9cC50b3RhbFcseT1wLnRvdGFsSDttPU8obSx2KTtsZXQgYj1gJHthfToke2Z9YCx3PXQuY2VsbE1hcC5nZXQoYikse2ZvbnQ6VCxmaWxsOmssYm9yZGVyOkEseGY6an09dkEoXyxiQSh0LndvcmtzaGVldCx3LGYpKSxNPWprKHcsYSxmLHgsXy5keGZzPz9bXSk7aWYoY0EoZSxNLmZpbGw/P2ssbSxoLHYseSksTS5kYXRhQmFyJiZNLmRhdGFCYXIucmF0aW8+MCl7bGV0IHQ9TWF0aC5tYXgoMCwodi00KSpNLmRhdGFCYXIucmF0aW8pO2FBKGUsTS5kYXRhQmFyLmNvbG9yLG0rMixoKzIsdCx5LTQsTS5kYXRhQmFyLmdyYWRpZW50KX1sZXQgTj1Uaih3aihBLGEsZixwLnJpZ2h0LHAuYm90dG9tLHQuY2VsbE1hcCxfKSxNLmJvcmRlcik7aWYoUC5wdXNoKCgpPT5EaihlLE4sbSxoLHYseSxDKSksIXcpY29udGludWU7bGV0IEY9TU8odyxfLE0ubnVtRm10LHQud29ya3NoZWV0LmRhdGUxOTA0KSxJPUYudGV4dDtpZighSXx8ST09PWAwYCYmdC53b3Jrc2hlZXQuc2hvd1plcm9zPT09ITEpY29udGludWU7bGV0IEw9VC5ib2xkfHwhIU0uZm9udEJvbGQsUj1ULml0YWxpY3x8ISFNLmZvbnRJdGFsaWMsej1ULnVuZGVybGluZXx8ISFNLmZvbnRVbmRlcmxpbmUsQj1ULnN0cmlrZXx8ISFNLmZvbnRTdHJpa2UsZWU9TCE9PVQuYm9sZHx8UiE9PVQuaXRhbGljfHx6IT09VC51bmRlcmxpbmV8fEIhPT1ULnN0cmlrZT97Li4uVCxib2xkOkwsaXRhbGljOlIsdW5kZXJsaW5lOnosc3RyaWtlOkJ9OlQ7ZS5mb250PXBBKGVlLFMsZyxJKTtsZXQgVj10Lmh5cGVybGlua01hcC5nZXQoYik/YCMwNTYzQzFgOk0uZm9udENvbG9yPz9GLmNvbG9yPz9ULmNvbG9yO2UuZmlsbFN0eWxlPVY/aWkoVik6YCMwMDAwMDBgO2xldCBIPXcudmFsdWUudHlwZT09PWBudW1iZXJgLFU9ai5hbGlnbkg/PyhIP2ByaWdodGA6YGxlZnRgKSxXPWouYWxpZ25WPz9gYm90dG9tYCxHPWouaW5kZW50P01hdGgucm91bmQoai5pbmRlbnQqMyp0Lm1kdyk6MCxLPTMrKFU9PT1gbGVmdGB8fCFqLmFsaWduSD9HOjApO2Uuc2F2ZSgpLGUuYmVnaW5QYXRoKCksZS5yZWN0KG0saCx2LHkpLGUuY2xpcCgpO2xldCB0ZTtVPT09YHJpZ2h0YD8odGU9bSt2LTMsZS50ZXh0QWxpZ249YHJpZ2h0YCk6VT09PWBjZW50ZXJgPyh0ZT1tK3YvMixlLnRleHRBbGlnbj1gY2VudGVyYCk6KHRlPW0rSyxlLnRleHRBbGlnbj1gbGVmdGApO2xldCBuZT13LnZhbHVlLnR5cGU9PT1gdGV4dGA/dy52YWx1ZS5ydW5zOnZvaWQgMCxyZT1uZSYmbmUubGVuZ3RoPjA7aWYoai53cmFwVGV4dCYmcmUpTEEoZSxuZSxlZSx7YWxpZ25IOlUsYWxpZ25WOlcsY3g6bSxjeTpoLGNlbGxXOnYsY2VsbEg6eSxsZWZ0UGFkOksscGFkZGluZ1g6MyxwYWRkaW5nWToyfSxTLEMse2ZvbnRDb2xvcjpNLmZvbnRDb2xvcixyZWFkaW5nT3JkZXI6ai5yZWFkaW5nT3JkZXJ9LGcpO2Vsc2UgaWYoai53cmFwVGV4dClJQShlLEksdGUsZWUse2FsaWduSDpVLGFsaWduVjpXLGN4Om0sY3k6aCxjZWxsVzp2LGNlbGxIOnksbGVmdFBhZDpLLHBhZGRpbmdYOjMscGFkZGluZ1k6Mn0sUyk7ZWxzZSBpZihyZSlGQShlLG5lLGVlLHthbGlnbkg6VSxhbGlnblY6VyxjeDptLGN5OmgsY2VsbFc6dixjZWxsSDp5LGxlZnRQYWQ6SyxwYWRkaW5nWDozLHBhZGRpbmdZOjJ9LFMsQyx7Zm9udENvbG9yOk0uZm9udENvbG9yLHJlYWRpbmdPcmRlcjpqLnJlYWRpbmdPcmRlcn0sZyk7ZWxzZXtsZXR7YmFzZWxpbmU6dCx0ZXh0WTpufT1PQSh7YWxpZ25IOlUsYWxpZ25WOlcsY3g6bSxjeTpoLGNlbGxXOnYsY2VsbEg6eSxsZWZ0UGFkOksscGFkZGluZ1g6MyxwYWRkaW5nWToyfSk7ZS50ZXh0QmFzZWxpbmU9dCxlLmZpbGxUZXh0KEksdGUsbil9ZS5yZXN0b3JlKCl9Zm9yKGxldCBuPTA7bjxUO24rKyl7bGV0IHI9c1tuXSxjPWQraltuXSxsPWFbbl07aWYoKGMrbDw9cHx8Yz49cCtoKSYmIW8uc29tZShlPT57bGV0IHQ9eS5nZXQoYCR7cn06JHtlfWApO3JldHVybiB0IT1udWxsJiZjK3QudG90YWxIPnAmJmM8cCtofSkpY29udGludWU7bGV0IFQ9bmV3IFNldCxFPW5ldyBTZXQsRD0tMSxBPWU9PntpZihEPj0wJiZlLUQ+PTIpe2ZvcihsZXQgdD1EO3Q8ZS0xO3QrKylULmFkZCh0KTtmb3IobGV0IHQ9RCsxO3Q8ZTt0KyspRS5hZGQodCl9RD0tMX07Zm9yKGxldCBlPTA7ZTw9dztlKyspe2xldCBuPSExLGk9ITE7aWYoZTx3KXtsZXQgYT1gJHtyfToke29bZV19YDtpZighYi5oYXMoYSkmJiF5LmhhcyhhKSl7bGV0IHI9di5nZXQoYSk7bj12QShfLGJBKHQud29ya3NoZWV0LHIsb1tlXSkpLnhmLmFsaWduSD09PWBjZW50ZXJDb250aW51b3VzYCxpPSEhKHImJnIudmFsdWUmJnIudmFsdWUudHlwZSE9PWBlbXB0eWApfX1uP2kmJkQ+PTAmJmU+RD8oQShlKSxEPWUpOkQ8MCYmKEQ9ZSk6QShlKX1mb3IobGV0IGE9MDthPHc7YSsrKXtsZXQgcz1vW2FdLGQ9dStrW2FdLEQ9aVthXSxBPWAke3J9OiR7c31gO2lmKGIuaGFzKEEpKWNvbnRpbnVlO2xldCBqPXkuZ2V0KEEpLE09aj9qLnRvdGFsVzpELEk9aj9qLnRvdGFsSDpsLEw9ZCtNPD1mfHxkPj1mK207aWYoYytJPD1wfHxjPj1wK2h8fEwmJiF0Lm92ZXJmbG93VGV4dEFuY2hvcnMuaGFzKEEpKWNvbnRpbnVlO2xldCBSPU8oZCxNKSx6PXYuZ2V0KEEpLHtmb250OkIsZmlsbDplZSxib3JkZXI6Vix4ZjpIfT12QShfLGJBKHQud29ya3NoZWV0LHoscykpLFU9amsoeixyLHMseCxfLmR4ZnM/P1tdKSxXPVUuZmlsbD8/ZWUsRz10LnRhYmxlU3R5bGVNYXAuZ2V0KEEpLEs9Xy5keGZzPz9bXSx0ZT1lPT5lPT1udWxsP3ZvaWQgMDpLW2VdLG5lPXRlKEc/Lndob2xlVGFibGVEeGYpLHJlPXRlKEc/LmhlYWRlclJvd0R4ZiksaWU9dGUoRz8udG90YWxSb3dEeGYpLGFlPXRlKEc/LmZpcnN0Q29sdW1uRHhmKSxvZT10ZShHPy5sYXN0Q29sdW1uRHhmKSxzZT10ZShHPy5zdHJpcGVEeGYpLGNlPUc/LmlzSGVhZGVyJiZyZT8uZmlsbD8uZmdDb2xvcj9yZTpHPy5pc1RvdGFscyYmaWU/LmZpbGw/LmZnQ29sb3I/aWU6Rz8uaXNMYXN0Q29sJiZvZT8uZmlsbD8uZmdDb2xvcj9vZTpHPy5pc0ZpcnN0Q29sJiZhZT8uZmlsbD8uZmdDb2xvcj9hZTpzZT8uZmlsbD8uZmdDb2xvcj9zZTohRz8uaXNIZWFkZXImJiFHPy5pc1RvdGFscyYmbmU/LmZpbGw/LmZnQ29sb3I/bmU6dm9pZCAwLGxlPWNBKGUsVyxSLGMsTSxJKTtpZihsZXx8KEcmJmNlPy5maWxsPy5mZ0NvbG9yPyhlLmZpbGxTdHlsZT1paShjZS5maWxsLmZnQ29sb3IpLGUuZmlsbFJlY3QoUixjLE0sSSksbGU9ITApOkcmJiFHLmlzQ3VzdG9tJiZHLmlzQmFuZGVkJiYoZS5maWxsU3R5bGU9V0EoRy5hY2NlbnQpLGUuZmlsbFJlY3QoUixjLE0sSSksbGU9ITApKSx0LmNvbW1lbnRDZWxscy5oYXMoQSkmJnVBKGUsUixjLE0sSSksVS5kYXRhQmFyJiZVLmRhdGFCYXIucmF0aW8+MCl7bGV0IHQ9TWF0aC5tYXgoMCwoTS00KSpVLmRhdGFCYXIucmF0aW8pO2FBKGUsVS5kYXRhQmFyLmNvbG9yLFIrMixjKzIsdCxJLTQsVS5kYXRhQmFyLmdyYWRpZW50KX1sZXQgdWU9dC5zcGFya2xpbmVNYXAuZ2V0KEEpO2lmKHVlJiZ6XyhlLHt4OlIseTpjLHc6TSxoOkl9LHVlKSx0LndvcmtzaGVldC5pc0NoYXJ0U2hlZXQhPT0hMCYmdC53b3Jrc2hlZXQuc2hvd0dyaWRsaW5lcyE9PSExJiYhbGUpe2lmKGUuc3Ryb2tlU3R5bGU9YCNkMGQwZDBgLGUubGluZVdpZHRoPS41LGUuYmVnaW5QYXRoKCksIVQuaGFzKGEpKXtsZXQgdD1SK00rUnYoUitNLC41LEMpO2UubW92ZVRvKHQsYyksZS5saW5lVG8odCxjK0kpfWxldCB0PWMrSStSdihjK0ksLjUsQyk7aWYoZS5tb3ZlVG8oUix0KSxlLmxpbmVUbyhSK00sdCksbj09PTApe2xldCB0PWMrUnYoYywuNSxDKTtlLm1vdmVUbyhSLHQpLGUubGluZVRvKFIrTSx0KX1pZihhPT09MCl7bGV0IHQ9UitSdihSLC41LEMpO2UubW92ZVRvKHQsYyksZS5saW5lVG8odCxjK0kpfWUuc3Ryb2tlKCl9bGV0IHE9VGooaj93aihWLHIscyxqLnJpZ2h0LGouYm90dG9tLHYsXyk6VixVLmJvcmRlcik7KFQuaGFzKGEpfHxFLmhhcyhhKSkmJihxPXsuLi5xLGxlZnQ6RS5oYXMoYSk/bnVsbDpxLmxlZnQscmlnaHQ6VC5oYXMoYSk/bnVsbDpxLnJpZ2h0fSk7bGV0IGRlPXYuZ2V0KGAke3ItMX06JHtzfWApLEo9ZGU/dkEoXyxiQSh0LndvcmtzaGVldCxkZSxzKSkuYm9yZGVyLmJvdHRvbTpudWxsO2lmKEo/LnN0eWxlJiYobj09PTB8fHEudG9wPy5zdHlsZSkmJihxPXsuLi5xLHRvcDpqaihxLnRvcCxKKX0pLCFFLmhhcyhhKSl7bGV0IGU9di5nZXQoYCR7cn06JHtzLTF9YCksbj1lP3ZBKF8sYkEodC53b3Jrc2hlZXQsZSxzLTEpKS5ib3JkZXIucmlnaHQ6bnVsbDtuPy5zdHlsZSYmKGE9PT0wfHxxLmxlZnQ/LnN0eWxlKSYmKHE9ey4uLnEsbGVmdDpqaihxLmxlZnQsbil9KX1sZXQgWT1HP0hBKEcsbmUscmUscyk6bnVsbCxmZT10LmF1dG9GaWx0ZXJDZWxscy5oYXMoQSkscGU9KCk9PntpZihZKXtpZihZLmtpbmQ9PT1gZHhmYClEaihlLFkuYm9yZGVyLFIsYyxNLEksQyk7ZWxzZSBpZihZLmtpbmQ9PT1gYWNjZW50YCl7bGV0IHQ9LjUvQztpZihlLnN0cm9rZVN0eWxlPVkuY29sb3IsZS5saW5lV2lkdGg9WS5saW5lV2lkdGgsZS5iZWdpblBhdGgoKSxlLm1vdmVUbyhSLGMrSS10KSxlLmxpbmVUbyhSK00sYytJLXQpLFkudG9wRWRnZSl7bGV0IHQ9YytSdihjLFkubGluZVdpZHRoLEMpO2UubW92ZVRvKFIsdCksZS5saW5lVG8oUitNLHQpfWUuc3Ryb2tlKCl9fWZlJiZCQShlLFIsYyxELEkpfTtpZihqKXtsZXQgdD1xO1AucHVzaCgoKT0+RGooZSx0LFIsYyxNLEksQykpLHBlKCl9ZWxzZXtsZXQgdD1xO0YucHVzaCgoKT0+e0RqKGUsdCxSLGMsTSxJLEMpLHBlKCl9KX1pZigheiljb250aW51ZTtsZXQgbWU9TU8oeixfLFUubnVtRm10LHQud29ya3NoZWV0LmRhdGUxOTA0KSxoZT1tZS50ZXh0OyFoZXx8aGU9PT1gMGAmJnQud29ya3NoZWV0LnNob3daZXJvcz09PSExfHxOLnB1c2goKCk9PntsZXQgbj1HPy5pc0hlYWRlcj9yZTpHPy5pc1RvdGFscz9pZTpHPy5pc0xhc3RDb2wmJm9lP29lOkc/LmlzRmlyc3RDb2wmJmFlP2FlOnNlfHwoRz9uZTp2b2lkIDApLGw9Rz9HLmlzQ3VzdG9tPyEhbj8uZm9udD8uYm9sZDpHLmlzSGVhZGVyfHxHLmlzVG90YWxzOiExLHU9Qi5ib2xkfHwhIVUuZm9udEJvbGR8fGwsZD1CLml0YWxpY3x8ISFVLmZvbnRJdGFsaWMsZj1CLnVuZGVybGluZXx8ISFVLmZvbnRVbmRlcmxpbmUscD1CLnN0cmlrZXx8ISFVLmZvbnRTdHJpa2UsbT11IT09Qi5ib2xkfHxkIT09Qi5pdGFsaWN8fGYhPT1CLnVuZGVybGluZXx8cCE9PUIuc3RyaWtlP3suLi5CLGJvbGQ6dSxpdGFsaWM6ZCx1bmRlcmxpbmU6ZixzdHJpa2U6cH06QjtlLmZvbnQ9cEEobSxTLGcsaGUpO2xldCBoPXQuaHlwZXJsaW5rTWFwLmdldChBKSx4PW4/LmZvbnQ/LmNvbG9yPz9udWxsLFQ9aD9gIzA1NjNDMWA6VS5mb250Q29sb3I/P21lLmNvbG9yPz94Pz9CLmNvbG9yO2UuZmlsbFN0eWxlPVQ/aWkoVCk6YCMwMDAwMDBgO2xldCBFPXoudmFsdWUudHlwZT09PWBudW1iZXJgLEQ9SC5hbGlnbkg/PyhFP2ByaWdodGA6YGxlZnRgKSxPPUguYWxpZ25WPz9gYm90dG9tYCxrPUguaW5kZW50P01hdGgucm91bmQoSC5pbmRlbnQqMyp0Lm1kdyk6MCxOPVUuaWNvblNldD9NYXRoLm1heCg4LE1hdGgucm91bmQoTWF0aC5taW4oTSxJKSouNTUpKTowLFA9Tj4wP04rNDowLEY9MysoRD09PWBsZWZ0YHx8IUguYWxpZ25IP2s6MCkrUCxMPU0sZWU9YTtpZihEPT09YGNlbnRlckNvbnRpbnVvdXNgJiYhailmb3IobGV0IGU9YSsxO2U8dztlKyspe2xldCBuPWAke3J9OiR7b1tlXX1gO2lmKGIuaGFzKG4pfHx5LmhhcyhuKSlicmVhaztsZXQgYT12LmdldChuKTtpZihhJiZhLnZhbHVlLnR5cGUhPT1gZW1wdHlgfHx2QShfLGJBKHQud29ya3NoZWV0LGEsb1tlXSkpLnhmLmFsaWduSCE9PWBjZW50ZXJDb250aW51b3VzYClicmVhaztMKz1pW2VdLGVlPWV9bGV0IFY9dC5ydGw/Ui0oTC1NKTpSLFc9RD09PWBjZW50ZXJDb250aW51b3VzYD9WOlIsSz1EPT09YGNlbnRlckNvbnRpbnVvdXNgP0w6TSx0ZT1oZS5pbmNsdWRlcyhgCmApO2lmKCFqJiYhSC53cmFwVGV4dCYmIUgudGV4dFJvdGF0aW9uJiYhRSYmIXRlKXtsZXQgbj1lLm1lYXN1cmVUZXh0KGhlKS53aWR0aCxzPUQ9PT1gY2VudGVyQ29udGludW91c2AsYz1zP24rNjpuK0YrMyxsPXM/TDpNO2lmKGM+bCl7bGV0IGU9Yy1sLG49MCx1PTA7RD09PWByaWdodGA/dT1lOkQ9PT1gY2VudGVyYHx8cz8odT1lLzIsbj1lLzIpOm49ZTtsZXQgZD10LnJ0bD8tMToxLGY9dC5ydGw/YS0xOmVlKzEscD10LnJ0bD8xOi0xLG09dC5ydGw/ZWUrMTphLTE7aWYobj4wKXtsZXQgZT1uO2ZvcihsZXQgdD1mO3Q+PTAmJnQ8dyYmZT4wO3QrPWQpe2xldCBuPWAke3J9OiR7b1t0XX1gO2lmKGIuaGFzKG4pfHx5LmhhcyhuKSlicmVhaztsZXQgYT12LmdldChuKTtpZihhJiZhLnZhbHVlLnR5cGUhPT1gZW1wdHlgKWJyZWFrO0srPWlbdF0sZS09aVt0XX19aWYodT4wKXtsZXQgZT11O2ZvcihsZXQgdD1tO3Q+PTAmJnQ8dyYmZT4wO3QrPXApe2xldCBuPWAke3J9OiR7b1t0XX1gO2lmKGIuaGFzKG4pfHx5LmhhcyhuKSlicmVhaztsZXQgYT12LmdldChuKTtpZihhJiZhLnZhbHVlLnR5cGUhPT1gZW1wdHlgKWJyZWFrO1ctPWlbdF0sSys9aVt0XSxlLT1pW3RdfX19fWxldCBjZT1oZSxsZT0wO2lmKEQ9PT1gZmlsbGAmJiFFJiZoZS5sZW5ndGg+MCl7bGV0IHQ9TWF0aC5tYXgoMSxNLTYpLG49ZS5tZWFzdXJlVGV4dChoZSkud2lkdGg7aWYobj4wJiZuPHQpe2xldCBlPU1hdGgubWF4KDEsTWF0aC5mbG9vcih0L24pKTtjZT1oZS5yZXBlYXQoZSl9fWlmKEQ9PT1gZGlzdHJpYnV0ZWRgfHxEPT09YGp1c3RpZnlgJiYhSC53cmFwVGV4dCYmIXRlKXtsZXQgdD1NYXRoLm1heCgxLE0tNiksbj1lLm1lYXN1cmVUZXh0KGNlKS53aWR0aCxyPU1hdGgubWF4KDEsWy4uLmNlXS5sZW5ndGgtMSk7bjx0JiYobGU9TWF0aC5tYXgoMCwodC1uKS9yKSl9bGV0IHVlLHE7RD09PWByaWdodGA/KHVlPVIrTS0zLHE9YHJpZ2h0YCk6RD09PWBjZW50ZXJgPyh1ZT1SK00vMixxPWBjZW50ZXJgKTpEPT09YGNlbnRlckNvbnRpbnVvdXNgPyh1ZT1WK0wvMixxPWBjZW50ZXJgKTpEPT09YGRpc3RyaWJ1dGVkYHx8RD09PWBqdXN0aWZ5YCYmIUgud3JhcFRleHQmJiF0ZT8odWU9UiszLHE9YGxlZnRgKToodWU9UitGLHE9YGxlZnRgKTtsZXQgZGU9SC50ZXh0Um90YXRpb24/PzAsSj1kZT09PTI1NSxZPWRlPjAmJmRlIT09MjU1O2lmKFUuaWNvblNldCYmTj4wJiYoZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3QoUixjLE0sSSksZS5jbGlwKCksekEoZSxVLmljb25TZXQubmFtZSxVLmljb25TZXQuaW5kZXgsUisyLGMrKEktTikvMixOKSxlLnJlc3RvcmUoKSksZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3QoVyxjLEssSSksZS5jbGlwKCksSil7bGV0IHQ9ZkEoQi5zaXplLFMsMS4xKSxuPVsuLi5oZV0ubGVuZ3RoKnQscj1PPT09YHRvcGA/YysyOk89PT1gY2VudGVyYD9jKyhJLW4pLzI6YytJLW4tMjtlLnRleHRBbGlnbj1gY2VudGVyYCxlLnRleHRCYXNlbGluZT1gdG9wYDtmb3IobGV0IG4gb2YgaGUpe2xldCBpPW4uY29kZVBvaW50QXQoMCk/PzAsYT1LVChpKSYmbEUoZSxpKTtWayhlLG4sUitNLzIscix0LGEpLHIrPXR9ZS5yZXN0b3JlKCk7cmV0dXJufWlmKFkpe2xldCB0PWRlPD05MD8tKGRlKk1hdGguUEkvMTgwKTooZGUtOTApKk1hdGguUEkvMTgwO2UudHJhbnNsYXRlKFIrTS8yLGMrSS8yKSxlLnJvdGF0ZSh0KSxlLnRleHRBbGlnbj1gY2VudGVyYCxlLnRleHRCYXNlbGluZT1gbWlkZGxlYCxlLmZpbGxUZXh0KGhlLDAsMCksZS5yZXN0b3JlKCk7cmV0dXJufWlmKEguc2hyaW5rVG9GaXQpe2xldCB0PWUubWVhc3VyZVRleHQoaGUpLndpZHRoLG49TS1GLTM7aWYodD5uJiZ0PjApe2xldCByPW4vdCxpPUQ9PT1gcmlnaHRgP1IrTS0zOkQ9PT1gY2VudGVyYD9SK00vMjpSK0Y7ZS50cmFuc2Zvcm0ociwwLDAsMSxpKigxLXIpLDApfX1pZihlLnRleHRBbGlnbj1xLGxlPjApdHJ5e2UubGV0dGVyU3BhY2luZz1gJHtsZX1weGB9Y2F0Y2h7fXRyeXtlLmRpcmVjdGlvbj1OayhILnJlYWRpbmdPcmRlcixoZSk/YHJ0bGA6YGx0cmB9Y2F0Y2h7fWxldCBmZT16LnZhbHVlLnR5cGU9PT1gdGV4dGA/ei52YWx1ZS5ydW5zOnZvaWQgMCxwZT1mZSYmZmUubGVuZ3RoPjA7aWYoSC53cmFwVGV4dCYmcGUpTEEoZSxmZSxtLHthbGlnbkg6RCxhbGlnblY6TyxjeDpSLGN5OmMsY2VsbFc6TSxjZWxsSDpJLGxlZnRQYWQ6RixwYWRkaW5nWDozLHBhZGRpbmdZOjJ9LFMsQyx7Zm9udENvbG9yOlUuZm9udENvbG9yLHJlYWRpbmdPcmRlcjpILnJlYWRpbmdPcmRlcn0sZyk7ZWxzZSBpZihILndyYXBUZXh0KUlBKGUsaGUsdWUsbSx7YWxpZ25IOkQsYWxpZ25WOk8sY3g6UixjeTpjLGNlbGxXOk0sY2VsbEg6SSxsZWZ0UGFkOkYscGFkZGluZ1g6MyxwYWRkaW5nWToyfSxTKTtlbHNlIGlmKHBlKUZBKGUsZmUsbSx7YWxpZ25IOkQsYWxpZ25WOk8sY3g6UixjeTpjLGNlbGxXOk0sY2VsbEg6SSxsZWZ0UGFkOkYscGFkZGluZ1g6MyxwYWRkaW5nWToyfSxTLEMse2ZvbnRDb2xvcjpVLmZvbnRDb2xvcixyZWFkaW5nT3JkZXI6SC5yZWFkaW5nT3JkZXJ9LGcpO2Vsc2V7bGV0IHQ9bS52ZXJ0QWxpZ24sbj1mQShCLnNpemUsUykscj0wO3Q9PT1gc3VwZXJzY3JpcHRgP3I9LU1hdGgucm91bmQobiouMzUpOnQ9PT1gc3Vic2NyaXB0YCYmKHI9TWF0aC5yb3VuZChuKi4xKSk7bGV0IGk9dD97Li4ubSxzaXplOm0uc2l6ZSouNjV9Om07dCYmKGUuZm9udD1wQShpLFMsZyxoZSkpO2xldCBhPW51bGwsbz0oKT0+YT8/PWUubWVhc3VyZVRleHQoaGUpLHM9KCk9PntsZXQgZT1NYXRoLm1pbihvKCkud2lkdGgsSy1GLTMpO3JldHVybnt4OkQ9PT1gcmlnaHRgP1IrTS0zLWU6RD09PWBjZW50ZXJgP1IrTS8yLWUvMjpSK0Ysd2lkdGg6ZX19LGw9ZkEoaS5zaXplLFMpO2lmKG0udW5kZXJsaW5lfHxoKXtsZXR7eDp0LHdpZHRoOm59PXMoKSxpPShPPT09YHRvcGA/YysyK2wrMTpPPT09YGNlbnRlcmA/YytJLzIrTWF0aC5yb3VuZChsKi41NSk6YytJLTIrMSkrcixhPWg/YCMwNTYzQzFgOlQ/aWkoVCk6YCMwMDAwMDBgLG89bS51bmRlcmxpbmVTdHlsZT09PWBkb3VibGVgfHxtLnVuZGVybGluZVN0eWxlPT09YGRvdWJsZUFjY291bnRpbmdgO2dBKGUsdCx0K24saSxhLG8sQyl9aWYobS5zdHJpa2Upe2xldHt4OnQsd2lkdGg6bn09cygpLGk9KE89PT1gdG9wYD9jKzIrTWF0aC5yb3VuZChsKi41KTpPPT09YGNlbnRlcmA/YytJLzI6YytJLTItTWF0aC5yb3VuZChsKi4zNSkpK3IsYT1pK1J2KGksLjUsQyk7ZS5zYXZlKCksZS5zdHJva2VTdHlsZT1UP2lpKFQpOmAjMDAwMDAwYCxlLmxpbmVXaWR0aD0uNSxlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHQsYSksZS5saW5lVG8odCtuLGEpLGUuc3Ryb2tlKCksZS5yZXN0b3JlKCl9aWYoaGUuaW5jbHVkZXMoYApgKSl7bGV0IHQ9aGUuc3BsaXQoYApgKSxuPWZBKEIuc2l6ZSxTLDEuMixCLm5hbWU/P3ZvaWQgMCksaT10Lmxlbmd0aCpuLGE7Tz09PWB0b3BgPyhhPWMrMixlLnRleHRCYXNlbGluZT1gdG9wYCk6Tz09PWBjZW50ZXJgPyhhPWMrKEktaSkvMixlLnRleHRCYXNlbGluZT1gdG9wYCk6KGE9YytJLWktMixlLnRleHRCYXNlbGluZT1gdG9wYCk7Zm9yKGxldCBpPTA7aTx0Lmxlbmd0aDtpKyspZS5maWxsVGV4dCh0W2ldLHVlLGEraSpuK3IpfWVsc2V7bGV0e2Jhc2VsaW5lOnQsdGV4dFk6bn09T0Eoe2FsaWduSDpELGFsaWduVjpPLGN4OlIsY3k6YyxjZWxsVzpNLGNlbGxIOkksbGVmdFBhZDpGLHBhZGRpbmdYOjMscGFkZGluZ1k6Mn0pO2UudGV4dEJhc2VsaW5lPXQsZS5maWxsVGV4dChjZSx1ZSxuK3IpfX1sZXQgZ2U9ei52YWx1ZS50eXBlPT09YHRleHRgP3oudmFsdWUucGhvbmV0aWNSdW5zOnZvaWQgMDtpZih6LnNob3dQaG9uZXRpYyYmZ2UmJmdlLmxlbmd0aD4wJiYhaGUuaW5jbHVkZXMoYApgKSl7bGV0IHQ9cEEobSxTLGcsaGUpLG49aEEoZSxoZSx0KSxyO3I9RD09PWByaWdodGA/UitNLTMtbjpEPT09YGNlbnRlcmA/UitNLzItbi8yOlIrRjtsZXQgaT1UP2lpKFQpOmAjMDAwMDAwYDttQShlLGdlLHoudmFsdWUudHlwZT09PWB0ZXh0YD96LnZhbHVlLnBob25ldGljUHI6dm9pZCAwLGhlLHQsXyxyLGMsUyxpLGcpfWUucmVzdG9yZSgpLGhlJiZ0Lm9uVGV4dFJ1biYmdC5vblRleHRSdW4oe3NoZWV0TmFtZTp0LndvcmtzaGVldC5uYW1lLGNlbGxSZWY6emsocixzKSx0ZXh0OmhlLHg6Uix5OmMsd2lkdGg6TSxoZWlnaHQ6SSxyb3c6cixjb2w6c30pfSl9fWZvcihsZXQgZSBvZiBGKWUoKTtmb3IobGV0IGUgb2YgUCllKCk7Zm9yKGxldCBlIG9mIE4pZSgpO2UucmVzdG9yZSgpfWZ1bmN0aW9uIEtBKGUsdCl7cmV0dXJue3Jlc291cmNlOmUsb3BlcmF0aW9uOnR9fWZ1bmN0aW9uIHFBKGUpe2xldCB0PVFqLmdldChlKTtpZih0KXJldHVybiB0O2xldCBuPUtBKGB3b3Jrc2hlZXQtY2VsbC1pbmRleGAsYGluZGV4LXdvcmtzaGVldC1jZWxsc2ApLHI9bWsoZS5yb3dzLG4pLGk9bmV3IE1hcDtmb3IobGV0IHQgb2YgZS5yb3dzKXtsZXQgZT10LmNlbGxzLmZpbHRlcihlPT5lLnZhbHVlLnR5cGUhPT1gZW1wdHlgKS5tYXAoZT0+ZS5jb2wpLnNvcnQoKGUsdCk9PmUtdCk7ZS5sZW5ndGg+MCYmaS5zZXQodC5pbmRleCxlKX1sZXQgYT1uZXcgU2V0LG89bmV3IFNldCxzPUtBKGB3b3Jrc2hlZXQtbWVyZ2UtYW5jaG9yLWluZGV4YCxgaW5kZXgtbWVyZ2UtYW5jaG9yLWNvb3JkaW5hdGVzYCksYz1LQShgd29ya3NoZWV0LW1lcmdlLXNraXAtaW5kZXhgLGBleHBhbmQtbWVyZ2VkLWNlbGwtY29vcmRpbmF0ZXNgKTtmb3IobGV0IHQgb2YgZS5tZXJnZUNlbGxzPz9bXSl7aGsobyxgJHt0LnRvcH06JHt0LmxlZnR9YCxzKSxmayh0LGMsMSk7Zm9yKGxldCBlPXQudG9wO2U8PXQuYm90dG9tO2UrKylmb3IobGV0IG49dC5sZWZ0O248PXQucmlnaHQ7bisrKWU9PT10LnRvcCYmbj09PXQubGVmdHx8aGsoYSxgJHtlfToke259YCxjKX1sZXQgbD1uZXcgU2V0O2lmKGUuYXV0b0ZpbHRlcil7bGV0IHQ9ZS5hdXRvRmlsdGVyLG49S0EoYHdvcmtzaGVldC1hdXRvLWZpbHRlci1pbmRleGAsYGV4cGFuZC1hdXRvLWZpbHRlci1jb29yZGluYXRlc2ApO2ZrKHt0b3A6dC50b3AsYm90dG9tOnQudG9wLGxlZnQ6dC5sZWZ0LHJpZ2h0OnQucmlnaHR9LG4pO2ZvcihsZXQgZT10LmxlZnQ7ZTw9dC5yaWdodDtlKyspaGsobCxgJHt0LnRvcH06JHtlfWAsbil9bGV0IHU9bmV3IE1hcCxkPUtBKGB3b3Jrc2hlZXQtaHlwZXJsaW5rLWluZGV4YCxgaW5kZXgtaHlwZXJsaW5rLWNvb3JkaW5hdGVzYCk7Zm9yKGxldCB0IG9mIGUuaHlwZXJsaW5rcz8/W10pdC51cmwmJnBrKHUsYCR7dC5yb3d9OiR7dC5jb2x9YCx0LnVybCxkKTtsZXQgZj1uZXcgU2V0LHA9S0EoYHdvcmtzaGVldC1jb21tZW50LWluZGV4YCxgaW5kZXgtY29tbWVudC1jb29yZGluYXRlc2ApO2ZvcihsZXQgdCBvZiBlLmNvbW1lbnRSZWZzPz9bXSl7bGV0IGU9SmoodCk7ZSYmaGsoZixgJHtlLnJvd306JHtlLmNvbH1gLHApfWxldCBtPXtjZWxsTWFwOnIsbm9uRW1wdHlDb2xzQnlSb3c6aSxjZkNvbnRleHQ6Q2soZSxyKSxtZXJnZUFuY2hvclNldDpvLG1lcmdlU2tpcFNldDphLGF1dG9GaWx0ZXJDZWxsczpsLGh5cGVybGlua01hcDp1LGNvbW1lbnRDZWxsczpmLHRhYmxlU3R5bGVNYXA6VkEoZSksc3BhcmtsaW5lTWFwOlVBKGUpfTtyZXR1cm4gUWouc2V0KGUsbSksbX1mdW5jdGlvbiBKQShlLHQsbixyKXtsZXQgaT1yLmR4ZnM/P1tdLGE9bj9uLmlzSGVhZGVyP2lbbi5oZWFkZXJSb3dEeGY/Py0xXTpuLmlzVG90YWxzP2lbbi50b3RhbFJvd0R4Zj8/LTFdOm4uaXNMYXN0Q29sJiZuLmxhc3RDb2x1bW5EeGYhPW51bGw/aVtuLmxhc3RDb2x1bW5EeGZdOm4uaXNGaXJzdENvbCYmbi5maXJzdENvbHVtbkR4ZiE9bnVsbD9pW24uZmlyc3RDb2x1bW5EeGZdOm4uc3RyaXBlRHhmPT1udWxsP2lbbi53aG9sZVRhYmxlRHhmPz8tMV06aVtuLnN0cmlwZUR4Zl06dm9pZCAwLG89bj9uLmlzQ3VzdG9tPyEhYT8uZm9udD8uYm9sZDpuLmlzSGVhZGVyfHxuLmlzVG90YWxzOiExLHM9ZS5ib2xkfHwhIXQuZm9udEJvbGR8fG8sYz1lLml0YWxpY3x8ISF0LmZvbnRJdGFsaWM7cmV0dXJuIHM9PT1lLmJvbGQmJmM9PT1lLml0YWxpYz9lOnsuLi5lLGJvbGQ6cyxpdGFsaWM6Y319ZnVuY3Rpb24gWUEoZSx0LG4pe2xldCByPVtbXV07Zm9yKGxldCB0IG9mIGUpe2xldCBlPXQudGV4dC5zcGxpdChgCmApO2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bisrKW4+MCYmci5wdXNoKFtdKSxlW25dIT09YGAmJnJbci5sZW5ndGgtMV0ucHVzaCh7Li4udCx0ZXh0OmVbbl19KX1sZXQgaT10LnNpemUsYT10Lm5hbWU7cmV0dXJuIHIubWFwKGU9PntpZihlLmxlbmd0aD09PTApcmV0dXJue3J1bnM6ZSxoZWlnaHRQeDpmQShpfHxXaixuLDEuMixhPz92b2lkIDApfTtsZXQgcj0wLG89bnVsbDtmb3IobGV0IG4gb2YgZSl7bGV0IGU9X0EodCxuKTtlLnNpemU+ciYmKHI9ZS5zaXplLG89ZS5uYW1lKSxpPWUuc2l6ZSxhPWUubmFtZX1yZXR1cm57cnVuczplLGhlaWdodFB4OmZBKHIsbiwxLjIsbz8/dm9pZCAwKX19KX1mdW5jdGlvbiBYQShlLHQsbixyLGksYSxvLHMsYyxsKXtsZXQgdT1pLmFsaWduSD8/KHQudmFsdWUudHlwZT09PWBudW1iZXJgP2ByaWdodGA6YGxlZnRgKSxkPWkuaW5kZW50P01hdGgucm91bmQoaS5pbmRlbnQqMypvKTowLGY9cz9NYXRoLm1heCg4LE1hdGgucm91bmQoTWF0aC5taW4oYSxjKSouNTUpKTowLHA9Zj4wP2YrNDowLG09MysodT09PWBsZWZ0YHx8IWkuYWxpZ25IP2Q6MCkrcCxoPU1hdGgubWF4KDEsYS1tLTMpLGc9dC52YWx1ZS50eXBlPT09YHRleHRgP3QudmFsdWUucnVuczp2b2lkIDAsXz0hIWc/Lmxlbmd0aCx2PWkudGV4dFJvdGF0aW9uPz8wO2lmKGUuZm9udD1wQShyLDEsbCxuKSx2PT09MjU1KXJldHVyblsuLi5uXS5sZW5ndGgqZkEoci5zaXplLDEsMS4xKSs0O2lmKHY+MCl7bGV0IHQ9djw9OTA/dipNYXRoLlBJLzE4MDoodi05MCkqTWF0aC5QSS8xODAsaT1mQShyLnNpemUsMSwxLjIsci5uYW1lPz92b2lkIDApLGE9ZS5tZWFzdXJlVGV4dChuLnJlcGxhY2UoL1xuL2csYCBgKSkud2lkdGg7cmV0dXJuIE1hdGguYWJzKE1hdGguc2luKHQpKSphK01hdGguYWJzKE1hdGguY29zKHQpKSppKzR9bGV0IHk7aWYoaS53cmFwVGV4dCYmXyl5PUVBKGUsZyxyLDEsaCxsKS5tYXAoZT0+ZkEoZS5tYXhGb250U2l6ZSwxLDEuMixlLm1heEZvbnRGYW1pbHk/P3ZvaWQgMCkpO2Vsc2UgaWYoaS53cmFwVGV4dCl7ZS5mb250PXBBKHIsMSxsLG4pO2xldCB0PWZBKHIuc2l6ZSwxLDEuMixyLm5hbWU/P3ZvaWQgMCk7eT14QShlLG4saCkubWFwKCgpPT50KX1lbHNlIGlmKF8peT1ZQShnLHIsMSkubWFwKGU9PmUuaGVpZ2h0UHgpO2Vsc2V7bGV0IGU9TWF0aC5tYXgoMSxuLnNwbGl0KGAKYCkubGVuZ3RoKSx0PWZBKHIuc2l6ZSwxLDEuMixyLm5hbWU/P3ZvaWQgMCk7eT1BcnJheS5mcm9tKHtsZW5ndGg6ZX0sKCk9PnQpfXJldHVybiB5LnJlZHVjZSgoZSx0KT0+ZSt0LDApKyh5Lmxlbmd0aD4xPzQ6Mil9ZnVuY3Rpb24gWkEoZSx0LG4scil7aWYobi53cmFwVGV4dHx8KG4udGV4dFJvdGF0aW9uPz8wKT4wKXJldHVybiEwO2lmKGUudmFsdWUudHlwZT09PWB0ZXh0YCl7aWYoZS52YWx1ZS50ZXh0LmluY2x1ZGVzKGAKYCkpcmV0dXJuITA7Zm9yKGxldCBuIG9mIGUudmFsdWUucnVucz8/W10pe2xldCBlPV9BKHQsbik7aWYoZkEoZS5zaXplLDEsMS4yLGUubmFtZT8/dm9pZCAwKT5yKXJldHVybiEwfX1yZXR1cm4gZkEodC5zaXplLDEsMS4yLHQubmFtZT8/dm9pZCAwKT5yfWZ1bmN0aW9uIFFBKGUsdCxuLHIpe2lmKCRqLmhhcyh0KXx8dC5pc0NoYXJ0U2hlZXQpcmV0dXJuITE7aWYodC5kZWZhdWx0Um93SGVpZ2h0Q3VzdG9tPT09ITApcmV0dXJuICRqLnNldCh0LHtkZXJpdmVkOm5ldyBNYXB9KSwhMTtsZXQgaT1pQSh0KSxhPU9EKHQuZGVmYXVsdFJvd0hlaWdodCksbz1mQSh0LmRlZmF1bHRGb250U2l6ZT8/V2osMSwxLjIsdC5kZWZhdWx0Rm9udEZhbWlseSkse2NmQ29udGV4dDpzLG1lcmdlQW5jaG9yU2V0OmMsbWVyZ2VTa2lwU2V0OmwsdGFibGVTdHlsZU1hcDp1fT1xQSh0KSxkPW5ldyBNYXAsZj0hMTtlLnNhdmUoKTt0cnl7Zm9yKGxldCBwIG9mIHQucm93cyl7aWYocC5oaWRkZW58fHAuY3VzdG9tSGVpZ2h0PT09ITB8fHAuaGVpZ2h0IT09bnVsbHx8T2JqZWN0Lmhhc093bih0LnJvd0hlaWdodHMscC5pbmRleCkpY29udGludWU7bGV0IG09YSxoPVtdO2ZvcihsZXQgYSBvZiBwLmNlbGxzKXtsZXQgZD1gJHtwLmluZGV4fToke2EuY29sfWA7aWYoYS52YWx1ZS50eXBlPT09YGVtcHR5YHx8Yy5oYXMoZCl8fGwuaGFzKGQpKWNvbnRpbnVlO2xldHtmb250OmYseGY6Z309dkEobixhLnN0eWxlSW5kZXg/PzApO2lmKCFaQShhLGYsZyxvKSljb250aW51ZTtsZXQgXz1qayhhLHAuaW5kZXgsYS5jb2wscyxuLmR4ZnM/P1tdKSx2PUpBKGYsXyx1LmdldChkKSxuKSx5PU1PKGEsbixfLm51bUZtdCx0LmRhdGUxOTA0KS50ZXh0O2lmKCF5fHx5PT09YDBgJiZ0LnNob3daZXJvcz09PSExKWNvbnRpbnVlO2xldCBiPWkuY29sLnNpemVPZihhLmNvbCk7bT1NYXRoLm1heChtLFhBKGUsYSx5LHYsZyxiLGkubWF4aW11bURpZ2l0V2lkdGgsXy5pY29uU2V0LE1hdGguY2VpbChtKSxyKSksXy5pY29uU2V0JiZoLnB1c2goe2NlbGw6YSx0ZXh0OnksZm9udDp2LHhmOmcsY2VsbFdpZHRoUHg6YixpY29uU2V0Ol8uaWNvblNldH0pfWxldCBnPWgubGVuZ3RoPT09MDtmb3IobGV0IHQ9MDshZyYmdDwzMjt0Kyspe2xldCB0PU1hdGguY2VpbChtKSxuPW07Zm9yKGxldCBhIG9mIGgpbj1NYXRoLm1heChuLFhBKGUsYS5jZWxsLGEudGV4dCxhLmZvbnQsYS54ZixhLmNlbGxXaWR0aFB4LGkubWF4aW11bURpZ2l0V2lkdGgsYS5pY29uU2V0LHQscikpO209bixnPU1hdGguY2VpbChtKT09PXR9aWYoIWcpZm9yKGxldCB0IG9mIGgpbT1NYXRoLm1heChtLFhBKGUsdC5jZWxsLHQudGV4dCx0LmZvbnQsdC54Zix0LmNlbGxXaWR0aFB4LGkubWF4aW11bURpZ2l0V2lkdGgsdC5pY29uU2V0LHQuY2VsbFdpZHRoUHgscikpO2xldCBfPU1hdGguY2VpbChtKTtpZihfPmEpe2xldCBlPWtEKF8pO3Qucm93SGVpZ2h0c1twLmluZGV4XT1lLGQuc2V0KHAuaW5kZXgsZSksZj0hMH19fWZpbmFsbHl7ZS5yZXN0b3JlKCl9cmV0dXJuICRqLnNldCh0LHtkZXJpdmVkOmR9KSxmJiZGRC5pbnZhbGlkYXRlKHQpLGZ9ZnVuY3Rpb24gJEEoZSl7cmV0dXJuICRqLmhhcyhlKX1mdW5jdGlvbiBlaihlKXtyZXR1cm4gJGouZ2V0KGUpPy5kZXJpdmVkPz9uZXcgTWFwfWZ1bmN0aW9uIHRqKGUpeyRqLmhhcyhlKXx8JGouc2V0KGUse2Rlcml2ZWQ6bmV3IE1hcH0pfWZ1bmN0aW9uIG5qKGUsdD1bXSl7bGV0IG49JGouZ2V0KGUpO2lmKCFuKXJldHVybjtsZXQgcj1uZXcgU2V0KHQpLGk9ITE7Zm9yKGxldFt0LGFdb2Ygbi5kZXJpdmVkKXIuaGFzKHQpfHxlLnJvd0hlaWdodHNbdF09PT1hJiYoZGVsZXRlIGUucm93SGVpZ2h0c1t0XSxpPSEwKTskai5kZWxldGUoZSksaSYmRkQuaW52YWxpZGF0ZShlKX1mdW5jdGlvbiByaihlLHQpe2xldCBuPTAscj1lLmxlbmd0aDtmb3IoO248cjspe2xldCBpPW4rcj4+MTtlW2ldPHQ/bj1pKzE6cj1pfXJldHVybiBuPjA/ZVtuLTFdOnZvaWQgMH1mdW5jdGlvbiBpaihlLHQpe2xldCBuPTAscj1lLmxlbmd0aDtmb3IoO248cjspe2xldCBpPW4rcj4+MTtlW2ldPD10P249aSsxOnI9aX1yZXR1cm4gbjxlLmxlbmd0aD9lW25dOnZvaWQgMH1mdW5jdGlvbiBhaihlLHQsbixyKXtyZXR1cm4oZS5tZXJnZUNlbGxzPz9bXSkuc29tZShlPT50Pj1lLnRvcCYmdDw9ZS5ib3R0b20mJmUucmlnaHQ+PW4mJmUubGVmdDw9cil9ZnVuY3Rpb24gb2ooZSx0LG4scixpLGEsbyxzLGMsbCx1LGQsZixwLG0saCxnLF8pe2xldCB2PWQseT1mLGI9bmV3IFNldCx4PShpLHUsZCxmKT0+e2xldCBwPWAke2l9OiR7dX1gLHY9ci5nZXQocCk7aWYoIXZ8fHYudmFsdWUudHlwZT09PWBlbXB0eWB8fHMuaGFzKHApKXJldHVybiExO2xldHtmb250OnkseGY6Yn09dkEobix2LnN0eWxlSW5kZXg/PzApLHg9amsodixpLHUsYSxuLmR4ZnM/P1tdKSxTPU1PKHYsbix4Lm51bUZtdCx0LmRhdGUxOTA0KS50ZXh0O2lmKCFTfHxTPT09YDBgJiZ0LnNob3daZXJvcz09PSExfHx2LnZhbHVlLnR5cGU9PT1gbnVtYmVyYHx8Yi53cmFwVGV4dHx8Yi50ZXh0Um90YXRpb258fFMuaW5jbHVkZXMoYApgKSlyZXR1cm4hMTtsZXQgQz1vLmdldChwKSx3PUM/LmlzSGVhZGVyP0MuaGVhZGVyUm93RHhmOkM/LmlzVG90YWxzP0MudG90YWxSb3dEeGY6Qz8uaXNMYXN0Q29sJiZDLmxhc3RDb2x1bW5EeGYhPW51bGw/Qy5sYXN0Q29sdW1uRHhmOkM/LmlzRmlyc3RDb2wmJkMuZmlyc3RDb2x1bW5EeGYhPW51bGw/Qy5maXJzdENvbHVtbkR4ZjpDPy5zdHJpcGVEeGY/P0M/Lndob2xlVGFibGVEeGYsVD13PT1udWxsP3ZvaWQgMDpuLmR4ZnM/Llt3XSxFPSEhQyYmIUMuaXNDdXN0b20mJihDLmlzSGVhZGVyfHxDLmlzVG90YWxzKSxEPXkuYm9sZHx8ISF4LmZvbnRCb2xkfHxFfHwhIVQ/LmZvbnQ/LmJvbGQsTz15Lml0YWxpY3x8ISF4LmZvbnRJdGFsaWM7ZS5mb250PXBBKEQhPT15LmJvbGR8fE8hPT15Lml0YWxpYz97Li4ueSxib2xkOkQsaXRhbGljOk99OnksbSxfLFMpO2xldCBrPWIuYWxpZ25IPz9gbGVmdGAsQT1iLmluZGVudD9NYXRoLnJvdW5kKGIuaW5kZW50KjMqaCk6MCxqPWMuc2l6ZU9mKHUpLE09bC5zaXplT2YoaSksTj14Lmljb25TZXQ/TWF0aC5tYXgoOCxNYXRoLnJvdW5kKE1hdGgubWluKGosTSkqLjU1KSk6MCxQPU4+MD9OKzQ6MCxGPTMrKGs9PT1gbGVmdGB8fCFiLmFsaWduSD9BOjApK1AsST1lLm1lYXN1cmVUZXh0KFMpLndpZHRoK0YrMyxMPU1hdGgubWF4KDAsSS1qKTtyZXR1cm4gTDw9MD8hMTooaz09PWBjZW50ZXJgfHxrPT09YGNlbnRlckNvbnRpbnVvdXNgP0wvMjooKGc/ZD09PWBoaWdoZXJgP2BsZWZ0YDpgcmlnaHRgOmQ9PT1gaGlnaGVyYD9gcmlnaHRgOmBsZWZ0YCk9PWBsZWZ0YD9rPT09YHJpZ2h0YDprIT09YHJpZ2h0YCk/TDowKT5mfTtmb3IobGV0IGUgb2YgdSl7bGV0IG49aS5nZXQoZSk7aWYoIW4pY29udGludWU7bGV0IGE9cmoobixkKSxvPXIuZ2V0KGAke2V9OiR7ZH1gKTthIT1udWxsJiZhPj1wJiYoIW98fG8udmFsdWUudHlwZT09PWBlbXB0eWApJiYhYWoodCxlLGErMSxkKSYmeChlLGEsYGhpZ2hlcmAsYy5vZmZzZXRPZihkKS1jLm9mZnNldE9mKGErMSkpJiYodj1NYXRoLm1pbih2LGEpLGIuYWRkKGAke2V9OiR7YX1gKSk7bGV0IHM9aWoobixmKSxsPXIuZ2V0KGAke2V9OiR7Zn1gKTtzIT1udWxsJiZzPD0xNjM4NCYmKCFsfHxsLnZhbHVlLnR5cGU9PT1gZW1wdHlgKSYmIWFqKHQsZSxmLHMtMSkmJngoZSxzLGBsb3dlcmAsYy5vZmZzZXRPZihzKS1jLm9mZnNldE9mKGYrMSkpJiYoeT1NYXRoLm1heCh5LHMpLGIuYWRkKGAke2V9OiR7c31gKSl9cmV0dXJue3N0YXJ0Q29sOnYsZW5kQ29sOnksYW5jaG9yS2V5czpifX1mdW5jdGlvbiBzaihlLHQpe1FqLnNldCh0LHFBKGUpKX1mdW5jdGlvbiBjaihlLHQsbixyLGk9e30sYSl7bGV0IG89aS5kcHI/PzEscz1pLmNlbGxTY2FsZT8/MSxjPXQuaXNDaGFydFNoZWV0PT09ITAsbD1pQSh0KSx1PWwubWF4aW11bURpZ2l0V2lkdGgsZD1lLmNhbnZhcy53aWR0aC9vLGY9ZS5jYW52YXMuaGVpZ2h0L287ZS5jbGVhclJlY3QoMCwwLGQsZiksZS5maWxsU3R5bGU9YCNmZmZmZmZgLGUuZmlsbFJlY3QoMCwwLGQsZik7bGV0IHA9ZT0+TWF0aC5yb3VuZChlKnMpLG09Yz8wOnAoNTApLGg9Yz8wOnAoMjIpLHtyb3c6Zyxjb2w6Xyxyb3dzOnYsY29sczp5fT1yLGI9KGkuc2Nyb2xsT2Zmc2V0WD8/MCkqcyx4PShpLnNjcm9sbE9mZnNldFk/PzApKnMse2NvbDpTLHJvdzpDfT1sLmF4ZXNBdFNjYWxlKHMpLHc9Uy5iYW5kc1RvQ292ZXIoMSxjPzA6aS5mcmVlemVDb2xzPz8wLE1hdGgubWF4KDAsZC1tKSksVD1DLmJhbmRzVG9Db3ZlcigxLGM/MDppLmZyZWV6ZVJvd3M/PzAsTWF0aC5tYXgoMCxmLWgpKSxFPVQuYXQoLTEpPy5pbmRleD8/MCxEPXcuYXQoLTEpPy5pbmRleD8/MCxPPXcubWFwKCh7aW5kZXg6ZX0pPT5lKSxrPVQubWFwKCh7aW5kZXg6ZX0pPT5lKSxBPXcubWFwKCh7c2l6ZTplfSk9PmUpLGo9VC5tYXAoKHtzaXplOmV9KT0+ZSksTT1BLnJlZHVjZSgoZSx0KT0+ZSt0LDApLE49ai5yZWR1Y2UoKGUsdCk9PmUrdCwwKSxQPVMuYmFuZHNUb0NvdmVyKF8sTWF0aC5taW4oMTYzODQsXyt5LTEpKSxGPUMuYmFuZHNUb0NvdmVyKGcsTWF0aC5taW4oMTA0ODU3NixnK3YtMSkpLEk9UC5tYXAoKHtpbmRleDplfSk9PmUpLEw9Ri5tYXAoKHtpbmRleDplfSk9PmUpLFI9UC5tYXAoKHtzaXplOmV9KT0+ZSksej1GLm1hcCgoe3NpemU6ZX0pPT5lKSx7Y2VsbE1hcDpCLGNmQ29udGV4dDplZSxtZXJnZVNraXBTZXQ6VixhdXRvRmlsdGVyQ2VsbHM6SCxoeXBlcmxpbmtNYXA6VSxjb21tZW50Q2VsbHM6Vyx0YWJsZVN0eWxlTWFwOkcsc3BhcmtsaW5lTWFwOkssbm9uRW1wdHlDb2xzQnlSb3c6dGV9PXFBKHQpLG5lPW5ldyBNYXAscmU9S0EoYHdvcmtzaGVldC1tZXJnZS1hbmNob3ItaW5kZXhgLGBpbmRleC1tZXJnZS1hbmNob3ItY29vcmRpbmF0ZXNgKTtmb3IobGV0IGUgb2YgdC5tZXJnZUNlbGxzPz9bXSl7bGV0IHQ9Uy5vZmZzZXRPZihlLnJpZ2h0KzEpLVMub2Zmc2V0T2YoZS5sZWZ0KSxuPUMub2Zmc2V0T2YoZS5ib3R0b20rMSktQy5vZmZzZXRPZihlLnRvcCk7cGsobmUsYCR7ZS50b3B9OiR7ZS5sZWZ0fWAse3RvdGFsVzp0LHRvdGFsSDpuLHJpZ2h0OmUucmlnaHQsYm90dG9tOmUuYm90dG9tfSxyZSl9bGV0IGllPUlbMF0/P18sYWU9SS5hdCgtMSk/P01hdGgubWluKDE2Mzg0LF8reS0xKSxvZT1vaihlLHQsbixCLHRlLGVlLEcsbmUsUyxDLFsuLi5uZXcgU2V0KFsuLi5rLC4uLkxdKV0saWUsYWUsRCsxLHMsdSx0LnJpZ2h0VG9MZWZ0PT09ITAsYSksc2U9Uy5iYW5kc1RvQ292ZXIob2Uuc3RhcnRDb2wsb2UuZW5kQ29sKSxjZT1zZS5tYXAoKHtpbmRleDplfSk9PmUpLGxlPXNlLm1hcCgoe3NpemU6ZX0pPT5lKSx1ZT1iK1Mub2Zmc2V0T2YoaWUpLVMub2Zmc2V0T2Yob2Uuc3RhcnRDb2wpLHE9e3dvcmtzaGVldDp0LHN0eWxlczpuLGNlbGxNYXA6QixtZXJnZUFuY2hvck1hcDpuZSxtZXJnZVNraXBTZXQ6VixjZkNvbnRleHQ6ZWUsY29sV2lkdGhzOmxlLHJvd0hlaWdodHM6eixjb2xBeGlzOlMscm93QXhpczpDLGZyb3plbkNvbFdpZHRoczpBLGZyb3plblJvd0hlaWdodHM6aixmcm96ZW5XOk0sZnJvemVuSDpOLHN0YXJ0Um93Omcsc3RhcnRDb2w6XyxjczpzLGRwcjpvLGF1dG9GaWx0ZXJDZWxsczpILGh5cGVybGlua01hcDpVLGNvbW1lbnRDZWxsczpXLHRhYmxlU3R5bGVNYXA6RyxzcGFya2xpbmVNYXA6SyxvdmVyZmxvd1RleHRBbmNob3JzOm9lLmFuY2hvcktleXMsbWR3OnUsb25UZXh0UnVuOmkub25UZXh0UnVuLHJ0bDp0LnJpZ2h0VG9MZWZ0PT09ITAsY2FudmFzVzpkLHRocmVlRDppLnRocmVlRH0sZGU9bSxKPWgsWT1kZStNLGZlPUorTixwZT1NYXRoLm1heCgwLGQtWSksbWU9TWF0aC5tYXgoMCxmLWZlKTtFPjAmJkQ+MCYmR0EoZSxxLDEsMSxBLGosTyxrLDAsMCxkZSxKLGRlLEosTSxOLGEpLEU+MCYmR0EoZSxxLDEsb2Uuc3RhcnRDb2wsbGUsaixjZSxrLHVlLDAsWSxKLFksSixwZSxOLGEpLEQ+MCYmR0EoZSxxLGcsMSxBLHosTyxMLDAseCxkZSxmZSxkZSxmZSxNLG1lLGEpLGN8fEdBKGUscSxnLG9lLnN0YXJ0Q29sLGxlLHosY2UsTCx1ZSx4LFksZmUsWSxmZSxwZSxtZSxhKSx1aihlLHQsUyxDLGkubG9hZGVkSW1hZ2VzLHMsZyxfLGIseCxZLGZlLHBlLG1lLHQucmlnaHRUb0xlZnQ9PT0hMCxkLGkudGhyZWVELGkucmVnaW9uTWFwLGkuY2hhcnRFeCxhKSwhYyYmdC5zbGljZXJzJiZ0LnNsaWNlcnMubGVuZ3RoPjAmJk5qKGUsdCxTLEMscyxnLF8sYix4LFksZmUscGUsbWUsdC5yaWdodFRvTGVmdD09PSEwLGQpLGN8fGxqKGUsZCxmLGcsXyx2LHksUix6LEksTCxiLHgsQSxqLE8sayxNLE4sbSxoLHMsbyxpLnNlbGVjdGVkUm93UmFuZ2U/P251bGwsaS5zZWxlY3RlZENvbFJhbmdlPz9udWxsLHQucmlnaHRUb0xlZnQ9PT0hMCxpLmNocm9tZUNvbG9ycyk7bGV0IGhlPXQucmlnaHRUb0xlZnQ9PT0hMDtpZihFPjApe2Uuc2F2ZSgpLGUuc3Ryb2tlU3R5bGU9R2osZS5saW5lV2lkdGg9LjUsZS5iZWdpblBhdGgoKTtsZXQgdD1mZStSdihmZSwuNSxvKTtlLm1vdmVUbygwLHQpLGUubGluZVRvKGQsdCksZS5zdHJva2UoKSxlLnJlc3RvcmUoKX1pZihEPjApe2Uuc2F2ZSgpLGUuc3Ryb2tlU3R5bGU9R2osZS5saW5lV2lkdGg9LjUsZS5iZWdpblBhdGgoKTtsZXQgdD1oZT9kLVk6WSxuPXQrUnYodCwuNSxvKTtlLm1vdmVUbyhuLGgpLGUubGluZVRvKG4sZiksZS5zdHJva2UoKSxlLnJlc3RvcmUoKX19ZnVuY3Rpb24gbGooZSx0LG4scixpLGEsbyxzLGMsbCx1LGQsZixwLG0saCxnLF8sdix5LGIseCxTLEMsdyxULEUpe2xldCBEPUU/LnN1cmZhY2U/P2AjZjhmOWZhYCxPPUU/Lm11dGVkU3VyZmFjZT8/YCNlOGVhZWRgLGs9RT8uc2VsZWN0ZWRTdXJmYWNlPz9gI2NhZGRmNmAsQT1FPy5ib3JkZXI/P2AjYzhjY2QwYCxqPUU/LmFjY2VudD8/YCM1YjliZDVgLE09RT8udGV4dD8/YCM0NDRgLE49ZT0+IXd8fGU8dy5zdGFydHx8ZT53LmVuZD9EOncuc3Ryb25nP2s6TyxQPWU9PiF3fHxlPHcuc3RhcnR8fGU+dy5lbmQ/QTp3LnN0cm9uZz9qOkEsRj1lPT4hQ3x8ZTxDLnN0YXJ0fHxlPkMuZW5kP0Q6Qy5zdHJvbmc/azpPLEk9ZT0+IUN8fGU8Qy5zdGFydHx8ZT5DLmVuZD9BOkMuc3Ryb25nP2o6QSxMPWAke01hdGgubWF4KDEsTWF0aC5yb3VuZCgxMSp4KSl9cHggJHtWan1gLFI9eStfLHo9Yit2LEI9LjUvUyxlZT0oZSxuKT0+VD9lQShlLG4sdCk6ZSxWPVQ/dC15OjA7ZS5maWxsU3R5bGU9RCxlLmZpbGxSZWN0KFYsMCx5LGIpLGUuc3Ryb2tlU3R5bGU9QSxlLmxpbmVXaWR0aD0uNSxlLmJlZ2luUGF0aCgpO2xldCBIPVQ/VitSdihWLC41LFMpOlYreS1CO2UubW92ZVRvKEgsMCksZS5saW5lVG8oSCxiKSxlLm1vdmVUbyhWLGItQiksZS5saW5lVG8oVit5LGItQiksZS5zdHJva2UoKSxlLmZvbnQ9TCxlLmZpbGxTdHlsZT1NO2xldCBVPSh0LG4scik9PntsZXQgaT1lZShuLHIpO2UuZmlsbFN0eWxlPU4odCksZS5maWxsUmVjdChpLDAscixiKSxlLnN0cm9rZVN0eWxlPVAodCksZS5saW5lV2lkdGg9LjUsZS5iZWdpblBhdGgoKTtsZXQgYT1pK1J2KGksLjUsUyk7ZS5tb3ZlVG8oYSwwKSxlLmxpbmVUbyhhLGIpLGUubW92ZVRvKGksYi1CKSxlLmxpbmVUbyhpK3IsYi1CKSxlLnN0cm9rZSgpLGUuZmlsbFN0eWxlPU0sZS50ZXh0QWxpZ249YGNlbnRlcmAsZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWAsZS5maWxsVGV4dChSQSh0KSxpK3IvMixiLzIpfSxXPSh0LG4scik9PntsZXQgaT1WO2UuZmlsbFN0eWxlPUYodCksZS5maWxsUmVjdChpLG4seSxyKSxlLnN0cm9rZVN0eWxlPUkodCksZS5saW5lV2lkdGg9LjUsZS5iZWdpblBhdGgoKTtsZXQgYT1uK1J2KG4sLjUsUyksbz1UP2krUnYoaSwuNSxTKTppK3ktQjtlLm1vdmVUbyhvLG4pLGUubGluZVRvKG8sbityKSxlLm1vdmVUbyhpLGEpLGUubGluZVRvKGkreSxhKSxlLnN0cm9rZSgpLGUuZmlsbFN0eWxlPU0sZS50ZXh0QmFzZWxpbmU9YG1pZGRsZWA7bGV0IHM9TWF0aC5tYXgoMixNYXRoLnJvdW5kKDQqeCkpO1Q/KGUudGV4dEFsaWduPWBsZWZ0YCxlLmZpbGxUZXh0KFN0cmluZyh0KSxpK3MsbityLzIpKTooZS50ZXh0QWxpZ249YHJpZ2h0YCxlLmZpbGxUZXh0KFN0cmluZyh0KSxpK3ktcyxuK3IvMikpfTtpZihwLmxlbmd0aD4wKXtlLnNhdmUoKSxlLmJlZ2luUGF0aCgpLGUucmVjdChlZSh5LF8pLDAsXyxiKSxlLmNsaXAoKTtsZXQgdD15O2ZvcihsZXQgZT0wO2U8cC5sZW5ndGg7ZSsrKVUoaFtlXSx0LHBbZV0pLHQrPXBbZV07ZS5yZXN0b3JlKCl9ZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3QoZWUoUix0LVIpLDAsdC1SLGIpLGUuY2xpcCgpO2xldCBHPVItZDtmb3IobGV0IGU9MDtlPHMubGVuZ3RoO2UrKyl7bGV0IG49c1tlXTtHK24+UiYmRzx0JiZVKGxbZV0sRyxuKSxHKz1ufWlmKGUucmVzdG9yZSgpLG0ubGVuZ3RoPjApe2Uuc2F2ZSgpLGUuYmVnaW5QYXRoKCksZS5yZWN0KFYsYix5LHYpLGUuY2xpcCgpO2xldCB0PWI7Zm9yKGxldCBlPTA7ZTxtLmxlbmd0aDtlKyspVyhnW2VdLHQsbVtlXSksdCs9bVtlXTtlLnJlc3RvcmUoKX1lLnNhdmUoKSxlLmJlZ2luUGF0aCgpLGUucmVjdChWLHoseSxuLXopLGUuY2xpcCgpO2xldCBLPXotZjtmb3IobGV0IGU9MDtlPGMubGVuZ3RoO2UrKyl7bGV0IHQ9Y1tlXTtLK3Q+eiYmSzxuJiZXKHVbZV0sSyx0KSxLKz10fWUucmVzdG9yZSgpfWZ1bmN0aW9uIHVqKGUsdCxuLHIsaSxhLG8scyxjLGwsdSxkLGYscCxtLGgsZyxfLHYseSl7bGV0IGI9W10seD0wO2lmKGkpZm9yKGxldCBlIG9mIHQuaW1hZ2VzPz9bXSliLnB1c2goe2tpbmQ6YGltYWdlYCx6T3JkZXI6ZS56T3JkZXI/PzIqKjUzLTEsZmFsbGJhY2tPcmRlcjp4KyssYW5jaG9yOmV9KTtmb3IobGV0IGUgb2YgdC5zaGFwZUdyb3Vwcz8/W10pZm9yKGxldCB0IG9mIGUuc2hhcGVzKWIucHVzaCh7a2luZDpgc2hhcGVgLHpPcmRlcjp0LnpPcmRlcj8/MioqNTMtMSxmYWxsYmFja09yZGVyOngrKyxhbmNob3I6ZSxzaGFwZTp0fSk7Zm9yKGxldCBlIG9mIHQuY2hhcnRzPz9bXSliLnB1c2goe2tpbmQ6YGNoYXJ0YCx6T3JkZXI6ZS56T3JkZXI/PzIqKjUzLTEsZmFsbGJhY2tPcmRlcjp4KyssYW5jaG9yOmV9KTtiLnNvcnQoKGUsdCk9PmUuek9yZGVyLXQuek9yZGVyfHxlLmZhbGxiYWNrT3JkZXItdC5mYWxsYmFja09yZGVyKTtmb3IobGV0IHggb2YgYil4LmtpbmQ9PT1gaW1hZ2VgP3BqKGUsdCxuLHIsaSxhLG8scyxjLGwsdSxkLGYscCxtLGgsW3guYW5jaG9yXSk6eC5raW5kPT09YHNoYXBlYD9taihlLHQsbixyLGEsbyxzLGMsbCx1LGQsZixwLGksbSxoLFt7Li4ueC5hbmNob3Isc2hhcGVzOlt4LnNoYXBlXX1dLHkpOk1qKGUsdCxuLHIsYSxvLHMsYyxsLHUsZCxmLHAsbSxoLGksW3guYW5jaG9yXSxnLF8sdil9ZnVuY3Rpb24gZGooZSx0KXtyZXR1cm4gZS5vZmZzZXRPZih0KX1mdW5jdGlvbiBmaihlLHQpe3JldHVybiBlLm9mZnNldE9mKHQpfWZ1bmN0aW9uIHBqKGUsdCxuLHIsaSxhLG8scyxjLGwsdSxkLGYscCxtLGgsZz10LmltYWdlcyl7aWYoZjw9MHx8cDw9MClyZXR1cm47bGV0IF89ZGoobixzKSx2PWZqKHIsbyk7ZS5zYXZlKCksZS5iZWdpblBhdGgoKTtsZXQgeT10QSh1LGYsaCxtKTtlLnJlY3QoeSxkLGYscCksZS5jbGlwKCk7Zm9yKGxldCB0IG9mIGcpe2xldCBvPVprKHQuaW1hZ2VQYXRoLHQuZHVvdG9uZSkscz1pLmdldChvKSxnPXFrKGksbyxgdGlmZmApO2lmKCFzJiYhZyljb250aW51ZTtsZXQgYj10LmZyb21Db2wrMSx4PXQuZnJvbVJvdysxLFM9ZGoobixiKSt0LmZyb21Db2xPZmYqYS9sdCxDPWZqKHIseCkrdC5mcm9tUm93T2ZmKmEvbHQsdyxUO2lmKFVrKHQpKXc9dC5uYXRpdmVFeHRDeCphL2x0LFQ9dC5uYXRpdmVFeHRDeSphL2x0O2Vsc2V7bGV0IGU9dC50b0NvbCsxLGk9dC50b1JvdysxLG89ZGoobixlKSt0LnRvQ29sT2ZmKmEvbHQscz1maihyLGkpK3QudG9Sb3dPZmYqYS9sdDt3PW8tUyxUPXMtQ31pZih3PD0wfHxUPD0wKWNvbnRpbnVlO2xldCBFPXRBKHUrKFMtXyktYyx3LGgsbSksRD1kKyhDLXYpLWw7aWYoRSt3PHl8fEU+eStmfHxEK1Q8ZHx8RD5kK3ApY29udGludWU7bGV0IE89KCk9PntzP2l0KGUscyx0LnNyY1JlY3QsRSxELHcsVCk6aWcoZSxgdGlmZmAse3g6RSx5OkQsd2lkdGg6dyxoZWlnaHQ6VH0pfTt0LmFscGhhIT1udWxsJiZ0LmFscGhhPDE/KGUuc2F2ZSgpLGUuZ2xvYmFsQWxwaGE9dC5hbHBoYSxPKCksZS5yZXN0b3JlKCkpOk8oKX1lLnJlc3RvcmUoKX1mdW5jdGlvbiBtaihlLHQsbixyLGksYSxvLHMsYyxsLHUsZCxmLHAsbSxoLGc9dC5zaGFwZUdyb3Vwcz8/W10sXyl7aWYoZDw9MHx8Zjw9MHx8Zy5sZW5ndGg9PT0wKXJldHVybjtsZXQgdj1kaihuLG8pLHk9ZmoocixhKTtlLnNhdmUoKSxlLmJlZ2luUGF0aCgpO2xldCBiPXRBKGwsZCxoLG0pO2UucmVjdChiLHUsZCxmKSxlLmNsaXAoKTtmb3IobGV0IHQgb2YgZyl7bGV0IGE9dC5mcm9tQ29sKzEsbz10LmZyb21Sb3crMSxnPWRqKG4sYSkrdC5mcm9tQ29sT2ZmKmkvbHQseD1maihyLG8pK3QuZnJvbVJvd09mZippL2x0LFMsQztpZihVayh0KSlTPXQubmF0aXZlRXh0Q3gqaS9sdCxDPXQubmF0aXZlRXh0Q3kqaS9sdDtlbHNle2xldCBlPXQudG9Db2wrMSxhPXQudG9Sb3crMSxvPWRqKG4sZSkrdC50b0NvbE9mZippL2x0LHM9ZmoocixhKSt0LnRvUm93T2ZmKmkvbHQ7Uz1vLWcsQz1zLXh9aWYoUzw9MHx8Qzw9MCljb250aW51ZTtsZXQgdz10QShsKyhnLXYpLXMsUyxoLG0pLFQ9dSsoeC15KS1jO2lmKCEodytTPGJ8fHc+YitkKSYmIShUK0M8dXx8VD51K2YpKWZvcihsZXQgbiBvZiB0LnNoYXBlcyl7bGV0IHQ9dytuLngqUyxyPVQrbi55KkMsYT1uLncqUyxvPW4uaCpDO2E8PTB8fG88PTB8fGhqKGUsbix0LHIsYSxvLGkscCxfKX19ZS5yZXN0b3JlKCl9ZnVuY3Rpb24gaGooZSx0LG4scixpLGEsbyxzLGMpe2lmKGUuc2F2ZSgpLHQucm90IT09MHx8dC5mbGlwSHx8dC5mbGlwVj8oZS50cmFuc2xhdGUobitpLzIscithLzIpLGUucm90YXRlKHQucm90Kk1hdGguUEkvMTgwKSxlLnNjYWxlKHQuZmxpcEg/LTE6MSx0LmZsaXBWPy0xOjEpLGUudHJhbnNsYXRlKC1pLzIsLWEvMikpOmUudHJhbnNsYXRlKG4sciksdC5nZW9tLnR5cGU9PT1gY3VzdG9tYClmb3IobGV0IG4gb2YgdC5nZW9tLnBhdGhzKXtpZihuLnc8PTB8fG4uaDw9MCljb250aW51ZTtsZXQgcj1pL24udyxvPWEvbi5oO2UuYmVnaW5QYXRoKCk7bGV0IHM9MCxjPTAsbD0wLHU9MDtmb3IobGV0IHQgb2Ygbi5jb21tYW5kcylzd2l0Y2godC5vcCl7Y2FzZWBtb3ZlVG9gOntsZXQgbj10LngqcixpPXQueSpvO2UubW92ZVRvKG4saSkscz1sPW4sYz11PWk7YnJlYWt9Y2FzZWBsaW5lVG9gOntsZXQgbj10LngqcixpPXQueSpvO2UubGluZVRvKG4saSkscz1uLGM9aTticmVha31jYXNlYGN1YmljQmV6VG9gOntsZXQgbj10LngzKnIsaT10LnkzKm87ZS5iZXppZXJDdXJ2ZVRvKHQueDEqcix0LnkxKm8sdC54MipyLHQueTIqbyxuLGkpLHM9bixjPWk7YnJlYWt9Y2FzZWBxdWFkQmV6VG9gOntsZXQgbj10LngyKnIsaT10LnkyKm87ZS5xdWFkcmF0aWNDdXJ2ZVRvKHQueDEqcix0LnkxKm8sbixpKSxzPW4sYz1pO2JyZWFrfWNhc2VgYXJjVG9gOntsZXQgbj10LndyKnIsaT10LmhyKm87aWYobjw9MHx8aTw9MClicmVhaztsZXQgYT10LnN0QW5nLzZlNCooTWF0aC5QSS8xODApLGw9dC5zd0FuZy82ZTQqKE1hdGguUEkvMTgwKSx1PXMtTWF0aC5jb3MoYSkqbixkPWMtTWF0aC5zaW4oYSkqaSxmPWErbDtlLmVsbGlwc2UodSxkLG4saSwwLGEsZixsPDApLHM9dStNYXRoLmNvcyhmKSpuLGM9ZCtNYXRoLnNpbihmKSppO2JyZWFrfWNhc2VgY2xvc2VgOmUuY2xvc2VQYXRoKCkscz1sLGM9dTticmVha314aihlLHQsaSxhKX1lbHNlIGlmKHQuZ2VvbS50eXBlPT09YHByZXNldGApe2xldCBuPWFpKHQuZmlsbD8/KHQuZmlsbENvbG9yP3tmaWxsVHlwZTpgc29saWRgLGNvbG9yOnQuZmlsbENvbG9yfTpudWxsKSxlLDAsMCxpLGEsdC5yb3QpLHI9dC5zdHJva2VDb2xvciYmdC5zdHJva2VXaWR0aD4wPygpPT5DaihlLHQsaSxhKTpudWxsO19tKGUsdC5nZW9tLm5hbWUsMCwwLGksYSx0Lmdlb20uYWRqPz9bXSxuLHIsKCk9Pnt9KXx8KGUuYmVnaW5QYXRoKCksZS5yZWN0KDAsMCxpLGEpLHhqKGUsdCxpLGEpKX1lbHNlIGlmKHQuZ2VvbS50eXBlPT09YGltYWdlYCl7bGV0IG49dC5nZW9tLHI9Wmsobi5pbWFnZVBhdGgsbi5kdW90b25lKSxvPXM/LmdldChyKSxjPXFrKHMscixgdGlmZmApO2lmKG98fGMpe2xldCB0PW4uYWxwaGEscj0oKT0+e28/aXQoZSxvLG4uc3JjUmVjdCwwLDAsaSxhKTppZyhlLGB0aWZmYCx7eDowLHk6MCx3aWR0aDppLGhlaWdodDphfSl9O3QhPW51bGwmJnQ8MT8oZS5zYXZlKCksZS5nbG9iYWxBbHBoYT10LHIoKSxlLnJlc3RvcmUoKSk6cigpfX10LnRleHQmJmJqKGUsdC50ZXh0LGksYSxvLGMpLGUucmVzdG9yZSgpfWZ1bmN0aW9uIGdqKGUsdCl7bGV0IG49ZS50aW50ZWQuZ2V0KHQpO2lmKG4pcmV0dXJuIG47bGV0IHI9anYoZS5yYXN0ZXIsdCk7cmV0dXJuIGUudGludGVkLnNldCh0LHIpLHJ9ZnVuY3Rpb24gX2ooZSl7bGV0IHQ9W107Zm9yKGxldCBuIG9mIGUuc2hhcGVHcm91cHM/P1tdKWZvcihsZXQgZSBvZiBuLnNoYXBlcylmb3IobGV0IG4gb2YgZS50ZXh0Py5wYXJhZ3JhcGhzPz9bXSlmb3IobGV0IGUgb2Ygbi5ydW5zKWUudHlwZT09PWBtYXRoYCYmdC5wdXNoKHtub2RlczplLm5vZGVzLGRpc3BsYXk6ZS5kaXNwbGF5fSk7cmV0dXJuIHR9ZnVuY3Rpb24gdmooZSl7Zm9yKGxldCB0IG9mIGUuc2hhcGVHcm91cHM/P1tdKWZvcihsZXQgZSBvZiB0LnNoYXBlcylmb3IobGV0IHQgb2YgZS50ZXh0Py5wYXJhZ3JhcGhzPz9bXSlmb3IobGV0IGUgb2YgdC5ydW5zKWlmKGUudHlwZT09PWBtYXRoYCYmIWVNLmhhcyhlLm5vZGVzKSlyZXR1cm4hMDtyZXR1cm4hMX1hc3luYyBmdW5jdGlvbiB5aihlLHQpe2xldCBuPV9qKGUpLmZpbHRlcihlPT4hZU0uaGFzKGUubm9kZXMpKTtpZihuLmxlbmd0aCE9PTApe2F3YWl0IHQubG9hZE1hdGhKYXgoKTtmb3IobGV0IGUgb2YgbilpZighZU0uaGFzKGUubm9kZXMpKXRyeXtsZXQgbj1hd2FpdCB0Lm1hdGhNTFRvU3ZnKGF2KGUubm9kZXMsZS5kaXNwbGF5KSkscj1hd2FpdCBBdihuLGAjMDAwMDAwYCk7ZU0uc2V0KGUubm9kZXMse3Jhc3RlcjpyLHdpZHRoRW06bi53aWR0aEVtLGFzY2VudEVtOm4uYXNjZW50RW0sZGVzY2VudEVtOm4uZGVzY2VudEVtLHRpbnRlZDpuZXcgTWFwfSl9Y2F0Y2h7fX19ZnVuY3Rpb24gYmooZSx0LG4scixpLGEpe2lmKG48PTB8fHI8PTB8fHQucGFyYWdyYXBocy5sZW5ndGg9PT0wKXJldHVybjtsZXQgbz10LmxJbnMvbHQqaSxzPXQucklucy9sdCppLGM9dC50SW5zL2x0KmksbD10LmJJbnMvbHQqaSx1PU1hdGgubWF4KDAsbi1vLXMpLGQ9TWF0aC5tYXgoMCxyLWMtbCk7aWYodTw9MHx8ZDw9MClyZXR1cm47bGV0IGY9ZT0+e2xldCB0PShlLnNpemU+MD9lLnNpemU6V2opKnV0Kmksbj0kayhlLmZvbnRGYWNlLGEsZS50ZXh0KTtyZXR1cm57Zm9udDpgJHtlLml0YWxpYz9gaXRhbGljIGA6YGB9JHtlLmJvbGQ/YGJvbGQgYDpgYH0ke3R9cHggJHtufWAscHg6dH19LHA9KHQsbik9PntsZXQgcj1lLmZvbnQ7ZS5mb250PXQ7bGV0IGk9ZS5tZWFzdXJlVGV4dChgTWApLmFjdHVhbEJvdW5kaW5nQm94QXNjZW50O3JldHVybiBlLmZvbnQ9cixpPjA/aTpuKi44NX0sbT10LndyYXAhPT1gbm9uZWAsaD1bXTtmb3IobGV0IG4gb2YgdC5wYXJhZ3JhcGhzKXtsZXQgcj1uLmFsaWdufHxgbGAsYT0obi5tYXJMPz8wKS9sdCppLG89KG4ubWFyUj8/MCkvbHQqaSxzPShuLmluZGVudD8/MCkvbHQqaSxjPU1hdGgubWF4KDAscyksbD1NYXRoLm1heCgwLHUtYS1vKSxkPSExLGc9KCk9PmQ/YTphK2MsXz0oKT0+ZD9sOmwtYyx2PVtdLHk9MCxiPTAseD0wLFM9ITEsQz1uLnNwYWNlTGluZT8udHlwZT09PWBwY3RgLHc9ZT0+e2xldCByPWU7cmV0dXJuIG4uc3BhY2VMaW5lJiYobi5zcGFjZUxpbmUudHlwZT09PWBwY3RgP3IqPW4uc3BhY2VMaW5lLnZhbC8xZTU6cj1uLnNwYWNlTGluZS52YWwqdXQqaSksdC5hdXRvRml0PT09YG5vcm1gJiZ0LmxuU3BjUmVkdWN0aW9uIT1udWxsJiZuLnNwYWNlTGluZT8udHlwZSE9PWBwdHNgJiYocio9MS10LmxuU3BjUmVkdWN0aW9uKSxyfSxUPSgpPT57aWYoYj09PTApe2xldCBlPShFfHxXaikqdXQqaSx0PU1hdGgubWF4KF9FKEQsZSksX0UoTyxlKSksbj1lKjEuMjtiPUM/bjpNYXRoLm1heChuLHQpLHg9cChgJHtlfXB4ICR7JGsoRCl9YCxlKX1iPXcoYiksaC5wdXNoKHtzZWdzOnYsYWxpZ246cixoZWlnaHQ6Yixhc2NlbnQ6eCxoYXNNYXRoOlMsbGVmdEluc2V0OmcoKSxhdmFpbFc6XygpfSksZD0hMCx2PVtdLHk9MCxiPTAseD0wLFM9ITF9LEU9MCxELE87Zm9yKGxldCB0IG9mIG4ucnVucyl7aWYodC50eXBlPT09YGJyZWFrYCl7VCgpO2NvbnRpbnVlfWlmKHQudHlwZT09PWBtYXRoYCl7bGV0IGU9ZU0uZ2V0KHQubm9kZXMpO2lmKCFlKWNvbnRpbnVlO2xldCBuPSh0LmZvbnRTaXplPz8oRXx8V2opKSp1dCppLG89ZS53aWR0aEVtKm4scz1lLmFzY2VudEVtKm4sYz1lLmRlc2NlbnRFbSpuLHU9dC5jb2xvcj8/YCMwMDAwMDBgO2lmKHQuZGlzcGxheSl7VCgpLGgucHVzaCh7c2Vnczpbe2tpbmQ6YG1hdGhgLHJlbmRlcjplLGNvbG9yOnUsdzpvLGFzY2VudDpzLGRlc2NlbnQ6Y31dLGFsaWduOnIsaGVpZ2h0OncocytjKSxhc2NlbnQ6cyxoYXNNYXRoOiEwLGxlZnRJbnNldDphLGF2YWlsVzpsfSksZD0hMDtjb250aW51ZX1tJiZ5K28+XygpJiZ2Lmxlbmd0aD4wJiZUKCksdi5wdXNoKHtraW5kOmBtYXRoYCxyZW5kZXI6ZSxjb2xvcjp1LHc6byxhc2NlbnQ6cyxkZXNjZW50OmN9KSx5Kz1vLGI9TWF0aC5tYXgoYixzK2MpLHg9TWF0aC5tYXgoeCxzKSxTPSEwO2NvbnRpbnVlfUU9dC5zaXplPjA/dC5zaXplOldqLEQ9dC5mb250RmFjZSxPPXQuZm9udEZhY2VFYTtsZXR7Zm9udDpuLHB4Om99PWYodCkscz10LmNvbG9yPz9gIzAwMDAwMGAsYz1NYXRoLm1heChfRSh0LmZvbnRGYWNlLG8pLF9FKHQuZm9udEZhY2VFYSxvKSksdT1vKjEuMixnPUM/dTpNYXRoLm1heCh1LGMpO2I9TWF0aC5tYXgoYixnKSx4PU1hdGgubWF4KHgscChuLG8pKSxlLmZvbnQ9bjtsZXQgaz10LnRleHQuc3BsaXQoYApgKTtmb3IobGV0IHQ9MDt0PGsubGVuZ3RoO3QrKyl7dD4wJiZUKCk7bGV0IHI9a1t0XTtpZighciljb250aW51ZTtpZighbSl7bGV0IHQ9ZS5tZWFzdXJlVGV4dChyKS53aWR0aDt2LnB1c2goe2tpbmQ6YHRleHRgLHRleHQ6cixmb250Om4sY29sb3I6cyx3OnR9KSx5Kz10O2NvbnRpbnVlfWxldCBpPWBgO2ZvcihsZXQgdCBvZiByKXtsZXQgcj1pK3QsYT1lLm1lYXN1cmVUZXh0KHIpLndpZHRoO2lmKHkrYT5fKCkmJihpLmxlbmd0aD4wfHx2Lmxlbmd0aD4wKSl7aWYoaSl7bGV0IHQ9ZS5tZWFzdXJlVGV4dChpKS53aWR0aDt2LnB1c2goe2tpbmQ6YHRleHRgLHRleHQ6aSxmb250Om4sY29sb3I6cyx3OnR9KSx5Kz10fVQoKSxpPXQsZS5mb250PW4sYj1NYXRoLm1heChiLGcpLHg9TWF0aC5tYXgoeCxwKG4sbykpfWVsc2UgaT1yfWlmKGkpe2xldCB0PWUubWVhc3VyZVRleHQoaSkud2lkdGg7di5wdXNoKHtraW5kOmB0ZXh0YCx0ZXh0OmksZm9udDpuLGNvbG9yOnMsdzp0fSkseSs9dH19fVQoKX1sZXQgZz1oLnJlZHVjZSgoZSx0KT0+ZSt0LmhlaWdodCwwKSxfPWM7dC5hbmNob3I9PT1gY3RyYD9fPWMrKGQtZykvMjp0LmFuY2hvcj09PWBiYCYmKF89YytNYXRoLm1heCgwLGQtZykpO2xldCB2PV87Zm9yKGxldCB0IG9mIGgpe2xldCBuPXQuc2Vncy5yZWR1Y2UoKGUsdCk9PmUrdC53LDApLHI9byt0LmxlZnRJbnNldCxpPXI7aWYodC5hbGlnbj09PWBjdHJgP2k9citNYXRoLm1heCgwLCh0LmF2YWlsVy1uKS8yKTp0LmFsaWduPT09YHJgJiYoaT1yK01hdGgubWF4KDAsdC5hdmFpbFctbikpLHQuaGFzTWF0aCl7ZS50ZXh0QmFzZWxpbmU9YGFscGhhYmV0aWNgO2xldCBuPXYrdC5hc2NlbnQ7Zm9yKGxldCByIG9mIHQuc2Vncyl7aWYoci5raW5kPT09YHRleHRgKWUuZm9udD1yLmZvbnQsZS5maWxsU3R5bGU9ci5jb2xvcixlLmZpbGxUZXh0KHIudGV4dCxpLG4pO2Vsc2V7bGV0IHQ9Z2ooci5yZW5kZXIsci5jb2xvcik7ZS5kcmF3SW1hZ2UodCxpLG4tci5hc2NlbnQsci53LHIuYXNjZW50K3IuZGVzY2VudCl9aSs9ci53fX1lbHNle2UudGV4dEJhc2VsaW5lPWBtaWRkbGVgO2xldCBuPXYrdC5oZWlnaHQvMjtmb3IobGV0IHIgb2YgdC5zZWdzKXIua2luZD09PWB0ZXh0YCYmKGUuZm9udD1yLmZvbnQsZS5maWxsU3R5bGU9ci5jb2xvcixlLmZpbGxUZXh0KHIudGV4dCxpLG4pKSxpKz1yLnd9dis9dC5oZWlnaHR9fWZ1bmN0aW9uIHhqKGUsdCxuLHIpe2xldCBpPWFpKHQuZmlsbD8/KHQuZmlsbENvbG9yP3tmaWxsVHlwZTpgc29saWRgLGNvbG9yOnQuZmlsbENvbG9yfTpudWxsKSxlLDAsMCxuLHIsdC5yb3QpO2kmJihlLmZpbGxTdHlsZT1pLGUuZmlsbCgpKSxDaihlLHQsbixyKX1mdW5jdGlvbiBTaihlKXtyZXR1cm4hZS5zdHJva2VDb2xvcnx8ZS5zdHJva2VXaWR0aDw9MD9udWxsOntjb2xvcjplLnN0cm9rZUNvbG9yLHdpZHRoOmUuc3Ryb2tlV2lkdGgsLi4uZS5zdHJva2VGaWxsP3tmaWxsOmUuc3Ryb2tlRmlsbH06e30sLi4uZS5zdHJva2VEYXNoU3R5bGU/e2Rhc2hTdHlsZTplLnN0cm9rZURhc2hTdHlsZX06e30sLi4uZS5zdHJva2VDdXN0b21EYXNoPy5sZW5ndGg/e2N1c3RvbURhc2g6ZS5zdHJva2VDdXN0b21EYXNofTp7fSwuLi5lLnN0cm9rZUxpbmVDYXA/e2xpbmVDYXA6ZS5zdHJva2VMaW5lQ2FwfTp7fSwuLi5lLnN0cm9rZUxpbmVKb2luP3tsaW5lSm9pbjplLnN0cm9rZUxpbmVKb2lufTp7fSwuLi5lLnN0cm9rZU1pdGVyTGltaXQ9PT12b2lkIDA/e306e21pdGVyTGltaXQ6ZS5zdHJva2VNaXRlckxpbWl0fSwuLi5lLnN0cm9rZUFsaWdubWVudD97YWxpZ25tZW50OmUuc3Ryb2tlQWxpZ25tZW50fTp7fSwuLi5lLnN0cm9rZUNtcGQ/e2NtcGQ6ZS5zdHJva2VDbXBkfTp7fSwuLi5lLnN0cm9rZUhlYWRFbmQ/e2hlYWRFbmQ6ZS5zdHJva2VIZWFkRW5kfTp7fSwuLi5lLnN0cm9rZVRhaWxFbmQ/e3RhaWxFbmQ6ZS5zdHJva2VUYWlsRW5kfTp7fX19ZnVuY3Rpb24gQ2ooZSx0LG4scil7bGV0IGk9U2oodCk7aWYoaSl7aWYoc2koZSxpLDEvbHQpLGkuZmlsbCl7bGV0IGE9YWkoaS5maWxsLGUsMCwwLG4scix0LnJvdCk7YSYmKGUuc3Ryb2tlU3R5bGU9YSl9ZS5zdHJva2UoKX19ZnVuY3Rpb24gd2ooZSx0LG4scixpLGEsbyl7aWYocj09PW4mJmk9PT10KXJldHVybiBlO2xldCBzPShlLHIpPT57aWYoZT09PXQmJnI9PT1uKXJldHVybiBudWxsO2xldCBpPWEuZ2V0KGAke2V9OiR7cn1gKTtyZXR1cm4gaT92QShvLGkuc3R5bGVJbmRleD8/MCkuYm9yZGVyOm51bGx9LGM9cyh0LHIpLGw9cyhpLG4pLHU9cyhpLHIpLGQ9KGUsLi4udCk9PntpZihlPy5zdHlsZSlyZXR1cm4gZTtmb3IobGV0IGUgb2YgdClpZihlPy5zdHlsZSlyZXR1cm4gZTtyZXR1cm4gZT8/bnVsbH07cmV0dXJue2xlZnQ6ZS5sZWZ0LHRvcDplLnRvcCxyaWdodDpkKGM/LnJpZ2h0LHU/LnJpZ2h0LGUucmlnaHQpLGJvdHRvbTpkKGw/LmJvdHRvbSx1Py5ib3R0b20sZS5ib3R0b20pLGRpYWdvbmFsVXA6ZS5kaWFnb25hbFVwPz9udWxsLGRpYWdvbmFsRG93bjplLmRpYWdvbmFsRG93bj8/bnVsbH19ZnVuY3Rpb24gVGooZSx0KXtpZighdClyZXR1cm4gZTtsZXQgbj0oZSx0KT0+dCYmdC5zdHlsZT90OmU/P251bGw7cmV0dXJue2xlZnQ6bihlLmxlZnQsdC5sZWZ0KSxyaWdodDpuKGUucmlnaHQsdC5yaWdodCksdG9wOm4oZS50b3AsdC50b3ApLGJvdHRvbTpuKGUuYm90dG9tLHQuYm90dG9tKSxkaWFnb25hbFVwOm4oZS5kaWFnb25hbFVwLHQuZGlhZ29uYWxVcCksZGlhZ29uYWxEb3duOm4oZS5kaWFnb25hbERvd24sdC5kaWFnb25hbERvd24pfX1mdW5jdGlvbiBFaihlLHQsbixyLGk9MSl7cmV0dXJue291dGVyU3RhcnQ6bj9lLWk6ZSxvdXRlckVuZDpyP3QraTp0LGlubmVyU3RhcnQ6bj9lK2k6ZSxpbm5lckVuZDpyP3QtaTp0fX1mdW5jdGlvbiBEaihlLHQsbixyLGksYSxvPTEpe2xldCBzPVt7ZWRnZTp0LnRvcCx4MTpuLHkxOnIseDI6bitpLHkyOnIsa2luZDpgaGB9LHtlZGdlOnQuYm90dG9tLHgxOm4seTE6cithLHgyOm4raSx5MjpyK2Esa2luZDpgaGB9LHtlZGdlOnQubGVmdCx4MTpuLHkxOnIseDI6bix5MjpyK2Esa2luZDpgdmB9LHtlZGdlOnQucmlnaHQseDE6bitpLHkxOnIseDI6bitpLHkyOnIrYSxraW5kOmB2YH0se2VkZ2U6dC5kaWFnb25hbFVwLHgxOm4seTE6cithLHgyOm4raSx5MjpyLGtpbmQ6YGRgfSx7ZWRnZTp0LmRpYWdvbmFsRG93bix4MTpuLHkxOnIseDI6bitpLHkyOnIrYSxraW5kOmBkYH1dO2ZvcihsZXR7ZWRnZTpjLHgxOmwseTE6dSx4MjpkLHkyOmYsa2luZDpwfW9mIHMpe2lmKCFjfHwhYy5zdHlsZXx8Yy5zdHlsZT09PWBub25lYCljb250aW51ZTtsZXQgcz1jLmNvbG9yP2lpKGMuY29sb3IpOmAjMDAwMDAwYDtpZihjLnN0eWxlPT09YGRvdWJsZWAmJnA9PT1gZGApe2Uuc3Ryb2tlU3R5bGU9cyxlLmxpbmVXaWR0aD0xLGUuc2V0TGluZURhc2goW10pO2xldCB0PWQtbCxuPWYtdSxyPU1hdGguaHlwb3QodCxuKSxpPS1uL3IqMSxhPXQvcioxO2UuYmVnaW5QYXRoKCksZS5tb3ZlVG8obCtpLHUrYSksZS5saW5lVG8oZCtpLGYrYSksZS5tb3ZlVG8obC1pLHUtYSksZS5saW5lVG8oZC1pLGYtYSksZS5zdHJva2UoKTtjb250aW51ZX1pZihjLnN0eWxlPT09YGRvdWJsZWAmJnAhPT1gZGApe2lmKGUuc3Ryb2tlU3R5bGU9cyxlLmxpbmVXaWR0aD0xLGUuc2V0TGluZURhc2goW10pLGUuYmVnaW5QYXRoKCkscD09PWBoYCl7bGV0IG89dT09PXIscz1vP3ItMTpyK2ErMSxjPW8/cisxOnIrYS0xLGw9RWoobixuK2ksISF0LmxlZnQ/LnN0eWxlJiZ0LmxlZnQuc3R5bGUhPT1gbm9uZWAsISF0LnJpZ2h0Py5zdHlsZSYmdC5yaWdodC5zdHlsZSE9PWBub25lYCwxKTtlLm1vdmVUbyhsLm91dGVyU3RhcnQscyksZS5saW5lVG8obC5vdXRlckVuZCxzKSxlLm1vdmVUbyhsLmlubmVyU3RhcnQsYyksZS5saW5lVG8obC5pbm5lckVuZCxjKX1lbHNle2xldCBvPWw9PT1uLHM9bz9uLTE6bitpKzEsYz1vP24rMTpuK2ktMSx1PUVqKHIscithLCEhdC50b3A/LnN0eWxlJiZ0LnRvcC5zdHlsZSE9PWBub25lYCwhIXQuYm90dG9tPy5zdHlsZSYmdC5ib3R0b20uc3R5bGUhPT1gbm9uZWAsMSk7ZS5tb3ZlVG8ocyx1Lm91dGVyU3RhcnQpLGUubGluZVRvKHMsdS5vdXRlckVuZCksZS5tb3ZlVG8oYyx1LmlubmVyU3RhcnQpLGUubGluZVRvKGMsdS5pbm5lckVuZCl9ZS5zdHJva2UoKTtjb250aW51ZX1lLmJlZ2luUGF0aCgpLGUuc3Ryb2tlU3R5bGU9cztsZXQgbT1PaihjLnN0eWxlKTtlLmxpbmVXaWR0aD1tO2xldCBoPWtqKGMuc3R5bGUpO2Uuc2V0TGluZURhc2goaCk7bGV0IGc9cD09PWB2YD9SdihsLG0sbyk6MCxfPXA9PT1gaGA/UnYodSxtLG8pOjA7ZS5tb3ZlVG8obCtnLHUrXyksZS5saW5lVG8oZCtnLGYrXyksZS5zdHJva2UoKSxlLnNldExpbmVEYXNoKFtdKX19ZnVuY3Rpb24gT2ooZSl7c3dpdGNoKGUpe2Nhc2VgdGhpY2tgOnJldHVybiAzO2Nhc2VgbWVkaXVtYDpjYXNlYG1lZGl1bURhc2hlZGA6Y2FzZWBtZWRpdW1EYXNoRG90YDpjYXNlYG1lZGl1bURhc2hEb3REb3RgOmNhc2Vgc2xhbnREYXNoRG90YDpyZXR1cm4gMjtjYXNlYGhhaXJgOnJldHVybiAuNTtkZWZhdWx0OnJldHVybiAxfX1mdW5jdGlvbiBraihlKXtyZXR1cm4gWXIoZSl9ZnVuY3Rpb24gQWooZSl7c3dpdGNoKGUpe2Nhc2VgZG91YmxlYDpyZXR1cm4gMTM7Y2FzZWB0aGlja2A6cmV0dXJuIDEyO2Nhc2VgbWVkaXVtYDpyZXR1cm4gMTE7Y2FzZWBtZWRpdW1EYXNoZWRgOnJldHVybiAxMDtjYXNlYG1lZGl1bURhc2hEb3RgOnJldHVybiA5O2Nhc2Vgc2xhbnREYXNoRG90YDpyZXR1cm4gODtjYXNlYG1lZGl1bURhc2hEb3REb3RgOnJldHVybiA3O2Nhc2VgdGhpbmA6cmV0dXJuIDY7Y2FzZWBkYXNoZWRgOnJldHVybiA1O2Nhc2VgZGFzaERvdGA6cmV0dXJuIDQ7Y2FzZWBkYXNoRG90RG90YDpyZXR1cm4gMztjYXNlYGRvdHRlZGA6cmV0dXJuIDI7Y2FzZWBoYWlyYDpyZXR1cm4gMTtkZWZhdWx0OnJldHVybiAwfX1mdW5jdGlvbiBqaihlLHQpe2xldCBuPUFqKGU/LnN0eWxlKSxyPUFqKHQ/LnN0eWxlKTtyZXR1cm4gbj09PTAmJnI9PT0wP251bGw6bj49cj9lPz9udWxsOnQ/P251bGx9ZnVuY3Rpb24gTWooZSx0LG4scixpLGEsbyxzLGMsbCx1LGQsZixwLG0saCxnPXQuY2hhcnRzLF8sdix5KXtpZihkPD0wfHxmPD0wKXJldHVybjtsZXQgYj1kaihuLG8pLHg9ZmoocixhKSxTPXRBKGwsZCxtLHApO2ZvcihsZXQgdCBvZiBnKXtsZXQgYT10LmZyb21Db2wrMSxvPXQuZnJvbVJvdysxLGc9dC50b0NvbCsxLEM9dC50b1JvdysxLHc9ZGoobixhKSt0LmZyb21Db2xPZmYqaS9sdCxUPWZqKHIsbykrdC5mcm9tUm93T2ZmKmkvbHQsRT1kaihuLGcpK3QudG9Db2xPZmYqaS9sdCxEPWZqKHIsQykrdC50b1Jvd09mZippL2x0LE89RS13LGs9RC1UO2lmKE88PTB8fGs8PTApY29udGludWU7bGV0IEE9dEEobCsody1iKS1zLE8sbSxwKSxqPXUrKFQteCktYztBK088U3x8QT5TK2R8fGorazx1fHxqPnUrZnx8KGUuc2F2ZSgpLGUuYmVnaW5QYXRoKCksZS5yZWN0KFMsdSxkLGYpLGUuY2xpcCgpLGUuc2F2ZSgpLGkhPT0xJiZlLnNjYWxlKGksaSksb3UoZSx0LmNoYXJ0LGk9PT0xP3t4OkEseTpqLHc6TyxoOmt9Ont4OkEvaSx5OmovaSx3Ok8vaSxoOmsvaX0sdXQsMCxfLHYsZT0+aD8uZ2V0KF9yKGUpKSx5KSxlLnJlc3RvcmUoKSxlLnJlc3RvcmUoKSl9fWZ1bmN0aW9uIE5qKGUsdCxuLHIsaSxhLG8scyxjLGwsdSxkLGYscCxtKXtpZihkPD0wfHxmPD0wKXJldHVybjtsZXQgaD10LnNsaWNlcnM7aWYoIWgpcmV0dXJuO2xldCBnPWRqKG4sbyksXz1maihyLGEpLHY9dEEobCxkLG0scCk7Zm9yKGxldCB0IG9mIGgpe2xldCBhPXQuZnJvbUNvbCsxLG89dC5mcm9tUm93KzEsaD10LnRvQ29sKzEseT10LnRvUm93KzEsYj1kaihuLGEpK3QuZnJvbUNvbE9mZippL2x0LHg9ZmoocixvKSt0LmZyb21Sb3dPZmYqaS9sdCxTPWRqKG4saCkrdC50b0NvbE9mZippL2x0LEM9Zmoocix5KSt0LnRvUm93T2ZmKmkvbHQsdz1TLWIsVD1DLXg7aWYodzw9MHx8VDw9MCljb250aW51ZTtsZXQgRT10QShsKyhiLWcpLXMsdyxtLHApLEQ9dSsoeC1fKS1jO0Urdzx2fHxFPnYrZHx8RCtUPHV8fEQ+dStmfHwoZS5zYXZlKCksZS5iZWdpblBhdGgoKSxlLnJlY3Qodix1LGQsZiksZS5jbGlwKCksUGooZSx0LmNhcHRpb24sdC5pdGVtcyxFLEQsdyxULGksdC5zdHlsZSksZS5yZXN0b3JlKCkpfX1mdW5jdGlvbiBQaihlLHQsbixyLGksYSxvLHMsYyl7bGV0IGw9YyE9bnVsbDtlLmZpbGxTdHlsZT1jPy53aG9sZT8uZmlsbENvbG9yPz9yTSxlLmZpbGxSZWN0KHIsaSxhLG8pO2xldCB1PWw/Yy53aG9sZT8uYm9yZGVyQ29sb3I6aU07dSYmKGUuc3Ryb2tlU3R5bGU9dSxlLmxpbmVXaWR0aD0xLGUuc3Ryb2tlUmVjdChyKy41LGkrLjUsYS0xLG8tMSkpO2xldCBkPU1hdGgubWF4KDIwKnMsMTQpLGY9bD9jLmhlYWRlcj8uZmlsbENvbG9yOmFNO2YmJihlLmZpbGxTdHlsZT1mLGUuZmlsbFJlY3QocisxLGkrMSxhLTIsZCkpLGUuZmlsbFN0eWxlPWM/LmhlYWRlcj8uZm9udENvbG9yPz9vTSxlLmZvbnQ9SWooYz8uaGVhZGVyLHRNLHMpLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgLGUudGV4dEFsaWduPWBsZWZ0YDtsZXQgcD02KnM7aWYoUmooZSx0LHIrcCxpK2QvMisxLGEtMipwKSxuLmxlbmd0aD09PTApcmV0dXJuO2xldCBtPU1hdGgubWF4KDEsTWF0aC5yb3VuZCgyKnMpKSxoPTQqcyxnPXIraCxfPWkrZCtoLHY9YS0yKmgseT1vLWQtMipoO2lmKHY8PTB8fHk8PTApcmV0dXJuO2xldCBiPU1hdGgubWF4KDE4KnMsMTYpLHg9TWF0aC5tYXgoMSxNYXRoLmZsb29yKCh5K20pLyhiK20pKSksUz1NYXRoLm1pbihuLmxlbmd0aCx4KSxDPU1hdGgubWluKGIsKHktbSooUy0xKSkvUyk7aWYoQzw9MClyZXR1cm47ZS5mb250PUxqKG5NLHMpO2xldCB3PTgqcztmb3IobGV0IHQ9MDt0PFM7dCsrKXtsZXQgcj1uW3RdLGk9Xyt0KihDK20pLGE9ci5zZWxlY3RlZCxvPWE/Yz8uc2VsZWN0ZWRJdGVtV2l0aERhdGE6Yz8udW5zZWxlY3RlZEl0ZW1XaXRoRGF0YSx1PW8/LmZpbGxDb2xvcj8/KGE/c006dU0pLGQ9bD9vPy5ib3JkZXJDb2xvcjphP2xNOmZNO2UuZmlsbFN0eWxlPXUsbD8oRmooZSxnLGksdixDLE1hdGgubWluKDQqcyxDLzQpKSxlLmZpbGwoKSxkJiYoZS5zdHJva2VTdHlsZT1kLGUubGluZVdpZHRoPTEsZS5zdHJva2UoKSkpOihlLmZpbGxSZWN0KGcsaSx2LEMpLGQmJihlLnN0cm9rZVN0eWxlPWQsZS5saW5lV2lkdGg9MSxlLnN0cm9rZVJlY3QoZysuNSxpKy41LHYtMSxDLTEpKSksZS5mb250PUlqKG8sbk0scyksZS5maWxsU3R5bGU9bz8uZm9udENvbG9yPz8oYT9jTTpkTSksUmooZSxyLm5hbWUsZyt3LGkrQy8yKzEsdi0yKncpfX1mdW5jdGlvbiBGaihlLHQsbixyLGksYSl7bGV0IG89TWF0aC5tYXgoMCxNYXRoLm1pbihhLHIvMixpLzIpKTtlLmJlZ2luUGF0aCgpLGUubW92ZVRvKHQrbyxuKSxlLmxpbmVUbyh0K3ItbyxuKSxlLnF1YWRyYXRpY0N1cnZlVG8odCtyLG4sdCtyLG4rbyksZS5saW5lVG8odCtyLG4raS1vKSxlLnF1YWRyYXRpY0N1cnZlVG8odCtyLG4raSx0K3ItbyxuK2kpLGUubGluZVRvKHQrbyxuK2kpLGUucXVhZHJhdGljQ3VydmVUbyh0LG4raSx0LG4raS1vKSxlLmxpbmVUbyh0LG4rbyksZS5xdWFkcmF0aWNDdXJ2ZVRvKHQsbix0K28sbiksZS5jbG9zZVBhdGgoKX1mdW5jdGlvbiBJaihlLHQsbil7aWYoIWUpcmV0dXJuIExqKHQsbik7bGV0IHI9TWF0aC5yb3VuZCgoZS5mb250U2l6ZT8/MTEpKm4pO3JldHVybmAke2UuZm9udEJvbGQ/YGJvbGQgYDpgYH0ke3J9cHggJHtlLmZvbnRGYW1pbHk/YCIke2UuZm9udEZhbWlseX0iLCAiU2Vnb2UgVUkiLCBzYW5zLXNlcmlmYDpgIk1laXJ5byBVSSIsICJTZWdvZSBVSSIsIHNhbnMtc2VyaWZgfWB9ZnVuY3Rpb24gTGooZSx0KXtyZXR1cm4gZS5yZXBsYWNlKC8oXGQrKD86XC5cZCspPylweC8sKGUsbik9PmAke01hdGgucm91bmQoTnVtYmVyKG4pKnQpfXB4YCl9ZnVuY3Rpb24gUmooZSx0LG4scixpKXtpZihpPD0wKXJldHVybjtsZXQgYT10O2lmKGUubWVhc3VyZVRleHQoYSkud2lkdGg+aSl7Zm9yKDthLmxlbmd0aD4wJiZlLm1lYXN1cmVUZXh0KGErYOKApmApLndpZHRoPmk7KWE9YS5zbGljZSgwLC0xKTthPWEubGVuZ3RoPjA/YStg4oCmYDpgYH1lLmZpbGxUZXh0KGEsbixyKX12YXIgemosQmosVmosSGosVWosV2osR2osS2oscWosSmosWWosWGosWmosUWosJGosZU0sdE0sbk0sck0saU0sYU0sb00sc00sY00sbE0sdU0sZE0sZk0scE09dCgoKCk9PntXRCgpLGJFKCkscUQoKSx1aygpLE1rKCksTGsoKSxCaygpLEhrKCksX2soKSxJRCgpLFdrKCksWWsoKSxBRCgpLHpqPVUubWFwKGU9PmAiJHtlfSJgKS5qb2luKGAsIGApLEJqPVcubWFwKGU9PmAiJHtlfSJgKS5qb2luKGAsIGApLFZqPWAiQ2FsaWJyaSIsICJDYXJsaXRvIiwgIkNhbWJyaWEiLCAiQ2FsYWRlYSIsIEFyaWFsLCAiTm90byBOYXNraCBBcmFiaWMiLCAiTm90byBTYW5zIEFyYWJpYyIsICR7emp9LCBzYW5zLXNlcmlmYCxIaj1gIkNhbWJyaWEiLCAiQ2FsYWRlYSIsICJUaW1lcyBOZXcgUm9tYW4iLCAiTGliZXJhdGlvbiBTZXJpZiIsICJOb3RvIE5hc2toIEFyYWJpYyIsICJOb3RvIFNhbnMgQXJhYmljIiwgJHtCan0sIHNlcmlmYCxVaj1gIkNvdXJpZXIgTmV3IiwgIkxpYmVyYXRpb24gTW9ubyIsIG1vbm9zcGFjZWAsV2o9MTEsR2o9YCM3YTdhN2FgLEtqPW5ldyBNYXAscWo9e2dyYXkwNjI1OlsxMjgsMCw4LDAsMTI4LDAsOCwwXSxncmF5MTI1OlsxMzYsMCwzNCwwLDEzNiwwLDM0LDBdLGxpZ2h0R3JheTpbMTcwLDAsODUsMCwxNzAsMCw4NSwwXSxtZWRpdW1HcmF5OlsxNzAsODUsMTcwLDg1LDE3MCw4NSwxNzAsODVdLGRhcmtHcmF5OlsxMTksMjIxLDExOSwyMjEsMTE5LDIyMSwxMTksMjIxXSxkYXJrSG9yaXpvbnRhbDpbNDA5NSw0MDk1LDAsNDA5NSw0MDk1LDAsNDA5NSw0MDk1LDAsNDA5NSw0MDk1LDBdLGxpZ2h0SG9yaXpvbnRhbDpbNDA5NSwwLDAsNDA5NSwwLDAsNDA5NSwwLDAsNDA5NSwwLDBdLGRhcmtWZXJ0aWNhbDpBcnJheSgxMikuZmlsbCgzNTEwKSxsaWdodFZlcnRpY2FsOkFycmF5KDEyKS5maWxsKDIzNDApLGRhcmtHcmlkOlsyMDQsMjA0LDUxLDUxLDIwNCwyMDQsNTEsNTFdLGxpZ2h0R3JpZDpbMjU1LDEzNiwxMzYsMTM2LDI1NSwxMzYsMTM2LDEzNl0sZGFya0Rvd246WzIwNCwxMDIsNTEsMTUzLDIwNCwxMDIsNTEsMTUzXSxsaWdodERvd246WzEzNiw2OCwzNCwxNywxMzYsNjgsMzQsMTddLGRhcmtVcDpbNTEsMTAyLDIwNCwxNTMsNTEsMTAyLDIwNCwxNTNdLGxpZ2h0VXA6WzE3LDM0LDY4LDEzNiwxNywzNCw2OCwxMzZdLGRhcmtUcmVsbGlzOlsyNTUsMTAyLDI1NSwxNTMsMjU1LDEwMiwyNTUsMTUzXSxsaWdodFRyZWxsaXM6WzE1MywxMDIsMTAyLDE1MywxNTMsMTAyLDEwMiwxNTNdfSxKaj1SayxZaj1bYCNGRjAwMDBgLGAjRkZGRjAwYCxgIzAwQjA1MGBdLFhqPVtgI0ZGMDAwMGAsYCNGRjY2MDBgLGAjRkZGRjAwYCxgIzAwQjA1MGBdLFpqPVtgI0ZGMDAwMGAsYCNGRjY2MDBgLGAjRkZGRjAwYCxgIzkyRDA1MGAsYCMwMEIwNTBgXSxRaj1uZXcgV2Vha01hcCwkaj1uZXcgV2Vha01hcCxlTT1uZXcgV2Vha01hcCx0TT1gNjAwIDEycHggIk1laXJ5byBVSSIsICJTZWdvZSBVSSIsIHNhbnMtc2VyaWZgLG5NPWAxMXB4ICJNZWlyeW8gVUkiLCAiU2Vnb2UgVUkiLCBzYW5zLXNlcmlmYCxyTT1gI0ZGRkZGRmAsaU09YCNCRkJGQkZgLGFNPWAjRjJGMkYyYCxvTT1gIzQwNDA0MGAsc009YCNGRkZGRkZgLGNNPWAjMDAwMDAwYCxsTT1gI0E1QTVBNWAsdU09YCNFN0U2RTZgLGRNPWAjQTZBNkE2YCxmTT1gI0M2QzZDNmB9KSksbU09bih7WExTWF9SRU5ERVJfQ09NTUlUX0dVQVJEOigpPT5BTSxkZWNvZGVJbWFnZVNvdXJjZTooKT0+Q00scHJlZmV0Y2hJbWFnZXM6KCk9PndNLHJlbmRlcldvcmtzaGVldFZpZXdwb3J0OigpPT5FTSx3aXRoWGxzeFJlbmRlckNvbW1pdEd1YXJkOigpPT5oTSx3b3Jrc2hlZXRXaXRoQXV0b1Jvd0hlaWdodHM6KCk9PlRNfSk7ZnVuY3Rpb24gaE0oZSx0KXtyZXR1cm57Li4uZSxbQU1dOnR9fWZ1bmN0aW9uIGdNKGUsdCl7cmV0dXJuIGU9PT12b2lkIDA/dDp0PT09dm9pZCAwP2U6TWF0aC5tYXgoZSx0KX1mdW5jdGlvbiBfTShlLHQpe2lmKCFlJiYhdClyZXR1cm4gbnVsbDtsZXQgbj1lPzEtZS5sLWUucjoxLHI9KHQ/MS10LmwtdC5yOjEpPG4/dDplLGk9ZT8xLWUudC1lLmI6MSxhPSh0PzEtdC50LXQuYjoxKTxpP3Q6ZTtyZXR1cm57bDpyPy5sPz8wLHI6cj8ucj8/MCx0OmE/LnQ/PzAsYjphPy5iPz8wfX1mdW5jdGlvbiB2TShlLHQpe3JldHVybiBlP3Q/ZT09PXQ/ZTp2b2lkIDA6ZTp0fWZ1bmN0aW9uIHlNKGUsdCl7cmV0dXJuey4uLmUsc3ZnSW1hZ2VQYXRoOnZNKGUuc3ZnSW1hZ2VQYXRoLHQuc3ZnSW1hZ2VQYXRoKSx3aWR0aFB0OmdNKGUud2lkdGhQdCx0LndpZHRoUHQpLGhlaWdodFB0OmdNKGUuaGVpZ2h0UHQsdC5oZWlnaHRQdCksc3JjUmVjdDpfTShlLnNyY1JlY3QsdC5zcmNSZWN0KSxmYWlsQ2xvc2VkT25EdW90b25lRmFpbHVyZTplLmZhaWxDbG9zZWRPbkR1b3RvbmVGYWlsdXJlfHx0LmZhaWxDbG9zZWRPbkR1b3RvbmVGYWlsdXJlfHx2b2lkIDAsdGFyZ2V0V2lkdGhQeDpnTShlLnRhcmdldFdpZHRoUHgsdC50YXJnZXRXaWR0aFB4KSx0YXJnZXRIZWlnaHRQeDpnTShlLnRhcmdldEhlaWdodFB4LHQudGFyZ2V0SGVpZ2h0UHgpfX1mdW5jdGlvbiBiTShlLHQsbil7bGV0IHI9ZS5nZXQodCk7ZS5zZXQodCxyP3lNKHIsbik6bil9ZnVuY3Rpb24geE0oZSx0LG4scil7bGV0e2NvbDppLHJvdzphfT0obj8/aUEodCkpLmF4ZXNBdFNjYWxlKHIpLG89KGUsdCxuKT0+ZS5vZmZzZXRPZih0KzEpK24qci9sdCxzPW8oaSxlLmZyb21Db2wsZS5mcm9tQ29sT2ZmKSxjPW8oYSxlLmZyb21Sb3csZS5mcm9tUm93T2ZmKSxsPVVrKGUpP3MrZS5uYXRpdmVFeHRDeCpyL2x0Om8oaSxlLnRvQ29sLGUudG9Db2xPZmYpLHU9VWsoZSk/YytlLm5hdGl2ZUV4dEN5KnIvbHQ6byhhLGUudG9Sb3csZS50b1Jvd09mZik7cmV0dXJuIGw+cyYmdT5jP3t3aWR0aDpsLXMsaGVpZ2h0OnUtY306bnVsbH1mdW5jdGlvbiBTTShlLHQsbixyLGkpe2lmKCFuKXJldHVybiEwO2xldCBhPXI/P2lBKHQpLG89aT8uc2NhbGU/PzEse2NvbDpzLHJvdzpjfT1hLmF4ZXNBdFNjYWxlKG8pLGw9KGUsdCxuKT0+ZS5vZmZzZXRPZih0KzEpK24qby9sdCx1PWwocyxlLmZyb21Db2wsZS5mcm9tQ29sT2ZmKSxkPWwoYyxlLmZyb21Sb3csZS5mcm9tUm93T2ZmKSxmPVVrKGUpLHA9Zj91K2UubmF0aXZlRXh0Q3gqby9sdDpsKHMsZS50b0NvbCxlLnRvQ29sT2ZmKSxtPWY/ZCtlLm5hdGl2ZUV4dEN5Km8vbHQ6bChjLGUudG9Sb3csZS50b1Jvd09mZik7aWYocDw9dXx8bTw9ZClyZXR1cm4hMTtsZXQgaD1pP2EuZWZmZWN0aXZlRnJvemVuQmFuZHMoe3NjYWxlOm8sd2lkdGg6aS53aWR0aCxoZWlnaHQ6aS5oZWlnaHQsaGVhZGVyV2lkdGg6NTAsaGVhZGVySGVpZ2h0OjIyLHJvd3M6aS5mcmVlemVSb3dzLGNvbHM6aS5mcmVlemVDb2xzfSk6e3Jvd3M6dC5mcmVlemVSb3dzPz8wLGNvbHM6dC5mcmVlemVDb2xzPz8wfSxnPShlLHQsbixyLGkpPT57bGV0IGE9TWF0aC5taW4oZSx0KSxvPU1hdGgubWF4KGUsdCk7cmV0dXJuIGE8biYmbz4wfHxhPGkmJm8+cn07cmV0dXJuIGcodSxwLHMub2Zmc2V0T2YoaC5jb2xzKzEpLHMub2Zmc2V0T2Yobi5jb2wpLHMub2Zmc2V0T2Yobi5jb2wrbi5jb2xzKSkmJmcoZCxtLGMub2Zmc2V0T2YoaC5yb3dzKzEpLGMub2Zmc2V0T2Yobi5yb3cpLGMub2Zmc2V0T2Yobi5yb3crbi5yb3dzKSl9YXN5bmMgZnVuY3Rpb24gQ00oZSx0LG4scixpPTAsYT0wLG89bnVsbCxzPW51bGwsYyxsPSExLHUsZCxmLHApe2xldCBtPXQ9PT1gaW1hZ2Uvc3ZnK3htbGA7aWYobSYmcylyZXR1cm4gbnVsbDtsZXQgaD1vdCh0LG8saSxhKTtpZighaClyZXR1cm4gbnVsbDtsZXQgZz0oKT0+UF8oZSx0LHMscix7d2lkdGhQdDpoLndpZHRoUHQsaGVpZ2h0UHQ6aC5oZWlnaHRQdCxvZmZzY3JlZW5GYWN0b3J5OmMsZmFpbENsb3NlZE9uRHVvdG9uZUZhaWx1cmU6bCx0aWZmOnUsLi4uZD8/e30sLi4ucD97bWF4UmV0YWluZWRQaXhlbHM6cH06e319KSxfPXtzdmdJbWFnZVBhdGg6bixzcmNSZWN0Om99O2lmKCFzJiZMXyhfKSl0cnl7cmV0dXJuIGF3YWl0IFNfKF8uc3ZnSW1hZ2VQYXRoLHIsey4uLmQsbWF4UmV0YWluZWRQaXhlbHM6cCx3b3JrZXJEZWNvZGVyOmZ9KX1jYXRjaHtyZXR1cm4gbT9TXyhlLHIsey4uLmQsbWF4UmV0YWluZWRQaXhlbHM6cCx3b3JrZXJEZWNvZGVyOmZ9KTpnKCl9cmV0dXJuIG0/U18oZSxyLHsuLi5kLG1heFJldGFpbmVkUGl4ZWxzOnAsd29ya2VyRGVjb2RlcjpmfSk6ZygpfWFzeW5jIGZ1bmN0aW9uIHdNKGUsdCxuLHIpe2lmKHQuY2xlYXIoKSxHayh0KSwhbilyZXR1cm47bGV0IGk9bixhPW5ldyBNYXAsbz1yPy52aWV3cG9ydD9pQShlKTp2b2lkIDAscz1yPy52aWV3cG9ydCYmci53aWR0aCE9PXZvaWQgMCYmci5oZWlnaHQhPT12b2lkIDA/e3dpZHRoOnIud2lkdGgsaGVpZ2h0OnIuaGVpZ2h0LHNjYWxlOnIuY2VsbFNjYWxlPz8xLGZyZWV6ZVJvd3M6ci5mcmVlemVSb3dzPz9lLmZyZWV6ZVJvd3M/PzAsZnJlZXplQ29sczpyLmZyZWV6ZUNvbHM/P2UuZnJlZXplQ29scz8/MH06dm9pZCAwO2lmKGUuaW1hZ2VzKWZvcihsZXQgdCBvZiBlLmltYWdlcylTTSh0LGUscj8udmlld3BvcnQsbyxzKSYmYk0oYSxaayh0LmltYWdlUGF0aCx0LmR1b3RvbmUpLHtpbWFnZVBhdGg6dC5pbWFnZVBhdGgsbWltZVR5cGU6dC5taW1lVHlwZSxzdmdJbWFnZVBhdGg6dC5zdmdJbWFnZVBhdGgsd2lkdGhQdDp0Lm5hdGl2ZUV4dEN4PjA/dC5uYXRpdmVFeHRDeC9jdDowLGhlaWdodFB0OnQubmF0aXZlRXh0Q3k+MD90Lm5hdGl2ZUV4dEN5L2N0OjAsc3JjUmVjdDp0LnNyY1JlY3Q/P251bGwsZHVvdG9uZTp0LmR1b3RvbmU/P251bGwsLi4uKCgpPT57bGV0IG49eE0odCxlLG8scj8uY2VsbFNjYWxlPz8xKSxpPW4mJnI/LmVmZmVjdGl2ZURwcj9hdChuLndpZHRoKnIuZWZmZWN0aXZlRHByLG4uaGVpZ2h0KnIuZWZmZWN0aXZlRHByLHQuc3JjUmVjdCk6bnVsbDtyZXR1cm4gaT97dGFyZ2V0V2lkdGhQeDppLndpZHRoLHRhcmdldEhlaWdodFB4OmkuaGVpZ2h0fTp7fX0pKCl9KTtpZihlLnNoYXBlR3JvdXBzKXtmb3IobGV0IHQgb2YgZS5zaGFwZUdyb3VwcylpZihTTSh0LGUscj8udmlld3BvcnQsbyxzKSlmb3IobGV0IG4gb2YgdC5zaGFwZXMpbi5nZW9tLnR5cGU9PT1gaW1hZ2VgJiZiTShhLFprKG4uZ2VvbS5pbWFnZVBhdGgsbi5nZW9tLmR1b3RvbmUpLHtpbWFnZVBhdGg6bi5nZW9tLmltYWdlUGF0aCxtaW1lVHlwZTpuLmdlb20ubWltZVR5cGUsc3ZnSW1hZ2VQYXRoOm4uZ2VvbS5zdmdJbWFnZVBhdGgsd2lkdGhQdDp0Lm5hdGl2ZUV4dEN4PjA/dC5uYXRpdmVFeHRDeCpuLncvY3Q6MCxoZWlnaHRQdDp0Lm5hdGl2ZUV4dEN5PjA/dC5uYXRpdmVFeHRDeSpuLmgvY3Q6MCxzcmNSZWN0Om4uZ2VvbS5zcmNSZWN0Pz9udWxsLGR1b3RvbmU6bi5nZW9tLmR1b3RvbmU/P251bGwsLi4uKCgpPT57bGV0IGk9eE0odCxlLG8scj8uY2VsbFNjYWxlPz8xKSxhPWkmJnI/LmVmZmVjdGl2ZURwcj9hdChpLndpZHRoKm4udypyLmVmZmVjdGl2ZURwcixpLmhlaWdodCpuLmgqci5lZmZlY3RpdmVEcHIsbi5nZW9tLnNyY1JlY3QpOm51bGw7cmV0dXJuIGE/e3RhcmdldFdpZHRoUHg6YS53aWR0aCx0YXJnZXRIZWlnaHRQeDphLmhlaWdodH06e319KSgpfSl9bGV0IGM9ZS5jaGFydHM/P1tdLGw9Yy5sZW5ndGg+MD9vPz9pQShlKTpvLHU9W107Zm9yKGxldCB0IG9mIGMpe2lmKCFTTSh0LGUscj8udmlld3BvcnQsbCxzKSljb250aW51ZTtsZXQgbj14TSh0LGUsbCxyPy5jZWxsU2NhbGU/PzEpO2lmKCFufHwhTnVtYmVyLmlzRmluaXRlKG4ud2lkdGgpfHwhTnVtYmVyLmlzRmluaXRlKG4uaGVpZ2h0KXx8bi53aWR0aDw9MHx8bi5oZWlnaHQ8PTApY29udGludWU7bGV0IGk9TXIodC5jaGFydCksYT17d2lkdGhQdDpuLndpZHRoKihsdC9jdCksaGVpZ2h0UHQ6bi5oZWlnaHQqKGx0L2N0KSx0YXJnZXRXaWR0aFB4OnI/LmVmZmVjdGl2ZURwcj09PXZvaWQgMD92b2lkIDA6bi53aWR0aCpyLmVmZmVjdGl2ZURwcix0YXJnZXRIZWlnaHRQeDpyPy5lZmZlY3RpdmVEcHI9PT12b2lkIDA/dm9pZCAwOm4uaGVpZ2h0KnIuZWZmZWN0aXZlRHByfSxvPVtdLGM9ITA7Zm9yKGxldCBlIG9mIGkpe2xldCB0PU9yKGUsYSk7aWYoIXQpe2M9ITE7YnJlYWt9by5wdXNoKHt1c2FnZTplLHNpemU6dH0pfWMmJnUucHVzaCh7Y2hhcnQ6dCxmcmFtZTphLHVzYWdlczpvfSl9bGV0IGQ9TnIodS5tYXAoKHtjaGFydDplfSk9PmUuY2hhcnQpLChlLHQpPT5PcihlLHVbdF0uZnJhbWUpIT1udWxsKSxmPW5ldyBNYXA7Zm9yKGxldCBlIG9mIGQpe2xldHtmaWxsOnR9PWUsbj1fcih0KTtmLnNldChuLHtmaWxsOnQsd2lkdGhQdDowLGhlaWdodFB0OjAscHJlc2VydmVOYXR1cmFsU2l6ZTplLnByZXNlcnZlTmF0dXJhbFNpemUsaGFzU291cmNlQ3JvcDplLmhhc1NvdXJjZUNyb3B9KX1mb3IobGV0IGUgb2YgdSlmb3IobGV0e3VzYWdlOnQsc2l6ZTpufW9mIGUudXNhZ2VzKXtsZXR7ZmlsbDplfT10LHI9X3IoZSksaT1mLmdldChyKTtpZighaSljb250aW51ZTtsZXQgYT1pLnByZXNlcnZlTmF0dXJhbFNpemV8fHQucHJlc2VydmVOYXR1cmFsU2l6ZTtmLnNldChyLHsuLi5pLHdpZHRoUHQ6TWF0aC5tYXgoaS53aWR0aFB0LG4ud2lkdGhQdCksaGVpZ2h0UHQ6TWF0aC5tYXgoaS5oZWlnaHRQdCxuLmhlaWdodFB0KSx0YXJnZXRXaWR0aFB4OmE/dm9pZCAwOk1hdGgubWF4KGkudGFyZ2V0V2lkdGhQeD8/MCxuLnRhcmdldFdpZHRoUHg/PzApfHx2b2lkIDAsdGFyZ2V0SGVpZ2h0UHg6YT92b2lkIDA6TWF0aC5tYXgoaS50YXJnZXRIZWlnaHRQeD8/MCxuLnRhcmdldEhlaWdodFB4Pz8wKXx8dm9pZCAwLHByZXNlcnZlTmF0dXJhbFNpemU6YSxoYXNTb3VyY2VDcm9wOmkuaGFzU291cmNlQ3JvcHx8dC5oYXNTb3VyY2VDcm9wfSl9Zm9yKGxldFtlLHRdb2YgZil7bGV0e2ZpbGw6bix3aWR0aFB0OnIsaGVpZ2h0UHQ6aSx0YXJnZXRXaWR0aFB4Om8sdGFyZ2V0SGVpZ2h0UHg6cyxoYXNTb3VyY2VDcm9wOmN9PXQ7Yk0oYSxlLHtpbWFnZVBhdGg6bi5pbWFnZVBhdGgsbWltZVR5cGU6bi5taW1lVHlwZSxzdmdJbWFnZVBhdGg6bi5zdmdJbWFnZVBhdGgsd2lkdGhQdDpyLGhlaWdodFB0Omksc3JjUmVjdDpjP3tsOjAsdDowLHI6MCxiOjB9Om51bGwsZHVvdG9uZTpuLmR1b3RvbmU/P251bGwsZmFpbENsb3NlZE9uRHVvdG9uZUZhaWx1cmU6ITAsLi4ubyYmcz97dGFyZ2V0V2lkdGhQeDpvLHRhcmdldEhlaWdodFB4OnN9Ont9fSl9aWYoYS5zaXplPT09MClyZXR1cm47bGV0IHA9eWcocj8uaW1hZ2VSZXNvdXJjZXMpLG09Q2coKGF3YWl0IFByb21pc2UuYWxsKFsuLi5hXS5tYXAoYXN5bmMoW2UsdF0pPT57aWYoIXQudGFyZ2V0V2lkdGhQeHx8IXQudGFyZ2V0SGVpZ2h0UHh8fHQubWltZVR5cGU9PT1gaW1hZ2Uvc3ZnK3htbGB8fHQuZHVvdG9uZXx8IXQuZHVvdG9uZSYmTF8oe3N2Z0ltYWdlUGF0aDp0LnN2Z0ltYWdlUGF0aCxzcmNSZWN0OnQuc3JjUmVjdH0pKXJldHVybiBudWxsO2lmKFVoKHQubWltZVR5cGUpJiYocC5yZXNvbHV0aW9uPT09YGRpc3BsYXlgfHxwLnN0cmF0ZWd5PT09YGFkYXB0aXZlYCkpcmV0dXJue2tleTplLHRhcmdldFdpZHRoUHg6dC50YXJnZXRXaWR0aFB4LHRhcmdldEhlaWdodFB4OnQudGFyZ2V0SGVpZ2h0UHgscmV0YWluZWRTdXJmYWNlQ291bnQ6MX07bGV0IG49YXdhaXQgUGcodC5pbWFnZVBhdGgsdC5taW1lVHlwZSxpKS5jYXRjaCgoKT0+bnVsbCk7cmV0dXJuIW4/LmRpbWVuc2lvbnN8fCFXaChuLmZvcm1hdCxyPy50aWZmIT09dm9pZCAwKT9udWxsOntrZXk6ZSx0YXJnZXRXaWR0aFB4OnQudGFyZ2V0V2lkdGhQeCx0YXJnZXRIZWlnaHRQeDp0LnRhcmdldEhlaWdodFB4LHNvdXJjZVdpZHRoUHg6bi5kaW1lbnNpb25zLndpZHRoLHNvdXJjZUhlaWdodFB4Om4uZGltZW5zaW9ucy5oZWlnaHQscmV0YWluZWRTdXJmYWNlQ291bnQ6MX19KSkpLmZpbHRlcihlPT5lIT09bnVsbCkscCk7Zm9yKGxldFtlLHRdb2YgYSl7aWYodC5taW1lVHlwZT09PWBpbWFnZS9zdmcreG1sYHx8IXQuZHVvdG9uZSYmTF8oe3N2Z0ltYWdlUGF0aDp0LnN2Z0ltYWdlUGF0aCxzcmNSZWN0OnQuc3JjUmVjdH0pKWNvbnRpbnVlO2xldCBuPW0udGFyZ2V0cy5nZXQoZSk7dC50YXJnZXRXaWR0aFB4PW4/LndpZHRoLHQudGFyZ2V0SGVpZ2h0UHg9bj8uaGVpZ2h0LHQucGxhbm5lZFBpeGVsTGltaXQ9bj8ubWF4UmV0YWluZWRQaXhlbHN9YXdhaXQgUHJvbWlzZS5hbGwoWy4uLmEuZW50cmllcygpXS5tYXAoYXN5bmMoW2Usbl0pPT57dHJ5e2xldCBhPWF3YWl0IENNKG4uaW1hZ2VQYXRoLG4ubWltZVR5cGUsbi5zdmdJbWFnZVBhdGgsaSxuLndpZHRoUHQsbi5oZWlnaHRQdCxuLnNyY1JlY3Qsbi5kdW90b25lLHI/Lm9mZnNjcmVlbkZhY3Rvcnksbi5mYWlsQ2xvc2VkT25EdW90b25lRmFpbHVyZT8/ITEscj8udGlmZixuLnRhcmdldFdpZHRoUHgmJm4udGFyZ2V0SGVpZ2h0UHg/e3RhcmdldFdpZHRoUHg6bi50YXJnZXRXaWR0aFB4LHRhcmdldEhlaWdodFB4Om4udGFyZ2V0SGVpZ2h0UHh9OnZvaWQgMCxyPy5zdmdEZWNvZGVyLG4ucGxhbm5lZFBpeGVsTGltaXQpO3Quc2V0KGUsYSl9Y2F0Y2gobil7aWYocmcobixgdGlmZmApfHx3aChuKSl7dC5zZXQoZSxudWxsKSxLayh0LGUsYHRpZmZgKTtyZXR1cm59aWYoZGUobikpdGhyb3cgbjt0LmRlbGV0ZShlKX19KSl9ZnVuY3Rpb24gVE0oZSx0LG4scil7aWYoJEEodCkpcmV0dXJuIHQ7bGV0IGk9ak0uZ2V0KHQpO2lmKGkpcmV0dXJuIGk7bGV0IGE9ey4uLnQscm93SGVpZ2h0czp7Li4udC5yb3dIZWlnaHRzfX07c2oodCxhKTtsZXQgbz1pQSh0KS5tYXhpbXVtRGlnaXRXaWR0aDtyZXR1cm4gRkQuZm9yV29ya3NoZWV0KGEsbyksUUEoZSxhLG4sciksRkQuZm9yV29ya3NoZWV0KGEsbyksak0uc2V0KHQsYSksYX1hc3luYyBmdW5jdGlvbiBFTShlLHQsbixyPXt9LGkpe2xldCBhPSgpPT5ETShlLHQsbixyLGkpLG89IWUud3MuaXNEaWFsb2dTaGVldCYmKChlLndzLmltYWdlcz8ubGVuZ3RoPz8wKT4wfHwoZS53cy5zaGFwZUdyb3Vwcz8uc29tZShlPT5lLnNoYXBlcy5zb21lKGU9PmUuZ2VvbS50eXBlPT09YGltYWdlYCkpPz8hMSl8fE5yKChlLndzLmNoYXJ0cz8/W10pLm1hcChlPT5lLmNoYXJ0KSkubGVuZ3RoPjApO3JldHVybiByLmZldGNoSW1hZ2UmJm8/SWcoci5mZXRjaEltYWdlLHIuaW1hZ2VSZXNvdXJjZXMsYSk6YSgpfWFzeW5jIGZ1bmN0aW9uIERNKGUsdCxuLHI9e30saSl7aWYocltBTV0/LigpPT09ITEpcmV0dXJuO2xldCBhPWUuc3R5bGVzLG89dC5nZXRDb250ZXh0KGAyZGApO2lmKCFvKXRocm93IEVycm9yKGBYTFNYIHJlbmRlciB0YXJnZXQgZG9lcyBub3QgcHJvdmlkZSBhIDItRCBjYW52YXMgY29udGV4dGApO2xldCBzPWUud3MuaXNEaWFsb2dTaGVldD9lLndzOlRNKG8sZS53cyxhLGUuY2prRmFsbGJhY2spLGM9RnYodCk/dC5jbGllbnRXaWR0aHx8ODAwOnQud2lkdGgsbD1Gdih0KT90LmNsaWVudEhlaWdodHx8NjAwOnQuaGVpZ2h0LHU9ci53aWR0aD8/YyxkPXIuaGVpZ2h0Pz9sLGY9ci5kcHI/P0l2KCkscD1Ccih1KmYsZCpmKSxtPXAuY2xhbXBlZD9mKnAuc2NhbGU6ZixoPW5ldyBNYXA7aWYocy5pc0RpYWxvZ1NoZWV0fHxhd2FpdCB3TShzLGgsci5mZXRjaEltYWdlLHt2aWV3cG9ydDpuLHdpZHRoOnUsaGVpZ2h0OmQsY2VsbFNjYWxlOnIuY2VsbFNjYWxlLGZyZWV6ZVJvd3M6ci5mcmVlemVSb3dzLGZyZWV6ZUNvbHM6ci5mcmVlemVDb2xzLHRpZmY6ZS50aWZmLGVmZmVjdGl2ZURwcjptLHN2Z0RlY29kZXI6aSxpbWFnZVJlc291cmNlczpyLmltYWdlUmVzb3VyY2VzfSksIXMuaXNEaWFsb2dTaGVldCYmZS5tYXRoJiZ2aihzKSYmYXdhaXQgeWoocyxlLm1hdGgpLHJbQU1dPy4oKT09PSExKXJldHVybjtsZXQgZz1wLndpZHRoLF89cC5oZWlnaHQ7aWYodC53aWR0aCE9PWcmJih0LndpZHRoPWcpLHQuaGVpZ2h0IT09XyYmKHQuaGVpZ2h0PV8pLEZ2KHQpKXtsZXQgZT1gJHt1fXB4YCxuPWAke2R9cHhgO3Quc3R5bGUud2lkdGghPT1lJiYodC5zdHlsZS53aWR0aD1lKSx0LnN0eWxlLmhlaWdodCE9PW4mJih0LnN0eWxlLmhlaWdodD1uKX1sZXQgdj10LmdldENvbnRleHQoYDJkYCk7aWYodi5zZXRUcmFuc2Zvcm0obSwwLDAsbSwwLDApLHMucGFyc2VFcnJvcil7a00odix1LGQscy5uYW1lLHMucGFyc2VFcnJvcik7cmV0dXJufWlmKHMuaXNEaWFsb2dTaGVldCl7T00odix1LGQpO3JldHVybn1jaih2LHMsYSxuLHsuLi5yLGRwcjptLGxvYWRlZEltYWdlczpoLHRocmVlRDplLnRocmVlRCxyZWdpb25NYXA6ZS5yZWdpb25NYXAsY2hhcnRFeDplLmNoYXJ0RXh9LGUuY2prRmFsbGJhY2spfWZ1bmN0aW9uIE9NKGUsdCxuKXtlLnNhdmUoKSxlLmZpbGxTdHlsZT1gI2Y3ZjdmOGAsZS5maWxsUmVjdCgwLDAsdCxuKTtsZXQgcj1NYXRoLm1pbih0LG4pO2UuZmlsbFN0eWxlPWAjNTU1NTU1YCxlLnRleHRBbGlnbj1gY2VudGVyYCxlLnRleHRCYXNlbGluZT1gbWlkZGxlYCxlLmZvbnQ9YCR7TWF0aC5tYXgoMTMsciouMDM1KX1weCBzYW5zLXNlcmlmYCxlLmZpbGxUZXh0KGBMZWdhY3kgZGlhbG9nIHNoZWV0cyBhcmUgbm90IGRpc3BsYXllZGAsdC8yLG4vMiksZS5yZXN0b3JlKCl9ZnVuY3Rpb24ga00oZSx0LG4scixpKXtlLnNhdmUoKSxlLmZpbGxTdHlsZT1gI2Y3ZjdmOGAsZS5maWxsUmVjdCgwLDAsdCxuKTtsZXQgYT10LzIsbz1NYXRoLm1pbih0LG4pLHM9TWF0aC5tYXgoMjAsbyouMSk7ZS5maWxsU3R5bGU9YCNiMjNiM2JgLGUudGV4dEFsaWduPWBjZW50ZXJgLGUudGV4dEJhc2VsaW5lPWBtaWRkbGVgLGUuZm9udD1gJHtzfXB4IHNhbnMtc2VyaWZgLGUuZmlsbFRleHQoYOKaoGAsYSxuKi4zMik7bGV0IGM9TWF0aC5tYXgoMTMsbyouMDM1KTtlLmZpbGxTdHlsZT1gIzMzMzMzM2AsZS5mb250PWA2MDAgJHtjfXB4IHNhbnMtc2VyaWZgLGUuZmlsbFRleHQoYFNoZWV0ICIke3J9IiBjb3VsZCBub3QgYmUgZGlzcGxheWVkYCxhLG4qLjQ2KTtsZXQgbD1NYXRoLm1heCgxMCxvKi4wMjIpO2UuZmlsbFN0eWxlPWAjNjY2NjY2YCxlLmZvbnQ9YCR7bH1weCBzYW5zLXNlcmlmYDtsZXQgdT1NYXRoLm1pbih0Ki44LDY0MCksZD1pLnNwbGl0KC9ccysvKSxmPVtdLHA9YGA7Zm9yKGxldCB0IG9mIGQpe2xldCBuPXA/YCR7cH0gJHt0fWA6dDtpZihlLm1lYXN1cmVUZXh0KG4pLndpZHRoPnUmJnA/KGYucHVzaChwKSxwPXQpOnA9bixmLmxlbmd0aD49NClicmVha31wJiZmLmxlbmd0aDw0JiZmLnB1c2gocCk7bGV0IG09bCoxLjQsaD1uKi41MittO2ZvcihsZXQgdCBvZiBmLnNsaWNlKDAsNCkpZS5maWxsVGV4dCh0LGEsaCksaCs9bTtlLnJlc3RvcmUoKX12YXIgQU0sak0sTU09dCgoKCk9PntiRSgpLHBNKCksSUQoKSxXaygpLFlrKCksQU09U3ltYm9sKGB4bHN4LXJlbmRlci1jb21taXQtZ3VhcmRgKSxqTT1uZXcgV2Vha01hcH0pKSxOTT1uKHtERUxJTUlURURfVEVYVF9NQVhfU09VUkNFX0JZVEVTOigpPT5STSxhc3NlcnREZWxpbWl0ZWRUZXh0U291cmNlQnl0ZXM6KCk9PlBNLHBhcnNlRGVsaW1pdGVkV29ya3NoZWV0OigpPT5JTSxyZXNvbHZlRGVsaW1pdGVkVGV4dE9wdGlvbnM6KCk9PkZNfSk7ZnVuY3Rpb24gUE0oZSl7aWYoZT5STSl0aHJvdyBmRChMTSx2b2lkIDAsYGRlbGltaXRlZC10ZXh0LXNvdXJjZWAsYGJ5dGVzYCxSTSxlKX1mdW5jdGlvbiBGTShlKXtpZighZXx8ZS5mb3JtYXQhPT1gY3N2YCYmZS5mb3JtYXQhPT1gdHN2YCYmZS5mb3JtYXQhPT1gZGVsaW1pdGVkLXRleHRgKXRocm93IFR5cGVFcnJvcihgZm9ybWF0IG11c3QgYmUgJ2NzdicsICd0c3YnLCBvciAnZGVsaW1pdGVkLXRleHQnYCk7bGV0IHQ9ZS5kZWxpbWl0ZXI/PyhlLmZvcm1hdD09PWB0c3ZgP2AJYDplLmZvcm1hdD09PWBjc3ZgP2AsYDp2b2lkIDApO2lmKHQ9PT12b2lkIDApdGhyb3cgVHlwZUVycm9yKGBkZWxpbWl0ZXIgaXMgcmVxdWlyZWQgZm9yIGZvcm1hdCAnZGVsaW1pdGVkLXRleHQnYCk7aWYodC5sZW5ndGghPT0xKXRocm93IFR5cGVFcnJvcihgZGVsaW1pdGVyIG11c3QgYmUgZXhhY3RseSBvbmUgY2hhcmFjdGVyYCk7aWYodD09PWAiYHx8dD09PWBccmB8fHQ9PT1gCmApdGhyb3cgVHlwZUVycm9yKGBkZWxpbWl0ZXIgY2Fubm90IGJlIGEgcXVvdGUgb3IgcmVjb3JkIHNlcGFyYXRvcmApO2xldCBuPWUuZW5jb2Rpbmc/P2B1dGYtOGA7aWYodHlwZW9mIG4hPWBzdHJpbmdgfHxuLnRyaW0oKT09PWBgKXRocm93IFR5cGVFcnJvcihgZW5jb2RpbmcgbXVzdCBiZSBhIG5vbi1lbXB0eSBUZXh0RGVjb2RlciBsYWJlbGApO2xldCByPWUuc2hlZXROYW1lPz9gU2hlZXQxYDtpZih0eXBlb2YgciE9YHN0cmluZ2B8fHIudHJpbSgpPT09YGApdGhyb3cgVHlwZUVycm9yKGBzaGVldE5hbWUgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmdgKTtyZXR1cm4gT2JqZWN0LmZyZWV6ZSh7ZGVsaW1pdGVyOnQsZW5jb2Rpbmc6bixzaGVldE5hbWU6cn0pfWZ1bmN0aW9uIElNKGUsdCl7UE0oZS5ieXRlTGVuZ3RoKTtsZXQgbjt0cnl7bj1uZXcgVGV4dERlY29kZXIodC5lbmNvZGluZyx7ZmF0YWw6ITB9KS5kZWNvZGUoZSl9Y2F0Y2goZSl7dGhyb3cgVHlwZUVycm9yKGBEZWxpbWl0ZWQgdGV4dCBjb3VsZCBub3QgYmUgZGVjb2RlZCBhcyAke3QuZW5jb2Rpbmd9YCx7Y2F1c2U6ZX0pfWxldCByPVtdLGk9W10sYT1gYCxvLHM9MSxjPTEsbD0wLHU9MCxkPSExLGY9ITEscD1lPT57YSs9ZSxhLmxlbmd0aD49NDA5NiYmKChvPz89W10pLnB1c2goYSksYT1gYCl9LG09KCk9PntpZihsKyssbD5fRCl0aHJvdyBmRChMTSx2b2lkIDAsYHdvcmtzaGVldC1tb2RlbGAsYGNlbGxzYCxfRCxsKTtpZihjPjE2Mzg0KXRocm93IFJhbmdlRXJyb3IoYERlbGltaXRlZCB0ZXh0IHJvdyAke3N9IGhhcyBtb3JlIHRoYW4gJHtQRH0gY29sdW1uc2ApO2xldCBlPW8/by5qb2luKGBgKSthOmE7aWYoZSE9PWBgKXtpZih1Kz1uRChlLHZEKzEpLHU+dkQpdGhyb3cgZkQoTE0sdm9pZCAwLGB3b3Jrc2hlZXQtY2VsbC1jb250ZW50YCxgb3duZWQtdXRmOC1ieXRlc2AsdkQsdSk7aS5wdXNoKHtyb3c6cyxjb2w6Yyx2YWx1ZTp7dHlwZTpgdGV4dGAsdGV4dDplfX0pfWE9YGAsbz12b2lkIDAsYysrLGY9ITF9LGg9KCk9PntpZihzPmdEKXRocm93IGZEKExNLHZvaWQgMCxgd29ya3NoZWV0LW1vZGVsYCxgcm93c2AsZ0Qscyk7ci5wdXNoKHtpbmRleDpzLGhlaWdodDpudWxsLGNlbGxzOml9KSxpPVtdLHMrKyxjPTF9O2ZvcihsZXQgZT0wO2U8bi5sZW5ndGg7ZSsrKXtsZXQgcj1uW2VdO2lmKGQpe2lmKHIhPT1gImApe3I9PT1gXHJgPyhwKGAKYCksbltlKzFdPT09YApgJiZlKyspOnAocik7Y29udGludWV9bltlKzFdPT09YCJgPyhwKGAiYCksZSsrKTooZD0hMSxmPSEwKTtjb250aW51ZX1pZihmKXtpZihyIT09dC5kZWxpbWl0ZXImJnIhPT1gXHJgJiZyIT09YApgKXRocm93IFN5bnRheEVycm9yKGBVbmV4cGVjdGVkIGNoYXJhY3RlciBhZnRlciBjbG9zaW5nIHF1b3RlIGF0IHJvdyAke3N9LCBjb2x1bW4gJHtjfWApfWVsc2UgaWYocj09PWAiYCYmYT09PWBgJiZvPT09dm9pZCAwKXtkPSEwO2NvbnRpbnVlfWlmKHI9PT10LmRlbGltaXRlcil7bSgpO2NvbnRpbnVlfWlmKHI9PT1gXHJgfHxyPT09YApgKXttKCksaCgpLHI9PT1gXHJgJiZuW2UrMV09PT1gCmAmJmUrKztjb250aW51ZX1wKHIpfWlmKGQpdGhyb3cgU3ludGF4RXJyb3IoYFVudGVybWluYXRlZCBxdW90ZWQgZmllbGQgYXQgcm93ICR7c30sIGNvbHVtbiAke2N9YCk7bGV0IGc9bi5lbmRzV2l0aChgCmApfHxuLmVuZHNXaXRoKGBccmApO24ubGVuZ3RoPjAmJiFnJiYobSgpLGgoKSk7bGV0IF89e25hbWU6dC5zaGVldE5hbWUscm93czpyLGNvbFdpZHRoczp7fSxyb3dIZWlnaHRzOnt9LGRlZmF1bHRDb2xXaWR0aDo4LjQzLGRlZmF1bHRSb3dIZWlnaHQ6MTUsbWVyZ2VDZWxsczpbXSxmcmVlemVSb3dzOjAsZnJlZXplQ29sczowLGNvbmRpdGlvbmFsRm9ybWF0czpbXSxpbWFnZXM6W10sY2hhcnRzOltdLGRlZmF1bHRGb250RmFtaWx5OmBDYWxpYnJpYCxkZWZhdWx0Rm9udFNpemU6MTF9LHY9Y0QoXyk7cmV0dXJuIHBEKHYsTE0sdm9pZCAwKSxtRCh2Lmpzb25CeXRlcyxMTSx2b2lkIDApLHt3b3JrYm9vazp7d29ya2Jvb2s6e3NoZWV0czpbe25hbWU6dC5zaGVldE5hbWUsc2hlZXRJZDoxLHJJZDpgcklkMWB9XX0sc3R5bGVzOnpNLHNoYXJlZFN0cmluZ3M6W119LHdvcmtzaGVldDpffX12YXIgTE0sUk0sek0sQk09dCgoKCk9PntvRCgpLFREKCksSUQoKSxMTT1gbG9hZC1kZWxpbWl0ZWQtdGV4dGAsUk09eUQsek09T2JqZWN0LmZyZWV6ZSh7Zm9udHM6W09iamVjdC5mcmVlemUoe2JvbGQ6ITEsaXRhbGljOiExLHVuZGVybGluZTohMSxzdHJpa2U6ITEsc2l6ZToxMSxjb2xvcjpudWxsLG5hbWU6YENhbGlicmlgfSldLGZpbGxzOltPYmplY3QuZnJlZXplKHtwYXR0ZXJuVHlwZTpgbm9uZWAsZmdDb2xvcjpudWxsLGJnQ29sb3I6bnVsbH0pXSxib3JkZXJzOltPYmplY3QuZnJlZXplKHtsZWZ0Om51bGwscmlnaHQ6bnVsbCx0b3A6bnVsbCxib3R0b206bnVsbH0pXSxjZWxsWGZzOltPYmplY3QuZnJlZXplKHtmb250SWQ6MCxmaWxsSWQ6MCxib3JkZXJJZDowLG51bUZtdElkOjAsYWxpZ25IOm51bGwsYWxpZ25WOm51bGwsd3JhcFRleHQ6ITF9KV0sbnVtRm10czpbXSxkeGZzOltdfSl9KSk7YkUoKSxvdygpLFREKCksSUQoKTtjb25zdCBWTT1uZXcgWXYoS0Use2ZyZWVBcmNoaXZlOmU9PmUuZnJlZSgpLHJlaW5pdDpxRX0pO2xldCBITT1ganBgLFVNPW51bGwsV009ITEsR009e30sS009UHJvbWlzZS5yZXNvbHZlKCk7Y29uc3QgcU09bmV3IE1hcCxKTT1uZXcgekQsWU09bmV3IE1hcDtsZXQgWE09e3Jvd3M6MCxjZWxsczowLG93bmVkVXRmOEJ5dGVzOjAsanNvbkJ5dGVzOjB9O2NvbnN0IFpNPW5ldyBaRSh7bWF4RW50cmllczo2NCxtYXhCeXRlczpifSksUU09UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+KHBNKCksWGspKSwkTT1Qcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT4oTU0oKSxtTSkpLGVOPVByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PihCTSgpLE5NKSksdE49bmV3IEhEKCgpPT5WTS5hcmNoaXZlLChlLHQsbixyKT0+e2xldCBpPXFNLmdldChlKSxhPVlNLmdldChlKSxvPWREKFhNLG4sYSk7cmV0dXJuIGhEKG8sYGdldC13b3Jrc2hlZXQtd29ya2VyYCx2b2lkIDAscikscU0uc2V0KGUsdCkse2NvbW1pdDooKT0+e1hNPW8sWU0uc2V0KGUsbil9LHJvbGxiYWNrOigpPT57cU0uZ2V0KGUpPT09dCYmKGk/cU0uc2V0KGUsaSk6cU0uZGVsZXRlKGUpKX19fSxlPT57bGV0IHQ9Vk0uYXJjaGl2ZTtpZighdCl0aHJvdyBFcnJvcihgV29ya2Jvb2sgbm90IGxvYWRlZGApO3JldHVybiBWTS5ydW4oKCk9PmUodCkpfSxlPT57VU0mJiRFKGUsVU0uc2hhcmVkU3RyaW5ncyl9KSxuTj0oZSx0KT0+c2VsZi5wb3N0TWVzc2FnZShlLHQpLHJOPShlLHQpPT5uTihlLHQpLGlOPW5ldyBRQyhuTik7ZnVuY3Rpb24gYU4oZSx0KXtyZXR1cm4gWk0uZ2V0KGUsdCxhc3luYygpPT57bGV0IG49Vk0uYXJjaGl2ZTtpZighbil0aHJvdyBFcnJvcihgV29ya2Jvb2sgbm90IGxvYWRlZGApO2xldCByPVZNLnJ1bigoKT0+bi5leHRyYWN0X2ltYWdlKGUpKTtyZXR1cm4gbmV3IEJsb2IoW3JdLHt0eXBlOnR9KX0pfXNlbGYub25tZXNzYWdlPWFzeW5jIGU9PntsZXQgdD1lLmRhdGE7aWYoWkModCkpe2lOLmFjY2VwdCh0KTtyZXR1cm59aWYoVUQodCkpe2F3YWl0IHROLmRpc3BhdGNoU2FmZWx5KHQsck4pO3JldHVybn1pZih0LnR5cGU9PT1gaW5pdGApe1ZNLnNldFdhc21JbnB1dChCdih0Lndhc21VcmwpPz90Lndhc21VcmwpO3JldHVybn1pZih0LnR5cGU9PT1gcmVsZWFzZVZpZXdQcm9qZWN0aW9uYCl7Sk0ucmVsZWFzZSh0LnByb2plY3Rpb25JZCk7cmV0dXJufWxldCBuPXQuaWQ7dC50eXBlPT09YG9wZW5TaGVldFNlc3Npb25gJiZ0Ti5yZXNlcnZlT3Blbih0KTt0cnl7aWYodC50eXBlPT09YG9wZW5TaGVldFNlc3Npb25gKXtpZighV00pdGhyb3cgRXJyb3IoYFdvcmtzaGVldCBpcyBhbHJlYWR5IG1hdGVyaWFsaXplZGApO2lmKGF3YWl0IFZNLmVuc3VyZVJlYWR5KCksVk0uYXJjaGl2ZSl7bGV0IGU9Vk0uYXJjaGl2ZTtWTS5ydW4oKCk9PmUuYXNzZXJ0X2hlYWx0aHkoKSl9YXdhaXQgdE4ub3Blbih0LnNoZWV0SW5kZXgsdC5zaGVldE5hbWUsdCksYXdhaXQgdE4ucG9zdE9wZW5lZFNhZmVseSh0LCgpPT5yTih7dHlwZTpgc2hlZXRTZXNzaW9uT3BlbmVkYCxpZDpuLHNlc3Npb25JZDp0LnNlc3Npb25JZCxvcGVyYXRpb25JZDp0Lm9wZXJhdGlvbklkLGdlbmVyYXRpb246dC5nZW5lcmF0aW9ufSksZT0+ck4oe3R5cGU6YGVycm9yYCxpZDpuLC4uLnl5KGUpfSkpO3JldHVybn0odC50eXBlPT09YHBhcnNlYHx8dC50eXBlPT09YHBhcnNlRGVsaW1pdGVkVGV4dGApJiZhd2FpdCB0Ti5yZXNldCgpLGF3YWl0IHROLnJ1bihhc3luYygpPT57aWYoKHQudHlwZT09PWBwYXJzZWB8fFdNKSYmYXdhaXQgVk0uZW5zdXJlUmVhZHkoKSx0LnR5cGUhPT1gcGFyc2VgJiZ0LnR5cGUhPT1gcGFyc2VEZWxpbWl0ZWRUZXh0YCYmVk0uYXJjaGl2ZSl7bGV0IGU9Vk0uYXJjaGl2ZTtWTS5ydW4oKCk9PmUuYXNzZXJ0X2hlYWx0aHkoKSl9aWYodC50eXBlPT09YHBhcnNlYHx8dC50eXBlPT09YHBhcnNlRGVsaW1pdGVkVGV4dGApe2lmKEhNPXQuY2prRmFsbGJhY2s/P2BqcGAscU0uY2xlYXIoKSxKTS5jbGVhcigpLFlNLmNsZWFyKCksWE09e3Jvd3M6MCxjZWxsczowLG93bmVkVXRmOEJ5dGVzOjAsanNvbkJ5dGVzOjB9LGNfKGFOKSxDXyhhTiksWk0uY2xlYXIoKSxHTT1hd2FpdCBxQyh0LnJlbmRlcmVycyksdC50eXBlPT09YHBhcnNlRGVsaW1pdGVkVGV4dGApe1ZNLmRpc3Bvc2VBcmNoaXZlKCksV009ITE7bGV0e3BhcnNlRGVsaW1pdGVkV29ya3NoZWV0OmV9PWF3YWl0IGVOLHI9ZSh0LmRhdGEsdC5vcHRpb25zKTtVTT1yLndvcmtib29rLEhNPXdFKFVNLEhNKTtsZXQgaT1jRChyLndvcmtzaGVldCk7WE09aSxxTS5zZXQoMCxyLndvcmtzaGVldCksWU0uc2V0KDAsaSksS009dC51c2VHb29nbGVGb250cz9wKENFKHIud29ya2Jvb2ssSE0pLHhFKTpQcm9taXNlLnJlc29sdmUoKTtsZXQgYT1uZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoSlNPTi5zdHJpbmdpZnkoci53b3Jrc2hlZXQpKS5idWZmZXI7ck4oe3R5cGU6YGRlbGltaXRlZFRleHRQYXJzZWRgLGlkOm4sd29ya2Jvb2s6VU0sd29ya3NoZWV0SnNvbjphfSxbYV0pO3JldHVybn1XTT0hMDtsZXRbZSxyLGldPVlDKHQucmVzb3VyY2VQb2xpY3kpLGE9QkQoKCk9PlZNLnJ1bigoKT0+e2xldCBuPW5ldyBURShuZXcgVWludDhBcnJheSh0LmRhdGEpLGUscixpKTtyZXR1cm4gVk0uc2V0QXJjaGl2ZShuKSxKU09OLnBhcnNlKG5ldyBUZXh0RGVjb2RlcigpLmRlY29kZShuLnBhcnNlKCkpKX0pLCgpPT5WTS5ydW4oKCk9PlZNLmFyY2hpdmUucmVzb3VyY2VfdXNhZ2UoKSkpO1VNPWEud29ya2Jvb2ssSE09d0UoVU0sSE0pLHQudXNlR29vZ2xlRm9udHMmJihLTT1wKENFKFVNLEhNKSx4RSkpLHJOKHt0eXBlOmBwYXJzZWRgLGlkOm4sd29ya2Jvb2s6VU0sdXNhZ2U6YS51c2FnZX0pO3JldHVybn1pZih0LnR5cGU9PT1gcmVuZGVyVmlld3BvcnRgKXtpZighVU0pdGhyb3cgRXJyb3IoYFdvcmtib29rIG5vdCBsb2FkZWRgKTthd2FpdCBLTTtsZXR7aW5oZXJpdFNoZWV0UmVuZGVyQ2FjaGU6ZSxtYXJrQXV0b1Jvd0hlaWdodHNQcmVwYXJlZDpyfT1hd2FpdCBRTSx7cmVuZGVyV29ya3NoZWV0Vmlld3BvcnQ6aX09YXdhaXQgJE0sYT1xTS5nZXQodC5zaGVldEluZGV4KTtpZighYSl0aHJvdyBFcnJvcihgV29ya3NoZWV0IGlzIG5vdCBsb2FkZWQgdGhyb3VnaCBpdHMgcHVsbCBzZXNzaW9uYCk7bGV0e3NpemVPdmVycmlkZXM6bywuLi5zfT10Lm9wdHMsYz1KTS5yZXNvbHZlKGEsdC5zaGVldEluZGV4LHQudmlld1Byb2plY3Rpb24sbyksbD1jLndvcmtzaGVldDtjLmNyZWF0ZWQmJmUoYSxsKSx0LnZpZXdQcm9qZWN0aW9uPy5hdXRvUm93SGVpZ2h0c1ByZXBhcmVkJiZyKGwpO2xldCB1PXQubGF5b3V0TWV0cmljcz8ubWF4aW11bURpZ2l0V2lkdGg7aWYodSE9PXZvaWQgMCl7aWYoIU51bWJlci5pc0Zpbml0ZSh1KXx8dTw9MCl0aHJvdyBFcnJvcihgWExTWCBtYXhpbXVtIGRpZ2l0IHdpZHRoIG11c3QgYmUgYSBmaW5pdGUgcG9zaXRpdmUgbnVtYmVyYCk7RkQuZm9yV29ya3NoZWV0KGwsdSl9bGV0IGQ9bmV3IE9mZnNjcmVlbkNhbnZhcygxLDEpO2F3YWl0IGkoey4uLlFFKGwsVU0uc3R5bGVzLEdNKSxjamtGYWxsYmFjazpITX0sZCx0LnZpZXdwb3J0LHsuLi5zLGZldGNoSW1hZ2U6YU59LGlOLmRlY29kZSksQXkock4se3R5cGU6YHZpZXdwb3J0UmVuZGVyZWRgLGlkOm4sYml0bWFwOmQudHJhbnNmZXJUb0ltYWdlQml0bWFwKCl9KTtyZXR1cm59aWYodC50eXBlPT09YGV4dHJhY3RJbWFnZWApe2xldCBlPVZNLmFyY2hpdmU7aWYoIWUpdGhyb3cgRXJyb3IoYFdvcmtib29rIG5vdCBsb2FkZWRgKTtsZXQgcj1WTS5ydW4oKCk9PmUuZXh0cmFjdF9pbWFnZSh0LnBhdGgpLmJ1ZmZlcik7ck4oe3R5cGU6YGltYWdlRXh0cmFjdGVkYCxpZDpuLGJ5dGVzOnJ9LFtyXSk7cmV0dXJufWlmKHQudHlwZT09PWByZXNvdXJjZVVzYWdlYCl7bGV0IGU9Vk0uYXJjaGl2ZTtpZighZSl0aHJvdyBFcnJvcihgV29ya2Jvb2sgbm90IGxvYWRlZGApO3JOKHt0eXBlOmByZXNvdXJjZVVzYWdlYCxpZDpuLHVzYWdlOlZNLnJ1bigoKT0+b3koZS5yZXNvdXJjZV91c2FnZSgpKSl9KTtyZXR1cm59aWYodC50eXBlPT09YHRvTWFya2Rvd25gKXtsZXQgZT1WTS5hcmNoaXZlO2lmKCFlKXRocm93IEVycm9yKGBXb3JrYm9vayBub3QgbG9hZGVkYCk7ck4oe3R5cGU6YG1hcmtkb3duUmVuZGVyZWRgLGlkOm4sbWFya2Rvd246Vk0ucnVuKCgpPT5lLnRvX21hcmtkb3duKCkpfSk7cmV0dXJufX0pfWNhdGNoKGUpe3QudHlwZT09PWBvcGVuU2hlZXRTZXNzaW9uYCYmdE4uYWJhbmRvbk9wZW4odC5zZXNzaW9uSWQpO3RyeXtyTih7dHlwZTpgZXJyb3JgLGlkOm4sLi4ueXkoZSl9KX1jYXRjaHt9fX07", "" + import.meta.url).href;
|
|
3
|
+
function t() {
|
|
4
|
+
return new Worker(e, { type: "module" });
|
|
5
|
+
}
|
|
6
|
+
//#endregion
|
|
7
|
+
export { t as createRenderWorker };
|