qat.lang.vendors.GPi

qat.lang.vendors.GPi

Definition of the \(GPi\) gate (of arity \(1\)). This gate is not included in the default gate set of myQLM, but in the gate set ionq_gate_set().

from qat.lang import qrout
from qat.lang.vendors import GPi

@qrout
def circ(alpha):
    GPi(alpha)(0)
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABacAAAHUCAQAAACEiVz+AAAAAmJLR0QA/4ePzL8AAAAJcEhZcwAAAooAAAKKAHc+pAoAAAAHdElNRQfqCgEWDjbAlYpVAAArwUlEQVR42u3de9wdZ10g8N+btkmTlFYUUISlzb0FBBGUa9MLKCsgirbk0lZuiqwotE0v7CorF11om0tbpPABFkSSNElRWCnoKvbegut+gKW1bd40F0Uo8gGxtLk1ac7+0eTNe5nbec/MmZlzvt/zR97MzJl55pln5vzOc37zTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAsBtRBTCEPh3LYld8OfbGDJUBkONQPCV+MZ4Sr4svqAyE00BERxUATDOwPkYlMJmeKRBMA1A0brpLJTCZ3mkQTgMgdqKHb1kAAIBwGgAAhNMAAE31oCpAOA0AMF0PqwKAYdeZ8AIg2+9PuGqOqhAm0zsNw+0ZqgAg00+rAoTTQLpZqgAg03GqAOE0kM74qQCukwinAQBAOA0AAMJpAAAQTgMAAMJpAAAQTgMAgHAaAACE0wAAgHAaAACE0wAAIJwGAADhNAAACKcBAADhNAAACKcBAEA4DQAAwmkAABBOAwAAwmkAABBOAwCAcBoAAITTAACAcBoAAITTAAAgnAYAAOE0AAAIpwEAAOE0AAAIpwEAQDgNAADCaQAAQDgNAADCaQAAEE4DAIBwGgAAhNMAAIBwGgAAhNMAACCcBgAA4TQAACCcBgAA4TQAAAinAQBAOA0AAMJpAABAOA0AAH1yrCoAgGn5gzglHolDhZadESfErviToaynz8W3Y3/BZY+JJ8aG+FuNC4Dm6kx4LVYhMG0PTTqf8l4PueoUen26YeVfM6F0oxo+U78tAwDT8YOKlx9WP1QFCKcBYBg8VvHy6hWE0wAwwDqqABBOA4DPXMCpDQCNd6IqgEFkoDwAKMN9sT/mxEjivJGYESfGXUNbN9+K/ampMQfjh/ESzQfhNED7/Uzsj0djWTw1HouIY+LB2BLHx30lb+WGOFdVD6jnFR5bediM5C5xp4Aa4TRAO50ZvxrPjyfFaYlzP3j43z3xV3FjbOh5a3Nid0R0YmYcUPUD6KmxSyVM0xNVAQDt4TEuEXPj0ri560dLdKITa2LutLd6/NhafkEzHBCjE1rHIhVSUk2uaVjpPMaFHG5FBIbJGbEhOvFIXBlnTuv9F8cjsS/Om1YIv3fs7//jQAykEVUAw0myBzAczoz3xtJS1jQr1sf6OC82dvWuR8b+qqpv69nxu7GvxpGQq8o2BxBOA9RsTVxc+jo3xCfjOYVD473j/r6xkn1sxgNFPjj25eFr8Y34UDyg8QGDT7IHMMguiG3RKRhMPxBXxJ/GKbE4Tosfi5EYiWfH4jg5ro314/qWj5oVW2NtoTUfjOMrDqff37B6PyGWxjtiW3RiNC7VDAGAQTI8tyIuL3Rz4e5YEwsKre/xvOvJr0dz3zf5XVX48LRurOzfa1+sGMg2NurG3kpq0q2ItIzeaWAQXROduD5nmc/EBTESc2NVbC+0zlvjvBiZEhYeF52Yn/GuLbFywv/3VLK/T2j48ZgVG6MT62ouxRvj2lgX18UznSAAwPQNfu90fq/0tkkhbu9bSOt7XTdlyasq2uu7G94/feR1dU2tYsukciwpZa16p8uidxoA4XRDzMsN51aXtKUrJ613WcIy5yZs/6w+1cSzYkksjGfEtfH+goHuPfHrsbDr7ZwUp8b8WBFr4pZ4qOCWzuhzq7ggsRRvEk4Lp4XTAAinJ9qZE8atLXVrJ09a++TRqFcklqEer8wNcV9T0pbOjCsKBNSb+7jv6b9WCKeF08JpAITTY67uayh9xO4J25g1bs4pKTc+1uXBzNr5u5K3tiD3qZP7+rTfv5lRhuuE08Jp4TQAwumIiONjb18SPJLsS+zvnJlSkqtqq6P/l1lD8yvY4qxJIdLU1+y+t/fJOfTCaeG0cJoSGNkDaLt1sXfCuM4T7YiRuKTSUH78WB07D0/bn7L0l2qrpedkzt1RwRb3x+Kcmt+TcdzK8ZeZcxc6eQDhNDDs5sa+uDBj/sqCY0r3VoajTok3xcRnIE50cyNrcWNla16T8+zdvRUP8fc6pwggnAZItyIemZCvPNHtMZI79nQ55o37+5PxjdTl9tRWU+dlzq2yz/yxmJk5/98q3PZzc+ZvdwoBwmlgmG3K7FW9LJb2rSS7JuR6pgdx19VWV6/KnLuh0m0fiJdkzJ0dd1W25f058z/mJAIAujcotyLuy3xw+Oya6zX5dVZDjnr/B++7JXP7p1e01dMq32+3IpbFrYi0mt5poH3mTxqUbqI7Ym5G9nJV5hVYZtgyp486M3PubRVt9XuZc691IgHCaWA4LcvMeV1XWV9ntl25mbjDmDl91J9nzl1XyTZ/kDGvE+90KgHCaWAYrYtNGXOXx8W1leyVOfOHM3P6iE9mzr2woq2+PGX6QZ9+gHAaGE5bMgOveX19ePVk23NSTOobc3plA47crTnzL6tkqzfFFxKm/kMc51QChNNleVYsicVxWvyYpgAtsDHOzZg7K3bVXL43Z84d3szpx92XOfe9FW31tZN6qP85lsSLnEqAcLpX58fmuD860Yl74v7YGvfGD6MTD8SlXaxjcXSiE+s1Ieibx2JFxtzj49HaS5iVhjLcmdMREV/LnFvd8xFvipH48Tg7PhFLYiROMS4DQG8ujb05Ayf9c8wpsJ5r+jjAFJSrrQPl7c88c2c2pJTrU0t4ZW1l2lDzIHlHXJlz9b28hWeTgfKqqUkD5dEyw9Q7vSk6cWVuD8gzYneszV3TOzQd6KuDmQHzvAb0TD/u46lzvllbmVY2pG6OyZn/as0caKdjh2Q/r4/lidP/I74bM+JQ/NSE7OmL4u0ZY9ruipPHrReo3obMUGx57TnTR6XfcNfM1LCNDSrL6Ro60E7D0Du9JjoJwfTNcXqMxBPjtFgSp8UTYyRWxNaxuTOjE3MT13ZoXDAd8UVNCCq3ObN/dV2to3lMtbVhtdeUzGkAWur0xAy99FFWn5GTU3h9bVmHUJa25U5/NjPf9rbGlXd1l1edqjUlczo/d7rTwjGW5E5XU5Nyp2mZwe6dvjPho3ZfzMrorfmXGIkdY/87OGnuDSkpI0BVzo3fyJy/tHEl/kLi1OEec/pxP527xE9p8IBwuklmRSdekvANc3buLUsLxrIfj5nw4NtVcc6kJTdqQFCppbEl5zxvnuTs6Q2NrN/+XsN+PneJQ5o8IJxujmWxL2Hqyrik0LvPHBsh9sKxYfOWxuopy8k6hCrNznmS3qrGjOfRXE3KnM5PhfCcXoDGSM617GYUk+PH3nUk9aPurEMoS3typ7PzbHc2ttz3yJyexvGUOz3c5E7TaoPYF3B9Yq7l8VMyobPsi6sP/zUvnhTNu1cfBt/tOfPnNbbkUx8FJXM6YkmBZf5DsweE003wWOLtgsfF/i7Xc9HYX5vjlxP7HGROQ3VWxcsy57+swWWfmu8tczritRo1IJxuh4OJe7Syq57pI5Yd/vfs+HzifJnTUJWZCfcqjLcr7mxw6ZvzeKwmZU4/J3eJBzR8QDhdv+Qnp62d5rMLt4z7aE/eGlCNvF+T5jW69JOvq/X9kvWqnCtmP52fu8SNGj4gnK7blsQswZ2xqofwHOi/TTnzr2l4+Sd/rZc5XcxHNX1AOF2vdXFu4vT5PazzExnzZE5DNU4fS7RKc2HD9+Crrfhi3t9r2IoCy7jlGxBO12pFygfsip7WekvGPJnTUI28x4bPa/wefLUh5WhS5vTbcpfYrOkDwuk6zU7pZ9mR+6NxnvtT50gEgSrknbPbY1fL9kjmdESRh8H/kcYPCKfrtCdl+oKe1/w5TQT6aGFuoserWrAXL5rwP5nTEWflLrFPqgcgnK5TWm9WGU9VOiZl+i2aDlTg7pz5G1vxPLKJ4bTM6Yi35C7xWxo/IJyuT/ptS5eUsPafTJkucxrKd2kcn7PEea3Yj8caUYomZU7nHzfpc4BwukZpty2tK2Xtb0iZfp2mA6W7Mmd+W8bTOdSIMjcnc3p57hILNH5AOF2f9CejXVzpdneXtJ5nxaI4JT4ep8SieKbmyFBbnbvEb7dkT8b3Ttf3aJLmZE5/Mmf+HbFD8wfa7NhWl35+vCRlzpZS1p92+8wtPa737Hh1/EosGjflaN7gaHwxvhRf1jQZOnkPXNqRetNx04zPnf5iI0vYzz7zBTE7Z4nTS9zas+NARMzMzcIfHs+Mg4c/7e9VGUCSTuqrHFelrP3Saa/x5bE+o9TjX5viVAeYPpw3ixtSqutzz4n5ranhraVfi7p3XmZd9jMH/YGc41pOL/pZcUfCVfQVle/daCPPpgtidWxLqe9b4tqY08CzZmJNrmlY6dZMKN1owAC5NvXyXFZT352y/rnTWtv5BQPpo6/tsdBhZkjC6fzzoY01fENtZdjQkLpcmNtx0Ls/zdzCGUMUTi+J1YU/Xzbn/mognBZOM4RBwfjXioq3MB07E9bz97EunhELY1Esinnx+sSe6x2N7EdAOF2u/L7pZS2q4YfGSv3chn496Z9tmeXYV3m43olOfGsowul1XXfYdGJfnC+cFk4z3NZW/lGRdpm+ues1rZyyjvtTf2ydlRBUX+1wM+Dh9CD1TUccGx+P78T/jbc3tEb7N6rHSys+qtdMWt+/x31xf3wjYUsnDXA4vTB2ZNTxPbE1RmNr3J0aUjfjV1DhNDTsw+KmigP2bjOnPztlDSfnvmf7pHf8swPOAIfTa3KD6esdtq40JXM6+6j2mmywccLazpkw7+4+fSGrO5xemJqbviHhwe6z48J4OGHZu4TTwmmG07rKb2yZeDvR9DOnN09692cKvu/cSe971EFnYMPp/L7p4x22rjQjc/rWzFLM6nHth8at6+ICraqaTol6w+ldKXcPLc181ymJ9wXVnUktnIaGffxWvY1ubJly80dxMya9d7/DzkCG0ysHLNWj6VfIftXmmkqD6dvH1vRIyhJ/PGWblw9UOJ1cv9sKPhLnqprHexFOQwOsyLhI/31J21hUQub01T3+YH3MpPcfcOgZwHB6b24wfZGDVmI43Z/M6XMr/bXhhgI3M764L18k6gmnF6TU60t7PEJ13vArnIZGffxeVtI21vWcOb10Sq9B7x9Jdzr4DFg4PVffdOnqz5w+J7MEc3tc+8pCI4MkhZzl90/XEU4n39dzWylHafk0y/T0+LP4H8JpaJO5ffng7T1zupyS3VzR1wWE080Ip/NvQ9zjkHWp7szpzRlb31liC/5R5lKLKhmYr/5w+mBivV48rXVtLG2c7sff+7BwGtpjdSsyp2+b9L41pZUEBimczu+bXuWQlVqnVdufse21Jax/R8H860V92fv+htPHpdTryaW2le69oYT6FU7TajNaWOasD9erStrGopTptxR8/xlxehelznb9lP4EGBQvL/RBRnmqvX6sik7MzLguXtzzFi6LeYf/ujjn9uwDXV3b22BlyghPs3oYtSTpoWfdjyP1i4f/3e4Eg7ZYnNnvcnZJW+k1c7rcUXM7DX0sNO3UpNa0Kbdv+hEHrEt1ZU7Pjz0Z272j5NabnwJ0SWI5PlzyXvevd/qcisZISVrn1dNcx7rSalLvNFRsdQsyp1eWfMF7ZMqDx2Ewwun8VA99092qI3N6QerDRB5/LS1pO0eHHl0wzXpYW/Ke9yuc/mxKzc7sec3Le24ns0vZf+E0NObjd2vlW5nuu8v+CjFHQ2AAwuk5BcLpRQ5YqV9RyndeavdD7z2WaftWZBSLh/vy9aw/4fSWlLo9pbIWs2taoWZ5NSmcpmVmDNTefKmk9fSWOT313et7LM9Hpkz5hKbLACgysNY21VSiz5S6tjNjQ3RifUYQuTlGShw1/GjSXJHe7hMSp4608Kh9Ns5NnL6sq6A33eqEaSd38dXg4q4+IYEGOK8v/Vi9ZU5v6GGs6uK9B1BOa6qzd3o0t2/6Joer1GvkK0vZxoJYm9Mj3fsdI1ktt8iXgrRnbbYvd/qcyuv3+MT139r1cVlRYk3qnaZljm1ZeV+TObesfqxXpUy/rtC7V06Z8lcV1MSlpY1iAnXJ/wL8JZVU0tXrcd+JJ8VJMaOLPtpOHIhl8dQ4GAfj9bEnnlXoXWsrGN5wy9hf7y+w9G+llqxtX4+Sf93c02PwOl7yaNxF892P1uj1Tj9oi92Nz5w+r5Ke5Km3+ezVGCilfdfXO724QOa0uwTKunr163VTXFDxnu3pqR7KVm3v9KzU/ZhV6nZu7iHrvazHLemdptXaljud9eH6xZK20Vvm9G9Xst9/OWXK8RovLff2Ast4ImJ73BwrYyTOLjk/+4ijD79+c4GlVw5InaY9xXFdzpjb3boxceqFBd45e+yvdzsFEE63xRMy515X0lbeljK92M/OUx/QWkYKyvcTpl2u+dJqz81dQh9Qt86rYZt7YnWcHSNxdqU/9n9q7K9NBZZ+S2oY2iY7U2v84pK3dGPK9FfkvvN9Y38Z0hJa44y+DAC1u4cxp5N+vl5fQpnmJaz3Fg2CaWlKsocxp8u3oW9JHVtjQ3yob8MYzu3yetrp6ckB3agu2ePq1L2Y37ez8crC79tWck1K9qBl2nUr4m9kzCvv2WlzUsPsfP8lYdp3SyjT7MQvFzDY/koVdCk7yWFZ3B5ze/xN8ti4t4b9OtoH+j8LLJ12G+TeQlfxZpgZ70yZs72PD/K6NC7LnH80T/6PnHwIp9tjbx8+eM9KmX5LoXcn3VVfRpZz8gfYE+JhTZiWOq3AMreqplJtaW3JjyY33NxV8D1Rm0K+9Nzo/1zJ9h6IhdN415vG/tro9GK4tSt3elnGvG+UtI20YaaKZU4n/dRX3YB2r9WAaa3nqYLSZWdO7x6APSwStM1N/YWxPYOLpqc6bI8HKtniX6RMPzPzXUe6nzY7+RBOt8mBjHll9U7/bsr0Ijc6Jt8qeVxl9fGzGjCt9fO5S3geYlmdAY/7SGv3611jf32swNJpfdPt+a1jTsathr9U0TbTssp/JeM9R5+m+GYnH7TJaB9uROxl/UsT37mksnIJN+i9LdV1K+LG3JvdrnCoSrp6Pf46q7X79dWursNp+39mHz6Vyjmbtvfhk26yk1O290CBmh6toCbdikjLzFAFE6Td3lfsUcevS5w6s5SS3ZMwbaEDRmu9MHeJH6ikUt3c2pIfudL9Q4Flz06dc0tL9nZpxsgdl1S21bTHwixIfcfR5Mv3OblgUMLp7SWtJ23M6bsLvfv5Pbw3z0yNlYGyL3eJv1RJXcnOnG7zA3GOPFT81wos+6aU6e25DTMrKaW6Ptvun7J4dPzv9UN3rj3mcsOghtOfK2k9y1OmF3tEzJMr3MORxKknacK01DNzl3hAJXUlO3P6uhbv2TUxEv8pRgoNOnp+yvQ3tGRfs4Y6rDJsTe/2OSmnni8dwnPNmFpM0a6B8kZS53yt4i0Xy5Q6te818uR4aMBa5O/Es+NAhRmCw60TB+I7U6YR8al446Qp98TMcVeckTguNsWxGdegiE4cjOVjrffghKEAPz1l/f0NxIqOTdRc/1poqeWpc/a1ZD83ZMz7ZC0l+snET5mjjxRfPSTXzvEWxSXxpAqHGRh2IzE7PhLfVBHV2ZV6e0Y5N4CsTH3+V9ETrrpbR5Jvw1w5YEf43/r2TDevI6+6MvDzS9Y/r+5DPb+w5hodDvtS9n5VhV0tZX4SnVnjMUzb6ssSll0wNnddRTXZtFsRr/BZ0ffXje26+LQr2WNzxolYht7GnK7DC2OQfDSe4jtj3z2xoeXq573zv9WHbVSduzy4mdPdSMsAbsvj6rOe+Xh9TWVKet7D/x7766IhaVnP91HRd6+u6JFFwulIftR2Pz6QimUdPrOGGjk4UCfP77h+1ODMhpbr3/q4rZcOwP4MbuZ0cWtTpm9ozR7Mz5j3iZrKNPV5D/PGxvtYF8Pi54P++2PhdFX+oqZgvdj4znWEtgedb/SoqWkAX+njtv628i38ML5X8RYGO3O6mLSe0ve2pPzZwelNFW/9R4WvEDvG/rrYdZIKPb1NhW3XrYjV3nD4/pTpRX90PlBDjbx4oE6dr8XPuX703b2uTXF+fCVOi0ejExGdeCxeHE+LQ9GJThyc9q9O98WxcUx8O74as+JH427cqsfNQ9CS0x9T05YHXl2YMa/6HvYH48RCyx293fOaIbpOftc4WjX4sHC6KtUOTpN2s0rRfp0X1VAjTxuoU+f5egBqsLWh5ervXfN5l+158ba4rNCa/il+J+7se23JnI74o5TpbUlIeEXm3L+pfPtFf6u+vlD4P2g+H5f7sOi79wunq7MtFlW05vQfrYpmHdYRTh8asJNnJG6MnzncS0gVDsT3JmVLNzXhq1mP3dgZl8fl8bV4Xs5yf17T+MYyp9OfaduWhIRfypzblEelHM1PXxnDZHKsdFc8sXXxU3vMiFnx1/FWFVGlayobQKj3wYnW1jBQ3qgmQY9tfXFNpbgnZ5CkBQ2suec1aHC/otevTnQy0iAGx6Up+171eNPlDZSXdQR396EGR1O2vSaxlPsq3n7TxmJZM6F0dwZM+Q7QLv+1ovU+kHGKF78YAkXljdPTxGvT93Pmn9vQuh6GzOn3pEx/40DsXVN+X7ht7K9nD/XV64kBLQ+n03IAe3sUxeqMnrAvaSRQgX9oYZnzBtT7bE3lkjk9O+akzNnUkj3IPobN+BxaGqeP1eoDQ331kuZB68PpiGsTp/5aD2tcnvnErOs0EqhA3jjMTRwEMnvkmfpu6szOnP7wELSmP0uZvr41e/CazLnN+H3h1rG/VriAQdvD6XcmTn3utNd3TM6zprZpJFCBf8yZ/6IGlvm1mXPr60HMvinsm0PQml6fMv1TrdmDrLbVjN8Xrhr7yxgXMADhdPKjxs+f5rpm5fSBudUPqvH1FobTSzLnfqShNb1+4NvSBalzbmrNPszJmFfvb6SP3xV0Slxy+P874kqXLxiEcHp54tTpPIB8Vu7dyTKnoRr35cxvXrLHkpz5df2Sdd7Qt6U3pUxvzyOwsx8RcmOtZXv8TNw59v8FAQxEOJ18kXxf12s5tsBQP930CoxoTtCF7MG/Hm1cebOzW+v7JSs7c3rjELSktIEA2/MI7B/PnHtrrWV7OCL+bux/lwUwMOF00kXyki7XsWLcQ8E/kLpUN/1Nx9VQE0J42usLmXPPaVk43dTM6cH/hS2tD3p/i/ZhVYPL9t14zdgTG3eOy6AGWh9OJw+M101PxNpxfTZrUkcs7a6/aXMN9XCMJkxr3dj1OV6vMzPnNnUMoA0D344uTJn+hhbtQ9ZvMXXfDn/KuC++8122YLDC6e0JA+YVf4rSrXHR2N/r45LUy3F3/ToP1lAPX9GEaa12BXpzc+bLnK7HotQ5m1u0F4cy5n2u5rL94dhfp7towaCF0xHvjBumTCsysPxLoxNLx/63Ki6IiP+Wsmx3/U119BR/RxOmxbIHAJvTqLL+bubc+h5qMeyZ0+9NmX5rq/Yi68bbf29IGTfHHS5ZMHjhdMTrY8ukKQtyhoRaGNsmXBDmx9qISL+rurv+pjpypyV70GYfy5z7e40qa3bY+tHayjXsmdNpDxR5T6v2Ius3hs81ooR7U8bUAlofTkcsm/JQ3/Nid8rjPxfETbFtXD7mjhg5PPTPmSlr7/ZO/X+qoQZmasK02B9kzn12o8p6ZkPD6WyDnjmd/mXilgLv/r34VLygEftxe8a8Zjz94MkuVzC44XTEuVOG7ZkTB+LvYtm4KUvjiujEAxMGU/rQuLEzX52y7jb066zWhGmx7GSPCxpU0rzM6d01lWvYM6ff28OV8ZPxoXhj/GPqvTP99O2G1/PptbVwoG9mx6PR6eJ1+5QPwuTlFnVdkuT1nFTKXt6fuO5nOvz02E4X11qWVZnn6uzG1Fl2OW+urVwbMsu1Ycja8tHXnC7e+4meSjBaytm0NuMo9stoagk+WMP21zSspa2ZUDrPS2aKGQOwD3tjZuGHjO+KJVPuTk678HZ/p37yO55ayl4mr+VeTZhWy/7Q/OPGlPNtmXPre2rdcGdOr0v9TNiT+96j1/0m3K6ZnrZ3XwNK9y4XKhgmb4ibM3tqki+9Z6UsvXUaJdiYuKZyev/q7bdgkDSpdzpiU+ZZ28w6m/xa0tByDVdLPvq6tFAoXk4tldM7PS91X/rXD5rWO31fLdvXO03LzBigffl0nBUj8fJYFzvj4XGn6KZ4V5wYI+PGmh4v7X796fTrfD9x6mOV7fH9GjCtlz1ewKJGlPHsnPlbayrXcGdOp7eNIk/ue+vhf/c0Yl+aMBhe2jN2PxfAUIXTj7spLo75cWKMHH4tiRVxxbjwerK00WSn84yzaxKnPrWyff26BswAuDNj3n9vRAl/KXNufT1Vwz3m9PtSphcbcfpIssfHGrEvDzU4GjB+FAxlON2t8jKnI7YnTn29cBoyvCxj3vmNKOHlmXPry1Ae7szptN813lPgvavG/vqDhuzN3tpLkDa6yIhLFAin85yVMr3M/qb9Jazj1MSpX9CAGQhbMubV38eal1JxXUNrdbDH9UhPwLmlwLuP9mzvacj+1N+K7nIhAuH0dJWZOZ12If/pEsqZ3HMhd5rBsCxj3oraS/funPnbairXcGdOvzVlepERp2eP/Sq5qjH78zcp0w/2rQSPuhCBcHq6ysycTgvDf6GEcl7SoA9xKF9WOsWOWkt2Ss64HTKnm/UVrEi2/SfH/lrbmP35csr00/pWglemTDeCFAinc5WZOR0R8ZGEaU8poZxJP0j+tebLwLgydqbOmxcvrbFkO6fxFbo/hjtzOk2RHOQjWde3Narkm2rd+iOpHT8HAyBT2pjTvWTTVTP66/ZpPvcL8tro4oaWqxkjKK/JfcrqokbW16D3KJ6ZstdFRiu+pNRjN1ra2bS4tlHNj8lsSbv6dEyNO02rDXfvdNqPpb3cFJL04+ETei7pkxKm7dF8GShZucD15HUeFxfnLiNzug6vS5n+hwXee9XYkWtWwlxaiPbqire7Kqf/+YBLEwins6VlTn+xh3Um3bb0vJ5LemKhsB3abGPckBHY1vFTeH4QL3O6HmkpdPmpHkeH1/uTlnyhfFWl27w99+ZN4TSQo5qfSaeub3WPa5yTsM65Dh+ltNDFjSrbrowfnS/qc1n25iZ6dGJd465ej79WDHgb/tfEvf5MF/VWVs/0aKlnU38Td+ZP2Mo74j3T3P7b4xPx+yXXpGQPaI20zOndPa73kilrvK/0Ne5z+BjIcDpif0aQeE5DytH8zOkTBrwNX5G41/nD3q0p/ciVG06fkbhfyyqpw6smbOPpEfFz0wqnP3F4qSuF0zCcrkq5dFxVwQddb748ZX3nOXwMaDidHSj2K8lpz6Tz946W3SI56D6UuNfzCret20sryWjJZ1NSS3u49PqbN2H9O3POvWJ1+sVSa1I4Da2xO+XScVbPa94yZZ3LGxWeI5xucjj9Y6nnZic6cX3l2588zsG5EfHUxLJsbeRXjk58c+Db8NmJ+/3MnHdtq+AKOlr62VR98s5tqX36mxO3viBjXcvHlnp3qTUpnIaWBhXlhqplfuyeO2VtKx08BjicjshOtdhf6ZbXpvzQ/kCDMqc/kBNOf31Ir99FA6JLGx1On1Hp7w2rJ6UNzp4wd27itq8udBzKrUnhNLREVZnTSadeJzoxq8SPDRj0cDriscyAsZqHQy+clOQxPq1qUUIp6qm7DxTI6R58j3a51y+raBzl0QpaxKqEfVtfwVfFaxKW2ZGw7b9PXePFY8vcIJyG4VRd5nRyEHzLNNezfMqaFjp4DEE4nfbD89GHLc0veXvrc74E31F70Lowrix0g2QnOvGrA96Kz0/Y51NTlz62sqM2WsnZdEPpI0StnrS2tOzxJV19PSuzVoXTtNqxQ7vnaWNOl/Vo3rPi5gn/PyNOmVavyPVTLooPaLYMhWXxv2JD6tzZsT22xytjewlbWhzvjvMnTds15ca2l00KGm6uaL//e/zE2IM1HounxYvjYBzIzQue7PMREXF/zIyvxrfjmHHX/B/E+wagdaxPGBbvx1OWPXnctXdmK/bu3Lhhyjg2q+JQXDaNdZ0db4wLJkzZH89KPW+2xpqE335OTwy/Hxn35QYYUtX/SLqmhHVvlOhBxW1/ccNLeyCnF3Zrj+PcrIpHEtZ6beKyKyYsc2kFe/uCwr3Pvb1GBqAdT03Ye3/ichdVet/JaGVnU1LKR3edKbMTR4BZ2eUVohOduDdhqaOJUZsqqEm909DSC3GZmdNHHJq09h1dvv+cKeWb49AxZOF00rjrU18b4owu17oo1iQG0tm5tXdWPLbz1/sUTr9mIFryDbndDfPj/orHbx6t8Gyan3jsiozvfF5sSHxvsa8TJyS8c+JjWl48bs7BSmpSOA2tUHXm9BH7p3zoFzd1RI+lDhxDGE5HRFxfKEi8P1bH0nhCxnpOjZVx1YQQa3LvX969CQcq/aXoX/sUTj9nINtyJzrxgsNzjo8L4+EJc6pJSBit+Gy6M6WlXzhp+LqTYmGsiKsSR6DpRCdu7equm+MT1vDWsW6e8V9DD1RUk8JpaIVHKhtzOi+gLtpD/U7D4yGcHmdu3N5VwHhvbItd8YH4YNwW22Nr3J37jh0FA47Hxxz5aCV7eXefwunBsanQ/u6t7Je90crPpkWxvcejPZ0BHecUWvOdldWkcJqWGdZbEeemTC//5qJZcXDcbUCPP43q9Lgj510PTBk4f/64J1fB8Nkdp0fEpsI/2J8WERHvKrj0li4SAY6Jm2JevKOSvXxV/MuUafeNu06PxHGxKY7NyH3uxGPx4nhaHBoLmjtxcNKNjE8eoHaxPL4RH8hZ5uq4qMV7uC0WxOL4+LR+nVwb744909rqnhiJb8XTM5e5vOcHiwOtdmHKN+3/qGh7Uwf8Gs14HO7GhJ6VExw0StPO3umjVpXaT3uzUQkGwLrU43tDxVse7ePZdOm45zpmv26Ny0vZ4qLY2bd61TsNLQ8njr62VbbFpYnbuyJOHxcoz4vViUkoax0whNOTzIl1Ux650u1rvUB6oLwi1o4LN7fF2nhFH7Y62vezaXF8KDbG9rhn3HYfiq2xK66Myyspwbvizrh3LGt7c7yhDzUpnIbGe3vqx+u7a+o/SX9tzLytCoY1nD7iN+PKLsPqR2JDXJ6a7gVND6eHoyaF09Bwv5fxQftg5Vu/pIuP/RscLITTBT0hzohr44rYFaOTbue7O0ZjV1wR18YZvpwinBZOC6ehN/Piqvj3nBD26/GiystxQlySeaf21ljTlx8pEU4LAEA4LZwWTtOzQR3Z4z3x27E3DkXEwcN3+Bfzs/GVw38duZt+RsyKv423lFi2R2J1rI6IiMXxgnhhPBadiDgmHozPxvfjIY0SAEA4Xa8vxS/3vI7xQfib4yVdBeXFv42PxkaNEACgvWYM5F79culrPFVTAQBgWMLp8n1XFQAAIJyerreoAgAAphrM3OmnxV/HiXHw8EN2xz+WdyRmxlVx3ISvEZ04GC+KFx2+JbATB2N5HBh7QO+MOCHeE1/SVAAAGJZw+jvx3C7fsTOuH/e/d2kYAAAUIdkDAACE0wAAIJwGAADhNAAACKcBAADhNAAACKcBAEA4DQAAwmkAABBOAwAAwmkAABBOAwCAcBoAAITTAACAcBoAAITTAAAgnAYAAOE0AAAIpwEAAOE0AAAIpwEAQDgNAADCaQAgT0cVgHAaAJiuQ6rAVxGE0wDAdP1IFUzbHlVAmx2rCgCgBC+Ju+LEmBEjiXNHYk7sj3uHsmbOiu/FgZR5nTgQD8YszQfhNAAMu8/nLvHokIaNN2kcDDbJHgDQHw+qAhBOAwDTdUAVgHAaADhiRBUAwmkA6NdnqM9c9YQmCwCMObHi5YfVCaqAdjGyBwBMz13xkvhRHCrwEJKRmBEnxl1DW1Pfiv2FHtUyEsfET8QuTQvhNAAMg19VBYXIMWfASfYAAADhNAAACKcBAEA4DQAAwmkAAEA4DQAAwmkAABBOAwCAcBoAAITTAACAcBoAAITTAAAgnAYAAOE0AAAgnAYAAOE0AAAIpwEAQDgNAADCaQAAQDgNAADCaQAAEE4DAIBwGgAAEE4DAIBwGgAAhNMAACCcBgAA4TQAACCcBgAA4TQAAAinAQBAOA0AAAinAQBAOA0AAMJpAAAQTgMAgHAaAAAQTgMAgHAaAACE0wAAIJwGAACE0wAAIJwGAADhNAAACKcBAEA4DQAACKeBYjqqAACE08B0HVAFAK6TCKeB6XpQFQBk+r4qINuxqgCG2jdiX8yJERUBkOCxeDgWqQaE00C6U1UBQBcOqgIm0ycFw8bNhwBiJ0okdxoAAITTAAAgnAYAaC4JcwinYej9uioAEDlRHun0MHzmxY6IiNgT3/LBAJDrscOjIHVcMwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgyf8H+c4wDiWD+aAAAAAtdEVYdGljYzpjb3B5cmlnaHQAQ29weXJpZ2h0IEFydGlmZXggU29mdHdhcmUgMjAxMQi6xbQAAAAxdEVYdGljYzpkZXNjcmlwdGlvbgBBcnRpZmV4IFNvZnR3YXJlIHNSR0IgSUNDIFByb2ZpbGUTDAGGAAAAE3RFWHRwZGY6VmVyc2lvbgBQREYtMS41UzZawQAAAABJRU5ErkJggg==
from qat.lang import qrout
from qat.lang.vendors import GPi

@qrout
def ctrl_circ(alpha):
    GPi(alpha).ctrl()(0, 1)
data:image/png;base64,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
Multi-controlled gate
from qat.lang import qrout
from qat.lang.vendors import GPi

@qrout
def multi_ctrl_circ(alpha):
    GPi(alpha).ctrl(2)(0, 1, 2)
from qat.lang import qrout
from qat.lang.vendors import GPi

@qrout
def reversed_circ(alpha):
    GPi(alpha).dag()(0)
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABfIAAAHlCAQAAAAUksX6AAAAAmJLR0QA/4ePzL8AAAAJcEhZcwAAAooAAAKKAHc+pAoAAAAHdElNRQfqCgEWDje3krrDAAAvaUlEQVR42u3dedxcdX0v8O+ThAQSAa1Wr60vJSugaK/Wti4QCHq1xfVVgWzYaq9tbW0rEhZ7e93rVclGXNCrdlETAkFrXy50sYWExe3aakWB7LFUsb5UKpCNBOb+QfLkeZ4558zMM+fMWeb9nj/y5JyZs/zOb8585je/8zsRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDPRhQBDKX/HT+IzTHVOQCgplpxOBbHjHiHokDIBx75YACgOb4az1UITDRVEYCID0CNPSkejFsVA+NpyQchHwCJjoaZoggAAEDIBwAAhHwAAAryE0WAkA8A0Cw/VgRMNE0RwFB7WXw9TowpLtkCqIlWHIp74ltx2phpGm0R8oFxvh4/ih8pBoCaOaAIyOabHwy3ExUBQA3NVAQI+YBzAECz6GSJD3jAxwQACPkAAICQDwAACPkAAICQDwAACPkAACDkAwAAQj4AACDkAwAAQj4AACDkAwCAkA8AAAj5AACAkA8AAAj5AACAkA8AAEI+AAAg5AMAAEI+AAAg5AMAAEI+AAAI+QAAgJAPAAAI+QAAgJAPAAAI+QAAIOQDAABCPgAAIOQDAABCPgAAIOQDAICQDwAACPkAAICQDwAACPkAAICQDwAACPkAACDkAwAAQj4AACDkAwAAQj4AACDkAwCAkA8AAAj5AACAkA8AAEzeNEUAAAylZ8Sz4+74koJAyAcAaIJHx72jf/8onqBAaBrddQCA4XPvmL8fHy0FgpAPAFBvH2yb8usKBSEfAKDOXtc25cUKBSEfAKDOZrRN+U2FgpAPANAsDyoChHwAAEDIBwCQiECVBgAoxn1tU76vUBDyAQDq7IdtU76qUBDyAQDqbHrblOMVCkI+AECdbWqbcr1CQcgHAKizmW1TfqJQEPIBAOpsTduUOxQKQj4AQJ39VBEg5AMANMvPJvx/hyJByAcAqLvxI+X/rQJByAcAqLvxF9p+U4HQNNMUAQBMyp/FKfFAPNzVc6fEo2JPvHsoy+mz8f042OVzp8ZjYkP840C26hIhH4DmaI17LFAgMGk/m/B+6vT4mbNOV49PDGSrFo5bZ/1sG7f927wdaW9ZAAAm4ycFP39Y3TuQtWi7R8gHABI8VPDzlWuR7h/z906FjpAPADyipQhq7YHRv/5GYSDkAwA+c5vgX0f/+rHCwAkHAJickxRBpfzL6F9a8mkgQ2gCQB7ujIMxM0YS543ElDgpvjy0ZXN3HEzt3HQ47o3nlbJVn403HfnL/W4R8gEa6+lxMB6MxfHEeCgipsY9sSmOjztzXsv1cYGibqhndj0W/LAZ6fiM20qJ+UY7QsgHaKhz4hXxy/G4OD1x7nuP/LsvPhdfiA19r21m7I2IVkyPQ4q+gZ4YexTCJD2mlLXeceTf+xwAAOrPzbAiZsVlcVPPN+hpRStWx6xJr/X40aX8qmrYEONvRzRfgeRUkqsHfD7c3oAyczMs2rjwFhgmZ8eGaMUDcWWcM6nXXxIPxIFYPqkvFvtH//66A9FII4qgQj44Gn/vio1xRcrX80fa8L+WOG9BrIstcf+RpRyK/61QqRfddYDhcE68IxbmsqQZsT7Wx/K4pqdXHRuRu6gWtzPiD+NAiSO3F3UVA/Ru7Pvg1Dg1lsR7I+Lm+EhsHPe8u+NpEfG9CV/I/yDOi0Vteeld8S5f5ACo8off8HXXWT2prjmdHgd6KL39hXdFaFXqcX9siXUxr/E1a5vOb4WUZL/vke93qJ8bYumRlv1boxWtuDgiIhbEio7d+K6ubJnprgMg5A9VLHl1bO86mG6P98YH4ikxP06LkyMi4mkxP54c6+JToz/ZT3ys6WorDo97zaIC9vNdFQv5Y6PHZUI+Aw753dbOB+PuaEUr7umhRgv5AAj5JVvS1Uf23lgdc7ta3iP9+dtjQicbBhASPlTZkH/0V4+lQj4DCvlnFFqXhXxqw4W3QBOti9aEvrftPhWvjpGYFStiZ1fL3BLLY6QtrB4XrZiT8apNsWzc//cVsr8nVvx4zIhrohVrS96K18T7Y21cHU/1BpFsAKBpmt+Sv6SLjjnLcl5DWjv12rZnrixor2+veFv+0cdVJdWKTRO249RclqolPy9ldNf5dqyKb0QrWvG5+HTcqyUfACG/umZ3/IheldOarpyw3MUJz7kgYf2LBlQST4tTY148Od7fdX/978RvTuJS2ZPjtJgTS2N1bI6fdbmmswdcK16duBWvFfIbG/I/0PGy20cdeeZXohWt0etGZsalHS69fY2QD4CQP3i7O4TLNbmu7SkTlj5x9PylFWoHfHHH4P3SnNZ0Tryvi5h/3QD3fUmBbbJCfjVDfsR/Jhzvm+Ky0XB/1E+jFa346wlTF8Ta2JqwhM9XuMyEfAAhv6Gx5KqBBvyj9o5bx4wxc05Jucy3LNnjh3wp57XN7TgU4YEB7fdvFTocopBf1ZAf8eL4TOyJHbEnVsXy1KtWHllf2r0dTosrYmXsiZ3xvVgXT690mQn5AEJ+A2PJ8ePGoS+ui06SA4ltw9NTtmRlaWX0b5klNKeANc6YEELaHycMvL5PvDZDyG9uyO+tftS/zIR82gz7NehPi1NjQZwej1YVoLbWxv44PnXurhiJSwv9gjF2vJzdR6YdTHn2DaWV0jMy5+4qYI0HY0GHkt+Xcdzy8TeZc+d58wy5sxUBNM1FcV3c1dams6OnW7YsiFa0Yr3CpHaa1ZI/a0JLerej3hRXpq+NqOTIHNkXIhZnaofW/BNL2+s8joeW/LyU05K/urSLwfMvMy35DL3LOvyo34rvxcwulrOu1j/xIeQ3JZYszXw33zyw7Rjf//5bGTfeKsvyzJJaXui6j8tc974C1/xLHc73O4T8IQ/520roICTkQwGu7Xoc5zU9LAmE/Gq+py8b6Las6urcUl6P/A2ljvz93My1f7mw9Z7W4XhcLuQPecjP8/oMIR9KsjHlFH9v3Blb4862m2AczFjWnjHPu0bRIuSXJKubzt6BXNKZVa7Jj0UVOeqD70S0OXP9ZxW01tML328hv84hf1ZFb3Il5EPXViee3G+MMyc8b8mEfvqzEpf28AB/5AYhP9mczOh2SynbdEql75VZVo/8cr9mPDZzneuE/CEP+VcI+VBnZ/X4kfbkDm/5jZW9vTUMT8hfXMJ4+N3Y0SHIDmeP/KM+kbkNawf+1eLhAmKWkF+vkL+h1PswC/nQl9sSTuz7Y3qHV+0cfe7hCXOur1C7HAxryF+bGRYXl7hlc/XIz3B2KW3556as7VAhMUvIr1fIf6CksfmFfOjTjD5uibM5sXVpRUk/coOQf8ymzKB4Sslbt0+P/ElvxeUFrfVzCev6akExS8ivV8gfXyu2CvlQD4v7HDH72K3qjw6oubC0H7lByD/qmsyYOL307VuiR36GOzK3Y39h6x3fmr8n1zov5Nc35J9e+9/mhXyG0qcTP0Km9bCE40dftSvjQxKE/EF6KDMkzqhg6eqRP9b6En9ReEwsio8VUNuF/PqG/GUDvjGbkM/ATWngPm2MVyXG9sM9LONAXHXkr9nxuIga/owHTXMw83w1I3Pg28FJbxf/UGnbdN4ktzhvP+gw/4oC131v3BS/KwYxxrO6mAJCfqU8FEsSph7XcwB40+hf18VvJLbPGCMfBudwZmec2fFgRbbzY6lzvl3aNi2rSNlM7TD/Jao5A/SqLqaAkF+pIDAl8SPu8CSWdXSUjnPjbxPn36D6wIBsyAyIS2JPZbZ0S+qc9ZUs2So1VpylojNA+7uYAkJ+xYPAmtg4qaVtGv1resragEG4LrMtem1cV6mtrVrnvuw+9xorGFant01ZrFAQ8qtqU2IQ2B0r+vjSAJTt03Fhxtxb4pKKbe8XEqeW12JelR75EQ91fMajVXdKdEgRIORX09q4IHH6nD6W+fGMeXrkwyBc0KGf7MLKbfHnE6eW12K+rDIl8wsdn/HfVHhKZMw8hPxKWhoXp0zvx+aMeX7khuItHNNtLsmMCm5zcq/8av4uONjGil/p+IyHVXkAIX+sE1I+qnbFtX0u+a7UObryQPHv7C2Z81dUZkyd6qpSj/zOo8hPccAAhPyx9qVMn9v3kj+rikDl3tmP2BNrKrrd322bokd+d36o0gMI+cektdbncce8tGH7Nqs6ULBbOsyfXdktn9k2RY/8iFO7eM5/qfYAQv5RZ6UOenVpDkt/Qsp0PfKhWCvizMz5Z1Z429uvI9AjP+LlKjWAkN+Lm1Omr81l6b+dMv1qVQcKND1WZc7fE7dVeOunVWZLqtQj/xkdn7FDxQcQ8o9K/6AvduzsvTkt52kxP06Jj8UpMT+eqjrCEQc7zJ9d6a2feF7VIz8i4qKOz/iCig+Qn2m13vo58byUOZtyWf6ilOmb+1zuufGSeFnMHzPldaN/bYsvxg3xT6omQ6zTqFjrKr79E6/l0SO/Ox9R9QF4RCv1kY+VKUu/bNJLfEGsz9jqsY9r4zQHmAG8bxZUbvvO6vjuqLqlldnerFLcUGqZ1PG4JtlW8XdTXUtydSnvjm21LrNtKhFN8v7Uj4q8qvrelOXPmtTSLuoy3h977Ix5DjNDF/I7vS9OqXwJz65IeF2eWY7LB7otW7po2BDyhXwhX8gnR3XurvPHqXPeltMaZqaG/97tTogmN8a3Y21Mj5GIOBy/Ei+f8LE7J7bH7jijw2jh0CSdot7O2FOzPdIjPyJiYcdnvE3lByAiYk3hP/rOS1n6TT0vaVnbMu5KbUWbkdCh5yqHmxxVuSV/Xsf23jq0lS4tscU8/UiX2TlmUcfjur+m7yYt+cWUpJb83stMSz6NDSpjHzcW/DWi1x75n25bwlM6vmbnhFd8zwFnKEL+/g5RcEMtSnidHvkTdL4WaXlN301CfpNC/nYhn2ap6xCaWaPgfzyndbwkZXpvY+RfF6+a8GE30kVknxsXjvv/k+NBlZXGuyyO7/CMekTBhyqxFVUaI7/zcdug+iMRAcnfwPNvN8tj+ZsmvPa6nk4341970GGngJq9oCbv6/q040esqsQ2b6hMZ50lHY/snNq+m7TkF1OSg2jJv6OtHt5c6zLTkk9DvrcuzZiXV2ed+SnTN/ewjKvignH/vzYW9/DqhydcFj09DqmwNNiqjs/43ZrsydiW/PJu8FSdMfL/ssP8W2OX6s/AtQ888hWFQtMreR1kfWT8Q07r+MOU6d3/yL0w3jju/zsyv5wkR4ULx93Wa1rcFs9XaWmoFR3m76rNOFPPGfP3Fyu5hYMc8WdunNDhGWfluLYz4lBETI/bvaGOeGocPvL5cYfC6GCqIoCyzRrIj9Bb+x4jP58tu2nCUi5XAehTNbvrbGxQl46txsgf17yRfVzz+cVhUdyaMPL+Cwvfu2p213l1rIrtKeW9Od6fOjx0mQbfXWdbW9msjnrRXYcGWlWLHvk353byaMJdIRHyJ/uOq2PNP7bN15e2DVXpkT9vALfA+mDmGs4eopB/aofPx/FXiJ1QqXeNkC/kQ4cwcGVO65jf5xj5Z+f4oXrNhCVdowrQuJDfuR1/cY1K+GejW/1LFf3SNDjbM7fjQOFfIlrRiruHIuSv7fme6q04EBcNccjfLuRD1SzIPGWdW/Dpstsx8ie+bmOuH9dGcKBpIb9J7fgR0+Jj8YP4RryhoiU6uBF/nl/wUV03YXk/jTvjrvhWwppObnDInxe7Msr4O7E1tsXWuD016M8b0pDfXmprhHwo16oa9Mhvv8PtjL625oEJSzMSBc0K+as7RvyNDltPqtIjP/uo9ttdZPyvnOePm3f7gL4mlh3y56Ve87AhFrY9+4S4OO5PeO6XhzLkt3dp+4CQD1UKKOMfWwtfy2RfnfcXm5kqAg0K+Z3b8Y932PqML2X8KrIlcytm9Ln0h8cs65IualUx9w0vN+TvSSzZbQnxfqxTYm8BX7nqF/KvbCuDM4V8mqVZ93fL6x6O/Y2R3/7q9X1uz4fbpnxc1aUxuhld5YBiyr1Mi7Y6M2oe3+ft/W6JkSN/7Y2RxG4W757w/yfHFY06xqujFU9pm7oj5sWCDjd12hOzEu5Ksa8m95POT/uAmfc4dUCZsn+Enp/TWvrrkb9h0j3507WMsUNuqtaSv79jO/6bHLS+zxiD7pF/QaG/zFzfxaW7zx3IebOclvy5KeX6/D6PUJmXtw++JX91YRminDLTkk/tbaxBj/z2151awEf2ZSoDjQj5sxp20W31G0MG0V57fuYWzOpz6cu6Gp0nKQjn35ZfRshfk1iqN+dylJZMcpueFH8d/6dmIX9N7Qe1EPJpmL2V75G/vJCI0n5p1X6VgUaE/M4X3e5zyHpUdo/86zLWvjvHGnxf5rPmFzJkZ/kh/3BiuV4yqWVdk9t9BR557f21CvkfLKBBTsiHAuJ3noNf9TdG/uZCPlSv1LpJQ0N+53b8FQ5ZrmVatIMFn6V3dXnp7vyB7P1gQ/5xKeX6lFzrSu9+O4fyHXzIf0rbnj9dyKdZ6nXh7YmZc6/OaS2vT5ne3WW97a0g23PYph8nTLtC9aX2XtDFc1YrphwVezO9FdGK6Rlnx0v6XsPlMfvIX5d0uHT3UEr0r69l8WDi9Bl9jBy0NGHagz0v5X8c+XdnrcrzuLYptztBQHnOHkj71N4++pEm3aprfQ7bNDthuZtVCCalSi3513Zsx3/AAetRWT3y58S+jPXemnPt7dyJ69LE7fhQzns9uJb88wsaijRpmVdNchlrcyvJQXy1X1D738e15NNBvVryX5UxL78oMDM1/Hf2BwnTfpjDNp2Q+JUH6q7zaB7/VyH16LzMucWMrTM3dsTOjJHWz85pBPJNo3917ljxzMSpB2t6VD8d1ydOn9H3HiW15b9xkp9PH65VmY44WSDkV0nWxaafy2kdi1Kmb570x2set/G5I3HqiSowtdbNTd0+oph6NOgx8pfH1tgRc1PnXxUjkxj5JdkFR/69pYuOIS9PnFrPq5k2pTRxzZ5E15qJrk2cuqeHJfz56F/1akue7mQBVbIn48fgvIaUXNnX8vO9JKrTkperEvRdl8rsrnOV4TMLP77jH5/MdU3ndBjHp5USICdrY0+1otgBGo7F2uLfTZ9O2ZcLC/3UW9Bzjbspx5JcXcp7pW5016FRtmd8mOQ19FU/PfJPTHzlvMI+uFeqEtQ65G/rGPFvdLh6lN0j/8W5rGNurEm9m8ixx8bCau6nunjuspStql+f/PMLL9/jE5e/pefjsrTmIf+7Qj5NM61m4SRdXqPk99MjP7kP6NTCyuOVbolFrXUe6eQGhdSj7B75P4jHxckxpYfeyK04FIvjiXE4DseFsS+e1tWr1hQw8Omx/vjv6uLZr0vdsrp9aUseumFfn5F6rOS7Byzs8tXHSnRjzd8705w+oDrfWov4mS1t/J5/7urVaxNfm8/Iu7frykBuX5ar0ZK/oIvOOjMdrr6O7uAfN8arC96zfX2VQ7GfSnm/m2ak7seMXNdzU+I61hZwXLotyTJa8rfX7t2uJZ8OpjRkP/Ianff1qRG7G7/cx2s7cYkQTfOGLp7jbrf1cVMsi5E4t6vONL1bMvrX73Tx7GUNKdO0O/SuzXmUoC8kTr24i1ceG1nnLTUs3++M+99xNa8tDzkJUW/pLfl59U5PW3537TN3FthylLzvJ6sU9FnLy2vJ39yxVXirg9Wj5SW03e+NlamjkuVnf09n1H8e0GW3xbbk704t8bydmrKmF3Z85crcPunKaMkff2XJe2ueib7uBMhE9eqDlt6P9F8Lfyt147SBl8jPx88aViMfHe+N/fGwt2ZB8f5Q/KAyW9P5Tg9fcMh6dN4A48U34qfx/gF1cZg1OhRxd+P8n5syvU6tzVfFKSlznp77utK+Tr8o/qnDKy898u+OBiSguvfJnx+XxuNq/3tElWvLj7u6HkjIn7T0yvsvuSx/WV8Rvwy/WtNTa5pvxn93Jhl48K+uzzk8OZ3DHrE4bolZfXbSnJZy145ivXP0r7/o4tlpF/3uL6ANvCjTU29ItTN2DWwrLovLM+cfu/7ibbV8v3w/5tQ65I8/ez/aiHsDOBO9tX5Bvz7eV/DFVOtTlr626zfcoLvrrGvU8f1o6RcNDuNjdklH+3Rj5Bfyod/M8uxtH/YWfDeV9DPzggEcyXmFlPD2SdWZG3OsW2V01xmfKa6o3fviJz7BSng8o05VpF4X3p5Q8PLTbi51dVevfmoJJXK4UQHld2W0ElxQ0nqfqegHdgY7Gn3r75ounjMrdUym+rRzpkfcnQX9evuZlOnnZL7q6LUY19W0Po1vu6/fXvyck14JatWSX6+Q/5mSvkJ01+u0jMB92PuNPpV1/cOvdHzGdgenR9k98j9c2/168+hfH+3i2e9Mmb6lNvs7My5JnfeigtaZdrvHl2W8ZtXoX79T05o1vgvwjIDOnivkF6XYy2vTvp112yP/kMrWJ2MDlOGOktb7hI7P+KyD06PsHvn1vbHYK3sK6mkB+e212d+sYZeL6o+/KmX6KzJes2L063hdh7rdNO5/P3QKoQsfEPKLcn+hS1/R50fjc0ookV9s1FvnN5w9SlDWMJW/1vEZP3FwcnVTbbf8aC/0r3Xx3HNT52yuyd4uHHcx6HiXFrbWtFbsuamvWDz61ztrW7PGx/r6jVW322mtBLrrFKi4H/DTfx69ussllBHymzXU5E/jsV19jNOEc8CBjs/4GwenJ9k98ut8W7GjH6qv7OK5r02Zvqk2e5v1a0Vxl6P23lXl2tG/1te2ZtV9uMlDwWB9LmMod3KwrrBRI/ofkWJNCaPruI01/db1BZXYCmPr9G9DZmnWfXC9J/VZr44vaLvyHl1nWcYx/FQp78jkWy5eNDr/0kJKcnUJ56H6GV9mNwVMULdxYf80/qSQ5e7IeBN1f7IA6umv4jUTpnwnpo9psxmJ4+LamJbZitOKw7EkDh05ExyO08fM+0Tb8vPX1B75j/iPrp61JHXOgZrsZ9bNvv6ylC16QmI3lmO3FVvVkHPAd2q/B493Iqf+ihg5eFVG28narpeyWks+NXwPacmPeMkAxlb+tZJLdDgcSNn7FYWtMd+W/HNKPIZpaz0z4blzJ/EJ2VtJDr4lv46fptvkAbJNqd0Wvz9x6iv7WOKSzA+Aq1USKOXja3BeN4B1FN0nvrk98nsxI7UJph6y7ue7saRtWpww7R9G/3pTY+rOdCddhPzyJd/q+5cmvbypHU6dxuqGMvznANf1/AbsT/YY+cPRWLEmZfqG2uzBnIx5Hy9pm9ov7pw9OubO2trXmbtG/7rWSRchvwqS7kp30SSXNaPD7aT8/AXl+MoA1/WPha/h3vhRwWtodo/87qS1Kr+jJtufHZlvLHjt96VMb+8mdGys/ktqX2eOH5MGoHGm1XCblyT+fHhC7J9ExO90MdYNqgg0/tx0UXwlTo8HoxURrXgonhu/GA9HK1pxOJ46yWXeGdNianw/vhoz4r4xlymWYxjG3ViUOqcuv8denDGv+F8j7omTuvwEPmpdA2rNdXHFkb/cCgsfpBWxNqHF5p1xWc/73nm8hV5+5DZ6KuRnsCNYf6jD/Nnx+ri8qyV9N34/bht4aemRH/G21M+Lenhh5ty/L3z93f6uv7GrLyV1caz9flNA40yp5VYn/UTY61i9S8f0NHxP6rN6aQEq47YavljQVNX6yN0dV8RIfLPj8z4ZZ5QQ8fXIj4g4u4fPiyp6Uebcqtxw6th1D8saUWuOtd8fH0BFzE0Y6KuXU/nYG1etiukpQ4dt7WmbzixhCM1dqgI9q8YQmt/pMOTj3AqW3DMrewOv7K1aNAS1+rKUfS96fPz8htDMOoJ7B1CC21LWvTpxKw8UvP5BjYc0v9aDzBpCkw6m1HS7dyYMpdn9SWHLmO4+6+PS1B8de+uRf08J5fAVVZiaOqGG56Yfd5h/QUXLehh65L89ZfprGrF3Vfkt5ubRv85oSL15wKkYIb+K3hjXt03b0cXrnh+tWDj6vxXx6oj4X7mcWKeWUAo/UIWpqa/VcJs7DbX56ZK2S4/8E2Jmypy6DIyYfQyrMQTEwjhrtFR3NKTm3BMb4z/jxw0a7x/GmFbjbb8wrosLx02ZG+szB9OcF3837t64c2J3REScnPL83sZkKKNP/lRVmJrqNG784Qpu87My524tbbuye+R/aAhq01+nTF9fmz14aebcavwWs2X0r6UNqjvLAhprSq23fnFby9ny2JvyxWVu3Bjbx0T8XTFyJOKfk7L0Xvu3fbeEEnCPPurq/3WY/5wKbvPLM+eW19qaHVO+PQS16cKU6X9Vmz3IqlvV+C1m5ehfVzh9gZA/CBe0DWs3Mw7Fl8aNpL8w3het2DHu4rMPjLms7yWV+8ju3ipVmJrqNFJNFUP+qZlzP1zRkl7f+Lr06tQ5N9ZmH2ZmzCu3R/4jl6SeMjqC3a640ukLGJQT4sGOY16Mfdwy4fV7U543fxInw6THybns5V2Jy36qw0+f9XRBRbYje0yPakT8ao6ss7yi2zU4N6bs+ZoBrDuf0XVOzjyCZw+kFNNG13nvhHfrYNa/Oui1zIyuQ5spDdiH/TE9syf+WHvi1NFLhzq1oPR+l8TkVzwxl71MXsodqjC1lT0s4IOV296Xdvi4LUt2j/xrhqAmpQ0Reklt9uDnMuduKXXb7o+IL43+7/IAhPwB2xAj8ZrYnPmcq2IkZrd9FC/K8SP7G4lTH85lD09SWWmYz2fOPb9mIb+qPfJvaHw9Sruj7cEa7cOKCm/bD+Olo3fj3T2mZz4g5A/QJ2JRjMQLYm3sjvvHhPVr481xUoykDJF1Xo4fjcmjaD9U2B7fpQJTY1/InDuvctt7Tubcqt5VdkPj69HFKdN/u0b7kPW71faSt+2UMV/H5zhtAXWSX4/85PvwtuLMXLYzacnXOHz0XZcWVGZLqt2XfJYe+ZU0v+Q9z6dP/qqMI/i+UvakuM+y7tavT37vZaZPPm2mDH0J5NcjP2Jn4tQLC9v2b6rA1Nq+Sb03y/GHmXPLuzXQsPfIf0fK9C212ousu0L8tCLbeF3c6pQFQn6d5NkjP00ePUNPS5z6eRWYWvto5tw/qtS2Zofpj5S2XcPeIz/ttkxvr9VeZN3v9rOV2ML9scQJC4T8esmzR35EJF76+wu5nGCT6JNPvf1Z5twzKrWt51Q05Gdreo/8ZT2di9u/Rv5VPLsS+3FLxrxqdML4eacroG7y7JEfEXFZwrLyuGzqAwnL1f+OyalOn/z69MrXI7+atqfsdzdjwPzlkede3NcW5NMnf2UFjuG20nrjJ61fn/zey0wmoM2wt+Tn2SM/Ivmel4/PYTuT+i7/nepL7V2aOfeEymzn6zPnbi5tu4a9R37aGExv6+K1rz3ybxV+MZpa6VJ+n974IOTXT1qP/P2TXuIDCdPyGOE+aczwP1V9qb3s9ro/r0nI/0Jp2zXcPfLXpp7B93V87cxKfRWanjrnzgps3ZudqEDIr5+0VrB+RrxOupH6iX1v6eMSpu1TfWmA6zLmVeeOpfMqGvKzNb1H/sUp07tpx3/36F83VvrL7rTSt821XyDk11LaoHhf7GOZb0mY9sy+t/Skrr5MQP1kj9kxvxLbeG6H+VtL2q7lQ11z0utGNz3yf+/Iv9VoLKnCMJkjKdM/G4CQX0NpPfJv6mOZSR8ZLy9gO9+q8tIQt2XMq0Y9f1Hm3PIudxvuHvnvTJne3Qj5R8+qH63EvvyswmlgulMUCPn1s6iHmN6Ly9qmvKTPJbb/4nAw9qq8NETWyB0XVWILr8icW17P9+HukZ/2G9Dbu3jtitG//qwie7O/9C34fsr0EacoEPLrp4ge+RERq9qmnNbnEn+9bcr/VHVpkE0Z88pvj+7UKebqipZqs3vkp3eh2tzFq4/9ClCVa5vKr0VfdiICIb850nrk99/+dX3blP7uFfiCIfv4Ztgszpi3tPSte0uH+dtL2q7h7pH/eynTV3Xx2hNGO+usqMz+/H3K9MMD24IHnYiA5ijy1iMTl9nPhXkXtC1tmYNHbrVzQSW26fKMG/HsKnXLTulwu6mtpW3Zhszt2jBUtfjYo5t7K2zM8Wy/Lbd3U9k3w/payvpXDWj9bobVb5m5GRZthrclv6ge+Y+YOPbNgpgx6WW1d2W4RsWlYa6M3anzZsfzS9yy3R3m65FfLd30bT/6y+rNldrya0td+wPxqylzDgdAzazs43bo3Zi43M2TXM6StiXNc/DIsW4uqOh2ldOaOdHqDu34rRIH+WxVssQG45yUve6m/ffSXI9dfi35C1L26dTCS3NqZk3aM6BjqiW/3zLTkg+j9qac0BYV9iF0Si4f5CsdOhoa8pdlBI1y+gsf1zHilxemlw91yF/XR2edfCPRthzfTcn7VPQt4VZ0qEmDuuZEyBfyyd3wdtcpYoz8sTa3ddnZPYmltHfMuUylpaGuSbhk/VjcLqMzQ+evFsbIL8fjU6Z37qxzbBCEd1dur5ZP4kj365aOfe4POTUB9bIopc0i39HnH+7zAsLz27ZvpkNH36rakh8RsSejRfFNA96W/V2046+tyFGc+Fja8Dr8H4l7/akeyi2v9ultub6bBvurzJxxa/mTePsk1/+G+Hj8cc4lqSW/9zLTkg9HFN0j/6iDfYx40T6qzkIHjoaH/Pb3zNjH+RXZjur3yH9Uw+vw+xL3uvOAmKtzP3L5hvyzE/dr8QA+BZ8UEc+aVMj/+JFnXSnkC/lQDQ8U3CM/PSp025r/RgNnMpQhPzu+rhnQNuybEHJurdkFwU33gcS9nt113bqloJjV/7spqabdn3v5zR63/N0d3nvdlekXhXwhH6odI4pwuG0tZ3Z8zY5JfHxBM0L+o1Mvi29FKzYWvv6JY41cEBFPrNgY+dkR/9uNr8PnJu73Uzu8ansBZ/ptub+biu9+dXPq7x/XJa59bsayjo3/9pZcS1LIF/Jhki5O+Wj8r4LW137i3JYR2q9pe/b+xv/4jpA/XlZnmYOFrnlNSleJHRXqkf+eDiH/m0PaUJPt2K8feQ5fkH/IP7vQBqhV45Z6YMJ4RLMS131VV8ch35IU8oV8yPHjodihwhYmru99cdaY+D47ViV2I1rjgDF0IT/iocwYu6KQdc6b0E2nNWa8k/kJW1FO2b2nwgN7Ds6DPe71mQWN+76tgBqRNKjl+gK+wK5LeM6uhHX/c+oSLxl9zvVCvpAPVfCG1A/GtxS63rVdXcg3/nFNnOiAMZQhP63rwNHHvpiT8/rWt61j/H2qby09Ss+LK7s+d7yi4bX4ooR9Pi312dMKO2rbCnk3XZ+wd6v6WuKqCUtLuyrh1J6+NOZZqkK+kA99+6OMj8V7Cl/7pT0E/OsdLIY65GffHqsVrdiR2Vu4ewviU23L3t2x5G4saK/fGuti9ZHHlbEhdsW2+O4kmgha0Yo7Y2dsiCtHl7c61sVbG1mPW9GK56U88yljnnNcLUJ+csyf3Pg158YnJyznQOb7ZlXCms9KfOYDCb94CflCPpRidqyMn3bsy/qcwrfjUXFp7MzYhq2xOl7ocCHkR0TEoQ7v2a19BowViZ3k3p/43KXjnlPEjemePckw3+tjpAH1uP1uJ+9KfN6bCh2jbFth76YViV9re3FC4ihMy3o8Q7SiFXckPOtY17ZrCyhJIV/Ih1Rvj+/HjtgW2+KOSX4I3hHbYltsix1xd/xFQVu5IJbFulgTq2N1XBVXxNw42aFDyJ+gm9+/NsTZPS51fqxOGUp3T8arbit4LPpvDijkv7QRNfn6jt1K5sRdBY83v63Ad9OcxGPXTXv+8tiQ+NruvuQ8KuGV42929dwxcw4XUpJCvpAPKW7I/SPxToWKkF+ijV29T++KVbEw8zqW02JZrBwX/Ca2lM7rsCWHCu2R/x8DCvnPaGRdbkUrnn1kzvFxcdw/bs5FA4hZ+b+bbkup6RdP6HJzcsyLpbEycRSoVrRiS8eaPdbxCUv4vSPzzh/35fhQQSUp5Av50PWJv/8HCPllmhW39Phb3PbYE++J98bNsTO2xu0dX7Gryxj0yLg/HylkL28fUMhvjmu72t/9MXMgMauId9P8zO6d3TwmM9TrzK6WfFthJSnkC/nkYJoi6MoPFQGUam+cFRHXdt3l4vSIiHhzl8/e1ENXjqlxY8yOPylkL8+Lf2+bdueY8/RIHBfXxrSMPvWteCieG78YD49G+VYcnnCbqJ9vUL1YEt+K93R4zlXxphrv4faYGwviY7FwEq9dE2+JfZNa674YibvjSZnPuWKSlwID9CH/dq/zFCoNfX8sqN32r8j1vX1TQd04GKS1pY1Stm2A76bLxtyzN/uxJa7IZY3zY/fAylVLfr9lpiWfNiON3KtfiL+Lk+LwkZassW1fIzE9VsZxMWVc5Dkcz4nnxEPROvK/JXFotBVsSjwq3l7QT/NQTsgf69RafjTMjHfH70+4W2evNsTf53KLIarhhXFevGy0y9WO+HzcEP80gJg1f8DvpgXxx/HY+LXYH08bnXZf/DBmxKb4SXy2gC14c7wsHnPkt7Gt8W9xQ3yi8JJcU9AN75oW8seW2fYaNtkAkHPIr3dL/li/FVe23aU2+/FAbIgrYpZqQE4xqznvpiqVpJb83stMSz5t9MkH6uuTEXF5RJwYz4pXxf5YHA/GwThjzDO+EzNielwXJ8Rn4l/jfkUGgJAPUA/3x5bYEpFTT2QAqL0pigAAAIR8AABAyAcAAIR8AABAyAcAAIR8AAAQ8gEAACEfAAAQ8gEAACEfAAAQ8gEAQMgHAACEfAAAQMgHAACEfAAAQMgHAAAhHwAAEPIBAAAhHwAAEPIBAAAhHwAAhHwAAEDIBwAAhHwAAEDIBwAAhHwAABDyAQAAIR8AABDyAQAAIR8AqqKlCAAhHwCa5WFF4AsSCPkA0Cz3KYJJ26cIIG/TFAEA5OB58eU4KabESOLckZgZB+OOoSyZRfGjOJQyrxWH4p6YofqAkA8AVfS3HZ/x4JCG2RtVDhg83XUAYDDuUQSAkA8AzXJIEQBCPgBU24giAIR8ABjuz1CfucoJvJEAoOJOKvj5w+pRigD6Z3QdAJicL8fz4r54uItbOY3ElDgpvjy0JXV3HOzqhlcjMTUeG3tULRDyAaAsr1AEXXHtApRAdx0AABDyAQAAIR8AABDyAQAAIR8AABDyAQBAyAcAAIR8AABAyAcAAIR8AABAyAcAACEfAAAQ8gEAACEfAAAQ8gEAACEfAACEfAAAQMgHAACEfAAAQMgHAACEfAAAEPIBAAAhHwAAEPIBAAAhHwAAEPIBAEDIBwAAhHwAAEDIBwAAhHwAAEDIBwAAIR8AABDyAQAAIR8AABDyAQAAIR8AAIR8AABAyAcAAIR8AABAyAcAAIR8AAAQ8gEAACEfAAAQ8gEAACEfAAAQ8gEAQMgHhkNLEQCAkA80yyFFAFBDhxUBQj6Q7h5FAFBD9yoCsk1TBDDUvhUHYmaMKAiA2jgc98bzFANCPpDuNEUAUHsPKQIm0n4Hw8altgASHY2nTz4AAAj5AACAkA8AQFF0xETIh6H3m4oAQJ6j6VymAcNnduyKiIh9cbcPBoCaeujI+Gj/Hk9RGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7f4/ma3ZjulmcQYAAAAtdEVYdGljYzpjb3B5cmlnaHQAQ29weXJpZ2h0IEFydGlmZXggU29mdHdhcmUgMjAxMQi6xbQAAAAxdEVYdGljYzpkZXNjcmlwdGlvbgBBcnRpZmV4IFNvZnR3YXJlIHNSR0IgSUNDIFByb2ZpbGUTDAGGAAAAE3RFWHRwZGY6VmVyc2lvbgBQREYtMS41UzZawQAAAABJRU5ErkJggg==

This \(GPi\) gate is defined by:

\[\begin{split}\forall \phi \in\rm I\!R: \begin{vmatrix} 0 & e^{-i\phi} \\ e^{i\phi} & 0 \\ \end{vmatrix}\end{split}\]