def subs(self, *args): data = cat.rsubs(self.data, *args) return Scalar(data)
def subs(self, *args): data = rsubs(self.data, *args) return type(self)(data)
def subs(self, *args): data = cat.rsubs(self.data, *args) return type(self)(len(self.dom), len(self.cod), phase=data)
def subs(self, *args): data = rsubs(list(self.data.flatten()), *args) return ClassicalGate(self.name, self.dom, self.cod, data)