def forward(self, *args):
    proxy_module = ProxyModule(self)
    for op in self.pre_ops.values():
        op_args = op(proxy_module, args)
        if (op_args is not None):
            if (not isinstance(op_args, tuple)):
                op_args = tuple([op_args])
            args = op_args
    results = super().forward.__func__(proxy_module, *args)
    for op in self.post_ops.values():
        op_results = op(proxy_module, results)
        if (op_results is not None):
            results = op_results
    return results
def forward(self, *args):
    proxy_module = ProxyModule(self)
    for op in self.pre_ops.values():
        op_args = op(proxy_module, args)
        if (op_args is not None):
            if (not isinstance(op_args, tuple)):
                op_args = tuple([op_args])
            args = op_args
    results = super().forward.__func__(proxy_module, *args)
    for op in self.post_ops.values():
        op_results = op(proxy_module, results)
        if (op_results is not None):
            results = op_results
    return results