LyoKICogQ29weXJpZ2h0IDIwMDggVml0YWxpeSBNYXJnb2xlbgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EKICovCgojaW5jbHVkZSAic2hkb2NsYy5oIgoKTEFOR1VBR0UgTEFOR19SVVNTSUFOLCBTVUJMQU5HX0RFRkFVTFQKClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCnsKICAgIElEU19NRVNTQUdFX0JPWF9USVRMRSwgIldpbmUgSW50ZXJuZXQgRXhwbG9yZXIiCn0KClNUUklOR1RBQkxFIERJU0NBUkRBQkxFCnsKICAgIElEU19QUklOVF9IRUFERVJfVEVNUExBVEUgIiZ3JmLR8vDg7ej24CAmcCIgLyogRklYTUU6IHNob3VsZCBiZSAiJncmYlBhZ2UgJnAgb2YgJlAiICovCiAgICBJRFNfUFJJTlRfRk9PVEVSX1RFTVBMQVRFICImdSZiJmQiCn0KCklEUl9CUk9XU0VfQ09OVEVYVF9NRU5VIE1FTlUKewogICAgUE9QVVAgIkRlZmF1bHQiCiAgICB7CiAgICAgICAgTUVOVUlURU0gIibN4Ofg5CIsICAgICAgICAgICAgICAgICBJRE1fR09CQUNLV0FSRAogICAgICAgIE1FTlVJVEVNICImwu/l8OXkIiwgICAgICAgICAgICAgICAgSURNX0dPRk9SV0FSRAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICIm0e718ODt6PL8IPTu7SDq4OouLi4iLCAgSURNX1NBVkVCQUNLR1JPVU5ECiAgICAgICAgTUVOVUlURU0gItEm5OXr4PL8IPTu7e7i++wg8Ojx8+3q7uwiLCAgICAgSURNX1NFVFdBTExQQVBFUgogICAgICAgIE1FTlVJVEVNICImyu7v6PDu4uDy/CD07u0iLCAgICAgICAgSURNX0NPUFlCQUNLR1JPVU5ECiAgICAgICAgTUVOVUlURU0gItHu9fDg7ejy/CDq4OogJv3r5ezl7fIg8ODh7vfl4+4g8fLu6+AuLi4iLCAgICAgIElETV9TRVRERVNLVE9QSVRFTQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLC++Hw4PL8IMLxJrgiLCAgICAgICAgICAgSURNX1NFTEVDVEFMTAogICAgICAgIE1FTlVJVEVNICLC8Sby4OLo8vwiLCAgICAgICAgICAgICAgSURNX1BBU1RFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gItHu5+Tg8vwgJv/w6/vqIiwgICAgICAgICAgIElETV9DUkVBVEVTSE9SVENVVAogICAgICAgIE1FTlVJVEVNICLE7uHg4ujy/CDiICbo5+Hw4O3t7uUiLCAgSURNX0FEREZBVk9SSVRFUwogICAgICAgIE1FTlVJVEVNICImzvLq8Pvy/CDo8fXu5O376SDy5erx8iIsSURNX1ZJRVdTT1VSQ0UKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJsru5Ojw7uLq4CIsICAgICAgICAgICAgIElETV9MQU5HVUFHRQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLP5Sb34PL8IiwgICAgICAgICAgICAgICAgSURNX1BSSU5UCiAgICAgICAgTUVOVUlURU0gIs4m4e3u4ujy/CIsICAgICAgICAgICAgICBfSURNX1JFRlJFU0gKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAi0eLuJunx8uLgIiwgICAgICAgICAgICAgICBJRE1fUFJPUEVSVElFUwogICAgfQoKICAgIFBPUFVQICJJbWFnZSIKICAgIHsKICAgICAgICBNRU5VSVRFTSAiJs7y6vD78vwg8fH76+rzIiwgICAgICAgICAgICBJRE1fRk9MTE9XTElOS0MKICAgICAgICBNRU5VSVRFTSAizvLq8Pvy/CAm8fH76+rzIOIg7e7i7uwg7urt5SIsSURNX0ZPTExPV0xJTktOCiAgICAgICAgTUVOVUlURU0gItHu9fDg7ejy/CDu4Sb65eryIOrg6i4uLiIsICBJRE1fU0FWRVRBUkdFVAogICAgICAgIE1FTlVJVEVNICImz+X34PL8IO7h+uXq8uAiLCAgICAgSURNX1BSSU5UVEFSR0VUCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIs/u6uDn4PL8ICbw6PHz7e7qIiwgICAgICAgSURNX1NIT1dQSUNUVVJFCiAgICAgICAgTUVOVUlURU0gItHuJvXw4O3o8vwg8Ojx8+3u6iDq4OouLi4iLElETV9TQVZFUElDVFVSRQogICAgICAgIE1FTlVJVEVNICImzvLv8ODi6PL8IPDo8fPt7uog7+4gRS1tYWlsLi4uIixJRE1fTVBfRU1BSUxQSUNUVVJFCiAgICAgICAgTUVOVUlURU0gIibP5ffg8vwg8Ojx8+3q4C4uLiIsICAgICAgICBJRE1fTVBfUFJJTlRQSUNUVVJFCiAgICAgICAgTUVOVUlURU0gIibP5fDl6fLoIOIg7+Dv6vMgzO7oIPDo8fPt6ugiLCBJRE1fTVBfTVlQSUNTCglNRU5VSVRFTSAi0Sbk5evg8vwg9O7t7uL77CDw6PHz7eru7CIsICAgICAgIElETV9TRVRXQUxMUEFQRVIKCU1FTlVJVEVNICLR7vXw4O3o8vwg6uDqICb96+Xs5e3yIPDg4e735ePuIPHy7uvgLi4uIiwgICAgICAgIElETV9TRVRERVNLVE9QSVRFTQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICImwvvw5efg8vwiLCAgICAgICAgICAgICAgICBJRE1fQ1VUCiAgICAgICAgTUVOVUlURU0gIibK7u/o8O7i4PL8IiwgICAgICAgICAgICAgIElETV9DT1BZCiAgICAgICAgTUVOVUlURU0gIsru7+jw7uLg8vwgJv/w6/vqIiwgICAgICAgSURNX0NPUFlTSE9SVENVVAogICAgICAgIE1FTlVJVEVNICImwvHy4OLo8vwiLCAgICAgICAgICAgICAgICBJRE1fUEFTVEUKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAixO7h4OLo8vwg4iAm6Ofh8ODt7e7lIiwgICAgSURNX0FEREZBVk9SSVRFUwogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLR4u4m6fHy4uAiLCAgICAgICAgICAgICAgICAgSURNX1BST1BFUlRJRVMKICAgIH0KCiAgICBQT1BVUCAiQ29udHJvbCIKICAgIHsKICAgICAgICBNRU5VSVRFTSAiJs7y7OXt6PL8IiwgICAgIElETV9VTkRPCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCglNRU5VSVRFTSAiJsL78OXn4PL8IiwgICBJRE1fQ1VUCiAgICAgICAgTUVOVUlURU0gIibK7u/o8O7i4PL8IiwgSURNX0NPUFkKCU1FTlVJVEVNICLC8fIm4OLo8vwiLCAgIElETV9QQVNURQoJTUVOVUlURU0gIibT5ODr6PL8IiwgICAgSURNX0RFTEVURQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgoJTUVOVUlURU0gIsL75OXr6PL8IOIm8bgiLCBJRE1fU0VMRUNUQUxMCiAgICB9CgogICAgUE9QVVAgIlRhYmxlIgogICAgewogICAgICAgIFBPUFVQICImwvvk5evo8vwiCiAgICAgICAgewogICAgICAgICAgICBNRU5VSVRFTSAiJv/35enq8yIsICAgICAgIElETV9DRUxMU0VMRUNUCgkgICAgTUVOVUlURU0gIvHyJvDu6vMiLCAgICAgICBJRE1fUk9XU0VMRUNUCiAgICAgICAgICAgIE1FTlVJVEVNICIm6u7r7u3q8yIsICAgICAgSURNX0NPTFVNTlNFTEVDVAogICAgICAgICAgICBNRU5VSVRFTSAiJvLg4evo9vMiLCAgICAgIElETV9UQUJMRVNFTEVDVAogICAgICAgIH0KICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAi0eLu6fHy4uAgJv/35enq6CIsICBJRE1fQ0VMTFBST1BFUlRJRVMKICAgICAgICBNRU5VSVRFTSAi0eLuJunx8uLgIPLg4evo9vsiLCBJRE1fVEFCTEVQUk9QRVJUSUVTCiAgICB9CgogICAgUE9QVVAgIjFEU2l0ZSBTZWxlY3QiCiAgICB7CiAgICAgICAgTUVOVUlURU0gIibC+/Dl5+Dy/CIsICAgSURNX0NVVAogICAgICAgIE1FTlVJVEVNICImyu7v6PDu4uDy/CIsIElETV9DT1BZCiAgICAgICAgTUVOVUlURU0gIibC8fLg4ujy/CIsICAgSURNX1BBU1RFCglNRU5VSVRFTSAiwvvk5evo8vwg4ibxuCIsIElETV9TRUxFQ1RBTEwKICAgICAgICBNRU5VSVRFTSAiz+Um9+Dy/CIsICAgICBJRE1fUFJJTlQKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgIH0KCiAgICBQT1BVUCAiQW5jaG9yIgogICAgewogICAgICAgIE1FTlVJVEVNICImzvLq8Pvy/CIsICAgICAgICAgICAgIElETV9GT0xMT1dMSU5LQwogICAgICAgIE1FTlVJVEVNICLO8urw+/L8IOIgJu3u4u7sIO7q7eUiLElETV9GT0xMT1dMSU5LTgogICAgICAgIE1FTlVJVEVNICLR7vXw4O3o8vwg7uEm+uXq8iDq4OouLi4iLCAgSURNX1NBVkVUQVJHRVQKICAgICAgICBNRU5VSVRFTSAiJs/l9+Dy/CDu4frl6vLgIiwgSURNX1BSSU5UVEFSR0VUCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIibC+/Dl5+Dy/CIsICAgICAgICAgICAgSURNX0NVVAogICAgICAgIE1FTlVJVEVNICImyu7v6PDu4uDy/CIsICAgICAgICAgIElETV9DT1BZCiAgICAgICAgTUVOVUlURU0gIsru7+jw7uLg8vwgJv/w6/vqIiwgICBJRE1fQ09QWVNIT1JUQ1VUCiAgICAgICAgTUVOVUlURU0gIibC8fLg4ujy/CIsICAgICAgICAgICAgSURNX1BBU1RFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIsTu4eDi6PL8IOIgJujn4fDg7e3u5SIsSURNX0FEREZBVk9SSVRFUwogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLR4u4m6fHy4uAiLCAgICAgICAgICAgIElETV9QUk9QRVJUSUVTCiAgICB9CgogICAgUE9QVVAgIkNvbnRleHQgVW5rbm93biIKICAgIHsKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgIH0KCiAgICBQT1BVUCAiRFlOU1JDIEltYWdlIgogICAgewogICAgICAgIE1FTlVJVEVNICImzvLq8Pvy/CDx8fvr6vMiLCAgICAgICAgICBJRE1fRk9MTE9XTElOS0MKICAgICAgICBNRU5VSVRFTSAizvLq8Pvy/CDx8fvr6vMg4iAm7e7i7uwg7urt5SIsIElETV9GT0xMT1dMSU5LTgogICAgICAgIE1FTlVJVEVNICLR7vXw4O3o8vwg7uEm+uXq8iDq4OouLi4iLCAgSURNX1NBVkVUQVJHRVQKICAgICAgICBNRU5VSVRFTSAiJs/l9+Dy/CDu4frl6vLgIiwgICAgIElETV9QUklOVFRBUkdFVAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLP7urg5+Dy/CAm8Ojx8+3u6iIsICAgICAgIElETV9TSE9XUElDVFVSRQoJTUVOVUlURU0gItHuJvXw4O3o8vwg8Ojx8+3u6iDq4OouLi4iLElETV9TQVZFUElDVFVSRQoJTUVOVUlURU0gItEm5OXr4PL8IPTu7e7i++wg8Ojx8+3q7uwiLCAgICAgICBJRE1fU0VUV0FMTFBBUEVSCglNRU5VSVRFTSAi0e718ODt6PL8IOrg6iAm/evl7OXt8iDw4OHu9+Xj7iDx8u7r4C4uLiIsICAgICAgICBJRE1fU0VUREVTS1RPUElURU0KICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJsL78OXn4PL8IiwgICAgICAgICAgICAgICAgSURNX0NVVAogICAgICAgIE1FTlVJVEVNICImyu7v6PDu4uDy/CIsICAgICAgICAgICAgICBJRE1fQ09QWQogICAgICAgIE1FTlVJVEVNICLK7u/o8O7i4PL8ICb/8Ov76iIsICAgICAgIElETV9DT1BZU0hPUlRDVVQKICAgICAgICBNRU5VSVRFTSAiJsLx8uDi6PL8IiwgICAgICAgICAgICAgICAgSURNX1BBU1RFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIsTu4eDi6PL8IOIgJujn4fDg7e3u5SIsICAgIElETV9BRERGQVZPUklURVMKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKCU1FTlVJVEVNICLC7vHv8O7o5+Ll8fLoIiwgICAgICAgICAgICAgICAgICAgSURNX0RZTlNSQ1BMQVkKICAgICAgICBNRU5VSVRFTSAizvHy4O3u4ujy/CIsICAgICAgICAgICAgICAgSURNX0RZTlNSQ1NUT1AKICAgICAgICBNRU5VSVRFTSAi0eLuJunx8uLgIiwgICAgICAgICAgICAgICAgSURNX1BST1BFUlRJRVMKICAgIH0KCiAgICBQT1BVUCAiQVJUIEltYWdlIgogICAgewogICAgICAgIE1FTlVJVEVNICImzvLq8Pvy/CDx8fvr6vMiLCAgICAgICAgICBJRE1fRk9MTE9XTElOS0MKICAgICAgICBNRU5VSVRFTSAizvLq8Pvy/CDx8fvr6vMg4iAm7e7i7uwg7urt5SIsIElETV9GT0xMT1dMSU5LTgogICAgICAgIE1FTlVJVEVNICLR7vXw4O3o8vwg7uEm+uXq8iDq4OouLi4iLCAgSURNX1NBVkVUQVJHRVQKICAgICAgICBNRU5VSVRFTSAiJs/l9+Dy/CDu4frl6vLgIiwgICAgIElETV9QUklOVFRBUkdFVAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLP7urg5+Dy/CAm8Ojx8+3u6iIsICAgICAgIElETV9TSE9XUElDVFVSRQoJTUVOVUlURU0gItHuJvXw4O3o8vwg8Ojx8+3u6iDq4OouLi4iLElETV9TQVZFUElDVFVSRQoJTUVOVUlURU0gItEm5OXr4PL8IPTu7e7i++wg8Ojx8+3q7uwiLCAgICAgICBJRE1fU0VUV0FMTFBBUEVSCglNRU5VSVRFTSAi0e718ODt6PL8IOrg6iAm/evl7OXt8iDw4OHu9+Xj7iDx8u7r4C4uLiIsICAgICAgICBJRE1fU0VUREVTS1RPUElURU0KICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiJsL78OXn4PL8IiwgICAgICAgICAgICAgICAgSURNX0NVVAogICAgICAgIE1FTlVJVEVNICImyu7v6PDu4uDy/CIsICAgICAgICAgICAgICBJRE1fQ09QWQogICAgICAgIE1FTlVJVEVNICLK7u/o8O7i4PL8ICb/8Ov76iIsICAgICAgIElETV9DT1BZU0hPUlRDVVQKICAgICAgICBNRU5VSVRFTSAiJsLx8uDi6PL8IiwgICAgICAgICAgICAgICAgSURNX1BBU1RFCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIsTu4eDi6PL8IOIgJujn4fDg7e3u5SIsICAgIElETV9BRERGQVZPUklURVMKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKCU1FTlVJVEVNICLC7vHv8O7o5+Ll8fLoIiwgICAgICAgICAgICAgICAgICAgSURNX0lNR0FSVFBMQVkKICAgICAgICBNRU5VSVRFTSAizvHy4O3u4ujy/CIsICAgICAgICAgICAgICAgSURNX0lNR0FSVFNUT1AKCU1FTlVJVEVNICLP5fDl7O7y4PL8IiwgICAgICAgICAgICAgICAgSURNX0lNR0FSVFJFV0lORAogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLR4u4m6fHy4uAiLCAgICAgICAgICAgICAgICBJRE1fUFJPUEVSVElFUwogICAgfQoKICAgIFBPUFVQICJEZWJ1ZyIKICAgIHsKICAgICAgICBNRU5VSVRFTSAiVHJhY2UgVGFncyIsICAgICAgICAgSURNX1RSQUNFVEFHUwogICAgICAgIE1FTlVJVEVNICJSZXNvdXJjZSBGYWlsdXJlcyIsICBJRE1fUkVTT1VSQ0VGQUlMVVJFUwogICAgICAgIE1FTlVJVEVNICJEdW1wIFRyYWNraW5nIEluZm8iLCBJRE1fRFVNUFRSQUNLSU5HSU5GTwogICAgICAgIE1FTlVJVEVNICJEZWJ1ZyBCcmVhayIsICAgICAgICBJRE1fREVCVUdCUkVBSwogICAgICAgIE1FTlVJVEVNICJEZWJ1ZyBWaWV3IiwgICAgICAgICBJRE1fREVCVUdWSUVXCiAgICAgICAgTUVOVUlURU0gIkR1bXAgVHJlZSIsICAgICAgICAgIElETV9EVU1QVFJFRQogICAgICAgIE1FTlVJVEVNICJEdW1wIExpbmVzIiwgICAgICAgICBJRE1fRFVNUExJTkVTCiAgICAgICAgTUVOVUlURU0gIkR1bXAgRGlzcGxheVRyZWUiLCAgIElETV9EVU1QRElTUExBWVRSRUUKICAgICAgICBNRU5VSVRFTSAiRHVtcCBGb3JtYXRDYWNoZXMiLCAgSURNX0RVTVBGT1JNQVRDQUNIRVMKICAgICAgICBNRU5VSVRFTSAiRHVtcCBMYXlvdXRSZWN0cyIsICAgSURNX0RVTVBMQVlPVVRSRUNUUwogICAgICAgIE1FTlVJVEVNICJNZW1vcnkgTW9uaXRvciIsICAgICBJRE1fTUVNT1JZTU9OSVRPUgogICAgICAgIE1FTlVJVEVNICJQZXJmb3JtYW5jZSBNZXRlcnMiLCBJRE1fUEVSRk9STUFOQ0VNRVRFUlMKICAgICAgICBNRU5VSVRFTSAiU2F2ZSBIVE1MIiwgICAgICAgICAgSURNX1NBVkVIVE1MCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCglNRU5VSVRFTSAiwujkIO7hJufu8OAiLCAgICAgICBJRE1fQlJPV1NFTU9ERQoJTUVOVUlURU0gIsjnJuzl7ejy/CDi6OQiLCAgICAgICAgIElETV9FRElUTU9ERQogICAgfQoKICAgIFBPUFVQICJWZXJ0aWNhbCBTY3JvbGxiYXIiCiAgICB7CiAgICAgICAgTUVOVUlURU0gIs/w7urw8/Lq4CDt4CDs5fHy5SIsICAgIElETV9TQ1JPTExfSEVSRQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLC4uXw9SIsICAgICAgICAgICAgICBJRE1fU0NST0xMX1RPUAogICAgICAgIE1FTlVJVEVNICLC7ejnIiwgICAgICAgICAgICAgICBJRE1fU0NST0xMX0JPVFRPTQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLR8vDg7ej24CDi4uXw9SIsICAgICBJRE1fU0NST0xMX1BBR0VVUAogICAgICAgIE1FTlVJVEVNICLR8vDg7ej24CDi7ejnIiwgICAgICBJRE1fU0NST0xMX1BBR0VET1dOCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIs/w7urw8/Lq4CDi4uXw9SIsICAgIElETV9TQ1JPTExfVVAKICAgICAgICBNRU5VSVRFTSAiz/Du6vDz8urgIOLt6OciLCAgICAgSURNX1NDUk9MTF9ET1dOCiAgICB9CgogICAgUE9QVVAgIkhvcml6b250YWwgU2Nyb2xsYmFyIgogICAgewogICAgICAgIE1FTlVJVEVNICLP8O7q8PPy6uAg7eAg7OXx8uUiLCAgICBJRE1fU0NST0xMX0hFUkUKICAgICAgICBNRU5VSVRFTSBTRVBBUkFUT1IKICAgICAgICBNRU5VSVRFTSAiyiDr5eLu7PMg6vDg/iIsICAgICAgICAgSURNX1NDUk9MTF9MRUZURURHRQogICAgICAgIE1FTlVJVEVNICLKIO/w4OLu7PMg6vDg/iIsICAgICAgICBJRE1fU0NST0xMX1JJR0hURURHRQogICAgICAgIE1FTlVJVEVNIFNFUEFSQVRPUgogICAgICAgIE1FTlVJVEVNICLR8vDg7ej24CDi6+Xi7iIsICAgICBJRE1fU0NST0xMX1BBR0VMRUZUCiAgICAgICAgTUVOVUlURU0gItHy8ODt6PbgIOLv8ODi7iIsICAgIElETV9TQ1JPTExfUEFHRVJJR0hUCiAgICAgICAgTUVOVUlURU0gU0VQQVJBVE9SCiAgICAgICAgTUVOVUlURU0gIs/w7urw8/Lq4CDi6+Xi7iIsICAgIElETV9TQ1JPTExfTEVGVAogICAgICAgIE1FTlVJVEVNICLP8O7q8PPy6uAg4u/w4OLuIiwgICBJRE1fU0NST0xMX1JJR0hUCiAgICB9Cn0K