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Dyl9sEyJjTj///9MiYUw////SImNKP///0iJlSD///9Miz3h3AQASYsHSIlF4EiNhRD///9IiUXQSI1FEEiJRcjHRcQwAAAAx0XAEAAAAEiJ374BAAAA6I8AAABIjVXASInfTIn26Ozx//9Iid++AgAAAOgH/P//SInf6LT7//9Jiw9IO03gdQ5IgcTYAAAAW0FeQV9dw+hibwEAVUiJ5UFXQVZTUEmJ14nzSYn+6Fzs//9MifeJxuhx7P//SI01MnoBAEyJ90yJ+kiJwTDA6MTx//9MifeJ3kiJwkiDxAhbQV5BX13p3/3//1VIieVBVlNIgeyAAAAASIn7TIs1BdwEAEmLBkiJRehIjZVw////6E5MAACFwHQ0SI016XkBAEiNlXD///9Iid/oxE0AAItNmIXJfhdIjTXPeQEASI1VqEiJ3zDA6Ezx///rEUiNNUV5AQBIid8x0uhd8P//SYsGSDtF6HUMSIHEgAAAAFtBXl3D6IVuAQBVSInlQVdBVkFVQVRTUEmJz4nzSYn+SIXSdAkxyehuAAAA6wcx0ui+AAAASYnEQb3/////SYs/SIX/dCVMieboG3ABAEH/xUmDxwiFwHXlRInoSIPECFtBXEFdQV5BX13DSI01NHkBAEyJ90yJ4jDA6Krw//9MifeJ3kiJwkiDxAhbQVxBXUFeQV9d6cH8//9VSInlQVdBVkFUU0mJzkmJ10GJ9EiJ++jq6v//hcB+FkiJ30SJ5kyJ8ltBXEFeQV9d6SMAAABNhfZ0EjHATYX/dAhMif/oqW8BAEmJBkyJ+FtBXEFeQV9dw1VIieVBV0FWU1CJ80mJ/ugM7f//SYnHTYX/dRpMife+BAAAAOij6v//TIn3id5IicLoBP7//0yJ+EiDxAhbQV5BX13DVUiJ5UFWU0mJ9kiJ+77w2P//TIny6Nzx//9Iid++/////+hC6v//hcB0BDHA6ztIid++/v///+ix5///SInfMfYx0uh68v//SInfvv/////o6un//0iJ377w2P//TIny6KTz//+4AQAAAFtBXl3DVUiJ5UFXQVZBVFNJiddBifRIifvode3//0mJxk2F9nRESInfRInm6H7y//+FwHQ1SInfvvDY//9MifroR/H//0iJ377/////uv7////ofer//4XAdA9Iid++/f///+gb5///6xFIid9EieZMifroFP3//0Ux9kyJ8FtBXEFeQV9dw1VIieVBVlNJidZIifvonuX//4XAdAVbQV5dw0iNNXB3AQBIid9MifIwwFtBXl3p9Pv//1VIieVBV0FWU1BBideJ80mJ/ugu6f//RDn4dQtIg8QIW0FeQV9dw0yJ90SJ/ugy6f//TIn3id5IicJIg8QIW0FeQV9d6Yn8//9VSInlQVZTifNJif7o6+j//4P4/3UVSI0VDXcBAEyJ94neW0FeXemM+v//W0FeXcNVSInlQVZTSIPsEInzSYn+6KHq///yDxFF6GYPV8lmDy7BdSp6KEyJ94ne6P3o//+FwHUaTIn3vgMAAADoquj//0yJ94neSInC6Av8///yDxBF6EiDxBBbQV5dw1VIieVBVlNIg+wQ8g8RReiJ80mJ/uhW6P//hcB+EkyJ94neSIPEEFtBXl3pdP////IPEEXoSIPEEFtBXl3DVUiJ5UFXQVZTUInzSYn/6Dnq//9JicZNhfZ1KEyJ/4ne6G3o//+FwHUaTIn/vgMAAADoGuj//0yJ/4neSInC6Hv7//9MifBIg8QIW0FeQV9dw1VIieVBV0FWU1BJidaJ80mJ/+jJ5///hcB+FEyJ/4neSIPECFtBXkFfXel/////TInwSIPECFtBXkFfXcNVSInlQVdBVlNQSYnXSYn+6D7w//8x24XAdEdMifdMif7ogez//0yJ977+////6Fzv//9Mife+/////+hj5///TIn3hcB0Eb7+////6Bvl//+7AQAAAOsKvv3////oxeT//4nYSIPECFtBXkFfXcNVSInlQVdBVlNQSYnXifNJif6Ngw8nAAA9DycAAHcMTIn36H/k//+NXAMBTIn3id5MifroWf///0Ux/4XAdCJMifeJ3ujB5v//Qb8BAAAATIn3vgEAAAC6AQAAAOjl8v//RIn4SIPECFtBXkFfXcNVSInlMcld6QAAAABVSInlQVdBVkFVQVRTUEGJzEmJ10iJ80mJ/kiF2w+EyAAAAEUx7UmDPwB0FEmNRxBFMe1B/8VIgzgASI1AEHXzSI0Vr3QBAEyJ977w2P//uQEAAADoBAEAAEyJ977/////SIna6N3t//9Mife+/////+hD5v//g/gFdFZMife+/v///+i14///TIn3vu7Y//9IidpEienowgAAAEiFwHQUSI01V3QBAEyJ90iJ2jDA6LT4//9Mife+/////+jO5f//TIn3vv3///9IidroiO///0yJ977+////6KTj//9Eieb31kyJ9+iZ5P//SYM/AHRQuP7///9EKeCJRdRFieVB991FheREieN+D0yJ90SJ7uh65f///8t18UmLdwhMifdEieLo7Ov//0mLF0yJ94t11Ogj7///SYN/EABNjX8QdcFB99RMifdEieZIg8QIW0FcQV1BXkFfXeng4v//VUiJ5UFXQVZBVUFUU1BBic5JidRJif/oFuX//0yJ574uAAAA6PZpAQBIicNIhdt1DkyJ5+gQagEASInDTAHjSYndTSnlTIn/TInmTInq6Lbp//9Mif++/v///+jo7P//TIn/vv/////o7+T//0yJ/4XAdUy+/v///+hi4v//gDsuRInyuAEAAAAPRNBMif8x9ugf7f//TIn/TInmTInq6GXp//9Mif++/v///+iB5P//TIn/vvz////oDe7//+sPvv/////okuT//4P4BXUeTIn/vv7////oSeL//zHAgDsuTI1jAQ+EMf///+sQTIn/vv3////o5uH//0yJ4EiDxAhbQVxBXUFeQV9dw1VIieVBV0FWQVVBVFNIgew4BAAASYnMSYnXSInzSYn+TIm1qPv//0iLBRvUBABIiwBIiUXQTIn/6ABpAQBIiYWg+///TIm1yPv//0iNhdD7//9IiYW4+///x4XA+///AAAAAEiJ30yJ/ujnaAEASYnFTYXtdFlMjbW4+///TIm9sPv//0yLvaD7//9MiepIKdpMifdIid7oxgAAAEyJ5+iZaAEATIn3TInmSInC6LAAAABMietMAftIid9Ii7Ww+///6I5oAQBJicVNhe11vEiJ3+hmaAEATI21uPv//0yJ90iJ3kiJwuh2AAAATIn36DcBAACLtcD7//9Ii73I+///6Lry///HhcD7//8BAAAASIu9qPv//77/////MdLooOX//0iLDR/TBABIiwlIO03QdRJIgcQ4BAAAW0FcQV1BXkFfXcPo9WUBAFVIieVIiX4QSI1GGEiJBsdGCAAAAABdw1VIieVBV0FWQVRTSYnWSInzSYn/TYX2dDBNjacYBAAASf/OSYsHTDngcgtMif/obgAAAEmLB4oLSI1QAUmJF4gISP/DTYX2dddbQVxBXkFfXcNVSInlQVZTSInzSYn+SInf6HRnAQBMifdIid5IicJbQV5d6Yf///9VSInlU1BIifvoQgAAAItzCEiLexDoy/H//8dDCAEAAABIg8QIW13DVUiJ5VNQSIn76BoAAACFwHQISInf6EQAAABIg8MYSInYSIPECFtdw1VIieVBVlNIiftMjXMYSIsTTCnydBlIi3sQTIn26LDm//9MiTP/Qwi4AQAAAOsCMcBbQV5dw1VIieVBV0FWQVVBVFNQSYn+QYN+CAJ8Xk2LfhBMif++/////+i15P//SYnFQbwBAAAAMduNc/5Mif/on+T//0GLTgiNFAuD+gl+D0H/xEkBxf/LQTnMfNzrBUk5xXfsTIn/RInm6PXw//+4AQAAAEQp4EEBRghIg8QIW0FcQV1BXkFfXcNVSInlQVZTSIPsEEiJ+0yLcxBIjVXoTIn3vv/////ouuP//0iNixgEAABIiztIKflIi1XoSDnKdiZIid/oBP///4XAdA1Mife+/v///+jj3////0MISInf6B7////rHEiJxuhCZQEASItF6EgBA0yJ977+////6HPe//9Ig8QQW0FeXcNVSInlQVdBVlNQQYn2SYn/QY2GDycAAD0PJwAAdw1Mif/oMt7//0WNdAYBu/////9Mif++/////+ip4P//hcB0SkyJ/0SJ9jHS6Lro//9Mif++/////+im4v//SInDTIn/vv7////o/93//0yJ/0SJ9oXbdCWJ2uiM6P//TIn/RIn2MdLo0er//+sZTIn/vv7////o0t3//+sX6Dbj//9IicP/w0yJ/0SJ9ona6Knq//+J2EiDxAhbQV5BX13DVUiJ5UFXQVZTUEGJ14nzSYn+RYX/eFONgw8nAAA9DycAAHcMTIn36G7d//+NXAMBTIn3id4x0ugO6P//TIn3id5EifroU+r//0lj90yJ9+hf5P//TIn3id4x0kiDxAhbQV5BX13pMur//0iDxAhbQV5BX13DVUiJ5UFXQVZBVUFUU0iB7CgEAABIifNJifxIiwWLzwQASIsASIlF0Oj43P//QYnGSInax4XA+///AAAAAEH/xkiF0nRCSI010W0BAEyJ50iJ00iJnbj7//8wwOjc5P//SI01um0BAEiJ3+j5YgEASImFyPv//0iFwHU4SI01oW0BAOlEAQAASImVuPv//0iNNYFtAQBMiee6BgAAAOi+4///SIsFE88EAEiLAEiJhcj7//9Iicfo72IBAIP4I3Uzx4XA+///AQAAAEiLvcj7///o1GIBAInBuP////+D+f90dYP5CnXjSIu9yPv//+i3YgEAg/gbdV9Ig724+///AHRVSIuVyPv//0iNNRhtAQBIi724+///6GpiAQBIicdIib3I+///SIX/dRNIjTX5bAEA6ZQAAABIi73I+///6GdiAQCD+Bt0BYP4/3Xqx4XA+///AAAAAEiLtcj7//+Jx+iDYwEATInnvv////8x0uiy4P//SI018wAAAEiNlcD7//9MiedIicHowuv//0GJxUiLncj7//9Iid/opWEBAEGJx0iDvbj7//8AdAhIid/ohGEBAEWF/3QlTInnRIn26HPb//9IjTVnbAEATInnRIny6D0AAABBvQYAAADrC0yJ50SJ9uiT2///SIsFvM0EAEiLAEg7RdB1FUSJ6EiBxCgEAABbQVxBXUFeQV9dw+iPYAEAVUiJ5UFXQVZBVFOJ00mJ90mJ/uhlYAEAizjoYmIBAEmJxEyJ94neMdLo5d///0iNNSNsAQBIjUgBTIn3TIn6TYngMMDo4OL//0yJ94neW0FcQV5BX13pDtv//1VIieVBVlNJidZIifODOwB0FscDAAAAAEnHBgEAAABIjQXVawEA6zhIi3sI6J9gAQCJwTHAhcl1J0iLSwhIg8MQSInfvgEAAAC6AAQAAOi5YAEASYkGSIXASA9E2EiJ2FtBXl3DVUiJ5UiD7BBIiXXwSIlV+EiNNQ8AAABIjVXw6Fzq//9Ig8QQXcNVSInlSItGCEiFwHQQSIkCSMdGCAAAAABIiwbrAjHAXcNVSInlQVZTSIPsEEiJ80mJ/kiJ3+htYQEASIld4EiJRehIjTW3////SI1V4EyJ90iJ2ej+6f//SIPEEFtBXl3DVUiJ5VNQSI09KAAAADH26DznAABIicNIhdt0D0iNNTAAAABIid/oR9n//0iJ2EiDxAhbXcNVSInlSIn3SIXJdAlIic5d6ZZgAQDo118BADHAXcNVSInlU1BIiwX6ywQASIsYvv////8x0uhd3v//SI01Z2oBAEiJ30iJwjDA6JFfAQAxwEiDxAhbXcOQkFVIieVBVlNIifu+7tj//+iN2///TI01PWsBAEiJ377u2P//TIny6EDl//9IjRXyzwQASInfTIn26Mn0//9IjTUXawEASInfugcAAADoJ+D//0iNFQtrAQBIid++7tj//+gG5f//SI01AGsBAEiNFcAEAABIjQ0BBQAASInf6GoEAABIjTXqagEASI0VTwUAAEiNDY4FAABIid/oTQQAAEiJ3zH2ugEAAADoduP//0iJ377/////6Oba//9Iid++/v///+js5f//SI01qmoBAEiJ37oCAAAA6Jzf//9IjRWZagEASInfvv7////oe+T//0iNNYEFAABIid+6AQAAAOgi4f//SI0VeGoBAEiJ377u2P//6FPk//9IjTV1aQEASI0Vbs4EAEiJ3+jY8///uAIAAABbQV5dw1VIieVBVlNIifvotdf//0mJxkiJ374BAAAA6HTa//+D+AZ1EUiJ374BAAAA6KPa//+FwHQUSI0VzmkBAEiJ374BAAAA6AXs//9Iid++AQAAAOgT2v//SInfTIn2ugEAAADo5db//7gBAAAAW0FeXcNVSInlQVZTSYn+vgEAAADozN3//0iJw0iF23UUSI0VZGkBAEyJ974BAAAA6K7r//9MiffoXdf//41Q/0yJ90iJ3uiMAQAAicNMifeF23gavgEAAADox+D//4ne99ZMiffoidj////D6xkx9uiw4P//TIn3vv7////ocdj//7sCAAAAidhbQV5dw1VIieVTUEiJ++jF4P//hcB0CEiJ3+jV3f//uAEAAABIg8QIW13DVUiJ5UFWU0iJ+74BAAAA6B3d//9JicZNhfZ1FEiNFbVoAQBIid++AQAAAOj/6v//SInfTIn26MsBAABIY8BIjQ1ozQQASIs0wUiJ3+gn3v//uAEAAABbQV5dw1VIieVTUEiJ++h4/v//SI01NwAAAEiJ37oBAAAA6FLf//+4AQAAAEiDxAhbXcNVSInlU1BIifvoT9b//0iJ34nGSIPECFtd6SxXAABVSInlQVZTSIn7vu3Y///odtz//0mJxkiJ3+gg1v//SInfTIn2icLoUAAAAEGJxkWF9nlASInfvv/////oHdn//4XAdCdIid++AQAAAOhX7P//SInfvv7////oOdf//0iJ374CAAAA6NHn//9Iid/ofuf//0SJ8FtBXl3DVUiJ5UFXQVZBVFNBiddJifZJifzoygAAAInDTIn3RIn+6GPU//+FwHURSI01G2cBAEyJ5zDA6MXq//+D+wF1YkyJ50yJ9kSJ+ui71P//TInnTIn26APV//9MifdEif7osFQAAIP4AXdaTIn36FLV//+Jw41zAUyJ5+gL1P//hcB1EUiNNftmAQBMiecwwOht6v//TIn3TInmidroadT//+s2SGPDSI0N3ssEAEiLFMFIjTWyZgEATInnMMDoGd3//+sQTIn3TInmugEAAADoNtT//7v/////idhbQVxBXkFfXcNVSInlQVZTSIHsgAAAAEiJ80yLNU/HBABJiwZIiUXoMcBIOd90T0iJ3+hj5f//icG4AQAAAIP5AXQ7hcl1MkiNlXD///9Iid8x9uh0NwAAicG4AgAAAIXJfxtIid/oftT//4XAD5TAD7bAjUQAAesFuAMAAABJiw5IO03odQxIgcSAAAAAW0FeXcPozlkBAFVIieVBV0FWU1BJiddJifZIiftIic4x0ugd3f//SInfTIn+ugEAAADoDd3//0iJ377+////TInySIPECFtBXkFfXek44P//VUiJ5VNQSIn7vgEAAAC6BQAAAOg77f//SInfvu3Y///oSdb//0iJ374BAAAA6DzW//9Iid8x9ujn2v//uAMAAABIg8QIW13DVUiJ5UFWU0mJ/r4CAAAA6Aru//9IicNMife+AQAAALoFAAAA6OLs////w0hj20yJ90iJ3uii2v//TIn3vgEAAACJ2ugq3v//TIn3vv/////o+9X//4XAD5XAD7bAAcBbQV5dw1VIieVTUEiJ+74BAAAAugUAAADoj+z//0iJ377t2P//6J3V//9Iid++AQAAAOiQ1f//SInf6Afa//+4AwAAAEiDxAhbXcNVSInlQVZTSIn7vgEAAAC6BQAAAOhI7P//Qb4CAAAASInfvgIAAADo/tL//0iJ374BAAAA6J/k//+FwHUOSInf6LbZ//9BvgEAAABEifBbQV5dw1VIieVBVlNIifu+AQAAAOjD0v//SInfMfboWuX//0iJ374BAAAA6HfX//+FwA+EsgAAAEiJ374BAAAA6BPV//9Iid+D+AF1MjH2MdLoW93//0iJ377/////6MvU//9Iid++AQAAAOjl2///SInfvu3Y///o3t7//+tevgEAAADof93//4XAdC9Iid++7dj//+iq3P//SInfvv/////oANf//0GJxkiJ377+////6CXS//9FhfZ1FEiNFVZkAQBIid++AQAAAOhD5v//SInfvgEAAADoK93//0iJ374CAAAA6Fff//+4AQAAAFtBXl3DVUiJ5VNQSIn7vgEAAADoVev//0iJ374BAAAA6JPW//+FwHQOSInfSIPECFtd6aTR//9IjRWqZgEASInfvgIAAAAxyegW6f//SI01kWYBAEiJ30iJwjDASIPECFtd6bHm//9VSInlQVdBVlNQSYn/SI0VQ2YBAEiNDdDJBAC+AQAAAOhH6P//SGPYTIn/vgIAAAAx0ujr6///SI0NXV4BAIscmUyJ/4neicLo4uH//0GJxoP7BXUNTIn/RIn26J/a///rOIP7A3UmTIn/vgQAAAAx0ui54f//8g8qyPIPWQ3pXQEA8kEPKsbyD1jB6wXyQQ8qxkyJ/+jW1///uAEAAABIg8QIW0FeQV9dw1VIieVBV0FWU1BIifu+AQAAADHSMcnoN+j//0mJx0iJ3+ik0P//QYnGSInfTIn+6HHz//+FwHQISInf6D3i//9Iid8x9rr/////6Bvf//9Iid/oc9D//0Qp8EiDxAhbQV5BX13DVUiJ5UFWU0iJ+74CAAAAugEAAADo+ur//0mJxkiJ374BAAAA6E7Q//9Iid++AQAAAOhO0///hcB0KkWF9n4lSInfRIn26IXm//9Iid++AQAAAOhy0v//SInfvgIAAADo/+H//0iJ31tBXl3pqOH//1VIieVTUEiJ+74DAAAAMdLom+D//0hj8EiJ3+ju1v//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgEAAADoWgkAAEiJ377/////6HjS//9Iid+FwHQMvu7Y///o/NH//+sKvv/////oItv//7gBAAAASIPECFtdw1VIieVTUEiJ+74BAAAA6P/o//9Iid++AQAAAOie2v//hcB0FkiNFeNiAQBIid++AQAAAOgz6v//6whIid/oIdb//7gBAAAASIPECFtdw1VIieVTUEiJ+74BAAAAMdIxyeij5v//SInfSInG6Ovx//9Iid+JxkiDxAhbXemkCQAAVUiJ5UFWU0iJ+0iNFX5jAQC+AgAAADHJ6Gvm//9JicZIid++AQAAALoGAAAA6Bfo//9Iid++AwAAAOjTzv//SI01kQkAAEiJ3zHSTInx6Nfe//9Iid+JxltBXl3pQwkAAFVIieVBVlNIg+wQSIn7SI1V6L4BAAAA6GTm//9JicZIid++AgAAAEyJ8jHJ6Pbl//9Ii1XoSInfTIn2SInB6Ar0//9Iid+Jxuj2CAAASIPEEFtBXl3DVUiJ5VNQSIn7vgEAAADoyOf//0iJ3+guzv//jXD/SInfuv////8xyej93P//hcAPlMAPtvBIid/ol9f//0iJ374BAAAA6FjP//9Iid9Ig8QIW13p8c3//1VIieVBV0FWQVVBVFNQSYn/6NvN//9BicZIjRXfYAEATIn/vu7Y///o39f//0WF9g+OhQAAAEG9AQAAAEyLJU3ABABMif++/////+gF0P//TIn/RInu6PrP//9Mif++AQAAALoBAAAA6CTc//9Mif++/////zHS6HbS//9IicNIhdt0XkGD/QJ8EEmLNCRIjT3pYQEA6KZTAQBJizQkSInf6JpTAQBMif++/v///+hQzf//Qf/FRTn1fohIiwXOvwQASIswSI09aV4BAOhvUwEAMcBIg8QIW0FcQV1BXkFfXcNIjTVqYQEATIn/MMBIg8QIW0FcQV1BXkFfXekt4v//VUiJ5VNQSIn7vgEAAADob+b//0iJ374CAAAA6GLm//9Iid++AQAAALoCAAAA6CHQ//9Iid+Jxug/1v//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgEAAAC6BQAAAOjZ5f//SInfvgIAAADoFeb//0iJ374CAAAA6IjM//9Iid++AQAAAOjj1v//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgEAAAC6BQAAAOiO5f//SInfvgIAAADoyuX//0iJ374DAAAA6L3l//9Iid++AwAAAOgwzP//SInfvgEAAADootj//7gBAAAASIPECFtdw1VIieVBV0FWU1BJif7o88v//4nDTIn3vgEAAADocs7//4P4BHUpQb8BAAAATIn3vgEAAAAx0ujL0P//gDgjdQ//y0hj80yJ9+jR0v//60BMife+AQAAAOgF5v//SYnHRYX/eAlBOd9ED0/76wNBAd9Fhf9/FEiNFdhfAQBMife+AQAAAOjF3///RCn7QYnfRIn4SIPECFtBXkFfXcNVSInlU1BIifu+AgAAALoFAAAA6Jnk//9Iid8x9ujqBAAASInfvgIAAADonc3//0iJ374BAAAA6BvO//+FwHQ/SInfvgEAAADok8///2YPV8lmDy7BdSh6JkiJ3+jO1P//SInfvv7////oU8z//0iJ377+////6PjY//8xwOs/SInfvv7////oq83//4XAdRhIid++/v///+jW2P//icG4AQAAAIXJdRZIjTV3XgEASInfMMDo7N///7gBAAAASIPECFtdw1VIieVBVlNIifu+AgAAAOgdzf//QYnGSInfvgEAAAC6BQAAAOjD4///RYX2dBpBg/4FdBRIjRXgXQEASInfvgIAAADopN7//0iNFeJdAQBIid++AQAAAOgy5f//hcB0EUiNNdZdAQBIid8wwOhv3///SInfvgIAAADoN8r//0iJ374BAAAA6I/X//+4AQAAAFtBXl3DVUiJ5UFXQVZBVUFUU1BJif++AgAAALoKAAAA6Jzk//9IicNMif++AQAAAIP7CnUs6Gvj//9Mif++AQAAAOi7zP//hcAPhJIAAABMif++AQAAAOgvzv//6aMAAAAx0uiM4f//SYnEjUP+g/gjchRIjRX/XAEATIn/vgIAAADo1d3//0iNddBMieeJ2ugdUQEASYnGSItd0Ek53HRASP/DTIsl57sEAEG9AEAAAOsHSIld0Ej/ww+2e/9AhP94CkGLRLw8RCHo6wq+AEAAAOitTgEAhcB12IB7/wB0CkyJ/+gN0P//6yFmSQ9uxmYPYgUiVgEAZg9cBSpWAQBmD3zATIn/6APQ//+4AQAAAEiDxAhbQVxBXUFeQV9dw1VIieVBVlNIifu+AQAAAOhx4v//SI0VHVwBAEiJ374BAAAA6CXk//+FwHV4SInfvgEAAADoSMv//4P4BHcoicFIjQW/AAAASGMMiEgBwf/hSI0191sBAEiJ37oDAAAA6MrP///rPkiJ374BAAAA6A7L//9Iid+Jxugjy///SYnGSInfvgEAAADoyc7//0iNNb5bAQBIid9MifJIicEwwOhm0P//uAEAAABbQV5dw0iJ374BAAAA6BXN//9IjQ2BWwEASI01f1sBAIXASA9F8UiJ3+iuz///68tIid++AQAAADHS6AzN//9Iid9Iicboks///+uvSInfvgEAAADoVcr//+ugZpBK////qP///2D////T////7////1VIieVTUEiJ+74BAAAA6Fjh//9Iid++AQAAAOhHyv//SInficboXMr//0iJ30iJxug2z///uAEAAABIg8QIW13DVUiJ5UFXQVZBVFNJif6+AQAAALoFAAAA6MTg//9Mife+AgAAALoBAAAA6Bfi//9IicNMife+AwAAAOjnyf//TIn3hcB+DL4DAAAA6KTh///rCr4BAAAA6LnM//9JicdFMeREOft/REWJ/EEp3HhIQf/ETIn3RInm6OHF//+FwHQ2TIn3vgEAAACJ2ui40f//RDn7fRb/w0yJ974BAAAAidrootH//0E533XqRIngW0FcQV5BX13DSI01BFoBAEyJ9zDAW0FcQV5BX13pBdz//1VIieVTUEiJ+74CAAAA6Efg//9Iid++AgAAAOi6xv//SInfvgEAAADo9Mf//0iJ3zH2uv////+5AQAAAOho1f//hcAPlMAPtvBIid/oAtD//0iJ374BAAAA6AfI//9Iid9Ig8QIW13pXMb//1VIieVBV0FWU0iB7IgAAABBifZIiftMiz3GuAQASYsHSIlF4L4BAAAA6LzI//+D+AZ1EkiJ374BAAAA6IDI///pnwAAAEWF9kiJ374BAAAAdAy6AQAAAOiu4P//6wXoVeD//0mJxkWF9nkUSI0V3FkBAEiJ374BAAAA6Cba//9IjZVo////SInfRIn26K4oAACFwHUUSI0VzVkBAEiJ374BAAAA6PzZ//9IjTXHWQEASI2VaP///0iJ3+gQKgAASInfvv/////oHsj//4XAdRRIjTWiWQEASInfRInyMMDotdr//0mLB0g7ReB1DkiBxIgAAABbQV5BX13D6NlKAQBVSInlU1BIifu4AQAAAIX2dBpIid/oJcz//0iJ377+////6I7G//+4AgAAAEiDxAhbXcNVSInlQVZTSYnWSIn7SI0VrFkBAL4CAAAA6CHe//9Iid++AQAAAOhix///SInfMfa6AQAAAOiP0///SInfvv/////ocMf//4XAdDJIid++/////+jwx///hcB0KkiJ374DAAAA6F3G//9Iid++AwAAAEyJ8ltBXl3prcn//0nHBgAAAADrEUiNNU1ZAQBIid8wwOjP2f//McBbQV5dw5CQVUiJ5YtHMDtHNH5ahcB0Tv/ITGPASIsHTItIGEOLBIGJwYPhP4P5A3U8icHB6QYPtsk58X8wQYnCQcHqF0GNSgE58XwhjVQW/0Q50n44weIXJf//fwAJ0EOJBIHrKA+2R0o58H4gAfLB4heBwgAAgP/B5gYJ1oPOA0iLRxiLUAhd6ZkTAABdw1VIieXB4gYJ1sHhFwnOQcHgDkQJxkiLRxiLUAhd6XUTAABVSInlQVZTSIPs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pP///7v///+7////rv///67///+u////rv///+z///9VSInlSGNOCEiLB0iLUBhIhcl+GItEivxIicZIg+Y/SI09+kcBAIA8NwB4CEiNDIqLAesFSI1MivyJwoHiP8D//2apwD8PlMAPtsDB4AYJ0IkBXcNVSInlQVdBVlNQQYnWSYn3SIn7QYM/C3U2SWNHCEiLC0iLSRiLBIGJwYPhP4P5E3UewegR/0swJcB/AABFhfYPlMEPtvHB5g4JxoPOGus7SInfTIn+6GoJAABBiweD+Ax1FEGLRwj2xAF1Cw+2S0o5wX8D/0s8QcHmDkGLdwjB5hdECfaBzts/AABIi0MYi1AISInf6NIHAABIid9Ig8QIW0FeQV9d6Uv0//9VSInlU1BIifNIidborvv//4lDDMcDCQAAAEiDxAhbXcNVSInlQVZTSIPsIEiJ00mJ/sdF7P/////HRej/////x0XYBQAAAEjHReAAAAAAg/4CdDiD/gF1TEyJ90iJ3uh0+P//iwP/yIP4Cw+HywAAAEiNDe0AAABIYwSBSAHI/+DHAwMAAADpsAAAAEyJ90iJ3ujD+v//SI1N2EyJ974UAAAA6zCF9g+FrgAAAIM7BXUMg3sQ/3UGg3sU/3QLTIn3SIne6JH6//9IjU3YTIn3vhIAAABIidrouAAAAOt8xwMCAAAA61VMifdIid7oJwgAAIsDg/gMdRWLQwj2xAF1DUEPtk5KOcF/BEH/TjxJi0YYi1AIi3MIweYXg84TTIn36JoGAACJQwjHAwsAAADrC0yJ90iJ3ujF/f//i3MQi0MUiXMUiUMQTIn36AYIAACLcxBMiffo+wcAAEiDxCBbQV5dw5B6////HP///3r///8c////HP///9f////X////1////9f////M////gv///4L///9VSInlQVdBVkFVQVRTSIPsGEmJzEmJ1kGJ90mJ/UGDPgUPhesAAABBg34Q/w+F4AAAAEGDfhT/D4XVAAAAQYM8JAUPhcoAAABBg3wkEP8Phb4AAABBg3wkFP8PhbIAAABBjUf0Zg9XwIP4CA+HlgAAAPJBDxBMJAjyQQ8QVggx20iNDVEBAABIYwSBSAHI/+DyD1jR62fyD1zR62HyD1nR61tmD1fAZg8uyHUCe3LyD17R60lmD1fAZg8uyHUCe2APKMLyD17B8g8RVdDyDxFNyOjwOwEA8g8QVdDyD1lFyPIPXNDrF2YPKMLoozwBAGYPKNDrCGYPVxXfQgEAZg8u0mYPKMJ6C/JBDxFGCOm1AAAAMdtBg/8SdBNBg/8UdA1Mie9Miebo//j//4nDTInvTIn26PL4//852H4qQYM+DHUWQYtOCPbFAXUNQQ+2VUo5yn8EQf9NPEGDPCQMdUFBi0wkCOsoQYM8JAx1F0GLTCQI9sUBdQ1BD7ZVSjnKfwRB/008QYM+DHUWQYtOCPbFAXUNQQ+2VUo5yn8EQf9NPMHjDkQJ+8HgFwnYSYtNGItRCEyJ74nG6G8EAABBiUYIQccGCwAAAEiDxBhbQVxBXUFeQV9dw2aQuP7//77+///E/v//yv7//9z+//8O////Hf///y////9V////VUiJ5UFWU0iJ00mJ/oP+DncnifFIjQXFAAAASGMMiEgBwf/hgzsFdRCDexD/dQqDexT/D4ScAAAATIn3SIneW0FeXenm9///TIn3SIneW0FeXenJ9f//TIn3SIneW0FeXelY+v//TIn3SIne6Nb0//+LC//Jg/kJdx+4/////0iNFZYAAABIYwyKSAHR/+FMiffoI/D//+sQTIn3SIneugEAAADoG/v//0iNcxBMifeJwuhm8P//i1MUQYtGMEGJRjRJjXY4TIn36E/w///HQxT/////W0FeXcOLQwjrypBE////RP///0T///9E////RP///0T///9o////Wf///1n///9Z////Wf///1n///9Z////d////4b///+N////c////43///99////ff///33///99////ff///33///++////VUiJ5UFXQVZTUEmJz0mJ1kiJ+4P+Dg+HdwEAAInxSI0FowEAAEhjDIhIAcH/4UiJ374MAAAA6XYBAABIid++DQAAAOlpAQAASInfvg4AAADpXAEAAEiJ374PAAAA6U8BAABIid++EAAAAOlCAQAASInfvhEAAADpNQEAAEiJ30yJ/uhL9v//QYM/Cw+FDQEAAEljTwhIiwNIi3AYixSOidCD4D+D+BUPhfEAAABBgz4MdRtBi0YI9sQBdRIPtntKOcd/Cv9LPEljTwiLFI6B4v//fwBBi0YIweAXCdBIY8mJBI5BxwYLAAAAQYtHCEGJRgjpnAAAAEiJ374XAAAA6zVIid++FwAAAOsSSInfvhgAAADrCEiJ374ZAAAAugEAAADrFEiJ374YAAAA6whIid++GQAAADHSTInxTYn4SIPECFtBXkFfXem3AAAASInfTIn+6Kvy//9Bi1YUSY13FOsTSInfTIn+6Jby//9Bi1YQSY13EEiJ3+hc7v//SYtHEEmJRhBJiwdJi08ISYlOCEmJBkiDxAhbQV5BX13DSInfTIn+6DPz//9Iid++FQAAAEyJ8kyJ+UiDxAhbQV5BX13p+vr//2aQZv7//3P+//+A/v//jf7//5r+//+n/v//tP7//y////85////Q////03///9c////Zv///4X///+a////VUiJ5UFXQVZBVUFUU1BNicdJic5BidSJddRIiftMifbowfT//0GJxUiJ30yJ/uiz9P//QYM/DHUUQYtPCPbFAXULD7ZTSjnKfwP/SzxBgz4MdRRBi04I9sUBdQsPtlNKOcp/A/9LPESJ4cHhBot91IP/F0APlMZFheQPlcJACPJEie4PRfBBD0XFukAAAAAPRdEJ+sHgFwnQweYOCcZIi0MYi1AISInf6DoAAABIid/ovez//0GJRghBxwYKAAAASIPECFtBXEFdQV5BX13DVUiJ5UiLB0iLQCiLTzD/yUhjyYk0iF3DVUiJ5UFXQVZBVFNBidZBifdIiftMiyOLUzCLczi5/wAAAEGJ0Oh07f//x0M4/////4tLMI1BAUE7RCRQfi9JjVQkUEmLdCQYSIt7IEyNDVlFAQC5BAAAAEG4/f//f+hNdwAASYlEJBiLSzDrBUmLRCQYSGPJRIk8iItLMI1BAUE7RCRUfi9JjVQkVEmLdCQoSIt7IEyNDRFFAQC5BAAAAEG4/f//f+gFdwAASYlEJCiLSzDrBUmLRCQoSGPJRIk0iItDMI1IAYlLMFtBXEFeQV9dw1VIieVBV0FWU1CJ80mJ/onOweYXMcCD+f8PRcaJ3sHmBgnG/8qDziJIY8JIacAfhetRSInBSMHpP0jB+CREjXwIAUGB//8BAAB/CUHB5w5BCffrD0mLRhiLUAhMiffoyv7//0mLRhiLUAhMifdEif7ouP7////DQYlePEiDxAhbQV5BX13DVUiJ5UFWU0mJ9kiJ+0GDPgx1BVtBXl3DSInfvgEAAADoAO3//4tTPI1CAYlDPEiJ30yJ9ltBXl3pxgAAAFVIieVBVlOJ80mJ/usEjVwDAYP7/3QpTIn3id66/wAAAOgfAAAASGPDSYsOSItJGIsEgcHoDgUBAP7/g/j/dc5bQV5dw1VIieVIY8ZIiw9Mi0EYhcB+GUGLTID8SInPSIPnP0iNNWE9AQCAPD4AeAhJjTSAiw7rBUmNdID8ic+D5z8xwIP/G3U7icjB6BeB+v8AAAB0BDnQdRLB4AaB4QDAfwAJwYPJGonK6xGB4T/A///B4gaB4sA/AAAJyokWuAEAAABdw1VIieVBV0FWU0iD7BhBidZJifdIifvooe7//0GLB41I/4P5Cw+H1QAAAEiNFdwAAABIYwyKSAHR/+FEifHB4QaD+AIPlMAPtvDB5hcJzoPOAumPAAAASInfRIn2ugEAAADoH+n//+mJAAAARInwweAGQYt3CMHmDusq8kEPEEcI8g8RRdjHReADAAAASI112EiJ30iJ8ugE7P//weAORIn2weYGCcaDzgHrOkljRwhIiwtIi0kYuj/A//8jFIFEifbB5gaB5sA/AAAJ1ok0gesjQYt3CEQ59nQaRInwweAGweYXCcZIi0MYi1AISInf6LD8//9FiXcIQccHDAAAAEiDxBhbQV5BX13DDx8ASf///y3///8t////Xv///23////y////8v////L////y////8v///57////E////VUiJ5YP+/3RQSIsHSItIGEyNBbE7AQBIY/6F/34Si1S5/EiJ0EiD4D9BgDwAAHgDixS5g+I/uAEAAACD+ht1G4sEucHoDgUBAP7/g/j/dAmNdAYBg/7/db4xwF3DVUiJ5UiNNfFBAQBIjRUZpQQA6CbI//+4AQAAAF3DVUiJ5UFXQVZBVUFUU0iB7AgBAABIiftIiwW/ngQASIsASIlF0EyLJbmeBABJizQkSI09NkMBAOhpMgEATIstqp4EAEmLVQBIjb3Q/v//vvoAAADoKTIBAEiFwA+EswAAAEyNtdD+//9MjT0rPQEATIn3SI01AEMBAOgvMwEAhcAPhI4AAABMiffoQzMBAEiJ30yJ9kiJwkiNDeFCAQDoYdH//4XAdRJIid8x9jHSMcnogrr//4XAdCdIid++/////zHS6I+w//9JizQkSInH6NExAQBJizQkTIn/6MUxAQBIid8x9uh+q///SYs0JEiNPXhCAQDoqzEBAEmLVQBMife++gAAAOh2MQEASIXAD4Vb////SIsFwp0EAEiLAEg7RdB1FDHASIHECAEAAFtBXEFdQV5BX13D6JYwAQBVSInlvgEAAADoobb//7gBAAAAXcNVSInlQVdBVlNIg+wYSIn7SI115Og9CwAASYnGTIn36LANAABBicdMiffomw0AAEiFwHQiSI0N6QsAAEg5yHQWSI01xkEBAEiJ37oNAAAA6Oux///rLUiJ3+hcDAAASInfTIn26Em0//9Iid++/v///+gItf//SInfvv7////o2Kr//zHAQfbHAXQJxkXfY7gBAAAAQfbHAnQHxkQF33L/wEH2xwR0CkhjwMZEBd9s/8BIY8DGRAXfAEiNdd9Iid/o0bH//0yJ9+gRDQAASGPwSInf6EWx//+4AwAAAEiDxBhbQV5BX13DVUiJ5UFXQVZBVUFUU0iB7IgAAABJif1IiwWFnAQASIsASIlF0EiNtVT////oPQoAAEmJxoudVP///0SNYwJIjRVKQAEATInvRInmMcnoUsH//0mJx//DTInvid7oqqz//0yJ74XAdC6J3uhWrv//SI2VWP///0yJ94nG6H8MAACFwHViTInv6HOw//+7AQAAAOliAgAAid7oDaz//4P4Bg+FPwIAAEiNNeg/AQBMie9MifowwOh5sf//TInvvv////8x0uhUrv//SYnHTInvid7oqqv//0yJ70yJ9roBAAAA6Hyo//9IjZVY////TIn3TIn+6JcNAACFwA+E1gEAAEyJ7zH2ugIAAADo9LP//0yJ/75TAAAA6FEwAQBIhcAPhKYAAABIi7V4////TInv6Hqw//9IjRWIPwEATInvvv7////oArX//0iNdZBMie/oWrD//0iNFW8/AQBMie++/v///+jitP//SGN1iEyJ7+jBr///SI0VWT8BAEyJ777+////6MK0//9IY3WMTInv6KGv//9IjRVFPwEATInvvv7////oorT//0iLtXD///9Mie/o96///0iNFTI/AQBMie++/v///+h/tP//TIn/vmwAAADolS8BAEiFwHQgSGN1gEyJ7+hMr///SI0VBT8BAEyJ777+////6E20//9Mif++dQAAAOhjLwEASIXAdCBIY3WETInv6Bqv//9IjRXfPgEATInvvv7////oG7T//0yJ/75uAAAA6DEvAQBIhcB0RkiLtWD///9Mie/oXq///0iNFa8+AQBMie++/v///+jms///SIu1aP///0yJ7+g7r///SI0VkT4BAEyJ777+////6MOz//9Mif++TAAAAOjZLgEASIXAdBJIjRV0PgEATInvTIn26K0JAABMif++ZgAAAOi1LgEAuwEAAABIhcB0NkiNFVc+AQBMie9MifbohAkAAOsiSI0V1z0BAEyJ70SJ5usMSI0VrT0BAEyJ74ne6G+7//+Jw0iLBaSZBABIiwBIO0XQdRSJ2EiBxIgAAABbQVxBXUFeQV9dw+h4LAEAVUiJ5UFXQVZBVUFUU0iB7IgAAABJif9Miy1kmQQASYtFAEiJRdBIjXXM6B4HAABJicaLXcxEjWMBTIn/RInm6BPB//9IjZVQ////TIn3icboiQkAAIXAdFWDwwJMif+J3ujxwP//SI21UP///0yJ94nC6MEJAABIicNIhdt0Q0yJ90yJ/roBAAAA6LKl//9Mif9Iid7o863//0yJ/77+////6Lio//+4AgAAAOshSI0ViTwBAEyJ/0SJ5uiEuv//6w1Mif/oFK3//7gBAAAASYtNAEg7TdB1EkiBxIgAAABbQVxBXUFeQV9dw+iIKwEAVUiJ5b7w2P//6GGo//+4AQAAAF3DVUiJ5VNQSIn7vgEAAADodb///0iJ374BAAAA6BSx//+FwHUISInf6K2s//+4AQAAAEiDxAhbXcNVSInlvgEAAABd6UQGAABVSInlU1BIifu+AgAAALoFAAAA6OC+//9Iid++AgAAAOicpf//SInfvgEAAADoiLP//4XAdRFIjTUwOQEASInfMMDopbr//7gBAAAASIPECFtdw1VIieVBV0FWQVVBVFNIg+woSYn9SI111OiRBQAASIlFwItd1ESNewFMie9Eif7ot6f//4XAD46cAAAAjXMCTInvMdLo9bz//0mJxkyJ70SJ/roGAAAA6Eq+//+DwwNMie+J3jHS6KC///9IiUW4TIn3vmMAAADoMiwBAEiJw0yJ975yAAAA6CIsAQBJicRMife+bAAAAOgSLAEASI0N2gUAAEiJTchIhdsPlcEPtsmNUQJNheRMi2W4D0TRidGDyQRIhcAPRMpBic5Bg84IRYXkRA9O8esZTInvRIn+6Iyk//9Ix0XIAAAAAEUx5EUx9kyJ7+gaBgAATInvSItdwEiJ3ugDrv//TInvRIn+6K6m//9Mie++/f///+jOsP//TInvvv7////oQqT//0iJ30iLdchEifJEieHorQYAADHASIPEKFtBXEFdQV5BX13DVUiJ5UFXQVZBVUFUU0iB7IgAAABJif1IiwV2lgQASIsASIlF0EiNdczoMQQAAEmJxkSLfcxFjWcBTInvRInm6CW+//9IjZVQ////TIn3icbomwYAAIXAdFtBjV8DTInvid7oOL3//0yJ74ne6K6j//9BvAEAAABMie9Mifa6AQAAAOjMov//QYPHAkyJ70SJ/ujTvf//SI21UP///0yJ94nC6H4HAABMie9Iicbo7ar//+sVSI0VlTkBAEyJ70SJ5uiQt///QYnESIsFxJUEAEiLAEg7RdB1FUSJ4EiBxIgAAABbQVxBXUFeQV9dw+iXKAEAVUiJ5VNQSIn7vgIAAADolaX//4XAdBmD+AV0FEiNFW82AQBIid++AgAAAOgzt///SInfvgIAAADo76L//0iJ374BAAAA6Eew//9Iid+JxuhRrP//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgMAAADoObz//0iJ3zH2SIPECFtd6SwDAABVSInlQVdBVkFVQVRTSIHsqAAAAEmJ/kyJtTj///9IiwX5lAQASIsASIlF0EiNdczotAIAAEmJx0SLbcxBjV0CTIn3id7oPKX//4XAdBxMifeJ3ujopv//SYnETIn3vv7////oQaL//+sKTTn3D5TARA+24EyJ9+gbov//RDnodRVEia00////SI01ITIBAEyJ9zHS6ypBjXUBTIn36BSl//+FwA+EEwIAAESJrTT///9IjTUjMwEATIn3ugEAAADoDan//0iNNa83AQBMife6EAAAAOj5qP//Qb0BAAAASI2dUP///+seTIn36Keh//8p2EyJ94nG6Jmz//9MiftMi71I////RIngiYVI////TYn+jUgLiY1E////RI1gAUyJ94u1SP///0iJ2kmJ3+hHBAAAhcAPhGMBAABBg/wNTInzfGZFhe10YUiJ34u1RP///0mJ3kyJ+0iJ2ugaBAAARTHthcB0uEiLvTj///9IjTUXNwEAugUAAADoU6j//4uFSP///0GJxE2J90GNdCQLTIn/SIna6N8DAABB/8RFMe2FwHXm6Vz///9Mi7U4////TIn3SI011zYBALoCAAAA6A2o//9Iid9IiZ1I////SI01vzYBAEyJ+ugsBQAATIn3SI01sTYBAEiNVYgwwOi7qP//i5V4////hdJ+EUyJ90iNNZY2AQAwwOigqP//SIuFYP///4A4AIudNP///3UqSIuFaP///4oAPEN0BDx0dTZMifdIjTWHNgEAugIAAADojaf//+me/v//SIuVWP///0yJ90iNNUY2AQAwwOhMqP//6YH+//88bXUWTIn3SI01PjYBADDA6DKo///pZ/7//4tNgEyJ90iNNTc2AQBIjVWIMMDoFaj//+lK/v//SIudOP///0iJ3+jqn///K4U0////SInficbo2LH//0iLBVqSBABIiwBIO0XQdRe4AQAAAEiBxKgAAABbQVxBXUFeQV9dw+grJQEAVUiJ5UFWU0mJ9kiJ+74BAAAA6CWi//+D+Ah1GEHHBgEAAABIid++AQAAAFtBXl3pxaX//0HHBgAAAABIidhbQV5dw1VIieVBV0FWQVRTifNJif6+AgAAAOituf//SYnETIn3vgEAAAC6BgAAAOiFuP//TIn3vgEAAADo/qH//0Ux/4XAdTxMife+AQAAAESJ4oXbdAfoLLL//+sF6Niy//9IhcB0HEyJ90iJxuiPpv//id731kyJ9+hKoP///8NBid9EifhbQVxBXkFfXcNVSInlQVZTSYn2SIn7SI01IywBAOh1qP//SInfvvDY///oNKn//0iJ30iJ3uhdqP//SInfvv7////oHKn//0iJ377/////6COh//+D+AZ1KUljBkiNDS2YBABIizTBSInf6Aym//9JY3YoSInfSIX2eAzogqX//+sKW0FeXcPoQKX//0iJ374CAAAAMdJbQV5d6eqs//9VSInlU1BIiftIjTWRKwEA6OOn//9Iid++8Nj//+iiqP//SInfvv/////oqaD//4P4BXUHSIPECFtdw0iJ377+////6BSe//9Iid8x9roBAAAA6Nqo//9IjTVDKwEASInf6JKn//9Iid++/v///+g7oP//SInfvvDY//9Ig8QIW13pVar//1VIieVBVlNJidZIiftIOfN0EkiJ90iJ3roBAAAA6Oic///rGkiJ377+////6Pef//9Iid++/f///+jdnf//SInfvv7///9MifJbQV5d6aCp//+QVUiJ5YXSQQ+UwEiF9kEPlMJFMMkxwEUIwkgPRMZIiUdwiU9odQNBiNGJT2xEiE9kuAEAAABdw1VIieVIi0dwXcNVSInlD7ZH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O0XED43BAAAAQYnahMlIi0XIdCZIi3WoSI0csL4BAAAAiwSzg8gEg+A/g/gED4WXAAAASP/GOc5+54H6/wAAAESJ00EPRdjrZUUx5ItFkDwCdXdFhe11Lo1DAUhjwEiLTciLBIGJwYPhP4P5IndbSL4AAABwBAAAAEgPo85zSz3//38Ad0RDjUQv/jn4fTvrHUH/yXQMQ41ED/9FMeQ5+H0oQTnXi0XUD07DiUXU/8M7XbQPjGn7//9IY0XUSItNyESLJIHrA0Ux5ESJ4EiDxFhbQVxBXUFeQV9dw0v9//+G/f//Of3//5b9///S////lv3//zn9///S////0v///7j9///S////0v///9L////S////0v///9L////S////0v///9L////Y/f//cv7//9L////S////0v///9L////S////6f3//+n9//9J/v//Yv7//2L+//+k/v//xv7//9L////7/v//bf///1VIieVBV0FWU1BJidZIifBIiftIx0XgAAAAAEhjSAhIjRWClAQATIs8ykiNSBBIi3MoSIsWSIt+EEg5+nNESIPCEEg50XXySCtDGEjB6ARIjU3gSInficLoRwAAAEiFwHQgTItF4EiNNf4nAQBIid9MifJIicFNifkwwOj8AQAA6xdIjTUFKAEASInfTInyTIn5MMDo4wEAAEiDxAhbQV5BX13DVUiJ5UFXQVZBVUFUU0iD7BhIiU3IQYnWSIl9wEyNPYUBAABIi0YISMdF0AAAAACDeAgGD4VcAQAASIsAgHgKAA+FTwEAAEiLWCBIi33ASYn16FgEAABBicRBjXYBSInfRIni6B4cAABIi03ISIkBSIXAdUNIid9EieZEifLowPj//4nBg+E/g/kLD4cFAQAASWMMj0wB+UyJ7v/hQYnGQcHuF8HoBg+2wEE5xg+Ccf///+neAAAATI0tsCcBAEyJbdDpzgAAAEiLSzhIhckPhKgAAADB6BdIiwTBSIPAGOmfAAAASItLEMHoDkjB4ARIiwQBSIPAGEiLTchIiQFIjQVvJwEA6YcAAADB6A5IjQ2QHwEA9sQBdBpIi1MQD7bASMHgBIN8AggEdQhIiwwCSIPBGEiLRchIiQhIjQU6JwEA607B6A5IjQ1XHwEA9sQBdBpIi1MQD7bASMHgBIN8AggEdQhIiwwCSIPBGEiLRchIiQhIjQVFHwEA6xVIjQUhHwEASItNyEiJAUiNBfAmAQBIiUXQSItF0EiDxBhbQVxBXUFeQV9dw/T+///t////7f///+3///8f////PP///2L////t////7f///+3////t////m////1VIieVBV0FWQVRTSIHsIAEAAEmJ/ITAdDgPKYXw/v//DymNAP///w8plRD///8PKZ0g////DymlMP///w8prUD///8PKbVQ////Dym9YP///0yJjej+//9MiYXg/v//SImN2P7//0iJldD+//9IiwXIgAQASIsASIlF2EiNhcD+//9IiUWASI1FEEiJhXj////HhXT///8wAAAAx4Vw////EAAAAEiNlXD///9MiefocWYAAEmJxkmLXCQoSItDCIN4CAZ1VUiLAIB4CgB1TEyJ50iJ3ujAAQAAQYnHSItDCEiLAEiLQCBIi3BASIPGGEiNXZBIid+6PAAAAOhMagAASI01hCUBAEyJ50iJ2kSJ+U2J8DDA6I1pAABMiefozgAAAEiLBRKABABIiwBIO0XYdRBIgcQgAQAAW0FcQV5BX13D6OoSAQBVSInli0YIg8D9g/gCSA9C8kiNFcskAQBd6R78//9VSInlQVdBVlNIg+wYSYnXSInzSYn+SI112EiJ3+ho4AAASIXASQ9F30iNFaEkAQBMifdIid7o4/v//0iDxBhbQV5BX13DVUiJ5UhjSghIjQVxkAQASIsMyEhjVghIixTQikICOkECdRBIjTV3JAEAMMDoI/7//+sOSI01iCQBADDA6BP+//8xwF3DVUiJ5UFXQVZTUEiJ+0yLs7AAAABNhfZ0eUyLe0BDg3w+CAZ0DUiJ374FAAAA6KUBAABIi0MQSItI8EiJCItI+IlICEuLDDdIi0MQSIlI8EOLTDcIiUj4SItzEEiLQzhIKfBIg/gQfxFIid++AQAAAOgTBAAASItzEEiNRhBIiUMQSIPG8EiJ37oBAAAA6OoKAABIid++AgAAAEiDxAhbQV5BX13pLgEAAFVIieVTUEiJ8+guAAAAuf////+FwHgcSItLCEiLCUiLSSBIi1EoMclIhdJ0BkhjwIsMgonISIPECFtdw1VIieVIi1YIuP////+DeggGdS5IiwqAeQoAdSVIOXcodAZIi0YY6wtIi0cwSIlGGEiLCkiLSSBIK0EYSMHoAv/IXcNVSInlifGD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CFtdw1VIieVBVlNJifZIifsx9roBAAAA6C9s//9Iid9MifYx0ugkav//SI0VH/sAAEiJ377+////W0FeXelRbf//VUiJ5UFWU0mJ/kiNFRr6AAC+AQAAAOicef//SInDSIs76BDnAABIxwMAAAAAhcAPlMAPtvBMifcx0ltBXl3p5QAAAFVIieVTUEiJ++i1Z///SI014PkAAEiJ37oaAAAA6Pln//+4AgAAAEiDxAhbXcNVSInlQVdBVkFUU0mJzkGJ10mJ9EiJ++grAQAATIkgRYX/fh1Iid++/////+jlYv//SInfvu/Y//9Eifroc23//0iJ377+////6Mhi//9Iid++/v///+hibv//SInfvv3///9MifJbQVxBXkFfXeltbP//VUiJ5UFWU0mJ/kiNFTb5AAC+AQAAAOi4eP//SInDSIs76ArnAABIxwMAAAAAg/j/D5XAD7bwTIn3MdJbQV5d6QAAAABVSInlQVdBVkFUU0mJ14nzSYn86E7lAACF23QUuwEAAABMiee+AQAAAOhYaf//61VMYzBMiefoo2b//0SJ9+gn5wAATYX/dBlIjTW6+AAATInnTIn6SInBMMDos2f//+sUSI01nfQAAEyJ50iJwjDA6J1n//9MiedMifbolGb//7sDAAAAidhbQVxBXkFfXcNVSInlQVZTSIn7vggAAADoCnL//0mJxknHBgAAAABIjRVO+AAASInfvvDY///oVGn//0iJ377+////6KNs//9MifBbQV5dw1VIieVTUEiJ+74BAAAA6J9h//+D+P91EkiJ377v2P//ugIAAADoqmn//0iJ3+hHCQAASInfSIPECFtd6ZYKAABVSInlU1BIifu+AgAAAOgNBAAASInH6O7kAACFwA+UwA+28EiJ3zHSSIPECFtd6bb+//9VSInlSI0Vou8AAL4BAAAA6PkHAAC4AQAAAF3DVUiJ5UFXQVZTUEiJ+74BAAAA6Axh//9Iid+FwH5YvgEAAAAx0uhMdv//SYnGSInf6PX+//9JicdIjTVS7wAATIn36JHkAABJiQdIhcB1C0iJ30yJ9ug9CAAASInf6DNe//9Iid+JxuiNYP//SInfvgEAAADrKb7v2P//ugEAAADowGj//0iJ3+hdCAAASInfvgEAAADoX2D//0iJ3zH26Hxn//9IjTXcCAAASInfugIAAADoxmb//7gBAAAASIPECFtBXkFfXcNVSInlQVdBVkFUU0iJ+74BAAAAMdLolHX//0mJxkiNFaXuAABIid++AgAAADHJ6CJ1//9JicdIid/oJP7//0mJxEyJ90yJ/ujE4wAASYkEJEiFwHQOuAEAAABbQVxBXkFfXcNIid8x9kyJ8ltBXEFeQV9d6Vr9//9VSInlSI0V//YAAL4CAAAA6J0GAAC4AQAAAF3DVUiJ5UFXQVZBVFNIifu+AQAAADHS6AB1//9JicZIjRUR7gAASInfvgIAAAAxyeiOdP//SYnHSInf6JD9//9JicQx/+gW4wAATIn3TIn+6N3jAABJiQQkSIXAdA64AQAAAFtBXEFeQV9dw0iJ3zH2TInyW0FcQV5BX13pv/z//1VIieVTUEiJ+74BAAAA6OMBAABIid9Iica6AQAAAEiDxAhbXeksAgAAVUiJ5UFWU0iJ++gX/f//SYnG6DfkAABJiQZIhcB0CrgBAAAAW0FeXcNIid8x9jHSW0FeXeld/P//VUiJ5UFWU0iJ+74BAAAA6NZ1//9Iid++AQAAAOhZYv//SYnGSI0VNfUAAEiJ377w2P//6Dtm//9NhfZ0PkiJ374BAAAA6Exn//+FwHQtSInfvv7///+6/////+hbX///hcB0F0mDPgB0G0iNNXH1AABIid+6BAAAAOsZSInf6Lhi///rFEiNNUr1AABIid+6CwAAAOj6Yv//uAEAAABbQV5dw1VIieVTUEiJ+74CAAAA6N4AAABIid9Iica6AQAAAEiDxAhbXekAAAAAVUiJ5UFXQVZBVUFUU1CJ00mJ90mJ/uhxW///QbwBAAAAg/gBD4SCAAAAQbwBAAAAQb0BAAAAQSnFTIn3id7o113//4P4A3UpMMlFheR0UkyJ94ne6Ktf//9Mif9IjTWh9AAAsAHoa+EAAIXAD5/B6zBMifeJ3kiNVdDo7nL//zDJRYXkdBtIi1XQSInHvgEAAABMifnoceEAAEg7RdAPlMH/w0QPtuFB/8V1jUyJ90SJ5jHS6Nj6//9Ig8QIW0FcQV1BXkFfXcNVSInlQVdBVlNQifNJif6+79j//4na6Fll//9Mife+/////+i+YP//TIs4TYX/dSH/y0hjw0iNDa9VBABIixTBSI012vMAAEyJ9zDA6LBv//9MifhIg8QIW0FeQV9dw1VIieVBV0FWQVVBVFNIg+wYQYnVSYn2SYn86EZa//+Jw0yJ9+gZ4AAAg/sBdSFMiedMifbowAEAAEyJ8UGJxkSJbcxFjW0BSInL6V0BAACNcxNIjRWb8wAATInn6Bpz//9BvwIAAABBKd9EiW3MTInzTInnRInu6Hdc//+D+AN1SUyJ50SJ7uiCXv//SIXAD4WCAAAASInf6E3gAABJid6Jw4nfTIn26HzhAABMiecx9jHS6Ohg//+D+/9MifMPlcBED7bw6a8AAABJid5MiedEie4x0uiMXv//SInDSIXbdAWAOyp0EkyJ50SJ7kiNFQnwAADotW3//w++QwGD+GF0KIP4bEyJ83U9TInnSIne6OQAAADrDkyJ50iJ3kiJwujPAQAAQYnG609MiedMifNIid5Ix8L/////6LUBAABBvgEAAADrMoP4bnVDSInfSI01wPIAAEiNVdAwwOhx3wAAg/gBdUDyDxBF0EyJ5+juX///Qb4BAAAAQf/FRYX/dCtB/8dFhfYPheT+///rHUiNFXHyAABMiedEie7oDW3//0GJxetBQf/FRTH2SInf6NDeAACFwHQRTInnMfYx0uim+P//QYnF6x5FhfZ1FUyJ577+////6JxY//9MiefoZV///0QrbcxEiehIg8QYW0FcQV1BXkFfXcNVSInlQVdBVkFVQVRTSIHsKAQAAEmJ90mJ/kyLLdJKBABJi0UASIlF0EiNnbj7//9Iid7ovHf//0iJ3+hteP//SInDSInfvgAEAABMifroRN4AAEiFwHRCTI2luPv//0iJ3+iA3wAASIXAdAeAfAP/CnRLSAGFuPv//0yJ5+greP//SInDSInfvgAEAABMifroAt4AAEiFwHXFSI29uPv//+jfd///TIn3vv/////oNl3//0iFwA+VwA+2wOscSI1A/0gBhbj7//9Ijb24+///6LB3//+4AQAAAEmLTQBIO03QdRJIgcQoBAAAW0FcQV1BXkFfXcPo7twAAFVIieVBV0FWQVVBVFNIgewoBAAASYnVSYn3SYn+SIsF1EkEAEiLAEiJRdBMjaW4+///TInm6L92//+7AAQAAEyJ5+hrd///TDnrSQ9H3UiJx74BAAAASInaTIn56GXdAABIAYW4+///STnFdClJKcVIOdh0ykiNvbj7///oCXf//0yJ977/////6GBc//9IhcAPlcDrDkiNvbj7///o6Hb//7ABSIsNTUkEAEiLCUg7TdB1FQ+2wEiBxCgEAABbQVxBXUFeQV9dw+gg3AAAVUiJ5UFXQVZBVUFUU1BJideJ80mJ/r4BAAAA6BFZ//+FwH5kTIn3vgEAAAAx0uhxW///SYnETIn3TYXkdCno9fb//0mJxUyJ50yJ/uiV3AAASYlFAEiFwHUfTIn3TInm6EAAAADrEuiMAAAATIn3vgEAAADojlj//0yJ977v2P//idroHWP//0yJ977v2P//idpIg8QIW0FcQV1BXkFfXemuYP//VUiJ5UFWU0mJ9kiJ++hX2wAAizjoVN0AAEiNNezuAABIid9MifJIicEwwOjlXf//SInfvv////8x0ujAWv//SInfvgEAAABIicJbQV5d6fRp//9VSInlQVZTSYn+SI0Vou4AAL4BAAAA6CRu//9IicNIiwNIhcB1FEiNNTXvAABMifcwwOixav//SIsDW0FeXcNVSInlU1BIifvos////0iJ374BAAAAMdLoDAAAALgBAAAASIPECFtdw1VIieVBVlNBidZIifvolVf//0iJ30SJ9uixXv//SI01EQAAAEiJ37oCAAAAW0FeXen3Xf//VUiJ5UFXQVZBVFNJif++7dj//+gYW///SIsYSIXbdRFIjTW77gAATIn/MMDoGmr//0yJ/0iJ3uhm/P//QYnESInf6ObaAACFwHQo6CnaAACLOOgm3AAASI01uukAAEyJ/0iJwjDAW0FcQV5BX13p2Gn//0G+AQAAAEWF5HU2TIn/vuzY///oYFn//0Ux9oXAdCJFMfZMif8x9uiBVP//TIn/vu3Y///oxlb//0yJ/+gMAAAARInwW0FcQV5BX13DVUiJ5VNQSIn7vgEAAADo0V///0iNFR/uAABIid++/////+hCXv//SInfvv/////oGVr//0iJ30iDxAhbXf/gVUiJ5VNQSIn76Fb+//9IicfoHtoAAIXAD5TAD7bwSInfMdJIg8QIW13p5vP//1VIieVTUEiJ++go/v//SInfSInGugIAAABIg8QIW13pWPn//1VIieVBV0FWU1BIifvoAP7//0mJxkiNFdLtAABIjQ2RTwQASInfvgIAAADohWr//0xj+EiJ374DAAAAMdLoKW7//0iNDdvgAABCixS5TIn3SInG6NjZAACFwHQWSInfMfYx0kiDxAhb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rNwAAEiJ3+gj////hcB0D0iNNZzcAABIid/oEP///4sDQbwABQAA6wKJA4P4f3cNSGPAQYtEhzxEIeDrDInHvgAFAADo6cYAAIsLhcB1DL5fAAAAg/lfdTfrAonOSInf6Dz+//9Ii3tASIsHSI1I/0iJD0iFwHUH6K+zAADrqkiLRwhIjUgBSIlPCA+2AOuZSInfMfboB/7//0iLQ0hIizhIi0AISIXAdCVAinNYikwH/0iNUP+A+S51BUCIdAf/SIXSSInQdeZIi0NISIs4TIn26JEYAACFwHVU6ITHAABEikNYsi5IhcB0BUiLAIoQiFNYSItDSEiLOEiLQAhIhcB0IIpMB/9IjXD/RDjBdQSIVAf/SIX2SInwdedIi0NISIs4TIn26D0YAACFwHQJW0FcQV5BX13DSItTSEiLQghIhcB0IUCKe1hIixKKTAL/SI1w/0A4+XUFxkQC/y5IhfZIifB15kiNNUnbAABIid+6HAEAAFtBXEFeQV9d6Qvv//9VSInlU1BIiftIjTUY2QAASI0VPz0EAOjsW///8g8QBZLNAABIid/oD0f//0iNFcDbAABIid++/v///+gtTP//8g8QBXbNAABIid/o60b//0iNFZ/bAABIid++/v///+gJTP//SI0VkNsAAEiJ377/////6OJJ//9IjRWB2wAASInfvv7////o4Uv//7gBAAAASIPECFtdw1VIieVTUEiJ+74BAAAA6FZZ//9mD1QFM80AAEiJ3+iARv//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgEAAADoJ1n//+gZxQAASInf6FRG//+4AQAAAEiDxAhbXcNVSInlU1BIifu+AQAAAOj7WP//6PPEAABIid/oKEb//7gBAAAASIPECFtdw1VIieVTUEiJ+74BAAAA6M9Y///yDxFF8EiJ374CAAAA6L1Y//8PKMjyDxBF8Oi5xAAASInf6OJF//+4AQAAAEiDxAhbXcNVSInlU1BIifu+AQAAAOiJWP//6IfEAABIid/otkX//7gBAAAASIPECFtdw1VIieVTUEiJ+74BAAAA6F1Y///oZ8QAAEiJ3+iKRf//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgEAAADoMVj//+hlxAAASInf6F5F//+4AQAAAEiDxAhbXcNVSInlU1BIifu+AQAAAOgFWP//6DPEAABIid/oMkX//7gBAAAASIPECFtdw1VIieVTUEiJ+74BAAAA6NlX///yD14FlssAAEiJ3+gDRf//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgEAAADoqlf//+jwwwAASInf6NdE//+4AQAAAEiDxAhbXcNVSInlU1BIifu+AQAAAOh+V///6OjDAABIid/oq0T//7gBAAAASIPECFtdw1VIieVTUEiJ+74BAAAA6FJX///yDxFF8EiJ374CAAAA6EBX//8PKMjyDxBF8OiowwAASInf6GVE//+4AQAAAEiDxAhbXcNVSInlU1BIifu+AQAAAOgMV///SI199OiowwAASInf6DVE//9IY3X0SInf6EZE//+4AgAAAEiDxAhbXcNVSInlU1BIifu+AQAAAOjQVv//8g8RRfBIid++AgAAAOhYV///8g8QRfCJx+iNwwAASInf6ORD//+4AQAAAEiDxAhbXcNVSInlU1BIifu+AQAAAOiLVv//6HnDAABIid/ouEP//7gBAAAASIPECFtdw1VIieVTUEiJ+74BAAAA6F9W///oR8MAAEiJ3+iMQ///uAEAAABIg8QIW13DVUiJ5UFXQVZTUEmJ/uhyPP//QYnHuwEAAABMife+AQAAAOgfVv//QYP/AnwhDyjI8g8RTeD/w0yJ94ne6AVW///yD19F4EE53w8oyHXiTIn36CpD//+4AQAAAEiDxAhbQV5BX13DVUiJ5UFXQVZTUEmJ/ugMPP//QYnHuwEAAABMife+AQAAAOi5Vf//QYP/AnwhDyjI8g8RTeD/w0yJ94ne6J9V///yD11F4EE53w8oyHXiTIn36MRC//+4AQAAAEiDxAhbQV5BX13DVUiJ5VNIg+wYSIn7vgEAAADoZFX//0iNffDofsIAAPIPEUXo8g8QRfBIid/og0L//0iJ3/IPEEXo6HZC//+4AgAAAEiDxBhbXcNVSInlU1BIifu+AQAAAOgdVf//8g8RRfBIid++AgAAAOgLVf//DyjI8g8QRfDoOcIAAEiJ3+gwQv//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgEAAADo11T///IPWQWUyAAASInf6AFC//+4AQAAAEiDxAhbXcNVSInlQVdBVkFUU0iD7BBJifzo68EAAEhjwEhpyAEAAEBIicpIweo/SMH5PQHRacn///9/KcjyDyrA8g9eBUbIAADyDxFF2EyJ5+iqOv//g/gCdE2D+AEPha4AAABMiee+AQAAAOjrVP//SInDhdt/FEiNFc/WAABMiee+AQAAAOi9Tv//8g8qy/IPEEXY8g9ZweiTwAAA8g9YBfHHAADrZbsBAAAATInnvgEAAADoolT//0mJxkyJ574CAAAA6JJU//9JicdFOf5+FEiNFXXWAABMiee+AgAAAOhjTv//RCnzRAH78g8qy/IPEEXY8g9ZwegzwAAADyjID1fA8kEPKsbyD1jBTInn6wyFwHUfTInn8g8QRdjo2UD//7gBAAAASIPEEFtBXEFeQV9dw0iNNSTWAABMiecwwEiDxBBbQVxBXkFfXenrTv//VUiJ5b4BAAAA6PxT//+Jx+jewAAAMcBdw1VIieVTUEiJ+74BAAAA6ERT///ovMAAAEiJ3+hxQP//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgEAAADoGFP//+iKwAAASInf6EVA//+4AQAAAEiDxAhbXcNVSInlU1BIifu+AQAAAOjsUv//8g9RwEiJ3+gaQP//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgEAAADowVL//+irwAAASInf6O4///+4AQAAAEiDxAhbXcNVSInlU1BIifu+AQAAAOiVUv//6HnAAABIid/owj///7gBAAAASIPECFtdw1VIieVBV0FWQVVBVFNQRInDSYnNSYnWSIl10EmJ/4nZwekfAdnR+UGLBjnIfQ8BwLsEAAAAg/gED03Y6xE52HwNTIn/TInOMMDot6n//0Ux5EjHwP3///8x0kn39Y1LAUhjyUg5wXYTSI01xdQAAEyJ/zDA6Iyp///rHUljFkkPr9VIY8tJD6/NTIn/SIt10OgYAAAASYnEQYkeTIngSIPECFtBXEFdQV5BX13DVUiJ5UFXQVZBVUFUU1BIictJidZJif9Ni28gSYt9GEH/VRBJicRNheR1EkiF23QNTIn/vgQAAADo46z//0wp80kBXXhMieBIg8QIW0FcQV1BXkFfXcNVSInlSI01JtQAADDA6PCo//8xwF3DVUiJ5UFXQVZTUEmJ/kiNNS7UAADorU///0iNNY4BAABMifcx0uhgQP//SI0VeNEAAEyJ977+////6JFD//9IjTUq0AAASI0VPDYEAEyJ9+gWU///TIn3vv/////opDn//0yJ977v2P//6NA4//9Mifcx9roEAAAA6AtC//9MjT00NgQAuwEAAABJizdMifcx0uj0P///TIn3vv7///+J2uj+Q///SYPHCP/Dg/sFddlIjRWU0wAATIn3vv7////oC0P//0iNNYjTAABIjRWG0wAASI0NiNMAAEyJ9+gJAQAASI01A9QAAEiNFQLUAABIjQ0F1AAATIn36OwAAABIjTU71AAATIn3ugkAAADoyj3//0iNFTHUAABMife+/v///+ipQv//SI0VP8cAAEyJ977w2P//uQIAAADolFP//0iNFQvUAABMife+/v///+h8Qv//TIn3MfYx0ugpQf//SI0V8tMAAEyJ977+////6FxC//9Mife+7tj//+iFOP//SI0VYTUEAEyJ9zH26NlR//9Mife+/v///+gVNv//uAEAAABIg8QIW0FeQV9dw1VIieVTUEiNFYfSAAC+AQAAAOhwTv//SInDSIs7SIX/dAq+AgAAAOgmuwAASMcDAAAAADHASIPECFtdw1VIieVBV0FWU1BJic9JifZIiftIidfoLbwAAEiFwHQ9SI0V/tMAAEiNDfrTAABIid9IicbovFP//0iNFezTAABIid9IicZMifnop1P//0iJ377+////6LM1///rC0iJ30yJ/ujhPP//SInfvv7///9MifJIg8QIW0FeQV9d6WNB//9VSInlQVdBVkFVQVRTSIHsiAAAAEmJ/UiLBZ4nBABIiwBIiUXQvgEAAAAx0ujlTP//SYnHTInv6Pk0//9BicZIjRW6xQAATInvvvDY///o/T7//0WNZgFMie9EieZMifro6z7//0yJ777/////6FE3//+D+AV0XkyJ777+////6MM0//9Mie++7tj//0yJ+rkBAAAA6M5R//9IhcB0HEiNNWPFAABMie9MifowwOjASf//QYnH6Y8BAABMie++/////+jSNv//TInvRInmTIn66I5A//9IjRWN0gAATInvvv/////oZz7//0yJ777/////6M02//+Jw0yJ777+////6EI0//+F23V6TInvvv/////ogzb//0iNFXrSAABMie++/v///+g5QP//TInvTIn+6JI7//9IjRUt0gAATInvvv7////oGkD//0yJ/74uAAAA6Gy7AABIhcBIjVABSQ9E10wp+kyJ70yJ/ugBO///SI0VJNIAAEyJ777+////6OA///9Mie++/////+gJNv//SI2VWP///0yJ774BAAAA6HSW//+FwHQrSI01occAAEiNlVj///9Mie/o6pf//4XAdBFMie++/////+g1Nv//hcB0EUiNNZXRAABMie8wwOiOSP//TInvvv7////oqDX//0yJ777+////6EJB//9Mie++/v///+g8M///RTH/QYP+Anw1uwEAAABFMf//w0yJ74ne6HE1//9Mie++/v///+hkNf//TInvvgEAAAAx0uiRQf//QTneddNIiwVsJQQASIsASDtF0HUVRIn4SIHEiAAAAFtBXEFdQV5BX13D6D+4AABVSInlQVdBVkFUU0iJ+74BAAAAMdLoiUr//0mJxkiJ374BAAAA6Koy//9IjRVcwwAASInfvvDY///onzz//0iJ374CAAAATIny6I88//9Iid++/////+hEN///hcB0NkiJ377/////6Hg4//9IjQ0GwAAASDnID4XDAQAASI01DdAAAEiJ30yJ8jDA6G9H///pqgEAAEiNFdDOAABIid++79j//+g0PP//SInfvv/////omjT//4P4BXQRSI01+c8AAEiJ3zDA6DNH//9IjTUIwgAASInfMdLoIDn//0G/AQAAAEyNJfPPAADrA0H/x0iJ377+////RIn66HM8//9Iid++/////+hENP//hcB1IkiJ377+////MdLopDb//0iJ30yJ5kyJ8kiJwTDA6M1G//9Iid9MifboFzn//0iJ374BAAAAugEAAADoE0D//0iJ377/////6PQz//+D+AZ0MkiJ377/////6HM0//9Iid+FwHUPvv7////oVTH//+lo////vgIAAADoMkP//+lZ////TI09374AAEiJ30yJ/ujLOv//SInfvgIAAABMifLoOz3//0iJ30yJ9uiUOP//SInfvgEAAAC6AQAAAOiQP///SInfvv/////ocTP//4XAdBBIid++AgAAAEyJ8uj9PP//SInfvgIAAABMifLo2jr//0iJ377/////6NQ2//9MOfh1KkiJ374BAAAA6Cs6//9Iid++/////+j3Mv//SInfvgIAAABMifLosTz//7gBAAAAW0FcQV5BX13DVUiJ5UFWU0iJ+74BAAAAMdLoQEj//0mJxkiNFQzOAABIid++79j//+hjOv//SInfvv/////oyTL//4P4BXQRSI01zc8AAEiJ3zDA6GJF//9Iid++/////0yJ8ugwOv//SInfvv/////oljL//4XAdRRIjTW9zwAASInfTInyMMDoBzj//7gBAAAAW0FeXcNVSInlQVZTSYn+vgEAAAAx0uixR///SI0Ve8wAAEyJ90iJxuheAQAASInDSIXbdBpMifdIid7ohlL//4XAdAtMifdIid7oAQUAALgBAAAAW0FeXcNVSInlQVdBVlNQSIn7vgEAAAAx0uhaR///SYnHSI0VucwAAEiJ30yJ/ugEAQAASYnGTYX2dChIid9Mif7oUAIAAEiJ30yJ9kiJwuipAgAAhcB0C0iJ30yJ9uiZBAAAuAEAAABIg8QIW0FeQV9dw1VIieVBV0FWU1BIifu+AQAAADHS6OxG//9JicZMife+LgAAAOhMtgAAMclIhcAPhIMAAABMKfBIid9MifZIicLoGjb//0iJ377/////MdLo0TP//0iNFRPMAABIid9IicboXgAAAEmJx02F/3RESInfTIn26KoBAABIid9Mif5IicLoAwIAAIXAdCeD+AJ0C0iJ30yJ/ujuAwAASI01+cwAAEiJ30yJ8kyJ+TDA6Ik2//+5AQAAAInISIPECFtBXkFfXcNVSInlQVdBVkFVQVRTUEmJ1EmJ/UiNFTLJAABIjQ2tzQAA6HdM//9JicZMie++79j//0yJ4uhBOP//TInvvv////8x0ugYM///SYnHTYX/dRRIjTV5zQAATInvTIniMMDoOEP//0iNNQ2+AABMie8x0uglNf//6wNJ/8dBigeEwA+EuwAAADw7dO5Mif++OwAAAOgatQAASYnETYXkdQ5Mif/oNLUAAEmJxE0B/EyJ4kwp+kyJ70yJ/ujdNP//TYXkdH5Mie++/////zHS6I8y//9Mie9IicZIjRWYvQAATInx6LdL//9IicNMie++/v///+jALf//SInfSI01W74AAOidswAASIXAdUpMie9IjTXazAAASInaMMDoWDX//0yJ777+////6Ist//9Mie++AgAAAOglP///TYnn6Tr///8x20iJ2EiDxAhbQVxBXUFeQV9dw0iJx+gWswAA6+RVSInlQVZTSInzSYn+SInfvi0AAADoOLQAAEiFwEiNcAFID0TzSI0VwscAAEiNDS/MAABMiffoBEv//0iNNSLMAABMifdIicIwwOjJNP//SInDTIn3vv7////o+Sz//0iJ2FtBXl3DVUiJ5UFXQVZBVUFUU0iD7ChIidNJifRJif1IjTXLywAASI0VycsAAEyJ4TDA6H80//9Mie++8Nj//+hMNv//TInvvv/////o3C7//0yJ74XAdA++/////+hfMv//SYnH63e+/v///+hALP//TInvvggAAADo1D7//0mJx0nHBwAAAABIjRWxyAAATInvvvDY///oHjb//0yJ777+////6G05//9IjTVBywAASI0VP8sAAEyJ70yJ4TDA6PIz//9Mie++/v///+gyLv//TInvvvDY///ovjf//02LN02F9nVL6FuxAACEwA+EjAAAAEiNdbhMiefo4bAAAIP4AQ+FjQAAAEiLfbhMiea6BgAAAOjZsAAASYnGSIt9uOjBsAAATYX2D4SrAAAATYk3TIn3SIne6LywAABIhcB0I0iJx+iRsAAAuwIAAABIhcB0dTHbTInvSInGMdLoJjT//+tkSI0198kAAEyJ70iJ2jDA6D4z//+7AgAAAOtJSI018skAAEyJ77oQAAAA6Ecy///rJ4PA/oP4A3cQSGPASI0NbyoEAEiLNMHrB0iNNSbKAABMie/odTL//0nHBwAAAAC7AQAAAInYSIPEKFtBXEFdQV5BX13DSI19xEiNdcBIjVXISI1N0Oj+rwAASIt10EyJ7+g3Mv//uwEAAABNiTfrxFVIieVBV0FWU1BJifZIifu+AQAAADHS6IAv//9JicdIid++/////zHS6G4v//9IjTX7yAAASInfTIn6TInxSYnAMMBIg8QIW0FeQV9d6YY///9VSInlQVdBVlNQSIn7Qb4BAAAAvgEAAAAx0ugLQv//SYnHSInfvgIAAAAx0uj5Qf//SInfTIn+SInC6HD9//9BicdFhf90OUiJ3+jdMP//SInfvv7////oRiv//0iNBeS6AABIjTXPyQAAQYP/AUgPRPBIid/oYTH//0G+AwAAAESJ8EiDxAhbQV5BX13DVUiJ5VNQSIn7vgEAAAC6BQAAAOjsQv//SInfvgEAAADo1DT//4XAdSlIid8x9roBAAAA6Go0//9Iid++/////+jaK///SInfvgEAAADo4Db//0iJ377u2P//6MAr//9IjRVIwwAASInfvv7////odjX//zHASIPECFtdw5CQVUiJ5bkIAAAAg/8QchKDwQj/x4n40eiD/x+Jx3fw6wKJ+IP4CHIFg8D4Cchdw1VIieWJ+cHpA4PhH3QK/8mD5weDzwjT54n4XcNVSInluf////+B/wABAAByFIn4wegIg8EIgf///wAAicd37usCifiJwEiNFbq2AAAPtgQQAchdw1VIieWLTwgxwDtOCHUug/kDdx2JybgBAAAASI0VMQAAAEhjDIpIAdH/4YsHOwbrBkiLB0g7Bg+UwA+2wF3D8g8QB/IPwgYAZg9+wIPgAevsZpDq////2P///97////s////VUiJ5UFWU0iD7BBJifZIiftIjXXo6NivAADyQQ8RBjHASItN6Eg52Q+EkgAAAIoRiNAMIDx4dTVIjXXoSInfuhAAAADor68AAGZID27AZg9iBcq1AABmD1wF0rUAAGYPfMBmQQ8TBkiLTeiKEbgBAAAAhNJ0SkyLNVsaBAC7AEAAAOsOSI1BAUiJReiKUQFIicGE0ngMD7bCQYtEhjwh2OsRD7b6vgBAAADoG60AAEiLTeiFwHXNgDkAD5TAD7bASIPEEFtBXl3DVUiJ5UFXQVZBVUFUU0iD7FhJidVJifRJif5IiwX2GQQASIsASIlF0EiNNXq3AADo5QIAAEyJ574lAAAA6KCuAABBvwEAAABIhcAPhFkCAADHRZQDAAAA6weDRZQCTYn8SInCSInDTCniTYt+EEyJ90yJ5uhTOQAASYkHQcdHCAQAAABJi0YQSYtOOEgpwUiD+RB/EUyJ974BAAAA6LOe//9Ji0YQSI1IEEmJThBJid9BD75XAYP6YncYg/olD4XZAAAATIn3SI01wsYAAOloAQAAg/pvdy+D+mN0doP6ZA+FjgAAAEljdQBIg/4oD4f3AAAASYtVEEgB8oPGCEGJdQDp8AAAAIP6cHUhSWNNAEiD+SgPh54AAABJi0UQSAHIg8EIQYlNAOmXAAAAg/pzdWtJY00ASIP5KA+H2wAAAEmLRRBIAciDwQhBiU0A6dQAAABJY00ASIP5KA+HnAAAAEmLRRBIAciDwQhBiU0A6ZUAAACD+mZ1JEljdQRIgf6gAAAAD4fSAAAASYtVEEgB8oPGEEGJdQTpywAAAMZFmyVBikcBiEWcxkWdAEyJ90iNdZvpgwAAAEmLRQhIjUgISYlNCEyLAEiNXaBIid8x9rooAAAASI0NscUAADDA6CWrAABMifdIid7rUEmLVQhIjXIISYl1CPIPKgLrb0mLRQhIjUgISYlNCIoAiEWexkWfAEyJ90iNdZ7rIEmLRQhIjUgISYlNCEiLMEiF9kiNBVLFAABID0TwTIn36NoAAABJg8cCTIn/viUAAADokawAAEiFwA+FAP7//+tHSYtVCEiNcghJiXUI8g8QAvIPEQHHQBgDAAAASYtGEEmLTjhIKcFIg/kQfxFMife+AQAAAOjAnP//SYtGEEiDwBBJiUYQ651NifxEi32UTIn3TInm6GUAAABJi1YQSStWGEjB6gT/ykGNdwFMiffopX8AAEljz0iJyEj30EjB4ARIweEESYtWEEiJ1kgpzkmJdhBIiwQCSIsNHxcEAEiLCUg7TdB1E0iDwBhIg8RYW0FcQV1BXkFfXcPo9KkAAFVIieVBV0FWU1BJifZIiftMi3sQTIn36NarAABIid9MifZIicLoiDYAAEmJB0HHRwgEAAAASItDEEiLSzhIKcFIg/kQfxFIid++AQAAAOjom///SItDEEiDwBBIiUMQSIPECFtBXkFfXcNVSInlU0iB7NgAAACEwHQpDymFUP///w8pjWD///8PKZVw////DyldgA8pZZAPKW2gDyl1sA8pfcBMiY1I////TImFQP///0iJjTj///9IiZUw////SIsdOBYEAEiLA0iJRfBIjYUg////SIlF4EiNRRBIiUXYx0XUMAAAAMdF0BAAAABIjVXQ6PD7//9IiwtIO03wdQpIgcTYAAAAW13D6OWoAABVSInlQVdBVkFVQVRTUEiJ00mJ90mJ/kGKBzw9dSZJ/8dMifdMif5IidrouqoAAELGRDP/AEiDxAhbQVxBXUFeQV9dwzxAdUpNjW8BTInv6I+qAABJicRBxgYASI1D+Ek5xHYmSI01hL0AAEyJ90jHwv/////ocagAALgIAAAASCnYTAHgTY1sBwFMifdMie7rckiNNdDCAABMif/oMKoAAEi5W3N0cmluZyBJiQ5mQcdGCCIASIPD70g52EgPRthBgDwfAHQhTIn3TIn+SInaSMfB/////+gbqAAASI01DL0AAEyJ9+sGTIn3TIn+SMfC/////+jxpwAASI01dcIAAEyJ90jHwv////9Ig8QIW0FcQV1BXkFfXenNpwAAVUiJ5UiNNR67AABIjRUPIwQA6Pw9//+4AQAAAF3DVUiJ5VNQSIn76AGoAABmSA9uwGYPYgU4sQAAZg9cBUCxAABmD3zA8g9eBVyxAABIid/o8Sj//7gBAAAASIPECFtdw1VIieVBV0FWQVVBVFNIgewIBQAASYn/SIsFUhQEAEiLAEiJRdBIjRV8vAAAvgEAAAAxyeg5Of//SInDTIn/vgIAAADoLyT//4XAfhRMif++AgAAAOhSO///8kgPLMDrBzH/6DmpAABIiYX4/v//gDshdRRIjb34/v//6AGoAABJicZI/8PrD0iNvfj+///o/6cAAEmJxk2F9g+EywAAAEiNNSrDAABIid/okqgAAIXAD4TBAAAAxoX1/v//JcaF9/7//wBMjaXY+v//TIn/TInm6JtA//9Mjb0A////TI2t9f7//+sDSP/DigOEwHRqPCV1B4pLAYTJdTNIi43Y+v//SI2V8P7//0g50XIRTInn6BVB//+KA0iLjdj6//9IjVEBSImV2Pr//4gB67lI/8OIjfb+//9Mif++yAAAAEyJ6kyJ8egVqAAATInnTIn+SInC6DJA///rjUiNvdj6///onUD//+lWAQAATIn/6Fon///pSQEAAEyJ/zH2ugkAAADoSiv//0ljNkyJ/+hxJ///SI0V1sEAAEyJ/77+////6HIs//9JY3YETIn/6FEn//9IjRVFvAAATIn/vv7////oUiz//0ljdghMif/oMSf//0iNFZrBAABMif++/v///+gyLP//SWN2DEyJ/+gRJ///SI0Vf8EAAEyJ/77+////6BIs//9Bi0YQ/8BIY/BMif/o7Cb//0iNFV7BAABMif++/v///+jtK///QYtGFAVsBwAASGPwTIn/6MQm//9IjRU8wQAATIn/vv7////oxSv//0GLRhj/wEhj8EyJ/+ifJv//SI0VacEAAEyJ/77+////6KAr//9Bi0Yc/8BIY/BMif/oeib//0iNFUnBAABMif++/v///+h7K///QYt2IIX2eBxMif/oyCj//0iNFdPAAABMif++/v///+hXK///SIsFqREEAEiLAEg7RdB1F7gBAAAASIHECAUAAFtBXEFdQV5BX13D6HqkAABVSInlU1BIifu+AQAAAOisOP//8g8RRfBIid++AgAAAA9XwOjzOP//8kgPLPDySA8sffDoxqQAAEiJ3+i5Jf//uAEAAABIg8QIW13DVUiJ5VNQSIn7vgEAAAAx0jHJ6CI2//9IicfoN6YAAEhj8EiJ3+igJf//uAEAAABIg8QIW13DVUiJ5b4BAAAAMdLoGTn//4nH6GukAABVSInlU1BIifu+AQAAADHS6DA2//9Iicfo2KQAAEiJ30iJxujOJf//uAEAAABIg8QIW13DVUiJ5UFWU0mJ/r4BAAAAMdLo+zX//0iJw0iJ3+gqpQAAhcAPlMAPtvBMifdIidpbQV5d6QYDAABVSInlQVZTSIn7vgEAAAAx0ujDNf//SYnGSInfvgIAAAAx0uixNf//TIn3SInG6OakAACFwA+UwA+28EiJ30yJ8ltBXl3pvAIAAFVIieVBVlNIifu+AQAAADHSMcnoHjX//0mJxkiNFVC/AABIjQ0cHwQASInfvgIAAADocDT//0hjwEiNDbWsAACLPIFMifbokKQAAEiJ30iJxujqJP//uAEAAABbQV5dw1VIieVBVlNIg+xASIn7vgEAAADoxB///4XAD44BAQAASInfvgEAAAC6BQAAAOhlNv//SInfvgEAAADoIR3//0iNNY2+AABIid8x0uiLAQAAiUW4SI01CLkAAEiJ3zHS6HcBAABIjTVsvgAAiUW8SInfugwAAADoYAEAAEiNNVq+AABBvv////+JRcBIid+6/////+hDAQAASI01Qb4AAIlFxEiJ37r/////6CwBAABIjTUwvgAA/8iJRchIid+6/////+gTAQAASI0VHL4AAAWU+P//iUXMSInfvv/////ohSb//0iJ377/////6Ose//+FwHQQSInfvv/////oKSH//0GJxkiJ377+////6E4c//9EiXXYSI19uOgOowAA6wcx/+jdowAASIP4/3UKSInf6Psi///rDfJIDyrASInf6AUj//+4AQAAAEiDxEBbQV5dw1VIieVBVlNIg+wwSIn7TIs1bQ4EAEmLBkiJRehIuF9YWFhYWFgASIlFyEi4L3RtcC9sdWFIiUXASI19wOiTogAAg/j/dRNIjTUOvQAASInfMMDo4TD//+sYicfohKEAAEiNdcBIid/oISP//7gBAAAASYsOSDtN6HUJSIPEMFtBXl3D6PCgAABVSInlQVdBVlNQQYnWSYn3SIn7vv////9MifrobiX//0iJ377/////6DUe//+FwHQSSInfvv/////o3h///0mJxusFRYX2eBtIid++/v///+gwG///RInwSIPECFtBXkFfXcNIjTWsvAAASInfTIn6MMBIg8QIW0FeQV9d6S8w//9VSInlQVdBVlNQSYnWQYn3SIn76EWgAABFhf90FUG+AQAAAEiJ374BAAAA6E0k///rO0xjOEiJ3+iYIf//RIn/6ByiAABIjTW0swAASInfTInySInBMMDorSL//0iJ30yJ/uikIf//Qb4DAAAARInwSIPECFtBXkFfXcOQkFVIieVBV0FWQVRTSIHswAIAAEiJy0mJ9kmJ/EiJVchIid/oyaEAAEyJ50iJ3kiJwuh7LAAATI19gEyJ50yJ/kyJ8kiJwegnyv//SI21KP3//0yJ/+hTAAAASIuFKP3//8ZAcgJMif/olcr//0yJ/+g8AQAAi0WQPR8BAAB0DkiNfYC+HwEAAOjxJAAASI19gOiXCgAASIuFKP3//0iBxMACAABbQVxBXkFfXcNVSInlQVdBVkFUU0iJ80mJ/E2LfCQ4TIn/6Emk//9JicZMiTNJi0QkMEiJQxBMiWMYTIl7IEmJXCQwx0MwAAAAAMdDNP/////HQzj/////SMdDKAAAAADGQ0oAZsdDSAAAx0NEAAAAAEjHQzwAAAAASYtEJFBJiUZAQcZGcwJMif8x9jHS6ItQAABIiUMISYtPEEiJAcdBCAUAAABJi0cQSYtPOEgpwUiD+RB/EUyJ/74BAAAA6NOQ//9Ji0cQSI1IEEmJTxBMiXAQx0AYCQAAAEmLRxBJi084SCnBSIP5EH8RTIn/vgEAAADonpD//0mLRxBIg8AQSYlHEFtBXEFeQV9dw1VIieVBV0FWQVVBVFNIg+x4SYn96EELAABMjWXAQYtFEI2I/P7//4P5Gw+GkAAAAAX+/v//g/gTdy9Bi10ESI0N5wgAAEhjBIFIAcj/4EyJ7+j7yP//TInv6AcMAABBvwEAAADpiQgAAEmLXTBMie9IjXWo6GYMAACDfagNdSNIiwNIi0AYSGNNsIsUiL7/P4D/IfKBygBAAACJFIjpTQgAAEjHRaAAAAAATInvSI11oLoBAAAA6I4NAADpLwgAALoHAAEID6PKD4JHCAAA6V3///9Mie/odsj//0yJ7+ihCgAATInvvgYBAAC6AwEAAInZ6fQFAABJi00wSImNeP///8dFkP/////GRZYBikFKiEWUxkWVAEiLQShIiUWISI1FiEiJQShMie/oIsj//0yJ7+i8GgAASYnHQYtFEIP4LHQLPQsBAAAPhacFAACJXYBNi2UwQYtEJDyJhXT///9Mie9IjTXZugAAug8AAADo/cb//0yJ70iJxjHS6AYZAABMie9IjTXIugAAugsAAADo3Mb//0G+AQAAAEyJ70iJxroBAAAA6NwYAABMie9IjTWqugAAug0AAADossb//0yJ70iJxroCAAAA6LgYAABMie9Mif66AwAAAOioGAAAuwQAAABBi0UQg/gsdS5Mie/oXMf//0yJ7+j2GQAATInvSInGidrofRgAAP/DQYtFEIP4LHTYg8P9QYneTInvvgsBAADoFQ4AAEWLfQRMie9IjV3ASIne6CYOAABMie++AwAAAInCSInZ6HcOAABMiedJidy+AwAAAOh8VP//TInvi7V0////RIn6RInxRTHA6C0gAACLXYDpUwYAAEGJ3kyJ7+jKxv//TInvTInm6NkcAADrC0yJ70yJ5ugAGwAAQYtFEIP4Og+EtQMAADHSg/guD4W6AwAA69tBid5Ji10wx0XA/////+sd6BhS//9Iid9MieaJwuhuUv//SInfRIn+6PtS//9Mie/oFSEAAEGJx0GLRRBIid89BAEAAA+EoAMAAD0FAQAAdL9MieZEifroNFL//+m2AwAATInv6C/G//9Bi0UQTInvPQkBAAAPhRACAADoGMb//02LdTBMie/orhgAAEUx/0yJ70iJxjHS6DIXAABBi0Y8x0XQ/////8dF1P/////HRcAGAAAAiUXITIn3vgEAAADomVP//0yJ774BAAAA6CEYAABBi00ETInvSI1diEiJ3jHS6DIUAABMifdMieZIidroeVn//0EPtkZKQQ+3hEbCAAAASMHgBEGLTjBJixZIi1IwiUwCCOkeBQAATYt9MEyJ/+jLUf//QYnGx0XI/////8ZFzgFBikdKiEXMxkXNAEmLRyhIiUXATYlnKMdFkP/////GRZYAQYpHSohFlMZFlQBJi0coSIlFiEiNRYhJiUcoTInv6B7F//9Mie/oxfv//0yJ774UAQAAuhABAACJ2eh7BwAATInv6HsdAACJw4B9lQAPhUcBAABMif/ooh0AAEmLfTCJ3ulgAQAATYt1MEyJ7+jPxP//QYtNEDHAgfkDAQAAD4dSAQAAg/k7uwAAAAAPhWIBAADpvQMAAIldgEmLXTBMie/om8T//0iJ3+jtUP//QYnGTInv6AkdAABBicfHRcj/////xkXOAYpDSohFzMZFzQBIi0MoSIlFwEyJYyhMie++AwEAAOhDCwAATInv6IIGAABIid/o3E///0iJ34nGRIny6KBQ//9Mie++BgEAALoVAQAAi02A6J4GAABIid/o2RwAAEiJ30SJ/uiiUP//6asDAADoqhYAAEyJ70iJxjHS6DEVAABBi0UQuwEAAADrI0yJ7+jow///TInv6IIWAABMie9IicaJ2ugJFQAA/8NBi0UQg/gsdNiD+D0PhYwCAABMie/ot8P//0yJ70yJ5ui8CgAA6X0CAABMie/oswYAAEmLfTCJ3ugkUP//TIn/6EgcAABJi10wTIn/6BVP//9Iid+JxkSJ8ujZT///TIn/6QQDAACBwfz+//+D+Rt3E7oHAAEID6PKuwAAAAAPgmACAABMie9MieboUgoAAInDi0XAg8DzTIn3TInmg/gBD4fnAQAAuv/////oXVL//4N9wA11HIP7AXUXSYsGSItAGEhjTciLFIiD4sCDyh2JFIhBD7ZGSrv/////6QMCAABMie9MieboMxcAALoBAAAATInvSI1diEiJ3kSJ8ehPEQAASYt9MEyJ5kiJ2uiVVv//SYt9MESJ9uilYf//6UwCAADoPk7//0iJ30yJ5onC6JRO//9Iid9Eif7oIU///0yJ7+iJwv//TInv6LQEAACLdcBIid/oBk///0yJ774GAQAAugoBAABEifHo2gQAAOn6AQAAg/g9D4VHAQAAiV2ATYtlMEGLRCQ8iYV0////TInvSI01U7UAALoLAAAA6E3B//9Mie9IicYx0uhWEwAATInvSI01PrUAALoLAAAA6CzB//9Mie9Iica6AQAAAOgyEwAATInvSI01JrUAALoKAAAA6AjB//9Mie9Iica6AgAAAOgOEwAATInvTIn+ugMAAADo/hIAAEyJ7749AAAA6KcIAABMie9IjV3ASIneMdLorgkAAEmLfTBIid7omVL//0yJ774sAAAA6H0IAABMie9Iid4x0uiICQAASYt9MEiJ3uhzUv//QYN9ECwPhZQAAABMie/oZcH//0yJ70iJ3jHS6FwJAABJi30wSIneSYne6ERS///poQAAAIP7AXVI6N5T//+7AQAAAOtGx0XAAAAAADHATInvid6JwkyJ4eiOCAAATInvid7obBMAAOmqAAAATInvSI0137MAAOgQwP//TI1lwOt16O1R//9BD7ZGSkyJ94nGidroGU3//0G/AQAAAOt6SYneQYtcJDzyDxAF1J0AAEyJ5+jXT///TInnvgEAAACJ2onB6I1M//9Miee+AQAAAOhpTv//TInvi7V0////i12Aidq5AQAAAEG4AQAAAOjVGQAATYn0TInvvgYBAAC6CAEAAInZ6OcCAABIi714////6B4ZAABFMf9Bg30QO3UITInv6FDA//9Ji0UwD7ZISolIPEWF/w+ECPf//0mLRThm/0hgSIPEeFtBXEFdQV5BX13DIvf//6f3//899///Pff//z33//899///y/f//1D5//+N+f//Pff//+75//899///Pff//z33//+o+v//Svv//z33//899///Pff//3v7//9VSInlQVdBVkFUU0mJ/k2LZjBNi344SYscJDH26MgYAABMiecx9jHS6OBL//9JY0wkMInI/8B4GkiLcxhIY1NQSMHhAkjB4gJMif/o7Nb//+sITIn/6DjX//9IjUtQSI1TGEiJAkGLRCQwiQFJY0wkMInI/8B4GkiLcyhIY1NUSMHhAkjB4gJMif/ordb//+sITIn/6PnW//9IjUtUSI1TKEiJAkGLRCQwiQFJY0wkQInI/8B4GkiLcxBIY1NMSMHhBEjB4gRMif/obtb//+sITIn/6LrW//9IjUtMSI1TEEiJAkGLRCRAiQFJY0wkRInI/8B4GkiLcyBIY1NYSMHhA0jB4gNMif/oL9b//+sITIn/6HvW//9IjUtYSI1TIEiJAkGLRCREiQFJD79MJEhIjUEBSMHoPEiFwHUaSItzMEhjU1xIweEESMHiBEyJ/+jo1f//6whMif/oNNb//0iNS1xIjVMwSIkCQQ+/RCRIiQFIi3M4D7ZLcEhjU0hIweIDSMHhA0yJ/+iv1f//SIlDOA+2Q3CJQ0hJi0QkEEmJRjBJg0cQ4E2F5HQquOP+//9BA0YQg/gBdxxJi3YYSItWEEiDxhhMifdbQVxBXkFfXekgvf//W0FcQV5BX13DVUiJ5UiLRzgPt0hg/8FmiUhgZoH5yQByD0iNNU2xAAAx0l3pD7z//13DVUiJ5VNIg+wYSItfMMdF8P/////GRfYAikNKiEX0xkX1AEiNRehIi0soSIlN6EiJQyjoRfT//0iJ3+hKFgAASIPEGFtdw1VIieVBV0FWQVVBVFNQQYnOQYnXSIn7OXMQdRZIid9Ig8QIW0FcQV1BXkFfXelVvf//RDlzBHUWSInfSIPECFtBXEFdQV5BX13ptRcAAEyLYzhIid/o9br//0mJxUiJ30SJ/ujnuv//SI01V7AAAEyJ50yJ6kiJwUWJ8DDA6Gzo//9Iid9IicZIg8QIW0FcQV1BXkFfXen/u///VUiJ5UFXQVZTUEyLdzBJi14oRTH/6woPtkMNQQnHSIsbSIXbdAiAew4AdRDr6UiNNYOvAADoxbv//zHbRYX/dBYPtlMMTIn3viMAAAAxyUUxwOgISP//SIPDCEyJ9+geSP//TIn3SIneicJIg8QIW0FeQV9d6WpI//9VSInlQVdBVkFVQVRTSIPsOEmJ9kiJ+0yLezCLQxA9HQEAAHUNSInfTIn26FwSAADrUIP4KHU8RItjBEiJ3+gvvP//SInfTIn2MdLoJgQAAEiJ374pAAAAuigAAABEieHohv7//0iLezBMifboI0z//+sPSI01qa4AAEiJ3+gDu///TI1lqEyNbcDrC0iJ30yJ9uiWEAAAi0MQPR0BAAB3IYP4encog/hadzmD+Ch0J4P4LnVaSInfTIn26AAQAADr1T0eAQAAdA7pjQAAAIP4ew+FhAAAAEyJ/0yJ9uiLTP//66iD+Ft1ckyJ/0yJ9ugiTv//SInfTInu6IUPAABMif9MifZMieror1L//+uIg/g6dUdIid/oVrv//0iJ3+jwDQAASIt7MEiJxugiSf//x0W4/////8dFvP/////HRagEAAAAiUWwTIn/TIn2TIni6PdP///pMf///0iDxDhbQVxBXUFeQV9dw1VIieVBV0FWQVVBVFNIg+w4QYnXSInzSYn8i0MIg8D6g/gEcg9IjTVErAAATInn6Oe5//9MjXMIQYN8JBAsD4W9AAAATInn6Ly6//9IiV2gSI11qEyJ5+g6/v//g32oBnVlSIXbdGBNi2wkMEGLRTwxyYN7CAl1IotzEItVsDnWdQuJQxC5AQAAAItVsDlTFHUIiUMUuQEAAABIixtIhdt10IXJdCFBi1U8i02wTInvMfZFMcDowUX//0yJ774BAAAA6AdI//9Ji0QkOA+3QGC+yAAAACnGRDn+fRFJi3wkMEiNFZWrAADosQAAAEH/x0iNdaBMiedEifroAf///+tgTInnvj0AAADo5gAAAEiNdcBMiefo/gAAAInDRDn7dR5Ji3wkMEiNXcBIid7opUn//0mLfCQwTIn2SIna60tIjU3ATInnRIn+idroKwEAAEQ5+34MQSnfSYtEJDBEAXg8SYt8JDCLRzzHRdD/////x0XU/////8dFwAwAAAD/yIlFyEiNVcBMifboT03//0iDxDhbQVxBXUFeQV9dw1VIieVTUEiJ0InxSIn7SIsTSIt7IItSYIXSdBNIjTWDqwAASYnAMMDopOT//+sTSI01TqsAAInKSInBMMDoj+T//0iLexhIicYx0kiDxAhbXelUt///VUiJ5VNQSIn7OXMQdAhIid/oehMAAEiJ30iDxAhbXenwuP//VUiJ5UFXQVZTUEmJ9kmJ/zHS6N0AAABBi0cQuwEAAACD+Cx1MbsBAAAATIn/6L64//9Ji38wTIn26K1J//9Mif9MifYx0uipAAAA/8NBi0cQg/gsdNSJ2EiDxAhbQV5BX13DVUiJ5UFXQVZTUEiJyInzKdNMi3cwiwiFyXRCg8Hzg/kBdy8xyf/DD0jZTIn3SInGidrokkf//4P7AnxK/8tMifeJ3kiDxAhbQV5BX13pAUb//0yJ90iJxugrSf//hdt+JUWLfjxMifeJ3ujkRf//TIn3RIn+idpIg8QIW0FeQV9d6fJC//9Ig8QIW0FeQV9dw1VIieVBV0FWQVVBVFNIg+woiVW8SInzSYn/6Ob5//9Bi0cQg/gsdxGD+CMPhdkBAABBvgIAAADrEYP4enc4g/gtD4XDAQAARTH2TIn/6Kq3//9Mif9Iid66CAAAAOie////SYt/MESJ9kiJ2uj2Tv//6Z8BAAA9BgEAAHcZg/h7D4WEAQAATIn/SIne6NYDAADpfwEAAD0bAQAAd1w9FgEAAA+HlAAAAD0SAQAAD4cuAQAABfn+//+D+AcPh0kBAABBvgEAAABIjQ0ZAwAASGMEgUgByP/gSYncQcdEJBD/////QcdEJBT/////QccEJAMAAADp0wIAAD0cAQAAD4WiAAAASYncQcdEJBD/////QcdEJBT/////QccEJAUAAABBx0QkCAAAAADyQQ8QRxjyQQ8RRCQI6ZkCAAA9FwEAAA+FwwAAAE2LdzBJiwaKSHKEyXUVSI01LagAAEyJ/+irtf//SYsGikhygOH7iEhyTIn3viUAAAAx0rkBAAAARTHA6OhB//9JidxBx0QkEP////9Bx0QkFP////9BxwQkDgAAAOsxPR4BAAB1XUmLdxhJi38w6CJE//9JidxBx0QkEP////9Bx0QkFP////9BxwQkBAAAAEGJRCQI6fQBAAA9EwEAAHUiSYncQcdEJBD/////QcdEJBT/////QccEJAIAAADpwgEAAEyJ/0iJ3uh1+f//QYtPEE2J/YH5AAEAAHc8g/ldd1WD+TsPh4gAAACDwduD+QoPhzMBAAAxwEiNFfQBAABIYwyKSAHRQb8PAAAA/+G4BAAAAOmsAAAAgfkOAQAAdyaB+QEBAAAPhf0AAAC4DQAAAOmOAAAAg/leD4XqAAAAuAUAAADrfoHB8f7//4P5DA+H1AAAAEiNFWMBAABIYwSKSAHQQb8PAAAA/+C4DgAAAOtSg/k8dQe4CQAAAOtGg/k+D4WiAAAAuAsAAADrNrgGAAAA6y+4CAAAAOsouAwAAADrIbgKAAAA6xq4BwAAAOsTuAIAAADrDLgBAAAA6wW4AwAAAEyNZcBBicdFif5IjQW6kwAAQg+2BHA7Rbx2UEyJ7+jNtP//SYt9MESJ9kiJ2uiZT///SI0FkpMAAEIPtlRwAUyJ70yJ5uiq/P//QYnHSYt9MESJ9kiJ2kyJ4eiwUP//QYP/D3WiQb8PAAAASYtFOGb/SGBEifhIg8QoW0FcQV1BXkFfXcNMif/oY7T//0GLTwRMif9Iid4x0ujTAgAA6Wb+//9JidxBx0QkEP////9Bx0QkFP////9BxwQkAQAAAEHHRCQIAAAAAEyJ40yJ/+gctP//6TD+//9mkPD8//8j/v//qv///yP+//8j/v//I/7//8j///9j/P//rP7//3D///9w////cP///3D///9w////cP///8/+//9w////1v7//93+///k/v//6/7//xv+//88////PP///zz///88////vv7//9H+//88////xf7//zz////M/v//VUiJ5UFXQVZBVUFUU0iD7DhJifVIiftEi3sETItjMEyJ574KAAAAMdIxyUUxwOjVPv//QYnGx0XQAAAAAMdFyAAAAADHRcwAAAAATIltwEHHRRD/////QcdFFP////9Bx0UACwAAAEWJdQjHRbj/////x0W8/////8dFqAAAAADHRbAAAAAASIt7MEyJ7uj9Q///SInfvnsAAADo4fn//4N7EH0PhJYAAABMjW2o6zhIi0XAi3AIi1XMTInnuTIAAADoq1L//8dF0AAAAADrGEyJ50yJ7ui1Q///x0WoAAAAAIN90DJ0yItDEIP4W3QVPR0BAAB1G0iJ3+h5u///g3sgPXUNSInfTInu6J4FAADrC0iJ30yJ7uhOBQAAi0MQg/g7dAWD+Cx1FkiJ3+hjsv//g3sQfXQIg32oAHWS66hIid++fQAAALp7AAAARIn56Ln0//+LTdCFyXRWi0WohcB0PYPA80iNdahMieeD+AF3Jrr/////6FVB//9Ii0XAi3AIi1XMTInnuf/////o31H///9NzOsa6PNC//+LTdBIi0XAi3AIi1XMTInn6MBR//9NY/ZJiwQkSItAGEG///9/AEYjPLCLfczo/df//4nDweMXRAn7SYsEJEiLQBhCiRywgeP/P4D/i33I6NvX///B4A4lAMB/AAnYSYsMJEiLSRhCiQSxSIPEOFtBXEFdQV5BX13DVUiJ5UFXQVZBVUFUU0iB7GgCAACJy4mddP3//0GJ1kiJtXj9//9Jif1IjbWA/f//6PXm//9Ii4WA/f//iVhgTInvvigAAADoH/j//0WF9nQuSI0136IAAEyJ77oEAAAA6Dqw//9Mie9IicYx0uhDAgAATInvvgEAAADoWwMAAE2LZTBNizQkQcZGcgBBi0UQMduD+CkPhIEAAABMjT2eogAA6wxMie/o07D//0GLRRBMie89FwEAAHQ1PR0BAAB1FuhbAwAATInvSInGidro4gEAAP/D6whMif7os6///0GAfnIAdTZBg30QLHS36y3oi7D//0iNNUGiAABMie+6AwAAAOiXr///TInvSInGidrooAEAAEHGRnIH/8NMie+J3ui0AgAAQYpEJEpBik5ygOEBKMhBiEZxQQ+2dCRKTInn6P89//9Mie++KQAAAOgY9///TInv6NPm//9Bi0UESIuNgP3//4lBZEyJ774GAQAAugkBAACLjXT9///od/L//0yJ7+gh8P//TYt9ME2LN0WLZlhJY9xBi0dE/8A52H4xSY1WWEmLdiBJi304TI0NlJQAALkIAAAAQbj//wMA6HXG//9JiUYgSY1GIEGLTljrB0mNRiBEieFBOcx9EkiLEEjHBNoAAAAASP/DOct87kljV0SNSgFIi7WA/f//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/4u1bPn//+gPAP//TInvMfa6AAIAAEiNTbCwAeivawAA62FIjV2wSInf6BwaAABIi71w+f//i7Vs+f//6Nr//v/yDxANl3UAAGYPKNDyD1zR8kgPLMJIuQAAAAAAAACASDHI8kwPLMBmDy7BTA9DwEyJ7zH2ugACAABIidkwwOhMawAATInv6EhtAABMiedMie5IicLoXwX//+m6AgAASI1dsEiJ3+igGQAASIu9cPn//4u1bPn//+he//7/8kwPLMDrrEiLvXD5//+LtWz5///oRf/+//JEDyzATInvMfa6AAIAAEiNTbAwwOjgagAA65JNie5Ii71w+f//i7Vs+f//SI2VqP3//+gs/f7/SYnFSIuFiPn//0iNnaD9//9IOdhyD0yJ5+huBf//SIuFiPn//0iNSAFIiY2I+f//xgAiSIuFqP3//0iNSP9IiY2o/f//6YMAAABIi71w+f//i7Vs+f//SI2VgPn//+jJ/P7/SInDSI19sL4uAAAA6ChsAABIhcB1KUiDvYD5//9kch9Ii71w+f//i7Vs+f//6Brn/v9Miefo0gX//+mpAQAATInvMfa6AAIAAEiNTbBJidjpt/7//0iLhaj9//9IjUj/SImNqP3//0n/xUiFwA+E7QAAAEGKRQAPvsiD+Vt3MYP5IXczhckPhIoAAACD+Qp0K4P5DQ+FlQAAAEyJ50iNNSGKAAC6AgAAAOjaA///66WD+Vx1eusFg/kidXNIi4WI+f//SDnYcg9MiefoWQT//0iLhYj5//9IjUgBSImNiPn//8YAXEiLhYj5//9IOdhyD0yJ5+gwBP//SIuFiPn//0GKTQBIjVABSImViPn//4gI6T////9MiedIjTWoiQAAugQAAADoXgP//+km////SIuNiPn//0g52XITTInn6OYD//9BikUASIuNiPn//0iNUQFIiZWI+f//iAHp9f7//0iLhYj5//9IOdhNifVyD0yJ5+iyA///SIuFiPn//0iNSAFIiY2I+f//xgAi6Y4AAABBigc8JXVZTYnuTY1vAUGKXwGA+yUPhY37//+wJUiLjYj5//9IjZWg/f//SDnRchNMiefoYAP//0GKRQBIi42I+f//SI1RAUiJlYj5//+IAUmDxwJNifVIjZ2g/f//6y5Ii42I+f//SDnZchJMiefoJAP//0GKB0iLjYj5//9IjVEBSImViPn//4gBSf/HTDu9ePn//w+CZf///0iNvYj5///oyQL//7gBAAAASIsNK9UDAEiLCUg7TdB1KUiBxIgGAABbQVxBXUFeQV9dw0iNNT2IAABIi71w+f//MMDosff+/+vH6OpnAADY/P//s/z//w78//8O/P//Dvz//+T///+z/P//5P///+T////k////5P///+T///83/P//5P///wb9///k////bP3//+T///83/P//5P///+T///83/P//VUiJ5UiNNZeHAAAwwF3pP/f+/1VIieVTUEiJ+74BAAAAMdLozvn+/0iJ374CAAAAMdLov/n+/0iJ374CAAAA6OPh/v9Iid8x9ujg6P7/SI01sxQAAEiJ37oDAAAA6Jzq/v+4AQAAAEiDxAhbXcNVSInlQVdBVkFVQVRTSIHsiAYAAEiJ+0iLBRDUAwBIiwBIiUXQSI1VwL4BAAAA6FX5/v9JicVIid++AgAAADHS6EP5/v9JicdIid++AwAAAOjg4/7/QYnGSItVwEj/wkiJ374EAAAA6On7/v9IiYVw+f//SY1PAUGNRv1BiheIlWf5//+A+l5JD0XPSImNaPn//4P4AnIgQYP+BnQaQYP+BXQUSI0VSoYAAEiJ374DAAAA6Dn1/v9IjbWI+f//SInfSYn36GYA//9IiZ2w/f//SImdWPn//0yJraD9//9Ii0XATAHoSImFqP3//0Ux9kiLhXD5//9BOcYPjakCAADHhbj9//8AAAAASI29oP3//0yJ7kiLlWj5///ocwkAAEmJxE2F5A+EKQIAAEiLnbD9//9Iid++AwAAAOj24v7/Qf/Gg/gGD4QlAQAAg/gFD4RMAQAAg8D9g/gBD4dhAQAATImlgPn//0SJtXz5//9Ii72w/f//vgMAAABIjVXI6CXl/v9JicRIg33IAA+EsAEAAEyLtYD5//9NKe4x20GKBBw8JXVMQQ+2RBwBSP/DSIsNcdIDAPZEgT0EdWpIi42I+f//SI2VoP3//0g50XITTIn/6BEA//9BigQcSIuNiPn//0iNUQFIiZWI+f//iAHrbUiLjYj5//9IjZWg/f//SDnRchNMif/o3P/+/0GKBBxIi42I+f//SI1RAUiJlYj5//+IAes4PDB1EEyJ/0yJ7kyJ8ugP//7/6yQPvvCDxs9Ijb2g/f//TInqSIuNgPn//+jbDAAA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QYH+/wAAAA+HLP///0ljxkiLDSXAAwBED7d8gT5Bg+cB6RP///9FhfYPlMDpBP///0SJ974AEAAA6e3+//9Eife+ACAAAOng/v//RIn3vgBAAADp0/7//0SJ974AgAAA6cb+//9Eife+AAUAAOm5/v//ZpA2/v//mv7//5r+//+a/v//BP///5r+//+a/v//I////5r+//9F////mv7//2f///+J////mv7//7L///9VSInlQVdBVkFVQVRTSIHsOAIAAEmJ/0iNlbD9//++7dj//+jm0f7/SYnFTImtqP3//0yJ/77s2P//MdLozdH+/0mJxEyJvcj9//9Mia24/f//TIu1sP3//00B7kyJtcD9//9Mif++69j//+hG0f7/SInDTAHrTI2tuP3//+sKSP/DTIu1wP3//zHATDnzd13HhdD9//8AAAAATInvSIneTIni6FD1//9JicZNhfZ0z0yJ8Egrhaj9//9MOfMPlMEPtvFIAcZMif/oWNP+/0yJ/77r2P//6M/N/v9Ijb24/f//SIneTIny6DP5//9IgcQ4AgAAW0FcQV1BXkFfXcNVSInlU1BIifvoe1MAAIpMA/9mx0QD/2wAiAwDxkQDAQBIg8QIW13DVUiJ5UiJz+h66/7/McBdw5BVSInlQVdBVkFVQVRTUEmJ1EmJ9kmJ/0GLRCQIuv////+FwA+EkgAAAIP4A3Uk8kEPEAQk8g8s0PIPKspmDy7IdRB6DoXSfgpBO1Y4D44nAQAATIn3TInm6GQGAABIicNMjWsQTInvTInm6Kui//+FwHU2g3sYC3USQYN8JAgEfApJi0UASTsEJHQeSItbIEiF23XMSI0163EAAEyJ/zDA6Hs8//8x0usSSSteIEjB6wNp083MzMxBA1Y4QYtGOEhjykjB4QSNegE5x306SYt2GIN8DhgASI1JEIn6dOj/x/IPKsfyQQ8RBCRBx0QkCAMAAABIiwQOSYlEJBC4AQAAAItMDgjrXkGKTgu+AQAAANPmKcKNQgFIY8BIjQSASI0MxQgAAAD/wjHAOfJ9PEmLRiCDPAgASI1JKHTqSItUCOBJiRQki0QI6EGJRCQISYtWIEiLdArQuAEAAABJiXQkEItMCthBiUwkGEiDxAhbQVxBXUFeQV9dw//K6Tv///9VSInlSI0F2VkAAEg5RiB0DIpOC7gBAAAA0+Dr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x0HB7x9BAcdB0f9Iid++AQAAAESJ+ug6w/7/SInfvgEAAABEieroKsP+/0iJ377+////uv/////ovAIAAEiJ34XAdT++/v///+hpuP7/SInfvgEAAABEifLo98L+/0iJ377/////uv7////oiQIAAEiJ34XAdSu+/f///+g2uP7/6zy+AQAAAESJ+ugXxf7/SInfvgEAAABEieroB8X+/+sdvgEAAABEifro+MT+/0iJ374BAAAARIny6OjE/v9Bg/wCRYnsD4QeAgAASInfvgEAAABEifroecL+/0iJ377/////6CC6/v9EifBEjXD/RIl1zIlF1EiJ374BAAAARIny6E7C/v9Iid++AQAAAESJ+uiQxP7/SInfvgEAAABEifLogMT+/0WJ5USJZdBFiffrIL4BAAAARIni6GfE/v9Iid++AQAAAESJ+uhXxP7/RYnlRY1lAUiJ374BAAAARIni6O7B/v9Iid++/////7r+////6IABAACFwHRcRY11AUQ7ddR+EUiJ30iNNQ5eAAAwwOhKzP7/SInfvv7////oErf+/0GDxQJIid++AQAAAESJ6uicwf7/SInfvv////+6/v///+guAQAAhcBFifV1q0WNZgFFifVB/89Iid++AQAAAESJ+uhpwf7/SInfvv3///+6/////+j7AAAAhcBEi3XQdExFOfd9EUiJ30iNNYpdAAAwwOjGy/7/SInfvv7////ojrb+/0H/z0iJ374BAAAARIn66BnB/v9Iid++/f///7r/////6KsAAACFwHW0RTnnSInfD43V/v//vvz////oT7b+/0iJ374BAAAARIt9zESJ+ujZwP7/SInfvgEAAABEieLoycD+/0iJ374BAAAARIn66AvD/v9Iid++AQAAAESJ4uj7wv7/i1XUidBEKeBFKfRBjXUCQTnERInwRYnuRA9M8kGJx0QPTP4PTPBBD0zVSInf6Ib8//9FOfdFif0PjJ38//9Ig8QYW0FcQV1BXkFfXcNVSInlQVdBVlNQQYnWQYn3SIn7vgIAAADoHbj+/4XAdGdIid++AgAAAOjit/7/Qf/PSInfRIn+6NS3/v9Bg8b+SInfRIn26MW3/v9Iid++AgAAALoBAAAA6O/D/v9Iid++/////+gfuv7/QYnGSInfvv7////oRLX+/0SJ8EiDxAhbQV5BX13DSInf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wA+VwQ+2wesWD7bRSMHiBEgDVaBMifdIicbonen//0iLTYg5yHURiwPB6A4FAgD+/0hjwEmNHIdIg8MESIldsE2LThjpjO///0QPtspJweEETANNoItDCEE7QQhJic91IYP4BA+FngAAAEmLMUiLO+jJ6f//hcAPnsAPtsDp5QAAAEyJykyJ90iJ3uhgBP//6dIAAABIiwlJiQhDiUQ5CEiLRbCLAMHoDgUCAP7/SGPASI0EgkiDwARIiUWw6RPv//9Ii12oSItFsEiJQzBIjRULHwAASInfTIn2TInBQbgMAAAA6P/t//+FwA+F4O7//0iNFcw5AABIid9Mifboxf/+/+nJ7v//g/gDdRHyQQ8QAWYPLgMPk8APtsDrSU2JzUyJ90iJ3kyJ6rkOAAAA6Jbp//+D+P91LkyJ90yJ7kiJ2rkNAAAA6H7p//+D+P91DkyJ90iJ3kyJ6uks////hcAPlMAPtsBIi02IOch1EkGLB8HoDgUCAP7/SGPATY08hEmDxwRMiX2wTYtOGOlD7v//hcAPhecAAABNi30oTYt34EmLXwhJg72YAAAAAEyJ8HQQSYt32EyJ7+g9Gv//SYtH4EmLD0gp2UiD4fBIAcFJiU/YSYlNGDHASTtdEA+Doe3//0mNTggxwEiLE0iJUfiLUwiJEUiDwRBI/8BIg8MQSTtdEHLj6Xnt//9NicZBwewXRYXkTIttqHQRTANliEnB5ARLjUQM8EmJRRBMic5Jg72YAAAAAEiLXbB0CEyJ7+i2Gf//SYldMEyJ70yJ9uhEDf///418////dCSFwA+EGu3//+kJ7f//hcB1E/+FfP///+kG7f//SItFmEiJQzBIg8RoW0FcQV1BXkFfXcNIjTV9OAAASIt9qDDA6KIA//9mkFnu//937v//me7//8vu///t7v//Ee///0fv//9Y7///lO///+rv//8T8P//XPD//6vw///I8P//5fD//wLx//8f8f//PPH//1nx//+C8f//u/H//wTy///X+v//Z/L//4Ty//+t8v//1vL//yTz//9u8///yvP//2j///8T9P//R/T//6z0//9u9f//X/b//3b2//9Z9///VUiJ5UFXQVZBVUFUU0iD7DhFicZJic9JidRIifNIiX2wSI11yEyJ5+jL4f//SYnFTYXtdD9IjXW4TIn/6Lfh//9IhcB0LkGDxvtBg/4GD4emAAAA8g8QCPJBDxBFAEiNBacAAABKYwywSAHB/+HyD1jB63tMi22wTInvTInmTIn6SInZRYnw6CDr//+FwHVqTInvTInmTIn66NAA///rWvIPXMHrSfIPWcHrQ/IPXsHrPfIPEUWw8g9ewfIPEU2o6CkUAADyD1lFqPIPEE2w8g9cyPIPEQvHQwgDAAAA6xro1RQAAOsIZg9XBbUdAADyDxEDx0MIAwAAAEiDxDhbQVxBXUFeQV9dww8fAGL///+U////mv///6D///+m////1P///9v///9VSInlU1BIiftIi3MYSIt7IEiNVfD/UxC5/////0iFwHQaSItV8EiF0nQRSP/KSIkTSI1IAUiJSwgPtgiJyEiDxAhbXcNVSInlU1BIiftIgzsAdAZIi0MI6yJIid/onv///4nBuP////+D+f90EUj/A0iLQwhI/8hIiUMID7YASIPECFtdw1VIieVIiX4gSIlWEEiJThhIx0YIAAAAAEjHBgAAAABdw1VIieVBV0FWQVVBVFNQSYnVSYn3SYn8RTH2TYXtdD5Miefod////4P4/3QuSYscJEmLdCQISTndSQ9G3UyJ/0iJ2uh0EwAASSkcJEkBXCQISQHfSSnddcfrA02J7kyJ8EiDxAhbQVxBXUFeQV9dw1VIieVBVlNIidBJifZJi1YQSDnCcyS7IAAAAEiD+CBID0PYSI1DAUiD+P13EkmLNkiJ2eg6VP//6wpJiwbrDOiEVP//SYkGSYleEFtBXl3DVUiJ5UFXQVZTUEiJ+0G+AQAAAL4BAAAAMdLo8aP+/0mJx0yJ/+jcEQAAhcB0JEiJ3+jckv7/SI01KTUAAEiJ30yJ+jDA6PyT/v9BvgIAAADrDUiJ374BAAAA6FuV/v9EifBIg8QIW0FeQV9dw1VIieVBV0FWQVRTSIn7vgEAAAAx0uiJo/7/SYnEQb4CAAAASInfvgIAAAAx0uhxo/7/SYnHSI014DQAAEiJ30yJ4kyJ+TDA6I2T/v9Iid++/////zHS6GiQ/v9IicfoBBMAAIXAdB5Iid/oNpL+/0iNNa80AABIid9MifowwOhWk/7/6xNIid++AQAAAOi7lP7/Qb4BAAAARInwW0FcQV5BX13DVUiJ5UFXQVZTSIHsCEAAAEmJ/kyLPYt9AwBJiwdIiUXgSI2d4L///0iJ374AQAAA6HQRAABIicExwEiFyXQo6wNI/8OKA4TAdAk8XHXzxgMv6+5IjbXgv///TIn36E6S/v+4AQAAAEmLD0g7TeB1DkiBxAhAAABbQV5BX13D6BgQAABVSInlQVdBVkFVQVRTSIPsGEiJ+0iNddS/MXN5c+iuDwAASI110L8yc3lz6KAPAABIjXXMvzNzeXPokg8AAEyNNQQ0AABEi33MRItl0ESLbdRBg/0KdRhBjUQk/IP4A3cOSGPASI0Nl44DAEyLNMFIid8x9jHS6AeV/v9IjTWYMwAASInf6KOR/v/yQQ8qxUiJ3+gAkf7/SInfvv3////o9JX+/0iNNXwzAABIid/oepH+/w9XwPJBDyrESInf6NSQ/v9Iid++/f///+jIlf7/SI01XTMAAEiJ3+hOkf7/D1fA8kEPKsdIid/oqJD+/0iJ3779////6JyV/v9IjTU6MwAASInf6CKR/v9Iid9MifboF5H+/0iJ3779////6HWV/v+4AQAAAEiDxBhbQVxBXUFeQV9dw1VIieUx9ujkkv7/uAEAAABdw1VIieVTSIHsmAAAAEiJ+74BAAAAMdLoGKH+/4A4AHQaSI21aP///0iJx+huEAAAhcB0EUiJ3zH26xpIid++AQAAAOsQD7e1bP///4HmAEAAAEiJ3+iEkv7/uAEAAABIgcSYAAAAW13DVUiJ5VNQSIn7vgEAAAAx0ui2oP7/SInH6BYAAABIid+JxuhOkv7/uAEAAABIg8QIW13DVUiJ5UiB7JAAAABIjbVw////6OsPAACFwHQEMcDrEA+3hXT////B6A6D4AGD8AFIgcSQAAAAXcNVSInlQVdBVkFVQVRTUEmJ/r4BAAAAMdLoQ6D+/0mJxb8gAAAA6BAPAABJicdMie++LwAAAOjSDwAASYnETYXkdE5MieNMKetIjXsB6OkOAABJiUcQSInHTInuSIna6J0PAABJi0cQxgQYAEyJ7+iHDwAASQHFTSnlTInv6LkOAABJ/8RJiUcYSInHTInm6y6/AgAAAOigDgAASYlHEGbHAC4ATInv6E8PAABIjXgB6IYOAABJiUcYSInHTInu6B8PAABJi38Q6J4OAABJiQdMifdMif7oU5H+/7gBAAAASIPECFtBXEFdQV5BX13DVUiJ5VNQvgEAAADoo43+/0iJw0iLO0iF/3QF6GANAABIi3sQ6MMNAABIi3sY6LoNAABIid/osg0AADHASIPECFtdw1VIieVTUEiJ+74BAAAA6F2N/v9Ii3AISIPGFUiJ3+i9jv7/uAEAAABIg8QIW13DVUiJ5UFWU0iB7JAAAABIifu+AQAAAOgmjf7/SItICEiLUBBIg8EVSI017DAAAEiJ3zDA6P6O/v9Iid++/////zHS6NmL/v9JicZIid++/v///+jahv7/SI21YP///0yJ9+gEDgAAicExwIXJdSMPt4Vk////JQDwAABmPQCAD5TAD7bwSInf6B6Q/v+4AQAAAEiBxJAAAABbQV5dw1VIieVBV0FWU1BJif6+AQAAAOiNjP7/SYnHSYs/MdtIhf90UehoDQAASYlHCEiFwHRDMduAeBUudBZIg8AVSYt/GEiJxjHS6HMMAACFwHQTSYs/6DkNAABJiUcISIXAddPrErsBAAAATIn3vgEAAADomI/+/4nYSIPECFtBXkFfXcNVSInlQVdBVlNQSIn7Qb4BAAAAvgEAAAAx0ujCnf7/SYnHTIn/vv0BAADopAwAAIXAdCRIid/oqIz+/0iNNb8vAABIid9MifowwOjIjf7/Qb4CAAAA6w1Iid++AQAAAOgnj/7/RInwSIPECFtBXkFfXcNVSInlQVdBVkFVQVRTUEmJ/uh4hf7/McmD+AIPjCsBAABBvwIAAABMifdEif7o6of+/4XAD4ToAAAATIn3RIn+MdLoKJ3+/0iJw0iJ3747AAAA6IgMAABJicRIid++OgAAAOh4DAAASYnFTYXkdBFNhe11BU2J5eseTTnsTQ9C7E2F7XUSTIn3SIne6JCM/v9FMe0w2+sTTInqSCnaTIn3SIne6CGM/v+zAUyJ977/////6DuH/v9MifdIjTU8JAAA6FqM/v9Mife+AQAAAOgfh/7/TIn3vgMAAADorJb+/0yJ977/////MdLooIn+/0iJx+jg+///hcB1P0yJ9779////6JiE/v9J/8WE27gAAAAATA9E6E2F7UyJ6w+FKP///0H/x0yJ9+hhhP7/QTnHD47x/v//McnrEkyJ977+////6FmE/v+5AQAAAInISIPECFtBXEFdQV5BX13DVUiJ5UFXQVZTUEiJ+0G+AQAAAL4BAAAAMdLo85v+/0mJx0yJ/+guCwAAhcB0JEiJ3+jeiv7/SI01FS4AAEiJ30yJ+jDA6P6L/v9BvgIAAADrDUiJ374BAAAA6F2N/v9EifBIg8QIW0FeQV9dw1VIieVBV0FWU0iB7JgAAABIiftBvgEAAAC+AQAAADHS6ICb/v9JicdIjbVY////TIn/6NgKAABIid+FwHQa6GSK/v/o5wgAAIsAg/gCdWZIjTXKLQAA62kx9jHS6EqO/v9IjTX9LQAASInf6OaK/v9Ii3WISInf6GGK/v9Iid++/f///+g4j/7/SI012y0AAEiJ3+i+iv7/8kgPKkW4SInf6BqK/v9Iid++/f///+gOj/7/60KD+A11HEiNNUQtAABIid9MifowwOgNi/7/Qb4CAAAA6yHoVAgAAIsQSI01Ty0AAEiJ30yJ+TDA6OqK/v9BvgIAAABEifBIgcSYAAAAW0FeQV9dw1VIieVBV0FWQVVBVFNIgezIAAAASIl9iEiLBSR1AwBIiwBIiUXQSI09Oy0AAEiNNYsTAADoxggAAEiJw0iNfZC+EAAAALoBAAAASInZ6L8IAABJicdIid/ocggAADHARYX/D4TwAAAASItdkEiLVZhIiddIwe84SYnYScHoKEmJ2UnB6SBJidJJweowSYnTScHrKEiJ0UjB6SBIidhIweg4SIneSMHuMEQPtn2TRA+2ZZuJfCRoRIlkJEiJRCQoidDB6BBEiXwkCEQPtv4PtvZBifZED7boRA+24UEPtvNBD7bCD7bKiUwkMInZwekQD7bRQQ+2+UEPtsiJRCRgiXQkWESJZCRQRIlsJEBEiXQkOESJfCQgiUwkGIl8JBCJFCRED7bDD7bHSI1doEiNDUIsAABIid8x9romAAAAQYnBMMDo7AYAAEiLfYhIid7o+4j+/7gBAAAASIsN5HMDAEiLCUg7TdB1EkiBxMgAAABbQVxBXUFeQV9dw+i6BgAAVUiJ5UFWU0mJ/r7/////MdLoCJn+/4oIMduA+Vt3EITJdCmA+SR0EoD5L3UH6wuA+Vx0BoB4ATp1ErsBAAAATIn3vgEAAADofIr+/4nYW0FeXcNVSInlU1BIiftIjTWMHQAASI0VWoUDAOiXnP7/SI01phkAAEiNFWeFAwBIid/ogZz+/0iNNZMZAABIjRVxhgMASInf6Guc/v9IjTWZKwAASInf6CWI/v9IjRWzKwAASInfvu7Y///orYz+/0iNNaorAABIid/oAoj+/0iNFaArAABIid++7tj//+iKjP7/SI01nSsAAEiJ3+jfh/7/SI0VzCsAAEiJ377u2P//6GeM/v9IjTXLKwAASInf6LyH/v9IjRXDKwAASInfvu7Y///oRIz+/zHASIPECFtdw1VIieVBV0FWQVVBVFNQSYnWQYn3SYn8MfYx0ujUiv7/TInnMfYx0ujIiv7/QYP/Ag+MlwAAAEG9AQAAAEljxUmLNMaKBjwtdQyAfgEtdRdIg8YC6wc8L3UNSP/GTInn6NcCAADrW0yJ5+gxh/7/TInnvu7Y//9IjRVHKwAA6LmL/v9B/8VFOf19N0lj3UmLNN5MiefoBof+/0yJ577+////6OSE/v+NUAFMiee+/v///+hZjP7/SP/DQTnfdc9Fif1B/8VFOf0PjG////9IjRX4KgAATInnvu7Y///oWov+/0iNFeoqAABMiee+7tj//+hGi/7/TI01+IQDAEmLNkiF9nRETInn6Pak/v+FwHUZTInnMfa6/////zHJ6M2N/v9Jg8YIhcB000yJ577/////MdLo1oP+/0iJx+jQBQAAQb4BAAAA61JIjRVnKgAATInnvu7Y///ozIj+/0G+AQAAAEyJ5zH2ugEAAAAxyeh7jf7/TInnvv////+FwHQRMdLoiIP+/0iJx+iCBQAA6wro8IL+//JEDyzwRInwSIPECFtBXEFdQV5BX13DVUiJ5UFXQVZBVUFUU0iB7AgEAABJifZIiftMiyXHcAMASYsEJEiJRdDoAgYAAEiJx+j0BQAARTHtSInHMfbo+QUAAEyNvdD7//9IicdMif66/wMAALkAAQAI6NcFAACEwE0PRP0PhZUAAABIjTVh+P//SInfMdLozob+/0iJ30yJ9uhshf7/SI09dykAAOhfBAAASInfSInG6FWF/v9Iid++AgAAALoBAAAAMcnokIz+/4XAdUpIid++/////+gsgP7/hcB0OUiNNQIdAABIid/oHYX+/0iJ30yJ9ugShf7/SInfvgMAAADocY/+/0iJ377/////MdLoZYL+/0mJx02F/3VZSInf6Dby//9IjTW8HAAASInf6NeE/v9Iid9MifbozIT+/0iJ3+j1+///SInfhcB0DL7+////6DN9/v/rCr4DAAAA6BOP/v9Iid++/////zHS6AeC/v9JicdIid9Mif7oioT+/0mLBCRIO0XQdRe4AQAAAEiBxAgEAABbQVxBXUFeQV9dw+hPAgAAVUiJ5UFXQVZBVUFUU0iB7AgCAABJifdJif5Miy04bwMASYtFAEiJRdBMif++PQAAAOjtAwAASYnETYXkdDtMieBMKfhIY8C7/wEAAD3/AQAASA9O2EiNvdD9//9Mif5Iidq5AAIAAOj7AQAAxoQd0P3//wBJ/8TrG0iNvdD9//9Mif66AAIAAOjOAQAATI0lVwwAAEyJ90yJ5ujFg/7/SI2d0P3//0yJ9779////SIna6EqI/v9IjTXjJwAASInf6GQDAACFwHUOQYA8JAB0B0yJJaqDAwBJi0UASDtF0HUSSIHECAIAAFtBXEFdQV5BX13D6FcBAABVSInlQVdBVkFUU0mJ9kGJ/+j5of7/SInDSInf6NUY//9Iid/ox/r//0GJxEmLNkiJ3+hC/f//SI0VEygAAEiJ377u2P//6L2H/v9FheR1EUiJ30SJ/kyJ8uhv+///QYnESInf6GaM//9EieBbQVxBXkFfXcNVSInlQVdBVkFVQVRTUEmJ/r4BAAAAMdIxyejOkv7/SInDTIn3vgIAAAAx0jHJ6LqS/v9JicdFMeRIhdt0Sk2F/3RFSInf6JUCAABJicVMif/oigIAAEE5xXwtSGPASWPNSCnBSAHLSInfTIn+6EoCAACFwA+UwA+28EyJ9+huhP7/QbwBAAAARIngSIPECFtBXEFdQV5BX13D/yWMbQMA/yWObQMA/yWQbQMA/yWSbQMA/yWUbQMA/yWWbQMA/yWYbQMA/yWabQMA/yWcbQMA/yWebQMA/yWgbQMA/yWibQMA/yWkbQMA/yWmbQMA/yWobQMA/yWqbQMA/yWsbQMA/yWubQMA/yWwbQMA/yWybQMA/yW0bQMA/yW2bQMA/yW4bQMA/yW6bQMA/yW8bQMA/yW+bQMA/yXAbQMA/yXCbQMA/yXEbQMA/yXGbQMA/yXIbQMA/yXKbQMA/yXMbQMA/yXObQMA/yXQbQMA/yXSbQMA/yXUbQMA/yXWbQMA/yXYbQMA/yXabQMA/yXcbQMA/yXebQMA/yXgbQMA/yXibQMA/yXkbQMA/yXmbQMA/yXobQMA/yXqbQMA/yXsbQMA/yXubQMA/yXwbQMA/yXybQMA/yX0bQMA/yX2bQMA/yX4bQMA/yX6bQMA/yX8bQMA/yX+bQMA/yUAbgMA/yUCbgMA/yUEbgMA/yUGbgMA/yUIbgMA/yUKbgMA/yUMbgMA/yUObgMA/yUQbgMA/yUSbgMA/yUUbgMA/yUWbgMA/yUYbgMA/yUabgMA/yUcbgMA/yUebgMA/yUgbgMA/yUibgMA/yUkbgMA/yUmbgMA/yUobgMA/yUqbgMA/yUsbgMA/yUubgMA/yUwbgMA/yUybgMA/yU0bgMA/yU2bgMA/yU4bgMA/yU6bgMA/yU8bgMA/yU+bgMA/yVAbgMA/yVCbgMA/yVEbgMA/yVGbgMA/yVIbgMA/yVKbgMA/yVMbgMA/yVObgMA/yVQbgMA/yVSbgMA/yVUbgMA/yVWbgMA/yVYbgMA/yVabgMA/yVcbgMA/yVebgMA/yVgbgMA/yVibgMA/yVkbgMA/yVmbgMA/yVobgMA/yVqbgMA/yVsbgMA/yVubgMAAABMjR3VagMAQVP/JcVqAwCQaAAAAADp5v///2gPAAAA6dz///9oKAAAAOnS////aFAAAADpyP///2hxAAAA6b7///9oiQAAAOm0////aJ4AAADpqv///2i9AAAA6aD///9o1AAAAOmW////aOQAAADpjP///2j0AAAA6YL///9oBwEAAOl4////aB0BAADpbv///2g2AQAA6WT///9oSwEAAOla////aGABAADpUP///2h2AQAA6Ub///9ojAEAAOk8////aJ4BAADpMv///2iwAQAA6Sj///9oxgEAAOke////aNcBAADpFP///2jnAQAA6Qr///9o9AEAAOkA////aAECAADp9v7//2gOAgAA6ez+//9oHAIAAOni/v//aCkCAADp2P7//2g3AgAA6c7+//9oSAIAAOnE/v//aFYCAADpuv7//2hkAgAA6bD+//9odQIAAOmm/v//aIECAADpnP7//2iOAgAA6ZL+//9onwIAAOmI/v//aKwCAADpfv7//2i4AgAA6XT+//9oxwIAAOlq/v//aNQCAADpYP7//2jjAgAA6Vb+//9o8gIAAOlM/v//aAADAADpQv7//2gOAwAA6Tj+//9oGwMAAOku/v//aCsDAADpJP7//2g5AwAA6Rr+//9oSQMAAOkQ/v//aFcDAADpBv7//2hlAwAA6fz9//9ocgMAAOny/f//aIIDAADp6P3//2iQAwAA6d79//9onwMAAOnU/f//aK0DAADpyv3//2i7AwAA6cD9//9oygMA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YWxsIHRvIEx1YSBBUEkgKCVzKQoACgBjYW5ub3QgJXMgJXM6ICVzAGNvcm91dGluZQBjcmVhdGUAcmVzdW1lAHJ1bm5pbmcAc3RhdHVzAHdyYXAAeWllbGQAdG9vIG1hbnkgYXJndW1lbnRzIHRvIHJlc3VtZQBjYW5ub3QgcmVzdW1lICVzIGNvcm91dGluZQB0b28gbWFueSByZXN1bHRzIHRvIHJlc3VtZQBzdXNwZW5kZWQAbm9ybWFsAGRlYWQAY29yb3V0aW5lIGV4cGVjdGVkAEx1YSBmdW5jdGlvbiBleHBlY3RlZABfRwBMdWEgNS4xAF9WRVJTSU9OAGlwYWlycwBwYWlycwBrdgBfX21vZGUAbmV3cHJveHkAYm9vbGVhbiBvciBwcm94eSBleHBlY3RlZABhc3NlcnQAY29sbGVjdGdhcmJhZ2UAZG9maWxlAGVycm9yAGdjaW5mbwBnZXRmZW52AGdldG1ldGF0YWJsZQBsb2FkZmlsZQBsb2FkAGxvYWRzdHJpbmcAbmV4dABwY2FsbABwcmludAByYXdlcXVhbAByYXdnZXQAcmF3c2V0AHNlbGVjdABzZXRmZW52AHNldG1ldGF0YWJsZQB0b251bWJlcgB0b3N0cmluZwB0eXBlAHVucGFjawB4cGNhbGwAdG9vIG1hbnkgcmVzdWx0cyB0byB1bnBhY2sAX190b3N0cmluZwB0cnVlAGZhbHNlAG5pbAAlczogJXAAYmFzZSBvdXQgb2YgcmFuZ2UAbmlsIG9yIHRhYmxlIGV4cGVjdGVkAF9fbWV0YXRhYmxlAGNhbm5vdCBjaGFuZ2UgYSBwcm90ZWN0ZWQgbWV0YXRhYmxlACdzZXRmZW52JyBjYW5ub3QgY2hhbmdlIGVudmlyb25tZW50IG9mIGdpdmVuIG9iamVjdABsZXZlbCBtdXN0IGJlIG5vbi1uZWdhdGl2ZQBpbnZhbGlkIGxldmVsAGYAbm8gZnVuY3Rpb24gZW52aXJvbm1lbnQgZm9yIHRhaWwgY2FsbCBhdCBsZXZlbCAlZABpbmRleCBvdXQgb2YgcmFuZ2UAJ3Rvc3RyaW5nJyBtdXN0IHJldHVybiBhIHN0cmluZyB0byAncHJpbnQnAAkAPShsb2FkKQB0b28gbWFueSBuZXN0ZWQgZnVuY3Rpb25zAHJlYWRlciBmdW5jdGlvbiBtdXN0IHJldHVybiBhIHN0cmluZwBzdG9wAHJlc3RhcnQAY29sbGVjdABjb3VudABzdGVwAHNldHBhdXNlAHNldHN0ZXBtdWwAJXMAYXNzZXJ0aW9uIGZhaWxlZCEAZnVuY3Rpb24gb3IgZXhwcmVzc2lvbiB0b28gY29tcGxleABjb2RlIHNpemUgb3ZlcmZsb3cAY29uc3RhbnQgdGFibGUgb3ZlcmZsb3cAY29udHJvbCBzdHJ1Y3R1cmUgdG9vIGxvbmcAZGVidWcAZ2V0aG9vawBnZXRpbmZvAGdldGxvY2FsAGdldHJlZ2lzdHJ5AGdldHVwdmFsdWUAc2V0aG9vawBzZXRsb2NhbABzZXR1cHZhbHVlAHRyYWNlYmFjawBzdGFjayB0cmFjZWJhY2s6AAoJLi4uAAoJAFNubAAlczoAJWQ6ACBpbiBmdW5jdGlvbiAnJXMnACBpbiBtYWluIGNodW5rACA/ACBpbiBmdW5jdGlvbiA8JXM6JWQ+AGxldmVsIG91dCBvZiByYW5nZQBjYWxsAHJldHVybgBsaW5lAHRhaWwgcmV0dXJuAGZsblN1AD4lcwBmdW5jdGlvbiBvciBsZXZlbCBleHBlY3RlZABpbnZhbGlkIG9wdGlvbgBzb3VyY2UAc2hvcnRfc3JjAGxpbmVkZWZpbmVkAGxhc3RsaW5lZGVmaW5lZAB3aGF0AGN1cnJlbnRsaW5lAG51cHMAbmFtZQBuYW1ld2hhdABhY3RpdmVsaW5lcwBmdW5jAGV4dGVybmFsIGhvb2sAbHVhX2RlYnVnPiAAY29udAoAPShkZWJ1ZyBjb21tYW5kKQBhdHRlbXB0IHRvICVzICVzICclcycgKGEgJXMgdmFsdWUpAGF0dGVtcHQgdG8gJXMgYSAlcyB2YWx1ZQBjb25jYXRlbmF0ZQBwZXJmb3JtIGFyaXRobWV0aWMgb24AYXR0ZW1wdCB0byBjb21wYXJlIHR3byAlcyB2YWx1ZXMAYXR0ZW1wdCB0byBjb21wYXJlICVzIHdpdGggJXMAJXM6JWQ6ICVzAGxvY2FsAGdsb2JhbABmaWVsZAB1cHZhbHVlAD1bQ10AQwBtYWluAEx1YQB0YWlsAD0odGFpbCBjYWxsKQAoKnRlbXBvcmFyeSkAbm90IGVub3VnaCBtZW1vcnkAZXJyb3IgaW4gZXJyb3IgaGFuZGxpbmcAQyBzdGFjayBvdmVyZmxvdwBjYW5ub3QgcmVzdW1lIG5vbi1zdXNwZW5kZWQgY29yb3V0aW5lAGF0dGVtcHQgdG8geWllbGQgYWNyb3NzIG1ldGFtZXRob2QvQy1jYWxsIGJvdW5kYXJ5AHN0YWNrIG92ZXJmbG93AHBhY2thZ2UAdGFibGUAaW8Ab3MAc3RyaW5nAG1hdGgAc3RkaW4Ac3Rkb3V0AHN0ZGVycgBwb3BlbgBGSUxFKgAlczogJXMAY2Fubm90IGNsb3NlIHN0YW5kYXJkIGZpbGUAY2xvc2UAZmx1c2gAaW5wdXQAbGluZXMAb3V0cHV0AHRtcGZpbGUAd3JpdGUAc3RhbmRhcmQgJXMgZmlsZSBpcyBjbG9zZWQAJS4xNGcAY2xvc2VkIGZpbGUAZmlsZQB0b28gbWFueSBhcmd1bWVudHMAaW52YWxpZCBmb3JtYXQAJWxmAHcAYXR0ZW1wdCB0byB1c2UgYSBjbG9zZWQgZmlsZQBmaWxlIGlzIGFscmVhZHkgY2xvc2VkAF9fY2xvc2UAX19pbmRleABzZWVrAHNldHZidWYAX19nYwBmaWxlIChjbG9zZWQpAGZpbGUgKCVwKQBubwBmdWxsAHNldABjdXIAZW5kAGFuZABicmVhawBkbwBlbHNlAGVsc2VpZgBmb3IAZnVuY3Rpb24AaWYAaW4Abm90AG9yAHJlcGVhdAB0aGVuAHVudGlsAHdoaWxlAC4uAC4uLgA9PQA+PQA8PQB+PQA8bnVtYmVyPgA8bmFtZT4APHN0cmluZz4APGVvZj4AY2hhciglZCkAJWMAJXMgbmVhciAnJXMnAGludmFsaWQgbG9uZyBzdHJpbmcgZGVsaW1pdGVyAC4ARWUAKy0AbWFsZm9ybWVkIG51bWJlcgBsZXhpY2FsIGVsZW1lbnQgdG9vIGxvbmcAdW5maW5pc2hlZCBzdHJpbmcAZXNjYXBlIHNlcXVlbmNlIHRvbyBsYXJnZQB1bmZpbmlzaGVkIGxvbmcgc3RyaW5nAHVuZmluaXNoZWQgbG9uZyBjb21tZW50AG5lc3Rpbmcgb2YgW1suLi5dXSBpcyBkZXByZWNhdGVkAGNodW5rIGhhcyB0b28gbWFueSBsaW5lcwBwaQBodWdlAGZtb2QAbW9kAGFicwBhY29zAGFzaW4AYXRhbjIAYXRhbgBjZWlsAGNvc2gAY29zAGRlZwBleHAAZmxvb3IAZnJleHAAbGRleHAAbG9nMTAAbG9nAG1heABtaW4AbW9kZgBwb3cAcmFkAHJhbmRvbQByYW5kb21zZWVkAHNpbmgAc2luAHNxcnQAdGFuaAB0YW4AaW50ZXJ2YWwgaXMgZW1wdHkAd3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cwBtZW1vcnkgYWxsb2NhdGlvbiBlcnJvcjogYmxvY2sgdG9vIGJpZwBfTE9BRExJQgBsb2FkZXJzAHBhdGgATFVBX1BBVEgALi8/Lmx1YTsvdXNyL2xvY2FsL3NoYXJlL2x1YS81LjEvPy5sdWE7L3Vzci9sb2NhbC9zaGFyZS9sdWEvNS4xLz8vaW5pdC5sdWE7L3Vzci9sb2NhbC9saWIvbHVhLzUuMS8/Lmx1YTsvdXNyL2xvY2FsL2xpYi9sdWEvNS4xLz8vaW5pdC5sdWEAY3BhdGgATFVBX0NQQVRIAC4vPy5zbzsvdXNyL2xvY2FsL2xpYi9sdWEvNS4xLz8uc287L3Vzci9sb2NhbC9saWIvbHVhLzUuMS9sb2FkYWxsLnNvAC8KOwo/CiEKLQBjb25maWcAbG9hZGVkAHByZWxvYWQAbW9kdWxlAHJlcXVpcmUAbG9vcCBvciBwcmV2aW91cyBlcnJvciBsb2FkaW5nIG1vZHVsZSAnJXMnACdwYWNrYWdlLmxvYWRlcnMnIG11c3QgYmUgYSB0YWJsZQBtb2R1bGUgJyVzJyBub3QgZm91bmQ6JXMAX05BTUUAJ21vZHVsZScgbm90IGNhbGxlZCBmcm9tIGEgTHVhIGZ1bmN0aW9uAF9NAF9QQUNLQUdFADs7ADsBOwABAAoJbm8gbW9kdWxlICclcycgaW4gZmlsZSAnJXMnAGVycm9yIGxvYWRpbmcgbW9kdWxlICclcycgZnJvbSBmaWxlICclcyc6CgklcwBzeW1ib2wgJyVzJyBub3QgZm91bmQAZHlsZCBub3QgcHJlc2VudABmaWxlIGlzIG5vdCBhIGJ1bmRsZQBsaWJyYXJ5IGlzIGZvciB3cm9uZyBDUFUgdHlwZQBiYWQgZm9ybWF0AGNhbm5vdCBhY2Nlc3MgZmlsZQB1bmFibGUgdG8gbG9hZCBsaWJyYXJ5ACVzJXMATE9BRExJQjogAF8AX2x1YW9wZW5fJXMALwAncGFja2FnZS4lcycgbXVzdCBiZSBhIHN0cmluZwAKCW5vIGZpbGUgJyVzJwAncGFja2FnZS5wcmVsb2FkJyBtdXN0IGJlIGEgdGFibGUACglubyBmaWVsZCBwYWNrYWdlLnByZWxvYWRbJyVzJ10AbG9hZGxpYgBzZWVhbGwAaW5pdAAobnVsbCkAJXAAJQAKDQBbc3RyaW5nICIAIl0ATU9WRQBMT0FESwBMT0FEQk9PTABMT0FETklMAEdFVFVQVkFMAEdFVEdMT0JBTABHRVRUQUJMRQBTRVRHTE9CQUwAU0VUVVBWQUwAU0VUVEFCTEUATkVXVEFCTEUAU0VMRgBBREQAU1VCAE1VTABESVYATU9EAFBPVwBVTk0ATk9UAExFTgBDT05DQVQASk1QAEVRAExUAExFAFRFU1QAVEVTVFNFVABDQUxMAFRBSUxDQUxMAFJFVFVSTgBGT1JMT09QAEZPUlBSRVAAVEZPUkxPT1AAU0VUTElTVABDTE9TRQBDTE9TVVJFAFZBUkFSRwBjbG9jawBkYXRlAGRpZmZ0aW1lAGV4ZWN1dGUAZXhpdABnZXRlbnYAcmVtb3ZlAHJlbmFtZQBzZXRsb2NhbGUAdGltZQB0bXBuYW1lAC90bXAvbHVhX1hYWFhYWAB1bmFibGUgdG8gZ2VuZXJhdGUgYSB1bmlxdWUgZmlsZW5hbWUAc2VjAGhvdXIAZGF5AG1vbnRoAHllYXIAaXNkc3QAZmllbGQgJyVzJyBtaXNzaW5nIGluIGRhdGUgdGFibGUAYWxsAGNvbGxhdGUAY3R5cGUAbW9uZXRhcnkAbnVtZXJpYwAqdAB3ZGF5AHlkYXkAc3ludGF4IGVycm9yAHZhcmlhYmxlcyBpbiBhc3NpZ25tZW50AGNhbm5vdCB1c2UgJy4uLicgb3V0c2lkZSBhIHZhcmFyZyBmdW5jdGlvbgBzZWxmAGFyZwA8bmFtZT4gb3IgJy4uLicgZXhwZWN0ZWQAbG9jYWwgdmFyaWFibGVzAHRvbyBtYW55IGxvY2FsIHZhcmlhYmxlcwBpdGVtcyBpbiBhIGNvbnN0cnVjdG9yAG1haW4gZnVuY3Rpb24gaGFzIG1vcmUgdGhhbiAlZCAlcwBmdW5jdGlvbiBhdCBsaW5lICVkIGhhcyBtb3JlIHRoYW4gJWQgJXMAYW1iaWd1b3VzIHN5bnRheCAoZnVuY3Rpb24gY2FsbCB4IG5ldyBzdGF0ZW1lbnQpAGZ1bmN0aW9uIGFyZ3VtZW50cyBleHBlY3RlZAB1bmV4cGVjdGVkIHN5bWJvbAB1cHZhbHVlcwBubyBsb29wIHRvIGJyZWFrACc9JyBvciAnaW4nIGV4cGVjdGVkAChmb3IgZ2VuZXJhdG9yKQAoZm9yIHN0YXRlKQAoZm9yIGNvbnRyb2wpAChmb3IgaW5kZXgpAChmb3IgbGltaXQpAChmb3Igc3RlcCkAJyVzJyBleHBlY3RlZCAodG8gY2xvc2UgJyVzJyBhdCBsaW5lICVkKQAnJXMnIGV4cGVjdGVkAGNodW5rIGhhcyB0b28gbWFueSBzeW50YXggbGV2ZWxzAGdtYXRjaABnZmluZABieXRlAGNoYXIAZHVtcABmaW5kAGZvcm1hdABnc3ViAGxlbgBsb3dlcgBtYXRjaAByZXAAcmV2ZXJzZQBzdWIAdXBwZXIAXiQqKz8uKFslLQB0b28gbWFueSBjYXB0dXJlcwBpbnZhbGlkIGNhcHR1cmUgaW5kZXgAdW5maW5pc2hlZCBjYXB0dXJlAG1pc3NpbmcgJ1snIGFmdGVyICclJWYnIGluIHBhdHRlcm4AbWFsZm9ybWVkIHBhdHRlcm4gKGVuZHMgd2l0aCAnJSUnKQBtYWxmb3JtZWQgcGF0dGVybiAobWlzc2luZyAnXScpAHVuYmFsYW5jZWQgcGF0dGVybgBpbnZhbGlkIHBhdHRlcm4gY2FwdHVyZQBzdHJpbmcvZnVuY3Rpb24vdGFibGUgZXhwZWN0ZWQAaW52YWxpZCByZXBsYWNlbWVudCB2YWx1ZSAoYSAlcykAJ3N0cmluZy5nZmluZCcgd2FzIHJlbmFtZWQgdG8gJ3N0cmluZy5nbWF0Y2gnAGludmFsaWQgb3B0aW9uICclJSVjJyB0byAnZm9ybWF0JwBccgBcMDAwAGwALSsgIzAAaW52YWxpZCBmb3JtYXQgKHJlcGVhdGVkIGZsYWdzKQBpbnZhbGlkIGZvcm1hdCAod2lkdGggb3IgcHJlY2lzaW9uIHRvbyBsb25nKQB1bmFibGUgdG8gZHVtcCBnaXZlbiBmdW5jdGlvbgBpbnZhbGlkIHZhbHVlAHN0cmluZyBzbGljZSB0b28gbG9uZwB0YWJsZSBpbmRleCBpcyBuaWwAdGFibGUgaW5kZXggaXMgTmFOAHRhYmxlIG92ZXJmbG93AGludmFsaWQga2V5IHRvICduZXh0JwBjb25jYXQAZm9yZWFjaABmb3JlYWNoaQBnZXRuAG1heG4AaW5zZXJ0AHNldG4Ac29ydABpbnZhbGlkIG9yZGVyIGZ1bmN0aW9uIGZvciBzb3J0aW5nACdzZXRuJyBpcyBvYnNvbGV0ZQB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzIHRvICdpbnNlcnQnAGludmFsaWQgdmFsdWUgKCVzKSBhdCBpbmRleCAlZCBpbiB0YWJsZSBmb3IgJ2NvbmNhdCcAYm9vbGVhbgB1c2VyZGF0YQBudW1iZXIAdGhyZWFkAHByb3RvAHVwdmFsAF9fbmV3aW5kZXgAX19lcQBfX2FkZABfX3N1YgBfX211bABfX2RpdgBfX21vZABfX3BvdwBfX3VubQBfX2xlbgBfX2x0AF9fbGUAX19jb25jYXQAX19jYWxsABtMdWEAYmluYXJ5IHN0cmluZwA9PwBjb2RlIHRvbyBkZWVwAGJhZCBjb2RlAHVuZXhwZWN0ZWQgZW5kAGJhZCBjb25zdGFudABiYWQgaW50ZWdlcgAlczogJXMgaW4gcHJlY29tcGlsZWQgY2h1bmsAYmFkIGhlYWRlcgBpbmRleABsb29wIGluIGdldHRhYmxlAGxvb3AgaW4gc2V0dGFibGUAc3RyaW5nIGxlbmd0aCBvdmVyZmxvdwBnZXQgbGVuZ3RoIG9mACdmb3InIGluaXRpYWwgdmFsdWUgbXVzdCBiZSBhIG51bWJlcgAnZm9yJyBsaW1pdCBtdXN0IGJlIGEgbnVtYmVyACdmb3InIHN0ZXAgbXVzdCBiZSBhIG51bWJlcgB1bmFibGUgdG8gc3dpdGNoIHRvIGRpcmVjdG9yeSAnJXMnAGNwICVzICVzAHVuYWJsZSB0byBjb3B5IGZpbGUgdG8gJyVzJwBtYWpvcnZlcnNpb24AbWlub3J2ZXJzaW9uAHJldmlzaW9uAGRlc2NyaXB0aW9uAE1hYyBPUyBYAE1hYyBPUyBYIFRpZ2VyAE1hYyBPUyBYIExlb3BhcmQATWFjIE9TIFggU25vdyBMZW9wYXJkAE1hYyBPUyBYIExpb24AJXMvJXMAdW5hYmxlIHRvIGNyZWF0ZSBkaXJlY3RvcnkgJyVzJwB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJXMnACclcycgY291bGQgbm90IGJlIGFjY2Vzc2VkACclcycgd2FzIG5vdCBmb3VuZABBbiAgdW5rbm93biBlcnJvciAlZCBvY2N1cmVkIHdoaWxlIGFjY2Vzc2luZyAnJXMnAG10aW1lAHNpemUAL2Rldi91cmFuZG9tACUwMlglMDJYJTAyWCUwMlgtJTAyWCUwMlgtJTAyWCUwMlgtJTAyWCUwMlgtJTAyWCUwMlglMDJYJTAyWCUwMlglMDJYAENvcHlyaWdodCAoQykgMTk5NC0yMDA4IEx1YS5vcmcsIFBVQy1SaW8AX0NPUFlSSUdIVABIRUFEAF9QUkVNQUtFX1ZFUlNJT04AQ29weXJpZ2h0IChDKSAyMDAyLTIwMTIgSmFzb24gUGVya2lucyBhbmQgdGhlIFByZW1ha2UgUHJvamVjdABfUFJFTUFLRV9DT1BZUklHSFQAbWFjb3N4AF9PUwBQQVRIAF9wcmVtYWtlX21haW4AX0FDVElPTgBfQVJHUwBfT1BUSU9OUwBzY3JpcHRzAGVuZHN3aXRoAGNoZGlyAGNvcHlmaWxlAF9pczY0Yml0AGlzZGlyAGdldGN3ZABnZXR2ZXJzaW9uAGlzZmlsZQBtYXRjaGRvbmUAbWF0Y2hpc2ZpbGUAbWF0Y2huYW1lAG1hdGNobmV4dABtYXRjaHN0YXJ0AG1rZGlyAHBhdGhzZWFyY2gAcm1kaXIAc3RhdAB1dWlkAGlzYWJzb2x1dGUAX1BSRU1BS0VfQ09NTUFORABmdW5jdGlvbiBvcy5leGVjdXRlZihjbWQsIC4uLikKY21kID0gc3RyaW5nLmZvcm1hdChjbWQsIHVucGFjayhhcmcpKQpyZXR1cm4gb3MuZXhlY3V0ZShjbWQpCmVuZApsb2NhbCBmdW5jdGlvbiBwYXJzZV9sZF9zb19jb25mKGNvbmZfZmlsZSkKbG9jYWwgZmlyc3QsIGxhc3QKbG9jYWwgZGlycyA9IHsgfQpmb3IgbGluZSBpbiBpby5saW5lcyhjb25mX2ZpbGUpIGRvCmZpcnN0ID0gbGluZTpmaW5kKCIjIiwgMSwgdHJ1ZSkKaWYgZmlyc3Qgfj0gbmlsIHRoZW4KbGluZSA9IGxpbmU6c3ViKDEsIGZpcnN0IC0gMSkKZW5kCmlmIGxpbmUgfj0gIiIgdGhlbgpmaXJzdCwgbGFzdCA9IGxpbmU6ZmluZCgiaW5jbHVkZSVzKyIpCmlmIGZpcnN0IH49IG5pbCB0aGVuCmxvY2FsIGluY2x1ZGVfZ2xvYiA9IGxpbmU6c3ViKGxhc3QgKyAxKQpsb2NhbCBpbmNsdWRlcyA9IG9zLm1hdGNoZmlsZXMoaW5jbHVkZV9nbG9iKQpmb3IgXywgdiBpbiBpcGFpcnMoaW5jbHVkZXMpIGRvCmRpcnMgPSB0YWJsZS5qb2luKGRpcnMsIHBhcnNlX2xkX3NvX2NvbmYodikpCmVuZAplbHNlCnRhYmxlLmluc2VydChkaXJzLCBsaW5lKQplbmQKZW5kCmVuZApyZXR1cm4gZGlycwplbmQKZnVuY3Rpb24gb3MuZmluZGxpYihsaWJuYW1lKQpsb2NhbCBwYXRoLCBmb3JtYXRzCmlmIG9zLmlzKCJ3aW5kb3dzIikgdGhlbgpmb3JtYXRzID0geyAiJXMuZGxsIiwgIiVzIiB9CnBhdGggPSBvcy5nZXRlbnYoIlBBVEgiKQplbHNlaWYgb3MuaXMoImhhaWt1IikgdGhlbgpmb3JtYXRzID0geyAibGliJXMuc28iLCAiJXMuc28iIH0KcGF0aCA9IG9zLmdldGVudigiTElCUkFSWV9QQVRIIikKZWxzZQppZiBvcy5pcygibWFjb3N4IikgdGhlbgpmb3JtYXRzID0geyAibGliJXMuZHlsaWIiLCAiJXMuZHlsaWIiIH0KcGF0aCA9IG9zLmdldGVudigiRFlMRF9MSUJSQVJZX1BBVEgiKQplbHNlCmZvcm1hdHMgPSB7ICJsaWIlcy5zbyIsICIlcy5zbyIgfQpwYXRoID0gb3MuZ2V0ZW52KCJMRF9MSUJSQVJZX1BBVEgiKSBvciAiIgpmb3IgXywgdiBpbiBpcGFpcnMocGFyc2VfbGRfc29fY29uZigiL2V0Yy9sZC5zby5jb25mIikpIGRvCnBhdGggPSBwYXRoIC4uICI6IiAuLiB2CmVuZAplbmQKdGFibGUuaW5zZXJ0KGZvcm1hdHMsICIlcyIpCnBhdGggPSBwYXRoIG9yICIiCmlmIG9zLmlzNjRiaXQoKSB0aGVuCnBhdGggPSBwYXRoIC4uICI6L2xpYjY0Oi91c3IvbGliNjQvOnVzci9sb2NhbC9saWI2NCIKZW5kCnBhdGggPSBwYXRoIC4uICI6L2xpYjovdXNyL2xpYjovdXNyL2xvY2FsL2xpYiIKZW5kCmZvciBfLCBmbXQgaW4gaXBhaXJzKGZvcm1hdHMpIGRvCmxvY2FsIG5hbWUgPSBzdHJpbmcuZm9ybWF0KGZtdCwgbGlibmFtZSkKbG9jYWwgcmVzdWx0ID0gb3MucGF0aHNlYXJjaChuYW1lLCBwYXRoKQppZiByZXN1bHQgdGhlbiByZXR1cm4gcmVzdWx0IGVuZAplbmQKZW5kCmZ1bmN0aW9uIG9zLmdldCgpCnJldHVybiBfT1BUSU9OUy5vcyBvciBfT1MKZW5kCmZ1bmN0aW9uIG9zLmlzKGlkKQpyZXR1cm4gKG9zLmdldCgpOmxvd2VyKCkgPT0gaWQ6bG93ZXIoKSkKZW5kCmxvY2FsIF82NEJpdEhvc3RUeXBlcyA9IHsKIng4Nl82NCIsCiJpYTY0IiwKImFtZDY0IiwKInBwYzY0IiwKInBvd2VycGM2NCIsCiJzcGFyYzY0Igp9CmZ1bmN0aW9uIG9zLmlzNjRiaXQoKQppZiAob3MuX2lzNjRiaXQoKSkgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKbG9jYWwgYXJjaAppZiBfT1MgPT0gIndpbmRvd3MiIHRoZW4KYXJjaCA9IG9zLmdldGVudigiUFJPQ0VTU09SX0FSQ0hJVEVDVFVSRSIpCmVsc2VpZiBfT1MgPT0gIm1hY29zeCIgdGhlbgphcmNoID0gb3Mub3V0cHV0b2YoImVjaG8gJEhPU1RUWVBFIikKZWxzZQphcmNoID0gb3Mub3V0cHV0b2YoInVuYW1lIC1tIikKZW5kCmFyY2ggPSBhcmNoOmxvd2VyKCkKZm9yIF8sIGhvc3R0eXBlIGluIGlwYWlycyhfNjRCaXRIb3N0VHlwZXMpIGRvCmlmIGFyY2g6ZmluZChob3N0dHlwZSkgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKZW5kCnJldHVybiBmYWxzZQplbmQKbG9jYWwgZnVuY3Rpb24gZG9tYXRjaChyZXN1bHQsIG1hc2ssIHdhbnRmaWxlcykKaWYgbWFzazpzdGFydHN3aXRoKCIuLyIpIHRoZW4KbWFzayA9IG1hc2s6c3ViKDMpCmVuZApsb2NhbCBiYXNlZGlyID0gbWFzawpsb2NhbCBzdGFycG9zID0gbWFzazpmaW5kKCIlKiIpCmlmIHN0YXJwb3MgdGhlbgpiYXNlZGlyID0gYmFzZWRpcjpzdWIoMSwgc3RhcnBvcyAtIDEpCmVuZApiYXNlZGlyID0gcGF0aC5nZXRkaXJlY3RvcnkoYmFzZWRpcikKaWYgKGJhc2VkaXIgPT0gIi4iKSB0aGVuIGJhc2VkaXIgPSAiIiBlbmQKbG9jYWwgcmVjdXJzZSA9IG1hc2s6ZmluZCgiKioiLCBuaWwsIHRydWUpCm1hc2sgPSBwYXRoLndpbGRjYXJkcyhtYXNrKQpsb2NhbCBmdW5jdGlvbiBtYXRjaHdhbGtlcihiYXNlZGlyKQpsb2NhbCB3aWxkY2FyZCA9IHBhdGguam9pbihiYXNlZGlyLCAiKiIpCmxvY2FsIG0gPSBvcy5tYXRjaHN0YXJ0KHdpbGRjYXJkKQp3aGlsZSAob3MubWF0Y2huZXh0KG0pKSBkbwpsb2NhbCBpc2ZpbGUgPSBvcy5tYXRjaGlzZmlsZShtKQppZiAoKHdhbnRmaWxlcyBhbmQgaXNmaWxlKSBvciAobm90IHdhbnRmaWxlcyBhbmQgbm90IGlzZmlsZSkpIHRoZW4KbG9jYWwgZm5hbWUgPSBwYXRoLmpvaW4oYmFzZWRpciwgb3MubWF0Y2huYW1lKG0pKQppZiBmbmFtZTptYXRjaChtYXNrKSA9PSBmbmFtZSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsIGZuYW1lKQplbmQKZW5kCmVuZApvcy5tYXRjaGRvbmUobSkKaWYgcmVjdXJzZSB0aGVuCm0gPSBvcy5tYXRjaHN0YXJ0KHdpbGRjYXJkKQp3aGlsZSAob3MubWF0Y2huZXh0KG0pKSBkbwppZiBub3Qgb3MubWF0Y2hpc2ZpbGUobSkgdGhlbgpsb2NhbCBkaXJuYW1lID0gb3MubWF0Y2huYW1lKG0pCm1hdGNod2Fsa2VyKHBhdGguam9pbihiYXNlZGlyLCBkaXJuYW1lKSkKZW5kCmVuZApvcy5tYXRjaGRvbmUobSkKZW5kCmVuZAptYXRjaHdhbGtlcihiYXNlZGlyKQplbmQKZnVuY3Rpb24gb3MubWF0Y2hkaXJzKC4uLikKbG9jYWwgcmVzdWx0ID0geyB9CmZvciBfLCBtYXNrIGluIGlwYWlycyhhcmcpIGRvCmRvbWF0Y2gocmVzdWx0LCBtYXNrLCBmYWxzZSkKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIG9zLm1hdGNoZmlsZXMoLi4uKQpsb2NhbCByZXN1bHQgPSB7IH0KZm9yIF8sIG1hc2sgaW4gaXBhaXJzKGFyZykgZG8KZG9tYXRjaChyZXN1bHQsIG1hc2ssIHRydWUpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApsb2NhbCBidWlsdGluX21rZGlyID0gb3MubWtkaXIKZnVuY3Rpb24gb3MubWtkaXIocCkKbG9jYWwgZGlyID0gaWlmKHA6c3RhcnRzd2l0aCgiLyIpLCAiLyIsICIiKQpmb3IgcGFydCBpbiBwOmdtYXRjaCgiW14vXSsiKSBkbwpkaXIgPSBkaXIgLi4gcGFydAppZiAocGFydCB+PSAiIiBhbmQgbm90IHBhdGguaXNhYnNvbHV0ZShwYXJ0KSBhbmQgbm90IG9zLmlzZGlyKGRpcikpIHRoZW4KbG9jYWwgb2ssIGVyciA9IGJ1aWx0aW5fbWtkaXIoZGlyKQppZiAobm90IG9rKSB0aGVuCnJldHVybiBuaWwsIGVycgplbmQKZW5kCmRpciA9IGRpciAuLiAiLyIKZW5kCnJldHVybiB0cnVlCmVuZApmdW5jdGlvbiBvcy5vdXRwdXRvZihjbWQpCmxvY2FsIHBpcGUgPSBpby5wb3BlbihjbWQpCmxvY2FsIHJlc3VsdCA9IHBpcGU6cmVhZCgnKmEnKQpwaXBlOmNsb3NlKCkKcmV0dXJuIHJlc3VsdAplbmQKbG9jYWwgYnVpbHRpbl9ybWRpciA9IG9zLnJtZGlyCmZ1bmN0aW9uIG9zLnJtZGlyKHApCmxvY2FsIGRpcnMgPSBvcy5tYXRjaGRpcnMocCAuLiAiLyoiKQpmb3IgXywgZG5hbWUgaW4gaXBhaXJzKGRpcnMpIGRvCm9zLnJtZGlyKGRuYW1lKQplbmQKbG9jYWwgZmlsZXMgPSBvcy5tYXRjaGZpbGVzKHAgLi4gIi8qIikKZm9yIF8sIGZuYW1lIGluIGlwYWlycyhmaWxlcykgZG8Kb3MucmVtb3ZlKGZuYW1lKQplbmQKYnVpbHRpbl9ybWRpcihwKQplbmQKAGZ1bmN0aW9uIHBhdGguZ2V0YWJzb2x1dGUocCkKcCA9IHBhdGgudHJhbnNsYXRlKHAsICIvIikKaWYgKHAgPT0gIiIpIHRoZW4gcCA9ICIuIiBlbmQKbG9jYWwgcmVzdWx0ID0gaWlmIChwYXRoLmlzYWJzb2x1dGUocCksIG5pbCwgb3MuZ2V0Y3dkKCkpCmZvciBuLCBwYXJ0IGluIGlwYWlycyhwOmV4cGxvZGUoIi8iLCB0cnVlKSkgZG8KaWYgKHBhcnQgPT0gIiIgYW5kIG4gPT0gMSkgdGhlbgpyZXN1bHQgPSAiLyIKZWxzZWlmIChwYXJ0ID09ICIuLiIpIHRoZW4KcmVzdWx0ID0gcGF0aC5nZXRkaXJlY3RvcnkocmVzdWx0KQplbHNlaWYgKHBhcnQgfj0gIi4iKSB0aGVuCmlmIChwYXJ0OnN0YXJ0c3dpdGgoIiQiKSBhbmQgbiA+IDEpIHRoZW4KcmVzdWx0ID0gcmVzdWx0IC4uICIvIiAuLiBwYXJ0CmVsc2UKcmVzdWx0ID0gcGF0aC5qb2luKHJlc3VsdCwgcGFydCkKZW5kCmVuZAplbmQKcmVzdWx0ID0gaWlmKHJlc3VsdDplbmRzd2l0aCgiLyIpLCByZXN1bHQ6c3ViKDEsIC0yKSwgcmVzdWx0KQpyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwYXRoLmdldGJhc2VuYW1lKHApCmxvY2FsIG5hbWUgPSBwYXRoLmdldG5hbWUocCkKbG9jYWwgaSA9IG5hbWU6ZmluZGxhc3QoIi4iLCB0cnVlKQppZiAoaSkgdGhlbgpyZXR1cm4gbmFtZTpzdWIoMSwgaSAtIDEpCmVsc2UKcmV0dXJuIG5hbWUKZW5kCmVuZApmdW5jdGlvbiBwYXRoLmdldGRpcmVjdG9yeShwKQpsb2NhbCBpID0gcDpmaW5kbGFzdCgiLyIsIHRydWUpCmlmIChpKSB0aGVuCmlmIGkgPiAxIHRoZW4gaSA9IGkgLSAxIGVuZApyZXR1cm4gcDpzdWIoMSwgaSkKZWxzZQpyZXR1cm4gIi4iCmVuZAplbmQKZnVuY3Rpb24gcGF0aC5nZXRkcml2ZShwKQpsb2NhbCBjaDEgPSBwOnN1YigxLDEpCmxvY2FsIGNoMiA9IHA6c3ViKDIsMikKaWYgY2gyID09ICI6IiB0aGVuCnJldHVybiBjaDEKZW5kCmVuZApmdW5jdGlvbiBwYXRoLmdldGV4dGVuc2lvbihwKQpsb2NhbCBpID0gcDpmaW5kbGFzdCgiLiIsIHRydWUpCmlmIChpKSB0aGVuCnJldHVybiBwOnN1YihpKQplbHNlCnJldHVybiAiIgplbmQKZW5kCmZ1bmN0aW9uIHBhdGguZ2V0bmFtZShwKQpsb2NhbCBpID0gcDpmaW5kbGFzdCgiWy9cXF0iKQppZiAoaSkgdGhlbgpyZXR1cm4gcDpzdWIoaSArIDEpCmVsc2UKcmV0dXJuIHAKZW5kCmVuZApmdW5jdGlvbiBwYXRoLmdldHJlbGF0aXZlKHNyYywgZHN0KQpzcmMgPSBwYXRoLmdldGFic29sdXRlKHNyYykKZHN0ID0gcGF0aC5nZXRhYnNvbHV0ZShkc3QpCmlmIChzcmMgPT0gZHN0KSB0aGVuCnJldHVybiAiLiIKZW5kCmlmIGRzdDpzdGFydHN3aXRoKCIkIikgdGhlbgpyZXR1cm4gZHN0CmVuZApzcmMgPSBzcmMgLi4gIi8iCmRzdCA9IGRzdCAuLiAiLyIKbG9jYWwgaWR4ID0gMAp3aGlsZSAodHJ1ZSkgZG8KbG9jYWwgdHN0ID0gc3JjOmZpbmQoIi8iLCBpZHggKyAxLCB0cnVlKQppZiB0c3QgdGhlbgppZiBzcmM6c3ViKDEsdHN0KSA9PSBkc3Q6c3ViKDEsdHN0KSB0aGVuCmlkeCA9IHRzdAplbHNlCmJyZWFrCmVuZAplbHNlCmJyZWFrCmVuZAplbmQKbG9jYWwgZmlyc3QgPSBzcmM6ZmluZCgiLyIsIDAsIHRydWUpCmlmIGlkeCA8PSBmaXJzdCB0aGVuCnJldHVybiBkc3Q6c3ViKDEsIC0yKQplbmQKc3JjID0gc3JjOnN1YihpZHggKyAxKQpkc3QgPSBkc3Q6c3ViKGlkeCArIDEpCmxvY2FsIHJlc3VsdCA9ICIiCmlkeCA9IHNyYzpmaW5kKCIvIikKd2hpbGUgKGlkeCkgZG8KcmVzdWx0ID0gcmVzdWx0IC4uICIuLi8iCmlkeCA9IHNyYzpmaW5kKCIvIiwgaWR4ICsgMSkKZW5kCnJlc3VsdCA9IHJlc3VsdCAuLiBkc3QKcmV0dXJuIHJlc3VsdDpzdWIoMSwgLTIpCmVuZApmdW5jdGlvbiBwYXRoLmlzY2ZpbGUoZm5hbWUpCmxvY2FsIGV4dGVuc2lvbnMgPSB7ICIuYyIsICIucyIsICIubSIgfQpsb2NhbCBleHQgPSBwYXRoLmdldGV4dGVuc2lvbihmbmFtZSk6bG93ZXIoKQpyZXR1cm4gdGFibGUuY29udGFpbnMoZXh0ZW5zaW9ucywgZXh0KQplbmQKZnVuY3Rpb24gcGF0aC5pc2NwcGZpbGUoZm5hbWUpCmxvY2FsIGV4dGVuc2lvbnMgPSB7ICIuY2MiLCAiLmNwcCIsICIuY3h4IiwgIi5jIiwgIi5zIiwgIi5tIiwgIi5tbSIgfQpsb2NhbCBleHQgPSBwYXRoLmdldGV4dGVuc2lvbihmbmFtZSk6bG93ZXIoKQpyZXR1cm4gdGFibGUuY29udGFpbnMoZXh0ZW5zaW9ucywgZXh0KQplbmQKZnVuY3Rpb24gcGF0aC5pc2NwcGhlYWRlcihmbmFtZSkKbG9jYWwgZXh0ZW5zaW9ucyA9IHsgIi5oIiwgIi5oaCIsICIuaHBwIiwgIi5oeHgiIH0KbG9jYWwgZXh0ID0gcGF0aC5nZXRleHRlbnNpb24oZm5hbWUpOmxvd2VyKCkKcmV0dXJuIHRhYmxlLmNvbnRhaW5zKGV4dGVuc2lvbnMsIGV4dCkKZW5kCmZ1bmN0aW9uIHBhdGguaXNyZXNvdXJjZWZpbGUoZm5hbWUpCmxvY2FsIGV4dGVuc2lvbnMgPSB7ICIucmMiIH0KbG9jYWwgZXh0ID0gcGF0aC5nZXRleHRlbnNpb24oZm5hbWUpOmxvd2VyKCkKcmV0dXJuIHRhYmxlLmNvbnRhaW5zKGV4dGVuc2lvbnMsIGV4dCkKZW5kCmZ1bmN0aW9uIHBhdGguam9pbiguLi4pCmxvY2FsIG51bWFyZ3MgPSBzZWxlY3QoIiMiLCAuLi4pCmlmIG51bWFyZ3MgPT0gMCB0aGVuCnJldHVybiAiIjsKZW5kCmxvY2FsIGFsbHBhcnRzID0ge30KZm9yIGkgPSBudW1hcmdzLCAxLCAtMSBkbwpsb2NhbCBwYXJ0ID0gc2VsZWN0KGksIC4uLikKaWYgcGFydCBhbmQgI3BhcnQgPiAwIGFuZCBwYXJ0IH49ICIuIiB0aGVuCndoaWxlIHBhcnQ6ZW5kc3dpdGgoIi8iKSBkbwpwYXJ0ID0gcGFydDpzdWIoMSwgLTIpCmVuZAp0YWJsZS5pbnNlcnQoYWxscGFydHMsIDEsIHBhcnQpCmlmIHBhdGguaXNhYnNvbHV0ZShwYXJ0KSB0aGVuCmJyZWFrCmVuZAplbmQKZW5kCnJldHVybiB0YWJsZS5jb25jYXQoYWxscGFydHMsICIvIikKZW5kCmZ1bmN0aW9uIHBhdGgucmViYXNlKHAsIG9sZGJhc2UsIG5ld2Jhc2UpCnAgPSBwYXRoLmdldGFic29sdXRlKHBhdGguam9pbihvbGRiYXNlLCBwKSkKcCA9IHBhdGguZ2V0cmVsYXRpdmUobmV3YmFzZSwgcCkKcmV0dXJuIHAKZW5kCmZ1bmN0aW9uIHBhdGgudHJhbnNsYXRlKHAsIHNlcCkKaWYgKHR5cGUocCkgPT0gInRhYmxlIikgdGhlbgpsb2NhbCByZXN1bHQgPSB7IH0KZm9yIF8sIHZhbHVlIGluIGlwYWlycyhwKSBkbwp0YWJsZS5pbnNlcnQocmVzdWx0LCBwYXRoLnRyYW5zbGF0ZSh2YWx1ZSkpCmVuZApyZXR1cm4gcmVzdWx0CmVsc2UKaWYgKG5vdCBzZXApIHRoZW4KaWYgKG9zLmlzKCJ3aW5kb3dzIikpIHRoZW4Kc2VwID0gIlxcIgplbHNlCnNlcCA9ICIvIgplbmQKZW5kCmxvY2FsIHJlc3VsdCA9IHA6Z3N1YigiWy9cXF0iLCBzZXApCnJldHVybiByZXN1bHQKZW5kCmVuZApmdW5jdGlvbiBwYXRoLndpbGRjYXJkcyhwYXR0ZXJuKQpwYXR0ZXJuID0gcGF0dGVybjpnc3ViKCIoWyUrJS4lLSVeJSQlKCUpJSVdKSIsICIlJSUxIikKcGF0dGVybiA9IHBhdHRlcm46Z3N1YigiJSolKiIsICJcMDAxIikKcGF0dGVybiA9IHBhdHRlcm46Z3N1YigiJSoiLCAiXDAwMiIpCnBhdHRlcm4gPSBwYXR0ZXJuOmdzdWIoIlwwMDEiLCAiLioiKQpwYXR0ZXJuID0gcGF0dGVybjpnc3ViKCJcMDAyIiwgIlteL10qIikKcmV0dXJuIHBhdHRlcm4KZW5kCgBmdW5jdGlvbiBzdHJpbmcuZXhwbG9kZShzLCBwYXR0ZXJuLCBwbGFpbikKaWYgKHBhdHRlcm4gPT0gJycpIHRoZW4gcmV0dXJuIGZhbHNlIGVuZApsb2NhbCBwb3MgPSAwCmxvY2FsIGFyciA9IHsgfQpmb3Igc3Qsc3AgaW4gZnVuY3Rpb24oKSByZXR1cm4gczpmaW5kKHBhdHRlcm4sIHBvcywgcGxhaW4pIGVuZCBkbwp0YWJsZS5pbnNlcnQoYXJyLCBzOnN1Yihwb3MsIHN0LTEpKQpwb3MgPSBzcCArIDEKZW5kCnRhYmxlLmluc2VydChhcnIsIHM6c3ViKHBvcykpCnJldHVybiBhcnIKZW5kCmZ1bmN0aW9uIHN0cmluZy5maW5kbGFzdChzLCBwYXR0ZXJuLCBwbGFpbikKbG9jYWwgY3VyciA9IDAKcmVwZWF0CmxvY2FsIG5leHQgPSBzOmZpbmQocGF0dGVybiwgY3VyciArIDEsIHBsYWluKQppZiAobmV4dCkgdGhlbiBjdXJyID0gbmV4dCBlbmQKdW50aWwgKG5vdCBuZXh0KQppZiAoY3VyciA+IDApIHRoZW4KcmV0dXJuIGN1cnIKZW5kCmVuZApmdW5jdGlvbiBzdHJpbmcuc3RhcnRzd2l0aChoYXlzdGFjaywgbmVlZGxlKQpyZXR1cm4gKGhheXN0YWNrOmZpbmQobmVlZGxlLCAxLCB0cnVlKSA9PSAxKQplbmQKAGZ1bmN0aW9uIHRhYmxlLmNvbnRhaW5zKHQsIHZhbHVlKQpmb3IgXyx2IGluIHBhaXJzKHQpIGRvCmlmICh2ID09IHZhbHVlKSB0aGVuCnJldHVybiB0cnVlCmVuZAplbmQKcmV0dXJuIGZhbHNlCmVuZApmdW5jdGlvbiB0YWJsZS5leHRyYWN0KGFyciwgZm5hbWUpCmxvY2FsIHJlc3VsdCA9IHsgfQpmb3IgXyx2IGluIGlwYWlycyhhcnIpIGRvCnRhYmxlLmluc2VydChyZXN1bHQsIHZbZm5hbWVdKQplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gdGFibGUuZmxhdHRlbihhcnIpCmxvY2FsIHJlc3VsdCA9IHsgfQpsb2NhbCBmdW5jdGlvbiBmbGF0dGVuKGFycikKZm9yIF8sIHYgaW4gaXBhaXJzKGFycikgZG8KaWYgdHlwZSh2KSA9PSAidGFibGUiIHRoZW4KZmxhdHRlbih2KQplbHNlCnRhYmxlLmluc2VydChyZXN1bHQsIHYpCmVuZAplbmQKZW5kCmZsYXR0ZW4oYXJyKQpyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiB0YWJsZS5pbXBsb2RlKGFyciwgYmVmb3JlLCBhZnRlciwgYmV0d2VlbikKbG9jYWwgcmVzdWx0ID0gIiIKZm9yIF8sdiBpbiBpcGFpcnMoYXJyKSBkbwppZiAocmVzdWx0IH49ICIiIGFuZCBiZXR3ZWVuKSB0aGVuCnJlc3VsdCA9IHJlc3VsdCAuLiBiZXR3ZWVuCmVuZApyZXN1bHQgPSByZXN1bHQgLi4gYmVmb3JlIC4uIHYgLi4gYWZ0ZXIKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHRhYmxlLmluc2VydGZsYXQodGJsLCB2YWx1ZXMpCmlmIHR5cGUodmFsdWVzKSA9PSAidGFibGUiIHRoZW4KZm9yIF8sIHZhbHVlIGluIGlwYWlycyh2YWx1ZXMpIGRvCnRhYmxlLmluc2VydGZsYXQodGJsLCB2YWx1ZSkKZW5kCmVsc2UKdGFibGUuaW5zZXJ0KHRibCwgdmFsdWVzKQplbmQKZW5kCmZ1bmN0aW9uIHRhYmxlLmlzZW1wdHkodCkKcmV0dXJuIG5vdCBuZXh0KHQpCmVuZApmdW5jdGlvbiB0YWJsZS5qb2luKC4uLikKbG9jYWwgcmVzdWx0ID0geyB9CmZvciBfLHQgaW4gaXBhaXJzKGFyZykgZG8KaWYgdHlwZSh0KSA9PSAidGFibGUiIHRoZW4KZm9yIF8sdiBpbiBpcGFpcnModCkgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgdikKZW5kCmVsc2UKdGFibGUuaW5zZXJ0KHJlc3VsdCwgdCkKZW5kCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiB0YWJsZS5rZXlzKHRibCkKbG9jYWwga2V5cyA9IHt9CmZvciBrLCBfIGluIHBhaXJzKHRibCkgZG8KdGFibGUuaW5zZXJ0KGtleXMsIGspCmVuZApyZXR1cm4ga2V5cwplbmQKZnVuY3Rpb24gdGFibGUubWVyZ2UoLi4uKQpsb2NhbCByZXN1bHQgPSB7IH0KZm9yIF8sdCBpbiBpcGFpcnMoYXJnKSBkbwppZiB0eXBlKHQpID09ICJ0YWJsZSIgdGhlbgpmb3Igayx2IGluIHBhaXJzKHQpIGRvCnJlc3VsdFtrXSA9IHYKZW5kCmVsc2UKZXJyb3IoImludmFsaWQgdmFsdWUiKQplbmQKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHRhYmxlLnRyYW5zbGF0ZShhcnIsIHRyYW5zbGF0aW9uKQpsb2NhbCByZXN1bHQgPSB7IH0KZm9yIF8sIHZhbHVlIGluIGlwYWlycyhhcnIpIGRvCmxvY2FsIHR2YWx1ZQppZiB0eXBlKHRyYW5zbGF0aW9uKSA9PSAiZnVuY3Rpb24iIHRoZW4KdHZhbHVlID0gdHJhbnNsYXRpb24odmFsdWUpCmVsc2UKdHZhbHVlID0gdHJhbnNsYXRpb25bdmFsdWVdCmVuZAppZiAodHZhbHVlKSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsIHR2YWx1ZSkKZW5kCmVuZApyZXR1cm4gcmVzdWx0CmVuZAoAZnVuY3Rpb24gaW8uY2FwdHVyZSgpCmlvLmNhcHR1cmVkID0gJycKZW5kCmZ1bmN0aW9uIGlvLmVuZGNhcHR1cmUoKQpsb2NhbCBjYXB0dXJlZCA9IGlvLmNhcHR1cmVkCmlvLmNhcHR1cmVkID0gbmlsCnJldHVybiBjYXB0dXJlZAplbmQKbG9jYWwgYnVpbHRpbl9vcGVuID0gaW8ub3BlbgpmdW5jdGlvbiBpby5vcGVuKGZuYW1lLCBtb2RlKQppZiAobW9kZSkgdGhlbgppZiAobW9kZTpmaW5kKCJ3IikpIHRoZW4KbG9jYWwgZGlyID0gcGF0aC5nZXRkaXJlY3RvcnkoZm5hbWUpCm9rLCBlcnIgPSBvcy5ta2RpcihkaXIpCmlmIChub3Qgb2spIHRoZW4KZXJyb3IoZXJyLCAwKQplbmQKZW5kCmVuZApyZXR1cm4gYnVpbHRpbl9vcGVuKGZuYW1lLCBtb2RlKQplbmQKZnVuY3Rpb24gaW8ucHJpbnRmKG1zZywgLi4uKQppZiBub3QgaW8uZW9sIHRoZW4KaW8uZW9sID0gIlxuIgplbmQKaWYgbm90IGlvLmluZGVudCB0aGVuCmlvLmluZGVudCA9ICJcdCIKZW5kCmlmIHR5cGUobXNnKSA9PSAibnVtYmVyIiB0aGVuCnMgPSBzdHJpbmcucmVwKGlvLmluZGVudCwgbXNnKSAuLiBzdHJpbmcuZm9ybWF0KHVucGFjayhhcmcpKQplbHNlCnMgPSBzdHJpbmcuZm9ybWF0KG1zZywgdW5wYWNrKGFyZykpCmVuZAppZiBpby5jYXB0dXJlZCB0aGVuCmlvLmNhcHR1cmVkID0gaW8uY2FwdHVyZWQgLi4gcyAuLiBpby5lb2wKZWxzZQppby53cml0ZShzKQppby53cml0ZShpby5lb2wpCmVuZAplbmQKX3AgPSBpby5wcmludGYKAHByZW1ha2UgPSB7IH0KcHJlbWFrZS5wbGF0Zm9ybXMgPSAKewpOYXRpdmUgPSAKeyAKY2Znc3VmZml4ICAgICAgID0gIiIsCn0sCngzMiA9IAp7IApjZmdzdWZmaXggICAgICAgPSAiMzIiLAp9LAp4NjQgPSAKeyAKY2Znc3VmZml4ICAgICAgID0gIjY0IiwKfSwKVW5pdmVyc2FsID0gCnsgCmNmZ3N1ZmZpeCAgICAgICA9ICJ1bml2IiwKfSwKVW5pdmVyc2FsMzIgPSAKeyAKY2Znc3VmZml4ICAgICAgID0gInVuaXYzMiIsCn0sClVuaXZlcnNhbDY0ID0gCnsgCmNmZ3N1ZmZpeCAgICAgICA9ICJ1bml2NjQiLAp9LAppT1MgPSAKeyAKY2Znc3VmZml4ICAgICAgID0gImlvcyIsCmlzY3Jvc3Njb21waWxlciA9IHRydWUsCn0sClBTMyA9IAp7IApjZmdzdWZmaXggICAgICAgPSAicHMzIiwKaXNjcm9zc2NvbXBpbGVyID0gdHJ1ZSwKbm9zaGFyZWRsaWJzICAgID0gdHJ1ZSwKbmFtZXN0eWxlICAgICAgID0gIlBTMyIsCn0sCldpaURldiA9CnsKY2Znc3VmZml4ICAgICAgID0gIndpaSIsCmlzY3Jvc3Njb21waWxlciA9IHRydWUsCm5hbWVzdHlsZSAgICAgICA9ICJQUzMiLAp9LApYYm94MzYwID0gCnsgCmNmZ3N1ZmZpeCAgICAgICA9ICJ4Ym94MzYwIiwKaXNjcm9zc2NvbXBpbGVyID0gdHJ1ZSwKbmFtZXN0eWxlICAgICAgID0gIndpbmRvd3MiLAp9LAp9CmxvY2FsIGJ1aWx0aW5fZG9maWxlID0gZG9maWxlCmZ1bmN0aW9uIGRvZmlsZShmbmFtZSkKbG9jYWwgb2xkY3dkID0gb3MuZ2V0Y3dkKCkKbG9jYWwgb2xkZmlsZSA9IF9TQ1JJUFQKaWYgKG5vdCBvcy5pc2ZpbGUoZm5hbWUpKSB0aGVuCmxvY2FsIHBhdGggPSBvcy5wYXRoc2VhcmNoKGZuYW1lLCBfT1BUSU9OU1sic2NyaXB0cyJdLCBvcy5nZXRlbnYoIlBSRU1BS0VfUEFUSCIpKQppZiAocGF0aCkgdGhlbgpmbmFtZSA9IHBhdGguLiIvIi4uZm5hbWUKZW5kCmVuZApfU0NSSVBUID0gcGF0aC5nZXRhYnNvbHV0ZShmbmFtZSkKbG9jYWwgbmV3Y3dkID0gcGF0aC5nZXRkaXJlY3RvcnkoX1NDUklQVCkKb3MuY2hkaXIobmV3Y3dkKQpsb2NhbCBhLCBiLCBjLCBkLCBlLCBmID0gYnVpbHRpbl9kb2ZpbGUoX1NDUklQVCkKX1NDUklQVCA9IG9sZGZpbGUKb3MuY2hkaXIob2xkY3dkKQpyZXR1cm4gYSwgYiwgYywgZCwgZSwgZgplbmQKZnVuY3Rpb24gaWlmKGV4cHIsIHRydWV2YWwsIGZhbHNldmFsKQppZiAoZXhwcikgdGhlbgpyZXR1cm4gdHJ1ZXZhbAplbHNlCnJldHVybiBmYWxzZXZhbAplbmQKZW5kCmZ1bmN0aW9uIGluY2x1ZGUoZm5hbWUpCnJldHVybiBkb2ZpbGUoZm5hbWUgLi4gIi9wcmVtYWtlNC5sdWEiKQplbmQKZnVuY3Rpb24gcHJpbnRmKG1zZywgLi4uKQpwcmludChzdHJpbmcuZm9ybWF0KG1zZywgdW5wYWNrKGFyZykpKQplbmQKbG9jYWwgYnVpbHRpbl90eXBlID0gdHlwZQpmdW5jdGlvbiB0eXBlKHQpCmxvY2FsIG10ID0gZ2V0bWV0YXRhYmxlKHQpCmlmIChtdCkgdGhlbgppZiAobXQuX190eXBlKSB0aGVuCnJldHVybiBtdC5fX3R5cGUKZW5kCmVuZApyZXR1cm4gYnVpbHRpbl90eXBlKHQpCmVuZAoAcHJlbWFrZS5hY3Rpb24gPSB7IH0KcHJlbWFrZS5hY3Rpb24ubGlzdCA9IHsgfQpmdW5jdGlvbiBwcmVtYWtlLmFjdGlvbi5hZGQoYSkKbG9jYWwgbWlzc2luZwpmb3IgXywgZmllbGQgaW4gaXBhaXJzKHsiZGVzY3JpcHRpb24iLCAidHJpZ2dlciJ9KSBkbwppZiAobm90IGFbZmllbGRdKSB0aGVuCm1pc3NpbmcgPSBmaWVsZAplbmQKZW5kCmlmIChtaXNzaW5nKSB0aGVuCmVycm9yKCJhY3Rpb24gbmVlZHMgYSAiIC4uIG1pc3NpbmcsIDMpCmVuZApwcmVtYWtlLmFjdGlvbi5saXN0W2EudHJpZ2dlcl0gPSBhCmVuZApmdW5jdGlvbiBwcmVtYWtlLmFjdGlvbi5jYWxsKG5hbWUpCmxvY2FsIGEgPSBwcmVtYWtlLmFjdGlvbi5saXN0W25hbWVdCmZvciBzbG4gaW4gcHJlbWFrZS5zb2x1dGlvbi5lYWNoKCkgZG8KaWYgYS5vbnNvbHV0aW9uIHRoZW4KYS5vbnNvbHV0aW9uKHNsbikKZW5kCmZvciBwcmogaW4gcHJlbWFrZS5zb2x1dGlvbi5lYWNocHJvamVjdChzbG4pIGRvCmlmIGEub25wcm9qZWN0IHRoZW4KYS5vbnByb2plY3QocHJqKQplbmQKZW5kCmVuZAppZiBhLmV4ZWN1dGUgdGhlbgphLmV4ZWN1dGUoKQplbmQKZW5kCmZ1bmN0aW9uIHByZW1ha2UuYWN0aW9uLmN1cnJlbnQoKQpyZXR1cm4gcHJlbWFrZS5hY3Rpb24uZ2V0KF9BQ1RJT04pCmVuZApmdW5jdGlvbiBwcmVtYWtlLmFjdGlvbi5nZXQobmFtZSkKcmV0dXJuIHByZW1ha2UuYWN0aW9uLmxpc3RbbmFtZV0KZW5kCmZ1bmN0aW9uIHByZW1ha2UuYWN0aW9uLmVhY2goKQpsb2NhbCBrZXlzID0geyB9CmZvciBfLCBhY3Rpb24gaW4gcGFpcnMocHJlbWFrZS5hY3Rpb24ubGlzdCkgZG8KdGFibGUuaW5zZXJ0KGtleXMsIGFjdGlvbi50cmlnZ2VyKQplbmQKdGFibGUuc29ydChrZXlzKQpsb2NhbCBpID0gMApyZXR1cm4gZnVuY3Rpb24oKQppID0gaSArIDEKcmV0dXJuIHByZW1ha2UuYWN0aW9uLmxpc3Rba2V5c1tpXV0KZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmFjdGlvbi5zZXQobmFtZSkKX0FDVElPTiA9IG5hbWUKbG9jYWwgYWN0aW9uID0gcHJlbWFrZS5hY3Rpb24uZ2V0KG5hbWUpCmlmIGFjdGlvbiB0aGVuCl9PUyA9IGFjdGlvbi5vcyBvciBfT1MKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmFjdGlvbi5zdXBwb3J0cyhhY3Rpb24sIGZlYXR1cmUpCmlmIG5vdCBhY3Rpb24gdGhlbgpyZXR1cm4gZmFsc2UKZW5kCmlmIGFjdGlvbi52YWxpZF9sYW5ndWFnZXMgdGhlbgppZiB0YWJsZS5jb250YWlucyhhY3Rpb24udmFsaWRfbGFuZ3VhZ2VzLCBmZWF0dXJlKSB0aGVuCnJldHVybiB0cnVlCmVuZAplbmQKaWYgYWN0aW9uLnZhbGlkX2tpbmRzIHRoZW4KaWYgdGFibGUuY29udGFpbnMoYWN0aW9uLnZhbGlkX2tpbmRzLCBmZWF0dXJlKSB0aGVuCnJldHVybiB0cnVlCmVuZAplbmQKcmV0dXJuIGZhbHNlCmVuZAoAcHJlbWFrZS5vcHRpb24gPSB7IH0KcHJlbWFrZS5vcHRpb24ubGlzdCA9IHsgfQpmdW5jdGlvbiBwcmVtYWtlLm9wdGlvbi5hZGQob3B0KQpsb2NhbCBtaXNzaW5nCmZvciBfLCBmaWVsZCBpbiBpcGFpcnMoeyAiZGVzY3JpcHRpb24iLCAidHJpZ2dlciIgfSkgZG8KaWYgKG5vdCBvcHRbZmllbGRdKSB0aGVuCm1pc3NpbmcgPSBmaWVsZAplbmQKZW5kCmlmIChtaXNzaW5nKSB0aGVuCmVycm9yKCJvcHRpb24gbmVlZHMgYSAiIC4uIG1pc3NpbmcsIDMpCmVuZApwcmVtYWtlLm9wdGlvbi5saXN0W29wdC50cmlnZ2VyXSA9IG9wdAplbmQKZnVuY3Rpb24gcHJlbWFrZS5vcHRpb24uZ2V0KG5hbWUpCnJldHVybiBwcmVtYWtlLm9wdGlvbi5saXN0W25hbWVdCmVuZApmdW5jdGlvbiBwcmVtYWtlLm9wdGlvbi5lYWNoKCkKbG9jYWwga2V5cyA9IHsgfQpmb3IgXywgb3B0aW9uIGluIHBhaXJzKHByZW1ha2Uub3B0aW9uLmxpc3QpIGRvCnRhYmxlLmluc2VydChrZXlzLCBvcHRpb24udHJpZ2dlcikKZW5kCnRhYmxlLnNvcnQoa2V5cykKbG9jYWwgaSA9IDAKcmV0dXJuIGZ1bmN0aW9uKCkKaSA9IGkgKyAxCnJldHVybiBwcmVtYWtlLm9wdGlvbi5saXN0W2tleXNbaV1dCmVuZAplbmQKZnVuY3Rpb24gcHJlbWFrZS5vcHRpb24udmFsaWRhdGUodmFsdWVzKQpmb3Iga2V5LCB2YWx1ZSBpbiBwYWlycyh2YWx1ZXMpIGRvCmxvY2FsIG9wdCA9IHByZW1ha2Uub3B0aW9uLmdldChrZXkpCmlmIChub3Qgb3B0KSB0aGVuCnJldHVybiBmYWxzZSwgImludmFsaWQgb3B0aW9uICciIC4uIGtleSAuLiAiJyIKZW5kCmlmIChvcHQudmFsdWUgYW5kIHZhbHVlID09ICIiKSB0aGVuCnJldHVybiBmYWxzZSwgIm5vIHZhbHVlIHNwZWNpZmllZCBmb3Igb3B0aW9uICciIC4uIGtleSAuLiAiJyIKZW5kCmlmIG9wdC5hbGxvd2VkIHRoZW4KbG9jYWwgZm91bmQgPSBmYWxzZQpmb3IgXywgbWF0Y2ggaW4gaXBhaXJzKG9wdC5hbGxvd2VkKSBkbwppZiBtYXRjaFsxXSA9PSB2YWx1ZSB0aGVuCmZvdW5kID0gdHJ1ZQpicmVhawplbmQKZW5kCmlmIG5vdCBmb3VuZCB0aGVuCnJldHVybiBmYWxzZSwgc3RyaW5nLmZvcm1hdCgiaW52YWxpZCB2YWx1ZSAnJXMnIGZvciBvcHRpb24gJyVzJyIsIHZhbHVlLCBrZXkpCmVuZAplbmQKZW5kCnJldHVybiB0cnVlCmVuZAoAcHJlbWFrZS50cmVlID0geyB9CmxvY2FsIHRyZWUgPSBwcmVtYWtlLnRyZWUKZnVuY3Rpb24gcHJlbWFrZS50cmVlLm5ldyhuKQpsb2NhbCB0ID0gewpuYW1lID0gbiwKY2hpbGRyZW4gPSB7IH0KfQpyZXR1cm4gdAplbmQKZnVuY3Rpb24gcHJlbWFrZS50cmVlLmFkZCh0ciwgcCwgb25hZGRmdW5jKQppZiBwID09ICIuIiB0aGVuCnJldHVybiB0cgplbmQKbG9jYWwgcGFyZW50bm9kZSA9IHRyZWUuYWRkKHRyLCBwYXRoLmdldGRpcmVjdG9yeShwKSwgb25hZGRmdW5jKQpsb2NhbCBjaGlsZG5hbWUgPSBwYXRoLmdldG5hbWUocCkKaWYgY2hpbGRuYW1lID09ICIuLiIgdGhlbgpyZXR1cm4gcGFyZW50bm9kZQplbmQKbG9jYWwgY2hpbGRub2RlID0gcGFyZW50bm9kZS5jaGlsZHJlbltjaGlsZG5hbWVdCmlmIG5vdCBjaGlsZG5vZGUgb3IgY2hpbGRub2RlLnBhdGggfj0gcCB0aGVuCmNoaWxkbm9kZSA9IHRyZWUuaW5zZXJ0KHBhcmVudG5vZGUsIHRyZWUubmV3KGNoaWxkbmFtZSkpCmNoaWxkbm9kZS5wYXRoID0gcAppZiBvbmFkZGZ1bmMgdGhlbgpvbmFkZGZ1bmMoY2hpbGRub2RlKQplbmQKZW5kCnJldHVybiBjaGlsZG5vZGUKZW5kCmZ1bmN0aW9uIHByZW1ha2UudHJlZS5pbnNlcnQocGFyZW50LCBjaGlsZCkKdGFibGUuaW5zZXJ0KHBhcmVudC5jaGlsZHJlbiwgY2hpbGQpCmlmIGNoaWxkLm5hbWUgdGhlbgpwYXJlbnQuY2hpbGRyZW5bY2hpbGQubmFtZV0gPSBjaGlsZAplbmQKY2hpbGQucGFyZW50ID0gcGFyZW50CnJldHVybiBjaGlsZAplbmQKZnVuY3Rpb24gcHJlbWFrZS50cmVlLmdldGxvY2FscGF0aChub2RlKQppZiBub2RlLnBhcmVudC5wYXRoIHRoZW4KcmV0dXJuIG5vZGUubmFtZQplbHNlaWYgbm9kZS5jZmcgdGhlbgpyZXR1cm4gbm9kZS5jZmcubmFtZQplbHNlCnJldHVybiBub2RlLnBhdGgKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLnRyZWUucmVtb3ZlKG5vZGUpCmxvY2FsIGNoaWxkcmVuID0gbm9kZS5wYXJlbnQuY2hpbGRyZW4KZm9yIGkgPSAxLCAjY2hpbGRyZW4gZG8KaWYgY2hpbGRyZW5baV0gPT0gbm9kZSB0aGVuCnRhYmxlLnJlbW92ZShjaGlsZHJlbiwgaSkKZW5kCmVuZApub2RlLmNoaWxkcmVuID0ge30KZW5kCmZ1bmN0aW9uIHByZW1ha2UudHJlZS5zb3J0KHRyKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubm9kZSA9IGZ1bmN0aW9uKG5vZGUpCnRhYmxlLnNvcnQobm9kZS5jaGlsZHJlbiwgZnVuY3Rpb24oYSxiKQpyZXR1cm4gYS5uYW1lIDwgYi5uYW1lCmVuZCkKZW5kCn0sIHRydWUpCmVuZApmdW5jdGlvbiBwcmVtYWtlLnRyZWUudHJhdmVyc2UodCwgZm4sIGluY2x1ZGVyb290LCBpbml0aWFsZGVwdGgpCmxvY2FsIGRvbm9kZSwgZG9jaGlsZHJlbgpkb25vZGUgPSBmdW5jdGlvbihub2RlLCBmbiwgZGVwdGgpCmlmIG5vZGUuaXNyZW1vdmVkIHRoZW4gCnJldHVybiAKZW5kCmlmIGZuLm9ubm9kZSB0aGVuIApmbi5vbm5vZGUobm9kZSwgZGVwdGgpIAplbmQKaWYgI25vZGUuY2hpbGRyZW4gPiAwIHRoZW4KaWYgZm4ub25icmFuY2hlbnRlciB0aGVuCmZuLm9uYnJhbmNoZW50ZXIobm9kZSwgZGVwdGgpCmVuZAppZiBmbi5vbmJyYW5jaCB0aGVuIApmbi5vbmJyYW5jaChub2RlLCBkZXB0aCkgCmVuZApkb2NoaWxkcmVuKG5vZGUsIGZuLCBkZXB0aCArIDEpCmlmIGZuLm9uYnJhbmNoZXhpdCB0aGVuCmZuLm9uYnJhbmNoZXhpdChub2RlLCBkZXB0aCkKZW5kCmVsc2UKaWYgZm4ub25sZWFmIHRoZW4gCmZuLm9ubGVhZihub2RlLCBkZXB0aCkgCmVuZAplbmQKZW5kCmRvY2hpbGRyZW4gPSBmdW5jdGlvbihwYXJlbnQsIGZuLCBkZXB0aCkKbG9jYWwgaSA9IDEKd2hpbGUgaSA8PSAjcGFyZW50LmNoaWxkcmVuIGRvCmxvY2FsIG5vZGUgPSBwYXJlbnQuY2hpbGRyZW5baV0KZG9ub2RlKG5vZGUsIGZuLCBkZXB0aCkKaWYgbm9kZSA9PSBwYXJlbnQuY2hpbGRyZW5baV0gdGhlbgppID0gaSArIDEKZW5kCmVuZAplbmQKaWYgbm90IGluaXRpYWxkZXB0aCB0aGVuCmluaXRpYWxkZXB0aCA9IDAKZW5kCmlmIGluY2x1ZGVyb290IHRoZW4KZG9ub2RlKHQsIGZuLCBpbml0aWFsZGVwdGgpCmVsc2UKZG9jaGlsZHJlbih0LCBmbiwgaW5pdGlhbGRlcHRoKQplbmQKZW5kCgBwcmVtYWtlLnNvbHV0aW9uID0geyB9CnByZW1ha2Uuc29sdXRpb24ubGlzdCA9IHsgfQpmdW5jdGlvbiBwcmVtYWtlLnNvbHV0aW9uLm5ldyhuYW1lKQpsb2NhbCBzbG4gPSB7IH0KdGFibGUuaW5zZXJ0KHByZW1ha2Uuc29sdXRpb24ubGlzdCwgc2xuKQpwcmVtYWtlLnNvbHV0aW9uLmxpc3RbbmFtZV0gPSBzbG4Kc2V0bWV0YXRhYmxlKHNsbiwgeyBfX3R5cGU9InNvbHV0aW9uIiB9KQpzbG4ubmFtZSAgICAgICAgICAgPSBuYW1lCnNsbi5iYXNlZGlyICAgICAgICA9IG9zLmdldGN3ZCgpCnNsbi5wcm9qZWN0cyAgICAgICA9IHsgfQpzbG4uYmxvY2tzICAgICAgICAgPSB7IH0Kc2xuLmNvbmZpZ3VyYXRpb25zID0geyB9CnJldHVybiBzbG4KZW5kCmZ1bmN0aW9uIHByZW1ha2Uuc29sdXRpb24uZWFjaCgpCmxvY2FsIGkgPSAwCnJldHVybiBmdW5jdGlvbiAoKQppID0gaSArIDEKaWYgaSA8PSAjcHJlbWFrZS5zb2x1dGlvbi5saXN0IHRoZW4KcmV0dXJuIHByZW1ha2Uuc29sdXRpb24ubGlzdFtpXQplbmQKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2hwcm9qZWN0KHNsbikKbG9jYWwgaSA9IDAKcmV0dXJuIGZ1bmN0aW9uICgpCmkgPSBpICsgMQppZiAoaSA8PSAjc2xuLnByb2plY3RzKSB0aGVuCnJldHVybiBwcmVtYWtlLnNvbHV0aW9uLmdldHByb2plY3Qoc2xuLCBpKQplbmQKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLnNvbHV0aW9uLmdldChrZXkpCnJldHVybiBwcmVtYWtlLnNvbHV0aW9uLmxpc3Rba2V5XQplbmQKZnVuY3Rpb24gcHJlbWFrZS5zb2x1dGlvbi5nZXRwcm9qZWN0KHNsbiwgaWR4KQpsb2NhbCBwcmogPSBzbG4ucHJvamVjdHNbaWR4XQpsb2NhbCBjZmcgPSBwcmVtYWtlLmdldGNvbmZpZyhwcmopCmNmZy5uYW1lID0gcHJqLm5hbWUKcmV0dXJuIGNmZwplbmQKAHByZW1ha2UucHJvamVjdCA9IHsgfQpmdW5jdGlvbiBwcmVtYWtlLnByb2plY3QuYnVpbGRzb3VyY2V0cmVlKHByaikKbG9jYWwgdHIgPSBwcmVtYWtlLnRyZWUubmV3KHByai5uYW1lKQp0ci5wcm9qZWN0ID0gcHJqCmxvY2FsIGlzdnBhdGgKbG9jYWwgZnVuY3Rpb24gb25hZGQobm9kZSkKbm9kZS5pc3ZwYXRoID0gaXN2cGF0aAplbmQKZm9yIGZjZmcgaW4gcHJlbWFrZS5wcm9qZWN0LmVhY2hmaWxlKHByaikgZG8KaXN2cGF0aCA9IChmY2ZnLm5hbWUgfj0gZmNmZy52cGF0aCkKbG9jYWwgbm9kZSA9IHByZW1ha2UudHJlZS5hZGQodHIsIGZjZmcudnBhdGgsIG9uYWRkKQpub2RlLmNmZyA9IGZjZmcKZW5kCnByZW1ha2UudHJlZS5zb3J0KHRyKQpyZXR1cm4gdHIKZW5kCmZ1bmN0aW9uIHByZW1ha2UuZWFjaGNvbmZpZyhwcmosIHBsYXRmb3JtKQppZiBwcmoucHJvamVjdCB0aGVuIHByaiA9IHByai5wcm9qZWN0IGVuZApsb2NhbCBjZmdzID0gcHJqLnNvbHV0aW9uLmNvbmZpZ3VyYXRpb25zCmxvY2FsIGkgPSAwCnJldHVybiBmdW5jdGlvbiAoKQppID0gaSArIDEKaWYgaSA8PSAjY2ZncyB0aGVuCnJldHVybiBwcmVtYWtlLmdldGNvbmZpZyhwcmosIGNmZ3NbaV0sIHBsYXRmb3JtKQplbmQKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLnByb2plY3QuZWFjaGZpbGUocHJqKQppZiBub3QgcHJqLnByb2plY3QgdGhlbiBwcmogPSBwcmVtYWtlLmdldGNvbmZpZyhwcmopIGVuZApsb2NhbCBpID0gMApsb2NhbCB0ID0gcHJqLmZpbGVzCnJldHVybiBmdW5jdGlvbiAoKQppID0gaSArIDEKaWYgKGkgPD0gI3QpIHRoZW4KbG9jYWwgZmNmZyA9IHByai5fX2ZpbGVjb25maWdzW3RbaV1dCmZjZmcudnBhdGggPSBwcmVtYWtlLnByb2plY3QuZ2V0dnBhdGgocHJqLCBmY2ZnLm5hbWUpCnJldHVybiBmY2ZnCmVuZAplbmQKZW5kCmZ1bmN0aW9uIHByZW1ha2UuZXNjKHZhbHVlKQppZiAodHlwZSh2YWx1ZSkgPT0gInRhYmxlIikgdGhlbgpsb2NhbCByZXN1bHQgPSB7IH0KZm9yIF8sdiBpbiBpcGFpcnModmFsdWUpIGRvCnRhYmxlLmluc2VydChyZXN1bHQsIHByZW1ha2UuZXNjKHYpKQplbmQKcmV0dXJuIHJlc3VsdAplbHNlCnZhbHVlID0gdmFsdWU6Z3N1YignJicsICAiJmFtcDsiKQp2YWx1ZSA9IHZhbHVlOmdzdWIoJyInLCAgIiZxdW90OyIpCnZhbHVlID0gdmFsdWU6Z3N1YigiJyIsICAiJmFwb3M7IikKdmFsdWUgPSB2YWx1ZTpnc3ViKCc8JywgICImbHQ7IikKdmFsdWUgPSB2YWx1ZTpnc3ViKCc+JywgICImZ3Q7IikKdmFsdWUgPSB2YWx1ZTpnc3ViKCdccicsICImI3gwRDsiKQp2YWx1ZSA9IHZhbHVlOmdzdWIoJ1xuJywgIiYjeDBBOyIpCnJldHVybiB2YWx1ZQplbmQKZW5kCmZ1bmN0aW9uIHByZW1ha2UuZmlsdGVycGxhdGZvcm1zKHNsbiwgbWFwLCBkZWZhdWx0KQpsb2NhbCByZXN1bHQgPSB7IH0KbG9jYWwga2V5cyA9IHsgfQppZiBzbG4ucGxhdGZvcm1zIHRoZW4KZm9yIF8sIHAgaW4gaXBhaXJzKHNsbi5wbGF0Zm9ybXMpIGRvCmlmIG1hcFtwXSBhbmQgbm90IHRhYmxlLmNvbnRhaW5zKGtleXMsIG1hcFtwXSkgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCBwKQp0YWJsZS5pbnNlcnQoa2V5cywgbWFwW3BdKQplbmQKZW5kCmVuZAppZiAjcmVzdWx0ID09IDAgYW5kIGRlZmF1bHQgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCBkZWZhdWx0KQplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gcHJlbWFrZS5maW5kcHJvamVjdChuYW1lKQpmb3Igc2xuIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaCgpIGRvCmZvciBwcmogaW4gcHJlbWFrZS5zb2x1dGlvbi5lYWNocHJvamVjdChzbG4pIGRvCmlmIChwcmoubmFtZSA9PSBuYW1lKSB0aGVuCnJldHVybiAgcHJqCmVuZAplbmQKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmZpbmRmaWxlKHByaiwgZXh0ZW5zaW9uKQpmb3IgXywgZm5hbWUgaW4gaXBhaXJzKHByai5maWxlcykgZG8KaWYgZm5hbWU6ZW5kc3dpdGgoZXh0ZW5zaW9uKSB0aGVuIHJldHVybiBmbmFtZSBlbmQKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmdldGNvbmZpZyhwcmosIGNmZ25hbWUsIHBsdG5hbWUpCnByaiA9IHByai5wcm9qZWN0IG9yIHByagppZiBwbHRuYW1lID09ICJOYXRpdmUiIG9yIG5vdCB0YWJsZS5jb250YWlucyhwcmouc29sdXRpb24ucGxhdGZvcm1zIG9yIHt9LCBwbHRuYW1lKSB0aGVuCnBsdG5hbWUgPSBuaWwKZW5kCmxvY2FsIGtleSA9IChjZmduYW1lIG9yICIiKQppZiBwbHRuYW1lIHRoZW4ga2V5ID0ga2V5IC4uIHBsdG5hbWUgZW5kCnJldHVybiBwcmouX19jb25maWdzW2tleV0KZW5kCmZ1bmN0aW9uIHByZW1ha2UuZ2V0Y29uZmlnbmFtZShjZmduYW1lLCBwbGF0Zm9ybSwgdXNlc2hvcnRuYW1lKQppZiBjZmduYW1lIHRoZW4KbG9jYWwgbmFtZSA9IGNmZ25hbWUKaWYgcGxhdGZvcm0gYW5kIHBsYXRmb3JtIH49ICJOYXRpdmUiIHRoZW4KaWYgdXNlc2hvcnRuYW1lIHRoZW4KbmFtZSA9IG5hbWUgLi4gcHJlbWFrZS5wbGF0Zm9ybXNbcGxhdGZvcm1dLmNmZ3N1ZmZpeAplbHNlCm5hbWUgPSBuYW1lIC4uICJ8IiAuLiBwbGF0Zm9ybQplbmQKZW5kCnJldHVybiBpaWYodXNlc2hvcnRuYW1lLCBuYW1lOmxvd2VyKCksIG5hbWUpCmVuZAplbmQKZnVuY3Rpb24gcHJlbWFrZS5nZXRkZXBlbmRlbmNpZXMocHJqKQpwcmogPSBwcmoucHJvamVjdCBvciBwcmoKbG9jYWwgcmVzdWx0cyA9IHsgfQpmb3IgXywgY2ZnIGluIHBhaXJzKHByai5fX2NvbmZpZ3MpIGRvCmZvciBfLCBsaW5rIGluIGlwYWlycyhjZmcubGlua3MpIGRvCmxvY2FsIGRlcCA9IHByZW1ha2UuZmluZHByb2plY3QobGluaykKaWYgZGVwIGFuZCBub3QgdGFibGUuY29udGFpbnMocmVzdWx0cywgZGVwKSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHRzLCBkZXApCmVuZAplbmQKZW5kCnJldHVybiByZXN1bHRzCmVuZApmdW5jdGlvbiBwcmVtYWtlLnByb2plY3QuZ2V0YmFzZW5hbWUocHJqbmFtZSwgcGF0dGVybikKcmV0dXJuIHBhdHRlcm46Z3N1YigiJSUlJSIsIHByam5hbWUpCmVuZApmdW5jdGlvbiBwcmVtYWtlLnByb2plY3QuZ2V0ZmlsZW5hbWUocHJqLCBwYXR0ZXJuKQpsb2NhbCBmbmFtZSA9IHByZW1ha2UucHJvamVjdC5nZXRiYXNlbmFtZShwcmoubmFtZSwgcGF0dGVybikKZm5hbWUgPSBwYXRoLmpvaW4ocHJqLmxvY2F0aW9uLCBmbmFtZSkKcmV0dXJuIHBhdGguZ2V0cmVsYXRpdmUob3MuZ2V0Y3dkKCksIGZuYW1lKQplbmQKIGZ1bmN0aW9uIHByZW1ha2UuZ2V0bGlua3MoY2ZnLCBraW5kLCBwYXJ0KQpsb2NhbCByZXN1bHQgPSBpaWYgKHBhcnQgPT0gImRpcmVjdG9yeSIgYW5kIGtpbmQgPT0gImFsbCIsIGNmZy5saWJkaXJzLCB7fSkKbG9jYWwgY2ZnbmFtZSA9IGlpZihjZmcubmFtZSA9PSBjZmcucHJvamVjdC5uYW1lLCAiIiwgY2ZnLm5hbWUpCmxvY2FsIHBhdGhzdHlsZSA9IHByZW1ha2UuZ2V0cGF0aHN0eWxlKGNmZykKbG9jYWwgbmFtZXN0eWxlID0gcHJlbWFrZS5nZXRuYW1lc3R5bGUoY2ZnKQpsb2NhbCBmdW5jdGlvbiBjYW5saW5rKHNvdXJjZSwgdGFyZ2V0KQppZiAodGFyZ2V0LmtpbmQgfj0gIlNoYXJlZExpYiIgYW5kIHRhcmdldC5raW5kIH49ICJTdGF0aWNMaWIiKSB0aGVuCnJldHVybiBmYWxzZQplbmQKaWYgcHJlbWFrZS5pc2NwcHByb2plY3Qoc291cmNlKSB0aGVuCnJldHVybiBwcmVtYWtlLmlzY3BwcHJvamVjdCh0YXJnZXQpCmVsc2VpZiBwcmVtYWtlLmlzZG90bmV0cHJvamVjdChzb3VyY2UpIHRoZW4KcmV0dXJuIHByZW1ha2UuaXNkb3RuZXRwcm9qZWN0KHRhcmdldCkKZW5kCmVuZApmb3IgXywgbGluayBpbiBpcGFpcnMoY2ZnLmxpbmtzKSBkbwpsb2NhbCBpdGVtCmxvY2FsIHByaiA9IHByZW1ha2UuZmluZHByb2plY3QobGluaykKaWYgcHJqIGFuZCBraW5kIH49ICJzeXN0ZW0iIHRoZW4KbG9jYWwgcHJqY2ZnID0gcHJlbWFrZS5nZXRjb25maWcocHJqLCBjZmduYW1lLCBjZmcucGxhdGZvcm0pCmlmIGtpbmQgPT0gImRlcGVuZGVuY2llcyIgb3IgY2FubGluayhjZmcsIHByamNmZykgdGhlbgppZiAocGFydCA9PSAiZGlyZWN0b3J5IikgdGhlbgppdGVtID0gcGF0aC5yZWJhc2UocHJqY2ZnLmxpbmt0YXJnZXQuZGlyZWN0b3J5LCBwcmpjZmcubG9jYXRpb24sIGNmZy5sb2NhdGlvbikKZWxzZWlmIChwYXJ0ID09ICJiYXNlbmFtZSIpIHRoZW4KaXRlbSA9IHByamNmZy5saW5rdGFyZ2V0LmJhc2VuYW1lCmVsc2VpZiAocGFydCA9PSAiZnVsbHBhdGgiKSB0aGVuCml0ZW0gPSBwYXRoLnJlYmFzZShwcmpjZmcubGlua3RhcmdldC5mdWxscGF0aCwgcHJqY2ZnLmxvY2F0aW9uLCBjZmcubG9jYXRpb24pCmVsc2VpZiAocGFydCA9PSAib2JqZWN0IikgdGhlbgppdGVtID0gcHJqY2ZnCmVuZAplbmQKZWxzZWlmIG5vdCBwcmogYW5kIChraW5kID09ICJzeXN0ZW0iIG9yIGtpbmQgPT0gImFsbCIpIHRoZW4KaWYgKHBhcnQgPT0gImRpcmVjdG9yeSIpIHRoZW4KaXRlbSA9IHBhdGguZ2V0ZGlyZWN0b3J5KGxpbmspCmVsc2VpZiAocGFydCA9PSAiZnVsbHBhdGgiKSB0aGVuCml0ZW0gPSBsaW5rCmlmIG5hbWVzdHlsZSA9PSAid2luZG93cyIgdGhlbgppZiBwcmVtYWtlLmlzY3BwcHJvamVjdChjZmcpIHRoZW4KaXRlbSA9IGl0ZW0gLi4gIi5saWIiCmVsc2VpZiBwcmVtYWtlLmlzZG90bmV0cHJvamVjdChjZmcpIHRoZW4KaXRlbSA9IGl0ZW0gLi4gIi5kbGwiCmVuZAplbmQKZWxzZWlmIHBhcnQgPT0gIm5hbWUiIHRoZW4KaXRlbSA9IHBhdGguZ2V0bmFtZShsaW5rKQplbHNlaWYgcGFydCA9PSAiYmFzZW5hbWUiIHRoZW4KaXRlbSA9IHBhdGguZ2V0YmFzZW5hbWUobGluaykKZWxzZQppdGVtID0gbGluawplbmQKaWYgaXRlbTpmaW5kKCIvIiwgbmlsLCB0cnVlKSB0aGVuCml0ZW0gPSBwYXRoLmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LmxvY2F0aW9uLCBpdGVtKQplbmQKZW5kCmlmIGl0ZW0gdGhlbgppZiBwYXRoc3R5bGUgPT0gIndpbmRvd3MiIGFuZCBwYXJ0IH49ICJvYmplY3QiIHRoZW4KaXRlbSA9IHBhdGgudHJhbnNsYXRlKGl0ZW0sICJcXCIpCmVuZAppZiBub3QgdGFibGUuY29udGFpbnMocmVzdWx0LCBpdGVtKSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsIGl0ZW0pCmVuZAplbmQKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHByZW1ha2UuZ2V0bmFtZXN0eWxlKGNmZykKcmV0dXJuIHByZW1ha2UucGxhdGZvcm1zW2NmZy5wbGF0Zm9ybV0ubmFtZXN0eWxlIG9yIHByZW1ha2UuZ2V0dG9vbChjZmcpLm5hbWVzdHlsZSBvciAicG9zaXgiCmVuZApmdW5jdGlvbiBwcmVtYWtlLmdldHBhdGhzdHlsZShjZmcpCmlmIHByZW1ha2UuYWN0aW9uLmN1cnJlbnQoKS5vcyA9PSAid2luZG93cyIgdGhlbgpyZXR1cm4gIndpbmRvd3MiCmVsc2UKcmV0dXJuICJwb3NpeCIKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmdldHRhcmdldChjZmcsIGRpcmVjdGlvbiwgcGF0aHN0eWxlLCBuYW1lc3R5bGUsIHN5c3RlbSkKaWYgc3lzdGVtID09ICJic2QiIG9yIHN5c3RlbSA9PSAic29sYXJpcyIgdGhlbgpzeXN0ZW0gPSAibGludXgiCmVuZApsb2NhbCBraW5kID0gY2ZnLmtpbmQKaWYgcHJlbWFrZS5pc2NwcHByb2plY3QoY2ZnKSB0aGVuCmlmIChuYW1lc3R5bGUgPT0gIndpbmRvd3MiIG9yIHN5c3RlbSA9PSAid2luZG93cyIpCmFuZCBraW5kID09ICJTaGFyZWRMaWIiIGFuZCBkaXJlY3Rpb24gPT0gImxpbmsiCmFuZCBub3QgY2ZnLmZsYWdzLk5vSW1wb3J0TGliCnRoZW4Ka2luZCA9ICJTdGF0aWNMaWIiCmVuZAppZiBuYW1lc3R5bGUgPT0gInBvc2l4IiBhbmQgc3lzdGVtID09ICJ3aW5kb3dzIiBhbmQga2luZCB+PSAiU3RhdGljTGliIiB0aGVuCm5hbWVzdHlsZSA9ICJ3aW5kb3dzIgplbmQKZW5kCmxvY2FsIGZpZWxkICAgPSAiYnVpbGQiCmlmIGRpcmVjdGlvbiA9PSAibGluayIgYW5kIGNmZy5raW5kID09ICJTaGFyZWRMaWIiIHRoZW4KZmllbGQgPSAiaW1wbGliIgplbmQKbG9jYWwgbmFtZSAgICA9IGNmZ1tmaWVsZC4uIm5hbWUiXSBvciBjZmcudGFyZ2V0bmFtZSBvciBjZmcucHJvamVjdC5uYW1lCmxvY2FsIGRpciAgICAgPSBjZmdbZmllbGQuLiJkaXIiXSBvciBjZmcudGFyZ2V0ZGlyIG9yIHBhdGguZ2V0cmVsYXRpdmUoY2ZnLmxvY2F0aW9uLCBjZmcuYmFzZWRpcikKbG9jYWwgcHJlZml4ICA9ICIiCmxvY2FsIHN1ZmZpeCAgPSAiIgpsb2NhbCBleHQgICAgID0gIiIKbG9jYWwgYnVuZGxlcGF0aCwgYnVuZGxlbmFtZQppZiBuYW1lc3R5bGUgPT0gIndpbmRvd3MiIHRoZW4KaWYga2luZCA9PSAiQ29uc29sZUFwcCIgb3Iga2luZCA9PSAiV2luZG93ZWRBcHAiIHRoZW4KZXh0ID0gIi5leGUiCmVsc2VpZiBraW5kID09ICJTaGFyZWRMaWIiIHRoZW4KZXh0ID0gIi5kbGwiCmVsc2VpZiBraW5kID09ICJTdGF0aWNMaWIiIHRoZW4KZXh0ID0gIi5saWIiCmVuZAplbHNlaWYgbmFtZXN0eWxlID09ICJwb3NpeCIgdGhlbgppZiBraW5kID09ICJXaW5kb3dlZEFwcCIgYW5kIHN5c3RlbSA9PSAibWFjb3N4IiB0aGVuCmJ1bmRsZW5hbWUgPSBuYW1lIC4uICIuYXBwIgpidW5kbGVwYXRoID0gcGF0aC5qb2luKGRpciwgYnVuZGxlbmFtZSkKZGlyID0gcGF0aC5qb2luKGJ1bmRsZXBhdGgsICJDb250ZW50cy9NYWNPUyIpCmVsc2VpZiBraW5kID09ICJTaGFyZWRMaWIiIHRoZW4KcHJlZml4ID0gImxpYiIKZXh0ID0gaWlmKHN5c3RlbSA9PSAibWFjb3N4IiwgIi5keWxpYiIsICIuc28iKQplbHNlaWYga2luZCA9PSAiU3RhdGljTGliIiB0aGVuCnByZWZpeCA9ICJsaWIiCmV4dCA9ICIuYSIKZW5kCmVsc2VpZiBuYW1lc3R5bGUgPT0gIlBTMyIgdGhlbgppZiBraW5kID09ICJDb25zb2xlQXBwIiBvciBraW5kID09ICJXaW5kb3dlZEFwcCIgdGhlbgpleHQgPSAiLmVsZiIKZWxzZWlmIGtpbmQgPT0gIlN0YXRpY0xpYiIgdGhlbgpwcmVmaXggPSAibGliIgpleHQgPSAiLmEiCmVuZAplbmQKcHJlZml4ID0gY2ZnW2ZpZWxkLi4icHJlZml4Il0gb3IgY2ZnLnRhcmdldHByZWZpeCBvciBwcmVmaXgKc3VmZml4ID0gY2ZnW2ZpZWxkLi4ic3VmZml4Il0gb3IgY2ZnLnRhcmdldHN1ZmZpeCBvciBzdWZmaXgKZXh0ICAgID0gY2ZnW2ZpZWxkLi4iZXh0ZW5zaW9uIl0gb3IgY2ZnLnRhcmdldGV4dGVuc2lvbiBvciBleHQKbG9jYWwgcmVzdWx0ID0geyB9CnJlc3VsdC5iYXNlbmFtZSAgID0gbmFtZSAuLiBzdWZmaXgKcmVzdWx0Lm5hbWUgICAgICAgPSBwcmVmaXggLi4gbmFtZSAuLiBzdWZmaXggLi4gZXh0CnJlc3VsdC5kaXJlY3RvcnkgID0gZGlyCnJlc3VsdC5wcmVmaXggICAgID0gcHJlZml4CnJlc3VsdC5zdWZmaXggICAgID0gc3VmZml4CnJlc3VsdC5mdWxscGF0aCAgID0gcGF0aC5qb2luKHJlc3VsdC5kaXJlY3RvcnksIHJlc3VsdC5uYW1lKQpyZXN1bHQuYnVuZGxlcGF0aCA9IGJ1bmRsZXBhdGggb3IgcmVzdWx0LmZ1bGxwYXRoCmlmIHBhdGhzdHlsZSA9PSAid2luZG93cyIgdGhlbgpyZXN1bHQuZGlyZWN0b3J5ID0gcGF0aC50cmFuc2xhdGUocmVzdWx0LmRpcmVjdG9yeSwgIlxcIikKcmVzdWx0LmZ1bGxwYXRoICA9IHBhdGgudHJhbnNsYXRlKHJlc3VsdC5mdWxscGF0aCwgICJcXCIpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLmdldHRvb2woY2ZnKQppZiBwcmVtYWtlLmlzY3BwcHJvamVjdChjZmcpIHRoZW4KaWYgX09QVElPTlMuY2MgdGhlbgpyZXR1cm4gcHJlbWFrZVtfT1BUSU9OUy5jY10KZW5kCmxvY2FsIGFjdGlvbiA9IHByZW1ha2UuYWN0aW9uLmN1cnJlbnQoKQppZiBhY3Rpb24udmFsaWRfdG9vbHMgdGhlbgpyZXR1cm4gcHJlbWFrZVthY3Rpb24udmFsaWRfdG9vbHMuY2NbMV1dCmVuZApyZXR1cm4gcHJlbWFrZS5nY2MKZWxzZQpyZXR1cm4gcHJlbWFrZS5kb3RuZXQKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLnByb2plY3QuZ2V0dnBhdGgocHJqLCBmaWxlbmFtZSkKbG9jYWwgdnBhdGggPSBmaWxlbmFtZQpmb3IgcmVwbGFjZW1lbnQscGF0dGVybnMgaW4gcGFpcnMocHJqLnZwYXRocykgZG8KZm9yIF8scGF0dGVybiBpbiBpcGFpcnMocGF0dGVybnMpIGRvCmxvY2FsIGkgPSB2cGF0aDpmaW5kKHBhdGgud2lsZGNhcmRzKHBhdHRlcm4pKQppZiBpID09IDEgdGhlbgpsb2NhbCBsZWFmCmkgPSBwYXR0ZXJuOmZpbmQoIioiLCAxLCB0cnVlKSBvciAocGF0dGVybjpsZW4oKSArIDEpCmlmIGkgPCBmaWxlbmFtZTpsZW4oKSB0aGVuCmxlYWYgPSBmaWxlbmFtZTpzdWIoaSkKZWxzZQpsZWFmID0gcGF0aC5nZXRuYW1lKGZpbGVuYW1lKQplbmQKaWYgbGVhZjpzdGFydHN3aXRoKCIvIikgdGhlbgpsZWFmID0gbGVhZjpzdWIoMikKZW5kCmxvY2FsIHN0ZW0gPSAiIgppZiByZXBsYWNlbWVudDpsZW4oKSA+IDAgdGhlbgpzdGVtLCBzdGFycyA9IHJlcGxhY2VtZW50OmdzdWIoIiUqIiwgIiIpCmlmIHN0YXJzID09IDAgdGhlbgpsZWFmID0gcGF0aC5nZXRuYW1lKGxlYWYpCmVuZAplbHNlCmxlYWYgPSBwYXRoLmdldG5hbWUobGVhZikKZW5kCnZwYXRoID0gcGF0aC5qb2luKHN0ZW0sIGxlYWYpCmVuZAplbmQKZW5kCmxvY2FsIGNoYW5nZWQKcmVwZWF0CmNoYW5nZWQgPSB0cnVlCmlmIHZwYXRoOnN0YXJ0c3dpdGgoIi4vIikgdGhlbgp2cGF0aCA9IHZwYXRoOnN1YigzKQplbHNlaWYgdnBhdGg6c3RhcnRzd2l0aCgiLi4vIikgdGhlbgp2cGF0aCA9IHZwYXRoOnN1Yig0KQplbHNlCmNoYW5nZWQgPSBmYWxzZQplbmQKdW50aWwgbm90IGNoYW5nZWQKcmV0dXJuIHZwYXRoCmVuZApmdW5jdGlvbiBwcmVtYWtlLmhhc2NwcHByb2plY3Qoc2xuKQpmb3IgcHJqIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaHByb2plY3Qoc2xuKSBkbwppZiBwcmVtYWtlLmlzY3BwcHJvamVjdChwcmopIHRoZW4KcmV0dXJuIHRydWUKZW5kCmVuZAplbmQKZnVuY3Rpb24gcHJlbWFrZS5oYXNkb3RuZXRwcm9qZWN0KHNsbikKZm9yIHByaiBpbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2hwcm9qZWN0KHNsbikgZG8KaWYgcHJlbWFrZS5pc2RvdG5ldHByb2plY3QocHJqKSB0aGVuCnJldHVybiB0cnVlCmVuZAplbmQKZW5kCmZ1bmN0aW9uIHByZW1ha2UucHJvamVjdC5pc2Nwcm9qZWN0KHByaikKcmV0dXJuIHByai5sYW5ndWFnZSA9PSAiQyIKZW5kCmZ1bmN0aW9uIHByZW1ha2UuaXNjcHBwcm9qZWN0KHByaikKcmV0dXJuIChwcmoubGFuZ3VhZ2UgPT0gIkMiIG9yIHByai5sYW5ndWFnZSA9PSAiQysrIikKZW5kCmZ1bmN0aW9uIHByZW1ha2UuaXNkb3RuZXRwcm9qZWN0KHByaikKcmV0dXJuIChwcmoubGFuZ3VhZ2UgPT0gIkMjIikKZW5kCgBwcmVtYWtlLmNvbmZpZyA9IHsgfQpsb2NhbCBjb25maWcgPSBwcmVtYWtlLmNvbmZpZwpmdW5jdGlvbiBwcmVtYWtlLmNvbmZpZy5pc2RlYnVnYnVpbGQoY2ZnKQppZiBjZmcuZmxhZ3MuT3B0aW1pemUgb3IgY2ZnLmZsYWdzLk9wdGltaXplU2l6ZSBvciBjZmcuZmxhZ3MuT3B0aW1pemVTcGVlZCB0aGVuCnJldHVybiBmYWxzZQplbmQKaWYgbm90IGNmZy5mbGFncy5TeW1ib2xzIHRoZW4KcmV0dXJuIGZhbHNlCmVuZApyZXR1cm4gdHJ1ZQplbmQKZnVuY3Rpb24gcHJlbWFrZS5jb25maWcuaXNpbmNyZW1lbnRhbGxpbmsoY2ZnKQppZiBjZmcua2luZCA9PSAiU3RhdGljTGliIiAKb3IgY29uZmlnLmlzb3B0aW1pemVkYnVpbGQoY2ZnLmZsYWdzKQpvciBjZmcuZmxhZ3MuTm9JbmNyZW1lbnRhbExpbmsgdGhlbgpyZXR1cm4gZmFsc2UKZW5kCnJldHVybiB0cnVlCmVuZApmdW5jdGlvbiBwcmVtYWtlLmNvbmZpZy5pc29wdGltaXplZGJ1aWxkKGZsYWdzKQpyZXR1cm4gZmxhZ3MuT3B0aW1pemUgb3IgZmxhZ3MuT3B0aW1pemVTaXplIG9yIGZsYWdzLk9wdGltaXplU3BlZWQKZW5kCgBwcmVtYWtlLmJha2UgPSB7IH0KbG9jYWwgYmFrZSA9IHByZW1ha2UuYmFrZQpsb2NhbCBub2NvcHkgPSAKewpibG9ja3MgICAgPSB0cnVlLAprZXl3b3JkcyAgPSB0cnVlLApwcm9qZWN0cyAgPSB0cnVlLApfX2NvbmZpZ3MgPSB0cnVlLAp9CmxvY2FsIG5vY2FzY2FkZSA9IAp7Cm1ha2VzZXR0aW5ncyA9IHRydWUsCn0KbG9jYWwga2VlcHJlbGF0aXZlID0KewpiYXNlZGlyICA9IHRydWUsCmxvY2F0aW9uID0gdHJ1ZSwKfQpmdW5jdGlvbiBwcmVtYWtlLmdldGFjdGl2ZXRlcm1zKCkKbG9jYWwgdGVybXMgPSB7IF9hY3Rpb24gPSBfQUNUSU9OOmxvd2VyKCksIG9zID0gb3MuZ2V0KCkgfQpmb3Iga2V5LCB2YWx1ZSBpbiBwYWlycyhfT1BUSU9OUykgZG8KaWYgdmFsdWUgfj0gIiIgdGhlbgp0YWJsZS5pbnNlcnQodGVybXMsIHZhbHVlOmxvd2VyKCkpCmVsc2UKdGFibGUuaW5zZXJ0KHRlcm1zLCBrZXk6bG93ZXIoKSkKZW5kCmVuZApyZXR1cm4gdGVybXMKZW5kCmZ1bmN0aW9uIHByZW1ha2UuaXNrZXl3b3JkbWF0Y2goa2V5d29yZCwgdGVybXMpCmlmIGtleXdvcmQ6c3RhcnRzd2l0aCgibm90ICIpIHRoZW4KcmV0dXJuIG5vdCBwcmVtYWtlLmlza2V5d29yZG1hdGNoKGtleXdvcmQ6c3ViKDUpLCB0ZXJtcykKZW5kCmZvciBfLCBwYXR0ZXJuIGluIGlwYWlycyhrZXl3b3JkOmV4cGxvZGUoIiBvciAiKSkgZG8KZm9yIHRlcm1rZXksIHRlcm0gaW4gcGFpcnModGVybXMpIGRvCmlmIHRlcm06bWF0Y2gocGF0dGVybikgPT0gdGVybSB0aGVuCnJldHVybiB0ZXJta2V5CmVuZAplbmQKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmlza2V5d29yZHNtYXRjaChrZXl3b3JkcywgdGVybXMpCmxvY2FsIGhhc3JlcXVpcmVkID0gZmFsc2UKZm9yIF8sIGtleXdvcmQgaW4gaXBhaXJzKGtleXdvcmRzKSBkbwpsb2NhbCBtYXRjaGVkID0gcHJlbWFrZS5pc2tleXdvcmRtYXRjaChrZXl3b3JkLCB0ZXJtcykKaWYgbm90IG1hdGNoZWQgdGhlbgpyZXR1cm4gZmFsc2UKZW5kCmlmIG1hdGNoZWQgPT0gInJlcXVpcmVkIiB0aGVuCmhhc3JlcXVpcmVkID0gdHJ1ZQplbmQKZW5kCmlmIHRlcm1zLnJlcXVpcmVkIGFuZCBub3QgaGFzcmVxdWlyZWQgdGhlbgpyZXR1cm4gZmFsc2UKZWxzZQpyZXR1cm4gdHJ1ZQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIGFkanVzdHBhdGhzKGxvY2F0aW9uLCBvYmopCmZ1bmN0aW9uIGFkanVzdHBhdGhsaXN0KGxpc3QpCmZvciBpLCBwIGluIGlwYWlycyhsaXN0KSBkbwpsaXN0W2ldID0gcGF0aC5nZXRyZWxhdGl2ZShsb2NhdGlvbiwgcCkgCmVuZAplbmQKZm9yIG5hbWUsIHZhbHVlIGluIHBhaXJzKG9iaikgZG8KbG9jYWwgZmllbGQgPSBwcmVtYWtlLmZpZWxkc1tuYW1lXQppZiBmaWVsZCBhbmQgdmFsdWUgYW5kIG5vdCBrZWVwcmVsYXRpdmVbbmFtZV0gdGhlbgppZiBmaWVsZC5raW5kID09ICJwYXRoIiB0aGVuCm9ialtuYW1lXSA9IHBhdGguZ2V0cmVsYXRpdmUobG9jYXRpb24sIHZhbHVlKSAKZWxzZWlmIGZpZWxkLmtpbmQgPT0gImRpcmxpc3QiIG9yIGZpZWxkLmtpbmQgPT0gImZpbGVsaXN0IiB0aGVuCmFkanVzdHBhdGhsaXN0KHZhbHVlKQplbHNlaWYgZmllbGQua2luZCA9PSAia2V5cGF0aCIgdGhlbgpmb3Igayx2IGluIHBhaXJzKHZhbHVlKSBkbwphZGp1c3RwYXRobGlzdCh2KQplbmQKZW5kCmVuZAplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIG1lcmdlZmllbGQoa2luZCwgZGVzdCwgc3JjKQpsb2NhbCB0YmwgPSBkZXN0IG9yIHsgfQppZiBraW5kID09ICJrZXl2YWx1ZSIgb3Iga2luZCA9PSAia2V5cGF0aCIgdGhlbgpmb3Iga2V5LCB2YWx1ZSBpbiBwYWlycyhzcmMpIGRvCnRibFtrZXldID0gbWVyZ2VmaWVsZCgibGlzdCIsIHRibFtrZXldLCB2YWx1ZSkKZW5kCmVsc2UKZm9yIF8sIGl0ZW0gaW4gaXBhaXJzKHNyYykgZG8KaWYgbm90IHRibFtpdGVtXSB0aGVuCnRhYmxlLmluc2VydCh0YmwsIGl0ZW0pCnRibFtpdGVtXSA9IGl0ZW0KZW5kCmVuZAplbmQKcmV0dXJuIHRibAplbmQKbG9jYWwgZnVuY3Rpb24gbWVyZ2VvYmplY3QoZGVzdCwgc3JjKQppZiBub3Qgc3JjIHRoZW4gCnJldHVybiAKZW5kCmZvciBmaWVsZG5hbWUsIHZhbHVlIGluIHBhaXJzKHNyYykgZG8KaWYgbm90IG5vY29weVtmaWVsZG5hbWVdIHRoZW4KbG9jYWwgZmllbGQgPSBwcmVtYWtlLmZpZWxkc1tmaWVsZG5hbWVdCmlmIGZpZWxkIHRoZW4KaWYgdHlwZSh2YWx1ZSkgPT0gInRhYmxlIiB0aGVuCmRlc3RbZmllbGRuYW1lXSA9IG1lcmdlZmllbGQoZmllbGQua2luZCwgZGVzdFtmaWVsZG5hbWVdLCB2YWx1ZSkKZWxzZQpkZXN0W2ZpZWxkbmFtZV0gPSB2YWx1ZQplbmQKZWxzZQpkZXN0W2ZpZWxkbmFtZV0gPSB2YWx1ZQplbmQKZW5kCmVuZAplbmQKbG9jYWwgZnVuY3Rpb24gbWVyZ2UoZGVzdCwgb2JqLCBiYXNpcywgdGVybXMsIGNmZ25hbWUsIHBsdG5hbWUpCmxvY2FsIGtleSA9IGNmZ25hbWUgb3IgIiIKcGx0bmFtZSA9IHBsdG5hbWUgb3IgIk5hdGl2ZSIKaWYgcGx0bmFtZSB+PSAiTmF0aXZlIiB0aGVuCmtleSA9IGtleSAuLiBwbHRuYW1lCmVuZAp0ZXJtcy5jb25maWcgPSAoY2ZnbmFtZSBvciAiIik6bG93ZXIoKQp0ZXJtcy5wbGF0Zm9ybSA9IHBsdG5hbWU6bG93ZXIoKQpsb2NhbCBjZmcgPSB7fQptZXJnZW9iamVjdChjZmcsIGJhc2lzW2tleV0pCmFkanVzdHBhdGhzKG9iai5sb2NhdGlvbiwgY2ZnKQptZXJnZW9iamVjdChjZmcsIG9iaikKaWYgKGNmZy5raW5kKSB0aGVuIAp0ZXJtc1sna2luZCddPWNmZy5raW5kOmxvd2VyKCkKZW5kCmZvciBfLCBibGsgaW4gaXBhaXJzKG9iai5ibG9ja3MpIGRvCmlmIChwcmVtYWtlLmlza2V5d29yZHNtYXRjaChibGsua2V5d29yZHMsIHRlcm1zKSl0aGVuCm1lcmdlb2JqZWN0KGNmZywgYmxrKQppZiAoY2ZnLmtpbmQgYW5kIG5vdCBjZmcudGVybXMua2luZCkgdGhlbiAKY2ZnLnRlcm1zWydraW5kJ10gPSBjZmcua2luZDpsb3dlcigpCnRlcm1zWydraW5kJ10gPSBjZmcua2luZDpsb3dlcigpCmVuZAplbmQKZW5kCmNmZy5uYW1lICAgICAgPSBjZmduYW1lCmNmZy5wbGF0Zm9ybSAgPSBwbHRuYW1lCmZvciBrLHYgaW4gcGFpcnModGVybXMpIGRvCmNmZy50ZXJtc1trXSA9dgplbmQKZGVzdFtrZXldID0gY2ZnCmVuZApsb2NhbCBmdW5jdGlvbiBjb2xsYXBzZShvYmosIGJhc2lzKQpsb2NhbCByZXN1bHQgPSB7fQpiYXNpcyA9IGJhc2lzIG9yIHt9CmxvY2FsIHNsbiA9IG9iai5zb2x1dGlvbiBvciBvYmoKbG9jYWwgdGVybXMgPSBwcmVtYWtlLmdldGFjdGl2ZXRlcm1zKCkKbWVyZ2UocmVzdWx0LCBvYmosIGJhc2lzLCB0ZXJtcyktLXRoaXMgYWRqdXN0cyB0ZXJtcwpmb3IgXywgY2ZnbmFtZSBpbiBpcGFpcnMoc2xuLmNvbmZpZ3VyYXRpb25zKSBkbwpsb2NhbCB0ZXJtc19sb2NhbCA9IHt9CmZvciBrLHYgaW4gcGFpcnModGVybXMpZG8gdGVybXNfbG9jYWxba109diBlbmQKbWVyZ2UocmVzdWx0LCBvYmosIGJhc2lzLCB0ZXJtc19sb2NhbCwgY2ZnbmFtZSwgIk5hdGl2ZSIpLS10ZXJtcyBjYW0gYWxzbyBiZSBhZGp1c3RlZCBoZXJlCmZvciBfLCBwbHRuYW1lIGluIGlwYWlycyhzbG4ucGxhdGZvcm1zIG9yIHt9KSBkbwppZiBwbHRuYW1lIH49ICJOYXRpdmUiIHRoZW4KbWVyZ2UocmVzdWx0LCBvYmosIGJhc2lzLHRlcm1zX2xvY2FsLCBjZmduYW1lLCBwbHRuYW1lKS0tdGVybXMgYWxzbyBoZXJlCmVuZAplbmQKZW5kCnJldHVybiByZXN1bHQKZW5kCmxvY2FsIGZ1bmN0aW9uIGJ1aWxkdW5pcXVlZGlycygpCmxvY2FsIG51bV92YXJpYXRpb25zID0gNApsb2NhbCBjZmdfZGlycyA9IHt9CmxvY2FsIGhpdF9jb3VudHMgPSB7fQpmb3Igc2xuIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaCgpIGRvCmZvciBfLCBwcmogaW4gaXBhaXJzKHNsbi5wcm9qZWN0cykgZG8KZm9yIF8sIGNmZyBpbiBwYWlycyhwcmouX19jb25maWdzKSBkbwpsb2NhbCBkaXJzID0geyB9CmRpcnNbMV0gPSBwYXRoLmdldGFic29sdXRlKHBhdGguam9pbihjZmcubG9jYXRpb24sIGNmZy5vYmpkaXIgb3IgY2ZnLnByb2plY3Qub2JqZGlyIG9yICJvYmoiKSkKZGlyc1syXSA9IHBhdGguam9pbihkaXJzWzFdLCBpaWYoY2ZnLnBsYXRmb3JtID09ICJOYXRpdmUiLCAiIiwgY2ZnLnBsYXRmb3JtKSkKZGlyc1szXSA9IHBhdGguam9pbihkaXJzWzJdLCBjZmcubmFtZSkKZGlyc1s0XSA9IHBhdGguam9pbihkaXJzWzNdLCBjZmcucHJvamVjdC5uYW1lKQpjZmdfZGlyc1tjZmddID0gZGlycwpsb2NhbCBzdGFydCA9IGlpZihjZmcubmFtZSwgMiwgMSkKZm9yIHYgPSBzdGFydCwgbnVtX3ZhcmlhdGlvbnMgZG8KbG9jYWwgZCA9IGRpcnNbdl0KaGl0X2NvdW50c1tkXSA9IChoaXRfY291bnRzW2RdIG9yIDApICsgMQplbmQKZW5kCmVuZAplbmQKZm9yIHNsbiBpbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2goKSBkbwpmb3IgXywgcHJqIGluIGlwYWlycyhzbG4ucHJvamVjdHMpIGRvCmZvciBfLCBjZmcgaW4gcGFpcnMocHJqLl9fY29uZmlncykgZG8KbG9jYWwgZGlyCmxvY2FsIHN0YXJ0ID0gaWlmKGNmZy5uYW1lLCAyLCAxKQpmb3IgdiA9IHN0YXJ0LCBudW1fdmFyaWF0aW9ucyBkbwpkaXIgPSBjZmdfZGlyc1tjZmddW3ZdCmlmIGhpdF9jb3VudHNbZGlyXSA9PSAxIHRoZW4gYnJlYWsgZW5kCmVuZApjZmcub2JqZWN0c2RpciA9IHBhdGguZ2V0cmVsYXRpdmUoY2ZnLmxvY2F0aW9uLCBkaXIpCmVuZAplbmQKZW5kCmVuZApsb2NhbCBmdW5jdGlvbiBidWlsZHRhcmdldHMoKQpmb3Igc2xuIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaCgpIGRvCmZvciBfLCBwcmogaW4gaXBhaXJzKHNsbi5wcm9qZWN0cykgZG8KZm9yIF8sIGNmZyBpbiBwYWlycyhwcmouX19jb25maWdzKSBkbwpsb2NhbCBwYXRoc3R5bGUgPSBwcmVtYWtlLmdldHBhdGhzdHlsZShjZmcpCmxvY2FsIG5hbWVzdHlsZSA9IHByZW1ha2UuZ2V0bmFtZXN0eWxlKGNmZykKY2ZnLmJ1aWxkdGFyZ2V0ID0gcHJlbWFrZS5nZXR0YXJnZXQoY2ZnLCAiYnVpbGQiLCBwYXRoc3R5bGUsIG5hbWVzdHlsZSwgY2ZnLnN5c3RlbSkKY2ZnLmxpbmt0YXJnZXQgID0gcHJlbWFrZS5nZXR0YXJnZXQoY2ZnLCAibGluayIsICBwYXRoc3R5bGUsIG5hbWVzdHlsZSwgY2ZnLnN5c3RlbSkKaWYgcGF0aHN0eWxlID09ICJ3aW5kb3dzIiB0aGVuCmNmZy5vYmplY3RzZGlyID0gcGF0aC50cmFuc2xhdGUoY2ZnLm9iamVjdHNkaXIsICJcXCIpCmVuZAplbmQKZW5kCmVuZAplbmQKICBsb2NhbCBmdW5jdGlvbiBnZXRDZmdLaW5kKGNmZykKICBpZihjZmcua2luZCkgdGhlbgogIHJldHVybiBjZmcua2luZDsKICBlbmQKICAKICBpZihjZmcucHJvamVjdC5fX2NvbmZpZ3NbIiJdIGFuZCBjZmcucHJvamVjdC5fX2NvbmZpZ3NbIiJdLmtpbmQpIHRoZW4KICByZXR1cm4gY2ZnLnByb2plY3QuX19jb25maWdzWyIiXS5raW5kOwogIGVuZAogIAogIHJldHVybiBuaWwKICBlbmQKICAKICBsb2NhbCBmdW5jdGlvbiBnZXRwcm9qcmVjKGRzdEFycmF5LCBmb3VuZExpc3QsIGNmZywgY2ZnbmFtZSwgc2VhcmNoRmllbGQsIGJMaW5rYWdlKQogIGlmKG5vdCBjZmcpIHRoZW4gcmV0dXJuIGVuZAogIAogIGxvY2FsIGZvdW5kVXNlUHJqcyA9IHt9OwogIGZvciBfLCB1c2VOYW1lIGluIGlwYWlycyhjZmdbc2VhcmNoRmllbGRdKSBkbwogIGxvY2FsIHRlc3ROYW1lID0gdXNlTmFtZTpsb3dlcigpOwogIGlmKChub3QgZm91bmRMaXN0W3Rlc3ROYW1lXSkpIHRoZW4KICBsb2NhbCB0aGVQcm9qID0gbmlsOwogIGxvY2FsIHRoZVVzZVByb2ogPSBuaWw7CiAgZm9yIF8sIHByaiBpbiBpcGFpcnMoY2ZnLnByb2plY3Quc29sdXRpb24ucHJvamVjdHMpIGRvCiAgaWYgKHByai5uYW1lOmxvd2VyKCkgPT0gdGVzdE5hbWUpIHRoZW4KICBpZihwcmoudXNhZ2UpIHRoZW4KICB0aGVVc2VQcm9qID0gcHJqOwogIGVsc2UKICB0aGVQcm9qID0gcHJqOwogIGVuZAogIGVuZAogIGVuZAogIAogIC0tTXVzdCBjb25uZWN0IHRvIGEgdXNhZ2UgcHJvamVjdC4KICBpZih0aGVVc2VQcm9qKSB0aGVuCiAgZm91bmRMaXN0W3Rlc3ROYW1lXSA9IHRydWU7CiAgbG9jYWwgcHJqRW50cnkgPSB7CiAgbmFtZSA9IHRlc3ROYW1lLAogIHByb2ogPSB0aGVQcm9qLAogIHVzYWdlUHJvaiA9IHRoZVVzZVByb2osCiAgYkxpbmthZ2VPbmx5ID0gYkxpbmthZ2UsCiAgfTsKICBkc3RBcnJheVt0ZXN0TmFtZV0gPSBwcmpFbnRyeTsKICB0YWJsZS5pbnNlcnQoZm91bmRVc2VQcmpzLCB0aGVVc2VQcm9qKTsKICBlbmQKICBlbmQKICBlbmQKICAKICBmb3IgXywgdXNlUHJqIGluIGlwYWlycyhmb3VuZFVzZVByanMpIGRvCiAgLS1MaW5rcyBjYW4gb25seSByZWN1cnNlIHRocm91Z2ggc3RhdGljIGxpYnJhcmllcy4KICBpZigoc2VhcmNoRmllbGQgfj0gImxpbmtzIikgb3IKICAoZ2V0Q2ZnS2luZCh1c2VQcmouX19jb25maWdzW2NmZ25hbWVdKSA9PSAiU3RhdGljTGliIikpIHRoZW4KICBnZXRwcm9qcmVjKGRzdEFycmF5LCBmb3VuZExpc3QsIHVzZVByai5fX2NvbmZpZ3NbY2ZnbmFtZV0sCiAgY2ZnbmFtZSwgc2VhcmNoRmllbGQsIGJMaW5rYWdlKTsKICBlbmQKICBlbmQKICBlbmQKICAKICAtLQogIC0tIFRoaXMgZnVuY3Rpb24gd2lsbCByZWN1cnNpdmVseSBnZXQgYWxsIHByb2plY3RzIHRoYXQgdGhlIGdpdmVuIGNvbmZpZ3VyYXRpb24gaGFzIGluIGl0cyAidXNlcyIKICAtLSBmaWVsZC4gVGhlIHJldHVybiB2YWx1ZXMgYXJlIGEgbGlzdCBvZiB0YWJsZXMuIEVhY2ggdGFibGUgaW4gdGhhdCBsaXN0IGNvbnRhaW5zIHRoZSBmb2xsb3dpbmc6CiAgLS1uYW1lID0gVGhlIGxvd2VyY2FzZSBuYW1lIG9mIHRoZSBwcm9qZWN0LgogIC0tcHJvaiA9IFRoZSBwcm9qZWN0LiBDYW4gYmUgbmlsIGlmIGl0IGlzIHVzYWdlLW9ubHkuCiAgLS11c2FnZVByb2ogPSBUaGUgdXNhZ2UgcHJvamVjdC4gQ2FuJ3QgYmUgbmlsLCBhcyB1c2luZyBhIHByb2plY3QgdGhhdCBoYXMgbm8KICAtLSB1c2FnZSBwcm9qZWN0IGlzIG5vdCBwdXQgaW50byB0aGUgbGlzdC4KICAtLWJMaW5rYWdlT25seSA9IElmIHRoaXMgaXMgdHJ1ZSwgdGhlbiBvbmx5IHRoZSBsaW5rYWdlIGluZm9ybWF0aW9uIHNob3VsZCBiZSBjb3BpZWQuCiAgLS0gVGhlIHJlY3Vyc2lvbiB3aWxsIG9ubHkgbG9vayBhdCB0aGUgInVzZXMiIGZpZWxkIG9uICp1c2FnZSogcHJvamVjdHMuCiAgLS0gVGhpcyBmdW5jdGlvbiB3aWxsIGFsc28gYWRkIHByb2plY3RzIHRvIHRoZSBsaXN0IHRoYXQgYXJlIG1lbnRpb25lZCBpbiB0aGUgImxpbmtzIgogIC0tIGZpZWxkIG9mIHVzYWdlIHByb2plY3RzLiBUaGVzZSB3aWxsIG9ubHkgY29weSBsaW5rZXIgaW5mb3JtYXRpb24sIGJ1dCB0aGV5IHdpbGwgcmVjdXJzZS4KICAtLSB0aHJvdWdoIG90aGVyICJsaW5rcyIgZmllbGRzLgogIC0tCiAgbG9jYWwgZnVuY3Rpb24gZ2V0cHJvamVjdHNjb25uZWN0aW9ucyhjZmcsIGNmZ25hbWUpCiAgbG9jYWwgZHN0QXJyYXkgPSB7fTsKICBsb2NhbCBmb3VuZExpc3QgPSB7fTsKICBmb3VuZExpc3RbY2ZnLnByb2plY3QubmFtZTpsb3dlcigpXSA9IHRydWU7CiAgCiAgLS1GaXJzdCwgZm9sbG93IHRoZSB1c2VzIHJlY3Vyc2l2ZWx5LgogIGdldHByb2pyZWMoZHN0QXJyYXksIGZvdW5kTGlzdCwgY2ZnLCBjZmduYW1lLCAidXNlcyIsIGZhbHNlKTsKICAKICAtLU5leHQsIGdvIHRocm91Z2ggYWxsIG9mIHRoZSB1c2FnZSBwcm9qZWN0cyBhbmQgcmVjdXJzaXZlbHkgZ2V0IHRoZWlyIGxpbmtzLgogIC0tQnV0IG9ubHkgaWYgdGhleSdyZSBub3QgYWxyZWFkeSB0aGVyZS4gR2V0IHRoZSBsaW5rcyBhcyBsaW5rYWdlLW9ubHkuCiAgbG9jYWwgbGlua0FycmF5ID0ge307CiAgZm9yIHByak5hbWUsIHByakVudHJ5IGluIHBhaXJzKGRzdEFycmF5KSBkbwogIGdldHByb2pyZWMobGlua0FycmF5LCBmb3VuZExpc3QsIHByakVudHJ5LnVzYWdlUHJvai5fX2NvbmZpZ3NbY2ZnbmFtZV0sIGNmZ25hbWUsIAogICJsaW5rcyIsIHRydWUpOwogIGVuZAogIAogIC0tQ29weSBmcm9tIGxpbmtBcnJheSBpbnRvIGRzdEFycmF5LgogIGZvciBwcmpOYW1lLCBwcmpFbnRyeSBpbiBwYWlycyhsaW5rQXJyYXkpIGRvCiAgZHN0QXJyYXlbcHJqTmFtZV0gPSBwcmpFbnRyeTsKICBlbmQKICAKICByZXR1cm4gZHN0QXJyYXk7CiAgZW5kCiAgCiAgCiAgbG9jYWwgZnVuY3Rpb24gaXNuYW1lb2Zwcm9qKGNmZywgc3RyTmFtZSkKICBsb2NhbCBzbG4gPSBjZmcucHJvamVjdC5zb2x1dGlvbjsKICBsb2NhbCBzdHJUZXN0ID0gc3RyTmFtZTpsb3dlcigpOwogIGZvciBwcmpJeCwgcHJqIGluIGlwYWlycyhzbG4ucHJvamVjdHMpIGRvCiAgaWYgKHByai5uYW1lOmxvd2VyKCkgPT0gc3RyVGVzdCkgdGhlbgogIHJldHVybiB0cnVlOwogIGVuZAogIGVuZAogIAogIHJldHVybiBmYWxzZTsKICBlbmQKICAtLQogIC0tIENvcGllcyB0aGUgZmllbGQgZnJvbSBkc3RDZmcgdG8gc3JjQ2ZnLgogIC0tCiAgbG9jYWwgZnVuY3Rpb24gY29weWRlcGVuZGVudGZpZWxkKHNyY0NmZywgZHN0Q2ZnLCBzdHJTcmNGaWVsZCkKICBsb2NhbCBzcmNGaWVsZCA9IHByZW1ha2UuZmllbGRzW3N0clNyY0ZpZWxkXTsKICBsb2NhbCBzdHJEc3RGaWVsZCA9IHN0clNyY0ZpZWxkOwogIAogIGlmIHR5cGUoc3JjQ2ZnW3N0clNyY0ZpZWxkXSkgPT0gInRhYmxlIiB0aGVuCiAgLS1oYW5kbGUgcGF0aHMuCiAgaWYgKHNyY0ZpZWxkLmtpbmQgPT0gImRpcmxpc3QiIG9yIHNyY0ZpZWxkLmtpbmQgPT0gImZpbGVsaXN0IikgYW5kCiAgKG5vdCBrZWVwcmVsYXRpdmVbc3RyU3JjRmllbGRdKSB0aGVuCiAgZm9yIGkscCBpbiBpcGFpcnMoc3JjQ2ZnW3N0clNyY0ZpZWxkXSkgZG8KICB0YWJsZS5pbnNlcnQoZHN0Q2ZnW3N0ckRzdEZpZWxkXSwKICBwYXRoLnJlYmFzZShwLCBzcmNDZmcucHJvamVjdC5sb2NhdGlvbiwgZHN0Q2ZnLnByb2plY3QubG9jYXRpb24pKQogIGVuZAogIGVsc2UKICBpZihzdHJTcmNGaWVsZCA9PSAibGlua3MiKSB0aGVuCiAgZm9yIGkscCBpbiBpcGFpcnMoc3JjQ2ZnW3N0clNyY0ZpZWxkXSkgZG8KICBpZihub3QgaXNuYW1lb2Zwcm9qKGRzdENmZywgcCkpIHRoZW4KICB0YWJsZS5pbnNlcnQoZHN0Q2ZnW3N0ckRzdEZpZWxkXSwgcCkKICBlbHNlCiAgcHJpbnRmKCJGYWlsZWQgdG8gY29weSAnJXMnIGZyb20gcHJvaiAnJXMnLiIsCiAgcCwgc3JjQ2ZnLnByb2plY3QubmFtZSk7CiAgZW5kCiAgZW5kCiAgZWxzZQogIGZvciBpLHAgaW4gaXBhaXJzKHNyY0NmZ1tzdHJTcmNGaWVsZF0pIGRvCiAgdGFibGUuaW5zZXJ0KGRzdENmZ1tzdHJEc3RGaWVsZF0sIHApCiAgZW5kCiAgZW5kCiAgZW5kCiAgZWxzZQogIGlmKHNyY0ZpZWxkLmtpbmQgPT0gInBhdGgiIGFuZCAobm90IGtlZXByZWxhdGl2ZVtzdHJTcmNGaWVsZF0pKSB0aGVuCiAgZHN0Q2ZnW3N0ckRzdEZpZWxkXSA9IHBhdGgucmViYXNlKHNyY0NmZ1tzdHJTcmNGaWVsZF0sCiAgcHJqLmxvY2F0aW9uLCBkc3RDZmcucHJvamVjdC5sb2NhdGlvbik7CiAgZWxzZQogIGRzdENmZ1tzdHJEc3RGaWVsZF0gPSBzcmNDZmdbc3RyU3JjRmllbGRdOwogIGVuZAogIGVuZAogIGVuZAogIAogIC0tCiAgLS0gVGhpcyBmdW5jdGlvbiB3aWxsIHRha2UgdGhlIGxpc3Qgb2YgcHJvamVjdCBlbnRyaWVzIGFuZCBhcHBseSB0aGVpciB1c2FnZSBwcm9qZWN0IGRhdGEKICAtLSB0byB0aGUgZ2l2ZW4gY29uZmlndXJhdGlvbi4gSXQgd2lsbCBjb3B5IGNvbXBpbGluZyBpbmZvcm1hdGlvbiBmb3IgdGhlIHByb2plY3RzIHRoYXQgYXJlCiAgLS0gbm90IGxpc3RlZCBhcyBsaW5rYWdlLW9ubHkuIEl0IHdpbGwgY29weSB0aGUgbGlua2luZyBpbmZvcm1hdGlvbiBmb3IgcHJvamVjdHMgb25seSBpZgogIC0tIHRoZSBzb3VyY2UgcHJvamVjdCBpcyBub3QgYSBzdGF0aWMgbGlicmFyeS4gSXQgd29uJ3QgY29weSBsaW5raW5nIGluZm9ybWF0aW9uCiAgLS0gaWYgdGhlIHByb2plY3QgaXMgaW4gdGhpcyBzb2x1dGlvbjsgaW5zdGVhZCBpdCB3aWxsIGFkZCB0aGF0IHByb2plY3QgdG8gdGhlIGNvbmZpZ3VyYXRpb24ncwogIC0tIGxpbmtzIGZpZWxkLCBleHBlY3RpbmcgdGhhdCBQcmVtYWtlIHdpbGwgaGFuZGxlIHRoZSByZXN0LgogIC0tCiAgbG9jYWwgZnVuY3Rpb24gY29weXVzYWdlZGF0YShjZmcsIGNmZ25hbWUsIGxpbmtUb1Byb2pzKQogIGxvY2FsIG15UHJqID0gY2ZnLnByb2plY3Q7CiAgbG9jYWwgYklzU3RhdGljTGliID0gKGdldENmZ0tpbmQoY2ZnKSA9PSAiU3RhdGljTGliIik7CiAgCiAgZm9yIHByak5hbWUsIHByakVudHJ5IGluIHBhaXJzKGxpbmtUb1Byb2pzKSBkbwogIGxvY2FsIHNyY1ByaiA9IHByakVudHJ5LnVzYWdlUHJvajsKICBsb2NhbCBzcmNDZmcgPSBzcmNQcmouX19jb25maWdzW2NmZ25hbWVdOwogIAogIGZvciBuYW1lLCBmaWVsZCBpbiBwYWlycyhwcmVtYWtlLmZpZWxkcykgZG8KICBpZihzcmNDZmdbbmFtZV0pIHRoZW4KICBpZihmaWVsZC51c2FnZWNvcHkpIHRoZW4KICBpZihub3QgcHJqRW50cnkuYkxpbmthZ2VPbmx5KSB0aGVuCiAgY29weWRlcGVuZGVudGZpZWxkKHNyY0NmZywgY2ZnLCBuYW1lKQogIGVuZAogIGVsc2VpZihmaWVsZC5saW5rYWdlY29weSkgdGhlbgogIC0tQ29weSB0aGUgbGlua2FnZSBkYXRhIGlmIHdlJ3JlIGJ1aWxkaW5nIGEgbm9uLXN0YXRpYyB0aGluZwogIC0tYW5kIHRoaXMgaXMgYSBwdXJlIHVzYWdlIHByb2plY3QuIElmIGl0J3Mgbm90IHB1cmUtdXNhZ2UsIHRoZW4KICAtLXdlIHdpbGwgc2ltcGx5IHB1dCB0aGUgcHJvamVjdCdzIG5hbWUgaW4gdGhlIGxpbmtzIGZpZWxkIGxhdGVyLgogIGlmKChub3QgYklzU3RhdGljTGliKSBhbmQgKG5vdCBwcmpFbnRyeS5wcm9qKSkgdGhlbgogIGNvcHlkZXBlbmRlbnRmaWVsZChzcmNDZmcsIGNmZywgbmFtZSkKICBlbmQKICBlbmQKICBlbmQKICBlbmQKICAKICBpZigobm90IGJJc1N0YXRpY0xpYikgYW5kIHByakVudHJ5LnByb2opIHRoZW4KICB0YWJsZS5pbnNlcnQoY2ZnLmxpbmtzLCBwcmpFbnRyeS5wcm9qLm5hbWUpOwogIGVuZAogIGVuZAogIGVuZApmdW5jdGlvbiBwcmVtYWtlLmJha2UuYnVpbGRjb25maWdzKCkKZm9yIHNsbiBpbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2goKSBkbwpmb3IgXywgcHJqIGluIGlwYWlycyhzbG4ucHJvamVjdHMpIGRvCnByai5sb2NhdGlvbiA9IHByai5sb2NhdGlvbiBvciBzbG4ubG9jYXRpb24gb3IgcHJqLmJhc2VkaXIKYWRqdXN0cGF0aHMocHJqLmxvY2F0aW9uLCBwcmopCmZvciBfLCBibGsgaW4gaXBhaXJzKHByai5ibG9ja3MpIGRvCmFkanVzdHBhdGhzKHByai5sb2NhdGlvbiwgYmxrKQplbmQKZW5kCnNsbi5sb2NhdGlvbiA9IHNsbi5sb2NhdGlvbiBvciBzbG4uYmFzZWRpcgplbmQKZm9yIHNsbiBpbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2goKSBkbwpsb2NhbCBiYXNpcyA9IGNvbGxhcHNlKHNsbikKZm9yIF8sIHByaiBpbiBpcGFpcnMoc2xuLnByb2plY3RzKSBkbwpwcmouX19jb25maWdzID0gY29sbGFwc2UocHJqLCBiYXNpcykKZm9yIF8sIGNmZyBpbiBwYWlycyhwcmouX19jb25maWdzKSBkbwpiYWtlLnBvc3Rwcm9jZXNzKHByaiwgY2ZnKQplbmQKZW5kCmVuZApmb3Igc2xuIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaCgpIGRvCmZvciBwcmpJeCwgcHJqIGluIGlwYWlycyhzbG4ucHJvamVjdHMpIGRvCmlmKG5vdCBwcmoudXNhZ2UpIHRoZW4KZm9yIGNmZ25hbWUsIGNmZyBpbiBwYWlycyhwcmouX19jb25maWdzKSBkbwpsb2NhbCB1c2VzUHJqcyA9IGdldHByb2plY3RzY29ubmVjdGlvbnMoY2ZnLCBjZmduYW1lKTsKY29weXVzYWdlZGF0YShjZmcsIGNmZ25hbWUsIHVzZXNQcmpzKQplbmQKZW5kCmVuZAplbmQKZm9yIHNsbiBpbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2goKSBkbwpsb2NhbCByZW1vdmVMaXN0ID0ge307CmZvciBpbmRleCwgcHJqIGluIGlwYWlycyhzbG4ucHJvamVjdHMpIGRvCmlmKHByai51c2FnZSkgdGhlbgp0YWJsZS5pbnNlcnQocmVtb3ZlTGlzdCwgMSwgaW5kZXgpOyAtLUFkZCBpbiByZXZlcnNlIG9yZGVyLgplbmQKZW5kCmZvciBfLCBpbmRleCBpbiBpcGFpcnMocmVtb3ZlTGlzdCkgZG8KdGFibGUucmVtb3ZlKHNsbi5wcm9qZWN0cywgaW5kZXgpOwplbmQKZW5kCmJ1aWxkdW5pcXVlZGlycygpCmJ1aWxkdGFyZ2V0cyhjZmcpCmVuZApmdW5jdGlvbiBwcmVtYWtlLmJha2UucG9zdHByb2Nlc3MocHJqLCBjZmcpCmNmZy5wcm9qZWN0ICAgPSBwcmoKY2ZnLnNob3J0bmFtZSA9IHByZW1ha2UuZ2V0Y29uZmlnbmFtZShjZmcubmFtZSwgY2ZnLnBsYXRmb3JtLCB0cnVlKQpjZmcubG9uZ25hbWUgID0gcHJlbWFrZS5nZXRjb25maWduYW1lKGNmZy5uYW1lLCBjZmcucGxhdGZvcm0pCmNmZy5sb2NhdGlvbiA9IGNmZy5sb2NhdGlvbiBvciBjZmcuYmFzZWRpcgpsb2NhbCBwbGF0Zm9ybSA9IHByZW1ha2UucGxhdGZvcm1zW2NmZy5wbGF0Zm9ybV0KaWYgcGxhdGZvcm0uaXNjcm9zc2NvbXBpbGVyIHRoZW4KY2ZnLnN5c3RlbSA9IGNmZy5wbGF0Zm9ybQplbHNlCmNmZy5zeXN0ZW0gPSBvcy5nZXQoKQplbmQKaWYgY2ZnLmtpbmQgPT0gIlNoYXJlZExpYiIgYW5kIHBsYXRmb3JtLm5vc2hhcmVkbGlicyB0aGVuCmNmZy5raW5kID0gIlN0YXRpY0xpYiIKZW5kCmxvY2FsIGZpbGVzID0geyB9CmZvciBfLCBmbmFtZSBpbiBpcGFpcnMoY2ZnLmZpbGVzKSBkbwpsb2NhbCBleGNsdWRlZCA9IGZhbHNlCmZvciBfLCBleGNsdWRlIGluIGlwYWlycyhjZmcuZXhjbHVkZXMpIGRvCmV4Y2x1ZGVkID0gKGZuYW1lID09IGV4Y2x1ZGUpCmlmIChleGNsdWRlZCkgdGhlbiBicmVhayBlbmQKZW5kCmlmIChub3QgZXhjbHVkZWQpIHRoZW4KdGFibGUuaW5zZXJ0KGZpbGVzLCBmbmFtZSkKZW5kCmVuZApjZmcuZmlsZXMgPSBmaWxlcwpmb3IgbmFtZSwgZmllbGQgaW4gcGFpcnMocHJlbWFrZS5maWVsZHMpIGRvCmlmIGZpZWxkLmlzZmxhZ3MgdGhlbgpsb2NhbCB2YWx1ZXMgPSBjZmdbbmFtZV0KZm9yIF8sIGZsYWcgaW4gaXBhaXJzKHZhbHVlcykgZG8gdmFsdWVzW2ZsYWddID0gdHJ1ZSBlbmQKZW5kCmVuZApjZmcuX19maWxlY29uZmlncyA9IHsgfQpmb3IgXywgZm5hbWUgaW4gaXBhaXJzKGNmZy5maWxlcykgZG8KY2ZnLnRlcm1zLnJlcXVpcmVkID0gZm5hbWU6bG93ZXIoKQpsb2NhbCBmY2ZnID0ge30KZm9yIF8sIGJsayBpbiBpcGFpcnMoY2ZnLnByb2plY3QuYmxvY2tzKSBkbwppZiAocHJlbWFrZS5pc2tleXdvcmRzbWF0Y2goYmxrLmtleXdvcmRzLCBjZmcudGVybXMpKSB0aGVuCm1lcmdlb2JqZWN0KGZjZmcsIGJsaykKZW5kCmVuZApmY2ZnLm5hbWUgPSBmbmFtZQpjZmcuX19maWxlY29uZmlnc1tmbmFtZV0gPSBmY2ZnCnRhYmxlLmluc2VydChjZmcuX19maWxlY29uZmlncywgZmNmZykKZW5kCmVuZAoAcHJlbWFrZS5maWVsZHMgPQp7CmJhc2VkaXIgPQp7CmtpbmQgID0gInBhdGgiLApzY29wZSA9ICJjb250YWluZXIiLAp9LApidWlsZGFjdGlvbiA9CnsKa2luZCAgPSAic3RyaW5nIiwKc2NvcGUgPSAiY29uZmlnIiwKYWxsb3dlZCA9IHsKIkNvbXBpbGUiLAoiQ29weSIsCiJFbWJlZCIsCiJOb25lIgp9Cn0sCmJ1aWxkb3B0aW9ucyA9CnsKa2luZCAgPSAibGlzdCIsCnNjb3BlID0gImNvbmZpZyIsCn0sCmNvbmZpZ3VyYXRpb25zID0KewpraW5kICA9ICJsaXN0IiwKc2NvcGUgPSAic29sdXRpb24iLAp9LApkZWJ1Z2FyZ3MgPQp7CmtpbmQgPSAibGlzdCIsCnNjb3BlID0gImNvbmZpZyIsCn0sCmRlYnVnZGlyID0KewpraW5kID0gInBhdGgiLApzY29wZSA9ICJjb25maWciLAp9LApkZWJ1Z2VudnMgID0KewpraW5kID0gImxpc3QiLApzY29wZSA9ICJjb25maWciLAp9LApkZWZpbmVzID0KewpraW5kICA9ICJsaXN0IiwKc2NvcGUgPSAiY29uZmlnIiwKfSwKZGVwbG95bWVudG9wdGlvbnMgPQp7CmtpbmQgID0gImxpc3QiLApzY29wZSA9ICJjb25maWciLAp1c2FnZWNvcHkgPSB0cnVlLAp9LApleGNsdWRlcyA9CnsKa2luZCAgPSAiZmlsZWxpc3QiLApzY29wZSA9ICJjb25maWciLAp9LApmaWxlcyA9CnsKa2luZCAgPSAiZmlsZWxpc3QiLApzY29wZSA9ICJjb25maWciLAp9LApmbGFncyA9CnsKa2luZCAgPSAibGlzdCIsCnNjb3BlID0gImNvbmZpZyIsCmlzZmxhZ3MgPSB0cnVlLAp1c2FnZWNvcHkgPSB0cnVlLAphbGxvd2VkID0gZnVuY3Rpb24odmFsdWUpCmxvY2FsIGFsbG93ZWRfZmxhZ3MgPSB7CkFUTCA9IDEsCkRlYnVnRW52c0RvbnRNZXJnZSA9IDEsCkRlYnVnRW52c0luaGVyaXQgPSAxLApFbmFibGVTU0UgPSAxLApFbmFibGVTU0UyID0gMSwKRXh0cmFXYXJuaW5ncyA9IDEsCkZhdGFsV2FybmluZ3MgPSAxLApGbG9hdEZhc3QgPSAxLApGbG9hdFN0cmljdCA9IDEsCk1hbmFnZWQgPSAxLApNRkMgPSAxLApOYXRpdmVXQ2hhciA9IDEsCk5vNjRCaXRDaGVja3MgPSAxLApOb0VkaXRBbmRDb250aW51ZSA9IDEsCk5vRXhjZXB0aW9ucyA9IDEsCk5vRnJhbWVQb2ludGVyID0gMSwKTm9JbXBvcnRMaWIgPSAxLApOb0luY3JlbWVudGFsTGluayA9IDEsCk5vTWFuaWZlc3QgPSAxLApOb01pbmltYWxSZWJ1aWxkID0gMSwKTm9OYXRpdmVXQ2hhciA9IDEsCk5vUENIID0gMSwKTm9SVFRJID0gMSwKT3B0aW1pemUgPSAxLApPcHRpbWl6ZVNpemUgPSAxLApPcHRpbWl6ZVNwZWVkID0gMSwKU0VIID0gMSwKU3RhdGljQVRMID0gMSwKU3RhdGljUnVudGltZSA9IDEsClN5bWJvbHMgPSAxLApVbmljb2RlID0gMSwKVW5zYWZlID0gMSwKV2luTWFpbiA9IDEKfQpsb2NhbCBlbmdsaXNoVG9BbWVyaWNhblNwZWxsaW5nID0KewpvcHRpbWlzZSA9ICdvcHRpbWl6ZScsCm9wdGltaXNlc2l6ZSA9ICdvcHRpbWl6ZXNpemUnLApvcHRpbWlzZXNwZWVkID0gJ29wdGltaXplc3BlZWQnLAp9CmxvY2FsIGxvd2VydmFsdWUgPSB2YWx1ZTpsb3dlcigpCmxvd2VydmFsdWUgPSBlbmdsaXNoVG9BbWVyaWNhblNwZWxsaW5nW2xvd2VydmFsdWVdIG9yIGxvd2VydmFsdWUKZm9yIHYsIF8gaW4gcGFpcnMoYWxsb3dlZF9mbGFncykgZG8KaWYgdjpsb3dlcigpID09IGxvd2VydmFsdWUgdGhlbgpyZXR1cm4gdgplbmQKZW5kCnJldHVybiBuaWwsICJpbnZhbGlkIGZsYWciCmVuZCwKfSwKZnJhbWV3b3JrID0KewpraW5kID0gInN0cmluZyIsCnNjb3BlID0gImNvbnRhaW5lciIsCmFsbG93ZWQgPSB7CiIxLjAiLAoiMS4xIiwKIjIuMCIsCiIzLjAiLAoiMy41IiwKIjQuMCIsCiI0LjUiLAp9Cn0sCmltYWdlcGF0aCA9CnsKa2luZCA9ICJwYXRoIiwKc2NvcGUgPSAiY29uZmlnIiwKfSwKaW1hZ2VvcHRpb25zID0KewpraW5kICA9ICJsaXN0IiwKc2NvcGUgPSAiY29uZmlnIiwKfSwKaW1wbGliZGlyID0KewpraW5kICA9ICJwYXRoIiwKc2NvcGUgPSAiY29uZmlnIiwKfSwKaW1wbGliZXh0ZW5zaW9uID0KewpraW5kICA9ICJzdHJpbmciLApzY29wZSA9ICJjb25maWciLAp9LAppbXBsaWJuYW1lID0KewpraW5kICA9ICJzdHJpbmciLApzY29wZSA9ICJjb25maWciLAp9LAppbXBsaWJwcmVmaXggPQp7CmtpbmQgID0gInN0cmluZyIsCnNjb3BlID0gImNvbmZpZyIsCn0sCmltcGxpYnN1ZmZpeCA9CnsKa2luZCAgPSAic3RyaW5nIiwKc2NvcGUgPSAiY29uZmlnIiwKfSwKaW5jbHVkZWRpcnMgPQp7CmtpbmQgID0gImRpcmxpc3QiLApzY29wZSA9ICJjb25maWciLAp1c2FnZWNvcHkgPSB0cnVlLAp9LApraW5kID0KewpraW5kICA9ICJzdHJpbmciLApzY29wZSA9ICJjb25maWciLAphbGxvd2VkID0gewoiQ29uc29sZUFwcCIsCiJXaW5kb3dlZEFwcCIsCiJTdGF0aWNMaWIiLAoiU2hhcmVkTGliIgp9Cn0sCmxhbmd1YWdlID0KewpraW5kICA9ICJzdHJpbmciLApzY29wZSA9ICJjb250YWluZXIiLAphbGxvd2VkID0gewoiQyIsCiJDKysiLAoiQyMiCn0KfSwKbGliZGlycyA9CnsKa2luZCAgPSAiZGlybGlzdCIsCnNjb3BlID0gImNvbmZpZyIsCmxpbmthZ2Vjb3B5ID0gdHJ1ZSwKfSwKbGlua29wdGlvbnMgPQp7CmtpbmQgID0gImxpc3QiLApzY29wZSA9ICJjb25maWciLAp9LApsaW5rcyA9CnsKa2luZCAgPSAibGlzdCIsCnNjb3BlID0gImNvbmZpZyIsCmFsbG93ZWQgPSBmdW5jdGlvbih2YWx1ZSkKaWYgdmFsdWU6ZmluZCgnLycsIG5pbCwgdHJ1ZSkgdGhlbgp2YWx1ZSA9IHBhdGguZ2V0YWJzb2x1dGUodmFsdWUpCmVuZApyZXR1cm4gdmFsdWUKZW5kLApsaW5rYWdlY29weSA9IHRydWUsCn0sCmxvY2F0aW9uID0KewpraW5kICA9ICJwYXRoIiwKc2NvcGUgPSAiY29udGFpbmVyIiwKfSwKbWFrZXNldHRpbmdzID0KewpraW5kID0gImxpc3QiLApzY29wZSA9ICJjb25maWciLAp9LApvYmpkaXIgPQp7CmtpbmQgID0gInBhdGgiLApzY29wZSA9ICJjb25maWciLAp9LApwY2hoZWFkZXIgPQp7CmtpbmQgID0gInN0cmluZyIsCnNjb3BlID0gImNvbmZpZyIsCn0sCnBjaHNvdXJjZSA9CnsKa2luZCAgPSAicGF0aCIsCnNjb3BlID0gImNvbmZpZyIsCn0sCnBsYXRmb3JtcyA9CnsKa2luZCAgPSAibGlzdCIsCnNjb3BlID0gInNvbHV0aW9uIiwKYWxsb3dlZCA9IHRhYmxlLmtleXMocHJlbWFrZS5wbGF0Zm9ybXMpLAp9LApwb3N0YnVpbGRjb21tYW5kcyA9CnsKa2luZCAgPSAibGlzdCIsCnNjb3BlID0gImNvbmZpZyIsCn0sCnByZWJ1aWxkY29tbWFuZHMgPQp7CmtpbmQgID0gImxpc3QiLApzY29wZSA9ICJjb25maWciLAp9LApwcmVsaW5rY29tbWFuZHMgPQp7CmtpbmQgID0gImxpc3QiLApzY29wZSA9ICJjb25maWciLAp9LApyZXNkZWZpbmVzID0KewpraW5kICA9ICJsaXN0IiwKc2NvcGUgPSAiY29uZmlnIiwKfSwKcmVzaW5jbHVkZWRpcnMgPQp7CmtpbmQgID0gImRpcmxpc3QiLApzY29wZSA9ICJjb25maWciLAp9LApyZXNvcHRpb25zID0KewpraW5kICA9ICJsaXN0IiwKc2NvcGUgPSAiY29uZmlnIiwKfSwKdGFyZ2V0ZGlyID0KewpraW5kICA9ICJwYXRoIiwKc2NvcGUgPSAiY29uZmlnIiwKfSwKdGFyZ2V0ZXh0ZW5zaW9uID0KewpraW5kICA9ICJzdHJpbmciLApzY29wZSA9ICJjb25maWciLAp9LAp0YXJnZXRuYW1lID0KewpraW5kICA9ICJzdHJpbmciLApzY29wZSA9ICJjb25maWciLAp9LAp0YXJnZXRwcmVmaXggPQp7CmtpbmQgID0gInN0cmluZyIsCnNjb3BlID0gImNvbmZpZyIsCn0sCnRhcmdldHN1ZmZpeCA9CnsKa2luZCAgPSAic3RyaW5nIiwKc2NvcGUgPSAiY29uZmlnIiwKfSwKdHJpbXBhdGhzID0KewpraW5kID0gImRpcmxpc3QiLApzY29wZSA9ICJjb25maWciLAp9LAp1dWlkID0KewpraW5kICA9ICJzdHJpbmciLApzY29wZSA9ICJjb250YWluZXIiLAphbGxvd2VkID0gZnVuY3Rpb24odmFsdWUpCmxvY2FsIG9rID0gdHJ1ZQppZiAoI3ZhbHVlIH49IDM2KSB0aGVuIG9rID0gZmFsc2UgZW5kCmZvciBpPTEsMzYgZG8KbG9jYWwgY2ggPSB2YWx1ZTpzdWIoaSxpKQppZiAobm90IGNoOmZpbmQoIltBQkNERUZhYmNkZWYwMTIzNDU2Nzg5LV0iKSkgdGhlbiBvayA9IGZhbHNlIGVuZAplbmQKaWYgKHZhbHVlOnN1Yig5LDkpIH49ICItIikgICB0aGVuIG9rID0gZmFsc2UgZW5kCmlmICh2YWx1ZTpzdWIoMTQsMTQpIH49ICItIikgdGhlbiBvayA9IGZhbHNlIGVuZAppZiAodmFsdWU6c3ViKDE5LDE5KSB+PSAiLSIpIHRoZW4gb2sgPSBmYWxzZSBlbmQKaWYgKHZhbHVlOnN1YigyNCwyNCkgfj0gIi0iKSB0aGVuIG9rID0gZmFsc2UgZW5kCmlmIChub3Qgb2spIHRoZW4KcmV0dXJuIG5pbCwgImludmFsaWQgVVVJRCIKZW5kCnJldHVybiB2YWx1ZTp1cHBlcigpCmVuZAp9LAp1c2VzID0KewpraW5kICA9ICJsaXN0IiwKc2NvcGUgPSAiY29uZmlnIiwKfSwKdnBhdGhzID0KewpraW5kID0gImtleXBhdGgiLApzY29wZSA9ICJjb250YWluZXIiLAp9LAp9CmZ1bmN0aW9uIHByZW1ha2UuY2hlY2t2YWx1ZSh2YWx1ZSwgYWxsb3dlZCkKaWYgKGFsbG93ZWQpIHRoZW4KaWYgKHR5cGUoYWxsb3dlZCkgPT0gImZ1bmN0aW9uIikgdGhlbgpyZXR1cm4gYWxsb3dlZCh2YWx1ZSkKZWxzZQpmb3IgXyx2IGluIGlwYWlycyhhbGxvd2VkKSBkbwppZiAodmFsdWU6bG93ZXIoKSA9PSB2Omxvd2VyKCkpIHRoZW4KcmV0dXJuIHYKZW5kCmVuZApyZXR1cm4gbmlsLCAiaW52YWxpZCB2YWx1ZSAnIiAuLiB2YWx1ZSAuLiAiJyIKZW5kCmVsc2UKcmV0dXJuIHZhbHVlCmVuZAplbmQKZnVuY3Rpb24gcHJlbWFrZS5nZXRvYmplY3QodCkKbG9jYWwgY29udGFpbmVyCmlmICh0ID09ICJjb250YWluZXIiIG9yIHQgPT0gInNvbHV0aW9uIikgdGhlbgpjb250YWluZXIgPSBwcmVtYWtlLkN1cnJlbnRDb250YWluZXIKZWxzZQpjb250YWluZXIgPSBwcmVtYWtlLkN1cnJlbnRDb25maWd1cmF0aW9uCmVuZAppZiB0ID09ICJzb2x1dGlvbiIgdGhlbgppZiB0eXBlKGNvbnRhaW5lcikgPT0gInByb2plY3QiIHRoZW4KY29udGFpbmVyID0gY29udGFpbmVyLnNvbHV0aW9uCmVuZAppZiB0eXBlKGNvbnRhaW5lcikgfj0gInNvbHV0aW9uIiB0aGVuCmNvbnRhaW5lciA9IG5pbAplbmQKZW5kCmxvY2FsIG1zZwppZiAobm90IGNvbnRhaW5lcikgdGhlbgppZiAodCA9PSAiY29udGFpbmVyIikgdGhlbgptc2cgPSAibm8gYWN0aXZlIHNvbHV0aW9uIG9yIHByb2plY3QiCmVsc2VpZiAodCA9PSAic29sdXRpb24iKSB0aGVuCm1zZyA9ICJubyBhY3RpdmUgc29sdXRpb24iCmVsc2UKbXNnID0gIm5vIGFjdGl2ZSBzb2x1dGlvbiwgcHJvamVjdCwgb3IgY29uZmlndXJhdGlvbiIKZW5kCmVuZApyZXR1cm4gY29udGFpbmVyLCBtc2cKZW5kCmZ1bmN0aW9uIHByZW1ha2Uuc2V0YXJyYXkoY3R5cGUsIGZpZWxkbmFtZSwgdmFsdWUsIGFsbG93ZWQpCmxvY2FsIGNvbnRhaW5lciwgZXJyID0gcHJlbWFrZS5nZXRvYmplY3QoY3R5cGUpCmlmIChub3QgY29udGFpbmVyKSB0aGVuCmVycm9yKGVyciwgNCkKZW5kCmlmIChub3QgY29udGFpbmVyW2ZpZWxkbmFtZV0pIHRoZW4KY29udGFpbmVyW2ZpZWxkbmFtZV0gPSB7IH0KZW5kCmxvY2FsIGZ1bmN0aW9uIGRvaW5zZXJ0KHZhbHVlLCBkZXB0aCkKaWYgKHR5cGUodmFsdWUpID09ICJ0YWJsZSIpIHRoZW4KZm9yIF8sdiBpbiBpcGFpcnModmFsdWUpIGRvCmRvaW5zZXJ0KHYsIGRlcHRoICsgMSkKZW5kCmVsc2UKdmFsdWUsIGVyciA9IHByZW1ha2UuY2hlY2t2YWx1ZSh2YWx1ZSwgYWxsb3dlZCkKaWYgKG5vdCB2YWx1ZSkgdGhlbgplcnJvcihlcnIsIGRlcHRoKQplbmQKdGFibGUuaW5zZXJ0KGNvbnRhaW5lcltmaWVsZG5hbWVdLCB2YWx1ZSkKZW5kCmVuZAppZiAodmFsdWUpIHRoZW4KZG9pbnNlcnQodmFsdWUsIDUpCmVuZApyZXR1cm4gY29udGFpbmVyW2ZpZWxkbmFtZV0KZW5kCmxvY2FsIGZ1bmN0aW9uIGRvbWF0Y2hlZGFycmF5KGN0eXBlLCBmaWVsZG5hbWUsIHZhbHVlLCBtYXRjaGZ1bmMpCmxvY2FsIHJlc3VsdCA9IHsgfQpmdW5jdGlvbiBtYWtlYWJzb2x1dGUodmFsdWUsIGRlcHRoKQppZiAodHlwZSh2YWx1ZSkgPT0gInRhYmxlIikgdGhlbgpmb3IgXywgaXRlbSBpbiBpcGFpcnModmFsdWUpIGRvCm1ha2VhYnNvbHV0ZShpdGVtLCBkZXB0aCArIDEpCmVuZAplbHNlaWYgdHlwZSh2YWx1ZSkgPT0gInN0cmluZyIgdGhlbgppZiB2YWx1ZTpmaW5kKCIqIikgdGhlbgptYWtlYWJzb2x1dGUobWF0Y2hmdW5jKHZhbHVlKSwgZGVwdGggKyAxKQplbHNlCnRhYmxlLmluc2VydChyZXN1bHQsIHBhdGguZ2V0YWJzb2x1dGUodmFsdWUpKQplbmQKZWxzZQplcnJvcigiSW52YWxpZCB2YWx1ZSBpbiBsaXN0OiBleHBlY3RlZCBzdHJpbmcsIGdvdCAiIC4uIHR5cGUodmFsdWUpLCBkZXB0aCkKZW5kCmVuZAptYWtlYWJzb2x1dGUodmFsdWUsIDMpCnJldHVybiBwcmVtYWtlLnNldGFycmF5KGN0eXBlLCBmaWVsZG5hbWUsIHJlc3VsdCkKZW5kCmZ1bmN0aW9uIHByZW1ha2Uuc2V0ZGlyYXJyYXkoY3R5cGUsIGZpZWxkbmFtZSwgdmFsdWUpCnJldHVybiBkb21hdGNoZWRhcnJheShjdHlwZSwgZmllbGRuYW1lLCB2YWx1ZSwgb3MubWF0Y2hkaXJzKQplbmQKZnVuY3Rpb24gcHJlbWFrZS5zZXRmaWxlYXJyYXkoY3R5cGUsIGZpZWxkbmFtZSwgdmFsdWUpCnJldHVybiBkb21hdGNoZWRhcnJheShjdHlwZSwgZmllbGRuYW1lLCB2YWx1ZSwgb3MubWF0Y2hmaWxlcykKZW5kCmZ1bmN0aW9uIHByZW1ha2Uuc2V0a2V5dmFsdWUoY3R5cGUsIGZpZWxkbmFtZSwgdmFsdWVzKQpsb2NhbCBjb250YWluZXIsIGVyciA9IHByZW1ha2UuZ2V0b2JqZWN0KGN0eXBlKQppZiBub3QgY29udGFpbmVyIHRoZW4KZXJyb3IoZXJyLCA0KQplbmQKaWYgbm90IGNvbnRhaW5lcltmaWVsZG5hbWVdIHRoZW4KY29udGFpbmVyW2ZpZWxkbmFtZV0gPSB7fQplbmQKaWYgdHlwZSh2YWx1ZXMpIH49ICJ0YWJsZSIgdGhlbgplcnJvcigiaW52YWxpZCB2YWx1ZTsgdGFibGUgZXhwZWN0ZWQiLCA0KQplbmQKbG9jYWwgZmllbGQgPSBjb250YWluZXJbZmllbGRuYW1lXQpmb3Iga2V5LHZhbHVlIGluIHBhaXJzKHZhbHVlcykgZG8KaWYgbm90IGZpZWxkW2tleV0gdGhlbgpmaWVsZFtrZXldID0ge30KZW5kCnRhYmxlLmluc2VydGZsYXQoZmllbGRba2V5XSwgdmFsdWUpCmVuZApyZXR1cm4gZmllbGQKZW5kCmZ1bmN0aW9uIHByZW1ha2Uuc2V0c3RyaW5nKGN0eXBlLCBmaWVsZG5hbWUsIHZhbHVlLCBhbGxvd2VkKQpsb2NhbCBjb250YWluZXIsIGVyciA9IHByZW1ha2UuZ2V0b2JqZWN0KGN0eXBlKQppZiAobm90IGNvbnRhaW5lcikgdGhlbgplcnJvcihlcnIsIDQpCmVuZAppZiAodmFsdWUpIHRoZW4KdmFsdWUsIGVyciA9IHByZW1ha2UuY2hlY2t2YWx1ZSh2YWx1ZSwgYWxsb3dlZCkKaWYgKG5vdCB2YWx1ZSkgdGhlbgplcnJvcihlcnIsIDQpCmVuZApjb250YWluZXJbZmllbGRuYW1lXSA9IHZhbHVlCmVuZApyZXR1cm4gY29udGFpbmVyW2ZpZWxkbmFtZV0KZW5kCmxvY2FsIGZ1bmN0aW9uIGFjY2Vzc29yKG5hbWUsIHZhbHVlKQpsb2NhbCBraW5kICAgID0gcHJlbWFrZS5maWVsZHNbbmFtZV0ua2luZApsb2NhbCBzY29wZSAgID0gcHJlbWFrZS5maWVsZHNbbmFtZV0uc2NvcGUKbG9jYWwgYWxsb3dlZCA9IHByZW1ha2UuZmllbGRzW25hbWVdLmFsbG93ZWQKaWYgKGtpbmQgPT0gInN0cmluZyIgb3Iga2luZCA9PSAicGF0aCIpIGFuZCB2YWx1ZSB0aGVuCmlmIHR5cGUodmFsdWUpIH49ICJzdHJpbmciIHRoZW4KZXJyb3IoInN0cmluZyB2YWx1ZSBleHBlY3RlZCIsIDMpCmVuZAplbmQKaWYga2luZCA9PSAic3RyaW5nIiB0aGVuCnJldHVybiBwcmVtYWtlLnNldHN0cmluZyhzY29wZSwgbmFtZSwgdmFsdWUsIGFsbG93ZWQpCmVsc2VpZiBraW5kID09ICJwYXRoIiB0aGVuCmlmIHZhbHVlIHRoZW4gdmFsdWUgPSBwYXRoLmdldGFic29sdXRlKHZhbHVlKSBlbmQKcmV0dXJuIHByZW1ha2Uuc2V0c3RyaW5nKHNjb3BlLCBuYW1lLCB2YWx1ZSkKZWxzZWlmIGtpbmQgPT0gImxpc3QiIHRoZW4KcmV0dXJuIHByZW1ha2Uuc2V0YXJyYXkoc2NvcGUsIG5hbWUsIHZhbHVlLCBhbGxvd2VkKQplbHNlaWYga2luZCA9PSAiZGlybGlzdCIgdGhlbgpyZXR1cm4gcHJlbWFrZS5zZXRkaXJhcnJheShzY29wZSwgbmFtZSwgdmFsdWUpCmVsc2VpZiBraW5kID09ICJmaWxlbGlzdCIgdGhlbgpyZXR1cm4gcHJlbWFrZS5zZXRmaWxlYXJyYXkoc2NvcGUsIG5hbWUsIHZhbHVlKQplbHNlaWYga2luZCA9PSAia2V5dmFsdWUiIG9yIGtpbmQgPT0gImtleXBhdGgiIHRoZW4KcmV0dXJuIHByZW1ha2Uuc2V0a2V5dmFsdWUoc2NvcGUsIG5hbWUsIHZhbHVlKQplbmQKZW5kCmZvciBuYW1lLF8gaW4gcGFpcnMocHJlbWFrZS5maWVsZHMpIGRvCl9HW25hbWVdID0gZnVuY3Rpb24odmFsdWUpCnJldHVybiBhY2Nlc3NvcihuYW1lLCB2YWx1ZSkKZW5kCmVuZApmdW5jdGlvbiBjb25maWd1cmF0aW9uKHRlcm1zKQppZiBub3QgdGVybXMgdGhlbgpyZXR1cm4gcHJlbWFrZS5DdXJyZW50Q29uZmlndXJhdGlvbgplbmQKbG9jYWwgY29udGFpbmVyLCBlcnIgPSBwcmVtYWtlLmdldG9iamVjdCgiY29udGFpbmVyIikKaWYgKG5vdCBjb250YWluZXIpIHRoZW4KZXJyb3IoZXJyLCAyKQplbmQKbG9jYWwgY2ZnID0geyB9CmNmZy50ZXJtcyA9IHRhYmxlLmZsYXR0ZW4oe3Rlcm1zfSkKdGFibGUuaW5zZXJ0KGNvbnRhaW5lci5ibG9ja3MsIGNmZykKcHJlbWFrZS5DdXJyZW50Q29uZmlndXJhdGlvbiA9IGNmZwpjZmcua2V5d29yZHMgPSB7IH0KZm9yIF8sIHdvcmQgaW4gaXBhaXJzKGNmZy50ZXJtcykgZG8KdGFibGUuaW5zZXJ0KGNmZy5rZXl3b3JkcywgcGF0aC53aWxkY2FyZHMod29yZCk6bG93ZXIoKSkKZW5kCmZvciBuYW1lLCBmaWVsZCBpbiBwYWlycyhwcmVtYWtlLmZpZWxkcykgZG8KaWYgKGZpZWxkLmtpbmQgfj0gInN0cmluZyIgYW5kIGZpZWxkLmtpbmQgfj0gInBhdGgiKSB0aGVuCmNmZ1tuYW1lXSA9IHsgfQplbmQKZW5kCnJldHVybiBjZmcKZW5kCmxvY2FsIGZ1bmN0aW9uIGNyZWF0ZXByb2plY3QobmFtZSwgc2xuLCBpc1VzYWdlKQpsb2NhbCBwcmogPSB7fQpzZXRtZXRhdGFibGUocHJqLCB7Cl9fdHlwZSA9ICJwcm9qZWN0IiwKfSkKdGFibGUuaW5zZXJ0KHNsbi5wcm9qZWN0cywgcHJqKQppZihpc1VzYWdlKSB0aGVuCmlmKHNsbi5wcm9qZWN0c1tuYW1lXSkgdGhlbgpzbG4ucHJvamVjdHNbbmFtZV0udXNhZ2VQcm9qID0gcHJqOwplbHNlCnNsbi5wcm9qZWN0c1tuYW1lXSA9IHByagplbmQKZWxzZQppZihzbG4ucHJvamVjdHNbbmFtZV0pIHRoZW4KcHJqLnVzYWdlUHJvaiA9IHNsbi5wcm9qZWN0c1tuYW1lXTsKZW5kCnNsbi5wcm9qZWN0c1tuYW1lXSA9IHByagplbmQKcHJqLnNvbHV0aW9uICAgICAgID0gc2xuCnByai5uYW1lICAgICAgICAgICA9IG5hbWUKcHJqLmJhc2VkaXIgICAgICAgID0gb3MuZ2V0Y3dkKCkKcHJqLnV1aWQgICAgICAgICAgID0gb3MudXVpZCgpCnByai5ibG9ja3MgICAgICAgICA9IHsgfQpwcmoudXNhZ2UgICA9IGlzVXNhZ2U7CnJldHVybiBwcmo7CmVuZApmdW5jdGlvbiB1c2FnZShuYW1lKQppZiAobm90IG5hbWUpIHRoZW4KaWYodHlwZShwcmVtYWtlLkN1cnJlbnRDb250YWluZXIpIH49ICJwcm9qZWN0IikgdGhlbiByZXR1cm4gbmlsIGVuZAppZihub3QgcHJlbWFrZS5DdXJyZW50Q29udGFpbmVyLnVzYWdlKSB0aGVuIHJldHVybiBuaWwgZW5kCnJldHVybiBwcmVtYWtlLkN1cnJlbnRDb250YWluZXIKZW5kCmxvY2FsIHNsbgppZiAodHlwZShwcmVtYWtlLkN1cnJlbnRDb250YWluZXIpID09ICJwcm9qZWN0IikgdGhlbgpzbG4gPSBwcmVtYWtlLkN1cnJlbnRDb250YWluZXIuc29sdXRpb24KZWxzZQpzbG4gPSBwcmVtYWtlLkN1cnJlbnRDb250YWluZXIKZW5kCmlmICh0eXBlKHNsbikgfj0gInNvbHV0aW9uIikgdGhlbgplcnJvcigibm8gYWN0aXZlIHNvbHV0aW9uIiwgMikKZW5kCiAgLS0gaWYgdGhpcyBpcyBhIG5ldyBwcm9qZWN0LCBvciB0aGUgcHJvamVjdCBpbiB0aGF0IHNsb3QgZG9lc24ndCBoYXZlIGEgdXNhZ2UsIGNyZWF0ZSBpdAogIGlmKChub3Qgc2xuLnByb2plY3RzW25hbWVdKSBvcgogICgobm90IHNsbi5wcm9qZWN0c1tuYW1lXS51c2FnZSkgYW5kIChub3Qgc2xuLnByb2plY3RzW25hbWVdLnVzYWdlUHJvaikpKSB0aGVuCiAgcHJlbWFrZS5DdXJyZW50Q29udGFpbmVyID0gY3JlYXRlcHJvamVjdChuYW1lLCBzbG4sIHRydWUpCiAgZWxzZQogIHByZW1ha2UuQ3VycmVudENvbnRhaW5lciA9IGlmZihzbG4ucHJvamVjdHNbbmFtZV0udXNhZ2UsCiAgc2xuLnByb2plY3RzW25hbWVdLCBzbG4ucHJvamVjdHNbbmFtZV0udXNhZ2VQcm9qKQogIGVuZAogIC0tIGFkZCBhbiBlbXB0eSwgZ2xvYmFsIGNvbmZpZ3VyYXRpb24gdG8gdGhlIHByb2plY3QKICBjb25maWd1cmF0aW9uIHsgfQogIHJldHVybiBwcmVtYWtlLkN1cnJlbnRDb250YWluZXIKICBlbmQKICBmdW5jdGlvbiBwcm9qZWN0KG5hbWUpCiAgaWYgKG5vdCBuYW1lKSB0aGVuCiAgLS1Pbmx5IHJldHVybiBub24tdXNhZ2UgcHJvamVjdHMKICBpZih0eXBlKHByZW1ha2UuQ3VycmVudENvbnRhaW5lcikgfj0gInByb2plY3QiKSB0aGVuIHJldHVybiBuaWwgZW5kCiAgaWYocHJlbWFrZS5DdXJyZW50Q29udGFpbmVyLnVzYWdlKSB0aGVuIHJldHVybiBuaWwgZW5kCiAgcmV0dXJuIHByZW1ha2UuQ3VycmVudENvbnRhaW5lcgplbmQKICAtLSBpZGVudGlmeSB0aGUgcGFyZW50IHNvbHV0aW9uCiAgbG9jYWwgc2xuCiAgaWYgKHR5cGUocHJlbWFrZS5DdXJyZW50Q29udGFpbmVyKSA9PSAicHJvamVjdCIpIHRoZW4KICBzbG4gPSBwcmVtYWtlLkN1cnJlbnRDb250YWluZXIuc29sdXRpb24KICBlbHNlCiAgc2xuID0gcHJlbWFrZS5DdXJyZW50Q29udGFpbmVyCiAgZW5kCiAgaWYgKHR5cGUoc2xuKSB+PSAic29sdXRpb24iKSB0aGVuCiAgZXJyb3IoIm5vIGFjdGl2ZSBzb2x1dGlvbiIsIDIpCiAgZW5kCiAgLS0gaWYgdGhpcyBpcyBhIG5ldyBwcm9qZWN0LCBvciB0aGUgb2xkIHByb2plY3QgaXMgYSB1c2FnZSBwcm9qZWN0LCBjcmVhdGUgaXQKICBpZigobm90IHNsbi5wcm9qZWN0c1tuYW1lXSkgb3Igc2xuLnByb2plY3RzW25hbWVdLnVzYWdlKSB0aGVuCiAgcHJlbWFrZS5DdXJyZW50Q29udGFpbmVyID0gY3JlYXRlcHJvamVjdChuYW1lLCBzbG4pCiAgZWxzZQogIHByZW1ha2UuQ3VycmVudENvbnRhaW5lciA9IHNsbi5wcm9qZWN0c1tuYW1lXTsKICBlbmQKY29uZmlndXJhdGlvbiB7IH0KcmV0dXJuIHByZW1ha2UuQ3VycmVudENvbnRhaW5lcgplbmQKZnVuY3Rpb24gc29sdXRpb24obmFtZSkKaWYgbm90IG5hbWUgdGhlbgppZiB0eXBlKHByZW1ha2UuQ3VycmVudENvbnRhaW5lcikgPT0gInByb2plY3QiIHRoZW4KcmV0dXJuIHByZW1ha2UuQ3VycmVudENvbnRhaW5lci5zb2x1dGlvbgplbHNlCnJldHVybiBwcmVtYWtlLkN1cnJlbnRDb250YWluZXIKZW5kCmVuZApwcmVtYWtlLkN1cnJlbnRDb250YWluZXIgPSBwcmVtYWtlLnNvbHV0aW9uLmdldChuYW1lKQppZiAobm90IHByZW1ha2UuQ3VycmVudENvbnRhaW5lcikgdGhlbgpwcmVtYWtlLkN1cnJlbnRDb250YWluZXIgPSBwcmVtYWtlLnNvbHV0aW9uLm5ldyhuYW1lKQplbmQKY29uZmlndXJhdGlvbiB7IH0KcmV0dXJuIHByZW1ha2UuQ3VycmVudENvbnRhaW5lcgplbmQKZnVuY3Rpb24gbmV3YWN0aW9uKGEpCnByZW1ha2UuYWN0aW9uLmFkZChhKQplbmQKZnVuY3Rpb24gbmV3b3B0aW9uKG9wdCkKcHJlbWFrZS5vcHRpb24uYWRkKG9wdCkKZW5kCgBuZXdvcHRpb24gCnsKdHJpZ2dlciAgICAgPSAiY2MiLAp2YWx1ZSAgICAgICA9ICJWQUxVRSIsCmRlc2NyaXB0aW9uID0gIkNob29zZSBhIEMvQysrIGNvbXBpbGVyIHNldCIsCmFsbG93ZWQgPSB7CnsgImdjYyIsICJHTlUgR0NDIChnY2MvZysrKSIgfSwKeyAib3ciLCAgIk9wZW5XYXRjb20iICAgICAgICB9LAp9Cn0KbmV3b3B0aW9uCnsKdHJpZ2dlciAgICAgPSAiZG90bmV0IiwKdmFsdWUgICAgICAgPSAiVkFMVUUiLApkZXNjcmlwdGlvbiA9ICJDaG9vc2UgYSAuTkVUIGNvbXBpbGVyIHNldCIsCmFsbG93ZWQgPSB7CnsgIm1zbmV0IiwgICAiTWljcm9zb2Z0IC5ORVQgKGNzYykiIH0sCnsgIm1vbm8iLCAgICAiTm92ZWxsIE1vbm8gKG1jcykiICAgIH0sCnsgInBuZXQiLCAgICAiUG9ydGFibGUuTkVUIChjc2NjKSIgIH0sCn0KfQpuZXdvcHRpb24Kewp0cmlnZ2VyICAgICA9ICJmaWxlIiwKdmFsdWUgICAgICAgPSAiRklMRSIsCmRlc2NyaXB0aW9uID0gIlJlYWQgRklMRSBhcyBhIFByZW1ha2Ugc2NyaXB0OyBkZWZhdWx0IGlzICdwcmVtYWtlNC5sdWEnIgp9Cm5ld29wdGlvbgp7CnRyaWdnZXIgICAgID0gImhlbHAiLApkZXNjcmlwdGlvbiA9ICJEaXNwbGF5IHRoaXMgaW5mb3JtYXRpb24iCn0KbmV3b3B0aW9uCnsKdHJpZ2dlciAgICAgPSAib3MiLAp2YWx1ZSAgICAgICA9ICJWQUxVRSIsCmRlc2NyaXB0aW9uID0gIkdlbmVyYXRlIGZpbGVzIGZvciBhIGRpZmZlcmVudCBvcGVyYXRpbmcgc3lzdGVtIiwKYWxsb3dlZCA9IHsKeyAiYnNkIiwgICAgICAiT3BlbkJTRCwgTmV0QlNELCBvciBGcmVlQlNEIiB9LAp7ICJoYWlrdSIsICAgICJIYWlrdSIgfSwKeyAibGludXgiLCAgICAiTGludXgiIH0sCnsgIm1hY29zeCIsICAgIkFwcGxlIE1hYyBPUyBYIiB9LAp7ICJzb2xhcmlzIiwgICJTb2xhcmlzIiB9LAp7ICJ3aW5kb3dzIiwgICJNaWNyb3NvZnQgV2luZG93cyIgfSwKfQp9Cm5ld29wdGlvbgp7CnRyaWdnZXIgICAgID0gInBsYXRmb3JtIiwKdmFsdWUgICAgICAgPSAiVkFMVUUiLApkZXNjcmlwdGlvbiA9ICJBZGQgdGFyZ2V0IGFyY2hpdGVjdHVyZSAoaWYgc3VwcG9ydGVkIGJ5IGFjdGlvbikiLAphbGxvd2VkID0gewp7ICJ4MzIiLCAgICAgICAgICIzMi1iaXQiIH0sCnsgIng2NCIsICAgICAgICAgIjY0LWJpdCIgfSwKeyAidW5pdmVyc2FsIiwgICAiTWFjIE9TIFggVW5pdmVyc2FsLCAzMi0gYW5kIDY0LWJpdCIgfSwKeyAidW5pdmVyc2FsMzIiLCAiTWFjIE9TIFggVW5pdmVyc2FsLCAzMi1iaXQgb25seSIgfSwKeyAidW5pdmVyc2FsNjQiLCAiTWFjIE9TIFggVW5pdmVyc2FsLCA2NC1iaXQgb25seSIgfSwKeyAiaW9zIiwgICAgICAgICAiaU9TIiB9LAp7ICJwczMiLCAgICAgICAgICJQbGF5c3RhdGlvbiAzIChleHBlcmltZW50YWwpIiB9LAp7ICJ4Ym94MzYwIiwgICAgICJYYm94IDM2MCAoZXhwZXJpbWVudGFsKSIgfSwKfQp9Cm5ld29wdGlvbgp7CnRyaWdnZXIgICAgID0gInNjcmlwdHMiLAp2YWx1ZSAgICAgICA9ICJwYXRoIiwKZGVzY3JpcHRpb24gPSAiU2VhcmNoIGZvciBhZGRpdGlvbmFsIHNjcmlwdHMgb24gdGhlIGdpdmVuIHBhdGgiCn0KbmV3b3B0aW9uCnsKdHJpZ2dlciAgICAgPSAidmVyc2lvbiIsCmRlc2NyaXB0aW9uID0gIkRpc3BsYXkgdmVyc2lvbiBpbmZvcm1hdGlvbiIKfQoAcHJlbWFrZS5kb3RuZXQgPSB7IH0KcHJlbWFrZS5kb3RuZXQubmFtZXN0eWxlID0gIndpbmRvd3MiCmxvY2FsIGZsYWdzID0KewpGYXRhbFdhcm5pbmcgICA9ICIvd2FybmFzZXJyb3IiLApPcHRpbWl6ZSAgICAgICA9ICIvb3B0aW1pemUiLApPcHRpbWl6ZVNpemUgICA9ICIvb3B0aW1pemUiLApPcHRpbWl6ZVNwZWVkICA9ICIvb3B0aW1pemUiLApTeW1ib2xzICAgICAgICA9ICIvZGVidWciLApVbnNhZmUgICAgICAgICA9ICIvdW5zYWZlIgp9CmZ1bmN0aW9uIHByZW1ha2UuZG90bmV0LmdldGJ1aWxkYWN0aW9uKGZjZmcpCmxvY2FsIGV4dCA9IHBhdGguZ2V0ZXh0ZW5zaW9uKGZjZmcubmFtZSk6bG93ZXIoKQppZiBmY2ZnLmJ1aWxkYWN0aW9uID09ICJDb21waWxlIiBvciBleHQgPT0gIi5jcyIgdGhlbgpyZXR1cm4gIkNvbXBpbGUiCmVsc2VpZiBmY2ZnLmJ1aWxkYWN0aW9uID09ICJFbWJlZCIgb3IgZXh0ID09ICIucmVzeCIgdGhlbgpyZXR1cm4gIkVtYmVkZGVkUmVzb3VyY2UiCmVsc2VpZiBmY2ZnLmJ1aWxkYWN0aW9uID09ICJDb3B5IiBvciBleHQgPT0gIi5hc2F4IiBvciBleHQgPT0gIi5hc3B4IiB0aGVuCnJldHVybiAiQ29udGVudCIKZWxzZQpyZXR1cm4gIk5vbmUiCmVuZAplbmQKZnVuY3Rpb24gcHJlbWFrZS5kb3RuZXQuZ2V0Y29tcGlsZXJ2YXIoY2ZnKQppZiAoX09QVElPTlMuZG90bmV0ID09ICJtc25ldCIpIHRoZW4KcmV0dXJuICJjc2MiCmVsc2VpZiAoX09QVElPTlMuZG90bmV0ID09ICJtb25vIikgdGhlbgppZiAoY2ZnLmZyYW1ld29yayA8PSAiMS4xIikgdGhlbgpyZXR1cm4gIm1jcyIKZWxzZWlmIChjZmcuZnJhbWV3b3JrID49ICI0LjAiKSB0aGVuCnJldHVybiAiZG1jcyIKZWxzZSAKcmV0dXJuICJnbWNzIgplbmQKZWxzZQpyZXR1cm4gImNzY2MiCmVuZAplbmQKZnVuY3Rpb24gcHJlbWFrZS5kb3RuZXQuZ2V0ZmxhZ3MoY2ZnKQpsb2NhbCByZXN1bHQgPSB0YWJsZS50cmFuc2xhdGUoY2ZnLmZsYWdzLCBmbGFncykKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gcHJlbWFrZS5kb3RuZXQuZ2V0a2luZChjZmcpCmlmIChjZmcua2luZCA9PSAiQ29uc29sZUFwcCIpIHRoZW4KcmV0dXJuICJFeGUiCmVsc2VpZiAoY2ZnLmtpbmQgPT0gIldpbmRvd2VkQXBwIikgdGhlbgpyZXR1cm4gIldpbkV4ZSIKZWxzZWlmIChjZmcua2luZCA9PSAiU2hhcmVkTGliIikgdGhlbgpyZXR1cm4gIkxpYnJhcnkiCmVuZAplbmQAcHJlbWFrZS5nY2MgPSB7IH0KcHJlbWFrZS5nY2MuY2MgICAgID0gImdjYyIKcHJlbWFrZS5nY2MuY3h4ICAgID0gImcrKyIKcHJlbWFrZS5nY2MuYXIgICAgID0gImFyIgpsb2NhbCBjZmxhZ3MgPQp7CkVuYWJsZVNTRSAgICAgID0gIi1tc3NlIiwKRW5hYmxlU1NFMiAgICAgPSAiLW1zc2UyIiwKRXh0cmFXYXJuaW5ncyAgPSAiLVdhbGwgLVdleHRyYSIsCkZhdGFsV2FybmluZ3MgID0gIi1XZXJyb3IiLApGbG9hdEZhc3QgICAgICA9ICItZmZhc3QtbWF0aCIsCkZsb2F0U3RyaWN0ICAgID0gIi1mZmxvYXQtc3RvcmUiLApOb0ZyYW1lUG9pbnRlciA9ICItZm9taXQtZnJhbWUtcG9pbnRlciIsCk9wdGltaXplICAgICAgID0gIi1PMiIsCk9wdGltaXplU2l6ZSAgID0gIi1PcyIsCk9wdGltaXplU3BlZWQgID0gIi1PMyIsClN5bWJvbHMgICAgICAgID0gIi1nIiwKfQpsb2NhbCBjeHhmbGFncyA9CnsKTm9FeGNlcHRpb25zICAgPSAiLWZuby1leGNlcHRpb25zIiwKTm9SVFRJICAgICAgICAgPSAiLWZuby1ydHRpIiwKfQpwcmVtYWtlLmdjYy5wbGF0Zm9ybXMgPQp7Ck5hdGl2ZSA9IHsKY3BwZmxhZ3MgPSAiLU1NRCIsCn0sCngzMiA9IHsKY3BwZmxhZ3MgPSAiLU1NRCIsCmZsYWdzICAgID0gIi1tMzIiLApsZGZsYWdzICA9ICItTC91c3IvbGliMzIiLAp9LAp4NjQgPSB7CmNwcGZsYWdzID0gIi1NTUQiLApmbGFncyAgICA9ICItbTY0IiwKbGRmbGFncyAgPSAiLUwvdXNyL2xpYjY0IiwKfSwKVW5pdmVyc2FsID0gewpjcHBmbGFncyA9ICIiLApmbGFncyAgICA9ICItYXJjaCBpMzg2IC1hcmNoIHg4Nl82NCAtYXJjaCBwcGMgLWFyY2ggcHBjNjQiLAp9LApVbml2ZXJzYWwzMiA9IHsKY3BwZmxhZ3MgPSAiIiwKZmxhZ3MgICAgPSAiLWFyY2ggaTM4NiAtYXJjaCBwcGMiLAp9LApVbml2ZXJzYWw2NCA9IHsKY3BwZmxhZ3MgPSAiIiwKZmxhZ3MgICAgPSAiLWFyY2ggeDg2XzY0IC1hcmNoIHBwYzY0IiwKfSwKUFMzID0gewpjYyAgICAgICAgID0gInBwdS1sdjItZysrIiwKY3h4ICAgICAgICA9ICJwcHUtbHYyLWcrKyIsCmFyICAgICAgICAgPSAicHB1LWx2Mi1hciIsCmNwcGZsYWdzICAgPSAiLU1NRCIsCn0sCldpaURldiA9IHsKY3BwZmxhZ3MgICAgPSAiLU1NRCAtTVAgLUkkKExJQk9HQ19JTkMpICQoTUFDSERFUCkiLApsZGZsYWdzPSAiLUwkKExJQk9HQ19MSUIpICQoTUFDSERFUCkiLApjZmdzZXR0aW5ncyA9IFtbCiAgaWZlcSAoJChzdHJpcCAkKERFVktJVFBQQykpLCkKICAgICQoZXJyb3IgIkRFVktJVFBQQyBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBub3Qgc2V0IiknCiAgZW5kaWYKICBpbmNsdWRlICQoREVWS0lUUFBDKS93aWlfcnVsZXMnXV0sCn0sCn0KbG9jYWwgcGxhdGZvcm1zID0gcHJlbWFrZS5nY2MucGxhdGZvcm1zCmZ1bmN0aW9uIHByZW1ha2UuZ2NjLmdldGNwcGZsYWdzKGNmZykKbG9jYWwgZmxhZ3MgPSB7IH0KdGFibGUuaW5zZXJ0KGZsYWdzLCBwbGF0Zm9ybXNbY2ZnLnBsYXRmb3JtXS5jcHBmbGFncykKaWYgZmxhZ3NbMV06c3RhcnRzd2l0aCgiLU1NRCIpIGFuZCBjZmcuc3lzdGVtIH49ICJoYWlrdSIgdGhlbgp0YWJsZS5pbnNlcnQoZmxhZ3MsICItTVAiKQplbmQKcmV0dXJuIGZsYWdzCmVuZApmdW5jdGlvbiBwcmVtYWtlLmdjYy5nZXRjZmxhZ3MoY2ZnKQpsb2NhbCByZXN1bHQgPSB0YWJsZS50cmFuc2xhdGUoY2ZnLmZsYWdzLCBjZmxhZ3MpCnRhYmxlLmluc2VydChyZXN1bHQsIHBsYXRmb3Jtc1tjZmcucGxhdGZvcm1dLmZsYWdzKQppZiBjZmcuc3lzdGVtIH49ICJ3aW5kb3dzIiBhbmQgY2ZnLmtpbmQgPT0gIlNoYXJlZExpYiIgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLWZQSUMiKQplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gcHJlbWFrZS5nY2MuZ2V0Y3h4ZmxhZ3MoY2ZnKQpsb2NhbCByZXN1bHQgPSB0YWJsZS50cmFuc2xhdGUoY2ZnLmZsYWdzLCBjeHhmbGFncykKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gcHJlbWFrZS5nY2MuZ2V0bGRmbGFncyhjZmcpCmxvY2FsIHJlc3VsdCA9IHsgfQppZiBub3QgY2ZnLmZsYWdzLlN5bWJvbHMgdGhlbgppZiBjZmcuc3lzdGVtID09ICJtYWNvc3giIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi1XbCwteCIpCmVsc2UKdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi1zIikKZW5kCmVuZAppZiBjZmcua2luZCA9PSAiU2hhcmVkTGliIiB0aGVuCmlmIGNmZy5zeXN0ZW0gPT0gIm1hY29zeCIgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLWR5bmFtaWNsaWIiKQplbHNlCnRhYmxlLmluc2VydChyZXN1bHQsICItc2hhcmVkIikKZW5kCmlmIGNmZy5zeXN0ZW0gPT0gIndpbmRvd3MiIGFuZCBub3QgY2ZnLmZsYWdzLk5vSW1wb3J0TGliIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy1XbCwtLW91dC1pbXBsaWI9IicgLi4gY2ZnLmxpbmt0YXJnZXQuZnVsbHBhdGggLi4gJyInKQplbmQKZW5kCmlmIGNmZy5raW5kID09ICJXaW5kb3dlZEFwcCIgYW5kIGNmZy5zeXN0ZW0gPT0gIndpbmRvd3MiIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi1td2luZG93cyIpCmVuZApsb2NhbCBwbGF0Zm9ybSA9IHBsYXRmb3Jtc1tjZmcucGxhdGZvcm1dCnRhYmxlLmluc2VydChyZXN1bHQsIHBsYXRmb3JtLmZsYWdzKQp0YWJsZS5pbnNlcnQocmVzdWx0LCBwbGF0Zm9ybS5sZGZsYWdzKQpyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLmdjYy5nZXRsaWJkaXJmbGFncyhjZmcpCmxvY2FsIHJlc3VsdCA9IHsgfQpmb3IgXywgdmFsdWUgaW4gaXBhaXJzKHByZW1ha2UuZ2V0bGlua3MoY2ZnLCAiYWxsIiwgImRpcmVjdG9yeSIpKSBkbwp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLUwnIC4uIF9NQUtFLmVzYyh2YWx1ZSkpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLmdjYy5nZXRsaW5rZmxhZ3MoY2ZnKQpsb2NhbCByZXN1bHQgPSB7fQpmb3IgXywgdmFsdWUgaW4gaXBhaXJzKHByZW1ha2UuZ2V0bGlua3MoY2ZnLCAic3lzdGVtIiwgIm5hbWUiKSkgZG8KaWYgcGF0aC5nZXRleHRlbnNpb24odmFsdWUpID09ICIuZnJhbWV3b3JrIiB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICctZnJhbWV3b3JrICcgLi4gX01BS0UuZXNjKHBhdGguZ2V0YmFzZW5hbWUodmFsdWUpKSkKZWxzZQp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLWwnIC4uIF9NQUtFLmVzYyh2YWx1ZSkpCmVuZAplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gcHJlbWFrZS5nY2MuZ2V0ZGVmaW5lcyhkZWZpbmVzKQpsb2NhbCByZXN1bHQgPSB7IH0KZm9yIF8sZGVmIGluIGlwYWlycyhkZWZpbmVzKSBkbwp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLUQnIC4uIGRlZikKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHByZW1ha2UuZ2NjLmdldGluY2x1ZGVkaXJzKGluY2x1ZGVkaXJzKQpsb2NhbCByZXN1bHQgPSB7IH0KZm9yIF8sZGlyIGluIGlwYWlycyhpbmNsdWRlZGlycykgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi1JIiAuLiBfTUFLRS5lc2MoZGlyKSkKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHByZW1ha2UuZ2NjLmdldGNmZ3NldHRpbmdzKGNmZykKcmV0dXJuIHBsYXRmb3Jtc1tjZmcucGxhdGZvcm1dLmNmZ3NldHRpbmdzCmVuZAoAcHJlbWFrZS5tc2MgPSB7IH0KcHJlbWFrZS5tc2MubmFtZXN0eWxlID0gIndpbmRvd3MiCgBwcmVtYWtlLm93ID0geyB9CnByZW1ha2Uub3cubmFtZXN0eWxlID0gIndpbmRvd3MiCnByZW1ha2Uub3cuY2MgICAgID0gIldDTDM4NiIKcHJlbWFrZS5vdy5jeHggICAgPSAiV0NMMzg2IgpwcmVtYWtlLm93LmFyICAgICA9ICJhciIKbG9jYWwgY2ZsYWdzID0KewpFeHRyYVdhcm5pbmdzICA9ICItd3giLApGYXRhbFdhcm5pbmcgICA9ICItd2UiLApGbG9hdEZhc3QgICAgICA9ICItb21uIiwKRmxvYXRTdHJpY3QgICAgPSAiLW9wIiwKT3B0aW1pemUgICAgICAgPSAiLW94IiwKT3B0aW1pemVTaXplICAgPSAiLW9zIiwKT3B0aW1pemVTcGVlZCAgPSAiLW90IiwKU3ltYm9scyAgICAgICAgPSAiLWQyIiwKfQpsb2NhbCBjeHhmbGFncyA9CnsKTm9FeGNlcHRpb25zICAgPSAiLXhkIiwKTm9SVFRJICAgICAgICAgPSAiLXhyIiwKfQpwcmVtYWtlLm93LnBsYXRmb3JtcyA9IAp7Ck5hdGl2ZSA9IHsgCmZsYWdzID0gIiIgCn0sCn0KZnVuY3Rpb24gcHJlbWFrZS5vdy5nZXRjcHBmbGFncyhjZmcpCnJldHVybiB7fQplbmQKZnVuY3Rpb24gcHJlbWFrZS5vdy5nZXRjZmxhZ3MoY2ZnKQpsb2NhbCByZXN1bHQgPSB0YWJsZS50cmFuc2xhdGUoY2ZnLmZsYWdzLCBjZmxhZ3MpCmlmIChjZmcuZmxhZ3MuU3ltYm9scykgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLWh3IikgICAtLSBXYXRjb20gZGVidWcgZm9ybWF0IGZvciBXYXRjb20gZGVidWdnZXIKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHByZW1ha2Uub3cuZ2V0Y3h4ZmxhZ3MoY2ZnKQpsb2NhbCByZXN1bHQgPSB0YWJsZS50cmFuc2xhdGUoY2ZnLmZsYWdzLCBjeHhmbGFncykKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gcHJlbWFrZS5vdy5nZXRsZGZsYWdzKGNmZykKbG9jYWwgcmVzdWx0ID0geyB9CmlmIChjZmcuZmxhZ3MuU3ltYm9scykgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAib3Agc3ltZiIpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLm93LmdldGxpbmtmbGFncyhjZmcpCmxvY2FsIHJlc3VsdCA9IHsgfQpyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLm93LmdldGRlZmluZXMoZGVmaW5lcykKbG9jYWwgcmVzdWx0ID0geyB9CmZvciBfLGRlZiBpbiBpcGFpcnMoZGVmaW5lcykgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy1EJyAuLiBkZWYpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLm93LmdldGluY2x1ZGVkaXJzKGluY2x1ZGVkaXJzKQpsb2NhbCByZXN1bHQgPSB7IH0KZm9yIF8sZGlyIGluIGlwYWlycyhpbmNsdWRlZGlycykgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy1JICInIC4uIGRpciAuLiAnIicpCmVuZApyZXR1cm4gcmVzdWx0CmVuZAoAcHJlbWFrZS5zbmMgPSB7IH0KcHJlbWFrZS5zbmMuY2MgICAgID0gInNuYyIKcHJlbWFrZS5zbmMuY3h4ICAgID0gImcrKyIKcHJlbWFrZS5zbmMuYXIgICAgID0gImFyIgpsb2NhbCBjZmxhZ3MgPQp7CkV4dHJhV2FybmluZ3MgID0gIi1YZGlhZz0yIiwKRmF0YWxXYXJuaW5ncyAgPSAiLVhxdWl0PTIiLAp9CmxvY2FsIGN4eGZsYWdzID0KewpOb0V4Y2VwdGlvbnMgICA9ICIiLCAtLSBObyBleGNlcHRpb25zIGlzIHRoZSBkZWZhdWx0IGluIHRoZSBTTkMgY29tcGlsZXIuCk5vUlRUSSAgICAgICAgID0gIi1YYy09cnR0aSIsCn0KcHJlbWFrZS5zbmMucGxhdGZvcm1zID0gCnsKUFMzID0gewpjYyAgICAgICAgID0gInBwdS1sdjItZysrIiwKY3h4ICAgICAgICA9ICJwcHUtbHYyLWcrKyIsCmFyICAgICAgICAgPSAicHB1LWx2Mi1hciIsCmNwcGZsYWdzICAgPSAiLU1NRCAtTVAiLAp9Cn0KbG9jYWwgcGxhdGZvcm1zID0gcHJlbWFrZS5zbmMucGxhdGZvcm1zCmZ1bmN0aW9uIHByZW1ha2Uuc25jLmdldGNwcGZsYWdzKGNmZykKbG9jYWwgcmVzdWx0ID0geyB9CnRhYmxlLmluc2VydChyZXN1bHQsIHBsYXRmb3Jtc1tjZmcucGxhdGZvcm1dLmNwcGZsYWdzKQpyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLnNuYy5nZXRjZmxhZ3MoY2ZnKQpsb2NhbCByZXN1bHQgPSB0YWJsZS50cmFuc2xhdGUoY2ZnLmZsYWdzLCBjZmxhZ3MpCnRhYmxlLmluc2VydChyZXN1bHQsIHBsYXRmb3Jtc1tjZmcucGxhdGZvcm1dLmZsYWdzKQppZiBjZmcua2luZCA9PSAiU2hhcmVkTGliIiB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICItZlBJQyIpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLnNuYy5nZXRjeHhmbGFncyhjZmcpCmxvY2FsIHJlc3VsdCA9IHRhYmxlLnRyYW5zbGF0ZShjZmcuZmxhZ3MsIGN4eGZsYWdzKQpyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLnNuYy5nZXRsZGZsYWdzKGNmZykKbG9jYWwgcmVzdWx0ID0geyB9CmlmIG5vdCBjZmcuZmxhZ3MuU3ltYm9scyB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICItcyIpCmVuZAppZiBjZmcua2luZCA9PSAiU2hhcmVkTGliIiB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICItc2hhcmVkIikKaWYgbm90IGNmZy5mbGFncy5Ob0ltcG9ydExpYiB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICctV2wsLS1vdXQtaW1wbGliPSInIC4uIGNmZy5saW5rdGFyZ2V0LmZ1bGxwYXRoIC4uICciJykKZW5kCmVuZApsb2NhbCBwbGF0Zm9ybSA9IHBsYXRmb3Jtc1tjZmcucGxhdGZvcm1dCnRhYmxlLmluc2VydChyZXN1bHQsIHBsYXRmb3JtLmZsYWdzKQp0YWJsZS5pbnNlcnQocmVzdWx0LCBwbGF0Zm9ybS5sZGZsYWdzKQpyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLnNuYy5nZXRsaWJkaXJmbGFncyhjZmcpCmxvY2FsIHJlc3VsdCA9IHsgfQpmb3IgXywgdmFsdWUgaW4gaXBhaXJzKHByZW1ha2UuZ2V0bGlua3MoY2ZnLCAiYWxsIiwgImRpcmVjdG9yeSIpKSBkbwp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLUwnIC4uIF9NQUtFLmVzYyh2YWx1ZSkpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBwcmVtYWtlLnNuYy5nZXRsaW5rZmxhZ3MoY2ZnKQpsb2NhbCByZXN1bHQgPSB7fQpmb3IgXywgdmFsdWUgaW4gaXBhaXJzKHByZW1ha2UuZ2V0bGlua3MoY2ZnLCAic3lzdGVtIiwgIm5hbWUiKSkgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy1sJyAuLiBfTUFLRS5lc2ModmFsdWUpKQplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gcHJlbWFrZS5zbmMuZ2V0ZGVmaW5lcyhkZWZpbmVzKQpsb2NhbCByZXN1bHQgPSB7IH0KZm9yIF8sZGVmIGluIGlwYWlycyhkZWZpbmVzKSBkbwp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLUQnIC4uIGRlZikKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHByZW1ha2Uuc25jLmdldGluY2x1ZGVkaXJzKGluY2x1ZGVkaXJzKQpsb2NhbCByZXN1bHQgPSB7IH0KZm9yIF8sZGlyIGluIGlwYWlycyhpbmNsdWRlZGlycykgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi1JIiAuLiBfTUFLRS5lc2MoZGlyKSkKZW5kCnJldHVybiByZXN1bHQKZW5kCgBmdW5jdGlvbiBwcmVtYWtlLmNoZWNrcHJvamVjdHMoKQpsb2NhbCBhY3Rpb24gPSBwcmVtYWtlLmFjdGlvbi5jdXJyZW50KCkKZm9yIHNsbiBpbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2goKSBkbwppZiAoI3Nsbi5wcm9qZWN0cyA9PSAwKSB0aGVuCnJldHVybiBuaWwsICJzb2x1dGlvbiAnIiAuLiBzbG4ubmFtZSAuLiAiJyBuZWVkcyBhdCBsZWFzdCBvbmUgcHJvamVjdCIKZW5kCmlmICgjc2xuLmNvbmZpZ3VyYXRpb25zID09IDApIHRoZW4KcmV0dXJuIG5pbCwgInNvbHV0aW9uICciIC4uIHNsbi5uYW1lIC4uICInIG5lZWRzIGNvbmZpZ3VyYXRpb25zIgplbmQKZm9yIHByaiBpbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2hwcm9qZWN0KHNsbikgZG8KaWYgKG5vdCBwcmoubGFuZ3VhZ2UpIHRoZW4KcmV0dXJuIG5pbCwgInByb2plY3QgJyIgLi5wcmoubmFtZSAuLiAiJyBuZWVkcyBhIGxhbmd1YWdlIgplbmQKaWYgKGFjdGlvbi52YWxpZF9sYW5ndWFnZXMpIHRoZW4KaWYgKG5vdCB0YWJsZS5jb250YWlucyhhY3Rpb24udmFsaWRfbGFuZ3VhZ2VzLCBwcmoubGFuZ3VhZ2UpKSB0aGVuCnJldHVybiBuaWwsICJ0aGUgIiAuLiBhY3Rpb24uc2hvcnRuYW1lIC4uICIgYWN0aW9uIGRvZXMgbm90IHN1cHBvcnQgIiAuLiBwcmoubGFuZ3VhZ2UgLi4gIiBwcm9qZWN0cyIKZW5kCmVuZApmb3IgY2ZnIGluIHByZW1ha2UuZWFjaGNvbmZpZyhwcmopIGRvCmlmIChub3QgY2ZnLmtpbmQpIHRoZW4KcmV0dXJuIG5pbCwgInByb2plY3QgJyIgLi5wcmoubmFtZSAuLiAiJyBuZWVkcyBhIGtpbmQgaW4gY29uZmlndXJhdGlvbiAnIiAuLiBjZmcubmFtZSAuLiAiJyIKZW5kCmlmIChhY3Rpb24udmFsaWRfa2luZHMpIHRoZW4KaWYgKG5vdCB0YWJsZS5jb250YWlucyhhY3Rpb24udmFsaWRfa2luZHMsIGNmZy5raW5kKSkgdGhlbgpyZXR1cm4gbmlsLCAidGhlICIgLi4gYWN0aW9uLnNob3J0bmFtZSAuLiAiIGFjdGlvbiBkb2VzIG5vdCBzdXBwb3J0ICIgLi4gY2ZnLmtpbmQgLi4gIiBwcm9qZWN0cyIKZW5kCmVuZAplbmQKaWYgYWN0aW9uLm9uY2hlY2twcm9qZWN0IHRoZW4KYWN0aW9uLm9uY2hlY2twcm9qZWN0KHByaikKZW5kCmVuZAplbmQKcmV0dXJuIHRydWUKZW5kCmZ1bmN0aW9uIHByZW1ha2UuY2hlY2t0b29scygpCmxvY2FsIGFjdGlvbiA9IHByZW1ha2UuYWN0aW9uLmN1cnJlbnQoKQppZiAobm90IGFjdGlvbi52YWxpZF90b29scykgdGhlbiAKcmV0dXJuIHRydWUgCmVuZApmb3IgdG9vbCwgdmFsdWVzIGluIHBhaXJzKGFjdGlvbi52YWxpZF90b29scykgZG8KaWYgKF9PUFRJT05TW3Rvb2xdKSB0aGVuCmlmIChub3QgdGFibGUuY29udGFpbnModmFsdWVzLCBfT1BUSU9OU1t0b29sXSkpIHRoZW4KcmV0dXJuIG5pbCwgInRoZSAiIC4uIGFjdGlvbi5zaG9ydG5hbWUgLi4gIiBhY3Rpb24gZG9lcyBub3Qgc3VwcG9ydCAvIiAuLiB0b29sIC4uICI9IiAuLiBfT1BUSU9OU1t0b29sXSAuLiAiICh5ZXQpIgplbmQKZWxzZQpfT1BUSU9OU1t0b29sXSA9IHZhbHVlc1sxXQplbmQKZW5kCnJldHVybiB0cnVlCmVuZAoAZnVuY3Rpb24gcHJlbWFrZS5zaG93aGVscCgpCnByaW50ZigiUHJlbWFrZSAlcywgYSBidWlsZCBzY3JpcHQgZ2VuZXJhdG9yIiwgX1BSRU1BS0VfVkVSU0lPTikKcHJpbnRmKF9QUkVNQUtFX0NPUFlSSUdIVCkKcHJpbnRmKCIlcyAlcyIsIF9WRVJTSU9OLCBfQ09QWVJJR0hUKQpwcmludGYoIiIpCnByaW50ZigiVXNhZ2U6IHByZW1ha2U0IFtvcHRpb25zXSBhY3Rpb24gW2FyZ3VtZW50c10iKQpwcmludGYoIiIpCnByaW50ZigiT1BUSU9OUyIpCnByaW50ZigiIikKZm9yIG9wdGlvbiBpbiBwcmVtYWtlLm9wdGlvbi5lYWNoKCkgZG8KbG9jYWwgdHJpZ2dlciA9IG9wdGlvbi50cmlnZ2VyCmxvY2FsIGRlc2NyaXB0aW9uID0gb3B0aW9uLmRlc2NyaXB0aW9uCmlmIChvcHRpb24udmFsdWUpIHRoZW4gdHJpZ2dlciA9IHRyaWdnZXIgLi4gIj0iIC4uIG9wdGlvbi52YWx1ZSBlbmQKaWYgKG9wdGlvbi5hbGxvd2VkKSB0aGVuIGRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb24gLi4gIjsgb25lIG9mOiIgZW5kCnByaW50ZigiIC0tJS0xNXMgJXMiLCB0cmlnZ2VyLCBkZXNjcmlwdGlvbikgCmlmIChvcHRpb24uYWxsb3dlZCkgdGhlbgpmb3IgXywgdmFsdWUgaW4gaXBhaXJzKG9wdGlvbi5hbGxvd2VkKSBkbwpwcmludGYoIiAgICAgJS0xNHMgJXMiLCB2YWx1ZVsxXSwgdmFsdWVbMl0pCmVuZAplbmQKcHJpbnRmKCIiKQplbmQKcHJpbnRmKCJBQ1RJT05TIikKcHJpbnRmKCIiKQpmb3IgYWN0aW9uIGluIHByZW1ha2UuYWN0aW9uLmVhY2goKSBkbwpwcmludGYoIiAlLTE3cyAlcyIsIGFjdGlvbi50cmlnZ2VyLCBhY3Rpb24uZGVzY3JpcHRpb24pCmVuZApwcmludGYoIiIpCnByaW50ZigiRm9yIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24sIHNlZSBodHRwOi8vaW5kdXN0cmlvdXNvbmUuY29tL3ByZW1ha2UiKQplbmQKAGZ1bmN0aW9uIHByZW1ha2UuZ2VuZXJhdGUob2JqLCBmaWxlbmFtZSwgY2FsbGJhY2spCmZpbGVuYW1lID0gcHJlbWFrZS5wcm9qZWN0LmdldGZpbGVuYW1lKG9iaiwgZmlsZW5hbWUpCnByaW50ZigiR2VuZXJhdGluZyAlcy4uLiIsIGZpbGVuYW1lKQpsb2NhbCBmLCBlcnIgPSBpby5vcGVuKGZpbGVuYW1lLCAid2IiKQppZiAobm90IGYpIHRoZW4KZXJyb3IoZXJyLCAwKQplbmQKaW8ub3V0cHV0KGYpCmNhbGxiYWNrKG9iaikKZjpjbG9zZSgpCmVuZAoAcHJlbWFrZS5jb2RlYmxvY2tzID0geyB9Cm5ld2FjdGlvbiB7CnRyaWdnZXIgICAgICAgICA9ICJjb2RlYmxvY2tzIiwKc2hvcnRuYW1lICAgICAgID0gIkNvZGU6OkJsb2NrcyIsCmRlc2NyaXB0aW9uICAgICA9ICJHZW5lcmF0ZSBDb2RlOjpCbG9ja3MgcHJvamVjdCBmaWxlcyIsCnZhbGlkX2tpbmRzICAgICA9IHsgIkNvbnNvbGVBcHAiLCAiV2luZG93ZWRBcHAiLCAiU3RhdGljTGliIiwgIlNoYXJlZExpYiIgfSwKdmFsaWRfbGFuZ3VhZ2VzID0geyAiQyIsICJDKysiIH0sCnZhbGlkX3Rvb2xzICAgICA9IHsKY2MgICA9IHsgImdjYyIsICJvdyIgfSwKfSwKb25zb2x1dGlvbiA9IGZ1bmN0aW9uKHNsbikKcHJlbWFrZS5nZW5lcmF0ZShzbG4sICIlJS53b3Jrc3BhY2UiLCBwcmVtYWtlLmNvZGVibG9ja3Mud29ya3NwYWNlKQplbmQsCm9ucHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS5jYnAiLCBwcmVtYWtlLmNvZGVibG9ja3MuY2JwKQplbmQsCm9uY2xlYW5zb2x1dGlvbiA9IGZ1bmN0aW9uKHNsbikKcHJlbWFrZS5jbGVhbi5maWxlKHNsbiwgIiUlLndvcmtzcGFjZSIpCmVuZCwKb25jbGVhbnByb2plY3QgPSBmdW5jdGlvbihwcmopCnByZW1ha2UuY2xlYW4uZmlsZShwcmosICIlJS5jYnAiKQpwcmVtYWtlLmNsZWFuLmZpbGUocHJqLCAiJSUuZGVwZW5kIikKcHJlbWFrZS5jbGVhbi5maWxlKHByaiwgIiUlLmxheW91dCIpCmVuZAp9CgBmdW5jdGlvbiBwcmVtYWtlLmNvZGVibG9ja3Mud29ya3NwYWNlKHNsbikKX3AoJzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJ5ZXMiID8+JykKX3AoJzxDb2RlQmxvY2tzX3dvcmtzcGFjZV9maWxlPicpCl9wKDEsJzxXb3Jrc3BhY2UgdGl0bGU9IiVzIj4nLCBzbG4ubmFtZSkKZm9yIHByaiBpbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2hwcm9qZWN0KHNsbikgZG8KbG9jYWwgZm5hbWUgPSBwYXRoLmpvaW4ocGF0aC5nZXRyZWxhdGl2ZShzbG4ubG9jYXRpb24sIHByai5sb2NhdGlvbiksIHByai5uYW1lKQpsb2NhbCBhY3RpdmUgPSBpaWYocHJqLnByb2plY3QgPT0gc2xuLnByb2plY3RzWzFdLCAnIGFjdGl2ZT0iMSInLCAnJykKX3AoMiwnPFByb2plY3QgZmlsZW5hbWU9IiVzLmNicCIlcz4nLCBmbmFtZSwgYWN0aXZlKQpmb3IgXyxkZXAgaW4gaXBhaXJzKHByZW1ha2UuZ2V0ZGVwZW5kZW5jaWVzKHByaikpIGRvCl9wKDMsJzxEZXBlbmRzIGZpbGVuYW1lPSIlcy5jYnAiIC8+JywgcGF0aC5qb2luKHBhdGguZ2V0cmVsYXRpdmUoc2xuLmxvY2F0aW9uLCBkZXAubG9jYXRpb24pLCBkZXAubmFtZSkpCmVuZApfcCgyLCc8L1Byb2plY3Q+JykKZW5kCl9wKDEsJzwvV29ya3NwYWNlPicpCl9wKCc8L0NvZGVCbG9ja3Nfd29ya3NwYWNlX2ZpbGU+JykKZW5kCgBsb2NhbCBjb2RlYmxvY2tzID0gcHJlbWFrZS5jb2RlYmxvY2tzCmZ1bmN0aW9uIGNvZGVibG9ja3MuZmlsZXMocHJqKQpsb2NhbCBwY2hoZWFkZXIKaWYgKHByai5wY2hoZWFkZXIpIHRoZW4KcGNoaGVhZGVyID0gcGF0aC5nZXRyZWxhdGl2ZShwcmoubG9jYXRpb24sIHByai5wY2hoZWFkZXIpCmVuZApmb3IgZmNmZyBpbiBwcmVtYWtlLnByb2plY3QuZWFjaGZpbGUocHJqKSBkbwpfcCgyLCc8VW5pdCBmaWxlbmFtZT0iJXMiPicsIHByZW1ha2UuZXNjKGZjZmcubmFtZSkpCmlmIGZjZmcubmFtZSB+PSBmY2ZnLnZwYXRoIHRoZW4KX3AoMywnPE9wdGlvbiB2aXJ0dWFsRm9sZGVyPSIlcyIgLz4nLCBwYXRoLmdldGRpcmVjdG9yeShmY2ZnLnZwYXRoKSkKZW5kCmlmIHBhdGguaXNyZXNvdXJjZWZpbGUoZmNmZy5uYW1lKSB0aGVuCl9wKDMsJzxPcHRpb24gY29tcGlsZXJWYXI9IldJTkRSRVMiIC8+JykKZWxzZWlmIHBhdGguaXNjZmlsZShmY2ZnLm5hbWUpIGFuZCBwcmoubGFuZ3VhZ2UgPT0gIkMrKyIgdGhlbgpfcCgzLCc8T3B0aW9uIGNvbXBpbGVyVmFyPSJDQyIgLz4nKQplbmQKaWYgbm90IHByai5mbGFncy5Ob1BDSCBhbmQgZmNmZy5uYW1lID09IHBjaGhlYWRlciB0aGVuCl9wKDMsJzxPcHRpb24gY29tcGlsZXJWYXI9IiVzIiAvPicsIGlpZihwcmoubGFuZ3VhZ2UgPT0gIkMiLCAiQ0MiLCAiQ1BQIikpCl9wKDMsJzxPcHRpb24gY29tcGlsZT0iMSIgLz4nKQpfcCgzLCc8T3B0aW9uIHdlaWdodD0iMCIgLz4nKQpfcCgzLCc8QWRkIG9wdGlvbj0iLXggYysrLWhlYWRlciIgLz4nKQplbmQKX3AoMiwnPC9Vbml0PicpCmVuZAplbmQKZnVuY3Rpb24gcHJlbWFrZS5jb2RlYmxvY2tzLmRlYnVnZW52cyhjZmcpCmlmIHByZW1ha2UuZ2V0dG9vbChjZmcpID09IHByZW1ha2UuZ2NjIHRoZW4KX3AoMywnPGRlYnVnZ2VyPicpCl9wKDQsJzxyZW1vdGVfZGVidWdnaW5nIHRhcmdldD0iJXMiPicsIHByZW1ha2UuZXNjKGNmZy5sb25nbmFtZSkpCmxvY2FsIGFyZ3MgPSAnJwpsb2NhbCBzeiA9ICNjZmcuZGVidWdlbnZzCmZvciBpZHgsIHYgaW4gaXBhaXJzKGNmZy5kZWJ1Z2VudnMpIGRvCmFyZ3MgPSBhcmdzIC4uICdzZXQgZW52ICcgLi4gdiAKaWYgc3ogfj0gaWR4IHRoZW4gYXJncyA9IGFyZ3MgLi4gJyYjeDBBOycgZW5kCmVuZApfcCg1LCc8b3B0aW9ucyBhZGRpdGlvbmFsX2NtZHNfYmVmb3JlPSIlcyIgLz4nLGFyZ3MpCl9wKDQsJzwvcmVtb3RlX2RlYnVnZ2luZz4nKQpfcCgzLCc8L2RlYnVnZ2VyPicpCmVsc2UKIGVycm9yKCdTb3JyeSBhdCB0aGlzIG1vbWVudCB0aGVyZSBpcyBubyBzdXBwb3J0IGZvciBkZWJ1ZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgd2l0aCB0aGlzIGRlYnVnZ2VyIGFuZCBjb2RlYmxvY2tzJykKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmNvZGVibG9ja3MuY2JwKHByaikKbG9jYWwgY2MgPSBwcmVtYWtlLmdldHRvb2wocHJqKQpfcCgnPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyIgPz4nKQpfcCgnPENvZGVCbG9ja3NfcHJvamVjdF9maWxlPicpCl9wKDEsJzxGaWxlVmVyc2lvbiBtYWpvcj0iMSIgbWlub3I9IjYiIC8+JykKX3AoMSwnPFByb2plY3Q+JykKX3AoMiwnPE9wdGlvbiB0aXRsZT0iJXMiIC8+JywgcHJlbWFrZS5lc2MocHJqLm5hbWUpKQpfcCgyLCc8T3B0aW9uIHBjaF9tb2RlPSIyIiAvPicpCl9wKDIsJzxPcHRpb24gY29tcGlsZXI9IiVzIiAvPicsIF9PUFRJT05TLmNjKQpsb2NhbCBwbGF0Zm9ybXMgPSBwcmVtYWtlLmZpbHRlcnBsYXRmb3Jtcyhwcmouc29sdXRpb24sIGNjLnBsYXRmb3JtcywgIk5hdGl2ZSIpCmZvciBpID0gI3BsYXRmb3JtcywgMSwgLTEgZG8KaWYgcHJlbWFrZS5wbGF0Zm9ybXNbcGxhdGZvcm1zW2ldXS5pc2Nyb3NzY29tcGlsZXIgdGhlbgp0YWJsZS5yZW1vdmUocGxhdGZvcm1zLCBpKQplbmQKZW5kIApfcCgyLCc8QnVpbGQ+JykKZm9yIF8sIHBsYXRmb3JtIGluIGlwYWlycyhwbGF0Zm9ybXMpIGRvCmZvciBjZmcgaW4gcHJlbWFrZS5lYWNoY29uZmlnKHByaiwgcGxhdGZvcm0pIGRvCl9wKDMsJzxUYXJnZXQgdGl0bGU9IiVzIj4nLCBwcmVtYWtlLmVzYyhjZmcubG9uZ25hbWUpKQpfcCg0LCc8T3B0aW9uIG91dHB1dD0iJXMiIHByZWZpeF9hdXRvPSIwIiBleHRlbnNpb25fYXV0bz0iMCIgLz4nLCBwcmVtYWtlLmVzYyhjZmcuYnVpbGR0YXJnZXQuZnVsbHBhdGgpKQppZiBjZmcuZGVidWdkaXIgdGhlbgpfcCg0LCc8T3B0aW9uIHdvcmtpbmdfZGlyPSIlcyIgLz4nLCBwcmVtYWtlLmVzYyhjZmcuZGVidWdkaXIpKQplbmQKX3AoNCwnPE9wdGlvbiBvYmplY3Rfb3V0cHV0PSIlcyIgLz4nLCBwcmVtYWtlLmVzYyhjZmcub2JqZWN0c2RpcikpCmxvY2FsIHR5cGVzID0geyBXaW5kb3dlZEFwcCA9IDAsIENvbnNvbGVBcHAgPSAxLCBTdGF0aWNMaWIgPSAyLCBTaGFyZWRMaWIgPSAzIH0KX3AoNCwnPE9wdGlvbiB0eXBlPSIlZCIgLz4nLCB0eXBlc1tjZmcua2luZF0pCl9wKDQsJzxPcHRpb24gY29tcGlsZXI9IiVzIiAvPicsIF9PUFRJT05TLmNjKQppZiAoY2ZnLmtpbmQgPT0gIlNoYXJlZExpYiIpIHRoZW4KX3AoNCwnPE9wdGlvbiBjcmVhdGVEZWZGaWxlPSIwIiAvPicpCl9wKDQsJzxPcHRpb24gY3JlYXRlU3RhdGljTGliPSIlcyIgLz4nLCBpaWYoY2ZnLmZsYWdzLk5vSW1wb3J0TGliLCAwLCAxKSkKZW5kCl9wKDQsJzxDb21waWxlcj4nKQpmb3IgXyxmbGFnIGluIGlwYWlycyh0YWJsZS5qb2luKGNjLmdldGNmbGFncyhjZmcpLCBjYy5nZXRjeHhmbGFncyhjZmcpLCBjYy5nZXRkZWZpbmVzKGNmZy5kZWZpbmVzKSwgY2ZnLmJ1aWxkb3B0aW9ucykpIGRvCl9wKDUsJzxBZGQgb3B0aW9uPSIlcyIgLz4nLCBwcmVtYWtlLmVzYyhmbGFnKSkKZW5kCmlmIG5vdCBjZmcuZmxhZ3MuTm9QQ0ggYW5kIGNmZy5wY2hoZWFkZXIgdGhlbgpfcCg1LCc8QWRkIG9wdGlvbj0iLVdpbnZhbGlkLXBjaCIgLz4nKQpfcCg1LCc8QWRkIG9wdGlvbj0iLWluY2x1ZGUgJnF1b3Q7JXMmcXVvdDsiIC8+JywgcHJlbWFrZS5lc2MoY2ZnLnBjaGhlYWRlcikpCmVuZApmb3IgXyx2IGluIGlwYWlycyhjZmcuaW5jbHVkZWRpcnMpIGRvCl9wKDUsJzxBZGQgZGlyZWN0b3J5PSIlcyIgLz4nLCBwcmVtYWtlLmVzYyh2KSkKZW5kCl9wKDQsJzwvQ29tcGlsZXI+JykKX3AoNCwnPExpbmtlcj4nKQpmb3IgXyxmbGFnIGluIGlwYWlycyh0YWJsZS5qb2luKGNjLmdldGxkZmxhZ3MoY2ZnKSwgY2ZnLmxpbmtvcHRpb25zKSkgZG8KX3AoNSwnPEFkZCBvcHRpb249IiVzIiAvPicsIHByZW1ha2UuZXNjKGZsYWcpKQplbmQKZm9yIF8sdiBpbiBpcGFpcnMocHJlbWFrZS5nZXRsaW5rcyhjZmcsICJhbGwiLCAiZGlyZWN0b3J5IikpIGRvCl9wKDUsJzxBZGQgZGlyZWN0b3J5PSIlcyIgLz4nLCBwcmVtYWtlLmVzYyh2KSkKZW5kCmZvciBfLHYgaW4gaXBhaXJzKHByZW1ha2UuZ2V0bGlua3MoY2ZnLCAiYWxsIiwgImJhc2VuYW1lIikpIGRvCl9wKDUsJzxBZGQgbGlicmFyeT0iJXMiIC8+JywgcHJlbWFrZS5lc2ModikpCmVuZApfcCg0LCc8L0xpbmtlcj4nKQppZiBwcmVtYWtlLmZpbmRmaWxlKGNmZywgIi5yYyIpIHRoZW4KX3AoNCwnPFJlc291cmNlQ29tcGlsZXI+JykKZm9yIF8sdiBpbiBpcGFpcnMoY2ZnLmluY2x1ZGVkaXJzKSBkbwpfcCg1LCc8QWRkIGRpcmVjdG9yeT0iJXMiIC8+JywgcHJlbWFrZS5lc2ModikpCmVuZApmb3IgXyx2IGluIGlwYWlycyhjZmcucmVzaW5jbHVkZWRpcnMpIGRvCl9wKDUsJzxBZGQgZGlyZWN0b3J5PSIlcyIgLz4nLCBwcmVtYWtlLmVzYyh2KSkKZW5kCl9wKDQsJzwvUmVzb3VyY2VDb21waWxlcj4nKQplbmQKaWYgI2NmZy5wcmVidWlsZGNvbW1hbmRzID4gMCBvciAjY2ZnLnBvc3RidWlsZGNvbW1hbmRzID4gMCB0aGVuCl9wKDQsJzxFeHRyYUNvbW1hbmRzPicpCmZvciBfLHYgaW4gaXBhaXJzKGNmZy5wcmVidWlsZGNvbW1hbmRzKSBkbwpfcCg1LCc8QWRkIGJlZm9yZT0iJXMiIC8+JywgcHJlbWFrZS5lc2ModikpCmVuZApmb3IgXyx2IGluIGlwYWlycyhjZmcucG9zdGJ1aWxkY29tbWFuZHMpIGRvCl9wKDUsJzxBZGQgYWZ0ZXI9IiVzIiAvPicsIHByZW1ha2UuZXNjKHYpKQplbmQKX3AoNCwnPC9FeHRyYUNvbW1hbmRzPicpCmVuZApfcCgzLCc8L1RhcmdldD4nKQplbmQKZW5kCl9wKDIsJzwvQnVpbGQ+JykKY29kZWJsb2Nrcy5maWxlcyhwcmopCl9wKDIsJzxFeHRlbnNpb25zPicpCiAgICAgICAgZm9yIF8sIHBsYXRmb3JtIGluIGlwYWlycyhwbGF0Zm9ybXMpIGRvCmZvciBjZmcgaW4gcHJlbWFrZS5lYWNoY29uZmlnKHByaiwgcGxhdGZvcm0pIGRvCmlmIGNmZy5kZWJ1Z2VudnMgYW5kICNjZmcuZGVidWdlbnZzID4gMCB0aGVuCnByZW1ha2UuY29kZWJsb2Nrcy5kZWJ1Z2VudnMoY2ZnKQplbmQKZW5kCmVuZApfcCgyLCc8L0V4dGVuc2lvbnM+JykKX3AoMSwnPC9Qcm9qZWN0PicpCl9wKCc8L0NvZGVCbG9ja3NfcHJvamVjdF9maWxlPicpCl9wKCcnKQplbmQKAHByZW1ha2UuY29kZWxpdGUgPSB7IH0KbmV3YWN0aW9uIHsKdHJpZ2dlciAgICAgICAgID0gImNvZGVsaXRlIiwKc2hvcnRuYW1lICAgICAgID0gIkNvZGVMaXRlIiwKZGVzY3JpcHRpb24gICAgID0gIkdlbmVyYXRlIENvZGVMaXRlIHByb2plY3QgZmlsZXMiLAp2YWxpZF9raW5kcyAgICAgPSB7ICJDb25zb2xlQXBwIiwgIldpbmRvd2VkQXBwIiwgIlN0YXRpY0xpYiIsICJTaGFyZWRMaWIiIH0sCnZhbGlkX2xhbmd1YWdlcyA9IHsgIkMiLCAiQysrIiB9LAp2YWxpZF90b29scyAgICAgPSB7CmNjICAgPSB7ICJnY2MiIH0sCn0sCm9uc29sdXRpb24gPSBmdW5jdGlvbihzbG4pCnByZW1ha2UuZ2VuZXJhdGUoc2xuLCAiJSUud29ya3NwYWNlIiwgcHJlbWFrZS5jb2RlbGl0ZS53b3Jrc3BhY2UpCmVuZCwKb25wcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQpwcmVtYWtlLmdlbmVyYXRlKHByaiwgIiUlLnByb2plY3QiLCBwcmVtYWtlLmNvZGVsaXRlLnByb2plY3QpCmVuZCwKb25jbGVhbnNvbHV0aW9uID0gZnVuY3Rpb24oc2xuKQpwcmVtYWtlLmNsZWFuLmZpbGUoc2xuLCAiJSUud29ya3NwYWNlIikKcHJlbWFrZS5jbGVhbi5maWxlKHNsbiwgIiUlX3dzcC5tayIpCnByZW1ha2UuY2xlYW4uZmlsZShzbG4sICIlJS50YWdzIikKZW5kLApvbmNsZWFucHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcHJlbWFrZS5jbGVhbi5maWxlKHByaiwgIiUlLnByb2plY3QiKQpwcmVtYWtlLmNsZWFuLmZpbGUocHJqLCAiJSUubWsiKQpwcmVtYWtlLmNsZWFuLmZpbGUocHJqLCAiJSUubGlzdCIpCnByZW1ha2UuY2xlYW4uZmlsZShwcmosICIlJS5vdXQiKQplbmQKfQoAZnVuY3Rpb24gcHJlbWFrZS5jb2RlbGl0ZS53b3Jrc3BhY2Uoc2xuKQpfcCgnPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4nKQpfcCgnPENvZGVMaXRlX1dvcmtzcGFjZSBOYW1lPSIlcyIgRGF0YWJhc2U9Ii4vJXMudGFncyI+JywgcHJlbWFrZS5lc2Moc2xuLm5hbWUpLCBwcmVtYWtlLmVzYyhzbG4ubmFtZSkpCmZvciBpLHByaiBpbiBpcGFpcnMoc2xuLnByb2plY3RzKSBkbwpsb2NhbCBuYW1lID0gcHJlbWFrZS5lc2MocHJqLm5hbWUpCmxvY2FsIGZuYW1lID0gcGF0aC5qb2luKHBhdGguZ2V0cmVsYXRpdmUoc2xuLmxvY2F0aW9uLCBwcmoubG9jYXRpb24pLCBwcmoubmFtZSkKbG9jYWwgYWN0aXZlID0gaWlmKGk9PTEsICJZZXMiLCAiTm8iKQpfcCgnICA8UHJvamVjdCBOYW1lPSIlcyIgUGF0aD0iJXMucHJvamVjdCIgQWN0aXZlPSIlcyIgLz4nLCBuYW1lLCBmbmFtZSwgYWN0aXZlKQplbmQKbG9jYWwgcGxhdGZvcm1zID0gcHJlbWFrZS5maWx0ZXJwbGF0Zm9ybXMoc2xuLCBwcmVtYWtlW19PUFRJT05TLmNjXS5wbGF0Zm9ybXMsICJOYXRpdmUiKQpmb3IgaSA9ICNwbGF0Zm9ybXMsIDEsIC0xIGRvCmlmIHByZW1ha2UucGxhdGZvcm1zW3BsYXRmb3Jtc1tpXV0uaXNjcm9zc2NvbXBpbGVyIHRoZW4KdGFibGUucmVtb3ZlKHBsYXRmb3JtcywgaSkKZW5kCmVuZCAKX3AoJyAgPEJ1aWxkTWF0cml4PicpCmZvciBfLCBwbGF0Zm9ybSBpbiBpcGFpcnMocGxhdGZvcm1zKSBkbwpmb3IgXywgY2ZnbmFtZSBpbiBpcGFpcnMoc2xuLmNvbmZpZ3VyYXRpb25zKSBkbwpsb2NhbCBuYW1lID0gcHJlbWFrZS5nZXRjb25maWduYW1lKGNmZ25hbWUsIHBsYXRmb3JtKQpfcCgnICAgIDxXb3Jrc3BhY2VDb25maWd1cmF0aW9uIE5hbWU9IiVzIiBTZWxlY3RlZD0ieWVzIj4nLCBuYW1lKQpmb3IgXyxwcmogaW4gaXBhaXJzKHNsbi5wcm9qZWN0cykgZG8KX3AoJyAgICAgIDxQcm9qZWN0IE5hbWU9IiVzIiBDb25maWdOYW1lPSIlcyIvPicsIHByai5uYW1lLCBuYW1lKQplbmQKX3AoJyAgICA8L1dvcmtzcGFjZUNvbmZpZ3VyYXRpb24+JykKZW5kCmVuZApfcCgnICA8L0J1aWxkTWF0cml4PicpCl9wKCc8L0NvZGVMaXRlX1dvcmtzcGFjZT4nKQplbmQKAGxvY2FsIGNvZGVsaXRlID0gcHJlbWFrZS5jb2RlbGl0ZQpsb2NhbCB0cmVlID0gcHJlbWFrZS50cmVlCmZ1bmN0aW9uIGNvZGVsaXRlLmZpbGVzKHByaikKbG9jYWwgdHIgPSBwcmVtYWtlLnByb2plY3QuYnVpbGRzb3VyY2V0cmVlKHByaikKdHJlZS50cmF2ZXJzZSh0ciwgewpvbmJyYW5jaGVudGVyID0gZnVuY3Rpb24obm9kZSwgZGVwdGgpCl9wKGRlcHRoLCAnPFZpcnR1YWxEaXJlY3RvcnkgTmFtZT0iJXMiPicsIG5vZGUubmFtZSkKZW5kLApvbmJyYW5jaGV4aXQgPSBmdW5jdGlvbihub2RlLCBkZXB0aCkKX3AoZGVwdGgsICc8L1ZpcnR1YWxEaXJlY3Rvcnk+JykKZW5kLApvbmxlYWYgPSBmdW5jdGlvbihub2RlLCBkZXB0aCkKX3AoZGVwdGgsICc8RmlsZSBOYW1lPSIlcyIvPicsIG5vZGUuY2ZnLm5hbWUpCmVuZCwKfSwgZmFsc2UsIDEpCmVuZApmdW5jdGlvbiBwcmVtYWtlLmNvZGVsaXRlLnByb2plY3QocHJqKQppby5pbmRlbnQgPSAiICAiCl9wKCc8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtOCI/PicpCl9wKCc8Q29kZUxpdGVfUHJvamVjdCBOYW1lPSIlcyI+JywgcHJlbWFrZS5lc2MocHJqLm5hbWUpKQpjb2RlbGl0ZS5maWxlcyhwcmopCmxvY2FsIHR5cGVzID0geyAKQ29uc29sZUFwcCAgPSAiRXhlY3V0YWJsZSIsIApXaW5kb3dlZEFwcCA9ICJFeGVjdXRhYmxlIiwgClN0YXRpY0xpYiAgID0gIlN0YXRpYyBMaWJyYXJ5IiwKU2hhcmVkTGliICAgPSAiRHluYW1pYyBMaWJyYXJ5IiwKfQpfcCgnICA8U2V0dGluZ3MgVHlwZT0iJXMiPicsIHR5cGVzW3Byai5raW5kXSkKbG9jYWwgcGxhdGZvcm1zID0gcHJlbWFrZS5maWx0ZXJwbGF0Zm9ybXMocHJqLnNvbHV0aW9uLCBwcmVtYWtlW19PUFRJT05TLmNjXS5wbGF0Zm9ybXMsICJOYXRpdmUiKQpmb3IgaSA9ICNwbGF0Zm9ybXMsIDEsIC0xIGRvCmlmIHByZW1ha2UucGxhdGZvcm1zW3BsYXRmb3Jtc1tpXV0uaXNjcm9zc2NvbXBpbGVyIHRoZW4KdGFibGUucmVtb3ZlKHBsYXRmb3JtcywgaSkKZW5kCmVuZCAKZm9yIF8sIHBsYXRmb3JtIGluIGlwYWlycyhwbGF0Zm9ybXMpIGRvCmZvciBjZmcgaW4gcHJlbWFrZS5lYWNoY29uZmlnKHByaiwgcGxhdGZvcm0pIGRvCmxvY2FsIG5hbWUgPSBwcmVtYWtlLmVzYyhjZmcubG9uZ25hbWUpCmxvY2FsIGNvbXBpbGVyID0gaWlmKGNmZy5sYW5ndWFnZSA9PSAiQyIsICJnY2MiLCAiZysrIikKX3AoJyAgICA8Q29uZmlndXJhdGlvbiBOYW1lPSIlcyIgQ29tcGlsZXJUeXBlPSJnbnUgJXMiIERlYnVnZ2VyVHlwZT0iR05VIGdkYiBkZWJ1Z2dlciIgVHlwZT0iJXMiPicsIG5hbWUsIGNvbXBpbGVyLCB0eXBlc1tjZmcua2luZF0pCmxvY2FsIGZuYW1lICA9IHByZW1ha2UuZXNjKGNmZy5idWlsZHRhcmdldC5mdWxscGF0aCkKbG9jYWwgb2JqZGlyID0gcHJlbWFrZS5lc2MoY2ZnLm9iamVjdHNkaXIpCmxvY2FsIHJ1bmNtZCA9IGNmZy5idWlsZHRhcmdldC5uYW1lCmxvY2FsIHJ1bmRpciA9IGNmZy5kZWJ1Z2RpciBvciBjZmcuYnVpbGR0YXJnZXQuZGlyZWN0b3J5CmxvY2FsIHJ1bmFyZ3MgPSB0YWJsZS5jb25jYXQoY2ZnLmRlYnVnYXJncywgIiAiKQpsb2NhbCBwYXVzZSAgPSBpaWYoY2ZnLmtpbmQgPT0gIldpbmRvd2VkQXBwIiwgIm5vIiwgInllcyIpCl9wKCcgICAgICA8R2VuZXJhbCBPdXRwdXRGaWxlPSIlcyIgSW50ZXJtZWRpYXRlRGlyZWN0b3J5PSIlcyIgQ29tbWFuZD0iLi8lcyIgQ29tbWFuZEFyZ3VtZW50cz0iJXMiIFdvcmtpbmdEaXJlY3Rvcnk9IiVzIiBQYXVzZUV4ZWNXaGVuUHJvY1Rlcm1pbmF0ZXM9IiVzIi8+JywgZm5hbWUsIG9iamRpciwgcnVuY21kLCBydW5hcmdzLCBydW5kaXIsIHBhdXNlKQpsb2NhbCBmbGFncyA9IHByZW1ha2UuZXNjKHRhYmxlLmpvaW4ocHJlbWFrZS5nY2MuZ2V0Y2ZsYWdzKGNmZyksIHByZW1ha2UuZ2NjLmdldGN4eGZsYWdzKGNmZyksIGNmZy5idWlsZG9wdGlvbnMpKQpfcCgnICAgICAgPENvbXBpbGVyIFJlcXVpcmVkPSJ5ZXMiIE9wdGlvbnM9IiVzIj4nLCB0YWJsZS5jb25jYXQoZmxhZ3MsICI7IikpCmZvciBfLHYgaW4gaXBhaXJzKGNmZy5pbmNsdWRlZGlycykgZG8KX3AoJyAgICAgICAgPEluY2x1ZGVQYXRoIFZhbHVlPSIlcyIvPicsIHByZW1ha2UuZXNjKHYpKQplbmQKZm9yIF8sdiBpbiBpcGFpcnMoY2ZnLmRlZmluZXMpIGRvCl9wKCcgICAgICAgIDxQcmVwcm9jZXNzb3IgVmFsdWU9IiVzIi8+JywgcHJlbWFrZS5lc2ModikpCmVuZApfcCgnICAgICAgPC9Db21waWxlcj4nKQpmbGFncyA9IHByZW1ha2UuZXNjKHRhYmxlLmpvaW4ocHJlbWFrZS5nY2MuZ2V0bGRmbGFncyhjZmcpLCBjZmcubGlua29wdGlvbnMpKQpfcCgnICAgICAgPExpbmtlciBSZXF1aXJlZD0ieWVzIiBPcHRpb25zPSIlcyI+JywgdGFibGUuY29uY2F0KGZsYWdzLCAiOyIpKQpmb3IgXyx2IGluIGlwYWlycyhwcmVtYWtlLmdldGxpbmtzKGNmZywgImFsbCIsICJkaXJlY3RvcnkiKSkgZG8KX3AoJyAgICAgICAgPExpYnJhcnlQYXRoIFZhbHVlPSIlcyIgLz4nLCBwcmVtYWtlLmVzYyh2KSkKZW5kCmZvciBfLHYgaW4gaXBhaXJzKHByZW1ha2UuZ2V0bGlua3MoY2ZnLCAiYWxsIiwgImJhc2VuYW1lIikpIGRvCl9wKCcgICAgICAgIDxMaWJyYXJ5IFZhbHVlPSIlcyIgLz4nLCBwcmVtYWtlLmVzYyh2KSkKZW5kCl9wKCcgICAgICA8L0xpbmtlcj4nKQppZiBwcmVtYWtlLmZpbmRmaWxlKGNmZywgIi5yYyIpIHRoZW4KbG9jYWwgZGVmaW5lcyA9IHRhYmxlLmltcGxvZGUodGFibGUuam9pbihjZmcuZGVmaW5lcywgY2ZnLnJlc2RlZmluZXMpLCAiLUQiLCAiOyIsICIiKQpsb2NhbCBvcHRpb25zID0gdGFibGUuY29uY2F0KGNmZy5yZXNvcHRpb25zLCAiOyIpCl9wKCcgICAgICA8UmVzb3VyY2VDb21waWxlciBSZXF1aXJlZD0ieWVzIiBPcHRpb25zPSIlcyVzIj4nLCBkZWZpbmVzLCBvcHRpb25zKQpmb3IgXyx2IGluIGlwYWlycyh0YWJsZS5qb2luKGNmZy5pbmNsdWRlZGlycywgY2ZnLnJlc2luY2x1ZGVkaXJzKSkgZG8KX3AoJyAgICAgICAgPEluY2x1ZGVQYXRoIFZhbHVlPSIlcyIvPicsIHByZW1ha2UuZXNjKHYpKQplbmQKX3AoJyAgICAgIDwvUmVzb3VyY2VDb21waWxlcj4nKQplbHNlCl9wKCcgICAgICA8UmVzb3VyY2VDb21waWxlciBSZXF1aXJlZD0ibm8iIE9wdGlvbnM9IiIvPicpCmVuZAppZiAjY2ZnLnByZWJ1aWxkY29tbWFuZHMgPiAwIHRoZW4KX3AoJyAgICAgIDxQcmVCdWlsZD4nKQpmb3IgXyx2IGluIGlwYWlycyhjZmcucHJlYnVpbGRjb21tYW5kcykgZG8KX3AoJyAgICAgICAgPENvbW1hbmQgRW5hYmxlZD0ieWVzIj4lczwvQ29tbWFuZD4nLCBwcmVtYWtlLmVzYyh2KSkKZW5kCl9wKCcgICAgICA8L1ByZUJ1aWxkPicpCmVuZAppZiAjY2ZnLnBvc3RidWlsZGNvbW1hbmRzID4gMCB0aGVuCl9wKCcgICAgICA8UG9zdEJ1aWxkPicpCmZvciBfLHYgaW4gaXBhaXJzKGNmZy5wb3N0YnVpbGRjb21tYW5kcykgZG8KX3AoJyAgICAgICAgPENvbW1hbmQgRW5hYmxlZD0ieWVzIj4lczwvQ29tbWFuZD4nLCBwcmVtYWtlLmVzYyh2KSkKZW5kCl9wKCcgICAgICA8L1Bvc3RCdWlsZD4nKQplbmQKX3AoJyAgICAgIDxDdXN0b21CdWlsZCBFbmFibGVkPSJubyI+JykKX3AoJyAgICAgICAgPENsZWFuQ29tbWFuZD48L0NsZWFuQ29tbWFuZD4nKQpfcCgnICAgICAgICA8QnVpbGRDb21tYW5kPjwvQnVpbGRDb21tYW5kPicpCl9wKCcgICAgICAgIDxTaW5nbGVGaWxlQ29tbWFuZD48L1NpbmdsZUZpbGVDb21tYW5kPicpCl9wKCcgICAgICAgIDxNYWtlZmlsZUdlbmVyYXRpb25Db21tYW5kPjwvTWFrZWZpbGVHZW5lcmF0aW9uQ29tbWFuZD4nKQpfcCgnICAgICAgICA8VGhpcmRQYXJ0eVRvb2xOYW1lPk5vbmU8L1RoaXJkUGFydHlUb29sTmFtZT4nKQpfcCgnICAgICAgICA8V29ya2luZ0RpcmVjdG9yeT48L1dvcmtpbmdEaXJlY3Rvcnk+JykKX3AoJyAgICAgIDwvQ3VzdG9tQnVpbGQ+JykKX3AoJyAgICAgIDxBZGRpdGlvbmFsUnVsZXM+JykKX3AoJyAgICAgICAgPEN1c3RvbVBvc3RCdWlsZD48L0N1c3RvbVBvc3RCdWlsZD4nKQpfcCgnICAgICAgICA8Q3VzdG9tUHJlQnVpbGQ+PC9DdXN0b21QcmVCdWlsZD4nKQpfcCgnICAgICAgPC9BZGRpdGlvbmFsUnVsZXM+JykKX3AoJyAgICA8L0NvbmZpZ3VyYXRpb24+JykKZW5kCmVuZApfcCgnICA8L1NldHRpbmdzPicpCmZvciBfLCBwbGF0Zm9ybSBpbiBpcGFpcnMocGxhdGZvcm1zKSBkbwpmb3IgY2ZnIGluIHByZW1ha2UuZWFjaGNvbmZpZyhwcmosIHBsYXRmb3JtKSBkbwpfcCgnICA8RGVwZW5kZW5jaWVzIG5hbWU9IiVzIj4nLCBjZmcubG9uZ25hbWUpCmZvciBfLGRlcCBpbiBpcGFpcnMocHJlbWFrZS5nZXRkZXBlbmRlbmNpZXMocHJqKSkgZG8KX3AoJyAgICA8UHJvamVjdCBOYW1lPSIlcyIvPicsIGRlcC5uYW1lKQplbmQKX3AoJyAgPC9EZXBlbmRlbmNpZXM+JykKZW5kCmVuZApfcCgnPC9Db2RlTGl0ZV9Qcm9qZWN0PicpCmVuZAoAX01BS0UgPSB7IH0KcHJlbWFrZS5tYWtlID0geyB9CmxvY2FsIG1ha2UgPSBwcmVtYWtlLm1ha2UKZnVuY3Rpb24gX01BS0UuZXNjKHZhbHVlKQpsb2NhbCByZXN1bHQKaWYgKHR5cGUodmFsdWUpID09ICJ0YWJsZSIpIHRoZW4KcmVzdWx0ID0geyB9CmZvciBfLHYgaW4gaXBhaXJzKHZhbHVlKSBkbwp0YWJsZS5pbnNlcnQocmVzdWx0LCBfTUFLRS5lc2ModikpCmVuZApyZXR1cm4gcmVzdWx0CmVsc2UKcmVzdWx0ID0gdmFsdWU6Z3N1YigiXFwiLCAiXFxcXCIpCnJlc3VsdCA9IHJlc3VsdDpnc3ViKCIgIiwgIlxcICIpCnJlc3VsdCA9IHJlc3VsdDpnc3ViKCIlKCIsICJcXCUoIikKcmVzdWx0ID0gcmVzdWx0OmdzdWIoIiUpIiwgIlxcJSkiKQpyZXN1bHQgPSByZXN1bHQ6Z3N1YigiJFxcJSgoLi0pXFwlKSIsICIkJSglMSUpIikKcmV0dXJuIHJlc3VsdAplbmQKZW5kCmZ1bmN0aW9uIHByZW1ha2UubWFrZV9jb3B5cnVsZShzb3VyY2UsIHRhcmdldCkKX3AoJyVzOiAlcycsIHRhcmdldCwgc291cmNlKQpfcCgnXHRAZWNobyBDb3B5aW5nICQobm90ZGlyICVzKScsIHRhcmdldCkKX3AoJ2lmZXEgKHBvc2l4LCQoU0hFTExUWVBFKSknKQpfcCgnXHQkKFNJTEVOVCkgY3AgLWZSICVzICVzJywgc291cmNlLCB0YXJnZXQpCl9wKCdlbHNlJykKX3AoJ1x0JChTSUxFTlQpIGNvcHkgL1kgJChzdWJzdCAvLFxcXFwsJXMpICQoc3Vic3QgLyxcXFxcLCVzKScsIHNvdXJjZSwgdGFyZ2V0KQpfcCgnZW5kaWYnKQplbmQKZnVuY3Rpb24gcHJlbWFrZS5tYWtlX21rZGlycnVsZSh2YXIpCl9wKCdcdEBlY2hvIENyZWF0aW5nICVzJywgdmFyKQpfcCgnaWZlcSAocG9zaXgsJChTSEVMTFRZUEUpKScpCl9wKCdcdCQoU0lMRU5UKSBta2RpciAtcCAlcycsIHZhcikKX3AoJ2Vsc2UnKQpfcCgnXHQkKFNJTEVOVCkgbWtkaXIgJChzdWJzdCAvLFxcXFwsJXMpJywgdmFyKQpfcCgnZW5kaWYnKQpfcCgnJykKZW5kCmZ1bmN0aW9uIG1ha2UubGlzdCh2YWx1ZSkKaWYgI3ZhbHVlID4gMCB0aGVuCnJldHVybiAiICIgLi4gdGFibGUuY29uY2F0KHZhbHVlLCAiICIpCmVsc2UKcmV0dXJuICIiCmVuZAplbmQKZnVuY3Rpb24gX01BS0UuZ2V0bWFrZWZpbGVuYW1lKHRoaXMsIHNlYXJjaHByanMpCmxvY2FsIGNvdW50ID0gMApmb3Igc2xuIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaCgpIGRvCmlmIChzbG4ubG9jYXRpb24gPT0gdGhpcy5sb2NhdGlvbikgdGhlbiBjb3VudCA9IGNvdW50ICsgMSBlbmQKaWYgKHNlYXJjaHByanMpIHRoZW4KZm9yIF8scHJqIGluIGlwYWlycyhzbG4ucHJvamVjdHMpIGRvCmlmIChwcmoubG9jYXRpb24gPT0gdGhpcy5sb2NhdGlvbikgdGhlbiBjb3VudCA9IGNvdW50ICsgMSBlbmQKZW5kCmVuZAplbmQKaWYgKGNvdW50ID09IDEpIHRoZW4KcmV0dXJuICJNYWtlZmlsZSIKZWxzZQpyZXR1cm4gdGhpcy5uYW1lIC4uICIubWFrZSIKZW5kCmVuZApmdW5jdGlvbiBfTUFLRS5nZXRuYW1lcyh0YmwpCmxvY2FsIHJlc3VsdCA9IHRhYmxlLmV4dHJhY3QodGJsLCAibmFtZSIpCmZvciBrLHYgaW4gcGFpcnMocmVzdWx0KSBkbwpyZXN1bHRba10gPSBfTUFLRS5lc2ModikKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIG1ha2Uuc2V0dGluZ3MoY2ZnLCBjYykKaWYgI2NmZy5tYWtlc2V0dGluZ3MgPiAwIHRoZW4KZm9yIF8sIHZhbHVlIGluIGlwYWlycyhjZmcubWFrZXNldHRpbmdzKSBkbwpfcCh2YWx1ZSkKZW5kCmVuZApsb2NhbCB0b29sc2V0dGluZ3MgPSBjYy5wbGF0Zm9ybXNbY2ZnLnBsYXRmb3JtXS5jZmdzZXR0aW5ncwppZiB0b29sc2V0dGluZ3MgdGhlbgpfcCh0b29sc2V0dGluZ3MpCmVuZAplbmQKbmV3YWN0aW9uIHsKdHJpZ2dlciAgICAgICAgID0gImdtYWtlIiwKc2hvcnRuYW1lICAgICAgID0gIkdOVSBNYWtlIiwKZGVzY3JpcHRpb24gICAgID0gIkdlbmVyYXRlIEdOVSBtYWtlZmlsZXMgZm9yIFBPU0lYLCBNaW5HVywgYW5kIEN5Z3dpbiIsCnZhbGlkX2tpbmRzICAgICA9IHsgIkNvbnNvbGVBcHAiLCAiV2luZG93ZWRBcHAiLCAiU3RhdGljTGliIiwgIlNoYXJlZExpYiIgfSwKdmFsaWRfbGFuZ3VhZ2VzID0geyAiQyIsICJDKysiLCAiQyMiIH0sCnZhbGlkX3Rvb2xzICAgICA9IHsKY2MgICAgID0geyAiZ2NjIiB9LApkb3RuZXQgPSB7ICJtb25vIiwgIm1zbmV0IiwgInBuZXQiIH0sCn0sCm9uc29sdXRpb24gPSBmdW5jdGlvbihzbG4pCnByZW1ha2UuZ2VuZXJhdGUoc2xuLCBfTUFLRS5nZXRtYWtlZmlsZW5hbWUoc2xuLCBmYWxzZSksIHByZW1ha2UubWFrZV9zb2x1dGlvbikKZW5kLApvbnByb2plY3QgPSBmdW5jdGlvbihwcmopCmxvY2FsIG1ha2VmaWxlID0gX01BS0UuZ2V0bWFrZWZpbGVuYW1lKHByaiwgdHJ1ZSkKaWYgcHJlbWFrZS5pc2RvdG5ldHByb2plY3QocHJqKSB0aGVuCnByZW1ha2UuZ2VuZXJhdGUocHJqLCBtYWtlZmlsZSwgcHJlbWFrZS5tYWtlX2NzaGFycCkKZWxzZQpwcmVtYWtlLmdlbmVyYXRlKHByaiwgbWFrZWZpbGUsIHByZW1ha2UubWFrZV9jcHApCmVuZAplbmQsCm9uY2xlYW5zb2x1dGlvbiA9IGZ1bmN0aW9uKHNsbikKcHJlbWFrZS5jbGVhbi5maWxlKHNsbiwgX01BS0UuZ2V0bWFrZWZpbGVuYW1lKHNsbiwgZmFsc2UpKQplbmQsCm9uY2xlYW5wcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQpwcmVtYWtlLmNsZWFuLmZpbGUocHJqLCBfTUFLRS5nZXRtYWtlZmlsZW5hbWUocHJqLCB0cnVlKSkKZW5kCn0KAGZ1bmN0aW9uIHByZW1ha2UubWFrZV9zb2x1dGlvbihzbG4pCmxvY2FsIGNjID0gcHJlbWFrZVtfT1BUSU9OUy5jY10KbG9jYWwgcGxhdGZvcm1zID0gcHJlbWFrZS5maWx0ZXJwbGF0Zm9ybXMoc2xuLCBjYy5wbGF0Zm9ybXMsICJOYXRpdmUiKQpfcCgnIyAlcyBzb2x1dGlvbiBtYWtlZmlsZSBhdXRvZ2VuZXJhdGVkIGJ5IFByZW1ha2UnLCBwcmVtYWtlLmFjdGlvbi5jdXJyZW50KCkuc2hvcnRuYW1lKQpfcCgnIyBUeXBlICJtYWtlIGhlbHAiIGZvciB1c2FnZSBoZWxwJykKX3AoJycpCl9wKCdpZm5kZWYgY29uZmlnJykKX3AoJyAgY29uZmlnPSVzJywgX01BS0UuZXNjKHByZW1ha2UuZ2V0Y29uZmlnbmFtZShzbG4uY29uZmlndXJhdGlvbnNbMV0sIHBsYXRmb3Jtc1sxXSwgdHJ1ZSkpKQpfcCgnZW5kaWYnKQpfcCgnZXhwb3J0IGNvbmZpZycpCl9wKCcnKQpfcCgnUFJPSkVDVFMgOj0gJXMnLCB0YWJsZS5jb25jYXQoX01BS0UuZXNjKHRhYmxlLmV4dHJhY3Qoc2xuLnByb2plY3RzLCAibmFtZSIpKSwgIiAiKSkKX3AoJycpCl9wKCcuUEhPTlk6IGFsbCBjbGVhbiBoZWxwICQoUFJPSkVDVFMpJykKX3AoJycpCl9wKCdhbGw6ICQoUFJPSkVDVFMpJykKX3AoJycpCmZvciBfLCBwcmogaW4gaXBhaXJzKHNsbi5wcm9qZWN0cykgZG8KX3AoJyVzOiAlcycsIF9NQUtFLmVzYyhwcmoubmFtZSksIHRhYmxlLmNvbmNhdChfTUFLRS5lc2ModGFibGUuZXh0cmFjdChwcmVtYWtlLmdldGRlcGVuZGVuY2llcyhwcmopLCAibmFtZSIpKSwgIiAiKSkKX3AoJ1x0QGVjaG8gIj09PT0gQnVpbGRpbmcgJXMgKCQoY29uZmlnKSkgPT09PSInLCBwcmoubmFtZSkKX3AoJ1x0QCR7TUFLRX0gLS1uby1wcmludC1kaXJlY3RvcnkgLUMgJXMgLWYgJXMnLCBfTUFLRS5lc2MocGF0aC5nZXRyZWxhdGl2ZShzbG4ubG9jYXRpb24sIHByai5sb2NhdGlvbikpLCBfTUFLRS5lc2MoX01BS0UuZ2V0bWFrZWZpbGVuYW1lKHByaiwgdHJ1ZSkpKQpfcCgnJykKZW5kCl9wKCdjbGVhbjonKQpmb3IgXyAscHJqIGluIGlwYWlycyhzbG4ucHJvamVjdHMpIGRvCl9wKCdcdEAke01BS0V9IC0tbm8tcHJpbnQtZGlyZWN0b3J5IC1DICVzIC1mICVzIGNsZWFuJywgX01BS0UuZXNjKHBhdGguZ2V0cmVsYXRpdmUoc2xuLmxvY2F0aW9uLCBwcmoubG9jYXRpb24pKSwgX01BS0UuZXNjKF9NQUtFLmdldG1ha2VmaWxlbmFtZShwcmosIHRydWUpKSkKZW5kCl9wKCcnKQpfcCgnaGVscDonKQpfcCgxLCdAZWNobyAiVXNhZ2U6IG1ha2UgW2NvbmZpZz1uYW1lXSBbdGFyZ2V0XSInKQpfcCgxLCdAZWNobyAiIicpCl9wKDEsJ0BlY2hvICJDT05GSUdVUkFUSU9OUzoiJykKbG9jYWwgY2ZncGFpcnMgPSB7IH0KZm9yIF8sIHBsYXRmb3JtIGluIGlwYWlycyhwbGF0Zm9ybXMpIGRvCmZvciBfLCBjZmduYW1lIGluIGlwYWlycyhzbG4uY29uZmlndXJhdGlvbnMpIGRvCl9wKDEsJ0BlY2hvICIgICAlcyInLCBwcmVtYWtlLmdldGNvbmZpZ25hbWUoY2ZnbmFtZSwgcGxhdGZvcm0sIHRydWUpKQplbmQKZW5kCl9wKDEsJ0BlY2hvICIiJykKX3AoMSwnQGVjaG8gIlRBUkdFVFM6IicpCl9wKDEsJ0BlY2hvICIgICBhbGwgKGRlZmF1bHQpIicpCl9wKDEsJ0BlY2hvICIgICBjbGVhbiInKQpmb3IgXywgcHJqIGluIGlwYWlycyhzbG4ucHJvamVjdHMpIGRvCl9wKDEsJ0BlY2hvICIgICAlcyInLCBwcmoubmFtZSkKZW5kCl9wKDEsJ0BlY2hvICIiJykKX3AoMSwnQGVjaG8gIkZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgaHR0cDovL2luZHVzdHJpb3Vzb25lLmNvbS9wcmVtYWtlL3F1aWNrLXN0YXJ0IicpCmVuZAoAcHJlbWFrZS5tYWtlLmNwcCA9IHsgfQpsb2NhbCBjcHAgPSBwcmVtYWtlLm1ha2UuY3BwCmxvY2FsIG1ha2UgPSBwcmVtYWtlLm1ha2UKZnVuY3Rpb24gcHJlbWFrZS5tYWtlX2NwcChwcmopCmxvY2FsIGNjID0gcHJlbWFrZS5nZXR0b29sKHByaikKbG9jYWwgcGxhdGZvcm1zID0gcHJlbWFrZS5maWx0ZXJwbGF0Zm9ybXMocHJqLnNvbHV0aW9uLCBjYy5wbGF0Zm9ybXMsICJOYXRpdmUiKQpwcmVtYWtlLmdtYWtlX2NwcF9oZWFkZXIocHJqLCBjYywgcGxhdGZvcm1zKQpmb3IgXywgcGxhdGZvcm0gaW4gaXBhaXJzKHBsYXRmb3JtcykgZG8KZm9yIGNmZyBpbiBwcmVtYWtlLmVhY2hjb25maWcocHJqLCBwbGF0Zm9ybSkgZG8KcHJlbWFrZS5nbWFrZV9jcHBfY29uZmlnKGNmZywgY2MpCmVuZAplbmQKX3AoJ09CSkVDVFMgOj0gXFwnKQpmb3IgXywgZmlsZSBpbiBpcGFpcnMocHJqLmZpbGVzKSBkbwppZiBwYXRoLmlzY3BwZmlsZShmaWxlKSB0aGVuCl9wKCdcdCQoT0JKRElSKS8lcy5vIFxcJywgX01BS0UuZXNjKHBhdGguZ2V0YmFzZW5hbWUoZmlsZSkpKQplbmQKZW5kCl9wKCcnKQpfcCgnUkVTT1VSQ0VTIDo9IFxcJykKZm9yIF8sIGZpbGUgaW4gaXBhaXJzKHByai5maWxlcykgZG8KaWYgcGF0aC5pc3Jlc291cmNlZmlsZShmaWxlKSB0aGVuCl9wKCdcdCQoT0JKRElSKS8lcy5yZXMgXFwnLCBfTUFLRS5lc2MocGF0aC5nZXRiYXNlbmFtZShmaWxlKSkpCmVuZAplbmQKX3AoJycpCl9wKCdTSEVMTFRZUEUgOj0gbXNkb3MnKQpfcCgnaWZlcSAoLCQoQ29tU3BlYykkKENPTVNQRUMpKScpCl9wKCcgIFNIRUxMVFlQRSA6PSBwb3NpeCcpCl9wKCdlbmRpZicpCl9wKCdpZmVxICgvYmluLCQoZmluZHN0cmluZyAvYmluLCQoU0hFTEwpKSknKQpfcCgnICBTSEVMTFRZUEUgOj0gcG9zaXgnKQpfcCgnZW5kaWYnKQpfcCgnJykKX3AoJy5QSE9OWTogY2xlYW4gcHJlYnVpbGQgcHJlbGluaycpCl9wKCcnKQppZiBvcy5pcygiTWFjT1NYIikgYW5kIHByai5raW5kID09ICJXaW5kb3dlZEFwcCIgdGhlbgpfcCgnYWxsOiAkKFRBUkdFVERJUikgJChPQkpESVIpIHByZWJ1aWxkIHByZWxpbmsgJChUQVJHRVQpICQoZGlyICQoVEFSR0VURElSKSlQa2dJbmZvICQoZGlyICQoVEFSR0VURElSKSlJbmZvLnBsaXN0JykKZWxzZQpfcCgnYWxsOiAkKFRBUkdFVERJUikgJChPQkpESVIpIHByZWJ1aWxkIHByZWxpbmsgJChUQVJHRVQpJykKZW5kCl9wKCdcdEA6JykKX3AoJycpCl9wKCckKFRBUkdFVCk6ICQoR0NIKSAkKE9CSkVDVFMpICQoTERERVBTKSAkKFJFU09VUkNFUyknKQpfcCgnXHRAZWNobyBMaW5raW5nICVzJywgcHJqLm5hbWUpCl9wKCdcdCQoU0lMRU5UKSAkKExJTktDTUQpJykKX3AoJ1x0JChQT1NUQlVJTERDTURTKScpCl9wKCcnKQpfcCgnJChUQVJHRVRESVIpOicpCnByZW1ha2UubWFrZV9ta2RpcnJ1bGUoIiQoVEFSR0VURElSKSIpCl9wKCckKE9CSkRJUik6JykKcHJlbWFrZS5tYWtlX21rZGlycnVsZSgiJChPQkpESVIpIikKaWYgb3MuaXMoIk1hY09TWCIpIGFuZCBwcmoua2luZCA9PSAiV2luZG93ZWRBcHAiIHRoZW4KX3AoJyQoZGlyICQoVEFSR0VURElSKSlQa2dJbmZvOicpCl9wKCckKGRpciAkKFRBUkdFVERJUikpSW5mby5wbGlzdDonKQpfcCgnJykKZW5kCl9wKCdjbGVhbjonKQpfcCgnXHRAZWNobyBDbGVhbmluZyAlcycsIHByai5uYW1lKQpfcCgnaWZlcSAocG9zaXgsJChTSEVMTFRZUEUpKScpCl9wKCdcdCQoU0lMRU5UKSBybSAtZiAgJChUQVJHRVQpJykKX3AoJ1x0JChTSUxFTlQpIHJtIC1yZiAkKE9CSkRJUiknKQpfcCgnZWxzZScpCl9wKCdcdCQoU0lMRU5UKSBpZiBleGlzdCAkKHN1YnN0IC8sXFxcXCwkKFRBUkdFVCkpIGRlbCAkKHN1YnN0IC8sXFxcXCwkKFRBUkdFVCkpJykKX3AoJ1x0JChTSUxFTlQpIGlmIGV4aXN0ICQoc3Vic3QgLyxcXFxcLCQoT0JKRElSKSkgcm1kaXIgL3MgL3EgJChzdWJzdCAvLFxcXFwsJChPQkpESVIpKScpCl9wKCdlbmRpZicpCl9wKCcnKQpfcCgncHJlYnVpbGQ6JykKX3AoJ1x0JChQUkVCVUlMRENNRFMpJykKX3AoJycpCl9wKCdwcmVsaW5rOicpCl9wKCdcdCQoUFJFTElOS0NNRFMpJykKX3AoJycpCmNwcC5wY2hydWxlcyhwcmopCmNwcC5maWxlUnVsZXMocHJqKQpfcCgnLWluY2x1ZGUgJChPQkpFQ1RTOiUlLm89JSUuZCknKQpfcCgnaWZuZXEgKCwkKFBDSCkpJykKX3AoJyAgLWluY2x1ZGUgJChPQkpESVIpLyQobm90ZGlyICQoUENIKSkuZCcpCl9wKCdlbmRpZicpCmVuZApmdW5jdGlvbiBwcmVtYWtlLmdtYWtlX2NwcF9oZWFkZXIocHJqLCBjYywgcGxhdGZvcm1zKQpfcCgnIyAlcyBwcm9qZWN0IG1ha2VmaWxlIGF1dG9nZW5lcmF0ZWQgYnkgUHJlbWFrZScsIHByZW1ha2UuYWN0aW9uLmN1cnJlbnQoKS5zaG9ydG5hbWUpCl9wKCdpZm5kZWYgY29uZmlnJykKX3AoJyAgY29uZmlnPSVzJywgX01BS0UuZXNjKHByZW1ha2UuZ2V0Y29uZmlnbmFtZShwcmouc29sdXRpb24uY29uZmlndXJhdGlvbnNbMV0sIHBsYXRmb3Jtc1sxXSwgdHJ1ZSkpKQpfcCgnZW5kaWYnKQpfcCgnJykKX3AoJ2lmbmRlZiB2ZXJib3NlJykKX3AoJyAgU0lMRU5UID0gQCcpCl9wKCdlbmRpZicpCl9wKCcnKQpfcCgnQ0MgPSAlcycsIGNjLmNjKQpfcCgnQ1hYID0gJXMnLCBjYy5jeHgpCl9wKCdBUiA9ICVzJywgY2MuYXIpCl9wKCcnKQpfcCgnaWZuZGVmIFJFU0NPTVAnKQpfcCgnICBpZmRlZiBXSU5EUkVTJykKX3AoJyAgICBSRVNDT01QID0gJChXSU5EUkVTKScpCl9wKCcgIGVsc2UnKQpfcCgnICAgIFJFU0NPTVAgPSB3aW5kcmVzJykKX3AoJyAgZW5kaWYnKQpfcCgnZW5kaWYnKQpfcCgnJykKZW5kCmZ1bmN0aW9uIHByZW1ha2UuZ21ha2VfY3BwX2NvbmZpZyhjZmcsIGNjKQpfcCgnaWZlcSAoJChjb25maWcpLCVzKScsIF9NQUtFLmVzYyhjZmcuc2hvcnRuYW1lKSkKY3BwLnBsYXRmb3JtdG9vbHMoY2ZnLCBjYykKX3AoJyAgT0JKRElSICAgICA9ICVzJywgX01BS0UuZXNjKGNmZy5vYmplY3RzZGlyKSkKX3AoJyAgVEFSR0VURElSICA9ICVzJywgX01BS0UuZXNjKGNmZy5idWlsZHRhcmdldC5kaXJlY3RvcnkpKQpfcCgnICBUQVJHRVQgICAgID0gJChUQVJHRVRESVIpLyVzJywgX01BS0UuZXNjKGNmZy5idWlsZHRhcmdldC5uYW1lKSkKX3AoJyAgREVGSU5FUyAgICs9JXMnLCBtYWtlLmxpc3QoY2MuZ2V0ZGVmaW5lcyhjZmcuZGVmaW5lcykpKQpfcCgnICBJTkNMVURFUyAgKz0lcycsIG1ha2UubGlzdChjYy5nZXRpbmNsdWRlZGlycyhjZmcuaW5jbHVkZWRpcnMpKSkKY3BwLnBjaGNvbmZpZyhjZmcpCmNwcC5mbGFncyhjZmcsIGNjKQpjcHAubGlua2VyKGNmZywgY2MpCl9wKCcgIGRlZmluZSBQUkVCVUlMRENNRFMnKQppZiAjY2ZnLnByZWJ1aWxkY29tbWFuZHMgPiAwIHRoZW4KX3AoJ1x0QGVjaG8gUnVubmluZyBwcmUtYnVpbGQgY29tbWFuZHMnKQpfcCgnXHQlcycsIHRhYmxlLmltcGxvZGUoY2ZnLnByZWJ1aWxkY29tbWFuZHMsICIiLCAiIiwgIlxuXHQiKSkKZW5kCl9wKCcgIGVuZGVmJykKX3AoJyAgZGVmaW5lIFBSRUxJTktDTURTJykKaWYgI2NmZy5wcmVsaW5rY29tbWFuZHMgPiAwIHRoZW4KX3AoJ1x0QGVjaG8gUnVubmluZyBwcmUtbGluayBjb21tYW5kcycpCl9wKCdcdCVzJywgdGFibGUuaW1wbG9kZShjZmcucHJlbGlua2NvbW1hbmRzLCAiIiwgIiIsICJcblx0IikpCmVuZApfcCgnICBlbmRlZicpCl9wKCcgIGRlZmluZSBQT1NUQlVJTERDTURTJykKaWYgI2NmZy5wb3N0YnVpbGRjb21tYW5kcyA+IDAgdGhlbgpfcCgnXHRAZWNobyBSdW5uaW5nIHBvc3QtYnVpbGQgY29tbWFuZHMnKQpfcCgnXHQlcycsIHRhYmxlLmltcGxvZGUoY2ZnLnBvc3RidWlsZGNvbW1hbmRzLCAiIiwgIiIsICJcblx0IikpCmVuZApfcCgnICBlbmRlZicpCm1ha2Uuc2V0dGluZ3MoY2ZnLCBjYykKX3AoJ2VuZGlmJykKX3AoJycpCmVuZApmdW5jdGlvbiBjcHAucGxhdGZvcm10b29scyhjZmcsIGNjKQpsb2NhbCBwbGF0Zm9ybSA9IGNjLnBsYXRmb3Jtc1tjZmcucGxhdGZvcm1dCmlmIHBsYXRmb3JtLmNjIHRoZW4KX3AoJyAgQ0MgICAgICAgICA9ICVzJywgcGxhdGZvcm0uY2MpCmVuZAppZiBwbGF0Zm9ybS5jeHggdGhlbgpfcCgnICBDWFggICAgICAgID0gJXMnLCBwbGF0Zm9ybS5jeHgpCmVuZAppZiBwbGF0Zm9ybS5hciB0aGVuCl9wKCcgIEFSICAgICAgICAgPSAlcycsIHBsYXRmb3JtLmFyKQplbmQKZW5kCmZ1bmN0aW9uIGNwcC5mbGFncyhjZmcsIGNjKQppZiBjZmcucGNoaGVhZGVyIGFuZCBub3QgY2ZnLmZsYWdzLk5vUENIIHRoZW4KX3AoJyAgRk9SQ0VfSU5DTFVERSArPSAtaW5jbHVkZSAkKE9CSkRJUikvJChub3RkaXIgJChQQ0gpKScpCmVuZApfcCgnICBBTExfQ1BQRkxBR1MgICs9ICQoQ1BQRkxBR1MpICVzICQoREVGSU5FUykgJChJTkNMVURFUykgJChGT1JDRV9JTkNMVURFKScsIHRhYmxlLmNvbmNhdChjYy5nZXRjcHBmbGFncyhjZmcpLCAiICIpKQpfcCgnICBBTExfQ0ZMQUdTICAgICs9ICQoQ0ZMQUdTKSAkKEFMTF9DUFBGTEFHUykgJChBUkNIKSVzJywgbWFrZS5saXN0KHRhYmxlLmpvaW4oY2MuZ2V0Y2ZsYWdzKGNmZyksIGNmZy5idWlsZG9wdGlvbnMpKSkKX3AoJyAgQUxMX0NYWEZMQUdTICArPSAkKENYWEZMQUdTKSAkKEFMTF9DRkxBR1MpJXMnLCBtYWtlLmxpc3QoY2MuZ2V0Y3h4ZmxhZ3MoY2ZnKSkpCl9wKCcgIEFMTF9SRVNGTEFHUyAgKz0gJChSRVNGTEFHUykgJChERUZJTkVTKSAkKElOQ0xVREVTKSVzJywKICAgICAgICBtYWtlLmxpc3QodGFibGUuam9pbihjYy5nZXRkZWZpbmVzKGNmZy5yZXNkZWZpbmVzKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYy5nZXRpbmNsdWRlZGlycyhjZmcucmVzaW5jbHVkZWRpcnMpLCBjZmcucmVzb3B0aW9ucykpKQplbmQKZnVuY3Rpb24gY3BwLmxpbmtlcihjZmcsIGNjKQpfcCgnICBBTExfTERGTEFHUyAgICs9ICQoTERGTEFHUyklcycsIG1ha2UubGlzdCh0YWJsZS5qb2luKGNjLmdldGxpYmRpcmZsYWdzKGNmZyksIGNjLmdldGxkZmxhZ3MoY2ZnKSwgY2ZnLmxpbmtvcHRpb25zKSkpCl9wKCcgIExEREVQUyAgICArPSVzJywgbWFrZS5saXN0KF9NQUtFLmVzYyhwcmVtYWtlLmdldGxpbmtzKGNmZywgInNpYmxpbmdzIiwgImZ1bGxwYXRoIikpKSkKX3AoJyAgTElCUyAgICAgICs9ICQoTERERVBTKSVzJywgbWFrZS5saXN0KGNjLmdldGxpbmtmbGFncyhjZmcpKSkKaWYgY2ZnLmtpbmQgPT0gIlN0YXRpY0xpYiIgdGhlbgppZiBjZmcucGxhdGZvcm06c3RhcnRzd2l0aCgiVW5pdmVyc2FsIikgdGhlbgpfcCgnICBMSU5LQ01EICAgID0gbGlidG9vbCAtbyAkKFRBUkdFVCkgJChPQkpFQ1RTKScpCmVsc2UKX3AoJyAgTElOS0NNRCAgICA9ICQoQVIpIC1yY3MgJChUQVJHRVQpICQoT0JKRUNUUyknKQplbmQKZWxzZQpfcCgnICBMSU5LQ01EICAgID0gJCglcykgLW8gJChUQVJHRVQpICQoT0JKRUNUUykgJChSRVNPVVJDRVMpICQoQVJDSCkgJChBTExfTERGTEFHUykgJChMSUJTKScsIGlpZihjZmcubGFuZ3VhZ2UgPT0gIkMiLCAiQ0MiLCAiQ1hYIikpCmVuZAplbmQKZnVuY3Rpb24gY3BwLnBjaGNvbmZpZyhjZmcpCmlmIG5vdCBjZmcucGNoaGVhZGVyIG9yIGNmZy5mbGFncy5Ob1BDSCB0aGVuCnJldHVybgplbmQKbG9jYWwgcGNoID0gY2ZnLnBjaGhlYWRlcgpmb3IgXywgaW5jZGlyIGluIGlwYWlycyhjZmcuaW5jbHVkZWRpcnMpIGRvCmxvY2FsIHRlc3RuYW1lID0gcGF0aC5qb2luKGluY2RpciwgcGNoKQppZiBvcy5pc2ZpbGUodGVzdG5hbWUpIHRoZW4KcGNoID0gdGVzdG5hbWUKYnJlYWsKZW5kCmVuZApfcCgnICBQQ0ggICAgICAgID0gJXMnLCBfTUFLRS5lc2MocGF0aC5nZXRyZWxhdGl2ZShjZmcubG9jYXRpb24sIGNmZy5wY2hoZWFkZXIpKSkKX3AoJyAgR0NIICAgICAgICA9ICQoT0JKRElSKS8kKG5vdGRpciAkKFBDSCkpLmdjaCcsIF9NQUtFLmVzYyhwYXRoLmdldG5hbWUoY2ZnLnBjaGhlYWRlcikpKQplbmQKZnVuY3Rpb24gY3BwLnBjaHJ1bGVzKHByaikKX3AoJ2lmbmVxICgsJChQQ0gpKScpCl9wKCckKEdDSCk6ICQoUENIKScpCl9wKCdcdEBlY2hvICQobm90ZGlyICQ8KScpCmxvY2FsIGNtZCA9IGlpZihwcmoubGFuZ3VhZ2UgPT0gIkMiLCAiJChDQykgLXggYy1oZWFkZXIiLCAiJChDWFgpIC14IGMrKy1oZWFkZXIiKQpfcCgnXHQkKFNJTEVOVCkgJXMgJChDUFBGTEFHUykgLU1NRCAtTVAgJChERUZJTkVTKSAkKElOQ0xVREVTKSAtbyAiJEAiIC1NRiAiJChAOiUlLmdjaD0lJS5kKSIgLWMgIiQ8IicsIGNtZCkKX3AoJ2VuZGlmJykKX3AoJycpCmVuZApmdW5jdGlvbiBjcHAuZmlsZVJ1bGVzKHByaikKZm9yIF8sIGZpbGUgaW4gaXBhaXJzKHByai5maWxlcyBvciB7fSkgZG8KaWYgcGF0aC5pc2NwcGZpbGUoZmlsZSkgdGhlbgpfcCgnJChPQkpESVIpLyVzLm86ICVzJywgX01BS0UuZXNjKHBhdGguZ2V0YmFzZW5hbWUoZmlsZSkpLCBfTUFLRS5lc2MoZmlsZSkpCl9wKCdcdEBlY2hvICQobm90ZGlyICQ8KScpCmNwcC5idWlsZGNvbW1hbmQocGF0aC5pc2NmaWxlKGZpbGUpLCAibyIpCl9wKCcnKQplbHNlaWYgKHBhdGguZ2V0ZXh0ZW5zaW9uKGZpbGUpID09ICIucmMiKSB0aGVuCl9wKCckKE9CSkRJUikvJXMucmVzOiAlcycsIF9NQUtFLmVzYyhwYXRoLmdldGJhc2VuYW1lKGZpbGUpKSwgX01BS0UuZXNjKGZpbGUpKQpfcCgnXHRAZWNobyAkKG5vdGRpciAkPCknKQpfcCgnXHQkKFNJTEVOVCkgJChSRVNDT01QKSAkPCAtTyBjb2ZmIC1vICIkQCIgJChBTExfUkVTRkxBR1MpJykKX3AoJycpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIGNwcC5idWlsZGNvbW1hbmQoaXNjZmlsZSwgb2JqZXh0KQpsb2NhbCBmbGFncyA9IGlpZihpc2NmaWxlLCAnJChDQykgJChBTExfQ0ZMQUdTKScsICckKENYWCkgJChBTExfQ1hYRkxBR1MpJykKX3AoJ1x0JChTSUxFTlQpICVzIC1vICIkQCIgLU1GICQoQDolJS4lcz0lJS5kKSAtYyAiJDwiJywgZmxhZ3MsIG9iamV4dCkKZW5kCgBsb2NhbCBmdW5jdGlvbiBnZXRyZXNvdXJjZWZpbGVuYW1lKGNmZywgZm5hbWUpCmlmIHBhdGguZ2V0ZXh0ZW5zaW9uKGZuYW1lKSA9PSAiLnJlc3giIHRoZW4KICAgIGxvY2FsIG5hbWUgPSBjZmcuYnVpbGR0YXJnZXQuYmFzZW5hbWUgLi4gIi4iCiAgICBsb2NhbCBkaXIgPSBwYXRoLmdldGRpcmVjdG9yeShmbmFtZSkKICAgIGlmIGRpciB+PSAiLiIgdGhlbiAKbmFtZSA9IG5hbWUgLi4gcGF0aC50cmFuc2xhdGUoZGlyLCAiLiIpIC4uICIuIgplbmQKcmV0dXJuICIkKE9CSkRJUikvIiAuLiBfTUFLRS5lc2MobmFtZSAuLiBwYXRoLmdldGJhc2VuYW1lKGZuYW1lKSkgLi4gIi5yZXNvdXJjZXMiCmVsc2UKcmV0dXJuIGZuYW1lCmVuZAplbmQKZnVuY3Rpb24gcHJlbWFrZS5tYWtlX2NzaGFycChwcmopCmxvY2FsIGNzYyA9IHByZW1ha2UuZG90bmV0CmxvY2FsIGNmZ2xpYnMgPSB7IH0KbG9jYWwgY2ZncGFpcnMgPSB7IH0KbG9jYWwgYW55Y2ZnCmZvciBjZmcgaW4gcHJlbWFrZS5lYWNoY29uZmlnKHByaikgZG8KYW55Y2ZnID0gY2ZnCmNmZ2xpYnNbY2ZnXSA9IHByZW1ha2UuZ2V0bGlua3MoY2ZnLCAic2libGluZ3MiLCAiZnVsbHBhdGgiKQpjZmdwYWlyc1tjZmddID0geyB9CmZvciBfLCBmbmFtZSBpbiBpcGFpcnMoY2ZnbGlic1tjZmddKSBkbwppZiBwYXRoLmdldGRpcmVjdG9yeShmbmFtZSkgfj0gY2ZnLmJ1aWxkdGFyZ2V0LmRpcmVjdG9yeSB0aGVuCmNmZ3BhaXJzW2NmZ11bIiQoVEFSR0VURElSKS8iIC4uIF9NQUtFLmVzYyhwYXRoLmdldG5hbWUoZm5hbWUpKV0gPSBfTUFLRS5lc2MoZm5hbWUpCmVuZAplbmQKZW5kCmxvY2FsIHNvdXJjZXMgPSB7fQpsb2NhbCBlbWJlZGRlZCA9IHsgfQpsb2NhbCBjb3B5cGFpcnMgPSB7IH0KZm9yIGZjZmcgaW4gcHJlbWFrZS5wcm9qZWN0LmVhY2hmaWxlKHByaikgZG8KbG9jYWwgYWN0aW9uID0gY3NjLmdldGJ1aWxkYWN0aW9uKGZjZmcpCmlmIGFjdGlvbiA9PSAiQ29tcGlsZSIgdGhlbgp0YWJsZS5pbnNlcnQoc291cmNlcywgZmNmZy5uYW1lKQplbHNlaWYgYWN0aW9uID09ICJFbWJlZGRlZFJlc291cmNlIiB0aGVuCnRhYmxlLmluc2VydChlbWJlZGRlZCwgZmNmZy5uYW1lKQplbHNlaWYgYWN0aW9uID09ICJDb250ZW50IiB0aGVuCmNvcHlwYWlyc1siJChUQVJHRVRESVIpLyIgLi4gX01BS0UuZXNjKHBhdGguZ2V0bmFtZShmY2ZnLm5hbWUpKV0gPSBfTUFLRS5lc2MoZmNmZy5uYW1lKQplbHNlaWYgcGF0aC5nZXRuYW1lKGZjZmcubmFtZSk6bG93ZXIoKSA9PSAiYXBwLmNvbmZpZyIgdGhlbgpjb3B5cGFpcnNbIiQoVEFSR0VUKS5jb25maWciXSA9IF9NQUtFLmVzYyhmY2ZnLm5hbWUpCmVuZAplbmQKbG9jYWwgcGF0aHMgPSB0YWJsZS50cmFuc2xhdGUocHJqLmxpYmRpcnMsIGZ1bmN0aW9uKHYpIHJldHVybiBwYXRoLmpvaW4ocHJqLmJhc2VkaXIsIHYpIGVuZCkKcGF0aHMgPSB0YWJsZS5qb2luKHtwcmouYmFzZWRpcn0sIHBhdGhzKQpmb3IgXywgbGlibmFtZSBpbiBpcGFpcnMocHJlbWFrZS5nZXRsaW5rcyhwcmosICJzeXN0ZW0iLCAiZnVsbHBhdGgiKSkgZG8KbG9jYWwgbGliZGlyID0gb3MucGF0aHNlYXJjaChsaWJuYW1lLi4iLmRsbCIsIHVucGFjayhwYXRocykpCmlmIChsaWJkaXIpIHRoZW4KbG9jYWwgdGFyZ2V0ID0gIiQoVEFSR0VURElSKS8iIC4uIF9NQUtFLmVzYyhwYXRoLmdldG5hbWUobGlibmFtZSkpCmxvY2FsIHNvdXJjZSA9IHBhdGguZ2V0cmVsYXRpdmUocHJqLmJhc2VkaXIsIHBhdGguam9pbihsaWJkaXIsIGxpYm5hbWUpKS4uIi5kbGwiCmNvcHlwYWlyc1t0YXJnZXRdID0gX01BS0UuZXNjKHNvdXJjZSkKZW5kCmVuZApfcCgnIyAlcyBwcm9qZWN0IG1ha2VmaWxlIGF1dG9nZW5lcmF0ZWQgYnkgUHJlbWFrZScsIHByZW1ha2UuYWN0aW9uLmN1cnJlbnQoKS5zaG9ydG5hbWUpCl9wKCcnKQpfcCgnaWZuZGVmIGNvbmZpZycpCl9wKCcgIGNvbmZpZz0lcycsIF9NQUtFLmVzYyhwcmouY29uZmlndXJhdGlvbnNbMV06bG93ZXIoKSkpCl9wKCdlbmRpZicpCl9wKCcnKQpfcCgnaWZuZGVmIHZlcmJvc2UnKQpfcCgnICBTSUxFTlQgPSBAJykKX3AoJ2VuZGlmJykKX3AoJycpCl9wKCdpZm5kZWYgQ1NDJykKX3AoJyAgQ1NDPSVzJywgY3NjLmdldGNvbXBpbGVydmFyKHByaikpCl9wKCdlbmRpZicpCl9wKCcnKQpfcCgnaWZuZGVmIFJFU0dFTicpCl9wKCcgIFJFU0dFTj1yZXNnZW4nKQpfcCgnZW5kaWYnKQpfcCgnJykKbG9jYWwgcGxhdGZvcm1zID0gcHJlbWFrZS5maWx0ZXJwbGF0Zm9ybXMocHJqLnNvbHV0aW9uLCBwcmVtYWtlW19PUFRJT05TLmNjXS5wbGF0Zm9ybXMpCnRhYmxlLmluc2VydChwbGF0Zm9ybXMsIDEsICIiKQpmb3IgY2ZnIGluIHByZW1ha2UuZWFjaGNvbmZpZyhwcmopIGRvCnByZW1ha2UuZ21ha2VfY3NfY29uZmlnKGNmZywgY3NjLCBjZmdsaWJzKQplbmQKX3AoJyMgVG8gbWFpbnRhaW4gY29tcGF0aWJpbGl0eSB3aXRoIFZTLk5FVCwgdGhlc2UgdmFsdWVzIG11c3QgYmUgc2V0IGF0IHRoZSBwcm9qZWN0IGxldmVsJykKX3AoJ1RBUkdFVCAgICAgOj0gJChUQVJHRVRESVIpLyVzJywgX01BS0UuZXNjKHByai5idWlsZHRhcmdldC5uYW1lKSkKX3AoJ0ZMQUdTICAgICAgKz0gL3Q6JXMgJXMnLCBjc2MuZ2V0a2luZChwcmopOmxvd2VyKCksIHRhYmxlLmltcGxvZGUoX01BS0UuZXNjKHByai5saWJkaXJzKSwgIi9saWI6IiwgIiIsICIgIikpCl9wKCdSRUZFUkVOQ0VTICs9ICVzJywgdGFibGUuaW1wbG9kZShfTUFLRS5lc2MocHJlbWFrZS5nZXRsaW5rcyhwcmosICJzeXN0ZW0iLCAiYmFzZW5hbWUiKSksICIvcjoiLCAiLmRsbCIsICIgIikpCl9wKCcnKQpfcCgnU09VUkNFUyA6PSBcXCcpCmZvciBfLCBmbmFtZSBpbiBpcGFpcnMoc291cmNlcykgZG8KX3AoJ1x0JXMgXFwnLCBfTUFLRS5lc2MocGF0aC50cmFuc2xhdGUoZm5hbWUpKSkKZW5kCl9wKCcnKQpfcCgnRU1CRURGSUxFUyA6PSBcXCcpCmZvciBfLCBmbmFtZSBpbiBpcGFpcnMoZW1iZWRkZWQpIGRvCl9wKCdcdCVzIFxcJywgZ2V0cmVzb3VyY2VmaWxlbmFtZShwcmosIGZuYW1lKSkKZW5kCl9wKCcnKQpfcCgnQ09QWUZJTEVTICs9IFxcJykKZm9yIHRhcmdldCwgc291cmNlIGluIHBhaXJzKGNmZ3BhaXJzW2FueWNmZ10pIGRvCl9wKCdcdCVzIFxcJywgdGFyZ2V0KQplbmQKZm9yIHRhcmdldCwgc291cmNlIGluIHBhaXJzKGNvcHlwYWlycykgZG8KX3AoJ1x0JXMgXFwnLCB0YXJnZXQpCmVuZApfcCgnJykKX3AoJ1NIRUxMVFlQRSA6PSBtc2RvcycpCl9wKCdpZmVxICgsJChDb21TcGVjKSQoQ09NU1BFQykpJykKX3AoJyAgU0hFTExUWVBFIDo9IHBvc2l4JykKX3AoJ2VuZGlmJykKX3AoJ2lmZXEgKC9iaW4sJChmaW5kc3RyaW5nIC9iaW4sJChTSEVMTCkpKScpCl9wKCcgIFNIRUxMVFlQRSA6PSBwb3NpeCcpCl9wKCdlbmRpZicpCl9wKCcnKQpfcCgnLlBIT05ZOiBjbGVhbiBwcmVidWlsZCBwcmVsaW5rJykKX3AoJycpCl9wKCdhbGw6ICQoVEFSR0VURElSKSAkKE9CSkRJUikgcHJlYnVpbGQgJChFTUJFREZJTEVTKSAkKENPUFlGSUxFUykgcHJlbGluayAkKFRBUkdFVCknKQpfcCgnJykKX3AoJyQoVEFSR0VUKTogJChTT1VSQ0VTKSAkKEVNQkVERklMRVMpICQoREVQRU5EUyknKQpfcCgnXHQkKFNJTEVOVCkgJChDU0MpIC9ub2xvZ28gL291dDokQCAkKEZMQUdTKSAkKFJFRkVSRU5DRVMpICQoU09VUkNFUykgJChwYXRzdWJzdCAlJSwvcmVzb3VyY2U6JSUsJChFTUJFREZJTEVTKSknKQpfcCgnXHQkKFBPU1RCVUlMRENNRFMpJykKX3AoJycpCl9wKCckKFRBUkdFVERJUik6JykKcHJlbWFrZS5tYWtlX21rZGlycnVsZSgiJChUQVJHRVRESVIpIikKX3AoJyQoT0JKRElSKTonKQpwcmVtYWtlLm1ha2VfbWtkaXJydWxlKCIkKE9CSkRJUikiKQpfcCgnY2xlYW46JykKX3AoJ1x0QGVjaG8gQ2xlYW5pbmcgJXMnLCBwcmoubmFtZSkKX3AoJ2lmZXEgKHBvc2l4LCQoU0hFTExUWVBFKSknKQpfcCgnXHQkKFNJTEVOVCkgcm0gLWYgJChUQVJHRVRESVIpLyVzLiogJChDT1BZRklMRVMpJywgcHJqLmJ1aWxkdGFyZ2V0LmJhc2VuYW1lKQpfcCgnXHQkKFNJTEVOVCkgcm0gLXJmICQoT0JKRElSKScpCl9wKCdlbHNlJykKX3AoJ1x0JChTSUxFTlQpIGlmIGV4aXN0ICQoc3Vic3QgLyxcXFxcLCQoVEFSR0VURElSKS8lcy4qKSBkZWwgJChzdWJzdCAvLFxcXFwsJChUQVJHRVRESVIpLyVzLiopJywgcHJqLmJ1aWxkdGFyZ2V0LmJhc2VuYW1lLCBwcmouYnVpbGR0YXJnZXQuYmFzZW5hbWUpCmZvciB0YXJnZXQsIHNvdXJjZSBpbiBwYWlycyhjZmdwYWlyc1thbnljZmddKSBkbwpfcCgnXHQkKFNJTEVOVCkgaWYgZXhpc3QgJChzdWJzdCAvLFxcXFwsJXMpIGRlbCAkKHN1YnN0IC8sXFxcXCwlcyknLCB0YXJnZXQsIHRhcmdldCkKZW5kCmZvciB0YXJnZXQsIHNvdXJjZSBpbiBwYWlycyhjb3B5cGFpcnMpIGRvCl9wKCdcdCQoU0lMRU5UKSBpZiBleGlzdCAkKHN1YnN0IC8sXFxcXCwlcykgZGVsICQoc3Vic3QgLyxcXFxcLCVzKScsIHRhcmdldCwgdGFyZ2V0KQplbmQKX3AoJ1x0JChTSUxFTlQpIGlmIGV4aXN0ICQoc3Vic3QgLyxcXFxcLCQoT0JKRElSKSkgcm1kaXIgL3MgL3EgJChzdWJzdCAvLFxcXFwsJChPQkpESVIpKScpCl9wKCdlbmRpZicpCl9wKCcnKQpfcCgncHJlYnVpbGQ6JykKX3AoJ1x0JChQUkVCVUlMRENNRFMpJykKX3AoJycpCl9wKCdwcmVsaW5rOicpCl9wKCdcdCQoUFJFTElOS0NNRFMpJykKX3AoJycpCl9wKCcjIFBlci1jb25maWd1cmF0aW9uIGNvcGllZCBmaWxlIHJ1bGVzJykKZm9yIGNmZyBpbiBwcmVtYWtlLmVhY2hjb25maWcocHJqKSBkbwpfcCgnaWZuZXEgKCwkKGZpbmRzdHJpbmcgJXMsJChjb25maWcpKSknLCBfTUFLRS5lc2MoY2ZnLm5hbWU6bG93ZXIoKSkpCmZvciB0YXJnZXQsIHNvdXJjZSBpbiBwYWlycyhjZmdwYWlyc1tjZmddKSBkbwpwcmVtYWtlLm1ha2VfY29weXJ1bGUoc291cmNlLCB0YXJnZXQpCmVuZApfcCgnZW5kaWYnKQpfcCgnJykKZW5kCl9wKCcjIENvcGllZCBmaWxlIHJ1bGVzJykKZm9yIHRhcmdldCwgc291cmNlIGluIHBhaXJzKGNvcHlwYWlycykgZG8KcHJlbWFrZS5tYWtlX2NvcHlydWxlKHNvdXJjZSwgdGFyZ2V0KQplbmQKX3AoJyMgRW1iZWRkZWQgZmlsZSBydWxlcycpCmZvciBfLCBmbmFtZSBpbiBpcGFpcnMoZW1iZWRkZWQpIGRvIAppZiBwYXRoLmdldGV4dGVuc2lvbihmbmFtZSkgPT0gIi5yZXN4IiB0aGVuCl9wKCclczogJXMnLCBnZXRyZXNvdXJjZWZpbGVuYW1lKHByaiwgZm5hbWUpLCBfTUFLRS5lc2MoZm5hbWUpKQpfcCgnXHQkKFNJTEVOVCkgJChSRVNHRU4pICReICRAJykKZW5kCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIHByZW1ha2UuZ21ha2VfY3NfY29uZmlnKGNmZywgY3NjLCBjZmdsaWJzKQpfcCgnaWZuZXEgKCwkKGZpbmRzdHJpbmcgJXMsJChjb25maWcpKSknLCBfTUFLRS5lc2MoY2ZnLm5hbWU6bG93ZXIoKSkpCl9wKCcgIFRBUkdFVERJUiAgOj0gJXMnLCBfTUFLRS5lc2MoY2ZnLmJ1aWxkdGFyZ2V0LmRpcmVjdG9yeSkpCl9wKCcgIE9CSkRJUiAgICAgOj0gJXMnLCBfTUFLRS5lc2MoY2ZnLm9iamVjdHNkaXIpKQpfcCgnICBERVBFTkRTICAgIDo9ICVzJywgdGFibGUuY29uY2F0KF9NQUtFLmVzYyhwcmVtYWtlLmdldGxpbmtzKGNmZywgImRlcGVuZGVuY2llcyIsICJmdWxscGF0aCIpKSwgIiAiKSkKX3AoJyAgUkVGRVJFTkNFUyA6PSAlcycsIHRhYmxlLmltcGxvZGUoX01BS0UuZXNjKGNmZ2xpYnNbY2ZnXSksICIvcjoiLCAiIiwgIiAiKSkKX3AoJyAgRkxBR1MgICAgICArPSAlcyAlcycsIHRhYmxlLmltcGxvZGUoY2ZnLmRlZmluZXMsICIvZDoiLCAiIiwgIiAiKSwgdGFibGUuY29uY2F0KHRhYmxlLmpvaW4oY3NjLmdldGZsYWdzKGNmZyksIGNmZy5idWlsZG9wdGlvbnMpLCAiICIpKQpfcCgnICBkZWZpbmUgUFJFQlVJTERDTURTJykKaWYgI2NmZy5wcmVidWlsZGNvbW1hbmRzID4gMCB0aGVuCl9wKCdcdEBlY2hvIFJ1bm5pbmcgcHJlLWJ1aWxkIGNvbW1hbmRzJykKX3AoJ1x0JXMnLCB0YWJsZS5pbXBsb2RlKGNmZy5wcmVidWlsZGNvbW1hbmRzLCAiIiwgIiIsICJcblx0IikpCmVuZApfcCgnICBlbmRlZicpCl9wKCcgIGRlZmluZSBQUkVMSU5LQ01EUycpCmlmICNjZmcucHJlbGlua2NvbW1hbmRzID4gMCB0aGVuCl9wKCdcdEBlY2hvIFJ1bm5pbmcgcHJlLWxpbmsgY29tbWFuZHMnKQpfcCgnXHQlcycsIHRhYmxlLmltcGxvZGUoY2ZnLnByZWxpbmtjb21tYW5kcywgIiIsICIiLCAiXG5cdCIpKQplbmQKX3AoJyAgZW5kZWYnKQpfcCgnICBkZWZpbmUgUE9TVEJVSUxEQ01EUycpCmlmICNjZmcucG9zdGJ1aWxkY29tbWFuZHMgPiAwIHRoZW4KX3AoJ1x0QGVjaG8gUnVubmluZyBwb3N0LWJ1aWxkIGNvbW1hbmRzJykKX3AoJ1x0JXMnLCB0YWJsZS5pbXBsb2RlKGNmZy5wb3N0YnVpbGRjb21tYW5kcywgIiIsICIiLCAiXG5cdCIpKQplbmQKX3AoJyAgZW5kZWYnKQpfcCgnZW5kaWYnKQpfcCgnJykKZW5kCgBwcmVtYWtlLnZzdHVkaW8gPSB7IH0KbG9jYWwgdnN0dWRpbyA9IHByZW1ha2UudnN0dWRpbwp2c3R1ZGlvLnBsYXRmb3JtcyA9IHsKYW55ICAgICA9ICJBbnkgQ1BVIiwKbWl4ZWQgICA9ICJNaXhlZCBQbGF0Zm9ybXMiLApOYXRpdmUgID0gIldpbjMyIiwKeDg2ICAgICA9ICJ4ODYiLAp4MzIgICAgID0gIldpbjMyIiwKeDY0ICAgICA9ICJ4NjQiLApQUzMgICAgID0gIlBTMyIsClhib3gzNjAgPSAiWGJveCAzNjAiLAp9CmZ1bmN0aW9uIHZzdHVkaW8uYXJjaChwcmopCmlmIChwcmoubGFuZ3VhZ2UgPT0gIkMjIikgdGhlbgppZiAoX0FDVElPTiA8ICJ2czIwMDUiKSB0aGVuCnJldHVybiAiLk5FVCIKZWxzZQpyZXR1cm4gIkFueSBDUFUiCmVuZAplbHNlCnJldHVybiAiV2luMzIiCmVuZAplbmQKZnVuY3Rpb24gdnN0dWRpby5idWlsZGNvbmZpZ3Moc2xuKQpsb2NhbCBjZmdzID0geyB9CmxvY2FsIHBsYXRmb3JtcyA9IHByZW1ha2UuZmlsdGVycGxhdGZvcm1zKHNsbiwgdnN0dWRpby5wbGF0Zm9ybXMsICJOYXRpdmUiKQpsb2NhbCBoYXNjcHAgICAgPSBwcmVtYWtlLmhhc2NwcHByb2plY3Qoc2xuKQpsb2NhbCBoYXNkb3RuZXQgPSBwcmVtYWtlLmhhc2RvdG5ldHByb2plY3Qoc2xuKQppZiBoYXNkb3RuZXQgYW5kIChfQUNUSU9OID4gInZzMjAwOCIgb3IgaGFzY3BwKSB0aGVuCnRhYmxlLmluc2VydChwbGF0Zm9ybXMsIDEsICJtaXhlZCIpCmVuZAppZiBoYXNkb3RuZXQgYW5kIChfQUNUSU9OIDwgInZzMjAxMCIgb3Igbm90IGhhc2NwcCkgdGhlbgp0YWJsZS5pbnNlcnQocGxhdGZvcm1zLCAxLCAiYW55IikKZW5kCmlmIF9BQ1RJT04gPiAidnMyMDA4IiB0aGVuCmxvY2FsIHBsYXRmb3JtczIwMTAgPSB7IH0KZm9yIF8sIHBsYXRmb3JtIGluIGlwYWlycyhwbGF0Zm9ybXMpIGRvCmlmIHZzdHVkaW8ucGxhdGZvcm1zW3BsYXRmb3JtXSA9PSAiV2luMzIiIHRoZW4KaWYgaGFzY3BwIHRoZW4KdGFibGUuaW5zZXJ0KHBsYXRmb3JtczIwMTAsIHBsYXRmb3JtKQplbmQKaWYgaGFzZG90bmV0IHRoZW4KdGFibGUuaW5zZXJ0KHBsYXRmb3JtczIwMTAsICJ4ODYiKQplbmQKZWxzZQp0YWJsZS5pbnNlcnQocGxhdGZvcm1zMjAxMCwgcGxhdGZvcm0pCmVuZAplbmQKcGxhdGZvcm1zID0gcGxhdGZvcm1zMjAxMAplbmQKZm9yIF8sIGJ1aWxkY2ZnIGluIGlwYWlycyhzbG4uY29uZmlndXJhdGlvbnMpIGRvCmZvciBfLCBwbGF0Zm9ybSBpbiBpcGFpcnMocGxhdGZvcm1zKSBkbwpsb2NhbCBlbnRyeSA9IHsgfQplbnRyeS5zcmNfYnVpbGRjZmcgPSBidWlsZGNmZwplbnRyeS5zcmNfcGxhdGZvcm0gPSBwbGF0Zm9ybQppZiBwbGF0Zm9ybSB+PSAiUFMzIiBvciBfQUNUSU9OID4gInZzMjAwOCIgdGhlbgplbnRyeS5idWlsZGNmZyA9IGJ1aWxkY2ZnCmVudHJ5LnBsYXRmb3JtID0gdnN0dWRpby5wbGF0Zm9ybXNbcGxhdGZvcm1dCmVsc2UKZW50cnkuYnVpbGRjZmcgPSBwbGF0Zm9ybSAuLiAiICIgLi4gYnVpbGRjZmcKZW50cnkucGxhdGZvcm0gPSAiV2luMzIiCmVuZAplbnRyeS5uYW1lID0gZW50cnkuYnVpbGRjZmcgLi4gInwiIC4uIGVudHJ5LnBsYXRmb3JtCmVudHJ5LmlzcmVhbCA9IChwbGF0Zm9ybSB+PSAiYW55IiBhbmQgcGxhdGZvcm0gfj0gIm1peGVkIikKdGFibGUuaW5zZXJ0KGNmZ3MsIGVudHJ5KQplbmQKZW5kCnJldHVybiBjZmdzCmVuZApmdW5jdGlvbiB2c3R1ZGlvLmNsZWFuc29sdXRpb24oc2xuKQpwcmVtYWtlLmNsZWFuLmZpbGUoc2xuLCAiJSUuc2xuIikKcHJlbWFrZS5jbGVhbi5maWxlKHNsbiwgIiUlLnN1byIpCnByZW1ha2UuY2xlYW4uZmlsZShzbG4sICIlJS5uY2IiKQpwcmVtYWtlLmNsZWFuLmZpbGUoc2xuLCAiJSUudXNlcnByZWZzIikKcHJlbWFrZS5jbGVhbi5maWxlKHNsbiwgIiUlLnVzZXJ0YXNrcyIpCmVuZApmdW5jdGlvbiB2c3R1ZGlvLmNsZWFucHJvamVjdChwcmopCmxvY2FsIGZuYW1lID0gcHJlbWFrZS5wcm9qZWN0LmdldGZpbGVuYW1lKHByaiwgIiUlIikKb3MucmVtb3ZlKGZuYW1lIC4uICIudmNwcm9qIikKb3MucmVtb3ZlKGZuYW1lIC4uICIudmNwcm9qLnVzZXIiKQpvcy5yZW1vdmUoZm5hbWUgLi4gIi52Y3hwcm9qIikKb3MucmVtb3ZlKGZuYW1lIC4uICIudmN4cHJvai51c2VyIikKb3MucmVtb3ZlKGZuYW1lIC4uICIudmN4cHJvai5maWx0ZXJzIikKb3MucmVtb3ZlKGZuYW1lIC4uICIuY3Nwcm9qIikKb3MucmVtb3ZlKGZuYW1lIC4uICIuY3Nwcm9qLnVzZXIiKQpvcy5yZW1vdmUoZm5hbWUgLi4gIi5waWRiIikKb3MucmVtb3ZlKGZuYW1lIC4uICIuc2RmIikKZW5kCmZ1bmN0aW9uIHZzdHVkaW8uY2xlYW50YXJnZXQobmFtZSkKb3MucmVtb3ZlKG5hbWUgLi4gIi5wZGIiKQpvcy5yZW1vdmUobmFtZSAuLiAiLmlkYiIpCm9zLnJlbW92ZShuYW1lIC4uICIuaWxrIikKb3MucmVtb3ZlKG5hbWUgLi4gIi52c2hvc3QuZXhlIikKb3MucmVtb3ZlKG5hbWUgLi4gIi5leGUubWFuaWZlc3QiKQplbmQKZnVuY3Rpb24gdnN0dWRpby5wcm9qZWN0ZmlsZShwcmopCmxvY2FsIHBhdHRlcm4KaWYgcHJqLmxhbmd1YWdlID09ICJDIyIgdGhlbgpwYXR0ZXJuID0gIiUlLmNzcHJvaiIKZWxzZQpwYXR0ZXJuID0gaWlmKF9BQ1RJT04gPiAidnMyMDA4IiwgIiUlLnZjeHByb2oiLCAiJSUudmNwcm9qIikKZW5kCmxvY2FsIGZuYW1lID0gcHJlbWFrZS5wcm9qZWN0LmdldGJhc2VuYW1lKHByai5uYW1lLCBwYXR0ZXJuKQpmbmFtZSA9IHBhdGguam9pbihwcmoubG9jYXRpb24sIGZuYW1lKQpyZXR1cm4gZm5hbWUKZW5kCmZ1bmN0aW9uIHZzdHVkaW8udG9vbChwcmopCmlmIChwcmoubGFuZ3VhZ2UgPT0gIkMjIikgdGhlbgpyZXR1cm4gIkZBRTA0RUMwLTMwMUYtMTFEMy1CRjRCLTAwQzA0Rjc5RUZCQyIKZWxzZQpyZXR1cm4gIjhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0MiIKZW5kCmVuZApuZXdhY3Rpb24gewp0cmlnZ2VyICAgICAgICAgPSAidnMyMDAyIiwKc2hvcnRuYW1lICAgICAgID0gIlZpc3VhbCBTdHVkaW8gMjAwMiIsCmRlc2NyaXB0aW9uICAgICA9ICJHZW5lcmF0ZSBNaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyAyMDAyIHByb2plY3QgZmlsZXMiLApvcyAgICAgICAgICAgICAgPSAid2luZG93cyIsCnZhbGlkX2tpbmRzICAgICA9IHsgIkNvbnNvbGVBcHAiLCAiV2luZG93ZWRBcHAiLCAiU3RhdGljTGliIiwgIlNoYXJlZExpYiIgfSwKdmFsaWRfbGFuZ3VhZ2VzID0geyAiQyIsICJDKysiLCAiQyMiIH0sCnZhbGlkX3Rvb2xzICAgICA9IHsKY2MgICAgID0geyAibXNjIiAgIH0sCmRvdG5ldCA9IHsgIm1zbmV0IiB9LAp9LApvbnNvbHV0aW9uID0gZnVuY3Rpb24oc2xuKQpwcmVtYWtlLmdlbmVyYXRlKHNsbiwgIiUlLnNsbiIsIHZzdHVkaW8uc2xuMjAwMi5nZW5lcmF0ZSkKZW5kLApvbnByb2plY3QgPSBmdW5jdGlvbihwcmopCmlmIHByZW1ha2UuaXNkb3RuZXRwcm9qZWN0KHByaikgdGhlbgpwcmVtYWtlLmdlbmVyYXRlKHByaiwgIiUlLmNzcHJvaiIsIHZzdHVkaW8uY3MyMDAyLmdlbmVyYXRlKQpwcmVtYWtlLmdlbmVyYXRlKHByaiwgIiUlLmNzcHJvai51c2VyIiwgdnN0dWRpby5jczIwMDIuZ2VuZXJhdGVfdXNlcikKZWxzZQpwcmVtYWtlLmdlbmVyYXRlKHByaiwgIiUlLnZjcHJvaiIsIHZzdHVkaW8udmMyMDB4LmdlbmVyYXRlKQpwcmVtYWtlLmdlbmVyYXRlKHByaiwgIiUlLnZjcHJvai51c2VyIiwgdnN0dWRpby52YzIwMHguZ2VuZXJhdGVfdXNlcikKZW5kCmVuZCwKb25jbGVhbnNvbHV0aW9uID0gcHJlbWFrZS52c3R1ZGlvLmNsZWFuc29sdXRpb24sCm9uY2xlYW5wcm9qZWN0ICA9IHByZW1ha2UudnN0dWRpby5jbGVhbnByb2plY3QsCm9uY2xlYW50YXJnZXQgICA9IHByZW1ha2UudnN0dWRpby5jbGVhbnRhcmdldCwKdnN0dWRpbyA9IHt9Cn0KbmV3YWN0aW9uIHsKdHJpZ2dlciAgICAgICAgID0gInZzMjAwMyIsCnNob3J0bmFtZSAgICAgICA9ICJWaXN1YWwgU3R1ZGlvIDIwMDMiLApkZXNjcmlwdGlvbiAgICAgPSAiR2VuZXJhdGUgTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gMjAwMyBwcm9qZWN0IGZpbGVzIiwKb3MgICAgICAgICAgICAgID0gIndpbmRvd3MiLAp2YWxpZF9raW5kcyAgICAgPSB7ICJDb25zb2xlQXBwIiwgIldpbmRvd2VkQXBwIiwgIlN0YXRpY0xpYiIsICJTaGFyZWRMaWIiIH0sCnZhbGlkX2xhbmd1YWdlcyA9IHsgIkMiLCAiQysrIiwgIkMjIiB9LAp2YWxpZF90b29scyAgICAgPSB7CmNjICAgICA9IHsgIm1zYyIgICB9LApkb3RuZXQgPSB7ICJtc25ldCIgfSwKfSwKb25zb2x1dGlvbiA9IGZ1bmN0aW9uKHNsbikKcHJlbWFrZS5nZW5lcmF0ZShzbG4sICIlJS5zbG4iLCB2c3R1ZGlvLnNsbjIwMDMuZ2VuZXJhdGUpCmVuZCwKb25wcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQppZiBwcmVtYWtlLmlzZG90bmV0cHJvamVjdChwcmopIHRoZW4KcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS5jc3Byb2oiLCB2c3R1ZGlvLmNzMjAwMi5nZW5lcmF0ZSkKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS5jc3Byb2oudXNlciIsIHZzdHVkaW8uY3MyMDAyLmdlbmVyYXRlX3VzZXIpCmVsc2UKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS52Y3Byb2oiLCB2c3R1ZGlvLnZjMjAweC5nZW5lcmF0ZSkKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS52Y3Byb2oudXNlciIsIHZzdHVkaW8udmMyMDB4LmdlbmVyYXRlX3VzZXIpCmVuZAplbmQsCm9uY2xlYW5zb2x1dGlvbiA9IHByZW1ha2UudnN0dWRpby5jbGVhbnNvbHV0aW9uLApvbmNsZWFucHJvamVjdCAgPSBwcmVtYWtlLnZzdHVkaW8uY2xlYW5wcm9qZWN0LApvbmNsZWFudGFyZ2V0ICAgPSBwcmVtYWtlLnZzdHVkaW8uY2xlYW50YXJnZXQsCnZzdHVkaW8gPSB7fQp9Cm5ld2FjdGlvbiB7CnRyaWdnZXIgICAgICAgICA9ICJ2czIwMDUiLApzaG9ydG5hbWUgICAgICAgPSAiVmlzdWFsIFN0dWRpbyAyMDA1IiwKZGVzY3JpcHRpb24gICAgID0gIkdlbmVyYXRlIE1pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIDIwMDUgcHJvamVjdCBmaWxlcyIsCm9zICAgICAgICAgICAgICA9ICJ3aW5kb3dzIiwKdmFsaWRfa2luZHMgICAgID0geyAiQ29uc29sZUFwcCIsICJXaW5kb3dlZEFwcCIsICJTdGF0aWNMaWIiLCAiU2hhcmVkTGliIiB9LAp2YWxpZF9sYW5ndWFnZXMgPSB7ICJDIiwgIkMrKyIsICJDIyIgfSwKdmFsaWRfdG9vbHMgICAgID0gewpjYyAgICAgPSB7ICJtc2MiICAgfSwKZG90bmV0ID0geyAibXNuZXQiIH0sCn0sCm9uc29sdXRpb24gPSBmdW5jdGlvbihzbG4pCnByZW1ha2UuZ2VuZXJhdGUoc2xuLCAiJSUuc2xuIiwgdnN0dWRpby5zbG4yMDA1LmdlbmVyYXRlKQplbmQsCm9ucHJvamVjdCA9IGZ1bmN0aW9uKHByaikKaWYgcHJlbWFrZS5pc2RvdG5ldHByb2plY3QocHJqKSB0aGVuCnByZW1ha2UuZ2VuZXJhdGUocHJqLCAiJSUuY3Nwcm9qIiwgdnN0dWRpby5jczIwMDUuZ2VuZXJhdGUpCnByZW1ha2UuZ2VuZXJhdGUocHJqLCAiJSUuY3Nwcm9qLnVzZXIiLCB2c3R1ZGlvLmNzMjAwNS5nZW5lcmF0ZV91c2VyKQplbHNlCnByZW1ha2UuZ2VuZXJhdGUocHJqLCAiJSUudmNwcm9qIiwgdnN0dWRpby52YzIwMHguZ2VuZXJhdGUpCnByZW1ha2UuZ2VuZXJhdGUocHJqLCAiJSUudmNwcm9qLnVzZXIiLCB2c3R1ZGlvLnZjMjAweC5nZW5lcmF0ZV91c2VyKQplbmQKZW5kLApvbmNsZWFuc29sdXRpb24gPSB2c3R1ZGlvLmNsZWFuc29sdXRpb24sCm9uY2xlYW5wcm9qZWN0ICA9IHZzdHVkaW8uY2xlYW5wcm9qZWN0LApvbmNsZWFudGFyZ2V0ICAgPSB2c3R1ZGlvLmNsZWFudGFyZ2V0LAp2c3R1ZGlvID0gewpwcm9kdWN0VmVyc2lvbiAgPSAiOC4wLjUwNzI3IiwKc29sdXRpb25WZXJzaW9uID0gIjkiLAp9Cn0KbmV3YWN0aW9uIHsKdHJpZ2dlciAgICAgICAgID0gInZzMjAwOCIsCnNob3J0bmFtZSAgICAgICA9ICJWaXN1YWwgU3R1ZGlvIDIwMDgiLApkZXNjcmlwdGlvbiAgICAgPSAiR2VuZXJhdGUgTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gMjAwOCBwcm9qZWN0IGZpbGVzIiwKb3MgICAgICAgICAgICAgID0gIndpbmRvd3MiLAp2YWxpZF9raW5kcyAgICAgPSB7ICJDb25zb2xlQXBwIiwgIldpbmRvd2VkQXBwIiwgIlN0YXRpY0xpYiIsICJTaGFyZWRMaWIiIH0sCnZhbGlkX2xhbmd1YWdlcyA9IHsgIkMiLCAiQysrIiwgIkMjIiB9LAp2YWxpZF90b29scyAgICAgPSB7CmNjICAgICA9IHsgIm1zYyIgICB9LApkb3RuZXQgPSB7ICJtc25ldCIgfSwKfSwKb25zb2x1dGlvbiA9IGZ1bmN0aW9uKHNsbikKcHJlbWFrZS5nZW5lcmF0ZShzbG4sICIlJS5zbG4iLCB2c3R1ZGlvLnNsbjIwMDUuZ2VuZXJhdGUpCmVuZCwKb25wcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQppZiBwcmVtYWtlLmlzZG90bmV0cHJvamVjdChwcmopIHRoZW4KcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS5jc3Byb2oiLCB2c3R1ZGlvLmNzMjAwNS5nZW5lcmF0ZSkKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS5jc3Byb2oudXNlciIsIHZzdHVkaW8uY3MyMDA1LmdlbmVyYXRlX3VzZXIpCmVsc2UKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS52Y3Byb2oiLCB2c3R1ZGlvLnZjMjAweC5nZW5lcmF0ZSkKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS52Y3Byb2oudXNlciIsIHZzdHVkaW8udmMyMDB4LmdlbmVyYXRlX3VzZXIpCmVuZAplbmQsCm9uY2xlYW5zb2x1dGlvbiA9IHZzdHVkaW8uY2xlYW5zb2x1dGlvbiwKb25jbGVhbnByb2plY3QgID0gdnN0dWRpby5jbGVhbnByb2plY3QsCm9uY2xlYW50YXJnZXQgICA9IHZzdHVkaW8uY2xlYW50YXJnZXQsCnZzdHVkaW8gPSB7CnByb2R1Y3RWZXJzaW9uICA9ICI5LjAuMjEwMjIiLApzb2x1dGlvblZlcnNpb24gPSAiMTAiLAp0b29sc1ZlcnNpb24gICAgPSAiMy41IiwKfQp9Cm5ld2FjdGlvbgp7CnRyaWdnZXIgICAgICAgICA9ICJ2czIwMTAiLApzaG9ydG5hbWUgICAgICAgPSAiVmlzdWFsIFN0dWRpbyAyMDEwIiwKZGVzY3JpcHRpb24gICAgID0gIkdlbmVyYXRlIE1pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIDIwMTAgcHJvamVjdCBmaWxlcyIsCm9zICAgICAgICAgICAgICA9ICJ3aW5kb3dzIiwKdmFsaWRfa2luZHMgICAgID0geyAiQ29uc29sZUFwcCIsICJXaW5kb3dlZEFwcCIsICJTdGF0aWNMaWIiLCAiU2hhcmVkTGliIiB9LAp2YWxpZF9sYW5ndWFnZXMgPSB7ICJDIiwgIkMrKyIsICJDIyJ9LAp2YWxpZF90b29scyAgICAgPSB7CmNjICAgICA9IHsgIm1zYyIgICB9LApkb3RuZXQgPSB7ICJtc25ldCIgfSwKfSwKb25zb2x1dGlvbiA9IGZ1bmN0aW9uKHNsbikKcHJlbWFrZS5nZW5lcmF0ZShzbG4sICIlJS5zbG4iLCB2c3R1ZGlvLnNsbjIwMDUuZ2VuZXJhdGUpCmVuZCwKb25wcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQppZiBwcmVtYWtlLmlzZG90bmV0cHJvamVjdChwcmopIHRoZW4KcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS5jc3Byb2oiLCB2c3R1ZGlvLmNzMjAwNS5nZW5lcmF0ZSkKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS5jc3Byb2oudXNlciIsIHZzdHVkaW8uY3MyMDA1LmdlbmVyYXRlX3VzZXIpCmVsc2UKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS52Y3hwcm9qIiwgcHJlbWFrZS52czIwMTBfdmN4cHJvaikKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS52Y3hwcm9qLnVzZXIiLCBwcmVtYWtlLnZzMjAxMF92Y3hwcm9qX3VzZXIpCnByZW1ha2UuZ2VuZXJhdGUocHJqLCAiJSUudmN4cHJvai5maWx0ZXJzIiwgdnN0dWRpby52YzIwMTAuZ2VuZXJhdGVfZmlsdGVycykKZW5kCmVuZCwKb25jbGVhbnNvbHV0aW9uID0gcHJlbWFrZS52c3R1ZGlvLmNsZWFuc29sdXRpb24sCm9uY2xlYW5wcm9qZWN0ICA9IHByZW1ha2UudnN0dWRpby5jbGVhbnByb2plY3QsCm9uY2xlYW50YXJnZXQgICA9IHByZW1ha2UudnN0dWRpby5jbGVhbnRhcmdldCwKdnN0dWRpbyA9IHsKcHJvZHVjdFZlcnNpb24gID0gIjguMC4zMDcwMyIsCnNvbHV0aW9uVmVyc2lvbiA9ICIxMSIsCnRhcmdldEZyYW1ld29yayA9ICI0LjAiLAp0b29sc1ZlcnNpb24gICAgPSAiNC4wIiwKfQp9CgBwcmVtYWtlLnZzdHVkaW8uc2xuMjAwMiA9IHsgfQpsb2NhbCB2c3R1ZGlvID0gcHJlbWFrZS52c3R1ZGlvCmxvY2FsIHNsbjIwMDIgPSBwcmVtYWtlLnZzdHVkaW8uc2xuMjAwMgpmdW5jdGlvbiBzbG4yMDAyLmdlbmVyYXRlKHNsbikKaW8uZW9sID0gJ1xyXG4nCnNsbi52c3R1ZGlvX2NvbmZpZ3MgPSBwcmVtYWtlLnZzdHVkaW8uYnVpbGRjb25maWdzKHNsbikKX3AoJ01pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIFNvbHV0aW9uIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDcuMDAnKQpmb3IgcHJqIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaHByb2plY3Qoc2xuKSBkbwpsb2NhbCBwcm9qcGF0aCA9IHBhdGgudHJhbnNsYXRlKHBhdGguZ2V0cmVsYXRpdmUoc2xuLmxvY2F0aW9uLCB2c3R1ZGlvLnByb2plY3RmaWxlKHByaikpKQpfcCgnUHJvamVjdCgieyVzfSIpID0gIiVzIiwgIiVzIiwgInslc30iJywgdnN0dWRpby50b29sKHByaiksIHByai5uYW1lLCBwcm9qcGF0aCwgcHJqLnV1aWQpCl9wKCdFbmRQcm9qZWN0JykKZW5kCl9wKCdHbG9iYWwnKQpfcCgxLCdHbG9iYWxTZWN0aW9uKFNvbHV0aW9uQ29uZmlndXJhdGlvbikgPSBwcmVTb2x1dGlvbicpCmZvciBpLCBjZmduYW1lIGluIGlwYWlycyhzbG4uY29uZmlndXJhdGlvbnMpIGRvCl9wKDIsJ0NvbmZpZ05hbWUuJWQgPSAlcycsIGkgLSAxLCBjZmduYW1lKQplbmQKX3AoMSwnRW5kR2xvYmFsU2VjdGlvbicpCl9wKDEsJ0dsb2JhbFNlY3Rpb24oUHJvamVjdERlcGVuZGVuY2llcykgPSBwb3N0U29sdXRpb24nKQpfcCgxLCdFbmRHbG9iYWxTZWN0aW9uJykKX3AoMSwnR2xvYmFsU2VjdGlvbihQcm9qZWN0Q29uZmlndXJhdGlvbikgPSBwb3N0U29sdXRpb24nKQpmb3IgcHJqIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaHByb2plY3Qoc2xuKSBkbwpmb3IgXywgY2ZnbmFtZSBpbiBpcGFpcnMoc2xuLmNvbmZpZ3VyYXRpb25zKSBkbwpfcCgyLCd7JXN9LiVzLkFjdGl2ZUNmZyA9ICVzfCVzJywgcHJqLnV1aWQsIGNmZ25hbWUsIGNmZ25hbWUsIHZzdHVkaW8uYXJjaChwcmopKQpfcCgyLCd7JXN9LiVzLkJ1aWxkLjAgPSAlc3wlcycsIHByai51dWlkLCBjZmduYW1lLCBjZmduYW1lLCB2c3R1ZGlvLmFyY2gocHJqKSkKZW5kCmVuZApfcCgxLCdFbmRHbG9iYWxTZWN0aW9uJykKX3AoMSwnR2xvYmFsU2VjdGlvbihFeHRlbnNpYmlsaXR5R2xvYmFscykgPSBwb3N0U29sdXRpb24nKQpfcCgxLCdFbmRHbG9iYWxTZWN0aW9uJykKX3AoMSwnR2xvYmFsU2VjdGlvbihFeHRlbnNpYmlsaXR5QWRkSW5zKSA9IHBvc3RTb2x1dGlvbicpCl9wKDEsJ0VuZEdsb2JhbFNlY3Rpb24nKQpfcCgnRW5kR2xvYmFsJykKZW5kCgBwcmVtYWtlLnZzdHVkaW8uY3MyMDAyID0geyB9CmxvY2FsIHZzdHVkaW8gPSBwcmVtYWtlLnZzdHVkaW8KbG9jYWwgY3MyMDAyID0gcHJlbWFrZS52c3R1ZGlvLmNzMjAwMgpsb2NhbCBmdW5jdGlvbiBnZXRlbGVtZW50cyhwcmosIGFjdGlvbiwgZm5hbWUpCmlmIGFjdGlvbiA9PSAiQ29tcGlsZSIgYW5kIGZuYW1lOmVuZHN3aXRoKCIuY3MiKSB0aGVuCnJldHVybiAiU3ViVHlwZUNvZGUiCmVuZAppZiBhY3Rpb24gPT0gIkVtYmVkZGVkUmVzb3VyY2UiIGFuZCBmbmFtZTplbmRzd2l0aCgiLnJlc3giKSB0aGVuCmxvY2FsIGJhc2VuYW1lID0gZm5hbWU6c3ViKDEsIC02KQpsb2NhbCB0ZXN0bmFtZSA9IHBhdGguZ2V0bmFtZShiYXNlbmFtZSAuLiAiLmNzIikKaWYgcHJlbWFrZS5maW5kZmlsZShwcmosIHRlc3RuYW1lKSB0aGVuCnJldHVybiAiRGVwZW5kZW5jeSIsIHRlc3RuYW1lCmVuZAplbmQKcmV0dXJuICJOb25lIgplbmQKZnVuY3Rpb24gY3MyMDAyLkZpbGVzKHByaikKbG9jYWwgdHIgPSBwcmVtYWtlLnByb2plY3QuYnVpbGRzb3VyY2V0cmVlKHByaikKcHJlbWFrZS50cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubGVhZiA9IGZ1bmN0aW9uKG5vZGUpCmxvY2FsIGFjdGlvbiA9IHByZW1ha2UuZG90bmV0LmdldGJ1aWxkYWN0aW9uKG5vZGUuY2ZnKQpsb2NhbCBmbmFtZSAgPSBwYXRoLnRyYW5zbGF0ZShwcmVtYWtlLmVzYyhub2RlLmNmZy5uYW1lKSwgIlxcIikKbG9jYWwgZWxlbWVudHMsIGRlcGVuZGVuY3kgPSBnZXRlbGVtZW50cyhwcmosIGFjdGlvbiwgbm9kZS5wYXRoKQpfcCg0LCc8RmlsZScpCl9wKDUsJ1JlbFBhdGggPSAiJXMiJywgZm5hbWUpCl9wKDUsJ0J1aWxkQWN0aW9uID0gIiVzIicsIGFjdGlvbikKaWYgZGVwZW5kZW5jeSB0aGVuCl9wKDUsJ0RlcGVuZGVudFVwb24gPSAiJXMiJywgcHJlbWFrZS5lc2MocGF0aC50cmFuc2xhdGUoZGVwZW5kZW5jeSwgIlxcIikpKQplbmQKaWYgZWxlbWVudHMgPT0gIlN1YlR5cGVDb2RlIiB0aGVuCl9wKDUsJ1N1YlR5cGUgPSAiQ29kZSInKQplbmQKX3AoNCwnLz4nKQplbmQKfSwgZmFsc2UpCmVuZApmdW5jdGlvbiBjczIwMDIuZ2VuZXJhdGUocHJqKQppby5lb2wgPSAiXHJcbiIKX3AoJzxWaXN1YWxTdHVkaW9Qcm9qZWN0PicpCl9wKDEsJzxDU0hBUlAnKQpfcCgyLCdQcm9qZWN0VHlwZSA9ICJMb2NhbCInKQpfcCgyLCdQcm9kdWN0VmVyc2lvbiA9ICIlcyInLCBpaWYoX0FDVElPTiA9PSAidnMyMDAyIiwgIjcuMC45MjU0IiwgIjcuMTAuMzA3NyIpKQpfcCgyLCdTY2hlbWFWZXJzaW9uID0gIiVzIicsIGlpZihfQUNUSU9OID09ICJ2czIwMDIiLCAiMS4wIiwgIjIuMCIpKQpfcCgyLCdQcm9qZWN0R3VpZCA9ICJ7JXN9IicsIHByai51dWlkKQpfcCgxLCc+JykKX3AoMiwnPEJ1aWxkPicpCl9wKDMsJzxTZXR0aW5ncycpCl9wKDQsJ0FwcGxpY2F0aW9uSWNvbiA9ICIiJykKX3AoNCwnQXNzZW1ibHlLZXlDb250YWluZXJOYW1lID0gIiInKQpfcCg0LCdBc3NlbWJseU5hbWUgPSAiJXMiJywgcHJqLmJ1aWxkdGFyZ2V0LmJhc2VuYW1lKQpfcCg0LCdBc3NlbWJseU9yaWdpbmF0b3JLZXlGaWxlID0gIiInKQpfcCg0LCdEZWZhdWx0Q2xpZW50U2NyaXB0ID0gIkpTY3JpcHQiJykKX3AoNCwnRGVmYXVsdEhUTUxQYWdlTGF5b3V0ID0gIkdyaWQiJykKX3AoNCwnRGVmYXVsdFRhcmdldFNjaGVtYSA9ICJJRTUwIicpCl9wKDQsJ0RlbGF5U2lnbiA9ICJmYWxzZSInKQppZiBfQUNUSU9OID09ICJ2czIwMDIiIHRoZW4KX3AoNCwnTm9TdGFuZGFyZExpYnJhcmllcyA9ICJmYWxzZSInKQplbmQKX3AoNCwnT3V0cHV0VHlwZSA9ICIlcyInLCBwcmVtYWtlLmRvdG5ldC5nZXRraW5kKHByaikpCmlmIF9BQ1RJT04gPT0gInZzMjAwMyIgdGhlbgpfcCg0LCdQcmVCdWlsZEV2ZW50ID0gIiInKQpfcCg0LCdQb3N0QnVpbGRFdmVudCA9ICIiJykKZW5kCl9wKDQsJ1Jvb3ROYW1lc3BhY2UgPSAiJXMiJywgcHJqLmJ1aWxkdGFyZ2V0LmJhc2VuYW1lKQppZiBfQUNUSU9OID09ICJ2czIwMDMiIHRoZW4KX3AoNCwnUnVuUG9zdEJ1aWxkRXZlbnQgPSAiT25CdWlsZFN1Y2Nlc3MiJykKZW5kCl9wKDQsJ1N0YXJ0dXBPYmplY3QgPSAiIicpCl9wKDMsJz4nKQpmb3IgY2ZnIGluIHByZW1ha2UuZWFjaGNvbmZpZyhwcmopIGRvCl9wKDQsJzxDb25maWcnKQpfcCg1LCdOYW1lID0gIiVzIicsIHByZW1ha2UuZXNjKGNmZy5uYW1lKSkKX3AoNSwnQWxsb3dVbnNhZmVCbG9ja3MgPSAiJXMiJywgaWlmKGNmZy5mbGFncy5VbnNhZmUsICJ0cnVlIiwgImZhbHNlIikpCl9wKDUsJ0Jhc2VBZGRyZXNzID0gIjI4NTIxMjY3MiInKQpfcCg1LCdDaGVja0Zvck92ZXJmbG93VW5kZXJmbG93ID0gImZhbHNlIicpCl9wKDUsJ0NvbmZpZ3VyYXRpb25PdmVycmlkZUZpbGUgPSAiIicpCl9wKDUsJ0RlZmluZUNvbnN0YW50cyA9ICIlcyInLCBwcmVtYWtlLmVzYyh0YWJsZS5jb25jYXQoY2ZnLmRlZmluZXMsICI7IikpKQpfcCg1LCdEb2N1bWVudGF0aW9uRmlsZSA9ICIiJykKX3AoNSwnRGVidWdTeW1ib2xzID0gIiVzIicsIGlpZihjZmcuZmxhZ3MuU3ltYm9scywgInRydWUiLCAiZmFsc2UiKSkKX3AoNSwnRmlsZUFsaWdubWVudCA9ICI0MDk2IicpCl9wKDUsJ0luY3JlbWVudGFsQnVpbGQgPSAiZmFsc2UiJykKaWYgX0FDVElPTiA9PSAidnMyMDAzIiB0aGVuCl9wKDUsJ05vU3RkTGliID0gImZhbHNlIicpCl9wKDUsJ05vV2FybiA9ICIiJykKZW5kCl9wKDUsJ09wdGltaXplID0gIiVzIicsIGlpZihjZmcuZmxhZ3MuT3B0aW1pemUgb3IgY2ZnLmZsYWdzLk9wdGltaXplU2l6ZSBvciBjZmcuZmxhZ3MuT3B0aW1pemVTcGVlZCwgInRydWUiLCAiZmFsc2UiKSkKX3AoNSwnT3V0cHV0UGF0aCA9ICIlcyInLCBwcmVtYWtlLmVzYyhjZmcuYnVpbGR0YXJnZXQuZGlyZWN0b3J5KSkKX3AoNSwnUmVnaXN0ZXJGb3JDb21JbnRlcm9wID0gImZhbHNlIicpCl9wKDUsJ1JlbW92ZUludGVnZXJDaGVja3MgPSAiZmFsc2UiJykKX3AoNSwnVHJlYXRXYXJuaW5nc0FzRXJyb3JzID0gIiVzIicsIGlpZihjZmcuZmxhZ3MuRmF0YWxXYXJuaW5ncywgInRydWUiLCAiZmFsc2UiKSkKX3AoNSwnV2FybmluZ0xldmVsID0gIjQiJykKX3AoNCwnLz4nKQplbmQKX3AoMywnPC9TZXR0aW5ncz4nKQpfcCgzLCc8UmVmZXJlbmNlcz4nKQpmb3IgXywgcmVmIGluIGlwYWlycyhwcmVtYWtlLmdldGxpbmtzKHByaiwgInNpYmxpbmdzIiwgIm9iamVjdCIpKSBkbwpfcCg0LCc8UmVmZXJlbmNlJykKX3AoNSwnTmFtZSA9ICIlcyInLCByZWYuYnVpbGR0YXJnZXQuYmFzZW5hbWUpCl9wKDUsJ1Byb2plY3QgPSAieyVzfSInLCByZWYudXVpZCkKX3AoNSwnUGFja2FnZSA9ICJ7JXN9IicsIHZzdHVkaW8udG9vbChyZWYpKQpfcCg0LCcvPicpCmVuZApmb3IgXywgbGlua25hbWUgaW4gaXBhaXJzKHByZW1ha2UuZ2V0bGlua3MocHJqLCAic3lzdGVtIiwgImZ1bGxwYXRoIikpIGRvCl9wKDQsJzxSZWZlcmVuY2UnKQpfcCg1LCdOYW1lID0gIiVzIicsIHBhdGguZ2V0YmFzZW5hbWUobGlua25hbWUpKQpfcCg1LCdBc3NlbWJseU5hbWUgPSAiJXMiJywgcGF0aC5nZXRuYW1lKGxpbmtuYW1lKSkKaWYgcGF0aC5nZXRkaXJlY3RvcnkobGlua25hbWUpIH49ICIuIiB0aGVuCl9wKDUsJ0hpbnRQYXRoID0gIiVzIicsIHBhdGgudHJhbnNsYXRlKGxpbmtuYW1lLCAiXFwiKSkKZW5kCl9wKDQsJy8+JykKZW5kCl9wKDMsJzwvUmVmZXJlbmNlcz4nKQpfcCgyLCc8L0J1aWxkPicpCl9wKDIsJzxGaWxlcz4nKQpfcCgzLCc8SW5jbHVkZT4nKQpjczIwMDIuRmlsZXMocHJqKQpfcCgzLCc8L0luY2x1ZGU+JykKX3AoMiwnPC9GaWxlcz4nKQpfcCgxLCc8L0NTSEFSUD4nKQpfcCgnPC9WaXN1YWxTdHVkaW9Qcm9qZWN0PicpCmVuZAoAbG9jYWwgY3MyMDAyID0gcHJlbWFrZS52c3R1ZGlvLmNzMjAwMgpmdW5jdGlvbiBjczIwMDIuZ2VuZXJhdGVfdXNlcihwcmopCmlvLmVvbCA9ICJcclxuIgpfcCgnPFZpc3VhbFN0dWRpb1Byb2plY3Q+JykKX3AoMSwnPENTSEFSUD4nKQpfcCgyLCc8QnVpbGQ+JykKbG9jYWwgcmVmcGF0aHMgPSB0YWJsZS50cmFuc2xhdGUocHJqLmxpYmRpcnMsIGZ1bmN0aW9uKHYpIHJldHVybiBwYXRoLmdldGFic29sdXRlKHByai5sb2NhdGlvbiAuLiAiLyIgLi4gdikgZW5kKQpfcCgzLCc8U2V0dGluZ3MgUmVmZXJlbmNlUGF0aCA9ICIlcyI+JywgcGF0aC50cmFuc2xhdGUodGFibGUuY29uY2F0KHJlZnBhdGhzLCAiOyIpLCAiXFwiKSkKZm9yIGNmZyBpbiBwcmVtYWtlLmVhY2hjb25maWcocHJqKSBkbwpfcCg0LCc8Q29uZmlnJykKX3AoNSwnTmFtZSA9ICIlcyInLCBwcmVtYWtlLmVzYyhjZmcubmFtZSkpCl9wKDUsJ0VuYWJsZUFTUERlYnVnZ2luZyA9ICJmYWxzZSInKQpfcCg1LCdFbmFibGVBU1BYRGVidWdnaW5nID0gImZhbHNlIicpCl9wKDUsJ0VuYWJsZVVubWFuYWdlZERlYnVnZ2luZyA9ICJmYWxzZSInKQpfcCg1LCdFbmFibGVTUUxTZXJ2ZXJEZWJ1Z2dpbmcgPSAiZmFsc2UiJykKX3AoNSwnUmVtb3RlRGVidWdFbmFibGVkID0gImZhbHNlIicpCl9wKDUsJ1JlbW90ZURlYnVnTWFjaGluZSA9ICIiJykKX3AoNSwnU3RhcnRBY3Rpb24gPSAiUHJvamVjdCInKQpfcCg1LCdTdGFydEFyZ3VtZW50cyA9ICIiJykKX3AoNSwnU3RhcnRQYWdlID0gIiInKQpfcCg1LCdTdGFydFByb2dyYW0gPSAiIicpCl9wKDUsJ1N0YXJ0VVJMID0gIiInKQpfcCg1LCdTdGFydFdvcmtpbmdEaXJlY3RvcnkgPSAiIicpCl9wKDUsJ1N0YXJ0V2l0aElFID0gImZhbHNlIicpCl9wKDQsJy8+JykKZW5kCl9wKDMsJzwvU2V0dGluZ3M+JykKX3AoMiwnPC9CdWlsZD4nKQpfcCgyLCc8T3RoZXJQcm9qZWN0U2V0dGluZ3MnKQpfcCgzLCdDb3B5UHJvamVjdERlc3RpbmF0aW9uRm9sZGVyID0gIiInKQpfcCgzLCdDb3B5UHJvamVjdFVuY1BhdGggPSAiIicpCl9wKDMsJ0NvcHlQcm9qZWN0T3B0aW9uID0gIjAiJykKX3AoMywnUHJvamVjdFZpZXcgPSAiUHJvamVjdEZpbGVzIicpCl9wKDMsJ1Byb2plY3RUcnVzdCA9ICIwIicpCl9wKDIsJy8+JykKX3AoMSwnPC9DU0hBUlA+JykKX3AoJzwvVmlzdWFsU3R1ZGlvUHJvamVjdD4nKQplbmQKAHByZW1ha2UudnN0dWRpby52YzIwMHggPSB7IH0KbG9jYWwgdmMyMDB4ID0gcHJlbWFrZS52c3R1ZGlvLnZjMjAweApsb2NhbCB0cmVlID0gcHJlbWFrZS50cmVlCmxvY2FsIGZ1bmN0aW9uIGJvb2wodmFsdWUpCmlmIChfQUNUSU9OIDwgInZzMjAwNSIpIHRoZW4KcmV0dXJuIGlpZih2YWx1ZSwgIlRSVUUiLCAiRkFMU0UiKQplbHNlCnJldHVybiBpaWYodmFsdWUsICJ0cnVlIiwgImZhbHNlIikKZW5kCmVuZApmdW5jdGlvbiB2YzIwMHgub3B0aW1pemF0aW9uKGNmZykKbG9jYWwgcmVzdWx0ID0gMApmb3IgXywgdmFsdWUgaW4gaXBhaXJzKGNmZy5mbGFncykgZG8KaWYgKHZhbHVlID09ICJPcHRpbWl6ZSIpIHRoZW4KcmVzdWx0ID0gMwplbHNlaWYgKHZhbHVlID09ICJPcHRpbWl6ZVNpemUiKSB0aGVuCnJlc3VsdCA9IDEKZWxzZWlmICh2YWx1ZSA9PSAiT3B0aW1pemVTcGVlZCIpIHRoZW4KcmVzdWx0ID0gMgplbmQKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHZjMjAweC5oZWFkZXIoZWxlbWVudCkKaW8uZW9sID0gIlxyXG4iCl9wKCc8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJXaW5kb3dzLTEyNTIiPz4nKQpfcCgnPCVzJywgZWxlbWVudCkKX3AoMSwnUHJvamVjdFR5cGU9IlZpc3VhbCBDKysiJykKaWYgX0FDVElPTiA9PSAidnMyMDAyIiB0aGVuCl9wKDEsJ1ZlcnNpb249IjcuMDAiJykKZWxzZWlmIF9BQ1RJT04gPT0gInZzMjAwMyIgdGhlbgpfcCgxLCdWZXJzaW9uPSI3LjEwIicpCmVsc2VpZiBfQUNUSU9OID09ICJ2czIwMDUiIHRoZW4KX3AoMSwnVmVyc2lvbj0iOC4wMCInKQplbHNlaWYgX0FDVElPTiA9PSAidnMyMDA4IiB0aGVuCl9wKDEsJ1ZlcnNpb249IjkuMDAiJykKZW5kCmVuZApmdW5jdGlvbiB2YzIwMHguQ29uZmlndXJhdGlvbihuYW1lLCBjZmcpCl9wKDIsJzxDb25maWd1cmF0aW9uJykKX3AoMywnTmFtZT0iJXMiJywgcHJlbWFrZS5lc2MobmFtZSkpCl9wKDMsJ091dHB1dERpcmVjdG9yeT0iJXMiJywgcHJlbWFrZS5lc2MoY2ZnLmJ1aWxkdGFyZ2V0LmRpcmVjdG9yeSkpCl9wKDMsJ0ludGVybWVkaWF0ZURpcmVjdG9yeT0iJXMiJywgcHJlbWFrZS5lc2MoY2ZnLm9iamVjdHNkaXIpKQpsb2NhbCBjZmd0eXBlCmlmIChjZmcua2luZCA9PSAiU2hhcmVkTGliIikgdGhlbgpjZmd0eXBlID0gMgplbHNlaWYgKGNmZy5raW5kID09ICJTdGF0aWNMaWIiKSB0aGVuCmNmZ3R5cGUgPSA0CmVsc2UKY2ZndHlwZSA9IDEKZW5kCl9wKDMsJ0NvbmZpZ3VyYXRpb25UeXBlPSIlcyInLCBjZmd0eXBlKQppZiAoY2ZnLmZsYWdzLk1GQykgdGhlbgpfcCgzLCAnVXNlT2ZNRkM9IiVkIicsIGlpZihjZmcuZmxhZ3MuU3RhdGljUnVudGltZSwgMSwgMikpCmVuZCAgCmlmIChjZmcuZmxhZ3MuQVRMIG9yIGNmZy5mbGFncy5TdGF0aWNBVEwpIHRoZW4KX3AoMywgJ1VzZU9mQVRMPSIlZCInLCBpaWYoY2ZnLmZsYWdzLlN0YXRpY0FUTCwgMSwgMikpCmVuZApfcCgzLCdDaGFyYWN0ZXJTZXQ9IiVzIicsIGlpZihjZmcuZmxhZ3MuVW5pY29kZSwgMSwgMikpCmlmIGNmZy5mbGFncy5NYW5hZ2VkIHRoZW4KX3AoMywnTWFuYWdlZEV4dGVuc2lvbnM9IjEiJykKZW5kCl9wKDMsJz4nKQplbmQKZnVuY3Rpb24gdmMyMDB4LkZpbGVzKHByaikKbG9jYWwgdHIgPSBwcmVtYWtlLnByb2plY3QuYnVpbGRzb3VyY2V0cmVlKHByaikKdHJlZS50cmF2ZXJzZSh0ciwgewpvbmJyYW5jaGVudGVyID0gZnVuY3Rpb24obm9kZSwgZGVwdGgpCl9wKGRlcHRoLCAnPEZpbHRlcicpCl9wKGRlcHRoLCAnXHROYW1lPSIlcyInLCBub2RlLm5hbWUpCl9wKGRlcHRoLCAnXHRGaWx0ZXI9IiInKQpfcChkZXB0aCwgJ1x0PicpCmVuZCwKb25icmFuY2hleGl0ID0gZnVuY3Rpb24obm9kZSwgZGVwdGgpCl9wKGRlcHRoLCAnPC9GaWx0ZXI+JykKZW5kLApvbmxlYWYgPSBmdW5jdGlvbihub2RlLCBkZXB0aCkKbG9jYWwgZm5hbWUgPSBub2RlLmNmZy5uYW1lCl9wKGRlcHRoLCAnPEZpbGUnKQpfcChkZXB0aCwgJ1x0UmVsYXRpdmVQYXRoPSIlcyInLCBwYXRoLnRyYW5zbGF0ZShmbmFtZSwgIlxcIikpCl9wKGRlcHRoLCAnXHQ+JykKZGVwdGggPSBkZXB0aCArIDEKZm9yIF8sIGNmZ2luZm8gaW4gaXBhaXJzKHByai5zb2x1dGlvbi52c3R1ZGlvX2NvbmZpZ3MpIGRvCmlmIGNmZ2luZm8uaXNyZWFsIHRoZW4KbG9jYWwgY2ZnID0gcHJlbWFrZS5nZXRjb25maWcocHJqLCBjZmdpbmZvLnNyY19idWlsZGNmZywgY2ZnaW5mby5zcmNfcGxhdGZvcm0pCmxvY2FsIHVzZVBDSCA9IChub3QgcHJqLmZsYWdzLk5vUENIIGFuZCBwcmoucGNoc291cmNlID09IG5vZGUuY2ZnLm5hbWUpCmxvY2FsIGlzU291cmNlQ29kZSA9IHBhdGguaXNjcHBmaWxlKGZuYW1lKQpsb2NhbCBuZWVkc0NvbXBpbGVBcyA9IChwYXRoLmlzY2ZpbGUoZm5hbWUpIH49IHByZW1ha2UucHJvamVjdC5pc2Nwcm9qZWN0KHByaikpCmlmIHVzZVBDSCBvciAoaXNTb3VyY2VDb2RlIGFuZCBuZWVkc0NvbXBpbGVBcykgdGhlbgpfcChkZXB0aCwgJzxGaWxlQ29uZmlndXJhdGlvbicpCl9wKGRlcHRoLCAnXHROYW1lPSIlcyInLCBjZmdpbmZvLm5hbWUpCl9wKGRlcHRoLCAnXHQ+JykKX3AoZGVwdGgsICdcdDxUb29sJykKX3AoZGVwdGgsICdcdFx0TmFtZT0iJXMiJywgaWlmKGNmZy5zeXN0ZW0gPT0gIlhib3gzNjAiLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlZDQ0xYMzYwQ29tcGlsZXJUb29sIiwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJWQ0NMQ29tcGlsZXJUb29sIikpCmlmIG5lZWRzQ29tcGlsZUFzIHRoZW4KX3AoZGVwdGgsICdcdFx0Q29tcGlsZUFzPSIlcyInLCBpaWYocGF0aC5pc2NmaWxlKGZuYW1lKSwgMSwgMikpCmVuZAppZiB1c2VQQ0ggdGhlbgppZiBjZmcuc3lzdGVtID09ICJQUzMiIHRoZW4KbG9jYWwgb3B0aW9ucyA9IHRhYmxlLmpvaW4ocHJlbWFrZS5zbmMuZ2V0Y2ZsYWdzKGNmZyksIAogICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVtYWtlLnNuYy5nZXRjeHhmbGFncyhjZmcpLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgY2ZnLmJ1aWxkb3B0aW9ucykKb3B0aW9ucyA9IHRhYmxlLmNvbmNhdChvcHRpb25zLCAiICIpOwpvcHRpb25zID0gb3B0aW9ucyAuLiAnIC0tY3JlYXRlX3BjaD0iJChJbnREaXIpLyQoVGFyZ2V0TmFtZSkucGNoIicgICAgICAgICAgICAgICAgICAgIApfcChkZXB0aCwgJ1x0XHRBZGRpdGlvbmFsT3B0aW9ucz0iJXMiJywgcHJlbWFrZS5lc2Mob3B0aW9ucykpCmVsc2UKX3AoZGVwdGgsICdcdFx0VXNlUHJlY29tcGlsZWRIZWFkZXI9IjEiJykKZW5kCmVuZApfcChkZXB0aCwgJ1x0Lz4nKQpfcChkZXB0aCwgJzwvRmlsZUNvbmZpZ3VyYXRpb24+JykKZW5kCmVuZAplbmQKZGVwdGggPSBkZXB0aCAtIDEKX3AoZGVwdGgsICc8L0ZpbGU+JykKZW5kLAp9LCBmYWxzZSwgMikKZW5kCmZ1bmN0aW9uIHZjMjAweC5QbGF0Zm9ybXMocHJqKQpsb2NhbCB1c2VkID0geyB9Cl9wKDEsJzxQbGF0Zm9ybXM+JykKZm9yIF8sIGNmZyBpbiBpcGFpcnMocHJqLnNvbHV0aW9uLnZzdHVkaW9fY29uZmlncykgZG8KaWYgY2ZnLmlzcmVhbCBhbmQgbm90IHRhYmxlLmNvbnRhaW5zKHVzZWQsIGNmZy5wbGF0Zm9ybSkgdGhlbgp0YWJsZS5pbnNlcnQodXNlZCwgY2ZnLnBsYXRmb3JtKQpfcCgyLCc8UGxhdGZvcm0nKQpfcCgzLCdOYW1lPSIlcyInLCBjZmcucGxhdGZvcm0pCl9wKDIsJy8+JykKZW5kCmVuZApfcCgxLCc8L1BsYXRmb3Jtcz4nKQplbmQKZnVuY3Rpb24gdmMyMDB4LlN5bWJvbHMoY2ZnKQppZiAobm90IGNmZy5mbGFncy5TeW1ib2xzKSB0aGVuCnJldHVybiAwCmVsc2UKaWYgY2ZnLmZsYWdzLk5vRWRpdEFuZENvbnRpbnVlIG9yIAogICB2YzIwMHgub3B0aW1pemF0aW9uKGNmZykgfj0gMCBvciAKICAgY2ZnLmZsYWdzLk1hbmFnZWQgb3IgCiAgIGNmZy5wbGF0Zm9ybSA9PSAieDY0IiB0aGVuCnJldHVybiAzCmVsc2UKcmV0dXJuIDQKZW5kCmVuZAplbmQKZnVuY3Rpb24gdmMyMDB4LlZDQ0xDb21waWxlclRvb2woY2ZnKQpfcCgzLCc8VG9vbCcpCl9wKDQsJ05hbWU9IiVzIicsIGlpZihjZmcucGxhdGZvcm0gfj0gIlhib3gzNjAiLCAiVkNDTENvbXBpbGVyVG9vbCIsICJWQ0NMWDM2MENvbXBpbGVyVG9vbCIpKQppZiAjY2ZnLmJ1aWxkb3B0aW9ucyA+IDAgdGhlbgpfcCg0LCdBZGRpdGlvbmFsT3B0aW9ucz0iJXMiJywgdGFibGUuY29uY2F0KHByZW1ha2UuZXNjKGNmZy5idWlsZG9wdGlvbnMpLCAiICIpKQplbmQKX3AoNCwnT3B0aW1pemF0aW9uPSIlcyInLCB2YzIwMHgub3B0aW1pemF0aW9uKGNmZykpCmlmIGNmZy5mbGFncy5Ob0ZyYW1lUG9pbnRlciB0aGVuCl9wKDQsJ09taXRGcmFtZVBvaW50ZXJzPSIlcyInLCBib29sKHRydWUpKQplbmQKaWYgI2NmZy5pbmNsdWRlZGlycyA+IDAgdGhlbgpfcCg0LCdBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIlcyInLCBwcmVtYWtlLmVzYyhwYXRoLnRyYW5zbGF0ZSh0YWJsZS5jb25jYXQoY2ZnLmluY2x1ZGVkaXJzLCAiOyIpLCAnXFwnKSkpCmVuZAppZiAjY2ZnLmRlZmluZXMgPiAwIHRoZW4KX3AoNCwnUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IiVzIicsIHByZW1ha2UuZXNjKHRhYmxlLmNvbmNhdChjZmcuZGVmaW5lcywgIjsiKSkpCmVuZAppZiBwcmVtYWtlLmNvbmZpZy5pc2RlYnVnYnVpbGQoY2ZnKSBhbmQgbm90IGNmZy5mbGFncy5Ob01pbmltYWxSZWJ1aWxkIGFuZCBub3QgY2ZnLmZsYWdzLk1hbmFnZWQgdGhlbgpfcCg0LCdNaW5pbWFsUmVidWlsZD0iJXMiJywgYm9vbCh0cnVlKSkKZW5kCmlmIGNmZy5mbGFncy5Ob0V4Y2VwdGlvbnMgdGhlbgpfcCg0LCdFeGNlcHRpb25IYW5kbGluZz0iJXMiJywgaWlmKF9BQ1RJT04gPCAidnMyMDA1IiwgIkZBTFNFIiwgMCkpCmVsc2VpZiBjZmcuZmxhZ3MuU0VIIGFuZCBfQUNUSU9OID4gInZzMjAwMyIgdGhlbgpfcCg0LCdFeGNlcHRpb25IYW5kbGluZz0iMiInKQplbmQKaWYgdmMyMDB4Lm9wdGltaXphdGlvbihjZmcpID09IDAgYW5kIG5vdCBjZmcuZmxhZ3MuTWFuYWdlZCB0aGVuCl9wKDQsJ0Jhc2ljUnVudGltZUNoZWNrcz0iMyInKQplbmQKaWYgdmMyMDB4Lm9wdGltaXphdGlvbihjZmcpIH49IDAgdGhlbgpfcCg0LCdTdHJpbmdQb29saW5nPSIlcyInLCBib29sKHRydWUpKQplbmQKbG9jYWwgcnVudGltZQppZiBwcmVtYWtlLmNvbmZpZy5pc2RlYnVnYnVpbGQoY2ZnKSB0aGVuCnJ1bnRpbWUgPSBpaWYoY2ZnLmZsYWdzLlN0YXRpY1J1bnRpbWUsIDEsIDMpCmVsc2UKcnVudGltZSA9IGlpZihjZmcuZmxhZ3MuU3RhdGljUnVudGltZSwgMCwgMikKZW5kCl9wKDQsJ1J1bnRpbWVMaWJyYXJ5PSIlcyInLCBydW50aW1lKQpfcCg0LCdFbmFibGVGdW5jdGlvbkxldmVsTGlua2luZz0iJXMiJywgYm9vbCh0cnVlKSkKaWYgX0FDVElPTiA+ICJ2czIwMDMiIGFuZCBjZmcucGxhdGZvcm0gfj0gIlhib3gzNjAiIGFuZCBjZmcucGxhdGZvcm0gfj0gIng2NCIgdGhlbgppZiBjZmcuZmxhZ3MuRW5hYmxlU1NFIHRoZW4KX3AoNCwnRW5hYmxlRW5oYW5jZWRJbnN0cnVjdGlvblNldD0iMSInKQplbHNlaWYgY2ZnLmZsYWdzLkVuYWJsZVNTRTIgdGhlbgpfcCg0LCdFbmFibGVFbmhhbmNlZEluc3RydWN0aW9uU2V0PSIyIicpCmVuZAplbmQKaWYgX0FDVElPTiA8ICJ2czIwMDUiIHRoZW4KaWYgY2ZnLmZsYWdzLkZsb2F0RmFzdCB0aGVuCl9wKDQsJ0ltcHJvdmVGbG9hdGluZ1BvaW50Q29uc2lzdGVuY3k9IiVzIicsIGJvb2woZmFsc2UpKQplbHNlaWYgY2ZnLmZsYWdzLkZsb2F0U3RyaWN0IHRoZW4KX3AoNCwnSW1wcm92ZUZsb2F0aW5nUG9pbnRDb25zaXN0ZW5jeT0iJXMiJywgYm9vbCh0cnVlKSkKZW5kCmVsc2UKaWYgY2ZnLmZsYWdzLkZsb2F0RmFzdCB0aGVuCl9wKDQsJ0Zsb2F0aW5nUG9pbnRNb2RlbD0iMiInKQplbHNlaWYgY2ZnLmZsYWdzLkZsb2F0U3RyaWN0IHRoZW4KX3AoNCwnRmxvYXRpbmdQb2ludE1vZGVsPSIxIicpCmVuZAplbmQKaWYgX0FDVElPTiA8ICJ2czIwMDUiIGFuZCBub3QgY2ZnLmZsYWdzLk5vUlRUSSB0aGVuCl9wKDQsJ1J1bnRpbWVUeXBlSW5mbz0iJXMiJywgYm9vbCh0cnVlKSkKZWxzZWlmIF9BQ1RJT04gPiAidnMyMDAzIiBhbmQgY2ZnLmZsYWdzLk5vUlRUSSBhbmQgbm90IGNmZy5mbGFncy5NYW5hZ2VkIHRoZW4KX3AoNCwnUnVudGltZVR5cGVJbmZvPSIlcyInLCBib29sKGZhbHNlKSkKZW5kCmlmIGNmZy5mbGFncy5OYXRpdmVXQ2hhciB0aGVuCl9wKDQsJ1RyZWF0V0NoYXJfdEFzQnVpbHRJblR5cGU9IiVzIicsIGJvb2wodHJ1ZSkpCmVsc2VpZiBjZmcuZmxhZ3MuTm9OYXRpdmVXQ2hhciB0aGVuCl9wKDQsJ1RyZWF0V0NoYXJfdEFzQnVpbHRJblR5cGU9IiVzIicsIGJvb2woZmFsc2UpKQplbmQKaWYgbm90IGNmZy5mbGFncy5Ob1BDSCBhbmQgY2ZnLnBjaGhlYWRlciB0aGVuCl9wKDQsJ1VzZVByZWNvbXBpbGVkSGVhZGVyPSIlcyInLCBpaWYoX0FDVElPTiA8ICJ2czIwMDUiLCAzLCAyKSkKX3AoNCwnUHJlY29tcGlsZWRIZWFkZXJUaHJvdWdoPSIlcyInLCBjZmcucGNoaGVhZGVyKQplbHNlCl9wKDQsJ1VzZVByZWNvbXBpbGVkSGVhZGVyPSIlcyInLCBpaWYoX0FDVElPTiA+ICJ2czIwMDMiIG9yIGNmZy5mbGFncy5Ob1BDSCwgMCwgMikpCmVuZApfcCg0LCdXYXJuaW5nTGV2ZWw9IiVzIicsIGlpZihjZmcuZmxhZ3MuRXh0cmFXYXJuaW5ncywgNCwgMykpCmlmIGNmZy5mbGFncy5GYXRhbFdhcm5pbmdzIHRoZW4KX3AoNCwnV2FybkFzRXJyb3I9IiVzIicsIGJvb2wodHJ1ZSkpCmVuZAppZiBfQUNUSU9OIDwgInZzMjAwOCIgYW5kIG5vdCBjZmcuZmxhZ3MuTWFuYWdlZCB0aGVuCl9wKDQsJ0RldGVjdDY0Qml0UG9ydGFiaWxpdHlQcm9ibGVtcz0iJXMiJywgYm9vbChub3QgY2ZnLmZsYWdzLk5vNjRCaXRDaGVja3MpKQplbmQKX3AoNCwnUHJvZ3JhbURhdGFCYXNlRmlsZU5hbWU9IiQoT3V0RGlyKVxcJXMucGRiIicsIHBhdGguZ2V0YmFzZW5hbWUoY2ZnLmJ1aWxkdGFyZ2V0Lm5hbWUpKQpfcCg0LCdEZWJ1Z0luZm9ybWF0aW9uRm9ybWF0PSIlcyInLCB2YzIwMHguU3ltYm9scyhjZmcpKQppZiBjZmcubGFuZ3VhZ2UgPT0gIkMiIHRoZW4KX3AoNCwgJ0NvbXBpbGVBcz0iMSInKQplbmQKX3AoMywnLz4nKQplbmQKZnVuY3Rpb24gdmMyMDB4LlZDTGlua2VyVG9vbChjZmcpCl9wKDMsJzxUb29sJykKaWYgY2ZnLmtpbmQgfj0gIlN0YXRpY0xpYiIgdGhlbgpfcCg0LCdOYW1lPSIlcyInLCBpaWYoY2ZnLnBsYXRmb3JtIH49ICJYYm94MzYwIiwgIlZDTGlua2VyVG9vbCIsICJWQ1gzNjBMaW5rZXJUb29sIikpCmlmIGNmZy5mbGFncy5Ob0ltcG9ydExpYiB0aGVuCl9wKDQsJ0lnbm9yZUltcG9ydExpYnJhcnk9IiVzIicsIGJvb2wodHJ1ZSkpCmVuZAppZiAjY2ZnLmxpbmtvcHRpb25zID4gMCB0aGVuCl9wKDQsJ0FkZGl0aW9uYWxPcHRpb25zPSIlcyInLCB0YWJsZS5jb25jYXQocHJlbWFrZS5lc2MoY2ZnLmxpbmtvcHRpb25zKSwgIiAiKSkKZW5kCmlmICNjZmcubGlua3MgPiAwIHRoZW4KX3AoNCwnQWRkaXRpb25hbERlcGVuZGVuY2llcz0iJXMiJywgdGFibGUuY29uY2F0KHByZW1ha2UuZ2V0bGlua3MoY2ZnLCAiYWxsIiwgImZ1bGxwYXRoIiksICIgIikpCmVuZApfcCg0LCdPdXRwdXRGaWxlPSIkKE91dERpcilcXCVzIicsIGNmZy5idWlsZHRhcmdldC5uYW1lKQpfcCg0LCdMaW5rSW5jcmVtZW50YWw9IiVzIicsIAppaWYocHJlbWFrZS5jb25maWcuaXNpbmNyZW1lbnRhbGxpbmsoY2ZnKSAsIDIsIDEpKQpfcCg0LCdBZGRpdGlvbmFsTGlicmFyeURpcmVjdG9yaWVzPSIlcyInLCB0YWJsZS5jb25jYXQocHJlbWFrZS5lc2MocGF0aC50cmFuc2xhdGUoY2ZnLmxpYmRpcnMsICdcXCcpKSAsICI7IikpCmxvY2FsIGRlZmZpbGUgPSBwcmVtYWtlLmZpbmRmaWxlKGNmZywgIi5kZWYiKQppZiBkZWZmaWxlIHRoZW4KX3AoNCwnTW9kdWxlRGVmaW5pdGlvbkZpbGU9IiVzIicsIGRlZmZpbGUpCmVuZAppZiBjZmcuZmxhZ3MuTm9NYW5pZmVzdCB0aGVuCl9wKDQsJ0dlbmVyYXRlTWFuaWZlc3Q9IiVzIicsIGJvb2woZmFsc2UpKQplbmQKX3AoNCwnR2VuZXJhdGVEZWJ1Z0luZm9ybWF0aW9uPSIlcyInLCBib29sKHZjMjAweC5TeW1ib2xzKGNmZykgfj0gMCkpCmlmIHZjMjAweC5TeW1ib2xzKGNmZykgfj0gMCB0aGVuCl9wKDQsJ1Byb2dyYW1EYXRhQmFzZUZpbGVOYW1lPSIkKE91dERpcilcXCVzLnBkYiInLCBwYXRoLmdldGJhc2VuYW1lKGNmZy5idWlsZHRhcmdldC5uYW1lKSkKZW5kCl9wKDQsJ1N1YlN5c3RlbT0iJXMiJywgaWlmKGNmZy5raW5kID09ICJDb25zb2xlQXBwIiwgMSwgMikpCmlmIHZjMjAweC5vcHRpbWl6YXRpb24oY2ZnKSB+PSAwIHRoZW4KX3AoNCwnT3B0aW1pemVSZWZlcmVuY2VzPSIyIicpCl9wKDQsJ0VuYWJsZUNPTURBVEZvbGRpbmc9IjIiJykKZW5kCmlmIChjZmcua2luZCA9PSAiQ29uc29sZUFwcCIgb3IgY2ZnLmtpbmQgPT0gIldpbmRvd2VkQXBwIikgYW5kIG5vdCBjZmcuZmxhZ3MuV2luTWFpbiB0aGVuCl9wKDQsJ0VudHJ5UG9pbnRTeW1ib2w9Im1haW5DUlRTdGFydHVwIicpCmVuZAppZiBjZmcua2luZCA9PSAiU2hhcmVkTGliIiB0aGVuCmxvY2FsIGltcGxpYm5hbWUgPSBjZmcubGlua3RhcmdldC5mdWxscGF0aApfcCg0LCdJbXBvcnRMaWJyYXJ5PSIlcyInLCBpaWYoY2ZnLmZsYWdzLk5vSW1wb3J0TGliLCBjZmcub2JqZWN0c2RpciAuLiAiXFwiIC4uIHBhdGguZ2V0bmFtZShpbXBsaWJuYW1lKSwgaW1wbGlibmFtZSkpCmVuZApfcCg0LCdUYXJnZXRNYWNoaW5lPSIlZCInLCBpaWYoY2ZnLnBsYXRmb3JtID09ICJ4NjQiLCAxNywgMSkpCmVsc2UKX3AoNCwnTmFtZT0iVkNMaWJyYXJpYW5Ub29sIicpCmlmICNjZmcubGlua3MgPiAwIHRoZW4KX3AoNCwnQWRkaXRpb25hbERlcGVuZGVuY2llcz0iJXMiJywgdGFibGUuY29uY2F0KHByZW1ha2UuZ2V0bGlua3MoY2ZnLCAiYWxsIiwgImZ1bGxwYXRoIiksICIgIikpCmVuZApfcCg0LCdPdXRwdXRGaWxlPSIkKE91dERpcilcXCVzIicsIGNmZy5idWlsZHRhcmdldC5uYW1lKQppZiAjY2ZnLmxpYmRpcnMgPiAwIHRoZW4KX3AoNCwnQWRkaXRpb25hbExpYnJhcnlEaXJlY3Rvcmllcz0iJXMiJywgcHJlbWFrZS5lc2MocGF0aC50cmFuc2xhdGUodGFibGUuY29uY2F0KGNmZy5saWJkaXJzICwgIjsiKSkpKQplbmQKbG9jYWwgYWRkbE9wdGlvbnMgPSB7fQppZiBjZmcucGxhdGZvcm0gPT0gIngzMiIgdGhlbgp0YWJsZS5pbnNlcnQoYWRkbE9wdGlvbnMsICIvTUFDSElORTpYODYiKQplbHNlaWYgY2ZnLnBsYXRmb3JtID09ICJ4NjQiIHRoZW4KdGFibGUuaW5zZXJ0KGFkZGxPcHRpb25zLCAiL01BQ0hJTkU6WDY0IikKZW5kCmFkZGxPcHRpb25zID0gdGFibGUuam9pbihhZGRsT3B0aW9ucywgY2ZnLmxpbmtvcHRpb25zKQppZiAjYWRkbE9wdGlvbnMgPiAwIHRoZW4KX3AoNCwnQWRkaXRpb25hbE9wdGlvbnM9IiVzIicsIHRhYmxlLmNvbmNhdChwcmVtYWtlLmVzYyhhZGRsT3B0aW9ucyksICIgIikpCmVuZAplbmQKX3AoMywnLz4nKQplbmQKZnVuY3Rpb24gdmMyMDB4LlZDQ0xDb21waWxlclRvb2xfUFMzKGNmZykKX3AoMywnPFRvb2wnKQpfcCg0LCdOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIicpCmxvY2FsIGJ1aWxkb3B0aW9ucyA9IHRhYmxlLmpvaW4ocHJlbWFrZS5zbmMuZ2V0Y2ZsYWdzKGNmZyksIHByZW1ha2Uuc25jLmdldGN4eGZsYWdzKGNmZyksIGNmZy5idWlsZG9wdGlvbnMpCmlmIG5vdCBjZmcuZmxhZ3MuTm9QQ0ggYW5kIGNmZy5wY2hoZWFkZXIgdGhlbgpfcCg0LCdVc2VQcmVjb21waWxlZEhlYWRlcj0iJXMiJywgaWlmKF9BQ1RJT04gPCAidnMyMDA1IiwgMywgMikpCl9wKDQsJ1ByZWNvbXBpbGVkSGVhZGVyVGhyb3VnaD0iJXMiJywgcGF0aC5nZXRuYW1lKGNmZy5wY2hoZWFkZXIpKQp0YWJsZS5pbnNlcnQoYnVpbGRvcHRpb25zLCAnLS11c2VfcGNoPSIkKEludERpcikvJChUYXJnZXROYW1lKS5wY2giJykKZWxzZQpfcCg0LCdVc2VQcmVjb21waWxlZEhlYWRlcj0iJXMiJywgaWlmKF9BQ1RJT04gPiAidnMyMDAzIiBvciBjZmcuZmxhZ3MuTm9QQ0gsIDAsIDIpKQplbmQKX3AoNCwnQWRkaXRpb25hbE9wdGlvbnM9IiVzIicsIHByZW1ha2UuZXNjKHRhYmxlLmNvbmNhdChidWlsZG9wdGlvbnMsICIgIikpKQppZiAjY2ZnLmluY2x1ZGVkaXJzID4gMCB0aGVuCl9wKDQsJ0FkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiVzIicsIHByZW1ha2UuZXNjKHBhdGgudHJhbnNsYXRlKHRhYmxlLmNvbmNhdChjZmcuaW5jbHVkZWRpcnMsICI7IiksICdcXCcpKSkKZW5kCmlmICNjZmcuZGVmaW5lcyA+IDAgdGhlbgpfcCg0LCdQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iJXMiJywgdGFibGUuY29uY2F0KHByZW1ha2UuZXNjKGNmZy5kZWZpbmVzKSwgIjsiKSkKZW5kCl9wKDQsJ1Byb2dyYW1EYXRhQmFzZUZpbGVOYW1lPSIkKE91dERpcilcXCVzLnBkYiInLCBwYXRoLmdldGJhc2VuYW1lKGNmZy5idWlsZHRhcmdldC5uYW1lKSkKX3AoNCwnRGVidWdJbmZvcm1hdGlvbkZvcm1hdD0iMCInKQpfcCg0LCdDb21waWxlQXM9IjAiJykKX3AoMywnLz4nKQplbmQKZnVuY3Rpb24gdmMyMDB4LlZDTGlua2VyVG9vbF9QUzMoY2ZnKQpfcCgzLCc8VG9vbCcpCmlmIGNmZy5raW5kIH49ICJTdGF0aWNMaWIiIHRoZW4KX3AoNCwnTmFtZT0iVkNMaW5rZXJUb29sIicpCmxvY2FsIGJ1aWxkb3B0aW9ucyA9IHRhYmxlLmpvaW4ocHJlbWFrZS5zbmMuZ2V0bGRmbGFncyhjZmcpLCBjZmcubGlua29wdGlvbnMpCmlmICNidWlsZG9wdGlvbnMgPiAwIHRoZW4KX3AoNCwnQWRkaXRpb25hbE9wdGlvbnM9IiVzIicsIHByZW1ha2UuZXNjKHRhYmxlLmNvbmNhdChidWlsZG9wdGlvbnMsICIgIikpKQplbmQKaWYgI2NmZy5saW5rcyA+IDAgdGhlbgpfcCg0LCdBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIlcyInLCB0YWJsZS5jb25jYXQocHJlbWFrZS5nZXRsaW5rcyhjZmcsICJhbGwiLCAiZnVsbHBhdGgiKSwgIiAiKSkKZW5kCl9wKDQsJ091dHB1dEZpbGU9IiQoT3V0RGlyKVxcJXMiJywgY2ZnLmJ1aWxkdGFyZ2V0Lm5hbWUpCl9wKDQsJ0xpbmtJbmNyZW1lbnRhbD0iMCInKQpfcCg0LCdBZGRpdGlvbmFsTGlicmFyeURpcmVjdG9yaWVzPSIlcyInLCB0YWJsZS5jb25jYXQocHJlbWFrZS5lc2MocGF0aC50cmFuc2xhdGUoY2ZnLmxpYmRpcnMsICdcXCcpKSAsICI7IikpCl9wKDQsJ0dlbmVyYXRlTWFuaWZlc3Q9IiVzIicsIGJvb2woZmFsc2UpKQpfcCg0LCdQcm9ncmFtRGF0YWJhc2VGaWxlPSIiJykKX3AoNCwnUmFuZG9taXplZEJhc2VBZGRyZXNzPSIxIicpCl9wKDQsJ0RhdGFFeGVjdXRpb25QcmV2ZW50aW9uPSIwIicpCmVsc2UKX3AoNCwnTmFtZT0iVkNMaWJyYXJpYW5Ub29sIicpCmxvY2FsIGJ1aWxkb3B0aW9ucyA9IHRhYmxlLmpvaW4ocHJlbWFrZS5zbmMuZ2V0bGRmbGFncyhjZmcpLCBjZmcubGlua29wdGlvbnMpCmlmICNidWlsZG9wdGlvbnMgPiAwIHRoZW4KX3AoNCwnQWRkaXRpb25hbE9wdGlvbnM9IiVzIicsIHByZW1ha2UuZXNjKHRhYmxlLmNvbmNhdChidWlsZG9wdGlvbnMsICIgIikpKQplbmQKaWYgI2NmZy5saW5rcyA+IDAgdGhlbgpfcCg0LCdBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIlcyInLCB0YWJsZS5jb25jYXQocHJlbWFrZS5nZXRsaW5rcyhjZmcsICJhbGwiLCAiZnVsbHBhdGgiKSwgIiAiKSkKZW5kCl9wKDQsJ091dHB1dEZpbGU9IiQoT3V0RGlyKVxcJXMiJywgY2ZnLmJ1aWxkdGFyZ2V0Lm5hbWUpCmlmICNjZmcubGliZGlycyA+IDAgdGhlbgpfcCg0LCdBZGRpdGlvbmFsTGlicmFyeURpcmVjdG9yaWVzPSIlcyInLCBwcmVtYWtlLmVzYyhwYXRoLnRyYW5zbGF0ZSh0YWJsZS5jb25jYXQoY2ZnLmxpYmRpcnMgLCAiOyIpKSkpCmVuZAplbmQKX3AoMywnLz4nKQplbmQKZnVuY3Rpb24gdmMyMDB4LlZDUmVzb3VyY2VDb21waWxlclRvb2woY2ZnKQpfcCgzLCc8VG9vbCcpCl9wKDQsJ05hbWU9IlZDUmVzb3VyY2VDb21waWxlclRvb2wiJykKaWYgI2NmZy5yZXNvcHRpb25zID4gMCB0aGVuCl9wKDQsJ0FkZGl0aW9uYWxPcHRpb25zPSIlcyInLCB0YWJsZS5jb25jYXQocHJlbWFrZS5lc2MoY2ZnLnJlc29wdGlvbnMpLCAiICIpKQplbmQKaWYgI2NmZy5kZWZpbmVzID4gMCBvciAjY2ZnLnJlc2RlZmluZXMgPiAwIHRoZW4KX3AoNCwnUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IiVzIicsIHRhYmxlLmNvbmNhdChwcmVtYWtlLmVzYyh0YWJsZS5qb2luKGNmZy5kZWZpbmVzLCBjZmcucmVzZGVmaW5lcykpLCAiOyIpKQplbmQKaWYgI2NmZy5pbmNsdWRlZGlycyA+IDAgb3IgI2NmZy5yZXNpbmNsdWRlZGlycyA+IDAgdGhlbgpsb2NhbCBkaXJzID0gdGFibGUuam9pbihjZmcuaW5jbHVkZWRpcnMsIGNmZy5yZXNpbmNsdWRlZGlycykKX3AoNCwnQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJXMiJywgcHJlbWFrZS5lc2MocGF0aC50cmFuc2xhdGUodGFibGUuY29uY2F0KGRpcnMsICI7IiksICdcXCcpKSkKZW5kCl9wKDMsJy8+JykKZW5kCmZ1bmN0aW9uIHZjMjAweC5WQ01hbmlmZXN0VG9vbChjZmcpCmxvY2FsIG1hbmlmZXN0cyA9IHsgfQpmb3IgXywgZm5hbWUgaW4gaXBhaXJzKGNmZy5maWxlcykgZG8KaWYgcGF0aC5nZXRleHRlbnNpb24oZm5hbWUpID09ICIubWFuaWZlc3QiIHRoZW4KdGFibGUuaW5zZXJ0KG1hbmlmZXN0cywgZm5hbWUpCmVuZAplbmQKX3AoMywnPFRvb2wnKQpfcCg0LCdOYW1lPSJWQ01hbmlmZXN0VG9vbCInKQppZiAjbWFuaWZlc3RzID4gMCB0aGVuCl9wKDQsJ0FkZGl0aW9uYWxNYW5pZmVzdEZpbGVzPSIlcyInLCBwcmVtYWtlLmVzYyh0YWJsZS5jb25jYXQobWFuaWZlc3RzLCAiOyIpKSkKZW5kCl9wKDMsJy8+JykKZW5kCmZ1bmN0aW9uIHZjMjAweC5WQ01JRExUb29sKGNmZykKX3AoMywnPFRvb2wnKQpfcCg0LCdOYW1lPSJWQ01JRExUb29sIicpCmlmIGNmZy5wbGF0Zm9ybSA9PSAieDY0IiB0aGVuCl9wKDQsJ1RhcmdldEVudmlyb25tZW50PSIzIicpCmVuZApfcCgzLCcvPicpCmVuZApmdW5jdGlvbiB2YzIwMHguYnVpbGRzdGVwc2Jsb2NrKG5hbWUsIHN0ZXBzKQpfcCgzLCc8VG9vbCcpCl9wKDQsJ05hbWU9IiVzIicsIG5hbWUpCmlmICNzdGVwcyA+IDAgdGhlbgpfcCg0LCdDb21tYW5kTGluZT0iJXMiJywgcHJlbWFrZS5lc2ModGFibGUuaW1wbG9kZShzdGVwcywgIiIsICIiLCAiXHJcbiIpKSkKZW5kCl9wKDMsJy8+JykKZW5kCmxvY2FsIGJsb2NrbWFwID0gCnsKVkNDTENvbXBpbGVyVG9vbCAgICAgICA9IHZjMjAweC5WQ0NMQ29tcGlsZXJUb29sLApWQ0NMQ29tcGlsZXJUb29sX1BTMyAgID0gdmMyMDB4LlZDQ0xDb21waWxlclRvb2xfUFMzLApWQ0xpbmtlclRvb2wgICAgICAgICAgID0gdmMyMDB4LlZDTGlua2VyVG9vbCwKVkNMaW5rZXJUb29sX1BTMyAgICAgICA9IHZjMjAweC5WQ0xpbmtlclRvb2xfUFMzLApWQ01hbmlmZXN0VG9vbCAgICAgICAgID0gdmMyMDB4LlZDTWFuaWZlc3RUb29sLApWQ01JRExUb29sICAgICAgICAgICAgID0gdmMyMDB4LlZDTUlETFRvb2wsClZDUmVzb3VyY2VDb21waWxlclRvb2wgPSB2YzIwMHguVkNSZXNvdXJjZUNvbXBpbGVyVG9vbCwKfQpsb2NhbCBmdW5jdGlvbiBnZXRzZWN0aW9ucyh2ZXJzaW9uLCBwbGF0Zm9ybSkKaWYgdmVyc2lvbiA9PSAidnMyMDAyIiB0aGVuCnJldHVybiB7CiJWQ0NMQ29tcGlsZXJUb29sIiwKIlZDQ3VzdG9tQnVpbGRUb29sIiwKIlZDTGlua2VyVG9vbCIsCiJWQ01JRExUb29sIiwKIlZDUG9zdEJ1aWxkRXZlbnRUb29sIiwKIlZDUHJlQnVpbGRFdmVudFRvb2wiLAoiVkNQcmVMaW5rRXZlbnRUb29sIiwKIlZDUmVzb3VyY2VDb21waWxlclRvb2wiLAoiVkNXZWJTZXJ2aWNlUHJveHlHZW5lcmF0b3JUb29sIiwKIlZDV2ViRGVwbG95bWVudFRvb2wiCn0KZW5kCmlmIHZlcnNpb24gPT0gInZzMjAwMyIgdGhlbgpyZXR1cm4gewoiVkNDTENvbXBpbGVyVG9vbCIsCiJWQ0N1c3RvbUJ1aWxkVG9vbCIsCiJWQ0xpbmtlclRvb2wiLAoiVkNNSURMVG9vbCIsCiJWQ1Bvc3RCdWlsZEV2ZW50VG9vbCIsCiJWQ1ByZUJ1aWxkRXZlbnRUb29sIiwKIlZDUHJlTGlua0V2ZW50VG9vbCIsCiJWQ1Jlc291cmNlQ29tcGlsZXJUb29sIiwKIlZDV2ViU2VydmljZVByb3h5R2VuZXJhdG9yVG9vbCIsCiJWQ1hNTERhdGFHZW5lcmF0b3JUb29sIiwKIlZDV2ViRGVwbG95bWVudFRvb2wiLAoiVkNNYW5hZ2VkV3JhcHBlckdlbmVyYXRvclRvb2wiLAoiVkNBdXhpbGlhcnlNYW5hZ2VkV3JhcHBlckdlbmVyYXRvclRvb2wiCn0KZW5kCmlmIHBsYXRmb3JtID09ICJYYm94MzYwIiB0aGVuCnJldHVybiB7CiJWQ1ByZUJ1aWxkRXZlbnRUb29sIiwKIlZDQ3VzdG9tQnVpbGRUb29sIiwKIlZDWE1MRGF0YUdlbmVyYXRvclRvb2wiLAoiVkNXZWJTZXJ2aWNlUHJveHlHZW5lcmF0b3JUb29sIiwKIlZDTUlETFRvb2wiLAoiVkNDTENvbXBpbGVyVG9vbCIsCiJWQ01hbmFnZWRSZXNvdXJjZUNvbXBpbGVyVG9vbCIsCiJWQ1Jlc291cmNlQ29tcGlsZXJUb29sIiwKIlZDUHJlTGlua0V2ZW50VG9vbCIsCiJWQ0xpbmtlclRvb2wiLAoiVkNBTGlua1Rvb2wiLAoiVkNYMzYwSW1hZ2VUb29sIiwKIlZDQnNjTWFrZVRvb2wiLAoiVkNYMzYwRGVwbG95bWVudFRvb2wiLAoiVkNQb3N0QnVpbGRFdmVudFRvb2wiLAoiRGVidWdnZXJUb29sIiwKfQplbmQKaWYgcGxhdGZvcm0gPT0gIlBTMyIgdGhlbgpyZXR1cm4gewoiVkNQcmVCdWlsZEV2ZW50VG9vbCIsCiJWQ0N1c3RvbUJ1aWxkVG9vbCIsCiJWQ1hNTERhdGFHZW5lcmF0b3JUb29sIiwKIlZDV2ViU2VydmljZVByb3h5R2VuZXJhdG9yVG9vbCIsCiJWQ01JRExUb29sIiwKIlZDQ0xDb21waWxlclRvb2xfUFMzIiwKIlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIiwKIlZDUmVzb3VyY2VDb21waWxlclRvb2wiLAoiVkNQcmVMaW5rRXZlbnRUb29sIiwKIlZDTGlua2VyVG9vbF9QUzMiLAoiVkNBTGlua1Rvb2wiLAoiVkNNYW5pZmVzdFRvb2wiLAoiVkNYRENNYWtlVG9vbCIsCiJWQ0JzY01ha2VUb29sIiwKIlZDRnhDb3BUb29sIiwKIlZDQXBwVmVyaWZpZXJUb29sIiwKIlZDV2ViRGVwbG95bWVudFRvb2wiLAoiVkNQb3N0QnVpbGRFdmVudFRvb2wiCn0KZWxzZQpyZXR1cm4gewoiVkNQcmVCdWlsZEV2ZW50VG9vbCIsCiJWQ0N1c3RvbUJ1aWxkVG9vbCIsCiJWQ1hNTERhdGFHZW5lcmF0b3JUb29sIiwKIlZDV2ViU2VydmljZVByb3h5R2VuZXJhdG9yVG9vbCIsCiJWQ01JRExUb29sIiwKIlZDQ0xDb21waWxlclRvb2wiLAoiVkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wiLAoiVkNSZXNvdXJjZUNvbXBpbGVyVG9vbCIsCiJWQ1ByZUxpbmtFdmVudFRvb2wiLAoiVkNMaW5rZXJUb29sIiwKIlZDQUxpbmtUb29sIiwKIlZDTWFuaWZlc3RUb29sIiwKIlZDWERDTWFrZVRvb2wiLAoiVkNCc2NNYWtlVG9vbCIsCiJWQ0Z4Q29wVG9vbCIsCiJWQ0FwcFZlcmlmaWVyVG9vbCIsCiJWQ1dlYkRlcGxveW1lbnRUb29sIiwKIlZDUG9zdEJ1aWxkRXZlbnRUb29sIgp9CmVuZAplbmQKZnVuY3Rpb24gdmMyMDB4LmdlbmVyYXRlKHByaikKdmMyMDB4LmhlYWRlcignVmlzdWFsU3R1ZGlvUHJvamVjdCcpCl9wKDEsJ05hbWU9IiVzIicsIHByZW1ha2UuZXNjKHByai5uYW1lKSkKX3AoMSwnUHJvamVjdEdVSUQ9Inslc30iJywgcHJqLnV1aWQpCmlmIF9BQ1RJT04gPiAidnMyMDAzIiB0aGVuCl9wKDEsJ1Jvb3ROYW1lc3BhY2U9IiVzIicsIHByai5uYW1lKQplbmQKX3AoMSwnS2V5d29yZD0iJXMiJywgaWlmKHByai5mbGFncy5NYW5hZ2VkLCAiTWFuYWdlZENQcm9qIiwgIldpbjMyUHJvaiIpKQpfcCgxLCc+JykKdmMyMDB4LlBsYXRmb3JtcyhwcmopCmlmIF9BQ1RJT04gPiAidnMyMDAzIiB0aGVuCl9wKDEsJzxUb29sRmlsZXM+JykKX3AoMSwnPC9Ub29sRmlsZXM+JykKZW5kCl9wKDEsJzxDb25maWd1cmF0aW9ucz4nKQpmb3IgXywgY2ZnaW5mbyBpbiBpcGFpcnMocHJqLnNvbHV0aW9uLnZzdHVkaW9fY29uZmlncykgZG8KaWYgY2ZnaW5mby5pc3JlYWwgdGhlbgpsb2NhbCBjZmcgPSBwcmVtYWtlLmdldGNvbmZpZyhwcmosIGNmZ2luZm8uc3JjX2J1aWxkY2ZnLCBjZmdpbmZvLnNyY19wbGF0Zm9ybSkKdmMyMDB4LkNvbmZpZ3VyYXRpb24oY2ZnaW5mby5uYW1lLCBjZmcpCmZvciBfLCBibG9jayBpbiBpcGFpcnMoZ2V0c2VjdGlvbnMoX0FDVElPTiwgY2ZnaW5mby5zcmNfcGxhdGZvcm0pKSBkbwppZiBibG9ja21hcFtibG9ja10gdGhlbgpibG9ja21hcFtibG9ja10oY2ZnKQplbHNlaWYgYmxvY2sgPT0gIlZDUHJlQnVpbGRFdmVudFRvb2wiIHRoZW4KdmMyMDB4LmJ1aWxkc3RlcHNibG9jaygiVkNQcmVCdWlsZEV2ZW50VG9vbCIsIGNmZy5wcmVidWlsZGNvbW1hbmRzKQplbHNlaWYgYmxvY2sgPT0gIlZDUHJlTGlua0V2ZW50VG9vbCIgdGhlbgp2YzIwMHguYnVpbGRzdGVwc2Jsb2NrKCJWQ1ByZUxpbmtFdmVudFRvb2wiLCBjZmcucHJlbGlua2NvbW1hbmRzKQplbHNlaWYgYmxvY2sgPT0gIlZDUG9zdEJ1aWxkRXZlbnRUb29sIiB0aGVuCnZjMjAweC5idWlsZHN0ZXBzYmxvY2soIlZDUG9zdEJ1aWxkRXZlbnRUb29sIiwgY2ZnLnBvc3RidWlsZGNvbW1hbmRzKQplbHNlaWYgYmxvY2sgPT0gIlZDWDM2MERlcGxveW1lbnRUb29sIiB0aGVuCl9wKDMsJzxUb29sJykKX3AoNCwnTmFtZT0iVkNYMzYwRGVwbG95bWVudFRvb2wiJykKX3AoNCwnRGVwbG95bWVudFR5cGU9IjAiJykKaWYgI2NmZy5kZXBsb3ltZW50b3B0aW9ucyA+IDAgdGhlbgpfcCg0LCdBZGRpdGlvbmFsT3B0aW9ucz0iJXMiJywgdGFibGUuY29uY2F0KHByZW1ha2UuZXNjKGNmZy5kZXBsb3ltZW50b3B0aW9ucyksICIgIikpCmVuZApfcCgzLCcvPicpCmVsc2VpZiBibG9jayA9PSAiVkNYMzYwSW1hZ2VUb29sIiB0aGVuCl9wKDMsJzxUb29sJykKX3AoNCwnTmFtZT0iVkNYMzYwSW1hZ2VUb29sIicpCmlmICNjZmcuaW1hZ2VvcHRpb25zID4gMCB0aGVuCl9wKDQsJ0FkZGl0aW9uYWxPcHRpb25zPSIlcyInLCB0YWJsZS5jb25jYXQocHJlbWFrZS5lc2MoY2ZnLmltYWdlb3B0aW9ucyksICIgIikpCmVuZAppZiBjZmcuaW1hZ2VwYXRoIH49IG5pbCB0aGVuCl9wKDQsJ091dHB1dEZpbGVOYW1lPSIlcyInLCBwcmVtYWtlLmVzYyhwYXRoLnRyYW5zbGF0ZShjZmcuaW1hZ2VwYXRoKSkpCmVuZApfcCgzLCcvPicpCmVsc2VpZiBibG9jayA9PSAiRGVidWdnZXJUb29sIiB0aGVuCl9wKDMsJzxEZWJ1Z2dlclRvb2wnKQpfcCgzLCcvPicpCmVsc2UKX3AoMywnPFRvb2wnKQpfcCg0LCdOYW1lPSIlcyInLCBibG9jaykKX3AoMywnLz4nKQplbmQKZW5kCl9wKDIsJzwvQ29uZmlndXJhdGlvbj4nKQplbmQKZW5kCl9wKDEsJzwvQ29uZmlndXJhdGlvbnM+JykKX3AoMSwnPFJlZmVyZW5jZXM+JykKX3AoMSwnPC9SZWZlcmVuY2VzPicpCl9wKDEsJzxGaWxlcz4nKQp2YzIwMHguRmlsZXMocHJqKQpfcCgxLCc8L0ZpbGVzPicpCl9wKDEsJzxHbG9iYWxzPicpCl9wKDEsJzwvR2xvYmFscz4nKQpfcCgnPC9WaXN1YWxTdHVkaW9Qcm9qZWN0PicpCmVuZAoAbG9jYWwgdmMyMDB4ID0gcHJlbWFrZS52c3R1ZGlvLnZjMjAweApmdW5jdGlvbiB2YzIwMHguZ2VuZXJhdGVfdXNlcihwcmopCnZjMjAweC5oZWFkZXIoJ1Zpc3VhbFN0dWRpb1VzZXJGaWxlJykKX3AoMSwnU2hvd0FsbEZpbGVzPSJmYWxzZSInKQpfcCgxLCc+JykKX3AoMSwnPENvbmZpZ3VyYXRpb25zPicpCmZvciBfLCBjZmdpbmZvIGluIGlwYWlycyhwcmouc29sdXRpb24udnN0dWRpb19jb25maWdzKSBkbwppZiBjZmdpbmZvLmlzcmVhbCB0aGVuCmxvY2FsIGNmZyA9IHByZW1ha2UuZ2V0Y29uZmlnKHByaiwgY2ZnaW5mby5zcmNfYnVpbGRjZmcsIGNmZ2luZm8uc3JjX3BsYXRmb3JtKQpfcCgyLCc8Q29uZmlndXJhdGlvbicpCl9wKDMsJ05hbWU9IiVzIicsIHByZW1ha2UuZXNjKGNmZ2luZm8ubmFtZSkpCl9wKDMsJz4nKQp2YzIwMHguZGVidWdkaXIoY2ZnKQpfcCgyLCc8L0NvbmZpZ3VyYXRpb24+JykKZW5kCmVuZApfcCgxLCc8L0NvbmZpZ3VyYXRpb25zPicpCl9wKCc8L1Zpc3VhbFN0dWRpb1VzZXJGaWxlPicpCmVuZApmdW5jdGlvbiB2YzIwMHguZW52aXJvbm1lbnRhcmdzKGNmZykKaWYgY2ZnLmVudmlyb25tZW50YXJncyBhbmQgI2NmZy5lbnZpcm9ubWVudGFyZ3MgPiAwIHRoZW4KX3AoNCwnRW52aXJvbm1lbnQ9IiVzIicsIHN0cmluZy5nc3ViKHRhYmxlLmNvbmNhdChjZmcuZW52aXJvbm1lbnRhcmdzLCAiJiN4MEE7IiksJyInLCcmcXVvdDsnKSkKaWYgY2ZnLmZsYWdzLkVudmlyb25tZW50QXJnc0RvbnRNZXJnZSB0aGVuCl9wKDQsJ0Vudmlyb25tZW50TWVyZ2U9ImZhbHNlIicpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIHZjMjAweC5kZWJ1Z2RpcihjZmcpCl9wKDMsJzxEZWJ1Z1NldHRpbmdzJykKaWYgY2ZnLmRlYnVnZGlyIHRoZW4KX3AoNCwnV29ya2luZ0RpcmVjdG9yeT0iJXMiJywgcGF0aC50cmFuc2xhdGUoY2ZnLmRlYnVnZGlyLCAnXFwnKSkKZW5kCmlmICNjZmcuZGVidWdhcmdzID4gMCB0aGVuCl9wKDQsJ0NvbW1hbmRBcmd1bWVudHM9IiVzIicsIHRhYmxlLmNvbmNhdChjZmcuZGVidWdhcmdzLCAiICIpKQplbmQKdmMyMDB4LmVudmlyb25tZW50YXJncyhjZmcpCl9wKDMsJy8+JykKZW5kCgBwcmVtYWtlLnZzdHVkaW8uc2xuMjAwMyA9IHsgfQpsb2NhbCB2c3R1ZGlvID0gcHJlbWFrZS52c3R1ZGlvCmxvY2FsIHNsbjIwMDMgPSBwcmVtYWtlLnZzdHVkaW8uc2xuMjAwMwpmdW5jdGlvbiBzbG4yMDAzLmdlbmVyYXRlKHNsbikKaW8uZW9sID0gJ1xyXG4nCnNsbi52c3R1ZGlvX2NvbmZpZ3MgPSBwcmVtYWtlLnZzdHVkaW8uYnVpbGRjb25maWdzKHNsbikKX3AoJ01pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIFNvbHV0aW9uIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDguMDAnKQpmb3IgcHJqIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaHByb2plY3Qoc2xuKSBkbwpsb2NhbCBwcm9qcGF0aCA9IHBhdGgudHJhbnNsYXRlKHBhdGguZ2V0cmVsYXRpdmUoc2xuLmxvY2F0aW9uLCB2c3R1ZGlvLnByb2plY3RmaWxlKHByaikpKQpfcCgnUHJvamVjdCgieyVzfSIpID0gIiVzIiwgIiVzIiwgInslc30iJywgdnN0dWRpby50b29sKHByaiksIHByai5uYW1lLCBwcm9qcGF0aCwgcHJqLnV1aWQpCmxvY2FsIGRlcHMgPSBwcmVtYWtlLmdldGRlcGVuZGVuY2llcyhwcmopCmlmICNkZXBzID4gMCB0aGVuCl9wKCdcdFByb2plY3RTZWN0aW9uKFByb2plY3REZXBlbmRlbmNpZXMpID0gcG9zdFByb2plY3QnKQpmb3IgXywgZGVwIGluIGlwYWlycyhkZXBzKSBkbwpfcCgnXHRcdHslc30gPSB7JXN9JywgZGVwLnV1aWQsIGRlcC51dWlkKQplbmQKX3AoJ1x0RW5kUHJvamVjdFNlY3Rpb24nKQplbmQKX3AoJ0VuZFByb2plY3QnKQplbmQKX3AoJ0dsb2JhbCcpCl9wKCdcdEdsb2JhbFNlY3Rpb24oU29sdXRpb25Db25maWd1cmF0aW9uKSA9IHByZVNvbHV0aW9uJykKZm9yIF8sIGNmZ25hbWUgaW4gaXBhaXJzKHNsbi5jb25maWd1cmF0aW9ucykgZG8KX3AoJ1x0XHQlcyA9ICVzJywgY2ZnbmFtZSwgY2ZnbmFtZSkKZW5kCl9wKCdcdEVuZEdsb2JhbFNlY3Rpb24nKQpfcCgnXHRHbG9iYWxTZWN0aW9uKFByb2plY3REZXBlbmRlbmNpZXMpID0gcG9zdFNvbHV0aW9uJykKX3AoJ1x0RW5kR2xvYmFsU2VjdGlvbicpCl9wKCdcdEdsb2JhbFNlY3Rpb24oUHJvamVjdENvbmZpZ3VyYXRpb24pID0gcG9zdFNvbHV0aW9uJykKZm9yIHByaiBpbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2hwcm9qZWN0KHNsbikgZG8KZm9yIF8sIGNmZ25hbWUgaW4gaXBhaXJzKHNsbi5jb25maWd1cmF0aW9ucykgZG8KX3AoJ1x0XHR7JXN9LiVzLkFjdGl2ZUNmZyA9ICVzfCVzJywgcHJqLnV1aWQsIGNmZ25hbWUsIGNmZ25hbWUsIHZzdHVkaW8uYXJjaChwcmopKQpfcCgnXHRcdHslc30uJXMuQnVpbGQuMCA9ICVzfCVzJywgcHJqLnV1aWQsIGNmZ25hbWUsIGNmZ25hbWUsIHZzdHVkaW8uYXJjaChwcmopKQplbmQKZW5kCl9wKCdcdEVuZEdsb2JhbFNlY3Rpb24nKQpfcCgnXHRHbG9iYWxTZWN0aW9uKEV4dGVuc2liaWxpdHlHbG9iYWxzKSA9IHBvc3RTb2x1dGlvbicpCl9wKCdcdEVuZEdsb2JhbFNlY3Rpb24nKQpfcCgnXHRHbG9iYWxTZWN0aW9uKEV4dGVuc2liaWxpdHlBZGRJbnMpID0gcG9zdFNvbHV0aW9uJykKX3AoJ1x0RW5kR2xvYmFsU2VjdGlvbicpCl9wKCdFbmRHbG9iYWwnKQplbmQKAHByZW1ha2UudnN0dWRpby5zbG4yMDA1ID0geyB9CmxvY2FsIHZzdHVkaW8gPSBwcmVtYWtlLnZzdHVkaW8KbG9jYWwgc2xuMjAwNSA9IHByZW1ha2UudnN0dWRpby5zbG4yMDA1CmZ1bmN0aW9uIHNsbjIwMDUuZ2VuZXJhdGUoc2xuKQppby5lb2wgPSAnXHJcbicKc2xuLnZzdHVkaW9fY29uZmlncyA9IHByZW1ha2UudnN0dWRpby5idWlsZGNvbmZpZ3Moc2xuKQpfcCgnXDIzOVwxODdcMTkxJykKc2xuMjAwNS5oZWFkZXIoc2xuKQpmb3IgcHJqIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaHByb2plY3Qoc2xuKSBkbwpzbG4yMDA1LnByb2plY3QocHJqKQplbmQKX3AoJ0dsb2JhbCcpCnNsbjIwMDUucGxhdGZvcm1zKHNsbikKc2xuMjAwNS5wcm9qZWN0X3BsYXRmb3JtcyhzbG4pCnNsbjIwMDUucHJvcGVydGllcyhzbG4pCl9wKCdFbmRHbG9iYWwnKQplbmQKZnVuY3Rpb24gc2xuMjAwNS5oZWFkZXIoc2xuKQpsb2NhbCBhY3Rpb24gPSBwcmVtYWtlLmFjdGlvbi5jdXJyZW50KCkKX3AoJ01pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIFNvbHV0aW9uIEZpbGUsIEZvcm1hdCBWZXJzaW9uICVkLjAwJywgYWN0aW9uLnZzdHVkaW8uc29sdXRpb25WZXJzaW9uKQpfcCgnIyBWaXN1YWwgU3R1ZGlvICVzJywgX0FDVElPTjpzdWIoMykpCmVuZApmdW5jdGlvbiBzbG4yMDA1LnByb2plY3QocHJqKQpsb2NhbCBwcm9qcGF0aCA9IHBhdGgudHJhbnNsYXRlKHBhdGguZ2V0cmVsYXRpdmUocHJqLnNvbHV0aW9uLmxvY2F0aW9uLCB2c3R1ZGlvLnByb2plY3RmaWxlKHByaikpLCAiXFwiKQpfcCgnUHJvamVjdCgieyVzfSIpID0gIiVzIiwgIiVzIiwgInslc30iJywgdnN0dWRpby50b29sKHByaiksIHByai5uYW1lLCBwcm9qcGF0aCwgcHJqLnV1aWQpCnNsbjIwMDUucHJvamVjdGRlcGVuZGVuY2llcyhwcmopCl9wKCdFbmRQcm9qZWN0JykKZW5kCmZ1bmN0aW9uIHNsbjIwMDUucHJvamVjdGRlcGVuZGVuY2llcyhwcmopCmxvY2FsIGRlcHMgPSBwcmVtYWtlLmdldGRlcGVuZGVuY2llcyhwcmopCmlmICNkZXBzID4gMCB0aGVuCl9wKCdcdFByb2plY3RTZWN0aW9uKFByb2plY3REZXBlbmRlbmNpZXMpID0gcG9zdFByb2plY3QnKQpmb3IgXywgZGVwIGluIGlwYWlycyhkZXBzKSBkbwpfcCgnXHRcdHslc30gPSB7JXN9JywgZGVwLnV1aWQsIGRlcC51dWlkKQplbmQKX3AoJ1x0RW5kUHJvamVjdFNlY3Rpb24nKQplbmQKZW5kCmZ1bmN0aW9uIHNsbjIwMDUucGxhdGZvcm1zKHNsbikKX3AoJ1x0R2xvYmFsU2VjdGlvbihTb2x1dGlvbkNvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcHJlU29sdXRpb24nKQpmb3IgXywgY2ZnIGluIGlwYWlycyhzbG4udnN0dWRpb19jb25maWdzKSBkbwpfcCgnXHRcdCVzID0gJXMnLCBjZmcubmFtZSwgY2ZnLm5hbWUpCmVuZApfcCgnXHRFbmRHbG9iYWxTZWN0aW9uJykKZW5kCmZ1bmN0aW9uIHNsbjIwMDUucHJvamVjdF9wbGF0Zm9ybXMoc2xuKQpfcCgnXHRHbG9iYWxTZWN0aW9uKFByb2plY3RDb25maWd1cmF0aW9uUGxhdGZvcm1zKSA9IHBvc3RTb2x1dGlvbicpCmZvciBwcmogaW4gcHJlbWFrZS5zb2x1dGlvbi5lYWNocHJvamVjdChzbG4pIGRvCmZvciBfLCBjZmcgaW4gaXBhaXJzKHNsbi52c3R1ZGlvX2NvbmZpZ3MpIGRvCmxvY2FsIG1hcHBlZAppZiBwcmVtYWtlLmlzZG90bmV0cHJvamVjdChwcmopIHRoZW4KbWFwcGVkID0gIkFueSBDUFUiCmVsc2UKaWYgY2ZnLnBsYXRmb3JtID09ICJBbnkgQ1BVIiBvciBjZmcucGxhdGZvcm0gPT0gIk1peGVkIFBsYXRmb3JtcyIgdGhlbgptYXBwZWQgPSBzbG4udnN0dWRpb19jb25maWdzWzNdLnBsYXRmb3JtCmVsc2UKbWFwcGVkID0gY2ZnLnBsYXRmb3JtCmVuZAplbmQKX3AoJ1x0XHR7JXN9LiVzLkFjdGl2ZUNmZyA9ICVzfCVzJywgcHJqLnV1aWQsIGNmZy5uYW1lLCBjZmcuYnVpbGRjZmcsIG1hcHBlZCkKaWYgbWFwcGVkID09IGNmZy5wbGF0Zm9ybSBvciBjZmcucGxhdGZvcm0gPT0gIk1peGVkIFBsYXRmb3JtcyIgdGhlbgpfcCgnXHRcdHslc30uJXMuQnVpbGQuMCA9ICVzfCVzJywgIHByai51dWlkLCBjZmcubmFtZSwgY2ZnLmJ1aWxkY2ZnLCBtYXBwZWQpCmVuZAplbmQKZW5kCl9wKCdcdEVuZEdsb2JhbFNlY3Rpb24nKQplbmQKZnVuY3Rpb24gc2xuMjAwNS5wcm9wZXJ0aWVzKHNsbikKX3AoJ1x0R2xvYmFsU2VjdGlvbihTb2x1dGlvblByb3BlcnRpZXMpID0gcHJlU29sdXRpb24nKQpfcCgnXHRcdEhpZGVTb2x1dGlvbk5vZGUgPSBGQUxTRScpCl9wKCdcdEVuZEdsb2JhbFNlY3Rpb24nKQplbmQKAHByZW1ha2UudnN0dWRpby5jczIwMDUgPSB7IH0KbG9jYWwgdnN0dWRpbyA9IHByZW1ha2UudnN0dWRpbwpsb2NhbCBjczIwMDUgID0gcHJlbWFrZS52c3R1ZGlvLmNzMjAwNQpsb2NhbCBmdW5jdGlvbiBnZXRlbGVtZW50cyhwcmosIGFjdGlvbiwgZm5hbWUpCmlmIGFjdGlvbiA9PSAiQ29tcGlsZSIgYW5kIGZuYW1lOmVuZHN3aXRoKCIuY3MiKSB0aGVuCmlmIGZuYW1lOmVuZHN3aXRoKCIuRGVzaWduZXIuY3MiKSB0aGVuCmxvY2FsIGJhc2VuYW1lID0gZm5hbWU6c3ViKDEsIC0xMykKbG9jYWwgdGVzdG5hbWUgPSBiYXNlbmFtZSAuLiAiLmNzIgppZiBwcmVtYWtlLmZpbmRmaWxlKHByaiwgdGVzdG5hbWUpIHRoZW4KcmV0dXJuICJEZXBlbmRlbmN5IiwgdGVzdG5hbWUKZW5kCnRlc3RuYW1lID0gYmFzZW5hbWUgLi4gIi5yZXN4IgppZiBwcmVtYWtlLmZpbmRmaWxlKHByaiwgdGVzdG5hbWUpIHRoZW4KcmV0dXJuICJBdXRvR2VuIiwgdGVzdG5hbWUKZW5kCmVsc2UKbG9jYWwgYmFzZW5hbWUgPSBmbmFtZTpzdWIoMSwgLTQpCmxvY2FsIHRlc3RuYW1lID0gYmFzZW5hbWUgLi4gIi5EZXNpZ25lci5jcyIKaWYgcHJlbWFrZS5maW5kZmlsZShwcmosIHRlc3RuYW1lKSB0aGVuCnJldHVybiAiU3ViVHlwZUZvcm0iCmVuZAplbmQKZW5kCmlmIGFjdGlvbiA9PSAiRW1iZWRkZWRSZXNvdXJjZSIgYW5kIGZuYW1lOmVuZHN3aXRoKCIucmVzeCIpIHRoZW4KbG9jYWwgYmFzZW5hbWUgPSBmbmFtZTpzdWIoMSwgLTYpCmxvY2FsIHRlc3RuYW1lID0gcGF0aC5nZXRuYW1lKGJhc2VuYW1lIC4uICIuY3MiKQppZiBwcmVtYWtlLmZpbmRmaWxlKHByaiwgdGVzdG5hbWUpIHRoZW4KaWYgcHJlbWFrZS5maW5kZmlsZShwcmosIGJhc2VuYW1lIC4uICIuRGVzaWduZXIuY3MiKSB0aGVuCnJldHVybiAiRGVzaWduZXJUeXBlIiwgdGVzdG5hbWUKZWxzZQpyZXR1cm4gIkRlcGVuZGVuY3kiLCB0ZXN0bmFtZQplbmQKZWxzZQp0ZXN0bmFtZSA9IHBhdGguZ2V0bmFtZShiYXNlbmFtZSAuLiAiLkRlc2lnbmVyLmNzIikKaWYgcHJlbWFrZS5maW5kZmlsZShwcmosIHRlc3RuYW1lKSB0aGVuCnJldHVybiAiQXV0b0dlbmVyYXRlZCIKZW5kCmVuZAplbmQKaWYgYWN0aW9uID09ICJDb250ZW50IiB0aGVuCnJldHVybiAiQ29weU5ld2VzdCIKZW5kCnJldHVybiAiTm9uZSIKZW5kCmZ1bmN0aW9uIGNzMjAwNS5hcmNoKHByaikKcmV0dXJuICJBbnlDUFUiCmVuZApmdW5jdGlvbiBjczIwMDUuZmlsZXMocHJqKQpsb2NhbCB0ciA9IHByZW1ha2UucHJvamVjdC5idWlsZHNvdXJjZXRyZWUocHJqKQpwcmVtYWtlLnRyZWUudHJhdmVyc2UodHIsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSkKbG9jYWwgYWN0aW9uID0gcHJlbWFrZS5kb3RuZXQuZ2V0YnVpbGRhY3Rpb24obm9kZS5jZmcpCmxvY2FsIGZuYW1lICA9IHBhdGgudHJhbnNsYXRlKHByZW1ha2UuZXNjKG5vZGUuY2ZnLm5hbWUpLCAiXFwiKQpsb2NhbCBlbGVtZW50cywgZGVwZW5kZW5jeSA9IGdldGVsZW1lbnRzKHByaiwgYWN0aW9uLCBub2RlLnBhdGgpCmlmIGVsZW1lbnRzID09ICJOb25lIiB0aGVuCl9wKCcgICAgPCVzIEluY2x1ZGU9IiVzIiAvPicsIGFjdGlvbiwgZm5hbWUpCmVsc2UKX3AoJyAgICA8JXMgSW5jbHVkZT0iJXMiPicsIGFjdGlvbiwgZm5hbWUpCmlmIGVsZW1lbnRzID09ICJBdXRvR2VuIiB0aGVuCl9wKCcgICAgICA8QXV0b0dlbj5UcnVlPC9BdXRvR2VuPicpCmVsc2VpZiBlbGVtZW50cyA9PSAiQXV0b0dlbmVyYXRlZCIgdGhlbgpfcCgnICAgICAgPFN1YlR5cGU+RGVzaWduZXI8L1N1YlR5cGU+JykKX3AoJyAgICAgIDxHZW5lcmF0b3I+UmVzWEZpbGVDb2RlR2VuZXJhdG9yPC9HZW5lcmF0b3I+JykKX3AoJyAgICAgIDxMYXN0R2VuT3V0cHV0PiVzLkRlc2lnbmVyLmNzPC9MYXN0R2VuT3V0cHV0PicsIHByZW1ha2UuZXNjKHBhdGguZ2V0YmFzZW5hbWUobm9kZS5uYW1lKSkpCmVsc2VpZiBlbGVtZW50cyA9PSAiU3ViVHlwZURlc2lnbmVyIiB0aGVuCl9wKCcgICAgICA8U3ViVHlwZT5EZXNpZ25lcjwvU3ViVHlwZT4nKQplbHNlaWYgZWxlbWVudHMgPT0gIlN1YlR5cGVGb3JtIiB0aGVuCl9wKCcgICAgICA8U3ViVHlwZT5Gb3JtPC9TdWJUeXBlPicpCmVsc2VpZiBlbGVtZW50cyA9PSAiUHJlc2VydmVOZXdlc3QiIHRoZW4KX3AoJyAgICAgIDxDb3B5VG9PdXRwdXREaXJlY3Rvcnk+UHJlc2VydmVOZXdlc3Q8L0NvcHlUb091dHB1dERpcmVjdG9yeT4nKQplbmQKaWYgZGVwZW5kZW5jeSB0aGVuCl9wKCcgICAgICA8RGVwZW5kZW50VXBvbj4lczwvRGVwZW5kZW50VXBvbj4nLCBwYXRoLnRyYW5zbGF0ZShwcmVtYWtlLmVzYyhkZXBlbmRlbmN5KSwgIlxcIikpCmVuZApfcCgnICAgIDwvJXM+JywgYWN0aW9uKQplbmQKZW5kCn0sIGZhbHNlKQplbmQKZnVuY3Rpb24gY3MyMDA1LnByb2plY3RlbGVtZW50KHByaikKbG9jYWwgYWN0aW9uID0gcHJlbWFrZS5hY3Rpb24uY3VycmVudCgpCmxvY2FsIHRvb2x2ZXJzaW9uID0gJycKaWYgYWN0aW9uLnZzdHVkaW8udG9vbHNWZXJzaW9uIHRoZW4KdG9vbHZlcnNpb24gPSBzdHJpbmcuZm9ybWF0KCcgVG9vbHNWZXJzaW9uPSIlcyInLCBhY3Rpb24udnN0dWRpby50b29sc1ZlcnNpb24pCmVuZAppZiBfQUNUSU9OID4gInZzMjAwOCIgdGhlbgpfcCgnPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4nKQplbmQKX3AoJzxQcm9qZWN0JXMgRGVmYXVsdFRhcmdldHM9IkJ1aWxkIiB4bWxucz0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kZXZlbG9wZXIvbXNidWlsZC8yMDAzIj4nLCB0b29sdmVyc2lvbikKZW5kCmZ1bmN0aW9uIGNzMjAwNS5wcm9qZWN0c2V0dGluZ3MocHJqKQpfcCgnICA8UHJvcGVydHlHcm91cD4nKQpfcCgnICAgIDxDb25maWd1cmF0aW9uIENvbmRpdGlvbj0iIFwnJChDb25maWd1cmF0aW9uKVwnID09IFwnXCcgIj4lczwvQ29uZmlndXJhdGlvbj4nLCBwcmVtYWtlLmVzYyhwcmouc29sdXRpb24uY29uZmlndXJhdGlvbnNbMV0pKQpfcCgnICAgIDxQbGF0Zm9ybSBDb25kaXRpb249IiBcJyQoUGxhdGZvcm0pXCcgPT0gXCdcJyAiPiVzPC9QbGF0Zm9ybT4nLCBjczIwMDUuYXJjaChwcmopKQpsb2NhbCBhY3Rpb24gPSBwcmVtYWtlLmFjdGlvbi5jdXJyZW50KCkKaWYgYWN0aW9uLnZzdHVkaW8ucHJvZHVjdFZlcnNpb24gdGhlbgpfcCgnICAgIDxQcm9kdWN0VmVyc2lvbj4lczwvUHJvZHVjdFZlcnNpb24+JywgYWN0aW9uLnZzdHVkaW8ucHJvZHVjdFZlcnNpb24pCmVuZAppZiBfQUNUSU9OIDwgInZzMjAxMiIgdGhlbgpfcCgnICAgIDxTY2hlbWFWZXJzaW9uPjIuMDwvU2NoZW1hVmVyc2lvbj4nKQplbmQKX3AoJyAgICA8UHJvamVjdEd1aWQ+eyVzfTwvUHJvamVjdEd1aWQ+JywgcHJqLnV1aWQpCl9wKCcgICAgPE91dHB1dFR5cGU+JXM8L091dHB1dFR5cGU+JywgcHJlbWFrZS5kb3RuZXQuZ2V0a2luZChwcmopKQpfcCgnICAgIDxBcHBEZXNpZ25lckZvbGRlcj5Qcm9wZXJ0aWVzPC9BcHBEZXNpZ25lckZvbGRlcj4nKQpfcCgnICAgIDxSb290TmFtZXNwYWNlPiVzPC9Sb290TmFtZXNwYWNlPicsIHByai5idWlsZHRhcmdldC5iYXNlbmFtZSkKX3AoJyAgICA8QXNzZW1ibHlOYW1lPiVzPC9Bc3NlbWJseU5hbWU+JywgcHJqLmJ1aWxkdGFyZ2V0LmJhc2VuYW1lKQpsb2NhbCBmcmFtZXdvcmsgPSBwcmouZnJhbWV3b3JrIG9yIGFjdGlvbi52c3R1ZGlvLnRhcmdldEZyYW1ld29yawppZiBmcmFtZXdvcmsgdGhlbgpfcCgnICAgIDxUYXJnZXRGcmFtZXdvcmtWZXJzaW9uPnYlczwvVGFyZ2V0RnJhbWV3b3JrVmVyc2lvbj4nLCBmcmFtZXdvcmspCmVuZAppZiBfQUNUSU9OID09ICd2czIwMTAnIHRoZW4KX3AoJyAgICA8VGFyZ2V0RnJhbWV3b3JrUHJvZmlsZT48L1RhcmdldEZyYW1ld29ya1Byb2ZpbGU+JykKZW5kCmlmIF9BQ1RJT04gPj0gInZzMjAxMCIgdGhlbgpfcCgnICAgIDxGaWxlQWxpZ25tZW50PjUxMjwvRmlsZUFsaWdubWVudD4nKQplbmQKX3AoJyAgPC9Qcm9wZXJ0eUdyb3VwPicpCmVuZApmdW5jdGlvbiBjczIwMDUucHJvcGVydHlncm91cChjZmcpCl9wKCcgIDxQcm9wZXJ0eUdyb3VwIENvbmRpdGlvbj0iIFwnJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKVwnID09IFwnJXN8JXNcJyAiPicsIHByZW1ha2UuZXNjKGNmZy5uYW1lKSwgY3MyMDA1LmFyY2goY2ZnKSkKaWYgX0FDVElPTiA+ICJ2czIwMDgiIHRoZW4KX3AoJyAgICA8UGxhdGZvcm1UYXJnZXQ+JXM8L1BsYXRmb3JtVGFyZ2V0PicsIGNzMjAwNS5hcmNoKGNmZykpCmVuZAplbmQKZnVuY3Rpb24gY3MyMDA1LmdlbmVyYXRlKHByaikKaW8uZW9sID0gIlxyXG4iCmNzMjAwNS5wcm9qZWN0ZWxlbWVudChwcmopCmlmIF9BQ1RJT04gPiAidnMyMDEwIiB0aGVuCl9wKCcgIDxJbXBvcnQgUHJvamVjdD0iJChNU0J1aWxkRXh0ZW5zaW9uc1BhdGgpXFwkKE1TQnVpbGRUb29sc1ZlcnNpb24pXFxNaWNyb3NvZnQuQ29tbW9uLnByb3BzIiBDb25kaXRpb249IkV4aXN0cyhcJyQoTVNCdWlsZEV4dGVuc2lvbnNQYXRoKVxcJChNU0J1aWxkVG9vbHNWZXJzaW9uKVxcTWljcm9zb2Z0LkNvbW1vbi5wcm9wc1wnKSIgLz4nKQplbmQKY3MyMDA1LnByb2plY3RzZXR0aW5ncyhwcmopCmZvciBjZmcgaW4gcHJlbWFrZS5lYWNoY29uZmlnKHByaikgZG8KY3MyMDA1LnByb3BlcnR5Z3JvdXAoY2ZnKQppZiBjZmcuZmxhZ3MuU3ltYm9scyB0aGVuCl9wKCcgICAgPERlYnVnU3ltYm9scz50cnVlPC9EZWJ1Z1N5bWJvbHM+JykKX3AoJyAgICA8RGVidWdUeXBlPmZ1bGw8L0RlYnVnVHlwZT4nKQplbHNlCl9wKCcgICAgPERlYnVnVHlwZT5wZGJvbmx5PC9EZWJ1Z1R5cGU+JykKZW5kCl9wKCcgICAgPE9wdGltaXplPiVzPC9PcHRpbWl6ZT4nLCBpaWYoY2ZnLmZsYWdzLk9wdGltaXplIG9yIGNmZy5mbGFncy5PcHRpbWl6ZVNpemUgb3IgY2ZnLmZsYWdzLk9wdGltaXplU3BlZWQsICJ0cnVlIiwgImZhbHNlIikpCl9wKCcgICAgPE91dHB1dFBhdGg+JXM8L091dHB1dFBhdGg+JywgY2ZnLmJ1aWxkdGFyZ2V0LmRpcmVjdG9yeSkKX3AoJyAgICA8RGVmaW5lQ29uc3RhbnRzPiVzPC9EZWZpbmVDb25zdGFudHM+JywgdGFibGUuY29uY2F0KHByZW1ha2UuZXNjKGNmZy5kZWZpbmVzKSwgIjsiKSkKX3AoJyAgICA8RXJyb3JSZXBvcnQ+cHJvbXB0PC9FcnJvclJlcG9ydD4nKQpfcCgnICAgIDxXYXJuaW5nTGV2ZWw+NDwvV2FybmluZ0xldmVsPicpCmlmIGNmZy5mbGFncy5VbnNhZmUgdGhlbgpfcCgnICAgIDxBbGxvd1Vuc2FmZUJsb2Nrcz50cnVlPC9BbGxvd1Vuc2FmZUJsb2Nrcz4nKQplbmQKaWYgY2ZnLmZsYWdzLkZhdGFsV2FybmluZ3MgdGhlbgpfcCgnICAgIDxUcmVhdFdhcm5pbmdzQXNFcnJvcnM+dHJ1ZTwvVHJlYXRXYXJuaW5nc0FzRXJyb3JzPicpCmVuZApfcCgnICA8L1Byb3BlcnR5R3JvdXA+JykKZW5kCl9wKCcgIDxJdGVtR3JvdXA+JykKZm9yIF8sIHJlZiBpbiBpcGFpcnMocHJlbWFrZS5nZXRsaW5rcyhwcmosICJzaWJsaW5ncyIsICJvYmplY3QiKSkgZG8KX3AoJyAgICA8UHJvamVjdFJlZmVyZW5jZSBJbmNsdWRlPSIlcyI+JywgcGF0aC50cmFuc2xhdGUocGF0aC5nZXRyZWxhdGl2ZShwcmoubG9jYXRpb24sIHZzdHVkaW8ucHJvamVjdGZpbGUocmVmKSksICJcXCIpKQpfcCgnICAgICAgPFByb2plY3Q+eyVzfTwvUHJvamVjdD4nLCByZWYudXVpZCkKX3AoJyAgICAgIDxOYW1lPiVzPC9OYW1lPicsIHByZW1ha2UuZXNjKHJlZi5uYW1lKSkKX3AoJyAgICA8L1Byb2plY3RSZWZlcmVuY2U+JykKZW5kCmZvciBfLCBsaW5rbmFtZSBpbiBpcGFpcnMocHJlbWFrZS5nZXRsaW5rcyhwcmosICJzeXN0ZW0iLCAiYmFzZW5hbWUiKSkgZG8KX3AoJyAgICA8UmVmZXJlbmNlIEluY2x1ZGU9IiVzIiAvPicsIHByZW1ha2UuZXNjKGxpbmtuYW1lKSkKZW5kCl9wKCcgIDwvSXRlbUdyb3VwPicpCl9wKCcgIDxJdGVtR3JvdXA+JykKY3MyMDA1LmZpbGVzKHByaikKX3AoJyAgPC9JdGVtR3JvdXA+JykKbG9jYWwgbXNidWlsZCA9IGlpZihfQUNUSU9OIDwgInZzMjAxMiIsICJCaW4iLCAiVG9vbHMiKQpfcCgnICA8SW1wb3J0IFByb2plY3Q9IiQoTVNCdWlsZCVzUGF0aClcXE1pY3Jvc29mdC5DU2hhcnAudGFyZ2V0cyIgLz4nLCBtc2J1aWxkKQpfcCgnICA8IS0tIFRvIG1vZGlmeSB5b3VyIGJ1aWxkIHByb2Nlc3MsIGFkZCB5b3VyIHRhc2sgaW5zaWRlIG9uZSBvZiB0aGUgdGFyZ2V0cyBiZWxvdyBhbmQgdW5jb21tZW50IGl0LicpCl9wKCcgICAgICAgT3RoZXIgc2ltaWxhciBleHRlbnNpb24gcG9pbnRzIGV4aXN0LCBzZWUgTWljcm9zb2Z0LkNvbW1vbi50YXJnZXRzLicpCl9wKCcgIDxUYXJnZXQgTmFtZT0iQmVmb3JlQnVpbGQiPicpCl9wKCcgIDwvVGFyZ2V0PicpCl9wKCcgIDxUYXJnZXQgTmFtZT0iQWZ0ZXJCdWlsZCI+JykKX3AoJyAgPC9UYXJnZXQ+JykKX3AoJyAgLS0+JykKX3AoJzwvUHJvamVjdD4nKQplbmQKAGxvY2FsIGNzMjAwNSA9IHByZW1ha2UudnN0dWRpby5jczIwMDUKZnVuY3Rpb24gY3MyMDA1LmdlbmVyYXRlX3VzZXIocHJqKQppby5lb2wgPSAiXHJcbiIKX3AoJzxQcm9qZWN0IHhtbG5zPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RldmVsb3Blci9tc2J1aWxkLzIwMDMiPicpCl9wKCcgIDxQcm9wZXJ0eUdyb3VwPicpCmxvY2FsIHJlZnBhdGhzID0gdGFibGUudHJhbnNsYXRlKHByai5saWJkaXJzLCBmdW5jdGlvbih2KSByZXR1cm4gcGF0aC5nZXRhYnNvbHV0ZShwcmoubG9jYXRpb24gLi4gIi8iIC4uIHYpIGVuZCkKX3AoJyAgICA8UmVmZXJlbmNlUGF0aD4lczwvUmVmZXJlbmNlUGF0aD4nLCBwYXRoLnRyYW5zbGF0ZSh0YWJsZS5jb25jYXQocmVmcGF0aHMsICI7IiksICJcXCIpKQpfcCgnICA8L1Byb3BlcnR5R3JvdXA+JykKX3AoJzwvUHJvamVjdD4nKQplbmQKAHByZW1ha2UudnN0dWRpby52YzIwMTAgPSB7IH0KbG9jYWwgdmMyMDEwID0gcHJlbWFrZS52c3R1ZGlvLnZjMjAxMApsb2NhbCB2c3R1ZGlvID0gcHJlbWFrZS52c3R1ZGlvCmxvY2FsIGZ1bmN0aW9uIHZzMjAxMF9jb25maWcocHJqKQpfcCgxLCc8SXRlbUdyb3VwIExhYmVsPSJQcm9qZWN0Q29uZmlndXJhdGlvbnMiPicpCmZvciBfLCBjZmdpbmZvIGluIGlwYWlycyhwcmouc29sdXRpb24udnN0dWRpb19jb25maWdzKSBkbwpfcCgyLCc8UHJvamVjdENvbmZpZ3VyYXRpb24gSW5jbHVkZT0iJXMiPicsIHByZW1ha2UuZXNjKGNmZ2luZm8ubmFtZSkpCl9wKDMsJzxDb25maWd1cmF0aW9uPiVzPC9Db25maWd1cmF0aW9uPicsY2ZnaW5mby5idWlsZGNmZykKX3AoMywnPFBsYXRmb3JtPiVzPC9QbGF0Zm9ybT4nLGNmZ2luZm8ucGxhdGZvcm0pCl9wKDIsJzwvUHJvamVjdENvbmZpZ3VyYXRpb24+JykKZW5kCl9wKDEsJzwvSXRlbUdyb3VwPicpCmVuZApsb2NhbCBmdW5jdGlvbiB2czIwMTBfZ2xvYmFscyhwcmopCl9wKDEsJzxQcm9wZXJ0eUdyb3VwIExhYmVsPSJHbG9iYWxzIj4nKQpfcCgyLCc8UHJvamVjdEd1aWQ+eyVzfTwvUHJvamVjdEd1aWQ+JyxwcmoudXVpZCkKX3AoMiwnPFJvb3ROYW1lc3BhY2U+JXM8L1Jvb3ROYW1lc3BhY2U+JyxwcmoubmFtZSkKaWYgcHJqLmZsYWdzIGFuZCBwcmouZmxhZ3MuTWFuYWdlZCB0aGVuCl9wKDIsJzxUYXJnZXRGcmFtZXdvcmtWZXJzaW9uPnY0LjA8L1RhcmdldEZyYW1ld29ya1ZlcnNpb24+JykKX3AoMiwnPEtleXdvcmQ+TWFuYWdlZENQcm9qPC9LZXl3b3JkPicpCmVsc2UKX3AoMiwnPEtleXdvcmQ+V2luMzJQcm9qPC9LZXl3b3JkPicpCmVuZApfcCgxLCc8L1Byb3BlcnR5R3JvdXA+JykKZW5kCmZ1bmN0aW9uIHZjMjAxMC5jb25maWdfdHlwZShjb25maWcpCmxvY2FsIHQgPQp7ClNoYXJlZExpYiA9ICJEeW5hbWljTGlicmFyeSIsClN0YXRpY0xpYiA9ICJTdGF0aWNMaWJyYXJ5IiwKQ29uc29sZUFwcCA9ICJBcHBsaWNhdGlvbiIsCldpbmRvd2VkQXBwID0gIkFwcGxpY2F0aW9uIgp9CnJldHVybiB0W2NvbmZpZy5raW5kXQplbmQKbG9jYWwgZnVuY3Rpb24gaWZfY29uZmlnX2FuZF9wbGF0Zm9ybSgpCnJldHVybiAnQ29uZGl0aW9uPSJcJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSlcJz09XCclc1wnIicKZW5kCmxvY2FsIGZ1bmN0aW9uIG9wdGltaXNhdGlvbihjZmcpCmxvY2FsIHJlc3VsdCA9ICJEaXNhYmxlZCIKZm9yIF8sIHZhbHVlIGluIGlwYWlycyhjZmcuZmxhZ3MpIGRvCmlmICh2YWx1ZSA9PSAiT3B0aW1pemUiKSB0aGVuCnJlc3VsdCA9ICJGdWxsIgplbHNlaWYgKHZhbHVlID09ICJPcHRpbWl6ZVNpemUiKSB0aGVuCnJlc3VsdCA9ICJNaW5TcGFjZSIKZWxzZWlmICh2YWx1ZSA9PSAiT3B0aW1pemVTcGVlZCIpIHRoZW4KcmVzdWx0ID0gIk1heFNwZWVkIgplbmQKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHZjMjAxMC5jb25maWd1cmF0aW9uUHJvcGVydHlHcm91cChjZmcsIGNmZ2luZm8pCl9wKDEsJzxQcm9wZXJ0eUdyb3VwICcuLmlmX2NvbmZpZ19hbmRfcGxhdGZvcm0oKSAuLicgTGFiZWw9IkNvbmZpZ3VyYXRpb24iPicKLCBwcmVtYWtlLmVzYyhjZmdpbmZvLm5hbWUpKQpfcCgyLCc8Q29uZmlndXJhdGlvblR5cGU+JXM8L0NvbmZpZ3VyYXRpb25UeXBlPicsdmMyMDEwLmNvbmZpZ190eXBlKGNmZykpCl9wKDIsJzxVc2VEZWJ1Z0xpYnJhcmllcz4lczwvVXNlRGVidWdMaWJyYXJpZXM+JywgaWlmKG9wdGltaXNhdGlvbihjZmcpID09ICJEaXNhYmxlZCIsInRydWUiLCJmYWxzZSIpKQpfcCgyLCc8Q2hhcmFjdGVyU2V0PiVzPC9DaGFyYWN0ZXJTZXQ+JyxpaWYoY2ZnLmZsYWdzLlVuaWNvZGUsIlVuaWNvZGUiLCJNdWx0aUJ5dGUiKSkKaWYgX0FDVElPTiA+ICJ2czIwMTAiIHRoZW4KX3AoMiwnPFBsYXRmb3JtVG9vbHNldD4lczwvUGxhdGZvcm1Ub29sc2V0PicsICJ2MTEwIikKZW5kCmlmIGNmZy5mbGFncy5NRkMgdGhlbgpfcCgyLCc8VXNlT2ZNZmM+JXM8L1VzZU9mTWZjPicsIGlpZihjZmcuZmxhZ3MuU3RhdGljUnVudGltZSwgIlN0YXRpYyIsICJEeW5hbWljIikpCmVuZAppZiBjZmcuZmxhZ3MuQVRMIG9yIGNmZy5mbGFncy5TdGF0aWNBVEwgdGhlbgpfcCgyLCc8VXNlT2ZBdGw+JXM8L1VzZU9mQXRsPicsIGlpZihjZmcuZmxhZ3MuU3RhdGljQVRMLCAiU3RhdGljIiwgIkR5bmFtaWMiKSkKZW5kCmlmIGNmZy5mbGFncy5NYW5hZ2VkIHRoZW4KX3AoMiwnPENMUlN1cHBvcnQ+dHJ1ZTwvQ0xSU3VwcG9ydD4nKQplbmQKX3AoMSwnPC9Qcm9wZXJ0eUdyb3VwPicpCmVuZApsb2NhbCBmdW5jdGlvbiBpbXBvcnRfcHJvcHMocHJqKQpmb3IgXywgY2ZnaW5mbyBpbiBpcGFpcnMocHJqLnNvbHV0aW9uLnZzdHVkaW9fY29uZmlncykgZG8KbG9jYWwgY2ZnID0gcHJlbWFrZS5nZXRjb25maWcocHJqLCBjZmdpbmZvLnNyY19idWlsZGNmZywgY2ZnaW5mby5zcmNfcGxhdGZvcm0pCl9wKDEsJzxJbXBvcnRHcm91cCAnLi5pZl9jb25maWdfYW5kX3BsYXRmb3JtKCkgLi4nIExhYmVsPSJQcm9wZXJ0eVNoZWV0cyI+JwoscHJlbWFrZS5lc2MoY2ZnaW5mby5uYW1lKSkKX3AoMiwnPEltcG9ydCBQcm9qZWN0PSIkKFVzZXJSb290RGlyKVxcTWljcm9zb2Z0LkNwcC4kKFBsYXRmb3JtKS51c2VyLnByb3BzIiBDb25kaXRpb249ImV4aXN0cyhcJyQoVXNlclJvb3REaXIpXFxNaWNyb3NvZnQuQ3BwLiQoUGxhdGZvcm0pLnVzZXIucHJvcHNcJykiIExhYmVsPSJMb2NhbEFwcERhdGFQbGF0Zm9ybSIgLz4nKQpfcCgxLCc8L0ltcG9ydEdyb3VwPicpCmVuZAplbmQKZnVuY3Rpb24gdmMyMDEwLm91dHB1dFByb3BlcnRpZXMocHJqKQpmb3IgXywgY2ZnaW5mbyBpbiBpcGFpcnMocHJqLnNvbHV0aW9uLnZzdHVkaW9fY29uZmlncykgZG8KbG9jYWwgY2ZnID0gcHJlbWFrZS5nZXRjb25maWcocHJqLCBjZmdpbmZvLnNyY19idWlsZGNmZywgY2ZnaW5mby5zcmNfcGxhdGZvcm0pCmxvY2FsIHRhcmdldCA9IGNmZy5idWlsZHRhcmdldApfcCgxLCc8UHJvcGVydHlHcm91cCAnLi5pZl9jb25maWdfYW5kX3BsYXRmb3JtKCkgLi4nPicsIHByZW1ha2UuZXNjKGNmZ2luZm8ubmFtZSkpCl9wKDIsJzxPdXREaXI+JXNcXDwvT3V0RGlyPicsIHByZW1ha2UuZXNjKHRhcmdldC5kaXJlY3RvcnkpKQppZiBjZmcucGxhdGZvcm0gPT0gIlhib3gzNjAiIHRoZW4KX3AoMiwnPE91dHB1dEZpbGU+JChPdXREaXIpJXM8L091dHB1dEZpbGU+JywgcHJlbWFrZS5lc2ModGFyZ2V0Lm5hbWUpKQplbmQKX3AoMiwnPEludERpcj4lc1xcPC9JbnREaXI+JywgcHJlbWFrZS5lc2MoY2ZnLm9iamVjdHNkaXIpKQpfcCgyLCc8VGFyZ2V0TmFtZT4lczwvVGFyZ2V0TmFtZT4nLCBwcmVtYWtlLmVzYyhwYXRoLmdldGJhc2VuYW1lKHRhcmdldC5uYW1lKSkpCl9wKDIsJzxUYXJnZXRFeHQ+JXM8L1RhcmdldEV4dD4nLCBwcmVtYWtlLmVzYyhwYXRoLmdldGV4dGVuc2lvbih0YXJnZXQubmFtZSkpKQppZiBjZmcua2luZCA9PSAiU2hhcmVkTGliIiB0aGVuCmxvY2FsIGlnbm9yZSA9IChjZmcuZmxhZ3MuTm9JbXBvcnRMaWIgfj0gbmlsKQogX3AoMiwnPElnbm9yZUltcG9ydExpYnJhcnk+JXM8L0lnbm9yZUltcG9ydExpYnJhcnk+JywgdG9zdHJpbmcoaWdub3JlKSkKZW5kCmlmIGNmZy5raW5kIH49ICJTdGF0aWNMaWIiIHRoZW4KX3AoMiwnPExpbmtJbmNyZW1lbnRhbD4lczwvTGlua0luY3JlbWVudGFsPicsIHRvc3RyaW5nKHByZW1ha2UuY29uZmlnLmlzaW5jcmVtZW50YWxsaW5rKGNmZykpKQplbmQKaWYgY2ZnLmZsYWdzLk5vTWFuaWZlc3QgdGhlbgpfcCgyLCc8R2VuZXJhdGVNYW5pZmVzdD5mYWxzZTwvR2VuZXJhdGVNYW5pZmVzdD4nKQplbmQKX3AoMSwnPC9Qcm9wZXJ0eUdyb3VwPicpCmVuZAplbmQKbG9jYWwgZnVuY3Rpb24gcnVudGltZShjZmcpCmxvY2FsIHJ1bnRpbWUKbG9jYWwgZmxhZ3MgPSBjZmcuZmxhZ3MKaWYgcHJlbWFrZS5jb25maWcuaXNkZWJ1Z2J1aWxkKGNmZykgdGhlbgpydW50aW1lID0gaWlmKGZsYWdzLlN0YXRpY1J1bnRpbWUgYW5kIG5vdCBmbGFncy5NYW5hZ2VkLCAiTXVsdGlUaHJlYWRlZERlYnVnIiwgIk11bHRpVGhyZWFkZWREZWJ1Z0RMTCIpCmVsc2UKcnVudGltZSA9IGlpZihmbGFncy5TdGF0aWNSdW50aW1lIGFuZCBub3QgZmxhZ3MuTWFuYWdlZCwgIk11bHRpVGhyZWFkZWQiLCAiTXVsdGlUaHJlYWRlZERMTCIpCmVuZApyZXR1cm4gcnVudGltZQplbmQKbG9jYWwgZnVuY3Rpb24gcHJlY29tcGlsZWRfaGVhZGVyKGNmZykKICAgICAgaWYgbm90IGNmZy5mbGFncy5Ob1BDSCBhbmQgY2ZnLnBjaGhlYWRlciB0aGVuCl9wKDMsJzxQcmVjb21waWxlZEhlYWRlcj5Vc2U8L1ByZWNvbXBpbGVkSGVhZGVyPicpCl9wKDMsJzxQcmVjb21waWxlZEhlYWRlckZpbGU+JXM8L1ByZWNvbXBpbGVkSGVhZGVyRmlsZT4nLCBjZmcucGNoaGVhZGVyKQplbHNlCl9wKDMsJzxQcmVjb21waWxlZEhlYWRlcj48L1ByZWNvbXBpbGVkSGVhZGVyPicpCmVuZAplbmQKbG9jYWwgZnVuY3Rpb24gcHJlcHJvY2Vzc29yKGluZGVudCxjZmcpCmlmICNjZmcuZGVmaW5lcyA+IDAgdGhlbgpfcChpbmRlbnQsJzxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4lczslJShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3NvckRlZmluaXRpb25zPicKLHByZW1ha2UuZXNjKHRhYmxlLmNvbmNhdChjZmcuZGVmaW5lcywgIjsiKSkpCmVsc2UKX3AoaW5kZW50LCc8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+PC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4nKQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIGluY2x1ZGVfZGlycyhpbmRlbnQsY2ZnKQppZiAjY2ZnLmluY2x1ZGVkaXJzID4gMCB0aGVuCl9wKGluZGVudCwnPEFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM+JXM7JSUoQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcyk8L0FkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM+JwoscHJlbWFrZS5lc2MocGF0aC50cmFuc2xhdGUodGFibGUuY29uY2F0KGNmZy5pbmNsdWRlZGlycywgIjsiKSwgJ1xcJykpKQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIHJlc291cmNlX2NvbXBpbGUoY2ZnKQpfcCgyLCc8UmVzb3VyY2VDb21waWxlPicpCnByZXByb2Nlc3NvcigzLGNmZykKaW5jbHVkZV9kaXJzKDMsY2ZnKQpfcCgyLCc8L1Jlc291cmNlQ29tcGlsZT4nKQplbmQKbG9jYWwgZnVuY3Rpb24gZXhjZXB0aW9ucyhjZmcpCmlmIGNmZy5mbGFncy5Ob0V4Y2VwdGlvbnMgdGhlbgpfcCgyLCc8RXhjZXB0aW9uSGFuZGxpbmc+ZmFsc2U8L0V4Y2VwdGlvbkhhbmRsaW5nPicpCmVsc2VpZiBjZmcuZmxhZ3MuU0VIIHRoZW4KX3AoMiwnPEV4Y2VwdGlvbkhhbmRsaW5nPkFzeW5jPC9FeGNlcHRpb25IYW5kbGluZz4nKQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIHJ0dGkoY2ZnKQppZiBjZmcuZmxhZ3MuTm9SVFRJIGFuZCBub3QgY2ZnLmZsYWdzLk1hbmFnZWQgdGhlbgpfcCgzLCc8UnVudGltZVR5cGVJbmZvPmZhbHNlPC9SdW50aW1lVHlwZUluZm8+JykKZW5kCmVuZApsb2NhbCBmdW5jdGlvbiB3Y2hhcl90X2J1aWxkaW4oY2ZnKQppZiBjZmcuZmxhZ3MuTmF0aXZlV0NoYXIgdGhlbgpfcCgzLCc8VHJlYXRXQ2hhcl90QXNCdWlsdEluVHlwZT50cnVlPC9UcmVhdFdDaGFyX3RBc0J1aWx0SW5UeXBlPicpCmVsc2VpZiBjZmcuZmxhZ3MuTm9OYXRpdmVXQ2hhciB0aGVuCl9wKDMsJzxUcmVhdFdDaGFyX3RBc0J1aWx0SW5UeXBlPmZhbHNlPC9UcmVhdFdDaGFyX3RBc0J1aWx0SW5UeXBlPicpCmVuZAplbmQKbG9jYWwgZnVuY3Rpb24gc3NlKGNmZykKaWYgY2ZnLmZsYWdzLkVuYWJsZVNTRSB0aGVuCl9wKDMsJzxFbmFibGVFbmhhbmNlZEluc3RydWN0aW9uU2V0PlN0cmVhbWluZ1NJTURFeHRlbnNpb25zPC9FbmFibGVFbmhhbmNlZEluc3RydWN0aW9uU2V0PicpCmVsc2VpZiBjZmcuZmxhZ3MuRW5hYmxlU1NFMiB0aGVuCl9wKDMsJzxFbmFibGVFbmhhbmNlZEluc3RydWN0aW9uU2V0PlN0cmVhbWluZ1NJTURFeHRlbnNpb25zMjwvRW5hYmxlRW5oYW5jZWRJbnN0cnVjdGlvblNldD4nKQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIGZsb2F0aW5nX3BvaW50KGNmZykKICAgICBpZiBjZmcuZmxhZ3MuRmxvYXRGYXN0IHRoZW4KX3AoMywnPEZsb2F0aW5nUG9pbnRNb2RlbD5GYXN0PC9GbG9hdGluZ1BvaW50TW9kZWw+JykKZWxzZWlmIGNmZy5mbGFncy5GbG9hdFN0cmljdCBhbmQgbm90IGNmZy5mbGFncy5NYW5hZ2VkIHRoZW4KX3AoMywnPEZsb2F0aW5nUG9pbnRNb2RlbD5TdHJpY3Q8L0Zsb2F0aW5nUG9pbnRNb2RlbD4nKQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIGRlYnVnX2luZm8oY2ZnKQpsb2NhbCBkZWJ1Z19pbmZvID0gJycKaWYgY2ZnLmZsYWdzLlN5bWJvbHMgdGhlbgppZiBjZmcucGxhdGZvcm0gPT0gIng2NCIKb3IgY2ZnLmZsYWdzLk1hbmFnZWQKb3IgcHJlbWFrZS5jb25maWcuaXNvcHRpbWl6ZWRidWlsZChjZmcuZmxhZ3MpCm9yIGNmZy5mbGFncy5Ob0VkaXRBbmRDb250aW51ZQp0aGVuCmRlYnVnX2luZm8gPSAiUHJvZ3JhbURhdGFiYXNlIgplbHNlCmRlYnVnX2luZm8gPSAiRWRpdEFuZENvbnRpbnVlIgplbmQKZW5kCl9wKDMsJzxEZWJ1Z0luZm9ybWF0aW9uRm9ybWF0PiVzPC9EZWJ1Z0luZm9ybWF0aW9uRm9ybWF0PicsZGVidWdfaW5mbykKZW5kCmxvY2FsIGZ1bmN0aW9uIG1pbmltYWxfYnVpbGQoY2ZnKQppZiBwcmVtYWtlLmNvbmZpZy5pc2RlYnVnYnVpbGQoY2ZnKSBhbmQgbm90IGNmZy5mbGFncy5Ob01pbmltYWxSZWJ1aWxkIHRoZW4KX3AoMywnPE1pbmltYWxSZWJ1aWxkPnRydWU8L01pbmltYWxSZWJ1aWxkPicpCmVsc2UKX3AoMywnPE1pbmltYWxSZWJ1aWxkPmZhbHNlPC9NaW5pbWFsUmVidWlsZD4nKQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIGNvbXBpbGVfbGFuZ3VhZ2UoY2ZnKQppZiBjZmcubGFuZ3VhZ2UgPT0gIkMiIHRoZW4KX3AoMywnPENvbXBpbGVBcz5Db21waWxlQXNDPC9Db21waWxlQXM+JykKZW5kCmVuZApsb2NhbCBmdW5jdGlvbiB2czEwX2NsY29tcGlsZShjZmcpCl9wKDIsJzxDbENvbXBpbGU+JykKaWYgI2NmZy5idWlsZG9wdGlvbnMgPiAwIHRoZW4KX3AoMywnPEFkZGl0aW9uYWxPcHRpb25zPiVzICUlKEFkZGl0aW9uYWxPcHRpb25zKTwvQWRkaXRpb25hbE9wdGlvbnM+JywKdGFibGUuY29uY2F0KHByZW1ha2UuZXNjKGNmZy5idWlsZG9wdGlvbnMpLCAiICIpKQplbmQKX3AoMywnPE9wdGltaXphdGlvbj4lczwvT3B0aW1pemF0aW9uPicsb3B0aW1pc2F0aW9uKGNmZykpCmluY2x1ZGVfZGlycygzLGNmZykKcHJlcHJvY2Vzc29yKDMsY2ZnKQptaW5pbWFsX2J1aWxkKGNmZykKaWYgIG5vdCBwcmVtYWtlLmNvbmZpZy5pc29wdGltaXplZGJ1aWxkKGNmZy5mbGFncykgdGhlbgppZiBub3QgY2ZnLmZsYWdzLk1hbmFnZWQgdGhlbgpfcCgzLCc8QmFzaWNSdW50aW1lQ2hlY2tzPkVuYWJsZUZhc3RDaGVja3M8L0Jhc2ljUnVudGltZUNoZWNrcz4nKQplbmQKaWYgY2ZnLmZsYWdzLkV4dHJhV2FybmluZ3MgdGhlbgpfcCgzLCc8U21hbGxlclR5cGVDaGVjaz50cnVlPC9TbWFsbGVyVHlwZUNoZWNrPicpCmVuZAplbHNlCl9wKDMsJzxTdHJpbmdQb29saW5nPnRydWU8L1N0cmluZ1Bvb2xpbmc+JykKZW5kCl9wKDMsJzxSdW50aW1lTGlicmFyeT4lczwvUnVudGltZUxpYnJhcnk+JywgcnVudGltZShjZmcpKQpfcCgzLCc8RnVuY3Rpb25MZXZlbExpbmtpbmc+dHJ1ZTwvRnVuY3Rpb25MZXZlbExpbmtpbmc+JykKcHJlY29tcGlsZWRfaGVhZGVyKGNmZykKaWYgY2ZnLmZsYWdzLkV4dHJhV2FybmluZ3MgdGhlbgpfcCgzLCc8V2FybmluZ0xldmVsPkxldmVsNDwvV2FybmluZ0xldmVsPicpCmVsc2UKX3AoMywnPFdhcm5pbmdMZXZlbD5MZXZlbDM8L1dhcm5pbmdMZXZlbD4nKQplbmQKaWYgY2ZnLmZsYWdzLkZhdGFsV2FybmluZ3MgdGhlbgpfcCgzLCc8VHJlYXRXYXJuaW5nQXNFcnJvcj50cnVlPC9UcmVhdFdhcm5pbmdBc0Vycm9yPicpCmVuZApleGNlcHRpb25zKGNmZykKcnR0aShjZmcpCndjaGFyX3RfYnVpbGRpbihjZmcpCnNzZShjZmcpCmZsb2F0aW5nX3BvaW50KGNmZykKZGVidWdfaW5mbyhjZmcpCmlmIGNmZy5mbGFncy5TeW1ib2xzIHRoZW4KX3AoMywnPFByb2dyYW1EYXRhQmFzZUZpbGVOYW1lPiQoT3V0RGlyKSVzLnBkYjwvUHJvZ3JhbURhdGFCYXNlRmlsZU5hbWU+JwosIHBhdGguZ2V0YmFzZW5hbWUoY2ZnLmJ1aWxkdGFyZ2V0Lm5hbWUpKQplbmQKaWYgY2ZnLmZsYWdzLk5vRnJhbWVQb2ludGVyIHRoZW4KX3AoMywnPE9taXRGcmFtZVBvaW50ZXJzPnRydWU8L09taXRGcmFtZVBvaW50ZXJzPicpCmVuZApjb21waWxlX2xhbmd1YWdlKGNmZykKX3AoMiwnPC9DbENvbXBpbGU+JykKZW5kCmxvY2FsIGZ1bmN0aW9uIGV2ZW50X2hvb2tzKGNmZykKaWYgI2NmZy5wb3N0YnVpbGRjb21tYW5kcz4gMCB0aGVuCiAgICBfcCgyLCc8UG9zdEJ1aWxkRXZlbnQ+JykKX3AoMywnPENvbW1hbmQ+JXM8L0NvbW1hbmQ+JyxwcmVtYWtlLmVzYyh0YWJsZS5pbXBsb2RlKGNmZy5wb3N0YnVpbGRjb21tYW5kcywgIiIsICIiLCAiXHJcbiIpKSkKX3AoMiwnPC9Qb3N0QnVpbGRFdmVudD4nKQplbmQKaWYgI2NmZy5wcmVidWlsZGNvbW1hbmRzPiAwIHRoZW4KICAgIF9wKDIsJzxQcmVCdWlsZEV2ZW50PicpCl9wKDMsJzxDb21tYW5kPiVzPC9Db21tYW5kPicscHJlbWFrZS5lc2ModGFibGUuaW1wbG9kZShjZmcucHJlYnVpbGRjb21tYW5kcywgIiIsICIiLCAiXHJcbiIpKSkKX3AoMiwnPC9QcmVCdWlsZEV2ZW50PicpCmVuZAppZiAjY2ZnLnByZWxpbmtjb21tYW5kcz4gMCB0aGVuCiAgICBfcCgyLCc8UHJlTGlua0V2ZW50PicpCl9wKDMsJzxDb21tYW5kPiVzPC9Db21tYW5kPicscHJlbWFrZS5lc2ModGFibGUuaW1wbG9kZShjZmcucHJlbGlua2NvbW1hbmRzLCAiIiwgIiIsICJcclxuIikpKQpfcCgyLCc8L1ByZUxpbmtFdmVudD4nKQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIGFkZGl0aW9uYWxfb3B0aW9ucyhpbmRlbnQsY2ZnKQppZiAjY2ZnLmxpbmtvcHRpb25zID4gMCB0aGVuCl9wKGluZGVudCwnPEFkZGl0aW9uYWxPcHRpb25zPiVzICUlKEFkZGl0aW9uYWxPcHRpb25zKTwvQWRkaXRpb25hbE9wdGlvbnM+JywKdGFibGUuY29uY2F0KHByZW1ha2UuZXNjKGNmZy5saW5rb3B0aW9ucyksICIgIikpCmVuZAplbmQKbG9jYWwgZnVuY3Rpb24gbGlua190YXJnZXRfbWFjaGluZShpbmRleCxjZmcpCmxvY2FsIHBsYXRmb3JtcyA9IHt4MzIgPSAnTWFjaGluZVg4NicsIHg2NCA9ICdNYWNoaW5lWDY0J30KaWYgcGxhdGZvcm1zW2NmZy5wbGF0Zm9ybV0gdGhlbgpfcChpbmRleCwnPFRhcmdldE1hY2hpbmU+JXM8L1RhcmdldE1hY2hpbmU+JywgcGxhdGZvcm1zW2NmZy5wbGF0Zm9ybV0pCmVuZAplbmQKbG9jYWwgZnVuY3Rpb24gaXRlbV9kZWZfbGliKGNmZykKICAgICAgIC0tIFRoZSBYYm94MzYwIHByb2plY3QgZmlsZXMgYXJlIHN0b3JlZCBpbiBhbm90aGVyIHBsYWNlIGluIHRoZSBwcm9qZWN0IGZpbGUuCmlmIGNmZy5raW5kID09ICdTdGF0aWNMaWInIGFuZCBjZmcucGxhdGZvcm0gfj0gIlhib3gzNjAiIHRoZW4KX3AoMSwnPExpYj4nKQpfcCgyLCc8T3V0cHV0RmlsZT4kKE91dERpciklczwvT3V0cHV0RmlsZT4nLGNmZy5idWlsZHRhcmdldC5uYW1lKQphZGRpdGlvbmFsX29wdGlvbnMoMixjZmcpCmxpbmtfdGFyZ2V0X21hY2hpbmUoMixjZmcpCl9wKDEsJzwvTGliPicpCmVuZAplbmQKbG9jYWwgZnVuY3Rpb24gaW1wb3J0X2xpYihjZmcpCmlmIGNmZy5raW5kID09ICJTaGFyZWRMaWIiIHRoZW4KbG9jYWwgaW1wbGlibmFtZSA9IGNmZy5saW5rdGFyZ2V0LmZ1bGxwYXRoCl9wKDMsJzxJbXBvcnRMaWJyYXJ5PiVzPC9JbXBvcnRMaWJyYXJ5PicsaWlmKGNmZy5mbGFncy5Ob0ltcG9ydExpYiwgY2ZnLm9iamVjdHNkaXIgLi4gIlxcIiAuLiBwYXRoLmdldG5hbWUoaW1wbGlibmFtZSksIGltcGxpYm5hbWUpKQplbmQKZW5kCmZ1bmN0aW9uIHZjMjAxMC5saW5rKGNmZykKX3AoMiwnPExpbms+JykKX3AoMywnPFN1YlN5c3RlbT4lczwvU3ViU3lzdGVtPicsIGlpZihjZmcua2luZCA9PSAiQ29uc29sZUFwcCIsICJDb25zb2xlIiwgIldpbmRvd3MiKSkKX3AoMywnPEdlbmVyYXRlRGVidWdJbmZvcm1hdGlvbj4lczwvR2VuZXJhdGVEZWJ1Z0luZm9ybWF0aW9uPicsIHRvc3RyaW5nKGNmZy5mbGFncy5TeW1ib2xzIH49IG5pbCkpCmlmIHByZW1ha2UuY29uZmlnLmlzb3B0aW1pemVkYnVpbGQoY2ZnLmZsYWdzKSB0aGVuCl9wKDMsJzxFbmFibGVDT01EQVRGb2xkaW5nPnRydWU8L0VuYWJsZUNPTURBVEZvbGRpbmc+JykKX3AoMywnPE9wdGltaXplUmVmZXJlbmNlcz50cnVlPC9PcHRpbWl6ZVJlZmVyZW5jZXM+JykKZW5kCmlmIGNmZy5raW5kIH49ICdTdGF0aWNMaWInIHRoZW4KdmMyMDEwLmFkZGl0aW9uYWxEZXBlbmRlbmNpZXMoY2ZnKQpfcCgzLCc8T3V0cHV0RmlsZT4kKE91dERpciklczwvT3V0cHV0RmlsZT4nLCBjZmcuYnVpbGR0YXJnZXQubmFtZSkKaWYgI2NmZy5saWJkaXJzID4gMCB0aGVuCl9wKDMsJzxBZGRpdGlvbmFsTGlicmFyeURpcmVjdG9yaWVzPiVzOyUlKEFkZGl0aW9uYWxMaWJyYXJ5RGlyZWN0b3JpZXMpPC9BZGRpdGlvbmFsTGlicmFyeURpcmVjdG9yaWVzPicsCnByZW1ha2UuZXNjKHBhdGgudHJhbnNsYXRlKHRhYmxlLmNvbmNhdChjZmcubGliZGlycywgJzsnKSwgJ1xcJykpKQplbmQKaWYgdmMyMDEwLmNvbmZpZ190eXBlKGNmZykgPT0gJ0FwcGxpY2F0aW9uJyBhbmQgbm90IGNmZy5mbGFncy5XaW5NYWluIGFuZCBub3QgY2ZnLmZsYWdzLk1hbmFnZWQgdGhlbgpfcCgzLCc8RW50cnlQb2ludFN5bWJvbD5tYWluQ1JUU3RhcnR1cDwvRW50cnlQb2ludFN5bWJvbD4nKQplbmQKaW1wb3J0X2xpYihjZmcpCmxvY2FsIGRlZmZpbGUgPSBwcmVtYWtlLmZpbmRmaWxlKGNmZywgIi5kZWYiKQppZiBkZWZmaWxlIHRoZW4KX3AoMywnPE1vZHVsZURlZmluaXRpb25GaWxlPiVzPC9Nb2R1bGVEZWZpbml0aW9uRmlsZT4nLCBkZWZmaWxlKQplbmQKbGlua190YXJnZXRfbWFjaGluZSgzLGNmZykKYWRkaXRpb25hbF9vcHRpb25zKDMsY2ZnKQplbmQKX3AoMiwnPC9MaW5rPicpCmVuZApmdW5jdGlvbiB2YzIwMTAuYWRkaXRpb25hbERlcGVuZGVuY2llcyhjZmcpCmxvY2FsIGxpbmtzID0gcHJlbWFrZS5nZXRsaW5rcyhjZmcsICJzeXN0ZW0iLCAiZnVsbHBhdGgiKQppZiAjbGlua3MgPiAwIHRoZW4KX3AoMywnPEFkZGl0aW9uYWxEZXBlbmRlbmNpZXM+JXM7JSUoQWRkaXRpb25hbERlcGVuZGVuY2llcyk8L0FkZGl0aW9uYWxEZXBlbmRlbmNpZXM+JywKdGFibGUuY29uY2F0KGxpbmtzLCAiOyIpKQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIGl0ZW1fZGVmaW5pdGlvbnMocHJqKQpmb3IgXywgY2ZnaW5mbyBpbiBpcGFpcnMocHJqLnNvbHV0aW9uLnZzdHVkaW9fY29uZmlncykgZG8KbG9jYWwgY2ZnID0gcHJlbWFrZS5nZXRjb25maWcocHJqLCBjZmdpbmZvLnNyY19idWlsZGNmZywgY2ZnaW5mby5zcmNfcGxhdGZvcm0pCl9wKDEsJzxJdGVtRGVmaW5pdGlvbkdyb3VwICcgLi5pZl9jb25maWdfYW5kX3BsYXRmb3JtKCkgLi4nPicKLHByZW1ha2UuZXNjKGNmZ2luZm8ubmFtZSkpCnZzMTBfY2xjb21waWxlKGNmZykKcmVzb3VyY2VfY29tcGlsZShjZmcpCml0ZW1fZGVmX2xpYihjZmcpCnZjMjAxMC5saW5rKGNmZykKZXZlbnRfaG9va3MoY2ZnKQpfcCgxLCc8L0l0ZW1EZWZpbml0aW9uR3JvdXA+JykKZW5kCmVuZApmdW5jdGlvbiB2YzIwMTAuZ2V0ZmlsZWdyb3VwKHByaiwgZ3JvdXApCmxvY2FsIHNvcnRlZGZpbGVzID0gcHJqLnZjMjAxMHNvcnRlZGZpbGVzCmlmIG5vdCBzb3J0ZWRmaWxlcyB0aGVuCnNvcnRlZGZpbGVzID0gewpDbENvbXBpbGUgPSB7fSwKQ2xJbmNsdWRlID0ge30sCk5vbmUgPSB7fSwKUmVzb3VyY2VDb21waWxlID0ge30sCn0KZm9yIGZpbGUgaW4gcHJlbWFrZS5wcm9qZWN0LmVhY2hmaWxlKHByaikgZG8KaWYgcGF0aC5pc2NwcGZpbGUoZmlsZS5uYW1lKSB0aGVuCnRhYmxlLmluc2VydChzb3J0ZWRmaWxlcy5DbENvbXBpbGUsIGZpbGUpCmVsc2VpZiBwYXRoLmlzY3BwaGVhZGVyKGZpbGUubmFtZSkgdGhlbgp0YWJsZS5pbnNlcnQoc29ydGVkZmlsZXMuQ2xJbmNsdWRlLCBmaWxlKQplbHNlaWYgcGF0aC5pc3Jlc291cmNlZmlsZShmaWxlLm5hbWUpIHRoZW4KdGFibGUuaW5zZXJ0KHNvcnRlZGZpbGVzLlJlc291cmNlQ29tcGlsZSwgZmlsZSkKZWxzZQp0YWJsZS5pbnNlcnQoc29ydGVkZmlsZXMuTm9uZSwgZmlsZSkKZW5kCmVuZApwcmoudmMyMDEwc29ydGVkZmlsZXMgPSBzb3J0ZWRmaWxlcwplbmQKcmV0dXJuIHNvcnRlZGZpbGVzW2dyb3VwXQplbmQKZnVuY3Rpb24gdmMyMDEwLmZpbGVzKHByaikKdmMyMDEwLnNpbXBsZWZpbGVzZ3JvdXAocHJqLCAiQ2xJbmNsdWRlIikKdmMyMDEwLmNvbXBpbGVyZmlsZXNncm91cChwcmopCnZjMjAxMC5zaW1wbGVmaWxlc2dyb3VwKHByaiwgIk5vbmUiKQp2YzIwMTAuc2ltcGxlZmlsZXNncm91cChwcmosICJSZXNvdXJjZUNvbXBpbGUiKQplbmQKZnVuY3Rpb24gdmMyMDEwLnNpbXBsZWZpbGVzZ3JvdXAocHJqLCBzZWN0aW9uKQpsb2NhbCBmaWxlcyA9IHZjMjAxMC5nZXRmaWxlZ3JvdXAocHJqLCBzZWN0aW9uKQppZiAjZmlsZXMgPiAwICB0aGVuCl9wKDEsJzxJdGVtR3JvdXA+JykKZm9yIF8sIGZpbGUgaW4gaXBhaXJzKGZpbGVzKSBkbwpfcCgyLCc8JXMgSW5jbHVkZT1cIiVzXCIgLz4nLCBzZWN0aW9uLCBwYXRoLnRyYW5zbGF0ZShmaWxlLm5hbWUsICJcXCIpKQplbmQKX3AoMSwnPC9JdGVtR3JvdXA+JykKZW5kCmVuZApmdW5jdGlvbiB2YzIwMTAuY29tcGlsZXJmaWxlc2dyb3VwKHByaikKbG9jYWwgY29uZmlncyA9IHByai5zb2x1dGlvbi52c3R1ZGlvX2NvbmZpZ3MKbG9jYWwgZmlsZXMgPSB2YzIwMTAuZ2V0ZmlsZWdyb3VwKHByaiwgIkNsQ29tcGlsZSIpCmlmICNmaWxlcyA+IDAgIHRoZW4KbG9jYWwgY29uZmlnX21hcHBpbmdzID0ge30KZm9yIF8sIGNmZ2luZm8gaW4gaXBhaXJzKGNvbmZpZ3MpIGRvCmxvY2FsIGNmZyA9IHByZW1ha2UuZ2V0Y29uZmlnKHByaiwgY2ZnaW5mby5zcmNfYnVpbGRjZmcsIGNmZ2luZm8uc3JjX3BsYXRmb3JtKQppZiBjZmcucGNoaGVhZGVyIGFuZCBjZmcucGNoc291cmNlIGFuZCBub3QgY2ZnLmZsYWdzLk5vUENIIHRoZW4KY29uZmlnX21hcHBpbmdzW2NmZ2luZm9dID0gcGF0aC50cmFuc2xhdGUoY2ZnLnBjaHNvdXJjZSwgIlxcIikKZW5kCmVuZApfcCgxLCc8SXRlbUdyb3VwPicpCmZvciBfLCBmaWxlIGluIGlwYWlycyhmaWxlcykgZG8KbG9jYWwgdHJhbnNsYXRlZHBhdGggPSBwYXRoLnRyYW5zbGF0ZShmaWxlLm5hbWUsICJcXCIpCl9wKDIsJzxDbENvbXBpbGUgSW5jbHVkZT1cIiVzXCI+JywgdHJhbnNsYXRlZHBhdGgpCmZvciBfLCBjZmdpbmZvIGluIGlwYWlycyhjb25maWdzKSBkbwppZiBjb25maWdfbWFwcGluZ3NbY2ZnaW5mb10gYW5kIHRyYW5zbGF0ZWRwYXRoID09IGNvbmZpZ19tYXBwaW5nc1tjZmdpbmZvXSB0aGVuCl9wKDMsJzxQcmVjb21waWxlZEhlYWRlciAnLi4gaWZfY29uZmlnX2FuZF9wbGF0Zm9ybSgpIC4uICc+Q3JlYXRlPC9QcmVjb21waWxlZEhlYWRlcj4nLCBwcmVtYWtlLmVzYyhjZmdpbmZvLm5hbWUpKQpjb25maWdfbWFwcGluZ3NbY2ZnaW5mb10gPSBuaWwgIC0tb25seSBvbmUgc291cmNlIGZpbGUgcGVyIHBjaAplbmQKZW5kCl9wKDIsJzwvQ2xDb21waWxlPicpCmVuZApfcCgxLCc8L0l0ZW1Hcm91cD4nKQplbmQKZW5kCmZ1bmN0aW9uIHZjMjAxMC5oZWFkZXIodGFyZ2V0cykKaW8uZW9sID0gIlxyXG4iCl9wKCc8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtOCI/PicpCmxvY2FsIHQgPSAiIgppZiB0YXJnZXRzIHRoZW4KdCA9ICcgRGVmYXVsdFRhcmdldHM9IicgLi4gdGFyZ2V0cyAuLiAnIicKZW5kCl9wKCc8UHJvamVjdCVzIFRvb2xzVmVyc2lvbj0iNC4wIiB4bWxucz0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kZXZlbG9wZXIvbXNidWlsZC8yMDAzIj4nLCB0KQplbmQKZnVuY3Rpb24gcHJlbWFrZS52czIwMTBfdmN4cHJvaihwcmopCmlvLmluZGVudCA9ICIgICIKdmMyMDEwLmhlYWRlcigiQnVpbGQiKQp2czIwMTBfY29uZmlnKHByaikKdnMyMDEwX2dsb2JhbHMocHJqKQpfcCgxLCc8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcXE1pY3Jvc29mdC5DcHAuRGVmYXVsdC5wcm9wcyIgLz4nKQpmb3IgXywgY2ZnaW5mbyBpbiBpcGFpcnMocHJqLnNvbHV0aW9uLnZzdHVkaW9fY29uZmlncykgZG8KbG9jYWwgY2ZnID0gcHJlbWFrZS5nZXRjb25maWcocHJqLCBjZmdpbmZvLnNyY19idWlsZGNmZywgY2ZnaW5mby5zcmNfcGxhdGZvcm0pCnZjMjAxMC5jb25maWd1cmF0aW9uUHJvcGVydHlHcm91cChjZmcsIGNmZ2luZm8pCmVuZApfcCgxLCc8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcXE1pY3Jvc29mdC5DcHAucHJvcHMiIC8+JykKX3AoMSwnPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25TZXR0aW5ncyI+JykKX3AoMSwnPC9JbXBvcnRHcm91cD4nKQppbXBvcnRfcHJvcHMocHJqKQpfcCgxLCc8UHJvcGVydHlHcm91cCBMYWJlbD0iVXNlck1hY3JvcyIgLz4nKQp2YzIwMTAub3V0cHV0UHJvcGVydGllcyhwcmopCml0ZW1fZGVmaW5pdGlvbnMocHJqKQp2YzIwMTAuZmlsZXMocHJqKQp2YzIwMTAucHJvamVjdFJlZmVyZW5jZXMocHJqKQpfcCgxLCc8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcXE1pY3Jvc29mdC5DcHAudGFyZ2V0cyIgLz4nKQpfcCgxLCc8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblRhcmdldHMiPicpCl9wKDEsJzwvSW1wb3J0R3JvdXA+JykKX3AoJzwvUHJvamVjdD4nKQplbmQKZnVuY3Rpb24gdmMyMDEwLnByb2plY3RSZWZlcmVuY2VzKHByaikKbG9jYWwgZGVwcyA9IHByZW1ha2UuZ2V0ZGVwZW5kZW5jaWVzKHByaikKaWYgI2RlcHMgPiAwIHRoZW4KX3AoMSwnPEl0ZW1Hcm91cD4nKQpmb3IgXywgZGVwIGluIGlwYWlycyhkZXBzKSBkbwpsb2NhbCBkZXBwYXRoID0gcGF0aC5nZXRyZWxhdGl2ZShwcmoubG9jYXRpb24sIHZzdHVkaW8ucHJvamVjdGZpbGUoZGVwKSkKX3AoMiwnPFByb2plY3RSZWZlcmVuY2UgSW5jbHVkZT1cIiVzXCI+JywgcGF0aC50cmFuc2xhdGUoZGVwcGF0aCwgIlxcIikpCl9wKDMsJzxQcm9qZWN0Pnslc308L1Byb2plY3Q+JywgZGVwLnV1aWQpCl9wKDIsJzwvUHJvamVjdFJlZmVyZW5jZT4nKQplbmQKX3AoMSwnPC9JdGVtR3JvdXA+JykKZW5kCmVuZApmdW5jdGlvbiB2YzIwMTAuZGVidWdkaXIoY2ZnKQppZiBjZmcuZGVidWdkaXIgdGhlbgpfcCgnICAgIDxMb2NhbERlYnVnZ2VyV29ya2luZ0RpcmVjdG9yeT4lczwvTG9jYWxEZWJ1Z2dlcldvcmtpbmdEaXJlY3Rvcnk+JywgcGF0aC50cmFuc2xhdGUoY2ZnLmRlYnVnZGlyLCAnXFwnKSkKX3AoJyAgICA8RGVidWdnZXJGbGF2b3I+V2luZG93c0xvY2FsRGVidWdnZXI8L0RlYnVnZ2VyRmxhdm9yPicpCmVuZAppZiBjZmcuZGVidWdhcmdzIHRoZW4KX3AoJyAgICA8TG9jYWxEZWJ1Z2dlckNvbW1hbmRBcmd1bWVudHM+JXM8L0xvY2FsRGVidWdnZXJDb21tYW5kQXJndW1lbnRzPicsIHRhYmxlLmNvbmNhdChjZmcuZGVidWdhcmdzLCAiICIpKQplbmQKZW5kCmZ1bmN0aW9uIHZjMjAxMC5kZWJ1Z2VudnMoY2ZnKQppZiBjZmcuZGVidWdlbnZzIGFuZCAjY2ZnLmRlYnVnZW52cyA+IDAgdGhlbgpfcCgyLCc8TG9jYWxEZWJ1Z2dlckVudmlyb25tZW50PiVzJXM8L0xvY2FsRGVidWdnZXJFbnZpcm9ubWVudD4nLHRhYmxlLmNvbmNhdChjZmcuZGVidWdlbnZzLCAiXG4iKQosaWlmKGNmZy5mbGFncy5EZWJ1Z0VudnNJbmhlcml0LCdcbiQoTG9jYWxEZWJ1Z2dlckVudmlyb25tZW50KScsJycpCikKaWYgY2ZnLmZsYWdzLkRlYnVnRW52c0RvbnRNZXJnZSB0aGVuCl9wKDIsJzxMb2NhbERlYnVnZ2VyTWVyZ2VFbnZpcm9ubWVudD5mYWxzZTwvTG9jYWxEZWJ1Z2dlck1lcmdlRW52aXJvbm1lbnQ+JykKZW5kCmVuZAplbmQKZnVuY3Rpb24gcHJlbWFrZS52czIwMTBfdmN4cHJval91c2VyKHByaikKaW8uaW5kZW50ID0gIiAgIgp2YzIwMTAuaGVhZGVyKCkKZm9yIF8sIGNmZ2luZm8gaW4gaXBhaXJzKHByai5zb2x1dGlvbi52c3R1ZGlvX2NvbmZpZ3MpIGRvCmxvY2FsIGNmZyA9IHByZW1ha2UuZ2V0Y29uZmlnKHByaiwgY2ZnaW5mby5zcmNfYnVpbGRjZmcsIGNmZ2luZm8uc3JjX3BsYXRmb3JtKQpfcCgnICA8UHJvcGVydHlHcm91cCAnLi4gaWZfY29uZmlnX2FuZF9wbGF0Zm9ybSgpIC4uJz4nLCBwcmVtYWtlLmVzYyhjZmdpbmZvLm5hbWUpKQp2YzIwMTAuZGVidWdkaXIoY2ZnKQp2YzIwMTAuZGVidWdlbnZzKGNmZykKX3AoJyAgPC9Qcm9wZXJ0eUdyb3VwPicpCmVuZApfcCgnPC9Qcm9qZWN0PicpCmVuZAoAbG9jYWwgdmMyMDEwID0gcHJlbWFrZS52c3R1ZGlvLnZjMjAxMApsb2NhbCBwcm9qZWN0ID0gcHJlbWFrZS5wcm9qZWN0CmZ1bmN0aW9uIHZjMjAxMC5maWx0ZXJpZGdyb3VwKHByaikKbG9jYWwgZmlsdGVycyA9IHsgfQpsb2NhbCBmaWx0ZXJmb3VuZCA9IGZhbHNlCmZvciBmaWxlIGluIHByb2plY3QuZWFjaGZpbGUocHJqKSBkbwpsb2NhbCBmb2xkZXJzID0gc3RyaW5nLmV4cGxvZGUoZmlsZS52cGF0aCwgIi8iLCB0cnVlKQpsb2NhbCBwYXRoID0gIiIKZm9yIGkgPSAxLCAjZm9sZGVycyAtIDEgZG8KaWYgbm90IGZpbHRlcmZvdW5kIHRoZW4KZmlsdGVyZm91bmQgPSB0cnVlCl9wKDEsJzxJdGVtR3JvdXA+JykKZW5kCnBhdGggPSBwYXRoIC4uIGZvbGRlcnNbaV0KaWYgbm90IGZpbHRlcnNbcGF0aF0gdGhlbgpmaWx0ZXJzW3BhdGhdID0gdHJ1ZQpfcCgyLCAnPEZpbHRlciBJbmNsdWRlPSIlcyI+JywgcGF0aCkKX3AoMywgJzxVbmlxdWVJZGVudGlmaWVyPnslc308L1VuaXF1ZUlkZW50aWZpZXI+Jywgb3MudXVpZCgpKQpfcCgyLCAnPC9GaWx0ZXI+JykKZW5kCnBhdGggPSBwYXRoIC4uICJcXCIKZW5kCmVuZAppZiBmaWx0ZXJmb3VuZCB0aGVuCl9wKDEsJzwvSXRlbUdyb3VwPicpCmVuZAplbmQKZnVuY3Rpb24gdmMyMDEwLmZpbGVmaWx0ZXJncm91cChwcmosIHNlY3Rpb24pCmxvY2FsIGZpbGVzID0gdmMyMDEwLmdldGZpbGVncm91cChwcmosIHNlY3Rpb24pCmlmICNmaWxlcyA+IDAgdGhlbgpfcCgxLCc8SXRlbUdyb3VwPicpCmZvciBfLCBmaWxlIGluIGlwYWlycyhmaWxlcykgZG8KbG9jYWwgZmlsdGVyCmlmIGZpbGUubmFtZSB+PSBmaWxlLnZwYXRoIHRoZW4KZmlsdGVyID0gcGF0aC5nZXRkaXJlY3RvcnkoZmlsZS52cGF0aCkKZWxzZQpmaWx0ZXIgPSBwYXRoLmdldGRpcmVjdG9yeShmaWxlLm5hbWUpCmVuZAppZiBmaWx0ZXIgfj0gIi4iIHRoZW4KX3AoMiwnPCVzIEluY2x1ZGU9XCIlc1wiPicsIHNlY3Rpb24sIHBhdGgudHJhbnNsYXRlKGZpbGUubmFtZSwgIlxcIikpCl9wKDMsJzxGaWx0ZXI+JXM8L0ZpbHRlcj4nLCBwYXRoLnRyYW5zbGF0ZShmaWx0ZXIsICJcXCIpKQpfcCgyLCc8LyVzPicsIHNlY3Rpb24pCmVsc2UKX3AoMiwnPCVzIEluY2x1ZGU9XCIlc1wiIC8+Jywgc2VjdGlvbiwgcGF0aC50cmFuc2xhdGUoZmlsZS5uYW1lLCAiXFwiKSkKZW5kCmVuZApfcCgxLCc8L0l0ZW1Hcm91cD4nKQplbmQKZW5kCmZ1bmN0aW9uIHZjMjAxMC5nZW5lcmF0ZV9maWx0ZXJzKHByaikKaW8uaW5kZW50ID0gIiAgIgp2YzIwMTAuaGVhZGVyKCkKdmMyMDEwLmZpbHRlcmlkZ3JvdXAocHJqKQp2YzIwMTAuZmlsZWZpbHRlcmdyb3VwKHByaiwgIk5vbmUiKQp2YzIwMTAuZmlsZWZpbHRlcmdyb3VwKHByaiwgIkNsSW5jbHVkZSIpCnZjMjAxMC5maWxlZmlsdGVyZ3JvdXAocHJqLCAiQ2xDb21waWxlIikKdmMyMDEwLmZpbGVmaWx0ZXJncm91cChwcmosICJSZXNvdXJjZUNvbXBpbGUiKQpfcCgnPC9Qcm9qZWN0PicpCmVuZAoAcHJlbWFrZS52c3R1ZGlvLnZjMjAxMiA9IHt9CmxvY2FsIHZjMjAxMiA9IHByZW1ha2UudnN0dWRpby52YzIwMTIKbG9jYWwgdnN0dWRpbyA9IHByZW1ha2UudnN0dWRpbwpuZXdhY3Rpb24Kewp0cmlnZ2VyICAgICAgICAgPSAidnMyMDEyIiwKc2hvcnRuYW1lICAgICAgID0gIlZpc3VhbCBTdHVkaW8gMjAxMiIsCmRlc2NyaXB0aW9uICAgICA9ICJHZW5lcmF0ZSBNaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyAyMDEyIHByb2plY3QgZmlsZXMiLApvcyAgICAgICAgICAgICAgPSAid2luZG93cyIsCnZhbGlkX2tpbmRzICAgICA9IHsgIkNvbnNvbGVBcHAiLCAiV2luZG93ZWRBcHAiLCAiU3RhdGljTGliIiwgIlNoYXJlZExpYiIgfSwKdmFsaWRfbGFuZ3VhZ2VzID0geyAiQyIsICJDKysiLCAiQyMifSwKdmFsaWRfdG9vbHMgICAgID0gewpjYyAgICAgPSB7ICJtc2MiICAgfSwKZG90bmV0ID0geyAibXNuZXQiIH0sCn0sCm9uc29sdXRpb24gPSBmdW5jdGlvbihzbG4pCnByZW1ha2UuZ2VuZXJhdGUoc2xuLCAiJSUuc2xuIiwgdnN0dWRpby5zbG4yMDA1LmdlbmVyYXRlKQplbmQsCm9ucHJvamVjdCA9IGZ1bmN0aW9uKHByaikKaWYgcHJlbWFrZS5pc2RvdG5ldHByb2plY3QocHJqKSB0aGVuCnByZW1ha2UuZ2VuZXJhdGUocHJqLCAiJSUuY3Nwcm9qIiwgdnN0dWRpby5jczIwMDUuZ2VuZXJhdGUpCnByZW1ha2UuZ2VuZXJhdGUocHJqLCAiJSUuY3Nwcm9qLnVzZXIiLCB2c3R1ZGlvLmNzMjAwNS5nZW5lcmF0ZV91c2VyKQplbHNlCnByZW1ha2UuZ2VuZXJhdGUocHJqLCAiJSUudmN4cHJvaiIsIHByZW1ha2UudnMyMDEwX3ZjeHByb2opCnByZW1ha2UuZ2VuZXJhdGUocHJqLCAiJSUudmN4cHJvai51c2VyIiwgcHJlbWFrZS52czIwMTBfdmN4cHJval91c2VyKQpwcmVtYWtlLmdlbmVyYXRlKHByaiwgIiUlLnZjeHByb2ouZmlsdGVycyIsIHZzdHVkaW8udmMyMDEwLmdlbmVyYXRlX2ZpbHRlcnMpCmVuZAplbmQsCm9uY2xlYW5zb2x1dGlvbiA9IHByZW1ha2UudnN0dWRpby5jbGVhbnNvbHV0aW9uLApvbmNsZWFucHJvamVjdCAgPSBwcmVtYWtlLnZzdHVkaW8uY2xlYW5wcm9qZWN0LApvbmNsZWFudGFyZ2V0ICAgPSBwcmVtYWtlLnZzdHVkaW8uY2xlYW50YXJnZXQsCnZzdHVkaW8gPSB7CnNvbHV0aW9uVmVyc2lvbiA9ICIxMiIsCnRhcmdldEZyYW1ld29yayA9ICI0LjUiLAp0b29sc1ZlcnNpb24gICAgPSAiNC4wIiwKfQp9CgBwcmVtYWtlLnhjb2RlID0geyB9Cm5ld2FjdGlvbiAKewp0cmlnZ2VyICAgICAgICAgPSAieGNvZGUzIiwKc2hvcnRuYW1lICAgICAgID0gIlhjb2RlIDMiLApkZXNjcmlwdGlvbiAgICAgPSAiR2VuZXJhdGUgQXBwbGUgWGNvZGUgMyBwcm9qZWN0IGZpbGVzIChleHBlcmltZW50YWwpIiwKb3MgICAgICAgICAgICAgID0gIm1hY29zeCIsCnZhbGlkX2tpbmRzICAgICA9IHsgIkNvbnNvbGVBcHAiLCAiV2luZG93ZWRBcHAiLCAiU2hhcmVkTGliIiwgIlN0YXRpY0xpYiIgfSwKdmFsaWRfbGFuZ3VhZ2VzID0geyAiQyIsICJDKysiIH0sCnZhbGlkX3Rvb2xzICAgICA9IHsKY2MgICAgID0geyAiZ2NjIiB9LAp9LAp2YWxpZF9wbGF0Zm9ybXMgPSB7IApOYXRpdmUgPSAiTmF0aXZlIiwgCngzMiA9ICJOYXRpdmUgMzItYml0IiwgCng2NCA9ICJOYXRpdmUgNjQtYml0IiwgClVuaXZlcnNhbDMyID0gIjMyLWJpdCBVbml2ZXJzYWwiLCAKVW5pdmVyc2FsNjQgPSAiNjQtYml0IFVuaXZlcnNhbCIsIApVbml2ZXJzYWwgPSAiVW5pdmVyc2FsIiwKaU9TID0gImlPUyIsCn0sCmRlZmF1bHRfcGxhdGZvcm0gPSAiVW5pdmVyc2FsIiwKb25zb2x1dGlvbiA9IGZ1bmN0aW9uKHNsbikKcHJlbWFrZS54Y29kZS5wcmVwYXJlc29sdXRpb24oc2xuKQplbmQsCm9ucHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIiwgcHJlbWFrZS54Y29kZS5wcm9qZWN0KQplbmQsCm9uY2xlYW5wcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQpwcmVtYWtlLmNsZWFuLmRpcmVjdG9yeShwcmosICIlJS54Y29kZXByb2oiKQplbmQsCm9uY2hlY2twcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQpsb2NhbCBsYXN0CmZvciBjZmcgaW4gcHJlbWFrZS5lYWNoY29uZmlnKHByaikgZG8KaWYgbGFzdCBhbmQgbGFzdCB+PSBjZmcua2luZCB0aGVuCmVycm9yKCJQcm9qZWN0ICciIC4uIHByai5uYW1lIC4uICInIHVzZXMgbW9yZSB0aGFuIG9uZSB0YXJnZXQga2luZDsgbm90IHN1cHBvcnRlZCBieSBYY29kZSIsIDApCmVuZApsYXN0ID0gY2ZnLmtpbmQKZW5kCmVuZCwKfQpuZXdhY3Rpb24gCnsKdHJpZ2dlciAgICAgICAgID0gInhjb2RlNCIsCnNob3J0bmFtZSAgICAgICA9ICJYY29kZSA0IiwKZGVzY3JpcHRpb24gICAgID0gIkdlbmVyYXRlIEFwcGxlIFhjb2RlIDQgcHJvamVjdCBmaWxlcyAoZXhwZXJpbWVudGFsKSIsCm9zICAgICAgICAgICAgICA9ICJtYWNvc3giLAp2YWxpZF9raW5kcyAgICAgPSB7ICJDb25zb2xlQXBwIiwgIldpbmRvd2VkQXBwIiwgIlNoYXJlZExpYiIsICJTdGF0aWNMaWIiIH0sCnZhbGlkX2xhbmd1YWdlcyA9IHsgIkMiLCAiQysrIiB9LAp2YWxpZF90b29scyAgICAgPSB7CmNjICAgICA9IHsgImdjYyIgfSwKfSwKdmFsaWRfcGxhdGZvcm1zID0geyAKTmF0aXZlID0gIk5hdGl2ZSIsIAp4MzIgPSAiTmF0aXZlIDMyLWJpdCIsIAp4NjQgPSAiTmF0aXZlIDY0LWJpdCIsIApVbml2ZXJzYWwzMiA9ICIzMi1iaXQgVW5pdmVyc2FsIiwgClVuaXZlcnNhbDY0ID0gIjY0LWJpdCBVbml2ZXJzYWwiLCAKVW5pdmVyc2FsID0gIlVuaXZlcnNhbCIsCmlPUyA9ICJpT1MiLAp9LApkZWZhdWx0X3BsYXRmb3JtID0gIlVuaXZlcnNhbCIsCm9uc29sdXRpb24gPSBmdW5jdGlvbihzbG4pCnByZW1ha2UuZ2VuZXJhdGUoc2xuLCAiJSUueGN3b3Jrc3BhY2UvY29udGVudHMueGN3b3Jrc3BhY2VkYXRhIiwgcHJlbWFrZS54Y29kZTQud29ya3NwYWNlX2dlbmVyYXRlKQplbmQsCm9ucHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcHJlbWFrZS5nZW5lcmF0ZShwcmosICIlJS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIiwgcHJlbWFrZS54Y29kZS5wcm9qZWN0KQplbmQsCm9uY2xlYW5wcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQpwcmVtYWtlLmNsZWFuLmRpcmVjdG9yeShwcmosICIlJS54Y29kZXByb2oiKQpwcmVtYWtlLmNsZWFuLmRpcmVjdG9yeShwcmosICIlJS54Y3dvcmtzcGFjZSIpCmVuZCwKb25jaGVja3Byb2plY3QgPSBmdW5jdGlvbihwcmopCmxvY2FsIGxhc3QKZm9yIGNmZyBpbiBwcmVtYWtlLmVhY2hjb25maWcocHJqKSBkbwppZiBsYXN0IGFuZCBsYXN0IH49IGNmZy5raW5kIHRoZW4KZXJyb3IoIlByb2plY3QgJyIgLi4gcHJqLm5hbWUgLi4gIicgdXNlcyBtb3JlIHRoYW4gb25lIHRhcmdldCBraW5kOyBub3Qgc3VwcG9ydGVkIGJ5IFhjb2RlIiwgMCkKZW5kCmxhc3QgPSBjZmcua2luZAplbmQKZW5kLAp9CgBsb2NhbCB4Y29kZSA9IHByZW1ha2UueGNvZGUKbG9jYWwgdHJlZSAgPSBwcmVtYWtlLnRyZWUKZnVuY3Rpb24geGNvZGUuZ2V0YnVpbGRjYXRlZ29yeShub2RlKQpsb2NhbCBjYXRlZ29yaWVzID0gewpbIi5hIl0gPSAiRnJhbWV3b3JrcyIsClsiLmMiXSA9ICJTb3VyY2VzIiwKWyIuY2MiXSA9ICJTb3VyY2VzIiwKWyIuY3BwIl0gPSAiU291cmNlcyIsClsiLmN4eCJdID0gIlNvdXJjZXMiLApbIi5keWxpYiJdID0gIkZyYW1ld29ya3MiLApbIi5mcmFtZXdvcmsiXSA9ICJGcmFtZXdvcmtzIiwKWyIubSJdID0gIlNvdXJjZXMiLApbIi5tbSJdID0gIlNvdXJjZXMiLApbIi5zdHJpbmdzIl0gPSAiUmVzb3VyY2VzIiwKWyIubmliIl0gPSAiUmVzb3VyY2VzIiwKWyIueGliIl0gPSAiUmVzb3VyY2VzIiwKWyIuaWNucyJdID0gIlJlc291cmNlcyIsClsiLmJtcCJdID0gIlJlc291cmNlcyIsClsiLndhdiJdID0gIlJlc291cmNlcyIsCn0KcmV0dXJuIGNhdGVnb3JpZXNbcGF0aC5nZXRleHRlbnNpb24obm9kZS5uYW1lKV0KZW5kCmZ1bmN0aW9uIHhjb2RlLmdldGNvbmZpZ25hbWUoY2ZnKQpsb2NhbCBuYW1lID0gY2ZnLm5hbWUKaWYgI2NmZy5wcm9qZWN0LnNvbHV0aW9uLnhjb2RlLnBsYXRmb3JtcyA+IDEgdGhlbgpuYW1lID0gbmFtZSAuLiAiICIgLi4gcHJlbWFrZS5hY3Rpb24uY3VycmVudCgpLnZhbGlkX3BsYXRmb3Jtc1tjZmcucGxhdGZvcm1dCmVuZApyZXR1cm4gbmFtZQplbmQKZnVuY3Rpb24geGNvZGUuZ2V0ZmlsZXR5cGUobm9kZSkKbG9jYWwgdHlwZXMgPSB7ClsiLmMiXSAgICAgICAgID0gInNvdXJjZWNvZGUuYy5jIiwKWyIuY2MiXSAgICAgICAgPSAic291cmNlY29kZS5jcHAuY3BwIiwKWyIuY3BwIl0gICAgICAgPSAic291cmNlY29kZS5jcHAuY3BwIiwKWyIuY3NzIl0gICAgICAgPSAidGV4dC5jc3MiLApbIi5jeHgiXSAgICAgICA9ICJzb3VyY2Vjb2RlLmNwcC5jcHAiLApbIi5mcmFtZXdvcmsiXSA9ICJ3cmFwcGVyLmZyYW1ld29yayIsClsiLmdpZiJdICAgICAgID0gImltYWdlLmdpZiIsClsiLmgiXSAgICAgICAgID0gInNvdXJjZWNvZGUuYy5oIiwKWyIuaHRtbCJdICAgICAgPSAidGV4dC5odG1sIiwKWyIubHVhIl0gICAgICAgPSAic291cmNlY29kZS5sdWEiLApbIi5tIl0gICAgICAgICA9ICJzb3VyY2Vjb2RlLmMub2JqYyIsClsiLm1tIl0gICAgICAgID0gInNvdXJjZWNvZGUuY3BwLm9iamMiLApbIi5uaWIiXSAgICAgICA9ICJ3cmFwcGVyLm5pYiIsClsiLnBjaCJdICAgICAgID0gInNvdXJjZWNvZGUuYy5oIiwKWyIucGxpc3QiXSAgICAgPSAidGV4dC5wbGlzdC54bWwiLApbIi5zdHJpbmdzIl0gICA9ICJ0ZXh0LnBsaXN0LnN0cmluZ3MiLApbIi54aWIiXSAgICAgICA9ICJmaWxlLnhpYiIsClsiLmljbnMiXSAgICAgID0gImltYWdlLmljbnMiLApbIi5ibXAiXSAgICAgICA9ICJpbWFnZS5ibXAiLApbIi53YXYiXSAgICAgICA9ICJhdWRpby53YXYiLAp9CnJldHVybiB0eXBlc1twYXRoLmdldGV4dGVuc2lvbihub2RlLnBhdGgpXSBvciAidGV4dCIKZW5kCmZ1bmN0aW9uIHhjb2RlLmdldHByb2R1Y3R0eXBlKG5vZGUpCmxvY2FsIHR5cGVzID0gewpDb25zb2xlQXBwICA9ICJjb20uYXBwbGUucHJvZHVjdC10eXBlLnRvb2wiLApXaW5kb3dlZEFwcCA9ICJjb20uYXBwbGUucHJvZHVjdC10eXBlLmFwcGxpY2F0aW9uIiwKU3RhdGljTGliICAgPSAiY29tLmFwcGxlLnByb2R1Y3QtdHlwZS5saWJyYXJ5LnN0YXRpYyIsClNoYXJlZExpYiAgID0gImNvbS5hcHBsZS5wcm9kdWN0LXR5cGUubGlicmFyeS5keW5hbWljIiwKfQpyZXR1cm4gdHlwZXNbbm9kZS5jZmcua2luZF0KZW5kCmZ1bmN0aW9uIHhjb2RlLmdldHRhcmdldHR5cGUobm9kZSkKbG9jYWwgdHlwZXMgPSB7CkNvbnNvbGVBcHAgID0gIlwiY29tcGlsZWQubWFjaC1vLmV4ZWN1dGFibGVcIiIsCldpbmRvd2VkQXBwID0gIndyYXBwZXIuYXBwbGljYXRpb24iLApTdGF0aWNMaWIgICA9ICJhcmNoaXZlLmFyIiwKU2hhcmVkTGliICAgPSAiXCJjb21waWxlZC5tYWNoLW8uZHlsaWJcIiIsCn0KcmV0dXJuIHR5cGVzW25vZGUuY2ZnLmtpbmRdCmVuZApmdW5jdGlvbiB4Y29kZS5nZXR4Y29kZXByb2puYW1lKHByaikKbG9jYWwgZm5hbWUgPSBwcmVtYWtlLnByb2plY3QuZ2V0ZmlsZW5hbWUocHJqLCAiJSUueGNvZGVwcm9qIikKcmV0dXJuIGZuYW1lCmVuZApmdW5jdGlvbiB4Y29kZS5pc2ZyYW1ld29yayhmbmFtZSkKcmV0dXJuIChwYXRoLmdldGV4dGVuc2lvbihmbmFtZSkgPT0gIi5mcmFtZXdvcmsiKQplbmQKZnVuY3Rpb24geGNvZGUubmV3aWQoKQpyZXR1cm4gc3RyaW5nLmZvcm1hdCgiJTA0WCUwNFglMDRYJTA0WCUwNFglMDRYIiwKbWF0aC5yYW5kb20oMCwgMzI3NjcpLAptYXRoLnJhbmRvbSgwLCAzMjc2NyksCm1hdGgucmFuZG9tKDAsIDMyNzY3KSwKbWF0aC5yYW5kb20oMCwgMzI3NjcpLAptYXRoLnJhbmRvbSgwLCAzMjc2NyksCm1hdGgucmFuZG9tKDAsIDMyNzY3KSkKZW5kCmZ1bmN0aW9uIHhjb2RlLnByZXBhcmVzb2x1dGlvbihzbG4pCnNsbi54Y29kZSA9IHsgfQpzbG4ueGNvZGUucGxhdGZvcm1zID0gcHJlbWFrZS5maWx0ZXJwbGF0Zm9ybXMoc2xuLCBwcmVtYWtlLmFjdGlvbi5jdXJyZW50KCkudmFsaWRfcGxhdGZvcm1zLCAiVW5pdmVyc2FsIikKZm9yIHByaiBpbiBwcmVtYWtlLnNvbHV0aW9uLmVhY2hwcm9qZWN0KHNsbikgZG8KbG9jYWwgY2ZnID0gcHJlbWFrZS5nZXRjb25maWcocHJqLCBwcmouY29uZmlndXJhdGlvbnNbMV0sIHNsbi54Y29kZS5wbGF0Zm9ybXNbMV0pCmxvY2FsIG5vZGUgPSBwcmVtYWtlLnRyZWUubmV3KHBhdGguZ2V0bmFtZShjZmcuYnVpbGR0YXJnZXQuYnVuZGxlcGF0aCkpCm5vZGUuY2ZnID0gY2ZnCm5vZGUuaWQgPSBwcmVtYWtlLnhjb2RlLm5ld2lkKG5vZGUsICJwcm9kdWN0IikKbm9kZS50YXJnZXRpZCA9IHByZW1ha2UueGNvZGUubmV3aWQobm9kZSwgInRhcmdldCIpCnByai54Y29kZSA9IHt9CnByai54Y29kZS5wcm9qZWN0bm9kZSA9IG5vZGUKZW5kCmVuZApmdW5jdGlvbiB4Y29kZS5wcmludGxpc3QobGlzdCwgdGFnKQppZiAjbGlzdCA+IDAgdGhlbgpfcCg0LCclcyA9ICgnLCB0YWcpCmZvciBfLCBpdGVtIGluIGlwYWlycyhsaXN0KSBkbwpfcCg1LCAnIiVzIiwnLCBpdGVtKQplbmQKX3AoNCwnKTsnKQplbmQKZW5kCmZ1bmN0aW9uIHhjb2RlLkhlYWRlcigpCl9wKCcvLyAhJCpVVEY4KiQhJykKX3AoJ3snKQpfcCgxLCdhcmNoaXZlVmVyc2lvbiA9IDE7JykKX3AoMSwnY2xhc3NlcyA9IHsnKQpfcCgxLCd9OycpCl9wKDEsJ29iamVjdFZlcnNpb24gPSA0NTsnKQpfcCgxLCdvYmplY3RzID0geycpCl9wKCcnKQplbmQKZnVuY3Rpb24geGNvZGUuUEJYQnVpbGRGaWxlKHRyKQpfcCgnLyogQmVnaW4gUEJYQnVpbGRGaWxlIHNlY3Rpb24gKi8nKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubm9kZSA9IGZ1bmN0aW9uKG5vZGUpCmlmIG5vZGUuYnVpbGRpZCB0aGVuCl9wKDIsJyVzIC8qICVzIGluICVzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9ICVzIC8qICVzICovOyB9OycsIApub2RlLmJ1aWxkaWQsIG5vZGUubmFtZSwgeGNvZGUuZ2V0YnVpbGRjYXRlZ29yeShub2RlKSwgbm9kZS5pZCwgbm9kZS5uYW1lKQplbmQKZW5kCn0pCl9wKCcvKiBFbmQgUEJYQnVpbGRGaWxlIHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWENvbnRhaW5lckl0ZW1Qcm94eSh0cikKaWYgI3RyLnByb2plY3RzLmNoaWxkcmVuID4gMCB0aGVuCl9wKCcvKiBCZWdpbiBQQlhDb250YWluZXJJdGVtUHJveHkgc2VjdGlvbiAqLycpCmZvciBfLCBub2RlIGluIGlwYWlycyh0ci5wcm9qZWN0cy5jaGlsZHJlbikgZG8KX3AoMiwnJXMgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0geycsIG5vZGUucHJvZHVjdHByb3h5aWQpCl9wKDMsJ2lzYSA9IFBCWENvbnRhaW5lckl0ZW1Qcm94eTsnKQpfcCgzLCdjb250YWluZXJQb3J0YWwgPSAlcyAvKiAlcyAqLzsnLCBub2RlLmlkLCBwYXRoLmdldG5hbWUobm9kZS5wYXRoKSkKX3AoMywncHJveHlUeXBlID0gMjsnKQpfcCgzLCdyZW1vdGVHbG9iYWxJRFN0cmluZyA9ICVzOycsIG5vZGUucHJvamVjdC54Y29kZS5wcm9qZWN0bm9kZS5pZCkKX3AoMywncmVtb3RlSW5mbyA9ICIlcyI7Jywgbm9kZS5wcm9qZWN0Lnhjb2RlLnByb2plY3Rub2RlLm5hbWUpCl9wKDIsJ307JykKX3AoMiwnJXMgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0geycsIG5vZGUudGFyZ2V0cHJveHlpZCkKX3AoMywnaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OycpCl9wKDMsJ2NvbnRhaW5lclBvcnRhbCA9ICVzIC8qICVzICovOycsIG5vZGUuaWQsIHBhdGguZ2V0bmFtZShub2RlLnBhdGgpKQpfcCgzLCdwcm94eVR5cGUgPSAxOycpCl9wKDMsJ3JlbW90ZUdsb2JhbElEU3RyaW5nID0gJXM7Jywgbm9kZS5wcm9qZWN0Lnhjb2RlLnByb2plY3Rub2RlLnRhcmdldGlkKQpfcCgzLCdyZW1vdGVJbmZvID0gIiVzIjsnLCBub2RlLnByb2plY3QueGNvZGUucHJvamVjdG5vZGUubmFtZSkKX3AoMiwnfTsnKQplbmQKX3AoJy8qIEVuZCBQQlhDb250YWluZXJJdGVtUHJveHkgc2VjdGlvbiAqLycpCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWEZpbGVSZWZlcmVuY2UodHIpCl9wKCcvKiBCZWdpbiBQQlhGaWxlUmVmZXJlbmNlIHNlY3Rpb24gKi8nKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubGVhZiA9IGZ1bmN0aW9uKG5vZGUpCmlmIG5vdCBub2RlLnBhdGggdGhlbgpyZXR1cm4KZW5kCmlmIG5vZGUua2luZCA9PSAicHJvZHVjdCIgdGhlbgpfcCgyLCclcyAvKiAlcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBleHBsaWNpdEZpbGVUeXBlID0gJXM7IGluY2x1ZGVJbkluZGV4ID0gMDsgbmFtZSA9ICIlcyI7IHBhdGggPSAiJXMiOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OycsCm5vZGUuaWQsIG5vZGUubmFtZSwgeGNvZGUuZ2V0dGFyZ2V0dHlwZShub2RlKSwgbm9kZS5uYW1lLCBwYXRoLmdldG5hbWUobm9kZS5jZmcuYnVpbGR0YXJnZXQuYnVuZGxlcGF0aCkpCmVsc2VpZiBub2RlLnBhcmVudC5wYXJlbnQgPT0gdHIucHJvamVjdHMgdGhlbgpsb2NhbCByZWxwYXRoID0gcGF0aC5nZXRyZWxhdGl2ZSh0ci5wcm9qZWN0LmxvY2F0aW9uLCBub2RlLnBhcmVudC5wcm9qZWN0LmxvY2F0aW9uKQpfcCgyLCclcyAvKiAlcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9ICJ3cmFwcGVyLnBiLXByb2plY3QiOyBuYW1lID0gIiVzIjsgcGF0aCA9ICIlcyI7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsnLApub2RlLnBhcmVudC5pZCwgbm9kZS5wYXJlbnQubmFtZSwgbm9kZS5wYXJlbnQubmFtZSwgcGF0aC5qb2luKHJlbHBhdGgsIG5vZGUucGFyZW50Lm5hbWUpKQplbHNlCmxvY2FsIHB0aCwgc3JjCmlmIHhjb2RlLmlzZnJhbWV3b3JrKG5vZGUucGF0aCkgdGhlbgpsb2NhbCBub2RlUGF0aCA9IG5vZGUucGF0aApsb2NhbCBfLCBtYXRjaEVuZCwgdmFyaWFibGUgPSBzdHJpbmcuZmluZChub2RlUGF0aCwgIl4lJCUoKC4rKSUpLyIpCmlmIHZhcmlhYmxlIHRoZW4Kbm9kZVBhdGggPSBzdHJpbmcuc3ViKG5vZGVQYXRoLCBtYXRjaEVuZCArIDEpCmVuZAppZiBzdHJpbmcuZmluZChub2RlUGF0aCwnLycpICB0aGVuCmlmIHN0cmluZy5maW5kKG5vZGVQYXRoLCdeJS4nKXRoZW4KZXJyb3IoJ3JlbGF0aXZlIHBhdGhzIGFyZSBub3QgY3VycmVudGx5IHN1cHBvcnRlZCBmb3IgZnJhbWV3b3JrcycpCmVuZApwdGggPSBub2RlUGF0aAplbHNlCnB0aCA9ICIvU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy8iIC4uIG5vZGVQYXRoCmVuZAppZiB2YXJpYWJsZSB0aGVuCnNyYyA9IHZhcmlhYmxlCmlmIHN0cmluZy5maW5kKHB0aCwgJ14vJykgdGhlbgpwdGggPSBzdHJpbmcuc3ViKHB0aCwgMikKZW5kCmVsc2UKc3JjID0gIjxhYnNvbHV0ZT4iCmVuZAplbHNlCnNyYyA9ICI8Z3JvdXA+IgppZiBub2RlLnBhcmVudC5pc3ZwYXRoIHRoZW4KcHRoID0gbm9kZS5jZmcubmFtZQplbHNlCnB0aCA9IHRyZWUuZ2V0bG9jYWxwYXRoKG5vZGUpCmVuZAplbmQKX3AoMiwnJXMgLyogJXMgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSAlczsgbmFtZSA9ICIlcyI7IHBhdGggPSAiJXMiOyBzb3VyY2VUcmVlID0gIiVzIjsgfTsnLApub2RlLmlkLCBub2RlLm5hbWUsIHhjb2RlLmdldGZpbGV0eXBlKG5vZGUpLCBub2RlLm5hbWUsIHB0aCwgc3JjKQplbmQKZW5kCn0pCl9wKCcvKiBFbmQgUEJYRmlsZVJlZmVyZW5jZSBzZWN0aW9uICovJykKX3AoJycpCmVuZApmdW5jdGlvbiB4Y29kZS5QQlhGcmFtZXdvcmtzQnVpbGRQaGFzZSh0cikKX3AoJy8qIEJlZ2luIFBCWEZyYW1ld29ya3NCdWlsZFBoYXNlIHNlY3Rpb24gKi8nKQpfcCgyLCclcyAvKiBGcmFtZXdvcmtzICovID0geycsIHRyLnByb2R1Y3RzLmNoaWxkcmVuWzFdLmZ4c3RhZ2VpZCkKX3AoMywnaXNhID0gUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2U7JykKX3AoMywnYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsnKQpfcCgzLCdmaWxlcyA9ICgnKQp0cmVlLnRyYXZlcnNlKHRyLmZyYW1ld29ya3MsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSkKX3AoNCwnJXMgLyogJXMgaW4gRnJhbWV3b3JrcyAqLywnLCBub2RlLmJ1aWxkaWQsIG5vZGUubmFtZSkKZW5kCn0pCnRyZWUudHJhdmVyc2UodHIucHJvamVjdHMsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSkKX3AoNCwnJXMgLyogJXMgaW4gRnJhbWV3b3JrcyAqLywnLCBub2RlLmJ1aWxkaWQsIG5vZGUubmFtZSkKZW5kCn0pCl9wKDMsJyk7JykKX3AoMywncnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7JykKX3AoMiwnfTsnKQpfcCgnLyogRW5kIFBCWEZyYW1ld29ya3NCdWlsZFBoYXNlIHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWEdyb3VwKHRyKQpfcCgnLyogQmVnaW4gUEJYR3JvdXAgc2VjdGlvbiAqLycpCnRyZWUudHJhdmVyc2UodHIsIHsKb25ub2RlID0gZnVuY3Rpb24obm9kZSkKaWYgKG5vZGUucGF0aCBhbmQgI25vZGUuY2hpbGRyZW4gPT0gMCkgb3Igbm9kZS5raW5kID09ICJ2Z3JvdXAiIHRoZW4KcmV0dXJuCmVuZAppZiBub2RlLnBhcmVudCA9PSB0ci5wcm9qZWN0cyB0aGVuCl9wKDIsJyVzIC8qIFByb2R1Y3RzICovID0geycsIG5vZGUucHJvZHVjdGdyb3VwaWQpCmVsc2UKX3AoMiwnJXMgLyogJXMgKi8gPSB7Jywgbm9kZS5pZCwgbm9kZS5uYW1lKQplbmQKX3AoMywnaXNhID0gUEJYR3JvdXA7JykKX3AoMywnY2hpbGRyZW4gPSAoJykKZm9yIF8sIGNoaWxkbm9kZSBpbiBpcGFpcnMobm9kZS5jaGlsZHJlbikgZG8KX3AoNCwnJXMgLyogJXMgKi8sJywgY2hpbGRub2RlLmlkLCBjaGlsZG5vZGUubmFtZSkKZW5kCl9wKDMsJyk7JykKaWYgbm9kZS5wYXJlbnQgPT0gdHIucHJvamVjdHMgdGhlbgpfcCgzLCduYW1lID0gUHJvZHVjdHM7JykKZWxzZQpfcCgzLCduYW1lID0gIiVzIjsnLCBub2RlLm5hbWUpCmlmIG5vZGUucGF0aCBhbmQgbm90IG5vZGUuaXN2cGF0aCB0aGVuCmxvY2FsIHAgPSBub2RlLnBhdGgKaWYgbm9kZS5wYXJlbnQucGF0aCB0aGVuCnAgPSBwYXRoLmdldHJlbGF0aXZlKG5vZGUucGFyZW50LnBhdGgsIG5vZGUucGF0aCkKZW5kCl9wKDMsJ3BhdGggPSAiJXMiOycsIHApCmVuZAplbmQKX3AoMywnc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsnKQpfcCgyLCd9OycpCmVuZAp9LCB0cnVlKQpfcCgnLyogRW5kIFBCWEdyb3VwIHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWE5hdGl2ZVRhcmdldCh0cikKX3AoJy8qIEJlZ2luIFBCWE5hdGl2ZVRhcmdldCBzZWN0aW9uICovJykKZm9yIF8sIG5vZGUgaW4gaXBhaXJzKHRyLnByb2R1Y3RzLmNoaWxkcmVuKSBkbwpsb2NhbCBuYW1lID0gdHIucHJvamVjdC5uYW1lCmxvY2FsIGZ1bmN0aW9uIGhhc0J1aWxkQ29tbWFuZHMod2hpY2gpCmlmICN0ci5wcm9qZWN0W3doaWNoXSA+IDAgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKZm9yIF8sIGNmZyBpbiBpcGFpcnModHIuY29uZmlncykgZG8KaWYgI2NmZ1t3aGljaF0gPiAwIHRoZW4KcmV0dXJuIHRydWUKZW5kCmVuZAplbmQKX3AoMiwnJXMgLyogJXMgKi8gPSB7Jywgbm9kZS50YXJnZXRpZCwgbmFtZSkKX3AoMywnaXNhID0gUEJYTmF0aXZlVGFyZ2V0OycpCl9wKDMsJ2J1aWxkQ29uZmlndXJhdGlvbkxpc3QgPSAlcyAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWE5hdGl2ZVRhcmdldCAiJXMiICovOycsIG5vZGUuY2Znc2VjdGlvbiwgbmFtZSkKX3AoMywnYnVpbGRQaGFzZXMgPSAoJykKaWYgaGFzQnVpbGRDb21tYW5kcygncHJlYnVpbGRjb21tYW5kcycpIHRoZW4KX3AoNCwnOTYwN0FFMTAxMEM4NTdFNTAwQ0QxMzc2IC8qIFByZWJ1aWxkICovLCcpCmVuZApfcCg0LCclcyAvKiBSZXNvdXJjZXMgKi8sJywgbm9kZS5yZXNzdGFnZWlkKQpfcCg0LCclcyAvKiBTb3VyY2VzICovLCcsIG5vZGUuc291cmNlc2lkKQppZiBoYXNCdWlsZENvbW1hbmRzKCdwcmVsaW5rY29tbWFuZHMnKSB0aGVuCl9wKDQsJzk2MDdBRTM1MTBDODVFN0UwMENEMTM3NiAvKiBQcmVsaW5rICovLCcpCmVuZApfcCg0LCclcyAvKiBGcmFtZXdvcmtzICovLCcsIG5vZGUuZnhzdGFnZWlkKQppZiBoYXNCdWlsZENvbW1hbmRzKCdwb3N0YnVpbGRjb21tYW5kcycpIHRoZW4KX3AoNCwnOTYwN0FFMzcxMEM4NUU4RjAwQ0QxMzc2IC8qIFBvc3RidWlsZCAqLywnKQplbmQKX3AoMywnKTsnKQpfcCgzLCdidWlsZFJ1bGVzID0gKCcpCl9wKDMsJyk7JykKX3AoMywnZGVwZW5kZW5jaWVzID0gKCcpCmZvciBfLCBub2RlIGluIGlwYWlycyh0ci5wcm9qZWN0cy5jaGlsZHJlbikgZG8KX3AoNCwnJXMgLyogUEJYVGFyZ2V0RGVwZW5kZW5jeSAqLywnLCBub2RlLnRhcmdldGRlcGVuZGlkKQplbmQKX3AoMywnKTsnKQpfcCgzLCduYW1lID0gIiVzIjsnLCBuYW1lKQpsb2NhbCBwCmlmIG5vZGUuY2ZnLmtpbmQgPT0gIkNvbnNvbGVBcHAiIHRoZW4KcCA9ICIkKEhPTUUpL2JpbiIKZWxzZWlmIG5vZGUuY2ZnLmtpbmQgPT0gIldpbmRvd2VkQXBwIiB0aGVuCnAgPSAiJChIT01FKS9BcHBsaWNhdGlvbnMiCmVuZAppZiBwIHRoZW4KX3AoMywncHJvZHVjdEluc3RhbGxQYXRoID0gIiVzIjsnLCBwKQplbmQKX3AoMywncHJvZHVjdE5hbWUgPSAiJXMiOycsIG5hbWUpCl9wKDMsJ3Byb2R1Y3RSZWZlcmVuY2UgPSAlcyAvKiAlcyAqLzsnLCBub2RlLmlkLCBub2RlLm5hbWUpCl9wKDMsJ3Byb2R1Y3RUeXBlID0gIiVzIjsnLCB4Y29kZS5nZXRwcm9kdWN0dHlwZShub2RlKSkKX3AoMiwnfTsnKQplbmQKX3AoJy8qIEVuZCBQQlhOYXRpdmVUYXJnZXQgc2VjdGlvbiAqLycpCl9wKCcnKQplbmQKZnVuY3Rpb24geGNvZGUuUEJYUHJvamVjdCh0cikKX3AoJy8qIEJlZ2luIFBCWFByb2plY3Qgc2VjdGlvbiAqLycpCl9wKDIsJzA4RkI3NzkzRkU4NDE1NURDMDJBQUMwNyAvKiBQcm9qZWN0IG9iamVjdCAqLyA9IHsnKQpfcCgzLCdpc2EgPSBQQlhQcm9qZWN0OycpCl9wKDMsJ2J1aWxkQ29uZmlndXJhdGlvbkxpc3QgPSAxREVCOTI4OTA4NzMzREQ4MDAxMEU5Q0QgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhQcm9qZWN0ICIlcyIgKi87JywgdHIubmFtZSkKX3AoMywnY29tcGF0aWJpbGl0eVZlcnNpb24gPSAiWGNvZGUgMy4yIjsnKQpfcCgzLCdoYXNTY2FubmVkRm9yRW5jb2RpbmdzID0gMTsnKQpfcCgzLCdtYWluR3JvdXAgPSAlcyAvKiAlcyAqLzsnLCB0ci5pZCwgdHIubmFtZSkKX3AoMywncHJvamVjdERpclBhdGggPSAiIjsnKQppZiAjdHIucHJvamVjdHMuY2hpbGRyZW4gPiAwIHRoZW4KX3AoMywncHJvamVjdFJlZmVyZW5jZXMgPSAoJykKZm9yIF8sIG5vZGUgaW4gaXBhaXJzKHRyLnByb2plY3RzLmNoaWxkcmVuKSBkbwpfcCg0LCd7JykKX3AoNSwnUHJvZHVjdEdyb3VwID0gJXMgLyogUHJvZHVjdHMgKi87Jywgbm9kZS5wcm9kdWN0Z3JvdXBpZCkKX3AoNSwnUHJvamVjdFJlZiA9ICVzIC8qICVzICovOycsIG5vZGUuaWQsIHBhdGguZ2V0bmFtZShub2RlLnBhdGgpKQpfcCg0LCd9LCcpCmVuZApfcCgzLCcpOycpCmVuZApfcCgzLCdwcm9qZWN0Um9vdCA9ICIiOycpCl9wKDMsJ3RhcmdldHMgPSAoJykKZm9yIF8sIG5vZGUgaW4gaXBhaXJzKHRyLnByb2R1Y3RzLmNoaWxkcmVuKSBkbwpfcCg0LCclcyAvKiAlcyAqLywnLCBub2RlLnRhcmdldGlkLCBub2RlLm5hbWUpCmVuZApfcCgzLCcpOycpCl9wKDIsJ307JykKX3AoJy8qIEVuZCBQQlhQcm9qZWN0IHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWFJlZmVyZW5jZVByb3h5KHRyKQppZiAjdHIucHJvamVjdHMuY2hpbGRyZW4gPiAwIHRoZW4KX3AoJy8qIEJlZ2luIFBCWFJlZmVyZW5jZVByb3h5IHNlY3Rpb24gKi8nKQp0cmVlLnRyYXZlcnNlKHRyLnByb2plY3RzLCB7Cm9ubGVhZiA9IGZ1bmN0aW9uKG5vZGUpCl9wKDIsJyVzIC8qICVzICovID0geycsIG5vZGUuaWQsIG5vZGUubmFtZSkKX3AoMywnaXNhID0gUEJYUmVmZXJlbmNlUHJveHk7JykKX3AoMywnZmlsZVR5cGUgPSAlczsnLCB4Y29kZS5nZXR0YXJnZXR0eXBlKG5vZGUpKQpfcCgzLCdwYXRoID0gIiVzIjsnLCBub2RlLnBhdGgpCl9wKDMsJ3JlbW90ZVJlZiA9ICVzIC8qIFBCWENvbnRhaW5lckl0ZW1Qcm94eSAqLzsnLCBub2RlLnBhcmVudC5wcm9kdWN0cHJveHlpZCkKX3AoMywnc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsnKQpfcCgyLCd9OycpCmVuZAp9KQpfcCgnLyogRW5kIFBCWFJlZmVyZW5jZVByb3h5IHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmVuZApmdW5jdGlvbiB4Y29kZS5QQlhSZXNvdXJjZXNCdWlsZFBoYXNlKHRyKQpfcCgnLyogQmVnaW4gUEJYUmVzb3VyY2VzQnVpbGRQaGFzZSBzZWN0aW9uICovJykKZm9yIF8sIHRhcmdldCBpbiBpcGFpcnModHIucHJvZHVjdHMuY2hpbGRyZW4pIGRvCl9wKDIsJyVzIC8qIFJlc291cmNlcyAqLyA9IHsnLCB0YXJnZXQucmVzc3RhZ2VpZCkKX3AoMywnaXNhID0gUEJYUmVzb3VyY2VzQnVpbGRQaGFzZTsnKQpfcCgzLCdidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OycpCl9wKDMsJ2ZpbGVzID0gKCcpCnRyZWUudHJhdmVyc2UodHIsIHsKb25ub2RlID0gZnVuY3Rpb24obm9kZSkKaWYgeGNvZGUuZ2V0YnVpbGRjYXRlZ29yeShub2RlKSA9PSAiUmVzb3VyY2VzIiB0aGVuCl9wKDQsJyVzIC8qICVzIGluIFJlc291cmNlcyAqLywnLCBub2RlLmJ1aWxkaWQsIG5vZGUubmFtZSkKZW5kCmVuZAp9KQpfcCgzLCcpOycpCl9wKDMsJ3J1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOycpCl9wKDIsJ307JykKZW5kCl9wKCcvKiBFbmQgUEJYUmVzb3VyY2VzQnVpbGRQaGFzZSBzZWN0aW9uICovJykKX3AoJycpCmVuZApmdW5jdGlvbiB4Y29kZS5QQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2UodHIpCmxvY2FsIHdyYXBwZXJXcml0dGVuID0gZmFsc2UKbG9jYWwgZnVuY3Rpb24gZG9ibG9jayhpZCwgbmFtZSwgd2hpY2gpCmxvY2FsIHByamNtZHMgPSB0ci5wcm9qZWN0W3doaWNoXQpsb2NhbCBjb21tYW5kcyA9IHRhYmxlLmpvaW4ocHJqY21kcywge30pCmZvciBfLCBjZmcgaW4gaXBhaXJzKHRyLmNvbmZpZ3MpIGRvCmxvY2FsIGNmZ2NtZHMgPSBjZmdbd2hpY2hdCmlmICNjZmdjbWRzID4gI3ByamNtZHMgdGhlbgp0YWJsZS5pbnNlcnQoY29tbWFuZHMsICdpZiBbICIke0NPTkZJR1VSQVRJT059IiA9ICInIC4uIHhjb2RlLmdldGNvbmZpZ25hbWUoY2ZnKSAuLiAnIiBdOyB0aGVuJykKZm9yIGkgPSAjcHJqY21kcyArIDEsICNjZmdjbWRzIGRvCnRhYmxlLmluc2VydChjb21tYW5kcywgY2ZnY21kc1tpXSkKZW5kCnRhYmxlLmluc2VydChjb21tYW5kcywgJ2ZpJykKZW5kCmVuZAppZiAjY29tbWFuZHMgPiAwIHRoZW4KaWYgbm90IHdyYXBwZXJXcml0dGVuIHRoZW4KX3AoJy8qIEJlZ2luIFBCWFNoZWxsU2NyaXB0QnVpbGRQaGFzZSBzZWN0aW9uICovJykKd3JhcHBlcldyaXR0ZW4gPSB0cnVlCmVuZApfcCgyLCclcyAvKiAlcyAqLyA9IHsnLCBpZCwgbmFtZSkKX3AoMywnaXNhID0gUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlOycpCl9wKDMsJ2J1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7JykKX3AoMywnZmlsZXMgPSAoJykKX3AoMywnKTsnKQpfcCgzLCdpbnB1dFBhdGhzID0gKCcpOwpfcCgzLCcpOycpOwpfcCgzLCduYW1lID0gJXM7JywgbmFtZSk7Cl9wKDMsJ291dHB1dFBhdGhzID0gKCcpOwpfcCgzLCcpOycpOwpfcCgzLCdydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsnKTsKX3AoMywnc2hlbGxQYXRoID0gL2Jpbi9zaDsnKTsKX3AoMywnc2hlbGxTY3JpcHQgPSAiJXMiOycsIHRhYmxlLmNvbmNhdChjb21tYW5kcywgIlxcbiIpOmdzdWIoJyInLCAnXFwiJykpCl9wKDIsJ307JykKZW5kCmVuZApkb2Jsb2NrKCI5NjA3QUUxMDEwQzg1N0U1MDBDRDEzNzYiLCAiUHJlYnVpbGQiLCAicHJlYnVpbGRjb21tYW5kcyIpCmRvYmxvY2soIjk2MDdBRTM1MTBDODVFN0UwMENEMTM3NiIsICJQcmVsaW5rIiwgInByZWxpbmtjb21tYW5kcyIpCmRvYmxvY2soIjk2MDdBRTM3MTBDODVFOEYwMENEMTM3NiIsICJQb3N0YnVpbGQiLCAicG9zdGJ1aWxkY29tbWFuZHMiKQppZiB3cmFwcGVyV3JpdHRlbiB0aGVuCl9wKCcvKiBFbmQgUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlIHNlY3Rpb24gKi8nKQplbmQKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWFNvdXJjZXNCdWlsZFBoYXNlKHRyKQpfcCgnLyogQmVnaW4gUEJYU291cmNlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLycpCmZvciBfLCB0YXJnZXQgaW4gaXBhaXJzKHRyLnByb2R1Y3RzLmNoaWxkcmVuKSBkbwpfcCgyLCclcyAvKiBTb3VyY2VzICovID0geycsIHRhcmdldC5zb3VyY2VzaWQpCl9wKDMsJ2lzYSA9IFBCWFNvdXJjZXNCdWlsZFBoYXNlOycpCl9wKDMsJ2J1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7JykKX3AoMywnZmlsZXMgPSAoJykKdHJlZS50cmF2ZXJzZSh0ciwgewpvbmxlYWYgPSBmdW5jdGlvbihub2RlKQppZiB4Y29kZS5nZXRidWlsZGNhdGVnb3J5KG5vZGUpID09ICJTb3VyY2VzIiB0aGVuCl9wKDQsJyVzIC8qICVzIGluIFNvdXJjZXMgKi8sJywgbm9kZS5idWlsZGlkLCBub2RlLm5hbWUpCmVuZAplbmQKfSkKX3AoMywnKTsnKQpfcCgzLCdydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsnKQpfcCgyLCd9OycpCmVuZApfcCgnLyogRW5kIFBCWFNvdXJjZXNCdWlsZFBoYXNlIHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWFZhcmlhbnRHcm91cCh0cikKX3AoJy8qIEJlZ2luIFBCWFZhcmlhbnRHcm91cCBzZWN0aW9uICovJykKdHJlZS50cmF2ZXJzZSh0ciwgewpvbmJyYW5jaCA9IGZ1bmN0aW9uKG5vZGUpCmlmIG5vZGUua2luZCA9PSAidmdyb3VwIiB0aGVuCl9wKDIsJyVzIC8qICVzICovID0geycsIG5vZGUuaWQsIG5vZGUubmFtZSkKX3AoMywnaXNhID0gUEJYVmFyaWFudEdyb3VwOycpCl9wKDMsJ2NoaWxkcmVuID0gKCcpCmZvciBfLCBsYW5nIGluIGlwYWlycyhub2RlLmNoaWxkcmVuKSBkbwpfcCg0LCclcyAvKiAlcyAqLywnLCBsYW5nLmlkLCBsYW5nLm5hbWUpCmVuZApfcCgzLCcpOycpCl9wKDMsJ25hbWUgPSAlczsnLCBub2RlLm5hbWUpCl9wKDMsJ3NvdXJjZVRyZWUgPSAiPGdyb3VwPiI7JykKX3AoMiwnfTsnKQplbmQKZW5kCn0pCl9wKCcvKiBFbmQgUEJYVmFyaWFudEdyb3VwIHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWFRhcmdldERlcGVuZGVuY3kodHIpCmlmICN0ci5wcm9qZWN0cy5jaGlsZHJlbiA+IDAgdGhlbgpfcCgnLyogQmVnaW4gUEJYVGFyZ2V0RGVwZW5kZW5jeSBzZWN0aW9uICovJykKdHJlZS50cmF2ZXJzZSh0ci5wcm9qZWN0cywgewpvbmxlYWYgPSBmdW5jdGlvbihub2RlKQpfcCgyLCclcyAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICovID0geycsIG5vZGUucGFyZW50LnRhcmdldGRlcGVuZGlkKQpfcCgzLCdpc2EgPSBQQlhUYXJnZXREZXBlbmRlbmN5OycpCl9wKDMsJ25hbWUgPSAiJXMiOycsIG5vZGUubmFtZSkKX3AoMywndGFyZ2V0UHJveHkgPSAlcyAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi87Jywgbm9kZS5wYXJlbnQudGFyZ2V0cHJveHlpZCkKX3AoMiwnfTsnKQplbmQKfSkKX3AoJy8qIEVuZCBQQlhUYXJnZXREZXBlbmRlbmN5IHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmVuZApmdW5jdGlvbiB4Y29kZS5YQ0J1aWxkQ29uZmlndXJhdGlvbl9UYXJnZXQodHIsIHRhcmdldCwgY2ZnKQpsb2NhbCBjZmduYW1lID0geGNvZGUuZ2V0Y29uZmlnbmFtZShjZmcpCl9wKDIsJyVzIC8qICVzICovID0geycsIGNmZy54Y29kZS50YXJnZXRpZCwgY2ZnbmFtZSkKX3AoMywnaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247JykKX3AoMywnYnVpbGRTZXR0aW5ncyA9IHsnKQpfcCg0LCdBTFdBWVNfU0VBUkNIX1VTRVJfUEFUSFMgPSBOTzsnKQppZiBub3QgY2ZnLmZsYWdzLlN5bWJvbHMgdGhlbgpfcCg0LCdERUJVR19JTkZPUk1BVElPTl9GT1JNQVQgPSAiZHdhcmYtd2l0aC1kc3ltIjsnKQplbmQKaWYgY2ZnLmtpbmQgfj0gIlN0YXRpY0xpYiIgYW5kIGNmZy5idWlsZHRhcmdldC5wcmVmaXggfj0gIiIgdGhlbgpfcCg0LCdFWEVDVVRBQkxFX1BSRUZJWCA9ICVzOycsIGNmZy5idWlsZHRhcmdldC5wcmVmaXgpCmVuZAppZiBjZmcudGFyZ2V0ZXh0ZW5zaW9uIHRoZW4KbG9jYWwgZXh0ID0gY2ZnLnRhcmdldGV4dGVuc2lvbgpleHQgPSBpaWYoZXh0OnN0YXJ0c3dpdGgoIi4iKSwgZXh0OnN1YigyKSwgZXh0KQpfcCg0LCdFWEVDVVRBQkxFX0VYVEVOU0lPTiA9ICVzOycsIGV4dCkKZW5kCmxvY2FsIG91dGRpciA9IHBhdGguZ2V0ZGlyZWN0b3J5KGNmZy5idWlsZHRhcmdldC5idW5kbGVwYXRoKQppZiBvdXRkaXIgfj0gIi4iIHRoZW4KX3AoNCwnQ09ORklHVVJBVElPTl9CVUlMRF9ESVIgPSAlczsnLCBvdXRkaXIpCmVuZApfcCg0LCdHQ0NfRFlOQU1JQ19OT19QSUMgPSBOTzsnKQpfcCg0LCdHQ0NfTU9ERUxfVFVOSU5HID0gRzU7JykKaWYgdHIuaW5mb3BsaXN0IHRoZW4KX3AoNCwnSU5GT1BMSVNUX0ZJTEUgPSAiJXMiOycsIHRyLmluZm9wbGlzdC5jZmcubmFtZSkKZW5kCmluc3RhbGxwYXRocyA9IHsKQ29uc29sZUFwcCA9ICcvdXNyL2xvY2FsL2JpbicsCldpbmRvd2VkQXBwID0gJyIkKEhPTUUpL0FwcGxpY2F0aW9ucyInLApTaGFyZWRMaWIgPSAnL3Vzci9sb2NhbC9saWInLApTdGF0aWNMaWIgPSAnL3Vzci9sb2NhbC9saWInLAp9Cl9wKDQsJ0lOU1RBTExfUEFUSCA9ICVzOycsIGluc3RhbGxwYXRoc1tjZmcua2luZF0pCl9wKDQsJ1BST0RVQ1RfTkFNRSA9ICIlcyI7JywgY2ZnLmJ1aWxkdGFyZ2V0LmJhc2VuYW1lKQpfcCgzLCd9OycpCl9wKDMsJ25hbWUgPSAiJXMiOycsIGNmZ25hbWUpCl9wKDIsJ307JykKZW5kCmZ1bmN0aW9uIHhjb2RlLlhDQnVpbGRDb25maWd1cmF0aW9uX1Byb2plY3QodHIsIGNmZykKbG9jYWwgY2ZnbmFtZSA9IHhjb2RlLmdldGNvbmZpZ25hbWUoY2ZnKQpfcCgyLCclcyAvKiAlcyAqLyA9IHsnLCBjZmcueGNvZGUucHJvamVjdGlkLCBjZmduYW1lKQpfcCgzLCdpc2EgPSBYQ0J1aWxkQ29uZmlndXJhdGlvbjsnKQpfcCgzLCdidWlsZFNldHRpbmdzID0geycpCmxvY2FsIGFyY2hzID0gewpOYXRpdmUgPSAiJChOQVRJVkVfQVJDSF9BQ1RVQUwpIiwKeDMyICAgID0gImkzODYiLAp4NjQgICAgPSAieDg2XzY0IiwKVW5pdmVyc2FsMzIgPSAiJChBUkNIU19TVEFOREFSRF8zMl9CSVQpIiwKVW5pdmVyc2FsNjQgPSAiJChBUkNIU19TVEFOREFSRF82NF9CSVQpIiwKVW5pdmVyc2FsID0gIiQoQVJDSFNfU1RBTkRBUkRfMzJfNjRfQklUKSIsCmlPUyAgICA9ICIkKEFSQ0hTX1VOSVZFUlNBTF9JUEhPTkVfT1MpIiwKfQpfcCg0LCdBUkNIUyA9ICIlcyI7JywgYXJjaHNbY2ZnLnBsYXRmb3JtXSkKaWYgY2ZnLnBsYXRmb3JtID09ICJpT1MiIHRoZW4KX3AoNCwnU0RLUk9PVCA9ICVzOycsICJpcGhvbmVvcyIpCl9wKDQsJ0NPREVfU0lHTl9JREVOVElUWSA9ICIlcyI7JywgImlQaG9uZSBEZXZlbG9wZXIiKQplbmQKbG9jYWwgdGFyZ2V0ZGlyID0gcGF0aC5nZXRkaXJlY3RvcnkoY2ZnLmJ1aWxkdGFyZ2V0LmJ1bmRsZXBhdGgpCmlmIHRhcmdldGRpciB+PSAiLiIgdGhlbgpfcCg0LCdDT05GSUdVUkFUSU9OX0JVSUxEX0RJUiA9ICIkKFNZTVJPT1QpIjsnKTsKZW5kCl9wKDQsJ0NPTkZJR1VSQVRJT05fVEVNUF9ESVIgPSAiJChPQkpST09UKSI7JykKaWYgY2ZnLmZsYWdzLlN5bWJvbHMgdGhlbgpfcCg0LCdDT1BZX1BIQVNFX1NUUklQID0gTk87JykKZW5kCl9wKDQsJ0dDQ19DX0xBTkdVQUdFX1NUQU5EQVJEID0gZ251OTk7JykKaWYgY2ZnLmZsYWdzLk5vRXhjZXB0aW9ucyB0aGVuCl9wKDQsJ0dDQ19FTkFCTEVfQ1BQX0VYQ0VQVElPTlMgPSBOTzsnKQplbmQKaWYgY2ZnLmZsYWdzLk5vUlRUSSB0aGVuCl9wKDQsJ0dDQ19FTkFCTEVfQ1BQX1JUVEkgPSBOTzsnKQplbmQKaWYgX0FDVElPTiB+PSAieGNvZGU0IiBhbmQgY2ZnLmZsYWdzLlN5bWJvbHMgYW5kIG5vdCBjZmcuZmxhZ3MuTm9FZGl0QW5kQ29udGludWUgdGhlbgpfcCg0LCdHQ0NfRU5BQkxFX0ZJWF9BTkRfQ09OVElOVUUgPSBZRVM7JykKZW5kCmlmIGNmZy5mbGFncy5Ob0V4Y2VwdGlvbnMgdGhlbgpfcCg0LCdHQ0NfRU5BQkxFX09CSkNfRVhDRVBUSU9OUyA9IE5POycpCmVuZAppZiBjZmcuZmxhZ3MuT3B0aW1pemUgb3IgY2ZnLmZsYWdzLk9wdGltaXplU2l6ZSB0aGVuCl9wKDQsJ0dDQ19PUFRJTUlaQVRJT05fTEVWRUwgPSBzOycpCmVsc2VpZiBjZmcuZmxhZ3MuT3B0aW1pemVTcGVlZCB0aGVuCl9wKDQsJ0dDQ19PUFRJTUlaQVRJT05fTEVWRUwgPSAzOycpCmVsc2UKX3AoNCwnR0NDX09QVElNSVpBVElPTl9MRVZFTCA9IDA7JykKZW5kCmlmIGNmZy5wY2hoZWFkZXIgYW5kIG5vdCBjZmcuZmxhZ3MuTm9QQ0ggdGhlbgpfcCg0LCdHQ0NfUFJFQ09NUElMRV9QUkVGSVhfSEVBREVSID0gWUVTOycpCl9wKDQsJ0dDQ19QUkVGSVhfSEVBREVSID0gIiVzIjsnLCBjZmcucGNoaGVhZGVyKQplbmQKeGNvZGUucHJpbnRsaXN0KGNmZy5kZWZpbmVzLCAnR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUycpCl9wKDQsJ0dDQ19TWU1CT0xTX1BSSVZBVEVfRVhURVJOID0gTk87JykKaWYgY2ZnLmZsYWdzLkZhdGFsV2FybmluZ3MgdGhlbgpfcCg0LCdHQ0NfVFJFQVRfV0FSTklOR1NfQVNfRVJST1JTID0gWUVTOycpCmVuZApfcCg0LCdHQ0NfV0FSTl9BQk9VVF9SRVRVUk5fVFlQRSA9IFlFUzsnKQpfcCg0LCdHQ0NfV0FSTl9VTlVTRURfVkFSSUFCTEUgPSBZRVM7JykKeGNvZGUucHJpbnRsaXN0KGNmZy5pbmNsdWRlZGlycywgJ0hFQURFUl9TRUFSQ0hfUEFUSFMnKQp4Y29kZS5wcmludGxpc3QoY2ZnLmxpYmRpcnMsICdMSUJSQVJZX1NFQVJDSF9QQVRIUycpCl9wKDQsJ09CSlJPT1QgPSAiJXMiOycsIGNmZy5vYmplY3RzZGlyKQpfcCg0LCdPTkxZX0FDVElWRV9BUkNIID0gJXM7JyxpaWYocHJlbWFrZS5jb25maWcuaXNkZWJ1Z2J1aWxkKGNmZyksJ1lFUycsJ05PJykpCmxvY2FsIGNoZWNrcyA9IHsKWyItZmZhc3QtbWF0aCJdICAgICAgICAgID0gY2ZnLmZsYWdzLkZsb2F0RmFzdCwKWyItZmZsb2F0LXN0b3JlIl0gICAgICAgID0gY2ZnLmZsYWdzLkZsb2F0U3RyaWN0LApbIi1mb21pdC1mcmFtZS1wb2ludGVyIl0gPSBjZmcuZmxhZ3MuTm9GcmFtZVBvaW50ZXIsCn0KbG9jYWwgZmxhZ3MgPSB7IH0KZm9yIGZsYWcsIGNoZWNrIGluIHBhaXJzKGNoZWNrcykgZG8KaWYgY2hlY2sgdGhlbgp0YWJsZS5pbnNlcnQoZmxhZ3MsIGZsYWcpCmVuZAplbmQKeGNvZGUucHJpbnRsaXN0KHRhYmxlLmpvaW4oZmxhZ3MsIGNmZy5idWlsZG9wdGlvbnMpLCAnT1RIRVJfQ0ZMQUdTJykKZmxhZ3MgPSB7IH0KZm9yIF8sIGxpYiBpbiBpcGFpcnMocHJlbWFrZS5nZXRsaW5rcyhjZmcsICJzeXN0ZW0iKSkgZG8KaWYgbm90IHhjb2RlLmlzZnJhbWV3b3JrKGxpYikgdGhlbgp0YWJsZS5pbnNlcnQoZmxhZ3MsICItbCIgLi4gbGliKQplbmQKZW5kCmZsYWdzID0gdGFibGUuam9pbihmbGFncywgY2ZnLmxpbmtvcHRpb25zKQp4Y29kZS5wcmludGxpc3QoZmxhZ3MsICdPVEhFUl9MREZMQUdTJykKaWYgY2ZnLmZsYWdzLlN0YXRpY1J1bnRpbWUgdGhlbgpfcCg0LCdTVEFOREFSRF9DX1BMVVNfUExVU19MSUJSQVJZX1RZUEUgPSBzdGF0aWM7JykKZW5kCmlmIHRhcmdldGRpciB+PSAiLiIgdGhlbgpfcCg0LCdTWU1ST09UID0gIiVzIjsnLCB0YXJnZXRkaXIpCmVuZAppZiBjZmcuZmxhZ3MuRXh0cmFXYXJuaW5ncyB0aGVuCl9wKDQsJ1dBUk5JTkdfQ0ZMQUdTID0gIi1XYWxsIjsnKQplbmQKX3AoMywnfTsnKQpfcCgzLCduYW1lID0gIiVzIjsnLCBjZmduYW1lKQpfcCgyLCd9OycpCmVuZApmdW5jdGlvbiB4Y29kZS5YQ0J1aWxkQ29uZmlndXJhdGlvbih0cikKX3AoJy8qIEJlZ2luIFhDQnVpbGRDb25maWd1cmF0aW9uIHNlY3Rpb24gKi8nKQpmb3IgXywgdGFyZ2V0IGluIGlwYWlycyh0ci5wcm9kdWN0cy5jaGlsZHJlbikgZG8KZm9yIF8sIGNmZyBpbiBpcGFpcnModHIuY29uZmlncykgZG8KeGNvZGUuWENCdWlsZENvbmZpZ3VyYXRpb25fVGFyZ2V0KHRyLCB0YXJnZXQsIGNmZykKZW5kCmVuZApmb3IgXywgY2ZnIGluIGlwYWlycyh0ci5jb25maWdzKSBkbwp4Y29kZS5YQ0J1aWxkQ29uZmlndXJhdGlvbl9Qcm9qZWN0KHRyLCBjZmcpCmVuZApfcCgnLyogRW5kIFhDQnVpbGRDb25maWd1cmF0aW9uIHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmZ1bmN0aW9uIHhjb2RlLlhDQnVpbGRDb25maWd1cmF0aW9uTGlzdCh0cikKbG9jYWwgc2xuID0gdHIucHJvamVjdC5zb2x1dGlvbgpfcCgnLyogQmVnaW4gWENDb25maWd1cmF0aW9uTGlzdCBzZWN0aW9uICovJykKZm9yIF8sIHRhcmdldCBpbiBpcGFpcnModHIucHJvZHVjdHMuY2hpbGRyZW4pIGRvCl9wKDIsJyVzIC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYTmF0aXZlVGFyZ2V0ICIlcyIgKi8gPSB7JywgdGFyZ2V0LmNmZ3NlY3Rpb24sIHRhcmdldC5uYW1lKQpfcCgzLCdpc2EgPSBYQ0NvbmZpZ3VyYXRpb25MaXN0OycpCl9wKDMsJ2J1aWxkQ29uZmlndXJhdGlvbnMgPSAoJykKZm9yIF8sIGNmZyBpbiBpcGFpcnModHIuY29uZmlncykgZG8KX3AoNCwnJXMgLyogJXMgKi8sJywgY2ZnLnhjb2RlLnRhcmdldGlkLCB4Y29kZS5nZXRjb25maWduYW1lKGNmZykpCmVuZApfcCgzLCcpOycpCl9wKDMsJ2RlZmF1bHRDb25maWd1cmF0aW9uSXNWaXNpYmxlID0gMDsnKQpfcCgzLCdkZWZhdWx0Q29uZmlndXJhdGlvbk5hbWUgPSAiJXMiOycsIHhjb2RlLmdldGNvbmZpZ25hbWUodHIuY29uZmlnc1sxXSkpCl9wKDIsJ307JykKZW5kCl9wKDIsJzFERUI5Mjg5MDg3MzNERDgwMDEwRTlDRCAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWFByb2plY3QgIiVzIiAqLyA9IHsnLCB0ci5uYW1lKQpfcCgzLCdpc2EgPSBYQ0NvbmZpZ3VyYXRpb25MaXN0OycpCl9wKDMsJ2J1aWxkQ29uZmlndXJhdGlvbnMgPSAoJykKZm9yIF8sIGNmZyBpbiBpcGFpcnModHIuY29uZmlncykgZG8KX3AoNCwnJXMgLyogJXMgKi8sJywgY2ZnLnhjb2RlLnByb2plY3RpZCwgeGNvZGUuZ2V0Y29uZmlnbmFtZShjZmcpKQplbmQKX3AoMywnKTsnKQpfcCgzLCdkZWZhdWx0Q29uZmlndXJhdGlvbklzVmlzaWJsZSA9IDA7JykKX3AoMywnZGVmYXVsdENvbmZpZ3VyYXRpb25OYW1lID0gIiVzIjsnLCB4Y29kZS5nZXRjb25maWduYW1lKHRyLmNvbmZpZ3NbMV0pKQpfcCgyLCd9OycpCl9wKCcvKiBFbmQgWENDb25maWd1cmF0aW9uTGlzdCBzZWN0aW9uICovJykKX3AoJycpCmVuZApmdW5jdGlvbiB4Y29kZS5Gb290ZXIoKQpfcCgxLCd9OycpCl9wKCdcdHJvb3RPYmplY3QgPSAwOEZCNzc5M0ZFODQxNTVEQzAyQUFDMDcgLyogUHJvamVjdCBvYmplY3QgKi87JykKX3AoJ30nKQplbmQKAGxvY2FsIHhjb2RlID0gcHJlbWFrZS54Y29kZQpsb2NhbCB0cmVlID0gcHJlbWFrZS50cmVlCmZ1bmN0aW9uIHhjb2RlLmJ1aWxkcHJqdHJlZShwcmopCmxvY2FsIHRyID0gcHJlbWFrZS5wcm9qZWN0LmJ1aWxkc291cmNldHJlZShwcmopCnRyLmNvbmZpZ3MgPSB7fQpmb3IgXywgY2ZnbmFtZSBpbiBpcGFpcnMocHJqLnNvbHV0aW9uLmNvbmZpZ3VyYXRpb25zKSBkbwpmb3IgXywgcGxhdGZvcm0gaW4gaXBhaXJzKHByai5zb2x1dGlvbi54Y29kZS5wbGF0Zm9ybXMpIGRvCmxvY2FsIGNmZyA9IHByZW1ha2UuZ2V0Y29uZmlnKHByaiwgY2ZnbmFtZSwgcGxhdGZvcm0pCmNmZy54Y29kZSA9IHt9CmNmZy54Y29kZS50YXJnZXRpZCA9IHhjb2RlLm5ld2lkKHByai54Y29kZS5wcm9qZWN0bm9kZSwgY2ZnbmFtZSkKY2ZnLnhjb2RlLnByb2plY3RpZCA9IHhjb2RlLm5ld2lkKHRyLCBjZmduYW1lKQp0YWJsZS5pbnNlcnQodHIuY29uZmlncywgY2ZnKQplbmQKZW5kCnRyZWUudHJhdmVyc2UodHIsIHsKb25icmFuY2ggPSBmdW5jdGlvbihub2RlKQppZiBwYXRoLmdldGV4dGVuc2lvbihub2RlLm5hbWUpID09ICIubHByb2oiIHRoZW4KbG9jYWwgbGFuZyA9IHBhdGguZ2V0YmFzZW5hbWUobm9kZS5uYW1lKSAgLS0gIkVuZ2xpc2giLCAiRnJlbmNoIiwgZXRjLgpmb3IgXywgZmlsZW5vZGUgaW4gaXBhaXJzKG5vZGUuY2hpbGRyZW4pIGRvCmxvY2FsIGdycG5vZGUgPSBub2RlLnBhcmVudC5jaGlsZHJlbltmaWxlbm9kZS5uYW1lXQppZiBub3QgZ3Jwbm9kZSB0aGVuCmdycG5vZGUgPSB0cmVlLmluc2VydChub2RlLnBhcmVudCwgdHJlZS5uZXcoZmlsZW5vZGUubmFtZSkpCmdycG5vZGUua2luZCA9ICJ2Z3JvdXAiCmVuZApmaWxlbm9kZS5uYW1lID0gcGF0aC5nZXRiYXNlbmFtZShsYW5nKQp0cmVlLmluc2VydChncnBub2RlLCBmaWxlbm9kZSkKZW5kCnRyZWUucmVtb3ZlKG5vZGUpCmVuZAplbmQKfSkKdHIuZnJhbWV3b3JrcyA9IHRyZWUubmV3KCJGcmFtZXdvcmtzIikKZm9yIGNmZyBpbiBwcmVtYWtlLmVhY2hjb25maWcocHJqKSBkbwpmb3IgXywgbGluayBpbiBpcGFpcnMocHJlbWFrZS5nZXRsaW5rcyhjZmcsICJzeXN0ZW0iLCAiZnVsbHBhdGgiKSkgZG8KbG9jYWwgbmFtZSA9IHBhdGguZ2V0bmFtZShsaW5rKQppZiB4Y29kZS5pc2ZyYW1ld29yayhuYW1lKSBhbmQgbm90IHRyLmZyYW1ld29ya3MuY2hpbGRyZW5bbmFtZV0gdGhlbgpub2RlID0gdHJlZS5pbnNlcnQodHIuZnJhbWV3b3JrcywgdHJlZS5uZXcobmFtZSkpCm5vZGUucGF0aCA9IGxpbmsKZW5kCmVuZAplbmQKaWYgI3RyLmZyYW1ld29ya3MuY2hpbGRyZW4gPiAwIHRoZW4gCnRyZWUuaW5zZXJ0KHRyLCB0ci5mcmFtZXdvcmtzKQplbmQKdHIucHJvZHVjdHMgPSB0cmVlLmluc2VydCh0ciwgdHJlZS5uZXcoIlByb2R1Y3RzIikpCnRyLnByb2plY3RzID0gdHJlZS5uZXcoIlByb2plY3RzIikKZm9yIF8sIGRlcCBpbiBpcGFpcnMocHJlbWFrZS5nZXRkZXBlbmRlbmNpZXMocHJqLCAic2libGluZyIsICJvYmplY3QiKSkgZG8KbG9jYWwgeGNwYXRoID0geGNvZGUuZ2V0eGNvZGVwcm9qbmFtZShkZXApCmxvY2FsIHhjbm9kZSA9IHRyZWUuaW5zZXJ0KHRyLnByb2plY3RzLCB0cmVlLm5ldyhwYXRoLmdldG5hbWUoeGNwYXRoKSkpCnhjbm9kZS5wYXRoID0geGNwYXRoCnhjbm9kZS5wcm9qZWN0ID0gZGVwCnhjbm9kZS5wcm9kdWN0Z3JvdXBpZCA9IHhjb2RlLm5ld2lkKHhjbm9kZSwgInByb2RncnAiKQp4Y25vZGUucHJvZHVjdHByb3h5aWQgPSB4Y29kZS5uZXdpZCh4Y25vZGUsICJwcm9kcHJveCIpCnhjbm9kZS50YXJnZXRwcm94eWlkICA9IHhjb2RlLm5ld2lkKHhjbm9kZSwgInRhcmdwcm94IikKeGNub2RlLnRhcmdldGRlcGVuZGlkID0geGNvZGUubmV3aWQoeGNub2RlLCAidGFyZ2RlcCIpCmxvY2FsIGNmZyA9IHByZW1ha2UuZ2V0Y29uZmlnKGRlcCwgcHJqLmNvbmZpZ3VyYXRpb25zWzFdKQpub2RlID0gdHJlZS5pbnNlcnQoeGNub2RlLCB0cmVlLm5ldyhjZmcubGlua3RhcmdldC5uYW1lKSkKbm9kZS5wYXRoID0gY2ZnLmxpbmt0YXJnZXQuZnVsbHBhdGgKbm9kZS5jZmcgPSBjZmcKZW5kCmlmICN0ci5wcm9qZWN0cy5jaGlsZHJlbiA+IDAgdGhlbgp0cmVlLmluc2VydCh0ciwgdHIucHJvamVjdHMpCmVuZAp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubm9kZSA9IGZ1bmN0aW9uKG5vZGUpCm5vZGUuaWQgPSB4Y29kZS5uZXdpZChub2RlKQppZiB4Y29kZS5nZXRidWlsZGNhdGVnb3J5KG5vZGUpIHRoZW4Kbm9kZS5idWlsZGlkID0geGNvZGUubmV3aWQobm9kZSwgImJ1aWxkIikKZW5kCmlmIHN0cmluZy5lbmRzd2l0aChub2RlLm5hbWUsICJJbmZvLnBsaXN0IikgdGhlbgp0ci5pbmZvcGxpc3QgPSBub2RlCmVuZAplbmQKfSwgdHJ1ZSkKbm9kZSA9IHRyZWUuaW5zZXJ0KHRyLnByb2R1Y3RzLCBwcmoueGNvZGUucHJvamVjdG5vZGUpCm5vZGUua2luZCA9ICJwcm9kdWN0Igpub2RlLnBhdGggPSBub2RlLmNmZy5idWlsZHRhcmdldC5mdWxscGF0aApub2RlLmNmZ3NlY3Rpb24gPSB4Y29kZS5uZXdpZChub2RlLCAiY2ZnIikKbm9kZS5yZXNzdGFnZWlkID0geGNvZGUubmV3aWQobm9kZSwgInJleiIpCm5vZGUuc291cmNlc2lkICA9IHhjb2RlLm5ld2lkKG5vZGUsICJzcmMiKQpub2RlLmZ4c3RhZ2VpZCAgPSB4Y29kZS5uZXdpZChub2RlLCAiZnhzIikKcmV0dXJuIHRyCmVuZApmdW5jdGlvbiBwcmVtYWtlLnhjb2RlLnByb2plY3QocHJqKQpsb2NhbCB0ciA9IHhjb2RlLmJ1aWxkcHJqdHJlZShwcmopCnhjb2RlLkhlYWRlcih0cikKeGNvZGUuUEJYQnVpbGRGaWxlKHRyKQp4Y29kZS5QQlhDb250YWluZXJJdGVtUHJveHkodHIpCnhjb2RlLlBCWEZpbGVSZWZlcmVuY2UodHIpCnhjb2RlLlBCWEZyYW1ld29ya3NCdWlsZFBoYXNlKHRyKQp4Y29kZS5QQlhHcm91cCh0cikKeGNvZGUuUEJYTmF0aXZlVGFyZ2V0KHRyKQp4Y29kZS5QQlhQcm9qZWN0KHRyKQp4Y29kZS5QQlhSZWZlcmVuY2VQcm94eSh0cikKeGNvZGUuUEJYUmVzb3VyY2VzQnVpbGRQaGFzZSh0cikKeGNvZGUuUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlKHRyKQp4Y29kZS5QQlhTb3VyY2VzQnVpbGRQaGFzZSh0cikKeGNvZGUuUEJYVmFyaWFudEdyb3VwKHRyKQp4Y29kZS5QQlhUYXJnZXREZXBlbmRlbmN5KHRyKQp4Y29kZS5YQ0J1aWxkQ29uZmlndXJhdGlvbih0cikKeGNvZGUuWENCdWlsZENvbmZpZ3VyYXRpb25MaXN0KHRyKQp4Y29kZS5Gb290ZXIodHIpCmVuZAoAcHJlbWFrZS54Y29kZTQgPSB7fQpsb2NhbCB4Y29kZTQgPSBwcmVtYWtlLnhjb2RlNApmdW5jdGlvbiB4Y29kZTQud29ya3NwYWNlX2hlYWQoKQpfcCgnPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4nKQpfcCgnPFdvcmtzcGFjZScpCl9wKDEsJ3ZlcnNpb24gPSAiMS4wIj4nKQplbmQKZnVuY3Rpb24geGNvZGU0LndvcmtzcGFjZV90YWlsKCkKX3AoJzwvV29ya3NwYWNlPicpCmVuZApmdW5jdGlvbiB4Y29kZTQud29ya3NwYWNlX2ZpbGVfcmVmKHByaikKbG9jYWwgcHJvanBhdGggPSBwYXRoLmdldHJlbGF0aXZlKHByai5zb2x1dGlvbi5sb2NhdGlvbiwgcHJqLmxvY2F0aW9uKQppZiBwcm9qcGF0aCA9PSAnLicgdGhlbiBwcm9qcGF0aCA9ICcnIAplbHNlIHByb2pwYXRoID0gcHJvanBhdGggLi4nLycgCmVuZApfcCgxLCc8RmlsZVJlZicpCl9wKDIsJ2xvY2F0aW9uID0gImdyb3VwOiVzIj4nLHByb2pwYXRoIC4uIHByai5uYW1lIC4uICcueGNvZGVwcm9qJykKX3AoMSwnPC9GaWxlUmVmPicpCmVuZApmdW5jdGlvbiB4Y29kZTQud29ya3NwYWNlX2dlbmVyYXRlKHNsbikKcHJlbWFrZS54Y29kZS5wcmVwYXJlc29sdXRpb24oc2xuKQp4Y29kZTQud29ya3NwYWNlX2hlYWQoKQpmb3IgcHJqIGluIHByZW1ha2Uuc29sdXRpb24uZWFjaHByb2plY3Qoc2xuKSBkbwp4Y29kZTQud29ya3NwYWNlX2ZpbGVfcmVmKHByaikKZW5kCnhjb2RlNC53b3Jrc3BhY2VfdGFpbCgpCmVuZAoAcHJlbWFrZS5jbGVhbiA9IHsgfQpmdW5jdGlvbiBwcmVtYWtlLmNsZWFuLmRpcmVjdG9yeShvYmosIHBhdHRlcm4pCmxvY2FsIGZuYW1lID0gcHJlbWFrZS5wcm9qZWN0LmdldGZpbGVuYW1lKG9iaiwgcGF0dGVybikKb3Mucm1kaXIoZm5hbWUpCmVuZApmdW5jdGlvbiBwcmVtYWtlLmNsZWFuLmZpbGUob2JqLCBwYXR0ZXJuKQpsb2NhbCBmbmFtZSA9IHByZW1ha2UucHJvamVjdC5nZXRmaWxlbmFtZShvYmosIHBhdHRlcm4pCm9zLnJlbW92ZShmbmFtZSkKZW5kCm5ld2FjdGlvbiB7CnRyaWdnZXIgICAgID0gImNsZWFuIiwKZGVzY3JpcHRpb24gPSAiUmVtb3ZlIGFsbCBiaW5hcmllcyBhbmQgZ2VuZXJhdGVkIGZpbGVzIiwKb25zb2x1dGlvbiA9IGZ1bmN0aW9uKHNsbikKZm9yIGFjdGlvbiBpbiBwcmVtYWtlLmFjdGlvbi5lYWNoKCkgZG8KaWYgYWN0aW9uLm9uY2xlYW5zb2x1dGlvbiB0aGVuCmFjdGlvbi5vbmNsZWFuc29sdXRpb24oc2xuKQplbmQKZW5kCmVuZCwKb25wcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQpmb3IgYWN0aW9uIGluIHByZW1ha2UuYWN0aW9uLmVhY2goKSBkbwppZiBhY3Rpb24ub25jbGVhbnByb2plY3QgdGhlbgphY3Rpb24ub25jbGVhbnByb2plY3QocHJqKQplbmQKZW5kCmlmIChwcmoub2JqZWN0c2RpcikgdGhlbgpwcmVtYWtlLmNsZWFuLmRpcmVjdG9yeShwcmosIHByai5vYmplY3RzZGlyKQplbmQKbG9jYWwgcGxhdGZvcm1zID0gcHJqLnNvbHV0aW9uLnBsYXRmb3JtcyBvciB7IH0KaWYgbm90IHRhYmxlLmNvbnRhaW5zKHBsYXRmb3JtcywgIk5hdGl2ZSIpIHRoZW4KcGxhdGZvcm1zID0gdGFibGUuam9pbihwbGF0Zm9ybXMsIHsgIk5hdGl2ZSIgfSkKZW5kCmZvciBfLCBwbGF0Zm9ybSBpbiBpcGFpcnMocGxhdGZvcm1zKSBkbwpmb3IgY2ZnIGluIHByZW1ha2UuZWFjaGNvbmZpZyhwcmosIHBsYXRmb3JtKSBkbwpwcmVtYWtlLmNsZWFuLmRpcmVjdG9yeShwcmosIGNmZy5vYmplY3RzZGlyKQpwcmVtYWtlLmNsZWFuLmZpbGUocHJqLCBwcmVtYWtlLmdldHRhcmdldChjZmcsICJidWlsZCIsICJwb3NpeCIsICJ3aW5kb3dzIiwgIndpbmRvd3MiKS5mdWxscGF0aCkKcHJlbWFrZS5jbGVhbi5maWxlKHByaiwgcHJlbWFrZS5nZXR0YXJnZXQoY2ZnLCAiYnVpbGQiLCAicG9zaXgiLCAicG9zaXgiLCAibGludXgiKS5mdWxscGF0aCkKcHJlbWFrZS5jbGVhbi5maWxlKHByaiwgcHJlbWFrZS5nZXR0YXJnZXQoY2ZnLCAiYnVpbGQiLCAicG9zaXgiLCAicG9zaXgiLCAibWFjb3N4IikuZnVsbHBhdGgpCnByZW1ha2UuY2xlYW4uZmlsZShwcmosIHByZW1ha2UuZ2V0dGFyZ2V0KGNmZywgImJ1aWxkIiwgInBvc2l4IiwgIlBTMyIsICJ3aW5kb3dzIikuZnVsbHBhdGgpCmlmIGNmZy5raW5kID09ICJXaW5kb3dlZEFwcCIgdGhlbgpwcmVtYWtlLmNsZWFuLmRpcmVjdG9yeShwcmosIHByZW1ha2UuZ2V0dGFyZ2V0KGNmZywgImJ1aWxkIiwgInBvc2l4IiwgInBvc2l4IiwgImxpbnV4IikuZnVsbHBhdGggLi4gIi5hcHAiKQplbmQKcHJlbWFrZS5jbGVhbi5maWxlKHByaiwgcHJlbWFrZS5nZXR0YXJnZXQoY2ZnLCAibGluayIsICJ3aW5kb3dzIiwgIndpbmRvd3MiLCAid2luZG93cyIpLmZ1bGxwYXRoKQpwcmVtYWtlLmNsZWFuLmZpbGUocHJqLCBwcmVtYWtlLmdldHRhcmdldChjZmcsICJsaW5rIiwgInBvc2l4IiwgInBvc2l4IiwgImxpbnV4IikuZnVsbHBhdGgpCmxvY2FsIHRhcmdldCA9IHBhdGguam9pbihwcmVtYWtlLnByb2plY3QuZ2V0ZmlsZW5hbWUocHJqLCBjZmcuYnVpbGR0YXJnZXQuZGlyZWN0b3J5KSwgY2ZnLmJ1aWxkdGFyZ2V0LmJhc2VuYW1lKQpmb3IgYWN0aW9uIGluIHByZW1ha2UuYWN0aW9uLmVhY2goKSBkbwppZiBhY3Rpb24ub25jbGVhbnRhcmdldCB0aGVuCmFjdGlvbi5vbmNsZWFudGFyZ2V0KHRhcmdldCkKZW5kCmVuZAplbmQKZW5kCmVuZAp9CgBsb2NhbCBzY3JpcHRmaWxlICAgID0gInByZW1ha2U0Lmx1YSIKbG9jYWwgc2hvcnRoZWxwICAgICA9ICJUeXBlICdwcmVtYWtlNCAtLWhlbHAnIGZvciBoZWxwIgpsb2NhbCB2ZXJzaW9uaGVscCAgID0gInByZW1ha2U0IChQcmVtYWtlIEJ1aWxkIFNjcmlwdCBHZW5lcmF0b3IpICVzIgpfV09SS0lOR19ESVIgICAgICAgID0gb3MuZ2V0Y3dkKCkKbG9jYWwgZnVuY3Rpb24gaW5qZWN0cGxhdGZvcm0ocGxhdGZvcm0pCmlmIG5vdCBwbGF0Zm9ybSB0aGVuIHJldHVybiB0cnVlIGVuZApwbGF0Zm9ybSA9IHByZW1ha2UuY2hlY2t2YWx1ZShwbGF0Zm9ybSwgcHJlbWFrZS5maWVsZHMucGxhdGZvcm1zLmFsbG93ZWQpCmZvciBzbG4gaW4gcHJlbWFrZS5zb2x1dGlvbi5lYWNoKCkgZG8KbG9jYWwgcGxhdGZvcm1zID0gc2xuLnBsYXRmb3JtcyBvciB7IH0KaWYgI3BsYXRmb3JtcyA9PSAwIHRoZW4KdGFibGUuaW5zZXJ0KHBsYXRmb3JtcywgIk5hdGl2ZSIpCmVuZAppZiBub3QgdGFibGUuY29udGFpbnMocGxhdGZvcm1zLCAiTmF0aXZlIikgdGhlbgpyZXR1cm4gZmFsc2UsIHNsbi5uYW1lIC4uICIgZG9lcyBub3QgdGFyZ2V0IG5hdGl2ZSBwbGF0Zm9ybVxuTmF0aXZlIHBsYXRmb3JtIHNldHRpbmdzIGFyZSByZXF1aXJlZCBmb3IgdGhlIC0tcGxhdGZvcm0gZmVhdHVyZS4iCmVuZAppZiBub3QgdGFibGUuY29udGFpbnMocGxhdGZvcm1zLCBwbGF0Zm9ybSkgdGhlbgp0YWJsZS5pbnNlcnQocGxhdGZvcm1zLCBwbGF0Zm9ybSkKZW5kCnNsbi5wbGF0Zm9ybXMgPSBwbGF0Zm9ybXMKZW5kCnJldHVybiB0cnVlCmVuZApmdW5jdGlvbiBfcHJlbWFrZV9tYWluKHNjcmlwdHBhdGgpCmlmIChzY3JpcHRwYXRoKSB0aGVuCmxvY2FsIHNjcmlwdHMgID0gZG9maWxlKHNjcmlwdHBhdGggLi4gIi9fbWFuaWZlc3QubHVhIikKZm9yIF8sdiBpbiBpcGFpcnMoc2NyaXB0cykgZG8KZG9maWxlKHNjcmlwdHBhdGggLi4gIi8iIC4uIHYpCmVuZAplbmQKX1BSRU1BS0VfQ09NTUFORCA9IHBhdGguZ2V0YWJzb2x1dGUoX1BSRU1BS0VfQ09NTUFORCkKcHJlbWFrZS5hY3Rpb24uc2V0KF9BQ1RJT04pCm1hdGgucmFuZG9tc2VlZChvcy50aW1lKCkpCmxvY2FsIGZuYW1lID0gX09QVElPTlNbImZpbGUiXSBvciBzY3JpcHRmaWxlCmlmIChvcy5pc2ZpbGUoZm5hbWUpKSB0aGVuCmRvZmlsZShmbmFtZSkKZW5kCmlmIChfT1BUSU9OU1sidmVyc2lvbiJdKSB0aGVuCnByaW50Zih2ZXJzaW9uaGVscCwgX1BSRU1BS0VfVkVSU0lPTikKcmV0dXJuIDEKZW5kCmlmIChfT1BUSU9OU1siaGVscCJdKSB0aGVuCnByZW1ha2Uuc2hvd2hlbHAoKQpyZXR1cm4gMQplbmQKaWYgKG5vdCBfQUNUSU9OKSB0aGVuCnByaW50KHNob3J0aGVscCkKcmV0dXJuIDEKZW5kCmlmIChub3Qgb3MuaXNmaWxlKGZuYW1lKSkgdGhlbgplcnJvcigiTm8gUHJlbWFrZSBzY3JpcHQgKCIuLnNjcmlwdGZpbGUuLiIpIGZvdW5kISIsIDIpCmVuZAphY3Rpb24gPSBwcmVtYWtlLmFjdGlvbi5jdXJyZW50KCkKaWYgKG5vdCBhY3Rpb24pIHRoZW4KZXJyb3IoIkVycm9yOiBubyBzdWNoIGFjdGlvbiAnIiAuLiBfQUNUSU9OIC4uICInIiwgMCkKZW5kCm9rLCBlcnIgPSBwcmVtYWtlLm9wdGlvbi52YWxpZGF0ZShfT1BUSU9OUykKaWYgKG5vdCBvaykgdGhlbiBlcnJvcigiRXJyb3I6ICIgLi4gZXJyLCAwKSBlbmQKb2ssIGVyciA9IHByZW1ha2UuY2hlY2t0b29scygpCmlmIChub3Qgb2spIHRoZW4gZXJyb3IoIkVycm9yOiAiIC4uIGVyciwgMCkgZW5kCm9rLCBlcnIgPSBpbmplY3RwbGF0Zm9ybShfT1BUSU9OU1sicGxhdGZvcm0iXSkKaWYgKG5vdCBvaykgdGhlbiBlcnJvcigiRXJyb3I6ICIgLi4gZXJyLCAwKSBlbmQKcHJpbnQoIkJ1aWxkaW5nIGNvbmZpZ3VyYXRpb25zLi4uIikKcHJlbWFrZS5iYWtlLmJ1aWxkY29uZmlncygpCm9rLCBlcnIgPSBwcmVtYWtlLmNoZWNrcHJvamVj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cwEEgnQBA6N0AQESdQEAYnUBAs91AQVzdgEC9nYBAS14AQM/eAEE2ngBAxJ5AQEAegEEcnoBAA97AQIDfAEBYH0BAtV+AQFUgAEAp4ABBISBAQG3hQEFLIYBAQAAAAAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAAJAAAABwAAACUbvv//////xsAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAABEAAAAh277//////+AAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAAbAAAAN9u+///////UwAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAJQAAAAKb/v//////w4AAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAC8AAAA8G77//////8YAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAA5AAAAOBu+///////QQAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAAwBAAD5bvv//////xIAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAA0AQAA4277//////9FAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAXAEAAABv+///////OQAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAIQBAAARb/v//////8kAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAACsAQAAsm/7//////9EAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAA1AEAAM5v+///////xwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAPwBAABtcPv//////yoAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAAAkAgAAb3D7//////8fAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAATAIAAGZw+///////IgAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAHQCAABgcPv//////yAAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAACcAgAAWHD7//////8wAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAxAIAAGBw+///////JQAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAOwCAABdcPv//////x8AAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAAUAwAAVHD7//////9XAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAAPAMAAINw+///////ZAAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAAGQDAAC/cPv//////1oAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAACMAwAA8XD7//////8xAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAtAMAAPpw+///////NAAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAANwDAAAGcfv//////yQAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAAEBAAAAnH7//////98AAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAALAQAAFZx+///////bQAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAAFQEAACwcfv//////yMAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAB8BAAAq3H7//////8pAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAApAQAAKxx+///////GAAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAMwEAACccfv//////2QAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAAD0BAAA9HH7//////8ZAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAHAUAAOVx+///////HQAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAEQFAADacfv//////yIAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACwAAABsBQAA1HH7//////9XAAAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAACQAAACcBQAA+3H7//////9EAAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAAxAUAABdy+///////QQAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAAOwFAAAwcvv//////9IAAAAAAAAAAEEOEIYCQw0GTIMFjgSPAyQAAAAUBgAA2nL7//////+iAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAAPAYAAFRz+///////IwAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAGQGAABPc/v//////xkAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAACMBgAAQHP7//////8qAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAtAYAAEJz+///////KgAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAANwGAABEc/v//////18AAAAAAAAAAEEOEIYCQw0GSYMFjgSPAyQAAAAEBwAAe3P7//////82AAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAALAcAAIlz+///////NwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAAFQHAACYc/v//////1cAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAAIQHAAC/c/v//////1gAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAACsBwAA73P7//////9nAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAA1AcAAC50+///////MQAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAPwHAAA3dPv//////2MAAAAAAAAAAEEOEIYCQw0GSYMFjgSPAyQAAAAkCAAAcnT7//////9xAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMsAAAATAgAALt0+///////dQAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAkAAAAfAgAAAB1+///////lAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAKQIAABsdfv//////5UAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAADMCAAA2XX7//////9BAAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAA9AgAAPJ1+///////iAAAAAAAAAAAQQ4QhgJDDQZJgwWOBI8DJAAAABwJAABSdvv//////xAAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAABECQAAOnb7//////8xAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAbAkAAEN2+///////gAAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAJQJAACbdvv//////08AAAAAAAAAAEEOEIYCQw0GSYMFjgSPAyQAAAC8CQAAwnb7//////84AAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAA5AkAANJ2+///////CgAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAAwKAAC0dvv//////9cAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAAA0CgAAhHf7//////8NAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAXAoAAGl3+///////PgAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAIQKAAB/d/v//////4EAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAACsCgAA2Hf7//////8eAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAA1AoAAM53+///////FgAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAPwKAAC8d/v//////2UAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAAAkCwAA+Xf7//////9MAAAAAAAAAABBDhCGAkMNBkeDBI4DAAAkAAAATAsAAB14+///////ZwAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAHQLAABcePv//////34AAAAAAAAAAEEOEIYCQw0GRoMFjgSPAxQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACwAAAAcAAAAmnj7///////0AAAAAAAAAABBDhCGAkMNBk6DBowFjgSPAwAAAAAAACQAAABMAAAAXnn7///////eAAAAAAAAAABBDhCGAkMNBkyDBY4EjwMkAAAAdAAAABR6+///////TwAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAAJwAAAA7evv//////44AAAAAAAAAAEEOEIYCQw0GSoMEjgMAACwAAADEAAAAoXr7//////+QAAAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACwAAAD0AAAAAXv7//////9ZAAAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAACQAAAAkAQAAKnv7//////9EAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAATAEAAEZ7+///////bwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAAHQBAACNe/v//////4IAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAAKQBAADfe/v//////zMAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAADMAQAA6nv7//////9JAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAA9AEAAAt8+///////MAAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAABwCAAATfPv//////1wAAAAAAAAAAEEOEIYCQw0GR4MEjgMAACQAAABEAgAAR3z7//////8+AAAAAAAAAABBDhCGAkMNBkeDBI4DAAAkAAAAbAIAAF18+///////UgAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAAJQCAACHfPv//////z0AAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAAC8AgAAnHz7//////9vAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAA5AIAAON8+///////bwAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAAAwDAAAqffv//////wwAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACwAAAA0AwAADn37//////9dAQAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACwAAABkAwAAO377//////8MAQAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACwAAACUAwAAF3/7//////9KAQAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAACQAAADEAwAAMYD7//////8YAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAsAAAA7AMAACGA+///////UgAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAkAAAAHAQAAEOA+///////JwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAEQEAABCgPv//////ygAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAABsBAAAQoD7//////8oAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAlAQAAEKA+///////NgAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAALwEAABQgPv//////4UAAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAJAAAAOwEAAClgPv//////4QAAAAAAAAAAEEOEIYCQw0GR4MEjgMAACQAAAAUBQAAAYH7//////++AAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAAPAUAAJeB+///////dQAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DLAAAAGQFAADkgfv//////xMCAAAAAAAAAEEOEIYCQw0GUIMHjAaNBY4EjwMAAAAALAAAAJQFAADHg/v//////1sAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAAMQFAADyg/v//////2UAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAADsBQAAL4T7//////8mAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAFAYAAC2E+///////IQAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAADwGAAAmhPv//////0AAAAAAAAAAAEEOEIYCQw0GR4MEjgMAACQAAABkBgAAPoT7//////81AAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAjAYAAEuE+///////HgAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAALQGAABBhPv//////zkAAAAAAAAAAEEOEIYCQw0GQoMDAAAAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACQAAAAcAAAAPIT7//////84AQAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAARAAAAEyF+///////cAAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAGwAAACUhfv//////4kAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAACUAAAA9YX7//////8mAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAvAAAAPOF+///////WwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAOQAAAAmhvv//////y4AAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAAAMAQAALIb7//////8eAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAANAEAACKG+///////fAAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAAFwBAAB2hvv//////+MAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAAIwBAAAph/v//////48AAAAAAAAAAEEOEIYCQw0GSoMEjgMAACQAAAC0AQAAkIf7//////9HAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAA3AEAAK+H+///////SAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAAQCAADPh/v//////2QAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAAAsAgAAC4j7//////9GAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAVAIAACmI+///////UwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAHwCAABUiPv//////+8AAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAACkAgAAG4n7//////9iAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAzAIAAFWJ+///////qgAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAAPQCAADXifv//////2UAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAAAcAwAAFIr7//////9wAAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAARAMAAFyK+///////LAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAGwDAABgivv//////0kAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAACUAwAAgYr7//////9OAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAvAMAAKeK+///////MgAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAOQDAACxivv//////2EAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAAAMBAAA6or7//////9WAAAAAAAAAABBDhCGAkMNBkeDBI4DAAAkAAAANAQAABiL+///////WAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAALAAAAFwEAABIi/v//////wEBAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAJAAAAIwEAAAZjPv//////0gAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAAC0BAAAOYz7//////9LAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAA3AQAAFyM+///////WAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAAQFAACMjPv//////50AAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAAAsBQAAAY37///////FAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAVAUAAJ6N+///////lQAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAAHwFAAALjvv//////xsBAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAJAAAAKwFAAD2jvv//////wQBAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAADUBQAA6I/7//////9BAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAsAAAA/AUAAAGQ+///////0AAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAkAAAALAYAAKGQ+///////bAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAFQGAADlkPv//////wABAAAAAAAAAEEOEIYCQw0GTIMFjgSPAyQAAAB8BgAAvZH7//////8zAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAApAYAAMiR+///////ngAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAAJAAAABwAAAAokvv//////4gAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAABEAAAAiJL7//////8iAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAbAAAAIKS+///////SAAAAAAAAAAAQQ4QhgJDDQZHgwSOAwAAJAAAAJQAAACikvv//////xsAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAC8AAAAlZL7//////9AAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAA5AAAAK2S+///////IgAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAAwBAACnkvv//////wwAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAA0AQAAi5L7//////8qAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAXAEAAI2S+///////GAAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAALAAAAIQBAAB9kvv//////4UAAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAJAAAALQBAADSkvv//////1sAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAADcAQAABZP7//////8+AAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAABAIAABuT+///////GgAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAACwCAAANk/v//////yUAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACwAAABUAgAACpP7//////8RAQAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACQAAACEAgAA65P7//////8mAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAArAIAAOmT+///////kwAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAANQCAABUlPv//////1MAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAD8AgAAf5T7//////+0AAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAJAMAADCV+///////UQAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAAEwDAABZlfv//////1gBAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAAJAAAAHwDAACBlvv//////00AAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAACkAwAAppb7//////8YAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAzAMAAJaW+///////zQAAAAAAAAAAQQ4QhgJDDQZHgwSOAwAAJAAAAPQDAAA7l/v///////QAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAywAAAAcBAAAGJj7//////++AAAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACQAAABMBAAAppj7//////+LAAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAAdAQAADCZ+///////VAAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAJwEAABcmfv//////6sAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAADEBAAA35n7//////8hAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAA7AQAANiZ+///////QwEAAAAAAAAAQQ4QhgJDDQZHgwSOAwAALAAAABQFAAAkm/v//////9YBAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAAJAAAAEQFAADwnPv//////98AAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAABsBQAADJ77///////GAQAAAAAAAABBDhCGAkMNBkaDBY4EjwMsAAAAlAUAAOif+///////zwAAAAAAAAAAQQ4QhgJDDQZKgweMBo0FjgSPAwAAAAAkAAAAxAUAAIeg+///////GAAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAALAAAAOwFAAB3oPv//////9MAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAABwGAAAaofv//////4YAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAABEBgAAeKH7//////89AAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAAbAYAAI2h+///////RQAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAJQGAACqofv//////4EAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAC8BgAAA6L7//////8KAQAAAAAAAABBDhCGAkMNBkmDBY4EjwMkAAAA5AYAABij+///////XQAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAAJAAAABwAAAA1o/v//////x4AAAAAAAAAAEEOEIYCQw0GAAAAAAAAACwAAABEAAAAK6P7//////89AQAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAACQAAAB0AAAAOKT7//////8VAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAnAAAACWk+///////6AAAAAAAAAAAQQ4QhgJDDQZJgwWOBI8DLAAAAMQAAADlpPv//////yEDAAAAAAAAAEEOEIYCQw0GUIMHjAaNBY4EjwMAAAAALAAAAPQAAADWp/v///////AAAAAAAAAAAEEOEIYCQw0GUIMHjAaNBY4EjwMAAAAAJAAAACQBAACWqPv//////xUAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAABMAQAAg6j7//////84AAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAdAEAAJOo+///////DwAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAJwBAAB6qPv//////1MAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACwAAADEAQAApaj7//////9PAQAAAAAAAABBDhCGAkMNBk2DB4wGjQWOBI8DAAAAACwAAAD0AQAAxKn7///////zAAAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAACQAAAAkAgAAh6r7//////9gAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAATAIAAL+q+///////IwAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAALAAAAHQCAAC6qvv//////+kCAAAAAAAAAEEOEIYCQw0GUIMHjAaNBY4EjwMAAAAAJAAAAKQCAABzrfv//////0MAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACwAAADMAgAAjq37//////+LAAAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAACQAAAD8AgAA6a37//////+WAAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAAJAMAAFeu+///////hgAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAEwDAAC1rvv//////1IAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACQAAAAcAAAAyK77//////83AAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAARAAAANeu+///////CgAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAGwAAAC5rvv//////woAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAACUAAAAm677//////8JAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAvAAAAHyu+///////WgAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAALAAAAOQAAACurvv//////1AAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAALAAAABQBAADOrvv//////4sAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAAEQBAAApr/v//////1sAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAywAAABsAQAAXK/7///////6AwAAAAAAAABBDhCGAkMNBk2DB4wGjQWOBI8DAAAAACQAAACcAQAAJrP7//////8tAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAxAEAACuz+///////GwAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAALAAAAOwBAAAes/v//////4oFAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAAJAAAABwCAAAIufv//////6QAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAywAAABEAgAAhLn7//////+oAQAAAAAAAABBDhCGAkMNBk2DB4wGjQWOBI8DAAAAACwAAAB0AgAALLv7//////9IAQAAAAAAAABBDhCGAkMNBk6DBowFjgSPAwAAAAAAACQAAACkAgAARLz7//////8eAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAzAIAADq8+///////RgAAAAAAAAAAQQ4QhgJDDQZJgwWOBI8DJAAAAPQCAABYvPv//////0UAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAAcAwAAdbz7//////+pAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAARAMAAPa8+///////PAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAGwDAAAKvfv//////0MAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAACUAwAAJb37//////9BAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAUAAAAAAAAAAF6UgABeBABEAwHCJABAAAkAAAAHAAAACa9+///////bgAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAEQAAABsvfv//////60AAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAABsAAAA8b37//////90AAAAAAAAAABBDhCGAkMNBkyDBY4EjwMsAAAAlAAAAD2++///////DgEAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAsAAAAxAAAABu/+///////ggAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAkAAAA9AAAAG2/+///////HQAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAALAAAABwBAABiv/v///////gAAAAAAAAAAEEOEIYCQw0GUIMHjAaNBY4EjwMAAAAALAAAAEwBAAAqwPv//////28EAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAAJAAAAHwBAABpxPv//////1gAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACwAAACkAQAAmcT7//////8YAQAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACQAAADUAQAAgcX7//////+ZAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAA/AEAAPLF+///////qgAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAACQCAAB0xvv//////3EAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAABMAgAAvcb7//////+BAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAdAIAABbH+///////SAAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAAJwCAAA2x/v//////7sAAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAAJAAAAMwCAADBx/v//////zUAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAD0AgAAzsf7//////9mAAAAAAAAAABBDhCGAkMNBkeDBI4DAAAsAAAAHAMAAAzI+///////2AAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAUAAAAAAAAAAF6UgABeBABEAwHCJABAAAsAAAAHAAAAJzI+///////iwAAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAsAAAATAAAAPfI+///////ZgMAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAkAAAAfAAAAC3M+///////hAAAAAAAAAAAQQ4QhgJDDQZHgwSOAwAAJAAAAKQAAACJzPv//////1kAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAxQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACwAAAAcAAAAosz7//////9WAAAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAACwAAABMAAAAyMz7//////9tAAAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAACQAAAB8AAAABc37//////9CAAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAApAAAAB/N+///////mgAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAAMwAAACRzfv//////zMAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAD0AAAAnM37//////+bAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAAHAEAAA/O+///////kgAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAEQBAAB5zvv//////6QAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAABsAQAA9c77//////8lAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAlAEAAPLO+///////PQAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAALAAAABwAAADwzvv//////+0AAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAJAAAAEwAAACtz/v//////yUAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACwAAAB0AAAAqs/7///////nAAAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACwAAACkAAAAYdD7//////9dAAAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAACwAAADUAAAAjtD7//////83AQAAAAAAAABBDhCGAkMNBk2DB4wGjQWOBI8DAAAAACQAAAAEAQAAtNH7//////+3AAAAAAAAAABBDhCGAkMNBkaDBY4EjwMsAAAALAEAAEPS+///////7QMAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAkAAAAXAEAABTW+///////nAAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAIQBAACI1vv//////5AAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAACsAQAA8Nb7//////8pAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAA1AEAAPHW+///////wgAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAAPwBAACk1/v//////xoAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAAkAgAAltf7//////8gAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAATAIAAI7X+///////TQAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAHQCAACz1/v//////zMAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACwAAACcAgAAvtf7//////9DBQAAAAAAAABBDhCGAkMNBk2DB4wGjQWOBI8DAAAAACQAAADMAgAA6Nz7//////89AAAAAAAAAABBDhCGAkMNBgAAAAAAAAAUAAAAAAAAAAF6UgABeBABEAwHCJABAAAkAAAAHAAAAOXc+///////TgAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAAJAAAABwAAADz3Pv//////zUBAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAABEAAAAAN77//////8+AAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAAbAAAABbe+///////QwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAJQAAAAx3vv//////y4AAAAAAAAAAEEOEIYCQw0GQoMDAAAAACwAAAC8AAAAN977//////9zAAAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAACQAAADsAAAAet77//////9EAAAAAAAAAABBDhCGAkMNBkODBI4DAAAsAAAAFAEAAJbe+///////kAAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAkAAAARAEAAPbe+///////RwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAGwBAAAV3/v//////0AAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAACUAQAALd/7//////8zAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAvAEAADjf+///////HAAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAOQBAAAs3/v//////8gAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAywAAAAMAgAAzN/7//////94AAAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAACQAAAA8AgAAFOD7//////8cAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAsAAAAZAIAAAjg+///////fwAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAkAAAAlAIAAFfg+///////KQAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAALwCAABY4Pv//////zkAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAADkAgAAaeD7//////+jAAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAADAMAAOTg+///////KQAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAALAAAADQDAADl4Pv//////8gAAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAJAAAAGQDAAB94fv//////18AAAAAAAAAAEEOEIYCQw0GRoMFjgSPAywAAACMAwAAtOH7///////5AQAAAAAAAABBDhCGAkMNBk2DB4wGjQWOBI8DAAAAACwAAAC8AwAAfeP7///////7AAAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAACwAAADsAwAASOT7///////OAAAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAACwAAAAcBAAA5uT7//////+lAAAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACQAAABMBAAAW+X7//////9TAAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAAdAQAAIbl+///////PwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAJwEAACd5fv//////ykAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAADEBAAAnuX7//////81AAAAAAAAAABBDhCGAkMNBkODBI4DAAAsAAAA7AQAAKvl+///////wAAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAkAAAAHAUAADvm+///////PwAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAEQFAABS5vv//////y4AAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAABsBQAAWOb7//////8kAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAlAUAAFTm+///////lQAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAALwFAADB5vv//////3QAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAADkBQAADef7//////8kAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAADAYAAAnn+///////MQAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAADQGAAAS5/v//////1UAAAAAAAAAAEEOEIYCQw0GQoMDAAAAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACwAAAAcAAAAKOf7//////9dAAAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACQAAABMAAAAVef7//////94AAAAAAAAAABBDhCGAkMNBkODBI4DAAAsAAAAdAAAAKXn+///////0wAAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAkAAAApAAAAEjo+///////DQAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAMwAAAAt6Pv//////1AAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAAD0AAAAVej7//////+QAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAHAEAAL3o+///////SgAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAALAAAAEQBAADf6Pv//////3QIAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAAJAAAAHQBAABI8fv//////xwAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAACcAQAAPPH7//////+cAAAAAAAAAABBDhCGAkMNBkODBI4DAAAsAAAAxAEAALDx+///////sAAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAkAAAA9AEAADDy+///////CQIAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAABwCAAAR9Pv//////44AAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAABEAgAAd/T7//////9hAAAAAAAAAABBDhCGAkMNBkODBI4DAAAsAAAAbAIAALD0+///////8gEAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAUAAAAAAAAAAF6UgABeBABEAwHCJABAAAkAAAAHAAAAFr2+///////mAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAEQAAADK9vv//////y8AAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAABsAAAA0fb7//////8sAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAlAAAANX2+///////LAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAALwAAADZ9vv//////0YAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAADkAAAA9/b7//////8sAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAADAEAAPv2+///////LAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAADQBAAD/9vv//////ywAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAABcAQAAA/f7//////8sAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAhAEAAAf3+///////LwAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAKwBAAAO9/v//////ywAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAADUAQAAEvf7//////8sAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAA/AEAABb3+///////RgAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAACQCAAA09/v//////zwAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAABMAgAASPf7//////9FAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAdAIAAGX3+///////LAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAJwCAABp9/v//////ywAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAADEAgAAbff7//////9mAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAA7AIAAKv3+///////ZgAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAABQDAADp9/v//////0oAAAAAAAAAAEEOEIYCQw0GRYMDAAAAACQAAAA8AwAAC/j7//////9GAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAZAMAACn4+///////LwAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAALAAAAIwDAAAw+Pv//////0sBAAAAAAAAAEEOEIYCQw0GS4MGjAWOBI8DAAAAAAAAJAAAALwDAABL+fv//////xkAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAADkAwAAPPn7//////8sAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAADAQAAED5+///////LAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAADQEAABE+fv//////ysAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAABcBAAAR/n7//////8sAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAhAQAAEv5+///////LAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAALAAAABwAAAA3+fv//////60AAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAALAAAAEwAAAC0+fv//////1YAAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAJAAAAHwAAADa+fv//////xYAAAAAAAAAAEEOEIYCQw0GAAAAAAAAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACQAAAAcAAAAsPn7//////+uAQAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAARAAAADb7+///////PAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAGwAAABK+/v//////4IAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAywAAACUAAAApPv7//////9zAgAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAACwAAADEAAAA5/37//////9NAgAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAACQAAAD0AAAABAD8//////+PAAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAAHAEAAGsA/P//////VAAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAEQBAACXAPz//////24AAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAABsAQAA3QD8///////EAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMsAAAAlAEAAHkB/P//////XwEAAAAAAAAAQQ4QhgJDDQZKgweMBo0FjgSPAwAAAAAkAAAAxAEAAKgC/P//////ZwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAAOwBAADnAvz///////8BAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAAJAAAABwCAAC2BPz//////1IAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAABEAgAA4AT8//////+OAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAAbAIAAEYF/P//////fAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAAJAAAABwAAACEBfz//////y4AAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAABEAAAAigX8//////8cAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAbAAAAH4F/P//////OAAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAJQAAACOBfz//////1AAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAAC8AAAAyAX8///////JAAAAAAAAAABBDhCGAkMNBkeDBI4DAAAsAAAA5AAAAGkG/P//////GQMAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAkAAAAFAEAAFIJ/P//////agAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DJAAAADwBAACUCfz/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bAQAADct/P//////TgAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DLAAAAJQEAABdLfz//////xkCAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAJAAAAMQEAABGL/z//////zsAAAAAAAAAAEEOEIYCQw0GRYMDAAAAACQAAADsBAAAWS/8//////9YAAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAAFAUAAIkv/P//////PAAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAALAAAADwFAACdL/z//////ywBAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAAJAAAAGwFAACZMPz//////zYAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAACUBQAApzD8//////83AAAAAAAAAABBDhCGAkMNBkODBI4DAAAUAAAAAAAAAAF6UgABeBABEAwHCJABAAAkAAAAHAAAAJ4w/P//////8AAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAEQAAABmMfz//////6gAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAABsAAAA5jH8//////86AAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAAlAAAAPgx/P//////PgAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAALwAAAAOMvz//////1ACAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAAOwAAAAuNPz//////6cAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAyQAAAAUAQAArTT8//////95AAAAAAAAAABBDhCGAkMNBkODBI4DAAAkAAAAPAEAAP40/P//////dAAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAJAAAAGQBAABKNfz//////woAAAAAAAAAAEEOEIYCQw0GAAAAAAAAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACwAAAAcAAAAFDX8///////IAAAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAACwAAABMAAAArDX8//////9XAQAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACQAAAB8AAAA0zb8//////98AAAAAAAAAABBDhCGAkMNBkaDBY4EjwMUAAAAAAAAAAF6UgABeBABEAwHCJABAAAkAAAAHAAAABA3/P//////xQAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAALAAAAEQAAACtN/z//////10BAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAALAAAAHQAAADaOPz//////90AAAAAAAAAAEEOEIYCQw0GUIMHjAaNBY4EjwMAAAAAJAAAAKQAAACHOfz//////6MAAAAAAAAAAEEOEIYCQw0GTIMFjgSPAyQAAADMAAAAAjr8//////8PAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAsAAAA9AAAAOk5/P//////0wUAAAAAAAAAQQ4QhgJDDQZQgweMBo0FjgSPAwAAAAAkAAAAJAEAAOQ//P//////EwAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAEwBAADPP/z//////1sAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACwAAAB0AQAAAkD8//////8HBAAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAACQAAACkAQAA2UP8//////8vAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAsAAAAzAEAAOBD/P//////wgAAAAAAAAAAQQ4QhgJDDQZQgweMBo0FjgSPAwAAAAAkAAAA/AEAAHJE/P//////DAAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAALAAAACQCAABWRPz//////6QAAAAAAAAAAEEOEIYCQw0GToMGjAWOBI8DAAAAAAAALAAAAFQCAADKRPz//////84AAAAAAAAAAEEOEIYCQw0GToMGjAWOBI8DAAAAAAAAJAAAAIQCAABoRfz//////7cAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAywAAACsAgAA90X8///////CAAAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAACwAAADcAgAAiUb8//////+jAgAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAACwAAAAMAwAA/Ej8//////8QBAAAAAAAAABBDhCGAkMNBk2DB4wGjQWOBI8DAAAAACwAAAA8AwAA9Ez8//////93AAAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACQAAABsAwAAO038//////+iAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMsAAAAlAMAALVN/P//////dgAAAAAAAAAAQQ4QhgJDDQZKgweMBo0FjgSPAwAAAAAkAAAAxAMAAPtN/P//////ngAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DLAAAAOwDAABxTvz//////58AAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAJAAAABwEAADgTvz//////zsAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACwAAABEBAAA8078//////90AAAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACQAAAB0BAAAN0/8//////8nAgAAAAAAAABBDhCGAkMNBkaDBY4EjwMsAAAAnAQAAHRR/P///////wAAAAAAAAAAQQ4QhgJDDQZQgweMBo0FjgSPAwAAAAAkAAAAzAQAAENS/P//////KAAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAPQEAABDUvz//////xAAAAAAAAAAAEEOEIYCQw0GAAAAAAAAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACwAAAAcAAAAFFL8//////+AAQAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACQAAABMAAAAZFP8//////8nAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAsAAAAdAAAAGNT/P//////egEAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAsAAAApAAAAK1U/P//////jgAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAkAAAA1AAAAAtV/P//////ZQAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAAPwAAABIVfz//////9IAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAACwBAADqVfz//////2gAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAABUAQAAKlb8//////9YAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAkAAAAfAEAAFpW/P//////RwAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAAKQBAAB5Vvz//////0MAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAADMAQAAlFb8//////+RAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAA9AEAAP1W/P//////ewAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAJAAAABwCAABgV/z//////38AAAAAAAAAAEEOEIYCQw0GRoMFjgSPAywAAABEAgAAt1f8///////wAgAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAACQAAAB0AgAAd1r8//////9SAAAAAAAAAABBDhCGAkMNBkmDBY4EjwMkAAAAnAIAAKFa/P//////TwAAAAAAAAAAQQ4QhgJDDQZJgwWOBI8DLAAAAMQCAADIWvz///////AAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAAPQCAACIW/z//////0gAAAAAAAAAAEEOEIYCQw0GQoMDAAAAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACQAAAAcAAAAkFv8//////8eAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAsAAAARAAAAIZb/P//////IwEAAAAAAAAAQQ4QhgJDDQZQgweMBo0FjgSPAwAAAAAkAAAAdAAAAHlc/P//////uwAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAAJwAAAAMXfz//////70AAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAAMwAAACZXfz//////zwAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAAD0AAAArV38///////EAAAAAAAAAABBDhCGAkMNBkWDAwAAAAAsAAAAHAEAAEle/P//////wQAAAAAAAAAAQQ4QhgJDDQZHgwaMBY4EjwMAAAAAAAAsAAAATAEAANpe/P//////wAAAAAAAAAAAQQ4QhgJDDQZKgweMBo0FjgSPAwAAAAAkAAAAfAEAAGpf/P//////QgAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAKQBAACEX/z//////4QAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACwAAADMAQAA4F/8//////+VAwAAAAAAAABBDhCGAkMNBk2DB4wGjQWOBI8DAAAAACQAAAD8AQAARWP8//////+gAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMkAAAAJAIAAL1j/P//////bgAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DFAAAAAAAAAABelIAAXgQARAMBwiQAQAALAAAABwAAADrY/z//////2IAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAJAAAAEwAAAAdZPz//////zUAAAAAAAAAAEEOEIYCQw0GQ4MEjgMAACQAAAB0AAAAKmT8//////9NAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAUAAAAAAAAAAF6UgABeBABEAwHCJABAAAkAAAAHAAAADhk/P//////7AAAAAAAAAAAQQ4QhgJDDQZJgwWOBI8DLAAAAEQAAAD8ZPz//////9YEAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAAJAAAAHQAAAC4afz//////xoAAAAAAAAAAEEOEIYCQw0GAAAAAAAAACQAAACcAAAAqmn8//////9iAAAAAAAAAABBDhCGAkMNBkeDBI4DAAAkAAAAxAAAAORp/P//////UQAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAOwAAAANavz//////00AAAAAAAAAAEEOEIYCQw0GQoMDAAAAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACQAAAAcAAAAHGr8//////9LAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAsAAAARAAAAD9q/P//////kwAAAAAAAAAAQQ4QhgJDDQZLgwaMBY4EjwMAAAAAAAAsAAAAdAAAAKJq/P//////NwEAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAkAAAApAAAAKlr/P//////oAAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAALAAAAMwAAAAhbPz//////9MBAAAAAAAAAEEOEIYCQw0GTYMHjAaNBY4EjwMAAAAAJAAAAPwAAADEbfz//////4IAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAywAAAAkAQAAHm78//////+MAAAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACwAAABUAQAAem78//////+XAAAAAAAAAABBDhCGAkMNBkqDB4wGjQWOBI8DAAAAACQAAACEAQAA4W78//////+7AAAAAAAAAABBDhCGAkMNBkaDBY4EjwMsAAAArAEAAJRv/P//////oAAAAAAAAAAAQQ4QhgJDDQZKgweMBo0FjgSPAwAAAAAsAAAA3AEAAARw/P//////DAIAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAsAAAADAIAAOBx/P//////awAAAAAAAAAAQQ4QhgJDDQZKgweMBo0FjgSPAwAAAAAsAAAAPAIAABty/P//////TxMAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAsAAAAbAIAANSF/P//////CQEAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAUAAAAAAAAAAF6UgABeBABEAwHCJABAAAkAAAAHAAAALSG/P//////RQAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAAJAAAAEQAAADRhvz//////0EAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAABsAAAA6ob8//////8hAAAAAAAAAABBDhCGAkMNBgAAAAAAAAAsAAAAlAAAAOOG/P//////bwAAAAAAAAAAQQ4QhgJDDQZKgweMBo0FjgSPAwAAAAAkAAAAxAAAACKH/P//////UAAAAAAAAAAAQQ4QhgJDDQZDgwSOAwAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAAJAAAABwAAAAyh/z//////20AAAAAAAAAAEEOEIYCQw0GRoMFjgSPAxQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACwAAAAcAAAAX4f8//////+kAAAAAAAAAABBDhCGAkMNBkeDBowFjgSPAwAAAAAAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACQAAAAcAAAAu4f8//////+DAAAAAAAAAABBDhCGAkMNBkyDBY4EjwMUAAAAAAAAAAF6UgABeBABEAwHCJABAAAsAAAAHAAAAP6H/P//////NwEAAAAAAAAAQQ4QhgJDDQZNgweMBo0FjgSPAwAAAAAUAAAAAAAAAAF6UgABeBABEAwHCJABAAAkAAAAHAAAAO2I/P//////EgAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAAJAAAABwAAAC/iPz//////2gAAAAAAAAAAEEOEIYCQw0GSIMDAAAAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACQAAAAcAAAA54j8//////8zAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAARAAAAPKI/P//////OAAAAAAAAAAAQQ4QhgJDDQYAAAAAAAAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAALAAAABwAAADqiPz//////+4AAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAJAAAAEwAAACoifz//////0MAAAAAAAAAAEEOEIYCQw0GQoMDAAAAACQAAAB0AAAAw4n8//////8vAAAAAAAAAABBDhCGAkMNBkKDAwAAAAAkAAAAnAAAAMqJ/P//////nQAAAAAAAAAAQQ4QhgJDDQZKgwSOAwAAJAAAAMQAAAA/ivz//////4IAAAAAAAAAAEEOEIYCQw0GRoMFjgSPAxQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACQAAAAcAAAAgYr8//////9yAAAAAAAAAABBDhCGAkMNBkaDBY4EjwMUAAAAAAAAAAF6UgABeBABEAwHCJABAAAsAAAAHAAAALOK/P//////XQEAAAAAAAAAQQ4QhgJDDQZKgweMBo0FjgSPAwAAAAAUAAAAAAAAAAF6UgABeBABEAwHCJABAAAkAAAAHAAAAMiL/P//////bQAAAAAAAAAAQQ4QhgJDDQZGgwWOBI8DFAAAAAAAAAABelIAAXgQARAMBwiQAQAAJAAAABwAAAD1i/z//////wgBAAAAAAAAAEEOEIYCQw0GTIMFjgSPAxQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACwAAAAcAAAAvYz8//////9/AQAAAAAAAABBDhCGAkMNBlCDB4wGjQWOBI8DAAAAABQAAAAAAAAAAXpSAAF4EAEQDAcIkAEAACQAAAAcAAAA9I38//////9TAAAAAAAAAABBDhCGAkMNBkODBI4DAAAUAAAAAAAAAAF6UgABeBABEAwHCJABAAAkAAAAHAAAAAeO/P//////3QAAAAAAAAAAQQ4QhgJDDQZCgwMAAAAALAAAAEQAAAC8jvz//////6wBAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAALAAAAHQAAAA4kPz//////48BAAAAAAAAAEEOEIYCQw0GUIMHjAaNBY4EjwMAAAAALAAAAKQAAACXkfz///////gAAAAAAAAAAEEOEIYCQw0GUIMHjAaNBY4EjwMAAAAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAALAAAABwAAABHkvz//////3UAAAAAAAAAAEEOEIYCQw0GR4MGjAWOBI8DAAAAAAAAFAAAAAAAAAABelIAAXgQARAMBwiQAQAALAAAABwAAAB0kvz//////5oAAAAAAAAAAEEOEIYCQw0GSoMHjAaNBY4EjwMAAAAAAAAAAAAAAAAAAAAAAQAAADgVBQABAAAAQBUFAAEAAABIFQUAAQAAAFAVBQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCbAQABAAAA8FkBAAEAAAAAAAAAAAAAAAAAAAAAAAAAnJUBAAEAAACmlQEAAQAAALCVAQABAAAAupUBAAEAAADElQEAAQAAAM6VAQABAAAA2JUBAAEAAADilQEAAQAAAOyVAQABAAAA9pUBAAEAAAAAlgEAAQAAAAqWAQABAAAAFJYBAAEAAAAelgEAAQAAACiWAQABAAAAMpYBAAEAAAA8lgEAAQAAAEaWAQABAAAAUJYBAAEAAABalgEAAQAAAGSWAQABAAAAbpYBAAEAAAB4lgEAAQAAAIKWAQABAAAAjJYBAAEAAACWlgEAAQAAAKCWAQABAAAAqpYBAAEAAAC0lgEAAQAAAL6WAQABAAAAyJYBAAEAAADSlgEAAQAAANyWAQABAAAA5pYBAAEAAADwlgEAAQAAAPqWAQABAAAABJcBAAEAAAAOlwEAAQAAABiXAQABAAAAIpcBAAEAAAAslwEAAQAAADaXAQABAAAAQJcBAAEAAABKlwEAAQAAAFSXAQABAAAAXpcBAAEAAABolwEAAQAAAHKXAQABAAAAfJcBAAEAAACGlwEAAQAAAJCXAQABAAAAmpcBAAEAAACklwEAAQAAAK6XAQABAAAAuJcBAAEAAADClwEAAQAAAMyXAQABAAAA1pcBAAEAAADglwEAAQAAAOqXAQABAAAA9JcBAAEAAAD+lwEAAQAAAAiYAQABAAAAEpgBAAEAAAAcmAEAAQAAACaYAQABAAAAMJgBAAEAAAA6mAEAAQAAAESYAQABAAAATpgBAAEAAABYmAEAAQAAAGKYAQABAAAAbJgBAAEAAAB2mAEAAQAAAICYAQABAAAAipgBAAEAAACUmAEAAQAAAJ6YAQABAAAAqJgBAAEAAACymAEAAQAAALyYAQABAAAAxpgBAAEAAADQmAEAAQAAANqYAQABAAAA5JgBAAEAAADumAEAAQAAAPiYAQABAAAAApkBAAEAAAAMmQEAAQAAABaZAQABAAAAIJkBAAEAAAAqmQEAAQAAADSZAQABAAAAPpkBAAEAAABImQEAAQAAAFKZAQABAAAAXJkBAAEAAABmmQEAAQAAAHCZAQABAAAAepkBAAEAAACEmQEAAQAAAI6ZAQABAAAAmJkBAAEAAACimQEAAQAAAKyZAQABAAAAtpkBAAEAAADAmQEAAQAAAMqZAQABAAAA1JkBAAEAAADemQEAAQAAAOiZAQABAAAA8pkBAAEAAAD8mQEAAQAAAAaaAQABAAAACp8BAAEAAACkNQAAAQAAABGfAQABAAAAFDYAAAEAAAAYnwEAAQAAAJ02AAABAAAAIJ8BAAEAAADDNgAAAQAAACefAQABAAAAHjcAAAEAAAAsnwEAAQAAAEw3AAABAAAAAAAAAAAAAAAAAAAAAAAAABifAQABAAAAhZ8BAAEAAACPnwEAAQAAAJafAQABAAAAEqABAAEAAADTOwAAAQAAABmgAQABAAAANTwAAAEAAAAooAEAAQAAAN88AAABAAAAL6ABAAEAAABEPQAAAQAAADWgAQABAAAAtD0AAAEAAAA8oAEAAQAAAOA9AAABAAAARKABAAEAAAApPgAAAQAAAFGgAQABAAAAdz4AAAEAAABaoAEAAQAAAKk+AAABAAAAX6ABAAEAAAAKPwAAAQAAAGqgAQABAAAAkToAAAEAAABvoAEAAQAAAGA/AAABAAAAdaABAAEAAAC4PwAAAQAAAHugAQABAAAAuUAAAAEAAACEoAEAAQAAAAFBAAABAAAAi6ABAAEAAABMQQAAAQAAAJKgAQABAAAApEEAAAEAAACZoAEAAQAAAEFCAAABAAAAoaABAAEAAAAGQwAAAQAAAK6gAQABAAAAm0MAAAEAAAC3oAEAAQAAALZEAAABAAAAwKABAAEAAADQRQAAAQAAAMWgAQABAAAAEUYAAAEAAADMoAEAAQAAAOFGAAABAAAAAAAAAAAAAAAAAAAAAAAAAH+iAQABAAAAhKIBAAEAAACMogEAAQAAAJSiAQABAAAAmqIBAAEAAACfogEAAQAAAKiiAQABAAAAAAAAAAAAAAAxowEAAQAAAFNhAAABAAAAPKABAAEAAACQYgAAAQAAADejAQABAAAApWIAAAEAAAA/owEAAQAAAI1jAAABAAAAR6MBAAEAAACuZgAAAQAAAFCjAQABAAAAnmcAAAEAAABEoAEAAQAAALNnAAABAAAAXKMBAAEAAADrZwAAAQAAAJmgAQABAAAA+mcAAAEAAABnowEAAQAAAE1oAAABAAAAb6MBAAEAAACcaQAAAQAAAKGgAQABAAAAj2oAAAEAAAB4owEAAQAAAO9qAAABAAAAg6MBAAEAAAASawAAAQAAAAAAAAAAAAAAAAAAAAAAAAD/owEAAQAAAASkAQABAAAAC6QBAAEAAACUogEAAQAAABCkAQABAAAAAAAAAAAAAADCnQEAAQAAAGw0AAABAAAAd6YBAAEAAAAI1gAAAQAAAH+mAQABAAAAaE4BAAEAAACFpgEAAQAAABOrAAABAAAAiKYBAAEAAABf6wAAAQAAAIumAQABAAAAuCEBAAEAAACSpgEAAQAAAGrNAAABAAAAMaMBAAEAAAA1YQAAAQAAAAAAAAAAAAAAAAAAAAAAAADZpgEAAQAAAIWuAAABAAAA36YBAAEAAADFrgAAAQAAAOWmAQABAAAA+K4AAAEAAADrpgEAAQAAABSvAAABAAAAp54BAAEAAADcrwAAAQAAAPGmAQABAAAAVLAAAAEAAACrpgEAAQAAAHCwAAABAAAAtp4BAAEAAADvsAAAAQAAAPimAQABAAAAGLEAAAEAAADAoAEAAQAAAFGxAAABAAAAAKcBAAEAAAD0sQAAAQAAAAAAAAAAAAAAAAAAAAAAAADlpgEAAQAAAPGmAQABAAAA2aYBAAEAAACFrgAAAQAAAN+mAQABAAAAmrkAAAEAAADrpgEAAQAAAD24AAABAAAAtp4BAAEAAADIuQAAAQAAAKSnAQABAAAA7LkAAAEAAACppwEAAQAAAIG6AAABAAAAAKcBAAEAAAD1ugAAAQAAALGnAQABAAAAGbsAAAEAAADuoAEAAQAAAEq7AAABAAAAAAAAAAAAAAAAAAAAAAAAAM6nAQABAAAA0acBAAEAAAALpAEAAQAAAAAAAAAAAAAA1qcBAAEAAADapwEAAQAAAN6nAQABAAAAAAAAAAAAAADipwEAAQAAAOanAQABAAAA7KcBAAEAAADvpwEAAQAAAPSnAQABAAAA3qcBAAEAAAD+oAEAAQAAAPunAQABAAAA/6cBAAEAAAAIqAEAAQAAAAuoAQABAAAAiqUBAAEAAAAEoQEAAQAAAA6oAQABAAAAEqgBAAEAAAAVqAEAAQAAAASkAQABAAAAHKgBAAEAAAD5oAEAAQAAACGoAQABAAAAJ6gBAAEAAAAtqAEAAQAAADCoAQABAAAANKgBAAEAAAA3qAEAAQAAADqoAQABAAAAPagBAAEAAABAqAEAAQAAAEmoAQABAAAAUKgBAAEAAABZqAEAAQAAAAAAAAAAAAAAbqkBAAEAAAACzgAAAQAAAHKpAQABAAAAMc4AAAEAAAB3qQEAAQAAAF3OAAABAAAAfKkBAAEAAACJzgAAAQAAAIKpAQABAAAAz84AAAEAAACHqQEAAQAAAPvOAAABAAAAjKkBAAEAAAAnzwAAAQAAAJGpAQABAAAAU88AAAEAAACVqQEAAQAAAH/PAAABAAAAmakBAAEAAACuzwAAAQAAAJ2pAQABAAAA2s8AAAEAAABlqQEAAQAAAAbQAAABAAAAo6kBAAEAAABM0AAAAQAAAKmpAQABAAAAiNAAAAEAAACvqQEAAQAAAM3QAAABAAAAtakBAAEAAAD50AAAAQAAALmpAQABAAAAJdEAAAEAAAC9qQEAAQAAAIvRAAABAAAAwakBAAEAAADx0QAAAQAAAMapAQABAAAAO9IAAAEAAADKqQEAAQAAAIHSAAABAAAAzqkBAAEAAACw0gAAAQAAANWpAQABAAAA+9MAAAEAAADgqQEAAQAAABTUAAABAAAA5akBAAEAAABA1AAAAQAAAOmpAQABAAAAbNQAAAEAAADuqQEAAQAAAJfUAAABAAAA86kBAAEAAADD1AAAAQAAAAAAAAAAAAAAAAAAAAAAAACKrQEAAQAAAGDjAAABAAAAkq0BAAEAAADu4wAAAQAAAAAAAAAAAAAAAAAAAAAAAAA03QAAAQAAAMPdAAABAAAAF94AAAEAAACF3gAAAQAAAAAAAAAAAAAAAAAAAAAAAABoqwEAAQAAAHTYAAABAAAAb6sBAAEAAADn2gAAAQAAAAAAAAAAAAAAAAAAAAAAAACTrAEAAQAAAKisAQABAAAAxqwBAAEAAADRrAEAAQAAALqtAQABAAAAv60BAAEAAADFrQEAAQAAAM6tAQABAAAA1q0BAAEAAADfrQEAAQAAAOmtAQABAAAA8q0BAAEAAAD8rQEAAQAAAAWuAQABAAAADq4BAAEAAAAXrgEAAQAAAByuAQABAAAAIK4BAAEAAAAkrgEAAQAAACiuAQABAAAALK4BAAEAAAAwrgEAAQAAADSuAQABAAAAOK4BAAEAAAA8rgEAAQAAAECuAQABAAAAR64BAAEAAABLrgEAAQAAAE6uAQABAAAAUa4BAAEAAABUrgEAAQAAAFmuAQABAAAAYa4BAAEAAABmrgEAAQAAAG+uAQABAAAAdq4BAAEAAAB+rgEAAQAAAIauAQABAAAAj64BAAEAAACXrgEAAQAAAJ2uAQABAAAApa4BAAEAAAAAAAAAAAAAAAAAAAAAAAAArK4BAAEAAAB96wAAAQAAALKuAQABAAAAwOsAAAEAAAC3rgEAAQAAAKzuAAABAAAAwK4BAAEAAAD47gAAAQAAAMiuAQABAAAALu8AAAEAAADNrgEAAQAAAEXvAAABAAAA1K4BAAEAAAB57wAAAQAAANuuAQABAAAAse8AAAEAAADirgEAAQAAAPvvAAABAAAA7K4BAAEAAABb8AAAAQAAAPGuAQABAAAArvEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAba8BAAEAAABxrwEAAQAAAHmvAQABAAAAf68BAAEAAACIrwEAAQAAAOyuAQABAAAAAAAAAAAAAAAAAAAAAAAAANmxAQABAAAAfSIBAAEAAADesQEAAQAAANojAQABAAAA47EBAAEAAAC3JAEAAQAAAOixAQABAAAAWiUBAAEAAADtsQEAAQAAAGklAQABAAAA07EBAAEAAACUKwEAAQAAAMyxAQABAAAApysBAAEAAAD0sQEAAQAAAAIsAQABAAAA+bEBAAEAAAAJMAEAAQAAAP2xAQABAAAAODABAAEAAAADsgEAAQAAAPowAQABAAAACbIBAAEAAAAGMQEAAQAAAA2yAQABAAAAqjEBAAEAAAAVsgEAAQAAAHgyAQABAAAAGbIBAAEAAAAvMwEAAQAAAAAAAAAAAAAAAAAAAAAAAABwtAEAAQAAAIZOAQABAAAAd7QBAAEAAACpTwEAAQAAAH+0AQABAAAAZFABAAEAAACItAEAAQAAACFRAQABAAAAjbQBAAEAAABdUQEAAQAAAJK0AQABAAAAIVIBAAEAAADUrgEAAQAAAOJSAQABAAAAmbQBAAEAAACiUwEAAQAAAJ60AQABAAAA5FMBAAEAAAAAAAAAAAAAAAAAAAAAAAAABKEBAAEAAAA0tQEAAQAAADy1AQABAAAARbUBAAEAAACLpgEAAQAAAH+mAQABAAAA/6cBAAEAAAA8tQEAAQAAAEy1AQABAAAAU7UBAAEAAABZtQEAAQAAAAAAAAAAAAAAnKcBAAEAAABftQEAAQAAALGnAQABAAAA6J8BAAEAAABqtQEAAQAAAG+1AQABAAAAdbUBAAEAAAB7tQEAAQAAAIG1AQABAAAAh7UBAAEAAACNtQEAAQAAAJO1AQABAAAAmbUBAAEAAACftQEAAQAAAKS1AQABAAAAqbUBAAEAAACytQEAAQAAAAAAAAAAAAAAYLcBAAEAAABvtwEAAQAAAIC3AQABAAAAlrcBAAEAAAAVugEAAQAAAGyMAQABAAAAAAAAAAAAAAAAAAAAAAAAAIi5AQABAAAAeoEBAAEAAACOuQEAAQAAAOeBAQABAAAAl7kBAAEAAABFhAEAAQAAAKC5AQABAAAAV4QBAAEAAACmuQEAAQAAAIuCAQABAAAArbkBAAEAAAAOgwEAAQAAALi5AQABAAAAv4QBAAEAAAC/uQEAAQAAABiGAQABAAAAybkBAAEAAACKhgEAAQAAANW5AQABAAAAW4YBAAEAAADfuQEAAQAAACeHAQABAAAA6bkBAAEAAAAqhQEAAQAAAPS5AQABAAAAqYcBAAEAAAD6uQEAAQAAABuIAQABAAAABboBAAEAAAB4iQEAAQAAAAu6AQABAAAA5YkBAAEAAAAQugEAAQAAAO2KAQABAAAAAAAAAAAAAAAAAAAAAAAAAH+5AQABAAAARJIBAAEAAAAAAAAAAAAAAAAAAAAAAAAAMboBAAEAAACQyQEAAQAAAJLXAQABAAAAztkBAAEAAABy4AEAAQAAAFXjAQABAAAAP+kBAAEAAAC77gEAAQAAADjzAQABAAAAZfsBAAEAAAD0/gEAAQAAANEiAgABAAAA/CQCAAEAAADDWAIAAQAAAECGAgABAAAAtowCAAEAAABykQIAAQAAAIKfAgABAAAAt58CAAEAAAAKpQIAAQAAADetAgABAAAAMrMCAAEAAADAtgIAAQAAAMG3AgABAAAAmboCAAEAAAA/vQIAAQAAALHOAgABAAAA49ECAAEAAAA61gIAAQAAAJHnAgABAAAAFfICAAEAAAAN+QIAAQAAAA8UAwABAAAAJi0DAAEAAAAlTAMAAQAAAFlRAwABAAAAXWADAAEAAAAFZQMAAQAAAOqoAwABAAAAKq0DAAEAAAA7swMAAQAAAAK8AwABAAAAB9UDAAEAAADD1gMAAQAAAIUWBAABAAAAWBwEAAEAAAAKIQQAAQAAAMspBAABAAAAsncEAAEAAABKhAQAAQAAACmHBAABAAAAq44EAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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dwwAAHgMAAB5DAAAegwAAHsMAAB8DAAAfQwAAH4MAAB/DAAAgAwAAIEMAACCDAAAgwwAAIQMAACFDAAAhgwAAIcMAACIDAAAiQwAAIoMAACLDAAAjAwAAI0MAACODAAAjwwAAJAMAACRDAAAkgwAAJMMAACUDAAAlQwAAJYMAACXDAAAmAwAAJkMAACaDAAAmwwAAJwMAACdDAAAngwAAJ8MAACgDAAAoQwAAKIMAACjDAAApAwAAKUMAACmDAAApwwAAKgMAACpDAAAqgwAAKsMAACsDAAArQwAAK4MAACvDAAAsAwAALEMAACyDAAAswwAALQMAAC1DAAAtgwAALcMAAC4DAAAuQwAALoMAAC7DAAAvAwAAL0MAAC+DAAASAwAAEkMAABKDAAASwwAAFQMAABaDAAAWwwAAFwMAABdDAAAAAAAgAAAAIC/DAAAAAAAQEwMAABNDAAATgwAAE8MAABQDAAAUQwAAFIMAABTDAAAVQwAAFYMAABXDAAAWAwAAFkMAABeDAAAXwwAAGAMAABhDAAAYgwAAGMMAABkDAAAZQwAAGYMAABnDAAAaAwAAGkMAABqDAAAawwAAGwMAABtDAAAbgwAAG8MAABwDAAAcQwAAHIMAABzDAAAdAwAAHUMAAB2DAAAdwwAAHgMAAB5DAAAegwAAHsMAAB8DAAAfQwAAH4MAAB/DAAAgAwAAIEMAACCDAAAgwwAAIQMAACFDAAAhgwAAIcMAACIDAAAiQwAAIoMAACLDAAAjAwAAI0MAACODAAAjwwAAJAMAACRDAAAkgwAAJMMAACUDAAAlQwAAJYMAACXDAAAmAwAAJkMAACaDAAAmwwAAJwMAACdDAAAngwAAJ8MAACgDAAAoQwAAKIMAACjDAAApAwAAKUMAACmDAAApwwAAKgMAACpDAAAqgwAAKsMAACsDAAArQwAAK4MAACvDAAAsAwAALEMAACyDAAAswwAALQMAAC1DAAAtgwAALcMAAC4DAAAuQwAALoMAAC7DAAAvAwAAL0MAAC+DAAASAwAAEkMAABKDAAASwwAACAAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL3NyYy9ob3N0L2x1YS01LjEuNC9zcmMvAGxhcGkuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xhcGkubwBfbHVhQV9wdXNob2JqZWN0AF9sdWFfY2hlY2tzdGFjawBfbHVhX3htb3ZlAF9sdWFfc2V0bGV2ZWwAX2x1YV9hdHBhbmljAF9sdWFfbmV3dGhyZWFkAF9sdWFfZ2V0dG9wAF9sdWFfc2V0dG9wAF9sdWFfcmVtb3ZlAF9pbmRleDJhZHIAX2x1YV9pbnNlcnQAX2x1YV9yZXBsYWNlAF9sdWFfcHVzaHZhbHVlAF9sdWFfdHlwZQBfbHVhX3R5cGVuYW1lAF9sdWFfaXNjZnVuY3Rpb24AX2x1YV9pc251bWJlcgBfbHVhX2lzc3RyaW5nAF9sdWFfaXN1c2VyZGF0YQBfbHVhX3Jhd2VxdWFsAF9sdWFfZXF1YWwAX2x1YV9sZXNzdGhhbgBfbHVhX3RvbnVtYmVyAF9sdWFfdG9pbnRlZ2VyAF9sdWFfdG9ib29sZWFuAF9sdWFfdG9sc3RyaW5nAF9sdWFfb2JqbGVuAF9sdWFfdG9jZnVuY3Rpb24AX2x1YV90b3VzZXJkYXRhAF9sdWFfdG90aHJlYWQAX2x1YV90b3BvaW50ZXIAX2x1YV9wdXNobmlsAF9sdWFfcHVzaG51bWJlcgBfbHVhX3B1c2hpbnRlZ2VyAF9sdWFfcHVzaGxzdHJpbmcAX2x1YV9wdXNoc3RyaW5nAF9sdWFfcHVzaHZmc3RyaW5nAF9sdWFfcHVzaGZzdHJpbmcAX2x1YV9wdXNoY2Nsb3N1cmUAX2x1YV9wdXNoYm9vbGVhbgBfbHVhX3B1c2hsaWdodHVzZXJkYXRhAF9sdWFfcHVzaHRocmVhZABfbHVhX2dldHRhYmxlAF9sdWFfZ2V0ZmllbGQAX2x1YV9yYXdnZXQAX2x1YV9yYXdnZXRpAF9sdWFfY3JlYXRldGFibGUAX2x1YV9nZXRtZXRhdGFibGUAX2x1YV9nZXRmZW52AF9sdWFfc2V0dGFibGUAX2x1YV9zZXRmaWVsZABfbHVhX3Jhd3NldABfbHVhX3Jhd3NldGkAX2x1YV9zZXRtZXRhdGFibGUAX2x1YV9zZXRmZW52AF9sdWFfY2FsbABfbHVhX3BjYWxsAF9mX2NhbGwAX2x1YV9jcGNhbGwAX2ZfQ2NhbGwAX2x1YV9sb2FkAF9sdWFfZHVtcABfbHVhX3N0YXR1cwBfbHVhX2djAF9sdWFfZXJyb3IAX2x1YV9uZXh0AF9sdWFfY29uY2F0AF9sdWFfZ2V0YWxsb2NmAF9sdWFfc2V0YWxsb2NmAF9sdWFfbmV3dXNlcmRhdGEAX2x1YV9nZXR1cHZhbHVlAF9hdXhfdXB2YWx1ZQBfbHVhX3NldHVwdmFsdWUAX2x1YV9pZGVudABsYXV4bGliLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9sYXV4bGliLm8AX2x1YUxfYXJnZXJyb3IAX2x1YUxfZXJyb3IAX2x1YUxfdHlwZXJyb3IAX2x1YUxfd2hlcmUAX2x1YUxfY2hlY2tvcHRpb24AX2x1YUxfb3B0bHN0cmluZwBfbHVhTF9jaGVja2xzdHJpbmcAX2x1YUxfbmV3bWV0YXRhYmxlAF9sdWFMX2NoZWNrdWRhdGEAX2x1YUxfY2hlY2tzdGFjawBfbHVhTF9jaGVja3R5cGUAX2x1YUxfY2hlY2thbnkAX2x1YUxfY2hlY2tudW1iZXIAX2x1YUxfb3B0bnVtYmVyAF9sdWFMX2NoZWNraW50ZWdlcgBfbHVhTF9vcHRpbnRlZ2VyAF9sdWFMX2dldG1ldGFmaWVsZABfbHVhTF9jYWxsbWV0YQBfbHVhTF9yZWdpc3RlcgBfbHVhTF9vcGVubGliAF9sdWFMX2ZpbmR0YWJsZQBfbHVhTF9nc3ViAF9sdWFMX2J1ZmZpbml0AF9sdWFMX2FkZGxzdHJpbmcAX2x1YUxfYWRkc3RyaW5nAF9sdWFMX3B1c2hyZXN1bHQAX2x1YUxfcHJlcGJ1ZmZlcgBfZW1wdHlidWZmZXIAX2FkanVzdHN0YWNrAF9sdWFMX2FkZHZhbHVlAC91c3IvaW5jbHVkZS9zZWN1cmUvX3N0cmluZy5oAF9sdWFMX3JlZgBfbHVhTF91bnJlZgBfbHVhTF9sb2FkZmlsZQBfZXJyZmlsZQBfZ2V0RgBfbHVhTF9sb2FkYnVmZmVyAF9nZXRTAF9sdWFMX2xvYWRzdHJpbmcAX2x1YUxfbmV3c3RhdGUAX2xfYWxsb2MAX3BhbmljAGxiYXNlbGliLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9sYmFzZWxpYi5vAF9sdWFvcGVuX2Jhc2UAX2x1YUJfY29jcmVhdGUAX2x1YUJfY29yZXN1bWUAX2x1YUJfY29ydW5uaW5nAF9sdWFCX2Nvc3RhdHVzAF9sdWFCX2Nvd3JhcABfbHVhQl95aWVsZABfbHVhQl9hdXh3cmFwAF9hdXhyZXN1bWUAX2Nvc3RhdHVzAF9hdXhvcGVuAF9sdWFCX2lwYWlycwBfaXBhaXJzYXV4AF9sdWFCX3BhaXJzAF9sdWFCX25leHQAX2x1YUJfbmV3cHJveHkAX2x1YUJfYXNzZXJ0AF9sdWFCX2NvbGxlY3RnYXJiYWdlAF9sdWFCX2RvZmlsZQBfbHVhQl9lcnJvcgBfbHVhQl9nY2luZm8AX2x1YUJfZ2V0ZmVudgBfbHVhQl9nZXRtZXRhdGFibGUAX2x1YUJfbG9hZGZpbGUAX2x1YUJfbG9hZABfbHVhQl9sb2Fkc3RyaW5nAF9sdWFCX3BjYWxsAF9sdWFCX3ByaW50AF9sdWFCX3Jhd2VxdWFsAF9sdWFCX3Jhd2dldABfbHVhQl9yYXdzZXQAX2x1YUJfc2VsZWN0AF9sdWFCX3NldGZlbnYAX2x1YUJfc2V0bWV0YXRhYmxlAF9sdWFCX3RvbnVtYmVyAC91c3IvaW5jbHVkZS9jdHlwZS5oAF9sdWFCX3Rvc3RyaW5nAF9sdWFCX3R5cGUAX2x1YUJfdW5wYWNrAF9sdWFCX3hwY2FsbABfZ2V0ZnVuYwBfbG9hZF9hdXgAX2dlbmVyaWNfcmVhZGVyAF9sdWFCX2NvbGxlY3RnYXJiYWdlLm9wdHNudW0AX2NvX2Z1bmNzAF9zdGF0bmFtZXMAX2Jhc2VfZnVuY3MAX2x1YUJfY29sbGVjdGdhcmJhZ2Uub3B0cwBsY29kZS5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvbGNvZGUubwBfbHVhS19uaWwAX2x1YUtfY29kZUFCQwBfbHVhS19qdW1wAF9sdWFLX2NvZGVBQngAX2x1YUtfY29uY2F0AF9sdWFLX3JldABfbHVhS19nZXRsYWJlbABfbHVhS19wYXRjaGxpc3QAX2x1YUtfcGF0Y2h0b2hlcmUAX3BhdGNobGlzdGF1eABfZml4anVtcABfbHVhS19jaGVja3N0YWNrAF9sdWFLX3Jlc2VydmVyZWdzAF9sdWFLX3N0cmluZ0sAX2FkZGsAX2x1YUtfbnVtYmVySwBfbHVhS19zZXRyZXR1cm5zAF9sdWFLX3NldG9uZXJldABfbHVhS19kaXNjaGFyZ2V2YXJzAF9sdWFLX2V4cDJuZXh0cmVnAF9leHAycmVnAF9sdWFLX2V4cDJhbnlyZWcAX2x1YUtfZXhwMnZhbABfbHVhS19leHAyUksAX2x1YUtfc3RvcmV2YXIAX2x1YUtfc2VsZgBfbHVhS19nb2lmdHJ1ZQBfaW52ZXJ0anVtcABfanVtcG9uY29uZABfbHVhS19pbmRleGVkAF9sdWFLX3ByZWZpeABfY29kZWFyaXRoAF9sdWFLX2luZml4AF9sdWFLX3Bvc2ZpeABfY29kZWNvbXAAX2x1YUtfZml4bGluZQBfbHVhS19jb2RlAF9sdWFLX3NldGxpc3QAX2Rpc2NoYXJnZTJhbnlyZWcAX3JlbW92ZXZhbHVlcwBfcGF0Y2h0ZXN0cmVnAF9kaXNjaGFyZ2UycmVnAF9uZWVkX3ZhbHVlAGxkYmxpYi5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvbGRibGliLm8AX2x1YW9wZW5fZGVidWcAX2RiX2RlYnVnAF9kYl9nZXRmZW52AF9kYl9nZXRob29rAF9kYl9nZXRpbmZvAF9kYl9nZXRsb2NhbABfZGJfZ2V0cmVnaXN0cnkAX2RiX2dldG1ldGF0YWJsZQBfZGJfZ2V0dXB2YWx1ZQBfZGJfc2V0ZmVudgBfZGJfc2V0aG9vawBfZGJfc2V0bG9jYWwAX2RiX3NldG1ldGF0YWJsZQBfZGJfc2V0dXB2YWx1ZQBfZGJfZXJyb3JmYgBfZ2V0dGhyZWFkAF9hdXh1cHZhbHVlAF9ob29rZgBfZ2V0aG9va3RhYmxlAF90cmVhdHN0YWNrb3B0aW9uAF9LRVlfSE9PSwBfZGJsaWIAX2hvb2tmLmhvb2tuYW1lcwBsZGVidWcuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xkZWJ1Zy5vAF9sdWFfc2V0aG9vawBfbHVhX2dldGhvb2sAX2x1YV9nZXRob29rbWFzawBfbHVhX2dldGhvb2tjb3VudABfbHVhX2dldHN0YWNrAF9sdWFfZ2V0bG9jYWwAX2ZpbmRsb2NhbABfbHVhX3NldGxvY2FsAF9sdWFfZ2V0aW5mbwBfbHVhR19jaGVja29wZW5vcABfbHVhR19jaGVja2NvZGUAX3N5bWJleGVjAF9sdWFHX3R5cGVlcnJvcgBfZ2V0b2JqbmFtZQBfbHVhR19ydW5lcnJvcgBfbHVhR19jb25jYXRlcnJvcgBfbHVhR19hcml0aGVycm9yAF9sdWFHX29yZGVyZXJyb3IAX2x1YUdfZXJyb3Jtc2cAX2N1cnJlbnRsaW5lAF9jdXJyZW50cGMAX2NoZWNrQXJnTW9kZQBsZG8uYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xkby5vAF9sdWFEX3NldGVycm9yb2JqAF9sdWFEX3Rocm93AF9sdWFEX3Jhd3J1bnByb3RlY3RlZABfbHVhRF9yZWFsbG9jc3RhY2sAX2x1YURfcmVhbGxvY0NJAF9sdWFEX2dyb3dzdGFjawBfbHVhRF9jYWxsaG9vawBfbHVhRF9wcmVjYWxsAF9ncm93Q0kAX2x1YURfcG9zY2FsbABfbHVhRF9jYWxsAF9sdWFfcmVzdW1lAF9yZXN1bWVfZXJyb3IAX3Jlc3VtZQBfbHVhX3lpZWxkAF9sdWFEX3BjYWxsAF9yZXN0b3JlX3N0YWNrX2xpbWl0AF9sdWFEX3Byb3RlY3RlZHBhcnNlcgBfZl9wYXJzZXIAbGR1bXAuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xkdW1wLm8AX2x1YVVfZHVtcABfRHVtcEZ1bmN0aW9uAF9EdW1wU3RyaW5nAF9EdW1wVmVjdG9yAGxmdW5jLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9sZnVuYy5vAF9sdWFGX25ld0NjbG9zdXJlAF9sdWFGX25ld0xjbG9zdXJlAF9sdWFGX25ld3VwdmFsAF9sdWFGX2ZpbmR1cHZhbABfbHVhRl9mcmVldXB2YWwAX2x1YUZfY2xvc2UAX2x1YUZfbmV3cHJvdG8AX2x1YUZfZnJlZXByb3RvAF9sdWFGX2ZyZWVjbG9zdXJlAF9sdWFGX2dldGxvY2FsbmFtZQBsZ2MuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xnYy5vAF9sdWFDX3NlcGFyYXRldWRhdGEAX2x1YUNfY2FsbEdDVE0AX0dDVE0AX2x1YUNfZnJlZWFsbABfc3dlZXBsaXN0AF9sdWFDX3N0ZXAAX3NpbmdsZXN0ZXAAX2x1YUNfZnVsbGdjAF9tYXJrcm9vdABfbHVhQ19iYXJyaWVyZgBfcmVhbGx5bWFya29iamVjdABfbHVhQ19iYXJyaWVyYmFjawBfbHVhQ19saW5rAF9sdWFDX2xpbmt1cHZhbABfbWFya210AF9wcm9wYWdhdGVtYXJrAF9pc2NsZWFyZWQAbGluaXQuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xpbml0Lm8AX2x1YUxfb3BlbmxpYnMAX2x1YWxpYnMAbGlvbGliLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9saW9saWIubwBfbHVhb3Blbl9pbwBfbmV3ZmVudgBfaW9fZmNsb3NlAF9pb19ub2Nsb3NlAF9jcmVhdGVzdGRmaWxlAF9pb19wY2xvc2UAX3B1c2hyZXN1bHQAX25ld2ZpbGUAX2lvX2Nsb3NlAF9pb19mbHVzaABfaW9faW5wdXQAX2lvX2xpbmVzAF9pb19vcGVuAF9pb19vdXRwdXQAX2lvX3BvcGVuAF9pb19yZWFkAF9pb190bXBmaWxlAF9pb190eXBlAF9pb193cml0ZQBfZ193cml0ZQBfZ2V0aW9maWxlAF9nX3JlYWQAX3JlYWRfbGluZQBfcmVhZF9jaGFycwBfZ19pb2ZpbGUAX2ZpbGVlcnJvcgBfdG9maWxlAF9mX2xpbmVzAF9hdXhfbGluZXMAX2lvX3JlYWRsaW5lAF9hdXhfY2xvc2UAX2ZfZmx1c2gAX2ZfcmVhZABfZl9zZWVrAF9mX3NldHZidWYAX2Zfd3JpdGUAX2lvX2djAF9pb190b3N0cmluZwBfZl9zZXR2YnVmLm1vZGUAX2Zfc2Vlay5tb2RlAF9pb2xpYgBfZm5hbWVzAF9mbGliAF9mX3NldHZidWYubW9kZW5hbWVzAF9mX3NlZWsubW9kZW5hbWVzAGxsZXguYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xsZXgubwBfbHVhWF9pbml0AF9sdWFYX3Rva2VuMnN0cgBfbHVhWF9sZXhlcnJvcgBfbHVhWF9zeW50YXhlcnJvcgBfbHVhWF9uZXdzdHJpbmcAX2x1YVhfc2V0aW5wdXQAX2x1YVhfbmV4dABfbGxleABfbHVhWF9sb29rYWhlYWQAX2luY2xpbmVudW1iZXIAX3NraXBfc2VwAF9yZWFkX2xvbmdfc3RyaW5nAF9zYXZlAF9jaGVja19uZXh0AF9yZWFkX251bWVyYWwAX2x1YVhfdG9rZW5zAGxtYXRobGliLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9sbWF0aGxpYi5vAF9sdWFvcGVuX21hdGgAX21hdGhfYWJzAF9tYXRoX2Fjb3MAX21hdGhfYXNpbgBfbWF0aF9hdGFuMgBfbWF0aF9hdGFuAF9tYXRoX2NlaWwAX21hdGhfY29zaABfbWF0aF9jb3MAX21hdGhfZGVnAF9tYXRoX2V4cABfbWF0aF9mbG9vcgBfbWF0aF9mbW9kAF9tYXRoX2ZyZXhwAF9tYXRoX2xkZXhwAF9tYXRoX2xvZzEwAF9tYXRoX2xvZwBfbWF0aF9tYXgAX21hdGhfbWluAF9tYXRoX21vZGYAX21hdGhfcG93AF9tYXRoX3JhZABfbWF0aF9yYW5kb20AX21hdGhfcmFuZG9tc2VlZABfbWF0aF9zaW5oAF9tYXRoX3NpbgBfbWF0aF9zcXJ0AF9tYXRoX3RhbmgAX21hdGhfdGFuAF9tYXRobGliAGxtZW0uYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xtZW0ubwBfbHVhTV9ncm93YXV4XwBfbHVhTV9yZWFsbG9jXwBfbHVhTV90b29iaWcAbG9hZGxpYi5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvbG9hZGxpYi5vAF9sdWFvcGVuX3BhY2thZ2UAX2djdG0AX3NldHBhdGgAX2xsX21vZHVsZQBfbGxfcmVxdWlyZQBfbG9hZGVyX3ByZWxvYWQAX2xvYWRlcl9MdWEAX2xvYWRlcl9DAF9sb2FkZXJfQ3Jvb3QAX2ZpbmRmaWxlAF9ta2Z1bmNuYW1lAF9sbF9sb2FkZnVuYwBfbG9hZGVycm9yAF9sbF9sb2FkbGliAF9sbF9zZWVhbGwAX3NlbnRpbmVsXwBfcGtfZnVuY3MAX2xvYWRlcnMAX2xsX2Z1bmNzAGxvYmplY3QuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xvYmplY3QubwBfbHVhT19pbnQyZmIAX2x1YU9fZmIyaW50AF9sdWFPX2xvZzIAX2x1YU9fcmF3ZXF1YWxPYmoAX2x1YU9fc3RyMmQAX2x1YU9fcHVzaHZmc3RyaW5nAF9wdXNoc3RyAF9sdWFPX3B1c2hmc3RyaW5nAF9sdWFPX2NodW5raWQAX2x1YU9fbmlsb2JqZWN0XwBfbHVhT19sb2cyLmxvZ18yAGxvcGNvZGVzLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9sb3Bjb2Rlcy5vAF9sdWFQX29wbW9kZXMAX2x1YVBfb3BuYW1lcwBsb3NsaWIuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xvc2xpYi5vAF9sdWFvcGVuX29zAF9vc19jbG9jawBfb3NfZGF0ZQBfb3NfZGlmZnRpbWUAX29zX2V4ZWN1dGUAX29zX2V4aXQAX29zX2dldGVudgBfb3NfcmVtb3ZlAF9vc19yZW5hbWUAX29zX3NldGxvY2FsZQBfb3NfdGltZQBfb3NfdG1wbmFtZQBfZ2V0ZmllbGQAX29zX3B1c2hyZXN1bHQAX29zX3NldGxvY2FsZS5jYXQAX3N5c2xpYgBfb3Nfc2V0bG9jYWxlLmNhdG5hbWVzAGxwYXJzZXIuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xwYXJzZXIubwBfbHVhWV9wYXJzZXIAX29wZW5fZnVuYwBfY2h1bmsAX2Nsb3NlX2Z1bmMAX2VudGVybGV2ZWwAX2Jsb2NrAF9jaGVja19tYXRjaABfYnJlYWtzdGF0AF9wcmltYXJ5ZXhwAF9hc3NpZ25tZW50AF9lcnJvcmxpbWl0AF9jaGVja25leHQAX2V4cGxpc3QxAF9hZGp1c3RfYXNzaWduAF9zdWJleHByAF9jb25zdHJ1Y3RvcgBfYm9keQBfbmV3X2xvY2FsdmFyAF9hZGp1c3Rsb2NhbHZhcnMAX3N0cl9jaGVja25hbWUAX2xpc3RmaWVsZABfcmVjZmllbGQAX3lpbmRleABfZmllbGQAX2Z1bmNhcmdzAF9zaW5nbGV2YXIAX3NpbmdsZXZhcmF1eABfY29uZABfbGVhdmVibG9jawBfcmVtb3ZldmFycwBfZm9yYm9keQBfZXJyb3JfZXhwZWN0ZWQAX3Rlc3RfdGhlbl9ibG9jawBfcHJpb3JpdHkAbHN0YXRlLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9sc3RhdGUubwBfbHVhRV9uZXd0aHJlYWQAX3N0YWNrX2luaXQAX2x1YUVfZnJlZXRocmVhZABfZnJlZXN0YWNrAF9sdWFfbmV3c3RhdGUAX2ZfbHVhb3BlbgBfY2xvc2Vfc3RhdGUAX2x1YV9jbG9zZQBfY2FsbGFsbGdjVE0AbHN0cmluZy5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvbHN0cmluZy5vAF9sdWFTX3Jlc2l6ZQBfbHVhU19uZXdsc3RyAF9sdWFTX25ld3VkYXRhAGxzdHJsaWIuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L2xzdHJsaWIubwBfbHVhb3Blbl9zdHJpbmcAX3N0cl9ieXRlAF9zdHJfY2hhcgBfc3RyX2R1bXAAX3N0cl9maW5kAF9zdHJfZm9ybWF0AF9nZmluZF9ub2RlZgBfZ21hdGNoAF9zdHJfZ3N1YgBfc3RyX2xlbgBfc3RyX2xvd2VyAF9zdHJfbWF0Y2gAX3N0cl9yZXAAX3N0cl9yZXZlcnNlAF9zdHJfc3ViAF9zdHJfdXBwZXIAX3N0cl9maW5kX2F1eABfbWF0Y2gAX3B1c2hfY2FwdHVyZXMAX3B1c2hfb25lY2FwdHVyZQBfc3RhcnRfY2FwdHVyZQBfY2xhc3NlbmQAX21hdGNoYnJhY2tldGNsYXNzAF9zaW5nbGVtYXRjaABfbWF4X2V4cGFuZABfbWF0Y2hfY2xhc3MAX2dtYXRjaF9hdXgAX2FkZGludGxlbgBfd3JpdGVyAF9zdHJsaWIAbHRhYmxlLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9sdGFibGUubwBfbHVhSF9uZXh0AF9sdWFIX3Jlc2l6ZWFycmF5AF9yZXNpemUAX2x1YUhfbmV3AF9zZXRhcnJheXZlY3RvcgBfc2V0bm9kZXZlY3RvcgBfbHVhSF9mcmVlAF9sdWFIX2dldG51bQBfaGFzaG51bQBfbHVhSF9nZXRzdHIAX2x1YUhfZ2V0AF9tYWlucG9zaXRpb24AX2x1YUhfc2V0AF9uZXdrZXkAX2x1YUhfc2V0bnVtAF9sdWFIX3NldHN0cgBfbHVhSF9nZXRuAF9jb3VudGludABfZHVtbXlub2RlXwBsdGFibGliLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9sdGFibGliLm8AX2x1YW9wZW5fdGFibGUAX3Rjb25jYXQAX2ZvcmVhY2gAX2ZvcmVhY2hpAF9nZXRuAF9tYXhuAF90aW5zZXJ0AF90cmVtb3ZlAF9zZXRuAF9zb3J0AF9hdXhzb3J0AF9zb3J0X2NvbXAAX2FkZGZpZWxkAF90YWJfZnVuY3MAbHRtLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9sdG0ubwBfbHVhVF9pbml0AF9sdWFUX2dldHRtAF9sdWFUX2dldHRtYnlvYmoAX2x1YVRfdHlwZW5hbWVzAF9sdWFUX2luaXQubHVhVF9ldmVudG5hbWUAbHVuZHVtcC5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvbHVuZHVtcC5vAF9sdWFVX3VuZHVtcABfTG9hZEZ1bmN0aW9uAF9sdWFVX2hlYWRlcgBfTG9hZFN0cmluZwBfTG9hZEludABfTG9hZEJsb2NrAGx2bS5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvbHZtLm8AX2x1YVZfdG9udW1iZXIAX2x1YVZfdG9zdHJpbmcAX2x1YVZfZ2V0dGFibGUAX2NhbGxUTXJlcwBfbHVhVl9zZXR0YWJsZQBfbHVhVl9sZXNzdGhhbgBfbF9zdHJjbXAAX2NhbGxfb3JkZXJUTQBfbHVhVl9lcXVhbHZhbABfZ2V0X2NvbXBUTQBfbHVhVl9jb25jYXQAX2NhbGxfYmluVE0AX2x1YVZfZXhlY3V0ZQBfQXJpdGgAbHppby5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvbHppby5vAF9sdWFaX2ZpbGwAX2x1YVpfbG9va2FoZWFkAF9sdWFaX2luaXQAX2x1YVpfcmVhZABfbHVhWl9vcGVuc3BhY2UAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL3NyYy9ob3N0LwBvc19jaGRpci5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvb3NfY2hkaXIubwBfb3NfY2hkaXIAb3NfY29weWZpbGUuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L29zX2NvcHlmaWxlLm8AX29zX2NvcHlmaWxlAG9zX2dldGN3ZC5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvb3NfZ2V0Y3dkLm8AX29zX2dldGN3ZABvc19nZXR2ZXJzaW9uLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9vc19nZXR2ZXJzaW9uLm8AX29zX2dldHZlcnNpb24Ab3NfaXM2NGJpdC5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvb3NfaXM2NGJpdC5vAF9vc19pczY0Yml0AG9zX2lzZGlyLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9vc19pc2Rpci5vAF9vc19pc2RpcgBvc19pc2ZpbGUuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L29zX2lzZmlsZS5vAF9vc19pc2ZpbGUAX2RvX2lzZmlsZQBvc19tYXRjaC5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvb3NfbWF0Y2gubwBfb3NfbWF0Y2hzdGFydABfb3NfbWF0Y2hkb25lAF9vc19tYXRjaG5hbWUAX29zX21hdGNoaXNmaWxlAF9vc19tYXRjaG5leHQAb3NfbWtkaXIuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L29zX21rZGlyLm8AX29zX21rZGlyAG9zX3BhdGhzZWFyY2guYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L29zX3BhdGhzZWFyY2gubwBfb3NfcGF0aHNlYXJjaABvc19ybWRpci5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvb3Nfcm1kaXIubwBfb3Nfcm1kaXIAb3Nfc3RhdC5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvb3Nfc3RhdC5vAF9vc19zdGF0AG9zX3V1aWQuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L29zX3V1aWQubwBfb3NfdXVpZABwYXRoX2lzYWJzb2x1dGUuYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L3BhdGhfaXNhYnNvbHV0ZS5vAF9wYXRoX2lzYWJzb2x1dGUAcHJlbWFrZS5jAC9Vc2Vycy9iZW5oZW5uaW5nL0Rlc2t0b3AvcHJlbWFrZS1zdGFibGUtR1NvQy9vYmovUmVsZWFzZS9QcmVtYWtlNC5idWlsZC9PYmplY3RzLW5vcm1hbC94ODZfNjQvcHJlbWFrZS5vAF9wcmVtYWtlX2luaXQAX3ByZW1ha2VfZXhlY3V0ZQBfcHJlbWFrZV9sb2NhdGUAX3Byb2Nlc3Nfb3B0aW9uAF9wYXRoX2Z1bmN0aW9ucwBfb3NfZnVuY3Rpb25zAF9zdHJpbmdfZnVuY3Rpb25zAF9zY3JpcHRzX3BhdGgAcHJlbWFrZV9tYWluLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9wcmVtYWtlX21haW4ubwBfbWFpbgBzY3JpcHRzLmMAL1VzZXJzL2Jlbmhlbm5pbmcvRGVza3RvcC9wcmVtYWtlLXN0YWJsZS1HU29DL29iai9SZWxlYXNlL1ByZW1ha2U0LmJ1aWxkL09iamVjdHMtbm9ybWFsL3g4Nl82NC9zY3JpcHRzLm8AX2J1aWx0aW5fc2NyaXB0cwBzdHJpbmdfZW5kc3dpdGguYwAvVXNlcnMvYmVuaGVubmluZy9EZXNrdG9wL3ByZW1ha2Utc3RhYmxlLUdTb0Mvb2JqL1JlbGVhc2UvUHJlbWFrZTQuYnVpbGQvT2JqZWN0cy1ub3JtYWwveDg2XzY0L3N0cmluZ19lbmRzd2l0aC5vAF9zdHJpbmdfZW5kc3dpdGgAX2luZGV4MmFkcgBfZl9jYWxsAF9mX0NjYWxsAF9hdXhfdXB2YWx1ZQBfZW1wdHlidWZmZXIAX2FkanVzdHN0YWNrAF9lcnJmaWxlAF9nZXRGAF9nZXRTAF9sX2FsbG9jAF9wYW5pYwBfbHVhQl9jb2NyZWF0ZQBfbHVhQl9jb3Jlc3VtZQBfbHVhQl9jb3J1bm5pbmcAX2x1YUJfY29zdGF0dXMAX2x1YUJfY293cmFwAF9sdWFCX3lpZWxkAF9sdWFCX2F1eHdyYXAAX2F1eHJlc3VtZQBfY29zdGF0dXMAX2F1eG9wZW4AX2x1YUJfaXBhaXJzAF9pcGFpcnNhdXgAX2x1YUJfcGFpcnMAX2x1YUJfbmV4dABfbHVhQl9uZXdwcm94eQBfbHVhQl9hc3NlcnQAX2x1YUJfY29sbGVjdGdhcmJhZ2UAX2x1YUJfZG9maWxlAF9sdWFCX2Vycm9yAF9sdWFCX2djaW5mbwBfbHVhQl9nZXRmZW52AF9sdWFCX2dldG1ldGF0YWJsZQBfbHVhQl9sb2FkZmlsZQBfbHVhQl9sb2FkAF9sdWFCX2xvYWRzdHJpbmcAX2x1YUJfcGNhbGwAX2x1YUJfcHJpbnQAX2x1YUJfcmF3ZXF1YWwAX2x1YUJfcmF3Z2V0AF9sdWFCX3Jhd3NldABfbHVhQl9zZWxlY3QAX2x1YUJfc2V0ZmVudgBfbHVhQl9zZXRtZXRhdGFibGUAX2x1YUJfdG9udW1iZXIAX2x1YUJfdG9zdHJpbmcAX2x1YUJfdHlwZQBfbHVhQl91bnBhY2sAX2x1YUJfeHBjYWxsAF9nZXRmdW5jAF9sb2FkX2F1eABfZ2VuZXJpY19yZWFkZXIAX3BhdGNobGlzdGF1eABfZml4anVtcABfYWRkawBfZXhwMnJlZwBfaW52ZXJ0anVtcABfanVtcG9uY29uZABfY29kZWFyaXRoAF9jb2RlY29tcABfbHVhS19jb2RlAF9kaXNjaGFyZ2UyYW55cmVnAF9yZW1vdmV2YWx1ZXMAX3BhdGNodGVzdHJlZwBfZGlzY2hhcmdlMnJlZwBfbmVlZF92YWx1ZQBfZGJfZGVidWcAX2RiX2dldGZlbnYAX2RiX2dldGhvb2sAX2RiX2dldGluZm8AX2RiX2dldGxvY2FsAF9kYl9nZXRyZWdpc3RyeQBfZGJfZ2V0bWV0YXRhYmxlAF9kYl9nZXR1cHZhbHVlAF9kYl9zZXRmZW52AF9kYl9zZXRob29rAF9kYl9zZXRsb2NhbABfZGJfc2V0bWV0YXRhYmxlAF9kYl9zZXR1cHZhbHVlAF9kYl9lcnJvcmZiAF9nZXR0aHJlYWQAX2F1eHVwdmFsdWUAX2hvb2tmAF9nZXRob29rdGFibGUAX3RyZWF0c3RhY2tvcHRpb24AX2ZpbmRsb2NhbABfc3ltYmV4ZWMAX2dldG9iam5hbWUAX2N1cnJlbnRsaW5lAF9jdXJyZW50cGMAX2NoZWNrQXJnTW9kZQBfZ3Jvd0NJAF9yZXN1bWVfZXJyb3IAX3Jlc3VtZQBfcmVzdG9yZV9zdGFja19saW1pdABfZl9wYXJzZXIAX0R1bXBGdW5jdGlvbgBfRHVtcFN0cmluZwBfRHVtcFZlY3RvcgBfR0NUTQBfc3dlZXBsaXN0AF9zaW5nbGVzdGVwAF9tYXJrcm9vdABfcmVhbGx5bWFya29iamVjdABfbWFya210AF9wcm9wYWdhdGVtYXJrAF9pc2NsZWFyZWQAX25ld2ZlbnYAX2lvX2ZjbG9zZQBfaW9fbm9jbG9zZQBfY3JlYXRlc3RkZmlsZQBfaW9fcGNsb3NlAF9wdXNocmVzdWx0AF9uZXdmaWxlAF9pb19jbG9zZQBfaW9fZmx1c2gAX2lvX2lucHV0AF9pb19saW5lcwBfaW9fb3BlbgBfaW9fb3V0cHV0AF9pb19wb3BlbgBfaW9fcmVhZABfaW9fdG1wZmlsZQBfaW9fdHlwZQBfaW9fd3JpdGUAX2dfd3JpdGUAX2dldGlvZmlsZQBfZ19yZWFkAF9yZWFkX2xpbmUAX3JlYWRfY2hhcnMAX2dfaW9maWxlAF9maWxlZXJyb3IAX3RvZmlsZQBfZl9saW5lcwBfYXV4X2xpbmVzAF9pb19yZWFkbGluZQBfYXV4X2Nsb3NlAF9mX2ZsdXNoAF9mX3JlYWQAX2Zfc2VlawBfZl9zZXR2YnVmAF9mX3dyaXRlAF9pb19nYwBfaW9fdG9zdHJpbmcAX2xsZXgAX2luY2xpbmVudW1iZXIAX3NraXBfc2VwAF9yZWFkX2xvbmdfc3RyaW5nAF9zYXZlAF9jaGVja19uZXh0AF9yZWFkX251bWVyYWwAX21hdGhfYWJzAF9tYXRoX2Fjb3MAX21hdGhfYXNpbgBfbWF0aF9hdGFuMgBfbWF0aF9hdGFuAF9tYXRoX2NlaWwAX21hdGhfY29zaABfbWF0aF9jb3MAX21hdGhfZGVnAF9tYXRoX2V4cABfbWF0aF9mbG9vcgBfbWF0aF9mbW9kAF9tYXRoX2ZyZXhwAF9tYXRoX2xkZXhwAF9tYXRoX2xvZzEwAF9tYXRoX2xvZwBfbWF0aF9tYXgAX21hdGhfbWluAF9tYXRoX21vZGYAX21hdGhfcG93AF9tYXRoX3JhZABfbWF0aF9yYW5kb20AX21hdGhfcmFuZG9tc2VlZABfbWF0aF9zaW5oAF9tYXRoX3NpbgBfbWF0aF9zcXJ0AF9tYXRoX3RhbmgAX21hdGhfdGFuAF9nY3RtAF9zZXRwYXRoAF9sbF9tb2R1bGUAX2xsX3JlcXVpcmUAX2xvYWRlcl9wcmVsb2FkAF9sb2FkZXJfTHVhAF9sb2FkZXJfQwBfbG9hZGVyX0Nyb290AF9maW5kZmlsZQBfbWtmdW5jbmFtZQBfbGxfbG9hZGZ1bmMAX2xvYWRlcnJvcgBfbGxfbG9hZGxpYgBfbGxfc2VlYWxsAF9wdXNoc3RyAF9vc19jbG9jawBfb3NfZGF0ZQBfb3NfZGlmZnRpbWUAX29zX2V4ZWN1dGUAX29zX2V4aXQAX29zX2dldGVudgBfb3NfcmVtb3ZlAF9vc19yZW5hbWUAX29zX3NldGxvY2FsZQBfb3NfdGltZQBfb3NfdG1wbmFtZQBfZ2V0ZmllbGQAX29zX3B1c2hyZXN1bHQAX29wZW5fZnVuYwBfY2h1bmsAX2Nsb3NlX2Z1bmMAX2VudGVybGV2ZWwAX2Jsb2NrAF9jaGVja19tYXRjaABfYnJlYWtzdGF0AF9wcmltYXJ5ZXhwAF9hc3NpZ25tZW50AF9lcnJvcmxpbWl0AF9jaGVja25leHQAX2V4cGxpc3QxAF9hZGp1c3RfYXNzaWduAF9zdWJleHByAF9jb25zdHJ1Y3RvcgBfYm9keQBfbmV3X2xvY2FsdmFyAF9hZGp1c3Rsb2NhbHZhcnMAX3N0cl9jaGVja25hbWUAX2xpc3RmaWVsZABfcmVjZmllbGQAX3lpbmRleABfZmllbGQAX2Z1bmNhcmdzAF9zaW5nbGV2YXIAX3NpbmdsZXZhcmF1eABfY29uZABfbGVhdmVibG9jawBfcmVtb3ZldmFycwBfZm9yYm9keQBfZXJyb3JfZXhwZWN0ZWQAX3Rlc3RfdGhlbl9ibG9jawBfc3RhY2tfaW5pdABfZnJlZXN0YWNrAF9mX2x1YW9wZW4AX2Nsb3NlX3N0YXRlAF9jYWxsYWxsZ2NUTQBfc3RyX2J5dGUAX3N0cl9jaGFyAF9zdHJfZHVtcABfc3RyX2ZpbmQAX3N0cl9mb3JtYXQAX2dmaW5kX25vZGVmAF9nbWF0Y2gAX3N0cl9nc3ViAF9zdHJfbGVuAF9zdHJfbG93ZXIAX3N0cl9tYXRjaABfc3RyX3JlcABfc3RyX3JldmVyc2UAX3N0cl9zdWIAX3N0cl91cHBlcgBfc3RyX2ZpbmRfYXV4AF9tYXRjaABfcHVzaF9jYXB0dXJlcwBfcHVzaF9vbmVjYXB0dXJlAF9zdGFydF9jYXB0dXJlAF9jbGFzc2VuZABfbWF0Y2hicmFja2V0Y2xhc3MAX3NpbmdsZW1hdGNoAF9tYXhfZXhwYW5kAF9tYXRjaF9jbGFzcwBfZ21hdGNoX2F1eABfYWRkaW50bGVuAF93cml0ZXIAX3Jlc2l6ZQBfc2V0YXJyYXl2ZWN0b3IAX3NldG5vZGV2ZWN0b3IAX2hhc2hudW0AX21haW5wb3NpdGlvbgBfbmV3a2V5AF9jb3VudGludABfdGNvbmNhdABfZm9yZWFjaABfZm9yZWFjaGkAX2dldG4AX21heG4AX3RpbnNlcnQAX3RyZW1vdmUAX3NldG4AX3NvcnQAX2F1eHNvcnQAX3NvcnRfY29tcABfYWRkZmllbGQAX0xvYWRGdW5jdGlvbgBfTG9hZFN0cmluZwBfTG9hZEludABfTG9hZEJsb2NrAF9jYWxsVE1yZXMAX2xfc3RyY21wAF9jYWxsX29yZGVyVE0AX2dldF9jb21wVE0AX2NhbGxfYmluVE0AX0FyaXRoAF9wcm9jZXNzX29wdGlvbgBfbHVhQl9jb2xsZWN0Z2FyYmFnZS5vcHRzbnVtAF9LRVlfSE9PSwBfZl9zZXR2YnVmLm1vZGUAX2Zfc2Vlay5tb2RlAF9zZW50aW5lbF8AX2x1YU9fbG9nMi5sb2dfMgBfb3Nfc2V0bG9jYWxlLmNhdABfcHJpb3JpdHkAX2R1bW15bm9kZV8AX3B2YXJzAF9jb19mdW5jcwBfc3RhdG5hbWVzAF9iYXNlX2Z1bmNzAF9sdWFCX2NvbGxlY3RnYXJiYWdlLm9wdHMAX2RibGliAF9ob29rZi5ob29rbmFtZXMAX2x1YWxpYnMAX2lvbGliAF9mbmFtZXMAX2ZsaWIAX2Zfc2V0dmJ1Zi5tb2RlbmFtZXMAX2Zfc2Vlay5tb2RlbmFtZXMAX21hdGhsaWIAX3BrX2Z1bmNzAF9sb2FkZXJzAF9sbF9mdW5jcwBfc3lzbGliAF9vc19zZXRsb2NhbGUuY2F0bmFtZXMAX3N0cmxpYgBfdGFiX2Z1bmNzAF9sdWFUX2luaXQubHVhVF9ldmVudG5hbWUAX3BhdGhfZnVuY3Rpb25zAF9vc19mdW5jdGlvbnMAX3N0cmluZ19mdW5jdGlvbnMAX3NjcmlwdHNfcGF0aABfTlhBcmdjAF9OWEFyZ3YAX19fcHJvZ25hbWUAX19taF9leGVjdXRlX2hlYWRlcgBfYnVpbHRpbl9zY3JpcHRzAF9kb19pc2ZpbGUAX2Vudmlyb24AX2x1YUFfcHVzaG9iamVjdABfbHVhQ19iYXJyaWVyYmFjawBfbHVhQ19iYXJyaWVyZgBfbHVhQ19jYWxsR0NUTQBfbHVhQ19mcmVlYWxsAF9sdWFDX2Z1bGxnYwBfbHVhQ19saW5rAF9sdWFDX2xpbmt1cHZhbABfbHVhQ19zZXBhcmF0ZXVkYXRhAF9sdWFDX3N0ZXAAX2x1YURfY2FsbABfbHVhRF9jYWxsaG9vawBfbHVhRF9ncm93c3RhY2sAX2x1YURfcGNhbGwAX2x1YURfcG9zY2FsbABfbHVhRF9wcmVjYWxsAF9sdWFEX3Byb3RlY3RlZHBhcnNlcgBfbHVhRF9yYXdydW5wcm90ZWN0ZWQAX2x1YURfcmVhbGxvY0NJAF9sdWFEX3JlYWxsb2NzdGFjawBfbHVhRF9zZXRlcnJvcm9iagBfbHVhRF90aHJvdwBfbHVhRV9mcmVldGhyZWFkAF9sdWFFX25ld3RocmVhZABfbHVhRl9jbG9zZQBfbHVhRl9maW5kdXB2YWwAX2x1YUZfZnJlZWNsb3N1cmUAX2x1YUZfZnJlZXByb3RvAF9sdWFGX2ZyZWV1cHZhbABfbHVhRl9nZXRsb2NhbG5hbWUAX2x1YUZfbmV3Q2Nsb3N1cmUAX2x1YUZfbmV3TGNsb3N1cmUAX2x1YUZfbmV3cHJvdG8AX2x1YUZfbmV3dXB2YWwAX2x1YUdfYXJpdGhlcnJvcgBfbHVhR19jaGVja2NvZGUAX2x1YUdfY2hlY2tvcGVub3AAX2x1YUdfY29uY2F0ZXJyb3IAX2x1YUdfZXJyb3Jtc2cAX2x1YUdfb3JkZXJlcnJvcgBfbHVhR19ydW5lcnJvcgBfbHVhR190eXBlZXJyb3IAX2x1YUhfZnJlZQBfbHVhSF9nZXQAX2x1YUhfZ2V0bgBfbHVhSF9nZXRudW0AX2x1YUhfZ2V0c3RyAF9sdWFIX25ldwBfbHVhSF9uZXh0AF9sdWFIX3Jlc2l6ZWFycmF5AF9sdWFIX3NldABfbHVhSF9zZXRudW0AX2x1YUhfc2V0c3RyAF9sdWFLX2NoZWNrc3RhY2sAX2x1YUtfY29kZUFCQwBfbHVhS19jb2RlQUJ4AF9sdWFLX2NvbmNhdABfbHVhS19kaXNjaGFyZ2V2YXJzAF9sdWFLX2V4cDJSSwBfbHVhS19leHAyYW55cmVnAF9sdWFLX2V4cDJuZXh0cmVnAF9sdWFLX2V4cDJ2YWwAX2x1YUtfZml4bGluZQBfbHVhS19nZXRsYWJlbABfbHVhS19nb2lmdHJ1ZQBfbHVhS19pbmRleGVkAF9sdWFLX2luZml4AF9sdWFLX2p1bXAAX2x1YUtfbmlsAF9sdWFLX251bWJlcksAX2x1YUtfcGF0Y2hsaXN0AF9sdWFLX3BhdGNodG9oZXJlAF9sdWFLX3Bvc2ZpeABfbHVhS19wcmVmaXgAX2x1YUtfcmVzZXJ2ZXJlZ3MAX2x1YUtfcmV0AF9sdWFLX3NlbGYAX2x1YUtfc2V0bGlzdABfbHVhS19zZXRvbmVyZXQAX2x1YUtfc2V0cmV0dXJucwBfbHVhS19zdG9yZXZhcgBfbHVhS19zdHJpbmdLAF9sdWFMX2FkZGxzdHJpbmcAX2x1YUxfYWRkc3RyaW5nAF9sdWFMX2FkZHZhbHVlAF9sdWFMX2FyZ2Vycm9yAF9sdWFMX2J1ZmZpbml0AF9sdWFMX2NhbGxtZXRhAF9sdWFMX2NoZWNrYW55AF9sdWFMX2NoZWNraW50ZWdlcgBfbHVhTF9jaGVja2xzdHJpbmcAX2x1YUxfY2hlY2tudW1iZXIAX2x1YUxfY2hlY2tvcHRpb24AX2x1YUxfY2hlY2tzdGFjawBfbHVhTF9jaGVja3R5cGUAX2x1YUxfY2hlY2t1ZGF0YQBfbHVhTF9lcnJvcgBfbHVhTF9maW5kdGFibGUAX2x1YUxfZ2V0bWV0YWZpZWxkAF9sdWFMX2dzdWIAX2x1YUxfbG9hZGJ1ZmZlcgBfbHVhTF9sb2FkZmlsZQBfbHVhTF9sb2Fkc3RyaW5nAF9sdWFMX25ld21ldGF0YWJsZQBfbHVhTF9uZXdzdGF0ZQBfbHVhTF9vcGVubGliAF9sdWFMX29wZW5saWJzAF9sdWFMX29wdGludGVnZXIAX2x1YUxfb3B0bHN0cmluZwBfbHVhTF9vcHRudW1iZXIAX2x1YUxfcHJlcGJ1ZmZlcgBfbHVhTF9wdXNocmVzdWx0AF9sdWFMX3JlZgBfbHVhTF9yZWdpc3RlcgBfbHVhTF90eXBlcnJvcgBfbHVhTF91bnJlZgBfbHVhTF93aGVyZQBfbHVhTV9ncm93YXV4XwBfbHVhTV9yZWFsbG9jXwBfbHVhTV90b29iaWcAX2x1YU9fY2h1bmtpZABfbHVhT19mYjJpbnQAX2x1YU9faW50MmZiAF9sdWFPX2xvZzIAX2x1YU9fbmlsb2JqZWN0XwBfbHVhT19wdXNoZnN0cmluZwBfbHVhT19wdXNodmZzdHJpbmcAX2x1YU9fcmF3ZXF1YWxPYmoAX2x1YU9fc3RyMmQAX2x1YVBfb3Btb2RlcwBfbHVhUF9vcG5hbWVzAF9sdWFTX25ld2xzdHIAX2x1YVNfbmV3dWRhdGEAX2x1YVNfcmVzaXplAF9sdWFUX2dldHRtAF9sdWFUX2dldHRtYnlvYmoAX2x1YVRfaW5pdABfbHVhVF90eXBlbmFtZXMAX2x1YVVfZHVtcABfbHVhVV9oZWFkZXIAX2x1YVVfdW5kdW1wAF9sdWFWX2NvbmNhdABfbHVhVl9lcXVhbHZhbABfbHVhVl9leGVjdXRlAF9sdWFWX2dldHRhYmxlAF9sdWFWX2xlc3N0aGFuAF9sdWFWX3NldHRhYmxlAF9sdWFWX3RvbnVtYmVyAF9sdWFWX3Rvc3RyaW5nAF9sdWFYX2luaXQAX2x1YVhfbGV4ZXJyb3IAX2x1YVhfbG9va2FoZWFkAF9sdWFYX25ld3N0cmluZwBfbHVhWF9uZXh0AF9sdWFYX3NldGlucHV0AF9sdWFYX3N5bnRheGVycm9yAF9sdWFYX3Rva2VuMnN0cgBfbHVhWF90b2tlbnMAX2x1YVlfcGFyc2VyAF9sdWFaX2ZpbGwAX2x1YVpfaW5pdABfbHVhWl9sb29rYWhlYWQAX2x1YVpfb3BlbnNwYWNlAF9sdWFaX3JlYWQAX2x1YV9hdHBhbmljAF9sdWFfY2FsbABfbHVhX2NoZWNrc3RhY2sAX2x1YV9jbG9zZQBfbHVhX2NvbmNhdABfbHVhX2NwY2FsbABfbHVhX2NyZWF0ZXRhYmxlAF9sdWFfZHVtcABfbHVhX2VxdWFsAF9sdWFfZXJyb3IAX2x1YV9nYwBfbHVhX2dldGFsbG9jZgBfbHVhX2dldGZlbnYAX2x1YV9nZXRmaWVsZABfbHVhX2dldGhvb2sAX2x1YV9nZXRob29rY291bnQAX2x1YV9nZXRob29rbWFzawBfbHVhX2dldGluZm8AX2x1YV9nZXRsb2NhbABfbHVhX2dldG1ldGF0YWJsZQBfbHVhX2dldHN0YWNrAF9sdWFfZ2V0dGFibGUAX2x1YV9nZXR0b3AAX2x1YV9nZXR1cHZhbHVlAF9sdWFfaWRlbnQAX2x1YV9pbnNlcnQAX2x1YV9pc2NmdW5jdGlvbgBfbHVhX2lzbnVtYmVyAF9sdWFfaXNzdHJpbmcAX2x1YV9pc3VzZXJkYXRhAF9sdWFfbGVzc3RoYW4AX2x1YV9sb2FkAF9sdWFfbmV3c3RhdGUAX2x1YV9uZXd0aHJlYWQAX2x1YV9uZXd1c2VyZGF0YQBfbHVhX25leHQAX2x1YV9vYmpsZW4AX2x1YV9wY2FsbABfbHVhX3B1c2hib29sZWFuAF9sdWFfcHVzaGNjbG9zdXJlAF9sdWFfcHVzaGZzdHJpbmcAX2x1YV9wdXNoaW50ZWdlcgBfbHVhX3B1c2hsaWdodHVzZXJkYXRhAF9sdWFfcHVzaGxzdHJpbmcAX2x1YV9wdXNobmlsAF9sdWFfcHVzaG51bWJlcgBfbHVhX3B1c2hzdHJpbmcAX2x1YV9wdXNodGhyZWFkAF9sdWFfcHVzaHZhbHVlAF9sdWFfcHVzaHZmc3RyaW5nAF9sdWFfcmF3ZXF1YWwAX2x1YV9yYXdnZXQAX2x1YV9yYXdnZXRpAF9sdWFfcmF3c2V0AF9sdWFfcmF3c2V0aQBfbHVhX3JlbW92ZQBfbHVhX3JlcGxhY2UAX2x1YV9yZXN1bWUAX2x1YV9zZXRhbGxvY2YAX2x1YV9zZXRmZW52AF9sdWFfc2V0ZmllbGQAX2x1YV9zZXRob29rAF9sdWFfc2V0bGV2ZWwAX2x1YV9zZXRsb2NhbABfbHVhX3NldG1ldGF0YWJsZQBfbHVhX3NldHRhYmxlAF9sdWFfc2V0dG9wAF9sdWFfc2V0dXB2YWx1ZQBfbHVhX3N0YXR1cwBfbHVhX3RvYm9vbGVhbgBfbHVhX3RvY2Z1bmN0aW9uAF9sdWFfdG9pbnRlZ2VyAF9sdWFfdG9sc3RyaW5nAF9sdWFfdG9udW1iZXIAX2x1YV90b3BvaW50ZXIAX2x1YV90b3RocmVhZABfbHVhX3RvdXNlcmRhdGEAX2x1YV90eXBlAF9sdWFfdHlwZW5hbWUAX2x1YV94bW92ZQBfbHVhX3lpZWxkAF9sdWFvcGVuX2Jhc2UAX2x1YW9wZW5fZGVidWcAX2x1YW9wZW5faW8AX2x1YW9wZW5fbWF0aABfbHVhb3Blbl9vcwBfbHVhb3Blbl9wYWNrYWdlAF9sdWFvcGVuX3N0cmluZwBfbHVhb3Blbl90YWJsZQBfbWFpbgBfb3NfY2hkaXIAX29zX2NvcHlmaWxlAF9vc19nZXRjd2QAX29zX2dldHZlcnNpb24AX29zX2lzNjRiaXQAX29zX2lzZGlyAF9vc19pc2ZpbGUAX29zX21hdGNoZG9uZQBfb3NfbWF0Y2hpc2ZpbGUAX29zX21hdGNobmFtZQBfb3NfbWF0Y2huZXh0AF9vc19tYXRjaHN0YXJ0AF9vc19ta2RpcgBfb3NfcGF0aHNlYXJjaABfb3Nfcm1kaXIAX29zX3N0YXQAX29zX3V1aWQAX3BhdGhfaXNhYnNvbHV0ZQBfcHJlbWFrZV9leGVjdXRlAF9wcmVtYWtlX2luaXQAX3ByZW1ha2VfbG9jYXRlAF9zdHJpbmdfZW5kc3dpdGgAc3RhcnQAX0NGQnVuZGxlQ29weUV4ZWN1dGFibGVVUkwAX0NGQnVuZGxlR2V0TWFpbkJ1bmRsZQBfQ0ZTdHJpbmdHZXRDU3RyaW5nAF9DRlVSTENvcHlGaWxlU3lzdGVtUGF0aABfR2VzdGFsdABfTlNBZGRyZXNzT2ZTeW1ib2wAX05TQ3JlYXRlT2JqZWN0RmlsZUltYWdlRnJvbUZpbGUAX05TRGVzdHJveU9iamVjdEZpbGVJbWFnZQBfTlNMaW5rRWRpdEVycm9yAF9OU0xpbmtNb2R1bGUAX05TTG9va3VwU3ltYm9sSW5Nb2R1bGUAX05TVW5MaW5rTW9kdWxlAF9fRGVmYXVsdFJ1bmVMb2NhbGUAX19fYnplcm8AX19fZXJyb3IAX19fbWFza3J1bmUAX19fc3ByaW50Zl9jaGsAX19fc3RhY2tfY2hrX2ZhaWwAX19fc3RhY2tfY2hrX2d1YXJkAF9fX3N0ZGVycnAAX19fc3RkaW5wAF9fX3N0ZG91dHAAX19fc3RyY2F0X2NoawBfX19zdHJjcHlfY2hrAF9fX3N0cm5jYXRfY2hrAF9fX3N0cm5jcHlfY2hrAF9fX3RvbG93ZXIAX19fdG91cHBlcgBfX2R5bGRfcHJlc2VudABfX2xvbmdqbXAAX19zZXRqbXAAX2Fjb3MAX2FzaW4AX2F0YW4AX2F0YW4yAF9jZWlsAF9jaGRpcgBfY2xlYXJlcnIAX2Nsb2NrAF9jbG9zZQBfY2xvc2VkaXIAX2NvcwBfY29zaABfZGlmZnRpbWUAX2V4aXQAX2V4cABfZmNsb3NlAF9mZW9mAF9mZXJyb3IAX2ZmbHVzaABfZmdldHMAX2Zsb29yAF9mbW9kAF9mbm1hdGNoAF9mb3BlbgBfZnByaW50ZgBfZnB1dHMAX2ZyZWFkAF9mcmVlAF9mcmVvcGVuAF9mcmV4cABfZnNjYW5mAF9mc2VlawBfZnRlbGwAX2Z3cml0ZQBfZ2V0YwBfZ2V0Y3dkAF9nZXRlbnYAX2dtdGltZQBfbGRleHAAX2xvY2FsZWNvbnYAX2xvY2FsdGltZQBfbG9nAF9sb2cxMABfbWFsbG9jAF9tZW1jaHIAX21lbWNtcABfbWVtY3B5AF9ta2RpcgBfbWtzdGVtcABfbWt0aW1lAF9tb2RmAF9vcGVuZGlyJElOT0RFNjQAX3BjbG9zZQBfcG9wZW4AX3BvdwBfcHV0cwBfcmFuZABfcmVhZGRpciRJTk9ERTY0AF9yZWFsbG9jAF9yZW1vdmUAX3JlbmFtZQBfcm1kaXIAX3NldGxvY2FsZQBfc2V0dmJ1ZgBfc2luAF9zaW5oAF9zcmFuZABfc3RhdCRJTk9ERTY0AF9zdHJjaHIAX3N0cmNtcABfc3RyY29sbABfc3RyY3B5AF9zdHJjc3BuAF9zdHJlcnJvcgBfc3RyZnRpbWUAX3N0cmxlbgBfc3RybmNweQBfc3RycGJyawBfc3RycmNocgBfc3Ryc3RyAF9zdHJ0b2QAX3N0cnRvdWwAX3N5c3RlbQBfdGFuAF90YW5oAF90aW1lAF90bXBmaWxlAF91bmdldGMAZHlsZF9zdHViX2JpbmRlcgAAAAAAAAAA