def subCircuitCustomGate(): if request.method=='POST': receivedDictionary=request.get_json() c2=Circuit() c2.gatesObjects=c.gatesObjects c2.subCircuitSetter(receivedDictionary) try: circuit=c2.createDraggableCircuit() except Exception as e: return jsonify({"conditionalLoopError":str(e)}) r=Results(circuit) matrix=r.matrixRepresentation() complexMatrix=f.strToComplex(matrix) isUnitary=is_unitary_matrix(complexMatrix) if isUnitary: c.gatesObjects[receivedDictionary["gateName"]]=f.matrixToGateObject(complexMatrix,receivedDictionary["gateName"]) return jsonify({"isUnitary":isUnitary})