IyBsaWJpY29udiAtLSBVa3JhaW5pYW4gdHJhbnNsYXRpb24uCiMgQ29weXJpZ2h0IChDKSAyMDAzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgojIFZvbG9keW15ciBNLiBMaXNpdmthIDxsdm1AbXlzdGVyeS5sdml2Lm5ldD4sIDIwMDMuCiMKbXNnaWQgIiIKbXNnc3RyICIiCiJQcm9qZWN0LUlkLVZlcnNpb246IGxpYmljb252IDEuOFxuIgoiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGJ1Zy1nbnUtbGliaWNvbnZAZ251Lm9yZ1xuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMDUtMDctMDcgMTQ6NTQrMDIwMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogMjAwMy0wMi0wOSAxNzoyNyswMjAwXG4iCiJMYXN0LVRyYW5zbGF0b3I6IFZvbG9keW15ciBNLiBMaXNpdmthIDxsdm1AbXlzdGVyeS5sdml2Lm5ldD5cbiIKIkxhbmd1YWdlLVRlYW06IFVrcmFpbmlhbiA8dHJhbnNsYXRpb24tdGVhbS11a0BsaXN0cy5zb3VyY2Vmb3JnZS5uZXQ+XG4iCiJNSU1FLVZlcnNpb246IDEuMFxuIgoiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PUtPSTgtVVxuIgoiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgoKIzogc3JjL2ljb252LmM6NTYKbXNnaWQgIlVzYWdlOiBpY29udiBbLWNdIFstc10gWy1mIGZyb21jb2RlXSBbLXQgdG9jb2RlXSBbZmlsZSAuLi5dIgptc2dzdHIgIiIKIvfJy8/SydPUwc7O0TogaWNvbnYgWy1jXSBbLXNdIFstZiDaX8vPxNXXwc7O0V0gWy10INVfy8/E1dfBzs7RXSBbxsHKzCAuLi5dIgoKIzogc3JjL2ljb252LmM6NTgKbXNnaWQgIm9yOiAgICBpY29udiAtbCIKbXNnc3RyICLBws86ICAgaWNvbnYgLWwiCgojOiBzcmMvaWNvbnYuYzo2OAojLCBjLWZvcm1hdAptc2dpZCAiIgoiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIHNvdXJjZSBmb3IgY29weWluZyBjb25kaXRpb25zLiAgVGhlcmUgaXMgTk9cbiIKIndhcnJhbnR5OyBub3QgZXZlbiBmb3IgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLlxuIgptc2dzdHIgIiIKIuPFINemzNjOxSDQ0s/H0sHNzsUg2sHCxdrQxd7Fzs7ROyDVzc/XySDLz9CmwNfBzs7RINDSydfFxMXOpiDVXG4iCiLE1sXSxczYzsnIINTFy9PUwcgg0NLPx9LBzckuICDuxc3BIO628evp6CDHwdLBztSmyjsgzsHXptTYIMfB0sHO1KanICIKIuvv7eXy47bq7u+3XG4iCiLjtu7u7/P0tiDBws8g8PLp5OH07u/z9LYg5OzxIOvv7uvy5fTu77cg47bsti5cbiIKCiM6IHNyYy9pY29udi5jOjcxCiMsIGMtZm9ybWF0Cm1zZ2lkICJXcml0dGVuIGJ5ICVzLlxuIgptc2dzdHIgIuHX1M/SOiAlcy5cbiIKCiM6IHNyYy9pY29udi5jOjEzMSBzcmMvaWNvbnYuYzoxNzEgc3JjL2ljb252LmM6MjMyCiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiaWNvbnY6ICVzOiV1OiV1OiBpbmNvbXBsZXRlIGNoYXJhY3RlciBvciBzaGlmdCBzZXF1ZW5jZVxuIgptc2dzdHIgImljb252OiAlczogzsXawdfF0tvFzsnKINPJzdfPzCDeySDQz9PMpsTP186m09TYINrNps7JINLFx6bT1NLVXG4iCgojOiBzcmMvaWNvbnYuYzoxNjEgc3JjL2ljb252LmM6MjIzCiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiaWNvbnY6ICVzOiV1OiV1OiBjYW5ub3QgY29udmVydFxuIgptc2dzdHIgImljb252OiAlczogzsUg18TBzM/T0SDQxdLF1NfP0snUyVxuIgoKIzogc3JjL2ljb252LmM6MTkxIHNyYy9pY29udi5jOjI0MQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgImljb252OiAlczoldToldTogIgptc2dzdHIgImljb252OiAlczogIgoKIzogc3JjL2ljb252LmM6MjUzCiMsIGMtZm9ybWF0Cm1zZ2lkICJpY29udjogJXM6IEkvTyBlcnJvclxuIgptc2dzdHIgImljb252OiAlczog0M/NyczLwSD3L/dcbiIKCiM6IHNyYy9pY29udi5jOjM1MQojLCBjLWZvcm1hdAptc2dpZCAiaWNvbnY6IGNvbnZlcnNpb24gZnJvbSAlcyB1bnN1cHBvcnRlZFxuIgptc2dzdHIgImljb252OiDQxdLF1NfP0sXOztEg2iAlcyDOxSDQpsTU0snN1aTU2NPRXG4iCgojOiBzcmMvaWNvbnYuYzozNTMKIywgYy1mb3JtYXQKbXNnaWQgImljb252OiBjb252ZXJzaW9uIHRvICVzIHVuc3VwcG9ydGVkXG4iCm1zZ3N0ciAiaWNvbnY6INDF0sXU18/Sxc7O0SDVICVzIM7FINCmxNTSyc3VpNTY09FcbiIKCiM6IHNyYy9pY29udi5jOjM1NQojLCBjLWZvcm1hdAptc2dpZCAiaWNvbnY6IGNvbnZlcnNpb24gZnJvbSAlcyB0byAlcyB1bnN1cHBvcnRlZFxuIgptc2dzdHIgImljb252OiDQxdLF1NfP0sXOztEg2iAlcyDVICVzIM7FINCmxNTSyc3VpNTY09FcbiIKCiM6IHNyYy9pY29udi5jOjM1NgojLCBjLWZvcm1hdAptc2dpZCAiaWNvbnY6IHRyeSAnJXMgLWwnIHRvIGdldCB0aGUgbGlzdCBvZiBzdXBwb3J0ZWQgZW5jb2RpbmdzXG4iCm1zZ3N0ciAiIgoKIzogc3JjL2ljb252LmM6MzcwCm1zZ2lkICIoc3RkaW4pIgptc2dzdHIgIijT1MQuINfXpsQpIgoKIzogc3JjL2ljb252LmM6Mzc4CiMsIGMtZm9ybWF0Cm1zZ2lkICJpY29udjogJXM6ICIKbXNnc3RyICJpY29udjogJXM6ICIKCiM6IHNyYy9pY29udi5jOjM5MQojLCBjLWZvcm1hdAptc2dpZCAiaWNvbnY6IEkvTyBlcnJvclxuIgptc2dzdHIgImluY292OiDQz83JzMvBIPcv91xuIgoKI34gbXNnaWQgIiIKI34gIlVzYWdlOiBpY29udiBbLS1iaW5hcnldIFstY10gWy1zXSBbLWYgZnJvbWNvZGVdIFstdCB0b2NvZGVdIFtmaWxlIC4uLl0iCiN+IG1zZ3N0ciAiIgojfiAi98nLz9LJ09TBzs7ROlxuIgojfiAiICBpY29udiBbLS1iaW5hcnldIFstY10gWy1zXSBbLWYg2l/Lz8TV18HOztFdIFstdCDVX8vPxNXXwc7O0V0gW8bByswgLi4uXSIK