Макс усердно готовится к самому важному мероприятию в жизни — финалу ACM ICPC. Он знает, что в ближайшее время будет проведено n соревнований по программированию, причём i-е из них начнётся в момент времени ai, закончится в момент времени bi и обладает полезностью ci. Чтобы получше подготовиться, он хочет выбрать для участия такой набор соревнований, чтобы их суммарная полезность была максимальна, а при равенстве — чтобы их суммарная длительность была минимальна. Конечно же, Макс не может принимать участие одновременно в нескольких соревнованиях, а также никогда не начинает участие позже момента начала и никогда не бросает соревнование раньше его окончания.
В первой строке содержится единственное целое число n (1 ≤ n ≤ 200000) — количество соревнований.
В каждой из следующих n строк даны три целых числа ai, bi, ci через пробел (0 ≤ ai < bi ≤ 109, 1 ≤ ci ≤ 109) — времена начала и окончания i-го соревнования и его полезность.
В первой строке выведите три целых числа — количество соревнований k, в которых должен принять участие Макс, а также их суммарную полезность и суммарную длительность.
Во второй строке выведите k целых чисел через пробел — номера соревнований, в которых Макс будет участвовать. Соревнования нумеруются с единицы в порядке их появления во входных данных.
Если существует несколько правильных ответов, выведите любой из них.
5
1 6 7
2 3 2
3 8 6
7 10 3
8 9 3
3 11 7
2 3 5
5
1 6 7
2 3 2
3 8 5
7 10 3
8 9 3
2 10 6
1 5
| Название |
|---|


