| 65 | return self.nin_shortcut(x) + h |
| 66 | |
| 67 | class Mid: |
| 68 | def __init__(self, block_in): |
| 69 | self.block_1 = ResnetBlock(block_in, block_in) |
| 70 | self.attn_1 = AttnBlock(block_in) |
| 71 | self.block_2 = ResnetBlock(block_in, block_in) |
| 72 | |
| 73 | def __call__(self, x): |
| 74 | return x.sequential([self.block_1, self.attn_1, self.block_2]) |
| 75 | |
| 76 | class Decoder: |
| 77 | def __init__(self): |