IyBNZXNzYWdlcyBmcmFu52FpcyBwb3VyIG9wY29kZXMuCiMgQ29weXJpZ2h0IKkgMTk5NiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIyBNaWNoZWwgUm9iaXRhaWxsZSA8cm9iaXRhaWxASVJPLlVNb250cmVhbC5DQT4sIHRyYWR1Y3RldXIgZGVwdWlzL3NpbmNlIDE5OTYuCiMKbXNnaWQgIiIKbXNnc3RyICIiCiJQcm9qZWN0LUlkLVZlcnNpb246IG9wY29kZXMgMi4xNHJlbDAzMDcxMlxuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMDMtMDctMTEgMTM6NTYrMDkzMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogMjAwMy0wOC0wNSAwODowMC0wNTAwXG4iCiJMYXN0LVRyYW5zbGF0b3I6IE1pY2hlbCBSb2JpdGFpbGxlIDxyb2JpdGFpbEBJUk8uVU1vbnRyZWFsLkNBPlxuIgoiTGFuZ3VhZ2UtVGVhbTogRnJlbmNoIDx0cmFkdWNAdHJhZHVjLm9yZz5cbiIKIk1JTUUtVmVyc2lvbjogMS4wXG4iCiJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9SVNPLTg4NTktMVxuIgoiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgoKIzogYWxwaGEtb3BjLmM6MzM1Cm1zZ2lkICJicmFuY2ggb3BlcmFuZCB1bmFsaWduZWQiCm1zZ3N0ciAib3DpcmFuZGUgZGUgYnJhbmNoZW1lbnQgbm9uIGFsaWdu6WUiCgojOiBhbHBoYS1vcGMuYzozNTggYWxwaGEtb3BjLmM6MzgwCm1zZ2lkICJqdW1wIGhpbnQgdW5hbGlnbmVkIgptc2dzdHIgInNhdXQgaW5kaWPpIG5vbiBhbGlnbukiCgojOiBhcmMtZGlzLmM6NTIKbXNnaWQgIklsbGVnYWwgbGltbSByZWZlcmVuY2UgaW4gbGFzdCBpbnN0cnVjdGlvbiFcbiIKbXNnc3RyICJS6WbpcmVuY2UgbGltaXRlIGlsbOlnYWxlIGRhbnMgbGEgZGVybmnocmUgaW5zdHJ1Y3Rpb24hXG4iCgojOiBhcm0tZGlzLmM6NTU0Cm1zZ2lkICI8aWxsZWdhbCBwcmVjaXNpb24+Igptc2dzdHIgIjxwculjaXNpb24gaWxs6WdhbGU+IgoKIzogYXJtLWRpcy5jOjExNjIKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXNlZCByZWdpc3RlciBuYW1lIHNldDogJXNcbiIKbXNnc3RyICJOb20gZGUgamV1IGRlIHJlZ2lzdHJlcyBpbmNvbm51OiAlc1xuIgoKIzogYXJtLWRpcy5jOjExNjkKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXNlZCBkaXNhc3NlbWJsZXIgb3B0aW9uOiAlc1xuIgptc2dzdHIgIk9wdGlvbiBkdSBk6XNhc3NlbWJsZXVyIG5vbiByZWNvbm51ZTogJXNcbiIKCiM6IGFybS1kaXMuYzoxMzQzCm1zZ2lkICIiCiJcbiIKIlRoZSBmb2xsb3dpbmcgQVJNIHNwZWNpZmljIGRpc2Fzc2VtYmxlciBvcHRpb25zIGFyZSBzdXBwb3J0ZWQgZm9yIHVzZSB3aXRoXG4iCiJ0aGUgLU0gc3dpdGNoOlxuIgptc2dzdHIgIiIKIlxuIgoiTGVzIG9wdGlvbnMgc3DpY2lmaXF1ZXMgQVJNIHN1aXZhbnRlcyBzb250IHN1cHBvcnTpZXMgYXZlYyBsJ3V0aWxpc2F0aW9uIGRlXG4iCiJsJ29wdGlvbiAtTTpcbiIKCiM6IGF2ci1kaXMuYzoxMTcgYXZyLWRpcy5jOjEyNwptc2dpZCAidW5kZWZpbmVkIgptc2dzdHIgIm5vbiBk6WZpbmkiCgojOiBhdnItZGlzLmM6MTc5Cm1zZ2lkICJJbnRlcm5hbCBkaXNhc3NlbWJsZXIgZXJyb3IiCm1zZ3N0ciAiRXJyZXVyIGludGVybmUgZHUgZOlzYXNzZW1ibGV1ciIKCiM6IGF2ci1kaXMuYzoyMjcKIywgYy1mb3JtYXQKbXNnaWQgInVua25vd24gY29uc3RyYWludCBgJWMnIgptc2dzdHIgImNvbnRyYWludGUgaW5jb25udWUgqyAlYyC7IgoKIzogY2dlbi1hc20uYzozNDggZnIzMC1pYmxkLmM6MTk1IGZydi1pYmxkLmM6MTk1IGlwMmstaWJsZC5jOjE5NQojOiBpcTIwMDAtaWJsZC5jOjE5NSBtMzJyLWlibGQuYzoxOTUgb3BlbnJpc2MtaWJsZC5jOjE5NSB4c3Rvcm15MTYtaWJsZC5jOjE5NQojLCBjLWZvcm1hdAptc2dpZCAib3BlcmFuZCBvdXQgb2YgcmFuZ2UgKCVsZCBub3QgYmV0d2VlbiAlbGQgYW5kICVsZCkiCm1zZ3N0ciAib3DpcmFuZGUgaG9ycyBsaW1pdGUgKCVsZCBuJ2VzdCBwYXMgZW50cmUgJWxkIGV0ICVsZCkiCgojOiBjZ2VuLWFzbS5jOjM2OQojLCBjLWZvcm1hdAptc2dpZCAib3BlcmFuZCBvdXQgb2YgcmFuZ2UgKCVsdSBub3QgYmV0d2VlbiAlbHUgYW5kICVsdSkiCm1zZ3N0ciAib3DpcmFuZGUgaG9ycyBsaW1pdGUgKCVsdSBuJ2VzdCBwYXMgZW50cmUgJWx1IGV0ICVsdSkiCgojOiBkMzB2LWRpcy5jOjMxMgojLCBjLWZvcm1hdAptc2dpZCAiPHVua25vd24gcmVnaXN0ZXIgJWQ+Igptc2dzdHIgIjxyZWdpc3RyZSBpbmNvbm51ICVkPiIKCiMuIENhbid0IGhhcHBlbi4KIzogZGlzLWJ1Zi5jOjU3CiMsIGMtZm9ybWF0Cm1zZ2lkICJVbmtub3duIGVycm9yICVkXG4iCm1zZ3N0ciAiRXJyZXVyIGluY29ubnVlICVkXG4iCgojOiBkaXMtYnVmLmM6NjIKIywgYy1mb3JtYXQKbXNnaWQgIkFkZHJlc3MgMHgleCBpcyBvdXQgb2YgYm91bmRzLlxuIgptc2dzdHIgIkFkcmVzc2UgMHgleCBlc3QgaG9ycyBsaW1pdGUuXG4iCgojOiBmcjMwLWFzbS5jOjMyMyBmcnYtYXNtLmM6NjI2IGlwMmstYXNtLmM6NTc0IGlxMjAwMC1hc20uYzo0NjAgbTMyci1hc20uYzozMjUKIzogb3BlbnJpc2MtYXNtLmM6MjYxIHhzdG9ybXkxNi1hc20uYzoyODQKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXplZCBmaWVsZCAlZCB3aGlsZSBwYXJzaW5nLlxuIgptc2dzdHIgIkNoYW1wIG5vbiByZWNvbm51ICVkIGxvcnMgZGUgbCdhbmFseXNlLlxuIgoKIzogZnIzMC1hc20uYzozNzMgZnJ2LWFzbS5jOjY3NiBpcDJrLWFzbS5jOjYyNCBpcTIwMDAtYXNtLmM6NTEwIG0zMnItYXNtLmM6Mzc1CiM6IG9wZW5yaXNjLWFzbS5jOjMxMSB4c3Rvcm15MTYtYXNtLmM6MzM0Cm1zZ2lkICJtaXNzaW5nIG1uZW1vbmljIGluIHN5bnRheCBzdHJpbmciCm1zZ3N0ciAibW7pbW9uaXF1ZSBtYW5xdWFudGUgZGFucyBsYSBzeW50YXhlIGRlIGxhIGNoYe5uZSIKCiMuIFdlIGNvdWxkbid0IHBhcnNlIGl0LgojOiBmcjMwLWFzbS5jOjUwOSBmcjMwLWFzbS5jOjUxMyBmcjMwLWFzbS5jOjYwMCBmcjMwLWFzbS5jOjcwMiBmcnYtYXNtLmM6ODEyCiM6IGZydi1hc20uYzo4MTYgZnJ2LWFzbS5jOjkwMyBmcnYtYXNtLmM6MTAwNSBpcDJrLWFzbS5jOjc2MCBpcDJrLWFzbS5jOjc2NAojOiBpcDJrLWFzbS5jOjg1MSBpcDJrLWFzbS5jOjk1MyBpcTIwMDAtYXNtLmM6NjQ2IGlxMjAwMC1hc20uYzo2NTAKIzogaXEyMDAwLWFzbS5jOjczNyBpcTIwMDAtYXNtLmM6ODM5IG0zMnItYXNtLmM6NTExIG0zMnItYXNtLmM6NTE1CiM6IG0zMnItYXNtLmM6NjAyIG0zMnItYXNtLmM6NzA0IG9wZW5yaXNjLWFzbS5jOjQ0NyBvcGVucmlzYy1hc20uYzo0NTEKIzogb3BlbnJpc2MtYXNtLmM6NTM4IG9wZW5yaXNjLWFzbS5jOjY0MCB4c3Rvcm15MTYtYXNtLmM6NDcwCiM6IHhzdG9ybXkxNi1hc20uYzo0NzQgeHN0b3JteTE2LWFzbS5jOjU2MSB4c3Rvcm15MTYtYXNtLmM6NjYzCm1zZ2lkICJ1bnJlY29nbml6ZWQgaW5zdHJ1Y3Rpb24iCm1zZ3N0ciAiaW5zdHJ1Y3Rpb24gbm9uIHJlY29ubnVlIgoKIzogZnIzMC1hc20uYzo1NTYgZnJ2LWFzbS5jOjg1OSBpcDJrLWFzbS5jOjgwNyBpcTIwMDAtYXNtLmM6NjkzIG0zMnItYXNtLmM6NTU4CiM6IG9wZW5yaXNjLWFzbS5jOjQ5NCB4c3Rvcm15MTYtYXNtLmM6NTE3CiMsIGMtZm9ybWF0Cm1zZ2lkICJzeW50YXggZXJyb3IgKGV4cGVjdGVkIGNoYXIgYCVjJywgZm91bmQgYCVjJykiCm1zZ3N0ciAiZXJyZXVyIGRlIHN5bnRheGUgKGNhcmFjdOhyZSCrICVjILsgYXR0ZW5kdSwgIKsgJWMguyBvYnRlbnUpIgoKIzogZnIzMC1hc20uYzo1NjYgZnJ2LWFzbS5jOjg2OSBpcDJrLWFzbS5jOjgxNyBpcTIwMDAtYXNtLmM6NzAzIG0zMnItYXNtLmM6NTY4CiM6IG9wZW5yaXNjLWFzbS5jOjUwNCB4c3Rvcm15MTYtYXNtLmM6NTI3CiMsIGMtZm9ybWF0Cm1zZ2lkICJzeW50YXggZXJyb3IgKGV4cGVjdGVkIGNoYXIgYCVjJywgZm91bmQgZW5kIG9mIGluc3RydWN0aW9uKSIKbXNnc3RyICJlcnJldXIgZGUgc3ludGF4ZSAoY2FyYWN06HJlIKsgJWMguyBhdHRlbmR1LCBmaW4gZGUgbCdpbnN0cnVjdGlvbiBvYnRlbnVlKSIKCiM6IGZyMzAtYXNtLmM6NTk0IGZydi1hc20uYzo4OTcgaXAyay1hc20uYzo4NDUgaXEyMDAwLWFzbS5jOjczMSBtMzJyLWFzbS5jOjU5NgojOiBvcGVucmlzYy1hc20uYzo1MzIgeHN0b3JteTE2LWFzbS5jOjU1NQptc2dpZCAianVuayBhdCBlbmQgb2YgbGluZSIKbXNnc3RyICJyZWJ1dCDgIGxhIGZpbiBkZSBsYSBsaWduZSIKCiM6IGZyMzAtYXNtLmM6NzAxIGZydi1hc20uYzoxMDA0IGlwMmstYXNtLmM6OTUyIGlxMjAwMC1hc20uYzo4MzgKIzogbTMyci1hc20uYzo3MDMgb3BlbnJpc2MtYXNtLmM6NjM5IHhzdG9ybXkxNi1hc20uYzo2NjIKbXNnaWQgInVucmVjb2duaXplZCBmb3JtIG9mIGluc3RydWN0aW9uIgptc2dzdHIgImZvcm1lIGQnaW5zdHJ1Y3Rpb24gbm9uIHJlY29ubnVlIgoKIzogZnIzMC1hc20uYzo3MTMgZnJ2LWFzbS5jOjEwMTYgaXAyay1hc20uYzo5NjQgaXEyMDAwLWFzbS5jOjg1MAojOiBtMzJyLWFzbS5jOjcxNSBvcGVucmlzYy1hc20uYzo2NTEgeHN0b3JteTE2LWFzbS5jOjY3NAojLCBjLWZvcm1hdAptc2dpZCAiYmFkIGluc3RydWN0aW9uIGAlLjUwcy4uLiciCm1zZ3N0ciAiaW5zdHJ1Y3Rpb24gZXJyb27pZSCrICUuNTBzLi4uILsiCgojOiBmcjMwLWFzbS5jOjcxNiBmcnYtYXNtLmM6MTAxOSBpcDJrLWFzbS5jOjk2NyBpcTIwMDAtYXNtLmM6ODUzCiM6IG0zMnItYXNtLmM6NzE4IG9wZW5yaXNjLWFzbS5jOjY1NCB4c3Rvcm15MTYtYXNtLmM6Njc3CiMsIGMtZm9ybWF0Cm1zZ2lkICJiYWQgaW5zdHJ1Y3Rpb24gYCUuNTBzJyIKbXNnc3RyICJpbnN0cnVjdGlvbiBlcnJvbullIKsgJS41MHMguyIKCiMuIERlZmF1bHQgdGV4dCB0byBwcmludCBpZiBhbiBpbnN0cnVjdGlvbiBpc24ndCByZWNvZ25pemVkLgojOiBmcjMwLWRpcy5jOjQxIGZydi1kaXMuYzo0MSBpcDJrLWRpcy5jOjQxIGlxMjAwMC1kaXMuYzo0MSBtMzJyLWRpcy5jOjQxCiM6IG1taXgtZGlzLmM6Mjg0IG9wZW5yaXNjLWRpcy5jOjQxIHhzdG9ybXkxNi1kaXMuYzo0MQptc2dpZCAiKnVua25vd24qIgptc2dzdHIgIippbmNvbm51KiIKCiM6IGZyMzAtZGlzLmM6MzIwIGZydi1kaXMuYzozNzEgaXAyay1kaXMuYzozMjkgaXEyMDAwLWRpcy5jOjE5MiBtMzJyLWRpcy5jOjI1MQojOiBvcGVucmlzYy1kaXMuYzoxMzggeHN0b3JteTE2LWRpcy5jOjE3MQojLCBjLWZvcm1hdAptc2dpZCAiVW5yZWNvZ25pemVkIGZpZWxkICVkIHdoaWxlIHByaW50aW5nIGluc24uXG4iCm1zZ3N0ciAiQ2hhbXAgbm9uIHJlY29ubnUgJWQgbG9ycyBkZSBsJ2ltcHJlc3Npb24gaW5zbi5cbiIKCiM6IGZyMzAtaWJsZC5jOjE2NiBmcnYtaWJsZC5jOjE2NiBpcDJrLWlibGQuYzoxNjYgaXEyMDAwLWlibGQuYzoxNjYKIzogbTMyci1pYmxkLmM6MTY2IG9wZW5yaXNjLWlibGQuYzoxNjYgeHN0b3JteTE2LWlibGQuYzoxNjYKIywgYy1mb3JtYXQKbXNnaWQgIm9wZXJhbmQgb3V0IG9mIHJhbmdlICglbGQgbm90IGJldHdlZW4gJWxkIGFuZCAlbHUpIgptc2dzdHIgIm9w6XJhbmRlIGhvcnMgbGltaXRlICglbGQgbidlc3QgcGFzIGVudHJlICVsZCBldCAlbHUpIgoKIzogZnIzMC1pYmxkLmM6MTc5IGZydi1pYmxkLmM6MTc5IGlwMmstaWJsZC5jOjE3OSBpcTIwMDAtaWJsZC5jOjE3OQojOiBtMzJyLWlibGQuYzoxNzkgb3BlbnJpc2MtaWJsZC5jOjE3OSB4c3Rvcm15MTYtaWJsZC5jOjE3OQojLCBjLWZvcm1hdAptc2dpZCAib3BlcmFuZCBvdXQgb2YgcmFuZ2UgKCVsdSBub3QgYmV0d2VlbiAwIGFuZCAlbHUpIgptc2dzdHIgIm9w6XJhbmRlIGhvcnMgbGltaXRlICglbHUgbidlc3QgcGFzIGVudHJlIDAgZXQgJWx1KSIKCiM6IGZyMzAtaWJsZC5jOjczMCBmcnYtaWJsZC5jOjgyOSBpcDJrLWlibGQuYzo2MDcgaXEyMDAwLWlibGQuYzo3MTMKIzogbTMyci1pYmxkLmM6NjU5IG9wZW5yaXNjLWlibGQuYzo2MzMgeHN0b3JteTE2LWlibGQuYzo2NzgKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXplZCBmaWVsZCAlZCB3aGlsZSBidWlsZGluZyBpbnNuLlxuIgptc2dzdHIgIkNoYW1wIG5vbiByZWNvbm51ICVkIGxvcnMgZGUgbGEgY29uc3RydWN0aW9uIGRlIGluc24uXG4iCgojOiBmcjMwLWlibGQuYzo5MzcgZnJ2LWlibGQuYzoxMTIxIGlwMmstaWJsZC5jOjY4NCBpcTIwMDAtaWJsZC5jOjg5MAojOiBtMzJyLWlibGQuYzo3OTIgb3BlbnJpc2MtaWJsZC5jOjczNSB4c3Rvcm15MTYtaWJsZC5jOjgyNgojLCBjLWZvcm1hdAptc2dpZCAiVW5yZWNvZ25pemVkIGZpZWxkICVkIHdoaWxlIGRlY29kaW5nIGluc24uXG4iCm1zZ3N0ciAiQ2hhbXAgbm9uIHJlY29ubnUgJWQgbG9ycyBkdSBk6WNvZGFnZSBkZSBpbnNuLlxuIgoKIzogZnIzMC1pYmxkLmM6MTA4NiBmcnYtaWJsZC5jOjEzNzUgaXAyay1pYmxkLmM6NzYxIGlxMjAwMC1pYmxkLmM6MTAyNAojOiBtMzJyLWlibGQuYzo5MDIgb3BlbnJpc2MtaWJsZC5jOjgxNSB4c3Rvcm15MTYtaWJsZC5jOjkzOQojLCBjLWZvcm1hdAptc2dpZCAiVW5yZWNvZ25pemVkIGZpZWxkICVkIHdoaWxlIGdldHRpbmcgaW50IG9wZXJhbmQuXG4iCm1zZ3N0ciAiQ2hhbXAgbm9uIHJlY29ubnUgJWQgbG9ycyBkZSBsYSBwcmlzZSBkJ3VuZSBvcOlyYW5kZSBpbnQuXG4iCgojOiBmcjMwLWlibGQuYzoxMjE1IGZydi1pYmxkLmM6MTYwOSBpcDJrLWlibGQuYzo4MTggaXEyMDAwLWlibGQuYzoxMTM4CiM6IG0zMnItaWJsZC5jOjk5MiBvcGVucmlzYy1pYmxkLmM6ODc1IHhzdG9ybXkxNi1pYmxkLmM6MTAzMgojLCBjLWZvcm1hdAptc2dpZCAiVW5yZWNvZ25pemVkIGZpZWxkICVkIHdoaWxlIGdldHRpbmcgdm1hIG9wZXJhbmQuXG4iCm1zZ3N0ciAiQ2hhbXAgbm9uIHJlY29ubnUgJWQgbG9ycyBkZSBsYSBwcmlzZSBkJ3VuZSBvcOlyYW5kZSB2bWEuXG4iCgojOiBmcjMwLWlibGQuYzoxMzQ5IGZydi1pYmxkLmM6MTg1MiBpcDJrLWlibGQuYzo4ODAgaXEyMDAwLWlibGQuYzoxMjYxCiM6IG0zMnItaWJsZC5jOjEwOTAgb3BlbnJpc2MtaWJsZC5jOjk0NCB4c3Rvcm15MTYtaWJsZC5jOjExMzQKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXplZCBmaWVsZCAlZCB3aGlsZSBzZXR0aW5nIGludCBvcGVyYW5kLlxuIgptc2dzdHIgIkNoYW1wIG5vbiByZWNvbm51ICVkIGxvcnMgZGUgbCdpbml0aWFsaXNhdGlvbiBkJ3VuZSBvcOlyYW5kZSBpbnQuXG4iCgojOiBmcjMwLWlibGQuYzoxNDcxIGZydi1pYmxkLmM6MjA4MyBpcDJrLWlibGQuYzo5MzAgaXEyMDAwLWlibGQuYzoxMzcyCiM6IG0zMnItaWJsZC5jOjExNzYgb3BlbnJpc2MtaWJsZC5jOjEwMDEgeHN0b3JteTE2LWlibGQuYzoxMjI0CiMsIGMtZm9ybWF0Cm1zZ2lkICJVbnJlY29nbml6ZWQgZmllbGQgJWQgd2hpbGUgc2V0dGluZyB2bWEgb3BlcmFuZC5cbiIKbXNnc3RyICJDaGFtcCBub24gcmVjb25udSAlZCBsb3JzIGRlIGwnaW5pdGlhbGlzYXRpb24gZCd1bmUgb3DpcmFuZGUgdm1hLlxuIgoKIzogZnJ2LWFzbS5jOjM2NQptc2dpZCAicmVnaXN0ZXIgbnVtYmVyIG11c3QgYmUgZXZlbiIKbXNnc3RyICJudW3pcm8gZGUgcmVnaXN0cmUgZG9pdCDqdHJlIHBhaXIiCgojIGg4MzAwLWRpcy5jOjM4MEludGVybmFsIGVycm9yOiBiYWQgc3BhcmMtb3Bjb2RlLmg6IFwiJXNcIiA9PSBcIiVzXCJcbiIKIzogaDgzMDAtZGlzLmM6Mzc3CiMsIGMtZm9ybWF0Cm1zZ2lkICJIbW1tbSAweCV4Igptc2dzdHIgIkh1bW1tbSAweCV4IgoKIzogaDgzMDAtZGlzLmM6NzYwCiMsIGMtZm9ybWF0Cm1zZ2lkICJEb24ndCB1bmRlcnN0YW5kIDB4JXggXG4iCm1zZ3N0ciAiTmUgY29tcHJlbmQgcGFzIDB4JXggXG4iCgojOiBoODUwMC1kaXMuYzoxNDMKIywgYy1mb3JtYXQKbXNnaWQgImNhbid0IGNvcGUgd2l0aCBpbnNlcnQgJWRcbiIKbXNnc3RyICJOZSBwZXV0IGfpcmVyIGwnaW5zZXJ0aW9uICVkXG4iCgojLiBDb3VsZG4ndCB1bmRlcnN0YW5kIGFueXRoaW5nLgojOiBoODUwMC1kaXMuYzozNTAKIywgYy1mb3JtYXQKbXNnaWQgIiUwMnhcdFx0KnVua25vd24qIgptc2dzdHIgIiUwMnhcdFx0KmluY29ubnUqIgoKIzogaTM4Ni1kaXMuYzoxNjk5Cm1zZ2lkICI8aW50ZXJuYWwgZGlzYXNzZW1ibGVyIGVycm9yPiIKbXNnc3RyICI8ZXJyZXVyIGludGVybmUgZHUgZOlzYXNzZW1ibGV1cj4iCgojOiBpYTY0LWdlbi5jOjI5NQojLCBjLWZvcm1hdAptc2dpZCAiJXM6IEVycm9yOiAiCm1zZ3N0ciAiJXM6IEVSUkVVUjogIgoKIzogaWE2NC1nZW4uYzozMDgKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBXYXJuaW5nOiAiCm1zZ3N0ciAiJXM6IEFWRVJUSVNTRU1FTlQ6ICIKCiM6IGlhNjQtZ2VuLmM6NDk0IGlhNjQtZ2VuLmM6NzI4CiMsIGMtZm9ybWF0Cm1zZ2lkICJtdWx0aXBsZSBub3RlICVzIG5vdCBoYW5kbGVkXG4iCm1zZ3N0ciAibm90ZSBtdWx0aXBsZSAlcyBuJ2VzdCBwYXMgdHJhaXTpZVxuIgoKIzogaWE2NC1nZW4uYzo2MDUKbXNnaWQgImNhbid0IGZpbmQgaWE2NC1pYy50YmwgZm9yIHJlYWRpbmdcbiIKbXNnc3RyICJuZSBwZXV0IHRyb3V2ZXIgaWE2NC1pYy50YmwgcG91ciBsYSBsZWN0dXJlXG4iCgojOiBpYTY0LWdlbi5jOjgxMAojLCBjLWZvcm1hdAptc2dpZCAiY2FuJ3QgZmluZCAlcyBmb3IgcmVhZGluZ1xuIgptc2dzdHIgIm5lIHBldXQgdHJvdXZlciAlcyBwb3VyIGxhIGxlY3R1cmVcbiIKCiM6IGlhNjQtZ2VuLmM6MTAzNAojLCBjLWZvcm1hdAptc2dpZCAiIgoibW9zdCByZWNlbnQgZm9ybWF0ICclcydcbiIKImFwcGVhcnMgbW9yZSByZXN0cmljdGl2ZSB0aGFuICclcydcbiIKbXNnc3RyICIiCiJsZSBwbHVzIHLpY2VudCBmb3JtYXQgJyVzJ1xuIgoiYXBwYXJh7nQgcGx1cyByZXN0cmljdGlmIHF1ZSAnJXMnXG4iCgojOiBpYTY0LWdlbi5jOjEwNDUKIywgYy1mb3JtYXQKbXNnaWQgIm92ZXJsYXBwaW5nIGZpZWxkICVzLT4lc1xuIgptc2dzdHIgImNoZXZhdWNoZW1lbnQgZGUgY2hhbXAgJXMtPiVzXG4iCgojOiBpYTY0LWdlbi5jOjEyMzYKIywgYy1mb3JtYXQKbXNnaWQgIm92ZXJ3cml0aW5nIG5vdGUgJWQgd2l0aCBub3RlICVkIChJQzolcylcbiIKbXNnc3RyICJzdXIt6WNyaXR1cmUgZGUgbGEgbm90ZSAlZCBhdmVjIGxhIG5vdGUgJWQgKElDOiVzKVxuIgoKIzogaWE2NC1nZW4uYzoxNDM1CiMsIGMtZm9ybWF0Cm1zZ2lkICJkb24ndCBrbm93IGhvdyB0byBzcGVjaWZ5ICUlIGRlcGVuZGVuY3kgJXNcbiIKbXNnc3RyICJuZSBzYWl0IGNvbW1lbnQgc3DpY2lmaWVyICUlIHBvdXIgbGEgZOlwZW5kYW5jZSAlc1xuIgoKIzogaWE2NC1nZW4uYzoxNDU3CiMsIGMtZm9ybWF0Cm1zZ2lkICJEb24ndCBrbm93IGhvdyB0byBzcGVjaWZ5ICMgZGVwZW5kZW5jeSAlc1xuIgptc2dzdHIgIk5lIHNhaXQgY29tbWVudCBzcOljaWZpZXIgIyBwb3VyIGxhIGTpcGVuZGVuY2UgJXNcbiIKCiM6IGlhNjQtZ2VuLmM6MTQ5NgojLCBjLWZvcm1hdAptc2dpZCAiSUM6JXMgWyVzXSBoYXMgbm8gdGVybWluYWxzIG9yIHN1Yi1jbGFzc2VzXG4iCm1zZ3N0ciAiSUM6JXMgWyVzXSBuJ2EgcGFzIGRlIHRlcm1pbmFscyBvdSBkZSBzb3VzLWNsYXNzZXNcbiIKCiM6IGlhNjQtZ2VuLmM6MTQ5OQojLCBjLWZvcm1hdAptc2dpZCAiSUM6JXMgaGFzIG5vIHRlcm1pbmFscyBvciBzdWItY2xhc3Nlc1xuIgptc2dzdHIgIklDOiVzIG4nYSBwYXMgZGUgdGVybWluYWxzIG91IGRlIHNvdXMtY2xhc3Nlc1xuIgoKIzogaWE2NC1nZW4uYzoxNTA4CiMsIGMtZm9ybWF0Cm1zZ2lkICJubyBpbnNucyBtYXBwZWQgZGlyZWN0bHkgdG8gdGVybWluYWwgSUMgJXMgWyVzXSIKbXNnc3RyICJhdWN1biBpbnNucyBtYXBw6SBkaXJlY3RlbWVudCBhdSB0ZXJtaW5hbCBJQyAlcyBbJXNdIgoKIzogaWE2NC1nZW4uYzoxNTExCiMsIGMtZm9ybWF0Cm1zZ2lkICJubyBpbnNucyBtYXBwZWQgZGlyZWN0bHkgdG8gdGVybWluYWwgSUMgJXNcbiIKbXNnc3RyICJhdWN1biBpbnNucyBtYXBw6SBkaXJlY3RlbWVudCBhdSB0ZXJtaW5hbCBJQyAlc1xuIgoKIzogaWE2NC1nZW4uYzoxNTIyCiMsIGMtZm9ybWF0Cm1zZ2lkICJjbGFzcyAlcyBpcyBkZWZpbmVkIGJ1dCBub3QgdXNlZFxuIgptc2dzdHIgImNsYXNzZSAlcyBk6WZpbmkgbWFpcyBub24gdXRpbGlz6WVcbiIKCiM6IGlhNjQtZ2VuLmM6MTUzMwojLCBjLWZvcm1hdAptc2dpZCAiV2FybmluZzogcnNyYyAlcyAoJXMpIGhhcyBubyBjaGtzJXNcbiIKbXNnc3RyICJBVkVSVElTU0VNRU5UOiByc3JjICVzICglcykgbidhIHBhcyBkZSBjaGtzJXNcbiIKCiM6IGlhNjQtZ2VuLmM6MTUzNwojLCBjLWZvcm1hdAptc2dpZCAicnNyYyAlcyAoJXMpIGhhcyBubyByZWdzXG4iCm1zZ3N0ciAicnNyYyAlcyAoJXMpIG4nYSBwYXMgZGUgcmVnaXN0cmVzXG4iCgojOiBpYTY0LWdlbi5jOjI0MzYKIywgYy1mb3JtYXQKbXNnaWQgIklDIG5vdGUgJWQgaW4gb3Bjb2RlICVzIChJQzolcykgY29uZmxpY3RzIHdpdGggcmVzb3VyY2UgJXMgbm90ZSAlZFxuIgptc2dzdHIgIklDIG5vdGUgJWQgZGFucyBsJ29wY29kZSAlcyAoSUM6JXMpIGVudHJlIGVuIGNvbmZsaXQgYXZlYyBsYSByZXNzb3VyY2UgJXMgbm90ZSAlZFxuIgoKIzogaWE2NC1nZW4uYzoyNDY0CiMsIGMtZm9ybWF0Cm1zZ2lkICJJQyBub3RlICVkIGZvciBvcGNvZGUgJXMgKElDOiVzKSBjb25mbGljdHMgd2l0aCByZXNvdXJjZSAlcyBub3RlICVkXG4iCm1zZ3N0ciAiSUMgbm90ZSAlZCBwb3VyIGwnb3Bjb2RlICVzIChJQzolcykgZW50cmUgZW4gY29uZmxpdCBhdmVjIGxhIHJlc3NvdXJjZSAlcyBub3RlICVkXG4iCgojOiBpYTY0LWdlbi5jOjI0NzgKIywgYy1mb3JtYXQKbXNnaWQgIm9wY29kZSAlcyBoYXMgbm8gY2xhc3MgKG9wcyAlZCAlZCAlZClcbiIKbXNnc3RyICJvcGNvZGUgJXMgbidhIHBhcyBkZSBjbGFzc2UgKG9wcyAlZCAlZCAlZClcbiIKCiM6IGlhNjQtZ2VuLmM6Mjc4OQojLCBjLWZvcm1hdAptc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBkaXJlY3RvcnkgdG8gXCIlc1wiLCBlcnJubyA9ICVzXG4iCm1zZ3N0ciAiaW5jYXBhYmxlIGRlIGNoYW5nZXIgZGUgculwZXJ0b2lyZSB2ZXJzIFwiJXNcIiwgZXJybm8gPSAlc1xuIgoKIy4gV2UndmUgYmVlbiBwYXNzZWQgYSB3LiAgUmV0dXJuIHdpdGggYW4gZXJyb3IgbWVzc2FnZSBzbyB0aGF0CiMuIGNnZW4gd2lsbCB0cnkgdGhlIG5leHQgcGFyc2luZyBvcHRpb24uCiM6IGlwMmstYXNtLmM6OTIKbXNnaWQgIlcga2V5d29yZCBpbnZhbGlkIGluIEZSIG9wZXJhbmQgc2xvdC4iCm1zZ3N0ciAiVyBtb3QgY2zpIGludmFsaWRlIGRhbnMgbGEgc2xvdCBkZSBsJ29w6XJhbmNlIEZSLiIKCiMuIEludmFsaWQgb2Zmc2V0IHByZXNlbnQuCiM6IGlwMmstYXNtLmM6MTIyCm1zZ2lkICJvZmZzZXQoSVApIGlzIG5vdCBhIHZhbGlkIGZvcm0iCm1zZ3N0ciAiZOljYWxhZ2UoSVApIG4nYSBwYXMgdW4gZm9ybWF0IHZhbGlkZSIKCiMuIEZvdW5kIHNvbWV0aGluZyB0aGVyZSBpbiBmcm9udCBvZiAoRFApIGJ1dCBpdCdzIG91dAojLiBvZiByYW5nZS4KIzogaXAyay1hc20uYzoxNzUKbXNnaWQgIihEUCkgb2Zmc2V0IG91dCBvZiByYW5nZS4iCm1zZ3N0ciAiZOljYWxhZ2UgKERQKSBlc3QgaG9ycyBsaW1pdGUuIgoKIy4gRm91bmQgc29tZXRoaW5nIHRoZXJlIGluIGZyb250IG9mIChTUCkgYnV0IGl0J3Mgb3V0CiMuIG9mIHJhbmdlLgojOiBpcDJrLWFzbS5jOjIyMQptc2dpZCAiKFNQKSBvZmZzZXQgb3V0IG9mIHJhbmdlLiIKbXNnc3RyICJk6WNhbGFnZSAoU1ApIGVzdCBob3JzIGxpbWl0ZS4iCgojOiBpcDJrLWFzbS5jOjI0MQptc2dpZCAiaWxsZWdhbCB1c2Ugb2YgcGFyZW50aGVzZXMiCm1zZ3N0ciAidXNhZ2UgaWxs6WdhbCBkZXMgcGFyZW50aOhzZXMiCgojOiBpcDJrLWFzbS5jOjI0OAptc2dpZCAib3BlcmFuZCBvdXQgb2YgcmFuZ2UgKG5vdCBiZXR3ZWVuIDEgYW5kIDI1NSkiCm1zZ3N0ciAib3DpcmFuZGUgaG9ycyBsaW1pdGUgKG4nZXN0IHBhcyBlbnRyZSAxIGV0IDI1NSkiCgojLiBTb21ldGhpbmcgaXMgdmVyeSB3cm9uZy4gb3BpbmRleCBoYXMgdG8gYmUgb25lIG9mIHRoZSBhYm92ZS4KIzogaXAyay1hc20uYzoyNzMKbXNnaWQgInBhcnNlX2FkZHIxNjogaW52YWxpZCBvcGluZGV4LiIKbXNnc3RyICJwYXJzZV9hZGRyMTY6IG9waW5kZXggaW52YWxpZGUuIgoKIzogaXAyay1hc20uYzozNTMKbXNnaWQgIkJ5dGUgYWRkcmVzcyByZXF1aXJlZC4gLSBtdXN0IGJlIGV2ZW4uIgptc2dzdHIgImFkcmVzc2UgZCdvY3RldCByZXF1aXNlIC0gZG9pdCDqdHJlIHBhaXJlLiIKCiM6IGlwMmstYXNtLmM6MzYyCm1zZ2lkICJjZ2VuX3BhcnNlX2FkZHJlc3MgcmV0dXJuZWQgYSBzeW1ib2wuIExpdGVyYWwgcmVxdWlyZWQuIgptc2dzdHIgImNnZW5fcGFyc2VfYWRkcmVzcyBhIHJldG91cm7pIHVuIHN5bWJvbGUuIExpdOlyYWwgcmVxdWlzLiIKCiM6IGlwMmstYXNtLmM6NDIwCiMsIGMtZm9ybWF0Cm1zZ2lkICIlb3BlcmF0b3Igb3BlcmFuZCBpcyBub3QgYSBzeW1ib2wiCm1zZ3N0ciAib3DpcmFuZGUgZGUgbCclb3DpcmF0ZXVyIG4nZXN0IHBhcyB1biBzeW1ib2xlIgoKIzogaXAyay1hc20uYzo0NzQKbXNnaWQgIkF0dGVtcHQgdG8gZmluZCBiaXQgaW5kZXggb2YgMCIKbXNnc3RyICJUZW50YXRpdmUgZGUgcmVw6XJhZ2UgZCd1biBpbmRleCBkZSBiaXQgZGUgMCIKCiM6IGlxMjAwMC1hc20uYzoxMTAgaXEyMDAwLWFzbS5jOjE0MQptc2dpZCAiaW1tZWRpYXRlIHZhbHVlIGNhbm5vdCBiZSByZWdpc3RlciIKbXNnc3RyICJ2YWxldXIgaW1t6WRpYXRlIGRvaXQg6nRyZSB1biByZWdpc3RyZSIKCiM6IGlxMjAwMC1hc20uYzoxMjAgaXEyMDAwLWFzbS5jOjE1MQptc2dpZCAiaW1tZWRpYXRlIHZhbHVlIG91dCBvZiByYW5nZSIKbXNnc3RyICJ2YWxldXIgaW1t6WRpYXRlIGVzdCBob3JzIGxpbWl0ZSIKCiM6IGlxMjAwMC1hc20uYzoxODAKbXNnaWQgIjIxLWJpdCBvZmZzZXQgb3V0IG9mIHJhbmdlIgptc2dzdHIgImTpY2FsYWdlIGRlIDIxIGJpdHMgZXN0IGhvcnMgbGltaXRlIgoKIzogaXEyMDAwLWFzbS5jOjIwNSBpcTIwMDAtYXNtLmM6MjM1IGlxMjAwMC1hc20uYzoyNzIgaXEyMDAwLWFzbS5jOjMwNQojOiBvcGVucmlzYy1hc20uYzo5NiBvcGVucmlzYy1hc20uYzoxNTUKbXNnaWQgIm1pc3NpbmcgYCknIgptc2dzdHIgImApJyBtYW5xdWFudGUiCgojOiBtMTAyMDAtZGlzLmM6MTk5CiMsIGMtZm9ybWF0Cm1zZ2lkICJ1bmtub3duXHQweCUwMngiCm1zZ3N0ciAiaW5jb25udVx0MHglMDJ4IgoKIzogbTEwMjAwLWRpcy5jOjMzOQojLCBjLWZvcm1hdAptc2dpZCAidW5rbm93blx0MHglMDRseCIKbXNnc3RyICJpbmNvbm51XHQweCUwNGx4IgoKIzogbTEwMzAwLWRpcy5jOjc2NgojLCBjLWZvcm1hdAptc2dpZCAidW5rbm93blx0MHglMDR4Igptc2dzdHIgImluY29ubnVcdDB4JTA0eCIKCiM6IG02OGstZGlzLmM6NDI5CiMsIGMtZm9ybWF0Cm1zZ2lkICI8aW50ZXJuYWwgZXJyb3IgaW4gb3Bjb2RlIHRhYmxlOiAlcyAlcz5cbiIKbXNnc3RyICI8ZXJyZXVyIGludGVybmUgZGFucyBsYSB0YWJsZSBkZXMgY29kZXMtb3A6ICVzICVzPlxuIgoKIzogbTY4ay1kaXMuYzoxMDA3CiMsIGMtZm9ybWF0Cm1zZ2lkICI8ZnVuY3Rpb24gY29kZSAlZD4iCm1zZ3N0ciAiPGNvZGUgZGUgZm9uY3Rpb24gJWQ+IgoKIzogbTg4ay1kaXMuYzo3NDYKIywgYy1mb3JtYXQKbXNnaWQgIiMgPGRpcyBlcnJvcjogJTA4eD4iCm1zZ3N0ciAiIyA8ZXJyZXVyIGR1IGTpc2Fzc2VtYmxldXI6ICUwOHg+IgoKIzogbWlwcy1kaXMuYzo2OTkKbXNnaWQgIiMgaW50ZXJuYWwgZXJyb3IsIGluY29tcGxldGUgZXh0ZW5zaW9uIHNlcXVlbmNlICgrKSIKbXNnc3RyICIjIGVycmV1ciBpbnRlcm5lLCBz6XF1ZW5jZSBkJ2V4dGVuc2lvbiBpbmNvbXBs6HRlICgrKSIKCiM6IG1pcHMtZGlzLmM6NzQyCiMsIGMtZm9ybWF0Cm1zZ2lkICIjIGludGVybmFsIGVycm9yLCB1bmRlZmluZWQgZXh0ZW5zaW9uIHNlcXVlbmNlICgrJWMpIgptc2dzdHIgIiMgZXJyZXVyIGludGVybmUsIHPpcXVlbmNlIGQnZXh0ZW5zaW9uIGluZOlmaW5pZSAoKyVjKSIKCiM6IG1pcHMtZGlzLmM6MTAwMAojLCBjLWZvcm1hdAptc2dpZCAiIyBpbnRlcm5hbCBlcnJvciwgdW5kZWZpbmVkIG1vZGlmaWVyKCVjKSIKbXNnc3RyICIjIGVycmV1ciBpbnRlcm5lLCBtb2RpZmljYXRldXIgbm9uIGTpZmluaSglYykiCgojOiBtaXBzLWRpcy5jOjE3NTEKIywgYy1mb3JtYXQKbXNnaWQgIiMgaW50ZXJuYWwgZGlzYXNzZW1ibGVyIGVycm9yLCB1bnJlY29nbmlzZWQgbW9kaWZpZXIgKCVjKSIKbXNnc3RyICIjIGVycmV1ciBpbnRlcm5lIGR1IGTpc3Nhc3NlbWJsZXVyLCBtb2RpZmljYXRldXIgbm9uIHJlY29ubnUoJWMpIgoKIzogbWlwcy1kaXMuYzoxNzYzCm1zZ2lkICIiCiJcbiIKIlRoZSBmb2xsb3dpbmcgTUlQUyBzcGVjaWZpYyBkaXNhc3NlbWJsZXIgb3B0aW9ucyBhcmUgc3VwcG9ydGVkIGZvciB1c2VcbiIKIndpdGggdGhlIC1NIHN3aXRjaCAobXVsdGlwbGUgb3B0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGVkIGJ5IGNvbW1hcyk6XG4iCm1zZ3N0ciAiIgoiXG4iCiJMZXMgb3B0aW9ucyBzcOljaWZpcXVlcyBNSVBTIGR1IGTpc2Fzc2VtYmxldXIgc29udCBzdXBwb3J06WVzIGF2ZWMgbCd1dGlsaXNhdGlvbiBkZVxuIgoibCdvcHRpb24gLU0gKGxlcyBvcHRpb25zIG11bHRpcGxlcyBkb2l2ZW50IOp0cmUgc+lwYXLpZXMgcGFyIGRlcyB2aXJndWxlcyk6XG4iCgojOiBtaXBzLWRpcy5jOjE3NjcKbXNnaWQgIiIKIlxuIgoiICBncHItbmFtZXM9QUJJICAgICAgICAgICAgUHJpbnQgR1BSIG5hbWVzIGFjY29yZGluZyB0byAgc3BlY2lmaWVkIEFCSS5cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgIERlZmF1bHQ6IGJhc2VkIG9uIGJpbmFyeSBiZWluZyBkaXNhc3NlbWJsZWQuXG4iCm1zZ3N0ciAiIgoiXG4iCiIgIGdwci1uYW1lcz1BQkkgICAgICAgICAgICBBZmZpY2hlciBsZXMgbm9tcyBHUFIgc2Vsb24gbCdBQkkgc3DpY2lmaekuXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICBQYXIgZOlmYXV0OiBiYXPpIHN1ciBsZSBiaW5haXJlIGTpYXNzZW1ibOkuXG4iCgojOiBtaXBzLWRpcy5jOjE3NzEKbXNnaWQgIiIKIlxuIgoiICBmcHItbmFtZXM9QUJJICAgICAgICAgICAgUHJpbnQgRlBSIG5hbWVzIGFjY29yZGluZyB0byBzcGVjaWZpZWQgQUJJLlxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdDogbnVtZXJpYy5cbiIKbXNnc3RyICIiCiJcbiIKIiAgZnByLW5hbWVzPUFCSSAgICAgICAgICAgIEFmZmljaGVyIGxlcyBub21zIEZQUiBzZWxvbiBsJ0FCSSBzcOljaWZp6S5cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhciBk6WZhdXQ6IG51belyaXF1ZS5cbiIKCiM6IG1pcHMtZGlzLmM6MTc3NQptc2dpZCAiIgoiXG4iCiIgIGNwMC1uYW1lcz1BUkNIICAgICAgICAgICBQcmludCBDUDAgcmVnaXN0ZXIgbmFtZXMgYWNjb3JkaW5nIHRvXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGVjaWZpZWQgYXJjaGl0ZWN0dXJlLlxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdDogYmFzZWQgb24gYmluYXJ5IGJlaW5nIGRpc2Fzc2VtYmxlZC5cbiIKbXNnc3RyICIiCiJcbiIKIiAgY3AwLW5hbWVzPUFSQ0ggICAgICAgICAgIEFmZmljaGVyIGxlcyBub21zIGRlcyByZWdpc3RyZXMgQ1AwIHNlbG9uXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICBsJ2FyY2hpdGVjdHVyZSBzcOljaWZp6WUuXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICBQYXIgZOlmYXV0OiBiYXPpIHN1ciBsZSBiaW5haXJlIGTpYXNzZW1ibOkuXG4iCgojOiBtaXBzLWRpcy5jOjE3ODAKbXNnaWQgIiIKIlxuIgoiICBod3ItbmFtZXM9QVJDSCAgICAgICAgICAgUHJpbnQgSFdSIG5hbWVzIGFjY29yZGluZyB0byBzcGVjaWZpZWQgXG4iCiJcdFx0XHQgICBhcmNoaXRlY3R1cmUuXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWZhdWx0OiBiYXNlZCBvbiBiaW5hcnkgYmVpbmcgZGlzYXNzZW1ibGVkLlxuIgptc2dzdHIgIiIKIlxuIgoiICBod3ItbmFtZXM9QVJDSCAgICAgICAgICAgQWZmaWNoZXIgbGVzIG5vbXMgSFdSIHNlbG9uICBcbiIKIlx0XHRcdCAgIGwnYXJjaGl0ZWN0dXJlIHNw6WNpZmnpZS5cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhciBk6WZhdXQ6IGJhc+kgc3VyIGxlIGJpbmFpcmUgZOlhc3NlbWJs6S5cbiIKCiM6IG1pcHMtZGlzLmM6MTc4NQptc2dpZCAiIgoiXG4iCiIgIHJlZy1uYW1lcz1BQkkgICAgICAgICAgICBQcmludCBHUFIgYW5kIEZQUiBuYW1lcyBhY2NvcmRpbmcgdG9cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwZWNpZmllZCBBQkkuXG4iCm1zZ3N0ciAiIgoiXG4iCiIgIHJlZy1uYW1lcz1BQkkgICAgICAgICAgICBBZmZpY2hlciBsZXMgbm9tcyBHUFIgZXQgRlBSIHNlbG9uIGwnQUJJXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICBzcOljaWZp6S5cbiIKCiM6IG1pcHMtZGlzLmM6MTc4OQptc2dpZCAiIgoiXG4iCiIgIHJlZy1uYW1lcz1BUkNIICAgICAgICAgICBQcmludCBDUDAgcmVnaXN0ZXIgYW5kIEhXUiBuYW1lcyBhY2NvcmRpbmcgdG9cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwZWNpZmllZCBhcmNoaXRlY3R1cmUuXG4iCm1zZ3N0ciAiIgoiXG4iCiIgIHJlZy1uYW1lcz1BUkNIICAgICAgICAgICBBZmZpY2hlciBsZXMgbm9tcyBkZXMgcmVnaXN0cmVzIENQMCBldCBIV1Igc2Vsb25cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGwnYXJjaGl0ZWN0dXJlIHNw6WNpZmnpZS5cbiIKCiM6IG1pcHMtZGlzLmM6MTc5Mwptc2dpZCAiIgoiXG4iCiIgIEZvciB0aGUgb3B0aW9ucyBhYm92ZSwgdGhlIGZvbGxvd2luZyB2YWx1ZXMgYXJlIHN1cHBvcnRlZCBmb3IgXCJBQklcIjpcbiIKIiAgICIKbXNnc3RyICIiCiJcbiIKIiAgUG91ciBsZXMgb3B0aW9ucyBjaS1oYXV0LCBsZXMgdmFsZXVycyBzdWl2YW50ZXMgc29udCBzdXBwb3J06XMgcG91ciBsJ1wiQUJJXCI6XG4iCiIgICAiCgojOiBtaXBzLWRpcy5jOjE3OTggbWlwcy1kaXMuYzoxODA2IG1pcHMtZGlzLmM6MTgwOAptc2dpZCAiXG4iCm1zZ3N0ciAiXG4iCgojOiBtaXBzLWRpcy5jOjE4MDAKbXNnaWQgIiIKIlxuIgoiICBGb3IgdGhlIG9wdGlvbnMgYWJvdmUsIFRoZSBmb2xsb3dpbmcgdmFsdWVzIGFyZSBzdXBwb3J0ZWQgZm9yIFwiQVJDSFwiOlxuIgoiICAgIgptc2dzdHIgIiIKIlxuIgoiICBQb3VyIGxlcyBvcHRpb25zIGNpLWhhdXQsIGxlcyB2YWxldXJzIHN1aXZhbnRlcyBzb250IHN1cHBvcnTpZXMgcG91ciBcIkFSQ0hcIjpcbiIKIiAgICIKCiM6IG1taXgtZGlzLmM6MzQKIywgYy1mb3JtYXQKbXNnaWQgIkJhZCBjYXNlICVkICglcykgaW4gJXM6JWRcbiIKbXNnc3RyICJDYXNlIGVycm9u6SAlZCAoJXMpIGRhbnMgJXM6JWRcbiIKCiM6IG1taXgtZGlzLmM6NDQKIywgYy1mb3JtYXQKbXNnaWQgIkludGVybmFsOiBOb24tZGVidWdnZWQgY29kZSAodGVzdC1jYXNlIG1pc3NpbmcpOiAlczolZCIKbXNnc3RyICJJbnRlcm5lOiBjb2RlIHF1aSBuJ2VzdCBwYXMgYXUgcG9pbnQgKGNhc2UgZGUgdGVzdCBtYW5xdWFudCk6ICVzOiVkIgoKIzogbW1peC1kaXMuYzo1Mwptc2dpZCAiKHVua25vd24pIgptc2dzdHIgIihpbmNvbm51KSIKCiM6IG1taXgtZGlzLmM6NTE5CiMsIGMtZm9ybWF0Cm1zZ2lkICIqdW5rbm93biBvcGVyYW5kcyB0eXBlOiAlZCoiCm1zZ3N0ciAiKnR5cGUgZCdvcOlyYW5kZSBpbmNvbm51ZTogJWQqIgoKIy4gSSBhbmQgWiBhcmUgb3V0cHV0IG9wZXJhbmRzIGFuZCBjYW5gdCBiZSBpbW1lZGlhdGUKIy4gKiBBIGlzIGFuIGFkZHJlc3MgYW5kIHdlIGNhbmB0IGhhdmUgdGhlIGFkZHJlc3Mgb2YKIy4gKiBhbiBpbW1lZGlhdGUgZWl0aGVyLiBXZSBkb24ndCBrbm93IGhvdyBtdWNoIHRvIGluY3JlYXNlCiMuICogYW9mZnNldHAgYnkgc2luY2Ugd2hhdGV2ZXIgZ2VuZXJhdGVkIHRoaXMgaXMgYnJva2VuCiMuICogYW55d2F5IQojLgojOiBuczMyay1kaXMuYzo2MzEKbXNnaWQgIiQ8dW5kZWZpbmVkPiIKbXNnc3RyICIkPG5vbiBk6WZpbmk+IgoKIzogcHBjLW9wYy5jOjc4MSBwcGMtb3BjLmM6ODA5Cm1zZ2lkICJpbnZhbGlkIGNvbmRpdGlvbmFsIG9wdGlvbiIKbXNnc3RyICJvcHRpb24gY29uZGl0aW9ubmVsbGUgaW52YWxpZGUiCgojOiBwcGMtb3BjLmM6ODExCm1zZ2lkICJhdHRlbXB0IHRvIHNldCB5IGJpdCB3aGVuIHVzaW5nICsgb3IgLSBtb2RpZmllciIKbXNnc3RyICJ0ZW50YXRpdmUgZCdpbml0aWFsaXNhdGlvbiBkdSBiaXQgeSBsb3JzcXVlIGxlIG1vZGlmaWNhdGV1ciArIG91IC0gYSDpdOkgdXRpbGlz6SIKCiM6IHBwYy1vcGMuYzo4NDAKbXNnaWQgIm9mZnNldCBub3QgYSBtdWx0aXBsZSBvZiAxNiIKbXNnc3RyICJk6WNhbGFnZSBuJ2VzdCBwYXMgdW4gbXVsdGlwbGUgZGUgMTYiCgojOiBwcGMtb3BjLmM6ODYwCm1zZ2lkICJvZmZzZXQgbm90IGEgbXVsdGlwbGUgb2YgMiIKbXNnc3RyICJk6WNhbGFnZSBuJ2VzdCBwYXMgdW4gbXVsdGlwbGUgZGUgMiIKCiM6IHBwYy1vcGMuYzo4NjIKbXNnaWQgIm9mZnNldCBncmVhdGVyIHRoYW4gNjIiCm1zZ3N0ciAiZOljYWxhZ2UgcGx1cyBncmFuZCBxdWUgNjIiCgojOiBwcGMtb3BjLmM6ODgxIHBwYy1vcGMuYzo5MjcgcHBjLW9wYy5jOjk3NQptc2dpZCAib2Zmc2V0IG5vdCBhIG11bHRpcGxlIG9mIDQiCm1zZ3N0ciAiZOljYWxhZ2Ugbidlc3QgcGFzIHVuIG11bHRpcGxlIGRlIDQiCgojOiBwcGMtb3BjLmM6ODgzCm1zZ2lkICJvZmZzZXQgZ3JlYXRlciB0aGFuIDEyNCIKbXNnc3RyICJk6WNhbGFnZSBwbHVzIGdyYW5kIHF1ZSAxMjQiCgojOiBwcGMtb3BjLmM6OTAyCm1zZ2lkICJvZmZzZXQgbm90IGEgbXVsdGlwbGUgb2YgOCIKbXNnc3RyICJk6WNhbGFnZSBuJ2VzdCBwYXMgdW4gbXVsdGlwbGUgZGUgOCIKCiM6IHBwYy1vcGMuYzo5MDQKbXNnaWQgIm9mZnNldCBncmVhdGVyIHRoYW4gMjQ4Igptc2dzdHIgImTpY2FsYWdlIHBsdXMgZ3JhbmQgcXVlIDI0OCIKCiM6IHBwYy1vcGMuYzo5NTAKbXNnaWQgIm9mZnNldCBub3QgYmV0d2VlbiAtMjA0OCBhbmQgMjA0NyIKbXNnc3RyICJk6WNhbGFnZSBuJ2VzdCBwYXMgZW50cmUgLTIwNDggZXQgMjA0NyIKCiM6IHBwYy1vcGMuYzo5NzMKbXNnaWQgIm9mZnNldCBub3QgYmV0d2VlbiAtODE5MiBhbmQgODE5MSIKbXNnc3RyICJk6WNhbGFnZSBuJ2VzdCBwYXMgZW50cmUgLTgxOTIgZXQgODE5MSIKCiM6IHBwYy1vcGMuYzoxMDExCm1zZ2lkICJpZ25vcmluZyBpbnZhbGlkIG1mY3IgbWFzayIKbXNnc3RyICJtYXNxdWUgbWZjciBpbnZhbGlkZSBlc3QgaWdub3LpIgoKIzogcHBjLW9wYy5jOjEwNTkKbXNnaWQgImlnbm9yaW5nIGxlYXN0IHNpZ25pZmljYW50IGJpdHMgaW4gYnJhbmNoIG9mZnNldCIKbXNnc3RyICJMZXMgZGVybmllcnMgYml0cyBsZXMgbW9pbnMgc2lnbmlmaWNhdGlmcyBzb250IGlnbm9y6XMgZGFucyBsZSBk6WNhbGFnZSBkZSBicmFuY2hlbWVudCIKCiM6IHBwYy1vcGMuYzoxMDkwIHBwYy1vcGMuYzoxMTI1Cm1zZ2lkICJpbGxlZ2FsIGJpdG1hc2siCm1zZ3N0ciAibWFzcXVlIGRlIGJpdHMgaWxs6WdhbCIKCiM6IHBwYy1vcGMuYzoxMTkyCm1zZ2lkICJ2YWx1ZSBvdXQgb2YgcmFuZ2UiCm1zZ3N0ciAidmFsZXVyIGhvcnMgbGltaXRlIgoKIzogcHBjLW9wYy5jOjEyNjIKbXNnaWQgImluZGV4IHJlZ2lzdGVyIGluIGxvYWQgcmFuZ2UiCm1zZ3N0ciAicmVnaXN0cmUgaW5kZXggbidlc3QgcGFzIGRhbnMgbGEgcGxhZ2UgZGUgY2hhcmdlbWVudCIKCiM6IHBwYy1vcGMuYzoxMjc5Cm1zZ2lkICJzb3VyY2UgYW5kIHRhcmdldCByZWdpc3RlciBvcGVyYW5kcyBtdXN0IGJlIGRpZmZlcmVudCIKbXNnc3RyICJsZXMgb3DpcmFuZGVzIGRlcyByZWdpc3RyZXMgc291cmNlIGV0IGNpYmxlIGRvaXZlbnQg6nRyZSBkaWZmcmVudHMiCgojOiBwcGMtb3BjLmM6MTI5NAptc2dpZCAiaW52YWxpZCByZWdpc3RlciBvcGVyYW5kIHdoZW4gdXBkYXRpbmciCm1zZ3N0ciAib3DpcmFuZGUgcmVnaXN0cmUgaW52YWxpZGUgbG9ycyBkZSBsYSBtaXNlIOAgam91ciIKCiM6IHBwYy1vcGMuYzoxMzM1Cm1zZ2lkICJ0YXJnZXQgcmVnaXN0ZXIgb3BlcmFuZCBtdXN0IGJlIGV2ZW4iCm1zZ3N0ciAib3DpcmFuZGUgZHUgcmVnaXN0cmUgY2libGUgZG9pdCDqdHJlIHBhaXIiCgojOiBwcGMtb3BjLmM6MTM1MAptc2dpZCAic291cmNlIHJlZ2lzdGVyIG9wZXJhbmQgbXVzdCBiZSBldmVuIgptc2dzdHIgIm9w6XJhbmRlIGR1IHJlZ2lzdHJlIHNvdXJjZSBkb2l0IOp0cmUgcGFpciIKCiMuIE1hcmsgYXMgbm9uLXZhbGlkIGluc3RydWN0aW9uLgojOiBzcGFyYy1kaXMuYzo3NjAKbXNnaWQgInVua25vd24iCm1zZ3N0ciAiaW5jb25udSIKCiM6IHNwYXJjLWRpcy5jOjgzNQojLCBjLWZvcm1hdAptc2dpZCAiSW50ZXJuYWwgZXJyb3I6ICBiYWQgc3BhcmMtb3Bjb2RlLmg6IFwiJXNcIiwgJSMuOGx4LCAlIy44bHhcbiIKbXNnc3RyICJFcnJldXIgaW50ZXJuZTogIHNwYXJjLW9wY29kZS5oIGVycm9u6TogqyAlcyC7LCAlIy44bHgsICUjLjhseFxuIgoKIzogc3BhcmMtZGlzLmM6ODQ2CiMsIGMtZm9ybWF0Cm1zZ2lkICJJbnRlcm5hbCBlcnJvcjogYmFkIHNwYXJjLW9wY29kZS5oOiBcIiVzXCIsICUjLjhseCwgJSMuOGx4XG4iCm1zZ3N0ciAiRXJyZXVyIGludGVybmU6IHNwYXJjLW9wY29kZS5oIGVycm9u6TogqyAlcyC7LCAlIy44bHgsICUjLjhseFxuIgoKIzogc3BhcmMtZGlzLmM6ODk1CiMsIGMtZm9ybWF0Cm1zZ2lkICJJbnRlcm5hbCBlcnJvcjogYmFkIHNwYXJjLW9wY29kZS5oOiBcIiVzXCIgPT0gXCIlc1wiXG4iCm1zZ3N0ciAiRXJyZXVyIGludGVybmU6IHNwYXJjLW9wY29kZS5oIGVycm9u6TogqyAlcyC7ID09IKsgJXMgu1xuIgoKIzogdjg1MC1kaXMuYzoyMjEKIywgYy1mb3JtYXQKbXNnaWQgInVua25vd24gb3BlcmFuZCBzaGlmdDogJXhcbiIKbXNnc3RyICJk6WNhbGFnZSBkJ29w6XJhbmRlIGluY29ubnU6ICV4XG4iCgojOiB2ODUwLWRpcy5jOjIzMwojLCBjLWZvcm1hdAptc2dpZCAidW5rbm93biBwb3AgcmVnOiAlZFxuIgptc2dzdHIgInJlZ2lzdHJlIGRlIHBpbGUgaW5jb25udTogJWRcbiIKCiMuIFRoZSBmdW5jdGlvbnMgdXNlZCB0byBpbnNlcnQgYW5kIGV4dHJhY3QgY29tcGxpY2F0ZWQgb3BlcmFuZHMuCiMuIE5vdGU6IFRoZXJlIGlzIGEgY29uc3BpcmFjeSBiZXR3ZWVuIHRoZXNlIGZ1bmN0aW9ucyBhbmQKIy4gdjg1MF9pbnNlcnRfb3BlcmFuZCgpIGluIGdhcy9jb25maWcvdGMtdjg1MC5jLiAgRXJyb3IgbWVzc2FnZXMKIy4gY29udGFpbmluZyB0aGUgc3RyaW5nICdvdXQgb2YgcmFuZ2UnIHdpbGwgYmUgaWdub3JlZCB1bmxlc3MgYQojLiBzcGVjaWZpYyBjb21tYW5kIGxpbmUgb3B0aW9uIGlzIGdpdmVuIHRvIEdBUy4KIzogdjg1MC1vcGMuYzo2OAptc2dpZCAiZGlzcGxhY2VtZW50IHZhbHVlIGlzIG5vdCBpbiByYW5nZSBhbmQgaXMgbm90IGFsaWduZWQiCm1zZ3N0ciAiTGEgdmFsZXVyIGRlIGTpcGxhY2VtZW50IGVzdCBob3JzIGxpbWl0ZSBldCBuJ2VzdCBwYXMgYWxpZ27pZS4iCgojOiB2ODUwLW9wYy5jOjY5Cm1zZ2lkICJkaXNwbGFjZW1lbnQgdmFsdWUgaXMgb3V0IG9mIHJhbmdlIgptc2dzdHIgInZhbGV1ciBkZSBk6XBsYWNlbWVudCBlc3QgaG9ycyBsaW1pdGUiCgojOiB2ODUwLW9wYy5jOjcwCm1zZ2lkICJkaXNwbGFjZW1lbnQgdmFsdWUgaXMgbm90IGFsaWduZWQiCm1zZ3N0ciAidmFsZXVyIGRlIGTpcGxhY2VtZW50IG4nZXN0IHBhcyBhbGlnbullIgoKIzogdjg1MC1vcGMuYzo3Mgptc2dpZCAiaW1tZWRpYXRlIHZhbHVlIGlzIG91dCBvZiByYW5nZSIKbXNnc3RyICJ2YWxldXIgaW1t6WRpYXRlIGVzdCBob3JzIGxpbWl0ZSIKCiM6IHY4NTAtb3BjLmM6ODMKbXNnaWQgImJyYW5jaCB2YWx1ZSBub3QgaW4gcmFuZ2UgYW5kIHRvIG9kZCBvZmZzZXQiCm1zZ3N0ciAidmFsZXVyIGRlIGJyYW5jaGVtZW50IGVzdCBob3JzIGxpbWl0ZSBldCBhIHVuIGTpY2FsYWdlIGltcGFpciIKCiM6IHY4NTAtb3BjLmM6ODUgdjg1MC1vcGMuYzoxMTcKbXNnaWQgImJyYW5jaCB2YWx1ZSBvdXQgb2YgcmFuZ2UiCm1zZ3N0ciAidmFsZXVyIGRlIGJyYW5jaGVtZW50IGhvcnMgbGltaXRlIgoKIzogdjg1MC1vcGMuYzo4OCB2ODUwLW9wYy5jOjEyMAptc2dpZCAiYnJhbmNoIHRvIG9kZCBvZmZzZXQiCm1zZ3N0ciAiQnJhbmNoZW1lbnQgYXZlYyB1biBk6WNhbGFnZSBpbXBhaXIiCgojOiB2ODUwLW9wYy5jOjExNQptc2dpZCAiYnJhbmNoIHZhbHVlIG5vdCBpbiByYW5nZSBhbmQgdG8gYW4gb2RkIG9mZnNldCIKbXNnc3RyICJ2YWxldXIgZGUgYnJhbmNoZW1lbnQgZXN0IGhvcnMgbGltaXRlIGV0IGEgdW4gZOljYWxhZ2UgaW1wYWlyIgoKIzogdjg1MC1vcGMuYzozNDYKbXNnaWQgImludmFsaWQgcmVnaXN0ZXIgZm9yIHN0YWNrIGFkanVzdG1lbnQiCm1zZ3N0ciAicmVnaXN0cmUgaW52YWxpZGUgcG91ciB1biBhanVzdGVtZW50IGRlIGxhIHBpbGUiCgojOiB2ODUwLW9wYy5jOjM3MAptc2dpZCAiaW1tZWRpYXRlIHZhbHVlIG5vdCBpbiByYW5nZSBhbmQgbm90IGV2ZW4iCm1zZ3N0ciAidmFsZXVyIGltbelkaWF0ZSBlc3QgaG9ycyBsaW1pdGUgZXQgZXN0IGltcGFpcmUiCgojOiB2ODUwLW9wYy5jOjM3NQptc2dpZCAiaW1tZWRpYXRlIHZhbHVlIG11c3QgYmUgZXZlbiIKbXNnc3RyICJ2YWxldXIgaW1t6WRpYXRlIGRvaXQg6nRyZSBwYWlyZSIKCiM6IHhzdG9ybXkxNi1hc20uYzo3Ngptc2dpZCAiQmFkIHJlZ2lzdGVyIGluIHByZWluY3JlbWVudCIKbXNnc3RyICJSZWdpc3RyZSBlcnJvbukgZGFucyB1biBwculpbmNy6W1lbnQiCgojOiB4c3Rvcm15MTYtYXNtLmM6ODEKbXNnaWQgIkJhZCByZWdpc3RlciBpbiBwb3N0aW5jcmVtZW50Igptc2dzdHIgIlJlZ2lzdHJlIGVycm9u6SBkYW5zIHVuIHBvc3RpbmNy6W1lbnQiCgojOiB4c3Rvcm15MTYtYXNtLmM6ODMKbXNnaWQgIkJhZCByZWdpc3RlciBuYW1lIgptc2dzdHIgIk5vbSBlcnJvbukgZGUgcmVnaXN0cmUiCgojOiB4c3Rvcm15MTYtYXNtLmM6ODcKbXNnaWQgIkxhYmVsIGNvbmZsaWN0cyB3aXRoIHJlZ2lzdGVyIG5hbWUiCm1zZ3N0ciAiQ29uZmxpdHMgZCfpdGlxdWV0dGUgYXZlYyBsZSBub20gZGUgcmVnaXN0cmUiCgojOiB4c3Rvcm15MTYtYXNtLmM6OTEKbXNnaWQgIkxhYmVsIGNvbmZsaWN0cyB3aXRoIGBSeCciCm1zZ3N0ciAiQ29uZmxpdCBkJ+l0aXF1ZXR0ZSBhdmVjIKsgUngguyIKCiM6IHhzdG9ybXkxNi1hc20uYzo5Mwptc2dpZCAiQmFkIGltbWVkaWF0ZSBleHByZXNzaW9uIgptc2dzdHIgIkV4cHJlc3Npb24gaW1t6WRpYXRlIGVycm9u6WUiCgojOiB4c3Rvcm15MTYtYXNtLmM6MTE1Cm1zZ2lkICJObyByZWxvY2F0aW9uIGZvciBzbWFsbCBpbW1lZGlhdGUiCm1zZ3N0ciAiYXVjdW5lIHJlbG9jYWxpc2F0aW9uIHBvdXIgdW4gcGV0aXQgaW1t6WRpYXQiCgojOiB4c3Rvcm15MTYtYXNtLmM6MTI1Cm1zZ2lkICJTbWFsbCBvcGVyYW5kIHdhcyBub3QgYW4gaW1tZWRpYXRlIG51bWJlciIKbXNnc3RyICJQZXRpdGUgb3DpcmFuZGUgbifpdGFpdCBwYXMgdW4gbm9tYnJlIGltbelkaWF0IgoKIzogeHN0b3JteTE2LWFzbS5jOjE2NAptc2dpZCAiT3BlcmFuZCBpcyBub3QgYSBzeW1ib2wiCm1zZ3N0ciAib3DpcmFuZGUgbidlc3QgcGFzIHVuIHN5bWJvbCIKCiM6IHhzdG9ybXkxNi1hc20uYzoxNzIKbXNnaWQgIlN5bnRheCBlcnJvcjogTm8gdHJhaWxpbmcgJyknIgptc2dzdHIgIkVycmV1ciBkZSBzeW50YXhlOiBwYXMgZGUgJyknIGVuIHN1ZmZpeGUiCgojfiBtc2dpZCAidW5yZWNvZ25pemVkIGtleXdvcmQvcmVnaXN0ZXIgbmFtZSIKI34gbXNnc3RyICJub20gZGUgbW90IGNs6SBvdSBkZSByZWdpc3RyZSBub24gcmVjb25udSIK