
from typing import Collection, Mapping, Union

import ipaddress

SupportedTypes = Union[str, int, float, bool, ipaddress.IPv4Interface, ipaddress.IPv6Interface, dict, list, None]

# Convenience types
ResultDict = dict[str, SupportedTypes]  # A result in dict form
ResultsDict = list[ResultDict]  # A list of results

ValueParam = Mapping[str, SupportedTypes]  # A parameter suitable for passing db values
WhereParam = Mapping[str, SupportedTypes]  # A parameter suitable for WHERE
ParamDict = dict[str, SupportedTypes]  # A concrete dict for values
OrderParam = Collection[str]  # A parameter suitable for ORDER BY


class VDBError(Exception):
    pass


from typing import Collection, Mapping, Union

import ipaddress

SupportedTypes = Union[str, int, float, bool, ipaddress.IPv4Interface, ipaddress.IPv6Interface,
                       ipaddress.IPv4Network, ipaddress.IPv6Network, dict, list, None]

# Convenience types
ResultDict = dict[str, SupportedTypes]  # A result in dict form
ResultsDict = list[ResultDict]  # A list of results

ValueParam = Mapping[str, SupportedTypes]  # A parameter suitable for passing db values
WhereParam = Mapping[str, SupportedTypes]  # A parameter suitable for WHERE
ParamDict = dict[str, SupportedTypes]  # A concrete dict for values
OrderParam = Collection[str]  # A parameter suitable for ORDER BY


class VDBError(Exception):
    pass

Add ipaddress.IPv[46]Network to the supported types
Add ipaddress.IPv[46]Network to the supported types

  
  from typing import Collection, Mapping, Union
  
  import ipaddress
  
- SupportedTypes = Union[str, int, float, bool, ipaddress.IPv4Interface, ipaddress.IPv6Interface, dict, list, None]
+ SupportedTypes = Union[str, int, float, bool, ipaddress.IPv4Interface, ipaddress.IPv6Interface,
+                        ipaddress.IPv4Network, ipaddress.IPv6Network, dict, list, None]
  
  # Convenience types
  ResultDict = dict[str, SupportedTypes]  # A result in dict form
  ResultsDict = list[ResultDict]  # A list of results
  
  ValueParam = Mapping[str, SupportedTypes]  # A parameter suitable for passing db values
  WhereParam = Mapping[str, SupportedTypes]  # A parameter suitable for WHERE
  ParamDict = dict[str, SupportedTypes]  # A concrete dict for values
  OrderParam = Collection[str]  # A parameter suitable for ORDER BY
  
  
  class VDBError(Exception):
      pass
  
Add ipaddress.IPv[46]Network to the supported types
## Code Before:

from typing import Collection, Mapping, Union

import ipaddress

SupportedTypes = Union[str, int, float, bool, ipaddress.IPv4Interface, ipaddress.IPv6Interface, dict, list, None]

# Convenience types
ResultDict = dict[str, SupportedTypes]  # A result in dict form
ResultsDict = list[ResultDict]  # A list of results

ValueParam = Mapping[str, SupportedTypes]  # A parameter suitable for passing db values
WhereParam = Mapping[str, SupportedTypes]  # A parameter suitable for WHERE
ParamDict = dict[str, SupportedTypes]  # A concrete dict for values
OrderParam = Collection[str]  # A parameter suitable for ORDER BY


class VDBError(Exception):
    pass

## Instruction:
Add ipaddress.IPv[46]Network to the supported types
## Code After:

from typing import Collection, Mapping, Union

import ipaddress

SupportedTypes = Union[str, int, float, bool, ipaddress.IPv4Interface, ipaddress.IPv6Interface,
                       ipaddress.IPv4Network, ipaddress.IPv6Network, dict, list, None]

# Convenience types
ResultDict = dict[str, SupportedTypes]  # A result in dict form
ResultsDict = list[ResultDict]  # A list of results

ValueParam = Mapping[str, SupportedTypes]  # A parameter suitable for passing db values
WhereParam = Mapping[str, SupportedTypes]  # A parameter suitable for WHERE
ParamDict = dict[str, SupportedTypes]  # A concrete dict for values
OrderParam = Collection[str]  # A parameter suitable for ORDER BY


class VDBError(Exception):
    pass
