LyoKICogQ29weXJpZ2h0IDIwMDUgSmFjZWsgQ2FiYW4KICogQ29weXJpZ2h0IDIwMDUgWXVuU29uZyBId2FuZwogKgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EKICovCgojaW5jbHVkZSAic2hkb2NsYy5oIgoKTEFOR1VBR0UgTEFOR19LT1JFQU4sIFNVQkxBTkdfREVGQVVMVAoKU1RSSU5HVEFCTEUgRElTQ0FSREFCTEUKewogICAgSURTX01FU1NBR0VfQk9YX1RJVExFLCAiV2luZSDAzsXNs90gRXhwbG9yZXIiCn0KClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCnsKICAgIElEU19QUklOVF9IRUFERVJfVEVNUExBVEUgIiZ3JmJQYWdlICZwIiAvKiBGSVhNRTogc2hvdWxkIGJlICImdyZiUGFnZSAmcCBvZiAmUCIgKi8KICAgIElEU19QUklOVF9GT09URVJfVEVNUExBVEUgIiZ1JmImZCIKfQoKSURSX0JST1dTRV9DT05URVhUX01FTlUgTUVOVQp7CiAgICBQT1BVUCAiseK6uyIKICAgIHsKICAgICAgICBNRU5VSVRFTSAitdq3zigmQikiLCAgICAgICAgICAgICAgICBJRE1fR09CQUNLV0FSRAogICAgICAgIE1FTlVJVEVNICK+1cC4t84oJk8pIiwgICAgICAgICAgICAgICBJRE1fR09GT1JXQVJECiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIrnosObAuLfOIMD6wOUoJlMpLi4uIiwgSURNX1NBVkVCQUNLR1JPVU5ECiAgICAgICAgTUVOVUlURU0gIrnosObAuLfOILyzwaQoJkcpIiwgICAgIElETV9TRVRXQUxMUEFQRVIKICAgICAgICBNRU5VSVRFTSAiueiw5sC4t84gurm75ygmQykiLCAgICAgICBJRE1fQ09QWUJBQ0tHUk9VTkQKICAgICAgICBNRU5VSVRFTSAitaW9usWpxb4gvsbAzMXbwLi3ziC8s8GkKCZEKSIsICAgSURNX1NFVERFU0tUT1BJVEVNCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIrjwtc4gvLHFwygmQSkiLCAgICAgICAgICAgIElETV9TRUxFQ1RBTEwKICAgICAgICBNRU5VSVRFTSAiutm/qbPWseIoJlApIiwgICAgICAgICAgICAgICAgIElETV9QQVNURQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICK52bfOsKGx4iC4uLXpseIoJlQpIiwgICAgICAgSURNX0NSRUFURVNIT1JUQ1VUCiAgICAgICAgTUVOVUlURU0gIsHxsNzDo7Hiv6EgtPXHz7HiKCZGKSIsICAgICBJRE1fQURERkFWT1JJVEVTCiAgICAgICAgTUVOVUlURU0gIrzSvbogurix4igmVikiLCAgICAgICAgICAgSURNX1ZJRVdTT1VSQ0UKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiwM7E2rX5KCZFKSIsICAgICAgICAgICAgICBJRE1fTEFOR1VBR0UKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiwM684igmSSkiLCAgICAgICAgICAgICAgICAgSURNX1BSSU5UCiAgICAgICAgTUVOVUlURU0gIrTZvcMgwNCx4igmUikiLCAgICAgICAgICAgICAgIF9JRE1fUkVGUkVTSAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICK/ybzHKCZQKSIsICAgICAgICAgICAgSURNX1BST1BFUlRJRVMKICAgIH0KCiAgICBQT1BVUCAiwMy5zMH2IgogICAgewogICAgICAgIE1FTlVJVEVNICK4tcWpIL+tseIoJk8pIiwgICAgICAgICAgICAgICBJRE1fRk9MTE9XTElOS0MKICAgICAgICBNRU5VSVRFTSAiu/Ugw6K/oSC4tcWpIL+tseIoJk4pIiwgSURNX0ZPTExPV0xJTktOCiAgICAgICAgTUVOVUlURU0gIrTZuKUgwMy4p8C4t84gwPrA5SgmQSkuLi4iLCAgICAgICBJRE1fU0FWRVRBUkdFVAogICAgICAgIE1FTlVJVEVNICLFuLDZIMD6wOUoJlApIiwgICAgICAgICAgICBJRE1fUFJJTlRUQVJHRVQKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAisde4siC6uLHiKCZIKSIsICAgICAgICAgICAgSURNX1NIT1dQSUNUVVJFCiAgICAgICAgTUVOVUlURU0gIrHXuLIgtNm4pSDAzLinwLi3ziDA+sDlKCZTKS4uLiIsICAgICAgSURNX1NBVkVQSUNUVVJFCiAgICAgICAgTUVOVUlURU0gIrHXuLLAuyDAzLjewM+3zigmRSkuLi4iLCAgICAgICBJRE1fTVBfRU1BSUxQSUNUVVJFCiAgICAgICAgTUVOVUlURU0gIrHXuLIgwM684igmSSkuLi4iLCAgICAgICAgSURNX01QX1BSSU5UUElDVFVSRQogICAgICAgIE1FTlVJVEVNICKzuyCx17iywLi3ziCwobHiKCZHKSIsICAgICAgIElETV9NUF9NWVBJQ1MKICAgICAgICBNRU5VSVRFTSAiueiw5sC4t84gvLPBpCgmRykiLCAgICAgICBJRE1fU0VUV0FMTFBBUEVSCiAgICAgICAgTUVOVUlURU0gIrWlvbrFqcW+IL7GwMzF28C4t84gvLPBpCgmRCkuLi4iLCAgSURNX1NFVERFU0tUT1BJVEVNCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIsDftvOzu7HiKCZUKSIsICAgICAgICAgICAgICAgICAgICAgSURNX0NVVAogICAgICAgIE1FTlVJVEVNICK6ubvnKCZDKSIsICAgICAgICAgICAgICAgICAgICBJRE1fQ09QWQogICAgICAgIE1FTlVJVEVNICK52bfOILChseIgurm75ygmVCkiLCAgICAgICAgICAgSURNX0NPUFlTSE9SVENVVAogICAgICAgIE1FTlVJVEVNICK62b+ps9ax4igmUCkiLCAgICAgICAgICAgICAgICAgICBJRE1fUEFTVEUKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiwfGw3CDDo7Hiv6Egw9+woSgmRikuLi4iLCAgICAgSURNX0FEREZBVk9SSVRFUwogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICK807y6KCZSKSIsICAgICAgICAgICAgICBJRE1fUFJPUEVSVElFUwogICAgfQoKICAgIFBPUFVQICLBpr7uIgogICAgewogICAgICAgIE1FTlVJVEVNICK1x7W5uK6x4igmVSkiLCAgICAgICBJRE1fVU5ETwogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLA37bzs7ux4igmVCkiLCAgICAgICAgSURNX0NVVAogICAgICAgIE1FTlVJVEVNICK6ubvnKCZDKSIsICAgICAgIElETV9DT1BZCiAgICAgICAgTUVOVUlURU0gIrrZv6mz1rHiKCZQKSIsICAgICAgSURNX1BBU1RFCiAgICAgICAgTUVOVUlURU0gIsH2v+yx4igmRCkiLCAgICAgSURNX0RFTEVURQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICK48LXOILyxxcMoJkEpIiwgSURNX1NFTEVDVEFMTAogICAgfQoKICAgIFBPUFVQICLHpSIKICAgIHsKICAgICAgICBQT1BVUCAivLHFwygmUykiCiAgICAgICAgewogICAgICAgICAgICBNRU5VSVRFTSAixK0oJkMpIiwgICAgICAgICBJRE1fQ0VMTFNFTEVDVAogICAgICAgICAgICBNRU5VSVRFTSAisKG3zsHZKCZSKSIsICAgICAgICAgIElETV9ST1dTRUxFQ1QKICAgICAgICAgICAgTUVOVUlURU0gIry8t87B2SgmQykiLCAgICAgICBJRE1fQ09MVU1OU0VMRUNUCiAgICAgICAgICAgIE1FTlVJVEVNICLHpSgmVCkiLCAgICAgICAgSURNX1RBQkxFU0VMRUNUCiAgICAgICAgfQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICKwobfOwdkgvNO8uigmQykiLCAgSURNX0NFTExQUk9QRVJUSUVTCiAgICAgICAgTUVOVUlURU0gIselILzTvLooJlQpIiwgSURNX1RBQkxFUFJPUEVSVElFUwogICAgfQoKICAgIFBPUFVQICIxRFNpdGUgvLHFwyIKICAgIHsKICAgICAgICBNRU5VSVRFTSAiwN+287O7seIoJlQpIiwgICAgICAgIElETV9DVVQKICAgICAgICBNRU5VSVRFTSAiurm75ygmQykiLCAgICAgICBJRE1fQ09QWQogICAgICAgIE1FTlVJVEVNICK62b+ps9ax4iIsICAgICAgIElETV9QQVNURQogICAgICAgIE1FTlVJVEVNICK48LXOILyxxcMoJkEpIiwgSURNX1NFTEVDVEFMTAogICAgICAgIE1FTlVJVEVNICLAzrziKCZQKSIsICAgICAgSURNX1BSSU5UCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICB9CgogICAgUE9QVVAgIrTpIgogICAgewogICAgICAgIE1FTlVJVEVNICK/rbHiKCZPKSIsICAgICAgICAgICAgICAgIElETV9GT0xMT1dMSU5LQwogICAgICAgIE1FTlVJVEVNICK79SDDor+hIL+tseIoJk4pIiwgIElETV9GT0xMT1dMSU5LTgogICAgICAgIE1FTlVJVEVNICK02bilIMDMuKfAuLfOIMD6wOUoJkEpLi4uIiwgICBJRE1fU0FWRVRBUkdFVAogICAgICAgIE1FTlVJVEVNICK067vzIMDOvOIoJlApIiwgICAgICAgIElETV9QUklOVFRBUkdFVAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLA37bzs7ux4iIsICAgICAgICAgICAgICAgICAgSURNX0NVVAogICAgICAgIE1FTlVJVEVNICK6ubvnKCZDKSIsICAgICAgICAgICAgICAgIElETV9DT1BZCiAgICAgICAgTUVOVUlURU0gIrnZt86wobHiILq5u+coJlQpIiwgICAgICAgSURNX0NPUFlTSE9SVENVVAogICAgICAgIE1FTlVJVEVNICK62b+ps9ax4igmUCkiLCAgICAgICAgICAgICAgIElETV9QQVNURQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLB8bDcw6Ox4r+hILT1x8+x4igmRikuLi4iLCBJRE1fQURERkFWT1JJVEVTCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIrzTvLooJlIpIiwgICAgICAgICAgSURNX1BST1BFUlRJRVMKICAgIH0KCiAgICBQT1BVUCAivsu89iC++LTCILO7v+siCiAgICB7CiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICB9CgogICAgUE9QVVAgIkRZTlNSQyCx17iyIgogICAgewogICAgICAgIE1FTlVJVEVNICK4tcWpIL+tseIoJk8pIiwgICAgICAgICAgICAgICBJRE1fRk9MTE9XTElOS0MKICAgICAgICBNRU5VSVRFTSAiu/Ugw6K/oSC4tcWpIL+tseIoJk4pIiwgSURNX0ZPTExPV0xJTktOCiAgICAgICAgTUVOVUlURU0gIrTZuKUgwMy4p8C4t84gwPrA5SgmQSkuLi4iLCAgICAgICBJRE1fU0FWRVRBUkdFVAogICAgICAgIE1FTlVJVEVNICK067vzIMDOvOIoJlApIiwgICAgICAgICAgICBJRE1fUFJJTlRUQVJHRVQKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAisde4siC6uLHiKCZIKSIsICAgICAgICAgICAgSURNX1NIT1dQSUNUVVJFCiAgICAgICAgTUVOVUlURU0gIrrxtfC/wCC02bilIMDMuKfAuLfOIMD6wOUoJlMpLi4uIiwgICAgICAgIElETV9TQVZFUElDVFVSRQogICAgICAgIE1FTlVJVEVNICK56LDmwLi3ziC8s8GkKCZnKSIsICAgICAgIElETV9TRVRXQUxMUEFQRVIKICAgICAgICBNRU5VSVRFTSAitaW9usWpxb4gvsbAzMXbwLi3ziC8s8GkKCZEKS4uLiIsICBJRE1fU0VUREVTS1RPUElURU0KICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiwN+287O7seIoJlQpIiwgICAgICAgICAgICAgICAgICAgICBJRE1fQ1VUCiAgICAgICAgTUVOVUlURU0gIrq5u+coJkMpIiwgICAgICAgICAgICAgICAgICAgIElETV9DT1BZCiAgICAgICAgTUVOVUlURU0gIrnZt84gsKGx4iC6ubvnKCZUKSIsICAgICAgICAgICBJRE1fQ09QWVNIT1JUQ1VUCiAgICAgICAgTUVOVUlURU0gIrrZv6mz1rHiKCZQKSIsICAgICAgICAgICAgICAgICAgIElETV9QQVNURQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLB8bDcw6Ox4r+hILT1x8+x4igmRikuLi4iLCAgICAgSURNX0FEREZBVk9SSVRFUwogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLA57v9IiwgICAgICAgICAgICAgICAgICAgICBJRE1fRFlOU1JDUExBWQogICAgICAgIE1FTlVJVEVNICLBpMH2IiwgICAgICAgICAgICAgICAgICAgICBJRE1fRFlOU1JDU1RPUAogICAgICAgIE1FTlVJVEVNICK807y6KCZSKSIsICAgICAgICAgICAgICBJRE1fUFJPUEVSVElFUwogICAgfQoKICAgIFBPUFVQICJBUlQgsde4siIKICAgIHsKICAgICAgICBNRU5VSVRFTSAiuLXFqSC/rbHiKCZPKSIsICAgICAgICAgICAgICAgSURNX0ZPTExPV0xJTktDCiAgICAgICAgTUVOVUlURU0gIrv1IMOiv6EguLXFqSC/rbHiKCZOKSIsIElETV9GT0xMT1dMSU5LTgogICAgICAgIE1FTlVJVEVNICK02bilIMDMuKfAuLfOIMD6wOUoJkEpLi4uIiwgICAgICAgSURNX1NBVkVUQVJHRVQKICAgICAgICBNRU5VSVRFTSAixbiw2SDAzrziKCZQKSIsICAgICAgICAgICAgSURNX1BSSU5UVEFSR0VUCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIrHXuLIgurix4igmSCkiLCAgICAgICAgICAgIElETV9TSE9XUElDVFVSRQogICAgICAgIE1FTlVJVEVNICKx17iyILTZuKUgwMy4p8C4t84gwPrA5SgmUykuLi4iLCAgICAgIElETV9TQVZFUElDVFVSRQogICAgICAgIE1FTlVJVEVNICK56LDmwLi3ziC8s8GkKCZnKSIsICAgICAgIElETV9TRVRXQUxMUEFQRVIKICAgICAgICBNRU5VSVRFTSAitaW9usWpxb4gvsbAzMXbwLi3ziC8s8GkKCZEKS4uLiIsICBJRE1fU0VUREVTS1RPUElURU0KICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiwN+287O7seIoJlQpIiwgICAgICAgICAgICAgICAgICAgICBJRE1fQ1VUCiAgICAgICAgTUVOVUlURU0gIrq5u+coJkMpIiwgICAgICAgICAgICAgICAgICAgIElETV9DT1BZCiAgICAgICAgTUVOVUlURU0gIrnZt86wobHiILq5u+coJlQpIiwgICAgICAgICAgIElETV9DT1BZU0hPUlRDVVQKICAgICAgICBNRU5VSVRFTSAiutm/qbP1seIoJlApIiwgICAgICAgICAgICAgICAgICAgSURNX1BBU1RFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIsHxsNzDo7Hiv6EgtPXHz7HiKCZGKS4uLiIsICAgICBJRE1fQURERkFWT1JJVEVTCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIsDnu/0iLCAgICAgICAgICAgICAgICAgICAgIElETV9JTUdBUlRQTEFZCiAgICAgICAgTUVOVUlURU0gIsGkwfYiLCAgICAgICAgICAgICAgICAgICAgIElETV9JTUdBUlRTVE9QCiAgICAgICAgTUVOVUlURU0gIrTZvcMgsKix4iIsICAgICAgICAgICAgICAgICAgIElETV9JTUdBUlRSRVdJTkQKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAivNO8uigmUikiLCAgICAgICAgICAgICAgSURNX1BST1BFUlRJRVMKICAgIH0KCiAgICBQT1BVUCAitfC59rHXIgogICAgewogICAgICAgIE1FTlVJVEVNICLFwrHXIMPfwPsiLCAgICAgICAgIElETV9UUkFDRVRBR1MKICAgICAgICBNRU5VSVRFTSAiuK680r26IL3HxtAiLCAgSURNX1JFU09VUkNFRkFJTFVSRVMKICAgICAgICBNRU5VSVRFTSAiw9/A+yDBpLq4ILT9x8EiLCBJRE1fRFVNUFRSQUNLSU5HSU5GTwogICAgICAgIE1FTlVJVEVNICK18Ln2sdcguuq3ucDMxakiLCAgICAgICAgSURNX0RFQlVHQlJFQUsKICAgICAgICBNRU5VSVRFTSAitfC59rHXILq4seIiLCAgICAgICAgIElETV9ERUJVR1ZJRVcKICAgICAgICBNRU5VSVRFTSAixq64riC0/cfBIiwgICAgICAgICAgSURNX0RVTVBUUkVFCiAgICAgICAgTUVOVUlURU0gIrbzwM4gtP3HwSIsICAgICAgICAgSURNX0RVTVBMSU5FUwogICAgICAgIE1FTlVJVEVNICK18L26x8O3ucDMxq64riC0/cfBIiwgICBJRE1fRFVNUERJU1BMQVlUUkVFCiAgICAgICAgTUVOVUlURU0gIsb3uMvEs72sILT9x8EiLCAgSURNX0RVTVBGT1JNQVRDQUNIRVMKICAgICAgICBNRU5VSVRFTSAit7nAzL7Gv/S3usauILT9x8EiLCAgIElETV9EVU1QTEFZT1VUUkVDVFMKICAgICAgICBNRU5VSVRFTSAiuN648LiuILjwtM/FzSIsICAgICBJRE1fTUVNT1JZTU9OSVRPUgogICAgICAgIE1FTlVJVEVNICK8urTJIMP4waQiLCBJRE1fUEVSRk9STUFOQ0VNRVRFUlMKICAgICAgICBNRU5VSVRFTSAiSFRNTCDA+sDlIiwgICAgICAgICAgSURNX1NBVkVIVE1MCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIrq4seIgu/PFwigmQikiLCAgICAgICBJRE1fQlJPV1NFTU9ERQogICAgICAgIE1FTlVJVEVNICLG7cH9ILvzxcIoJkUpIiwgICAgICAgICBJRE1fRURJVE1PREUKICAgIH0KCiAgICBQT1BVUCAivLy3ziC9usWpt9G52SIKICAgIHsKICAgICAgICBNRU5VSVRFTSAiv6mx4rytIL26xam30SIsICBJRE1fU0NST0xMX0hFUkUKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiwKciLCAgICAgICAgICBJRE1fU0NST0xMX1RPUAogICAgICAgIE1FTlVJVEVNICK+xrehIiwgICAgICAgSURNX1NDUk9MTF9CT1RUT00KICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiwKcgxuTAzMH2IiwgICAgICBJRE1fU0NST0xMX1BBR0VVUAogICAgICAgIE1FTlVJVEVNICK+xrehIMbkwMzB9iIsICAgIElETV9TQ1JPTExfUEFHRURPV04KICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiwKe3ziC9usWpt9EiLCAgICBJRE1fU0NST0xMX1VQCiAgICAgICAgTUVOVUlURU0gIr7Gt6G3ziC9usWpt9EiLCAgSURNX1NDUk9MTF9ET1dOCiAgICB9CgogICAgUE9QVVAgIrCht84gvbrFqbfRudkiCiAgICB7CiAgICAgICAgTUVOVUlURU0gIr+pseK8rSC9usWpt9EiLCAgSURNX1NDUk9MTF9IRVJFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIr/ewsogsKHA5cDauK4iLCAgICBJRE1fU0NST0xMX0xFRlRFREdFCiAgICAgICAgTUVOVUlURU0gIr/AuKXCyiCwocDlwNq4riIsICAgSURNX1NDUk9MTF9SSUdIVEVER0UKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAixuTAzMH2IL/ewsoiLCAgICBJRE1fU0NST0xMX1BBR0VMRUZUCiAgICAgICAgTUVOVUlURU0gIsbkwMzB9iC/wLilwsoiLCAgIElETV9TQ1JPTExfUEFHRVJJR0hUCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIr/ewsrAuLfOIL26xam30SIsICBJRE1fU0NST0xMX0xFRlQKICAgICAgICBNRU5VSVRFTSAiv8C4pcLKwLi3ziC9usWpt9EiLCBJRE1fU0NST0xMX1JJR0hUCiAgICB9Cn0K