u.r0c0 = (Complex) {.real=cos(theta/2), .imag= 0}; u.r0c1 = (Complex) {.real=-cos(lambda)*sin(theta/2), .imag= -sin(lambda)*sin(theta/2)}; u.r1c0 = (Complex) {.real=cos(phi)*sin(theta/2), .imag= sin(phi)*sin(theta/2)}; u.r1c1 = (Complex) {.real=cos(lambda+phi)*cos(theta/2), .imag= sin(lambda+phi)*cos(theta/2)}; unitary(qubits, q, u); roco not supported