<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def mgmt_nw_id(cls):
 """Returns id of the management network."""

        if cls._mgmt_nw_uuid is None:
            tenant_id = cls.l3_tenant_id()
            if not tenant_id:
                return
            net = bc.get_plugin().get_networks(
                bc.context.get_admin_context(),
                {'tenant_id': [tenant_id],
                 'name': [cfg.CONF.general.management_network]},
                ['id', 'subnets'])
            if len(net) == 1:
                num_subnets = len(net[0]['subnets'])
                if num_subnets == 0:
                    LOG.error('The management network has no subnet. '
                              'Please assign one.')
                    return
                elif num_subnets > 1:
                    LOG.info('The management network has %d subnets. The '
                             'first one will be used.', num_subnets)
                cls._mgmt_nw_uuid = net[0].get('id')
                cls._mgmt_subnet_uuid = net[0]['subnets'][0]
            elif len(net) > 1:
                # Management network must have a unique name.
                LOG.error('The management network for does not have '
                          'unique name. Please ensure that it is.')
            else:
                # Management network has not been created.
                LOG.error('There is no virtual management network. Please '
                          'create one.')
        return cls._mgmt_nw_uuid