/* Generated code for Python source for module 'cryptography.hazmat.primitives.ciphers.modes'
 * created by Nuitka version 0.6.0
 *
 * This code is in part copyright 2018 Kay Hayen.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#include "nuitka/prelude.h"

#include "__helpers.h"

/* The _module_cryptography$hazmat$primitives$ciphers$modes is a Python object pointer of module type. */

/* Note: For full compatibility with CPython, every module variable access
 * needs to go through it except for cases where the module cannot possibly
 * have changed in the mean time.
 */

PyObject *module_cryptography$hazmat$primitives$ciphers$modes;
PyDictObject *moduledict_cryptography$hazmat$primitives$ciphers$modes;

/* The module constants used, if any. */
static PyObject *const_str_digest_fb140b39ebe884fa656bf93258c41911;
extern PyObject *const_str_plain_tag;
static PyObject *const_str_digest_f940c5503f4046e30aa00140e137e9cc;
extern PyObject *const_str_plain_metaclass;
static PyObject *const_str_digest_cd69e318ffbc825cdfdec262cc900a88;
extern PyObject *const_str_plain___name__;
extern PyObject *const_tuple_str_plain___class___tuple;
extern PyObject *const_str_angle_metaclass;
extern PyObject *const_str_plain_GCM;
static PyObject *const_tuple_str_plain__initialization_vector_tuple;
extern PyObject *const_str_plain___file__;
extern PyObject *const_str_plain_abc;
extern PyObject *const_str_plain_object;
extern PyObject *const_str_plain_nonce;
extern PyObject *const_str_plain_bytes;
extern PyObject *const_str_plain_ModeWithInitializationVector;
extern PyObject *const_str_plain_division;
extern PyObject *const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
static PyObject *const_str_digest_0ffe80b254e46829960417693b2982bc;
static PyObject *const_str_digest_7ed9df7c8177d7289752a5dc61130309;
extern PyObject *const_str_plain_None;
extern PyObject *const_tuple_str_plain_utils_tuple;
extern PyObject *const_str_plain_abstractmethod;
extern PyObject *const_str_plain__MAX_AAD_BYTES;
extern PyObject *const_int_pos_512;
static PyObject *const_str_plain__check_iv_length;
static PyObject *const_str_digest_8841c86c66f42811f396044407fdea00;
static PyObject *const_str_digest_1fb896656a556642058d3d0f2aef8429;
extern PyObject *const_str_plain_CFB;
static PyObject *const_str_digest_a0ffa16d6d1759a7dd0b89b28d4d2370;
extern PyObject *const_str_plain_algorithm;
static PyObject *const_int_pos_2305843009213693952;
static PyObject *const_tuple_str_plain_self_str_plain_nonce_tuple;
static PyObject *const_str_digest_c0051f1c84f03c63870fb6df14eab57a;
extern PyObject *const_str_plain_utils;
extern PyObject *const_int_pos_16;
extern PyObject *const_str_plain_initialization_vector;
extern PyObject *const_str_plain_absolute_import;
extern PyObject *const_str_plain___doc__;
extern PyObject *const_str_plain__tag;
static PyObject *const_str_digest_1e4e817262ac1657ad2803719e3d1d92;
static PyObject *const_str_digest_59ed1887c111f4de1576b64b74629e2f;
extern PyObject *const_str_plain___orig_bases__;
static PyObject *const_str_digest_97b95ca94ff448f2fdcf07d90894988a;
extern PyObject *const_str_plain_cryptography;
static PyObject *const_str_digest_5b8e8cd5cac009365b3640e73a17e51b;
extern PyObject *const_str_plain___qualname__;
static PyObject *const_tuple_str_plain__tweak_tuple;
static PyObject *const_str_digest_cb3a861bd2e574b09697bda6ccb42a1d;
extern PyObject *const_str_plain_ECB;
extern PyObject *const_str_digest_ff2be3c85f8e5df021c1914da824ecfd;
static PyObject *const_str_plain__initialization_vector;
extern PyObject *const_tuple_str_plain_self_str_plain_algorithm_tuple;
static PyObject *const_str_digest_294cd97bbac358075d4b7bb1ef71ed25;
static PyObject *const_str_plain__check_iv_and_key_length;
extern PyObject *const_str_plain_six;
extern PyObject *const_tuple_str_plain_self_tuple;
extern PyObject *const_str_plain_block_size;
static PyObject *const_str_digest_660e0d4b5fcaff641982725568eda7c4;
static PyObject *const_tuple_int_pos_256_int_pos_512_tuple;
extern PyObject *const_str_plain_tweak;
extern PyObject *const_int_pos_8;
extern PyObject *const_tuple_empty;
extern PyObject *const_tuple_str_plain__nonce_tuple;
extern PyObject *const_str_plain_CFB8;
extern PyObject *const_str_plain_name;
extern PyObject *const_str_plain_register_interface;
extern PyObject *const_str_plain__MAX_ENCRYPTED_BYTES;
static PyObject *const_str_digest_3fad997f68f5a17b4406de93bb15d6ae;
extern PyObject *const_str_plain_CTR;
static PyObject *const_str_digest_5020d9a5b89e034fd58f0961dca03421;
extern PyObject *const_str_plain___getitem__;
extern PyObject *const_str_plain_AES;
extern PyObject *const_str_plain_ModeWithNonce;
extern PyObject *const_str_plain_ModeWithTweak;
extern PyObject *const_str_plain__min_tag_length;
static PyObject *const_str_digest_ab85ad6c79a229d99310356b2fbdb0a5;
extern PyObject *const_str_plain__nonce;
extern PyObject *const_int_0;
static PyObject *const_str_digest_bb178a951985691561eabeee8701b224;
static PyObject *const_str_digest_8d88271f851b302545477c36f4b258ba;
extern PyObject *const_str_plain_ABCMeta;
static PyObject *const_str_digest_1c038025724e2955ffc6e208d42b3307;
static PyObject *const_str_digest_ccd57a9d7f210bf9a1ab488d981ae4a2;
extern PyObject *const_str_digest_75fd71b1edada749c2ef7ac810062295;
extern PyObject *const_str_plain_XTS;
static PyObject *const_tuple_6bd622b091616a1011697b4fa576725b_tuple;
static PyObject *const_str_digest_8ed5cda0f4d28df12a981196f62a1b42;
extern PyObject *const_int_pos_4;
static PyObject *const_str_digest_ca7e0f37eefb63f559dcf13aed7fe908;
static PyObject *const_str_digest_1e04256fecf0917c14256fcdcf70e725;
extern PyObject *const_str_plain_type;
static PyObject *const_str_digest_38fc79dfa6223032de52ab115724f2e4;
static PyObject *const_tuple_none_int_pos_16_tuple;
static PyObject *const_tuple_str_plain_self_str_plain_initialization_vector_tuple;
extern PyObject *const_str_plain___cached__;
extern PyObject *const_str_plain_print_function;
extern PyObject *const_str_plain___class__;
static PyObject *const_int_pos_68719476704;
static PyObject *const_str_digest_4fd4de26e457e1f3606cdd6918745cf8;
static PyObject *const_str_digest_eaaef4929e558f8f2d9150675f4b135d;
extern PyObject *const_tuple_type_object_tuple;
extern PyObject *const_str_plain___module__;
extern PyObject *const_str_plain_OFB;
static PyObject *const_str_digest_d177ba8da2b422eebcc9b589e37b1116;
static PyObject *const_tuple_str_plain_self_str_plain_tweak_tuple;
static PyObject *const_str_plain_Mode;
extern PyObject *const_int_pos_256;
extern PyObject *const_str_plain_add_metaclass;
static PyObject *const_str_digest_0ec97fd2b4ce8856215f2cc60777f7c3;
extern PyObject *const_str_plain_key_size;
static PyObject *const_str_digest_05dad013241a53e01fef61673f847b5f;
extern PyObject *const_str_plain___prepare__;
extern PyObject *const_str_plain___init__;
static PyObject *const_str_digest_eed5b8fd57efd6c0d3c87069fdb50b33;
extern PyObject *const_str_plain_abstractproperty;
extern PyObject *const_str_plain_self;
static PyObject *const_str_plain__check_aes_key_length;
extern PyObject *const_str_plain_CBC;
static PyObject *const_str_plain__tweak;
extern PyObject *const_str_digest_f37468dd5629ccacfbc304506e5ed113;
extern PyObject *const_str_plain_validate_for_algorithm;
extern PyObject *const_str_plain_format;
extern PyObject *const_str_plain_ModeWithAuthenticationTag;
static PyObject *const_str_digest_b8a4dfc5aca449b7019ec255a76dc967;
extern PyObject *const_str_plain_read_only_property;
static PyObject *const_str_plain_min_tag_length;
extern PyObject *const_tuple_str_plain__tag_tuple;
static PyObject *module_filename_obj;

static bool constants_created = false;

static void createModuleConstants( void )
{
    const_str_digest_fb140b39ebe884fa656bf93258c41911 = UNSTREAM_STRING( &constant_bin[ 503202 ], 30, 0 );
    const_str_digest_f940c5503f4046e30aa00140e137e9cc = UNSTREAM_STRING( &constant_bin[ 503232 ], 35, 0 );
    const_str_digest_cd69e318ffbc825cdfdec262cc900a88 = UNSTREAM_STRING( &constant_bin[ 503267 ], 61, 0 );
    const_tuple_str_plain__initialization_vector_tuple = PyTuple_New( 1 );
    const_str_plain__initialization_vector = UNSTREAM_STRING( &constant_bin[ 503328 ], 22, 1 );
    PyTuple_SET_ITEM( const_tuple_str_plain__initialization_vector_tuple, 0, const_str_plain__initialization_vector ); Py_INCREF( const_str_plain__initialization_vector );
    const_str_digest_0ffe80b254e46829960417693b2982bc = UNSTREAM_STRING( &constant_bin[ 503350 ], 12, 0 );
    const_str_digest_7ed9df7c8177d7289752a5dc61130309 = UNSTREAM_STRING( &constant_bin[ 503362 ], 25, 0 );
    const_str_plain__check_iv_length = UNSTREAM_STRING( &constant_bin[ 503387 ], 16, 1 );
    const_str_digest_8841c86c66f42811f396044407fdea00 = UNSTREAM_STRING( &constant_bin[ 503403 ], 64, 0 );
    const_str_digest_1fb896656a556642058d3d0f2aef8429 = UNSTREAM_STRING( &constant_bin[ 503467 ], 33, 0 );
    const_str_digest_a0ffa16d6d1759a7dd0b89b28d4d2370 = UNSTREAM_STRING( &constant_bin[ 503500 ], 19, 0 );
    const_int_pos_2305843009213693952 = PyLong_FromUnsignedLong( 2305843009213693952ul );
    const_tuple_str_plain_self_str_plain_nonce_tuple = PyTuple_New( 2 );
    PyTuple_SET_ITEM( const_tuple_str_plain_self_str_plain_nonce_tuple, 0, const_str_plain_self ); Py_INCREF( const_str_plain_self );
    PyTuple_SET_ITEM( const_tuple_str_plain_self_str_plain_nonce_tuple, 1, const_str_plain_nonce ); Py_INCREF( const_str_plain_nonce );
    const_str_digest_c0051f1c84f03c63870fb6df14eab57a = UNSTREAM_STRING( &constant_bin[ 503519 ], 26, 0 );
    const_str_digest_1e4e817262ac1657ad2803719e3d1d92 = UNSTREAM_STRING( &constant_bin[ 503545 ], 26, 0 );
    const_str_digest_59ed1887c111f4de1576b64b74629e2f = UNSTREAM_STRING( &constant_bin[ 503571 ], 27, 0 );
    const_str_digest_97b95ca94ff448f2fdcf07d90894988a = UNSTREAM_STRING( &constant_bin[ 503598 ], 53, 0 );
    const_str_digest_5b8e8cd5cac009365b3640e73a17e51b = UNSTREAM_STRING( &constant_bin[ 503651 ], 27, 0 );
    const_tuple_str_plain__tweak_tuple = PyTuple_New( 1 );
    const_str_plain__tweak = UNSTREAM_STRING( &constant_bin[ 503678 ], 6, 1 );
    PyTuple_SET_ITEM( const_tuple_str_plain__tweak_tuple, 0, const_str_plain__tweak ); Py_INCREF( const_str_plain__tweak );
    const_str_digest_cb3a861bd2e574b09697bda6ccb42a1d = UNSTREAM_STRING( &constant_bin[ 503684 ], 9, 0 );
    const_str_digest_294cd97bbac358075d4b7bb1ef71ed25 = UNSTREAM_STRING( &constant_bin[ 503693 ], 80, 0 );
    const_str_plain__check_iv_and_key_length = UNSTREAM_STRING( &constant_bin[ 503773 ], 24, 1 );
    const_str_digest_660e0d4b5fcaff641982725568eda7c4 = UNSTREAM_STRING( &constant_bin[ 503797 ], 64, 0 );
    const_tuple_int_pos_256_int_pos_512_tuple = PyTuple_New( 2 );
    PyTuple_SET_ITEM( const_tuple_int_pos_256_int_pos_512_tuple, 0, const_int_pos_256 ); Py_INCREF( const_int_pos_256 );
    PyTuple_SET_ITEM( const_tuple_int_pos_256_int_pos_512_tuple, 1, const_int_pos_512 ); Py_INCREF( const_int_pos_512 );
    const_str_digest_3fad997f68f5a17b4406de93bb15d6ae = UNSTREAM_STRING( &constant_bin[ 503861 ], 29, 0 );
    const_str_digest_5020d9a5b89e034fd58f0961dca03421 = UNSTREAM_STRING( &constant_bin[ 503890 ], 113, 0 );
    const_str_digest_ab85ad6c79a229d99310356b2fbdb0a5 = UNSTREAM_STRING( &constant_bin[ 504003 ], 80, 0 );
    const_str_digest_bb178a951985691561eabeee8701b224 = UNSTREAM_STRING( &constant_bin[ 504083 ], 33, 0 );
    const_str_digest_8d88271f851b302545477c36f4b258ba = UNSTREAM_STRING( &constant_bin[ 504116 ], 26, 0 );
    const_str_digest_1c038025724e2955ffc6e208d42b3307 = UNSTREAM_STRING( &constant_bin[ 504142 ], 19, 0 );
    const_str_digest_ccd57a9d7f210bf9a1ab488d981ae4a2 = UNSTREAM_STRING( &constant_bin[ 504161 ], 50, 0 );
    const_tuple_6bd622b091616a1011697b4fa576725b_tuple = PyTuple_New( 4 );
    PyTuple_SET_ITEM( const_tuple_6bd622b091616a1011697b4fa576725b_tuple, 0, const_str_plain_self ); Py_INCREF( const_str_plain_self );
    PyTuple_SET_ITEM( const_tuple_6bd622b091616a1011697b4fa576725b_tuple, 1, const_str_plain_initialization_vector ); Py_INCREF( const_str_plain_initialization_vector );
    PyTuple_SET_ITEM( const_tuple_6bd622b091616a1011697b4fa576725b_tuple, 2, const_str_plain_tag ); Py_INCREF( const_str_plain_tag );
    const_str_plain_min_tag_length = UNSTREAM_STRING( &constant_bin[ 503651 ], 14, 1 );
    PyTuple_SET_ITEM( const_tuple_6bd622b091616a1011697b4fa576725b_tuple, 3, const_str_plain_min_tag_length ); Py_INCREF( const_str_plain_min_tag_length );
    const_str_digest_8ed5cda0f4d28df12a981196f62a1b42 = UNSTREAM_STRING( &constant_bin[ 504211 ], 64, 0 );
    const_str_digest_ca7e0f37eefb63f559dcf13aed7fe908 = UNSTREAM_STRING( &constant_bin[ 504275 ], 92, 0 );
    const_str_digest_1e04256fecf0917c14256fcdcf70e725 = UNSTREAM_STRING( &constant_bin[ 504367 ], 19, 0 );
    const_str_digest_38fc79dfa6223032de52ab115724f2e4 = UNSTREAM_STRING( &constant_bin[ 504386 ], 80, 0 );
    const_tuple_none_int_pos_16_tuple = PyTuple_New( 2 );
    PyTuple_SET_ITEM( const_tuple_none_int_pos_16_tuple, 0, Py_None ); Py_INCREF( Py_None );
    PyTuple_SET_ITEM( const_tuple_none_int_pos_16_tuple, 1, const_int_pos_16 ); Py_INCREF( const_int_pos_16 );
    const_tuple_str_plain_self_str_plain_initialization_vector_tuple = PyTuple_New( 2 );
    PyTuple_SET_ITEM( const_tuple_str_plain_self_str_plain_initialization_vector_tuple, 0, const_str_plain_self ); Py_INCREF( const_str_plain_self );
    PyTuple_SET_ITEM( const_tuple_str_plain_self_str_plain_initialization_vector_tuple, 1, const_str_plain_initialization_vector ); Py_INCREF( const_str_plain_initialization_vector );
    const_int_pos_68719476704 = PyLong_FromUnsignedLong( 68719476704ul );
    const_str_digest_4fd4de26e457e1f3606cdd6918745cf8 = UNSTREAM_STRING( &constant_bin[ 504466 ], 13, 0 );
    const_str_digest_eaaef4929e558f8f2d9150675f4b135d = UNSTREAM_STRING( &constant_bin[ 504479 ], 45, 0 );
    const_str_digest_d177ba8da2b422eebcc9b589e37b1116 = UNSTREAM_STRING( &constant_bin[ 500667 ], 12, 0 );
    const_tuple_str_plain_self_str_plain_tweak_tuple = PyTuple_New( 2 );
    PyTuple_SET_ITEM( const_tuple_str_plain_self_str_plain_tweak_tuple, 0, const_str_plain_self ); Py_INCREF( const_str_plain_self );
    PyTuple_SET_ITEM( const_tuple_str_plain_self_str_plain_tweak_tuple, 1, const_str_plain_tweak ); Py_INCREF( const_str_plain_tweak );
    const_str_plain_Mode = UNSTREAM_STRING( &constant_bin[ 295956 ], 4, 1 );
    const_str_digest_0ec97fd2b4ce8856215f2cc60777f7c3 = UNSTREAM_STRING( &constant_bin[ 504524 ], 12, 0 );
    const_str_digest_05dad013241a53e01fef61673f847b5f = UNSTREAM_STRING( &constant_bin[ 504536 ], 12, 0 );
    const_str_digest_eed5b8fd57efd6c0d3c87069fdb50b33 = UNSTREAM_STRING( &constant_bin[ 504548 ], 12, 0 );
    const_str_plain__check_aes_key_length = UNSTREAM_STRING( &constant_bin[ 504560 ], 21, 1 );
    const_str_digest_b8a4dfc5aca449b7019ec255a76dc967 = UNSTREAM_STRING( &constant_bin[ 504581 ], 12, 0 );

    constants_created = true;
}

#ifndef __NUITKA_NO_ASSERT__
void checkModuleConstants_cryptography$hazmat$primitives$ciphers$modes( void )
{
    // The module may not have been used at all.
    if (constants_created == false) return;


}
#endif

// The module code objects.
static PyCodeObject *codeobj_0c8f33b4b5f7d4ab629e36d5741bba93;
static PyCodeObject *codeobj_02f24c209831da22d5ce569434f68731;
static PyCodeObject *codeobj_a2f3ffb099ee1757765dc8d6d5b64e75;
static PyCodeObject *codeobj_1a6147609d04fd0908f4be17a979cb0a;
static PyCodeObject *codeobj_a0d72cc4e56b2259779d5d13191432d5;
static PyCodeObject *codeobj_35e9b31ac7b1dcdeb181ac01bdd2b7bb;
static PyCodeObject *codeobj_7ffef1106e2cd64bf494748379b6491e;
static PyCodeObject *codeobj_c189fe3fd50b45efc4da8c1ad9837e2f;
static PyCodeObject *codeobj_3c0c887d1845d635711db4d35239eda0;
static PyCodeObject *codeobj_d8b749131ba245bb75a4feb1f8dc23c6;
static PyCodeObject *codeobj_5e4299d2b0e8338f538a27154b741c2c;
static PyCodeObject *codeobj_0f96b581d5fedaeced00b1453fde4ad3;
static PyCodeObject *codeobj_f9d064097d084f21e7a65220f71dfa67;
static PyCodeObject *codeobj_cbeede5d976db77af134a73024fb34ae;
static PyCodeObject *codeobj_5e2fe58c19be76b50b1ded20f1545cc9;
static PyCodeObject *codeobj_b26dafd8a2897c3cca199b3fee1e327b;
static PyCodeObject *codeobj_734d8e0559c9dfa0305b0c7b71837f34;
static PyCodeObject *codeobj_e419f8058e7962b663065f5a866cd5a2;
static PyCodeObject *codeobj_a2b6e4e99d683e920dc3bb7eb91f4ebf;
static PyCodeObject *codeobj_0731f5547361a477685b9e7b774f6c25;
static PyCodeObject *codeobj_3de97a46e9da7f1fff06fe10131a8190;
static PyCodeObject *codeobj_a915826132a68f8096982f5eb7ea6f52;
static PyCodeObject *codeobj_6fb7e9afba37b7a7d0e31a485a42a8d5;
static PyCodeObject *codeobj_196022c893ceab3f1f278bee9f84e658;
static PyCodeObject *codeobj_6b81c0cb23e62d92427c34ef484d2ed3;
static PyCodeObject *codeobj_6624b9906840c47ab551e3f2f2c7207e;
static PyCodeObject *codeobj_7d81fe8d42f41f7ecc0184f980ee7842;
static PyCodeObject *codeobj_171e6525193b4214d8e796cf4b7ed8a0;
static PyCodeObject *codeobj_5b35403c086263b26aba7434efe739e8;
static PyCodeObject *codeobj_a33e868d2b7e513821a0e1efac5b58bb;
static PyCodeObject *codeobj_1a3fb4b2aa97fbd34c0186d59f5fd1fb;
static PyCodeObject *codeobj_8c5bbe34a4a4b6698b40794fd6cba861;
static PyCodeObject *codeobj_c021f2b3f7c90cfdbc0d8001d49c788b;

static void createModuleCodeObjects(void)
{
    module_filename_obj = const_str_digest_ab85ad6c79a229d99310356b2fbdb0a5;
    codeobj_0c8f33b4b5f7d4ab629e36d5741bba93 = MAKE_CODEOBJ( module_filename_obj, const_str_digest_97b95ca94ff448f2fdcf07d90894988a, 1, const_tuple_empty, 0, 0, CO_NOFREE );
    codeobj_02f24c209831da22d5ce569434f68731 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_CBC, 87, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_a2f3ffb099ee1757765dc8d6d5b64e75 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_CFB, 148, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_1a6147609d04fd0908f4be17a979cb0a = MAKE_CODEOBJ( module_filename_obj, const_str_plain_CFB8, 163, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_a0d72cc4e56b2259779d5d13191432d5 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_CTR, 178, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_35e9b31ac7b1dcdeb181ac01bdd2b7bb = MAKE_CODEOBJ( module_filename_obj, const_str_plain_ECB, 125, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_7ffef1106e2cd64bf494748379b6491e = MAKE_CODEOBJ( module_filename_obj, const_str_plain_GCM, 200, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_c189fe3fd50b45efc4da8c1ad9837e2f = MAKE_CODEOBJ( module_filename_obj, const_str_plain_Mode, 15, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_3c0c887d1845d635711db4d35239eda0 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_ModeWithAuthenticationTag, 58, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_d8b749131ba245bb75a4feb1f8dc23c6 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_ModeWithInitializationVector, 31, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_5e4299d2b0e8338f538a27154b741c2c = MAKE_CODEOBJ( module_filename_obj, const_str_plain_ModeWithNonce, 49, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_0f96b581d5fedaeced00b1453fde4ad3 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_ModeWithTweak, 40, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_f9d064097d084f21e7a65220f71dfa67 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_OFB, 133, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_cbeede5d976db77af134a73024fb34ae = MAKE_CODEOBJ( module_filename_obj, const_str_plain_XTS, 102, const_tuple_str_plain___class___tuple, 0, 0, CO_NOFREE );
    codeobj_5e2fe58c19be76b50b1ded20f1545cc9 = MAKE_CODEOBJ( module_filename_obj, const_str_plain___init__, 90, const_tuple_str_plain_self_str_plain_initialization_vector_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_b26dafd8a2897c3cca199b3fee1e327b = MAKE_CODEOBJ( module_filename_obj, const_str_plain___init__, 105, const_tuple_str_plain_self_str_plain_tweak_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_734d8e0559c9dfa0305b0c7b71837f34 = MAKE_CODEOBJ( module_filename_obj, const_str_plain___init__, 136, const_tuple_str_plain_self_str_plain_initialization_vector_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_e419f8058e7962b663065f5a866cd5a2 = MAKE_CODEOBJ( module_filename_obj, const_str_plain___init__, 151, const_tuple_str_plain_self_str_plain_initialization_vector_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_a2b6e4e99d683e920dc3bb7eb91f4ebf = MAKE_CODEOBJ( module_filename_obj, const_str_plain___init__, 166, const_tuple_str_plain_self_str_plain_initialization_vector_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_0731f5547361a477685b9e7b774f6c25 = MAKE_CODEOBJ( module_filename_obj, const_str_plain___init__, 181, const_tuple_str_plain_self_str_plain_nonce_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_3de97a46e9da7f1fff06fe10131a8190 = MAKE_CODEOBJ( module_filename_obj, const_str_plain___init__, 205, const_tuple_6bd622b091616a1011697b4fa576725b_tuple, 4, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_a915826132a68f8096982f5eb7ea6f52 = MAKE_CODEOBJ( module_filename_obj, const_str_plain__check_aes_key_length, 66, const_tuple_str_plain_self_str_plain_algorithm_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_6fb7e9afba37b7a7d0e31a485a42a8d5 = MAKE_CODEOBJ( module_filename_obj, const_str_plain__check_iv_and_key_length, 80, const_tuple_str_plain_self_str_plain_algorithm_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_196022c893ceab3f1f278bee9f84e658 = MAKE_CODEOBJ( module_filename_obj, const_str_plain__check_iv_length, 73, const_tuple_str_plain_self_str_plain_algorithm_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_6b81c0cb23e62d92427c34ef484d2ed3 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_initialization_vector, 32, const_tuple_str_plain_self_tuple, 1, 0, CO_NOFREE );
    codeobj_6624b9906840c47ab551e3f2f2c7207e = MAKE_CODEOBJ( module_filename_obj, const_str_plain_name, 16, const_tuple_str_plain_self_tuple, 1, 0, CO_NOFREE );
    codeobj_7d81fe8d42f41f7ecc0184f980ee7842 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_nonce, 50, const_tuple_str_plain_self_tuple, 1, 0, CO_NOFREE );
    codeobj_171e6525193b4214d8e796cf4b7ed8a0 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_tag, 59, const_tuple_str_plain_self_tuple, 1, 0, CO_NOFREE );
    codeobj_5b35403c086263b26aba7434efe739e8 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_tweak, 41, const_tuple_str_plain_self_tuple, 1, 0, CO_NOFREE );
    codeobj_a33e868d2b7e513821a0e1efac5b58bb = MAKE_CODEOBJ( module_filename_obj, const_str_plain_validate_for_algorithm, 22, const_tuple_str_plain_self_str_plain_algorithm_tuple, 2, 0, CO_NOFREE );
    codeobj_1a3fb4b2aa97fbd34c0186d59f5fd1fb = MAKE_CODEOBJ( module_filename_obj, const_str_plain_validate_for_algorithm, 116, const_tuple_str_plain_self_str_plain_algorithm_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_8c5bbe34a4a4b6698b40794fd6cba861 = MAKE_CODEOBJ( module_filename_obj, const_str_plain_validate_for_algorithm, 189, const_tuple_str_plain_self_str_plain_algorithm_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
    codeobj_c021f2b3f7c90cfdbc0d8001d49c788b = MAKE_CODEOBJ( module_filename_obj, const_str_plain_validate_for_algorithm, 230, const_tuple_str_plain_self_str_plain_algorithm_tuple, 2, 0, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE );
}

// The module function declarations.
NUITKA_CROSS_MODULE PyObject *impl___internal__$$$function_1__mro_entries_conversion( PyObject **python_pars );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_10___init__(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_11___init__(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_12_validate_for_algorithm(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_13___init__(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_14___init__(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_15___init__(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_16___init__(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_17_validate_for_algorithm(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_18___init__( PyObject *defaults );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_19_validate_for_algorithm(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_1_name(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_2_validate_for_algorithm(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_3_initialization_vector(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_4_tweak(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_5_nonce(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_6_tag(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_7__check_aes_key_length(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_8__check_iv_length(  );


static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_9__check_iv_and_key_length(  );


// The module function definitions.
static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_1_name( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *tmp_return_value = NULL;

    // Actual function code.
    {
    // Tried code:
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_1_name );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }
    {
    goto function_return_exit;
    }
    // End of try:
    }
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_1_name );
    return NULL;

function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_2_validate_for_algorithm( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_algorithm = python_pars[ 1 ];
    PyObject *tmp_return_value = NULL;

    // Actual function code.
    {
    // Tried code:
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_2_validate_for_algorithm );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    goto function_return_exit;
    }
    // End of try:
    }
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_2_validate_for_algorithm );
    return NULL;

function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_3_initialization_vector( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *tmp_return_value = NULL;

    // Actual function code.
    {
    // Tried code:
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_3_initialization_vector );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }
    {
    goto function_return_exit;
    }
    // End of try:
    }
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_3_initialization_vector );
    return NULL;

function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_4_tweak( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *tmp_return_value = NULL;

    // Actual function code.
    {
    // Tried code:
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_4_tweak );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }
    {
    goto function_return_exit;
    }
    // End of try:
    }
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_4_tweak );
    return NULL;

function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_5_nonce( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *tmp_return_value = NULL;

    // Actual function code.
    {
    // Tried code:
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_5_nonce );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }
    {
    goto function_return_exit;
    }
    // End of try:
    }
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_5_nonce );
    return NULL;

function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_6_tag( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *tmp_return_value = NULL;

    // Actual function code.
    {
    // Tried code:
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_6_tag );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }
    {
    goto function_return_exit;
    }
    // End of try:
    }
    {
    CHECK_OBJECT( (PyObject *)par_self );
    Py_DECREF( par_self );
    par_self = NULL;

    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_6_tag );
    return NULL;

function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_7__check_aes_key_length( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_algorithm = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_a915826132a68f8096982f5eb7ea6f52;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    int tmp_res;
    static struct Nuitka_FrameObject *cache_frame_a915826132a68f8096982f5eb7ea6f52 = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_a915826132a68f8096982f5eb7ea6f52, codeobj_a915826132a68f8096982f5eb7ea6f52, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_a915826132a68f8096982f5eb7ea6f52 = cache_frame_a915826132a68f8096982f5eb7ea6f52;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_a915826132a68f8096982f5eb7ea6f52 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_a915826132a68f8096982f5eb7ea6f52 ) == 2 ); // Frame stack

    // Framed code:
    {
    nuitka_bool tmp_condition_result_1;
    int tmp_and_left_truth_1;
    nuitka_bool tmp_and_left_value_1;
    nuitka_bool tmp_and_right_value_1;
    PyObject *tmp_compexpr_left_1;
    PyObject *tmp_compexpr_right_1;
    PyObject *tmp_source_name_1;
    PyObject *tmp_compexpr_left_2;
    PyObject *tmp_compexpr_right_2;
    PyObject *tmp_source_name_2;
    CHECK_OBJECT( par_algorithm );
    tmp_source_name_1 = par_algorithm;
    tmp_compexpr_left_1 = LOOKUP_ATTRIBUTE( tmp_source_name_1, const_str_plain_key_size );
    if ( tmp_compexpr_left_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 67;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_compexpr_right_1 = const_int_pos_256;
    tmp_res = RICH_COMPARE_BOOL_GT( tmp_compexpr_left_1, tmp_compexpr_right_1 );
    Py_DECREF( tmp_compexpr_left_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 67;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_and_left_value_1 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    tmp_and_left_truth_1 = tmp_and_left_value_1 == NUITKA_BOOL_TRUE ? 1 : 0;
    if ( tmp_and_left_truth_1 == 1 )
    {
        goto and_right_1;
    }
    else
    {
        goto and_left_1;
    }
    and_right_1:;
    if ( par_algorithm == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "algorithm" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 67;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_source_name_2 = par_algorithm;
    tmp_compexpr_left_2 = LOOKUP_ATTRIBUTE( tmp_source_name_2, const_str_plain_name );
    if ( tmp_compexpr_left_2 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 67;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_compexpr_right_2 = const_str_plain_AES;
    tmp_res = RICH_COMPARE_BOOL_EQ( tmp_compexpr_left_2, tmp_compexpr_right_2 );
    Py_DECREF( tmp_compexpr_left_2 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 67;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_and_right_value_1 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    tmp_condition_result_1 = tmp_and_right_value_1;
    goto and_end_1;
    and_left_1:;
    tmp_condition_result_1 = tmp_and_left_value_1;
    and_end_1:;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    tmp_make_exception_arg_1 = const_str_digest_cd69e318ffbc825cdfdec262cc900a88;
    frame_a915826132a68f8096982f5eb7ea6f52->m_frame.f_lineno = 68;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_ValueError, call_args );
    }

    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 68;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_a915826132a68f8096982f5eb7ea6f52 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_a915826132a68f8096982f5eb7ea6f52 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_a915826132a68f8096982f5eb7ea6f52, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_a915826132a68f8096982f5eb7ea6f52->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_a915826132a68f8096982f5eb7ea6f52, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_a915826132a68f8096982f5eb7ea6f52,
        type_description_1,
        par_self,
        par_algorithm
    );


    // Release cached frame.
    if ( frame_a915826132a68f8096982f5eb7ea6f52 == cache_frame_a915826132a68f8096982f5eb7ea6f52 )
    {
        Py_DECREF( frame_a915826132a68f8096982f5eb7ea6f52 );
    }
    cache_frame_a915826132a68f8096982f5eb7ea6f52 = NULL;

    assertFrameObject( frame_a915826132a68f8096982f5eb7ea6f52 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_7__check_aes_key_length );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_7__check_aes_key_length );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_8__check_iv_length( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_algorithm = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_196022c893ceab3f1f278bee9f84e658;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    int tmp_res;
    static struct Nuitka_FrameObject *cache_frame_196022c893ceab3f1f278bee9f84e658 = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_196022c893ceab3f1f278bee9f84e658, codeobj_196022c893ceab3f1f278bee9f84e658, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_196022c893ceab3f1f278bee9f84e658 = cache_frame_196022c893ceab3f1f278bee9f84e658;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_196022c893ceab3f1f278bee9f84e658 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_196022c893ceab3f1f278bee9f84e658 ) == 2 ); // Frame stack

    // Framed code:
    {
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_compexpr_left_1;
    PyObject *tmp_compexpr_right_1;
    PyObject *tmp_left_name_1;
    PyObject *tmp_len_arg_1;
    PyObject *tmp_source_name_1;
    PyObject *tmp_right_name_1;
    PyObject *tmp_source_name_2;
    CHECK_OBJECT( par_self );
    tmp_source_name_1 = par_self;
    tmp_len_arg_1 = LOOKUP_ATTRIBUTE( tmp_source_name_1, const_str_plain_initialization_vector );
    if ( tmp_len_arg_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 74;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_left_name_1 = BUILTIN_LEN( tmp_len_arg_1 );
    Py_DECREF( tmp_len_arg_1 );
    if ( tmp_left_name_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 74;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_right_name_1 = const_int_pos_8;
    tmp_compexpr_left_1 = BINARY_OPERATION_MUL( tmp_left_name_1, tmp_right_name_1 );
    Py_DECREF( tmp_left_name_1 );
    if ( tmp_compexpr_left_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 74;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    if ( par_algorithm == NULL )
    {
        Py_DECREF( tmp_compexpr_left_1 );
        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "algorithm" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 74;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_source_name_2 = par_algorithm;
    tmp_compexpr_right_1 = LOOKUP_ATTRIBUTE( tmp_source_name_2, const_str_plain_block_size );
    if ( tmp_compexpr_right_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_compexpr_left_1 );

        exception_lineno = 74;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_1, tmp_compexpr_right_1 );
    Py_DECREF( tmp_compexpr_left_1 );
    Py_DECREF( tmp_compexpr_right_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 74;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_1 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    PyObject *tmp_called_name_1;
    PyObject *tmp_source_name_3;
    PyObject *tmp_args_element_name_1;
    PyObject *tmp_len_arg_2;
    PyObject *tmp_source_name_4;
    PyObject *tmp_args_element_name_2;
    PyObject *tmp_source_name_5;
    tmp_source_name_3 = const_str_digest_fb140b39ebe884fa656bf93258c41911;
    tmp_called_name_1 = LOOKUP_ATTRIBUTE( tmp_source_name_3, const_str_plain_format );
    assert( !(tmp_called_name_1 == NULL) );
    if ( par_self == NULL )
    {
        Py_DECREF( tmp_called_name_1 );
        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 76;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_source_name_4 = par_self;
    tmp_len_arg_2 = LOOKUP_ATTRIBUTE( tmp_source_name_4, const_str_plain_initialization_vector );
    if ( tmp_len_arg_2 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_1 );

        exception_lineno = 76;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_args_element_name_1 = BUILTIN_LEN( tmp_len_arg_2 );
    Py_DECREF( tmp_len_arg_2 );
    if ( tmp_args_element_name_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_1 );

        exception_lineno = 76;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    if ( par_self == NULL )
    {
        Py_DECREF( tmp_called_name_1 );
        Py_DECREF( tmp_args_element_name_1 );
        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 76;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_source_name_5 = par_self;
    tmp_args_element_name_2 = LOOKUP_ATTRIBUTE( tmp_source_name_5, const_str_plain_name );
    if ( tmp_args_element_name_2 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_1 );
        Py_DECREF( tmp_args_element_name_1 );

        exception_lineno = 76;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    frame_196022c893ceab3f1f278bee9f84e658->m_frame.f_lineno = 75;
    {
        PyObject *call_args[] = { tmp_args_element_name_1, tmp_args_element_name_2 };
        tmp_make_exception_arg_1 = CALL_FUNCTION_WITH_ARGS2( tmp_called_name_1, call_args );
    }

    Py_DECREF( tmp_called_name_1 );
    Py_DECREF( tmp_args_element_name_1 );
    Py_DECREF( tmp_args_element_name_2 );
    if ( tmp_make_exception_arg_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 75;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    frame_196022c893ceab3f1f278bee9f84e658->m_frame.f_lineno = 75;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_ValueError, call_args );
    }

    Py_DECREF( tmp_make_exception_arg_1 );
    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 75;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_196022c893ceab3f1f278bee9f84e658 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_196022c893ceab3f1f278bee9f84e658 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_196022c893ceab3f1f278bee9f84e658, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_196022c893ceab3f1f278bee9f84e658->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_196022c893ceab3f1f278bee9f84e658, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_196022c893ceab3f1f278bee9f84e658,
        type_description_1,
        par_self,
        par_algorithm
    );


    // Release cached frame.
    if ( frame_196022c893ceab3f1f278bee9f84e658 == cache_frame_196022c893ceab3f1f278bee9f84e658 )
    {
        Py_DECREF( frame_196022c893ceab3f1f278bee9f84e658 );
    }
    cache_frame_196022c893ceab3f1f278bee9f84e658 = NULL;

    assertFrameObject( frame_196022c893ceab3f1f278bee9f84e658 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_8__check_iv_length );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_8__check_iv_length );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_9__check_iv_and_key_length( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_algorithm = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_6fb7e9afba37b7a7d0e31a485a42a8d5;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    NUITKA_MAY_BE_UNUSED PyObject *tmp_unused;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    static struct Nuitka_FrameObject *cache_frame_6fb7e9afba37b7a7d0e31a485a42a8d5 = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_6fb7e9afba37b7a7d0e31a485a42a8d5, codeobj_6fb7e9afba37b7a7d0e31a485a42a8d5, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_6fb7e9afba37b7a7d0e31a485a42a8d5 = cache_frame_6fb7e9afba37b7a7d0e31a485a42a8d5;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_6fb7e9afba37b7a7d0e31a485a42a8d5 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_6fb7e9afba37b7a7d0e31a485a42a8d5 ) == 2 ); // Frame stack

    // Framed code:
    {
    PyObject *tmp_called_name_1;
    PyObject *tmp_mvar_value_1;
    PyObject *tmp_args_element_name_1;
    PyObject *tmp_args_element_name_2;
    tmp_mvar_value_1 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_aes_key_length );

    if (unlikely( tmp_mvar_value_1 == NULL ))
    {
        tmp_mvar_value_1 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain__check_aes_key_length );
    }

    if ( tmp_mvar_value_1 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "_check_aes_key_length" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 81;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_called_name_1 = tmp_mvar_value_1;
    CHECK_OBJECT( par_self );
    tmp_args_element_name_1 = par_self;
    CHECK_OBJECT( par_algorithm );
    tmp_args_element_name_2 = par_algorithm;
    frame_6fb7e9afba37b7a7d0e31a485a42a8d5->m_frame.f_lineno = 81;
    {
        PyObject *call_args[] = { tmp_args_element_name_1, tmp_args_element_name_2 };
        tmp_unused = CALL_FUNCTION_WITH_ARGS2( tmp_called_name_1, call_args );
    }

    if ( tmp_unused == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 81;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    Py_DECREF( tmp_unused );
    }
    {
    PyObject *tmp_called_name_2;
    PyObject *tmp_mvar_value_2;
    PyObject *tmp_args_element_name_3;
    PyObject *tmp_args_element_name_4;
    tmp_mvar_value_2 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_iv_length );

    if (unlikely( tmp_mvar_value_2 == NULL ))
    {
        tmp_mvar_value_2 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain__check_iv_length );
    }

    if ( tmp_mvar_value_2 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "_check_iv_length" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 82;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_called_name_2 = tmp_mvar_value_2;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 82;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_args_element_name_3 = par_self;
    if ( par_algorithm == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "algorithm" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 82;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_args_element_name_4 = par_algorithm;
    frame_6fb7e9afba37b7a7d0e31a485a42a8d5->m_frame.f_lineno = 82;
    {
        PyObject *call_args[] = { tmp_args_element_name_3, tmp_args_element_name_4 };
        tmp_unused = CALL_FUNCTION_WITH_ARGS2( tmp_called_name_2, call_args );
    }

    if ( tmp_unused == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 82;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    Py_DECREF( tmp_unused );
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_6fb7e9afba37b7a7d0e31a485a42a8d5 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_6fb7e9afba37b7a7d0e31a485a42a8d5 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_6fb7e9afba37b7a7d0e31a485a42a8d5, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_6fb7e9afba37b7a7d0e31a485a42a8d5->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_6fb7e9afba37b7a7d0e31a485a42a8d5, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_6fb7e9afba37b7a7d0e31a485a42a8d5,
        type_description_1,
        par_self,
        par_algorithm
    );


    // Release cached frame.
    if ( frame_6fb7e9afba37b7a7d0e31a485a42a8d5 == cache_frame_6fb7e9afba37b7a7d0e31a485a42a8d5 )
    {
        Py_DECREF( frame_6fb7e9afba37b7a7d0e31a485a42a8d5 );
    }
    cache_frame_6fb7e9afba37b7a7d0e31a485a42a8d5 = NULL;

    assertFrameObject( frame_6fb7e9afba37b7a7d0e31a485a42a8d5 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_9__check_iv_and_key_length );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_9__check_iv_and_key_length );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_10___init__( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_initialization_vector = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_5e2fe58c19be76b50b1ded20f1545cc9;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    int tmp_res;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    bool tmp_result;
    static struct Nuitka_FrameObject *cache_frame_5e2fe58c19be76b50b1ded20f1545cc9 = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_5e2fe58c19be76b50b1ded20f1545cc9, codeobj_5e2fe58c19be76b50b1ded20f1545cc9, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_5e2fe58c19be76b50b1ded20f1545cc9 = cache_frame_5e2fe58c19be76b50b1ded20f1545cc9;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_5e2fe58c19be76b50b1ded20f1545cc9 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_5e2fe58c19be76b50b1ded20f1545cc9 ) == 2 ); // Frame stack

    // Framed code:
    {
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_operand_name_1;
    PyObject *tmp_isinstance_inst_1;
    PyObject *tmp_isinstance_cls_1;
    CHECK_OBJECT( par_initialization_vector );
    tmp_isinstance_inst_1 = par_initialization_vector;
    tmp_isinstance_cls_1 = (PyObject *)&PyBytes_Type;
    tmp_res = Nuitka_IsInstance( tmp_isinstance_inst_1, tmp_isinstance_cls_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 91;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_operand_name_1 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 91;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_1 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    tmp_make_exception_arg_1 = const_str_digest_f940c5503f4046e30aa00140e137e9cc;
    frame_5e2fe58c19be76b50b1ded20f1545cc9->m_frame.f_lineno = 92;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_TypeError, call_args );
    }

    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 92;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }
    {
    PyObject *tmp_assattr_name_1;
    PyObject *tmp_assattr_target_1;
    if ( par_initialization_vector == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "initialization_vector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 94;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_name_1 = par_initialization_vector;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 94;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_target_1 = par_self;
    tmp_result = SET_ATTRIBUTE( tmp_assattr_target_1, const_str_plain__initialization_vector, tmp_assattr_name_1 );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 94;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_5e2fe58c19be76b50b1ded20f1545cc9 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_5e2fe58c19be76b50b1ded20f1545cc9 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_5e2fe58c19be76b50b1ded20f1545cc9, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_5e2fe58c19be76b50b1ded20f1545cc9->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_5e2fe58c19be76b50b1ded20f1545cc9, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_5e2fe58c19be76b50b1ded20f1545cc9,
        type_description_1,
        par_self,
        par_initialization_vector
    );


    // Release cached frame.
    if ( frame_5e2fe58c19be76b50b1ded20f1545cc9 == cache_frame_5e2fe58c19be76b50b1ded20f1545cc9 )
    {
        Py_DECREF( frame_5e2fe58c19be76b50b1ded20f1545cc9 );
    }
    cache_frame_5e2fe58c19be76b50b1ded20f1545cc9 = NULL;

    assertFrameObject( frame_5e2fe58c19be76b50b1ded20f1545cc9 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_10___init__ );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_initialization_vector );
    par_initialization_vector = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_initialization_vector );
    par_initialization_vector = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_10___init__ );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_11___init__( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_tweak = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_b26dafd8a2897c3cca199b3fee1e327b;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    int tmp_res;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    bool tmp_result;
    static struct Nuitka_FrameObject *cache_frame_b26dafd8a2897c3cca199b3fee1e327b = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_b26dafd8a2897c3cca199b3fee1e327b, codeobj_b26dafd8a2897c3cca199b3fee1e327b, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_b26dafd8a2897c3cca199b3fee1e327b = cache_frame_b26dafd8a2897c3cca199b3fee1e327b;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_b26dafd8a2897c3cca199b3fee1e327b );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_b26dafd8a2897c3cca199b3fee1e327b ) == 2 ); // Frame stack

    // Framed code:
    {
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_operand_name_1;
    PyObject *tmp_isinstance_inst_1;
    PyObject *tmp_isinstance_cls_1;
    CHECK_OBJECT( par_tweak );
    tmp_isinstance_inst_1 = par_tweak;
    tmp_isinstance_cls_1 = (PyObject *)&PyBytes_Type;
    tmp_res = Nuitka_IsInstance( tmp_isinstance_inst_1, tmp_isinstance_cls_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 106;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_operand_name_1 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 106;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_1 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    tmp_make_exception_arg_1 = const_str_digest_1c038025724e2955ffc6e208d42b3307;
    frame_b26dafd8a2897c3cca199b3fee1e327b->m_frame.f_lineno = 107;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_TypeError, call_args );
    }

    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 107;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }
    {
    nuitka_bool tmp_condition_result_2;
    PyObject *tmp_compexpr_left_1;
    PyObject *tmp_compexpr_right_1;
    PyObject *tmp_len_arg_1;
    if ( par_tweak == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "tweak" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 109;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_len_arg_1 = par_tweak;
    tmp_compexpr_left_1 = BUILTIN_LEN( tmp_len_arg_1 );
    if ( tmp_compexpr_left_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 109;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_compexpr_right_1 = const_int_pos_16;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_1, tmp_compexpr_right_1 );
    Py_DECREF( tmp_compexpr_left_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 109;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_2 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_2 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_2;
    }
    else
    {
        goto branch_no_2;
    }
    branch_yes_2:;
    {
    PyObject *tmp_raise_type_2;
    PyObject *tmp_make_exception_arg_2;
    tmp_make_exception_arg_2 = const_str_digest_1fb896656a556642058d3d0f2aef8429;
    frame_b26dafd8a2897c3cca199b3fee1e327b->m_frame.f_lineno = 110;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_2 };
        tmp_raise_type_2 = CALL_FUNCTION_WITH_ARGS1( PyExc_ValueError, call_args );
    }

    assert( !(tmp_raise_type_2 == NULL) );
    exception_type = tmp_raise_type_2;
    exception_lineno = 110;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_2:;
    }
    {
    PyObject *tmp_assattr_name_1;
    PyObject *tmp_assattr_target_1;
    if ( par_tweak == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "tweak" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 112;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_name_1 = par_tweak;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 112;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_target_1 = par_self;
    tmp_result = SET_ATTRIBUTE( tmp_assattr_target_1, const_str_plain__tweak, tmp_assattr_name_1 );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 112;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_b26dafd8a2897c3cca199b3fee1e327b );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_b26dafd8a2897c3cca199b3fee1e327b );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_b26dafd8a2897c3cca199b3fee1e327b, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_b26dafd8a2897c3cca199b3fee1e327b->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_b26dafd8a2897c3cca199b3fee1e327b, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_b26dafd8a2897c3cca199b3fee1e327b,
        type_description_1,
        par_self,
        par_tweak
    );


    // Release cached frame.
    if ( frame_b26dafd8a2897c3cca199b3fee1e327b == cache_frame_b26dafd8a2897c3cca199b3fee1e327b )
    {
        Py_DECREF( frame_b26dafd8a2897c3cca199b3fee1e327b );
    }
    cache_frame_b26dafd8a2897c3cca199b3fee1e327b = NULL;

    assertFrameObject( frame_b26dafd8a2897c3cca199b3fee1e327b );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_11___init__ );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_tweak );
    par_tweak = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_tweak );
    par_tweak = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_11___init__ );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_12_validate_for_algorithm( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_algorithm = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    int tmp_res;
    static struct Nuitka_FrameObject *cache_frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb, codeobj_1a3fb4b2aa97fbd34c0186d59f5fd1fb, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb = cache_frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb ) == 2 ); // Frame stack

    // Framed code:
    {
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_compexpr_left_1;
    PyObject *tmp_compexpr_right_1;
    PyObject *tmp_source_name_1;
    CHECK_OBJECT( par_algorithm );
    tmp_source_name_1 = par_algorithm;
    tmp_compexpr_left_1 = LOOKUP_ATTRIBUTE( tmp_source_name_1, const_str_plain_key_size );
    if ( tmp_compexpr_left_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 117;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_compexpr_right_1 = const_tuple_int_pos_256_int_pos_512_tuple;
    tmp_res = PySequence_Contains( tmp_compexpr_right_1, tmp_compexpr_left_1 );
    Py_DECREF( tmp_compexpr_left_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 117;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_1 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    tmp_make_exception_arg_1 = const_str_digest_ca7e0f37eefb63f559dcf13aed7fe908;
    frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb->m_frame.f_lineno = 118;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_ValueError, call_args );
    }

    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 118;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb,
        type_description_1,
        par_self,
        par_algorithm
    );


    // Release cached frame.
    if ( frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb == cache_frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb )
    {
        Py_DECREF( frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb );
    }
    cache_frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb = NULL;

    assertFrameObject( frame_1a3fb4b2aa97fbd34c0186d59f5fd1fb );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_12_validate_for_algorithm );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_12_validate_for_algorithm );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_13___init__( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_initialization_vector = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_734d8e0559c9dfa0305b0c7b71837f34;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    int tmp_res;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    bool tmp_result;
    static struct Nuitka_FrameObject *cache_frame_734d8e0559c9dfa0305b0c7b71837f34 = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_734d8e0559c9dfa0305b0c7b71837f34, codeobj_734d8e0559c9dfa0305b0c7b71837f34, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_734d8e0559c9dfa0305b0c7b71837f34 = cache_frame_734d8e0559c9dfa0305b0c7b71837f34;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_734d8e0559c9dfa0305b0c7b71837f34 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_734d8e0559c9dfa0305b0c7b71837f34 ) == 2 ); // Frame stack

    // Framed code:
    {
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_operand_name_1;
    PyObject *tmp_isinstance_inst_1;
    PyObject *tmp_isinstance_cls_1;
    CHECK_OBJECT( par_initialization_vector );
    tmp_isinstance_inst_1 = par_initialization_vector;
    tmp_isinstance_cls_1 = (PyObject *)&PyBytes_Type;
    tmp_res = Nuitka_IsInstance( tmp_isinstance_inst_1, tmp_isinstance_cls_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 137;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_operand_name_1 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 137;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_1 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    tmp_make_exception_arg_1 = const_str_digest_f940c5503f4046e30aa00140e137e9cc;
    frame_734d8e0559c9dfa0305b0c7b71837f34->m_frame.f_lineno = 138;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_TypeError, call_args );
    }

    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 138;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }
    {
    PyObject *tmp_assattr_name_1;
    PyObject *tmp_assattr_target_1;
    if ( par_initialization_vector == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "initialization_vector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 140;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_name_1 = par_initialization_vector;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 140;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_target_1 = par_self;
    tmp_result = SET_ATTRIBUTE( tmp_assattr_target_1, const_str_plain__initialization_vector, tmp_assattr_name_1 );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 140;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_734d8e0559c9dfa0305b0c7b71837f34 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_734d8e0559c9dfa0305b0c7b71837f34 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_734d8e0559c9dfa0305b0c7b71837f34, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_734d8e0559c9dfa0305b0c7b71837f34->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_734d8e0559c9dfa0305b0c7b71837f34, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_734d8e0559c9dfa0305b0c7b71837f34,
        type_description_1,
        par_self,
        par_initialization_vector
    );


    // Release cached frame.
    if ( frame_734d8e0559c9dfa0305b0c7b71837f34 == cache_frame_734d8e0559c9dfa0305b0c7b71837f34 )
    {
        Py_DECREF( frame_734d8e0559c9dfa0305b0c7b71837f34 );
    }
    cache_frame_734d8e0559c9dfa0305b0c7b71837f34 = NULL;

    assertFrameObject( frame_734d8e0559c9dfa0305b0c7b71837f34 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_13___init__ );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_initialization_vector );
    par_initialization_vector = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_initialization_vector );
    par_initialization_vector = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_13___init__ );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_14___init__( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_initialization_vector = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_e419f8058e7962b663065f5a866cd5a2;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    int tmp_res;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    bool tmp_result;
    static struct Nuitka_FrameObject *cache_frame_e419f8058e7962b663065f5a866cd5a2 = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_e419f8058e7962b663065f5a866cd5a2, codeobj_e419f8058e7962b663065f5a866cd5a2, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_e419f8058e7962b663065f5a866cd5a2 = cache_frame_e419f8058e7962b663065f5a866cd5a2;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_e419f8058e7962b663065f5a866cd5a2 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_e419f8058e7962b663065f5a866cd5a2 ) == 2 ); // Frame stack

    // Framed code:
    {
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_operand_name_1;
    PyObject *tmp_isinstance_inst_1;
    PyObject *tmp_isinstance_cls_1;
    CHECK_OBJECT( par_initialization_vector );
    tmp_isinstance_inst_1 = par_initialization_vector;
    tmp_isinstance_cls_1 = (PyObject *)&PyBytes_Type;
    tmp_res = Nuitka_IsInstance( tmp_isinstance_inst_1, tmp_isinstance_cls_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 152;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_operand_name_1 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 152;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_1 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    tmp_make_exception_arg_1 = const_str_digest_f940c5503f4046e30aa00140e137e9cc;
    frame_e419f8058e7962b663065f5a866cd5a2->m_frame.f_lineno = 153;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_TypeError, call_args );
    }

    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 153;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }
    {
    PyObject *tmp_assattr_name_1;
    PyObject *tmp_assattr_target_1;
    if ( par_initialization_vector == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "initialization_vector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 155;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_name_1 = par_initialization_vector;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 155;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_target_1 = par_self;
    tmp_result = SET_ATTRIBUTE( tmp_assattr_target_1, const_str_plain__initialization_vector, tmp_assattr_name_1 );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 155;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_e419f8058e7962b663065f5a866cd5a2 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_e419f8058e7962b663065f5a866cd5a2 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_e419f8058e7962b663065f5a866cd5a2, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_e419f8058e7962b663065f5a866cd5a2->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_e419f8058e7962b663065f5a866cd5a2, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_e419f8058e7962b663065f5a866cd5a2,
        type_description_1,
        par_self,
        par_initialization_vector
    );


    // Release cached frame.
    if ( frame_e419f8058e7962b663065f5a866cd5a2 == cache_frame_e419f8058e7962b663065f5a866cd5a2 )
    {
        Py_DECREF( frame_e419f8058e7962b663065f5a866cd5a2 );
    }
    cache_frame_e419f8058e7962b663065f5a866cd5a2 = NULL;

    assertFrameObject( frame_e419f8058e7962b663065f5a866cd5a2 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_14___init__ );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_initialization_vector );
    par_initialization_vector = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_initialization_vector );
    par_initialization_vector = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_14___init__ );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_15___init__( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_initialization_vector = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_a2b6e4e99d683e920dc3bb7eb91f4ebf;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    int tmp_res;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    bool tmp_result;
    static struct Nuitka_FrameObject *cache_frame_a2b6e4e99d683e920dc3bb7eb91f4ebf = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_a2b6e4e99d683e920dc3bb7eb91f4ebf, codeobj_a2b6e4e99d683e920dc3bb7eb91f4ebf, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_a2b6e4e99d683e920dc3bb7eb91f4ebf = cache_frame_a2b6e4e99d683e920dc3bb7eb91f4ebf;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_a2b6e4e99d683e920dc3bb7eb91f4ebf );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_a2b6e4e99d683e920dc3bb7eb91f4ebf ) == 2 ); // Frame stack

    // Framed code:
    {
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_operand_name_1;
    PyObject *tmp_isinstance_inst_1;
    PyObject *tmp_isinstance_cls_1;
    CHECK_OBJECT( par_initialization_vector );
    tmp_isinstance_inst_1 = par_initialization_vector;
    tmp_isinstance_cls_1 = (PyObject *)&PyBytes_Type;
    tmp_res = Nuitka_IsInstance( tmp_isinstance_inst_1, tmp_isinstance_cls_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 167;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_operand_name_1 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 167;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_1 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    tmp_make_exception_arg_1 = const_str_digest_f940c5503f4046e30aa00140e137e9cc;
    frame_a2b6e4e99d683e920dc3bb7eb91f4ebf->m_frame.f_lineno = 168;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_TypeError, call_args );
    }

    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 168;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }
    {
    PyObject *tmp_assattr_name_1;
    PyObject *tmp_assattr_target_1;
    if ( par_initialization_vector == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "initialization_vector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 170;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_name_1 = par_initialization_vector;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 170;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_target_1 = par_self;
    tmp_result = SET_ATTRIBUTE( tmp_assattr_target_1, const_str_plain__initialization_vector, tmp_assattr_name_1 );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 170;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_a2b6e4e99d683e920dc3bb7eb91f4ebf );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_a2b6e4e99d683e920dc3bb7eb91f4ebf );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_a2b6e4e99d683e920dc3bb7eb91f4ebf, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_a2b6e4e99d683e920dc3bb7eb91f4ebf->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_a2b6e4e99d683e920dc3bb7eb91f4ebf, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_a2b6e4e99d683e920dc3bb7eb91f4ebf,
        type_description_1,
        par_self,
        par_initialization_vector
    );


    // Release cached frame.
    if ( frame_a2b6e4e99d683e920dc3bb7eb91f4ebf == cache_frame_a2b6e4e99d683e920dc3bb7eb91f4ebf )
    {
        Py_DECREF( frame_a2b6e4e99d683e920dc3bb7eb91f4ebf );
    }
    cache_frame_a2b6e4e99d683e920dc3bb7eb91f4ebf = NULL;

    assertFrameObject( frame_a2b6e4e99d683e920dc3bb7eb91f4ebf );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_15___init__ );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_initialization_vector );
    par_initialization_vector = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_initialization_vector );
    par_initialization_vector = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_15___init__ );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_16___init__( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_nonce = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_0731f5547361a477685b9e7b774f6c25;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    int tmp_res;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    bool tmp_result;
    static struct Nuitka_FrameObject *cache_frame_0731f5547361a477685b9e7b774f6c25 = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_0731f5547361a477685b9e7b774f6c25, codeobj_0731f5547361a477685b9e7b774f6c25, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_0731f5547361a477685b9e7b774f6c25 = cache_frame_0731f5547361a477685b9e7b774f6c25;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_0731f5547361a477685b9e7b774f6c25 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_0731f5547361a477685b9e7b774f6c25 ) == 2 ); // Frame stack

    // Framed code:
    {
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_operand_name_1;
    PyObject *tmp_isinstance_inst_1;
    PyObject *tmp_isinstance_cls_1;
    CHECK_OBJECT( par_nonce );
    tmp_isinstance_inst_1 = par_nonce;
    tmp_isinstance_cls_1 = (PyObject *)&PyBytes_Type;
    tmp_res = Nuitka_IsInstance( tmp_isinstance_inst_1, tmp_isinstance_cls_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 182;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_operand_name_1 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 182;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_1 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    tmp_make_exception_arg_1 = const_str_digest_f37468dd5629ccacfbc304506e5ed113;
    frame_0731f5547361a477685b9e7b774f6c25->m_frame.f_lineno = 183;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_TypeError, call_args );
    }

    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 183;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }
    {
    PyObject *tmp_assattr_name_1;
    PyObject *tmp_assattr_target_1;
    if ( par_nonce == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "nonce" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 185;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_name_1 = par_nonce;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 185;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_target_1 = par_self;
    tmp_result = SET_ATTRIBUTE( tmp_assattr_target_1, const_str_plain__nonce, tmp_assattr_name_1 );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 185;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_0731f5547361a477685b9e7b774f6c25 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_0731f5547361a477685b9e7b774f6c25 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_0731f5547361a477685b9e7b774f6c25, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_0731f5547361a477685b9e7b774f6c25->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_0731f5547361a477685b9e7b774f6c25, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_0731f5547361a477685b9e7b774f6c25,
        type_description_1,
        par_self,
        par_nonce
    );


    // Release cached frame.
    if ( frame_0731f5547361a477685b9e7b774f6c25 == cache_frame_0731f5547361a477685b9e7b774f6c25 )
    {
        Py_DECREF( frame_0731f5547361a477685b9e7b774f6c25 );
    }
    cache_frame_0731f5547361a477685b9e7b774f6c25 = NULL;

    assertFrameObject( frame_0731f5547361a477685b9e7b774f6c25 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_16___init__ );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_nonce );
    par_nonce = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_nonce );
    par_nonce = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_16___init__ );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_17_validate_for_algorithm( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_algorithm = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_8c5bbe34a4a4b6698b40794fd6cba861;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    NUITKA_MAY_BE_UNUSED PyObject *tmp_unused;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    int tmp_res;
    static struct Nuitka_FrameObject *cache_frame_8c5bbe34a4a4b6698b40794fd6cba861 = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_8c5bbe34a4a4b6698b40794fd6cba861, codeobj_8c5bbe34a4a4b6698b40794fd6cba861, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_8c5bbe34a4a4b6698b40794fd6cba861 = cache_frame_8c5bbe34a4a4b6698b40794fd6cba861;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_8c5bbe34a4a4b6698b40794fd6cba861 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_8c5bbe34a4a4b6698b40794fd6cba861 ) == 2 ); // Frame stack

    // Framed code:
    {
    PyObject *tmp_called_name_1;
    PyObject *tmp_mvar_value_1;
    PyObject *tmp_args_element_name_1;
    PyObject *tmp_args_element_name_2;
    tmp_mvar_value_1 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_aes_key_length );

    if (unlikely( tmp_mvar_value_1 == NULL ))
    {
        tmp_mvar_value_1 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain__check_aes_key_length );
    }

    if ( tmp_mvar_value_1 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "_check_aes_key_length" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 190;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_called_name_1 = tmp_mvar_value_1;
    CHECK_OBJECT( par_self );
    tmp_args_element_name_1 = par_self;
    CHECK_OBJECT( par_algorithm );
    tmp_args_element_name_2 = par_algorithm;
    frame_8c5bbe34a4a4b6698b40794fd6cba861->m_frame.f_lineno = 190;
    {
        PyObject *call_args[] = { tmp_args_element_name_1, tmp_args_element_name_2 };
        tmp_unused = CALL_FUNCTION_WITH_ARGS2( tmp_called_name_1, call_args );
    }

    if ( tmp_unused == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 190;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    Py_DECREF( tmp_unused );
    }
    {
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_compexpr_left_1;
    PyObject *tmp_compexpr_right_1;
    PyObject *tmp_left_name_1;
    PyObject *tmp_len_arg_1;
    PyObject *tmp_source_name_1;
    PyObject *tmp_right_name_1;
    PyObject *tmp_source_name_2;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 191;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_source_name_1 = par_self;
    tmp_len_arg_1 = LOOKUP_ATTRIBUTE( tmp_source_name_1, const_str_plain_nonce );
    if ( tmp_len_arg_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 191;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_left_name_1 = BUILTIN_LEN( tmp_len_arg_1 );
    Py_DECREF( tmp_len_arg_1 );
    if ( tmp_left_name_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 191;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_right_name_1 = const_int_pos_8;
    tmp_compexpr_left_1 = BINARY_OPERATION_MUL( tmp_left_name_1, tmp_right_name_1 );
    Py_DECREF( tmp_left_name_1 );
    if ( tmp_compexpr_left_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 191;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    if ( par_algorithm == NULL )
    {
        Py_DECREF( tmp_compexpr_left_1 );
        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "algorithm" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 191;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_source_name_2 = par_algorithm;
    tmp_compexpr_right_1 = LOOKUP_ATTRIBUTE( tmp_source_name_2, const_str_plain_block_size );
    if ( tmp_compexpr_right_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_compexpr_left_1 );

        exception_lineno = 191;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_1, tmp_compexpr_right_1 );
    Py_DECREF( tmp_compexpr_left_1 );
    Py_DECREF( tmp_compexpr_right_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 191;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_1 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    PyObject *tmp_called_name_2;
    PyObject *tmp_source_name_3;
    PyObject *tmp_args_element_name_3;
    PyObject *tmp_len_arg_2;
    PyObject *tmp_source_name_4;
    PyObject *tmp_args_element_name_4;
    PyObject *tmp_source_name_5;
    tmp_source_name_3 = const_str_digest_bb178a951985691561eabeee8701b224;
    tmp_called_name_2 = LOOKUP_ATTRIBUTE( tmp_source_name_3, const_str_plain_format );
    assert( !(tmp_called_name_2 == NULL) );
    if ( par_self == NULL )
    {
        Py_DECREF( tmp_called_name_2 );
        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 193;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_source_name_4 = par_self;
    tmp_len_arg_2 = LOOKUP_ATTRIBUTE( tmp_source_name_4, const_str_plain_nonce );
    if ( tmp_len_arg_2 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_2 );

        exception_lineno = 193;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    tmp_args_element_name_3 = BUILTIN_LEN( tmp_len_arg_2 );
    Py_DECREF( tmp_len_arg_2 );
    if ( tmp_args_element_name_3 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_2 );

        exception_lineno = 193;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    if ( par_self == NULL )
    {
        Py_DECREF( tmp_called_name_2 );
        Py_DECREF( tmp_args_element_name_3 );
        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 193;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_source_name_5 = par_self;
    tmp_args_element_name_4 = LOOKUP_ATTRIBUTE( tmp_source_name_5, const_str_plain_name );
    if ( tmp_args_element_name_4 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_2 );
        Py_DECREF( tmp_args_element_name_3 );

        exception_lineno = 193;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    frame_8c5bbe34a4a4b6698b40794fd6cba861->m_frame.f_lineno = 192;
    {
        PyObject *call_args[] = { tmp_args_element_name_3, tmp_args_element_name_4 };
        tmp_make_exception_arg_1 = CALL_FUNCTION_WITH_ARGS2( tmp_called_name_2, call_args );
    }

    Py_DECREF( tmp_called_name_2 );
    Py_DECREF( tmp_args_element_name_3 );
    Py_DECREF( tmp_args_element_name_4 );
    if ( tmp_make_exception_arg_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 192;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    frame_8c5bbe34a4a4b6698b40794fd6cba861->m_frame.f_lineno = 192;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_ValueError, call_args );
    }

    Py_DECREF( tmp_make_exception_arg_1 );
    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 192;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_8c5bbe34a4a4b6698b40794fd6cba861 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_8c5bbe34a4a4b6698b40794fd6cba861 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_8c5bbe34a4a4b6698b40794fd6cba861, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_8c5bbe34a4a4b6698b40794fd6cba861->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_8c5bbe34a4a4b6698b40794fd6cba861, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_8c5bbe34a4a4b6698b40794fd6cba861,
        type_description_1,
        par_self,
        par_algorithm
    );


    // Release cached frame.
    if ( frame_8c5bbe34a4a4b6698b40794fd6cba861 == cache_frame_8c5bbe34a4a4b6698b40794fd6cba861 )
    {
        Py_DECREF( frame_8c5bbe34a4a4b6698b40794fd6cba861 );
    }
    cache_frame_8c5bbe34a4a4b6698b40794fd6cba861 = NULL;

    assertFrameObject( frame_8c5bbe34a4a4b6698b40794fd6cba861 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_17_validate_for_algorithm );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_17_validate_for_algorithm );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_18___init__( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_initialization_vector = python_pars[ 1 ];
    PyObject *par_tag = python_pars[ 2 ];
    PyObject *par_min_tag_length = python_pars[ 3 ];
    struct Nuitka_FrameObject *frame_3de97a46e9da7f1fff06fe10131a8190;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    int tmp_res;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    bool tmp_result;
    static struct Nuitka_FrameObject *cache_frame_3de97a46e9da7f1fff06fe10131a8190 = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_3de97a46e9da7f1fff06fe10131a8190, codeobj_3de97a46e9da7f1fff06fe10131a8190, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *)+sizeof(void *)+sizeof(void *) );
    frame_3de97a46e9da7f1fff06fe10131a8190 = cache_frame_3de97a46e9da7f1fff06fe10131a8190;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_3de97a46e9da7f1fff06fe10131a8190 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_3de97a46e9da7f1fff06fe10131a8190 ) == 2 ); // Frame stack

    // Framed code:
    {
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_operand_name_1;
    PyObject *tmp_isinstance_inst_1;
    PyObject *tmp_isinstance_cls_1;
    CHECK_OBJECT( par_initialization_vector );
    tmp_isinstance_inst_1 = par_initialization_vector;
    tmp_isinstance_cls_1 = (PyObject *)&PyBytes_Type;
    tmp_res = Nuitka_IsInstance( tmp_isinstance_inst_1, tmp_isinstance_cls_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 209;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    tmp_operand_name_1 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 209;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_1 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_make_exception_arg_1;
    tmp_make_exception_arg_1 = const_str_digest_f940c5503f4046e30aa00140e137e9cc;
    frame_3de97a46e9da7f1fff06fe10131a8190->m_frame.f_lineno = 210;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_1 };
        tmp_raise_type_1 = CALL_FUNCTION_WITH_ARGS1( PyExc_TypeError, call_args );
    }

    assert( !(tmp_raise_type_1 == NULL) );
    exception_type = tmp_raise_type_1;
    exception_lineno = 210;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oooo";
    goto frame_exception_exit_1;
    }
    branch_no_1:;
    }
    {
    nuitka_bool tmp_condition_result_2;
    PyObject *tmp_compexpr_left_1;
    PyObject *tmp_compexpr_right_1;
    PyObject *tmp_len_arg_1;
    if ( par_initialization_vector == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "initialization_vector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 211;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_len_arg_1 = par_initialization_vector;
    tmp_compexpr_left_1 = BUILTIN_LEN( tmp_len_arg_1 );
    if ( tmp_compexpr_left_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 211;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    tmp_compexpr_right_1 = const_int_0;
    tmp_res = RICH_COMPARE_BOOL_EQ( tmp_compexpr_left_1, tmp_compexpr_right_1 );
    Py_DECREF( tmp_compexpr_left_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 211;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_2 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_2 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_2;
    }
    else
    {
        goto branch_no_2;
    }
    branch_yes_2:;
    {
    PyObject *tmp_raise_type_2;
    PyObject *tmp_make_exception_arg_2;
    tmp_make_exception_arg_2 = const_str_digest_eaaef4929e558f8f2d9150675f4b135d;
    frame_3de97a46e9da7f1fff06fe10131a8190->m_frame.f_lineno = 212;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_2 };
        tmp_raise_type_2 = CALL_FUNCTION_WITH_ARGS1( PyExc_ValueError, call_args );
    }

    assert( !(tmp_raise_type_2 == NULL) );
    exception_type = tmp_raise_type_2;
    exception_lineno = 212;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oooo";
    goto frame_exception_exit_1;
    }
    branch_no_2:;
    }
    {
    PyObject *tmp_assattr_name_1;
    PyObject *tmp_assattr_target_1;
    if ( par_initialization_vector == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "initialization_vector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 213;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_name_1 = par_initialization_vector;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 213;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_target_1 = par_self;
    tmp_result = SET_ATTRIBUTE( tmp_assattr_target_1, const_str_plain__initialization_vector, tmp_assattr_name_1 );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 213;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    }
    {
    nuitka_bool tmp_condition_result_3;
    PyObject *tmp_compexpr_left_2;
    PyObject *tmp_compexpr_right_2;
    if ( par_tag == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "tag" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 214;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_compexpr_left_2 = par_tag;
    tmp_compexpr_right_2 = Py_None;
    tmp_condition_result_3 = ( tmp_compexpr_left_2 != tmp_compexpr_right_2 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_3 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_3;
    }
    else
    {
        goto branch_no_3;
    }
    branch_yes_3:;
    {
    nuitka_bool tmp_condition_result_4;
    PyObject *tmp_operand_name_2;
    PyObject *tmp_isinstance_inst_2;
    PyObject *tmp_isinstance_cls_2;
    if ( par_tag == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "tag" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 215;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_isinstance_inst_2 = par_tag;
    tmp_isinstance_cls_2 = (PyObject *)&PyBytes_Type;
    tmp_res = Nuitka_IsInstance( tmp_isinstance_inst_2, tmp_isinstance_cls_2 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 215;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    tmp_operand_name_2 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_2 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 215;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_4 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_4 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_4;
    }
    else
    {
        goto branch_no_4;
    }
    branch_yes_4:;
    {
    PyObject *tmp_raise_type_3;
    PyObject *tmp_make_exception_arg_3;
    tmp_make_exception_arg_3 = const_str_digest_7ed9df7c8177d7289752a5dc61130309;
    frame_3de97a46e9da7f1fff06fe10131a8190->m_frame.f_lineno = 216;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_3 };
        tmp_raise_type_3 = CALL_FUNCTION_WITH_ARGS1( PyExc_TypeError, call_args );
    }

    assert( !(tmp_raise_type_3 == NULL) );
    exception_type = tmp_raise_type_3;
    exception_lineno = 216;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oooo";
    goto frame_exception_exit_1;
    }
    branch_no_4:;
    }
    {
    nuitka_bool tmp_condition_result_5;
    PyObject *tmp_compexpr_left_3;
    PyObject *tmp_compexpr_right_3;
    if ( par_min_tag_length == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "min_tag_length" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 217;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_compexpr_left_3 = par_min_tag_length;
    tmp_compexpr_right_3 = const_int_pos_4;
    tmp_res = RICH_COMPARE_BOOL_LT( tmp_compexpr_left_3, tmp_compexpr_right_3 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 217;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_5 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_5 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_5;
    }
    else
    {
        goto branch_no_5;
    }
    branch_yes_5:;
    {
    PyObject *tmp_raise_type_4;
    PyObject *tmp_make_exception_arg_4;
    tmp_make_exception_arg_4 = const_str_digest_5b8e8cd5cac009365b3640e73a17e51b;
    frame_3de97a46e9da7f1fff06fe10131a8190->m_frame.f_lineno = 218;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_4 };
        tmp_raise_type_4 = CALL_FUNCTION_WITH_ARGS1( PyExc_ValueError, call_args );
    }

    assert( !(tmp_raise_type_4 == NULL) );
    exception_type = tmp_raise_type_4;
    exception_lineno = 218;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oooo";
    goto frame_exception_exit_1;
    }
    branch_no_5:;
    }
    {
    nuitka_bool tmp_condition_result_6;
    PyObject *tmp_compexpr_left_4;
    PyObject *tmp_compexpr_right_4;
    PyObject *tmp_len_arg_2;
    if ( par_tag == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "tag" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 219;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_len_arg_2 = par_tag;
    tmp_compexpr_left_4 = BUILTIN_LEN( tmp_len_arg_2 );
    if ( tmp_compexpr_left_4 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 219;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    if ( par_min_tag_length == NULL )
    {
        Py_DECREF( tmp_compexpr_left_4 );
        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "min_tag_length" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 219;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_compexpr_right_4 = par_min_tag_length;
    tmp_res = RICH_COMPARE_BOOL_LT( tmp_compexpr_left_4, tmp_compexpr_right_4 );
    Py_DECREF( tmp_compexpr_left_4 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 219;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    tmp_condition_result_6 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_6 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_6;
    }
    else
    {
        goto branch_no_6;
    }
    branch_yes_6:;
    {
    PyObject *tmp_raise_type_5;
    PyObject *tmp_make_exception_arg_5;
    PyObject *tmp_called_name_1;
    PyObject *tmp_source_name_1;
    PyObject *tmp_args_element_name_1;
    tmp_source_name_1 = const_str_digest_ff2be3c85f8e5df021c1914da824ecfd;
    tmp_called_name_1 = LOOKUP_ATTRIBUTE( tmp_source_name_1, const_str_plain_format );
    assert( !(tmp_called_name_1 == NULL) );
    if ( par_min_tag_length == NULL )
    {
        Py_DECREF( tmp_called_name_1 );
        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "min_tag_length" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 222;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_args_element_name_1 = par_min_tag_length;
    frame_3de97a46e9da7f1fff06fe10131a8190->m_frame.f_lineno = 221;
    {
        PyObject *call_args[] = { tmp_args_element_name_1 };
        tmp_make_exception_arg_5 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_1, call_args );
    }

    Py_DECREF( tmp_called_name_1 );
    if ( tmp_make_exception_arg_5 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 221;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    frame_3de97a46e9da7f1fff06fe10131a8190->m_frame.f_lineno = 220;
    {
        PyObject *call_args[] = { tmp_make_exception_arg_5 };
        tmp_raise_type_5 = CALL_FUNCTION_WITH_ARGS1( PyExc_ValueError, call_args );
    }

    Py_DECREF( tmp_make_exception_arg_5 );
    assert( !(tmp_raise_type_5 == NULL) );
    exception_type = tmp_raise_type_5;
    exception_lineno = 220;
    RAISE_EXCEPTION_WITH_TYPE( &exception_type, &exception_value, &exception_tb );
    type_description_1 = "oooo";
    goto frame_exception_exit_1;
    }
    branch_no_6:;
    }
    branch_no_3:;
    }
    {
    PyObject *tmp_assattr_name_2;
    PyObject *tmp_assattr_target_2;
    if ( par_tag == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "tag" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 224;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_name_2 = par_tag;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 224;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_target_2 = par_self;
    tmp_result = SET_ATTRIBUTE( tmp_assattr_target_2, const_str_plain__tag, tmp_assattr_name_2 );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 224;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    }
    {
    PyObject *tmp_assattr_name_3;
    PyObject *tmp_assattr_target_3;
    if ( par_min_tag_length == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "min_tag_length" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 225;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_name_3 = par_min_tag_length;
    if ( par_self == NULL )
    {

        exception_type = PyExc_UnboundLocalError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "self" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 225;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }

    tmp_assattr_target_3 = par_self;
    tmp_result = SET_ATTRIBUTE( tmp_assattr_target_3, const_str_plain__min_tag_length, tmp_assattr_name_3 );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 225;
        type_description_1 = "oooo";
        goto frame_exception_exit_1;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_3de97a46e9da7f1fff06fe10131a8190 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_3de97a46e9da7f1fff06fe10131a8190 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_3de97a46e9da7f1fff06fe10131a8190, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_3de97a46e9da7f1fff06fe10131a8190->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_3de97a46e9da7f1fff06fe10131a8190, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_3de97a46e9da7f1fff06fe10131a8190,
        type_description_1,
        par_self,
        par_initialization_vector,
        par_tag,
        par_min_tag_length
    );


    // Release cached frame.
    if ( frame_3de97a46e9da7f1fff06fe10131a8190 == cache_frame_3de97a46e9da7f1fff06fe10131a8190 )
    {
        Py_DECREF( frame_3de97a46e9da7f1fff06fe10131a8190 );
    }
    cache_frame_3de97a46e9da7f1fff06fe10131a8190 = NULL;

    assertFrameObject( frame_3de97a46e9da7f1fff06fe10131a8190 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_18___init__ );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_initialization_vector );
    par_initialization_vector = NULL;

    }
    {
    Py_XDECREF( par_tag );
    par_tag = NULL;

    }
    {
    Py_XDECREF( par_min_tag_length );
    par_min_tag_length = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_initialization_vector );
    par_initialization_vector = NULL;

    }
    {
    Py_XDECREF( par_tag );
    par_tag = NULL;

    }
    {
    Py_XDECREF( par_min_tag_length );
    par_min_tag_length = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_18___init__ );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}


static PyObject *impl_cryptography$hazmat$primitives$ciphers$modes$$$function_19_validate_for_algorithm( struct Nuitka_FunctionObject const *self, PyObject **python_pars )
{
    // Preserve error status for checks
#ifndef __NUITKA_NO_ASSERT__
    NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
#endif

    // Local variable declarations.
    PyObject *par_self = python_pars[ 0 ];
    PyObject *par_algorithm = python_pars[ 1 ];
    struct Nuitka_FrameObject *frame_c021f2b3f7c90cfdbc0d8001d49c788b;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    NUITKA_MAY_BE_UNUSED PyObject *tmp_unused;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    static struct Nuitka_FrameObject *cache_frame_c021f2b3f7c90cfdbc0d8001d49c788b = NULL;
    PyObject *tmp_return_value = NULL;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;

    // Actual function code.
    {
    // Tried code:
    MAKE_OR_REUSE_FRAME( cache_frame_c021f2b3f7c90cfdbc0d8001d49c788b, codeobj_c021f2b3f7c90cfdbc0d8001d49c788b, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *)+sizeof(void *) );
    frame_c021f2b3f7c90cfdbc0d8001d49c788b = cache_frame_c021f2b3f7c90cfdbc0d8001d49c788b;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_c021f2b3f7c90cfdbc0d8001d49c788b );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_c021f2b3f7c90cfdbc0d8001d49c788b ) == 2 ); // Frame stack

    // Framed code:
    {
    PyObject *tmp_called_name_1;
    PyObject *tmp_mvar_value_1;
    PyObject *tmp_args_element_name_1;
    PyObject *tmp_args_element_name_2;
    tmp_mvar_value_1 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_aes_key_length );

    if (unlikely( tmp_mvar_value_1 == NULL ))
    {
        tmp_mvar_value_1 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain__check_aes_key_length );
    }

    if ( tmp_mvar_value_1 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "_check_aes_key_length" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 231;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }

    tmp_called_name_1 = tmp_mvar_value_1;
    CHECK_OBJECT( par_self );
    tmp_args_element_name_1 = par_self;
    CHECK_OBJECT( par_algorithm );
    tmp_args_element_name_2 = par_algorithm;
    frame_c021f2b3f7c90cfdbc0d8001d49c788b->m_frame.f_lineno = 231;
    {
        PyObject *call_args[] = { tmp_args_element_name_1, tmp_args_element_name_2 };
        tmp_unused = CALL_FUNCTION_WITH_ARGS2( tmp_called_name_1, call_args );
    }

    if ( tmp_unused == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 231;
        type_description_1 = "oo";
        goto frame_exception_exit_1;
    }
    Py_DECREF( tmp_unused );
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_c021f2b3f7c90cfdbc0d8001d49c788b );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_1:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_c021f2b3f7c90cfdbc0d8001d49c788b );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_c021f2b3f7c90cfdbc0d8001d49c788b, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_c021f2b3f7c90cfdbc0d8001d49c788b->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_c021f2b3f7c90cfdbc0d8001d49c788b, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_c021f2b3f7c90cfdbc0d8001d49c788b,
        type_description_1,
        par_self,
        par_algorithm
    );


    // Release cached frame.
    if ( frame_c021f2b3f7c90cfdbc0d8001d49c788b == cache_frame_c021f2b3f7c90cfdbc0d8001d49c788b )
    {
        Py_DECREF( frame_c021f2b3f7c90cfdbc0d8001d49c788b );
    }
    cache_frame_c021f2b3f7c90cfdbc0d8001d49c788b = NULL;

    assertFrameObject( frame_c021f2b3f7c90cfdbc0d8001d49c788b );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto try_except_handler_1;

    frame_no_exception_1:;
    {
    tmp_return_value = Py_None;
    Py_INCREF( tmp_return_value );
    goto try_return_handler_1;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_19_validate_for_algorithm );
    return NULL;
    // Return handler code:
    try_return_handler_1:;
    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    goto function_return_exit;
    }
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( par_self );
    par_self = NULL;

    }
    {
    Py_XDECREF( par_algorithm );
    par_algorithm = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto function_exception_exit;
    }
    // End of try:
    }

    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes$$$function_19_validate_for_algorithm );
    return NULL;

function_exception_exit:
    assert( exception_type );
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );

    return NULL;
function_return_exit:

CHECK_OBJECT( tmp_return_value );
assert( had_error || !ERROR_OCCURRED() );
return tmp_return_value;

}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_10___init__(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_10___init__,
        const_str_plain___init__,
#if PYTHON_VERSION >= 300
        const_str_digest_b8a4dfc5aca449b7019ec255a76dc967,
#endif
        codeobj_5e2fe58c19be76b50b1ded20f1545cc9,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_11___init__(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_11___init__,
        const_str_plain___init__,
#if PYTHON_VERSION >= 300
        const_str_digest_05dad013241a53e01fef61673f847b5f,
#endif
        codeobj_b26dafd8a2897c3cca199b3fee1e327b,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_12_validate_for_algorithm(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_12_validate_for_algorithm,
        const_str_plain_validate_for_algorithm,
#if PYTHON_VERSION >= 300
        const_str_digest_1e4e817262ac1657ad2803719e3d1d92,
#endif
        codeobj_1a3fb4b2aa97fbd34c0186d59f5fd1fb,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_13___init__(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_13___init__,
        const_str_plain___init__,
#if PYTHON_VERSION >= 300
        const_str_digest_0ec97fd2b4ce8856215f2cc60777f7c3,
#endif
        codeobj_734d8e0559c9dfa0305b0c7b71837f34,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_14___init__(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_14___init__,
        const_str_plain___init__,
#if PYTHON_VERSION >= 300
        const_str_digest_0ffe80b254e46829960417693b2982bc,
#endif
        codeobj_e419f8058e7962b663065f5a866cd5a2,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_15___init__(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_15___init__,
        const_str_plain___init__,
#if PYTHON_VERSION >= 300
        const_str_digest_4fd4de26e457e1f3606cdd6918745cf8,
#endif
        codeobj_a2b6e4e99d683e920dc3bb7eb91f4ebf,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_16___init__(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_16___init__,
        const_str_plain___init__,
#if PYTHON_VERSION >= 300
        const_str_digest_eed5b8fd57efd6c0d3c87069fdb50b33,
#endif
        codeobj_0731f5547361a477685b9e7b774f6c25,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_17_validate_for_algorithm(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_17_validate_for_algorithm,
        const_str_plain_validate_for_algorithm,
#if PYTHON_VERSION >= 300
        const_str_digest_c0051f1c84f03c63870fb6df14eab57a,
#endif
        codeobj_8c5bbe34a4a4b6698b40794fd6cba861,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_18___init__( PyObject *defaults )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_18___init__,
        const_str_plain___init__,
#if PYTHON_VERSION >= 300
        const_str_digest_d177ba8da2b422eebcc9b589e37b1116,
#endif
        codeobj_3de97a46e9da7f1fff06fe10131a8190,
        defaults,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_19_validate_for_algorithm(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_19_validate_for_algorithm,
        const_str_plain_validate_for_algorithm,
#if PYTHON_VERSION >= 300
        const_str_digest_8d88271f851b302545477c36f4b258ba,
#endif
        codeobj_c021f2b3f7c90cfdbc0d8001d49c788b,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_1_name(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_1_name,
        const_str_plain_name,
#if PYTHON_VERSION >= 300
        const_str_digest_cb3a861bd2e574b09697bda6ccb42a1d,
#endif
        codeobj_6624b9906840c47ab551e3f2f2c7207e,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        const_str_digest_8ed5cda0f4d28df12a981196f62a1b42,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_2_validate_for_algorithm(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_2_validate_for_algorithm,
        const_str_plain_validate_for_algorithm,
#if PYTHON_VERSION >= 300
        const_str_digest_59ed1887c111f4de1576b64b74629e2f,
#endif
        codeobj_a33e868d2b7e513821a0e1efac5b58bb,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        const_str_digest_5020d9a5b89e034fd58f0961dca03421,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_3_initialization_vector(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_3_initialization_vector,
        const_str_plain_initialization_vector,
#if PYTHON_VERSION >= 300
        const_str_digest_ccd57a9d7f210bf9a1ab488d981ae4a2,
#endif
        codeobj_6b81c0cb23e62d92427c34ef484d2ed3,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        const_str_digest_294cd97bbac358075d4b7bb1ef71ed25,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_4_tweak(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_4_tweak,
        const_str_plain_tweak,
#if PYTHON_VERSION >= 300
        const_str_digest_1e04256fecf0917c14256fcdcf70e725,
#endif
        codeobj_5b35403c086263b26aba7434efe739e8,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        const_str_digest_660e0d4b5fcaff641982725568eda7c4,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_5_nonce(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_5_nonce,
        const_str_plain_nonce,
#if PYTHON_VERSION >= 300
        const_str_digest_a0ffa16d6d1759a7dd0b89b28d4d2370,
#endif
        codeobj_7d81fe8d42f41f7ecc0184f980ee7842,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        const_str_digest_8841c86c66f42811f396044407fdea00,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_6_tag(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_6_tag,
        const_str_plain_tag,
#if PYTHON_VERSION >= 300
        const_str_digest_3fad997f68f5a17b4406de93bb15d6ae,
#endif
        codeobj_171e6525193b4214d8e796cf4b7ed8a0,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        const_str_digest_38fc79dfa6223032de52ab115724f2e4,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_7__check_aes_key_length(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_7__check_aes_key_length,
        const_str_plain__check_aes_key_length,
#if PYTHON_VERSION >= 300
        NULL,
#endif
        codeobj_a915826132a68f8096982f5eb7ea6f52,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_8__check_iv_length(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_8__check_iv_length,
        const_str_plain__check_iv_length,
#if PYTHON_VERSION >= 300
        NULL,
#endif
        codeobj_196022c893ceab3f1f278bee9f84e658,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



static PyObject *MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_9__check_iv_and_key_length(  )
{
    struct Nuitka_FunctionObject *result = Nuitka_Function_New(
        impl_cryptography$hazmat$primitives$ciphers$modes$$$function_9__check_iv_and_key_length,
        const_str_plain__check_iv_and_key_length,
#if PYTHON_VERSION >= 300
        NULL,
#endif
        codeobj_6fb7e9afba37b7a7d0e31a485a42a8d5,
        NULL,
#if PYTHON_VERSION >= 300
        NULL,
        NULL,
#endif
        module_cryptography$hazmat$primitives$ciphers$modes,
        NULL,
        0
    );

    return (PyObject *)result;
}



#if PYTHON_VERSION >= 300
static struct PyModuleDef mdef_cryptography$hazmat$primitives$ciphers$modes =
{
    PyModuleDef_HEAD_INIT,
    "cryptography.hazmat.primitives.ciphers.modes",   /* m_name */
    NULL,                /* m_doc */
    -1,                  /* m_size */
    NULL,                /* m_methods */
    NULL,                /* m_reload */
    NULL,                /* m_traverse */
    NULL,                /* m_clear */
    NULL,                /* m_free */
  };
#endif

extern PyObject *const_str_plain___package__;

#if PYTHON_VERSION >= 300
extern PyObject *const_str_dot;

extern PyObject *const_str_plain___loader__;
extern PyObject *metapath_based_loader;
#endif

#if PYTHON_VERSION >= 340
extern PyObject *const_str_plain___spec__;
extern PyObject *const_str_plain__initializing;
#endif

extern void _initCompiledCellType();
extern void _initCompiledGeneratorType();
extern void _initCompiledFunctionType();
extern void _initCompiledMethodType();
extern void _initCompiledFrameType();
#if PYTHON_VERSION >= 350
extern void _initCompiledCoroutineTypes();
#endif
#if PYTHON_VERSION >= 360
extern void _initCompiledAsyncgenTypes();
#endif

// The exported interface to CPython. On import of the module, this function
// gets called. It has to have an exact function name, in cases it's a shared
// library export. This is hidden behind the MOD_INIT_DECL.

MOD_INIT_DECL( cryptography$hazmat$primitives$ciphers$modes )
{
#if defined(_NUITKA_EXE) || PYTHON_VERSION >= 300
    static bool _init_done = false;

    // Modules might be imported repeatedly, which is to be ignored.
    if ( _init_done )
    {
        return MOD_RETURN_VALUE( module_cryptography$hazmat$primitives$ciphers$modes );
    }
    else
    {
        _init_done = true;
    }
#endif

#ifdef _NUITKA_MODULE
    // In case of a stand alone extension module, need to call initialization
    // the init here because that's the first and only time we are going to get
    // called here.

    // Initialize the constant values used.
    _initBuiltinModule();
    createGlobalConstants();

    /* Initialize the compiled types of Nuitka. */
    _initCompiledCellType();
    _initCompiledGeneratorType();
    _initCompiledFunctionType();
    _initCompiledMethodType();
    _initCompiledFrameType();
#if PYTHON_VERSION >= 350
    _initCompiledCoroutineTypes();
#endif
#if PYTHON_VERSION >= 360
    _initCompiledAsyncgenTypes();
#endif

#if PYTHON_VERSION < 300
    _initSlotCompare();
#endif
#if PYTHON_VERSION >= 270
    _initSlotIternext();
#endif

    patchBuiltinModule();
    patchTypeComparison();

    // Enable meta path based loader if not already done.
#ifdef _NUITKA_TRACE
    puts("cryptography.hazmat.primitives.ciphers.modes: Calling setupMetaPathBasedLoader().");
#endif
    setupMetaPathBasedLoader();

#if PYTHON_VERSION >= 300
    patchInspectModule();
#endif

#endif

    /* The constants only used by this module are created now. */
#ifdef _NUITKA_TRACE
    puts("cryptography.hazmat.primitives.ciphers.modes: Calling createModuleConstants().");
#endif
    createModuleConstants();

    /* The code objects used by this module are created now. */
#ifdef _NUITKA_TRACE
    puts("cryptography.hazmat.primitives.ciphers.modes: Calling createModuleCodeObjects().");
#endif
    createModuleCodeObjects();

    // puts( "in initcryptography$hazmat$primitives$ciphers$modes" );

    // Create the module object first. There are no methods initially, all are
    // added dynamically in actual code only.  Also no "__doc__" is initially
    // set at this time, as it could not contain NUL characters this way, they
    // are instead set in early module code.  No "self" for modules, we have no
    // use for it.
#if PYTHON_VERSION < 300
    module_cryptography$hazmat$primitives$ciphers$modes = Py_InitModule4(
        "cryptography.hazmat.primitives.ciphers.modes",       // Module Name
        NULL,                    // No methods initially, all are added
                                 // dynamically in actual module code only.
        NULL,                    // No "__doc__" is initially set, as it could
                                 // not contain NUL this way, added early in
                                 // actual code.
        NULL,                    // No self for modules, we don't use it.
        PYTHON_API_VERSION
    );
#else

    module_cryptography$hazmat$primitives$ciphers$modes = PyModule_Create( &mdef_cryptography$hazmat$primitives$ciphers$modes );
#endif

    moduledict_cryptography$hazmat$primitives$ciphers$modes = MODULE_DICT( module_cryptography$hazmat$primitives$ciphers$modes );

    // Update "__package__" value to what it ought to be.
    {
#if 0
        PyObject *module_name = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___name__ );

        UPDATE_STRING_DICT1(
            moduledict_cryptography$hazmat$primitives$ciphers$modes,
            (Nuitka_StringObject *)const_str_plain___package__,
            module_name
        );

#else

#if PYTHON_VERSION < 300
        PyObject *module_name = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___name__ );
        char const *module_name_cstr = PyString_AS_STRING( module_name );

        char const *last_dot = strrchr( module_name_cstr, '.' );

        if ( last_dot != NULL )
        {
            UPDATE_STRING_DICT1(
                moduledict_cryptography$hazmat$primitives$ciphers$modes,
                (Nuitka_StringObject *)const_str_plain___package__,
                PyString_FromStringAndSize( module_name_cstr, last_dot - module_name_cstr )
            );
        }
#else
        PyObject *module_name = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___name__ );
        Py_ssize_t dot_index = PyUnicode_Find( module_name, const_str_dot, 0, PyUnicode_GetLength( module_name ), -1 );

        if ( dot_index != -1 )
        {
            UPDATE_STRING_DICT1(
                moduledict_cryptography$hazmat$primitives$ciphers$modes,
                (Nuitka_StringObject *)const_str_plain___package__,
                PyUnicode_Substring( module_name, 0, dot_index )
            );
        }
#endif
#endif
    }

    CHECK_OBJECT( module_cryptography$hazmat$primitives$ciphers$modes );

// Seems to work for Python2.7 out of the box, but for Python3, the module
// doesn't automatically enter "sys.modules", so do it manually.
#if PYTHON_VERSION >= 300
    {
        int r = PyObject_SetItem( PySys_GetObject( (char *)"modules" ), const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c, module_cryptography$hazmat$primitives$ciphers$modes );

        assert( r != -1 );
    }
#endif

    // For deep importing of a module we need to have "__builtins__", so we set
    // it ourselves in the same way than CPython does. Note: This must be done
    // before the frame object is allocated, or else it may fail.

    if ( GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___builtins__ ) == NULL )
    {
        PyObject *value = (PyObject *)builtin_module;

        // Check if main module, not a dict then but the module itself.
#if !defined(_NUITKA_EXE) || !0
        value = PyModule_GetDict( value );
#endif

        UPDATE_STRING_DICT0( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___builtins__, value );
    }

#if PYTHON_VERSION >= 300
    UPDATE_STRING_DICT0( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___loader__, metapath_based_loader );
#endif

#if PYTHON_VERSION >= 340
#if 0
    UPDATE_STRING_DICT0( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___spec__, Py_None );
#else
    {
        PyObject *bootstrap_module = PyImport_ImportModule("importlib._bootstrap");
        CHECK_OBJECT( bootstrap_module );
        PyObject *module_spec_class = PyObject_GetAttrString( bootstrap_module, "ModuleSpec" );
        Py_DECREF( bootstrap_module );

        PyObject *args[] = {
            GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___name__ ),
            metapath_based_loader
        };

        PyObject *spec_value = CALL_FUNCTION_WITH_ARGS2(
            module_spec_class,
            args
        );

        SET_ATTRIBUTE( spec_value, const_str_plain__initializing, Py_True );

        UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___spec__, spec_value );

        Py_DECREF( module_spec_class );
    }
#endif
#endif


    // Temp variables if any
    PyObject *outline_0_var___class__ = NULL;
    PyObject *outline_1_var___class__ = NULL;
    PyObject *outline_2_var___class__ = NULL;
    PyObject *outline_3_var___class__ = NULL;
    PyObject *outline_4_var___class__ = NULL;
    PyObject *outline_5_var___class__ = NULL;
    PyObject *outline_6_var___class__ = NULL;
    PyObject *outline_7_var___class__ = NULL;
    PyObject *outline_8_var___class__ = NULL;
    PyObject *outline_9_var___class__ = NULL;
    PyObject *outline_10_var___class__ = NULL;
    PyObject *outline_11_var___class__ = NULL;
    PyObject *outline_12_var___class__ = NULL;
    PyObject *tmp_class_creation_10__bases = NULL;
    PyObject *tmp_class_creation_10__class_decl_dict = NULL;
    PyObject *tmp_class_creation_10__metaclass = NULL;
    PyObject *tmp_class_creation_10__prepared = NULL;
    PyObject *tmp_class_creation_11__bases = NULL;
    PyObject *tmp_class_creation_11__class_decl_dict = NULL;
    PyObject *tmp_class_creation_11__metaclass = NULL;
    PyObject *tmp_class_creation_11__prepared = NULL;
    PyObject *tmp_class_creation_12__bases = NULL;
    PyObject *tmp_class_creation_12__class_decl_dict = NULL;
    PyObject *tmp_class_creation_12__metaclass = NULL;
    PyObject *tmp_class_creation_12__prepared = NULL;
    PyObject *tmp_class_creation_13__bases = NULL;
    PyObject *tmp_class_creation_13__class_decl_dict = NULL;
    PyObject *tmp_class_creation_13__metaclass = NULL;
    PyObject *tmp_class_creation_13__prepared = NULL;
    PyObject *tmp_class_creation_1__bases = NULL;
    PyObject *tmp_class_creation_1__class_decl_dict = NULL;
    PyObject *tmp_class_creation_1__metaclass = NULL;
    PyObject *tmp_class_creation_1__prepared = NULL;
    PyObject *tmp_class_creation_2__bases = NULL;
    PyObject *tmp_class_creation_2__class_decl_dict = NULL;
    PyObject *tmp_class_creation_2__metaclass = NULL;
    PyObject *tmp_class_creation_2__prepared = NULL;
    PyObject *tmp_class_creation_3__bases = NULL;
    PyObject *tmp_class_creation_3__class_decl_dict = NULL;
    PyObject *tmp_class_creation_3__metaclass = NULL;
    PyObject *tmp_class_creation_3__prepared = NULL;
    PyObject *tmp_class_creation_4__bases = NULL;
    PyObject *tmp_class_creation_4__class_decl_dict = NULL;
    PyObject *tmp_class_creation_4__metaclass = NULL;
    PyObject *tmp_class_creation_4__prepared = NULL;
    PyObject *tmp_class_creation_5__bases = NULL;
    PyObject *tmp_class_creation_5__class_decl_dict = NULL;
    PyObject *tmp_class_creation_5__metaclass = NULL;
    PyObject *tmp_class_creation_5__prepared = NULL;
    PyObject *tmp_class_creation_6__bases = NULL;
    PyObject *tmp_class_creation_6__class_decl_dict = NULL;
    PyObject *tmp_class_creation_6__metaclass = NULL;
    PyObject *tmp_class_creation_6__prepared = NULL;
    PyObject *tmp_class_creation_7__bases = NULL;
    PyObject *tmp_class_creation_7__class_decl_dict = NULL;
    PyObject *tmp_class_creation_7__metaclass = NULL;
    PyObject *tmp_class_creation_7__prepared = NULL;
    PyObject *tmp_class_creation_8__bases = NULL;
    PyObject *tmp_class_creation_8__class_decl_dict = NULL;
    PyObject *tmp_class_creation_8__metaclass = NULL;
    PyObject *tmp_class_creation_8__prepared = NULL;
    PyObject *tmp_class_creation_9__bases = NULL;
    PyObject *tmp_class_creation_9__class_decl_dict = NULL;
    PyObject *tmp_class_creation_9__metaclass = NULL;
    PyObject *tmp_class_creation_9__prepared = NULL;
    PyObject *tmp_import_from_1__module = NULL;
    struct Nuitka_FrameObject *frame_0c8f33b4b5f7d4ab629e36d5741bba93;
    NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
    PyObject *exception_type = NULL;
    PyObject *exception_value = NULL;
    PyTracebackObject *exception_tb = NULL;
    NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
    PyObject *exception_keeper_type_1;
    PyObject *exception_keeper_value_1;
    PyTracebackObject *exception_keeper_tb_1;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;
    int tmp_res;
    PyObject *tmp_dictdel_dict;
    PyObject *tmp_dictdel_key;
    bool tmp_result;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_15 = NULL;
    PyObject *tmp_dictset_value;
    struct Nuitka_FrameObject *frame_c189fe3fd50b45efc4da8c1ad9837e2f_2;
    NUITKA_MAY_BE_UNUSED char const *type_description_2 = NULL;
    static struct Nuitka_FrameObject *cache_frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 = NULL;
    PyObject *exception_keeper_type_2;
    PyObject *exception_keeper_value_2;
    PyTracebackObject *exception_keeper_tb_2;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_2;
    PyObject *exception_keeper_type_3;
    PyObject *exception_keeper_value_3;
    PyTracebackObject *exception_keeper_tb_3;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_3;
    PyObject *exception_keeper_type_4;
    PyObject *exception_keeper_value_4;
    PyTracebackObject *exception_keeper_tb_4;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_4;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_31 = NULL;
    struct Nuitka_FrameObject *frame_d8b749131ba245bb75a4feb1f8dc23c6_3;
    NUITKA_MAY_BE_UNUSED char const *type_description_3 = NULL;
    static struct Nuitka_FrameObject *cache_frame_d8b749131ba245bb75a4feb1f8dc23c6_3 = NULL;
    PyObject *exception_keeper_type_5;
    PyObject *exception_keeper_value_5;
    PyTracebackObject *exception_keeper_tb_5;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_5;
    PyObject *exception_keeper_type_6;
    PyObject *exception_keeper_value_6;
    PyTracebackObject *exception_keeper_tb_6;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_6;
    PyObject *exception_keeper_type_7;
    PyObject *exception_keeper_value_7;
    PyTracebackObject *exception_keeper_tb_7;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_7;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_40 = NULL;
    struct Nuitka_FrameObject *frame_0f96b581d5fedaeced00b1453fde4ad3_4;
    NUITKA_MAY_BE_UNUSED char const *type_description_4 = NULL;
    static struct Nuitka_FrameObject *cache_frame_0f96b581d5fedaeced00b1453fde4ad3_4 = NULL;
    PyObject *exception_keeper_type_8;
    PyObject *exception_keeper_value_8;
    PyTracebackObject *exception_keeper_tb_8;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_8;
    PyObject *exception_keeper_type_9;
    PyObject *exception_keeper_value_9;
    PyTracebackObject *exception_keeper_tb_9;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_9;
    PyObject *exception_keeper_type_10;
    PyObject *exception_keeper_value_10;
    PyTracebackObject *exception_keeper_tb_10;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_10;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_49 = NULL;
    struct Nuitka_FrameObject *frame_5e4299d2b0e8338f538a27154b741c2c_5;
    NUITKA_MAY_BE_UNUSED char const *type_description_5 = NULL;
    static struct Nuitka_FrameObject *cache_frame_5e4299d2b0e8338f538a27154b741c2c_5 = NULL;
    PyObject *exception_keeper_type_11;
    PyObject *exception_keeper_value_11;
    PyTracebackObject *exception_keeper_tb_11;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_11;
    PyObject *exception_keeper_type_12;
    PyObject *exception_keeper_value_12;
    PyTracebackObject *exception_keeper_tb_12;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_12;
    PyObject *exception_keeper_type_13;
    PyObject *exception_keeper_value_13;
    PyTracebackObject *exception_keeper_tb_13;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_13;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_58 = NULL;
    struct Nuitka_FrameObject *frame_3c0c887d1845d635711db4d35239eda0_6;
    NUITKA_MAY_BE_UNUSED char const *type_description_6 = NULL;
    static struct Nuitka_FrameObject *cache_frame_3c0c887d1845d635711db4d35239eda0_6 = NULL;
    PyObject *exception_keeper_type_14;
    PyObject *exception_keeper_value_14;
    PyTracebackObject *exception_keeper_tb_14;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_14;
    PyObject *exception_keeper_type_15;
    PyObject *exception_keeper_value_15;
    PyTracebackObject *exception_keeper_tb_15;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_15;
    PyObject *exception_keeper_type_16;
    PyObject *exception_keeper_value_16;
    PyTracebackObject *exception_keeper_tb_16;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_16;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_87 = NULL;
    struct Nuitka_FrameObject *frame_02f24c209831da22d5ce569434f68731_7;
    NUITKA_MAY_BE_UNUSED char const *type_description_7 = NULL;
    static struct Nuitka_FrameObject *cache_frame_02f24c209831da22d5ce569434f68731_7 = NULL;
    PyObject *exception_keeper_type_17;
    PyObject *exception_keeper_value_17;
    PyTracebackObject *exception_keeper_tb_17;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_17;
    PyObject *exception_keeper_type_18;
    PyObject *exception_keeper_value_18;
    PyTracebackObject *exception_keeper_tb_18;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_18;
    PyObject *exception_keeper_type_19;
    PyObject *exception_keeper_value_19;
    PyTracebackObject *exception_keeper_tb_19;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_19;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_102 = NULL;
    struct Nuitka_FrameObject *frame_cbeede5d976db77af134a73024fb34ae_8;
    NUITKA_MAY_BE_UNUSED char const *type_description_8 = NULL;
    static struct Nuitka_FrameObject *cache_frame_cbeede5d976db77af134a73024fb34ae_8 = NULL;
    PyObject *exception_keeper_type_20;
    PyObject *exception_keeper_value_20;
    PyTracebackObject *exception_keeper_tb_20;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_20;
    PyObject *exception_keeper_type_21;
    PyObject *exception_keeper_value_21;
    PyTracebackObject *exception_keeper_tb_21;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_21;
    PyObject *exception_keeper_type_22;
    PyObject *exception_keeper_value_22;
    PyTracebackObject *exception_keeper_tb_22;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_22;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_125 = NULL;
    struct Nuitka_FrameObject *frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9;
    NUITKA_MAY_BE_UNUSED char const *type_description_9 = NULL;
    static struct Nuitka_FrameObject *cache_frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 = NULL;
    PyObject *exception_keeper_type_23;
    PyObject *exception_keeper_value_23;
    PyTracebackObject *exception_keeper_tb_23;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_23;
    PyObject *exception_keeper_type_24;
    PyObject *exception_keeper_value_24;
    PyTracebackObject *exception_keeper_tb_24;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_24;
    PyObject *exception_keeper_type_25;
    PyObject *exception_keeper_value_25;
    PyTracebackObject *exception_keeper_tb_25;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_25;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_133 = NULL;
    struct Nuitka_FrameObject *frame_f9d064097d084f21e7a65220f71dfa67_10;
    NUITKA_MAY_BE_UNUSED char const *type_description_10 = NULL;
    static struct Nuitka_FrameObject *cache_frame_f9d064097d084f21e7a65220f71dfa67_10 = NULL;
    PyObject *exception_keeper_type_26;
    PyObject *exception_keeper_value_26;
    PyTracebackObject *exception_keeper_tb_26;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_26;
    PyObject *exception_keeper_type_27;
    PyObject *exception_keeper_value_27;
    PyTracebackObject *exception_keeper_tb_27;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_27;
    PyObject *exception_keeper_type_28;
    PyObject *exception_keeper_value_28;
    PyTracebackObject *exception_keeper_tb_28;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_28;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_148 = NULL;
    struct Nuitka_FrameObject *frame_a2f3ffb099ee1757765dc8d6d5b64e75_11;
    NUITKA_MAY_BE_UNUSED char const *type_description_11 = NULL;
    static struct Nuitka_FrameObject *cache_frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 = NULL;
    PyObject *exception_keeper_type_29;
    PyObject *exception_keeper_value_29;
    PyTracebackObject *exception_keeper_tb_29;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_29;
    PyObject *exception_keeper_type_30;
    PyObject *exception_keeper_value_30;
    PyTracebackObject *exception_keeper_tb_30;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_30;
    PyObject *exception_keeper_type_31;
    PyObject *exception_keeper_value_31;
    PyTracebackObject *exception_keeper_tb_31;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_31;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_163 = NULL;
    struct Nuitka_FrameObject *frame_1a6147609d04fd0908f4be17a979cb0a_12;
    NUITKA_MAY_BE_UNUSED char const *type_description_12 = NULL;
    static struct Nuitka_FrameObject *cache_frame_1a6147609d04fd0908f4be17a979cb0a_12 = NULL;
    PyObject *exception_keeper_type_32;
    PyObject *exception_keeper_value_32;
    PyTracebackObject *exception_keeper_tb_32;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_32;
    PyObject *exception_keeper_type_33;
    PyObject *exception_keeper_value_33;
    PyTracebackObject *exception_keeper_tb_33;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_33;
    PyObject *exception_keeper_type_34;
    PyObject *exception_keeper_value_34;
    PyTracebackObject *exception_keeper_tb_34;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_34;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_178 = NULL;
    struct Nuitka_FrameObject *frame_a0d72cc4e56b2259779d5d13191432d5_13;
    NUITKA_MAY_BE_UNUSED char const *type_description_13 = NULL;
    static struct Nuitka_FrameObject *cache_frame_a0d72cc4e56b2259779d5d13191432d5_13 = NULL;
    PyObject *exception_keeper_type_35;
    PyObject *exception_keeper_value_35;
    PyTracebackObject *exception_keeper_tb_35;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_35;
    PyObject *exception_keeper_type_36;
    PyObject *exception_keeper_value_36;
    PyTracebackObject *exception_keeper_tb_36;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_36;
    PyObject *exception_keeper_type_37;
    PyObject *exception_keeper_value_37;
    PyTracebackObject *exception_keeper_tb_37;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_37;
    PyObject *locals_cryptography$hazmat$primitives$ciphers$modes_200 = NULL;
    struct Nuitka_FrameObject *frame_7ffef1106e2cd64bf494748379b6491e_14;
    NUITKA_MAY_BE_UNUSED char const *type_description_14 = NULL;
    static struct Nuitka_FrameObject *cache_frame_7ffef1106e2cd64bf494748379b6491e_14 = NULL;
    PyObject *exception_keeper_type_38;
    PyObject *exception_keeper_value_38;
    PyTracebackObject *exception_keeper_tb_38;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_38;
    PyObject *exception_keeper_type_39;
    PyObject *exception_keeper_value_39;
    PyTracebackObject *exception_keeper_tb_39;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_39;
    PyObject *exception_keeper_type_40;
    PyObject *exception_keeper_value_40;
    PyTracebackObject *exception_keeper_tb_40;
    NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_40;

    // Module code.
    {
    PyObject *tmp_assign_source_1;
    tmp_assign_source_1 = Py_None;
    UPDATE_STRING_DICT0( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___doc__, tmp_assign_source_1 );
    }
    {
    PyObject *tmp_assign_source_2;
    tmp_assign_source_2 = const_str_digest_ab85ad6c79a229d99310356b2fbdb0a5;
    UPDATE_STRING_DICT0( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___file__, tmp_assign_source_2 );
    }
    {
    PyObject *tmp_assign_source_3;
    tmp_assign_source_3 = Py_None;
    UPDATE_STRING_DICT0( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain___cached__, tmp_assign_source_3 );
    }
    {
    PyObject *tmp_assign_source_4;
    tmp_assign_source_4 = PyImport_ImportModule("__future__");
    assert( !(tmp_assign_source_4 == NULL) );
    assert( tmp_import_from_1__module == NULL );
    Py_INCREF( tmp_assign_source_4 );
    tmp_import_from_1__module = tmp_assign_source_4;

    }
    // Frame without reuse.
    frame_0c8f33b4b5f7d4ab629e36d5741bba93 = MAKE_MODULE_FRAME( codeobj_0c8f33b4b5f7d4ab629e36d5741bba93, module_cryptography$hazmat$primitives$ciphers$modes );

    // Push the new frame as the currently active one, and we should be exclusively
    // owning it.
    pushFrameStack( frame_0c8f33b4b5f7d4ab629e36d5741bba93 );
    assert( Py_REFCNT( frame_0c8f33b4b5f7d4ab629e36d5741bba93 ) == 2 );

    // Framed code:
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_5;
    PyObject *tmp_import_name_from_1;
    CHECK_OBJECT( tmp_import_from_1__module );
    tmp_import_name_from_1 = tmp_import_from_1__module;
    tmp_assign_source_5 = IMPORT_NAME( tmp_import_name_from_1, const_str_plain_absolute_import );
    if ( tmp_assign_source_5 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 5;

        goto try_except_handler_1;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_absolute_import, tmp_assign_source_5 );
    }
    {
    PyObject *tmp_assign_source_6;
    PyObject *tmp_import_name_from_2;
    CHECK_OBJECT( tmp_import_from_1__module );
    tmp_import_name_from_2 = tmp_import_from_1__module;
    tmp_assign_source_6 = IMPORT_NAME( tmp_import_name_from_2, const_str_plain_division );
    if ( tmp_assign_source_6 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 5;

        goto try_except_handler_1;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_division, tmp_assign_source_6 );
    }
    {
    PyObject *tmp_assign_source_7;
    PyObject *tmp_import_name_from_3;
    CHECK_OBJECT( tmp_import_from_1__module );
    tmp_import_name_from_3 = tmp_import_from_1__module;
    tmp_assign_source_7 = IMPORT_NAME( tmp_import_name_from_3, const_str_plain_print_function );
    if ( tmp_assign_source_7 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 5;

        goto try_except_handler_1;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_print_function, tmp_assign_source_7 );
    }
    goto try_end_1;
    // Exception handler code:
    try_except_handler_1:;
    exception_keeper_type_1 = exception_type;
    exception_keeper_value_1 = exception_value;
    exception_keeper_tb_1 = exception_tb;
    exception_keeper_lineno_1 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    CHECK_OBJECT( (PyObject *)tmp_import_from_1__module );
    Py_DECREF( tmp_import_from_1__module );
    tmp_import_from_1__module = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_1;
    exception_value = exception_keeper_value_1;
    exception_tb = exception_keeper_tb_1;
    exception_lineno = exception_keeper_lineno_1;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_1:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_import_from_1__module );
    Py_DECREF( tmp_import_from_1__module );
    tmp_import_from_1__module = NULL;

    }
    {
    PyObject *tmp_assign_source_8;
    PyObject *tmp_name_name_1;
    PyObject *tmp_globals_name_1;
    PyObject *tmp_locals_name_1;
    PyObject *tmp_fromlist_name_1;
    PyObject *tmp_level_name_1;
    tmp_name_name_1 = const_str_plain_abc;
    tmp_globals_name_1 = (PyObject *)moduledict_cryptography$hazmat$primitives$ciphers$modes;
    tmp_locals_name_1 = Py_None;
    tmp_fromlist_name_1 = Py_None;
    tmp_level_name_1 = const_int_0;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 7;
    tmp_assign_source_8 = IMPORT_MODULE5( tmp_name_name_1, tmp_globals_name_1, tmp_locals_name_1, tmp_fromlist_name_1, tmp_level_name_1 );
    if ( tmp_assign_source_8 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 7;

        goto frame_exception_exit_1;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc, tmp_assign_source_8 );
    }
    {
    PyObject *tmp_assign_source_9;
    PyObject *tmp_name_name_2;
    PyObject *tmp_globals_name_2;
    PyObject *tmp_locals_name_2;
    PyObject *tmp_fromlist_name_2;
    PyObject *tmp_level_name_2;
    tmp_name_name_2 = const_str_plain_six;
    tmp_globals_name_2 = (PyObject *)moduledict_cryptography$hazmat$primitives$ciphers$modes;
    tmp_locals_name_2 = Py_None;
    tmp_fromlist_name_2 = Py_None;
    tmp_level_name_2 = const_int_0;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 9;
    tmp_assign_source_9 = IMPORT_MODULE5( tmp_name_name_2, tmp_globals_name_2, tmp_locals_name_2, tmp_fromlist_name_2, tmp_level_name_2 );
    if ( tmp_assign_source_9 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 9;

        goto frame_exception_exit_1;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_six, tmp_assign_source_9 );
    }
    {
    PyObject *tmp_assign_source_10;
    PyObject *tmp_import_name_from_4;
    PyObject *tmp_name_name_3;
    PyObject *tmp_globals_name_3;
    PyObject *tmp_locals_name_3;
    PyObject *tmp_fromlist_name_3;
    PyObject *tmp_level_name_3;
    tmp_name_name_3 = const_str_plain_cryptography;
    tmp_globals_name_3 = (PyObject *)moduledict_cryptography$hazmat$primitives$ciphers$modes;
    tmp_locals_name_3 = Py_None;
    tmp_fromlist_name_3 = const_tuple_str_plain_utils_tuple;
    tmp_level_name_3 = const_int_0;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 11;
    tmp_import_name_from_4 = IMPORT_MODULE5( tmp_name_name_3, tmp_globals_name_3, tmp_locals_name_3, tmp_fromlist_name_3, tmp_level_name_3 );
    if ( tmp_import_name_from_4 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 11;

        goto frame_exception_exit_1;
    }
    tmp_assign_source_10 = IMPORT_NAME( tmp_import_name_from_4, const_str_plain_utils );
    Py_DECREF( tmp_import_name_from_4 );
    if ( tmp_assign_source_10 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 11;

        goto frame_exception_exit_1;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils, tmp_assign_source_10 );
    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_11;
    PyObject *tmp_dircall_arg1_1;
    tmp_dircall_arg1_1 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_1 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_1};
        tmp_assign_source_11 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_11 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    assert( tmp_class_creation_1__bases == NULL );
    tmp_class_creation_1__bases = tmp_assign_source_11;

    }
    {
    PyObject *tmp_assign_source_12;
    tmp_assign_source_12 = PyDict_New();
    assert( tmp_class_creation_1__class_decl_dict == NULL );
    tmp_class_creation_1__class_decl_dict = tmp_assign_source_12;

    }
    {
    PyObject *tmp_assign_source_13;
    PyObject *tmp_metaclass_name_1;
    nuitka_bool tmp_condition_result_1;
    PyObject *tmp_key_name_1;
    PyObject *tmp_dict_name_1;
    PyObject *tmp_dict_name_2;
    PyObject *tmp_key_name_2;
    nuitka_bool tmp_condition_result_2;
    int tmp_truth_name_1;
    PyObject *tmp_type_arg_1;
    PyObject *tmp_subscribed_name_1;
    PyObject *tmp_subscript_name_1;
    PyObject *tmp_bases_name_1;
    tmp_key_name_1 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_1__class_decl_dict );
    tmp_dict_name_1 = tmp_class_creation_1__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_1, tmp_key_name_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    tmp_condition_result_1 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_1 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_1;
    }
    else
    {
        goto condexpr_false_1;
    }
    condexpr_true_1:;
    CHECK_OBJECT( tmp_class_creation_1__class_decl_dict );
    tmp_dict_name_2 = tmp_class_creation_1__class_decl_dict;
    tmp_key_name_2 = const_str_plain_metaclass;
    tmp_metaclass_name_1 = DICT_GET_ITEM( tmp_dict_name_2, tmp_key_name_2 );
    if ( tmp_metaclass_name_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    goto condexpr_end_1;
    condexpr_false_1:;
    CHECK_OBJECT( tmp_class_creation_1__bases );
    tmp_truth_name_1 = CHECK_IF_TRUE( tmp_class_creation_1__bases );
    if ( tmp_truth_name_1 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    tmp_condition_result_2 = tmp_truth_name_1 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_2 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_2;
    }
    else
    {
        goto condexpr_false_2;
    }
    condexpr_true_2:;
    CHECK_OBJECT( tmp_class_creation_1__bases );
    tmp_subscribed_name_1 = tmp_class_creation_1__bases;
    tmp_subscript_name_1 = const_int_0;
    tmp_type_arg_1 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_1, tmp_subscript_name_1, 0 );
    if ( tmp_type_arg_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    tmp_metaclass_name_1 = BUILTIN_TYPE1( tmp_type_arg_1 );
    Py_DECREF( tmp_type_arg_1 );
    if ( tmp_metaclass_name_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    goto condexpr_end_2;
    condexpr_false_2:;
    tmp_metaclass_name_1 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_1 );
    condexpr_end_2:;
    condexpr_end_1:;
    CHECK_OBJECT( tmp_class_creation_1__bases );
    tmp_bases_name_1 = tmp_class_creation_1__bases;
    tmp_assign_source_13 = SELECT_METACLASS( tmp_metaclass_name_1, tmp_bases_name_1 );
    Py_DECREF( tmp_metaclass_name_1 );
    if ( tmp_assign_source_13 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    assert( tmp_class_creation_1__metaclass == NULL );
    tmp_class_creation_1__metaclass = tmp_assign_source_13;

    }
    {
    nuitka_bool tmp_condition_result_3;
    PyObject *tmp_key_name_3;
    PyObject *tmp_dict_name_3;
    tmp_key_name_3 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_1__class_decl_dict );
    tmp_dict_name_3 = tmp_class_creation_1__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_3, tmp_key_name_3 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    tmp_condition_result_3 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_3 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_1;
    }
    else
    {
        goto branch_no_1;
    }
    branch_yes_1:;
    {
    CHECK_OBJECT( tmp_class_creation_1__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_1__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    }
    branch_no_1:;
    }
    {
    nuitka_bool tmp_condition_result_4;
    PyObject *tmp_source_name_1;
    CHECK_OBJECT( tmp_class_creation_1__metaclass );
    tmp_source_name_1 = tmp_class_creation_1__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_1, const_str_plain___prepare__ );
    tmp_condition_result_4 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_4 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_2;
    }
    else
    {
        goto branch_no_2;
    }
    branch_yes_2:;
    {
    PyObject *tmp_assign_source_14;
    PyObject *tmp_called_name_1;
    PyObject *tmp_source_name_2;
    PyObject *tmp_args_name_1;
    PyObject *tmp_tuple_element_1;
    PyObject *tmp_kw_name_1;
    CHECK_OBJECT( tmp_class_creation_1__metaclass );
    tmp_source_name_2 = tmp_class_creation_1__metaclass;
    tmp_called_name_1 = LOOKUP_ATTRIBUTE( tmp_source_name_2, const_str_plain___prepare__ );
    if ( tmp_called_name_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    tmp_tuple_element_1 = const_str_plain_Mode;
    tmp_args_name_1 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_1 );
    PyTuple_SET_ITEM( tmp_args_name_1, 0, tmp_tuple_element_1 );
    CHECK_OBJECT( tmp_class_creation_1__bases );
    tmp_tuple_element_1 = tmp_class_creation_1__bases;
    Py_INCREF( tmp_tuple_element_1 );
    PyTuple_SET_ITEM( tmp_args_name_1, 1, tmp_tuple_element_1 );
    CHECK_OBJECT( tmp_class_creation_1__class_decl_dict );
    tmp_kw_name_1 = tmp_class_creation_1__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 15;
    tmp_assign_source_14 = CALL_FUNCTION( tmp_called_name_1, tmp_args_name_1, tmp_kw_name_1 );
    Py_DECREF( tmp_called_name_1 );
    Py_DECREF( tmp_args_name_1 );
    if ( tmp_assign_source_14 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    assert( tmp_class_creation_1__prepared == NULL );
    tmp_class_creation_1__prepared = tmp_assign_source_14;

    }
    {
    nuitka_bool tmp_condition_result_5;
    PyObject *tmp_operand_name_1;
    PyObject *tmp_source_name_3;
    CHECK_OBJECT( tmp_class_creation_1__prepared );
    tmp_source_name_3 = tmp_class_creation_1__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_3, const_str_plain___getitem__ );
    tmp_operand_name_1 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    tmp_condition_result_5 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_5 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_3;
    }
    else
    {
        goto branch_no_3;
    }
    branch_yes_3:;
    {
    PyObject *tmp_raise_type_1;
    PyObject *tmp_raise_value_1;
    PyObject *tmp_left_name_1;
    PyObject *tmp_right_name_1;
    PyObject *tmp_tuple_element_2;
    PyObject *tmp_getattr_target_1;
    PyObject *tmp_getattr_attr_1;
    PyObject *tmp_getattr_default_1;
    PyObject *tmp_source_name_4;
    PyObject *tmp_type_arg_2;
    tmp_raise_type_1 = PyExc_TypeError;
    tmp_left_name_1 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_1__metaclass );
    tmp_getattr_target_1 = tmp_class_creation_1__metaclass;
    tmp_getattr_attr_1 = const_str_plain___name__;
    tmp_getattr_default_1 = const_str_angle_metaclass;
    tmp_tuple_element_2 = BUILTIN_GETATTR( tmp_getattr_target_1, tmp_getattr_attr_1, tmp_getattr_default_1 );
    if ( tmp_tuple_element_2 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    tmp_right_name_1 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_1, 0, tmp_tuple_element_2 );
    CHECK_OBJECT( tmp_class_creation_1__prepared );
    tmp_type_arg_2 = tmp_class_creation_1__prepared;
    tmp_source_name_4 = BUILTIN_TYPE1( tmp_type_arg_2 );
    assert( !(tmp_source_name_4 == NULL) );
    tmp_tuple_element_2 = LOOKUP_ATTRIBUTE( tmp_source_name_4, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_4 );
    if ( tmp_tuple_element_2 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_1 );

        exception_lineno = 15;

        goto try_except_handler_2;
    }
    PyTuple_SET_ITEM( tmp_right_name_1, 1, tmp_tuple_element_2 );
    tmp_raise_value_1 = BINARY_OPERATION_REMAINDER( tmp_left_name_1, tmp_right_name_1 );
    Py_DECREF( tmp_right_name_1 );
    if ( tmp_raise_value_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_2;
    }
    exception_type = tmp_raise_type_1;
    Py_INCREF( tmp_raise_type_1 );
    exception_value = tmp_raise_value_1;
    exception_lineno = 15;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_2;
    }
    branch_no_3:;
    }
    goto branch_end_2;
    branch_no_2:;
    {
    PyObject *tmp_assign_source_15;
    tmp_assign_source_15 = PyDict_New();
    assert( tmp_class_creation_1__prepared == NULL );
    tmp_class_creation_1__prepared = tmp_assign_source_15;

    }
    branch_end_2:;
    }
    {
    PyObject *tmp_assign_source_16;
    PyObject *tmp_called_name_2;
    PyObject *tmp_called_name_3;
    PyObject *tmp_source_name_5;
    PyObject *tmp_mvar_value_1;
    PyObject *tmp_args_element_name_1;
    PyObject *tmp_source_name_6;
    PyObject *tmp_mvar_value_2;
    PyObject *tmp_args_element_name_2;
    tmp_mvar_value_1 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_six );

    if (unlikely( tmp_mvar_value_1 == NULL ))
    {
        tmp_mvar_value_1 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_six );
    }

    if ( tmp_mvar_value_1 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "six" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 14;

        goto try_except_handler_2;
    }

    tmp_source_name_5 = tmp_mvar_value_1;
    tmp_called_name_3 = LOOKUP_ATTRIBUTE( tmp_source_name_5, const_str_plain_add_metaclass );
    if ( tmp_called_name_3 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 14;

        goto try_except_handler_2;
    }
    tmp_mvar_value_2 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

    if (unlikely( tmp_mvar_value_2 == NULL ))
    {
        tmp_mvar_value_2 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
    }

    if ( tmp_mvar_value_2 == NULL )
    {
        Py_DECREF( tmp_called_name_3 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 14;

        goto try_except_handler_2;
    }

    tmp_source_name_6 = tmp_mvar_value_2;
    tmp_args_element_name_1 = LOOKUP_ATTRIBUTE( tmp_source_name_6, const_str_plain_ABCMeta );
    if ( tmp_args_element_name_1 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_3 );

        exception_lineno = 14;

        goto try_except_handler_2;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 14;
    {
        PyObject *call_args[] = { tmp_args_element_name_1 };
        tmp_called_name_2 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_3, call_args );
    }

    Py_DECREF( tmp_called_name_3 );
    Py_DECREF( tmp_args_element_name_1 );
    if ( tmp_called_name_2 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 14;

        goto try_except_handler_2;
    }
    {
    PyObject *tmp_set_locals_1;
    CHECK_OBJECT( tmp_class_creation_1__prepared );
    tmp_set_locals_1 = tmp_class_creation_1__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_15 = tmp_set_locals_1;
    Py_INCREF( tmp_set_locals_1 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_15, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_4;
    }
    }
    {
    tmp_dictset_value = const_str_plain_Mode;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_15, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_4;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_c189fe3fd50b45efc4da8c1ad9837e2f_2, codeobj_c189fe3fd50b45efc4da8c1ad9837e2f, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 = cache_frame_c189fe3fd50b45efc4da8c1ad9837e2f_2;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 ) == 2 ); // Frame stack

    // Framed code:
    {
    PyObject *tmp_called_instance_1;
    PyObject *tmp_mvar_value_3;
    PyObject *tmp_args_element_name_3;
    tmp_called_instance_1 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_15, const_str_plain_abc );

    if ( tmp_called_instance_1 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_3 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

        if (unlikely( tmp_mvar_value_3 == NULL ))
        {
            tmp_mvar_value_3 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
        }

        if ( tmp_mvar_value_3 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 16;
            type_description_2 = "o";
            goto frame_exception_exit_2;
        }

        tmp_called_instance_1 = tmp_mvar_value_3;
        Py_INCREF( tmp_called_instance_1 );
        }
    }

    tmp_args_element_name_3 = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_1_name(  );



    frame_c189fe3fd50b45efc4da8c1ad9837e2f_2->m_frame.f_lineno = 16;
    {
        PyObject *call_args[] = { tmp_args_element_name_3 };
        tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_1, const_str_plain_abstractproperty, call_args );
    }

    Py_DECREF( tmp_called_instance_1 );
    Py_DECREF( tmp_args_element_name_3 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 16;
        type_description_2 = "o";
        goto frame_exception_exit_2;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_15, const_str_plain_name, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 16;
        type_description_2 = "o";
        goto frame_exception_exit_2;
    }
    }
    {
    PyObject *tmp_called_instance_2;
    PyObject *tmp_mvar_value_4;
    PyObject *tmp_args_element_name_4;
    tmp_called_instance_2 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_15, const_str_plain_abc );

    if ( tmp_called_instance_2 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_4 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

        if (unlikely( tmp_mvar_value_4 == NULL ))
        {
            tmp_mvar_value_4 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
        }

        if ( tmp_mvar_value_4 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 22;
            type_description_2 = "o";
            goto frame_exception_exit_2;
        }

        tmp_called_instance_2 = tmp_mvar_value_4;
        Py_INCREF( tmp_called_instance_2 );
        }
    }

    tmp_args_element_name_4 = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_2_validate_for_algorithm(  );



    frame_c189fe3fd50b45efc4da8c1ad9837e2f_2->m_frame.f_lineno = 22;
    {
        PyObject *call_args[] = { tmp_args_element_name_4 };
        tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_2, const_str_plain_abstractmethod, call_args );
    }

    Py_DECREF( tmp_called_instance_2 );
    Py_DECREF( tmp_args_element_name_4 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 22;
        type_description_2 = "o";
        goto frame_exception_exit_2;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_15, const_str_plain_validate_for_algorithm, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 22;
        type_description_2 = "o";
        goto frame_exception_exit_2;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_1;

    frame_exception_exit_2:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_c189fe3fd50b45efc4da8c1ad9837e2f_2, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_c189fe3fd50b45efc4da8c1ad9837e2f_2->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_c189fe3fd50b45efc4da8c1ad9837e2f_2, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_c189fe3fd50b45efc4da8c1ad9837e2f_2,
        type_description_2,
        outline_0_var___class__
    );


    // Release cached frame.
    if ( frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 == cache_frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 )
    {
        Py_DECREF( frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 );
    }
    cache_frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 = NULL;

    assertFrameObject( frame_c189fe3fd50b45efc4da8c1ad9837e2f_2 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_1;

    frame_no_exception_1:;
    goto skip_nested_handling_1;
    nested_frame_exit_1:;

    goto try_except_handler_4;
    skip_nested_handling_1:;
    {
    nuitka_bool tmp_condition_result_6;
    PyObject *tmp_compexpr_left_1;
    PyObject *tmp_compexpr_right_1;
    CHECK_OBJECT( tmp_class_creation_1__bases );
    tmp_compexpr_left_1 = tmp_class_creation_1__bases;
    tmp_compexpr_right_1 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_1, tmp_compexpr_right_1 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_4;
    }
    tmp_condition_result_6 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_6 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_4;
    }
    else
    {
        goto branch_no_4;
    }
    branch_yes_4:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_15, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_4;
    }
    }
    branch_no_4:;
    }
    {
    PyObject *tmp_assign_source_17;
    PyObject *tmp_called_name_4;
    PyObject *tmp_args_name_2;
    PyObject *tmp_tuple_element_3;
    PyObject *tmp_kw_name_2;
    CHECK_OBJECT( tmp_class_creation_1__metaclass );
    tmp_called_name_4 = tmp_class_creation_1__metaclass;
    tmp_tuple_element_3 = const_str_plain_Mode;
    tmp_args_name_2 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_3 );
    PyTuple_SET_ITEM( tmp_args_name_2, 0, tmp_tuple_element_3 );
    CHECK_OBJECT( tmp_class_creation_1__bases );
    tmp_tuple_element_3 = tmp_class_creation_1__bases;
    Py_INCREF( tmp_tuple_element_3 );
    PyTuple_SET_ITEM( tmp_args_name_2, 1, tmp_tuple_element_3 );
    tmp_tuple_element_3 = locals_cryptography$hazmat$primitives$ciphers$modes_15;
    Py_INCREF( tmp_tuple_element_3 );
    PyTuple_SET_ITEM( tmp_args_name_2, 2, tmp_tuple_element_3 );
    CHECK_OBJECT( tmp_class_creation_1__class_decl_dict );
    tmp_kw_name_2 = tmp_class_creation_1__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 15;
    tmp_assign_source_17 = CALL_FUNCTION( tmp_called_name_4, tmp_args_name_2, tmp_kw_name_2 );
    Py_DECREF( tmp_args_name_2 );
    if ( tmp_assign_source_17 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 15;

        goto try_except_handler_4;
    }
    assert( outline_0_var___class__ == NULL );
    outline_0_var___class__ = tmp_assign_source_17;

    }
    {
    CHECK_OBJECT( outline_0_var___class__ );
    tmp_args_element_name_2 = outline_0_var___class__;
    Py_INCREF( tmp_args_element_name_2 );
    goto try_return_handler_4;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_4:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_15 );
    locals_cryptography$hazmat$primitives$ciphers$modes_15 = NULL;
    }
    {
    goto try_return_handler_3;
    }
    // Exception handler code:
    try_except_handler_4:;
    exception_keeper_type_2 = exception_type;
    exception_keeper_value_2 = exception_value;
    exception_keeper_tb_2 = exception_tb;
    exception_keeper_lineno_2 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_15 );
    locals_cryptography$hazmat$primitives$ciphers$modes_15 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_2;
    exception_value = exception_keeper_value_2;
    exception_tb = exception_keeper_tb_2;
    exception_lineno = exception_keeper_lineno_2;

    goto try_except_handler_3;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_3:;
    {
    CHECK_OBJECT( (PyObject *)outline_0_var___class__ );
    Py_DECREF( outline_0_var___class__ );
    outline_0_var___class__ = NULL;

    }
    {
    goto outline_result_1;
    }
    // Exception handler code:
    try_except_handler_3:;
    exception_keeper_type_3 = exception_type;
    exception_keeper_value_3 = exception_value;
    exception_keeper_tb_3 = exception_tb;
    exception_keeper_lineno_3 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_3;
    exception_value = exception_keeper_value_3;
    exception_tb = exception_keeper_tb_3;
    exception_lineno = exception_keeper_lineno_3;

    goto outline_exception_1;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_1:;
    exception_lineno = 15;
    goto try_except_handler_2;
    outline_result_1:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 14;
    {
        PyObject *call_args[] = { tmp_args_element_name_2 };
        tmp_assign_source_16 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_2, call_args );
    }

    Py_DECREF( tmp_called_name_2 );
    Py_DECREF( tmp_args_element_name_2 );
    if ( tmp_assign_source_16 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 14;

        goto try_except_handler_2;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_Mode, tmp_assign_source_16 );
    }
    goto try_end_2;
    // Exception handler code:
    try_except_handler_2:;
    exception_keeper_type_4 = exception_type;
    exception_keeper_value_4 = exception_value;
    exception_keeper_tb_4 = exception_tb;
    exception_keeper_lineno_4 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_1__bases );
    tmp_class_creation_1__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_1__class_decl_dict );
    tmp_class_creation_1__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_1__metaclass );
    tmp_class_creation_1__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_1__prepared );
    tmp_class_creation_1__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_4;
    exception_value = exception_keeper_value_4;
    exception_tb = exception_keeper_tb_4;
    exception_lineno = exception_keeper_lineno_4;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_2:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_1__bases );
    Py_DECREF( tmp_class_creation_1__bases );
    tmp_class_creation_1__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_1__class_decl_dict );
    Py_DECREF( tmp_class_creation_1__class_decl_dict );
    tmp_class_creation_1__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_1__metaclass );
    Py_DECREF( tmp_class_creation_1__metaclass );
    tmp_class_creation_1__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_1__prepared );
    Py_DECREF( tmp_class_creation_1__prepared );
    tmp_class_creation_1__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_18;
    PyObject *tmp_dircall_arg1_2;
    tmp_dircall_arg1_2 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_2 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_2};
        tmp_assign_source_18 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_18 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    assert( tmp_class_creation_2__bases == NULL );
    tmp_class_creation_2__bases = tmp_assign_source_18;

    }
    {
    PyObject *tmp_assign_source_19;
    tmp_assign_source_19 = PyDict_New();
    assert( tmp_class_creation_2__class_decl_dict == NULL );
    tmp_class_creation_2__class_decl_dict = tmp_assign_source_19;

    }
    {
    PyObject *tmp_assign_source_20;
    PyObject *tmp_metaclass_name_2;
    nuitka_bool tmp_condition_result_7;
    PyObject *tmp_key_name_4;
    PyObject *tmp_dict_name_4;
    PyObject *tmp_dict_name_5;
    PyObject *tmp_key_name_5;
    nuitka_bool tmp_condition_result_8;
    int tmp_truth_name_2;
    PyObject *tmp_type_arg_3;
    PyObject *tmp_subscribed_name_2;
    PyObject *tmp_subscript_name_2;
    PyObject *tmp_bases_name_2;
    tmp_key_name_4 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_2__class_decl_dict );
    tmp_dict_name_4 = tmp_class_creation_2__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_4, tmp_key_name_4 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    tmp_condition_result_7 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_7 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_3;
    }
    else
    {
        goto condexpr_false_3;
    }
    condexpr_true_3:;
    CHECK_OBJECT( tmp_class_creation_2__class_decl_dict );
    tmp_dict_name_5 = tmp_class_creation_2__class_decl_dict;
    tmp_key_name_5 = const_str_plain_metaclass;
    tmp_metaclass_name_2 = DICT_GET_ITEM( tmp_dict_name_5, tmp_key_name_5 );
    if ( tmp_metaclass_name_2 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    goto condexpr_end_3;
    condexpr_false_3:;
    CHECK_OBJECT( tmp_class_creation_2__bases );
    tmp_truth_name_2 = CHECK_IF_TRUE( tmp_class_creation_2__bases );
    if ( tmp_truth_name_2 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    tmp_condition_result_8 = tmp_truth_name_2 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_8 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_4;
    }
    else
    {
        goto condexpr_false_4;
    }
    condexpr_true_4:;
    CHECK_OBJECT( tmp_class_creation_2__bases );
    tmp_subscribed_name_2 = tmp_class_creation_2__bases;
    tmp_subscript_name_2 = const_int_0;
    tmp_type_arg_3 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_2, tmp_subscript_name_2, 0 );
    if ( tmp_type_arg_3 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    tmp_metaclass_name_2 = BUILTIN_TYPE1( tmp_type_arg_3 );
    Py_DECREF( tmp_type_arg_3 );
    if ( tmp_metaclass_name_2 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    goto condexpr_end_4;
    condexpr_false_4:;
    tmp_metaclass_name_2 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_2 );
    condexpr_end_4:;
    condexpr_end_3:;
    CHECK_OBJECT( tmp_class_creation_2__bases );
    tmp_bases_name_2 = tmp_class_creation_2__bases;
    tmp_assign_source_20 = SELECT_METACLASS( tmp_metaclass_name_2, tmp_bases_name_2 );
    Py_DECREF( tmp_metaclass_name_2 );
    if ( tmp_assign_source_20 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    assert( tmp_class_creation_2__metaclass == NULL );
    tmp_class_creation_2__metaclass = tmp_assign_source_20;

    }
    {
    nuitka_bool tmp_condition_result_9;
    PyObject *tmp_key_name_6;
    PyObject *tmp_dict_name_6;
    tmp_key_name_6 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_2__class_decl_dict );
    tmp_dict_name_6 = tmp_class_creation_2__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_6, tmp_key_name_6 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    tmp_condition_result_9 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_9 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_5;
    }
    else
    {
        goto branch_no_5;
    }
    branch_yes_5:;
    {
    CHECK_OBJECT( tmp_class_creation_2__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_2__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    }
    branch_no_5:;
    }
    {
    nuitka_bool tmp_condition_result_10;
    PyObject *tmp_source_name_7;
    CHECK_OBJECT( tmp_class_creation_2__metaclass );
    tmp_source_name_7 = tmp_class_creation_2__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_7, const_str_plain___prepare__ );
    tmp_condition_result_10 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_10 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_6;
    }
    else
    {
        goto branch_no_6;
    }
    branch_yes_6:;
    {
    PyObject *tmp_assign_source_21;
    PyObject *tmp_called_name_5;
    PyObject *tmp_source_name_8;
    PyObject *tmp_args_name_3;
    PyObject *tmp_tuple_element_4;
    PyObject *tmp_kw_name_3;
    CHECK_OBJECT( tmp_class_creation_2__metaclass );
    tmp_source_name_8 = tmp_class_creation_2__metaclass;
    tmp_called_name_5 = LOOKUP_ATTRIBUTE( tmp_source_name_8, const_str_plain___prepare__ );
    if ( tmp_called_name_5 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    tmp_tuple_element_4 = const_str_plain_ModeWithInitializationVector;
    tmp_args_name_3 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_4 );
    PyTuple_SET_ITEM( tmp_args_name_3, 0, tmp_tuple_element_4 );
    CHECK_OBJECT( tmp_class_creation_2__bases );
    tmp_tuple_element_4 = tmp_class_creation_2__bases;
    Py_INCREF( tmp_tuple_element_4 );
    PyTuple_SET_ITEM( tmp_args_name_3, 1, tmp_tuple_element_4 );
    CHECK_OBJECT( tmp_class_creation_2__class_decl_dict );
    tmp_kw_name_3 = tmp_class_creation_2__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 31;
    tmp_assign_source_21 = CALL_FUNCTION( tmp_called_name_5, tmp_args_name_3, tmp_kw_name_3 );
    Py_DECREF( tmp_called_name_5 );
    Py_DECREF( tmp_args_name_3 );
    if ( tmp_assign_source_21 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    assert( tmp_class_creation_2__prepared == NULL );
    tmp_class_creation_2__prepared = tmp_assign_source_21;

    }
    {
    nuitka_bool tmp_condition_result_11;
    PyObject *tmp_operand_name_2;
    PyObject *tmp_source_name_9;
    CHECK_OBJECT( tmp_class_creation_2__prepared );
    tmp_source_name_9 = tmp_class_creation_2__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_9, const_str_plain___getitem__ );
    tmp_operand_name_2 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_2 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    tmp_condition_result_11 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_11 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_7;
    }
    else
    {
        goto branch_no_7;
    }
    branch_yes_7:;
    {
    PyObject *tmp_raise_type_2;
    PyObject *tmp_raise_value_2;
    PyObject *tmp_left_name_2;
    PyObject *tmp_right_name_2;
    PyObject *tmp_tuple_element_5;
    PyObject *tmp_getattr_target_2;
    PyObject *tmp_getattr_attr_2;
    PyObject *tmp_getattr_default_2;
    PyObject *tmp_source_name_10;
    PyObject *tmp_type_arg_4;
    tmp_raise_type_2 = PyExc_TypeError;
    tmp_left_name_2 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_2__metaclass );
    tmp_getattr_target_2 = tmp_class_creation_2__metaclass;
    tmp_getattr_attr_2 = const_str_plain___name__;
    tmp_getattr_default_2 = const_str_angle_metaclass;
    tmp_tuple_element_5 = BUILTIN_GETATTR( tmp_getattr_target_2, tmp_getattr_attr_2, tmp_getattr_default_2 );
    if ( tmp_tuple_element_5 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    tmp_right_name_2 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_2, 0, tmp_tuple_element_5 );
    CHECK_OBJECT( tmp_class_creation_2__prepared );
    tmp_type_arg_4 = tmp_class_creation_2__prepared;
    tmp_source_name_10 = BUILTIN_TYPE1( tmp_type_arg_4 );
    assert( !(tmp_source_name_10 == NULL) );
    tmp_tuple_element_5 = LOOKUP_ATTRIBUTE( tmp_source_name_10, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_10 );
    if ( tmp_tuple_element_5 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_2 );

        exception_lineno = 31;

        goto try_except_handler_5;
    }
    PyTuple_SET_ITEM( tmp_right_name_2, 1, tmp_tuple_element_5 );
    tmp_raise_value_2 = BINARY_OPERATION_REMAINDER( tmp_left_name_2, tmp_right_name_2 );
    Py_DECREF( tmp_right_name_2 );
    if ( tmp_raise_value_2 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_5;
    }
    exception_type = tmp_raise_type_2;
    Py_INCREF( tmp_raise_type_2 );
    exception_value = tmp_raise_value_2;
    exception_lineno = 31;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_5;
    }
    branch_no_7:;
    }
    goto branch_end_6;
    branch_no_6:;
    {
    PyObject *tmp_assign_source_22;
    tmp_assign_source_22 = PyDict_New();
    assert( tmp_class_creation_2__prepared == NULL );
    tmp_class_creation_2__prepared = tmp_assign_source_22;

    }
    branch_end_6:;
    }
    {
    PyObject *tmp_assign_source_23;
    PyObject *tmp_called_name_6;
    PyObject *tmp_called_name_7;
    PyObject *tmp_source_name_11;
    PyObject *tmp_mvar_value_5;
    PyObject *tmp_args_element_name_5;
    PyObject *tmp_source_name_12;
    PyObject *tmp_mvar_value_6;
    PyObject *tmp_args_element_name_6;
    tmp_mvar_value_5 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_six );

    if (unlikely( tmp_mvar_value_5 == NULL ))
    {
        tmp_mvar_value_5 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_six );
    }

    if ( tmp_mvar_value_5 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "six" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 30;

        goto try_except_handler_5;
    }

    tmp_source_name_11 = tmp_mvar_value_5;
    tmp_called_name_7 = LOOKUP_ATTRIBUTE( tmp_source_name_11, const_str_plain_add_metaclass );
    if ( tmp_called_name_7 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 30;

        goto try_except_handler_5;
    }
    tmp_mvar_value_6 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

    if (unlikely( tmp_mvar_value_6 == NULL ))
    {
        tmp_mvar_value_6 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
    }

    if ( tmp_mvar_value_6 == NULL )
    {
        Py_DECREF( tmp_called_name_7 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 30;

        goto try_except_handler_5;
    }

    tmp_source_name_12 = tmp_mvar_value_6;
    tmp_args_element_name_5 = LOOKUP_ATTRIBUTE( tmp_source_name_12, const_str_plain_ABCMeta );
    if ( tmp_args_element_name_5 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_7 );

        exception_lineno = 30;

        goto try_except_handler_5;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 30;
    {
        PyObject *call_args[] = { tmp_args_element_name_5 };
        tmp_called_name_6 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_7, call_args );
    }

    Py_DECREF( tmp_called_name_7 );
    Py_DECREF( tmp_args_element_name_5 );
    if ( tmp_called_name_6 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 30;

        goto try_except_handler_5;
    }
    {
    PyObject *tmp_set_locals_2;
    CHECK_OBJECT( tmp_class_creation_2__prepared );
    tmp_set_locals_2 = tmp_class_creation_2__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_31 = tmp_set_locals_2;
    Py_INCREF( tmp_set_locals_2 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_31, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_7;
    }
    }
    {
    tmp_dictset_value = const_str_plain_ModeWithInitializationVector;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_31, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_7;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_d8b749131ba245bb75a4feb1f8dc23c6_3, codeobj_d8b749131ba245bb75a4feb1f8dc23c6, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_d8b749131ba245bb75a4feb1f8dc23c6_3 = cache_frame_d8b749131ba245bb75a4feb1f8dc23c6_3;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_d8b749131ba245bb75a4feb1f8dc23c6_3 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_d8b749131ba245bb75a4feb1f8dc23c6_3 ) == 2 ); // Frame stack

    // Framed code:
    {
    PyObject *tmp_called_instance_3;
    PyObject *tmp_mvar_value_7;
    PyObject *tmp_args_element_name_7;
    tmp_called_instance_3 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_31, const_str_plain_abc );

    if ( tmp_called_instance_3 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_7 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

        if (unlikely( tmp_mvar_value_7 == NULL ))
        {
            tmp_mvar_value_7 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
        }

        if ( tmp_mvar_value_7 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 32;
            type_description_2 = "o";
            goto frame_exception_exit_3;
        }

        tmp_called_instance_3 = tmp_mvar_value_7;
        Py_INCREF( tmp_called_instance_3 );
        }
    }

    tmp_args_element_name_7 = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_3_initialization_vector(  );



    frame_d8b749131ba245bb75a4feb1f8dc23c6_3->m_frame.f_lineno = 32;
    {
        PyObject *call_args[] = { tmp_args_element_name_7 };
        tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_3, const_str_plain_abstractproperty, call_args );
    }

    Py_DECREF( tmp_called_instance_3 );
    Py_DECREF( tmp_args_element_name_7 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 32;
        type_description_2 = "o";
        goto frame_exception_exit_3;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_31, const_str_plain_initialization_vector, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 32;
        type_description_2 = "o";
        goto frame_exception_exit_3;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_d8b749131ba245bb75a4feb1f8dc23c6_3 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_2;

    frame_exception_exit_3:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_d8b749131ba245bb75a4feb1f8dc23c6_3 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_d8b749131ba245bb75a4feb1f8dc23c6_3, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_d8b749131ba245bb75a4feb1f8dc23c6_3->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_d8b749131ba245bb75a4feb1f8dc23c6_3, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_d8b749131ba245bb75a4feb1f8dc23c6_3,
        type_description_2,
        outline_1_var___class__
    );


    // Release cached frame.
    if ( frame_d8b749131ba245bb75a4feb1f8dc23c6_3 == cache_frame_d8b749131ba245bb75a4feb1f8dc23c6_3 )
    {
        Py_DECREF( frame_d8b749131ba245bb75a4feb1f8dc23c6_3 );
    }
    cache_frame_d8b749131ba245bb75a4feb1f8dc23c6_3 = NULL;

    assertFrameObject( frame_d8b749131ba245bb75a4feb1f8dc23c6_3 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_2;

    frame_no_exception_2:;
    goto skip_nested_handling_2;
    nested_frame_exit_2:;

    goto try_except_handler_7;
    skip_nested_handling_2:;
    {
    nuitka_bool tmp_condition_result_12;
    PyObject *tmp_compexpr_left_2;
    PyObject *tmp_compexpr_right_2;
    CHECK_OBJECT( tmp_class_creation_2__bases );
    tmp_compexpr_left_2 = tmp_class_creation_2__bases;
    tmp_compexpr_right_2 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_2, tmp_compexpr_right_2 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_7;
    }
    tmp_condition_result_12 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_12 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_8;
    }
    else
    {
        goto branch_no_8;
    }
    branch_yes_8:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_31, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_7;
    }
    }
    branch_no_8:;
    }
    {
    PyObject *tmp_assign_source_24;
    PyObject *tmp_called_name_8;
    PyObject *tmp_args_name_4;
    PyObject *tmp_tuple_element_6;
    PyObject *tmp_kw_name_4;
    CHECK_OBJECT( tmp_class_creation_2__metaclass );
    tmp_called_name_8 = tmp_class_creation_2__metaclass;
    tmp_tuple_element_6 = const_str_plain_ModeWithInitializationVector;
    tmp_args_name_4 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_6 );
    PyTuple_SET_ITEM( tmp_args_name_4, 0, tmp_tuple_element_6 );
    CHECK_OBJECT( tmp_class_creation_2__bases );
    tmp_tuple_element_6 = tmp_class_creation_2__bases;
    Py_INCREF( tmp_tuple_element_6 );
    PyTuple_SET_ITEM( tmp_args_name_4, 1, tmp_tuple_element_6 );
    tmp_tuple_element_6 = locals_cryptography$hazmat$primitives$ciphers$modes_31;
    Py_INCREF( tmp_tuple_element_6 );
    PyTuple_SET_ITEM( tmp_args_name_4, 2, tmp_tuple_element_6 );
    CHECK_OBJECT( tmp_class_creation_2__class_decl_dict );
    tmp_kw_name_4 = tmp_class_creation_2__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 31;
    tmp_assign_source_24 = CALL_FUNCTION( tmp_called_name_8, tmp_args_name_4, tmp_kw_name_4 );
    Py_DECREF( tmp_args_name_4 );
    if ( tmp_assign_source_24 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 31;

        goto try_except_handler_7;
    }
    assert( outline_1_var___class__ == NULL );
    outline_1_var___class__ = tmp_assign_source_24;

    }
    {
    CHECK_OBJECT( outline_1_var___class__ );
    tmp_args_element_name_6 = outline_1_var___class__;
    Py_INCREF( tmp_args_element_name_6 );
    goto try_return_handler_7;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_7:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_31 );
    locals_cryptography$hazmat$primitives$ciphers$modes_31 = NULL;
    }
    {
    goto try_return_handler_6;
    }
    // Exception handler code:
    try_except_handler_7:;
    exception_keeper_type_5 = exception_type;
    exception_keeper_value_5 = exception_value;
    exception_keeper_tb_5 = exception_tb;
    exception_keeper_lineno_5 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_31 );
    locals_cryptography$hazmat$primitives$ciphers$modes_31 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_5;
    exception_value = exception_keeper_value_5;
    exception_tb = exception_keeper_tb_5;
    exception_lineno = exception_keeper_lineno_5;

    goto try_except_handler_6;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_6:;
    {
    CHECK_OBJECT( (PyObject *)outline_1_var___class__ );
    Py_DECREF( outline_1_var___class__ );
    outline_1_var___class__ = NULL;

    }
    {
    goto outline_result_2;
    }
    // Exception handler code:
    try_except_handler_6:;
    exception_keeper_type_6 = exception_type;
    exception_keeper_value_6 = exception_value;
    exception_keeper_tb_6 = exception_tb;
    exception_keeper_lineno_6 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_6;
    exception_value = exception_keeper_value_6;
    exception_tb = exception_keeper_tb_6;
    exception_lineno = exception_keeper_lineno_6;

    goto outline_exception_2;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_2:;
    exception_lineno = 31;
    goto try_except_handler_5;
    outline_result_2:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 30;
    {
        PyObject *call_args[] = { tmp_args_element_name_6 };
        tmp_assign_source_23 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_6, call_args );
    }

    Py_DECREF( tmp_called_name_6 );
    Py_DECREF( tmp_args_element_name_6 );
    if ( tmp_assign_source_23 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 30;

        goto try_except_handler_5;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector, tmp_assign_source_23 );
    }
    goto try_end_3;
    // Exception handler code:
    try_except_handler_5:;
    exception_keeper_type_7 = exception_type;
    exception_keeper_value_7 = exception_value;
    exception_keeper_tb_7 = exception_tb;
    exception_keeper_lineno_7 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_2__bases );
    tmp_class_creation_2__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_2__class_decl_dict );
    tmp_class_creation_2__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_2__metaclass );
    tmp_class_creation_2__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_2__prepared );
    tmp_class_creation_2__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_7;
    exception_value = exception_keeper_value_7;
    exception_tb = exception_keeper_tb_7;
    exception_lineno = exception_keeper_lineno_7;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_3:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_2__bases );
    Py_DECREF( tmp_class_creation_2__bases );
    tmp_class_creation_2__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_2__class_decl_dict );
    Py_DECREF( tmp_class_creation_2__class_decl_dict );
    tmp_class_creation_2__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_2__metaclass );
    Py_DECREF( tmp_class_creation_2__metaclass );
    tmp_class_creation_2__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_2__prepared );
    Py_DECREF( tmp_class_creation_2__prepared );
    tmp_class_creation_2__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_25;
    PyObject *tmp_dircall_arg1_3;
    tmp_dircall_arg1_3 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_3 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_3};
        tmp_assign_source_25 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_25 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    assert( tmp_class_creation_3__bases == NULL );
    tmp_class_creation_3__bases = tmp_assign_source_25;

    }
    {
    PyObject *tmp_assign_source_26;
    tmp_assign_source_26 = PyDict_New();
    assert( tmp_class_creation_3__class_decl_dict == NULL );
    tmp_class_creation_3__class_decl_dict = tmp_assign_source_26;

    }
    {
    PyObject *tmp_assign_source_27;
    PyObject *tmp_metaclass_name_3;
    nuitka_bool tmp_condition_result_13;
    PyObject *tmp_key_name_7;
    PyObject *tmp_dict_name_7;
    PyObject *tmp_dict_name_8;
    PyObject *tmp_key_name_8;
    nuitka_bool tmp_condition_result_14;
    int tmp_truth_name_3;
    PyObject *tmp_type_arg_5;
    PyObject *tmp_subscribed_name_3;
    PyObject *tmp_subscript_name_3;
    PyObject *tmp_bases_name_3;
    tmp_key_name_7 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_3__class_decl_dict );
    tmp_dict_name_7 = tmp_class_creation_3__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_7, tmp_key_name_7 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    tmp_condition_result_13 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_13 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_5;
    }
    else
    {
        goto condexpr_false_5;
    }
    condexpr_true_5:;
    CHECK_OBJECT( tmp_class_creation_3__class_decl_dict );
    tmp_dict_name_8 = tmp_class_creation_3__class_decl_dict;
    tmp_key_name_8 = const_str_plain_metaclass;
    tmp_metaclass_name_3 = DICT_GET_ITEM( tmp_dict_name_8, tmp_key_name_8 );
    if ( tmp_metaclass_name_3 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    goto condexpr_end_5;
    condexpr_false_5:;
    CHECK_OBJECT( tmp_class_creation_3__bases );
    tmp_truth_name_3 = CHECK_IF_TRUE( tmp_class_creation_3__bases );
    if ( tmp_truth_name_3 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    tmp_condition_result_14 = tmp_truth_name_3 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_14 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_6;
    }
    else
    {
        goto condexpr_false_6;
    }
    condexpr_true_6:;
    CHECK_OBJECT( tmp_class_creation_3__bases );
    tmp_subscribed_name_3 = tmp_class_creation_3__bases;
    tmp_subscript_name_3 = const_int_0;
    tmp_type_arg_5 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_3, tmp_subscript_name_3, 0 );
    if ( tmp_type_arg_5 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    tmp_metaclass_name_3 = BUILTIN_TYPE1( tmp_type_arg_5 );
    Py_DECREF( tmp_type_arg_5 );
    if ( tmp_metaclass_name_3 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    goto condexpr_end_6;
    condexpr_false_6:;
    tmp_metaclass_name_3 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_3 );
    condexpr_end_6:;
    condexpr_end_5:;
    CHECK_OBJECT( tmp_class_creation_3__bases );
    tmp_bases_name_3 = tmp_class_creation_3__bases;
    tmp_assign_source_27 = SELECT_METACLASS( tmp_metaclass_name_3, tmp_bases_name_3 );
    Py_DECREF( tmp_metaclass_name_3 );
    if ( tmp_assign_source_27 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    assert( tmp_class_creation_3__metaclass == NULL );
    tmp_class_creation_3__metaclass = tmp_assign_source_27;

    }
    {
    nuitka_bool tmp_condition_result_15;
    PyObject *tmp_key_name_9;
    PyObject *tmp_dict_name_9;
    tmp_key_name_9 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_3__class_decl_dict );
    tmp_dict_name_9 = tmp_class_creation_3__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_9, tmp_key_name_9 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    tmp_condition_result_15 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_15 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_9;
    }
    else
    {
        goto branch_no_9;
    }
    branch_yes_9:;
    {
    CHECK_OBJECT( tmp_class_creation_3__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_3__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    }
    branch_no_9:;
    }
    {
    nuitka_bool tmp_condition_result_16;
    PyObject *tmp_source_name_13;
    CHECK_OBJECT( tmp_class_creation_3__metaclass );
    tmp_source_name_13 = tmp_class_creation_3__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_13, const_str_plain___prepare__ );
    tmp_condition_result_16 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_16 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_10;
    }
    else
    {
        goto branch_no_10;
    }
    branch_yes_10:;
    {
    PyObject *tmp_assign_source_28;
    PyObject *tmp_called_name_9;
    PyObject *tmp_source_name_14;
    PyObject *tmp_args_name_5;
    PyObject *tmp_tuple_element_7;
    PyObject *tmp_kw_name_5;
    CHECK_OBJECT( tmp_class_creation_3__metaclass );
    tmp_source_name_14 = tmp_class_creation_3__metaclass;
    tmp_called_name_9 = LOOKUP_ATTRIBUTE( tmp_source_name_14, const_str_plain___prepare__ );
    if ( tmp_called_name_9 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    tmp_tuple_element_7 = const_str_plain_ModeWithTweak;
    tmp_args_name_5 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_7 );
    PyTuple_SET_ITEM( tmp_args_name_5, 0, tmp_tuple_element_7 );
    CHECK_OBJECT( tmp_class_creation_3__bases );
    tmp_tuple_element_7 = tmp_class_creation_3__bases;
    Py_INCREF( tmp_tuple_element_7 );
    PyTuple_SET_ITEM( tmp_args_name_5, 1, tmp_tuple_element_7 );
    CHECK_OBJECT( tmp_class_creation_3__class_decl_dict );
    tmp_kw_name_5 = tmp_class_creation_3__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 40;
    tmp_assign_source_28 = CALL_FUNCTION( tmp_called_name_9, tmp_args_name_5, tmp_kw_name_5 );
    Py_DECREF( tmp_called_name_9 );
    Py_DECREF( tmp_args_name_5 );
    if ( tmp_assign_source_28 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    assert( tmp_class_creation_3__prepared == NULL );
    tmp_class_creation_3__prepared = tmp_assign_source_28;

    }
    {
    nuitka_bool tmp_condition_result_17;
    PyObject *tmp_operand_name_3;
    PyObject *tmp_source_name_15;
    CHECK_OBJECT( tmp_class_creation_3__prepared );
    tmp_source_name_15 = tmp_class_creation_3__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_15, const_str_plain___getitem__ );
    tmp_operand_name_3 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_3 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    tmp_condition_result_17 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_17 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_11;
    }
    else
    {
        goto branch_no_11;
    }
    branch_yes_11:;
    {
    PyObject *tmp_raise_type_3;
    PyObject *tmp_raise_value_3;
    PyObject *tmp_left_name_3;
    PyObject *tmp_right_name_3;
    PyObject *tmp_tuple_element_8;
    PyObject *tmp_getattr_target_3;
    PyObject *tmp_getattr_attr_3;
    PyObject *tmp_getattr_default_3;
    PyObject *tmp_source_name_16;
    PyObject *tmp_type_arg_6;
    tmp_raise_type_3 = PyExc_TypeError;
    tmp_left_name_3 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_3__metaclass );
    tmp_getattr_target_3 = tmp_class_creation_3__metaclass;
    tmp_getattr_attr_3 = const_str_plain___name__;
    tmp_getattr_default_3 = const_str_angle_metaclass;
    tmp_tuple_element_8 = BUILTIN_GETATTR( tmp_getattr_target_3, tmp_getattr_attr_3, tmp_getattr_default_3 );
    if ( tmp_tuple_element_8 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    tmp_right_name_3 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_3, 0, tmp_tuple_element_8 );
    CHECK_OBJECT( tmp_class_creation_3__prepared );
    tmp_type_arg_6 = tmp_class_creation_3__prepared;
    tmp_source_name_16 = BUILTIN_TYPE1( tmp_type_arg_6 );
    assert( !(tmp_source_name_16 == NULL) );
    tmp_tuple_element_8 = LOOKUP_ATTRIBUTE( tmp_source_name_16, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_16 );
    if ( tmp_tuple_element_8 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_3 );

        exception_lineno = 40;

        goto try_except_handler_8;
    }
    PyTuple_SET_ITEM( tmp_right_name_3, 1, tmp_tuple_element_8 );
    tmp_raise_value_3 = BINARY_OPERATION_REMAINDER( tmp_left_name_3, tmp_right_name_3 );
    Py_DECREF( tmp_right_name_3 );
    if ( tmp_raise_value_3 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_8;
    }
    exception_type = tmp_raise_type_3;
    Py_INCREF( tmp_raise_type_3 );
    exception_value = tmp_raise_value_3;
    exception_lineno = 40;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_8;
    }
    branch_no_11:;
    }
    goto branch_end_10;
    branch_no_10:;
    {
    PyObject *tmp_assign_source_29;
    tmp_assign_source_29 = PyDict_New();
    assert( tmp_class_creation_3__prepared == NULL );
    tmp_class_creation_3__prepared = tmp_assign_source_29;

    }
    branch_end_10:;
    }
    {
    PyObject *tmp_assign_source_30;
    PyObject *tmp_called_name_10;
    PyObject *tmp_called_name_11;
    PyObject *tmp_source_name_17;
    PyObject *tmp_mvar_value_8;
    PyObject *tmp_args_element_name_8;
    PyObject *tmp_source_name_18;
    PyObject *tmp_mvar_value_9;
    PyObject *tmp_args_element_name_9;
    tmp_mvar_value_8 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_six );

    if (unlikely( tmp_mvar_value_8 == NULL ))
    {
        tmp_mvar_value_8 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_six );
    }

    if ( tmp_mvar_value_8 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "six" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 39;

        goto try_except_handler_8;
    }

    tmp_source_name_17 = tmp_mvar_value_8;
    tmp_called_name_11 = LOOKUP_ATTRIBUTE( tmp_source_name_17, const_str_plain_add_metaclass );
    if ( tmp_called_name_11 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 39;

        goto try_except_handler_8;
    }
    tmp_mvar_value_9 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

    if (unlikely( tmp_mvar_value_9 == NULL ))
    {
        tmp_mvar_value_9 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
    }

    if ( tmp_mvar_value_9 == NULL )
    {
        Py_DECREF( tmp_called_name_11 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 39;

        goto try_except_handler_8;
    }

    tmp_source_name_18 = tmp_mvar_value_9;
    tmp_args_element_name_8 = LOOKUP_ATTRIBUTE( tmp_source_name_18, const_str_plain_ABCMeta );
    if ( tmp_args_element_name_8 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_11 );

        exception_lineno = 39;

        goto try_except_handler_8;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 39;
    {
        PyObject *call_args[] = { tmp_args_element_name_8 };
        tmp_called_name_10 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_11, call_args );
    }

    Py_DECREF( tmp_called_name_11 );
    Py_DECREF( tmp_args_element_name_8 );
    if ( tmp_called_name_10 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 39;

        goto try_except_handler_8;
    }
    {
    PyObject *tmp_set_locals_3;
    CHECK_OBJECT( tmp_class_creation_3__prepared );
    tmp_set_locals_3 = tmp_class_creation_3__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_40 = tmp_set_locals_3;
    Py_INCREF( tmp_set_locals_3 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_40, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_10;
    }
    }
    {
    tmp_dictset_value = const_str_plain_ModeWithTweak;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_40, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_10;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_0f96b581d5fedaeced00b1453fde4ad3_4, codeobj_0f96b581d5fedaeced00b1453fde4ad3, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_0f96b581d5fedaeced00b1453fde4ad3_4 = cache_frame_0f96b581d5fedaeced00b1453fde4ad3_4;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_0f96b581d5fedaeced00b1453fde4ad3_4 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_0f96b581d5fedaeced00b1453fde4ad3_4 ) == 2 ); // Frame stack

    // Framed code:
    {
    PyObject *tmp_called_instance_4;
    PyObject *tmp_mvar_value_10;
    PyObject *tmp_args_element_name_10;
    tmp_called_instance_4 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_40, const_str_plain_abc );

    if ( tmp_called_instance_4 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_10 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

        if (unlikely( tmp_mvar_value_10 == NULL ))
        {
            tmp_mvar_value_10 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
        }

        if ( tmp_mvar_value_10 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 41;
            type_description_2 = "o";
            goto frame_exception_exit_4;
        }

        tmp_called_instance_4 = tmp_mvar_value_10;
        Py_INCREF( tmp_called_instance_4 );
        }
    }

    tmp_args_element_name_10 = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_4_tweak(  );



    frame_0f96b581d5fedaeced00b1453fde4ad3_4->m_frame.f_lineno = 41;
    {
        PyObject *call_args[] = { tmp_args_element_name_10 };
        tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_4, const_str_plain_abstractproperty, call_args );
    }

    Py_DECREF( tmp_called_instance_4 );
    Py_DECREF( tmp_args_element_name_10 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 41;
        type_description_2 = "o";
        goto frame_exception_exit_4;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_40, const_str_plain_tweak, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 41;
        type_description_2 = "o";
        goto frame_exception_exit_4;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_0f96b581d5fedaeced00b1453fde4ad3_4 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_3;

    frame_exception_exit_4:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_0f96b581d5fedaeced00b1453fde4ad3_4 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_0f96b581d5fedaeced00b1453fde4ad3_4, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_0f96b581d5fedaeced00b1453fde4ad3_4->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_0f96b581d5fedaeced00b1453fde4ad3_4, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_0f96b581d5fedaeced00b1453fde4ad3_4,
        type_description_2,
        outline_2_var___class__
    );


    // Release cached frame.
    if ( frame_0f96b581d5fedaeced00b1453fde4ad3_4 == cache_frame_0f96b581d5fedaeced00b1453fde4ad3_4 )
    {
        Py_DECREF( frame_0f96b581d5fedaeced00b1453fde4ad3_4 );
    }
    cache_frame_0f96b581d5fedaeced00b1453fde4ad3_4 = NULL;

    assertFrameObject( frame_0f96b581d5fedaeced00b1453fde4ad3_4 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_3;

    frame_no_exception_3:;
    goto skip_nested_handling_3;
    nested_frame_exit_3:;

    goto try_except_handler_10;
    skip_nested_handling_3:;
    {
    nuitka_bool tmp_condition_result_18;
    PyObject *tmp_compexpr_left_3;
    PyObject *tmp_compexpr_right_3;
    CHECK_OBJECT( tmp_class_creation_3__bases );
    tmp_compexpr_left_3 = tmp_class_creation_3__bases;
    tmp_compexpr_right_3 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_3, tmp_compexpr_right_3 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_10;
    }
    tmp_condition_result_18 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_18 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_12;
    }
    else
    {
        goto branch_no_12;
    }
    branch_yes_12:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_40, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_10;
    }
    }
    branch_no_12:;
    }
    {
    PyObject *tmp_assign_source_31;
    PyObject *tmp_called_name_12;
    PyObject *tmp_args_name_6;
    PyObject *tmp_tuple_element_9;
    PyObject *tmp_kw_name_6;
    CHECK_OBJECT( tmp_class_creation_3__metaclass );
    tmp_called_name_12 = tmp_class_creation_3__metaclass;
    tmp_tuple_element_9 = const_str_plain_ModeWithTweak;
    tmp_args_name_6 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_9 );
    PyTuple_SET_ITEM( tmp_args_name_6, 0, tmp_tuple_element_9 );
    CHECK_OBJECT( tmp_class_creation_3__bases );
    tmp_tuple_element_9 = tmp_class_creation_3__bases;
    Py_INCREF( tmp_tuple_element_9 );
    PyTuple_SET_ITEM( tmp_args_name_6, 1, tmp_tuple_element_9 );
    tmp_tuple_element_9 = locals_cryptography$hazmat$primitives$ciphers$modes_40;
    Py_INCREF( tmp_tuple_element_9 );
    PyTuple_SET_ITEM( tmp_args_name_6, 2, tmp_tuple_element_9 );
    CHECK_OBJECT( tmp_class_creation_3__class_decl_dict );
    tmp_kw_name_6 = tmp_class_creation_3__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 40;
    tmp_assign_source_31 = CALL_FUNCTION( tmp_called_name_12, tmp_args_name_6, tmp_kw_name_6 );
    Py_DECREF( tmp_args_name_6 );
    if ( tmp_assign_source_31 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 40;

        goto try_except_handler_10;
    }
    assert( outline_2_var___class__ == NULL );
    outline_2_var___class__ = tmp_assign_source_31;

    }
    {
    CHECK_OBJECT( outline_2_var___class__ );
    tmp_args_element_name_9 = outline_2_var___class__;
    Py_INCREF( tmp_args_element_name_9 );
    goto try_return_handler_10;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_10:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_40 );
    locals_cryptography$hazmat$primitives$ciphers$modes_40 = NULL;
    }
    {
    goto try_return_handler_9;
    }
    // Exception handler code:
    try_except_handler_10:;
    exception_keeper_type_8 = exception_type;
    exception_keeper_value_8 = exception_value;
    exception_keeper_tb_8 = exception_tb;
    exception_keeper_lineno_8 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_40 );
    locals_cryptography$hazmat$primitives$ciphers$modes_40 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_8;
    exception_value = exception_keeper_value_8;
    exception_tb = exception_keeper_tb_8;
    exception_lineno = exception_keeper_lineno_8;

    goto try_except_handler_9;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_9:;
    {
    CHECK_OBJECT( (PyObject *)outline_2_var___class__ );
    Py_DECREF( outline_2_var___class__ );
    outline_2_var___class__ = NULL;

    }
    {
    goto outline_result_3;
    }
    // Exception handler code:
    try_except_handler_9:;
    exception_keeper_type_9 = exception_type;
    exception_keeper_value_9 = exception_value;
    exception_keeper_tb_9 = exception_tb;
    exception_keeper_lineno_9 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_9;
    exception_value = exception_keeper_value_9;
    exception_tb = exception_keeper_tb_9;
    exception_lineno = exception_keeper_lineno_9;

    goto outline_exception_3;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_3:;
    exception_lineno = 40;
    goto try_except_handler_8;
    outline_result_3:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 39;
    {
        PyObject *call_args[] = { tmp_args_element_name_9 };
        tmp_assign_source_30 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_10, call_args );
    }

    Py_DECREF( tmp_called_name_10 );
    Py_DECREF( tmp_args_element_name_9 );
    if ( tmp_assign_source_30 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 39;

        goto try_except_handler_8;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithTweak, tmp_assign_source_30 );
    }
    goto try_end_4;
    // Exception handler code:
    try_except_handler_8:;
    exception_keeper_type_10 = exception_type;
    exception_keeper_value_10 = exception_value;
    exception_keeper_tb_10 = exception_tb;
    exception_keeper_lineno_10 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_3__bases );
    tmp_class_creation_3__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_3__class_decl_dict );
    tmp_class_creation_3__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_3__metaclass );
    tmp_class_creation_3__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_3__prepared );
    tmp_class_creation_3__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_10;
    exception_value = exception_keeper_value_10;
    exception_tb = exception_keeper_tb_10;
    exception_lineno = exception_keeper_lineno_10;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_4:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_3__bases );
    Py_DECREF( tmp_class_creation_3__bases );
    tmp_class_creation_3__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_3__class_decl_dict );
    Py_DECREF( tmp_class_creation_3__class_decl_dict );
    tmp_class_creation_3__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_3__metaclass );
    Py_DECREF( tmp_class_creation_3__metaclass );
    tmp_class_creation_3__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_3__prepared );
    Py_DECREF( tmp_class_creation_3__prepared );
    tmp_class_creation_3__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_32;
    PyObject *tmp_dircall_arg1_4;
    tmp_dircall_arg1_4 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_4 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_4};
        tmp_assign_source_32 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_32 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    assert( tmp_class_creation_4__bases == NULL );
    tmp_class_creation_4__bases = tmp_assign_source_32;

    }
    {
    PyObject *tmp_assign_source_33;
    tmp_assign_source_33 = PyDict_New();
    assert( tmp_class_creation_4__class_decl_dict == NULL );
    tmp_class_creation_4__class_decl_dict = tmp_assign_source_33;

    }
    {
    PyObject *tmp_assign_source_34;
    PyObject *tmp_metaclass_name_4;
    nuitka_bool tmp_condition_result_19;
    PyObject *tmp_key_name_10;
    PyObject *tmp_dict_name_10;
    PyObject *tmp_dict_name_11;
    PyObject *tmp_key_name_11;
    nuitka_bool tmp_condition_result_20;
    int tmp_truth_name_4;
    PyObject *tmp_type_arg_7;
    PyObject *tmp_subscribed_name_4;
    PyObject *tmp_subscript_name_4;
    PyObject *tmp_bases_name_4;
    tmp_key_name_10 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_4__class_decl_dict );
    tmp_dict_name_10 = tmp_class_creation_4__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_10, tmp_key_name_10 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    tmp_condition_result_19 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_19 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_7;
    }
    else
    {
        goto condexpr_false_7;
    }
    condexpr_true_7:;
    CHECK_OBJECT( tmp_class_creation_4__class_decl_dict );
    tmp_dict_name_11 = tmp_class_creation_4__class_decl_dict;
    tmp_key_name_11 = const_str_plain_metaclass;
    tmp_metaclass_name_4 = DICT_GET_ITEM( tmp_dict_name_11, tmp_key_name_11 );
    if ( tmp_metaclass_name_4 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    goto condexpr_end_7;
    condexpr_false_7:;
    CHECK_OBJECT( tmp_class_creation_4__bases );
    tmp_truth_name_4 = CHECK_IF_TRUE( tmp_class_creation_4__bases );
    if ( tmp_truth_name_4 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    tmp_condition_result_20 = tmp_truth_name_4 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_20 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_8;
    }
    else
    {
        goto condexpr_false_8;
    }
    condexpr_true_8:;
    CHECK_OBJECT( tmp_class_creation_4__bases );
    tmp_subscribed_name_4 = tmp_class_creation_4__bases;
    tmp_subscript_name_4 = const_int_0;
    tmp_type_arg_7 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_4, tmp_subscript_name_4, 0 );
    if ( tmp_type_arg_7 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    tmp_metaclass_name_4 = BUILTIN_TYPE1( tmp_type_arg_7 );
    Py_DECREF( tmp_type_arg_7 );
    if ( tmp_metaclass_name_4 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    goto condexpr_end_8;
    condexpr_false_8:;
    tmp_metaclass_name_4 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_4 );
    condexpr_end_8:;
    condexpr_end_7:;
    CHECK_OBJECT( tmp_class_creation_4__bases );
    tmp_bases_name_4 = tmp_class_creation_4__bases;
    tmp_assign_source_34 = SELECT_METACLASS( tmp_metaclass_name_4, tmp_bases_name_4 );
    Py_DECREF( tmp_metaclass_name_4 );
    if ( tmp_assign_source_34 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    assert( tmp_class_creation_4__metaclass == NULL );
    tmp_class_creation_4__metaclass = tmp_assign_source_34;

    }
    {
    nuitka_bool tmp_condition_result_21;
    PyObject *tmp_key_name_12;
    PyObject *tmp_dict_name_12;
    tmp_key_name_12 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_4__class_decl_dict );
    tmp_dict_name_12 = tmp_class_creation_4__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_12, tmp_key_name_12 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    tmp_condition_result_21 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_21 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_13;
    }
    else
    {
        goto branch_no_13;
    }
    branch_yes_13:;
    {
    CHECK_OBJECT( tmp_class_creation_4__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_4__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    }
    branch_no_13:;
    }
    {
    nuitka_bool tmp_condition_result_22;
    PyObject *tmp_source_name_19;
    CHECK_OBJECT( tmp_class_creation_4__metaclass );
    tmp_source_name_19 = tmp_class_creation_4__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_19, const_str_plain___prepare__ );
    tmp_condition_result_22 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_22 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_14;
    }
    else
    {
        goto branch_no_14;
    }
    branch_yes_14:;
    {
    PyObject *tmp_assign_source_35;
    PyObject *tmp_called_name_13;
    PyObject *tmp_source_name_20;
    PyObject *tmp_args_name_7;
    PyObject *tmp_tuple_element_10;
    PyObject *tmp_kw_name_7;
    CHECK_OBJECT( tmp_class_creation_4__metaclass );
    tmp_source_name_20 = tmp_class_creation_4__metaclass;
    tmp_called_name_13 = LOOKUP_ATTRIBUTE( tmp_source_name_20, const_str_plain___prepare__ );
    if ( tmp_called_name_13 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    tmp_tuple_element_10 = const_str_plain_ModeWithNonce;
    tmp_args_name_7 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_10 );
    PyTuple_SET_ITEM( tmp_args_name_7, 0, tmp_tuple_element_10 );
    CHECK_OBJECT( tmp_class_creation_4__bases );
    tmp_tuple_element_10 = tmp_class_creation_4__bases;
    Py_INCREF( tmp_tuple_element_10 );
    PyTuple_SET_ITEM( tmp_args_name_7, 1, tmp_tuple_element_10 );
    CHECK_OBJECT( tmp_class_creation_4__class_decl_dict );
    tmp_kw_name_7 = tmp_class_creation_4__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 49;
    tmp_assign_source_35 = CALL_FUNCTION( tmp_called_name_13, tmp_args_name_7, tmp_kw_name_7 );
    Py_DECREF( tmp_called_name_13 );
    Py_DECREF( tmp_args_name_7 );
    if ( tmp_assign_source_35 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    assert( tmp_class_creation_4__prepared == NULL );
    tmp_class_creation_4__prepared = tmp_assign_source_35;

    }
    {
    nuitka_bool tmp_condition_result_23;
    PyObject *tmp_operand_name_4;
    PyObject *tmp_source_name_21;
    CHECK_OBJECT( tmp_class_creation_4__prepared );
    tmp_source_name_21 = tmp_class_creation_4__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_21, const_str_plain___getitem__ );
    tmp_operand_name_4 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_4 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    tmp_condition_result_23 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_23 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_15;
    }
    else
    {
        goto branch_no_15;
    }
    branch_yes_15:;
    {
    PyObject *tmp_raise_type_4;
    PyObject *tmp_raise_value_4;
    PyObject *tmp_left_name_4;
    PyObject *tmp_right_name_4;
    PyObject *tmp_tuple_element_11;
    PyObject *tmp_getattr_target_4;
    PyObject *tmp_getattr_attr_4;
    PyObject *tmp_getattr_default_4;
    PyObject *tmp_source_name_22;
    PyObject *tmp_type_arg_8;
    tmp_raise_type_4 = PyExc_TypeError;
    tmp_left_name_4 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_4__metaclass );
    tmp_getattr_target_4 = tmp_class_creation_4__metaclass;
    tmp_getattr_attr_4 = const_str_plain___name__;
    tmp_getattr_default_4 = const_str_angle_metaclass;
    tmp_tuple_element_11 = BUILTIN_GETATTR( tmp_getattr_target_4, tmp_getattr_attr_4, tmp_getattr_default_4 );
    if ( tmp_tuple_element_11 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    tmp_right_name_4 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_4, 0, tmp_tuple_element_11 );
    CHECK_OBJECT( tmp_class_creation_4__prepared );
    tmp_type_arg_8 = tmp_class_creation_4__prepared;
    tmp_source_name_22 = BUILTIN_TYPE1( tmp_type_arg_8 );
    assert( !(tmp_source_name_22 == NULL) );
    tmp_tuple_element_11 = LOOKUP_ATTRIBUTE( tmp_source_name_22, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_22 );
    if ( tmp_tuple_element_11 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_4 );

        exception_lineno = 49;

        goto try_except_handler_11;
    }
    PyTuple_SET_ITEM( tmp_right_name_4, 1, tmp_tuple_element_11 );
    tmp_raise_value_4 = BINARY_OPERATION_REMAINDER( tmp_left_name_4, tmp_right_name_4 );
    Py_DECREF( tmp_right_name_4 );
    if ( tmp_raise_value_4 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_11;
    }
    exception_type = tmp_raise_type_4;
    Py_INCREF( tmp_raise_type_4 );
    exception_value = tmp_raise_value_4;
    exception_lineno = 49;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_11;
    }
    branch_no_15:;
    }
    goto branch_end_14;
    branch_no_14:;
    {
    PyObject *tmp_assign_source_36;
    tmp_assign_source_36 = PyDict_New();
    assert( tmp_class_creation_4__prepared == NULL );
    tmp_class_creation_4__prepared = tmp_assign_source_36;

    }
    branch_end_14:;
    }
    {
    PyObject *tmp_assign_source_37;
    PyObject *tmp_called_name_14;
    PyObject *tmp_called_name_15;
    PyObject *tmp_source_name_23;
    PyObject *tmp_mvar_value_11;
    PyObject *tmp_args_element_name_11;
    PyObject *tmp_source_name_24;
    PyObject *tmp_mvar_value_12;
    PyObject *tmp_args_element_name_12;
    tmp_mvar_value_11 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_six );

    if (unlikely( tmp_mvar_value_11 == NULL ))
    {
        tmp_mvar_value_11 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_six );
    }

    if ( tmp_mvar_value_11 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "six" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 48;

        goto try_except_handler_11;
    }

    tmp_source_name_23 = tmp_mvar_value_11;
    tmp_called_name_15 = LOOKUP_ATTRIBUTE( tmp_source_name_23, const_str_plain_add_metaclass );
    if ( tmp_called_name_15 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 48;

        goto try_except_handler_11;
    }
    tmp_mvar_value_12 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

    if (unlikely( tmp_mvar_value_12 == NULL ))
    {
        tmp_mvar_value_12 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
    }

    if ( tmp_mvar_value_12 == NULL )
    {
        Py_DECREF( tmp_called_name_15 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 48;

        goto try_except_handler_11;
    }

    tmp_source_name_24 = tmp_mvar_value_12;
    tmp_args_element_name_11 = LOOKUP_ATTRIBUTE( tmp_source_name_24, const_str_plain_ABCMeta );
    if ( tmp_args_element_name_11 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_15 );

        exception_lineno = 48;

        goto try_except_handler_11;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 48;
    {
        PyObject *call_args[] = { tmp_args_element_name_11 };
        tmp_called_name_14 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_15, call_args );
    }

    Py_DECREF( tmp_called_name_15 );
    Py_DECREF( tmp_args_element_name_11 );
    if ( tmp_called_name_14 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 48;

        goto try_except_handler_11;
    }
    {
    PyObject *tmp_set_locals_4;
    CHECK_OBJECT( tmp_class_creation_4__prepared );
    tmp_set_locals_4 = tmp_class_creation_4__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_49 = tmp_set_locals_4;
    Py_INCREF( tmp_set_locals_4 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_49, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_13;
    }
    }
    {
    tmp_dictset_value = const_str_plain_ModeWithNonce;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_49, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_13;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_5e4299d2b0e8338f538a27154b741c2c_5, codeobj_5e4299d2b0e8338f538a27154b741c2c, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_5e4299d2b0e8338f538a27154b741c2c_5 = cache_frame_5e4299d2b0e8338f538a27154b741c2c_5;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_5e4299d2b0e8338f538a27154b741c2c_5 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_5e4299d2b0e8338f538a27154b741c2c_5 ) == 2 ); // Frame stack

    // Framed code:
    {
    PyObject *tmp_called_instance_5;
    PyObject *tmp_mvar_value_13;
    PyObject *tmp_args_element_name_13;
    tmp_called_instance_5 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_49, const_str_plain_abc );

    if ( tmp_called_instance_5 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_13 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

        if (unlikely( tmp_mvar_value_13 == NULL ))
        {
            tmp_mvar_value_13 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
        }

        if ( tmp_mvar_value_13 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 50;
            type_description_2 = "o";
            goto frame_exception_exit_5;
        }

        tmp_called_instance_5 = tmp_mvar_value_13;
        Py_INCREF( tmp_called_instance_5 );
        }
    }

    tmp_args_element_name_13 = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_5_nonce(  );



    frame_5e4299d2b0e8338f538a27154b741c2c_5->m_frame.f_lineno = 50;
    {
        PyObject *call_args[] = { tmp_args_element_name_13 };
        tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_5, const_str_plain_abstractproperty, call_args );
    }

    Py_DECREF( tmp_called_instance_5 );
    Py_DECREF( tmp_args_element_name_13 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 50;
        type_description_2 = "o";
        goto frame_exception_exit_5;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_49, const_str_plain_nonce, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 50;
        type_description_2 = "o";
        goto frame_exception_exit_5;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_5e4299d2b0e8338f538a27154b741c2c_5 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_4;

    frame_exception_exit_5:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_5e4299d2b0e8338f538a27154b741c2c_5 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_5e4299d2b0e8338f538a27154b741c2c_5, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_5e4299d2b0e8338f538a27154b741c2c_5->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_5e4299d2b0e8338f538a27154b741c2c_5, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_5e4299d2b0e8338f538a27154b741c2c_5,
        type_description_2,
        outline_3_var___class__
    );


    // Release cached frame.
    if ( frame_5e4299d2b0e8338f538a27154b741c2c_5 == cache_frame_5e4299d2b0e8338f538a27154b741c2c_5 )
    {
        Py_DECREF( frame_5e4299d2b0e8338f538a27154b741c2c_5 );
    }
    cache_frame_5e4299d2b0e8338f538a27154b741c2c_5 = NULL;

    assertFrameObject( frame_5e4299d2b0e8338f538a27154b741c2c_5 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_4;

    frame_no_exception_4:;
    goto skip_nested_handling_4;
    nested_frame_exit_4:;

    goto try_except_handler_13;
    skip_nested_handling_4:;
    {
    nuitka_bool tmp_condition_result_24;
    PyObject *tmp_compexpr_left_4;
    PyObject *tmp_compexpr_right_4;
    CHECK_OBJECT( tmp_class_creation_4__bases );
    tmp_compexpr_left_4 = tmp_class_creation_4__bases;
    tmp_compexpr_right_4 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_4, tmp_compexpr_right_4 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_13;
    }
    tmp_condition_result_24 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_24 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_16;
    }
    else
    {
        goto branch_no_16;
    }
    branch_yes_16:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_49, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_13;
    }
    }
    branch_no_16:;
    }
    {
    PyObject *tmp_assign_source_38;
    PyObject *tmp_called_name_16;
    PyObject *tmp_args_name_8;
    PyObject *tmp_tuple_element_12;
    PyObject *tmp_kw_name_8;
    CHECK_OBJECT( tmp_class_creation_4__metaclass );
    tmp_called_name_16 = tmp_class_creation_4__metaclass;
    tmp_tuple_element_12 = const_str_plain_ModeWithNonce;
    tmp_args_name_8 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_12 );
    PyTuple_SET_ITEM( tmp_args_name_8, 0, tmp_tuple_element_12 );
    CHECK_OBJECT( tmp_class_creation_4__bases );
    tmp_tuple_element_12 = tmp_class_creation_4__bases;
    Py_INCREF( tmp_tuple_element_12 );
    PyTuple_SET_ITEM( tmp_args_name_8, 1, tmp_tuple_element_12 );
    tmp_tuple_element_12 = locals_cryptography$hazmat$primitives$ciphers$modes_49;
    Py_INCREF( tmp_tuple_element_12 );
    PyTuple_SET_ITEM( tmp_args_name_8, 2, tmp_tuple_element_12 );
    CHECK_OBJECT( tmp_class_creation_4__class_decl_dict );
    tmp_kw_name_8 = tmp_class_creation_4__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 49;
    tmp_assign_source_38 = CALL_FUNCTION( tmp_called_name_16, tmp_args_name_8, tmp_kw_name_8 );
    Py_DECREF( tmp_args_name_8 );
    if ( tmp_assign_source_38 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 49;

        goto try_except_handler_13;
    }
    assert( outline_3_var___class__ == NULL );
    outline_3_var___class__ = tmp_assign_source_38;

    }
    {
    CHECK_OBJECT( outline_3_var___class__ );
    tmp_args_element_name_12 = outline_3_var___class__;
    Py_INCREF( tmp_args_element_name_12 );
    goto try_return_handler_13;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_13:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_49 );
    locals_cryptography$hazmat$primitives$ciphers$modes_49 = NULL;
    }
    {
    goto try_return_handler_12;
    }
    // Exception handler code:
    try_except_handler_13:;
    exception_keeper_type_11 = exception_type;
    exception_keeper_value_11 = exception_value;
    exception_keeper_tb_11 = exception_tb;
    exception_keeper_lineno_11 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_49 );
    locals_cryptography$hazmat$primitives$ciphers$modes_49 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_11;
    exception_value = exception_keeper_value_11;
    exception_tb = exception_keeper_tb_11;
    exception_lineno = exception_keeper_lineno_11;

    goto try_except_handler_12;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_12:;
    {
    CHECK_OBJECT( (PyObject *)outline_3_var___class__ );
    Py_DECREF( outline_3_var___class__ );
    outline_3_var___class__ = NULL;

    }
    {
    goto outline_result_4;
    }
    // Exception handler code:
    try_except_handler_12:;
    exception_keeper_type_12 = exception_type;
    exception_keeper_value_12 = exception_value;
    exception_keeper_tb_12 = exception_tb;
    exception_keeper_lineno_12 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_12;
    exception_value = exception_keeper_value_12;
    exception_tb = exception_keeper_tb_12;
    exception_lineno = exception_keeper_lineno_12;

    goto outline_exception_4;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_4:;
    exception_lineno = 49;
    goto try_except_handler_11;
    outline_result_4:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 48;
    {
        PyObject *call_args[] = { tmp_args_element_name_12 };
        tmp_assign_source_37 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_14, call_args );
    }

    Py_DECREF( tmp_called_name_14 );
    Py_DECREF( tmp_args_element_name_12 );
    if ( tmp_assign_source_37 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 48;

        goto try_except_handler_11;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithNonce, tmp_assign_source_37 );
    }
    goto try_end_5;
    // Exception handler code:
    try_except_handler_11:;
    exception_keeper_type_13 = exception_type;
    exception_keeper_value_13 = exception_value;
    exception_keeper_tb_13 = exception_tb;
    exception_keeper_lineno_13 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_4__bases );
    tmp_class_creation_4__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_4__class_decl_dict );
    tmp_class_creation_4__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_4__metaclass );
    tmp_class_creation_4__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_4__prepared );
    tmp_class_creation_4__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_13;
    exception_value = exception_keeper_value_13;
    exception_tb = exception_keeper_tb_13;
    exception_lineno = exception_keeper_lineno_13;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_5:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_4__bases );
    Py_DECREF( tmp_class_creation_4__bases );
    tmp_class_creation_4__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_4__class_decl_dict );
    Py_DECREF( tmp_class_creation_4__class_decl_dict );
    tmp_class_creation_4__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_4__metaclass );
    Py_DECREF( tmp_class_creation_4__metaclass );
    tmp_class_creation_4__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_4__prepared );
    Py_DECREF( tmp_class_creation_4__prepared );
    tmp_class_creation_4__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_39;
    PyObject *tmp_dircall_arg1_5;
    tmp_dircall_arg1_5 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_5 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_5};
        tmp_assign_source_39 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_39 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    assert( tmp_class_creation_5__bases == NULL );
    tmp_class_creation_5__bases = tmp_assign_source_39;

    }
    {
    PyObject *tmp_assign_source_40;
    tmp_assign_source_40 = PyDict_New();
    assert( tmp_class_creation_5__class_decl_dict == NULL );
    tmp_class_creation_5__class_decl_dict = tmp_assign_source_40;

    }
    {
    PyObject *tmp_assign_source_41;
    PyObject *tmp_metaclass_name_5;
    nuitka_bool tmp_condition_result_25;
    PyObject *tmp_key_name_13;
    PyObject *tmp_dict_name_13;
    PyObject *tmp_dict_name_14;
    PyObject *tmp_key_name_14;
    nuitka_bool tmp_condition_result_26;
    int tmp_truth_name_5;
    PyObject *tmp_type_arg_9;
    PyObject *tmp_subscribed_name_5;
    PyObject *tmp_subscript_name_5;
    PyObject *tmp_bases_name_5;
    tmp_key_name_13 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_5__class_decl_dict );
    tmp_dict_name_13 = tmp_class_creation_5__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_13, tmp_key_name_13 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    tmp_condition_result_25 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_25 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_9;
    }
    else
    {
        goto condexpr_false_9;
    }
    condexpr_true_9:;
    CHECK_OBJECT( tmp_class_creation_5__class_decl_dict );
    tmp_dict_name_14 = tmp_class_creation_5__class_decl_dict;
    tmp_key_name_14 = const_str_plain_metaclass;
    tmp_metaclass_name_5 = DICT_GET_ITEM( tmp_dict_name_14, tmp_key_name_14 );
    if ( tmp_metaclass_name_5 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    goto condexpr_end_9;
    condexpr_false_9:;
    CHECK_OBJECT( tmp_class_creation_5__bases );
    tmp_truth_name_5 = CHECK_IF_TRUE( tmp_class_creation_5__bases );
    if ( tmp_truth_name_5 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    tmp_condition_result_26 = tmp_truth_name_5 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_26 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_10;
    }
    else
    {
        goto condexpr_false_10;
    }
    condexpr_true_10:;
    CHECK_OBJECT( tmp_class_creation_5__bases );
    tmp_subscribed_name_5 = tmp_class_creation_5__bases;
    tmp_subscript_name_5 = const_int_0;
    tmp_type_arg_9 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_5, tmp_subscript_name_5, 0 );
    if ( tmp_type_arg_9 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    tmp_metaclass_name_5 = BUILTIN_TYPE1( tmp_type_arg_9 );
    Py_DECREF( tmp_type_arg_9 );
    if ( tmp_metaclass_name_5 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    goto condexpr_end_10;
    condexpr_false_10:;
    tmp_metaclass_name_5 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_5 );
    condexpr_end_10:;
    condexpr_end_9:;
    CHECK_OBJECT( tmp_class_creation_5__bases );
    tmp_bases_name_5 = tmp_class_creation_5__bases;
    tmp_assign_source_41 = SELECT_METACLASS( tmp_metaclass_name_5, tmp_bases_name_5 );
    Py_DECREF( tmp_metaclass_name_5 );
    if ( tmp_assign_source_41 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    assert( tmp_class_creation_5__metaclass == NULL );
    tmp_class_creation_5__metaclass = tmp_assign_source_41;

    }
    {
    nuitka_bool tmp_condition_result_27;
    PyObject *tmp_key_name_15;
    PyObject *tmp_dict_name_15;
    tmp_key_name_15 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_5__class_decl_dict );
    tmp_dict_name_15 = tmp_class_creation_5__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_15, tmp_key_name_15 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    tmp_condition_result_27 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_27 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_17;
    }
    else
    {
        goto branch_no_17;
    }
    branch_yes_17:;
    {
    CHECK_OBJECT( tmp_class_creation_5__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_5__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    }
    branch_no_17:;
    }
    {
    nuitka_bool tmp_condition_result_28;
    PyObject *tmp_source_name_25;
    CHECK_OBJECT( tmp_class_creation_5__metaclass );
    tmp_source_name_25 = tmp_class_creation_5__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_25, const_str_plain___prepare__ );
    tmp_condition_result_28 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_28 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_18;
    }
    else
    {
        goto branch_no_18;
    }
    branch_yes_18:;
    {
    PyObject *tmp_assign_source_42;
    PyObject *tmp_called_name_17;
    PyObject *tmp_source_name_26;
    PyObject *tmp_args_name_9;
    PyObject *tmp_tuple_element_13;
    PyObject *tmp_kw_name_9;
    CHECK_OBJECT( tmp_class_creation_5__metaclass );
    tmp_source_name_26 = tmp_class_creation_5__metaclass;
    tmp_called_name_17 = LOOKUP_ATTRIBUTE( tmp_source_name_26, const_str_plain___prepare__ );
    if ( tmp_called_name_17 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    tmp_tuple_element_13 = const_str_plain_ModeWithAuthenticationTag;
    tmp_args_name_9 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_13 );
    PyTuple_SET_ITEM( tmp_args_name_9, 0, tmp_tuple_element_13 );
    CHECK_OBJECT( tmp_class_creation_5__bases );
    tmp_tuple_element_13 = tmp_class_creation_5__bases;
    Py_INCREF( tmp_tuple_element_13 );
    PyTuple_SET_ITEM( tmp_args_name_9, 1, tmp_tuple_element_13 );
    CHECK_OBJECT( tmp_class_creation_5__class_decl_dict );
    tmp_kw_name_9 = tmp_class_creation_5__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 58;
    tmp_assign_source_42 = CALL_FUNCTION( tmp_called_name_17, tmp_args_name_9, tmp_kw_name_9 );
    Py_DECREF( tmp_called_name_17 );
    Py_DECREF( tmp_args_name_9 );
    if ( tmp_assign_source_42 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    assert( tmp_class_creation_5__prepared == NULL );
    tmp_class_creation_5__prepared = tmp_assign_source_42;

    }
    {
    nuitka_bool tmp_condition_result_29;
    PyObject *tmp_operand_name_5;
    PyObject *tmp_source_name_27;
    CHECK_OBJECT( tmp_class_creation_5__prepared );
    tmp_source_name_27 = tmp_class_creation_5__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_27, const_str_plain___getitem__ );
    tmp_operand_name_5 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_5 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    tmp_condition_result_29 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_29 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_19;
    }
    else
    {
        goto branch_no_19;
    }
    branch_yes_19:;
    {
    PyObject *tmp_raise_type_5;
    PyObject *tmp_raise_value_5;
    PyObject *tmp_left_name_5;
    PyObject *tmp_right_name_5;
    PyObject *tmp_tuple_element_14;
    PyObject *tmp_getattr_target_5;
    PyObject *tmp_getattr_attr_5;
    PyObject *tmp_getattr_default_5;
    PyObject *tmp_source_name_28;
    PyObject *tmp_type_arg_10;
    tmp_raise_type_5 = PyExc_TypeError;
    tmp_left_name_5 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_5__metaclass );
    tmp_getattr_target_5 = tmp_class_creation_5__metaclass;
    tmp_getattr_attr_5 = const_str_plain___name__;
    tmp_getattr_default_5 = const_str_angle_metaclass;
    tmp_tuple_element_14 = BUILTIN_GETATTR( tmp_getattr_target_5, tmp_getattr_attr_5, tmp_getattr_default_5 );
    if ( tmp_tuple_element_14 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    tmp_right_name_5 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_5, 0, tmp_tuple_element_14 );
    CHECK_OBJECT( tmp_class_creation_5__prepared );
    tmp_type_arg_10 = tmp_class_creation_5__prepared;
    tmp_source_name_28 = BUILTIN_TYPE1( tmp_type_arg_10 );
    assert( !(tmp_source_name_28 == NULL) );
    tmp_tuple_element_14 = LOOKUP_ATTRIBUTE( tmp_source_name_28, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_28 );
    if ( tmp_tuple_element_14 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_5 );

        exception_lineno = 58;

        goto try_except_handler_14;
    }
    PyTuple_SET_ITEM( tmp_right_name_5, 1, tmp_tuple_element_14 );
    tmp_raise_value_5 = BINARY_OPERATION_REMAINDER( tmp_left_name_5, tmp_right_name_5 );
    Py_DECREF( tmp_right_name_5 );
    if ( tmp_raise_value_5 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_14;
    }
    exception_type = tmp_raise_type_5;
    Py_INCREF( tmp_raise_type_5 );
    exception_value = tmp_raise_value_5;
    exception_lineno = 58;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_14;
    }
    branch_no_19:;
    }
    goto branch_end_18;
    branch_no_18:;
    {
    PyObject *tmp_assign_source_43;
    tmp_assign_source_43 = PyDict_New();
    assert( tmp_class_creation_5__prepared == NULL );
    tmp_class_creation_5__prepared = tmp_assign_source_43;

    }
    branch_end_18:;
    }
    {
    PyObject *tmp_assign_source_44;
    PyObject *tmp_called_name_18;
    PyObject *tmp_called_name_19;
    PyObject *tmp_source_name_29;
    PyObject *tmp_mvar_value_14;
    PyObject *tmp_args_element_name_14;
    PyObject *tmp_source_name_30;
    PyObject *tmp_mvar_value_15;
    PyObject *tmp_args_element_name_15;
    tmp_mvar_value_14 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_six );

    if (unlikely( tmp_mvar_value_14 == NULL ))
    {
        tmp_mvar_value_14 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_six );
    }

    if ( tmp_mvar_value_14 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "six" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 57;

        goto try_except_handler_14;
    }

    tmp_source_name_29 = tmp_mvar_value_14;
    tmp_called_name_19 = LOOKUP_ATTRIBUTE( tmp_source_name_29, const_str_plain_add_metaclass );
    if ( tmp_called_name_19 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 57;

        goto try_except_handler_14;
    }
    tmp_mvar_value_15 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

    if (unlikely( tmp_mvar_value_15 == NULL ))
    {
        tmp_mvar_value_15 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
    }

    if ( tmp_mvar_value_15 == NULL )
    {
        Py_DECREF( tmp_called_name_19 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 57;

        goto try_except_handler_14;
    }

    tmp_source_name_30 = tmp_mvar_value_15;
    tmp_args_element_name_14 = LOOKUP_ATTRIBUTE( tmp_source_name_30, const_str_plain_ABCMeta );
    if ( tmp_args_element_name_14 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_19 );

        exception_lineno = 57;

        goto try_except_handler_14;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 57;
    {
        PyObject *call_args[] = { tmp_args_element_name_14 };
        tmp_called_name_18 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_19, call_args );
    }

    Py_DECREF( tmp_called_name_19 );
    Py_DECREF( tmp_args_element_name_14 );
    if ( tmp_called_name_18 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 57;

        goto try_except_handler_14;
    }
    {
    PyObject *tmp_set_locals_5;
    CHECK_OBJECT( tmp_class_creation_5__prepared );
    tmp_set_locals_5 = tmp_class_creation_5__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_58 = tmp_set_locals_5;
    Py_INCREF( tmp_set_locals_5 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_58, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_16;
    }
    }
    {
    tmp_dictset_value = const_str_plain_ModeWithAuthenticationTag;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_58, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_16;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_3c0c887d1845d635711db4d35239eda0_6, codeobj_3c0c887d1845d635711db4d35239eda0, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_3c0c887d1845d635711db4d35239eda0_6 = cache_frame_3c0c887d1845d635711db4d35239eda0_6;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_3c0c887d1845d635711db4d35239eda0_6 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_3c0c887d1845d635711db4d35239eda0_6 ) == 2 ); // Frame stack

    // Framed code:
    {
    PyObject *tmp_called_instance_6;
    PyObject *tmp_mvar_value_16;
    PyObject *tmp_args_element_name_16;
    tmp_called_instance_6 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_58, const_str_plain_abc );

    if ( tmp_called_instance_6 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_16 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_abc );

        if (unlikely( tmp_mvar_value_16 == NULL ))
        {
            tmp_mvar_value_16 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_abc );
        }

        if ( tmp_mvar_value_16 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "abc" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 59;
            type_description_2 = "o";
            goto frame_exception_exit_6;
        }

        tmp_called_instance_6 = tmp_mvar_value_16;
        Py_INCREF( tmp_called_instance_6 );
        }
    }

    tmp_args_element_name_16 = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_6_tag(  );



    frame_3c0c887d1845d635711db4d35239eda0_6->m_frame.f_lineno = 59;
    {
        PyObject *call_args[] = { tmp_args_element_name_16 };
        tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_6, const_str_plain_abstractproperty, call_args );
    }

    Py_DECREF( tmp_called_instance_6 );
    Py_DECREF( tmp_args_element_name_16 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 59;
        type_description_2 = "o";
        goto frame_exception_exit_6;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_58, const_str_plain_tag, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 59;
        type_description_2 = "o";
        goto frame_exception_exit_6;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_3c0c887d1845d635711db4d35239eda0_6 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_5;

    frame_exception_exit_6:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_3c0c887d1845d635711db4d35239eda0_6 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_3c0c887d1845d635711db4d35239eda0_6, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_3c0c887d1845d635711db4d35239eda0_6->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_3c0c887d1845d635711db4d35239eda0_6, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_3c0c887d1845d635711db4d35239eda0_6,
        type_description_2,
        outline_4_var___class__
    );


    // Release cached frame.
    if ( frame_3c0c887d1845d635711db4d35239eda0_6 == cache_frame_3c0c887d1845d635711db4d35239eda0_6 )
    {
        Py_DECREF( frame_3c0c887d1845d635711db4d35239eda0_6 );
    }
    cache_frame_3c0c887d1845d635711db4d35239eda0_6 = NULL;

    assertFrameObject( frame_3c0c887d1845d635711db4d35239eda0_6 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_5;

    frame_no_exception_5:;
    goto skip_nested_handling_5;
    nested_frame_exit_5:;

    goto try_except_handler_16;
    skip_nested_handling_5:;
    {
    nuitka_bool tmp_condition_result_30;
    PyObject *tmp_compexpr_left_5;
    PyObject *tmp_compexpr_right_5;
    CHECK_OBJECT( tmp_class_creation_5__bases );
    tmp_compexpr_left_5 = tmp_class_creation_5__bases;
    tmp_compexpr_right_5 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_5, tmp_compexpr_right_5 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_16;
    }
    tmp_condition_result_30 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_30 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_20;
    }
    else
    {
        goto branch_no_20;
    }
    branch_yes_20:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_58, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_16;
    }
    }
    branch_no_20:;
    }
    {
    PyObject *tmp_assign_source_45;
    PyObject *tmp_called_name_20;
    PyObject *tmp_args_name_10;
    PyObject *tmp_tuple_element_15;
    PyObject *tmp_kw_name_10;
    CHECK_OBJECT( tmp_class_creation_5__metaclass );
    tmp_called_name_20 = tmp_class_creation_5__metaclass;
    tmp_tuple_element_15 = const_str_plain_ModeWithAuthenticationTag;
    tmp_args_name_10 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_15 );
    PyTuple_SET_ITEM( tmp_args_name_10, 0, tmp_tuple_element_15 );
    CHECK_OBJECT( tmp_class_creation_5__bases );
    tmp_tuple_element_15 = tmp_class_creation_5__bases;
    Py_INCREF( tmp_tuple_element_15 );
    PyTuple_SET_ITEM( tmp_args_name_10, 1, tmp_tuple_element_15 );
    tmp_tuple_element_15 = locals_cryptography$hazmat$primitives$ciphers$modes_58;
    Py_INCREF( tmp_tuple_element_15 );
    PyTuple_SET_ITEM( tmp_args_name_10, 2, tmp_tuple_element_15 );
    CHECK_OBJECT( tmp_class_creation_5__class_decl_dict );
    tmp_kw_name_10 = tmp_class_creation_5__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 58;
    tmp_assign_source_45 = CALL_FUNCTION( tmp_called_name_20, tmp_args_name_10, tmp_kw_name_10 );
    Py_DECREF( tmp_args_name_10 );
    if ( tmp_assign_source_45 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 58;

        goto try_except_handler_16;
    }
    assert( outline_4_var___class__ == NULL );
    outline_4_var___class__ = tmp_assign_source_45;

    }
    {
    CHECK_OBJECT( outline_4_var___class__ );
    tmp_args_element_name_15 = outline_4_var___class__;
    Py_INCREF( tmp_args_element_name_15 );
    goto try_return_handler_16;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_16:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_58 );
    locals_cryptography$hazmat$primitives$ciphers$modes_58 = NULL;
    }
    {
    goto try_return_handler_15;
    }
    // Exception handler code:
    try_except_handler_16:;
    exception_keeper_type_14 = exception_type;
    exception_keeper_value_14 = exception_value;
    exception_keeper_tb_14 = exception_tb;
    exception_keeper_lineno_14 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_58 );
    locals_cryptography$hazmat$primitives$ciphers$modes_58 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_14;
    exception_value = exception_keeper_value_14;
    exception_tb = exception_keeper_tb_14;
    exception_lineno = exception_keeper_lineno_14;

    goto try_except_handler_15;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_15:;
    {
    CHECK_OBJECT( (PyObject *)outline_4_var___class__ );
    Py_DECREF( outline_4_var___class__ );
    outline_4_var___class__ = NULL;

    }
    {
    goto outline_result_5;
    }
    // Exception handler code:
    try_except_handler_15:;
    exception_keeper_type_15 = exception_type;
    exception_keeper_value_15 = exception_value;
    exception_keeper_tb_15 = exception_tb;
    exception_keeper_lineno_15 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_15;
    exception_value = exception_keeper_value_15;
    exception_tb = exception_keeper_tb_15;
    exception_lineno = exception_keeper_lineno_15;

    goto outline_exception_5;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_5:;
    exception_lineno = 58;
    goto try_except_handler_14;
    outline_result_5:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 57;
    {
        PyObject *call_args[] = { tmp_args_element_name_15 };
        tmp_assign_source_44 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_18, call_args );
    }

    Py_DECREF( tmp_called_name_18 );
    Py_DECREF( tmp_args_element_name_15 );
    if ( tmp_assign_source_44 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 57;

        goto try_except_handler_14;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithAuthenticationTag, tmp_assign_source_44 );
    }
    goto try_end_6;
    // Exception handler code:
    try_except_handler_14:;
    exception_keeper_type_16 = exception_type;
    exception_keeper_value_16 = exception_value;
    exception_keeper_tb_16 = exception_tb;
    exception_keeper_lineno_16 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_5__bases );
    tmp_class_creation_5__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_5__class_decl_dict );
    tmp_class_creation_5__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_5__metaclass );
    tmp_class_creation_5__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_5__prepared );
    tmp_class_creation_5__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_16;
    exception_value = exception_keeper_value_16;
    exception_tb = exception_keeper_tb_16;
    exception_lineno = exception_keeper_lineno_16;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_6:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_5__bases );
    Py_DECREF( tmp_class_creation_5__bases );
    tmp_class_creation_5__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_5__class_decl_dict );
    Py_DECREF( tmp_class_creation_5__class_decl_dict );
    tmp_class_creation_5__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_5__metaclass );
    Py_DECREF( tmp_class_creation_5__metaclass );
    tmp_class_creation_5__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_5__prepared );
    Py_DECREF( tmp_class_creation_5__prepared );
    tmp_class_creation_5__prepared = NULL;

    }
    {
    PyObject *tmp_assign_source_46;
    tmp_assign_source_46 = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_7__check_aes_key_length(  );



    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_aes_key_length, tmp_assign_source_46 );
    }
    {
    PyObject *tmp_assign_source_47;
    tmp_assign_source_47 = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_8__check_iv_length(  );



    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_iv_length, tmp_assign_source_47 );
    }
    {
    PyObject *tmp_assign_source_48;
    tmp_assign_source_48 = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_9__check_iv_and_key_length(  );



    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_iv_and_key_length, tmp_assign_source_48 );
    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_49;
    PyObject *tmp_dircall_arg1_6;
    tmp_dircall_arg1_6 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_6 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_6};
        tmp_assign_source_49 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_49 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    assert( tmp_class_creation_6__bases == NULL );
    tmp_class_creation_6__bases = tmp_assign_source_49;

    }
    {
    PyObject *tmp_assign_source_50;
    tmp_assign_source_50 = PyDict_New();
    assert( tmp_class_creation_6__class_decl_dict == NULL );
    tmp_class_creation_6__class_decl_dict = tmp_assign_source_50;

    }
    {
    PyObject *tmp_assign_source_51;
    PyObject *tmp_metaclass_name_6;
    nuitka_bool tmp_condition_result_31;
    PyObject *tmp_key_name_16;
    PyObject *tmp_dict_name_16;
    PyObject *tmp_dict_name_17;
    PyObject *tmp_key_name_17;
    nuitka_bool tmp_condition_result_32;
    int tmp_truth_name_6;
    PyObject *tmp_type_arg_11;
    PyObject *tmp_subscribed_name_6;
    PyObject *tmp_subscript_name_6;
    PyObject *tmp_bases_name_6;
    tmp_key_name_16 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_6__class_decl_dict );
    tmp_dict_name_16 = tmp_class_creation_6__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_16, tmp_key_name_16 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    tmp_condition_result_31 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_31 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_11;
    }
    else
    {
        goto condexpr_false_11;
    }
    condexpr_true_11:;
    CHECK_OBJECT( tmp_class_creation_6__class_decl_dict );
    tmp_dict_name_17 = tmp_class_creation_6__class_decl_dict;
    tmp_key_name_17 = const_str_plain_metaclass;
    tmp_metaclass_name_6 = DICT_GET_ITEM( tmp_dict_name_17, tmp_key_name_17 );
    if ( tmp_metaclass_name_6 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    goto condexpr_end_11;
    condexpr_false_11:;
    CHECK_OBJECT( tmp_class_creation_6__bases );
    tmp_truth_name_6 = CHECK_IF_TRUE( tmp_class_creation_6__bases );
    if ( tmp_truth_name_6 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    tmp_condition_result_32 = tmp_truth_name_6 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_32 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_12;
    }
    else
    {
        goto condexpr_false_12;
    }
    condexpr_true_12:;
    CHECK_OBJECT( tmp_class_creation_6__bases );
    tmp_subscribed_name_6 = tmp_class_creation_6__bases;
    tmp_subscript_name_6 = const_int_0;
    tmp_type_arg_11 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_6, tmp_subscript_name_6, 0 );
    if ( tmp_type_arg_11 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    tmp_metaclass_name_6 = BUILTIN_TYPE1( tmp_type_arg_11 );
    Py_DECREF( tmp_type_arg_11 );
    if ( tmp_metaclass_name_6 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    goto condexpr_end_12;
    condexpr_false_12:;
    tmp_metaclass_name_6 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_6 );
    condexpr_end_12:;
    condexpr_end_11:;
    CHECK_OBJECT( tmp_class_creation_6__bases );
    tmp_bases_name_6 = tmp_class_creation_6__bases;
    tmp_assign_source_51 = SELECT_METACLASS( tmp_metaclass_name_6, tmp_bases_name_6 );
    Py_DECREF( tmp_metaclass_name_6 );
    if ( tmp_assign_source_51 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    assert( tmp_class_creation_6__metaclass == NULL );
    tmp_class_creation_6__metaclass = tmp_assign_source_51;

    }
    {
    nuitka_bool tmp_condition_result_33;
    PyObject *tmp_key_name_18;
    PyObject *tmp_dict_name_18;
    tmp_key_name_18 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_6__class_decl_dict );
    tmp_dict_name_18 = tmp_class_creation_6__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_18, tmp_key_name_18 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    tmp_condition_result_33 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_33 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_21;
    }
    else
    {
        goto branch_no_21;
    }
    branch_yes_21:;
    {
    CHECK_OBJECT( tmp_class_creation_6__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_6__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    }
    branch_no_21:;
    }
    {
    nuitka_bool tmp_condition_result_34;
    PyObject *tmp_source_name_31;
    CHECK_OBJECT( tmp_class_creation_6__metaclass );
    tmp_source_name_31 = tmp_class_creation_6__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_31, const_str_plain___prepare__ );
    tmp_condition_result_34 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_34 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_22;
    }
    else
    {
        goto branch_no_22;
    }
    branch_yes_22:;
    {
    PyObject *tmp_assign_source_52;
    PyObject *tmp_called_name_21;
    PyObject *tmp_source_name_32;
    PyObject *tmp_args_name_11;
    PyObject *tmp_tuple_element_16;
    PyObject *tmp_kw_name_11;
    CHECK_OBJECT( tmp_class_creation_6__metaclass );
    tmp_source_name_32 = tmp_class_creation_6__metaclass;
    tmp_called_name_21 = LOOKUP_ATTRIBUTE( tmp_source_name_32, const_str_plain___prepare__ );
    if ( tmp_called_name_21 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    tmp_tuple_element_16 = const_str_plain_CBC;
    tmp_args_name_11 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_16 );
    PyTuple_SET_ITEM( tmp_args_name_11, 0, tmp_tuple_element_16 );
    CHECK_OBJECT( tmp_class_creation_6__bases );
    tmp_tuple_element_16 = tmp_class_creation_6__bases;
    Py_INCREF( tmp_tuple_element_16 );
    PyTuple_SET_ITEM( tmp_args_name_11, 1, tmp_tuple_element_16 );
    CHECK_OBJECT( tmp_class_creation_6__class_decl_dict );
    tmp_kw_name_11 = tmp_class_creation_6__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 87;
    tmp_assign_source_52 = CALL_FUNCTION( tmp_called_name_21, tmp_args_name_11, tmp_kw_name_11 );
    Py_DECREF( tmp_called_name_21 );
    Py_DECREF( tmp_args_name_11 );
    if ( tmp_assign_source_52 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    assert( tmp_class_creation_6__prepared == NULL );
    tmp_class_creation_6__prepared = tmp_assign_source_52;

    }
    {
    nuitka_bool tmp_condition_result_35;
    PyObject *tmp_operand_name_6;
    PyObject *tmp_source_name_33;
    CHECK_OBJECT( tmp_class_creation_6__prepared );
    tmp_source_name_33 = tmp_class_creation_6__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_33, const_str_plain___getitem__ );
    tmp_operand_name_6 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_6 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    tmp_condition_result_35 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_35 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_23;
    }
    else
    {
        goto branch_no_23;
    }
    branch_yes_23:;
    {
    PyObject *tmp_raise_type_6;
    PyObject *tmp_raise_value_6;
    PyObject *tmp_left_name_6;
    PyObject *tmp_right_name_6;
    PyObject *tmp_tuple_element_17;
    PyObject *tmp_getattr_target_6;
    PyObject *tmp_getattr_attr_6;
    PyObject *tmp_getattr_default_6;
    PyObject *tmp_source_name_34;
    PyObject *tmp_type_arg_12;
    tmp_raise_type_6 = PyExc_TypeError;
    tmp_left_name_6 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_6__metaclass );
    tmp_getattr_target_6 = tmp_class_creation_6__metaclass;
    tmp_getattr_attr_6 = const_str_plain___name__;
    tmp_getattr_default_6 = const_str_angle_metaclass;
    tmp_tuple_element_17 = BUILTIN_GETATTR( tmp_getattr_target_6, tmp_getattr_attr_6, tmp_getattr_default_6 );
    if ( tmp_tuple_element_17 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    tmp_right_name_6 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_6, 0, tmp_tuple_element_17 );
    CHECK_OBJECT( tmp_class_creation_6__prepared );
    tmp_type_arg_12 = tmp_class_creation_6__prepared;
    tmp_source_name_34 = BUILTIN_TYPE1( tmp_type_arg_12 );
    assert( !(tmp_source_name_34 == NULL) );
    tmp_tuple_element_17 = LOOKUP_ATTRIBUTE( tmp_source_name_34, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_34 );
    if ( tmp_tuple_element_17 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_6 );

        exception_lineno = 87;

        goto try_except_handler_17;
    }
    PyTuple_SET_ITEM( tmp_right_name_6, 1, tmp_tuple_element_17 );
    tmp_raise_value_6 = BINARY_OPERATION_REMAINDER( tmp_left_name_6, tmp_right_name_6 );
    Py_DECREF( tmp_right_name_6 );
    if ( tmp_raise_value_6 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_17;
    }
    exception_type = tmp_raise_type_6;
    Py_INCREF( tmp_raise_type_6 );
    exception_value = tmp_raise_value_6;
    exception_lineno = 87;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_17;
    }
    branch_no_23:;
    }
    goto branch_end_22;
    branch_no_22:;
    {
    PyObject *tmp_assign_source_53;
    tmp_assign_source_53 = PyDict_New();
    assert( tmp_class_creation_6__prepared == NULL );
    tmp_class_creation_6__prepared = tmp_assign_source_53;

    }
    branch_end_22:;
    }
    {
    PyObject *tmp_assign_source_54;
    PyObject *tmp_called_name_22;
    PyObject *tmp_called_name_23;
    PyObject *tmp_source_name_35;
    PyObject *tmp_mvar_value_17;
    PyObject *tmp_args_element_name_17;
    PyObject *tmp_mvar_value_18;
    PyObject *tmp_args_element_name_18;
    PyObject *tmp_called_name_24;
    PyObject *tmp_called_name_25;
    PyObject *tmp_source_name_36;
    PyObject *tmp_mvar_value_19;
    PyObject *tmp_args_element_name_19;
    PyObject *tmp_mvar_value_20;
    PyObject *tmp_args_element_name_20;
    tmp_mvar_value_17 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_17 == NULL ))
    {
        tmp_mvar_value_17 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_17 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 85;

        goto try_except_handler_17;
    }

    tmp_source_name_35 = tmp_mvar_value_17;
    tmp_called_name_23 = LOOKUP_ATTRIBUTE( tmp_source_name_35, const_str_plain_register_interface );
    if ( tmp_called_name_23 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 85;

        goto try_except_handler_17;
    }
    tmp_mvar_value_18 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_Mode );

    if (unlikely( tmp_mvar_value_18 == NULL ))
    {
        tmp_mvar_value_18 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_Mode );
    }

    if ( tmp_mvar_value_18 == NULL )
    {
        Py_DECREF( tmp_called_name_23 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "Mode" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 85;

        goto try_except_handler_17;
    }

    tmp_args_element_name_17 = tmp_mvar_value_18;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 85;
    {
        PyObject *call_args[] = { tmp_args_element_name_17 };
        tmp_called_name_22 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_23, call_args );
    }

    Py_DECREF( tmp_called_name_23 );
    if ( tmp_called_name_22 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 85;

        goto try_except_handler_17;
    }
    tmp_mvar_value_19 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_19 == NULL ))
    {
        tmp_mvar_value_19 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_19 == NULL )
    {
        Py_DECREF( tmp_called_name_22 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 86;

        goto try_except_handler_17;
    }

    tmp_source_name_36 = tmp_mvar_value_19;
    tmp_called_name_25 = LOOKUP_ATTRIBUTE( tmp_source_name_36, const_str_plain_register_interface );
    if ( tmp_called_name_25 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_22 );

        exception_lineno = 86;

        goto try_except_handler_17;
    }
    tmp_mvar_value_20 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector );

    if (unlikely( tmp_mvar_value_20 == NULL ))
    {
        tmp_mvar_value_20 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector );
    }

    if ( tmp_mvar_value_20 == NULL )
    {
        Py_DECREF( tmp_called_name_22 );
        Py_DECREF( tmp_called_name_25 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "ModeWithInitializationVector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 86;

        goto try_except_handler_17;
    }

    tmp_args_element_name_19 = tmp_mvar_value_20;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 86;
    {
        PyObject *call_args[] = { tmp_args_element_name_19 };
        tmp_called_name_24 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_25, call_args );
    }

    Py_DECREF( tmp_called_name_25 );
    if ( tmp_called_name_24 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_22 );

        exception_lineno = 86;

        goto try_except_handler_17;
    }
    {
    PyObject *tmp_set_locals_6;
    CHECK_OBJECT( tmp_class_creation_6__prepared );
    tmp_set_locals_6 = tmp_class_creation_6__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_87 = tmp_set_locals_6;
    Py_INCREF( tmp_set_locals_6 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_87, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_19;
    }
    }
    {
    tmp_dictset_value = const_str_plain_CBC;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_87, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_19;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_02f24c209831da22d5ce569434f68731_7, codeobj_02f24c209831da22d5ce569434f68731, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_02f24c209831da22d5ce569434f68731_7 = cache_frame_02f24c209831da22d5ce569434f68731_7;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_02f24c209831da22d5ce569434f68731_7 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_02f24c209831da22d5ce569434f68731_7 ) == 2 ); // Frame stack

    // Framed code:
    {
    tmp_dictset_value = const_str_plain_CBC;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_87, const_str_plain_name, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 88;
        type_description_2 = "o";
        goto frame_exception_exit_7;
    }
    }
    {
    tmp_dictset_value = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_10___init__(  );



    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_87, const_str_plain___init__, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 90;
        type_description_2 = "o";
        goto frame_exception_exit_7;
    }
    }
    {
    PyObject *tmp_called_instance_7;
    PyObject *tmp_mvar_value_21;
    tmp_called_instance_7 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_87, const_str_plain_utils );

    if ( tmp_called_instance_7 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_21 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

        if (unlikely( tmp_mvar_value_21 == NULL ))
        {
            tmp_mvar_value_21 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
        }

        if ( tmp_mvar_value_21 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 96;
            type_description_2 = "o";
            goto frame_exception_exit_7;
        }

        tmp_called_instance_7 = tmp_mvar_value_21;
        Py_INCREF( tmp_called_instance_7 );
        }
    }

    frame_02f24c209831da22d5ce569434f68731_7->m_frame.f_lineno = 96;
    tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_7, const_str_plain_read_only_property, &PyTuple_GET_ITEM( const_tuple_str_plain__initialization_vector_tuple, 0 ) );

    Py_DECREF( tmp_called_instance_7 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 96;
        type_description_2 = "o";
        goto frame_exception_exit_7;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_87, const_str_plain_initialization_vector, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 96;
        type_description_2 = "o";
        goto frame_exception_exit_7;
    }
    }
    {
    PyObject *tmp_mvar_value_22;
    tmp_dictset_value = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_87, const_str_plain__check_iv_and_key_length );

    if ( tmp_dictset_value == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_22 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_iv_and_key_length );

        if (unlikely( tmp_mvar_value_22 == NULL ))
        {
            tmp_mvar_value_22 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain__check_iv_and_key_length );
        }

        if ( tmp_mvar_value_22 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "_check_iv_and_key_length" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 97;
            type_description_2 = "o";
            goto frame_exception_exit_7;
        }

        tmp_dictset_value = tmp_mvar_value_22;
        Py_INCREF( tmp_dictset_value );
        }
    }

    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_87, const_str_plain_validate_for_algorithm, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 97;
        type_description_2 = "o";
        goto frame_exception_exit_7;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_02f24c209831da22d5ce569434f68731_7 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_6;

    frame_exception_exit_7:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_02f24c209831da22d5ce569434f68731_7 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_02f24c209831da22d5ce569434f68731_7, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_02f24c209831da22d5ce569434f68731_7->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_02f24c209831da22d5ce569434f68731_7, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_02f24c209831da22d5ce569434f68731_7,
        type_description_2,
        outline_5_var___class__
    );


    // Release cached frame.
    if ( frame_02f24c209831da22d5ce569434f68731_7 == cache_frame_02f24c209831da22d5ce569434f68731_7 )
    {
        Py_DECREF( frame_02f24c209831da22d5ce569434f68731_7 );
    }
    cache_frame_02f24c209831da22d5ce569434f68731_7 = NULL;

    assertFrameObject( frame_02f24c209831da22d5ce569434f68731_7 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_6;

    frame_no_exception_6:;
    goto skip_nested_handling_6;
    nested_frame_exit_6:;

    goto try_except_handler_19;
    skip_nested_handling_6:;
    {
    nuitka_bool tmp_condition_result_36;
    PyObject *tmp_compexpr_left_6;
    PyObject *tmp_compexpr_right_6;
    CHECK_OBJECT( tmp_class_creation_6__bases );
    tmp_compexpr_left_6 = tmp_class_creation_6__bases;
    tmp_compexpr_right_6 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_6, tmp_compexpr_right_6 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_19;
    }
    tmp_condition_result_36 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_36 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_24;
    }
    else
    {
        goto branch_no_24;
    }
    branch_yes_24:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_87, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_19;
    }
    }
    branch_no_24:;
    }
    {
    PyObject *tmp_assign_source_55;
    PyObject *tmp_called_name_26;
    PyObject *tmp_args_name_12;
    PyObject *tmp_tuple_element_18;
    PyObject *tmp_kw_name_12;
    CHECK_OBJECT( tmp_class_creation_6__metaclass );
    tmp_called_name_26 = tmp_class_creation_6__metaclass;
    tmp_tuple_element_18 = const_str_plain_CBC;
    tmp_args_name_12 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_18 );
    PyTuple_SET_ITEM( tmp_args_name_12, 0, tmp_tuple_element_18 );
    CHECK_OBJECT( tmp_class_creation_6__bases );
    tmp_tuple_element_18 = tmp_class_creation_6__bases;
    Py_INCREF( tmp_tuple_element_18 );
    PyTuple_SET_ITEM( tmp_args_name_12, 1, tmp_tuple_element_18 );
    tmp_tuple_element_18 = locals_cryptography$hazmat$primitives$ciphers$modes_87;
    Py_INCREF( tmp_tuple_element_18 );
    PyTuple_SET_ITEM( tmp_args_name_12, 2, tmp_tuple_element_18 );
    CHECK_OBJECT( tmp_class_creation_6__class_decl_dict );
    tmp_kw_name_12 = tmp_class_creation_6__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 87;
    tmp_assign_source_55 = CALL_FUNCTION( tmp_called_name_26, tmp_args_name_12, tmp_kw_name_12 );
    Py_DECREF( tmp_args_name_12 );
    if ( tmp_assign_source_55 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 87;

        goto try_except_handler_19;
    }
    assert( outline_5_var___class__ == NULL );
    outline_5_var___class__ = tmp_assign_source_55;

    }
    {
    CHECK_OBJECT( outline_5_var___class__ );
    tmp_args_element_name_20 = outline_5_var___class__;
    Py_INCREF( tmp_args_element_name_20 );
    goto try_return_handler_19;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_19:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_87 );
    locals_cryptography$hazmat$primitives$ciphers$modes_87 = NULL;
    }
    {
    goto try_return_handler_18;
    }
    // Exception handler code:
    try_except_handler_19:;
    exception_keeper_type_17 = exception_type;
    exception_keeper_value_17 = exception_value;
    exception_keeper_tb_17 = exception_tb;
    exception_keeper_lineno_17 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_87 );
    locals_cryptography$hazmat$primitives$ciphers$modes_87 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_17;
    exception_value = exception_keeper_value_17;
    exception_tb = exception_keeper_tb_17;
    exception_lineno = exception_keeper_lineno_17;

    goto try_except_handler_18;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_18:;
    {
    CHECK_OBJECT( (PyObject *)outline_5_var___class__ );
    Py_DECREF( outline_5_var___class__ );
    outline_5_var___class__ = NULL;

    }
    {
    goto outline_result_6;
    }
    // Exception handler code:
    try_except_handler_18:;
    exception_keeper_type_18 = exception_type;
    exception_keeper_value_18 = exception_value;
    exception_keeper_tb_18 = exception_tb;
    exception_keeper_lineno_18 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_18;
    exception_value = exception_keeper_value_18;
    exception_tb = exception_keeper_tb_18;
    exception_lineno = exception_keeper_lineno_18;

    goto outline_exception_6;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_6:;
    exception_lineno = 87;
    goto try_except_handler_17;
    outline_result_6:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 86;
    {
        PyObject *call_args[] = { tmp_args_element_name_20 };
        tmp_args_element_name_18 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_24, call_args );
    }

    Py_DECREF( tmp_called_name_24 );
    Py_DECREF( tmp_args_element_name_20 );
    if ( tmp_args_element_name_18 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_22 );

        exception_lineno = 86;

        goto try_except_handler_17;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 85;
    {
        PyObject *call_args[] = { tmp_args_element_name_18 };
        tmp_assign_source_54 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_22, call_args );
    }

    Py_DECREF( tmp_called_name_22 );
    Py_DECREF( tmp_args_element_name_18 );
    if ( tmp_assign_source_54 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 85;

        goto try_except_handler_17;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_CBC, tmp_assign_source_54 );
    }
    goto try_end_7;
    // Exception handler code:
    try_except_handler_17:;
    exception_keeper_type_19 = exception_type;
    exception_keeper_value_19 = exception_value;
    exception_keeper_tb_19 = exception_tb;
    exception_keeper_lineno_19 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_6__bases );
    tmp_class_creation_6__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_6__class_decl_dict );
    tmp_class_creation_6__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_6__metaclass );
    tmp_class_creation_6__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_6__prepared );
    tmp_class_creation_6__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_19;
    exception_value = exception_keeper_value_19;
    exception_tb = exception_keeper_tb_19;
    exception_lineno = exception_keeper_lineno_19;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_7:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_6__bases );
    Py_DECREF( tmp_class_creation_6__bases );
    tmp_class_creation_6__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_6__class_decl_dict );
    Py_DECREF( tmp_class_creation_6__class_decl_dict );
    tmp_class_creation_6__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_6__metaclass );
    Py_DECREF( tmp_class_creation_6__metaclass );
    tmp_class_creation_6__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_6__prepared );
    Py_DECREF( tmp_class_creation_6__prepared );
    tmp_class_creation_6__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_56;
    PyObject *tmp_dircall_arg1_7;
    tmp_dircall_arg1_7 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_7 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_7};
        tmp_assign_source_56 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_56 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    assert( tmp_class_creation_7__bases == NULL );
    tmp_class_creation_7__bases = tmp_assign_source_56;

    }
    {
    PyObject *tmp_assign_source_57;
    tmp_assign_source_57 = PyDict_New();
    assert( tmp_class_creation_7__class_decl_dict == NULL );
    tmp_class_creation_7__class_decl_dict = tmp_assign_source_57;

    }
    {
    PyObject *tmp_assign_source_58;
    PyObject *tmp_metaclass_name_7;
    nuitka_bool tmp_condition_result_37;
    PyObject *tmp_key_name_19;
    PyObject *tmp_dict_name_19;
    PyObject *tmp_dict_name_20;
    PyObject *tmp_key_name_20;
    nuitka_bool tmp_condition_result_38;
    int tmp_truth_name_7;
    PyObject *tmp_type_arg_13;
    PyObject *tmp_subscribed_name_7;
    PyObject *tmp_subscript_name_7;
    PyObject *tmp_bases_name_7;
    tmp_key_name_19 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_7__class_decl_dict );
    tmp_dict_name_19 = tmp_class_creation_7__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_19, tmp_key_name_19 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    tmp_condition_result_37 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_37 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_13;
    }
    else
    {
        goto condexpr_false_13;
    }
    condexpr_true_13:;
    CHECK_OBJECT( tmp_class_creation_7__class_decl_dict );
    tmp_dict_name_20 = tmp_class_creation_7__class_decl_dict;
    tmp_key_name_20 = const_str_plain_metaclass;
    tmp_metaclass_name_7 = DICT_GET_ITEM( tmp_dict_name_20, tmp_key_name_20 );
    if ( tmp_metaclass_name_7 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    goto condexpr_end_13;
    condexpr_false_13:;
    CHECK_OBJECT( tmp_class_creation_7__bases );
    tmp_truth_name_7 = CHECK_IF_TRUE( tmp_class_creation_7__bases );
    if ( tmp_truth_name_7 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    tmp_condition_result_38 = tmp_truth_name_7 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_38 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_14;
    }
    else
    {
        goto condexpr_false_14;
    }
    condexpr_true_14:;
    CHECK_OBJECT( tmp_class_creation_7__bases );
    tmp_subscribed_name_7 = tmp_class_creation_7__bases;
    tmp_subscript_name_7 = const_int_0;
    tmp_type_arg_13 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_7, tmp_subscript_name_7, 0 );
    if ( tmp_type_arg_13 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    tmp_metaclass_name_7 = BUILTIN_TYPE1( tmp_type_arg_13 );
    Py_DECREF( tmp_type_arg_13 );
    if ( tmp_metaclass_name_7 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    goto condexpr_end_14;
    condexpr_false_14:;
    tmp_metaclass_name_7 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_7 );
    condexpr_end_14:;
    condexpr_end_13:;
    CHECK_OBJECT( tmp_class_creation_7__bases );
    tmp_bases_name_7 = tmp_class_creation_7__bases;
    tmp_assign_source_58 = SELECT_METACLASS( tmp_metaclass_name_7, tmp_bases_name_7 );
    Py_DECREF( tmp_metaclass_name_7 );
    if ( tmp_assign_source_58 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    assert( tmp_class_creation_7__metaclass == NULL );
    tmp_class_creation_7__metaclass = tmp_assign_source_58;

    }
    {
    nuitka_bool tmp_condition_result_39;
    PyObject *tmp_key_name_21;
    PyObject *tmp_dict_name_21;
    tmp_key_name_21 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_7__class_decl_dict );
    tmp_dict_name_21 = tmp_class_creation_7__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_21, tmp_key_name_21 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    tmp_condition_result_39 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_39 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_25;
    }
    else
    {
        goto branch_no_25;
    }
    branch_yes_25:;
    {
    CHECK_OBJECT( tmp_class_creation_7__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_7__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    }
    branch_no_25:;
    }
    {
    nuitka_bool tmp_condition_result_40;
    PyObject *tmp_source_name_37;
    CHECK_OBJECT( tmp_class_creation_7__metaclass );
    tmp_source_name_37 = tmp_class_creation_7__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_37, const_str_plain___prepare__ );
    tmp_condition_result_40 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_40 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_26;
    }
    else
    {
        goto branch_no_26;
    }
    branch_yes_26:;
    {
    PyObject *tmp_assign_source_59;
    PyObject *tmp_called_name_27;
    PyObject *tmp_source_name_38;
    PyObject *tmp_args_name_13;
    PyObject *tmp_tuple_element_19;
    PyObject *tmp_kw_name_13;
    CHECK_OBJECT( tmp_class_creation_7__metaclass );
    tmp_source_name_38 = tmp_class_creation_7__metaclass;
    tmp_called_name_27 = LOOKUP_ATTRIBUTE( tmp_source_name_38, const_str_plain___prepare__ );
    if ( tmp_called_name_27 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    tmp_tuple_element_19 = const_str_plain_XTS;
    tmp_args_name_13 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_19 );
    PyTuple_SET_ITEM( tmp_args_name_13, 0, tmp_tuple_element_19 );
    CHECK_OBJECT( tmp_class_creation_7__bases );
    tmp_tuple_element_19 = tmp_class_creation_7__bases;
    Py_INCREF( tmp_tuple_element_19 );
    PyTuple_SET_ITEM( tmp_args_name_13, 1, tmp_tuple_element_19 );
    CHECK_OBJECT( tmp_class_creation_7__class_decl_dict );
    tmp_kw_name_13 = tmp_class_creation_7__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 102;
    tmp_assign_source_59 = CALL_FUNCTION( tmp_called_name_27, tmp_args_name_13, tmp_kw_name_13 );
    Py_DECREF( tmp_called_name_27 );
    Py_DECREF( tmp_args_name_13 );
    if ( tmp_assign_source_59 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    assert( tmp_class_creation_7__prepared == NULL );
    tmp_class_creation_7__prepared = tmp_assign_source_59;

    }
    {
    nuitka_bool tmp_condition_result_41;
    PyObject *tmp_operand_name_7;
    PyObject *tmp_source_name_39;
    CHECK_OBJECT( tmp_class_creation_7__prepared );
    tmp_source_name_39 = tmp_class_creation_7__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_39, const_str_plain___getitem__ );
    tmp_operand_name_7 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_7 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    tmp_condition_result_41 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_41 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_27;
    }
    else
    {
        goto branch_no_27;
    }
    branch_yes_27:;
    {
    PyObject *tmp_raise_type_7;
    PyObject *tmp_raise_value_7;
    PyObject *tmp_left_name_7;
    PyObject *tmp_right_name_7;
    PyObject *tmp_tuple_element_20;
    PyObject *tmp_getattr_target_7;
    PyObject *tmp_getattr_attr_7;
    PyObject *tmp_getattr_default_7;
    PyObject *tmp_source_name_40;
    PyObject *tmp_type_arg_14;
    tmp_raise_type_7 = PyExc_TypeError;
    tmp_left_name_7 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_7__metaclass );
    tmp_getattr_target_7 = tmp_class_creation_7__metaclass;
    tmp_getattr_attr_7 = const_str_plain___name__;
    tmp_getattr_default_7 = const_str_angle_metaclass;
    tmp_tuple_element_20 = BUILTIN_GETATTR( tmp_getattr_target_7, tmp_getattr_attr_7, tmp_getattr_default_7 );
    if ( tmp_tuple_element_20 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    tmp_right_name_7 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_7, 0, tmp_tuple_element_20 );
    CHECK_OBJECT( tmp_class_creation_7__prepared );
    tmp_type_arg_14 = tmp_class_creation_7__prepared;
    tmp_source_name_40 = BUILTIN_TYPE1( tmp_type_arg_14 );
    assert( !(tmp_source_name_40 == NULL) );
    tmp_tuple_element_20 = LOOKUP_ATTRIBUTE( tmp_source_name_40, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_40 );
    if ( tmp_tuple_element_20 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_7 );

        exception_lineno = 102;

        goto try_except_handler_20;
    }
    PyTuple_SET_ITEM( tmp_right_name_7, 1, tmp_tuple_element_20 );
    tmp_raise_value_7 = BINARY_OPERATION_REMAINDER( tmp_left_name_7, tmp_right_name_7 );
    Py_DECREF( tmp_right_name_7 );
    if ( tmp_raise_value_7 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_20;
    }
    exception_type = tmp_raise_type_7;
    Py_INCREF( tmp_raise_type_7 );
    exception_value = tmp_raise_value_7;
    exception_lineno = 102;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_20;
    }
    branch_no_27:;
    }
    goto branch_end_26;
    branch_no_26:;
    {
    PyObject *tmp_assign_source_60;
    tmp_assign_source_60 = PyDict_New();
    assert( tmp_class_creation_7__prepared == NULL );
    tmp_class_creation_7__prepared = tmp_assign_source_60;

    }
    branch_end_26:;
    }
    {
    PyObject *tmp_assign_source_61;
    PyObject *tmp_called_name_28;
    PyObject *tmp_called_name_29;
    PyObject *tmp_source_name_41;
    PyObject *tmp_mvar_value_23;
    PyObject *tmp_args_element_name_21;
    PyObject *tmp_mvar_value_24;
    PyObject *tmp_args_element_name_22;
    PyObject *tmp_called_name_30;
    PyObject *tmp_called_name_31;
    PyObject *tmp_source_name_42;
    PyObject *tmp_mvar_value_25;
    PyObject *tmp_args_element_name_23;
    PyObject *tmp_mvar_value_26;
    PyObject *tmp_args_element_name_24;
    tmp_mvar_value_23 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_23 == NULL ))
    {
        tmp_mvar_value_23 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_23 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 100;

        goto try_except_handler_20;
    }

    tmp_source_name_41 = tmp_mvar_value_23;
    tmp_called_name_29 = LOOKUP_ATTRIBUTE( tmp_source_name_41, const_str_plain_register_interface );
    if ( tmp_called_name_29 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 100;

        goto try_except_handler_20;
    }
    tmp_mvar_value_24 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_Mode );

    if (unlikely( tmp_mvar_value_24 == NULL ))
    {
        tmp_mvar_value_24 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_Mode );
    }

    if ( tmp_mvar_value_24 == NULL )
    {
        Py_DECREF( tmp_called_name_29 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "Mode" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 100;

        goto try_except_handler_20;
    }

    tmp_args_element_name_21 = tmp_mvar_value_24;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 100;
    {
        PyObject *call_args[] = { tmp_args_element_name_21 };
        tmp_called_name_28 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_29, call_args );
    }

    Py_DECREF( tmp_called_name_29 );
    if ( tmp_called_name_28 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 100;

        goto try_except_handler_20;
    }
    tmp_mvar_value_25 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_25 == NULL ))
    {
        tmp_mvar_value_25 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_25 == NULL )
    {
        Py_DECREF( tmp_called_name_28 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 101;

        goto try_except_handler_20;
    }

    tmp_source_name_42 = tmp_mvar_value_25;
    tmp_called_name_31 = LOOKUP_ATTRIBUTE( tmp_source_name_42, const_str_plain_register_interface );
    if ( tmp_called_name_31 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_28 );

        exception_lineno = 101;

        goto try_except_handler_20;
    }
    tmp_mvar_value_26 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithTweak );

    if (unlikely( tmp_mvar_value_26 == NULL ))
    {
        tmp_mvar_value_26 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_ModeWithTweak );
    }

    if ( tmp_mvar_value_26 == NULL )
    {
        Py_DECREF( tmp_called_name_28 );
        Py_DECREF( tmp_called_name_31 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "ModeWithTweak" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 101;

        goto try_except_handler_20;
    }

    tmp_args_element_name_23 = tmp_mvar_value_26;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 101;
    {
        PyObject *call_args[] = { tmp_args_element_name_23 };
        tmp_called_name_30 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_31, call_args );
    }

    Py_DECREF( tmp_called_name_31 );
    if ( tmp_called_name_30 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_28 );

        exception_lineno = 101;

        goto try_except_handler_20;
    }
    {
    PyObject *tmp_set_locals_7;
    CHECK_OBJECT( tmp_class_creation_7__prepared );
    tmp_set_locals_7 = tmp_class_creation_7__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_102 = tmp_set_locals_7;
    Py_INCREF( tmp_set_locals_7 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_102, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_22;
    }
    }
    {
    tmp_dictset_value = const_str_plain_XTS;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_102, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_22;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_cbeede5d976db77af134a73024fb34ae_8, codeobj_cbeede5d976db77af134a73024fb34ae, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_cbeede5d976db77af134a73024fb34ae_8 = cache_frame_cbeede5d976db77af134a73024fb34ae_8;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_cbeede5d976db77af134a73024fb34ae_8 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_cbeede5d976db77af134a73024fb34ae_8 ) == 2 ); // Frame stack

    // Framed code:
    {
    tmp_dictset_value = const_str_plain_XTS;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_102, const_str_plain_name, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 103;
        type_description_2 = "o";
        goto frame_exception_exit_8;
    }
    }
    {
    tmp_dictset_value = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_11___init__(  );



    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_102, const_str_plain___init__, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 105;
        type_description_2 = "o";
        goto frame_exception_exit_8;
    }
    }
    {
    PyObject *tmp_called_instance_8;
    PyObject *tmp_mvar_value_27;
    tmp_called_instance_8 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_102, const_str_plain_utils );

    if ( tmp_called_instance_8 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_27 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

        if (unlikely( tmp_mvar_value_27 == NULL ))
        {
            tmp_mvar_value_27 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
        }

        if ( tmp_mvar_value_27 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 114;
            type_description_2 = "o";
            goto frame_exception_exit_8;
        }

        tmp_called_instance_8 = tmp_mvar_value_27;
        Py_INCREF( tmp_called_instance_8 );
        }
    }

    frame_cbeede5d976db77af134a73024fb34ae_8->m_frame.f_lineno = 114;
    tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_8, const_str_plain_read_only_property, &PyTuple_GET_ITEM( const_tuple_str_plain__tweak_tuple, 0 ) );

    Py_DECREF( tmp_called_instance_8 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 114;
        type_description_2 = "o";
        goto frame_exception_exit_8;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_102, const_str_plain_tweak, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 114;
        type_description_2 = "o";
        goto frame_exception_exit_8;
    }
    }
    {
    tmp_dictset_value = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_12_validate_for_algorithm(  );



    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_102, const_str_plain_validate_for_algorithm, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 116;
        type_description_2 = "o";
        goto frame_exception_exit_8;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_cbeede5d976db77af134a73024fb34ae_8 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_7;

    frame_exception_exit_8:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_cbeede5d976db77af134a73024fb34ae_8 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_cbeede5d976db77af134a73024fb34ae_8, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_cbeede5d976db77af134a73024fb34ae_8->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_cbeede5d976db77af134a73024fb34ae_8, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_cbeede5d976db77af134a73024fb34ae_8,
        type_description_2,
        outline_6_var___class__
    );


    // Release cached frame.
    if ( frame_cbeede5d976db77af134a73024fb34ae_8 == cache_frame_cbeede5d976db77af134a73024fb34ae_8 )
    {
        Py_DECREF( frame_cbeede5d976db77af134a73024fb34ae_8 );
    }
    cache_frame_cbeede5d976db77af134a73024fb34ae_8 = NULL;

    assertFrameObject( frame_cbeede5d976db77af134a73024fb34ae_8 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_7;

    frame_no_exception_7:;
    goto skip_nested_handling_7;
    nested_frame_exit_7:;

    goto try_except_handler_22;
    skip_nested_handling_7:;
    {
    nuitka_bool tmp_condition_result_42;
    PyObject *tmp_compexpr_left_7;
    PyObject *tmp_compexpr_right_7;
    CHECK_OBJECT( tmp_class_creation_7__bases );
    tmp_compexpr_left_7 = tmp_class_creation_7__bases;
    tmp_compexpr_right_7 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_7, tmp_compexpr_right_7 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_22;
    }
    tmp_condition_result_42 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_42 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_28;
    }
    else
    {
        goto branch_no_28;
    }
    branch_yes_28:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_102, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_22;
    }
    }
    branch_no_28:;
    }
    {
    PyObject *tmp_assign_source_62;
    PyObject *tmp_called_name_32;
    PyObject *tmp_args_name_14;
    PyObject *tmp_tuple_element_21;
    PyObject *tmp_kw_name_14;
    CHECK_OBJECT( tmp_class_creation_7__metaclass );
    tmp_called_name_32 = tmp_class_creation_7__metaclass;
    tmp_tuple_element_21 = const_str_plain_XTS;
    tmp_args_name_14 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_21 );
    PyTuple_SET_ITEM( tmp_args_name_14, 0, tmp_tuple_element_21 );
    CHECK_OBJECT( tmp_class_creation_7__bases );
    tmp_tuple_element_21 = tmp_class_creation_7__bases;
    Py_INCREF( tmp_tuple_element_21 );
    PyTuple_SET_ITEM( tmp_args_name_14, 1, tmp_tuple_element_21 );
    tmp_tuple_element_21 = locals_cryptography$hazmat$primitives$ciphers$modes_102;
    Py_INCREF( tmp_tuple_element_21 );
    PyTuple_SET_ITEM( tmp_args_name_14, 2, tmp_tuple_element_21 );
    CHECK_OBJECT( tmp_class_creation_7__class_decl_dict );
    tmp_kw_name_14 = tmp_class_creation_7__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 102;
    tmp_assign_source_62 = CALL_FUNCTION( tmp_called_name_32, tmp_args_name_14, tmp_kw_name_14 );
    Py_DECREF( tmp_args_name_14 );
    if ( tmp_assign_source_62 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 102;

        goto try_except_handler_22;
    }
    assert( outline_6_var___class__ == NULL );
    outline_6_var___class__ = tmp_assign_source_62;

    }
    {
    CHECK_OBJECT( outline_6_var___class__ );
    tmp_args_element_name_24 = outline_6_var___class__;
    Py_INCREF( tmp_args_element_name_24 );
    goto try_return_handler_22;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_22:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_102 );
    locals_cryptography$hazmat$primitives$ciphers$modes_102 = NULL;
    }
    {
    goto try_return_handler_21;
    }
    // Exception handler code:
    try_except_handler_22:;
    exception_keeper_type_20 = exception_type;
    exception_keeper_value_20 = exception_value;
    exception_keeper_tb_20 = exception_tb;
    exception_keeper_lineno_20 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_102 );
    locals_cryptography$hazmat$primitives$ciphers$modes_102 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_20;
    exception_value = exception_keeper_value_20;
    exception_tb = exception_keeper_tb_20;
    exception_lineno = exception_keeper_lineno_20;

    goto try_except_handler_21;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_21:;
    {
    CHECK_OBJECT( (PyObject *)outline_6_var___class__ );
    Py_DECREF( outline_6_var___class__ );
    outline_6_var___class__ = NULL;

    }
    {
    goto outline_result_7;
    }
    // Exception handler code:
    try_except_handler_21:;
    exception_keeper_type_21 = exception_type;
    exception_keeper_value_21 = exception_value;
    exception_keeper_tb_21 = exception_tb;
    exception_keeper_lineno_21 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_21;
    exception_value = exception_keeper_value_21;
    exception_tb = exception_keeper_tb_21;
    exception_lineno = exception_keeper_lineno_21;

    goto outline_exception_7;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_7:;
    exception_lineno = 102;
    goto try_except_handler_20;
    outline_result_7:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 101;
    {
        PyObject *call_args[] = { tmp_args_element_name_24 };
        tmp_args_element_name_22 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_30, call_args );
    }

    Py_DECREF( tmp_called_name_30 );
    Py_DECREF( tmp_args_element_name_24 );
    if ( tmp_args_element_name_22 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_28 );

        exception_lineno = 101;

        goto try_except_handler_20;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 100;
    {
        PyObject *call_args[] = { tmp_args_element_name_22 };
        tmp_assign_source_61 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_28, call_args );
    }

    Py_DECREF( tmp_called_name_28 );
    Py_DECREF( tmp_args_element_name_22 );
    if ( tmp_assign_source_61 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 100;

        goto try_except_handler_20;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_XTS, tmp_assign_source_61 );
    }
    goto try_end_8;
    // Exception handler code:
    try_except_handler_20:;
    exception_keeper_type_22 = exception_type;
    exception_keeper_value_22 = exception_value;
    exception_keeper_tb_22 = exception_tb;
    exception_keeper_lineno_22 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_7__bases );
    tmp_class_creation_7__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_7__class_decl_dict );
    tmp_class_creation_7__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_7__metaclass );
    tmp_class_creation_7__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_7__prepared );
    tmp_class_creation_7__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_22;
    exception_value = exception_keeper_value_22;
    exception_tb = exception_keeper_tb_22;
    exception_lineno = exception_keeper_lineno_22;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_8:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_7__bases );
    Py_DECREF( tmp_class_creation_7__bases );
    tmp_class_creation_7__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_7__class_decl_dict );
    Py_DECREF( tmp_class_creation_7__class_decl_dict );
    tmp_class_creation_7__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_7__metaclass );
    Py_DECREF( tmp_class_creation_7__metaclass );
    tmp_class_creation_7__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_7__prepared );
    Py_DECREF( tmp_class_creation_7__prepared );
    tmp_class_creation_7__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_63;
    PyObject *tmp_dircall_arg1_8;
    tmp_dircall_arg1_8 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_8 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_8};
        tmp_assign_source_63 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_63 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    assert( tmp_class_creation_8__bases == NULL );
    tmp_class_creation_8__bases = tmp_assign_source_63;

    }
    {
    PyObject *tmp_assign_source_64;
    tmp_assign_source_64 = PyDict_New();
    assert( tmp_class_creation_8__class_decl_dict == NULL );
    tmp_class_creation_8__class_decl_dict = tmp_assign_source_64;

    }
    {
    PyObject *tmp_assign_source_65;
    PyObject *tmp_metaclass_name_8;
    nuitka_bool tmp_condition_result_43;
    PyObject *tmp_key_name_22;
    PyObject *tmp_dict_name_22;
    PyObject *tmp_dict_name_23;
    PyObject *tmp_key_name_23;
    nuitka_bool tmp_condition_result_44;
    int tmp_truth_name_8;
    PyObject *tmp_type_arg_15;
    PyObject *tmp_subscribed_name_8;
    PyObject *tmp_subscript_name_8;
    PyObject *tmp_bases_name_8;
    tmp_key_name_22 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_8__class_decl_dict );
    tmp_dict_name_22 = tmp_class_creation_8__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_22, tmp_key_name_22 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    tmp_condition_result_43 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_43 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_15;
    }
    else
    {
        goto condexpr_false_15;
    }
    condexpr_true_15:;
    CHECK_OBJECT( tmp_class_creation_8__class_decl_dict );
    tmp_dict_name_23 = tmp_class_creation_8__class_decl_dict;
    tmp_key_name_23 = const_str_plain_metaclass;
    tmp_metaclass_name_8 = DICT_GET_ITEM( tmp_dict_name_23, tmp_key_name_23 );
    if ( tmp_metaclass_name_8 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    goto condexpr_end_15;
    condexpr_false_15:;
    CHECK_OBJECT( tmp_class_creation_8__bases );
    tmp_truth_name_8 = CHECK_IF_TRUE( tmp_class_creation_8__bases );
    if ( tmp_truth_name_8 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    tmp_condition_result_44 = tmp_truth_name_8 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_44 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_16;
    }
    else
    {
        goto condexpr_false_16;
    }
    condexpr_true_16:;
    CHECK_OBJECT( tmp_class_creation_8__bases );
    tmp_subscribed_name_8 = tmp_class_creation_8__bases;
    tmp_subscript_name_8 = const_int_0;
    tmp_type_arg_15 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_8, tmp_subscript_name_8, 0 );
    if ( tmp_type_arg_15 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    tmp_metaclass_name_8 = BUILTIN_TYPE1( tmp_type_arg_15 );
    Py_DECREF( tmp_type_arg_15 );
    if ( tmp_metaclass_name_8 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    goto condexpr_end_16;
    condexpr_false_16:;
    tmp_metaclass_name_8 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_8 );
    condexpr_end_16:;
    condexpr_end_15:;
    CHECK_OBJECT( tmp_class_creation_8__bases );
    tmp_bases_name_8 = tmp_class_creation_8__bases;
    tmp_assign_source_65 = SELECT_METACLASS( tmp_metaclass_name_8, tmp_bases_name_8 );
    Py_DECREF( tmp_metaclass_name_8 );
    if ( tmp_assign_source_65 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    assert( tmp_class_creation_8__metaclass == NULL );
    tmp_class_creation_8__metaclass = tmp_assign_source_65;

    }
    {
    nuitka_bool tmp_condition_result_45;
    PyObject *tmp_key_name_24;
    PyObject *tmp_dict_name_24;
    tmp_key_name_24 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_8__class_decl_dict );
    tmp_dict_name_24 = tmp_class_creation_8__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_24, tmp_key_name_24 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    tmp_condition_result_45 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_45 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_29;
    }
    else
    {
        goto branch_no_29;
    }
    branch_yes_29:;
    {
    CHECK_OBJECT( tmp_class_creation_8__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_8__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    }
    branch_no_29:;
    }
    {
    nuitka_bool tmp_condition_result_46;
    PyObject *tmp_source_name_43;
    CHECK_OBJECT( tmp_class_creation_8__metaclass );
    tmp_source_name_43 = tmp_class_creation_8__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_43, const_str_plain___prepare__ );
    tmp_condition_result_46 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_46 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_30;
    }
    else
    {
        goto branch_no_30;
    }
    branch_yes_30:;
    {
    PyObject *tmp_assign_source_66;
    PyObject *tmp_called_name_33;
    PyObject *tmp_source_name_44;
    PyObject *tmp_args_name_15;
    PyObject *tmp_tuple_element_22;
    PyObject *tmp_kw_name_15;
    CHECK_OBJECT( tmp_class_creation_8__metaclass );
    tmp_source_name_44 = tmp_class_creation_8__metaclass;
    tmp_called_name_33 = LOOKUP_ATTRIBUTE( tmp_source_name_44, const_str_plain___prepare__ );
    if ( tmp_called_name_33 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    tmp_tuple_element_22 = const_str_plain_ECB;
    tmp_args_name_15 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_22 );
    PyTuple_SET_ITEM( tmp_args_name_15, 0, tmp_tuple_element_22 );
    CHECK_OBJECT( tmp_class_creation_8__bases );
    tmp_tuple_element_22 = tmp_class_creation_8__bases;
    Py_INCREF( tmp_tuple_element_22 );
    PyTuple_SET_ITEM( tmp_args_name_15, 1, tmp_tuple_element_22 );
    CHECK_OBJECT( tmp_class_creation_8__class_decl_dict );
    tmp_kw_name_15 = tmp_class_creation_8__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 125;
    tmp_assign_source_66 = CALL_FUNCTION( tmp_called_name_33, tmp_args_name_15, tmp_kw_name_15 );
    Py_DECREF( tmp_called_name_33 );
    Py_DECREF( tmp_args_name_15 );
    if ( tmp_assign_source_66 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    assert( tmp_class_creation_8__prepared == NULL );
    tmp_class_creation_8__prepared = tmp_assign_source_66;

    }
    {
    nuitka_bool tmp_condition_result_47;
    PyObject *tmp_operand_name_8;
    PyObject *tmp_source_name_45;
    CHECK_OBJECT( tmp_class_creation_8__prepared );
    tmp_source_name_45 = tmp_class_creation_8__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_45, const_str_plain___getitem__ );
    tmp_operand_name_8 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_8 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    tmp_condition_result_47 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_47 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_31;
    }
    else
    {
        goto branch_no_31;
    }
    branch_yes_31:;
    {
    PyObject *tmp_raise_type_8;
    PyObject *tmp_raise_value_8;
    PyObject *tmp_left_name_8;
    PyObject *tmp_right_name_8;
    PyObject *tmp_tuple_element_23;
    PyObject *tmp_getattr_target_8;
    PyObject *tmp_getattr_attr_8;
    PyObject *tmp_getattr_default_8;
    PyObject *tmp_source_name_46;
    PyObject *tmp_type_arg_16;
    tmp_raise_type_8 = PyExc_TypeError;
    tmp_left_name_8 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_8__metaclass );
    tmp_getattr_target_8 = tmp_class_creation_8__metaclass;
    tmp_getattr_attr_8 = const_str_plain___name__;
    tmp_getattr_default_8 = const_str_angle_metaclass;
    tmp_tuple_element_23 = BUILTIN_GETATTR( tmp_getattr_target_8, tmp_getattr_attr_8, tmp_getattr_default_8 );
    if ( tmp_tuple_element_23 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    tmp_right_name_8 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_8, 0, tmp_tuple_element_23 );
    CHECK_OBJECT( tmp_class_creation_8__prepared );
    tmp_type_arg_16 = tmp_class_creation_8__prepared;
    tmp_source_name_46 = BUILTIN_TYPE1( tmp_type_arg_16 );
    assert( !(tmp_source_name_46 == NULL) );
    tmp_tuple_element_23 = LOOKUP_ATTRIBUTE( tmp_source_name_46, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_46 );
    if ( tmp_tuple_element_23 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_8 );

        exception_lineno = 125;

        goto try_except_handler_23;
    }
    PyTuple_SET_ITEM( tmp_right_name_8, 1, tmp_tuple_element_23 );
    tmp_raise_value_8 = BINARY_OPERATION_REMAINDER( tmp_left_name_8, tmp_right_name_8 );
    Py_DECREF( tmp_right_name_8 );
    if ( tmp_raise_value_8 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_23;
    }
    exception_type = tmp_raise_type_8;
    Py_INCREF( tmp_raise_type_8 );
    exception_value = tmp_raise_value_8;
    exception_lineno = 125;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_23;
    }
    branch_no_31:;
    }
    goto branch_end_30;
    branch_no_30:;
    {
    PyObject *tmp_assign_source_67;
    tmp_assign_source_67 = PyDict_New();
    assert( tmp_class_creation_8__prepared == NULL );
    tmp_class_creation_8__prepared = tmp_assign_source_67;

    }
    branch_end_30:;
    }
    {
    PyObject *tmp_assign_source_68;
    PyObject *tmp_called_name_34;
    PyObject *tmp_called_name_35;
    PyObject *tmp_source_name_47;
    PyObject *tmp_mvar_value_28;
    PyObject *tmp_args_element_name_25;
    PyObject *tmp_mvar_value_29;
    PyObject *tmp_args_element_name_26;
    tmp_mvar_value_28 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_28 == NULL ))
    {
        tmp_mvar_value_28 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_28 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 124;

        goto try_except_handler_23;
    }

    tmp_source_name_47 = tmp_mvar_value_28;
    tmp_called_name_35 = LOOKUP_ATTRIBUTE( tmp_source_name_47, const_str_plain_register_interface );
    if ( tmp_called_name_35 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 124;

        goto try_except_handler_23;
    }
    tmp_mvar_value_29 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_Mode );

    if (unlikely( tmp_mvar_value_29 == NULL ))
    {
        tmp_mvar_value_29 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_Mode );
    }

    if ( tmp_mvar_value_29 == NULL )
    {
        Py_DECREF( tmp_called_name_35 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "Mode" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 124;

        goto try_except_handler_23;
    }

    tmp_args_element_name_25 = tmp_mvar_value_29;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 124;
    {
        PyObject *call_args[] = { tmp_args_element_name_25 };
        tmp_called_name_34 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_35, call_args );
    }

    Py_DECREF( tmp_called_name_35 );
    if ( tmp_called_name_34 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 124;

        goto try_except_handler_23;
    }
    {
    PyObject *tmp_set_locals_8;
    CHECK_OBJECT( tmp_class_creation_8__prepared );
    tmp_set_locals_8 = tmp_class_creation_8__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_125 = tmp_set_locals_8;
    Py_INCREF( tmp_set_locals_8 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_125, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_25;
    }
    }
    {
    tmp_dictset_value = const_str_plain_ECB;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_125, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_25;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9, codeobj_35e9b31ac7b1dcdeb181ac01bdd2b7bb, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 = cache_frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 ) == 2 ); // Frame stack

    // Framed code:
    {
    tmp_dictset_value = const_str_plain_ECB;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_125, const_str_plain_name, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 126;
        type_description_2 = "o";
        goto frame_exception_exit_9;
    }
    }
    {
    PyObject *tmp_mvar_value_30;
    tmp_dictset_value = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_125, const_str_plain__check_aes_key_length );

    if ( tmp_dictset_value == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_30 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_aes_key_length );

        if (unlikely( tmp_mvar_value_30 == NULL ))
        {
            tmp_mvar_value_30 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain__check_aes_key_length );
        }

        if ( tmp_mvar_value_30 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "_check_aes_key_length" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 128;
            type_description_2 = "o";
            goto frame_exception_exit_9;
        }

        tmp_dictset_value = tmp_mvar_value_30;
        Py_INCREF( tmp_dictset_value );
        }
    }

    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_125, const_str_plain_validate_for_algorithm, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 128;
        type_description_2 = "o";
        goto frame_exception_exit_9;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_8;

    frame_exception_exit_9:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9,
        type_description_2,
        outline_7_var___class__
    );


    // Release cached frame.
    if ( frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 == cache_frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 )
    {
        Py_DECREF( frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 );
    }
    cache_frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 = NULL;

    assertFrameObject( frame_35e9b31ac7b1dcdeb181ac01bdd2b7bb_9 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_8;

    frame_no_exception_8:;
    goto skip_nested_handling_8;
    nested_frame_exit_8:;

    goto try_except_handler_25;
    skip_nested_handling_8:;
    {
    nuitka_bool tmp_condition_result_48;
    PyObject *tmp_compexpr_left_8;
    PyObject *tmp_compexpr_right_8;
    CHECK_OBJECT( tmp_class_creation_8__bases );
    tmp_compexpr_left_8 = tmp_class_creation_8__bases;
    tmp_compexpr_right_8 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_8, tmp_compexpr_right_8 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_25;
    }
    tmp_condition_result_48 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_48 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_32;
    }
    else
    {
        goto branch_no_32;
    }
    branch_yes_32:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_125, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_25;
    }
    }
    branch_no_32:;
    }
    {
    PyObject *tmp_assign_source_69;
    PyObject *tmp_called_name_36;
    PyObject *tmp_args_name_16;
    PyObject *tmp_tuple_element_24;
    PyObject *tmp_kw_name_16;
    CHECK_OBJECT( tmp_class_creation_8__metaclass );
    tmp_called_name_36 = tmp_class_creation_8__metaclass;
    tmp_tuple_element_24 = const_str_plain_ECB;
    tmp_args_name_16 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_24 );
    PyTuple_SET_ITEM( tmp_args_name_16, 0, tmp_tuple_element_24 );
    CHECK_OBJECT( tmp_class_creation_8__bases );
    tmp_tuple_element_24 = tmp_class_creation_8__bases;
    Py_INCREF( tmp_tuple_element_24 );
    PyTuple_SET_ITEM( tmp_args_name_16, 1, tmp_tuple_element_24 );
    tmp_tuple_element_24 = locals_cryptography$hazmat$primitives$ciphers$modes_125;
    Py_INCREF( tmp_tuple_element_24 );
    PyTuple_SET_ITEM( tmp_args_name_16, 2, tmp_tuple_element_24 );
    CHECK_OBJECT( tmp_class_creation_8__class_decl_dict );
    tmp_kw_name_16 = tmp_class_creation_8__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 125;
    tmp_assign_source_69 = CALL_FUNCTION( tmp_called_name_36, tmp_args_name_16, tmp_kw_name_16 );
    Py_DECREF( tmp_args_name_16 );
    if ( tmp_assign_source_69 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 125;

        goto try_except_handler_25;
    }
    assert( outline_7_var___class__ == NULL );
    outline_7_var___class__ = tmp_assign_source_69;

    }
    {
    CHECK_OBJECT( outline_7_var___class__ );
    tmp_args_element_name_26 = outline_7_var___class__;
    Py_INCREF( tmp_args_element_name_26 );
    goto try_return_handler_25;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_25:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_125 );
    locals_cryptography$hazmat$primitives$ciphers$modes_125 = NULL;
    }
    {
    goto try_return_handler_24;
    }
    // Exception handler code:
    try_except_handler_25:;
    exception_keeper_type_23 = exception_type;
    exception_keeper_value_23 = exception_value;
    exception_keeper_tb_23 = exception_tb;
    exception_keeper_lineno_23 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_125 );
    locals_cryptography$hazmat$primitives$ciphers$modes_125 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_23;
    exception_value = exception_keeper_value_23;
    exception_tb = exception_keeper_tb_23;
    exception_lineno = exception_keeper_lineno_23;

    goto try_except_handler_24;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_24:;
    {
    CHECK_OBJECT( (PyObject *)outline_7_var___class__ );
    Py_DECREF( outline_7_var___class__ );
    outline_7_var___class__ = NULL;

    }
    {
    goto outline_result_8;
    }
    // Exception handler code:
    try_except_handler_24:;
    exception_keeper_type_24 = exception_type;
    exception_keeper_value_24 = exception_value;
    exception_keeper_tb_24 = exception_tb;
    exception_keeper_lineno_24 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_24;
    exception_value = exception_keeper_value_24;
    exception_tb = exception_keeper_tb_24;
    exception_lineno = exception_keeper_lineno_24;

    goto outline_exception_8;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_8:;
    exception_lineno = 125;
    goto try_except_handler_23;
    outline_result_8:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 124;
    {
        PyObject *call_args[] = { tmp_args_element_name_26 };
        tmp_assign_source_68 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_34, call_args );
    }

    Py_DECREF( tmp_called_name_34 );
    Py_DECREF( tmp_args_element_name_26 );
    if ( tmp_assign_source_68 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 124;

        goto try_except_handler_23;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ECB, tmp_assign_source_68 );
    }
    goto try_end_9;
    // Exception handler code:
    try_except_handler_23:;
    exception_keeper_type_25 = exception_type;
    exception_keeper_value_25 = exception_value;
    exception_keeper_tb_25 = exception_tb;
    exception_keeper_lineno_25 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_8__bases );
    tmp_class_creation_8__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_8__class_decl_dict );
    tmp_class_creation_8__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_8__metaclass );
    tmp_class_creation_8__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_8__prepared );
    tmp_class_creation_8__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_25;
    exception_value = exception_keeper_value_25;
    exception_tb = exception_keeper_tb_25;
    exception_lineno = exception_keeper_lineno_25;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_9:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_8__bases );
    Py_DECREF( tmp_class_creation_8__bases );
    tmp_class_creation_8__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_8__class_decl_dict );
    Py_DECREF( tmp_class_creation_8__class_decl_dict );
    tmp_class_creation_8__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_8__metaclass );
    Py_DECREF( tmp_class_creation_8__metaclass );
    tmp_class_creation_8__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_8__prepared );
    Py_DECREF( tmp_class_creation_8__prepared );
    tmp_class_creation_8__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_70;
    PyObject *tmp_dircall_arg1_9;
    tmp_dircall_arg1_9 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_9 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_9};
        tmp_assign_source_70 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_70 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    assert( tmp_class_creation_9__bases == NULL );
    tmp_class_creation_9__bases = tmp_assign_source_70;

    }
    {
    PyObject *tmp_assign_source_71;
    tmp_assign_source_71 = PyDict_New();
    assert( tmp_class_creation_9__class_decl_dict == NULL );
    tmp_class_creation_9__class_decl_dict = tmp_assign_source_71;

    }
    {
    PyObject *tmp_assign_source_72;
    PyObject *tmp_metaclass_name_9;
    nuitka_bool tmp_condition_result_49;
    PyObject *tmp_key_name_25;
    PyObject *tmp_dict_name_25;
    PyObject *tmp_dict_name_26;
    PyObject *tmp_key_name_26;
    nuitka_bool tmp_condition_result_50;
    int tmp_truth_name_9;
    PyObject *tmp_type_arg_17;
    PyObject *tmp_subscribed_name_9;
    PyObject *tmp_subscript_name_9;
    PyObject *tmp_bases_name_9;
    tmp_key_name_25 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_9__class_decl_dict );
    tmp_dict_name_25 = tmp_class_creation_9__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_25, tmp_key_name_25 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    tmp_condition_result_49 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_49 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_17;
    }
    else
    {
        goto condexpr_false_17;
    }
    condexpr_true_17:;
    CHECK_OBJECT( tmp_class_creation_9__class_decl_dict );
    tmp_dict_name_26 = tmp_class_creation_9__class_decl_dict;
    tmp_key_name_26 = const_str_plain_metaclass;
    tmp_metaclass_name_9 = DICT_GET_ITEM( tmp_dict_name_26, tmp_key_name_26 );
    if ( tmp_metaclass_name_9 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    goto condexpr_end_17;
    condexpr_false_17:;
    CHECK_OBJECT( tmp_class_creation_9__bases );
    tmp_truth_name_9 = CHECK_IF_TRUE( tmp_class_creation_9__bases );
    if ( tmp_truth_name_9 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    tmp_condition_result_50 = tmp_truth_name_9 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_50 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_18;
    }
    else
    {
        goto condexpr_false_18;
    }
    condexpr_true_18:;
    CHECK_OBJECT( tmp_class_creation_9__bases );
    tmp_subscribed_name_9 = tmp_class_creation_9__bases;
    tmp_subscript_name_9 = const_int_0;
    tmp_type_arg_17 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_9, tmp_subscript_name_9, 0 );
    if ( tmp_type_arg_17 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    tmp_metaclass_name_9 = BUILTIN_TYPE1( tmp_type_arg_17 );
    Py_DECREF( tmp_type_arg_17 );
    if ( tmp_metaclass_name_9 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    goto condexpr_end_18;
    condexpr_false_18:;
    tmp_metaclass_name_9 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_9 );
    condexpr_end_18:;
    condexpr_end_17:;
    CHECK_OBJECT( tmp_class_creation_9__bases );
    tmp_bases_name_9 = tmp_class_creation_9__bases;
    tmp_assign_source_72 = SELECT_METACLASS( tmp_metaclass_name_9, tmp_bases_name_9 );
    Py_DECREF( tmp_metaclass_name_9 );
    if ( tmp_assign_source_72 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    assert( tmp_class_creation_9__metaclass == NULL );
    tmp_class_creation_9__metaclass = tmp_assign_source_72;

    }
    {
    nuitka_bool tmp_condition_result_51;
    PyObject *tmp_key_name_27;
    PyObject *tmp_dict_name_27;
    tmp_key_name_27 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_9__class_decl_dict );
    tmp_dict_name_27 = tmp_class_creation_9__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_27, tmp_key_name_27 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    tmp_condition_result_51 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_51 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_33;
    }
    else
    {
        goto branch_no_33;
    }
    branch_yes_33:;
    {
    CHECK_OBJECT( tmp_class_creation_9__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_9__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    }
    branch_no_33:;
    }
    {
    nuitka_bool tmp_condition_result_52;
    PyObject *tmp_source_name_48;
    CHECK_OBJECT( tmp_class_creation_9__metaclass );
    tmp_source_name_48 = tmp_class_creation_9__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_48, const_str_plain___prepare__ );
    tmp_condition_result_52 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_52 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_34;
    }
    else
    {
        goto branch_no_34;
    }
    branch_yes_34:;
    {
    PyObject *tmp_assign_source_73;
    PyObject *tmp_called_name_37;
    PyObject *tmp_source_name_49;
    PyObject *tmp_args_name_17;
    PyObject *tmp_tuple_element_25;
    PyObject *tmp_kw_name_17;
    CHECK_OBJECT( tmp_class_creation_9__metaclass );
    tmp_source_name_49 = tmp_class_creation_9__metaclass;
    tmp_called_name_37 = LOOKUP_ATTRIBUTE( tmp_source_name_49, const_str_plain___prepare__ );
    if ( tmp_called_name_37 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    tmp_tuple_element_25 = const_str_plain_OFB;
    tmp_args_name_17 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_25 );
    PyTuple_SET_ITEM( tmp_args_name_17, 0, tmp_tuple_element_25 );
    CHECK_OBJECT( tmp_class_creation_9__bases );
    tmp_tuple_element_25 = tmp_class_creation_9__bases;
    Py_INCREF( tmp_tuple_element_25 );
    PyTuple_SET_ITEM( tmp_args_name_17, 1, tmp_tuple_element_25 );
    CHECK_OBJECT( tmp_class_creation_9__class_decl_dict );
    tmp_kw_name_17 = tmp_class_creation_9__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 133;
    tmp_assign_source_73 = CALL_FUNCTION( tmp_called_name_37, tmp_args_name_17, tmp_kw_name_17 );
    Py_DECREF( tmp_called_name_37 );
    Py_DECREF( tmp_args_name_17 );
    if ( tmp_assign_source_73 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    assert( tmp_class_creation_9__prepared == NULL );
    tmp_class_creation_9__prepared = tmp_assign_source_73;

    }
    {
    nuitka_bool tmp_condition_result_53;
    PyObject *tmp_operand_name_9;
    PyObject *tmp_source_name_50;
    CHECK_OBJECT( tmp_class_creation_9__prepared );
    tmp_source_name_50 = tmp_class_creation_9__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_50, const_str_plain___getitem__ );
    tmp_operand_name_9 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_9 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    tmp_condition_result_53 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_53 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_35;
    }
    else
    {
        goto branch_no_35;
    }
    branch_yes_35:;
    {
    PyObject *tmp_raise_type_9;
    PyObject *tmp_raise_value_9;
    PyObject *tmp_left_name_9;
    PyObject *tmp_right_name_9;
    PyObject *tmp_tuple_element_26;
    PyObject *tmp_getattr_target_9;
    PyObject *tmp_getattr_attr_9;
    PyObject *tmp_getattr_default_9;
    PyObject *tmp_source_name_51;
    PyObject *tmp_type_arg_18;
    tmp_raise_type_9 = PyExc_TypeError;
    tmp_left_name_9 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_9__metaclass );
    tmp_getattr_target_9 = tmp_class_creation_9__metaclass;
    tmp_getattr_attr_9 = const_str_plain___name__;
    tmp_getattr_default_9 = const_str_angle_metaclass;
    tmp_tuple_element_26 = BUILTIN_GETATTR( tmp_getattr_target_9, tmp_getattr_attr_9, tmp_getattr_default_9 );
    if ( tmp_tuple_element_26 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    tmp_right_name_9 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_9, 0, tmp_tuple_element_26 );
    CHECK_OBJECT( tmp_class_creation_9__prepared );
    tmp_type_arg_18 = tmp_class_creation_9__prepared;
    tmp_source_name_51 = BUILTIN_TYPE1( tmp_type_arg_18 );
    assert( !(tmp_source_name_51 == NULL) );
    tmp_tuple_element_26 = LOOKUP_ATTRIBUTE( tmp_source_name_51, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_51 );
    if ( tmp_tuple_element_26 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_9 );

        exception_lineno = 133;

        goto try_except_handler_26;
    }
    PyTuple_SET_ITEM( tmp_right_name_9, 1, tmp_tuple_element_26 );
    tmp_raise_value_9 = BINARY_OPERATION_REMAINDER( tmp_left_name_9, tmp_right_name_9 );
    Py_DECREF( tmp_right_name_9 );
    if ( tmp_raise_value_9 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_26;
    }
    exception_type = tmp_raise_type_9;
    Py_INCREF( tmp_raise_type_9 );
    exception_value = tmp_raise_value_9;
    exception_lineno = 133;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_26;
    }
    branch_no_35:;
    }
    goto branch_end_34;
    branch_no_34:;
    {
    PyObject *tmp_assign_source_74;
    tmp_assign_source_74 = PyDict_New();
    assert( tmp_class_creation_9__prepared == NULL );
    tmp_class_creation_9__prepared = tmp_assign_source_74;

    }
    branch_end_34:;
    }
    {
    PyObject *tmp_assign_source_75;
    PyObject *tmp_called_name_38;
    PyObject *tmp_called_name_39;
    PyObject *tmp_source_name_52;
    PyObject *tmp_mvar_value_31;
    PyObject *tmp_args_element_name_27;
    PyObject *tmp_mvar_value_32;
    PyObject *tmp_args_element_name_28;
    PyObject *tmp_called_name_40;
    PyObject *tmp_called_name_41;
    PyObject *tmp_source_name_53;
    PyObject *tmp_mvar_value_33;
    PyObject *tmp_args_element_name_29;
    PyObject *tmp_mvar_value_34;
    PyObject *tmp_args_element_name_30;
    tmp_mvar_value_31 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_31 == NULL ))
    {
        tmp_mvar_value_31 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_31 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 131;

        goto try_except_handler_26;
    }

    tmp_source_name_52 = tmp_mvar_value_31;
    tmp_called_name_39 = LOOKUP_ATTRIBUTE( tmp_source_name_52, const_str_plain_register_interface );
    if ( tmp_called_name_39 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 131;

        goto try_except_handler_26;
    }
    tmp_mvar_value_32 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_Mode );

    if (unlikely( tmp_mvar_value_32 == NULL ))
    {
        tmp_mvar_value_32 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_Mode );
    }

    if ( tmp_mvar_value_32 == NULL )
    {
        Py_DECREF( tmp_called_name_39 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "Mode" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 131;

        goto try_except_handler_26;
    }

    tmp_args_element_name_27 = tmp_mvar_value_32;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 131;
    {
        PyObject *call_args[] = { tmp_args_element_name_27 };
        tmp_called_name_38 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_39, call_args );
    }

    Py_DECREF( tmp_called_name_39 );
    if ( tmp_called_name_38 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 131;

        goto try_except_handler_26;
    }
    tmp_mvar_value_33 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_33 == NULL ))
    {
        tmp_mvar_value_33 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_33 == NULL )
    {
        Py_DECREF( tmp_called_name_38 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 132;

        goto try_except_handler_26;
    }

    tmp_source_name_53 = tmp_mvar_value_33;
    tmp_called_name_41 = LOOKUP_ATTRIBUTE( tmp_source_name_53, const_str_plain_register_interface );
    if ( tmp_called_name_41 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_38 );

        exception_lineno = 132;

        goto try_except_handler_26;
    }
    tmp_mvar_value_34 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector );

    if (unlikely( tmp_mvar_value_34 == NULL ))
    {
        tmp_mvar_value_34 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector );
    }

    if ( tmp_mvar_value_34 == NULL )
    {
        Py_DECREF( tmp_called_name_38 );
        Py_DECREF( tmp_called_name_41 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "ModeWithInitializationVector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 132;

        goto try_except_handler_26;
    }

    tmp_args_element_name_29 = tmp_mvar_value_34;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 132;
    {
        PyObject *call_args[] = { tmp_args_element_name_29 };
        tmp_called_name_40 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_41, call_args );
    }

    Py_DECREF( tmp_called_name_41 );
    if ( tmp_called_name_40 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_38 );

        exception_lineno = 132;

        goto try_except_handler_26;
    }
    {
    PyObject *tmp_set_locals_9;
    CHECK_OBJECT( tmp_class_creation_9__prepared );
    tmp_set_locals_9 = tmp_class_creation_9__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_133 = tmp_set_locals_9;
    Py_INCREF( tmp_set_locals_9 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_133, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_28;
    }
    }
    {
    tmp_dictset_value = const_str_plain_OFB;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_133, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_28;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_f9d064097d084f21e7a65220f71dfa67_10, codeobj_f9d064097d084f21e7a65220f71dfa67, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_f9d064097d084f21e7a65220f71dfa67_10 = cache_frame_f9d064097d084f21e7a65220f71dfa67_10;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_f9d064097d084f21e7a65220f71dfa67_10 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_f9d064097d084f21e7a65220f71dfa67_10 ) == 2 ); // Frame stack

    // Framed code:
    {
    tmp_dictset_value = const_str_plain_OFB;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_133, const_str_plain_name, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 134;
        type_description_2 = "o";
        goto frame_exception_exit_10;
    }
    }
    {
    tmp_dictset_value = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_13___init__(  );



    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_133, const_str_plain___init__, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 136;
        type_description_2 = "o";
        goto frame_exception_exit_10;
    }
    }
    {
    PyObject *tmp_called_instance_9;
    PyObject *tmp_mvar_value_35;
    tmp_called_instance_9 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_133, const_str_plain_utils );

    if ( tmp_called_instance_9 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_35 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

        if (unlikely( tmp_mvar_value_35 == NULL ))
        {
            tmp_mvar_value_35 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
        }

        if ( tmp_mvar_value_35 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 142;
            type_description_2 = "o";
            goto frame_exception_exit_10;
        }

        tmp_called_instance_9 = tmp_mvar_value_35;
        Py_INCREF( tmp_called_instance_9 );
        }
    }

    frame_f9d064097d084f21e7a65220f71dfa67_10->m_frame.f_lineno = 142;
    tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_9, const_str_plain_read_only_property, &PyTuple_GET_ITEM( const_tuple_str_plain__initialization_vector_tuple, 0 ) );

    Py_DECREF( tmp_called_instance_9 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 142;
        type_description_2 = "o";
        goto frame_exception_exit_10;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_133, const_str_plain_initialization_vector, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 142;
        type_description_2 = "o";
        goto frame_exception_exit_10;
    }
    }
    {
    PyObject *tmp_mvar_value_36;
    tmp_dictset_value = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_133, const_str_plain__check_iv_and_key_length );

    if ( tmp_dictset_value == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_36 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_iv_and_key_length );

        if (unlikely( tmp_mvar_value_36 == NULL ))
        {
            tmp_mvar_value_36 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain__check_iv_and_key_length );
        }

        if ( tmp_mvar_value_36 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "_check_iv_and_key_length" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 143;
            type_description_2 = "o";
            goto frame_exception_exit_10;
        }

        tmp_dictset_value = tmp_mvar_value_36;
        Py_INCREF( tmp_dictset_value );
        }
    }

    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_133, const_str_plain_validate_for_algorithm, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 143;
        type_description_2 = "o";
        goto frame_exception_exit_10;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_f9d064097d084f21e7a65220f71dfa67_10 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_9;

    frame_exception_exit_10:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_f9d064097d084f21e7a65220f71dfa67_10 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_f9d064097d084f21e7a65220f71dfa67_10, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_f9d064097d084f21e7a65220f71dfa67_10->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_f9d064097d084f21e7a65220f71dfa67_10, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_f9d064097d084f21e7a65220f71dfa67_10,
        type_description_2,
        outline_8_var___class__
    );


    // Release cached frame.
    if ( frame_f9d064097d084f21e7a65220f71dfa67_10 == cache_frame_f9d064097d084f21e7a65220f71dfa67_10 )
    {
        Py_DECREF( frame_f9d064097d084f21e7a65220f71dfa67_10 );
    }
    cache_frame_f9d064097d084f21e7a65220f71dfa67_10 = NULL;

    assertFrameObject( frame_f9d064097d084f21e7a65220f71dfa67_10 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_9;

    frame_no_exception_9:;
    goto skip_nested_handling_9;
    nested_frame_exit_9:;

    goto try_except_handler_28;
    skip_nested_handling_9:;
    {
    nuitka_bool tmp_condition_result_54;
    PyObject *tmp_compexpr_left_9;
    PyObject *tmp_compexpr_right_9;
    CHECK_OBJECT( tmp_class_creation_9__bases );
    tmp_compexpr_left_9 = tmp_class_creation_9__bases;
    tmp_compexpr_right_9 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_9, tmp_compexpr_right_9 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_28;
    }
    tmp_condition_result_54 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_54 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_36;
    }
    else
    {
        goto branch_no_36;
    }
    branch_yes_36:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_133, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_28;
    }
    }
    branch_no_36:;
    }
    {
    PyObject *tmp_assign_source_76;
    PyObject *tmp_called_name_42;
    PyObject *tmp_args_name_18;
    PyObject *tmp_tuple_element_27;
    PyObject *tmp_kw_name_18;
    CHECK_OBJECT( tmp_class_creation_9__metaclass );
    tmp_called_name_42 = tmp_class_creation_9__metaclass;
    tmp_tuple_element_27 = const_str_plain_OFB;
    tmp_args_name_18 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_27 );
    PyTuple_SET_ITEM( tmp_args_name_18, 0, tmp_tuple_element_27 );
    CHECK_OBJECT( tmp_class_creation_9__bases );
    tmp_tuple_element_27 = tmp_class_creation_9__bases;
    Py_INCREF( tmp_tuple_element_27 );
    PyTuple_SET_ITEM( tmp_args_name_18, 1, tmp_tuple_element_27 );
    tmp_tuple_element_27 = locals_cryptography$hazmat$primitives$ciphers$modes_133;
    Py_INCREF( tmp_tuple_element_27 );
    PyTuple_SET_ITEM( tmp_args_name_18, 2, tmp_tuple_element_27 );
    CHECK_OBJECT( tmp_class_creation_9__class_decl_dict );
    tmp_kw_name_18 = tmp_class_creation_9__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 133;
    tmp_assign_source_76 = CALL_FUNCTION( tmp_called_name_42, tmp_args_name_18, tmp_kw_name_18 );
    Py_DECREF( tmp_args_name_18 );
    if ( tmp_assign_source_76 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 133;

        goto try_except_handler_28;
    }
    assert( outline_8_var___class__ == NULL );
    outline_8_var___class__ = tmp_assign_source_76;

    }
    {
    CHECK_OBJECT( outline_8_var___class__ );
    tmp_args_element_name_30 = outline_8_var___class__;
    Py_INCREF( tmp_args_element_name_30 );
    goto try_return_handler_28;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_28:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_133 );
    locals_cryptography$hazmat$primitives$ciphers$modes_133 = NULL;
    }
    {
    goto try_return_handler_27;
    }
    // Exception handler code:
    try_except_handler_28:;
    exception_keeper_type_26 = exception_type;
    exception_keeper_value_26 = exception_value;
    exception_keeper_tb_26 = exception_tb;
    exception_keeper_lineno_26 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_133 );
    locals_cryptography$hazmat$primitives$ciphers$modes_133 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_26;
    exception_value = exception_keeper_value_26;
    exception_tb = exception_keeper_tb_26;
    exception_lineno = exception_keeper_lineno_26;

    goto try_except_handler_27;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_27:;
    {
    CHECK_OBJECT( (PyObject *)outline_8_var___class__ );
    Py_DECREF( outline_8_var___class__ );
    outline_8_var___class__ = NULL;

    }
    {
    goto outline_result_9;
    }
    // Exception handler code:
    try_except_handler_27:;
    exception_keeper_type_27 = exception_type;
    exception_keeper_value_27 = exception_value;
    exception_keeper_tb_27 = exception_tb;
    exception_keeper_lineno_27 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_27;
    exception_value = exception_keeper_value_27;
    exception_tb = exception_keeper_tb_27;
    exception_lineno = exception_keeper_lineno_27;

    goto outline_exception_9;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_9:;
    exception_lineno = 133;
    goto try_except_handler_26;
    outline_result_9:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 132;
    {
        PyObject *call_args[] = { tmp_args_element_name_30 };
        tmp_args_element_name_28 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_40, call_args );
    }

    Py_DECREF( tmp_called_name_40 );
    Py_DECREF( tmp_args_element_name_30 );
    if ( tmp_args_element_name_28 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_38 );

        exception_lineno = 132;

        goto try_except_handler_26;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 131;
    {
        PyObject *call_args[] = { tmp_args_element_name_28 };
        tmp_assign_source_75 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_38, call_args );
    }

    Py_DECREF( tmp_called_name_38 );
    Py_DECREF( tmp_args_element_name_28 );
    if ( tmp_assign_source_75 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 131;

        goto try_except_handler_26;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_OFB, tmp_assign_source_75 );
    }
    goto try_end_10;
    // Exception handler code:
    try_except_handler_26:;
    exception_keeper_type_28 = exception_type;
    exception_keeper_value_28 = exception_value;
    exception_keeper_tb_28 = exception_tb;
    exception_keeper_lineno_28 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_9__bases );
    tmp_class_creation_9__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_9__class_decl_dict );
    tmp_class_creation_9__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_9__metaclass );
    tmp_class_creation_9__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_9__prepared );
    tmp_class_creation_9__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_28;
    exception_value = exception_keeper_value_28;
    exception_tb = exception_keeper_tb_28;
    exception_lineno = exception_keeper_lineno_28;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_10:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_9__bases );
    Py_DECREF( tmp_class_creation_9__bases );
    tmp_class_creation_9__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_9__class_decl_dict );
    Py_DECREF( tmp_class_creation_9__class_decl_dict );
    tmp_class_creation_9__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_9__metaclass );
    Py_DECREF( tmp_class_creation_9__metaclass );
    tmp_class_creation_9__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_9__prepared );
    Py_DECREF( tmp_class_creation_9__prepared );
    tmp_class_creation_9__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_77;
    PyObject *tmp_dircall_arg1_10;
    tmp_dircall_arg1_10 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_10 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_10};
        tmp_assign_source_77 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_77 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    assert( tmp_class_creation_10__bases == NULL );
    tmp_class_creation_10__bases = tmp_assign_source_77;

    }
    {
    PyObject *tmp_assign_source_78;
    tmp_assign_source_78 = PyDict_New();
    assert( tmp_class_creation_10__class_decl_dict == NULL );
    tmp_class_creation_10__class_decl_dict = tmp_assign_source_78;

    }
    {
    PyObject *tmp_assign_source_79;
    PyObject *tmp_metaclass_name_10;
    nuitka_bool tmp_condition_result_55;
    PyObject *tmp_key_name_28;
    PyObject *tmp_dict_name_28;
    PyObject *tmp_dict_name_29;
    PyObject *tmp_key_name_29;
    nuitka_bool tmp_condition_result_56;
    int tmp_truth_name_10;
    PyObject *tmp_type_arg_19;
    PyObject *tmp_subscribed_name_10;
    PyObject *tmp_subscript_name_10;
    PyObject *tmp_bases_name_10;
    tmp_key_name_28 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_10__class_decl_dict );
    tmp_dict_name_28 = tmp_class_creation_10__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_28, tmp_key_name_28 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    tmp_condition_result_55 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_55 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_19;
    }
    else
    {
        goto condexpr_false_19;
    }
    condexpr_true_19:;
    CHECK_OBJECT( tmp_class_creation_10__class_decl_dict );
    tmp_dict_name_29 = tmp_class_creation_10__class_decl_dict;
    tmp_key_name_29 = const_str_plain_metaclass;
    tmp_metaclass_name_10 = DICT_GET_ITEM( tmp_dict_name_29, tmp_key_name_29 );
    if ( tmp_metaclass_name_10 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    goto condexpr_end_19;
    condexpr_false_19:;
    CHECK_OBJECT( tmp_class_creation_10__bases );
    tmp_truth_name_10 = CHECK_IF_TRUE( tmp_class_creation_10__bases );
    if ( tmp_truth_name_10 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    tmp_condition_result_56 = tmp_truth_name_10 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_56 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_20;
    }
    else
    {
        goto condexpr_false_20;
    }
    condexpr_true_20:;
    CHECK_OBJECT( tmp_class_creation_10__bases );
    tmp_subscribed_name_10 = tmp_class_creation_10__bases;
    tmp_subscript_name_10 = const_int_0;
    tmp_type_arg_19 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_10, tmp_subscript_name_10, 0 );
    if ( tmp_type_arg_19 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    tmp_metaclass_name_10 = BUILTIN_TYPE1( tmp_type_arg_19 );
    Py_DECREF( tmp_type_arg_19 );
    if ( tmp_metaclass_name_10 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    goto condexpr_end_20;
    condexpr_false_20:;
    tmp_metaclass_name_10 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_10 );
    condexpr_end_20:;
    condexpr_end_19:;
    CHECK_OBJECT( tmp_class_creation_10__bases );
    tmp_bases_name_10 = tmp_class_creation_10__bases;
    tmp_assign_source_79 = SELECT_METACLASS( tmp_metaclass_name_10, tmp_bases_name_10 );
    Py_DECREF( tmp_metaclass_name_10 );
    if ( tmp_assign_source_79 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    assert( tmp_class_creation_10__metaclass == NULL );
    tmp_class_creation_10__metaclass = tmp_assign_source_79;

    }
    {
    nuitka_bool tmp_condition_result_57;
    PyObject *tmp_key_name_30;
    PyObject *tmp_dict_name_30;
    tmp_key_name_30 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_10__class_decl_dict );
    tmp_dict_name_30 = tmp_class_creation_10__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_30, tmp_key_name_30 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    tmp_condition_result_57 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_57 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_37;
    }
    else
    {
        goto branch_no_37;
    }
    branch_yes_37:;
    {
    CHECK_OBJECT( tmp_class_creation_10__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_10__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    }
    branch_no_37:;
    }
    {
    nuitka_bool tmp_condition_result_58;
    PyObject *tmp_source_name_54;
    CHECK_OBJECT( tmp_class_creation_10__metaclass );
    tmp_source_name_54 = tmp_class_creation_10__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_54, const_str_plain___prepare__ );
    tmp_condition_result_58 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_58 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_38;
    }
    else
    {
        goto branch_no_38;
    }
    branch_yes_38:;
    {
    PyObject *tmp_assign_source_80;
    PyObject *tmp_called_name_43;
    PyObject *tmp_source_name_55;
    PyObject *tmp_args_name_19;
    PyObject *tmp_tuple_element_28;
    PyObject *tmp_kw_name_19;
    CHECK_OBJECT( tmp_class_creation_10__metaclass );
    tmp_source_name_55 = tmp_class_creation_10__metaclass;
    tmp_called_name_43 = LOOKUP_ATTRIBUTE( tmp_source_name_55, const_str_plain___prepare__ );
    if ( tmp_called_name_43 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    tmp_tuple_element_28 = const_str_plain_CFB;
    tmp_args_name_19 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_28 );
    PyTuple_SET_ITEM( tmp_args_name_19, 0, tmp_tuple_element_28 );
    CHECK_OBJECT( tmp_class_creation_10__bases );
    tmp_tuple_element_28 = tmp_class_creation_10__bases;
    Py_INCREF( tmp_tuple_element_28 );
    PyTuple_SET_ITEM( tmp_args_name_19, 1, tmp_tuple_element_28 );
    CHECK_OBJECT( tmp_class_creation_10__class_decl_dict );
    tmp_kw_name_19 = tmp_class_creation_10__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 148;
    tmp_assign_source_80 = CALL_FUNCTION( tmp_called_name_43, tmp_args_name_19, tmp_kw_name_19 );
    Py_DECREF( tmp_called_name_43 );
    Py_DECREF( tmp_args_name_19 );
    if ( tmp_assign_source_80 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    assert( tmp_class_creation_10__prepared == NULL );
    tmp_class_creation_10__prepared = tmp_assign_source_80;

    }
    {
    nuitka_bool tmp_condition_result_59;
    PyObject *tmp_operand_name_10;
    PyObject *tmp_source_name_56;
    CHECK_OBJECT( tmp_class_creation_10__prepared );
    tmp_source_name_56 = tmp_class_creation_10__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_56, const_str_plain___getitem__ );
    tmp_operand_name_10 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_10 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    tmp_condition_result_59 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_59 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_39;
    }
    else
    {
        goto branch_no_39;
    }
    branch_yes_39:;
    {
    PyObject *tmp_raise_type_10;
    PyObject *tmp_raise_value_10;
    PyObject *tmp_left_name_10;
    PyObject *tmp_right_name_10;
    PyObject *tmp_tuple_element_29;
    PyObject *tmp_getattr_target_10;
    PyObject *tmp_getattr_attr_10;
    PyObject *tmp_getattr_default_10;
    PyObject *tmp_source_name_57;
    PyObject *tmp_type_arg_20;
    tmp_raise_type_10 = PyExc_TypeError;
    tmp_left_name_10 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_10__metaclass );
    tmp_getattr_target_10 = tmp_class_creation_10__metaclass;
    tmp_getattr_attr_10 = const_str_plain___name__;
    tmp_getattr_default_10 = const_str_angle_metaclass;
    tmp_tuple_element_29 = BUILTIN_GETATTR( tmp_getattr_target_10, tmp_getattr_attr_10, tmp_getattr_default_10 );
    if ( tmp_tuple_element_29 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    tmp_right_name_10 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_10, 0, tmp_tuple_element_29 );
    CHECK_OBJECT( tmp_class_creation_10__prepared );
    tmp_type_arg_20 = tmp_class_creation_10__prepared;
    tmp_source_name_57 = BUILTIN_TYPE1( tmp_type_arg_20 );
    assert( !(tmp_source_name_57 == NULL) );
    tmp_tuple_element_29 = LOOKUP_ATTRIBUTE( tmp_source_name_57, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_57 );
    if ( tmp_tuple_element_29 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_10 );

        exception_lineno = 148;

        goto try_except_handler_29;
    }
    PyTuple_SET_ITEM( tmp_right_name_10, 1, tmp_tuple_element_29 );
    tmp_raise_value_10 = BINARY_OPERATION_REMAINDER( tmp_left_name_10, tmp_right_name_10 );
    Py_DECREF( tmp_right_name_10 );
    if ( tmp_raise_value_10 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_29;
    }
    exception_type = tmp_raise_type_10;
    Py_INCREF( tmp_raise_type_10 );
    exception_value = tmp_raise_value_10;
    exception_lineno = 148;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_29;
    }
    branch_no_39:;
    }
    goto branch_end_38;
    branch_no_38:;
    {
    PyObject *tmp_assign_source_81;
    tmp_assign_source_81 = PyDict_New();
    assert( tmp_class_creation_10__prepared == NULL );
    tmp_class_creation_10__prepared = tmp_assign_source_81;

    }
    branch_end_38:;
    }
    {
    PyObject *tmp_assign_source_82;
    PyObject *tmp_called_name_44;
    PyObject *tmp_called_name_45;
    PyObject *tmp_source_name_58;
    PyObject *tmp_mvar_value_37;
    PyObject *tmp_args_element_name_31;
    PyObject *tmp_mvar_value_38;
    PyObject *tmp_args_element_name_32;
    PyObject *tmp_called_name_46;
    PyObject *tmp_called_name_47;
    PyObject *tmp_source_name_59;
    PyObject *tmp_mvar_value_39;
    PyObject *tmp_args_element_name_33;
    PyObject *tmp_mvar_value_40;
    PyObject *tmp_args_element_name_34;
    tmp_mvar_value_37 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_37 == NULL ))
    {
        tmp_mvar_value_37 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_37 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 146;

        goto try_except_handler_29;
    }

    tmp_source_name_58 = tmp_mvar_value_37;
    tmp_called_name_45 = LOOKUP_ATTRIBUTE( tmp_source_name_58, const_str_plain_register_interface );
    if ( tmp_called_name_45 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 146;

        goto try_except_handler_29;
    }
    tmp_mvar_value_38 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_Mode );

    if (unlikely( tmp_mvar_value_38 == NULL ))
    {
        tmp_mvar_value_38 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_Mode );
    }

    if ( tmp_mvar_value_38 == NULL )
    {
        Py_DECREF( tmp_called_name_45 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "Mode" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 146;

        goto try_except_handler_29;
    }

    tmp_args_element_name_31 = tmp_mvar_value_38;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 146;
    {
        PyObject *call_args[] = { tmp_args_element_name_31 };
        tmp_called_name_44 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_45, call_args );
    }

    Py_DECREF( tmp_called_name_45 );
    if ( tmp_called_name_44 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 146;

        goto try_except_handler_29;
    }
    tmp_mvar_value_39 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_39 == NULL ))
    {
        tmp_mvar_value_39 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_39 == NULL )
    {
        Py_DECREF( tmp_called_name_44 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 147;

        goto try_except_handler_29;
    }

    tmp_source_name_59 = tmp_mvar_value_39;
    tmp_called_name_47 = LOOKUP_ATTRIBUTE( tmp_source_name_59, const_str_plain_register_interface );
    if ( tmp_called_name_47 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_44 );

        exception_lineno = 147;

        goto try_except_handler_29;
    }
    tmp_mvar_value_40 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector );

    if (unlikely( tmp_mvar_value_40 == NULL ))
    {
        tmp_mvar_value_40 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector );
    }

    if ( tmp_mvar_value_40 == NULL )
    {
        Py_DECREF( tmp_called_name_44 );
        Py_DECREF( tmp_called_name_47 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "ModeWithInitializationVector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 147;

        goto try_except_handler_29;
    }

    tmp_args_element_name_33 = tmp_mvar_value_40;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 147;
    {
        PyObject *call_args[] = { tmp_args_element_name_33 };
        tmp_called_name_46 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_47, call_args );
    }

    Py_DECREF( tmp_called_name_47 );
    if ( tmp_called_name_46 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_44 );

        exception_lineno = 147;

        goto try_except_handler_29;
    }
    {
    PyObject *tmp_set_locals_10;
    CHECK_OBJECT( tmp_class_creation_10__prepared );
    tmp_set_locals_10 = tmp_class_creation_10__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_148 = tmp_set_locals_10;
    Py_INCREF( tmp_set_locals_10 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_148, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_31;
    }
    }
    {
    tmp_dictset_value = const_str_plain_CFB;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_148, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_31;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_a2f3ffb099ee1757765dc8d6d5b64e75_11, codeobj_a2f3ffb099ee1757765dc8d6d5b64e75, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 = cache_frame_a2f3ffb099ee1757765dc8d6d5b64e75_11;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 ) == 2 ); // Frame stack

    // Framed code:
    {
    tmp_dictset_value = const_str_plain_CFB;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_148, const_str_plain_name, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 149;
        type_description_2 = "o";
        goto frame_exception_exit_11;
    }
    }
    {
    tmp_dictset_value = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_14___init__(  );



    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_148, const_str_plain___init__, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 151;
        type_description_2 = "o";
        goto frame_exception_exit_11;
    }
    }
    {
    PyObject *tmp_called_instance_10;
    PyObject *tmp_mvar_value_41;
    tmp_called_instance_10 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_148, const_str_plain_utils );

    if ( tmp_called_instance_10 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_41 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

        if (unlikely( tmp_mvar_value_41 == NULL ))
        {
            tmp_mvar_value_41 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
        }

        if ( tmp_mvar_value_41 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 157;
            type_description_2 = "o";
            goto frame_exception_exit_11;
        }

        tmp_called_instance_10 = tmp_mvar_value_41;
        Py_INCREF( tmp_called_instance_10 );
        }
    }

    frame_a2f3ffb099ee1757765dc8d6d5b64e75_11->m_frame.f_lineno = 157;
    tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_10, const_str_plain_read_only_property, &PyTuple_GET_ITEM( const_tuple_str_plain__initialization_vector_tuple, 0 ) );

    Py_DECREF( tmp_called_instance_10 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 157;
        type_description_2 = "o";
        goto frame_exception_exit_11;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_148, const_str_plain_initialization_vector, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 157;
        type_description_2 = "o";
        goto frame_exception_exit_11;
    }
    }
    {
    PyObject *tmp_mvar_value_42;
    tmp_dictset_value = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_148, const_str_plain__check_iv_and_key_length );

    if ( tmp_dictset_value == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_42 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_iv_and_key_length );

        if (unlikely( tmp_mvar_value_42 == NULL ))
        {
            tmp_mvar_value_42 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain__check_iv_and_key_length );
        }

        if ( tmp_mvar_value_42 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "_check_iv_and_key_length" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 158;
            type_description_2 = "o";
            goto frame_exception_exit_11;
        }

        tmp_dictset_value = tmp_mvar_value_42;
        Py_INCREF( tmp_dictset_value );
        }
    }

    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_148, const_str_plain_validate_for_algorithm, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 158;
        type_description_2 = "o";
        goto frame_exception_exit_11;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_10;

    frame_exception_exit_11:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_a2f3ffb099ee1757765dc8d6d5b64e75_11, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_a2f3ffb099ee1757765dc8d6d5b64e75_11->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_a2f3ffb099ee1757765dc8d6d5b64e75_11, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_a2f3ffb099ee1757765dc8d6d5b64e75_11,
        type_description_2,
        outline_9_var___class__
    );


    // Release cached frame.
    if ( frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 == cache_frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 )
    {
        Py_DECREF( frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 );
    }
    cache_frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 = NULL;

    assertFrameObject( frame_a2f3ffb099ee1757765dc8d6d5b64e75_11 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_10;

    frame_no_exception_10:;
    goto skip_nested_handling_10;
    nested_frame_exit_10:;

    goto try_except_handler_31;
    skip_nested_handling_10:;
    {
    nuitka_bool tmp_condition_result_60;
    PyObject *tmp_compexpr_left_10;
    PyObject *tmp_compexpr_right_10;
    CHECK_OBJECT( tmp_class_creation_10__bases );
    tmp_compexpr_left_10 = tmp_class_creation_10__bases;
    tmp_compexpr_right_10 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_10, tmp_compexpr_right_10 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_31;
    }
    tmp_condition_result_60 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_60 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_40;
    }
    else
    {
        goto branch_no_40;
    }
    branch_yes_40:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_148, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_31;
    }
    }
    branch_no_40:;
    }
    {
    PyObject *tmp_assign_source_83;
    PyObject *tmp_called_name_48;
    PyObject *tmp_args_name_20;
    PyObject *tmp_tuple_element_30;
    PyObject *tmp_kw_name_20;
    CHECK_OBJECT( tmp_class_creation_10__metaclass );
    tmp_called_name_48 = tmp_class_creation_10__metaclass;
    tmp_tuple_element_30 = const_str_plain_CFB;
    tmp_args_name_20 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_30 );
    PyTuple_SET_ITEM( tmp_args_name_20, 0, tmp_tuple_element_30 );
    CHECK_OBJECT( tmp_class_creation_10__bases );
    tmp_tuple_element_30 = tmp_class_creation_10__bases;
    Py_INCREF( tmp_tuple_element_30 );
    PyTuple_SET_ITEM( tmp_args_name_20, 1, tmp_tuple_element_30 );
    tmp_tuple_element_30 = locals_cryptography$hazmat$primitives$ciphers$modes_148;
    Py_INCREF( tmp_tuple_element_30 );
    PyTuple_SET_ITEM( tmp_args_name_20, 2, tmp_tuple_element_30 );
    CHECK_OBJECT( tmp_class_creation_10__class_decl_dict );
    tmp_kw_name_20 = tmp_class_creation_10__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 148;
    tmp_assign_source_83 = CALL_FUNCTION( tmp_called_name_48, tmp_args_name_20, tmp_kw_name_20 );
    Py_DECREF( tmp_args_name_20 );
    if ( tmp_assign_source_83 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 148;

        goto try_except_handler_31;
    }
    assert( outline_9_var___class__ == NULL );
    outline_9_var___class__ = tmp_assign_source_83;

    }
    {
    CHECK_OBJECT( outline_9_var___class__ );
    tmp_args_element_name_34 = outline_9_var___class__;
    Py_INCREF( tmp_args_element_name_34 );
    goto try_return_handler_31;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_31:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_148 );
    locals_cryptography$hazmat$primitives$ciphers$modes_148 = NULL;
    }
    {
    goto try_return_handler_30;
    }
    // Exception handler code:
    try_except_handler_31:;
    exception_keeper_type_29 = exception_type;
    exception_keeper_value_29 = exception_value;
    exception_keeper_tb_29 = exception_tb;
    exception_keeper_lineno_29 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_148 );
    locals_cryptography$hazmat$primitives$ciphers$modes_148 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_29;
    exception_value = exception_keeper_value_29;
    exception_tb = exception_keeper_tb_29;
    exception_lineno = exception_keeper_lineno_29;

    goto try_except_handler_30;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_30:;
    {
    CHECK_OBJECT( (PyObject *)outline_9_var___class__ );
    Py_DECREF( outline_9_var___class__ );
    outline_9_var___class__ = NULL;

    }
    {
    goto outline_result_10;
    }
    // Exception handler code:
    try_except_handler_30:;
    exception_keeper_type_30 = exception_type;
    exception_keeper_value_30 = exception_value;
    exception_keeper_tb_30 = exception_tb;
    exception_keeper_lineno_30 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_30;
    exception_value = exception_keeper_value_30;
    exception_tb = exception_keeper_tb_30;
    exception_lineno = exception_keeper_lineno_30;

    goto outline_exception_10;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_10:;
    exception_lineno = 148;
    goto try_except_handler_29;
    outline_result_10:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 147;
    {
        PyObject *call_args[] = { tmp_args_element_name_34 };
        tmp_args_element_name_32 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_46, call_args );
    }

    Py_DECREF( tmp_called_name_46 );
    Py_DECREF( tmp_args_element_name_34 );
    if ( tmp_args_element_name_32 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_44 );

        exception_lineno = 147;

        goto try_except_handler_29;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 146;
    {
        PyObject *call_args[] = { tmp_args_element_name_32 };
        tmp_assign_source_82 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_44, call_args );
    }

    Py_DECREF( tmp_called_name_44 );
    Py_DECREF( tmp_args_element_name_32 );
    if ( tmp_assign_source_82 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 146;

        goto try_except_handler_29;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_CFB, tmp_assign_source_82 );
    }
    goto try_end_11;
    // Exception handler code:
    try_except_handler_29:;
    exception_keeper_type_31 = exception_type;
    exception_keeper_value_31 = exception_value;
    exception_keeper_tb_31 = exception_tb;
    exception_keeper_lineno_31 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_10__bases );
    tmp_class_creation_10__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_10__class_decl_dict );
    tmp_class_creation_10__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_10__metaclass );
    tmp_class_creation_10__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_10__prepared );
    tmp_class_creation_10__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_31;
    exception_value = exception_keeper_value_31;
    exception_tb = exception_keeper_tb_31;
    exception_lineno = exception_keeper_lineno_31;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_11:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_10__bases );
    Py_DECREF( tmp_class_creation_10__bases );
    tmp_class_creation_10__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_10__class_decl_dict );
    Py_DECREF( tmp_class_creation_10__class_decl_dict );
    tmp_class_creation_10__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_10__metaclass );
    Py_DECREF( tmp_class_creation_10__metaclass );
    tmp_class_creation_10__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_10__prepared );
    Py_DECREF( tmp_class_creation_10__prepared );
    tmp_class_creation_10__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_84;
    PyObject *tmp_dircall_arg1_11;
    tmp_dircall_arg1_11 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_11 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_11};
        tmp_assign_source_84 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_84 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    assert( tmp_class_creation_11__bases == NULL );
    tmp_class_creation_11__bases = tmp_assign_source_84;

    }
    {
    PyObject *tmp_assign_source_85;
    tmp_assign_source_85 = PyDict_New();
    assert( tmp_class_creation_11__class_decl_dict == NULL );
    tmp_class_creation_11__class_decl_dict = tmp_assign_source_85;

    }
    {
    PyObject *tmp_assign_source_86;
    PyObject *tmp_metaclass_name_11;
    nuitka_bool tmp_condition_result_61;
    PyObject *tmp_key_name_31;
    PyObject *tmp_dict_name_31;
    PyObject *tmp_dict_name_32;
    PyObject *tmp_key_name_32;
    nuitka_bool tmp_condition_result_62;
    int tmp_truth_name_11;
    PyObject *tmp_type_arg_21;
    PyObject *tmp_subscribed_name_11;
    PyObject *tmp_subscript_name_11;
    PyObject *tmp_bases_name_11;
    tmp_key_name_31 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_11__class_decl_dict );
    tmp_dict_name_31 = tmp_class_creation_11__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_31, tmp_key_name_31 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    tmp_condition_result_61 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_61 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_21;
    }
    else
    {
        goto condexpr_false_21;
    }
    condexpr_true_21:;
    CHECK_OBJECT( tmp_class_creation_11__class_decl_dict );
    tmp_dict_name_32 = tmp_class_creation_11__class_decl_dict;
    tmp_key_name_32 = const_str_plain_metaclass;
    tmp_metaclass_name_11 = DICT_GET_ITEM( tmp_dict_name_32, tmp_key_name_32 );
    if ( tmp_metaclass_name_11 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    goto condexpr_end_21;
    condexpr_false_21:;
    CHECK_OBJECT( tmp_class_creation_11__bases );
    tmp_truth_name_11 = CHECK_IF_TRUE( tmp_class_creation_11__bases );
    if ( tmp_truth_name_11 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    tmp_condition_result_62 = tmp_truth_name_11 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_62 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_22;
    }
    else
    {
        goto condexpr_false_22;
    }
    condexpr_true_22:;
    CHECK_OBJECT( tmp_class_creation_11__bases );
    tmp_subscribed_name_11 = tmp_class_creation_11__bases;
    tmp_subscript_name_11 = const_int_0;
    tmp_type_arg_21 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_11, tmp_subscript_name_11, 0 );
    if ( tmp_type_arg_21 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    tmp_metaclass_name_11 = BUILTIN_TYPE1( tmp_type_arg_21 );
    Py_DECREF( tmp_type_arg_21 );
    if ( tmp_metaclass_name_11 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    goto condexpr_end_22;
    condexpr_false_22:;
    tmp_metaclass_name_11 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_11 );
    condexpr_end_22:;
    condexpr_end_21:;
    CHECK_OBJECT( tmp_class_creation_11__bases );
    tmp_bases_name_11 = tmp_class_creation_11__bases;
    tmp_assign_source_86 = SELECT_METACLASS( tmp_metaclass_name_11, tmp_bases_name_11 );
    Py_DECREF( tmp_metaclass_name_11 );
    if ( tmp_assign_source_86 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    assert( tmp_class_creation_11__metaclass == NULL );
    tmp_class_creation_11__metaclass = tmp_assign_source_86;

    }
    {
    nuitka_bool tmp_condition_result_63;
    PyObject *tmp_key_name_33;
    PyObject *tmp_dict_name_33;
    tmp_key_name_33 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_11__class_decl_dict );
    tmp_dict_name_33 = tmp_class_creation_11__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_33, tmp_key_name_33 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    tmp_condition_result_63 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_63 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_41;
    }
    else
    {
        goto branch_no_41;
    }
    branch_yes_41:;
    {
    CHECK_OBJECT( tmp_class_creation_11__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_11__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    }
    branch_no_41:;
    }
    {
    nuitka_bool tmp_condition_result_64;
    PyObject *tmp_source_name_60;
    CHECK_OBJECT( tmp_class_creation_11__metaclass );
    tmp_source_name_60 = tmp_class_creation_11__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_60, const_str_plain___prepare__ );
    tmp_condition_result_64 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_64 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_42;
    }
    else
    {
        goto branch_no_42;
    }
    branch_yes_42:;
    {
    PyObject *tmp_assign_source_87;
    PyObject *tmp_called_name_49;
    PyObject *tmp_source_name_61;
    PyObject *tmp_args_name_21;
    PyObject *tmp_tuple_element_31;
    PyObject *tmp_kw_name_21;
    CHECK_OBJECT( tmp_class_creation_11__metaclass );
    tmp_source_name_61 = tmp_class_creation_11__metaclass;
    tmp_called_name_49 = LOOKUP_ATTRIBUTE( tmp_source_name_61, const_str_plain___prepare__ );
    if ( tmp_called_name_49 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    tmp_tuple_element_31 = const_str_plain_CFB8;
    tmp_args_name_21 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_31 );
    PyTuple_SET_ITEM( tmp_args_name_21, 0, tmp_tuple_element_31 );
    CHECK_OBJECT( tmp_class_creation_11__bases );
    tmp_tuple_element_31 = tmp_class_creation_11__bases;
    Py_INCREF( tmp_tuple_element_31 );
    PyTuple_SET_ITEM( tmp_args_name_21, 1, tmp_tuple_element_31 );
    CHECK_OBJECT( tmp_class_creation_11__class_decl_dict );
    tmp_kw_name_21 = tmp_class_creation_11__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 163;
    tmp_assign_source_87 = CALL_FUNCTION( tmp_called_name_49, tmp_args_name_21, tmp_kw_name_21 );
    Py_DECREF( tmp_called_name_49 );
    Py_DECREF( tmp_args_name_21 );
    if ( tmp_assign_source_87 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    assert( tmp_class_creation_11__prepared == NULL );
    tmp_class_creation_11__prepared = tmp_assign_source_87;

    }
    {
    nuitka_bool tmp_condition_result_65;
    PyObject *tmp_operand_name_11;
    PyObject *tmp_source_name_62;
    CHECK_OBJECT( tmp_class_creation_11__prepared );
    tmp_source_name_62 = tmp_class_creation_11__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_62, const_str_plain___getitem__ );
    tmp_operand_name_11 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_11 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    tmp_condition_result_65 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_65 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_43;
    }
    else
    {
        goto branch_no_43;
    }
    branch_yes_43:;
    {
    PyObject *tmp_raise_type_11;
    PyObject *tmp_raise_value_11;
    PyObject *tmp_left_name_11;
    PyObject *tmp_right_name_11;
    PyObject *tmp_tuple_element_32;
    PyObject *tmp_getattr_target_11;
    PyObject *tmp_getattr_attr_11;
    PyObject *tmp_getattr_default_11;
    PyObject *tmp_source_name_63;
    PyObject *tmp_type_arg_22;
    tmp_raise_type_11 = PyExc_TypeError;
    tmp_left_name_11 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_11__metaclass );
    tmp_getattr_target_11 = tmp_class_creation_11__metaclass;
    tmp_getattr_attr_11 = const_str_plain___name__;
    tmp_getattr_default_11 = const_str_angle_metaclass;
    tmp_tuple_element_32 = BUILTIN_GETATTR( tmp_getattr_target_11, tmp_getattr_attr_11, tmp_getattr_default_11 );
    if ( tmp_tuple_element_32 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    tmp_right_name_11 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_11, 0, tmp_tuple_element_32 );
    CHECK_OBJECT( tmp_class_creation_11__prepared );
    tmp_type_arg_22 = tmp_class_creation_11__prepared;
    tmp_source_name_63 = BUILTIN_TYPE1( tmp_type_arg_22 );
    assert( !(tmp_source_name_63 == NULL) );
    tmp_tuple_element_32 = LOOKUP_ATTRIBUTE( tmp_source_name_63, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_63 );
    if ( tmp_tuple_element_32 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_11 );

        exception_lineno = 163;

        goto try_except_handler_32;
    }
    PyTuple_SET_ITEM( tmp_right_name_11, 1, tmp_tuple_element_32 );
    tmp_raise_value_11 = BINARY_OPERATION_REMAINDER( tmp_left_name_11, tmp_right_name_11 );
    Py_DECREF( tmp_right_name_11 );
    if ( tmp_raise_value_11 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_32;
    }
    exception_type = tmp_raise_type_11;
    Py_INCREF( tmp_raise_type_11 );
    exception_value = tmp_raise_value_11;
    exception_lineno = 163;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_32;
    }
    branch_no_43:;
    }
    goto branch_end_42;
    branch_no_42:;
    {
    PyObject *tmp_assign_source_88;
    tmp_assign_source_88 = PyDict_New();
    assert( tmp_class_creation_11__prepared == NULL );
    tmp_class_creation_11__prepared = tmp_assign_source_88;

    }
    branch_end_42:;
    }
    {
    PyObject *tmp_assign_source_89;
    PyObject *tmp_called_name_50;
    PyObject *tmp_called_name_51;
    PyObject *tmp_source_name_64;
    PyObject *tmp_mvar_value_43;
    PyObject *tmp_args_element_name_35;
    PyObject *tmp_mvar_value_44;
    PyObject *tmp_args_element_name_36;
    PyObject *tmp_called_name_52;
    PyObject *tmp_called_name_53;
    PyObject *tmp_source_name_65;
    PyObject *tmp_mvar_value_45;
    PyObject *tmp_args_element_name_37;
    PyObject *tmp_mvar_value_46;
    PyObject *tmp_args_element_name_38;
    tmp_mvar_value_43 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_43 == NULL ))
    {
        tmp_mvar_value_43 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_43 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 161;

        goto try_except_handler_32;
    }

    tmp_source_name_64 = tmp_mvar_value_43;
    tmp_called_name_51 = LOOKUP_ATTRIBUTE( tmp_source_name_64, const_str_plain_register_interface );
    if ( tmp_called_name_51 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 161;

        goto try_except_handler_32;
    }
    tmp_mvar_value_44 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_Mode );

    if (unlikely( tmp_mvar_value_44 == NULL ))
    {
        tmp_mvar_value_44 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_Mode );
    }

    if ( tmp_mvar_value_44 == NULL )
    {
        Py_DECREF( tmp_called_name_51 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "Mode" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 161;

        goto try_except_handler_32;
    }

    tmp_args_element_name_35 = tmp_mvar_value_44;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 161;
    {
        PyObject *call_args[] = { tmp_args_element_name_35 };
        tmp_called_name_50 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_51, call_args );
    }

    Py_DECREF( tmp_called_name_51 );
    if ( tmp_called_name_50 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 161;

        goto try_except_handler_32;
    }
    tmp_mvar_value_45 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_45 == NULL ))
    {
        tmp_mvar_value_45 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_45 == NULL )
    {
        Py_DECREF( tmp_called_name_50 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 162;

        goto try_except_handler_32;
    }

    tmp_source_name_65 = tmp_mvar_value_45;
    tmp_called_name_53 = LOOKUP_ATTRIBUTE( tmp_source_name_65, const_str_plain_register_interface );
    if ( tmp_called_name_53 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_50 );

        exception_lineno = 162;

        goto try_except_handler_32;
    }
    tmp_mvar_value_46 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector );

    if (unlikely( tmp_mvar_value_46 == NULL ))
    {
        tmp_mvar_value_46 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector );
    }

    if ( tmp_mvar_value_46 == NULL )
    {
        Py_DECREF( tmp_called_name_50 );
        Py_DECREF( tmp_called_name_53 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "ModeWithInitializationVector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 162;

        goto try_except_handler_32;
    }

    tmp_args_element_name_37 = tmp_mvar_value_46;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 162;
    {
        PyObject *call_args[] = { tmp_args_element_name_37 };
        tmp_called_name_52 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_53, call_args );
    }

    Py_DECREF( tmp_called_name_53 );
    if ( tmp_called_name_52 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_50 );

        exception_lineno = 162;

        goto try_except_handler_32;
    }
    {
    PyObject *tmp_set_locals_11;
    CHECK_OBJECT( tmp_class_creation_11__prepared );
    tmp_set_locals_11 = tmp_class_creation_11__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_163 = tmp_set_locals_11;
    Py_INCREF( tmp_set_locals_11 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_163, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_34;
    }
    }
    {
    tmp_dictset_value = const_str_plain_CFB8;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_163, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_34;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_1a6147609d04fd0908f4be17a979cb0a_12, codeobj_1a6147609d04fd0908f4be17a979cb0a, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_1a6147609d04fd0908f4be17a979cb0a_12 = cache_frame_1a6147609d04fd0908f4be17a979cb0a_12;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_1a6147609d04fd0908f4be17a979cb0a_12 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_1a6147609d04fd0908f4be17a979cb0a_12 ) == 2 ); // Frame stack

    // Framed code:
    {
    tmp_dictset_value = const_str_plain_CFB8;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_163, const_str_plain_name, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 164;
        type_description_2 = "o";
        goto frame_exception_exit_12;
    }
    }
    {
    tmp_dictset_value = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_15___init__(  );



    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_163, const_str_plain___init__, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 166;
        type_description_2 = "o";
        goto frame_exception_exit_12;
    }
    }
    {
    PyObject *tmp_called_instance_11;
    PyObject *tmp_mvar_value_47;
    tmp_called_instance_11 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_163, const_str_plain_utils );

    if ( tmp_called_instance_11 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_47 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

        if (unlikely( tmp_mvar_value_47 == NULL ))
        {
            tmp_mvar_value_47 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
        }

        if ( tmp_mvar_value_47 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 172;
            type_description_2 = "o";
            goto frame_exception_exit_12;
        }

        tmp_called_instance_11 = tmp_mvar_value_47;
        Py_INCREF( tmp_called_instance_11 );
        }
    }

    frame_1a6147609d04fd0908f4be17a979cb0a_12->m_frame.f_lineno = 172;
    tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_11, const_str_plain_read_only_property, &PyTuple_GET_ITEM( const_tuple_str_plain__initialization_vector_tuple, 0 ) );

    Py_DECREF( tmp_called_instance_11 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 172;
        type_description_2 = "o";
        goto frame_exception_exit_12;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_163, const_str_plain_initialization_vector, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 172;
        type_description_2 = "o";
        goto frame_exception_exit_12;
    }
    }
    {
    PyObject *tmp_mvar_value_48;
    tmp_dictset_value = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_163, const_str_plain__check_iv_and_key_length );

    if ( tmp_dictset_value == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_48 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain__check_iv_and_key_length );

        if (unlikely( tmp_mvar_value_48 == NULL ))
        {
            tmp_mvar_value_48 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain__check_iv_and_key_length );
        }

        if ( tmp_mvar_value_48 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "_check_iv_and_key_length" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 173;
            type_description_2 = "o";
            goto frame_exception_exit_12;
        }

        tmp_dictset_value = tmp_mvar_value_48;
        Py_INCREF( tmp_dictset_value );
        }
    }

    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_163, const_str_plain_validate_for_algorithm, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 173;
        type_description_2 = "o";
        goto frame_exception_exit_12;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_1a6147609d04fd0908f4be17a979cb0a_12 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_11;

    frame_exception_exit_12:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_1a6147609d04fd0908f4be17a979cb0a_12 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_1a6147609d04fd0908f4be17a979cb0a_12, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_1a6147609d04fd0908f4be17a979cb0a_12->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_1a6147609d04fd0908f4be17a979cb0a_12, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_1a6147609d04fd0908f4be17a979cb0a_12,
        type_description_2,
        outline_10_var___class__
    );


    // Release cached frame.
    if ( frame_1a6147609d04fd0908f4be17a979cb0a_12 == cache_frame_1a6147609d04fd0908f4be17a979cb0a_12 )
    {
        Py_DECREF( frame_1a6147609d04fd0908f4be17a979cb0a_12 );
    }
    cache_frame_1a6147609d04fd0908f4be17a979cb0a_12 = NULL;

    assertFrameObject( frame_1a6147609d04fd0908f4be17a979cb0a_12 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_11;

    frame_no_exception_11:;
    goto skip_nested_handling_11;
    nested_frame_exit_11:;

    goto try_except_handler_34;
    skip_nested_handling_11:;
    {
    nuitka_bool tmp_condition_result_66;
    PyObject *tmp_compexpr_left_11;
    PyObject *tmp_compexpr_right_11;
    CHECK_OBJECT( tmp_class_creation_11__bases );
    tmp_compexpr_left_11 = tmp_class_creation_11__bases;
    tmp_compexpr_right_11 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_11, tmp_compexpr_right_11 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_34;
    }
    tmp_condition_result_66 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_66 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_44;
    }
    else
    {
        goto branch_no_44;
    }
    branch_yes_44:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_163, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_34;
    }
    }
    branch_no_44:;
    }
    {
    PyObject *tmp_assign_source_90;
    PyObject *tmp_called_name_54;
    PyObject *tmp_args_name_22;
    PyObject *tmp_tuple_element_33;
    PyObject *tmp_kw_name_22;
    CHECK_OBJECT( tmp_class_creation_11__metaclass );
    tmp_called_name_54 = tmp_class_creation_11__metaclass;
    tmp_tuple_element_33 = const_str_plain_CFB8;
    tmp_args_name_22 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_33 );
    PyTuple_SET_ITEM( tmp_args_name_22, 0, tmp_tuple_element_33 );
    CHECK_OBJECT( tmp_class_creation_11__bases );
    tmp_tuple_element_33 = tmp_class_creation_11__bases;
    Py_INCREF( tmp_tuple_element_33 );
    PyTuple_SET_ITEM( tmp_args_name_22, 1, tmp_tuple_element_33 );
    tmp_tuple_element_33 = locals_cryptography$hazmat$primitives$ciphers$modes_163;
    Py_INCREF( tmp_tuple_element_33 );
    PyTuple_SET_ITEM( tmp_args_name_22, 2, tmp_tuple_element_33 );
    CHECK_OBJECT( tmp_class_creation_11__class_decl_dict );
    tmp_kw_name_22 = tmp_class_creation_11__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 163;
    tmp_assign_source_90 = CALL_FUNCTION( tmp_called_name_54, tmp_args_name_22, tmp_kw_name_22 );
    Py_DECREF( tmp_args_name_22 );
    if ( tmp_assign_source_90 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 163;

        goto try_except_handler_34;
    }
    assert( outline_10_var___class__ == NULL );
    outline_10_var___class__ = tmp_assign_source_90;

    }
    {
    CHECK_OBJECT( outline_10_var___class__ );
    tmp_args_element_name_38 = outline_10_var___class__;
    Py_INCREF( tmp_args_element_name_38 );
    goto try_return_handler_34;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_34:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_163 );
    locals_cryptography$hazmat$primitives$ciphers$modes_163 = NULL;
    }
    {
    goto try_return_handler_33;
    }
    // Exception handler code:
    try_except_handler_34:;
    exception_keeper_type_32 = exception_type;
    exception_keeper_value_32 = exception_value;
    exception_keeper_tb_32 = exception_tb;
    exception_keeper_lineno_32 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_163 );
    locals_cryptography$hazmat$primitives$ciphers$modes_163 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_32;
    exception_value = exception_keeper_value_32;
    exception_tb = exception_keeper_tb_32;
    exception_lineno = exception_keeper_lineno_32;

    goto try_except_handler_33;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_33:;
    {
    CHECK_OBJECT( (PyObject *)outline_10_var___class__ );
    Py_DECREF( outline_10_var___class__ );
    outline_10_var___class__ = NULL;

    }
    {
    goto outline_result_11;
    }
    // Exception handler code:
    try_except_handler_33:;
    exception_keeper_type_33 = exception_type;
    exception_keeper_value_33 = exception_value;
    exception_keeper_tb_33 = exception_tb;
    exception_keeper_lineno_33 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_33;
    exception_value = exception_keeper_value_33;
    exception_tb = exception_keeper_tb_33;
    exception_lineno = exception_keeper_lineno_33;

    goto outline_exception_11;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_11:;
    exception_lineno = 163;
    goto try_except_handler_32;
    outline_result_11:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 162;
    {
        PyObject *call_args[] = { tmp_args_element_name_38 };
        tmp_args_element_name_36 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_52, call_args );
    }

    Py_DECREF( tmp_called_name_52 );
    Py_DECREF( tmp_args_element_name_38 );
    if ( tmp_args_element_name_36 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_50 );

        exception_lineno = 162;

        goto try_except_handler_32;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 161;
    {
        PyObject *call_args[] = { tmp_args_element_name_36 };
        tmp_assign_source_89 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_50, call_args );
    }

    Py_DECREF( tmp_called_name_50 );
    Py_DECREF( tmp_args_element_name_36 );
    if ( tmp_assign_source_89 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 161;

        goto try_except_handler_32;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_CFB8, tmp_assign_source_89 );
    }
    goto try_end_12;
    // Exception handler code:
    try_except_handler_32:;
    exception_keeper_type_34 = exception_type;
    exception_keeper_value_34 = exception_value;
    exception_keeper_tb_34 = exception_tb;
    exception_keeper_lineno_34 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_11__bases );
    tmp_class_creation_11__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_11__class_decl_dict );
    tmp_class_creation_11__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_11__metaclass );
    tmp_class_creation_11__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_11__prepared );
    tmp_class_creation_11__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_34;
    exception_value = exception_keeper_value_34;
    exception_tb = exception_keeper_tb_34;
    exception_lineno = exception_keeper_lineno_34;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_12:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_11__bases );
    Py_DECREF( tmp_class_creation_11__bases );
    tmp_class_creation_11__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_11__class_decl_dict );
    Py_DECREF( tmp_class_creation_11__class_decl_dict );
    tmp_class_creation_11__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_11__metaclass );
    Py_DECREF( tmp_class_creation_11__metaclass );
    tmp_class_creation_11__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_11__prepared );
    Py_DECREF( tmp_class_creation_11__prepared );
    tmp_class_creation_11__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_91;
    PyObject *tmp_dircall_arg1_12;
    tmp_dircall_arg1_12 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_12 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_12};
        tmp_assign_source_91 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_91 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    assert( tmp_class_creation_12__bases == NULL );
    tmp_class_creation_12__bases = tmp_assign_source_91;

    }
    {
    PyObject *tmp_assign_source_92;
    tmp_assign_source_92 = PyDict_New();
    assert( tmp_class_creation_12__class_decl_dict == NULL );
    tmp_class_creation_12__class_decl_dict = tmp_assign_source_92;

    }
    {
    PyObject *tmp_assign_source_93;
    PyObject *tmp_metaclass_name_12;
    nuitka_bool tmp_condition_result_67;
    PyObject *tmp_key_name_34;
    PyObject *tmp_dict_name_34;
    PyObject *tmp_dict_name_35;
    PyObject *tmp_key_name_35;
    nuitka_bool tmp_condition_result_68;
    int tmp_truth_name_12;
    PyObject *tmp_type_arg_23;
    PyObject *tmp_subscribed_name_12;
    PyObject *tmp_subscript_name_12;
    PyObject *tmp_bases_name_12;
    tmp_key_name_34 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_12__class_decl_dict );
    tmp_dict_name_34 = tmp_class_creation_12__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_34, tmp_key_name_34 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    tmp_condition_result_67 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_67 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_23;
    }
    else
    {
        goto condexpr_false_23;
    }
    condexpr_true_23:;
    CHECK_OBJECT( tmp_class_creation_12__class_decl_dict );
    tmp_dict_name_35 = tmp_class_creation_12__class_decl_dict;
    tmp_key_name_35 = const_str_plain_metaclass;
    tmp_metaclass_name_12 = DICT_GET_ITEM( tmp_dict_name_35, tmp_key_name_35 );
    if ( tmp_metaclass_name_12 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    goto condexpr_end_23;
    condexpr_false_23:;
    CHECK_OBJECT( tmp_class_creation_12__bases );
    tmp_truth_name_12 = CHECK_IF_TRUE( tmp_class_creation_12__bases );
    if ( tmp_truth_name_12 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    tmp_condition_result_68 = tmp_truth_name_12 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_68 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_24;
    }
    else
    {
        goto condexpr_false_24;
    }
    condexpr_true_24:;
    CHECK_OBJECT( tmp_class_creation_12__bases );
    tmp_subscribed_name_12 = tmp_class_creation_12__bases;
    tmp_subscript_name_12 = const_int_0;
    tmp_type_arg_23 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_12, tmp_subscript_name_12, 0 );
    if ( tmp_type_arg_23 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    tmp_metaclass_name_12 = BUILTIN_TYPE1( tmp_type_arg_23 );
    Py_DECREF( tmp_type_arg_23 );
    if ( tmp_metaclass_name_12 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    goto condexpr_end_24;
    condexpr_false_24:;
    tmp_metaclass_name_12 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_12 );
    condexpr_end_24:;
    condexpr_end_23:;
    CHECK_OBJECT( tmp_class_creation_12__bases );
    tmp_bases_name_12 = tmp_class_creation_12__bases;
    tmp_assign_source_93 = SELECT_METACLASS( tmp_metaclass_name_12, tmp_bases_name_12 );
    Py_DECREF( tmp_metaclass_name_12 );
    if ( tmp_assign_source_93 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    assert( tmp_class_creation_12__metaclass == NULL );
    tmp_class_creation_12__metaclass = tmp_assign_source_93;

    }
    {
    nuitka_bool tmp_condition_result_69;
    PyObject *tmp_key_name_36;
    PyObject *tmp_dict_name_36;
    tmp_key_name_36 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_12__class_decl_dict );
    tmp_dict_name_36 = tmp_class_creation_12__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_36, tmp_key_name_36 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    tmp_condition_result_69 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_69 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_45;
    }
    else
    {
        goto branch_no_45;
    }
    branch_yes_45:;
    {
    CHECK_OBJECT( tmp_class_creation_12__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_12__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    }
    branch_no_45:;
    }
    {
    nuitka_bool tmp_condition_result_70;
    PyObject *tmp_source_name_66;
    CHECK_OBJECT( tmp_class_creation_12__metaclass );
    tmp_source_name_66 = tmp_class_creation_12__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_66, const_str_plain___prepare__ );
    tmp_condition_result_70 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_70 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_46;
    }
    else
    {
        goto branch_no_46;
    }
    branch_yes_46:;
    {
    PyObject *tmp_assign_source_94;
    PyObject *tmp_called_name_55;
    PyObject *tmp_source_name_67;
    PyObject *tmp_args_name_23;
    PyObject *tmp_tuple_element_34;
    PyObject *tmp_kw_name_23;
    CHECK_OBJECT( tmp_class_creation_12__metaclass );
    tmp_source_name_67 = tmp_class_creation_12__metaclass;
    tmp_called_name_55 = LOOKUP_ATTRIBUTE( tmp_source_name_67, const_str_plain___prepare__ );
    if ( tmp_called_name_55 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    tmp_tuple_element_34 = const_str_plain_CTR;
    tmp_args_name_23 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_34 );
    PyTuple_SET_ITEM( tmp_args_name_23, 0, tmp_tuple_element_34 );
    CHECK_OBJECT( tmp_class_creation_12__bases );
    tmp_tuple_element_34 = tmp_class_creation_12__bases;
    Py_INCREF( tmp_tuple_element_34 );
    PyTuple_SET_ITEM( tmp_args_name_23, 1, tmp_tuple_element_34 );
    CHECK_OBJECT( tmp_class_creation_12__class_decl_dict );
    tmp_kw_name_23 = tmp_class_creation_12__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 178;
    tmp_assign_source_94 = CALL_FUNCTION( tmp_called_name_55, tmp_args_name_23, tmp_kw_name_23 );
    Py_DECREF( tmp_called_name_55 );
    Py_DECREF( tmp_args_name_23 );
    if ( tmp_assign_source_94 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    assert( tmp_class_creation_12__prepared == NULL );
    tmp_class_creation_12__prepared = tmp_assign_source_94;

    }
    {
    nuitka_bool tmp_condition_result_71;
    PyObject *tmp_operand_name_12;
    PyObject *tmp_source_name_68;
    CHECK_OBJECT( tmp_class_creation_12__prepared );
    tmp_source_name_68 = tmp_class_creation_12__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_68, const_str_plain___getitem__ );
    tmp_operand_name_12 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_12 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    tmp_condition_result_71 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_71 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_47;
    }
    else
    {
        goto branch_no_47;
    }
    branch_yes_47:;
    {
    PyObject *tmp_raise_type_12;
    PyObject *tmp_raise_value_12;
    PyObject *tmp_left_name_12;
    PyObject *tmp_right_name_12;
    PyObject *tmp_tuple_element_35;
    PyObject *tmp_getattr_target_12;
    PyObject *tmp_getattr_attr_12;
    PyObject *tmp_getattr_default_12;
    PyObject *tmp_source_name_69;
    PyObject *tmp_type_arg_24;
    tmp_raise_type_12 = PyExc_TypeError;
    tmp_left_name_12 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_12__metaclass );
    tmp_getattr_target_12 = tmp_class_creation_12__metaclass;
    tmp_getattr_attr_12 = const_str_plain___name__;
    tmp_getattr_default_12 = const_str_angle_metaclass;
    tmp_tuple_element_35 = BUILTIN_GETATTR( tmp_getattr_target_12, tmp_getattr_attr_12, tmp_getattr_default_12 );
    if ( tmp_tuple_element_35 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    tmp_right_name_12 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_12, 0, tmp_tuple_element_35 );
    CHECK_OBJECT( tmp_class_creation_12__prepared );
    tmp_type_arg_24 = tmp_class_creation_12__prepared;
    tmp_source_name_69 = BUILTIN_TYPE1( tmp_type_arg_24 );
    assert( !(tmp_source_name_69 == NULL) );
    tmp_tuple_element_35 = LOOKUP_ATTRIBUTE( tmp_source_name_69, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_69 );
    if ( tmp_tuple_element_35 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_12 );

        exception_lineno = 178;

        goto try_except_handler_35;
    }
    PyTuple_SET_ITEM( tmp_right_name_12, 1, tmp_tuple_element_35 );
    tmp_raise_value_12 = BINARY_OPERATION_REMAINDER( tmp_left_name_12, tmp_right_name_12 );
    Py_DECREF( tmp_right_name_12 );
    if ( tmp_raise_value_12 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_35;
    }
    exception_type = tmp_raise_type_12;
    Py_INCREF( tmp_raise_type_12 );
    exception_value = tmp_raise_value_12;
    exception_lineno = 178;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_35;
    }
    branch_no_47:;
    }
    goto branch_end_46;
    branch_no_46:;
    {
    PyObject *tmp_assign_source_95;
    tmp_assign_source_95 = PyDict_New();
    assert( tmp_class_creation_12__prepared == NULL );
    tmp_class_creation_12__prepared = tmp_assign_source_95;

    }
    branch_end_46:;
    }
    {
    PyObject *tmp_assign_source_96;
    PyObject *tmp_called_name_56;
    PyObject *tmp_called_name_57;
    PyObject *tmp_source_name_70;
    PyObject *tmp_mvar_value_49;
    PyObject *tmp_args_element_name_39;
    PyObject *tmp_mvar_value_50;
    PyObject *tmp_args_element_name_40;
    PyObject *tmp_called_name_58;
    PyObject *tmp_called_name_59;
    PyObject *tmp_source_name_71;
    PyObject *tmp_mvar_value_51;
    PyObject *tmp_args_element_name_41;
    PyObject *tmp_mvar_value_52;
    PyObject *tmp_args_element_name_42;
    tmp_mvar_value_49 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_49 == NULL ))
    {
        tmp_mvar_value_49 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_49 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 176;

        goto try_except_handler_35;
    }

    tmp_source_name_70 = tmp_mvar_value_49;
    tmp_called_name_57 = LOOKUP_ATTRIBUTE( tmp_source_name_70, const_str_plain_register_interface );
    if ( tmp_called_name_57 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 176;

        goto try_except_handler_35;
    }
    tmp_mvar_value_50 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_Mode );

    if (unlikely( tmp_mvar_value_50 == NULL ))
    {
        tmp_mvar_value_50 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_Mode );
    }

    if ( tmp_mvar_value_50 == NULL )
    {
        Py_DECREF( tmp_called_name_57 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "Mode" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 176;

        goto try_except_handler_35;
    }

    tmp_args_element_name_39 = tmp_mvar_value_50;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 176;
    {
        PyObject *call_args[] = { tmp_args_element_name_39 };
        tmp_called_name_56 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_57, call_args );
    }

    Py_DECREF( tmp_called_name_57 );
    if ( tmp_called_name_56 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 176;

        goto try_except_handler_35;
    }
    tmp_mvar_value_51 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_51 == NULL ))
    {
        tmp_mvar_value_51 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_51 == NULL )
    {
        Py_DECREF( tmp_called_name_56 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 177;

        goto try_except_handler_35;
    }

    tmp_source_name_71 = tmp_mvar_value_51;
    tmp_called_name_59 = LOOKUP_ATTRIBUTE( tmp_source_name_71, const_str_plain_register_interface );
    if ( tmp_called_name_59 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_56 );

        exception_lineno = 177;

        goto try_except_handler_35;
    }
    tmp_mvar_value_52 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithNonce );

    if (unlikely( tmp_mvar_value_52 == NULL ))
    {
        tmp_mvar_value_52 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_ModeWithNonce );
    }

    if ( tmp_mvar_value_52 == NULL )
    {
        Py_DECREF( tmp_called_name_56 );
        Py_DECREF( tmp_called_name_59 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "ModeWithNonce" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 177;

        goto try_except_handler_35;
    }

    tmp_args_element_name_41 = tmp_mvar_value_52;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 177;
    {
        PyObject *call_args[] = { tmp_args_element_name_41 };
        tmp_called_name_58 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_59, call_args );
    }

    Py_DECREF( tmp_called_name_59 );
    if ( tmp_called_name_58 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_56 );

        exception_lineno = 177;

        goto try_except_handler_35;
    }
    {
    PyObject *tmp_set_locals_12;
    CHECK_OBJECT( tmp_class_creation_12__prepared );
    tmp_set_locals_12 = tmp_class_creation_12__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_178 = tmp_set_locals_12;
    Py_INCREF( tmp_set_locals_12 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_178, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_37;
    }
    }
    {
    tmp_dictset_value = const_str_plain_CTR;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_178, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_37;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_a0d72cc4e56b2259779d5d13191432d5_13, codeobj_a0d72cc4e56b2259779d5d13191432d5, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_a0d72cc4e56b2259779d5d13191432d5_13 = cache_frame_a0d72cc4e56b2259779d5d13191432d5_13;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_a0d72cc4e56b2259779d5d13191432d5_13 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_a0d72cc4e56b2259779d5d13191432d5_13 ) == 2 ); // Frame stack

    // Framed code:
    {
    tmp_dictset_value = const_str_plain_CTR;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_178, const_str_plain_name, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 179;
        type_description_2 = "o";
        goto frame_exception_exit_13;
    }
    }
    {
    tmp_dictset_value = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_16___init__(  );



    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_178, const_str_plain___init__, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 181;
        type_description_2 = "o";
        goto frame_exception_exit_13;
    }
    }
    {
    PyObject *tmp_called_instance_12;
    PyObject *tmp_mvar_value_53;
    tmp_called_instance_12 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_178, const_str_plain_utils );

    if ( tmp_called_instance_12 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_53 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

        if (unlikely( tmp_mvar_value_53 == NULL ))
        {
            tmp_mvar_value_53 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
        }

        if ( tmp_mvar_value_53 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 187;
            type_description_2 = "o";
            goto frame_exception_exit_13;
        }

        tmp_called_instance_12 = tmp_mvar_value_53;
        Py_INCREF( tmp_called_instance_12 );
        }
    }

    frame_a0d72cc4e56b2259779d5d13191432d5_13->m_frame.f_lineno = 187;
    tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_12, const_str_plain_read_only_property, &PyTuple_GET_ITEM( const_tuple_str_plain__nonce_tuple, 0 ) );

    Py_DECREF( tmp_called_instance_12 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 187;
        type_description_2 = "o";
        goto frame_exception_exit_13;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_178, const_str_plain_nonce, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 187;
        type_description_2 = "o";
        goto frame_exception_exit_13;
    }
    }
    {
    tmp_dictset_value = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_17_validate_for_algorithm(  );



    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_178, const_str_plain_validate_for_algorithm, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 189;
        type_description_2 = "o";
        goto frame_exception_exit_13;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_a0d72cc4e56b2259779d5d13191432d5_13 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_12;

    frame_exception_exit_13:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_a0d72cc4e56b2259779d5d13191432d5_13 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_a0d72cc4e56b2259779d5d13191432d5_13, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_a0d72cc4e56b2259779d5d13191432d5_13->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_a0d72cc4e56b2259779d5d13191432d5_13, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_a0d72cc4e56b2259779d5d13191432d5_13,
        type_description_2,
        outline_11_var___class__
    );


    // Release cached frame.
    if ( frame_a0d72cc4e56b2259779d5d13191432d5_13 == cache_frame_a0d72cc4e56b2259779d5d13191432d5_13 )
    {
        Py_DECREF( frame_a0d72cc4e56b2259779d5d13191432d5_13 );
    }
    cache_frame_a0d72cc4e56b2259779d5d13191432d5_13 = NULL;

    assertFrameObject( frame_a0d72cc4e56b2259779d5d13191432d5_13 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_12;

    frame_no_exception_12:;
    goto skip_nested_handling_12;
    nested_frame_exit_12:;

    goto try_except_handler_37;
    skip_nested_handling_12:;
    {
    nuitka_bool tmp_condition_result_72;
    PyObject *tmp_compexpr_left_12;
    PyObject *tmp_compexpr_right_12;
    CHECK_OBJECT( tmp_class_creation_12__bases );
    tmp_compexpr_left_12 = tmp_class_creation_12__bases;
    tmp_compexpr_right_12 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_12, tmp_compexpr_right_12 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_37;
    }
    tmp_condition_result_72 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_72 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_48;
    }
    else
    {
        goto branch_no_48;
    }
    branch_yes_48:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_178, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_37;
    }
    }
    branch_no_48:;
    }
    {
    PyObject *tmp_assign_source_97;
    PyObject *tmp_called_name_60;
    PyObject *tmp_args_name_24;
    PyObject *tmp_tuple_element_36;
    PyObject *tmp_kw_name_24;
    CHECK_OBJECT( tmp_class_creation_12__metaclass );
    tmp_called_name_60 = tmp_class_creation_12__metaclass;
    tmp_tuple_element_36 = const_str_plain_CTR;
    tmp_args_name_24 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_36 );
    PyTuple_SET_ITEM( tmp_args_name_24, 0, tmp_tuple_element_36 );
    CHECK_OBJECT( tmp_class_creation_12__bases );
    tmp_tuple_element_36 = tmp_class_creation_12__bases;
    Py_INCREF( tmp_tuple_element_36 );
    PyTuple_SET_ITEM( tmp_args_name_24, 1, tmp_tuple_element_36 );
    tmp_tuple_element_36 = locals_cryptography$hazmat$primitives$ciphers$modes_178;
    Py_INCREF( tmp_tuple_element_36 );
    PyTuple_SET_ITEM( tmp_args_name_24, 2, tmp_tuple_element_36 );
    CHECK_OBJECT( tmp_class_creation_12__class_decl_dict );
    tmp_kw_name_24 = tmp_class_creation_12__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 178;
    tmp_assign_source_97 = CALL_FUNCTION( tmp_called_name_60, tmp_args_name_24, tmp_kw_name_24 );
    Py_DECREF( tmp_args_name_24 );
    if ( tmp_assign_source_97 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 178;

        goto try_except_handler_37;
    }
    assert( outline_11_var___class__ == NULL );
    outline_11_var___class__ = tmp_assign_source_97;

    }
    {
    CHECK_OBJECT( outline_11_var___class__ );
    tmp_args_element_name_42 = outline_11_var___class__;
    Py_INCREF( tmp_args_element_name_42 );
    goto try_return_handler_37;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_37:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_178 );
    locals_cryptography$hazmat$primitives$ciphers$modes_178 = NULL;
    }
    {
    goto try_return_handler_36;
    }
    // Exception handler code:
    try_except_handler_37:;
    exception_keeper_type_35 = exception_type;
    exception_keeper_value_35 = exception_value;
    exception_keeper_tb_35 = exception_tb;
    exception_keeper_lineno_35 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_178 );
    locals_cryptography$hazmat$primitives$ciphers$modes_178 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_35;
    exception_value = exception_keeper_value_35;
    exception_tb = exception_keeper_tb_35;
    exception_lineno = exception_keeper_lineno_35;

    goto try_except_handler_36;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_36:;
    {
    CHECK_OBJECT( (PyObject *)outline_11_var___class__ );
    Py_DECREF( outline_11_var___class__ );
    outline_11_var___class__ = NULL;

    }
    {
    goto outline_result_12;
    }
    // Exception handler code:
    try_except_handler_36:;
    exception_keeper_type_36 = exception_type;
    exception_keeper_value_36 = exception_value;
    exception_keeper_tb_36 = exception_tb;
    exception_keeper_lineno_36 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_36;
    exception_value = exception_keeper_value_36;
    exception_tb = exception_keeper_tb_36;
    exception_lineno = exception_keeper_lineno_36;

    goto outline_exception_12;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_12:;
    exception_lineno = 178;
    goto try_except_handler_35;
    outline_result_12:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 177;
    {
        PyObject *call_args[] = { tmp_args_element_name_42 };
        tmp_args_element_name_40 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_58, call_args );
    }

    Py_DECREF( tmp_called_name_58 );
    Py_DECREF( tmp_args_element_name_42 );
    if ( tmp_args_element_name_40 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_56 );

        exception_lineno = 177;

        goto try_except_handler_35;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 176;
    {
        PyObject *call_args[] = { tmp_args_element_name_40 };
        tmp_assign_source_96 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_56, call_args );
    }

    Py_DECREF( tmp_called_name_56 );
    Py_DECREF( tmp_args_element_name_40 );
    if ( tmp_assign_source_96 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 176;

        goto try_except_handler_35;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_CTR, tmp_assign_source_96 );
    }
    goto try_end_13;
    // Exception handler code:
    try_except_handler_35:;
    exception_keeper_type_37 = exception_type;
    exception_keeper_value_37 = exception_value;
    exception_keeper_tb_37 = exception_tb;
    exception_keeper_lineno_37 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_12__bases );
    tmp_class_creation_12__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_12__class_decl_dict );
    tmp_class_creation_12__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_12__metaclass );
    tmp_class_creation_12__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_12__prepared );
    tmp_class_creation_12__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_37;
    exception_value = exception_keeper_value_37;
    exception_tb = exception_keeper_tb_37;
    exception_lineno = exception_keeper_lineno_37;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_13:;
    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_12__bases );
    Py_DECREF( tmp_class_creation_12__bases );
    tmp_class_creation_12__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_12__class_decl_dict );
    Py_DECREF( tmp_class_creation_12__class_decl_dict );
    tmp_class_creation_12__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_12__metaclass );
    Py_DECREF( tmp_class_creation_12__metaclass );
    tmp_class_creation_12__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_12__prepared );
    Py_DECREF( tmp_class_creation_12__prepared );
    tmp_class_creation_12__prepared = NULL;

    }
    {
    // Tried code:
    {
    PyObject *tmp_assign_source_98;
    PyObject *tmp_dircall_arg1_13;
    tmp_dircall_arg1_13 = const_tuple_type_object_tuple;
    Py_INCREF( tmp_dircall_arg1_13 );

    {
        PyObject *dir_call_args[] = {tmp_dircall_arg1_13};
        tmp_assign_source_98 = impl___internal__$$$function_1__mro_entries_conversion( dir_call_args );
    }
    if ( tmp_assign_source_98 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    assert( tmp_class_creation_13__bases == NULL );
    tmp_class_creation_13__bases = tmp_assign_source_98;

    }
    {
    PyObject *tmp_assign_source_99;
    tmp_assign_source_99 = PyDict_New();
    assert( tmp_class_creation_13__class_decl_dict == NULL );
    tmp_class_creation_13__class_decl_dict = tmp_assign_source_99;

    }
    {
    PyObject *tmp_assign_source_100;
    PyObject *tmp_metaclass_name_13;
    nuitka_bool tmp_condition_result_73;
    PyObject *tmp_key_name_37;
    PyObject *tmp_dict_name_37;
    PyObject *tmp_dict_name_38;
    PyObject *tmp_key_name_38;
    nuitka_bool tmp_condition_result_74;
    int tmp_truth_name_13;
    PyObject *tmp_type_arg_25;
    PyObject *tmp_subscribed_name_13;
    PyObject *tmp_subscript_name_13;
    PyObject *tmp_bases_name_13;
    tmp_key_name_37 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_13__class_decl_dict );
    tmp_dict_name_37 = tmp_class_creation_13__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_37, tmp_key_name_37 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    tmp_condition_result_73 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_73 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_25;
    }
    else
    {
        goto condexpr_false_25;
    }
    condexpr_true_25:;
    CHECK_OBJECT( tmp_class_creation_13__class_decl_dict );
    tmp_dict_name_38 = tmp_class_creation_13__class_decl_dict;
    tmp_key_name_38 = const_str_plain_metaclass;
    tmp_metaclass_name_13 = DICT_GET_ITEM( tmp_dict_name_38, tmp_key_name_38 );
    if ( tmp_metaclass_name_13 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    goto condexpr_end_25;
    condexpr_false_25:;
    CHECK_OBJECT( tmp_class_creation_13__bases );
    tmp_truth_name_13 = CHECK_IF_TRUE( tmp_class_creation_13__bases );
    if ( tmp_truth_name_13 == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    tmp_condition_result_74 = tmp_truth_name_13 == 1 ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_74 == NUITKA_BOOL_TRUE )
    {
        goto condexpr_true_26;
    }
    else
    {
        goto condexpr_false_26;
    }
    condexpr_true_26:;
    CHECK_OBJECT( tmp_class_creation_13__bases );
    tmp_subscribed_name_13 = tmp_class_creation_13__bases;
    tmp_subscript_name_13 = const_int_0;
    tmp_type_arg_25 = LOOKUP_SUBSCRIPT_CONST( tmp_subscribed_name_13, tmp_subscript_name_13, 0 );
    if ( tmp_type_arg_25 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    tmp_metaclass_name_13 = BUILTIN_TYPE1( tmp_type_arg_25 );
    Py_DECREF( tmp_type_arg_25 );
    if ( tmp_metaclass_name_13 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    goto condexpr_end_26;
    condexpr_false_26:;
    tmp_metaclass_name_13 = (PyObject *)&PyType_Type;
    Py_INCREF( tmp_metaclass_name_13 );
    condexpr_end_26:;
    condexpr_end_25:;
    CHECK_OBJECT( tmp_class_creation_13__bases );
    tmp_bases_name_13 = tmp_class_creation_13__bases;
    tmp_assign_source_100 = SELECT_METACLASS( tmp_metaclass_name_13, tmp_bases_name_13 );
    Py_DECREF( tmp_metaclass_name_13 );
    if ( tmp_assign_source_100 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    assert( tmp_class_creation_13__metaclass == NULL );
    tmp_class_creation_13__metaclass = tmp_assign_source_100;

    }
    {
    nuitka_bool tmp_condition_result_75;
    PyObject *tmp_key_name_39;
    PyObject *tmp_dict_name_39;
    tmp_key_name_39 = const_str_plain_metaclass;
    CHECK_OBJECT( tmp_class_creation_13__class_decl_dict );
    tmp_dict_name_39 = tmp_class_creation_13__class_decl_dict;
    tmp_res = PyDict_Contains( tmp_dict_name_39, tmp_key_name_39 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    tmp_condition_result_75 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_75 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_49;
    }
    else
    {
        goto branch_no_49;
    }
    branch_yes_49:;
    {
    CHECK_OBJECT( tmp_class_creation_13__class_decl_dict );
    tmp_dictdel_dict = tmp_class_creation_13__class_decl_dict;
    tmp_dictdel_key = const_str_plain_metaclass;
    tmp_result = DICT_REMOVE_ITEM( tmp_dictdel_dict, tmp_dictdel_key );
    if ( tmp_result == false )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    }
    branch_no_49:;
    }
    {
    nuitka_bool tmp_condition_result_76;
    PyObject *tmp_source_name_72;
    CHECK_OBJECT( tmp_class_creation_13__metaclass );
    tmp_source_name_72 = tmp_class_creation_13__metaclass;
    tmp_res = PyObject_HasAttr( tmp_source_name_72, const_str_plain___prepare__ );
    tmp_condition_result_76 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_76 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_50;
    }
    else
    {
        goto branch_no_50;
    }
    branch_yes_50:;
    {
    PyObject *tmp_assign_source_101;
    PyObject *tmp_called_name_61;
    PyObject *tmp_source_name_73;
    PyObject *tmp_args_name_25;
    PyObject *tmp_tuple_element_37;
    PyObject *tmp_kw_name_25;
    CHECK_OBJECT( tmp_class_creation_13__metaclass );
    tmp_source_name_73 = tmp_class_creation_13__metaclass;
    tmp_called_name_61 = LOOKUP_ATTRIBUTE( tmp_source_name_73, const_str_plain___prepare__ );
    if ( tmp_called_name_61 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    tmp_tuple_element_37 = const_str_plain_GCM;
    tmp_args_name_25 = PyTuple_New( 2 );
    Py_INCREF( tmp_tuple_element_37 );
    PyTuple_SET_ITEM( tmp_args_name_25, 0, tmp_tuple_element_37 );
    CHECK_OBJECT( tmp_class_creation_13__bases );
    tmp_tuple_element_37 = tmp_class_creation_13__bases;
    Py_INCREF( tmp_tuple_element_37 );
    PyTuple_SET_ITEM( tmp_args_name_25, 1, tmp_tuple_element_37 );
    CHECK_OBJECT( tmp_class_creation_13__class_decl_dict );
    tmp_kw_name_25 = tmp_class_creation_13__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 200;
    tmp_assign_source_101 = CALL_FUNCTION( tmp_called_name_61, tmp_args_name_25, tmp_kw_name_25 );
    Py_DECREF( tmp_called_name_61 );
    Py_DECREF( tmp_args_name_25 );
    if ( tmp_assign_source_101 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    assert( tmp_class_creation_13__prepared == NULL );
    tmp_class_creation_13__prepared = tmp_assign_source_101;

    }
    {
    nuitka_bool tmp_condition_result_77;
    PyObject *tmp_operand_name_13;
    PyObject *tmp_source_name_74;
    CHECK_OBJECT( tmp_class_creation_13__prepared );
    tmp_source_name_74 = tmp_class_creation_13__prepared;
    tmp_res = PyObject_HasAttr( tmp_source_name_74, const_str_plain___getitem__ );
    tmp_operand_name_13 = ( tmp_res != 0 ) ? Py_True : Py_False;
    tmp_res = CHECK_IF_TRUE( tmp_operand_name_13 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    tmp_condition_result_77 = ( tmp_res == 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_77 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_51;
    }
    else
    {
        goto branch_no_51;
    }
    branch_yes_51:;
    {
    PyObject *tmp_raise_type_13;
    PyObject *tmp_raise_value_13;
    PyObject *tmp_left_name_13;
    PyObject *tmp_right_name_13;
    PyObject *tmp_tuple_element_38;
    PyObject *tmp_getattr_target_13;
    PyObject *tmp_getattr_attr_13;
    PyObject *tmp_getattr_default_13;
    PyObject *tmp_source_name_75;
    PyObject *tmp_type_arg_26;
    tmp_raise_type_13 = PyExc_TypeError;
    tmp_left_name_13 = const_str_digest_75fd71b1edada749c2ef7ac810062295;
    CHECK_OBJECT( tmp_class_creation_13__metaclass );
    tmp_getattr_target_13 = tmp_class_creation_13__metaclass;
    tmp_getattr_attr_13 = const_str_plain___name__;
    tmp_getattr_default_13 = const_str_angle_metaclass;
    tmp_tuple_element_38 = BUILTIN_GETATTR( tmp_getattr_target_13, tmp_getattr_attr_13, tmp_getattr_default_13 );
    if ( tmp_tuple_element_38 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    tmp_right_name_13 = PyTuple_New( 2 );
    PyTuple_SET_ITEM( tmp_right_name_13, 0, tmp_tuple_element_38 );
    CHECK_OBJECT( tmp_class_creation_13__prepared );
    tmp_type_arg_26 = tmp_class_creation_13__prepared;
    tmp_source_name_75 = BUILTIN_TYPE1( tmp_type_arg_26 );
    assert( !(tmp_source_name_75 == NULL) );
    tmp_tuple_element_38 = LOOKUP_ATTRIBUTE( tmp_source_name_75, const_str_plain___name__ );
    Py_DECREF( tmp_source_name_75 );
    if ( tmp_tuple_element_38 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_right_name_13 );

        exception_lineno = 200;

        goto try_except_handler_38;
    }
    PyTuple_SET_ITEM( tmp_right_name_13, 1, tmp_tuple_element_38 );
    tmp_raise_value_13 = BINARY_OPERATION_REMAINDER( tmp_left_name_13, tmp_right_name_13 );
    Py_DECREF( tmp_right_name_13 );
    if ( tmp_raise_value_13 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_38;
    }
    exception_type = tmp_raise_type_13;
    Py_INCREF( tmp_raise_type_13 );
    exception_value = tmp_raise_value_13;
    exception_lineno = 200;
    RAISE_EXCEPTION_IMPLICIT( &exception_type, &exception_value, &exception_tb );

    goto try_except_handler_38;
    }
    branch_no_51:;
    }
    goto branch_end_50;
    branch_no_50:;
    {
    PyObject *tmp_assign_source_102;
    tmp_assign_source_102 = PyDict_New();
    assert( tmp_class_creation_13__prepared == NULL );
    tmp_class_creation_13__prepared = tmp_assign_source_102;

    }
    branch_end_50:;
    }
    {
    PyObject *tmp_assign_source_103;
    PyObject *tmp_called_name_62;
    PyObject *tmp_called_name_63;
    PyObject *tmp_source_name_76;
    PyObject *tmp_mvar_value_54;
    PyObject *tmp_args_element_name_43;
    PyObject *tmp_mvar_value_55;
    PyObject *tmp_args_element_name_44;
    PyObject *tmp_called_name_64;
    PyObject *tmp_called_name_65;
    PyObject *tmp_source_name_77;
    PyObject *tmp_mvar_value_56;
    PyObject *tmp_args_element_name_45;
    PyObject *tmp_mvar_value_57;
    PyObject *tmp_args_element_name_46;
    PyObject *tmp_called_name_66;
    PyObject *tmp_called_name_67;
    PyObject *tmp_source_name_78;
    PyObject *tmp_mvar_value_58;
    PyObject *tmp_args_element_name_47;
    PyObject *tmp_mvar_value_59;
    PyObject *tmp_args_element_name_48;
    tmp_mvar_value_54 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_54 == NULL ))
    {
        tmp_mvar_value_54 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_54 == NULL )
    {

        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 197;

        goto try_except_handler_38;
    }

    tmp_source_name_76 = tmp_mvar_value_54;
    tmp_called_name_63 = LOOKUP_ATTRIBUTE( tmp_source_name_76, const_str_plain_register_interface );
    if ( tmp_called_name_63 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 197;

        goto try_except_handler_38;
    }
    tmp_mvar_value_55 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_Mode );

    if (unlikely( tmp_mvar_value_55 == NULL ))
    {
        tmp_mvar_value_55 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_Mode );
    }

    if ( tmp_mvar_value_55 == NULL )
    {
        Py_DECREF( tmp_called_name_63 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "Mode" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 197;

        goto try_except_handler_38;
    }

    tmp_args_element_name_43 = tmp_mvar_value_55;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 197;
    {
        PyObject *call_args[] = { tmp_args_element_name_43 };
        tmp_called_name_62 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_63, call_args );
    }

    Py_DECREF( tmp_called_name_63 );
    if ( tmp_called_name_62 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 197;

        goto try_except_handler_38;
    }
    tmp_mvar_value_56 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_56 == NULL ))
    {
        tmp_mvar_value_56 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_56 == NULL )
    {
        Py_DECREF( tmp_called_name_62 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 198;

        goto try_except_handler_38;
    }

    tmp_source_name_77 = tmp_mvar_value_56;
    tmp_called_name_65 = LOOKUP_ATTRIBUTE( tmp_source_name_77, const_str_plain_register_interface );
    if ( tmp_called_name_65 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_62 );

        exception_lineno = 198;

        goto try_except_handler_38;
    }
    tmp_mvar_value_57 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector );

    if (unlikely( tmp_mvar_value_57 == NULL ))
    {
        tmp_mvar_value_57 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_ModeWithInitializationVector );
    }

    if ( tmp_mvar_value_57 == NULL )
    {
        Py_DECREF( tmp_called_name_62 );
        Py_DECREF( tmp_called_name_65 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "ModeWithInitializationVector" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 198;

        goto try_except_handler_38;
    }

    tmp_args_element_name_45 = tmp_mvar_value_57;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 198;
    {
        PyObject *call_args[] = { tmp_args_element_name_45 };
        tmp_called_name_64 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_65, call_args );
    }

    Py_DECREF( tmp_called_name_65 );
    if ( tmp_called_name_64 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_62 );

        exception_lineno = 198;

        goto try_except_handler_38;
    }
    tmp_mvar_value_58 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

    if (unlikely( tmp_mvar_value_58 == NULL ))
    {
        tmp_mvar_value_58 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
    }

    if ( tmp_mvar_value_58 == NULL )
    {
        Py_DECREF( tmp_called_name_62 );
        Py_DECREF( tmp_called_name_64 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 199;

        goto try_except_handler_38;
    }

    tmp_source_name_78 = tmp_mvar_value_58;
    tmp_called_name_67 = LOOKUP_ATTRIBUTE( tmp_source_name_78, const_str_plain_register_interface );
    if ( tmp_called_name_67 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_62 );
        Py_DECREF( tmp_called_name_64 );

        exception_lineno = 199;

        goto try_except_handler_38;
    }
    tmp_mvar_value_59 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_ModeWithAuthenticationTag );

    if (unlikely( tmp_mvar_value_59 == NULL ))
    {
        tmp_mvar_value_59 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_ModeWithAuthenticationTag );
    }

    if ( tmp_mvar_value_59 == NULL )
    {
        Py_DECREF( tmp_called_name_62 );
        Py_DECREF( tmp_called_name_64 );
        Py_DECREF( tmp_called_name_67 );
        exception_type = PyExc_NameError;
        Py_INCREF( exception_type );
        exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "ModeWithAuthenticationTag" );
        exception_tb = NULL;
        NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
        CHAIN_EXCEPTION( exception_value );

        exception_lineno = 199;

        goto try_except_handler_38;
    }

    tmp_args_element_name_47 = tmp_mvar_value_59;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 199;
    {
        PyObject *call_args[] = { tmp_args_element_name_47 };
        tmp_called_name_66 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_67, call_args );
    }

    Py_DECREF( tmp_called_name_67 );
    if ( tmp_called_name_66 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_62 );
        Py_DECREF( tmp_called_name_64 );

        exception_lineno = 199;

        goto try_except_handler_38;
    }
    {
    PyObject *tmp_set_locals_13;
    CHECK_OBJECT( tmp_class_creation_13__prepared );
    tmp_set_locals_13 = tmp_class_creation_13__prepared;
    locals_cryptography$hazmat$primitives$ciphers$modes_200 = tmp_set_locals_13;
    Py_INCREF( tmp_set_locals_13 );
    }
    {
    // Tried code:
    {
    // Tried code:
    {
    tmp_dictset_value = const_str_digest_dad71bd336cb898ea2767fe5d1d92e3c;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain___module__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_40;
    }
    }
    {
    tmp_dictset_value = const_str_plain_GCM;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain___qualname__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_40;
    }
    }
    MAKE_OR_REUSE_FRAME( cache_frame_7ffef1106e2cd64bf494748379b6491e_14, codeobj_7ffef1106e2cd64bf494748379b6491e, module_cryptography$hazmat$primitives$ciphers$modes, sizeof(void *) );
    frame_7ffef1106e2cd64bf494748379b6491e_14 = cache_frame_7ffef1106e2cd64bf494748379b6491e_14;

    // Push the new frame as the currently active one.
    pushFrameStack( frame_7ffef1106e2cd64bf494748379b6491e_14 );

    // Mark the frame object as in use, ref count 1 will be up for reuse.
    assert( Py_REFCNT( frame_7ffef1106e2cd64bf494748379b6491e_14 ) == 2 ); // Frame stack

    // Framed code:
    {
    tmp_dictset_value = const_str_plain_GCM;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain_name, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 201;
        type_description_2 = "o";
        goto frame_exception_exit_14;
    }
    }
    {
    tmp_dictset_value = const_int_pos_68719476704;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain__MAX_ENCRYPTED_BYTES, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 202;
        type_description_2 = "o";
        goto frame_exception_exit_14;
    }
    }
    {
    tmp_dictset_value = const_int_pos_2305843009213693952;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain__MAX_AAD_BYTES, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 203;
        type_description_2 = "o";
        goto frame_exception_exit_14;
    }
    }
    {
    PyObject *tmp_defaults_1;
    tmp_defaults_1 = const_tuple_none_int_pos_16_tuple;
    Py_INCREF( tmp_defaults_1 );
    tmp_dictset_value = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_18___init__( tmp_defaults_1 );



    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain___init__, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 205;
        type_description_2 = "o";
        goto frame_exception_exit_14;
    }
    }
    {
    PyObject *tmp_called_instance_13;
    PyObject *tmp_mvar_value_60;
    tmp_called_instance_13 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain_utils );

    if ( tmp_called_instance_13 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_60 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

        if (unlikely( tmp_mvar_value_60 == NULL ))
        {
            tmp_mvar_value_60 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
        }

        if ( tmp_mvar_value_60 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 227;
            type_description_2 = "o";
            goto frame_exception_exit_14;
        }

        tmp_called_instance_13 = tmp_mvar_value_60;
        Py_INCREF( tmp_called_instance_13 );
        }
    }

    frame_7ffef1106e2cd64bf494748379b6491e_14->m_frame.f_lineno = 227;
    tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_13, const_str_plain_read_only_property, &PyTuple_GET_ITEM( const_tuple_str_plain__tag_tuple, 0 ) );

    Py_DECREF( tmp_called_instance_13 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 227;
        type_description_2 = "o";
        goto frame_exception_exit_14;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain_tag, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 227;
        type_description_2 = "o";
        goto frame_exception_exit_14;
    }
    }
    {
    PyObject *tmp_called_instance_14;
    PyObject *tmp_mvar_value_61;
    tmp_called_instance_14 = PyObject_GetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain_utils );

    if ( tmp_called_instance_14 == NULL )
    {
        if ( CHECK_AND_CLEAR_KEY_ERROR_OCCURRED() )
        {
        tmp_mvar_value_61 = GET_STRING_DICT_VALUE( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_utils );

        if (unlikely( tmp_mvar_value_61 == NULL ))
        {
            tmp_mvar_value_61 = GET_STRING_DICT_VALUE( dict_builtin, (Nuitka_StringObject *)const_str_plain_utils );
        }

        if ( tmp_mvar_value_61 == NULL )
        {

            exception_type = PyExc_NameError;
            Py_INCREF( exception_type );
            exception_value = PyUnicode_FromFormat( "name '%s' is not defined", "utils" );
            exception_tb = NULL;
            NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
            CHAIN_EXCEPTION( exception_value );

            exception_lineno = 228;
            type_description_2 = "o";
            goto frame_exception_exit_14;
        }

        tmp_called_instance_14 = tmp_mvar_value_61;
        Py_INCREF( tmp_called_instance_14 );
        }
    }

    frame_7ffef1106e2cd64bf494748379b6491e_14->m_frame.f_lineno = 228;
    tmp_dictset_value = CALL_METHOD_WITH_ARGS1( tmp_called_instance_14, const_str_plain_read_only_property, &PyTuple_GET_ITEM( const_tuple_str_plain__initialization_vector_tuple, 0 ) );

    Py_DECREF( tmp_called_instance_14 );
    if ( tmp_dictset_value == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 228;
        type_description_2 = "o";
        goto frame_exception_exit_14;
    }
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain_initialization_vector, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 228;
        type_description_2 = "o";
        goto frame_exception_exit_14;
    }
    }
    {
    tmp_dictset_value = MAKE_FUNCTION_cryptography$hazmat$primitives$ciphers$modes$$$function_19_validate_for_algorithm(  );



    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain_validate_for_algorithm, tmp_dictset_value );
    Py_DECREF( tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 230;
        type_description_2 = "o";
        goto frame_exception_exit_14;
    }
    }

#if 0
    RESTORE_FRAME_EXCEPTION( frame_7ffef1106e2cd64bf494748379b6491e_14 );
#endif

    // Put the previous frame back on top.
    popFrameStack();

    goto frame_no_exception_13;

    frame_exception_exit_14:;

#if 0
    RESTORE_FRAME_EXCEPTION( frame_7ffef1106e2cd64bf494748379b6491e_14 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_7ffef1106e2cd64bf494748379b6491e_14, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_7ffef1106e2cd64bf494748379b6491e_14->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_7ffef1106e2cd64bf494748379b6491e_14, exception_lineno );
    }

    // Attachs locals to frame if any.
    Nuitka_Frame_AttachLocals(
        (struct Nuitka_FrameObject *)frame_7ffef1106e2cd64bf494748379b6491e_14,
        type_description_2,
        outline_12_var___class__
    );


    // Release cached frame.
    if ( frame_7ffef1106e2cd64bf494748379b6491e_14 == cache_frame_7ffef1106e2cd64bf494748379b6491e_14 )
    {
        Py_DECREF( frame_7ffef1106e2cd64bf494748379b6491e_14 );
    }
    cache_frame_7ffef1106e2cd64bf494748379b6491e_14 = NULL;

    assertFrameObject( frame_7ffef1106e2cd64bf494748379b6491e_14 );

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto nested_frame_exit_13;

    frame_no_exception_13:;
    goto skip_nested_handling_13;
    nested_frame_exit_13:;

    goto try_except_handler_40;
    skip_nested_handling_13:;
    {
    nuitka_bool tmp_condition_result_78;
    PyObject *tmp_compexpr_left_13;
    PyObject *tmp_compexpr_right_13;
    CHECK_OBJECT( tmp_class_creation_13__bases );
    tmp_compexpr_left_13 = tmp_class_creation_13__bases;
    tmp_compexpr_right_13 = const_tuple_type_object_tuple;
    tmp_res = RICH_COMPARE_BOOL_NE( tmp_compexpr_left_13, tmp_compexpr_right_13 );
    if ( tmp_res == -1 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_40;
    }
    tmp_condition_result_78 = ( tmp_res != 0 ) ? NUITKA_BOOL_TRUE : NUITKA_BOOL_FALSE;
    if ( tmp_condition_result_78 == NUITKA_BOOL_TRUE )
    {
        goto branch_yes_52;
    }
    else
    {
        goto branch_no_52;
    }
    branch_yes_52:;
    {
    tmp_dictset_value = const_tuple_type_object_tuple;
    tmp_res = PyObject_SetItem( locals_cryptography$hazmat$primitives$ciphers$modes_200, const_str_plain___orig_bases__, tmp_dictset_value );
    if ( tmp_res != 0 )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_40;
    }
    }
    branch_no_52:;
    }
    {
    PyObject *tmp_assign_source_104;
    PyObject *tmp_called_name_68;
    PyObject *tmp_args_name_26;
    PyObject *tmp_tuple_element_39;
    PyObject *tmp_kw_name_26;
    CHECK_OBJECT( tmp_class_creation_13__metaclass );
    tmp_called_name_68 = tmp_class_creation_13__metaclass;
    tmp_tuple_element_39 = const_str_plain_GCM;
    tmp_args_name_26 = PyTuple_New( 3 );
    Py_INCREF( tmp_tuple_element_39 );
    PyTuple_SET_ITEM( tmp_args_name_26, 0, tmp_tuple_element_39 );
    CHECK_OBJECT( tmp_class_creation_13__bases );
    tmp_tuple_element_39 = tmp_class_creation_13__bases;
    Py_INCREF( tmp_tuple_element_39 );
    PyTuple_SET_ITEM( tmp_args_name_26, 1, tmp_tuple_element_39 );
    tmp_tuple_element_39 = locals_cryptography$hazmat$primitives$ciphers$modes_200;
    Py_INCREF( tmp_tuple_element_39 );
    PyTuple_SET_ITEM( tmp_args_name_26, 2, tmp_tuple_element_39 );
    CHECK_OBJECT( tmp_class_creation_13__class_decl_dict );
    tmp_kw_name_26 = tmp_class_creation_13__class_decl_dict;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 200;
    tmp_assign_source_104 = CALL_FUNCTION( tmp_called_name_68, tmp_args_name_26, tmp_kw_name_26 );
    Py_DECREF( tmp_args_name_26 );
    if ( tmp_assign_source_104 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 200;

        goto try_except_handler_40;
    }
    assert( outline_12_var___class__ == NULL );
    outline_12_var___class__ = tmp_assign_source_104;

    }
    {
    CHECK_OBJECT( outline_12_var___class__ );
    tmp_args_element_name_48 = outline_12_var___class__;
    Py_INCREF( tmp_args_element_name_48 );
    goto try_return_handler_40;
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_40:;
    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_200 );
    locals_cryptography$hazmat$primitives$ciphers$modes_200 = NULL;
    }
    {
    goto try_return_handler_39;
    }
    // Exception handler code:
    try_except_handler_40:;
    exception_keeper_type_38 = exception_type;
    exception_keeper_value_38 = exception_value;
    exception_keeper_tb_38 = exception_tb;
    exception_keeper_lineno_38 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_DECREF( locals_cryptography$hazmat$primitives$ciphers$modes_200 );
    locals_cryptography$hazmat$primitives$ciphers$modes_200 = NULL;
    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_38;
    exception_value = exception_keeper_value_38;
    exception_tb = exception_keeper_tb_38;
    exception_lineno = exception_keeper_lineno_38;

    goto try_except_handler_39;
    }
    // End of try:
    }
    // tried codes exits in all cases
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    // Return handler code:
    try_return_handler_39:;
    {
    CHECK_OBJECT( (PyObject *)outline_12_var___class__ );
    Py_DECREF( outline_12_var___class__ );
    outline_12_var___class__ = NULL;

    }
    {
    goto outline_result_13;
    }
    // Exception handler code:
    try_except_handler_39:;
    exception_keeper_type_39 = exception_type;
    exception_keeper_value_39 = exception_value;
    exception_keeper_tb_39 = exception_tb;
    exception_keeper_lineno_39 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    // Re-raise.
    exception_type = exception_keeper_type_39;
    exception_value = exception_keeper_value_39;
    exception_tb = exception_keeper_tb_39;
    exception_lineno = exception_keeper_lineno_39;

    goto outline_exception_13;
    }
    // End of try:
    }
    // Return statement must have exited already.
    NUITKA_CANNOT_GET_HERE( cryptography$hazmat$primitives$ciphers$modes );
    return MOD_RETURN_VALUE( NULL );
    outline_exception_13:;
    exception_lineno = 200;
    goto try_except_handler_38;
    outline_result_13:;
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 199;
    {
        PyObject *call_args[] = { tmp_args_element_name_48 };
        tmp_args_element_name_46 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_66, call_args );
    }

    Py_DECREF( tmp_called_name_66 );
    Py_DECREF( tmp_args_element_name_48 );
    if ( tmp_args_element_name_46 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_62 );
        Py_DECREF( tmp_called_name_64 );

        exception_lineno = 199;

        goto try_except_handler_38;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 198;
    {
        PyObject *call_args[] = { tmp_args_element_name_46 };
        tmp_args_element_name_44 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_64, call_args );
    }

    Py_DECREF( tmp_called_name_64 );
    Py_DECREF( tmp_args_element_name_46 );
    if ( tmp_args_element_name_44 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
        Py_DECREF( tmp_called_name_62 );

        exception_lineno = 198;

        goto try_except_handler_38;
    }
    frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame.f_lineno = 197;
    {
        PyObject *call_args[] = { tmp_args_element_name_44 };
        tmp_assign_source_103 = CALL_FUNCTION_WITH_ARGS1( tmp_called_name_62, call_args );
    }

    Py_DECREF( tmp_called_name_62 );
    Py_DECREF( tmp_args_element_name_44 );
    if ( tmp_assign_source_103 == NULL )
    {
        assert( ERROR_OCCURRED() );

        FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );


        exception_lineno = 197;

        goto try_except_handler_38;
    }
    UPDATE_STRING_DICT1( moduledict_cryptography$hazmat$primitives$ciphers$modes, (Nuitka_StringObject *)const_str_plain_GCM, tmp_assign_source_103 );
    }
    goto try_end_14;
    // Exception handler code:
    try_except_handler_38:;
    exception_keeper_type_40 = exception_type;
    exception_keeper_value_40 = exception_value;
    exception_keeper_tb_40 = exception_tb;
    exception_keeper_lineno_40 = exception_lineno;
    exception_type = NULL;
    exception_value = NULL;
    exception_tb = NULL;
    exception_lineno = 0;

    {
    Py_XDECREF( tmp_class_creation_13__bases );
    tmp_class_creation_13__bases = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_13__class_decl_dict );
    tmp_class_creation_13__class_decl_dict = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_13__metaclass );
    tmp_class_creation_13__metaclass = NULL;

    }
    {
    Py_XDECREF( tmp_class_creation_13__prepared );
    tmp_class_creation_13__prepared = NULL;

    }
    {
    // Re-raise.
    exception_type = exception_keeper_type_40;
    exception_value = exception_keeper_value_40;
    exception_tb = exception_keeper_tb_40;
    exception_lineno = exception_keeper_lineno_40;

    goto frame_exception_exit_1;
    }
    // End of try:
    try_end_14:;
    }

    // Restore frame exception if necessary.
#if 0
    RESTORE_FRAME_EXCEPTION( frame_0c8f33b4b5f7d4ab629e36d5741bba93 );
#endif
    popFrameStack();

    assertFrameObject( frame_0c8f33b4b5f7d4ab629e36d5741bba93 );

    goto frame_no_exception_14;

    frame_exception_exit_1:;
#if 0
    RESTORE_FRAME_EXCEPTION( frame_0c8f33b4b5f7d4ab629e36d5741bba93 );
#endif

    if ( exception_tb == NULL )
    {
        exception_tb = MAKE_TRACEBACK( frame_0c8f33b4b5f7d4ab629e36d5741bba93, exception_lineno );
    }
    else if ( exception_tb->tb_frame != &frame_0c8f33b4b5f7d4ab629e36d5741bba93->m_frame )
    {
        exception_tb = ADD_TRACEBACK( exception_tb, frame_0c8f33b4b5f7d4ab629e36d5741bba93, exception_lineno );
    }

    // Put the previous frame back on top.
    popFrameStack();

    // Return the error.
    goto module_exception_exit;

    frame_no_exception_14:;
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_13__bases );
    Py_DECREF( tmp_class_creation_13__bases );
    tmp_class_creation_13__bases = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_13__class_decl_dict );
    Py_DECREF( tmp_class_creation_13__class_decl_dict );
    tmp_class_creation_13__class_decl_dict = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_13__metaclass );
    Py_DECREF( tmp_class_creation_13__metaclass );
    tmp_class_creation_13__metaclass = NULL;

    }
    {
    CHECK_OBJECT( (PyObject *)tmp_class_creation_13__prepared );
    Py_DECREF( tmp_class_creation_13__prepared );
    tmp_class_creation_13__prepared = NULL;

    }

    return MOD_RETURN_VALUE( module_cryptography$hazmat$primitives$ciphers$modes );
    module_exception_exit:
    RESTORE_ERROR_OCCURRED( exception_type, exception_value, exception_tb );
    return MOD_RETURN_VALUE( NULL );
}
