def _acquire(self, uuid_path):
for index in range(self._min_third_octet, self._max_third_octet + <NUM_LIT:1>):<EOL><INDENT>lease = self.create_lease_object_from_idx(index)<EOL>if self._lease_valid(lease):<EOL><INDENT>continue<EOL><DEDENT>self._take_lease(lease, uuid_path, safe=False)<EOL>return lease.to_ip_network()<EOL><DEDENT>raise LagoSubnetLeaseStoreFullException(self.get_allowed_range())<EOL>
Lease a free network for the given uuid path

Args:
    uuid_path (str): Path to the uuid file of a :class:`lago.Prefix`

Returns:
    netaddr.IPNetwork: Which represents the selected subnet

Raises:
    LagoSubnetLeaseException: If the store is full