@emailmaker/emailmaker 1.0.28 → 1.0.29

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.
package/translations.pot CHANGED
@@ -710,17 +710,17 @@ msgstr[1] ""
710
710
 
711
711
  #: src/helpers/index.js:495
712
712
  #: src/modules/components/Atoms/Atoms.jsx:223
713
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:332
713
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:334
714
714
  msgid "Coming soon"
715
715
  msgstr ""
716
716
 
717
717
  #: src/helpers/index.js:496
718
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:333
718
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:335
719
719
  msgid "The feature is under development."
720
720
  msgstr ""
721
721
 
722
722
  #: src/helpers/index.js:497
723
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:334
723
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:336
724
724
  msgid "Ok. I'll be waiting"
725
725
  msgstr ""
726
726
 
@@ -2504,51 +2504,51 @@ msgstr ""
2504
2504
  msgid "Search GIFs"
2505
2505
  msgstr ""
2506
2506
 
2507
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:342
2507
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:344
2508
2508
  msgid "To preview and edit the uploaded image"
2509
2509
  msgstr ""
2510
2510
 
2511
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:343
2511
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:345
2512
2512
  msgid "Upload Image"
2513
2513
  msgstr ""
2514
2514
 
2515
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:473
2515
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:475
2516
2516
  msgid "The image was successfully uploaded."
2517
2517
  msgstr ""
2518
2518
 
2519
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:612
2519
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:614
2520
2520
  #: src/modules/components/UploadBgImage/UploadBgImage.jsx:215
2521
2521
  msgid "Upload"
2522
2522
  msgstr ""
2523
2523
 
2524
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:628
2524
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:630
2525
2525
  msgid "Click to select, paste from the clipboard, or drag and drop"
2526
2526
  msgstr ""
2527
2527
 
2528
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:632
2528
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:634
2529
2529
  msgid "Accepted formats: PNG, JPG, WEBP, SVG or GIF."
2530
2530
  msgstr ""
2531
2531
 
2532
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:642
2532
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:644
2533
2533
  msgid "Paste image URL here"
2534
2534
  msgstr ""
2535
2535
 
2536
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:656
2536
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:658
2537
2537
  #: src/modules/components/UploadBgImage/UploadBgImage.jsx:91
2538
2538
  msgid "Stock"
2539
2539
  msgstr ""
2540
2540
 
2541
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:679
2541
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:681
2542
2542
  #: src/modules/components/UploadBgImage/UploadBgImage.jsx:95
2543
2543
  msgid "GIF"
2544
2544
  msgstr ""
2545
2545
 
2546
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:702
2546
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:704
2547
2547
  #: src/modules/components/UploadBgImage/UploadBgImage.jsx:99
2548
2548
  msgid "AI"
2549
2549
  msgstr ""
2550
2550
 
2551
- #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:750
2551
+ #: src/modules/components/ImageLoaderModal/ImageLoaderModal.jsx:752
2552
2552
  msgid "Image Center"
2553
2553
  msgstr ""
2554
2554
 
package/README_eng.md DELETED
@@ -1,197 +0,0 @@
1
- > It is a Dev version of the Blocks email builder plugin.<br>The Prod version that will be released in the nearest future will have minor differences: it will not contain experimental features and the whole already existing feature set will be tested way more thoroughly before the releases.
2
-
3
- # Installation
4
- Run this code in the command prompt:
5
-
6
- ```cmd
7
- $ npm i useblocks@1.0.28 -save
8
- ```
9
-
10
- Add the Blocks plugin to your App config.
11
- ### For the Webpack module bundler
12
- Package import:
13
- ```javascript
14
- const useblocksPlugin = require('useblocks/webpack')
15
- ```
16
- Defining the package in the app:
17
- ```javascript
18
- module.exports = {
19
- plugins: [
20
- new UseblocksWebpackPlugin(),
21
- ]
22
- }
23
- ```
24
- ### For the Vite module bundler
25
- Package import:
26
- ```javascript
27
- import useblocksPlugin from 'useblocks/vite'
28
- ```
29
- Defining the package in the app:
30
- ```javascript
31
- export default defineConfig({
32
- plugins: [useblocksPlugin()],
33
- })
34
- ```
35
- # Initialization
36
- Import the Blocks plugin into your component:
37
- ```javascript
38
- import * as useblocks from "useblocks"
39
- ```
40
- The Plugin configuration contains a parameter named `getAuthToken`. For authorization, you must pass the application's OAuth token to its value. For debugging purposes, the dev version of the plugin supports a mechanism for obtaining a token from the front of the application. To use this mechanism you need first to define auth-proxy in AppConfig:
41
-
42
- ### Fetching the OAuth token on the backend
43
- ```javascript
44
- curl --location 'https://api.useblocks.io/oauth/token' \
45
- --header 'Content-Type: application/x-www-form-urlencoded' \
46
- --data-urlencode 'client_id=*******' \
47
- --data-urlencode 'client_secret=*******' \
48
- --data-urlencode 'grant_type=client_credentials'
49
- ```
50
-
51
- ### Creating the Blocks plugin entity
52
- ```javascript
53
- useblocks.init({
54
- getAuthToken: getAuthToken,
55
- element: "#test",
56
- content: {
57
- title: "Email subject",
58
- html: "EMAIL_CODE",
59
- },
60
- config: { }
61
- }).then(instance => { })
62
- ```
63
- You can get the EMAIL_CODE from <a href="https://cdn.useblocks.io/plugin/new-email.html" target="_blank">our example</a> or paste the HTML code of your own email
64
-
65
- # Configuration
66
- Plugin configuration is JSON with several nesting levels. In the config you can set the appearance, content, and the logic the plugin will work with.
67
-
68
- ### Element
69
- You can send the `element` line into the plugin configuration. It is a DOM element selector and you need to initiate the plugin inside of it. If the element is not defined, the app will run in the background mode.
70
-
71
- ### Content
72
- The `content` section contains parameters of an email that must be displayed in the editor. This is what can be sent to this parameter:
73
-
74
- #### {string}
75
-
76
- HTML code of an email.
77
-
78
- #### {object} email options
79
- ```javascript
80
- {
81
- id?: string; // A unique ID of a project in your system.
82
- html?: string; // HTML code of an email.
83
- subject?: string; // Email subject line.
84
- preheader?: string; // Email preheader.
85
- }
86
-
87
- ```
88
-
89
- #### {object} full description
90
- ```javascript
91
- {
92
- temlateId?: string; // Email template ID in Blocks.
93
- email?: object; // email options.
94
- blocks?: []; // Additional blocks.
95
- comments?: []; // Comments in an email.
96
- }
97
- ```
98
-
99
- You can change the content at any moment after the initialization with the help of the `instance.show(content)` method.
100
-
101
- ### Config
102
- This section is dedicated to setting the appearance and settings of the editor. You can change the configuration of this section after the initialization with the help of `useblocks.setConfig` or `useblocks.updateConfig`.
103
- ##### The list of parameters of the config section
104
- | Parameter | Description | Default |
105
- | ---------------------- | --------------------------------- | ------- |
106
- | theme | Plugin theme: light, dark. | light |
107
- | headerArrowBackVisible | Displaying the "Back" arrow. | true |
108
- | headerTitleVisible | Displaying the "Title" field. | true |
109
- | headerPreheaderVisible | Displaying the "Preheader" field. | true |
110
- | pathEnabled | Bread crumbs | true |
111
- | ... | ... | ... |
112
-
113
- ### Events
114
- Events can be sent to configurations or added to them later while working with the instance of the plugin. All event subscribers can be asynchronous features.
115
-
116
- #### Example
117
- ```javascript
118
- useblocks.init({
119
- ....,
120
- // Subscription to events in the initialization.
121
- handleReadEmail: (e) => {},
122
- handleSaveEmail: async (e) => {}
123
- }).then((instance) => {
124
- // Subscription to events after the initialization.
125
- const dispose = instance.handleReadEmail(e => {});
126
- const dispose = instance.handleSaveEmail(async (e) => {});
127
- });
128
- ```
129
-
130
- By sending the asynchronous feature you can implement the asynchronous data load.
131
- #### Example
132
- ```javascript
133
- useblocks.init({
134
- element: "#test",
135
- content: {
136
- id: "1"
137
- }
138
- handleReadEmail: async (id) => {
139
- return await fetchData(id); // Your data fetch feature.
140
- }
141
- }).then((instance) => {
142
- setTimeout(() => instance.show({ id: "2" }), 1000)
143
- });
144
- ```
145
-
146
-
147
-
148
- ### Events
149
- | Name | Description |
150
- | ------------------------- | -------------------------------------------- |
151
- | handleReadEmail | read email handler |
152
- | handleSaveEmail | fires when email saved |
153
- | handleReadEmailAutoSaves | read autosaves handler |
154
- | handleEmailAutosave | fires when email autosave |
155
- | handleRemoveEmailAutoSave | fires when email autosave delete |
156
- | handleReadBlocks | read blocks handler |
157
- | handleSaveBlock | fires when block save |
158
- | handleRemoveBlock | fires when block delete |
159
- | handleReadComments | read comments handler |
160
- | handleSaveComment | fires when comment save |
161
- | handleRemoveComment | fires when comment delete |
162
- | handleSaveButtonClick | fires when user clicked on 'save' button |
163
- | handleNextButtonClick | fires when user clicked on 'next' button |
164
- | handlePreviousButtonClick | fires when user clicked on 'previous' button |
165
- | handleEmailInit | fires when email iframe inited |
166
- | handleEmailChanged | fires when email changed |
167
- | handleHtmlChanged | fires when email Html changed |
168
- | handleDestroy | fires when app destroyed |
169
- | handleLoad | fires when app loaded |
170
- | handleLoadImage | fires when image loading |
171
-
172
-
173
-
174
- ### Methods
175
- | Method name | Description |
176
- | ------------------------- | -------------------------------------------- |
177
- | init | Initialization (async) |
178
- | show | Altering the content after the initialization|
179
- | destroy | Destruction of the instance of the plugin |
180
- | reset | Resetting the whole configuration |
181
- | getEmail | Getting the current email |
182
- | getConfig | Getting the configuration |
183
- | getBlocks | Getting the blocks from the project |
184
- | getComments | Getting the commentaries for the email |
185
- | getEmailRevisions | Getting the list of the email revisions |
186
- | setConfig | Setting new config parameters |
187
- | updateConfig | Updating config parameters |
188
- | notify | Notifications display |
189
- | getElement | Getting an element of initialization |
190
- | save | Saving an email |
191
- | compileEmail | Get compiled email |
192
-
193
-
194
-
195
-
196
- ### Keywords
197
- none
package/iframe/429.js DELETED
@@ -1 +0,0 @@
1
- 'use strict';var a11_0x223daf=a11_0x1320;function a11_0x30e0(){var _0x3e3e65=['567JqZmJc','1844094JKFQeu','webpackChunk','exports','4326336pSFRBG','5755435aUriod','580366mSzAAg','parse','{\x22tags\x22:[{\x22name\x22:\x22HTML\x22,\x22selector\x22:\x22html\x22,\x22required\x22:true,\x22requiredParent\x22:\x22$ROOT\x22,\x22attrs\x22:[{\x22name\x22:\x22⚡4email\x22,\x22value\x22:[\x22\x22],\x22required\x22:true},{\x22name\x22:\x22data-css-strict\x22,\x22value\x22:[\x22\x22],\x22required\x22:true}],\x22unique\x22:true},{\x22name\x22:\x22HEAD\x22,\x22selector\x22:\x22head\x22,\x22required\x22:true,\x22requiredParent\x22:\x22HTML\x22,\x22attrs\x22:[],\x22unique\x22:true},{\x22name\x22:\x22TITLE\x22,\x22selector\x22:\x22title\x22,\x22attrs\x22:[{\x22name\x22:\x22[text]\x22}]},{\x22name\x22:\x22META\x22,\x22selector\x22:\x22meta[charset=\x27utf-8\x27]\x22,\x22required\x22:true,\x22requiredParent\x22:\x22HEAD\x22,\x22attrs\x22:[{\x22name\x22:\x22charset\x22,\x22value\x22:[\x22utf-8\x22],\x22required\x22:true}],\x22unique\x22:true},{\x22name\x22:\x22META\x22,\x22selector\x22:\x22meta[name=\x27\x27]\x20[content=\x27\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22content\x22},{\x22name\x22:\x22itemprop\x22},{\x22name\x22:\x22name\x22,\x22disallowedValueRegex\x22:\x22(^|\x5c\x5cs)(amp-.*|amp4ads-.*|apple-itunes-app|content-disposition|revisit-after|viewport)(\x5c\x5cs|$)\x22},{\x22name\x22:\x22media\x22},{\x22name\x22:\x22property\x22},{\x22name\x22:\x22scheme\x22}]},{\x22name\x22:\x22BODY\x22,\x22selector\x22:\x22body\x22,\x22required\x22:true,\x22requiredParent\x22:\x22HTML\x22,\x22attrs\x22:[],\x22unique\x22:true},{\x22name\x22:\x22ARTICLE\x22,\x22selector\x22:\x22article\x22,\x22attrs\x22:[]},{\x22name\x22:\x22SECTION\x22,\x22selector\x22:\x22section\x22,\x22attrs\x22:[]},{\x22name\x22:\x22NAV\x22,\x22selector\x22:\x22nav\x22,\x22attrs\x22:[]},{\x22name\x22:\x22ASIDE\x22,\x22selector\x22:\x22aside\x22,\x22attrs\x22:[]},{\x22name\x22:\x22H1\x22,\x22selector\x22:\x22h1\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22}]},{\x22name\x22:\x22H2\x22,\x22selector\x22:\x22h2\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22}]},{\x22name\x22:\x22H3\x22,\x22selector\x22:\x22h3\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22}]},{\x22name\x22:\x22H4\x22,\x22selector\x22:\x22h4\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22}]},{\x22name\x22:\x22H5\x22,\x22selector\x22:\x22h5\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22}]},{\x22name\x22:\x22H6\x22,\x22selector\x22:\x22h6\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22}]},{\x22name\x22:\x22HEADER\x22,\x22selector\x22:\x22header\x22,\x22attrs\x22:[]},{\x22name\x22:\x22FOOTER\x22,\x22selector\x22:\x22footer\x22,\x22attrs\x22:[]},{\x22name\x22:\x22ADDRESS\x22,\x22selector\x22:\x22address\x22,\x22attrs\x22:[]},{\x22name\x22:\x22P\x22,\x22selector\x22:\x22p\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22}]},{\x22name\x22:\x22HR\x22,\x22selector\x22:\x22hr\x22,\x22attrs\x22:[]},{\x22name\x22:\x22PRE\x22,\x22selector\x22:\x22pre\x22,\x22attrs\x22:[]},{\x22name\x22:\x22BLOCKQUOTE\x22,\x22selector\x22:\x22blockquote\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22}],\x22attrLists\x22:[\x22cite-attr\x22]},{\x22name\x22:\x22OL\x22,\x22selector\x22:\x22ol\x22,\x22attrs\x22:[{\x22name\x22:\x22reversed\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22start\x22,\x22valueRegex\x22:\x22[0-9]*\x22},{\x22name\x22:\x22type\x22,\x22valueRegex\x22:\x22[1AaIi]\x22}]},{\x22name\x22:\x22UL\x22,\x22selector\x22:\x22ul\x22,\x22attrs\x22:[]},{\x22name\x22:\x22LI\x22,\x22selector\x22:\x22li\x22,\x22attrs\x22:[{\x22name\x22:\x22value\x22,\x22valueRegex\x22:\x22[0-9]*\x22}]},{\x22name\x22:\x22DL\x22,\x22selector\x22:\x22dl\x22,\x22attrs\x22:[]},{\x22name\x22:\x22DT\x22,\x22selector\x22:\x22dt\x22,\x22attrs\x22:[]},{\x22name\x22:\x22DD\x22,\x22selector\x22:\x22dd\x22,\x22attrs\x22:[]},{\x22name\x22:\x22FIGURE\x22,\x22selector\x22:\x22figure\x22,\x22attrs\x22:[]},{\x22name\x22:\x22FIGCAPTION\x22,\x22selector\x22:\x22figcaption\x22,\x22attrs\x22:[]},{\x22name\x22:\x22DIV\x22,\x22selector\x22:\x22div\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22}]},{\x22name\x22:\x22MAIN\x22,\x22selector\x22:\x22main\x22,\x22attrs\x22:[]},{\x22name\x22:\x22A\x22,\x22selector\x22:\x22a\x22,\x22attrs\x22:[{\x22name\x22:\x22border\x22},{\x22name\x22:\x22href\x22,\x22valueUrl\x22:{\x22protocol\x22:[\x22http\x22,\x22https\x22,\x22mailto\x22,\x22tel\x22],\x22allowRelative\x22:false},\x22disallowedValueRegex\x22:\x22__amp_source_origin|(.|\x5c\x5cs){{|}}(.|\x5c\x5cs)|^{{.*[^}][^}]$|^[^{][^{].*}}$|^}}|{{$|{{#|{{/|{{\x5c\x5c^\x22},{\x22name\x22:\x22hreflang\x22},{\x22name\x22:\x22media\x22},{\x22name\x22:\x22role\x22},{\x22name\x22:\x22tabindex\x22},{\x22name\x22:\x22target\x22,\x22value\x22:[\x22_blank\x22]},{\x22name\x22:\x22type\x22,\x22value\x22:[\x22text/html\x22]}]},{\x22name\x22:\x22EM\x22,\x22selector\x22:\x22em\x22,\x22attrs\x22:[]},{\x22name\x22:\x22STRONG\x22,\x22selector\x22:\x22strong\x22,\x22attrs\x22:[]},{\x22name\x22:\x22SMALL\x22,\x22selector\x22:\x22small\x22,\x22attrs\x22:[]},{\x22name\x22:\x22S\x22,\x22selector\x22:\x22s\x22,\x22attrs\x22:[]},{\x22name\x22:\x22CITE\x22,\x22selector\x22:\x22cite\x22,\x22attrs\x22:[]},{\x22name\x22:\x22Q\x22,\x22selector\x22:\x22q\x22,\x22attrs\x22:[],\x22attrLists\x22:[\x22cite-attr\x22]},{\x22name\x22:\x22DFN\x22,\x22selector\x22:\x22dfn\x22,\x22attrs\x22:[]},{\x22name\x22:\x22ABBR\x22,\x22selector\x22:\x22abbr\x22,\x22attrs\x22:[]},{\x22name\x22:\x22DATA\x22,\x22selector\x22:\x22data\x22,\x22attrs\x22:[]},{\x22name\x22:\x22TIME\x22,\x22selector\x22:\x22time\x22,\x22attrs\x22:[{\x22name\x22:\x22datetime\x22},{\x22name\x22:\x22pubdate\x22,\x22value\x22:[\x22\x22]}]},{\x22name\x22:\x22CODE\x22,\x22selector\x22:\x22code\x22,\x22attrs\x22:[]},{\x22name\x22:\x22VAR\x22,\x22selector\x22:\x22var\x22,\x22attrs\x22:[]},{\x22name\x22:\x22SAMP\x22,\x22selector\x22:\x22samp\x22,\x22attrs\x22:[]},{\x22name\x22:\x22KBD\x22,\x22selector\x22:\x22kbd\x22,\x22attrs\x22:[]},{\x22name\x22:\x22SUB\x22,\x22selector\x22:\x22sub\x22,\x22attrs\x22:[]},{\x22name\x22:\x22SUP\x22,\x22selector\x22:\x22sup\x22,\x22attrs\x22:[]},{\x22name\x22:\x22I\x22,\x22selector\x22:\x22i\x22,\x22attrs\x22:[]},{\x22name\x22:\x22B\x22,\x22selector\x22:\x22b\x22,\x22attrs\x22:[]},{\x22name\x22:\x22U\x22,\x22selector\x22:\x22u\x22,\x22attrs\x22:[]},{\x22name\x22:\x22MARK\x22,\x22selector\x22:\x22mark\x22,\x22attrs\x22:[]},{\x22name\x22:\x22RUBY\x22,\x22selector\x22:\x22ruby\x22,\x22attrs\x22:[]},{\x22name\x22:\x22RB\x22,\x22selector\x22:\x22rb\x22,\x22attrs\x22:[]},{\x22name\x22:\x22RT\x22,\x22selector\x22:\x22rt\x22,\x22attrs\x22:[]},{\x22name\x22:\x22RP\x22,\x22selector\x22:\x22rp\x22,\x22attrs\x22:[]},{\x22name\x22:\x22BDO\x22,\x22selector\x22:\x22bdo\x22,\x22attrs\x22:[{\x22name\x22:\x22dir\x22}]},{\x22name\x22:\x22SPAN\x22,\x22selector\x22:\x22span\x22,\x22attrs\x22:[]},{\x22name\x22:\x22BR\x22,\x22selector\x22:\x22br\x22,\x22attrs\x22:[]},{\x22name\x22:\x22WBR\x22,\x22selector\x22:\x22wbr\x22,\x22attrs\x22:[]},{\x22name\x22:\x22INS\x22,\x22selector\x22:\x22ins\x22,\x22attrs\x22:[{\x22name\x22:\x22datetime\x22}],\x22attrLists\x22:[\x22cite-attr\x22]},{\x22name\x22:\x22DEL\x22,\x22selector\x22:\x22del\x22,\x22attrs\x22:[{\x22name\x22:\x22datetime\x22}],\x22attrLists\x22:[\x22cite-attr\x22]},{\x22name\x22:\x22TABLE\x22,\x22selector\x22:\x22table\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22},{\x22name\x22:\x22bgcolor\x22},{\x22name\x22:\x22border\x22,\x22value\x22:[\x220\x22,\x221\x22]},{\x22name\x22:\x22cellpadding\x22},{\x22name\x22:\x22cellspacing\x22},{\x22name\x22:\x22sortable\x22},{\x22name\x22:\x22width\x22}]},{\x22name\x22:\x22CAPTION\x22,\x22selector\x22:\x22caption\x22,\x22attrs\x22:[]},{\x22name\x22:\x22COLGROUP\x22,\x22selector\x22:\x22colgroup\x22,\x22attrs\x22:[{\x22name\x22:\x22span\x22}]},{\x22name\x22:\x22COL\x22,\x22selector\x22:\x22col\x22,\x22attrs\x22:[{\x22name\x22:\x22span\x22}]},{\x22name\x22:\x22TBODY\x22,\x22selector\x22:\x22tbody\x22,\x22attrs\x22:[]},{\x22name\x22:\x22THEAD\x22,\x22selector\x22:\x22thead\x22,\x22attrs\x22:[]},{\x22name\x22:\x22TFOOT\x22,\x22selector\x22:\x22tfoot\x22,\x22attrs\x22:[]},{\x22name\x22:\x22TR\x22,\x22selector\x22:\x22tr\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22},{\x22name\x22:\x22bgcolor\x22},{\x22name\x22:\x22height\x22},{\x22name\x22:\x22valign\x22}]},{\x22name\x22:\x22TD\x22,\x22selector\x22:\x22td\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22},{\x22name\x22:\x22bgcolor\x22},{\x22name\x22:\x22colspan\x22},{\x22name\x22:\x22headers\x22},{\x22name\x22:\x22height\x22},{\x22name\x22:\x22rowspan\x22},{\x22name\x22:\x22valign\x22},{\x22name\x22:\x22width\x22}]},{\x22name\x22:\x22TH\x22,\x22selector\x22:\x22th\x22,\x22attrs\x22:[{\x22name\x22:\x22abbr\x22},{\x22name\x22:\x22align\x22},{\x22name\x22:\x22bgcolor\x22},{\x22name\x22:\x22colspan\x22},{\x22name\x22:\x22headers\x22},{\x22name\x22:\x22height\x22},{\x22name\x22:\x22rowspan\x22},{\x22name\x22:\x22scope\x22},{\x22name\x22:\x22sorted\x22},{\x22name\x22:\x22valign\x22},{\x22name\x22:\x22width\x22}]},{\x22name\x22:\x22FORM\x22,\x22selector\x22:\x22form[method=\x27get\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22accept\x22},{\x22name\x22:\x22accept-charset\x22},{\x22name\x22:\x22action-xhr\x22,\x22valueUrl\x22:{\x22protocol\x22:[\x22https\x22],\x22allowRelative\x22:false},\x22disallowedValueRegex\x22:\x22__amp_source_origin|{{|}}\x22},{\x22name\x22:\x22autocomplete\x22},{\x22name\x22:\x22custom-validation-reporting\x22,\x22value\x22:[\x22as-you-go\x22,\x22interact-and-submit\x22,\x22show-all-on-submit\x22,\x22show-first-on-submit\x22]},{\x22name\x22:\x22enctype\x22},{\x22name\x22:\x22method\x22,\x22value\x22:[\x22get\x22]},{\x22name\x22:\x22novalidate\x22},{\x22name\x22:\x22xssi-prefix\x22}]},{\x22name\x22:\x22FORM\x22,\x22selector\x22:\x22form[method=\x27post\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22accept\x22},{\x22name\x22:\x22accept-charset\x22},{\x22name\x22:\x22action-xhr\x22,\x22valueUrl\x22:{\x22protocol\x22:[\x22https\x22],\x22allowRelative\x22:false},\x22required\x22:true,\x22disallowedValueRegex\x22:\x22__amp_source_origin|{{|}}\x22},{\x22name\x22:\x22autocomplete\x22},{\x22name\x22:\x22custom-validation-reporting\x22,\x22value\x22:[\x22as-you-go\x22,\x22interact-and-submit\x22,\x22show-all-on-submit\x22,\x22show-first-on-submit\x22]},{\x22name\x22:\x22enctype\x22},{\x22name\x22:\x22method\x22,\x22value\x22:[\x22post\x22],\x22required\x22:true},{\x22name\x22:\x22novalidate\x22},{\x22name\x22:\x22xssi-prefix\x22}]},{\x22name\x22:\x22DIV\x22,\x22selector\x22:\x22form\x20div[submitting]\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22},{\x22name\x22:\x22submitting\x22,\x22required\x22:true}]},{\x22name\x22:\x22DIV\x22,\x22selector\x22:\x22form\x20div[submit-success]\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22},{\x22name\x22:\x22submit-success\x22,\x22required\x22:true}]},{\x22name\x22:\x22DIV\x22,\x22selector\x22:\x22form\x20div[submit-success][template]\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22},{\x22name\x22:\x22submit-success\x22,\x22required\x22:true},{\x22name\x22:\x22template\x22,\x22required\x22:true}]},{\x22name\x22:\x22DIV\x22,\x22selector\x22:\x22form\x20div[submit-error]\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22},{\x22name\x22:\x22submit-error\x22,\x22required\x22:true}]},{\x22name\x22:\x22DIV\x22,\x22selector\x22:\x22form\x20div[submit-error][template]\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22},{\x22name\x22:\x22submit-error\x22,\x22required\x22:true},{\x22name\x22:\x22template\x22,\x22required\x22:true}]},{\x22name\x22:\x22LABEL\x22,\x22selector\x22:\x22label\x22,\x22attrs\x22:[{\x22name\x22:\x22for\x22}]},{\x22name\x22:\x22INPUT\x22,\x22selector\x22:\x22input\x22,\x22attrs\x22:[{\x22name\x22:\x22no-verify\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22type\x22,\x22disallowedValueRegex\x22:\x22(^|\x5c\x5cs)(file|image|password|)(\x5c\x5cs|$)\x22},{\x22name\x22:\x22[type]\x22}],\x22attrLists\x22:[\x22input-common-attr\x22,\x22name-attr\x22]},{\x22name\x22:\x22BUTTON\x22,\x22selector\x22:\x22button\x22,\x22attrs\x22:[{\x22name\x22:\x22disabled\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22role\x22},{\x22name\x22:\x22tabindex\x22},{\x22name\x22:\x22type\x22},{\x22name\x22:\x22value\x22},{\x22name\x22:\x22[disabled]\x22},{\x22name\x22:\x22[type]\x22},{\x22name\x22:\x22[value]\x22}],\x22attrLists\x22:[\x22name-attr\x22]},{\x22name\x22:\x22SELECT\x22,\x22selector\x22:\x22select\x22,\x22attrs\x22:[{\x22name\x22:\x22autofocus\x22},{\x22name\x22:\x22disabled\x22},{\x22name\x22:\x22multiple\x22},{\x22name\x22:\x22no-verify\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22required\x22},{\x22name\x22:\x22size\x22},{\x22name\x22:\x22[autofocus]\x22},{\x22name\x22:\x22[disabled]\x22},{\x22name\x22:\x22[multiple]\x22},{\x22name\x22:\x22[required]\x22},{\x22name\x22:\x22[size]\x22}],\x22attrLists\x22:[\x22name-attr\x22]},{\x22name\x22:\x22DATALIST\x22,\x22selector\x22:\x22datalist\x22,\x22attrs\x22:[]},{\x22name\x22:\x22OPTGROUP\x22,\x22selector\x22:\x22optgroup\x22,\x22requiredParent\x22:\x22SELECT\x22,\x22attrs\x22:[{\x22name\x22:\x22disabled\x22},{\x22name\x22:\x22label\x22},{\x22name\x22:\x22[disabled]\x22},{\x22name\x22:\x22[label]\x22}]},{\x22name\x22:\x22OPTION\x22,\x22selector\x22:\x22option\x22,\x22attrs\x22:[{\x22name\x22:\x22disabled\x22},{\x22name\x22:\x22label\x22},{\x22name\x22:\x22selected\x22},{\x22name\x22:\x22value\x22},{\x22name\x22:\x22[disabled]\x22},{\x22name\x22:\x22[label]\x22},{\x22name\x22:\x22[selected]\x22},{\x22name\x22:\x22[value]\x22}]},{\x22name\x22:\x22TEXTAREA\x22,\x22selector\x22:\x22textarea\x22,\x22attrs\x22:[{\x22name\x22:\x22autocomplete\x22},{\x22name\x22:\x22autoexpand\x22},{\x22name\x22:\x22autofocus\x22},{\x22name\x22:\x22cols\x22},{\x22name\x22:\x22disabled\x22},{\x22name\x22:\x22maxlength\x22},{\x22name\x22:\x22minlength\x22},{\x22name\x22:\x22no-verify\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22pattern\x22},{\x22name\x22:\x22placeholder\x22},{\x22name\x22:\x22readonly\x22},{\x22name\x22:\x22required\x22},{\x22name\x22:\x22rows\x22},{\x22name\x22:\x22selectiondirection\x22},{\x22name\x22:\x22selectionend\x22},{\x22name\x22:\x22selectionstart\x22},{\x22name\x22:\x22spellcheck\x22},{\x22name\x22:\x22wrap\x22},{\x22name\x22:\x22[autocomplete]\x22},{\x22name\x22:\x22[autofocus]\x22},{\x22name\x22:\x22[cols]\x22},{\x22name\x22:\x22[defaulttext]\x22},{\x22name\x22:\x22[disabled]\x22},{\x22name\x22:\x22[maxlength]\x22},{\x22name\x22:\x22[minlength]\x22},{\x22name\x22:\x22[pattern]\x22},{\x22name\x22:\x22[placeholder]\x22},{\x22name\x22:\x22[readonly]\x22},{\x22name\x22:\x22[required]\x22},{\x22name\x22:\x22[rows]\x22},{\x22name\x22:\x22[selectiondirection]\x22},{\x22name\x22:\x22[selectionend]\x22},{\x22name\x22:\x22[selectionstart]\x22},{\x22name\x22:\x22[spellcheck]\x22},{\x22name\x22:\x22[wrap]\x22}],\x22attrLists\x22:[\x22name-attr\x22]},{\x22name\x22:\x22OUTPUT\x22,\x22selector\x22:\x22output\x22,\x22attrs\x22:[{\x22name\x22:\x22for\x22},{\x22name\x22:\x22form\x22}],\x22attrLists\x22:[\x22name-attr\x22]},{\x22name\x22:\x22PROGRESS\x22,\x22selector\x22:\x22progress\x22,\x22attrs\x22:[{\x22name\x22:\x22max\x22},{\x22name\x22:\x22value\x22}]},{\x22name\x22:\x22METER\x22,\x22selector\x22:\x22meter\x22,\x22attrs\x22:[{\x22name\x22:\x22high\x22},{\x22name\x22:\x22low\x22},{\x22name\x22:\x22max\x22},{\x22name\x22:\x22min\x22},{\x22name\x22:\x22optimum\x22},{\x22name\x22:\x22value\x22}]},{\x22name\x22:\x22FIELDSET\x22,\x22selector\x22:\x22fieldset\x22,\x22attrs\x22:[{\x22name\x22:\x22disabled\x22},{\x22name\x22:\x22[disabled]\x22}],\x22attrLists\x22:[\x22name-attr\x22]},{\x22name\x22:\x22LEGEND\x22,\x22selector\x22:\x22legend\x22,\x22attrs\x22:[]},{\x22name\x22:\x22DETAILS\x22,\x22selector\x22:\x22details\x22,\x22attrs\x22:[{\x22name\x22:\x22open\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22[open]\x22}]},{\x22name\x22:\x22SUMMARY\x22,\x22selector\x22:\x22summary\x22,\x22requiredParent\x22:\x22DETAILS\x22,\x22attrs\x22:[]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[src=\x27https://cdn.ampproject.org/v0.js\x27]\x22,\x22required\x22:true,\x22requiredParent\x22:\x22HEAD\x22,\x22attrs\x22:[{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22nonce-attr\x22,\x22amphtml-engine-attrs\x22],\x22unique\x22:true},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[type=\x27application/ld+json\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22type\x22,\x22value\x22:[\x22application/ld+json\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22nonce-attr\x22]},{\x22name\x22:\x22AMP-IMG\x22,\x22selector\x22:\x22amp-img\x22,\x22attrs\x22:[{\x22name\x22:\x22alt\x22},{\x22name\x22:\x22attribution\x22},{\x22name\x22:\x22placeholder\x22},{\x22name\x22:\x22[alt]\x22},{\x22name\x22:\x22[attribution]\x22},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22responsive\x22,\x22fill\x22,\x22fixed\x22,\x22fixed_height\x22,\x22flex_item\x22,\x22intrinsic\x22,\x22nodisplay\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22mandatory-src-amp4email\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22AMP-LAYOUT\x22,\x22selector\x22:\x22amp-layout\x22,\x22attrs\x22:[{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22responsive\x22,\x22fill\x22,\x22fixed\x22,\x22fixed_height\x22,\x22flex_item\x22,\x22intrinsic\x22,\x22nodisplay\x22,\x22container\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22STYLE\x22,\x22selector\x22:\x22style[amp-custom-length-check]\x22,\x22requiredParent\x22:\x22HEAD\x22,\x22attrs\x22:[{\x22name\x22:\x22amp-custom-length-check\x22,\x22value\x22:[\x22\x22],\x22required\x22:true},{\x22name\x22:\x22type\x22,\x22value\x22:[\x22text/css\x22]}],\x22attrLists\x22:[\x22nonce-attr\x22],\x22unique\x22:true},{\x22name\x22:\x22STYLE\x22,\x22selector\x22:\x22style[amp-custom]\x22,\x22requiredParent\x22:\x22HEAD\x22,\x22attrs\x22:[{\x22name\x22:\x22amp-custom\x22,\x22value\x22:[\x22\x22],\x22required\x22:true},{\x22name\x22:\x22type\x22,\x22value\x22:[\x22text/css\x22]}],\x22unique\x22:true},{\x22name\x22:\x22STYLE\x22,\x22selector\x22:\x22style[amp-custom]\x22,\x22requiredParent\x22:\x22HEAD\x22,\x22attrs\x22:[{\x22name\x22:\x22amp-custom\x22,\x22value\x22:[\x22\x22],\x22required\x22:true},{\x22name\x22:\x22type\x22,\x22value\x22:[\x22text/css\x22]}],\x22unique\x22:true},{\x22name\x22:\x22STYLE\x22,\x22selector\x22:\x22head\x20>\x20style[amp4email-boilerplate]\x22,\x22requiredParent\x22:\x22HEAD\x22,\x22attrs\x22:[{\x22name\x22:\x22amp4email-boilerplate\x22,\x22value\x22:[\x22\x22],\x22required\x22:true}],\x22unique\x22:true},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-accordion\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-accordion\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-accordion-0.1.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22AMP-ACCORDION\x22,\x22selector\x22:\x22amp-accordion\x22,\x22attrs\x22:[{\x22name\x22:\x22animate\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22disable-session-states\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22expand-single-section\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22container\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22SECTION\x22,\x22selector\x22:\x22amp-accordion\x20>\x20section\x22,\x22requiredParent\x22:\x22AMP-ACCORDION\x22,\x22attrs\x22:[{\x22name\x22:\x22access-hide\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22expanded\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22[data-expand]\x22},{\x22name\x22:\x22[expanded]\x22}]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22amp-anim\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-anim\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-anim-0.1.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22AMP-ANIM\x22,\x22selector\x22:\x22amp-anim\x22,\x22attrs\x22:[{\x22name\x22:\x22alt\x22},{\x22name\x22:\x22attribution\x22},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22responsive\x22,\x22fill\x22,\x22fixed\x22,\x22fixed_height\x22,\x22flex_item\x22,\x22nodisplay\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22mandatory-src-amp4email\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-autocomplete\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-autocomplete\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-autocomplete-0.1.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22AMP-AUTOCOMPLETE\x22,\x22selector\x22:\x22amp-autocomplete\x22,\x22attrs\x22:[{\x22name\x22:\x22highlight-user-entry\x22},{\x22name\x22:\x22inline\x22},{\x22name\x22:\x22items\x22},{\x22name\x22:\x22max-items\x22},{\x22name\x22:\x22min-characters\x22},{\x22name\x22:\x22prefetch\x22},{\x22name\x22:\x22query\x22},{\x22name\x22:\x22submit-on-enter\x22},{\x22name\x22:\x22suggest-first\x22},{\x22name\x22:\x22src\x22,\x22valueUrl\x22:{\x22protocol\x22:[\x22https\x22],\x22allowRelative\x22:false},\x22required\x22:true,\x22disallowedValueRegex\x22:\x22__amp_source_origin|{{|}}\x22},{\x22name\x22:\x22template\x22},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22container\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-bind\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-bind\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-bind-0.1.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22amp-bind\x22,\x22requiredParent\x22:\x22AMP-STATE\x22,\x22attrs\x22:[{\x22name\x22:\x22type\x22,\x22value\x22:[\x22application/json\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22nonce-attr\x22]},{\x22name\x22:\x22AMP-STATE\x22,\x22selector\x22:\x22amp-state\x22,\x22attrs\x22:[],\x22attrLists\x22:[\x22mandatory-id-attr\x22]},{\x22name\x22:\x22AMP-BIND-MACRO\x22,\x22selector\x22:\x22amp-bind-macro\x22,\x22attrs\x22:[{\x22name\x22:\x22arguments\x22},{\x22name\x22:\x22expression\x22,\x22required\x22:true}],\x22attrLists\x22:[\x22mandatory-id-attr\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-carousel\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-carousel\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-carousel-0.1.js\x22,\x22https://cdn.ampproject.org/v0/amp-carousel-0.2.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22AMP-CAROUSEL\x22,\x22selector\x22:\x22amp-carousel\x22,\x22attrs\x22:[{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22responsive\x22,\x22fill\x22,\x22fixed\x22,\x22fixed_height\x22,\x22flex_item\x22,\x22intrinsic\x22,\x22nodisplay\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22amp-carousel-common\x22,\x22extended-amp-global\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-fit-text\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-fit-text\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-fit-text-0.1.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22AMP-FIT-TEXT\x22,\x22selector\x22:\x22amp-fit-text\x22,\x22attrs\x22:[{\x22name\x22:\x22max-font-size\x22},{\x22name\x22:\x22min-font-size\x22},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22responsive\x22,\x22fill\x22,\x22fixed\x22,\x22fixed_height\x22,\x22flex_item\x22,\x22intrinsic\x22,\x22nodisplay\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-form\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-form\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-form-0.1.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-image-lightbox\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-image-lightbox\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-image-lightbox-0.1.js\x22,\x22https://cdn.ampproject.org/v0/amp-image-lightbox-latest.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22AMP-IMAGE-LIGHTBOX\x22,\x22selector\x22:\x22amp-image-lightbox\x22,\x22attrs\x22:[{\x22name\x22:\x22controls\x22},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22nodisplay\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-lightbox\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-lightbox\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-lightbox-0.1.js\x22,\x22https://cdn.ampproject.org/v0/amp-lightbox-latest.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22AMP-LIGHTBOX\x22,\x22selector\x22:\x22amp-lightbox\x22,\x22attrs\x22:[{\x22name\x22:\x22animate-in\x22,\x22value\x22:[\x22fade-in\x22,\x22fly-in-bottom\x22,\x22fly-in-top\x22]},{\x22name\x22:\x22animation\x22,\x22value\x22:[\x22fade-in\x22,\x22fly-in-bottom\x22,\x22fly-in-top\x22]},{\x22name\x22:\x22controls\x22},{\x22name\x22:\x22from\x22},{\x22name\x22:\x22scrollable\x22},{\x22name\x22:\x22[open]\x22},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22nodisplay\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-list\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-list\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-list-0.1.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22DIV\x22,\x22selector\x22:\x22amp-list\x20div[fetch-error]\x22,\x22attrs\x22:[{\x22name\x22:\x22align\x22},{\x22name\x22:\x22fetch-error\x22,\x22required\x22:true}]},{\x22name\x22:\x22AMP-LIST\x22,\x22selector\x22:\x22amp-list\x22,\x22attrs\x22:[{\x22name\x22:\x22binding\x22,\x22value\x22:[\x22always\x22,\x22no\x22,\x22refresh\x22,\x22refresh-evaluate\x22]},{\x22name\x22:\x22diffable\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22items\x22},{\x22name\x22:\x22max-items\x22},{\x22name\x22:\x22single-item\x22},{\x22name\x22:\x22src\x22,\x22valueUrl\x22:{\x22protocol\x22:[\x22https\x22],\x22allowRelative\x22:false},\x22required\x22:true,\x22disallowedValueRegex\x22:\x22__amp_source_origin|{{|}}\x22},{\x22name\x22:\x22template\x22},{\x22name\x22:\x22xssi-prefix\x22},{\x22name\x22:\x22[is-layout-container]\x22},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22responsive\x22,\x22container\x22,\x22fill\x22,\x22fixed\x22,\x22fixed_height\x22,\x22flex_item\x22,\x22nodisplay\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-template=\x27amp-mustache\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-template\x22,\x22value\x22:[\x22amp-mustache\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-mustache-0.1.js\x22,\x22https://cdn.ampproject.org/v0/amp-mustache-0.2.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[type=\x27text/plain\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22id\x22,\x22disallowedValueRegex\x22:\x22(^|\x5c\x5cs)(__amp_\x5c\x5cS*|__count__|__defineGetter__|__defineSetter__|__lookupGetter__|__lookupSetter__|__noSuchMethod__|__parent__|__proto__|__AMP_\x5c\x5cS*|\x5c\x5c$p|\x5c\x5c$proxy|acceptCharset|addEventListener|appendChild|assignedSlot|attachShadow|AMP|baseURI|checkValidity|childElementCount|childNodes|classList|className|clientHeight|clientLeft|clientTop|clientWidth|compareDocumentPosition|computedName|computedRole|contentEditable|createShadowRoot|enqueAction|firstChild|firstElementChild|getAnimations|getAttribute|getAttributeNS|getAttributeNode|getAttributeNodeNS|getBoundingClientRect|getClientRects|getDestinationInsertionPoints|getElementsByClassName|getElementsByTagName|getElementsByTagNameNS|getRootNode|hasAttribute|hasAttributeNS|hasAttributes|hasChildNodes|hasPointerCapture|i-amphtml-\x5c\x5cS*|innerHTML|innerText|inputMode|insertAdjacentElement|insertAdjacentHTML|insertAdjacentText|isContentEditable|isDefaultNamespace|isEqualNode|isSameNode|lastChild|lastElementChild|lookupNamespaceURI|namespaceURI|nextElementSibling|nextSibling|nodeName|nodeType|nodeValue|offsetHeight|offsetLeft|offsetParent|offsetTop|offsetWidth|outerHTML|outerText|ownerDocument|parentElement|parentNode|previousElementSibling|previousSibling|querySelector|querySelectorAll|releasePointerCapture|removeAttribute|removeAttributeNS|removeAttributeNode|removeChild|removeEventListener|replaceChild|reportValidity|requestPointerLock|scrollHeight|scrollIntoView|scrollIntoViewIfNeeded|scrollLeft|scrollWidth|setAttribute|setAttributeNS|setAttributeNode|setAttributeNodeNS|setPointerCapture|shadowRoot|styleMap|tabIndex|tagName|textContent|toString|valueOf|(webkit|ms|moz|o)dropzone|(webkit|moz|ms|o)MatchesSelector|(webkit|moz|ms|o)RequestFullScreen|(webkit|moz|ms|o)RequestFullscreen)(\x5c\x5cs|$)\x22},{\x22name\x22:\x22type\x22,\x22value\x22:[\x22text/plain\x22],\x22required\x22:true},{\x22name\x22:\x22template\x22,\x22value\x22:[\x22amp-mustache\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22nonce-attr\x22]},{\x22name\x22:\x22TEMPLATE\x22,\x22selector\x22:\x22template\x22,\x22attrs\x22:[{\x22name\x22:\x22id\x22,\x22disallowedValueRegex\x22:\x22(^|\x5c\x5cs)(__amp_\x5c\x5cS*|__count__|__defineGetter__|__defineSetter__|__lookupGetter__|__lookupSetter__|__noSuchMethod__|__parent__|__proto__|__AMP_\x5c\x5cS*|\x5c\x5c$p|\x5c\x5c$proxy|acceptCharset|addEventListener|appendChild|assignedSlot|attachShadow|AMP|baseURI|checkValidity|childElementCount|childNodes|classList|className|clientHeight|clientLeft|clientTop|clientWidth|compareDocumentPosition|computedName|computedRole|contentEditable|createShadowRoot|enqueAction|firstChild|firstElementChild|getAnimations|getAttribute|getAttributeNS|getAttributeNode|getAttributeNodeNS|getBoundingClientRect|getClientRects|getDestinationInsertionPoints|getElementsByClassName|getElementsByTagName|getElementsByTagNameNS|getRootNode|hasAttribute|hasAttributeNS|hasAttributes|hasChildNodes|hasPointerCapture|i-amphtml-\x5c\x5cS*|innerHTML|innerText|inputMode|insertAdjacentElement|insertAdjacentHTML|insertAdjacentText|isContentEditable|isDefaultNamespace|isEqualNode|isSameNode|lastChild|lastElementChild|lookupNamespaceURI|namespaceURI|nextElementSibling|nextSibling|nodeName|nodeType|nodeValue|offsetHeight|offsetLeft|offsetParent|offsetTop|offsetWidth|outerHTML|outerText|ownerDocument|parentElement|parentNode|previousElementSibling|previousSibling|querySelector|querySelectorAll|releasePointerCapture|removeAttribute|removeAttributeNS|removeAttributeNode|removeChild|removeEventListener|replaceChild|reportValidity|requestPointerLock|scrollHeight|scrollIntoView|scrollIntoViewIfNeeded|scrollLeft|scrollWidth|setAttribute|setAttributeNS|setAttributeNode|setAttributeNodeNS|setPointerCapture|shadowRoot|styleMap|tabIndex|tagName|textContent|toString|valueOf|(webkit|ms|moz|o)dropzone|(webkit|moz|ms|o)MatchesSelector|(webkit|moz|ms|o)RequestFullScreen|(webkit|moz|ms|o)RequestFullscreen)(\x5c\x5cs|$)\x22},{\x22name\x22:\x22type\x22,\x22value\x22:[\x22amp-mustache\x22],\x22required\x22:true}]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-selector\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-selector\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-selector-0.1.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22AMP-SELECTOR\x22,\x22selector\x22:\x22amp-selector\x22,\x22attrs\x22:[{\x22name\x22:\x22disabled\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22form\x22},{\x22name\x22:\x22keyboard-select-mode\x22,\x22value\x22:[\x22focus\x22,\x22none\x22,\x22select\x22]},{\x22name\x22:\x22multiple\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22[disabled]\x22},{\x22name\x22:\x22[selected]\x22},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22responsive\x22,\x22fill\x22,\x22fixed\x22,\x22fixed_height\x22,\x22nodisplay\x22,\x22container\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22name-attr\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22$REFERENCE_POINT\x22,\x22selector\x22:\x22amp-selector\x20option\x22,\x22attrs\x22:[{\x22name\x22:\x22disabled\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22option\x22,\x22required\x22:true},{\x22name\x22:\x22selected\x22,\x22value\x22:[\x22\x22]}]},{\x22name\x22:\x22$REFERENCE_POINT\x22,\x22selector\x22:\x22amp-selector\x20child\x22,\x22attrs\x22:[]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-sidebar\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-sidebar\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-sidebar-0.1.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22AMP-SIDEBAR\x22,\x22selector\x22:\x22amp-sidebar\x22,\x22attrs\x22:[{\x22name\x22:\x22side\x22,\x22value\x22:[\x22left\x22,\x22right\x22]},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22nodisplay\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22$AMP_LAYOUT_ATTRS\x22]},{\x22name\x22:\x22NAV\x22,\x22selector\x22:\x22amp-sidebar\x20>\x20nav\x22,\x22requiredParent\x22:\x22AMP-SIDEBAR\x22,\x22attrs\x22:[{\x22name\x22:\x22toolbar\x22,\x22required\x22:true},{\x22name\x22:\x22toolbar-target\x22,\x22required\x22:true}]},{\x22name\x22:\x22SCRIPT\x22,\x22selector\x22:\x22script[custom-element=\x27amp-timeago\x27]\x22,\x22attrs\x22:[{\x22name\x22:\x22custom-element\x22,\x22value\x22:[\x22amp-timeago\x22],\x22required\x22:true},{\x22name\x22:\x22src\x22,\x22value\x22:[\x22https://cdn.ampproject.org/v0/amp-timeago-0.1.js\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22common-extension-attrs\x22]},{\x22name\x22:\x22AMP-TIMEAGO\x22,\x22selector\x22:\x22amp-timeago\x22,\x22attrs\x22:[{\x22name\x22:\x22cutoff\x22,\x22valueRegex\x22:\x22\x5c\x5cd+\x22},{\x22name\x22:\x22datetime\x22,\x22valueRegex\x22:\x22\x5c\x5cd{4}-[01]\x5c\x5cd-[0-3]\x5c\x5cdT[0-2]\x5c\x5cd:[0-5]\x5c\x5cd(:[0-5]\x5c\x5cd(\x5c\x5c.\x5c\x5cd+)?)?(Z|[+-][0-1][0-9]:[0-5][0-9])\x22,\x22required\x22:true},{\x22name\x22:\x22locale\x22},{\x22name\x22:\x22[datetime]\x22},{\x22name\x22:\x22[title]\x22},{\x22name\x22:\x22layout\x22,\x22value\x22:[\x22responsive\x22,\x22fixed\x22,\x22fixed_height\x22],\x22required\x22:true}],\x22attrLists\x22:[\x22extended-amp-global\x22,\x22$AMP_LAYOUT_ATTRS\x22]}],\x22attrLists\x22:[{\x22name\x22:\x22cite-attr\x22,\x22attrs\x22:[{\x22name\x22:\x22cite\x22,\x22valueUrl\x22:{\x22protocol\x22:[\x22http\x22,\x22https\x22],\x22allowEmpty\x22:true},\x22disallowedValueRegex\x22:\x22__amp_source_origin\x22}]},{\x22name\x22:\x22input-common-attr\x22,\x22attrs\x22:[{\x22name\x22:\x22accept\x22},{\x22name\x22:\x22accesskey\x22},{\x22name\x22:\x22autocomplete\x22},{\x22name\x22:\x22autofocus\x22},{\x22name\x22:\x22checked\x22},{\x22name\x22:\x22disabled\x22},{\x22name\x22:\x22height\x22},{\x22name\x22:\x22inputmode\x22},{\x22name\x22:\x22list\x22},{\x22name\x22:\x22enterkeyhint\x22},{\x22name\x22:\x22max\x22},{\x22name\x22:\x22maxlength\x22},{\x22name\x22:\x22min\x22},{\x22name\x22:\x22minlength\x22},{\x22name\x22:\x22multiple\x22},{\x22name\x22:\x22pattern\x22},{\x22name\x22:\x22placeholder\x22},{\x22name\x22:\x22readonly\x22},{\x22name\x22:\x22required\x22},{\x22name\x22:\x22selectiondirection\x22},{\x22name\x22:\x22size\x22},{\x22name\x22:\x22spellcheck\x22},{\x22name\x22:\x22step\x22},{\x22name\x22:\x22tabindex\x22},{\x22name\x22:\x22value\x22},{\x22name\x22:\x22width\x22},{\x22name\x22:\x22[accept]\x22},{\x22name\x22:\x22[accesskey]\x22},{\x22name\x22:\x22[autocomplete]\x22},{\x22name\x22:\x22[checked]\x22},{\x22name\x22:\x22[disabled]\x22},{\x22name\x22:\x22[height]\x22},{\x22name\x22:\x22[inputmode]\x22},{\x22name\x22:\x22[max]\x22},{\x22name\x22:\x22[maxlength]\x22},{\x22name\x22:\x22[min]\x22},{\x22name\x22:\x22[minlength]\x22},{\x22name\x22:\x22[multiple]\x22},{\x22name\x22:\x22[pattern]\x22},{\x22name\x22:\x22[placeholder]\x22},{\x22name\x22:\x22[readonly]\x22},{\x22name\x22:\x22[required]\x22},{\x22name\x22:\x22[selectiondirection]\x22},{\x22name\x22:\x22[size]\x22},{\x22name\x22:\x22[spellcheck]\x22},{\x22name\x22:\x22[step]\x22},{\x22name\x22:\x22[value]\x22},{\x22name\x22:\x22[width]\x22}]},{\x22name\x22:\x22amphtml-engine-attrs\x22,\x22attrs\x22:[{\x22name\x22:\x22async\x22,\x22value\x22:[\x22\x22],\x22required\x22:true},{\x22name\x22:\x22crossorigin\x22,\x22value\x22:[\x22anonymous\x22]},{\x22name\x22:\x22type\x22,\x22value\x22:[\x22text/javascript\x22]}]},{\x22name\x22:\x22mandatory-src-amp4email\x22,\x22attrs\x22:[{\x22name\x22:\x22src\x22,\x22valueUrl\x22:{\x22protocol\x22:[\x22https\x22],\x22allowRelative\x22:false},\x22required\x22:true,\x22disallowedValueRegex\x22:\x22__amp_source_origin|(.|\x5c\x5cs){{|}}(.|\x5c\x5cs)|^{{.*[^}][^}]$|^[^{][^{].*}}$|^}}|{{$|{{#|{{/|{{\x5c\x5c^\x22}]},{\x22name\x22:\x22extended-amp-global\x22,\x22attrs\x22:[{\x22name\x22:\x22i-amphtml-layout\x22,\x22value\x22:[\x22container\x22,\x22fill\x22,\x22fixed\x22,\x22fixed-height\x22,\x22flex-item\x22,\x22fluid\x22,\x22intrinsic\x22,\x22nodisplay\x22,\x22responsive\x22]},{\x22name\x22:\x22media\x22},{\x22name\x22:\x22noloading\x22,\x22value\x22:[\x22\x22]}]},{\x22name\x22:\x22$AMP_LAYOUT_ATTRS\x22,\x22attrs\x22:[{\x22name\x22:\x22disable-inline-width\x22},{\x22name\x22:\x22height\x22},{\x22name\x22:\x22heights\x22},{\x22name\x22:\x22layout\x22},{\x22name\x22:\x22sizes\x22},{\x22name\x22:\x22width\x22},{\x22name\x22:\x22[height]\x22},{\x22name\x22:\x22[width]\x22}]},{\x22name\x22:\x22nonce-attr\x22,\x22attrs\x22:[{\x22name\x22:\x22nonce\x22}]},{\x22name\x22:\x22common-extension-attrs\x22,\x22attrs\x22:[{\x22name\x22:\x22async\x22,\x22value\x22:[\x22\x22],\x22required\x22:true},{\x22name\x22:\x22crossorigin\x22,\x22value\x22:[\x22anonymous\x22]},{\x22name\x22:\x22nonce\x22},{\x22name\x22:\x22type\x22,\x22value\x22:[\x22text/javascript\x22]}]},{\x22name\x22:\x22mandatory-id-attr\x22,\x22attrs\x22:[{\x22name\x22:\x22id\x22,\x22required\x22:true,\x22disallowedValueRegex\x22:\x22(^|\x5c\x5cs)(__amp_\x5c\x5cS*|__count__|__defineGetter__|__defineSetter__|__lookupGetter__|__lookupSetter__|__noSuchMethod__|__parent__|__proto__|__AMP_\x5c\x5cS*|\x5c\x5c$p|\x5c\x5c$proxy|acceptCharset|addEventListener|appendChild|assignedSlot|attachShadow|AMP|baseURI|checkValidity|childElementCount|childNodes|classList|className|clientHeight|clientLeft|clientTop|clientWidth|compareDocumentPosition|computedName|computedRole|contentEditable|createShadowRoot|enqueAction|firstChild|firstElementChild|getAnimations|getAttribute|getAttributeNS|getAttributeNode|getAttributeNodeNS|getBoundingClientRect|getClientRects|getDestinationInsertionPoints|getElementsByClassName|getElementsByTagName|getElementsByTagNameNS|getRootNode|hasAttribute|hasAttributeNS|hasAttributes|hasChildNodes|hasPointerCapture|i-amphtml-\x5c\x5cS*|innerHTML|innerText|inputMode|insertAdjacentElement|insertAdjacentHTML|insertAdjacentText|isContentEditable|isDefaultNamespace|isEqualNode|isSameNode|lastChild|lastElementChild|lookupNamespaceURI|namespaceURI|nextElementSibling|nextSibling|nodeName|nodeType|nodeValue|offsetHeight|offsetLeft|offsetParent|offsetTop|offsetWidth|outerHTML|outerText|ownerDocument|parentElement|parentNode|previousElementSibling|previousSibling|querySelector|querySelectorAll|releasePointerCapture|removeAttribute|removeAttributeNS|removeAttributeNode|removeChild|removeEventListener|replaceChild|reportValidity|requestPointerLock|scrollHeight|scrollIntoView|scrollIntoViewIfNeeded|scrollLeft|scrollWidth|setAttribute|setAttributeNS|setAttributeNode|setAttributeNodeNS|setPointerCapture|shadowRoot|styleMap|tabIndex|tagName|textContent|toString|valueOf|(webkit|ms|moz|o)dropzone|(webkit|moz|ms|o)MatchesSelector|(webkit|moz|ms|o)RequestFullScreen|(webkit|moz|ms|o)RequestFullscreen)(\x5c\x5cs|$)\x22}]},{\x22name\x22:\x22name-attr\x22,\x22attrs\x22:[{\x22name\x22:\x22name\x22,\x22disallowedValueRegex\x22:\x22(^|\x5c\x5cs)(__amp_\x5c\x5cS*|__count__|__defineGetter__|__defineSetter__|__lookupGetter__|__lookupSetter__|__noSuchMethod__|__parent__|__proto__|__AMP_\x5c\x5cS*|\x5c\x5c$p|\x5c\x5c$proxy|acceptCharset|addEventListener|appendChild|assignedSlot|attachShadow|baseURI|checkValidity|childElementCount|childNodes|classList|className|clientHeight|clientLeft|clientTop|clientWidth|compareDocumentPosition|computedName|computedRole|contentEditable|createShadowRoot|enqueAction|firstChild|firstElementChild|getAnimations|getAttribute|getAttributeNS|getAttributeNode|getAttributeNodeNS|getBoundingClientRect|getClientRects|getDestinationInsertionPoints|getElementsByClassName|getElementsByTagName|getElementsByTagNameNS|getRootNode|hasAttribute|hasAttributeNS|hasAttributes|hasChildNodes|hasPointerCapture|innerHTML|innerText|inputMode|insertAdjacentElement|insertAdjacentHTML|insertAdjacentText|isContentEditable|isDefaultNamespace|isEqualNode|isSameNode|lastChild|lastElementChild|lookupNamespaceURI|namespaceURI|nextElementSibling|nextSibling|nodeName|nodeType|nodeValue|offsetHeight|offsetLeft|offsetParent|offsetTop|offsetWidth|outerHTML|outerText|ownerDocument|parentElement|parentNode|previousElementSibling|previousSibling|querySelector|querySelectorAll|releasePointerCapture|removeAttribute|removeAttributeNS|removeAttributeNode|removeChild|removeEventListener|replaceChild|reportValidity|requestPointerLock|scrollHeight|scrollIntoView|scrollIntoViewIfNeeded|scrollLeft|scrollWidth|setAttribute|setAttributeNS|setAttributeNode|setAttributeNodeNS|setPointerCapture|shadowRoot|styleMap|tabIndex|tagName|textContent|toString|valueOf|(webkit|ms|moz|o)dropzone|(webkit|moz|ms|o)MatchesSelector|(webkit|moz|ms|o)RequestFullScreen|(webkit|moz|ms|o)RequestFullscreen)(\x5c\x5cs|$)\x22}]},{\x22name\x22:\x22$GLOBAL_ATTRS\x22,\x22attrs\x22:[{\x22name\x22:\x22itemid\x22},{\x22name\x22:\x22itemprop\x22},{\x22name\x22:\x22itemref\x22},{\x22name\x22:\x22itemscope\x22},{\x22name\x22:\x22itemtype\x22},{\x22name\x22:\x22about\x22},{\x22name\x22:\x22content\x22},{\x22name\x22:\x22datatype\x22},{\x22name\x22:\x22inlist\x22},{\x22name\x22:\x22prefix\x22},{\x22name\x22:\x22property\x22},{\x22name\x22:\x22rel\x22,\x22disallowedValueRegex\x22:\x22(^|\x5c\x5cs)(canonical|components|dns-prefetch|import|manifest|preconnect|preload|prerender|serviceworker|stylesheet|subresource)(\x5c\x5cs|$)\x22},{\x22name\x22:\x22resource\x22},{\x22name\x22:\x22rev\x22},{\x22name\x22:\x22style\x22},{\x22name\x22:\x22typeof\x22},{\x22name\x22:\x22vocab\x22},{\x22name\x22:\x22accesskey\x22},{\x22name\x22:\x22class\x22},{\x22name\x22:\x22dir\x22},{\x22name\x22:\x22draggable\x22},{\x22name\x22:\x22hidden\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22id\x22,\x22disallowedValueRegex\x22:\x22(^|\x5c\x5cs)(__amp_\x5c\x5cS*|__count__|__defineGetter__|__defineSetter__|__lookupGetter__|__lookupSetter__|__noSuchMethod__|__parent__|__proto__|__AMP_\x5c\x5cS*|\x5c\x5c$p|\x5c\x5c$proxy|acceptCharset|addEventListener|appendChild|assignedSlot|attachShadow|AMP|baseURI|checkValidity|childElementCount|childNodes|classList|className|clientHeight|clientLeft|clientTop|clientWidth|compareDocumentPosition|computedName|computedRole|contentEditable|createShadowRoot|enqueAction|firstChild|firstElementChild|getAnimations|getAttribute|getAttributeNS|getAttributeNode|getAttributeNodeNS|getBoundingClientRect|getClientRects|getDestinationInsertionPoints|getElementsByClassName|getElementsByTagName|getElementsByTagNameNS|getRootNode|hasAttribute|hasAttributeNS|hasAttributes|hasChildNodes|hasPointerCapture|i-amphtml-\x5c\x5cS*|innerHTML|innerText|inputMode|insertAdjacentElement|insertAdjacentHTML|insertAdjacentText|isContentEditable|isDefaultNamespace|isEqualNode|isSameNode|lastChild|lastElementChild|lookupNamespaceURI|namespaceURI|nextElementSibling|nextSibling|nodeName|nodeType|nodeValue|offsetHeight|offsetLeft|offsetParent|offsetTop|offsetWidth|outerHTML|outerText|ownerDocument|parentElement|parentNode|previousElementSibling|previousSibling|querySelector|querySelectorAll|releasePointerCapture|removeAttribute|removeAttributeNS|removeAttributeNode|removeChild|removeEventListener|replaceChild|reportValidity|requestPointerLock|scrollHeight|scrollIntoView|scrollIntoViewIfNeeded|scrollLeft|scrollWidth|setAttribute|setAttributeNS|setAttributeNode|setAttributeNodeNS|setPointerCapture|shadowRoot|styleMap|tabIndex|tagName|textContent|toString|valueOf|(webkit|ms|moz|o)dropzone|(webkit|moz|ms|o)MatchesSelector|(webkit|moz|ms|o)RequestFullScreen|(webkit|moz|ms|o)RequestFullscreen)(\x5c\x5cs|$)\x22},{\x22name\x22:\x22lang\x22},{\x22name\x22:\x22slot\x22},{\x22name\x22:\x22tabindex\x22},{\x22name\x22:\x22title\x22},{\x22name\x22:\x22translate\x22},{\x22name\x22:\x22aria-activedescendant\x22},{\x22name\x22:\x22aria-atomic\x22},{\x22name\x22:\x22aria-autocomplete\x22},{\x22name\x22:\x22aria-busy\x22},{\x22name\x22:\x22aria-checked\x22},{\x22name\x22:\x22aria-controls\x22},{\x22name\x22:\x22aria-current\x22},{\x22name\x22:\x22aria-describedby\x22},{\x22name\x22:\x22aria-disabled\x22},{\x22name\x22:\x22aria-dropeffect\x22},{\x22name\x22:\x22aria-expanded\x22},{\x22name\x22:\x22aria-flowto\x22},{\x22name\x22:\x22aria-grabbed\x22},{\x22name\x22:\x22aria-haspopup\x22},{\x22name\x22:\x22aria-hidden\x22},{\x22name\x22:\x22aria-invalid\x22},{\x22name\x22:\x22aria-label\x22},{\x22name\x22:\x22aria-labelledby\x22},{\x22name\x22:\x22aria-level\x22},{\x22name\x22:\x22aria-live\x22},{\x22name\x22:\x22aria-modal\x22},{\x22name\x22:\x22aria-multiline\x22},{\x22name\x22:\x22aria-multiselectable\x22},{\x22name\x22:\x22aria-orientation\x22},{\x22name\x22:\x22aria-owns\x22},{\x22name\x22:\x22aria-posinset\x22},{\x22name\x22:\x22aria-pressed\x22},{\x22name\x22:\x22aria-readonly\x22},{\x22name\x22:\x22aria-relevant\x22},{\x22name\x22:\x22aria-required\x22},{\x22name\x22:\x22aria-selected\x22},{\x22name\x22:\x22aria-setsize\x22},{\x22name\x22:\x22aria-sort\x22},{\x22name\x22:\x22aria-valuemax\x22},{\x22name\x22:\x22aria-valuemin\x22},{\x22name\x22:\x22aria-valuenow\x22},{\x22name\x22:\x22aria-valuetext\x22},{\x22name\x22:\x22on\x22},{\x22name\x22:\x22role\x22},{\x22name\x22:\x22placeholder\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22fallback\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22overflow\x22},{\x22name\x22:\x22amp-access\x22},{\x22name\x22:\x22amp-access-behavior\x22},{\x22name\x22:\x22amp-access-hide\x22},{\x22name\x22:\x22amp-access-id\x22},{\x22name\x22:\x22amp-access-loader\x22},{\x22name\x22:\x22amp-access-loading\x22},{\x22name\x22:\x22amp-access-off\x22},{\x22name\x22:\x22amp-access-on\x22},{\x22name\x22:\x22amp-access-show\x22},{\x22name\x22:\x22amp-access-style\x22},{\x22name\x22:\x22amp-access-template\x22},{\x22name\x22:\x22i-amp-access-id\x22},{\x22name\x22:\x22validation-for\x22},{\x22name\x22:\x22visible-when-invalid\x22,\x22value\x22:[\x22badInput\x22,\x22customError\x22,\x22patternMismatch\x22,\x22rangeOverflow\x22,\x22rangeUnderflow\x22,\x22stepMismatch\x22,\x22tooLong\x22,\x22tooShort\x22,\x22typeMismatch\x22,\x22valueMissing\x22]},{\x22name\x22:\x22amp-fx\x22,\x22valueRegex\x22:\x22(fade-in|fade-in-scroll|float-in-bottom|float-in-top|fly-in-bottom|fly-in-left|fly-in-right|fly-in-top|parallax)(\x5c\x5cs|fade-in|fade-in-scroll|float-in-bottom|float-in-top|fly-in-bottom|fly-in-left|fly-in-right|fly-in-top|parallax)*\x22},{\x22name\x22:\x22subscriptions-action\x22},{\x22name\x22:\x22subscriptions-actions\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22subscriptions-decorate\x22},{\x22name\x22:\x22subscriptions-dialog\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22subscriptions-display\x22},{\x22name\x22:\x22subscriptions-lang\x22},{\x22name\x22:\x22subscriptions-section\x22,\x22value\x22:[\x22actions\x22,\x22content\x22,\x22content-not-granted\x22,\x22loading\x22]},{\x22name\x22:\x22subscriptions-service\x22},{\x22name\x22:\x22subscriptions-google-rtc\x22},{\x22name\x22:\x22next-page-hide\x22},{\x22name\x22:\x22next-page-replace\x22},{\x22name\x22:\x22[aria-activedescendant]\x22},{\x22name\x22:\x22[aria-atomic]\x22},{\x22name\x22:\x22[aria-autocomplete]\x22},{\x22name\x22:\x22[aria-busy]\x22},{\x22name\x22:\x22[aria-checked]\x22},{\x22name\x22:\x22[aria-controls]\x22},{\x22name\x22:\x22[aria-describedby]\x22},{\x22name\x22:\x22[aria-disabled]\x22},{\x22name\x22:\x22[aria-dropeffect]\x22},{\x22name\x22:\x22[aria-expanded]\x22},{\x22name\x22:\x22[aria-flowto]\x22},{\x22name\x22:\x22[aria-grabbed]\x22},{\x22name\x22:\x22[aria-haspopup]\x22},{\x22name\x22:\x22[aria-hidden]\x22},{\x22name\x22:\x22[aria-invalid]\x22},{\x22name\x22:\x22[aria-label]\x22},{\x22name\x22:\x22[aria-labelledby]\x22},{\x22name\x22:\x22[aria-level]\x22},{\x22name\x22:\x22[aria-live]\x22},{\x22name\x22:\x22[aria-multiline]\x22},{\x22name\x22:\x22[aria-multiselectable]\x22},{\x22name\x22:\x22[aria-orientation]\x22},{\x22name\x22:\x22[aria-owns]\x22},{\x22name\x22:\x22[aria-posinset]\x22},{\x22name\x22:\x22[aria-pressed]\x22},{\x22name\x22:\x22[aria-readonly]\x22},{\x22name\x22:\x22[aria-relevant]\x22},{\x22name\x22:\x22[aria-required]\x22},{\x22name\x22:\x22[aria-selected]\x22},{\x22name\x22:\x22[aria-setsize]\x22},{\x22name\x22:\x22[aria-sort]\x22},{\x22name\x22:\x22[aria-valuemax]\x22},{\x22name\x22:\x22[aria-valuemin]\x22},{\x22name\x22:\x22[aria-valuenow]\x22},{\x22name\x22:\x22[aria-valuetext]\x22},{\x22name\x22:\x22[class]\x22},{\x22name\x22:\x22[hidden]\x22},{\x22name\x22:\x22[text]\x22},{\x22name\x22:\x22i-amphtml-binding\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22autoscroll\x22}]},{\x22name\x22:\x22amp-carousel-common\x22,\x22attrs\x22:[{\x22name\x22:\x22arrows\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22autoplay\x22,\x22valueRegex\x22:\x22(|[0-9]+)\x22},{\x22name\x22:\x22controls\x22},{\x22name\x22:\x22delay\x22,\x22valueRegex\x22:\x22[0-9]+\x22},{\x22name\x22:\x22dots\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22loop\x22,\x22value\x22:[\x22\x22]},{\x22name\x22:\x22slide\x22,\x22valueRegex\x22:\x22[0-9]+\x22},{\x22name\x22:\x22type\x22,\x22value\x22:[\x22carousel\x22,\x22slides\x22]},{\x22name\x22:\x22[slide]\x22}]}],\x22extensions\x22:[{\x22name\x22:\x22amp-accordion\x22,\x22versions\x22:[\x220.1\x22]},{\x22name\x22:\x22amp-anim\x22,\x22versions\x22:[\x220.1\x22]},{\x22name\x22:\x22amp-autocomplete\x22,\x22versions\x22:[\x220.1\x22]},{\x22name\x22:\x22amp-bind\x22,\x22versions\x22:[\x220.1\x22]},{\x22name\x22:\x22amp-carousel\x22,\x22versions\x22:[\x220.1\x22,\x220.2\x22]},{\x22name\x22:\x22amp-fit-text\x22,\x22versions\x22:[\x220.1\x22]},{\x22name\x22:\x22amp-form\x22,\x22versions\x22:[\x220.1\x22]},{\x22name\x22:\x22amp-image-lightbox\x22,\x22versions\x22:[\x220.1\x22,\x22latest\x22]},{\x22name\x22:\x22amp-lightbox\x22,\x22versions\x22:[\x220.1\x22,\x22latest\x22]},{\x22name\x22:\x22amp-list\x22,\x22versions\x22:[\x220.1\x22]},{\x22name\x22:\x22amp-mustache\x22,\x22versions\x22:[\x220.1\x22,\x220.2\x22]},{\x22name\x22:\x22amp-selector\x22,\x22versions\x22:[\x220.1\x22]},{\x22name\x22:\x22amp-sidebar\x22,\x22versions\x22:[\x220.1\x22]},{\x22name\x22:\x22amp-timeago\x22,\x22versions\x22:[\x220.1\x22]}],\x22declarations\x22:[{\x22name\x22:\x22-moz-appearance\x22},{\x22name\x22:\x22-webkit-appearance\x22},{\x22name\x22:\x22-webkit-tap-highlight-color\x22},{\x22name\x22:\x22align-content\x22},{\x22name\x22:\x22align-items\x22},{\x22name\x22:\x22align-self\x22},{\x22name\x22:\x22appearance\x22},{\x22name\x22:\x22aspect-ratio\x22},{\x22name\x22:\x22azimuth\x22},{\x22name\x22:\x22background\x22},{\x22name\x22:\x22background-attachment\x22},{\x22name\x22:\x22background-blend-mode\x22},{\x22name\x22:\x22background-clip\x22},{\x22name\x22:\x22background-color\x22},{\x22name\x22:\x22background-image\x22},{\x22name\x22:\x22background-origin\x22},{\x22name\x22:\x22background-position\x22},{\x22name\x22:\x22background-repeat\x22},{\x22name\x22:\x22background-size\x22},{\x22name\x22:\x22border\x22},{\x22name\x22:\x22border-bottom\x22},{\x22name\x22:\x22border-bottom-color\x22},{\x22name\x22:\x22border-bottom-left-radius\x22},{\x22name\x22:\x22border-bottom-right-radius\x22},{\x22name\x22:\x22border-bottom-style\x22},{\x22name\x22:\x22border-bottom-width\x22},{\x22name\x22:\x22border-collapse\x22},{\x22name\x22:\x22border-color\x22},{\x22name\x22:\x22border-left\x22},{\x22name\x22:\x22border-left-color\x22},{\x22name\x22:\x22border-left-style\x22},{\x22name\x22:\x22border-left-width\x22},{\x22name\x22:\x22border-radius\x22},{\x22name\x22:\x22border-right\x22},{\x22name\x22:\x22border-right-color\x22},{\x22name\x22:\x22border-right-style\x22},{\x22name\x22:\x22border-right-width\x22},{\x22name\x22:\x22border-spacing\x22},{\x22name\x22:\x22border-style\x22},{\x22name\x22:\x22border-top\x22},{\x22name\x22:\x22border-top-color\x22},{\x22name\x22:\x22border-top-left-radius\x22},{\x22name\x22:\x22border-top-right-radius\x22},{\x22name\x22:\x22border-top-style\x22},{\x22name\x22:\x22border-top-width\x22},{\x22name\x22:\x22border-width\x22},{\x22name\x22:\x22bottom\x22},{\x22name\x22:\x22box-shadow\x22},{\x22name\x22:\x22box-sizing\x22},{\x22name\x22:\x22break-after\x22},{\x22name\x22:\x22break-before\x22},{\x22name\x22:\x22break-inside\x22},{\x22name\x22:\x22caption-side\x22},{\x22name\x22:\x22caret-color\x22},{\x22name\x22:\x22clear\x22},{\x22name\x22:\x22color\x22},{\x22name\x22:\x22color-adjust\x22},{\x22name\x22:\x22column-count\x22},{\x22name\x22:\x22column-fill\x22},{\x22name\x22:\x22column-gap\x22},{\x22name\x22:\x22column-rule\x22},{\x22name\x22:\x22column-rule-color\x22},{\x22name\x22:\x22column-rule-style\x22},{\x22name\x22:\x22column-rule-width\x22},{\x22name\x22:\x22column-span\x22},{\x22name\x22:\x22column-width\x22},{\x22name\x22:\x22columns\x22},{\x22name\x22:\x22counter-increment\x22},{\x22name\x22:\x22counter-reset\x22},{\x22name\x22:\x22cursor\x22,\x22value\x22:[\x22initial\x22,\x22pointer\x22]},{\x22name\x22:\x22direction\x22},{\x22name\x22:\x22display\x22},{\x22name\x22:\x22elevation\x22},{\x22name\x22:\x22empty-cells\x22},{\x22name\x22:\x22filter\x22,\x22valueRegex\x22:\x22^\x20*((blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|opacity|saturate|sepia)\x5c\x5c(([^()\x20]*|(rgb|rgba|hsl|hsla)\x5c\x5c([^()]*\x5c\x5c))(\x20+([^()\x20]*|(rgb|rgba|hsl|hsla)\x5c\x5c([^()]*\x5c\x5c)))*\x5c\x5c)\x20*)*$\x22},{\x22name\x22:\x22flex\x22},{\x22name\x22:\x22flex-basis\x22},{\x22name\x22:\x22flex-direction\x22},{\x22name\x22:\x22flex-flow\x22},{\x22name\x22:\x22flex-grow\x22},{\x22name\x22:\x22flex-shrink\x22},{\x22name\x22:\x22flex-wrap\x22},{\x22name\x22:\x22float\x22},{\x22name\x22:\x22font\x22},{\x22name\x22:\x22font-family\x22},{\x22name\x22:\x22font-feature-settings\x22},{\x22name\x22:\x22font-kerning\x22},{\x22name\x22:\x22font-size\x22},{\x22name\x22:\x22font-size-adjust\x22},{\x22name\x22:\x22font-stretch\x22},{\x22name\x22:\x22font-style\x22},{\x22name\x22:\x22font-synthesis\x22},{\x22name\x22:\x22font-variant\x22},{\x22name\x22:\x22font-variant-alternates\x22},{\x22name\x22:\x22font-variant-caps\x22},{\x22name\x22:\x22font-variant-east-asian\x22},{\x22name\x22:\x22font-variant-ligatures\x22},{\x22name\x22:\x22font-variant-numeric\x22},{\x22name\x22:\x22font-variation-settings\x22},{\x22name\x22:\x22font-weight\x22},{\x22name\x22:\x22gap\x22},{\x22name\x22:\x22grid\x22},{\x22name\x22:\x22grid-area\x22},{\x22name\x22:\x22grid-auto-columns\x22},{\x22name\x22:\x22grid-auto-flow\x22},{\x22name\x22:\x22grid-auto-rows\x22},{\x22name\x22:\x22grid-column\x22},{\x22name\x22:\x22grid-column-end\x22},{\x22name\x22:\x22grid-column-start\x22},{\x22name\x22:\x22grid-row\x22},{\x22name\x22:\x22grid-row-end\x22},{\x22name\x22:\x22grid-row-start\x22},{\x22name\x22:\x22grid-template\x22},{\x22name\x22:\x22grid-template-areas\x22},{\x22name\x22:\x22grid-template-columns\x22},{\x22name\x22:\x22grid-template-rows\x22},{\x22name\x22:\x22height\x22},{\x22name\x22:\x22hyphens\x22},{\x22name\x22:\x22image-orientation\x22},{\x22name\x22:\x22image-resolution\x22},{\x22name\x22:\x22inline-size\x22},{\x22name\x22:\x22isolation\x22},{\x22name\x22:\x22justify-content\x22},{\x22name\x22:\x22justify-items\x22},{\x22name\x22:\x22justify-self\x22},{\x22name\x22:\x22left\x22},{\x22name\x22:\x22letter-spacing\x22},{\x22name\x22:\x22line-break\x22},{\x22name\x22:\x22line-height\x22},{\x22name\x22:\x22list-style\x22},{\x22name\x22:\x22list-style-position\x22},{\x22name\x22:\x22list-style-type\x22},{\x22name\x22:\x22margin\x22},{\x22name\x22:\x22margin-bottom\x22},{\x22name\x22:\x22margin-left\x22},{\x22name\x22:\x22margin-right\x22},{\x22name\x22:\x22margin-top\x22},{\x22name\x22:\x22max-height\x22},{\x22name\x22:\x22max-width\x22},{\x22name\x22:\x22min-height\x22},{\x22name\x22:\x22min-width\x22},{\x22name\x22:\x22mix-blend-mode\x22},{\x22name\x22:\x22object-fit\x22},{\x22name\x22:\x22object-position\x22},{\x22name\x22:\x22offset-distance\x22},{\x22name\x22:\x22opacity\x22},{\x22name\x22:\x22order\x22},{\x22name\x22:\x22outline\x22},{\x22name\x22:\x22outline-color\x22},{\x22name\x22:\x22outline-offset\x22},{\x22name\x22:\x22outline-style\x22},{\x22name\x22:\x22outline-width\x22},{\x22name\x22:\x22overflow\x22},{\x22name\x22:\x22overflow-wrap\x22},{\x22name\x22:\x22overflow-x\x22},{\x22name\x22:\x22overflow-y\x22},{\x22name\x22:\x22padding\x22},{\x22name\x22:\x22padding-bottom\x22},{\x22name\x22:\x22padding-left\x22},{\x22name\x22:\x22padding-right\x22},{\x22name\x22:\x22padding-top\x22},{\x22name\x22:\x22pause\x22},{\x22name\x22:\x22pause-after\x22},{\x22name\x22:\x22pause-before\x22},{\x22name\x22:\x22perspective\x22},{\x22name\x22:\x22perspective-origin\x22},{\x22name\x22:\x22pitch\x22},{\x22name\x22:\x22pitch-range\x22},{\x22name\x22:\x22place-items\x22},{\x22name\x22:\x22position\x22},{\x22name\x22:\x22quotes\x22},{\x22name\x22:\x22resize\x22},{\x22name\x22:\x22richness\x22},{\x22name\x22:\x22right\x22},{\x22name\x22:\x22row-gap\x22},{\x22name\x22:\x22speak\x22},{\x22name\x22:\x22speak-header\x22},{\x22name\x22:\x22speak-numeral\x22},{\x22name\x22:\x22speak-punctuation\x22},{\x22name\x22:\x22speech-rate\x22},{\x22name\x22:\x22stress\x22},{\x22name\x22:\x22table-layout\x22},{\x22name\x22:\x22text-align\x22},{\x22name\x22:\x22text-align-last\x22},{\x22name\x22:\x22text-combine-upright\x22},{\x22name\x22:\x22text-decoration\x22},{\x22name\x22:\x22text-decoration-color\x22},{\x22name\x22:\x22text-decoration-line\x22},{\x22name\x22:\x22text-decoration-skip\x22},{\x22name\x22:\x22text-decoration-style\x22},{\x22name\x22:\x22text-emphasis\x22},{\x22name\x22:\x22text-emphasis-color\x22},{\x22name\x22:\x22text-emphasis-position\x22},{\x22name\x22:\x22text-emphasis-style\x22},{\x22name\x22:\x22text-indent\x22},{\x22name\x22:\x22text-justify\x22},{\x22name\x22:\x22text-orientation\x22},{\x22name\x22:\x22text-overflow\x22},{\x22name\x22:\x22text-shadow\x22},{\x22name\x22:\x22text-transform\x22},{\x22name\x22:\x22text-underline-position\x22},{\x22name\x22:\x22top\x22},{\x22name\x22:\x22transform\x22},{\x22name\x22:\x22transform-box\x22},{\x22name\x22:\x22transform-origin\x22},{\x22name\x22:\x22transform-style\x22},{\x22name\x22:\x22transition\x22,\x22valueRegex\x22:\x22^\x20*((initial|unset)|(((none|offset-distance|opacity|transform|visibility)(\x20*(|-|\x5c\x5c+)([0-9]+|[0-9]*\x5c\x5c.[0-9]+)(e(|-|\x5c\x5c+)?[0-9]+)?(s|ms)(\x20*(linear|(ease|ease-in|ease-out|ease-in-out|cubic-bezier\x5c\x5c(\x20*(|-|\x5c\x5c+)([0-9]+|[0-9]*\x5c\x5c.[0-9]+)(e(|-|\x5c\x5c+)?[0-9]+)?(,\x20*(|-|\x5c\x5c+)([0-9]+|[0-9]*\x5c\x5c.[0-9]+)(e(|-|\x5c\x5c+)?[0-9]+)?){3}\x20*\x5c\x5c))|(step-start|step-end|steps\x5c\x5c(\x20*(|-|\x5c\x5c+)[0-9]+(,\x20*(jump-start|jump-end|jump-none|jump-both|start|end))?\x20*\x5c\x5c)))(\x20*(|-|\x5c\x5c+)([0-9]+|[0-9]*\x5c\x5c.[0-9]+)(e(|-|\x5c\x5c+)?[0-9]+)?(s|ms))?)?)?)(,\x20*((none|offset-distance|opacity|transform|visibility)(\x20*(|-|\x5c\x5c+)([0-9]+|[0-9]*\x5c\x5c.[0-9]+)(e(|-|\x5c\x5c+)?[0-9]+)?(s|ms)(\x20*(linear|(ease|ease-in|ease-out|ease-in-out|cubic-bezier\x5c\x5c(\x20*(|-|\x5c\x5c+)([0-9]+|[0-9]*\x5c\x5c.[0-9]+)(e(|-|\x5c\x5c+)?[0-9]+)?(,\x20*(|-|\x5c\x5c+)([0-9]+|[0-9]*\x5c\x5c.[0-9]+)(e(|-|\x5c\x5c+)?[0-9]+)?){3}\x20*\x5c\x5c))|(step-start|step-end|steps\x5c\x5c(\x20*(|-|\x5c\x5c+)[0-9]+(,\x20*(jump-start|jump-end|jump-none|jump-both|start|end))?\x20*\x5c\x5c)))(\x20*(|-|\x5c\x5c+)([0-9]+|[0-9]*\x5c\x5c.[0-9]+)(e(|-|\x5c\x5c+)?[0-9]+)?(s|ms))?)?)?))*))\x20*$\x22},{\x22name\x22:\x22transition-delay\x22},{\x22name\x22:\x22transition-duration\x22},{\x22name\x22:\x22transition-property\x22,\x22valueRegex\x22:\x22^\x20*(initial|unset|(none|offset-distance|opacity|transform|visibility)(,\x20*(none|offset-distance|opacity|transform|visibility))*)\x20*$\x22},{\x22name\x22:\x22transition-timing-function\x22},{\x22name\x22:\x22unicode-bidi\x22},{\x22name\x22:\x22vertical-align\x22},{\x22name\x22:\x22visibility\x22,\x22value\x22:[\x22hidden\x22,\x22initial\x22,\x22visible\x22]},{\x22name\x22:\x22voice-family\x22},{\x22name\x22:\x22white-space\x22},{\x22name\x22:\x22width\x22},{\x22name\x22:\x22word-break\x22},{\x22name\x22:\x22word-spacing\x22},{\x22name\x22:\x22word-wrap\x22},{\x22name\x22:\x22writing-mode\x22},{\x22name\x22:\x22z-index\x22,\x22valueRegex\x22:\x22([-+]?0)|([-+]?100)|([-+]?[1-9][0-9]?)\x22}]}','34495ihBLoV','7864640fxdzLd','18916jWyROg','54aOFoWI'];a11_0x30e0=function(){return _0x3e3e65;};return a11_0x30e0();}(function(_0x30e151,_0x3a71b0){var _0x21b440=a11_0x1320,_0x501876=_0x30e151();while(!![]){try{var _0x8e4047=-parseInt(_0x21b440(0x9c))/0x1+parseInt(_0x21b440(0x97))/0x2+-parseInt(_0x21b440(0x96))/0x3*(-parseInt(_0x21b440(0x94))/0x4)+-parseInt(_0x21b440(0x92))/0x5*(-parseInt(_0x21b440(0x95))/0x6)+parseInt(_0x21b440(0x9b))/0x7+-parseInt(_0x21b440(0x93))/0x8+-parseInt(_0x21b440(0x9a))/0x9;if(_0x8e4047===_0x3a71b0)break;else _0x501876['push'](_0x501876['shift']());}catch(_0x2e9cee){_0x501876['push'](_0x501876['shift']());}}}(a11_0x30e0,0xa0266));function a11_0x1320(_0x3a129b,_0x562ede){var _0x30e06b=a11_0x30e0();return a11_0x1320=function(_0x132080,_0x592e37){_0x132080=_0x132080-0x91;var _0x4e7ba5=_0x30e06b[_0x132080];return _0x4e7ba5;},a11_0x1320(_0x3a129b,_0x562ede);}(globalThis['webpackChunk']=globalThis[a11_0x223daf(0x98)]||[])['push']([[0x1ad],{0x1d05:_0x519f1b=>{var _0x37b2b8=a11_0x223daf;_0x519f1b[_0x37b2b8(0x99)]=JSON[_0x37b2b8(0x9d)](_0x37b2b8(0x91));}}]);