code: def __call__(self, x, down_sampling=False):
      h = x
      if down_sampling:
          h = nn.functional.max_pool2d(
              h, kernel_size=(2, 2), stride=(2, 2)
          )
      for conv in self.convs:
          h = conv(h)
          h = nn.functional.relu(h)
      return h, self.projection(h)
  
file_path: carefree-learn/cflearn/api/cv/third_party/hed.py
imports: import os
  import torch
  import numpy
  import torch.nn
  from ....parameters import OPT
label_desc: Use image node_id 2 for calling the DoubleConvBlock obj's underlying member method code with example usage: obj.__call__(x, down_sampling) and returns: h,  self