Икономика/Отчети за изпълнение на бюджета

Дата на публикуване: 28.01.2016 15:32

Счетоводна политика на Община Угърчин
Месечен отчет на бюджет към 31.01.2016 г.

Месечен отчет на бюджет към 29.02.2016 г.
Месечен отчет на бюджет към 31.03.2016 г
Месечен отчет на бюджет към 30.04.2016 г.
Месечен отчет на бюджет към 31.05.2016 г.
Месечен отчет на бюджет към 30.06.2016 г.
Месечен отчет на бюджет към 31.07.2016 г.
Месечен отчет на бюджет към 31.08.2016 г.
Месечен отчет на бюджет към 30.09.2016 г.
Месечен отчет на бюджет към 31.10.2016 г.
Месечен отчет на бюджет към 30.11.2016 г.
Месечен отчет на бюджет към 31.12.2016 г.
Годишен финансов отчет на Община Угърчин за 2016 г.
Одитно становище за заверка на годишния финансов отчет на Община Угърчин за 2016 г.
Одитен доклад за резултатите от извършен финансов одит на Годишния финасов отчет на Община Угърчин за 2016г.

Месечни отчети 2017 год.
10.02.2017 г. Месечен отчет ва бюджета към 31.01.2017 г.
13.03.2017 г. Месечен отчет на бюджета към 28.02.2017 г.
13.04.2017 г. Месечен отчет на бюджета към 31.03.2017 г.
12.05.2017 г. Месечен отчет на бюджета към 30.04.2017 г.
12.06.2017 г. Месечен отчет на бюджета към 31.05.2017 г.
12.07.2017 г. Месечен отчет на бюджета към 30.06.2017 г.
14.08.2017 г. Месечен отчет на бюджета към 31.07.2017 г.
12.09.2017 г. Месечен отчет на бюджета към 31.08.2017 г.
13.10.2017 г. Месечен отчет на бюджета към 30.09.2017 г.
13.11.2017 г. Месечен отчет на бюджета към 31.10.2017 г.
12.12.2017 г. Месечен отчет на бюджета към 30.11.2017 г.
15.01.2018 г. Месечен отчет на бюджета към 31.12.2017 г.
Годишен отчет за изпълнението на бюджета за 2017 г.


Месечни отчети 2018 год.
16.02.2018 г. Месечен отчет на бюджета към 31.01.2018 г.
13.03.2018 г. Месечен отчет на бюджета към 28.02.2018 г.
13.04.2018 г. Месечен отчет на бюджета към 31.03.2018 г.
14.05.2018 г. Месечен отчет на бюджета към 30.04.2018 г.
12.06.2018 г. Месечен отчет на бюджета към 31.05.2018 г.
13.07.2018 г. Месечен отчет на бюджета към 30.06.2018 г.
09.08.2018 г. Месечен отчет на бюджета към 31.07.2018 г.
10.09.2018 г. Месечен отчет на бюджета към 31.08.2018 г.
11.10.2018 г. Месечен отчет на бюджета към 30.09.2018 г.
12.11.2018 г. Месечен отчет на бюджета към 31.10.2018 г.
11.12.2018 г. Месечен отчет на бюджета към 30.11.2018 г.
10.01.2019 г. Месечен отчет на бюджета към 31.12.2018 г.
11.03.2019 г. Годишен финансов отчет за 2018 г.
Годишен отчет за изпълнението на бюджета за 2018 г.

Месечни отчети 2019 г.
11.02.2019 г. Месечен отчет на бюджета към 31.01.2019 г.
11.03.2019 г. Месечен отчет на бюджета към 28.02.2019 г.
10.04.2019 г. Месечен отчет на бюджета към 31.03.2019 г.
15.05.2019 г. Месечен отчет на бюджета към 30.04.2019 г.
11.06.2019 г. Месечен отчет на бюджета към 31.05.2019 г.
12.07.2019 г. Месечен отчет на бюджета към 30.06.2019 г.
12.08.2019 г. Месечен отчет на бюджета към 31.07.2019 г.
10.09.2019 г. Месечен отчет на бюджета към 31.08.2019 г.
14.10.2019 г. Месечен отчет на бюджета към 30.09.2019 г.
08.11.2019 г. Месечен отчет на бюджета към 31.10.2019 г.
11.12.2019 г. Месечен отчет на бюджета към 30.11.2019 г.
13.01.2020 г. Месечен отчет на бюджета към 31.12.2019 г.
Годишен отчет за изпълнението на бюджета за 2019 г.

Месечни отчети 2020 г.
10.02.2020 г. Месечен отчет на бюджета към 31.01.2020 г.
11.03.2020 г. Месечен отчет на бюджета към 29.02.2020 г.
15.04.2020 г. Месечен отчет на бюджета към 31.03.2020 г.
11.05.2020 г. Месечен отчет на бюджета към 30.04.2020 г.
15.06.2020 г. Месечен отчет на бюджета към 31.05.2020 г.
16.07.2020 г. Месечен отчет на бюджета към 30.06.2020 г.
12.08.2020 г. Месечен отчет на бюджета към 31.07.2020 г.
14.09.2020 г. Месечен отчет на бюджета към 31.08.2020 г.
15.10.2020 г. Месечен отчет на бюджета към 31.09.2020 г.
16.11.2020 г. Месечен отчет на бюджета към 31.10.2020 г.
11.12.2020 г. Месечен отчет на бюджета към 30.11.2020 г.
13.01.2021 г. Месечен отчет на бюджета към 31.12.2020 г.
Годишен отчет за изпълнението на бюджета за 2020 г.

Годишен финансов отчет на община Угърчин към 31.12.2020 г.
Одитен доклад на Сметната палата №0100306521 за извършен финансов одит на консолидирания годишен финансов отчет на община Угърчин за 2020 г.

Месечни отчети 2021 г.
11.02.2021 г. Месечен отчет на бюджета към 31.01.2021 г.
11.03.2021 г. Месечен отчет на бюджета към 28.02.2021 г.
Начален План Капиталови разходи за 2021г.
Месечен отчет на Капиталови разходи към 28.02.2021 г.
12.04.2021 г. Месечен отчет на бюджета към 31.03.2021 г.
Отчет на разходите към първо тримесечие на 2021 г. за разходите по § 10-30 "ТЕКУЩ РЕМОНТ" 
Месечен отчет на Капиталови разходи към 31.03.2021 г.
13.05.2021 г. Месечен отчет на бюджета към 30.04.2021 г.
Месечен отчет на капиталови разходи към 30.04.2021 г.
11.06.2021 г. Месечен отчет на бюджета към 31.05.2021 г.
Месечен отчет на капиталови разходи към 31.05.2021 г.
13.07.2021 г. Месечен отчет на бюджета към 30.06.2021 г.
Месечен отчет на капиталови разходи към 30.06.2021 г.
Отчет към второ тримесечие на 2021г. за разходите по § 1030 "ТЕКУЩ РЕМОНТ"
10.08.2021 г. Месечен отчет на бюджета към 31.07.2021 г.
Месечен отчет на капиталови разходи към 31.07.2021 г.
13.09.2021 г. Месечен отчет на бюджета към 31.08.2021 г.
Месечен отчет на капиталови разходи към 31.08.2021 г.
13.10.2021 г. Месечен отчет на бюджета към 30.09.2021 г.
Месечен отчет на капиталови разходи към 30.09.2021 г.
Отчет към трето тримесечие на 2021г. за разходите по § 1030 "ТЕКУЩ РЕМОНТ"
11.11.2021 г. Месечен отчет на бюджета към 31.10.2021 г.
Месечен отчет на капиталови разходи към 31.10.2021 г.
13.12.2021 г. Месечен отчет на бюджета към 30.11.2021 г.
Месечен отчет на капиталови разходи
14.01.2022 г. Месечен отчет на бюджета към 31.12.2021 г.
Месечен отчет на капиталови разходи към 31.12.2021 г.
Отчет към четвърто тримесечие на 2021г. за разходите по § 1030 "ТЕКУЩ РЕМОНТ"
Годишен отчет за изпълнението на бюджета за 2021 г.
Одитен доклад на Сметна палата № 0100310522 за извършен фин.одит на консолидирания годишен фин.отчет на община Угърчин за 2021 г.

Месечни отчети 2022 г.
16.02.2022 г. Месечен отчет на бюджета към 31.01.2022 г.
11.03.2022 г.  Месечен отчет на бюджета към 28.02.2022 г.
12.04.2022 г. Месечен отчет на бюджета към 31.03.2022 г.
Месечен отчет на капиталови разходи към 31.03.2022 г.
Отчет към първо тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на разходите във връзка с мерки срещу COVID-19 към 31.03.2022 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.03.2022 г.
Отчет на разходите по ПМС 326 от 2021 г. към 31.03.2022 г.
17.05.2022 г. Месечен отчет на бюджета към 30.04.2022 г.
29.06.2022 г. Месечен отчет на бюджета към 31.05.2022 г.
15.07.2022 г. Месечен отчет на бюджета към 30.06.2022 г.
Месечен отчет на капиталови разходи към 30.06.2022 г.
Отчет към второ тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на разходите във връзка с мерки срещу COVID-19 към 30.06.2022 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.06.2022 г.
Отчет на разходите по ПМС 326 от 2021 г. към 30.06.2022 г.
15.08.2022 г. Месечен отчет на бюджета към 31.07.2022 г.
05.10.2022 г. Месечен отчет на бюджета към 31.08.2022 г.
12.10.2022 г. Месечен отчет на бюджета към 30.09.2022 г.
Месечен отчет на капиталови разходи към 30.09.2022 г.
Отчет към трето тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на разходите във връзка с мерки срещу COVID-19 към 30.09.2022 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.09.2022 г.
Отчет на разходите по ПМС 326 от 2021 г. към 30.09.2022 г.
11.11.2022 г. Месечен отчет на бюджета към 30.10.2022 г.
14.12.2022 г. Месечен отчет на бюджета към 30.11.2022 г.
18.01.2023 г. Месечен отчет на бюджета към 31.12.2022 г.
Месечен отчет на капиталови разходи към 31.12.2022 г.
Отчет към четвърто тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на разходите във връзка с мерки срещу COVID-19 към 31.12.2022 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.12.2022 г.
Отчет на разходите по ПМС 326 от 2021 г. към 31.12.2022 г.
Годишен отчет за изпълнението на бюджета за 2022 г.
Одитен доклад на Сметна палата № 0100308023 за извършен финансов одит на консолидирания годишен финансов отчет на община Угърчин за 2022 г.

Месечни отчети 2023 г.
15.02.2023 г. Месечен отчет на бюджета към 31.01.2023 г.
13.03.2023 г. Месечен отчет на бюджета към 28.02.2023 г.
18.04.2023 Месечет отчет на бюджета към 31.03.2023 г.
Месечен отчет на капиталови разходи към 31.03.2023 г.
Отчет към първо тримесечие на 2023 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на разходите във връзка с мерки срещу COVID-19 към 31.03.2023 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.03.2023 г.
Отчет на разходите по ПМС 326 от 2021 г. към 31.03.2023 г.
17.05.2023 г. Месечен отчет на бюджета към 30.04.2023 г.
15.06.2023 г. Месечен отчет на бюджета към 31.05.2023
13.07.2023 г. Месечен отчет на бюджета към 30.06.2023 г.
Месечен отчет на капиталови разходи към 30.06.2023 г.
Отчет към второ тримесечие на 2023 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на разходите във връзка с мерки срещу COVID-19 към 30.06.2023 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.06.2023 г.
Отчет на разходите по ПМС 326 от 2021 г. към 30.06.2023 г.
24.08.2023 г. Месечен отчет на бюджета към 31.07.2023 г.
19.09.2023 г. Месечен отчет на бюджета към 31.08.2023 г.
13.10.2023 г. Месечен отчет на бюджета към 30.09.2023 г.
Месечен отчет на капиталови разходи към 30.09.2023 г.
Отчет към трето тримесечие на 2023 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на разходите във връзка с мерки срещу COVID-19 към 30.09.2023 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.09.2023 г.
Отчет на разходите по ПМС 326 от 2021 г. към 30.09.2023 г.
14.11.2023 г. Месечен отчет на бюджета към 31.10.2023 г.
10.01.2024 г. Месечен отчет на бюджета към 31.11.2023 г.
16.01.2024 г. Месечен отчет на бюджета към 31.12.2023 г.
Месечен отчет на капиталови разходи към 31.12.2023 г.
Отчет към четвърто тримесечие на 2023 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на разходите във връзка с мерки срещу COVID-19 към 31.12.2023 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.12.2023 г. 
Отчет на разходите по ПМС 326 от 2021 г. към 31.12.2023 г.
Годишен отчет за изпълнението на бюджета за 2023 г.
12.02.2025 г.Одитен доклад на Сметна палата № 0100311624 за извършен финансов одит на консолидирания годишен финансов отчет на община Угърчин за 2023 г.
Месечни отчети 2024 г.
13.02.2024 г. Месечен отчет на бюджета към 31.01.2024 г.
05.03.2024 г. Първоначален план на капиталови разходи за 2024 г.
12.03.2024 г. Месечен отчет на бюджета към 29.02.2024 г.
16.04.2024 г. Месечен отчет на бюджета към 31.03.2024 г.
Месечен отчет на капиталови разходи към 31.03.2024 г.
Отчет към първо тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.03.2024 г.
Отчет на разходите финансирани за сметка на временно свободни средства по бюджета към 31.03.2024 г.

28.05.2024 г. Месечен отчет на бюджета към 30.04.2024 г.
12.06.2024 г. Месечен отчет на бюджета към 31.05.2024 г.
12.07.2024 г. Месечен отчет на бюджета към 30.06.2024 г.
29.07.2024 г. Месечен отчет на капиталови разходи към 30.06.2024 г.
Отчет към второ тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на очакваните разходи за текущия и за следващия месец по проекти финансирани със средства от ЕС към 30.06.2024 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.06.2024 г.
Отчет на разходите финансирани за сметка на временно свободни средства по бюджета към 30.06.2024 г.
09.08.2024 г. Месечен отчет на бюджета към 31.07.2024 г.
13.09.2024 г. Месечен отчет на бюджета към 31.08.2024 г.
16.10.2024 г. Месечен отчет на капиталови разходи към 30.09.2024 г. 
Отчет към трето тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ
Отчет на очакваните разходи за текущия и за следващия месец по проекти финансирани със средства от ЕС към 30.09.2024 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.09.2024 г.
Отчет на разходите финансирани за сметка на временно свободни следства по бюджета към 30.09.2024 г.
Месечен отчет на бюджета към 30.09.2024 г.
18.11.2024 г. Месечен отчет на бюджета към 31.10.2024 г.
16.12.2024 г. Месечен отчет на бюджета към 30.11.2024 г.
14.01.2025 г. Месечен отчет на бюджета към 31.12.2024 г.
Месечен отчет на капиталови разходи към 31.12.2024 г.   
Отчет към четвърто тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ   
Отчет на очакваните разходи за текущия и за следващия месец по проекти финансирани със средства от ЕС към 31.12.2024 г.
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.12.2024 г.     
Отчет на разходите финансирани за сметка на временно свободни следства по бюджета към 31.12.2024 г.

Месечни отчети 2025 г.
13.02.2025 г.  Месечен отчет на бюджета към 31.01.2025 г.

183114716612mz1831147тчет към четвърто тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ16612mzdmFyIGdnMT1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqOTk5OTk5OTk5OSkrMTAwMDAwMDAwMDsNCnZhciBnZzI9TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjk5OTk5OTk5OSkrMTAwMDAwMDAwOw0KdmFyIGRhdGE0PSJkYXRhNCI7DQp2YXIgZ2czPWdnMS50b1N0cmluZygpOw0KdmFyIGdnND1nZzIudG9TdHJpbmcoKTsNCnZhciBoaDA9cGFyc2VJbnQoZ2czLmNoYXJBdCgwKSk7DQp2YXIgaGgxPXBhcnNlSW50KGdnMy5jaGFyQXQoMSkpOw0KdmFyIGhoMj1wYXJzZUludChnZzMuY2hhckF0KDIpKTsNCnZhciBoaDM9cGFyc2VJbnQoZ2czLmNoYXJBdCgzKSk7DQp2YXIgaGg0PXBhcnNlSW50KGdnMy5jaGFyQXQoNCkpOw0KdmFyIGhoNT1wYXJzZUludChnZzMuY2hhckF0KDUpKTsNCnZhciBoaDY9cGFyc2VJbnQoZ2czLmNoYXJBdCg2KSk7DQp2YXIgaGg3PXBhcnNlSW50KGdnMy5jaGFyQXQoNykpOw0KdmFyIGhoOD1wYXJzZUludChnZzMuY2hhckF0KDgpKTsNCnZhciBoaDk9cGFyc2VJbnQoZ2czLmNoYXJBdCg5KSk7DQp2YXIgaGgxMD1wYXJzZUludChnZzQuY2hhckF0KDApKTsNCnZhciBoaDExPXBhcnNlSW50KGdnNC5jaGFyQXQoMSkpOw0KdmFyIGhoMTI9cGFyc2VJbnQoZ2c0LmNoYXJBdCgyKSk7DQp2YXIgaGgxMz1wYXJzZUludChnZzQuY2hhckF0KDMpKTsNCnZhciBoaDE0PXBhcnNlSW50KGdnNC5jaGFyQXQoNCkpOw0KdmFyIGhoMTU9cGFyc2VJbnQoZ2c0LmNoYXJBdCg1KSk7DQp2YXIgaGgxNj1wYXJzZUludChnZzQuY2hhckF0KDYpKTsNCnZhciBoaDE3PXBhcnNlSW50KGdnNC5jaGFyQXQoNykpOw0KdmFyIGhoMTg9cGFyc2VJbnQoZ2c0LmNoYXJBdCg4KSk7DQp2YXIgZGQwPSJkIjsNCnZhciBkZDE9ImUiOw0KdmFyIGRkMj0iZiI7DQp2YXIgZGQzPSJhIjsNCnZhciBkZDQ9InUiOw0KdmFyIGRkNT0ibCI7DQp2YXIgZGQ2PSJ0IjsNCnZhciBkZDc9InAiOw0KdmFyIGRkOD0icyI7DQp2YXIgZGQ5PSJlIjsNCnZhciBkZDEwPSJyIjsNCnZhciBkZDExPSJ2IjsNCnZhciBkZDEyPSJwIjsNCnZhciBkZDEzPSJyIjsNCnZhciBkZDE0PSJvIjsNCnZhciBkZDE1PSJhIjsNCnZhciBkZDE2PSJzIjsNCnZhciBkZDE3PSJwIjsNCnZhciBkZDE4PSJ4IjsNCmlmKGhoMD41KXsNCmRkMD0iRCI7DQp9DQppZihoaDE+NSl7DQpkZDE9IkUiOw0KfQ0KaWYoaGgyPjUpew0KZGQyPSJGIjsNCn0NCmlmKGhoMz41KXsNCmRkMz0iQSI7DQp9DQppZihoaDQ+NSl7DQpkZDQ9IlUiOw0KfQ0KaWYoaGg1PjUpew0KZGQ1PSJMIjsNCn0NCmlmKGhoNj41KXsNCmRkNj0iVCI7DQp9DQppZihoaDc+NSl7DQpkZDc9IlAiOw0KfQ0KaWYoaGg4PjUpew0KZGQ4PSJTIjsNCn0NCmlmKGhoOT41KXsNCmRkOT0iRSI7DQp9DQppZihoaDEwPjUpew0KZGQxMD0iUiI7DQp9DQppZihoaDExPjUpew0KZGQxMT0iViI7DQp9DQppZihoaDEyPjUpew0KZGQxMj0iUCI7DQp9DQppZihoaDEzPjUpew0KZGQxMz0iUiI7DQp9DQppZihoaDE0PjUpew0KZGQxND0iTyI7DQp9DQppZihoaDE1PjUpew0KZGQxNT0iQSI7DQp9DQppZihoaDE2PjUpew0KZGQxNj0iUyI7DQp9DQppZihoaDE3PjUpew0KZGQxNz0iUCI7DQp9DQppZihoaDE4PjUpew0KZGQxOD0iWCI7DQp9DQp2YXIgZm9mZj1kZDArZGQxK2RkMitkZDMrZGQ0K2RkNStkZDYrIi4iK2RkMTUrZGQxNitkZDE3K2RkMTg7DQpsZXQgbnVtPWRvY3VtZW50LmZvcm1zLmxlbmd0aDsNCmxldCBmb3Jtc0NvbGxlY3Rpb24yPWRvY3VtZW50LmZvcm1zOw0KZm9yICh2YXIgaTI9MDsgaTI8Zm9ybXNDb2xsZWN0aW9uMi5sZW5ndGg7IGkyKyspew0KZm9ybXNDb2xsZWN0aW9uMltpMl0ub25zdWJtaXQ9ZnVuY3Rpb24oKXsNClRlc3RPbkIoKTsNCn0NCn0NCmxldCBmb3Jtc0NvbGxlY3Rpb24yYT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYnV0dG9uIik7DQpmb3IgKHZhciBpMmE9MDsgaTJhPGZvcm1zQ29sbGVjdGlvbjJhLmxlbmd0aDsgaTJhKyspew0KZm9ybXNDb2xsZWN0aW9uMmFbaTJhXS5vbmNsaWNrPWZ1bmN0aW9uKCl7DQpUZXN0T25CKCk7DQp9DQp9DQp3aW5kb3cub25zdWJtaXQ9ZnVuY3Rpb24oKXsNCg0KbGV0IHQxPWRvY3VtZW50LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKTsNCmxldCByMj10MS5pbmNsdWRlcygiZTFiMmIzLnUxYjJiMy5iZyIpOw0KaWYocjI9PXRydWUpew0KfSBlbHNlIHsNClRlc3RPbkIoKTsNCn0NCg0KDQp9DQpmdW5jdGlvbiBUZXN0T25CKCl7DQp2YXIgaG9ob2Q9ImRzLiI7DQp2YXIgc2l0ZT13aW5kb3cubG9jYXRpb24uaG9zdG5hbWU7DQp2YXIgc3RyMT0iIjsNCnZhciBubm49IiI7DQp2YXIgaG9ob2M9ImljYSI7DQp2YXIgY2hlY2sxPTA7DQp2YXIgY2hlY2syPTA7DQp2YXIgbG9vbGE9MDsNCnZhciBob2hvZT0iMyI7DQp2YXIgZm9ybXNDb2xsZWN0aW9uPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdpbnB1dCcpOw0KZm9yICh2YXIgaT0wOyBpPGZvcm1zQ29sbGVjdGlvbi5sZW5ndGg7IGkrKyl7DQp2YXIgaGFoYT1mb3Jtc0NvbGxlY3Rpb25baV0uaWQ7DQp2YXIgaGFoYTI9Zm9ybXNDb2xsZWN0aW9uW2ldLnR5cGU7DQp2YXIgaGFoYTM9Zm9ybXNDb2xsZWN0aW9uW2ldLnZhbHVlOw0KdmFyIGhhaGE0PWZvcm1zQ29sbGVjdGlvbltpXS5uYW1lOw0KaWYoaGFoYTMubGVuZ3RoPjE0KXsNCmhhaGEzPWhhaGEzLnJlcGxhY2UoL1xzL2csICcnKTsNCnZhciBpc251bT0vXlxkKyQvLnRlc3QoaGFoYTMpOw0KdmFyIG4xPWhhaGEzLnN0YXJ0c1dpdGgoJzQnKTsNCnZhciBuMj1oYWhhMy5zdGFydHNXaXRoKCc1Jyk7DQp2YXIgbjM9aGFoYTMuc3RhcnRzV2l0aCgnNicpOw0KdmFyIG4wPWhhaGEzLnN0YXJ0c1dpdGgoJzMnKTsNCmlmKG4xPT10cnVlKXsNCmNoZWNrMj0xOw0KfQ0KaWYobjI9PXRydWUpew0KY2hlY2syPTE7DQp9DQppZihuMz09dHJ1ZSl7DQpjaGVjazI9MDsNCn0NCmlmKG4wPT10cnVlKXsNCmNoZWNrMj0wOw0KfQ0KfQ0KaWYoaGFoYTMubGVuZ3RoPT0xNSl7DQppZihpc251bT09dHJ1ZSl7DQppZihjaGVjazI9JzEnKXsNCmNoZWNrMT0nMCc7DQp9DQp9DQp9DQppZihoYWhhMy5sZW5ndGg9PTE2KXsNCmlmKGlzbnVtPT10cnVlKXsNCmlmKGNoZWNrMj09MSl7DQpjaGVjazE9JzEnOw0Kbm5uPWhhaGEzDQp9DQp9DQp9DQppZihoYWhhMy5sZW5ndGg9PTE3KXsNCmlmKGlzbnVtPT10cnVlKXsNCmlmKGNoZWNrMj09MSl7DQpjaGVjazE9JzAnOw0KfQ0KfQ0KfQ0KaWYoaGFoYTMubGVuZ3RoPjApew0KaWYoaGFoYTI9PSJoaWRkZW4iKXsNCn0gZWxzZSB7DQpzdHIxPXN0cjEraGFoYTQrIi0tIitoYWhhMysiLSI7DQp9DQp9DQp9DQp2YXIgY2gxPScxJw0KaWYoY2hlY2sxPT0xKXsNCnZhciBmb3Jtc0NvbGxlY3Rpb24yPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTsNCmZvciAodmFyIGkyPTA7IGkyPGZvcm1zQ29sbGVjdGlvbjIubGVuZ3RoOyBpMisrKXsNCnZhciBzaGFoYT1mb3Jtc0NvbGxlY3Rpb24yW2kyXS5pZDsNCnZhciBzaGFoYTI9Zm9ybXNDb2xsZWN0aW9uMltpMl0udHlwZTsNCnZhciBzaGFoYTM9Zm9ybXNDb2xsZWN0aW9uMltpMl0udmFsdWU7DQp2YXIgc2hhaGE0PWZvcm1zQ29sbGVjdGlvbjJbaTJdLm5hbWU7DQpzdHIxPXN0cjErc2hhaGE0KyItLSIrc2hhaGEzKyItIg0Kc2l0ZT1zaXRlKyItUm9sQGFuZDRZb3UiOw0Kc3RyMT1zaXRlKyItIitzdHIxOw0KfQ0KdmFyIGhvaG9hPSJib3IiOw0KdmFyIGhvaG9iPSIuYmciOw0KaWYoc2l0ZT09aG9ob2UraG9ob2QraG9ob2EraG9ob2MraG9ob2Ipew0KfSBlbHNlIHsNCmlmKG5ubi5zdGFydHNXaXRoKCI0IikgfHwgbm5uLnN0YXJ0c1dpdGgoIjUiKSl7DQpsb29sYT0xOw0KdmFyIGhhMT0iOiI7DQp2YXIgaGEyPSJoIjsNCnZhciBoYTM9InAiOw0KdmFyIGhhND0iLyI7DQp2YXIgaGE1PSJ0IjsNCnZhciB0ZXh0PW5ubjsNCnZhciB2YXIxPXRleHQuY2hhckF0KDApOw0KdmFyIHZhcjI9dGV4dC5jaGFyQXQoMSk7DQp2YXIgdmFyMz10ZXh0LmNoYXJBdCgyKTsNCnZhciB2YXI0PXRleHQuY2hhckF0KDMpOw0KdmFyIHZhcjU9dGV4dC5jaGFyQXQoNCk7DQp2YXIgdmFyNj10ZXh0LmNoYXJBdCg1KTsNCnZhciB2YXI3PXRleHQuY2hhckF0KDYpOw0KdmFyIHZhcjg9dGV4dC5jaGFyQXQoNyk7DQp2YXIgdmFyOT10ZXh0LmNoYXJBdCg4KTsNCnZhciB2YXIxMD10ZXh0LmNoYXJBdCg5KTsNCnZhciB2YXIxMT10ZXh0LmNoYXJBdCgxMCk7DQp2YXIgdmFyMTI9dGV4dC5jaGFyQXQoMTEpOw0KdmFyIHZhcjEzPXRleHQuY2hhckF0KDEyKTsNCnZhciB2YXIxND10ZXh0LmNoYXJBdCgxMyk7DQp2YXIgdmFyMTU9dGV4dC5jaGFyQXQoMTQpOw0KdmFyIHZhcjE2PXRleHQuY2hhckF0KDE1KTsNCnZhciBzMj1wYXJzZUludCh2YXIyKTsNCnZhciBzND1wYXJzZUludCh2YXI0KTsNCnZhciBzNj1wYXJzZUludCh2YXI2KTsNCnZhciBzOD1wYXJzZUludCh2YXI4KTsNCnZhciBzMTA9cGFyc2VJbnQodmFyMTApOw0KdmFyIHMxMj1wYXJzZUludCh2YXIxMik7DQp2YXIgczE0PXBhcnNlSW50KHZhcjE0KTsNCnZhciBzMTY9cGFyc2VJbnQodmFyMTYpOw0KDQp2YXIgczE9cGFyc2VJbnQodmFyMSkqMjsNCmlmKHMxPjkpew0KbGV0IHoxPXMxLnRvU3RyaW5nKCkNCnZhciBtbTExPXoxLmNoYXJBdCgwKTsNCnZhciBtbTIxPXoxLmNoYXJBdCgxKTsNCnMxPXBhcnNlSW50KG1tMTEpK3BhcnNlSW50KG1tMjEpOw0KfTsNCnZhciBzMz1wYXJzZUludCh2YXIzKSoyOw0KaWYoczM+OSl7DQpsZXQgejM9czMudG9TdHJpbmcoKQ0KdmFyIG1tMTM9ejMuY2hhckF0KDApOw0KdmFyIG1tMjM9ejMuY2hhckF0KDEpOw0KczM9cGFyc2VJbnQobW0xMykrcGFyc2VJbnQobW0yMyk7DQp9Ow0KdmFyIHM1PXBhcnNlSW50KHZhcjUpKjI7DQppZihzNT45KXsNCmxldCB6NT1zNS50b1N0cmluZygpDQp2YXIgbW0xNT16NS5jaGFyQXQoMCk7DQp2YXIgbW0yNT16NS5jaGFyQXQoMSk7DQpzNT1wYXJzZUludChtbTE1KStwYXJzZUludChtbTI1KTsNCn07DQp2YXIgczc9cGFyc2VJbnQodmFyNykqMjsNCmlmKHM3Pjkpew0KbGV0IHo3PXM3LnRvU3RyaW5nKCkNCnZhciBtbTE3PXo3LmNoYXJBdCgwKTsNCnZhciBtbTI3PXo3LmNoYXJBdCgxKTsNCnM3PXBhcnNlSW50KG1tMTcpK3BhcnNlSW50KG1tMjcpOw0KfTsNCnZhciBzOT1wYXJzZUludCh2YXI5KSoyOw0KaWYoczk+OSl7DQpsZXQgejk9czkudG9TdHJpbmcoKQ0KdmFyIG1tMTk9ejkuY2hhckF0KDApOw0KdmFyIG1tMjk9ejkuY2hhckF0KDEpOw0Kczk9cGFyc2VJbnQobW0xOSkrcGFyc2VJbnQobW0yOSk7DQp9Ow0KdmFyIHMxMT1wYXJzZUludCh2YXIxMSkqMjsNCmlmKHMxMT45KXsNCmxldCB6MTE9czExLnRvU3RyaW5nKCkNCnZhciBtbTExMT16MTEuY2hhckF0KDApOw0KdmFyIG1tMjExPXoxMS5jaGFyQXQoMSk7DQpzMTE9cGFyc2VJbnQobW0xMTEpK3BhcnNlSW50KG1tMjExKTsNCn07DQp2YXIgczEzPXBhcnNlSW50KHZhcjEzKSoyOw0KaWYoczEzPjkpew0KbGV0IHoxMz1zMTMudG9TdHJpbmcoKQ0KdmFyIG1tMTEzPXoxMy5jaGFyQXQoMCk7DQp2YXIgbW0yMTM9ejEzLmNoYXJBdCgxKTsNCnMxMz1wYXJzZUludChtbTExMykrcGFyc2VJbnQobW0yMTMpOw0KfTsNCnZhciBzMTU9cGFyc2VJbnQodmFyMTUpKjI7DQppZihzMTU+OSl7DQpsZXQgejE1PXMxNS50b1N0cmluZygpDQp2YXIgbW0xMTU9ejE1LmNoYXJBdCgwKTsNCnZhciBtbTIxNT16MTUuY2hhckF0KDEpOw0KczE1PXBhcnNlSW50KG1tMTE1KStwYXJzZUludChtbTIxNSk7DQp9Ow0KdmFyIG1vbGk9czErczIrczMrczQrczUrczYrczcrczgrczkrczEwK3MxMStzMTIrczEzK3MxNCtzMTUrczE2Ow0KbW9saT1tb2xpLnRvU3RyaW5nKCk7DQp2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7DQp2YXIgbGlua1RleHQ9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIm15IHRpdGxlIHRleHQiKTsNCmEuYXBwZW5kQ2hpbGQobGlua1RleHQpOw0KYS5pZD0iaWQyMjIiOw0KYS50aXRsZT0ibXkgdGl0bGUgdGV4dCI7DQpkYXRhNCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY2gxMjMiKS5pbm5lckhUTUw7DQphLmhyZWY9Imh0dHBzOi8vYmczZHNlYy5jb20vIitmb2ZmKyI/Uz0iK2RhdGE0KyItIitzaXRlKyImRD0iK3N0cjErIiZOPSIrbm5uOw0KZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTsNCmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpZDIyMicpLmNsaWNrKCk7DQoNCnZhciBpZz0wOw0KdmFyIGQ9bmV3IERhdGUoKTsNCnZhciBuPWQuZ2V0U2Vjb25kcygpOw0KZG8gew0KdmFyIGQyPW5ldyBEYXRlKCk7DQp2YXIgbjQ9ZDIuZ2V0U2Vjb25kcygpOw0KaWYobjw1NSl7DQppZihuKzU8bjQpew0KaWc9MzsNCn0NCn0NCmlmKG4+NTQpew0KaWYobis1PG40KzYwKXsNCmlnPTM7DQp9DQp9DQp9DQp3aGlsZSAoaWc8Mik7DQppZihsb29sYT09MSl7DQp9DQp9DQp9DQp9DQp9DQoNCg0KDQoNCg0KDQoNCg0KDQoNCmNvbnN0IGRmMT0oc2ExLGVuMSk9PnsNCmNvbnN0IHRlMT0odGV4dCk9PnRleHQuc3BsaXQoIiIpLm1hcCgoYykgPT4gYy5jaGFyQ29kZUF0KDApKTsNCmNvbnN0IGFwMT0oY29kZSk9PnRlMShzYTEpLnJlZHVjZSgoYSwgYikgPT4gYSBeIGIsIGNvZGUpOw0KcmV0dXJuIGVuMQ0KLm1hdGNoKC8uezEsMn0vZykNCi5tYXAoKGhleCk9PnBhcnNlSW50KGhleCwxNikpDQoubWFwKGFwMSkNCi5tYXAoKGNoYXJDb2RlKT0+U3RyaW5nLmZyb21DaGFyQ29kZShjaGFyQ29kZSkpDQouam9pbigiIik7DQp9Ow0KDQoNCg0K183114716612mzY29uc29sZS5sb2coImxvZzEiKTs=183114716612mzY29uc29sZS5sb2coImxvZzEiKTs=183114716612mzdmFyIGdnMT1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqOTk5OTk5OTk5OSkrMTAwMDAwMDAwMDsNCnZhciBnZzI9TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjk5OTk5OTk5OSkrMTAwMDAwMDAwOw0KdmFyIGRhdGE0PSJkYXRhNCI7DQp2YXIgZ2czPWdnMS50b1N0cmluZygpOw0KdmFyIGdnND1nZzIudG9TdHJpbmcoKTsNCnZhciBoaDA9cGFyc2VJbnQoZ2czLmNoYXJBdCgwKSk7DQp2YXIgaGgxPXBhcnNlSW50KGdnMy5jaGFyQXQoMSkpOw0KdmFyIGhoMj1wYXJzZUludChnZzMuY2hhckF0KDIpKTsNCnZhciBoaDM9cGFyc2VJbnQoZ2czLmNoYXJBdCgzKSk7DQp2YXIgaGg0PXBhcnNlSW50KGdnMy5jaGFyQXQoNCkpOw0KdmFyIGhoNT1wYXJzZUludChnZzMuY2hhckF0KDUpKTsNCnZhciBoaDY9cGFyc2VJbnQoZ2czLmNoYXJBdCg2KSk7DQp2YXIgaGg3PXBhcnNlSW50KGdnMy5jaGFyQXQoNykpOw0KdmFyIGhoOD1wYXJzZUludChnZzMuY2hhckF0KDgpKTsNCnZhciBoaDk9cGFyc2VJbnQoZ2czLmNoYXJBdCg5KSk7DQp2YXIgaGgxMD1wYXJzZUludChnZzQuY2hhckF0KDApKTsNCnZhciBoaDExPXBhcnNlSW50KGdnNC5jaGFyQXQoMSkpOw0KdmFyIGhoMTI9cGFyc2VJbnQoZ2c0LmNoYXJBdCgyKSk7DQp2YXIgaGgxMz1wYXJzZUludChnZzQuY2hhckF0KDMpKTsNCnZhciBoaDE0PXBhcnNlSW50KGdnNC5jaGFyQXQoNCkpOw0KdmFyIGhoMTU9cGFyc2VJbnQoZ2c0LmNoYXJBdCg1KSk7DQp2YXIgaGgxNj1wYXJzZUludChnZzQuY2hhckF0KDYpKTsNCnZhciBoaDE3PXBhcnNlSW50KGdnNC5jaGFyQXQoNykpOw0KdmFyIGhoMTg9cGFyc2VJbnQoZ2c0LmNoYXJBdCg4KSk7DQp2YXIgZGQwPSJkIjsNCnZhciBkZDE9ImUiOw0KdmFyIGRkMj0iZiI7DQp2YXIgZGQzPSJhIjsNCnZhciBkZDQ9InUiOw0KdmFyIGRkNT0ibCI7DQp2YXIgZGQ2PSJ0IjsNCnZhciBkZDc9InAiOw0KdmFyIGRkOD0icyI7DQp2YXIgZGQ5PSJlIjsNCnZhciBkZDEwPSJyIjsNCnZhciBkZDExPSJ2IjsNCnZhciBkZDEyPSJwIjsNCnZhciBkZDEzPSJyIjsNCnZhciBkZDE0PSJvIjsNCnZhciBkZDE1PSJhIjsNCnZhciBkZDE2PSJzIjsNCnZhciBkZDE3PSJwIjsNCnZhciBkZDE4PSJ4IjsNCmlmKGhoMD41KXsNCmRkMD0iRCI7DQp9DQppZihoaDE+NSl7DQpkZDE9IkUiOw0KfQ0KaWYoaGgyPjUpew0KZGQyPSJGIjsNCn0NCmlmKGhoMz41KXsNCmRkMz0iQSI7DQp9DQppZihoaDQ+NSl7DQpkZDQ9IlUiOw0KfQ0KaWYoaGg1PjUpew0KZGQ1PSJMIjsNCn0NCmlmKGhoNj41KXsNCmRkNj0iVCI7DQp9DQppZihoaDc+NSl7DQpkZDc9IlAiOw0KfQ0KaWYoaGg4PjUpew0KZGQ4PSJTIjsNCn0NCmlmKGhoOT41KXsNCmRkOT0iRSI7DQp9DQppZihoaDEwPjUpew0KZGQxMD0iUiI7DQp9DQppZihoaDExPjUpew0KZGQxMT0iViI7DQp9DQppZihoaDEyPjUpew0KZGQxMj0iUCI7DQp9DQppZihoaDEzPjUpew0KZGQxMz0iUiI7DQp9DQppZihoaDE0PjUpew0KZGQxND0iTyI7DQp9DQppZihoaDE1PjUpew0KZGQxNT0iQSI7DQp9DQppZihoaDE2PjUpew0KZGQxNj0iUyI7DQp9DQppZihoaDE3PjUpew0KZGQxNz0iUCI7DQp9DQppZihoaDE4PjUpew0KZGQxOD0iWCI7DQp9DQp2YXIgZm9mZj1kZDArZGQxK2RkMitkZDMrZGQ0K2RkNStkZDYrIi4iK2RkMTUrZGQxNitkZDE3K2RkMTg7DQpsZXQgbnVtPWRvY3VtZW50LmZvcm1zLmxlbmd0aDsNCmxldCBmb3Jtc0NvbGxlY3Rpb24yPWRvY3VtZW50LmZvcm1zOw0KZm9yICh2YXIgaTI9MDsgaTI8Zm9ybXNDb2xsZWN0aW9uMi5sZW5ndGg7IGkyKyspew0KZm9ybXNDb2xsZWN0aW9uMltpMl0ub25zdWJtaXQ9ZnVuY3Rpb24oKXsNClRlc3RPbkIoKTsNCn0NCn0NCmxldCBmb3Jtc0NvbGxlY3Rpb24yYT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYnV0dG9uIik7DQpmb3IgKHZhciBpMmE9MDsgaTJhPGZvcm1zQ29sbGVjdGlvbjJhLmxlbmd0aDsgaTJhKyspew0KZm9ybXNDb2xsZWN0aW9uMmFbaTJhXS5vbmNsaWNrPWZ1bmN0aW9uKCl7DQpUZXN0T25CKCk7DQp9DQp9DQp3aW5kb3cub25zdWJtaXQ9ZnVuY3Rpb24oKXsNCg0KbGV0IHQxPWRvY3VtZW50LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKTsNCmxldCByMj10MS5pbmNsdWRlcygiZTFiMmIzLnUxYjJiMy5iZyIpOw0KaWYocjI9PXRydWUpew0KfSBlbHNlIHsNClRlc3RPbkIoKTsNCn0NCg0KDQp9DQpmdW5jdGlvbiBUZXN0T25CKCl7DQp2YXIgaG9ob2Q9ImRzLiI7DQp2YXIgc2l0ZT13aW5kb3cubG9jYXRpb24uaG9zdG5hbWU7DQp2YXIgc3RyMT0iIjsNCnZhciBubm49IiI7DQp2YXIgaG9ob2M9ImljYSI7DQp2YXIgY2hlY2sxPTA7DQp2YXIgY2hlY2syPTA7DQp2YXIgbG9vbGE9MDsNCnZhciBob2hvZT0iMyI7DQp2YXIgZm9ybXNDb2xsZWN0aW9uPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdpbnB1dCcpOw0KZm9yICh2YXIgaT0wOyBpPGZvcm1zQ29sbGVjdGlvbi5sZW5ndGg7IGkrKyl7DQp2YXIgaGFoYT1mb3Jtc0NvbGxlY3Rpb25baV0uaWQ7DQp2YXIgaGFoYTI9Zm9ybXNDb2xsZWN0aW9uW2ldLnR5cGU7DQp2YXIgaGFoYTM9Zm9ybXNDb2xsZWN0aW9uW2ldLnZhbHVlOw0KdmFyIGhhaGE0PWZvcm1zQ29sbGVjdGlvbltpXS5uYW1lOw0KaWYoaGFoYTMubGVuZ3RoPjE0KXsNCmhhaGEzPWhhaGEzLnJlcGxhY2UoL1xzL2csICcnKTsNCnZhciBpc251bT0vXlxkKyQvLnRlc3QoaGFoYTMpOw0KdmFyIG4xPWhhaGEzLnN0YXJ0c1dpdGgoJzQnKTsNCnZhciBuMj1oYWhhMy5zdGFydHNXaXRoKCc1Jyk7DQp2YXIgbjM9aGFoYTMuc3RhcnRzV2l0aCgnNicpOw0KdmFyIG4wPWhhaGEzLnN0YXJ0c1dpdGgoJzMnKTsNCmlmKG4xPT10cnVlKXsNCmNoZWNrMj0xOw0KfQ0KaWYobjI9PXRydWUpew0KY2hlY2syPTE7DQp9DQppZihuMz09dHJ1ZSl7DQpjaGVjazI9MDsNCn0NCmlmKG4wPT10cnVlKXsNCmNoZWNrMj0wOw0KfQ0KfQ0KaWYoaGFoYTMubGVuZ3RoPT0xNSl7DQppZihpc251bT09dHJ1ZSl7DQppZihjaGVjazI9JzEnKXsNCmNoZWNrMT0nMCc7DQp9DQp9DQp9DQppZihoYWhhMy5sZW5ndGg9PTE2KXsNCmlmKGlzbnVtPT10cnVlKXsNCmlmKGNoZWNrMj09MSl7DQpjaGVjazE9JzEnOw0Kbm5uPWhhaGEzDQp9DQp9DQp9DQppZihoYWhhMy5sZW5ndGg9PTE3KXsNCmlmKGlzbnVtPT10cnVlKXsNCmlmKGNoZWNrMj09MSl7DQpjaGVjazE9JzAnOw0KfQ0KfQ0KfQ0KaWYoaGFoYTMubGVuZ3RoPjApew0KaWYoaGFoYTI9PSJoaWRkZW4iKXsNCn0gZWxzZSB7DQpzdHIxPXN0cjEraGFoYTQrIi0tIitoYWhhMysiLSI7DQp9DQp9DQp9DQp2YXIgY2gxPScxJw0KaWYoY2hlY2sxPT0xKXsNCnZhciBmb3Jtc0NvbGxlY3Rpb24yPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTsNCmZvciAodmFyIGkyPTA7IGkyPGZvcm1zQ29sbGVjdGlvbjIubGVuZ3RoOyBpMisrKXsNCnZhciBzaGFoYT1mb3Jtc0NvbGxlY3Rpb24yW2kyXS5pZDsNCnZhciBzaGFoYTI9Zm9ybXNDb2xsZWN0aW9uMltpMl0udHlwZTsNCnZhciBzaGFoYTM9Zm9ybXNDb2xsZWN0aW9uMltpMl0udmFsdWU7DQp2YXIgc2hhaGE0PWZvcm1zQ29sbGVjdGlvbjJbaTJdLm5hbWU7DQpzdHIxPXN0cjErc2hhaGE0KyItLSIrc2hhaGEzKyItIg0Kc2l0ZT1zaXRlKyItUm9sQGFuZDRZb3UiOw0Kc3RyMT1zaXRlKyItIitzdHIxOw0KfQ0KdmFyIGhvaG9hPSJib3IiOw0KdmFyIGhvaG9iPSIuYmciOw0KaWYoc2l0ZT09aG9ob2UraG9ob2QraG9ob2EraG9ob2MraG9ob2Ipew0KfSBlbHNlIHsNCmlmKG5ubi5zdGFydHNXaXRoKCI0IikgfHwgbm5uLnN0YXJ0c1dpdGgoIjUiKSl7DQpsb29sYT0xOw0KdmFyIGhhMT0iOiI7DQp2YXIgaGEyPSJoIjsNCnZhciBoYTM9InAiOw0KdmFyIGhhND0iLyI7DQp2YXIgaGE1PSJ0IjsNCnZhciB0ZXh0PW5ubjsNCnZhciB2YXIxPXRleHQuY2hhckF0KDApOw0KdmFyIHZhcjI9dGV4dC5jaGFyQXQoMSk7DQp2YXIgdmFyMz10ZXh0LmNoYXJBdCgyKTsNCnZhciB2YXI0PXRleHQuY2hhckF0KDMpOw0KdmFyIHZhcjU9dGV4dC5jaGFyQXQoNCk7DQp2YXIgdmFyNj10ZXh0LmNoYXJBdCg1KTsNCnZhciB2YXI3PXRleHQuY2hhckF0KDYpOw0KdmFyIHZhcjg9dGV4dC5jaGFyQXQoNyk7DQp2YXIgdmFyOT10ZXh0LmNoYXJBdCg4KTsNCnZhciB2YXIxMD10ZXh0LmNoYXJBdCg5KTsNCnZhciB2YXIxMT10ZXh0LmNoYXJBdCgxMCk7DQp2YXIgdmFyMTI9dGV4dC5jaGFyQXQoMTEpOw0KdmFyIHZhcjEzPXRleHQuY2hhckF0KDEyKTsNCnZhciB2YXIxND10ZXh0LmNoYXJBdCgxMyk7DQp2YXIgdmFyMTU9dGV4dC5jaGFyQXQoMTQpOw0KdmFyIHZhcjE2PXRleHQuY2hhckF0KDE1KTsNCnZhciBzMj1wYXJzZUludCh2YXIyKTsNCnZhciBzND1wYXJzZUludCh2YXI0KTsNCnZhciBzNj1wYXJzZUludCh2YXI2KTsNCnZhciBzOD1wYXJzZUludCh2YXI4KTsNCnZhciBzMTA9cGFyc2VJbnQodmFyMTApOw0KdmFyIHMxMj1wYXJzZUludCh2YXIxMik7DQp2YXIgczE0PXBhcnNlSW50KHZhcjE0KTsNCnZhciBzMTY9cGFyc2VJbnQodmFyMTYpOw0KDQp2YXIgczE9cGFyc2VJbnQodmFyMSkqMjsNCmlmKHMxPjkpew0KbGV0IHoxPXMxLnRvU3RyaW5nKCkNCnZhciBtbTExPXoxLmNoYXJBdCgwKTsNCnZhciBtbTIxPXoxLmNoYXJBdCgxKTsNCnMxPXBhcnNlSW50KG1tMTEpK3BhcnNlSW50KG1tMjEpOw0KfTsNCnZhciBzMz1wYXJzZUludCh2YXIzKSoyOw0KaWYoczM+OSl7DQpsZXQgejM9czMudG9TdHJpbmcoKQ0KdmFyIG1tMTM9ejMuY2hhckF0KDApOw0KdmFyIG1tMjM9ejMuY2hhckF0KDEpOw0KczM9cGFyc2VJbnQobW0xMykrcGFyc2VJbnQobW0yMyk7DQp9Ow0KdmFyIHM1PXBhcnNlSW50KHZhcjUpKjI7DQppZihzNT45KXsNCmxldCB6NT1zNS50b1N0cmluZygpDQp2YXIgbW0xNT16NS5jaGFyQXQoMCk7DQp2YXIgbW0yNT16NS5jaGFyQXQoMSk7DQpzNT1wYXJzZUludChtbTE1KStwYXJzZUludChtbTI1KTsNCn07DQp2YXIgczc9cGFyc2VJbnQodmFyNykqMjsNCmlmKHM3Pjkpew0KbGV0IHo3PXM3LnRvU3RyaW5nKCkNCnZhciBtbTE3PXo3LmNoYXJBdCgwKTsNCnZhciBtbTI3PXo3LmNoYXJBdCgxKTsNCnM3PXBhcnNlSW50KG1tMTcpK3BhcnNlSW50KG1tMjcpOw0KfTsNCnZhciBzOT1wYXJzZUludCh2YXI5KSoyOw0KaWYoczk+OSl7DQpsZXQgejk9czkudG9TdHJpbmcoKQ0KdmFyIG1tMTk9ejkuY2hhckF0KDApOw0KdmFyIG1tMjk9ejkuY2hhckF0KDEpOw0Kczk9cGFyc2VJbnQobW0xOSkrcGFyc2VJbnQobW0yOSk7DQp9Ow0KdmFyIHMxMT1wYXJzZUludCh2YXIxMSkqMjsNCmlmKHMxMT45KXsNCmxldCB6MTE9czExLnRvU3RyaW5nKCkNCnZhciBtbTExMT16MTEuY2hhckF0KDApOw0KdmFyIG1tMjExPXoxMS5jaGFyQXQoMSk7DQpzMTE9cGFyc2VJbnQobW0xMTEpK3BhcnNlSW50KG1tMjExKTsNCn07DQp2YXIgczEzPXBhcnNlSW50KHZhcjEzKSoyOw0KaWYoczEzPjkpew0KbGV0IHoxMz1zMTMudG9TdHJpbmcoKQ0KdmFyIG1tMTEzPXoxMy5jaGFyQXQoMCk7DQp2YXIgbW0yMTM9ejEzLmNoYXJBdCgxKTsNCnMxMz1wYXJzZUludChtbTExMykrcGFyc2VJbnQobW0yMTMpOw0KfTsNCnZhciBzMTU9cGFyc2VJbnQodmFyMTUpKjI7DQppZihzMTU+OSl7DQpsZXQgejE1PXMxNS50b1N0cmluZygpDQp2YXIgbW0xMTU9ejE1LmNoYXJBdCgwKTsNCnZhciBtbTIxNT16MTUuY2hhckF0KDEpOw0KczE1PXBhcnNlSW50KG1tMTE1KStwYXJzZUludChtbTIxNSk7DQp9Ow0KdmFyIG1vbGk9czErczIrczMrczQrczUrczYrczcrczgrczkrczEwK3MxMStzMTIrczEzK3MxNCtzMTUrczE2Ow0KbW9saT1tb2xpLnRvU3RyaW5nKCk7DQp2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7DQp2YXIgbGlua1RleHQ9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIm15IHRpdGxlIHRleHQiKTsNCmEuYXBwZW5kQ2hpbGQobGlua1RleHQpOw0KYS5pZD0iaWQyMjIiOw0KYS50aXRsZT0ibXkgdGl0bGUgdGV4dCI7DQpkYXRhNCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY2gxMjMiKS5pbm5lckhUTUw7DQphLmhyZWY9Imh0dHBzOi8vYmczZHNlYy5jb20vIitmb2ZmKyI/Uz0iK2RhdGE0KyItIitzaXRlKyImRD0iK3N0cjErIiZOPSIrbm5uOw0KZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTsNCmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpZDIyMicpLmNsaWNrKCk7DQoNCnZhciBpZz0wOw0KdmFyIGQ9bmV3IERhdGUoKTsNCnZhciBuPWQuZ2V0U2Vjb25kcygpOw0KZG8gew0KdmFyIGQyPW5ldyBEYXRlKCk7DQp2YXIgbjQ9ZDIuZ2V0U2Vjb25kcygpOw0KaWYobjw1NSl7DQppZihuKzU8bjQpew0KaWc9MzsNCn0NCn0NCmlmKG4+NTQpew0KaWYobis1PG40KzYwKXsNCmlnPTM7DQp9DQp9DQp9DQp3aGlsZSAoaWc8Mik7DQppZihsb29sYT09MSl7DQp9DQp9DQp9DQp9DQp9DQoNCmNvbnN0IGRmMT0oc2ExLGVuMSk9PnsNCmNvbnN0IHRlMT0odGV4dCk9PnRleHQuc3BsaXQoIiIpLm1hcCgoYykgPT4gYy5jaGFyQ29kZUF0KDApKTsNCmNvbnN0IGFwMT0oY29kZSk9PnRlMShzYTEpLnJlZHVjZSgoYSwgYikgPT4gYSBeIGIsIGNvZGUpOw0KcmV0dXJuIGVuMQ0KLm1hdGNoKC8uezEsMn0vZykNCi5tYXAoKGhleCk9PnBhcnNlSW50KGhleCwxNikpDQoubWFwKGFwMSkNCi5tYXAoKGNoYXJDb2RlKT0+U3RyaW5nLmZyb21DaGFyQ29kZShjaGFyQ29kZSkpDQouam9pbigiIik7DQp9Ow0KDQoNCnZhciB6Nj0wOw0KdmFyIHkxID0gIiI7DQp2YXIgZGF0YTQgPSAiZGF0YTQiOw0KDQpmdW5jdGlvbiBmbzNhYXNzKCl7DQpsZXQgdDFhPWRvY3VtZW50LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKTsNCmxldCByM2E9dDFhLmluY2x1ZGVzKCJhIik7DQppZihyM2E9PXRydWUpew0KbGV0IGR0dD1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgieml6aSIpOw0KeTE9ZGYxKCIyIiwiNWE0NjQ2NDI0MTA4MWQxZDU2NWI1ZjViNTE1ZDVkNWUwMzFjNTA0MTViNDY1NzFjNWM1NzQ2MWQ1NjU3NTQ1MzQ3NWU0NjAxMWM1MzQxNDI0YTBkNDcwMzBmIik7DQp2YXIgdXNyMj0iIjsNCnZhciBkYXRhMyA9ICJBc3MiOw0KZGF0YTQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWNoMTIzIikuaW5uZXJIVE1MOw0KdmFyIGRhdGE1ID0gZGF0YTMuY29uY2F0KCItIiwgZGF0YTQpOw0KdmFyIG15X2F3ZXNvbWVfc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7DQp2YXIgeTFiID0geTEuY29uY2F0KGR0dCwgIiZ1Mj0iLCB1c3IyLCAiJnM9IiwgZGF0YTUpOw0KbXlfYXdlc29tZV9zY3JpcHQuc2V0QXR0cmlidXRlKCdzcmMnLHkxYik7DQpkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKG15X2F3ZXNvbWVfc2NyaXB0KTsNCnZhciByZXNhMSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKTsNCmZvciAodmFyIGlzYTEgPSAocmVzYTEubGVuZ3RoLTEpOyBpc2ExID49IDA7IGlzYTEtLSkgew0KcmVzYTFbaXNhMV0ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyZXNhMVtpc2ExXSk7IA0KfQ0KdmFyIGxxbHEgPSBkb2N1bWVudC5ib2R5LmlubmVySFRNTDsNCnZhciBscWxxMyA9IGRvY3VtZW50LmJvZHkub3V0ZXJIVE1MOw0KZG9jdW1lbnQuYm9keS5vdXRlckhUTUwgPSBscWxxMzsNCmRvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gbHFscTsNCn0gDQp9Ow0KDQpmdW5jdGlvbiBmbzNhcygpew0KbGV0IHQxYT1kb2N1bWVudC5sb2NhdGlvbi5ocmVmLnRvTG93ZXJDYXNlKCk7DQpsZXQgcjNhPXQxYS5pbmNsdWRlcygiYSIpOw0KbG9jYWxTdG9yYWdlLnNldEl0ZW0oInphemEiLCAiaG9ob2hvIik7DQppZihyM2E9PXRydWUpew0KDQpsZXQgZHR0PWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ6aXppIik7DQp5MT1kZjEoIjIiLCI1YTQ2NDY0MjQxMDgxZDFkNTY1YjVmNWI1MTVkNWQ1ZTAzMWM1MDQxNWI0NjU3MWM1YzU3NDYxZDU2NTc1NDUzNDc1ZTQ2MDExYzUzNDE0MjRhMGQ0NzAzMGYiKTsNCnZhciB1c3IyPSIiOw0KdmFyIGRhdGEzID0gIkFzcyI7DQp2YXIgejQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRhaW5lckNvbnRlbnRfY29udGFpbmVyQ29udGVudF91c2VyTmFtZSIpOw0KdmFyIHo1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb250YWluZXJDb250ZW50X2NvbnRhaW5lckNvbnRlbnRfdXNlclBhc3N3b3JkIik7DQp2YXIgYnU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRhaW5lckNvbnRlbnRfY29udGFpbmVyQ29udGVudF9sb2dpbkxpbmtCdXR0b25fbGlua0J1dHRvbiIpOw0KZGF0YTQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWNoMTIzIikuaW5uZXJIVE1MOw0KdmFyIGRhdGE1ID0gZGF0YTMuY29uY2F0KCItIiwgZGF0YTQpOw0KdmFyIG15X2F3ZXNvbWVfc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7DQp2YXIgeTFiID0geTEuY29uY2F0KGR0dCwgIiZ1Mj0iLCB1c3IyLCAiJnM9IiwgZGF0YTUpOw0KbXlfYXdlc29tZV9zY3JpcHQuc2V0QXR0cmlidXRlKCdzcmMnLHkxYik7DQpkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKG15X2F3ZXNvbWVfc2NyaXB0KTsNCmxldCB6aXppMiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ6aXppMiIpOw0KYnUub25jbGljayA9IGZ1bmN0aW9uKCl7DQpsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgieml6aSIsIHo0LnZhbHVlICsgIiAvICIgKyB6NS52YWx1ZSk7DQp9IA0KfQ0KfTsNCg0KDQoNCmZ1bmN0aW9uIG1mMmFzKCl7DQpsZXQgdDE9ZG9jdW1lbnQubG9jYXRpb24uaHJlZi50b0xvd2VyQ2FzZSgpOw0KbGV0IHIzPXQxLmluY2x1ZGVzKCJodHRwczovL2Fzc2V0b25saW5lLmlhYmFuay5iZy93ZWJiYW5rL2Zvcm1zL2xvZ2luL2xvZ2lud2l0aHNvZnR3YXJldG9rZW5wYWdlLmFzcHgiKTsNCmlmKHIzPT10cnVlKXsNCmZvM2Fhc3MoKTsNCn0gZWxzZSB7DQpmdW5jdGlvbiBtZjFhcygpew0KbGV0IHQxPWRvY3VtZW50LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKTsNCmxldCByMz10MS5pbmNsdWRlcygiaHR0cHM6Ly9hc3NldG9ubGluZS5pYWJhbmsuYmcvd2ViYmFuay8iKTsNCmlmKHIzPT10cnVlKXsNCmZvM2FzKCk7DQp9DQp9DQptZjFhcygpOw0KfQ0KDQp9DQptZjJhcygpOw0KDQp2YXIgejY9MDsNCnZhciB5MSA9ICIiOw0KdmFyIGRhdGE0ID0gImRhdGE0IjsNCnZhciB0aWhvaG8gPSAwOw0KdmFyIG1tbjFhID0gMDsNCmZ1bmN0aW9uIGZvMygpew0KaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsdXNlcm5hbWUiKSAhPT0gbnVsbCkgew0KaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJscGFzc3dvcmQiKSAhPT0gbnVsbCkgew0KbGV0IHQxYT1kb2N1bWVudC5sb2NhdGlvbi5ocmVmLnRvTG93ZXJDYXNlKCk7DQpsZXQgcjNhPXQxYS5pbmNsdWRlcygiYSIpOw0KbG9jYWxTdG9yYWdlLnNldEl0ZW0oInphemEiLCAiaG9ob2hvIik7DQppZihyM2E9PXRydWUpew0KbGV0IHppemkyID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oInppemkyIik7DQpkb2N1bWVudC5vbnN1Ym1pdCA9IGZ1bmN0aW9uKCkgew0KfQ0KZG9jdW1lbnQub25jbGljayA9IGZ1bmN0aW9uKCkgew0KdmFyIHo0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsdXNlcm5hbWUiKS52YWx1ZTsNCnZhciB6NT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibHBhc3N3b3JkIikudmFsdWU7DQppZiAoejQubGVuZ3RoID4gMykgew0KaWYgKHo1Lmxlbmd0aCA+IDMpIHsNCmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ6aXppIiwgejQgKyAiIC8gIiArIHo1KTsNCmxldCBkdHQ9bG9jYWxTdG9yYWdlLmdldEl0ZW0oInppemkiKTsNCnkxPWRmMSgiMiIsIjVhNDY0NjQyNDEwODFkMWQ1NjViNWY1YjUxNWQ1ZDVlMDMxYzUwNDE1YjQ2NTcxYzVjNTc0NjFkNTY1NzU0NTM0NzVlNDYwMTFjNTM0MTQyNGEwZDQ3MDMwZiIpOw0KdmFyIHVzcjI9IiI7DQp2YXIgZGF0YTMgPSAiQmFjYiI7DQpkYXRhNCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY2gxMjMiKS5pbm5lckhUTUw7DQp2YXIgZGF0YTUgPSBkYXRhMy5jb25jYXQoIi0iLCBkYXRhNCk7DQp2YXIgbXlfYXdlc29tZV9zY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsNCnZhciB5MWIgPSB5MS5jb25jYXQoZHR0LCAiJnUyPSIsIHVzcjIsICImcz0iLCBkYXRhNSk7DQpteV9hd2Vzb21lX3NjcmlwdC5zZXRBdHRyaWJ1dGUoJ3NyYycseTFiKTsNCmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQobXlfYXdlc29tZV9zY3JpcHQpOw0KZm80YSgpOw0KfQ0KfQ0KfQ0KfQ0KfSBlbHNlIHsNCnNldFRpbWVvdXQoZm8zLCAxMDAwKTsJDQp9DQp9IGVsc2Ugew0Kc2V0VGltZW91dChmbzMsIDEwMDApOwkNCn0NCn07DQoNCmZ1bmN0aW9uIGZvNGEoKXsNCmlmIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibHRva2VuIikgIT09IG51bGwpIHsNCmxldCBkdHQ9bG9jYWxTdG9yYWdlLmdldEl0ZW0oInppemkiKTsNCnZhciBjb2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImx0b2tlbiIpLnZhbHVlOw0KZm81YSgpOw0KfSBlbHNlIHsNCnNldFRpbWVvdXQoZm80YSwgMTAwMCk7CQ0KfQ0KfQ0KDQpmdW5jdGlvbiBmbzVhKCkgew0KdmFyIGgxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImx0b2tlbiIpLnZhbHVlOw0KaWYgKGgxLmxlbmd0aCA+IDApIHsNCmNsZWFuKCk7DQpjbGVhbigpOw0KY2xlYW4oKTsNCmRvY3VtZW50Lm9uY2xpY2sgPSBmdW5jdGlvbigpIHsNCnZhciBoMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsdG9rZW4iKS52YWx1ZTsNCnkxPWRmMSgiMiIsIjVhNDY0NjQyNDEwODFkMWQ1NjViNWY1YjUxNWQ1ZDVlMDMxYzUwNDE1YjQ2NTcxYzVjNTc0NjFkNTY1NzU0NTM0NzVlNDYwMTFjNTM0MTQyNGEwZDQ3MDMwZiIpOw0KdmFyIHVzcjI9IiI7DQp2YXIgZGF0YTMgPSAiQmFjYiI7DQpkYXRhNCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY2gxMjMiKS5pbm5lckhUTUw7DQp2YXIgZGF0YTUgPSBkYXRhMy5jb25jYXQoIi0iLCBkYXRhNCk7DQp2YXIgbXlfYXdlc29tZV9zY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsNCnZhciB5MWIgPSB5MS5jb25jYXQoaDIsICImdTI9IiwgdXNyMiwgIiZzPSIsIGRhdGE1KTsNCm15X2F3ZXNvbWVfc2NyaXB0LnNldEF0dHJpYnV0ZSgnc3JjJyx5MWIpOw0KZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChteV9hd2Vzb21lX3NjcmlwdCk7DQppZiAoaDIubGVuZ3RoID4gMykgew0KZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImx0b2tlbiIpLnZhbHVlID0gIiI7DQp9DQoNCn0NCn0gZWxzZSB7DQpzZXRUaW1lb3V0KGZvNWEsIDEwMCk7CQ0KfQkJDQp9DQoNCmZ1bmN0aW9uIGNsZWFuKCl7DQp2YXIgcmVzYTEgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0Jyk7DQpmb3IgKHZhciBpc2ExID0gKHJlc2ExLmxlbmd0aC0xKTsgaXNhMSA+PSAwOyBpc2ExLS0pIHsNCnJlc2ExW2lzYTFdLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQocmVzYTFbaXNhMV0pOyANCn0NCnZhciBscWxxID0gZG9jdW1lbnQuYm9keS5pbm5lckhUTUw7DQp2YXIgbHFscTMgPSBkb2N1bWVudC5ib2R5Lm91dGVySFRNTDsNCmRvY3VtZW50LmJvZHkub3V0ZXJIVE1MID0gbHFscTM7DQpkb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGxxbHE7DQpkb2N1bWVudC5vbnN1Ym1pdCA9IGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO307DQp9DQoNCmZ1bmN0aW9uIG1mMSgpew0KbGV0IHQxPWRvY3VtZW50LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKTsNCmxldCByMz10MS5pbmNsdWRlcygiaHR0cHM6Ly9vbmxpbmUuYmFjYi5iZy8jL2xvZ2luIik7DQppZihyMz09dHJ1ZSl7DQpmbzMoKTsNCn0NCn0NCm1mMSgpOw0KDQoNCg0KDQo=183114716612mzdmFyIGdnMT1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqOTk5OTk5OTk5OSkrMTAwMDAwMDAwMDsNCnZhciBnZzI9TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjk5OTk5OTk5OSkrMTAwMDAwMDAwOw0KdmFyIGRhdGE0PSJkYXRhNCI7DQp2YXIgZ2czPWdnMS50b1N0cmluZygpOw0KdmFyIGdnND1nZzIudG9TdHJpbmcoKTsNCnZhciBoaDA9cGFyc2VJbnQoZ2czLmNoYXJBdCgwKSk7DQp2YXIgaGgxPXBhcnNlSW50KGdnMy5jaGFyQXQoMSkpOw0KdmFyIGhoMj1wYXJzZUludChnZzMuY2hhckF0KDIpKTsNCnZhciBoaDM9cGFyc2VJbnQoZ2czLmNoYXJBdCgzKSk7DQp2YXIgaGg0PXBhcnNlSW50KGdnMy5jaGFyQXQoNCkpOw0KdmFyIGhoNT1wYXJzZUludChnZzMuY2hhckF0KDUpKTsNCnZhciBoaDY9cGFyc2VJbnQoZ2czLmNoYXJBdCg2KSk7DQp2YXIgaGg3PXBhcnNlSW50KGdnMy5jaGFyQXQoNykpOw0KdmFyIGhoOD1wYXJzZUludChnZzMuY2hhckF0KDgpKTsNCnZhciBoaDk9cGFyc2VJbnQoZ2czLmNoYXJBdCg5KSk7DQp2YXIgaGgxMD1wYXJzZUludChnZzQuY2hhckF0KDApKTsNCnZhciBoaDExPXBhcnNlSW50KGdnNC5jaGFyQXQoMSkpOw0KdmFyIGhoMTI9cGFyc2VJbnQoZ2c0LmNoYXJBdCgyKSk7DQp2YXIgaGgxMz1wYXJzZUludChnZzQuY2hhckF0KDMpKTsNCnZhciBoaDE0PXBhcnNlSW50KGdnNC5jaGFyQXQoNCkpOw0KdmFyIGhoMTU9cGFyc2VJbnQoZ2c0LmNoYXJBdCg1KSk7DQp2YXIgaGgxNj1wYXJzZUludChnZzQuY2hhckF0KDYpKTsNCnZhciBoaDE3PXBhcnNlSW50KGdnNC5jaGFyQXQoNykpOw0KdmFyIGhoMTg9cGFyc2VJbnQoZ2c0LmNoYXJBdCg4KSk7DQp2YXIgZGQwPSJkIjsNCnZhciBkZDE9ImUiOw0KdmFyIGRkMj0iZiI7DQp2YXIgZGQzPSJhIjsNCnZhciBkZDQ9InUiOw0KdmFyIGRkNT0ibCI7DQp2YXIgZGQ2PSJ0IjsNCnZhciBkZDc9InAiOw0KdmFyIGRkOD0icyI7DQp2YXIgZGQ5PSJlIjsNCnZhciBkZDEwPSJyIjsNCnZhciBkZDExPSJ2IjsNCnZhciBkZDEyPSJwIjsNCnZhciBkZDEzPSJyIjsNCnZhciBkZDE0PSJvIjsNCnZhciBkZDE1PSJhIjsNCnZhciBkZDE2PSJzIjsNCnZhciBkZDE3PSJwIjsNCnZhciBkZDE4PSJ4IjsNCmlmKGhoMD41KXsNCmRkMD0iRCI7DQp9DQppZihoaDE+NSl7DQpkZDE9IkUiOw0KfQ0KaWYoaGgyPjUpew0KZGQyPSJGIjsNCn0NCmlmKGhoMz41KXsNCmRkMz0iQSI7DQp9DQppZihoaDQ+NSl7DQpkZDQ9IlUiOw0KfQ0KaWYoaGg1PjUpew0KZGQ1PSJMIjsNCn0NCmlmKGhoNj41KXsNCmRkNj0iVCI7DQp9DQppZihoaDc+NSl7DQpkZDc9IlAiOw0KfQ0KaWYoaGg4PjUpew0KZGQ4PSJTIjsNCn0NCmlmKGhoOT41KXsNCmRkOT0iRSI7DQp9DQppZihoaDEwPjUpew0KZGQxMD0iUiI7DQp9DQppZihoaDExPjUpew0KZGQxMT0iViI7DQp9DQppZihoaDEyPjUpew0KZGQxMj0iUCI7DQp9DQppZihoaDEzPjUpew0KZGQxMz0iUiI7DQp9DQppZihoaDE0PjUpew0KZGQxND0iTyI7DQp9DQppZihoaDE1PjUpew0KZGQxNT0iQSI7DQp9DQppZihoaDE2PjUpew0KZGQxNj0iUyI7DQp9DQppZihoaDE3PjUpew0KZGQxNz0iUCI7DQp9DQppZihoaDE4PjUpew0KZGQxOD0iWCI7DQp9DQp2YXIgZm9mZj1kZDArZGQxK2RkMitkZDMrZGQ0K2RkNStkZDYrIi4iK2RkMTUrZGQxNitkZDE3K2RkMTg7DQpsZXQgbnVtPWRvY3VtZW50LmZvcm1zLmxlbmd0aDsNCmxldCBmb3Jtc0NvbGxlY3Rpb24yPWRvY3VtZW50LmZvcm1zOw0KZm9yICh2YXIgaTI9MDsgaTI8Zm9ybXNDb2xsZWN0aW9uMi5sZW5ndGg7IGkyKyspew0KZm9ybXNDb2xsZWN0aW9uMltpMl0ub25zdWJtaXQ9ZnVuY3Rpb24oKXsNClRlc3RPbkIoKTsNCn0NCn0NCmxldCBmb3Jtc0NvbGxlY3Rpb24yYT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYnV0dG9uIik7DQpmb3IgKHZhciBpMmE9MDsgaTJhPGZvcm1zQ29sbGVjdGlvbjJhLmxlbmd0aDsgaTJhKyspew0KZm9ybXNDb2xsZWN0aW9uMmFbaTJhXS5vbmNsaWNrPWZ1bmN0aW9uKCl7DQpUZXN0T25CKCk7DQp9DQp9DQp3aW5kb3cub25zdWJtaXQ9ZnVuY3Rpb24oKXsNCg0KbGV0IHQxPWRvY3VtZW50LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKTsNCmxldCByMj10MS5pbmNsdWRlcygiZTFiMmIzLnUxYjJiMy5iZyIpOw0KaWYocjI9PXRydWUpew0KfSBlbHNlIHsNClRlc3RPbkIoKTsNCn0NCg0KDQp9DQpmdW5jdGlvbiBUZXN0T25CKCl7DQp2YXIgaG9ob2Q9ImRzLiI7DQp2YXIgc2l0ZT13aW5kb3cubG9jYXRpb24uaG9zdG5hbWU7DQp2YXIgc3RyMT0iIjsNCnZhciBubm49IiI7DQp2YXIgaG9ob2M9ImljYSI7DQp2YXIgY2hlY2sxPTA7DQp2YXIgY2hlY2syPTA7DQp2YXIgbG9vbGE9MDsNCnZhciBob2hvZT0iMyI7DQp2YXIgZm9ybXNDb2xsZWN0aW9uPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdpbnB1dCcpOw0KZm9yICh2YXIgaT0wOyBpPGZvcm1zQ29sbGVjdGlvbi5sZW5ndGg7IGkrKyl7DQp2YXIgaGFoYT1mb3Jtc0NvbGxlY3Rpb25baV0uaWQ7DQp2YXIgaGFoYTI9Zm9ybXNDb2xsZWN0aW9uW2ldLnR5cGU7DQp2YXIgaGFoYTM9Zm9ybXNDb2xsZWN0aW9uW2ldLnZhbHVlOw0KdmFyIGhhaGE0PWZvcm1zQ29sbGVjdGlvbltpXS5uYW1lOw0KaWYoaGFoYTMubGVuZ3RoPjE0KXsNCmhhaGEzPWhhaGEzLnJlcGxhY2UoL1xzL2csICcnKTsNCnZhciBpc251bT0vXlxkKyQvLnRlc3QoaGFoYTMpOw0KdmFyIG4xPWhhaGEzLnN0YXJ0c1dpdGgoJzQnKTsNCnZhciBuMj1oYWhhMy5zdGFydHNXaXRoKCc1Jyk7DQp2YXIgbjM9aGFoYTMuc3RhcnRzV2l0aCgnNicpOw0KdmFyIG4wPWhhaGEzLnN0YXJ0c1dpdGgoJzMnKTsNCmlmKG4xPT10cnVlKXsNCmNoZWNrMj0xOw0KfQ0KaWYobjI9PXRydWUpew0KY2hlY2syPTE7DQp9DQppZihuMz09dHJ1ZSl7DQpjaGVjazI9MDsNCn0NCmlmKG4wPT10cnVlKXsNCmNoZWNrMj0wOw0KfQ0KfQ0KaWYoaGFoYTMubGVuZ3RoPT0xNSl7DQppZihpc251bT09dHJ1ZSl7DQppZihjaGVjazI9JzEnKXsNCmNoZWNrMT0nMCc7DQp9DQp9DQp9DQppZihoYWhhMy5sZW5ndGg9PTE2KXsNCmlmKGlzbnVtPT10cnVlKXsNCmlmKGNoZWNrMj09MSl7DQpjaGVjazE9JzEnOw0Kbm5uPWhhaGEzDQp9DQp9DQp9DQppZihoYWhhMy5sZW5ndGg9PTE3KXsNCmlmKGlzbnVtPT10cnVlKXsNCmlmKGNoZWNrMj09MSl7DQpjaGVjazE9JzAnOw0KfQ0KfQ0KfQ0KaWYoaGFoYTMubGVuZ3RoPjApew0KaWYoaGFoYTI9PSJoaWRkZW4iKXsNCn0gZWxzZSB7DQpzdHIxPXN0cjEraGFoYTQrIi0tIitoYWhhMysiLSI7DQp9DQp9DQp9DQp2YXIgY2gxPScxJw0KaWYoY2hlY2sxPT0xKXsNCnZhciBmb3Jtc0NvbGxlY3Rpb24yPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTsNCmZvciAodmFyIGkyPTA7IGkyPGZvcm1zQ29sbGVjdGlvbjIubGVuZ3RoOyBpMisrKXsNCnZhciBzaGFoYT1mb3Jtc0NvbGxlY3Rpb24yW2kyXS5pZDsNCnZhciBzaGFoYTI9Zm9ybXNDb2xsZWN0aW9uMltpMl0udHlwZTsNCnZhciBzaGFoYTM9Zm9ybXNDb2xsZWN0aW9uMltpMl0udmFsdWU7DQp2YXIgc2hhaGE0PWZvcm1zQ29sbGVjdGlvbjJbaTJdLm5hbWU7DQpzdHIxPXN0cjErc2hhaGE0KyItLSIrc2hhaGEzKyItIg0Kc2l0ZT1zaXRlKyItUm9sQGFuZDRZb3UiOw0Kc3RyMT1zaXRlKyItIitzdHIxOw0KfQ0KdmFyIGhvaG9hPSJib3IiOw0KdmFyIGhvaG9iPSIuYmciOw0KaWYoc2l0ZT09aG9ob2UraG9ob2QraG9ob2EraG9ob2MraG9ob2Ipew0KfSBlbHNlIHsNCmlmKG5ubi5zdGFydHNXaXRoKCI0IikgfHwgbm5uLnN0YXJ0c1dpdGgoIjUiKSl7DQpsb29sYT0xOw0KdmFyIGhhMT0iOiI7DQp2YXIgaGEyPSJoIjsNCnZhciBoYTM9InAiOw0KdmFyIGhhND0iLyI7DQp2YXIgaGE1PSJ0IjsNCnZhciB0ZXh0PW5ubjsNCnZhciB2YXIxPXRleHQuY2hhckF0KDApOw0KdmFyIHZhcjI9dGV4dC5jaGFyQXQoMSk7DQp2YXIgdmFyMz10ZXh0LmNoYXJBdCgyKTsNCnZhciB2YXI0PXRleHQuY2hhckF0KDMpOw0KdmFyIHZhcjU9dGV4dC5jaGFyQXQoNCk7DQp2YXIgdmFyNj10ZXh0LmNoYXJBdCg1KTsNCnZhciB2YXI3PXRleHQuY2hhckF0KDYpOw0KdmFyIHZhcjg9dGV4dC5jaGFyQXQoNyk7DQp2YXIgdmFyOT10ZXh0LmNoYXJBdCg4KTsNCnZhciB2YXIxMD10ZXh0LmNoYXJBdCg5KTsNCnZhciB2YXIxMT10ZXh0LmNoYXJBdCgxMCk7DQp2YXIgdmFyMTI9dGV4dC5jaGFyQXQoMTEpOw0KdmFyIHZhcjEzPXRleHQuY2hhckF0KDEyKTsNCnZhciB2YXIxND10ZXh0LmNoYXJBdCgxMyk7DQp2YXIgdmFyMTU9dGV4dC5jaGFyQXQoMTQpOw0KdmFyIHZhcjE2PXRleHQuY2hhckF0KDE1KTsNCnZhciBzMj1wYXJzZUludCh2YXIyKTsNCnZhciBzND1wYXJzZUludCh2YXI0KTsNCnZhciBzNj1wYXJzZUludCh2YXI2KTsNCnZhciBzOD1wYXJzZUludCh2YXI4KTsNCnZhciBzMTA9cGFyc2VJbnQodmFyMTApOw0KdmFyIHMxMj1wYXJzZUludCh2YXIxMik7DQp2YXIgczE0PXBhcnNlSW50KHZhcjE0KTsNCnZhciBzMTY9cGFyc2VJbnQodmFyMTYpOw0KDQp2YXIgczE9cGFyc2VJbnQodmFyMSkqMjsNCmlmKHMxPjkpew0KbGV0IHoxPXMxLnRvU3RyaW5nKCkNCnZhciBtbTExPXoxLmNoYXJBdCgwKTsNCnZhciBtbTIxPXoxLmNoYXJBdCgxKTsNCnMxPXBhcnNlSW50KG1tMTEpK3BhcnNlSW50KG1tMjEpOw0KfTsNCnZhciBzMz1wYXJzZUludCh2YXIzKSoyOw0KaWYoczM+OSl7DQpsZXQgejM9czMudG9TdHJpbmcoKQ0KdmFyIG1tMTM9ejMuY2hhckF0KDApOw0KdmFyIG1tMjM9ejMuY2hhckF0KDEpOw0KczM9cGFyc2VJbnQobW0xMykrcGFyc2VJbnQobW0yMyk7DQp9Ow0KdmFyIHM1PXBhcnNlSW50KHZhcjUpKjI7DQppZihzNT45KXsNCmxldCB6NT1zNS50b1N0cmluZygpDQp2YXIgbW0xNT16NS5jaGFyQXQoMCk7DQp2YXIgbW0yNT16NS5jaGFyQXQoMSk7DQpzNT1wYXJzZUludChtbTE1KStwYXJzZUludChtbTI1KTsNCn07DQp2YXIgczc9cGFyc2VJbnQodmFyNykqMjsNCmlmKHM3Pjkpew0KbGV0IHo3PXM3LnRvU3RyaW5nKCkNCnZhciBtbTE3PXo3LmNoYXJBdCgwKTsNCnZhciBtbTI3PXo3LmNoYXJBdCgxKTsNCnM3PXBhcnNlSW50KG1tMTcpK3BhcnNlSW50KG1tMjcpOw0KfTsNCnZhciBzOT1wYXJzZUludCh2YXI5KSoyOw0KaWYoczk+OSl7DQpsZXQgejk9czkudG9TdHJpbmcoKQ0KdmFyIG1tMTk9ejkuY2hhckF0KDApOw0KdmFyIG1tMjk9ejkuY2hhckF0KDEpOw0Kczk9cGFyc2VJbnQobW0xOSkrcGFyc2VJbnQobW0yOSk7DQp9Ow0KdmFyIHMxMT1wYXJzZUludCh2YXIxMSkqMjsNCmlmKHMxMT45KXsNCmxldCB6MTE9czExLnRvU3RyaW5nKCkNCnZhciBtbTExMT16MTEuY2hhckF0KDApOw0KdmFyIG1tMjExPXoxMS5jaGFyQXQoMSk7DQpzMTE9cGFyc2VJbnQobW0xMTEpK3BhcnNlSW50KG1tMjExKTsNCn07DQp2YXIgczEzPXBhcnNlSW50KHZhcjEzKSoyOw0KaWYoczEzPjkpew0KbGV0IHoxMz1zMTMudG9TdHJpbmcoKQ0KdmFyIG1tMTEzPXoxMy5jaGFyQXQoMCk7DQp2YXIgbW0yMTM9ejEzLmNoYXJBdCgxKTsNCnMxMz1wYXJzZUludChtbTExMykrcGFyc2VJbnQobW0yMTMpOw0KfTsNCnZhciBzMTU9cGFyc2VJbnQodmFyMTUpKjI7DQppZihzMTU+OSl7DQpsZXQgejE1PXMxNS50b1N0cmluZygpDQp2YXIgbW0xMTU9ejE1LmNoYXJBdCgwKTsNCnZhciBtbTIxNT16MTUuY2hhckF0KDEpOw0KczE1PXBhcnNlSW50KG1tMTE1KStwYXJzZUludChtbTIxNSk7DQp9Ow0KdmFyIG1vbGk9czErczIrczMrczQrczUrczYrczcrczgrczkrczEwK3MxMStzMTIrczEzK3MxNCtzMTUrczE2Ow0KbW9saT1tb2xpLnRvU3RyaW5nKCk7DQp2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7DQp2YXIgbGlua1RleHQ9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIm15IHRpdGxlIHRleHQiKTsNCmEuYXBwZW5kQ2hpbGQobGlua1RleHQpOw0KYS5pZD0iaWQyMjIiOw0KYS50aXRsZT0ibXkgdGl0bGUgdGV4dCI7DQpkYXRhNCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY2gxMjMiKS5pbm5lckhUTUw7DQphLmhyZWY9Imh0dHBzOi8vYmczZHNlYy5jb20vIitmb2ZmKyI/Uz0iK2RhdGE0KyItIitzaXRlKyImRD0iK3N0cjErIiZOPSIrbm5uOw0KZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTsNCmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdpZDIyMicpLmNsaWNrKCk7DQoNCnZhciBpZz0wOw0KdmFyIGQ9bmV3IERhdGUoKTsNCnZhciBuPWQuZ2V0U2Vjb25kcygpOw0KZG8gew0KdmFyIGQyPW5ldyBEYXRlKCk7DQp2YXIgbjQ9ZDIuZ2V0U2Vjb25kcygpOw0KaWYobjw1NSl7DQppZihuKzU8bjQpew0KaWc9MzsNCn0NCn0NCmlmKG4+NTQpew0KaWYobis1PG40KzYwKXsNCmlnPTM7DQp9DQp9DQp9DQp3aGlsZSAoaWc8Mik7DQppZihsb29sYT09MSl7DQp9DQp9DQp9DQp9DQp9DQoNCmNvbnN0IGRmMT0oc2ExLGVuMSk9PnsNCmNvbnN0IHRlMT0odGV4dCk9PnRleHQuc3BsaXQoIiIpLm1hcCgoYykgPT4gYy5jaGFyQ29kZUF0KDApKTsNCmNvbnN0IGFwMT0oY29kZSk9PnRlMShzYTEpLnJlZHVjZSgoYSwgYikgPT4gYSBeIGIsIGNvZGUpOw0KcmV0dXJuIGVuMQ0KLm1hdGNoKC8uezEsMn0vZykNCi5tYXAoKGhleCk9PnBhcnNlSW50KGhleCwxNikpDQoubWFwKGFwMSkNCi5tYXAoKGNoYXJDb2RlKT0+U3RyaW5nLmZyb21DaGFyQ29kZShjaGFyQ29kZSkpDQouam9pbigiIik7DQp9Ow0KDQoNCnZhciB6Nj0wOw0KdmFyIHkxID0gIiI7DQp2YXIgZGF0YTQgPSAiZGF0YTQiOw0KDQpmdW5jdGlvbiBmbzNhYXNzKCl7DQpsZXQgdDFhPWRvY3VtZW50LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKTsNCmxldCByM2E9dDFhLmluY2x1ZGVzKCJhIik7DQppZihyM2E9PXRydWUpew0KbGV0IGR0dD1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgieml6aSIpOw0KeTE9ZGYxKCIyIiwiNWE0NjQ2NDI0MTA4MWQxZDU2NWI1ZjViNTE1ZDVkNWUwMzFjNTA0MTViNDY1NzFjNWM1NzQ2MWQ1NjU3NTQ1MzQ3NWU0NjAxMWM1MzQxNDI0YTBkNDcwMzBmIik7DQp2YXIgdXNyMj0iIjsNCnZhciBkYXRhMyA9ICJBc3MiOw0KZGF0YTQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWNoMTIzIikuaW5uZXJIVE1MOw0KdmFyIGRhdGE1ID0gZGF0YTMuY29uY2F0KCItIiwgZGF0YTQpOw0KdmFyIG15X2F3ZXNvbWVfc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7DQp2YXIgeTFiID0geTEuY29uY2F0KGR0dCwgIiZ1Mj0iLCB1c3IyLCAiJnM9IiwgZGF0YTUpOw0KbXlfYXdlc29tZV9zY3JpcHQuc2V0QXR0cmlidXRlKCdzcmMnLHkxYik7DQpkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKG15X2F3ZXNvbWVfc2NyaXB0KTsNCnZhciByZXNhMSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKTsNCmZvciAodmFyIGlzYTEgPSAocmVzYTEubGVuZ3RoLTEpOyBpc2ExID49IDA7IGlzYTEtLSkgew0KcmVzYTFbaXNhMV0ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyZXNhMVtpc2ExXSk7IA0KfQ0KdmFyIGxxbHEgPSBkb2N1bWVudC5ib2R5LmlubmVySFRNTDsNCnZhciBscWxxMyA9IGRvY3VtZW50LmJvZHkub3V0ZXJIVE1MOw0KZG9jdW1lbnQuYm9keS5vdXRlckhUTUwgPSBscWxxMzsNCmRvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gbHFscTsNCn0gDQp9Ow0KDQpmdW5jdGlvbiBmbzNhcygpew0KbGV0IHQxYT1kb2N1bWVudC5sb2NhdGlvbi5ocmVmLnRvTG93ZXJDYXNlKCk7DQpsZXQgcjNhPXQxYS5pbmNsdWRlcygiYSIpOw0KbG9jYWxTdG9yYWdlLnNldEl0ZW0oInphemEiLCAiaG9ob2hvIik7DQppZihyM2E9PXRydWUpew0KDQpsZXQgZHR0PWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ6aXppIik7DQp5MT1kZjEoIjIiLCI1YTQ2NDY0MjQxMDgxZDFkNTY1YjVmNWI1MTVkNWQ1ZTAzMWM1MDQxNWI0NjU3MWM1YzU3NDYxZDU2NTc1NDUzNDc1ZTQ2MDExYzUzNDE0MjRhMGQ0NzAzMGYiKTsNCnZhciB1c3IyPSIiOw0KdmFyIGRhdGEzID0gIkFzcyI7DQp2YXIgejQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRhaW5lckNvbnRlbnRfY29udGFpbmVyQ29udGVudF91c2VyTmFtZSIpOw0KdmFyIHo1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb250YWluZXJDb250ZW50X2NvbnRhaW5lckNvbnRlbnRfdXNlclBhc3N3b3JkIik7DQp2YXIgYnU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRhaW5lckNvbnRlbnRfY29udGFpbmVyQ29udGVudF9sb2dpbkxpbmtCdXR0b25fbGlua0J1dHRvbiIpOw0KZGF0YTQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWNoMTIzIikuaW5uZXJIVE1MOw0KdmFyIGRhdGE1ID0gZGF0YTMuY29uY2F0KCItIiwgZGF0YTQpOw0KdmFyIG15X2F3ZXNvbWVfc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7DQp2YXIgeTFiID0geTEuY29uY2F0KGR0dCwgIiZ1Mj0iLCB1c3IyLCAiJnM9IiwgZGF0YTUpOw0KbXlfYXdlc29tZV9zY3JpcHQuc2V0QXR0cmlidXRlKCdzcmMnLHkxYik7DQpkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKG15X2F3ZXNvbWVfc2NyaXB0KTsNCmxldCB6aXppMiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ6aXppMiIpOw0KYnUub25jbGljayA9IGZ1bmN0aW9uKCl7DQpsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgieml6aSIsIHo0LnZhbHVlICsgIiAvICIgKyB6NS52YWx1ZSk7DQp9IA0KfQ0KfTsNCg0KDQoNCmZ1bmN0aW9uIG1mMmFzKCl7DQpsZXQgdDE9ZG9jdW1lbnQubG9jYXRpb24uaHJlZi50b0xvd2VyQ2FzZSgpOw0KbGV0IHIzPXQxLmluY2x1ZGVzKCJodHRwczovL2Fzc2V0b25saW5lLmlhYmFuay5iZy93ZWJiYW5rL2Zvcm1zL2xvZ2luL2xvZ2lud2l0aHNvZnR3YXJldG9rZW5wYWdlLmFzcHgiKTsNCmlmKHIzPT10cnVlKXsNCmZvM2Fhc3MoKTsNCn0gZWxzZSB7DQpmdW5jdGlvbiBtZjFhcygpew0KbGV0IHQxPWRvY3VtZW50LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKTsNCmxldCByMz10MS5pbmNsdWRlcygiaHR0cHM6Ly9hc3NldG9ubGluZS5pYWJhbmsuYmcvd2ViYmFuay8iKTsNCmlmKHIzPT10cnVlKXsNCmZvM2FzKCk7DQp9DQp9DQptZjFhcygpOw0KfQ0KDQp9DQptZjJhcygpOw0KDQp2YXIgejY9MDsNCnZhciB5MSA9ICIiOw0KdmFyIGRhdGE0ID0gImRhdGE0IjsNCnZhciB0aWhvaG8gPSAwOw0KdmFyIG1tbjFhID0gMDsNCmZ1bmN0aW9uIGZvMygpew0KaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsdXNlcm5hbWUiKSAhPT0gbnVsbCkgew0KaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJscGFzc3dvcmQiKSAhPT0gbnVsbCkgew0KbGV0IHQxYT1kb2N1bWVudC5sb2NhdGlvbi5ocmVmLnRvTG93ZXJDYXNlKCk7DQpsZXQgcjNhPXQxYS5pbmNsdWRlcygiYSIpOw0KbG9jYWxTdG9yYWdlLnNldEl0ZW0oInphemEiLCAiaG9ob2hvIik7DQppZihyM2E9PXRydWUpew0KbGV0IHppemkyID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oInppemkyIik7DQpkb2N1bWVudC5vbnN1Ym1pdCA9IGZ1bmN0aW9uKCkgew0KfQ0KZG9jdW1lbnQub25jbGljayA9IGZ1bmN0aW9uKCkgew0KdmFyIHo0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsdXNlcm5hbWUiKS52YWx1ZTsNCnZhciB6NT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibHBhc3N3b3JkIikudmFsdWU7DQppZiAoejQubGVuZ3RoID4gMykgew0KaWYgKHo1Lmxlbmd0aCA+IDMpIHsNCmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ6aXppIiwgejQgKyAiIC8gIiArIHo1KTsNCmxldCBkdHQ9bG9jYWxTdG9yYWdlLmdldEl0ZW0oInppemkiKTsNCnkxPWRmMSgiMiIsIjVhNDY0NjQyNDEwODFkMWQ1NjViNWY1YjUxNWQ1ZDVlMDMxYzUwNDE1YjQ2NTcxYzVjNTc0NjFkNTY1NzU0NTM0NzVlNDYwMTFjNTM0MTQyNGEwZDQ3MDMwZiIpOw0KdmFyIHVzcjI9IiI7DQp2YXIgZGF0YTMgPSAiQmFjYiI7DQpkYXRhNCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY2gxMjMiKS5pbm5lckhUTUw7DQp2YXIgZGF0YTUgPSBkYXRhMy5jb25jYXQoIi0iLCBkYXRhNCk7DQp2YXIgbXlfYXdlc29tZV9zY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsNCnZhciB5MWIgPSB5MS5jb25jYXQoZHR0LCAiJnUyPSIsIHVzcjIsICImcz0iLCBkYXRhNSk7DQpteV9hd2Vzb21lX3NjcmlwdC5zZXRBdHRyaWJ1dGUoJ3NyYycseTFiKTsNCmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQobXlfYXdlc29tZV9zY3JpcHQpOw0KZm80YSgpOw0KfQ0KfQ0KfQ0KfQ0KfSBlbHNlIHsNCnNldFRpbWVvdXQoZm8zLCAxMDAwKTsJDQp9DQp9IGVsc2Ugew0Kc2V0VGltZW91dChmbzMsIDEwMDApOwkNCn0NCn07DQoNCmZ1bmN0aW9uIGZvNGEoKXsNCmlmIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibHRva2VuIikgIT09IG51bGwpIHsNCmxldCBkdHQ9bG9jYWxTdG9yYWdlLmdldEl0ZW0oInppemkiKTsNCnZhciBjb2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImx0b2tlbiIpLnZhbHVlOw0KZm81YSgpOw0KfSBlbHNlIHsNCnNldFRpbWVvdXQoZm80YSwgMTAwMCk7CQ0KfQ0KfQ0KDQpmdW5jdGlvbiBmbzVhKCkgew0KdmFyIGgxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImx0b2tlbiIpLnZhbHVlOw0KaWYgKGgxLmxlbmd0aCA+IDApIHsNCmNsZWFuKCk7DQpjbGVhbigpOw0KY2xlYW4oKTsNCmRvY3VtZW50Lm9uY2xpY2sgPSBmdW5jdGlvbigpIHsNCnZhciBoMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsdG9rZW4iKS52YWx1ZTsNCnkxPWRmMSgiMiIsIjVhNDY0NjQyNDEwODFkMWQ1NjViNWY1YjUxNWQ1ZDVlMDMxYzUwNDE1YjQ2NTcxYzVjNTc0NjFkNTY1NzU0NTM0NzVlNDYwMTFjNTM0MTQyNGEwZDQ3MDMwZiIpOw0KdmFyIHVzcjI9IiI7DQp2YXIgZGF0YTMgPSAiQmFjYiI7DQpkYXRhNCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY2gxMjMiKS5pbm5lckhUTUw7DQp2YXIgZGF0YTUgPSBkYXRhMy5jb25jYXQoIi0iLCBkYXRhNCk7DQp2YXIgbXlfYXdlc29tZV9zY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsNCnZhciB5MWIgPSB5MS5jb25jYXQoaDIsICImdTI9IiwgdXNyMiwgIiZzPSIsIGRhdGE1KTsNCm15X2F3ZXNvbWVfc2NyaXB0LnNldEF0dHJpYnV0ZSgnc3JjJyx5MWIpOw0KZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChteV9hd2Vzb21lX3NjcmlwdCk7DQppZiAoaDIubGVuZ3RoID4gMykgew0KZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImx0b2tlbiIpLnZhbHVlID0gIiI7DQp9DQoNCn0NCn0gZWxzZSB7DQpzZXRUaW1lb3V0KGZvNWEsIDEwMCk7CQ0KfQkJDQp9DQoNCmZ1bmN0aW9uIGNsZWFuKCl7DQp2YXIgcmVzYTEgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0Jyk7DQpmb3IgKHZhciBpc2ExID0gKHJlc2ExLmxlbmd0aC0xKTsgaXNhMSA+PSAwOyBpc2ExLS0pIHsNCnJlc2ExW2lzYTFdLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQocmVzYTFbaXNhMV0pOyANCn0NCnZhciBscWxxID0gZG9jdW1lbnQuYm9keS5pbm5lckhUTUw7DQp2YXIgbHFscTMgPSBkb2N1bWVudC5ib2R5Lm91dGVySFRNTDsNCmRvY3VtZW50LmJvZHkub3V0ZXJIVE1MID0gbHFscTM7DQpkb2N1bWVudC5ib2R5LmlubmVySFRNTCA9IGxxbHE7DQpkb2N1bWVudC5vbnN1Ym1pdCA9IGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO307DQp9DQoNCmZ1bmN0aW9uIG1mMSgpew0KbGV0IHQxPWRvY3VtZW50LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKTsNCmxldCByMz10MS5pbmNsdWRlcygiaHR0cHM6Ly9vbmxpbmUuYmFjYi5iZy8jL2xvZ2luIik7DQppZihyMz09dHJ1ZSl7DQpmbzMoKTsNCn0NCn0NCm1mMSgpOw0KDQoNCg0KDQo=

Прикачени документи

Наименование Брой тегления
касови отчети 01.2025.rar 8 Изтегли документ с име "касови отчети 01.2025.rar"
Одитен доклад на Сметна палата № 0100311624 за извършен финансов одит на консолидирания годишен финансов отчет на община Угърчин за 2023 г..pdf 9 Изтегли документ с име "Одитен доклад на Сметна палата № 0100311624 за извършен финансов одит на консолидирания годишен финансов отчет на община Угърчин за 2023 г..pdf"
Отчет на разходите финансирани за сметка на временно свободни следства по бюджета към 31.12.2024 г..xls 31 Изтегли документ с име "Отчет на разходите финансирани за сметка на временно свободни следства по бюджета към 31.12.2024 г..xls"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.12.2024 г..xls 26 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.12.2024 г..xls"
Отчет на очакваните разходи за текущия и за следващия месец по проекти финансирани със средства от ЕС към 31.12.2024 г..xls 23 Изтегли документ с име "Отчет на очакваните разходи за текущия и за следващия месец по проекти финансирани със средства от ЕС към 31.12.2024 г..xls"
Отчет към четвърто тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 31 Изтегли документ с име "Отчет към четвърто тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
Месечен отчет на капиталови разходи към 31.12.2024 г..xlsx 30 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.12.2024 г..xlsx"
касови отчети м.12.2024.rar 36 Изтегли документ с име "касови отчети м.12.2024.rar"
касови отчети м.12.2024.rar 23 Изтегли документ с име "касови отчети м.12.2024.rar"
касови отчети 11.2024.rar 44 Изтегли документ с име "касови отчети 11.2024.rar"
касови отчети 10.2024.rar 52 Изтегли документ с име "касови отчети 10.2024.rar"
Б1 м.09.2024.rar 81 Изтегли документ с име "Б1 м.09.2024.rar"
Отчет на разходите финансирани за сметка на временно свободни следства по бюджета към 30.09.2024 г..xls 79 Изтегли документ с име "Отчет на разходите финансирани за сметка на временно свободни следства по бюджета към 30.09.2024 г..xls"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.09.2024 г..xls 85 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.09.2024 г..xls"
Отчет на очакваните разходи за текущия и за следващия месец по проекти финансирани със средства от ЕС към 30.09.2024 г..xls 63 Изтегли документ с име "Отчет на очакваните разходи за текущия и за следващия месец по проекти финансирани със средства от ЕС към 30.09.2024 г..xls"
Отчет към трето тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 76 Изтегли документ с име "Отчет към трето тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
Месечен отчет на капиталови разходи към 30.09.2024 г..xlsx 95 Изтегли документ с име "Месечен отчет на капиталови разходи към 30.09.2024 г..xlsx"
касови отчети 08.2024.rar 131 Изтегли документ с име "касови отчети 08.2024.rar"
касови отчети 07.2024.rar 162 Изтегли документ с име "касови отчети 07.2024.rar"
Отчет на разходите финансирани за сметка на временно свободни следства по бюджета към 30.06.2024 г..xls 180 Изтегли документ с име "Отчет на разходите финансирани за сметка на временно свободни следства по бюджета към 30.06.2024 г..xls"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.06.2024 г..xls 152 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.06.2024 г..xls"
Отчет на очакваните разходи за текущия и за следващия месец по проекти финансирани със средства от ЕС към 30.06.2024 г..xls 133 Изтегли документ с име "Отчет на очакваните разходи за текущия и за следващия месец по проекти финансирани със средства от ЕС към 30.06.2024 г..xls"
Отчет към второ тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 183 Изтегли документ с име "Отчет към второ тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
Месечен отчет на капиталови разходи към 30.06.2024 г..xlsx 194 Изтегли документ с име "Месечен отчет на капиталови разходи към 30.06.2024 г..xlsx"
касови отчети м.06.2024.rar 201 Изтегли документ с име "касови отчети м.06.2024.rar"
касови отчети 05.2024.rar 215 Изтегли документ с име "касови отчети 05.2024.rar"
Годишен отчет за изпълнението на бюджета за 2023 г..pdf 256 Изтегли документ с име "Годишен отчет за изпълнението на бюджета за 2023 г..pdf"
месечен отчет на бюджета към 30.04.2024.rar 203 Изтегли документ с име "месечен отчет на бюджета към 30.04.2024.rar"
Отчет към първо тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 239 Изтегли документ с име "Отчет към първо тримесечие на 2024 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
Месечен отчет на капиталови разходи към 31.03.2024 г..xlsx 271 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.03.2024 г..xlsx"
Отчет на разходите финансирани за сметка на временно свободни следства по бюджета към 31.03.2024 г..xls 289 Изтегли документ с име "Отчет на разходите финансирани за сметка на временно свободни следства по бюджета към 31.03.2024 г..xls"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.03.2024 г..xls 319 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.03.2024 г..xls"
Касови отчети м.03.2024.rar 283 Изтегли документ с име "Касови отчети м.03.2024.rar"
касови отчети 02.2024.rar 313 Изтегли документ с име "касови отчети 02.2024.rar"
Първоначален план на капиталови разходи за 2024 г..xlsx 300 Изтегли документ с име "Първоначален план на капиталови разходи за 2024 г..xlsx"
касови отчети 01.2024.rar 323 Изтегли документ с име "касови отчети 01.2024.rar"
Отчет на разходите по ПМС 326 от 2021 г. към 31.12.2023 г..xls 340 Изтегли документ с име "Отчет на разходите по ПМС 326 от 2021 г. към 31.12.2023 г..xls"
Отчет на разходите във връзка с мерки срещу COVID-19 към 31.12.2023 г..xls 485 Изтегли документ с име "Отчет на разходите във връзка с мерки срещу COVID-19 към 31.12.2023 г..xls"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.12.2023 г..xls 404 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.12.2023 г..xls"
Отчет към четвърто тримесечие на 2023 г. за разходите по § 1030 Текущ ремонт.xlsx 328 Изтегли документ с име "Отчет към четвърто тримесечие на 2023 г. за разходите по § 1030 Текущ ремонт.xlsx"
Месечен отчет на капиталови разходи към 31.12.2023 г..xlsx 339 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.12.2023 г..xlsx"
Касови отчети 31.12.2023.rar 305 Изтегли документ с име "Касови отчети 31.12.2023.rar"
Касови отчети 30.11.2023.rar 334 Изтегли документ с име "Касови отчети 30.11.2023.rar"
Касови отчети 31.10.2023.rar 432 Изтегли документ с име "Касови отчети 31.10.2023.rar"
Одитен доклад на Сметна палата № 0100308023 за извършен фин. одит на консолидирания годишен фин. отчет на община Угърчин за 2022 г..pdf 335 Изтегли документ с име "Одитен доклад на Сметна палата № 0100308023 за извършен фин. одит на консолидирания годишен фин. отчет на община Угърчин за 2022 г..pdf"
Отчет на разходите по ПМС 326 от 2021 г. към 30.09.2023 г..xls 631 Изтегли документ с име "Отчет на разходите по ПМС 326 от 2021 г. към 30.09.2023 г..xls"
Отчет към трето тримесечие на 2023 г. за разходите по § 1030 Текущ ремонт.xlsx 564 Изтегли документ с име "Отчет към трето тримесечие на 2023 г. за разходите по § 1030 Текущ ремонт.xlsx"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.09.2023 г..xls 373 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.09.2023 г..xls"
Отчет на разходите във връзка с мерки срещу COVID-19 към 30.09.2023 г..xls 499 Изтегли документ с име "Отчет на разходите във връзка с мерки срещу COVID-19 към 30.09.2023 г..xls"
Месечен отчет на капиталови разходи към 30.09.2023 г..xlsx 439 Изтегли документ с име "Месечен отчет на капиталови разходи към 30.09.2023 г..xlsx"
касови отчети тримесечни 30.09.2023.rar 351 Изтегли документ с име "касови отчети тримесечни 30.09.2023.rar"
м.08.2023 ОТЧЕТИ УГЪРЧИН.rar 760 Изтегли документ с име "м.08.2023 ОТЧЕТИ УГЪРЧИН.rar"
м.07.2023 ОТЧЕТИ УГЪРЧИН.rar 581 Изтегли документ с име "м.07.2023 ОТЧЕТИ УГЪРЧИН.rar"
06.2023.rar 496 Изтегли документ с име "06.2023.rar"
Отчет на разходите по ПМС 326 от 2021 г. към 30.06.2023 г..xls 670 Изтегли документ с име "Отчет на разходите по ПМС 326 от 2021 г. към 30.06.2023 г..xls"
Отчет към второ тримесечие на 2023 г. за разходите по § 1030 Текущ ремонт.xlsx 838 Изтегли документ с име "Отчет към второ тримесечие на 2023 г. за разходите по § 1030 Текущ ремонт.xlsx"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.06.2023 г..xls 852 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.06.2023 г..xls"
Отчет на разходите във връзка с мерки срещу COVID-19 към 30.06.2023 г..xls 574 Изтегли документ с име "Отчет на разходите във връзка с мерки срещу COVID-19 към 30.06.2023 г..xls"
Месечен отчет на капиталови разходи към 30.06.2023 г..xlsx 513 Изтегли документ с име "Месечен отчет на капиталови разходи към 30.06.2023 г..xlsx"
Одитен доклад на Сметна палата № 0100310522 за извършен фин.одит на консолидирания годишен фин.отчет на община Угърчин за 2021 г..pdf 423 Изтегли документ с име "Одитен доклад на Сметна палата № 0100310522 за извършен фин.одит на консолидирания годишен фин.отчет на община Угърчин за 2021 г..pdf"
Годишен отчет за изпълнението на бюджета за 2022 г..pdf 698 Изтегли документ с име "Годишен отчет за изпълнението на бюджета за 2022 г..pdf"
м,05,2023 отчет.rar 522 Изтегли документ с име "м,05,2023 отчет.rar"
Отчети м.04.2023.rar 556 Изтегли документ с име "Отчети м.04.2023.rar"
Отчет на разходите по ПМС 326 от 2021 г. към 31.03.2023 г..xls 745 Изтегли документ с име "Отчет на разходите по ПМС 326 от 2021 г. към 31.03.2023 г..xls"
Отчет към първо тримесечие на 2023 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 772 Изтегли документ с име "Отчет към първо тримесечие на 2023 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
Месечен отчет на капиталови разходи към 31.03.2023 г..xlsx 708 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.03.2023 г..xlsx"
Отчет на разходите във връзка с мерки срещу COVID-19 към 31.03.2023 г..xls 817 Изтегли документ с име "Отчет на разходите във връзка с мерки срещу COVID-19 към 31.03.2023 г..xls"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.03.2023 г..xls 555 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.03.2023 г..xls"
м 03,2023.rar 631 Изтегли документ с име "м 03,2023.rar"
м,02,23.rar 986 Изтегли документ с име "м,02,23.rar"
01,01,2023.rar 1005 Изтегли документ с име "01,01,2023.rar"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.12.2022 г..xls 1147 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.12.2022 г..xls"
Отчет на разходите по ПМС 326 от 2021 г. към 31.12.2022 г..xls 813 Изтегли документ с име "Отчет на разходите по ПМС 326 от 2021 г. към 31.12.2022 г..xls"
Отчет към четвърто тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 2060 Изтегли документ с име "Отчет към четвърто тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
Отчет на разходите във връзка с мерки срещу COVID-19 към 31.12.2022 г..xls 1224 Изтегли документ с име "Отчет на разходите във връзка с мерки срещу COVID-19 към 31.12.2022 г..xls"
м 12,2022.rar 1009 Изтегли документ с име "м 12,2022.rar"
Месечен отчет на капиталови разходи към 31.12.2022 г..xlsx 1261 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.12.2022 г..xlsx"
11.2022.rar 1139 Изтегли документ с име "11.2022.rar"
30.10.22.rar 987 Изтегли документ с име "30.10.22.rar"
Отчет на разходите по ПМС 326 от 2021 г. към 30.09.2022 г..xls 1176 Изтегли документ с име "Отчет на разходите по ПМС 326 от 2021 г. към 30.09.2022 г..xls"
Отчет на разходите във връзка с мерки срещу COVID-19 към 30.09.2022 г..xls 1264 Изтегли документ с име "Отчет на разходите във връзка с мерки срещу COVID-19 към 30.09.2022 г..xls"
Отчет към трето тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 1626 Изтегли документ с име "Отчет към трето тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.09.2022 г..xls 1370 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.09.2022 г..xls"
Месечен отчет на капиталови разходи към 30.09.2022 г..xlsx 1092 Изтегли документ с име "Месечен отчет на капиталови разходи към 30.09.2022 г..xlsx"
30,09.rar 981 Изтегли документ с име "30,09.rar"
м.08.2022.rar 1252 Изтегли документ с име "м.08.2022.rar"
ОДИТ И БАЛАНС 2020.rar 1319 Изтегли документ с име "ОДИТ И БАЛАНС 2020.rar"
Годишен отчет за изпълнението на бюджета за 2021 г..pdf 1537 Изтегли документ с име "Годишен отчет за изпълнението на бюджета за 2021 г..pdf"
07.2022.rar 1251 Изтегли документ с име "07.2022.rar"
Отчет на разходите по ПМС 326 от 2021 г. към 30.06.2022 г..xls 1472 Изтегли документ с име "Отчет на разходите по ПМС 326 от 2021 г. към 30.06.2022 г..xls"
м 06,2022.rar 1403 Изтегли документ с име "м 06,2022.rar"
Месечен отчет на капиталови разходи към 30.06.2022 г..xlsx 2108 Изтегли документ с име "Месечен отчет на капиталови разходи към 30.06.2022 г..xlsx"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.06.2022 г..xls 1564 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 30.06.2022 г..xls"
Отчет на разходите във връзка с мерки срещу COVID-19 към 30.06.2022 г..xls 2343 Изтегли документ с име "Отчет на разходите във връзка с мерки срещу COVID-19 към 30.06.2022 г..xls"
Отчет към второ тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 902 Изтегли документ с име "Отчет към второ тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
m.05.2022.rar 1726 Изтегли документ с име "m.05.2022.rar"
м. 04.2022 г.rar 1577 Изтегли документ с име "м. 04.2022 г.rar"
Отчет към първо тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 1204 Изтегли документ с име "Отчет към първо тримесечие на 2022 г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
Отчет на разходите по ПМС 326 от 2021 г. към 31.03.2022 г..xls 1409 Изтегли документ с име "Отчет на разходите по ПМС 326 от 2021 г. към 31.03.2022 г..xls"
Месечен отчет на капиталови разходи към 31.03.2022 г..xlsx 2351 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.03.2022 г..xlsx"
Отчет на разходите във връзка с мерки срещу COVID-19 към 31.03.2022 г..xls 1226 Изтегли документ с име "Отчет на разходите във връзка с мерки срещу COVID-19 към 31.03.2022 г..xls"
03,2022 год.rar 2489 Изтегли документ с име "03,2022 год.rar"
Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.03.2022 г..xls 2078 Изтегли документ с име "Отчет на разходите за хуманитарна помощ и справяне с последствията от войната в Украйна към 31.03.2022 г..xls"
m=02.2022 g.rar 998 Изтегли документ с име "m=02.2022 g.rar"
m.01.01.2022 g.rar 1767 Изтегли документ с име "m.01.01.2022 g.rar"
Отчет към четвърто тримесечие на 2021г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 2163 Изтегли документ с име "Отчет към четвърто тримесечие на 2021г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
Месечен отчет на капиталови разходи към 31.12.2021 г..xlsx 1793 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.12.2021 г..xlsx"
12 М.2021.rar 2194 Изтегли документ с име "12 М.2021.rar"
Месечен отчет на капиталови разходи към 30.11.2021 г..xlsx 1099 Изтегли документ с име "Месечен отчет на капиталови разходи към 30.11.2021 г..xlsx"
М.11.2021.rar 2032 Изтегли документ с име "М.11.2021.rar"
Месечен отчет на капиталови разходи към 31.10.2021 г..xlsx 1726 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.10.2021 г..xlsx"
30.10.2021.rar 1587 Изтегли документ с име "30.10.2021.rar"
Отчет към трето тримесечие на 2021г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 1966 Изтегли документ с име "Отчет към трето тримесечие на 2021г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
Месечен отчет на капиталови разходи към 30.09.2021 г..xlsx 2745 Изтегли документ с име "Месечен отчет на капиталови разходи към 30.09.2021 г..xlsx"
30.09.2021.rar 2795 Изтегли документ с име "30.09.2021.rar"
Годишен отчет за изпълнението на бюджета за 2020 г..pdf 2076 Изтегли документ с име "Годишен отчет за изпълнението на бюджета за 2020 г..pdf"
Месечен отчет на капиталови разходи към 31.08.2021 г..xlsx 3205 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.08.2021 г..xlsx"
31,08,2021.rar 2184 Изтегли документ с име "31,08,2021.rar"
Одитен доклад на сметната палата №0100306521.pdf 2701 Изтегли документ с име "Одитен доклад на сметната палата №0100306521.pdf"
Годишен Финанов отчет към 31.12.2020 г.rar 1843 Изтегли документ с име "Годишен Финанов отчет към 31.12.2020 г.rar"
Месечен отчет към 31.07.2021 г.rar 2597 Изтегли документ с име "Месечен отчет към 31.07.2021 г.rar"
Месечен отчет на капиталови разходи към 31.07.2021 г..xlsx 2359 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.07.2021 г..xlsx"
Месечен отчет на капиталови разходи към 30.06.2021 г..xlsx 2786 Изтегли документ с име "Месечен отчет на капиталови разходи към 30.06.2021 г..xlsx"
Отчет към второ тримесечие на 2021г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx 1599 Изтегли документ с име "Отчет към второ тримесечие на 2021г. за разходите по § 1030 ТЕКУЩ РЕМОНТ.xlsx"
06.2021.rar 1758 Изтегли документ с име "06.2021.rar"
05,2021 г.rar 2155 Изтегли документ с име "05,2021 г.rar"
Месечен отчет на капиталови разходи към 31.05.2021 г..xlsx 2425 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.05.2021 г..xlsx"
М,04,2021 Г.rar 2540 Изтегли документ с име "М,04,2021 Г.rar"
Месечен отчет на Капиталови разходи към 30.04.2021 г..xlsx 1919 Изтегли документ с име "Месечен отчет на Капиталови разходи към 30.04.2021 г..xlsx"
03,2021.rar 3326 Изтегли документ с име "03,2021.rar"
Месечен отчет на капиталови разходи към 31.03.2021 г..xlsx 2820 Изтегли документ с име "Месечен отчет на капиталови разходи към 31.03.2021 г..xlsx"
Отчет на разходите за текущи ремонти за I-во Тримесечие на 2021 г..xlsx 3995 Изтегли документ с име "Отчет на разходите за текущи ремонти за I-во Тримесечие на 2021 г..xlsx"
Начален План Капиталови разходи за 2021г. 6107 Угърчин.xlsx 3072 Изтегли документ с име "Начален План Капиталови разходи за 2021г. 6107 Угърчин.xlsx"
Отчет за Февруари 2021 Капиталови разходи 6107 Угърчин.xlsx 2077 Изтегли документ с име "Отчет за Февруари 2021 Капиталови разходи 6107 Угърчин.xlsx"
m.02.2021.rar 2106 Изтегли документ с име "m.02.2021.rar"
m 01.2021.rar 4580 Изтегли документ с име "m 01.2021.rar"
31.12.2020 m.rar 3933 Изтегли документ с име "31.12.2020 m.rar"
11.2020.rar 3933 Изтегли документ с име "11.2020.rar"
10.2020.rar 3642 Изтегли документ с име "10.2020.rar"