IyBvcGNvZGVzOiB0cmFuc2xhdGlvbiB0byBCcmF6aWxpYW4gUG9ydHVndWVzZSAocHRfQlIpCiMgQ29weXJpZ2h0IChDKSAyMDAyIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgojIEFsZXhhbmRyZSBGb2xsZSBkZSBNZW5lemVzIDxhZm1lbmV6QHRlcnJhLmNvbS5icj4sIDIwMDIuCiMKbXNnaWQgIiIKbXNnc3RyICIiCiJQcm9qZWN0LUlkLVZlcnNpb246IG9wY29kZXMgMi4xMi45MVxuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMDItMDctMjMgMTU6NTUtMDQwMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogMjAwMi0wNy0yNCAwNDowMC0wMzAwXG4iCiJMYXN0LVRyYW5zbGF0b3I6IEFsZXhhbmRyZSBGb2xsZSBkZSBNZW5lemVzIDxhZm1lbmV6QHRlcnJhLmNvbS5icj5cbiIKIkxhbmd1YWdlLVRlYW06IEJyYXppbGlhbiBQb3J0dWd1ZXNlIDxsZHAtYnJAYmF6YXIuY29uZWN0aXZhLmNvbS5icj5cbiIKIlgtQnVnczogUmVwb3J0IHRyYW5zbGF0aW9uIGVycm9ycyB0byB0aGUgTGFuZ3VhZ2UtVGVhbSBhZGRyZXNzLlxuIgoiTUlNRS1WZXJzaW9uOiAxLjBcbiIKIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1JU08tODg1OS0xXG4iCiJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4LWJpdFxuIgoKIzogYWxwaGEtb3BjLmM6MzM1Cm1zZ2lkICJicmFuY2ggb3BlcmFuZCB1bmFsaWduZWQiCm1zZ3N0ciAib3BlcmFuZG8gZGUgZGVzdmlvIGRlc2FsaW5oYWRvIgoKIzogYWxwaGEtb3BjLmM6MzU4IGFscGhhLW9wYy5jOjM4MAptc2dpZCAianVtcCBoaW50IHVuYWxpZ25lZCIKbXNnc3RyICJkaWNhIGRlIHNhbHRvIGRlc2FsaW5oYWRhIgoKIzogYXJjLWRpcy5jOjUyCm1zZ2lkICJJbGxlZ2FsIGxpbW0gcmVmZXJlbmNlIGluIGxhc3QgaW5zdHJ1Y3Rpb24hXG4iCm1zZ3N0ciAiUmVmZXLqbmNpYSBsaW1tIGlsZWdhbCBuYSD6bHRpbWEgaW5zdHJ15+NvIVxuIgoKIzogYXJtLWRpcy5jOjUwNwptc2dpZCAiPGlsbGVnYWwgcHJlY2lzaW9uPiIKbXNnc3RyICI8cHJlY2lz428gaWxlZ2FsPiIKCiM6IGFybS1kaXMuYzoxMDEwCiMsIGMtZm9ybWF0Cm1zZ2lkICJVbnJlY29nbmlzZWQgcmVnaXN0ZXIgbmFtZSBzZXQ6ICVzXG4iCm1zZ3N0ciAiQ29uanVudG8gZGUgbm9tZXMgZGUgcmVnaXN0cmFkb3IgZGVzY29uaGVjaWRvOiAlc1xuIgoKIzogYXJtLWRpcy5jOjEwMTcKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXNlZCBkaXNhc3NlbWJsZXIgb3B0aW9uOiAlc1xuIgptc2dzdHIgIk9w5+NvIGRvIGRlc21vbnRhZG9yIGRlc2NvbmhlY2lkYTogJXNcbiIKCiM6IGFybS1kaXMuYzoxMTkxCm1zZ2lkICIiCiJcbiIKIlRoZSBmb2xsb3dpbmcgQVJNIHNwZWNpZmljIGRpc2Fzc2VtYmxlciBvcHRpb25zIGFyZSBzdXBwb3J0ZWQgZm9yIHVzZSB3aXRoXG4iCiJ0aGUgLU0gc3dpdGNoOlxuIgptc2dzdHIgIiIKIlxuIgoiQXMgb3Dn9WVzIGRvIGRlc21vbnRhZG9yIGVzcGPtZmljYXMgcGFyYSBBUk0gYSBzZWd1aXIgbuNvIHPjbyBzdXBvcnRhZGFzIHBhcmFcbiIKInVzbyBjb20gYSBvcOfjbyAtTTpcbiIKCiM6IGF2ci1kaXMuYzoxMTggYXZyLWRpcy5jOjEyOAptc2dpZCAidW5kZWZpbmVkIgptc2dzdHIgImluZGVmaW5pZG8iCgojOiBhdnItZGlzLmM6MTgwCm1zZ2lkICJJbnRlcm5hbCBkaXNhc3NlbWJsZXIgZXJyb3IiCm1zZ3N0ciAiRXJybyBpbnRlcm5vIGRvIGRlc21vbnRhZG9yIgoKIzogYXZyLWRpcy5jOjIyOAojLCBjLWZvcm1hdAptc2dpZCAidW5rbm93biBjb25zdHJhaW50IGAlYyciCm1zZ3N0ciAicmVzdHJp5+NvIGAlYycgZGVzY29uaGVjaWRhIgoKIzogY2dlbi1hc20uYzozNDYgZnIzMC1pYmxkLmM6MTk1IGZydi1pYmxkLmM6MTk1IG0zMnItaWJsZC5jOjE5NQojOiBvcGVucmlzYy1pYmxkLmM6MTk1IHhzdG9ybXkxNi1pYmxkLmM6MTk1CiMsIGMtZm9ybWF0Cm1zZ2lkICJvcGVyYW5kIG91dCBvZiByYW5nZSAoJWxkIG5vdCBiZXR3ZWVuICVsZCBhbmQgJWxkKSIKbXNnc3RyICJvcGVyYW5kbyBmb3JhIGRlIGZhaXhhICglbGQgbuNvIGVzdOEgZW50cmUgJWxkIGUgJWxkKSIKCiM6IGNnZW4tYXNtLmM6MzY3CiMsIGMtZm9ybWF0Cm1zZ2lkICJvcGVyYW5kIG91dCBvZiByYW5nZSAoJWx1IG5vdCBiZXR3ZWVuICVsdSBhbmQgJWx1KSIKbXNnc3RyICJvcGVyYW5kbyBmb3JhIGRlIGZhaXhhICglbHUgbuNvIGVzdOEgZW50cmUgJWx1IGUgJWx1KSIKCiM6IGQzMHYtZGlzLmM6MzEyCiMsIGMtZm9ybWF0Cm1zZ2lkICI8dW5rbm93biByZWdpc3RlciAlZD4iCm1zZ3N0ciAiPHJlZ2lzdHJhZG9yICVkIGRlc2NvbmhlY2lkbz4iCgojLiBDYW4ndCBoYXBwZW4uCiM6IGRpcy1idWYuYzo1NwojLCBjLWZvcm1hdAptc2dpZCAiVW5rbm93biBlcnJvciAlZFxuIgptc2dzdHIgIkVycm8gJWQgZGVzY29uaGVjaWRvXG4iCgojOiBkaXMtYnVmLmM6NjIKIywgYy1mb3JtYXQKbXNnaWQgIkFkZHJlc3MgMHgleCBpcyBvdXQgb2YgYm91bmRzLlxuIgptc2dzdHIgIkVuZGVyZedvIDB4JXggZXN04SBmb3JhIGRvcyBsaW1pdGVzLlxuIgoKIzogZnIzMC1hc20uYzozMjMgZnJ2LWFzbS5jOjU5NSBtMzJyLWFzbS5jOjMyNSBvcGVucmlzYy1hc20uYzoyNDQKIzogeHN0b3JteTE2LWFzbS5jOjIzMQojLCBjLWZvcm1hdAptc2dpZCAiVW5yZWNvZ25pemVkIGZpZWxkICVkIHdoaWxlIHBhcnNpbmcuXG4iCm1zZ3N0ciAiQ2FtcG8gJWQgZGVzY29uaGVjaWRvIGR1cmFudGUgYW7hbGlzZS5cbiIKCiM6IGZyMzAtYXNtLmM6MzczIGZydi1hc20uYzo2NDUgbTMyci1hc20uYzozNzUgb3BlbnJpc2MtYXNtLmM6Mjk0CiM6IHhzdG9ybXkxNi1hc20uYzoyODEKbXNnaWQgIm1pc3NpbmcgbW5lbW9uaWMgaW4gc3ludGF4IHN0cmluZyIKbXNnc3RyICJtbmVt9G5pY28gZmFsdGFuZG8gbmEgc3RyaW5nIGRlIHNpbnRheGUiCgojLiBXZSBjb3VsZG4ndCBwYXJzZSBpdC4KIzogZnIzMC1hc20uYzo1MDkgZnIzMC1hc20uYzo1MTMgZnIzMC1hc20uYzo2MDAgZnIzMC1hc20uYzo3MDIgZnJ2LWFzbS5jOjc4MQojOiBmcnYtYXNtLmM6Nzg1IGZydi1hc20uYzo4NzIgZnJ2LWFzbS5jOjk3NCBtMzJyLWFzbS5jOjUxMSBtMzJyLWFzbS5jOjUxNQojOiBtMzJyLWFzbS5jOjYwMiBtMzJyLWFzbS5jOjcwNCBvcGVucmlzYy1hc20uYzo0MzAgb3BlbnJpc2MtYXNtLmM6NDM0CiM6IG9wZW5yaXNjLWFzbS5jOjUyMSBvcGVucmlzYy1hc20uYzo2MjMgeHN0b3JteTE2LWFzbS5jOjQxNwojOiB4c3Rvcm15MTYtYXNtLmM6NDIxIHhzdG9ybXkxNi1hc20uYzo1MDggeHN0b3JteTE2LWFzbS5jOjYxMAptc2dpZCAidW5yZWNvZ25pemVkIGluc3RydWN0aW9uIgptc2dzdHIgImluc3RydefjbyBu428gcmVjb25oZWNpZGEiCgojOiBmcjMwLWFzbS5jOjU1NiBmcnYtYXNtLmM6ODI4IG0zMnItYXNtLmM6NTU4IG9wZW5yaXNjLWFzbS5jOjQ3NwojOiB4c3Rvcm15MTYtYXNtLmM6NDY0CiMsIGMtZm9ybWF0Cm1zZ2lkICJzeW50YXggZXJyb3IgKGV4cGVjdGVkIGNoYXIgYCVjJywgZm91bmQgYCVjJykiCm1zZ3N0ciAiZXJybyBkZSBzaW50YXhlIChlc3BlcmFkbyBjaGFyIGAlYycsIGVuY29udHJhZG8gYCVjJykiCgojOiBmcjMwLWFzbS5jOjU2NiBmcnYtYXNtLmM6ODM4IG0zMnItYXNtLmM6NTY4IG9wZW5yaXNjLWFzbS5jOjQ4NwojOiB4c3Rvcm15MTYtYXNtLmM6NDc0CiMsIGMtZm9ybWF0Cm1zZ2lkICJzeW50YXggZXJyb3IgKGV4cGVjdGVkIGNoYXIgYCVjJywgZm91bmQgZW5kIG9mIGluc3RydWN0aW9uKSIKbXNnc3RyICJlcnJvIGRlIHNpbnRheGUgKGVzcGVyYWRvIGNoYXIgYCVjJywgZW5jb250cmFkbyBmaW0gZGUgaW5zdHJ15+NvKSIKCiM6IGZyMzAtYXNtLmM6NTk0IGZydi1hc20uYzo4NjYgbTMyci1hc20uYzo1OTYgb3BlbnJpc2MtYXNtLmM6NTE1CiM6IHhzdG9ybXkxNi1hc20uYzo1MDIKbXNnaWQgImp1bmsgYXQgZW5kIG9mIGxpbmUiCm1zZ3N0ciAibGl4byBubyBmaW5hbCBkbyBhcnF1aXZvIgoKIzogZnIzMC1hc20uYzo3MDEgZnJ2LWFzbS5jOjk3MyBtMzJyLWFzbS5jOjcwMyBvcGVucmlzYy1hc20uYzo2MjIKIzogeHN0b3JteTE2LWFzbS5jOjYwOQptc2dpZCAidW5yZWNvZ25pemVkIGZvcm0gb2YgaW5zdHJ1Y3Rpb24iCm1zZ3N0ciAiZm9ybWEgZGUgaW5zdHJ15+NvIG7jbyByZWNvbmhlY2lkYSIKCiM6IGZyMzAtYXNtLmM6NzEzIGZydi1hc20uYzo5ODUgbTMyci1hc20uYzo3MTUgb3BlbnJpc2MtYXNtLmM6NjM0CiM6IHhzdG9ybXkxNi1hc20uYzo2MjEKIywgYy1mb3JtYXQKbXNnaWQgImJhZCBpbnN0cnVjdGlvbiBgJS41MHMuLi4nIgptc2dzdHIgImluc3RydefjbyBgJS41MHMuLi4nIGVycmFkYSIKCiM6IGZyMzAtYXNtLmM6NzE2IGZydi1hc20uYzo5ODggbTMyci1hc20uYzo3MTggb3BlbnJpc2MtYXNtLmM6NjM3CiM6IHhzdG9ybXkxNi1hc20uYzo2MjQKIywgYy1mb3JtYXQKbXNnaWQgImJhZCBpbnN0cnVjdGlvbiBgJS41MHMnIgptc2dzdHIgImluc3RydefjbyBgJS41MHMnIGVycmFkYSIKCiMuIERlZmF1bHQgdGV4dCB0byBwcmludCBpZiBhbiBpbnN0cnVjdGlvbiBpc24ndCByZWNvZ25pemVkLgojOiBmcjMwLWRpcy5jOjM5IGZydi1kaXMuYzozOSBtMzJyLWRpcy5jOjM5IG1taXgtZGlzLmM6MjgyIG9wZW5yaXNjLWRpcy5jOjM5CiM6IHhzdG9ybXkxNi1kaXMuYzozOQptc2dpZCAiKnVua25vd24qIgptc2dzdHIgIipkZXNjb25lY2lkYSoiCgojOiBmcjMwLWRpcy5jOjMxOCBmcnYtZGlzLmM6MzYwIG0zMnItZGlzLmM6MjQ5IG9wZW5yaXNjLWRpcy5jOjEzNgojOiB4c3Rvcm15MTYtZGlzLmM6MTY5CiMsIGMtZm9ybWF0Cm1zZ2lkICJVbnJlY29nbml6ZWQgZmllbGQgJWQgd2hpbGUgcHJpbnRpbmcgaW5zbi5cbiIKbXNnc3RyICJDYW1wbyAlZCBu428gcmVjb25oZWNpZG8gZHVyYW50ZSBpbXByZXNz428gZGUgaW5zbi5cbiIKCiM6IGZyMzAtaWJsZC5jOjE2NiBmcnYtaWJsZC5jOjE2NiBtMzJyLWlibGQuYzoxNjYgb3BlbnJpc2MtaWJsZC5jOjE2NgojOiB4c3Rvcm15MTYtaWJsZC5jOjE2NgojLCBjLWZvcm1hdAptc2dpZCAib3BlcmFuZCBvdXQgb2YgcmFuZ2UgKCVsZCBub3QgYmV0d2VlbiAlbGQgYW5kICVsdSkiCm1zZ3N0ciAib3BlcmFuZG8gZm9yYSBkZSBmYWl4YSAoJWxkIG7jbyBlc3ThIGVudHJlICVsZCBlICVsdSkiCgojOiBmcjMwLWlibGQuYzoxNzkgZnJ2LWlibGQuYzoxNzkgbTMyci1pYmxkLmM6MTc5IG9wZW5yaXNjLWlibGQuYzoxNzkKIzogeHN0b3JteTE2LWlibGQuYzoxNzkKIywgYy1mb3JtYXQKbXNnaWQgIm9wZXJhbmQgb3V0IG9mIHJhbmdlICglbHUgbm90IGJldHdlZW4gMCBhbmQgJWx1KSIKbXNnc3RyICJvcGVyYW5kbyBmb3JhIGRlIGZhaXhhICglbHUgbuNvIGVzdOEgZW50cmUgMCBlICVsdSkiCgojOiBmcjMwLWlibGQuYzo3MzAgZnJ2LWlibGQuYzo4MjAgbTMyci1pYmxkLmM6NjU5IG9wZW5yaXNjLWlibGQuYzo2MzMKIzogeHN0b3JteTE2LWlibGQuYzo2NzgKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXplZCBmaWVsZCAlZCB3aGlsZSBidWlsZGluZyBpbnNuLlxuIgptc2dzdHIgIkNhbXBvICVkIG7jbyByZWNvbmhlY2lkbyBkdXJhbnRlIGNvbnN0cnXn428gZGUgaW5zbi5cbiIKCiM6IGZyMzAtaWJsZC5jOjkzNyBmcnYtaWJsZC5jOjExMDMgbTMyci1pYmxkLmM6NzkyIG9wZW5yaXNjLWlibGQuYzo3MzUKIzogeHN0b3JteTE2LWlibGQuYzo4MjYKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXplZCBmaWVsZCAlZCB3aGlsZSBkZWNvZGluZyBpbnNuLlxuIgptc2dzdHIgIkNhbXBvICVkIG7jbyByZWNvbmhlY2lkbyBkdXJhbnRlIGRlY29kaWZpY2Hn428gZGUgaW5zbi5cbiIKCiM6IGZyMzAtaWJsZC5jOjEwODYgZnJ2LWlibGQuYzoxMzQ4IG0zMnItaWJsZC5jOjkwMiBvcGVucmlzYy1pYmxkLmM6ODE1CiM6IHhzdG9ybXkxNi1pYmxkLmM6OTM5CiMsIGMtZm9ybWF0Cm1zZ2lkICJVbnJlY29nbml6ZWQgZmllbGQgJWQgd2hpbGUgZ2V0dGluZyBpbnQgb3BlcmFuZC5cbiIKbXNnc3RyICJDYW1wbyAlZCBu428gcmVjb25oZWNpZG8gYW8gb2J0ZXIgb3BlcmFuZG8gaW50LlxuIgoKIzogZnIzMC1pYmxkLmM6MTIxNSBmcnYtaWJsZC5jOjE1NzMgbTMyci1pYmxkLmM6OTkyIG9wZW5yaXNjLWlibGQuYzo4NzUKIzogeHN0b3JteTE2LWlibGQuYzoxMDMyCiMsIGMtZm9ybWF0Cm1zZ2lkICJVbnJlY29nbml6ZWQgZmllbGQgJWQgd2hpbGUgZ2V0dGluZyB2bWEgb3BlcmFuZC5cbiIKbXNnc3RyICJDYW1wbyAlZCBu428gcmVjb25oZWNpZG8gYW8gb2J0ZXIgb3BlcmFuZG8gdm1hLlxuIgoKIzogZnIzMC1pYmxkLmM6MTM0OSBmcnYtaWJsZC5jOjE4MDcgbTMyci1pYmxkLmM6MTA5MCBvcGVucmlzYy1pYmxkLmM6OTQ0CiM6IHhzdG9ybXkxNi1pYmxkLmM6MTEzNAojLCBjLWZvcm1hdAptc2dpZCAiVW5yZWNvZ25pemVkIGZpZWxkICVkIHdoaWxlIHNldHRpbmcgaW50IG9wZXJhbmQuXG4iCm1zZ3N0ciAiQ2FtcG8gJWQgbuNvIHJlY29uaGVjaWRvIGFvIGRlZmluaXIgb3BlcmFuZG8gaW50LlxuIgoKIzogZnIzMC1pYmxkLmM6MTQ3MSBmcnYtaWJsZC5jOjIwMjkgbTMyci1pYmxkLmM6MTE3NiBvcGVucmlzYy1pYmxkLmM6MTAwMQojOiB4c3Rvcm15MTYtaWJsZC5jOjEyMjQKIywgYy1mb3JtYXQKbXNnaWQgIlVucmVjb2duaXplZCBmaWVsZCAlZCB3aGlsZSBzZXR0aW5nIHZtYSBvcGVyYW5kLlxuIgptc2dzdHIgIkNhbXBvICVkIG7jbyByZWNvbmhlY2lkbyBhbyBkZWZpbmlyIG9wZXJhbmRvIHZtYS5cbiIKCiM6IGg4MzAwLWRpcy5jOjM4NQojLCBjLWZvcm1hdAptc2dpZCAiSG1tbW0gJXgiCm1zZ3N0ciAiSG1tbW0gJXgiCgojOiBoODMwMC1kaXMuYzozOTYKIywgYy1mb3JtYXQKbXNnaWQgIkRvbid0IHVuZGVyc3RhbmQgJXggXG4iCm1zZ3N0ciAiTuNvIGVudGVuZG8gJXggXG4iCgojOiBoODUwMC1kaXMuYzoxNDMKIywgYy1mb3JtYXQKbXNnaWQgImNhbid0IGNvcGUgd2l0aCBpbnNlcnQgJWRcbiIKbXNnc3RyICJpbXBvc3PtdmVsIGxpZGFyIGNvbSBpbnNlcnQgJWRcbiIKCiMuIENvdWxkbid0IHVuZGVyc3RhbmQgYW55dGhpbmcuCiM6IGg4NTAwLWRpcy5jOjM1MAojLCBjLWZvcm1hdAptc2dpZCAiJTAyeFx0XHQqdW5rbm93bioiCm1zZ3N0ciAiJTAyeFx0XHQqZGVzY29uaGVjaWRvKiIKCiM6IGkzODYtZGlzLmM6MTY0OQptc2dpZCAiPGludGVybmFsIGRpc2Fzc2VtYmxlciBlcnJvcj4iCm1zZ3N0ciAiPGVycm8gaW50ZXJubyBkbyBkZXNtb250YWRvcj4iCgojOiBtMTAyMDAtZGlzLmM6MTk5CiMsIGMtZm9ybWF0Cm1zZ2lkICJ1bmtub3duXHQweCUwMngiCm1zZ3N0ciAiZGVzY29uaGVjaWRvXHQweCUwMngiCgojOiBtMTAyMDAtZGlzLmM6MzM5CiMsIGMtZm9ybWF0Cm1zZ2lkICJ1bmtub3duXHQweCUwNGx4Igptc2dzdHIgImRlc2NvbmhlY2lkb1x0MHglMDRseCIKCiM6IG0xMDMwMC1kaXMuYzo2ODUKIywgYy1mb3JtYXQKbXNnaWQgInVua25vd25cdDB4JTA0eCIKbXNnc3RyICJkZXNjb25oZWNpZG9cdDB4JTA0eCIKCiM6IG02OGstZGlzLmM6NDI5CiMsIGMtZm9ybWF0Cm1zZ2lkICI8aW50ZXJuYWwgZXJyb3IgaW4gb3Bjb2RlIHRhYmxlOiAlcyAlcz5cbiIKbXNnc3RyICI8ZXJybyBpbnRlcm5vIG5hIHRhYmVsYSBkZSBj82RpZ29zIGRlIG9wZXJh5+NvOiAlcyAlcz5cbiIKCiM6IG02OGstZGlzLmM6MTAwNwojLCBjLWZvcm1hdAptc2dpZCAiPGZ1bmN0aW9uIGNvZGUgJWQ+Igptc2dzdHIgIjxj82RpZ28gZGUgZnVu5+NvICVkPiIKCiM6IG04OGstZGlzLmM6MjU1CiMsIGMtZm9ybWF0Cm1zZ2lkICIjIDxkaXMgZXJyb3I6ICUwOHg+Igptc2dzdHIgIiMgPGVycm8gZGUgZGVzbW9udGFkb3I6ICUwOHg+IgoKIzogbWlwcy1kaXMuYzozMzcKIywgYy1mb3JtYXQKbXNnaWQgIiMgaW50ZXJuYWwgZXJyb3IsIHVuZGVmaW5lZCBtb2RpZmllciglYykiCm1zZ3N0ciAiIyBlcnJvIGludGVybm8sIG1vZGlmaWNhZG9yICglYykgaW5kZWZpbmlkbyIKCiM6IG1pcHMtZGlzLmM6MTIwOQojLCBjLWZvcm1hdAptc2dpZCAiIyBpbnRlcm5hbCBkaXNhc3NlbWJsZXIgZXJyb3IsIHVucmVjb2duaXNlZCBtb2RpZmllciAoJWMpIgptc2dzdHIgIiMgZXJybyBpbnRlcm5vIGRvIGRlc21vbnRhZG9yLCBtb2RpZmljYWRvciAoJWMpIG7jbyByZWNvbmhlY2lkbyIKCiM6IG1taXgtZGlzLmM6MzQKIywgYy1mb3JtYXQKbXNnaWQgIkJhZCBjYXNlICVkICglcykgaW4gJXM6JWRcbiIKbXNnc3RyICJDYXNlICVkIGVycmFkbyAoJXMpIGVtICVzOiVkXG4iCgojOiBtbWl4LWRpcy5jOjQ0CiMsIGMtZm9ybWF0Cm1zZ2lkICJJbnRlcm5hbDogTm9uLWRlYnVnZ2VkIGNvZGUgKHRlc3QtY2FzZSBtaXNzaW5nKTogJXM6JWQiCm1zZ3N0ciAiSW50ZXJubzogQ/NkaWdvIG7jbyBkZXB1cmFkbyAodGVzdC1jYXNlIGZhbHRhbmRvKTogJXM6JWQiCgojOiBtbWl4LWRpcy5jOjUzCm1zZ2lkICIodW5rbm93bikiCm1zZ3N0ciAiKGRlc2NvbmhlY2lkbykiCgojOiBtbWl4LWRpcy5jOjUxNwojLCBjLWZvcm1hdAptc2dpZCAiKnVua25vd24gb3BlcmFuZHMgdHlwZTogJWQqIgptc2dzdHIgIip0aXBvIGRlIG9wZXJhbmRvcyBkZXNjb25oZWNpZG9zOiAlZCoiCgojLiBJIGFuZCBaIGFyZSBvdXRwdXQgb3BlcmFuZHMgYW5kIGNhbmB0IGJlIGltbWVkaWF0ZQojLiAqIEEgaXMgYW4gYWRkcmVzcyBhbmQgd2UgY2FuYHQgaGF2ZSB0aGUgYWRkcmVzcyBvZgojLiAqIGFuIGltbWVkaWF0ZSBlaXRoZXIuIFdlIGRvbid0IGtub3cgaG93IG11Y2ggdG8gaW5jcmVhc2UKIy4gKiBhb2Zmc2V0cCBieSBzaW5jZSB3aGF0ZXZlciBnZW5lcmF0ZWQgdGhpcyBpcyBicm9rZW4KIy4gKiBhbnl3YXkhCiMuCiM6IG5zMzJrLWRpcy5jOjYyOAptc2dpZCAiJDx1bmRlZmluZWQ+Igptc2dzdHIgIiQ8aW5kZWZpbmlkbz4iCgojOiBwcGMtb3BjLmM6Nzc3IHBwYy1vcGMuYzo4MTAKbXNnaWQgImludmFsaWQgY29uZGl0aW9uYWwgb3B0aW9uIgptc2dzdHIgIm9w5+NvIGNvbmRpY2lvbmFsIGluduFsaWRhIgoKIzogcHBjLW9wYy5jOjgxMgptc2dpZCAiYXR0ZW1wdCB0byBzZXQgeSBiaXQgd2hlbiB1c2luZyArIG9yIC0gbW9kaWZpZXIiCm1zZ3N0ciAidGVudGF0aXZhIGRlIHNldGFyIGJpdCB5IGFvIHVzYXIgbW9kaWZpY2Fkb3IgKyBvdSAtIgoKIzogcHBjLW9wYy5jOjg0NCBwcGMtb3BjLmM6ODk2Cm1zZ2lkICJvZmZzZXQgbm90IGEgbXVsdGlwbGUgb2YgNCIKbXNnc3RyICJkZXNsb2NhbWVudG8gbuNvIOkgdW0gbfpsdGlwbG8gZGUgNCIKCiM6IHBwYy1vcGMuYzo4NjkKbXNnaWQgIm9mZnNldCBub3QgYmV0d2VlbiAtMjA0OCBhbmQgMjA0NyIKbXNnc3RyICJkZXNsb2NhbWVudG8gbuNvIGVzdOEgZW50cmUgLTIwNDggYW5kIDIwNDciCgojOiBwcGMtb3BjLmM6ODk0Cm1zZ2lkICJvZmZzZXQgbm90IGJldHdlZW4gLTgxOTIgYW5kIDgxOTEiCm1zZ3N0ciAiZGVzbG9jYW1lbnRvIG7jbyBlc3ThIGVudHJlIC04MTkyIGFuZCA4MTkxIgoKIzogcHBjLW9wYy5jOjkyMgptc2dpZCAiaWdub3JpbmcgbGVhc3Qgc2lnbmlmaWNhbnQgYml0cyBpbiBicmFuY2ggb2Zmc2V0Igptc2dzdHIgImlnbm9yYW5kbyBvcyBiaXRzIG1lbm9zIHNpZ25pZmljYXRpb3ZzIG5vIGRlc2xvY2FtZW50byBkbyBkZXN2aW8iCgojOiBwcGMtb3BjLmM6OTU2IHBwYy1vcGMuYzo5OTMKbXNnaWQgImlsbGVnYWwgYml0bWFzayIKbXNnc3RyICJt4XNjYXJhIGRlIGJpdHMgaWxlZ2FsIgoKIzogcHBjLW9wYy5jOjEwNjYKbXNnaWQgInZhbHVlIG91dCBvZiByYW5nZSIKbXNnc3RyICJ2YWxvciBmb3JhIGRlIGZhaXhhIgoKIzogcHBjLW9wYy5jOjExNDIKbXNnaWQgImluZGV4IHJlZ2lzdGVyIGluIGxvYWQgcmFuZ2UiCm1zZ3N0ciAicmVnaXN0cmFkb3IgZGUg7W5kaWNlIG5hIGZhaXhhIGRlIGNhcnJlZ2FtZW50byIKCiM6IHBwYy1vcGMuYzoxMTU4Cm1zZ2lkICJpbnZhbGlkIHJlZ2lzdGVyIG9wZXJhbmQgd2hlbiB1cGRhdGluZyIKbXNnc3RyICJvcGVyYW5kbyBkZSByZWdpc3RybyBpbnbhbGlkbyBkdXJhbnRlIGF0dWFsaXph5+NvIgoKIy4gTWFyayBhcyBub24tdmFsaWQgaW5zdHJ1Y3Rpb24KIzogc3BhcmMtZGlzLmM6NzUwCm1zZ2lkICJ1bmtub3duIgptc2dzdHIgImRlc2NvbmhlY2lkbyIKCiM6IHNwYXJjLWRpcy5jOjgyNQojLCBjLWZvcm1hdAptc2dpZCAiSW50ZXJuYWwgZXJyb3I6ICBiYWQgc3BhcmMtb3Bjb2RlLmg6IFwiJXNcIiwgJSMuOGx4LCAlIy44bHhcbiIKbXNnc3RyICJFcnJvIGludGVybm86ICBzcGFyYy1vcGNvZGUuaCBlcnJhZG86IFwiJXNcIiwgJSMuOGx4LCAlIy44bHhcbiIKCiM6IHNwYXJjLWRpcy5jOjgzNgojLCBjLWZvcm1hdAptc2dpZCAiSW50ZXJuYWwgZXJyb3I6IGJhZCBzcGFyYy1vcGNvZGUuaDogXCIlc1wiLCAlIy44bHgsICUjLjhseFxuIgptc2dzdHIgIkVycm8gaW50ZXJubzogc3BhcmMtb3Bjb2RlLmggZXJyYWRvOiBcIiVzXCIsICUjLjhseCwgJSMuOGx4XG4iCgojOiBzcGFyYy1kaXMuYzo4ODUKIywgYy1mb3JtYXQKbXNnaWQgIkludGVybmFsIGVycm9yOiBiYWQgc3BhcmMtb3Bjb2RlLmg6IFwiJXNcIiA9PSBcIiVzXCJcbiIKbXNnc3RyICJFcnJvIGludGVybm86IHNwYXJjLW9wY29kZS5oIGVycmFkbzogXCIlc1wiID09IFwiJXNcIlxuIgoKIzogdjg1MC1kaXMuYzoyMjQKIywgYy1mb3JtYXQKbXNnaWQgInVua25vd24gb3BlcmFuZCBzaGlmdDogJXhcbiIKbXNnc3RyICJkZXNsb2NhbWVudG8gZGUgb3BlcmFuZG8gZGVzY29uaGVjaWRvOiAleFxuIgoKIzogdjg1MC1kaXMuYzoyMzYKIywgYy1mb3JtYXQKbXNnaWQgInVua25vd24gcG9wIHJlZzogJWRcbiIKbXNnc3RyICJyZWdpc3RyYWRvciBwb3AgZGVzY29uaGVjaWRvOiAlZFxuIgoKIy4gVGhlIGZ1bmN0aW9ucyB1c2VkIHRvIGluc2VydCBhbmQgZXh0cmFjdCBjb21wbGljYXRlZCBvcGVyYW5kcy4KIy4gTm90ZTogVGhlcmUgaXMgYSBjb25zcGlyYWN5IGJldHdlZW4gdGhlc2UgZnVuY3Rpb25zIGFuZAojLiB2ODUwX2luc2VydF9vcGVyYW5kKCkgaW4gZ2FzL2NvbmZpZy90Yy12ODUwLmMuICBFcnJvciBtZXNzYWdlcwojLiBjb250YWluaW5nIHRoZSBzdHJpbmcgJ291dCBvZiByYW5nZScgd2lsbCBiZSBpZ25vcmVkIHVubGVzcyBhCiMuIHNwZWNpZmljIGNvbW1hbmQgbGluZSBvcHRpb24gaXMgZ2l2ZW4gdG8gR0FTLgojOiB2ODUwLW9wYy5jOjY4Cm1zZ2lkICJkaXNwbGFjZW1lbnQgdmFsdWUgaXMgbm90IGluIHJhbmdlIGFuZCBpcyBub3QgYWxpZ25lZCIKbXNnc3RyICJ2YWxvciBkbyBkZXNsb2NhbWVudG8gZXN04SBmb3JhIGRhIGZhaXhhIGUgbuNvIGVzdOEgYWxpbmhhZG8iCgojOiB2ODUwLW9wYy5jOjY5Cm1zZ2lkICJkaXNwbGFjZW1lbnQgdmFsdWUgaXMgb3V0IG9mIHJhbmdlIgptc2dzdHIgInZhbG9yIGRvIGRlc2xvY2FtZW50byBlc3ThIGZvcmEgZGEgZmFpeGEiCgojOiB2ODUwLW9wYy5jOjcwCm1zZ2lkICJkaXNwbGFjZW1lbnQgdmFsdWUgaXMgbm90IGFsaWduZWQiCm1zZ3N0ciAidmFsb3IgZG8gZGVzbG9jYW1lbnRvIG7jbyBlc3ThIGFsaW5oYWRvIgoKIzogdjg1MC1vcGMuYzo3Mgptc2dpZCAiaW1tZWRpYXRlIHZhbHVlIGlzIG91dCBvZiByYW5nZSIKbXNnc3RyICJ2YWxvciBpbWVkaWF0byBlc3ThIGZvcmEgZGEgZmFpeGEiCgojOiB2ODUwLW9wYy5jOjgzCm1zZ2lkICJicmFuY2ggdmFsdWUgbm90IGluIHJhbmdlIGFuZCB0byBvZGQgb2Zmc2V0Igptc2dzdHIgInZhbG9yIGRvIGRlc3ZpbyBmb3JhIGRhIGZhaXhhIGUgcGFyYSBkZXNsb2NhbWVudG8g7W1wYXIiCgojOiB2ODUwLW9wYy5jOjg1IHY4NTAtb3BjLmM6MTE3Cm1zZ2lkICJicmFuY2ggdmFsdWUgb3V0IG9mIHJhbmdlIgptc2dzdHIgInZhbG9yIGRvIGRlc3ZpbyBmb3JhIGRhIGZhaXhhIgoKIzogdjg1MC1vcGMuYzo4OCB2ODUwLW9wYy5jOjEyMAptc2dpZCAiYnJhbmNoIHRvIG9kZCBvZmZzZXQiCm1zZ3N0ciAiZGVzdmlvIHBhcmEgdW0gZGVzbG9jYW1lbnRvIO1tcGFyIgoKIzogdjg1MC1vcGMuYzoxMTUKbXNnaWQgImJyYW5jaCB2YWx1ZSBub3QgaW4gcmFuZ2UgYW5kIHRvIGFuIG9kZCBvZmZzZXQiCm1zZ3N0ciAidmFsb3IgZG8gZGVzdmlvIGZvcmEgZGEgZmFpeGEgZSBwYXJhIHVtIGRlc2xvY2FtZW50byDtbXBhciIKCiM6IHY4NTAtb3BjLmM6MzQ2Cm1zZ2lkICJpbnZhbGlkIHJlZ2lzdGVyIGZvciBzdGFjayBhZGp1c3RtZW50Igptc2dzdHIgInJlZ2lzdHJhZG9yIGluduFsaWRvIHBhcmEgYWp1c3RlIGRhIHBpbGhhIgoKIzogdjg1MC1vcGMuYzozNzAKbXNnaWQgImltbWVkaWF0ZSB2YWx1ZSBub3QgaW4gcmFuZ2UgYW5kIG5vdCBldmVuIgptc2dzdHIgInZhbG9yIGltZWRpYXRvIGZvcmEgZGEgZmFpeGEgZSBu428g6SBwYXIiCgojOiB2ODUwLW9wYy5jOjM3NQptc2dpZCAiaW1tZWRpYXRlIHZhbHVlIG11c3QgYmUgZXZlbiIKbXNnc3RyICJvIHZhbG9yIGltZWRpYXRvIGRldmUgc2VyIHBhciIKCiM6IHhzdG9ybXkxNi1hc20uYzo3NAptc2dpZCAiQmFkIHJlZ2lzdGVyIGluIHByZWluY3JlbWVudCIKbXNnc3RyICJSZWdpc3RyYWRvciBlcnJhZG8gbm8gcHLpLWluY3JlbWVudG8iCgojOiB4c3Rvcm15MTYtYXNtLmM6NzkKbXNnaWQgIkJhZCByZWdpc3RlciBpbiBwb3N0aW5jcmVtZW50Igptc2dzdHIgIlJlZ2lzdHJhZG9yIGVycmFkbyBubyBw83MtaW5jcmVtZW50byIKCiM6IHhzdG9ybXkxNi1hc20uYzo4MQptc2dpZCAiQmFkIHJlZ2lzdGVyIG5hbWUiCm1zZ3N0ciAiTm9tZSBkZSByZWdpc3RyYWRvciBlcnJhZG8iCgojOiB4c3Rvcm15MTYtYXNtLmM6ODUKbXNnaWQgIkxhYmVsIGNvbmZsaWN0cyB3aXRoIHJlZ2lzdGVyIG5hbWUiCm1zZ3N0ciAiTyBy83R1bG8gY29uZmxpdGEgY29tIG5vbWUgZGUgcmVnaXN0cmFkb3IiCgojOiB4c3Rvcm15MTYtYXNtLmM6ODkKbXNnaWQgIkxhYmVsIGNvbmZsaWN0cyB3aXRoIGBSeCciCm1zZ3N0ciAiTyBy83R1bG8gY29uZmxpdGEgY29tIGBSeCciCgojOiB4c3Rvcm15MTYtYXNtLmM6OTEKbXNnaWQgIkJhZCBpbW1lZGlhdGUgZXhwcmVzc2lvbiIKbXNnc3RyICJFeHByZXNz428gaW1lZGlhdGEgZXJyYWRhIgoKIzogeHN0b3JteTE2LWFzbS5jOjEyMAptc2dpZCAiU21hbGwgb3BlcmFuZCB3YXMgbm90IGFuIGltbWVkaWF0ZSBudW1iZXIiCm1zZ3N0ciAiTyBvcGVyYW5kbyBwZXF1ZW5vIG7jbyBlcmEgdW0gbvptZXJvIGltZWRpYXRvIgo=