An efficient implementation of Stable-Diffusion-XL
import torch, math
from safetensors import safe_open
from diffusers import ModelMixin
from diffusers.configuration_utils import FrozenDict
from .StateDictConverter import convert_state_dict_civitai_diffusers


class Timesteps(torch.nn.Module):
    def __init__(self, num_channels):
        super().__init__()
        self.num_channels = num_channels

    def forward(self, timesteps):
        half_dim = self.num_channels // 2
        exponent = -math.log(10000) * torch.arange(start=0, end=half_dim, dtype=torch.float32, device=timesteps.device) / half_dim
        timesteps = timesteps.unsqueeze(-1)
        emb = timesteps.float() * torch.exp(exponent)
        emb = torch.cat([torch.cos(emb), torch.sin(emb)], dim=-1)
        return emb


class GEGLU(torch.nn.Module):

    def __init__(self, dim_in, dim_out):
        super().__init__()
        self.proj = torch.nn.Linear(dim_in, dim_out * 2)

    def forward(self, hidden_states):
        hidden_states, gate = self.proj(hidden_states).chunk(2, dim=-1)
        return hidden_states * torch.nn.functional.gelu(gate)


class Attention(torch.nn.Module):

    def __init__(self, query_dim, heads, dim_head, cross_attention_dim=None):
        super().__init__()
        inner_dim = dim_head * heads
        cross_attention_dim = cross_attention_dim if cross_attention_dim is not None else query_dim
        self.heads = heads
        self.dim_head = dim_head

        self.to_q = torch.nn.Linear(query_dim, inner_dim, bias=False)
        self.to_k = torch.nn.Linear(cross_attention_dim, inner_dim, bias=False)
        self.to_v = torch.nn.Linear(cross_attention_dim, inner_dim, bias=False)
        self.to_out = torch.nn.Linear(inner_dim, query_dim, bias=True)

    def forward(
        self,
        hidden_states,
        encoder_hidden_states=None,
    ):
        if encoder_hidden_states is None:
            encoder_hidden_states = hidden_states

        batch_size = encoder_hidden_states.shape[0]

        query = self.to_q(hidden_states)
        key = self.to_k(encoder_hidden_states)
        value = self.to_v(encoder_hidden_states)

        query = query.view(batch_size, -1, self.heads, self.dim_head).transpose(1, 2)
        key = key.view(batch_size, -1, self.heads, self.dim_head).transpose(1, 2)
        value = value.view(batch_size, -1, self.heads, self.dim_head).transpose(1, 2)

        hidden_states = torch.nn.functional.scaled_dot_product_attention(query, key, value)
        hidden_states = hidden_states.transpose(1, 2).view(batch_size, -1, self.heads * self.dim_head)
        hidden_states = hidden_states.to(query.dtype)

        hidden_states = self.to_out(hidden_states)

        return hidden_states


class BasicTransformerBlock(torch.nn.Module):

    def __init__(self, dim, num_attention_heads, attention_head_dim, cross_attention_dim):
        super().__init__()

        # 1. Self-Attn
        self.norm1 = torch.nn.LayerNorm(dim, elementwise_affine=True)
        self.attn1 = Attention(query_dim=dim, heads=num_attention_heads, dim_head=attention_head_dim)

        # 2. Cross-Attn
        self.norm2 = torch.nn.LayerNorm(dim, elementwise_affine=True)
        self.attn2 = Attention(query_dim=dim, cross_attention_dim=cross_attention_dim, heads=num_attention_heads, dim_head=attention_head_dim)

        # 3. Feed-forward
        self.norm3 = torch.nn.LayerNorm(dim, elementwise_affine=True)
        self.act_fn = GEGLU(dim, dim * 4)
        self.ff = torch.nn.Linear(dim * 4, dim)


    def forward(self, hidden_states, encoder_hidden_states):
        # 1. Self-Attention
        norm_hidden_states = self.norm1(hidden_states)
        attn_output = self.attn1(norm_hidden_states, encoder_hidden_states=None,)
        hidden_states = attn_output + hidden_states

        # 2. Cross-Attention
        norm_hidden_states = self.norm2(hidden_states)
        attn_output = self.attn2(norm_hidden_states, encoder_hidden_states=encoder_hidden_states)
        hidden_states = attn_output + hidden_states

        # 3. Feed-forward
        norm_hidden_states = self.norm3(hidden_states)
        ff_output = self.act_fn(norm_hidden_states)
        ff_output = self.ff(ff_output)
        hidden_states = ff_output + hidden_states

        return hidden_states


class DownSampler(torch.nn.Module):
    def __init__(self, channels):
        super().__init__()
        self.conv = torch.nn.Conv2d(channels, channels, 3, stride=2, padding=1)

    def forward(self, hidden_states, time_emb, text_emb, res_stack):
        hidden_states = self.conv(hidden_states)
        return hidden_states, time_emb, text_emb, res_stack


class UpSampler(torch.nn.Module):
    def __init__(self, channels):
        super().__init__()
        self.conv = torch.nn.Conv2d(channels, channels, 3, padding=1)

    def forward(self, hidden_states, time_emb, text_emb, res_stack):
        hidden_states = torch.nn.functional.interpolate(hidden_states, scale_factor=2.0, mode="nearest")
        hidden_states = self.conv(hidden_states)
        return hidden_states, time_emb, text_emb, res_stack


class ResnetBlock(torch.nn.Module):
    def __init__(self, in_channels, out_channels, temb_channels, groups=32, eps=1e-5):
        super().__init__()
        self.norm1 = torch.nn.GroupNorm(num_groups=groups, num_channels=in_channels, eps=eps, affine=True)
        self.conv1 = torch.nn.Conv2d(in_channels, out_channels, kernel_size=3, stride=1, padding=1)
        self.time_emb_proj = torch.nn.Linear(temb_channels, out_channels)
        self.norm2 = torch.nn.GroupNorm(num_groups=groups, num_channels=out_channels, eps=eps, affine=True)
        self.conv2 = torch.nn.Conv2d(out_channels, out_channels, kernel_size=3, stride=1, padding=1)
        self.nonlinearity = torch.nn.SiLU()
        self.conv_shortcut = None
        if in_channels != out_channels:
            self.conv_shortcut = torch.nn.Conv2d(in_channels, out_channels, kernel_size=1, stride=1, padding=0, bias=True)

    def forward(self, hidden_states, time_emb, text_emb, res_stack):
        x = hidden_states
        x = self.norm1(x)
        x = self.nonlinearity(x)
        x = self.conv1(x)
        emb = self.nonlinearity(time_emb)
        emb = self.time_emb_proj(emb)[:, :, None, None]
        x = x + emb
        x = self.norm2(x)
        x = self.nonlinearity(x)
        x = self.conv2(x)
        if self.conv_shortcut is not None:
            hidden_states = self.conv_shortcut(hidden_states)
        hidden_states = hidden_states + x
        return hidden_states, time_emb, text_emb, res_stack


class AttentionBlock(torch.nn.Module):

    def __init__(self, num_attention_heads, attention_head_dim, in_channels, num_layers=1, cross_attention_dim=None, norm_num_groups=32):
        super().__init__()
        inner_dim = num_attention_heads * attention_head_dim

        self.norm = torch.nn.GroupNorm(num_groups=norm_num_groups, num_channels=in_channels, eps=1e-6, affine=True)
        self.proj_in = torch.nn.Linear(in_channels, inner_dim)

        self.transformer_blocks = torch.nn.ModuleList([
            BasicTransformerBlock(
                inner_dim,
                num_attention_heads,
                attention_head_dim,
                cross_attention_dim=cross_attention_dim
            )
            for d in range(num_layers)
        ])

        self.proj_out = torch.nn.Linear(inner_dim, in_channels)

    def forward(self, hidden_states, time_emb, text_emb, res_stack):
        batch, _, height, width = hidden_states.shape
        residual = hidden_states

        hidden_states = self.norm(hidden_states)
        inner_dim = hidden_states.shape[1]
        hidden_states = hidden_states.permute(0, 2, 3, 1).reshape(batch, height * width, inner_dim)
        hidden_states = self.proj_in(hidden_states)

        for block in self.transformer_blocks:
            hidden_states = block(
                hidden_states,
                encoder_hidden_states=text_emb
            )

        hidden_states = self.proj_out(hidden_states)
        hidden_states = hidden_states.reshape(batch, height, width, inner_dim).permute(0, 3, 1, 2).contiguous()
        hidden_states = hidden_states + residual

        return hidden_states, time_emb, text_emb, res_stack


class PushBlock(torch.nn.Module):
    def __init__(self):
        super().__init__()

    def forward(self, hidden_states, time_emb, text_emb, res_stack):
        res_stack.append(hidden_states)
        return hidden_states, time_emb, text_emb, res_stack


class PopBlock(torch.nn.Module):
    def __init__(self):
        super().__init__()

    def forward(self, hidden_states, time_emb, text_emb, res_stack):
        res_hidden_states = res_stack.pop()
        hidden_states = torch.cat([hidden_states, res_hidden_states], dim=1)
        return hidden_states, time_emb, text_emb, res_stack


class BlockUNet(ModelMixin):
    def __init__(self):
        super().__init__()
        self.time_proj = Timesteps(320)
        self.time_embedding = torch.nn.Sequential(
            torch.nn.Linear(320, 1280),
            torch.nn.SiLU(),
            torch.nn.Linear(1280, 1280)
        )
        self.add_time_proj = Timesteps(256)
        self.add_time_embedding = torch.nn.Sequential(
            torch.nn.Linear(2816, 1280),
            torch.nn.SiLU(),
            torch.nn.Linear(1280, 1280)
        )
        self.conv_in = torch.nn.Conv2d(4, 320, kernel_size=3, padding=1)

        self.blocks = torch.nn.ModuleList([
            # DownBlock2D
            ResnetBlock(320, 320, 1280),
            PushBlock(),
            ResnetBlock(320, 320, 1280),
            PushBlock(),
            DownSampler(320),
            PushBlock(),
            # CrossAttnDownBlock2D
            ResnetBlock(320, 640, 1280),
            AttentionBlock(10, 64, 640, 2, 2048),
            PushBlock(),
            ResnetBlock(640, 640, 1280),
            AttentionBlock(10, 64, 640, 2, 2048),
            PushBlock(),
            DownSampler(640),
            PushBlock(),
            # CrossAttnDownBlock2D
            ResnetBlock(640, 1280, 1280),
            AttentionBlock(20, 64, 1280, 10, 2048),
            PushBlock(),
            ResnetBlock(1280, 1280, 1280),
            AttentionBlock(20, 64, 1280, 10, 2048),
            PushBlock(),
            # UNetMidBlock2DCrossAttn
            ResnetBlock(1280, 1280, 1280),
            AttentionBlock(20, 64, 1280, 10, 2048),
            ResnetBlock(1280, 1280, 1280),
            # CrossAttnUpBlock2D
            PopBlock(),
            ResnetBlock(2560, 1280, 1280),
            AttentionBlock(20, 64, 1280, 10, 2048),
            PopBlock(),
            ResnetBlock(2560, 1280, 1280),
            AttentionBlock(20, 64, 1280, 10, 2048),
            PopBlock(),
            ResnetBlock(1920, 1280, 1280),
            AttentionBlock(20, 64, 1280, 10, 2048),
            UpSampler(1280),
            # CrossAttnUpBlock2D
            PopBlock(),
            ResnetBlock(1920, 640, 1280),
            AttentionBlock(10, 64, 640, 2, 2048),
            PopBlock(),
            ResnetBlock(1280, 640, 1280),
            AttentionBlock(10, 64, 640, 2, 2048),
            PopBlock(),
            ResnetBlock(960, 640, 1280),
            AttentionBlock(10, 64, 640, 2, 2048),
            UpSampler(640),
            # UpBlock2D
            PopBlock(),
            ResnetBlock(960, 320, 1280),
            PopBlock(),
            ResnetBlock(640, 320, 1280),
            PopBlock(),
            ResnetBlock(640, 320, 1280)
        ])

        self.conv_norm_out = torch.nn.GroupNorm(num_channels=320, num_groups=32, eps=1e-5)
        self.conv_act = torch.nn.SiLU()
        self.conv_out = torch.nn.Conv2d(320, 4, kernel_size=3, padding=1)

        # For diffusers
        self.config = FrozenDict([
            ('sample_size', 128), ('in_channels', 4), ('out_channels', 4), ('center_input_sample', False), ('flip_sin_to_cos', True),
            ('freq_shift', 0), ('down_block_types', ['DownBlock2D', 'CrossAttnDownBlock2D', 'CrossAttnDownBlock2D']),
            ('mid_block_type', 'UNetMidBlock2DCrossAttn'), ('up_block_types', ['CrossAttnUpBlock2D', 'CrossAttnUpBlock2D', 'UpBlock2D']),
            ('only_cross_attention', False), ('block_out_channels', [320, 640, 1280]), ('layers_per_block', 2), ('downsample_padding', 1),
            ('mid_block_scale_factor', 1), ('act_fn', 'silu'), ('norm_num_groups', 32), ('norm_eps', 1e-05), ('cross_attention_dim', 2048),
            ('transformer_layers_per_block', [1, 2, 10]), ('encoder_hid_dim', None), ('encoder_hid_dim_type', None), ('attention_head_dim', [5, 10, 20]),
            ('num_attention_heads', None), ('dual_cross_attention', False), ('use_linear_projection', True), ('class_embed_type', None),
            ('addition_embed_type', 'text_time'), ('addition_time_embed_dim', 256), ('num_class_embeds', None), ('upcast_attention', None),
            ('resnet_time_scale_shift', 'default'), ('resnet_skip_time_act', False), ('resnet_out_scale_factor', 1.0), ('time_embedding_type', 'positional'),
            ('time_embedding_dim', None), ('time_embedding_act_fn', None), ('timestep_post_act', None), ('time_cond_proj_dim', None),
            ('conv_in_kernel', 3), ('conv_out_kernel', 3), ('projection_class_embeddings_input_dim', 2816), ('attention_type', 'default'),
            ('class_embeddings_concat', False), ('mid_block_only_cross_attention', None), ('cross_attention_norm', None),
            ('addition_embed_type_num_heads', 64), ('_class_name', 'UNet2DConditionModel'), ('_diffusers_version', '0.20.2'),
            ('_name_or_path', 'models/stabilityai/stable-diffusion-xl-base-1.0\\unet')])
        self.add_embedding = FrozenDict([("linear_1", FrozenDict([("in_features", 2816)]))])

    def from_diffusers(self, safetensor_path=None, state_dict=None):
        # Load state_dict
        if safetensor_path is not None:
            state_dict = {}
            with safe_open(safetensor_path, framework="pt", device="cpu") as f:
                for name in f.keys():
                    state_dict[name] = f.get_tensor(name)

        # Analyze the architecture
        block_types = [block.__class__.__name__ for block in self.blocks]

        # Rename each parameter
        name_list = sorted([name for name in state_dict])
        rename_dict = {}
        block_id = {"ResnetBlock": -1, "AttentionBlock": -1, "DownSampler": -1, "UpSampler": -1}
        last_block_type_with_id = {"ResnetBlock": "", "AttentionBlock": "", "DownSampler": "", "UpSampler": ""}
        for name in name_list:
            names = name.split(".")
            if names[0] in ["conv_in", "conv_norm_out", "conv_out"]:
                pass
            elif names[0] in ["time_embedding", "add_embedding"]:
                if names[0] == "add_embedding":
                    names[0] = "add_time_embedding"
                names[1] = {"linear_1": "0", "linear_2": "2"}[names[1]]
            elif names[0] in ["down_blocks", "mid_block", "up_blocks"]:
                if names[0] == "mid_block":
                    names.insert(1, "0")
                block_type = {"resnets": "ResnetBlock", "attentions": "AttentionBlock", "downsamplers": "DownSampler", "upsamplers": "UpSampler"}[names[2]]
                block_type_with_id = ".".join(names[:4])
                if block_type_with_id != last_block_type_with_id[block_type]:
                    block_id[block_type] += 1
                last_block_type_with_id[block_type] = block_type_with_id
                while block_id[block_type] < len(block_types) and block_types[block_id[block_type]] != block_type:
                    block_id[block_type] += 1
                block_type_with_id = ".".join(names[:4])
                names = ["blocks", str(block_id[block_type])] + names[4:]
                if "ff" in names:
                    ff_index = names.index("ff")
                    component = ".".join(names[ff_index:ff_index+3])
                    component = {"ff.net.0": "act_fn", "ff.net.2": "ff"}[component]
                    names = names[:ff_index] + [component] + names[ff_index+3:]
                if "to_out" in names:
                    names.pop(names.index("to_out") + 1)
            else:
                raise ValueError(f"Unknown parameters: {name}")
            rename_dict[name] = ".".join(names)

        # Convert state_dict
        state_dict_ = {}
        for name, param in state_dict.items():
            state_dict_[rename_dict[name]] = param
        self.load_state_dict(state_dict_)

    def from_civitai(self, safetensor_path=None, state_dict=None):
        # Load state_dict
        if safetensor_path is not None:
            state_dict = {}
            with safe_open(safetensor_path, framework="pt", device="cpu") as f:
                for name in f.keys():
                    state_dict[name] = f.get_tensor(name)
        
        # Convert state_dict
        state_dict = convert_state_dict_civitai_diffusers(state_dict)
        self.from_diffusers(state_dict=state_dict)
        
    def process(
        self,
        sample,
        timestep,
        encoder_hidden_states,
        added_cond_kwargs,
        **kwargs
    ):
        # 1. time
        t_emb = self.time_proj(timestep[None]).to(sample.dtype)
        t_emb = self.time_embedding(t_emb)
        
        time_embeds = self.add_time_proj(added_cond_kwargs["time_ids"])
        time_embeds = time_embeds.reshape((time_embeds.shape[0], -1))
        add_embeds = torch.concat([added_cond_kwargs["text_embeds"], time_embeds], dim=-1)
        add_embeds = add_embeds.to(sample.dtype)
        add_embeds = self.add_time_embedding(add_embeds)

        time_emb = t_emb + add_embeds
        
        # 2. pre-process
        hidden_states = self.conv_in(sample)
        text_emb = encoder_hidden_states
        res_stack = [hidden_states]
        
        # 3. blocks
        for i, block in enumerate(self.blocks):
            hidden_states, time_emb, text_emb, res_stack = block(hidden_states, time_emb, text_emb, res_stack)

        hidden_states = self.conv_norm_out(hidden_states)
        hidden_states = self.conv_act(hidden_states)
        hidden_states = self.conv_out(hidden_states)

        return hidden_states

    def forward(
        self,
        sample,
        timestep,
        encoder_hidden_states,
        added_cond_kwargs,
        **kwargs
    ):
        hidden_states = []
        for i in range(sample.shape[0]):
            added_cond_kwargs_ = {}
            added_cond_kwargs_["text_embeds"] = added_cond_kwargs["text_embeds"][i:i+1]
            added_cond_kwargs_["time_ids"] = added_cond_kwargs["time_ids"][i:i+1]
            hidden_states.append(self.process(sample[i:i+1], timestep, encoder_hidden_states[i:i+1], added_cond_kwargs_))
        hidden_states = torch.concat(hidden_states, dim=0)
        return (hidden_states,)


FastSDXL/BlockUNet.py
Artiprocher/FastSDXL
import torch
from tqdm import tqdm


class OLSSSchedulerModel(torch.nn.Module):

    def __init__(self, wx, we):
        super(OLSSSchedulerModel, self).__init__()
        assert len(wx.shape)==1 and len(we.shape)==2
        T = wx.shape[0]
        assert T==we.shape[0] and T==we.shape[1]
        self.register_parameter("wx", torch.nn.Parameter(wx))
        self.register_parameter("we", torch.nn.Parameter(we))

    def forward(self, t, xT, e_prev):
        assert t - len(e_prev) + 1 == 0
        x = xT*self.wx[t]
        for e, we in zip(e_prev, self.we[t]):
            x += e*we
        return x.to(xT.dtype)


class OLSSScheduler():

    def __init__(self, timesteps, model):
        self.timesteps = timesteps
        self.model = model
        self.init_noise_sigma = 1.0
        self.order = 1

    @staticmethod
    def load(path):
        timesteps, wx, we = torch.load(path, map_location="cpu")
        model = OLSSSchedulerModel(wx, we)
        return OLSSScheduler(timesteps, model)

    def save(self, path):
        timesteps, wx, we = self.timesteps, self.model.wx, self.model.we
        torch.save((timesteps, wx, we), path)

    def set_timesteps(self, num_inference_steps, device = "cuda"):
        self.xT = None
        self.e_prev = []
        self.t_prev = -1
        self.model = self.model.to(device)
        self.timesteps = self.timesteps.to(device)

    def scale_model_input(self, sample: torch.FloatTensor, *args, **kwargs):
        return sample

    @torch.no_grad()
    def step(
        self,
        model_output: torch.FloatTensor,
        timestep: int,
        sample: torch.FloatTensor,
        *args, **kwargs
    ):
        t = self.timesteps.tolist().index(timestep)
        assert self.t_prev==-1 or t==self.t_prev+1
        if self.t_prev==-1:
            self.xT = sample
        self.e_prev.append(model_output)
        x = self.model(t, self.xT, self.e_prev)
        if t+1==len(self.timesteps):
            self.xT = None
            self.e_prev = []
            self.t_prev = -1
        else:
            self.t_prev = t
        return (x,)


class OLSSSolver:

    def __init__(self):
        pass

    def solve_linear_regression(self, X, Y):
        X = X.to(torch.float64)
        Y = Y.to(torch.float64)
        # coef = torch.linalg.pinv(X.T @ X) @ X.T @ Y
        coef = torch.linalg.lstsq(X, Y).solution
        return coef

    def solve_scheduer_parameters(self, xT, e_prev, x):
        # prepare
        xe_prev = torch.concat([xT, e_prev], dim=0)
        xe_prev = xe_prev.reshape(xe_prev.shape[0], -1)
        x = x.flatten()
        # solve the ordinary least squares problem
        coef = self.solve_linear_regression(xe_prev.T, x)
        # split the parameters
        wx, we = coef[:1], coef[1:]
        # error
        x_pred = torch.matmul(coef.unsqueeze(0), xe_prev.to(torch.float64)).squeeze(0)
        err = torch.nn.functional.mse_loss(x_pred, x).tolist()
        return wx, we, err

    @torch.no_grad()
    def resolve_diffusion_process(self,
                                  steps_accelerate,
                                  t_path,
                                  x_path,
                                  e_path,
                                  i_path=None):
        steps_inference = t_path.shape[0]
        # accelerate path
        if i_path is None:
            i_path = torch.arange(0, steps_inference, steps_inference//steps_accelerate)[:steps_accelerate]
        t_path = t_path[i_path]
        x_path = torch.concat([x_path[i_path], x_path[-1:]])
        e_path = e_path[i_path]
        # parameters
        wx = torch.zeros(steps_accelerate, dtype=torch.float64)
        we = torch.zeros((steps_accelerate, steps_accelerate), dtype=torch.float64)
        for i in range(steps_accelerate):
            x = x_path[i+1]
            xT = x_path[0:1]
            e_prev = e_path[:i+1]
            wx[i], we[i, :i+1], _ = self.solve_scheduer_parameters(xT, e_prev, x)
        return t_path, wx, we

    def search_next_step_with_error_limit(self, x_prev, e_prev, x_flat, i_lowerbound, max_error):
        i_next = i_lowerbound
        i_upperbound = len(x_flat)-1
        while i_upperbound>i_lowerbound:
            i_next = (i_lowerbound + i_upperbound + 1)//2
            x_goal = x_flat[i_next]
            _, _, err_step = self.solve_scheduer_parameters(x_prev, e_prev, x_goal)
            if err_step>max_error:
                i_upperbound = i_next - 1
            else:
                i_lowerbound = i_next
        i_next = i_lowerbound
        return i_next

    def search_path_with_error_limit(self,
                                    max_steps,
                                    t_path,
                                    x_path,
                                    e_path,
                                    max_error):
        # prepare for calculation
        num_inference_steps = t_path.shape[0]
        x_flat = x_path.reshape(num_inference_steps+1, -1)
        e_flat = e_path.reshape(num_inference_steps, -1)
        # search (greedy)
        i_path_acc = [0]
        for step in range(max_steps):
            x_prev = x_flat[i_path_acc[step:step+1]]
            e_prev = e_flat[i_path_acc]
            i_lowerbound = i_path_acc[step] + 1
            i_next = self.search_next_step_with_error_limit(x_prev, e_prev, x_flat, i_lowerbound, max_error)
            if i_next == num_inference_steps:
                return i_path_acc
            else:
                i_path_acc.append(i_next)
        return None

    @torch.no_grad()
    def resolve_diffusion_process_graph(self,
                                        num_accelerate_steps,
                                        t_path,
                                        x_path,
                                        e_path,
                                        max_iter = 30,
                                        verbose = 0):
        error_l, error_r = 0.0, 10.0
        for it in tqdm(range(max_iter), desc="OLSS is solving the parameters"):
            error_m = (error_l + error_r) / 2
            path = self.search_path_with_error_limit(num_accelerate_steps, t_path, x_path, e_path, error_m)
            if path is None:
                error_l = error_m
            else:
                error_r = error_m
            if verbose>0:
                print(f"search for path with maximum error: {error_m}")
                if path is None:
                    print("    cannot find such path")
                else:
                    print(f"    find a path with length {len(path)}: {path}")
        path = self.search_path_with_error_limit(num_accelerate_steps, t_path, x_path, e_path, error_r)
        timesteps, wx, we = self.resolve_diffusion_process(num_accelerate_steps, t_path, x_path, e_path, i_path=path)
        return timesteps, wx, we


class SchedulerWrapper:
    def __init__(self, scheduler):
        self.scheduler = scheduler
        self.catch_x, self.catch_e, self.catch_x_ = {}, {}, {}
        self.olss_scheduler = None

    def set_timesteps(self, num_inference_steps, **kwargs):
        if self.olss_scheduler is None:
            result = self.scheduler.set_timesteps(num_inference_steps, **kwargs)
            self.timesteps = self.scheduler.timesteps
            self.init_noise_sigma = self.scheduler.init_noise_sigma
            self.order = self.scheduler.order
            return result
        else:
            result = self.olss_scheduler.set_timesteps(num_inference_steps, **kwargs)
            self.timesteps = self.olss_scheduler.timesteps
            self.init_noise_sigma = self.scheduler.init_noise_sigma
            self.order = self.scheduler.order
            return result

    def step(self, model_output, timestep, sample, **kwargs):
        if self.olss_scheduler is None:
            result = self.scheduler.step(model_output, timestep, sample, **kwargs)
            timestep = timestep.tolist()
            if timestep not in self.catch_x:
                self.catch_x[timestep] = []
                self.catch_e[timestep] = []
                self.catch_x_[timestep] = []
            self.catch_x[timestep].append(sample.clone().detach().cpu())
            self.catch_e[timestep].append(model_output.clone().detach().cpu())
            self.catch_x_[timestep].append(result[0].clone().detach().cpu())
            return result
        else:
            result = self.olss_scheduler.step(model_output, timestep, sample, **kwargs)
            return result
    
    def scale_model_input(self, sample, timestep):
        return sample
    
    def add_noise(self, original_samples, noise, timesteps):
        result = self.scheduler.add_noise(original_samples, noise, timesteps)
        return result
    
    def get_path(self):
        t_path = sorted([t for t in self.catch_x], reverse=True)
        x_path, e_path = [], []
        for t in t_path:
            x = torch.cat(self.catch_x[t], dim=0)
            x_path.append(x)
            e = torch.cat(self.catch_e[t], dim=0)
            e_path.append(e)
        t_final = t_path[-1]
        x_final = torch.cat(self.catch_x_[t_final], dim=0)
        x_path.append(x_final)
        t_path = torch.tensor(t_path, dtype=torch.int32)
        x_path = torch.stack(x_path)
        e_path = torch.stack(e_path)
        return t_path, x_path, e_path
    
    def prepare_olss(self, num_accelerate_steps):
        solver = OLSSSolver()
        t_path, x_path, e_path = self.get_path()
        timesteps, wx, we = solver.resolve_diffusion_process_graph(
            num_accelerate_steps, t_path, x_path, e_path)
        self.olss_model = OLSSSchedulerModel(wx, we)
        self.olss_scheduler = OLSSScheduler(timesteps, self.olss_model)
        
FastSDXL/OLSS.py
Artiprocher/FastSDXL
from safetensors import safe_open
import torch


def search_parameter(param, state_dict):
    for name, param_ in state_dict.items():
        if param.shape == param_.shape:
            if torch.dist(param, param_) < 1e-6:
                return name
    return None


def build_rename_dict_civitai_diffusers(safetensors_civitai, safetensors_diffusers):
    state_dict_civitai = {}
    with safe_open(safetensors_civitai, framework="pt", device="cpu") as f:
        for k in f.keys():
            state_dict_civitai[k] = f.get_tensor(k)

    state_dict_diffusers = {}
    with safe_open(safetensors_diffusers, framework="pt", device="cpu") as f:
        for k in f.keys():
            state_dict_diffusers[k] = f.get_tensor(k).half().cuda()

    with torch.no_grad():
        for name in state_dict_civitai:
            rename = search_parameter(state_dict_civitai[name].half().cuda(), state_dict_diffusers)
            if rename is not None:
                print(f'"{name}": "{rename}",')


def convert_state_dict_civitai_diffusers(state_dict):
    rename_dict = {
        "model.diffusion_model.input_blocks.0.0.bias": "conv_in.bias",
        "model.diffusion_model.input_blocks.0.0.weight": "conv_in.weight",
        "model.diffusion_model.input_blocks.1.0.emb_layers.1.bias": "down_blocks.0.resnets.0.time_emb_proj.bias",
        "model.diffusion_model.input_blocks.1.0.emb_layers.1.weight": "down_blocks.0.resnets.0.time_emb_proj.weight",
        "model.diffusion_model.input_blocks.1.0.in_layers.0.bias": "down_blocks.0.resnets.0.norm1.bias",
        "model.diffusion_model.input_blocks.1.0.in_layers.0.weight": "down_blocks.0.resnets.0.norm1.weight",
        "model.diffusion_model.input_blocks.1.0.in_layers.2.bias": "down_blocks.0.resnets.0.conv1.bias",
        "model.diffusion_model.input_blocks.1.0.in_layers.2.weight": "down_blocks.0.resnets.0.conv1.weight",
        "model.diffusion_model.input_blocks.1.0.out_layers.0.bias": "down_blocks.0.resnets.0.norm2.bias",
        "model.diffusion_model.input_blocks.1.0.out_layers.0.weight": "down_blocks.0.resnets.0.norm2.weight",
        "model.diffusion_model.input_blocks.1.0.out_layers.3.bias": "down_blocks.0.resnets.0.conv2.bias",
        "model.diffusion_model.input_blocks.1.0.out_layers.3.weight": "down_blocks.0.resnets.0.conv2.weight",
        "model.diffusion_model.input_blocks.2.0.emb_layers.1.bias": "down_blocks.0.resnets.1.time_emb_proj.bias",
        "model.diffusion_model.input_blocks.2.0.emb_layers.1.weight": "down_blocks.0.resnets.1.time_emb_proj.weight",
        "model.diffusion_model.input_blocks.2.0.in_layers.0.bias": "down_blocks.0.resnets.1.norm1.bias",
        "model.diffusion_model.input_blocks.2.0.in_layers.0.weight": "down_blocks.0.resnets.1.norm1.weight",
        "model.diffusion_model.input_blocks.2.0.in_layers.2.bias": "down_blocks.0.resnets.1.conv1.bias",
        "model.diffusion_model.input_blocks.2.0.in_layers.2.weight": "down_blocks.0.resnets.1.conv1.weight",
        "model.diffusion_model.input_blocks.2.0.out_layers.0.bias": "down_blocks.0.resnets.1.norm2.bias",
        "model.diffusion_model.input_blocks.2.0.out_layers.0.weight": "down_blocks.0.resnets.1.norm2.weight",
        "model.diffusion_model.input_blocks.2.0.out_layers.3.bias": "down_blocks.0.resnets.1.conv2.bias",
        "model.diffusion_model.input_blocks.2.0.out_layers.3.weight": "down_blocks.0.resnets.1.conv2.weight",
        "model.diffusion_model.input_blocks.3.0.op.bias": "down_blocks.0.downsamplers.0.conv.bias",
        "model.diffusion_model.input_blocks.3.0.op.weight": "down_blocks.0.downsamplers.0.conv.weight",
        "model.diffusion_model.input_blocks.4.0.emb_layers.1.bias": "down_blocks.1.resnets.0.time_emb_proj.bias",
        "model.diffusion_model.input_blocks.4.0.emb_layers.1.weight": "down_blocks.1.resnets.0.time_emb_proj.weight",
        "model.diffusion_model.input_blocks.4.0.in_layers.0.bias": "down_blocks.1.resnets.0.norm1.bias",
        "model.diffusion_model.input_blocks.4.0.in_layers.0.weight": "down_blocks.1.resnets.0.norm1.weight",
        "model.diffusion_model.input_blocks.4.0.in_layers.2.bias": "down_blocks.1.resnets.0.conv1.bias",
        "model.diffusion_model.input_blocks.4.0.in_layers.2.weight": "down_blocks.1.resnets.0.conv1.weight",
        "model.diffusion_model.input_blocks.4.0.out_layers.0.bias": "down_blocks.1.resnets.0.norm2.bias",
        "model.diffusion_model.input_blocks.4.0.out_layers.0.weight": "down_blocks.1.resnets.0.norm2.weight",
        "model.diffusion_model.input_blocks.4.0.out_layers.3.bias": "down_blocks.1.resnets.0.conv2.bias",
        "model.diffusion_model.input_blocks.4.0.out_layers.3.weight": "down_blocks.1.resnets.0.conv2.weight",
        "model.diffusion_model.input_blocks.4.0.skip_connection.bias": "down_blocks.1.resnets.0.conv_shortcut.bias",
        "model.diffusion_model.input_blocks.4.0.skip_connection.weight": "down_blocks.1.resnets.0.conv_shortcut.weight",
        "model.diffusion_model.input_blocks.4.1.norm.bias": "down_blocks.1.attentions.0.norm.bias",
        "model.diffusion_model.input_blocks.4.1.norm.weight": "down_blocks.1.attentions.0.norm.weight",
        "model.diffusion_model.input_blocks.4.1.proj_in.bias": "down_blocks.1.attentions.0.proj_in.bias",
        "model.diffusion_model.input_blocks.4.1.proj_in.weight": "down_blocks.1.attentions.0.proj_in.weight",
        "model.diffusion_model.input_blocks.4.1.proj_out.bias": "down_blocks.1.attentions.0.proj_out.bias",
        "model.diffusion_model.input_blocks.4.1.proj_out.weight": "down_blocks.1.attentions.0.proj_out.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_k.weight": "down_blocks.1.attentions.0.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_out.0.bias": "down_blocks.1.attentions.0.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_out.0.weight": "down_blocks.1.attentions.0.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_q.weight": "down_blocks.1.attentions.0.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn1.to_v.weight": "down_blocks.1.attentions.0.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_k.weight": "down_blocks.1.attentions.0.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_out.0.bias": "down_blocks.1.attentions.0.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_out.0.weight": "down_blocks.1.attentions.0.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_q.weight": "down_blocks.1.attentions.0.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.attn2.to_v.weight": "down_blocks.1.attentions.0.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.ff.net.0.proj.bias": "down_blocks.1.attentions.0.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.ff.net.0.proj.weight": "down_blocks.1.attentions.0.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.ff.net.2.bias": "down_blocks.1.attentions.0.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.ff.net.2.weight": "down_blocks.1.attentions.0.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm1.bias": "down_blocks.1.attentions.0.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm1.weight": "down_blocks.1.attentions.0.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm2.bias": "down_blocks.1.attentions.0.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm2.weight": "down_blocks.1.attentions.0.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm3.bias": "down_blocks.1.attentions.0.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.0.norm3.weight": "down_blocks.1.attentions.0.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn1.to_k.weight": "down_blocks.1.attentions.0.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn1.to_out.0.bias": "down_blocks.1.attentions.0.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn1.to_out.0.weight": "down_blocks.1.attentions.0.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn1.to_q.weight": "down_blocks.1.attentions.0.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn1.to_v.weight": "down_blocks.1.attentions.0.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn2.to_k.weight": "down_blocks.1.attentions.0.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn2.to_out.0.bias": "down_blocks.1.attentions.0.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn2.to_out.0.weight": "down_blocks.1.attentions.0.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn2.to_q.weight": "down_blocks.1.attentions.0.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.attn2.to_v.weight": "down_blocks.1.attentions.0.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.ff.net.0.proj.bias": "down_blocks.1.attentions.0.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.ff.net.0.proj.weight": "down_blocks.1.attentions.0.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.ff.net.2.bias": "down_blocks.1.attentions.0.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.ff.net.2.weight": "down_blocks.1.attentions.0.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.norm1.bias": "down_blocks.1.attentions.0.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.norm1.weight": "down_blocks.1.attentions.0.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.norm2.bias": "down_blocks.1.attentions.0.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.norm2.weight": "down_blocks.1.attentions.0.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.norm3.bias": "down_blocks.1.attentions.0.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.input_blocks.4.1.transformer_blocks.1.norm3.weight": "down_blocks.1.attentions.0.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.input_blocks.5.0.emb_layers.1.bias": "down_blocks.1.resnets.1.time_emb_proj.bias",
        "model.diffusion_model.input_blocks.5.0.emb_layers.1.weight": "down_blocks.1.resnets.1.time_emb_proj.weight",
        "model.diffusion_model.input_blocks.5.0.in_layers.0.bias": "down_blocks.1.resnets.1.norm1.bias",
        "model.diffusion_model.input_blocks.5.0.in_layers.0.weight": "down_blocks.1.resnets.1.norm1.weight",
        "model.diffusion_model.input_blocks.5.0.in_layers.2.bias": "down_blocks.1.resnets.1.conv1.bias",
        "model.diffusion_model.input_blocks.5.0.in_layers.2.weight": "down_blocks.1.resnets.1.conv1.weight",
        "model.diffusion_model.input_blocks.5.0.out_layers.0.bias": "down_blocks.1.resnets.1.norm2.bias",
        "model.diffusion_model.input_blocks.5.0.out_layers.0.weight": "down_blocks.1.resnets.1.norm2.weight",
        "model.diffusion_model.input_blocks.5.0.out_layers.3.bias": "down_blocks.1.resnets.1.conv2.bias",
        "model.diffusion_model.input_blocks.5.0.out_layers.3.weight": "down_blocks.1.resnets.1.conv2.weight",
        "model.diffusion_model.input_blocks.5.1.norm.bias": "down_blocks.1.attentions.1.norm.bias",
        "model.diffusion_model.input_blocks.5.1.norm.weight": "down_blocks.1.attentions.1.norm.weight",
        "model.diffusion_model.input_blocks.5.1.proj_in.bias": "down_blocks.1.attentions.1.proj_in.bias",
        "model.diffusion_model.input_blocks.5.1.proj_in.weight": "down_blocks.1.attentions.1.proj_in.weight",
        "model.diffusion_model.input_blocks.5.1.proj_out.bias": "down_blocks.1.attentions.1.proj_out.bias",
        "model.diffusion_model.input_blocks.5.1.proj_out.weight": "down_blocks.1.attentions.1.proj_out.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_k.weight": "down_blocks.1.attentions.1.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_out.0.bias": "down_blocks.1.attentions.1.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_out.0.weight": "down_blocks.1.attentions.1.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_q.weight": "down_blocks.1.attentions.1.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn1.to_v.weight": "down_blocks.1.attentions.1.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_k.weight": "down_blocks.1.attentions.1.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_out.0.bias": "down_blocks.1.attentions.1.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_out.0.weight": "down_blocks.1.attentions.1.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_q.weight": "down_blocks.1.attentions.1.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.attn2.to_v.weight": "down_blocks.1.attentions.1.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.ff.net.0.proj.bias": "down_blocks.1.attentions.1.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.ff.net.0.proj.weight": "down_blocks.1.attentions.1.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.ff.net.2.bias": "down_blocks.1.attentions.1.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.ff.net.2.weight": "down_blocks.1.attentions.1.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm1.bias": "down_blocks.1.attentions.1.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm1.weight": "down_blocks.1.attentions.1.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm2.bias": "down_blocks.1.attentions.1.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm2.weight": "down_blocks.1.attentions.1.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm3.bias": "down_blocks.1.attentions.1.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.0.norm3.weight": "down_blocks.1.attentions.1.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn1.to_k.weight": "down_blocks.1.attentions.1.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn1.to_out.0.bias": "down_blocks.1.attentions.1.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn1.to_out.0.weight": "down_blocks.1.attentions.1.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn1.to_q.weight": "down_blocks.1.attentions.1.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn1.to_v.weight": "down_blocks.1.attentions.1.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn2.to_k.weight": "down_blocks.1.attentions.1.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn2.to_out.0.bias": "down_blocks.1.attentions.1.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn2.to_out.0.weight": "down_blocks.1.attentions.1.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn2.to_q.weight": "down_blocks.1.attentions.1.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.attn2.to_v.weight": "down_blocks.1.attentions.1.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.ff.net.0.proj.bias": "down_blocks.1.attentions.1.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.ff.net.0.proj.weight": "down_blocks.1.attentions.1.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.ff.net.2.bias": "down_blocks.1.attentions.1.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.ff.net.2.weight": "down_blocks.1.attentions.1.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.norm1.bias": "down_blocks.1.attentions.1.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.norm1.weight": "down_blocks.1.attentions.1.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.norm2.bias": "down_blocks.1.attentions.1.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.norm2.weight": "down_blocks.1.attentions.1.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.norm3.bias": "down_blocks.1.attentions.1.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.input_blocks.5.1.transformer_blocks.1.norm3.weight": "down_blocks.1.attentions.1.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.input_blocks.6.0.op.bias": "down_blocks.1.downsamplers.0.conv.bias",
        "model.diffusion_model.input_blocks.6.0.op.weight": "down_blocks.1.downsamplers.0.conv.weight",
        "model.diffusion_model.input_blocks.7.0.emb_layers.1.bias": "down_blocks.2.resnets.0.time_emb_proj.bias",
        "model.diffusion_model.input_blocks.7.0.emb_layers.1.weight": "down_blocks.2.resnets.0.time_emb_proj.weight",
        "model.diffusion_model.input_blocks.7.0.in_layers.0.bias": "down_blocks.2.resnets.0.norm1.bias",
        "model.diffusion_model.input_blocks.7.0.in_layers.0.weight": "down_blocks.2.resnets.0.norm1.weight",
        "model.diffusion_model.input_blocks.7.0.in_layers.2.bias": "down_blocks.2.resnets.0.conv1.bias",
        "model.diffusion_model.input_blocks.7.0.in_layers.2.weight": "down_blocks.2.resnets.0.conv1.weight",
        "model.diffusion_model.input_blocks.7.0.out_layers.0.bias": "down_blocks.2.resnets.0.norm2.bias",
        "model.diffusion_model.input_blocks.7.0.out_layers.0.weight": "down_blocks.2.resnets.0.norm2.weight",
        "model.diffusion_model.input_blocks.7.0.out_layers.3.bias": "down_blocks.2.resnets.0.conv2.bias",
        "model.diffusion_model.input_blocks.7.0.out_layers.3.weight": "down_blocks.2.resnets.0.conv2.weight",
        "model.diffusion_model.input_blocks.7.0.skip_connection.bias": "down_blocks.2.resnets.0.conv_shortcut.bias",
        "model.diffusion_model.input_blocks.7.0.skip_connection.weight": "down_blocks.2.resnets.0.conv_shortcut.weight",
        "model.diffusion_model.input_blocks.7.1.norm.bias": "down_blocks.2.attentions.0.norm.bias",
        "model.diffusion_model.input_blocks.7.1.norm.weight": "down_blocks.2.attentions.0.norm.weight",
        "model.diffusion_model.input_blocks.7.1.proj_in.bias": "down_blocks.2.attentions.0.proj_in.bias",
        "model.diffusion_model.input_blocks.7.1.proj_in.weight": "down_blocks.2.attentions.0.proj_in.weight",
        "model.diffusion_model.input_blocks.7.1.proj_out.bias": "down_blocks.2.attentions.0.proj_out.bias",
        "model.diffusion_model.input_blocks.7.1.proj_out.weight": "down_blocks.2.attentions.0.proj_out.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn1.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.attn2.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.ff.net.0.proj.bias": "down_blocks.2.attentions.0.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.ff.net.0.proj.weight": "down_blocks.2.attentions.0.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.ff.net.2.bias": "down_blocks.2.attentions.0.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.ff.net.2.weight": "down_blocks.2.attentions.0.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm1.bias": "down_blocks.2.attentions.0.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm1.weight": "down_blocks.2.attentions.0.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm2.bias": "down_blocks.2.attentions.0.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm2.weight": "down_blocks.2.attentions.0.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm3.bias": "down_blocks.2.attentions.0.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.0.norm3.weight": "down_blocks.2.attentions.0.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn1.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn1.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn1.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn1.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn1.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn2.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn2.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn2.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn2.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.attn2.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.ff.net.0.proj.bias": "down_blocks.2.attentions.0.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.ff.net.0.proj.weight": "down_blocks.2.attentions.0.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.ff.net.2.bias": "down_blocks.2.attentions.0.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.ff.net.2.weight": "down_blocks.2.attentions.0.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.norm1.bias": "down_blocks.2.attentions.0.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.norm1.weight": "down_blocks.2.attentions.0.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.norm2.bias": "down_blocks.2.attentions.0.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.norm2.weight": "down_blocks.2.attentions.0.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.norm3.bias": "down_blocks.2.attentions.0.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.1.norm3.weight": "down_blocks.2.attentions.0.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn1.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.2.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn1.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.2.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn1.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.2.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn1.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.2.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn1.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.2.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn2.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.2.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn2.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.2.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn2.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.2.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn2.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.2.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.attn2.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.2.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.ff.net.0.proj.bias": "down_blocks.2.attentions.0.transformer_blocks.2.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.ff.net.0.proj.weight": "down_blocks.2.attentions.0.transformer_blocks.2.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.ff.net.2.bias": "down_blocks.2.attentions.0.transformer_blocks.2.ff.net.2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.ff.net.2.weight": "down_blocks.2.attentions.0.transformer_blocks.2.ff.net.2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.norm1.bias": "down_blocks.2.attentions.0.transformer_blocks.2.norm1.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.norm1.weight": "down_blocks.2.attentions.0.transformer_blocks.2.norm1.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.norm2.bias": "down_blocks.2.attentions.0.transformer_blocks.2.norm2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.norm2.weight": "down_blocks.2.attentions.0.transformer_blocks.2.norm2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.norm3.bias": "down_blocks.2.attentions.0.transformer_blocks.2.norm3.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.2.norm3.weight": "down_blocks.2.attentions.0.transformer_blocks.2.norm3.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn1.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.3.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn1.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.3.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn1.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.3.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn1.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.3.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn1.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.3.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn2.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.3.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn2.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.3.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn2.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.3.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn2.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.3.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.attn2.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.3.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.ff.net.0.proj.bias": "down_blocks.2.attentions.0.transformer_blocks.3.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.ff.net.0.proj.weight": "down_blocks.2.attentions.0.transformer_blocks.3.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.ff.net.2.bias": "down_blocks.2.attentions.0.transformer_blocks.3.ff.net.2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.ff.net.2.weight": "down_blocks.2.attentions.0.transformer_blocks.3.ff.net.2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.norm1.bias": "down_blocks.2.attentions.0.transformer_blocks.3.norm1.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.norm1.weight": "down_blocks.2.attentions.0.transformer_blocks.3.norm1.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.norm2.bias": "down_blocks.2.attentions.0.transformer_blocks.3.norm2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.norm2.weight": "down_blocks.2.attentions.0.transformer_blocks.3.norm2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.norm3.bias": "down_blocks.2.attentions.0.transformer_blocks.3.norm3.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.3.norm3.weight": "down_blocks.2.attentions.0.transformer_blocks.3.norm3.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn1.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.4.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn1.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.4.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn1.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.4.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn1.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.4.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn1.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.4.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn2.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.4.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn2.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.4.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn2.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.4.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn2.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.4.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.attn2.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.4.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.ff.net.0.proj.bias": "down_blocks.2.attentions.0.transformer_blocks.4.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.ff.net.0.proj.weight": "down_blocks.2.attentions.0.transformer_blocks.4.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.ff.net.2.bias": "down_blocks.2.attentions.0.transformer_blocks.4.ff.net.2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.ff.net.2.weight": "down_blocks.2.attentions.0.transformer_blocks.4.ff.net.2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.norm1.bias": "down_blocks.2.attentions.0.transformer_blocks.4.norm1.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.norm1.weight": "down_blocks.2.attentions.0.transformer_blocks.4.norm1.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.norm2.bias": "down_blocks.2.attentions.0.transformer_blocks.4.norm2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.norm2.weight": "down_blocks.2.attentions.0.transformer_blocks.4.norm2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.norm3.bias": "down_blocks.2.attentions.0.transformer_blocks.4.norm3.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.4.norm3.weight": "down_blocks.2.attentions.0.transformer_blocks.4.norm3.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn1.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.5.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn1.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.5.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn1.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.5.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn1.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.5.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn1.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.5.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn2.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.5.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn2.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.5.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn2.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.5.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn2.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.5.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.attn2.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.5.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.ff.net.0.proj.bias": "down_blocks.2.attentions.0.transformer_blocks.5.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.ff.net.0.proj.weight": "down_blocks.2.attentions.0.transformer_blocks.5.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.ff.net.2.bias": "down_blocks.2.attentions.0.transformer_blocks.5.ff.net.2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.ff.net.2.weight": "down_blocks.2.attentions.0.transformer_blocks.5.ff.net.2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.norm1.bias": "down_blocks.2.attentions.0.transformer_blocks.5.norm1.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.norm1.weight": "down_blocks.2.attentions.0.transformer_blocks.5.norm1.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.norm2.bias": "down_blocks.2.attentions.0.transformer_blocks.5.norm2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.norm2.weight": "down_blocks.2.attentions.0.transformer_blocks.5.norm2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.norm3.bias": "down_blocks.2.attentions.0.transformer_blocks.5.norm3.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.5.norm3.weight": "down_blocks.2.attentions.0.transformer_blocks.5.norm3.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn1.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.6.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn1.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.6.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn1.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.6.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn1.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.6.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn1.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.6.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn2.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.6.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn2.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.6.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn2.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.6.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn2.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.6.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.attn2.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.6.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.ff.net.0.proj.bias": "down_blocks.2.attentions.0.transformer_blocks.6.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.ff.net.0.proj.weight": "down_blocks.2.attentions.0.transformer_blocks.6.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.ff.net.2.bias": "down_blocks.2.attentions.0.transformer_blocks.6.ff.net.2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.ff.net.2.weight": "down_blocks.2.attentions.0.transformer_blocks.6.ff.net.2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.norm1.bias": "down_blocks.2.attentions.0.transformer_blocks.6.norm1.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.norm1.weight": "down_blocks.2.attentions.0.transformer_blocks.6.norm1.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.norm2.bias": "down_blocks.2.attentions.0.transformer_blocks.6.norm2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.norm2.weight": "down_blocks.2.attentions.0.transformer_blocks.6.norm2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.norm3.bias": "down_blocks.2.attentions.0.transformer_blocks.6.norm3.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.6.norm3.weight": "down_blocks.2.attentions.0.transformer_blocks.6.norm3.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn1.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.7.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn1.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.7.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn1.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.7.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn1.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.7.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn1.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.7.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn2.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.7.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn2.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.7.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn2.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.7.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn2.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.7.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.attn2.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.7.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.ff.net.0.proj.bias": "down_blocks.2.attentions.0.transformer_blocks.7.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.ff.net.0.proj.weight": "down_blocks.2.attentions.0.transformer_blocks.7.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.ff.net.2.bias": "down_blocks.2.attentions.0.transformer_blocks.7.ff.net.2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.ff.net.2.weight": "down_blocks.2.attentions.0.transformer_blocks.7.ff.net.2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.norm1.bias": "down_blocks.2.attentions.0.transformer_blocks.7.norm1.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.norm1.weight": "down_blocks.2.attentions.0.transformer_blocks.7.norm1.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.norm2.bias": "down_blocks.2.attentions.0.transformer_blocks.7.norm2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.norm2.weight": "down_blocks.2.attentions.0.transformer_blocks.7.norm2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.norm3.bias": "down_blocks.2.attentions.0.transformer_blocks.7.norm3.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.7.norm3.weight": "down_blocks.2.attentions.0.transformer_blocks.7.norm3.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn1.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.8.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn1.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.8.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn1.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.8.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn1.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.8.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn1.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.8.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn2.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.8.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn2.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.8.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn2.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.8.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn2.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.8.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.attn2.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.8.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.ff.net.0.proj.bias": "down_blocks.2.attentions.0.transformer_blocks.8.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.ff.net.0.proj.weight": "down_blocks.2.attentions.0.transformer_blocks.8.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.ff.net.2.bias": "down_blocks.2.attentions.0.transformer_blocks.8.ff.net.2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.ff.net.2.weight": "down_blocks.2.attentions.0.transformer_blocks.8.ff.net.2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.norm1.bias": "down_blocks.2.attentions.0.transformer_blocks.8.norm1.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.norm1.weight": "down_blocks.2.attentions.0.transformer_blocks.8.norm1.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.norm2.bias": "down_blocks.2.attentions.0.transformer_blocks.8.norm2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.norm2.weight": "down_blocks.2.attentions.0.transformer_blocks.8.norm2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.norm3.bias": "down_blocks.2.attentions.0.transformer_blocks.8.norm3.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.8.norm3.weight": "down_blocks.2.attentions.0.transformer_blocks.8.norm3.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn1.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.9.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn1.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.9.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn1.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.9.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn1.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.9.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn1.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.9.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn2.to_k.weight": "down_blocks.2.attentions.0.transformer_blocks.9.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn2.to_out.0.bias": "down_blocks.2.attentions.0.transformer_blocks.9.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn2.to_out.0.weight": "down_blocks.2.attentions.0.transformer_blocks.9.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn2.to_q.weight": "down_blocks.2.attentions.0.transformer_blocks.9.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.attn2.to_v.weight": "down_blocks.2.attentions.0.transformer_blocks.9.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.ff.net.0.proj.bias": "down_blocks.2.attentions.0.transformer_blocks.9.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.ff.net.0.proj.weight": "down_blocks.2.attentions.0.transformer_blocks.9.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.ff.net.2.bias": "down_blocks.2.attentions.0.transformer_blocks.9.ff.net.2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.ff.net.2.weight": "down_blocks.2.attentions.0.transformer_blocks.9.ff.net.2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.norm1.bias": "down_blocks.2.attentions.0.transformer_blocks.9.norm1.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.norm1.weight": "down_blocks.2.attentions.0.transformer_blocks.9.norm1.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.norm2.bias": "down_blocks.2.attentions.0.transformer_blocks.9.norm2.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.norm2.weight": "down_blocks.2.attentions.0.transformer_blocks.9.norm2.weight",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.norm3.bias": "down_blocks.2.attentions.0.transformer_blocks.9.norm3.bias",
        "model.diffusion_model.input_blocks.7.1.transformer_blocks.9.norm3.weight": "down_blocks.2.attentions.0.transformer_blocks.9.norm3.weight",
        "model.diffusion_model.input_blocks.8.0.emb_layers.1.bias": "down_blocks.2.resnets.1.time_emb_proj.bias",
        "model.diffusion_model.input_blocks.8.0.emb_layers.1.weight": "down_blocks.2.resnets.1.time_emb_proj.weight",
        "model.diffusion_model.input_blocks.8.0.in_layers.0.bias": "down_blocks.2.resnets.1.norm1.bias",
        "model.diffusion_model.input_blocks.8.0.in_layers.0.weight": "down_blocks.2.resnets.1.norm1.weight",
        "model.diffusion_model.input_blocks.8.0.in_layers.2.bias": "down_blocks.2.resnets.1.conv1.bias",
        "model.diffusion_model.input_blocks.8.0.in_layers.2.weight": "down_blocks.2.resnets.1.conv1.weight",
        "model.diffusion_model.input_blocks.8.0.out_layers.0.bias": "down_blocks.2.resnets.1.norm2.bias",
        "model.diffusion_model.input_blocks.8.0.out_layers.0.weight": "down_blocks.2.resnets.1.norm2.weight",
        "model.diffusion_model.input_blocks.8.0.out_layers.3.bias": "down_blocks.2.resnets.1.conv2.bias",
        "model.diffusion_model.input_blocks.8.0.out_layers.3.weight": "down_blocks.2.resnets.1.conv2.weight",
        "model.diffusion_model.input_blocks.8.1.norm.bias": "down_blocks.2.attentions.1.norm.bias",
        "model.diffusion_model.input_blocks.8.1.norm.weight": "down_blocks.2.attentions.1.norm.weight",
        "model.diffusion_model.input_blocks.8.1.proj_in.bias": "down_blocks.2.attentions.1.proj_in.bias",
        "model.diffusion_model.input_blocks.8.1.proj_in.weight": "down_blocks.2.attentions.1.proj_in.weight",
        "model.diffusion_model.input_blocks.8.1.proj_out.bias": "down_blocks.2.attentions.1.proj_out.bias",
        "model.diffusion_model.input_blocks.8.1.proj_out.weight": "down_blocks.2.attentions.1.proj_out.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn1.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.attn2.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.ff.net.0.proj.bias": "down_blocks.2.attentions.1.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.ff.net.0.proj.weight": "down_blocks.2.attentions.1.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.ff.net.2.bias": "down_blocks.2.attentions.1.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.ff.net.2.weight": "down_blocks.2.attentions.1.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm1.bias": "down_blocks.2.attentions.1.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm1.weight": "down_blocks.2.attentions.1.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm2.bias": "down_blocks.2.attentions.1.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm2.weight": "down_blocks.2.attentions.1.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm3.bias": "down_blocks.2.attentions.1.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.0.norm3.weight": "down_blocks.2.attentions.1.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn1.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn1.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn1.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn1.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn1.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn2.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn2.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn2.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn2.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.attn2.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.ff.net.0.proj.bias": "down_blocks.2.attentions.1.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.ff.net.0.proj.weight": "down_blocks.2.attentions.1.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.ff.net.2.bias": "down_blocks.2.attentions.1.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.ff.net.2.weight": "down_blocks.2.attentions.1.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.norm1.bias": "down_blocks.2.attentions.1.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.norm1.weight": "down_blocks.2.attentions.1.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.norm2.bias": "down_blocks.2.attentions.1.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.norm2.weight": "down_blocks.2.attentions.1.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.norm3.bias": "down_blocks.2.attentions.1.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.1.norm3.weight": "down_blocks.2.attentions.1.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn1.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.2.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn1.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.2.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn1.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.2.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn1.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.2.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn1.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.2.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn2.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.2.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn2.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.2.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn2.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.2.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn2.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.2.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.attn2.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.2.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.ff.net.0.proj.bias": "down_blocks.2.attentions.1.transformer_blocks.2.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.ff.net.0.proj.weight": "down_blocks.2.attentions.1.transformer_blocks.2.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.ff.net.2.bias": "down_blocks.2.attentions.1.transformer_blocks.2.ff.net.2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.ff.net.2.weight": "down_blocks.2.attentions.1.transformer_blocks.2.ff.net.2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.norm1.bias": "down_blocks.2.attentions.1.transformer_blocks.2.norm1.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.norm1.weight": "down_blocks.2.attentions.1.transformer_blocks.2.norm1.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.norm2.bias": "down_blocks.2.attentions.1.transformer_blocks.2.norm2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.norm2.weight": "down_blocks.2.attentions.1.transformer_blocks.2.norm2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.norm3.bias": "down_blocks.2.attentions.1.transformer_blocks.2.norm3.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.2.norm3.weight": "down_blocks.2.attentions.1.transformer_blocks.2.norm3.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn1.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.3.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn1.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.3.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn1.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.3.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn1.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.3.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn1.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.3.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn2.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.3.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn2.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.3.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn2.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.3.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn2.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.3.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.attn2.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.3.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.ff.net.0.proj.bias": "down_blocks.2.attentions.1.transformer_blocks.3.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.ff.net.0.proj.weight": "down_blocks.2.attentions.1.transformer_blocks.3.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.ff.net.2.bias": "down_blocks.2.attentions.1.transformer_blocks.3.ff.net.2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.ff.net.2.weight": "down_blocks.2.attentions.1.transformer_blocks.3.ff.net.2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.norm1.bias": "down_blocks.2.attentions.1.transformer_blocks.3.norm1.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.norm1.weight": "down_blocks.2.attentions.1.transformer_blocks.3.norm1.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.norm2.bias": "down_blocks.2.attentions.1.transformer_blocks.3.norm2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.norm2.weight": "down_blocks.2.attentions.1.transformer_blocks.3.norm2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.norm3.bias": "down_blocks.2.attentions.1.transformer_blocks.3.norm3.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.3.norm3.weight": "down_blocks.2.attentions.1.transformer_blocks.3.norm3.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn1.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.4.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn1.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.4.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn1.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.4.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn1.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.4.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn1.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.4.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn2.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.4.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn2.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.4.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn2.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.4.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn2.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.4.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.attn2.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.4.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.ff.net.0.proj.bias": "down_blocks.2.attentions.1.transformer_blocks.4.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.ff.net.0.proj.weight": "down_blocks.2.attentions.1.transformer_blocks.4.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.ff.net.2.bias": "down_blocks.2.attentions.1.transformer_blocks.4.ff.net.2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.ff.net.2.weight": "down_blocks.2.attentions.1.transformer_blocks.4.ff.net.2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.norm1.bias": "down_blocks.2.attentions.1.transformer_blocks.4.norm1.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.norm1.weight": "down_blocks.2.attentions.1.transformer_blocks.4.norm1.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.norm2.bias": "down_blocks.2.attentions.1.transformer_blocks.4.norm2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.norm2.weight": "down_blocks.2.attentions.1.transformer_blocks.4.norm2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.norm3.bias": "down_blocks.2.attentions.1.transformer_blocks.4.norm3.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.4.norm3.weight": "down_blocks.2.attentions.1.transformer_blocks.4.norm3.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn1.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.5.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn1.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.5.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn1.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.5.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn1.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.5.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn1.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.5.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn2.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.5.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn2.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.5.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn2.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.5.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn2.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.5.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.attn2.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.5.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.ff.net.0.proj.bias": "down_blocks.2.attentions.1.transformer_blocks.5.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.ff.net.0.proj.weight": "down_blocks.2.attentions.1.transformer_blocks.5.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.ff.net.2.bias": "down_blocks.2.attentions.1.transformer_blocks.5.ff.net.2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.ff.net.2.weight": "down_blocks.2.attentions.1.transformer_blocks.5.ff.net.2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.norm1.bias": "down_blocks.2.attentions.1.transformer_blocks.5.norm1.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.norm1.weight": "down_blocks.2.attentions.1.transformer_blocks.5.norm1.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.norm2.bias": "down_blocks.2.attentions.1.transformer_blocks.5.norm2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.norm2.weight": "down_blocks.2.attentions.1.transformer_blocks.5.norm2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.norm3.bias": "down_blocks.2.attentions.1.transformer_blocks.5.norm3.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.5.norm3.weight": "down_blocks.2.attentions.1.transformer_blocks.5.norm3.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn1.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.6.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn1.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.6.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn1.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.6.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn1.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.6.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn1.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.6.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn2.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.6.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn2.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.6.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn2.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.6.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn2.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.6.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.attn2.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.6.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.ff.net.0.proj.bias": "down_blocks.2.attentions.1.transformer_blocks.6.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.ff.net.0.proj.weight": "down_blocks.2.attentions.1.transformer_blocks.6.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.ff.net.2.bias": "down_blocks.2.attentions.1.transformer_blocks.6.ff.net.2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.ff.net.2.weight": "down_blocks.2.attentions.1.transformer_blocks.6.ff.net.2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.norm1.bias": "down_blocks.2.attentions.1.transformer_blocks.6.norm1.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.norm1.weight": "down_blocks.2.attentions.1.transformer_blocks.6.norm1.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.norm2.bias": "down_blocks.2.attentions.1.transformer_blocks.6.norm2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.norm2.weight": "down_blocks.2.attentions.1.transformer_blocks.6.norm2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.norm3.bias": "down_blocks.2.attentions.1.transformer_blocks.6.norm3.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.6.norm3.weight": "down_blocks.2.attentions.1.transformer_blocks.6.norm3.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn1.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.7.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn1.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.7.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn1.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.7.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn1.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.7.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn1.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.7.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn2.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.7.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn2.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.7.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn2.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.7.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn2.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.7.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.attn2.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.7.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.ff.net.0.proj.bias": "down_blocks.2.attentions.1.transformer_blocks.7.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.ff.net.0.proj.weight": "down_blocks.2.attentions.1.transformer_blocks.7.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.ff.net.2.bias": "down_blocks.2.attentions.1.transformer_blocks.7.ff.net.2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.ff.net.2.weight": "down_blocks.2.attentions.1.transformer_blocks.7.ff.net.2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.norm1.bias": "down_blocks.2.attentions.1.transformer_blocks.7.norm1.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.norm1.weight": "down_blocks.2.attentions.1.transformer_blocks.7.norm1.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.norm2.bias": "down_blocks.2.attentions.1.transformer_blocks.7.norm2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.norm2.weight": "down_blocks.2.attentions.1.transformer_blocks.7.norm2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.norm3.bias": "down_blocks.2.attentions.1.transformer_blocks.7.norm3.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.7.norm3.weight": "down_blocks.2.attentions.1.transformer_blocks.7.norm3.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn1.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.8.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn1.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.8.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn1.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.8.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn1.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.8.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn1.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.8.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn2.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.8.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn2.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.8.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn2.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.8.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn2.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.8.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.attn2.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.8.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.ff.net.0.proj.bias": "down_blocks.2.attentions.1.transformer_blocks.8.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.ff.net.0.proj.weight": "down_blocks.2.attentions.1.transformer_blocks.8.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.ff.net.2.bias": "down_blocks.2.attentions.1.transformer_blocks.8.ff.net.2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.ff.net.2.weight": "down_blocks.2.attentions.1.transformer_blocks.8.ff.net.2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.norm1.bias": "down_blocks.2.attentions.1.transformer_blocks.8.norm1.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.norm1.weight": "down_blocks.2.attentions.1.transformer_blocks.8.norm1.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.norm2.bias": "down_blocks.2.attentions.1.transformer_blocks.8.norm2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.norm2.weight": "down_blocks.2.attentions.1.transformer_blocks.8.norm2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.norm3.bias": "down_blocks.2.attentions.1.transformer_blocks.8.norm3.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.8.norm3.weight": "down_blocks.2.attentions.1.transformer_blocks.8.norm3.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn1.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.9.attn1.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn1.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.9.attn1.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn1.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.9.attn1.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn1.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.9.attn1.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn1.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.9.attn1.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn2.to_k.weight": "down_blocks.2.attentions.1.transformer_blocks.9.attn2.to_k.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn2.to_out.0.bias": "down_blocks.2.attentions.1.transformer_blocks.9.attn2.to_out.0.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn2.to_out.0.weight": "down_blocks.2.attentions.1.transformer_blocks.9.attn2.to_out.0.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn2.to_q.weight": "down_blocks.2.attentions.1.transformer_blocks.9.attn2.to_q.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.attn2.to_v.weight": "down_blocks.2.attentions.1.transformer_blocks.9.attn2.to_v.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.ff.net.0.proj.bias": "down_blocks.2.attentions.1.transformer_blocks.9.ff.net.0.proj.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.ff.net.0.proj.weight": "down_blocks.2.attentions.1.transformer_blocks.9.ff.net.0.proj.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.ff.net.2.bias": "down_blocks.2.attentions.1.transformer_blocks.9.ff.net.2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.ff.net.2.weight": "down_blocks.2.attentions.1.transformer_blocks.9.ff.net.2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.norm1.bias": "down_blocks.2.attentions.1.transformer_blocks.9.norm1.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.norm1.weight": "down_blocks.2.attentions.1.transformer_blocks.9.norm1.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.norm2.bias": "down_blocks.2.attentions.1.transformer_blocks.9.norm2.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.norm2.weight": "down_blocks.2.attentions.1.transformer_blocks.9.norm2.weight",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.norm3.bias": "down_blocks.2.attentions.1.transformer_blocks.9.norm3.bias",
        "model.diffusion_model.input_blocks.8.1.transformer_blocks.9.norm3.weight": "down_blocks.2.attentions.1.transformer_blocks.9.norm3.weight",
        "model.diffusion_model.label_emb.0.0.bias": "add_embedding.linear_1.bias",
        "model.diffusion_model.label_emb.0.0.weight": "add_embedding.linear_1.weight",
        "model.diffusion_model.label_emb.0.2.bias": "add_embedding.linear_2.bias",
        "model.diffusion_model.label_emb.0.2.weight": "add_embedding.linear_2.weight",
        "model.diffusion_model.middle_block.0.emb_layers.1.bias": "mid_block.resnets.0.time_emb_proj.bias",
        "model.diffusion_model.middle_block.0.emb_layers.1.weight": "mid_block.resnets.0.time_emb_proj.weight",
        "model.diffusion_model.middle_block.0.in_layers.0.bias": "mid_block.resnets.0.norm1.bias",
        "model.diffusion_model.middle_block.0.in_layers.0.weight": "mid_block.resnets.0.norm1.weight",
        "model.diffusion_model.middle_block.0.in_layers.2.bias": "mid_block.resnets.0.conv1.bias",
        "model.diffusion_model.middle_block.0.in_layers.2.weight": "mid_block.resnets.0.conv1.weight",
        "model.diffusion_model.middle_block.0.out_layers.0.bias": "mid_block.resnets.0.norm2.bias",
        "model.diffusion_model.middle_block.0.out_layers.0.weight": "mid_block.resnets.0.norm2.weight",
        "model.diffusion_model.middle_block.0.out_layers.3.bias": "mid_block.resnets.0.conv2.bias",
        "model.diffusion_model.middle_block.0.out_layers.3.weight": "mid_block.resnets.0.conv2.weight",
        "model.diffusion_model.middle_block.1.norm.bias": "mid_block.attentions.0.norm.bias",
        "model.diffusion_model.middle_block.1.norm.weight": "mid_block.attentions.0.norm.weight",
        "model.diffusion_model.middle_block.1.proj_in.bias": "mid_block.attentions.0.proj_in.bias",
        "model.diffusion_model.middle_block.1.proj_in.weight": "mid_block.attentions.0.proj_in.weight",
        "model.diffusion_model.middle_block.1.proj_out.bias": "mid_block.attentions.0.proj_out.bias",
        "model.diffusion_model.middle_block.1.proj_out.weight": "mid_block.attentions.0.proj_out.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_k.weight": "mid_block.attentions.0.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_q.weight": "mid_block.attentions.0.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.attn1.to_v.weight": "mid_block.attentions.0.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_k.weight": "mid_block.attentions.0.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_q.weight": "mid_block.attentions.0.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.attn2.to_v.weight": "mid_block.attentions.0.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.ff.net.0.proj.bias": "mid_block.attentions.0.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.ff.net.0.proj.weight": "mid_block.attentions.0.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.ff.net.2.bias": "mid_block.attentions.0.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.ff.net.2.weight": "mid_block.attentions.0.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.norm1.bias": "mid_block.attentions.0.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.norm1.weight": "mid_block.attentions.0.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.norm2.bias": "mid_block.attentions.0.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.norm2.weight": "mid_block.attentions.0.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.norm3.bias": "mid_block.attentions.0.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.0.norm3.weight": "mid_block.attentions.0.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.attn1.to_k.weight": "mid_block.attentions.0.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.attn1.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.attn1.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.attn1.to_q.weight": "mid_block.attentions.0.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.attn1.to_v.weight": "mid_block.attentions.0.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.attn2.to_k.weight": "mid_block.attentions.0.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.attn2.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.attn2.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.attn2.to_q.weight": "mid_block.attentions.0.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.attn2.to_v.weight": "mid_block.attentions.0.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.ff.net.0.proj.bias": "mid_block.attentions.0.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.ff.net.0.proj.weight": "mid_block.attentions.0.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.ff.net.2.bias": "mid_block.attentions.0.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.ff.net.2.weight": "mid_block.attentions.0.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.norm1.bias": "mid_block.attentions.0.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.norm1.weight": "mid_block.attentions.0.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.norm2.bias": "mid_block.attentions.0.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.norm2.weight": "mid_block.attentions.0.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.norm3.bias": "mid_block.attentions.0.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.1.norm3.weight": "mid_block.attentions.0.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.attn1.to_k.weight": "mid_block.attentions.0.transformer_blocks.2.attn1.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.attn1.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.2.attn1.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.attn1.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.2.attn1.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.attn1.to_q.weight": "mid_block.attentions.0.transformer_blocks.2.attn1.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.attn1.to_v.weight": "mid_block.attentions.0.transformer_blocks.2.attn1.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.attn2.to_k.weight": "mid_block.attentions.0.transformer_blocks.2.attn2.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.attn2.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.2.attn2.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.attn2.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.2.attn2.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.attn2.to_q.weight": "mid_block.attentions.0.transformer_blocks.2.attn2.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.attn2.to_v.weight": "mid_block.attentions.0.transformer_blocks.2.attn2.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.ff.net.0.proj.bias": "mid_block.attentions.0.transformer_blocks.2.ff.net.0.proj.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.ff.net.0.proj.weight": "mid_block.attentions.0.transformer_blocks.2.ff.net.0.proj.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.ff.net.2.bias": "mid_block.attentions.0.transformer_blocks.2.ff.net.2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.ff.net.2.weight": "mid_block.attentions.0.transformer_blocks.2.ff.net.2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.norm1.bias": "mid_block.attentions.0.transformer_blocks.2.norm1.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.norm1.weight": "mid_block.attentions.0.transformer_blocks.2.norm1.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.norm2.bias": "mid_block.attentions.0.transformer_blocks.2.norm2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.norm2.weight": "mid_block.attentions.0.transformer_blocks.2.norm2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.norm3.bias": "mid_block.attentions.0.transformer_blocks.2.norm3.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.2.norm3.weight": "mid_block.attentions.0.transformer_blocks.2.norm3.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.attn1.to_k.weight": "mid_block.attentions.0.transformer_blocks.3.attn1.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.attn1.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.3.attn1.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.attn1.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.3.attn1.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.attn1.to_q.weight": "mid_block.attentions.0.transformer_blocks.3.attn1.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.attn1.to_v.weight": "mid_block.attentions.0.transformer_blocks.3.attn1.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.attn2.to_k.weight": "mid_block.attentions.0.transformer_blocks.3.attn2.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.attn2.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.3.attn2.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.attn2.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.3.attn2.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.attn2.to_q.weight": "mid_block.attentions.0.transformer_blocks.3.attn2.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.attn2.to_v.weight": "mid_block.attentions.0.transformer_blocks.3.attn2.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.ff.net.0.proj.bias": "mid_block.attentions.0.transformer_blocks.3.ff.net.0.proj.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.ff.net.0.proj.weight": "mid_block.attentions.0.transformer_blocks.3.ff.net.0.proj.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.ff.net.2.bias": "mid_block.attentions.0.transformer_blocks.3.ff.net.2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.ff.net.2.weight": "mid_block.attentions.0.transformer_blocks.3.ff.net.2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.norm1.bias": "mid_block.attentions.0.transformer_blocks.3.norm1.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.norm1.weight": "mid_block.attentions.0.transformer_blocks.3.norm1.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.norm2.bias": "mid_block.attentions.0.transformer_blocks.3.norm2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.norm2.weight": "mid_block.attentions.0.transformer_blocks.3.norm2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.norm3.bias": "mid_block.attentions.0.transformer_blocks.3.norm3.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.3.norm3.weight": "mid_block.attentions.0.transformer_blocks.3.norm3.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.attn1.to_k.weight": "mid_block.attentions.0.transformer_blocks.4.attn1.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.attn1.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.4.attn1.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.attn1.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.4.attn1.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.attn1.to_q.weight": "mid_block.attentions.0.transformer_blocks.4.attn1.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.attn1.to_v.weight": "mid_block.attentions.0.transformer_blocks.4.attn1.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.attn2.to_k.weight": "mid_block.attentions.0.transformer_blocks.4.attn2.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.attn2.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.4.attn2.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.attn2.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.4.attn2.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.attn2.to_q.weight": "mid_block.attentions.0.transformer_blocks.4.attn2.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.attn2.to_v.weight": "mid_block.attentions.0.transformer_blocks.4.attn2.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.ff.net.0.proj.bias": "mid_block.attentions.0.transformer_blocks.4.ff.net.0.proj.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.ff.net.0.proj.weight": "mid_block.attentions.0.transformer_blocks.4.ff.net.0.proj.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.ff.net.2.bias": "mid_block.attentions.0.transformer_blocks.4.ff.net.2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.ff.net.2.weight": "mid_block.attentions.0.transformer_blocks.4.ff.net.2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.norm1.bias": "mid_block.attentions.0.transformer_blocks.4.norm1.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.norm1.weight": "mid_block.attentions.0.transformer_blocks.4.norm1.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.norm2.bias": "mid_block.attentions.0.transformer_blocks.4.norm2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.norm2.weight": "mid_block.attentions.0.transformer_blocks.4.norm2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.norm3.bias": "mid_block.attentions.0.transformer_blocks.4.norm3.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.4.norm3.weight": "mid_block.attentions.0.transformer_blocks.4.norm3.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.attn1.to_k.weight": "mid_block.attentions.0.transformer_blocks.5.attn1.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.attn1.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.5.attn1.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.attn1.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.5.attn1.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.attn1.to_q.weight": "mid_block.attentions.0.transformer_blocks.5.attn1.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.attn1.to_v.weight": "mid_block.attentions.0.transformer_blocks.5.attn1.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.attn2.to_k.weight": "mid_block.attentions.0.transformer_blocks.5.attn2.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.attn2.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.5.attn2.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.attn2.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.5.attn2.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.attn2.to_q.weight": "mid_block.attentions.0.transformer_blocks.5.attn2.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.attn2.to_v.weight": "mid_block.attentions.0.transformer_blocks.5.attn2.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.ff.net.0.proj.bias": "mid_block.attentions.0.transformer_blocks.5.ff.net.0.proj.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.ff.net.0.proj.weight": "mid_block.attentions.0.transformer_blocks.5.ff.net.0.proj.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.ff.net.2.bias": "mid_block.attentions.0.transformer_blocks.5.ff.net.2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.ff.net.2.weight": "mid_block.attentions.0.transformer_blocks.5.ff.net.2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.norm1.bias": "mid_block.attentions.0.transformer_blocks.5.norm1.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.norm1.weight": "mid_block.attentions.0.transformer_blocks.5.norm1.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.norm2.bias": "mid_block.attentions.0.transformer_blocks.5.norm2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.norm2.weight": "mid_block.attentions.0.transformer_blocks.5.norm2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.norm3.bias": "mid_block.attentions.0.transformer_blocks.5.norm3.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.5.norm3.weight": "mid_block.attentions.0.transformer_blocks.5.norm3.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.attn1.to_k.weight": "mid_block.attentions.0.transformer_blocks.6.attn1.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.attn1.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.6.attn1.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.attn1.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.6.attn1.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.attn1.to_q.weight": "mid_block.attentions.0.transformer_blocks.6.attn1.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.attn1.to_v.weight": "mid_block.attentions.0.transformer_blocks.6.attn1.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.attn2.to_k.weight": "mid_block.attentions.0.transformer_blocks.6.attn2.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.attn2.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.6.attn2.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.attn2.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.6.attn2.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.attn2.to_q.weight": "mid_block.attentions.0.transformer_blocks.6.attn2.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.attn2.to_v.weight": "mid_block.attentions.0.transformer_blocks.6.attn2.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.ff.net.0.proj.bias": "mid_block.attentions.0.transformer_blocks.6.ff.net.0.proj.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.ff.net.0.proj.weight": "mid_block.attentions.0.transformer_blocks.6.ff.net.0.proj.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.ff.net.2.bias": "mid_block.attentions.0.transformer_blocks.6.ff.net.2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.ff.net.2.weight": "mid_block.attentions.0.transformer_blocks.6.ff.net.2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.norm1.bias": "mid_block.attentions.0.transformer_blocks.6.norm1.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.norm1.weight": "mid_block.attentions.0.transformer_blocks.6.norm1.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.norm2.bias": "mid_block.attentions.0.transformer_blocks.6.norm2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.norm2.weight": "mid_block.attentions.0.transformer_blocks.6.norm2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.norm3.bias": "mid_block.attentions.0.transformer_blocks.6.norm3.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.6.norm3.weight": "mid_block.attentions.0.transformer_blocks.6.norm3.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.attn1.to_k.weight": "mid_block.attentions.0.transformer_blocks.7.attn1.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.attn1.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.7.attn1.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.attn1.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.7.attn1.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.attn1.to_q.weight": "mid_block.attentions.0.transformer_blocks.7.attn1.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.attn1.to_v.weight": "mid_block.attentions.0.transformer_blocks.7.attn1.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.attn2.to_k.weight": "mid_block.attentions.0.transformer_blocks.7.attn2.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.attn2.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.7.attn2.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.attn2.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.7.attn2.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.attn2.to_q.weight": "mid_block.attentions.0.transformer_blocks.7.attn2.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.attn2.to_v.weight": "mid_block.attentions.0.transformer_blocks.7.attn2.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.ff.net.0.proj.bias": "mid_block.attentions.0.transformer_blocks.7.ff.net.0.proj.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.ff.net.0.proj.weight": "mid_block.attentions.0.transformer_blocks.7.ff.net.0.proj.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.ff.net.2.bias": "mid_block.attentions.0.transformer_blocks.7.ff.net.2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.ff.net.2.weight": "mid_block.attentions.0.transformer_blocks.7.ff.net.2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.norm1.bias": "mid_block.attentions.0.transformer_blocks.7.norm1.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.norm1.weight": "mid_block.attentions.0.transformer_blocks.7.norm1.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.norm2.bias": "mid_block.attentions.0.transformer_blocks.7.norm2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.norm2.weight": "mid_block.attentions.0.transformer_blocks.7.norm2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.norm3.bias": "mid_block.attentions.0.transformer_blocks.7.norm3.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.7.norm3.weight": "mid_block.attentions.0.transformer_blocks.7.norm3.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.attn1.to_k.weight": "mid_block.attentions.0.transformer_blocks.8.attn1.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.attn1.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.8.attn1.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.attn1.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.8.attn1.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.attn1.to_q.weight": "mid_block.attentions.0.transformer_blocks.8.attn1.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.attn1.to_v.weight": "mid_block.attentions.0.transformer_blocks.8.attn1.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.attn2.to_k.weight": "mid_block.attentions.0.transformer_blocks.8.attn2.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.attn2.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.8.attn2.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.attn2.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.8.attn2.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.attn2.to_q.weight": "mid_block.attentions.0.transformer_blocks.8.attn2.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.attn2.to_v.weight": "mid_block.attentions.0.transformer_blocks.8.attn2.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.ff.net.0.proj.bias": "mid_block.attentions.0.transformer_blocks.8.ff.net.0.proj.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.ff.net.0.proj.weight": "mid_block.attentions.0.transformer_blocks.8.ff.net.0.proj.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.ff.net.2.bias": "mid_block.attentions.0.transformer_blocks.8.ff.net.2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.ff.net.2.weight": "mid_block.attentions.0.transformer_blocks.8.ff.net.2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.norm1.bias": "mid_block.attentions.0.transformer_blocks.8.norm1.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.norm1.weight": "mid_block.attentions.0.transformer_blocks.8.norm1.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.norm2.bias": "mid_block.attentions.0.transformer_blocks.8.norm2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.norm2.weight": "mid_block.attentions.0.transformer_blocks.8.norm2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.norm3.bias": "mid_block.attentions.0.transformer_blocks.8.norm3.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.8.norm3.weight": "mid_block.attentions.0.transformer_blocks.8.norm3.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.attn1.to_k.weight": "mid_block.attentions.0.transformer_blocks.9.attn1.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.attn1.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.9.attn1.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.attn1.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.9.attn1.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.attn1.to_q.weight": "mid_block.attentions.0.transformer_blocks.9.attn1.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.attn1.to_v.weight": "mid_block.attentions.0.transformer_blocks.9.attn1.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.attn2.to_k.weight": "mid_block.attentions.0.transformer_blocks.9.attn2.to_k.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.attn2.to_out.0.bias": "mid_block.attentions.0.transformer_blocks.9.attn2.to_out.0.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.attn2.to_out.0.weight": "mid_block.attentions.0.transformer_blocks.9.attn2.to_out.0.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.attn2.to_q.weight": "mid_block.attentions.0.transformer_blocks.9.attn2.to_q.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.attn2.to_v.weight": "mid_block.attentions.0.transformer_blocks.9.attn2.to_v.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.ff.net.0.proj.bias": "mid_block.attentions.0.transformer_blocks.9.ff.net.0.proj.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.ff.net.0.proj.weight": "mid_block.attentions.0.transformer_blocks.9.ff.net.0.proj.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.ff.net.2.bias": "mid_block.attentions.0.transformer_blocks.9.ff.net.2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.ff.net.2.weight": "mid_block.attentions.0.transformer_blocks.9.ff.net.2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.norm1.bias": "mid_block.attentions.0.transformer_blocks.9.norm1.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.norm1.weight": "mid_block.attentions.0.transformer_blocks.9.norm1.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.norm2.bias": "mid_block.attentions.0.transformer_blocks.9.norm2.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.norm2.weight": "mid_block.attentions.0.transformer_blocks.9.norm2.weight",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.norm3.bias": "mid_block.attentions.0.transformer_blocks.9.norm3.bias",
        "model.diffusion_model.middle_block.1.transformer_blocks.9.norm3.weight": "mid_block.attentions.0.transformer_blocks.9.norm3.weight",
        "model.diffusion_model.middle_block.2.emb_layers.1.bias": "mid_block.resnets.1.time_emb_proj.bias",
        "model.diffusion_model.middle_block.2.emb_layers.1.weight": "mid_block.resnets.1.time_emb_proj.weight",
        "model.diffusion_model.middle_block.2.in_layers.0.bias": "mid_block.resnets.1.norm1.bias",
        "model.diffusion_model.middle_block.2.in_layers.0.weight": "mid_block.resnets.1.norm1.weight",
        "model.diffusion_model.middle_block.2.in_layers.2.bias": "mid_block.resnets.1.conv1.bias",
        "model.diffusion_model.middle_block.2.in_layers.2.weight": "mid_block.resnets.1.conv1.weight",
        "model.diffusion_model.middle_block.2.out_layers.0.bias": "mid_block.resnets.1.norm2.bias",
        "model.diffusion_model.middle_block.2.out_layers.0.weight": "mid_block.resnets.1.norm2.weight",
        "model.diffusion_model.middle_block.2.out_layers.3.bias": "mid_block.resnets.1.conv2.bias",
        "model.diffusion_model.middle_block.2.out_layers.3.weight": "mid_block.resnets.1.conv2.weight",
        "model.diffusion_model.out.0.bias": "conv_norm_out.bias",
        "model.diffusion_model.out.0.weight": "conv_norm_out.weight",
        "model.diffusion_model.out.2.bias": "conv_out.bias",
        "model.diffusion_model.out.2.weight": "conv_out.weight",
        "model.diffusion_model.output_blocks.0.0.emb_layers.1.bias": "up_blocks.0.resnets.0.time_emb_proj.bias",
        "model.diffusion_model.output_blocks.0.0.emb_layers.1.weight": "up_blocks.0.resnets.0.time_emb_proj.weight",
        "model.diffusion_model.output_blocks.0.0.in_layers.0.bias": "up_blocks.0.resnets.0.norm1.bias",
        "model.diffusion_model.output_blocks.0.0.in_layers.0.weight": "up_blocks.0.resnets.0.norm1.weight",
        "model.diffusion_model.output_blocks.0.0.in_layers.2.bias": "up_blocks.0.resnets.0.conv1.bias",
        "model.diffusion_model.output_blocks.0.0.in_layers.2.weight": "up_blocks.0.resnets.0.conv1.weight",
        "model.diffusion_model.output_blocks.0.0.out_layers.0.bias": "up_blocks.0.resnets.0.norm2.bias",
        "model.diffusion_model.output_blocks.0.0.out_layers.0.weight": "up_blocks.0.resnets.0.norm2.weight",
        "model.diffusion_model.output_blocks.0.0.out_layers.3.bias": "up_blocks.0.resnets.0.conv2.bias",
        "model.diffusion_model.output_blocks.0.0.out_layers.3.weight": "up_blocks.0.resnets.0.conv2.weight",
        "model.diffusion_model.output_blocks.0.0.skip_connection.bias": "up_blocks.0.resnets.0.conv_shortcut.bias",
        "model.diffusion_model.output_blocks.0.0.skip_connection.weight": "up_blocks.0.resnets.0.conv_shortcut.weight",
        "model.diffusion_model.output_blocks.0.1.norm.bias": "up_blocks.0.attentions.0.norm.bias",
        "model.diffusion_model.output_blocks.0.1.norm.weight": "up_blocks.0.attentions.0.norm.weight",
        "model.diffusion_model.output_blocks.0.1.proj_in.bias": "up_blocks.0.attentions.0.proj_in.bias",
        "model.diffusion_model.output_blocks.0.1.proj_in.weight": "up_blocks.0.attentions.0.proj_in.weight",
        "model.diffusion_model.output_blocks.0.1.proj_out.bias": "up_blocks.0.attentions.0.proj_out.bias",
        "model.diffusion_model.output_blocks.0.1.proj_out.weight": "up_blocks.0.attentions.0.proj_out.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn1.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn1.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn1.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn1.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn1.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn2.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn2.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn2.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn2.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.attn2.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.ff.net.0.proj.bias": "up_blocks.0.attentions.0.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.ff.net.0.proj.weight": "up_blocks.0.attentions.0.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.ff.net.2.bias": "up_blocks.0.attentions.0.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.ff.net.2.weight": "up_blocks.0.attentions.0.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.norm1.bias": "up_blocks.0.attentions.0.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.norm1.weight": "up_blocks.0.attentions.0.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.norm2.bias": "up_blocks.0.attentions.0.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.norm2.weight": "up_blocks.0.attentions.0.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.norm3.bias": "up_blocks.0.attentions.0.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.0.norm3.weight": "up_blocks.0.attentions.0.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn1.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn1.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn1.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn1.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn1.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn2.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn2.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn2.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn2.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.attn2.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.ff.net.0.proj.bias": "up_blocks.0.attentions.0.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.ff.net.0.proj.weight": "up_blocks.0.attentions.0.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.ff.net.2.bias": "up_blocks.0.attentions.0.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.ff.net.2.weight": "up_blocks.0.attentions.0.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.norm1.bias": "up_blocks.0.attentions.0.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.norm1.weight": "up_blocks.0.attentions.0.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.norm2.bias": "up_blocks.0.attentions.0.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.norm2.weight": "up_blocks.0.attentions.0.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.norm3.bias": "up_blocks.0.attentions.0.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.1.norm3.weight": "up_blocks.0.attentions.0.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn1.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.2.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn1.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.2.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn1.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.2.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn1.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.2.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn1.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.2.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn2.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.2.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn2.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.2.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn2.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.2.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn2.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.2.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.attn2.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.2.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.ff.net.0.proj.bias": "up_blocks.0.attentions.0.transformer_blocks.2.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.ff.net.0.proj.weight": "up_blocks.0.attentions.0.transformer_blocks.2.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.ff.net.2.bias": "up_blocks.0.attentions.0.transformer_blocks.2.ff.net.2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.ff.net.2.weight": "up_blocks.0.attentions.0.transformer_blocks.2.ff.net.2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.norm1.bias": "up_blocks.0.attentions.0.transformer_blocks.2.norm1.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.norm1.weight": "up_blocks.0.attentions.0.transformer_blocks.2.norm1.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.norm2.bias": "up_blocks.0.attentions.0.transformer_blocks.2.norm2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.norm2.weight": "up_blocks.0.attentions.0.transformer_blocks.2.norm2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.norm3.bias": "up_blocks.0.attentions.0.transformer_blocks.2.norm3.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.2.norm3.weight": "up_blocks.0.attentions.0.transformer_blocks.2.norm3.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn1.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.3.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn1.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.3.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn1.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.3.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn1.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.3.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn1.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.3.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn2.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.3.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn2.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.3.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn2.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.3.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn2.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.3.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.attn2.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.3.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.ff.net.0.proj.bias": "up_blocks.0.attentions.0.transformer_blocks.3.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.ff.net.0.proj.weight": "up_blocks.0.attentions.0.transformer_blocks.3.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.ff.net.2.bias": "up_blocks.0.attentions.0.transformer_blocks.3.ff.net.2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.ff.net.2.weight": "up_blocks.0.attentions.0.transformer_blocks.3.ff.net.2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.norm1.bias": "up_blocks.0.attentions.0.transformer_blocks.3.norm1.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.norm1.weight": "up_blocks.0.attentions.0.transformer_blocks.3.norm1.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.norm2.bias": "up_blocks.0.attentions.0.transformer_blocks.3.norm2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.norm2.weight": "up_blocks.0.attentions.0.transformer_blocks.3.norm2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.norm3.bias": "up_blocks.0.attentions.0.transformer_blocks.3.norm3.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.3.norm3.weight": "up_blocks.0.attentions.0.transformer_blocks.3.norm3.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn1.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.4.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn1.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.4.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn1.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.4.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn1.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.4.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn1.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.4.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn2.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.4.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn2.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.4.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn2.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.4.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn2.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.4.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.attn2.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.4.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.ff.net.0.proj.bias": "up_blocks.0.attentions.0.transformer_blocks.4.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.ff.net.0.proj.weight": "up_blocks.0.attentions.0.transformer_blocks.4.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.ff.net.2.bias": "up_blocks.0.attentions.0.transformer_blocks.4.ff.net.2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.ff.net.2.weight": "up_blocks.0.attentions.0.transformer_blocks.4.ff.net.2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.norm1.bias": "up_blocks.0.attentions.0.transformer_blocks.4.norm1.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.norm1.weight": "up_blocks.0.attentions.0.transformer_blocks.4.norm1.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.norm2.bias": "up_blocks.0.attentions.0.transformer_blocks.4.norm2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.norm2.weight": "up_blocks.0.attentions.0.transformer_blocks.4.norm2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.norm3.bias": "up_blocks.0.attentions.0.transformer_blocks.4.norm3.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.4.norm3.weight": "up_blocks.0.attentions.0.transformer_blocks.4.norm3.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn1.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.5.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn1.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.5.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn1.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.5.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn1.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.5.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn1.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.5.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn2.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.5.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn2.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.5.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn2.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.5.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn2.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.5.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.attn2.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.5.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.ff.net.0.proj.bias": "up_blocks.0.attentions.0.transformer_blocks.5.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.ff.net.0.proj.weight": "up_blocks.0.attentions.0.transformer_blocks.5.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.ff.net.2.bias": "up_blocks.0.attentions.0.transformer_blocks.5.ff.net.2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.ff.net.2.weight": "up_blocks.0.attentions.0.transformer_blocks.5.ff.net.2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.norm1.bias": "up_blocks.0.attentions.0.transformer_blocks.5.norm1.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.norm1.weight": "up_blocks.0.attentions.0.transformer_blocks.5.norm1.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.norm2.bias": "up_blocks.0.attentions.0.transformer_blocks.5.norm2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.norm2.weight": "up_blocks.0.attentions.0.transformer_blocks.5.norm2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.norm3.bias": "up_blocks.0.attentions.0.transformer_blocks.5.norm3.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.5.norm3.weight": "up_blocks.0.attentions.0.transformer_blocks.5.norm3.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn1.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.6.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn1.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.6.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn1.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.6.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn1.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.6.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn1.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.6.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn2.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.6.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn2.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.6.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn2.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.6.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn2.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.6.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.attn2.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.6.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.ff.net.0.proj.bias": "up_blocks.0.attentions.0.transformer_blocks.6.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.ff.net.0.proj.weight": "up_blocks.0.attentions.0.transformer_blocks.6.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.ff.net.2.bias": "up_blocks.0.attentions.0.transformer_blocks.6.ff.net.2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.ff.net.2.weight": "up_blocks.0.attentions.0.transformer_blocks.6.ff.net.2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.norm1.bias": "up_blocks.0.attentions.0.transformer_blocks.6.norm1.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.norm1.weight": "up_blocks.0.attentions.0.transformer_blocks.6.norm1.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.norm2.bias": "up_blocks.0.attentions.0.transformer_blocks.6.norm2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.norm2.weight": "up_blocks.0.attentions.0.transformer_blocks.6.norm2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.norm3.bias": "up_blocks.0.attentions.0.transformer_blocks.6.norm3.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.6.norm3.weight": "up_blocks.0.attentions.0.transformer_blocks.6.norm3.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn1.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.7.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn1.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.7.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn1.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.7.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn1.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.7.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn1.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.7.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn2.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.7.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn2.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.7.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn2.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.7.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn2.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.7.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.attn2.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.7.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.ff.net.0.proj.bias": "up_blocks.0.attentions.0.transformer_blocks.7.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.ff.net.0.proj.weight": "up_blocks.0.attentions.0.transformer_blocks.7.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.ff.net.2.bias": "up_blocks.0.attentions.0.transformer_blocks.7.ff.net.2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.ff.net.2.weight": "up_blocks.0.attentions.0.transformer_blocks.7.ff.net.2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.norm1.bias": "up_blocks.0.attentions.0.transformer_blocks.7.norm1.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.norm1.weight": "up_blocks.0.attentions.0.transformer_blocks.7.norm1.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.norm2.bias": "up_blocks.0.attentions.0.transformer_blocks.7.norm2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.norm2.weight": "up_blocks.0.attentions.0.transformer_blocks.7.norm2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.norm3.bias": "up_blocks.0.attentions.0.transformer_blocks.7.norm3.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.7.norm3.weight": "up_blocks.0.attentions.0.transformer_blocks.7.norm3.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn1.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.8.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn1.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.8.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn1.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.8.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn1.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.8.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn1.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.8.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn2.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.8.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn2.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.8.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn2.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.8.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn2.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.8.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.attn2.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.8.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.ff.net.0.proj.bias": "up_blocks.0.attentions.0.transformer_blocks.8.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.ff.net.0.proj.weight": "up_blocks.0.attentions.0.transformer_blocks.8.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.ff.net.2.bias": "up_blocks.0.attentions.0.transformer_blocks.8.ff.net.2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.ff.net.2.weight": "up_blocks.0.attentions.0.transformer_blocks.8.ff.net.2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.norm1.bias": "up_blocks.0.attentions.0.transformer_blocks.8.norm1.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.norm1.weight": "up_blocks.0.attentions.0.transformer_blocks.8.norm1.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.norm2.bias": "up_blocks.0.attentions.0.transformer_blocks.8.norm2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.norm2.weight": "up_blocks.0.attentions.0.transformer_blocks.8.norm2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.norm3.bias": "up_blocks.0.attentions.0.transformer_blocks.8.norm3.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.8.norm3.weight": "up_blocks.0.attentions.0.transformer_blocks.8.norm3.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn1.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.9.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn1.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.9.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn1.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.9.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn1.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.9.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn1.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.9.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn2.to_k.weight": "up_blocks.0.attentions.0.transformer_blocks.9.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn2.to_out.0.bias": "up_blocks.0.attentions.0.transformer_blocks.9.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn2.to_out.0.weight": "up_blocks.0.attentions.0.transformer_blocks.9.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn2.to_q.weight": "up_blocks.0.attentions.0.transformer_blocks.9.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.attn2.to_v.weight": "up_blocks.0.attentions.0.transformer_blocks.9.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.ff.net.0.proj.bias": "up_blocks.0.attentions.0.transformer_blocks.9.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.ff.net.0.proj.weight": "up_blocks.0.attentions.0.transformer_blocks.9.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.ff.net.2.bias": "up_blocks.0.attentions.0.transformer_blocks.9.ff.net.2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.ff.net.2.weight": "up_blocks.0.attentions.0.transformer_blocks.9.ff.net.2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.norm1.bias": "up_blocks.0.attentions.0.transformer_blocks.9.norm1.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.norm1.weight": "up_blocks.0.attentions.0.transformer_blocks.9.norm1.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.norm2.bias": "up_blocks.0.attentions.0.transformer_blocks.9.norm2.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.norm2.weight": "up_blocks.0.attentions.0.transformer_blocks.9.norm2.weight",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.norm3.bias": "up_blocks.0.attentions.0.transformer_blocks.9.norm3.bias",
        "model.diffusion_model.output_blocks.0.1.transformer_blocks.9.norm3.weight": "up_blocks.0.attentions.0.transformer_blocks.9.norm3.weight",
        "model.diffusion_model.output_blocks.1.0.emb_layers.1.bias": "up_blocks.0.resnets.1.time_emb_proj.bias",
        "model.diffusion_model.output_blocks.1.0.emb_layers.1.weight": "up_blocks.0.resnets.1.time_emb_proj.weight",
        "model.diffusion_model.output_blocks.1.0.in_layers.0.bias": "up_blocks.0.resnets.1.norm1.bias",
        "model.diffusion_model.output_blocks.1.0.in_layers.0.weight": "up_blocks.0.resnets.1.norm1.weight",
        "model.diffusion_model.output_blocks.1.0.in_layers.2.bias": "up_blocks.0.resnets.1.conv1.bias",
        "model.diffusion_model.output_blocks.1.0.in_layers.2.weight": "up_blocks.0.resnets.1.conv1.weight",
        "model.diffusion_model.output_blocks.1.0.out_layers.0.bias": "up_blocks.0.resnets.1.norm2.bias",
        "model.diffusion_model.output_blocks.1.0.out_layers.0.weight": "up_blocks.0.resnets.1.norm2.weight",
        "model.diffusion_model.output_blocks.1.0.out_layers.3.bias": "up_blocks.0.resnets.1.conv2.bias",
        "model.diffusion_model.output_blocks.1.0.out_layers.3.weight": "up_blocks.0.resnets.1.conv2.weight",
        "model.diffusion_model.output_blocks.1.0.skip_connection.bias": "up_blocks.0.resnets.1.conv_shortcut.bias",
        "model.diffusion_model.output_blocks.1.0.skip_connection.weight": "up_blocks.0.resnets.1.conv_shortcut.weight",
        "model.diffusion_model.output_blocks.1.1.norm.bias": "up_blocks.0.attentions.1.norm.bias",
        "model.diffusion_model.output_blocks.1.1.norm.weight": "up_blocks.0.attentions.1.norm.weight",
        "model.diffusion_model.output_blocks.1.1.proj_in.bias": "up_blocks.0.attentions.1.proj_in.bias",
        "model.diffusion_model.output_blocks.1.1.proj_in.weight": "up_blocks.0.attentions.1.proj_in.weight",
        "model.diffusion_model.output_blocks.1.1.proj_out.bias": "up_blocks.0.attentions.1.proj_out.bias",
        "model.diffusion_model.output_blocks.1.1.proj_out.weight": "up_blocks.0.attentions.1.proj_out.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn1.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn1.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn1.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn1.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn1.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn2.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn2.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn2.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn2.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.attn2.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.ff.net.0.proj.bias": "up_blocks.0.attentions.1.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.ff.net.0.proj.weight": "up_blocks.0.attentions.1.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.ff.net.2.bias": "up_blocks.0.attentions.1.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.ff.net.2.weight": "up_blocks.0.attentions.1.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.norm1.bias": "up_blocks.0.attentions.1.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.norm1.weight": "up_blocks.0.attentions.1.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.norm2.bias": "up_blocks.0.attentions.1.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.norm2.weight": "up_blocks.0.attentions.1.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.norm3.bias": "up_blocks.0.attentions.1.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.0.norm3.weight": "up_blocks.0.attentions.1.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn1.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn1.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn1.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn1.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn1.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn2.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn2.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn2.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn2.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.attn2.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.ff.net.0.proj.bias": "up_blocks.0.attentions.1.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.ff.net.0.proj.weight": "up_blocks.0.attentions.1.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.ff.net.2.bias": "up_blocks.0.attentions.1.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.ff.net.2.weight": "up_blocks.0.attentions.1.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.norm1.bias": "up_blocks.0.attentions.1.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.norm1.weight": "up_blocks.0.attentions.1.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.norm2.bias": "up_blocks.0.attentions.1.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.norm2.weight": "up_blocks.0.attentions.1.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.norm3.bias": "up_blocks.0.attentions.1.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.1.norm3.weight": "up_blocks.0.attentions.1.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn1.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.2.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn1.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.2.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn1.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.2.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn1.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.2.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn1.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.2.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn2.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.2.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn2.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.2.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn2.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.2.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn2.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.2.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.attn2.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.2.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.ff.net.0.proj.bias": "up_blocks.0.attentions.1.transformer_blocks.2.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.ff.net.0.proj.weight": "up_blocks.0.attentions.1.transformer_blocks.2.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.ff.net.2.bias": "up_blocks.0.attentions.1.transformer_blocks.2.ff.net.2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.ff.net.2.weight": "up_blocks.0.attentions.1.transformer_blocks.2.ff.net.2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.norm1.bias": "up_blocks.0.attentions.1.transformer_blocks.2.norm1.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.norm1.weight": "up_blocks.0.attentions.1.transformer_blocks.2.norm1.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.norm2.bias": "up_blocks.0.attentions.1.transformer_blocks.2.norm2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.norm2.weight": "up_blocks.0.attentions.1.transformer_blocks.2.norm2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.norm3.bias": "up_blocks.0.attentions.1.transformer_blocks.2.norm3.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.2.norm3.weight": "up_blocks.0.attentions.1.transformer_blocks.2.norm3.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn1.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.3.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn1.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.3.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn1.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.3.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn1.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.3.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn1.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.3.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn2.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.3.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn2.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.3.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn2.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.3.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn2.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.3.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.attn2.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.3.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.ff.net.0.proj.bias": "up_blocks.0.attentions.1.transformer_blocks.3.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.ff.net.0.proj.weight": "up_blocks.0.attentions.1.transformer_blocks.3.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.ff.net.2.bias": "up_blocks.0.attentions.1.transformer_blocks.3.ff.net.2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.ff.net.2.weight": "up_blocks.0.attentions.1.transformer_blocks.3.ff.net.2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.norm1.bias": "up_blocks.0.attentions.1.transformer_blocks.3.norm1.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.norm1.weight": "up_blocks.0.attentions.1.transformer_blocks.3.norm1.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.norm2.bias": "up_blocks.0.attentions.1.transformer_blocks.3.norm2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.norm2.weight": "up_blocks.0.attentions.1.transformer_blocks.3.norm2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.norm3.bias": "up_blocks.0.attentions.1.transformer_blocks.3.norm3.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.3.norm3.weight": "up_blocks.0.attentions.1.transformer_blocks.3.norm3.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn1.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.4.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn1.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.4.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn1.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.4.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn1.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.4.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn1.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.4.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn2.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.4.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn2.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.4.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn2.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.4.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn2.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.4.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.attn2.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.4.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.ff.net.0.proj.bias": "up_blocks.0.attentions.1.transformer_blocks.4.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.ff.net.0.proj.weight": "up_blocks.0.attentions.1.transformer_blocks.4.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.ff.net.2.bias": "up_blocks.0.attentions.1.transformer_blocks.4.ff.net.2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.ff.net.2.weight": "up_blocks.0.attentions.1.transformer_blocks.4.ff.net.2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.norm1.bias": "up_blocks.0.attentions.1.transformer_blocks.4.norm1.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.norm1.weight": "up_blocks.0.attentions.1.transformer_blocks.4.norm1.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.norm2.bias": "up_blocks.0.attentions.1.transformer_blocks.4.norm2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.norm2.weight": "up_blocks.0.attentions.1.transformer_blocks.4.norm2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.norm3.bias": "up_blocks.0.attentions.1.transformer_blocks.4.norm3.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.4.norm3.weight": "up_blocks.0.attentions.1.transformer_blocks.4.norm3.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn1.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.5.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn1.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.5.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn1.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.5.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn1.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.5.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn1.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.5.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn2.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.5.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn2.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.5.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn2.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.5.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn2.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.5.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.attn2.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.5.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.ff.net.0.proj.bias": "up_blocks.0.attentions.1.transformer_blocks.5.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.ff.net.0.proj.weight": "up_blocks.0.attentions.1.transformer_blocks.5.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.ff.net.2.bias": "up_blocks.0.attentions.1.transformer_blocks.5.ff.net.2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.ff.net.2.weight": "up_blocks.0.attentions.1.transformer_blocks.5.ff.net.2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.norm1.bias": "up_blocks.0.attentions.1.transformer_blocks.5.norm1.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.norm1.weight": "up_blocks.0.attentions.1.transformer_blocks.5.norm1.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.norm2.bias": "up_blocks.0.attentions.1.transformer_blocks.5.norm2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.norm2.weight": "up_blocks.0.attentions.1.transformer_blocks.5.norm2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.norm3.bias": "up_blocks.0.attentions.1.transformer_blocks.5.norm3.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.5.norm3.weight": "up_blocks.0.attentions.1.transformer_blocks.5.norm3.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn1.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.6.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn1.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.6.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn1.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.6.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn1.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.6.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn1.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.6.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn2.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.6.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn2.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.6.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn2.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.6.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn2.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.6.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.attn2.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.6.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.ff.net.0.proj.bias": "up_blocks.0.attentions.1.transformer_blocks.6.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.ff.net.0.proj.weight": "up_blocks.0.attentions.1.transformer_blocks.6.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.ff.net.2.bias": "up_blocks.0.attentions.1.transformer_blocks.6.ff.net.2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.ff.net.2.weight": "up_blocks.0.attentions.1.transformer_blocks.6.ff.net.2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.norm1.bias": "up_blocks.0.attentions.1.transformer_blocks.6.norm1.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.norm1.weight": "up_blocks.0.attentions.1.transformer_blocks.6.norm1.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.norm2.bias": "up_blocks.0.attentions.1.transformer_blocks.6.norm2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.norm2.weight": "up_blocks.0.attentions.1.transformer_blocks.6.norm2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.norm3.bias": "up_blocks.0.attentions.1.transformer_blocks.6.norm3.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.6.norm3.weight": "up_blocks.0.attentions.1.transformer_blocks.6.norm3.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn1.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.7.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn1.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.7.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn1.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.7.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn1.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.7.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn1.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.7.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn2.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.7.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn2.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.7.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn2.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.7.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn2.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.7.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.attn2.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.7.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.ff.net.0.proj.bias": "up_blocks.0.attentions.1.transformer_blocks.7.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.ff.net.0.proj.weight": "up_blocks.0.attentions.1.transformer_blocks.7.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.ff.net.2.bias": "up_blocks.0.attentions.1.transformer_blocks.7.ff.net.2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.ff.net.2.weight": "up_blocks.0.attentions.1.transformer_blocks.7.ff.net.2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.norm1.bias": "up_blocks.0.attentions.1.transformer_blocks.7.norm1.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.norm1.weight": "up_blocks.0.attentions.1.transformer_blocks.7.norm1.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.norm2.bias": "up_blocks.0.attentions.1.transformer_blocks.7.norm2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.norm2.weight": "up_blocks.0.attentions.1.transformer_blocks.7.norm2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.norm3.bias": "up_blocks.0.attentions.1.transformer_blocks.7.norm3.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.7.norm3.weight": "up_blocks.0.attentions.1.transformer_blocks.7.norm3.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn1.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.8.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn1.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.8.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn1.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.8.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn1.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.8.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn1.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.8.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn2.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.8.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn2.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.8.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn2.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.8.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn2.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.8.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.attn2.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.8.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.ff.net.0.proj.bias": "up_blocks.0.attentions.1.transformer_blocks.8.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.ff.net.0.proj.weight": "up_blocks.0.attentions.1.transformer_blocks.8.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.ff.net.2.bias": "up_blocks.0.attentions.1.transformer_blocks.8.ff.net.2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.ff.net.2.weight": "up_blocks.0.attentions.1.transformer_blocks.8.ff.net.2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.norm1.bias": "up_blocks.0.attentions.1.transformer_blocks.8.norm1.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.norm1.weight": "up_blocks.0.attentions.1.transformer_blocks.8.norm1.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.norm2.bias": "up_blocks.0.attentions.1.transformer_blocks.8.norm2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.norm2.weight": "up_blocks.0.attentions.1.transformer_blocks.8.norm2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.norm3.bias": "up_blocks.0.attentions.1.transformer_blocks.8.norm3.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.8.norm3.weight": "up_blocks.0.attentions.1.transformer_blocks.8.norm3.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn1.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.9.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn1.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.9.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn1.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.9.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn1.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.9.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn1.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.9.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn2.to_k.weight": "up_blocks.0.attentions.1.transformer_blocks.9.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn2.to_out.0.bias": "up_blocks.0.attentions.1.transformer_blocks.9.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn2.to_out.0.weight": "up_blocks.0.attentions.1.transformer_blocks.9.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn2.to_q.weight": "up_blocks.0.attentions.1.transformer_blocks.9.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.attn2.to_v.weight": "up_blocks.0.attentions.1.transformer_blocks.9.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.ff.net.0.proj.bias": "up_blocks.0.attentions.1.transformer_blocks.9.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.ff.net.0.proj.weight": "up_blocks.0.attentions.1.transformer_blocks.9.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.ff.net.2.bias": "up_blocks.0.attentions.1.transformer_blocks.9.ff.net.2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.ff.net.2.weight": "up_blocks.0.attentions.1.transformer_blocks.9.ff.net.2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.norm1.bias": "up_blocks.0.attentions.1.transformer_blocks.9.norm1.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.norm1.weight": "up_blocks.0.attentions.1.transformer_blocks.9.norm1.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.norm2.bias": "up_blocks.0.attentions.1.transformer_blocks.9.norm2.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.norm2.weight": "up_blocks.0.attentions.1.transformer_blocks.9.norm2.weight",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.norm3.bias": "up_blocks.0.attentions.1.transformer_blocks.9.norm3.bias",
        "model.diffusion_model.output_blocks.1.1.transformer_blocks.9.norm3.weight": "up_blocks.0.attentions.1.transformer_blocks.9.norm3.weight",
        "model.diffusion_model.output_blocks.2.0.emb_layers.1.bias": "up_blocks.0.resnets.2.time_emb_proj.bias",
        "model.diffusion_model.output_blocks.2.0.emb_layers.1.weight": "up_blocks.0.resnets.2.time_emb_proj.weight",
        "model.diffusion_model.output_blocks.2.0.in_layers.0.bias": "up_blocks.0.resnets.2.norm1.bias",
        "model.diffusion_model.output_blocks.2.0.in_layers.0.weight": "up_blocks.0.resnets.2.norm1.weight",
        "model.diffusion_model.output_blocks.2.0.in_layers.2.bias": "up_blocks.0.resnets.2.conv1.bias",
        "model.diffusion_model.output_blocks.2.0.in_layers.2.weight": "up_blocks.0.resnets.2.conv1.weight",
        "model.diffusion_model.output_blocks.2.0.out_layers.0.bias": "up_blocks.0.resnets.2.norm2.bias",
        "model.diffusion_model.output_blocks.2.0.out_layers.0.weight": "up_blocks.0.resnets.2.norm2.weight",
        "model.diffusion_model.output_blocks.2.0.out_layers.3.bias": "up_blocks.0.resnets.2.conv2.bias",
        "model.diffusion_model.output_blocks.2.0.out_layers.3.weight": "up_blocks.0.resnets.2.conv2.weight",
        "model.diffusion_model.output_blocks.2.0.skip_connection.bias": "up_blocks.0.resnets.2.conv_shortcut.bias",
        "model.diffusion_model.output_blocks.2.0.skip_connection.weight": "up_blocks.0.resnets.2.conv_shortcut.weight",
        "model.diffusion_model.output_blocks.2.1.norm.bias": "up_blocks.0.attentions.2.norm.bias",
        "model.diffusion_model.output_blocks.2.1.norm.weight": "up_blocks.0.attentions.2.norm.weight",
        "model.diffusion_model.output_blocks.2.1.proj_in.bias": "up_blocks.0.attentions.2.proj_in.bias",
        "model.diffusion_model.output_blocks.2.1.proj_in.weight": "up_blocks.0.attentions.2.proj_in.weight",
        "model.diffusion_model.output_blocks.2.1.proj_out.bias": "up_blocks.0.attentions.2.proj_out.bias",
        "model.diffusion_model.output_blocks.2.1.proj_out.weight": "up_blocks.0.attentions.2.proj_out.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn1.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn1.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn1.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn1.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn1.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn2.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn2.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn2.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn2.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.attn2.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.ff.net.0.proj.bias": "up_blocks.0.attentions.2.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.ff.net.0.proj.weight": "up_blocks.0.attentions.2.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.ff.net.2.bias": "up_blocks.0.attentions.2.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.ff.net.2.weight": "up_blocks.0.attentions.2.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.norm1.bias": "up_blocks.0.attentions.2.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.norm1.weight": "up_blocks.0.attentions.2.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.norm2.bias": "up_blocks.0.attentions.2.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.norm2.weight": "up_blocks.0.attentions.2.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.norm3.bias": "up_blocks.0.attentions.2.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.0.norm3.weight": "up_blocks.0.attentions.2.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn1.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn1.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn1.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn1.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn1.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn2.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn2.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn2.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn2.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.attn2.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.ff.net.0.proj.bias": "up_blocks.0.attentions.2.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.ff.net.0.proj.weight": "up_blocks.0.attentions.2.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.ff.net.2.bias": "up_blocks.0.attentions.2.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.ff.net.2.weight": "up_blocks.0.attentions.2.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.norm1.bias": "up_blocks.0.attentions.2.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.norm1.weight": "up_blocks.0.attentions.2.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.norm2.bias": "up_blocks.0.attentions.2.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.norm2.weight": "up_blocks.0.attentions.2.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.norm3.bias": "up_blocks.0.attentions.2.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.1.norm3.weight": "up_blocks.0.attentions.2.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn1.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.2.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn1.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.2.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn1.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.2.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn1.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.2.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn1.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.2.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn2.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.2.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn2.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.2.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn2.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.2.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn2.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.2.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.attn2.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.2.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.ff.net.0.proj.bias": "up_blocks.0.attentions.2.transformer_blocks.2.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.ff.net.0.proj.weight": "up_blocks.0.attentions.2.transformer_blocks.2.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.ff.net.2.bias": "up_blocks.0.attentions.2.transformer_blocks.2.ff.net.2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.ff.net.2.weight": "up_blocks.0.attentions.2.transformer_blocks.2.ff.net.2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.norm1.bias": "up_blocks.0.attentions.2.transformer_blocks.2.norm1.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.norm1.weight": "up_blocks.0.attentions.2.transformer_blocks.2.norm1.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.norm2.bias": "up_blocks.0.attentions.2.transformer_blocks.2.norm2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.norm2.weight": "up_blocks.0.attentions.2.transformer_blocks.2.norm2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.norm3.bias": "up_blocks.0.attentions.2.transformer_blocks.2.norm3.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.2.norm3.weight": "up_blocks.0.attentions.2.transformer_blocks.2.norm3.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn1.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.3.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn1.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.3.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn1.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.3.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn1.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.3.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn1.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.3.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn2.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.3.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn2.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.3.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn2.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.3.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn2.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.3.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.attn2.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.3.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.ff.net.0.proj.bias": "up_blocks.0.attentions.2.transformer_blocks.3.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.ff.net.0.proj.weight": "up_blocks.0.attentions.2.transformer_blocks.3.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.ff.net.2.bias": "up_blocks.0.attentions.2.transformer_blocks.3.ff.net.2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.ff.net.2.weight": "up_blocks.0.attentions.2.transformer_blocks.3.ff.net.2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.norm1.bias": "up_blocks.0.attentions.2.transformer_blocks.3.norm1.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.norm1.weight": "up_blocks.0.attentions.2.transformer_blocks.3.norm1.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.norm2.bias": "up_blocks.0.attentions.2.transformer_blocks.3.norm2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.norm2.weight": "up_blocks.0.attentions.2.transformer_blocks.3.norm2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.norm3.bias": "up_blocks.0.attentions.2.transformer_blocks.3.norm3.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.3.norm3.weight": "up_blocks.0.attentions.2.transformer_blocks.3.norm3.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn1.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.4.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn1.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.4.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn1.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.4.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn1.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.4.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn1.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.4.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn2.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.4.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn2.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.4.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn2.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.4.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn2.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.4.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.attn2.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.4.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.ff.net.0.proj.bias": "up_blocks.0.attentions.2.transformer_blocks.4.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.ff.net.0.proj.weight": "up_blocks.0.attentions.2.transformer_blocks.4.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.ff.net.2.bias": "up_blocks.0.attentions.2.transformer_blocks.4.ff.net.2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.ff.net.2.weight": "up_blocks.0.attentions.2.transformer_blocks.4.ff.net.2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.norm1.bias": "up_blocks.0.attentions.2.transformer_blocks.4.norm1.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.norm1.weight": "up_blocks.0.attentions.2.transformer_blocks.4.norm1.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.norm2.bias": "up_blocks.0.attentions.2.transformer_blocks.4.norm2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.norm2.weight": "up_blocks.0.attentions.2.transformer_blocks.4.norm2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.norm3.bias": "up_blocks.0.attentions.2.transformer_blocks.4.norm3.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.4.norm3.weight": "up_blocks.0.attentions.2.transformer_blocks.4.norm3.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn1.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.5.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn1.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.5.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn1.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.5.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn1.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.5.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn1.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.5.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn2.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.5.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn2.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.5.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn2.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.5.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn2.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.5.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.attn2.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.5.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.ff.net.0.proj.bias": "up_blocks.0.attentions.2.transformer_blocks.5.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.ff.net.0.proj.weight": "up_blocks.0.attentions.2.transformer_blocks.5.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.ff.net.2.bias": "up_blocks.0.attentions.2.transformer_blocks.5.ff.net.2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.ff.net.2.weight": "up_blocks.0.attentions.2.transformer_blocks.5.ff.net.2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.norm1.bias": "up_blocks.0.attentions.2.transformer_blocks.5.norm1.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.norm1.weight": "up_blocks.0.attentions.2.transformer_blocks.5.norm1.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.norm2.bias": "up_blocks.0.attentions.2.transformer_blocks.5.norm2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.norm2.weight": "up_blocks.0.attentions.2.transformer_blocks.5.norm2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.norm3.bias": "up_blocks.0.attentions.2.transformer_blocks.5.norm3.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.5.norm3.weight": "up_blocks.0.attentions.2.transformer_blocks.5.norm3.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn1.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.6.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn1.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.6.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn1.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.6.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn1.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.6.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn1.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.6.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn2.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.6.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn2.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.6.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn2.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.6.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn2.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.6.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.attn2.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.6.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.ff.net.0.proj.bias": "up_blocks.0.attentions.2.transformer_blocks.6.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.ff.net.0.proj.weight": "up_blocks.0.attentions.2.transformer_blocks.6.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.ff.net.2.bias": "up_blocks.0.attentions.2.transformer_blocks.6.ff.net.2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.ff.net.2.weight": "up_blocks.0.attentions.2.transformer_blocks.6.ff.net.2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.norm1.bias": "up_blocks.0.attentions.2.transformer_blocks.6.norm1.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.norm1.weight": "up_blocks.0.attentions.2.transformer_blocks.6.norm1.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.norm2.bias": "up_blocks.0.attentions.2.transformer_blocks.6.norm2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.norm2.weight": "up_blocks.0.attentions.2.transformer_blocks.6.norm2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.norm3.bias": "up_blocks.0.attentions.2.transformer_blocks.6.norm3.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.6.norm3.weight": "up_blocks.0.attentions.2.transformer_blocks.6.norm3.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn1.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.7.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn1.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.7.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn1.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.7.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn1.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.7.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn1.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.7.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn2.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.7.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn2.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.7.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn2.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.7.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn2.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.7.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.attn2.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.7.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.ff.net.0.proj.bias": "up_blocks.0.attentions.2.transformer_blocks.7.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.ff.net.0.proj.weight": "up_blocks.0.attentions.2.transformer_blocks.7.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.ff.net.2.bias": "up_blocks.0.attentions.2.transformer_blocks.7.ff.net.2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.ff.net.2.weight": "up_blocks.0.attentions.2.transformer_blocks.7.ff.net.2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.norm1.bias": "up_blocks.0.attentions.2.transformer_blocks.7.norm1.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.norm1.weight": "up_blocks.0.attentions.2.transformer_blocks.7.norm1.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.norm2.bias": "up_blocks.0.attentions.2.transformer_blocks.7.norm2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.norm2.weight": "up_blocks.0.attentions.2.transformer_blocks.7.norm2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.norm3.bias": "up_blocks.0.attentions.2.transformer_blocks.7.norm3.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.7.norm3.weight": "up_blocks.0.attentions.2.transformer_blocks.7.norm3.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn1.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.8.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn1.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.8.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn1.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.8.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn1.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.8.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn1.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.8.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn2.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.8.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn2.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.8.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn2.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.8.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn2.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.8.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.attn2.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.8.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.ff.net.0.proj.bias": "up_blocks.0.attentions.2.transformer_blocks.8.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.ff.net.0.proj.weight": "up_blocks.0.attentions.2.transformer_blocks.8.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.ff.net.2.bias": "up_blocks.0.attentions.2.transformer_blocks.8.ff.net.2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.ff.net.2.weight": "up_blocks.0.attentions.2.transformer_blocks.8.ff.net.2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.norm1.bias": "up_blocks.0.attentions.2.transformer_blocks.8.norm1.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.norm1.weight": "up_blocks.0.attentions.2.transformer_blocks.8.norm1.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.norm2.bias": "up_blocks.0.attentions.2.transformer_blocks.8.norm2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.norm2.weight": "up_blocks.0.attentions.2.transformer_blocks.8.norm2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.norm3.bias": "up_blocks.0.attentions.2.transformer_blocks.8.norm3.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.8.norm3.weight": "up_blocks.0.attentions.2.transformer_blocks.8.norm3.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn1.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.9.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn1.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.9.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn1.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.9.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn1.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.9.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn1.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.9.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn2.to_k.weight": "up_blocks.0.attentions.2.transformer_blocks.9.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn2.to_out.0.bias": "up_blocks.0.attentions.2.transformer_blocks.9.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn2.to_out.0.weight": "up_blocks.0.attentions.2.transformer_blocks.9.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn2.to_q.weight": "up_blocks.0.attentions.2.transformer_blocks.9.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.attn2.to_v.weight": "up_blocks.0.attentions.2.transformer_blocks.9.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.ff.net.0.proj.bias": "up_blocks.0.attentions.2.transformer_blocks.9.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.ff.net.0.proj.weight": "up_blocks.0.attentions.2.transformer_blocks.9.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.ff.net.2.bias": "up_blocks.0.attentions.2.transformer_blocks.9.ff.net.2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.ff.net.2.weight": "up_blocks.0.attentions.2.transformer_blocks.9.ff.net.2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.norm1.bias": "up_blocks.0.attentions.2.transformer_blocks.9.norm1.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.norm1.weight": "up_blocks.0.attentions.2.transformer_blocks.9.norm1.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.norm2.bias": "up_blocks.0.attentions.2.transformer_blocks.9.norm2.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.norm2.weight": "up_blocks.0.attentions.2.transformer_blocks.9.norm2.weight",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.norm3.bias": "up_blocks.0.attentions.2.transformer_blocks.9.norm3.bias",
        "model.diffusion_model.output_blocks.2.1.transformer_blocks.9.norm3.weight": "up_blocks.0.attentions.2.transformer_blocks.9.norm3.weight",
        "model.diffusion_model.output_blocks.2.2.conv.bias": "up_blocks.0.upsamplers.0.conv.bias",
        "model.diffusion_model.output_blocks.2.2.conv.weight": "up_blocks.0.upsamplers.0.conv.weight",
        "model.diffusion_model.output_blocks.3.0.emb_layers.1.bias": "up_blocks.1.resnets.0.time_emb_proj.bias",
        "model.diffusion_model.output_blocks.3.0.emb_layers.1.weight": "up_blocks.1.resnets.0.time_emb_proj.weight",
        "model.diffusion_model.output_blocks.3.0.in_layers.0.bias": "up_blocks.1.resnets.0.norm1.bias",
        "model.diffusion_model.output_blocks.3.0.in_layers.0.weight": "up_blocks.1.resnets.0.norm1.weight",
        "model.diffusion_model.output_blocks.3.0.in_layers.2.bias": "up_blocks.1.resnets.0.conv1.bias",
        "model.diffusion_model.output_blocks.3.0.in_layers.2.weight": "up_blocks.1.resnets.0.conv1.weight",
        "model.diffusion_model.output_blocks.3.0.out_layers.0.bias": "up_blocks.1.resnets.0.norm2.bias",
        "model.diffusion_model.output_blocks.3.0.out_layers.0.weight": "up_blocks.1.resnets.0.norm2.weight",
        "model.diffusion_model.output_blocks.3.0.out_layers.3.bias": "up_blocks.1.resnets.0.conv2.bias",
        "model.diffusion_model.output_blocks.3.0.out_layers.3.weight": "up_blocks.1.resnets.0.conv2.weight",
        "model.diffusion_model.output_blocks.3.0.skip_connection.bias": "up_blocks.1.resnets.0.conv_shortcut.bias",
        "model.diffusion_model.output_blocks.3.0.skip_connection.weight": "up_blocks.1.resnets.0.conv_shortcut.weight",
        "model.diffusion_model.output_blocks.3.1.norm.bias": "up_blocks.1.attentions.0.norm.bias",
        "model.diffusion_model.output_blocks.3.1.norm.weight": "up_blocks.1.attentions.0.norm.weight",
        "model.diffusion_model.output_blocks.3.1.proj_in.bias": "up_blocks.1.attentions.0.proj_in.bias",
        "model.diffusion_model.output_blocks.3.1.proj_in.weight": "up_blocks.1.attentions.0.proj_in.weight",
        "model.diffusion_model.output_blocks.3.1.proj_out.bias": "up_blocks.1.attentions.0.proj_out.bias",
        "model.diffusion_model.output_blocks.3.1.proj_out.weight": "up_blocks.1.attentions.0.proj_out.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_k.weight": "up_blocks.1.attentions.0.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_out.0.bias": "up_blocks.1.attentions.0.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_out.0.weight": "up_blocks.1.attentions.0.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_q.weight": "up_blocks.1.attentions.0.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn1.to_v.weight": "up_blocks.1.attentions.0.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_k.weight": "up_blocks.1.attentions.0.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_out.0.bias": "up_blocks.1.attentions.0.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_out.0.weight": "up_blocks.1.attentions.0.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_q.weight": "up_blocks.1.attentions.0.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.attn2.to_v.weight": "up_blocks.1.attentions.0.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.ff.net.0.proj.bias": "up_blocks.1.attentions.0.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.ff.net.0.proj.weight": "up_blocks.1.attentions.0.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.ff.net.2.bias": "up_blocks.1.attentions.0.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.ff.net.2.weight": "up_blocks.1.attentions.0.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm1.bias": "up_blocks.1.attentions.0.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm1.weight": "up_blocks.1.attentions.0.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm2.bias": "up_blocks.1.attentions.0.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm2.weight": "up_blocks.1.attentions.0.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm3.bias": "up_blocks.1.attentions.0.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.0.norm3.weight": "up_blocks.1.attentions.0.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn1.to_k.weight": "up_blocks.1.attentions.0.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn1.to_out.0.bias": "up_blocks.1.attentions.0.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn1.to_out.0.weight": "up_blocks.1.attentions.0.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn1.to_q.weight": "up_blocks.1.attentions.0.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn1.to_v.weight": "up_blocks.1.attentions.0.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn2.to_k.weight": "up_blocks.1.attentions.0.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn2.to_out.0.bias": "up_blocks.1.attentions.0.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn2.to_out.0.weight": "up_blocks.1.attentions.0.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn2.to_q.weight": "up_blocks.1.attentions.0.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.attn2.to_v.weight": "up_blocks.1.attentions.0.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.ff.net.0.proj.bias": "up_blocks.1.attentions.0.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.ff.net.0.proj.weight": "up_blocks.1.attentions.0.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.ff.net.2.bias": "up_blocks.1.attentions.0.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.ff.net.2.weight": "up_blocks.1.attentions.0.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.norm1.bias": "up_blocks.1.attentions.0.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.norm1.weight": "up_blocks.1.attentions.0.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.norm2.bias": "up_blocks.1.attentions.0.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.norm2.weight": "up_blocks.1.attentions.0.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.norm3.bias": "up_blocks.1.attentions.0.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.output_blocks.3.1.transformer_blocks.1.norm3.weight": "up_blocks.1.attentions.0.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.output_blocks.4.0.emb_layers.1.bias": "up_blocks.1.resnets.1.time_emb_proj.bias",
        "model.diffusion_model.output_blocks.4.0.emb_layers.1.weight": "up_blocks.1.resnets.1.time_emb_proj.weight",
        "model.diffusion_model.output_blocks.4.0.in_layers.0.bias": "up_blocks.1.resnets.1.norm1.bias",
        "model.diffusion_model.output_blocks.4.0.in_layers.0.weight": "up_blocks.1.resnets.1.norm1.weight",
        "model.diffusion_model.output_blocks.4.0.in_layers.2.bias": "up_blocks.1.resnets.1.conv1.bias",
        "model.diffusion_model.output_blocks.4.0.in_layers.2.weight": "up_blocks.1.resnets.1.conv1.weight",
        "model.diffusion_model.output_blocks.4.0.out_layers.0.bias": "up_blocks.1.resnets.1.norm2.bias",
        "model.diffusion_model.output_blocks.4.0.out_layers.0.weight": "up_blocks.1.resnets.1.norm2.weight",
        "model.diffusion_model.output_blocks.4.0.out_layers.3.bias": "up_blocks.1.resnets.1.conv2.bias",
        "model.diffusion_model.output_blocks.4.0.out_layers.3.weight": "up_blocks.1.resnets.1.conv2.weight",
        "model.diffusion_model.output_blocks.4.0.skip_connection.bias": "up_blocks.1.resnets.1.conv_shortcut.bias",
        "model.diffusion_model.output_blocks.4.0.skip_connection.weight": "up_blocks.1.resnets.1.conv_shortcut.weight",
        "model.diffusion_model.output_blocks.4.1.norm.bias": "up_blocks.1.attentions.1.norm.bias",
        "model.diffusion_model.output_blocks.4.1.norm.weight": "up_blocks.1.attentions.1.norm.weight",
        "model.diffusion_model.output_blocks.4.1.proj_in.bias": "up_blocks.1.attentions.1.proj_in.bias",
        "model.diffusion_model.output_blocks.4.1.proj_in.weight": "up_blocks.1.attentions.1.proj_in.weight",
        "model.diffusion_model.output_blocks.4.1.proj_out.bias": "up_blocks.1.attentions.1.proj_out.bias",
        "model.diffusion_model.output_blocks.4.1.proj_out.weight": "up_blocks.1.attentions.1.proj_out.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_k.weight": "up_blocks.1.attentions.1.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_out.0.bias": "up_blocks.1.attentions.1.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_out.0.weight": "up_blocks.1.attentions.1.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_q.weight": "up_blocks.1.attentions.1.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn1.to_v.weight": "up_blocks.1.attentions.1.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_k.weight": "up_blocks.1.attentions.1.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_out.0.bias": "up_blocks.1.attentions.1.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_out.0.weight": "up_blocks.1.attentions.1.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_q.weight": "up_blocks.1.attentions.1.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.attn2.to_v.weight": "up_blocks.1.attentions.1.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.ff.net.0.proj.bias": "up_blocks.1.attentions.1.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.ff.net.0.proj.weight": "up_blocks.1.attentions.1.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.ff.net.2.bias": "up_blocks.1.attentions.1.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.ff.net.2.weight": "up_blocks.1.attentions.1.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm1.bias": "up_blocks.1.attentions.1.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm1.weight": "up_blocks.1.attentions.1.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm2.bias": "up_blocks.1.attentions.1.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm2.weight": "up_blocks.1.attentions.1.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm3.bias": "up_blocks.1.attentions.1.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.0.norm3.weight": "up_blocks.1.attentions.1.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn1.to_k.weight": "up_blocks.1.attentions.1.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn1.to_out.0.bias": "up_blocks.1.attentions.1.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn1.to_out.0.weight": "up_blocks.1.attentions.1.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn1.to_q.weight": "up_blocks.1.attentions.1.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn1.to_v.weight": "up_blocks.1.attentions.1.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn2.to_k.weight": "up_blocks.1.attentions.1.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn2.to_out.0.bias": "up_blocks.1.attentions.1.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn2.to_out.0.weight": "up_blocks.1.attentions.1.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn2.to_q.weight": "up_blocks.1.attentions.1.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.attn2.to_v.weight": "up_blocks.1.attentions.1.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.ff.net.0.proj.bias": "up_blocks.1.attentions.1.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.ff.net.0.proj.weight": "up_blocks.1.attentions.1.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.ff.net.2.bias": "up_blocks.1.attentions.1.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.ff.net.2.weight": "up_blocks.1.attentions.1.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.norm1.bias": "up_blocks.1.attentions.1.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.norm1.weight": "up_blocks.1.attentions.1.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.norm2.bias": "up_blocks.1.attentions.1.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.norm2.weight": "up_blocks.1.attentions.1.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.norm3.bias": "up_blocks.1.attentions.1.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.output_blocks.4.1.transformer_blocks.1.norm3.weight": "up_blocks.1.attentions.1.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.output_blocks.5.0.emb_layers.1.bias": "up_blocks.1.resnets.2.time_emb_proj.bias",
        "model.diffusion_model.output_blocks.5.0.emb_layers.1.weight": "up_blocks.1.resnets.2.time_emb_proj.weight",
        "model.diffusion_model.output_blocks.5.0.in_layers.0.bias": "up_blocks.1.resnets.2.norm1.bias",
        "model.diffusion_model.output_blocks.5.0.in_layers.0.weight": "up_blocks.1.resnets.2.norm1.weight",
        "model.diffusion_model.output_blocks.5.0.in_layers.2.bias": "up_blocks.1.resnets.2.conv1.bias",
        "model.diffusion_model.output_blocks.5.0.in_layers.2.weight": "up_blocks.1.resnets.2.conv1.weight",
        "model.diffusion_model.output_blocks.5.0.out_layers.0.bias": "up_blocks.1.resnets.2.norm2.bias",
        "model.diffusion_model.output_blocks.5.0.out_layers.0.weight": "up_blocks.1.resnets.2.norm2.weight",
        "model.diffusion_model.output_blocks.5.0.out_layers.3.bias": "up_blocks.1.resnets.2.conv2.bias",
        "model.diffusion_model.output_blocks.5.0.out_layers.3.weight": "up_blocks.1.resnets.2.conv2.weight",
        "model.diffusion_model.output_blocks.5.0.skip_connection.bias": "up_blocks.1.resnets.2.conv_shortcut.bias",
        "model.diffusion_model.output_blocks.5.0.skip_connection.weight": "up_blocks.1.resnets.2.conv_shortcut.weight",
        "model.diffusion_model.output_blocks.5.1.norm.bias": "up_blocks.1.attentions.2.norm.bias",
        "model.diffusion_model.output_blocks.5.1.norm.weight": "up_blocks.1.attentions.2.norm.weight",
        "model.diffusion_model.output_blocks.5.1.proj_in.bias": "up_blocks.1.attentions.2.proj_in.bias",
        "model.diffusion_model.output_blocks.5.1.proj_in.weight": "up_blocks.1.attentions.2.proj_in.weight",
        "model.diffusion_model.output_blocks.5.1.proj_out.bias": "up_blocks.1.attentions.2.proj_out.bias",
        "model.diffusion_model.output_blocks.5.1.proj_out.weight": "up_blocks.1.attentions.2.proj_out.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_k.weight": "up_blocks.1.attentions.2.transformer_blocks.0.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_out.0.bias": "up_blocks.1.attentions.2.transformer_blocks.0.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_out.0.weight": "up_blocks.1.attentions.2.transformer_blocks.0.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_q.weight": "up_blocks.1.attentions.2.transformer_blocks.0.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn1.to_v.weight": "up_blocks.1.attentions.2.transformer_blocks.0.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_k.weight": "up_blocks.1.attentions.2.transformer_blocks.0.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_out.0.bias": "up_blocks.1.attentions.2.transformer_blocks.0.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_out.0.weight": "up_blocks.1.attentions.2.transformer_blocks.0.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_q.weight": "up_blocks.1.attentions.2.transformer_blocks.0.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.attn2.to_v.weight": "up_blocks.1.attentions.2.transformer_blocks.0.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.ff.net.0.proj.bias": "up_blocks.1.attentions.2.transformer_blocks.0.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.ff.net.0.proj.weight": "up_blocks.1.attentions.2.transformer_blocks.0.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.ff.net.2.bias": "up_blocks.1.attentions.2.transformer_blocks.0.ff.net.2.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.ff.net.2.weight": "up_blocks.1.attentions.2.transformer_blocks.0.ff.net.2.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm1.bias": "up_blocks.1.attentions.2.transformer_blocks.0.norm1.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm1.weight": "up_blocks.1.attentions.2.transformer_blocks.0.norm1.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm2.bias": "up_blocks.1.attentions.2.transformer_blocks.0.norm2.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm2.weight": "up_blocks.1.attentions.2.transformer_blocks.0.norm2.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm3.bias": "up_blocks.1.attentions.2.transformer_blocks.0.norm3.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.0.norm3.weight": "up_blocks.1.attentions.2.transformer_blocks.0.norm3.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn1.to_k.weight": "up_blocks.1.attentions.2.transformer_blocks.1.attn1.to_k.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn1.to_out.0.bias": "up_blocks.1.attentions.2.transformer_blocks.1.attn1.to_out.0.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn1.to_out.0.weight": "up_blocks.1.attentions.2.transformer_blocks.1.attn1.to_out.0.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn1.to_q.weight": "up_blocks.1.attentions.2.transformer_blocks.1.attn1.to_q.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn1.to_v.weight": "up_blocks.1.attentions.2.transformer_blocks.1.attn1.to_v.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn2.to_k.weight": "up_blocks.1.attentions.2.transformer_blocks.1.attn2.to_k.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn2.to_out.0.bias": "up_blocks.1.attentions.2.transformer_blocks.1.attn2.to_out.0.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn2.to_out.0.weight": "up_blocks.1.attentions.2.transformer_blocks.1.attn2.to_out.0.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn2.to_q.weight": "up_blocks.1.attentions.2.transformer_blocks.1.attn2.to_q.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.attn2.to_v.weight": "up_blocks.1.attentions.2.transformer_blocks.1.attn2.to_v.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.ff.net.0.proj.bias": "up_blocks.1.attentions.2.transformer_blocks.1.ff.net.0.proj.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.ff.net.0.proj.weight": "up_blocks.1.attentions.2.transformer_blocks.1.ff.net.0.proj.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.ff.net.2.bias": "up_blocks.1.attentions.2.transformer_blocks.1.ff.net.2.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.ff.net.2.weight": "up_blocks.1.attentions.2.transformer_blocks.1.ff.net.2.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.norm1.bias": "up_blocks.1.attentions.2.transformer_blocks.1.norm1.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.norm1.weight": "up_blocks.1.attentions.2.transformer_blocks.1.norm1.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.norm2.bias": "up_blocks.1.attentions.2.transformer_blocks.1.norm2.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.norm2.weight": "up_blocks.1.attentions.2.transformer_blocks.1.norm2.weight",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.norm3.bias": "up_blocks.1.attentions.2.transformer_blocks.1.norm3.bias",
        "model.diffusion_model.output_blocks.5.1.transformer_blocks.1.norm3.weight": "up_blocks.1.attentions.2.transformer_blocks.1.norm3.weight",
        "model.diffusion_model.output_blocks.5.2.conv.bias": "up_blocks.1.upsamplers.0.conv.bias",
        "model.diffusion_model.output_blocks.5.2.conv.weight": "up_blocks.1.upsamplers.0.conv.weight",
        "model.diffusion_model.output_blocks.6.0.emb_layers.1.bias": "up_blocks.2.resnets.0.time_emb_proj.bias",
        "model.diffusion_model.output_blocks.6.0.emb_layers.1.weight": "up_blocks.2.resnets.0.time_emb_proj.weight",
        "model.diffusion_model.output_blocks.6.0.in_layers.0.bias": "up_blocks.2.resnets.0.norm1.bias",
        "model.diffusion_model.output_blocks.6.0.in_layers.0.weight": "up_blocks.2.resnets.0.norm1.weight",
        "model.diffusion_model.output_blocks.6.0.in_layers.2.bias": "up_blocks.2.resnets.0.conv1.bias",
        "model.diffusion_model.output_blocks.6.0.in_layers.2.weight": "up_blocks.2.resnets.0.conv1.weight",
        "model.diffusion_model.output_blocks.6.0.out_layers.0.bias": "up_blocks.2.resnets.0.norm2.bias",
        "model.diffusion_model.output_blocks.6.0.out_layers.0.weight": "up_blocks.2.resnets.0.norm2.weight",
        "model.diffusion_model.output_blocks.6.0.out_layers.3.bias": "up_blocks.2.resnets.0.conv2.bias",
        "model.diffusion_model.output_blocks.6.0.out_layers.3.weight": "up_blocks.2.resnets.0.conv2.weight",
        "model.diffusion_model.output_blocks.6.0.skip_connection.bias": "up_blocks.2.resnets.0.conv_shortcut.bias",
        "model.diffusion_model.output_blocks.6.0.skip_connection.weight": "up_blocks.2.resnets.0.conv_shortcut.weight",
        "model.diffusion_model.output_blocks.7.0.emb_layers.1.bias": "up_blocks.2.resnets.1.time_emb_proj.bias",
        "model.diffusion_model.output_blocks.7.0.emb_layers.1.weight": "up_blocks.2.resnets.1.time_emb_proj.weight",
        "model.diffusion_model.output_blocks.7.0.in_layers.0.bias": "up_blocks.2.resnets.1.norm1.bias",
        "model.diffusion_model.output_blocks.7.0.in_layers.0.weight": "up_blocks.2.resnets.1.norm1.weight",
        "model.diffusion_model.output_blocks.7.0.in_layers.2.bias": "up_blocks.2.resnets.1.conv1.bias",
        "model.diffusion_model.output_blocks.7.0.in_layers.2.weight": "up_blocks.2.resnets.1.conv1.weight",
        "model.diffusion_model.output_blocks.7.0.out_layers.0.bias": "up_blocks.2.resnets.1.norm2.bias",
        "model.diffusion_model.output_blocks.7.0.out_layers.0.weight": "up_blocks.2.resnets.1.norm2.weight",
        "model.diffusion_model.output_blocks.7.0.out_layers.3.bias": "up_blocks.2.resnets.1.conv2.bias",
        "model.diffusion_model.output_blocks.7.0.out_layers.3.weight": "up_blocks.2.resnets.1.conv2.weight",
        "model.diffusion_model.output_blocks.7.0.skip_connection.bias": "up_blocks.2.resnets.1.conv_shortcut.bias",
        "model.diffusion_model.output_blocks.7.0.skip_connection.weight": "up_blocks.2.resnets.1.conv_shortcut.weight",
        "model.diffusion_model.output_blocks.8.0.emb_layers.1.bias": "up_blocks.2.resnets.2.time_emb_proj.bias",
        "model.diffusion_model.output_blocks.8.0.emb_layers.1.weight": "up_blocks.2.resnets.2.time_emb_proj.weight",
        "model.diffusion_model.output_blocks.8.0.in_layers.0.bias": "up_blocks.2.resnets.2.norm1.bias",
        "model.diffusion_model.output_blocks.8.0.in_layers.0.weight": "up_blocks.2.resnets.2.norm1.weight",
        "model.diffusion_model.output_blocks.8.0.in_layers.2.bias": "up_blocks.2.resnets.2.conv1.bias",
        "model.diffusion_model.output_blocks.8.0.in_layers.2.weight": "up_blocks.2.resnets.2.conv1.weight",
        "model.diffusion_model.output_blocks.8.0.out_layers.0.bias": "up_blocks.2.resnets.2.norm2.bias",
        "model.diffusion_model.output_blocks.8.0.out_layers.0.weight": "up_blocks.2.resnets.2.norm2.weight",
        "model.diffusion_model.output_blocks.8.0.out_layers.3.bias": "up_blocks.2.resnets.2.conv2.bias",
        "model.diffusion_model.output_blocks.8.0.out_layers.3.weight": "up_blocks.2.resnets.2.conv2.weight",
        "model.diffusion_model.output_blocks.8.0.skip_connection.bias": "up_blocks.2.resnets.2.conv_shortcut.bias",
        "model.diffusion_model.output_blocks.8.0.skip_connection.weight": "up_blocks.2.resnets.2.conv_shortcut.weight",
        "model.diffusion_model.time_embed.0.bias": "time_embedding.linear_1.bias",
        "model.diffusion_model.time_embed.0.weight": "time_embedding.linear_1.weight",
        "model.diffusion_model.time_embed.2.bias": "time_embedding.linear_2.bias",
        "model.diffusion_model.time_embed.2.weight": "time_embedding.linear_2.weight",
    }
    state_dict_ = {rename_dict[name]: param for name, param in state_dict.items() if name in rename_dict}
    return state_dict_



FastSDXL/StateDictConverter.py
Artiprocher/FastSDXL
# https://github.com/lllyasviel/Fooocus/blob/main/modules/sdxl_styles.py
styles = [
    {
        "name": "Default (Slightly Cinematic)",
        "prompt": "cinematic still {prompt} . emotional, harmonious, vignette, highly detailed, high budget, bokeh, cinemascope, moody, epic, gorgeous, film grain, grainy",
        "negative_prompt": "anime, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured"
    },
    {
        "name": "sai-3d-model",
        "prompt": "professional 3d model {prompt} . octane render, highly detailed, volumetric, dramatic lighting",
        "negative_prompt": "ugly, deformed, noisy, low poly, blurry, painting"
    },
    {
        "name": "sai-analog film",
        "prompt": "analog film photo {prompt} . faded film, desaturated, 35mm photo, grainy, vignette, vintage, Kodachrome, Lomography, stained, highly detailed, found footage",
        "negative_prompt": "painting, drawing, illustration, glitch, deformed, mutated, cross-eyed, ugly, disfigured"
    },
    {
        "name": "sai-anime",
        "prompt": "anime artwork {prompt} . anime style, key visual, vibrant, studio anime, highly detailed",
        "negative_prompt": "photo, deformed, black and white, realism, disfigured, low contrast"
    },
    {
        "name": "sai-cinematic",
        "prompt": "cinematic film still {prompt} . shallow depth of field, vignette, highly detailed, high budget, bokeh, cinemascope, moody, epic, gorgeous, film grain, grainy",
        "negative_prompt": "anime, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured"
    },
    {
        "name": "sai-comic book",
        "prompt": "comic {prompt} . graphic illustration, comic art, graphic novel art, vibrant, highly detailed",
        "negative_prompt": "photograph, deformed, glitch, noisy, realistic, stock photo"
    },
    {
        "name": "sai-craft clay",
        "prompt": "play-doh style {prompt} . sculpture, clay art, centered composition, Claymation",
        "negative_prompt": "sloppy, messy, grainy, highly detailed, ultra textured, photo"
    },
    {
        "name": "sai-digital art",
        "prompt": "concept art {prompt} . digital artwork, illustrative, painterly, matte painting, highly detailed",
        "negative_prompt": "photo, photorealistic, realism, ugly"
    },
    {
        "name": "sai-enhance",
        "prompt": "breathtaking {prompt} . award-winning, professional, highly detailed",
        "negative_prompt": "ugly, deformed, noisy, blurry, distorted, grainy"
    },
    {
        "name": "sai-fantasy art",
        "prompt": "ethereal fantasy concept art of  {prompt} . magnificent, celestial, ethereal, painterly, epic, majestic, magical, fantasy art, cover art, dreamy",
        "negative_prompt": "photographic, realistic, realism, 35mm film, dslr, cropped, frame, text, deformed, glitch, noise, noisy, off-center, deformed, cross-eyed, closed eyes, bad anatomy, ugly, disfigured, sloppy, duplicate, mutated, black and white"
    },
    {
        "name": "sai-isometric",
        "prompt": "isometric style {prompt} . vibrant, beautiful, crisp, detailed, ultra detailed, intricate",
        "negative_prompt": "deformed, mutated, ugly, disfigured, blur, blurry, noise, noisy, realistic, photographic"
    },
    {
        "name": "sai-line art",
        "prompt": "line art drawing {prompt} . professional, sleek, modern, minimalist, graphic, line art, vector graphics",
        "negative_prompt": "anime, photorealistic, 35mm film, deformed, glitch, blurry, noisy, off-center, deformed, cross-eyed, closed eyes, bad anatomy, ugly, disfigured, mutated, realism, realistic, impressionism, expressionism, oil, acrylic"
    },
    {
        "name": "sai-lowpoly",
        "prompt": "low-poly style {prompt} . low-poly game art, polygon mesh, jagged, blocky, wireframe edges, centered composition",
        "negative_prompt": "noisy, sloppy, messy, grainy, highly detailed, ultra textured, photo"
    },
    {
        "name": "sai-neonpunk",
        "prompt": "neonpunk style {prompt} . cyberpunk, vaporwave, neon, vibes, vibrant, stunningly beautiful, crisp, detailed, sleek, ultramodern, magenta highlights, dark purple shadows, high contrast, cinematic, ultra detailed, intricate, professional",
        "negative_prompt": "painting, drawing, illustration, glitch, deformed, mutated, cross-eyed, ugly, disfigured"
    },
    {
        "name": "sai-origami",
        "prompt": "origami style {prompt} . paper art, pleated paper, folded, origami art, pleats, cut and fold, centered composition",
        "negative_prompt": "noisy, sloppy, messy, grainy, highly detailed, ultra textured, photo"
    },
    {
        "name": "sai-photographic",
        "prompt": "cinematic photo {prompt} . 35mm photograph, film, bokeh, professional, 4k, highly detailed",
        "negative_prompt": "drawing, painting, crayon, sketch, graphite, impressionist, noisy, blurry, soft, deformed, ugly"
    },
    {
        "name": "sai-pixel art",
        "prompt": "pixel-art {prompt} . low-res, blocky, pixel art style, 8-bit graphics",
        "negative_prompt": "sloppy, messy, blurry, noisy, highly detailed, ultra textured, photo, realistic"
    },
    {
        "name": "sai-texture",
        "prompt": "texture {prompt} top down close-up",
        "negative_prompt": "ugly, deformed, noisy, blurry"
    },
    {
        "name": "ads-advertising",
        "prompt": "advertising poster style {prompt} . Professional, modern, product-focused, commercial, eye-catching, highly detailed",
        "negative_prompt": "noisy, blurry, amateurish, sloppy, unattractive"
    },
    {
        "name": "ads-automotive",
        "prompt": "automotive advertisement style {prompt} . sleek, dynamic, professional, commercial, vehicle-focused, high-resolution, highly detailed",
        "negative_prompt": "noisy, blurry, unattractive, sloppy, unprofessional"
    },
    {
        "name": "ads-corporate",
        "prompt": "corporate branding style {prompt} . professional, clean, modern, sleek, minimalist, business-oriented, highly detailed",
        "negative_prompt": "noisy, blurry, grungy, sloppy, cluttered, disorganized"
    },
    {
        "name": "ads-fashion editorial",
        "prompt": "fashion editorial style {prompt} . high fashion, trendy, stylish, editorial, magazine style, professional, highly detailed",
        "negative_prompt": "outdated, blurry, noisy, unattractive, sloppy"
    },
    {
        "name": "ads-food photography",
        "prompt": "food photography style {prompt} . appetizing, professional, culinary, high-resolution, commercial, highly detailed",
        "negative_prompt": "unappetizing, sloppy, unprofessional, noisy, blurry"
    },
    {
        "name": "ads-gourmet food photography",
        "prompt": "gourmet food photo of {prompt} . soft natural lighting, macro details, vibrant colors, fresh ingredients, glistening textures, bokeh background, styled plating, wooden tabletop, garnished, tantalizing, editorial quality",
        "negative_prompt": "cartoon, anime, sketch, grayscale, dull, overexposed, cluttered, messy plate, deformed"
    },
    {
        "name": "ads-luxury",
        "prompt": "luxury product style {prompt} . elegant, sophisticated, high-end, luxurious, professional, highly detailed",
        "negative_prompt": "cheap, noisy, blurry, unattractive, amateurish"
    },
    {
        "name": "ads-real estate",
        "prompt": "real estate photography style {prompt} . professional, inviting, well-lit, high-resolution, property-focused, commercial, highly detailed",
        "negative_prompt": "dark, blurry, unappealing, noisy, unprofessional"
    },
    {
        "name": "ads-retail",
        "prompt": "retail packaging style {prompt} . vibrant, enticing, commercial, product-focused, eye-catching, professional, highly detailed",
        "negative_prompt": "noisy, blurry, amateurish, sloppy, unattractive"
    },
    {
        "name": "artstyle-abstract",
        "prompt": "abstract style {prompt} . non-representational, colors and shapes, expression of feelings, imaginative, highly detailed",
        "negative_prompt": "realistic, photographic, figurative, concrete"
    },
    {
        "name": "artstyle-abstract expressionism",
        "prompt": "abstract expressionist painting {prompt} . energetic brushwork, bold colors, abstract forms, expressive, emotional",
        "negative_prompt": "realistic, photorealistic, low contrast, plain, simple, monochrome"
    },
    {
        "name": "artstyle-art deco",
        "prompt": "art deco style {prompt} . geometric shapes, bold colors, luxurious, elegant, decorative, symmetrical, ornate, detailed",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, modernist, minimalist"
    },
    {
        "name": "artstyle-art nouveau",
        "prompt": "art nouveau style {prompt} . elegant, decorative, curvilinear forms, nature-inspired, ornate, detailed",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, modernist, minimalist"
    },
    {
        "name": "artstyle-constructivist",
        "prompt": "constructivist style {prompt} . geometric shapes, bold colors, dynamic composition, propaganda art style",
        "negative_prompt": "realistic, photorealistic, low contrast, plain, simple, abstract expressionism"
    },
    {
        "name": "artstyle-cubist",
        "prompt": "cubist artwork {prompt} . geometric shapes, abstract, innovative, revolutionary",
        "negative_prompt": "anime, photorealistic, 35mm film, deformed, glitch, low contrast, noisy"
    },
    {
        "name": "artstyle-expressionist",
        "prompt": "expressionist {prompt} . raw, emotional, dynamic, distortion for emotional effect, vibrant, use of unusual colors, detailed",
        "negative_prompt": "realism, symmetry, quiet, calm, photo"
    },
    {
        "name": "artstyle-graffiti",
        "prompt": "graffiti style {prompt} . street art, vibrant, urban, detailed, tag, mural",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic"
    },
    {
        "name": "artstyle-hyperrealism",
        "prompt": "hyperrealistic art {prompt} . extremely high-resolution details, photographic, realism pushed to extreme, fine texture, incredibly lifelike",
        "negative_prompt": "simplified, abstract, unrealistic, impressionistic, low resolution"
    },
    {
        "name": "artstyle-impressionist",
        "prompt": "impressionist painting {prompt} . loose brushwork, vibrant color, light and shadow play, captures feeling over form",
        "negative_prompt": "anime, photorealistic, 35mm film, deformed, glitch, low contrast, noisy"
    },
    {
        "name": "artstyle-pointillism",
        "prompt": "pointillism style {prompt} . composed entirely of small, distinct dots of color, vibrant, highly detailed",
        "negative_prompt": "line drawing, smooth shading, large color fields, simplistic"
    },
    {
        "name": "artstyle-pop art",
        "prompt": "pop Art style {prompt} . bright colors, bold outlines, popular culture themes, ironic or kitsch",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, minimalist"
    },
    {
        "name": "artstyle-psychedelic",
        "prompt": "psychedelic style {prompt} . vibrant colors, swirling patterns, abstract forms, surreal, trippy",
        "negative_prompt": "monochrome, black and white, low contrast, realistic, photorealistic, plain, simple"
    },
    {
        "name": "artstyle-renaissance",
        "prompt": "renaissance style {prompt} . realistic, perspective, light and shadow, religious or mythological themes, highly detailed",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, modernist, minimalist, abstract"
    },
    {
        "name": "artstyle-steampunk",
        "prompt": "steampunk style {prompt} . antique, mechanical, brass and copper tones, gears, intricate, detailed",
        "negative_prompt": "deformed, glitch, noisy, low contrast, anime, photorealistic"
    },
    {
        "name": "artstyle-surrealist",
        "prompt": "surrealist art {prompt} . dreamlike, mysterious, provocative, symbolic, intricate, detailed",
        "negative_prompt": "anime, photorealistic, realistic, deformed, glitch, noisy, low contrast"
    },
    {
        "name": "artstyle-typography",
        "prompt": "typographic art {prompt} . stylized, intricate, detailed, artistic, text-based",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic"
    },
    {
        "name": "artstyle-watercolor",
        "prompt": "watercolor painting {prompt} . vibrant, beautiful, painterly, detailed, textural, artistic",
        "negative_prompt": "anime, photorealistic, 35mm film, deformed, glitch, low contrast, noisy"
    },
    {
        "name": "futuristic-biomechanical",
        "prompt": "biomechanical style {prompt} . blend of organic and mechanical elements, futuristic, cybernetic, detailed, intricate",
        "negative_prompt": "natural, rustic, primitive, organic, simplistic"
    },
    {
        "name": "futuristic-biomechanical cyberpunk",
        "prompt": "biomechanical cyberpunk {prompt} . cybernetics, human-machine fusion, dystopian, organic meets artificial, dark, intricate, highly detailed",
        "negative_prompt": "natural, colorful, deformed, sketch, low contrast, watercolor"
    },
    {
        "name": "futuristic-cybernetic",
        "prompt": "cybernetic style {prompt} . futuristic, technological, cybernetic enhancements, robotics, artificial intelligence themes",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, historical, medieval"
    },
    {
        "name": "futuristic-cybernetic robot",
        "prompt": "cybernetic robot {prompt} . android, AI, machine, metal, wires, tech, futuristic, highly detailed",
        "negative_prompt": "organic, natural, human, sketch, watercolor, low contrast"
    },
    {
        "name": "futuristic-cyberpunk cityscape",
        "prompt": "cyberpunk cityscape {prompt} . neon lights, dark alleys, skyscrapers, futuristic, vibrant colors, high contrast, highly detailed",
        "negative_prompt": "natural, rural, deformed, low contrast, black and white, sketch, watercolor"
    },
    {
        "name": "futuristic-futuristic",
        "prompt": "futuristic style {prompt} . sleek, modern, ultramodern, high tech, detailed",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, vintage, antique"
    },
    {
        "name": "futuristic-retro cyberpunk",
        "prompt": "retro cyberpunk {prompt} . 80's inspired, synthwave, neon, vibrant, detailed, retro futurism",
        "negative_prompt": "modern, desaturated, black and white, realism, low contrast"
    },
    {
        "name": "futuristic-retro futurism",
        "prompt": "retro-futuristic {prompt} . vintage sci-fi, 50s and 60s style, atomic age, vibrant, highly detailed",
        "negative_prompt": "contemporary, realistic, rustic, primitive"
    },
    {
        "name": "futuristic-sci-fi",
        "prompt": "sci-fi style {prompt} . futuristic, technological, alien worlds, space themes, advanced civilizations",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, historical, medieval"
    },
    {
        "name": "futuristic-vaporwave",
        "prompt": "vaporwave style {prompt} . retro aesthetic, cyberpunk, vibrant, neon colors, vintage 80s and 90s style, highly detailed",
        "negative_prompt": "monochrome, muted colors, realism, rustic, minimalist, dark"
    },
    {
        "name": "game-bubble bobble",
        "prompt": "Bubble Bobble style {prompt} . 8-bit, cute, pixelated, fantasy, vibrant, reminiscent of Bubble Bobble game",
        "negative_prompt": "realistic, modern, photorealistic, violent, horror"
    },
    {
        "name": "game-cyberpunk game",
        "prompt": "cyberpunk game style {prompt} . neon, dystopian, futuristic, digital, vibrant, detailed, high contrast, reminiscent of cyberpunk genre video games",
        "negative_prompt": "historical, natural, rustic, low detailed"
    },
    {
        "name": "game-fighting game",
        "prompt": "fighting game style {prompt} . dynamic, vibrant, action-packed, detailed character design, reminiscent of fighting video games",
        "negative_prompt": "peaceful, calm, minimalist, photorealistic"
    },
    {
        "name": "game-gta",
        "prompt": "GTA-style artwork {prompt} . satirical, exaggerated, pop art style, vibrant colors, iconic characters, action-packed",
        "negative_prompt": "realistic, black and white, low contrast, impressionist, cubist, noisy, blurry, deformed"
    },
    {
        "name": "game-mario",
        "prompt": "Super Mario style {prompt} . vibrant, cute, cartoony, fantasy, playful, reminiscent of Super Mario series",
        "negative_prompt": "realistic, modern, horror, dystopian, violent"
    },
    {
        "name": "game-minecraft",
        "prompt": "Minecraft style {prompt} . blocky, pixelated, vibrant colors, recognizable characters and objects, game assets",
        "negative_prompt": "smooth, realistic, detailed, photorealistic, noise, blurry, deformed"
    },
    {
        "name": "game-pokemon",
        "prompt": "Pokémon style {prompt} . vibrant, cute, anime, fantasy, reminiscent of Pokémon series",
        "negative_prompt": "realistic, modern, horror, dystopian, violent"
    },
    {
        "name": "game-retro arcade",
        "prompt": "retro arcade style {prompt} . 8-bit, pixelated, vibrant, classic video game, old school gaming, reminiscent of 80s and 90s arcade games",
        "negative_prompt": "modern, ultra-high resolution, photorealistic, 3D"
    },
    {
        "name": "game-retro game",
        "prompt": "retro game art {prompt} . 16-bit, vibrant colors, pixelated, nostalgic, charming, fun",
        "negative_prompt": "realistic, photorealistic, 35mm film, deformed, glitch, low contrast, noisy"
    },
    {
        "name": "game-rpg fantasy game",
        "prompt": "role-playing game (RPG) style fantasy {prompt} . detailed, vibrant, immersive, reminiscent of high fantasy RPG games",
        "negative_prompt": "sci-fi, modern, urban, futuristic, low detailed"
    },
    {
        "name": "game-strategy game",
        "prompt": "strategy game style {prompt} . overhead view, detailed map, units, reminiscent of real-time strategy video games",
        "negative_prompt": "first-person view, modern, photorealistic"
    },
    {
        "name": "game-streetfighter",
        "prompt": "Street Fighter style {prompt} . vibrant, dynamic, arcade, 2D fighting game, highly detailed, reminiscent of Street Fighter series",
        "negative_prompt": "3D, realistic, modern, photorealistic, turn-based strategy"
    },
    {
        "name": "game-zelda",
        "prompt": "Legend of Zelda style {prompt} . vibrant, fantasy, detailed, epic, heroic, reminiscent of The Legend of Zelda series",
        "negative_prompt": "sci-fi, modern, realistic, horror"
    },
    {
        "name": "misc-architectural",
        "prompt": "architectural style {prompt} . clean lines, geometric shapes, minimalist, modern, architectural drawing, highly detailed",
        "negative_prompt": "curved lines, ornate, baroque, abstract, grunge"
    },
    {
        "name": "misc-disco",
        "prompt": "disco-themed {prompt} . vibrant, groovy, retro 70s style, shiny disco balls, neon lights, dance floor, highly detailed",
        "negative_prompt": "minimalist, rustic, monochrome, contemporary, simplistic"
    },
    {
        "name": "misc-dreamscape",
        "prompt": "dreamscape {prompt} . surreal, ethereal, dreamy, mysterious, fantasy, highly detailed",
        "negative_prompt": "realistic, concrete, ordinary, mundane"
    },
    {
        "name": "misc-dystopian",
        "prompt": "dystopian style {prompt} . bleak, post-apocalyptic, somber, dramatic, highly detailed",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, cheerful, optimistic, vibrant, colorful"
    },
    {
        "name": "misc-fairy tale",
        "prompt": "fairy tale {prompt} . magical, fantastical, enchanting, storybook style, highly detailed",
        "negative_prompt": "realistic, modern, ordinary, mundane"
    },
    {
        "name": "misc-gothic",
        "prompt": "gothic style {prompt} . dark, mysterious, haunting, dramatic, ornate, detailed",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, cheerful, optimistic"
    },
    {
        "name": "misc-grunge",
        "prompt": "grunge style {prompt} . textured, distressed, vintage, edgy, punk rock vibe, dirty, noisy",
        "negative_prompt": "smooth, clean, minimalist, sleek, modern, photorealistic"
    },
    {
        "name": "misc-horror",
        "prompt": "horror-themed {prompt} . eerie, unsettling, dark, spooky, suspenseful, grim, highly detailed",
        "negative_prompt": "cheerful, bright, vibrant, light-hearted, cute"
    },
    {
        "name": "misc-kawaii",
        "prompt": "kawaii style {prompt} . cute, adorable, brightly colored, cheerful, anime influence, highly detailed",
        "negative_prompt": "dark, scary, realistic, monochrome, abstract"
    },
    {
        "name": "misc-lovecraftian",
        "prompt": "lovecraftian horror {prompt} . eldritch, cosmic horror, unknown, mysterious, surreal, highly detailed",
        "negative_prompt": "light-hearted, mundane, familiar, simplistic, realistic"
    },
    {
        "name": "misc-macabre",
        "prompt": "macabre style {prompt} . dark, gothic, grim, haunting, highly detailed",
        "negative_prompt": "bright, cheerful, light-hearted, cartoonish, cute"
    },
    {
        "name": "misc-manga",
        "prompt": "manga style {prompt} . vibrant, high-energy, detailed, iconic, Japanese comic style",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, Western comic style"
    },
    {
        "name": "misc-metropolis",
        "prompt": "metropolis-themed {prompt} . urban, cityscape, skyscrapers, modern, futuristic, highly detailed",
        "negative_prompt": "rural, natural, rustic, historical, simple"
    },
    {
        "name": "misc-minimalist",
        "prompt": "minimalist style {prompt} . simple, clean, uncluttered, modern, elegant",
        "negative_prompt": "ornate, complicated, highly detailed, cluttered, disordered, messy, noisy"
    },
    {
        "name": "misc-monochrome",
        "prompt": "monochrome {prompt} . black and white, contrast, tone, texture, detailed",
        "negative_prompt": "colorful, vibrant, noisy, blurry, deformed"
    },
    {
        "name": "misc-nautical",
        "prompt": "nautical-themed {prompt} . sea, ocean, ships, maritime, beach, marine life, highly detailed",
        "negative_prompt": "landlocked, desert, mountains, urban, rustic"
    },
    {
        "name": "misc-space",
        "prompt": "space-themed {prompt} . cosmic, celestial, stars, galaxies, nebulas, planets, science fiction, highly detailed",
        "negative_prompt": "earthly, mundane, ground-based, realism"
    },
    {
        "name": "misc-stained glass",
        "prompt": "stained glass style {prompt} . vibrant, beautiful, translucent, intricate, detailed",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic"
    },
    {
        "name": "misc-techwear fashion",
        "prompt": "techwear fashion {prompt} . futuristic, cyberpunk, urban, tactical, sleek, dark, highly detailed",
        "negative_prompt": "vintage, rural, colorful, low contrast, realism, sketch, watercolor"
    },
    {
        "name": "misc-tribal",
        "prompt": "tribal style {prompt} . indigenous, ethnic, traditional patterns, bold, natural colors, highly detailed",
        "negative_prompt": "modern, futuristic, minimalist, pastel"
    },
    {
        "name": "misc-zentangle",
        "prompt": "zentangle {prompt} . intricate, abstract, monochrome, patterns, meditative, highly detailed",
        "negative_prompt": "colorful, representative, simplistic, large fields of color"
    },
    {
        "name": "papercraft-collage",
        "prompt": "collage style {prompt} . mixed media, layered, textural, detailed, artistic",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic"
    },
    {
        "name": "papercraft-flat papercut",
        "prompt": "flat papercut style {prompt} . silhouette, clean cuts, paper, sharp edges, minimalist, color block",
        "negative_prompt": "3D, high detail, noise, grainy, blurry, painting, drawing, photo, disfigured"
    },
    {
        "name": "papercraft-kirigami",
        "prompt": "kirigami representation of {prompt} . 3D, paper folding, paper cutting, Japanese, intricate, symmetrical, precision, clean lines",
        "negative_prompt": "painting, drawing, 2D, noisy, blurry, deformed"
    },
    {
        "name": "papercraft-paper mache",
        "prompt": "paper mache representation of {prompt} . 3D, sculptural, textured, handmade, vibrant, fun",
        "negative_prompt": "2D, flat, photo, sketch, digital art, deformed, noisy, blurry"
    },
    {
        "name": "papercraft-paper quilling",
        "prompt": "paper quilling art of {prompt} . intricate, delicate, curling, rolling, shaping, coiling, loops, 3D, dimensional, ornamental",
        "negative_prompt": "photo, painting, drawing, 2D, flat, deformed, noisy, blurry"
    },
    {
        "name": "papercraft-papercut collage",
        "prompt": "papercut collage of {prompt} . mixed media, textured paper, overlapping, asymmetrical, abstract, vibrant",
        "negative_prompt": "photo, 3D, realistic, drawing, painting, high detail, disfigured"
    },
    {
        "name": "papercraft-papercut shadow box",
        "prompt": "3D papercut shadow box of {prompt} . layered, dimensional, depth, silhouette, shadow, papercut, handmade, high contrast",
        "negative_prompt": "painting, drawing, photo, 2D, flat, high detail, blurry, noisy, disfigured"
    },
    {
        "name": "papercraft-stacked papercut",
        "prompt": "stacked papercut art of {prompt} . 3D, layered, dimensional, depth, precision cut, stacked layers, papercut, high contrast",
        "negative_prompt": "2D, flat, noisy, blurry, painting, drawing, photo, deformed"
    },
    {
        "name": "papercraft-thick layered papercut",
        "prompt": "thick layered papercut art of {prompt} . deep 3D, volumetric, dimensional, depth, thick paper, high stack, heavy texture, tangible layers",
        "negative_prompt": "2D, flat, thin paper, low stack, smooth texture, painting, drawing, photo, deformed"
    },
    {
        "name": "photo-alien",
        "prompt": "alien-themed {prompt} . extraterrestrial, cosmic, otherworldly, mysterious, sci-fi, highly detailed",
        "negative_prompt": "earthly, mundane, common, realistic, simple"
    },
    {
        "name": "photo-film noir",
        "prompt": "film noir style {prompt} . monochrome, high contrast, dramatic shadows, 1940s style, mysterious, cinematic",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, realism, photorealistic, vibrant, colorful"
    },
    {
        "name": "photo-glamour",
        "prompt": "glamorous photo {prompt} . high fashion, luxurious, extravagant, stylish, sensual, opulent, elegance, stunning beauty, professional, high contrast, detailed",
        "negative_prompt": "ugly, deformed, noisy, blurry, distorted, grainy, sketch, low contrast, dull, plain, modest"
    },
    {
        "name": "photo-hdr",
        "prompt": "HDR photo of {prompt} . High dynamic range, vivid, rich details, clear shadows and highlights, realistic, intense, enhanced contrast, highly detailed",
        "negative_prompt": "flat, low contrast, oversaturated, underexposed, overexposed, blurred, noisy"
    },
    {
        "name": "photo-iphone photographic",
        "prompt": "iphone photo {prompt} . large depth of field, deep depth of field, highly detailed",
        "negative_prompt": "drawing, painting, crayon, sketch, graphite, impressionist, noisy, blurry, soft, deformed, ugly, shallow depth of field, bokeh"
    },
    {
        "name": "photo-long exposure",
        "prompt": "long exposure photo of {prompt} . Blurred motion, streaks of light, surreal, dreamy, ghosting effect, highly detailed",
        "negative_prompt": "static, noisy, deformed, shaky, abrupt, flat, low contrast"
    },
    {
        "name": "photo-neon noir",
        "prompt": "neon noir {prompt} . cyberpunk, dark, rainy streets, neon signs, high contrast, low light, vibrant, highly detailed",
        "negative_prompt": "bright, sunny, daytime, low contrast, black and white, sketch, watercolor"
    },
    {
        "name": "photo-silhouette",
        "prompt": "silhouette style {prompt} . high contrast, minimalistic, black and white, stark, dramatic",
        "negative_prompt": "ugly, deformed, noisy, blurry, low contrast, color, realism, photorealistic"
    },
    {
        "name": "photo-tilt-shift",
        "prompt": "tilt-shift photo of {prompt} . selective focus, miniature effect, blurred background, highly detailed, vibrant, perspective control",
        "negative_prompt": "blurry, noisy, deformed, flat, low contrast, unrealistic, oversaturated, underexposed"
    }
]
FastSDXL/Styler.py
Artiprocher/FastSDXL
import sys, os
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
import gradio as gr
from diffusers import DiffusionPipeline
import torch
from FastSDXL.BlockUNet import BlockUNet
from FastSDXL.Styler import styles
from FastSDXL.OLSS import OLSSScheduler


pipe = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16, use_safetensors=True, variant="fp16")
block_unet = BlockUNet().half().to("cuda")
block_unet.from_diffusers(state_dict=pipe.unet.state_dict())
pipe.unet = block_unet
pipe.scheduler = OLSSScheduler.load("models/olss_scheduler.bin")
pipe.enable_model_cpu_offload()


def generate_image(prompt, negative_prompt, height, width, style_name="Default (Slightly Cinematic)", denoising_steps=30):
    height = (height + 63) // 64 * 64
    width = (width + 63) // 64 * 64
    for style in styles:
        if style["name"] == style_name:
            prompt = style["prompt"].replace("{prompt}", prompt)
            negative_prompt = style["negative_prompt"] + negative_prompt
            break
    print("Prompt:", prompt)
    print("Negative prompt:", negative_prompt)
    image = pipe(prompt=prompt, height=height, width=width, num_inference_steps=denoising_steps).images[0]
    return image

with gr.Blocks() as demo:
    with gr.Row():
        with gr.Column():
            prompt = gr.Textbox(label="Prompt")
            negative_prompt = gr.Textbox(label="Negative prompt")
            height = gr.Slider(label="Height", minimum=512, maximum=2048, value=1024, step=64)
            width = gr.Slider(label="Width", minimum=512, maximum=2048, value=1024, step=64)
            button = gr.Button(label="Generate")
        with gr.Column():
            image = gr.Image(label="Generated image")
    button.click(fn=generate_image, inputs=[prompt, negative_prompt, height, width], outputs=[image])

demo.queue()
demo.launch()

launch_with_olss.py
Artiprocher/FastSDXL
import sys, os
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
import gradio as gr
from diffusers import DiffusionPipeline
import torch
from FastSDXL.BlockUNet import BlockUNet
from FastSDXL.Styler import styles


pipe = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16, use_safetensors=True, variant="fp16")
block_unet = BlockUNet().half().to("cuda")
block_unet.from_diffusers(state_dict=pipe.unet.state_dict())
pipe.unet = block_unet
pipe.enable_model_cpu_offload()


def generate_image(prompt, negative_prompt, style_name, height, width, denoising_steps):
    height = (height + 63) // 64 * 64
    width = (width + 63) // 64 * 64
    for style in styles:
        if style["name"] == style_name:
            prompt = style["prompt"].replace("{prompt}", prompt)
            negative_prompt = style["negative_prompt"] + negative_prompt
            break
    print("Prompt:", prompt)
    print("Negative prompt:", negative_prompt)
    image = pipe(prompt=prompt, height=height, width=width, num_inference_steps=denoising_steps).images[0]
    return image

with gr.Blocks() as demo:
    with gr.Row():
        with gr.Column():
            prompt = gr.Textbox(label="Prompt")
            negative_prompt = gr.Textbox(label="Negative prompt")
            style = gr.Dropdown(label="Style", choices=["None"] + [style["name"] for style in styles], value="None")
            height = gr.Slider(label="Height", minimum=512, maximum=2048, value=1024, step=64)
            width = gr.Slider(label="Width", minimum=512, maximum=2048, value=1024, step=64)
            denoising_steps = gr.Slider(label="Denoising steps", minimum=10, maximum=100, value=30, step=1)
            button = gr.Button(label="Generate")
        with gr.Column():
            image = gr.Image(label="Generated image")
    button.click(fn=generate_image, inputs=[prompt, negative_prompt, style, height, width, denoising_steps], outputs=[image])

demo.queue()
demo.launch()

launch_without_olss.py
Artiprocher/FastSDXL
from diffusers import DiffusionPipeline
import torch
from FastSDXL.BlockUNet import BlockUNet
from FastSDXL.OLSS import SchedulerWrapper, OLSSScheduler
from diffusers import DDIMScheduler, DPMSolverMultistepScheduler


pipe = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16, use_safetensors=True, variant="fp16")
block_unet = BlockUNet().half()
block_unet.from_diffusers(state_dict=pipe.unet.state_dict())
pipe.unet = block_unet
pipe.enable_model_cpu_offload()


# Train
train_steps = 300
inference_steps = 30
pipe.scheduler = SchedulerWrapper(DDIMScheduler.from_config(pipe.scheduler.config))
pipe(
    prompt="cinematic still a dog. emotional, harmonious, vignette, highly detailed, high budget, bokeh, cinemascope, moody, epic, gorgeous, film grain, grainy",
    negative_prompt="anime, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured",
    height=1024, width=1024, num_inference_steps=train_steps
)
pipe(
    prompt="cinematic still a cat. emotional, harmonious, vignette, highly detailed, high budget, bokeh, cinemascope, moody, epic, gorgeous, film grain, grainy",
    negative_prompt="anime, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured",
    height=1024, width=1024, num_inference_steps=train_steps
)
pipe(
    prompt="cinematic still a woman. emotional, harmonious, vignette, highly detailed, high budget, bokeh, cinemascope, moody, epic, gorgeous, film grain, grainy",
    negative_prompt="anime, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured",
    height=1024, width=1024, num_inference_steps=train_steps
)
pipe(
    prompt="cinematic still a car. emotional, harmonious, vignette, highly detailed, high budget, bokeh, cinemascope, moody, epic, gorgeous, film grain, grainy",
    negative_prompt="anime, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured",
    height=1024, width=1024, num_inference_steps=train_steps
)
pipe.scheduler.prepare_olss(inference_steps)
pipe.scheduler.olss_scheduler.save("models/olss_scheduler.bin")


# Test
prompt = "cinematic still a forest in spring, birds. emotional, harmonious, vignette, highly detailed, high budget, bokeh, cinemascope, moody, epic, gorgeous, film grain, grainy"
negative_prompt = "anime, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured"

torch.manual_seed(0)
pipe.scheduler = DPMSolverMultistepScheduler.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0/scheduler")
image = pipe(prompt=prompt, negative_prompt=negative_prompt, height=1024, width=1024, num_inference_steps=inference_steps).images[0]
image.save(f"dpmsolver.png")

torch.manual_seed(0)
pipe.scheduler = OLSSScheduler.load("models/olss_scheduler.bin")
image = pipe(prompt=prompt, negative_prompt=negative_prompt, height=1024, width=1024, num_inference_steps=inference_steps).images[0]
image.save(f"olss.png")

torch.manual_seed(0)
pipe.scheduler = DDIMScheduler.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0/scheduler")
image = pipe(prompt=prompt, negative_prompt=negative_prompt, height=1024, width=1024, num_inference_steps=inference_steps).images[0]
image.save(f"ddim.png")

run_olss.py
Artiprocher/FastSDXL