code: def from_dict(cls, parm, pool = None):
          
  
          if pool is None:
              pool = Pool()
  
          pool.id = parm['id']
          pool.name = parm['name']
          pool.description = parm['description']
          pool.default_type = parm['default_type']
          pool.ipv4_default_prefix_length = parm['ipv4_default_prefix_length']
          pool.ipv6_default_prefix_length = parm['ipv6_default_prefix_length']
          for val in ('member_prefixes_v4', 'member_prefixes_v6',
                  'used_prefixes_v4', 'used_prefixes_v6', 'free_prefixes_v4',
                  'free_prefixes_v6', 'total_prefixes_v4', 'total_prefixes_v6',
                  'total_addresses_v4', 'total_addresses_v6', 'used_addresses_v4',
                  'used_addresses_v6', 'free_addresses_v4', 'free_addresses_v6'):
              if parm[val] is not None:
                  setattr(pool, val, int(parm[val]))
  
          pool.tags = {}
          for tag_name in parm['tags']:
              tag = Tag.from_dict({'name': tag_name })
              pool.tags[tag_name] = tag
  
          pool.avps = parm['avps']
  
          # store VRF object in pool.vrf
          if parm['vrf_id'] is not None:
              pool.vrf = VRF.get(parm['vrf_id'])
  
          return pool
docs: Create new Pool-object from dict.
  
              Suitable for creating objects from XML-RPC data.
              All available keys must exist.