OPENQASM 3.0;qubit[3] q;bit[3] c;U(1.5707963267948966, 0., 3.141592653589793) q[0];ctrl(1) @ negctrl(0) @ U(3.141592653589793, 0., 3.141592653589793) q[0] q[1];ctrl(1) @ negctrl(0) @ U(3.141592653589793, 0., 3.141592653589793) q[1] q[2];U(1.5707963267948966, 0., 3.141592653589793) q[0];ctrl(1) @ negctrl(0) @ U(0., 0., 1.5707963267948966) q[1] q[0];ctrl(1) @ negctrl(0) @ U(0., 0., 0.7853981633974483) q[2] q[0];U(1.5707963267948966, 0., 3.141592653589793) q[1];ctrl(1) @ negctrl(0) @ U(0., 0., 1.5707963267948966) q[2] q[1];U(1.5707963267948966, 0., 3.141592653589793) q[2];swap q[0] q[2];c[0] = measure q[0];c[1] = measure q[1];c[2] = measure q[2];