UEtJWDEgeyB9CkRFRklOSVRJT05TIElNUExJQ0lUIFRBR1MgOjo9CkJFR0lOCmlkLWNlIE9CSkVDVCBJREVOVElGSUVSICA6Oj0gIHtqb2ludC1pc28tY2NpdHQoMikgZHMoNSkgMjl9CmlkLWNlLWF1dGhvcml0eUtleUlkZW50aWZpZXIgT0JKRUNUIElERU5USUZJRVIgOjo9ICB7IGlkLWNlIDE3IH0KQXV0aG9yaXR5S2V5SWRlbnRpZmllciA6Oj0gU0VRVUVOQ0UgewogICAgICBrZXlJZGVudGlmaWVyICAgICAgICAgICAgIFswXSBLZXlJZGVudGlmaWVyICAgICAgICAgICAgT1BUSU9OQUwsCiAgICAgIGF1dGhvcml0eUNlcnRJc3N1ZXIgICAgICAgWzFdIEdlbmVyYWxOYW1lcyAgICAgICAgICAgICBPUFRJT05BTCwKICAgICAgYXV0aG9yaXR5Q2VydFNlcmlhbE51bWJlciBbMl0gQ2VydGlmaWNhdGVTZXJpYWxOdW1iZXIgIE9QVElPTkFMIH0KICAgIC0tIGF1dGhvcml0eUNlcnRJc3N1ZXIgYW5kIGF1dGhvcml0eUNlcnRTZXJpYWxOdW1iZXIgc2hhbGwgYm90aAogICAgLS0gYmUgcHJlc2VudCBvciBib3RoIGJlIGFic2dlbnQKS2V5SWRlbnRpZmllciA6Oj0gT0NURVQgU1RSSU5HCmlkLWNlLXN1Ymp4Y3RLZXlJZGVuLAogICAgIHBvbGljeVF1YWxpZmllcnMgICBTRVFVRU5DRSBTSVpFICgxLi5NQVgpIE9GCiAgICAgICAgICAgICBQb2xpY3lRdWFsaWZpZXJJbmZvIE9QVElPTkFMIH0KQ2VydFBvbGljeUlkIDo6PSBPQkpFQ1QgSURFTlRJRklFUgpQb2xpY3lRdWFsaWZpZXJJbmZvIDo6PSBTRVFVRU5DRSB7CiAgICAgICBwb2xpY3lRdWFsaWZpZXJJZCAgUG9saWN5UXVhbGlmaWVySWQsCiAgICAgICBxdWFsaWZpZXIgICAgICAgIEFOWSBERUZJTkVEIEJZIHBvbGljeVF1YWxpZmllcklkIH0KUG9saWN5UXVhbGlmaWVySWQgOjo9CiAgICBPQkpFQ1QgSURFTjo6PSBPQkpFQ1QgSURFTlRJRklFUgpob2xkSW5zdHJ1Y3Rpb24gT0JKRUNUIElERU5USUZJRVIgOjo9CiAgICAgICAgICB7am9pbnQtaXNvLWl0dS10KDIpIG1lbWJlci1ib2R5KDIpIHVzKDg0MCkgeDljbSgxMDA0MCkgMn0KaWQtaG9sZGluc3RydWN0aW9uLW5vbmUgT0JKRUNUIElERU5USUZJRVIgIDo6PQogICAgICAgICAgICAgICAge2hvbGRJbnN0cnVjdGlvbiAxfSAtLSBkZXByZWNhdGVkCmlkLWhvbGRpbnN0cnVjdGlvbi1jYWxsaXNzdWVyIE9CSkVDVCBJREVOVElGSUVSIDo6PQogICAgICAgICAgICAgICAge2hvbGRJbnN0cn11Y3Rpb24gMn0KaWQtaG9sZGluc3RydWN0aW9uLY6jamVjdCBPQkpFQ1QgSURFTlRJRklFUiA6Oj0KICAgICAgICAgICAgICAgIHtob2xkSW5zdHJ1Y3Rpb24gM30KaWQtY2UtaW52YWxpZGl0f0RhdGUgT0JKRUNUIElERU5USUZJRVIgOjo9IHsgaWQtY2UgMjQgfQpJbnZhbGlkaXR5RGF0ZSA6Oj0gIEdlbmVyYWxpemVkVGltZQpWaXNpYmxlU3RyaW5nIDo6PSBbVU5JVkVSU0FMIDI2XSBJTVBMSUNJVCBPQ1RFVCBTVFJJTkcKTnVtZXJpY1N0cmluZyA6Oj0gW1VOSVZFUlNBTCAxOF0gSU1QTElDSVQgT0NURVQgU1RSSU5HCklBNVN0cmluZyA6Oj0gW1VOSVZFUlNBTCAyMl0gSU1QTElDSVQgT0NURVQgU1RSSU5HClRlbGV0ZXhTdHJpbmcgOjo9IFtVTklWRVJTQUwgMjBdIElNUExJQ0lUIE9DVEVUIFNUUklORwpQcmludGFibGVTdHJpbmcgOjo9IFtVTklWRVJTQUwgMTldIElNUExJQ0lUIE9DVEVUIFNUUklORwpVbml2ZXJzYWxTdHJpbmcgOjo9IFtVTklWRVJTQUwgMjhdIElNUExJQ0lUIE9DVEVUIFNUUklORwogICAgICAgIC0tIFVuaXZlcnNhbFN0cmluZyAgICBBdHRyaWJ1dGVUeXBlICAgOjo9ICAgICB7aWQtYXQgOH0KWDUyMFN0YXRlT3JQcm92aW5jZU5hbWUgICAgICAgICA6Oj0gRGlyZWN0b3J5U3RyaW5nCmlkLWF0LW9yZ2FuaXphdGlvbk5hbWUgICAgICAgICAgQXR0cmlidXRlVHlwZSAgIDo6PSAgICAge2lkLWF0IDEwfQpYNTIwT3JnYW5pemF0aW9uTmFtZSA6Oj0gRGlyZWN0b3J5U3RyaW5nCmlkLWF0LW9yZ2FuaXphdGlvbmFsVWludE5hbWUgICAgQXR0cmlic3RyaWJ1dGlvblBvaW50ICAgICAgIFswXSAgICAgRVhQTElDSVQgRGlzdHJpYnV0aW9uUG9pbnROYW1lIE9QVElPTkFMLAogICAgIHJlYXNvbnMgICAgICAgICAgICAgICAgIFsxXSAgICAgUmVhc29uRmxhZ3MgT1BUSU9OQUwsCiAgICAgY1JMSXNzdWVyICAgICAgICAgICAgICAgWzJdICAgICBHZW5lcmFsTmFtZXMgT1BUSU9OQUwKfQpEaXN0cmlidXRpb25Qb2ludE5hbWUgOjo9IENIT0lDRSB7CiAgICBmdWxsTmFtZSAgICAgICAgICAgICAgICBbMF0gICAgIEdlbmVyYWxOYW1lcywKICAgIG5hbWVSZWxhdGl2ZVRvQ1JMSXNzdWVyIFsxXSAgICAgUmVsYXRpdmVEaXN0aW5ndWlzaGVkTmFtZQp9ClJlYXNvbkZsYWdzIDo6PSBCSVQgU1RSSU5HIHsKICAgICB1bnVzZWQgICAgICAgICAgICAgICAgICAoMCksCiAgICAga2V5Q29tcHJvbWlzZSAgIGJvZHkoMikgdXMoODQwKSB4OWNtKDEwMDQwKSAyfQppZC1ob2xkaW5zdHJ1Y3Rpb24tbm9uZSBPQkpFQ1QgSURFTlRJRklFUiAgOjo9CiAgICAgICAgICAgICAgICB7aG9sZEluc3RydWN0aW9uIDF9IC0tIGRlcHJlY2F0ZWQKaWQtaG9sZGluc3RydWN0aW9uLWNhbGxpc3N1ZXIgT0JKRUNUIElERU5USUZJRVIgOjo9CiAgICAgICAgICAgICAgICB7aG9sZEluc3RyfXVjQ1QgSURFTlRJRklFUiA6Oj0geyBpZC1jZSAyOSB9CkNlcnRpZmljYXRlSXNzdWVyIDo6PSBHZW5lcmFsTmFtZXMKaWQtY2UtaG9sZEluc3RydWN0aW9uQ29kZSBPQkpFQ1QgSURFTlRJRklFUiA6Oj0geyBpZC1jZTp7aCg5KTsgMjMgfQpIb2xkSW5zdHJ1Y3Rpb25Db2RlIDo6PSBPQkpFQ1QgSURFTlRJRklFUgpob2xkSW5zdHJ1Y3Rpb24gT0JKRUNUIElERU5USUZJRVIgOjo9CiAgICAgICAgICB7am9pbnQtaXNvLWl0dS10KDIpIG1lbWJlci1ib2R5KDIpIHVzKDg0MCkgeDljbSgxMDA0MCkgMn0KaWQtaG9sZGluc3RydWN0aW9uLW5vbmUgT0JKRUNUIElERU5USUZJRVIgIDo6PQogICAgICAgICAgICAgICAge2hvbGRJbnN0cnVjdGlvbiAxfSAtLSBkZXByZWNhdGVkCmlkLWhvbGRpbnN0cnVjdGlvbi1jYWxsaXNzdWVyIE9CSkVDVCBJREVOVElGSUVSIDo6PQogICAgICAgICAgICAgICAge2hvbGRJbnN0cn11Y3Rpb24gMn0KaWQtaG9sZGluc3RydWN0aW9uLXJlamVjdCBPQkpFQ1QgSURFTlRJRklFUiA6Oj0KICAgICAgICAgICAgICAgIHtob2xkSW5zdHJ1Y3Rpb24gM30KaWQtY2UtaW52YWxpZGl0f0RhdGUgT0JKRUNUIElERU5USUZJRVIgOjo9IHsgaWQtY2UgMjQgfQpJbnZhbGlkaXR5RGF0ZSA6Oj0gIEdlbmVyYWxpemVkVGltZQpWaXNpYmxlU3RyaW5nIDo6PSBbVU5JVkVSU0FMIDI2XSBJTVBMSUNJVCBPQ1RFVCBTVFJJTkcKTnVtZXJpY1N0cmluZyA6Oj0gW1VOSVZFUlNBTCAxOF0gSU1QTElDSVQgT0NURVQgU1RSSU5HCklBNVN0cmluZyA6Oj0gW1VOSVZFUlNBTCAyMl0gSU1QTElDSVQgT0NURVQgU1RSSU5HClRlbGV0ZXhTdHJpbmcgOjo9IFtVTklWRVJTQUwgMjBdIElNUExJQ0lUIE9DVEVUIFNUUklORwpQcmludGFibGVTdHJpbmcgOjo9IFtVTklWRVJTQUwgMTldIElNUExJQ0lUIE9DVEVUIFNUUklORwpVbml2ZXJzYWxTdHJpbmcgOjo9IFtVTklWRVJTQUwgMjhdIElNUExJQ0lUIE9DVEVUIFNUUklORwogICAgICAgIC0tIFVuaXZlcnNhbFN0cmluZyAgICBBdHRyaWJ1dGVUeXBlICAgOjo9ICAgICB7aWQtYXQgOH0KWDUyMFN0YXRlT3JQcm92aW5jZU5hbWUgICAgICAgICA6Oj0gRGlyZWN0b3J5U3RyaW5nCmlkLWF0LW9yZ2FuaXphdGlvbk5hbWUgICAgICAgICAgQXR0cmlidXRlVHlwZSAgIDo6PSAgICAwe2lkLWF0IDEwfQpYNTIwT3JnYW5pemF0aW9uTmFtZSA6Oj0gRGlyZWN0b3J5U3RyaW5nCmlkLWF0LW9yZ2FuaXphdGlvbmFsVWludE5hbWUgICAgQXR0cmlic3RyaWJ1dGlvblBvaW50ICAgICAgIFswXSAgICAgRVhQTElDSVQgRGlzdHJpYnV0aW9uUG9pbnROYW1lIE9QVElPTkFMLAogICAgIHJlYXNvbnMgICAgICAgICAgICAgICAgIFsxXSAgICAgUmVhc29uRmxhZ3MgT1BUSU9OQUwsCiAgICAgY1JMSXNzdWVyICAgICAgICAgICAgICAgWzJdICAgICBHZW5lcmFsTmFtZXMgT1BUSU9OICBHZW5lcmFsTmFtZXMgT1BUSU9OQUwKfQpEaXN0cmlidXRpb25Qb2ludE5hbWUgOjo9IENIT0lDRSB7CiAgICBmdWxsTmFtZSAgICAgICAgICAgICAgICBbMF0gICAgIEdlbmVyYWxOYW1lcywKICAgIG5hbWVSZWxhdGl2ZVRvQ1JMSXNzdWVyIFsxXSAgICAgUmVsYXRpdmVEaXN0aW5ndWlzaGVkTmFtZQp9ClJlYXNvbkZsYWdzIDo6PSBCSVQgU1RSSU5HIHsKICAgICB1bnVzZWQgICAgICAgICAgICAgICAgICAoMCksCiAgICAga2V5Q29tcHJvbWlzZSAgIGJvZHkoMikgdXMoODQwKSB4OWNtKDEwMDQwKSAyfQppZC1ob2xkaW5zdHJ1Y3Rpb24tbm9uZSBPQkpFQ1QgSURFTlRJRklFUiAgOjo9CiAgICAgICAgICAgICAgICB7aG9sZEluc3RydWN0aW9uIDF9IC0tIGRlcHJlY2F0ZWQKaWQtaG9sZGluc3RydWN0aW9uLWNhbGxpc3N1ZXIgT0JKRUNUIElERU5USUZJRVIgOjo9CiAgICAgICAgICAgICAgICB7aG9sZEluc3RyfXVjdGlvbiAyfQppZC1ob2xkaW5zdHJ1Y3Rpb24tcmVqZWN0IE9CSkVDVCBJREVOVElGSUVSIDo6PQogICAgICAgICAgICAgICAge2hvbGRJbnN0cnVjdGlvbiAzfQppZC1jZS1pbnZhbGlkaXR5RGF0ZSBPQkpFQ1QgSURFTlRJRklFUiA6Oj0geyBpZC1jZSAyNCB9CkludmFsaWRpdHlEYXRlIDo6PSAgR2VuZXJhbGl6ZWRUaW1lClZpc2libGVTdHJpbmcgOjo9IFtVTklWRVJTQUwgMjZdIElNUExJQ0lUIE9DVEVUIFNUUklORwpOdW1lcmljU3RyaW5nIDo6PSBbVU5JVkVSU0FMIDE4XSBJTVBMSUNJVCBPQ1RFVCBTVFJJTkcKSUE1U3RyaW5nIDo6PSBbVU5JVkVSU0FMIDIyXSBJTVBMSUNJVCBPQ1RFVCBTVFJJTkcKVGVsZXRleFN0cmluZyA6Oj0gW1VOSVZFUlNBTCAyMF0gSU1QTElDSVQgT0NURVQgU1RSSU5HClByaW50YWJsZVN0cmluZyA6Oj0gW1VOSVZFUlNBTCAxOV0gSU1QTElDSVQgT0NURVQgU1RSSU5HClVuaXZlcnNhbFN0cmluZyA6Oj0gW1VOSVZFUlNBTCAyOF0gSU1QTElDSVQgT0NURVQgU1RSSU5HCiAgICAgICAgLS0gVW5pdmVyc2FsU3RyaW5nICAgIEF0dHJpYnV0ZVR5cGUgICA6Oj0gICAgIHtpZC1hdCA4fQpYNTIwU3RhdGVPclByb3ZpbmNlTmFtZSAgICAgICAgIDo6PSBEaXJlY3RvcnlTdHJpbmcKaWQtYXQtb3JnYW5pemF0aW9uTmFtZSAgICAgICAgICBBdHRyaWJ1dGVUeXBlICAgOjo9ICAgICB7aWQtYXQgMTB9Clg1MjBPcmdhbml6YXRpb25OYW1lIDo6PSBEaXJlY3RvcnlTdHJpbmcKaWQtYXQtb3JnYW5pemF0aW9uYWxVbml0TmFtZSAgICBBdHRyaWJ1dGVUeXBlICAgOjo9ICAgICB7aWQtYXQgMTF9Clg1MjBPcmdhbml6YXRpQUwKfQpEaXN0cmlidXRpb25Qb2ludE5hbWUgOjo9IENIT0lDRSB7CiAgICBmdWxsTmFtZSAgICAgICAgICAgICAgICBbMF0gICAgIEdlbmVyYWxOYW1lcywKICAgIG5hbWVSZWxhdGl2ZVRvQ1JMSXNzdWVyIFsxXSAgICAgUmVsYXRpdmVEaXN0aW5ndWlzaGVkTmFtZQp9ClJlYXNvbkZsYWdzIDo6PSBCSVQgU1RSSU5HIHsKICAgICB1bnVzZWQgICAgICAgICAgICAgICAgICAoMCksCiAgICAga2V5Q29tcHJvbWlzZSAgIGJvZHkoMikgdXMoODQwKSB4OWNtKDEwMDQwKSAyfQppZC1ob2xkaW5zdHJ1Y3Rpb24tbm9uZSBPQkpFQ1QgSURFTlRJRklFUiAgOjo9CiAgICAgICAgICAgICAgICB7aG9sZEluc3RydWN0aW9uIDF9IC0tIGRlcHJlY2F0ZWQKaWQtaG9sZGluc3RydWN0aW9uLWNhbGxpc3N1ZXIgT0JKRUNUIElERU5USUZJRVIgOjo9CiAgICAgICAgICAgICAgICB7aG9sZEluc3RyfXVjdGlvbiAyfQppZC1ob2xkaW5zdHJ1Y3Rpb24tcmVqZWN0IE9CSkVDVCBJREVOVElGSUVSIDo6PQogICAgICAgICAgICAgICAge2hvbGRJbnN0cnVjdGlvbiAzfQppZC1jZS1pbnZhbGlkaXR5RGF0ZSBPQkpFQ1QgSURFTlRJRklFUiA6Oj0geyBpZC1jZSAyNCB9CkludmFsaWRpdHlEYXRlIDo6PSAgR2VuZXJhbGl6ZWRUaW1lClZpc2libGVTdHJpbmcgOjo9IFtVTklWRVJTQUwgMjZdIElNUExJQ0lUIE9DVEVUIFNUUklORwpOdW1lcmljU3RyaW5nIDo6PSBbVU5JVkVSU0FMIDE4XSBJTVBMSUNJVCBPQ1RFVCBTVFJJTkcKSUE1U3RyaW5nIDo6PSBbVU5JVkVSU0FMIDIyXSBJTVBMSUNJVCBPQ1RFVCBTVFJJTkcKVGVsZXRleFN0cmluZyA6Oj0gW1VOSVZFUlNBTCAyMF0gSU1QTElDSVQgT0NURVQgU1RSSU5HClByaW50YWJsZVN0cmluZyA6Oj0gW1VOSVZFUlNBTCAxOV0gSU1QTElDSVQgT0NURVQgU1RSSU5HClVuaXZlcnNhbFN0cmluZyA6Oj0gW1VOSVZFUlNBTCAyOF0gSU1QTElDSVQgT0NURVQgU1RSSU5HCiAgICAgICAgLS0gVW5pdmVyc2FsU3RyaW5nICAgIEF0dHJpYnV0ZVR5cGUgICA6Oj0gICAgIHtpZC1hdCA4fQpYNTIwU3RhdGVPclByb3ZpbmNlTmFtZSAgICAgICAgIDo6PSBEaXJlY3RvcnlTdHJpbmcKaWQtYXQtb3JnYW5pemF0aW9uTmFtZSAgICAgICAgICBBdHRyaWJ1dGVUeXBlICAgOjo9ICAgICB7aWQtYXQgMTB9Clg1MjBPcmdhbml6YXRpb25OYW1lIDo6PSBEaXJlY3RvcnlTdHJpbmcKaWQtYXQtb3JnYW5pemF0aW9uYWxVbml0TmFtZSAgICBBdHRyaWJ1dGVUeXBlICAgOjo9ICAgICB7aWQtYXQgMTF9Clg1MjBPcmdhbml6YXRpb25hbFVuaXROYW1l