gASVfGUAAAAAAACMDmRvY3V0aWxzLm5vZGVzlIwIZG9jdW1lbnSUk5QpgZR9lCiMCXJhd3NvdXJjZZSMAJSMCGNoaWxkcmVulF2UKGgAjAZ0YXJnZXSUk5QpgZR9lChoBWgGaAddlIwKYXR0cmlidXRlc5R9lCiMA2lkc5RdlIxBbW9kdWxlLWV0aGVyZXVtLmNvbnN0YW50aW5vcGxlLnZtLnByZWNvbXBpbGVkX2NvbnRyYWN0cy5hbHRfYm4xMjiUYYwHY2xhc3Nlc5RdlIwFbmFtZXOUXZSMCGR1cG5hbWVzlF2UjAhiYWNrcmVmc5RdlIwFaXNtb2SUiHWMB3RhZ25hbWWUaAmMBnNvdXJjZZSMgi9ob21lL3J1bm5lci93b3JrL2V4ZWN1dGlvbi1zcGVjcy9leGVjdXRpb24tc3BlY3MvZG9jL2F1dG9hcGkvZXRoZXJldW0vY29uc3RhbnRpbm9wbGUvdm0vcHJlY29tcGlsZWRfY29udHJhY3RzL2FsdF9ibjEyOC9pbmRleC5yc3SUjARsaW5llEsBjAZwYXJlbnSUaAOMCV9kb2N1bWVudJRoA3VijA9zcGhpbnguYWRkbm9kZXOUjAVpbmRleJSTlCmBlH2UKGgFaAZoB12UaA59lChoEF2UaBNdlGgVXZRoF12UaBldlIwHZW50cmllc5RdlCiMBHBhaXKUjEJtb2R1bGU7IGV0aGVyZXVtLmNvbnN0YW50aW5vcGxlLnZtLnByZWNvbXBpbGVkX2NvbnRyYWN0cy5hbHRfYm4xMjiUaBJoBk50lGF1aBxoI2gdaB5oH0sCaCBoA2ghaAN1YmgAjAdzZWN0aW9ulJOUKYGUfZQoaAVoBmgHXZQoaACMBXRpdGxllJOUKYGUfZQoaAWMMkV0aGVyZXVtIFZpcnR1YWwgTWFjaGluZSAoRVZNKSBBTFRfQk4xMjggQ09OVFJBQ1RTlGgHXZRoAIwEVGV4dJSTlIwyRXRoZXJldW0gVmlydHVhbCBNYWNoaW5lIChFVk0pIEFMVF9CTjEyOCBDT05UUkFDVFOUhZSBlH2UKGgFaAZoIGg6aCFoA2gdjFwvaG9tZS9ydW5uZXIvd29yay9leGVjdXRpb24tc3BlY3MvZXhlY3V0aW9uLXNwZWNzLy50b3gvZG9jcy9zdGFnZTBfb3V0L2F1dG9hcGkvID0+IGRvYy9kaWZmc5RoH0sAdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGg4aB1oHmgfSwRoIGg1aCFoA3ViaACMBXRvcGljlJOUKYGUfZQoaAVoBmgHXZQoaDkpgZR9lChoBYwRVGFibGUgb2YgQ29udGVudHOUaAddlGg/jBFUYWJsZSBvZiBDb250ZW50c5SFlIGUfZQoaAVoBmggaFBoIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaDhoHWgeaB9LCGggaE11YmgAjAtidWxsZXRfbGlzdJSTlCmBlH2UKGgFaAZoB12UKGgAjAlsaXN0X2l0ZW2Uk5QpgZR9lChoBWgGaAddlGgAjAlwYXJhZ3JhcGiUk5QpgZR9lChoBWgGaAddlGgAjAlyZWZlcmVuY2WUk5QpgZR9lChoBWgGaAddlGg/jAxJbnRyb2R1Y3Rpb26UhZSBlH2UKGgFaAZoIGhvaCFoA2gdaERoH0sAdWJhaA59lChoEF2UjANpZDGUYWgTXZRoFV2UaBddlGgZXZSMBXJlZmlklIwMaW50cm9kdWN0aW9ulHVoHGhtaB1OaB9OaCBoanViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoaGgdTmgfTmggaGV1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaGNoHU5oH05oIGhgdWJoZCmBlH2UKGgFaAZoB12UKGhpKYGUfZQoaAVoBmgHXZRobimBlH2UKGgFaAZoB12UaD+MD01vZHVsZSBDb250ZW50c5SFlIGUfZQoaAVoBmggaJFoIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZSMA2lkMpRhaBNdlGgVXZRoF12UaBldlIwFcmVmaWSUjA9tb2R1bGUtY29udGVudHOUdWgcaG1oHU5oH05oIGiOdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGhoaB1OaB9OaCBoi3ViaF8pgZR9lChoBWgGaAddlGhkKYGUfZQoaAVoBmgHXZRoaSmBlH2UKGgFaAZoB12UaG4pgZR9lChoBWgGaAddlGg/jAlGdW5jdGlvbnOUhZSBlH2UKGgFaAZoIGiwaCFoA2gdaERoH0sAdWJhaA59lChoEF2UjANpZDOUYWgTXZRoFV2UaBddlGgZXZSMBXJlZmlklIwJZnVuY3Rpb25zlHVoHGhtaB1OaB9OaCBorXViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoaGgdTmgfTmggaKp1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaGNoHU5oH05oIGindWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGheaB1OaB9OaCBoi3ViZWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoY2gdTmgfTmggaGB1YmhkKYGUfZQoaAVoBmgHXZQoaGkpgZR9lChoBWgGaAddlGhuKYGUfZQoaAVoBmgHXZRoP4wOTW9kdWxlIERldGFpbHOUhZSBlH2UKGgFaAZoIGjeaCFoA2gdaERoH0sAdWJhaA59lChoEF2UjANpZDSUYWgTXZRoFV2UaBddlGgZXZSMBXJlZmlklIwObW9kdWxlLWRldGFpbHOUdWgcaG1oHU5oH05oIGjbdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGhoaB1OaB9OaCBo2HViaF8pgZR9lChoBWgGaAddlChoZCmBlH2UKGgFaAZoB12UaGkpgZR9lChoBWgGaAddlGhuKYGUfZQoaAVoBmgHXZRoP4wNYWx0X2JuMTI4X2FkZJSFlIGUfZQoaAVoBmggaP1oIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZSMA2lkNZRhaBNdlGgVXZRoF12UaBldlIwFcmVmaWSUjA1hbHQtYm4xMjgtYWRklHVoHGhtaB1OaB9OaCBo+nViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoaGgdTmgfTmggaPd1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaGNoHU5oH05oIGj0dWJoZCmBlH2UKGgFaAZoB12UaGkpgZR9lChoBWgGaAddlGhuKYGUfZQoaAVoBmgHXZRoP4wNYWx0X2JuMTI4X211bJSFlIGUfZQoaAVoBmggah8BAABoIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZSMA2lkNpRhaBNdlGgVXZRoF12UaBldlIwFcmVmaWSUjA1hbHQtYm4xMjgtbXVslHVoHGhtaB1OaB9OaCBqHAEAAHViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoaGgdTmgfTmggahkBAAB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaGNoHU5oH05oIGj0dWJoZCmBlH2UKGgFaAZoB12UaGkpgZR9lChoBWgGaAddlGhuKYGUfZQoaAVoBmgHXZRoP4wXYWx0X2JuMTI4X3BhaXJpbmdfY2hlY2uUhZSBlH2UKGgFaAZoIGpBAQAAaCFoA2gdaERoH0sAdWJhaA59lChoEF2UjANpZDeUYWgTXZRoFV2UaBddlGgZXZSMBXJlZmlklIwXYWx0LWJuMTI4LXBhaXJpbmctY2hlY2uUdWgcaG1oHU5oH05oIGo+AQAAdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGhoaB1OaB9OaCBqOwEAAHViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoY2gdTmgfTmggaPR1YmVoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaF5oHU5oH05oIGjYdWJlaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGhjaB1OaB9OaCBoYHViZWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoXmgdTmgfTmggaE11YmVoDn2UKGgQXZSMEXRhYmxlLW9mLWNvbnRlbnRzlGFoE12UKIwIY29udGVudHOUjAVsb2NhbJRlaBVdlIwRdGFibGUgb2YgY29udGVudHOUYWgXXZRoGV2UdWgcaEtoHWgeaB9LCGggaDVoIWgDdWJoNCmBlH2UKGgFaAZoB12UKGg5KYGUfZQoaAWMDEludHJvZHVjdGlvbpRoB12UaD+MDEludHJvZHVjdGlvbpSFlIGUfZQoaAVoBmgganwBAABoIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaDhoHWgeaB9LC2ggankBAAB1YmhpKYGUfZQoaAWMNkltcGxlbWVudGF0aW9uIG9mIHRoZSBBTFRfQk4xMjggcHJlY29tcGlsZWQgY29udHJhY3RzLpRoB12UaD+MNkltcGxlbWVudGF0aW9uIG9mIHRoZSBBTFRfQk4xMjggcHJlY29tcGlsZWQgY29udHJhY3RzLpSFlIGUfZQoaAVoBmggaooBAABoIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaGhoHWgeaB9LDWggankBAAB1YmgAjAdjb21tZW50lJOUKYGUfZQoaAVoBmgHXZRoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjAl4bWw6c3BhY2WUjAhwcmVzZXJ2ZZR1aBxqmAEAAGgdTmgfTmggankBAAB1YmVoDn2UKGgQXZRofmFoE12UaBVdlIwMaW50cm9kdWN0aW9ulGFoF12UaBldlHVoHGgzaB1oHmgfSwtoIGg1aCFoA3ViaDQpgZR9lChoBWgGaAddlChoOSmBlH2UKGgFjA9Nb2R1bGUgQ29udGVudHOUaAddlGg/jA9Nb2R1bGUgQ29udGVudHOUhZSBlH2UKGgFaAZoIGqvAQAAaCFoA2gdaERoH0sAdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGg4aB1oHmgfSxNoIGqsAQAAdWJoNCmBlH2UKGgFaAZoB12UKGg5KYGUfZQoaAWMCUZ1bmN0aW9uc5RoB12UaD+MCUZ1bmN0aW9uc5SFlIGUfZQoaAVoBmggasABAABoIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaDhoHWgeaB9LF2ggar0BAAB1YmgijBB0YWJ1bGFyX2NvbF9zcGVjlJOUKYGUfZQoaAVoBmgHXZRoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjARzcGVjlIwQXFh7MX17Mn1cWHsxfXsyfZR1aBxqzgEAAGgdjJMvaG9tZS9ydW5uZXIvd29yay9leGVjdXRpb24tc3BlY3MvZXhlY3V0aW9uLXNwZWNzL2RvYy9hdXRvYXBpL2V0aGVyZXVtL2NvbnN0YW50aW5vcGxlL3ZtL3ByZWNvbXBpbGVkX2NvbnRyYWN0cy9hbHRfYm4xMjgvaW5kZXgucnN0OjMzOjxhdXRvc3VtbWFyeT6UaB9OaCBqvQEAAHVijBZzcGhpbnguZXh0LmF1dG9zdW1tYXJ5lIwRYXV0b3N1bW1hcnlfdGFibGWUk5QpgZR9lChoBYzOCgoKCmFsdF9ibjEyOF9hZGQKClRoZSBBTFRfQk4xMjggYWRkaXRpb24gcHJlY29tcGlsZWQgY29udHJhY3QuCgphbHRfYm4xMjhfbXVsCgpUaGUgQUxUX0JOMTI4IG11bHRpcGxpY2F0aW9uIHByZWNvbXBpbGVkIGNvbnRyYWN0LgoKYWx0X2JuMTI4X3BhaXJpbmdfY2hlY2sKClRoZSBBTFRfQk4xMjggcGFpcmluZyBjaGVjayBwcmVjb21waWxlZCBjb250cmFjdC6UaAddlGgAjAV0YWJsZZSTlCmBlH2UKGgFaAZoB12UaACMBnRncm91cJSTlCmBlH2UKGgFaAZoB12UKGgAjAdjb2xzcGVjlJOUKYGUfZQoaAVoBmgHXZRoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjAhjb2x3aWR0aJRLCnVoHGrtAQAAaB1OaB9OaCBq6gEAAHViau4BAAApgZR9lChoBWgGaAddlGgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZSMCGNvbHdpZHRolEtadWgcau0BAABoHU5oH05oIGrqAQAAdWJoAIwFdGJvZHmUk5QpgZR9lChoBWgGaAddlChoAIwDcm93lJOUKYGUfZQoaAVoBmgHXZQoaACMBWVudHJ5lJOUKYGUfZQoaAVoBmgHXZRoaSmBlH2UKGgFjF86b2JqOmBhbHRfYm4xMjhfYWRkIDxldGhlcmV1bS5jb25zdGFudGlub3BsZS52bS5wcmVjb21waWxlZF9jb250cmFjdHMuYWx0X2JuMTI4LmFsdF9ibjEyOF9hZGQ+YJRoB12UaG4pgZR9lChoBWgGaAddlGgAjAdsaXRlcmFslJOUKYGUfZQoaAVqFAIAAGgHXZRoP4wNYWx0X2JuMTI4X2FkZJSFlIGUfZQoaAVoBmggahsCAABoIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZRoE12UKIwEeHJlZpSMAnB5lIwGcHktb2JqlGVoFV2UaBddlGgZXZR1aBxqGQIAAGgdTmgfTmggahYCAAB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjAhpbnRlcm5hbJSIjAVyZWZpZJSMSGV0aGVyZXVtLmNvbnN0YW50aW5vcGxlLnZtLnByZWNvbXBpbGVkX2NvbnRyYWN0cy5hbHRfYm4xMjguYWx0X2JuMTI4X2FkZJSMCHJlZnRpdGxllIxIZXRoZXJldW0uY29uc3RhbnRpbm9wbGUudm0ucHJlY29tcGlsZWRfY29udHJhY3RzLmFsdF9ibjEyOC5hbHRfYm4xMjhfYWRklHVoHGhtaB1OaB9OaCBqEgIAAHViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoaGgdjJMvaG9tZS9ydW5uZXIvd29yay9leGVjdXRpb24tc3BlY3MvZXhlY3V0aW9uLXNwZWNzL2RvYy9hdXRvYXBpL2V0aGVyZXVtL2NvbnN0YW50aW5vcGxlL3ZtL3ByZWNvbXBpbGVkX2NvbnRyYWN0cy9hbHRfYm4xMjgvaW5kZXgucnN0OjMzOjxhdXRvc3VtbWFyeT6UaB9LAWggag8CAAB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcag0CAABoHU5oH05oIGoKAgAAdWJqDgIAACmBlH2UKGgFaAZoB12UaGkpgZR9lChoBYwsVGhlIEFMVF9CTjEyOCBhZGRpdGlvbiBwcmVjb21waWxlZCBjb250cmFjdC6UaAddlGg/jCxUaGUgQUxUX0JOMTI4IGFkZGl0aW9uIHByZWNvbXBpbGVkIGNvbnRyYWN0LpSFlIGUfZQoaAVoBmggakYCAABoIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaGhoHYyTL2hvbWUvcnVubmVyL3dvcmsvZXhlY3V0aW9uLXNwZWNzL2V4ZWN1dGlvbi1zcGVjcy9kb2MvYXV0b2FwaS9ldGhlcmV1bS9jb25zdGFudGlub3BsZS92bS9wcmVjb21waWxlZF9jb250cmFjdHMvYWx0X2JuMTI4L2luZGV4LnJzdDozMzo8YXV0b3N1bW1hcnk+lGgfSwFoIGpDAgAAdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGoNAgAAaB1OaB9OaCBqCgIAAHViZWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxqCAIAAGgdTmgfTmggagUCAAB1YmoJAgAAKYGUfZQoaAVoBmgHXZQoag4CAAApgZR9lChoBWgGaAddlGhpKYGUfZQoaAWMXzpvYmo6YGFsdF9ibjEyOF9tdWwgPGV0aGVyZXVtLmNvbnN0YW50aW5vcGxlLnZtLnByZWNvbXBpbGVkX2NvbnRyYWN0cy5hbHRfYm4xMjguYWx0X2JuMTI4X211bD5glGgHXZRobimBlH2UKGgFaAZoB12UahoCAAApgZR9lChoBWppAgAAaAddlGg/jA1hbHRfYm4xMjhfbXVslIWUgZR9lChoBWgGaCBqbgIAAGghaANoHWhEaB9LAHViYWgOfZQoaBBdlGgTXZQoaiUCAACMAnB5lIwGcHktb2JqlGVoFV2UaBddlGgZXZR1aBxqGQIAAGgdTmgfTmggamsCAAB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjAhpbnRlcm5hbJSIjAVyZWZpZJSMSGV0aGVyZXVtLmNvbnN0YW50aW5vcGxlLnZtLnByZWNvbXBpbGVkX2NvbnRyYWN0cy5hbHRfYm4xMjguYWx0X2JuMTI4X211bJSMCHJlZnRpdGxllIxIZXRoZXJldW0uY29uc3RhbnRpbm9wbGUudm0ucHJlY29tcGlsZWRfY29udHJhY3RzLmFsdF9ibjEyOC5hbHRfYm4xMjhfbXVslHVoHGhtaB1OaB9OaCBqZwIAAHViYWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxoaGgdjJMvaG9tZS9ydW5uZXIvd29yay9leGVjdXRpb24tc3BlY3MvZXhlY3V0aW9uLXNwZWNzL2RvYy9hdXRvYXBpL2V0aGVyZXVtL2NvbnN0YW50aW5vcGxlL3ZtL3ByZWNvbXBpbGVkX2NvbnRyYWN0cy9hbHRfYm4xMjgvaW5kZXgucnN0OjMzOjxhdXRvc3VtbWFyeT6UaB9LAWggamQCAAB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcag0CAABoHU5oH05oIGphAgAAdWJqDgIAACmBlH2UKGgFaAZoB12UaGkpgZR9lChoBYwyVGhlIEFMVF9CTjEyOCBtdWx0aXBsaWNhdGlvbiBwcmVjb21waWxlZCBjb250cmFjdC6UaAddlGg/jDJUaGUgQUxUX0JOMTI4IG11bHRpcGxpY2F0aW9uIHByZWNvbXBpbGVkIGNvbnRyYWN0LpSFlIGUfZQoaAVoBmggapgCAABoIWgDaB1oRGgfSwB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UdWgcaGhoHYyTL2hvbWUvcnVubmVyL3dvcmsvZXhlY3V0aW9uLXNwZWNzL2V4ZWN1dGlvbi1zcGVjcy9kb2MvYXV0b2FwaS9ldGhlcmV1bS9jb25zdGFudGlub3BsZS92bS9wcmVjb21waWxlZF9jb250cmFjdHMvYWx0X2JuMTI4L2luZGV4LnJzdDozMzo8YXV0b3N1bW1hcnk+lGgfSwFoIGqVAgAAdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGoNAgAAaB1OaB9OaCBqYQIAAHViZWgOfZQoaBBdlGgTXZRoFV2UaBddlGgZXZR1aBxqCAIAAGgdTmgfTmggagUCAAB1YmoJAgAAKYGUfZQoaAVoBmgHXZQoag4CAAApgZR9lChoBWgGaAddlGhpKYGUfZQoaAWMczpvYmo6YGFsdF9ibjEyOF9wYWlyaW5nX2NoZWNrIDxldGhlcmV1bS5jb25zdGFudGlub3BsZS52bS5wcmVjb21waWxlZF9jb250cmFjdHMuYWx0X2JuMTI4LmFsdF9ibjEyOF9wYWlyaW5nX2NoZWNrPmCUaAddlGhuKYGUfZQoaAVoBmgHXZRqGgIAACmBlH2UKGgFarsCAABoB12UaD+MF2FsdF9ibjEyOF9wYWlyaW5nX2NoZWNrlIWUgZR9lChoBWgGaCBqwAIAAGghaANoHWhEaB9LAHViYWgOfZQoaBBdlGgTXZQoaiUCAACMAnB5lIwGcHktb2JqlGVoFV2UaBddlGgZXZR1aBxqGQIAAGgdTmgfTmggar0CAAB1YmFoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjAhpbnRlcm5hbJSIjAVyZWZpZJSMUmV0aGVyZXVtLmNvbnN0YW50aW5vcGxlLnZtLnByZWNvbXBpbGVkX2NvbnRyYWN0cy5hbHRfYm4xMjguYWx0X2JuMTI4X3BhaXJpbmdfY2hlY2uUjAhyZWZ0aXRsZZSMUmV0aGVyZXVtLmNvbnN0YW50aW5vcGxlLnZtLnByZWNvbXBpbGVkX2NvbnRyYWN0cy5hbHRfYm4xMjguYWx0X2JuMTI4X3BhaXJpbmdfY2hlY2uUdWgcaG1oHU5oH05oIGq5AgAAdWJhaA59lChoEF2UaBNdlGgVXZRoF12UaBldlHVoHGhoaB2Mky9ob21lL3J1bm5lci93b3JrL2V4ZWN1dGlvbi1zcGVjcy9leGVjdXRpb24tc3BlY3MvZG9jL2F1dG9hcGkvZXRoZXJldW0vY29uc3RhbnRpbm9wbGUvdm0v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IWgDaB1oRGgfSwB1Ymg/WPYCAAAKCiAgICAjIE9QRVJBVElPTgogICAgeDBfYnl0ZXMgPSBidWZmZXJfcmVhZChkYXRhLCBVMjU2KDApLCBVMjU2KDMyKSkKICAgIHgwX3ZhbHVlID0gVTI1Ni5mcm9tX2JlX2J5dGVzKHgwX2J5dGVzKQogICAgeTBfYnl0ZXMgPSBidWZmZXJfcmVhZChkYXRhLCBVMjU2KDMyKSwgVTI1NigzMikpCiAgICB5MF92YWx1ZSA9IFUyNTYuZnJvbV9iZV9ieXRlcyh5MF9ieXRlcykKICAgIHgxX2J5dGVzID0gYnVmZmVyX3JlYWQoZGF0YSwgVTI1Nig2NCksIFUyNTYoMzIpKQogICAgeDFfdmFsdWUgPSBVMjU2LmZyb21fYmVfYnl0ZXMoeDFfYnl0ZXMpCiAgICB5MV9ieXRlcyA9IGJ1ZmZlcl9yZWFkKGRhdGEsIFUyNTYoOTYpLCBVMjU2KDMyKSkKICAgIHkxX3ZhbHVlID0gVTI1Ni5mcm9tX2JlX2J5dGVzKHkxX2J5dGVzKQoKICAgIGZvciBpIGluICh4MF92YWx1ZSwgeTBfdmFsdWUsIHgxX3ZhbHVlLCB5MV92YWx1ZSk6CiAgICAgICAgaWYgaSA+PSBBTFRfQk4xMjhfUFJJTUU6CiAgICAgICAgICAgIHJhaXNlIE91dE9mR2FzRXJyb3IKCiAgICB0cnk6CiAgICAgICAgcDAgPSBCTlAoQk5GKHgwX3ZhbHVlKSwgQk5GKHkwX3ZhbHVlKSkKICAgICAgICBwMSA9IEJOUChCTkYoeDFfdmFsdWUpLCBCTkYoeTFfdmFsdWUpKQogICAgZXhjZXB0IFZhbHVlRXJyb3I6CiAgICAgICAgcmFpc2UgT3V0T2ZHYXNFcnJvcgoKICAgIHAgPSBwMCArIHAxCgogICAgZXZtLm91dHB1dCA9IHAueC50b19iZV9ieXRlczMyKCkgKyBwLnkudG9fYmVfYnl0ZXMzMigpCpSFlIGUfZQoaAVoBmggaiwEAABoIWgDaB1oRGgfSwB1YmVoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjAZzb3VyY2WUjHMvaG9tZS9ydW5uZXIvd29yay9leGVjdXRpb24tc3BlY3MvZXhlY3V0aW9uLXNwZWNzL3Ny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AACMB29ianR5cGWUajUGAACMCGRlc2N0eXBllGo1BgAAjAdub2luZGV4lIl1aBxqWgMAAGgdaERoH0sAaCBqcwUAAGghaAN1YmorBAAAKYGUfZQoaAVYJQUAAGRlZiBhbHRfYm4xMjhfcGFpcmluZ19jaGVjayhldm06IEV2bSkgLT4gTm9uZToKICAgIGRhdGEgPSBldm0ubWVzc2FnZS5kYXRhCgogICAgIyBHQVMKICAgIGNoYXJnZV9nYXMoZXZtLCBVaW50KDgwMDAwICogKGxlbihkYXRhKSAvLyAxOTIpICsgMTAwMDAwKSkKCiAgICAjIE9QRVJBVElPTgogICAgaWYgbGVuKGRhdGEpICUgMTkyICE9IDA6CiAgICAgICAgcmFpc2UgT3V0T2ZHYXNFcnJvcgogICAgcmVzdWx0ID0gQk5GMTIuZnJvbV9pbnQoMSkKICAgIGZvciBpIGluIHJhbmdlKGxlbihkYXRhKSAvLyAxOTIpOgogICAgICAgIHZhbHVlcyA9IFtdCiAgICAgICAgZm9yIGogaW4gcmFuZ2UoNik6CiAgICAgICAgICAgIHZhbHVlID0gVTI1Ni5mcm9tX2JlX2J5dGVzKAogICAgICAgICAgICAgICAgZGF0YVtpICogMTkyICsgMzIgKiBqIDogaSAqIDE5MiArIDMyICogKGogKyAxKV0KICAgICAgICAgICAgKQogICAgICAgICAgICBpZiB2YWx1ZSA+PSBBTFRfQk4xMjhfUFJJTUU6CiAgICAgICAgICAgICAgICByYWlzZSBPdXRPZkdhc0Vycm9yCiAgICAgICAgICAgIHZhbHVlcy5hcHBlbmQoaW50KHZhbHVlKSkKCiAgICAgICAgdHJ5OgogICAgICAgICAgICBwID0gQk5QKEJORih2YWx1ZXNbMF0pLCBCTkYodmFsdWVzWzFdKSkKICAgICAgICAgICAgcSA9IEJOUDIoCiAgICAgICAgICAgICAgICBCTkYyKCh2YWx1ZXNbM10sIHZhbHVlc1syXSkpLCBCTkYyKCh2YWx1ZXNbNV0sIHZhbHVlc1s0XSkpCiAgICAgICAgICAgICkKICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKICAgICAgICAgICAgcmFpc2UgT3V0T2ZHYXNFcnJvcigp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ICAgICAgICAgICAgICBCTkYyKCh2YWx1ZXNbM10sIHZhbHVlc1syXSkpLCBCTkYyKCh2YWx1ZXNbNV0sIHZhbHVlc1s0XSkpCiAgICAgICAgICAgICkKICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKICAgICAgICAgICAgcmFpc2UgT3V0T2ZHYXNFcnJvcigpCiAgICAgICAgZW5zdXJlKAogICAgICAgICAgICBwLm11bF9ieShBTFRfQk4xMjhfQ1VSVkVfT1JERVIpID09IEJOUC5wb2ludF9hdF9pbmZpbml0eSgpLAogICAgICAgICAgICBPdXRPZkdhc0Vycm9yLAogICAgICAgICkKICAgICAgICBlbnN1cmUoCiAgICAgICAgICAgIHEubXVsX2J5KEFMVF9CTjEyOF9DVVJWRV9PUkRFUikgPT0gQk5QMi5wb2ludF9hdF9pbmZpbml0eSgpLAogICAgICAgICAgICBPdXRPZkdhc0Vycm9yLAogICAgICAgICkKICAgICAgICBpZiBwICE9IEJOUC5wb2ludF9hdF9pbmZpbml0eSgpIGFuZCBxICE9IEJOUDIucG9pbnRfYXRfaW5maW5pdHkoKToKICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0ICogcGFpcmluZyhxLCBwKQoKICAgIGlmIHJlc3VsdCA9PSBCTkYxMi5mcm9tX2ludCgxKToKICAgICAgICBldm0ub3V0cHV0ID0gVTI1NigxKS50b19iZV9ieXRlczMyKCkKICAgIGVsc2U6CiAgICAgICAgZXZtLm91dHB1dCA9IFUyNTYoMCkudG9fYmVfYnl0ZXMzMigpCpSFlIGUfZQoaAVoBmggaj0GAABoIWgDaB1oRGgfSwB1YmVoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjAZzb3VyY2WUjHMvaG9tZS9ydW5uZXIvd29yay9leGVjdXRpb24tc3BlY3MvZXhlY3V0aW9uLXNwZWNzL3NyYy9ldGhlcmV1bS9jb25zdGFudGlub3BsZS92bS9wcmVjb21waWxlZF9jb250cmFjdHMvYWx0X2JuMTI4LnB5lIwJeG1sOnNwYWNllGqkAQAAjAVmb3JjZZSJjAhsYW5ndWFnZZSMBnB5dGhvbpSMDmhpZ2hsaWdodF9hcmdzlH2UamIEAABLAXOMB2xpbmVub3OUiXVoHGoqBAAAaB1oHmgfS1doIGpzBQAAaCFoA3ViZWgOfZQoaBBdlGpQAQAAYWgTXZRoFV2UjBdhbHRfYm4xMjhfcGFpcmluZ19jaGVja5RhaBddlGgZXZR1aBxoM2gdaB5oH0tKaCBqLQMAAGghaAN1YmVoDn2UKGgQXZRo7WFoE12UaBVdlIwObW9kdWxlIGRldGFpbHOUYWgXXZRoGV2UdWgcaDNoHWgeaB9LI2ggaDVoIWgDdWJlaA59lChoEF2UjDBldGhlcmV1bS12aXJ0dWFsLW1hY2hpbmUtZXZtLWFsdC1ibjEyOC1jb250cmFjdHOUYWgTXZRoFV2UjDJldGhlcmV1bSB2aXJ0dWFsIG1hY2hpbmUgKGV2bSkgYWx0X2JuMTI4IGNvbnRyYWN0c5RhaBddlGgZXZR1aBxoM2gdaB5oH0sEaCBoA2ghaAN1YmVoDn2UKGgQXZRoE12UaBVdlGgXXZRoGV2UjAZzb3VyY2WUaER1aBxoAYwOY3VycmVudF9zb3VyY2WUaESMDGN1cnJlbnRfbGluZZRLAIwIc2V0dGluZ3OUjBFkb2N1dGlscy5mcm9udGVuZJSMBlZhbHVlc5STlCmBlH2UKIwMcmVwb3J0X2xldmVslEsCjApoYWx0X2xldmVslEsEjBFleGl0X3N0YXR1c19sZXZlbJRLBYwFZGVidWeUTowOd2FybmluZ19zdHJlYW2UTowJdHJhY2ViYWNrlE6MD291dHB1dF9lbmNvZGluZ5SMBXV0Zi04lIwdb3V0cHV0X2VuY29kaW5nX2Vycm9yX2hhbmRsZXKUjBF4bWxjaGFycmVmcmVwbGFjZZSMDmVycm9yX2VuY29kaW5nlIwFdXRmLTiUjBxlcnJvcl9lbmNvZGluZ19lcnJvcl9oYW5kbGVylIwQYmFja3NsYXNocmVwbGFjZZSME3JlY29yZF9kZXBlbmRlbmNpZXOUjA5kb2N1dGlscy51dGlsc5SMDkRlcGVuZGVuY3lMaXN0lJOUKYGUfZQojARsaXN0lF2UjARmaWxllE51YowGY29uZmlnlE6MDWR1bXBfc2V0dGluZ3OUTowOZHVtcF9pbnRlcm5hbHOUTowPZHVtcF90cmFuc2Zvcm1zlE6MD2R1bXBfcHNldWRvX3htbJROjBBleHBvc2VfaW50ZXJuYWxzlE6MDnN0cmljdF92aXNpdG9ylE6MD19kaXNhYmxlX2NvbmZpZ5ROjAdfc291cmNllE6MDF9kZXN0aW5hdGlvbpSMU2RvYy9kaWZmcy9jb25zdGFudGlub3BsZV9pc3RhbmJ1bC92bS9wcmVjb21waWxlZF9jb250cmFjdHMvYWx0X2JuMTI4L2luZGV4LnBpY2tsZTY0lIwNX2NvbmZpZ19maWxlc5RdlIwRbGluZV9sZW5ndGhfbGltaXSUTRAnjAl0YWJfd2lkdGiUSwiMEHN5bnRheF9oaWdobGlnaHSUjARsb25nlIwMc21hcnRfcXVvdGVzlImME3NtYXJ0cXVvdGVzX2xvY2FsZXOUTowdY2hhcmFjdGVyX2xldmVsX2lubGluZV9tYXJrdXCUiYwGd3JpdGVylIwDeG1slIwZY29tcGFyZV9zZWN0aW9uc19ieV9uYW1lc5RLAYwMZHVtcF9yc3RkaWZmlE6MBV9ib3RolH2UKGg4TowJZ2VuZXJhdG9ylE6MCWRhdGVzdGFtcJROjAtzb3VyY2VfbGlua5ROjApzb3VyY2VfdXJslE6MDXRvY19iYWNrbGlua3OUag0CAACMEmZvb3Rub3RlX2JhY2tsaW5rc5RLAYwNc2VjdG51bV94Zm9ybZRLAYwOZG9jdGl0bGVfeGZvcm2USwGMDWRvY2luZm9feGZvcm2USwGMEnNlY3RzdWJ0aXRsZV94Zm9ybZRLAIwOc3RyaXBfY29tbWVudHOUTowOaW5wdXRfZW5jb2RpbmeUTowcaW5wdXRfZW5jb2RpbmdfZXJyb3JfaGFuZGxlcpSMBnN0cmljdJSMDWxhbmd1YWdlX2NvZGWUjAJlbpSMDnBlcF9yZWZlcmVuY2VzlE6MDHBlcF9iYXNlX3VybJSMH2h0dHA6Ly93d3cucHl0aG9uLm9yZy9kZXYvcGVwcy+UjBVwZXBfZmlsZV91cmxfdGVtcGxhdGWUjAhwZXAtJTA0ZJSMDnJmY19yZWZlcmVuY2VzlE6MDHJmY19iYXNlX3VybJSMG2h0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL5SMHXRyaW1fZm9vdG5vdGVfcmVmZXJlbmNlX3NwYWNllE6MFmZpbGVfaW5zZXJ0aW9uX2VuYWJsZWSUSwGMC3Jhd19lbmFibGVklEsBjA5hdXRvX2lkX3ByZWZpeJSMAmlklIwJaWRfcHJlZml4lGgGjBtzdHJpcF9lbGVtZW50c193aXRoX2NsYXNzZXOUTowNc3RyaXBfY2xhc3Nlc5ROdYwEYm90aJR9lIwKX29wdGlvbnNUb5SMBV9ib3RolIwLX29sZF9zb3VyY2WUjE8vaG9tZS9ydW5uZXIvd29yay9leGVjdXRpb24tc3BlY3MvZXhlY3V0aW9uLXNwZWNzLy50b3gvZG9jcy9zdGFnZTBfb3V0L2F1dG9hcGkvlIwLX25ld19zb3VyY2WUjAlkb2MvZGlmZnOUavgGAABq+QYAAIwWaWdub3JlX2luX3NlY3Rpb25fbmFtZZRdlCiMDmNvbnN0YW50aW5vcGxllIwIaXN0YW5idWyUZXVijAhyZXBvcnRlcpROjBBpbmRpcmVjdF90YXJnZXRzlF2UjBFzdWJzdGl0dXRpb25fZGVmc5R9lIwSc3Vic3RpdHV0aW9uX25hbWVzlH2UjAhyZWZuYW1lc5R9lIwGcmVmaWRzlH2UjAduYW1laWRzlH2UjAluYW1ldHlwZXOUfZRoEH2UjA1mb290bm90ZV9yZWZzlH2UjA1jaXRhdGlvbl9yZWZzlH2UjA1hdXRvZm9vdG5vdGVzlF2UjBFhdXRvZm9vdG5vdGVfcmVmc5RdlIwQc3ltYm9sX2Zvb3Rub3Rlc5RdlIwUc3ltYm9sX2Zvb3Rub3RlX3JlZnOUXZSMCWZvb3Rub3Rlc5RdlIwJY2l0YXRpb25zlF2UjBJhdXRvZm9vdG5vdGVfc3RhcnSUSwGMFXN5bWJvbF9mb290bm90ZV9zdGFydJRLAIwKaWRfY291bnRlcpSMC2NvbGxlY3Rpb25zlIwHQ291bnRlcpSTlH2UhZRSlIwOcGFyc2VfbWVzc2FnZXOUXZSMEnRyYW5zZm9ybV9tZXNzYWdlc5RdlIwLdHJhbnNmb3JtZXKUTowLaW5jbHVkZV9sb2eUXZSMCmRlY29yYXRpb26UTmghaAN1Yi4=