def __new__()

in src/aws_encryption_sdk/key_providers/base.py [0:0]


    def __new__(cls, **kwargs):
        """Set key index and member set for all new instances here
        to avoid requiring child classes to call super init.
        """
        instance = super(MasterKeyProvider, cls).__new__(cls)
        config = kwargs.pop("config", None)
        if not isinstance(config, instance._config_class):  # pylint: disable=protected-access,W1116
            config = instance._config_class(**kwargs)  # pylint: disable=protected-access
        instance.config = config
        #: Index matching key IDs to existing MasterKey objects.
        instance._encrypt_key_index = {}  # pylint: disable=protected-access
        #: Set of all member entities of this Provider (both Master Keys and other Providers).
        instance._members = []  # pylint: disable=protected-access
        #: Index of matching key IDs to existing MasterKey objects ONLY for decrypt.
        instance._decrypt_key_index = {}  # pylint: disable=protected-access
        return instance