magic2 = setmetatable( {}, {
  __index = function( t, k )
    for idx, side in ipairs({ "left", "right", "top", "bottom", "back", "front" }) do
      if peripheral.isPresent( side ) then
        if peripheral.getType( side ) == k then
          return setmetatable( {}, {
            __index = function( t2, k2 )
              for idx2, method in ipairs( peripheral.getMethods( side ) ) do
                if method == k2 then
                  return function( ... )
                    return peripheral.call( side, method, ... )
                  end
                end
              end
              return nil
            end
          } )
        end
      end
    end
    return nil
  end
} )

magic2.monitor.write("Hello from Cobi's wrapper")
