"""
This file is automatically generated by torchmix and should not be changed.

This module contains wrapped versions of the objects in the PyTorch `nn`
module, intended to provide a more user-friendly interface and added
configuration management functionality.

These classes can be used as a drop-in replacement for the original PyTorch
`nn` module, allowing you to access the full configuration of the module
through the config attribute.
"""

import functools
from contextlib import suppress

from torch import nn

from torchmix.core._builds import BuildMode
from torchmix.core._module import MixModule

Module = nn.Module
Parameter = nn.Parameter
UninitializedBuffer = nn.UninitializedBuffer
UninitializedParameter = nn.UninitializedParameter

with suppress(AttributeError):
    factory_kwargs = nn.factory_kwargs

with suppress(AttributeError):
    functional = nn.functional

with suppress(AttributeError):
    init = nn.init

with suppress(AttributeError):
    modules = nn.modules

with suppress(AttributeError):
    parallel = nn.parallel

with suppress(AttributeError):
    parameter = nn.parameter

with suppress(AttributeError):
    utils = nn.utils


with suppress(AttributeError):

    class AdaptiveAvgPool1d(MixModule, nn.AdaptiveAvgPool1d):
        __init__ = functools.partial(nn.AdaptiveAvgPool1d.__init__)


with suppress(AttributeError):

    class AdaptiveAvgPool2d(MixModule, nn.AdaptiveAvgPool2d):
        __init__ = functools.partial(nn.AdaptiveAvgPool2d.__init__)


with suppress(AttributeError):

    class AdaptiveAvgPool3d(MixModule, nn.AdaptiveAvgPool3d):
        __init__ = functools.partial(nn.AdaptiveAvgPool3d.__init__)


with suppress(AttributeError):

    class AdaptiveLogSoftmaxWithLoss(MixModule, nn.AdaptiveLogSoftmaxWithLoss):
        __init__ = functools.partial(nn.AdaptiveLogSoftmaxWithLoss.__init__)


with suppress(AttributeError):

    class AdaptiveMaxPool1d(MixModule, nn.AdaptiveMaxPool1d):
        __init__ = functools.partial(nn.AdaptiveMaxPool1d.__init__)


with suppress(AttributeError):

    class AdaptiveMaxPool2d(MixModule, nn.AdaptiveMaxPool2d):
        __init__ = functools.partial(nn.AdaptiveMaxPool2d.__init__)


with suppress(AttributeError):

    class AdaptiveMaxPool3d(MixModule, nn.AdaptiveMaxPool3d):
        __init__ = functools.partial(nn.AdaptiveMaxPool3d.__init__)


with suppress(AttributeError):

    class AlphaDropout(MixModule, nn.AlphaDropout):
        __init__ = functools.partial(nn.AlphaDropout.__init__)


with suppress(AttributeError):

    class AvgPool1d(MixModule, nn.AvgPool1d):
        __init__ = functools.partial(nn.AvgPool1d.__init__)


with suppress(AttributeError):

    class AvgPool2d(MixModule, nn.AvgPool2d):
        __init__ = functools.partial(nn.AvgPool2d.__init__)


with suppress(AttributeError):

    class AvgPool3d(MixModule, nn.AvgPool3d):
        __init__ = functools.partial(nn.AvgPool3d.__init__)


with suppress(AttributeError):

    class BCELoss(MixModule, nn.BCELoss):
        __init__ = functools.partial(nn.BCELoss.__init__)


with suppress(AttributeError):

    class BCEWithLogitsLoss(MixModule, nn.BCEWithLogitsLoss):
        __init__ = functools.partial(nn.BCEWithLogitsLoss.__init__)


with suppress(AttributeError):

    class BatchNorm1d(MixModule, nn.BatchNorm1d):
        __init__ = functools.partial(nn.BatchNorm1d.__init__)


with suppress(AttributeError):

    class BatchNorm2d(MixModule, nn.BatchNorm2d):
        __init__ = functools.partial(nn.BatchNorm2d.__init__)


with suppress(AttributeError):

    class BatchNorm3d(MixModule, nn.BatchNorm3d):
        __init__ = functools.partial(nn.BatchNorm3d.__init__)


with suppress(AttributeError):

    class Bilinear(MixModule, nn.Bilinear):
        __init__ = functools.partial(nn.Bilinear.__init__)


with suppress(AttributeError):

    class CELU(MixModule, nn.CELU):
        __init__ = functools.partial(nn.CELU.__init__)


with suppress(AttributeError):

    class CTCLoss(MixModule, nn.CTCLoss):
        __init__ = functools.partial(nn.CTCLoss.__init__)


with suppress(AttributeError):

    class ChannelShuffle(MixModule, nn.ChannelShuffle):
        __init__ = functools.partial(nn.ChannelShuffle.__init__)


with suppress(AttributeError):

    class ConstantPad1d(MixModule, nn.ConstantPad1d):
        __init__ = functools.partial(nn.ConstantPad1d.__init__)


with suppress(AttributeError):

    class ConstantPad2d(MixModule, nn.ConstantPad2d):
        __init__ = functools.partial(nn.ConstantPad2d.__init__)


with suppress(AttributeError):

    class ConstantPad3d(MixModule, nn.ConstantPad3d):
        __init__ = functools.partial(nn.ConstantPad3d.__init__)


with suppress(AttributeError):

    class Container(MixModule, nn.Container):
        __init__ = functools.partial(nn.Container.__init__)


with suppress(AttributeError):

    class Conv1d(MixModule, nn.Conv1d):
        __init__ = functools.partial(nn.Conv1d.__init__)


with suppress(AttributeError):

    class Conv2d(MixModule, nn.Conv2d):
        __init__ = functools.partial(nn.Conv2d.__init__)


with suppress(AttributeError):

    class Conv3d(MixModule, nn.Conv3d):
        __init__ = functools.partial(nn.Conv3d.__init__)


with suppress(AttributeError):

    class ConvTranspose1d(MixModule, nn.ConvTranspose1d):
        __init__ = functools.partial(nn.ConvTranspose1d.__init__)


with suppress(AttributeError):

    class ConvTranspose2d(MixModule, nn.ConvTranspose2d):
        __init__ = functools.partial(nn.ConvTranspose2d.__init__)


with suppress(AttributeError):

    class ConvTranspose3d(MixModule, nn.ConvTranspose3d):
        __init__ = functools.partial(nn.ConvTranspose3d.__init__)


with suppress(AttributeError):

    class CosineEmbeddingLoss(MixModule, nn.CosineEmbeddingLoss):
        __init__ = functools.partial(nn.CosineEmbeddingLoss.__init__)


with suppress(AttributeError):

    class CosineSimilarity(MixModule, nn.CosineSimilarity):
        __init__ = functools.partial(nn.CosineSimilarity.__init__)


with suppress(AttributeError):

    class CrossEntropyLoss(MixModule, nn.CrossEntropyLoss):
        __init__ = functools.partial(nn.CrossEntropyLoss.__init__)


with suppress(AttributeError):

    class CrossMapLRN2d(MixModule, nn.CrossMapLRN2d):
        __init__ = functools.partial(nn.CrossMapLRN2d.__init__)


with suppress(AttributeError):

    class DataParallel(MixModule, nn.DataParallel):
        __init__ = functools.partial(nn.DataParallel.__init__)


with suppress(AttributeError):

    class Dropout(MixModule, nn.Dropout):
        __init__ = functools.partial(nn.Dropout.__init__)


with suppress(AttributeError):

    class Dropout1d(MixModule, nn.Dropout1d):
        __init__ = functools.partial(nn.Dropout1d.__init__)


with suppress(AttributeError):

    class Dropout2d(MixModule, nn.Dropout2d):
        __init__ = functools.partial(nn.Dropout2d.__init__)


with suppress(AttributeError):

    class Dropout3d(MixModule, nn.Dropout3d):
        __init__ = functools.partial(nn.Dropout3d.__init__)


with suppress(AttributeError):

    class ELU(MixModule, nn.ELU):
        __init__ = functools.partial(nn.ELU.__init__)


with suppress(AttributeError):

    class Embedding(MixModule, nn.Embedding):
        __init__ = functools.partial(nn.Embedding.__init__)


with suppress(AttributeError):

    class EmbeddingBag(MixModule, nn.EmbeddingBag):
        __init__ = functools.partial(nn.EmbeddingBag.__init__)


with suppress(AttributeError):

    class FeatureAlphaDropout(MixModule, nn.FeatureAlphaDropout):
        __init__ = functools.partial(nn.FeatureAlphaDropout.__init__)


with suppress(AttributeError):

    class Flatten(MixModule, nn.Flatten):
        __init__ = functools.partial(nn.Flatten.__init__)


with suppress(AttributeError):

    class Fold(MixModule, nn.Fold):
        __init__ = functools.partial(nn.Fold.__init__)


with suppress(AttributeError):

    class FractionalMaxPool2d(MixModule, nn.FractionalMaxPool2d):
        __init__ = functools.partial(nn.FractionalMaxPool2d.__init__)


with suppress(AttributeError):

    class FractionalMaxPool3d(MixModule, nn.FractionalMaxPool3d):
        __init__ = functools.partial(nn.FractionalMaxPool3d.__init__)


with suppress(AttributeError):

    class GELU(MixModule, nn.GELU):
        __init__ = functools.partial(nn.GELU.__init__)


with suppress(AttributeError):

    class GLU(MixModule, nn.GLU):
        __init__ = functools.partial(nn.GLU.__init__)


with suppress(AttributeError):

    class GRU(MixModule, nn.GRU):
        __init__ = functools.partial(nn.GRU.__init__)


with suppress(AttributeError):

    class GRUCell(MixModule, nn.GRUCell):
        __init__ = functools.partial(nn.GRUCell.__init__)


with suppress(AttributeError):

    class GaussianNLLLoss(MixModule, nn.GaussianNLLLoss):
        __init__ = functools.partial(nn.GaussianNLLLoss.__init__)


with suppress(AttributeError):

    class GroupNorm(MixModule, nn.GroupNorm):
        __init__ = functools.partial(nn.GroupNorm.__init__)


with suppress(AttributeError):

    class Hardshrink(MixModule, nn.Hardshrink):
        __init__ = functools.partial(nn.Hardshrink.__init__)


with suppress(AttributeError):

    class Hardsigmoid(MixModule, nn.Hardsigmoid):
        __init__ = functools.partial(nn.Hardsigmoid.__init__)


with suppress(AttributeError):

    class Hardswish(MixModule, nn.Hardswish):
        __init__ = functools.partial(nn.Hardswish.__init__)


with suppress(AttributeError):

    class Hardtanh(MixModule, nn.Hardtanh):
        __init__ = functools.partial(nn.Hardtanh.__init__)


with suppress(AttributeError):

    class HingeEmbeddingLoss(MixModule, nn.HingeEmbeddingLoss):
        __init__ = functools.partial(nn.HingeEmbeddingLoss.__init__)


with suppress(AttributeError):

    class HuberLoss(MixModule, nn.HuberLoss):
        __init__ = functools.partial(nn.HuberLoss.__init__)


with suppress(AttributeError):

    class Identity(MixModule, nn.Identity):
        __init__ = functools.partial(nn.Identity.__init__)


with suppress(AttributeError):

    class InstanceNorm1d(MixModule, nn.InstanceNorm1d):
        __init__ = functools.partial(nn.InstanceNorm1d.__init__)


with suppress(AttributeError):

    class InstanceNorm2d(MixModule, nn.InstanceNorm2d):
        __init__ = functools.partial(nn.InstanceNorm2d.__init__)


with suppress(AttributeError):

    class InstanceNorm3d(MixModule, nn.InstanceNorm3d):
        __init__ = functools.partial(nn.InstanceNorm3d.__init__)


with suppress(AttributeError):

    class KLDivLoss(MixModule, nn.KLDivLoss):
        __init__ = functools.partial(nn.KLDivLoss.__init__)


with suppress(AttributeError):

    class L1Loss(MixModule, nn.L1Loss):
        __init__ = functools.partial(nn.L1Loss.__init__)


with suppress(AttributeError):

    class LPPool1d(MixModule, nn.LPPool1d):
        __init__ = functools.partial(nn.LPPool1d.__init__)


with suppress(AttributeError):

    class LPPool2d(MixModule, nn.LPPool2d):
        __init__ = functools.partial(nn.LPPool2d.__init__)


with suppress(AttributeError):

    class LSTM(MixModule, nn.LSTM):
        __init__ = functools.partial(nn.LSTM.__init__)


with suppress(AttributeError):

    class LSTMCell(MixModule, nn.LSTMCell):
        __init__ = functools.partial(nn.LSTMCell.__init__)


with suppress(AttributeError):

    class LayerNorm(MixModule, nn.LayerNorm):
        __init__ = functools.partial(nn.LayerNorm.__init__)


with suppress(AttributeError):

    class LazyBatchNorm1d(MixModule, nn.LazyBatchNorm1d):
        __init__ = functools.partial(nn.LazyBatchNorm1d.__init__)


with suppress(AttributeError):

    class LazyBatchNorm2d(MixModule, nn.LazyBatchNorm2d):
        __init__ = functools.partial(nn.LazyBatchNorm2d.__init__)


with suppress(AttributeError):

    class LazyBatchNorm3d(MixModule, nn.LazyBatchNorm3d):
        __init__ = functools.partial(nn.LazyBatchNorm3d.__init__)


with suppress(AttributeError):

    class LazyInstanceNorm1d(MixModule, nn.LazyInstanceNorm1d):
        __init__ = functools.partial(nn.LazyInstanceNorm1d.__init__)


with suppress(AttributeError):

    class LazyInstanceNorm2d(MixModule, nn.LazyInstanceNorm2d):
        __init__ = functools.partial(nn.LazyInstanceNorm2d.__init__)


with suppress(AttributeError):

    class LazyInstanceNorm3d(MixModule, nn.LazyInstanceNorm3d):
        __init__ = functools.partial(nn.LazyInstanceNorm3d.__init__)


with suppress(AttributeError):

    class LazyLinear(MixModule, nn.LazyLinear):
        __init__ = functools.partial(nn.LazyLinear.__init__)


with suppress(AttributeError):

    class LeakyReLU(MixModule, nn.LeakyReLU):
        __init__ = functools.partial(nn.LeakyReLU.__init__)


with suppress(AttributeError):

    class Linear(MixModule, nn.Linear):
        __init__ = functools.partial(nn.Linear.__init__)


with suppress(AttributeError):

    class LocalResponseNorm(MixModule, nn.LocalResponseNorm):
        __init__ = functools.partial(nn.LocalResponseNorm.__init__)


with suppress(AttributeError):

    class LogSigmoid(MixModule, nn.LogSigmoid):
        __init__ = functools.partial(nn.LogSigmoid.__init__)


with suppress(AttributeError):

    class LogSoftmax(MixModule, nn.LogSoftmax):
        __init__ = functools.partial(nn.LogSoftmax.__init__)


with suppress(AttributeError):

    class MSELoss(MixModule, nn.MSELoss):
        __init__ = functools.partial(nn.MSELoss.__init__)


with suppress(AttributeError):

    class MarginRankingLoss(MixModule, nn.MarginRankingLoss):
        __init__ = functools.partial(nn.MarginRankingLoss.__init__)


with suppress(AttributeError):

    class MaxPool1d(MixModule, nn.MaxPool1d):
        __init__ = functools.partial(nn.MaxPool1d.__init__)


with suppress(AttributeError):

    class MaxPool2d(MixModule, nn.MaxPool2d):
        __init__ = functools.partial(nn.MaxPool2d.__init__)


with suppress(AttributeError):

    class MaxPool3d(MixModule, nn.MaxPool3d):
        __init__ = functools.partial(nn.MaxPool3d.__init__)


with suppress(AttributeError):

    class MaxUnpool1d(MixModule, nn.MaxUnpool1d):
        __init__ = functools.partial(nn.MaxUnpool1d.__init__)


with suppress(AttributeError):

    class MaxUnpool2d(MixModule, nn.MaxUnpool2d):
        __init__ = functools.partial(nn.MaxUnpool2d.__init__)


with suppress(AttributeError):

    class MaxUnpool3d(MixModule, nn.MaxUnpool3d):
        __init__ = functools.partial(nn.MaxUnpool3d.__init__)


with suppress(AttributeError):

    class Mish(MixModule, nn.Mish):
        __init__ = functools.partial(nn.Mish.__init__)


with suppress(AttributeError):

    class ModuleDict(MixModule, nn.ModuleDict):
        __init__ = functools.partial(nn.ModuleDict.__init__)


with suppress(AttributeError):

    class ModuleList(MixModule, nn.ModuleList):
        __init__ = functools.partial(nn.ModuleList.__init__)


with suppress(AttributeError):

    class MultiLabelMarginLoss(MixModule, nn.MultiLabelMarginLoss):
        __init__ = functools.partial(nn.MultiLabelMarginLoss.__init__)


with suppress(AttributeError):

    class MultiLabelSoftMarginLoss(MixModule, nn.MultiLabelSoftMarginLoss):
        __init__ = functools.partial(nn.MultiLabelSoftMarginLoss.__init__)


with suppress(AttributeError):

    class MultiMarginLoss(MixModule, nn.MultiMarginLoss):
        __init__ = functools.partial(nn.MultiMarginLoss.__init__)


with suppress(AttributeError):

    class MultiheadAttention(MixModule, nn.MultiheadAttention):
        __init__ = functools.partial(nn.MultiheadAttention.__init__)


with suppress(AttributeError):

    class NLLLoss(MixModule, nn.NLLLoss):
        __init__ = functools.partial(nn.NLLLoss.__init__)


with suppress(AttributeError):

    class NLLLoss2d(MixModule, nn.NLLLoss2d):
        __init__ = functools.partial(nn.NLLLoss2d.__init__)


with suppress(AttributeError):

    class PReLU(MixModule, nn.PReLU):
        __init__ = functools.partial(nn.PReLU.__init__)


with suppress(AttributeError):

    class PairwiseDistance(MixModule, nn.PairwiseDistance):
        __init__ = functools.partial(nn.PairwiseDistance.__init__)


with suppress(AttributeError):

    class ParameterDict(MixModule, nn.ParameterDict):
        __init__ = functools.partial(nn.ParameterDict.__init__)


with suppress(AttributeError):

    class ParameterList(MixModule, nn.ParameterList):
        __init__ = functools.partial(nn.ParameterList.__init__)


with suppress(AttributeError):

    class PixelShuffle(MixModule, nn.PixelShuffle):
        __init__ = functools.partial(nn.PixelShuffle.__init__)


with suppress(AttributeError):

    class PixelUnshuffle(MixModule, nn.PixelUnshuffle):
        __init__ = functools.partial(nn.PixelUnshuffle.__init__)


with suppress(AttributeError):

    class PoissonNLLLoss(MixModule, nn.PoissonNLLLoss):
        __init__ = functools.partial(nn.PoissonNLLLoss.__init__)


with suppress(AttributeError):

    class RNN(MixModule, nn.RNN):
        __init__ = functools.partial(nn.RNN.__init__)


with suppress(AttributeError):

    class RNNBase(MixModule, nn.RNNBase):
        __init__ = functools.partial(nn.RNNBase.__init__)


with suppress(AttributeError):

    class RNNCell(MixModule, nn.RNNCell):
        __init__ = functools.partial(nn.RNNCell.__init__)


with suppress(AttributeError):

    class RNNCellBase(MixModule, nn.RNNCellBase):
        __init__ = functools.partial(nn.RNNCellBase.__init__)


with suppress(AttributeError):

    class RReLU(MixModule, nn.RReLU):
        __init__ = functools.partial(nn.RReLU.__init__)


with suppress(AttributeError):

    class ReLU(MixModule, nn.ReLU):
        __init__ = functools.partial(nn.ReLU.__init__)


with suppress(AttributeError):

    class ReLU6(MixModule, nn.ReLU6):
        __init__ = functools.partial(nn.ReLU6.__init__)


with suppress(AttributeError):

    class ReflectionPad1d(MixModule, nn.ReflectionPad1d):
        __init__ = functools.partial(nn.ReflectionPad1d.__init__)


with suppress(AttributeError):

    class ReflectionPad2d(MixModule, nn.ReflectionPad2d):
        __init__ = functools.partial(nn.ReflectionPad2d.__init__)


with suppress(AttributeError):

    class ReflectionPad3d(MixModule, nn.ReflectionPad3d):
        __init__ = functools.partial(nn.ReflectionPad3d.__init__)


with suppress(AttributeError):

    class ReplicationPad1d(MixModule, nn.ReplicationPad1d):
        __init__ = functools.partial(nn.ReplicationPad1d.__init__)


with suppress(AttributeError):

    class ReplicationPad2d(MixModule, nn.ReplicationPad2d):
        __init__ = functools.partial(nn.ReplicationPad2d.__init__)


with suppress(AttributeError):

    class ReplicationPad3d(MixModule, nn.ReplicationPad3d):
        __init__ = functools.partial(nn.ReplicationPad3d.__init__)


with suppress(AttributeError):

    class SELU(MixModule, nn.SELU):
        __init__ = functools.partial(nn.SELU.__init__)


with suppress(AttributeError):

    class Sequential(MixModule, nn.Sequential):
        build_mode = BuildMode.WITH_ARGS
        __init__ = functools.partial(nn.Sequential.__init__)  # type: ignore


with suppress(AttributeError):

    class SiLU(MixModule, nn.SiLU):
        __init__ = functools.partial(nn.SiLU.__init__)


with suppress(AttributeError):

    class Sigmoid(MixModule, nn.Sigmoid):
        __init__ = functools.partial(nn.Sigmoid.__init__)


with suppress(AttributeError):

    class SmoothL1Loss(MixModule, nn.SmoothL1Loss):
        __init__ = functools.partial(nn.SmoothL1Loss.__init__)


with suppress(AttributeError):

    class SoftMarginLoss(MixModule, nn.SoftMarginLoss):
        __init__ = functools.partial(nn.SoftMarginLoss.__init__)


with suppress(AttributeError):

    class Softmax(MixModule, nn.Softmax):
        __init__ = functools.partial(nn.Softmax.__init__)


with suppress(AttributeError):

    class Softmax2d(MixModule, nn.Softmax2d):
        __init__ = functools.partial(nn.Softmax2d.__init__)


with suppress(AttributeError):

    class Softmin(MixModule, nn.Softmin):
        __init__ = functools.partial(nn.Softmin.__init__)


with suppress(AttributeError):

    class Softplus(MixModule, nn.Softplus):
        __init__ = functools.partial(nn.Softplus.__init__)


with suppress(AttributeError):

    class Softshrink(MixModule, nn.Softshrink):
        __init__ = functools.partial(nn.Softshrink.__init__)


with suppress(AttributeError):

    class Softsign(MixModule, nn.Softsign):
        __init__ = functools.partial(nn.Softsign.__init__)


with suppress(AttributeError):

    class SyncBatchNorm(MixModule, nn.SyncBatchNorm):
        __init__ = functools.partial(nn.SyncBatchNorm.__init__)


with suppress(AttributeError):

    class Tanh(MixModule, nn.Tanh):
        __init__ = functools.partial(nn.Tanh.__init__)


with suppress(AttributeError):

    class Tanhshrink(MixModule, nn.Tanhshrink):
        __init__ = functools.partial(nn.Tanhshrink.__init__)


with suppress(AttributeError):

    class Threshold(MixModule, nn.Threshold):
        __init__ = functools.partial(nn.Threshold.__init__)


with suppress(AttributeError):

    class Transformer(MixModule, nn.Transformer):
        __init__ = functools.partial(nn.Transformer.__init__)


with suppress(AttributeError):

    class TransformerDecoder(MixModule, nn.TransformerDecoder):
        __init__ = functools.partial(nn.TransformerDecoder.__init__)


with suppress(AttributeError):

    class TransformerDecoderLayer(MixModule, nn.TransformerDecoderLayer):
        __init__ = functools.partial(nn.TransformerDecoderLayer.__init__)


with suppress(AttributeError):

    class TransformerEncoder(MixModule, nn.TransformerEncoder):
        __init__ = functools.partial(nn.TransformerEncoder.__init__)


with suppress(AttributeError):

    class TransformerEncoderLayer(MixModule, nn.TransformerEncoderLayer):
        __init__ = functools.partial(nn.TransformerEncoderLayer.__init__)


with suppress(AttributeError):

    class TripletMarginLoss(MixModule, nn.TripletMarginLoss):
        __init__ = functools.partial(nn.TripletMarginLoss.__init__)


with suppress(AttributeError):

    class TripletMarginWithDistanceLoss(MixModule, nn.TripletMarginWithDistanceLoss):
        __init__ = functools.partial(nn.TripletMarginWithDistanceLoss.__init__)


with suppress(AttributeError):

    class Unflatten(MixModule, nn.Unflatten):
        __init__ = functools.partial(nn.Unflatten.__init__)


with suppress(AttributeError):

    class Unfold(MixModule, nn.Unfold):
        __init__ = functools.partial(nn.Unfold.__init__)


with suppress(AttributeError):

    class Upsample(MixModule, nn.Upsample):
        __init__ = functools.partial(nn.Upsample.__init__)


with suppress(AttributeError):

    class UpsamplingBilinear2d(MixModule, nn.UpsamplingBilinear2d):
        __init__ = functools.partial(nn.UpsamplingBilinear2d.__init__)


with suppress(AttributeError):

    class UpsamplingNearest2d(MixModule, nn.UpsamplingNearest2d):
        __init__ = functools.partial(nn.UpsamplingNearest2d.__init__)


with suppress(AttributeError):

    class ZeroPad2d(MixModule, nn.ZeroPad2d):
        __init__ = functools.partial(nn.ZeroPad2d.__init__)
