Análise dos dados de produção industrial e vendas do varejo no
Chile.
- Produção industrial.
- Taxa de crescimento da produção industrial
- Abertura da produção industrial (manufacturing e mining).
- Vendas do varejo.
- Abertura das vendas do varejo.
Vendas do varejo

LS0tDQp0aXRsZTogIkNMUCAtIERhZG9zIGRlIGF0aXZpZGFkZSINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KLS0tDQoNCmBgYHtyIHBhY2thZ2VzLCBpbmNsdWRlPUZ9DQpybShsaXN0PWxzKCkpDQpzdXBwcmVzc1dhcm5pbmdzKGxpYnJhcnkoTWFjcm9ib25kQVBJKSkNCnN1cHByZXNzV2FybmluZ3MobGlicmFyeShkcGx5cikpDQpzdXBwcmVzc1dhcm5pbmdzKGxpYnJhcnkobHVicmlkYXRlKSkNCnN1cHByZXNzV2FybmluZ3MobGlicmFyeSh0aWJibGUpKQ0Kc3VwcHJlc3NXYXJuaW5ncyhsaWJyYXJ5KHNlYXNvbmFsKSkNCnN1cHByZXNzV2FybmluZ3MobGlicmFyeSh4dHMpKQ0Kc3VwcHJlc3NXYXJuaW5ncyhsaWJyYXJ5KHJvbGwpKQ0KYGBgDQoNCg0KYGBge3IgcGFyYW1zLCBpbmNsdWRlPUZ9DQpsaXN0LnZhciA9IGxpc3QocmV0YWlsID0gbGlzdChjb2RlID0gImNsdHJhZDMwMDMiLCBzZWFzb25hbCA9IEYpLCANCiAgICAgICAgICAgICAgICByZXRhaWxfZHVyYWJsZSA9IGxpc3QoY29kZSA9ICJjbHRyYWQzNDQwIiwgc2Vhc29uYWwgPSBGKSwgDQogICAgICAgICAgICAgICAgcmV0YWlsX25vbl9kdXJhYmxlID0gbGlzdChjb2RlID0gImNsdHJhZDM0NDEiLCBzZWFzb25hbCA9IEYpLA0KICAgICAgICAgICAgICAgICMgc2VydmljZXNfYWNjb21vZGF0aW9uID0gbGlzdChjb2RlID0gImNsdHJhZDAwMTEiLCBzZWFzb25hbCA9IEYpLA0KICAgICAgICAgICAgICAgICMgc2VydmljZXNfYWRtaW5pc3RyYXRpdmUgPSBsaXN0KGNvZGUgPSAiY2x0cmFkMDAxNSIsIHNlYXNvbmFsID0gRiksDQogICAgICAgICAgICAgICAgIyBzZXJ2aWNlc19lbnRlcnRhaW5tZW50ID0gbGlzdChjb2RlID0gImNsdHJhZDAwMTYiLCBzZWFzb25hbCA9IEYpLA0KICAgICAgICAgICAgICAgICMgc2VydmljZXNfaW5mb3JtYXRpb24gPSBsaXN0KGNvZGUgPSAiY2x0cmFkMDAxMiIsIHNlYXNvbmFsID0gRiksDQogICAgICAgICAgICAgICAgIyBzZXJ2aWNlc19wcm9mZXNzaW9uYWwgPSBsaXN0KGNvZGUgPSAiY2x0cmFkMDAxNCIsIHNlYXNvbmFsID0gRiksDQogICAgICAgICAgICAgICAgIyBzZXJ2aWNlc19yZWFsX2VzdGF0ZSA9IGxpc3QoY29kZSA9ICJjbHRyYWQwMDEzIiwgc2Vhc29uYWwgPSBGKSwNCiAgICAgICAgICAgICAgICAjIHNlcnZpY2VzX3RyYW5zcG9ydCA9IGxpc3QoY29kZSA9ICJjbHRyYWQwMDEwIiwgc2Vhc29uYWwgPSBGKSwNCiAgICAgICAgICAgICAgICAjIHNlcnZpY2VzX290aGVyID0gbGlzdChjb2RlID0gImNsdHJhZDAwMTciLCBzZWFzb25hbCA9IEYpLA0KICAgICAgICAgICAgICAgICMgY3BpID0gbGlzdChjb2RlID0gImNscHJpYzMwMDAiLCBzZWFzb25hbCA9IEYpLA0KICAgICAgICAgICAgICAgIGluZHVzdHJpYWxfcHJvZHVjdGlvbiA9IGxpc3QoY29kZSA9ICJjbHByb2QwMDA2Iiwgc2Vhc29uYWwgPSBUKSwNCiAgICAgICAgICAgICAgICBtYW51ZmFjdHVyaW5nID0gbGlzdChjb2RlID0gImNscHJvZDAwMDMiLCBzZWFzb25hbCA9IFQpLA0KICAgICAgICAgICAgICAgIG1pbmluZyA9IGxpc3QoY29kZSA9ICJjbHByb2QwMDAyIiwgc2Vhc29uYWwgPSBUKSwNCiAgICAgICAgICAgICAgICBjb3BwZXIgPSBsaXN0KGNvZGUgPSAiY2xwcm9kMzA1OSIsIHNlYXNvbmFsID0gRikpDQoJDQojIHJlYWwuZGF0YSA9IGMoInNlcnZpY2VzX2FjY29tb2RhdGlvbiIsIA0KIyAgICAgICAgICAgICAgICJzZXJ2aWNlc19hZG1pbmlzdHJhdGl2ZSIsIA0KIyAgICAgICAgICAgICAgICJzZXJ2aWNlc19lbnRlcnRhaW5tZW50IiwgDQojICAgICAgICAgICAgICAgInNlcnZpY2VzX2luZm9ybWF0aW9uIiwgDQojICAgICAgICAgICAgICAgInNlcnZpY2VzX3Byb2Zlc3Npb25hbCIsIA0KIyAgICAgICAgICAgICAgICJzZXJ2aWNlc19yZWFsX2VzdGF0ZSIsIA0KIyAgICAgICAgICAgICAgICJzZXJ2aWNlc190cmFuc3BvcnQiLCANCiMgICAgICAgICAgICAgICAic2VydmljZXNfb3RoZXIiKQ0KYGBgDQoNCg0KYGBge3IsIGZ1bmN0aW9ucywgaW5jbHVkZT1GfQ0KZ2V0LnNlYXNvbmFsLmFkanVzdG1lbnQgPSBmdW5jdGlvbihkdGEpDQp7DQogIGR0YSA9IG5hLm9taXQoZHRhKQ0KICBkdGEudHMgPSB0cyhkdGFbLC0xXSwgZnJlcXVlbmN5PTEyLCBzdGFydD1jKGFzLm51bWVyaWMoZm9ybWF0KGR0YSRkYXRlU2Vzc2lvblsxXSwgIiVZIikpLCBhcy5udW1lcmljKGZvcm1hdChkdGEkZGF0ZVNlc3Npb25bMV0sICIlbSIpKSkpDQogIG1vZGVsLnNhID0gc2VhcyhkdGEudHMsDQogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0uZnVuY3Rpb24gPSAibG9nIiwNCiAgICAgICAgICAgICAgICAgIHJlZ3Jlc3Npb24uYWljdGVzdCA9IGMoInRkIiwgImVhc3RlciIpLA0KICAgICAgICAgICAgICAgICAgb3V0bGllci50eXBlcyA9IGMoImFvIiwgImxzIiwgInRjIiksDQogICAgICAgICAgICAgICAgICB4MTEgPSAiIiwNCiAgICAgICAgICAgICAgICAgIGF1dG9tZGwgPSAiIg0KICAgICAgICAgICAgICAgICAgKQ0KICByZXMgPSBhcy5kYXRhLmZyYW1lKGFzLnh0cyhmaW5hbChtb2RlbC5zYSkpKQ0KICByZXMgPSByb3duYW1lc190b19jb2x1bW4ocmVzLCAiZGF0ZVNlc3Npb24iKQ0KICByZXMkZGF0ZVNlc3Npb24gPSBhcy5EYXRlKHBhc3RlKCIwMSIsIHJlcyRkYXRlU2Vzc2lvbiksIGZvcm1hdCA9ICIlZCAlYiAlWSIpDQogIGNvbG5hbWVzKHJlcylbLTFdID0gY29sbmFtZXMoZHRhKVstMV0NCiAgcmV0dXJuKHJlcykNCn0NCg0KZ2V0Lmxpc3QuZGF0YWJhc2VzID0gZnVuY3Rpb24oZGljdC5zZXJpZXMsIHN0YXJ0ID0gYXMuRGF0ZSgiMTk5OS0wMS0wMSIpKQ0Kew0KICBsYXBwbHkoc2V0TmFtZXMoMTpsZW5ndGgoZGljdC5zZXJpZXMpLCBuYW1lcyhkaWN0LnNlcmllcykpLCBmdW5jdGlvbihpZHgpDQogIHsgDQogICAgY2F0KCJTZXJpZXM6ICIsIG5hbWVzKGRpY3Quc2VyaWVzKVtpZHhdLCAiXG4iKQ0KICAgIGRmID0gYXMuZGF0YS5mcmFtZShhcy54dHMoRmV0Y2hPbmVUaW1lU2VyaWVzKGRpY3Quc2VyaWVzW1tpZHhdXSRjb2RlKSkpDQogICAgZGYgPSByb3duYW1lc190b19jb2x1bW4oZGYsICJkYXRlU2Vzc2lvbiIpDQogICAgZGYkZGF0ZVNlc3Npb24gPSBhcy5EYXRlKGRmJGRhdGVTZXNzaW9uKQ0KICAgIGNvbG5hbWVzKGRmKVstMV0gPSBuYW1lcyhkaWN0LnNlcmllcylbaWR4XQ0KICAgIGRmID0gc3Vic2V0KGRmLCBkYXRlU2Vzc2lvbiA+PSBzdGFydCkNCiAgICBpZiAoIWRpY3Quc2VyaWVzW1tpZHhdXSRzZWFzb25hbCkge2RmID0gZ2V0LnNlYXNvbmFsLmFkanVzdG1lbnQoZGYpfQ0KICAgIHJldHVybihkZikNCiAgfSkNCn0NCmBgYA0KDQoNCkFuw6FsaXNlIGRvcyBkYWRvcyBkZSBwcm9kdcOnw6NvIGluZHVzdHJpYWwgZSB2ZW5kYXMgZG8gdmFyZWpvIG5vIENoaWxlLiANCg0KLSBQcm9kdcOnw6NvIGluZHVzdHJpYWwuDQotIFRheGEgZGUgY3Jlc2NpbWVudG8gZGEgcHJvZHXDp8OjbyBpbmR1c3RyaWFsDQotIEFiZXJ0dXJhIGRhIHByb2R1w6fDo28gaW5kdXN0cmlhbCAobWFudWZhY3R1cmluZyBlIG1pbmluZykuDQotIFZlbmRhcyBkbyB2YXJlam8uDQotIEFiZXJ0dXJhIGRhcyB2ZW5kYXMgZG8gdmFyZWpvLg0KDQoNCmBgYHtyLCBkYXRhYmFzZSwgZWNobz1GLCBtZXNzYWdlPUZBTFNFfQ0KDQpsaXN0LnNlcmllcyA9IGdldC5saXN0LmRhdGFiYXNlcyhsaXN0LnZhcikNCg0KZGIuYWN0ID0gUmVkdWNlKGZ1bmN0aW9uKHgsIHkpIG1lcmdlKHgsIHksIGJ5PSJkYXRlU2Vzc2lvbiIsIGFsbD1UKSwgbGlzdC5zZXJpZXMpDQpkYi5hY3QgPSBuYS5vbWl0KGRiLmFjdCkNCiMgZGIuYWN0WyxyZWFsLmRhdGFdID0gc2FwcGx5KHJlYWwuZGF0YSwgZnVuY3Rpb24obmFtZV8pIGRiLmFjdFssbmFtZV9dICogYXMubnVtZXJpYyhkYi5hY3RbbnJvdyhkYi5hY3QpLCJjcGkiXSkgLyBhcy5udW1lcmljKGRiLmFjdFsxLCJjcGkiXSkpDQojIGRiLmFjdCA9IGRiLmFjdFssc2V0ZGlmZihjb2xuYW1lcyhkYi5hY3QpLCAiY3BpIildDQoNCmBgYA0KDQojIyBQcm9kdcOnw6NvIGluZHVzdHJpYWwNCg0KYGBge3IgaW5kcHJvZCwgZWNobz1GLCBtZXNzYWdlPUYsIHdhcm5pbmc9Rn0NCmRiLmFjdCRpbmRfcHJvZF8zbW0gPSByb2xsX21lYW4oZGIuYWN0JGluZHVzdHJpYWxfcHJvZHVjdGlvbiwgd2lkdGggPSAzLCBtaW5fb2JzID0gMykNCmRiLmFjdCRpbmRfcHJvZF8xMm1tID0gcm9sbF9tZWFuKGRiLmFjdCRpbmR1c3RyaWFsX3Byb2R1Y3Rpb24sIHdpZHRoID0gMTIsIG1pbl9vYnMgPSAxMikNCmRiLmFjdCRtYW51ZmFjdHVyaW5nXzNtbSA9IHJvbGxfbWVhbihkYi5hY3QkbWFudWZhY3R1cmluZywgd2lkdGggPSAzLCBtaW5fb2JzID0gMykNCmRiLmFjdCRtYW51ZmFjdHVyaW5nXzEybW0gPSByb2xsX21lYW4oZGIuYWN0JG1hbnVmYWN0dXJpbmcsIHdpZHRoID0gMTIsIG1pbl9vYnMgPSAxMikNCg0KZGIuaW5kLnBsb3QgPSBzdWJzZXQoZGIuYWN0LCBkYXRlU2Vzc2lvbiA+PSBhcy5EYXRlKCIyMDIyLTAxLTAxIikpDQoNCiMgQ2hhcnQNCg0KcGFyKG1mcm93PWMoMSwyKSkNCg0KcGxvdChkYi5pbmQucGxvdCRkYXRlU2Vzc2lvbiwgZGIuaW5kLnBsb3QkaW5kdXN0cmlhbF9wcm9kdWN0aW9uLCB0eXBlID0gImwiLCBjb2wgPSAiZGFya2JsdWUiLCBwY2ggPSAxOSwgbHdkID0gMywgeGxhYiA9ICJEYXRlIiwgeWxhYiA9ICJJbmRleCIsIG1haW4gPSAiUHJvZHXDp8OjbyBpbmR1c3RyaWFsIiwgeWxpbSA9IHJhbmdlKG5hLm9taXQodW5saXN0KGMoZGIuaW5kLnBsb3QkaW5kdXN0cmlhbF9wcm9kdWN0aW9uLCBkYi5pbmQucGxvdCRpbmRfcHJvZF8zbW0sIGRiLmluZC5wbG90JGluZF9wcm9kXzEybW0pKSkpKQ0KbGluZXMoZGIuaW5kLnBsb3QkZGF0ZVNlc3Npb24sIGRiLmluZC5wbG90JGluZF9wcm9kXzNtbSwgdHlwZSA9ICJsIiwgY29sID0gImJsYWNrIiwgcGNoID0gMTksIGx3ZCA9IDMsIGx0eSA9IDMpDQpsaW5lcyhkYi5pbmQucGxvdCRkYXRlU2Vzc2lvbiwgZGIuaW5kLnBsb3QkaW5kX3Byb2RfMTJtbSwgdHlwZSA9ICJsIiwgY29sID0gImRhcmtyZWQiLCBwY2ggPSAxOSwgbHdkID0gMywgbHR5ID0gMykNCmxlZ2VuZCgidG9wbGVmdCIsIGxlZ2VuZCA9IGMoIk9icyIsICIzTU0iLCAiMTJNTSIpLCBjb2wgPSBjKCJkYXJrYmx1ZSIsICJibGFjayIsICJkYXJrcmVkIiksIGx0eSA9IDEsIHBjaCA9IDE5KQ0KZ3JpZCgpDQoNCnBsb3QoZGIuaW5kLnBsb3QkZGF0ZVNlc3Npb24sIGRiLmluZC5wbG90JG1hbnVmYWN0dXJpbmcsIHR5cGUgPSAibCIsIGNvbCA9ICJkYXJrZ3JlZW4iLCBwY2ggPSAxOSwgbHdkID0gMywgeGxhYiA9ICJEYXRlIiwgeWxhYiA9ICJJbmRleCIsIG1haW4gPSAiTWFudWZhY3R1cmluZyIsIHlsaW0gPSByYW5nZShuYS5vbWl0KHVubGlzdChjKGRiLmluZC5wbG90JG1hbnVmYWN0dXJpbmcsIGRiLmluZC5wbG90JG1hbnVmYWN0dXJpbmdfM21tLCBkYi5pbmQucGxvdCRtYW51ZmFjdHVyaW5nXzEybW0pKSkpKQ0KbGluZXMoZGIuaW5kLnBsb3QkZGF0ZVNlc3Npb24sIGRiLmluZC5wbG90JG1hbnVmYWN0dXJpbmdfM21tLCB0eXBlID0gImwiLCBjb2wgPSAiYmxhY2siLCBwY2ggPSAxOSwgbHdkID0gMywgbHR5ID0gMykNCmxpbmVzKGRiLmluZC5wbG90JGRhdGVTZXNzaW9uLCBkYi5pbmQucGxvdCRtYW51ZmFjdHVyaW5nXzEybW0sIHR5cGUgPSAibCIsIGNvbCA9ICJkYXJrcmVkIiwgcGNoID0gMTksIGx3ZCA9IDMsIGx0eSA9IDMpDQpsZWdlbmQoInRvcGxlZnQiLCBsZWdlbmQgPSBjKCJPYnMiLCAiM01NIiwgIjEyTU0iKSwgY29sID0gYygiZGFya2dyZWVuIiwgImJsYWNrIiwgImRhcmtyZWQiKSwgbHR5ID0gMSwgcGNoID0gMTkpDQpncmlkKCkNCg0KYGBgDQoNCmBgYHtyIGlwZ3Jvd3RoLCBlY2hvPUYsIG1lc3NhZ2U9Riwgd2FybmluZz1GfQ0KDQpkYi5hY3QkaW5kX3Byb2RfbW9tID0gMTAwICogKGRiLmFjdCRpbmR1c3RyaWFsX3Byb2R1Y3Rpb24gLyBsYWcoZGIuYWN0JGluZHVzdHJpYWxfcHJvZHVjdGlvbiwgMSkgLSAxKQ0KZGIuYWN0JGluZF9wcm9kX3lveSA9IDEwMCAqIChkYi5hY3QkaW5kdXN0cmlhbF9wcm9kdWN0aW9uIC8gbGFnKGRiLmFjdCRpbmR1c3RyaWFsX3Byb2R1Y3Rpb24sIDEyKSAtIDEpDQpkYi5hY3QkbWFudWZhY3R1cmluZ19tb20gPSAxMDAgKiAoZGIuYWN0JG1hbnVmYWN0dXJpbmcgLyBsYWcoZGIuYWN0JG1hbnVmYWN0dXJpbmcsIDEpIC0gMSkNCmRiLmFjdCRtYW51ZmFjdHVyaW5nX3lveSA9IDEwMCAqIChkYi5hY3QkbWFudWZhY3R1cmluZyAvIGxhZyhkYi5hY3QkbWFudWZhY3R1cmluZywgMTIpIC0gMSkNCg0KZGIuZ3Jvd3RoLnBsb3QgPSB0YWlsKGRiLmFjdCwgMTIpDQp4dmFsdWVzID0gcGFzdGUwKG1vbnRoKGRiLmdyb3d0aC5wbG90JGRhdGVTZXNzaW9uKSwgIk0iLCBmb3JtYXQoZGIuZ3Jvd3RoLnBsb3QkZGF0ZVNlc3Npb24sICIleSIpKQ0KZGIuZ3Jvd3RoLnlveS5wbG90ID0gc3Vic2V0KGRiLmFjdCwgZGF0ZVNlc3Npb24gPj0gYXMuRGF0ZSgiMjAyMi0wMS0wMSIpKQ0KDQojIENoYXJ0DQoNCnBhcihtZnJvdz1jKDEsMikpDQoNCmJhcnBsb3QodChhcy5tYXRyaXgoZGIuZ3Jvd3RoLnBsb3RbLGMoImluZF9wcm9kX21vbSIsICJtYW51ZmFjdHVyaW5nX21vbSIpXSkpLCBiZXNpZGUgPSBUUlVFLCBjb2wgPSBjKCJkYXJrYmx1ZSIsICJkYXJrZ3JlZW4iKSwgbmFtZXMuYXJnID0geHZhbHVlcywgbGVnZW5kLnRleHQgPSBjKCJ0b3RhbCIsICJtYW51ZmFjdHVyaW5nIiksIGFyZ3MubGVnZW5kID0gbGlzdCh4ID0gImJvdHRvbWxlZnQiLCBiZyA9ICJ3aGl0ZSIpLCBtYWluID0gIlRheGEgZGUgY3Jlc2NpbWVudG8gSVAiLCB5bGFiID0gIiUsIE1vTSIpDQpncmlkKCkNCg0KcGxvdChkYi5ncm93dGgueW95LnBsb3QkZGF0ZVNlc3Npb24sIGRiLmdyb3d0aC55b3kucGxvdCRpbmRfcHJvZF95b3ksIHR5cGUgPSAibCIsIGNvbCA9ICJkYXJrZ3JheSIsIHBjaCA9IDE5LCBsd2QgPSAzLCB4bGFiID0gIkRhdGUiLCB5bGFiID0gIiUsIFlvWSIsIG1haW4gPSAiVGF4YSBkZSBjcmVzY2ltZW50byBJUCIsIHlsaW0gPSByYW5nZShuYS5vbWl0KHVubGlzdChjKGRiLmdyb3d0aC55b3kucGxvdCRpbmRfcHJvZF95b3ksIGRiLmdyb3d0aC55b3kucGxvdCRtYW51ZmFjdHVyaW5nX3lveSkpKSkpDQpsaW5lcyhkYi5ncm93dGgueW95LnBsb3QkZGF0ZVNlc3Npb24sIGRiLmdyb3d0aC55b3kucGxvdCRtYW51ZmFjdHVyaW5nX3lveSwgdHlwZSA9ICJsIiwgY29sID0gImJsYWNrIiwgcGNoID0gMTksIGx3ZCA9IDMsIGx0eSA9IDMpDQphYmxpbmUoaCA9IDIsIGNvbCA9ICJkYXJrcmVkIiwgbHdkID0gMywgbHR5ID0gMykNCmxlZ2VuZCgidG9wbGVmdCIsIGxlZ2VuZCA9IGMoInRvdGFsIiwgIm1hbnVmYWN0dXJpbmciKSwgY29sID0gYygiZGFya2dyYXkiLCAiYmxhY2siKSwgbHR5ID0gMSwgcGNoID0gMTkpDQpncmlkKCkNCg0KYGBgDQoNCmBgYHtyIG1pbmluZywgZWNobz1GLCBtZXNzYWdlPUYsIHdhcm5pbmc9Rn0NCg0KDQpkYi5hY3QkbWluaW5nX3lveSA9IDEwMCAqIChkYi5hY3QkbWluaW5nIC8gbGFnKGRiLmFjdCRtaW5pbmcsIDEyKSAtIDEpDQpkYi5hY3QkY29wcGVyX3lveSA9IDEwMCAqIChkYi5hY3QkY29wcGVyIC8gbGFnKGRiLmFjdCRjb3BwZXIsIDEyKSAtIDEpDQoNCmRiLm1pbmluZy5wbG90ID0gc3Vic2V0KGRiLmFjdCwgZGF0ZVNlc3Npb24gPj0gYXMuRGF0ZSgiMjAyMi0wMS0wMSIpKQ0KDQpkYi5taW5pbmcucGxvdCRtaW5pbmcgPSAxMDAgKiAoZGIubWluaW5nLnBsb3QkbWluaW5nIC8gZGIubWluaW5nLnBsb3QkbWluaW5nWzFdKQ0KZGIubWluaW5nLnBsb3QkY29wcGVyID0gMTAwICogKGRiLm1pbmluZy5wbG90JGNvcHBlciAvIGRiLm1pbmluZy5wbG90JGNvcHBlclsxXSkNCmRiLm1pbmluZy5wbG90JGNvcHBlcl8zbW0gPSByb2xsX21lYW4oZGIubWluaW5nLnBsb3QkY29wcGVyLCB3aWR0aCA9IDMsIG1pbl9vYnMgPSAxKQ0KZGIubWluaW5nLnBsb3QkbWluaW5nXzNtbSA9IHJvbGxfbWVhbihkYi5taW5pbmcucGxvdCRtaW5pbmcsIHdpZHRoID0gMywgbWluX29icyA9IDEpDQoNCiMgQ2hhcnQNCg0KcGFyKG1mcm93PWMoMSwyKSkNCg0KcGxvdChkYi5taW5pbmcucGxvdCRkYXRlU2Vzc2lvbiwgZGIubWluaW5nLnBsb3QkbWluaW5nLCB0eXBlID0gImwiLCBjb2wgPSAiZGFya2JsdWUiLCBwY2ggPSAxOSwgbHdkID0gMywgeGxhYiA9ICJEYXRlIiwgeWxhYiA9ICJJbmRleCIsIG1haW4gPSAiTWluaW5nIiwgeWxpbSA9IHJhbmdlKG5hLm9taXQodW5saXN0KGMoZGIubWluaW5nLnBsb3RbLGMoIm1pbmluZyIsICJtaW5pbmdfM21tIiwgImNvcHBlciIsICJjb3BwZXJfM21tIildKSkpKSkNCmxpbmVzKGRiLm1pbmluZy5wbG90JGRhdGVTZXNzaW9uLCBkYi5taW5pbmcucGxvdCRtaW5pbmdfM21tLCB0eXBlID0gImwiLCBjb2wgPSAibGlnaHRibHVlIiwgcGNoID0gMTksIGx3ZCA9IDMsIGx0eSA9IDMpDQpsaW5lcyhkYi5taW5pbmcucGxvdCRkYXRlU2Vzc2lvbiwgZGIubWluaW5nLnBsb3QkY29wcGVyLCB0eXBlID0gImwiLCBjb2wgPSAiZGFya2dyZWVuIiwgcGNoID0gMTksIGx3ZCA9IDMpDQpsaW5lcyhkYi5taW5pbmcucGxvdCRkYXRlU2Vzc2lvbiwgZGIubWluaW5nLnBsb3QkY29wcGVyXzNtbSwgdHlwZSA9ICJsIiwgY29sID0gImxpZ2h0Z3JlZW4iLCBwY2ggPSAxOSwgbHdkID0gMywgbHR5ID0gMykNCmxlZ2VuZCgidG9wbGVmdCIsIGxlZ2VuZCA9IGMoIm1pbmluZyIsICJtaW5pbmcgM21tIiwgImNvcHBlciIsICJjb3BwZXIgM20iKSwgY29sID0gYygiZGFya2JsdWUiLCAibGlnaHRibHVlIiwgImRhcmtncmVlbiIsICJsaWdodGdyZWVuIiksIGx0eSA9IDEsIHBjaCA9IDE5KQ0KZ3JpZCgpDQoNCnBsb3QoZGIubWluaW5nLnBsb3QkZGF0ZVNlc3Npb24sIGRiLm1pbmluZy5wbG90JG1pbmluZ195b3ksIHR5cGUgPSAibCIsIGNvbCA9ICJkYXJrZ3JheSIsIHBjaCA9IDE5LCBsd2QgPSAzLCB4bGFiID0gIkRhdGUiLCB5bGFiID0gIiUsIFlvWSIsIG1haW4gPSAiVGF4YSBkZSBjcmVzY2ltZW50byBJUCIsIHlsaW0gPSByYW5nZShuYS5vbWl0KHVubGlzdChjKGRiLm1pbmluZy5wbG90JG1pbmluZ195b3ksIGRiLm1pbmluZy5wbG90JGNvcHBlcl95b3kpKSkpKQ0KbGluZXMoZGIubWluaW5nLnBsb3QkZGF0ZVNlc3Npb24sIGRiLm1pbmluZy5wbG90JGNvcHBlcl95b3ksIHR5cGUgPSAibCIsIGNvbCA9ICJibGFjayIsIHBjaCA9IDE5LCBsd2QgPSAzLCBsdHkgPSAzKQ0KYWJsaW5lKGggPSAyLCBjb2wgPSAiZGFya3JlZCIsIGx3ZCA9IDMsIGx0eSA9IDMpDQpsZWdlbmQoInRvcGxlZnQiLCBsZWdlbmQgPSBjKCJtaW5pbmciLCAiY29wcGVyIiksIGNvbCA9IGMoImRhcmtncmF5IiwgImJsYWNrIiksIGx0eSA9IDEsIHBjaCA9IDE5KQ0KZ3JpZCgpDQoNCmBgYA0KDQojIyBWZW5kYXMgZG8gdmFyZWpvDQoNCmBgYHtyIHJldGFpbCwgZWNobz1GLCBtZXNzYWdlPUYsIHdhcm5pbmc9Rn0NCmRiLmFjdCRyZXRhaWxfeW95ID0gMTAwICogKGRiLmFjdCRyZXRhaWwgLyBsYWcoZGIuYWN0JHJldGFpbCwgMTIpIC0gMSkNCmRiLmFjdCRyZXRhaWxfZHVyYWJsZV95b3kgPSAxMDAgKiAoZGIuYWN0JHJldGFpbF9kdXJhYmxlIC8gbGFnKGRiLmFjdCRyZXRhaWxfZHVyYWJsZSwgMTIpIC0gMSkNCmRiLmFjdCRyZXRhaWxfbm9uX2R1cmFibGVfeW95ID0gMTAwICogKGRiLmFjdCRyZXRhaWxfbm9uX2R1cmFibGUgLyBsYWcoZGIuYWN0JHJldGFpbF9ub25fZHVyYWJsZSwgMTIpIC0gMSkNCg0KZGIucmV0YWlsLnBsb3QgPSBzdWJzZXQoZGIuYWN0LCBkYXRlU2Vzc2lvbiA+PSBhcy5EYXRlKCIyMDIzLTAxLTAxIikpDQpkYi5yZXRhaWwucGxvdCRyZXRhaWwgPSAxMDAgKiAoZGIucmV0YWlsLnBsb3QkcmV0YWlsIC8gYXMubnVtZXJpYyhkYi5yZXRhaWwucGxvdCRyZXRhaWxbMV0pKQ0KZGIucmV0YWlsLnBsb3QkcmV0YWlsX2R1cmFibGUgPSAxMDAgKiAoZGIucmV0YWlsLnBsb3QkcmV0YWlsX2R1cmFibGUgLyBhcy5udW1lcmljKGRiLnJldGFpbC5wbG90JHJldGFpbF9kdXJhYmxlWzFdKSkNCmRiLnJldGFpbC5wbG90JHJldGFpbF9ub25fZHVyYWJsZSA9IDEwMCAqIChkYi5yZXRhaWwucGxvdCRyZXRhaWxfbm9uX2R1cmFibGUgLyBhcy5udW1lcmljKGRiLnJldGFpbC5wbG90JHJldGFpbF9ub25fZHVyYWJsZVsxXSkpDQoNCiMgQ2hhcnQNCg0KcGFyKG1mcm93PWMoMSwyKSkNCg0KcGxvdChkYi5yZXRhaWwucGxvdCRkYXRlU2Vzc2lvbiwgZGIucmV0YWlsLnBsb3QkcmV0YWlsLCB0eXBlID0gImwiLCBjb2wgPSAiZGFya2JsdWUiLCBwY2ggPSAxOSwgbHdkID0gMywgeGxhYiA9ICJEYXRlIiwgeWxhYiA9ICJJbmRleCIsIG1haW4gPSAiUmV0YWlsIC0gbsOtdmVsIiwgeWxpbSA9IHJhbmdlKG5hLm9taXQodW5saXN0KGMoZGIucmV0YWlsLnBsb3QkcmV0YWlsLCBkYi5yZXRhaWwucGxvdCRyZXRhaWxfZHVyYWJsZSwgZGIucmV0YWlsLnBsb3QkcmV0YWlsX25vbl9kdXJhYmxlKSkpKSkNCmxpbmVzKGRiLnJldGFpbC5wbG90JGRhdGVTZXNzaW9uLCBkYi5yZXRhaWwucGxvdCRyZXRhaWxfZHVyYWJsZSwgdHlwZSA9ICJsIiwgY29sID0gImJsYWNrIiwgcGNoID0gMTksIGx3ZCA9IDMpDQpsaW5lcyhkYi5yZXRhaWwucGxvdCRkYXRlU2Vzc2lvbiwgZGIucmV0YWlsLnBsb3QkcmV0YWlsX25vbl9kdXJhYmxlLCB0eXBlID0gImwiLCBjb2wgPSAiZGFya2dyYXkiLCBwY2ggPSAxOSwgbHdkID0gMykNCmxlZ2VuZCgidG9wbGVmdCIsIGxlZ2VuZCA9IGMoInJldGFpbCIsICJkdXJhYmxlIiwgIm5vbi1kdXJhYmxlIiksIGNvbCA9IGMoImRhcmtibHVlIiwgImJsYWNrIiwgImRhcmtncmF5IiksIGx0eSA9IDEsIHBjaCA9IDE5KQ0KZ3JpZCgpDQoNCnBsb3QoZGIucmV0YWlsLnBsb3QkZGF0ZVNlc3Npb24sIGRiLnJldGFpbC5wbG90JHJldGFpbF95b3ksIHR5cGUgPSAibCIsIGNvbCA9ICJkYXJrYmx1ZSIsIHBjaCA9IDE5LCBsd2QgPSAzLCB4bGFiID0gIkRhdGUiLCB5bGFiID0gIiUsIFlvWSIsIG1haW4gPSAiUmV0YWlsIC0gY3Jlc2NpbWVudG8iLCB5bGltID0gcmFuZ2UobmEub21pdCh1bmxpc3QoYyhkYi5yZXRhaWwucGxvdCRyZXRhaWxfeW95LCBkYi5yZXRhaWwucGxvdCRyZXRhaWxfZHVyYWJsZV95b3ksIGRiLnJldGFpbC5wbG90JHJldGFpbF9ub25fZHVyYWJsZV95b3kpKSkpKQ0KbGluZXMoZGIucmV0YWlsLnBsb3QkZGF0ZVNlc3Npb24sIGRiLnJldGFpbC5wbG90JHJldGFpbF9kdXJhYmxlX3lveSwgdHlwZSA9ICJsIiwgY29sID0gImJsYWNrIiwgcGNoID0gMTksIGx3ZCA9IDMpDQpsaW5lcyhkYi5yZXRhaWwucGxvdCRkYXRlU2Vzc2lvbiwgZGIucmV0YWlsLnBsb3QkcmV0YWlsX25vbl9kdXJhYmxlX3lveSwgdHlwZSA9ICJsIiwgY29sID0gImRhcmtncmF5IiwgcGNoID0gMTksIGx3ZCA9IDMpDQphYmxpbmUoaCA9IDIsIGNvbD0iZGFya3JlZCIsIGx3ZCA9IDMsIGx0eSA9IDMpDQpsZWdlbmQoInRvcGxlZnQiLCBsZWdlbmQgPSBjKCJyZXRhaWwiLCAiZHVyYWJsZSIsICJub24tZHVyYWJsZSIpLCBjb2wgPSBjKCJkYXJrYmx1ZSIsICJibGFjayIsICJkYXJrZ3JheSIpLCBsdHkgPSAxLCBwY2ggPSAxOSkNCmdyaWQoKQ0KDQpgYGANCg==