{"id":120564,"date":"2024-11-13T13:09:15","date_gmt":"2024-11-13T11:09:16","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/microsoft-otkryl-hyperlight-gipervizor-dlya-izolyaczii-otdelnyh-funkczij-v-prilozheniyah"},"modified":"2024-11-13T13:09:15","modified_gmt":"2024-11-13T11:09:16","slug":"microsoft-otkryl-hyperlight-gipervizor-dlya-izolyaczii-otdelnyh-funkczij-v-prilozheniyah","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/news\/microsoft-otkryl-hyperlight-gipervizor-dlya-izolyaczii-otdelnyh-funkczij-v-prilozheniyah","title":{"rendered":"Microsoft har lanceret Hyperlight, en hypervisor til isolering af enkelte funktioner i applikationer.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Microsoft har pr\u00e6senteret projektet Hyperlight, som udvikler en hypervisor designet til at blive integreret i applikationer med det form\u00e5l at isolere udf\u00f8relsen af kode, der ikke er p\u00e5lidelig eller kr\u00e6ver s\u00e6rlig beskyttelse. Hypervisoren er udformet som et delt bibliotek, der muligg\u00f8r udf\u00f8relse af specifikke funktioner i letv\u00e6gts virtuelle maskiner (micro-VM) og organiserer datadeling med disse funktioner. Projektkoden er skrevet i Rust og distribueres under Apache 2.0-licensen.      <\/p>\n<p>Sammenlignet med lanceringen af traditionelle <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/vps\/\"   title=\"virtual machines\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2186\">virtual machines<\/a> Hyperlight muligg\u00f8r lave forsinkelser og minimale omkostninger. I Hyperlight er forsinkelserne ved oprettelse af virtuelle maskiner 1-2 millisekunder, hvilket g\u00f8r det muligt at anvende isolation p\u00e5 funktionsstartniveau. Til sammenligning tager opstart af en almindelig virtuel maskine mindst 120 millisekunder, mens opstart af et isoleret sandbox-milj\u00f8 til udf\u00f8relse af WebAssembly-kode ved hj\u00e6lp af Wasmtime runtime tager 0,03 millisekunder.          <\/p>\n<p>Til isolering p\u00e5 Linux-platformen underst\u00f8ttes brugen af hypervisorer KVM og mshv (Microsoft Hypervisor i Azure Linux), mens der p\u00e5 Windows-platformen underst\u00f8ttes WHP (Windows Hypervisor Platform) og WSL2 (Windows Subsystem for Linux 2) med KVM. Platformen macOS underst\u00f8ttes endnu ikke. Et separat kerne og operativsystem i <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/vps\/abuzoustojchivye-vps\/\"   title=\"virtuelle maskiner\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4347\">virtuelle maskiner<\/a> bliver ikke brugt. Indholdet til den virtuelle maskine dannes i form af et selvforsynende boot-program, der inklusiverer koden til den udf\u00f8rte funktion i en indpakning fra runtime og et specialiseret minimums-kernel. I den virtuelle maskine bruges et enkelt line\u00e6rt hukommelsesfragment, og der tildeles en virtuel CPU, uden enhedskortl\u00e6gning og uden procesopdeling.      <\/p>\n<p>Udviklingsprocessen er baseret p\u00e5 sammenkoblingen af applikationens grundl\u00e6ggende kode med Hyperlight Host-biblioteket, der koordinerer opstarten af virtuelle maskiner, og koden til de udf\u00f8rte funktioner i isoleret tilstand (g\u00e6stefunktioner) med Hyperlight Guest-biblioteket, der tilbyder API til interaktion med applikationens ydre del og muligheder for adskilt udf\u00f8relse af kode uden operativsystemmilj\u00f8.       <center><img decoding=\"async\" alt=\"Microsoft har lanceret Hyperlight, en hypervisor til isolering af enkelte funktioner i applikationer.\" src=\"\/wp-content\/uploads\/2024\/11\/5690748d006ac585fd05b3abe9dbe21a.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>        <\/p>\n<p>Det leverede lag til interaktion mellem v\u00e6rtapplikationen og de isolerede funktioner muligg\u00f8r ikke kun at kalde isolerede funktioner fra v\u00e6rtapplikationer, men ogs\u00e5 at f\u00e5 adgang til funktioner fra v\u00e6rtapplikationer fra de isolerede funktioner. Listen over eksterne funktioner, der er tilladt at kalde fra de isolerede funktioner, er strengt reguleret. Som standard er adgangen fra de isolerede funktioner begr\u00e6nset til et minimalt API, der muligg\u00f8r at sende meddelelser til v\u00e6rtapplikationen.    <\/p>\n<p>I fremtiden planl\u00e6gger Microsoft at overf\u00f8re projektet til den non-profit organisation Cloud Native Computing Foundation (CNCF) for f\u00e6lles udvikling p\u00e5 en neutral platform, der ikke er afh\u00e6ngig af enkelte producenter. Organisationen CNCF opererer under Linux Foundation og overv\u00e5ger udviklingen af projekter s\u00e5som Kubernetes, etcd, Cilium, Containerd, cri-o, Flux, Helm, Istio og gRPC.<br \/>\n<br \/>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62226\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 Hyperlight, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043d\u0438\u044f \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u0446\u0435\u043b\u044c\u044e \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430, \u043d\u0435 \u0437\u0430\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u0438\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0449\u0435\u0433\u043e \u043e\u0441\u043e\u0431\u043e\u0439 \u0437\u0430\u0449\u0438\u0442\u044b. \u0413\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d \u0432 \u0432\u0438\u0434\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0435\u043c\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432 \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u044b\u0445 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d\u0430\u0445 (micro-VM) \u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0443\u044e\u0449\u0435\u0439 \u043e\u0431\u043c\u0435\u043d \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0441 \u044d\u0442\u0438\u043c\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438. \u041a\u043e\u0434 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":120565,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-120564","post","type-post","status-publish","format-standard","has-post-thumbnail","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 Microsoft \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 Hyperlight, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043d\u0438\u044f \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u0446\u0435\u043b\u044c\u044e \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430, \u043d\u0435 \u0437\u0430\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u0438\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0449\u0435\u0433\u043e \u043e\u0441\u043e\u0431\u043e\u0439 \u0437\u0430\u0449\u0438\u0442\u044b.\" \/>\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\/da\/blog\/news\/microsoft-otkryl-hyperlight-gipervizor-dlya-izolyaczii-otdelnyh-funkczij-v-prilozheniyah\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\udd47Microsoft \u043e\u0442\u043a\u0440\u044b\u043b Hyperlight, \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440 \u0434\u043b\u044f \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 Hyperlight, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043d\u0438\u044f \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u0446\u0435\u043b\u044c\u044e \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430, \u043d\u0435 \u0437\u0430\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u0438\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0449\u0435\u0433\u043e \u043e\u0441\u043e\u0431\u043e\u0439 \u0437\u0430\u0449\u0438\u0442\u044b.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/news\/microsoft-otkryl-hyperlight-gipervizor-dlya-izolyaczii-otdelnyh-funkczij-v-prilozheniyah\" \/>\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=\"2024-11-13T11:09:16+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-11-13T11:09:16+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\udd47Microsoft har \u00e5bnet Hyperlight, en hypervisor til isolering af individuelle funktioner i applikationer | ProHoster","description":"Microsoft har pr\u00e6senteret projektet Hyperlight, der udvikler en hypervisor, designet til at blive indlejret i applikationer med det form\u00e5l at isoleret udf\u00f8re kode, der ikke kan stole p\u00e5 eller kr\u00e6ver s\u00e6rlig beskyttelse.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/microsoft-otkryl-hyperlight-gipervizor-dlya-izolyaczii-otdelnyh-funkczij-v-prilozheniyah","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\udd47Microsoft \u043e\u0442\u043a\u0440\u044b\u043b Hyperlight, \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440 \u0434\u043b\u044f \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445 | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Microsoft \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 Hyperlight, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043d\u0438\u044f \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u0446\u0435\u043b\u044c\u044e \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430, \u043d\u0435 \u0437\u0430\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0434\u043e\u0432\u0435\u0440\u0438\u044f \u0438\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0449\u0435\u0433\u043e \u043e\u0441\u043e\u0431\u043e\u0439 \u0437\u0430\u0449\u0438\u0442\u044b.","og:url":"https:\/\/prohoster.info\/da\/blog\/news\/microsoft-otkryl-hyperlight-gipervizor-dlya-izolyaczii-otdelnyh-funkczij-v-prilozheniyah","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":"2024-11-13T11:09:16+00:00","article:modified_time":"2024-11-13T11:09:16+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"120564","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":"2026-02-09 17:36:58","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 08:00:24","updated":"2026-02-09 17:36:58","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/120564","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=120564"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/120564\/revisions"}],"predecessor-version":[{"id":164222,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/120564\/revisions\/164222"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media\/120565"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=120564"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=120564"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=120564"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}