{"id":104441,"date":"2022-06-18T03:36:45","date_gmt":"2022-06-18T01:36:45","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-sistemy-upravleniya-kontejnerami-lxc-5-0"},"modified":"2022-06-18T03:36:45","modified_gmt":"2022-06-18T01:36:45","slug":"vypusk-sistemy-upravleniya-kontejnerami-lxc-5-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/news\/vypusk-sistemy-upravleniya-kontejnerami-lxc-5-0","title":{"rendered":"Vyd\u00e1n\u00ed syst\u00e9mu pro spr\u00e1vu kontejner\u016f LXC 5.0","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Spole\u010dnost Canonical vydala n\u00e1stroj pro spr\u00e1vu izolovan\u00fdch kontejner\u016f LXC 5.0, kter\u00fd poskytuje runtime vhodn\u00fd jak pro spou\u0161t\u011bn\u00ed kontejner\u016f s pln\u00fdm syst\u00e9mov\u00fdm prost\u0159ed\u00edm, podobn\u00fdm virtu\u00e1ln\u00edm stroj\u016fm, tak pro prov\u00e1d\u011bn\u00ed nep\u0159 privilegovan\u00fdch kontejner\u016f jednotliv\u00fdch aplikac\u00ed (OCI). LXC se t\u00fdk\u00e1 n\u00edzko\u00farov\u0148ov\u00fdch n\u00e1stroj\u016f, kter\u00e9 pracuj\u00ed na \u00farovni jednotliv\u00fdch kontejner\u016f. Pro centralizovanou spr\u00e1vu kontejner\u016f nasazen\u00fdch v clusteru v\u00edcero server\u016f se na z\u00e1klad\u011b LXC vyv\u00edj\u00ed syst\u00e9m LXD. V\u011btev LXC 5.0 je za\u0159azena mezi vyd\u00e1n\u00ed s dlouhodobou podporou, aktualizace pro n\u011b se vytv\u00e1\u0159ej\u00ed po dobu 5 let. K\u00f3d LXC je naps\u00e1n v jazyce C a je \u0161\u00ed\u0159en pod licenc\u00ed GPLv2.    <\/p>\n<p>LXC zahrnuje knihovnu liblxc, sadu utilit (lxc-create, lxc-start, lxc-stop, lxc-ls atd.), \u0161ablony pro vytv\u00e1\u0159en\u00ed kontejner\u016f a sadu binding\u016f pro r\u016fzn\u00e9 programovac\u00ed jazyky. Izolace je prov\u00e1d\u011bna pomoc\u00ed standardn\u00edch mechanism\u016f j\u00e1dra Linux. Pro izolaci proces\u016f, s\u00ed\u0165ov\u00e9ho stacku ipc, uts, identifik\u00e1tor\u016f u\u017eivatel\u016f a montovac\u00edch bod\u016f se pou\u017e\u00edv\u00e1 mechanismus jmenn\u00fdch prostor\u016f (namespaces). Pro omezen\u00ed zdroj\u016f se pou\u017e\u00edvaj\u00ed cgroups. Pro sn\u00ed\u017een\u00ed privilegi\u00ed a omezen\u00ed p\u0159\u00edstupu byly vyu\u017eity mo\u017enosti j\u00e1dra, jako jsou profily Apparmor a SELinux, politiky Seccomp, Chroots (pivot_root) a capabilities.       <\/p>\n<p>Hlavn\u00ed zm\u011bny:  <\/p>\n<ul>\n<li class=\"l\"> Byl proveden p\u0159echod z autotools na syst\u00e9m sestavov\u00e1n\u00ed Meson, kter\u00fd se tak\u00e9 pou\u017e\u00edv\u00e1 pro sestavov\u00e1n\u00ed projekt\u016f jako je X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME a GTK.\n<li class=\"l\"> Byly p\u0159id\u00e1ny nov\u00e9 mo\u017enosti pro konfiguraci cgroup \u2014 lxc.cgroup.dir.container, lxc.cgroup.dir.monitor, lxc.cgroup.dir.monitor.pivot a lxc.cgroup.dir.container.inner, kter\u00e9 umo\u017e\u0148uj\u00ed v\u00fdslovn\u011b ur\u010dit cesty cgroup pro kontejner, monitorovac\u00ed proces a vno\u0159en\u00e9 hierarchie cgroup.\n<li class=\"l\"> Byla p\u0159id\u00e1na podpora \u010dasov\u00fdch jmen (time namespaces) pro spojen\u00ed se stavem syst\u00e9mov\u00fdch hodin v kontejneru, co\u017e umo\u017e\u0148uje pou\u017e\u00edt v kontejneru sv\u016fj vlastn\u00ed \u010das, odli\u0161n\u00fd od syst\u00e9mov\u00e9ho. Pro nastaven\u00ed jsou navr\u017eeny mo\u017enosti lxc.time.offset.boot a lxc.time.offset.monotonic, kter\u00e9 umo\u017e\u0148uj\u00ed ur\u010dit pro kontejner posun v\u016f\u010di hlavn\u00edm syst\u00e9mov\u00fdm hodin\u00e1m.\n<li class=\"l\"> Pro virtu\u00e1ln\u00ed ethernetov\u00e9 adapt\u00e9ry (Veth) byla implementov\u00e1na podpora VLAN. Pro spr\u00e1vu VLAN byly navr\u017eeny mo\u017enosti: veth.vlan.id pro nastaven\u00ed prim\u00e1rn\u00ed VLAN a veth.vlan.tagged.id pro p\u0159i\u0159azen\u00ed dal\u0161\u00edch zna\u010dkovan\u00fdch VLAN.\n<li class=\"l\"> Pro virtu\u00e1ln\u00ed ethernetov\u00e9 adapt\u00e9ry byla p\u0159id\u00e1na mo\u017enost nastaven\u00ed velikosti front p\u0159\u00edjmu a vys\u00edl\u00e1n\u00ed pomoc\u00ed nov\u00fdch mo\u017enost\u00ed veth.n_rxqueues a veth.n_txqueues.      <\/ul>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=57371\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Canonical \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0440\u0435\u043b\u0438\u0437 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 LXC 5.0, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 runtime, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u043a\u0430\u043a \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0441 \u043f\u043e\u043b\u043d\u044b\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435\u043c, \u0431\u043b\u0438\u0437\u043a\u0438\u0445 \u043a \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c \u043c\u0430\u0448\u0438\u043d\u0430\u043c, \u0442\u0430\u043a \u0438 \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043d\u0435\u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 (OCI). LXC \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u043c, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u043c \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432. \u0414\u043b\u044f \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u043c\u0438, \u0440\u0430\u0437\u0432\u0451\u0440\u043d\u0443\u0442\u044b\u043c\u0438 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0438\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-104441","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Canonical \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0440\u0435\u043b\u0438\u0437 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 LXC 5.0, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 runtime, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u043a\u0430\u043a \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0441 \u043f\u043e\u043b\u043d\u044b\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435\u043c, \u0431\u043b\u0438\u0437\u043a\u0438\u0445 \u043a.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/news\/vypusk-sistemy-upravleniya-kontejnerami-lxc-5-0\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u043c\u0438 LXC 5.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Canonical \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0440\u0435\u043b\u0438\u0437 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 LXC 5.0, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 runtime, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u043a\u0430\u043a \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0441 \u043f\u043e\u043b\u043d\u044b\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435\u043c, \u0431\u043b\u0438\u0437\u043a\u0438\u0445 \u043a.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/news\/vypusk-sistemy-upravleniya-kontejnerami-lxc-5-0\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-06-18T01:36:45+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-06-18T01:36:45+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Vyd\u00e1n\u00ed syst\u00e9mu spr\u00e1vy kontejner\u016f LXC 5.0 | ProHoster","description":"Spole\u010dnost Canonical vydala n\u00e1stroj pro spr\u00e1vu izolovan\u00fdch kontejner\u016f LXC 5.0, kter\u00fd poskytuje runtime vhodn\u00fd jak pro spou\u0161t\u011bn\u00ed kontejner\u016f s pln\u00fdm syst\u00e9mov\u00fdm prost\u0159ed\u00edm, podobn\u00fdm.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/vypusk-sistemy-upravleniya-kontejnerami-lxc-5-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u043c\u0438 LXC 5.0 | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Canonical \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0430 \u0440\u0435\u043b\u0438\u0437 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 LXC 5.0, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 runtime, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u043a\u0430\u043a \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0441 \u043f\u043e\u043b\u043d\u044b\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435\u043c, \u0431\u043b\u0438\u0437\u043a\u0438\u0445 \u043a.","og:url":"https:\/\/prohoster.info\/cs\/blog\/news\/vypusk-sistemy-upravleniya-kontejnerami-lxc-5-0","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2022-06-18T01:36:45+00:00","article:modified_time":"2022-06-18T01:36:45+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"104441","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2022-06-18 01:36:53","updated":"2022-10-02 03:48:08","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/104441","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=104441"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/104441\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=104441"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=104441"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=104441"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}