code: func (e *Engine) NetworkList(ctx context.Context, drivers []string) ([]*enginetypes.Network, error) {
  	networks := []*enginetypes.Network{}
  	filters := dockerfilters.NewArgs()
  	for _, driver := range drivers {
  		filters.Add("driver", driver)
  	}
  
  	ns, err := e.client.NetworkList(ctx, dockertypes.NetworkListOptions{Filters: filters})
  	if err != nil {
  		return networks, err
  	}
  
  	for _, n := range ns {
  		subnets := []string{}
  		for _, config := range n.IPAM.Config {
  			subnets = append(subnets, config.Subnet)
  		}
  		networks = append(networks, &enginetypes.Network{Name: n.Name, Subnets: subnets})
  	}
  	return networks, nil
  }
docs: // NetworkList show all networks