def apply_changes(file_path: str, changes: List, confirm: bool = False):
    """
    Pass changes as loaded json (list of dicts)
    """
    with open(file_path) as f:
        original_file_lines = f.readlines()

    # Filter out explanation elements
    operation_changes = [change for change in changes if "operation" in change]
    explanations = [
        change["explanation"] for change in changes if "explanation" in change
    ]

    # Sort the changes in reverse line order
    operation_changes.sort(key=lambda x: x["line"], reverse=True)

    file_lines = original_file_lines.copy()
    for change in operation_changes:
        operation = change["operation"]
        line = change["line"]
        content = change["content"]

        if operation == "Replace":
            file_lines[line - 1] = content + "\n"
        elif operation == "Delete":
            del file_lines[line - 1]
        elif operation == "InsertAfter":
            file_lines.insert(line, content + "\n")

    # Print explanations
    cprint("Explanations:", "blue")
    for explanation in explanations:
        cprint(f"- {explanation}", "blue")

    # Display changes diff
    print("\nChanges to be made:")
    diff = difflib.unified_diff(original_file_lines, file_lines, lineterm="")
    for line in diff:
        if line.startswith("+"):
            cprint(line, "green", end="")
        elif line.startswith("-"):
            cprint(line, "red", end="")
        else:
            print(line, end="")

    if confirm:
        # check if user wants to apply changes or exit
        confirmation = input("Do you want to apply these changes? (y/n): ")
        if confirmation.lower() != "y":
            print("Changes not applied")
            sys.exit(0)

    with open(file_path, "w") as f:
        f.writelines(file_lines)
    print("Changes applied.")

apply_changes(file_path='/tmp/tmp6qrrn_j9', changes=[{'operation': 'Replace', 'line': 2, 'content': 'new second line'}], confirm=False)

['first line\n', 'second line\n', 'third line']

['first line\n', 'new second line\n', 'third line']

<generator object unified_diff at 0x7f5b71b2cba0>

<_io.TextIOWrapper name='/tmp/tmp6qrrn_j9' mode='r' encoding='UTF-8'>

<_io.TextIOWrapper name='/tmp/tmp6qrrn_j9' mode='w' encoding='UTF-8'>

'new second line'


def _insert(self, key, value):
        flat_key = self._serialize_key(key)
        i = self._index.get(flat_key, -1)
        if i >= 0:
            self._items[i] = (key, value)
        else:
            self._items.append((key, value))
            self._index[flat_key] = len(self._items) - 1

_insert(self=OrderedMapSerializedKey([]), key='みbob', value=199)


def _unpack_args(args, nargs_spec):
    """Given an iterable of arguments and an iterable of nargs specifications,
    it returns a tuple with all the unpacked arguments at the first index
    and all remaining arguments as the second.

    The nargs specification is the number of arguments that should be consumed
    or `-1` to indicate that this position should eat up all the remainders.

    Missing items are filled with `None`.
    """
    args = deque(args)
    nargs_spec = deque(nargs_spec)
    rv = []
    spos = None

    def _fetch(c):
        try:
            if spos is None:
                return c.popleft()
            else:
                return c.pop()
        except IndexError:
            return None

    while nargs_spec:
        nargs = _fetch(nargs_spec)
        if nargs == 1:
            rv.append(_fetch(args))
        elif nargs > 1:
            x = [_fetch(args) for _ in range(nargs)]
            # If we're reversed, we're pulling in the arguments in reverse,
            # so we need to turn them around.
            if spos is not None:
                x.reverse()
            rv.append(tuple(x))
        elif nargs < 0:
            if spos is not None:
                raise TypeError('Cannot have two nargs < 0')
            spos = len(rv)
            rv.append(None)

    # spos is the position of the wildcard (star).  If it's not `None`,
    # we fill it with the remainder.
    if spos is not None:
        rv[spos] = tuple(args)
        args = []
        rv[spos + 1:] = reversed(rv[spos + 1:])

    return tuple(rv), list(args)

_unpack_args(args=['foo.txt', 'bar.txt', 'dir'], nargs_spec=[-1, 1])

<function _unpack_args.<locals>._fetch at 0x7fe6e9431b80>


def init_conv_(self, conv):
        o, i, h, w = conv.weight.shape
        conv_weight = torch.empty(o // 4, i, h, w)
        nn.init.kaiming_uniform_(conv_weight)
        conv_weight = repeat(conv_weight, 'o ... -> (o 4) ...')

        conv.weight.data.copy_(conv_weight)
        nn.init.zeros_(conv.bias.data)

init_conv_(self=PixelShuffleUpsample(  (net): Sequential(    (0): Conv2d(8, 32, kernel_size=(1, 1), stride=(1, 1))    (1): SiLU()    (2): PixelShuffle(upscale_factor=2)  )), conv=Conv2d(8, 32, kernel_size=(1, 1), stride=(1, 1)), self._backward_hooks=OrderedDict(), self._backward_pre_hooks=OrderedDict(), self._buffers=OrderedDict(), self._forward_hooks=OrderedDict(), self._forward_hooks_always_called=OrderedDict(), self._forward_hooks_with_kwargs=OrderedDict(), self._forward_pre_hooks=OrderedDict(), self._forward_pre_hooks_with_kwargs=OrderedDict(), self._is_full_backward_hook=None, self._load_state_dict_post_hooks=OrderedDict(), self._load_state_dict_pre_hooks=OrderedDict(), self._modules=OrderedDict([('net', Sequential(  (0): Conv2d(8, 32, kernel_size=(1, 1), stride=(1, 1))  (1): SiLU()  (2): PixelShuffle(upscale_factor=2)))]), self._non_persistent_buffers_set=set(), self._parameters=OrderedDict(), self._state_dict_hooks=OrderedDict(), self._state_dict_pre_hooks=OrderedDict(), self.training=True)


def make_repo(path=None):
    if not path:
        path = "."
    repo = git.Repo.init(path)
    repo.config_writer().set_value("user", "name", "Test User").release()
    repo.config_writer().set_value("user", "email", "testuser@example.com").release()

    return repo

make_repo(path='/tmp/tmpbbwa2p3f')


def __get_command_output(command, cwd=None):
    """ Execute arbitrary commands.

    Parameters
    ----------
    command : list
        the command and its arguments

    cwd : string
        the directory where the command should be executed

    Returns
    -------
    output : string
        the raw output of the command executed
    """

    p = subprocess.Popen(command, stdout=subprocess.PIPE,
            stderr=subprocess.PIPE, cwd=cwd)
    p.wait()
    return p.returncode, p.stdout.read(), p.stderr.read()

__get_command_output(command=['git', 'rev-parse'], cwd='/local/rcs/XXX/code/pytrace-collector/logs/pypibugs/tried/ASPP+pelita/ASPP+pelita/pelita')

<Popen: returncode: None args: ['git', 'rev-parse']>

<Popen: returncode: 0 args: ['git', 'rev-parse']>


def clasifier(optimizer):
    X, y = make_classification(
        n_samples=1000, n_features=100, n_informative=75, random_state=1111, n_classes=2, class_sep=2.5
    )
    y = one_hot(y)

    X -= np.mean(X, axis=0)
    X /= np.std(X, axis=0)
    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.15, random_state=1111)

    model = NeuralNet(
        layers=[
            Dense(128, Parameters(init="uniform")),
            Activation("relu"),
            Dropout(0.5),
            Dense(64, Parameters(init="normal")),
            Activation("relu"),
            Dense(2),
            Activation("softmax"),
        ],
        loss="categorical_crossentropy",
        optimizer=optimizer,
        metric="accuracy",
        batch_size=64,
        max_epochs=10,
    )
    model.fit(X_train, y_train)
    predictions = model.predict(X_test)
    return roc_auc_score(y_test[:, 0], predictions[:, 0])

clasifier(optimizer={rho=0.95, eps=1e-08, lr=1.0})

{verbose=True, shuffle=False, optimizer=<mla.neuralnet.optimizers.Adadelta object at 0x7f43904a38e0>, layers=[<mla.neuralnet.layers.basic.Dense object at 0x7f43904a3610>, <mla.neuralnet.layers.basic.Activation object at 0x7f43904a33d0>, <mla.neuralnet.layers.basic.Dropout object at 0x7f43904a32b0>, <mla.neuralnet.layers.basic.Dense object at 0x7f43904a3c70>, <mla.neuralnet.layers.basic.Activation object at 0x7f43904a3550>, <mla.neuralnet.layers.basic.Dense object at 0x7f43904a3820>, <mla.neuralnet.layers.basic.Activation object at 0x7f43904a3730>], batch_size=64, max_epochs=10, _n_layers=0, log_metric=True, metric_name='accuracy', bprop_entry=-1, training=False, _initialized=False}


pp = np.pad(phi, [tuple(pw)]*ndim, mode="constant")


def _readREFullObj(fp, array, dtype):

        nbyte = HarFileIO._getEntrySize(fp)
        dataForm = '=4sii'

        V = HarFileIO._unpack_data(fp, dataForm)

        if fb(V[0]) != '    ':
            raise Exception("Encountered characters at read7D[1]")

        nrec = V[1]
        NDim = V[2]
        dataForm = "=" + ('i' * NDim)

        V = HarFileIO._unpack_data(fp, dataForm)

        if nbyte != HarFileIO._getEntrySize(fp):
            raise RuntimeError("Header corrupted read7D[0] @ %d" % fp.tell())

        oldshape = array.shape
        array = array.flatten('F')
        idata = 0
        while nrec > 1:
            nbyte = HarFileIO._getEntrySize(fp)
            dataForm = '4s15i'
            V = HarFileIO._unpack_data(fp, dataForm)

            if fb(V[0]) != '    ':
                raise RuntimeError("Encountered characters at first four positions at)SetEl")

            if nbyte != HarFileIO._getEntrySize(fp):
                raise RuntimeError('read7D data[2] corrupted')

            nbyte = HarFileIO._getEntrySize(fp)
            ndata = (nbyte - 8) // struct.calcsize(dtype)
            dataForm = '4si' + str(ndata) + dtype
            V = HarFileIO._unpack_data(fp, dataForm)

            if nbyte != HarFileIO._getEntrySize(fp):
                raise RuntimeError('read7D data[2])corrupted')

            if fb(V[0]) != '    ':
                raise RuntimeError("Encountered characters at read7D[2]")

            nrec = V[1]
            array[idata:idata + ndata] = V[2:]
            idata += ndata
        array = array.reshape(oldshape, order='F')
        return array

_readREFullObj(fp=<_io.BufferedReader name='/local/rcs/XXX/code/pytrace-collector/logs/pypibugs/tried/GEMPACKsoftware+HARPY/GEMPACKsoftware+HARPY/test_remove_header_array.har'>, array=array([[0., 0.],       [0., 0.]], dtype=float32), dtype='f')


def _write1CArray(fp : BinaryIO, array : np.array, vecDim : int, strLen : int):
        maxwrt = 29996
        maxPerLine = maxwrt // strLen
        nrec = (vecDim - 1) // maxPerLine + 1
        nLeft = vecDim
        nDone = 0
        if nrec==0:
            dataForm = '=i4siiii'
            fp.write(struct.pack(dataForm, 16, tb('    '), 1, 0, 0,16))
        while nrec > 0:
            dataForm = '=i4siii'
            nOnRec = min(nLeft, maxPerLine)
            ndata = 16 + nOnRec * strLen
            fp.write(struct.pack(dataForm, ndata, tb('    '), nrec, vecDim, nOnRec))
            dataForm = '=' + str(ndata - 16) + 'si'
            packStr = tb(''.join([array[i].ljust(strLen) for i in range(nDone,nDone + nOnRec)]))
            fp.write(struct.pack(dataForm, packStr, ndata))
            nrec -= 1
            nLeft -= nOnRec
            nDone += nOnRec

_write1CArray(fp=<_io.BufferedWriter name='test_overwrite_header.har'>, array=array(['at 2/03/2018 4:22:38 PM                                               '],      dtype='<U70'), vecDim=1, strLen=70)


def random_port():
        port = helper.random_port()
        while port in generated_ports:
            port = helper.random_port()
        generated_ports.add(port)
        return port

random_port(generated_ports=set())


def mknode(id=None, ip=None, port=None, intid=None):
    """
    Make a node.  Created a random id if not specified.
    """
    if intid is not None:
        id = pack('>l', intid)
    id = id or hashlib.sha1(str(random.getrandbits(255))).digest()
    return Node(id, ip, port)

mknode(id=None, ip=None, port=None, intid=0)


def __str__(self):
        self.reduce()
        sign = '-' if self.integer < 0 else ''
        integer_array = list(str(abs(self.integer)).rjust(self.decimals, '0'))
        index = len(integer_array) - self.decimals
        if index == 0:
            item = '0.'
        elif self.decimals < 0:
            item = '0' * (-self.decimals)
        elif self.decimals == 0:
            item = ''
        else:
            item = '.'
        integer_array.insert(index, item)
        return sign + ''.join(integer_array)

__str__(self=Precise(1393.938), self.base=10, self.decimals=3, self.integer=1393938)


idx_pad1_r = _get_idx(ndim, dim, slice(-pw[1]-1, -pw[1], None))


def from_json(cls, path: Union[str, Path], **kwargs: Any) -> Self:
        with open(path, encoding="utf-8") as fp:
            json_kwargs = json.load(fp)
        if "condense_ratio" in json_kwargs:  # legacy name
            json_kwargs["rope_condense_ratio"] = json_kwargs.pop("condense_ratio")
        if "condense_ratio" in kwargs:  # legacy name
            kwargs["rope_condense_ratio"] = kwargs.pop("condense_ratio")
        if "org" in json_kwargs:  # legacy name
            json_kwargs["hf_config"] = {"name": json_kwargs["name"], "org": json_kwargs.pop("org")}
        if "org" in kwargs:  # legacy name
            kwargs["hf_config"] = {"name": kwargs.get("name", json_kwargs["name"]), "org": kwargs.pop("org")}
        json_kwargs.update(kwargs)
        return cls(**json_kwargs)

from_json(cls=<class 'lit_gpt.config.Config'>, path=PosixPath('/tmp/pytest-of-XXX/pytest-193/test_main_KeyboardInterrupt_0/checkpoints/tmp/lit_config.json'), kwargs={})

{'block_size': 128, 'vocab_size': 50, 'n_layer': 2, 'n_head': 4, 'n_embd': 8, 'rotary_percentage': 1}


def partition(a, lo, hi):
        i = lo
        j = hi

        while True:
            while not util.less(a[lo], a[i]):
                i += 1
                if i >= hi:
                    break

            while util.less(a[lo], a[j]):
                j -= 1
                if j <= lo:
                    break

            if i >= j:
                break

            util.exchange(a, i, j)

        util.exchange(a, lo, j)
        return j

partition(a=[4, 2, 1, 23, 4, 5, 6, 7, 8, 9, 20, 11, 13, 34, 66], lo=0, hi=14)


def det_hess(u):
    """
    Get the determinant of the Hessian matrix of `u`.

    Parameters
    ----------
    * `u` : numpy.ndarray
        The ndarray input with shape (n0+2, n1+2, ..., nd1+2).

    Returns
    -------
    * numpy.ndarray
        The ndarray of the second grad of `u` with shape (n0, n1, ..., nd1).
    """
    ndim = np.ndim(u)
    inshape = np.asarray(u.shape)
    outshape = list(inshape - 2)

    # obtain the second gradient per each pairs of axes
    hess_unarranged = np.zeros([ndim, ndim] + outshape)
    for i in range(ndim):
        for j in range(i,ndim):
            grad2_val = grad2(u, (i,j))
            hess_unarranged[i,j] = grad2_val
            hess_unarranged[j,i] = grad2_val

    # rearrange hessian to have shape: outshape + [ndim, ndim]
    perm_idx = list(range(2,ndim+2)) + list(range(2))
    hess = np.transpose(hess_unarranged, perm_idx)

    # calculate and return the determinant
    return np.linalg.det(hess)

det_hess(u=array([  0.,   1.,   4.,   9.,  16.,  25.,  36.,  49.,  64.,  81., 100.,       121., 144., 169., 196., 225., 256., 289., 324., 361., 400., 441.,       484., 529., 576., 625., 676., 729., 784., 841., 900., 961.]))


def compute_loc(idx, shape):
    loc = [0] * len(shape)
    for i in range(len(shape)):
        prod = int(np.prod(shape[i + 1:]))
        loc[i] = idx // prod
        idx = idx % prod
    return tuple(loc)

compute_loc(idx=0, shape=(2, 4))


def dtype_description(hdf_dt):
    """A slightly longer description, suitable for a tooltip

    Can return None
    """
    size = hdf_dt.get_size()

    if isinstance(hdf_dt, h5t.TypeIntegerID):
        # Check normal int & uint dtypes first
        for candidate, descr in int_types_by_size().get(size, ()):
            if hdf_dt == candidate:
                un = 'un' if hdf_dt.get_sign() == h5t.SGN_NONE else ''
                return '{}-bit {}signed integer'.format(size * 8, un)

    elif isinstance(hdf_dt, h5t.TypeFloatID):
        # Check normal float dtypes first
        for candidate, descr in float_types_by_size().get(size, ()):
            if hdf_dt == candidate:
                return '{}-bit floating point'.format(size * 8)

    return None

dtype_description(hdf_dt=REPR FAILED)


def match_but_for_leading_whitespace(whole_lines, part_lines):
    num = len(whole_lines)

    # does the non-whitespace all agree?
    if not all(whole_lines[i].lstrip() == part_lines[i].lstrip() for i in range(num)):
        return

    # are they all offset the same?
    add = set(
        whole_lines[i][: len(whole_lines[i]) - len(part_lines[i])]
        for i in range(num)
        if whole_lines[i].strip()
    )

    if len(add) != 1:
        return

    return add.pop()

match_but_for_leading_whitespace(whole_lines=['    line1\n', '    line2\n'], part_lines=['line1\n', 'line2\n'])


def _writeSecondRecord(fp: BinaryIO, inList):
        nint = len(inList) - 4

        if len(inList[3]) != 70:
            raise ValueError("'long_name' must be precisely 70 characters long. 'long_name' is: %s (%d characters long)." % (inList[3], len(inList[3])))

        inList = [tb(x) if isinstance(x, str) else x for x in inList]
        dataForm = '=i4s2s4s70s' + 'i' * nint + 'i' # For reading it is "=4s2s4s70si"
        byteLen = struct.calcsize(dataForm) - 8
        inList.append(byteLen)
        inList.insert(0, byteLen)
        packed = struct.pack(dataForm, *inList)
        fp.write(packed)

_writeSecondRecord(fp=<_io.BufferedWriter name='test_overwrite_header.har'>, inList=['    ', '1C', 'FULL', 'Creation Date and Time                                                ', 2, 1, 70])

[b'    ', b'1C', b'FULL', b'Creation Date and Time                                                ', 2, 1, 70]

[b'    ', b'1C', b'FULL', b'Creation Date and Time                                                ', 2, 1, 70, 92]

[92, b'    ', b'1C', b'FULL', b'Creation Date and Time                                                ', 2, 1, 70, 92]


def _read2DArray(fp, data_type: str = "i", storage_type: str = None, file_dims: tuple = None):
        if storage_type == 'SPSE':
            raise TypeError('Sparse storage not allowed for 2D data form.')

        if data_type in ["i", "I"]:
            data_type = np.int32
            data_type_str = "i"
        elif data_type in ["f", "F"]:
            data_type = np.float32
            data_type_str = "f"
        else:
            raise ValueError(
                "Provided argument 'data_type' must be 'i' (integer) or 'f' (float). '%s' was provided." % data_type)

        # Note that 'order' refers to Fortran vs C (i.e. has nothing to do with floats or ints)
        array = np.ndarray(shape=file_dims[0:2], dtype=data_type, order='F')

        arraySize = array.size
        nread = 0
        while nread != arraySize:
            nbyte = HarFileIO._getEntrySize(fp)
            dataForm = "=4siiiiiii"
            V = HarFileIO._unpack_data(fp, dataForm)

            if fb(V[0]) != '    ':
                raise RuntimeError("Encountered characters at read2D loop")
            if V[2] != array.shape[0]:
                raise ValueError("Mismatching row sizes on header")
            if V[3] != array.shape[1]:
                raise ValueError("Mismatching col sizes on header")

            xsize = V[5] - V[4] + 1
            ysize = V[7] - V[6] + 1
            ndata = xsize * ysize
            nread += ndata
            dataForm = "=" + str(ndata) + data_type_str
            dat = HarFileIO._unpack_data(fp, dataForm)
            array[V[4] - 1:V[5], V[6] - 1:V[7]] = np.array(dat).reshape(xsize, ysize, order='F')

            if nbyte != HarFileIO._getEntrySize(fp):
                raise RuntimeError('Header corrupted.')

        # array = HAR_IO._read2DObj(fp, data_type, file_dims)
        array = np.ascontiguousarray(array)
        return array

_read2DArray(fp=<_io.BufferedReader name='/local/rcs/XXX/code/pytrace-collector/logs/pypibugs/tried/GEMPACKsoftware+HARPY/GEMPACKsoftware+HARPY/test_remove_header_array.har'>, data_type='i', storage_type='FULL', file_dims=(4, 4))


dataForm = "=" + str(ndata) + data_type_str


def parse_route_template(template):
    rbuilder = ["^"]
    fbuilder = []
    position = 0
    schema = {}

    for match in template_var_re_finditer(template):
        param_name = match.group("name")
        param_type = match.group("type") or "id"
        # TODO: Handle KeyError, maybe we want to use a custom error here.
        param_formatchar, param_re, param_schema = _schema_map[param_type]
        schema[param_name] = param_schema

        rbuilder.append(re.escape(template[position:match.start()]))
        rbuilder.append(param_re.format(param_name))

        fbuilder.append(template[position:match.start()])
        fbuilder.append("{")
        fbuilder.append(param_name)
        fbuilder.append(":")
        fbuilder.append(param_formatchar)
        fbuilder.append("}")

        position = match.end()

    rbuilder.append(re.escape(template[position:]))
    rbuilder.append("$")
    fbuilder.append(template[position:])

    return (valid.Schema(schema),
            re.compile("".join(rbuilder)),
            u"".join(fbuilder).format)

parse_route_template(template='get/{variable}')

{'variable': And(<class 'str'>, <function Match at 0x7f0c58d64940>)}

<re.Match object; span=(4, 14), match='{variable}'>


def join(*parts, **kwargs):
    """
    This functions tries to solve some issues when joining multiple absolute
    paths on both *nix and windows platforms.

    See tests/unit/utils/path_join_test.py for some examples on what's being
    talked about here.

    The "use_posixpath" kwarg can be be used to force joining using poxixpath,
    which is useful for Salt fileserver paths on Windows masters.
    """
    parts = [salt.utils.stringutils.to_str(part) for part in parts]

    kwargs = salt.utils.args.clean_kwargs(**kwargs)
    use_posixpath = kwargs.pop("use_posixpath", False)
    if kwargs:
        salt.utils.args.invalid_kwargs(kwargs)

    pathlib = posixpath if use_posixpath else os.path

    # Normalize path converting any os.sep as needed
    parts = [pathlib.normpath(p) for p in parts]

    try:
        root = parts.pop(0)
    except IndexError:
        # No args passed to func
        return ""

    root = salt.utils.stringutils.to_unicode(root)
    if not parts:
        ret = root
    else:
        stripped = [p.lstrip(os.sep) for p in parts]
        ret = pathlib.join(root, *salt.utils.data.decode(stripped))
    return pathlib.normpath(ret)

join(parts=('/home/XXX/.gdrive-downloader', 'true'), kwargs={})

<module 'posixpath' from '/local/rcs/XXX/miniforge3/envs/saltstack+salt/lib/python3.9/posixpath.py'>


def _ParseFn(args):
    """Parses the list of `args` into (varargs, kwargs), remaining_args."""
    kwargs, remaining_kwargs, remaining_args = _ParseKeywordArgs(
        args, all_args, fn_spec.varkw)

    # Note: _ParseArgs modifies kwargs.
    parsed_args, kwargs, remaining_args, capacity = _ParseArgs(
        fn_spec.args, fn_spec.defaults, num_required_args, kwargs,
        remaining_args, metadata)

    if fn_spec.varargs or fn_spec.varkw:
      # If we're allowed *varargs or **kwargs, there's always capacity.
      capacity = True

    extra_kw = set(kwargs) - set(fn_spec.kwonlyargs)
    if fn_spec.varkw is None and extra_kw:
      raise FireError('Unexpected kwargs present:', extra_kw)

    missing_kwonly = set(required_kwonly) - set(kwargs)
    if missing_kwonly:
      raise FireError('Missing required flags:', missing_kwonly)

    # If we accept *varargs, then use all remaining arguments for *varargs.
    if fn_spec.varargs is not None:
      varargs, remaining_args = remaining_args, []
    else:
      varargs = []

    for index, value in enumerate(varargs):
      varargs[index] = _ParseValue(value, None, None, metadata)

    varargs = parsed_args + varargs
    remaining_args += remaining_kwargs

    consumed_args = args[:len(args) - len(remaining_args)]
    return (varargs, kwargs), consumed_args, remaining_args, capacity

_ParseFn(args=['x'], all_args=[], fn_spec={args=[], varargs=None, varkw='cli_args', defaults=(), kwonlyargs=[], kwonlydefaults={}, annotations={}}, metadata={'ACCEPTS_POSITIONAL_ARGS': False}, num_required_args=0, required_kwonly=set())


def load_permissions(apilevel, permtype='permissions'):
    """
    Load the Permissions for the given apilevel.

    The permissions lists are generated using this tool: https://github.com/U039b/aosp_permissions_extraction

    Has a fallback to select the maximum or minimal available API level.
    For example, if 28 is requested but only 26 is available, 26 is returned.
    If 5 is requested but 16 is available, 16 is returned.

    If an API level is requested which is in between of two API levels we got,
    the lower level is returned. For example, if 5,6,7,10 is available and 8 is
    requested, 7 is returned instead.

    :param apilevel:  integer value of the API level
    :param permtype: either load permissions (:code:`'permissions'`) or
    permission groups (:code:`'groups'`)
    :return: a dictionary of {Permission Name: {Permission info}
    """

    if permtype not in ['permissions', 'groups']:
        raise ValueError("The type of permission list is not known.")

    # Usually apilevel is supplied as string...
    apilevel = int(apilevel)

    root = os.path.dirname(os.path.realpath(__file__))
    permissions_file = os.path.join(root, "aosp_permissions", "permissions_{}.json".format(apilevel))

    levels = filter(lambda x: re.match(r'^permissions_\d+\.json$', x), os.listdir(os.path.join(root, "aosp_permissions")))
    levels = list(map(lambda x: int(x[:-5].split('_')[1]), levels))

    if not levels:
        logger.error("No Permissions available, can not load!")
        return {}

    logger.debug("Available API levels: {}".format(", ".join(map(str, sorted(levels)))))

    if not os.path.isfile(permissions_file):
        if apilevel > max(levels):
            logger.warning("Requested API level {} is larger than maximum we have, returning API level {} instead.".format(apilevel, max(levels)))
            return load_permissions(max(levels), permtype)
        if apilevel < min(levels):
            logger.warning("Requested API level {} is smaller than minimal we have, returning API level {} instead.".format(apilevel, max(levels)))
            return load_permissions(min(levels), permtype)

        # Missing level between existing ones, return the lower level
        lower_level = max(filter(lambda x: x < apilevel, levels))
        logger.warning("Requested API Level could not be found, using {} instead".format(lower_level))
        return load_permissions(lower_level, permtype)

    with open(permissions_file, "r") as fp:
        return json.load(fp)[permtype]

load_permissions(apilevel='25', permtype='permissions')


def _process_namespace(name, namespaces, ns_sep=':', attr_prefix='@'):
    if not namespaces:
        return name
    try:
        ns, name = name.rsplit(ns_sep, 1)
    except ValueError:
        pass
    else:
        ns_res = namespaces.get(ns.strip(attr_prefix))
        name = '{}{}{}{}'.format(
            attr_prefix if ns.startswith(attr_prefix) else '',
            ns_res, ns_sep, name) if ns_res else name
    return name

_process_namespace(name='http://defaultns.com/:root', namespaces={'http://defaultns.com/': '', 'http://a.com/': 'a', 'http://b.com/': 'b'}, ns_sep=':', attr_prefix='@')


def _search_param_in_docstr(docstr, param_str):
    """
    Search `docstr` for type(-s) of `param_str`.

    >>> _search_param_in_docstr(':type param: int', 'param')
    ['int']
    >>> _search_param_in_docstr('@type param: int', 'param')
    ['int']
    >>> _search_param_in_docstr(
    ...   ':type param: :class:`threading.Thread`', 'param')
    ['threading.Thread']
    >>> bool(_search_param_in_docstr('no document', 'param'))
    False
    >>> _search_param_in_docstr(':param int param: some description', 'param')
    ['int']

    """
    # look at #40 to see definitions of those params
    patterns = [re.compile(p % re.escape(param_str))
                for p in DOCSTRING_PARAM_PATTERNS]
    for pattern in patterns:
        match = pattern.search(docstr)
        if match:
            return [_strip_rst_role(match.group(1))]

    return _search_param_in_numpydocstr(docstr, param_str)

_search_param_in_docstr(docstr=':type param: int', param_str='param')

<re.Match object; span=(0, 16), match=':type param: int'>


def _sort(a, aux, lo, hi):
        if lo >= hi:
            return

        if hi - lo + 1 < MergeSort.CUTOFF:
            InsertionSort.sort(a, lo, hi)
            return

        mid = lo + (hi - lo) // 2
        MergeSort._sort(a, aux, lo, mid)
        MergeSort._sort(a, aux, mid + 1, hi)
        MergeSort._merge(a, aux, lo, mid, hi)

_sort(a=[4, 2, 1, 23, 4, 5, 6, 7, 8, 9, 20, 11, 13, 34, 66], aux=[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], lo=0, hi=7)


def getblockimpl(lines, first, last, pilcrow):
    max = len(lines) - 1
    first -= 1
    last -= 1
    i = first
    while i < max and not hastext(lines[i]):
        if i >= last and istoplevel(lines[i + 1]):
            return None, None, '# Nothing to send.' + pilcrow + eol
        i += 1
    while last < max and not istoplevel(lines[last + 1]):
        last += 1
    while first < last and not hastext(lines[first]):
        first += 1
    while first and not istoplevel(lines[first]):
        first -= 1
    lines[last] # Check for out of range.
    return first, last, eol.join(l for l in lines[first:last + 1] if hastext(l)) + pilcrow + eol

getblockimpl(lines=['', 'hello', 'function with', ' indented block', 'class with', '', '  block after blank', '  \tand its own indented block', '\t', '  and back again after a wrong blank', '', 'something else', '\t', ' \t', 'last'], first=10, last=11, pilcrow='')


def format_pair(prefix, arg, value):
    if arg is _arg_source_missing:
        arg_lines = []
        value_prefix = prefix
    else:
        arg_lines = indented_lines(prefix, arg)
        value_prefix = arg_lines[-1] + ': '

    looksLikeAString = value[0] + value[-1] in ["''", '""']
    if looksLikeAString:  # Align the start of multiline strings.
        value = prefixLinesAfterFirst(' ', value)

    value_lines = indented_lines(value_prefix, value)
    lines = arg_lines[:-1] + value_lines
    return '\n'.join(lines)

format_pair(prefix='    ', arg='multilineStr', value="'line1\nline2'")


def encode_z2(self, input: Tensor) -> List[Tensor]:
        """
        Encodes the input by passing through the encoder network
        and returns the latent codes.
        :param input: (Tensor) Input tensor to encoder [N x C x H x W]
        :return: (Tensor) List of latent codes
        """
        result = self.encoder_z2_layers(input)
        result = torch.flatten(result, start_dim=1)

        # Split the result into mu and var components
        # of the latent Gaussian distribution
        z2_mu = self.fc_z2_mu(result)
        z2_log_var = self.fc_z2_var(result)

        return [z2_mu, z2_log_var]

encode_z2(self=HVAE(  (encoder_z2_layers): Sequential(    (0): Sequential(      (0): Conv2d(3, 32, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))      (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (1): Sequential(      (0): Conv2d(32, 64, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))      (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (2): Sequential(      (0): Conv2d(64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))      (1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (3): Sequential(      (0): Conv2d(128, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))      (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (4): Sequential(      (0): Conv2d(256, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))      (1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )  )  (fc_z2_mu): Linear(in_features=2048, out_features=20, bias=True)  (fc_z2_var): Linear(in_features=2048, out_features=20, bias=True)  (embed_z2_code): Linear(in_features=20, out_features=4096, bias=True)  (embed_data): Conv2d(3, 3, kernel_size=(1, 1), stride=(1, 1))  (encoder_z1_layers): Sequential(    (0): Sequential(      (0): Conv2d(4, 32, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))      (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (1): Sequential(      (0): Conv2d(32, 64, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))      (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (2): Sequential(      (0): Conv2d(64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))      (1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (3): Sequential(      (0): Conv2d(128, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))      (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (4): Sequential(      (0): Conv2d(256, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))      (1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )  )  (fc_z1_mu): Linear(in_features=2048, out_features=10, bias=True)  (fc_z1_var): Linear(in_features=2048, out_features=10, bias=True)  (recons_z1_mu): Linear(in_features=20, out_features=10, bias=True)  (recons_z1_log_var): Linear(in_features=20, out_features=10, bias=True)  (debed_z1_code): Linear(in_features=10, out_features=1024, bias=True)  (debed_z2_code): Linear(in_features=20, out_features=1024, bias=True)  (decoder): Sequential(    (0): Sequential(      (0): ConvTranspose2d(512, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), output_padding=(1, 1))      (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (1): Sequential(      (0): ConvTranspose2d(256, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), output_padding=(1, 1))      (1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (2): Sequential(      (0): ConvTranspose2d(128, 64, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), output_padding=(1, 1))      (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )    (3): Sequential(      (0): ConvTranspose2d(64, 32, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), output_padding=(1, 1))      (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)      (2): LeakyReLU(negative_slope=0.01)    )  )  (final_layer): Sequential(    (0): ConvTranspose2d(32, 32, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), output_padding=(1, 1))    (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)    (3): Conv2d(32, 3, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))    (4): Tanh()  )), input=tensor([[[[-1.8936,  0.4196,  1.2842,  ...,  1.2066,  0.7782,  1.3469],          [-0.8224,  0.4527, -0.0577,  ...,  1.4756,  1.1761, -0.7108],          [-1.6315,  0.8043,  2.6413,  ..., -1.3240,  0.9065, -0.8693],          ...,          [ 0.0383,  1.3328, -0.1353,  ..., -1.1770, -0.1116, -0.3206],          [-1.0151,  0.2528, -0.3343,  ..., -0.0416, -0.9868,  1.1128],          [-1.0028, -1.1892,  0.7485,  ...,  0.7481,  0.0498, -0.0744]],         [[-0.2884, -0.2759,  1.1363,  ...,  1.1605,  0.0775, -1.4702],          [-1.6069, -0.0638, -0.8533,  ...,  0.2473,  1.4863,  0.0158],          [ 2.5342,  0.6854,  1.1528,  ...,  0.6568, -0.5946,  0.1834],          ...,          [ 0.3353,  0.0865, -0.9538,  ..., -1.2018, -1.4665, -0.3575],          [-0.3430, -1.4583, -0.7826,  ...,  2.1256, -0.3949,  0.1570],          [ 0.9678, -1.7589,  0.9122,  ...,  0.4558,  1.4173,  1.6013]],         [[-0.7772,  0.4630,  0.6564,  ..., -1.8964, -2.1647, -0.5534],          [ 0.4105,  0.5011,  1.2573,  ...,  0.3236,  0.9842,  1.0977],          [-0.7429,  1.0571,  0.6543,  ...,  0.3400, -0.2293, -0.5091],          ...,          [ 0.1505, -0.3082,  0.3324,  ...,  0.6619, -0.0814,  0.6934],          [-1.7772, -1.9982,  0.5367,  ...,  0.1102, -0.7138,  0.8455],          [ 0.0332, -0.3734, -1.5362,  ..., -1.2318, -0.4791, -1.6185]]],        [[[ 0.0160,  0.7455,  0.3158,  ..., -0.0860,  0.2626,  1.1479],          [-0.4146,  1.8953,  0.0897,  ..., -0.3885,  1.2116, -1.0973],          [-0.6872, -1.8162,  0.1554,  ..., -1.7179,  1.0908,  0.8081],          ...,          [ 0.1696, -1.8558,  0.1469,  ...,  0.3142,  2.3475,  0.4731],          [ 0.1529, -1.0062,  0.7995,  ...,  0.2377,  0.8177,  0.9386],          [ 0.0217, -0.4921, -0.8103,  ...,  2.6341, -0.5868, -0.0105]],         [[ 1.4296,  0.8156, -0.1442,  ..., -1.5969,  0.2655,  1.3892],          [ 0.0990, -0.1513, -0.2613,  ..., -0.5251, -0.1855, -0.1718],          [ 1.4328,  0.2132, -1.6794,  ...,  0.8488,  1.4868, -1.7160],          ...,          [-0.0693,  0.1337,  1.1090,  ..., -1.3724, -2.5672,  1.0906],          [ 0.2655,  0.3716, -0.1245,  ...,  0.7961, -0.3946,  1.0061],          [-0.8810,  0.1413, -0.6222,  ..., -0.4905, -0.3606, -1.0626]],         [[-0.0948, -0.0486,  0.0157,  ...,  2.1004, -1.5879, -0.2739],          [-0.2656,  1.1246,  1.0048,  ...,  0.4671, -0.1705, -0.7745],          [-0.3759,  0.2029, -1.7732,  ..., -0.2653, -2.3626, -1.0251],          ...,          [ 1.4900, -1.3544,  1.5717,  ..., -1.9406,  0.7142, -0.6601],          [ 0.0120,  0.9058,  0.0421,  ...,  1.5632,  1.1624,  0.1822],          [-0.9256,  0.8344, -0.9597,  ..., -0.4188,  0.2051,  0.6043]]],        [[[-0.6292,  1.5933,  1.1558,  ..., -1.0939,  0.3556, -1.9305],          [ 2.2168,  0.9184, -0.6098,  ...,  0.1250,  0.2496,  0.5268],          [ 0.6035, -0.7713,  0.4179,  ...,  0.1061,  0.2763, -1.1580],          ...,          [ 0.6361, -0.9818,  0.2838,  ..., -0.1032, -0.1063,  0.2971],          [-0.9087, -0.8842,  1.3305,  ...,  0.7932,  1.0652, -0.1426],          [-2.2427, -0.6605,  0.9667,  ..., -0.4021, -1.1495, -0.0572]],         [[-0.1344,  0.6562,  0.4687,  ...,  0.1312,  0.5327,  0.3450],          [ 0.4334,  1.3153,  1.9282,  ...,  0.5667,  1.4108,  0.4699],          [ 0.5254, -0.2920,  1.7819,  ..., -0.5157, -0.3931, -0.8093],          ...,          [-0.5848,  0.6157,  1.1588,  ...,  0.5449, -1.0721,  0.5217],          [ 0.3995,  0.2235,  0.2506,  ..., -0.3272,  0.8440,  0.4930],          [-0.8263, -0.0577, -0.9538,  ..., -1.2877,  1.6349,  1.3202]],         [[ 0.6381, -1.4398, -0.7744,  ...,  1.2140,  0.9096, -0.6753],          [ 0.4048, -2.5466,  1.1450,  ...,  0.5030,  0.4698,  0.5673],          [-0.0358,  0.2170, -0.6245,  ..., -0.4325,  0.5767, -0.2755],          ...,          [ 0.3158, -1.6521,  0.9919,  ...,  2.0221, -1.2303,  0.4039],          [ 0.2354, -0.9477, -0.6534,  ..., -0.5600, -1.3333,  0.5403],          [ 1.1120, -2.0893, -1.3755,  ...,  1.9954,  0.8662, -1.6815]]],        ...,        [[[ 1.2590,  0.1363, -0.6754,  ..., -0.8791,  1.2095, -0.1012],          [ 2.3050, -0.1425, -0.9242,  ..., -0.7649, -0.7488,  0.6949],          [ 0.4214,  0.3215, -2.3866,  ..., -0.5338,  0.4479, -0.8477],          ...,          [ 0.1499, -0.5690,  0.0180,  ...,  1.6823,  0.3056, -0.6216],          [-0.3886,  0.6260, -0.6109,  ...,  0.0346,  0.2253, -0.5103],          [-0.1228,  0.1755,  0.1834,  ..., -2.4334, -0.4735,  0.3909]],         [[-0.5463,  0.1758,  0.3594,  ..., -1.5349, -0.1570,  0.0686],          [-0.1374,  1.0209, -0.5383,  ..., -0.9182, -0.2435, -0.2757],          [ 0.6611, -0.2038, -1.1446,  ..., -1.4481,  0.6467, -0.6618],          ...,          [-0.2686,  0.0405, -0.1467,  ...,  1.0902,  0.5896, -0.7653],          [-1.9040,  0.0179,  1.1207,  ..., -0.2288, -1.6366,  1.1901],          [ 0.1832,  0.3417,  0.9626,  ...,  0.3803,  0.7350, -0.3099]],         [[-0.9969, -0.5508, -0.4998,  ...,  0.6936,  1.6136,  0.3220],          [-0.0770,  1.3169,  0.1651,  ...,  1.7485,  0.7226, -0.2574],          [ 0.0803, -0.9462,  1.2021,  ..., -0.0972,  0.0682,  0.1344],          ...,          [-1.7403,  1.7113,  3.0679,  ...,  1.0908,  1.0581, -0.5222],          [ 0.4028, -1.0059, -2.1630,  ..., -0.0682,  0.5164,  1.6635],          [ 2.7208, -0.5648, -0.1862,  ..., -1.5719, -0.3802,  0.2935]]],        [[[ 0.8409, -0.7438, -1.0032,  ...,  0.1318, -0.4320,  0.4415],          [ 1.5099, -1.1524,  1.1499,  ..., -1.6440, -0.0798,  0.6606],          [ 1.0045, -0.9537,  1.1316,  ..., -1.3674, -0.9758, -0.0078],          ...,          [ 0.3468,  0.5475, -0.7472,  ...,  1.5581,  0.2254,  0.8593],          [-0.0717,  0.4480,  1.3726,  ...,  0.6523, -1.1766, -0.3996],          [-1.6755, -0.8156,  0.5543,  ..., -1.4320,  0.4414, -0.1122]],         [[ 1.3380, -1.1875,  0.5178,  ...,  0.3197, -0.7422,  0.5158],          [-1.1908,  1.4007,  0.8123,  ..., -1.4919, -1.7273, -0.0800],          [-1.3901, -0.3755,  0.0897,  ...,  1.6764, -1.3049, -0.0079],          ...,          [-0.1568, -1.4188, -0.7429,  ..., -1.6218,  0.6604,  1.6529],          [ 0.6247,  0.6867, -1.0114,  ..., -0.0381,  0.1275, -0.8645],          [-0.0610,  0.5389,  0.3990,  ..., -1.0361, -2.4215, -0.6971]],         [[ 0.7516, -1.9676,  1.4015,  ...,  0.5336,  1.0704,  1.7422],          [-1.6988, -1.2900, -0.6327,  ..., -0.9592,  1.5238,  0.2264],          [ 1.0729,  0.8629, -0.5775,  ..., -0.7702, -0.0271,  0.7063],          ...,          [ 0.4322,  1.7422,  0.5302,  ...,  1.7000,  1.1956,  0.4742],          [ 0.4945,  0.2216, -1.3425,  ..., -0.9851,  0.1730,  1.0625],          [-0.6886, -0.1384, -0.4764,  ...,  0.3615,  0.5811,  0.4600]]],        [[[-0.8843,  0.8162, -0.5182,  ...,  0.3598, -0.5506, -0.5101],          [-0.4878, -1.6419, -0.5060,  ...,  1.8825, -0.1327,  0.3133],          [ 0.4729,  0.4339,  1.0820,  ..., -1.3299, -0.7871, -0.6630],          ...,          [-1.1407,  0.0937,  1.0086,  ...,  0.2854,  0.4308,  1.1841],          [ 0.3772, -0.8250,  1.1873,  ...,  0.1146, -0.7267,  0.4953],          [-0.3229, -1.0868, -0.0125,  ..., -0.6451,  1.2862, -1.9553]],         [[-0.4689, -0.3666, -0.3470,  ..., -0.0699, -1.9161, -0.4589],          [-0.4437,  0.9324, -2.2532,  ...,  0.1354,  1.1196, -0.0070],          [ 1.1838,  0.3169,  1.2460,  ..., -0.9694,  0.3669,  0.7385],          ...,          [-1.7229,  0.6705,  0.0683,  ...,  1.0143,  0.6204, -1.1060],          [ 0.2528, -2.3181, -0.0774,  ..., -0.3610,  0.4452, -0.3837],          [-1.2532, -0.3006,  0.6067,  ..., -0.8430, -0.5149,  0.8442]],         [[-1.8861, -0.4756,  0.9849,  ...,  0.7845, -0.8080, -0.6442],          [-0.7163,  0.8101, -0.1905,  ...,  0.3361,  0.6133, -0.1919],          [-0.7476, -0.5810, -0.1615,  ..., -0.5631,  0.0637, -0.1969],          ...,          [-0.9449, -0.9001,  1.0701,  ...,  0.4150,  0.1768, -0.4086],          [ 0.5126,  1.4135,  1.6389,  ..., -0.6361, -0.3524, -0.2547],          [ 0.0541, -1.5909, -1.5796,  ..., -0.1662, -0.7188, -0.6655]]]]), self._backward_hooks=OrderedDict(), self._backward_pre_hooks=OrderedDict(), self._buffers=OrderedDict(), self._forward_hooks=OrderedDict(), self._forward_hooks_always_called=OrderedDict(), self._forward_hooks_with_kwargs=OrderedDict(), self._forward_pre_hooks=OrderedDict(), self._forward_pre_hooks_with_kwargs=OrderedDict(), self._is_full_backward_hook=None, self._load_state_dict_post_hooks=OrderedDict(), self._load_state_dict_pre_hooks=OrderedDict(), self._modules=OrderedDict([('encoder_z2_layers', Sequential(  (0): Sequential(    (0): Conv2d(3, 32, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))    (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (1): Sequential(    (0): Conv2d(32, 64, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))    (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (2): Sequential(    (0): Conv2d(64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))    (1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (3): Sequential(    (0): Conv2d(128, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))    (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (4): Sequential(    (0): Conv2d(256, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))    (1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  ))), ('fc_z2_mu', Linear(in_features=2048, out_features=20, bias=True)), ('fc_z2_var', Linear(in_features=2048, out_features=20, bias=True)), ('embed_z2_code', Linear(in_features=20, out_features=4096, bias=True)), ('embed_data', Conv2d(3, 3, kernel_size=(1, 1), stride=(1, 1))), ('encoder_z1_layers', Sequential(  (0): Sequential(    (0): Conv2d(4, 32, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))    (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (1): Sequential(    (0): Conv2d(32, 64, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))    (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (2): Sequential(    (0): Conv2d(64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))    (1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (3): Sequential(    (0): Conv2d(128, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))    (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (4): Sequential(    (0): Conv2d(256, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))    (1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  ))), ('fc_z1_mu', Linear(in_features=2048, out_features=10, bias=True)), ('fc_z1_var', Linear(in_features=2048, out_features=10, bias=True)), ('recons_z1_mu', Linear(in_features=20, out_features=10, bias=True)), ('recons_z1_log_var', Linear(in_features=20, out_features=10, bias=True)), ('debed_z1_code', Linear(in_features=10, out_features=1024, bias=True)), ('debed_z2_code', Linear(in_features=20, out_features=1024, bias=True)), ('decoder', Sequential(  (0): Sequential(    (0): ConvTranspose2d(512, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), output_padding=(1, 1))    (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (1): Sequential(    (0): ConvTranspose2d(256, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), output_padding=(1, 1))    (1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (2): Sequential(    (0): ConvTranspose2d(128, 64, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), output_padding=(1, 1))    (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  )  (3): Sequential(    (0): ConvTranspose2d(64, 32, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), output_padding=(1, 1))    (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)    (2): LeakyReLU(negative_slope=0.01)  ))), ('final_layer', Sequential(  (0): ConvTranspose2d(32, 32, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), output_padding=(1, 1))  (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)  (2): LeakyReLU(negative_slope=0.01)  (3): Conv2d(32, 3, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))  (4): Tanh()))]), self._non_persistent_buffers_set=set(), self._parameters=OrderedDict(), self._state_dict_hooks=OrderedDict(), self._state_dict_pre_hooks=OrderedDict(), self.img_size=64, self.latent1_dim=10, self.latent2_dim=20, self.training=True)

Input: tensor([[[[-1.8936,  0.4196,  1.2842,  ...,  1.2066,  0.7782,  1.3469],          [-0.8224,  0.4527, -0.0577,  ...,  1.4756,  1.1761, -0.7108],          [-1.6315,  0.8043,  2.6413,  ..., -1.3240,  0.9065, -0.8693],          ...,          [ 0.0383,  1.3328, -0.1353,  ..., -1.1770, -0.1116, -0.3206],          [-1.0151,  0.2528, -0.3343,  ..., -0.0416, -0.9868,  1.1128],          [-1.0028, -1.1892,  0.7485,  ...,  0.7481,  0.0498, -0.0744]],         [[-0.2884, -0.2759,  1.1363,  ...,  1.1605,  0.0775, -1.4702],          [-1.6069, -0.0638, -0.8533,  ...,  0.2473,  1.4863,  0.0158],          [ 2.5342,  0.6854,  1.1528,  ...,  0.6568, -0.5946,  0.1834],          ...,          [ 0.3353,  0.0865, -0.9538,  ..., -1.2018, -1.4665, -0.3575],          [-0.3430, -1.4583, -0.7826,  ...,  2.1256, -0.3949,  0.1570],          [ 0.9678, -1.7589,  0.9122,  ...,  0.4558,  1.4173,  1.6013]],         [[-0.7772,  0.4630,  0.6564,  ..., -1.8964, -2.1647, -0.5534],          [ 0.4105,  0.5011,  1.2573,  ...,  0.3236,  0.9842,  1.0977],          [-0.7429,  1.0571,  0.6543,  ...,  0.3400, -0.2293, -0.5091],          ...,          [ 0.1505, -0.3082,  0.3324,  ...,  0.6619, -0.0814,  0.6934],          [-1.7772, -1.9982,  0.5367,  ...,  0.1102, -0.7138,  0.8455],          [ 0.0332, -0.3734, -1.5362,  ..., -1.2318, -0.4791, -1.6185]]],        [[[ 0.0160,  0.7455,  0.3158,  ..., -0.0860,  0.2626,  1.1479],          [-0.4146,  1.8953,  0.0897,  ..., -0.3885,  1.2116, -1.0973],          [-0.6872, -1.8162,  0.1554,  ..., -1.7179,  1.0908,  0.8081],          ...,          [ 0.1696, -1.8558,  0.1469,  ...,  0.3142,  2.3475,  0.4731],          [ 0.1529, -1.0062,  0.7995,  ...,  0.2377,  0.8177,  0.9386],          [ 0.0217, -0.4921, -0.8103,  ...,  2.6341, -0.5868, -0.0105]],         [[ 1.4296,  0.8156, -0.1442,  ..., -1.5969,  0.2655,  1.3892],          [ 0.0990, -0.1513, -0.2613,  ..., -0.5251, -0.1855, -0.1718],          [ 1.4328,  0.2132, -1.6794,  ...,  0.8488,  1.4868, -1.7160],          ...,          [-0.0693,  0.1337,  1.1090,  ..., -1.3724, -2.5672,  1.0906],          [ 0.2655,  0.3716, -0.1245,  ...,  0.7961, -0.3946,  1.0061],          [-0.8810,  0.1413, -0.6222,  ..., -0.4905, -0.3606, -1.0626]],         [[-0.0948, -0.0486,  0.0157,  ...,  2.1004, -1.5879, -0.2739],          [-0.2656,  1.1246,  1.0048,  ...,  0.4671, -0.1705, -0.7745],          [-0.3759,  0.2029, -1.7732,  ..., -0.2653, -2.3626, -1.0251],          ...,          [ 1.4900, -1.3544,  1.5717,  ..., -1.9406,  0.7142, -0.6601],          [ 0.0120,  0.9058,  0.0421,  ...,  1.5632,  1.1624,  0.1822],          [-0.9256,  0.8344, -0.9597,  ..., -0.4188,  0.2051,  0.6043]]],        [[[-0.6292,  1.5933,  1.1558,  ..., -1.0939,  0.3556, -1.9305],          [ 2.2168,  0.9184, -0.6098,  ...,  0.1250,  0.2496,  0.5268],          [ 0.6035, -0.7713,  0.4179,  ...,  0.1061,  0.2763, -1.1580],          ...,          [ 0.6361, -0.9818,  0.2838,  ..., -0.1032, -0.1063,  0.2971],          [-0.9087, -0.8842,  1.3305,  ...,  0.7932,  1.0652, -0.1426],          [-2.2427, -0.6605,  0.9667,  ..., -0.4021, -1.1495, -0.0572]],         [[-0.1344,  0.6562,  0.4687,  ...,  0.1312,  0.5327,  0.3450],          [ 0.4334,  1.3153,  1.9282,  ...,  0.5667,  1.4108,  0.4699],          [ 0.5254, -0.2920,  1.7819,  ..., -0.5157, -0.3931, -0.8093],          ...,          [-0.5848,  0.6157,  1.1588,  ...,  0.5449, -1.0721,  0.5217],          [ 0.3995,  0.2235,  0.2506,  ..., -0.3272,  0.8440,  0.4930],          [-0.8263, -0.0577, -0.9538,  ..., -1.2877,  1.6349,  1.3202]],         [[ 0.6381, -1.4398, -0.7744,  ...,  1.2140,  0.9096, -0.6753],          [ 0.4048, -2.5466,  1.1450,  ...,  0.5030,  0.4698,  0.5673],          [-0.0358,  0.2170, -0.6245,  ..., -0.4325,  0.5767, -0.2755],          ...,          [ 0.3158, -1.6521,  0.9919,  ...,  2.0221, -1.2303,  0.4039],          [ 0.2354, -0.9477, -0.6534,  ..., -0.5600, -1.3333,  0.5403],          [ 1.1120, -2.0893, -1.3755,  ...,  1.9954,  0.8662, -1.6815]]],        ...,        [[[ 1.2590,  0.1363, -0.6754,  ..., -0.8791,  1.2095, -0.1012],          [ 2.3050, -0.1425, -0.9242,  ..., -0.7649, -0.7488,  0.6949],          [ 0.4214,  0.3215, -2.3866,  ..., -0.5338,  0.4479, -0.8477],          ...,          [ 0.1499, -0.5690,  0.0180,  ...,  1.6823,  0.3056, -0.6216],          [-0.3886,  0.6260, -0.6109,  ...,  0.0346,  0.2253, -0.5103],          [-0.1228,  0.1755,  0.1834,  ..., -2.4334, -0.4735,  0.3909]],         [[-0.5463,  0.1758,  0.3594,  ..., -1.5349, -0.1570,  0.0686],          [-0.1374,  1.0209, -0.5383,  ..., -0.9182, -0.2435, -0.2757],          [ 0.6611, -0.2038, -1.1446,  ..., -1.4481,  0.6467, -0.6618],          ...,          [-0.2686,  0.0405, -0.1467,  ...,  1.0902,  0.5896, -0.7653],          [-1.9040,  0.0179,  1.1207,  ..., -0.2288, -1.6366,  1.1901],          [ 0.1832,  0.3417,  0.9626,  ...,  0.3803,  0.7350, -0.3099]],         [[-0.9969, -0.5508, -0.4998,  ...,  0.6936,  1.6136,  0.3220],          [-0.0770,  1.3169,  0.1651,  ...,  1.7485,  0.7226, -0.2574],          [ 0.0803, -0.9462,  1.2021,  ..., -0.0972,  0.0682,  0.1344],          ...,          [-1.7403,  1.7113,  3.0679,  ...,  1.0908,  1.0581, -0.5222],          [ 0.4028, -1.0059, -2.1630,  ..., -0.0682,  0.5164,  1.6635],          [ 2.7208, -0.5648, -0.1862,  ..., -1.5719, -0.3802,  0.2935]]],        [[[ 0.8409, -0.7438, -1.0032,  ...,  0.1318, -0.4320,  0.4415],          [ 1.5099, -1.1524,  1.1499,  ..., -1.6440, -0.0798,  0.6606],          [ 1.0045, -0.9537,  1.1316,  ..., -1.3674, -0.9758, -0.0078],          ...,          [ 0.3468,  0.5475, -0.7472,  ...,  1.5581,  0.2254,  0.8593],          [-0.0717,  0.4480,  1.3726,  ...,  0.6523, -1.1766, -0.3996],          [-1.6755, -0.8156,  0.5543,  ..., -1.4320,  0.4414, -0.1122]],         [[ 1.3380, -1.1875,  0.5178,  ...,  0.3197, -0.7422,  0.5158],          [-1.1908,  1.4007,  0.8123,  ..., -1.4919, -1.7273, -0.0800],          [-1.3901, -0.3755,  0.0897,  ...,  1.6764, -1.3049, -0.0079],          ...,          [-0.1568, -1.4188, -0.7429,  ..., -1.6218,  0.6604,  1.6529],          [ 0.6247,  0.6867, -1.0114,  ..., -0.0381,  0.1275, -0.8645],          [-0.0610,  0.5389,  0.3990,  ..., -1.0361, -2.4215, -0.6971]],         [[ 0.7516, -1.9676,  1.4015,  ...,  0.5336,  1.0704,  1.7422],          [-1.6988, -1.2900, -0.6327,  ..., -0.9592,  1.5238,  0.2264],          [ 1.0729,  0.8629, -0.5775,  ..., -0.7702, -0.0271,  0.7063],          ...,          [ 0.4322,  1.7422,  0.5302,  ...,  1.7000,  1.1956,  0.4742],          [ 0.4945,  0.2216, -1.3425,  ..., -0.9851,  0.1730,  1.0625],          [-0.6886, -0.1384, -0.4764,  ...,  0.3615,  0.5811,  0.4600]]],        [[[-0.8843,  0.8162, -0.5182,  ...,  0.3598, -0.5506, -0.5101],          [-0.4878, -1.6419, -0.5060,  ...,  1.8825, -0.1327,  0.3133],          [ 0.4729,  0.4339,  1.0820,  ..., -1.3299, -0.7871, -0.6630],          ...,          [-1.1407,  0.0937,  1.0086,  ...,  0.2854,  0.4308,  1.1841],          [ 0.3772, -0.8250,  1.1873,  ...,  0.1146, -0.7267,  0.4953],          [-0.3229, -1.0868, -0.0125,  ..., -0.6451,  1.2862, -1.9553]],         [[-0.4689, -0.3666, -0.3470,  ..., -0.0699, -1.9161, -0.4589],          [-0.4437,  0.9324, -2.2532,  ...,  0.1354,  1.1196, -0.0070],          [ 1.1838,  0.3169,  1.2460,  ..., -0.9694,  0.3669,  0.7385],          ...,          [-1.7229,  0.6705,  0.0683,  ...,  1.0143,  0.6204, -1.1060],          [ 0.2528, -2.3181, -0.0774,  ..., -0.3610,  0.4452, -0.3837],          [-1.2532, -0.3006,  0.6067,  ..., -0.8430, -0.5149,  0.8442]],         [[-1.8861, -0.4756,  0.9849,  ...,  0.7845, -0.8080, -0.6442],          [-0.7163,  0.8101, -0.1905,  ...,  0.3361,  0.6133, -0.1919],          [-0.7476, -0.5810, -0.1615,  ..., -0.5631,  0.0637, -0.1969],          ...,          [-0.9449, -0.9001,  1.0701,  ...,  0.4150,  0.1768, -0.4086],          [ 0.5126,  1.4135,  1.6389,  ..., -0.6361, -0.3524, -0.2547],          [ 0.0541, -1.5909, -1.5796,  ..., -0.1662, -0.7188, -0.6655]]]])

Input: tensor([[[[-1.8936,  0.4196,  1.2842,  ...,  1.2066,  0.7782,  1.3469],          [-0.8224,  0.4527, -0.0577,  ...,  1.4756,  1.1761, -0.7108],          [-1.6315,  0.8043,  2.6413,  ..., -1.3240,  0.9065, -0.8693],          ...,          [ 0.0383,  1.3328, -0.1353,  ..., -1.1770, -0.1116, -0.3206],          [-1.0151,  0.2528, -0.3343,  ..., -0.0416, -0.9868,  1.1128],          [-1.0028, -1.1892,  0.7485,  ...,  0.7481,  0.0498, -0.0744]],         [[-0.2884, -0.2759,  1.1363,  ...,  1.1605,  0.0775, -1.4702],          [-1.6069, -0.0638, -0.8533,  ...,  0.2473,  1.4863,  0.0158],          [ 2.5342,  0.6854,  1.1528,  ...,  0.6568, -0.5946,  0.1834],          ...,          [ 0.3353,  0.0865, -0.9538,  ..., -1.2018, -1.4665, -0.3575],          [-0.3430, -1.4583, -0.7826,  ...,  2.1256, -0.3949,  0.1570],          [ 0.9678, -1.7589,  0.9122,  ...,  0.4558,  1.4173,  1.6013]],         [[-0.7772,  0.4630,  0.6564,  ..., -1.8964, -2.1647, -0.5534],          [ 0.4105,  0.5011,  1.2573,  ...,  0.3236,  0.9842,  1.0977],          [-0.7429,  1.0571,  0.6543,  ...,  0.3400, -0.2293, -0.5091],          ...,          [ 0.1505, -0.3082,  0.3324,  ...,  0.6619, -0.0814,  0.6934],          [-1.7772, -1.9982,  0.5367,  ...,  0.1102, -0.7138,  0.8455],          [ 0.0332, -0.3734, -1.5362,  ..., -1.2318, -0.4791, -1.6185]]],        [[[ 0.0160,  0.7455,  0.3158,  ..., -0.0860,  0.2626,  1.1479],          [-0.4146,  1.8953,  0.0897,  ..., -0.3885,  1.2116, -1.0973],          [-0.6872, -1.8162,  0.1554,  ..., -1.7179,  1.0908,  0.8081],          ...,          [ 0.1696, -1.8558,  0.1469,  ...,  0.3142,  2.3475,  0.4731],          [ 0.1529, -1.0062,  0.7995,  ...,  0.2377,  0.8177,  0.9386],          [ 0.0217, -0.4921, -0.8103,  ...,  2.6341, -0.5868, -0.0105]],         [[ 1.4296,  0.8156, -0.1442,  ..., -1.5969,  0.2655,  1.3892],          [ 0.0990, -0.1513, -0.2613,  ..., -0.5251, -0.1855, -0.1718],          [ 1.4328,  0.2132, -1.6794,  ...,  0.8488,  1.4868, -1.7160],          ...,          [-0.0693,  0.1337,  1.1090,  ..., -1.3724, -2.5672,  1.0906],          [ 0.2655,  0.3716, -0.1245,  ...,  0.7961, -0.3946,  1.0061],          [-0.8810,  0.1413, -0.6222,  ..., -0.4905, -0.3606, -1.0626]],         [[-0.0948, -0.0486,  0.0157,  ...,  2.1004, -1.5879, -0.2739],          [-0.2656,  1.1246,  1.0048,  ...,  0.4671, -0.1705, -0.7745],          [-0.3759,  0.2029, -1.7732,  ..., -0.2653, -2.3626, -1.0251],          ...,          [ 1.4900, -1.3544,  1.5717,  ..., -1.9406,  0.7142, -0.6601],          [ 0.0120,  0.9058,  0.0421,  ...,  1.5632,  1.1624,  0.1822],          [-0.9256,  0.8344, -0.9597,  ..., -0.4188,  0.2051,  0.6043]]],        [[[-0.6292,  1.5933,  1.1558,  ..., -1.0939,  0.3556, -1.9305],          [ 2.2168,  0.9184, -0.6098,  ...,  0.1250,  0.2496,  0.5268],          [ 0.6035, -0.7713,  0.4179,  ...,  0.1061,  0.2763, -1.1580],          ...,          [ 0.6361, -0.9818,  0.2838,  ..., -0.1032, -0.1063,  0.2971],          [-0.9087, -0.8842,  1.3305,  ...,  0.7932,  1.0652, -0.1426],          [-2.2427, -0.6605,  0.9667,  ..., -0.4021, -1.1495, -0.0572]],         [[-0.1344,  0.6562,  0.4687,  ...,  0.1312,  0.5327,  0.3450],          [ 0.4334,  1.3153,  1.9282,  ...,  0.5667,  1.4108,  0.4699],          [ 0.5254, -0.2920,  1.7819,  ..., -0.5157, -0.3931, -0.8093],          ...,          [-0.5848,  0.6157,  1.1588,  ...,  0.5449, -1.0721,  0.5217],          [ 0.3995,  0.2235,  0.2506,  ..., -0.3272,  0.8440,  0.4930],          [-0.8263, -0.0577, -0.9538,  ..., -1.2877,  1.6349,  1.3202]],         [[ 0.6381, -1.4398, -0.7744,  ...,  1.2140,  0.9096, -0.6753],          [ 0.4048, -2.5466,  1.1450,  ...,  0.5030,  0.4698,  0.5673],          [-0.0358,  0.2170, -0.6245,  ..., -0.4325,  0.5767, -0.2755],          ...,          [ 0.3158, -1.6521,  0.9919,  ...,  2.0221, -1.2303,  0.4039],          [ 0.2354, -0.9477, -0.6534,  ..., -0.5600, -1.3333,  0.5403],          [ 1.1120, -2.0893, -1.3755,  ...,  1.9954,  0.8662, -1.6815]]],        ...,        [[[ 1.2590,  0.1363, -0.6754,  ..., -0.8791,  1.2095, -0.1012],          [ 2.3050, -0.1425, -0.9242,  ..., -0.7649, -0.7488,  0.6949],          [ 0.4214,  0.3215, -2.3866,  ..., -0.5338,  0.4479, -0.8477],          ...,          [ 0.1499, -0.5690,  0.0180,  ...,  1.6823,  0.3056, -0.6216],          [-0.3886,  0.6260, -0.6109,  ...,  0.0346,  0.2253, -0.5103],          [-0.1228,  0.1755,  0.1834,  ..., -2.4334, -0.4735,  0.3909]],         [[-0.5463,  0.1758,  0.3594,  ..., -1.5349, -0.1570,  0.0686],          [-0.1374,  1.0209, -0.5383,  ..., -0.9182, -0.2435, -0.2757],          [ 0.6611, -0.2038, -1.1446,  ..., -1.4481,  0.6467, -0.6618],          ...,          [-0.2686,  0.0405, -0.1467,  ...,  1.0902,  0.5896, -0.7653],          [-1.9040,  0.0179,  1.1207,  ..., -0.2288, -1.6366,  1.1901],          [ 0.1832,  0.3417,  0.9626,  ...,  0.3803,  0.7350, -0.3099]],         [[-0.9969, -0.5508, -0.4998,  ...,  0.6936,  1.6136,  0.3220],          [-0.0770,  1.3169,  0.1651,  ...,  1.7485,  0.7226, -0.2574],          [ 0.0803, -0.9462,  1.2021,  ..., -0.0972,  0.0682,  0.1344],          ...,          [-1.7403,  1.7113,  3.0679,  ...,  1.0908,  1.0581, -0.5222],          [ 0.4028, -1.0059, -2.1630,  ..., -0.0682,  0.5164,  1.6635],          [ 2.7208, -0.5648, -0.1862,  ..., -1.5719, -0.3802,  0.2935]]],        [[[ 0.8409, -0.7438, -1.0032,  ...,  0.1318, -0.4320,  0.4415],          [ 1.5099, -1.1524,  1.1499,  ..., -1.6440, -0.0798,  0.6606],          [ 1.0045, -0.9537,  1.1316,  ..., -1.3674, -0.9758, -0.0078],          ...,          [ 0.3468,  0.5475, -0.7472,  ...,  1.5581,  0.2254,  0.8593],          [-0.0717,  0.4480,  1.3726,  ...,  0.6523, -1.1766, -0.3996],          [-1.6755, -0.8156,  0.5543,  ..., -1.4320,  0.4414, -0.1122]],         [[ 1.3380, -1.1875,  0.5178,  ...,  0.3197, -0.7422,  0.5158],          [-1.1908,  1.4007,  0.8123,  ..., -1.4919, -1.7273, -0.0800],          [-1.3901, -0.3755,  0.0897,  ...,  1.6764, -1.3049, -0.0079],          ...,          [-0.1568, -1.4188, -0.7429,  ..., -1.6218,  0.6604,  1.6529],          [ 0.6247,  0.6867, -1.0114,  ..., -0.0381,  0.1275, -0.8645],          [-0.0610,  0.5389,  0.3990,  ..., -1.0361, -2.4215, -0.6971]],         [[ 0.7516, -1.9676,  1.4015,  ...,  0.5336,  1.0704,  1.7422],          [-1.6988, -1.2900, -0.6327,  ..., -0.9592,  1.5238,  0.2264],          [ 1.0729,  0.8629, -0.5775,  ..., -0.7702, -0.0271,  0.7063],          ...,          [ 0.4322,  1.7422,  0.5302,  ...,  1.7000,  1.1956,  0.4742],          [ 0.4945,  0.2216, -1.3425,  ..., -0.9851,  0.1730,  1.0625],          [-0.6886, -0.1384, -0.4764,  ...,  0.3615,  0.5811,  0.4600]]],        [[[-0.8843,  0.8162, -0.5182,  ...,  0.3598, -0.5506, -0.5101],          [-0.4878, -1.6419, -0.5060,  ...,  1.8825, -0.1327,  0.3133],          [ 0.4729,  0.4339,  1.0820,  ..., -1.3299, -0.7871, -0.6630],          ...,          [-1.1407,  0.0937,  1.0086,  ...,  0.2854,  0.4308,  1.1841],          [ 0.3772, -0.8250,  1.1873,  ...,  0.1146, -0.7267,  0.4953],          [-0.3229, -1.0868, -0.0125,  ..., -0.6451,  1.2862, -1.9553]],         [[-0.4689, -0.3666, -0.3470,  ..., -0.0699, -1.9161, -0.4589],          [-0.4437,  0.9324, -2.2532,  ...,  0.1354,  1.1196, -0.0070],          [ 1.1838,  0.3169,  1.2460,  ..., -0.9694,  0.3669,  0.7385],          ...,          [-1.7229,  0.6705,  0.0683,  ...,  1.0143,  0.6204, -1.1060],          [ 0.2528, -2.3181, -0.0774,  ..., -0.3610,  0.4452, -0.3837],          [-1.2532, -0.3006,  0.6067,  ..., -0.8430, -0.5149,  0.8442]],         [[-1.8861, -0.4756,  0.9849,  ...,  0.7845, -0.8080, -0.6442],          [-0.7163,  0.8101, -0.1905,  ...,  0.3361,  0.6133, -0.1919],          [-0.7476, -0.5810, -0.1615,  ..., -0.5631,  0.0637, -0.1969],          ...,          [-0.9449, -0.9001,  1.0701,  ...,  0.4150,  0.1768, -0.4086],          [ 0.5126,  1.4135,  1.6389,  ..., -0.6361, -0.3524, -0.2547],          [ 0.0541, -1.5909, -1.5796,  ..., -0.1662, -0.7188, -0.6655]]]])