IyBNZXNzYWdlcyBmcmFu52FpcyBwb3VyIG9wY29kZXMuCiMgQ29weXJpZ2h0IChDKSAyMDA4IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgojIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBiaW51dGlscyBwYWNrYWdlLgojIE1pY2hlbCBSb2JpdGFpbGxlIDxyb2JpdGFpbEBJUk8uVU1vbnRyZWFsLkNBPiwgdHJhZHVjdGV1ciBkZXB1aXMvc2luY2UgMTk5Ni4KIyBOaWNvbGFzIFByb3Zvc3QgPG5wcm92b3N0QHF1YWRyaXYuY29tPiwgMjAwOS4KIwptc2dpZCAiIgptc2dzdHIgIiIKIlByb2plY3QtSWQtVmVyc2lvbjogb3Bjb2RlcyAyLjIwLjkwXG4iCiJSZXBvcnQtTXNnaWQtQnVncy1UbzogYnVnLWJpbnV0aWxzQGdudS5vcmdcbiIKIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDEwLTExLTA1IDExOjMyKzAxMDBcbiIKIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMTEtMjMgMTI6MDErMDEwMFxuIgoiTGFzdC1UcmFuc2xhdG9yOiBOaWNvbGFzIFByb3Zvc3QgPG5wcm92b3N0QHF1YWRyaXYuY29tPlxuIgoiTGFuZ3VhZ2UtVGVhbTogRnJlbmNoIDx0cmFkdWNAdHJhZHVjLm9yZz5cbiIKIk1JTUUtVmVyc2lvbjogMS4wXG4iCiJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9SVNPLTg4NTktMVxuIgoiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgoiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9KG4gPiAxKTtcbiIKCiM6IGFscGhhLW9wYy5jOjE1NQptc2dpZCAiYnJhbmNoIG9wZXJhbmQgdW5hbGlnbmVkIgptc2dzdHIgIm9w6XJhbmRlIGRlIGJyYW5jaGVtZW50IG5vbiBhbGlnbukiCgojOiBhbHBoYS1vcGMuYzoxNzEgYWxwaGEtb3BjLmM6MTg3Cm1zZ2lkICJqdW1wIGhpbnQgdW5hbGlnbmVkIgptc2dzdHIgInNhdXQgaW5kaWPpIG5vbiBhbGlnbukiCgojOiBhcmMtZGlzLmM6NzcKbXNnaWQgIklsbGVnYWwgbGltbSByZWZlcmVuY2UgaW4gbGFzdCBpbnN0cnVjdGlvbiFcbiIKbXNnc3RyICJS6WbpcmVuY2UgbGltbSBpbGzpZ2FsZSBkYW5zIGxhIGRlcm5p6HJlIGluc3RydWN0aW9uIVxuIgoKIzogYXJjLW9wYy5jOjM4Ngptc2dpZCAidW5hYmxlIHRvIGZpdCBkaWZmZXJlbnQgdmFsdWVkIGNvbnN0YW50cyBpbnRvIGluc3RydWN0aW9uIgptc2dzdHIgImltcG9zc2libGUgZGUgbelsZXIgZGlmZulyZW50ZXMgY29uc3RhbnRlcyBkYW5zIGwnaW5zdHJ1Y3Rpb24iCgojOiBhcmMtb3BjLmM6Mzk1Cm1zZ2lkICJhdXhpbGlhcnkgcmVnaXN0ZXIgbm90IGFsbG93ZWQgaGVyZSIKbXNnc3RyICJyZWdpc3RyZSBhdXhpbGlhaXJlIG5vbiBhdXRvcmlz6SBpY2kiCgojOiBhcmMtb3BjLmM6NDAxIGFyYy1vcGMuYzo0MTgKbXNnaWQgImF0dGVtcHQgdG8gc2V0IHJlYWRvbmx5IHJlZ2lzdGVyIgptc2dzdHIgInRlbnRhdGl2ZSBkJ+ljcml0dXJlIHN1ciB1biByZWdpc3RyZSBlbiBsZWN0dXJlIHNldWxlIgoKIzogYXJjLW9wYy5jOjQwNiBhcmMtb3BjLmM6NDIzCm1zZ2lkICJhdHRlbXB0IHRvIHJlYWQgd3JpdGVvbmx5IHJlZ2lzdGVyIgptc2dzdHIgInRlbnRhdGl2ZSBkZSBsaXJlIHVuIHJlZ2lzdHJlIGVuIOljcml0dXJlIHNldWxlIgoKIzogYXJjLW9wYy5jOjQyOAojLCBjLWZvcm1hdAptc2dpZCAiaW52YWxpZCByZWdpc3RlciBudW1iZXIgYCVkJyIKbXNnc3RyICJudW3pcm8gZGUgcmVnaXN0cmUgbm9uIHZhbGlkZSBcIiVkXCIiCgojOiBhcmMtb3BjLmM6NTk0IGFyYy1vcGMuYzo2NDUgYXJjLW9wYy5jOjY3Mwptc2dpZCAidG9vIG1hbnkgbG9uZyBjb25zdGFudHMiCm1zZ3N0ciAidHJvcCBkZSBsb25ndWVzIGNvbnN0YW50ZXMiCgojOiBhcmMtb3BjLmM6NjY4Cm1zZ2lkICJ0b28gbWFueSBzaGltbXMgaW4gbG9hZCIKbXNnc3RyICJ0cm9wIGRlIGJpdHMgc2hpbW0g4CBjaGFyZ2VyIgoKIy4gRG8gd2UgaGF2ZSBhIGxpbW0gYWxyZWFkeT8KIzogYXJjLW9wYy5jOjc4MQptc2dpZCAiaW1wb3NzaWJsZSBzdG9yZSIKbXNnc3RyICJzdG9ja2FnZSBpbXBvc3NpYmxlIgoKIzogYXJjLW9wYy5jOjgxNAptc2dpZCAic3Qgb3BlcmFuZCBlcnJvciIKbXNnc3RyICJFcnJldXIgZCdvcOlyYW5kZSBzdCIKCiM6IGFyYy1vcGMuYzo4MTggYXJjLW9wYy5jOjg2MAptc2dpZCAiYWRkcmVzcyB3cml0ZWJhY2sgbm90IGFsbG93ZWQiCm1zZ3N0ciAiY2FjaGUgXCJ3cml0ZWJhY2tcIiBkJ2FkcmVzc2VzIGludGVyZGl0IgoKIzogYXJjLW9wYy5jOjgyMgptc2dpZCAic3RvcmUgdmFsdWUgbXVzdCBiZSB6ZXJvIgptc2dzdHIgImxhIHZhbGV1ciBkZSBzdG9ja2FnZSBkb2l0IOp0cmUgMCIKCiM6IGFyYy1vcGMuYzo4NDcKbXNnaWQgImludmFsaWQgbG9hZC9zaGltbSBpbnNuIgptc2dzdHIgImxvYWQvc2hpbW0gbm9uIHZhbGlkZSBkYW5zIGwnaW5zdHJ1Y3Rpb24iCgojOiBhcmMtb3BjLmM6ODU2Cm1zZ2lkICJsZCBvcGVyYW5kIGVycm9yIgptc2dzdHIgIkVycmV1ciBkJ29w6XJhbmRlIGxkIgoKIzogYXJjLW9wYy5jOjk0Mwptc2dpZCAianVtcCBmbGFncywgYnV0IG5vIC5mIHNlZW4iCm1zZ3N0ciAiZHJhcGVhdXggZGUgc2F1dCwgbWFpcyBwYXMgZGUgLmYiCgojOiBhcmMtb3BjLmM6OTQ2Cm1zZ2lkICJqdW1wIGZsYWdzLCBidXQgbm8gbGltbSBhZGRyIgptc2dzdHIgImRyYXBlYXV4IGRlIHNhdXQsIG1haXMgcGFzIGQnYWRyZXNzZSBsaW1tIgoKIzogYXJjLW9wYy5jOjk0OQptc2dpZCAiZmxhZyBiaXRzIG9mIGp1bXAgYWRkcmVzcyBsaW1tIGxvc3QiCm1zZ3N0ciAicGVydGUgZGUgZHJhcGVhdXggcG91ciBsJ2FkcmVzc2UgZGUgc2F1dCIKCiM6IGFyYy1vcGMuYzo5NTIKbXNnaWQgImF0dGVtcHQgdG8gc2V0IEhSIGJpdHMiCm1zZ3N0ciAidGVudGF0aXZlIGRlIG1vZGlmaWVyIGxlcyBiaXRzIEhSIgoKIzogYXJjLW9wYy5jOjk1NQptc2dpZCAiYmFkIGp1bXAgZmxhZ3MgdmFsdWUiCm1zZ3N0ciAibWF1dmFpcyBkcmFwZWF1eCBkZSBzYXV0IgoKIzogYXJjLW9wYy5jOjk4OAptc2dpZCAiYnJhbmNoIGFkZHJlc3Mgbm90IG9uIDQgYnl0ZSBib3VuZGFyeSIKbXNnc3RyICJhZHJlc3NlIGRlIGJyYW5jaGVtZW50IG5vbiBtdWx0aXBsZSBkZSAxNiIKCiM6IGFyYy1vcGMuYzoxMDI0Cm1zZ2lkICJtdXN0IHNwZWNpZnkgLmpkIG9yIG5vIG51bGxpZnkgc3VmZml4Igptc2dzdHIgInN1ZmZpeGUgLmpkIG91IHZhbGlkYW50IGF0dGVuZHUiCgojOiBhcm0tZGlzLmM6MTk5MAptc2dpZCAiPGlsbGVnYWwgcHJlY2lzaW9uPiIKbXNnc3RyICI8cHLpY2lzaW9uIGlsbOlnYWxlPiIKCiMuIFhYWCAtIHNob3VsZCBicmVhayAnb3B0aW9uJyBhdCBmb2xsb3dpbmcgZGVsaW1pdGVyLgojOiBhcm0tZGlzLmM6NDM1NwojLCBjLWZvcm1hdAptc2dpZCAiVW5yZWNvZ25pc2VkIHJlZ2lzdGVyIG5hbWUgc2V0OiAlc1xuIgptc2dzdHIgIk5vbSBkZSBqZXUgZGUgcmVnaXN0cmVzIGluY29ubnUgOiAlc1xuIgoKIy4gWFhYIC0gc2hvdWxkIGJyZWFrICdvcHRpb24nIGF0IGZvbGxvd2luZyBkZWxpbWl0ZXIuCiM6IGFybS1kaXMuYzo0MzY1CiMsIGMtZm9ybWF0Cm1zZ2lkICJVbnJlY29nbmlzZWQgZGlzYXNzZW1ibGVyIG9wdGlvbjogJXNcbiIKbXNnc3RyICJPcHRpb24gZHUgZOlzYXNzZW1ibGV1ciBub24gcmVjb25udWUgOiAlc1xuIgoKIzogYXJtLWRpcy5jOjQ5NTAKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiVGhlIGZvbGxvd2luZyBBUk0gc3BlY2lmaWMgZGlzYXNzZW1ibGVyIG9wdGlvbnMgYXJlIHN1cHBvcnRlZCBmb3IgdXNlIHdpdGhcbiIKInRoZSAtTSBzd2l0Y2g6XG4iCm1zZ3N0ciAiIgoiXG4iCiJMZXMgb3B0aW9ucyBzcOljaWZpcXVlcyBBUk0gc3VpdmFudGVzIHNvbnQgc3VwcG9ydOllcyBhdmVjIGwndXRpbGlzYXRpb24gZGVcbiIKImwnb3B0aW9uIC1NOlxuIgoKIzogYXZyLWRpcy5jOjExNSBhdnItZGlzLmM6MTI1CiMsIGMtZm9ybWF0Cm1zZ2lkICJ1bmRlZmluZWQiCm1zZ3N0ciAibm9uIGTpZmluaShlKSIKCiM6IGF2ci1kaXMuYzoxODcKIywgYy1mb3JtYXQKbXNnaWQgIkludGVybmFsIGRpc2Fzc2VtYmxlciBlcnJvciIKbXNnc3RyICJFcnJldXIgaW50ZXJuZSBkdSBk6XNhc3NlbWJsZXVyIgoKIzogYXZyLWRpcy5jOjIzNgojLCBjLWZvcm1hdAptc2dpZCAidW5rbm93biBjb25zdHJhaW50IGAlYyciCm1zZ3N0ciAiY29udHJhaW50ZSBpbmNvbm51ZSCrICVjILsiCgojOiBjZ2VuLWFzbS5jOjMzNiBmcjMwLWlibGQuYzoyMDEgZnJ2LWlibGQuYzoyMDEgaXAyay1pYmxkLmM6MjAxCiM6IGlxMjAwMC1pYmxkLmM6MjAxIGxtMzItaWJsZC5jOjIwMSBtMzJjLWlibGQuYzoyMDEgbTMyci1pYmxkLmM6MjAxCiM6IG1lcC1pYmxkLmM6MjAxIG10LWlibGQuYzoyMDEgb3BlbnJpc2MtaWJsZC5jOjIwMSB4YzE2eC1pYmxkLmM6MjAxCiM6IHhzdG9ybXkxNi1pYmxkLmM6MjAxCiMsIGMtZm9ybWF0Cm1zZ2lkICJvcGVyYW5kIG91dCBvZiByYW5nZSAoJWxkIG5vdCBiZXR3ZWVuICVsZCBhbmQgJWxkKSIKbXNnc3RyICJvcOlyYW5kZSBob3JzIGxpbWl0ZXMgKCVsZCBuJ2VzdCBwYXMgZW50cmUgJWxkIGV0ICVsZCkiCgojOiBjZ2VuLWFzbS5jOjM1OAojLCBjLWZvcm1hdAptc2dpZCAib3BlcmFuZCBvdXQgb2YgcmFuZ2UgKCVsdSBub3QgYmV0d2VlbiAlbHUgYW5kICVsdSkiCm1zZ3N0ciAib3DpcmFuZGUgaG9ycyBsaW1pdGVzICglbHUgbidlc3QgcGFzIGVudHJlICVsdSBldCAlbHUpIgoKIzogZDMwdi1kaXMuYzoyNTUKIywgYy1mb3JtYXQKbXNnaWQgIjx1bmtub3duIHJlZ2lzdGVyICVkPiIKbXNnc3RyICI8cmVnaXN0cmUgaW5jb25udSAlZD4iCgojLiBDYW4ndCBoYXBwZW4uCiM6IGRpcy1idWYuYzo2MAojLCBjLWZvcm1hdAptc2dpZCAiVW5rbm93biBlcnJvciAlZFxuIgptc2dzdHIgIkVycmV1ciBpbmNvbm51ZSAlZFxuIgoKIzogZGlzLWJ1Zi5jOjY5CiMsIGMtZm9ybWF0Cm1zZ2lkICJBZGRyZXNzIDB4JXMgaXMgb3V0IG9mIGJvdW5kcy5cbiIKbXNnc3RyICJBZHJlc3NlIDB4JXMgaG9ycyBsaW1pdGVzLlxuIgoKIzogZnIzMC1hc20uYzo5MyBtMzJjLWFzbS5jOjg3MiBtMzJjLWFzbS5jOjg3OQptc2dpZCAiUmVnaXN0ZXIgbnVtYmVyIGlzIG5vdCB2YWxpZCIKbXNnc3RyICJOdW3pcm8gZGUgcmVnaXN0cmUgbm9uIHZhbGlkZSIKCiM6IGZyMzAtYXNtLmM6OTUKbXNnaWQgIlJlZ2lzdGVyIG11c3QgYmUgYmV0d2VlbiByMCBhbmQgcjciCm1zZ3N0ciAiTGUgbnVt6XJvIGRlIHJlZ2lzdHJlIGRvaXQg6nRyZSBlbnRyZSByMCBldCByNyIKCiM6IGZyMzAtYXNtLmM6OTcKbXNnaWQgIlJlZ2lzdGVyIG11c3QgYmUgYmV0d2VlbiByOCBhbmQgcjE1Igptc2dzdHIgIkxlIG51belybyBkZSByZWdpc3RyZSBkb2l0IOp0cmUgZW50cmUgcjggZXQgcjE1IgoKIzogZnIzMC1hc20uYzoxMTYgbTMyYy1hc20uYzo5MTAKbXNnaWQgIlJlZ2lzdGVyIGxpc3QgaXMgbm90IHZhbGlkIgptc2dzdHIgIkxpc3RlIGRlIHJlZ2lzdHJlcyBub24gdmFsaWRlIgoKIzogZnIzMC1hc20uYzozMTAgZnJ2LWFzbS5jOjEyNjMgaXAyay1hc20uYzo1MTEgaXEyMDAwLWFzbS5jOjQ1OQojOiBsbTMyLWFzbS5jOjM0OSBtMzJjLWFzbS5jOjE1ODQgbTMyci1hc20uYzozMjggbWVwLWFzbS5jOjEyODYgbXQtYXNtLmM6NTk1CiM6IG9wZW5yaXNjLWFzbS5jOjI0MSB4YzE2eC1hc20uYzozNzYgeHN0b3JteTE2LWFzbS5jOjI3NgojLCBjLWZvcm1hdAptc2dpZCAiVW5yZWNvZ25pemVkIGZpZWxkICVkIHdoaWxlIHBhcnNpbmcuXG4iCm1zZ3N0ciAiQ2hhbXAgbm9uIHJlY29ubnUgJWQgbG9ycyBkZSBsJ2FuYWx5c2UuXG4iCgojOiBmcjMwLWFzbS5jOjM2MSBmcnYtYXNtLmM6MTMxNCBpcDJrLWFzbS5jOjU2MiBpcTIwMDAtYXNtLmM6NTEwCiM6IGxtMzItYXNtLmM6NDAwIG0zMmMtYXNtLmM6MTYzNSBtMzJyLWFzbS5jOjM3OSBtZXAtYXNtLmM6MTMzNyBtdC1hc20uYzo2NDYKIzogb3BlbnJpc2MtYXNtLmM6MjkyIHhjMTZ4LWFzbS5jOjQyNyB4c3Rvcm15MTYtYXNtLmM6MzI3Cm1zZ2lkICJtaXNzaW5nIG1uZW1vbmljIGluIHN5bnRheCBzdHJpbmciCm1zZ3N0ciAibW7pbW9uaXF1ZSBtYW5xdWFudGUgZGFucyBsYSBzeW50YXhlIGRlIGxhIGNoYe5uZSIKCiMuIFdlIGNvdWxkbid0IHBhcnNlIGl0LgojOiBmcjMwLWFzbS5jOjQ5NiBmcjMwLWFzbS5jOjUwMCBmcjMwLWFzbS5jOjU4OSBmcjMwLWFzbS5jOjY5NiBmcnYtYXNtLmM6MTQ0OQojOiBmcnYtYXNtLmM6MTQ1MyBmcnYtYXNtLmM6MTU0MiBmcnYtYXNtLmM6MTY0OSBpcDJrLWFzbS5jOjY5NyBpcDJrLWFzbS5jOjcwMQojOiBpcDJrLWFzbS5jOjc5MCBpcDJrLWFzbS5jOjg5NyBpcTIwMDAtYXNtLmM6NjQ1IGlxMjAwMC1hc20uYzo2NDkKIzogaXEyMDAwLWFzbS5jOjczOCBpcTIwMDAtYXNtLmM6ODQ1IGxtMzItYXNtLmM6NTM1IGxtMzItYXNtLmM6NTM5CiM6IGxtMzItYXNtLmM6NjI4IGxtMzItYXNtLmM6NzM1IG0zMmMtYXNtLmM6MTc3MCBtMzJjLWFzbS5jOjE3NzQKIzogbTMyYy1hc20uYzoxODYzIG0zMmMtYXNtLmM6MTk3MCBtMzJyLWFzbS5jOjUxNCBtMzJyLWFzbS5jOjUxOAojOiBtMzJyLWFzbS5jOjYwNyBtMzJyLWFzbS5jOjcxNCBtZXAtYXNtLmM6MTQ3MiBtZXAtYXNtLmM6MTQ3NiBtZXAtYXNtLmM6MTU2NQojOiBtZXAtYXNtLmM6MTY3MiBtdC1hc20uYzo3ODEgbXQtYXNtLmM6Nzg1IG10LWFzbS5jOjg3NCBtdC1hc20uYzo5ODEKIzogb3BlbnJpc2MtYXNtLmM6NDI3IG9wZW5yaXNjLWFzbS5jOjQzMSBvcGVucmlzYy1hc20uYzo1MjAgb3BlbnJpc2MtYXNtLmM6NjI3CiM6IHhjMTZ4LWFzbS5jOjU2MiB4YzE2eC1hc20uYzo1NjYgeGMxNngtYXNtLmM6NjU1IHhjMTZ4LWFzbS5jOjc2MgojOiB4c3Rvcm15MTYtYXNtLmM6NDYyIHhzdG9ybXkxNi1hc20uYzo0NjYgeHN0b3JteTE2LWFzbS5jOjU1NQojOiB4c3Rvcm15MTYtYXNtLmM6NjYyCm1zZ2lkICJ1bnJlY29nbml6ZWQgaW5zdHJ1Y3Rpb24iCm1zZ3N0ciAiaW5zdHJ1Y3Rpb24gbm9uIHJlY29ubnVlIgoKIzogZnIzMC1hc20uYzo1NDMgZnJ2LWFzbS5jOjE0OTYgaXAyay1hc20uYzo3NDQgaXEyMDAwLWFzbS5jOjY5MgojOiBsbTMyLWFzbS5jOjU4MiBtMzJjLWFzbS5jOjE4MTcgbTMyci1hc20uYzo1NjEgbWVwLWFzbS5jOjE1MTkgbXQtYXNtLmM6ODI4CiM6IG9wZW5yaXNjLWFzbS5jOjQ3NCB4YzE2eC1hc20uYzo2MDkgeHN0b3JteTE2LWFzbS5jOjUwOQojLCBjLWZvcm1hdAptc2dpZCAic3ludGF4IGVycm9yIChleHBlY3RlZCBjaGFyIGAlYycsIGZvdW5kIGAlYycpIgptc2dzdHIgImVycmV1ciBkZSBzeW50YXhlIChjYXJhY3TocmUgqyAlYyC7IGF0dGVuZHUsICCrICVjILsgb2J0ZW51KSIKCiM6IGZyMzAtYXNtLmM6NTUzIGZydi1hc20uYzoxNTA2IGlwMmstYXNtLmM6NzU0IGlxMjAwMC1hc20uYzo3MDIKIzogbG0zMi1hc20uYzo1OTIgbTMyYy1hc20uYzoxODI3IG0zMnItYXNtLmM6NTcxIG1lcC1hc20uYzoxNTI5IG10LWFzbS5jOjgzOAojOiBvcGVucmlzYy1hc20uYzo0ODQgeGMxNngtYXNtLmM6NjE5IHhzdG9ybXkxNi1hc20uYzo1MTkKIywgYy1mb3JtYXQKbXNnaWQgInN5bnRheCBlcnJvciAoZXhwZWN0ZWQgY2hhciBgJWMnLCBmb3VuZCBlbmQgb2YgaW5zdHJ1Y3Rpb24pIgptc2dzdHIgImVycmV1ciBkZSBzeW50YXhlIChjYXJhY3TocmUgqyAlYyC7IGF0dGVuZHUsIGZpbiBkZSBsJ2luc3RydWN0aW9uIHRyb3V26WUpIgoKIzogZnIzMC1hc20uYzo1ODMgZnJ2LWFzbS5jOjE1MzYgaXAyay1hc20uYzo3ODQgaXEyMDAwLWFzbS5jOjczMgojOiBsbTMyLWFzbS5jOjYyMiBtMzJjLWFzbS5jOjE4NTcgbTMyci1hc20uYzo2MDEgbWVwLWFzbS5jOjE1NTkgbXQtYXNtLmM6ODY4CiM6IG9wZW5yaXNjLWFzbS5jOjUxNCB4YzE2eC1hc20uYzo2NDkgeHN0b3JteTE2LWFzbS5jOjU0OQptc2dpZCAianVuayBhdCBlbmQgb2YgbGluZSIKbXNnc3RyICJyZWJ1dCDgIGxhIGZpbiBkZSBsYSBsaWduZSIKCiM6IGZyMzAtYXNtLmM6Njk1IGZydi1hc20uYzoxNjQ4IGlwMmstYXNtLmM6ODk2IGlxMjAwMC1hc20uYzo4NDQKIzogbG0zMi1hc20uYzo3MzQgbTMyYy1hc20uYzoxOTY5IG0zMnItYXNtLmM6NzEzIG1lcC1hc20uYzoxNjcxIG10LWFzbS5jOjk4MAojOiBvcGVucmlzYy1hc20uYzo2MjYgeGMxNngtYXNtLmM6NzYxIHhzdG9ybXkxNi1hc20uYzo2NjEKbXNnaWQgInVucmVjb2duaXplZCBmb3JtIG9mIGluc3RydWN0aW9uIgptc2dzdHIgImZvcm1lIGQnaW5zdHJ1Y3Rpb24gbm9uIHJlY29ubnVlIgoKIzogZnIzMC1hc20uYzo3MDkgZnJ2LWFzbS5jOjE2NjIgaXAyay1hc20uYzo5MTAgaXEyMDAwLWFzbS5jOjg1OAojOiBsbTMyLWFzbS5jOjc0OCBtMzJjLWFzbS5jOjE5ODMgbTMyci1hc20uYzo3MjcgbWVwLWFzbS5jOjE2ODUgbXQtYXNtLmM6OTk0CiM6IG9wZW5yaXNjLWFzbS5jOjY0MCB4YzE2eC1hc20uYzo3NzUgeHN0b3JteTE2LWFzbS5jOjY3NQojLCBjLWZvcm1hdAptc2dpZCAiYmFkIGluc3RydWN0aW9uIGAlLjUwcy4uLiciCm1zZ3N0ciAiaW5zdHJ1Y3Rpb24gZXJyb27pZSCrICUuNTBzLi4uILsiCgojOiBmcjMwLWFzbS5jOjcxMiBmcnYtYXNtLmM6MTY2NSBpcDJrLWFzbS5jOjkxMyBpcTIwMDAtYXNtLmM6ODYxCiM6IGxtMzItYXNtLmM6NzUxIG0zMmMtYXNtLmM6MTk4NiBtMzJyLWFzbS5jOjczMCBtZXAtYXNtLmM6MTY4OCBtdC1hc20uYzo5OTcKIzogb3BlbnJpc2MtYXNtLmM6NjQzIHhjMTZ4LWFzbS5jOjc3OCB4c3Rvcm15MTYtYXNtLmM6Njc4CiMsIGMtZm9ybWF0Cm1zZ2lkICJiYWQgaW5zdHJ1Y3Rpb24gYCUuNTBzJyIKbXNnc3RyICJpbnN0cnVjdGlvbiBlcnJvbullIKsgJS41MHMguyIKCiMuIERlZmF1bHQgdGV4dCB0byBwcmludCBpZiBhbiBpbnN0cnVjdGlvbiBpc24ndCByZWNvZ25pemVkLgojOiBmcjMwLWRpcy5jOjQxIGZydi1kaXMuYzo0MSBpcDJrLWRpcy5jOjQxIGlxMjAwMC1kaXMuYzo0MSBsbTMyLWRpcy5jOjQxCiM6IG0zMmMtZGlzLmM6NDEgbTMyci1kaXMuYzo0MSBtZXAtZGlzLmM6NDEgbW1peC1kaXMuYzoyNzcgbXQtZGlzLmM6NDEKIzogb3BlbnJpc2MtZGlzLmM6NDEgeGMxNngtZGlzLmM6NDEgeHN0b3JteTE2LWRpcy5jOjQxCm1zZ2lkICIqdW5rbm93bioiCm1zZ3N0ciAiKmluY29ubnUqIgoKIzogZnIzMC1kaXMuYzoyOTkgZnJ2LWRpcy5jOjM5NiBpcDJrLWRpcy5jOjI4OCBpcTIwMDAtZGlzLmM6MTg5IGxtMzItZGlzLmM6MTQ3CiM6IG0zMmMtZGlzLmM6ODkxIG0zMnItZGlzLmM6Mjc5IG1lcC1kaXMuYzoxMTg3IG10LWRpcy5jOjI5MAojOiBvcGVucmlzYy1kaXMuYzoxMzUgeGMxNngtZGlzLmM6NDIwIHhzdG9ybXkxNi1kaXMuYzoxNjgKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXplZCBmaWVsZCAlZCB3aGlsZSBwcmludGluZyBpbnNuLlxuIgptc2dzdHIgIkNoYW1wIG5vbiByZWNvbm51ICVkIGxvcnMgZGUgbCdhZmZpY2hhZ2UgZCdpbnN0cnVjdGlvbnMuXG4iCgojOiBmcjMwLWlibGQuYzoxNjQgZnJ2LWlibGQuYzoxNjQgaXAyay1pYmxkLmM6MTY0IGlxMjAwMC1pYmxkLmM6MTY0CiM6IGxtMzItaWJsZC5jOjE2NCBtMzJjLWlibGQuYzoxNjQgbTMyci1pYmxkLmM6MTY0IG1lcC1pYmxkLmM6MTY0CiM6IG10LWlibGQuYzoxNjQgb3BlbnJpc2MtaWJsZC5jOjE2NCB4YzE2eC1pYmxkLmM6MTY0IHhzdG9ybXkxNi1pYmxkLmM6MTY0CiMsIGMtZm9ybWF0Cm1zZ2lkICJvcGVyYW5kIG91dCBvZiByYW5nZSAoJWxkIG5vdCBiZXR3ZWVuICVsZCBhbmQgJWx1KSIKbXNnc3RyICJvcOlyYW5kZSBob3JzIGxpbWl0ZXMgKCVsZCBuJ2VzdCBwYXMgZW50cmUgJWxkIGV0ICVsdSkiCgojOiBmcjMwLWlibGQuYzoxODUgZnJ2LWlibGQuYzoxODUgaXAyay1pYmxkLmM6MTg1IGlxMjAwMC1pYmxkLmM6MTg1CiM6IGxtMzItaWJsZC5jOjE4NSBtMzJjLWlibGQuYzoxODUgbTMyci1pYmxkLmM6MTg1IG1lcC1pYmxkLmM6MTg1CiM6IG10LWlibGQuYzoxODUgb3BlbnJpc2MtaWJsZC5jOjE4NSB4YzE2eC1pYmxkLmM6MTg1IHhzdG9ybXkxNi1pYmxkLmM6MTg1CiMsIGMtZm9ybWF0Cm1zZ2lkICJvcGVyYW5kIG91dCBvZiByYW5nZSAoMHglbHggbm90IGJldHdlZW4gMCBhbmQgMHglbHgpIgptc2dzdHIgIm9w6XJhbmRlIGhvcnMgbGltaXRlICgweCVseCBuJ2VzdCBwYXMgZW50cmUgMCBldCAweCVseCkiCgojOiBmcjMwLWlibGQuYzo3MjcgZnJ2LWlibGQuYzo4NTMgaXAyay1pYmxkLmM6NjA0IGlxMjAwMC1pYmxkLmM6NzEwCiM6IGxtMzItaWJsZC5jOjYzMSBtMzJjLWlibGQuYzoxNzI4IG0zMnItaWJsZC5jOjY2MiBtZXAtaWJsZC5jOjEyMDUKIzogbXQtaWJsZC5jOjc0NiBvcGVucmlzYy1pYmxkLmM6NjMwIHhjMTZ4LWlibGQuYzo3NDkgeHN0b3JteTE2LWlibGQuYzo2NzUKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXplZCBmaWVsZCAlZCB3aGlsZSBidWlsZGluZyBpbnNuLlxuIgptc2dzdHIgIkNoYW1wIG5vbiByZWNvbm51ICVkIGxvcnMgZGUgbGEgY29uc3RydWN0aW9uIGQnaW5zdHJ1Y3Rpb24uXG4iCgojOiBmcjMwLWlibGQuYzo5MzIgZnJ2LWlibGQuYzoxMTcwIGlwMmstaWJsZC5jOjY3OSBpcTIwMDAtaWJsZC5jOjg4NQojOiBsbTMyLWlibGQuYzo3MzUgbTMyYy1pYmxkLmM6Mjg4OSBtMzJyLWlibGQuYzo3OTkgbWVwLWlibGQuYzoxODA0CiM6IG10LWlibGQuYzo5NjYgb3BlbnJpc2MtaWJsZC5jOjczMCB4YzE2eC1pYmxkLmM6OTY5IHhzdG9ybXkxNi1pYmxkLmM6ODIxCiMsIGMtZm9ybWF0Cm1zZ2lkICJVbnJlY29nbml6ZWQgZmllbGQgJWQgd2hpbGUgZGVjb2RpbmcgaW5zbi5cbiIKbXNnc3RyICJDaGFtcCBub24gcmVjb25udSAlZCBsb3JzIGR1IGTpY29kYWdlIGQnaW5zdHJ1Y3Rpb25zLlxuIgoKIzogZnIzMC1pYmxkLmM6MTA3OCBmcnYtaWJsZC5jOjE0NDggaXAyay1pYmxkLmM6NzUzIGlxMjAwMC1pYmxkLmM6MTAxNgojOiBsbTMyLWlibGQuYzo4MjQgbTMyYy1pYmxkLmM6MzUwNiBtMzJyLWlibGQuYzo5MTIgbWVwLWlibGQuYzoyMjc0CiM6IG10LWlibGQuYzoxMTY2IG9wZW5yaXNjLWlibGQuYzo4MDcgeGMxNngtaWJsZC5jOjExOTAgeHN0b3JteTE2LWlibGQuYzo5MzEKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXplZCBmaWVsZCAlZCB3aGlsZSBnZXR0aW5nIGludCBvcGVyYW5kLlxuIgptc2dzdHIgIkNoYW1wIG5vbiByZWNvbm51ICVkIGxvcnMgZGUgbCdvYnRlbnRpb24gZCd1biBvcOlyYW5kZSBpbnQuXG4iCgojOiBmcjMwLWlibGQuYzoxMjA2IGZydi1pYmxkLmM6MTcwOCBpcDJrLWlibGQuYzo4MDkgaXEyMDAwLWlibGQuYzoxMTI5CiM6IGxtMzItaWJsZC5jOjg5NSBtMzJjLWlibGQuYzo0MTA1IG0zMnItaWJsZC5jOjEwMDcgbWVwLWlibGQuYzoyNzI2CiM6IG10LWlibGQuYzoxMzQ4IG9wZW5yaXNjLWlibGQuYzo4NjYgeGMxNngtaWJsZC5jOjEzOTMgeHN0b3JteTE2LWlibGQuYzoxMDIzCiMsIGMtZm9ybWF0Cm1zZ2lkICJVbnJlY29nbml6ZWQgZmllbGQgJWQgd2hpbGUgZ2V0dGluZyB2bWEgb3BlcmFuZC5cbiIKbXNnc3RyICJDaGFtcCBub24gcmVjb25udSAlZCBsb3JzIGRlIGwnb2J0ZW50aW9uIGQndW4gb3DpcmFuZGUgdm1hLlxuIgoKIzogZnIzMC1pYmxkLmM6MTMzNyBmcnYtaWJsZC5jOjE5NzUgaXAyay1pYmxkLmM6ODY4IGlxMjAwMC1pYmxkLmM6MTI0OQojOiBsbTMyLWlibGQuYzo5NzMgbTMyYy1pYmxkLmM6NDY5MiBtMzJyLWlibGQuYzoxMTA4IG1lcC1pYmxkLmM6MzEzOQojOiBtdC1pYmxkLmM6MTUzNyBvcGVucmlzYy1pYmxkLmM6OTMyIHhjMTZ4LWlibGQuYzoxNTk3IHhzdG9ybXkxNi1pYmxkLmM6MTEyMgojLCBjLWZvcm1hdAptc2dpZCAiVW5yZWNvZ25pemVkIGZpZWxkICVkIHdoaWxlIHNldHRpbmcgaW50IG9wZXJhbmQuXG4iCm1zZ3N0ciAiQ2hhbXAgbm9uIHJlY29ubnUgJWQgbG9ycyBkZSBsJ2luaXRpYWxpc2F0aW9uIGQndW4gb3DpcmFuZGUgaW50LlxuIgoKIzogZnIzMC1pYmxkLmM6MTQ1OCBmcnYtaWJsZC5jOjIyMzIgaXAyay1pYmxkLmM6OTE3IGlxMjAwMC1pYmxkLmM6MTM1OQojOiBsbTMyLWlibGQuYzoxMDQxIG0zMmMtaWJsZC5jOjUyNjkgbTMyci1pYmxkLmM6MTE5OSBtZXAtaWJsZC5jOjM1NDIKIzogbXQtaWJsZC5jOjE3MTYgb3BlbnJpc2MtaWJsZC5jOjk4OCB4YzE2eC1pYmxkLmM6MTc5MSB4c3Rvcm15MTYtaWJsZC5jOjEyMTEKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXplZCBmaWVsZCAlZCB3aGlsZSBzZXR0aW5nIHZtYSBvcGVyYW5kLlxuIgptc2dzdHIgIkNoYW1wIG5vbiByZWNvbm51ICVkIGxvcnMgZGUgbCdpbml0aWFsaXNhdGlvbiBkJ3VuIG9w6XJhbmRlIHZtYS5cbiIKCiM6IGZydi1hc20uYzo2MDgKbXNnaWQgIm1pc3NpbmcgYF0nIgptc2dzdHIgIlwiXVwiJyBtYW5xdWFudCIKCiM6IGZydi1hc20uYzo2MTEgZnJ2LWFzbS5jOjYyMQptc2dpZCAiU3BlY2lhbCBwdXJwb3NlIHJlZ2lzdGVyIG51bWJlciBpcyBvdXQgb2YgcmFuZ2UiCm1zZ3N0ciAiTnVt6XJvIGRlIHJlZ2lzdHJlIHNw6WNpYWwgaG9ycyBkZXMgbGltaXRlcyIKCiM6IGZydi1hc20uYzo5MDgKbXNnaWQgIlZhbHVlIG9mIEEgb3BlcmFuZCBtdXN0IGJlIDAgb3IgMSIKbXNnc3RyICJMYSB2YWxldXIgZGUgbCdvcOlyYW5kZSBBIGRvaXQg6nRyZSAwIG91IDEiCgojOiBmcnYtYXNtLmM6OTQ0Cm1zZ2lkICJyZWdpc3RlciBudW1iZXIgbXVzdCBiZSBldmVuIgptc2dzdHIgIkxlIG51belybyBkZSByZWdpc3RyZSBkb2l0IOp0cmUgcGFpciIKCiMuIC0tIGFzc2VtYmxlciByb3V0aW5lcyBpbnNlcnRlZCBoZXJlLgojLiAtLSBhc20uYwojOiBmcnYtYXNtLmM6OTcyIGlxMjAwMC1hc20uYzo1NiBsbTMyLWFzbS5jOjk1IGxtMzItYXNtLmM6MTI3IGxtMzItYXNtLmM6MTU3CiM6IGxtMzItYXNtLmM6MTg3IGxtMzItYXNtLmM6MjE3IGxtMzItYXNtLmM6MjQ3IG0zMmMtYXNtLmM6MTQwIG0zMmMtYXNtLmM6MjM1CiM6IG0zMmMtYXNtLmM6Mjc2IG0zMmMtYXNtLmM6MzM0IG0zMmMtYXNtLmM6MzU1IG0zMnItYXNtLmM6NTMgbWVwLWFzbS5jOjI0MQojOiBtZXAtYXNtLmM6MjU5IG1lcC1hc20uYzoyNzQgbWVwLWFzbS5jOjI4OSBtZXAtYXNtLmM6MzAxIG9wZW5yaXNjLWFzbS5jOjU0Cm1zZ2lkICJtaXNzaW5nIGApJyIKbXNnc3RyICJcIilcIiBtYW5xdWFudGUiCgojIGg4MzAwLWRpcy5jOjM4MEludGVybmFsIGVycm9yOiBiYWQgc3BhcmMtb3Bjb2RlLmg6IFwiJXNcIiA9PSBcIiVzXCJcbiIKIzogaDgzMDAtZGlzLmM6MzE0CiMsIGMtZm9ybWF0Cm1zZ2lkICJIbW1tbSAweCV4Igptc2dzdHIgIkh1bW1tbSAweCV4IgoKIzogaDgzMDAtZGlzLmM6Njk1CiMsIGMtZm9ybWF0Cm1zZ2lkICJEb24ndCB1bmRlcnN0YW5kIDB4JXggXG4iCm1zZ3N0ciAiSW5jb21wculoZW5zaWJsZSA6IDB4JXggXG4iCgojOiBoODUwMC1kaXMuYzoxMjQKIywgYy1mb3JtYXQKbXNnaWQgImNhbid0IGNvcGUgd2l0aCBpbnNlcnQgJWRcbiIKbXNnc3RyICJJbXBvc3NpYmxlIGRlIGfpcmVyIGwnaW5zZXJ0aW9uICVkXG4iCgojLiBDb3VsZG4ndCB1bmRlcnN0YW5kIGFueXRoaW5nLgojOiBoODUwMC1kaXMuYzozMjQKIywgYy1mb3JtYXQKbXNnaWQgIiUwMnhcdFx0KnVua25vd24qIgptc2dzdHIgIiUwMnhcdFx0KmluY29ubnUqIgoKIzogaTM4Ni1kaXMuYzoxMDY3MQptc2dpZCAiPGludGVybmFsIGRpc2Fzc2VtYmxlciBlcnJvcj4iCm1zZ3N0ciAiPGVycmV1ciBpbnRlcm5lIGR1IGTpc2Fzc2VtYmxldXI+IgoKIzogaTM4Ni1kaXMuYzoxMDk2OAojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJUaGUgZm9sbG93aW5nIGkzODYveDg2LTY0IHNwZWNpZmljIGRpc2Fzc2VtYmxlciBvcHRpb25zIGFyZSBzdXBwb3J0ZWQgZm9yIHVzZVxuIgoid2l0aCB0aGUgLU0gc3dpdGNoIChtdWx0aXBsZSBvcHRpb25zIHNob3VsZCBiZSBzZXBhcmF0ZWQgYnkgY29tbWFzKTpcbiIKbXNnc3RyICIiCiJcbiIKIkxlcyBvcHRpb25zIHNw6WNpZmlxdWVzIGkzODYveDg2LTY0IGR1IGTpc2Fzc2VtYmxldXIgc29udCBzdXBwb3J06WVzIGF2ZWMgbCd1dGlsaXNhdGlvblxuIgoiZGUgbCdvcHRpb24gLU0gKGxlcyBvcHRpb25zIG11bHRpcGxlcyBkb2l2ZW50IOp0cmUgc+lwYXLpZXMgcGFyIGRlcyB2aXJndWxlcyk6XG4iCgojOiBpMzg2LWRpcy5jOjEwOTcyCiMsIGMtZm9ybWF0Cm1zZ2lkICIgIHg4Ni02NCAgICAgIERpc2Fzc2VtYmxlIGluIDY0Yml0IG1vZGVcbiIKbXNnc3RyICIgIHg4Ni02NCAgICAgIETpc2Fzc2VtYmxlciBlbiBtb2RlIDY0IGJpdHNcbiIKCiM6IGkzODYtZGlzLmM6MTA5NzMKIywgYy1mb3JtYXQKbXNnaWQgIiAgaTM4NiAgICAgICAgRGlzYXNzZW1ibGUgaW4gMzJiaXQgbW9kZVxuIgptc2dzdHIgIiAgaTM4NiAgICAgICAgROlzYXNzZW1ibGVyIGVuIG1vZGUgMzIgYml0c1xuIgoKIzogaTM4Ni1kaXMuYzoxMDk3NAojLCBjLWZvcm1hdAptc2dpZCAiICBpODA4NiAgICAgICBEaXNhc3NlbWJsZSBpbiAxNmJpdCBtb2RlXG4iCm1zZ3N0ciAiICBpODA4NiAgICAgICBE6XNhc3NlbWJsZXIgZW4gbW9kZSAxNiBiaXRzXG4iCgojOiBpMzg2LWRpcy5jOjEwOTc1CiMsIGMtZm9ybWF0Cm1zZ2lkICIgIGF0dCAgICAgICAgIERpc3BsYXkgaW5zdHJ1Y3Rpb24gaW4gQVQmVCBzeW50YXhcbiIKbXNnc3RyICIgIGF0dCAgICAgICAgIEFmZmljaGVyIGxlcyBpbnN0cnVjdGlvbnMgZW4gc3ludGF4ZSBBVCZUXG4iCgojOiBpMzg2LWRpcy5jOjEwOTc2CiMsIGMtZm9ybWF0Cm1zZ2lkICIgIGludGVsICAgICAgIERpc3BsYXkgaW5zdHJ1Y3Rpb24gaW4gSW50ZWwgc3ludGF4XG4iCm1zZ3N0ciAiICBpbnRlbCAgICAgICBBZmZpY2hlciBsZXMgaW5zdHJ1Y3Rpb25zIGVuIHN5bnRheGUgSW50ZWxcbiIKCiM6IGkzODYtZGlzLmM6MTA5NzcKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiAgYXR0LW1uZW1vbmljXG4iCiIgICAgICAgICAgICAgIERpc3BsYXkgaW5zdHJ1Y3Rpb24gaW4gQVQmVCBtbmVtb25pY1xuIgptc2dzdHIgIiIKIiAgYXR0LW1uZW1vbmljXG4iCiIgICAgICAgICAgICAgIEFmZmljaGVyIGxlcyBpbnN0cnVjdGlvbnMgbW7pbW9uaXF1ZXMgQVQmVFxuIgoKIzogaTM4Ni1kaXMuYzoxMDk3OQojLCBjLWZvcm1hdAptc2dpZCAiIgoiICBpbnRlbC1tbmVtb25pY1xuIgoiICAgICAgICAgICAgICBEaXNwbGF5IGluc3RydWN0aW9uIGluIEludGVsIG1uZW1vbmljXG4iCm1zZ3N0ciAiIgoiICBpbnRlbC1tbmVtb25pY1xuIgoiICAgICAgICAgICAgICBBZmZpY2hlciBsZXMgaW5zdHJ1Y3Rpb25zIG1u6W1vbmlxdWVzIEludGVsXG4iCgojOiBpMzg2LWRpcy5jOjEwOTgxCiMsIGMtZm9ybWF0Cm1zZ2lkICIgIGFkZHI2NCAgICAgIEFzc3VtZSA2NGJpdCBhZGRyZXNzIHNpemVcbiIKbXNnc3RyICIgIGFkZHI2NCAgICAgIFRhaWxsZSBkZXMgYWRyZXNzZXMgOiA2NCBiaXRzXG4iCgojOiBpMzg2LWRpcy5jOjEwOTgyCiMsIGMtZm9ybWF0Cm1zZ2lkICIgIGFkZHIzMiAgICAgIEFzc3VtZSAzMmJpdCBhZGRyZXNzIHNpemVcbiIKbXNnc3RyICIgIGFkZHIzMiAgICAgIFRhaWxsZSBkZXMgYWRyZXNzZXMgOiAzMiBiaXRzXG4iCgojOiBpMzg2LWRpcy5jOjEwOTgzCiMsIGMtZm9ybWF0Cm1zZ2lkICIgIGFkZHIxNiAgICAgIEFzc3VtZSAxNmJpdCBhZGRyZXNzIHNpemVcbiIKbXNnc3RyICIgIGFkZHIxNiAgICAgIFRhaWxsZSBkZXMgYWRyZXNzZXMgOiAxNiBiaXRzXG4iCgojOiBpMzg2LWRpcy5jOjEwOTg0CiMsIGMtZm9ybWF0Cm1zZ2lkICIgIGRhdGEzMiAgICAgIEFzc3VtZSAzMmJpdCBkYXRhIHNpemVcbiIKbXNnc3RyICIgIGRhdGEzMiAgICAgICBUYWlsbGUgZGUgZG9ubullcyA6IDMyIGJpdHNcbiIKCiM6IGkzODYtZGlzLmM6MTA5ODUKIywgYy1mb3JtYXQKbXNnaWQgIiAgZGF0YTE2ICAgICAgQXNzdW1lIDE2Yml0IGRhdGEgc2l6ZVxuIgptc2dzdHIgIiAgZGF0YTE2ICAgICAgVGFpbGxlIGRlIGRvbm7pZXMgOiAxNiBiaXRzXG4iCgojOiBpMzg2LWRpcy5jOjEwOTg2CiMsIGMtZm9ybWF0Cm1zZ2lkICIgIHN1ZmZpeCAgICAgIEFsd2F5cyBkaXNwbGF5IGluc3RydWN0aW9uIHN1ZmZpeCBpbiBBVCZUIHN5bnRheFxuIgptc2dzdHIgIiAgc3VmZml4ICAgICAgVG91am91cnMgYWZmaWNoZXIgbGVzIHN1ZmZpeGVzIGQnaW5zdHJ1Y3Rpb24gZW4gc3ludGF4ZSBBVCZUXG4iCgojOiBpMzg2LWdlbi5jOjQ1OSBpYTY0LWdlbi5jOjMwNwojLCBjLWZvcm1hdAptc2dpZCAiJXM6IEVycm9yOiAiCm1zZ3N0ciAiJXMgOiBFUlJFVVIgOiAiCgojOiBpMzg2LWdlbi5jOjU5MQojLCBjLWZvcm1hdAptc2dpZCAiJXM6ICVkOiBVbmtub3duIGJpdGZpZWxkOiAlc1xuIgptc2dzdHIgIiVzOiAlZDogY2hhbXAgZGUgYml0cyBpbmNvbm51IDogJXNcbiIKCiM6IGkzODYtZ2VuLmM6NTkzCiMsIGMtZm9ybWF0Cm1zZ2lkICJVbmtub3duIGJpdGZpZWxkOiAlc1xuIgptc2dzdHIgIkNoYW1wIGRlIGJpdHMgaW5jb25udSA6ICVzXG4iCgojOiBpMzg2LWdlbi5jOjY0OQojLCBjLWZvcm1hdAptc2dpZCAiJXM6ICVkOiBNaXNzaW5nIGApJyBpbiBiaXRmaWVsZDogJXNcbiIKbXNnc3RyICIlcyA6ICVkIDogYCknIG1hbnF1YW50ZSBkYW5zIGxlIGNoYW1wIGRlIGJpdHMgOiAlc1xuIgoKIzogaTM4Ni1nZW4uYzo5MTQKIywgYy1mb3JtYXQKbXNnaWQgImNhbid0IGZpbmQgaTM4Ni1vcGMudGJsIGZvciByZWFkaW5nLCBlcnJubyA9ICVzXG4iCm1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGkzODYtb3BjLnRibCwgZXJybm8gPSAlc1xuIgoKIzogaTM4Ni1nZW4uYzoxMDQ1CiMsIGMtZm9ybWF0Cm1zZ2lkICJjYW4ndCBmaW5kIGkzODYtcmVnLnRibCBmb3IgcmVhZGluZywgZXJybm8gPSAlc1xuIgptc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBpMzg2LXJlZy50YmwsIGVycm5vID0gJXNcbiIKCiM6IGkzODYtZ2VuLmM6MTEyMgojLCBjLWZvcm1hdAptc2dpZCAiY2FuJ3QgY3JlYXRlIGkzODYtaW5pdC5oLCBlcnJubyA9ICVzXG4iCm1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcullciBpMzg2LWluaXQuaCwgZXJybm8gPSAlc1xuIgoKIzogaTM4Ni1nZW4uYzoxMjExIGlhNjQtZ2VuLmM6MjgyMAojLCBjLWZvcm1hdAptc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBkaXJlY3RvcnkgdG8gXCIlc1wiLCBlcnJubyA9ICVzXG4iCm1zZ3N0ciAiaW5jYXBhYmxlIGRlIGNoYW5nZXIgZGUgculwZXJ0b2lyZSB2ZXJzIFwiJXNcIiwgZXJybm8gPSAlc1xuIgoKIzogaTM4Ni1nZW4uYzoxMjE4CiMsIGMtZm9ybWF0Cm1zZ2lkICIlZCB1bnVzZWQgYml0cyBpbiBpMzg2X2NwdV9mbGFncy5cbiIKbXNnc3RyICIlZCBiaXRzIGludXRpbGlz6XMgZGFucyBpMzg2X2NwdV9mbGFncy5cbiIKCiM6IGkzODYtZ2VuLmM6MTIyNQojLCBjLWZvcm1hdAptc2dpZCAiJWQgdW51c2VkIGJpdHMgaW4gaTM4Nl9vcGVyYW5kX3R5cGUuXG4iCm1zZ3N0ciAiJWQgYml0cyBpbnV0aWxpc+lzIGRhbnMgaTM4Nl9vcGVyYW5kX3R5cGUuXG4iCgojOiBpMzg2LWdlbi5jOjEyMzkKIywgYy1mb3JtYXQKbXNnaWQgImNhbid0IGNyZWF0ZSBpMzg2LXRibC5oLCBlcnJubyA9ICVzXG4iCm1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcullciBpMzg2LXRibC5oLCBlcnJubyA9ICVzXG4iCgojOiBpYTY0LWdlbi5jOjMyMAojLCBjLWZvcm1hdAptc2dpZCAiJXM6IFdhcm5pbmc6ICIKbXNnc3RyICIlcyA6IEFWRVJUSVNTRU1FTlQgOiAiCgojOiBpYTY0LWdlbi5jOjUwNiBpYTY0LWdlbi5jOjczNwojLCBjLWZvcm1hdAptc2dpZCAibXVsdGlwbGUgbm90ZSAlcyBub3QgaGFuZGxlZFxuIgptc2dzdHIgIm5vdGUgbXVsdGlwbGUgJXMgbm9uIGfpcullXG4iCgojOiBpYTY0LWdlbi5jOjYxNwptc2dpZCAiY2FuJ3QgZmluZCBpYTY0LWljLnRibCBmb3IgcmVhZGluZ1xuIgptc2dzdHIgImltcG9zc2libGUgZGUgdHJvdXZlciBpYTY0LWljLnRibCBwb3VyIGxhIGxlY3R1cmVcbiIKCiM6IGlhNjQtZ2VuLmM6ODE5CiMsIGMtZm9ybWF0Cm1zZ2lkICJjYW4ndCBmaW5kICVzIGZvciByZWFkaW5nXG4iCm1zZ3N0ciAiaW1wb3NzaWJsZSBkZSB0cm91dmVyICVzIHBvdXIgbGEgbGVjdHVyZVxuIgoKIzogaWE2NC1nZW4uYzoxMDQzCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJtb3N0IHJlY2VudCBmb3JtYXQgJyVzJ1xuIgoiYXBwZWFycyBtb3JlIHJlc3RyaWN0aXZlIHRoYW4gJyVzJ1xuIgptc2dzdHIgIiIKImxlIHBsdXMgculjZW50IGZvcm1hdCAnJXMnXG4iCiJhcHBhcmHudCBwbHVzIHJlc3RyaWN0aWYgcXVlICclcydcbiIKCiM6IGlhNjQtZ2VuLmM6MTA1NAojLCBjLWZvcm1hdAptc2dpZCAib3ZlcmxhcHBpbmcgZmllbGQgJXMtPiVzXG4iCm1zZ3N0ciAiY2hldmF1Y2hlbWVudCBkZSBjaGFtcCAlcy0+JXNcbiIKCiM6IGlhNjQtZ2VuLmM6MTI1MQojLCBjLWZvcm1hdAptc2dpZCAib3ZlcndyaXRpbmcgbm90ZSAlZCB3aXRoIG5vdGUgJWQgKElDOiVzKVxuIgptc2dzdHIgIuljcmFzZW1lbnQgZGUgbGEgbm90ZSAlZCBwYXIgbGEgbm90ZSAlZCAoSUMgOiVzKVxuIgoKIzogaWE2NC1nZW4uYzoxNDU2CiMsIGMtZm9ybWF0Cm1zZ2lkICJkb24ndCBrbm93IGhvdyB0byBzcGVjaWZ5ICUlIGRlcGVuZGVuY3kgJXNcbiIKbXNnc3RyICJDb21tZW50IHNw6WNpZmllciAlJSBwb3VyIGxhIGTpcGVuZGFuY2UgJXMgP1xuIgoKIzogaWE2NC1nZW4uYzoxNDc4CiMsIGMtZm9ybWF0Cm1zZ2lkICJEb24ndCBrbm93IGhvdyB0byBzcGVjaWZ5ICMgZGVwZW5kZW5jeSAlc1xuIgptc2dzdHIgIkltcG9zc2libGUgZGUgc3DpY2lmaWVyIGxlIG6wIGRlIGTpcGVuZGFuY2UgJXNcbiIKCiM6IGlhNjQtZ2VuLmM6MTUxNwojLCBjLWZvcm1hdAptc2dpZCAiSUM6JXMgWyVzXSBoYXMgbm8gdGVybWluYWxzIG9yIHN1Yi1jbGFzc2VzXG4iCm1zZ3N0ciAiSUMgOiVzIFslc10gbidhIHBhcyBkZSB0ZXJtaW5hbCBvdSBkZSBzb3VzLWNsYXNzZVxuIgoKIzogaWE2NC1nZW4uYzoxNTIwCiMsIGMtZm9ybWF0Cm1zZ2lkICJJQzolcyBoYXMgbm8gdGVybWluYWxzIG9yIHN1Yi1jbGFzc2VzXG4iCm1zZ3N0ciAiSUMgOiVzIG4nYSBwYXMgZGUgdGVybWluYWwgb3UgZGUgc291cy1jbGFzc2VcbiIKCiM6IGlhNjQtZ2VuLmM6MTUyOQojLCBjLWZvcm1hdAptc2dpZCAibm8gaW5zbnMgbWFwcGVkIGRpcmVjdGx5IHRvIHRlcm1pbmFsIElDICVzIFslc10iCm1zZ3N0ciAiYXVjdW4gaW5zdHJ1Y3Rpb24gbWFwcOllIGRpcmVjdGVtZW50IOAgbCdVQyAlcyBbJXNdIgoKIzogaWE2NC1nZW4uYzoxNTMyCiMsIGMtZm9ybWF0Cm1zZ2lkICJubyBpbnNucyBtYXBwZWQgZGlyZWN0bHkgdG8gdGVybWluYWwgSUMgJXNcbiIKbXNnc3RyICJhdWN1biBpbnN0cnVjdGlvbiBtYXBw6WUgZGlyZWN0ZW1lbnQg4CBsJ1VDICVzXG4iCgojOiBpYTY0LWdlbi5jOjE1NDMKIywgYy1mb3JtYXQKbXNnaWQgImNsYXNzICVzIGlzIGRlZmluZWQgYnV0IG5vdCB1c2VkXG4iCm1zZ3N0ciAiY2xhc3NlICVzIGTpZmluaWUgbWFpcyBub24gdXRpbGlz6WVcbiIKCiM6IGlhNjQtZ2VuLmM6MTU1NgojLCBjLWZvcm1hdAptc2dpZCAiV2FybmluZzogcnNyYyAlcyAoJXMpIGhhcyBubyBjaGtzXG4iCm1zZ3N0ciAiQXR0ZW50aW9uIDogcmVnLiBzb3VyY2UgJXMgKCVzKSBzYW5zIHPpbGVjdGV1ciBcImNoa3NcIlxuIgoKIzogaWE2NC1nZW4uYzoxNTU5CiMsIGMtZm9ybWF0Cm1zZ2lkICJXYXJuaW5nOiByc3JjICVzICglcykgaGFzIG5vIGNoa3Mgb3IgcmVnc1xuIgptc2dzdHIgIkF0dGVudGlvbiA6IHJlZy4gc291cmNlICVzICglcykgc2FucyBz6WxlY3RldXIgXCJjaGtzXCIgb3UgXCJyZWdzXCJcbiIKCiM6IGlhNjQtZ2VuLmM6MTU2MwojLCBjLWZvcm1hdAptc2dpZCAicnNyYyAlcyAoJXMpIGhhcyBubyByZWdzXG4iCm1zZ3N0ciAicnNyYyAlcyAoJXMpIG4nYSBwYXMgZGUgcmVnaXN0cmVzXG4iCgojOiBpYTY0LWdlbi5jOjI0NTUKIywgYy1mb3JtYXQKbXNnaWQgIklDIG5vdGUgJWQgaW4gb3Bjb2RlICVzIChJQzolcykgY29uZmxpY3RzIHdpdGggcmVzb3VyY2UgJXMgbm90ZSAlZFxuIgptc2dzdHIgIm5vdGUgSUMgJWQgZGFucyBsJ29wY29kZSAlcyAoSUMgOiAlcykgZW50cmFudCBlbiBjb25mbGl0IGF2ZWMgbGEgcmVzc291cmNlICVzIG5vdGUgJWRcbiIKCiM6IGlhNjQtZ2VuLmM6MjQ4MwojLCBjLWZvcm1hdAptc2dpZCAiSUMgbm90ZSAlZCBmb3Igb3Bjb2RlICVzIChJQzolcykgY29uZmxpY3RzIHdpdGggcmVzb3VyY2UgJXMgbm90ZSAlZFxuIgptc2dzdHIgIm5vdGUgSUMgJWQgcG91ciBsJ29wY29kZSAlcyAoSUMgOiAlcykgZW50cmFudCBlbiBjb25mbGl0IGF2ZWMgbGEgcmVzc291cmNlICVzIG5vdGUgJWRcbiIKCiM6IGlhNjQtZ2VuLmM6MjQ5NwojLCBjLWZvcm1hdAptc2dpZCAib3Bjb2RlICVzIGhhcyBubyBjbGFzcyAob3BzICVkICVkICVkKVxuIgptc2dzdHIgIkwnb3Bjb2RlICVzIG4nYSBwYXMgZGUgY2xhc3NlIChvcHMgJWQgJWQgJWQpXG4iCgojLiBXZSd2ZSBiZWVuIHBhc3NlZCBhIHcuICBSZXR1cm4gd2l0aCBhbiBlcnJvciBtZXNzYWdlIHNvIHRoYXQKIy4gY2dlbiB3aWxsIHRyeSB0aGUgbmV4dCBwYXJzaW5nIG9wdGlvbi4KIzogaXAyay1hc20uYzo4MQptc2dpZCAiVyBrZXl3b3JkIGludmFsaWQgaW4gRlIgb3BlcmFuZCBzbG90LiIKbXNnc3RyICJtb3QgY2zpIFcgbm9uIHZhbGlkZSBkYW5zIGxlIHNsb3QgZGUgbCdvcOlyYW5kZSBGUi4iCgojLiBJbnZhbGlkIG9mZnNldCBwcmVzZW50LgojOiBpcDJrLWFzbS5jOjEwNgptc2dpZCAib2Zmc2V0KElQKSBpcyBub3QgYSB2YWxpZCBmb3JtIgptc2dzdHIgImTpY2FsYWdlKElQKSBkZSBmb3JtYXQgbm9uIHZhbGlkZSIKCiMuIEZvdW5kIHNvbWV0aGluZyB0aGVyZSBpbiBmcm9udCBvZiAoRFApIGJ1dCBpdCdzIG91dAojLiBvZiByYW5nZS4KIzogaXAyay1hc20uYzoxNTQKbXNnaWQgIihEUCkgb2Zmc2V0IG91dCBvZiByYW5nZS4iCm1zZ3N0ciAiZOljYWxhZ2UgKERQKSBlc3QgaG9ycyBsaW1pdGVzLiIKCiMuIEZvdW5kIHNvbWV0aGluZyB0aGVyZSBpbiBmcm9udCBvZiAoU1ApIGJ1dCBpdCdzIG91dAojLiBvZiByYW5nZS4KIzogaXAyay1hc20uYzoxOTUKbXNnaWQgIihTUCkgb2Zmc2V0IG91dCBvZiByYW5nZS4iCm1zZ3N0ciAiZOljYWxhZ2UgKFNQKSBlc3QgaG9ycyBsaW1pdGVzLiIKCiM6IGlwMmstYXNtLmM6MjExCm1zZ2lkICJpbGxlZ2FsIHVzZSBvZiBwYXJlbnRoZXNlcyIKbXNnc3RyICJ1c2FnZSBpbGzpZ2FsIGRlcyBwYXJlbnRo6HNlcyIKCiM6IGlwMmstYXNtLmM6MjE4Cm1zZ2lkICJvcGVyYW5kIG91dCBvZiByYW5nZSAobm90IGJldHdlZW4gMSBhbmQgMjU1KSIKbXNnc3RyICJvcOlyYW5kZSBob3JzIGxpbWl0ZXMgKHBhcyBlbnRyZSAxIGV0IDI1NSkiCgojLiBTb21ldGhpbmcgaXMgdmVyeSB3cm9uZy4gb3BpbmRleCBoYXMgdG8gYmUgb25lIG9mIHRoZSBhYm92ZS4KIzogaXAyay1hc20uYzoyNDIKbXNnaWQgInBhcnNlX2FkZHIxNjogaW52YWxpZCBvcGluZGV4LiIKbXNnc3RyICJwYXJzZV9hZGRyMTYgOiBvcGluZGV4IG5vbiB2YWxpZGUuIgoKIzogaXAyay1hc20uYzoyOTYKbXNnaWQgIkJ5dGUgYWRkcmVzcyByZXF1aXJlZC4gLSBtdXN0IGJlIGV2ZW4uIgptc2dzdHIgIkFkcmVzc2UgZCdvY3RldCByZXF1aXNlIC0gZG9pdCDqdHJlIHBhaXJlLiIKCiM6IGlwMmstYXNtLmM6MzA1Cm1zZ2lkICJjZ2VuX3BhcnNlX2FkZHJlc3MgcmV0dXJuZWQgYSBzeW1ib2wuIExpdGVyYWwgcmVxdWlyZWQuIgptc2dzdHIgImNnZW5fcGFyc2VfYWRkcmVzcyBhIHJldG91cm7pIHVuIHN5bWJvbGUuIExpdHTpcmFsIHJlcXVpcy4iCgojOiBpcDJrLWFzbS5jOjM2MAptc2dpZCAicGVyY2VudC1vcGVyYXRvciBvcGVyYW5kIGlzIG5vdCBhIHN5bWJvbCIKbXNnc3RyICJMJ29w6XJhbmRlIGRlIGwnb3DpcmF0ZXVyICUgbidlc3QgcGFzIHVuIHN5bWJvbGUiCgojOiBpcDJrLWFzbS5jOjQxMwptc2dpZCAiQXR0ZW1wdCB0byBmaW5kIGJpdCBpbmRleCBvZiAwIgptc2dzdHIgIlRlbnRhdGl2ZSBkZSByZXDpcmFnZSBkJ3VuIGluZGV4IGRlIGJpdCBkZSAwIgoKIzogaXEyMDAwLWFzbS5jOjExMiBpcTIwMDAtYXNtLmM6MTQyCm1zZ2lkICJpbW1lZGlhdGUgdmFsdWUgY2Fubm90IGJlIHJlZ2lzdGVyIgptc2dzdHIgIkxhIHZhbGV1ciBpbW3pZGlhdGUgbmUgZG9pdCBwYXMg6nRyZSB1biByZWdpc3RyZSIKCiM6IGlxMjAwMC1hc20uYzoxMjMgaXEyMDAwLWFzbS5jOjE1MyBsbTMyLWFzbS5jOjcwCm1zZ2lkICJpbW1lZGlhdGUgdmFsdWUgb3V0IG9mIHJhbmdlIgptc2dzdHIgInZhbGV1ciBpbW3pZGlhdGUgaG9ycyBsaW1pdGVzIgoKIzogaXEyMDAwLWFzbS5jOjE4Mgptc2dpZCAiMjEtYml0IG9mZnNldCBvdXQgb2YgcmFuZ2UiCm1zZ3N0ciAiZOljYWxhZ2UgZGUgMjEgYml0cyBob3JzIGxpbWl0ZXMiCgojOiBsbTMyLWFzbS5jOjE2Ngptc2dpZCAiZXhwZWN0aW5nIGdwIHJlbGF0aXZlIGFkZHJlc3M6IGdwKHN5bWJvbCkiCm1zZ3N0ciAiYWRyZXNzZSByZWxhdGl2ZSBHUCBhdHRlbmR1ZSA6IGdwKHN5bWJvbGUpIgoKIzogbG0zMi1hc20uYzoxOTYKbXNnaWQgImV4cGVjdGluZyBnb3QgcmVsYXRpdmUgYWRkcmVzczogZ290KHN5bWJvbCkiCm1zZ3N0ciAiYWRyZXNzZSByZWxhdGl2ZSBHT1QgYXR0ZW5kdWUgOiBnb3Qoc3ltYm9sZSkiCgojOiBsbTMyLWFzbS5jOjIyNgptc2dpZCAiZXhwZWN0aW5nIGdvdCByZWxhdGl2ZSBhZGRyZXNzOiBnb3RvZmZoaTE2KHN5bWJvbCkiCm1zZ3N0ciAiYWRyZXNzZSByZWxhdGl2ZSBHT1QgYXR0ZW5kdWUgOiBnb3RvZmZoaTE2KHN5bWJvbGUpIgoKIzogbG0zMi1hc20uYzoyNTYKbXNnaWQgImV4cGVjdGluZyBnb3QgcmVsYXRpdmUgYWRkcmVzczogZ290b2ZmbG8xNihzeW1ib2wpIgptc2dzdHIgImFkcmVzc2UgcmVsYXRpdmUgR09UIGF0dGVuZHVlIDogZ290b2ZmbG8xNihzeW1ib2xlKSIKCiM6IG0xMDIwMC1kaXMuYzoxNTggbTEwMzAwLWRpcy5jOjU4MgojLCBjLWZvcm1hdAptc2dpZCAidW5rbm93blx0MHglMDRseCIKbXNnc3RyICJpbmNvbm51XHQweCUwNGx4IgoKIzogbTEwMjAwLWRpcy5jOjMyOAojLCBjLWZvcm1hdAptc2dpZCAidW5rbm93blx0MHglMDJseCIKbXNnc3RyICJpbmNvbm51XHQweCUwMmx4IgoKIzogbTMyYy1hc20uYzoxMTcKbXNnaWQgImltbTo2IGltbWVkaWF0ZSBpcyBvdXQgb2YgcmFuZ2UiCm1zZ3N0ciAidmFsZXVyIGltbelkaWF0ZSBpbW06NiBob3JzIGxpbWl0ZXMiCgojOiBtMzJjLWFzbS5jOjE0NQojLCBjLWZvcm1hdAptc2dpZCAiJWRzcDgoKSB0YWtlcyBhIHN5bWJvbGljIGFkZHJlc3MsIG5vdCBhIG51bWJlciIKbXNnc3RyICIlZHNwOCgpIHByZW5kIHVuZSBhZHJlc3NlIHN5bWJvbGlxdWUsIHBhcyB1biBub21icmUiCgojOiBtMzJjLWFzbS5jOjE1OSBtMzJjLWFzbS5jOjE2MyBtMzJjLWFzbS5jOjI1Mwptc2dpZCAiZHNwOjggaW1tZWRpYXRlIGlzIG91dCBvZiByYW5nZSIKbXNnc3RyICJ2YWxldXIgaW1t6WRpYXRlIGRzcDo4IGhvcnMgbGltaXRlcyIKCiM6IG0zMmMtYXNtLmM6MTg0IG0zMmMtYXNtLmM6MTg4Cm1zZ2lkICJJbW1lZGlhdGUgaXMgb3V0IG9mIHJhbmdlIC04IHRvIDciCm1zZ3N0ciAiVmFsZXVyIGltbelkaWF0ZSBob3JzIGxpbWlzdGVzICgtOCDgIDcpIgoKIzogbTMyYy1hc20uYzoyMDkgbTMyYy1hc20uYzoyMTMKbXNnaWQgIkltbWVkaWF0ZSBpcyBvdXQgb2YgcmFuZ2UgLTcgdG8gOCIKbXNnc3RyICJWYWxldXIgaW1t6WRpYXRlIGhvcnMgbGltaXRlcyAoLTcg4CA4KSIKCiM6IG0zMmMtYXNtLmM6MjgxCiMsIGMtZm9ybWF0Cm1zZ2lkICIlZHNwMTYoKSB0YWtlcyBhIHN5bWJvbGljIGFkZHJlc3MsIG5vdCBhIG51bWJlciIKbXNnc3RyICIlZHNwMTYoKSBwcmVuZCB1bmUgYWRyZXNzZSBzeW1ib2xpcXVlLCBwYXMgdW4gbm9tYnJlIgoKIzogbTMyYy1hc20uYzozMDUgbTMyYy1hc20uYzozMTIgbTMyYy1hc20uYzozNzMKbXNnaWQgImRzcDoxNiBpbW1lZGlhdGUgaXMgb3V0IG9mIHJhbmdlIgptc2dzdHIgInZhbGV1ciBpbW3pZGlhdGUgZHNwOjE2IGhvcnMgbGltaXRlcyIKCiM6IG0zMmMtYXNtLmM6Mzk5Cm1zZ2lkICJkc3A6MjAgaW1tZWRpYXRlIGlzIG91dCBvZiByYW5nZSIKbXNnc3RyICJ2YWxldXIgaW1t6WRpYXRlIGRzcDoyMCBob3JzIGxpbWl0ZXMiCgojOiBtMzJjLWFzbS5jOjQyNSBtMzJjLWFzbS5jOjQ0NQptc2dpZCAiZHNwOjI0IGltbWVkaWF0ZSBpcyBvdXQgb2YgcmFuZ2UiCm1zZ3N0ciAidmFsZXVyIGltbelkaWF0ZSBkc3A6MjQgaG9ycyBsaW1pdGVzIgoKIzogbTMyYy1hc20uYzo0NzgKbXNnaWQgImltbWVkaWF0ZSBpcyBvdXQgb2YgcmFuZ2UgMS0yIgptc2dzdHIgInZhbGV1ciBpbW3pZGlhdGUgaG9ycyBsaW1pdGVzIDEtMiIKCiM6IG0zMmMtYXNtLmM6NDk2Cm1zZ2lkICJpbW1lZGlhdGUgaXMgb3V0IG9mIHJhbmdlIDEtOCIKbXNnc3RyICJ2YWxldXIgaW1t6WRpYXRlIGhvcnMgbGltaXRlcyAxLTgiCgojOiBtMzJjLWFzbS5jOjUxNAptc2dpZCAiaW1tZWRpYXRlIGlzIG91dCBvZiByYW5nZSAwLTciCm1zZ3N0ciAidmFsZXVyIGltbelkaWF0ZSBob3JzIGxpbWl0ZXMgMC03IgoKIzogbTMyYy1hc20uYzo1NTAKbXNnaWQgImltbWVkaWF0ZSBpcyBvdXQgb2YgcmFuZ2UgMi05Igptc2dzdHIgInZhbGV1ciBpbW3pZGlhdGUgaG9ycyBsaW1pdGVzIDItOSIKCiM6IG0zMmMtYXNtLmM6NTY4Cm1zZ2lkICJCaXQgbnVtYmVyIGZvciBpbmRleGluZyBnZW5lcmFsIHJlZ2lzdGVyIGlzIG91dCBvZiByYW5nZSAwLTE1Igptc2dzdHIgIkJpdHMgcG91ciBpbmRleGVyIGxlcyByZWdpc3RyZXMgZ+lu6XJhdXggaG9ycyBsaW1pdGVzICgwLTE1KSIKCiM6IG0zMmMtYXNtLmM6NjA2IG0zMmMtYXNtLmM6NjYyCm1zZ2lkICJiaXQsYmFzZSBpcyBvdXQgb2YgcmFuZ2UiCm1zZ3N0ciAiYml0LGJhc2UgaG9ycyBkZXMgbGltaXRlcyIKCiM6IG0zMmMtYXNtLmM6NjEzIG0zMmMtYXNtLmM6NjE4IG0zMmMtYXNtLmM6NjY2Cm1zZ2lkICJiaXQsYmFzZSBvdXQgb2YgcmFuZ2UgZm9yIHN5bWJvbCIKbXNnc3RyICJiaXQsYmFzZSBob3JzIGRlcyBsaW1pdGVzIHBvdXIgdW4gc3ltYm9sZSIKCiM6IG0zMmMtYXNtLmM6ODAyCm1zZ2lkICJub3QgYSB2YWxpZCByMGwvcjBoIHBhaXIiCm1zZ3N0ciAiY291cGxlIHIwbC9yMGggbm9uIHZhbGlkZSIKCiM6IG0zMmMtYXNtLmM6ODMyCm1zZ2lkICJJbnZhbGlkIHNpemUgc3BlY2lmaWVyIgptc2dzdHIgIlNw6WNpZmlldXIgZGUgdGFpbGxlIG5vbiB2YWxpZGUiCgojOiBtNjhrLWRpcy5jOjEyODEKIywgYy1mb3JtYXQKbXNnaWQgIjxmdW5jdGlvbiBjb2RlICVkPiIKbXNnc3RyICI8Y29kZSBkZSBmb25jdGlvbiAlZD4iCgojOiBtNjhrLWRpcy5jOjE0NDAKIywgYy1mb3JtYXQKbXNnaWQgIjxpbnRlcm5hbCBlcnJvciBpbiBvcGNvZGUgdGFibGU6ICVzICVzPlxuIgptc2dzdHIgIjxlcnJldXIgaW50ZXJuZSBkYW5zIGxhIHRhYmxlIGRlcyBvcGNvZGVzIDogJXMgJXM+XG4iCgojOiBtODhrLWRpcy5jOjY3OQojLCBjLWZvcm1hdAptc2dpZCAiIyA8ZGlzIGVycm9yOiAlMDhseD4iCm1zZ3N0ciAiIyA8ZXJyZXVyIGTpc2Fzc2VtYmxhZ2UgOiAlMDhseD4iCgojOiBtZXAtYXNtLmM6MTI5Cm1zZ2lkICJPbmx5ICR0cCBvciAkMTMgYWxsb3dlZCBmb3IgdGhpcyBvcGNvZGUiCm1zZ3N0ciAiU2V1bHMgJHRwIG91ICQxMyBzb250IGF1dG9yaXPpcyBhdmVjIGNldCBvcGNvZGUiCgojOiBtZXAtYXNtLmM6MTQzCm1zZ2lkICJPbmx5ICRzcCBvciAkMTUgYWxsb3dlZCBmb3IgdGhpcyBvcGNvZGUiCm1zZ3N0ciAiU2V1bHMgJHNwIG91ICQxNSBzb250IGF1dG9yaXPpcyBhdmVjIGNldCBvcGNvZGUiCgojOiBtZXAtYXNtLmM6MzA4IG1lcC1hc20uYzo1MDQKIywgYy1mb3JtYXQKbXNnaWQgImludmFsaWQgJWZ1bmN0aW9uKCkgaGVyZSIKbXNnc3RyICIlZnVuY3Rpb24oKSBub24gdmFsaWRlIGljaSIKCiM6IG1lcC1hc20uYzozMzYKbXNnaWQgIkltbWVkaWF0ZSBpcyBvdXQgb2YgcmFuZ2UgLTMyNzY4IHRvIDMyNzY3Igptc2dzdHIgIlZhbGV1ciBpbW3pZGlhdGUgaG9ycyBsaW1pdGVzICgtMzI3Njgg4CAzMjc2NykiCgojOiBtZXAtYXNtLmM6MzU2Cm1zZ2lkICJJbW1lZGlhdGUgaXMgb3V0IG9mIHJhbmdlIDAgdG8gNjU1MzUiCm1zZ3N0ciAiVmFsZXVyIGltbelkaWF0ZSBob3JzIGxpbWl0ZXMgKDAg4CA2NTUzNSkiCgojOiBtZXAtYXNtLmM6NTQ5IG1lcC1hc20uYzo1NjIKbXNnaWQgIkltbWVkaWF0ZSBpcyBvdXQgb2YgcmFuZ2UgLTUxMiB0byA1MTEiCm1zZ3N0ciAiVmFsZXVyIGltbelkaWF0ZSBob3JzIGxpbWl0ZXMgKC01MTIg4CA1MTEpIgoKIzogbWVwLWFzbS5jOjU1NCBtZXAtYXNtLmM6NTYzCm1zZ2lkICJJbW1lZGlhdGUgaXMgb3V0IG9mIHJhbmdlIC0xMjggdG8gMTI3Igptc2dzdHIgIlZhbGV1ciBpbW3pZGlhdGUgaG9ycyBsaW1pdGVzICgtMTI4IOAgMTI3KSIKCiM6IG1lcC1hc20uYzo1NTgKbXNnaWQgIlZhbHVlIGlzIG5vdCBhbGlnbmVkIGVub3VnaCIKbXNnc3RyICJWYWxldXIgbWFsIGFsaWdu6WUiCgojOiBtaXBzLWRpcy5jOjg0MQptc2dpZCAiIyBpbnRlcm5hbCBlcnJvciwgaW5jb21wbGV0ZSBleHRlbnNpb24gc2VxdWVuY2UgKCspIgptc2dzdHIgIiMgZXJyZXVyIGludGVybmUsIHPpcXVlbmNlIGQnZXh0ZW5zaW9uIGluY29tcGzodGUgKCspIgoKIzogbWlwcy1kaXMuYzo5NzUKIywgYy1mb3JtYXQKbXNnaWQgIiMgaW50ZXJuYWwgZXJyb3IsIHVuZGVmaW5lZCBleHRlbnNpb24gc2VxdWVuY2UgKCslYykiCm1zZ3N0ciAiIyBlcnJldXIgaW50ZXJuZSwgc+lxdWVuY2UgZCdleHRlbnNpb24gaW5k6WZpbmllICgrJWMpIgoKIzogbWlwcy1kaXMuYzoxMzM1CiMsIGMtZm9ybWF0Cm1zZ2lkICIjIGludGVybmFsIGVycm9yLCB1bmRlZmluZWQgbW9kaWZpZXIgKCVjKSIKbXNnc3RyICIjIGVycmV1ciBpbnRlcm5lLCBtb2RpZmljYXRldXIgbm9uIGTpZmluaSAoJWMpIgoKIzogbWlwcy1kaXMuYzoxOTM5CiMsIGMtZm9ybWF0Cm1zZ2lkICIjIGludGVybmFsIGRpc2Fzc2VtYmxlciBlcnJvciwgdW5yZWNvZ25pc2VkIG1vZGlmaWVyICglYykiCm1zZ3N0ciAiIyBlcnJldXIgaW50ZXJuZSBkdSBk6XNhc3NlbWJsZXVyLCBtb2RpZmljYXRldXIgbm9uIHJlY29ubnUgKCVjKSIKCiM6IG1pcHMtZGlzLmM6MjE3NwojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJUaGUgZm9sbG93aW5nIE1JUFMgc3BlY2lmaWMgZGlzYXNzZW1ibGVyIG9wdGlvbnMgYXJlIHN1cHBvcnRlZCBmb3IgdXNlXG4iCiJ3aXRoIHRoZSAtTSBzd2l0Y2ggKG11bHRpcGxlIG9wdGlvbnMgc2hvdWxkIGJlIHNlcGFyYXRlZCBieSBjb21tYXMpOlxuIgptc2dzdHIgIiIKIlxuIgoiTGVzIG9wdGlvbnMgc3DpY2lmaXF1ZXMgTUlQUyBkdSBk6XNhc3NlbWJsZXVyIHNvbnQgc3VwcG9ydOllcyBhdmVjIGwndXRpbGlzYXRpb24gZGVcbiIKImwnb3B0aW9uIC1NIChsZXMgb3B0aW9ucyBtdWx0aXBsZXMgZG9pdmVudCDqdHJlIHPpcGFy6WVzIHBhciBkZXMgdmlyZ3VsZXMpOlxuIgoKIzogbWlwcy1kaXMuYzoyMTgxCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiAgZ3ByLW5hbWVzPUFCSSAgICAgICAgICAgIFByaW50IEdQUiBuYW1lcyBhY2NvcmRpbmcgdG8gIHNwZWNpZmllZCBBQkkuXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWZhdWx0OiBiYXNlZCBvbiBiaW5hcnkgYmVpbmcgZGlzYXNzZW1ibGVkLlxuIgptc2dzdHIgIiIKIlxuIgoiICBncHItbmFtZXM9QUJJICAgICAgICAgICAgQWZmaWNoZXIgbGVzIG5vbXMgR1BSIHNlbG9uIGwnQUJJIHNw6WNpZmnpLlxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFyIGTpZmF1dCA6IGJhc+kgc3VyIGxlIGJpbmFpcmUgZOlzYXNzZW1ibOkuXG4iCgojOiBtaXBzLWRpcy5jOjIxODUKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiICBmcHItbmFtZXM9QUJJICAgICAgICAgICAgUHJpbnQgRlBSIG5hbWVzIGFjY29yZGluZyB0byBzcGVjaWZpZWQgQUJJLlxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdDogbnVtZXJpYy5cbiIKbXNnc3RyICIiCiJcbiIKIiAgZnByLW5hbWVzPUFCSSAgICAgICAgICAgIEFmZmljaGVyIGxlcyBub21zIEZQUiBzZWxvbiBsJ0FCSSBzcOljaWZp6S5cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhciBk6WZhdXQgOiBudW3pcmlxdWUuXG4iCgojOiBtaXBzLWRpcy5jOjIxODkKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiICBjcDAtbmFtZXM9QVJDSCAgICAgICAgICAgUHJpbnQgQ1AwIHJlZ2lzdGVyIG5hbWVzIGFjY29yZGluZyB0b1xuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlY2lmaWVkIGFyY2hpdGVjdHVyZS5cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgIERlZmF1bHQ6IGJhc2VkIG9uIGJpbmFyeSBiZWluZyBkaXNhc3NlbWJsZWQuXG4iCm1zZ3N0ciAiIgoiXG4iCiIgIGNwMC1uYW1lcz1BUkNIICAgICAgICAgICBBZmZpY2hlciBsZXMgbm9tcyBkZXMgcmVnaXN0cmVzIENQMCBzZWxvblxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgbCdhcmNoaXRlY3R1cmUgc3DpY2lmaellLlxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFyIGTpZmF1dCA6IGJhc+kgc3VyIGxlIGJpbmFpcmUgZOlzYXNzZW1ibOkuXG4iCgojOiBtaXBzLWRpcy5jOjIxOTQKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiICBod3ItbmFtZXM9QVJDSCAgICAgICAgICAgUHJpbnQgSFdSIG5hbWVzIGFjY29yZGluZyB0byBzcGVjaWZpZWQgXG4iCiJcdFx0XHQgICBhcmNoaXRlY3R1cmUuXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWZhdWx0OiBiYXNlZCBvbiBiaW5hcnkgYmVpbmcgZGlzYXNzZW1ibGVkLlxuIgptc2dzdHIgIiIKIlxuIgoiICBod3ItbmFtZXM9QVJDSCAgICAgICAgICAgQWZmaWNoZXIgbGVzIG5vbXMgSFdSIHNlbG9uICBcbiIKIlx0XHRcdCAgIGwnYXJjaGl0ZWN0dXJlIHNw6WNpZmnpZS5cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhciBk6WZhdXQgOiBiYXPpIHN1ciBsZSBiaW5haXJlIGTpc2Fzc2VtYmzpLlxuIgoKIzogbWlwcy1kaXMuYzoyMTk5CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiAgcmVnLW5hbWVzPUFCSSAgICAgICAgICAgIFByaW50IEdQUiBhbmQgRlBSIG5hbWVzIGFjY29yZGluZyB0b1xuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlY2lmaWVkIEFCSS5cbiIKbXNnc3RyICIiCiJcbiIKIiAgcmVnLW5hbWVzPUFCSSAgICAgICAgICAgIEFmZmljaGVyIGxlcyBub21zIEdQUiBldCBGUFIgc2Vsb24gbCdBQklcbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNw6WNpZmnpLlxuIgoKIzogbWlwcy1kaXMuYzoyMjAzCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiAgcmVnLW5hbWVzPUFSQ0ggICAgICAgICAgIFByaW50IENQMCByZWdpc3RlciBhbmQgSFdSIG5hbWVzIGFjY29yZGluZyB0b1xuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlY2lmaWVkIGFyY2hpdGVjdHVyZS5cbiIKbXNnc3RyICIiCiJcbiIKIiAgcmVnLW5hbWVzPUFSQ0ggICAgICAgICAgIEFmZmljaGVyIGxlcyBub21zIGRlcyByZWdpc3RyZXMgQ1AwIGV0IEhXUiBzZWxvblxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgbCdhcmNoaXRlY3R1cmUgc3DpY2lmaellLlxuIgoKIzogbWlwcy1kaXMuYzoyMjA3CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiAgRm9yIHRoZSBvcHRpb25zIGFib3ZlLCB0aGUgZm9sbG93aW5nIHZhbHVlcyBhcmUgc3VwcG9ydGVkIGZvciBcIkFCSVwiOlxuIgoiICAgIgptc2dzdHIgIiIKIlxuIgoiICBQb3VyIGxlcyBvcHRpb25zIGNpLWRlc3N1cywgbGVzIHZhbGV1cnMgc3VpdmFudGVzIHNvbnQgc3VwcG9ydOllcyBwb3VyIGwnXCJBQklcIjpcbiIKIiAgICIKCiM6IG1pcHMtZGlzLmM6MjIxMiBtaXBzLWRpcy5jOjIyMjAgbWlwcy1kaXMuYzoyMjIyCiMsIGMtZm9ybWF0Cm1zZ2lkICJcbiIKbXNnc3RyICJcbiIKCiM6IG1pcHMtZGlzLmM6MjIxNAojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiIgIEZvciB0aGUgb3B0aW9ucyBhYm92ZSwgVGhlIGZvbGxvd2luZyB2YWx1ZXMgYXJlIHN1cHBvcnRlZCBmb3IgXCJBUkNIXCI6XG4iCiIgICAiCm1zZ3N0ciAiIgoiXG4iCiIgIFBvdXIgbGVzIG9wdGlvbnMgY2ktZGVzc3VzLCBsZXMgdmFsZXVycyBzdWl2YW50ZXMgc29udCBzdXBwb3J06WVzIHBvdXIgXCJBUkNIXCI6XG4iCiIgICAiCgojOiBtbWl4LWRpcy5jOjM1CiMsIGMtZm9ybWF0Cm1zZ2lkICJCYWQgY2FzZSAlZCAoJXMpIGluICVzOiVkXG4iCm1zZ3N0ciAiQ2FzIGVycm9u6SAlZCAoJXMpIGRhbnMgJXM6JWRcbiIKCiM6IG1taXgtZGlzLmM6NDUKIywgYy1mb3JtYXQKbXNnaWQgIkludGVybmFsOiBOb24tZGVidWdnZWQgY29kZSAodGVzdC1jYXNlIG1pc3NpbmcpOiAlczolZCIKbXNnc3RyICJJbnRlcm5lIDogY29kZSBub24gZOlib2d16SAodGVzdCBtYW5xdWFudCkgOiAlcyA6ICVkIgoKIzogbW1peC1kaXMuYzo1NAptc2dpZCAiKHVua25vd24pIgptc2dzdHIgIihpbmNvbm51KSIKCiM6IG1taXgtZGlzLmM6NTEyCiMsIGMtZm9ybWF0Cm1zZ2lkICIqdW5rbm93biBvcGVyYW5kcyB0eXBlOiAlZCoiCm1zZ3N0ciAiKnR5cGUgZCdvcOlyYW5kZSBpbmNvbm51IDogJWQqIgoKIzogbXNwNDMwLWRpcy5jOjMyOAptc2dpZCAiSWxsZWdhbCBhcyBlbXVsYXRpb24gaW5zdHIiCm1zZ3N0ciAiTm9uIHZhbGFibGUgY29tbWUgaW5zdHIuIGQn6W11bGF0aW9uIgoKIy4gUjIvUjMgYXJlIGlsbGVnYWwgYXMgZGVzdDogbWF5IGJlIGRhdGEgc2VjdGlvbi4KIzogbXNwNDMwLWRpcy5jOjM3OQptc2dpZCAiSWxsZWdhbCBhcyAyLW9wIGluc3RyIgptc2dzdHIgIk5vbiB2YWxhYmxlIGNvbW1lIGluc3RyLiAyLW9wIgoKIzogbXQtYXNtLmM6MTEwIG10LWFzbS5jOjE5MAptc2dpZCAiT3BlcmFuZCBvdXQgb2YgcmFuZ2UuIE11c3QgYmUgYmV0d2VlbiAtMzI3NjggYW5kIDMyNzY3LiIKbXNnc3RyICJPcOlyYW5kZSBob3JzIGxpbWl0ZS4gRG9pdCDqdHJlIGVudHJlIC0zMjc2OCBldCAzMjc2Ny4iCgojOiBtdC1hc20uYzoxNDkKbXNnaWQgIkJpaWlpZyBUcm91YmxlIGluIHBhcnNlX2ltbTE2ISIKbXNnc3RyICJHUk9TIHByb2Js6G1lIGRhbnMgcGFyc2VfaW1tMTYgISIKCiM6IG10LWFzbS5jOjE1Nwptc2dpZCAiVGhlIHBlcmNlbnQtb3BlcmF0b3IncyBvcGVyYW5kIGlzIG5vdCBhIHN5bWJvbCIKbXNnc3RyICJMJ29w6XJhbmRlIGRlIGwnb3DpcmF0ZXVyICUgbidlc3QgcGFzIHVuIHN5bWJvbGUiCgojOiBtdC1hc20uYzozOTUKbXNnaWQgImludmFsaWQgb3BlcmFuZC4gIHR5cGUgbWF5IGhhdmUgdmFsdWVzIDAsMSwyIG9ubHkuIgptc2dzdHIgIm9w6XJhbmRlIG5vbiB2YWxpZGUuIHR5cGUgZG9pdCB2YWxvaXIgMCwxIG91IDIgc2V1bGVtZW50LiIKCiMuIEkgYW5kIFogYXJlIG91dHB1dCBvcGVyYW5kcyBhbmQgY2FuYHQgYmUgaW1tZWRpYXRlCiMuIEEgaXMgYW4gYWRkcmVzcyBhbmQgd2UgY2FuYHQgaGF2ZSB0aGUgYWRkcmVzcyBvZgojLiBhbiBpbW1lZGlhdGUgZWl0aGVyLiBXZSBkb24ndCBrbm93IGhvdyBtdWNoIHRvIGluY3JlYXNlCiMuIGFvZmZzZXRwIGJ5IHNpbmNlIHdoYXRldmVyIGdlbmVyYXRlZCB0aGlzIGlzIGJyb2tlbgojLiBhbnl3YXkhCiM6IG5zMzJrLWRpcy5jOjUzMwojLCBjLWZvcm1hdAptc2dpZCAiJDx1bmRlZmluZWQ+Igptc2dzdHIgIiQ8bm9uIGTpZmluaT4iCgojOiBwcGMtZGlzLmM6MjM0CiMsIGMtZm9ybWF0Cm1zZ2lkICJ3YXJuaW5nOiBpZ25vcmluZyB1bmtub3duIC1NJXMgb3B0aW9uXG4iCm1zZ3N0ciAiYXZlcnRpc3NlbWVudCA6IG9wdGlvbiAtTSVzIGluY29ubnVlIGlnbm9y6WVcbiIKCiM6IHBwYy1kaXMuYzo1MjMKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiVGhlIGZvbGxvd2luZyBQUEMgc3BlY2lmaWMgZGlzYXNzZW1ibGVyIG9wdGlvbnMgYXJlIHN1cHBvcnRlZCBmb3IgdXNlIHdpdGhcbiIKInRoZSAtTSBzd2l0Y2g6XG4iCm1zZ3N0ciAiIgoiXG4iCiJMZXMgb3B0aW9ucyBzcOljaWZpcXVlcyBQUEMgc3VpdmFudGVzIHNvbnQgc3VwcG9ydOllcyBhdmVjIGwndXRpbGlzYXRpb24gZGVcbiIKImwnb3B0aW9uIC1NIDpcbiIKCiM6IHBwYy1vcGMuYzo4NzggcHBjLW9wYy5jOjkwNgptc2dpZCAiaW52YWxpZCBjb25kaXRpb25hbCBvcHRpb24iCm1zZ3N0ciAib3B0aW9uIGNvbmRpdGlvbm5lbGxlIG5vbiB2YWxpZGUiCgojOiBwcGMtb3BjLmM6OTA4Cm1zZ2lkICJhdHRlbXB0IHRvIHNldCB5IGJpdCB3aGVuIHVzaW5nICsgb3IgLSBtb2RpZmllciIKbXNnc3RyICJ0ZW50YXRpdmUgZCdpbml0aWFsaXNhdGlvbiBkdSBiaXQgeSBsb3JzIGRlIGwndXRpbGlzYXRpb24gZHUgbW9kaWZpY2F0ZXVyICsgb3UgLSIKCiM6IHBwYy1vcGMuYzo5NDAKbXNnaWQgImludmFsaWQgbWFzayBmaWVsZCIKbXNnc3RyICJtYXNxdWUgbm9uIHZhbGlkZSIKCiM6IHBwYy1vcGMuYzo5NjYKbXNnaWQgImlnbm9yaW5nIGludmFsaWQgbWZjciBtYXNrIgptc2dzdHIgIm1hc3F1ZSBtZmNyIG5vbiB2YWxpZGUgZXQgaWdub3LpIgoKIzogcHBjLW9wYy5jOjEwMTYgcHBjLW9wYy5jOjEwNTEKbXNnaWQgImlsbGVnYWwgYml0bWFzayIKbXNnc3RyICJtYXNxdWUgZGUgYml0cyBpbGzpZ2FsIgoKIzogcHBjLW9wYy5jOjExNzEKbXNnaWQgImluZGV4IHJlZ2lzdGVyIGluIGxvYWQgcmFuZ2UiCm1zZ3N0ciAiTGUgcmVnaXN0cmUgaW5kZXggbidlc3QgcGFzIGRhbnMgbGEgcGxhZ2UgZGUgY2hhcmdlbWVudCIKCiM6IHBwYy1vcGMuYzoxMTg3Cm1zZ2lkICJzb3VyY2UgYW5kIHRhcmdldCByZWdpc3RlciBvcGVyYW5kcyBtdXN0IGJlIGRpZmZlcmVudCIKbXNnc3RyICJsZXMgb3DpcmFuZGVzIGRlcyByZWdpc3RyZXMgc291cmNlIGV0IGNpYmxlIGRvaXZlbnQg6nRyZSBkaWZm6XJlbnRzIgoKIzogcHBjLW9wYy5jOjEyMDIKbXNnaWQgImludmFsaWQgcmVnaXN0ZXIgb3BlcmFuZCB3aGVuIHVwZGF0aW5nIgptc2dzdHIgIm9w6XJhbmRlIHJlZ2lzdHJlIGludmFsaWRlIGxvcnMgZGUgbGEgbWlzZSDgIGpvdXIiCgojOiBwcGMtb3BjLmM6MTI4MQptc2dpZCAiaW52YWxpZCBzcHJnIG51bWJlciIKbXNnc3RyICJusCBkZSByZWdpc3RyZSBzcOljaWFsIG5vbiB2YWxpZGUiCgojOiBwcGMtb3BjLmM6MTQ1MQptc2dpZCAiaW52YWxpZCBjb25zdGFudCIKbXNnc3RyICJjb25zdGFudGUgbm9uIHZhbGlkZSIKCiM6IHMzOTAtZGlzLmM6MzAxCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIlRoZSBmb2xsb3dpbmcgUy8zOTAgc3BlY2lmaWMgZGlzYXNzZW1ibGVyIG9wdGlvbnMgYXJlIHN1cHBvcnRlZCBmb3IgdXNlXG4iCiJ3aXRoIHRoZSAtTSBzd2l0Y2ggKG11bHRpcGxlIG9wdGlvbnMgc2hvdWxkIGJlIHNlcGFyYXRlZCBieSBjb21tYXMpOlxuIgptc2dzdHIgIiIKIlxuIgoiTGVzIG9wdGlvbnMgc3DpY2lmaXF1ZXMgUy8zOTAgZHUgZOlzYXNzZW1ibGV1ciBzb250IHN1cHBvcnTpZXMgYXZlYyBsJ3V0aWxpc2F0aW9uIGRlXG4iCiJsJ29wdGlvbiAtTSAobGVzIG9wdGlvbnMgbXVsdGlwbGVzIGRvaXZlbnQg6nRyZSBz6XBhcullcyBwYXIgZGVzIHZpcmd1bGVzKTpcbiIKCiM6IHMzOTAtZGlzLmM6MzA1CiMsIGMtZm9ybWF0Cm1zZ2lkICIgIGVzYSAgICAgICAgIERpc2Fzc2VtYmxlIGluIEVTQSBhcmNoaXRlY3R1cmUgbW9kZVxuIgptc2dzdHIgIiAgZXNhICAgICAgICAgROlzYXNzZW1ibGUgZW4gbW9kZSBhcmNoaXRlY3R1cmUgRVNBXG4iCgojOiBzMzkwLWRpcy5jOjMwNgojLCBjLWZvcm1hdAptc2dpZCAiICB6YXJjaCAgICAgICBEaXNhc3NlbWJsZSBpbiB6L0FyY2hpdGVjdHVyZSBtb2RlXG4iCm1zZ3N0ciAiICB6YXJjaCAgICAgICBE6XNhc3NlbWJsZSBlbiBtb2RlIHovQXJjaGl0ZWN0dXJlXG4iCgojOiBzY29yZS1kaXMuYzo2NjIgc2NvcmUtZGlzLmM6ODY5IHNjb3JlLWRpcy5jOjEwMzAgc2NvcmUtZGlzLmM6MTE0NAojOiBzY29yZS1kaXMuYzoxMTUxIHNjb3JlLWRpcy5jOjExNTggc2NvcmU3LWRpcy5jOjY5NCBzY29yZTctZGlzLmM6ODU3Cm1zZ2lkICI8aWxsZWdhbCBpbnN0cnVjdGlvbj4iCm1zZ3N0ciAiPGluc3RydWN0aW9uIGlsbOlnYWxlPiIKCiM6IHNwYXJjLWRpcy5jOjI4MwojLCBjLWZvcm1hdAptc2dpZCAiSW50ZXJuYWwgZXJyb3I6ICBiYWQgc3BhcmMtb3Bjb2RlLmg6IFwiJXNcIiwgJSMuOGx4LCAlIy44bHhcbiIKbXNnc3RyICJFcnJldXIgaW50ZXJuZSA6ICBzcGFyYy1vcGNvZGUuaCBlcnJvbukgOiCrICVzILssICUjLjhseCwgJSMuOGx4XG4iCgojOiBzcGFyYy1kaXMuYzoyOTQKIywgYy1mb3JtYXQKbXNnaWQgIkludGVybmFsIGVycm9yOiBiYWQgc3BhcmMtb3Bjb2RlLmg6IFwiJXNcIiwgJSMuOGx4LCAlIy44bHhcbiIKbXNnc3RyICJFcnJldXIgaW50ZXJuZSA6IHNwYXJjLW9wY29kZS5oIGVycm9u6SA6IKsgJXMguywgJSMuOGx4LCAlIy44bHhcbiIKCiM6IHNwYXJjLWRpcy5jOjM0NAojLCBjLWZvcm1hdAptc2dpZCAiSW50ZXJuYWwgZXJyb3I6IGJhZCBzcGFyYy1vcGNvZGUuaDogXCIlc1wiID09IFwiJXNcIlxuIgptc2dzdHIgIkVycmV1ciBpbnRlcm5lIDogc3BhcmMtb3Bjb2RlLmggZXJyb27pIDogqyAlcyC7ID09IKsgJXMgu1xuIgoKIy4gTWFyayBhcyBub24tdmFsaWQgaW5zdHJ1Y3Rpb24uCiM6IHNwYXJjLWRpcy5jOjEwMTUKbXNnaWQgInVua25vd24iCm1zZ3N0ciAiaW5jb25udSIKCiM6IHY4NTAtZGlzLmM6MzY1CiMsIGMtZm9ybWF0Cm1zZ2lkICJ1bmtub3duIG9wZXJhbmQgc2hpZnQ6ICV4XG4iCm1zZ3N0ciAiZOljYWxhZ2UgZCdvcOlyYW5kZSBpbmNvbm51IDogJXhcbiIKCiM6IHY4NTAtZGlzLmM6Mzc3CiMsIGMtZm9ybWF0Cm1zZ2lkICJ1bmtub3duIHJlZzogJWRcbiIKbXNnc3RyICJyZWdpc3RyZSBpbmNvbm51IDogJWRcbiIKCiMuIFRoZSBmdW5jdGlvbnMgdXNlZCB0byBpbnNlcnQgYW5kIGV4dHJhY3QgY29tcGxpY2F0ZWQgb3BlcmFuZHMuCiMuIE5vdGU6IFRoZXJlIGlzIGEgY29uc3BpcmFjeSBiZXR3ZWVuIHRoZXNlIGZ1bmN0aW9ucyBhbmQKIy4gdjg1MF9pbnNlcnRfb3BlcmFuZCgpIGluIGdhcy9jb25maWcvdGMtdjg1MC5jLiAgRXJyb3IgbWVzc2FnZXMKIy4gY29udGFpbmluZyB0aGUgc3RyaW5nICdvdXQgb2YgcmFuZ2UnIHdpbGwgYmUgaWdub3JlZCB1bmxlc3MgYQojLiBzcGVjaWZpYyBjb21tYW5kIGxpbmUgb3B0aW9uIGlzIGdpdmVuIHRvIEdBUy4KIzogdjg1MC1vcGMuYzo1NQptc2dpZCAiZGlzcGxhY2VtZW50IHZhbHVlIGlzIG5vdCBpbiByYW5nZSBhbmQgaXMgbm90IGFsaWduZWQiCm1zZ3N0ciAiTGEgdmFsZXVyIGRlIGTpcGxhY2VtZW50IGhvcnMgbGltaXRlIGV0IG5vbiBhbGlnbullIgoKIzogdjg1MC1vcGMuYzo1Ngptc2dpZCAiZGlzcGxhY2VtZW50IHZhbHVlIGlzIG91dCBvZiByYW5nZSIKbXNnc3RyICJ2YWxldXIgZGUgZOlwbGFjZW1lbnQgaG9ycyBsaW1pdGUiCgojOiB2ODUwLW9wYy5jOjU3Cm1zZ2lkICJkaXNwbGFjZW1lbnQgdmFsdWUgaXMgbm90IGFsaWduZWQiCm1zZ3N0ciAidmFsZXVyIGRlIGTpcGxhY2VtZW50IG5vbiBhbGlnbullIgoKIzogdjg1MC1vcGMuYzo1OQptc2dpZCAiaW1tZWRpYXRlIHZhbHVlIGlzIG91dCBvZiByYW5nZSIKbXNnc3RyICJ2YWxldXIgaW1t6WRpYXRlIGhvcnMgbGltaXRlIgoKIzogdjg1MC1vcGMuYzo2MAptc2dpZCAiYnJhbmNoIHZhbHVlIG91dCBvZiByYW5nZSIKbXNnc3RyICJ2YWxldXIgZGUgYnJhbmNoZW1lbnQgaG9ycyBsaW1pdGUiCgojOiB2ODUwLW9wYy5jOjYxCm1zZ2lkICJicmFuY2ggdmFsdWUgbm90IGluIHJhbmdlIGFuZCB0byBvZGQgb2Zmc2V0Igptc2dzdHIgInZhbGV1ciBkZSBicmFuY2hlbWVudCBob3JzIGxpbWl0ZSBldCBhdmVjIHVuIGTpY2FsYWdlIGltcGFpciIKCiM6IHY4NTAtb3BjLmM6NjIKbXNnaWQgImJyYW5jaCB0byBvZGQgb2Zmc2V0Igptc2dzdHIgImJyYW5jaGVtZW50IGF2ZWMgdW4gZOljYWxhZ2UgaW1wYWlyIgoKIzogdjg1MC1vcGMuYzo0OTcKbXNnaWQgImludmFsaWQgcmVnaXN0ZXIgZm9yIHN0YWNrIGFkanVzdG1lbnQiCm1zZ3N0ciAicmVnaXN0cmUgbm9uIHZhbGlkZSBwb3VyIGwnYWp1c3RlbWVudCBkZSBsYSBwaWxlIgoKIzogdjg1MC1vcGMuYzo1MTgKbXNnaWQgImludmFsaWQgcmVnaXN0ZXIgbmFtZSIKbXNnc3RyICJub20gZGUgcmVnaXN0cmUgbm9uIHZhbGlkZSIKCiM6IHhjMTZ4LWFzbS5jOjY2Cm1zZ2lkICJNaXNzaW5nICcjJyBwcmVmaXgiCm1zZ3N0ciAiUHLpZml4ZSBtYW5xdWFudCBcIiNcIiIKCiM6IHhjMTZ4LWFzbS5jOjgyCm1zZ2lkICJNaXNzaW5nICcuJyBwcmVmaXgiCm1zZ3N0ciAiUHLpZml4ZSBtYW5xdWFudCBcIi5cIiIKCiM6IHhjMTZ4LWFzbS5jOjk4Cm1zZ2lkICJNaXNzaW5nICdwb2Y6JyBwcmVmaXgiCm1zZ3N0ciAiUHLpZml4ZSBcInBvZjpcIiBtYW5xdWFudCIKCiM6IHhjMTZ4LWFzbS5jOjExNAptc2dpZCAiTWlzc2luZyAncGFnOicgcHJlZml4Igptc2dzdHIgIlBy6WZpeGUgXCJwYWc6XCIgbWFucXVhbnQiCgojOiB4YzE2eC1hc20uYzoxMzAKbXNnaWQgIk1pc3NpbmcgJ3NvZjonIHByZWZpeCIKbXNnc3RyICJQculmaXhlIFwic29mOlwiIG1hbnF1YW50IgoKIzogeGMxNngtYXNtLmM6MTQ2Cm1zZ2lkICJNaXNzaW5nICdzZWc6JyBwcmVmaXgiCm1zZ3N0ciAiUHLpZml4ZSBcInNlZzpcIiBtYW5xdWFudCIKCiM6IHhzdG9ybXkxNi1hc20uYzo3MQptc2dpZCAiQmFkIHJlZ2lzdGVyIGluIHByZWluY3JlbWVudCIKbXNnc3RyICJSZWdpc3RyZSBlcnJvbukgZGFucyB1biBwculpbmNy6W1lbnQiCgojOiB4c3Rvcm15MTYtYXNtLmM6NzYKbXNnaWQgIkJhZCByZWdpc3RlciBpbiBwb3N0aW5jcmVtZW50Igptc2dzdHIgIlJlZ2lzdHJlIGVycm9u6SBkYW5zIHVuIHBvc3RpbmNy6W1lbnQiCgojOiB4c3Rvcm15MTYtYXNtLmM6NzgKbXNnaWQgIkJhZCByZWdpc3RlciBuYW1lIgptc2dzdHIgIk5vbSBlcnJvbukgZGUgcmVnaXN0cmUiCgojOiB4c3Rvcm15MTYtYXNtLmM6ODIKbXNnaWQgIkxhYmVsIGNvbmZsaWN0cyB3aXRoIHJlZ2lzdGVyIG5hbWUiCm1zZ3N0ciAiQ29uZmxpdHMgZCfpdGlxdWV0dGUgYXZlYyBsZSBub20gZGUgcmVnaXN0cmUiCgojOiB4c3Rvcm15MTYtYXNtLmM6ODYKbXNnaWQgIkxhYmVsIGNvbmZsaWN0cyB3aXRoIGBSeCciCm1zZ3N0ciAiQ29uZmxpdCBkJ+l0aXF1ZXR0ZSBhdmVjIKsgUngguyIKCiM6IHhzdG9ybXkxNi1hc20uYzo4OAptc2dpZCAiQmFkIGltbWVkaWF0ZSBleHByZXNzaW9uIgptc2dzdHIgIkV4cHJlc3Npb24gaW1t6WRpYXRlIGVycm9u6WUiCgojOiB4c3Rvcm15MTYtYXNtLmM6MTA5Cm1zZ2lkICJObyByZWxvY2F0aW9uIGZvciBzbWFsbCBpbW1lZGlhdGUiCm1zZ3N0ciAiQXVjdW5lIHJlbG9jYWxpc2F0aW9uIHBvdXIgdW5lIHBldGl0ZSB2YWxldXIgaW1t6WRpYXRlIgoKIzogeHN0b3JteTE2LWFzbS5jOjExOQptc2dpZCAiU21hbGwgb3BlcmFuZCB3YXMgbm90IGFuIGltbWVkaWF0ZSBudW1iZXIiCm1zZ3N0ciAiTGUgcGV0aXQgb3DpcmFuZGUgbifpdGFpdCBwYXMgdW4gbm9tYnJlIGltbelkaWF0IgoKIzogeHN0b3JteTE2LWFzbS5jOjE1Nwptc2dpZCAiT3BlcmFuZCBpcyBub3QgYSBzeW1ib2wiCm1zZ3N0ciAiTCdvcOlyYW5kZSBuJ2VzdCBwYXMgdW4gc3ltYm9sIgoKIzogeHN0b3JteTE2LWFzbS5jOjE2NQptc2dpZCAiU3ludGF4IGVycm9yOiBObyB0cmFpbGluZyAnKSciCm1zZ3N0ciAiRXJyZXVyIGRlIHN5bnRheGUgOiBwYXMgZGUgJyknIGVuIHN1ZmZpeGUiCgojfiBtc2dpZCAiYnJhbmNoIHZhbHVlIG5vdCBpbiByYW5nZSBhbmQgdG8gYW4gb2RkIG9mZnNldCIKI34gbXNnc3RyICJ2YWxldXIgZGUgYnJhbmNoZW1lbnQgaG9ycyBsaW1pdGUgZXQgYXZlYyB1biBk6WNhbGFnZSBpbXBhaXIiCgojfiBtc2dpZCAiaW1tZWRpYXRlIHZhbHVlIG5vdCBpbiByYW5nZSBhbmQgbm90IGV2ZW4iCiN+IG1zZ3N0ciAiTGEgdmFsZXVyIGltbelkaWF0ZSBlc3QgaG9ycyBsaW1pdGUgZXQgbm9uIHBhaXJlIgoKI34gbXNnaWQgImltbWVkaWF0ZSB2YWx1ZSBtdXN0IGJlIGV2ZW4iCiN+IG1zZ3N0ciAiTGEgdmFsZXVyIGltbelkaWF0ZSBkb2l0IOp0cmUgcGFpcmUiCgojfiBtc2dpZCAidW5rbm93blx0MHglMDR4IgojfiBtc2dzdHIgImluY29ubnVcdDB4JTA0eCIKCiN+IG1zZ2lkICJvZmZzZXQgbm90IGEgbXVsdGlwbGUgb2YgMTYiCiN+IG1zZ3N0ciAiZOljYWxhZ2Ugbidlc3QgcGFzIHVuIG11bHRpcGxlIGRlIDE2IgoKI34gbXNnaWQgIm9mZnNldCBub3QgYSBtdWx0aXBsZSBvZiAyIgojfiBtc2dzdHIgImTpY2FsYWdlIG4nZXN0IHBhcyB1biBtdWx0aXBsZSBkZSAyIgoKI34gbXNnaWQgIm9mZnNldCBncmVhdGVyIHRoYW4gNjIiCiN+IG1zZ3N0ciAiZOljYWxhZ2UgcGx1cyBncmFuZCBxdWUgNjIiCgojfiBtc2dpZCAib2Zmc2V0IG5vdCBhIG11bHRpcGxlIG9mIDQiCiN+IG1zZ3N0ciAiZOljYWxhZ2Ugbidlc3QgcGFzIHVuIG11bHRpcGxlIGRlIDQiCgojfiBtc2dpZCAib2Zmc2V0IGdyZWF0ZXIgdGhhbiAxMjQiCiN+IG1zZ3N0ciAiZOljYWxhZ2UgcGx1cyBncmFuZCBxdWUgMTI0IgoKI34gbXNnaWQgIm9mZnNldCBub3QgYSBtdWx0aXBsZSBvZiA4IgojfiBtc2dzdHIgImTpY2FsYWdlIG4nZXN0IHBhcyB1biBtdWx0aXBsZSBkZSA4IgoKI34gbXNnaWQgIm9mZnNldCBncmVhdGVyIHRoYW4gMjQ4IgojfiBtc2dzdHIgImTpY2FsYWdlIHBsdXMgZ3JhbmQgcXVlIDI0OCIKCiN+IG1zZ2lkICJvZmZzZXQgbm90IGJldHdlZW4gLTIwNDggYW5kIDIwNDciCiN+IG1zZ3N0ciAiZOljYWxhZ2Ugbidlc3QgcGFzIGVudHJlIC0yMDQ4IGV0IDIwNDciCgojfiBtc2dpZCAib2Zmc2V0IG5vdCBiZXR3ZWVuIC04MTkyIGFuZCA4MTkxIgojfiBtc2dzdHIgImTpY2FsYWdlIG4nZXN0IHBhcyBlbnRyZSAtODE5MiBldCA4MTkxIgoKI34gbXNnaWQgImlnbm9yaW5nIGxlYXN0IHNpZ25pZmljYW50IGJpdHMgaW4gYnJhbmNoIG9mZnNldCIKI34gbXNnc3RyICJMZXMgZGVybmllcnMgYml0cyBsZXMgbW9pbnMgc2lnbmlmaWNhdGlmcyBzb250IGlnbm9y6XMgZGFucyBsZSBk6WNhbGFnZSBkZSBicmFuY2hlbWVudCIKCiN+IG1zZ2lkICJ2YWx1ZSBvdXQgb2YgcmFuZ2UiCiN+IG1zZ3N0ciAidmFsZXVyIGhvcnMgbGltaXRlIgoKI34gbXNnaWQgInRhcmdldCByZWdpc3RlciBvcGVyYW5kIG11c3QgYmUgZXZlbiIKI34gbXNnc3RyICJvcOlyYW5kZSBkdSByZWdpc3RyZSBjaWJsZSBkb2l0IOp0cmUgcGFpciIKCiN+IG1zZ2lkICJzb3VyY2UgcmVnaXN0ZXIgb3BlcmFuZCBtdXN0IGJlIGV2ZW4iCiN+IG1zZ3N0ciAib3DpcmFuZGUgZHUgcmVnaXN0cmUgc291cmNlIGRvaXQg6nRyZSBwYWlyIgoKI34gbXNnaWQgInVucmVjb2duaXplZCBrZXl3b3JkL3JlZ2lzdGVyIG5hbWUiCiN+IG1zZ3N0ciAibm9tIGRlIG1vdCBjbOkgb3UgZGUgcmVnaXN0cmUgbm9uIHJlY29ubnUiCg==