<?php return [PHP_INT_MAX, static function () {

    return \Symfony\Component\VarExporter\Internal\Hydrator::hydrate(
        $o = [
            clone (($p = &\Symfony\Component\VarExporter\Internal\Registry::$prototypes)['Doctrine\\ORM\\Mapping\\ClassMetadata'] ?? \Symfony\Component\VarExporter\Internal\Registry::p('Doctrine\\ORM\\Mapping\\ClassMetadata')),
            clone ($p['Doctrine\\ORM\\Id\\IdentityGenerator'] ?? \Symfony\Component\VarExporter\Internal\Registry::p('Doctrine\\ORM\\Id\\IdentityGenerator')),
        ],
        null,
        [
            'stdClass' => [
                'name' => [
                    'App\\Entity\\User',
                ],
                'namespace' => [
                    'App\\Entity',
                ],
                'rootEntityName' => [
                    'App\\Entity\\User',
                ],
                'customRepositoryClassName' => [
                    'App\\Repository\\UserRepository',
                ],
                'identifier' => [
                    [
                        'id',
                    ],
                ],
                'generatorType' => [
                    4,
                ],
                'fieldMappings' => [
                    [
                        'id' => [
                            'fieldName' => 'id',
                            'type' => 'integer',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'id' => true,
                            'columnName' => 'id',
                        ],
                        'email' => [
                            'fieldName' => 'email',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'email',
                        ],
                        'username' => [
                            'fieldName' => 'username',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'username',
                        ],
                        'password' => [
                            'fieldName' => 'password',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'password',
                        ],
                        'roles' => [
                            'fieldName' => 'roles',
                            'type' => 'json_array',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'roles',
                        ],
                        'lastname' => [
                            'fieldName' => 'lastname',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'lastname',
                        ],
                        'firstname' => [
                            'fieldName' => 'firstname',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'firstname',
                        ],
                        'avatar' => [
                            'fieldName' => 'avatar',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'avatar',
                        ],
                        'resetToken' => [
                            'fieldName' => 'resetToken',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'reset_token',
                        ],
                        'etablissement' => [
                            'fieldName' => 'etablissement',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'etablissement',
                        ],
                        'association' => [
                            'fieldName' => 'association',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'association',
                        ],
                        'fonction' => [
                            'fieldName' => 'fonction',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'fonction',
                        ],
                        'lastConnect' => [
                            'fieldName' => 'lastConnect',
                            'type' => 'date',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'last_connect',
                        ],
                    ],
                ],
                'fieldNames' => [
                    [
                        'id' => 'id',
                        'email' => 'email',
                        'username' => 'username',
                        'password' => 'password',
                        'roles' => 'roles',
                        'lastname' => 'lastname',
                        'firstname' => 'firstname',
                        'avatar' => 'avatar',
                        'reset_token' => 'resetToken',
                        'etablissement' => 'etablissement',
                        'association' => 'association',
                        'fonction' => 'fonction',
                        'last_connect' => 'lastConnect',
                    ],
                ],
                'columnNames' => [
                    [
                        'id' => 'id',
                        'email' => 'email',
                        'username' => 'username',
                        'password' => 'password',
                        'roles' => 'roles',
                        'lastname' => 'lastname',
                        'firstname' => 'firstname',
                        'avatar' => 'avatar',
                        'resetToken' => 'reset_token',
                        'etablissement' => 'etablissement',
                        'association' => 'association',
                        'fonction' => 'fonction',
                        'lastConnect' => 'last_connect',
                    ],
                ],
                'table' => [
                    [
                        'name' => 'user',
                    ],
                ],
                'associationMappings' => [
                    [
                        'advances' => [
                            'fieldName' => 'advances',
                            'mappedBy' => 'user',
                            'targetEntity' => 'App\\Entity\\Advance',
                            'cascade' => [],
                            'orphanRemoval' => true,
                            'fetch' => 2,
                            'type' => 4,
                            'inversedBy' => null,
                            'isOwningSide' => false,
                            'sourceEntity' => 'App\\Entity\\User',
                            'isCascadeRemove' => true,
                            'isCascadePersist' => false,
                            'isCascadeRefresh' => false,
                            'isCascadeMerge' => false,
                            'isCascadeDetach' => false,
                        ],
                        'lessonUsers' => [
                            'fieldName' => 'lessonUsers',
                            'mappedBy' => 'user',
                            'targetEntity' => 'App\\Entity\\LessonUser',
                            'cascade' => [],
                            'orphanRemoval' => false,
                            'fetch' => 2,
                            'type' => 4,
                            'inversedBy' => null,
                            'isOwningSide' => false,
                            'sourceEntity' => 'App\\Entity\\User',
                            'isCascadeRemove' => false,
                            'isCascadePersist' => false,
                            'isCascadeRefresh' => false,
                            'isCascadeMerge' => false,
                            'isCascadeDetach' => false,
                        ],
                        'lessons' => [
                            'fieldName' => 'lessons',
                            'joinTable' => [
                                'name' => 'user_lesson',
                                'joinColumns' => [
                                    [
                                        'name' => 'user_id',
                                        'referencedColumnName' => 'id',
                                        'onDelete' => 'CASCADE',
                                    ],
                                ],
                                'inverseJoinColumns' => [
                                    [
                                        'name' => 'lesson_id',
                                        'referencedColumnName' => 'id',
                                        'onDelete' => 'CASCADE',
                                    ],
                                ],
                            ],
                            'targetEntity' => 'App\\Entity\\Lesson',
                            'mappedBy' => null,
                            'inversedBy' => 'users',
                            'cascade' => [],
                            'orphanRemoval' => false,
                            'fetch' => 2,
                            'type' => 8,
                            'isOwningSide' => true,
                            'sourceEntity' => 'App\\Entity\\User',
                            'isCascadeRemove' => false,
                            'isCascadePersist' => false,
                            'isCascadeRefresh' => false,
                            'isCascadeMerge' => false,
                            'isCascadeDetach' => false,
                            'joinTableColumns' => [
                                'user_id',
                                'lesson_id',
                            ],
                            'isOnDeleteCascade' => true,
                            'relationToSourceKeyColumns' => [
                                'user_id' => 'id',
                            ],
                            'relationToTargetKeyColumns' => [
                                'lesson_id' => 'id',
                            ],
                        ],
                    ],
                ],
                'idGenerator' => [
                    $o[1],
                ],
            ],
        ],
        $o[0],
        []
    );

}];
