@abc.abstractmethod<EOL><INDENT>def __init__(self, cipher_suites=None):<DEDENT>
self._custom_suites = []<EOL>if cipher_suites:<EOL><INDENT>for cipher_suite in cipher_suites:<EOL><INDENT>if cipher_suite in self.openssl_cipher_suite_map.keys():<EOL><INDENT>suite = self.openssl_cipher_suite_map.get(cipher_suite)<EOL>if suite:<EOL><INDENT>self._custom_suites.append(suite)<EOL><DEDENT><DEDENT>elif cipher_suite in self.openssl_cipher_suite_map.values():<EOL><INDENT>if cipher_suite:<EOL><INDENT>self._custom_suites.append(cipher_suite)<EOL><DEDENT><DEDENT><DEDENT>self._custom_suites = list(set(self._custom_suites))<EOL><DEDENT>suites = []<EOL>if self._custom_suites:<EOL><INDENT>for suite in self._custom_suites:<EOL><INDENT>if suite in self._default_cipher_suites:<EOL><INDENT>suites.append(suite)<EOL><DEDENT><DEDENT><DEDENT>else:<EOL><INDENT>suites = self._default_cipher_suites<EOL><DEDENT>self._cipher_suites = '<STR_LIT::>'.join(suites)<EOL>if self._cipher_suites == '<STR_LIT>':<EOL><INDENT>self._cipher_suites = '<STR_LIT::>'.join(self._default_cipher_suites)<EOL><DEDENT>
Create an AuthenticationSuite object.

Args:
    cipher_suites (list): A list of strings representing the names of
        cipher suites to use. Overrides the default set of cipher
        suites. Optional, defaults to None.