Шеф-кухар ресторану, який прагне отримати зірку Мішлен, хоче вразити інспекторів, представивши їм вибір своїх фірмових страв. Для цього вона виділила максимальний бюджет на загальну вартість і прагне максимізувати загальний престиж страв, які будуть показані інспекторам.
Щоб оцінити престиж своїх страв, шеф-кухар складає список рецептів, вказуючи їхню вартість та інгредієнти. Кожен рецепт описує, як отримати похідну страву з базової, додаючи інгредієнт. У рецепті зазначено дві додаткові характеристики: вартість застосування рецепту понад вартість базової страви та престиж, який додається до престижу базової страви. Шеф-кухар вимірює престиж у власних одиницях, які називаються "одиницями престижу".
Наприклад, список рецептів для приготування піци може виглядати так:
- pizza_tomato pizza_base tomato 1 2
- pizza_classic pizza_tomato cheese 5 5Тут pizza_base - це елементарна страва, яка не має пов'язаного рецепту, настільки проста, що її вартість незначна (встановлена в ), а її престиж також дорівнює . Шеф-кухар може отримати похідну страву pizza_tomato, додавши помідор у базову страву pizza_base за євро, отримуючи одиниці престижу. pizza_classic отримується з pizza_tomato шляхом додавання сиру за додаткову плату , а престиж додається до престижу основної страви; це означає, що загальна вартість pizza_classic становить , а загальний престиж .
Вибір фірмової страви може включати, наприклад, як pizza_tomato, так і pizza_classic. Такий вибір дасть загальний престиж при загальній вартості . Озброївшись списком рецептів і бюджетом , шеф-кухар хоче представити інспекторам Мішлен фірмовий вибір страв, щоб максимізувати загальний престиж, зберігаючи загальну вартість не більше .
Жодна страва не може бути обрана двічі у списку фірмових страв.
Будь-яка страва, яка не вказана як похідна у жодному рецепті, вважається елементарною з вартістю і престижем .
Страва може з'являтися у списку рецептів як результативна більше одного разу; якщо є кілька способів отримати страву, обирається той, що дає найменшу загальну вартість при рівних загальних витратах. Якщо загальні витрати однакові, обирається страва з найвищим загальним престижем.
Рецепти такі, що страву не можна отримати, додаючи один або кілька інгредієнтів у саму .
Перший рядок містить ціле число - бюджет (0 \le B \le 10000). Другий рядок містить кількість рецептів (0 \le n \le 10^6). Кожен з наступних рядків описує рецепт у вигляді наступних елементів, розділених пробілами: назва похідної страви (рядок); назва базової страви (рядок); доданий інгредієнт (рядок); додана ціна (ціле число); доданий престиж (ціле число).
Існує не більше різних страв (елементарних або похідних);
Вартість і престиж у рецептах варіюються від до (включно);
Рядки містять не більше символів ASCII (тільки літери, цифри та _).
Виведіть два рядки, кожен з яких містить одне ціле число. У першому рядку виведіть максимальний накопичений престиж у межах бюджету. У другому рядку виведіть мінімальну сукупну вартість, що відповідає максимальному накопиченому престижу, обов'язково меншій або рівній бюджету.
Приклад 1