{"id":35574,"date":"2026-08-16T19:53:28","date_gmt":"2026-08-16T17:53:28","guid":{"rendered":"https:\/\/osmstatecnych.cz\/ties\/"},"modified":"2026-09-17T09:36:57","modified_gmt":"2026-09-17T07:36:57","slug":"relations","status":"publish","type":"page","link":"https:\/\/osmstatecnych.cz\/en\/relations\/","title":{"rendered":"RELATIONS"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"35574\" class=\"elementor elementor-35574 elementor-35539\" data-elementor-post-type=\"page\">\n\t\t\t\t<div data-ka-cursor-size=\"1\" class=\"elementor-element elementor-element-41f6315 e-flex e-con-boxed e-con e-parent\" data-id=\"41f6315\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;kng_cursor_interaction&quot;:&quot;default&quot;,&quot;kng_cursor_magnetic&quot;:&quot;none&quot;,&quot;kng_cursor_size_multiplier&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:1,&quot;sizes&quot;:[]}}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div data-ka-cursor-size=\"1\" class=\"elementor-element elementor-element-834ddf5 elementor-widget elementor-widget-text-editor\" data-id=\"834ddf5\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;kng_cursor_interaction&quot;:&quot;default&quot;,&quot;kng_cursor_magnetic&quot;:&quot;none&quot;,&quot;kng_cursor_size_multiplier&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:1,&quot;sizes&quot;:[]}}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\r\n    <style>\r\n\r\n        #osm-vazby-841693-wrap {\r\n            width: 100%;\r\n            position: relative;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-toolbar {\r\n\r\n            position: relative;\r\n            z-index: 10;\r\n\r\n            background: #ffffff;\r\n\r\n            padding:\r\n                10px 0 10px 0;\r\n\r\n            margin-bottom:\r\n                24px;\r\n\r\n            box-shadow:\r\n                0 6px 18px\r\n                rgba(0,0,0,.06);\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-controls {\r\n\r\n            display: flex;\r\n            flex-wrap: wrap;\r\n            align-items: stretch;\r\n\r\n            gap: 10px;\r\n        }\r\n\r\n\r\n        #osm-vazby-all-841693 {\r\n\r\n            appearance: none;\r\n\r\n            min-height: 48px;\r\n\r\n            border:\r\n                1px solid #1C4746;\r\n\r\n            background:\r\n                #1C4746;\r\n\r\n            color:\r\n                #ffffff;\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n\r\n            font-size:\r\n                14px;\r\n\r\n            font-weight:\r\n                400;\r\n\r\n            padding:\r\n                11px 18px;\r\n\r\n            cursor:\r\n                pointer;\r\n\r\n            transition:\r\n                background .2s ease,\r\n                border-color .2s ease;\r\n        }\r\n\r\n\r\n        #osm-vazby-all-841693:hover {\r\n\r\n            background:\r\n                #FF5C00;\r\n\r\n            border-color:\r\n                #FF5C00;\r\n        }\r\n\r\n\r\n\r\n\r\n        #osm-vazby-841693-legend {\r\n\r\n            display:\r\n                flex;\r\n\r\n            flex-wrap:\r\n                wrap;\r\n\r\n            align-items:\r\n                center;\r\n\r\n            gap:\r\n                4px 14px;\r\n\r\n            margin:\r\n                7px 0 0 0;\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend-title {\r\n\r\n            color:\r\n                #1C4746;\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n\r\n            font-size:\r\n                11.5px;\r\n\r\n            font-weight:\r\n                600;\r\n\r\n            line-height:\r\n                1.15;\r\n\r\n            text-transform:\r\n                uppercase;\r\n\r\n            letter-spacing:\r\n                .035em;\r\n\r\n            margin-right:\r\n                4px;\r\n\r\n            opacity:\r\n                1;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter {\r\n\r\n            appearance:\r\n                none;\r\n\r\n            display:\r\n                inline-flex;\r\n\r\n            align-items:\r\n                center;\r\n\r\n            gap:\r\n                7px;\r\n\r\n            padding:\r\n                4px 0 5px 0;\r\n\r\n            border:\r\n                0;\r\n\r\n            border-bottom:\r\n                1px solid transparent;\r\n\r\n            background:\r\n                transparent;\r\n\r\n            color:\r\n                #667171;\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n\r\n            font-size:\r\n                11.5px;\r\n\r\n            font-weight:\r\n                300;\r\n\r\n            line-height:\r\n                1.15;\r\n\r\n            text-transform:\r\n                uppercase;\r\n\r\n            cursor:\r\n                pointer;\r\n\r\n            opacity:\r\n                .82;\r\n\r\n            transition:\r\n                color .18s ease,\r\n                opacity .18s ease,\r\n                border-color .18s ease,\r\n                font-weight .18s ease;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter:hover,\r\n        #osm-vazby-841693-legend .osm-vazby-filter:focus-visible {\r\n\r\n            color:\r\n                #1C4746;\r\n\r\n            opacity:\r\n                1;\r\n\r\n            outline:\r\n                none;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter.is-active {\r\n\r\n            color:\r\n                #1C4746;\r\n\r\n            opacity:\r\n                1;\r\n\r\n            font-weight:\r\n                600;\r\n\r\n            border-bottom-color:\r\n                rgba(28,71,70,.55);\r\n        }\r\n\r\n\r\n        \/*\r\n         * MINIATURN\u00cd VZORKY VAZEB\r\n         * skute\u010dn\u00e1 linka + skute\u010dn\u00e9 troj\u00faheln\u00edkov\u00e9 konce\r\n         *\/\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample {\r\n\r\n            position:\r\n                relative;\r\n\r\n            display:\r\n                inline-block;\r\n\r\n            flex:\r\n                0 0 44px;\r\n\r\n            width:\r\n                44px;\r\n\r\n            height:\r\n                16px;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample .shaft {\r\n\r\n            position:\r\n                absolute;\r\n\r\n            left:\r\n                7px;\r\n\r\n            right:\r\n                7px;\r\n\r\n            top:\r\n                50%;\r\n\r\n            height:\r\n                1.5px;\r\n\r\n            transform:\r\n                translateY(-50%);\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample .arrow {\r\n\r\n            position:\r\n                absolute;\r\n\r\n            top:\r\n                50%;\r\n\r\n            width:\r\n                0;\r\n\r\n            height:\r\n                0;\r\n\r\n            transform:\r\n                translateY(-50%);\r\n\r\n            border-top:\r\n                4px solid transparent;\r\n\r\n            border-bottom:\r\n                4px solid transparent;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample .arrow.right {\r\n\r\n            right:\r\n                0;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample .arrow.left {\r\n\r\n            left:\r\n                0;\r\n        }\r\n\r\n\r\n        \/* \u010cLENSTV\u00cd *\/\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.membership .shaft {\r\n\r\n            background:\r\n                #A8B1B1;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.membership .arrow.right {\r\n\r\n            border-left:\r\n                7px solid #A8B1B1;\r\n        }\r\n\r\n\r\n        \/* SPOLUPR\u00c1CE *\/\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.cooperation .shaft {\r\n\r\n            background:\r\n                #6676CF;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.cooperation .arrow.right {\r\n\r\n            border-left:\r\n                7px solid #6676CF;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.cooperation .arrow.left {\r\n\r\n            border-right:\r\n                7px solid #6676CF;\r\n        }\r\n\r\n\r\n        \/* SOUVISLOST \u2013 FIALOV\u00c1, obousm\u011brn\u00e1 *\/\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.association .shaft {\r\n            background: #8A67B8;\r\n        }\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.association .arrow.left {\r\n            border-right: 7px solid #8A67B8;\r\n        }\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.association .arrow.right {\r\n            border-left: 7px solid #8A67B8;\r\n        }\r\n\r\n\r\n        \/*\r\n         * V\u0160ECHNY VAZBY:\r\n         * dva drobn\u00e9 \u0159\u00e1dky nad sebou.\r\n         *\/\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.all {\r\n\r\n            height:\r\n                20px;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.all .all-line {\r\n\r\n            position:\r\n                absolute;\r\n\r\n            left:\r\n                7px;\r\n\r\n            right:\r\n                7px;\r\n\r\n            height:\r\n                1.5px;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.all .all-line.membership {\r\n\r\n            top:\r\n                6px;\r\n\r\n            background:\r\n                #A8B1B1;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.all .all-line.cooperation {\r\n\r\n            bottom:\r\n                5px;\r\n\r\n            background:\r\n                #6676CF;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.all .mini-arrow {\r\n\r\n            position:\r\n                absolute;\r\n\r\n            width:\r\n                0;\r\n\r\n            height:\r\n                0;\r\n\r\n            border-top:\r\n                3px solid transparent;\r\n\r\n            border-bottom:\r\n                3px solid transparent;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.all .membership-right {\r\n\r\n            top:\r\n                3px;\r\n\r\n            right:\r\n                0;\r\n\r\n            border-left:\r\n                6px solid #A8B1B1;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.all .cooperation-left {\r\n\r\n            bottom:\r\n                2px;\r\n\r\n            left:\r\n                0;\r\n\r\n            border-right:\r\n                6px solid #6676CF;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample.all .cooperation-right {\r\n\r\n            bottom:\r\n                2px;\r\n\r\n            right:\r\n                0;\r\n\r\n            border-left:\r\n                6px solid #6676CF;\r\n        }\r\n\r\n\r\n        @media (max-width: 767px) {\r\n\r\n            #osm-vazby-841693-legend {\r\n\r\n                gap:\r\n                    4px 12px;\r\n            }\r\n\r\n            #osm-vazby-841693-legend-title,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title {\r\n\r\n                flex-basis:\r\n                    100%;\r\n\r\n                margin-right:\r\n                    0;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n\r\n                gap:\r\n                    7px;\r\n\r\n                font-size:\r\n                    11px;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter-sample,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-sample {\r\n\r\n                flex-basis:\r\n                    38px;\r\n\r\n                width:\r\n                    38px;\r\n            }\r\n        }\r\n\r\n\r\n        \/*\r\n         * =====================================================\r\n         * OSOBNOSTI \u2013 TLA\u010c\u00cdTKO A DRUH\u00c1 \u0158ADA FILTRU\r\n         * =====================================================\r\n         *\/\r\n        #osm-vazby-people-841693 {\r\n\r\n            appearance: none;\r\n            display: none;\r\n            align-items: center;\r\n            justify-content: center;\r\n\r\n            min-height: 48px;\r\n\r\n            border:\r\n                1px solid #FF5C00;\r\n\r\n            background:\r\n                #FF5C00;\r\n\r\n            color:\r\n                #ffffff;\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n\r\n            font-size:\r\n                14px;\r\n\r\n            font-weight:\r\n                500;\r\n\r\n            letter-spacing:\r\n                .01em;\r\n\r\n            padding:\r\n                11px 18px;\r\n\r\n            cursor:\r\n                pointer;\r\n\r\n            transition:\r\n                background .2s ease,\r\n                color .2s ease,\r\n                border-color .2s ease,\r\n                box-shadow .2s ease;\r\n        }\r\n\r\n\r\n        #osm-vazby-people-841693.is-visible {\r\n            display: inline-flex;\r\n        }\r\n\r\n\r\n        #osm-vazby-people-841693:hover,\r\n        #osm-vazby-people-841693:focus-visible {\r\n\r\n            background:\r\n                #1C4746;\r\n\r\n            border-color:\r\n                #1C4746;\r\n\r\n            outline:\r\n                none;\r\n        }\r\n\r\n\r\n        #osm-vazby-people-841693.is-active {\r\n\r\n            background:\r\n                #ffffff;\r\n\r\n            color:\r\n                #FF5C00;\r\n\r\n            border-color:\r\n                #FF5C00;\r\n\r\n            box-shadow:\r\n                inset 0 0 0 1px rgba(255,92,0,.10);\r\n        }\r\n\r\n\r\n        #osm-vazby-people-841693.is-active:hover,\r\n        #osm-vazby-people-841693.is-active:focus-visible {\r\n\r\n            background:\r\n                #fff7f2;\r\n\r\n            color:\r\n                #FF5C00;\r\n\r\n            border-color:\r\n                #FF5C00;\r\n        }\r\n\r\n\r\n        #osm-vazby-people-legend-841693 {\r\n\r\n            display:\r\n                none;\r\n\r\n            flex-wrap:\r\n                wrap;\r\n\r\n            align-items:\r\n                center;\r\n\r\n            gap:\r\n                4px 14px;\r\n\r\n            margin:\r\n                3px 0 0 0;\r\n\r\n            padding-top:\r\n                5px;\r\n\r\n            border-top:\r\n                1px solid rgba(28,71,70,.10);\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n        }\r\n\r\n\r\n        #osm-vazby-people-legend-841693.is-visible {\r\n            display: flex;\r\n        }\r\n\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title {\r\n\r\n            color:\r\n                #1C4746;\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n\r\n            font-size:\r\n                11.5px;\r\n\r\n            font-weight:\r\n                600;\r\n\r\n            line-height:\r\n                1.15;\r\n\r\n            text-transform:\r\n                uppercase;\r\n\r\n            letter-spacing:\r\n                .035em;\r\n\r\n            margin-right:\r\n                4px;\r\n\r\n            opacity:\r\n                1;\r\n        }\r\n\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n\r\n            appearance:\r\n                none;\r\n\r\n            display:\r\n                inline-flex;\r\n\r\n            align-items:\r\n                center;\r\n\r\n            gap:\r\n                7px;\r\n\r\n            padding:\r\n                4px 0 5px 0;\r\n\r\n            border:\r\n                0;\r\n\r\n            border-bottom:\r\n                1px solid transparent;\r\n\r\n            background:\r\n                transparent;\r\n\r\n            color:\r\n                #667171;\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n\r\n            font-size:\r\n                11.5px;\r\n\r\n            font-weight:\r\n                300;\r\n\r\n            line-height:\r\n                1.15;\r\n\r\n            text-transform:\r\n                uppercase;\r\n\r\n            cursor:\r\n                pointer;\r\n\r\n            opacity:\r\n                .82;\r\n\r\n            transition:\r\n                color .18s ease,\r\n                opacity .18s ease,\r\n                border-color .18s ease,\r\n                font-weight .18s ease;\r\n        }\r\n\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter:hover,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter:focus-visible {\r\n\r\n            color:\r\n                #1C4746;\r\n\r\n            opacity:\r\n                1;\r\n\r\n            outline:\r\n                none;\r\n        }\r\n\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter.is-active {\r\n\r\n            color:\r\n                #1C4746;\r\n\r\n            opacity:\r\n                1;\r\n\r\n            font-weight:\r\n                600;\r\n\r\n            border-bottom-color:\r\n                rgba(28,71,70,.55);\r\n        }\r\n\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample {\r\n\r\n            position:\r\n                relative;\r\n\r\n            display:\r\n                inline-block;\r\n\r\n            flex:\r\n                0 0 44px;\r\n\r\n            width:\r\n                44px;\r\n\r\n            height:\r\n                16px;\r\n        }\r\n\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample .shaft {\r\n\r\n            position:\r\n                absolute;\r\n\r\n            left:\r\n                7px;\r\n\r\n            right:\r\n                7px;\r\n\r\n            top:\r\n                50%;\r\n\r\n            height:\r\n                1.5px;\r\n\r\n            transform:\r\n                translateY(-50%);\r\n        }\r\n\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample .arrow {\r\n\r\n            position:\r\n                absolute;\r\n\r\n            top:\r\n                50%;\r\n\r\n            width:\r\n                0;\r\n\r\n            height:\r\n                0;\r\n\r\n            transform:\r\n                translateY(-50%);\r\n\r\n            border-top:\r\n                4px solid transparent;\r\n\r\n            border-bottom:\r\n                4px solid transparent;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample .arrow.right {\r\n            right: 0;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample .arrow.left {\r\n            left: 0;\r\n        }\r\n\r\n\r\n        \/* VEDEN\u00cd \u2013 ORAN\u017dOV\u00c1, iniciativa -> osobnost *\/\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample.leadership .shaft {\r\n            background: #FF5C00;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample.leadership .arrow.left {\r\n            border-right: 7px solid #FF5C00;\r\n        }\r\n\r\n\r\n        \/* \u010cLENSTV\u00cd \u2013 TYRKYSOV\u00c1, osobnost -> iniciativa *\/\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample.person-membership .shaft {\r\n            background: #55B2BE;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample.person-membership .arrow.right {\r\n            border-left: 7px solid #55B2BE;\r\n        }\r\n\r\n\r\n        \/* SOUVISLOST \u2013 FIALOV\u00c1, obousm\u011brn\u00e1 *\/\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample.person-association .shaft {\r\n            background: #8A67B8;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample.person-association .arrow.left {\r\n            border-right: 7px solid #8A67B8;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample.person-association .arrow.right {\r\n            border-left: 7px solid #8A67B8;\r\n        }\r\n\r\n\r\n        #osm-vazby-select-841693 {\r\n\r\n            flex:\r\n                1 1 360px;\r\n\r\n            min-width:\r\n                280px;\r\n\r\n            height:\r\n                48px;\r\n\r\n            min-height:\r\n                48px;\r\n\r\n            padding:\r\n                0 42px 0 15px;\r\n\r\n            border:\r\n                1px solid #1C4746;\r\n\r\n            background-color:\r\n                #ffffff;\r\n\r\n            color:\r\n                #1C4746;\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n\r\n            font-size:\r\n                14px;\r\n\r\n            font-weight:\r\n                300;\r\n\r\n            line-height:\r\n                normal;\r\n\r\n            cursor:\r\n                pointer;\r\n\r\n            box-sizing:\r\n                border-box;\r\n        }\r\n\r\n\r\n        \/*\r\n         * VELK\u00c1 PLOCHA GRAFU\r\n         *\/\r\n        #osm-vazby-stage-841693 {\r\n\r\n            position: relative;\r\n\r\n            width: 100%;\r\n\r\n            height:\r\n                90vh;\r\n\r\n            min-height:\r\n                860px;\r\n\r\n            overflow:\r\n                hidden;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693 {\r\n\r\n            position: absolute;\r\n\r\n            inset: 0;\r\n\r\n            width: 100%;\r\n            height: 100%;\r\n        }\r\n\r\n\r\n        \/* DETAIL \u2013 jednoduch\u00e9 ru\u010dn\u00ed p\u0159ibl\u00ed\u017een\u00ed. *\/\r\n        #osm-vazby-841693-zoom {\r\n            position: absolute;\r\n            top: 12px;\r\n            right: 12px;\r\n            z-index: 30;\r\n            display: none;\r\n            align-items: stretch;\r\n            background: rgba(255,255,255,.94);\r\n            border: 1px solid rgba(28,71,70,.20);\r\n            box-shadow: 0 3px 12px rgba(0,0,0,.07);\r\n        }\r\n\r\n        #osm-vazby-841693-zoom.is-visible {\r\n            display: flex;\r\n        }\r\n\r\n        #osm-vazby-841693-zoom button {\r\n            min-width: 34px;\r\n            height: 32px;\r\n            margin: 0;\r\n            padding: 0 9px;\r\n            border: 0;\r\n            border-right: 1px solid rgba(28,71,70,.14);\r\n            border-radius: 0;\r\n            background: transparent;\r\n            color: #1C4746;\r\n            font-family: \"Open Sans\", sans-serif;\r\n            font-size: 13px;\r\n            font-weight: 500;\r\n            line-height: 1;\r\n            cursor: pointer;\r\n        }\r\n\r\n        #osm-vazby-841693-zoom button:last-child {\r\n            border-right: 0;\r\n        }\r\n\r\n        #osm-vazby-841693-zoom button:hover,\r\n        #osm-vazby-841693-zoom button:focus-visible {\r\n            background: rgba(28,71,70,.06);\r\n            color: #FF5C00;\r\n            outline: none;\r\n        }\r\n\r\n\r\n        \/*\r\n         * CENTR\u00c1LN\u00cd N\u00c1ZEV\r\n         *\/\r\n        #osm-vazby-labels-841693 {\r\n\r\n            position: absolute;\r\n\r\n            inset: 0;\r\n\r\n            pointer-events:\r\n                none;\r\n\r\n            z-index:\r\n                5;\r\n        }\r\n\r\n\r\n        #osm-vazby-labels-841693 a {\r\n\r\n            position:\r\n                absolute;\r\n\r\n            transform:\r\n                translateX(-50%);\r\n\r\n            display:\r\n                block;\r\n\r\n            width:\r\n                max-content;\r\n\r\n            max-width:\r\n                none;\r\n\r\n            box-sizing:\r\n                border-box;\r\n\r\n            padding:\r\n                6px 12px;\r\n\r\n            background:\r\n                #ffffff;\r\n\r\n            border:\r\n                1px solid #FF5C00;\r\n\r\n            white-space:\r\n                nowrap;\r\n\r\n            text-align:\r\n                center;\r\n\r\n            text-decoration:\r\n                none !important;\r\n\r\n            color:\r\n                #FF5C00;\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n\r\n            font-size:\r\n                15px;\r\n\r\n            font-weight:\r\n                300;\r\n\r\n            line-height:\r\n                1.25;\r\n\r\n            text-transform:\r\n                uppercase;\r\n\r\n            pointer-events:\r\n                auto;\r\n\r\n            cursor:\r\n                pointer;\r\n\r\n            transition:\r\n                font-weight .15s ease;\r\n        }\r\n\r\n\r\n        #osm-vazby-labels-841693 a:hover,\r\n        #osm-vazby-labels-841693 a:focus {\r\n\r\n            color:\r\n                #FF5C00 !important;\r\n\r\n            font-weight:\r\n                600;\r\n\r\n            text-decoration:\r\n                none !important;\r\n        }\r\n\r\n\r\n        \/*\r\n         * CENTR\u00c1LN\u00cd OSOBNOST\r\n         * z\u016fst\u00e1v\u00e1 kulat\u00e1 a dr\u017e\u00ed oran\u017eov\u00fd krou\u017eek.\r\n         *\/\r\n        #osm-vazby-labels-841693 a.osm-person-center-label {\r\n\r\n            color:\r\n                #1C4746;\r\n\r\n            border-color:\r\n                #1C4746;\r\n        }\r\n\r\n\r\n        #osm-vazby-labels-841693 a.osm-person-center-label:hover,\r\n        #osm-vazby-labels-841693 a.osm-person-center-label:focus {\r\n\r\n            color:\r\n                #1C4746 !important;\r\n\r\n            border-color:\r\n                #1C4746;\r\n        }\r\n\r\n\r\n        \/*\r\n         * TOOLTIP OSTATN\u00cdCH UZL\u016e\r\n         *\/\r\n        #osm-vazby-tooltip-841693 {\r\n\r\n            position:\r\n                absolute;\r\n\r\n            z-index:\r\n                20;\r\n\r\n            display:\r\n                none;\r\n\r\n            max-width:\r\n                180px;\r\n\r\n            padding:\r\n                7px 10px;\r\n\r\n            box-sizing:\r\n                border-box;\r\n\r\n            white-space:\r\n                normal;\r\n\r\n            overflow-wrap:\r\n                break-word;\r\n\r\n            background:\r\n                #ffffff;\r\n\r\n            border:\r\n                1px solid #FF5C00;\r\n\r\n            box-shadow:\r\n                0 4px 12px\r\n                rgba(0,0,0,.10);\r\n\r\n            color:\r\n                #FF5C00;\r\n\r\n            font-family:\r\n                \"Open Sans\", sans-serif;\r\n\r\n            font-size:\r\n                13px;\r\n\r\n            font-weight:\r\n                600;\r\n\r\n            line-height:\r\n                1.25;\r\n\r\n            text-align:\r\n                center;\r\n\r\n            text-transform:\r\n                uppercase;\r\n\r\n            pointer-events:\r\n                none;\r\n        }\r\n\r\n\r\n        @media (max-width: 767px) {\r\n\r\n            #osm-vazby-select-841693 {\r\n\r\n                width:\r\n                    100%;\r\n\r\n                min-width:\r\n                    0;\r\n\r\n                flex:\r\n                    1 1 100%;\r\n            }\r\n\r\n\r\n            #osm-vazby-stage-841693 {\r\n\r\n                height:\r\n                    80vh;\r\n\r\n                min-height:\r\n                    650px;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-toolbar {\r\n\r\n                margin-bottom:\r\n                    18px;\r\n            }\r\n        }\r\n\r\n\r\n        \/*\r\n         * =====================================================\r\n         * UX v2.4 \u2013 DESKTOP: DVA \u0158\u00c1DKY + STICKY LI\u0160TA\r\n         * =====================================================\r\n         * 1. \u0159\u00e1dek = CEL\u00c1 S\u00cd\u0164 | v\u00fdb\u011br iniciativy | osoby\r\n         * 2. \u0159\u00e1dek = INICIATIVY + OSOBNOSTI vedle sebe\r\n         *\r\n         * Na graf, data ani logiku vazeb se zde nesah\u00e1.\r\n         *\/\r\n\r\n        @media (min-width: 1100px) {\r\n\r\n            #osm-vazby-841693-toolbar {\r\n\r\n                position: sticky;\r\n                top: 52px; \/* JS n\u00ed\u017ee hodnotu dolad\u00ed podle skute\u010dn\u00e9 hlavi\u010dky *\/\r\n                z-index: 80;\r\n\r\n                display: grid;\r\n                grid-template-columns: max-content minmax(0, 1fr);\r\n                grid-template-rows: auto auto;\r\n                column-gap: 24px;\r\n                row-gap: 0;\r\n\r\n                padding-top: 10px;\r\n                padding-bottom: 8px;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-controls {\r\n\r\n                grid-column: 1 \/ -1;\r\n                grid-row: 1;\r\n\r\n                flex-wrap: nowrap;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend {\r\n\r\n                grid-column: 1;\r\n                grid-row: 2;\r\n\r\n                flex-wrap: nowrap;\r\n\r\n                gap: 4px 12px;\r\n                margin: 6px 0 0 0;\r\n\r\n                white-space: nowrap;\r\n            }\r\n\r\n\r\n            #osm-vazby-people-legend-841693 {\r\n\r\n                grid-column: 2;\r\n                grid-row: 2;\r\n\r\n                flex-wrap: nowrap;\r\n\r\n                gap: 4px 12px;\r\n                margin: 6px 0 0 0;\r\n                padding: 0 0 0 24px;\r\n\r\n                border-top: 0;\r\n                border-left: 1px solid rgba(28,71,70,.12);\r\n\r\n                min-width: 0;\r\n                white-space: nowrap;\r\n            }\r\n\r\n\r\n            #osm-vazby-people-legend-841693.is-visible {\r\n                display: flex;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n\r\n                flex: 0 0 auto;\r\n            }\r\n        }\r\n\r\n\r\n        \/*\r\n         * Na men\u0161\u00edm desktopu \/ tabletu nech\u00e1me legendy rad\u011bji pod sebou,\r\n         * aby se ovl\u00e1d\u00e1n\u00ed nema\u010dkalo. Sticky z\u016fst\u00e1v\u00e1 a\u017e od b\u011b\u017en\u00e9ho desktopu.\r\n         *\/\r\n        @media (min-width: 768px) and (max-width: 1099px) {\r\n\r\n            #osm-vazby-841693-toolbar {\r\n                position: relative;\r\n                top: auto !important;\r\n            }\r\n        }\r\n\r\n\r\n        \/*\r\n         * =====================================================\r\n         * UX v2.5 \u2013 SPODN\u00cd LI\u0160TA JAKO DVA PLN\u00c9 OVL\u00c1DAC\u00cd PANELY\r\n         * =====================================================\r\n         * Pouze kosmetika. HTML, data, Cytoscape ani JS logika\r\n         * z\u016fst\u00e1vaj\u00ed beze zm\u011bny.\r\n         *\/\r\n\r\n        \/* P\u0159ep\u00edna\u010d osobnost\u00ed z\u016fst\u00e1v\u00e1 v\u00fdrazn\u011b oran\u017eov\u00fd i ve stavu SKR\u00ddT. *\/\r\n        #osm-vazby-people-841693,\r\n        #osm-vazby-people-841693.is-active {\r\n\r\n            background:\r\n                #FF5C00;\r\n\r\n            color:\r\n                #ffffff;\r\n\r\n            border-color:\r\n                #FF5C00;\r\n\r\n            box-shadow:\r\n                none;\r\n        }\r\n\r\n        #osm-vazby-people-841693:hover,\r\n        #osm-vazby-people-841693:focus-visible,\r\n        #osm-vazby-people-841693.is-active:hover,\r\n        #osm-vazby-people-841693.is-active:focus-visible {\r\n\r\n            background:\r\n                #1C4746;\r\n\r\n            color:\r\n                #ffffff;\r\n\r\n            border-color:\r\n                #1C4746;\r\n        }\r\n\r\n\r\n        @media (min-width: 1100px) {\r\n\r\n            \/*\r\n             * Cel\u00fd druh\u00fd \u0159\u00e1dek vyu\u017eije celou \u0161\u00ed\u0159ku toolbaru.\r\n             * Osobnosti maj\u00ed o n\u011bco v\u00edce m\u00edsta, proto\u017ee maj\u00ed \u010dty\u0159i volby.\r\n             *\/\r\n            #osm-vazby-841693-toolbar {\r\n\r\n                grid-template-columns:\r\n                    minmax(0, 1fr)\r\n                    minmax(0, 1fr);\r\n\r\n                column-gap:\r\n                    12px;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend,\r\n            #osm-vazby-people-legend-841693 {\r\n\r\n                width:\r\n                    100%;\r\n\r\n                box-sizing:\r\n                    border-box;\r\n\r\n                min-width:\r\n                    0;\r\n\r\n                margin:\r\n                    6px 0 0 0;\r\n\r\n                padding:\r\n                    6px 8px;\r\n\r\n                justify-content:\r\n                    space-between;\r\n\r\n                gap:\r\n                    4px 6px;\r\n\r\n                border:\r\n                    1px solid rgba(28,71,70,.14);\r\n\r\n                border-radius:\r\n                    2px;\r\n            }\r\n\r\n\r\n            \/* INICIATIVY \u2013 lehce zelenomodr\u00fd panel. *\/\r\n            #osm-vazby-841693-legend {\r\n\r\n                background:\r\n                    rgba(28,71,70,.035);\r\n            }\r\n\r\n\r\n            \/* OSOBNOSTI \u2013 lehce tepl\u00fd panel, navazuje na oran\u017eov\u00e9 portr\u00e9ty. *\/\r\n            #osm-vazby-people-legend-841693 {\r\n\r\n                padding-left:\r\n                    8px;\r\n\r\n                border-left:\r\n                    1px solid rgba(255,92,0,.22);\r\n\r\n                border-color:\r\n                    rgba(255,92,0,.20);\r\n\r\n                background:\r\n                    rgba(255,92,0,.035);\r\n            }\r\n\r\n\r\n            \/* Nadpisy obou skupin jako jasn\u00e9 orienta\u010dn\u00ed \u0161t\u00edtky. *\/\r\n            #osm-vazby-841693-legend-title,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title {\r\n\r\n                flex:\r\n                    0 0 auto;\r\n\r\n                margin:\r\n                    0 2px 0 0;\r\n\r\n                padding:\r\n                    5px 8px;\r\n\r\n                color:\r\n                    #ffffff;\r\n\r\n                line-height:\r\n                    1;\r\n\r\n                border-radius:\r\n                    2px;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend-title {\r\n\r\n                background:\r\n                    #1C4746;\r\n            }\r\n\r\n\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title {\r\n\r\n                background:\r\n                    #FF5C00;\r\n            }\r\n\r\n\r\n            \/*\r\n             * Jednotliv\u00e9 filtry jsou skute\u010dn\u00e1 klikac\u00ed ovl\u00e1dac\u00ed tla\u010d\u00edtka,\r\n             * ne jen text legendy.\r\n             *\/\r\n            #osm-vazby-841693-legend .osm-vazby-filter,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n\r\n                flex:\r\n                    0 1 auto;\r\n\r\n                min-width:\r\n                    0;\r\n\r\n                padding:\r\n                    5px 7px;\r\n\r\n                border:\r\n                    1px solid rgba(28,71,70,.11);\r\n\r\n                border-radius:\r\n                    2px;\r\n\r\n                background:\r\n                    rgba(255,255,255,.78);\r\n\r\n                opacity:\r\n                    .88;\r\n\r\n                transition:\r\n                    background .18s ease,\r\n                    border-color .18s ease,\r\n                    color .18s ease,\r\n                    opacity .18s ease,\r\n                    box-shadow .18s ease;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter:hover,\r\n            #osm-vazby-841693-legend .osm-vazby-filter:focus-visible,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter:hover,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter:focus-visible {\r\n\r\n                background:\r\n                    #ffffff;\r\n\r\n                border-color:\r\n                    rgba(28,71,70,.30);\r\n\r\n                opacity:\r\n                    1;\r\n\r\n                box-shadow:\r\n                    0 2px 7px rgba(0,0,0,.045);\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter.is-active {\r\n\r\n                background:\r\n                    rgba(28,71,70,.09);\r\n\r\n                border-color:\r\n                    rgba(28,71,70,.34);\r\n\r\n                border-bottom-color:\r\n                    rgba(28,71,70,.34);\r\n\r\n                box-shadow:\r\n                    inset 0 -2px 0 rgba(28,71,70,.28);\r\n            }\r\n\r\n\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter.is-active {\r\n\r\n                background:\r\n                    rgba(255,92,0,.075);\r\n\r\n                border-color:\r\n                    rgba(255,92,0,.28);\r\n\r\n                border-bottom-color:\r\n                    rgba(255,92,0,.28);\r\n\r\n                box-shadow:\r\n                    inset 0 -2px 0 rgba(255,92,0,.25);\r\n            }\r\n        }\r\n\r\n\r\n\r\n\r\n\r\n        \/*\r\n         * =====================================================\r\n         * UX v2.7 \u2013 ODOLNOST PRO DEL\u0160\u00cd EN \/ RU TEXTY\r\n         * =====================================================\r\n         * Jen CSS. Rozm\u011bry grafu, data ani JS se nem\u011bn\u00ed.\r\n         * C\u00edl: stejn\u00e1 geometrie li\u0161ty i v jazyc\u00edch, kde jsou\r\n         * popisky del\u0161\u00ed ne\u017e v \u010de\u0161tin\u011b.\r\n         *\/\r\n\r\n        @media (min-width: 1100px) {\r\n\r\n            \/* Horn\u00ed \u0159\u00e1dek: krajn\u00ed tla\u010d\u00edtka maj\u00ed svou p\u0159irozenou \u0161\u00ed\u0159ku,\r\n               select pru\u017en\u011b vypln\u00ed v\u0161e mezi nimi. *\/\r\n            #osm-vazby-841693-controls {\r\n\r\n                display:\r\n                    grid;\r\n\r\n                grid-template-columns:\r\n                    max-content minmax(240px, 1fr) max-content;\r\n\r\n                align-items:\r\n                    stretch;\r\n\r\n                gap:\r\n                    10px;\r\n            }\r\n\r\n\r\n            #osm-vazby-all-841693,\r\n            #osm-vazby-people-841693 {\r\n\r\n                white-space:\r\n                    nowrap;\r\n            }\r\n\r\n\r\n            #osm-vazby-select-841693 {\r\n\r\n                width:\r\n                    100%;\r\n\r\n                min-width:\r\n                    0;\r\n            }\r\n\r\n\r\n            \/* Spodn\u00ed panely u\u017e nejsou z\u00e1visl\u00e9 na d\u00e9lce slov.\r\n               Ka\u017ed\u00e1 volba dostane sv\u016fj d\u00edl panelu. *\/\r\n            #osm-vazby-841693-legend {\r\n\r\n                display:\r\n                    grid;\r\n\r\n                grid-template-columns:\r\n                    max-content repeat(3, minmax(0, 1fr));\r\n\r\n                align-items:\r\n                    stretch;\r\n\r\n                white-space:\r\n                    normal;\r\n            }\r\n\r\n\r\n            #osm-vazby-people-legend-841693.is-visible {\r\n\r\n                display:\r\n                    grid;\r\n\r\n                grid-template-columns:\r\n                    max-content repeat(4, minmax(0, 1fr));\r\n\r\n                align-items:\r\n                    stretch;\r\n\r\n                white-space:\r\n                    normal;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n\r\n                width:\r\n                    100%;\r\n\r\n                min-width:\r\n                    0;\r\n\r\n                justify-content:\r\n                    center;\r\n\r\n                text-align:\r\n                    center;\r\n\r\n                white-space:\r\n                    normal;\r\n\r\n                line-height:\r\n                    1.12;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter > span:last-child,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter > span:last-child {\r\n\r\n                min-width:\r\n                    0;\r\n\r\n                white-space:\r\n                    normal;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend-title,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title {\r\n\r\n                align-self:\r\n                    center;\r\n\r\n                white-space:\r\n                    nowrap;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter-sample,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-sample {\r\n\r\n                flex:\r\n                    0 0 38px;\r\n\r\n                width:\r\n                    38px;\r\n            }\r\n        }\r\n\r\n\r\n        \/* Na u\u017e\u0161\u00edm desktopu zmen\u0161\u00edme pouze ovl\u00e1dac\u00ed prvky \u2013\r\n           panely se nerozpadnou do jin\u00fdch proporc\u00ed. *\/\r\n        @media (min-width: 1100px) and (max-width: 1279px) {\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n\r\n                gap:\r\n                    5px;\r\n\r\n                padding:\r\n                    5px 4px;\r\n\r\n                font-size:\r\n                    10.5px;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter-sample,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-sample {\r\n\r\n                flex-basis:\r\n                    32px;\r\n\r\n                width:\r\n                    32px;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend-title,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title {\r\n\r\n                font-size:\r\n                    10.5px;\r\n\r\n                padding:\r\n                    5px 6px;\r\n            }\r\n        }\r\n        \/*\r\n         * =====================================================\r\n         * UX v2.8 \u2013 RU\u0160TINA: DVOU\u0158\u00c1DKOV\u00c9 POPISKY V LEGEND\u011a\r\n         * =====================================================\r\n         * Cyrilice je p\u0159i stejn\u00e9 velikosti opticky \u0161ir\u0161\u00ed ne\u017e latinka.\r\n         * V rusk\u00e9 mutaci proto dovol\u00edme popisk\u016fm dla\u017edic p\u0159irozen\u011b\r\n         * zabrat dva \u0159\u00e1dky a trochu uvoln\u00edme m\u00edsto zmen\u0161en\u00edm vzorku \u0161ipky.\r\n         * Ostatn\u00ed jazyky z\u016fst\u00e1vaj\u00ed beze zm\u011bny.\r\n         *\/\r\n\r\n        \r\n\r\n\r\n        \/*\r\n         * =====================================================\r\n         * UX v2.9 \u2013 PRU\u017dN\u00c9 DLA\u017dDICE PODLE OBSAHU\r\n         * =====================================================\r\n         * Panely d\u00e1l vyu\u017e\u00edvaj\u00ed celou \u0161\u00ed\u0159ku, ale jednotliv\u00e9 volby\r\n         * u\u017e nejsou n\u00e1siln\u011b rozd\u011blen\u00e9 na stejn\u011b \u0161irok\u00e9 sloupce.\r\n         * CZ\/EN dr\u017e\u00edme v jednom \u0159\u00e1dku; RU se zalom\u00ed jen tam,\r\n         * kde je to opravdu pot\u0159eba.\r\n         *\/\r\n\r\n        @media (min-width: 1100px) {\r\n\r\n            #osm-vazby-841693-legend,\r\n            #osm-vazby-people-legend-841693.is-visible {\r\n\r\n                display:\r\n                    flex;\r\n\r\n                align-items:\r\n                    stretch;\r\n\r\n                justify-content:\r\n                    stretch;\r\n\r\n                white-space:\r\n                    nowrap;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend-title,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title {\r\n\r\n                flex:\r\n                    0 0 auto;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n\r\n                flex:\r\n                    1 1 auto;\r\n\r\n                width:\r\n                    auto;\r\n\r\n                min-width:\r\n                    0;\r\n\r\n                justify-content:\r\n                    center;\r\n\r\n                white-space:\r\n                    nowrap;\r\n            }\r\n\r\n\r\n            #osm-vazby-841693-legend .osm-vazby-filter > span:last-child,\r\n            #osm-vazby-people-legend-841693 .osm-vazby-person-filter > span:last-child {\r\n\r\n                white-space:\r\n                    nowrap;\r\n            }\r\n        }\r\n\r\n\r\n        \r\n\r\n        \/*\r\n         * DETAIL OSOBNOSTI:\r\n         * iniciativa-filtr tu nem\u00e1 co filtrovat, proto se schov\u00e1\r\n         * a osobnostn\u00ed legenda vyu\u017eije cel\u00fd spodn\u00ed \u0159\u00e1dek.\r\n         *\/\r\n        #osm-vazby-841693-toolbar.is-person-center\r\n        #osm-vazby-841693-legend {\r\n\r\n            display:\r\n                none;\r\n        }\r\n\r\n\r\n        #osm-vazby-841693-toolbar.is-person-center\r\n        #osm-vazby-people-legend-841693 {\r\n\r\n            width:\r\n                100%;\r\n        }\r\n\r\n\r\n        @media (min-width: 1100px) {\r\n\r\n            #osm-vazby-841693-toolbar.is-person-center\r\n            #osm-vazby-people-legend-841693 {\r\n\r\n                grid-column:\r\n                    1 \/ -1;\r\n            }\r\n        }\r\n\/* V\u0160ECHNY TYPY \u2013 bez st\u00ednu, ale s jemn\u00fdm hoverem *\/\r\n#osm-vazby-841693-legend\r\n.osm-vazby-filter[data-relation-filter=\"all\"],\r\n#osm-vazby-people-legend-841693.osm-vazby-person-filter[data-person-filter=\"all\"] {\r\n    box-shadow: none !important;\r\n    -webkit-box-shadow: none !important;\r\n}\r\n\r\n\/* zelen\u00e9 V\u0160ECHNY TYPY *\/\r\n#osm-vazby-841693-legend\r\n.osm-vazby-filter[data-relation-filter=\"all\"]:hover,\r\n#osm-vazby-841693-legend\r\n.osm-vazby-filter[data-relation-filter=\"all\"]:focus-visible {\r\n    background: rgba(28,71,70,.14) !important;\r\n    border-color: rgba(28,71,70,.48) !important;\r\n    box-shadow: none !important;\r\n}\r\n\r\n\/* oran\u017eov\u00e9 V\u0160ECHNY TYPY \u2013 jen kdy\u017e je panel osobnost\u00ed zobrazen *\/\r\nbutton.osm-vazby-person-filter[data-person-filter=\"all\"].is-active {\r\n    background: rgba(255,92,0,.075) !important;\r\n    border: 1px solid rgba(255,92,0,.28) !important;\r\n    color: #FF5C00 !important;\r\n    box-shadow: none !important;\r\n    -webkit-box-shadow: none !important;\r\n}\r\nbutton.osm-vazby-person-filter[data-person-filter=\"all\"].is-active:hover,\r\nbutton.osm-vazby-person-filter[data-person-filter=\"all\"].is-active:focus-visible {\r\n    background: rgba(255,92,0,.14) !important;\r\n    border-color: rgba(255,92,0,.48) !important;\r\n    color: #FF5C00 !important;\r\n    box-shadow: none !important;\r\n    -webkit-box-shadow: none !important;\r\n    outline: none !important;\r\n}\r\n\r\n\r\n\/*\r\n * =====================================================\r\n * PODPORA VIZUALIZACE \u2013 SAMOSTATN\u00c9 MAL\u00c9 SRDCE\r\n * =====================================================\r\n *\r\n * Srdce u\u017e NEN\u00cd uvnit\u0159 selectu.\r\n * Select m\u00e1 na desktopu omezenou \u0161\u00ed\u0159ku a srdce stoj\u00ed\r\n * jako samostatn\u00fd prvek hned za n\u00edm.\r\n * Voln\u00e9 m\u00edsto z\u016fst\u00e1v\u00e1 mezi srdcem a tla\u010d\u00edtkem osobnost\u00ed.\r\n *\r\n * Na u\u017e\u0161\u00edm rozlo\u017een\u00ed (pod 1100 px) se podpora schov\u00e1,\r\n * aby nikdy nedostala p\u0159ednost p\u0159ed ovl\u00e1d\u00e1n\u00edm VAZEB.\r\n *\/\r\n\r\n#osm-vazby-841693-toolbar {\r\n    overflow: visible;\r\n}\r\n\r\n\r\n\/*\r\n * Mal\u00e9 srdce \u2013 jen pro VAZBY. O chlup v\u011bt\u0161\u00ed (36 px),\r\n * ale po\u0159\u00e1d subtiln\u00ed v\u016f\u010di hlavn\u00edmu ovl\u00e1d\u00e1n\u00ed.\r\n *\/\r\n#osm-vazby-841693-support {\r\n    position: relative;\r\n    z-index: 30;\r\n\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n\r\n    min-width: 36px;\r\n    width: 36px;\r\n    height: 48px;\r\n}\r\n\r\n\r\n#osm-vazby-841693-support\r\n.osm-support-cta--variant-vazby\r\n.osm-support-cta__button {\r\n    width: 36px;\r\n    height: 36px;\r\n\r\n    border-width: 2px;\r\n\r\n    box-shadow:\r\n        0 3px 9px rgba(0,0,0,.10);\r\n}\r\n\r\n\r\n#osm-vazby-841693-support\r\n.osm-support-cta--variant-vazby\r\n.osm-support-cta__icon {\r\n    width: 20px;\r\n    height: 20px;\r\n}\r\n\r\n\r\n\/*\r\n * Zelen\u00e1 bublina jde doprava do voln\u00e9ho prostoru.\r\n * Mal\u00e1 ikona tak m\u016f\u017ee z\u016fstat opravdu subtiln\u00ed.\r\n *\/\r\n#osm-vazby-841693-support\r\n.osm-support-cta--variant-vazby\r\n.osm-support-cta__tooltip {\r\n    top: 50%;\r\n\r\n    right: auto;\r\n    left: 46px;\r\n\r\n    width: 168px;\r\n    max-width: 168px;\r\n\r\n    white-space: normal;\r\n\r\n    transform:\r\n        translateY(-50%)\r\n        translateX(-8px);\r\n}\r\n\r\n\r\n#osm-vazby-841693-support\r\n.osm-support-cta--variant-vazby\r\n.osm-support-cta__button:hover\r\n~\r\n.osm-support-cta__tooltip,\r\n\r\n#osm-vazby-841693-support\r\n.osm-support-cta--variant-vazby\r\n.osm-support-cta__button:focus-visible\r\n~\r\n.osm-support-cta__tooltip {\r\n    transform:\r\n        translateY(-50%)\r\n        translateX(0);\r\n}\r\n\r\n\r\n#osm-vazby-841693-support\r\n.osm-support-cta--variant-vazby\r\n.osm-support-cta__tooltip::after {\r\n    top: 50%;\r\n\r\n    right: auto;\r\n    left: -8px;\r\n\r\n    border-left: 0;\r\n    border-right:\r\n        8px solid var(--osm-support-teal);\r\n\r\n    transform:\r\n        translateY(-50%);\r\n}\r\n\r\n\r\n\/*\r\n * B\u00edl\u00e1 karta se otev\u0159e a\u017e POD cel\u00fdm toolbarem.\r\n * Hodnotu --osm-vazby-panel-top dopo\u010d\u00edt\u00e1 JS podle\r\n * skute\u010dn\u00e9 v\u00fd\u0161ky li\u0161ty, tedy i p\u0159i zobrazen\u00ed osobnost\u00ed.\r\n *\/\r\n#osm-vazby-841693-support\r\n.osm-support-cta--variant-vazby\r\n.osm-support-cta__panel {\r\n    top: var(--osm-vazby-panel-top, 96px);\r\n\r\n    right: auto;\r\n    left: 0;\r\n\r\n    width: 300px;\r\n    max-width: min(300px, calc(100vw - 24px));\r\n\r\n    z-index: 200;\r\n}\r\n\r\n\r\n\/*\r\n * Karta u\u017e nen\u00ed t\u011bsn\u011b u srdce \u2013 \u0161ipka by tedy byla matouc\u00ed.\r\n *\/\r\n#osm-vazby-841693-support\r\n.osm-support-cta--variant-vazby\r\n.osm-support-cta__panel::before {\r\n    display: none;\r\n}\r\n\r\n\r\n\/*\r\n * DESKTOP:\r\n * CEL\u00c1 S\u00cd\u0164 | SELECT | SRDCE | VOLN\u00dd PROSTOR | OSOBNOSTI\r\n *\r\n * Select u\u017e nevypl\u0148uje cel\u00fd \u0159\u00e1dek. Jeho \u0161\u00ed\u0159ka se \u0159\u00edd\u00ed\r\n * nejdel\u0161\u00edm n\u00e1zvem v nab\u00eddce, nejv\u00fd\u0161e v\u0161ak 560 px;\r\n * minim\u00e1ln\u011b z\u016fstane 300 px \u0161irok\u00fd.\r\n *\/\r\n@media (min-width: 1100px) {\r\n\r\n    #osm-vazby-841693-controls {\r\n        display: grid;\r\n\r\n        grid-template-columns:\r\n            max-content\r\n            fit-content(560px)\r\n            36px\r\n            minmax(0, 1fr)\r\n            max-content;\r\n\r\n        align-items: stretch;\r\n\r\n        gap: 10px;\r\n    }\r\n\r\n\r\n    #osm-vazby-all-841693 {\r\n        grid-column: 1;\r\n    }\r\n\r\n\r\n    #osm-vazby-select-841693 {\r\n        grid-column: 2;\r\n\r\n        width: auto;\r\n        min-width: 300px;\r\n        max-width: 560px;\r\n\r\n        flex: none;\r\n    }\r\n\r\n\r\n    #osm-vazby-841693-support {\r\n        grid-column: 3;\r\n\r\n        align-self: center;\r\n        justify-self: center;\r\n    }\r\n\r\n\r\n    #osm-vazby-people-841693 {\r\n        grid-column: 5;\r\n    }\r\n}\r\n\r\n\r\n\/*\r\n * P\u0159ep\u00edna\u010d OSOBNOST\u00cd \u2013 leh\u010d\u00ed, aby nekonkuroval obsahu.\r\n * B\u00edl\u00fd podklad, dv\u011b projektov\u00e9 barvy a men\u0161\u00ed v\u00fd\u0161ka.\r\n * Stav ZOBRAZIT: tmavozelen\u00fd text + oran\u017eov\u00fd r\u00e1me\u010dek.\r\n * Stav SKR\u00ddT: oran\u017eov\u00fd text + tmavozelen\u00fd r\u00e1me\u010dek.\r\n *\/\r\n#osm-vazby-people-841693,\r\n#osm-vazby-people-841693.is-active {\r\n    min-height: 36px;\r\n    height: 36px;\r\n    align-self: center;\r\n\r\n    padding: 7px 12px;\r\n\r\n    background: #ffffff;\r\n    color: #1C4746;\r\n    border: 1px solid #FF5C00;\r\n\r\n    font-size: 12.5px;\r\n    font-weight: 500;\r\n    line-height: 1;\r\n\r\n    box-shadow: none;\r\n}\r\n\r\n\r\n#osm-vazby-people-841693.is-active {\r\n    color: #FF5C00;\r\n    border-color: #1C4746;\r\n}\r\n\r\n\r\n#osm-vazby-people-841693:hover,\r\n#osm-vazby-people-841693:focus-visible {\r\n    background: #fff8f4;\r\n    color: #FF5C00;\r\n    border-color: #1C4746;\r\n    box-shadow: none;\r\n}\r\n\r\n\r\n#osm-vazby-people-841693.is-active:hover,\r\n#osm-vazby-people-841693.is-active:focus-visible {\r\n    background: #f6f9f9;\r\n    color: #1C4746;\r\n    border-color: #FF5C00;\r\n    box-shadow: none;\r\n}\r\n\r\n\r\n\/*\r\n * Pod 1100 px u\u017e m\u00e1 p\u0159ednost obsah a ovl\u00e1d\u00e1n\u00ed.\r\n * Podpora VAZEB se proto prost\u011b schov\u00e1 \u2013 nic neposouv\u00e1,\r\n * nic nep\u0159ekr\u00fdv\u00e1 a nevytv\u00e1\u0159\u00ed dal\u0161\u00ed \u0159\u00e1dek.\r\n *\/\r\n@media (max-width: 1099px) {\r\n\r\n    #osm-vazby-841693-support {\r\n        display: none !important;\r\n    }\r\n}\r\n\r\n\r\n\/*\r\n * =====================================================\r\n * UX v2.10 \u2013 ODLEH\u010cEN\u00cd HORN\u00cdHO \u0158\u00c1DKU\r\n * =====================================================\r\n * CEL\u00c1 S\u00cd\u0164 z\u016fst\u00e1v\u00e1 beze zm\u011bny a v\u00fdrazn\u00e1.\r\n * V\u00fdb\u011br iniciativy je pouze jako linka se \u0161ipkou.\r\n * P\u0159ep\u00edna\u010d osobnost\u00ed pou\u017e\u00edv\u00e1 v\u017edy jednu barvu pro text i r\u00e1me\u010dek:\r\n * ZOBRAZIT = tmavozelen\u00e1, SKR\u00ddT = oran\u017eov\u00e1.\r\n *\/\r\n\r\n\/* V\u00fdb\u011br iniciativy: bez boxu, jen spodn\u00ed linka + vlastn\u00ed jemn\u00e1 \u0161ipka. *\/\r\n#osm-vazby-select-841693 {\r\n    -webkit-appearance: none;\r\n    appearance: none;\r\n\r\n    border: 0;\r\n    border-bottom: 1.5px solid rgba(28,71,70,.72);\r\n    border-radius: 0;\r\n\r\n    background-color: transparent;\r\n    background-image:\r\n        linear-gradient(45deg, transparent 50%, #1C4746 50%),\r\n        linear-gradient(135deg, #1C4746 50%, transparent 50%);\r\n    background-position:\r\n        calc(100% - 13px) 50%,\r\n        calc(100% - 8px) 50%;\r\n    background-size: 5px 5px, 5px 5px;\r\n    background-repeat: no-repeat;\r\n\r\n    padding: 0 30px 0 8px;\r\n\r\n    box-shadow: none;\r\n    outline: none;\r\n}\r\n\r\n#osm-vazby-select-841693:hover {\r\n    border-bottom-color: #1C4746;\r\n}\r\n\r\n#osm-vazby-select-841693:focus,\r\n#osm-vazby-select-841693:focus-visible {\r\n    border-bottom-color: #FF5C00;\r\n    outline: none;\r\n    box-shadow: none;\r\n}\r\n\r\n\r\n\/*\r\n * ZOBRAZIT OSOBNOSTI = tmavozelen\u00fd text + tmavozelen\u00fd r\u00e1me\u010dek.\r\n * SKR\u00ddT OSOBNOSTI = oran\u017eov\u00fd text + oran\u017eov\u00fd r\u00e1me\u010dek.\r\n * R\u00e1me\u010dek je o n\u011bco v\u00fdrazn\u011bj\u0161\u00ed (2 px), ale tla\u010d\u00edtko z\u016fst\u00e1v\u00e1 lehk\u00e9.\r\n *\/\r\n#osm-vazby-people-841693 {\r\n    min-height: 36px;\r\n    height: 36px;\r\n    align-self: center;\r\n\r\n    padding: 7px 12px;\r\n\r\n    background: #ffffff;\r\n    color: #1C4746;\r\n    border: 2px solid #1C4746;\r\n\r\n    font-size: 12.5px;\r\n    font-weight: 500;\r\n    line-height: 1;\r\n\r\n    box-shadow: none;\r\n}\r\n\r\n#osm-vazby-people-841693:hover,\r\n#osm-vazby-people-841693:focus-visible {\r\n    background: rgba(28,71,70,.045);\r\n    color: #1C4746;\r\n    border-color: #1C4746;\r\n    box-shadow: none;\r\n    outline: none;\r\n}\r\n\r\n#osm-vazby-people-841693.is-active {\r\n    background: #ffffff;\r\n    color: #FF5C00;\r\n    border-color: #FF5C00;\r\n    box-shadow: none;\r\n}\r\n\r\n#osm-vazby-people-841693.is-active:hover,\r\n#osm-vazby-people-841693.is-active:focus-visible {\r\n    background: rgba(255,92,0,.045);\r\n    color: #FF5C00;\r\n    border-color: #FF5C00;\r\n    box-shadow: none;\r\n    outline: none;\r\n}\r\n\r\n\r\n@media (min-width: 1100px) {\r\n\r\n    \/* UX v2.11 \u2013 optick\u00e9 srovn\u00e1n\u00ed spodn\u00ed li\u0161ty *\/\r\n    #osm-vazby-people-legend-841693 {\r\n        gap: 4px 5px;\r\n    }\r\n\r\n    #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n        padding: 5px 6px;\r\n        font-size: 11px;\r\n    }\r\n\r\n    #osm-vazby-people-legend-841693 .osm-vazby-person-sample {\r\n        flex: 0 0 34px;\r\n        width: 34px;\r\n    }\r\n}\r\n\r\n\r\n\r\n\/*\r\n * =====================================================\r\n * UX v2.12 \u2013 KOMPAKTN\u00cd HORN\u00cd \u0158\u00c1DEK I POD 1100 PX\r\n * =====================================================\r\n * Nov\u00fd odleh\u010den\u00fd model u\u017e nepot\u0159ebuje star\u00fd breakpoint,\r\n * kter\u00fd pod 1100 px znovu natahoval select p\u0159es celou \u0161\u00ed\u0159ku\r\n * a schov\u00e1val podporu. Srdce z\u016fst\u00e1v\u00e1 sou\u010d\u00e1st\u00ed horn\u00edho \u0159\u00e1dku\r\n * i na tabletu a mobilu, dokud se opravdu vejde.\r\n *\/\r\n\r\n@media (min-width: 768px) and (max-width: 1099px) {\r\n\r\n    #osm-vazby-841693-controls {\r\n        display: grid;\r\n        grid-template-columns:\r\n            max-content\r\n            minmax(220px, 430px)\r\n            36px\r\n            minmax(0, 1fr)\r\n            max-content;\r\n        align-items: stretch;\r\n        gap: 10px;\r\n    }\r\n\r\n    #osm-vazby-all-841693 {\r\n        grid-column: 1;\r\n    }\r\n\r\n    #osm-vazby-select-841693 {\r\n        grid-column: 2;\r\n        width: 100%;\r\n        min-width: 0;\r\n        max-width: 430px;\r\n        flex: none;\r\n    }\r\n\r\n    #osm-vazby-841693-support {\r\n        grid-column: 3;\r\n        display: flex !important;\r\n        align-self: center;\r\n        justify-self: center;\r\n    }\r\n\r\n    #osm-vazby-people-841693 {\r\n        grid-column: 5;\r\n        justify-self: end;\r\n    }\r\n}\r\n\r\n\r\n\/*\r\n * Mobil: prvn\u00ed \u0159\u00e1dek z\u016fst\u00e1v\u00e1 maxim\u00e1ln\u011b \u00fasporn\u00fd:\r\n * CEL\u00c1 S\u00cd\u0164 | pru\u017en\u00fd v\u00fdb\u011br | srdce.\r\n * P\u0159ep\u00edna\u010d osobnost\u00ed se objev\u00ed a\u017e ve druh\u00e9m \u0159\u00e1dku pouze tehdy,\r\n * kdy\u017e je skute\u010dn\u011b k dispozici. Podpora t\u00edm nezab\u00edr\u00e1 vlastn\u00ed \u0159\u00e1dek.\r\n *\/\r\n@media (max-width: 767px) {\r\n\r\n    #osm-vazby-841693-controls {\r\n        display: grid;\r\n        grid-template-columns:\r\n            max-content\r\n            minmax(0, 1fr)\r\n            36px;\r\n        grid-template-rows: auto auto;\r\n        align-items: stretch;\r\n        column-gap: 8px;\r\n        row-gap: 7px;\r\n    }\r\n\r\n    #osm-vazby-all-841693 {\r\n        grid-column: 1;\r\n        grid-row: 1;\r\n    }\r\n\r\n    #osm-vazby-select-841693 {\r\n        grid-column: 2;\r\n        grid-row: 1;\r\n        width: 100%;\r\n        min-width: 0;\r\n        max-width: none;\r\n        flex: none;\r\n        padding-left: 6px;\r\n    }\r\n\r\n    #osm-vazby-841693-support {\r\n        grid-column: 3;\r\n        grid-row: 1;\r\n        display: flex !important;\r\n        align-self: center;\r\n        justify-self: center;\r\n    }\r\n\r\n    #osm-vazby-people-841693 {\r\n        grid-column: 1 \/ -1;\r\n        grid-row: 2;\r\n        justify-self: end;\r\n        width: auto;\r\n    }\r\n\r\n    \/* Na mobilu se vysv\u011btlovac\u00ed bublina otev\u00edr\u00e1 dovnit\u0159 obrazovky. *\/\r\n    #osm-vazby-841693-support\r\n    .osm-support-cta--variant-vazby\r\n    .osm-support-cta__tooltip {\r\n        right: 46px;\r\n        left: auto;\r\n        transform: translateY(-50%) translateX(8px);\r\n    }\r\n\r\n    #osm-vazby-841693-support\r\n    .osm-support-cta--variant-vazby\r\n    .osm-support-cta__button:hover\r\n    ~ .osm-support-cta__tooltip,\r\n    #osm-vazby-841693-support\r\n    .osm-support-cta--variant-vazby\r\n    .osm-support-cta__button:focus-visible\r\n    ~ .osm-support-cta__tooltip {\r\n        transform: translateY(-50%) translateX(0);\r\n    }\r\n\r\n    #osm-vazby-841693-support\r\n    .osm-support-cta--variant-vazby\r\n    .osm-support-cta__tooltip::after {\r\n        right: -8px;\r\n        left: auto;\r\n        border-right: 0;\r\n        border-left: 8px solid var(--osm-support-teal);\r\n    }\r\n\r\n    \/* Karta podpory se tak\u00e9 otev\u00edr\u00e1 doleva, tedy dovnit\u0159 viewportu. *\/\r\n    #osm-vazby-841693-support\r\n    .osm-support-cta--variant-vazby\r\n    .osm-support-cta__panel {\r\n        right: 0;\r\n        left: auto;\r\n        width: min(280px, calc(100vw - 24px));\r\n        max-width: calc(100vw - 24px);\r\n    }\r\n}\r\n\r\n\r\n\r\n    \/* =====================================================\r\n     * UX v3.0 \u2013 \u010dist\u0161\u00ed spole\u010dn\u00e1 li\u0161ta + v\u00edce prostoru grafu\r\n     * ===================================================== *\/\r\n\r\n    @media (min-width: 768px) {\r\n\r\n        #osm-vazby-841693-controls {\r\n            display: grid !important;\r\n            grid-template-columns: max-content minmax(0, 1fr) !important;\r\n            align-items: stretch !important;\r\n            gap: 12px !important;\r\n        }\r\n\r\n        #osm-vazby-all-841693 {\r\n            grid-column: 1 !important;\r\n            grid-row: 1 !important;\r\n        }\r\n\r\n        #osm-vazby-select-841693 {\r\n            grid-column: 2 !important;\r\n            grid-row: 1 !important;\r\n            width: 100% !important;\r\n            min-width: 0 !important;\r\n            max-width: none !important;\r\n        }\r\n\r\n        \/* Srdce u\u017e nen\u00ed sou\u010d\u00e1st\u00ed horn\u00edho \u0159\u00e1dku \u2013 plave vpravo pod li\u0161tou. *\/\r\n        #osm-vazby-841693-support {\r\n            position: absolute !important;\r\n            top: calc(100% + 10px) !important;\r\n            right: 8px !important;\r\n            left: auto !important;\r\n            width: 36px !important;\r\n            min-width: 36px !important;\r\n            height: 36px !important;\r\n            display: flex !important;\r\n            z-index: 120 !important;\r\n            grid-column: auto !important;\r\n            grid-row: auto !important;\r\n        }\r\n\r\n        #osm-vazby-841693-support\r\n        .osm-support-cta--variant-vazby\r\n        .osm-support-cta__tooltip {\r\n            right: 46px !important;\r\n            left: auto !important;\r\n            transform: translateY(-50%) translateX(8px) !important;\r\n        }\r\n\r\n        #osm-vazby-841693-support\r\n        .osm-support-cta--variant-vazby\r\n        .osm-support-cta__button:hover\r\n        ~ .osm-support-cta__tooltip,\r\n        #osm-vazby-841693-support\r\n        .osm-support-cta--variant-vazby\r\n        .osm-support-cta__button:focus-visible\r\n        ~ .osm-support-cta__tooltip {\r\n            transform: translateY(-50%) translateX(0) !important;\r\n        }\r\n\r\n        #osm-vazby-841693-support\r\n        .osm-support-cta--variant-vazby\r\n        .osm-support-cta__tooltip::after {\r\n            right: -8px !important;\r\n            left: auto !important;\r\n            border-right: 0 !important;\r\n            border-left: 8px solid var(--osm-support-teal) !important;\r\n        }\r\n\r\n        #osm-vazby-841693-support\r\n        .osm-support-cta--variant-vazby\r\n        .osm-support-cta__panel {\r\n            top: 46px !important;\r\n            right: 0 !important;\r\n            left: auto !important;\r\n        }\r\n    }\r\n\r\n    @media (min-width: 1100px) {\r\n\r\n        #osm-vazby-841693-toolbar {\r\n            grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;\r\n            column-gap: 0 !important;\r\n            row-gap: 0 !important;\r\n        }\r\n\r\n        \/* Ob\u011b \u010d\u00e1sti legendy tvo\u0159\u00ed jednu souvislou li\u0161tu. *\/\r\n        #osm-vazby-841693-legend,\r\n        #osm-vazby-people-legend-841693 {\r\n            margin-top: 6px !important;\r\n            padding: 6px 8px !important;\r\n            background: #ffffff !important;\r\n            border: 1px solid rgba(28,71,70,.14) !important;\r\n            box-shadow: none !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend {\r\n            border-right: 0 !important;\r\n            border-radius: 2px 0 0 2px !important;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693 {\r\n            border-left: 1px solid rgba(28,71,70,.10) !important;\r\n            border-radius: 0 2px 2px 0 !important;\r\n        }\r\n\r\n        \/* T\u0159i vazbov\u00e9 volby s \u0161ipkami jsou opravdu vyst\u0159ed\u011bn\u00e9. *\/\r\n        #osm-vazby-841693-legend\r\n        .osm-vazby-filter:not([data-relation-filter=\"all\"]),\r\n        #osm-vazby-people-legend-841693        .osm-vazby-person-filter:not([data-person-filter=\"all\"]) {\r\n            justify-content: center !important;\r\n            text-align: center !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend\r\n        .osm-vazby-filter:not([data-relation-filter=\"all\"]) > span:last-child,\r\n        #osm-vazby-people-legend-841693        .osm-vazby-person-filter:not([data-person-filter=\"all\"]) > span:last-child {\r\n            text-align: center !important;\r\n        }\r\n\r\n        \/* Vy\u0161\u0161\u00ed pl\u00e1tno d\u00e1 celkov\u00e9 s\u00edti v\u00edce prostoru a zv\u011bt\u0161\u00ed v\u00fdsledn\u00fd fit. *\/\r\n        #osm-vazby-stage-841693 {\r\n            height: 105vh !important;\r\n            min-height: 980px !important;\r\n        }\r\n    }\r\n\r\n    \/* =====================================================\r\n     * UX v3.1 \u2013 jeden spodn\u00ed filtr + \u010dty\u0159i horn\u00ed volby\r\n     * ===================================================== *\/\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-top-select {\r\n        height: 48px;\r\n        min-height: 48px;\r\n        width: 100%;\r\n        min-width: 0;\r\n        box-sizing: border-box;\r\n        padding: 0 38px 0 14px;\r\n        border: 1px solid #1C4746;\r\n        background-color: #ffffff;\r\n        color: #1C4746;\r\n        font-family: \"Open Sans\", sans-serif;\r\n        font-size: 13px;\r\n        font-weight: 300;\r\n        cursor: pointer;\r\n    }\r\n\r\n    \/* Spole\u010dn\u00e9 volby se nikdy neopakuj\u00ed \u2013 ani na men\u0161\u00edch \u0161\u00ed\u0159k\u00e1ch. *\/\r\n    #osm-vazby-people-legend-841693    [data-person-filter=\"person_association\"],\r\n    #osm-vazby-people-legend-841693    [data-person-filter=\"all\"] {\r\n        display: none !important;\r\n    }\r\n\r\n    @media (min-width: 1100px) {\r\n\r\n        #osm-vazby-841693-toolbar {\r\n            display: flex !important;\r\n            flex-wrap: wrap !important;\r\n            align-items: center !important;\r\n            gap: 0 18px !important;\r\n        }\r\n\r\n        #osm-vazby-841693-controls {\r\n            order: 0 !important;\r\n            flex: 0 0 100% !important;\r\n            display: grid !important;\r\n            grid-template-columns:\r\n                max-content\r\n                minmax(230px, 1.35fr)\r\n                minmax(170px, .75fr)\r\n                minmax(230px, 1fr) !important;\r\n            gap: 10px !important;\r\n            align-items: stretch !important;\r\n        }\r\n\r\n        #osm-vazby-all-841693 {\r\n            grid-column: 1 !important;\r\n        }\r\n\r\n        #osm-vazby-select-841693 {\r\n            grid-column: 2 !important;\r\n        }\r\n\r\n        #osm-vazby-category-841693 {\r\n            grid-column: 3 !important;\r\n        }\r\n\r\n        #osm-vazby-event-841693 {\r\n            grid-column: 4 !important;\r\n        }\r\n\r\n        \/* Ob\u011b p\u016fvodn\u00ed legendy se rozpust\u00ed do jedin\u00e9 spodn\u00ed \u0159ady. *\/\r\n        #osm-vazby-841693-legend,\r\n        #osm-vazby-people-legend-841693 {\r\n            display: contents !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend-title {\r\n            order: 10;\r\n        }\r\n\r\n        #osm-vazby-841693-legend\r\n        [data-relation-filter=\"membership\"] {\r\n            order: 11;\r\n        }\r\n\r\n        #osm-vazby-841693-legend\r\n        [data-relation-filter=\"cooperation\"] {\r\n            order: 12;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693        .osm-vazby-person-legend-title {\r\n            order: 20;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693        [data-person-filter=\"leadership\"] {\r\n            order: 21;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693        [data-person-filter=\"person_membership\"] {\r\n            order: 22;\r\n        }\r\n\r\n        \/* SOUVISLOST a V\u0160ECHNY TYPY jsou spole\u010dn\u00e9 \u2013 jen jednou. *\/\r\n        #osm-vazby-841693-legend\r\n        [data-relation-filter=\"association\"] {\r\n            order: 30;\r\n        }\r\n\r\n        #osm-vazby-841693-legend\r\n        [data-relation-filter=\"all\"] {\r\n            order: 31;\r\n        }\r\n\r\n        #osm-vazby-people-legend-841693        [data-person-filter=\"person_association\"],\r\n        #osm-vazby-people-legend-841693        [data-person-filter=\"all\"] {\r\n            display: none !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend-title,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title,\r\n        #osm-vazby-841693-legend .osm-vazby-filter,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n            margin-top: 10px !important;\r\n        }\r\n    }\r\n\r\n\r\n    \/* =====================================================\r\n     * UX v3.2 \u2013 lehk\u00fd horn\u00ed \u0159\u00e1dek + jedna spole\u010dn\u00e1 legenda\r\n     * ===================================================== *\/\r\n\r\n    #osm-vazby-841693-toolbar {\r\n        padding-top: 5px !important;\r\n        padding-bottom: 7px !important;\r\n        box-shadow: 0 4px 14px rgba(0,0,0,.035) !important;\r\n    }\r\n\r\n    #osm-vazby-people-841693 {\r\n        display: none !important;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-top-select {\r\n        -webkit-appearance: none !important;\r\n        appearance: none !important;\r\n        height: 42px !important;\r\n        min-height: 42px !important;\r\n        padding: 0 26px 0 5px !important;\r\n        border: 0 !important;\r\n        border-bottom: 1px solid rgba(28,71,70,.28) !important;\r\n        border-radius: 0 !important;\r\n        background-color: transparent !important;\r\n        background-image:\r\n            linear-gradient(45deg, transparent 50%, #1C4746 50%),\r\n            linear-gradient(135deg, #1C4746 50%, transparent 50%) !important;\r\n        background-position:\r\n            calc(100% - 12px) 50%,\r\n            calc(100% - 7px) 50% !important;\r\n        background-size: 5px 5px, 5px 5px !important;\r\n        background-repeat: no-repeat !important;\r\n        color: #667171 !important;\r\n        font-size: 12.5px !important;\r\n        font-weight: 300 !important;\r\n        box-shadow: none !important;\r\n        outline: none !important;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-top-select:hover {\r\n        border-bottom-color: rgba(28,71,70,.60) !important;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-top-select:focus,\r\n    #osm-vazby-841693-controls .osm-vazby-top-select:focus-visible {\r\n        border-bottom-color: #FF5C00 !important;\r\n        color: #1C4746 !important;\r\n    }\r\n\r\n    #osm-vazby-all-841693 {\r\n        min-height: 42px !important;\r\n        height: 42px !important;\r\n        padding: 9px 16px !important;\r\n        font-size: 13px !important;\r\n    }\r\n\r\n    \/* Srdce se vrac\u00ed na \u00fapln\u00fd prav\u00fd konec horn\u00edho \u0159\u00e1dku. *\/\r\n    #osm-vazby-841693-support {\r\n        position: relative !important;\r\n        top: auto !important;\r\n        right: auto !important;\r\n        left: auto !important;\r\n        width: 34px !important;\r\n        min-width: 34px !important;\r\n        height: 42px !important;\r\n        display: flex !important;\r\n        align-items: center !important;\r\n        justify-content: center !important;\r\n        z-index: 120 !important;\r\n    }\r\n\r\n    #osm-vazby-841693-support\r\n    .osm-support-cta--variant-vazby\r\n    .osm-support-cta__button {\r\n        width: 30px !important;\r\n        height: 30px !important;\r\n        border-width: 1.5px !important;\r\n        box-shadow: 0 2px 6px rgba(0,0,0,.08) !important;\r\n    }\r\n\r\n    #osm-vazby-841693-support\r\n    .osm-support-cta--variant-vazby\r\n    .osm-support-cta__icon {\r\n        width: 17px !important;\r\n        height: 17px !important;\r\n    }\r\n\r\n    #osm-vazby-841693-support\r\n    .osm-support-cta--variant-vazby\r\n    .osm-support-cta__tooltip {\r\n        right: 40px !important;\r\n        left: auto !important;\r\n    }\r\n\r\n    #osm-vazby-841693-support\r\n    .osm-support-cta--variant-vazby\r\n    .osm-support-cta__panel {\r\n        top: 42px !important;\r\n        right: 0 !important;\r\n        left: auto !important;\r\n    }\r\n\r\n    \/* Jedna spole\u010dn\u00e1 legenda \u2013 bez dvou barevn\u00fdch \u0161upl\u00edk\u016f. *\/\r\n    #osm-vazby-841693-legend-title,\r\n    #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title,\r\n    #osm-vazby-people-legend-841693 [data-person-filter=\"person_membership\"],\r\n    #osm-vazby-people-legend-841693 [data-person-filter=\"person_association\"],\r\n    #osm-vazby-people-legend-841693 [data-person-filter=\"all\"] {\r\n        display: none !important;\r\n    }\r\n\r\n    .osm-vazby-actor-filter {\r\n        appearance: none;\r\n        display: inline-flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        padding: 5px 9px;\r\n        border: 1px solid rgba(28,71,70,.13);\r\n        background: #ffffff;\r\n        color: #667171;\r\n        font-family: \"Open Sans\", sans-serif;\r\n        font-size: 11px;\r\n        font-weight: 400;\r\n        line-height: 1.15;\r\n        text-transform: uppercase;\r\n        cursor: pointer;\r\n        transition: background .18s ease, border-color .18s ease, color .18s ease;\r\n    }\r\n\r\n    .osm-vazby-actor-filter:hover,\r\n    .osm-vazby-actor-filter:focus-visible {\r\n        color: #1C4746;\r\n        border-color: rgba(28,71,70,.35);\r\n        outline: none;\r\n    }\r\n\r\n    .osm-vazby-actor-filter[data-actor-filter=\"initiatives\"].is-active {\r\n        color: #1C4746;\r\n        border-color: rgba(28,71,70,.42);\r\n        background: rgba(28,71,70,.08);\r\n    }\r\n\r\n    .osm-vazby-actor-filter[data-actor-filter=\"people\"].is-active {\r\n        color: #FF5C00;\r\n        border-color: rgba(255,92,0,.40);\r\n        background: rgba(255,92,0,.07);\r\n    }\r\n\r\n    @media (min-width: 1100px) {\r\n        #osm-vazby-841693-toolbar {\r\n            display: flex !important;\r\n            flex-wrap: wrap !important;\r\n            align-items: center !important;\r\n            gap: 0 8px !important;\r\n        }\r\n\r\n        #osm-vazby-841693-controls {\r\n            order: 0 !important;\r\n            flex: 0 0 100% !important;\r\n            display: grid !important;\r\n            grid-template-columns:\r\n                max-content\r\n                minmax(220px, 1.25fr)\r\n                minmax(145px, .65fr)\r\n                minmax(220px, 1fr)\r\n                34px !important;\r\n            gap: 12px !important;\r\n            align-items: center !important;\r\n        }\r\n\r\n        #osm-vazby-all-841693 { grid-column: 1 !important; }\r\n        #osm-vazby-select-841693 { grid-column: 2 !important; }\r\n        #osm-vazby-category-841693 { grid-column: 3 !important; }\r\n        #osm-vazby-event-841693 { grid-column: 4 !important; }\r\n        #osm-vazby-841693-support { grid-column: 5 !important; }\r\n\r\n        #osm-vazby-841693-legend,\r\n        #osm-vazby-people-legend-841693 {\r\n            display: contents !important;\r\n        }\r\n\r\n        .osm-vazby-actor-filter,\r\n        #osm-vazby-841693-legend .osm-vazby-filter,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n            margin-top: 8px !important;\r\n            min-height: 30px;\r\n            box-sizing: border-box;\r\n        }\r\n\r\n        .osm-vazby-actor-filter[data-actor-filter=\"initiatives\"] { order: 10; }\r\n        .osm-vazby-actor-filter[data-actor-filter=\"people\"] { order: 11; }\r\n        #osm-vazby-841693-legend [data-relation-filter=\"association\"] { order: 20; }\r\n        #osm-vazby-841693-legend [data-relation-filter=\"cooperation\"] { order: 21; }\r\n        #osm-vazby-people-legend-841693 [data-person-filter=\"leadership\"] { order: 22; }\r\n        #osm-vazby-841693-legend [data-relation-filter=\"membership\"] { order: 23; }\r\n        #osm-vazby-841693-legend [data-relation-filter=\"all\"] { order: 24; }\r\n    }\r\n\r\n    @media (max-width: 1099px) {\r\n        #osm-vazby-841693-support {\r\n            display: flex !important;\r\n        }\r\n    }\r\n\r\n\r\n    \/* =====================================================\r\n     * UX v3.3 \u2013 horn\u00ed filtry podle Akt\u00e9r\u016f \/ Chytr\u00e9ho archivu\r\n     * ===================================================== *\/\r\n    #osm-vazby-841693-controls .osm-vazby-native-select-hidden {\r\n        display: none !important;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-filter {\r\n        position: relative;\r\n        min-width: 0;\r\n        align-self: end;\r\n        font-family: \"Open Sans\", sans-serif;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-label {\r\n        display: block;\r\n        margin: 0 0 7px 0;\r\n        padding-left: 4px;\r\n        color: #FF5C00;\r\n        font-size: 11px;\r\n        font-weight: 400;\r\n        line-height: 1;\r\n        letter-spacing: 1.2px;\r\n        text-transform: uppercase;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-input {\r\n        display: block;\r\n        width: 100%;\r\n        height: 42px;\r\n        box-sizing: border-box;\r\n        margin: 0;\r\n        padding: 0 26px 8px 4px;\r\n        background: #ffffff;\r\n        border: 0;\r\n        border-bottom: 1px solid #cbd8d6;\r\n        border-radius: 0;\r\n        color: #1C4746;\r\n        font-family: \"Open Sans\", sans-serif;\r\n        font-size: 13px;\r\n        font-weight: 300;\r\n        line-height: 1.2;\r\n        outline: none;\r\n        box-shadow: none;\r\n        transition: border-color .18s ease, color .18s ease;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-input,\r\n    #osm-vazby-841693-controls .osm-vazby-dropdown-select {\r\n        cursor: pointer !important;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-input::placeholder {\r\n        color: #7c9692;\r\n        opacity: 1;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-input:hover {\r\n        border-bottom-color: #8fa9a5;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-input:focus {\r\n        border-bottom-color: #FF5C00;\r\n    }\r\n\r\n            #osm-vazby-841693-controls .osm-vazby-search-chevron {\r\n        position: absolute;\r\n        right: 7px;\r\n        bottom: 15px;\r\n        width: 0;\r\n        height: 0;\r\n        border-left: 4px solid transparent;\r\n        border-right: 4px solid transparent;\r\n        border-top: 5px solid #1C4746;\r\n        pointer-events: none;\r\n        opacity: .78;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-menu {\r\n        position: absolute;\r\n        top: calc(100% + 3px);\r\n        left: 0;\r\n        right: 0;\r\n        z-index: 400;\r\n        display: none;\r\n        max-height: 270px;\r\n        overflow-y: auto;\r\n        padding: 4px 0;\r\n        background: #ffffff;\r\n        border: 1px solid #dbe4e2;\r\n        box-shadow: 0 8px 18px rgba(0,0,0,.08);\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-filter.is-open .osm-vazby-search-menu {\r\n        display: block;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-option {\r\n        width: 100%;\r\n        padding: 8px 10px;\r\n        border: 0;\r\n        background: #ffffff;\r\n        color: #1C4746;\r\n        font-family: \"Open Sans\", sans-serif;\r\n        font-size: 12.5px;\r\n        font-weight: 300;\r\n        line-height: 1.25;\r\n        text-align: left;\r\n        cursor: pointer;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-option:hover,\r\n    #osm-vazby-841693-controls .osm-vazby-search-option:focus {\r\n        background: #eef4f3;\r\n        outline: none;\r\n    }\r\n\r\n    #osm-vazby-841693-controls .osm-vazby-search-empty {\r\n        padding: 9px 10px;\r\n        color: #7c9692;\r\n        font-size: 12px;\r\n        font-weight: 300;\r\n    }\r\n\r\n    @media (min-width: 1100px) {\r\n        #osm-vazby-841693-controls {\r\n            grid-template-columns:\r\n                max-content\r\n                minmax(220px, 1.25fr)\r\n                minmax(170px, .72fr)\r\n                minmax(240px, 1fr)\r\n                34px !important;\r\n            align-items: end !important;\r\n        }\r\n\r\n        #osm-vazby-all-841693 {\r\n            margin-bottom: 0 !important;\r\n        }\r\n    }\r\n\r\n\r\n    \/* =====================================================\r\n     * UX v3.4 \u2013 spole\u010dn\u00e1 spodn\u00ed li\u0161ta podle Chytr\u00e9ho archivu\r\n     * ===================================================== *\/\r\n\r\n    @media (min-width: 768px) {\r\n        #osm-vazby-841693-toolbar {\r\n            justify-content: center !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend,\r\n        #osm-vazby-people-legend-841693 {\r\n            display: contents !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend-title,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title {\r\n            display: none !important;\r\n        }\r\n\r\n        .osm-vazby-actor-filter,\r\n        #osm-vazby-841693-legend .osm-vazby-filter,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n            min-height: 36px !important;\r\n            height: 36px !important;\r\n            padding: 0 14px !important;\r\n            margin-top: 10px !important;\r\n            border: 1px solid #1C4746 !important;\r\n            border-radius: 0 !important;\r\n            background: #ffffff !important;\r\n            color: #1C4746 !important;\r\n            box-shadow: none !important;\r\n            opacity: 1 !important;\r\n            font-family: \"Open Sans\", sans-serif !important;\r\n            font-size: 11px !important;\r\n            font-weight: 600 !important;\r\n            line-height: 1 !important;\r\n            letter-spacing: .9px !important;\r\n            text-transform: uppercase !important;\r\n            white-space: nowrap !important;\r\n            display: inline-flex !important;\r\n            align-items: center !important;\r\n            justify-content: center !important;\r\n            gap: 7px !important;\r\n            cursor: pointer !important;\r\n            transition: background .18s ease, color .18s ease, border-color .18s ease !important;\r\n        }\r\n\r\n        .osm-vazby-actor-filter:hover,\r\n        #osm-vazby-841693-legend .osm-vazby-filter:hover,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter:hover,\r\n        .osm-vazby-actor-filter:focus-visible,\r\n        #osm-vazby-841693-legend .osm-vazby-filter:focus-visible,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter:focus-visible {\r\n            background: rgba(28,71,70,.055) !important;\r\n            color: #1C4746 !important;\r\n            border-color: #1C4746 !important;\r\n            outline: none !important;\r\n        }\r\n\r\n        .osm-vazby-actor-filter[data-actor-filter=\"initiatives\"].is-active {\r\n            background: #1C4746 !important;\r\n            color: #ffffff !important;\r\n            border-color: #1C4746 !important;\r\n        }\r\n\r\n        .osm-vazby-actor-filter[data-actor-filter=\"people\"].is-active {\r\n            background: #FF5C00 !important;\r\n            color: #ffffff !important;\r\n            border-color: #FF5C00 !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter.is-active,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter.is-active {\r\n            background: #1C4746 !important;\r\n            color: #ffffff !important;\r\n            border-color: #1C4746 !important;\r\n            box-shadow: none !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample {\r\n            flex: 0 0 32px !important;\r\n            width: 32px !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter[data-relation-filter=\"all\"] {\r\n            min-width: 126px !important;\r\n        }\r\n    }\r\n\r\n    @media (max-width: 767px) {\r\n        .osm-vazby-actor-filter,\r\n        #osm-vazby-841693-legend .osm-vazby-filter,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n            border-radius: 0 !important;\r\n        }\r\n    }\r\n\r\n    \/* =====================================================\r\n     * UX v4.0 \u2013 LEHK\u00c1 DVOU\u0158\u00c1DKOV\u00c1 LI\u0160TA PODLE MAPY\r\n     * ===================================================== *\/\r\n    @media (min-width: 1100px) {\r\n        #osm-vazby-841693-toolbar {\r\n            display:grid !important;\r\n            grid-template-columns:minmax(100px,.8fr) repeat(5,minmax(0,1fr)) !important;\r\n            column-gap:16px !important;\r\n            row-gap:5px !important;\r\n            align-items:end !important;\r\n            padding:6px 14px 8px !important;\r\n            box-sizing:border-box !important;\r\n            margin-bottom:24px !important;\r\n            background:#fff !important;\r\n            box-shadow:0 6px 18px rgba(0,0,0,.06) !important;\r\n        }\r\n\r\n        #osm-vazby-841693-controls {\r\n            grid-column:1 \/ -1 !important;\r\n            grid-row:1 !important;\r\n            display:grid !important;\r\n            grid-template-columns:max-content repeat(2,minmax(0,1fr)) auto auto !important;\r\n            column-gap:30px !important;\r\n            row-gap:0 !important;\r\n            align-items:end !important;\r\n            margin:0 !important;\r\n            padding:0 !important;\r\n            min-width:0 !important;\r\n        }\r\n\r\n        #osm-vazby-841693-controls > #osm-vazby-reset-841693 { order:6 !important; justify-self:start !important; width:auto !important; min-width:0 !important; margin-left:-28px !important; }\r\n        #osm-vazby-841693-controls > #osm-vazby-apply-841693 { order:5 !important; }\r\n        #osm-vazby-841693-controls > #osm-vazby-841693-support { display:none !important; }\r\n        #osm-vazby-841693-controls > #osm-vazby-people-841693 { display:none !important; }\r\n\r\n        #osm-vazby-841693-controls .osm-vazby-search-filter {\r\n            min-width:0 !important;\r\n            margin:0 !important;\r\n            padding:0 !important;\r\n            border:0 !important;\r\n            background:transparent !important;\r\n            box-shadow:none !important;\r\n        }\r\n        #osm-vazby-841693-controls .osm-vazby-actor-type-group { order:1 !important; }\r\n        #osm-vazby-841693-controls .osm-vazby-search-filter:nth-of-type(1) { order:2 !important; }\r\n        #osm-vazby-841693-controls .osm-vazby-search-filter:nth-of-type(2) { order:3 !important; }\r\n        #osm-vazby-841693-controls .osm-vazby-search-filter:nth-of-type(3) { order:4 !important; }\r\n\r\n        #osm-vazby-841693-controls .osm-vazby-search-label,\r\n        #osm-vazby-841693-controls .osm-vazby-control-label {\r\n            display:block !important;\r\n            margin:0 0 4px !important;\r\n            color:#FF5C00 !important;\r\n            font-family:\"Open Sans\",sans-serif !important;\r\n            font-size:10px !important;\r\n            font-weight:600 !important;\r\n            letter-spacing:1.35px !important;\r\n            line-height:1.1 !important;\r\n            text-transform:uppercase !important;\r\n        }\r\n\r\n        #osm-vazby-841693-controls .osm-vazby-search-input,\r\n        #osm-vazby-841693-controls .osm-vazby-dropdown-select {\r\n            width:100% !important;\r\n            min-height:38px !important;\r\n            height:38px !important;\r\n            margin:0 !important;\r\n            padding:7px 3px 7px 0 !important;\r\n            border:0 !important;\r\n            border-bottom:1px solid rgba(28,71,70,.30) !important;\r\n            border-radius:0 !important;\r\n            background:#fff !important;\r\n            color:#1C4746 !important;\r\n            box-shadow:none !important;\r\n            font-family:\"Open Sans\",sans-serif !important;\r\n            font-size:12px !important;\r\n            font-weight:400 !important;\r\n        }\r\n        #osm-vazby-841693-controls .osm-vazby-dropdown-select {\r\n            -webkit-appearance:none !important;\r\n            appearance:none !important;\r\n            padding-right:24px !important;\r\n            background-image:none !important;\r\n        }\r\n\r\n        .osm-vazby-actor-type-group { min-width:0; justify-self:start !important; }\r\n        .osm-vazby-actor-modes {\r\n            min-height:38px;\r\n            display:flex;\r\n            align-items:center;\r\n            gap:18px;\r\n            width:max-content !important;\r\n            max-width:100% !important;\r\n            border-bottom:1px solid rgba(28,71,70,.30);\r\n            white-space:nowrap;\r\n        }\r\n        .osm-vazby-actor-modes .osm-vazby-actor-filter {\r\n            width:auto !important;\r\n            min-width:0 !important;\r\n            height:auto !important;\r\n            min-height:0 !important;\r\n            margin:0 !important;\r\n            padding:3px 0 !important;\r\n            border:0 !important;\r\n            border-bottom:1px solid transparent !important;\r\n            background:transparent !important;\r\n            color:rgba(28,71,70,.48) !important;\r\n            box-shadow:none !important;\r\n            font-size:10px !important;\r\n            font-weight:600 !important;\r\n            letter-spacing:.65px !important;\r\n            line-height:1.2 !important;\r\n        }\r\n        .osm-vazby-actor-modes .osm-vazby-actor-filter:hover,\r\n        .osm-vazby-actor-modes .osm-vazby-actor-filter:focus-visible {\r\n            color:#1C4746 !important;\r\n            font-weight:700 !important;\r\n        }\r\n        .osm-vazby-actor-modes .osm-vazby-actor-filter.is-active {\r\n            color:#1C4746 !important;\r\n            background:transparent !important;\r\n            border-bottom-color:#1C4746 !important;\r\n        }\r\n\r\n        .osm-vazby-filter-apply,\r\n        .osm-vazby-filter-reset {\r\n            min-height:38px !important;\r\n            height:38px !important;\r\n            margin:0 !important;\r\n            padding:8px 16px !important;\r\n            border-radius:0 !important;\r\n            font-family:\"Open Sans\",sans-serif !important;\r\n            font-size:10px !important;\r\n            font-weight:600 !important;\r\n            letter-spacing:1.05px !important;\r\n            line-height:1 !important;\r\n            text-transform:uppercase !important;\r\n            white-space:nowrap !important;\r\n            cursor:pointer !important;\r\n        }\r\n        .osm-vazby-filter-apply { border:1px solid #1C4746 !important;background:#1C4746 !important;color:#fff !important; }\r\n        .osm-vazby-filter-reset { border:1px solid #FF5C00 !important;background:#FF5C00 !important;color:#fff !important;padding:8px 12px !important;width:auto !important;min-width:0 !important; }\r\n        .osm-vazby-filter-apply:hover { background:#fff !important;color:#1C4746 !important; }\r\n        .osm-vazby-filter-reset:hover { background:#fff !important;color:#FF5C00 !important; }\r\n\r\n        #osm-vazby-841693-support {\r\n            width:40px !important;min-width:40px !important;height:38px !important;min-height:38px !important;\r\n            margin:0 !important;padding:0 !important;align-self:end !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend,\r\n        #osm-vazby-people-legend-841693 { display:contents !important; }\r\n\r\n        #osm-vazby-841693-legend-title {\r\n            grid-row:2 !important;\r\n            grid-column:1 !important;\r\n            display:flex !important;\r\n            align-items:center !important;\r\n            width:100% !important;\r\n            min-height:30px !important;\r\n            margin:0 !important;\r\n            padding:0 !important;\r\n            border-bottom:1px solid rgba(28,71,70,.22) !important;\r\n            background:transparent !important;\r\n            color:#1C4746 !important;\r\n            font-size:10px !important;\r\n            font-weight:600 !important;\r\n            letter-spacing:1.35px !important;\r\n        }\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-legend-title { display:none !important; }\r\n\r\n        #osm-vazby-people-legend-841693 [data-person-filter=\"leadership\"] { grid-row:2 !important; grid-column:2 !important; }\r\n        #osm-vazby-841693-legend [data-relation-filter=\"membership\"] { grid-row:2 !important; grid-column:3 !important; }\r\n        #osm-vazby-841693-legend [data-relation-filter=\"cooperation\"] { grid-row:2 !important; grid-column:4 !important; }\r\n        #osm-vazby-841693-legend [data-relation-filter=\"association\"] { grid-row:2 !important; grid-column:5 !important; }\r\n        #osm-vazby-841693-legend [data-relation-filter=\"all\"] { grid-row:2 !important; grid-column:6 !important; }\r\n\r\n        #osm-vazby-people-legend-841693 [data-person-filter=\"person_membership\"],\r\n        #osm-vazby-people-legend-841693 [data-person-filter=\"person_association\"],\r\n        #osm-vazby-people-legend-841693 [data-person-filter=\"all\"] { display:none !important; }\r\n\r\n        #osm-vazby-841693-legend .osm-vazby-filter,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n            width:100% !important;min-width:0 !important;height:auto !important;min-height:30px !important;\r\n            margin:0 !important;padding:3px 0 !important;\r\n            border:0 !important;border-bottom:1px solid rgba(28,71,70,.22) !important;border-radius:0 !important;\r\n            background:transparent !important;color:#536b69 !important;box-shadow:none !important;opacity:1 !important;\r\n            font-size:10px !important;font-weight:400 !important;letter-spacing:.65px !important;\r\n            display:flex !important;align-items:center !important;justify-content:center !important;gap:7px !important;\r\n        }\r\n\r\n        #osm-vazby-841693-legend-title,\r\n        #osm-vazby-841693-legend .osm-vazby-filter,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter {\r\n            border-bottom:0 !important;\r\n            margin-top:4px !important;\r\n        }\r\n        #osm-vazby-841693-legend .osm-vazby-filter.is-active,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter.is-active {\r\n            border-bottom:0 !important;\r\n        }\r\n        #osm-vazby-841693-legend .osm-vazby-filter.is-active,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-filter.is-active {\r\n            background:rgba(28,71,70,.055) !important;color:#1C4746 !important;border-bottom-color:#1C4746 !important;\r\n        }\r\n        #osm-vazby-841693-legend .osm-vazby-filter-sample,\r\n        #osm-vazby-people-legend-841693 .osm-vazby-person-sample {\r\n            display:inline-block !important;position:relative !important;flex:0 0 58px !important;width:58px !important;height:16px !important;\r\n        }\r\n    }\r\n\r\n    \/* =====================================================\r\n     * OFICI\u00c1LN\u00cd STRUKTURY \u2013 ovlada\u010d vlevo + detailn\u00ed popup\r\n     * ===================================================== *\/\r\n    #osm-vazby-official-841693 {\r\n        position:absolute;\r\n        top:12px;\r\n        left:12px;\r\n        z-index:31;\r\n        display:none;\r\n        align-items:center;\r\n        min-height:32px;\r\n        padding:0 10px;\r\n        border:1px solid rgba(28,71,70,.22);\r\n        border-radius:0;\r\n        background:rgba(255,255,255,.94);\r\n        color:#1C4746;\r\n        box-shadow:0 3px 12px rgba(0,0,0,.06);\r\n        font-family:\"Open Sans\",sans-serif;\r\n        font-size:9.5px;\r\n        font-weight:600;\r\n        line-height:1.15;\r\n        letter-spacing:.85px;\r\n        text-transform:uppercase;\r\n        cursor:pointer;\r\n    }\r\n\r\n    #osm-vazby-official-841693.is-visible { display:inline-flex; }\r\n\r\n    #osm-vazby-official-841693:hover,\r\n    #osm-vazby-official-841693:focus-visible {\r\n        border-color:#1C4746;\r\n        background:#fff;\r\n        outline:none;\r\n    }\r\n\r\n    #osm-vazby-official-841693.is-active {\r\n        color:#FF5C00;\r\n        border-color:rgba(255,92,0,.52);\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 {\r\n        position:absolute;\r\n        z-index:45;\r\n        display:none;\r\n        width:min(340px,calc(100% - 48px));\r\n        box-sizing:border-box;\r\n        padding:20px 20px 22px;\r\n        background:rgba(255,255,255,.985);\r\n        border:1px solid rgba(28,71,70,.08);\r\n        border-radius:0;\r\n        box-shadow:0 12px 28px rgba(28,71,70,.14),0 3px 9px rgba(0,0,0,.10);\r\n        color:#1C4746;\r\n        font-family:\"Open Sans\",sans-serif;\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693.is-visible { display:block; }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-image {\r\n        display:block;\r\n        width:100%;\r\n        height:118px;\r\n        margin:0 0 14px;\r\n        padding:12px 14px;\r\n        box-sizing:border-box;\r\n        object-fit:contain;\r\n        object-position:center;\r\n        background:#f7f9f9;\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-title {\r\n        margin:0 28px 7px 0;\r\n        color:#FF5C00;\r\n        font-size:12.5px;\r\n        font-weight:400;\r\n        line-height:1.28;\r\n        text-transform:uppercase;\r\n        letter-spacing:.15px;\r\n        white-space:normal;\r\n        overflow-wrap:anywhere;\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-original,\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-country,\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-note {\r\n        margin:5px 0 0;\r\n        font-size:11.5px;\r\n        font-weight:300;\r\n        line-height:1.45;\r\n        white-space:normal;\r\n        overflow-wrap:anywhere;\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-note.is-collapsed {\r\n        display:-webkit-box;\r\n        -webkit-box-orient:vertical;\r\n        -webkit-line-clamp:2;\r\n        padding-right:46px;\r\n        position:relative;\r\n        overflow:hidden;\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-more {\r\n        display:inline;\r\n        width:auto;\r\n        max-width:none;\r\n        margin:0 0 0 4px;\r\n        padding:0;\r\n        border:0;\r\n        border-bottom:1px solid rgba(28,71,70,.20);\r\n        border-radius:0;\r\n        background:transparent;\r\n        color:#1C4746;\r\n        font-family:\"Open Sans\",sans-serif;\r\n        font-size:9.5px;\r\n        font-weight:600;\r\n        letter-spacing:.7px;\r\n        line-height:1.3;\r\n        text-transform:uppercase;\r\n        cursor:pointer;\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-note.is-collapsed .osm-official-popup-more {\r\n        position:absolute;\r\n        right:0;\r\n        bottom:0;\r\n        margin:0;\r\n        padding-left:4px;\r\n        background:rgba(255,255,255,.985);\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-note.is-collapsed .osm-official-popup-more::before {\r\n        content:'\u2026 ';\r\n        color:#1C4746;\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-more:hover,\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-more:focus-visible {\r\n        color:#FF5C00;\r\n        border-bottom-color:rgba(255,92,0,.35);\r\n        outline:none;\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-original {\r\n        color:#667171;\r\n        font-style:italic;\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-link {\r\n        display:block;\r\n        width:max-content;\r\n        max-width:100%;\r\n        margin-top:10px;\r\n        color:#FF5C00;\r\n        font-size:10px;\r\n        font-weight:600;\r\n        letter-spacing:.7px;\r\n        text-decoration:none;\r\n        text-transform:uppercase;\r\n        border-bottom:1px solid rgba(255,92,0,.35);\r\n    }\r\n\r\n    #osm-vazby-official-popup-841693 .osm-official-popup-close {\r\n        position:absolute;\r\n        top:8px;\r\n        right:8px;\r\n        width:26px;\r\n        height:26px;\r\n        padding:0;\r\n        border:0;\r\n        background:rgba(255,255,255,.88);\r\n        color:#1C4746;\r\n        font-size:18px;\r\n        line-height:1;\r\n        cursor:pointer;\r\n    }\r\n\r\n    @media (max-width:767px) {\r\n        #osm-vazby-official-popup-841693 {\r\n            width:min(340px,calc(100% - 32px));\r\n            padding:16px 16px 18px;\r\n        }\r\n\r\n        #osm-vazby-official-popup-841693 .osm-official-popup-image {\r\n            height:104px;\r\n            padding:10px 12px;\r\n        }\r\n\r\n        #osm-vazby-official-841693 {\r\n            top:8px;\r\n            left:8px;\r\n            max-width:205px;\r\n            min-height:29px;\r\n            padding:0 8px;\r\n            font-size:8.5px;\r\n        }\r\n    }\r\n\r\n    \/* OFICI\u00c1LN\u00cd STRUKTURY \u2013 drobn\u00fd nadpis + n\u00e1zev otev\u0159en\u00e9ho detailu *\/\r\n    #osm-vazby-official-841693 {\r\n        top:12px;\r\n        left:12px;\r\n        right:auto;\r\n        display:none;\r\n        align-items:baseline;\r\n        gap:10px;\r\n        max-width:calc(100% - 190px);\r\n        min-height:0;\r\n        padding:0;\r\n        border:0;\r\n        border-radius:0;\r\n        background:transparent;\r\n        box-shadow:none;\r\n        color:#1C4746;\r\n        font-size:10px;\r\n        font-weight:700;\r\n        line-height:1.25;\r\n        letter-spacing:.08em;\r\n        text-align:left;\r\n        white-space:nowrap;\r\n    }\r\n\r\n    #osm-vazby-official-841693.is-visible {\r\n        display:inline-flex;\r\n    }\r\n\r\n    #osm-vazby-official-841693::after {\r\n        content:'\u25bc';\r\n        min-width:0;\r\n        color:#1C4746;\r\n        font-size:10.5px;\r\n        font-weight:400;\r\n        line-height:1.25;\r\n        letter-spacing:.03em;\r\n        text-transform:uppercase;\r\n        white-space:normal;\r\n        overflow-wrap:anywhere;\r\n    }\r\n\r\n    #osm-vazby-official-841693:hover,\r\n    #osm-vazby-official-841693:focus-visible {\r\n        color:#FF5C00;\r\n        border:0;\r\n        background:transparent;\r\n        box-shadow:none;\r\n        outline:none;\r\n    }\r\n\r\n    #osm-vazby-official-841693:hover::after,\r\n    #osm-vazby-official-841693:focus-visible::after {\r\n        color:#FF5C00;\r\n    }\r\n\r\n    #osm-vazby-official-841693.is-active {\r\n        color:#1C4746;\r\n        border:0;\r\n        background:transparent;\r\n    }\r\n\r\n    #osm-vazby-official-841693.is-active:hover,\r\n    #osm-vazby-official-841693.is-active:focus-visible {\r\n        color:#FF5C00;\r\n    }\r\n\r\n    @media (max-width:767px) {\r\n        #osm-vazby-official-841693 {\r\n            top:8px;\r\n            left:8px;\r\n            max-width:calc(100% - 90px);\r\n            gap:6px 8px;\r\n            flex-wrap:wrap;\r\n            font-size:9px;\r\n            white-space:normal;\r\n        }\r\n\r\n        #osm-vazby-official-841693::after {\r\n            font-size:9.5px;\r\n        }\r\n    }\r\n\r\n    <\/style>\r\n\r\n\r\n    <div\r\n        id=\"osm-vazby-841693-wrap\"\r\n    >\r\n\r\n        <div\r\n            id=\"osm-vazby-841693-toolbar\"\r\n        >\r\n\r\n            <div\r\n                id=\"osm-vazby-841693-controls\"\r\n            >\r\n\r\n                <button\r\n                    type=\"button\"\r\n                    id=\"osm-vazby-reset-841693\"\r\n                    class=\"osm-vazby-filter-reset\"\r\n                >\r\n                    CLEAR FILTERS                <\/button>\r\n\r\n\r\n                                <select\r\n                    id=\"osm-vazby-select-841693\"\r\n                    class=\"osm-vazby-top-select\"\r\n                >\r\n\r\n                    <option value=\"\">\r\n                        SELECT AN ACTOR                    <\/option>\r\n\r\n                <\/select>\r\n\r\n                <select\r\n                    id=\"osm-vazby-category-841693\" hidden aria-hidden=\"true\"\r\n                    class=\"osm-vazby-top-select\"\r\n                    data-filter-label=\"CATEGORY\"\r\n                >\r\n                    <option value=\"\">\r\n                        All categories                    <\/option>\r\n                                            <option value=\"83\">\r\n                            CIVIC INITIATIVES                        <\/option>\r\n                                            <option value=\"949\">\r\n                            INDEPENDENCE                        <\/option>\r\n                                            <option value=\"711\">\r\n                            INTERVIEWS                        <\/option>\r\n                                            <option value=\"567\">\r\n                            MARTIN CHARV\u00c1T&#039;S BELARUSIAN COLUMN                        <\/option>\r\n                                            <option value=\"77\">\r\n                            MILITARY UNITS                        <\/option>\r\n                                            <option value=\"1864\">\r\n                            OBITUARY                        <\/option>\r\n                                            <option value=\"950\">\r\n                            OVERVIEWS                        <\/option>\r\n                                            <option value=\"82\">\r\n                            PARTISAN GROUPS                        <\/option>\r\n                                            <option value=\"570\">\r\n                            PAVEL VESELSK\u00dd\u2019S HISTORICAL PERSPECTIVE                        <\/option>\r\n                                            <option value=\"81\">\r\n                            POLITICAL INITIATIVES                        <\/option>\r\n                                            <option value=\"11\">\r\n                            Uncategorized                        <\/option>\r\n                                            <option value=\"951\">\r\n                            VOICE OF THE RESISTANCE MOVEMENT                        <\/option>\r\n                                            <option value=\"1315\">\r\n                            WRITE LETTERS                        <\/option>\r\n                                    <\/select>\r\n\r\n                <select\r\n                    id=\"osm-vazby-event-841693\"\r\n                    class=\"osm-vazby-top-select\"\r\n                    data-filter-label=\"EVENT\"\r\n                >\r\n                    <option value=\"\">\r\n                        All events                    <\/option>\r\n                                            <option value=\"41564\">\r\n                            15th Free Russia Forum                        <\/option>\r\n                                            <option value=\"37273\">\r\n                            A memorial at the last address of Anna Politkovskaya                        <\/option>\r\n                                            <option value=\"38862\">\r\n                            Appeal to the Governor of the Belgorod Region                        <\/option>\r\n                                            <option value=\"38995\">\r\n                            Arson attack on a vehicle with Z symbols                        <\/option>\r\n                                            <option value=\"38981\">\r\n                            Attack on Aircraft Repair Plant No. 711                        <\/option>\r\n                                            <option value=\"39007\">\r\n                            Attack on the Kirishi Refinery (Kirishinefteorgsintez)                        <\/option>\r\n                                            <option value=\"39004\">\r\n                            Attack on the Orenburg Gas and Helium Complex                        <\/option>\r\n                                            <option value=\"39997\">\r\n                            Auction and collection to support Russian volunteers on the Ukrainian side                        <\/option>\r\n                                            <option value=\"37242\">\r\n                            Belarusian partisans damaged a Russian Beriev A-50 aircraft                        <\/option>\r\n                                            <option value=\"38671\">\r\n                            Black Bridge joins the Freedom of Russia Legion                        <\/option>\r\n                                            <option value=\"39860\">\r\n                            Conference on the International Status of the Chechen Republic of Ichkeria                        <\/option>\r\n                                            <option value=\"39714\">\r\n                            Conference \u201cThe Caucasus as the Key to the Disintegration of the Russian Federation\u201d                        <\/option>\r\n                                            <option value=\"37281\">\r\n                            Counter-terrorism operation against the legions                        <\/option>\r\n                                            <option value=\"38859\">\r\n                            Declaration of Cooperation with the Freedom of Russia Legion                        <\/option>\r\n                                            <option value=\"39862\">\r\n                            Declaration of the Citizens of New Russia                        <\/option>\r\n                                            <option value=\"40762\">\r\n                            Derailment of tanker train by KPD partisans                        <\/option>\r\n                                            <option value=\"37748\">\r\n                            Destruction of two Ruslans | Freedom of Russia Legion partisans                        <\/option>\r\n                                            <option value=\"37759\">\r\n                            Disclosure of Operation Rybalka                        <\/option>\r\n                                            <option value=\"40658\">\r\n                            Elections to the Council of People\u2019s Representatives of the Udmurt Republic                        <\/option>\r\n                                            <option value=\"38863\">\r\n                            Elimination of Colonel Andrey Stesev                        <\/option>\r\n                                            <option value=\"37291\">\r\n                            Establishment of the Congress of People\u2019s Deputies                        <\/option>\r\n                                            <option value=\"39861\">\r\n                            First Meeting of Russian Democratic Representatives at PACE                        <\/option>\r\n                                            <option value=\"39887\">\r\n                            First series of online referendums on self-determination and independence for RF regions                        <\/option>\r\n                                            <option value=\"37287\">\r\n                            Funeral Goods Warehouse                        <\/option>\r\n                                            <option value=\"38987\">\r\n                            Gas pipelines supplying military production plants destroyed                        <\/option>\r\n                                            <option value=\"37283\">\r\n                            Headquarters of the FSB Border Service                        <\/option>\r\n                                            <option value=\"39869\">\r\n                            HUR Operation Involving the Faked Death of Denis Kapustin                        <\/option>\r\n                                            <option value=\"38860\">\r\n                            Incursion into the Belgorod Region                        <\/option>\r\n                                            <option value=\"38868\">\r\n                            Interview with Commander Ammosov on Radio Free Europe                        <\/option>\r\n                                            <option value=\"37221\">\r\n                            Irpin Declaration                        <\/option>\r\n                                            <option value=\"41202\">\r\n                            Karelian Uprising Center                        <\/option>\r\n                                            <option value=\"39874\">\r\n                            Kuban Partisan Movement Sets Fire to Tugboat in Port Kavkaz                        <\/option>\r\n                                            <option value=\"38869\">\r\n                            Le Figaro article on the Siberian Battalion                        <\/option>\r\n                                            <option value=\"38870\">\r\n                            Mediazona\u2019s Interview with Ildar Dadin                        <\/option>\r\n                                            <option value=\"38221\">\r\n                            Memorandum of Cooperation Between the Caucasian Union, the In the Name of Georgia Movement, and the Political Wing of the Freedom of Russia Legion                        <\/option>\r\n                                            <option value=\"39880\">\r\n                            Memorandum on Supporting Russian Volunteers Fighting Against Putin\u2019s Regime                        <\/option>\r\n                                            <option value=\"37269\">\r\n                            Memorial at the site of Boris Nemtsov\u2019s murder                        <\/option>\r\n                                            <option value=\"38663\">\r\n                            Pavilion of (Dis)Sent                        <\/option>\r\n                                            <option value=\"39665\">\r\n                            Press conference following the incursion into the Belgorod region                        <\/option>\r\n                                            <option value=\"37279\">\r\n                            Protest against the exclusion of Yabloko from the elections                        <\/option>\r\n                                            <option value=\"37277\">\r\n                            Protest following the Baltic Way                        <\/option>\r\n                                            <option value=\"39065\">\r\n                            Railway relay cabinet destroyed in the Belgorod region                        <\/option>\r\n                                            <option value=\"37747\">\r\n                            Round Table of the Armed Wing of the Russian Opposition                        <\/option>\r\n                                            <option value=\"41260\">\r\n                            Sabotage of fuel distribution                        <\/option>\r\n                                            <option value=\"39005\">\r\n                            Sabotage of the Belousovo\u2013Leningrad Pipeline                        <\/option>\r\n                                            <option value=\"39006\">\r\n                            Sabotage of the Konnaya Lakhta Gas Pipeline                        <\/option>\r\n                                            <option value=\"37248\">\r\n                            Sabotage Operations by HUR and the Siberian Battalion                        <\/option>\r\n                                            <option value=\"39888\">\r\n                            Second series of online referendums on self-determination and independence of RF regions                        <\/option>\r\n                                            <option value=\"39895\">\r\n                            Second Session of the Congress of People\u2019s Deputies                        <\/option>\r\n                                            <option value=\"38872\">\r\n                            Siberian Battalion, LSR, and RVC enter Russian territory                        <\/option>\r\n                                            <option value=\"39863\">\r\n                            Sweden raised the issue of the Russian occupation of Ichkeria                        <\/option>\r\n                                            <option value=\"39985\">\r\n                            The Fifth Anti-War Conference of the Free Russia Forum and the adoption of a resolution on forms of resistance and support for Ukraine                        <\/option>\r\n                                            <option value=\"37250\">\r\n                            The Second Incursion of the Russian Legions                        <\/option>\r\n                                            <option value=\"37275\">\r\n                            Transshipment Storage Complex                        <\/option>\r\n                                            <option value=\"37295\">\r\n                            Two sixteen-year-old Ukrainian partisans killed in shootout with occupiers                        <\/option>\r\n                                            <option value=\"38670\">\r\n                            \u010cern\u00fd Most Joins the Coalition                        <\/option>\r\n                                            <option value=\"38669\">\r\n                            \u010cern\u00fd Most takes over the activities of the Stop the Wagons initiative                        <\/option>\r\n                                    <\/select>\r\n\r\n                <div class=\"osm-vazby-actor-type-group\">\r\n                    <span class=\"osm-vazby-control-label\">ACTOR TYPE<\/span>\r\n                    <div class=\"osm-vazby-actor-modes\">\r\n                        <button type=\"button\" class=\"osm-vazby-actor-filter\" data-actor-filter=\"initiatives\" aria-pressed=\"false\">INITIATIVES<\/button>\r\n                        <button type=\"button\" class=\"osm-vazby-actor-filter\" data-actor-filter=\"people\" aria-pressed=\"false\">PEOPLE<\/button>\r\n                        <button type=\"button\" class=\"osm-vazby-actor-filter is-active\" data-actor-filter=\"all\" aria-pressed=\"true\">ALL<\/button>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <button\r\n                    type=\"button\"\r\n                    id=\"osm-vazby-apply-841693\"\r\n                    class=\"osm-vazby-filter-apply\"\r\n                >\r\n                    APPLY                <\/button>\r\n\r\n                <div\r\n                    id=\"osm-vazby-841693-support\"\r\n                    class=\"osm-vazby-support-slot\"\r\n                >\r\n                                    <\/div>\r\n\r\n                <button\r\n                    type=\"button\"\r\n                    id=\"osm-vazby-people-841693\"\r\n                    aria-pressed=\"false\"\r\n                >\r\n                    SHOW PEOPLE                <\/button>\r\n\r\n            <\/div>\r\n\r\n            <div\r\n                id=\"osm-vazby-841693-legend\"\r\n                aria-label=\"Filtr vazeb\"\r\n            >\r\n\r\n                <span id=\"osm-vazby-841693-legend-title\">\r\n                    RELATION TYPE                <\/span>\r\n\r\n                <button\r\n                    type=\"button\"\r\n                    class=\"osm-vazby-filter\"\r\n                    data-relation-filter=\"membership\"\r\n                    aria-pressed=\"false\"\r\n                >\r\n                    <span\r\n                        class=\"osm-vazby-filter-sample membership\"\r\n                        aria-hidden=\"true\"\r\n                    >\r\n                        <span class=\"shaft\"><\/span>\r\n                        <span class=\"arrow right\"><\/span>\r\n                    <\/span>\r\n\r\n                    <span>\r\n                        Membership                    <\/span>\r\n                <\/button>\r\n\r\n\r\n                <button\r\n                    type=\"button\"\r\n                    class=\"osm-vazby-filter\"\r\n                    data-relation-filter=\"cooperation\"\r\n                    aria-pressed=\"false\"\r\n                >\r\n                    <span\r\n                        class=\"osm-vazby-filter-sample cooperation\"\r\n                        aria-hidden=\"true\"\r\n                    >\r\n                        <span class=\"shaft\"><\/span>\r\n                        <span class=\"arrow left\"><\/span>\r\n                        <span class=\"arrow right\"><\/span>\r\n                    <\/span>\r\n\r\n                    <span>\r\n                        Cooperation                    <\/span>\r\n                <\/button>\r\n\r\n\r\n                <button\r\n                    type=\"button\"\r\n                    class=\"osm-vazby-filter\"\r\n                    data-relation-filter=\"association\"\r\n                    aria-pressed=\"false\"\r\n                >\r\n                    <span\r\n                        class=\"osm-vazby-filter-sample association\"\r\n                        aria-hidden=\"true\"\r\n                    >\r\n                        <span class=\"shaft\"><\/span>\r\n                        <span class=\"arrow left\"><\/span>\r\n                        <span class=\"arrow right\"><\/span>\r\n                    <\/span>\r\n\r\n                    <span>\r\n                        Association                    <\/span>\r\n                <\/button>\r\n\r\n\r\n\r\n            <\/div>\r\n\r\n\r\n            <div\r\n                id=\"osm-vazby-people-legend-841693\"\r\n                aria-label=\"PEOPLE:\"\r\n            >\r\n\r\n                <span class=\"osm-vazby-person-legend-title\">\r\n                    PEOPLE:                <\/span>\r\n\r\n                <button\r\n                    type=\"button\"\r\n                    class=\"osm-vazby-person-filter\"\r\n                    data-person-filter=\"leadership\"\r\n                    aria-pressed=\"false\"\r\n                >\r\n                    <span\r\n                        class=\"osm-vazby-person-sample leadership\"\r\n                        aria-hidden=\"true\"\r\n                    >\r\n                        <span class=\"shaft\"><\/span>\r\n                        <span class=\"arrow left\"><\/span>\r\n                    <\/span>\r\n\r\n                    <span>\r\n                        Leadership                    <\/span>\r\n                <\/button>\r\n\r\n\r\n            <\/div>\r\n\r\n        <\/div>\r\n\r\n\r\n        <div\r\n            id=\"osm-vazby-stage-841693\"\r\n        >\r\n\r\n            <button\r\n                type=\"button\"\r\n                id=\"osm-vazby-official-841693\"\r\n                class=\"osm-vazby-official-toggle\"\r\n                aria-pressed=\"false\"\r\n            >\r\n                OFFICIAL-STRUCTURE LINKS            <\/button>\r\n\r\n            <div\r\n                id=\"osm-vazby-official-popup-841693\"\r\n                aria-live=\"polite\"\r\n            ><\/div>\r\n\r\n            <div\r\n                id=\"osm-vazby-841693-zoom\"\r\n                class=\"osm-vazby-zoom\"\r\n                aria-label=\"Zoom\"\r\n            >\r\n                <button\r\n                    type=\"button\"\r\n                    data-osm-zoom=\"out\"\r\n                    aria-label=\"Zoom out\"\r\n                >\u2212<\/button>\r\n\r\n                <button\r\n                    type=\"button\"\r\n                    data-osm-zoom=\"reset\"\r\n                    aria-label=\"Default zoom\"\r\n                >100 %<\/button>\r\n\r\n                <button\r\n                    type=\"button\"\r\n                    data-osm-zoom=\"in\"\r\n                    aria-label=\"Zoom in\"\r\n                >+<\/button>\r\n            <\/div>\r\n\r\n            <div\r\n                id=\"osm-vazby-841693\"\r\n            ><\/div>\r\n\r\n\r\n            <div\r\n                id=\"osm-vazby-labels-841693\"\r\n            ><\/div>\r\n\r\n\r\n            <div\r\n                id=\"osm-vazby-tooltip-841693\"\r\n            ><\/div>\r\n\r\n        <\/div>\r\n\r\n    <\/div>\r\n\r\n\r\n    <script data-jetpack-boost=\"ignore\" data-jetpack-boost=\"ignore\"\r\n        src=\"https:\/\/unpkg.com\/cytoscape@3.30.2\/dist\/cytoscape.min.js\"\r\n    ><\/script>\r\n\r\n\r\n    <script data-jetpack-boost=\"ignore\" data-jetpack-boost=\"ignore\" id=\"osm-vazby-runtime\">\r\n\r\n    (function () {\r\n\r\n        function osmVazbyStart() {\r\n\r\n            if (\r\n                typeof cytoscape ===\r\n                'undefined'\r\n            ) {\r\n\r\n                setTimeout(\r\n                    osmVazbyStart,\r\n                    100\r\n                );\r\n\r\n                return;\r\n            }\r\n\r\n\r\n            const container =\r\n                document.getElementById(\r\n                    \"osm-vazby-841693\"                );\r\n\r\n\r\n            const stage =\r\n                document.getElementById(\r\n                    \"osm-vazby-stage-841693\"                );\r\n\r\n\r\n            const zoomControls =\r\n                document.getElementById(\r\n                    \"osm-vazby-841693-zoom\"                );\r\n\r\n            const zoomButtons = zoomControls\r\n                ? Array.from(\r\n                    zoomControls.querySelectorAll('[data-osm-zoom]')\r\n                )\r\n                : [];\r\n\r\n            let officialButton =\r\n                document.getElementById(\r\n                    \"osm-vazby-official-841693\"                );\r\n\r\n            let officialPopup =\r\n                document.getElementById(\r\n                    \"osm-vazby-official-popup-841693\"                );\r\n\r\n            if (!officialButton) { officialButton = document.createElement('button'); }\r\n            if (!officialPopup) { officialPopup = document.createElement('div'); }\r\n\r\n            const officialWebsiteLabel =\r\n                \"Official website\";\r\n\r\n            const officialCountryLabel =\r\n                \"Country\";\r\n\r\n            const officialMoreLabel =\r\n                \"More\";\r\n\r\n            const officialLessLabel =\r\n                \"Less\";\r\n\r\n\r\n            const labelsLayer =\r\n                document.getElementById(\r\n                    \"osm-vazby-labels-841693\"                );\r\n\r\n\r\n            const tooltip =\r\n                document.getElementById(\r\n                    \"osm-vazby-tooltip-841693\"                );\r\n\r\n\r\n                        const select =\r\n                document.getElementById(\r\n                    \"osm-vazby-select-841693\"                );\r\n\r\n            const categorySelect =\r\n                document.getElementById(\r\n                    \"osm-vazby-category-841693\"                );\r\n\r\n            const eventSelect =\r\n                document.getElementById(\r\n                    \"osm-vazby-event-841693\"                );\r\n\r\n\r\n            const allButton =\r\n                document.getElementById(\r\n                    \"osm-vazby-reset-841693\"                );\r\n\r\n            const applyButton =\r\n                document.getElementById(\r\n                    \"osm-vazby-apply-841693\"                );\r\n\r\n\r\n            const toolbar =\r\n                document.getElementById(\r\n                    \"osm-vazby-841693-toolbar\"                );\r\n\r\n\r\n            const supportSlot =\r\n                document.getElementById(\r\n                    \"osm-vazby-841693-support\"                );\r\n\r\n\r\n            const peopleButton =\r\n                document.getElementById(\r\n                    \"osm-vazby-people-841693\"                );\r\n\r\n\r\n            const peopleLegend =\r\n                document.getElementById(\r\n                    \"osm-vazby-people-legend-841693\"                );\r\n\r\n\r\n            const personFilterButtons =\r\n                Array.from(\r\n                    document.querySelectorAll(\r\n                        '#osm-vazby-people-legend-841693 [data-person-filter]'\r\n                    )\r\n                );\r\n\r\n\r\n            const relationFilterButtons =\r\n                Array.from(\r\n                    document.querySelectorAll(\r\n                        '#osm-vazby-841693-legend [data-relation-filter]'\r\n                    )\r\n                );\r\n\r\n            const actorFilterButtons =\r\n                Array.from(\r\n                    document.querySelectorAll(\r\n                        '#osm-vazby-841693-toolbar [data-actor-filter]'\r\n                    )\r\n                );\r\n\r\n\r\n            if (\r\n                !container ||\r\n                !stage ||\r\n                !labelsLayer ||\r\n                !tooltip ||\r\n                                !select ||\r\n                !categorySelect ||\r\n                !eventSelect ||\r\n                !allButton ||\r\n                !applyButton ||\r\n                !toolbar ||\r\n                !officialButton ||\r\n                !officialPopup ||\r\n                !peopleButton ||\r\n                !peopleLegend ||\r\n                !personFilterButtons.length ||\r\n                !relationFilterButtons.length\r\n            ) {\r\n                return;\r\n            }\r\n\r\n\r\n            const eventContextBar = document.createElement('div');\r\n            eventContextBar.className = 'osm-vazby-event-context';\r\n            eventContextBar.hidden = true;\r\n            eventContextBar.style.cssText =\r\n                'display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-height:30px;' +\r\n                'margin:0;padding:0;' +\r\n                'font-family:Open Sans,sans-serif;font-size:9px;font-weight:500;' +\r\n                'letter-spacing:1.1px;text-transform:uppercase;color:#1C4746;' +\r\n                'position:absolute;top:52px;right:12px;z-index:31;text-align:right;';\r\n\r\n            stage.appendChild(eventContextBar);\r\n\r\n            const eventArticlesLabel =\r\n                \"Relevant articles\";\r\n\r\n            const eventMapLabel =\r\n                \"Show on map\";\r\n\r\n            function hideEventContext() {\r\n                eventContextBar.hidden = true;\r\n                eventContextBar.innerHTML = '';\r\n            }\r\n\r\n            function showEventContext(eventFilter) {\r\n                eventContextBar.innerHTML = '';\r\n\r\n                if (!eventFilter) {\r\n                    hideEventContext();\r\n                    return;\r\n                }\r\n\r\n                const articles = Array.isArray(eventFilter.articles)\r\n                    ? eventFilter.articles\r\n                    : [];\r\n\r\n                if (articles.length) {\r\n                    const details = document.createElement('details');\r\n                    details.style.position = 'relative';\r\n                    details.style.order = '2';\r\n\r\n                    const summary = document.createElement('summary');\r\n                    summary.textContent =\r\n                        eventArticlesLabel + ' (' + articles.length + ')';\r\n                    summary.style.cssText =\r\n                        'cursor:pointer;list-style:none;color:#1C4746;' +\r\n                        'border-bottom:1px solid rgba(28,71,70,.22);padding:2px 0;';\r\n                    details.appendChild(summary);\r\n\r\n                    const list = document.createElement('div');\r\n                    list.style.cssText =\r\n                        'position:absolute;right:0;left:auto;top:calc(100% + 6px);' +\r\n                        'width:min(280px,60vw);background:#fff;' +\r\n                        'box-shadow:0 8px 24px rgba(0,0,0,.12);padding:8px 10px;' +\r\n                        'z-index:50;text-transform:none;letter-spacing:0;font-size:12px;';\r\n\r\n                    articles.forEach(function (article) {\r\n                        const link = document.createElement('a');\r\n                        link.href = String(article.url || '#');\r\n                        link.textContent = String(article.title || '');\r\n                        link.style.cssText =\r\n                            'display:block;padding:5px 0;color:#1C4746;text-decoration:none;transition:color .15s ease;';\r\n                        link.addEventListener('mouseenter', function () {\r\n                            link.style.color = '#FF5C00';\r\n                        });\r\n                        link.addEventListener('mouseleave', function () {\r\n                            link.style.color = '#1C4746';\r\n                        });\r\n                        list.appendChild(link);\r\n                    });\r\n\r\n                    details.appendChild(list);\r\n                    eventContextBar.appendChild(details);\r\n                }\r\n\r\n                if (eventFilter.map_available && eventFilter.map_url) {\r\n                    const mapLink = document.createElement('a');\r\n                    mapLink.href = String(eventFilter.map_url);\r\n                    mapLink.textContent = eventMapLabel;\r\n                    mapLink.style.cssText =\r\n                        'color:#FF5C00;text-decoration:none;border-bottom:1px solid rgba(255,92,0,.28);' +\r\n                        'padding:2px 0;white-space:nowrap;order:1;';\r\n                    eventContextBar.appendChild(mapLink);\r\n                }\r\n\r\n                eventContextBar.hidden = !eventContextBar.children.length;\r\n            }\r\n\r\n            \/*\r\n             * =====================================================\r\n             * PODPORA VIZUALIZACE \u2013 POLOHA B\u00cdL\u00c9 KARTY\r\n             * =====================================================\r\n             *\r\n             * Srdce je samostatn\u011b hned za zkr\u00e1cen\u00fdm selectem.\r\n             * B\u00edl\u00e9 kart\u011b dopo\u010d\u00edt\u00e1me, jak hluboko m\u00e1 za\u010d\u00edt,\r\n             * aby byla v\u017edy a\u017e POD cel\u00fdm toolbarem a nic nezakr\u00fdvala.\r\n             *\/\r\n            function updateSupportPanelPosition() {\r\n\r\n                if (\r\n                    !supportSlot ||\r\n                    !toolbar\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const supportCta =\r\n                    supportSlot.querySelector(\r\n                        '.osm-support-cta--variant-vazby'\r\n                    );\r\n\r\n\r\n                if (!supportCta) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const toolbarRect =\r\n                    toolbar.getBoundingClientRect();\r\n\r\n\r\n                const ctaRect =\r\n                    supportCta.getBoundingClientRect();\r\n\r\n\r\n                const panelTop =\r\n                    Math.max(\r\n                        58,\r\n                        toolbarRect.bottom - ctaRect.top + 8\r\n                    );\r\n\r\n\r\n                supportCta.style.setProperty(\r\n                    '--osm-vazby-panel-top',\r\n                    panelTop + 'px'\r\n                );\r\n            }\r\n\r\n\r\n            updateSupportPanelPosition();\r\n\r\n\r\n            window.addEventListener(\r\n                'resize',\r\n                updateSupportPanelPosition,\r\n                { passive: true }\r\n            );\r\n\r\n\r\n            \/*\r\n             * Toolbar m\u011bn\u00ed v\u00fd\u0161ku p\u0159i zobrazen\u00ed \/ skryt\u00ed osobnost\u00ed.\r\n             * Karta se proto sama znovu usad\u00ed pod n\u011bj.\r\n             *\/\r\n            if (\r\n                'ResizeObserver' in window\r\n            ) {\r\n\r\n                const supportToolbarObserver =\r\n                    new ResizeObserver(\r\n                        updateSupportPanelPosition\r\n                    );\r\n\r\n\r\n                supportToolbarObserver.observe(\r\n                    toolbar\r\n                );\r\n            }\r\n\r\n\r\n            const originalData =\r\n                {\"nodes\":[{\"data\":{\"id\":\"30530\",\"label\":\"Algiz\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/algiz\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/Algiz.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27306\",\"label\":\"ALLIANCE of Indigenous Nations\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/alliance-of-indigenous-peoples\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-8-scaled.png?fit=2560%2C2560\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27310\",\"label\":\"Anti-Imperial Block of Nations\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/anti-imperialist-peoples-bloc\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-9-scaled.png?fit=2560%2C2560\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"40418\",\"label\":\"Baltic Republican Party\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/baltic-republican-party\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-17T073548.315.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"26414\",\"label\":\"Belgorod People\u2019s Republic\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/belgorod-peoples-republic\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-Prispevek-na-LinkedIn-4.png?fit=1200%2C1200\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27313\",\"label\":\"Belarusian Volunteer Corps\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/belarusian-volunteer-corps\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-10.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"26430\",\"label\":\"Berdyansk Partisan Army\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/berdansk-partisan-army\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-5-scaled.png?fit=2560%2C2560\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27427\",\"label\":\"White Bear\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/bily-medved\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/Znovu-20-3.png?fit=1200%2C1200\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27428\",\"label\":\"BOAK\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/anarcho-communist-combat-organization-boak\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/05db8651-2820-49df-83e7-440e57697b81.png?fit=485%2C482\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27968\",\"label\":\"Pavel Kushnir\u2019s UAV\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/bpla-sfo\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/fad67682-229a-498e-8200-3e28d55e275e.png?fit=1200%2C1200\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"41449\",\"label\":\"Bratstvo\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/banner-brotherhood\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/10\/Bratstvo.png?fit=444%2C444\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27970\",\"label\":\"BYPOL\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/bypol\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/kartoteka-33.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27978\",\"label\":\"Chechen Republic of Ichkeria\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/chechen-republic-of-ichkeria\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/kartoteka-45.webp?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27982\",\"label\":\"Chechen United Force\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/chechen-united-force\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-30.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39935\",\"label\":\"Circassian Congress\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/circassian-congress\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Cerkesky-kongres.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"25739\",\"label\":\"Black Spark\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/black-spark\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/kartoteka-83.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27986\",\"label\":\"Black Bridge\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/black-bridge\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/79ae6e1b-1781-402e-a729-471fa34e9352.png?fit=640%2C640\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39939\",\"label\":\"Chuvash-Volga-Bulgarian Diplomatic Council\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/cuvass-volga-bulgarian-diplomatic-council\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Cuvasa.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"34048\",\"label\":\"Dagestan National Center\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/dagestan-national-center\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/karta-34.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39008\",\"label\":\"DRG Caucasus\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/drg-caucasus\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/%D0%AD%D0%BC%D0%B1%D0%BB%D0%B5%D0%BC%D0%B0_%D0%9C%D1%83%D1%81%D1%83%D0%BB%D1%8C%D0%BC%D0%B0%D0%BD%D1%81%D0%BA%D0%BE%D0%B3%D0%BE_%D0%BA%D0%BE%D1%80%D0%BF%D1%83%D1%81%D0%B0_%D0%9A%D0%B0%D0%B2%D0%BA%D0%B0%D0%B7.png?fit=640%2C640\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"29667\",\"label\":\"Exile Government of Independent Tatarstan\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/parliament-in-exile-of-independent-tatarstan\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/tatarstan-1.png?fit=1254%2C1254\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27997\",\"label\":\"Free Russia Forum\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/free-russia-forum\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-31.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28003\",\"label\":\"Free Nations of Post-Russia Forum\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/forum-of-free-nations-post-russia\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-34.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28005\",\"label\":\"Georgian National Legion\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/georgian-national-legion\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-35.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"36261\",\"label\":\"Freedom of Russia Movement\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/russian-freedom-movement\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-100.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28008\",\"label\":\"ITER AD ORTUS\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/iter-ad-ortus\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/9d9d8f3b-e725-480c-8e41-a0dfa24e28b5.jpg?fit=320%2C320\\u0026quality=89\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28009\",\"label\":\"Get Lost\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/walking-through-the-forest\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-36.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"31518\",\"label\":\"United Transitional Cabinet of Belarus\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/unified-transitional-cabinet-of-belarus\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/ChatGPT-Image-15.-7.-2026-17_03_20.png?fit=1024%2C1024\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"30541\",\"label\":\"We Are the Black Folk\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/we-are-black-people\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/Jsme-cerny-lid.webp?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28011\",\"label\":\"Karelian Group \u201cNorth\u201d\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/karelian-group-north\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-37.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28013\",\"label\":\"Karelian National Movement\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/karelian-national-movement\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-38.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28001\",\"label\":\"Caucasian Legion\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/caucasus-legion-zviad-gamsakhurdia\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-33.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27999\",\"label\":\"Caucasus Union\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/caucasus-union\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-32.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"25744\",\"label\":\"COALITION of Indigenous Nations\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/coalition\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/c263f1b9-abd9-4647-9aed-667727e33d43.jpeg?fit=640%2C640\\u0026quality=89\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28015\",\"label\":\"Crimean partisans\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/krymsti-partyzani\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/Znovu-20-2.png?fit=1200%2C1200\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28016\",\"label\":\"Kuban Rebel Movement\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/cuban-rebel-movement\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-39.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28018\",\"label\":\"Cyber-partisans\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/kyberpartyzani\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-40.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28020\",\"label\":\"Freedom of Russia Legion\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/legion-freedom-russia\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-41.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28024\",\"label\":\"People\u2019s Vanguard\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/peoples-vanguard\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/predvoj-3.png?fit=1485%2C1485\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28026\",\"label\":\"League of Free Nations\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/league-of-free-nations\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-44.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39934\",\"label\":\"Malinov\u00fd kl\u00edn\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/raspberry-wedge\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Malinovy-klin.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28028\",\"label\":\"National Republican Army\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/national-republican-army\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-45.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39936\",\"label\":\"Supreme Council of the Nogai People\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/supreme-council-of-the-nogai-people\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Nogai-EI.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"31152\",\"label\":\"Nemtsov Bridge\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/nemcovuv-bridge\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"37912\",\"label\":\"Nomad\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/nomad\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/predvoj-25.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"34396\",\"label\":\"Civic Council\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/civic-council\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-53.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"40802\",\"label\":\"OBON\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/obon\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-22T182406.056.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"36263\",\"label\":\"Freedom of Russia Resistance\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/resistance-freedom-russia\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-80.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28022\",\"label\":\"Free Cossack Unit\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/oddil-svobodnych-kozaku\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-42.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"38921\",\"label\":\"Liberator\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/liberator\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-13T054211.497.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27972\",\"label\":\"Armed Forces of the Chechen Republic of Ichkeria\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/chechen-peoples-army\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/kartoteka-38.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"36253\",\"label\":\"Kastu\u015b Kalino\u016dski Regiment\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/kalinousky-regiment\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-98.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39009\",\"label\":\"Descendant of Cain\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/descendant-of-kainu\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/728e2fa8-215d-458c-a9f3-8f921b684713.webp?fit=940%2C788\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"33977\",\"label\":\"Dzhokhar Dudayev Battalion\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/dzokhar-dudayevs-battalion\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/predvoj-27.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"34138\",\"label\":\"Imam Shamil Battalion\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/imam-samils-flag\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/karta-37.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"34135\",\"label\":\"CRIMEA Battalion\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/crimea-flag\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/karta-38.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"33991\",\"label\":\"Sheikh Mansur Battalion\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/sejka-mansura-banner\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/predvoj-29.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39010\",\"label\":\"The Right of Might\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/right-wing-forces\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-13T045736.758.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27493\",\"label\":\"Direct action\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/great-event\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/Prima-akce.png?fit=1200%2C1200\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"33753\",\"label\":\"Anti-war sick leave\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/anti-war-sick-leave\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/predvoj-10.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27491\",\"label\":\"RENAISSANCE\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/united-resistance\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/predvoj-18.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"34045\",\"label\":\"Rospartizan\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/rospartizan\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/karta-33.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39011\",\"label\":\"Bashkort Company\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/rota-baskort\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-13T054752.549.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39012\",\"label\":\"Russian Diaspora of Armenia\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/russian-diaspora-armenia\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/Armenie.png?fit=1200%2C1200\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"31509\",\"label\":\"Russian Volunteer Corps\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/russian-volunteer-corps-rdc\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-3.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39013\",\"label\":\"Russian Maidan | D-SORM\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/russian-maidan-percent-d0-percent-b4-percent-d1-percent-81-percent-d0-percent-be-percent-d1-percent-80-percent-d0-percent-bc\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2025\/07\/Navrh-bez-nazvu-70-1024x1024-1.webp?fit=1024%2C1024\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"33934\",\"label\":\"SAKHA RESISTANCE\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/sacha-resistance\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/predvoj-14.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"32357\",\"label\":\"Seversky Krai\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/northern-region\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-16.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"34953\",\"label\":\"Siberian Battalion\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/siberian-banner\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-73.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39014\",\"label\":\"The Simbirsk Border\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/simbirsk-border\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-13T051311.918.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"31494\",\"label\":\"United Resistance Front\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/united-front-of-resistance\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-2.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"34399\",\"label\":\"Congress of People\u2019s Deputies\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/congress-of-peoples-deputies\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-55.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"25742\",\"label\":\"Skrepach\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/skrepac\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/FORUM-SVOBODNEHO-RUSKA-Prispevek-na-Instagramu-28.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"38920\",\"label\":\"Private Chuvash Drone Army\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/private-chuvash-drone-fleet\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-13T050716.508.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39015\",\"label\":\"Community of Belarusian Railway Workers\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/belarusian-railway-workers-union\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-13T051529.243.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39016\",\"label\":\"Guardians of the Baltic Coast\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/guardians-of-the-baltic-coast\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/Znovu-20-4.png?fit=1200%2C1200\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39938\",\"label\":\"World Chechen Congress\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/world-chechen-congress\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-28.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39017\",\"label\":\"Free Circassia\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/free-church\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/predvoj-5.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39018\",\"label\":\"Free Ingria\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/free-ingria\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-13T052801.381.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"40576\",\"label\":\"Free Udmurtia\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/svobodna-udmurtia\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Malinovy-klin-7.webp?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39019\",\"label\":\"Free Donbas\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/free-donbas\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/photo_2026-09-13_05-22-33-1.jpg?fit=640%2C640\\u0026quality=89\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39953\",\"label\":\"Free Nogaystan\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/free-nogaiistan\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Svobodny-Nogajstan-1.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"39020\",\"label\":\"Summary\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/summary\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-13T052916.042.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"33804\",\"label\":\"Tactical Group Hatred\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/hatred\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-18.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"27484\",\"label\":\"Tver People\u2019s Republic\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/tver-peoples-republic\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/kartoteka-2026-09-15T051029.112.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28030\",\"label\":\"Hard sign\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/hard-character\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/ChatGPT-Image-28.-5.-2026-11_28_32.png?fit=1024%2C1024\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"33490\",\"label\":\"Resistance Attack\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/utok-odboje\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/Znovu-20-5.png?fit=1200%2C1200\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28062\",\"label\":\"Herald of Rebellion\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/vestnik-uprising\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/kartoteka-13.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28060\",\"label\":\"Voronezh Republic\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/voronezh-republic\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-52.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28057\",\"label\":\"Committee of the Bashkir National Movement Abroad\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/bashkir-national-movement\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/kartoteka-77.png?fit=1080%2C1080\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"34211\",\"label\":\"Committee for Independent Ingushetia\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/committee-for-an-independent-ingushetia\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-50.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28053\",\"label\":\"Vyvozhuk\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/vyvozuk\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-49.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28051\",\"label\":\"Revolt of the Machines\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/machine-rebellion\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-48.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28049\",\"label\":\"WAR BRIDGE\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/war-bridge\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-47.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28047\",\"label\":\"Stop the Wagons\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/stop-wagons\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/RUSOVE-KTERI-NEMLCI-1920-x-1080-px-3000-x-3000-px-46.png?fit=1500%2C1500\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}},{\"data\":{\"id\":\"28031\",\"label\":\"The Twenties Again\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/iniciativy\/twenty-something-again\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/05\/Znovu-20.png?fit=1200%2C1200\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"}}],\"edges\":[{\"data\":{\"id\":\"m-30530-27491\",\"source\":\"30530\",\"target\":\"27491\",\"rel_type\":\"membership\",\"pair_key\":\"27491|30530\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27306-25744\",\"source\":\"27306\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|27306\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-26414-25744\",\"source\":\"26414\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|26414\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27427-31494\",\"source\":\"27427\",\"target\":\"31494\",\"rel_type\":\"membership\",\"pair_key\":\"27427|31494\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27968-31494\",\"source\":\"27968\",\"target\":\"31494\",\"rel_type\":\"membership\",\"pair_key\":\"27968|31494\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-41449-27999\",\"source\":\"41449\",\"target\":\"27999\",\"rel_type\":\"membership\",\"pair_key\":\"27999|41449\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27982-27306\",\"source\":\"27982\",\"target\":\"27306\",\"rel_type\":\"membership\",\"pair_key\":\"27306|27982\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27982-25744\",\"source\":\"27982\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|27982\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27986-31494\",\"source\":\"27986\",\"target\":\"31494\",\"rel_type\":\"membership\",\"pair_key\":\"27986|31494\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-34048-27999\",\"source\":\"34048\",\"target\":\"27999\",\"rel_type\":\"membership\",\"pair_key\":\"27999|34048\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-36261-28020\",\"source\":\"36261\",\"target\":\"28020\",\"rel_type\":\"membership\",\"pair_key\":\"28020|36261\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28008-31494\",\"source\":\"28008\",\"target\":\"31494\",\"rel_type\":\"membership\",\"pair_key\":\"28008|31494\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28011-28013\",\"source\":\"28011\",\"target\":\"28013\",\"rel_type\":\"membership\",\"pair_key\":\"28011|28013\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28011-31509\",\"source\":\"28011\",\"target\":\"31509\",\"rel_type\":\"membership\",\"pair_key\":\"28011|31509\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28013-25744\",\"source\":\"28013\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|28013\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28001-27999\",\"source\":\"28001\",\"target\":\"27999\",\"rel_type\":\"membership\",\"pair_key\":\"27999|28001\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27999-25744\",\"source\":\"27999\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|27999\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27999-27306\",\"source\":\"27999\",\"target\":\"27306\",\"rel_type\":\"membership\",\"pair_key\":\"27306|27999\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28016-31494\",\"source\":\"28016\",\"target\":\"31494\",\"rel_type\":\"membership\",\"pair_key\":\"28016|31494\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28024-25744\",\"source\":\"28024\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|28024\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-40802-27972\",\"source\":\"40802\",\"target\":\"27972\",\"rel_type\":\"membership\",\"pair_key\":\"27972|40802\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-36263-28020\",\"source\":\"36263\",\"target\":\"28020\",\"rel_type\":\"membership\",\"pair_key\":\"28020|36263\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28022-28024\",\"source\":\"28022\",\"target\":\"28024\",\"rel_type\":\"membership\",\"pair_key\":\"28022|28024\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28022-31509\",\"source\":\"28022\",\"target\":\"31509\",\"rel_type\":\"membership\",\"pair_key\":\"28022|31509\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-38921-25744\",\"source\":\"38921\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|38921\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27972-27978\",\"source\":\"27972\",\"target\":\"27978\",\"rel_type\":\"membership\",\"pair_key\":\"27972|27978\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-39009-31494\",\"source\":\"39009\",\"target\":\"31494\",\"rel_type\":\"membership\",\"pair_key\":\"31494|39009\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-33977-27972\",\"source\":\"33977\",\"target\":\"27972\",\"rel_type\":\"membership\",\"pair_key\":\"27972|33977\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-33977-27978\",\"source\":\"33977\",\"target\":\"27978\",\"rel_type\":\"membership\",\"pair_key\":\"27978|33977\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-34138-27999\",\"source\":\"34138\",\"target\":\"27999\",\"rel_type\":\"membership\",\"pair_key\":\"27999|34138\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-33991-27972\",\"source\":\"33991\",\"target\":\"27972\",\"rel_type\":\"membership\",\"pair_key\":\"27972|33991\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-33991-27978\",\"source\":\"33991\",\"target\":\"27978\",\"rel_type\":\"membership\",\"pair_key\":\"27978|33991\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27493-25744\",\"source\":\"27493\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|27493\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27493-27491\",\"source\":\"27493\",\"target\":\"27491\",\"rel_type\":\"membership\",\"pair_key\":\"27491|27493\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-39013-31494\",\"source\":\"39013\",\"target\":\"31494\",\"rel_type\":\"membership\",\"pair_key\":\"31494|39013\",\"parallel_pair\":\"yes\"}},{\"data\":{\"id\":\"m-33934-28026\",\"source\":\"33934\",\"target\":\"28026\",\"rel_type\":\"membership\",\"pair_key\":\"28026|33934\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-32357-27491\",\"source\":\"32357\",\"target\":\"27491\",\"rel_type\":\"membership\",\"pair_key\":\"27491|32357\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-32357-25744\",\"source\":\"32357\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|32357\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-34953-34396\",\"source\":\"34953\",\"target\":\"34396\",\"rel_type\":\"membership\",\"pair_key\":\"34396|34953\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-25742-25744\",\"source\":\"25742\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25742|25744\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-25742-31494\",\"source\":\"25742\",\"target\":\"31494\",\"rel_type\":\"membership\",\"pair_key\":\"25742|31494\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-25742-27491\",\"source\":\"25742\",\"target\":\"27491\",\"rel_type\":\"membership\",\"pair_key\":\"25742|27491\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-38920-25744\",\"source\":\"38920\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|38920\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-39017-25744\",\"source\":\"39017\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|39017\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-39017-27999\",\"source\":\"39017\",\"target\":\"27999\",\"rel_type\":\"membership\",\"pair_key\":\"27999|39017\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-39017-34396\",\"source\":\"39017\",\"target\":\"34396\",\"rel_type\":\"membership\",\"pair_key\":\"34396|39017\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-39020-33753\",\"source\":\"39020\",\"target\":\"33753\",\"rel_type\":\"membership\",\"pair_key\":\"33753|39020\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-33804-28024\",\"source\":\"33804\",\"target\":\"28024\",\"rel_type\":\"membership\",\"pair_key\":\"28024|33804\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-27484-27491\",\"source\":\"27484\",\"target\":\"27491\",\"rel_type\":\"membership\",\"pair_key\":\"27484|27491\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-33490-28016\",\"source\":\"33490\",\"target\":\"28016\",\"rel_type\":\"membership\",\"pair_key\":\"28016|33490\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-33490-31494\",\"source\":\"33490\",\"target\":\"31494\",\"rel_type\":\"membership\",\"pair_key\":\"31494|33490\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28062-25744\",\"source\":\"28062\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|28062\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28060-25744\",\"source\":\"28060\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|28060\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28057-25744\",\"source\":\"28057\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|28057\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28057-27306\",\"source\":\"28057\",\"target\":\"27306\",\"rel_type\":\"membership\",\"pair_key\":\"27306|28057\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28057-28026\",\"source\":\"28057\",\"target\":\"28026\",\"rel_type\":\"membership\",\"pair_key\":\"28026|28057\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28057-28003\",\"source\":\"28057\",\"target\":\"28003\",\"rel_type\":\"membership\",\"pair_key\":\"28003|28057\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-34211-28026\",\"source\":\"34211\",\"target\":\"28026\",\"rel_type\":\"membership\",\"pair_key\":\"28026|34211\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-34211-28003\",\"source\":\"34211\",\"target\":\"28003\",\"rel_type\":\"membership\",\"pair_key\":\"28003|34211\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28051-25744\",\"source\":\"28051\",\"target\":\"25744\",\"rel_type\":\"membership\",\"pair_key\":\"25744|28051\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28049-28020\",\"source\":\"28049\",\"target\":\"28020\",\"rel_type\":\"membership\",\"pair_key\":\"28020|28049\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28049-27986\",\"source\":\"28049\",\"target\":\"27986\",\"rel_type\":\"membership\",\"pair_key\":\"27986|28049\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"m-28031-31494\",\"source\":\"28031\",\"target\":\"31494\",\"rel_type\":\"membership\",\"pair_key\":\"28031|31494\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-25744-30530\",\"source\":\"25744\",\"target\":\"30530\",\"rel_type\":\"cooperation\",\"pair_key\":\"25744|30530\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27310-27982\",\"source\":\"27310\",\"target\":\"27982\",\"rel_type\":\"cooperation\",\"pair_key\":\"27310|27982\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27310-29667\",\"source\":\"27310\",\"target\":\"29667\",\"rel_type\":\"cooperation\",\"pair_key\":\"27310|29667\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27310-34211\",\"source\":\"27310\",\"target\":\"34211\",\"rel_type\":\"cooperation\",\"pair_key\":\"27310|34211\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-25744-27310\",\"source\":\"25744\",\"target\":\"27310\",\"rel_type\":\"cooperation\",\"pair_key\":\"25744|27310\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27310-33934\",\"source\":\"27310\",\"target\":\"33934\",\"rel_type\":\"cooperation\",\"pair_key\":\"27310|33934\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27310-28057\",\"source\":\"27310\",\"target\":\"28057\",\"rel_type\":\"cooperation\",\"pair_key\":\"27310|28057\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27310-34399\",\"source\":\"27310\",\"target\":\"34399\",\"rel_type\":\"cooperation\",\"pair_key\":\"27310|34399\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27310-40418\",\"source\":\"27310\",\"target\":\"40418\",\"rel_type\":\"cooperation\",\"pair_key\":\"27310|40418\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28003-40418\",\"source\":\"28003\",\"target\":\"40418\",\"rel_type\":\"cooperation\",\"pair_key\":\"28003|40418\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27313-36253\",\"source\":\"27313\",\"target\":\"36253\",\"rel_type\":\"cooperation\",\"pair_key\":\"27313|36253\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27313-31518\",\"source\":\"27313\",\"target\":\"31518\",\"rel_type\":\"cooperation\",\"pair_key\":\"27313|31518\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27970-31518\",\"source\":\"27970\",\"target\":\"31518\",\"rel_type\":\"cooperation\",\"pair_key\":\"27970|31518\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27970-36253\",\"source\":\"27970\",\"target\":\"36253\",\"rel_type\":\"cooperation\",\"pair_key\":\"27970|36253\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27978-27982\",\"source\":\"27978\",\"target\":\"27982\",\"rel_type\":\"cooperation\",\"pair_key\":\"27978|27982\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27972-27982\",\"source\":\"27972\",\"target\":\"27982\",\"rel_type\":\"cooperation\",\"pair_key\":\"27972|27982\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27982-28026\",\"source\":\"27982\",\"target\":\"28026\",\"rel_type\":\"cooperation\",\"pair_key\":\"27982|28026\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27982-28003\",\"source\":\"27982\",\"target\":\"28003\",\"rel_type\":\"cooperation\",\"pair_key\":\"27982|28003\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-34048-34138\",\"source\":\"34048\",\"target\":\"34138\",\"rel_type\":\"cooperation\",\"pair_key\":\"34048|34138\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-34135-39008\",\"source\":\"34135\",\"target\":\"39008\",\"rel_type\":\"cooperation\",\"pair_key\":\"34135|39008\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-33991-39008\",\"source\":\"33991\",\"target\":\"39008\",\"rel_type\":\"cooperation\",\"pair_key\":\"33991|39008\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28003-29667\",\"source\":\"28003\",\"target\":\"29667\",\"rel_type\":\"cooperation\",\"pair_key\":\"28003|29667\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28026-29667\",\"source\":\"28026\",\"target\":\"29667\",\"rel_type\":\"cooperation\",\"pair_key\":\"28026|29667\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-29667-40576\",\"source\":\"29667\",\"target\":\"40576\",\"rel_type\":\"cooperation\",\"pair_key\":\"29667|40576\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28003-34399\",\"source\":\"28003\",\"target\":\"34399\",\"rel_type\":\"cooperation\",\"pair_key\":\"28003|34399\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-36261-36263\",\"source\":\"36261\",\"target\":\"36263\",\"rel_type\":\"cooperation\",\"pair_key\":\"36261|36263\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-31518-36253\",\"source\":\"31518\",\"target\":\"36253\",\"rel_type\":\"cooperation\",\"pair_key\":\"31518|36253\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-27999-28020\",\"source\":\"27999\",\"target\":\"28020\",\"rel_type\":\"cooperation\",\"pair_key\":\"27999|28020\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28020-34045\",\"source\":\"28020\",\"target\":\"34045\",\"rel_type\":\"cooperation\",\"pair_key\":\"28020|34045\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28020-31494\",\"source\":\"28020\",\"target\":\"31494\",\"rel_type\":\"cooperation\",\"pair_key\":\"28020|31494\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28020-34953\",\"source\":\"28020\",\"target\":\"34953\",\"rel_type\":\"cooperation\",\"pair_key\":\"28020|34953\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28020-31509\",\"source\":\"28020\",\"target\":\"31509\",\"rel_type\":\"cooperation\",\"pair_key\":\"28020|31509\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28020-39011\",\"source\":\"28020\",\"target\":\"39011\",\"rel_type\":\"cooperation\",\"pair_key\":\"28020|39011\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28028-34045\",\"source\":\"28028\",\"target\":\"34045\",\"rel_type\":\"cooperation\",\"pair_key\":\"28028|34045\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-34135-40802\",\"source\":\"34135\",\"target\":\"40802\",\"rel_type\":\"cooperation\",\"pair_key\":\"34135|40802\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-33977-33991\",\"source\":\"33977\",\"target\":\"33991\",\"rel_type\":\"cooperation\",\"pair_key\":\"33977|33991\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-31509-39011\",\"source\":\"31509\",\"target\":\"39011\",\"rel_type\":\"cooperation\",\"pair_key\":\"31509|39011\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-31494-39012\",\"source\":\"31494\",\"target\":\"39012\",\"rel_type\":\"cooperation\",\"pair_key\":\"31494|39012\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-31509-34953\",\"source\":\"31509\",\"target\":\"34953\",\"rel_type\":\"cooperation\",\"pair_key\":\"31509|34953\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-31494-39013\",\"source\":\"31494\",\"target\":\"39013\",\"rel_type\":\"cooperation\",\"pair_key\":\"31494|39013\",\"parallel_pair\":\"yes\"}},{\"data\":{\"id\":\"c-32357-40576\",\"source\":\"32357\",\"target\":\"40576\",\"rel_type\":\"cooperation\",\"pair_key\":\"32357|40576\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-31494-39014\",\"source\":\"31494\",\"target\":\"39014\",\"rel_type\":\"cooperation\",\"pair_key\":\"31494|39014\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-31494-39016\",\"source\":\"31494\",\"target\":\"39016\",\"rel_type\":\"cooperation\",\"pair_key\":\"31494|39016\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-34396-39018\",\"source\":\"34396\",\"target\":\"39018\",\"rel_type\":\"cooperation\",\"pair_key\":\"34396|39018\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-28003-39018\",\"source\":\"28003\",\"target\":\"39018\",\"rel_type\":\"cooperation\",\"pair_key\":\"28003|39018\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"c-31494-39019\",\"source\":\"31494\",\"target\":\"39019\",\"rel_type\":\"cooperation\",\"pair_key\":\"31494|39019\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"a-27986-28047\",\"source\":\"27986\",\"target\":\"28047\",\"rel_type\":\"association\",\"pair_key\":\"27986|28047\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"a-34399-40576\",\"source\":\"34399\",\"target\":\"40576\",\"rel_type\":\"association\",\"pair_key\":\"34399|40576\",\"parallel_pair\":\"no\"}},{\"data\":{\"id\":\"a-28047-39015\",\"source\":\"28047\",\"target\":\"39015\",\"rel_type\":\"association\",\"pair_key\":\"28047|39015\",\"parallel_pair\":\"no\"}}],\"people_nodes\":[{\"data\":{\"id\":\"person-40606\",\"post_id\":\"40606\",\"node_type\":\"person\",\"label\":\"Akhmerov Marat\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/achmerov-marat\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Malino-9.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-27363\",\"post_id\":\"27363\",\"node_type\":\"person\",\"label\":\"Akayev Isa\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/akajev-isa\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/kartoteka-1.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-28693\",\"post_id\":\"28693\",\"node_type\":\"person\",\"label\":\"Ammosov Vladislav\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/ammosov-vladislav\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-2.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-28704\",\"post_id\":\"28704\",\"node_type\":\"person\",\"label\":\"Andronnikov Maximilian | Caesar\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/maksimilijan-andronnikov-caesar\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/Mykyta-15.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-40575\",\"post_id\":\"40575\",\"node_type\":\"person\",\"label\":\"Antonov Sergey\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/antonov-sergey\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Malino-7.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-33869\",\"post_id\":\"33869\",\"node_type\":\"person\",\"label\":\"Ares\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/ares\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/predvoj-11.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-25760\",\"post_id\":\"25760\",\"node_type\":\"person\",\"label\":\"Azarau Aliaksandr\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/azarau-alexander\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/kartoteka-5.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-30500\",\"post_id\":\"30500\",\"node_type\":\"person\",\"label\":\"Azhiyev Rustam | Abdul Hakim\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/azijev-rustam-abdul-hakim\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/Mykyta-4.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-34215\",\"post_id\":\"34215\",\"node_type\":\"person\",\"label\":\"Baturin Mikhail\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/baturin-michail\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-49.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39931\",\"post_id\":\"39931\",\"node_type\":\"person\",\"label\":\"Brigadier Stepan\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/brigadier-stepan\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Malino-3.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-28731\",\"post_id\":\"28731\",\"node_type\":\"person\",\"label\":\"Chayka\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/cajka\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-6.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-33962\",\"post_id\":\"33962\",\"node_type\":\"person\",\"label\":\"Cheberloevsky Muslim\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/ceberlojevsky-muslim\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/predvoj-24.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39930\",\"post_id\":\"39930\",\"node_type\":\"person\",\"label\":\"Chek\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/cek\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Malino.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39023\",\"post_id\":\"39023\",\"node_type\":\"person\",\"label\":\"Chanhanov Mykyta\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/chanhanov-mykyta\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Mykyta.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-40803\",\"post_id\":\"40803\",\"node_type\":\"person\",\"label\":\"Khavazhi Amayev | Zumso\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/chavazi-amajev-zumso\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Zumso-Sisani.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-28734\",\"post_id\":\"28734\",\"node_type\":\"person\",\"label\":\"Dadin Ildar | Gandhi\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/dadin-ildar-gandhi\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/Mykyta-1.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39940\",\"post_id\":\"39940\",\"node_type\":\"person\",\"label\":\"Deni Teps\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/deni-teps\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Deni-Teps.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39949\",\"post_id\":\"39949\",\"node_type\":\"person\",\"label\":\"Dorovskikh Dmitry\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/dorovskikh-dmitry\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Dmitrij-Dorkovskich.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-30204\",\"post_id\":\"30204\",\"node_type\":\"person\",\"label\":\"Dunayeva Roza\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/dunajeva-roza\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-25.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-28747\",\"post_id\":\"28747\",\"node_type\":\"person\",\"label\":\"Erik\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/erik\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/Mykyta-14.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-28750\",\"post_id\":\"28750\",\"node_type\":\"person\",\"label\":\"Escobar\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/escobar\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-18.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-36183\",\"post_id\":\"36183\",\"node_type\":\"person\",\"label\":\"FAE Freya\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/freya-fae\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-2026-09-14T171630.799.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-28752\",\"post_id\":\"28752\",\"node_type\":\"person\",\"label\":\"Gabbasov Ruslan\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/gabbasov-ruslan\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-10.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-34027\",\"post_id\":\"34027\",\"node_type\":\"person\",\"label\":\"Gamsakhurdia Lado\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/gamsachurdia-lado\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/predvoj-30.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-35390\",\"post_id\":\"35390\",\"node_type\":\"person\",\"label\":\"Goga\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/goga\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/Mykyta-2.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-40997\",\"post_id\":\"40997\",\"node_type\":\"person\",\"label\":\"Hadji-Murad Zumso | Khabab\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/hadzi-murad-zumso-chabab\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Hadzi-Murad-Zumso.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39022\",\"post_id\":\"39022\",\"node_type\":\"person\",\"label\":\"Hovhannesyan Tigran\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/hovhannesyan-tigran\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Zumso-Sisani-1.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-33137\",\"post_id\":\"33137\",\"node_type\":\"person\",\"label\":\"Yaganov Ibragim\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/jaganov-ibragim\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-21.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39024\",\"post_id\":\"39024\",\"node_type\":\"person\",\"label\":\"Jugoslavskij Daniil | Slavik\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/jugoslavskij-daniil-slavik\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Mykyta-6.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39025\",\"post_id\":\"39025\",\"node_type\":\"person\",\"label\":\"Yurchenko Vladislav | Pirate\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/jurcenko-vladislav-pirate\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Mykyta-3.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-25758\",\"post_id\":\"25758\",\"node_type\":\"person\",\"label\":\"Juzhak\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/juzak\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/kartoteka.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-31514\",\"post_id\":\"31514\",\"node_type\":\"person\",\"label\":\"Kapustin Denis\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/denis-kapustin\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-4.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39941\",\"post_id\":\"39941\",\"node_type\":\"person\",\"label\":\"Kashapov Rafis\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/rafis-kasapov\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Rafis-Kasapov.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-31884\",\"post_id\":\"31884\",\"node_type\":\"person\",\"label\":\"Kasparov Garry\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/kasparov-garri\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/Malino-2.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39027\",\"post_id\":\"39027\",\"node_type\":\"person\",\"label\":\"Kibishev Muaz\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/kibisev-muaz\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-09-13T065450.260.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39028\",\"post_id\":\"39028\",\"node_type\":\"person\",\"label\":\"Kik Kase\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/kik-kase\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Kase-Kik.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39029\",\"post_id\":\"39029\",\"node_type\":\"person\",\"label\":\"Dmytro Korchynskyi\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/korcinskyj-dmytro\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/kartoteka-2026-10-06T172501.373.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39951\",\"post_id\":\"39951\",\"node_type\":\"person\",\"label\":\"Kubakayev Rizvan\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/kubakajev-rizvan\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Rizvan-Kubakajev.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-33877\",\"post_id\":\"33877\",\"node_type\":\"person\",\"label\":\"Kuchinsky Saryn\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/kucinskij-saryn\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-19.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39952\",\"post_id\":\"39952\",\"node_type\":\"person\",\"label\":\"Kurmanakayev Anvar\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/kurmanakayev-anvar\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Anvar-Kurmankajev.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-30207\",\"post_id\":\"30207\",\"node_type\":\"person\",\"label\":\"Kurochkina Inna\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/kurockina-inna\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-34.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-32329\",\"post_id\":\"32329\",\"node_type\":\"person\",\"label\":\"Madiev Muslim\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/madijev-muslim\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-13.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-32332\",\"post_id\":\"32332\",\"node_type\":\"person\",\"label\":\"Mamulashvili Mamuka\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/mamulasvili-mamuka\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-15.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-34678\",\"post_id\":\"34678\",\"node_type\":\"person\",\"label\":\"Margolis Katia\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/margolis-katia\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-57.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-29345\",\"post_id\":\"29345\",\"node_type\":\"person\",\"label\":\"Medici\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/medical\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-30.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-34052\",\"post_id\":\"34052\",\"node_type\":\"person\",\"label\":\"Mirzoyev Dzhabrail\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/mirzojev-dzabrail\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/karta-35.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-34152\",\"post_id\":\"34152\",\"node_type\":\"person\",\"label\":\"Ocherkhadzhiev Muhammad-Aslan\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/ocerchadzijev-muhammad-aslan\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/karta-36.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-33965\",\"post_id\":\"33965\",\"node_type\":\"person\",\"label\":\"Osmayev Adam\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/osmajev-adam\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/predvoj-23.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-40447\",\"post_id\":\"40447\",\"node_type\":\"person\",\"label\":\"Petrov Vadim\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/petrov-vadim\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Malino-6.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-33655\",\"post_id\":\"33655\",\"node_type\":\"person\",\"label\":\"Ponomarev Ilya\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/ponomarjov-ilja\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/predvoj-8.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39036\",\"post_id\":\"39036\",\"node_type\":\"person\",\"label\":\"Sergeyeva Anastasia\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/anastasia-sergeyeva\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Mykyta-11.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-35394\",\"post_id\":\"35394\",\"node_type\":\"person\",\"label\":\"Seven\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/seven\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-21.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-35397\",\"post_id\":\"35397\",\"node_type\":\"person\",\"label\":\"Silver\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/silver\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/kartoteka-79.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-31856\",\"post_id\":\"31856\",\"node_type\":\"person\",\"label\":\"Skobov Aleksandr\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/skobov-aleksandr\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-10.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39037\",\"post_id\":\"39037\",\"node_type\":\"person\",\"label\":\"Skrepach\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/skrepac\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Malino-1.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-25762\",\"post_id\":\"25762\",\"node_type\":\"person\",\"label\":\"Starostina Karina\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/mayor-karina\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/06\/OSM-%E2%88%9E-STATECNYCH-za-vasi-i-nasi-svobodu-1080-x-1080-px-3.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-30070\",\"post_id\":\"30070\",\"node_type\":\"person\",\"label\":\"Suleymanov Dzhambulat\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/sulejmanov-dzambulat\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-12.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-29628\",\"post_id\":\"29628\",\"node_type\":\"person\",\"label\":\"Suleimanova Fatima\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/sulejmanovova-fatima\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-20.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-29631\",\"post_id\":\"29631\",\"node_type\":\"person\",\"label\":\"Sverdlin Grigory\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/grigory-sverdlin\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-35.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-34208\",\"post_id\":\"34208\",\"node_type\":\"person\",\"label\":\"Torijev Magomed\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/torijev-magomed\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/Torijev.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-33140\",\"post_id\":\"33140\",\"node_type\":\"person\",\"label\":\"Vlasov Dmitry\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/vlasov-dmitrij\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-56.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-33152\",\"post_id\":\"33152\",\"node_type\":\"person\",\"label\":\"Volna Andrey\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/volna-andrej\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/KARTA-23.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-29653\",\"post_id\":\"29653\",\"node_type\":\"person\",\"label\":\"Volobuyev Igor\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/volobujev-igor\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/Mykyta-13.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-39469\",\"post_id\":\"39469\",\"node_type\":\"person\",\"label\":\"Volzhina Oksana\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/volzina-oksana\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Mykyta-10.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-30073\",\"post_id\":\"30073\",\"node_type\":\"person\",\"label\":\"Zakayev Akhmed\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/zakajev-ahmed\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/kartoteka-44.webp?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-35265\",\"post_id\":\"35265\",\"node_type\":\"person\",\"label\":\"Zirka\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/zirka\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/Mykyta-12.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"},{\"data\":{\"id\":\"person-33942\",\"post_id\":\"33942\",\"node_type\":\"person\",\"label\":\"Zubareva Raisa\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/osobnosti\/rais-zubarevova\/\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/predvoj-16.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\"},\"classes\":\"osm-person\"}],\"people_edges\":[{\"data\":{\"id\":\"pedge-leadership-40606-29667\",\"source\":\"29667\",\"target\":\"person-40606\",\"rel_type\":\"leadership\",\"person_pair_key\":\"40606|29667\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-27363-34135\",\"source\":\"34135\",\"target\":\"person-27363\",\"rel_type\":\"leadership\",\"person_pair_key\":\"27363|34135\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-27363-34396\",\"source\":\"person-27363\",\"target\":\"34396\",\"rel_type\":\"person_association\",\"person_pair_key\":\"27363|34396\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-27363-39008\",\"source\":\"person-27363\",\"target\":\"39008\",\"rel_type\":\"person_association\",\"person_pair_key\":\"27363|39008\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-28693-34953\",\"source\":\"34953\",\"target\":\"person-28693\",\"rel_type\":\"leadership\",\"person_pair_key\":\"28693|34953\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-28693-33934\",\"source\":\"person-28693\",\"target\":\"33934\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"28693|33934\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-28693-34396\",\"source\":\"person-28693\",\"target\":\"34396\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"28693|34396\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-28693-34953\",\"source\":\"person-28693\",\"target\":\"34953\",\"rel_type\":\"person_association\",\"person_pair_key\":\"28693|34953\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-28704-28020\",\"source\":\"28020\",\"target\":\"person-28704\",\"rel_type\":\"leadership\",\"person_pair_key\":\"28704|28020\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-28704-31494\",\"source\":\"person-28704\",\"target\":\"31494\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"28704|31494\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-28704-34045\",\"source\":\"person-28704\",\"target\":\"34045\",\"rel_type\":\"person_association\",\"person_pair_key\":\"28704|34045\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-28704-34953\",\"source\":\"person-28704\",\"target\":\"34953\",\"rel_type\":\"person_association\",\"person_pair_key\":\"28704|34953\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-28704-31509\",\"source\":\"person-28704\",\"target\":\"31509\",\"rel_type\":\"person_association\",\"person_pair_key\":\"28704|31509\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-40575-40576\",\"source\":\"40576\",\"target\":\"person-40575\",\"rel_type\":\"leadership\",\"person_pair_key\":\"40575|40576\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-40575-34399\",\"source\":\"person-40575\",\"target\":\"34399\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"40575|34399\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-33869-27493\",\"source\":\"27493\",\"target\":\"person-33869\",\"rel_type\":\"leadership\",\"person_pair_key\":\"33869|27493\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33869-25744\",\"source\":\"person-33869\",\"target\":\"25744\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33869|25744\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33869-27491\",\"source\":\"person-33869\",\"target\":\"27491\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33869|27491\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-25760-27970\",\"source\":\"27970\",\"target\":\"person-25760\",\"rel_type\":\"leadership\",\"person_pair_key\":\"25760|27970\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-25760-31518\",\"source\":\"person-25760\",\"target\":\"31518\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"25760|31518\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-25760-28018\",\"source\":\"person-25760\",\"target\":\"28018\",\"rel_type\":\"person_association\",\"person_pair_key\":\"25760|28018\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-25760-27313\",\"source\":\"person-25760\",\"target\":\"27313\",\"rel_type\":\"person_association\",\"person_pair_key\":\"25760|27313\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-25760-36253\",\"source\":\"person-25760\",\"target\":\"36253\",\"rel_type\":\"person_association\",\"person_pair_key\":\"25760|36253\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-30500-27972\",\"source\":\"27972\",\"target\":\"person-30500\",\"rel_type\":\"leadership\",\"person_pair_key\":\"30500|27972\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-30500-27978\",\"source\":\"person-30500\",\"target\":\"27978\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"30500|27978\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-30500-33977\",\"source\":\"person-30500\",\"target\":\"33977\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30500|33977\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-30500-33991\",\"source\":\"person-30500\",\"target\":\"33991\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30500|33991\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-34215-27999\",\"source\":\"27999\",\"target\":\"person-34215\",\"rel_type\":\"leadership\",\"person_pair_key\":\"34215|27999\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-34215-28001\",\"source\":\"28001\",\"target\":\"person-34215\",\"rel_type\":\"leadership\",\"person_pair_key\":\"34215|28001\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-34215-25744\",\"source\":\"person-34215\",\"target\":\"25744\",\"rel_type\":\"person_association\",\"person_pair_key\":\"34215|25744\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-28731-28020\",\"source\":\"person-28731\",\"target\":\"28020\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"28731|28020\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-28731-34045\",\"source\":\"person-28731\",\"target\":\"34045\",\"rel_type\":\"person_association\",\"person_pair_key\":\"28731|34045\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-33962-33991\",\"source\":\"33991\",\"target\":\"person-33962\",\"rel_type\":\"leadership\",\"person_pair_key\":\"33962|33991\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33962-27978\",\"source\":\"person-33962\",\"target\":\"27978\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33962|27978\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33962-27972\",\"source\":\"person-33962\",\"target\":\"27972\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33962|27972\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-33962-27982\",\"source\":\"person-33962\",\"target\":\"27982\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33962|27982\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-39023-26430\",\"source\":\"person-39023\",\"target\":\"26430\",\"rel_type\":\"person_association\",\"person_pair_key\":\"39023|26430\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-40803-40802\",\"source\":\"person-40803\",\"target\":\"40802\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"40803|40802\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-40803-27972\",\"source\":\"person-40803\",\"target\":\"27972\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"40803|27972\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-40803-27978\",\"source\":\"person-40803\",\"target\":\"27978\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"40803|27978\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-28734-34953\",\"source\":\"person-28734\",\"target\":\"34953\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"28734|34953\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-28734-28020\",\"source\":\"person-28734\",\"target\":\"28020\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"28734|28020\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-28734-34396\",\"source\":\"person-28734\",\"target\":\"34396\",\"rel_type\":\"person_association\",\"person_pair_key\":\"28734|34396\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-39949-39934\",\"source\":\"39934\",\"target\":\"person-39949\",\"rel_type\":\"leadership\",\"person_pair_key\":\"39949|39934\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-30204-27978\",\"source\":\"person-30204\",\"target\":\"27978\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"30204|27978\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-30204-27972\",\"source\":\"person-30204\",\"target\":\"27972\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30204|27972\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-30204-27982\",\"source\":\"person-30204\",\"target\":\"27982\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30204|27982\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-28747-31494\",\"source\":\"person-28747\",\"target\":\"31494\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"28747|31494\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-28750-27986\",\"source\":\"person-28750\",\"target\":\"27986\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"28750|27986\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-36183-27491\",\"source\":\"person-36183\",\"target\":\"27491\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"36183|27491\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-36183-27493\",\"source\":\"person-36183\",\"target\":\"27493\",\"rel_type\":\"person_association\",\"person_pair_key\":\"36183|27493\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-36183-28020\",\"source\":\"person-36183\",\"target\":\"28020\",\"rel_type\":\"person_association\",\"person_pair_key\":\"36183|28020\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-28752-28057\",\"source\":\"28057\",\"target\":\"person-28752\",\"rel_type\":\"leadership\",\"person_pair_key\":\"28752|28057\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-28752-28003\",\"source\":\"28003\",\"target\":\"person-28752\",\"rel_type\":\"leadership\",\"person_pair_key\":\"28752|28003\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-28752-28026\",\"source\":\"person-28752\",\"target\":\"28026\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"28752|28026\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-34027-28001\",\"source\":\"28001\",\"target\":\"person-34027\",\"rel_type\":\"leadership\",\"person_pair_key\":\"34027|28001\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-34027-27999\",\"source\":\"person-34027\",\"target\":\"27999\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"34027|27999\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-34027-25744\",\"source\":\"person-34027\",\"target\":\"25744\",\"rel_type\":\"person_association\",\"person_pair_key\":\"34027|25744\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-35390-28020\",\"source\":\"person-35390\",\"target\":\"28020\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"35390|28020\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-35390-34045\",\"source\":\"person-35390\",\"target\":\"34045\",\"rel_type\":\"person_association\",\"person_pair_key\":\"35390|34045\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-40997-40802\",\"source\":\"40802\",\"target\":\"person-40997\",\"rel_type\":\"leadership\",\"person_pair_key\":\"40997|40802\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-40997-27972\",\"source\":\"person-40997\",\"target\":\"27972\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"40997|27972\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-39022-26430\",\"source\":\"person-39022\",\"target\":\"26430\",\"rel_type\":\"person_association\",\"person_pair_key\":\"39022|26430\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-33137-39017\",\"source\":\"39017\",\"target\":\"person-33137\",\"rel_type\":\"leadership\",\"person_pair_key\":\"33137|39017\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33137-25744\",\"source\":\"person-33137\",\"target\":\"25744\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33137|25744\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33137-27999\",\"source\":\"person-33137\",\"target\":\"27999\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33137|27999\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33137-34396\",\"source\":\"person-33137\",\"target\":\"34396\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33137|34396\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-33137-28001\",\"source\":\"person-33137\",\"target\":\"28001\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33137|28001\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-33137-27306\",\"source\":\"person-33137\",\"target\":\"27306\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33137|27306\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-33137-28003\",\"source\":\"person-33137\",\"target\":\"28003\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33137|28003\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-39024-34953\",\"source\":\"person-39024\",\"target\":\"34953\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"39024|34953\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-39024-31509\",\"source\":\"person-39024\",\"target\":\"31509\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"39024|31509\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-39024-34396\",\"source\":\"person-39024\",\"target\":\"34396\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"39024|34396\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-39025-27428\",\"source\":\"person-39025\",\"target\":\"27428\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"39025|27428\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-39025-34953\",\"source\":\"person-39025\",\"target\":\"34953\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"39025|34953\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-39025-34396\",\"source\":\"person-39025\",\"target\":\"34396\",\"rel_type\":\"person_association\",\"person_pair_key\":\"39025|34396\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-25758-28016\",\"source\":\"28016\",\"target\":\"person-25758\",\"rel_type\":\"leadership\",\"person_pair_key\":\"25758|28016\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-25758-31494\",\"source\":\"person-25758\",\"target\":\"31494\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"25758|31494\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-25758-33490\",\"source\":\"person-25758\",\"target\":\"33490\",\"rel_type\":\"person_association\",\"person_pair_key\":\"25758|33490\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-31514-31509\",\"source\":\"31509\",\"target\":\"person-31514\",\"rel_type\":\"leadership\",\"person_pair_key\":\"31514|31509\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-31514-28020\",\"source\":\"person-31514\",\"target\":\"28020\",\"rel_type\":\"person_association\",\"person_pair_key\":\"31514|28020\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-31514-34396\",\"source\":\"person-31514\",\"target\":\"34396\",\"rel_type\":\"person_association\",\"person_pair_key\":\"31514|34396\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-31884-27997\",\"source\":\"27997\",\"target\":\"person-31884\",\"rel_type\":\"leadership\",\"person_pair_key\":\"31884|27997\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-31884-34399\",\"source\":\"person-31884\",\"target\":\"34399\",\"rel_type\":\"person_association\",\"person_pair_key\":\"31884|34399\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-31884-28020\",\"source\":\"person-31884\",\"target\":\"28020\",\"rel_type\":\"person_association\",\"person_pair_key\":\"31884|28020\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-31884-31509\",\"source\":\"person-31884\",\"target\":\"31509\",\"rel_type\":\"person_association\",\"person_pair_key\":\"31884|31509\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-39027-39008\",\"source\":\"39008\",\"target\":\"person-39027\",\"rel_type\":\"leadership\",\"person_pair_key\":\"39027|39008\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-39029-41449\",\"source\":\"41449\",\"target\":\"person-39029\",\"rel_type\":\"leadership\",\"person_pair_key\":\"39029|41449\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-39951-39953\",\"source\":\"39953\",\"target\":\"person-39951\",\"rel_type\":\"leadership\",\"person_pair_key\":\"39951|39953\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-33877-28024\",\"source\":\"28024\",\"target\":\"person-33877\",\"rel_type\":\"leadership\",\"person_pair_key\":\"33877|28024\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33877-33804\",\"source\":\"person-33877\",\"target\":\"33804\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33877|33804\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33877-28022\",\"source\":\"person-33877\",\"target\":\"28022\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33877|28022\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33877-25744\",\"source\":\"person-33877\",\"target\":\"25744\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33877|25744\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-39952-39936\",\"source\":\"39936\",\"target\":\"person-39952\",\"rel_type\":\"leadership\",\"person_pair_key\":\"39952|39936\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-39952-28003\",\"source\":\"person-39952\",\"target\":\"28003\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"39952|28003\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-30207-27978\",\"source\":\"person-30207\",\"target\":\"27978\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"30207|27978\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-30207-27982\",\"source\":\"person-30207\",\"target\":\"27982\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30207|27982\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-30207-27999\",\"source\":\"person-30207\",\"target\":\"27999\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30207|27999\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-32329-33977\",\"source\":\"33977\",\"target\":\"person-32329\",\"rel_type\":\"leadership\",\"person_pair_key\":\"32329|33977\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-32329-27978\",\"source\":\"person-32329\",\"target\":\"27978\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"32329|27978\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-32329-27972\",\"source\":\"person-32329\",\"target\":\"27972\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"32329|27972\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-32329-27982\",\"source\":\"person-32329\",\"target\":\"27982\",\"rel_type\":\"person_association\",\"person_pair_key\":\"32329|27982\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-32332-28005\",\"source\":\"28005\",\"target\":\"person-32332\",\"rel_type\":\"leadership\",\"person_pair_key\":\"32332|28005\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-34678-28026\",\"source\":\"person-34678\",\"target\":\"28026\",\"rel_type\":\"person_association\",\"person_pair_key\":\"34678|28026\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-34678-27997\",\"source\":\"person-34678\",\"target\":\"27997\",\"rel_type\":\"person_association\",\"person_pair_key\":\"34678|27997\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-29345-27427\",\"source\":\"27427\",\"target\":\"person-29345\",\"rel_type\":\"leadership\",\"person_pair_key\":\"29345|27427\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-29345-31494\",\"source\":\"person-29345\",\"target\":\"31494\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"29345|31494\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-34052-27999\",\"source\":\"27999\",\"target\":\"person-34052\",\"rel_type\":\"leadership\",\"person_pair_key\":\"34052|27999\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-34052-34048\",\"source\":\"34048\",\"target\":\"person-34052\",\"rel_type\":\"leadership\",\"person_pair_key\":\"34052|34048\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-34052-25744\",\"source\":\"person-34052\",\"target\":\"25744\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"34052|25744\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-34052-28001\",\"source\":\"person-34052\",\"target\":\"28001\",\"rel_type\":\"person_association\",\"person_pair_key\":\"34052|28001\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-34052-34138\",\"source\":\"person-34052\",\"target\":\"34138\",\"rel_type\":\"person_association\",\"person_pair_key\":\"34052|34138\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-34152-28001\",\"source\":\"28001\",\"target\":\"person-34152\",\"rel_type\":\"leadership\",\"person_pair_key\":\"34152|28001\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-34152-27978\",\"source\":\"person-34152\",\"target\":\"27978\",\"rel_type\":\"person_association\",\"person_pair_key\":\"34152|27978\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-34152-27972\",\"source\":\"person-34152\",\"target\":\"27972\",\"rel_type\":\"person_association\",\"person_pair_key\":\"34152|27972\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-34152-27999\",\"source\":\"person-34152\",\"target\":\"27999\",\"rel_type\":\"person_association\",\"person_pair_key\":\"34152|27999\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-33965-33977\",\"source\":\"33977\",\"target\":\"person-33965\",\"rel_type\":\"leadership\",\"person_pair_key\":\"33965|33977\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33965-27978\",\"source\":\"person-33965\",\"target\":\"27978\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33965|27978\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33965-27972\",\"source\":\"person-33965\",\"target\":\"27972\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33965|27972\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-33965-27982\",\"source\":\"person-33965\",\"target\":\"27982\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33965|27982\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-40447-40418\",\"source\":\"40418\",\"target\":\"person-40447\",\"rel_type\":\"leadership\",\"person_pair_key\":\"40447|40418\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-40447-28003\",\"source\":\"person-40447\",\"target\":\"28003\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"40447|28003\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-40447-27310\",\"source\":\"person-40447\",\"target\":\"27310\",\"rel_type\":\"person_association\",\"person_pair_key\":\"40447|27310\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-33655-34399\",\"source\":\"34399\",\"target\":\"person-33655\",\"rel_type\":\"leadership\",\"person_pair_key\":\"33655|34399\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-33655-34045\",\"source\":\"34045\",\"target\":\"person-33655\",\"rel_type\":\"leadership\",\"person_pair_key\":\"33655|34045\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-33655-28028\",\"source\":\"person-33655\",\"target\":\"28028\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33655|28028\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-35394-27986\",\"source\":\"person-35394\",\"target\":\"27986\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"35394|27986\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-35394-28020\",\"source\":\"person-35394\",\"target\":\"28020\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"35394|28020\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-35394-34045\",\"source\":\"person-35394\",\"target\":\"34045\",\"rel_type\":\"person_association\",\"person_pair_key\":\"35394|34045\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-35397-28020\",\"source\":\"person-35397\",\"target\":\"28020\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"35397|28020\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-35397-34045\",\"source\":\"person-35397\",\"target\":\"34045\",\"rel_type\":\"person_association\",\"person_pair_key\":\"35397|34045\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-31856-27997\",\"source\":\"person-31856\",\"target\":\"27997\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"31856|27997\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-39037-25742\",\"source\":\"25742\",\"target\":\"person-39037\",\"rel_type\":\"leadership\",\"person_pair_key\":\"39037|25742\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-25762-31152\",\"source\":\"person-25762\",\"target\":\"31152\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"25762|31152\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-30070-27982\",\"source\":\"27982\",\"target\":\"person-30070\",\"rel_type\":\"leadership\",\"person_pair_key\":\"30070|27982\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-30070-27978\",\"source\":\"person-30070\",\"target\":\"27978\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"30070|27978\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-30070-25744\",\"source\":\"person-30070\",\"target\":\"25744\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"30070|25744\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-30070-27306\",\"source\":\"person-30070\",\"target\":\"27306\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"30070|27306\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-30070-27999\",\"source\":\"person-30070\",\"target\":\"27999\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"30070|27999\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-30070-28003\",\"source\":\"person-30070\",\"target\":\"28003\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30070|28003\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-30070-27310\",\"source\":\"person-30070\",\"target\":\"27310\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30070|27310\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-30070-28026\",\"source\":\"person-30070\",\"target\":\"28026\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30070|28026\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-30070-27972\",\"source\":\"person-30070\",\"target\":\"27972\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30070|27972\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-29628-27982\",\"source\":\"27982\",\"target\":\"person-29628\",\"rel_type\":\"leadership\",\"person_pair_key\":\"29628|27982\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-29628-27978\",\"source\":\"person-29628\",\"target\":\"27978\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"29628|27978\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-29628-27999\",\"source\":\"person-29628\",\"target\":\"27999\",\"rel_type\":\"person_association\",\"person_pair_key\":\"29628|27999\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-29628-25744\",\"source\":\"person-29628\",\"target\":\"25744\",\"rel_type\":\"person_association\",\"person_pair_key\":\"29628|25744\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-29628-27306\",\"source\":\"person-29628\",\"target\":\"27306\",\"rel_type\":\"person_association\",\"person_pair_key\":\"29628|27306\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-29628-27310\",\"source\":\"person-29628\",\"target\":\"27310\",\"rel_type\":\"person_association\",\"person_pair_key\":\"29628|27310\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-29628-27972\",\"source\":\"person-29628\",\"target\":\"27972\",\"rel_type\":\"person_association\",\"person_pair_key\":\"29628|27972\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-29631-28009\",\"source\":\"28009\",\"target\":\"person-29631\",\"rel_type\":\"leadership\",\"person_pair_key\":\"29631|28009\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-34208-34211\",\"source\":\"34211\",\"target\":\"person-34208\",\"rel_type\":\"leadership\",\"person_pair_key\":\"34208|34211\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-34208-27999\",\"source\":\"person-34208\",\"target\":\"27999\",\"rel_type\":\"person_association\",\"person_pair_key\":\"34208|27999\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-33140-32357\",\"source\":\"32357\",\"target\":\"person-33140\",\"rel_type\":\"leadership\",\"person_pair_key\":\"33140|32357\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33140-27491\",\"source\":\"person-33140\",\"target\":\"27491\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33140|27491\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-33140-34135\",\"source\":\"person-33140\",\"target\":\"34135\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33140|34135\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-33140-27310\",\"source\":\"person-33140\",\"target\":\"27310\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33140|27310\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-33152-27997\",\"source\":\"person-33152\",\"target\":\"27997\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33152|27997\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-33152-28020\",\"source\":\"person-33152\",\"target\":\"28020\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33152|28020\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-33152-31509\",\"source\":\"person-33152\",\"target\":\"31509\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33152|31509\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-29653-25739\",\"source\":\"25739\",\"target\":\"person-29653\",\"rel_type\":\"leadership\",\"person_pair_key\":\"29653|25739\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-29653-28020\",\"source\":\"person-29653\",\"target\":\"28020\",\"rel_type\":\"person_association\",\"person_pair_key\":\"29653|28020\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-39469-27999\",\"source\":\"person-39469\",\"target\":\"27999\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"39469|27999\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-30073-27978\",\"source\":\"27978\",\"target\":\"person-30073\",\"rel_type\":\"leadership\",\"person_pair_key\":\"30073|27978\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-leadership-30073-27972\",\"source\":\"27972\",\"target\":\"person-30073\",\"rel_type\":\"leadership\",\"person_pair_key\":\"30073|27972\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-30073-27982\",\"source\":\"person-30073\",\"target\":\"27982\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30073|27982\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-30073-27999\",\"source\":\"person-30073\",\"target\":\"27999\",\"rel_type\":\"person_association\",\"person_pair_key\":\"30073|27999\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_membership-35265-28020\",\"source\":\"person-35265\",\"target\":\"28020\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"35265|28020\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-35265-34045\",\"source\":\"person-35265\",\"target\":\"34045\",\"rel_type\":\"person_association\",\"person_pair_key\":\"35265|34045\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-leadership-33942-33934\",\"source\":\"33934\",\"target\":\"person-33942\",\"rel_type\":\"leadership\",\"person_pair_key\":\"33942|33934\",\"has_leadership\":\"yes\",\"has_membership\":\"no\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33942-28026\",\"source\":\"person-33942\",\"target\":\"28026\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33942|28026\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_membership-33942-28003\",\"source\":\"person-33942\",\"target\":\"28003\",\"rel_type\":\"person_membership\",\"person_pair_key\":\"33942|28003\",\"has_leadership\":\"no\",\"has_membership\":\"yes\",\"has_association\":\"no\"}},{\"data\":{\"id\":\"pedge-person_association-33942-27310\",\"source\":\"person-33942\",\"target\":\"27310\",\"rel_type\":\"person_association\",\"person_pair_key\":\"33942|27310\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}},{\"data\":{\"id\":\"pedge-person_association-40575-40606\",\"source\":\"person-40575\",\"target\":\"person-40606\",\"rel_type\":\"person_association\",\"person_pair_key\":\"person-40575|person-40606\",\"has_leadership\":\"no\",\"has_membership\":\"no\",\"has_association\":\"yes\"}}],\"official_nodes\":[{\"data\":{\"id\":\"official-41444\",\"post_id\":\"41444\",\"node_type\":\"official\",\"label\":\"447. samostatn\u00fd prapor bezpilotn\u00edch syst\u00e9m\u016f\",\"original_name\":\"447 \u043e\u043a\u0440\u0435\u043c\u0438\u0439 \u0431\u0430\u0442\u0430\u043b\u044c\u0439\u043e\u043d \u0431\u0435\u0437\u043f\u0456\u043b\u043e\u0442\u043d\u0438\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\",\"country\":\"Ukrajina\",\"official_url\":\"https:\/\/recrutvms.mil.gov.ua\/447obbps\",\"note\":\"Prvn\u00ed specializovan\u00fd prapor bezpilotn\u00edch syst\u00e9m\u016f Vojensko-n\u00e1mo\u0159n\u00edch sil Ukrajiny, vytvo\u0159en\u00fd v \u010dervnu 2026. Zam\u011b\u0159uje se na \u00fadern\u00e9, pr\u016fzkumn\u00e9 a protidronov\u00e9 syst\u00e9my a pln\u00ed \u00fakoly v oblasti \u010cern\u00e9ho mo\u0159e i pod\u00e9l cel\u00e9 fronty.\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/10\/447.-samostatny-prapor-bezpilotnich-systemu-%E2%80%93-znak.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[\"official-41443\"]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41214\",\"post_id\":\"41214\",\"node_type\":\"official\",\"label\":\"9th Separate Unmanned Systems Brigade\",\"original_name\":\"9th Separate Unmanned Systems Brigade\",\"country\":\"Ukraine\",\"official_url\":\"https:\/\/usforces.army\/units\/9\",\"note\":\"A brigade-sized military formation of the Unmanned Systems Forces of the Armed Forces of Ukraine. It was established in January 2025 based on the former 9th Separate Motorized Infantry Battalion. The official website of the Unmanned Systems Forces also lists the Caucasian Legion among the brigade's components.\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Malino-10.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[\"official-41213\"]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41168\",\"post_id\":\"41168\",\"node_type\":\"official\",\"label\":\"Main Directorate of Intelligence of the Ministry of Defence of Ukraine (HUR MO)\",\"original_name\":\"\u0413\u043e\u043b\u043e\u0432\u043d\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0456\u043d\u043d\u044f \u0440\u043e\u0437\u0432\u0456\u0434\u043a\u0438 \u041c\u0456\u043d\u0456\u0441\u0442\u0435\u0440\u0441\u0442\u0432\u0430 \u043e\u0431\u043e\u0440\u043e\u043d\u0438 \u0423\u043a\u0440\u0430\u0457\u043d\u0438\",\"country\":\"Ukraine\",\"official_url\":\"https:\/\/gur.gov.ua\/en.html\",\"note\":\"Military intelligence service of Ukraine.\\n\\nThe primary mission of the HUR MO is the collection and analytical processing of intelligence information regarding external threats to the national security of Ukraine and its dissemination to relevant government authorities. Defined external threats to Ukraine's national interests include the activities of foreign intelligence services, acts of sabotage, terrorism, international organized crime, cyberspace threats, and risks to the health and lives of Ukrainian citizens or Ukrainian property interests abroad.[4]\\n\\nTo ensure the national security of Ukraine, the HUR MO is authorized to conduct active operations, which during the Russian invasion of Ukraine has manifested, among other things, in involvement in active combat operations within the territories of both Ukraine and Russia.\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Emblem_of_the_Defense_Intelligence_of_Ukraine.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41183\",\"post_id\":\"41183\",\"node_type\":\"official\",\"label\":\"International Legion of the HUR MOU\",\"original_name\":\"\u041c\u0456\u0436\u043d\u0430\u0440\u043e\u0434\u043d\u0438\u0439 \u043b\u0435\u0433\u0456\u043e\u043d \u043f\u0440\u0438 \u0413\u0423\u0420 \u041c\u041e \u0423\u043a\u0440\u0430\u0457\u043d\u0438\",\"country\":\"Ukraine\",\"official_url\":\"https:\/\/legiondiu.com\/en\",\"note\":\"An international combat unit of the HUR MOU bringing together foreign professional soldiers. Official HUR sources state it has been operating within military intelligence since the beginning of the full-scale invasion.\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Mezinarodni-legie-HUR-MOU.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[\"official-41168\"]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41184\",\"post_id\":\"41184\",\"node_type\":\"official\",\"label\":\"Defense Forces of Ukraine\",\"original_name\":\"\u0421\u0438\u043b\u0438 \u043e\u0431\u043e\u0440\u043e\u043d\u0438 \u0423\u043a\u0440\u0430\u0457\u043d\u0438\",\"country\":\"Ukraine\",\"official_url\":\"https:\/\/mod.gov.ua\/diyalnist\/normativno-pravova-baza\/zakon-ukraini-pro-naczionalnu-bezpeku-ukraini\",\"note\":\"An umbrella legal term encompassing the Armed Forces of Ukraine and other legally established military formations, security and intelligence agencies, and special purpose agencies entrusted with the defense of the state.\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Defence_Forces_of_Ukraine_a.png?fit=300%2C101\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41213\",\"post_id\":\"41213\",\"node_type\":\"official\",\"label\":\"Armed Forces of Ukraine ZSU\",\"original_name\":\"\u0417\u0431\u0440\u043e\u0439\u043d\u0456 \u0421\u0438\u043b\u0438 \u0423\u043a\u0440\u0430\u0457\u043d\u0438\",\"country\":\"Ukraine\",\"official_url\":\"https:\/\/www.zsu.gov.ua\/\",\"note\":\"Armed Forces of Ukraine. The official structure of the ZSU includes land, air, and naval forces, as well as separate branches, including the Unmanned Systems Forces.\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/zsu.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41185\",\"post_id\":\"41185\",\"node_type\":\"official\",\"label\":\"Parliamentary Assembly of the Council of Europe\",\"original_name\":\"Parliamentary Assembly of the Council of Europe (PACE)\",\"country\":\"International\",\"official_url\":\"https:\/\/pace.coe.int\/en\/\",\"note\":\"A parliamentary body of the Council of Europe composed of members of the national parliaments of member states. In 2025, it established the Platform for Dialogue with Russian Democratic Forces.\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/WhatsApp-Image-2026-09-25-at-15.34.22.jpeg?fit=300%2C300\\u0026quality=89\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41212\",\"post_id\":\"41212\",\"node_type\":\"official\",\"label\":\"Platform for Dialogue with Russian Democratic Forces\",\"original_name\":\"Platform for Dialogue with Russian Democratic Forces\",\"country\":\"International\",\"official_url\":\"https:\/\/pacerdf.com\/\",\"note\":\"A platform of the Parliamentary Assembly of the Council of Europe (PACE), established in October 2025 as a forum for two-way dialogue between the Assembly and Russian democratic forces on issues of common interest. Participants are approved by the Bureau of PACE.\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/623233936_1295937452561125_2183208661902783686_n.jpg?fit=300%2C200\\u0026quality=89\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[\"official-41185\"]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41170\",\"post_id\":\"41170\",\"node_type\":\"official\",\"label\":\"SHAMAN Battalion\",\"original_name\":\"Shaman Battalion | Shamanbat\",\"country\":\"Ukraine\",\"official_url\":\"https:\/\/www.shamanbat-gur.army\/\",\"note\":\"A Ukrainian military unit under the special forces (Spetsnaz) of the Main Directorate of Intelligence of Ukraine, established in 2022 in response to the Russian invasion of Ukraine.\\n\\nThe battalion, named in reference to its secretive nature, was formed from veterans of the war in Donbas and the war in Afghanistan; during the fighting, it successfully liberated several occupied villages and later engaged in counterattacks and sabotage operations, becoming one of the most significant special units of this conflict.\\n\\nCommander: HUR officer with the call sign Shaman\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Batshaman.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[\"official-41168\"]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41186\",\"post_id\":\"41186\",\"node_type\":\"official\",\"label\":\"PROJECT I Want to Live\",\"original_name\":\"\u041f\u0440\u043e\u0454\u043a\u0442 \u00ab\u0425\u043e\u0447\u0443 \u0436\u0438\u0442\u044c\u00bb\",\"country\":\"Ukraine\",\"official_url\":\"https:\/\/koordshtab.gov.ua\/hochuzhit\",\"note\":\"A project of the Coordination Headquarters for the Treatment of Prisoners of War, operating since September 2022 as a center for voluntary surrender requests. After verifying a request, the project transfers the information to personnel of the HUR MO of Ukraine, who ensure operations for extraction from the combat zone.\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/Malinovy-klin-10.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41172\",\"post_id\":\"41172\",\"node_type\":\"official\",\"label\":\"TIMUR Special Unit\",\"original_name\":\"\u201cTimur Special Unit\u201d of the GUR of the Ministry of Defense of Ukraine\",\"country\":\"Ukraine\",\"official_url\":\"https:\/\/gur.gov.ua\/content\/zaishly-na-zmiinyi-i-zrozumily-rosiiany-zvidty-panichno-vtikaly-tymur.html\",\"note\":\"\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/TimurGUR.jpg?fit=300%2C150\\u0026quality=89\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[\"official-41168\"]},\"classes\":\"osm-official\"},{\"data\":{\"id\":\"official-41443\",\"post_id\":\"41443\",\"node_type\":\"official\",\"label\":\"Vojensko-n\u00e1mo\u0159n\u00ed s\u00edly Ukrajiny\",\"original_name\":\"\u0412\u0456\u0439\u0441\u044c\u043a\u043e\u0432\u043e-\u041c\u043e\u0440\u0441\u044c\u043a\u0456 \u0421\u0438\u043b\u0438 \u0417\u0431\u0440\u043e\u0439\u043d\u0438\u0445 \u0421\u0438\u043b \u0423\u043a\u0440\u0430\u0457\u043d\u0438\",\"country\":\"Ukrajina\",\"official_url\":\"https:\/\/navy.mil.gov.ua\/\",\"note\":\"Druh Ozbrojen\u00fdch sil Ukrajiny odpov\u011bdn\u00fd za n\u00e1mo\u0159n\u00ed obranu a operace. Nad\u0159\u00edzenou strukturou jsou Ozbrojen\u00e9 s\u00edly Ukrajiny (ZSU).\",\"logo\":\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/10\/Vojensko-namorni-sily-Ukrajiny-%E2%80%93-znak.png?fit=300%2C300\\u0026quality=80\\u0026ssl=1\",\"has_logo\":\"yes\",\"parent_ids\":[\"official-41213\"]},\"classes\":\"osm-official\"}],\"official_actor_edges\":[{\"data\":{\"id\":\"official-actor-i-28001-41214\",\"source\":\"28001\",\"target\":\"official-41214\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-34027-41214\",\"source\":\"person-34027\",\"target\":\"official-41214\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-34215-41214\",\"source\":\"person-34215\",\"target\":\"official-41214\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-25739-41168\",\"source\":\"25739\",\"target\":\"official-41168\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-28020-41183\",\"source\":\"28020\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-31509-41183\",\"source\":\"31509\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-28011-41183\",\"source\":\"28011\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-34953-41183\",\"source\":\"34953\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-27313-41183\",\"source\":\"27313\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-36253-41183\",\"source\":\"36253\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-28005-41183\",\"source\":\"28005\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-33977-41183\",\"source\":\"33977\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-34138-41183\",\"source\":\"34138\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-37912-41183\",\"source\":\"37912\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-39011-41183\",\"source\":\"39011\",\"target\":\"official-41183\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-33804-41184\",\"source\":\"33804\",\"target\":\"official-41184\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-33877-41184\",\"source\":\"person-33877\",\"target\":\"official-41184\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-27982-41185\",\"source\":\"27982\",\"target\":\"official-41185\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-31884-41185\",\"source\":\"person-31884\",\"target\":\"official-41185\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-33152-41185\",\"source\":\"person-33152\",\"target\":\"official-41185\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-30070-41185\",\"source\":\"person-30070\",\"target\":\"official-41185\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-29628-41185\",\"source\":\"person-29628\",\"target\":\"official-41185\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-33152-41212\",\"source\":\"person-33152\",\"target\":\"official-41212\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-31884-41212\",\"source\":\"person-31884\",\"target\":\"official-41212\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-40802-41170\",\"source\":\"40802\",\"target\":\"official-41170\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-34135-41170\",\"source\":\"34135\",\"target\":\"official-41170\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-27363-41170\",\"source\":\"person-27363\",\"target\":\"official-41170\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-30500-41170\",\"source\":\"person-30500\",\"target\":\"official-41170\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-40997-41170\",\"source\":\"person-40997\",\"target\":\"official-41170\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-40803-41170\",\"source\":\"person-40803\",\"target\":\"official-41170\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-31514-41186\",\"source\":\"person-31514\",\"target\":\"official-41186\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-27313-41172\",\"source\":\"27313\",\"target\":\"official-41172\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-31509-41172\",\"source\":\"31509\",\"target\":\"official-41172\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-34953-41172\",\"source\":\"34953\",\"target\":\"official-41172\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-i-41449-41172\",\"source\":\"41449\",\"target\":\"official-41172\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-31514-41172\",\"source\":\"person-31514\",\"target\":\"official-41172\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"},{\"data\":{\"id\":\"official-actor-p-39029-41172\",\"source\":\"person-39029\",\"target\":\"official-41172\",\"rel_type\":\"official_structure\"},\"classes\":\"osm-official-edge\"}],\"official_event_map\":{\"37248\":[\"official-41172\"]},\"category_filters\":[{\"id\":\"83\",\"label\":\"CIVIC INITIATIVES\",\"node_ids\":[\"person-30207\",\"person-30073\",27978,\"person-31856\",27997,\"person-25762\",31152,\"person-34678\",\"person-33152\",30541,\"person-31884\",27982,\"person-32329\",\"person-34215\",\"person-34027\",27972,28053,28020,31509,34396,27986,27428,33753,\"person-33655\",28028]},{\"id\":\"949\",\"label\":\"INDEPENDENCE\",\"node_ids\":[40576,\"person-40575\",\"person-30073\",27978,\"person-30204\",27999,\"person-30070\",27982,34048,\"person-39029\",\"person-33877\",28024,28022,28020,\"person-34052\",\"person-34027\",\"person-34215\",27972,\"person-39469\",\"person-29628\",\"person-28752\",28057,27310,34399,28026,\"person-31884\",\"person-33152\",40418,\"person-40447\",34211,28003,29667,\"person-40606\",28013,27306]},{\"id\":\"711\",\"label\":\"INTERVIEWS\",\"node_ids\":[\"person-25758\",28016,\"person-39930\",39013,\"person-39931\",31494,25742,\"person-39037\",\"person-36183\",\"person-29345\",27986,\"person-28750\"]},{\"id\":\"567\",\"label\":\"MARTIN CHARV\u00c1T'S BELARUSIAN COLUMN\",\"node_ids\":[31518,\"person-25760\",28018,36253,27970,27313]},{\"id\":\"77\",\"label\":\"MILITARY UNITS\",\"node_ids\":[33991,\"person-33962\",\"person-30073\",27978,27972,\"person-40803\",\"person-30070\",\"person-33965\",\"person-34052\",\"person-34027\",\"person-34215\",\"person-34208\",27999,28001,33977,\"person-33137\",34048,39017,27982,\"person-39029\",\"person-33877\",28024,28022,33804,28016,28015,27493,25739,\"person-29653\",28020,\"person-31514\",31509,\"person-33152\",27997,31494,34045,25744,27310,34953,32357,27986,27427,\"person-32329\",27428,\"person-39025\",\"person-28704\",\"person-28731\",\"person-28747\",\"person-35390\",\"person-35397\",\"person-35394\",\"person-35265\",\"person-28734\",\"person-31884\",\"person-33655\",34396,27313,28049,\"person-28693\",39008,\"person-39027\",39011,36261,33753,28047,28028]},{\"id\":\"1864\",\"label\":\"OBITUARY\",\"node_ids\":[33991,\"person-33962\",\"person-30073\",27978,27972,\"person-40803\",\"person-28734\",\"person-33152\",\"person-31884\",27997,28020,34953]},{\"id\":\"950\",\"label\":\"OVERVIEWS\",\"node_ids\":[30530,27427,28016,25742,27986,28047,27428,36263,27310,34211,\"person-28752\",28026,28020]},{\"id\":\"82\",\"label\":\"PARTISAN GROUPS\",\"node_ids\":[28016,33490,36263,28020,25739,\"person-29653\",27997,\"person-33152\",\"person-35265\",27493,30541,\"person-33877\",28024,28022,31494,33804,28015,28018,31518,\"person-25758\",25742,\"person-39037\",\"person-39930\",\"person-34678\",25744,27986,28049,30530,\"person-36183\",28008,39014,34045,27310,34953,32357,31509,27427,39009,27428,\"person-39025\",28047,26430,\"person-39023\",\"person-35394\",\"person-28747\",\"person-35397\",\"person-35390\",34396,28062,28053,27306,33753,39011,28051,36261,28028,\"person-28750\",27970,\"person-33137\",34399,\"person-33655\"]},{\"id\":\"570\",\"label\":\"PAVEL VESELSK\u00dd\u2019S HISTORICAL PERSPECTIVE\",\"node_ids\":[31494,29667,\"person-40606\",27310,\"person-39941\",28003,28026,\"person-28752\",28057,28013]},{\"id\":\"81\",\"label\":\"POLITICAL INITIATIVES\",\"node_ids\":[25739,\"person-29653\",27997,\"person-33152\",\"person-35265\",\"person-31884\",\"person-31856\",\"person-30207\",\"person-30073\",27978,29667,\"person-40606\",\"person-34678\",\"person-30070\",\"person-33965\",\"person-34052\",\"person-34027\",\"person-34215\",\"person-34208\",\"person-33962\",27999,28001,33977,33991,\"person-33137\",34048,39017,27982,\"person-39029\",\"person-30204\",28020,27972,\"person-39469\",\"person-29628\",\"person-28752\",28057,27310,34399,28026,31494,28016,\"person-25758\",25744,31509,25742,\"person-39037\",34045,34953,32357,27986,27427,\"person-32329\",\"person-33655\",28003,27306,34211,\"person-39028\",39934,39935,39936,39938,39939,\"person-39940\",\"person-39949\",39953,\"person-39952\",\"person-39951\",34396,28028]},{\"id\":\"11\",\"label\":\"Uncategorized\",\"node_ids\":[28016,33490,31494,27997,\"person-34678\",40418,\"person-40447\",\"person-31884\",\"person-29628\",27982,39009,28026,26414,28013,32357,25744,\"person-33655\",28028,28020]},{\"id\":\"951\",\"label\":\"VOICE OF THE RESISTANCE MOVEMENT\",\"node_ids\":[\"person-36183\",27491,33490,28016,27493,\"person-33152\",\"person-31514\",\"person-28704\",\"person-39931\",\"person-25758\",\"person-39930\",\"person-31856\",27997,27986,\"person-28750\"]},{\"id\":\"1315\",\"label\":\"WRITE LETTERS\",\"node_ids\":[\"person-31856\",27997,28020]}],\"event_filters\":[{\"id\":\"41564\",\"label\":\"15th Free Russia Forum\",\"node_ids\":[27997,\"person-31884\",\"person-31856\",\"person-33152\"],\"source_id\":\"41564\",\"articles\":[{\"title\":\"Free Russia Forum once again calls on Russians in exile to support Ukraine\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/the-free-russia-forum-once-again-calls-on-russians-living-abroad-to-support-ukraine\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=41566\"},{\"id\":\"37273\",\"label\":\"A memorial at the last address of Anna Politkovskaya\",\"node_ids\":[\"person-25762\",31152],\"source_id\":\"37273\",\"articles\":[{\"title\":\"There are dates we must remember\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/data-we-need-to-remember\/\"},{\"title\":\"There are dates we must remember\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/data-we-need-to-remember\/\"},{\"title\":\"There are dates we must remember\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/data-we-need-to-remember\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38618\"},{\"id\":\"38862\",\"label\":\"Appeal to the Governor of the Belgorod Region\",\"node_ids\":[31509,28020],\"source_id\":\"38862\",\"articles\":[],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"38995\",\"label\":\"Arson attack on a vehicle with Z symbols\",\"node_ids\":[25742,\"person-39037\"],\"source_id\":\"38995\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39291\"},{\"id\":\"38981\",\"label\":\"Attack on Aircraft Repair Plant No. 711\",\"node_ids\":[38920,25744],\"source_id\":\"38981\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39286\"},{\"id\":\"39007\",\"label\":\"Attack on the Kirishi Refinery (Kirishinefteorgsintez)\",\"node_ids\":[25739,\"person-29653\"],\"source_id\":\"39007\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39312\"},{\"id\":\"39004\",\"label\":\"Attack on the Orenburg Gas and Helium Complex\",\"node_ids\":[25739,\"person-29653\"],\"source_id\":\"39004\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39324\"},{\"id\":\"39997\",\"label\":\"Auction and collection to support Russian volunteers on the Ukrainian side\",\"node_ids\":[\"person-34678\",\"person-39036\",34396,\"person-31884\",27997],\"source_id\":\"39997\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39998\"},{\"id\":\"37242\",\"label\":\"Belarusian partisans damaged a Russian Beriev A-50 aircraft\",\"node_ids\":[27970,\"person-25760\"],\"source_id\":\"37242\",\"articles\":[{\"title\":\"Partyz\u00e1ni ude\u0159ili na leti\u0161t\u011b\",\"url\":\"https:\/\/osmstatecnych.cz\/partyzani-uderili-na-letiste\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38596\"},{\"id\":\"38671\",\"label\":\"Black Bridge joins the Freedom of Russia Legion\",\"node_ids\":[27986,28020,28049],\"source_id\":\"38671\",\"articles\":[{\"title\":\"Partyz\u00e1ni z \u010cern\u00e9ho mostu se p\u0159ipojuj\u00ed k legii Svoboda Ruska\",\"url\":\"https:\/\/osmstatecnych.cz\/partyzani-z-cerneho-mostu-se-pripojuji-k-legii-svoboda-ruska\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38779\"},{\"id\":\"39860\",\"label\":\"Conference on the International Status of the Chechen Republic of Ichkeria\",\"node_ids\":[\"person-30073\",27978,\"person-30204\"],\"source_id\":\"39860\",\"articles\":[{\"title\":\"The government-in-exile of the Chechen Republic of Ichkeria met in Prague\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/v-praze-se-sesla-exilova-vlada-cecenske-republiky-ickerie-premier-ahmed-zakajev-se-pripojil-online\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39867\"},{\"id\":\"39714\",\"label\":\"Conference \u201cThe Caucasus as the Key to the Disintegration of the Russian Federation\u201d\",\"node_ids\":[27999,28001,33977,33991,34048,34211,\"person-34208\",\"person-33137\",\"person-34027\",\"person-34215\",\"person-34052\",\"person-33965\",\"person-33962\",\"person-39029\",\"person-30070\",27982],\"source_id\":\"39714\",\"articles\":[{\"title\":\"The Caucasus wants to cooperate with Ukraine on the disintegration of Russia\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/the-caucasus-wants-to-cooperate-with-ukraine-on-the-breakup-of-russia\/\"},{\"title\":\"The Northern Caucasus as the Key to the Disintegration of the Russian Federation\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/the-north-caucasus-as-the-key-to-the-collapse-of-the-russian-federation\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39715\"},{\"id\":\"37281\",\"label\":\"Counter-terrorism operation against the legions\",\"node_ids\":[28020,31509,\"person-28704\",\"person-31514\"],\"source_id\":\"37281\",\"articles\":[{\"title\":\"Maj\u00ed za \u00fakol zni\u010dit nep\u0159\u00edtele, m\u00edsto toho ni\u010d\u00ed celou oblast\",\"url\":\"https:\/\/osmstatecnych.cz\/maji-za-ukol-znicit-nepritele-misto-toho-nici-celou-oblast\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38613\"},{\"id\":\"38859\",\"label\":\"Declaration of Cooperation with the Freedom of Russia Legion\",\"node_ids\":[31509,28020],\"source_id\":\"38859\",\"articles\":[],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"39862\",\"label\":\"Declaration of the Citizens of New Russia\",\"node_ids\":[27997,\"person-33152\",\"person-31884\"],\"source_id\":\"39862\",\"articles\":[{\"title\":\"Deklarace ob\u010dan\u016f Nov\u00e9ho Ruska\",\"url\":\"https:\/\/osmstatecnych.cz\/deklarace-obcanu-noveho-ruska\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39891\"},{\"id\":\"40762\",\"label\":\"Derailment of tanker train by KPD partisans\",\"node_ids\":[28016,33490],\"source_id\":\"40762\",\"articles\":[{\"title\":\"Partisans from Kuban crippled war supplies on the North Caucasus Railway\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/partisans-from-kuban-disrupted-the-war-supply-chain-on-the-north-caucasus-railroad\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=40765\"},{\"id\":\"37748\",\"label\":\"Destruction of two Ruslans | Freedom of Russia Legion partisans\",\"node_ids\":[28020,36261],\"source_id\":\"37748\",\"articles\":[{\"title\":\"Partyz\u00e1ni zru\u0161ili dva Ruslany jedn\u00edm dronem\",\"url\":\"https:\/\/osmstatecnych.cz\/partyzani-zrusili-dva-ruslany-jednim-dronem\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38548\"},{\"id\":\"37759\",\"label\":\"Disclosure of Operation Rybalka\",\"node_ids\":[28020,\"person-35390\"],\"source_id\":\"37759\",\"articles\":[{\"title\":\"The Sign of the Four*\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/the-sign-of-the-four\/\"}],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"40658\",\"label\":\"Elections to the Council of People\u2019s Representatives of the Udmurt Republic\",\"node_ids\":[40576,\"person-40575\"],\"source_id\":\"40658\",\"articles\":[{\"title\":\"The Free Udmurtia Movement offers its country free elections\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/the-free-udmurtia-movement-offers-free-elections-to-its-country\/\"}],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"38863\",\"label\":\"Elimination of Colonel Andrey Stesev\",\"node_ids\":[31509,28020],\"source_id\":\"38863\",\"articles\":[{\"title\":\"Legie Svoboda Ruska nab\u00edz\u00ed Prigo\u017einovi v\u00fdm\u011bnu sv\u00fdch zajatc\u016f za atent\u00e1tn\u00edka\/Prigo\u017einova odpov\u011b\u010f\",\"url\":\"https:\/\/osmstatecnych.cz\/legie-svoboda-ruska-nabizi-prigozinovi-vymenu-svych-zajatcu-za-atentatnika\/\"}],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"37291\",\"label\":\"Establishment of the Congress of People\u2019s Deputies\",\"node_ids\":[34399,\"person-33655\"],\"source_id\":\"37291\",\"articles\":[{\"title\":\"Dear friends and anti-Putin coalition allies!\",\"url\":\"https:\/\/osmstatecnych.cz\/dear-friends-and-anti-putin-coalition-allies\/\"},{\"title\":\"Putinova vra\u017eda a \u201ez\u00e1kon o lustrac\u00edch\u201c\",\"url\":\"https:\/\/osmstatecnych.cz\/putinova-vrazda-a-zakon-o-lustracich\/\"},{\"title\":\"P\u0159ijmeme z\u00e1kon o n\u00e1rodn\u00edm odporu\",\"url\":\"https:\/\/osmstatecnych.cz\/prijmeme-zakon-o-narodnim-odporu\/\"},{\"title\":\"Ukrajinci, draz\u00ed soused\u00e9!\",\"url\":\"https:\/\/osmstatecnych.cz\/ukrajinci-drazi-sousede\/\"},{\"title\":\"Ve Var\u0161av\u011b se p\u00ed\u0161e \u00fastava svobodn\u00e9ho Ruska\",\"url\":\"https:\/\/osmstatecnych.cz\/ve-varsave-se-pise-ustava-svobodneho-ruska\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38603\"},{\"id\":\"39861\",\"label\":\"First Meeting of Russian Democratic Representatives at PACE\",\"node_ids\":[\"person-31884\",\"person-33152\"],\"source_id\":\"39861\",\"articles\":[{\"title\":\"Representatives of Russian democratic forces met for the first time today at PACE\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/representatives-of-russian-democratic-forces-met-for-the-first-time-today-at-pace\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39864\"},{\"id\":\"39887\",\"label\":\"First series of online referendums on self-determination and independence for RF regions\",\"node_ids\":[27306,26414],\"source_id\":\"39887\",\"articles\":[{\"title\":\"Ten million Russians voted in an online referendum on self-determination and independence for their regions\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/ten-million-russians-voted-in-an-online-referendum-on-self-determination-and-the-independence-of-their-regions\/\"}],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"37287\",\"label\":\"Funeral Goods Warehouse\",\"node_ids\":[28016,33490],\"source_id\":\"37287\",\"articles\":[{\"title\":\"\u201cHeroes\u201d of the special operation will not have an alley\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/heroes-special-operations-but-they-wont-have-any\/\"},{\"title\":\"\u201cHeroes\u201d of the special operation will not have an alley\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/heroes-special-operations-but-they-wont-have-any\/\"},{\"title\":\"\u201cHeroes\u201d of the special operation will not have an alley\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/heroes-special-operations-but-they-wont-have-any\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38600\"},{\"id\":\"38987\",\"label\":\"Gas pipelines supplying military production plants destroyed\",\"node_ids\":[31509,25744],\"source_id\":\"38987\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39374\"},{\"id\":\"37283\",\"label\":\"Headquarters of the FSB Border Service\",\"node_ids\":[27986,\"person-28750\"],\"source_id\":\"37283\",\"articles\":[{\"title\":\"Part Two | The Core of the Resistance: BLACK BRIDGE\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/part-two-the-core-of-the-resistance-black-bridge\/\"},{\"title\":\"Vin\u00edkem je FSB, \u0159\u00edk\u00e1 \u017eh\u00e1\u0159 z Rostova\",\"url\":\"https:\/\/osmstatecnych.cz\/vinikem-je-fsb-rika-zhar-z-rostova\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38608\"},{\"id\":\"39869\",\"label\":\"HUR Operation Involving the Faked Death of Denis Kapustin\",\"node_ids\":[\"person-31514\",31509],\"source_id\":\"39869\",\"articles\":[{\"title\":\"The Russian-ordered assassination of Denis Kapustin was thwarted by Ukrainian intelligence\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/the-russian-ordered-assassination-of-denis-kapustin-was-thwarted-by-ukrainian-intelligence\/\"}],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"38860\",\"label\":\"Incursion into the Belgorod Region\",\"node_ids\":[31509,28020,39011],\"source_id\":\"38860\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38893\"},{\"id\":\"38868\",\"label\":\"Interview with Commander Ammosov on Radio Free Europe\",\"node_ids\":[34953,\"person-39036\"],\"source_id\":\"38868\",\"articles\":[],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"37221\",\"label\":\"Irpin Declaration\",\"node_ids\":[\"person-33655\",28020,31509,28028],\"source_id\":\"37221\",\"articles\":[{\"title\":\"IRPI\u0147SK\u00c1 DEKLARACE\",\"url\":\"https:\/\/osmstatecnych.cz\/irpinska-deklarace\/\"},{\"title\":\"Vznik\u00e1 dost tvrd\u00e1 s\u00edla\",\"url\":\"https:\/\/osmstatecnych.cz\/vznika-dost-tvrda-sila\/\"},{\"title\":\"Deklarace podeps\u00e1na!\",\"url\":\"https:\/\/osmstatecnych.cz\/deklarace-podepsana\/\"},{\"title\":\"Sjednocen\u00ed ozbrojen\u00e9 rusk\u00e9 opozice se zadrhlo\",\"url\":\"https:\/\/osmstatecnych.cz\/sjednoceni-ozbrojene-ruske-opozice-se-zadrhlo\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38598\"},{\"id\":\"41202\",\"label\":\"Karelian Uprising Center\",\"node_ids\":[28011,28013],\"source_id\":\"41202\",\"articles\":[{\"title\":\"Karelian Uprising against the Bolsheviks\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/the-karelian-uprising-against-the-bolsheviks\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=41203\"},{\"id\":\"39874\",\"label\":\"Kuban Partisan Movement Sets Fire to Tugboat in Port Kavkaz\",\"node_ids\":[28016,33490,\"person-25758\"],\"source_id\":\"39874\",\"articles\":[{\"title\":\"Remork\u00e9r v Ker\u010dsk\u00e9m pr\u016flivu podp\u00e1lili partyz\u00e1ni z Kub\u00e1n\u011b\",\"url\":\"https:\/\/osmstatecnych.cz\/remorker-v-kercskem-prulivu-podpalili-partyzani-z-kubane\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39924\"},{\"id\":\"38869\",\"label\":\"Le Figaro article on the Siberian Battalion\",\"node_ids\":[34953,\"person-39036\"],\"source_id\":\"38869\",\"articles\":[],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"38870\",\"label\":\"Mediazona\u2019s Interview with Ildar Dadin\",\"node_ids\":[34953,\"person-39036\"],\"source_id\":\"38870\",\"articles\":[],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"38221\",\"label\":\"Memorandum of Cooperation Between the Caucasian Union, the In the Name of Georgia Movement, and the Political Wing of the Freedom of Russia Legion\",\"node_ids\":[\"person-34052\",\"person-34027\",\"person-34215\",27999,28020,\"person-39469\"],\"source_id\":\"38221\",\"articles\":[],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"39880\",\"label\":\"Memorandum on Supporting Russian Volunteers Fighting Against Putin\u2019s Regime\",\"node_ids\":[27997,28020,34953,\"person-31884\",\"person-33655\"],\"source_id\":\"39880\",\"articles\":[{\"title\":\"Memorandum o podpo\u0159e rusk\u00fdch dobrovoln\u00edk\u016f bojuj\u00edc\u00edch proti Putinovu re\u017eimu:\",\"url\":\"https:\/\/osmstatecnych.cz\/memorandum-o-podpore-ruskych-dobrovolniku-bojujicich-proti-putinovu-rezimu\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39886\"},{\"id\":\"37269\",\"label\":\"Memorial at the site of Boris Nemtsov\u2019s murder\",\"node_ids\":[31152,\"person-25762\"],\"source_id\":\"37269\",\"articles\":[{\"title\":\"Styd\u00edm se p\u0159ed Borisem N\u011bmcovem\",\"url\":\"https:\/\/osmstatecnych.cz\/stydim-se-pred-borisem-nemcovem\/\"},{\"title\":\"I want to pass that warmth on to those who need it\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/i-want-to-pass-that-warmth-on-to-those-who-need-it\/\"},{\"title\":\"There are dates we must remember\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/data-we-need-to-remember\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38571\"},{\"id\":\"38663\",\"label\":\"Pavilion of (Dis)Sent\",\"node_ids\":[\"person-34678\",\"person-30070\",28026],\"source_id\":\"38663\",\"articles\":[{\"title\":\"Rusk\u00e1 um\u011blkyn\u011b nab\u00edz\u00ed alternativn\u00ed m\u00edrov\u00fd pl\u00e1n\",\"url\":\"https:\/\/osmstatecnych.cz\/ruska-umelkyne-nabizi-alternativni-mirovy-plan\/\"},{\"title\":\"Russian \u201celections\u201d serve the regime exclusively\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/russian-elections-serve-the-regime-exclusively\/\"},{\"title\":\"Sl\u00e1va hrdin\u016fm!\",\"url\":\"https:\/\/osmstatecnych.cz\/slava-hrdinum\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38782\"},{\"id\":\"39665\",\"label\":\"Press conference following the incursion into the Belgorod region\",\"node_ids\":[31509,28020,\"person-31514\",\"person-28704\"],\"source_id\":\"39665\",\"articles\":[{\"title\":\"A two-minute selection from the press conference of the Russian Volunteer Corps\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/two-minute-clip-from-the-press-conference-of-the-freedom-legion-of-russia-and-the-russian-volunteer-corps\/\"},{\"title\":\"Legion\u00e1\u0159i Svobody Ruska hl\u00e1s\u00ed po B\u011blgorodsk\u00e9m v\u00fdpadu dva padl\u00e9. \u201cN\u00e1\u0161 boj pokra\u010duje,\u201d dod\u00e1vaj\u00ed\",\"url\":\"https:\/\/osmstatecnych.cz\/legionari-svobody-ruska-hlasi-po-belgorodskem-vypadu-dva-padle-nas-boj-pokracuje-dodavaji\/\"},{\"title\":\"Mluv\u010d\u00ed legie Svoboda Ruska\",\"url\":\"https:\/\/osmstatecnych.cz\/mluvci-legie-svoboda-ruska-v-kratke-ukazce-z-tiskove-konference-k-belgorodske-operaci\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39667\"},{\"id\":\"37279\",\"label\":\"Protest against the exclusion of Yabloko from the elections\",\"node_ids\":[\"person-33152\",\"person-34678\"],\"source_id\":\"37279\",\"articles\":[{\"title\":\"Russian \u201celections\u201d serve the regime exclusively\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/russian-elections-serve-the-regime-exclusively\/\"},{\"title\":\"Russian \u201celections\u201d serve the regime exclusively\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/russian-elections-serve-the-regime-exclusively\/\"},{\"title\":\"Russian \u201celections\u201d serve the regime exclusively\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/russian-elections-serve-the-regime-exclusively\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38616\"},{\"id\":\"37277\",\"label\":\"Protest following the Baltic Way\",\"node_ids\":[27310,29667,\"person-40606\"],\"source_id\":\"37277\",\"articles\":[{\"title\":\"37 Years Later: Freedom for the Baltics, Freedom for Ukraine, Freedom for Tatarstan\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/o-37-years-later-freedom-for-the-balto-states-freedom-for-ukraine-freedom-for-tatarstan\/\"},{\"title\":\"37 Years Later: Freedom for the Baltics, Freedom for Ukraine, Freedom for Tatarstan\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/o-37-years-later-freedom-for-the-balto-states-freedom-for-ukraine-freedom-for-tatarstan\/\"},{\"title\":\"37 Years Later: Freedom for the Baltics, Freedom for Ukraine, Freedom for Tatarstan\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/o-37-years-later-freedom-for-the-balto-states-freedom-for-ukraine-freedom-for-tatarstan\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38610\"},{\"id\":\"39065\",\"label\":\"Railway relay cabinet destroyed in the Belgorod region\",\"node_ids\":[32357,25742],\"source_id\":\"39065\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39350\"},{\"id\":\"37747\",\"label\":\"Round Table of the Armed Wing of the Russian Opposition\",\"node_ids\":[28020,\"person-33655\",31509,28028],\"source_id\":\"37747\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38531\"},{\"id\":\"41260\",\"label\":\"Sabotage of fuel distribution\",\"node_ids\":[28016,33490],\"source_id\":\"41260\",\"articles\":[{\"title\":\"Kuban insurgent movement paralyzed fuel distribution for the Southern Military District\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/cuban-rebel-movement-paralyzed-fuel-distribution-for-the-southern-military-district\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=41266\"},{\"id\":\"39005\",\"label\":\"Sabotage of the Belousovo\u2013Leningrad Pipeline\",\"node_ids\":[25739,\"person-29653\"],\"source_id\":\"39005\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39322\"},{\"id\":\"39006\",\"label\":\"Sabotage of the Konnaya Lakhta Gas Pipeline\",\"node_ids\":[25739,\"person-29653\"],\"source_id\":\"39006\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39319\"},{\"id\":\"37248\",\"label\":\"Sabotage Operations by HUR and the Siberian Battalion\",\"node_ids\":[34953,27428,\"person-39025\"],\"source_id\":\"37248\",\"articles\":[{\"title\":\"The madness committed by my own people\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/the-atrocities-committed-by-my-own-people\/\"},{\"title\":\"Siberian Battalion and the Kinburn Spit\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/siberian-flag-and-kinburn-scythe\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38622\"},{\"id\":\"39888\",\"label\":\"Second series of online referendums on self-determination and independence of RF regions\",\"node_ids\":[27306,26414],\"source_id\":\"39888\",\"articles\":[{\"title\":\"Ten million Russians voted in an online referendum on self-determination and independence for their regions\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/ten-million-russians-voted-in-an-online-referendum-on-self-determination-and-the-independence-of-their-regions\/\"}],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"39895\",\"label\":\"Second Session of the Congress of People\u2019s Deputies\",\"node_ids\":[34399,\"person-33655\"],\"source_id\":\"39895\",\"articles\":[{\"title\":\"Ve Var\u0161av\u011b se p\u00ed\u0161e \u00fastava svobodn\u00e9ho Ruska\",\"url\":\"https:\/\/osmstatecnych.cz\/ve-varsave-se-pise-ustava-svobodneho-ruska\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39910\"},{\"id\":\"38872\",\"label\":\"Siberian Battalion, LSR, and RVC enter Russian territory\",\"node_ids\":[34953,28020,31509],\"source_id\":\"38872\",\"articles\":[],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38884\"},{\"id\":\"39863\",\"label\":\"Sweden raised the issue of the Russian occupation of Ichkeria\",\"node_ids\":[\"person-29628\",27982,27978],\"source_id\":\"39863\",\"articles\":[{\"title\":\"\u0160v\u00e9dsko otev\u00edr\u00e1 ot\u00e1zku okupace \u010ce\u010denska\",\"url\":\"https:\/\/osmstatecnych.cz\/svedsko-otevira-otazku-okupace-cecenska\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39870\"},{\"id\":\"39985\",\"label\":\"The Fifth Anti-War Conference of the Free Russia Forum and the adoption of a resolution on forms of resistance and support for Ukraine\",\"node_ids\":[27997,34399,\"person-31884\"],\"source_id\":\"39985\",\"articles\":[{\"title\":\"\u201cWe recognize all forms of the use of force in resistance against Putinism, provided they do not affect civilians.\u201d\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/we-recognize-all-forms-of-the-use-of-force-in-resistance-against-putinism-provided-they-do-not-harm-civilians\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=39986\"},{\"id\":\"37250\",\"label\":\"The Second Incursion of the Russian Legions\",\"node_ids\":[28020,31509],\"source_id\":\"37250\",\"articles\":[{\"title\":\"Druh\u00fd v\u00fdpad rusk\u00fdch legi\u00ed (pr\u016fb\u011b\u017en\u011b aktualizujeme)\",\"url\":\"https:\/\/osmstatecnych.cz\/druhy-vypad-ruskych-legii\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38593\"},{\"id\":\"37275\",\"label\":\"Transshipment Storage Complex\",\"node_ids\":[28016,33490],\"source_id\":\"37275\",\"articles\":[{\"title\":\"\u201cHeroes\u201d of the special operation will not have an alley\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/heroes-special-operations-but-they-wont-have-any\/\"},{\"title\":\"\u201cHeroes\u201d of the special operation will not have an alley\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/heroes-special-operations-but-they-wont-have-any\/\"},{\"title\":\"\u201cHeroes\u201d of the special operation will not have an alley\",\"url\":\"https:\/\/osmstatecnych.cz\/en\/heroes-special-operations-but-they-wont-have-any\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38615\"},{\"id\":\"37295\",\"label\":\"Two sixteen-year-old Ukrainian partisans killed in shootout with occupiers\",\"node_ids\":[26430,\"person-39023\",\"person-39022\"],\"source_id\":\"37295\",\"articles\":[{\"title\":\"\u201cHotovo, tohle je smrt, kluci. Sbohem. Sl\u00e1va Ukrajin\u011b!\u201d\",\"url\":\"https:\/\/osmstatecnych.cz\/hotovo-tohle-je-smrt-kluci-sbohem-slava-ukrajine\/\"}],\"map_available\":true,\"map_url\":\"https:\/\/osmstatecnych.cz\/en\/map\/?udalost=38572\"},{\"id\":\"38670\",\"label\":\"\u010cern\u00fd Most Joins the Coalition\",\"node_ids\":[27986,25744],\"source_id\":\"38670\",\"articles\":[],\"map_available\":false,\"map_url\":\"\"},{\"id\":\"38669\",\"label\":\"\u010cern\u00fd Most takes over the activities of the Stop the Wagons initiative\",\"node_ids\":[27986,28047],\"source_id\":\"38669\",\"articles\":[],\"map_available\":false,\"map_url\":\"\"}]};\r\n\r\n\r\n            let cy =\r\n                null;\r\n\r\n\r\n            let singleMode =\r\n                false;\r\n\r\n\r\n            let filteredMode =\r\n                false;\r\n\r\n\r\n            function setZoomControlsVisible(visible) {\r\n                if (!zoomControls) {\r\n                    return;\r\n                }\r\n\r\n                zoomControls.classList.toggle(\r\n                    'is-visible',\r\n                    Boolean(visible)\r\n                );\r\n            }\r\n\r\n\r\n            function zoomGraphBy(factor) {\r\n                if (!cy) {\r\n                    return;\r\n                }\r\n\r\n                const currentZoom = cy.zoom();\r\n                const nextZoom = Math.max(\r\n                    cy.minZoom(),\r\n                    Math.min(\r\n                        cy.maxZoom(),\r\n                        currentZoom * factor\r\n                    )\r\n                );\r\n\r\n                cy.zoom({\r\n                    level: nextZoom,\r\n                    renderedPosition: {\r\n                        x: container.clientWidth \/ 2,\r\n                        y: 24\r\n                    }\r\n                });\r\n\r\n                if (singleMode || filteredMode) {\r\n                    requestAnimationFrame(function () {\r\n                        alignSingleGraphNearTop();\r\n                    });\r\n                }\r\n            }\r\n\r\n\r\n            function resetGraphZoom() {\r\n                if (!cy) {\r\n                    return;\r\n                }\r\n\r\n                cy.fit(\r\n                    cy.elements(),\r\n                    120\r\n                );\r\n\r\n                if (singleMode || filteredMode) {\r\n                    alignSingleGraphNearTop();\r\n                }\r\n\r\n                updateCenterLabel();\r\n            }\r\n\r\n\r\n            zoomButtons.forEach(function (button) {\r\n                button.addEventListener('click', function (event) {\r\n                    event.preventDefault();\r\n                    event.stopPropagation();\r\n\r\n                    const action = button.dataset.osmZoom;\r\n\r\n                    if (action === 'in') {\r\n                        zoomGraphBy(1.22);\r\n                    } else if (action === 'out') {\r\n                        zoomGraphBy(1 \/ 1.22);\r\n                    } else {\r\n                        resetGraphZoom();\r\n                    }\r\n                });\r\n            });\r\n\r\n\r\n            let currentCenterId =\r\n                null;\r\n\r\n\r\n            \/*\r\n             * Typ centr\u00e1ln\u00edho uzlu v detailu:\r\n             * initiative | person | null\r\n             *\/\r\n            let currentCenterType =\r\n                null;\r\n\r\n\r\n            \/*\r\n             * FILTR TYPU VAZBY:\r\n             * all | membership | cooperation | association\r\n             *\/\r\n            let currentRelationFilter =\r\n                'all';\r\n\r\n\r\n            \/*\r\n             * OSOBNOSTI V DETAILU\r\n             *\/\r\n            let peopleVisible =\r\n                false;\r\n\r\n            let currentPersonFilter =\r\n                'all';\r\n\r\n            let currentActorFilter =\r\n                'all';\r\n\r\n            let officialExpanded = false;\r\n            let openOfficialNodeId = '';\r\n\r\n            function hideOfficialPopup() {\r\n                officialPopup.classList.remove('is-visible');\r\n                officialPopup.innerHTML = '';\r\n                openOfficialNodeId = '';\r\n            }\r\n\r\n            function getOfficialContextLabel() {\r\n                let label = '';\r\n\r\n                if (eventSelect) {\r\n                    const eventValue = String(eventSelect.value || '');\r\n\r\n                    if (eventValue) {\r\n                        const selectedOption = eventSelect.options[eventSelect.selectedIndex];\r\n\r\n                        if (selectedOption) {\r\n                            label = String(selectedOption.textContent || '').trim();\r\n                        }\r\n                    }\r\n                }\r\n\r\n                if (!label) {\r\n                    if (cy) {\r\n                        if (currentCenterId) {\r\n                            const center = cy.getElementById(String(currentCenterId));\r\n\r\n                            if (center) {\r\n                                if (!center.empty()) {\r\n                                    label = String(center.data('label') || '').trim();\r\n                                }\r\n                            }\r\n                        }\r\n                    }\r\n                }\r\n\r\n                return label.toUpperCase();\r\n            }\r\n\r\n            function setOfficialControlsVisible(visible) {\r\n                const isVisible = Boolean(visible);\r\n\r\n                officialButton.classList.toggle('is-visible', isVisible);\r\n                officialButton.setAttribute(\r\n                    'data-context',\r\n                    ''\r\n                );\r\n\r\n                if (!isVisible) {\r\n                    officialExpanded = false;\r\n                    officialButton.classList.remove('is-active');\r\n                    officialButton.setAttribute('aria-pressed', 'false');\r\n                    hideOfficialPopup();\r\n                }\r\n            }\r\n\r\n            function getOfficialNodeData(id) {\r\n                const wantedId = String(id);\r\n\r\n                return (originalData.official_nodes || []).find(\r\n                    function (node) {\r\n                        return String(node.data.id) === wantedId;\r\n                    }\r\n                );\r\n            }\r\n\r\n            function buildOfficialBundle(directIds, actorNodeId) {\r\n                const directSet = new Set(\r\n                    (directIds || []).map(String).filter(function (id) {\r\n                        return Boolean(getOfficialNodeData(id));\r\n                    })\r\n                );\r\n\r\n                if (!directSet.size) {\r\n                    return { nodes: [], edges: [], directIds: [] };\r\n                }\r\n\r\n                \/*\r\n                 * Kdy\u017e je akt\u00e9r explicitn\u011b napojen\u00fd z\u00e1rove\u0148 na ni\u017e\u0161\u00ed\r\n                 * strukturu i na n\u011bkter\u00e9ho jej\u00edho p\u0159edka, kresl\u00edme\r\n                 * p\u0159\u00edmou vazbu jen k hierarchicky nejni\u017e\u0161\u00ed struktu\u0159e.\r\n                 * \u0158et\u011bzec rodi\u010d\u016f nad n\u00ed ale z\u016fstane cel\u00fd viditeln\u00fd.\r\n                 *\/\r\n                const isOfficialAncestorOf = function (ancestorId, childId) {\r\n                    const wanted = String(ancestorId);\r\n                    const seen = new Set();\r\n                    const parentQueue = [String(childId)];\r\n\r\n                    while (parentQueue.length) {\r\n                        const currentId = parentQueue.shift();\r\n\r\n                        if (seen.has(currentId)) {\r\n                            continue;\r\n                        }\r\n\r\n                        seen.add(currentId);\r\n\r\n                        const currentNode = getOfficialNodeData(currentId);\r\n\r\n                        if (!currentNode) {\r\n                            continue;\r\n                        }\r\n\r\n                        const parents = Array.isArray(currentNode.data.parent_ids)\r\n                            ? currentNode.data.parent_ids\r\n                            : [];\r\n\r\n                        for (let i = 0; i < parents.length; i += 1) {\r\n                            const parentId = String(parents[i]);\r\n\r\n                            if (parentId === wanted) {\r\n                                return true;\r\n                            }\r\n\r\n                            if (!seen.has(parentId)) {\r\n                                parentQueue.push(parentId);\r\n                            }\r\n                        }\r\n                    }\r\n\r\n                    return false;\r\n                };\r\n\r\n                const allDirectIds = Array.from(directSet);\r\n\r\n                allDirectIds.forEach(function (candidateId) {\r\n                    const hasLowerDirect = allDirectIds.some(function (otherId) {\r\n                        if (otherId === candidateId) {\r\n                            return false;\r\n                        }\r\n\r\n                        return isOfficialAncestorOf(candidateId, otherId);\r\n                    });\r\n\r\n                    if (hasLowerDirect) {\r\n                        directSet.delete(candidateId);\r\n                    }\r\n                });\r\n\r\n                const levels = new Map();\r\n                const queue = [];\r\n\r\n                directSet.forEach(function (id) {\r\n                    levels.set(id, 0);\r\n                    queue.push(id);\r\n                });\r\n\r\n                while (queue.length) {\r\n                    const childId = queue.shift();\r\n                    const child = getOfficialNodeData(childId);\r\n                    const childLevel = levels.get(childId) || 0;\r\n\r\n                    if (!child) {\r\n                        continue;\r\n                    }\r\n\r\n                    const parents = Array.isArray(child.data.parent_ids)\r\n                        ? child.data.parent_ids\r\n                        : [];\r\n\r\n                    parents.forEach(function (parentId) {\r\n                        const id = String(parentId);\r\n\r\n                        if (!getOfficialNodeData(id)) {\r\n                            return;\r\n                        }\r\n\r\n                        const nextLevel = childLevel + 1;\r\n\r\n                        if (!levels.has(id) || nextLevel < levels.get(id)) {\r\n                            levels.set(id, nextLevel);\r\n                            queue.push(id);\r\n                        }\r\n                    });\r\n                }\r\n\r\n                const nodes = [];\r\n                const edges = [];\r\n                const edgeIds = new Set();\r\n\r\n                levels.forEach(function (level, id) {\r\n                    const base = getOfficialNodeData(id);\r\n\r\n                    if (!base) {\r\n                        return;\r\n                    }\r\n\r\n                    const nodeData = Object.assign({}, base.data, {\r\n                        official_level: level,\r\n                        official_direct: directSet.has(id) ? 'yes' : 'no'\r\n                    });\r\n\r\n                    nodes.push({\r\n                        data: nodeData,\r\n                        classes: 'osm-official official-ghost'\r\n                    });\r\n\r\n                    const parents = Array.isArray(base.data.parent_ids)\r\n                        ? base.data.parent_ids\r\n                        : [];\r\n\r\n                    parents.forEach(function (parentId) {\r\n                        const parent = String(parentId);\r\n\r\n                        if (!levels.has(parent)) {\r\n                            return;\r\n                        }\r\n\r\n                        const edgeId = 'official-parent-' + id + '-' + parent;\r\n\r\n                        if (edgeIds.has(edgeId)) {\r\n                            return;\r\n                        }\r\n\r\n                        edgeIds.add(edgeId);\r\n                        edges.push({\r\n                            data: {\r\n                                id: edgeId,\r\n                                source: id,\r\n                                target: parent,\r\n                                rel_type: 'official_parent'\r\n                            },\r\n                            classes: 'osm-official-edge official-ghost'\r\n                        });\r\n                    });\r\n                });\r\n\r\n                if (actorNodeId) {\r\n                    (originalData.official_actor_edges || []).forEach(\r\n                        function (edge) {\r\n                            if (\r\n                                String(edge.data.source) !== String(actorNodeId) ||\r\n                                !directSet.has(String(edge.data.target))\r\n                            ) {\r\n                                return;\r\n                            }\r\n\r\n                            if (edgeIds.has(String(edge.data.id))) {\r\n                                return;\r\n                            }\r\n\r\n                            edgeIds.add(String(edge.data.id));\r\n                            edges.push({\r\n                                data: Object.assign({}, edge.data),\r\n                                classes: 'osm-official-edge official-ghost'\r\n                            });\r\n                        }\r\n                    );\r\n                }\r\n\r\n                return {\r\n                    nodes: nodes,\r\n                    edges: edges,\r\n                    directIds: Array.from(directSet)\r\n                };\r\n            }\r\n\r\n            function getOfficialBundleForActor(actorNodeId) {\r\n                const directIds = (originalData.official_actor_edges || [])\r\n                    .filter(function (edge) {\r\n                        return String(edge.data.source) === String(actorNodeId);\r\n                    })\r\n                    .map(function (edge) {\r\n                        return String(edge.data.target);\r\n                    });\r\n\r\n                return buildOfficialBundle(directIds, actorNodeId);\r\n            }\r\n\r\n            function getOfficialBundleForEvent(eventId) {\r\n                const map = originalData.official_event_map || {};\r\n                const directIds = Array.isArray(map[String(eventId)])\r\n                    ? map[String(eventId)]\r\n                    : [];\r\n\r\n                return buildOfficialBundle(directIds, null);\r\n            }\r\n\r\n            function renderedToModelPosition(x, y) {\r\n                const zoom = cy ? cy.zoom() : 1;\r\n                const pan = cy ? cy.pan() : { x: 0, y: 0 };\r\n\r\n                return {\r\n                    x: (x - pan.x) \/ zoom,\r\n                    y: (y - pan.y) \/ zoom\r\n                };\r\n            }\r\n\r\n            function applyOfficialLayerState() {\r\n                if (!cy) {\r\n                    return;\r\n                }\r\n\r\n                const officialElements = cy.elements().filter(function (element) {\r\n                    const type = String(element.data('rel_type') || '');\r\n                    return (\r\n                        String(element.data('node_type') || '') === 'official' ||\r\n                        type === 'official_structure' ||\r\n                        type === 'official_parent'\r\n                    );\r\n                });\r\n\r\n                officialElements.toggleClass('official-full', officialExpanded);\r\n                officialElements.toggleClass('official-ghost', !officialExpanded);\r\n\r\n                const officialTable = stage.querySelector('.osm-official-side-table');\r\n                if (officialTable) {\r\n                    officialTable.style.opacity = officialExpanded ? '1' : '0.26';\r\n                    officialTable.style.pointerEvents = officialExpanded ? 'auto' : 'none';\r\n                    officialTable.style.transition = 'opacity 160ms ease';\r\n                }\r\n\r\n                officialButton.classList.toggle('is-active', officialExpanded);\r\n                officialButton.setAttribute(\r\n                    'aria-pressed',\r\n                    officialExpanded ? 'true' : 'false'\r\n                );\r\n            }\r\n\r\n            function officialPopupAdapter(data, card) {\r\n                return {\r\n                    empty: function () { return false; },\r\n                    id: function () { return String(data.id || ''); },\r\n                    data: function (key) { return data[key]; },\r\n                    renderedPosition: function () {\r\n                        const stageRect = stage.getBoundingClientRect();\r\n                        const cardRect = card.getBoundingClientRect();\r\n                        return {\r\n                            x: cardRect.left - stageRect.left + cardRect.width \/ 2,\r\n                            y: cardRect.top - stageRect.top + cardRect.height \/ 2\r\n                        };\r\n                    }\r\n                };\r\n            }\r\n\r\n            function addOfficialBundle(bundle) {\r\n                hideOfficialPopup();\r\n                officialExpanded = false;\r\n\r\n                const previousOfficialTable = stage.querySelector('.osm-official-side-table');\r\n                if (previousOfficialTable) {\r\n                    previousOfficialTable.remove();\r\n                }\r\n\r\n                if (\r\n                    !cy ||\r\n                    !bundle ||\r\n                    !Array.isArray(bundle.directIds) ||\r\n                    !bundle.directIds.length\r\n                ) {\r\n                    setOfficialControlsVisible(false);\r\n                    return;\r\n                }\r\n\r\n                const officialGroups = new Map();\r\n                (bundle.nodes || []).forEach(function (item) {\r\n                    if (!item || !item.data) {\r\n                        return;\r\n                    }\r\n                    const level = Number(item.data.official_level || 0);\r\n                    if (!officialGroups.has(level)) {\r\n                        officialGroups.set(level, []);\r\n                    }\r\n                    officialGroups.get(level).push(item.data);\r\n                });\r\n\r\n                const officialTable = document.createElement('div');\r\n                officialTable.className = 'osm-official-side-table';\r\n                Object.assign(officialTable.style, {\r\n                    position: 'absolute',\r\n                    left: '16px',\r\n                    top: '58px',\r\n                    width: '390px',\r\n                    maxWidth: 'calc(100% - 32px)',\r\n                    zIndex: '28',\r\n                    display: 'flex',\r\n                    flexDirection: 'column',\r\n                    alignItems: 'flex-start',\r\n                    pointerEvents: 'auto'\r\n                });\r\n\r\n                const officialTableLevels = Array.from(officialGroups.keys()).sort(function (a, b) {\r\n                    return b - a;\r\n                });\r\n\r\n                officialTableLevels.forEach(function (level, levelIndex) {\r\n                    const items = officialGroups.get(level) || [];\r\n                    items.sort(function (a, b) {\r\n                        return String(a.label || '').localeCompare(\r\n                            String(b.label || ''),\r\n                            undefined,\r\n                            { sensitivity: 'base' }\r\n                        );\r\n                    });\r\n\r\n                    const row = document.createElement('div');\r\n                    Object.assign(row.style, {\r\n                        display: 'flex',\r\n                        flexWrap: 'wrap',\r\n                        gap: '18px',\r\n                        alignItems: 'stretch',\r\n                        justifyContent: 'flex-start',\r\n                        width: '100%'\r\n                    });\r\n\r\n                    items.forEach(function (data) {\r\n                        const card = document.createElement('div');\r\n                        const isDirect = String(data.official_direct || '') === 'yes';\r\n                        card.textContent = String(data.label || '');\r\n                        card.title = String(data.label || '');\r\n                        Object.assign(card.style, {\r\n                            width: '176px',\r\n                            minHeight: '46px',\r\n                            boxSizing: 'border-box',\r\n                            display: 'flex',\r\n                            alignItems: 'center',\r\n                            justifyContent: 'center',\r\n                            padding: '7px 11px',\r\n                            border: '1px solid transparent',\r\n                            background: 'transparent',\r\n                            color: '#1C4746',\r\n                            fontFamily: 'Open Sans, sans-serif',\r\n                            fontSize: '11px',\r\n                            fontWeight: isDirect ? '600' : '400',\r\n                            lineHeight: '1.18',\r\n                            textAlign: 'center',\r\n                            whiteSpace: 'normal',\r\n                            overflowWrap: 'break-word'\r\n                        });\r\n                        card.style.cursor = 'pointer';\r\n                        card.addEventListener('mouseenter', function () {\r\n                            card.style.borderColor = '#91A6A3';\r\n                            card.style.backgroundColor = isDirect ? 'rgba(28,71,70,0.11)' : 'rgba(28,71,70,0.045)';\r\n                        });\r\n                        card.addEventListener('mouseleave', function () {\r\n                            card.style.borderColor = 'transparent';\r\n                            card.style.backgroundColor = 'transparent';\r\n                        });\r\n                                                card.addEventListener('click', function (event) {\r\n                            event.preventDefault();\r\n                            event.stopPropagation();\r\n                            showOfficialPopup(officialPopupAdapter(data, card));\r\n                        });\r\n                        row.appendChild(card);\r\n                    });\r\n\r\n                    officialTable.appendChild(row);\r\n\r\n                    if (levelIndex < officialTableLevels.length - 1) {\r\n                        const arrow = document.createElement('div');\r\n                        arrow.textContent = '\u2191';\r\n                        Object.assign(arrow.style, {\r\n                            width: '176px',\r\n                            textAlign: 'center',\r\n                            color: '#9CAAA8',\r\n                            fontSize: '14px',\r\n                            lineHeight: '18px',\r\n                            height: '18px'\r\n                        });\r\n                        officialTable.appendChild(arrow);\r\n                    }\r\n                });\r\n\r\n                stage.appendChild(officialTable);\r\n                setOfficialControlsVisible(true);\r\n                applyOfficialLayerState();\r\n                return;\r\n\r\n                cy.add(bundle.nodes.concat(bundle.edges));\r\n\r\n                const levelGroups = new Map();\r\n\r\n                cy.nodes('[node_type = \"official\"]').forEach(function (node) {\r\n                    const level = Number(node.data('official_level') || 0);\r\n\r\n                    if (!levelGroups.has(level)) {\r\n                        levelGroups.set(level, []);\r\n                    }\r\n\r\n                    levelGroups.get(level).push(node);\r\n                });\r\n\r\n                const officialLevels = Array.from(levelGroups.keys());\r\n                const maxOfficialLevel = officialLevels.length\r\n                    ? Math.max.apply(null, officialLevels)\r\n                    : 0;\r\n\r\n                levelGroups.forEach(function (nodesAtLevel, level) {\r\n                    nodesAtLevel.sort(function (a, b) {\r\n                        return String(a.data('label') || '').localeCompare(\r\n                            String(b.data('label') || ''),\r\n                            undefined,\r\n                            { sensitivity: 'base' }\r\n                        );\r\n                    });\r\n\r\n                    \/* Hierarchie je \u010dten\u00e1 shora dol\u016f: nad\u0159azen\u00e1 struktura\r\n                     * je v\u00fd\u0161, nejni\u017e\u0161\u00ed p\u0159\u00edm\u00e1 vazba nejbl\u00ed\u017e vlastn\u00ed s\u00edti. *\/\r\n                    const gapX = 112;\r\n                    const startX = 175;\r\n                    const renderedY = 72 + (maxOfficialLevel - level) * 58;\r\n\r\n                    nodesAtLevel.forEach(function (node, index) {\r\n                        const position = renderedToModelPosition(\r\n                            startX + index * gapX,\r\n                            renderedY\r\n                        );\r\n\r\n                        node.position(position);\r\n                        node.lock();\r\n                    });\r\n                });\r\n\r\n                setOfficialControlsVisible(true);\r\n                applyOfficialLayerState();\r\n            }\r\n\r\n            function positionOfficialPopup(node) {\r\n                if (!node || node.empty()) {\r\n                    return;\r\n                }\r\n\r\n                const pos = node.renderedPosition();\r\n                const popupWidth = officialPopup.offsetWidth;\r\n                const popupHeight = officialPopup.offsetHeight;\r\n                const mobilePopup = window.innerWidth <= 767;\r\n                const edgeGap = mobilePopup ? 16 : 28;\r\n                const offsetY = mobilePopup ? 14 : 18;\r\n\r\n                let left = edgeGap;\r\n                let top = pos.y + offsetY;\r\n\r\n                if (mobilePopup) {\r\n                    const offsetX = 10;\r\n                    left = pos.x + offsetX;\r\n\r\n                    const maxLeft = Math.max(\r\n                        edgeGap,\r\n                        stage.clientWidth - popupWidth - edgeGap\r\n                    );\r\n\r\n                    left = Math.max(\r\n                        edgeGap,\r\n                        Math.min(maxLeft, left)\r\n                    );\r\n                }\r\n\r\n                const minTop = mobilePopup ? edgeGap : 72;\r\n                const maxTop = Math.max(\r\n                    minTop,\r\n                    stage.clientHeight - popupHeight - edgeGap\r\n                );\r\n\r\n                if (top > maxTop) {\r\n                    top = pos.y - popupHeight - offsetY;\r\n                }\r\n\r\n                top = Math.max(\r\n                    minTop,\r\n                    Math.min(maxTop, top)\r\n                );\r\n\r\n                officialPopup.style.left = left + 'px';\r\n                officialPopup.style.top = top + 'px';\r\n            }\r\n\r\n            function showOfficialPopup(node) {\r\n                if (!node || node.empty()) {\r\n                    return;\r\n                }\r\n\r\n                officialPopup.innerHTML = '';\r\n\r\n                const close = document.createElement('button');\r\n                close.type = 'button';\r\n                close.className = 'osm-official-popup-close';\r\n                close.setAttribute('aria-label', 'Close');\r\n                close.textContent = '\u00d7';\r\n                close.addEventListener('click', function (event) {\r\n                    event.preventDefault();\r\n                    event.stopPropagation();\r\n                    hideOfficialPopup();\r\n                });\r\n                officialPopup.appendChild(close);\r\n\r\n                const logo = String(node.data('logo') || '');\r\n                if (logo) {\r\n                    const image = document.createElement('img');\r\n                    image.className = 'osm-official-popup-image';\r\n                    image.src = logo;\r\n                    image.alt = '';\r\n                    officialPopup.appendChild(image);\r\n                }\r\n\r\n                const title = document.createElement('div');\r\n                title.className = 'osm-official-popup-title';\r\n                title.textContent = String(node.data('label') || '');\r\n                officialPopup.appendChild(title);\r\n\r\n                const original = String(node.data('original_name') || '');\r\n                if (original ? original !== String(node.data('label') || '') : false) {\r\n                    const originalEl = document.createElement('div');\r\n                    originalEl.className = 'osm-official-popup-original';\r\n                    originalEl.textContent = original;\r\n                    officialPopup.appendChild(originalEl);\r\n                }\r\n\r\n                const country = String(node.data('country') || '');\r\n                if (country) {\r\n                    const countryEl = document.createElement('div');\r\n                    countryEl.className = 'osm-official-popup-country';\r\n                    countryEl.textContent = officialCountryLabel + ': ' + country;\r\n                    officialPopup.appendChild(countryEl);\r\n                }\r\n\r\n                const note = String(node.data('note') || '');\r\n                if (note) {\r\n                    const noteEl = document.createElement('div');\r\n                    noteEl.className = 'osm-official-popup-note';\r\n                    noteEl.textContent = note;\r\n                    officialPopup.appendChild(noteEl);\r\n\r\n                    if (note.length > 120) {\r\n                        noteEl.classList.add('is-collapsed');\r\n\r\n                        const moreButton = document.createElement('button');\r\n                        moreButton.type = 'button';\r\n                        moreButton.className = 'osm-official-popup-more';\r\n                        moreButton.textContent = officialMoreLabel;\r\n\r\n                        moreButton.addEventListener('click', function (event) {\r\n                            event.preventDefault();\r\n                            event.stopPropagation();\r\n\r\n                            const willExpand = noteEl.classList.contains('is-collapsed');\r\n                            noteEl.classList.toggle('is-collapsed', !willExpand);\r\n                            moreButton.textContent = willExpand ? officialLessLabel : officialMoreLabel;\r\n\r\n                            window.setTimeout(function () {\r\n                                positionOfficialPopup(node);\r\n                            }, 0);\r\n                        });\r\n\r\n                        noteEl.appendChild(moreButton);\r\n                    }\r\n                }\r\n\r\n                const url = String(node.data('official_url') || '');\r\n                if (url) {\r\n                    const link = document.createElement('a');\r\n                    link.className = 'osm-official-popup-link';\r\n                    link.href = url;\r\n                    link.target = '_blank';\r\n                    link.rel = 'noopener';\r\n                    link.textContent = officialWebsiteLabel;\r\n                    officialPopup.appendChild(link);\r\n                }\r\n\r\n                officialPopup.classList.add('is-visible');\r\n                openOfficialNodeId = String(node.id());\r\n\r\n                positionOfficialPopup(node);\r\n            }\r\n\r\n            officialButton.addEventListener('click', function (event) {\r\n                event.preventDefault();\r\n                event.stopPropagation();\r\n                officialExpanded = !officialExpanded;\r\n                hideOfficialPopup();\r\n                applyOfficialLayerState();\r\n            });\r\n\r\n            setOfficialControlsVisible(false);\r\n\r\n\r\n            \/*\r\n             * =====================================================\r\n             * FILTR \/ KLIKAC\u00cd LEGENDA\r\n             * =====================================================\r\n             *\/\r\n\r\n            function updateActorFilterUi() {\r\n\r\n                actorFilterButtons.forEach(\r\n                    function (button) {\r\n\r\n                        const isActive =\r\n                            button.dataset.actorFilter ===\r\n                            currentActorFilter;\r\n\r\n                        button.classList.toggle(\r\n                            'is-active',\r\n                            isActive\r\n                        );\r\n\r\n                        button.setAttribute(\r\n                            'aria-pressed',\r\n                            isActive ? 'true' : 'false'\r\n                        );\r\n                    }\r\n                );\r\n            }\r\n\r\n\r\n            function nodeMatchesActorFilter(node) {\r\n\r\n                const type = String(\r\n                    node.data('node_type') || 'initiative'\r\n                );\r\n\r\n                \/* Ofici\u00e1ln\u00ed struktury jsou kontextov\u00e1 vrstva, ne typ akt\u00e9ra. *\/\r\n                if (type === 'official') {\r\n                    return true;\r\n                }\r\n\r\n                if (currentActorFilter === 'all') {\r\n                    return true;\r\n                }\r\n\r\n                if (currentActorFilter === 'people') {\r\n                    return type === 'person';\r\n                }\r\n\r\n                if (currentActorFilter === 'initiatives') {\r\n                    return type !== 'person';\r\n                }\r\n\r\n                return true;\r\n            }\r\n\r\n\r\n            function updateRelationFilterUi() {\r\n\r\n                relationFilterButtons.forEach(\r\n                    function (button) {\r\n\r\n                        const isActive =\r\n                            button.dataset.relationFilter ===\r\n                            currentRelationFilter;\r\n\r\n\r\n                        button.classList.toggle(\r\n                            'is-active',\r\n                            isActive\r\n                        );\r\n\r\n\r\n                        button.setAttribute(\r\n                            'aria-pressed',\r\n                            isActive\r\n                                ? 'true'\r\n                                : 'false'\r\n                        );\r\n                    }\r\n                );\r\n            }\r\n\r\n\r\n\r\n            function edgeMatchesRelationFilter(edge) {\r\n\r\n                if (\r\n                    currentRelationFilter ===\r\n                    'all'\r\n                ) {\r\n\r\n                    return true;\r\n                }\r\n\r\n\r\n                return (\r\n                    String(\r\n                        edge.data(\r\n                            'rel_type'\r\n                        )\r\n                    )\r\n                    ===\r\n                    currentRelationFilter\r\n                );\r\n            }\r\n\r\n\r\n\r\n            function syncRelationFilteredNodes() {\r\n\r\n                if (!cy) {\r\n                    return;\r\n                }\r\n\r\n\r\n                cy.nodes()\r\n                    .removeClass(\r\n                        'relation-filtered'\r\n                    );\r\n\r\n\r\n                const activeNodeIds =\r\n                    new Set();\r\n\r\n\r\n                cy.edges().forEach(\r\n                    function (edge) {\r\n\r\n                        if (\r\n                            !edgeVisibleByFilters(\r\n                                edge\r\n                            )\r\n                        ) {\r\n                            return;\r\n                        }\r\n\r\n                        activeNodeIds.add(\r\n                            String(\r\n                                edge.data('source')\r\n                            )\r\n                        );\r\n\r\n                        activeNodeIds.add(\r\n                            String(\r\n                                edge.data('target')\r\n                            )\r\n                        );\r\n                    }\r\n                );\r\n\r\n\r\n                \/* Centrum z\u016fst\u00e1v\u00e1 v\u017edy pln\u011b viditeln\u00e9. *\/\r\n                if (\r\n                    singleMode &&\r\n                    currentCenterId\r\n                ) {\r\n\r\n                    activeNodeIds.add(\r\n                        String(\r\n                            currentCenterId\r\n                        )\r\n                    );\r\n                }\r\n\r\n\r\n                cy.nodes().forEach(\r\n                    function (node) {\r\n\r\n                        const type =\r\n                            String(\r\n                                node.data('node_type') ||\r\n                                'initiative'\r\n                            );\r\n\r\n                        if (type === 'official') {\r\n                            return;\r\n                        }\r\n\r\n                        \/*\r\n                         * P\u0159i \u201eV\u0161echny typy\u201c u iniciativ\r\n                         * nech\u00e1v\u00e1me iniciativn\u00ed uzly pln\u011b viditeln\u00e9,\r\n                         * stejn\u011b jako dosud.\r\n                         *\/\r\n                        if (\r\n                            type !== 'person' &&\r\n                            currentRelationFilter === 'all'\r\n                        ) {\r\n                            return;\r\n                        }\r\n\r\n                        if (\r\n                            !activeNodeIds.has(\r\n                                String(\r\n                                    node.id()\r\n                                )\r\n                            )\r\n                        ) {\r\n\r\n                            node.addClass(\r\n                                'relation-filtered'\r\n                            );\r\n                        }\r\n                    }\r\n                );\r\n            }\r\n\r\n\r\n\r\n            function applyRelationFilter() {\r\n\r\n                if (!cy) {\r\n                    return;\r\n                }\r\n\r\n\r\n                cy.batch(\r\n                    function () {\r\n\r\n                        cy.edges().forEach(\r\n                            function (edge) {\r\n\r\n                                edge.style(\r\n                                    'display',\r\n                                    edgeVisibleByFilters(\r\n                                        edge\r\n                                    )\r\n                                        ? 'element'\r\n                                        : 'none'\r\n                                );\r\n                            }\r\n                        );\r\n\r\n\r\n                        cy.nodes().forEach(\r\n                            function (node) {\r\n                                node.style(\r\n                                    'display',\r\n                                    nodeMatchesActorFilter(node)\r\n                                        ? 'element'\r\n                                        : 'none'\r\n                                );\r\n                            }\r\n                        );\r\n\r\n                        cy.elements()\r\n                            .removeClass(\r\n                                'faded highlighted center-hover'\r\n                            );\r\n\r\n\r\n                        syncRelationFilteredNodes();\r\n\r\n                        if (currentActorFilter !== 'all') {\r\n                            cy.nodes().forEach(\r\n                                function (node) {\r\n                                    if (nodeMatchesActorFilter(node)) {\r\n                                        node.removeClass('relation-filtered');\r\n                                    }\r\n                                }\r\n                            );\r\n                        }\r\n                    }\r\n                );\r\n\r\n\r\n                hideTooltip();\r\n\r\n                updateRelationFilterUi();\r\n                updatePersonFilterUi();\r\n                updateActorFilterUi();\r\n                updatePeopleControls();\r\n            }\r\n\r\n\r\n\r\n            \/*\r\n             * =====================================================\r\n             * OSOBNOSTI \u2013 FILTR A OVL\u00c1D\u00c1N\u00cd\r\n             * =====================================================\r\n             *\/\r\n\r\n            function getPersonEdgesForInitiative(id) {\r\n\r\n                const initiativeId =\r\n                    String(id);\r\n\r\n                return (\r\n                    originalData.people_edges || []\r\n                ).filter(\r\n                    function (edge) {\r\n\r\n                        return (\r\n                            String(\r\n                                edge.data.source\r\n                            ) === initiativeId\r\n                            ||\r\n                            String(\r\n                                edge.data.target\r\n                            ) === initiativeId\r\n                        );\r\n                    }\r\n                );\r\n            }\r\n\r\n\r\n            function hasPersonRelations(id) {\r\n\r\n                return getPersonEdgesForInitiative(\r\n                    id\r\n                ).length > 0;\r\n            }\r\n\r\n\r\n            function getPersonNodeById(id) {\r\n\r\n                const personId =\r\n                    String(id);\r\n\r\n                return (\r\n                    originalData.people_nodes || []\r\n                ).find(\r\n                    function (node) {\r\n\r\n                        return (\r\n                            String(\r\n                                node.data.id\r\n                            ) === personId\r\n                        );\r\n                    }\r\n                );\r\n            }\r\n\r\n\r\n            function getPersonEdgesForPerson(id) {\r\n\r\n                const personId =\r\n                    String(id);\r\n\r\n                return (\r\n                    originalData.people_edges || []\r\n                ).filter(\r\n                    function (edge) {\r\n\r\n                        return (\r\n                            String(\r\n                                edge.data.source\r\n                            ) === personId\r\n                            ||\r\n                            String(\r\n                                edge.data.target\r\n                            ) === personId\r\n                        );\r\n                    }\r\n                );\r\n            }\r\n\r\n\r\n            function updatePeopleControls() {\r\n\r\n                \/*\r\n                 * Osobnosti jsou od t\u00e9to verze plnohodnotnou sou\u010d\u00e1st\u00ed s\u00edt\u011b.\r\n                 * P\u0159ep\u00edna\u010d u\u017e nen\u00ed pot\u0159eba: ob\u011b legendy z\u016fst\u00e1vaj\u00ed st\u00e1le viditeln\u00e9.\r\n                 *\/\r\n                peopleVisible =\r\n                    true;\r\n\r\n                toolbar.classList.remove(\r\n                    'is-person-center'\r\n                );\r\n\r\n                peopleButton.classList.remove(\r\n                    'is-visible',\r\n                    'is-active'\r\n                );\r\n\r\n                peopleButton.setAttribute(\r\n                    'aria-pressed',\r\n                    'false'\r\n                );\r\n\r\n                peopleLegend.classList.add(\r\n                    'is-visible'\r\n                );\r\n            }\r\n\r\n            function updatePersonFilterUi() {\r\n\r\n                personFilterButtons.forEach(\r\n                    function (button) {\r\n\r\n                        const isActive =\r\n                            button.dataset.personFilter ===\r\n                            currentPersonFilter;\r\n\r\n                        button.classList.toggle(\r\n                            'is-active',\r\n                            isActive\r\n                        );\r\n\r\n                        button.setAttribute(\r\n                            'aria-pressed',\r\n                            isActive\r\n                                ? 'true'\r\n                                : 'false'\r\n                        );\r\n                    }\r\n                );\r\n            }\r\n\r\n\r\n            function personEdgeMatchesFilter(edge) {\r\n\r\n                if (!peopleVisible) {\r\n                    return false;\r\n                }\r\n\r\n                const type = String(\r\n                    edge.data('rel_type')\r\n                );\r\n\r\n                if (\r\n                    type !== 'leadership' &&\r\n                    type !== 'person_membership' &&\r\n                    type !== 'person_association'\r\n                ) {\r\n                    return false;\r\n                }\r\n\r\n                \/* Spole\u010dn\u00e9 filtry ve sjednocen\u00e9 li\u0161t\u011b. *\/\r\n                if (currentRelationFilter === 'membership') {\r\n                    return type === 'person_membership';\r\n                }\r\n\r\n                if (currentRelationFilter === 'association') {\r\n                    return type === 'person_association';\r\n                }\r\n\r\n                if (currentRelationFilter === 'cooperation') {\r\n                    return false;\r\n                }\r\n\r\n                if (currentPersonFilter === 'none') {\r\n                    return false;\r\n                }\r\n\r\n                if (currentPersonFilter === 'leadership') {\r\n                    return type === 'leadership';\r\n                }\r\n\r\n                if (currentPersonFilter === 'person_membership') {\r\n                    return type === 'person_membership';\r\n                }\r\n\r\n                if (currentPersonFilter === 'person_association') {\r\n                    return type === 'person_association';\r\n                }\r\n\r\n                \/* V\u0160ECHNY TYPY \u2013 zabr\u00e1n\u00ed duplicitn\u00edm \u010dar\u00e1m. *\/\r\n                if (\r\n                    type === 'person_membership' &&\r\n                    String(edge.data('has_leadership')) === 'yes'\r\n                ) {\r\n                    return false;\r\n                }\r\n\r\n                if (\r\n                    type === 'person_association' &&\r\n                    (\r\n                        String(edge.data('has_leadership')) === 'yes' ||\r\n                        String(edge.data('has_membership')) === 'yes'\r\n                    )\r\n                ) {\r\n                    return false;\r\n                }\r\n\r\n                return true;\r\n            }\r\n\r\n\r\n            function edgeVisibleByFilters(edge) {\r\n\r\n                const type =\r\n                    String(\r\n                        edge.data('rel_type')\r\n                    );\r\n\r\n                \/* Kontextov\u00e1 vrstva ofici\u00e1ln\u00edch struktur se ne\u0159\u00edd\u00ed\r\n                 * filtry b\u011b\u017en\u00fdch akt\u00e9rsk\u00fdch vazeb. *\/\r\n                if (\r\n                    type === 'official_structure' ||\r\n                    type === 'official_parent'\r\n                ) {\r\n                    return true;\r\n                }\r\n\r\n                if (\r\n                    !nodeMatchesActorFilter(edge.source()) ||\r\n                    !nodeMatchesActorFilter(edge.target())\r\n                ) {\r\n                    return false;\r\n                }\r\n\r\n                if (\r\n                    type === 'leadership' ||\r\n                    type === 'person_membership' ||\r\n                    type === 'person_association'\r\n                ) {\r\n                    return personEdgeMatchesFilter(\r\n                        edge\r\n                    );\r\n                }\r\n\r\n                return edgeMatchesRelationFilter(\r\n                    edge\r\n                );\r\n            }\r\n\r\n\r\n            \/*\r\n             * POMOCN\u00c9 FUNKCE\r\n             *\/\r\n\r\n            function getNodeById(id) {\r\n\r\n                return originalData.nodes.find(\r\n                    function (node) {\r\n\r\n                        return (\r\n                            String(\r\n                                node.data.id\r\n                            )\r\n                            ===\r\n                            String(id)\r\n                        );\r\n                    }\r\n                );\r\n            }\r\n\r\n\r\n\r\n            function getNeighbourIds(id) {\r\n\r\n                const ids =\r\n                    new Set();\r\n\r\n\r\n                const nodeId =\r\n                    String(id);\r\n\r\n\r\n                originalData.edges.forEach(\r\n                    function (edge) {\r\n\r\n                        const source =\r\n                            String(\r\n                                edge.data.source\r\n                            );\r\n\r\n\r\n                        const target =\r\n                            String(\r\n                                edge.data.target\r\n                            );\r\n\r\n\r\n                        if (\r\n                            source ===\r\n                            nodeId\r\n                        ) {\r\n\r\n                            ids.add(\r\n                                target\r\n                            );\r\n                        }\r\n\r\n\r\n                        if (\r\n                            target ===\r\n                            nodeId\r\n                        ) {\r\n\r\n                            ids.add(\r\n                                source\r\n                            );\r\n                        }\r\n                    }\r\n                );\r\n\r\n\r\n                return Array.from(\r\n                    ids\r\n                );\r\n            }\r\n\r\n\r\n\r\n            function hasRelations(id) {\r\n\r\n                const nodeId =\r\n                    String(id);\r\n\r\n\r\n                return originalData.edges.some(\r\n                    function (edge) {\r\n\r\n                        return (\r\n                            String(\r\n                                edge.data.source\r\n                            ) === nodeId\r\n                            ||\r\n                            String(\r\n                                edge.data.target\r\n                            ) === nodeId\r\n                        );\r\n                    }\r\n                );\r\n            }\r\n\r\n\r\n\r\n            function destroyGraph() {\r\n\r\n                setOfficialControlsVisible(false);\r\n                hideOfficialPopup();\r\n\r\n                labelsLayer.innerHTML =\r\n                    '';\r\n\r\n\r\n                tooltip.style.display =\r\n                    'none';\r\n\r\n\r\n                if (cy) {\r\n\r\n                    cy.destroy();\r\n\r\n                    cy = null;\r\n                }\r\n\r\n\r\n                container.innerHTML =\r\n                    '';\r\n            }\r\n\r\n\r\n\r\n            \/*\r\n             * STYLY\r\n             *\/\r\n            function graphStyles(single) {\r\n\r\n                \/*\r\n                 * Detail dr\u017e\u00edme z\u00e1m\u011brn\u011b v jednom pevn\u00e9m mal\u00e9m m\u011b\u0159\u00edtku.\r\n                 * Po\u010det vazeb ani typ uzlu u\u017e velikost nem\u011bn\u00ed.\r\n                 *\/\r\n                const singleNodeSize = 32;\r\n\r\n                return [\r\n\r\n                    \/*\r\n                     * UZLY\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'node',\r\n\r\n                        style: {\r\n\r\n                            'shape':\r\n                                'rectangle',\r\n\r\n                            'background-color':\r\n                                '#ffffff',\r\n\r\n                            'label':\r\n                                '',\r\n\r\n                            'width':\r\n                                single\r\n                                    ? (singleNodeSize + 'px')\r\n                                    : '84px',\r\n\r\n                            'height':\r\n                                single\r\n                                    ? (singleNodeSize + 'px')\r\n                                    : '84px',\r\n\r\n                            'border-width':\r\n                                0\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * LOGA\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'node[has_logo = \"yes\"]',\r\n\r\n                        style: {\r\n\r\n                            'background-image':\r\n                                'data(logo)',\r\n\r\n                            'background-fit':\r\n                                'contain',\r\n\r\n                            'background-repeat':\r\n                                'no-repeat',\r\n\r\n                            'background-position-x':\r\n                                '50%',\r\n\r\n                            'background-position-y':\r\n                                '50%',\r\n\r\n                            'background-width':\r\n                                '88%',\r\n\r\n                            'background-height':\r\n                                '88%',\r\n\r\n                            'background-color':\r\n                                '#ffffff'\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * OSOBNOSTI\r\n                     *\r\n                     * Kruhov\u00fd portr\u00e9t, aby byl \u010dlov\u011bk na prvn\u00ed pohled\r\n                     * rozeznateln\u00fd od \u010dtvercov\u00e9ho loga iniciativy.\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'node[node_type = \"person\"]',\r\n\r\n                        style: {\r\n\r\n                            'shape':\r\n                                'ellipse',\r\n\r\n                            'width':\r\n                                single\r\n                                    ? (singleNodeSize + 'px')\r\n                                    : '88px',\r\n\r\n                            'height':\r\n                                single\r\n                                    ? (singleNodeSize + 'px')\r\n                                    : '88px',\r\n\r\n                            'background-color':\r\n                                '#ffffff',\r\n\r\n                            'border-width':\r\n                                single ? 1 : 2,\r\n\r\n                            'border-color':\r\n                                '#FF5C00'\r\n                        }\r\n                    },\r\n\r\n\r\n                    {\r\n                        selector:\r\n                            'node[node_type = \"person\"][has_logo = \"yes\"]',\r\n\r\n                        style: {\r\n\r\n                            'background-fit':\r\n                                'cover',\r\n\r\n                            'background-width':\r\n                                '100%',\r\n\r\n                            'background-height':\r\n                                '100%'\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * CENTRUM V KLIDU\r\n                     *\r\n                     * 160 \u00d7 160.\r\n                     * Bez r\u00e1me\u010dku.\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'node.osm-center',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                (singleNodeSize + 'px'),\r\n\r\n                            'height':\r\n                                (singleNodeSize + 'px'),\r\n\r\n                            'border-width':\r\n                                1,\r\n\r\n                            'border-color':\r\n                                '#1C4746'\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * CENTRUM P\u0158I HOVERU\r\n                     *\r\n                     * D\u016eLE\u017dIT\u00c1 OPRAVA:\r\n                     *\r\n                     * Rozm\u011bry z\u016fst\u00e1vaj\u00ed STEJN\u00c9.\r\n                     *\r\n                     * D\u00edky tomu se hranice uzlu\r\n                     * neh\u00fdbe a nevznikne zp\u011btn\u00e1\r\n                     * vazba mouseover\/mouseout.\r\n                     *\r\n                     * Zm\u011bn\u00ed se pouze r\u00e1me\u010dek.\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'node.osm-center.center-hover',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                (singleNodeSize + 'px'),\r\n\r\n                            'height':\r\n                                (singleNodeSize + 'px'),\r\n\r\n                            'border-width':\r\n                                1,\r\n\r\n                            'border-color':\r\n                                '#1C4746',\r\n\r\n                            'background-color':\r\n                                '#ffffff'\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * CENTR\u00c1LN\u00cd OSOBNOST\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'node[node_type = \"person\"].osm-center',\r\n\r\n                        style: {\r\n\r\n                            'shape':\r\n                                'ellipse',\r\n\r\n                            'width':\r\n                                (singleNodeSize + 'px'),\r\n\r\n                            'height':\r\n                                (singleNodeSize + 'px'),\r\n\r\n                            'border-width':\r\n                                1.5,\r\n\r\n                            'border-color':\r\n                                '#FF5C00',\r\n\r\n                            'background-color':\r\n                                '#ffffff'\r\n                        }\r\n                    },\r\n\r\n\r\n                    {\r\n                        selector:\r\n                            'node[node_type = \"person\"].osm-center.center-hover',\r\n\r\n                        style: {\r\n\r\n                            'shape':\r\n                                'ellipse',\r\n\r\n                            'width':\r\n                                (singleNodeSize + 'px'),\r\n\r\n                            'height':\r\n                                (singleNodeSize + 'px'),\r\n\r\n                            'border-width':\r\n                                1.5,\r\n\r\n                            'border-color':\r\n                                '#FF5C00',\r\n\r\n                            'background-color':\r\n                                '#ffffff'\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * \u010cLENSTV\u00cd \/ ZAST\u0158E\u0160EN\u00cd\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'edge[rel_type = \"membership\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single\r\n                                    ? 0.54\r\n                                    : 0.82,\r\n\r\n                            'line-color':\r\n                                '#A8B1B1',\r\n\r\n                            'source-arrow-shape':\r\n                                'none',\r\n\r\n                            'target-arrow-color':\r\n                                '#A8B1B1',\r\n\r\n                            'target-arrow-shape':\r\n                                'triangle',\r\n\r\n                            'arrow-scale':\r\n                                single\r\n                                    ? 0.48\r\n                                    : 0.66,\r\n\r\n                            'curve-style':\r\n                                'bezier',\r\n\r\n                            'opacity':\r\n                                single\r\n                                    ? 0.62\r\n                                    : 0.13\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * SPOLUPR\u00c1CE \/ MEMORANDA\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'edge[rel_type = \"cooperation\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single\r\n                                    ? 0.58\r\n                                    : 0.86,\r\n\r\n                            'line-color':\r\n                                '#7B88D8',\r\n\r\n                            'source-arrow-color':\r\n                                '#7B88D8',\r\n\r\n                            'source-arrow-shape':\r\n                                'triangle',\r\n\r\n                            'target-arrow-color':\r\n                                '#7B88D8',\r\n\r\n                            'target-arrow-shape':\r\n                                'triangle',\r\n\r\n                            'arrow-scale':\r\n                                single\r\n                                    ? 0.50\r\n                                    : 0.68,\r\n\r\n                            'curve-style':\r\n                                'bezier',\r\n\r\n                            'opacity':\r\n                                single\r\n                                    ? 0.60\r\n                                    : 0.13\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * SOUVISLOST INICIATIV \u2013 JEMN\u00c1 FIALOV\u00c1\r\n                     * iniciativa <-> iniciativa\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'edge[rel_type = \"association\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single ? 0.44 : 0.72,\r\n\r\n                            'line-color':\r\n                                '#B9ACCC',\r\n\r\n                            'source-arrow-color':\r\n                                '#B9ACCC',\r\n\r\n                            'source-arrow-shape':\r\n                                'triangle',\r\n\r\n                            'target-arrow-color':\r\n                                '#B9ACCC',\r\n\r\n                            'target-arrow-shape':\r\n                                'triangle',\r\n\r\n                            'arrow-scale':\r\n                                single ? 0.42 : 0.58,\r\n\r\n                            'curve-style':\r\n                                'bezier',\r\n\r\n                            'opacity':\r\n                                single\r\n                                    ? 0.46\r\n                                    : 0.10\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * VEDEN\u00cd OSOBNOSTI \u2013 ORAN\u017dOV\u00c1\r\n                     * iniciativa -> osobnost\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'edge[rel_type = \"leadership\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single ? 0.64 : 1.16,\r\n\r\n                            'line-color':\r\n                                '#FF5C00',\r\n\r\n                            'source-arrow-shape':\r\n                                'none',\r\n\r\n                            'target-arrow-color':\r\n                                '#FF5C00',\r\n\r\n                            'target-arrow-shape':\r\n                                'triangle',\r\n\r\n                            'arrow-scale':\r\n                                single ? 0.48 : 0.82,\r\n\r\n                            'curve-style':\r\n                                'bezier',\r\n\r\n                            'opacity':\r\n                                single\r\n                                    ? 0.68\r\n                                    : 0.16\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * \u010cLENSTV\u00cd OSOBNOSTI \u2013 ST\u0158EDN\u011a JEMN\u00c1 TYRKYSOV\u00c1\r\n                     * \u010dlov\u011bk -> iniciativa\r\n                     *\r\n                     * Vizu\u00e1ln\u00ed s\u00edla je z\u00e1m\u011brn\u011b mezi:\r\n                     * VEDEN\u00cd (nejv\u00fdrazn\u011bj\u0161\u00ed) a SOUVISLOST\u00cd (nejjemn\u011bj\u0161\u00ed).\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'edge[rel_type = \"person_membership\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single ? 0.54 : 0.94,\r\n\r\n                            'line-color':\r\n                                '#55B2BE',\r\n\r\n                            'source-arrow-shape':\r\n                                'none',\r\n\r\n                            'target-arrow-color':\r\n                                '#55B2BE',\r\n\r\n                            'target-arrow-shape':\r\n                                'triangle',\r\n\r\n                            'arrow-scale':\r\n                                single ? 0.46 : 0.70,\r\n\r\n                            'curve-style':\r\n                                'bezier',\r\n\r\n                            'opacity':\r\n                                single\r\n                                    ? 0.58\r\n                                    : 0.13\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * SOUVISLOST OSOBNOSTI \u2013 JEMN\u00c1 FIALOV\u00c1\r\n                     * osobnost <-> iniciativa\r\n                     *\r\n                     * Z\u00e1m\u011brn\u011b velmi subtiln\u00ed: ozna\u010duje souvislost,\r\n                     * nikoli pevnou struktur\u00e1ln\u00ed vazbu.\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'edge[rel_type = \"person_association\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single ? 0.44 : 0.72,\r\n\r\n                            'line-color':\r\n                                '#B9ACCC',\r\n\r\n                            'source-arrow-color':\r\n                                '#B9ACCC',\r\n\r\n                            'source-arrow-shape':\r\n                                'triangle',\r\n\r\n                            'target-arrow-color':\r\n                                '#B9ACCC',\r\n\r\n                            'target-arrow-shape':\r\n                                'triangle',\r\n\r\n                            'arrow-scale':\r\n                                single ? 0.42 : 0.58,\r\n\r\n                            'curve-style':\r\n                                'bezier',\r\n\r\n                            'opacity':\r\n                                single\r\n                                    ? 0.46\r\n                                    : 0.10\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * Kdy\u017e mezi dv\u011bma uzly existuj\u00ed\r\n                     * dva typy vazeb, jemn\u011b je rozt\u00e1hneme\r\n                     * na dv\u011b paraleln\u00ed k\u0159ivky.\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'edge[parallel_pair = \"yes\"][rel_type = \"membership\"]',\r\n\r\n                        style: {\r\n\r\n                            'curve-style':\r\n                                'unbundled-bezier',\r\n\r\n                            'control-point-distances':\r\n                                18,\r\n\r\n                            'control-point-weights':\r\n                                0.5\r\n                        }\r\n                    },\r\n\r\n                    {\r\n                        selector:\r\n                            'edge[parallel_pair = \"yes\"][rel_type = \"cooperation\"]',\r\n\r\n                        style: {\r\n\r\n                            'curve-style':\r\n                                'unbundled-bezier',\r\n\r\n                            'control-point-distances':\r\n                                -18,\r\n\r\n                            'control-point-weights':\r\n                                0.5\r\n                        }\r\n                    },\r\n\r\n                    {\r\n                        selector:\r\n                            'edge[parallel_pair = \"yes\"][rel_type = \"association\"]',\r\n\r\n                        style: {\r\n\r\n                            'curve-style':\r\n                                'unbundled-bezier',\r\n\r\n                            'control-point-distances':\r\n                                0,\r\n\r\n                            'control-point-weights':\r\n                                0.5\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * OKOLN\u00cd UZEL P\u0158I HOVERU\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'node.highlighted',\r\n\r\n                        style: {\r\n\r\n                            'border-width':\r\n                                single ? 1 : 2,\r\n\r\n                            'border-color':\r\n                                '#1C4746'\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * \u010cLENSTV\u00cd P\u0158I HOVERU\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'edge.highlighted[rel_type = \"membership\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single ? 0.78 : 1.22,\r\n\r\n                            'line-color':\r\n                                '#8F9999',\r\n\r\n                            'target-arrow-color':\r\n                                '#8F9999',\r\n\r\n                            'opacity':\r\n                                0.86\r\n                        }\r\n                    },\r\n\r\n                    \/*\r\n                     * SPOLUPR\u00c1CE P\u0158I HOVERU\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'edge.highlighted[rel_type = \"cooperation\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single ? 0.82 : 1.28,\r\n\r\n                            'line-color':\r\n                                '#6676CF',\r\n\r\n                            'source-arrow-color':\r\n                                '#6676CF',\r\n\r\n                            'target-arrow-color':\r\n                                '#6676CF',\r\n\r\n                            'opacity':\r\n                                0.92\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/* SOUVISLOST INICIATIV P\u0158I HOVERU *\/\r\n                    {\r\n                        selector:\r\n                            'edge.highlighted[rel_type = \"association\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single ? 0.68 : 0.96,\r\n\r\n                            'line-color':\r\n                                '#9E8AB8',\r\n\r\n                            'source-arrow-color':\r\n                                '#9E8AB8',\r\n\r\n                            'target-arrow-color':\r\n                                '#9E8AB8',\r\n\r\n                            'opacity':\r\n                                0.74\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/* VEDEN\u00cd OSOBNOSTI P\u0158I HOVERU *\/\r\n                    {\r\n                        selector:\r\n                            'edge.highlighted[rel_type = \"leadership\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single ? 0.88 : 1.42,\r\n\r\n                            'line-color':\r\n                                '#FF5C00',\r\n\r\n                            'target-arrow-color':\r\n                                '#FF5C00',\r\n\r\n                            'opacity':\r\n                                1\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/* \u010cLENSTV\u00cd OSOBNOSTI P\u0158I HOVERU *\/\r\n                    {\r\n                        selector:\r\n                            'edge.highlighted[rel_type = \"person_membership\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single ? 0.76 : 1.18,\r\n\r\n                            'line-color':\r\n                                '#359DAA',\r\n\r\n                            'target-arrow-color':\r\n                                '#359DAA',\r\n\r\n                            'opacity':\r\n                                0.88\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/* SOUVISLOST OSOBNOSTI P\u0158I HOVERU *\/\r\n                    {\r\n                        selector:\r\n                            'edge.highlighted[rel_type = \"person_association\"]',\r\n\r\n                        style: {\r\n\r\n                            'width':\r\n                                single ? 0.68 : 0.96,\r\n\r\n                            'line-color':\r\n                                '#9E8AB8',\r\n\r\n                            'source-arrow-color':\r\n                                '#9E8AB8',\r\n\r\n                            'target-arrow-color':\r\n                                '#9E8AB8',\r\n\r\n                            'opacity':\r\n                                0.74\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/* Osobnost si i p\u0159i hoveru dr\u017e\u00ed oran\u017eov\u00fd krou\u017eek. *\/\r\n                    {\r\n                        selector:\r\n                            'node[node_type = \"person\"].highlighted',\r\n\r\n                        style: {\r\n\r\n                            'border-width':\r\n                                single ? 1.5 : 3,\r\n\r\n                            'border-color':\r\n                                '#FF5C00'\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * OFICI\u00c1LN\u00cd STRUKTURY \u2013 textov\u00e9 uzly bez st\u00e1l\u00e9ho boxu.\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'node[node_type = \"official\"]',\r\n\r\n                        style: {\r\n                            'shape': 'rectangle',\r\n                            'width': '102px',\r\n                            'height': '34px',\r\n                            'padding': '2px',\r\n                            'background-color': '#ffffff',\r\n                            'background-opacity': 0,\r\n                            'background-image': 'none',\r\n                            'border-width': 0,\r\n                            'border-color': '#9CAAA8',\r\n                            'label': 'data(label)',\r\n                            'color': '#1C4746',\r\n                            'font-family': 'Open Sans',\r\n                            'font-size': '8px',\r\n                            'font-weight': 500,\r\n                            'text-wrap': 'wrap',\r\n                            'text-max-width': '92px',\r\n                            'text-halign': 'center',\r\n                            'text-valign': 'center',\r\n                            'opacity': 0.26\r\n                        }\r\n                    },\r\n\r\n                    {\r\n                        selector:\r\n                            'node[node_type = \"official\"].official-full',\r\n\r\n                        style: {\r\n                            'background-opacity': 0.035,\r\n                            'border-width': 0.22,\r\n                            'border-color': '#9CAAA8',\r\n                            'opacity': 0.96\r\n                        }\r\n                    },\r\n\r\n                    {\r\n                        selector:\r\n                            'node[node_type = \"official\"].official-hover',\r\n\r\n                        style: {\r\n                            'background-opacity': 0.88,\r\n                            'border-width': 0.32,\r\n                            'border-color': '#91A6A3',\r\n                            'opacity': 1\r\n                        }\r\n                    },\r\n\r\n                    {\r\n                        selector:\r\n                            'edge[rel_type = \"official_structure\"]',\r\n\r\n                        style: {\r\n                            'width': 0.48,\r\n                            'line-color': '#78908D',\r\n                            'line-style': 'dashed',\r\n                            'source-arrow-shape': 'none',\r\n                            'target-arrow-shape': 'none',\r\n                            'curve-style': 'bezier',\r\n                            'opacity': 0.20\r\n                        }\r\n                    },\r\n\r\n                    {\r\n                        selector:\r\n                            'edge[rel_type = \"official_parent\"]',\r\n\r\n                        style: {\r\n                            'width': 0.44,\r\n                            'line-color': '#78908D',\r\n                            'line-style': 'dashed',\r\n                            'source-arrow-shape': 'none',\r\n                            'target-arrow-color': '#78908D',\r\n                            'target-arrow-shape': 'triangle',\r\n                            'arrow-scale': 0.38,\r\n                            'curve-style': 'bezier',\r\n                            'opacity': 0.18\r\n                        }\r\n                    },\r\n\r\n                    {\r\n                        selector:\r\n                            'edge.osm-official-edge.official-full',\r\n\r\n                        style: {\r\n                            'opacity': 0.66\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * UZLY BEZ VAZBY V AKTU\u00c1LN\u00cdM FILTRU\r\n                     *\r\n                     * Nezmiz\u00ed, aby se graf nep\u0159eskakoval\r\n                     * a n\u00e1v\u0161t\u011bvn\u00edk neztratil orientaci.\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            'node.relation-filtered',\r\n\r\n                        style: {\r\n\r\n                            'opacity':\r\n                                0.18\r\n                        }\r\n                    },\r\n\r\n\r\n                    \/*\r\n                     * POHASL\u00c9 PRVKY\r\n                     *\/\r\n                    {\r\n                        selector:\r\n                            '.faded',\r\n\r\n                        style: {\r\n\r\n                            'opacity':\r\n                                0.12\r\n                        }\r\n                    }\r\n                ];\r\n            }\r\n\r\n\r\n\r\n            \/*\r\n             * CENTR\u00c1LN\u00cd N\u00c1ZEV\r\n             *\/\r\n            function createCenterLabel() {\r\n\r\n                labelsLayer.innerHTML =\r\n                    '';\r\n\r\n\r\n                if (\r\n                    !singleMode ||\r\n                    !cy ||\r\n                    !currentCenterId\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const center =\r\n                    cy.getElementById(\r\n                        String(\r\n                            currentCenterId\r\n                        )\r\n                    );\r\n\r\n\r\n                if (\r\n                    !center ||\r\n                    center.empty()\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const link =\r\n                    document.createElement(\r\n                        'a'\r\n                    );\r\n\r\n\r\n                link.href =\r\n                    center.data(\r\n                        'url'\r\n                    );\r\n\r\n\r\n                link.textContent =\r\n                    String(\r\n                        center.data(\r\n                            'label'\r\n                        )\r\n                    ).toUpperCase();\r\n\r\n\r\n                link.dataset.nodeId =\r\n                    center.id();\r\n\r\n\r\n                if (\r\n                    String(\r\n                        center.data('node_type') || ''\r\n                    ) === 'person'\r\n                ) {\r\n\r\n                    link.classList.add(\r\n                        'osm-person-center-label'\r\n                    );\r\n                }\r\n\r\n\r\n                \/*\r\n                 * Kliknut\u00ed na n\u00e1zev\r\n                 * vede norm\u00e1ln\u011b na kartu.\r\n                 *\/\r\n                link.addEventListener(\r\n                    'click',\r\n                    function (event) {\r\n\r\n                        event.stopPropagation();\r\n                    }\r\n                );\r\n\r\n\r\n                \/*\r\n                 * Hover n\u00e1zvu pou\u017e\u00edv\u00e1\r\n                 * stejn\u00e9 zv\u00fdrazn\u011bn\u00ed centra\r\n                 * jako hover loga.\r\n                 *\/\r\n                link.addEventListener(\r\n                    'mouseenter',\r\n                    function () {\r\n\r\n                        highlightCenter(\r\n                            center\r\n                        );\r\n                    }\r\n                );\r\n\r\n\r\n                link.addEventListener(\r\n                    'mouseleave',\r\n                    function () {\r\n\r\n                        clearHighlight();\r\n                    }\r\n                );\r\n\r\n\r\n                labelsLayer.appendChild(\r\n                    link\r\n                );\r\n\r\n\r\n                updateCenterLabel();\r\n            }\r\n\r\n\r\n\r\n            \/*\r\n             * POZICE CENTR\u00c1LN\u00cdHO N\u00c1ZVU\r\n             *\r\n             * Proto\u017ee se centrum p\u0159i hoveru\r\n             * u\u017e fyzicky NEZV\u011aT\u0160UJE,\r\n             * tato pozice z\u016fst\u00e1v\u00e1 stabiln\u00ed.\r\n             *\/\r\n            function updateCenterLabel() {\r\n\r\n                if (\r\n                    !cy ||\r\n                    !singleMode ||\r\n                    !currentCenterId\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const link =\r\n                    labelsLayer.querySelector(\r\n                        'a[data-node-id]'\r\n                    );\r\n\r\n\r\n                if (!link) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const center =\r\n                    cy.getElementById(\r\n                        String(\r\n                            currentCenterId\r\n                        )\r\n                    );\r\n\r\n\r\n                if (\r\n                    !center ||\r\n                    center.empty()\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const pos =\r\n                    center.renderedPosition();\r\n\r\n\r\n                const height =\r\n                    center.renderedHeight();\r\n\r\n\r\n                link.style.left =\r\n                    pos.x + 'px';\r\n\r\n\r\n                link.style.top =\r\n                    (\r\n                        pos.y +\r\n                        height \/ 2 +\r\n                        14\r\n                    ) + 'px';\r\n            }\r\n\r\n\r\n\r\n            \/*\r\n             * ZV\u00ddRAZN\u011aN\u00cd OKOLN\u00cdHO UZLU\r\n             *\/\r\n            function highlightNode(node) {\r\n\r\n                if (\r\n                    !cy ||\r\n                    !node ||\r\n                    node.empty()\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                if (\r\n                    node.hasClass(\r\n                        'relation-filtered'\r\n                    )\r\n                ) {\r\n\r\n                    return;\r\n                }\r\n\r\n\r\n                const activeEdges =\r\n                    node.connectedEdges()\r\n                        .filter(\r\n                            function (edge) {\r\n\r\n                                return edgeVisibleByFilters(\r\n                                    edge\r\n                                );\r\n                            }\r\n                        );\r\n\r\n\r\n                const relatedNodes =\r\n                    activeEdges.connectedNodes();\r\n\r\n\r\n                cy.elements()\r\n                    .addClass(\r\n                        'faded'\r\n                    );\r\n\r\n\r\n                node\r\n                    .removeClass(\r\n                        'faded'\r\n                    )\r\n                    .addClass(\r\n                        'highlighted'\r\n                    );\r\n\r\n\r\n                activeEdges\r\n                    .removeClass(\r\n                        'faded'\r\n                    )\r\n                    .addClass(\r\n                        'highlighted'\r\n                    );\r\n\r\n\r\n                relatedNodes\r\n                    .removeClass(\r\n                        'faded'\r\n                    );\r\n            }\r\n\r\n\r\n            \/*\r\n             * ZV\u00ddRAZN\u011aN\u00cd CENTRA\r\n             *\r\n             * Bez zm\u011bny rozm\u011bru.\r\n             *\/\r\n            function highlightCenter(node) {\r\n\r\n                if (\r\n                    !cy ||\r\n                    !node ||\r\n                    node.empty()\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const activeEdges =\r\n                    node.connectedEdges()\r\n                        .filter(\r\n                            function (edge) {\r\n\r\n                                return edgeVisibleByFilters(\r\n                                    edge\r\n                                );\r\n                            }\r\n                        );\r\n\r\n\r\n                const relatedNodes =\r\n                    activeEdges.connectedNodes();\r\n\r\n\r\n                cy.elements()\r\n                    .addClass(\r\n                        'faded'\r\n                    );\r\n\r\n\r\n                node\r\n                    .removeClass(\r\n                        'faded highlighted'\r\n                    )\r\n                    .addClass(\r\n                        'center-hover'\r\n                    );\r\n\r\n\r\n                activeEdges\r\n                    .removeClass(\r\n                        'faded'\r\n                    )\r\n                    .addClass(\r\n                        'highlighted'\r\n                    );\r\n\r\n\r\n                relatedNodes\r\n                    .removeClass(\r\n                        'faded'\r\n                    );\r\n            }\r\n\r\n\r\n            function clearHighlight() {\r\n\r\n                if (!cy) {\r\n                    return;\r\n                }\r\n\r\n\r\n                cy.elements()\r\n                    .removeClass(\r\n                        'faded highlighted center-hover'\r\n                    );\r\n\r\n\r\n                syncRelationFilteredNodes();\r\n            }\r\n\r\n\r\n\r\n            \/*\r\n             * TOOLTIP\r\n             *\/\r\n            function showTooltip(node) {\r\n\r\n                if (\r\n                    !node ||\r\n                    node.empty()\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                tooltip.textContent =\r\n                    String(\r\n                        node.data(\r\n                            'label'\r\n                        )\r\n                    ).toUpperCase();\r\n\r\n\r\n                \/*\r\n                 * OSOBNOSTI maj\u00ed n\u00e1zvy modrozelen\u00e9,\r\n                 * iniciativy z\u016fst\u00e1vaj\u00ed oran\u017eov\u00e9.\r\n                 *\/\r\n                const isPersonTooltip =\r\n                    String(\r\n                        node.data(\r\n                            'node_type'\r\n                        ) || ''\r\n                    ) === 'person';\r\n\r\n\r\n                tooltip.style.color =\r\n                    isPersonTooltip\r\n                        ? '#1C4746'\r\n                        : '#FF5C00';\r\n\r\n\r\n                tooltip.style.borderColor =\r\n                    isPersonTooltip\r\n                        ? '#1C4746'\r\n                        : '#FF5C00';\r\n\r\n\r\n                tooltip.style.display =\r\n                    'block';\r\n\r\n\r\n                updateTooltip(\r\n                    node\r\n                );\r\n            }\r\n\r\n\r\n\r\n            function updateTooltip(node) {\r\n\r\n                if (\r\n                    !node ||\r\n                    node.empty()\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const pos =\r\n                    node.renderedPosition();\r\n\r\n\r\n                const nodeWidth =\r\n                    node.renderedWidth();\r\n\r\n\r\n                const nodeHeight =\r\n                    node.renderedHeight();\r\n\r\n\r\n                \/*\r\n                 * TADY byl skute\u010dn\u00fd probl\u00e9m:\r\n                 *\r\n                 * Tento oran\u017eov\u00fd n\u00e1zev je TOOLTIP p\u0159i hoveru\r\n                 * v CEL\u00c9 S\u00cdTI, ne centr\u00e1ln\u00ed n\u00e1zev detailu.\r\n                 *\r\n                 * Proto ho zarovn\u00e1v\u00e1me podle polohy uzlu\r\n                 * v cel\u00e9 plo\u0161e grafu:\r\n                 *\r\n                 * vlevo  -> roste doprava\r\n                 * vpravo -> roste doleva\r\n                 * st\u0159ed  -> z\u016fst\u00e1v\u00e1 centrovan\u00fd\r\n                 *\r\n                 * Bez translateX(), tak\u017ee nem\u00e1 co ut\u00e9ct\r\n                 * mimo levou\/pravou hranu.\r\n                 *\/\r\n\r\n                tooltip.style.visibility =\r\n                    'hidden';\r\n\r\n\r\n                tooltip.style.display =\r\n                    'block';\r\n\r\n\r\n                tooltip.style.setProperty(\r\n                    'transform',\r\n                    'none',\r\n                    'important'\r\n                );\r\n\r\n\r\n                \/*\r\n                 * Skute\u010dn\u00e1 velikost boxu po vykreslen\u00ed.\r\n                 *\/\r\n                const tooltipWidth =\r\n                    tooltip.offsetWidth;\r\n\r\n\r\n                const tooltipHeight =\r\n                    tooltip.offsetHeight;\r\n\r\n\r\n                const stageWidth =\r\n                    stage.clientWidth;\r\n\r\n\r\n                const stageHeight =\r\n                    stage.clientHeight;\r\n\r\n\r\n                const edgeGap =\r\n                    12;\r\n\r\n\r\n                let tooltipLeft;\r\n\r\n\r\n                if (\r\n                    pos.x <\r\n                    stageWidth * 0.38\r\n                ) {\r\n\r\n                    \/*\r\n                     * Lev\u00e1 v\u00fdse\u010d:\r\n                     * lev\u00fd okraj boxu srovn\u00e1me\r\n                     * s lev\u00fdm okrajem loga.\r\n                     *\/\r\n                    tooltipLeft =\r\n                        pos.x -\r\n                        nodeWidth \/ 2;\r\n\r\n                } else if (\r\n                    pos.x >\r\n                    stageWidth * 0.62\r\n                ) {\r\n\r\n                    \/*\r\n                     * Prav\u00e1 v\u00fdse\u010d:\r\n                     * prav\u00fd okraj boxu srovn\u00e1me\r\n                     * s prav\u00fdm okrajem loga.\r\n                     *\/\r\n                    tooltipLeft =\r\n                        pos.x +\r\n                        nodeWidth \/ 2 -\r\n                        tooltipWidth;\r\n\r\n                } else {\r\n\r\n                    \/*\r\n                     * St\u0159ed:\r\n                     * klasick\u00e9 centrov\u00e1n\u00ed.\r\n                     *\/\r\n                    tooltipLeft =\r\n                        pos.x -\r\n                        tooltipWidth \/ 2;\r\n                }\r\n\r\n\r\n                \/*\r\n                 * Tvrd\u00e1 pojistka:\r\n                 * cel\u00fd n\u00e1zev mus\u00ed z\u016fstat uvnit\u0159 grafu.\r\n                 *\/\r\n                const maxLeft =\r\n                    Math.max(\r\n                        edgeGap,\r\n                        stageWidth -\r\n                        tooltipWidth -\r\n                        edgeGap\r\n                    );\r\n\r\n\r\n                tooltipLeft =\r\n                    Math.min(\r\n                        maxLeft,\r\n                        Math.max(\r\n                            edgeGap,\r\n                            tooltipLeft\r\n                        )\r\n                    );\r\n\r\n\r\n                \/*\r\n                 * Standardn\u011b pod logem.\r\n                 *\/\r\n                let tooltipTop =\r\n                    pos.y +\r\n                    nodeHeight \/ 2 +\r\n                    10;\r\n\r\n\r\n                \/*\r\n                 * Kdyby dole nebylo m\u00edsto,\r\n                 * zobraz\u00edme n\u00e1zev nad logem.\r\n                 *\/\r\n                if (\r\n                    tooltipTop +\r\n                    tooltipHeight >\r\n                    stageHeight -\r\n                    edgeGap\r\n                ) {\r\n\r\n                    tooltipTop =\r\n                        pos.y -\r\n                        nodeHeight \/ 2 -\r\n                        tooltipHeight -\r\n                        10;\r\n                }\r\n\r\n\r\n                tooltipTop =\r\n                    Math.max(\r\n                        edgeGap,\r\n                        Math.min(\r\n                            stageHeight -\r\n                            tooltipHeight -\r\n                            edgeGap,\r\n                            tooltipTop\r\n                        )\r\n                    );\r\n\r\n\r\n                tooltip.style.left =\r\n                    tooltipLeft +\r\n                    'px';\r\n\r\n\r\n                tooltip.style.top =\r\n                    tooltipTop +\r\n                    'px';\r\n\r\n\r\n                tooltip.style.visibility =\r\n                    'visible';\r\n            }\r\n\r\n\r\n\r\n            function hideTooltip() {\r\n\r\n                tooltip.style.display =\r\n                    'none';\r\n            }\r\n\r\n\r\n\r\n            \/*\r\n             * =====================================================\r\n             * STICKY LI\u0160TA + DETAIL P\u0158ED O\u010cI\r\n             * =====================================================\r\n             *\r\n             * OceanWP \/ Elementor m\u016f\u017ee m\u00edt naho\u0159e sticky hlavi\u010dku\r\n             * r\u016fzn\u00e9 v\u00fd\u0161ky. Zkus\u00edme ji proto zjistit podle skute\u010dn\u00e9ho\r\n             * DOM a na\u0161i li\u0161tu posad\u00edme t\u011bsn\u011b pod ni.\r\n             *\/\r\n            function getSiteHeaderBottom() {\r\n\r\n                const selectors = [\r\n                    '#site-header',\r\n                    '.oceanwp-sticky-header-holder',\r\n                    '.elementor-location-header',\r\n                    'header.elementor-element',\r\n                    'header'\r\n                ];\r\n\r\n\r\n                let bottom = 0;\r\n                const seen = new Set();\r\n\r\n\r\n                selectors.forEach(\r\n                    function (selector) {\r\n\r\n                        document\r\n                            .querySelectorAll(selector)\r\n                            .forEach(\r\n                                function (element) {\r\n\r\n                                    if (\r\n                                        seen.has(element) ||\r\n                                        element === toolbar ||\r\n                                        toolbar.contains(element)\r\n                                    ) {\r\n                                        return;\r\n                                    }\r\n\r\n\r\n                                    seen.add(element);\r\n\r\n\r\n                                    const style =\r\n                                        window.getComputedStyle(element);\r\n\r\n\r\n                                    if (\r\n                                        style.display === 'none' ||\r\n                                        style.visibility === 'hidden'\r\n                                    ) {\r\n                                        return;\r\n                                    }\r\n\r\n\r\n                                    const rect =\r\n                                        element.getBoundingClientRect();\r\n\r\n\r\n                                    if (\r\n                                        rect.height <= 0 ||\r\n                                        rect.bottom <= 0 ||\r\n                                        rect.top > 100\r\n                                    ) {\r\n                                        return;\r\n                                    }\r\n\r\n\r\n                                    if (\r\n                                        style.position !== 'fixed' &&\r\n                                        style.position !== 'sticky'\r\n                                    ) {\r\n                                        return;\r\n                                    }\r\n\r\n\r\n                                    bottom =\r\n                                        Math.max(\r\n                                            bottom,\r\n                                            rect.bottom\r\n                                        );\r\n                                }\r\n                            );\r\n                    }\r\n                );\r\n\r\n\r\n                return Math.max(\r\n                    0,\r\n                    Math.round(bottom)\r\n                );\r\n            }\r\n\r\n\r\n            function syncToolbarStickyTop() {\r\n\r\n                if (\r\n                    !window.matchMedia(\r\n                        '(min-width: 1100px)'\r\n                    ).matches\r\n                ) {\r\n\r\n toolbar.style.removeProperty('top');\r\n\r\nconst headerBottom =\r\n    getSiteHeaderBottom();\r\n\r\nreturn headerBottom > 0\r\n    ? headerBottom + 2\r\n    : 52;\r\n                }\r\n\r\n\r\n                const headerBottom =\r\n                    getSiteHeaderBottom();\r\n\r\n\r\n                const stickyTop =\r\n                    headerBottom > 0\r\n                        ? headerBottom + 2\r\n                        : 52;\r\n\r\n\r\n                toolbar.style.top =\r\n                    stickyTop + 'px';\r\n\r\n\r\n                return stickyTop;\r\n            }\r\n\r\n\r\n            function getDocumentTop(element) {\r\n\r\n                let top = 0;\r\n                let current = element;\r\n\r\n\r\n                while (current) {\r\n\r\n                    top += current.offsetTop || 0;\r\n                    current = current.offsetParent;\r\n                }\r\n\r\n\r\n                return top;\r\n            }\r\n\r\n\r\n            function bringGraphIntoView() {\r\n\r\n                const stickyTop =\r\n                    syncToolbarStickyTop();\r\n\r\n\r\n                const toolbarTop =\r\n                    getDocumentTop(toolbar);\r\n\r\n\r\n                const targetY =\r\n                    toolbarTop -\r\n                    stickyTop -\r\n                    8;\r\n\r\n\r\n                window.scrollTo({\r\n\r\n                    top:\r\n                        Math.max(\r\n                            0,\r\n                            targetY\r\n                        ),\r\n\r\n                    behavior:\r\n                        'smooth'\r\n                });\r\n            }\r\n\r\n\r\n            \/*\r\n             * Kdy\u017e se zm\u011bn\u00ed \u0161\u00ed\u0159ka okna nebo v\u00fd\u0161ka sticky hlavi\u010dky,\r\n             * li\u0161tu znovu usad\u00edme pod ni.\r\n             *\/\r\n            window.addEventListener(\r\n                'resize',\r\n                function () {\r\n                    syncToolbarStickyTop();\r\n                },\r\n                { passive: true }\r\n            );\r\n\r\n\r\n            window.addEventListener(\r\n                'load',\r\n                function () {\r\n                    syncToolbarStickyTop();\r\n                },\r\n                { once: true }\r\n            );\r\n\r\n\r\n\r\n            \/*\r\n             * DETAIL HNED POD LI\u0160TOU\r\n             *\r\n             * COSE + fit() detail spr\u00e1vn\u011b zmen\u0161\u00ed,\r\n             * ale z\u00e1rove\u0148 ho vertik\u00e1ln\u011b vycentruje\r\n             * do vysok\u00e9 plochy stage. V\u00fdsledek pak\r\n             * za\u010d\u00edn\u00e1 hluboko pod ovl\u00e1dac\u00ed li\u0161tou.\r\n             *\r\n             * Tady po hotov\u00e9m layoutu nech\u00e1me STEJN\u00dd\r\n             * zoom i vodorovn\u00e9 centrov\u00e1n\u00ed a pouze cel\u00fd\r\n             * detail posuneme nahoru.\r\n             *\/\r\n            function alignSingleGraphNearTop() {\r\n\r\n                if (\r\n                    !cy ||\r\n                    (!singleMode && !filteredMode) ||\r\n                    cy.nodes().empty()\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n                \/* Kontextov\u00e9 ofici\u00e1ln\u00ed struktury nesm\u011bj\u00ed posouvat\r\n                 * z\u00e1kladn\u00ed akt\u00e9rsk\u00fd detail. *\/\r\n                const coreNodes = cy.nodes().filter(function (node) {\r\n                    return String(node.data('node_type') || '') !== 'official';\r\n                });\r\n\r\n                if (coreNodes.empty()) {\r\n                    return;\r\n                }\r\n\r\n                const box =\r\n                    coreNodes.renderedBoundingBox({\r\n                        includeNodes: true,\r\n                        includeEdges: false,\r\n                        includeLabels: false,\r\n                        includeOverlays: false\r\n                    });\r\n\r\n\r\n                if (\r\n                    !box ||\r\n                    !Number.isFinite(box.y1)\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                \/*\r\n                 * Na mobilu o trochu men\u0161\u00ed mezera,\r\n                 * na desktopu p\u0159ibli\u017en\u011b 40 px pod stage.\r\n                 * Stage sama za\u010d\u00edn\u00e1 a\u017e pod li\u0161tou,\r\n                 * tak\u017ee graf p\u016fsob\u00ed okam\u017eit\u011b navazuj\u00edc\u00edm dojmem.\r\n                 *\/\r\n                const desiredTop =\r\n                    window.matchMedia(\r\n                        '(max-width: 767px)'\r\n                    ).matches\r\n                        ? 10\r\n                        : 14;\r\n\r\n\r\n                const deltaY =\r\n                    desiredTop - box.y1;\r\n\r\n\r\n                if (\r\n                    Number.isFinite(deltaY) &&\r\n                    Math.abs(deltaY) > 0.5\r\n                ) {\r\n\r\n                    cy.panBy({\r\n                        x: 0,\r\n                        y: deltaY\r\n                    });\r\n                }\r\n\r\n\r\n                updateCenterLabel();\r\n            }\r\n\r\n\r\n            \/*\r\n             * DETAIL \u2013 KOMPAKTN\u00cd V\u00ddCHOZ\u00cd TVAR\r\n             *\r\n             * Po COSE layoutu st\u00e1hneme uzly bl\u00ed\u017e k centru,\r\n             * svisle v\u00fdrazn\u011bji ne\u017e vodorovn\u011b. V\u00fdsledek je plo\u0161\u0161\u00ed,\r\n             * vl\u00e1kna krat\u0161\u00ed a cel\u00fd svazek se vejde l\u00e9pe do v\u00fd\u0159ezu.\r\n             *\/\r\n            \/*\r\n             * SYST\u00c9MOV\u00dd MINIM\u00c1LN\u00cd ROZESTUP UZL\u016e\r\n             *\r\n             * Jedin\u00e9 \u010d\u00edslo, kter\u00fdm se \u0159\u00edd\u00ed minim\u00e1ln\u00ed voln\u00e1 mezera\r\n             * mezi hranami dvou uzl\u016f ve v\u0161ech detailn\u00edch\/filtrovan\u00fdch\r\n             * pohledech. Layout m\u016f\u017ee b\u00fdt kompaktn\u00ed, ale tuto mez\r\n             * nesm\u00ed poru\u0161it.\r\n             *\/\r\n            const DETAIL_MIN_NODE_GAP = 22;\r\n            const DETAIL_CENTER_EXTRA_GAP = 14;\r\n            const DETAIL_COMPACT_FACTOR = 0.72;\r\n\r\n            function compactGraphWithMinimumSpacing(centerId) {\r\n\r\n                if (!cy || cy.nodes().empty()) {\r\n                    return;\r\n                }\r\n\r\n                const nodes = cy.nodes().toArray();\r\n                let origin = null;\r\n\r\n                if (centerId) {\r\n                    const centerNode = cy.getElementById(String(centerId));\r\n\r\n                    if (centerNode && centerNode.length) {\r\n                        origin = centerNode.position();\r\n                    }\r\n                }\r\n\r\n                if (!origin) {\r\n                    const box = cy.nodes().boundingBox({\r\n                        includeNodes: true,\r\n                        includeEdges: false,\r\n                        includeLabels: false,\r\n                        includeOverlays: false\r\n                    });\r\n\r\n                    origin = {\r\n                        x: (box.x1 + box.x2) \/ 2,\r\n                        y: (box.y1 + box.y2) \/ 2\r\n                    };\r\n                }\r\n\r\n                \/*\r\n                 * Nejprve cel\u00fd obraz st\u00e1hneme dovnit\u0159.\r\n                 * Pak jej collision-pass rozt\u00e1hne jen tam,\r\n                 * kde by byla poru\u0161ena minim\u00e1ln\u00ed mezera.\r\n                 *\/\r\n                cy.batch(function () {\r\n                    nodes.forEach(function (node) {\r\n\r\n                        if (\r\n                            centerId &&\r\n                            String(node.id()) === String(centerId)\r\n                        ) {\r\n                            return;\r\n                        }\r\n\r\n                        const pos = node.position();\r\n\r\n                        node.position({\r\n                            x: origin.x + (pos.x - origin.x) * DETAIL_COMPACT_FACTOR,\r\n                            y: origin.y + (pos.y - origin.y) * DETAIL_COMPACT_FACTOR\r\n                        });\r\n                    });\r\n                });\r\n\r\n                \/*\r\n                 * Tvrd\u00e1 minim\u00e1ln\u00ed mezera.\r\n                 * Pro mal\u00e9 detailn\u00ed grafy je O(n\u00b2) naprosto v po\u0159\u00e1dku\r\n                 * a d\u00e1v\u00e1 n\u00e1m stabiln\u00ed v\u00fdsledek nez\u00e1visl\u00fd na konkr\u00e9tn\u00edm akt\u00e9rovi.\r\n                 *\/\r\n                const maxPasses = 40;\r\n\r\n                for (let pass = 0; pass < maxPasses; pass += 1) {\r\n\r\n                    let moved = false;\r\n\r\n                    for (let i = 0; i < nodes.length; i += 1) {\r\n                        for (let j = i + 1; j < nodes.length; j += 1) {\r\n\r\n                            const a = nodes[i];\r\n                            const b = nodes[j];\r\n\r\n                            const pa = a.position();\r\n                            const pb = b.position();\r\n\r\n                            let dx = pb.x - pa.x;\r\n                            let dy = pb.y - pa.y;\r\n                            let distance = Math.sqrt(dx * dx + dy * dy);\r\n\r\n                            if (distance < 0.001) {\r\n                                const angle =\r\n                                    (((i + 1) * 47 + (j + 1) * 71) % 360) *\r\n                                    Math.PI \/ 180;\r\n\r\n                                dx = Math.cos(angle);\r\n                                dy = Math.sin(angle);\r\n                                distance = 1;\r\n                            }\r\n\r\n                            const radiusA =\r\n                                Math.max(a.width(), a.height()) \/ 2;\r\n\r\n                            const radiusB =\r\n                                Math.max(b.width(), b.height()) \/ 2;\r\n\r\n                                                        const touchesCenter =\r\n                                centerId\r\n                                    ? (\r\n                                        String(a.id()) === String(centerId) ||\r\n                                        String(b.id()) === String(centerId)\r\n                                    )\r\n                                    : false;\r\n\r\n                            const requiredDistance =\r\n                                radiusA +\r\n                                radiusB +\r\n                                DETAIL_MIN_NODE_GAP +\r\n                                (touchesCenter ? DETAIL_CENTER_EXTRA_GAP : 0);\r\n\r\n                            if (distance >= requiredDistance) {\r\n                                continue;\r\n                            }\r\n\r\n                            moved = true;\r\n\r\n                            const overlap =\r\n                                requiredDistance - distance;\r\n\r\n                            const ux = dx \/ distance;\r\n                            const uy = dy \/ distance;\r\n\r\n                            const aIsCenter =\r\n                                centerId &&\r\n                                String(a.id()) === String(centerId);\r\n\r\n                            const bIsCenter =\r\n                                centerId &&\r\n                                String(b.id()) === String(centerId);\r\n\r\n                            if (aIsCenter) {\r\n                                b.position({\r\n                                    x: pb.x + ux * overlap,\r\n                                    y: pb.y + uy * overlap\r\n                                });\r\n                            } else if (bIsCenter) {\r\n                                a.position({\r\n                                    x: pa.x - ux * overlap,\r\n                                    y: pa.y - uy * overlap\r\n                                });\r\n                            } else {\r\n                                const half = overlap \/ 2;\r\n\r\n                                a.position({\r\n                                    x: pa.x - ux * half,\r\n                                    y: pa.y - uy * half\r\n                                });\r\n\r\n                                b.position({\r\n                                    x: pb.x + ux * half,\r\n                                    y: pb.y + uy * half\r\n                                });\r\n                            }\r\n                        }\r\n                    }\r\n\r\n                    if (!moved) {\r\n                        break;\r\n                    }\r\n                }\r\n\r\n                                cy.fit(cy.elements(), 72);\r\n\r\n                \/*\r\n                 * Po fitu dr\u017e\u00edme z\u00e1kladn\u00ed m\u011b\u0159\u00edtko nejv\u00fd\u0161 na 100 %.\r\n                 * Samotn\u00fd detail pak n\u00ed\u017ee dostane p\u0159esn\u011b JEDEN krok\r\n                 * p\u0159ibl\u00ed\u017een\u00ed 1.22\u00d7; dal\u0161\u00ed zoom u\u017e ovl\u00e1d\u00e1 n\u00e1v\u0161t\u011bvn\u00edk.\r\n                 *\/\r\n                const maxInitialZoom = 1.0;\r\n\r\n                if (cy.zoom() > maxInitialZoom) {\r\n                    const renderedCenter = {\r\n                        x: container.clientWidth \/ 2,\r\n                        y: container.clientHeight \/ 2\r\n                    };\r\n\r\n                    cy.zoom({\r\n                        level: maxInitialZoom,\r\n                        renderedPosition: renderedCenter\r\n                    });\r\n                }\r\n            }\r\n\r\n\r\n                        function compactSingleGraphInitialView() {\r\n\r\n                if (\r\n                    !cy ||\r\n                    !singleMode ||\r\n                    cy.nodes().empty()\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n                compactGraphWithMinimumSpacing(\r\n                    currentCenterId\r\n                );\r\n\r\n                \/* P\u0159esn\u011b jeden automatick\u00fd krok + oproti z\u00e1kladn\u00edmu fitu. *\/\r\n                const detailZoom = Math.min(\r\n                    cy.maxZoom(),\r\n                    cy.zoom() * 1.22\r\n                );\r\n\r\n                cy.zoom({\r\n                    level: detailZoom,\r\n                    renderedPosition: {\r\n                        x: container.clientWidth \/ 2,\r\n                        y: 24\r\n                    }\r\n                });\r\n\r\n                \/* Dal\u0161\u00ed p\u0159ibl\u00ed\u017een\u00ed u\u017e je pln\u011b na u\u017eivateli p\u0159es + \/ kole\u010dko. *\/\r\n                alignSingleGraphNearTop();\r\n            }\r\n\r\n\r\n\r\n            \/*\r\n             * UD\u00c1LOSTI\r\n             *\/\r\n            function bindGraphEvents() {\r\n\r\n                \/*\r\n                 * KLIK NA LOGO\r\n                 *\/\r\n                cy.on(\r\n                    'tap',\r\n                    'node',\r\n                    function (evt) {\r\n\r\n                        const node =\r\n                            evt.target;\r\n\r\n\r\n                        const nodeId =\r\n                            String(\r\n                                node.id()\r\n                            );\r\n\r\n                        if (\r\n                            String(node.data('node_type') || '') === 'official'\r\n                        ) {\r\n                            const tappedOfficialId = String(node.id());\r\n\r\n                            if (officialPopup.classList.contains('is-visible')) {\r\n                                if (openOfficialNodeId === tappedOfficialId) {\r\n                                    hideOfficialPopup();\r\n                                    return;\r\n                                }\r\n                            }\r\n\r\n                            showOfficialPopup(node);\r\n                            return;\r\n                        }\r\n\r\n\r\n                        \/*\r\n                         * OSOBNOST:\r\n                         * - prvn\u00ed klik na okoln\u00ed portr\u00e9t -> jej\u00ed vazby\r\n                         * - klik na osobnost, kter\u00e1 u\u017e je centrem -> jej\u00ed karta\r\n                         *\/\r\n                        if (\r\n                            String(\r\n                                node.data('node_type') || ''\r\n                            ) === 'person'\r\n                        ) {\r\n\r\n                            if (\r\n                                singleMode &&\r\n                                currentCenterType === 'person' &&\r\n                                nodeId ===\r\n                                String(\r\n                                    currentCenterId\r\n                                )\r\n                            ) {\r\n\r\n                                const personUrl =\r\n                                    node.data('url');\r\n\r\n                                if (personUrl) {\r\n                                    window.location.href =\r\n                                        personUrl;\r\n                                }\r\n\r\n                                return;\r\n                            }\r\n\r\n\r\n                            showPersonSingle(\r\n                                nodeId\r\n                            );\r\n\r\n                            return;\r\n                        }\r\n\r\n\r\n                        \/*\r\n                         * CENTR\u00c1LN\u00cd INICIATIVA\r\n                         * V DETAILU -> KARTA\r\n                         *\/\r\n                        if (\r\n                            singleMode &&\r\n                            currentCenterType === 'initiative' &&\r\n                            nodeId ===\r\n                            String(\r\n                                currentCenterId\r\n                            )\r\n                        ) {\r\n\r\n                            const url =\r\n                                node.data(\r\n                                    'url'\r\n                                );\r\n\r\n\r\n                            if (url) {\r\n\r\n                                window.location.href =\r\n                                    url;\r\n                            }\r\n\r\n\r\n                            return;\r\n                        }\r\n\r\n\r\n                        \/*\r\n                         * OSTATN\u00cd UZLY ->\r\n                         * JEJICH VLASTN\u00cd S\u00cd\u0164\r\n                         *\/\r\n                        showSingle(\r\n                            nodeId\r\n                        );\r\n                    }\r\n                );\r\n\r\n\r\n                \/*\r\n                 * HOVER\r\n                 *\/\r\n                cy.on(\r\n                    'mouseover',\r\n                    'node',\r\n                    function (evt) {\r\n\r\n                        container.style.cursor =\r\n                            'pointer';\r\n\r\n\r\n                        const node =\r\n                            evt.target;\r\n\r\n                        if (String(node.data('node_type') || '') === 'official') {\r\n                            node.addClass('official-hover');\r\n                            hideTooltip();\r\n                            return;\r\n                        }\r\n\r\n\r\n                        if (\r\n                            node.hasClass(\r\n                                'relation-filtered'\r\n                            )\r\n                        ) {\r\n\r\n                            container.style.cursor =\r\n                                'default';\r\n\r\n                            hideTooltip();\r\n\r\n                            return;\r\n                        }\r\n\r\n\r\n                        const nodeId =\r\n                            String(\r\n                                node.id()\r\n                            );\r\n\r\n\r\n                        \/*\r\n                         * CENTRUM\r\n                         *\/\r\n                        if (\r\n                            singleMode &&\r\n                            nodeId ===\r\n                            String(\r\n                                currentCenterId\r\n                            )\r\n                        ) {\r\n\r\n                            highlightCenter(\r\n                                node\r\n                            );\r\n\r\n\r\n                        } else {\r\n\r\n                            \/*\r\n                             * OKOLN\u00cd UZEL\r\n                             *\/\r\n                            highlightNode(\r\n                                node\r\n                            );\r\n\r\n\r\n                            showTooltip(\r\n                                node\r\n                            );\r\n                        }\r\n                    }\r\n                );\r\n\r\n\r\n                cy.on(\r\n                    'mouseout',\r\n                    'node',\r\n                    function (evt) {\r\n\r\n                        container.style.cursor =\r\n                            'default';\r\n\r\n                        if (evt && evt.target) {\r\n                            evt.target.removeClass('official-hover');\r\n                        }\r\n\r\n                        clearHighlight();\r\n\r\n                        hideTooltip();\r\n                    }\r\n                );\r\n\r\n\r\n                \/*\r\n                 * N\u00e1zev se h\u00fdbe jen\r\n                 * p\u0159i skute\u010dn\u00e9m pan\/zoom\/position,\r\n                 * ne kv\u016fli hover zm\u011bn\u011b velikosti,\r\n                 * proto\u017ee tu jsme odstranili.\r\n                 *\/\r\n                cy.on(\r\n                    'render pan zoom position',\r\n                    function () {\r\n\r\n                        updateCenterLabel();\r\n                    }\r\n                );\r\n            }\r\n\r\n\r\n\r\n                        \/*\r\n             * =====================================================\r\n             * PODMNO\u017dINA AKT\u00c9R\u016e \u2013 RUBRIKA \/ UD\u00c1LOST\r\n             * =====================================================\r\n             *\/\r\n            function showFilteredActors(nodeIds, officialEventId) {\r\n\r\n                hideEventContext();\r\n\r\n                destroyGraph();\r\n\r\n                singleMode = false;\r\n                filteredMode = true;\r\n                setZoomControlsVisible(true);\r\n                currentCenterId = null;\r\n                currentCenterType = null;\r\n                peopleVisible = true;\r\n                currentRelationFilter = 'all';\r\n                currentPersonFilter = 'all';\r\n                currentActorFilter = 'all';\r\n\r\n                updatePeopleControls();\r\n                updateRelationFilterUi();\r\n                updatePersonFilterUi();\r\n                updateActorFilterUi();\r\n\r\n                select.value = '';\r\n\r\n                const requestedIds = new Set(\r\n                    (nodeIds || []).map(String)\r\n                );\r\n\r\n                const selectedNodes =\r\n                    originalData.nodes\r\n                        .concat(originalData.people_nodes || [])\r\n                        .filter(\r\n                            function (node) {\r\n                                return requestedIds.has(\r\n                                    String(node.data.id)\r\n                                );\r\n                            }\r\n                        );\r\n\r\n                const positionedNodes = selectedNodes.map(\r\n                    function (node, index) {\r\n                        const count = selectedNodes.length;\r\n                        let x = 0;\r\n                        let y = 0;\r\n\r\n                        if (count === 2) {\r\n                            x = index === 0 ? -190 : 190;\r\n                        } else if (count > 2) {\r\n                            let ringCount = count;\r\n                            let ringIndex = index;\r\n                            let radiusX =\r\n                                count <= 4 ? 250 :\r\n                                (count <= 8 ? 330 :\r\n                                (count <= 14 ? 410 : 470));\r\n                            let radiusY =\r\n                                count <= 4 ? 90 :\r\n                                (count <= 8 ? 120 :\r\n                                (count <= 14 ? 150 : 175));\r\n\r\n                            if (count > 18) {\r\n                                const innerCount = Math.ceil(count \/ 2);\r\n                                const isOuter = index >= innerCount;\r\n\r\n                                ringCount = isOuter\r\n                                    ? count - innerCount\r\n                                    : innerCount;\r\n                                ringIndex = isOuter\r\n                                    ? index - innerCount\r\n                                    : index;\r\n                                radiusX = isOuter ? 405 : 390;\r\n                                radiusY = isOuter ? 118 : 126;\r\n                            }\r\n\r\n                            let startAngle = -Math.PI \/ 2;\r\n                            if (ringCount % 2 === 0) {\r\n                                startAngle -= Math.PI \/ ringCount;\r\n                            }\r\n\r\n                            const angle =\r\n                                startAngle +\r\n                                (Math.PI * 2 * ringIndex \/ ringCount);\r\n\r\n                            x = Math.cos(angle) * radiusX;\r\n                            y = Math.sin(angle) * radiusY;\r\n                        }\r\n\r\n                        return {\r\n                            data: Object.assign({}, node.data),\r\n                            classes: node.classes || '',\r\n                            position: { x: x, y: y }\r\n                        };\r\n                    }\r\n                );\r\n\r\n                const selectedIds = new Set(\r\n                    selectedNodes.map(\r\n                        function (node) {\r\n                            return String(node.data.id);\r\n                        }\r\n                    )\r\n                );\r\n\r\n                const selectedEdges =\r\n                    originalData.edges\r\n                        .concat(originalData.people_edges || [])\r\n                        .filter(\r\n                            function (edge) {\r\n                                return (\r\n                                    selectedIds.has(String(edge.data.source)) &&\r\n                                    selectedIds.has(String(edge.data.target))\r\n                                );\r\n                            }\r\n                        );\r\n\r\n                const degreeById = new Map();\r\n                selectedNodes.forEach(function (node) {\r\n                    degreeById.set(String(node.data.id), 0);\r\n                });\r\n\r\n                selectedEdges.forEach(function (edge) {\r\n                    const source = String(edge.data.source);\r\n                    const target = String(edge.data.target);\r\n                    degreeById.set(source, (degreeById.get(source) || 0) + 1);\r\n                    degreeById.set(target, (degreeById.get(target) || 0) + 1);\r\n                });\r\n\r\n                const rankedNodes = selectedNodes.slice().sort(\r\n                    function (a, b) {\r\n                        const degreeDiff =\r\n                            (degreeById.get(String(b.data.id)) || 0) -\r\n                            (degreeById.get(String(a.data.id)) || 0);\r\n\r\n                        if (degreeDiff !== 0) {\r\n                            return degreeDiff;\r\n                        }\r\n\r\n                        return String(a.data.label || '').localeCompare(\r\n                            String(b.data.label || ''),\r\n                            undefined,\r\n                            { sensitivity: 'base' }\r\n                        );\r\n                    }\r\n                );\r\n\r\n                const anchorNode = rankedNodes.length ? rankedNodes[0] : null;\r\n                const surroundingNodes = rankedNodes.slice(1);\r\n                const rankedPositionedNodes = [];\r\n\r\n                if (anchorNode) {\r\n                    rankedPositionedNodes.push({\r\n                        data: Object.assign({}, anchorNode.data),\r\n                        classes: anchorNode.classes || '',\r\n                        position: { x: 0, y: 0 }\r\n                    });\r\n                }\r\n\r\n                surroundingNodes.forEach(function (node, index) {\r\n                    const count = surroundingNodes.length;\r\n                    let x = 0;\r\n                    let y = 0;\r\n\r\n                    if (count === 1) {\r\n                        x = 240;\r\n                    } else if (count === 2) {\r\n                        x = index === 0 ? -250 : 250;\r\n                    } else {\r\n                        let ringCount = count;\r\n                        let ringIndex = index;\r\n                        let radiusX =\r\n                            count <= 4 ? 310 :\r\n                            (count <= 8 ? 385 :\r\n                            (count <= 14 ? 445 : 495));\r\n                        let radiusY =\r\n                            count <= 4 ? 78 :\r\n                            (count <= 8 ? 105 :\r\n                            (count <= 14 ? 130 : 150));\r\n\r\n                        if (count > 18) {\r\n                            const innerCount = Math.ceil(count \/ 2);\r\n                            const isOuter = index >= innerCount;\r\n                            ringCount = isOuter ? count - innerCount : innerCount;\r\n                            ringIndex = isOuter ? index - innerCount : index;\r\n                            radiusX = isOuter ? 410 : 400;\r\n                            radiusY = isOuter ? 114 : 124;\r\n                        }\r\n\r\n                        let startAngle = -Math.PI \/ 2;\r\n                        if (ringCount % 2 === 0) {\r\n                            startAngle -= Math.PI \/ ringCount;\r\n                        }\r\n\r\n                        const angle =\r\n                            startAngle +\r\n                            (Math.PI * 2 * ringIndex \/ ringCount);\r\n\r\n                        x = Math.cos(angle) * radiusX;\r\n                        y = Math.sin(angle) * radiusY;\r\n                    }\r\n\r\n                    rankedPositionedNodes.push({\r\n                        data: Object.assign({}, node.data),\r\n                        classes: node.classes || '',\r\n                        position: { x: x, y: y }\r\n                    });\r\n                });\r\n\r\n                const elements =\r\n                    rankedPositionedNodes.concat(selectedEdges);\r\n\r\n                cy = cytoscape({\r\n                    container: container,\r\n                    elements: elements,\r\n                    style: graphStyles(true),\r\n                    layout: {\r\n                        name: 'preset',\r\n                        animate: false,\r\n                        fit: true,\r\n                        padding: 90,\r\n                        avoidOverlap: true,\r\n                        avoidOverlapPadding: 42,\r\n                        nodeDimensionsIncludeLabels: false,\r\n                        condense: true,\r\n                        spacingFactor: 1.28,\r\n                        sort: function (a, b) {\r\n                            return String(a.data('label')).localeCompare(\r\n                                String(b.data('label')),\r\n                                undefined,\r\n                                { sensitivity: 'base' }\r\n                            );\r\n                        }\r\n                    },\r\n                    minZoom: 0.15,\r\n                    maxZoom: 2.5,\r\n                    wheelSensitivity: 0.25\r\n                });\r\n\r\n                bindGraphEvents();\r\n                applyRelationFilter();\r\n\r\n                \/* P\u0159i prvn\u00edm zobrazen\u00ed filtru maj\u00ed b\u00fdt v\u0161ichni vybran\u00ed\r\n                 * akt\u00e9\u0159i pln\u011b viditeln\u00ed, i kdy\u017e mezi sebou nemaj\u00ed je\u0161t\u011b\r\n                 * samostatnou vazbu v grafu. *\/\r\n                cy.nodes().removeClass('relation-filtered');\r\n\r\n                                requestAnimationFrame(function () {\r\n                    compactGraphWithMinimumSpacing(null);\r\n\r\n                    if (officialEventId) {\r\n                        addOfficialBundle(\r\n                            getOfficialBundleForEvent(String(officialEventId))\r\n                        );\r\n                    }\r\n\r\n                    alignSingleGraphNearTop();\r\n                    setTimeout(alignSingleGraphNearTop, 120);\r\n                });\r\n\r\n                labelsLayer.innerHTML = '';\r\n            }\r\n\r\n\r\n            \/*\r\n             * =====================================================\r\n             * CELKOV\u00c1 S\u00cd\u0164\r\n             * =====================================================\r\n             *\/\r\n            function showAllRelations() {\r\n\r\n                hideEventContext();\r\n\r\n                const staleOfficialTable = stage.querySelector('.osm-official-side-table');\r\n                if (staleOfficialTable) {\r\n                    staleOfficialTable.remove();\r\n                }\r\n                setOfficialControlsVisible(false);\r\n\r\n                if (typeof syncAllSearchFilters === 'function') {\r\n                    setTimeout(syncAllSearchFilters, 0);\r\n                }\r\n\r\n                destroyGraph();\r\n\r\n\r\n                singleMode =\r\n                    false;\r\n                filteredMode = false;\r\n                setZoomControlsVisible(false);\r\n\r\n\r\n                currentCenterId =\r\n                    null;\r\n\r\n\r\n                currentCenterType =\r\n                    null;\r\n\r\n\r\n                peopleVisible =\r\n                    true;\r\n\r\n                                currentRelationFilter =\r\n                    'all';\r\n\r\n                currentPersonFilter =\r\n                    'all';\r\n\r\n                currentActorFilter =\r\n                    'all';\r\n\r\n                updatePeopleControls();\r\n                updateRelationFilterUi();\r\n                updatePersonFilterUi();\r\n                updateActorFilterUi();\r\n\r\n\r\n                select.value =\r\n                    '';\r\n\r\n                categorySelect.value =\r\n                    '';\r\n\r\n                eventSelect.value =\r\n                    '';\r\n\r\n\r\n                const connectedNodes =\r\n                    originalData.nodes.filter(\r\n                        function (node) {\r\n\r\n                            return (\r\n                                hasRelations(\r\n                                    node.data.id\r\n                                ) ||\r\n                                hasPersonRelations(\r\n                                    node.data.id\r\n                                )\r\n                            );\r\n                        }\r\n                    );\r\n\r\n\r\n                const connectedPeopleNodes =\r\n                    (originalData.people_nodes || [])\r\n                        .filter(\r\n                            function (node) {\r\n                                return getPersonEdgesForPerson(\r\n                                    node.data.id\r\n                                ).length > 0;\r\n                            }\r\n                        );\r\n\r\n\r\n                const connectedIds =\r\n                    new Set(\r\n                        connectedNodes\r\n                            .concat(connectedPeopleNodes)\r\n                            .map(\r\n                                function (node) {\r\n\r\n                                    return String(\r\n                                        node.data.id\r\n                                    );\r\n                                }\r\n                            )\r\n                    );\r\n\r\n\r\n                const connectedEdges =\r\n                    originalData.edges.filter(\r\n                        function (edge) {\r\n\r\n                            return (\r\n                                connectedIds.has(\r\n                                    String(edge.data.source)\r\n                                )\r\n                                &&\r\n                                connectedIds.has(\r\n                                    String(edge.data.target)\r\n                                )\r\n                            );\r\n                        }\r\n                    );\r\n\r\n\r\n                const connectedPersonEdges =\r\n                    (originalData.people_edges || [])\r\n                        .filter(\r\n                            function (edge) {\r\n\r\n                                return (\r\n                                    connectedIds.has(\r\n                                        String(edge.data.source)\r\n                                    )\r\n                                    &&\r\n                                    connectedIds.has(\r\n                                        String(edge.data.target)\r\n                                    )\r\n                                );\r\n                            }\r\n                        );\r\n\r\n\r\n                const elements =\r\n                    connectedNodes\r\n                        .concat(connectedPeopleNodes)\r\n                        .concat(connectedEdges)\r\n                        .concat(connectedPersonEdges);\r\n\r\n\r\n                cy = cytoscape({\r\n\r\n                    container:\r\n                        container,\r\n\r\n                    elements:\r\n                        elements,\r\n\r\n                    style:\r\n                        graphStyles(\r\n                            false\r\n                        ),\r\n\r\n                    layout: {\r\n\r\n                        \/*\r\n                         * GRID:\r\n                         *\r\n                         * Pravideln\u00e1 m\u0159\u00ed\u017eka.\r\n                         * Nejv\u00edce propojen\u00e9 iniciativy \u0159ad\u00edme jako prvn\u00ed,\r\n                         * p\u0159i shod\u011b podle n\u00e1zvu, aby byl v\u00fdsledek stabiln\u00ed\r\n                         * a z\u00e1rove\u0148 trochu informa\u010dn\u00ed.\r\n                         *\/\r\n                        name:\r\n                            'grid',\r\n\r\n                        animate:\r\n                            false,\r\n\r\n                        fit:\r\n                            true,\r\n\r\n                                                padding:\r\n                            34,\r\n\r\n                        avoidOverlap:\r\n                            true,\r\n\r\n                                                avoidOverlapPadding:\r\n                            42,\r\n\r\n                        nodeDimensionsIncludeLabels:\r\n                            false,\r\n\r\n                        condense:\r\n                            true,\r\n\r\n                                                spacingFactor:\r\n                            1.28,\r\n\r\n                        sort:\r\n                            function (a, b) {\r\n\r\n                                const degreeDiff =\r\n                                    b.degree() -\r\n                                    a.degree();\r\n\r\n\r\n                                if (\r\n                                    degreeDiff !== 0\r\n                                ) {\r\n\r\n                                    return degreeDiff;\r\n                                }\r\n\r\n\r\n                                return String(\r\n                                    a.data('label')\r\n                                ).localeCompare(\r\n                                    String(\r\n                                        b.data('label')\r\n                                    ),\r\n                                    undefined,\r\n                                    {\r\n                                        sensitivity:\r\n                                            'base'\r\n                                    }\r\n                                );\r\n                            }\r\n                    },\r\n\r\n                    minZoom:\r\n                        0.15,\r\n\r\n                    maxZoom:\r\n                        4,\r\n\r\n                    wheelSensitivity:\r\n                        0.25\r\n                });\r\n\r\n\r\n                bindGraphEvents();\r\n\r\n\r\n                applyRelationFilter();\r\n\r\n\r\n                labelsLayer.innerHTML =\r\n                    '';\r\n\t\t\t\trequestAnimationFrame(\r\n    function () {\r\n\r\n        if (\r\n            !cy ||\r\n            singleMode ||\r\n            cy.nodes().empty()\r\n        ) {\r\n            return;\r\n        }\r\n\r\n        const box =\r\n            cy.nodes().renderedBoundingBox({\r\n                includeNodes: true,\r\n                includeEdges: false,\r\n                includeLabels: false,\r\n                includeOverlays: false\r\n            });\r\n\r\n        const desiredTop = 8;\r\n        const deltaY =\r\n            desiredTop - box.y1;\r\n\r\n        if (\r\n            Number.isFinite(deltaY) &&\r\n            Math.abs(deltaY) > 0.5\r\n        ) {\r\n            cy.panBy({\r\n                x: 0,\r\n                y: deltaY\r\n            });\r\n        }\r\n    }\r\n);\r\n            }\r\n\r\n\r\n\r\n            \/*\r\n             * =====================================================\r\n             * DETAIL JEDN\u00c9 INICIATIVY\r\n             * =====================================================\r\n             *\/\r\n            function showSingle(nodeId, preservePeopleState) {\r\n\r\n                hideEventContext();\r\n\r\n                currentActorFilter = 'all';\r\n                updateActorFilterUi();\r\n\r\n                const centerData =\r\n                    getNodeById(\r\n                        nodeId\r\n                    );\r\n\r\n\r\n                if (!centerData) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const neighbourIds =\r\n                    getNeighbourIds(\r\n                        nodeId\r\n                    );\r\n\r\n\r\n                const availablePersonEdges =\r\n                    getPersonEdgesForInitiative(\r\n                        nodeId\r\n                    );\r\n\r\n\r\n                if (\r\n                    !neighbourIds.length &&\r\n                    !availablePersonEdges.length\r\n                ) {\r\n                    return;\r\n                }\r\n\r\n\r\n                if (!preservePeopleState) {\r\n\r\n                    peopleVisible =\r\n                        availablePersonEdges.length > 0;\r\n\r\n                    currentPersonFilter =\r\n                        'all';\r\n                }\r\n\r\n\r\n                const allowedIds =\r\n                    new Set(\r\n                        [\r\n                            String(nodeId),\r\n\r\n                            ...neighbourIds.map(\r\n                                String\r\n                            )\r\n                        ]\r\n                    );\r\n\r\n\r\n                const selectedNodes =\r\n                    originalData.nodes\r\n                        .filter(\r\n                            function (node) {\r\n\r\n                                return allowedIds.has(\r\n                                    String(\r\n                                        node.data.id\r\n                                    )\r\n                                );\r\n                            }\r\n                        )\r\n                        .map(\r\n                            function (node) {\r\n\r\n                                return {\r\n\r\n                                    data:\r\n                                        Object.assign(\r\n                                            {},\r\n                                            node.data\r\n                                        ),\r\n\r\n                                    classes:\r\n                                        String(\r\n                                            node.data.id\r\n                                        ) ===\r\n                                        String(nodeId)\r\n\r\n                                            ? 'osm-center'\r\n                                            : ''\r\n                                };\r\n                            }\r\n                        );\r\n\r\n\r\n                const selectedEdges =\r\n                    originalData.edges.filter(\r\n                        function (edge) {\r\n\r\n                            return (\r\n                                allowedIds.has(\r\n                                    String(\r\n                                        edge.data.source\r\n                                    )\r\n                                )\r\n                                &&\r\n                                allowedIds.has(\r\n                                    String(\r\n                                        edge.data.target\r\n                                    )\r\n                                )\r\n                            );\r\n                        }\r\n                    );\r\n\r\n\r\n                let selectedPersonEdges = [];\r\n                let selectedPeopleNodes = [];\r\n\r\n\r\n                if (peopleVisible) {\r\n\r\n                    selectedPersonEdges =\r\n                        availablePersonEdges.map(\r\n                            function (edge) {\r\n\r\n                                return {\r\n                                    data:\r\n                                        Object.assign(\r\n                                            {},\r\n                                            edge.data\r\n                                        )\r\n                                };\r\n                            }\r\n                        );\r\n\r\n\r\n                    const personIds =\r\n                        new Set(\r\n                            selectedPersonEdges.map(\r\n                                function (edge) {\r\n\r\n                                    const source =\r\n                                        String(\r\n                                            edge.data.source\r\n                                        );\r\n\r\n                                    const target =\r\n                                        String(\r\n                                            edge.data.target\r\n                                        );\r\n\r\n                                    return source.indexOf('person-') === 0\r\n                                        ? source\r\n                                        : target;\r\n                                }\r\n                            )\r\n                        );\r\n\r\n\r\n                    selectedPeopleNodes =\r\n                        (\r\n                            originalData.people_nodes || []\r\n                        )\r\n                        .filter(\r\n                            function (node) {\r\n\r\n                                return personIds.has(\r\n                                    String(\r\n                                        node.data.id\r\n                                    )\r\n                                );\r\n                            }\r\n                        )\r\n                        .map(\r\n                            function (node) {\r\n\r\n                                return {\r\n\r\n                                    data:\r\n                                        Object.assign(\r\n                                            {},\r\n                                            node.data\r\n                                        ),\r\n\r\n                                    classes:\r\n                                        'osm-person'\r\n                                };\r\n                            }\r\n                        );\r\n                }\r\n\r\n\r\n                const elements =\r\n                    selectedNodes\r\n                        .concat(\r\n                            selectedEdges\r\n                        )\r\n                        .concat(\r\n                            selectedPeopleNodes\r\n                        )\r\n                        .concat(\r\n                            selectedPersonEdges\r\n                        );\r\n\r\n\r\n                destroyGraph();\r\n\r\n\r\n                singleMode =\r\n                    true;\r\n                filteredMode = false;\r\n                setZoomControlsVisible(true);\r\n\r\n\r\n                currentCenterId =\r\n                    String(nodeId);\r\n\r\n\r\n                currentCenterType =\r\n                    'initiative';\r\n\r\n\r\n                select.value =\r\n                    String(nodeId);\r\n\r\n\r\n                updatePeopleControls();\r\n                updatePersonFilterUi();\r\n\r\n\r\n                const relationCount =\r\n                    neighbourIds.length;\r\n\r\n\r\n                \/*\r\n                 * VELK\u00dd PAVOUK\r\n                 *\/\r\n                let layoutOptions = {\r\n\r\n                    name:\r\n                        'cose',\r\n\r\n                    animate:\r\n                        false,\r\n\r\n                    fit:\r\n                        true,\r\n\r\n                    padding:\r\n                        120,\r\n\r\n                    nodeRepulsion:\r\n                        16000,\r\n\r\n                    idealEdgeLength:\r\n                        175,\r\n\r\n                    edgeElasticity:\r\n                        78,\r\n\r\n                    nestingFactor:\r\n                        1.2,\r\n\r\n                    gravity:\r\n                        0.58,\r\n\r\n                    numIter:\r\n                        1400,\r\n\r\n                    initialTemp:\r\n                        180,\r\n\r\n                    coolingFactor:\r\n                        0.95,\r\n\r\n                    minTemp:\r\n                        1\r\n                };\r\n\r\n\r\n                \/*\r\n                 * Bez zvl\u00e1\u0161tn\u00edho re\u017eimu pro 1\u20132 vazby:\r\n                 * detail se te\u010f dr\u017e\u00ed jednoho konzistentn\u00edho\r\n                 * m\u011b\u0159\u00edtka pro v\u0161echny iniciativy.\r\n                 *\/\r\n\r\n\r\n                cy = cytoscape({\r\n\r\n                    container:\r\n                        container,\r\n\r\n                    elements:\r\n                        elements,\r\n\r\n                    style:\r\n                        graphStyles(\r\n                            true\r\n                        ),\r\n\r\n                    layout:\r\n                        layoutOptions,\r\n\r\n                    minZoom:\r\n                        0.15,\r\n\r\n                    maxZoom:\r\n                        2.5,\r\n\r\n                    wheelSensitivity:\r\n                        0.25\r\n                });\r\n\r\n\r\n                bindGraphEvents();\r\n\r\n\r\n                applyRelationFilter();\r\n\r\n\r\n                createCenterLabel();\r\n\r\n\r\n                updateCenterLabel();\r\n\r\n\r\n                \/*\r\n                 * COSE je bez animace, ale Cytoscape\/DOM\r\n                 * je\u0161t\u011b m\u016f\u017ee v n\u00e1sleduj\u00edc\u00edm sn\u00edmku dopo\u010d\u00edtat\r\n                 * fin\u00e1ln\u00ed rozm\u011bry. Proto zarovn\u00e1me jednou hned\r\n                 * a jednou kr\u00e1tce pot\u00e9. Druh\u00fd pr\u016fchod je idempotentn\u00ed.\r\n                 *\/\r\n                requestAnimationFrame(\r\n                    function () {\r\n\r\n                        compactSingleGraphInitialView();\r\n\r\n                        if (currentCenterId) {\r\n                            addOfficialBundle(\r\n                                getOfficialBundleForActor(String(currentCenterId))\r\n                            );\r\n                        }\r\n\r\n                        setTimeout(\r\n                            alignSingleGraphNearTop,\r\n                            120\r\n                        );\r\n                    }\r\n                );\r\n\r\n\r\n                setTimeout(\r\n                    function () {\r\n\r\n                        bringGraphIntoView();\r\n\r\n                    },\r\n                    80\r\n                );\r\n            }\r\n\r\n\r\n            \/*\r\n             * =====================================================\r\n             * DETAIL JEDN\u00c9 OSOBNOSTI\r\n             * =====================================================\r\n             *\r\n             * Prvn\u00ed klik na okoln\u00ed osobnost otev\u0159e jej\u00ed vazby.\r\n             * Osobnost je uprost\u0159ed, kolem n\u00ed jsou iniciativy,\r\n             * ke kter\u00fdm m\u00e1 vztah VEDEN\u00cd \/ \u010cLENSTV\u00cd \/ SOUVISLOST.\r\n             *\r\n             * A\u017e klik na tuto centr\u00e1ln\u00ed osobnost vede na jej\u00ed kartu.\r\n             *\/\r\n            function showPersonSingle(personNodeId) {\r\n\r\n                hideEventContext();\r\n\r\n                currentActorFilter = 'all';\r\n                updateActorFilterUi();\r\n\r\n                const centerData =\r\n                    getPersonNodeById(\r\n                        personNodeId\r\n                    );\r\n\r\n\r\n                if (!centerData) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const selectedPersonEdges =\r\n                    getPersonEdgesForPerson(\r\n                        personNodeId\r\n                    );\r\n\r\n\r\n                if (!selectedPersonEdges.length) {\r\n                    return;\r\n                }\r\n\r\n\r\n                const initiativeIds =\r\n                    new Set();\r\n\r\n                const relatedPersonIds =\r\n                    new Set();\r\n\r\n\r\n                selectedPersonEdges.forEach(\r\n                    function (edge) {\r\n\r\n                        const source =\r\n                            String(\r\n                                edge.data.source\r\n                            );\r\n\r\n                        const target =\r\n                            String(\r\n                                edge.data.target\r\n                            );\r\n\r\n                        [source, target].forEach(\r\n                            function (endpoint) {\r\n\r\n                                if (\r\n                                    endpoint ===\r\n                                    String(personNodeId)\r\n                                ) {\r\n                                    return;\r\n                                }\r\n\r\n                                if (\r\n                                    endpoint.indexOf('person-') === 0\r\n                                ) {\r\n                                    relatedPersonIds.add(endpoint);\r\n                                    return;\r\n                                }\r\n\r\n                                initiativeIds.add(endpoint);\r\n                            }\r\n                        );\r\n                    }\r\n                );\r\n\r\n\r\n                const selectedInitiativeNodes =\r\n                    originalData.nodes\r\n                        .filter(\r\n                            function (node) {\r\n\r\n                                return initiativeIds.has(\r\n                                    String(\r\n                                        node.data.id\r\n                                    )\r\n                                );\r\n                            }\r\n                        )\r\n                        .map(\r\n                            function (node) {\r\n\r\n                                return {\r\n                                    data:\r\n                                        Object.assign(\r\n                                            {},\r\n                                            node.data\r\n                                        )\r\n                                };\r\n                            }\r\n                        );\r\n\r\n\r\n                const selectedRelatedPersonNodes =\r\n                    (originalData.people_nodes || [])\r\n                        .filter(\r\n                            function (node) {\r\n                                return relatedPersonIds.has(\r\n                                    String(node.data.id)\r\n                                );\r\n                            }\r\n                        )\r\n                        .map(\r\n                            function (node) {\r\n                                return {\r\n                                    data:\r\n                                        Object.assign(\r\n                                            {},\r\n                                            node.data\r\n                                        ),\r\n                                    classes:\r\n                                        'osm-person'\r\n                                };\r\n                            }\r\n                        );\r\n\r\n\r\n                const selectedPersonNode = {\r\n                    data:\r\n                        Object.assign(\r\n                            {},\r\n                            centerData.data\r\n                        ),\r\n\r\n                    classes:\r\n                        'osm-person osm-center'\r\n                };\r\n\r\n\r\n                const personEdges =\r\n                    selectedPersonEdges.map(\r\n                        function (edge) {\r\n\r\n                            return {\r\n                                data:\r\n                                    Object.assign(\r\n                                        {},\r\n                                        edge.data\r\n                                    )\r\n                            };\r\n                        }\r\n                    );\r\n\r\n\r\n                const elements =\r\n                    [\r\n                        selectedPersonNode\r\n                    ]\r\n                    .concat(\r\n                        selectedInitiativeNodes\r\n                    )\r\n                    .concat(\r\n                        selectedRelatedPersonNodes\r\n                    )\r\n                    .concat(\r\n                        personEdges\r\n                    );\r\n\r\n\r\n                destroyGraph();\r\n\r\n\r\n                singleMode =\r\n                    true;\r\n                filteredMode = false;\r\n                setZoomControlsVisible(true);\r\n\r\n\r\n                currentCenterId =\r\n                    String(\r\n                        personNodeId\r\n                    );\r\n\r\n\r\n                currentCenterType =\r\n                    'person';\r\n\r\n\r\n                \/*\r\n                 * Spole\u010dn\u00fd v\u00fdb\u011br akt\u00e9r\u016f dr\u017e\u00ed i osobnost jako aktu\u00e1ln\u00ed centrum.\r\n                 *\/\r\n                select.value =\r\n                    String(personNodeId);\r\n\r\n\r\n                peopleVisible =\r\n                    true;\r\n\r\n\r\n                currentPersonFilter =\r\n                    'all';\r\n\r\n\r\n                updatePeopleControls();\r\n                updatePersonFilterUi();\r\n\r\n\r\n                const layoutOptions = {\r\n\r\n                    name:\r\n                        'cose',\r\n\r\n                    animate:\r\n                        false,\r\n\r\n                    fit:\r\n                        true,\r\n\r\n                    padding:\r\n                        120,\r\n\r\n                    nodeRepulsion:\r\n                        16000,\r\n\r\n                    idealEdgeLength:\r\n                        175,\r\n\r\n                    edgeElasticity:\r\n                        78,\r\n\r\n                    nestingFactor:\r\n                        1.2,\r\n\r\n                    gravity:\r\n                        0.58,\r\n\r\n                    numIter:\r\n                        1400,\r\n\r\n                    initialTemp:\r\n                        180,\r\n\r\n                    coolingFactor:\r\n                        0.95,\r\n\r\n                    minTemp:\r\n                        1\r\n                };\r\n\r\n\r\n                cy = cytoscape({\r\n\r\n                    container:\r\n                        container,\r\n\r\n                    elements:\r\n                        elements,\r\n\r\n                    style:\r\n                        graphStyles(\r\n                            true\r\n                        ),\r\n\r\n                    layout:\r\n                        layoutOptions,\r\n\r\n                    minZoom:\r\n                        0.15,\r\n\r\n                    maxZoom:\r\n                        2.5,\r\n\r\n                    wheelSensitivity:\r\n                        0.25\r\n                });\r\n\r\n\r\n                bindGraphEvents();\r\n\r\n\r\n                applyRelationFilter();\r\n\r\n\r\n                createCenterLabel();\r\n\r\n\r\n                updateCenterLabel();\r\n\r\n\r\n                requestAnimationFrame(\r\n                    function () {\r\n\r\n                        compactSingleGraphInitialView();\r\n\r\n                        if (currentCenterId) {\r\n                            addOfficialBundle(\r\n                                getOfficialBundleForActor(String(currentCenterId))\r\n                            );\r\n                        }\r\n\r\n                        setTimeout(\r\n                            alignSingleGraphNearTop,\r\n                            120\r\n                        );\r\n                    }\r\n                );\r\n\r\n\r\n                setTimeout(\r\n                    function () {\r\n\r\n                        bringGraphIntoView();\r\n\r\n                    },\r\n                    80\r\n                );\r\n            }\r\n\r\n\r\n\r\n            \/*\r\n             * =====================================================\r\n             * DROPDOWN\r\n             * =====================================================\r\n             *\/\r\n\r\n            const selectableNodes =\r\n                originalData.nodes\r\n                    .filter(\r\n                        function (node) {\r\n\r\n                            return (\r\n                                hasRelations(\r\n                                    node.data.id\r\n                                ) ||\r\n                                hasPersonRelations(\r\n                                    node.data.id\r\n                                )\r\n                            );\r\n                        }\r\n                    )\r\n                    .sort(\r\n                        function (a, b) {\r\n\r\n                            return a.data.label\r\n                                .localeCompare(\r\n                                    b.data.label,\r\n                                    undefined,\r\n                                    {\r\n                                        sensitivity:\r\n                                            'base'\r\n                                    }\r\n                                );\r\n                        }\r\n                    );\r\n\r\n\r\n            const selectablePeople =\r\n                (originalData.people_nodes || [])\r\n                    .filter(\r\n                        function (node) {\r\n                            return getPersonEdgesForPerson(\r\n                                node.data.id\r\n                            ).length > 0;\r\n                        }\r\n                    )\r\n                    .sort(\r\n                        function (a, b) {\r\n                            return a.data.label\r\n                                .localeCompare(\r\n                                    b.data.label,\r\n                                    undefined,\r\n                                    {\r\n                                        sensitivity: 'base'\r\n                                    }\r\n                                );\r\n                        }\r\n                    );\r\n\r\n\r\n            const initiativeGroup =\r\n                document.createElement('optgroup');\r\n\r\n            initiativeGroup.label =\r\n                \"RELATION TYPE\";\r\n\r\n\r\n            selectableNodes.forEach(\r\n                function (node) {\r\n\r\n                    const option =\r\n                        document.createElement('option');\r\n\r\n                    option.value =\r\n                        node.data.id;\r\n\r\n                    option.textContent =\r\n                        String(node.data.label).toUpperCase();\r\n\r\n                    initiativeGroup.appendChild(option);\r\n                }\r\n            );\r\n\r\n\r\n            if (selectableNodes.length) {\r\n                select.appendChild(initiativeGroup);\r\n            }\r\n\r\n\r\n            const peopleGroup =\r\n                document.createElement('optgroup');\r\n\r\n            peopleGroup.label =\r\n                \"PEOPLE\";\r\n\r\n\r\n            selectablePeople.forEach(\r\n                function (node) {\r\n\r\n                    const option =\r\n                        document.createElement('option');\r\n\r\n                    option.value =\r\n                        node.data.id;\r\n\r\n                    option.textContent =\r\n                        String(node.data.label).toUpperCase();\r\n\r\n                    peopleGroup.appendChild(option);\r\n                }\r\n            );\r\n\r\n\r\n            if (selectablePeople.length) {\r\n                select.appendChild(peopleGroup);\r\n            }\r\n\r\n\r\n\r\n            relationFilterButtons.forEach(\r\n                function (button) {\r\n\r\n                    button.addEventListener(\r\n                        'click',\r\n                        function () {\r\n\r\n                            const requestedFilter =\r\n                                this.dataset.relationFilter;\r\n\r\n\r\n                            if (\r\n                                ![\r\n                                    'all',\r\n                                    'membership',\r\n                                    'cooperation',\r\n                                    'association'\r\n                                ].includes(\r\n                                    requestedFilter\r\n                                )\r\n                            ) {\r\n\r\n                                return;\r\n                            }\r\n\r\n\r\n                                                        const alreadyActive =\r\n                                (requestedFilter === 'association' && currentRelationFilter === 'association' && currentPersonFilter === 'person_association') ||\r\n                                (requestedFilter === 'membership' && currentRelationFilter === 'membership') ||\r\n                                (requestedFilter === 'cooperation' && currentRelationFilter === 'cooperation');\r\n\r\n                            if (alreadyActive || requestedFilter === 'all') {\r\n\r\n                                currentRelationFilter = 'all';\r\n                                currentPersonFilter = 'all';\r\n\r\n                            } else if (requestedFilter === 'association') {\r\n\r\n                                currentRelationFilter = 'association';\r\n                                currentPersonFilter = 'person_association';\r\n\r\n                            } else {\r\n\r\n                                currentRelationFilter = requestedFilter;\r\n                                currentPersonFilter = 'none';\r\n                            }\r\n\r\n                            applyRelationFilter();\r\n                        }\r\n                    );\r\n                }\r\n            );\r\n\r\n\r\n\r\n            personFilterButtons.forEach(\r\n                function (button) {\r\n\r\n                    button.addEventListener(\r\n                        'click',\r\n                        function () {\r\n\r\n                            const requestedFilter =\r\n                                this.dataset.personFilter;\r\n\r\n                            if (\r\n                                ![\r\n                                    'all',\r\n                                    'leadership',\r\n                                    'person_membership',\r\n                                    'person_association'\r\n                                ].includes(\r\n                                    requestedFilter\r\n                                )\r\n                            ) {\r\n                                return;\r\n                            }\r\n\r\n                                                        const alreadyActive =\r\n                                (requestedFilter === 'leadership' && currentPersonFilter === 'leadership') ||\r\n                                (requestedFilter === 'person_association' && currentRelationFilter === 'association' && currentPersonFilter === 'person_association');\r\n\r\n                            if (alreadyActive || requestedFilter === 'all') {\r\n\r\n                                currentRelationFilter = 'all';\r\n                                currentPersonFilter = 'all';\r\n\r\n                            } else if (requestedFilter === 'person_association') {\r\n\r\n                                currentRelationFilter = 'association';\r\n                                currentPersonFilter = 'person_association';\r\n\r\n                            } else {\r\n\r\n                                currentRelationFilter = 'none';\r\n                                currentPersonFilter = requestedFilter;\r\n                            }\r\n\r\n                            applyRelationFilter();\r\n                        }\r\n                    );\r\n                }\r\n            );\r\n\r\n\r\n\r\n            toolbar.dataset.pendingActorFilter = 'all';\r\n\r\n            actorFilterButtons.forEach(\r\n                function (button) {\r\n\r\n                    button.addEventListener(\r\n                        'click',\r\n                        function () {\r\n\r\n                            const requestedFilter =\r\n                                this.dataset.actorFilter;\r\n\r\n                            if (\r\n                                !['all', 'initiatives', 'people'].includes(\r\n                                    requestedFilter\r\n                                )\r\n                            ) {\r\n                                return;\r\n                            }\r\n\r\n                            toolbar.dataset.pendingActorFilter = requestedFilter;\r\n\r\n                            actorFilterButtons.forEach(function (candidate) {\r\n                                const isActive = candidate === button;\r\n                                candidate.classList.toggle('is-active', isActive);\r\n                                candidate.setAttribute('aria-pressed', isActive ? 'true' : 'false');\r\n                            });\r\n                        }\r\n                    );\r\n                }\r\n            );\r\n\r\n\r\n            peopleButton.addEventListener(\r\n                'click',\r\n                function () {\r\n\r\n                    if (\r\n                        !singleMode ||\r\n                        currentCenterType !== 'initiative' ||\r\n                        !currentCenterId ||\r\n                        !hasPersonRelations(\r\n                            currentCenterId\r\n                        )\r\n                    ) {\r\n                        return;\r\n                    }\r\n\r\n                    peopleVisible =\r\n                        !peopleVisible;\r\n\r\n                    if (peopleVisible) {\r\n                        currentPersonFilter =\r\n                            'all';\r\n                    }\r\n\r\n                    showSingle(\r\n                        currentCenterId,\r\n                        true\r\n                    );\r\n                }\r\n            );\r\n\r\n\r\n\r\n            \/* =====================================================\r\n             * SEARCHABLE HORN\u00cd FILTRY \u2013 stejn\u00fd vizu\u00e1ln\u00ed jazyk jako Akt\u00e9\u0159i\r\n             * ===================================================== *\/\r\n            const searchPlaceholder = \"Start typing\\u2026\";\r\n\r\n            const searchEmptyText = \"No matches\";\r\n\r\n            const searchFilterBindings = [];\r\n\r\n            function createSearchFilter(nativeSelect) {\r\n\r\n                const wrapper = document.createElement('div');\r\n                wrapper.className = 'osm-vazby-search-filter';\r\n\r\n                const label = document.createElement('label');\r\n                label.className = 'osm-vazby-search-label';\r\n                label.textContent = nativeSelect.options.length\r\n                    ? nativeSelect.options[0].textContent.trim()\r\n                    : '';\r\n\r\n                const input = document.createElement('input');\r\n                input.type = 'search';\r\n                input.className = 'osm-vazby-search-input';\r\n                input.placeholder = searchPlaceholder;\r\n                input.autocomplete = 'off';\r\n                input.setAttribute('aria-label', label.textContent);\r\n\r\n                const chevron = document.createElement('span');\r\n                chevron.className = 'osm-vazby-search-chevron';\r\n                chevron.setAttribute('aria-hidden', 'true');\r\n\r\n                const menu = document.createElement('div');\r\n                menu.className = 'osm-vazby-search-menu';\r\n\r\n                wrapper.appendChild(label);\r\n                wrapper.appendChild(input);\r\n                wrapper.appendChild(chevron);\r\n                wrapper.appendChild(menu);\r\n\r\n                nativeSelect.parentNode.insertBefore(wrapper, nativeSelect);\r\n                nativeSelect.classList.add('osm-vazby-native-select-hidden');\r\n\r\n                function getOptions() {\r\n                    return Array.from(nativeSelect.querySelectorAll('option'))\r\n                        .filter(function (option) {\r\n                            return String(option.value || '') !== '';\r\n                        });\r\n                }\r\n\r\n                function choose(value) {\r\n                    nativeSelect.value = String(value);\r\n                    nativeSelect.dispatchEvent(\r\n                        new Event('change', { bubbles: true })\r\n                    );\r\n                    wrapper.classList.remove('is-open');\r\n                    setTimeout(syncAllSearchFilters, 0);\r\n                }\r\n\r\n                function renderMenu() {\r\n                    const query = input.value.trim().toLocaleLowerCase();\r\n                    const options = getOptions().filter(function (option) {\r\n                        return !query || option.textContent\r\n                            .trim()\r\n                            .toLocaleLowerCase()\r\n                            .includes(query);\r\n                    });\r\n\r\n                    menu.innerHTML = '';\r\n\r\n                    if (!options.length) {\r\n                        const empty = document.createElement('div');\r\n                        empty.className = 'osm-vazby-search-empty';\r\n                        empty.textContent = searchEmptyText;\r\n                        menu.appendChild(empty);\r\n                        return;\r\n                    }\r\n\r\n                    options.forEach(function (option) {\r\n                        const button = document.createElement('button');\r\n                        button.type = 'button';\r\n                        button.className = 'osm-vazby-search-option';\r\n                        button.textContent = option.textContent.trim();\r\n                        button.dataset.value = option.value;\r\n                        button.addEventListener('click', function () {\r\n                            choose(this.dataset.value);\r\n                        });\r\n                        menu.appendChild(button);\r\n                    });\r\n                }\r\n\r\n                input.addEventListener('mousedown', function (event) {\r\n                    if (document.activeElement === input && wrapper.classList.contains('is-open')) {\r\n                        event.preventDefault();\r\n                        wrapper.classList.remove('is-open');\r\n                        return;\r\n                    }\r\n\r\n                    if (document.activeElement === input && !wrapper.classList.contains('is-open')) {\r\n                        wrapper.classList.add('is-open');\r\n                        renderMenu();\r\n                    }\r\n                });\r\n\r\n                input.addEventListener('focus', function () {\r\n                    if (!wrapper.classList.contains('is-open')) {\r\n                        wrapper.classList.add('is-open');\r\n                        renderMenu();\r\n                    }\r\n                });\r\n\r\n                input.addEventListener('input', function () {\r\n                    wrapper.classList.add('is-open');\r\n                    renderMenu();\r\n                });\r\n\r\n                input.addEventListener('keydown', function (event) {\r\n                    if (event.key === 'Escape') {\r\n                        wrapper.classList.remove('is-open');\r\n                        return;\r\n                    }\r\n\r\n                    if (event.key === 'Enter') {\r\n                        const first = menu.querySelector('.osm-vazby-search-option');\r\n                        if (first) {\r\n                            event.preventDefault();\r\n                            choose(first.dataset.value);\r\n                        }\r\n                    }\r\n                });\r\n\r\n                searchFilterBindings.push({\r\n                    nativeSelect: nativeSelect,\r\n                    input: input,\r\n                    wrapper: wrapper\r\n                });\r\n            }\r\n\r\n            function createDropdownFilter(nativeSelect) {\r\n\r\n                const wrapper = document.createElement('div');\r\n                wrapper.className = 'osm-vazby-search-filter osm-vazby-dropdown-filter';\r\n\r\n                const label = document.createElement('label');\r\n                label.className = 'osm-vazby-search-label';\r\n                label.textContent = nativeSelect.dataset.filterLabel ||\r\n                    (nativeSelect.options.length\r\n                        ? nativeSelect.options[0].textContent.trim()\r\n                        : '');\r\n\r\n                const chevron = document.createElement('span');\r\n                chevron.className = 'osm-vazby-search-chevron';\r\n                chevron.setAttribute('aria-hidden', 'true');\r\n\r\n                nativeSelect.parentNode.insertBefore(wrapper, nativeSelect);\r\n                wrapper.appendChild(label);\r\n                wrapper.appendChild(nativeSelect);\r\n                wrapper.appendChild(chevron);\r\n\r\n                nativeSelect.classList.add('osm-vazby-dropdown-select');\r\n                nativeSelect.setAttribute('aria-label', label.textContent);\r\n\r\n            }\r\n\r\n            function syncAllSearchFilters() {\r\n                searchFilterBindings.forEach(function (binding) {\r\n                    const value = String(binding.nativeSelect.value || '');\r\n                    const option = value\r\n                        ? binding.nativeSelect.querySelector(\r\n                            'option[value=\"' + CSS.escape(value) + '\"]'\r\n                        )\r\n                        : null;\r\n                    binding.input.value = option\r\n                        ? option.textContent.trim()\r\n                        : '';\r\n                });\r\n            }\r\n\r\n            createSearchFilter(select);\r\n            categorySelect.style.display = 'none';\r\n            createDropdownFilter(eventSelect);\r\n            syncAllSearchFilters();\r\n\r\n            let allowTopFilterApply = false;\r\n\r\n            [select, categorySelect, eventSelect].forEach(function (nativeSelect) {\r\n                nativeSelect.addEventListener('change', function (event) {\r\n                    if (allowTopFilterApply) {\r\n                        return;\r\n                    }\r\n\r\n                    event.stopImmediatePropagation();\r\n\r\n                    if (String(this.value || '') !== '') {\r\n                        if (this === select) {\r\n                            categorySelect.value = '';\r\n                            eventSelect.value = '';\r\n                        } else if (this === categorySelect) {\r\n                            select.value = '';\r\n                            eventSelect.value = '';\r\n                        } else if (this === eventSelect) {\r\n                            select.value = '';\r\n                            categorySelect.value = '';\r\n                        }\r\n                    }\r\n\r\n                    syncAllSearchFilters();\r\n                }, true);\r\n            });\r\n\r\n            applyButton.addEventListener('click', function () {\r\n                const actorValue = String(select.value || '');\r\n                const categoryValue = String(categorySelect.value || '');\r\n                const eventValue = String(eventSelect.value || '');\r\n\r\n                allowTopFilterApply = true;\r\n\r\n                if (actorValue) {\r\n                    select.dispatchEvent(new Event('change', { bubbles: true }));\r\n                } else if (categoryValue) {\r\n                    categorySelect.dispatchEvent(new Event('change', { bubbles: true }));\r\n                } else if (eventValue) {\r\n                    eventSelect.dispatchEvent(new Event('change', { bubbles: true }));\r\n                } else {\r\n                    showAllRelations();\r\n                }\r\n\r\n                allowTopFilterApply = false;\r\n\r\n                currentActorFilter = toolbar.dataset.pendingActorFilter || 'all';\r\n                updateActorFilterUi();\r\n                applyRelationFilter();\r\n            });\r\n\r\n            document.addEventListener('click', function (event) {\r\n                searchFilterBindings.forEach(function (binding) {\r\n                    if (!binding.wrapper.contains(event.target)) {\r\n                        binding.wrapper.classList.remove('is-open');\r\n                    }\r\n                });\r\n            });\r\n\r\n\r\n            select.addEventListener(\r\n                'change',\r\n                function () {\r\n\r\n                                        const id =\r\n                        this.value;\r\n\r\n                    categorySelect.value = '';\r\n                    eventSelect.value = '';\r\n\r\n\r\n                    if (!id) {\r\n\r\n                        showAllRelations();\r\n\r\n                        return;\r\n                    }\r\n\r\n\r\n                    if (\r\n                        String(id).indexOf('person-') === 0\r\n                    ) {\r\n                        showPersonSingle(id);\r\n                        return;\r\n                    }\r\n\r\n\r\n                    showSingle(\r\n                        id\r\n                    );\r\n                }\r\n            );\r\n\r\n\r\n\r\n                        categorySelect.addEventListener(\r\n                'change',\r\n                function () {\r\n\r\n                    const categoryId = String(this.value || '');\r\n\r\n                    eventSelect.value = '';\r\n                    select.value = '';\r\n\r\n                    if (!categoryId) {\r\n                        showAllRelations();\r\n                        return;\r\n                    }\r\n\r\n                    const categoryFilter =\r\n                        (originalData.category_filters || []).find(\r\n                            function (item) {\r\n                                return String(item.id) === categoryId;\r\n                            }\r\n                        );\r\n\r\n                    if (!categoryFilter) {\r\n                        return;\r\n                    }\r\n\r\n                    showFilteredActors(\r\n                        categoryFilter.node_ids || []\r\n                    );\r\n\r\n                    categorySelect.value = categoryId;\r\n                }\r\n            );\r\n\r\n\r\n            eventSelect.addEventListener(\r\n                'change',\r\n                function () {\r\n\r\n                    const eventId = String(this.value || '');\r\n\r\n                    categorySelect.value = '';\r\n                    select.value = '';\r\n\r\n                    if (!eventId) {\r\n                        showAllRelations();\r\n                        return;\r\n                    }\r\n\r\n                    const eventFilter =\r\n                        (originalData.event_filters || []).find(\r\n                            function (item) {\r\n                                return String(item.id) === eventId;\r\n                            }\r\n                        );\r\n\r\n                    if (!eventFilter) {\r\n                        return;\r\n                    }\r\n\r\n                    showFilteredActors(\r\n                        eventFilter.node_ids || [],\r\n                        eventId\r\n                    );\r\n\r\n                    showEventContext(eventFilter);\r\n                    eventSelect.value = eventId;\r\n                }\r\n            );\r\n\r\n\r\n            allButton.addEventListener(\r\n                'click',\r\n                function () {\r\n\r\n                    toolbar.dataset.pendingActorFilter = 'all';\r\n                    showAllRelations();\r\n                }\r\n            );\r\n\r\n\r\n\r\n            \/*\r\n             * START\r\n             *\/\r\n            syncToolbarStickyTop();\r\n\r\n\r\n            \/*\r\n             * P\u0158\u00cdM\u00dd ODKAZ Z PROFILU\r\n             *\r\n             * Nov\u00fd spole\u010dn\u00fd standard:\r\n             * ?profil=MASTER_ID\r\n             *\r\n             * Zp\u011btn\u011b podporujeme tak\u00e9:\r\n             * ?person=MASTER_ID\r\n             * ?initiative=MASTER_ID\r\n             *\r\n             * WordPress ID jsou glob\u00e1ln\u011b jedine\u010dn\u00e1, tak\u017ee m\u016f\u017eeme\r\n             * bezpe\u010dn\u011b zjistit, zda jde o osobnost nebo iniciativu,\r\n             * a otev\u0159\u00edt existuj\u00edc\u00ed person-centric \/ initiative-centric\r\n             * detail bez zm\u011bny samotn\u00e9 vizualizace.\r\n             *\/\r\n            const directParams =\r\n                new URLSearchParams(\r\n                    window.location.search\r\n                );\r\n\r\n\r\n            const requestedProfileId =\r\n                directParams.get(\r\n                    'profil'\r\n                );\r\n\r\n\r\n            const requestedLegacyPersonId =\r\n                directParams.get(\r\n                    'person'\r\n                );\r\n\r\n\r\n            const requestedLegacyInitiativeId =\r\n                directParams.get(\r\n                    'initiative'\r\n                );\r\n\r\n\r\n            const requestedEventId =\r\n                directParams.get(\r\n                    'udalost'\r\n                );\r\n\r\n            const requestedDirectId =\r\n                requestedProfileId ||\r\n                requestedLegacyPersonId ||\r\n                requestedLegacyInitiativeId;\r\n\r\n\r\n            let directOpened =\r\n                false;\r\n\r\n            if (requestedEventId) {\r\n                const requestedEventFilter =\r\n                    (originalData.event_filters || []).find(\r\n                        (item) => String(item.id) === String(requestedEventId)\r\n                    ) || null;\r\n\r\n                if (requestedEventFilter) {\r\n                    toolbar.dataset.pendingActorFilter = 'all';\r\n                    showFilteredActors(\r\n                        requestedEventFilter.node_ids || [],\r\n                        String(requestedEventId)\r\n                    );\r\n                    showEventContext(requestedEventFilter);\r\n                    eventSelect.value = String(requestedEventId);\r\n                    directOpened = true;\r\n                }\r\n            }\r\n\r\n\r\n            if (requestedDirectId) {\r\n\r\n                \/*\r\n                 * 1) OSOBNOST\r\n                 *\/\r\n                const requestedPersonNodeId =\r\n                    'person-' +\r\n                    String(\r\n                        requestedDirectId\r\n                    );\r\n\r\n\r\n                const requestedPersonNode =\r\n                    getPersonNodeById(\r\n                        requestedPersonNodeId\r\n                    );\r\n\r\n\r\n                if (\r\n                    requestedPersonNode &&\r\n                    getPersonEdgesForPerson(\r\n                        requestedPersonNodeId\r\n                    ).length\r\n                ) {\r\n\r\n                    showPersonSingle(\r\n                        requestedPersonNodeId\r\n                    );\r\n\r\n\r\n                    directOpened =\r\n                        true;\r\n                }\r\n\r\n\r\n                \/*\r\n                 * 2) INICIATIVA\r\n                 *\r\n                 * Kdy\u017e ID nen\u00ed osobnost, zkus\u00edme b\u011b\u017en\u00fd initiative node.\r\n                 *\/\r\n                if (!directOpened) {\r\n\r\n                    const requestedInitiativeNode =\r\n                        getNodeById(\r\n                            String(\r\n                                requestedDirectId\r\n                            )\r\n                        );\r\n\r\n\r\n                    if (requestedInitiativeNode) {\r\n\r\n                        const requestedInitiativeNeighbours =\r\n                            getNeighbourIds(\r\n                                String(\r\n                                    requestedDirectId\r\n                                )\r\n                            );\r\n\r\n\r\n                        const requestedInitiativePersonEdges =\r\n                            getPersonEdgesForInitiative(\r\n                                String(\r\n                                    requestedDirectId\r\n                                )\r\n                            );\r\n\r\n\r\n                        if (\r\n                            requestedInitiativeNeighbours.length ||\r\n                            requestedInitiativePersonEdges.length\r\n                        ) {\r\n\r\n                            showSingle(\r\n                                String(\r\n                                    requestedDirectId\r\n                                )\r\n                            );\r\n\r\n\r\n                            directOpened =\r\n                                true;\r\n                        }\r\n                    }\r\n                }\r\n            }\r\n\r\n\r\n            if (!directOpened) {\r\n\r\n                showAllRelations();\r\n            }\r\n\r\n        }\r\n\r\n\r\n\r\n        if (\r\n            document.readyState ===\r\n            'loading'\r\n        ) {\r\n\r\n            document.addEventListener(\r\n                'DOMContentLoaded',\r\n                osmVazbyStart\r\n            );\r\n\r\n        } else {\r\n\r\n            osmVazbyStart();\r\n        }\r\n\r\n    })();\r\n\r\n    <\/script>\r\n\r\n    \t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div data-ka-cursor-size=\"1\" class=\"elementor-element elementor-element-500d96ba e-flex e-con-boxed e-con e-parent\" data-id=\"500d96ba\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;kng_cursor_interaction&quot;:&quot;default&quot;,&quot;kng_cursor_magnetic&quot;:&quot;none&quot;,&quot;kng_cursor_size_multiplier&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:1,&quot;sizes&quot;:[]}}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div data-ka-cursor-size=\"1\" class=\"elementor-element elementor-element-56b5a9b6 elementor-widget elementor-widget-spacer\" data-id=\"56b5a9b6\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;kng_cursor_interaction&quot;:&quot;default&quot;,&quot;kng_cursor_magnetic&quot;:&quot;none&quot;,&quot;kng_cursor_size_multiplier&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:1,&quot;sizes&quot;:[]}}\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div data-ka-cursor-size=\"1\" class=\"elementor-element elementor-element-4eba20d6 elementor-widget elementor-widget-text-editor\" data-id=\"4eba20d6\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;kng_cursor_interaction&quot;:&quot;default&quot;,&quot;kng_cursor_magnetic&quot;:&quot;none&quot;,&quot;kng_cursor_size_multiplier&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:1,&quot;sizes&quot;:[]}}\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><strong><span>\u00a9 <\/span><\/strong><strong>MAGNIFICENT EIGHT <\/strong>2022 &#8211; 2026<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u00a9 MAGNIFICENT EIGHT 2022 &#8211; 2026<\/p>\n","protected":false},"author":1,"featured_media":36477,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"ocean_front_end_style_editor":"no","ocean_post_layout":"","ocean_both_sidebars_style":"","ocean_both_sidebars_content_width":0,"ocean_both_sidebars_sidebars_width":0,"ocean_sidebar":"","ocean_second_sidebar":"","ocean_disable_margins":"enable","ocean_add_body_class":"","ocean_shortcode_before_top_bar":"","ocean_shortcode_after_top_bar":"","ocean_shortcode_before_header":"","ocean_shortcode_after_header":"","ocean_has_shortcode":"","ocean_shortcode_after_title":"","ocean_shortcode_before_footer_widgets":"","ocean_shortcode_after_footer_widgets":"","ocean_shortcode_before_footer_bottom":"","ocean_shortcode_after_footer_bottom":"","ocean_display_top_bar":"default","ocean_display_header":"default","ocean_header_style":"","ocean_center_header_left_menu":"","ocean_custom_header_template":"","ocean_custom_logo":0,"ocean_custom_retina_logo":0,"ocean_custom_logo_max_width":0,"ocean_custom_logo_tablet_max_width":0,"ocean_custom_logo_mobile_max_width":0,"ocean_custom_logo_max_height":0,"ocean_custom_logo_tablet_max_height":0,"ocean_custom_logo_mobile_max_height":0,"ocean_header_custom_menu":"","ocean_menu_typo_font_family":"","ocean_menu_typo_font_subset":"","ocean_menu_typo_font_size":0,"ocean_menu_typo_font_size_tablet":0,"ocean_menu_typo_font_size_mobile":0,"ocean_menu_typo_font_size_unit":"px","ocean_menu_typo_font_weight":"","ocean_menu_typo_font_weight_tablet":"","ocean_menu_typo_font_weight_mobile":"","ocean_menu_typo_transform":"","ocean_menu_typo_transform_tablet":"","ocean_menu_typo_transform_mobile":"","ocean_menu_typo_line_height":0,"ocean_menu_typo_line_height_tablet":0,"ocean_menu_typo_line_height_mobile":0,"ocean_menu_typo_line_height_unit":"","ocean_menu_typo_spacing":0,"ocean_menu_typo_spacing_tablet":0,"ocean_menu_typo_spacing_mobile":0,"ocean_menu_typo_spacing_unit":"","ocean_menu_link_color":"","ocean_menu_link_color_hover":"","ocean_menu_link_color_active":"","ocean_menu_link_background":"","ocean_menu_link_hover_background":"","ocean_menu_link_active_background":"","ocean_menu_social_links_bg":"","ocean_menu_social_hover_links_bg":"","ocean_menu_social_links_color":"","ocean_menu_social_hover_links_color":"","ocean_disable_title":"default","ocean_disable_heading":"default","ocean_post_title":"","ocean_post_subheading":"","ocean_post_title_style":"","ocean_post_title_background_color":"","ocean_post_title_background":0,"ocean_post_title_bg_image_position":"","ocean_post_title_bg_image_attachment":"","ocean_post_title_bg_image_repeat":"","ocean_post_title_bg_image_size":"","ocean_post_title_height":0,"ocean_post_title_bg_overlay":0.5,"ocean_post_title_bg_overlay_color":"","ocean_disable_breadcrumbs":"default","ocean_breadcrumbs_color":"","ocean_breadcrumbs_separator_color":"","ocean_breadcrumbs_links_color":"","ocean_breadcrumbs_links_hover_color":"","ocean_display_footer_widgets":"default","ocean_display_footer_bottom":"default","ocean_custom_footer_template":"","omw_enable_modal_window":"enable","footnotes":""},"class_list":["post-35574","page","type-page","status-publish","has-post-thumbnail","hentry","entry","has-media"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>RELATIONS - OSM STATE\u010cN\u00ddCH<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/osmstatecnych.cz\/en\/relations\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"RELATIONS - OSM STATE\u010cN\u00ddCH\" \/>\n<meta property=\"og:description\" content=\"\u00a9 MAGNIFICENT EIGHT 2022 &#8211; 2026\" \/>\n<meta property=\"og:url\" content=\"https:\/\/osmstatecnych.cz\/en\/relations\/\" \/>\n<meta property=\"og:site_name\" content=\"OSM STATE\u010cN\u00ddCH\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-17T07:36:57+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/VAZBY-NAHLED.png?fit=1448%2C1086&quality=80&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"1448\" \/>\n\t<meta property=\"og:image:height\" content=\"1086\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/relations\\\/\",\"url\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/relations\\\/\",\"name\":\"RELATIONS - OSM STATE\u010cN\u00ddCH\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/relations\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/relations\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/osmstatecnych.cz\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/VAZBY-NAHLED.png?fit=1448%2C1086&quality=80&ssl=1\",\"datePublished\":\"2026-08-16T17:53:28+00:00\",\"dateModified\":\"2026-09-17T07:36:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/relations\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/relations\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/relations\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/osmstatecnych.cz\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/VAZBY-NAHLED.png?fit=1448%2C1086&quality=80&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/osmstatecnych.cz\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/VAZBY-NAHLED.png?fit=1448%2C1086&quality=80&ssl=1\",\"width\":1448,\"height\":1086},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/relations\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Dom\u016f\",\"item\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"RELATIONS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/\",\"name\":\"OSM \u221e STATE\u010cN\u00ddCH\",\"description\":\"monitoring hnut\u00ed odporu proti rusk\u00e9mu re\u017eimu\",\"publisher\":{\"@id\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/#\\\/schema\\\/person\\\/22b295a49f97c1c5adc48db20fb99403\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/osmstatecnych.cz\\\/en\\\/#\\\/schema\\\/person\\\/22b295a49f97c1c5adc48db20fb99403\",\"name\":\"Anna Valentov\u00e1\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/osmstatecnych.cz\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/osm_hlavove_logo_header_128.png?fit=128%2C128&quality=80&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/osmstatecnych.cz\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/osm_hlavove_logo_header_128.png?fit=128%2C128&quality=80&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/osmstatecnych.cz\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/osm_hlavove_logo_header_128.png?fit=128%2C128&quality=80&ssl=1\",\"width\":128,\"height\":128,\"caption\":\"Anna Valentov\u00e1\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/osmstatecnych.cz\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/osm_hlavove_logo_header_128.png?fit=128%2C128&quality=80&ssl=1\"},\"description\":\"Narozena 1968. Pra\u017e\u00e1k v jizerskohorsk\u00e9m exilu. Vlastn\u011b po\u0159\u00e1d p\u0159ekl\u00e1d\u00e1m. Jako tlumo\u010dn\u00edk mezi z\u00fa\u010dastn\u011bn\u00fdmi stranami a rozpl\u00e9ta\u010d zapleten\u00e9ho kdysi v terapii... Taky kdy\u017e se d\u00e1 p\u0159elo\u017eit n\u011bco kr\u00e1sn\u00e9ho nebo d\u016fle\u017eit\u00e9ho - aby o tom v\u011bd\u011blo v\u00edc lid\u00ed. No - a te\u010f je v\u00e1lka. A najednou je to v\u0161echno t\u0159eba. Snad to aspo\u0148 kouskem p\u0159isp\u011bje...\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"RELATIONS - OSM STATE\u010cN\u00ddCH","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/osmstatecnych.cz\/en\/relations\/","og_locale":"en_US","og_type":"article","og_title":"RELATIONS - OSM STATE\u010cN\u00ddCH","og_description":"\u00a9 MAGNIFICENT EIGHT 2022 &#8211; 2026","og_url":"https:\/\/osmstatecnych.cz\/en\/relations\/","og_site_name":"OSM STATE\u010cN\u00ddCH","article_modified_time":"2026-09-17T07:36:57+00:00","og_image":[{"width":1448,"height":1086,"url":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/VAZBY-NAHLED.png?fit=1448%2C1086&quality=80&ssl=1","type":"image\/png"}],"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/osmstatecnych.cz\/en\/relations\/","url":"https:\/\/osmstatecnych.cz\/en\/relations\/","name":"RELATIONS - OSM STATE\u010cN\u00ddCH","isPartOf":{"@id":"https:\/\/osmstatecnych.cz\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/osmstatecnych.cz\/en\/relations\/#primaryimage"},"image":{"@id":"https:\/\/osmstatecnych.cz\/en\/relations\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/VAZBY-NAHLED.png?fit=1448%2C1086&quality=80&ssl=1","datePublished":"2026-08-16T17:53:28+00:00","dateModified":"2026-09-17T07:36:57+00:00","breadcrumb":{"@id":"https:\/\/osmstatecnych.cz\/en\/relations\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/osmstatecnych.cz\/en\/relations\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/osmstatecnych.cz\/en\/relations\/#primaryimage","url":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/VAZBY-NAHLED.png?fit=1448%2C1086&quality=80&ssl=1","contentUrl":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/VAZBY-NAHLED.png?fit=1448%2C1086&quality=80&ssl=1","width":1448,"height":1086},{"@type":"BreadcrumbList","@id":"https:\/\/osmstatecnych.cz\/en\/relations\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Dom\u016f","item":"https:\/\/osmstatecnych.cz\/en\/"},{"@type":"ListItem","position":2,"name":"RELATIONS"}]},{"@type":"WebSite","@id":"https:\/\/osmstatecnych.cz\/en\/#website","url":"https:\/\/osmstatecnych.cz\/en\/","name":"OSM \u221e STATE\u010cN\u00ddCH","description":"monitoring hnut\u00ed odporu proti rusk\u00e9mu re\u017eimu","publisher":{"@id":"https:\/\/osmstatecnych.cz\/en\/#\/schema\/person\/22b295a49f97c1c5adc48db20fb99403"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/osmstatecnych.cz\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/osmstatecnych.cz\/en\/#\/schema\/person\/22b295a49f97c1c5adc48db20fb99403","name":"Anna Valentov\u00e1","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/osm_hlavove_logo_header_128.png?fit=128%2C128&quality=80&ssl=1","url":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/osm_hlavove_logo_header_128.png?fit=128%2C128&quality=80&ssl=1","contentUrl":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/osm_hlavove_logo_header_128.png?fit=128%2C128&quality=80&ssl=1","width":128,"height":128,"caption":"Anna Valentov\u00e1"},"logo":{"@id":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/osm_hlavove_logo_header_128.png?fit=128%2C128&quality=80&ssl=1"},"description":"Narozena 1968. Pra\u017e\u00e1k v jizerskohorsk\u00e9m exilu. Vlastn\u011b po\u0159\u00e1d p\u0159ekl\u00e1d\u00e1m. Jako tlumo\u010dn\u00edk mezi z\u00fa\u010dastn\u011bn\u00fdmi stranami a rozpl\u00e9ta\u010d zapleten\u00e9ho kdysi v terapii... Taky kdy\u017e se d\u00e1 p\u0159elo\u017eit n\u011bco kr\u00e1sn\u00e9ho nebo d\u016fle\u017eit\u00e9ho - aby o tom v\u011bd\u011blo v\u00edc lid\u00ed. No - a te\u010f je v\u00e1lka. A najednou je to v\u0161echno t\u0159eba. Snad to aspo\u0148 kouskem p\u0159isp\u011bje..."}]}},"jetpack-related-posts":[{"id":30154,"url":"https:\/\/osmstatecnych.cz\/en\/whos-who\/","url_meta":{"origin":35574,"position":0},"title":"PEOPLE","author":"Anna Valentov\u00e1","date":"24. 6. 2026","format":false,"excerpt":"PEOPLE \u00a9 MAGNIFICENT EIGHT 2022 - 2026","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/SKREPAC-videa-45.png?fit=1200%2C675&quality=80&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/SKREPAC-videa-45.png?fit=1200%2C675&quality=80&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/SKREPAC-videa-45.png?fit=1200%2C675&quality=80&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/SKREPAC-videa-45.png?fit=1200%2C675&quality=80&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/SKREPAC-videa-45.png?fit=1200%2C675&quality=80&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":22269,"url":"https:\/\/osmstatecnych.cz\/en\/informujte-outfitem\/","url_meta":{"origin":35574,"position":1},"title":"GUERRILLA SUPPLIES","author":"Anna Valentov\u00e1","date":"11. 12. 2024","format":false,"excerpt":"GUERRILLA SUPPLIES Make it clear Let everyone know that you stand with the allied anti-Putin forces. \u00a9 MAGNIFICENT EIGHT 2022 - 2026","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/02\/TITULNI-1920-x-1080-px-40.png?fit=1200%2C675&quality=80&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/02\/TITULNI-1920-x-1080-px-40.png?fit=1200%2C675&quality=80&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/02\/TITULNI-1920-x-1080-px-40.png?fit=1200%2C675&quality=80&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/02\/TITULNI-1920-x-1080-px-40.png?fit=1200%2C675&quality=80&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/02\/TITULNI-1920-x-1080-px-40.png?fit=1200%2C675&quality=80&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":41374,"url":"https:\/\/osmstatecnych.cz\/en\/","url_meta":{"origin":35574,"position":2},"title":"INTRODUCTION &#8211; PORTAL","author":"Anna Valentov\u00e1","date":"29. 9. 2026","format":false,"excerpt":"\u00a9 MAGNIFICENT EIGHT 2022 - 2026","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/SKREPAC-videa-88-scaled.png?fit=1200%2C675&quality=80&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/SKREPAC-videa-88-scaled.png?fit=1200%2C675&quality=80&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/SKREPAC-videa-88-scaled.png?fit=1200%2C675&quality=80&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/SKREPAC-videa-88-scaled.png?fit=1200%2C675&quality=80&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/09\/SKREPAC-videa-88-scaled.png?fit=1200%2C675&quality=80&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":29406,"url":"https:\/\/osmstatecnych.cz\/en\/the-eight-brave-ones\/","url_meta":{"origin":35574,"position":3},"title":"MAGNIFICENT EIGHT","author":"Anna Valentov\u00e1","date":"3. 7. 2026","format":false,"excerpt":"","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/SKREPAC-videa-46-scaled.png?fit=1200%2C675&quality=80&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/SKREPAC-videa-46-scaled.png?fit=1200%2C675&quality=80&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/SKREPAC-videa-46-scaled.png?fit=1200%2C675&quality=80&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/SKREPAC-videa-46-scaled.png?fit=1200%2C675&quality=80&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/07\/SKREPAC-videa-46-scaled.png?fit=1200%2C675&quality=80&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":35539,"url":"https:\/\/osmstatecnych.cz\/vazby\/","url_meta":{"origin":35574,"position":4},"title":"VAZBY","author":"Anna Valentov\u00e1","date":"16. 8. 2026","format":false,"excerpt":"\u00a9 OSM STATE\u010cN\u00ddCH 2022 - 2026","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/VAZBY-NAHLED.png?fit=1200%2C900&quality=80&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/VAZBY-NAHLED.png?fit=1200%2C900&quality=80&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/VAZBY-NAHLED.png?fit=1200%2C900&quality=80&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/VAZBY-NAHLED.png?fit=1200%2C900&quality=80&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/osmstatecnych.cz\/wp-content\/uploads\/2026\/08\/VAZBY-NAHLED.png?fit=1200%2C900&quality=80&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":22291,"url":"https:\/\/osmstatecnych.cz\/en\/monitoring-of-the-russian-resistance\/","url_meta":{"origin":35574,"position":5},"title":"PROJECT","author":"Anna Valentov\u00e1","date":"26. 11. 2024","format":false,"excerpt":"MAGNIFICENT EIGHT monitoring the resistance movement against the Russian regime The Magnificent Eight website has been monitoring the resistance against the Russian regime since the spring of 2022. Behind every logo or chevron are real people. We do not judge them. We do not judge their motivations or methods. We\u2026","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"jetpack_likes_enabled":false,"_links":{"self":[{"href":"https:\/\/osmstatecnych.cz\/en\/wp-json\/wp\/v2\/pages\/35574","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/osmstatecnych.cz\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/osmstatecnych.cz\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/osmstatecnych.cz\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/osmstatecnych.cz\/en\/wp-json\/wp\/v2\/comments?post=35574"}],"version-history":[{"count":14,"href":"https:\/\/osmstatecnych.cz\/en\/wp-json\/wp\/v2\/pages\/35574\/revisions"}],"predecessor-version":[{"id":39801,"href":"https:\/\/osmstatecnych.cz\/en\/wp-json\/wp\/v2\/pages\/35574\/revisions\/39801"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/osmstatecnych.cz\/en\/wp-json\/wp\/v2\/media\/36477"}],"wp:attachment":[{"href":"https:\/\/osmstatecnych.cz\/en\/wp-json\/wp\/v2\/media?parent=35574"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}