<commit_before>from itertools import chain
from copy import copy
from .. import BaseULObject
from collections import defaultdict, Iterable
from itertools import product, groupby, izip, tee
from nineml.reference import resolve_reference, write_reference
from nineml import DocumentLevelObject
from nineml.xmlns import NINEML, E
from nineml.utils import expect_single
from nineml.user import DynamicsProperties
from nineml.annotations import annotate_xml, read_annotations
from nineml.exceptions import NineMLRuntimeError, NineMLMissingElementError
from ..port_connections import (
    AnalogPortConnection, EventPortConnection, BasePortConnection)
from nineml.abstraction import BaseALObject
from nineml.base import MemberContainerObject
from nineml.utils import ensure_valid_identifier, normalise_parameter_as_list
from nineml import units as un
from nineml.annotations import VALIDATE_DIMENSIONS
from nineml.abstraction import (
    Dynamics, Regime, AnalogReceivePort, AnalogReducePort, EventReceivePort,
    StateVariable, OnEvent, OnCondition, OutputEvent, StateAssignment,
    Trigger)
from nineml.abstraction.dynamics.transitions import Transition
from .port_exposures import (
    EventReceivePortExposure, EventSendPortExposure, AnalogReducePortExposure,
    AnalogReceivePortExposure, AnalogSendPortExposure, _BasePortExposure,
    _LocalReducePortConnections, _LocalAnalogPortConnection)
from .namespace import (
    _NamespaceAlias, _NamespaceRegime, _NamespaceStateVariable,
    _NamespaceConstant, _NamespaceParameter, _NamespaceProperty,
    _NamespaceOnCondition, append_namespace, split_namespace, make_regime_name,
    make_delay_trigger_name, split_multi_regime_name)


class MultiDynamicsProperties(DynamicsProperties):

    element_name = "MultiDynamics"
    defining_attributes = ('_name', '_sub_component_properties',
                           '_port_exposures', '_port_connections')

    def __init__(self, name, sub_components, port_connections,<commit_msg>cleaning up imports in multi.component <commit_after>from itertools import chain
from copy import copy
from .. import BaseULObject
from collections import defaultdict
from itertools import product, groupby, izip
from nineml.reference import resolve_reference, write_reference
from nineml import DocumentLevelObject
from nineml.xmlns import NINEML, E
from nineml.utils import expect_single
from nineml.user import DynamicsProperties
from nineml.annotations import annotate_xml, read_annotations
from nineml.exceptions import NineMLRuntimeError, NineMLMissingElementError
from ..port_connections import (
    AnalogPortConnection, EventPortConnection, BasePortConnection)
from nineml.abstraction import BaseALObject
from nineml.base import MemberContainerObject
from nineml.utils import ensure_valid_identifier, normalise_parameter_as_list
from nineml import units as un
from nineml.annotations import VALIDATE_DIMENSIONS
from nineml.abstraction import (
    Dynamics, Regime, AnalogReceivePort, AnalogReducePort, EventReceivePort,
    StateVariable, OnEvent, OnCondition, OutputEvent, StateAssignment,
    Trigger)
from .port_exposures import (
    EventReceivePortExposure, EventSendPortExposure, AnalogReducePortExposure,
    AnalogReceivePortExposure, AnalogSendPortExposure, _BasePortExposure,
    _LocalReducePortConnections, _LocalAnalogPortConnection)
from .namespace import (
    _NamespaceAlias, _NamespaceRegime, _NamespaceStateVariable,
    _NamespaceConstant, _NamespaceParameter, _NamespaceProperty,
    _NamespaceOnCondition, append_namespace, split_namespace, make_regime_name,
    make_delay_trigger_name, split_multi_regime_name)


class MultiDynamicsProperties(DynamicsProperties):

    element_name = "MultiDynamics"
    defining_attributes = ('_name', '_sub_component_properties',
                           '_port_exposures', '_port_connections')

    def __init__(self, name, sub_components, port_connections,
{'fraction_non_alphanumeric': 0.04754601226993865, 'fraction_numerical': 0.0, 'mean_word_length': 6.702755905511811, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 4}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5977312', 'n_tokens_mistral': 1090, 'n_tokens_neox': 1071, 'n_words': 282}