<?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\\Producto',
                ],
                'namespace' => [
                    'App\\Entity',
                ],
                'rootEntityName' => [
                    'App\\Entity\\Producto',
                ],
                'customRepositoryClassName' => [
                    'App\\Repository\\ProductoRepository',
                ],
                'identifier' => [
                    [
                        'productoId',
                    ],
                ],
                'generatorType' => [
                    4,
                ],
                'fieldMappings' => [
                    [
                        'productoId' => [
                            'fieldName' => 'productoId',
                            'type' => 'integer',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'producto_id',
                            'id' => true,
                        ],
                        'codigo' => [
                            'fieldName' => 'codigo',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 50,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'codigo',
                        ],
                        'nombre' => [
                            'fieldName' => 'nombre',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'nombre',
                        ],
                        'descripcion' => [
                            'fieldName' => 'descripcion',
                            'type' => 'text',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'descripcion',
                        ],
                        'informacionAdicional' => [
                            'fieldName' => 'informacionAdicional',
                            'type' => 'text',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'informacion_adicional',
                        ],
                        'puntos' => [
                            'fieldName' => 'puntos',
                            'type' => 'integer',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'puntos',
                        ],
                        'estado' => [
                            'fieldName' => 'estado',
                            'type' => 'boolean',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'estado',
                        ],
                        'imagen' => [
                            'fieldName' => 'imagen',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'imagen',
                        ],
                        'stock' => [
                            'fieldName' => 'stock',
                            'type' => 'integer',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'stock',
                        ],
                        'url' => [
                            'fieldName' => 'url',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'url',
                        ],
                        'canjes' => [
                            'fieldName' => 'canjes',
                            'type' => 'integer',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'canjes',
                        ],
                        'visitas' => [
                            'fieldName' => 'visitas',
                            'type' => 'integer',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'visitas',
                        ],
                        'plazoEntrega' => [
                            'fieldName' => 'plazoEntrega',
                            'type' => 'integer',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'plazo_entrega',
                        ],
                        'giftcard' => [
                            'fieldName' => 'giftcard',
                            'type' => 'boolean',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'giftcard',
                        ],
                        'giftcardValor' => [
                            'fieldName' => 'giftcardValor',
                            'type' => 'integer',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'giftcard_valor',
                        ],
                        'tags' => [
                            'fieldName' => 'tags',
                            'type' => 'string',
                            'scale' => 0,
                            'length' => 255,
                            'unique' => false,
                            'nullable' => false,
                            'precision' => 0,
                            'columnName' => 'tags',
                        ],
                        'destacado' => [
                            'fieldName' => 'destacado',
                            'type' => 'boolean',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'destacado',
                        ],
                        'oferta' => [
                            'fieldName' => 'oferta',
                            'type' => 'boolean',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'oferta',
                        ],
                        'descuento' => [
                            'fieldName' => 'descuento',
                            'type' => 'integer',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'descuento',
                        ],
                        'createdAt' => [
                            'fieldName' => 'createdAt',
                            'type' => 'datetime',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'created_at',
                        ],
                        'updatedAt' => [
                            'fieldName' => 'updatedAt',
                            'type' => 'datetime',
                            'scale' => 0,
                            'length' => null,
                            'unique' => false,
                            'nullable' => true,
                            'precision' => 0,
                            'columnName' => 'updated_at',
                        ],
                    ],
                ],
                'fieldNames' => [
                    [
                        'producto_id' => 'productoId',
                        'codigo' => 'codigo',
                        'nombre' => 'nombre',
                        'descripcion' => 'descripcion',
                        'informacion_adicional' => 'informacionAdicional',
                        'puntos' => 'puntos',
                        'estado' => 'estado',
                        'imagen' => 'imagen',
                        'stock' => 'stock',
                        'url' => 'url',
                        'canjes' => 'canjes',
                        'visitas' => 'visitas',
                        'plazo_entrega' => 'plazoEntrega',
                        'giftcard' => 'giftcard',
                        'giftcard_valor' => 'giftcardValor',
                        'tags' => 'tags',
                        'destacado' => 'destacado',
                        'oferta' => 'oferta',
                        'descuento' => 'descuento',
                        'created_at' => 'createdAt',
                        'updated_at' => 'updatedAt',
                    ],
                ],
                'columnNames' => [
                    [
                        'productoId' => 'producto_id',
                        'codigo' => 'codigo',
                        'nombre' => 'nombre',
                        'descripcion' => 'descripcion',
                        'informacionAdicional' => 'informacion_adicional',
                        'puntos' => 'puntos',
                        'estado' => 'estado',
                        'imagen' => 'imagen',
                        'stock' => 'stock',
                        'url' => 'url',
                        'canjes' => 'canjes',
                        'visitas' => 'visitas',
                        'plazoEntrega' => 'plazo_entrega',
                        'giftcard' => 'giftcard',
                        'giftcardValor' => 'giftcard_valor',
                        'tags' => 'tags',
                        'destacado' => 'destacado',
                        'oferta' => 'oferta',
                        'descuento' => 'descuento',
                        'createdAt' => 'created_at',
                        'updatedAt' => 'updated_at',
                    ],
                ],
                'table' => [
                    [
                        'name' => 'producto',
                    ],
                ],
                'associationMappings' => [
                    [
                        'empresa' => [
                            'fieldName' => 'empresa',
                            'joinColumns' => [
                                [
                                    'name' => 'empresa_id',
                                    'unique' => false,
                                    'nullable' => true,
                                    'onDelete' => null,
                                    'columnDefinition' => null,
                                    'referencedColumnName' => 'empresa_id',
                                ],
                            ],
                            'cascade' => [],
                            'inversedBy' => null,
                            'targetEntity' => 'App\\Entity\\Empresa',
                            'fetch' => 2,
                            'type' => 2,
                            'mappedBy' => null,
                            'isOwningSide' => true,
                            'sourceEntity' => 'App\\Entity\\Producto',
                            'isCascadeRemove' => false,
                            'isCascadePersist' => false,
                            'isCascadeRefresh' => false,
                            'isCascadeMerge' => false,
                            'isCascadeDetach' => false,
                            'sourceToTargetKeyColumns' => [
                                'empresa_id' => 'empresa_id',
                            ],
                            'joinColumnFieldNames' => [
                                'empresa_id' => 'empresa_id',
                            ],
                            'targetToSourceKeyColumns' => [
                                'empresa_id' => 'empresa_id',
                            ],
                            'orphanRemoval' => false,
                        ],
                        'categoria' => [
                            'fieldName' => 'categoria',
                            'joinColumns' => [
                                [
                                    'name' => 'categoria_id',
                                    'unique' => false,
                                    'nullable' => true,
                                    'onDelete' => null,
                                    'columnDefinition' => null,
                                    'referencedColumnName' => 'categoria_id',
                                ],
                            ],
                            'cascade' => [],
                            'inversedBy' => null,
                            'targetEntity' => 'App\\Entity\\CategoriaProducto',
                            'fetch' => 2,
                            'type' => 2,
                            'mappedBy' => null,
                            'isOwningSide' => true,
                            'sourceEntity' => 'App\\Entity\\Producto',
                            'isCascadeRemove' => false,
                            'isCascadePersist' => false,
                            'isCascadeRefresh' => false,
                            'isCascadeMerge' => false,
                            'isCascadeDetach' => false,
                            'sourceToTargetKeyColumns' => [
                                'categoria_id' => 'categoria_id',
                            ],
                            'joinColumnFieldNames' => [
                                'categoria_id' => 'categoria_id',
                            ],
                            'targetToSourceKeyColumns' => [
                                'categoria_id' => 'categoria_id',
                            ],
                            'orphanRemoval' => false,
                        ],
                        'comercio' => [
                            'fieldName' => 'comercio',
                            'joinColumns' => [
                                [
                                    'name' => 'comercio_id',
                                    'unique' => false,
                                    'nullable' => true,
                                    'onDelete' => null,
                                    'columnDefinition' => null,
                                    'referencedColumnName' => 'comercio_id',
                                ],
                            ],
                            'cascade' => [],
                            'inversedBy' => null,
                            'targetEntity' => 'App\\Entity\\Comercio',
                            'fetch' => 2,
                            'type' => 2,
                            'mappedBy' => null,
                            'isOwningSide' => true,
                            'sourceEntity' => 'App\\Entity\\Producto',
                            'isCascadeRemove' => false,
                            'isCascadePersist' => false,
                            'isCascadeRefresh' => false,
                            'isCascadeMerge' => false,
                            'isCascadeDetach' => false,
                            'sourceToTargetKeyColumns' => [
                                'comercio_id' => 'comercio_id',
                            ],
                            'joinColumnFieldNames' => [
                                'comercio_id' => 'comercio_id',
                            ],
                            'targetToSourceKeyColumns' => [
                                'comercio_id' => 'comercio_id',
                            ],
                            'orphanRemoval' => false,
                        ],
                        'marca' => [
                            'fieldName' => 'marca',
                            'joinColumns' => [
                                [
                                    'name' => 'marca_id',
                                    'unique' => false,
                                    'nullable' => true,
                                    'onDelete' => null,
                                    'columnDefinition' => null,
                                    'referencedColumnName' => 'marca_id',
                                ],
                            ],
                            'cascade' => [],
                            'inversedBy' => null,
                            'targetEntity' => 'App\\Entity\\Marca',
                            'fetch' => 2,
                            'type' => 2,
                            'mappedBy' => null,
                            'isOwningSide' => true,
                            'sourceEntity' => 'App\\Entity\\Producto',
                            'isCascadeRemove' => false,
                            'isCascadePersist' => false,
                            'isCascadeRefresh' => false,
                            'isCascadeMerge' => false,
                            'isCascadeDetach' => false,
                            'sourceToTargetKeyColumns' => [
                                'marca_id' => 'marca_id',
                            ],
                            'joinColumnFieldNames' => [
                                'marca_id' => 'marca_id',
                            ],
                            'targetToSourceKeyColumns' => [
                                'marca_id' => 'marca_id',
                            ],
                            'orphanRemoval' => false,
                        ],
                    ],
                ],
                'idGenerator' => [
                    $o[1],
                ],
            ],
        ],
        $o[0],
        []
    );

}];
