code: def __init__(self, channels_in, channels_out):
      self.conv1 = nn.Conv2d(
          channels_in,
          channels_out,
          kernel_size=3,
          padding=1,
          bias=False,
      )
      self.conv2 = nn.Conv2d(
          channels_out,
          channels_out,
          kernel_size=3,
          padding=1,
          bias=False,
      )
  
      self.norm1 = BatchNorm(channels_out)
      self.norm2 = BatchNorm(channels_out)
  
file_path: tinygrad/examples/hlb_cifar10.py
imports: import random, time
  import numpy
  from typing import Optional
  from extra.datasets import fetch_cifar, cifar_mean, cifar_std
  from tinygrad import nn, dtypes, Tensor, Device, GlobalCounters, TinyJit
  from tinygrad.nn.state import get_state_dict, get_parameters
  from tinygrad.nn import optim
  from extra.lr_scheduler import OneCycleLR
  from tinygrad.helpers import Context, getenv
label_desc: Use image node_id 1 to create a new ConvGroup object  with example: obj = ConvGroup(channels_in, channels_out)