ExceptionController :: showAction
Request
GET Parameters
No GET parameters
POST Parameters
No POST parameters
Uploaded Files
No files were uploaded
Request Attributes
| Key | Value |
|---|---|
| _controller | "twig.controller.exception::showAction" |
| exception | Symfony\Component\ErrorHandler\Exception\FlattenException {#2870 -message: "No routes found for "/index.php/categorie/vege/"." -code: 0 -previous: null -trace: [ [ "namespace" => "" "short_class" => "" "class" => "" "type" => "" "function" => "" "file" => "/var/www/html/Markego/vendor/symfony/routing/Matcher/Dumper/CompiledUrlMatcherTrait.php" "line" => 70 "args" => [] ] [ "namespace" => "Symfony\Component\Routing\Matcher" "short_class" => "CompiledUrlMatcher" "class" => "Symfony\Component\Routing\Matcher\CompiledUrlMatcher" "type" => "->" "function" => "match" "file" => "/var/www/html/Markego/src/Controller/ProductController.php" "line" => 650 "args" => [] ] [ "namespace" => "App\Controller" "short_class" => "ProductController" "class" => "App\Controller\ProductController" "type" => "->" "function" => "viewProduct" "file" => "/var/www/html/Markego/vendor/symfony/http-kernel/HttpKernel.php" "line" => 146 "args" => [] ] [ "namespace" => "Symfony\Component\HttpKernel" "short_class" => "HttpKernel" "class" => "Symfony\Component\HttpKernel\HttpKernel" "type" => "->" "function" => "handleRaw" "file" => "/var/www/html/Markego/vendor/symfony/http-kernel/HttpKernel.php" "line" => 68 "args" => [] ] [ "namespace" => "Symfony\Component\HttpKernel" "short_class" => "HttpKernel" "class" => "Symfony\Component\HttpKernel\HttpKernel" "type" => "->" "function" => "handle" "file" => "/var/www/html/Markego/vendor/symfony/http-kernel/Kernel.php" "line" => 201 "args" => [] ] [ "namespace" => "Symfony\Component\HttpKernel" "short_class" => "Kernel" "class" => "Symfony\Component\HttpKernel\Kernel" "type" => "->" "function" => "handle" "file" => "/var/www/html/Markego/public/index.php" "line" => 35 "args" => [] ] ] -traceAsString: """ #0 /var/www/html/Markego/src/Controller/ProductController.php(650): Symfony\Component\Routing\Matcher\CompiledUrlMatcher->match()\n #1 /var/www/html/Markego/vendor/symfony/http-kernel/HttpKernel.php(146): App\Controller\ProductController->viewProduct()\n #2 /var/www/html/Markego/vendor/symfony/http-kernel/HttpKernel.php(68): Symfony\Component\HttpKernel\HttpKernel->handleRaw()\n #3 /var/www/html/Markego/vendor/symfony/http-kernel/Kernel.php(201): Symfony\Component\HttpKernel\HttpKernel->handle()\n #4 /var/www/html/Markego/public/index.php(35): Symfony\Component\HttpKernel\Kernel->handle()\n #5 {main} """ -class: "Symfony\Component\Routing\Exception\ResourceNotFoundException" -statusCode: 500 -statusText: "Internal Server Error" -headers: [] -file: "/var/www/html/Markego/vendor/symfony/routing/Matcher/Dumper/CompiledUrlMatcherTrait.php" -line: 70 -asString: null -message: null -code: null -previous: null -trace: null -traceAsString: null -class: null -statusCode: null -headers: null -file: null -line: null } |
| logger | Symfony\Bridge\Monolog\Logger {#423 #name: "request" #handlers: [ Monolog\Handler\StreamHandler {#420 #stream: stream resource @87 : false : true : false : "plainfile" : "STDIO" : "a" : 0 : true : "/var/www/html/Markego/var/log/dev.log" : [] } #url: "/var/www/html/Markego/var/log/dev.log" -errorMessage: null #filePermission: null #useLocking: false -dirCreated: true #level: 400 #bubble: true #processors: [ Monolog\Processor\PsrLogMessageProcessor {#419 -dateFormat: null -removeUsedContextFields: false } ] #formatter: Monolog\Formatter\LineFormatter {#2866 …} } Symfony\Bridge\Monolog\Handler\ConsoleHandler {#421 -output: null -verbosityLevelMap: [ 16 => 400 32 => 300 64 => 250 128 => 200 256 => 100 ] -consoleFormaterOptions: [] #level: 100 #bubble: true #processors: [] #formatter: null } ] #processors: [ Symfony\Bridge\Monolog\Processor\DebugProcessor {#517 -records: [ "0000000063527047000000005ce08018" => [ [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Http\HttplugBundle\Discovery\ConfiguredClientsStrategy::onEvent" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Http\HttplugBundle\Collector\PluginClientFactoryListener::onEvent" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Symfony\Bundle\FrameworkBundle\EventListener\ResolveControllerNameSubscriber::resolveControllerName" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.request" "listener" => "Knp\Bundle\PaginatorBundle\Subscriber\SlidingPaginationSubscriber::onKernelRequest" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.controller" "listener" => "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.controller" "listener" => "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.controller" "listener" => "Sensio\Bundle\FrameworkExtraBundle\EventListener\ControllerListener::onKernelController" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.controller" "listener" => "Sensio\Bundle\FrameworkExtraBundle\EventListener\ParamConverterListener::onKernelController" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.controller" "listener" => "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelController" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.controller" "listener" => "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelController" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.controller_arguments" "listener" => "Sensio\Bundle\FrameworkExtraBundle\EventListener\SecurityListener::onKernelControllerArguments" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Notified event "{event}" to listener "{listener}"." "priority" => 100 "priorityName" => "DEBUG" "context" => [ "event" => "kernel.controller_arguments" "listener" => "Sensio\Bundle\FrameworkExtraBundle\EventListener\IsGrantedListener::onKernelControllerArguments" ] "channel" => "event" ] [ "timestamp" => 1773758934 "message" => "Uncaught PHP Exception Symfony\Component\Routing\Exception\ResourceNotFoundException: "No routes found for "/index.php/categorie/vege/"." at /var/www/html/Markego/vendor/symfony/routing/Matcher/Dumper/CompiledUrlMatcherTrait.php line 70" "priority" => 500 "priorityName" => "CRITICAL" "context" => [ "exception" => Symfony\Component\Routing\Exception\ResourceNotFoundException {#2081 #message: "No routes found for "/index.php/categorie/vege/"." #code: 0 #file: "/var/www/html/Markego/vendor/symfony/routing/Matcher/Dumper/CompiledUrlMatcherTrait.php" #line: 70 : { { Symfony\Component\Routing\Matcher\CompiledUrlMatcher->match($pathinfo): array … › › |
Request Headers
| Header | Value |
|---|---|
| accept | "*/*" |
| accept-encoding | "gzip, br, deflate" |
| from | "gptbot(at)openai.com" |
| host | "staging.maturin.ca" |
| referer | "http://staging.maturin.ca/index.php/categorie/vege?order=asc&page=2&sorting=price" |
| user-agent | "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)" |
| x-openai-host-hash | "92317407" |
| x-php-ob-level | "1" |
Request Content
Request content not available (it was retrieved as a resource).
Response
Response Headers
| Header | Value |
|---|---|
| cache-control | "no-cache, private" |
| content-type | "text/html" |
| date | "Tue, 17 Mar 2026 14:48:54 GMT" |
| x-debug-token | "9510c1" |
Cookies
Request Cookies
No request cookies
Response Cookies
No response cookies
Session
Session Metadata
| Key | Value |
|---|---|
| Created | "Tue, 17 Mar 26 10:48:54 -0400" |
| Last used | "Tue, 17 Mar 26 10:48:54 -0400" |
| Lifetime | "31536000" |
Session Attributes
No session attributes
Flashes
Flashes
No flash messages were created.
Server Parameters
Server Parameters
Defined in .env
| Key | Value |
|---|---|
| ADMIN_TO_SEND_ADDRESS | "maxime@maturin.ca" |
| APP_DEBUG | "1" |
| APP_ENV | "dev" |
| APP_SECRET | "ece17b137845c6af87737a7b429bf83e" |
| DATABASE_URL | "mysql://dev:adf98hj248r7hdasfSDF23r@127.0.0.1:3306/omelodev" |
| DEV_TO_MAIL_ADDRESS | "maxime@maturin.ca" |
| ELASTICSEARCH_HOST | "127.0.0.1" |
| ELASTICSEARCH_PORT | "9200" |
| ENABLE_TWIG_CACHE | "true" |
| MAILER_FROM | "reply-message@maturin.ca" |
| MAILER_URL | "smtp://mail.maturin.ca:587?encryption=&auth_mode=&username=maxime@maturin.ca&password=y3TE3dK7" |
| SOLEXIS_API_HOST | "https://maturin-dev.solutionextreme.com/api/" |
| SOLEXIS_NEW_API_HOST | "https://maturin-dev.solutionextreme.com/api/" |
| STRIPE_API_KEY | "sk_test_cLLpvDdtubdfD3HTPOK3uEoC" |
| STRIPE_API_PKEY | "pk_test_Hk3TQ3qfUi6YJ5ZTc2jdQB3X" |
Defined as regular env variables
| Key | Value |
|---|---|
| CONTEXT_DOCUMENT_ROOT | "/var/www/html/Markego/public" |
| CONTEXT_PREFIX | "" |
| DOCUMENT_ROOT | "/var/www/html/Markego/public" |
| GATEWAY_INTERFACE | "CGI/1.1" |
| HTTP_ACCEPT | "*/*" |
| HTTP_ACCEPT_ENCODING | "gzip, br, deflate" |
| HTTP_FROM | "gptbot(at)openai.com" |
| HTTP_HOST | "staging.maturin.ca" |
| HTTP_REFERER | "http://staging.maturin.ca/index.php/categorie/vege?order=asc&page=2&sorting=price" |
| HTTP_USER_AGENT | "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)" |
| HTTP_X_OPENAI_HOST_HASH | "92317407" |
| PATH | "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin" |
| PATH_INFO | "/produit/natto-mtl/natto-frais%2C-pot-de-250-ml/1484/" |
| PATH_TRANSLATED | "redirect:/index.php/natto-mtl/natto-frais%2C-pot-de-250-ml/1484/" |
| PHP_SELF | "/index.php/produit/natto-mtl/natto-frais%2C-pot-de-250-ml/1484/" |
| QUERY_STRING | "" |
| REMOTE_ADDR | "74.7.241.49" |
| REMOTE_PORT | "43318" |
| REQUEST_METHOD | "GET" |
| REQUEST_SCHEME | "http" |
| REQUEST_TIME | 1773758934 |
| REQUEST_TIME_FLOAT | 1773758934.236 |
| REQUEST_URI | "/index.php/produit/natto-mtl/natto-frais%252C-pot-de-250-ml/1484/" |
| SCRIPT_FILENAME | "/var/www/html/Markego/public/index.php" |
| SCRIPT_NAME | "/index.php" |
| SERVER_ADDR | "51.79.50.9" |
| SERVER_ADMIN | "webmaster@localhost" |
| SERVER_NAME | "staging.maturin.ca" |
| SERVER_PORT | "80" |
| SERVER_PROTOCOL | "HTTP/1.1" |
| SERVER_SIGNATURE | "<address>Apache/2.4.41 (Ubuntu) Server at staging.maturin.ca Port 80</address>\n" |
| SERVER_SOFTWARE | "Apache/2.4.41 (Ubuntu)" |
| SYMFONY_DOTENV_VARS | "APP_ENV,APP_DEBUG,APP_SECRET,DATABASE_URL,MAILER_URL,MAILER_FROM,DEV_TO_MAIL_ADDRESS,ADMIN_TO_SEND_ADDRESS,ELASTICSEARCH_HOST,ELASTICSEARCH_PORT,STRIPE_API_KEY,STRIPE_API_PKEY,SOLEXIS_API_HOST,SOLEXIS_NEW_API_HOST,ENABLE_TWIG_CACHE" |
Parent Request
Return to parent request (token = 4f2b51)
| Key | Value |
|---|---|
| _controller | "App\Controller\ProductController::viewProduct" |
| _firewall_context | "security.firewall.map.context.main" |
| _locale | "fr" |
| _route | "viewProduct" |
| _route_params | [ "_locale" => "fr" "producerUrl" => "natto-mtl" "productName" => "natto-frais%2C-pot-de-250-ml" "id" => "1484" ] |
| _template | Sensio\Bundle\FrameworkExtraBundle\Configuration\Template {#931 #template: "frontend/product.html.twig" -vars: [] -streamable: false -owner: [ App\Controller\ProductController {#224 -entityMana: Doctrine\ORM\EntityManager {#317 …} -productServ: App\Service\ProductService {#155 …} -userServ: App\Service\UserService {#152 …} -companyServ: App\Service\CompanyService {#861 …} -request: null #container: Symfony\Component\DependencyInjection\Argument\ServiceLocator {#835 …} } "viewProduct" ] } |
| id | "1484" |
| producerUrl | "natto-mtl" |
| product | App\Entity\Product {#1111 #em: Doctrine\ORM\EntityManager {#317 …} #userServ: App\Service\UserService {#152 …} -urlName: null -id: 1484 -origName: "Natto frais, pot de 250 ml" -origBrandName: "1 $ de remise sur retour du contenant, contactez-nous" -qtyLeft: 8 -unitAmount: 250.0 -unit: 0 -available: true -origDescription: "<p>Natto frais préparé à partir de fèves de soya biologiques du Québec. Notre natto est fabriqué artisanalement, en petite quantité. Le natto est un super aliment fermenté d'origine japonaise qui est traditionnellement mangé au déjeuner, froid, mélangé avec un peu de sauce soya, de moutarde et d'oignons verts et déposé en garniture sur un bol de riz chaud. Le natto a une texture filamenteuse et collante qui rappelle la guimauve fondue de nos classiques "carrés au rice krispies". Les qualificatifs utilisés pour en décrire les arômes et le goût varient d'une personne à l'autre mais les mots qui reviennent souvent sont: torréfié, caramel, arachide, fromage. Le natto est très polyvalent, il est délicieux sur des pâtes, en nattomakis, sur une salade ou dans un grilled-cheese. En version sucrée-salée, on peut y ajouter du sirop d'érable pour le transformer en fèves sans lard exotiques !</p>" -categories: Proxies\__CG__\App\Entity\Category {#1173 …} -conservation: Proxies\__CG__\App\Entity\Conservation {#1152 …} -Origin: "Québec/Canada" -bestBefore: null -creationDate: DateTime @1574485200 {#1108 : 2019-11-23 00:00:00.0 America/New_York (-05:00) } -nutritionFact: null -newProduct: true -images: Doctrine\ORM\PersistentCollection {#1153 …} -mainImage: Proxies\__CG__\App\Entity\Image {#1174 …} -tags: Doctrine\ORM\PersistentCollection {#1131 …} -ingredients: Doctrine\ORM\PersistentCollection {#1145 …} -storages: Doctrine\ORM\PersistentCollection {#1186 …} -pricings: Doctrine\ORM\PersistentCollection {#1204 …} -certifications: Doctrine\ORM\PersistentCollection {#1217 …} -company: Proxies\__CG__\App\Entity\Company {#1378 …} -taxable: false -maturinUpc: "055843403020" -codeUPC: null -code1: null -code2: null -code3: null -codeBox: null -alimentsDuQuebec: false -deliveryLocations: Doctrine\ORM\PersistentCollection {#1366 …} -minimumInStorage: 1 -deliveryMethods: Doctrine\ORM\PersistentCollection {#1343 …} -limitedQuantity: true -alimentsDuQuebecCertification: null -DeliveryType: 0 -DeliveryPickup: false -draft: false -deliveryMail: true -locations: Doctrine\ORM\PersistentCollection {#1317 …} -region: Proxies\__CG__\App\Entity\Region {#1288 …} -advices: "<p>Garder réfrigéré. Il est recommandé de manger le natto avant la date inscrite sur le pot afin de goûter une version plus douce de l'aliment. ll demeure comestible après la date mais son goût devient de plus en plus prononcé et la texture se modifie. Toujours utiliser un ustensile propre pour le service. Le soya est naturellement sans gluten mais notre natto est fabriqué dans une cuisine où se trouve du blé (et des noix et des arachides). </p><p>Bonne dégustation !</p><p> </p>" -recipes: null -userViewed: Doctrine\ORM\PersistentCollection {#1299 …} -inCarts: Doctrine\ORM\PersistentCollection {#1242 …} -solexId: "34604" -replenishmentItems: Doctrine\ORM\PersistentCollection {#1259 …} -favorites: Doctrine\ORM\PersistentCollection {#1271 …} -listOfIngredients: "<p>Fèves de soya biologiques, eau filtrée, bacillus subtilis natto</p>" -qtyReadyToShip: 3 -expirationDate: DateTime @1618804800 {#1109 : 2021-04-19 00:00:00.0 America/New_York (-04:00) } -isConsigned: true -consignedCost: 1.0 -nutritionFactImage: null -isFragile: true -qtyPerUnit: 1 -validatedByDistributor: true -deliveryNote: null -isJustInTime: false -reminderLowQuantitySent: false -hasMultipleProducts: false -hasFreeMaturinShipping: false -deal: null -productsInBundle: Doctrine\ORM\PersistentCollection {#1273 …} -badges: Doctrine\ORM\PersistentCollection {#1395 …} -diets: Doctrine\ORM\PersistentCollection {#1408 …} -discountPricings: Doctrine\ORM\PersistentCollection {#1410 …} -subCategory: Proxies\__CG__\App\Entity\Category {#1412 …} -complementedByGroups: Doctrine\ORM\PersistentCollection {#1425 …} -complementaryGroups: Doctrine\ORM\PersistentCollection {#1427 …} -actionWhenExpired: 0 -isSubscribable: null -subscriptions: Doctrine\ORM\PersistentCollection {#1447 …} -isBoxOfProducts: false -productsInBox: Doctrine\ORM\PersistentCollection {#1461 …} -isOnlySubscribable: null -justInTimeDeliveryDate: null -freeMaturinShippingIfLowerThen: null -isOnlySubscribableToType: null -targetOfReplacementScripts: Doctrine\ORM\PersistentCollection {#1475 …} -quantityWarehouse: 3 -quantityWarehouseReserved: 0 -quantityOnHold: 0 -parentProductId: null -feeWarehousePackingPerUnit: null -feeWarehouseHandlingPerUnit: null -isDisplayedInAssociationOnly: false -isHri: false -puroExclusion: false -containsAlcohol: false -isConsumer: true -productColaborPrice: null -isPrixLaureat: false -cantUseCoupon: false -corporative: null -seasonality: null -seasonalityStart: null -seasonalityEnd: null -quantityMaxProd: null -productDelete: false -orderFrequency: 0 -portionForMeal: 0 } |
| productName | "natto-frais%2C-pot-de-250-ml" |