dmencu 1.0.16 → 1.0.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -117,7 +117,7 @@ anchoNormal(ancho)
117
117
  margin-left 48px
118
118
  font-size 0.8em
119
119
 
120
- .multiple, .pregunta, .conjuntopreguntas
120
+ .multiple, .pregunta, .conjuntopreguntas, .preguntaenformadematriz
121
121
  font-size 1.2rem
122
122
  > .encabezado
123
123
  > .id-div
@@ -209,7 +209,42 @@ anchoNormal(ancho)
209
209
  &[nuestra-longitud="1"]
210
210
  .input-campo
211
211
  width 2ch
212
-
212
+
213
+ .preguntaenformadematriz
214
+ .campo
215
+ &[nuestra-longitud]
216
+ .input-campo, input
217
+ width 100%
218
+ width 100%
219
+ &[nuestra-longitud="telefono"]
220
+ .input-campo, input
221
+ width 100%
222
+ width 100%
223
+ &[nuestra-longitud="10"]
224
+ .input-campo, input
225
+ width 11ch
226
+ &[nuestra-longitud="8"]
227
+ .input-campo, input
228
+ width 9ch
229
+ &[nuestra-longitud="6"]
230
+ .input-campo, input
231
+ width 7ch
232
+ &[nuestra-longitud="4"]
233
+ .input-campo, input
234
+ width 5ch
235
+ &[nuestra-longitud="3"]
236
+ .input-campo, input
237
+ width 4ch
238
+ &[nuestra-longitud="2"]
239
+ .input-campo, input
240
+ width 3ch
241
+ &[nuestra-longitud="1"]
242
+ .input-campo, input
243
+ width 2ch
244
+ .preguntaenformadematriz
245
+ .campo
246
+ .input-campo
247
+ margin auto
213
248
  .bloque
214
249
  > .encabezado
215
250
  background colorFondoEncabezadoBloque
@@ -24,7 +24,8 @@ import {Bloque, BotonFormulario,
24
24
  Texto, Estructura, InformacionHdr, DatosHdrUaPpal, ConfiguracionSorteoFormulario, ResumenEstado, DatosByPassPersistibles, IdOperativo, IdEnc, Libre, UnidadAnalisis,
25
25
  iterator, empty, ConfiguracionHabilitarBotonFormulario,
26
26
  CampoPkRaiz,
27
- ValuePkRaiz
27
+ ValuePkRaiz,
28
+ PMatriz
28
29
  } from "./tipos";
29
30
  import{
30
31
  accion_abrir_formulario,
@@ -439,7 +440,24 @@ function OpcionMultipleDespliegue(props:{opcionM:OpcionMultiple, forPk:ForPk}){
439
440
  </DesplegarCasillero>
440
441
  }
441
442
 
442
- type CasilleroEncabezable = Formulario|Bloque|Filtro|ConjuntoPreguntas|Pregunta|OpcionMultiple|PreguntaSimple|Consistencia|Texto
443
+ type CasilleroEncabezable = Formulario|Bloque|Filtro|ConjuntoPreguntas|Pregunta|OpcionMultiple|PreguntaSimple|Consistencia|Texto|PMatriz
444
+
445
+ const getLosMetadatos = (casillero: CasilleroEncabezable): React.JSX.Element =>
446
+ <div los-metadatos="si">
447
+ <span el-metadato="variable">{casillero.var_name}</span>
448
+ {casillero.tipovar && casillero.tipovar!='opciones' && casillero.tipovar!='si_no'?
449
+ <span el-metadato="tipovar">{casillero.tipovar}</span>
450
+ :null}
451
+ { //@ts-ignore una opción múltiple nunca lo a a ser, no tiene el campo, no importa
452
+ casillero.optativo?<span el-metadato="optativa">optativa</span>:null
453
+ }
454
+ {casillero.calculada?<span el-metadato="calculada">calculada</span>:null}
455
+ {casillero.despliegueOculta?<span el-metadato="oculta">oculta</span>:null}
456
+ {casillero.expresion_habilitar?<span el-metadato="expresion_habilitar">habilita: {casillero.expresion_habilitar}</span>:null}
457
+ { //@ts-ignore altunos casilleros no tienen especial, no importa, es solo para poner los metadatos
458
+ casillero.especial?.autoing?<span el-metadato="expresion_autoing">autoing: {casillero.especial?.autoing}</span>:null
459
+ }
460
+ </div>
443
461
 
444
462
  function EncabezadoDespliegue(props:{casillero:CasilleroEncabezable, verIdGuion?:boolean, leer?:boolean, forPk:ForPk}){
445
463
  var {casillero, forPk} = props;
@@ -525,21 +543,7 @@ function EncabezadoDespliegue(props:{casillero:CasilleroEncabezable, verIdGuion?
525
543
  }
526
544
  </div>
527
545
  :null}
528
- <div los-metadatos="si">
529
- <span el-metadato="variable">{casillero.var_name}</span>
530
- {casillero.tipovar && casillero.tipovar!='opciones' && casillero.tipovar!='si_no'?
531
- <span el-metadato="tipovar">{casillero.tipovar}</span>
532
- :null}
533
- { //@ts-ignore una opción múltiple nunca lo a a ser, no tiene el campo, no importa
534
- casillero.optativo?<span el-metadato="optativa">optativa</span>:null
535
- }
536
- {calculada?<span el-metadato="calculada">calculada</span>:null}
537
- {casillero.despliegueOculta?<span el-metadato="oculta">oculta</span>:null}
538
- {casillero.expresion_habilitar?<span el-metadato="expresion_habilitar">habilita: {casillero.expresion_habilitar}</span>:null}
539
- { //@ts-ignore altunos casilleros no tienen especial, no importa, es solo para poner los metadatos
540
- casillero.especial?.autoing?<span el-metadato="expresion_autoing">autoing: {casillero.especial?.autoing}</span>:null
541
- }
542
- </div>
546
+ {getLosMetadatos(casillero)}
543
547
  </div>
544
548
  </div>
545
549
  }
@@ -611,7 +615,7 @@ function Campo(props:{disabled:boolean, pregunta:PreguntaSimple|PreguntaConOpcio
611
615
  (pregunta.especial?.noScroll == true)?null:enfocarElementoDeVariable(pregunta.especial?.scrollTo ?? siguienteVariable);
612
616
  }
613
617
  };
614
- var nuestraLongitud = calcularNuestraLongitud(longitud)
618
+ var nuestraLongitud = calcularNuestraLongitud(pregunta.longitud || longitud)
615
619
  return <div className="campo" nuestra-longitud={nuestraLongitud} style={props.hidden=='quitar'?{display:'none'}:props.hidden?{visibility:'hidden'}:undefined}>
616
620
  {mini?null:<BotonBorrar
617
621
  id={`borrar-abierta-${pregunta.var_name}`}
@@ -717,10 +721,11 @@ const nombreCasillero={
717
721
  CONS: 'consistencia',
718
722
  BF: 'botonformulario',
719
723
  TEXTO: 'aclaracionsuperior',
724
+ PMATRIZ: 'preguntaenformadematriz',
720
725
  }
721
726
 
722
727
  function DesplegarCasillero(props:{
723
- casillero:Pregunta|Bloque|Filtro|ConjuntoPreguntas|BotonFormulario|Consistencia|OpcionMultiple|Texto,
728
+ casillero:Pregunta|Bloque|Filtro|ConjuntoPreguntas|BotonFormulario|Consistencia|OpcionMultiple|Texto|PMatriz,
724
729
  id?:string,
725
730
  style?:React.CSSProperties,
726
731
  despliegueEncabezado?:'lateral'|'superior'
@@ -740,7 +745,8 @@ function DesplegarCasillero(props:{
740
745
  function PreguntaDespliegue(props:{
741
746
  pregunta:Pregunta,
742
747
  forPk:ForPk,
743
- despliegueEncabezado:'lateral'|'superior'
748
+ despliegueEncabezado:'lateral'|'superior',
749
+ paraPMatriz?:true
744
750
  }){
745
751
  var {pregunta} = props;
746
752
  const dispatch=useDispatch();
@@ -751,12 +757,24 @@ function PreguntaDespliegue(props:{
751
757
  direct:true,
752
758
  fun: registradorDeVariable(pregunta)
753
759
  })
760
+ var id = `pregunta-${pregunta.id_casillero}`
754
761
  var style: CSSProperties = {}
755
762
  if(pregunta.despliegue == 'grid'){
756
763
  style.display = 'grid';
757
764
  style.gridTemplateColumns = 'repeat(3,1fr)';
758
765
  }
759
- return <DesplegarCasillero
766
+
767
+ return props.paraPMatriz?
768
+ <>
769
+ {getLosMetadatos(pregunta)}
770
+ <Campo
771
+ disabled={pregunta.calculada?true:false}
772
+ pregunta={pregunta}
773
+ forPk={props.forPk}
774
+ mini={true}
775
+ />
776
+ </>
777
+ :<DesplegarCasillero
760
778
  id={id}
761
779
  casillero={pregunta}
762
780
  style={style}
@@ -817,6 +835,63 @@ function PreguntaDespliegue(props:{
817
835
  ):""}
818
836
  />
819
837
  </div>
838
+ </DesplegarCasillero>}
839
+ }
840
+
841
+ function PMatrizDespliegue(props:{
842
+ casillero:PMatriz,
843
+ forPk:ForPk,
844
+ }){
845
+ var {casillero} = props;
846
+ var id = `pregunta-${casillero.id_casillero}`
847
+ const cols = (casillero.casilleros as (OpcionMultiple|Consistencia)[])
848
+ .find((opcionMultiple)=>opcionMultiple.tipoc=='OM')?.casilleros
849
+ .map((pregunta)=>pregunta.nombre);
850
+ const tdStyle:React.CSSProperties={textAlign: 'center', width:cols?(550/(cols.length)).toString()+'px':''};
851
+ return <DesplegarCasillero
852
+ id={id}
853
+ casillero={casillero}
854
+ ocultar-salteada={casillero.despliegueOculta?(casillero.expresion_habilitar_js?'INHABILITAR':'SI'):'NO'}
855
+ >
856
+ <EncabezadoDespliegue
857
+ casillero={casillero}
858
+ leer={casillero.leer!==false}
859
+ forPk={props.forPk}
860
+ />
861
+ <table className="table table-striped">
862
+ <thead>
863
+ <tr>
864
+ <th></th>
865
+ {cols?.map((col, i)=><th key={i} scope="col" style={tdStyle}>{col}</th>)}
866
+ </tr>
867
+ </thead>
868
+ <tbody>
869
+ {(casillero.casilleros as (OpcionMultiple|Consistencia)[]).map((opcionMultiple, i)=>
870
+ opcionMultiple.tipoc=='OM'?
871
+ <tr key={i}>
872
+ <td>{opcionMultiple.nombre}</td>
873
+ {opcionMultiple.casilleros.map((pregunta)=>{
874
+ var id = `pregunta-${pregunta.id_casillero}`
875
+ registrarElemento({
876
+ id,
877
+ direct:true,
878
+ fun: registradorDeVariable(pregunta)
879
+ })
880
+ return <td key={id} id={id}><PreguntaDespliegue forPk={props.forPk} pregunta={pregunta} despliegueEncabezado="superior" paraPMatriz={true} /></td>
881
+ })}
882
+ </tr>
883
+
884
+ : //las consistencias pueden ser hermanas de OM
885
+ <ConsistenciaDespliegue
886
+ key={opcionMultiple.id_casillero}
887
+ casillero={opcionMultiple}
888
+ forPk={props.forPk}
889
+ />
890
+ )}
891
+ </tbody>
892
+ </table>
893
+
894
+ <div className="pie-pregunta"></div>
820
895
  </DesplegarCasillero>
821
896
  }
822
897
 
@@ -1355,6 +1430,7 @@ function DesplegarContenidoInternoBloqueOFormulario(props:{bloqueOFormulario:Blo
1355
1430
  casillero.tipoc == "CONS"?<ConsistenciaDespliegue key={key} casillero={casillero} forPk={props.forPk}/>:
1356
1431
  casillero.tipoc == "CP"?<ConjuntoPreguntasDespliegue key={key} casillero={casillero} formulario={props.formulario} forPk={props.forPk}/>:
1357
1432
  casillero.tipoc == "TEXTO"?<TextoDespliegue key={key} casillero={casillero} forPk={props.forPk}/>:
1433
+ casillero.tipoc == "PMATRIZ"?<PMatrizDespliegue key={key} casillero={casillero} forPk={props.forPk}/>:
1358
1434
  casillero.tipoc == "LIBRE"?<LibreDespliegue key={key} casillero={casillero} formulario={props.formulario} forPk={props.forPk}/>:
1359
1435
  <CasilleroDesconocido key={key} casillero={casillero} forPk={props.forPk}/>
1360
1436
  )
@@ -22,7 +22,7 @@ import {
22
22
  Table, TableBody, TableCell, TableHead, TableRow, TextField, ThemeProvider, Toolbar, Typography, Zoom,
23
23
  useScrollTrigger,
24
24
  // styles:
25
- createStyles, makeStyles, Theme, fade, createMuiTheme
25
+ createStyles, makeStyles, Theme, createTheme
26
26
  } from "@material-ui/core";
27
27
  import { Store, Action } from "redux";
28
28
  import { TipoVariables } from "./tipos";
@@ -202,7 +202,7 @@ export class RenderAndCaptureError extends React.Component<
202
202
  }
203
203
  }
204
204
 
205
- const theme = createMuiTheme({
205
+ const theme = createTheme({
206
206
  overrides: {
207
207
  MuiCssBaseline: {
208
208
  '@global': {
@@ -17,7 +17,7 @@ export type IdFin = 'fin';
17
17
  export type IdDestino = IdPregunta | IdBloque | IdFin | IdFiltro;
18
18
  export type Valor = string | number | null;
19
19
  export type TipocDestinos = 'P' | 'CP' | 'B' | 'FILTRO' | 'BF';
20
- export type Tipoc = TipocDestinos | 'F' | 'O' | 'OM' | 'CONS' | 'TEXTO' | 'LIBRE';
20
+ export type Tipoc = TipocDestinos | 'F' | 'O' | 'OM' | 'CONS' | 'TEXTO' | 'LIBRE' | 'PMATRIZ';
21
21
  export type IdTarea = 'encu' | 'recu' | 'supe' | 'ingr';
22
22
  export type FeedbackVariable = Feedback<IdVariable, IdFin>;
23
23
  export type TipoVariables = 'texto' | 'numero' | 'fecha' | 'horas' | 'hora';
@@ -170,7 +170,10 @@ export type Formulario = CasilleroBase & {
170
170
  hermano?: true;
171
171
  unidad_analisis: IdUnidadAnalisis;
172
172
  };
173
- export type CasillerosImplementados = Formulario | Bloque | Filtro | ConjuntoPreguntas | Pregunta | OpcionMultiple | Opcion | BotonFormulario | Consistencia | Texto | Libre;
173
+ export type PMatriz = CasilleroBase & {
174
+ tipoc: 'PMATRIZ';
175
+ };
176
+ export type CasillerosImplementados = Formulario | Bloque | Filtro | ConjuntoPreguntas | Pregunta | OpcionMultiple | Opcion | BotonFormulario | Consistencia | Texto | Libre | PMatriz;
174
177
  export type CampoPkRaiz = 'vivienda' | 'etc...';
175
178
  export type ValuePkRaiz = IdEnc;
176
179
  export type ForPkRaiz = {
@@ -19,4 +19,4 @@
19
19
  exports.iterator = LikeAr.iterator;
20
20
  exports.empty = LikeAr.empty;
21
21
  });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwb3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdW5sb2dnZWQvdGlwb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUFFYixrQ0FBa0M7SUFxZWxDLFNBQWdCLFlBQVksQ0FBQyxLQUFXO1FBQ3BDLCtDQUErQztRQUMvQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUhELG9DQUdDO0lBRVUsUUFBQSxRQUFRLEdBQStDLE1BQU0sQ0FBQyxRQUFRLENBQUE7SUFDdEUsUUFBQSxLQUFLLEdBQTBELE1BQU0sQ0FBQyxLQUFLLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuaW1wb3J0IHtTdHJ1Y3R1cmUsIEZlZWRiYWNrfSBmcm9tIFwicm93LXZhbGlkYXRvclwiO1xyXG5pbXBvcnQgKiBhcyBMaWtlQXIgZnJvbSBcImxpa2UtYXJcIjtcclxuaW1wb3J0IHsgT3BlcmF0aXZvR2VuZXJhdG9yIH0gZnJvbSBcIm1ldGEtZW5jXCI7XHJcblxyXG5leHBvcnQgdHlwZSBNb2RvQWxtYWNlbmFtaWVudG8gPSAnc2Vzc2lvbid8IC8vIGN1YW5kbyBzZWEgcGFyYSB1bmEgc29sYSBwZXN0YcOxYSwgc2UgdXNhIGVuIG1vZG8gZGlyZWN0byxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xvY2FsJyAgICAvLyBwYXJhIHRvZG8gZWwgZGlzcG9zaXRpdm8sIHNlIHVzYSBhbCBjYXJnYXIgaG9qYXMgZGUgcnV0YSBlbnRyZXNcclxuXHJcbmV4cG9ydCB0eXBlIElkT3BjaW9uID0gbnVtYmVyXHJcbmV4cG9ydCB0eXBlIElkT3BlcmF0aXZvID0gJ2V0b2kyMTEnfCdlYWgyMDIyJ3wnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZFZhcmlhYmxlID0gJ3YxJ3wndjInfCd2Myd8J2V0Yy4uLid8J3Zkb21pbmlvJ3wnJHAwJ1xyXG5leHBvcnQgdHlwZSBJZFByZWd1bnRhID0gJ1AxJ3wnUDInfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkQmxvcXVlID0gJ0IxJ3wnQjInfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkRm9ybXVsYXJpbyA9ICdGMSd8J0YyJ3wnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZFVuaWRhZEFuYWxpc2lzID0gJ3ZpdmllbmRhcyd8J2hvZ2FyZXMnfCdwZXJzb25hcydcclxuZXhwb3J0IHR5cGUgSWRCb3RvbkZvcm11bGFyaW8gPSAnQkY6RjEnfCdCRjpGMid8J2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRDb25zaXN0ZW5jaWEgPSAnQ09OUzEnfCdDT05TMid8J2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRUZXh0byA9ICdEMzBfUkVGJ3wnTUVTX1JFRid8J1NFTV9SRUYnfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkRmlsdHJvID0gJ0ZJTFRSTzEnIHwgJ0ZJTFRSTzInIHwgJ2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRDYXNpbGxlcm8gPSBJZFZhcmlhYmxlIHwgSWRQcmVndW50YSB8IElkQmxvcXVlIHwgSWRGb3JtdWxhcmlvIHwgSWRGaWx0cm8gfCBJZE9wY2lvblxyXG5leHBvcnQgdHlwZSBJZEZpbiA9ICdmaW4nOyAvLyBuZXZlciAvLyBUT0RPOiBwb2RlciBwb25lciAnRklOJ1xyXG5leHBvcnQgdHlwZSBJZERlc3Rpbm8gPSBJZFByZWd1bnRhIHwgSWRCbG9xdWUgfCBJZEZpbiB8IElkRmlsdHJvIFxyXG5leHBvcnQgdHlwZSBWYWxvciA9IHN0cmluZ3xudW1iZXJ8bnVsbDtcclxuZXhwb3J0IHR5cGUgVGlwb2NEZXN0aW5vcyA9ICdQJ3wnQ1AnfCdCJ3wnRklMVFJPJ3wnQkYnXHJcbmV4cG9ydCB0eXBlIFRpcG9jID0gVGlwb2NEZXN0aW5vcyB8ICdGJ3wnTyd8J09NJ3wnQ09OUycgfCdURVhUTycgfCAnTElCUkUnXHJcblxyXG5leHBvcnQgdHlwZSBJZFRhcmVhID0gJ2VuY3UnfCdyZWN1J3wnc3VwZSd8J2luZ3InO1xyXG5cclxuZXhwb3J0IHR5cGUgRmVlZGJhY2tWYXJpYWJsZSA9IEZlZWRiYWNrPElkVmFyaWFibGUsIElkRmluPlxyXG5cclxuZXhwb3J0IHR5cGUgVGlwb1ZhcmlhYmxlcyA9ICd0ZXh0byd8J251bWVybyd8J2ZlY2hhJ3wnaG9yYXMnfCdob3JhJ1xyXG5cclxuZXhwb3J0IHR5cGUgRGVzcGxpZWd1ZSA9ICdob3Jpem9udGFsJ3wnb2N1bHRhJ1xyXG5cclxuZXhwb3J0IHR5cGUgQ2FzaWxsZXJvQmFzZSA9IHtcclxuICAgIGlkX2Nhc2lsbGVybz86c3RyaW5nXHJcbiAgICB0aXBvYzpUaXBvY1xyXG4gICAgY2FzaWxsZXJvOklkQ2FzaWxsZXJvXHJcbiAgICBub21icmU6c3RyaW5nXHJcbiAgICBzYWx0bzpJZERlc3Rpbm98SWRGaW58bnVsbFxyXG4gICAgdmVyX2lkOnN0cmluZ3xudWxsXHJcbiAgICBkZXNwbGllZ3VlRW5jYWJlemFkbzonbGF0ZXJhbCd8J3N1cGVyaW9yJ3xudWxsXHJcbiAgICBkZXNwbGllZ3VlQ29udGVuaWRvOid2ZXJ0aWNhbCd8J2hvcml6b250YWwnfG51bGxcclxuICAgIGRlc3BsaWVndWVUaXBvSW5wdXQ6J3RlbCd8bnVsbFxyXG4gICAgZGVzcGxpZWd1ZU9jdWx0YTpib29sZWFufG51bGxcclxuICAgIGxlZXI6Ym9vbGVhbnxudWxsXHJcbiAgICBhY2xhcmFjaW9uOnN0cmluZ3xudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpJZFZhcmlhYmxlfG51bGxcclxuICAgIHZhcl9uYW1lPzpJZFZhcmlhYmxlfG51bGxcclxuICAgIHZhcl9uYW1lX2VzcGVjaWFsPzpzdHJpbmd8bnVsbFxyXG4gICAgdGlwb3Zhcj86VGlwb1ZhcmlhYmxlc3wnb3BjaW9uZXMnfCdzaV9ubyd8bnVsbFxyXG4gICAgY2FzaWxsZXJvcz86Q2FzaWxsZXJvc0ltcGxlbWVudGFkb3NbXXxudWxsXHJcbiAgICBleHByZXNpb25faGFiaWxpdGFyPzpzdHJpbmdcclxuICAgIGV4cHJlc2lvbl9oYWJpbGl0YXJfanM/OnN0cmluZ1xyXG4gICAgZXhwcmVzaW9uX2F1dG9pbmdyZXNhcj86c3RyaW5nXHJcbiAgICBleHByZXNpb25fYXV0b2luZ3Jlc2FyX2pzPzpzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgT3BjaW9uPUNhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonTydcclxuICAgIGNhc2lsbGVybzpJZE9wY2lvblxyXG4gICAgY2FzaWxsZXJvczpQcmVndW50YVNpbXBsZVtdXHJcbiAgICB2YXJfbmFtZT86bnVsbFxyXG4gICAgdGlwb3Zhcj86bnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86bnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBPcGNpb25TaT1PcGNpb24gJiB7XHJcbiAgICBjYXNpbGxlcm86MVxyXG4gICAgbm9tYnJlOidTw60nXHJcbiAgICBjYXNpbGxlcm9zOlByZWd1bnRhU2ltcGxlW10gXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9wY2lvbk5vPU9wY2lvbiAmIHtcclxuICAgIGNhc2lsbGVybzoyXHJcbiAgICBub21icmU6J05vJ1xyXG4gICAgY2FzaWxsZXJvczpQcmVndW50YVNpbXBsZVtdIFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBPcGNpb25NdWx0aXBsZT1DYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J09NJ1xyXG4gICAgdGlwb3Zhcjonb3BjaW9uZXMnXHJcbiAgICB2YXJfbmFtZTpJZFZhcmlhYmxlXHJcbiAgICBjYXNpbGxlcm9zOltPcGNpb25TaSwgT3BjaW9uTm9dXHJcbiAgICBjYWxjdWxhZGE/OmJvb2xlYW5cclxuICAgIGxpYnJlPzpib29sZWFuXHJcbiAgICB2YWxvcl9uc19uYzogYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFByZWd1bnRhQmFzZSA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonUCdcclxuICAgIG9wdGF0aXZvOmJvb2xlYW58bnVsbFxyXG4gICAgY2FzaWxsZXJvOklkUHJlZ3VudGFcclxuICAgIGNhbGN1bGFkYTogYm9vbGVhbnxudWxsXHJcbiAgICBsaWJyZTogYm9vbGVhbnxudWxsXHJcbiAgICB2YWxvcl9uc19uYzogYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFByZWd1bnRhU2ltcGxlID0gUHJlZ3VudGFCYXNlICYge1xyXG4gICAgdGlwb3ZhcjpUaXBvVmFyaWFibGVzXHJcbiAgICB2YXJfbmFtZTpJZFZhcmlhYmxlXHJcbiAgICBsb25naXR1ZDpzdHJpbmdcclxuICAgIHNhbHRvX25zX25jOklkVmFyaWFibGV8bnVsbFxyXG4gICAgY2FzaWxsZXJvczogUHJlZ3VudGFTaW1wbGVbXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvblNpTm8gPSBQcmVndW50YUJhc2UgJiB7XHJcbiAgICB0aXBvdmFyOidzaV9ubydcclxuICAgIHZhcl9uYW1lOklkVmFyaWFibGVcclxuICAgIHNhbHRvX25zX25jOklkVmFyaWFibGV8bnVsbFxyXG4gICAgY2FzaWxsZXJvczogW09wY2lvblNpLCBPcGNpb25Ob11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGFDb25PcGNpb25lcyA9IFByZWd1bnRhQmFzZSAmIHtcclxuICAgIHRpcG92YXI6J29wY2lvbmVzJ1xyXG4gICAgdmFyX25hbWU6SWRWYXJpYWJsZVxyXG4gICAgc2FsdG9fbnNfbmM6SWRWYXJpYWJsZXxudWxsXHJcbiAgICBjYXNpbGxlcm9zOiBPcGNpb25bXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvbk9wY2lvbmVzTXVsdGlwbGVzID0gUHJlZ3VudGFCYXNlICYge1xyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGNhc2lsbGVyb3M6IE9wY2lvbk11bHRpcGxlW11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGE9UHJlZ3VudGFTaW1wbGUgfCBQcmVndW50YUNvblNpTm8gfCBQcmVndW50YUNvbk9wY2lvbmVzIHwgUHJlZ3VudGFDb25PcGNpb25lc011bHRpcGxlc1xyXG5cclxuZXhwb3J0IHR5cGUgQ29uanVudG9QcmVndW50YXM9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonQ1AnXHJcbiAgICBjYXNpbGxlcm86SWRQcmVndW50YVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGNhc2lsbGVyb3M6UHJlZ3VudGFbXVxyXG59XHJcblxyXG4vKlxyXG5leHBvcnQgaW50ZXJmYWNlIElDb250ZW5pZG8gZXh0ZW5kcyBDYXNpbGxlcm9CYXNlIHtcclxuICAgIGNhc2lsbGVyb3M6SUNvbnRlbmlkb1tdXHJcbn1cclxuKi9cclxuXHJcbmV4cG9ydCB0eXBlIEZpbHRybyA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonRklMVFJPJ1xyXG4gICAgY2FzaWxsZXJvOklkRmlsdHJvXHJcbiAgICB2YXJfbmFtZT86bnVsbFxyXG4gICAgdGlwb3Zhcj86bnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86bnVsbFxyXG4gICAgY2FsY3VsYWRhPzpudWxsXHJcbiAgICBsaWJyZT86bnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb250ZW5pZG9Gb3JtdWxhcmlvPUJsb3F1ZXxQcmVndW50YXxDb25qdW50b1ByZWd1bnRhc3xGaWx0cm98Qm90b25Gb3JtdWxhcmlvfENvbnNpc3RlbmNpYXxUZXh0b1xyXG5cclxuZXhwb3J0IHR5cGUgQmxvcXVlID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOidCJ1xyXG4gICAgY2FzaWxsZXJvOklkQmxvcXVlXHJcbiAgICBjYXNpbGxlcm9zOkNvbnRlbmlkb0Zvcm11bGFyaW9bXVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIHVuaWRhZF9hbmFsaXNpcz86SWRVbmlkYWRBbmFsaXNpc1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb25zaXN0ZW5jaWEgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0NPTlMnXHJcbiAgICBjYXNpbGxlcm86SWRDb25zaXN0ZW5jaWFcclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgVGV4dG8gPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J1RFWFRPJ1xyXG4gICAgY2FzaWxsZXJvOklkVGV4dG9cclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgTGlicmUgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0xJQlJFJ1xyXG4gICAgY2FzaWxsZXJvOklkVGV4dG9cclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgQm90b25Gb3JtdWxhcmlvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOidCRidcclxuICAgIGNhc2lsbGVybzpJZEJvdG9uRm9ybXVsYXJpb1xyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIHByaW1lcmFfdmFyaWFibGU/Om51bGxcclxuICAgIHZhcl9uYW1lX0JGPzpJZFZhcmlhYmxlXHJcbiAgICBsb25naXR1ZD86c3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEZvcm11bGFyaW8gPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0YnXHJcbiAgICBjYXNpbGxlcm86SWRGb3JtdWxhcmlvXHJcbiAgICBmb3JtdWxhcmlvX3ByaW5jaXBhbDpib29sZWFuXHJcbiAgICBjYXNpbGxlcm9zOkNvbnRlbmlkb0Zvcm11bGFyaW9bXVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGhlcm1hbm8/OnRydWVcclxuICAgIHVuaWRhZF9hbmFsaXNpczpJZFVuaWRhZEFuYWxpc2lzXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENhc2lsbGVyb3NJbXBsZW1lbnRhZG9zPUZvcm11bGFyaW98QmxvcXVlfEZpbHRyb3xDb25qdW50b1ByZWd1bnRhc3xQcmVndW50YXxPcGNpb25NdWx0aXBsZXxPcGNpb258Qm90b25Gb3JtdWxhcmlvfENvbnNpc3RlbmNpYXxUZXh0b3xMaWJyZVxyXG5cclxuZXhwb3J0IHR5cGUgQ2FtcG9Qa1JhaXogPSAndml2aWVuZGEnfCdldGMuLi4nO1xyXG5cclxuZXhwb3J0IHR5cGUgVmFsdWVQa1JhaXogPSBJZEVuY1xyXG5cclxuZXhwb3J0IHR5cGUgRm9yUGtSYWl6PXtcclxuICAgIGZvcm11bGFyaW86SWRGb3JtdWxhcmlvXHJcbn0gJiB7XHJcbiAgICBbY2FtcG8gaW4gQ2FtcG9Qa1JhaXpdOlZhbHVlUGtSYWl6XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENhbXBvUGsgPSAndml2aWVuZGEnfCdob2dhcid8J3BlcnNvbmEnfCdldGMuLi4nO1xyXG5leHBvcnQgdHlwZSBGb3JQayA9IEZvclBrUmFpeiAmIHtcclxuICAgIFtjYW1wbyBpbiBDYW1wb1BrXT86bnVtYmVyXHJcbn1cclxuZXhwb3J0IHR5cGUgUGxhaW5Gb3JQaz0ne1wiZm9ybXVsYXJpb1wiOlwiRjpGMVwiLFwidml2aWVuZGFcIjpcIjEwMjAyXCIsXCJwZXJzb25hXCI6bnVsbH0nfCdldGMuLi4nO1xyXG5cclxuZXhwb3J0IHR5cGUgT2JqZXRvTnVtZXJhZG9PQXJyYXk8VD4gPSBUW10gfCB7W24gaW4gbnVtYmVyXTpUfVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzcHVlc3Rhc1VuYVVBID0ge1xyXG4gICAgW3ByZWd1bnRhIGluIElkVmFyaWFibGVdOlZhbG9yXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFJlc3B1ZXN0YUxhc1VBID0ge1xyXG4gICAgW3VhIGluIElkVW5pZGFkQW5hbGlzaXNdOk9iamV0b051bWVyYWRvT0FycmF5PFJlc3B1ZXN0YXM+XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFJlc3B1ZXN0YXM9IFJlc3B1ZXN0YXNVbmFVQSAmIFJlc3B1ZXN0YUxhc1VBXHJcblxyXG5leHBvcnQgdHlwZSBSZXNwdWVzdGFzUmFpej1SZXNwdWVzdGFzICYge1xyXG4gICAgcmVzdW1lbkVzdGFkbzpSZXN1bWVuRXN0YWRvXHJcbiAgICByZXN1bWVuRXN0YWRvU3VwOlJlc3VtZW5Fc3RhZG9cclxuICAgICRkaXJ0eTpib29sZWFuXHJcbiAgICBjb2ROb1JlYTogc3RyaW5nfG51bGxcclxuICAgIGNvZFJlYTogbnVtYmVyfG51bGxcclxuICAgIGNvZE5vUmVhU3VwOiBzdHJpbmd8bnVsbFxyXG4gICAgY29kUmVhU3VwOiBudW1iZXJ8bnVsbFxyXG59XHJcblxyXG4vKlxyXG4gICAgYWNsYXJhY2nDs246XHJcbiAgICB7djE6J3gnLCB2MjoneCcsIHBlcnNvbmFzOlt7cDE6MSwgcDI6J3h9LHtwMToyLCBwMjp4fV0sIG1hc2NvdGFzOltdIH1cclxuICAgIGVzdMOhIGFuaWRhZG8gcG9yIHVuaWRhZCBkZSBhbsOhbGlzaXNcclxuKi9cclxuXHJcbmV4cG9ydCB0eXBlIFVuaWRhZEFuYWxpc2lzID0ge1xyXG4gICAgdW5pZGFkX2FuYWxpc2lzOklkVW5pZGFkQW5hbGlzaXMsIFxyXG4gICAgcGFkcmU/OklkVW5pZGFkQW5hbGlzaXMsIFxyXG4gICAgcGtfYWdyZWdhZGE6Q2FtcG9QaywgXHJcbiAgICBwcmluY2lwYWw/OmJvb2xlYW4sIFxyXG4gICAgaGlqYXM6IHtbayBpbiBJZFVuaWRhZEFuYWxpc2lzXT86IFVuaWRhZEFuYWxpc2lzfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBURU0gPSB7XHJcbiAgICBub21jYWxsZTpzdHJpbmdcclxuICAgIGRvbWluaW86bnVtYmVyXHJcbiAgICBzZWN0b3I6c3RyaW5nXHJcbiAgICBlZGlmaWNpbzpzdHJpbmdcclxuICAgIGVudHJhZGE6c3RyaW5nXHJcbiAgICBucm9jYXRhc3RyYWw6c3RyaW5nXHJcbiAgICBwaXNvOnN0cmluZ1x0XHJcbiAgICBkZXBhcnRhbWVudG86c3RyaW5nXHJcbiAgICBoYWJpdGFjaW9uOnN0cmluZ1xyXG4gICAgY2FzYTpzdHJpbmdcclxuICAgIHByaW9yaWRhZDoxfDJ8M1xyXG4gICAgb2JzZXJ2YWNpb25lczpzdHJpbmdcclxuICAgIHNlbGVjY2lvbmFkbzpudW1iZXIsXHJcbiAgICBjaXRhOiBzdHJpbmcsXHJcbiAgICBjYXJnYTpzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzdW1lbkVzdGFkbyA9ICd2YWNpbycgfCAnY29uIHByb2JsZW1hcycgfCAnaW5jb21wbGV0bycgfCAnb2snIHwgJ25vIHJlYScgfCAnY2l0YSBwYWN0YWRhJztcclxuXHJcbmV4cG9ydCB0eXBlIEluZm9UYXJlYT0ge1xyXG4gICAgdGFyZWE6IElkVGFyZWFcclxuICAgIG5vdGFzPzpzdHJpbmdcclxuICAgIGZlY2hhX2FzaWduYWNpb24/OkRhdGVcclxuICAgIGFzaWduYWRvPzpzdHJpbmdcclxuICAgIG1haW5fZm9ybTogSWRGb3JtdWxhcmlvXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFZpc2l0YT17XHJcbiAgICBmZWNoYTogc3RyaW5nIHwgbnVsbFxyXG4gICAgaG9yYTogc3RyaW5nIHwgbnVsbFxyXG4gICAgaWRwZXI6IHN0cmluZyB8IG51bGxcclxuICAgIG9ic2VydmFjaW9uZXM6IHN0cmluZyB8IG51bGxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgIERhdG9zSGRyVWFQcGFsPSB7XHJcbiAgICB0YXJlYTogSW5mb1RhcmVhXHJcbiAgICB0ZW06IFRFTVxyXG4gICAgXHJcbi8qXHJcbiAgICBhY2xhcmFjacOzbjpcclxuICAgIHt2MToneCcsIHYyOid4JywgcGVyc29uYXM6W3twMToxLCBwMjoneH0se3AxOjIsIHAyOnh9XSwgbWFzY290YXM6W10gfVxyXG4gICAgZXN0w6EgYW5pZGFkbyBwb3IgdW5pZGFkIGRlIGFuw6FsaXNpc1xyXG4qL1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBJZENhcmdhPVwiMVwifFwiMlwifFwiZXRjXCJcclxuXHJcbmV4cG9ydCB0eXBlIEVzdGFkb0NhcmdhPSdyZXN1bWVuJ3wncmVsZXZhbWllbnRvJ3wncmVjaWJvJ1xyXG5cclxuZXhwb3J0IHR5cGUgQ2FyZ2E9e1xyXG4gICAgZmVjaGE6IERhdGVcclxuICAgIGVzdGFkb19jYXJnYTogRXN0YWRvQ2FyZ2FcclxuICAgIG5lY2VzYXJpYXM6IG51bWJlclxyXG4gICAgb2JzZXJ2YWNpb25lczogc3RyaW5nXHJcbiAgICByZWNlcGNpb25pc3RhOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQ2FyZ2FzPXtcclxuICAgIFtpZENhcmdhIGluIElkQ2FyZ2FdOiBDYXJnYVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBFc3RydWN0dXJhUm93VmFsaWRhdG9yPVN0cnVjdHVyZTxJZFZhcmlhYmxlLFZhbG9yLElkRmluPjtcclxuXHJcbmV4cG9ydCB0eXBlIE1vZG9EZXNwbGllZ3VlID0gJ21ldGFkYXRvcyd8J3JlbGV2YW1pZW50byd8J1BERidcclxuXHJcbmV4cG9ydCB0eXBlIEluZm9Gb3JtdWxhcmlvPXtcclxuICAgIGNhc2lsbGVyb3M6Rm9ybXVsYXJpbywgLy8gY2FzaWxsZXJvcyBhcGxhbmFkb3NcclxuICAgIGVzdHJ1Y3R1cmFSb3dWYWxpZGF0b3I6RXN0cnVjdHVyYVJvd1ZhbGlkYXRvciAvLyBlc3RydWN0dXJhIGRlIHZhcmlhYmxlcyBwYXJhIGVsIFJvd1ZhbGlkYXRvclxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBJZFJlc3VsdGFkbyA9ICdBVkVSSUdVQVInfCdUT0RPJztcclxuXHJcbmV4cG9ydCB0eXBlIFRhcmVhc0VzdHJ1Y3R1cmE9e1xyXG4gICAgW2lkVGFyZWEgaW4gSWRUYXJlYV06e1xyXG4gICAgICAgIHJlc3VsdGFkb3M6e1xyXG4gICAgICAgICAgICBbaWRSZXN1bHRhZG8gaW4gSWRSZXN1bHRhZG9dOntcclxuICAgICAgICAgICAgICAgIGRlc2NyaXBjaW9uOnN0cmluZ1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBFc3RydWN0dXJhID0ge1xyXG4gICAgZm9ybXVsYXJpb3M6eyBcclxuICAgICAgICBbbm9tYnJlRm9ybXVsYXJpbyBpbiBJZEZvcm11bGFyaW9dOkluZm9Gb3JtdWxhcmlvXHJcbiAgICB9XHJcbiAgICB1bmlkYWRlc19hbmFsaXNpczp7IFxyXG4gICAgICAgIFtpZFVuaWRhZEFuYWxpc2lzIGluIElkVW5pZGFkQW5hbGlzaXNdOiBVbmlkYWRBbmFsaXNpc1xyXG4gICAgfVxyXG4gICAgdGFyZWFzOlRhcmVhc0VzdHJ1Y3R1cmFcclxuICAgIHVhUHBhbDogSWRVbmlkYWRBbmFsaXNpc1xyXG4gICAgcGtBZ3JlZ2FkYVVhUHBhbDogQ2FtcG9Qa1JhaXpcclxuICAgIHRpbWVzdGFtcDpudW1iZXJcclxuICAgIG9wZXJhdGl2bzpJZE9wZXJhdGl2b1xyXG4gICAgY29uZmlnU29ydGVvOiBDb25maWd1cmFjaW9uU29ydGVvXHJcbiAgICBoYWJpbGl0YWNpb25Cb3RvbkZvcm11bGFyaW86IENvbmZpZ3VyYWNpb25IYWJpbGl0YXJCb3RvbkZvcm11bGFyaW9cclxuICAgIHBlcm1pdGVHZW5lcmFyTXVlc3RyYTogYm9vbGVhblxyXG4gICAgY29uUmVhSG9nYXI6IGJvb2xlYW5cclxuXHRub1JlYXM6IHsgXHJcblx0ICAgICAgbm9fcmVhOiBzdHJpbmcgIFxyXG5cdFx0ICBkZXNjcmlwY2lvbjogc3RyaW5nXHJcblx0XHQgIGdydXBvOiAgICAgc3RyaW5nICAgIFxyXG5cdFx0ICB2YXJpYWJsZTogIHN0cmluZ1xyXG5cdFx0ICB2YWxvcjogICAgIHN0cmluZ1xyXG5cdFx0ICBncnVwbzA6ICAgIHN0cmluZ1xyXG5cdH1bXVxyXG4gICAgbm9SZWFzU3VwOiB7IFxyXG4gICAgICAgIG5vX3JlYV9zdXA6IHN0cmluZyAgXHJcbiAgICAgICAgZGVzY19ub3JlYV9zdXA6IHN0cmluZ1xyXG4gICAgICAgIGdydXBvX3N1cDogICAgIHN0cmluZyAgICBcclxuICAgICAgICB2YXJpYWJsZV9zdXA6ICBzdHJpbmdcclxuICAgICAgICB2YWxvcl9zdXA6ICAgICBzdHJpbmdcclxuICAgICAgICBncnVwbzBfc3VwOiAgICBzdHJpbmdcclxuICB9W11cclxuICAgIGRlZmF1bHRJbmZvcm1hY2lvbkhkcjogRGF0b3NIZHJVYVBwYWxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSWRFbmMgPSAxMzAwMzF8MTMwMDMyO1xyXG5leHBvcnQgdHlwZSBJbmZvcm1hY2lvbkhkcj17W2VuYyBpbiBJZEVuY106IERhdG9zSGRyVWFQcGFsfVxyXG5cclxuZXhwb3J0IHR5cGUgQ2Fzb1N0YXRlPXtcclxuICAgIG9wY2lvbmVzOnsgLy8gZGF0b3MgZGUgbmF2ZWdhY2nDs24gcXVlIGVsaWplIGVsIHVzdWFyaW9cclxuICAgICAgICBmb3JQazpGb3JQa3xudWxsIC8vIMOtbmRpY2UgZGVudHJvIGRlIGxhcyB1bmlkYWRlcyBkZSBhbsOhbGlzaXMuIE51bGwgPSBlbiBob2phIGRlIHJ1dGFcclxuICAgICAgICBwaWxhRm9yUGs6Rm9yUGtbXVxyXG4gICAgICAgIG1vZG9EZXNwbGllZ3VlOk1vZG9EZXNwbGllZ3VlXHJcbiAgICAgICAgYmllbnZlbmlkbzpib29sZWFuXHJcbiAgICAgICAgbW9kb0RpcmVjdG86Ym9vbGVhblxyXG4gICAgICAgIG1vZG9Cb3JyYXJSZXNwdWVzdGE6SWRWYXJpYWJsZXxudWxsXHJcbiAgICAgICAgY29uQ2FtcG9PcGNpb25lczpib29sZWFuXHJcbiAgICAgICAgc2FsdG9BdXRvbWF0aWNvOmJvb2xlYW5cclxuICAgIH0sIFxyXG4gICAgbW9kbzp7IC8vIG5vIHNlIHBlcnNpc3RlXHJcbiAgICAgICAgZGVtbzpib29sZWFuXHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIERlZk9wZXJhdGl2byA9IHtcclxuICAgIGVzTm9SZWE6KHJlc3B1ZXN0YXM6UmVzcHVlc3Rhcyk9PiB7Y29kTm9SZWE6c3RyaW5nfG51bGwsIGVzTm9SZWE6Ym9vbGVhbn0sXHJcbiAgICBlc05vUmVhU3VwOihyZXNwdWVzdGFzOlJlc3B1ZXN0YXMpPT4ge2NvZE5vUmVhU3VwOnN0cmluZ3xudWxsLCBlc05vUmVhU3VwOmJvb2xlYW59LFxyXG4gICAgZXNSZWFsaXphZGE6KHJlc3B1ZXN0YXM6UmVzcHVlc3Rhcyk9PiB7Y29kUmVhOm51bWJlcnxudWxsLCBlc1JlYTpib29sZWFufSxcclxuICAgIGVzUmVhbGl6YWRhU3VwOihyZXNwdWVzdGFzOlJlc3B1ZXN0YXMpPT4ge2NvZFJlYVN1cDpudW1iZXJ8bnVsbCwgZXNSZWFTdXA6Ym9vbGVhbn0sXHJcbiAgICBVQXByaW5jaXBhbDogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIGRlZlVBOntbaSBpbiBJZFVuaWRhZEFuYWxpc2lzXTp7cGs6SWRWYXJpYWJsZSwgaW5jbHVpZGFzOklkVW5pZGFkQW5hbGlzaXNbXSwgaWRzRm9yOklkRm9ybXVsYXJpb1tdfX0sXHJcbiAgICBkZWZGb3I6e1tmIGluIElkRm9ybXVsYXJpb106ey8qYXJib2xVQTpJZFVuaWRhZEFuYWxpc2lzW10sICovIGhlcm1hbm8/OnRydWV9fVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBEYXRvc0J5UGFzc1BlcnNpc3RpYmxlcyA9IHtcclxuICAgIHJlc3B1ZXN0YXM6e1t1YSBpbiBJZFVuaWRhZEFuYWxpc2lzXTpSZXNwdWVzdGFzUmFpeltdfVxyXG4gICAgbW9kb0FsbWFjZW5hbWllbnRvOk1vZG9BbG1hY2VuYW1pZW50b1xyXG4gICAgcGVyc29uYTpzdHJpbmdcclxuICAgIHRhcmVhOklkVGFyZWFcclxuICAgIGlkcGVyOnN0cmluZ1xyXG4gICAgY2FyZ2FzOiBDYXJnYXNcclxuICAgIGluZm9ybWFjaW9uSGRyOiBJbmZvcm1hY2lvbkhkclxyXG4gICAgc29sb0xlY3R1cmE6IGJvb2xlYW5cclxuICAgIHRva2VuPzpzdHJpbmdcclxuICAgIG51bV9zaW5jcm8/Om51bWJlclxyXG4gICAgdGltZXN0YW1wRXN0cnVjdHVyYT86bnVtYmVyXHJcbn1cclxuXHJcbnR5cGUgQ29uZmlndXJhY2lvblNvcnRlb1RhYmxhID0ge1xyXG4gICAgbWV0b2RvOiBcInRhYmxhXCIsXHJcbiAgICBwYXJhbV9tZXRvZG86IHtcclxuICAgICAgICB0YWJsYTpzdHJpbmdbXSxcclxuICAgICAgICB2YXJfbGV0cmE6SWRWYXJpYWJsZSxcclxuICAgIH0gICAgXHJcbn1cclxuXHJcbnR5cGUgQ29uZmlndXJhY2lvblNvcnRlb0hhc2ggPSB7XHJcbiAgICBtZXRvZG86IFwiaGFzaFwiLFxyXG4gICAgcGFyYW1fbWV0b2RvOiB7XHJcbiAgICAgICAgdmFyX2NvZWY6IFtcclxuICAgICAgICAgICAge3ZhcjpJZFZhcmlhYmxlLCBjb2VmOm51bWJlcn0sXHJcbiAgICAgICAgICAgIHt2YXI6SWRWYXJpYWJsZSwgY29lZjpudW1iZXJ9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgZGl2aXNvcjogbnVtYmVyXHJcbiAgICB9ICAgIFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb25maWd1cmFjaW9uU29ydGVvID0ge1trZXkgaW4gSWRGb3JtdWxhcmlvXTpDb25maWd1cmFjaW9uU29ydGVvRm9ybXVsYXJpb31cclxuXHJcbmV4cG9ydCB0eXBlIENvbmZpZ3VyYWNpb25IYWJpbGl0YXJCb3RvbkZvcm11bGFyaW8gPSB7W2tleSBpbiBJZEZvcm11bGFyaW9dOkNvbmZpZ3VyYWNpb25IYWJpbGl0YXJCb3RvbkZvcm11bGFyaW9Gb3JtfVxyXG5cclxuZXhwb3J0IHR5cGUgQ29uZmlndXJhY2lvblNvcnRlb0Zvcm11bGFyaW8gPSB7XHJcbiAgICB1bmlkYWRfYW5hbGlzaXM6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICB1bmlkYWRfYW5hbGlzaXNfcGFkcmU6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICAvL2V4cHJfaW5jb21wbGV0aXR1ZDogc3RyaW5nIC8vXCJub3QgKHAxKSBvciBubyB0IChwMikgb3Igbm90KHAzKVwiXHJcbiAgICBleHByX2luY29tcGxldGl0dWQ6IHtcclxuICAgICAgICBba2V5IGluIG51bWJlcl06e2RvbWluaW86bnVtYmVyLCBleHByOnN0cmluZ31cclxuICAgIH0gXHJcbiAgICAvL2V4cHJfaW5jb21wbGV0aXR1ZF9qczogc3RyaW5nIC8vc2UgY3JlYSBhbCBjb21waWxhclxyXG4gICAgZXhwcl9pbmNvbXBsZXRpdHVkX2pzOiB7XHJcbiAgICAgICAgW2tleSBpbiBudW1iZXJdOntkb21pbmlvOm51bWJlciwgZXhwcjpzdHJpbmd9XHJcbiAgICB9IFxyXG4gICAgZGlzcGFyYWRvcjogSWRWYXJpYWJsZSAvL1wicDlcIlxyXG4gICAgLy9maWx0cm86IHN0cmluZyAvL1wicDM+PTE4XCJcclxuICAgIGZpbHRybzoge1xyXG4gICAgICAgIFtrZXkgaW4gbnVtYmVyXTp7ZG9taW5pbzpudW1iZXIsIGV4cHI6c3RyaW5nfVxyXG4gICAgfSBcclxuICAgIC8vZmlsdHJvX2pzOiBzdHJpbmcgLy9zZSBjcmVhIGFsIGNvbXBpbGFyXHJcbiAgICBmaWx0cm9fanM6IHtcclxuICAgICAgICBba2V5IGluIG51bWJlcl06e2RvbWluaW86bnVtYmVyLCBleHByOnN0cmluZ31cclxuICAgIH0gXHJcbiAgICBvcmRlbjoge1xyXG4gICAgICAgIHZhcmlhYmxlOklkVmFyaWFibGVcclxuICAgICAgICBvcmRlbjogMXwtMVxyXG4gICAgfVtdIC8vW1wicDNcIiwgXCJwMlwiLCBcInAxXCIsIFwicDBcIl0sIC8vIHAwIGVzIGNvbnN0cnVpZGEsIG5vIHZhIGVuIHBhcsOhbWV0cm9zLCBzZSBwb25lIHBhcmEgcXVlIGVsIG9yZGVuIHNlYSBkZXRlcm1pbsOtc3RpY29cclxuICAgIHBhcmFtZXRyb3M6SWRWYXJpYWJsZVtdLy8gW1wicDFcIixcInAyXCIsXCJwM1wiLCBcInA0XCIsIFwicDVcIiwgXCJwNlwiXSwgLy8gdmFyaWFibGVzIHF1ZSBhbnVsYW4gYWwgZGlzcGFyYWRvclxyXG4gICAgY2FudGlkYWRfc29ydGVhYmxlczogSWRWYXJpYWJsZVxyXG4gICAgY2FudGlkYWRfdG90YWw6IElkVmFyaWFibGVcclxuICAgIHJlc3VsdGFkbzogSWRWYXJpYWJsZSAvL1wicDExXCJcclxuICAgIHJlc3VsdGFkb19tYW51YWw6IElkVmFyaWFibGUgLy9cInAxMVwiXHJcbiAgICBzb3J0ZWFkb19tb3N0cmFyPzoge3NvdXJjZTpJZFZhcmlhYmxlLCB0YXJnZXQ6SWRWYXJpYWJsZX1bXSxcclxuICAgIGluY29tcGxldGFzOiBJZFZhcmlhYmxlXHJcbiAgICB2YXJpYWJsZUJvdG9uRm9ybXVsYXJpb1VBOiBJZFZhcmlhYmxlLy8nJEIuRjpTMV9QJ1xyXG4gICAgdmFyaWFibGVCb3RvbkZvcm11bGFyaW9VQUluZGl2aWR1YWw/OiBJZFZhcmlhYmxlIC8vJyRCLkY6STEnXHJcbiAgICBpZF9mb3JtdWxhcmlvX2luZGl2aWR1YWw/OiBJZEZvcm11bGFyaW8gLy8gJ0Y6STEnXHJcbiAgICBpZF9mb3JtdWxhcmlvX3BhZHJlPzogSWRGb3JtdWxhcmlvIC8vICdGOlMxJ1xyXG59ICYgKENvbmZpZ3VyYWNpb25Tb3J0ZW9IYXNoIHwgQ29uZmlndXJhY2lvblNvcnRlb1RhYmxhKVxyXG5cclxuZXhwb3J0IHR5cGUgQ29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpb0Zvcm0gPSB7XHJcbiAgICB1bmlkYWRfYW5hbGlzaXM6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICBleHByX2hhYmlsaXRhcl9ib3Rvbjogc3RyaW5nLFxyXG4gICAgZXhwcl9oYWJpbGl0YXJfYm90b25fanM6IHN0cmluZyxcclxuICAgIGhhYmlsaXRhcl9hZ3JlZ2FyX2xpc3RvOiBib29sZWFuXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB0b1BsYWluRm9yUGsoZm9yUGs6Rm9yUGspOlBsYWluRm9yUGt7XHJcbiAgICAvLyBAdHMtaWdub3JlIHNhYmVtb3MgcXVlIGhheSBxdWUgaGFjZXIgdW4gSlNPTlxyXG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGZvclBrKTtcclxufVxyXG5cclxuZXhwb3J0IHZhciBpdGVyYXRvcjo8VD4obzpPYmpldG9OdW1lcmFkb09BcnJheTxUPik9Pkl0ZXJhYmxlPFQ+ID0gTGlrZUFyLml0ZXJhdG9yXHJcbmV4cG9ydCB2YXIgZW1wdHk6PFQ+KG86T2JqZXRvTnVtZXJhZG9PQXJyYXk8VD58bnVsbHx1bmRlZmluZWQpPT5ib29sZWFuID0gTGlrZUFyLmVtcHR5XHJcblxyXG5kZWNsYXJlIGdsb2JhbCB7XHJcbiAgICBuYW1lc3BhY2UgbXlPd257XHJcbiAgICAgICAgaW50ZXJmYWNlIEFkZHJQYXJhbXMge1xyXG4gICAgICAgICAgICBzdGF0ZV9mb3JQazpzdHJpbmdcclxuICAgICAgICAgICAgc3RhdGVfcGlsYUZvclBrOnN0cmluZ1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRGlyZWNjaW9uQWNjaW9uID0gJ2F2YW5jZScgfCAncmV0cm9jZXNvJyB8ICdibGFucXVlbydcclxuXHJcbmV4cG9ydCB0eXBlIEVzdGFkb0FjY2lvbiA9IHtcclxuICAgIG9wZXJhdGl2bzogc3RyaW5nXHJcbiAgICBlc3RhZG86IHN0cmluZ1xyXG4gICAgZWFjY2lvbjogc3RyaW5nXHJcbiAgICBjb25kaWNpb246IHN0cmluZ1xyXG4gICAgZXN0YWRvX2Rlc3Rpbm86IHN0cmluZ1xyXG4gICAgZWFjY2lvbl9kaXJlY2Npb246IERpcmVjY2lvbkFjY2lvblxyXG4gICAgcGF0aF9pY29ub19zdmc6IHN0cmluZ1xyXG4gICAgbm9tYnJlX3Byb2NlZHVyZTogc3RyaW5nXHJcbiAgICBub21icmVfd3NjcmVlbjogc3RyaW5nXHJcbiAgICBkZXNhY3RpdmFfYm90b246IGJvb2xlYW5cclxuICAgIGNvbmZpcm1hOiBib29sZWFuXHJcbn0iXX0=
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwb3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdW5sb2dnZWQvdGlwb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUFFYixrQ0FBa0M7SUF5ZWxDLFNBQWdCLFlBQVksQ0FBQyxLQUFXO1FBQ3BDLCtDQUErQztRQUMvQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUhELG9DQUdDO0lBRVUsUUFBQSxRQUFRLEdBQStDLE1BQU0sQ0FBQyxRQUFRLENBQUE7SUFDdEUsUUFBQSxLQUFLLEdBQTBELE1BQU0sQ0FBQyxLQUFLLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuaW1wb3J0IHtTdHJ1Y3R1cmUsIEZlZWRiYWNrfSBmcm9tIFwicm93LXZhbGlkYXRvclwiO1xyXG5pbXBvcnQgKiBhcyBMaWtlQXIgZnJvbSBcImxpa2UtYXJcIjtcclxuaW1wb3J0IHsgT3BlcmF0aXZvR2VuZXJhdG9yIH0gZnJvbSBcIm1ldGEtZW5jXCI7XHJcblxyXG5leHBvcnQgdHlwZSBNb2RvQWxtYWNlbmFtaWVudG8gPSAnc2Vzc2lvbid8IC8vIGN1YW5kbyBzZWEgcGFyYSB1bmEgc29sYSBwZXN0YcOxYSwgc2UgdXNhIGVuIG1vZG8gZGlyZWN0byxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xvY2FsJyAgICAvLyBwYXJhIHRvZG8gZWwgZGlzcG9zaXRpdm8sIHNlIHVzYSBhbCBjYXJnYXIgaG9qYXMgZGUgcnV0YSBlbnRyZXNcclxuXHJcbmV4cG9ydCB0eXBlIElkT3BjaW9uID0gbnVtYmVyXHJcbmV4cG9ydCB0eXBlIElkT3BlcmF0aXZvID0gJ2V0b2kyMTEnfCdlYWgyMDIyJ3wnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZFZhcmlhYmxlID0gJ3YxJ3wndjInfCd2Myd8J2V0Yy4uLid8J3Zkb21pbmlvJ3wnJHAwJ1xyXG5leHBvcnQgdHlwZSBJZFByZWd1bnRhID0gJ1AxJ3wnUDInfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkQmxvcXVlID0gJ0IxJ3wnQjInfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkRm9ybXVsYXJpbyA9ICdGMSd8J0YyJ3wnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZFVuaWRhZEFuYWxpc2lzID0gJ3ZpdmllbmRhcyd8J2hvZ2FyZXMnfCdwZXJzb25hcydcclxuZXhwb3J0IHR5cGUgSWRCb3RvbkZvcm11bGFyaW8gPSAnQkY6RjEnfCdCRjpGMid8J2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRDb25zaXN0ZW5jaWEgPSAnQ09OUzEnfCdDT05TMid8J2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRUZXh0byA9ICdEMzBfUkVGJ3wnTUVTX1JFRid8J1NFTV9SRUYnfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkRmlsdHJvID0gJ0ZJTFRSTzEnIHwgJ0ZJTFRSTzInIHwgJ2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRDYXNpbGxlcm8gPSBJZFZhcmlhYmxlIHwgSWRQcmVndW50YSB8IElkQmxvcXVlIHwgSWRGb3JtdWxhcmlvIHwgSWRGaWx0cm8gfCBJZE9wY2lvblxyXG5leHBvcnQgdHlwZSBJZEZpbiA9ICdmaW4nOyAvLyBuZXZlciAvLyBUT0RPOiBwb2RlciBwb25lciAnRklOJ1xyXG5leHBvcnQgdHlwZSBJZERlc3Rpbm8gPSBJZFByZWd1bnRhIHwgSWRCbG9xdWUgfCBJZEZpbiB8IElkRmlsdHJvIFxyXG5leHBvcnQgdHlwZSBWYWxvciA9IHN0cmluZ3xudW1iZXJ8bnVsbDtcclxuZXhwb3J0IHR5cGUgVGlwb2NEZXN0aW5vcyA9ICdQJ3wnQ1AnfCdCJ3wnRklMVFJPJ3wnQkYnXHJcbmV4cG9ydCB0eXBlIFRpcG9jID0gVGlwb2NEZXN0aW5vcyB8ICdGJ3wnTyd8J09NJ3wnQ09OUycgfCdURVhUTycgfCAnTElCUkUnIHwgJ1BNQVRSSVonXHJcblxyXG5leHBvcnQgdHlwZSBJZFRhcmVhID0gJ2VuY3UnfCdyZWN1J3wnc3VwZSd8J2luZ3InO1xyXG5cclxuZXhwb3J0IHR5cGUgRmVlZGJhY2tWYXJpYWJsZSA9IEZlZWRiYWNrPElkVmFyaWFibGUsIElkRmluPlxyXG5cclxuZXhwb3J0IHR5cGUgVGlwb1ZhcmlhYmxlcyA9ICd0ZXh0byd8J251bWVybyd8J2ZlY2hhJ3wnaG9yYXMnfCdob3JhJ1xyXG5cclxuZXhwb3J0IHR5cGUgRGVzcGxpZWd1ZSA9ICdob3Jpem9udGFsJ3wnb2N1bHRhJ1xyXG5cclxuZXhwb3J0IHR5cGUgQ2FzaWxsZXJvQmFzZSA9IHtcclxuICAgIGlkX2Nhc2lsbGVybz86c3RyaW5nXHJcbiAgICB0aXBvYzpUaXBvY1xyXG4gICAgY2FzaWxsZXJvOklkQ2FzaWxsZXJvXHJcbiAgICBub21icmU6c3RyaW5nXHJcbiAgICBzYWx0bzpJZERlc3Rpbm98SWRGaW58bnVsbFxyXG4gICAgdmVyX2lkOnN0cmluZ3xudWxsXHJcbiAgICBkZXNwbGllZ3VlRW5jYWJlemFkbzonbGF0ZXJhbCd8J3N1cGVyaW9yJ3xudWxsXHJcbiAgICBkZXNwbGllZ3VlQ29udGVuaWRvOid2ZXJ0aWNhbCd8J2hvcml6b250YWwnfG51bGxcclxuICAgIGRlc3BsaWVndWVUaXBvSW5wdXQ6J3RlbCd8bnVsbFxyXG4gICAgZGVzcGxpZWd1ZU9jdWx0YTpib29sZWFufG51bGxcclxuICAgIGxlZXI6Ym9vbGVhbnxudWxsXHJcbiAgICBhY2xhcmFjaW9uOnN0cmluZ3xudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpJZFZhcmlhYmxlfG51bGxcclxuICAgIHZhcl9uYW1lPzpJZFZhcmlhYmxlfG51bGxcclxuICAgIHZhcl9uYW1lX2VzcGVjaWFsPzpzdHJpbmd8bnVsbFxyXG4gICAgdGlwb3Zhcj86VGlwb1ZhcmlhYmxlc3wnb3BjaW9uZXMnfCdzaV9ubyd8bnVsbFxyXG4gICAgY2FzaWxsZXJvcz86Q2FzaWxsZXJvc0ltcGxlbWVudGFkb3NbXXxudWxsXHJcbiAgICBleHByZXNpb25faGFiaWxpdGFyPzpzdHJpbmdcclxuICAgIGV4cHJlc2lvbl9oYWJpbGl0YXJfanM/OnN0cmluZ1xyXG4gICAgZXhwcmVzaW9uX2F1dG9pbmdyZXNhcj86c3RyaW5nXHJcbiAgICBleHByZXNpb25fYXV0b2luZ3Jlc2FyX2pzPzpzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgT3BjaW9uPUNhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonTydcclxuICAgIGNhc2lsbGVybzpJZE9wY2lvblxyXG4gICAgY2FzaWxsZXJvczpQcmVndW50YVNpbXBsZVtdXHJcbiAgICB2YXJfbmFtZT86bnVsbFxyXG4gICAgdGlwb3Zhcj86bnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86bnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBPcGNpb25TaT1PcGNpb24gJiB7XHJcbiAgICBjYXNpbGxlcm86MVxyXG4gICAgbm9tYnJlOidTw60nXHJcbiAgICBjYXNpbGxlcm9zOlByZWd1bnRhU2ltcGxlW10gXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9wY2lvbk5vPU9wY2lvbiAmIHtcclxuICAgIGNhc2lsbGVybzoyXHJcbiAgICBub21icmU6J05vJ1xyXG4gICAgY2FzaWxsZXJvczpQcmVndW50YVNpbXBsZVtdIFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBPcGNpb25NdWx0aXBsZT1DYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J09NJ1xyXG4gICAgdGlwb3Zhcjonb3BjaW9uZXMnXHJcbiAgICB2YXJfbmFtZTpJZFZhcmlhYmxlXHJcbiAgICBjYXNpbGxlcm9zOltPcGNpb25TaSwgT3BjaW9uTm9dXHJcbiAgICBjYWxjdWxhZGE/OmJvb2xlYW5cclxuICAgIGxpYnJlPzpib29sZWFuXHJcbiAgICB2YWxvcl9uc19uYzogYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFByZWd1bnRhQmFzZSA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonUCdcclxuICAgIG9wdGF0aXZvOmJvb2xlYW58bnVsbFxyXG4gICAgY2FzaWxsZXJvOklkUHJlZ3VudGFcclxuICAgIGNhbGN1bGFkYTogYm9vbGVhbnxudWxsXHJcbiAgICBsaWJyZTogYm9vbGVhbnxudWxsXHJcbiAgICB2YWxvcl9uc19uYzogYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFByZWd1bnRhU2ltcGxlID0gUHJlZ3VudGFCYXNlICYge1xyXG4gICAgdGlwb3ZhcjpUaXBvVmFyaWFibGVzXHJcbiAgICB2YXJfbmFtZTpJZFZhcmlhYmxlXHJcbiAgICBsb25naXR1ZDpzdHJpbmdcclxuICAgIHNhbHRvX25zX25jOklkVmFyaWFibGV8bnVsbFxyXG4gICAgY2FzaWxsZXJvczogUHJlZ3VudGFTaW1wbGVbXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvblNpTm8gPSBQcmVndW50YUJhc2UgJiB7XHJcbiAgICB0aXBvdmFyOidzaV9ubydcclxuICAgIHZhcl9uYW1lOklkVmFyaWFibGVcclxuICAgIHNhbHRvX25zX25jOklkVmFyaWFibGV8bnVsbFxyXG4gICAgY2FzaWxsZXJvczogW09wY2lvblNpLCBPcGNpb25Ob11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGFDb25PcGNpb25lcyA9IFByZWd1bnRhQmFzZSAmIHtcclxuICAgIHRpcG92YXI6J29wY2lvbmVzJ1xyXG4gICAgdmFyX25hbWU6SWRWYXJpYWJsZVxyXG4gICAgc2FsdG9fbnNfbmM6SWRWYXJpYWJsZXxudWxsXHJcbiAgICBjYXNpbGxlcm9zOiBPcGNpb25bXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvbk9wY2lvbmVzTXVsdGlwbGVzID0gUHJlZ3VudGFCYXNlICYge1xyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGNhc2lsbGVyb3M6IE9wY2lvbk11bHRpcGxlW11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGE9UHJlZ3VudGFTaW1wbGUgfCBQcmVndW50YUNvblNpTm8gfCBQcmVndW50YUNvbk9wY2lvbmVzIHwgUHJlZ3VudGFDb25PcGNpb25lc011bHRpcGxlc1xyXG5cclxuZXhwb3J0IHR5cGUgQ29uanVudG9QcmVndW50YXM9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonQ1AnXHJcbiAgICBjYXNpbGxlcm86SWRQcmVndW50YVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGNhc2lsbGVyb3M6UHJlZ3VudGFbXVxyXG59XHJcblxyXG4vKlxyXG5leHBvcnQgaW50ZXJmYWNlIElDb250ZW5pZG8gZXh0ZW5kcyBDYXNpbGxlcm9CYXNlIHtcclxuICAgIGNhc2lsbGVyb3M6SUNvbnRlbmlkb1tdXHJcbn1cclxuKi9cclxuXHJcbmV4cG9ydCB0eXBlIEZpbHRybyA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonRklMVFJPJ1xyXG4gICAgY2FzaWxsZXJvOklkRmlsdHJvXHJcbiAgICB2YXJfbmFtZT86bnVsbFxyXG4gICAgdGlwb3Zhcj86bnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86bnVsbFxyXG4gICAgY2FsY3VsYWRhPzpudWxsXHJcbiAgICBsaWJyZT86bnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb250ZW5pZG9Gb3JtdWxhcmlvPUJsb3F1ZXxQcmVndW50YXxDb25qdW50b1ByZWd1bnRhc3xGaWx0cm98Qm90b25Gb3JtdWxhcmlvfENvbnNpc3RlbmNpYXxUZXh0b1xyXG5cclxuZXhwb3J0IHR5cGUgQmxvcXVlID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOidCJ1xyXG4gICAgY2FzaWxsZXJvOklkQmxvcXVlXHJcbiAgICBjYXNpbGxlcm9zOkNvbnRlbmlkb0Zvcm11bGFyaW9bXVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIHVuaWRhZF9hbmFsaXNpcz86SWRVbmlkYWRBbmFsaXNpc1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb25zaXN0ZW5jaWEgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0NPTlMnXHJcbiAgICBjYXNpbGxlcm86SWRDb25zaXN0ZW5jaWFcclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgVGV4dG8gPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J1RFWFRPJ1xyXG4gICAgY2FzaWxsZXJvOklkVGV4dG9cclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgTGlicmUgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0xJQlJFJ1xyXG4gICAgY2FzaWxsZXJvOklkVGV4dG9cclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgQm90b25Gb3JtdWxhcmlvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOidCRidcclxuICAgIGNhc2lsbGVybzpJZEJvdG9uRm9ybXVsYXJpb1xyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIHByaW1lcmFfdmFyaWFibGU/Om51bGxcclxuICAgIHZhcl9uYW1lX0JGPzpJZFZhcmlhYmxlXHJcbiAgICBsb25naXR1ZD86c3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEZvcm11bGFyaW8gPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0YnXHJcbiAgICBjYXNpbGxlcm86SWRGb3JtdWxhcmlvXHJcbiAgICBmb3JtdWxhcmlvX3ByaW5jaXBhbDpib29sZWFuXHJcbiAgICBjYXNpbGxlcm9zOkNvbnRlbmlkb0Zvcm11bGFyaW9bXVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGhlcm1hbm8/OnRydWVcclxuICAgIHVuaWRhZF9hbmFsaXNpczpJZFVuaWRhZEFuYWxpc2lzXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFBNYXRyaXogPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J1BNQVRSSVonXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENhc2lsbGVyb3NJbXBsZW1lbnRhZG9zPUZvcm11bGFyaW98QmxvcXVlfEZpbHRyb3xDb25qdW50b1ByZWd1bnRhc3xQcmVndW50YXxPcGNpb25NdWx0aXBsZXxPcGNpb258Qm90b25Gb3JtdWxhcmlvfENvbnNpc3RlbmNpYXxUZXh0b3xMaWJyZXxQTWF0cml6XHJcblxyXG5leHBvcnQgdHlwZSBDYW1wb1BrUmFpeiA9ICd2aXZpZW5kYSd8J2V0Yy4uLic7XHJcblxyXG5leHBvcnQgdHlwZSBWYWx1ZVBrUmFpeiA9IElkRW5jXHJcblxyXG5leHBvcnQgdHlwZSBGb3JQa1JhaXo9e1xyXG4gICAgZm9ybXVsYXJpbzpJZEZvcm11bGFyaW9cclxufSAmIHtcclxuICAgIFtjYW1wbyBpbiBDYW1wb1BrUmFpel06VmFsdWVQa1JhaXpcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQ2FtcG9QayA9ICd2aXZpZW5kYSd8J2hvZ2FyJ3wncGVyc29uYSd8J2V0Yy4uLic7XHJcbmV4cG9ydCB0eXBlIEZvclBrID0gRm9yUGtSYWl6ICYge1xyXG4gICAgW2NhbXBvIGluIENhbXBvUGtdPzpudW1iZXJcclxufVxyXG5leHBvcnQgdHlwZSBQbGFpbkZvclBrPSd7XCJmb3JtdWxhcmlvXCI6XCJGOkYxXCIsXCJ2aXZpZW5kYVwiOlwiMTAyMDJcIixcInBlcnNvbmFcIjpudWxsfSd8J2V0Yy4uLic7XHJcblxyXG5leHBvcnQgdHlwZSBPYmpldG9OdW1lcmFkb09BcnJheTxUPiA9IFRbXSB8IHtbbiBpbiBudW1iZXJdOlR9XHJcblxyXG5leHBvcnQgdHlwZSBSZXNwdWVzdGFzVW5hVUEgPSB7XHJcbiAgICBbcHJlZ3VudGEgaW4gSWRWYXJpYWJsZV06VmFsb3JcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzcHVlc3RhTGFzVUEgPSB7XHJcbiAgICBbdWEgaW4gSWRVbmlkYWRBbmFsaXNpc106T2JqZXRvTnVtZXJhZG9PQXJyYXk8UmVzcHVlc3Rhcz5cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzcHVlc3Rhcz0gUmVzcHVlc3Rhc1VuYVVBICYgUmVzcHVlc3RhTGFzVUFcclxuXHJcbmV4cG9ydCB0eXBlIFJlc3B1ZXN0YXNSYWl6PVJlc3B1ZXN0YXMgJiB7XHJcbiAgICByZXN1bWVuRXN0YWRvOlJlc3VtZW5Fc3RhZG9cclxuICAgIHJlc3VtZW5Fc3RhZG9TdXA6UmVzdW1lbkVzdGFkb1xyXG4gICAgJGRpcnR5OmJvb2xlYW5cclxuICAgIGNvZE5vUmVhOiBzdHJpbmd8bnVsbFxyXG4gICAgY29kUmVhOiBudW1iZXJ8bnVsbFxyXG4gICAgY29kTm9SZWFTdXA6IHN0cmluZ3xudWxsXHJcbiAgICBjb2RSZWFTdXA6IG51bWJlcnxudWxsXHJcbn1cclxuXHJcbi8qXHJcbiAgICBhY2xhcmFjacOzbjpcclxuICAgIHt2MToneCcsIHYyOid4JywgcGVyc29uYXM6W3twMToxLCBwMjoneH0se3AxOjIsIHAyOnh9XSwgbWFzY290YXM6W10gfVxyXG4gICAgZXN0w6EgYW5pZGFkbyBwb3IgdW5pZGFkIGRlIGFuw6FsaXNpc1xyXG4qL1xyXG5cclxuZXhwb3J0IHR5cGUgVW5pZGFkQW5hbGlzaXMgPSB7XHJcbiAgICB1bmlkYWRfYW5hbGlzaXM6SWRVbmlkYWRBbmFsaXNpcywgXHJcbiAgICBwYWRyZT86SWRVbmlkYWRBbmFsaXNpcywgXHJcbiAgICBwa19hZ3JlZ2FkYTpDYW1wb1BrLCBcclxuICAgIHByaW5jaXBhbD86Ym9vbGVhbiwgXHJcbiAgICBoaWphczoge1trIGluIElkVW5pZGFkQW5hbGlzaXNdPzogVW5pZGFkQW5hbGlzaXN9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFRFTSA9IHtcclxuICAgIG5vbWNhbGxlOnN0cmluZ1xyXG4gICAgZG9taW5pbzpudW1iZXJcclxuICAgIHNlY3RvcjpzdHJpbmdcclxuICAgIGVkaWZpY2lvOnN0cmluZ1xyXG4gICAgZW50cmFkYTpzdHJpbmdcclxuICAgIG5yb2NhdGFzdHJhbDpzdHJpbmdcclxuICAgIHBpc286c3RyaW5nXHRcclxuICAgIGRlcGFydGFtZW50bzpzdHJpbmdcclxuICAgIGhhYml0YWNpb246c3RyaW5nXHJcbiAgICBjYXNhOnN0cmluZ1xyXG4gICAgcHJpb3JpZGFkOjF8MnwzXHJcbiAgICBvYnNlcnZhY2lvbmVzOnN0cmluZ1xyXG4gICAgc2VsZWNjaW9uYWRvOm51bWJlcixcclxuICAgIGNpdGE6IHN0cmluZyxcclxuICAgIGNhcmdhOnN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBSZXN1bWVuRXN0YWRvID0gJ3ZhY2lvJyB8ICdjb24gcHJvYmxlbWFzJyB8ICdpbmNvbXBsZXRvJyB8ICdvaycgfCAnbm8gcmVhJyB8ICdjaXRhIHBhY3RhZGEnO1xyXG5cclxuZXhwb3J0IHR5cGUgSW5mb1RhcmVhPSB7XHJcbiAgICB0YXJlYTogSWRUYXJlYVxyXG4gICAgbm90YXM/OnN0cmluZ1xyXG4gICAgZmVjaGFfYXNpZ25hY2lvbj86RGF0ZVxyXG4gICAgYXNpZ25hZG8/OnN0cmluZ1xyXG4gICAgbWFpbl9mb3JtOiBJZEZvcm11bGFyaW9cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgVmlzaXRhPXtcclxuICAgIGZlY2hhOiBzdHJpbmcgfCBudWxsXHJcbiAgICBob3JhOiBzdHJpbmcgfCBudWxsXHJcbiAgICBpZHBlcjogc3RyaW5nIHwgbnVsbFxyXG4gICAgb2JzZXJ2YWNpb25lczogc3RyaW5nIHwgbnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSAgRGF0b3NIZHJVYVBwYWw9IHtcclxuICAgIHRhcmVhOiBJbmZvVGFyZWFcclxuICAgIHRlbTogVEVNXHJcbiAgICBcclxuLypcclxuICAgIGFjbGFyYWNpw7NuOlxyXG4gICAge3YxOid4JywgdjI6J3gnLCBwZXJzb25hczpbe3AxOjEsIHAyOid4fSx7cDE6MiwgcDI6eH1dLCBtYXNjb3RhczpbXSB9XHJcbiAgICBlc3TDoSBhbmlkYWRvIHBvciB1bmlkYWQgZGUgYW7DoWxpc2lzXHJcbiovXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIElkQ2FyZ2E9XCIxXCJ8XCIyXCJ8XCJldGNcIlxyXG5cclxuZXhwb3J0IHR5cGUgRXN0YWRvQ2FyZ2E9J3Jlc3VtZW4nfCdyZWxldmFtaWVudG8nfCdyZWNpYm8nXHJcblxyXG5leHBvcnQgdHlwZSBDYXJnYT17XHJcbiAgICBmZWNoYTogRGF0ZVxyXG4gICAgZXN0YWRvX2NhcmdhOiBFc3RhZG9DYXJnYVxyXG4gICAgbmVjZXNhcmlhczogbnVtYmVyXHJcbiAgICBvYnNlcnZhY2lvbmVzOiBzdHJpbmdcclxuICAgIHJlY2VwY2lvbmlzdGE6IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDYXJnYXM9e1xyXG4gICAgW2lkQ2FyZ2EgaW4gSWRDYXJnYV06IENhcmdhXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEVzdHJ1Y3R1cmFSb3dWYWxpZGF0b3I9U3RydWN0dXJlPElkVmFyaWFibGUsVmFsb3IsSWRGaW4+O1xyXG5cclxuZXhwb3J0IHR5cGUgTW9kb0Rlc3BsaWVndWUgPSAnbWV0YWRhdG9zJ3wncmVsZXZhbWllbnRvJ3wnUERGJ1xyXG5cclxuZXhwb3J0IHR5cGUgSW5mb0Zvcm11bGFyaW89e1xyXG4gICAgY2FzaWxsZXJvczpGb3JtdWxhcmlvLCAvLyBjYXNpbGxlcm9zIGFwbGFuYWRvc1xyXG4gICAgZXN0cnVjdHVyYVJvd1ZhbGlkYXRvcjpFc3RydWN0dXJhUm93VmFsaWRhdG9yIC8vIGVzdHJ1Y3R1cmEgZGUgdmFyaWFibGVzIHBhcmEgZWwgUm93VmFsaWRhdG9yXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIElkUmVzdWx0YWRvID0gJ0FWRVJJR1VBUid8J1RPRE8nO1xyXG5cclxuZXhwb3J0IHR5cGUgVGFyZWFzRXN0cnVjdHVyYT17XHJcbiAgICBbaWRUYXJlYSBpbiBJZFRhcmVhXTp7XHJcbiAgICAgICAgcmVzdWx0YWRvczp7XHJcbiAgICAgICAgICAgIFtpZFJlc3VsdGFkbyBpbiBJZFJlc3VsdGFkb106e1xyXG4gICAgICAgICAgICAgICAgZGVzY3JpcGNpb246c3RyaW5nXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEVzdHJ1Y3R1cmEgPSB7XHJcbiAgICBmb3JtdWxhcmlvczp7IFxyXG4gICAgICAgIFtub21icmVGb3JtdWxhcmlvIGluIElkRm9ybXVsYXJpb106SW5mb0Zvcm11bGFyaW9cclxuICAgIH1cclxuICAgIHVuaWRhZGVzX2FuYWxpc2lzOnsgXHJcbiAgICAgICAgW2lkVW5pZGFkQW5hbGlzaXMgaW4gSWRVbmlkYWRBbmFsaXNpc106IFVuaWRhZEFuYWxpc2lzXHJcbiAgICB9XHJcbiAgICB0YXJlYXM6VGFyZWFzRXN0cnVjdHVyYVxyXG4gICAgdWFQcGFsOiBJZFVuaWRhZEFuYWxpc2lzXHJcbiAgICBwa0FncmVnYWRhVWFQcGFsOiBDYW1wb1BrUmFpelxyXG4gICAgdGltZXN0YW1wOm51bWJlclxyXG4gICAgb3BlcmF0aXZvOklkT3BlcmF0aXZvXHJcbiAgICBjb25maWdTb3J0ZW86IENvbmZpZ3VyYWNpb25Tb3J0ZW9cclxuICAgIGhhYmlsaXRhY2lvbkJvdG9uRm9ybXVsYXJpbzogQ29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpb1xyXG4gICAgcGVybWl0ZUdlbmVyYXJNdWVzdHJhOiBib29sZWFuXHJcbiAgICBjb25SZWFIb2dhcjogYm9vbGVhblxyXG5cdG5vUmVhczogeyBcclxuXHQgICAgICBub19yZWE6IHN0cmluZyAgXHJcblx0XHQgIGRlc2NyaXBjaW9uOiBzdHJpbmdcclxuXHRcdCAgZ3J1cG86ICAgICBzdHJpbmcgICAgXHJcblx0XHQgIHZhcmlhYmxlOiAgc3RyaW5nXHJcblx0XHQgIHZhbG9yOiAgICAgc3RyaW5nXHJcblx0XHQgIGdydXBvMDogICAgc3RyaW5nXHJcblx0fVtdXHJcbiAgICBub1JlYXNTdXA6IHsgXHJcbiAgICAgICAgbm9fcmVhX3N1cDogc3RyaW5nICBcclxuICAgICAgICBkZXNjX25vcmVhX3N1cDogc3RyaW5nXHJcbiAgICAgICAgZ3J1cG9fc3VwOiAgICAgc3RyaW5nICAgIFxyXG4gICAgICAgIHZhcmlhYmxlX3N1cDogIHN0cmluZ1xyXG4gICAgICAgIHZhbG9yX3N1cDogICAgIHN0cmluZ1xyXG4gICAgICAgIGdydXBvMF9zdXA6ICAgIHN0cmluZ1xyXG4gIH1bXVxyXG4gICAgZGVmYXVsdEluZm9ybWFjaW9uSGRyOiBEYXRvc0hkclVhUHBhbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBJZEVuYyA9IDEzMDAzMXwxMzAwMzI7XHJcbmV4cG9ydCB0eXBlIEluZm9ybWFjaW9uSGRyPXtbZW5jIGluIElkRW5jXTogRGF0b3NIZHJVYVBwYWx9XHJcblxyXG5leHBvcnQgdHlwZSBDYXNvU3RhdGU9e1xyXG4gICAgb3BjaW9uZXM6eyAvLyBkYXRvcyBkZSBuYXZlZ2FjacOzbiBxdWUgZWxpamUgZWwgdXN1YXJpb1xyXG4gICAgICAgIGZvclBrOkZvclBrfG51bGwgLy8gw61uZGljZSBkZW50cm8gZGUgbGFzIHVuaWRhZGVzIGRlIGFuw6FsaXNpcy4gTnVsbCA9IGVuIGhvamEgZGUgcnV0YVxyXG4gICAgICAgIHBpbGFGb3JQazpGb3JQa1tdXHJcbiAgICAgICAgbW9kb0Rlc3BsaWVndWU6TW9kb0Rlc3BsaWVndWVcclxuICAgICAgICBiaWVudmVuaWRvOmJvb2xlYW5cclxuICAgICAgICBtb2RvRGlyZWN0bzpib29sZWFuXHJcbiAgICAgICAgbW9kb0JvcnJhclJlc3B1ZXN0YTpJZFZhcmlhYmxlfG51bGxcclxuICAgICAgICBjb25DYW1wb09wY2lvbmVzOmJvb2xlYW5cclxuICAgICAgICBzYWx0b0F1dG9tYXRpY286Ym9vbGVhblxyXG4gICAgfSwgXHJcbiAgICBtb2RvOnsgLy8gbm8gc2UgcGVyc2lzdGVcclxuICAgICAgICBkZW1vOmJvb2xlYW5cclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRGVmT3BlcmF0aXZvID0ge1xyXG4gICAgZXNOb1JlYToocmVzcHVlc3RhczpSZXNwdWVzdGFzKT0+IHtjb2ROb1JlYTpzdHJpbmd8bnVsbCwgZXNOb1JlYTpib29sZWFufSxcclxuICAgIGVzTm9SZWFTdXA6KHJlc3B1ZXN0YXM6UmVzcHVlc3Rhcyk9PiB7Y29kTm9SZWFTdXA6c3RyaW5nfG51bGwsIGVzTm9SZWFTdXA6Ym9vbGVhbn0sXHJcbiAgICBlc1JlYWxpemFkYToocmVzcHVlc3RhczpSZXNwdWVzdGFzKT0+IHtjb2RSZWE6bnVtYmVyfG51bGwsIGVzUmVhOmJvb2xlYW59LFxyXG4gICAgZXNSZWFsaXphZGFTdXA6KHJlc3B1ZXN0YXM6UmVzcHVlc3Rhcyk9PiB7Y29kUmVhU3VwOm51bWJlcnxudWxsLCBlc1JlYVN1cDpib29sZWFufSxcclxuICAgIFVBcHJpbmNpcGFsOiBJZFVuaWRhZEFuYWxpc2lzLFxyXG4gICAgZGVmVUE6e1tpIGluIElkVW5pZGFkQW5hbGlzaXNdOntwazpJZFZhcmlhYmxlLCBpbmNsdWlkYXM6SWRVbmlkYWRBbmFsaXNpc1tdLCBpZHNGb3I6SWRGb3JtdWxhcmlvW119fSxcclxuICAgIGRlZkZvcjp7W2YgaW4gSWRGb3JtdWxhcmlvXTp7LyphcmJvbFVBOklkVW5pZGFkQW5hbGlzaXNbXSwgKi8gaGVybWFubz86dHJ1ZX19XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIERhdG9zQnlQYXNzUGVyc2lzdGlibGVzID0ge1xyXG4gICAgcmVzcHVlc3Rhczp7W3VhIGluIElkVW5pZGFkQW5hbGlzaXNdOlJlc3B1ZXN0YXNSYWl6W119XHJcbiAgICBtb2RvQWxtYWNlbmFtaWVudG86TW9kb0FsbWFjZW5hbWllbnRvXHJcbiAgICBwZXJzb25hOnN0cmluZ1xyXG4gICAgdGFyZWE6SWRUYXJlYVxyXG4gICAgaWRwZXI6c3RyaW5nXHJcbiAgICBjYXJnYXM6IENhcmdhc1xyXG4gICAgaW5mb3JtYWNpb25IZHI6IEluZm9ybWFjaW9uSGRyXHJcbiAgICBzb2xvTGVjdHVyYTogYm9vbGVhblxyXG4gICAgdG9rZW4/OnN0cmluZ1xyXG4gICAgbnVtX3NpbmNybz86bnVtYmVyXHJcbiAgICB0aW1lc3RhbXBFc3RydWN0dXJhPzpudW1iZXJcclxufVxyXG5cclxudHlwZSBDb25maWd1cmFjaW9uU29ydGVvVGFibGEgPSB7XHJcbiAgICBtZXRvZG86IFwidGFibGFcIixcclxuICAgIHBhcmFtX21ldG9kbzoge1xyXG4gICAgICAgIHRhYmxhOnN0cmluZ1tdLFxyXG4gICAgICAgIHZhcl9sZXRyYTpJZFZhcmlhYmxlLFxyXG4gICAgfSAgICBcclxufVxyXG5cclxudHlwZSBDb25maWd1cmFjaW9uU29ydGVvSGFzaCA9IHtcclxuICAgIG1ldG9kbzogXCJoYXNoXCIsXHJcbiAgICBwYXJhbV9tZXRvZG86IHtcclxuICAgICAgICB2YXJfY29lZjogW1xyXG4gICAgICAgICAgICB7dmFyOklkVmFyaWFibGUsIGNvZWY6bnVtYmVyfSxcclxuICAgICAgICAgICAge3ZhcjpJZFZhcmlhYmxlLCBjb2VmOm51bWJlcn0sXHJcbiAgICAgICAgXSxcclxuICAgICAgICBkaXZpc29yOiBudW1iZXJcclxuICAgIH0gICAgXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENvbmZpZ3VyYWNpb25Tb3J0ZW8gPSB7W2tleSBpbiBJZEZvcm11bGFyaW9dOkNvbmZpZ3VyYWNpb25Tb3J0ZW9Gb3JtdWxhcmlvfVxyXG5cclxuZXhwb3J0IHR5cGUgQ29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpbyA9IHtba2V5IGluIElkRm9ybXVsYXJpb106Q29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpb0Zvcm19XHJcblxyXG5leHBvcnQgdHlwZSBDb25maWd1cmFjaW9uU29ydGVvRm9ybXVsYXJpbyA9IHtcclxuICAgIHVuaWRhZF9hbmFsaXNpczogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIHVuaWRhZF9hbmFsaXNpc19wYWRyZTogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIC8vZXhwcl9pbmNvbXBsZXRpdHVkOiBzdHJpbmcgLy9cIm5vdCAocDEpIG9yIG5vIHQgKHAyKSBvciBub3QocDMpXCJcclxuICAgIGV4cHJfaW5jb21wbGV0aXR1ZDoge1xyXG4gICAgICAgIFtrZXkgaW4gbnVtYmVyXTp7ZG9taW5pbzpudW1iZXIsIGV4cHI6c3RyaW5nfVxyXG4gICAgfSBcclxuICAgIC8vZXhwcl9pbmNvbXBsZXRpdHVkX2pzOiBzdHJpbmcgLy9zZSBjcmVhIGFsIGNvbXBpbGFyXHJcbiAgICBleHByX2luY29tcGxldGl0dWRfanM6IHtcclxuICAgICAgICBba2V5IGluIG51bWJlcl06e2RvbWluaW86bnVtYmVyLCBleHByOnN0cmluZ31cclxuICAgIH0gXHJcbiAgICBkaXNwYXJhZG9yOiBJZFZhcmlhYmxlIC8vXCJwOVwiXHJcbiAgICAvL2ZpbHRybzogc3RyaW5nIC8vXCJwMz49MThcIlxyXG4gICAgZmlsdHJvOiB7XHJcbiAgICAgICAgW2tleSBpbiBudW1iZXJdOntkb21pbmlvOm51bWJlciwgZXhwcjpzdHJpbmd9XHJcbiAgICB9IFxyXG4gICAgLy9maWx0cm9fanM6IHN0cmluZyAvL3NlIGNyZWEgYWwgY29tcGlsYXJcclxuICAgIGZpbHRyb19qczoge1xyXG4gICAgICAgIFtrZXkgaW4gbnVtYmVyXTp7ZG9taW5pbzpudW1iZXIsIGV4cHI6c3RyaW5nfVxyXG4gICAgfSBcclxuICAgIG9yZGVuOiB7XHJcbiAgICAgICAgdmFyaWFibGU6SWRWYXJpYWJsZVxyXG4gICAgICAgIG9yZGVuOiAxfC0xXHJcbiAgICB9W10gLy9bXCJwM1wiLCBcInAyXCIsIFwicDFcIiwgXCJwMFwiXSwgLy8gcDAgZXMgY29uc3RydWlkYSwgbm8gdmEgZW4gcGFyw6FtZXRyb3MsIHNlIHBvbmUgcGFyYSBxdWUgZWwgb3JkZW4gc2VhIGRldGVybWluw61zdGljb1xyXG4gICAgcGFyYW1ldHJvczpJZFZhcmlhYmxlW10vLyBbXCJwMVwiLFwicDJcIixcInAzXCIsIFwicDRcIiwgXCJwNVwiLCBcInA2XCJdLCAvLyB2YXJpYWJsZXMgcXVlIGFudWxhbiBhbCBkaXNwYXJhZG9yXHJcbiAgICBjYW50aWRhZF9zb3J0ZWFibGVzOiBJZFZhcmlhYmxlXHJcbiAgICBjYW50aWRhZF90b3RhbDogSWRWYXJpYWJsZVxyXG4gICAgcmVzdWx0YWRvOiBJZFZhcmlhYmxlIC8vXCJwMTFcIlxyXG4gICAgcmVzdWx0YWRvX21hbnVhbDogSWRWYXJpYWJsZSAvL1wicDExXCJcclxuICAgIHNvcnRlYWRvX21vc3RyYXI/OiB7c291cmNlOklkVmFyaWFibGUsIHRhcmdldDpJZFZhcmlhYmxlfVtdLFxyXG4gICAgaW5jb21wbGV0YXM6IElkVmFyaWFibGVcclxuICAgIHZhcmlhYmxlQm90b25Gb3JtdWxhcmlvVUE6IElkVmFyaWFibGUvLyckQi5GOlMxX1AnXHJcbiAgICB2YXJpYWJsZUJvdG9uRm9ybXVsYXJpb1VBSW5kaXZpZHVhbD86IElkVmFyaWFibGUgLy8nJEIuRjpJMSdcclxuICAgIGlkX2Zvcm11bGFyaW9faW5kaXZpZHVhbD86IElkRm9ybXVsYXJpbyAvLyAnRjpJMSdcclxuICAgIGlkX2Zvcm11bGFyaW9fcGFkcmU/OiBJZEZvcm11bGFyaW8gLy8gJ0Y6UzEnXHJcbn0gJiAoQ29uZmlndXJhY2lvblNvcnRlb0hhc2ggfCBDb25maWd1cmFjaW9uU29ydGVvVGFibGEpXHJcblxyXG5leHBvcnQgdHlwZSBDb25maWd1cmFjaW9uSGFiaWxpdGFyQm90b25Gb3JtdWxhcmlvRm9ybSA9IHtcclxuICAgIHVuaWRhZF9hbmFsaXNpczogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIGV4cHJfaGFiaWxpdGFyX2JvdG9uOiBzdHJpbmcsXHJcbiAgICBleHByX2hhYmlsaXRhcl9ib3Rvbl9qczogc3RyaW5nLFxyXG4gICAgaGFiaWxpdGFyX2FncmVnYXJfbGlzdG86IGJvb2xlYW5cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvUGxhaW5Gb3JQayhmb3JQazpGb3JQayk6UGxhaW5Gb3JQa3tcclxuICAgIC8vIEB0cy1pZ25vcmUgc2FiZW1vcyBxdWUgaGF5IHF1ZSBoYWNlciB1biBKU09OXHJcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoZm9yUGspO1xyXG59XHJcblxyXG5leHBvcnQgdmFyIGl0ZXJhdG9yOjxUPihvOk9iamV0b051bWVyYWRvT0FycmF5PFQ+KT0+SXRlcmFibGU8VD4gPSBMaWtlQXIuaXRlcmF0b3JcclxuZXhwb3J0IHZhciBlbXB0eTo8VD4obzpPYmpldG9OdW1lcmFkb09BcnJheTxUPnxudWxsfHVuZGVmaW5lZCk9PmJvb2xlYW4gPSBMaWtlQXIuZW1wdHlcclxuXHJcbmRlY2xhcmUgZ2xvYmFsIHtcclxuICAgIG5hbWVzcGFjZSBteU93bntcclxuICAgICAgICBpbnRlcmZhY2UgQWRkclBhcmFtcyB7XHJcbiAgICAgICAgICAgIHN0YXRlX2ZvclBrOnN0cmluZ1xyXG4gICAgICAgICAgICBzdGF0ZV9waWxhRm9yUGs6c3RyaW5nXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBEaXJlY2Npb25BY2Npb24gPSAnYXZhbmNlJyB8ICdyZXRyb2Nlc28nIHwgJ2JsYW5xdWVvJ1xyXG5cclxuZXhwb3J0IHR5cGUgRXN0YWRvQWNjaW9uID0ge1xyXG4gICAgb3BlcmF0aXZvOiBzdHJpbmdcclxuICAgIGVzdGFkbzogc3RyaW5nXHJcbiAgICBlYWNjaW9uOiBzdHJpbmdcclxuICAgIGNvbmRpY2lvbjogc3RyaW5nXHJcbiAgICBlc3RhZG9fZGVzdGlubzogc3RyaW5nXHJcbiAgICBlYWNjaW9uX2RpcmVjY2lvbjogRGlyZWNjaW9uQWNjaW9uXHJcbiAgICBwYXRoX2ljb25vX3N2Zzogc3RyaW5nXHJcbiAgICBub21icmVfcHJvY2VkdXJlOiBzdHJpbmdcclxuICAgIG5vbWJyZV93c2NyZWVuOiBzdHJpbmdcclxuICAgIGRlc2FjdGl2YV9ib3RvbjogYm9vbGVhblxyXG4gICAgY29uZmlybWE6IGJvb2xlYW5cclxufSJdfQ==
@@ -17,7 +17,7 @@ export type IdFin = 'fin';
17
17
  export type IdDestino = IdPregunta | IdBloque | IdFin | IdFiltro;
18
18
  export type Valor = string | number | null;
19
19
  export type TipocDestinos = 'P' | 'CP' | 'B' | 'FILTRO' | 'BF';
20
- export type Tipoc = TipocDestinos | 'F' | 'O' | 'OM' | 'CONS' | 'TEXTO' | 'LIBRE';
20
+ export type Tipoc = TipocDestinos | 'F' | 'O' | 'OM' | 'CONS' | 'TEXTO' | 'LIBRE' | 'PMATRIZ';
21
21
  export type IdTarea = 'encu' | 'recu' | 'supe' | 'ingr';
22
22
  export type FeedbackVariable = Feedback<IdVariable, IdFin>;
23
23
  export type TipoVariables = 'texto' | 'numero' | 'fecha' | 'horas' | 'hora';
@@ -170,7 +170,10 @@ export type Formulario = CasilleroBase & {
170
170
  hermano?: true;
171
171
  unidad_analisis: IdUnidadAnalisis;
172
172
  };
173
- export type CasillerosImplementados = Formulario | Bloque | Filtro | ConjuntoPreguntas | Pregunta | OpcionMultiple | Opcion | BotonFormulario | Consistencia | Texto | Libre;
173
+ export type PMatriz = CasilleroBase & {
174
+ tipoc: 'PMATRIZ';
175
+ };
176
+ export type CasillerosImplementados = Formulario | Bloque | Filtro | ConjuntoPreguntas | Pregunta | OpcionMultiple | Opcion | BotonFormulario | Consistencia | Texto | Libre | PMatriz;
174
177
  export type CampoPkRaiz = 'vivienda' | 'etc...';
175
178
  export type ValuePkRaiz = IdEnc;
176
179
  export type ForPkRaiz = {
@@ -19,4 +19,4 @@
19
19
  exports.iterator = LikeAr.iterator;
20
20
  exports.empty = LikeAr.empty;
21
21
  });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwb3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdW5sb2dnZWQvdGlwb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUFFYixrQ0FBa0M7SUFxZWxDLFNBQWdCLFlBQVksQ0FBQyxLQUFXO1FBQ3BDLCtDQUErQztRQUMvQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUhELG9DQUdDO0lBRVUsUUFBQSxRQUFRLEdBQStDLE1BQU0sQ0FBQyxRQUFRLENBQUE7SUFDdEUsUUFBQSxLQUFLLEdBQTBELE1BQU0sQ0FBQyxLQUFLLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuaW1wb3J0IHtTdHJ1Y3R1cmUsIEZlZWRiYWNrfSBmcm9tIFwicm93LXZhbGlkYXRvclwiO1xyXG5pbXBvcnQgKiBhcyBMaWtlQXIgZnJvbSBcImxpa2UtYXJcIjtcclxuaW1wb3J0IHsgT3BlcmF0aXZvR2VuZXJhdG9yIH0gZnJvbSBcIm1ldGEtZW5jXCI7XHJcblxyXG5leHBvcnQgdHlwZSBNb2RvQWxtYWNlbmFtaWVudG8gPSAnc2Vzc2lvbid8IC8vIGN1YW5kbyBzZWEgcGFyYSB1bmEgc29sYSBwZXN0YcOxYSwgc2UgdXNhIGVuIG1vZG8gZGlyZWN0byxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xvY2FsJyAgICAvLyBwYXJhIHRvZG8gZWwgZGlzcG9zaXRpdm8sIHNlIHVzYSBhbCBjYXJnYXIgaG9qYXMgZGUgcnV0YSBlbnRyZXNcclxuXHJcbmV4cG9ydCB0eXBlIElkT3BjaW9uID0gbnVtYmVyXHJcbmV4cG9ydCB0eXBlIElkT3BlcmF0aXZvID0gJ2V0b2kyMTEnfCdlYWgyMDIyJ3wnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZFZhcmlhYmxlID0gJ3YxJ3wndjInfCd2Myd8J2V0Yy4uLid8J3Zkb21pbmlvJ3wnJHAwJ1xyXG5leHBvcnQgdHlwZSBJZFByZWd1bnRhID0gJ1AxJ3wnUDInfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkQmxvcXVlID0gJ0IxJ3wnQjInfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkRm9ybXVsYXJpbyA9ICdGMSd8J0YyJ3wnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZFVuaWRhZEFuYWxpc2lzID0gJ3ZpdmllbmRhcyd8J2hvZ2FyZXMnfCdwZXJzb25hcydcclxuZXhwb3J0IHR5cGUgSWRCb3RvbkZvcm11bGFyaW8gPSAnQkY6RjEnfCdCRjpGMid8J2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRDb25zaXN0ZW5jaWEgPSAnQ09OUzEnfCdDT05TMid8J2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRUZXh0byA9ICdEMzBfUkVGJ3wnTUVTX1JFRid8J1NFTV9SRUYnfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkRmlsdHJvID0gJ0ZJTFRSTzEnIHwgJ0ZJTFRSTzInIHwgJ2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRDYXNpbGxlcm8gPSBJZFZhcmlhYmxlIHwgSWRQcmVndW50YSB8IElkQmxvcXVlIHwgSWRGb3JtdWxhcmlvIHwgSWRGaWx0cm8gfCBJZE9wY2lvblxyXG5leHBvcnQgdHlwZSBJZEZpbiA9ICdmaW4nOyAvLyBuZXZlciAvLyBUT0RPOiBwb2RlciBwb25lciAnRklOJ1xyXG5leHBvcnQgdHlwZSBJZERlc3Rpbm8gPSBJZFByZWd1bnRhIHwgSWRCbG9xdWUgfCBJZEZpbiB8IElkRmlsdHJvIFxyXG5leHBvcnQgdHlwZSBWYWxvciA9IHN0cmluZ3xudW1iZXJ8bnVsbDtcclxuZXhwb3J0IHR5cGUgVGlwb2NEZXN0aW5vcyA9ICdQJ3wnQ1AnfCdCJ3wnRklMVFJPJ3wnQkYnXHJcbmV4cG9ydCB0eXBlIFRpcG9jID0gVGlwb2NEZXN0aW5vcyB8ICdGJ3wnTyd8J09NJ3wnQ09OUycgfCdURVhUTycgfCAnTElCUkUnXHJcblxyXG5leHBvcnQgdHlwZSBJZFRhcmVhID0gJ2VuY3UnfCdyZWN1J3wnc3VwZSd8J2luZ3InO1xyXG5cclxuZXhwb3J0IHR5cGUgRmVlZGJhY2tWYXJpYWJsZSA9IEZlZWRiYWNrPElkVmFyaWFibGUsIElkRmluPlxyXG5cclxuZXhwb3J0IHR5cGUgVGlwb1ZhcmlhYmxlcyA9ICd0ZXh0byd8J251bWVybyd8J2ZlY2hhJ3wnaG9yYXMnfCdob3JhJ1xyXG5cclxuZXhwb3J0IHR5cGUgRGVzcGxpZWd1ZSA9ICdob3Jpem9udGFsJ3wnb2N1bHRhJ1xyXG5cclxuZXhwb3J0IHR5cGUgQ2FzaWxsZXJvQmFzZSA9IHtcclxuICAgIGlkX2Nhc2lsbGVybz86c3RyaW5nXHJcbiAgICB0aXBvYzpUaXBvY1xyXG4gICAgY2FzaWxsZXJvOklkQ2FzaWxsZXJvXHJcbiAgICBub21icmU6c3RyaW5nXHJcbiAgICBzYWx0bzpJZERlc3Rpbm98SWRGaW58bnVsbFxyXG4gICAgdmVyX2lkOnN0cmluZ3xudWxsXHJcbiAgICBkZXNwbGllZ3VlRW5jYWJlemFkbzonbGF0ZXJhbCd8J3N1cGVyaW9yJ3xudWxsXHJcbiAgICBkZXNwbGllZ3VlQ29udGVuaWRvOid2ZXJ0aWNhbCd8J2hvcml6b250YWwnfG51bGxcclxuICAgIGRlc3BsaWVndWVUaXBvSW5wdXQ6J3RlbCd8bnVsbFxyXG4gICAgZGVzcGxpZWd1ZU9jdWx0YTpib29sZWFufG51bGxcclxuICAgIGxlZXI6Ym9vbGVhbnxudWxsXHJcbiAgICBhY2xhcmFjaW9uOnN0cmluZ3xudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpJZFZhcmlhYmxlfG51bGxcclxuICAgIHZhcl9uYW1lPzpJZFZhcmlhYmxlfG51bGxcclxuICAgIHZhcl9uYW1lX2VzcGVjaWFsPzpzdHJpbmd8bnVsbFxyXG4gICAgdGlwb3Zhcj86VGlwb1ZhcmlhYmxlc3wnb3BjaW9uZXMnfCdzaV9ubyd8bnVsbFxyXG4gICAgY2FzaWxsZXJvcz86Q2FzaWxsZXJvc0ltcGxlbWVudGFkb3NbXXxudWxsXHJcbiAgICBleHByZXNpb25faGFiaWxpdGFyPzpzdHJpbmdcclxuICAgIGV4cHJlc2lvbl9oYWJpbGl0YXJfanM/OnN0cmluZ1xyXG4gICAgZXhwcmVzaW9uX2F1dG9pbmdyZXNhcj86c3RyaW5nXHJcbiAgICBleHByZXNpb25fYXV0b2luZ3Jlc2FyX2pzPzpzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgT3BjaW9uPUNhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonTydcclxuICAgIGNhc2lsbGVybzpJZE9wY2lvblxyXG4gICAgY2FzaWxsZXJvczpQcmVndW50YVNpbXBsZVtdXHJcbiAgICB2YXJfbmFtZT86bnVsbFxyXG4gICAgdGlwb3Zhcj86bnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86bnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBPcGNpb25TaT1PcGNpb24gJiB7XHJcbiAgICBjYXNpbGxlcm86MVxyXG4gICAgbm9tYnJlOidTw60nXHJcbiAgICBjYXNpbGxlcm9zOlByZWd1bnRhU2ltcGxlW10gXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9wY2lvbk5vPU9wY2lvbiAmIHtcclxuICAgIGNhc2lsbGVybzoyXHJcbiAgICBub21icmU6J05vJ1xyXG4gICAgY2FzaWxsZXJvczpQcmVndW50YVNpbXBsZVtdIFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBPcGNpb25NdWx0aXBsZT1DYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J09NJ1xyXG4gICAgdGlwb3Zhcjonb3BjaW9uZXMnXHJcbiAgICB2YXJfbmFtZTpJZFZhcmlhYmxlXHJcbiAgICBjYXNpbGxlcm9zOltPcGNpb25TaSwgT3BjaW9uTm9dXHJcbiAgICBjYWxjdWxhZGE/OmJvb2xlYW5cclxuICAgIGxpYnJlPzpib29sZWFuXHJcbiAgICB2YWxvcl9uc19uYzogYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFByZWd1bnRhQmFzZSA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonUCdcclxuICAgIG9wdGF0aXZvOmJvb2xlYW58bnVsbFxyXG4gICAgY2FzaWxsZXJvOklkUHJlZ3VudGFcclxuICAgIGNhbGN1bGFkYTogYm9vbGVhbnxudWxsXHJcbiAgICBsaWJyZTogYm9vbGVhbnxudWxsXHJcbiAgICB2YWxvcl9uc19uYzogYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFByZWd1bnRhU2ltcGxlID0gUHJlZ3VudGFCYXNlICYge1xyXG4gICAgdGlwb3ZhcjpUaXBvVmFyaWFibGVzXHJcbiAgICB2YXJfbmFtZTpJZFZhcmlhYmxlXHJcbiAgICBsb25naXR1ZDpzdHJpbmdcclxuICAgIHNhbHRvX25zX25jOklkVmFyaWFibGV8bnVsbFxyXG4gICAgY2FzaWxsZXJvczogUHJlZ3VudGFTaW1wbGVbXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvblNpTm8gPSBQcmVndW50YUJhc2UgJiB7XHJcbiAgICB0aXBvdmFyOidzaV9ubydcclxuICAgIHZhcl9uYW1lOklkVmFyaWFibGVcclxuICAgIHNhbHRvX25zX25jOklkVmFyaWFibGV8bnVsbFxyXG4gICAgY2FzaWxsZXJvczogW09wY2lvblNpLCBPcGNpb25Ob11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGFDb25PcGNpb25lcyA9IFByZWd1bnRhQmFzZSAmIHtcclxuICAgIHRpcG92YXI6J29wY2lvbmVzJ1xyXG4gICAgdmFyX25hbWU6SWRWYXJpYWJsZVxyXG4gICAgc2FsdG9fbnNfbmM6SWRWYXJpYWJsZXxudWxsXHJcbiAgICBjYXNpbGxlcm9zOiBPcGNpb25bXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvbk9wY2lvbmVzTXVsdGlwbGVzID0gUHJlZ3VudGFCYXNlICYge1xyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGNhc2lsbGVyb3M6IE9wY2lvbk11bHRpcGxlW11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGE9UHJlZ3VudGFTaW1wbGUgfCBQcmVndW50YUNvblNpTm8gfCBQcmVndW50YUNvbk9wY2lvbmVzIHwgUHJlZ3VudGFDb25PcGNpb25lc011bHRpcGxlc1xyXG5cclxuZXhwb3J0IHR5cGUgQ29uanVudG9QcmVndW50YXM9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonQ1AnXHJcbiAgICBjYXNpbGxlcm86SWRQcmVndW50YVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGNhc2lsbGVyb3M6UHJlZ3VudGFbXVxyXG59XHJcblxyXG4vKlxyXG5leHBvcnQgaW50ZXJmYWNlIElDb250ZW5pZG8gZXh0ZW5kcyBDYXNpbGxlcm9CYXNlIHtcclxuICAgIGNhc2lsbGVyb3M6SUNvbnRlbmlkb1tdXHJcbn1cclxuKi9cclxuXHJcbmV4cG9ydCB0eXBlIEZpbHRybyA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonRklMVFJPJ1xyXG4gICAgY2FzaWxsZXJvOklkRmlsdHJvXHJcbiAgICB2YXJfbmFtZT86bnVsbFxyXG4gICAgdGlwb3Zhcj86bnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86bnVsbFxyXG4gICAgY2FsY3VsYWRhPzpudWxsXHJcbiAgICBsaWJyZT86bnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb250ZW5pZG9Gb3JtdWxhcmlvPUJsb3F1ZXxQcmVndW50YXxDb25qdW50b1ByZWd1bnRhc3xGaWx0cm98Qm90b25Gb3JtdWxhcmlvfENvbnNpc3RlbmNpYXxUZXh0b1xyXG5cclxuZXhwb3J0IHR5cGUgQmxvcXVlID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOidCJ1xyXG4gICAgY2FzaWxsZXJvOklkQmxvcXVlXHJcbiAgICBjYXNpbGxlcm9zOkNvbnRlbmlkb0Zvcm11bGFyaW9bXVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIHVuaWRhZF9hbmFsaXNpcz86SWRVbmlkYWRBbmFsaXNpc1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb25zaXN0ZW5jaWEgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0NPTlMnXHJcbiAgICBjYXNpbGxlcm86SWRDb25zaXN0ZW5jaWFcclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgVGV4dG8gPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J1RFWFRPJ1xyXG4gICAgY2FzaWxsZXJvOklkVGV4dG9cclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgTGlicmUgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0xJQlJFJ1xyXG4gICAgY2FzaWxsZXJvOklkVGV4dG9cclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgQm90b25Gb3JtdWxhcmlvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOidCRidcclxuICAgIGNhc2lsbGVybzpJZEJvdG9uRm9ybXVsYXJpb1xyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIHByaW1lcmFfdmFyaWFibGU/Om51bGxcclxuICAgIHZhcl9uYW1lX0JGPzpJZFZhcmlhYmxlXHJcbiAgICBsb25naXR1ZD86c3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEZvcm11bGFyaW8gPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0YnXHJcbiAgICBjYXNpbGxlcm86SWRGb3JtdWxhcmlvXHJcbiAgICBmb3JtdWxhcmlvX3ByaW5jaXBhbDpib29sZWFuXHJcbiAgICBjYXNpbGxlcm9zOkNvbnRlbmlkb0Zvcm11bGFyaW9bXVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGhlcm1hbm8/OnRydWVcclxuICAgIHVuaWRhZF9hbmFsaXNpczpJZFVuaWRhZEFuYWxpc2lzXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENhc2lsbGVyb3NJbXBsZW1lbnRhZG9zPUZvcm11bGFyaW98QmxvcXVlfEZpbHRyb3xDb25qdW50b1ByZWd1bnRhc3xQcmVndW50YXxPcGNpb25NdWx0aXBsZXxPcGNpb258Qm90b25Gb3JtdWxhcmlvfENvbnNpc3RlbmNpYXxUZXh0b3xMaWJyZVxyXG5cclxuZXhwb3J0IHR5cGUgQ2FtcG9Qa1JhaXogPSAndml2aWVuZGEnfCdldGMuLi4nO1xyXG5cclxuZXhwb3J0IHR5cGUgVmFsdWVQa1JhaXogPSBJZEVuY1xyXG5cclxuZXhwb3J0IHR5cGUgRm9yUGtSYWl6PXtcclxuICAgIGZvcm11bGFyaW86SWRGb3JtdWxhcmlvXHJcbn0gJiB7XHJcbiAgICBbY2FtcG8gaW4gQ2FtcG9Qa1JhaXpdOlZhbHVlUGtSYWl6XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENhbXBvUGsgPSAndml2aWVuZGEnfCdob2dhcid8J3BlcnNvbmEnfCdldGMuLi4nO1xyXG5leHBvcnQgdHlwZSBGb3JQayA9IEZvclBrUmFpeiAmIHtcclxuICAgIFtjYW1wbyBpbiBDYW1wb1BrXT86bnVtYmVyXHJcbn1cclxuZXhwb3J0IHR5cGUgUGxhaW5Gb3JQaz0ne1wiZm9ybXVsYXJpb1wiOlwiRjpGMVwiLFwidml2aWVuZGFcIjpcIjEwMjAyXCIsXCJwZXJzb25hXCI6bnVsbH0nfCdldGMuLi4nO1xyXG5cclxuZXhwb3J0IHR5cGUgT2JqZXRvTnVtZXJhZG9PQXJyYXk8VD4gPSBUW10gfCB7W24gaW4gbnVtYmVyXTpUfVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzcHVlc3Rhc1VuYVVBID0ge1xyXG4gICAgW3ByZWd1bnRhIGluIElkVmFyaWFibGVdOlZhbG9yXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFJlc3B1ZXN0YUxhc1VBID0ge1xyXG4gICAgW3VhIGluIElkVW5pZGFkQW5hbGlzaXNdOk9iamV0b051bWVyYWRvT0FycmF5PFJlc3B1ZXN0YXM+XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFJlc3B1ZXN0YXM9IFJlc3B1ZXN0YXNVbmFVQSAmIFJlc3B1ZXN0YUxhc1VBXHJcblxyXG5leHBvcnQgdHlwZSBSZXNwdWVzdGFzUmFpej1SZXNwdWVzdGFzICYge1xyXG4gICAgcmVzdW1lbkVzdGFkbzpSZXN1bWVuRXN0YWRvXHJcbiAgICByZXN1bWVuRXN0YWRvU3VwOlJlc3VtZW5Fc3RhZG9cclxuICAgICRkaXJ0eTpib29sZWFuXHJcbiAgICBjb2ROb1JlYTogc3RyaW5nfG51bGxcclxuICAgIGNvZFJlYTogbnVtYmVyfG51bGxcclxuICAgIGNvZE5vUmVhU3VwOiBzdHJpbmd8bnVsbFxyXG4gICAgY29kUmVhU3VwOiBudW1iZXJ8bnVsbFxyXG59XHJcblxyXG4vKlxyXG4gICAgYWNsYXJhY2nDs246XHJcbiAgICB7djE6J3gnLCB2MjoneCcsIHBlcnNvbmFzOlt7cDE6MSwgcDI6J3h9LHtwMToyLCBwMjp4fV0sIG1hc2NvdGFzOltdIH1cclxuICAgIGVzdMOhIGFuaWRhZG8gcG9yIHVuaWRhZCBkZSBhbsOhbGlzaXNcclxuKi9cclxuXHJcbmV4cG9ydCB0eXBlIFVuaWRhZEFuYWxpc2lzID0ge1xyXG4gICAgdW5pZGFkX2FuYWxpc2lzOklkVW5pZGFkQW5hbGlzaXMsIFxyXG4gICAgcGFkcmU/OklkVW5pZGFkQW5hbGlzaXMsIFxyXG4gICAgcGtfYWdyZWdhZGE6Q2FtcG9QaywgXHJcbiAgICBwcmluY2lwYWw/OmJvb2xlYW4sIFxyXG4gICAgaGlqYXM6IHtbayBpbiBJZFVuaWRhZEFuYWxpc2lzXT86IFVuaWRhZEFuYWxpc2lzfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBURU0gPSB7XHJcbiAgICBub21jYWxsZTpzdHJpbmdcclxuICAgIGRvbWluaW86bnVtYmVyXHJcbiAgICBzZWN0b3I6c3RyaW5nXHJcbiAgICBlZGlmaWNpbzpzdHJpbmdcclxuICAgIGVudHJhZGE6c3RyaW5nXHJcbiAgICBucm9jYXRhc3RyYWw6c3RyaW5nXHJcbiAgICBwaXNvOnN0cmluZ1x0XHJcbiAgICBkZXBhcnRhbWVudG86c3RyaW5nXHJcbiAgICBoYWJpdGFjaW9uOnN0cmluZ1xyXG4gICAgY2FzYTpzdHJpbmdcclxuICAgIHByaW9yaWRhZDoxfDJ8M1xyXG4gICAgb2JzZXJ2YWNpb25lczpzdHJpbmdcclxuICAgIHNlbGVjY2lvbmFkbzpudW1iZXIsXHJcbiAgICBjaXRhOiBzdHJpbmcsXHJcbiAgICBjYXJnYTpzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzdW1lbkVzdGFkbyA9ICd2YWNpbycgfCAnY29uIHByb2JsZW1hcycgfCAnaW5jb21wbGV0bycgfCAnb2snIHwgJ25vIHJlYScgfCAnY2l0YSBwYWN0YWRhJztcclxuXHJcbmV4cG9ydCB0eXBlIEluZm9UYXJlYT0ge1xyXG4gICAgdGFyZWE6IElkVGFyZWFcclxuICAgIG5vdGFzPzpzdHJpbmdcclxuICAgIGZlY2hhX2FzaWduYWNpb24/OkRhdGVcclxuICAgIGFzaWduYWRvPzpzdHJpbmdcclxuICAgIG1haW5fZm9ybTogSWRGb3JtdWxhcmlvXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFZpc2l0YT17XHJcbiAgICBmZWNoYTogc3RyaW5nIHwgbnVsbFxyXG4gICAgaG9yYTogc3RyaW5nIHwgbnVsbFxyXG4gICAgaWRwZXI6IHN0cmluZyB8IG51bGxcclxuICAgIG9ic2VydmFjaW9uZXM6IHN0cmluZyB8IG51bGxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgIERhdG9zSGRyVWFQcGFsPSB7XHJcbiAgICB0YXJlYTogSW5mb1RhcmVhXHJcbiAgICB0ZW06IFRFTVxyXG4gICAgXHJcbi8qXHJcbiAgICBhY2xhcmFjacOzbjpcclxuICAgIHt2MToneCcsIHYyOid4JywgcGVyc29uYXM6W3twMToxLCBwMjoneH0se3AxOjIsIHAyOnh9XSwgbWFzY290YXM6W10gfVxyXG4gICAgZXN0w6EgYW5pZGFkbyBwb3IgdW5pZGFkIGRlIGFuw6FsaXNpc1xyXG4qL1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBJZENhcmdhPVwiMVwifFwiMlwifFwiZXRjXCJcclxuXHJcbmV4cG9ydCB0eXBlIEVzdGFkb0NhcmdhPSdyZXN1bWVuJ3wncmVsZXZhbWllbnRvJ3wncmVjaWJvJ1xyXG5cclxuZXhwb3J0IHR5cGUgQ2FyZ2E9e1xyXG4gICAgZmVjaGE6IERhdGVcclxuICAgIGVzdGFkb19jYXJnYTogRXN0YWRvQ2FyZ2FcclxuICAgIG5lY2VzYXJpYXM6IG51bWJlclxyXG4gICAgb2JzZXJ2YWNpb25lczogc3RyaW5nXHJcbiAgICByZWNlcGNpb25pc3RhOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQ2FyZ2FzPXtcclxuICAgIFtpZENhcmdhIGluIElkQ2FyZ2FdOiBDYXJnYVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBFc3RydWN0dXJhUm93VmFsaWRhdG9yPVN0cnVjdHVyZTxJZFZhcmlhYmxlLFZhbG9yLElkRmluPjtcclxuXHJcbmV4cG9ydCB0eXBlIE1vZG9EZXNwbGllZ3VlID0gJ21ldGFkYXRvcyd8J3JlbGV2YW1pZW50byd8J1BERidcclxuXHJcbmV4cG9ydCB0eXBlIEluZm9Gb3JtdWxhcmlvPXtcclxuICAgIGNhc2lsbGVyb3M6Rm9ybXVsYXJpbywgLy8gY2FzaWxsZXJvcyBhcGxhbmFkb3NcclxuICAgIGVzdHJ1Y3R1cmFSb3dWYWxpZGF0b3I6RXN0cnVjdHVyYVJvd1ZhbGlkYXRvciAvLyBlc3RydWN0dXJhIGRlIHZhcmlhYmxlcyBwYXJhIGVsIFJvd1ZhbGlkYXRvclxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBJZFJlc3VsdGFkbyA9ICdBVkVSSUdVQVInfCdUT0RPJztcclxuXHJcbmV4cG9ydCB0eXBlIFRhcmVhc0VzdHJ1Y3R1cmE9e1xyXG4gICAgW2lkVGFyZWEgaW4gSWRUYXJlYV06e1xyXG4gICAgICAgIHJlc3VsdGFkb3M6e1xyXG4gICAgICAgICAgICBbaWRSZXN1bHRhZG8gaW4gSWRSZXN1bHRhZG9dOntcclxuICAgICAgICAgICAgICAgIGRlc2NyaXBjaW9uOnN0cmluZ1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBFc3RydWN0dXJhID0ge1xyXG4gICAgZm9ybXVsYXJpb3M6eyBcclxuICAgICAgICBbbm9tYnJlRm9ybXVsYXJpbyBpbiBJZEZvcm11bGFyaW9dOkluZm9Gb3JtdWxhcmlvXHJcbiAgICB9XHJcbiAgICB1bmlkYWRlc19hbmFsaXNpczp7IFxyXG4gICAgICAgIFtpZFVuaWRhZEFuYWxpc2lzIGluIElkVW5pZGFkQW5hbGlzaXNdOiBVbmlkYWRBbmFsaXNpc1xyXG4gICAgfVxyXG4gICAgdGFyZWFzOlRhcmVhc0VzdHJ1Y3R1cmFcclxuICAgIHVhUHBhbDogSWRVbmlkYWRBbmFsaXNpc1xyXG4gICAgcGtBZ3JlZ2FkYVVhUHBhbDogQ2FtcG9Qa1JhaXpcclxuICAgIHRpbWVzdGFtcDpudW1iZXJcclxuICAgIG9wZXJhdGl2bzpJZE9wZXJhdGl2b1xyXG4gICAgY29uZmlnU29ydGVvOiBDb25maWd1cmFjaW9uU29ydGVvXHJcbiAgICBoYWJpbGl0YWNpb25Cb3RvbkZvcm11bGFyaW86IENvbmZpZ3VyYWNpb25IYWJpbGl0YXJCb3RvbkZvcm11bGFyaW9cclxuICAgIHBlcm1pdGVHZW5lcmFyTXVlc3RyYTogYm9vbGVhblxyXG4gICAgY29uUmVhSG9nYXI6IGJvb2xlYW5cclxuXHRub1JlYXM6IHsgXHJcblx0ICAgICAgbm9fcmVhOiBzdHJpbmcgIFxyXG5cdFx0ICBkZXNjcmlwY2lvbjogc3RyaW5nXHJcblx0XHQgIGdydXBvOiAgICAgc3RyaW5nICAgIFxyXG5cdFx0ICB2YXJpYWJsZTogIHN0cmluZ1xyXG5cdFx0ICB2YWxvcjogICAgIHN0cmluZ1xyXG5cdFx0ICBncnVwbzA6ICAgIHN0cmluZ1xyXG5cdH1bXVxyXG4gICAgbm9SZWFzU3VwOiB7IFxyXG4gICAgICAgIG5vX3JlYV9zdXA6IHN0cmluZyAgXHJcbiAgICAgICAgZGVzY19ub3JlYV9zdXA6IHN0cmluZ1xyXG4gICAgICAgIGdydXBvX3N1cDogICAgIHN0cmluZyAgICBcclxuICAgICAgICB2YXJpYWJsZV9zdXA6ICBzdHJpbmdcclxuICAgICAgICB2YWxvcl9zdXA6ICAgICBzdHJpbmdcclxuICAgICAgICBncnVwbzBfc3VwOiAgICBzdHJpbmdcclxuICB9W11cclxuICAgIGRlZmF1bHRJbmZvcm1hY2lvbkhkcjogRGF0b3NIZHJVYVBwYWxcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSWRFbmMgPSAxMzAwMzF8MTMwMDMyO1xyXG5leHBvcnQgdHlwZSBJbmZvcm1hY2lvbkhkcj17W2VuYyBpbiBJZEVuY106IERhdG9zSGRyVWFQcGFsfVxyXG5cclxuZXhwb3J0IHR5cGUgQ2Fzb1N0YXRlPXtcclxuICAgIG9wY2lvbmVzOnsgLy8gZGF0b3MgZGUgbmF2ZWdhY2nDs24gcXVlIGVsaWplIGVsIHVzdWFyaW9cclxuICAgICAgICBmb3JQazpGb3JQa3xudWxsIC8vIMOtbmRpY2UgZGVudHJvIGRlIGxhcyB1bmlkYWRlcyBkZSBhbsOhbGlzaXMuIE51bGwgPSBlbiBob2phIGRlIHJ1dGFcclxuICAgICAgICBwaWxhRm9yUGs6Rm9yUGtbXVxyXG4gICAgICAgIG1vZG9EZXNwbGllZ3VlOk1vZG9EZXNwbGllZ3VlXHJcbiAgICAgICAgYmllbnZlbmlkbzpib29sZWFuXHJcbiAgICAgICAgbW9kb0RpcmVjdG86Ym9vbGVhblxyXG4gICAgICAgIG1vZG9Cb3JyYXJSZXNwdWVzdGE6SWRWYXJpYWJsZXxudWxsXHJcbiAgICAgICAgY29uQ2FtcG9PcGNpb25lczpib29sZWFuXHJcbiAgICAgICAgc2FsdG9BdXRvbWF0aWNvOmJvb2xlYW5cclxuICAgIH0sIFxyXG4gICAgbW9kbzp7IC8vIG5vIHNlIHBlcnNpc3RlXHJcbiAgICAgICAgZGVtbzpib29sZWFuXHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIERlZk9wZXJhdGl2byA9IHtcclxuICAgIGVzTm9SZWE6KHJlc3B1ZXN0YXM6UmVzcHVlc3Rhcyk9PiB7Y29kTm9SZWE6c3RyaW5nfG51bGwsIGVzTm9SZWE6Ym9vbGVhbn0sXHJcbiAgICBlc05vUmVhU3VwOihyZXNwdWVzdGFzOlJlc3B1ZXN0YXMpPT4ge2NvZE5vUmVhU3VwOnN0cmluZ3xudWxsLCBlc05vUmVhU3VwOmJvb2xlYW59LFxyXG4gICAgZXNSZWFsaXphZGE6KHJlc3B1ZXN0YXM6UmVzcHVlc3Rhcyk9PiB7Y29kUmVhOm51bWJlcnxudWxsLCBlc1JlYTpib29sZWFufSxcclxuICAgIGVzUmVhbGl6YWRhU3VwOihyZXNwdWVzdGFzOlJlc3B1ZXN0YXMpPT4ge2NvZFJlYVN1cDpudW1iZXJ8bnVsbCwgZXNSZWFTdXA6Ym9vbGVhbn0sXHJcbiAgICBVQXByaW5jaXBhbDogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIGRlZlVBOntbaSBpbiBJZFVuaWRhZEFuYWxpc2lzXTp7cGs6SWRWYXJpYWJsZSwgaW5jbHVpZGFzOklkVW5pZGFkQW5hbGlzaXNbXSwgaWRzRm9yOklkRm9ybXVsYXJpb1tdfX0sXHJcbiAgICBkZWZGb3I6e1tmIGluIElkRm9ybXVsYXJpb106ey8qYXJib2xVQTpJZFVuaWRhZEFuYWxpc2lzW10sICovIGhlcm1hbm8/OnRydWV9fVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBEYXRvc0J5UGFzc1BlcnNpc3RpYmxlcyA9IHtcclxuICAgIHJlc3B1ZXN0YXM6e1t1YSBpbiBJZFVuaWRhZEFuYWxpc2lzXTpSZXNwdWVzdGFzUmFpeltdfVxyXG4gICAgbW9kb0FsbWFjZW5hbWllbnRvOk1vZG9BbG1hY2VuYW1pZW50b1xyXG4gICAgcGVyc29uYTpzdHJpbmdcclxuICAgIHRhcmVhOklkVGFyZWFcclxuICAgIGlkcGVyOnN0cmluZ1xyXG4gICAgY2FyZ2FzOiBDYXJnYXNcclxuICAgIGluZm9ybWFjaW9uSGRyOiBJbmZvcm1hY2lvbkhkclxyXG4gICAgc29sb0xlY3R1cmE6IGJvb2xlYW5cclxuICAgIHRva2VuPzpzdHJpbmdcclxuICAgIG51bV9zaW5jcm8/Om51bWJlclxyXG4gICAgdGltZXN0YW1wRXN0cnVjdHVyYT86bnVtYmVyXHJcbn1cclxuXHJcbnR5cGUgQ29uZmlndXJhY2lvblNvcnRlb1RhYmxhID0ge1xyXG4gICAgbWV0b2RvOiBcInRhYmxhXCIsXHJcbiAgICBwYXJhbV9tZXRvZG86IHtcclxuICAgICAgICB0YWJsYTpzdHJpbmdbXSxcclxuICAgICAgICB2YXJfbGV0cmE6SWRWYXJpYWJsZSxcclxuICAgIH0gICAgXHJcbn1cclxuXHJcbnR5cGUgQ29uZmlndXJhY2lvblNvcnRlb0hhc2ggPSB7XHJcbiAgICBtZXRvZG86IFwiaGFzaFwiLFxyXG4gICAgcGFyYW1fbWV0b2RvOiB7XHJcbiAgICAgICAgdmFyX2NvZWY6IFtcclxuICAgICAgICAgICAge3ZhcjpJZFZhcmlhYmxlLCBjb2VmOm51bWJlcn0sXHJcbiAgICAgICAgICAgIHt2YXI6SWRWYXJpYWJsZSwgY29lZjpudW1iZXJ9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgZGl2aXNvcjogbnVtYmVyXHJcbiAgICB9ICAgIFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb25maWd1cmFjaW9uU29ydGVvID0ge1trZXkgaW4gSWRGb3JtdWxhcmlvXTpDb25maWd1cmFjaW9uU29ydGVvRm9ybXVsYXJpb31cclxuXHJcbmV4cG9ydCB0eXBlIENvbmZpZ3VyYWNpb25IYWJpbGl0YXJCb3RvbkZvcm11bGFyaW8gPSB7W2tleSBpbiBJZEZvcm11bGFyaW9dOkNvbmZpZ3VyYWNpb25IYWJpbGl0YXJCb3RvbkZvcm11bGFyaW9Gb3JtfVxyXG5cclxuZXhwb3J0IHR5cGUgQ29uZmlndXJhY2lvblNvcnRlb0Zvcm11bGFyaW8gPSB7XHJcbiAgICB1bmlkYWRfYW5hbGlzaXM6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICB1bmlkYWRfYW5hbGlzaXNfcGFkcmU6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICAvL2V4cHJfaW5jb21wbGV0aXR1ZDogc3RyaW5nIC8vXCJub3QgKHAxKSBvciBubyB0IChwMikgb3Igbm90KHAzKVwiXHJcbiAgICBleHByX2luY29tcGxldGl0dWQ6IHtcclxuICAgICAgICBba2V5IGluIG51bWJlcl06e2RvbWluaW86bnVtYmVyLCBleHByOnN0cmluZ31cclxuICAgIH0gXHJcbiAgICAvL2V4cHJfaW5jb21wbGV0aXR1ZF9qczogc3RyaW5nIC8vc2UgY3JlYSBhbCBjb21waWxhclxyXG4gICAgZXhwcl9pbmNvbXBsZXRpdHVkX2pzOiB7XHJcbiAgICAgICAgW2tleSBpbiBudW1iZXJdOntkb21pbmlvOm51bWJlciwgZXhwcjpzdHJpbmd9XHJcbiAgICB9IFxyXG4gICAgZGlzcGFyYWRvcjogSWRWYXJpYWJsZSAvL1wicDlcIlxyXG4gICAgLy9maWx0cm86IHN0cmluZyAvL1wicDM+PTE4XCJcclxuICAgIGZpbHRybzoge1xyXG4gICAgICAgIFtrZXkgaW4gbnVtYmVyXTp7ZG9taW5pbzpudW1iZXIsIGV4cHI6c3RyaW5nfVxyXG4gICAgfSBcclxuICAgIC8vZmlsdHJvX2pzOiBzdHJpbmcgLy9zZSBjcmVhIGFsIGNvbXBpbGFyXHJcbiAgICBmaWx0cm9fanM6IHtcclxuICAgICAgICBba2V5IGluIG51bWJlcl06e2RvbWluaW86bnVtYmVyLCBleHByOnN0cmluZ31cclxuICAgIH0gXHJcbiAgICBvcmRlbjoge1xyXG4gICAgICAgIHZhcmlhYmxlOklkVmFyaWFibGVcclxuICAgICAgICBvcmRlbjogMXwtMVxyXG4gICAgfVtdIC8vW1wicDNcIiwgXCJwMlwiLCBcInAxXCIsIFwicDBcIl0sIC8vIHAwIGVzIGNvbnN0cnVpZGEsIG5vIHZhIGVuIHBhcsOhbWV0cm9zLCBzZSBwb25lIHBhcmEgcXVlIGVsIG9yZGVuIHNlYSBkZXRlcm1pbsOtc3RpY29cclxuICAgIHBhcmFtZXRyb3M6SWRWYXJpYWJsZVtdLy8gW1wicDFcIixcInAyXCIsXCJwM1wiLCBcInA0XCIsIFwicDVcIiwgXCJwNlwiXSwgLy8gdmFyaWFibGVzIHF1ZSBhbnVsYW4gYWwgZGlzcGFyYWRvclxyXG4gICAgY2FudGlkYWRfc29ydGVhYmxlczogSWRWYXJpYWJsZVxyXG4gICAgY2FudGlkYWRfdG90YWw6IElkVmFyaWFibGVcclxuICAgIHJlc3VsdGFkbzogSWRWYXJpYWJsZSAvL1wicDExXCJcclxuICAgIHJlc3VsdGFkb19tYW51YWw6IElkVmFyaWFibGUgLy9cInAxMVwiXHJcbiAgICBzb3J0ZWFkb19tb3N0cmFyPzoge3NvdXJjZTpJZFZhcmlhYmxlLCB0YXJnZXQ6SWRWYXJpYWJsZX1bXSxcclxuICAgIGluY29tcGxldGFzOiBJZFZhcmlhYmxlXHJcbiAgICB2YXJpYWJsZUJvdG9uRm9ybXVsYXJpb1VBOiBJZFZhcmlhYmxlLy8nJEIuRjpTMV9QJ1xyXG4gICAgdmFyaWFibGVCb3RvbkZvcm11bGFyaW9VQUluZGl2aWR1YWw/OiBJZFZhcmlhYmxlIC8vJyRCLkY6STEnXHJcbiAgICBpZF9mb3JtdWxhcmlvX2luZGl2aWR1YWw/OiBJZEZvcm11bGFyaW8gLy8gJ0Y6STEnXHJcbiAgICBpZF9mb3JtdWxhcmlvX3BhZHJlPzogSWRGb3JtdWxhcmlvIC8vICdGOlMxJ1xyXG59ICYgKENvbmZpZ3VyYWNpb25Tb3J0ZW9IYXNoIHwgQ29uZmlndXJhY2lvblNvcnRlb1RhYmxhKVxyXG5cclxuZXhwb3J0IHR5cGUgQ29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpb0Zvcm0gPSB7XHJcbiAgICB1bmlkYWRfYW5hbGlzaXM6IElkVW5pZGFkQW5hbGlzaXMsXHJcbiAgICBleHByX2hhYmlsaXRhcl9ib3Rvbjogc3RyaW5nLFxyXG4gICAgZXhwcl9oYWJpbGl0YXJfYm90b25fanM6IHN0cmluZyxcclxuICAgIGhhYmlsaXRhcl9hZ3JlZ2FyX2xpc3RvOiBib29sZWFuXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB0b1BsYWluRm9yUGsoZm9yUGs6Rm9yUGspOlBsYWluRm9yUGt7XHJcbiAgICAvLyBAdHMtaWdub3JlIHNhYmVtb3MgcXVlIGhheSBxdWUgaGFjZXIgdW4gSlNPTlxyXG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGZvclBrKTtcclxufVxyXG5cclxuZXhwb3J0IHZhciBpdGVyYXRvcjo8VD4obzpPYmpldG9OdW1lcmFkb09BcnJheTxUPik9Pkl0ZXJhYmxlPFQ+ID0gTGlrZUFyLml0ZXJhdG9yXHJcbmV4cG9ydCB2YXIgZW1wdHk6PFQ+KG86T2JqZXRvTnVtZXJhZG9PQXJyYXk8VD58bnVsbHx1bmRlZmluZWQpPT5ib29sZWFuID0gTGlrZUFyLmVtcHR5XHJcblxyXG5kZWNsYXJlIGdsb2JhbCB7XHJcbiAgICBuYW1lc3BhY2UgbXlPd257XHJcbiAgICAgICAgaW50ZXJmYWNlIEFkZHJQYXJhbXMge1xyXG4gICAgICAgICAgICBzdGF0ZV9mb3JQazpzdHJpbmdcclxuICAgICAgICAgICAgc3RhdGVfcGlsYUZvclBrOnN0cmluZ1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRGlyZWNjaW9uQWNjaW9uID0gJ2F2YW5jZScgfCAncmV0cm9jZXNvJyB8ICdibGFucXVlbydcclxuXHJcbmV4cG9ydCB0eXBlIEVzdGFkb0FjY2lvbiA9IHtcclxuICAgIG9wZXJhdGl2bzogc3RyaW5nXHJcbiAgICBlc3RhZG86IHN0cmluZ1xyXG4gICAgZWFjY2lvbjogc3RyaW5nXHJcbiAgICBjb25kaWNpb246IHN0cmluZ1xyXG4gICAgZXN0YWRvX2Rlc3Rpbm86IHN0cmluZ1xyXG4gICAgZWFjY2lvbl9kaXJlY2Npb246IERpcmVjY2lvbkFjY2lvblxyXG4gICAgcGF0aF9pY29ub19zdmc6IHN0cmluZ1xyXG4gICAgbm9tYnJlX3Byb2NlZHVyZTogc3RyaW5nXHJcbiAgICBub21icmVfd3NjcmVlbjogc3RyaW5nXHJcbiAgICBkZXNhY3RpdmFfYm90b246IGJvb2xlYW5cclxuICAgIGNvbmZpcm1hOiBib29sZWFuXHJcbn0iXX0=
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwb3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdW5sb2dnZWQvdGlwb3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUFFYixrQ0FBa0M7SUF5ZWxDLFNBQWdCLFlBQVksQ0FBQyxLQUFXO1FBQ3BDLCtDQUErQztRQUMvQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUhELG9DQUdDO0lBRVUsUUFBQSxRQUFRLEdBQStDLE1BQU0sQ0FBQyxRQUFRLENBQUE7SUFDdEUsUUFBQSxLQUFLLEdBQTBELE1BQU0sQ0FBQyxLQUFLLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuaW1wb3J0IHtTdHJ1Y3R1cmUsIEZlZWRiYWNrfSBmcm9tIFwicm93LXZhbGlkYXRvclwiO1xyXG5pbXBvcnQgKiBhcyBMaWtlQXIgZnJvbSBcImxpa2UtYXJcIjtcclxuaW1wb3J0IHsgT3BlcmF0aXZvR2VuZXJhdG9yIH0gZnJvbSBcIm1ldGEtZW5jXCI7XHJcblxyXG5leHBvcnQgdHlwZSBNb2RvQWxtYWNlbmFtaWVudG8gPSAnc2Vzc2lvbid8IC8vIGN1YW5kbyBzZWEgcGFyYSB1bmEgc29sYSBwZXN0YcOxYSwgc2UgdXNhIGVuIG1vZG8gZGlyZWN0byxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xvY2FsJyAgICAvLyBwYXJhIHRvZG8gZWwgZGlzcG9zaXRpdm8sIHNlIHVzYSBhbCBjYXJnYXIgaG9qYXMgZGUgcnV0YSBlbnRyZXNcclxuXHJcbmV4cG9ydCB0eXBlIElkT3BjaW9uID0gbnVtYmVyXHJcbmV4cG9ydCB0eXBlIElkT3BlcmF0aXZvID0gJ2V0b2kyMTEnfCdlYWgyMDIyJ3wnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZFZhcmlhYmxlID0gJ3YxJ3wndjInfCd2Myd8J2V0Yy4uLid8J3Zkb21pbmlvJ3wnJHAwJ1xyXG5leHBvcnQgdHlwZSBJZFByZWd1bnRhID0gJ1AxJ3wnUDInfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkQmxvcXVlID0gJ0IxJ3wnQjInfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkRm9ybXVsYXJpbyA9ICdGMSd8J0YyJ3wnZXRjLi4uJ1xyXG5leHBvcnQgdHlwZSBJZFVuaWRhZEFuYWxpc2lzID0gJ3ZpdmllbmRhcyd8J2hvZ2FyZXMnfCdwZXJzb25hcydcclxuZXhwb3J0IHR5cGUgSWRCb3RvbkZvcm11bGFyaW8gPSAnQkY6RjEnfCdCRjpGMid8J2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRDb25zaXN0ZW5jaWEgPSAnQ09OUzEnfCdDT05TMid8J2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRUZXh0byA9ICdEMzBfUkVGJ3wnTUVTX1JFRid8J1NFTV9SRUYnfCdldGMuLi4nXHJcbmV4cG9ydCB0eXBlIElkRmlsdHJvID0gJ0ZJTFRSTzEnIHwgJ0ZJTFRSTzInIHwgJ2V0Yy4uLidcclxuZXhwb3J0IHR5cGUgSWRDYXNpbGxlcm8gPSBJZFZhcmlhYmxlIHwgSWRQcmVndW50YSB8IElkQmxvcXVlIHwgSWRGb3JtdWxhcmlvIHwgSWRGaWx0cm8gfCBJZE9wY2lvblxyXG5leHBvcnQgdHlwZSBJZEZpbiA9ICdmaW4nOyAvLyBuZXZlciAvLyBUT0RPOiBwb2RlciBwb25lciAnRklOJ1xyXG5leHBvcnQgdHlwZSBJZERlc3Rpbm8gPSBJZFByZWd1bnRhIHwgSWRCbG9xdWUgfCBJZEZpbiB8IElkRmlsdHJvIFxyXG5leHBvcnQgdHlwZSBWYWxvciA9IHN0cmluZ3xudW1iZXJ8bnVsbDtcclxuZXhwb3J0IHR5cGUgVGlwb2NEZXN0aW5vcyA9ICdQJ3wnQ1AnfCdCJ3wnRklMVFJPJ3wnQkYnXHJcbmV4cG9ydCB0eXBlIFRpcG9jID0gVGlwb2NEZXN0aW5vcyB8ICdGJ3wnTyd8J09NJ3wnQ09OUycgfCdURVhUTycgfCAnTElCUkUnIHwgJ1BNQVRSSVonXHJcblxyXG5leHBvcnQgdHlwZSBJZFRhcmVhID0gJ2VuY3UnfCdyZWN1J3wnc3VwZSd8J2luZ3InO1xyXG5cclxuZXhwb3J0IHR5cGUgRmVlZGJhY2tWYXJpYWJsZSA9IEZlZWRiYWNrPElkVmFyaWFibGUsIElkRmluPlxyXG5cclxuZXhwb3J0IHR5cGUgVGlwb1ZhcmlhYmxlcyA9ICd0ZXh0byd8J251bWVybyd8J2ZlY2hhJ3wnaG9yYXMnfCdob3JhJ1xyXG5cclxuZXhwb3J0IHR5cGUgRGVzcGxpZWd1ZSA9ICdob3Jpem9udGFsJ3wnb2N1bHRhJ1xyXG5cclxuZXhwb3J0IHR5cGUgQ2FzaWxsZXJvQmFzZSA9IHtcclxuICAgIGlkX2Nhc2lsbGVybz86c3RyaW5nXHJcbiAgICB0aXBvYzpUaXBvY1xyXG4gICAgY2FzaWxsZXJvOklkQ2FzaWxsZXJvXHJcbiAgICBub21icmU6c3RyaW5nXHJcbiAgICBzYWx0bzpJZERlc3Rpbm98SWRGaW58bnVsbFxyXG4gICAgdmVyX2lkOnN0cmluZ3xudWxsXHJcbiAgICBkZXNwbGllZ3VlRW5jYWJlemFkbzonbGF0ZXJhbCd8J3N1cGVyaW9yJ3xudWxsXHJcbiAgICBkZXNwbGllZ3VlQ29udGVuaWRvOid2ZXJ0aWNhbCd8J2hvcml6b250YWwnfG51bGxcclxuICAgIGRlc3BsaWVndWVUaXBvSW5wdXQ6J3RlbCd8bnVsbFxyXG4gICAgZGVzcGxpZWd1ZU9jdWx0YTpib29sZWFufG51bGxcclxuICAgIGxlZXI6Ym9vbGVhbnxudWxsXHJcbiAgICBhY2xhcmFjaW9uOnN0cmluZ3xudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpJZFZhcmlhYmxlfG51bGxcclxuICAgIHZhcl9uYW1lPzpJZFZhcmlhYmxlfG51bGxcclxuICAgIHZhcl9uYW1lX2VzcGVjaWFsPzpzdHJpbmd8bnVsbFxyXG4gICAgdGlwb3Zhcj86VGlwb1ZhcmlhYmxlc3wnb3BjaW9uZXMnfCdzaV9ubyd8bnVsbFxyXG4gICAgY2FzaWxsZXJvcz86Q2FzaWxsZXJvc0ltcGxlbWVudGFkb3NbXXxudWxsXHJcbiAgICBleHByZXNpb25faGFiaWxpdGFyPzpzdHJpbmdcclxuICAgIGV4cHJlc2lvbl9oYWJpbGl0YXJfanM/OnN0cmluZ1xyXG4gICAgZXhwcmVzaW9uX2F1dG9pbmdyZXNhcj86c3RyaW5nXHJcbiAgICBleHByZXNpb25fYXV0b2luZ3Jlc2FyX2pzPzpzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgT3BjaW9uPUNhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonTydcclxuICAgIGNhc2lsbGVybzpJZE9wY2lvblxyXG4gICAgY2FzaWxsZXJvczpQcmVndW50YVNpbXBsZVtdXHJcbiAgICB2YXJfbmFtZT86bnVsbFxyXG4gICAgdGlwb3Zhcj86bnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86bnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBPcGNpb25TaT1PcGNpb24gJiB7XHJcbiAgICBjYXNpbGxlcm86MVxyXG4gICAgbm9tYnJlOidTw60nXHJcbiAgICBjYXNpbGxlcm9zOlByZWd1bnRhU2ltcGxlW10gXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE9wY2lvbk5vPU9wY2lvbiAmIHtcclxuICAgIGNhc2lsbGVybzoyXHJcbiAgICBub21icmU6J05vJ1xyXG4gICAgY2FzaWxsZXJvczpQcmVndW50YVNpbXBsZVtdIFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBPcGNpb25NdWx0aXBsZT1DYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J09NJ1xyXG4gICAgdGlwb3Zhcjonb3BjaW9uZXMnXHJcbiAgICB2YXJfbmFtZTpJZFZhcmlhYmxlXHJcbiAgICBjYXNpbGxlcm9zOltPcGNpb25TaSwgT3BjaW9uTm9dXHJcbiAgICBjYWxjdWxhZGE/OmJvb2xlYW5cclxuICAgIGxpYnJlPzpib29sZWFuXHJcbiAgICB2YWxvcl9uc19uYzogYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFByZWd1bnRhQmFzZSA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonUCdcclxuICAgIG9wdGF0aXZvOmJvb2xlYW58bnVsbFxyXG4gICAgY2FzaWxsZXJvOklkUHJlZ3VudGFcclxuICAgIGNhbGN1bGFkYTogYm9vbGVhbnxudWxsXHJcbiAgICBsaWJyZTogYm9vbGVhbnxudWxsXHJcbiAgICB2YWxvcl9uc19uYzogYW55XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFByZWd1bnRhU2ltcGxlID0gUHJlZ3VudGFCYXNlICYge1xyXG4gICAgdGlwb3ZhcjpUaXBvVmFyaWFibGVzXHJcbiAgICB2YXJfbmFtZTpJZFZhcmlhYmxlXHJcbiAgICBsb25naXR1ZDpzdHJpbmdcclxuICAgIHNhbHRvX25zX25jOklkVmFyaWFibGV8bnVsbFxyXG4gICAgY2FzaWxsZXJvczogUHJlZ3VudGFTaW1wbGVbXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvblNpTm8gPSBQcmVndW50YUJhc2UgJiB7XHJcbiAgICB0aXBvdmFyOidzaV9ubydcclxuICAgIHZhcl9uYW1lOklkVmFyaWFibGVcclxuICAgIHNhbHRvX25zX25jOklkVmFyaWFibGV8bnVsbFxyXG4gICAgY2FzaWxsZXJvczogW09wY2lvblNpLCBPcGNpb25Ob11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGFDb25PcGNpb25lcyA9IFByZWd1bnRhQmFzZSAmIHtcclxuICAgIHRpcG92YXI6J29wY2lvbmVzJ1xyXG4gICAgdmFyX25hbWU6SWRWYXJpYWJsZVxyXG4gICAgc2FsdG9fbnNfbmM6SWRWYXJpYWJsZXxudWxsXHJcbiAgICBjYXNpbGxlcm9zOiBPcGNpb25bXVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBQcmVndW50YUNvbk9wY2lvbmVzTXVsdGlwbGVzID0gUHJlZ3VudGFCYXNlICYge1xyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGNhc2lsbGVyb3M6IE9wY2lvbk11bHRpcGxlW11cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUHJlZ3VudGE9UHJlZ3VudGFTaW1wbGUgfCBQcmVndW50YUNvblNpTm8gfCBQcmVndW50YUNvbk9wY2lvbmVzIHwgUHJlZ3VudGFDb25PcGNpb25lc011bHRpcGxlc1xyXG5cclxuZXhwb3J0IHR5cGUgQ29uanVudG9QcmVndW50YXM9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonQ1AnXHJcbiAgICBjYXNpbGxlcm86SWRQcmVndW50YVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGNhc2lsbGVyb3M6UHJlZ3VudGFbXVxyXG59XHJcblxyXG4vKlxyXG5leHBvcnQgaW50ZXJmYWNlIElDb250ZW5pZG8gZXh0ZW5kcyBDYXNpbGxlcm9CYXNlIHtcclxuICAgIGNhc2lsbGVyb3M6SUNvbnRlbmlkb1tdXHJcbn1cclxuKi9cclxuXHJcbmV4cG9ydCB0eXBlIEZpbHRybyA9IENhc2lsbGVyb0Jhc2UgJiB7XHJcbiAgICB0aXBvYzonRklMVFJPJ1xyXG4gICAgY2FzaWxsZXJvOklkRmlsdHJvXHJcbiAgICB2YXJfbmFtZT86bnVsbFxyXG4gICAgdGlwb3Zhcj86bnVsbFxyXG4gICAgcHJpbWVyYV92YXJpYWJsZT86bnVsbFxyXG4gICAgY2FsY3VsYWRhPzpudWxsXHJcbiAgICBsaWJyZT86bnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb250ZW5pZG9Gb3JtdWxhcmlvPUJsb3F1ZXxQcmVndW50YXxDb25qdW50b1ByZWd1bnRhc3xGaWx0cm98Qm90b25Gb3JtdWxhcmlvfENvbnNpc3RlbmNpYXxUZXh0b1xyXG5cclxuZXhwb3J0IHR5cGUgQmxvcXVlID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOidCJ1xyXG4gICAgY2FzaWxsZXJvOklkQmxvcXVlXHJcbiAgICBjYXNpbGxlcm9zOkNvbnRlbmlkb0Zvcm11bGFyaW9bXVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIHVuaWRhZF9hbmFsaXNpcz86SWRVbmlkYWRBbmFsaXNpc1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDb25zaXN0ZW5jaWEgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0NPTlMnXHJcbiAgICBjYXNpbGxlcm86SWRDb25zaXN0ZW5jaWFcclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgVGV4dG8gPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J1RFWFRPJ1xyXG4gICAgY2FzaWxsZXJvOklkVGV4dG9cclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgTGlicmUgPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0xJQlJFJ1xyXG4gICAgY2FzaWxsZXJvOklkVGV4dG9cclxuICAgIHZhcl9uYW1lPzpudWxsXHJcbiAgICB0aXBvdmFyPzpudWxsXHJcbiAgICBwcmltZXJhX3ZhcmlhYmxlPzpudWxsXHJcbn1cclxuZXhwb3J0IHR5cGUgQm90b25Gb3JtdWxhcmlvID0gQ2FzaWxsZXJvQmFzZSAmIHtcclxuICAgIHRpcG9jOidCRidcclxuICAgIGNhc2lsbGVybzpJZEJvdG9uRm9ybXVsYXJpb1xyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIHByaW1lcmFfdmFyaWFibGU/Om51bGxcclxuICAgIHZhcl9uYW1lX0JGPzpJZFZhcmlhYmxlXHJcbiAgICBsb25naXR1ZD86c3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEZvcm11bGFyaW8gPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J0YnXHJcbiAgICBjYXNpbGxlcm86SWRGb3JtdWxhcmlvXHJcbiAgICBmb3JtdWxhcmlvX3ByaW5jaXBhbDpib29sZWFuXHJcbiAgICBjYXNpbGxlcm9zOkNvbnRlbmlkb0Zvcm11bGFyaW9bXVxyXG4gICAgdmFyX25hbWU/Om51bGxcclxuICAgIHRpcG92YXI/Om51bGxcclxuICAgIGhlcm1hbm8/OnRydWVcclxuICAgIHVuaWRhZF9hbmFsaXNpczpJZFVuaWRhZEFuYWxpc2lzXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFBNYXRyaXogPSBDYXNpbGxlcm9CYXNlICYge1xyXG4gICAgdGlwb2M6J1BNQVRSSVonXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENhc2lsbGVyb3NJbXBsZW1lbnRhZG9zPUZvcm11bGFyaW98QmxvcXVlfEZpbHRyb3xDb25qdW50b1ByZWd1bnRhc3xQcmVndW50YXxPcGNpb25NdWx0aXBsZXxPcGNpb258Qm90b25Gb3JtdWxhcmlvfENvbnNpc3RlbmNpYXxUZXh0b3xMaWJyZXxQTWF0cml6XHJcblxyXG5leHBvcnQgdHlwZSBDYW1wb1BrUmFpeiA9ICd2aXZpZW5kYSd8J2V0Yy4uLic7XHJcblxyXG5leHBvcnQgdHlwZSBWYWx1ZVBrUmFpeiA9IElkRW5jXHJcblxyXG5leHBvcnQgdHlwZSBGb3JQa1JhaXo9e1xyXG4gICAgZm9ybXVsYXJpbzpJZEZvcm11bGFyaW9cclxufSAmIHtcclxuICAgIFtjYW1wbyBpbiBDYW1wb1BrUmFpel06VmFsdWVQa1JhaXpcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgQ2FtcG9QayA9ICd2aXZpZW5kYSd8J2hvZ2FyJ3wncGVyc29uYSd8J2V0Yy4uLic7XHJcbmV4cG9ydCB0eXBlIEZvclBrID0gRm9yUGtSYWl6ICYge1xyXG4gICAgW2NhbXBvIGluIENhbXBvUGtdPzpudW1iZXJcclxufVxyXG5leHBvcnQgdHlwZSBQbGFpbkZvclBrPSd7XCJmb3JtdWxhcmlvXCI6XCJGOkYxXCIsXCJ2aXZpZW5kYVwiOlwiMTAyMDJcIixcInBlcnNvbmFcIjpudWxsfSd8J2V0Yy4uLic7XHJcblxyXG5leHBvcnQgdHlwZSBPYmpldG9OdW1lcmFkb09BcnJheTxUPiA9IFRbXSB8IHtbbiBpbiBudW1iZXJdOlR9XHJcblxyXG5leHBvcnQgdHlwZSBSZXNwdWVzdGFzVW5hVUEgPSB7XHJcbiAgICBbcHJlZ3VudGEgaW4gSWRWYXJpYWJsZV06VmFsb3JcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzcHVlc3RhTGFzVUEgPSB7XHJcbiAgICBbdWEgaW4gSWRVbmlkYWRBbmFsaXNpc106T2JqZXRvTnVtZXJhZG9PQXJyYXk8UmVzcHVlc3Rhcz5cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgUmVzcHVlc3Rhcz0gUmVzcHVlc3Rhc1VuYVVBICYgUmVzcHVlc3RhTGFzVUFcclxuXHJcbmV4cG9ydCB0eXBlIFJlc3B1ZXN0YXNSYWl6PVJlc3B1ZXN0YXMgJiB7XHJcbiAgICByZXN1bWVuRXN0YWRvOlJlc3VtZW5Fc3RhZG9cclxuICAgIHJlc3VtZW5Fc3RhZG9TdXA6UmVzdW1lbkVzdGFkb1xyXG4gICAgJGRpcnR5OmJvb2xlYW5cclxuICAgIGNvZE5vUmVhOiBzdHJpbmd8bnVsbFxyXG4gICAgY29kUmVhOiBudW1iZXJ8bnVsbFxyXG4gICAgY29kTm9SZWFTdXA6IHN0cmluZ3xudWxsXHJcbiAgICBjb2RSZWFTdXA6IG51bWJlcnxudWxsXHJcbn1cclxuXHJcbi8qXHJcbiAgICBhY2xhcmFjacOzbjpcclxuICAgIHt2MToneCcsIHYyOid4JywgcGVyc29uYXM6W3twMToxLCBwMjoneH0se3AxOjIsIHAyOnh9XSwgbWFzY290YXM6W10gfVxyXG4gICAgZXN0w6EgYW5pZGFkbyBwb3IgdW5pZGFkIGRlIGFuw6FsaXNpc1xyXG4qL1xyXG5cclxuZXhwb3J0IHR5cGUgVW5pZGFkQW5hbGlzaXMgPSB7XHJcbiAgICB1bmlkYWRfYW5hbGlzaXM6SWRVbmlkYWRBbmFsaXNpcywgXHJcbiAgICBwYWRyZT86SWRVbmlkYWRBbmFsaXNpcywgXHJcbiAgICBwa19hZ3JlZ2FkYTpDYW1wb1BrLCBcclxuICAgIHByaW5jaXBhbD86Ym9vbGVhbiwgXHJcbiAgICBoaWphczoge1trIGluIElkVW5pZGFkQW5hbGlzaXNdPzogVW5pZGFkQW5hbGlzaXN9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFRFTSA9IHtcclxuICAgIG5vbWNhbGxlOnN0cmluZ1xyXG4gICAgZG9taW5pbzpudW1iZXJcclxuICAgIHNlY3RvcjpzdHJpbmdcclxuICAgIGVkaWZpY2lvOnN0cmluZ1xyXG4gICAgZW50cmFkYTpzdHJpbmdcclxuICAgIG5yb2NhdGFzdHJhbDpzdHJpbmdcclxuICAgIHBpc286c3RyaW5nXHRcclxuICAgIGRlcGFydGFtZW50bzpzdHJpbmdcclxuICAgIGhhYml0YWNpb246c3RyaW5nXHJcbiAgICBjYXNhOnN0cmluZ1xyXG4gICAgcHJpb3JpZGFkOjF8MnwzXHJcbiAgICBvYnNlcnZhY2lvbmVzOnN0cmluZ1xyXG4gICAgc2VsZWNjaW9uYWRvOm51bWJlcixcclxuICAgIGNpdGE6IHN0cmluZyxcclxuICAgIGNhcmdhOnN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBSZXN1bWVuRXN0YWRvID0gJ3ZhY2lvJyB8ICdjb24gcHJvYmxlbWFzJyB8ICdpbmNvbXBsZXRvJyB8ICdvaycgfCAnbm8gcmVhJyB8ICdjaXRhIHBhY3RhZGEnO1xyXG5cclxuZXhwb3J0IHR5cGUgSW5mb1RhcmVhPSB7XHJcbiAgICB0YXJlYTogSWRUYXJlYVxyXG4gICAgbm90YXM/OnN0cmluZ1xyXG4gICAgZmVjaGFfYXNpZ25hY2lvbj86RGF0ZVxyXG4gICAgYXNpZ25hZG8/OnN0cmluZ1xyXG4gICAgbWFpbl9mb3JtOiBJZEZvcm11bGFyaW9cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgVmlzaXRhPXtcclxuICAgIGZlY2hhOiBzdHJpbmcgfCBudWxsXHJcbiAgICBob3JhOiBzdHJpbmcgfCBudWxsXHJcbiAgICBpZHBlcjogc3RyaW5nIHwgbnVsbFxyXG4gICAgb2JzZXJ2YWNpb25lczogc3RyaW5nIHwgbnVsbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSAgRGF0b3NIZHJVYVBwYWw9IHtcclxuICAgIHRhcmVhOiBJbmZvVGFyZWFcclxuICAgIHRlbTogVEVNXHJcbiAgICBcclxuLypcclxuICAgIGFjbGFyYWNpw7NuOlxyXG4gICAge3YxOid4JywgdjI6J3gnLCBwZXJzb25hczpbe3AxOjEsIHAyOid4fSx7cDE6MiwgcDI6eH1dLCBtYXNjb3RhczpbXSB9XHJcbiAgICBlc3TDoSBhbmlkYWRvIHBvciB1bmlkYWQgZGUgYW7DoWxpc2lzXHJcbiovXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIElkQ2FyZ2E9XCIxXCJ8XCIyXCJ8XCJldGNcIlxyXG5cclxuZXhwb3J0IHR5cGUgRXN0YWRvQ2FyZ2E9J3Jlc3VtZW4nfCdyZWxldmFtaWVudG8nfCdyZWNpYm8nXHJcblxyXG5leHBvcnQgdHlwZSBDYXJnYT17XHJcbiAgICBmZWNoYTogRGF0ZVxyXG4gICAgZXN0YWRvX2NhcmdhOiBFc3RhZG9DYXJnYVxyXG4gICAgbmVjZXNhcmlhczogbnVtYmVyXHJcbiAgICBvYnNlcnZhY2lvbmVzOiBzdHJpbmdcclxuICAgIHJlY2VwY2lvbmlzdGE6IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBDYXJnYXM9e1xyXG4gICAgW2lkQ2FyZ2EgaW4gSWRDYXJnYV06IENhcmdhXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEVzdHJ1Y3R1cmFSb3dWYWxpZGF0b3I9U3RydWN0dXJlPElkVmFyaWFibGUsVmFsb3IsSWRGaW4+O1xyXG5cclxuZXhwb3J0IHR5cGUgTW9kb0Rlc3BsaWVndWUgPSAnbWV0YWRhdG9zJ3wncmVsZXZhbWllbnRvJ3wnUERGJ1xyXG5cclxuZXhwb3J0IHR5cGUgSW5mb0Zvcm11bGFyaW89e1xyXG4gICAgY2FzaWxsZXJvczpGb3JtdWxhcmlvLCAvLyBjYXNpbGxlcm9zIGFwbGFuYWRvc1xyXG4gICAgZXN0cnVjdHVyYVJvd1ZhbGlkYXRvcjpFc3RydWN0dXJhUm93VmFsaWRhdG9yIC8vIGVzdHJ1Y3R1cmEgZGUgdmFyaWFibGVzIHBhcmEgZWwgUm93VmFsaWRhdG9yXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIElkUmVzdWx0YWRvID0gJ0FWRVJJR1VBUid8J1RPRE8nO1xyXG5cclxuZXhwb3J0IHR5cGUgVGFyZWFzRXN0cnVjdHVyYT17XHJcbiAgICBbaWRUYXJlYSBpbiBJZFRhcmVhXTp7XHJcbiAgICAgICAgcmVzdWx0YWRvczp7XHJcbiAgICAgICAgICAgIFtpZFJlc3VsdGFkbyBpbiBJZFJlc3VsdGFkb106e1xyXG4gICAgICAgICAgICAgICAgZGVzY3JpcGNpb246c3RyaW5nXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIEVzdHJ1Y3R1cmEgPSB7XHJcbiAgICBmb3JtdWxhcmlvczp7IFxyXG4gICAgICAgIFtub21icmVGb3JtdWxhcmlvIGluIElkRm9ybXVsYXJpb106SW5mb0Zvcm11bGFyaW9cclxuICAgIH1cclxuICAgIHVuaWRhZGVzX2FuYWxpc2lzOnsgXHJcbiAgICAgICAgW2lkVW5pZGFkQW5hbGlzaXMgaW4gSWRVbmlkYWRBbmFsaXNpc106IFVuaWRhZEFuYWxpc2lzXHJcbiAgICB9XHJcbiAgICB0YXJlYXM6VGFyZWFzRXN0cnVjdHVyYVxyXG4gICAgdWFQcGFsOiBJZFVuaWRhZEFuYWxpc2lzXHJcbiAgICBwa0FncmVnYWRhVWFQcGFsOiBDYW1wb1BrUmFpelxyXG4gICAgdGltZXN0YW1wOm51bWJlclxyXG4gICAgb3BlcmF0aXZvOklkT3BlcmF0aXZvXHJcbiAgICBjb25maWdTb3J0ZW86IENvbmZpZ3VyYWNpb25Tb3J0ZW9cclxuICAgIGhhYmlsaXRhY2lvbkJvdG9uRm9ybXVsYXJpbzogQ29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpb1xyXG4gICAgcGVybWl0ZUdlbmVyYXJNdWVzdHJhOiBib29sZWFuXHJcbiAgICBjb25SZWFIb2dhcjogYm9vbGVhblxyXG5cdG5vUmVhczogeyBcclxuXHQgICAgICBub19yZWE6IHN0cmluZyAgXHJcblx0XHQgIGRlc2NyaXBjaW9uOiBzdHJpbmdcclxuXHRcdCAgZ3J1cG86ICAgICBzdHJpbmcgICAgXHJcblx0XHQgIHZhcmlhYmxlOiAgc3RyaW5nXHJcblx0XHQgIHZhbG9yOiAgICAgc3RyaW5nXHJcblx0XHQgIGdydXBvMDogICAgc3RyaW5nXHJcblx0fVtdXHJcbiAgICBub1JlYXNTdXA6IHsgXHJcbiAgICAgICAgbm9fcmVhX3N1cDogc3RyaW5nICBcclxuICAgICAgICBkZXNjX25vcmVhX3N1cDogc3RyaW5nXHJcbiAgICAgICAgZ3J1cG9fc3VwOiAgICAgc3RyaW5nICAgIFxyXG4gICAgICAgIHZhcmlhYmxlX3N1cDogIHN0cmluZ1xyXG4gICAgICAgIHZhbG9yX3N1cDogICAgIHN0cmluZ1xyXG4gICAgICAgIGdydXBvMF9zdXA6ICAgIHN0cmluZ1xyXG4gIH1bXVxyXG4gICAgZGVmYXVsdEluZm9ybWFjaW9uSGRyOiBEYXRvc0hkclVhUHBhbFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBJZEVuYyA9IDEzMDAzMXwxMzAwMzI7XHJcbmV4cG9ydCB0eXBlIEluZm9ybWFjaW9uSGRyPXtbZW5jIGluIElkRW5jXTogRGF0b3NIZHJVYVBwYWx9XHJcblxyXG5leHBvcnQgdHlwZSBDYXNvU3RhdGU9e1xyXG4gICAgb3BjaW9uZXM6eyAvLyBkYXRvcyBkZSBuYXZlZ2FjacOzbiBxdWUgZWxpamUgZWwgdXN1YXJpb1xyXG4gICAgICAgIGZvclBrOkZvclBrfG51bGwgLy8gw61uZGljZSBkZW50cm8gZGUgbGFzIHVuaWRhZGVzIGRlIGFuw6FsaXNpcy4gTnVsbCA9IGVuIGhvamEgZGUgcnV0YVxyXG4gICAgICAgIHBpbGFGb3JQazpGb3JQa1tdXHJcbiAgICAgICAgbW9kb0Rlc3BsaWVndWU6TW9kb0Rlc3BsaWVndWVcclxuICAgICAgICBiaWVudmVuaWRvOmJvb2xlYW5cclxuICAgICAgICBtb2RvRGlyZWN0bzpib29sZWFuXHJcbiAgICAgICAgbW9kb0JvcnJhclJlc3B1ZXN0YTpJZFZhcmlhYmxlfG51bGxcclxuICAgICAgICBjb25DYW1wb09wY2lvbmVzOmJvb2xlYW5cclxuICAgICAgICBzYWx0b0F1dG9tYXRpY286Ym9vbGVhblxyXG4gICAgfSwgXHJcbiAgICBtb2RvOnsgLy8gbm8gc2UgcGVyc2lzdGVcclxuICAgICAgICBkZW1vOmJvb2xlYW5cclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRGVmT3BlcmF0aXZvID0ge1xyXG4gICAgZXNOb1JlYToocmVzcHVlc3RhczpSZXNwdWVzdGFzKT0+IHtjb2ROb1JlYTpzdHJpbmd8bnVsbCwgZXNOb1JlYTpib29sZWFufSxcclxuICAgIGVzTm9SZWFTdXA6KHJlc3B1ZXN0YXM6UmVzcHVlc3Rhcyk9PiB7Y29kTm9SZWFTdXA6c3RyaW5nfG51bGwsIGVzTm9SZWFTdXA6Ym9vbGVhbn0sXHJcbiAgICBlc1JlYWxpemFkYToocmVzcHVlc3RhczpSZXNwdWVzdGFzKT0+IHtjb2RSZWE6bnVtYmVyfG51bGwsIGVzUmVhOmJvb2xlYW59LFxyXG4gICAgZXNSZWFsaXphZGFTdXA6KHJlc3B1ZXN0YXM6UmVzcHVlc3Rhcyk9PiB7Y29kUmVhU3VwOm51bWJlcnxudWxsLCBlc1JlYVN1cDpib29sZWFufSxcclxuICAgIFVBcHJpbmNpcGFsOiBJZFVuaWRhZEFuYWxpc2lzLFxyXG4gICAgZGVmVUE6e1tpIGluIElkVW5pZGFkQW5hbGlzaXNdOntwazpJZFZhcmlhYmxlLCBpbmNsdWlkYXM6SWRVbmlkYWRBbmFsaXNpc1tdLCBpZHNGb3I6SWRGb3JtdWxhcmlvW119fSxcclxuICAgIGRlZkZvcjp7W2YgaW4gSWRGb3JtdWxhcmlvXTp7LyphcmJvbFVBOklkVW5pZGFkQW5hbGlzaXNbXSwgKi8gaGVybWFubz86dHJ1ZX19XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIERhdG9zQnlQYXNzUGVyc2lzdGlibGVzID0ge1xyXG4gICAgcmVzcHVlc3Rhczp7W3VhIGluIElkVW5pZGFkQW5hbGlzaXNdOlJlc3B1ZXN0YXNSYWl6W119XHJcbiAgICBtb2RvQWxtYWNlbmFtaWVudG86TW9kb0FsbWFjZW5hbWllbnRvXHJcbiAgICBwZXJzb25hOnN0cmluZ1xyXG4gICAgdGFyZWE6SWRUYXJlYVxyXG4gICAgaWRwZXI6c3RyaW5nXHJcbiAgICBjYXJnYXM6IENhcmdhc1xyXG4gICAgaW5mb3JtYWNpb25IZHI6IEluZm9ybWFjaW9uSGRyXHJcbiAgICBzb2xvTGVjdHVyYTogYm9vbGVhblxyXG4gICAgdG9rZW4/OnN0cmluZ1xyXG4gICAgbnVtX3NpbmNybz86bnVtYmVyXHJcbiAgICB0aW1lc3RhbXBFc3RydWN0dXJhPzpudW1iZXJcclxufVxyXG5cclxudHlwZSBDb25maWd1cmFjaW9uU29ydGVvVGFibGEgPSB7XHJcbiAgICBtZXRvZG86IFwidGFibGFcIixcclxuICAgIHBhcmFtX21ldG9kbzoge1xyXG4gICAgICAgIHRhYmxhOnN0cmluZ1tdLFxyXG4gICAgICAgIHZhcl9sZXRyYTpJZFZhcmlhYmxlLFxyXG4gICAgfSAgICBcclxufVxyXG5cclxudHlwZSBDb25maWd1cmFjaW9uU29ydGVvSGFzaCA9IHtcclxuICAgIG1ldG9kbzogXCJoYXNoXCIsXHJcbiAgICBwYXJhbV9tZXRvZG86IHtcclxuICAgICAgICB2YXJfY29lZjogW1xyXG4gICAgICAgICAgICB7dmFyOklkVmFyaWFibGUsIGNvZWY6bnVtYmVyfSxcclxuICAgICAgICAgICAge3ZhcjpJZFZhcmlhYmxlLCBjb2VmOm51bWJlcn0sXHJcbiAgICAgICAgXSxcclxuICAgICAgICBkaXZpc29yOiBudW1iZXJcclxuICAgIH0gICAgXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIENvbmZpZ3VyYWNpb25Tb3J0ZW8gPSB7W2tleSBpbiBJZEZvcm11bGFyaW9dOkNvbmZpZ3VyYWNpb25Tb3J0ZW9Gb3JtdWxhcmlvfVxyXG5cclxuZXhwb3J0IHR5cGUgQ29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpbyA9IHtba2V5IGluIElkRm9ybXVsYXJpb106Q29uZmlndXJhY2lvbkhhYmlsaXRhckJvdG9uRm9ybXVsYXJpb0Zvcm19XHJcblxyXG5leHBvcnQgdHlwZSBDb25maWd1cmFjaW9uU29ydGVvRm9ybXVsYXJpbyA9IHtcclxuICAgIHVuaWRhZF9hbmFsaXNpczogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIHVuaWRhZF9hbmFsaXNpc19wYWRyZTogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIC8vZXhwcl9pbmNvbXBsZXRpdHVkOiBzdHJpbmcgLy9cIm5vdCAocDEpIG9yIG5vIHQgKHAyKSBvciBub3QocDMpXCJcclxuICAgIGV4cHJfaW5jb21wbGV0aXR1ZDoge1xyXG4gICAgICAgIFtrZXkgaW4gbnVtYmVyXTp7ZG9taW5pbzpudW1iZXIsIGV4cHI6c3RyaW5nfVxyXG4gICAgfSBcclxuICAgIC8vZXhwcl9pbmNvbXBsZXRpdHVkX2pzOiBzdHJpbmcgLy9zZSBjcmVhIGFsIGNvbXBpbGFyXHJcbiAgICBleHByX2luY29tcGxldGl0dWRfanM6IHtcclxuICAgICAgICBba2V5IGluIG51bWJlcl06e2RvbWluaW86bnVtYmVyLCBleHByOnN0cmluZ31cclxuICAgIH0gXHJcbiAgICBkaXNwYXJhZG9yOiBJZFZhcmlhYmxlIC8vXCJwOVwiXHJcbiAgICAvL2ZpbHRybzogc3RyaW5nIC8vXCJwMz49MThcIlxyXG4gICAgZmlsdHJvOiB7XHJcbiAgICAgICAgW2tleSBpbiBudW1iZXJdOntkb21pbmlvOm51bWJlciwgZXhwcjpzdHJpbmd9XHJcbiAgICB9IFxyXG4gICAgLy9maWx0cm9fanM6IHN0cmluZyAvL3NlIGNyZWEgYWwgY29tcGlsYXJcclxuICAgIGZpbHRyb19qczoge1xyXG4gICAgICAgIFtrZXkgaW4gbnVtYmVyXTp7ZG9taW5pbzpudW1iZXIsIGV4cHI6c3RyaW5nfVxyXG4gICAgfSBcclxuICAgIG9yZGVuOiB7XHJcbiAgICAgICAgdmFyaWFibGU6SWRWYXJpYWJsZVxyXG4gICAgICAgIG9yZGVuOiAxfC0xXHJcbiAgICB9W10gLy9bXCJwM1wiLCBcInAyXCIsIFwicDFcIiwgXCJwMFwiXSwgLy8gcDAgZXMgY29uc3RydWlkYSwgbm8gdmEgZW4gcGFyw6FtZXRyb3MsIHNlIHBvbmUgcGFyYSBxdWUgZWwgb3JkZW4gc2VhIGRldGVybWluw61zdGljb1xyXG4gICAgcGFyYW1ldHJvczpJZFZhcmlhYmxlW10vLyBbXCJwMVwiLFwicDJcIixcInAzXCIsIFwicDRcIiwgXCJwNVwiLCBcInA2XCJdLCAvLyB2YXJpYWJsZXMgcXVlIGFudWxhbiBhbCBkaXNwYXJhZG9yXHJcbiAgICBjYW50aWRhZF9zb3J0ZWFibGVzOiBJZFZhcmlhYmxlXHJcbiAgICBjYW50aWRhZF90b3RhbDogSWRWYXJpYWJsZVxyXG4gICAgcmVzdWx0YWRvOiBJZFZhcmlhYmxlIC8vXCJwMTFcIlxyXG4gICAgcmVzdWx0YWRvX21hbnVhbDogSWRWYXJpYWJsZSAvL1wicDExXCJcclxuICAgIHNvcnRlYWRvX21vc3RyYXI/OiB7c291cmNlOklkVmFyaWFibGUsIHRhcmdldDpJZFZhcmlhYmxlfVtdLFxyXG4gICAgaW5jb21wbGV0YXM6IElkVmFyaWFibGVcclxuICAgIHZhcmlhYmxlQm90b25Gb3JtdWxhcmlvVUE6IElkVmFyaWFibGUvLyckQi5GOlMxX1AnXHJcbiAgICB2YXJpYWJsZUJvdG9uRm9ybXVsYXJpb1VBSW5kaXZpZHVhbD86IElkVmFyaWFibGUgLy8nJEIuRjpJMSdcclxuICAgIGlkX2Zvcm11bGFyaW9faW5kaXZpZHVhbD86IElkRm9ybXVsYXJpbyAvLyAnRjpJMSdcclxuICAgIGlkX2Zvcm11bGFyaW9fcGFkcmU/OiBJZEZvcm11bGFyaW8gLy8gJ0Y6UzEnXHJcbn0gJiAoQ29uZmlndXJhY2lvblNvcnRlb0hhc2ggfCBDb25maWd1cmFjaW9uU29ydGVvVGFibGEpXHJcblxyXG5leHBvcnQgdHlwZSBDb25maWd1cmFjaW9uSGFiaWxpdGFyQm90b25Gb3JtdWxhcmlvRm9ybSA9IHtcclxuICAgIHVuaWRhZF9hbmFsaXNpczogSWRVbmlkYWRBbmFsaXNpcyxcclxuICAgIGV4cHJfaGFiaWxpdGFyX2JvdG9uOiBzdHJpbmcsXHJcbiAgICBleHByX2hhYmlsaXRhcl9ib3Rvbl9qczogc3RyaW5nLFxyXG4gICAgaGFiaWxpdGFyX2FncmVnYXJfbGlzdG86IGJvb2xlYW5cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvUGxhaW5Gb3JQayhmb3JQazpGb3JQayk6UGxhaW5Gb3JQa3tcclxuICAgIC8vIEB0cy1pZ25vcmUgc2FiZW1vcyBxdWUgaGF5IHF1ZSBoYWNlciB1biBKU09OXHJcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoZm9yUGspO1xyXG59XHJcblxyXG5leHBvcnQgdmFyIGl0ZXJhdG9yOjxUPihvOk9iamV0b051bWVyYWRvT0FycmF5PFQ+KT0+SXRlcmFibGU8VD4gPSBMaWtlQXIuaXRlcmF0b3JcclxuZXhwb3J0IHZhciBlbXB0eTo8VD4obzpPYmpldG9OdW1lcmFkb09BcnJheTxUPnxudWxsfHVuZGVmaW5lZCk9PmJvb2xlYW4gPSBMaWtlQXIuZW1wdHlcclxuXHJcbmRlY2xhcmUgZ2xvYmFsIHtcclxuICAgIG5hbWVzcGFjZSBteU93bntcclxuICAgICAgICBpbnRlcmZhY2UgQWRkclBhcmFtcyB7XHJcbiAgICAgICAgICAgIHN0YXRlX2ZvclBrOnN0cmluZ1xyXG4gICAgICAgICAgICBzdGF0ZV9waWxhRm9yUGs6c3RyaW5nXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBEaXJlY2Npb25BY2Npb24gPSAnYXZhbmNlJyB8ICdyZXRyb2Nlc28nIHwgJ2JsYW5xdWVvJ1xyXG5cclxuZXhwb3J0IHR5cGUgRXN0YWRvQWNjaW9uID0ge1xyXG4gICAgb3BlcmF0aXZvOiBzdHJpbmdcclxuICAgIGVzdGFkbzogc3RyaW5nXHJcbiAgICBlYWNjaW9uOiBzdHJpbmdcclxuICAgIGNvbmRpY2lvbjogc3RyaW5nXHJcbiAgICBlc3RhZG9fZGVzdGlubzogc3RyaW5nXHJcbiAgICBlYWNjaW9uX2RpcmVjY2lvbjogRGlyZWNjaW9uQWNjaW9uXHJcbiAgICBwYXRoX2ljb25vX3N2Zzogc3RyaW5nXHJcbiAgICBub21icmVfcHJvY2VkdXJlOiBzdHJpbmdcclxuICAgIG5vbWJyZV93c2NyZWVuOiBzdHJpbmdcclxuICAgIGRlc2FjdGl2YV9ib3RvbjogYm9vbGVhblxyXG4gICAgY29uZmlybWE6IGJvb2xlYW5cclxufSJdfQ==
@@ -117,7 +117,7 @@ anchoNormal(ancho)
117
117
  margin-left 48px
118
118
  font-size 0.8em
119
119
 
120
- .multiple, .pregunta, .conjuntopreguntas
120
+ .multiple, .pregunta, .conjuntopreguntas, .preguntaenformadematriz
121
121
  font-size 1.2rem
122
122
  > .encabezado
123
123
  > .id-div
@@ -209,7 +209,42 @@ anchoNormal(ancho)
209
209
  &[nuestra-longitud="1"]
210
210
  .input-campo
211
211
  width 2ch
212
-
212
+
213
+ .preguntaenformadematriz
214
+ .campo
215
+ &[nuestra-longitud]
216
+ .input-campo, input
217
+ width 100%
218
+ width 100%
219
+ &[nuestra-longitud="telefono"]
220
+ .input-campo, input
221
+ width 100%
222
+ width 100%
223
+ &[nuestra-longitud="10"]
224
+ .input-campo, input
225
+ width 11ch
226
+ &[nuestra-longitud="8"]
227
+ .input-campo, input
228
+ width 9ch
229
+ &[nuestra-longitud="6"]
230
+ .input-campo, input
231
+ width 7ch
232
+ &[nuestra-longitud="4"]
233
+ .input-campo, input
234
+ width 5ch
235
+ &[nuestra-longitud="3"]
236
+ .input-campo, input
237
+ width 4ch
238
+ &[nuestra-longitud="2"]
239
+ .input-campo, input
240
+ width 3ch
241
+ &[nuestra-longitud="1"]
242
+ .input-campo, input
243
+ width 2ch
244
+ .preguntaenformadematriz
245
+ .campo
246
+ .input-campo
247
+ margin auto
213
248
  .bloque
214
249
  > .encabezado
215
250
  background colorFondoEncabezadoBloque