def METHOD_NAME(self):
    traced_wire = self.arg.dom[:1] if self.left else self.arg.dom[-1:]
    dom, cod, traced_wire = map(
        self.ty_factory.METHOD_NAME, [self.dom, self.cod, traced_wire])
    cup = Box('cup', traced_wire ** 2, Ty(), draw_as_wires=True)
    cap = Box('cap', Ty(), traced_wire ** 2, draw_as_wires=True)
    cup, cap, arg = map(self.factory.METHOD_NAME, [cup, cap, self.arg])
    result = cap @ dom >> traced_wire @ arg >> cup @ cod\
        if self.left\
        else dom @ cap >> arg @ traced_wire >> cod @ cup
    return result