{"id":3722,"date":"2019-03-25T17:45:39","date_gmt":"2019-03-25T20:45:39","guid":{"rendered":"http:\/\/xexeu.elipse.com.br\/pt\/agregacao-de-dados-do-epm\/"},"modified":"2022-11-24T09:48:32","modified_gmt":"2022-11-24T12:48:32","slug":"agregacao-de-dados-do-epm","status":"publish","type":"post","link":"https:\/\/kb.elipse.com.br\/en\/agregacao-de-dados-do-epm\/","title":{"rendered":"Agrega\u00e7\u00e3o de dados do EPM."},"content":{"rendered":"<div align=\"justify\">\n<p><b>Descri\u00e7\u00e3o:<\/b><\/p>\n<p>Quais s\u00e3o os tipos de agrega\u00e7\u00e3o de dados do dataset do EPM?<\/p>\n<p><b>Solu\u00e7\u00e3o:<\/b><\/p>\n<p><u><b>Dados Brutos:<\/b><\/u><\/p>\n<ul>\n<li>Raw \u2013 Busca os dados armazenados sem aplicar nenhuma agrega\u00e7\u00e3o, ou seja, busca os dados brutos.<\/li>\n<li>Trend \u2013 Aplica processamento sobre os dados de um intervalo de tempo, priorizando a qualidade para visualiza\u00e7\u00e3o em um gr\u00e1fico segundo uma dada resolu\u00e7\u00e3o de tela. Esta consulta, por padr\u00e3o, traz os valores imediatamente anteriores e posteriores aos limites de in\u00edcio e fim, respectivamente, do per\u00edodo solicitado.\n<div class=\"WordSection1\"><\/div>\n<\/li>\n<\/ul>\n<p><u><b>Interpola\u00e7\u00f5es:<\/b><\/u><\/p>\n<ul>\n<li>Interpolative \u2013 Interpola os pontos consecutivos dos dados de um intervalo definido, segundo a amostragem especificada nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>. Para vari\u00e1veis discretas, a interpola\u00e7\u00e3o apenas mant\u00e9m o valor anterior at\u00e9 o seguinte, enquanto que, para vari\u00e1veis cont\u00ednuas, a interpola\u00e7\u00e3o entre dois pontos consecutivos \u00e9 linear.<\/li>\n<\/ul>\n<p><u><b>M\u00e9dias:<\/b><\/u><\/p>\n<ul>\n<li>Average \u2013 Calcula a m\u00e9dia aritm\u00e9tica dos valores armazenados que possuem qualidade boa, segundo a amostragem definida nos campos <i>Sample Interval <\/i>e <i>Unit<\/i>.<\/li>\n<li>TimeAverage \u2013 Calcula a m\u00e9dia ponderada pelo tempo, utilizando os dados interpolados linearmente, segundo a amostragem definida nos campos <i>Sample Interval <\/i>e <i>Unit<\/i>.<\/li>\n<li>Total \u2013 Retorna o resultado do c\u00e1lculo<i> Total = TimeAverage * SampleInterval<\/i> (milissegundos).<\/li>\n<\/ul>\n<p><u><b>Varia\u00e7\u00f5es:<\/b><\/u><\/p>\n<ul>\n<li>Minimum \u2013 Equivale ao campo <i>MinimumActualTime<\/i>, por\u00e9m utiliza a estampa de tempo do in\u00edcio do intervalo, e n\u00e3o de quando o valor efetivamente ocorreu.<\/li>\n<li>Maximum \u2013 Equivale ao campo <i>MaximumActualTime<\/i>, por\u00e9m utiliza a estampa de tempo do in\u00edcio do intervalo, e n\u00e3o de quando o valor efetivamente ocorreu.<\/li>\n<li>MinimumActualTime \u2013 Retorna o menor valor presente no intervalo especificado nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>, utilizando a pr\u00f3pria estampa de tempo de quando o valor ocorreu.<\/li>\n<li>MaximumActualTime \u2013 Retorna o maior valor presente no intervalo especificado nos campos <i>Sample Interval <\/i>e <i>Unit<\/i>, utilizando a pr\u00f3pria estampa de tempo de quando o valor ocorreu.<\/li>\n<li>Range \u2013 Retorna a diferen\u00e7a entre o valor m\u00e1ximo e m\u00ednimo do intervalo especificado nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>. Se houver apenas um valor com qualidade boa no intervalo, \u00e9 retornado o valor 0 (zero).<\/li>\n<\/ul>\n<p><u><b>Contadores:<\/b><\/u><\/p>\n<ul>\n<li>Count \u2013 Retorna o n\u00famero total de dados com qualidade boa armazenados no intervalo especificado nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>.<\/li>\n<li>DurationInStateZero \u2013 Retorna o tempo transcorrido, em milissegundos, dentro do intervalo especificado nos campos <i>Sample Interval <\/i>e <i>Unit<\/i>, em que o estado do tag era 0 (zero).<\/li>\n<li>DurationInStateNonZero \u2013 Retorna o tempo transcorrido, em milissegundos, dentro do intervalo especificado nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>, em que o estado do tag era diferente de 0 (zero).<\/li>\n<li>PercentInStateZero \u2013 Retorna o resultado do c\u00e1lculo <i>PercentInStateZero = DurationInStateZero \/ SampleInterval * 100<\/i>.<\/li>\n<li>PercentInStateNonZero \u2013 Retorna o resultado do c\u00e1lculo <i>PercentInStateNonZero = DurationInStateNonZero \/ SampleInterval * 100<\/i>.<\/li>\n<li>NumberOfTransitions \u2013 Retorna o n\u00famero total de transi\u00e7\u00f5es do valor da vari\u00e1vel dentro do intervalo especificado nos campos <i>Sample Interval <\/i>e <i>Unit<\/i>.<\/li>\n<\/ul>\n<p><u><b>Delta:<\/b><\/u><\/p>\n<ul>\n<li>Start \u2013 Retorna o primeiro valor com qualidade boa encontrado no intervalo especificado nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>, com a estampa de tempo em que ocorreu.<\/li>\n<li>End \u2013 Retorna o \u00faltimo valor com qualidade boa encontrado no intervalo especificado nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>, com a estampa de tempo em que ocorreu.<\/li>\n<li>Delta \u2013 Retorna a diferen\u00e7a entre o primeiro e o \u00faltimo valor dentro do intervalo especificado nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>, e que tenham qualidade boa. Corresponde ao resultado do c\u00e1lculo <i>Delta = End \u2013 Start<\/i>.<\/li>\n<\/ul>\n<p><u><b>Qualidade:<\/b><\/u><\/p>\n<ul>\n<li>DurationGood \u2013 Retorna o tempo, em milissegundos, em que os dados estavam com qualidade boa no intervalo especificado nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>. A qualidade \u00e9 definida a partir da qualidade dos dados do limite do intervalo.<\/li>\n<li>DurationBad \u2013 Retorna o tempo, em milissegundos, em que os dados estavam com qualidade ruim no intervalo especificado nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>. A qualidade \u00e9 definida a partir da qualidade dos dados do limite do intervalo.<\/li>\n<li>PercentGood \u2013 Retorna o resultado do c\u00e1lculo <i>PercentGood = DurationGood \/ SampleInterval * 100<\/i>.<\/li>\n<li>PercentBad \u2013 Retorna o resultado do c\u00e1lculo <i>PercentBad = DurationBad \/ SampleInterval * 100<\/i>.<\/li>\n<li>Worst Quality \u2013 Retorna a pior qualidade dos dados presentes no intervalo especificado nos campos <i>Sample Interval<\/i> e <i>Unit<\/i>. A qualidade Bad \u00e9 pior que Uncertain que, por sua vez, \u00e9 pior que Good. A estampa de tempo sempre corresponde ao in\u00edcio do intervalo.<\/li>\n<\/ul>\n<p><b>NOTA<\/b>: A agrega\u00e7\u00e3o dos dados em uma consulta a partir dos dados do processo armazenados segue o padr\u00e3o OPC UA, definido pela OPC Foundation (www.opcfoundation.org), exceto pelas op\u00e7\u00f5es Trend, PercentInStateZero e PercentInStateNonZero. O tipo Trend foi criado pela Elipse Software para melhor performance na gera\u00e7\u00e3o de gr\u00e1ficos.<\/p>\n<\/div>\n<p><!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content --><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Descri\u00e7\u00e3o: Quais s\u00e3o os tipos de agrega\u00e7\u00e3o de dados do dataset do EPM? Solu\u00e7\u00e3o: Dados Brutos: Raw \u2013 Busca os dados armazenados sem aplicar nenhuma agrega\u00e7\u00e3o, ou seja, busca os&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0},"categories":[676],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Agrega\u00e7\u00e3o de dados do EPM. - Elipse Knowledgebase<\/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:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Agrega\u00e7\u00e3o de dados do EPM.\" \/>\n<meta property=\"og:description\" content=\"Descri\u00e7\u00e3o: Quais s\u00e3o os tipos de agrega\u00e7\u00e3o de dados do dataset do EPM? Solu\u00e7\u00e3o: Dados Brutos: Raw \u2013 Busca os dados armazenados sem aplicar nenhuma agrega\u00e7\u00e3o, ou seja, busca os&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/\" \/>\n<meta property=\"og:site_name\" content=\"Elipse Knowledgebase\" \/>\n<meta property=\"article:publisher\" content=\"http:\/\/www.facebook.com\/elipsesoftware\" \/>\n<meta property=\"article:published_time\" content=\"2019-03-25T20:45:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-11-24T12:48:32+00:00\" \/>\n<meta name=\"author\" content=\"Elipse Software\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Elipse Software\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/\"},\"author\":{\"name\":\"Elipse Software\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87\"},\"headline\":\"Agrega\u00e7\u00e3o de dados do EPM.\",\"datePublished\":\"2019-03-25T20:45:39+00:00\",\"dateModified\":\"2022-11-24T12:48:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/\"},\"wordCount\":750,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\"},\"articleSection\":[\"Elipse Plant Manager\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/\",\"url\":\"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/\",\"name\":\"[:pt]Agrega\u00e7\u00e3o de dados do EPM.[:] - Elipse Knowledgebase\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#website\"},\"datePublished\":\"2019-03-25T20:45:39+00:00\",\"dateModified\":\"2022-11-24T12:48:32+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/kb.elipse.com.br\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Agrega\u00e7\u00e3o de dados do EPM.\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kb.elipse.com.br\/#website\",\"url\":\"https:\/\/kb.elipse.com.br\/\",\"name\":\"Elipse Knowledgebase\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kb.elipse.com.br\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\",\"name\":\"Elipse Software\",\"url\":\"https:\/\/kb.elipse.com.br\/\",\"sameAs\":[\"http:\/\/www.facebook.com\/elipsesoftware\"],\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png\",\"contentUrl\":\"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png\",\"width\":161,\"height\":58,\"caption\":\"Elipse Software\"},\"image\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87\",\"name\":\"Elipse Software\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g\",\"caption\":\"Elipse Software\"},\"url\":\"https:\/\/kb.elipse.com.br\/en\/author\/webmasterelipse-com-br\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Agrega\u00e7\u00e3o de dados do EPM. - Elipse Knowledgebase","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:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/","og_locale":"en_US","og_type":"article","og_title":"[:pt]Agrega\u00e7\u00e3o de dados do EPM.[:] - Elipse Knowledgebase","og_description":"Descri\u00e7\u00e3o: Quais s\u00e3o os tipos de agrega\u00e7\u00e3o de dados do dataset do EPM? Solu\u00e7\u00e3o: Dados Brutos: Raw \u2013 Busca os dados armazenados sem aplicar nenhuma agrega\u00e7\u00e3o, ou seja, busca os&hellip;","og_url":"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/","og_site_name":"Elipse Knowledgebase","article_publisher":"http:\/\/www.facebook.com\/elipsesoftware","article_published_time":"2019-03-25T20:45:39+00:00","article_modified_time":"2022-11-24T12:48:32+00:00","author":"Elipse Software","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Elipse Software","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/#article","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/"},"author":{"name":"Elipse Software","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87"},"headline":"Agrega\u00e7\u00e3o de dados do EPM.","datePublished":"2019-03-25T20:45:39+00:00","dateModified":"2022-11-24T12:48:32+00:00","mainEntityOfPage":{"@id":"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/"},"wordCount":750,"commentCount":0,"publisher":{"@id":"https:\/\/kb.elipse.com.br\/#organization"},"articleSection":["Elipse Plant Manager"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/","url":"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/","name":"[:pt]Agrega\u00e7\u00e3o de dados do EPM.[:] - Elipse Knowledgebase","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/#website"},"datePublished":"2019-03-25T20:45:39+00:00","dateModified":"2022-11-24T12:48:32+00:00","breadcrumb":{"@id":"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/kb.elipse.com.br\/agregacao-de-dados-do-epm\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/kb.elipse.com.br\/en\/"},{"@type":"ListItem","position":2,"name":"Agrega\u00e7\u00e3o de dados do EPM."}]},{"@type":"WebSite","@id":"https:\/\/kb.elipse.com.br\/#website","url":"https:\/\/kb.elipse.com.br\/","name":"Elipse Knowledgebase","description":"","publisher":{"@id":"https:\/\/kb.elipse.com.br\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kb.elipse.com.br\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/kb.elipse.com.br\/#organization","name":"Elipse Software","url":"https:\/\/kb.elipse.com.br\/","sameAs":["http:\/\/www.facebook.com\/elipsesoftware"],"logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/","url":"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png","contentUrl":"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png","width":161,"height":58,"caption":"Elipse Software"},"image":{"@id":"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87","name":"Elipse Software","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g","caption":"Elipse Software"},"url":"https:\/\/kb.elipse.com.br\/en\/author\/webmasterelipse-com-br\/"}]}},"_links":{"self":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/3722"}],"collection":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/comments?post=3722"}],"version-history":[{"count":2,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/3722\/revisions"}],"predecessor-version":[{"id":13953,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/3722\/revisions\/13953"}],"wp:attachment":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/media?parent=3722"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/categories?post=3722"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/tags?post=3722"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}