library(tidyverse)
library(sidrar)
library(tstools)
library(ggpubr)
library(ggforce)
library(ggpmisc)
library(knitr)
library(patchwork)

serie00 = get_sidra(api = '/t/655/n1/all/v/63/p/all/c315/7173/d/v63%202')
serie01 = get_sidra(api = '/t/2938/n1/all/v/63/p/all/c315/7173/d/v63%202')
serie02 = get_sidra(api= '/t/1419/n1/all/v/63/p/all/c315/7173/d/v63%202')
serie03 = get_sidra(api='/t/7060/n1/all/v/63/p/all/c315/7173/d/v63%202')

dates = seq(as.Date('1999-08-01'), as.Date('2020-08-01'), by='1 month')

Resultados

data = tibble(date = dates,
              `Variação Mensal` = c(serie00$Valor, 
                                    serie01$Valor, 
                                    serie02$Valor, 
                                    serie03$Valor),
              `Variação Acumulada em 12 meses` = acum_p(`Variação Mensal`, 12))

data %>% kable
date Variação Mensal Variação Acumulada em 12 meses
1999-08-01 -1.49 NA
1999-09-01 -1.80 NA
1999-10-01 1.47 NA
1999-11-01 1.54 NA
1999-12-01 1.24 NA
2000-01-01 -1.00 NA
2000-02-01 -0.80 NA
2000-03-01 -2.27 NA
2000-04-01 -1.95 NA
2000-05-01 -2.31 NA
2000-06-01 -0.76 NA
2000-07-01 0.67 -7.3216997
2000-08-01 -0.12 -6.0328025
2000-09-01 -0.36 -4.6548721
2000-10-01 -1.26 -7.2200854
2000-11-01 -0.61 -9.1846001
2000-12-01 0.12 -10.1892746
2001-01-01 5.88 -3.9478827
2001-02-01 4.36 1.0483766
2001-03-01 2.04 5.5047206
2001-04-01 -1.88 5.5800427
2001-05-01 -0.18 7.8820745
2001-06-01 2.94 11.9042801
2001-07-01 5.25 16.9953857
2001-08-01 1.47 18.8578473
2001-09-01 2.06 21.7445995
2001-10-01 10.70 36.4910590
2001-11-01 4.81 43.9342780
2001-12-01 -0.12 43.5892498
2002-01-01 -0.22 35.3167297
2002-02-01 -2.07 26.9793728
2002-03-01 -4.16 19.2640443
2002-04-01 -4.64 15.9092873
2002-05-01 -0.09 16.0137938
2002-06-01 2.88 15.9461735
2002-07-01 2.43 12.8395872
2002-08-01 2.23 13.6847443
2002-09-01 7.02 19.2096936
2002-10-01 9.03 17.4113179
2002-11-01 13.08 26.6756210
2002-12-01 7.78 36.6950183
2003-01-01 1.97 39.6952397
2003-02-01 -0.73 41.6067236
2003-03-01 -1.25 45.9063434
2003-04-01 -0.60 52.0877783
2003-05-01 14.46 74.2364839
2003-06-01 6.20 79.8592009
2003-07-01 -0.15 75.3289193
2003-08-01 0.19 71.8302302
2003-09-01 1.21 62.5017529
2003-10-01 -1.11 47.3887769
2003-11-01 0.44 30.9137668
2003-12-01 3.10 25.2292573
2004-01-01 3.16 26.6906952
2004-02-01 0.68 28.4901702
2004-03-01 -2.36 27.0458756
2004-04-01 -2.43 24.7069022
2004-05-01 -0.66 8.2333013
2004-06-01 -0.96 0.9362162
2004-07-01 -1.72 -0.6508630
2004-08-01 -3.36 -4.1710690
2004-09-01 -3.58 -8.7063973
2004-10-01 -1.72 -9.2695392
2004-11-01 -2.52 -11.9433958
2004-12-01 -2.98 -17.1362586
2005-01-01 -3.49 -22.4779015
2005-02-01 -2.68 -25.0650514
2005-03-01 -0.26 -23.4533821
2005-04-01 -1.57 -22.7786860
2005-05-01 -2.35 -24.0923967
2005-06-01 -4.84 -27.0661599
2005-07-01 -2.63 -27.7414732
2005-08-01 -2.70 -27.2479858
2005-09-01 -1.98 -26.0407339
2005-10-01 -3.06 -27.0491325
2005-11-01 -1.40 -26.2109609
2005-12-01 3.29 -21.4422815
2006-01-01 2.55 -16.5258105
2006-02-01 0.19 -14.0641281
2006-03-01 -1.34 -14.9946549
2006-04-01 -2.33 -15.6510002
2006-05-01 -2.90 -16.1260841
2006-06-01 0.36 -11.5428100
2006-07-01 4.33 -5.2198970
2006-08-01 2.03 -0.6123956
2006-09-01 -0.16 1.2329976
2006-10-01 0.72 5.1803953
2006-11-01 5.32 12.3488766
2006-12-01 4.44 13.5997354
2007-01-01 -0.77 9.9220063
2007-02-01 -2.35 7.1352821
2007-03-01 -2.99 5.3435406
2007-04-01 -1.13 6.6378198
2007-05-01 -0.70 9.0539187
2007-06-01 0.16 8.8365932
2007-07-01 -0.48 3.8188226
2007-08-01 1.58 3.3609330
2007-09-01 3.54 7.1914163
2007-10-01 2.09 8.6494409
2007-11-01 0.33 3.5016940
2007-12-01 -1.01 -1.8993423
2008-01-01 0.62 -0.5251620
2008-02-01 1.62 3.5190275
2008-03-01 0.72 7.4779554
2008-04-01 1.96 10.8369812
2008-05-01 19.75 33.6629255
2008-06-01 9.90 46.6608976
2008-07-01 -0.51 46.6166872
2008-08-01 -1.59 42.0412304
2008-09-01 -0.81 36.0736879
2008-10-01 1.46 35.2339737
2008-11-01 0.14 34.9778742
2008-12-01 -1.77 33.9415758
2009-01-01 -1.29 31.3990553
2009-02-01 -0.82 28.2440298
2009-03-01 -1.80 25.0353825
2009-04-01 -2.57 19.4801620
2009-05-01 -2.30 -2.5201518
2009-06-01 -3.15 -14.0953294
2009-07-01 -0.29 -13.9053703
2009-08-01 0.28 -12.2693886
2009-09-01 -0.76 -12.2251651
2009-10-01 -0.10 -13.5747486
2009-11-01 -0.25 -13.9113359
2009-12-01 -0.87 -13.1225769
2010-01-01 3.26 -9.1179950
2010-02-01 4.45 -4.2889149
2010-03-01 -0.47 -2.9926242
2010-04-01 -1.27 -1.6982633
2010-05-01 -0.15 0.4649786
2010-06-01 -0.68 3.0271727
2010-07-01 -1.05 2.2418889
2010-08-01 -1.01 0.9266512
2010-09-01 0.32 2.0250065
2010-10-01 -1.14 0.9628843
2010-11-01 -1.22 -0.0189101
2010-12-01 0.21 1.0703623
2011-01-01 -0.76 -2.8643932
2011-02-01 -1.58 -8.4721262
2011-03-01 -0.90 -8.8675546
2011-04-01 -2.13 -9.6613751
2011-05-01 -1.68 -11.0456325
2011-06-01 -1.80 -12.0487425
2011-07-01 -1.19 -12.1731809
2011-08-01 1.82 -9.6623222
2011-09-01 1.97 -8.1765052
2011-10-01 0.25 -6.8854404
2011-11-01 0.48 -5.2829425
2011-12-01 0.43 -5.0750016
2012-01-01 1.32 -3.0854410
2012-02-01 1.02 -0.5252108
2012-03-01 0.50 0.8800839
2012-04-01 0.44 3.5291267
2012-05-01 2.11 7.5199260
2012-06-01 1.01 10.5966163
2012-07-01 0.67 12.6784877
2012-08-01 1.76 12.6120890
2012-09-01 8.21 19.5033260
2012-10-01 9.88 30.9827976
2012-11-01 4.05 35.6365455
2012-12-01 1.19 36.6629696
2013-01-01 -0.05 34.8150791
2013-02-01 -0.57 32.6931629
2013-03-01 -1.68 29.8148435
2013-04-01 -1.87 26.8292572
2013-05-01 -1.23 22.6806947
2013-06-01 0.67 22.2677511
2013-07-01 -0.01 21.4418638
2013-08-01 -0.12 19.1982445
2013-09-01 0.26 10.4409573
2013-10-01 -0.16 0.3497013
2013-11-01 -1.04 -4.5592846
2013-12-01 0.86 -4.8705350
2014-01-01 1.12 -3.7569635
2014-02-01 0.94 -2.2953625
2014-03-01 0.22 -0.4072542
2014-04-01 0.29 1.7849432
2014-05-01 1.57 4.6704129
2014-06-01 1.23 5.2526661
2014-07-01 0.45 5.7368768
2014-08-01 -1.07 4.7311696
2014-09-01 0.68 5.1698998
2014-10-01 1.15 6.5498334
2014-11-01 -0.06 7.6049954
2014-12-01 1.81 8.6185265
2015-01-01 0.57 8.0277414
2015-02-01 0.38 7.4284197
2015-03-01 0.44 7.6642434
2015-04-01 -0.82 6.4726260
2015-05-01 0.37 5.2147039
2015-06-01 0.06 3.9986493
2015-07-01 -0.29 3.2325069
2015-08-01 -0.26 4.0777342
2015-09-01 0.37 3.7572723
2015-10-01 3.77 6.4448062
2015-11-01 3.13 9.8424341
2015-12-01 1.64 9.6590218
2016-01-01 1.37 10.5313218
2016-02-01 0.80 10.9937960
2016-03-01 0.96 11.5684353
2016-04-01 0.34 12.8733293
2016-05-01 0.54 13.0645066
2016-06-01 2.00 15.2566427
2016-07-01 4.68 21.0015581
2016-08-01 2.92 24.8594382
2016-09-01 1.13 25.8048718
2016-10-01 0.39 21.7071512
2016-11-01 -0.15 17.8363138
2016-12-01 0.21 16.1784436
2017-01-01 -0.12 14.4707798
2017-02-01 -0.60 12.8809079
2017-03-01 -1.13 10.5441300
2017-04-01 -1.69 8.3076880
2017-05-01 -1.98 5.5929936
2017-06-01 -0.92 2.5701354
2017-07-01 -1.52 -3.5049013
2017-08-01 -0.95 -7.1333120
2017-09-01 -0.39 -8.5291131
2017-10-01 -1.14 -9.9231808
2017-11-01 -0.95 -10.6448779
2017-12-01 -0.03 -10.8588808
2018-01-01 -0.23 -10.9570539
2018-02-01 -1.02 -11.3332917
2018-03-01 -1.20 -11.3960677
2018-04-01 -1.11 -10.8733307
2018-05-01 -1.08 -10.0549874
2018-06-01 3.02 -6.4782479
2018-07-01 2.02 -3.1164790
2018-08-01 2.51 0.2678418
2018-09-01 2.16 2.8346825
2018-10-01 1.09 5.1543400
2018-11-01 0.35 6.5344575
2018-12-01 -1.19 5.2982870
2019-01-01 0.19 5.7415593
2019-02-01 -1.23 5.5172137
2019-03-01 -0.41 6.3609242
2019-04-01 -0.16 7.3826947
2019-05-01 -0.40 8.1208693
2019-06-01 0.50 5.4760955
2019-07-01 0.48 3.8839255
2019-08-01 0.67 2.0192643
2019-09-01 0.63 0.4913720
2019-10-01 0.05 -0.5424694
2019-11-01 0.69 -0.2054932
2019-12-01 0.17 1.1680573
2020-01-01 1.31 2.2989908
2020-02-01 1.00 4.6086673
2020-03-01 1.60 6.7199578
2020-04-01 3.88 11.0383535
2020-05-01 2.01 13.7251249
2020-06-01 2.74 16.2598939
2020-07-01 2.20 18.2500115
2020-08-01 3.08 21.0808700
data_long =  data %>%
             gather(metrica, valor, -date)

item <- gsub("[0-9].|^\\)|\\)$", "", 
             serie03$`Geral, grupo, subgrupo, item e subitem`[1])


mypal <- RColorBrewer::brewer.pal(name = "Set1", n=8)
a<-data_long %>% filter(metrica == "Variação Acumulada em 12 meses" ) %>% 
  ggplot() +
  geom_line(aes(x=date,y=valor,col=metrica), size=1) + 
  #facet_wrap(~metrica, scales = "free_y") + 
  geom_hline(yintercept = 0, linetype=2) + 
  ylab("") + xlab("") + theme_bw() +
  scale_x_date(
    date_minor_breaks = "1 year",
    breaks = "2 year",
    date_labels = "%Y") + 
  scale_color_manual(values = mypal)+
  ggtitle(paste("Variação do Preço do",item, "dentro do IPCA (%)"))  + 
  labs(#caption = "Fonte: SIDRA IBGE\n Cid Edson Mendonça Póvoas",
       caption = "\n",
       subtitle = "Variação acumulada em 12 meses") + 
  theme(legend.position = "none",
        axis.text.x = element_text(angle = 0, hjust = 0.5))
a

b<-data_long %>% filter(metrica == "Variação Mensal" ) %>% 
  ggplot() +
  geom_line(aes(x=date,y=valor,col=metrica), size=1) + 
  geom_hline(yintercept = 0, linetype=2) + 
  facet_zoom(x = date>as.Date("2019-08-01")&date<as.Date("2020-08-31")) +
  stat_peaks(aes(x = date, y = valor, label=paste(valor,"% \n",date)), geom = "text", colour = "red", vjust = -0.5, check_overlap = TRUE, span = NULL, size=2.5)+
  stat_valleys(aes(x = date, y = valor, label=paste(valor,"% \n",date)), geom = "text", colour = "blue", vjust = 1, check_overlap = TRUE, span = NULL, size=2.5)+
  scale_y_continuous(limits = c(-10, 30), breaks = seq(-10, 30, 5)) +
  ylab("") + xlab("") + theme_bw() +
  # scale_x_date(
  #   date_minor_breaks = "1 year",
  #   breaks = "1 year",
  #   date_labels = "%Y") + 
  scale_color_manual(values = mypal[2])+
  #ggtitle(paste("Variação do Preço do",item, "dentro do IPCA (%)"))  + 
  ggtitle("")  + 
  labs(caption = "Fonte: SIDRA IBGE\n Cid Edson Mendonça Póvoas",
       subtitle = "Variação mensal") + 
  theme(legend.position = "none",
        axis.text.x = element_text(angle = 0, hjust = 0.5),
        strip.background = element_rect(fill= 'white', linetype = 2)) 
b

ggarrange(a,b)

IycgLS0tDQojJyB0aXRsZTogIkFycm96IElQQ0EiDQojJyBhdXRob3I6IENpZCBFZHNvbiBQw7N2b2FzDQojJyBvdXRwdXQ6DQojJyAgIGh0bWxfbm90ZWJvb2s6IA0KIycgICAgIGNvZGVfZm9sZGluZzogaGlkZQ0KIycgICAgIHRvYzogdHJ1ZQ0KIycgICAgIHRvY19mbG9hdDogdHJ1ZQ0KIycgICAgIGNvbGxhcHNlZDogZmFsc2UNCiMnIC0tLQ0KIysgd2FybmluZz1GQUxTRSwgZWNobz1ULCBtZXNzYWdlPUZBTFNFDQojKyBzZXR1cCwgaW5jbHVkZT1ULCBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFDQoNCmxpYnJhcnkodGlkeXZlcnNlKQ0KbGlicmFyeShzaWRyYXIpDQpsaWJyYXJ5KHRzdG9vbHMpDQpsaWJyYXJ5KGdncHVicikNCmxpYnJhcnkoZ2dmb3JjZSkNCmxpYnJhcnkoZ2dwbWlzYykNCmxpYnJhcnkoa25pdHIpDQpsaWJyYXJ5KHBhdGNod29yaykNCg0Kc2VyaWUwMCA9IGdldF9zaWRyYShhcGkgPSAnL3QvNjU1L24xL2FsbC92LzYzL3AvYWxsL2MzMTUvNzE3My9kL3Y2MyUyMDInKQ0Kc2VyaWUwMSA9IGdldF9zaWRyYShhcGkgPSAnL3QvMjkzOC9uMS9hbGwvdi82My9wL2FsbC9jMzE1LzcxNzMvZC92NjMlMjAyJykNCnNlcmllMDIgPSBnZXRfc2lkcmEoYXBpPSAnL3QvMTQxOS9uMS9hbGwvdi82My9wL2FsbC9jMzE1LzcxNzMvZC92NjMlMjAyJykNCnNlcmllMDMgPSBnZXRfc2lkcmEoYXBpPScvdC83MDYwL24xL2FsbC92LzYzL3AvYWxsL2MzMTUvNzE3My9kL3Y2MyUyMDInKQ0KDQpkYXRlcyA9IHNlcShhcy5EYXRlKCcxOTk5LTA4LTAxJyksIGFzLkRhdGUoJzIwMjAtMDgtMDEnKSwgYnk9JzEgbW9udGgnKQ0KDQojJyAjIyAqKlJlc3VsdGFkb3MqKg0KDQpkYXRhID0gdGliYmxlKGRhdGUgPSBkYXRlcywNCiAgICAgICAgICAgICAgYFZhcmlhw6fDo28gTWVuc2FsYCA9IGMoc2VyaWUwMCRWYWxvciwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXJpZTAxJFZhbG9yLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlcmllMDIkVmFsb3IsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VyaWUwMyRWYWxvciksDQogICAgICAgICAgICAgIGBWYXJpYcOnw6NvIEFjdW11bGFkYSBlbSAxMiBtZXNlc2AgPSBhY3VtX3AoYFZhcmlhw6fDo28gTWVuc2FsYCwgMTIpKQ0KDQpkYXRhICU+JSBrYWJsZQ0KDQpkYXRhX2xvbmcgPSAgZGF0YSAlPiUNCiAgICAgICAgICAgICBnYXRoZXIobWV0cmljYSwgdmFsb3IsIC1kYXRlKQ0KDQppdGVtIDwtIGdzdWIoIlswLTldLnxeXFwpfFxcKSQiLCAiIiwgDQogICAgICAgICAgICAgc2VyaWUwMyRgR2VyYWwsIGdydXBvLCBzdWJncnVwbywgaXRlbSBlIHN1Yml0ZW1gWzFdKQ0KDQoNCm15cGFsIDwtIFJDb2xvckJyZXdlcjo6YnJld2VyLnBhbChuYW1lID0gIlNldDEiLCBuPTgpDQoNCiMrIGVjaG89VCwgZmlnLmhlaWdodD01LCBmaWcud2lkdGg9OCwgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRQ0KDQoNCg0KYTwtZGF0YV9sb25nICU+JSBmaWx0ZXIobWV0cmljYSA9PSAiVmFyaWHDp8OjbyBBY3VtdWxhZGEgZW0gMTIgbWVzZXMiICkgJT4lIA0KICBnZ3Bsb3QoKSArDQogIGdlb21fbGluZShhZXMoeD1kYXRlLHk9dmFsb3IsY29sPW1ldHJpY2EpLCBzaXplPTEpICsgDQogICNmYWNldF93cmFwKH5tZXRyaWNhLCBzY2FsZXMgPSAiZnJlZV95IikgKyANCiAgZ2VvbV9obGluZSh5aW50ZXJjZXB0ID0gMCwgbGluZXR5cGU9MikgKyANCiAgeWxhYigiIikgKyB4bGFiKCIiKSArIHRoZW1lX2J3KCkgKw0KICBzY2FsZV94X2RhdGUoDQogICAgZGF0ZV9taW5vcl9icmVha3MgPSAiMSB5ZWFyIiwNCiAgICBicmVha3MgPSAiMiB5ZWFyIiwNCiAgICBkYXRlX2xhYmVscyA9ICIlWSIpICsgDQogIHNjYWxlX2NvbG9yX21hbnVhbCh2YWx1ZXMgPSBteXBhbCkrDQogIGdndGl0bGUocGFzdGUoIlZhcmlhw6fDo28gZG8gUHJlw6dvIGRvIixpdGVtLCAiZGVudHJvIGRvIElQQ0EgKCUpIikpICArIA0KICBsYWJzKCNjYXB0aW9uID0gIkZvbnRlOiBTSURSQSBJQkdFXG4gQ2lkIEVkc29uIE1lbmRvbsOnYSBQw7N2b2FzIiwNCiAgICAgICBjYXB0aW9uID0gIlxuIiwNCiAgICAgICBzdWJ0aXRsZSA9ICJWYXJpYcOnw6NvIGFjdW11bGFkYSBlbSAxMiBtZXNlcyIpICsgDQogIHRoZW1lKGxlZ2VuZC5wb3NpdGlvbiA9ICJub25lIiwNCiAgICAgICAgYXhpcy50ZXh0LnggPSBlbGVtZW50X3RleHQoYW5nbGUgPSAwLCBoanVzdCA9IDAuNSkpDQphDQojKyBlY2hvPVQsIGZpZy5oZWlnaHQ9MTAsIGZpZy53aWR0aD04LCBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFDQoNCg0KDQpiPC1kYXRhX2xvbmcgJT4lIGZpbHRlcihtZXRyaWNhID09ICJWYXJpYcOnw6NvIE1lbnNhbCIgKSAlPiUgDQogIGdncGxvdCgpICsNCiAgZ2VvbV9saW5lKGFlcyh4PWRhdGUseT12YWxvcixjb2w9bWV0cmljYSksIHNpemU9MSkgKyANCiAgZ2VvbV9obGluZSh5aW50ZXJjZXB0ID0gMCwgbGluZXR5cGU9MikgKyANCiAgZmFjZXRfem9vbSh4ID0gZGF0ZT5hcy5EYXRlKCIyMDE5LTA4LTAxIikmZGF0ZTxhcy5EYXRlKCIyMDIwLTA4LTMxIikpICsNCiAgc3RhdF9wZWFrcyhhZXMoeCA9IGRhdGUsIHkgPSB2YWxvciwgbGFiZWw9cGFzdGUodmFsb3IsIiUgXG4iLGRhdGUpKSwgZ2VvbSA9ICJ0ZXh0IiwgY29sb3VyID0gInJlZCIsIHZqdXN0ID0gLTAuNSwgY2hlY2tfb3ZlcmxhcCA9IFRSVUUsIHNwYW4gPSBOVUxMLCBzaXplPTIuNSkrDQogIHN0YXRfdmFsbGV5cyhhZXMoeCA9IGRhdGUsIHkgPSB2YWxvciwgbGFiZWw9cGFzdGUodmFsb3IsIiUgXG4iLGRhdGUpKSwgZ2VvbSA9ICJ0ZXh0IiwgY29sb3VyID0gImJsdWUiLCB2anVzdCA9IDEsIGNoZWNrX292ZXJsYXAgPSBUUlVFLCBzcGFuID0gTlVMTCwgc2l6ZT0yLjUpKw0KICBzY2FsZV95X2NvbnRpbnVvdXMobGltaXRzID0gYygtMTAsIDMwKSwgYnJlYWtzID0gc2VxKC0xMCwgMzAsIDUpKSArDQogIHlsYWIoIiIpICsgeGxhYigiIikgKyB0aGVtZV9idygpICsNCiAgIyBzY2FsZV94X2RhdGUoDQogICMgICBkYXRlX21pbm9yX2JyZWFrcyA9ICIxIHllYXIiLA0KICAjICAgYnJlYWtzID0gIjEgeWVhciIsDQogICMgICBkYXRlX2xhYmVscyA9ICIlWSIpICsgDQogIHNjYWxlX2NvbG9yX21hbnVhbCh2YWx1ZXMgPSBteXBhbFsyXSkrDQogICNnZ3RpdGxlKHBhc3RlKCJWYXJpYcOnw6NvIGRvIFByZcOnbyBkbyIsaXRlbSwgImRlbnRybyBkbyBJUENBICglKSIpKSAgKyANCiAgZ2d0aXRsZSgiIikgICsgDQogIGxhYnMoY2FwdGlvbiA9ICJGb250ZTogU0lEUkEgSUJHRVxuIENpZCBFZHNvbiBNZW5kb27Dp2EgUMOzdm9hcyIsDQogICAgICAgc3VidGl0bGUgPSAiVmFyaWHDp8OjbyBtZW5zYWwiKSArIA0KICB0aGVtZShsZWdlbmQucG9zaXRpb24gPSAibm9uZSIsDQogICAgICAgIGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KGFuZ2xlID0gMCwgaGp1c3QgPSAwLjUpLA0KICAgICAgICBzdHJpcC5iYWNrZ3JvdW5kID0gZWxlbWVudF9yZWN0KGZpbGw9ICd3aGl0ZScsIGxpbmV0eXBlID0gMikpIA0KYg0KDQojKyBlY2hvPVQsIGZpZy5oZWlnaHQ9NywgZmlnLndpZHRoPTEyLCBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFDQoNCg0KZ2dhcnJhbmdlKGEsYikNCg==