IyBGaW5uaXNoIHRyYW5zbGF0aW9uIG9mIGljb252LgojIENvcHlyaWdodCAoQykgMjAwMiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIyBNYXR0aSBLb3NraW1pZXMgPG1hdHRpQGFwdWxhbnRhLmZpPiwgMjAwMi4KIyAKbXNnaWQgIiIKbXNnc3RyICIiCiJQcm9qZWN0LUlkLVZlcnNpb246IGxpYmljb252IDEuOFxuIgoiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGJ1Zy1nbnUtbGliaWNvbnZAZ251Lm9yZ1xuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMDUtMDctMDcgMTQ6NTQrMDIwMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogMjAwMi0wNy0wNSAxMzo0MyV6XG4iCiJMYXN0LVRyYW5zbGF0b3I6IE1hdHRpIEtvc2tpbWllcyA8bWF0dGlAYXB1bGFudGEuZmk+XG4iCiJMYW5ndWFnZS1UZWFtOiBGaW5uaXNoIDx0cmFuc2xhdGlvbi10ZWFtLWZpQGxpc3RzLnNvdXJjZWZvcmdlLm5ldD5cbiIKIk1JTUUtVmVyc2lvbjogMS4wXG4iCiJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4NTktMTVcbiIKIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKCiM6IHNyYy9pY29udi5jOjU2Cm1zZ2lkICJVc2FnZTogaWNvbnYgWy1jXSBbLXNdIFstZiBmcm9tY29kZV0gWy10IHRvY29kZV0gW2ZpbGUgLi4uXSIKbXNnc3RyICIiCiJL5Hl0dPY6IGljb252IFstY10gWy1zXSBbLWYgc3n2dHT2a29vZGF1c10gWy10IHR1bG9za29vZGF1c10gW3RpZWRvc3RvIC4uLl0iCgojOiBzcmMvaWNvbnYuYzo1OAptc2dpZCAib3I6ICAgIGljb252IC1sIgptc2dzdHIgInRhaTogICAgaWNvbnYgLWwiCgojOiBzcmMvaWNvbnYuYzo2OAojLCBjLWZvcm1hdAptc2dpZCAiIgoiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIHNvdXJjZSBmb3IgY29weWluZyBjb25kaXRpb25zLiAgVGhlcmUgaXMgTk9cbiIKIndhcnJhbnR5OyBub3QgZXZlbiBmb3IgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLlxuIgptc2dzdHIgIiIKIlTkdOQgb2hqZWxtYWEgbGV2aXRldOTkbiBzaWlu5CB0b2l2b3NzYSwgZXR05CBzZSBvbGlzaSBoefZkeWxsaW5lbixcbiIKIm11dHRhIGlsbWFuIG1pdOTkbiB0YWt1dXRhOyBpbG1hbiBlZGVzIGhpbGphaXN0YSB0YWt1dXRhIGthdXBhbGxpc2VzdGlcbiIKImh5duRrc3l0dOR25HN05CBsYWFkdXN0YSB0YWkgc292ZWx0dXZ1dWRlc3RhIHRpZXR0eXluIHRhcmtvaXR1a3NlZW4uXG4iCiJLYXRzbyBHUEwtbGlzZW5zc2lzdOQgbGlz5OQgeWtzaXR5aXNrb2h0aWEuXG4iCgojOiBzcmMvaWNvbnYuYzo3MQojLCBjLWZvcm1hdAptc2dpZCAiV3JpdHRlbiBieSAlcy5cbiIKbXNnc3RyICJLaXJqb2l0dGFudXQgJXMuXG4iCgojOiBzcmMvaWNvbnYuYzoxMzEgc3JjL2ljb252LmM6MTcxIHNyYy9pY29udi5jOjIzMgojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgImljb252OiAlczoldToldTogaW5jb21wbGV0ZSBjaGFyYWN0ZXIgb3Igc2hpZnQgc2VxdWVuY2VcbiIKbXNnc3RyICJpY29udjogJXM6IGVw5HTkeWRlbGxpbmVuIHZhaWh0by0gdGFpIG1lcmtraWpvbm9cbiIKCiM6IHNyYy9pY29udi5jOjE2MSBzcmMvaWNvbnYuYzoyMjMKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICJpY29udjogJXM6JXU6JXU6IGNhbm5vdCBjb252ZXJ0XG4iCm1zZ3N0ciAiaWNvbnY6ICVzOiBlaSB2b2kgbXV1bnRhYVxuIgoKIzogc3JjL2ljb252LmM6MTkxIHNyYy9pY29udi5jOjI0MQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgImljb252OiAlczoldToldTogIgptc2dzdHIgImljb252OiAlczogIgoKIzogc3JjL2ljb252LmM6MjUzCiMsIGMtZm9ybWF0Cm1zZ2lkICJpY29udjogJXM6IEkvTyBlcnJvclxuIgptc2dzdHIgImljb252OiAlczogSS9PLXZpcmhlXG4iCgojOiBzcmMvaWNvbnYuYzozNTEKIywgYy1mb3JtYXQKbXNnaWQgImljb252OiBjb252ZXJzaW9uIGZyb20gJXMgdW5zdXBwb3J0ZWRcbiIKbXNnc3RyICJpY29udjogbXV1bm5vcyAlcy1rb29kYXVrc2VzdGEgZWkgb2xlIHR1ZXR0dVxuIgoKIzogc3JjL2ljb252LmM6MzUzCiMsIGMtZm9ybWF0Cm1zZ2lkICJpY29udjogY29udmVyc2lvbiB0byAlcyB1bnN1cHBvcnRlZFxuIgptc2dzdHIgImljb252OiBtdXVubm9zICVzLWtvb2RhdWtzZWVuIGVpIHR1ZXR0dVxuIgoKIzogc3JjL2ljb252LmM6MzU1CiMsIGMtZm9ybWF0Cm1zZ2lkICJpY29udjogY29udmVyc2lvbiBmcm9tICVzIHRvICVzIHVuc3VwcG9ydGVkXG4iCm1zZ3N0ciAiaWNvbnY6IG11dW5ub3MgJXMta29vZGF1a3Nlc3RhICVzLWtvb2RhdWtzZWVuIGVpIG9sZSB0dWV0dHVcbiIKCiM6IHNyYy9pY29udi5jOjM1NgojLCBjLWZvcm1hdAptc2dpZCAiaWNvbnY6IHRyeSAnJXMgLWwnIHRvIGdldCB0aGUgbGlzdCBvZiBzdXBwb3J0ZWQgZW5jb2RpbmdzXG4iCm1zZ3N0ciAiIgoKIzogc3JjL2ljb252LmM6MzcwCm1zZ2lkICIoc3RkaW4pIgptc2dzdHIgIihvbGV0dXNzefZ0ZSkiCgojOiBzcmMvaWNvbnYuYzozNzgKIywgYy1mb3JtYXQKbXNnaWQgImljb252OiAlczogIgptc2dzdHIgImljb252OiAlczogIgoKIzogc3JjL2ljb252LmM6MzkxCiMsIGMtZm9ybWF0Cm1zZ2lkICJpY29udjogSS9PIGVycm9yXG4iCm1zZ3N0ciAiaWNvbnY6IEkvTy12aXJoZVxuIgoKI34gbXNnaWQgIiIKI34gIlVzYWdlOiBpY29udiBbLS1iaW5hcnldIFstY10gWy1zXSBbLWYgZnJvbWNvZGVdIFstdCB0b2NvZGVdIFtmaWxlIC4uLl0iCiN+IG1zZ3N0ciAiIgojfiAiS+R5dHT2OiBpY29udiBbLS1iaW5hcnldIFstY10gWy1zXSBbLWYgc3n2dHT2a29vZGF1c10gWy10IHR1bG9za29vZGF1c10gIgojfiAiW3RpZWRvc3RvIC4uLl0iCg==