OptionTree - Version 2.3.0

Version Description

  • Added the Tab option type.
  • Added Ace Editor to the CSS option type. Contributors via github @imangm and @valendesigns.
  • Added support for WordPress 3.8 color schemes.
  • Added support for RTL languages. Contributors via github @omid-khd and @valendesigns.
  • Added actions before and after the enqueue styles and scripts.
  • Added Date Picker option type. Contributors via github @jetonr and @valendesigns.
  • Added Date Time Picker option type. Contributors via github @jetonr and @valendesigns.
  • Added filter 'ot_list_item_title_label' to change the label for a List Item's required title field.
  • Added filter 'ot_list_item_title_desc' to change the description for a List Item's required title field.
  • Added filter 'ot_options_id' to change the 'option_tree' option ID to a unique value.
  • Added filter 'ot_settings_id' to change the 'option_tree_settings' option ID to a unique value.
  • Added filter 'ot_layouts_id' to change the 'option_tree_layouts' option ID to a unique value.
  • Added filter 'ot_header_logo_link' to change the logo link inside the header of OptionTree.
  • Added filter 'ot_header_version_text' to change the version text inside the header of OptionTree.
  • Added action 'ot_header_list' to add additional theme specific list items to the header of OptionTree.
  • Added filter 'ot_upload_text' to change the "Send to OptionTree" text.
  • Added the CSS Class field value to the parent .format-settings div in addition to the class being added to the element. Each class is now appended with -wrap.
  • Added support for Composer. Contributors via github @designst.
  • Added support for adding I18n text domains to the exported theme-options.php file.
  • Fixed a bug that kept the UI from displaying when using the ot_type_background_size_choices filter.
  • Fixed a bug that caused the Gallery option type to save a single space instead of null.
  • Fixed the return value of the Background, Measurement, and Typography option types. They now return null if no values are saved to the array.
  • Fixed a bug that resulted in a PHP warning if the choices array was set to an empty string.
  • Updated the documentation, including this readme.txt and a new demo OptionTree Theme to parallel OptionTree.
  • Added filter 'ot_type_radio_image_src' which allows the Radio Image option type source URI to be changed. Contributors via github @bitcommit.
Download this release

Release Info

Developer valendesigns
Plugin Icon wp plugin OptionTree
Version 2.3.0
Comparing to
See all releases

Code changes from version 2.2.3 to 2.3.0

assets/css/ot-admin-rtl.css ADDED
@@ -0,0 +1,570 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* --------------------------------------------------
2
+ :: Messages
3
+ ---------------------------------------------------*/
4
+ .wrap.settings-wrap div.error,
5
+ .wrap.settings-wrap div.updated {
6
+ margin: 9px 2px 0px 5px !important;
7
+ }
8
+
9
+ /* --------------------------------------------------
10
+ :: OptionTree Wrappers
11
+ ---------------------------------------------------*/
12
+ #option-tree-settings-api > .ui-tabs {
13
+ margin: 0px 2px 0 5px;
14
+ -webkit-box-shadow: inset -146px 0 0 #f1f1f1, inset -147px 0 0 #ccc, 0 1px 3px rgba(0,0,0,0.05);
15
+ -moz-box-shadow: inset -146px 0 0 #f1f1f1, inset -147px 0 0 #ccc, 0 1px 3px rgba(0,0,0,0.05);
16
+ box-shadow: inset -146px 0 0 #f1f1f1, inset -147px 0 0 #ccc, 0 1px 3px rgba(0,0,0,0.05);
17
+ }
18
+
19
+ /* --------------------------------------------------
20
+ :: Header
21
+ ---------------------------------------------------*/
22
+ #option-tree-header {
23
+ margin: 11px 2px 0 5px;
24
+ }
25
+ #option-tree-header li {
26
+ float: right;
27
+ }
28
+ #option-tree-header #option-tree-logo a {
29
+ border-right: 0;
30
+ border-left: 1px solid #333;
31
+ float: right;
32
+ padding: 3px 13px 3px 12px;
33
+ }
34
+ #option-tree-header li#option-tree-logo:hover {
35
+ -webkit-border-top-right-radius: 2px;
36
+ -moz-border-radius-topright: 2px;
37
+ border-top-right-radius: 2px;
38
+ }
39
+ #option-tree-header #option-tree-version span,
40
+ #option-tree-header #theme-version span {
41
+ border-left: 0;
42
+ border-right: 1px solid #555;
43
+ float: left;
44
+ }
45
+ #option-tree-header #theme-version:before {
46
+ border-right: 0;
47
+ border-left: 1px solid #333;
48
+ float: right;
49
+ }
50
+ /* light */
51
+ .admin-color-light #option-tree-header #option-tree-logo a,
52
+ .admin-color-light #option-tree-header #theme-version:before {
53
+ border-left-color: #3c3c3c;
54
+ }
55
+ .admin-color-light #option-tree-header li#option-tree-logo:hover a {
56
+ border-left-color: #3c3c3c;
57
+ }
58
+ .admin-color-light #option-tree-header #option-tree-version span,
59
+ .admin-color-light #option-tree-header #theme-version span {
60
+ border-right-color: #999;
61
+ }
62
+ /* blue */
63
+ .admin-color-blue #option-tree-header #option-tree-logo a,
64
+ .admin-color-blue #option-tree-header #theme-version:before {
65
+ border-left-color: #002b39;
66
+ }
67
+ .admin-color-blue #option-tree-header li#option-tree-logo:hover a {
68
+ border-left-color: #002b39;
69
+ }
70
+ .admin-color-blue #option-tree-header #option-tree-version span,
71
+ .admin-color-blue #option-tree-header #theme-version span {
72
+ border-right-color: #5dc2e6;
73
+ }
74
+ /* coffee */
75
+ .admin-color-coffee #option-tree-header #option-tree-logo a,
76
+ .admin-color-coffee #option-tree-header #theme-version:before {
77
+ border-left-color: #0f0e0d;
78
+ }
79
+ .admin-color-coffee #option-tree-header li#option-tree-logo:hover a {
80
+ border-left-color: #0f0e0d;
81
+ }
82
+ .admin-color-coffee #option-tree-header #option-tree-version span,
83
+ .admin-color-coffee #option-tree-header #theme-version span {
84
+ border-right-color: #675f58;
85
+ }
86
+ /* ectoplasm */
87
+ .admin-color-ectoplasm #option-tree-header #option-tree-logo a,
88
+ .admin-color-ectoplasm #option-tree-header #theme-version:before {
89
+ border-left-color: #181220;
90
+ }
91
+ .admin-color-ectoplasm #option-tree-header li#option-tree-logo:hover a {
92
+ border-left-color: #181220;
93
+ }
94
+ .admin-color-ectoplasm #option-tree-header #option-tree-version span,
95
+ .admin-color-ectoplasm #option-tree-header #theme-version span {
96
+ border-right-color: #644d85;
97
+ }
98
+ /* midnight */
99
+ .admin-color-midnight #option-tree-header #option-tree-logo a,
100
+ .admin-color-midnight #option-tree-header #theme-version:before {
101
+ border-left-color: #090a0b;
102
+ }
103
+ .admin-color-midnight #option-tree-header li#option-tree-logo:hover a {
104
+ border-left-color: #090a0b;
105
+ }
106
+ .admin-color-midnight #option-tree-header #option-tree-version span,
107
+ .admin-color-midnight #option-tree-header #theme-version span {
108
+ border-right-color: #4c5359;
109
+ }
110
+ /* ocean */
111
+ .admin-color-ocean #option-tree-header #option-tree-logo a,
112
+ .admin-color-ocean #option-tree-header #theme-version:before {
113
+ border-left-color: #39464a;
114
+ }
115
+ .admin-color-ocean #option-tree-header li#option-tree-logo:hover a {
116
+ border-left-color: #39464a;
117
+ }
118
+ .admin-color-ocean #option-tree-header #option-tree-version span,
119
+ .admin-color-ocean #option-tree-header #theme-version span {
120
+ border-right-color: #87a6af;
121
+ }
122
+ /* sunrise */
123
+ .admin-color-sunrise #option-tree-header #option-tree-logo a,
124
+ .admin-color-sunrise #option-tree-header #theme-version:before {
125
+ border-left-color: #8a322a;
126
+ }
127
+ .admin-color-sunrise #option-tree-header li#option-tree-logo:hover a {
128
+ border-left-color: #8a322a;
129
+ }
130
+ .admin-color-sunrise #option-tree-header #option-tree-version span,
131
+ .admin-color-sunrise #option-tree-header #theme-version span {
132
+ border-right-color: #e75546;
133
+ }
134
+
135
+ /* --------------------------------------------------
136
+ :: Sub Header
137
+ ---------------------------------------------------*/
138
+ #option-tree-sub-header {
139
+ margin: 0 2px 0 5px;
140
+ }
141
+
142
+ /* --------------------------------------------------
143
+ :: Tabs
144
+ ---------------------------------------------------*/
145
+ .wrap.settings-wrap .ui-tabs-nav {
146
+ float: right;
147
+ margin: 0 -4px 0 0;
148
+ }
149
+ .wrap.settings-wrap .ui-tabs-nav li {
150
+ border-left-width: 0;
151
+ border-right-width: 1px;
152
+ -webkit-border-radius: 0 2px 2px 0;
153
+ -moz-border-radius: 0 2px 2px 0;
154
+ border-radius: 0 2px 2px 0;
155
+ }
156
+ .wrap.settings-wrap .ui-tabs-nav li a {
157
+ padding: 5px 12px 5px 5px;
158
+ }
159
+
160
+ /* --------------------------------------------------
161
+ :: Format Setting
162
+ ---------------------------------------------------*/
163
+ .format-setting .format-setting-inner {
164
+ float: right;
165
+ }
166
+ .format-setting .description {
167
+ float: left;
168
+ }
169
+ #post .format-setting-inner p {
170
+ float: right;
171
+ }
172
+ .docs-ul li {
173
+ margin-left: 0;
174
+ margin-right: 20px;
175
+ }
176
+ #contextual-help-setting {
177
+ float: right;
178
+ }
179
+ #contextual-help-label {
180
+ float: right;
181
+ }
182
+ #option_tree_settings_help {
183
+ float: right;
184
+ }
185
+ #option-tree-settings-api blockquote {
186
+ padding-left: 0;
187
+ padding-right: 15px;
188
+ }
189
+ #option-tree-settings-api blockquote:before {
190
+ left: auto;
191
+ right: -10px;
192
+ top: 10px;
193
+ }
194
+
195
+ /* --------------------------------------------------
196
+ :: Input & Upload
197
+ ---------------------------------------------------*/
198
+ input.option-tree-ui-upload-input,
199
+ input.option-tree-ui-input {
200
+ -moz-box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
201
+ -webkit-box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
202
+ box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
203
+ }
204
+ .option-tree-sortable input.option-tree-ui-upload-input,
205
+ .option-tree-sortable input.option-tree-ui-input {
206
+ width: 99.9%; /* fixes a strange bug with input with */
207
+ }
208
+
209
+ /* --------------------------------------------------
210
+ :: Upload
211
+ ---------------------------------------------------*/
212
+ div.option-tree-ui-media-wrap {
213
+ margin: 5px 0 0 55px;
214
+ }
215
+ .option-tree-ui-media-wrap img {
216
+ float: right;
217
+ }
218
+ .option-tree-ui-upload-parent {
219
+ margin-right: 0;
220
+ margin-left: 45px;
221
+ }
222
+ .format-setting .ot_upload_media {
223
+ right: auto;
224
+ left: -45px;
225
+ }
226
+ .option-tree-ui-media-wrap a.option-tree-ui-remove-media {
227
+ right: auto;
228
+ left: -55px;
229
+ }
230
+
231
+ /* --------------------------------------------------
232
+ :: Setting Item with Drag & Drop
233
+ ---------------------------------------------------*/
234
+ .option-tree-setting .open {
235
+ padding: 10px 10px 10px 100px;
236
+ }
237
+ .option-tree-setting .open:hover:before {
238
+ left: auto;
239
+ right: 4px;
240
+ }
241
+ .button-section {
242
+ right: auto;
243
+ left: 0px;
244
+ }
245
+
246
+ /* --------------------------------------------------
247
+ :: Layouts
248
+ ---------------------------------------------------*/
249
+ #option-tree-options-layouts-form {
250
+ left: auto;
251
+ right: 13px;
252
+ }
253
+ .option-tree-save-layout {
254
+ float: right;
255
+ }
256
+ .option-tree-save-layout.active-layout {
257
+ border-left: 0;
258
+ border-right: 1px solid #fff;
259
+ padding-left: 0;
260
+ padding-right: 9px;
261
+ }
262
+ .option-tree-save-layout .widefat {
263
+ float: right;
264
+ }
265
+ .option-tree-save-layout button.blue {
266
+ margin: 0 10px 0 0;
267
+ }
268
+ .option-tree-active-layout {
269
+ border-right: 0;
270
+ border-left: 1px solid #ccc;
271
+ float: right;
272
+ padding: 10px 0 10px 10px;
273
+ }
274
+ .button.save-layout {
275
+ margin: 0 10px 0 0 !important;
276
+ }
277
+
278
+ /* --------------------------------------------------
279
+ :: Select
280
+ ---------------------------------------------------*/
281
+ .select-wrapper {
282
+ background: #fff url(../images/ot-select-rtl.png) no-repeat left center;
283
+ float: right;
284
+ margin: 0 0 5px 5px;
285
+ -moz-box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
286
+ -webkit-box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
287
+ box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
288
+ }
289
+ .select-wrapper:hover {
290
+ background-image: url(../images/ot-select-hover-rtl.png);
291
+ }
292
+ .select-wrapper span {
293
+ padding-left: 0;
294
+ padding-right: 7px;
295
+ }
296
+ .type-measurement .select-wrapper {
297
+ margin-left: 0;
298
+ right: auto;
299
+ left: 0px;
300
+ }
301
+ /* FireFox */
302
+ @-moz-document url-prefix() {
303
+ #option-tree-options-layouts-form .select-wrapper {
304
+ left: auto;
305
+ right: 250px;
306
+ };
307
+ }
308
+
309
+ /* --------------------------------------------------
310
+ :: Measurement
311
+ ---------------------------------------------------*/
312
+ .option-tree-ui-measurement-input-wrap {
313
+ margin-right: 0;
314
+ margin-left: 80px;
315
+ }
316
+
317
+ /* --------------------------------------------------
318
+ :: Checkbox & Radio
319
+ ---------------------------------------------------*/
320
+ .format-setting.type-checkbox input,
321
+ .format-setting.type-radio input {
322
+ float: right;
323
+ margin: 2px 1px 0 5px;
324
+ }
325
+ .format-setting.type-checkbox label,
326
+ .format-setting.type-radio label {
327
+ float: right;
328
+ }
329
+ #option-tree-settings-api .format-setting.type-checkbox p,
330
+ #option-tree-settings-api .format-setting.type-radio p {
331
+ float: right;
332
+ }
333
+
334
+ /* --------------------------------------------------
335
+ :: Radio Images
336
+ ---------------------------------------------------*/
337
+ .type-radio-image .option-tree-ui-radio-images {
338
+ float: right;
339
+ margin: 0 0px 10px 10px;
340
+ }
341
+
342
+ /* --------------------------------------------------
343
+ :: Numeric Slider
344
+ ---------------------------------------------------*/
345
+ .ot-numeric-slider-wrap {
346
+ margin: 0 0 0 96px;
347
+ }
348
+ .ot-numeric-slider-wrap .ot-numeric-slider-helper-input {
349
+ right: auto;
350
+ left: 5px;
351
+ }
352
+ .ot-numeric-slider.ui-slider {
353
+ -webkit-box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
354
+ -moz-box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
355
+ box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
356
+ }
357
+ .ot-numeric-slider.ui-slider .ui-slider-handle {
358
+ background-image: -webkit-gradient(linear,rightt top,right bottom,from(#2a95c5),to(#21759b));
359
+ }
360
+ .ot-numeric-slider.ui-slider .ui-slider-handle:hover {
361
+ background-image: -webkit-gradient(linear,right top,right bottom,from(#2e9fd2),to(#21759b));
362
+ }
363
+
364
+ /* --------------------------------------------------
365
+ :: Colorpicker
366
+ ---------------------------------------------------*/
367
+ .option-tree-ui-colorpicker-input-wrap {
368
+ float: right;
369
+ }
370
+ .option-tree-ui-colorpicker-input-wrap .wp-color-result {
371
+ margin: 0px 0px 5px 5px;
372
+ }
373
+ .option-tree-ui-colorpicker-input-wrap .wp-picker-container .iris-picker {
374
+ margin: 0px 0px 5px 5px;
375
+ }
376
+
377
+ /* --------------------------------------------------
378
+ :: OptionTree UI Buttons
379
+ ---------------------------------------------------*/
380
+ .option-tree-ui-button {
381
+ float: right !important;
382
+ }
383
+ .option-tree-ui-button.right {
384
+ float: left !important;
385
+ }
386
+ .option-tree-ui-button.hug-left {
387
+ margin-right: 0px;
388
+ }
389
+ .option-tree-ui-button.hug-right {
390
+ margin-left: 0px;
391
+ }
392
+ .option-tree-ui-button.left-item {
393
+ float: right !important;
394
+ margin: 5px 5px 5px 0;
395
+ -webkit-border-radius: 0px 2px 2px 0px;
396
+ -moz-border-radius: 0px 2px 2px 0px;
397
+ border-radius: 0px 2px 2px 0px;
398
+ }
399
+ .option-tree-ui-button.center-item {
400
+ margin: 5px -1px 5px 0;
401
+ }
402
+ .option-tree-ui-button.right-item {
403
+ float: left !important;
404
+ margin: 5px -1px 5px 5px;
405
+ -webkit-border-radius: 2px 0px 0px 2px;
406
+ -moz-border-radius: 2px 0px 0px 2px;
407
+ border-radius: 2px 0px 0px 2px;
408
+ }
409
+ .option-tree-ui-buttons {
410
+ margin: 11px 2px 0 5px;
411
+ }
412
+ button.reset-settings {
413
+ left: auto;
414
+ right: 8px;
415
+ }
416
+
417
+ /* --------------------------------------------------
418
+ :: OptionTree UI Button Icons
419
+ ---------------------------------------------------*/
420
+ .option-tree-ui-button .icon {
421
+ float: right;
422
+ text-indent: 0;
423
+ }
424
+ .option-tree-ui-button .icon.left-label {
425
+ margin-left: 10px;
426
+ float: left;
427
+ }
428
+
429
+ /* --------------------------------------------------
430
+ :: Gallery
431
+ ---------------------------------------------------*/
432
+ ul.ot-gallery-list {
433
+ float: right;
434
+ }
435
+ ul.ot-gallery-list li {
436
+ float: right;
437
+ margin: 0px 0 10px 10px;
438
+ }
439
+ .ot-gallery-buttons {
440
+ float: right;
441
+ }
442
+
443
+ /* --------------------------------------------------
444
+ :: On/Off Switch
445
+ ---------------------------------------------------*/
446
+ @media only screen {
447
+ .on-off-switch {
448
+ -webkit-box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
449
+ -moz-box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
450
+ box-shadow: inset -1px 1px 1px rgba(0, 0, 0, 0.05);
451
+ }
452
+ .on-off-switch label {
453
+ float: right;
454
+ }
455
+ .on-off-switch .slide-button {
456
+ left: auto;
457
+ right: -1px;
458
+ }
459
+ .on-off-switch input:last-of-type:checked ~ .slide-button {
460
+ left: auto;
461
+ right: 50px;
462
+ }
463
+ }
464
+
465
+ /* --------------------------------------------------
466
+ :: Date Picker
467
+ ---------------------------------------------------*/
468
+ .ui-datepicker {
469
+ direction: rtl;
470
+ }
471
+ .ui-datepicker .ui-widget-header {
472
+ left: auto;
473
+ right: -1px;
474
+ }
475
+ .ui-datepicker-prev:before {
476
+ border-right: 0px;
477
+ border-left: 1px solid #555;
478
+ content: "\e774";
479
+ float: left;
480
+ width: 31px;
481
+ height: 30px;
482
+ }
483
+ .ui-datepicker-prev {
484
+ border-right: 0px;
485
+ border-left: 1px solid #333;
486
+ float: right;
487
+ width: 31px;
488
+ }
489
+ .ui-datepicker-next:before {
490
+ border-left: 0px;
491
+ border-right: 1px solid #333;
492
+ content: "\e775";
493
+ float: right;
494
+ width: 30px;
495
+ height: 30px;
496
+ }
497
+ .ui-datepicker-next {
498
+ border-left: 0px;
499
+ border-right: 1px solid #555;
500
+ float: left;
501
+ width: 30px;
502
+ }
503
+ .ui-datepicker thead th:last-child {
504
+ border-left: 1px solid #ccc;
505
+ }
506
+ .ui-datepicker tbody td {
507
+ border-left: 1px solid #ccc;
508
+ }
509
+ .ui-datepicker tbody td:first-child {
510
+ border-left: 0px;
511
+ }
512
+ .ui-datepicker .ui-datepicker-buttonpane button {
513
+ float: left;
514
+ }
515
+ .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
516
+ float: right;
517
+ }
518
+ @-moz-document url-prefix() {
519
+ .ui-datepicker-calendar {
520
+ position: relative;
521
+ right: -1px;
522
+ }
523
+ .ui-datepicker-calendar thead {
524
+ border-right: 1px solid #ccc;
525
+ }
526
+ }
527
+
528
+ /* --------------------------------------------------
529
+ :: Time Picker
530
+ ---------------------------------------------------*/
531
+ .ui-timepicker-div {
532
+ direction: rtl;
533
+ }
534
+ .ui-timepicker-div dl {
535
+ text-align: right;
536
+ padding: 0 5px 0 0;
537
+ }
538
+ .ui-timepicker-div dl dt {
539
+ float: right;
540
+ clear: right;
541
+ }
542
+ .ui-timepicker-div dl dd {
543
+ margin: 0 45% 10px 10px;
544
+ }
545
+
546
+ /* --------------------------------------------------
547
+ :: Meta Box Tabs
548
+ ---------------------------------------------------*/
549
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav {
550
+ float: right;
551
+ margin: 0 0 0 -1px;
552
+ }
553
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li {
554
+ border-width: 1px 1px 1px 0px;
555
+ -webkit-border-radius: 0 0 2px 2px;
556
+ -moz-border-radius: 0 0 2px 2px;
557
+ border-radius: 0 0 2px 2px;
558
+ }
559
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li a {
560
+ padding: 5px 12px 5px 5px;
561
+ }
562
+
563
+ /* --------------------------------------------------
564
+ :: Theme Option & Side Metabox Tabs
565
+ ---------------------------------------------------*/
566
+ .ot-theme-option-tabs.ui-tabs .ot-theme-option-nav.ui-tabs-nav li.ui-state-default,
567
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li.ui-state-default {
568
+ float: right;
569
+ margin: 0 3px 0 0;
570
+ }
assets/css/ot-admin.css CHANGED
@@ -1,6 +1,17 @@
1
  /* --------------------------------------------------
2
  :: OptionTree Font
3
  ---------------------------------------------------*/
 
 
 
 
 
 
 
 
 
 
 
4
  [class^="ot-icon-"],
5
  [class*=" ot-icon-"] {
6
  font-family: "option-tree-font";
@@ -13,1523 +24,3632 @@
13
  -webkit-font-smoothing: antialiased;
14
  -moz-osx-font-smoothing: grayscale;
15
  }
16
- .ot-icon-long-arrow-down:before {
17
- content: "\e770";
18
  }
19
- .ot-icon-long-arrow-up:before {
20
- content: "\e771";
21
  }
22
- .ot-icon-long-arrow-left:before {
23
- content: "\e772";
24
  }
25
- .ot-icon-long-arrow-right:before {
26
- content: "\e773";
27
  }
28
- .ot-icon-angle-right:before {
29
- content: "\e774";
30
  }
31
- .ot-icon-angle-left:before {
32
- content: "\e775";
33
  }
34
- .ot-icon-angle-up:before {
35
- content: "\e776";
36
  }
37
- .ot-icon-angle-down:before {
38
- content: "\e777";
39
  }
40
- .ot-icon-resize-vertical:before {
41
- content: "\e778";
42
  }
43
- .ot-icon-resize-horizontal:before {
44
- content: "\e779";
45
  }
46
- .ot-icon-fullscreen:before {
47
- content: "\e780";
48
  }
49
- .ot-icon-plus-sign:before {
50
- content: "\e781";
51
  }
52
- .ot-icon-minus-sign:before {
53
- content: "\e782";
54
  }
55
- .ot-icon-ok-sign:before {
56
- content: "\e783";
57
  }
58
- .ot-icon-circle:before {
59
- content: "\e784";
60
  }
61
- .ot-icon-option-tree:before {
62
- content: "\e785";
63
  }
64
-
65
- /* --------------------------------------------------
66
- :: Screen Meta & Menu Icon
67
- ---------------------------------------------------*/
68
- .appearance_page_ot-theme-options #screen-meta {
69
- margin-right: 20px;
70
- margin-left: 2px;
71
- min-width: 533px;
72
  }
73
-
74
- /* --------------------------------------------------
75
- :: Messages
76
- ---------------------------------------------------*/
77
- .wrap.settings-wrap div.error,
78
- .wrap.settings-wrap div.updated {
79
- margin: 9px 5px 0px 2px !important;
80
  }
81
-
82
- /* --------------------------------------------------
83
- :: OptionTree Wrappers
84
- ---------------------------------------------------*/
85
- #option-tree-settings-api .metabox-holder {
86
- overflow: hidden;
87
  }
88
- #option-tree-settings-api .postbox {
89
- background: #fff;
90
- border: none;
91
- margin: 0 20px;
92
  }
93
- #option-tree-settings-api .inside {
94
- margin: 0px !important;
95
- padding: 0px !important;
96
  }
97
- #option-tree-settings-api .ui-tabs {
98
- background: #fff url(../images/ot-menu-bg.png) repeat-y 0 0;
99
- border: 1px solid #ccc;
100
- border-top: none;
101
- margin: 0px 5px 0 2px;
102
- min-width: 533px;
103
- padding-bottom: 5px;
104
- position: relative;
105
- -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
106
- box-shadow: 0 1px 3px rgba(0,0,0,0.05);
107
- -webkit-border-radius: 0 0 4px 4px;
108
- -khtml-border-radius: 0 0 4px 4px;
109
- -moz-border-radius: 0 0 4px 4px;
110
- -o-border-radius: 0 0 4px 4px;
111
- border-radius: 0 0 4px 4px;
112
  }
113
-
114
- /* --------------------------------------------------
115
- :: Header
116
- ---------------------------------------------------*/
117
- #option-tree-header-wrap {
118
- position: relative;
119
  }
120
- #option-tree-header {
121
- background: #464646;
122
- color: #ccc;
123
- display: block;
124
- margin: 11px 5px 0 2px;
125
- min-width: 535px;
126
- overflow: hidden;
127
- position: relative;
128
- -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
129
- box-shadow: 0 1px 3px rgba(0,0,0,0.05);
130
- -webkit-border-radius: 4px 4px 0 0;
131
- -khtml-border-radius: 4px 4px 0 0;
132
- -moz-border-radius: 4px 4px 0 0;
133
- -o-border-radius: 4px 4px 0 0;
134
- border-radius: 4px 4px 0 0;
135
  }
136
- #option-tree-header li {
137
- display: block;
138
- float: left;
139
- margin: 0px;
140
- padding: 0px;
141
  }
142
- #option-tree-header li a {
143
- color: #ccc;
144
- text-decoration: none;
145
  }
146
- #option-tree-header li a:hover {
147
- color: #fafafa;
148
  }
149
- #option-tree-header #option-tree-logo a {
150
- border-right: 1px solid #333;
151
- float: left;
152
- height: 24px;
153
- padding: 3px 12px 3px 13px;
154
- width: 20px;
155
  }
156
- #option-tree-header li#option-tree-logo:hover {
157
- color: #fafafa;
158
- background-color: #3a3a3a;
159
- -webkit-border-top-left-radius: 5px;
160
- -moz-border-radius-topleft: 5px;
161
- border-top-left-radius: 5px;
162
  }
163
- #option-tree-header #option-tree-version {
164
-
165
  }
166
- #option-tree-header #option-tree-version span {
167
- border-left: 1px solid #555;
168
- display: block;
169
- float: left;
170
- height: 24px;
171
- line-height: 24px;
172
- padding: 3px 12px 3px 12px;
173
  }
174
-
175
- /* --------------------------------------------------
176
- :: Sub Header
177
- ---------------------------------------------------*/
178
- #option-tree-sub-header {
179
- background: #fafafa url(../images/ot-sub-header-bg.png) repeat-x 0 0;
180
- border: 1px solid #ccc;
181
- border-top: none;
182
- display: block;
183
- margin: 0 5px 0 2px;
184
- min-width: 523px;
185
- overflow: hidden;
186
- padding: 5px;
187
- position: relative;
188
- -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
189
- box-shadow:0 1px 3px rgba(0,0,0,0.05);
190
  }
191
-
192
- /* --------------------------------------------------
193
- :: Tabs
194
- ---------------------------------------------------*/
195
- .wrap.settings-wrap .ui-tabs-nav {
196
- background: url(../images/ot-menu-top-bg.png) no-repeat right top;
197
- float: left;
198
- list-style: none;
199
- margin: 0 0 0 -4px;
200
- padding: 1em 0;
201
- width: 151px;
202
  }
203
- .wrap.settings-wrap .ui-tabs-nav li {
204
- border: 1px solid transparent;
205
- border-right-width: 0px;
206
- display: block; margin: 0;
207
- -webkit-border-radius: 3px 0 0 3px;
208
- -khtml-border-radius: 3px 0 0 3px;
209
- -moz-border-radius: 3px 0 0 3px;
210
- -o-border-radius: 3px 0 0 3px;
211
- border-radius: 3px 0 0 3px;
212
  }
213
- .wrap.settings-wrap .ui-tabs-nav li.ui-state-active {
214
- background: #fff;
215
- border-color: #ccc;
216
- color: #000;
217
  }
218
- .wrap.settings-wrap .ui-tabs-nav li a {
219
- color: #21759b;
220
- display: block;
221
- line-height: 18px;
222
- padding: 5px 5px 5px 12px;
223
- text-decoration: none;
224
  }
225
- .wrap.settings-wrap .ui-tabs-nav li a:hover,
226
- .wrap.settings-wrap .ui-tabs-nav li.ui-state-active a {
227
- color: #000;
228
- outline: none;
229
  }
230
- .wrap.settings-wrap .ui-tabs-panel {
231
- clear: both;
232
  }
233
- /* --------------------------------------------------
234
- :: Format Settings
235
- ---------------------------------------------------*/
236
- .format-settings {
237
- position: relative;
238
- width: 100%;
239
  }
240
- .format-setting-wrap {
241
- padding: 10px 0 20px 0;
242
  }
243
-
244
- /* --------------------------------------------------
245
- :: Format Setting Label
246
- ---------------------------------------------------*/
247
- .format-setting-label {
248
- border-bottom: 1px dashed #ddd;
249
- margin: 0 0 14px 0;
250
- padding: 5px 0px 1px 0px;
251
- width: 100%;
252
  }
253
- #option-tree-settings-api .description h3,
254
- #option-tree-settings-api .format-setting-label .label,
255
- .metabox-holder .format-setting-label .label {
256
- background: none;
257
- border: none;
258
- color: #333;
259
- cursor: text;
260
- display: block;
261
- font-family: sans-serif !important;
262
- font-size: 1.2em !important;
263
- font-weight: bold !important;
264
- letter-spacing: 0;
265
- padding: 0 0 9px 0 !important;
266
- -webkit-user-select: text;
267
- text-shadow: none;
268
  }
269
-
270
- /* --------------------------------------------------
271
- :: Format Setting
272
- ---------------------------------------------------*/
273
- .format-setting {
274
- overflow: hidden;
275
- position: relative;
276
- width: 100%;
277
  }
278
- .format-setting .format-setting-inner {
279
- float: left;
280
- position: relative;
281
- width: 63%;
282
  }
283
- .format-setting.no-desc .format-setting-inner,
284
- .format-setting.wide-desc .format-setting-inner,
285
- .option-tree-list-item .format-setting-inner {
286
- width: 100%;
287
  }
288
- .format-setting .description {
289
- float: right;
290
- padding: 5px 0;
291
- width: 35%;
292
  }
293
- .format-setting.no-desc .description,
294
- .format-setting.wide-desc .description,
295
- .option-tree-list-item .description {
296
- float: none;
297
- width: 100%;
298
  }
299
- .list-item-description {
300
- padding-top: 10px;
301
  }
302
- #option-tree-settings-api h4 {
303
- color: #333;
304
- font-size: 1.12em;
305
- font-weight: bold;
306
- margin: 1em 0 0.5em 0;
307
- padding: 0;
308
  }
309
- #option-tree-settings-api h5 {
310
- color: #444;
311
- font-size: 1em;
312
- font-weight: bold;
313
- margin: 1em 0 0.5em 0;
314
- padding: 0;
315
  }
316
- #option-tree-settings-api p {
317
- margin: 0 0 1.5em 0 !important;
318
  }
319
- #post .format-setting-inner p {
320
- float: left;
321
- width: 100%;
322
- margin: 0 0 1.05em 0 !important;
323
  }
324
- .aside {
325
- border-bottom: 1px solid #eee;
326
- padding-bottom: 15px;
327
- margin-bottom: 15px;
328
  }
329
- .deprecated {
330
- border-bottom: 1px solid #eee;
331
- color: #b94029;
332
- padding-bottom: 15px;
333
- margin-bottom: 15px;
334
  }
335
- .warning {
336
- color: #b94029;
337
  }
338
- .docs-ul {
339
- line-height: 1.3em;
340
- margin: 0;
341
- padding: 0 0 1em 0;
342
  }
343
- .docs-ul li {
344
- list-style-type: square;
345
- margin-left: 20px;
346
  }
347
- #contextual-help-setting {
348
- float: left;
349
- padding: 10px 0 5px 0;
350
- width: 100%;
351
  }
352
- #contextual-help-label {
353
- float: left;
354
- padding-top: 20px;
355
- width: 100%;
356
  }
357
- #option_tree_settings_help {
358
- float: left;
359
- width: 100%;
360
  }
361
- #option-tree-settings-api blockquote {
362
- font-style: italic;
363
- padding-left: 15px;
364
- position: relative;
365
  }
366
- #option-tree-settings-api blockquote:before {
367
- color: #ccc;
368
- content: "\201C";
369
- display: block;
370
- font-size: 400%;
371
- font-style: normal;
372
- left: -10px;
373
- position: absolute;
374
- top: 10px;
375
  }
376
- @media only screen and (max-width: 900px) {
377
- .format-setting .description,
378
- .format-setting .format-setting-inner {
379
- width: 100%;
380
- }
381
- .format-setting .description {
382
- padding-top: 0px;
383
- };
384
  }
385
- .ot-background-group {
386
- overflow: hidden;
387
- width: auto;
388
  }
389
- .ot-background-size-input {
390
- max-width: 110px;
391
  }
392
-
393
- /* --------------------------------------------------
394
- :: Code formatting
395
- ---------------------------------------------------*/
396
- #option-tree-settings-api code {
397
- background-color: #f1f1f1;
398
- color: #333;
399
- font-size: 12px;
400
  }
401
- #option-tree-settings-api pre {
402
- font-size: 13px;
403
- padding: 0;
404
- margin: 1.5em 0;
405
- line-height: 18px;
406
- overflow: auto;
407
- overflow-Y: hidden;
408
- padding-top: 18px;
409
- background: #f1f1f1;
410
- border-bottom: 1px solid #f1f1f1;
411
- margin-bottom: 20px;
412
- color: #000;
413
- white-space: pre-wrap;
414
- word-wrap: break-word;
415
  }
416
- #option-tree-settings-api pre code {
417
- padding: 0 18px 18px 18px;
418
- display: block;
419
- background: url(../images/ot-pre-bg.gif) repeat left top;
420
  }
421
-
422
- /* --------------------------------------------------
423
- :: Input & Upload
424
- ---------------------------------------------------*/
425
- input.option-tree-ui-upload-input,
426
- input.option-tree-ui-input {
427
- background: #fff;
428
- border: 1px solid #ccc !important;
429
- line-height: 17px;
430
- font-size: 12px;
431
- margin-bottom: 5px;
432
- padding: 7px 6px;
433
- position: relative;
434
- width: 100%;
435
- border-radius: 2px;
436
- -webkit-border-radius: 2px;
437
- -moz-border-radius: 2px;
438
- -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
439
- -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
440
- box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
441
  }
442
- input:focus.option-tree-ui-upload-input,
443
- input:focus.option-tree-ui-input {
444
- border-color: #bbb !important;
445
  }
446
-
447
- @media screen and (-webkit-min-device-pixel-ratio:0) {
448
-
449
- .option-tree-ui-input,
450
- .option-tree-ui-upload-input {
451
- padding: 5px 6px !important;
452
- };
453
  }
454
-
455
- /* --------------------------------------------------
456
- :: Upload
457
- ---------------------------------------------------*/
458
- div.option-tree-ui-media-wrap {
459
- margin: 5px 63px 0 0;
460
- min-height: 35px;
461
- position: relative;
462
  }
463
- .option-tree-ui-media-wrap img {
464
- background: #fafafa;
465
- border: 1px solid #ccc;
466
- padding: 4px;
467
- border-radius: 2px;
468
- -webkit-border-radius: 2px;
469
- -moz-border-radius: 2px;
470
- display: block;
471
- float: left;
472
- max-width: 100%;
473
- height: auto;
474
- -ms-interpolation-mode: bicubic;
475
  }
476
- .option-tree-ui-upload-parent {
477
- width: auto !important;
478
- margin-right: 53px;
479
- padding: 0px;
480
- position: relative;
481
  }
482
- .format-setting .ot_upload_media {
483
- top: 0px;
484
- margin: 0px !important;
485
- position: absolute;
486
- right: -53px;
487
  }
488
- .option-tree-ui-media-wrap a.option-tree-ui-remove-media {
489
- float: none !important;
490
- margin: 0px !important;
491
- position: absolute !important;
492
- right: -63px;
493
- top: 1px;
494
  }
495
-
496
- /* --------------------------------------------------
497
- :: Textarea
498
- ---------------------------------------------------*/
499
- .fill-area .description,
500
- .fill-area .format-setting-inner {
501
- width: 100% !important;
502
  }
503
-
504
- .wp-editor-area {
505
- display: block;
506
  }
507
- .textarea,
508
- .ot-metabox-wrapper textarea {
509
- width: 99.9%;
510
- border: 1px solid #ccc;
511
- font-family: Consolas, Monaco, monospace;
512
- line-height: 150%;
513
- outline: 0;
514
- padding: 10px;
515
- resize: vertical;
516
  }
517
- #contextual-help-setting .textarea {
518
- width: 99.75%;
519
  }
520
- .ot-metabox-wrapper .wp-editor-container {
521
- border: none;
522
  }
523
- .ot-metabox-wrapper textarea:focus {
524
- border-color: #bbb !important;
525
  }
526
-
527
- @media only screen and (max-width: 1105px) {
528
- .type-textarea .description, .type-textarea .format-setting-inner {
529
- width: 100%;
530
- };
531
  }
532
-
533
- /* --------------------------------------------------
534
- :: Setting Item with Drag & Drop
535
- ---------------------------------------------------*/
536
- .option-tree-setting-wrap { margin-top: 0px; }
537
- .option-tree-setting-wrap li { margin: 4px 0px; }
538
- .option-tree-setting {
539
- border: 1px solid #ccc;
540
- overflow: hidden;
541
- position: relative;
542
- -webkit-border-radius: 4px;
543
- -khtml-border-radius: 4px;
544
- -moz-border-radius: 4px;
545
- -o-border-radius: 4px;
546
- border-radius: 4px;
547
  }
548
- .option-tree-setting a {
549
- text-decoration: none;
550
  }
551
- .option-tree-setting .open {
552
- background: #fafafa;
553
- cursor: move;
554
- line-height: 21px;
555
- height: 21px;
556
- padding: 10px 100px 10px 10px;
557
- display: block;
558
  }
559
- .ui-state-disabled .option-tree-setting .open {
560
- cursor: default;
561
  }
562
- .option-tree-setting .open:hover {
563
- background: #fafafa url(../images/ot-dots.png) no-repeat 4px 15px;
564
  }
565
- .button-section {
566
- position: absolute;
567
- right: 0px;
568
- top: 1px;
569
  }
570
- .option-tree-setting.is-section {
571
- border: 1px solid #464646;
572
  }
573
- .option-tree-setting.is-section .open {
574
- background: #464646;
575
- color: #ccc;
576
  }
577
- .option-tree-setting.is-section .option-tree-ui-button {
578
- border-color: #151515 !important;
579
  }
580
- .format-setting .ui-sortable-helper .option-tree-setting .open {
581
- background: #fff url(../images/ot-dots.png) no-repeat 4px 15px;
582
  }
583
- .option-tree-setting.is-section .open:hover,
584
- .format-setting .ui-sortable-helper .option-tree-setting.is-section .open {
585
- background: #464646 url(../images/ot-dots.png) no-repeat 4px 15px;
586
  }
587
- .ui-state-highlight {
588
- border: 1px dashed #ccc;
589
- display: block;
590
- -webkit-border-radius: 4px;
591
- -moz-border-radius: 4px;
592
- border-radius: 4px;
593
  }
594
- .option-tree-setting-body {
595
- background: #fff;
596
- border-top: 1px solid #ccc;
597
- display: none;
598
- padding: 10px;
599
- -webkit-border-bottom-right-radius: 3px;
600
- -webkit-border-bottom-left-radius: 3px;
601
- -moz-border-radius-bottomright: 3px;
602
- -moz-border-radius-bottomleft: 3px;
603
- border-bottom-right-radius: 3px;
604
- border-bottom-left-radius: 3px;
605
  }
606
- li ul .format-setting-wrap {
607
- padding: 0 0 10px 0;
608
  }
609
- li ul .format-setting-label {
610
- border: none;
611
- padding: 0px;
612
- margin: 0px;
613
  }
614
-
615
- /* --------------------------------------------------
616
- :: Layouts
617
- ---------------------------------------------------*/
618
- #option_tree_layouts {
619
- display: none;
620
- padding-top: 12px;
621
  }
622
- #option-tree-options-layouts-form {
623
- left: 13px;
624
- position: absolute;
625
- top: 30px;
626
- z-index: 10;
627
  }
628
- .option-tree-save-layout {
629
- float: left;
630
- padding: 10px 0;
631
  }
632
- .option-tree-save-layout.active-layout {
633
- border-left: 1px solid #fff;
634
- padding-left: 9px;
635
  }
636
- .option-tree-save-layout .widefat {
637
- float: left;
638
- width: 128px !important;
639
- margin: 0;
640
  }
641
- .option-tree-save-layout button.blue {
642
- margin: 0 0 0 10px;
643
  }
644
- .option-tree-active-layout {
645
- border-right: 1px solid #ccc;
646
- float: left;
647
- padding: 10px 10px 10px 0;
648
- min-width: 126px;
649
  }
650
-
651
- /* --------------------------------------------------
652
- :: Select
653
- ---------------------------------------------------*/
654
- .select-wrapper {
655
- background: #fff url(../images/ot-select.png) no-repeat right center;
656
- border: 1px solid #ccc;
657
- display: block;
658
- float: left;
659
- font-size: 12px;
660
- height: 27px;
661
- margin: 0 5px 5px 0;
662
- width: auto;
663
- border-radius: 2px;
664
- -webkit-border-radius: 2px;
665
- -moz-border-radius: 2px;
666
- -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
667
- -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
668
- box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
669
  }
670
- .select-wrapper:hover {
671
- background-image: url(../images/ot-select-hover.png);
672
- border-color: #bbb;
673
  }
674
- select.option-tree-ui-select {
675
- cursor: pointer;
676
- filter: alpha(opacity: 0);
677
- font-size: 14px;
678
- height: 29px;
679
- margin: 0;
680
- -moz-opacity: 0;
681
- opacity: 0;
682
- padding: 0 !important;
683
- position: relative;
684
- width: inherit;
685
- z-index: 4;
686
- min-width: 118px;
687
  }
688
-
689
- select.option-tree-ui-select option {
690
- padding: 3px 15px !important;
691
  }
692
- .select-wrapper span {
693
- height: 27px;
694
- line-height: 27px;
695
- padding-left: 7px;
696
- position: absolute;
697
- z-index: 2;
698
  }
699
- #option-tree-options-layouts-form .select-wrapper {
700
- margin: 0px;
701
  }
702
- #option-tree-options-layouts-form select.option-tree-ui-select {
703
- min-width: 124px;
704
  }
705
- .type-measurement select.option-tree-ui-select {
706
- min-width: 73px !important;
707
  }
708
- .type-measurement .select-wrapper {
709
- margin-right: 0;
710
- position: absolute;
711
- right: 0px;
712
- top: 0px;
713
  }
714
-
715
- /* FireFox */
716
- @-moz-document url-prefix() {
717
- #option-tree-options-layouts-form .select-wrapper {
718
- left: 250px;
719
- };
720
  }
721
-
722
- /* Webkit */
723
- @media screen and (-webkit-min-device-pixel-ratio:0) {
724
-
725
- .select-wrapper span {
726
- height: 26px;
727
- line-height: 26px;
728
- };
729
  }
730
-
731
- /* Opera 11 */
732
- @media not screen and (1) {
733
- .select-wrapper {
734
- height: 26px;
735
- };
736
  }
737
-
738
- /* --------------------------------------------------
739
- :: Measurement
740
- ---------------------------------------------------*/
741
- .option-tree-ui-measurement-input-wrap {
742
- margin-right: 80px;
743
  }
744
-
745
- /* --------------------------------------------------
746
- :: Checkbox & Radio
747
- ---------------------------------------------------*/
748
- .format-setting.type-checkbox input,
749
- .format-setting.type-radio input {
750
- float: left;
751
- margin: 2px 5px 0 1px;
752
  }
753
- .format-setting.type-checkbox label,
754
- .format-setting.type-radio label {
755
- float: left;
756
- max-width: 90%;
757
- padding: 0px;
758
  }
759
- #option-tree-settings-api .format-setting.type-checkbox p,
760
- #option-tree-settings-api .format-setting.type-radio p {
761
- float: left;
762
- margin: 0.5em 0 !important;
763
- width: 100%;
764
  }
765
-
766
- /* --------------------------------------------------
767
- :: Radio Images
768
- ---------------------------------------------------*/
769
- .type-radio-image .option-tree-ui-radio-images {
770
- float: left;
771
- margin: 0 10px 10px 0px;
772
  }
773
- .type-radio-image .option-tree-ui-radio-images img {
774
- background: #fff;
775
- border: 1px solid #ccc;
776
- cursor: pointer;
777
- opacity: 0.8;
778
- padding: 5px;
779
- -webkit-border-radius: 3px;
780
- -moz-border-radius: 3px;
781
- border-radius: 3px;
782
  }
783
- .type-radio-image .option-tree-ui-radio-images img.option-tree-ui-radio-image-selected,
784
- .type-radio-image .option-tree-ui-radio-images img:hover {
785
- border-color: #464646;
786
- opacity: 1;
787
- -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
788
- -moz-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
789
- box-shadow: 0 1px 3px rgba(0,0,0,0.05);
790
  }
791
-
792
- /* --------------------------------------------------
793
- :: Numeric Slider
794
- ---------------------------------------------------*/
795
- .type-numeric-slider .format-setting-inner {
796
- background: #fcfcfc;
797
- border: 1px solid #ccc;
798
- min-height: 41px;
799
- padding: 5px;
800
- -webkit-box-sizing: border-box;
801
- -moz-box-sizing: border-box;
802
- box-sizing: border-box;
803
- -webkit-border-radius: 3px;
804
- -moz-border-radius: 3px;
805
- border-radius: 3px;
806
  }
807
- .ot-numeric-slider-wrap {
808
- margin: 0 96px 0 0;
809
  }
810
- .ot-numeric-slider-wrap .ot-numeric-slider-helper-input {
811
- position: absolute;
812
- right: 5px;
813
- text-align: center;
814
- top: 5px;
815
- width: 90px;
816
  }
817
- .ot-numeric-slider.ui-slider {
818
- background: #fff;
819
- border: 1px solid #ccc;
820
- margin: 8px 8px 0 8px;
821
- position: relative;
822
- -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
823
- -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
824
- box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
825
- -webkit-border-radius: 2px;
826
- -moz-border-radius: 2px;
827
- border-radius: 2px;
828
  }
829
- .ot-numeric-slider.ui-slider-horizontal {
830
- height: 11px;
831
  }
832
- .ot-numeric-slider.ui-slider .ui-slider-handle {
833
- background-color: #21759b;
834
- border: 1px solid #21759b;
835
- border-bottom-color: #1e6a8d;
836
- cursor: pointer;
837
- display: block;
838
- height: 27px;
839
- margin: -9px -8px;
840
- outline: 0;
841
- position: absolute;
842
- width: 16px;
843
- background-image: -webkit-gradient(linear,left top,left bottom,from(#2a95c5),to(#21759b));
844
- background-image: -webkit-linear-gradient(top,#2a95c5,#21759b);
845
- background-image: -moz-linear-gradient(top,#2a95c5,#21759b);
846
- background-image: -ms-linear-gradient(top,#2a95c5,#21759b);
847
- background-image: -o-linear-gradient(top,#2a95c5,#21759b);
848
- background-image: linear-gradient(to bottom,#2a95c5,#21759b);
849
- -webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.5);
850
- -moz-box-shadow: inset 0 1px 0 rgba(120,200,230,0.5);
851
- box-shadow: inset 0 1px 0 rgba(120,200,230,0.5);
852
- -webkit-border-radius: 3px;
853
- -moz-border-radius: 3px;
854
- border-radius: 3px;
855
  }
856
- .ot-numeric-slider.ui-slider .ui-slider-handle:hover {
857
- background-color: #278ab7;
858
- background-image: -webkit-gradient(linear,left top,left bottom,from(#2e9fd2),to(#21759b));
859
- background-image: -webkit-linear-gradient(top,#2e9fd2,#21759b);
860
- background-image: -moz-linear-gradient(top,#2e9fd2,#21759b);
861
- background-image: -ms-linear-gradient(top,#2e9fd2,#21759b);
862
- background-image: -o-linear-gradient(top,#2e9fd2,#21759b);
863
- background-image: linear-gradient(to bottom,#2e9fd2,#21759b);
864
- border-color: #1b607f;
865
- -webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.6);
866
- -moz-box-shadow: inset 0 1px 0 rgba(120,200,230,0.6);
867
- box-shadow: inset 0 1px 0 rgba(120,200,230,0.6);
868
  }
869
-
870
- /* --------------------------------------------------
871
- :: Colorpicker
872
- ---------------------------------------------------*/
873
- .option-tree-ui-colorpicker-input-wrap {
874
- float: left;
875
  }
876
- .hide-color-picker {
877
- display: none;
878
  }
879
- .option-tree-ui-colorpicker-input-wrap .wp-color-picker,
880
- .option-tree-ui-colorpicker-input-wrap .wp-picker-default,
881
- .option-tree-ui-colorpicker-input-wrap .wp-picker-clear {
882
- border-color: #ccc;
883
- height: 29px !important;
884
- line-height: 27px !important;
885
- margin-top: 0px;
886
- -webkit-border-radius: 2px;
887
- -moz-border-radius: 2px;
888
- border-radius: 2px;
889
- -webkit-box-shadow: none;
890
- -moz-box-shadow: none;
891
- box-shadow: none;
892
  }
893
- .option-tree-ui-colorpicker-input-wrap .wp-color-result {
894
- height: 27px;
895
- outline: 0;
896
- margin: 0 5px 5px 0px;
897
- top: 0px;
898
- -webkit-box-shadow: none;
899
- -moz-box-shadow: none;
900
- box-shadow: none;
901
  }
902
- .option-tree-ui-colorpicker-input-wrap .wp-color-result:after {
903
- line-height: 27px;
904
  }
905
- .option-tree-ui-colorpicker-input-wrap .wp-picker-container .iris-picker {
906
- border-color: #ccc;
907
- margin: 0px 5px 5px 0;
908
- -webkit-border-radius: 2px;
909
- -moz-border-radius: 2px;
910
- border-radius: 2px;
911
  }
912
-
913
- /* --------------------------------------------------
914
- :: OptionTree UI Buttons
915
- ---------------------------------------------------*/
916
- .option-tree-ui-button,
917
- .option-tree-ui-button.blue,
918
- .option-tree-ui-button.red {
919
- display: inline-block;
920
- text-decoration: none;
921
- float: left;
922
- font-size: 12px;
923
- line-height: 28px;
924
- height: 29px;
925
- margin: 5px;
926
- padding: 0 14px 1px;
927
- cursor: pointer;
928
- border-width: 1px;
929
- border-style: solid;
930
- -webkit-appearance: none;
931
- white-space: nowrap;
932
- -webkit-border-radius: 3px;
933
- -moz-border-radius: 3px;
934
- border-radius: 3px;
935
- -webkit-box-sizing: border-box;
936
- -moz-box-sizing: border-box;
937
- box-sizing: border-box;
938
  }
939
- button.option-tree-ui-button::-moz-focus-inner,
940
- input[type="reset"].option-tree-ui-button::-moz-focus-inner,
941
- input[type="button"].option-tree-ui-button::-moz-focus-inner,
942
- input[type="submit"].option-tree-ui-button::-moz-focus-inner {
943
- border-width: 1px 0;
944
- border-style: solid none;
945
- border-color: transparent;
946
- padding: 0;
947
  }
948
- .option-tree-ui-button:active {
949
- outline: 0;
950
  }
951
- .option-tree-ui-button.hidden {
952
- display: none;
953
  }
954
- .option-tree-ui-button,
955
- .option-tree-ui-button.red {
956
- background: #f3f3f3;
957
- background-image: -webkit-gradient(linear,left top,left bottom,from(#fefefe),to(#f4f4f4));
958
- background-image: -webkit-linear-gradient(top,#fefefe,#f4f4f4);
959
- background-image: -moz-linear-gradient(top,#fefefe,#f4f4f4);
960
- background-image: -o-linear-gradient(top,#fefefe,#f4f4f4);
961
- background-image: linear-gradient(to bottom,#fefefe,#f4f4f4);
962
- border-color: #bbb;
963
- color: #333;
964
- text-shadow: 0 1px 0 #fff;
965
  }
966
- .option-tree-ui-button.hover,
967
- .option-tree-ui-button:hover,
968
- .option-tree-ui-button.red:hover,
969
- .option-tree-ui-button.focus,
970
- .option-tree-ui-button:focus,
971
- .option-tree-ui-button.red:focus {
972
- background: #f3f3f3;
973
- background-image: -webkit-gradient(linear,left top,left bottom,from(#fff),to(#f3f3f3));
974
- background-image: -webkit-linear-gradient(top,#fff,#f3f3f3);
975
- background-image: -moz-linear-gradient(top,#fff,#f3f3f3);
976
- background-image: -ms-linear-gradient(top,#fff,#f3f3f3);
977
- background-image: -o-linear-gradient(top,#fff,#f3f3f3);
978
- background-image: linear-gradient(to bottom,#fff,#f3f3f3);
979
- border-color: #999;
980
- color: #222;
981
  }
982
- .option-tree-ui-button.focus,
983
- .option-tree-ui-button:focus,
984
- .option-tree-ui-button.red:focus {
985
- -webkit-box-shadow: 1px 1px 1px rgba(0,0,0,.2);
986
- box-shadow: 1px 1px 1px rgba(0,0,0,.2);
987
  }
988
- .option-tree-ui-button.active,
989
- .option-tree-ui-button.active:hover,
990
- .option-tree-ui-button.active:focus,
991
- .option-tree-ui-button:active,
992
- .option-tree-ui-button.red:active {
993
- background: #eee;
994
- background-image: -webkit-gradient(linear,left top,left bottom,from(#f4f4f4),to(#fefefe));
995
- background-image: -webkit-linear-gradient(top,#f4f4f4,#fefefe);
996
- background-image: -moz-linear-gradient(top,#f4f4f4,#fefefe);
997
- background-image: -ms-linear-gradient(top,#f4f4f4,#fefefe);
998
- background-image: -o-linear-gradient(top,#f4f4f4,#fefefe);
999
- background-image: linear-gradient(to bottom,#f4f4f4,#fefefe);
1000
- border-color: #999;
1001
- color: #333;
1002
- text-shadow: 0 -1px 0 #fff;
1003
- -webkit-box-shadow: inset 0 2px 5px -3px rgba(0,0,0,0.5);
1004
- box-shadow: inset 0 2px 5px -3px rgba(0,0,0,0.5);
1005
- }
1006
- .option-tree-ui-button[disabled],
1007
- .option-tree-ui-button:disabled,
1008
- .option-tree-ui-button.red[disabled],
1009
- .option-tree-ui-button.red:disabled,
1010
- .option-tree-ui-button.disabled {
1011
- color: #aaa!important;
1012
- border-color: #ddd!important;
1013
- background-image: -webkit-gradient(linear,left top,left bottom,from(#f9f9f9),to(#f4f4f4))!important;
1014
- background-image: -webkit-linear-gradient(top,#f9f9f9,#f4f4f4)!important;
1015
- background-image: -moz-linear-gradient(top,#f9f9f9,#f4f4f4)!important;
1016
- background-image: -ms-linear-gradient(top,#f9f9f9,#f4f4f4)!important;
1017
- background-image: -o-linear-gradient(top,#f9f9f9,#f4f4f4)!important;
1018
- background-image: linear-gradient(to bottom,#f9f9f9,#f4f4f4)!important;
1019
- -webkit-box-shadow: none!important;
1020
- box-shadow: none!important;
1021
- text-shadow: 0 1px 0 #fff!important;
1022
- cursor: default;
1023
  }
1024
- .option-tree-ui-button.blue {
1025
- background-color: #21759b;
1026
- background-image: -webkit-gradient(linear,left top,left bottom,from(#2a95c5),to(#21759b));
1027
- background-image: -webkit-linear-gradient(top,#2a95c5,#21759b);
1028
- background-image: -moz-linear-gradient(top,#2a95c5,#21759b);
1029
- background-image: -ms-linear-gradient(top,#2a95c5,#21759b);
1030
- background-image: -o-linear-gradient(top,#2a95c5,#21759b);
1031
- background-image: linear-gradient(to bottom,#2a95c5,#21759b);
1032
- border-color: #21759b;
1033
- border-bottom-color: #1e6a8d;
1034
- -webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.5);
1035
- box-shadow: inset 0 1px 0 rgba(120,200,230,0.5);
1036
- color: #fff;
1037
- text-decoration: none;
1038
- text-shadow: 0 1px 0 rgba(0,0,0,0.1);
1039
- }
1040
- .option-tree-ui-button.blue.hover,
1041
- .option-tree-ui-button.blue:hover,
1042
- .option-tree-ui-button.blue.focus,
1043
- .option-tree-ui-button.blue:focus {
1044
- background-color: #278ab7;
1045
- background-image: -webkit-gradient(linear,left top,left bottom,from(#2e9fd2),to(#21759b));
1046
- background-image: -webkit-linear-gradient(top,#2e9fd2,#21759b);
1047
- background-image: -moz-linear-gradient(top,#2e9fd2,#21759b);
1048
- background-image: -ms-linear-gradient(top,#2e9fd2,#21759b);
1049
- background-image: -o-linear-gradient(top,#2e9fd2,#21759b);
1050
- background-image: linear-gradient(to bottom,#2e9fd2,#21759b);
1051
- border-color: #1b607f;
1052
- -webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.6);
1053
- box-shadow: inset 0 1px 0 rgba(120,200,230,0.6);
1054
- color: #fff;
1055
- text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
1056
- }
1057
- .option-tree-ui-button.blue.focus,
1058
- .option-tree-ui-button.blue:focus {
1059
- border-color: #0e3950;
1060
- -webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.6),1px 1px 2px rgba(0,0,0,0.4);
1061
- box-shadow: inset 0 1px 0 rgba(120,200,230,0.6),1px 1px 2px rgba(0,0,0,0.4);
1062
- }
1063
- .option-tree-ui-button.blue.active,
1064
- .option-tree-ui-button.blue.active:hover,
1065
- .option-tree-ui-button.blue.active:focus,
1066
- .option-tree-ui-button.blue:active {
1067
- background: #1b607f;
1068
- background-image: -webkit-gradient(linear,left top,left bottom,from(#21759b),to(#278ab7));
1069
- background-image: -webkit-linear-gradient(top,#21759b,#278ab7);
1070
- background-image: -moz-linear-gradient(top,#21759b,#278ab7);
1071
- background-image: -ms-linear-gradient(top,#21759b,#278ab7);
1072
- background-image: -o-linear-gradient(top,#21759b,#278ab7);
1073
- background-image: linear-gradient(to bottom,#21759b,#278ab7);
1074
- border-color: #124560 #2382ae #2382ae #2382ae;
1075
- color: rgba(255,255,255,0.95);
1076
- -webkit-box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
1077
- box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
1078
- text-shadow: 0 1px 0 rgba(0,0,0,0.1);
1079
- }
1080
- .option-tree-ui-button.blue[disabled],
1081
- .option-tree-ui-button.blue:disabled,
1082
- .option-tree-ui-button.blue-disabled {
1083
- color: #94cde7!important;
1084
- background: #298cba!important;
1085
- border-color: #1b607f!important;
1086
- -webkit-box-shadow: none!important;
1087
- box-shadow: none!important;
1088
- text-shadow: 0 -1px 0 rgba(0,0,0,0.1)!important;
1089
- cursor: default;
1090
  }
1091
- .option-tree-ui-button.red {
1092
- background-color: #9b3221;
1093
- background-image: -webkit-gradient(linear,left top,left bottom,from(#c5402a),to(#9b3221));
1094
- background-image: -webkit-linear-gradient(top,#c5402a,#9b3221);
1095
- background-image: -moz-linear-gradient(top,#c5402a,#9b3221);
1096
- background-image: -ms-linear-gradient(top,#c5402a,#9b3221);
1097
- background-image: -o-linear-gradient(top,#c5402a,#9b3221);
1098
- background-image: linear-gradient(to bottom,#c5402a,#9b3221);
1099
- border-color: #9b3221;
1100
- border-bottom-color: #8d2e1e;
1101
- -webkit-box-shadow: inset 0 1px 0 rgba(229,134,119,0.5);
1102
- box-shadow: inset 0 1px 0 rgba(229,134,119,0.5);
1103
- color: #fff;
1104
- text-decoration: none;
1105
- text-shadow: 0 1px 0 rgba(0,0,0,0.1);
1106
- }
1107
- .option-tree-ui-button.red.hover,
1108
- .option-tree-ui-button.red:hover,
1109
- .option-tree-ui-button.red.focus,
1110
- .option-tree-ui-button.red:focus {
1111
- background-color: #b73b27;
1112
- background-image: -webkit-gradient(linear,left top,left bottom,from(#d2452e),to(#9b3221));
1113
- background-image: -webkit-linear-gradient(top,#d2452e,#9b3221);
1114
- background-image: -moz-linear-gradient(top,#d2452e,#9b3221);
1115
- background-image: -ms-linear-gradient(top,#d2452e,#9b3221);
1116
- background-image: -o-linear-gradient(top,#d2452e,#9b3221);
1117
- background-image: linear-gradient(to bottom,#d2452e,#9b3221);
1118
- border-color: #7f291b;
1119
- -webkit-box-shadow: inset 0 1px 0 rgba(229,134,119,0.6);
1120
- box-shadow: inset 0 1px 0 rgba(229,134,119,0.6);
1121
- color: #fff;
1122
- text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
1123
  }
1124
- .option-tree-ui-button.red.focus,
1125
- .option-tree-ui-button.red:focus {
1126
- border-color: #4f160d;
1127
- -webkit-box-shadow: inset 0 1px 0 rgba(229,134,119,0.6),1px 1px 2px rgba(0,0,0,0.4);
1128
- box-shadow: inset 0 1px 0 rgba(229,134,119,0.6),1px 1px 2px rgba(0,0,0,0.4);
1129
- }
1130
- .option-tree-ui-button.red.active,
1131
- .option-tree-ui-button.red.active:hover,
1132
- .option-tree-ui-button.red.active:focus,
1133
- .option-tree-ui-button.red:active {
1134
- background: #7f291b;
1135
- background-image: -webkit-gradient(linear,left top,left bottom,from(#9b3221),to(#b73b27));
1136
- background-image: -webkit-linear-gradient(top,#9b3221,#b73b27);
1137
- background-image: -moz-linear-gradient(top,#9b3221,#b73b27);
1138
- background-image: -ms-linear-gradient(top,#9b3221,#b73b27);
1139
- background-image: -o-linear-gradient(top,#9b3221,#b73b27);
1140
- background-image: linear-gradient(to bottom,#9b3221,#b73b27);
1141
- border-color: #611d12 #ad3523 #ad3523 #ad3523;
1142
- color: rgba(255,255,255,0.95);
1143
- -webkit-box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
1144
- box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
1145
- text-shadow: 0 1px 0 rgba(0,0,0,0.1);
1146
- }
1147
- .option-tree-ui-button.red[disabled],
1148
- .option-tree-ui-button.red:disabled,
1149
- .option-tree-ui-button.red-disabled {
1150
- color: #94cde7!important;
1151
- background: #ba3c29!important;
1152
- border-color: #7f291b!important;
1153
- -webkit-box-shadow: none!important;
1154
- box-shadow: none!important;
1155
- text-shadow: 0 -1px 0 rgba(0,0,0,0.1)!important;
1156
- cursor: default;
1157
  }
1158
- .option-tree-ui-button.right {
1159
- float: right;
1160
  }
1161
- .option-tree-ui-button.hug-left {
1162
- margin-left: 0px;
1163
  }
1164
- .option-tree-ui-button.hug-right {
1165
- margin-right: 0px;
1166
  }
1167
- .option-tree-ui-button.pad {
1168
- padding: 0px 21px;
1169
  }
1170
- .option-tree-ui-button.left-item {
1171
- margin: 5px 0 5px 5px;
1172
- -webkit-border-top-right-radius: 0px;
1173
- -webkit-border-bottom-right-radius: 0px;
1174
- -moz-border-radius-topright: 0px;
1175
- -moz-border-radius-bottomright: 0px;
1176
- border-top-right-radius: 0px;
1177
- border-bottom-right-radius: 0px;
1178
  }
1179
- .option-tree-ui-button.center-item {
1180
- margin: 5px 0 5px -1px;
1181
- -webkit-border-radius: 0px;
1182
- -moz-border-radius: 0px;
1183
- border-radius: 0px;
1184
  }
1185
- .option-tree-ui-button.right-item {
1186
- margin: 5px 5px 5px -1px;
1187
- -webkit-border-top-left-radius: 0px;
1188
- -webkit-border-bottom-left-radius: 0px;
1189
- -moz-border-radius-topleft: 0px;
1190
- -moz-border-radius-bottomleft: 0px;
1191
- border-top-left-radius: 0px;
1192
- border-bottom-left-radius: 0px;
1193
  }
1194
- .option-tree-ui-buttons {
1195
- background: #fff;
1196
- border: 1px solid #ccc;
1197
- margin: 11px 5px 0 2px;
1198
- min-width: 523px;
1199
- overflow: hidden;
1200
- padding: 5px;
1201
- position: relative;
1202
- -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
1203
- box-shadow: 0 1px 3px rgba(0,0,0,0.05);
1204
- -webkit-border-radius: 4px;
1205
- -khtml-border-radius: 4px;
1206
- -moz-border-radius: 4px;
1207
- -o-border-radius: 4px;
1208
- border-radius: 4px;
1209
  }
1210
- .option-tree-ui-buttons.alt {
1211
- background: #f5f5f5;
1212
- border-color: #dfdfdf;
1213
  }
1214
- .option-tree-ui-buttons:before,
1215
- .option-tree-ui-buttons:after {
1216
- content: "\0020";
1217
- display: block;
1218
- height: 0;
1219
- visibility: hidden;
1220
  }
1221
- .option-tree-ui-buttons:after {
1222
- clear: both;
1223
  }
1224
- .option-tree-ui-buttons {
1225
- zoom: 1;
1226
  }
1227
- button.reset-settings {
1228
- position: relative;
1229
- top: -45px;
1230
- left: 8px;
1231
  }
1232
-
1233
- /* --------------------------------------------------
1234
- :: OptionTree UI Button Icons
1235
- ---------------------------------------------------*/
1236
- .option-tree-ui-button .icon {
1237
- background: url(../images/ot-ui-sprite.png) no-repeat;
1238
- display: inline-block;
1239
- float: left;
1240
- height: 18px;
1241
- margin-top: 4px;
1242
- opacity: 0.65;
1243
- overflow: hidden;
1244
- text-indent: -9999px;
1245
- width: 18px;
1246
  }
1247
- button.option-tree-ui-button .icon {
1248
- margin-top: -3px;
1249
  }
1250
- .option-tree-ui-button.light .icon {
1251
- background-image: url(../images/ot-ui-light-sprite.png);
1252
- opacity: 0.9;
1253
  }
1254
- .option-tree-ui-button.active .icon,
1255
- .option-tree-ui-button:hover .icon {
1256
- opacity: 1;
1257
  }
1258
- .option-tree-ui-button .icon.right-label {
1259
- margin-right: 10px;
1260
  }
1261
- .option-tree-ui-button .icon.left-label {
1262
- margin-left: 10px;
1263
- float: right;
1264
  }
1265
- .option-tree-ui-button .upload {
1266
- background-position: -0px -0px;
1267
  }
1268
- .option-tree-ui-button .trash-can {
1269
- background-position: -18px -0px;
1270
  }
1271
- .option-tree-ui-button .pencil,
1272
- .option-tree-ui-button .check {
1273
- background-position: -36px -0px;
1274
  }
1275
- .option-tree-ui-button:hover .pencil,
1276
- .option-tree-ui-button:hover .check,
1277
- .option-tree-ui-button.active .pencil,
1278
- .option-tree-ui-button.active .check {
1279
- background-position: -54px -0px;
1280
  }
1281
-
1282
- /* --------------------------------------------------
1283
- :: WP 3.8 Fixes (via Github @AlxMedia)
1284
- ---------------------------------------------------*/
1285
- #option-tree-settings-api #poststuff,
1286
- #option-tree-settings-api #post-body-content {
1287
- min-width: 0;
1288
  }
1289
- #option-tree-settings-api #poststuff h3 {
1290
- font-family: inherit !important;
1291
  }
1292
- #option-tree-settings-api .postbox {
1293
- -webkit-box-shadow: none;
1294
- -moz-box-shadow: none;
1295
- box-shadow: none;
1296
  }
1297
- #option-tree-settings-api p input[type="checkbox"],
1298
- #option-tree-settings-api p input[type="radio"] {
1299
- margin-top: 2px;
1300
  }
1301
- #option-tree-settings-api .format-setting.type-checkbox p,
1302
- #option-tree-settings-api .format-setting.type-radio p {
1303
- margin: 0.3em 0 !important;
1304
  }
1305
- input.option-tree-ui-upload-input,
1306
- input.option-tree-ui-input {
1307
- padding-top: 5px;
1308
- padding-bottom: 5px;
1309
  }
1310
- @media screen and ( max-width: 782px ) {
1311
- #option-tree-settings-api p input[type="checkbox"],
1312
- #option-tree-settings-api p input[type="radio"] {
1313
- margin-top: -3px;
1314
- }
1315
  }
1316
-
1317
- /* --------------------------------------------------
1318
- :: Gallery
1319
- ---------------------------------------------------*/
1320
- ul.ot-gallery-list {
1321
- float: left;
1322
- margin: 0;
1323
- width: 100%;
1324
  }
1325
- ul.ot-gallery-list li {
1326
- background: none repeat scroll 0 0 white;
1327
- border: 1px solid #bbbbbb;
1328
- float: left;
1329
- margin: 0px 10px 10px 0;
1330
- padding: 4px;
1331
- -webkit-border-radius: 3px;
1332
- -moz-border-radius: 3px;
1333
- border-radius: 3px;
1334
  }
1335
- ul.ot-gallery-list li img {
1336
- display: block;
1337
- margin: 0;
1338
  }
1339
-
1340
- .ot-gallery-buttons {
1341
- float: left;
1342
- width: 100%;
1343
  }
1344
- .ot-gallery-buttons a.option-tree-ui-button {
1345
- margin-top: 0px;
1346
- margin-bottom: 0px;
1347
  }
1348
-
1349
- /* --------------------------------------------------
1350
- :: On/Off Switch
1351
- ---------------------------------------------------*/
1352
- .on-off-switch .slide-button {
1353
- display: none;
1354
  }
1355
- @media only screen {
1356
- .on-off-switch {
1357
- background-color: #fff;
1358
- border: 1px solid #ccc;
1359
- color: #333;
1360
- display: block;
1361
- font-size: 12px;
1362
- font-weight: normal;
1363
- height: 27px;
1364
- margin: 2px 1px;
1365
- position: relative;
1366
- padding: 0;
1367
- text-align: center;
1368
- text-transform: uppercase;
1369
- width: 100px;
1370
- -webkit-border-radius: 2px;
1371
- -moz-border-radius: 2px;
1372
- border-radius: 2px;
1373
- -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
1374
- -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
1375
- box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
1376
- }
1377
- .on-off-switch * {
1378
- -webkit-box-sizing: border-box;
1379
- -moz-box-sizing: border-box;
1380
- box-sizing: border-box;
1381
- }
1382
- .on-off-switch input {
1383
- position: absolute;
1384
- opacity: 0;
1385
- }
1386
- .on-off-switch label {
1387
- cursor: pointer;
1388
- float: left;
1389
- height: 27px;
1390
- line-height: 27px;
1391
- margin: 0;
1392
- position: relative;
1393
- text-align: center;
1394
- vertical-align: middle;
1395
- width: 50px;
1396
- z-index: 2;
1397
- }
1398
- .on-off-switch input:last-of-type + label {
1399
- color: #333;
1400
- }
1401
- .on-off-switch input:checked + label {
1402
- color: #333;
1403
- }
1404
- .on-off-switch input:last-of-type:checked + label {
1405
- color: #fff;
1406
- }
1407
- .on-off-switch input:focus + label {
1408
- outline: none;
1409
- }
1410
- .on-off-switch .slide-button {
1411
- background: #b2d27e;
1412
- border: 1px solid #7c9258;
1413
- display: block;
1414
- height: 29px;
1415
- left: -1px;
1416
- padding: 0;
1417
- position: absolute;
1418
- text-decoration: none;
1419
- top: -1px;
1420
- width: 51px;
1421
- z-index: 1;
1422
- -webkit-border-radius: 3px;
1423
- -moz-border-radius: 3px;
1424
- border-radius: 3px;
1425
- -webkit-box-shadow: inset 0 1px 0 #c8eb8e, 0 1px 0 rgba(0,0,0,.08);
1426
- -moz-box-shadow: inset 0 1px 0 #c8eb8e, 0 1px 0 rgba(0,0,0,.08);
1427
- box-shadow: inset 0 1px 0 #c8eb8e, 0 1px 0 rgba(0,0,0,.08);
1428
- -webkit-transition: all 0.2s ease-out;
1429
- -moz-transition: all 0.2s ease-out;
1430
- transition: all 0.2s ease-out;
1431
- }
1432
- .on-off-switch input:last-of-type:checked ~ .slide-button {
1433
- background: #b73b27;
1434
- border-color: #7f291b;
1435
- color: #fff;
1436
- left: 50px;
1437
- -webkit-box-shadow: inset 0 1px 0 rgba(229,134,119,0.6), 0 1px 0 rgba(0,0,0,.15);
1438
- -moz-box-shadow: inset 0 1px 0 rgba(229,134,119,0.6), 0 1px 0 rgba(0,0,0,.15);
1439
- box-shadow: inset 0 1px 0 rgba(229,134,119,0.6), 0 1px 0 rgba(0,0,0,.15);
1440
- }
1441
  }
1442
- @media only screen and (-webkit-max-device-pixel-ratio: 2) and (max-device-width: 1280px) {
1443
- .on-off-switch {
1444
- -webkit-animation: webkitSiblingBugfix infinite 1s;
1445
- }
1446
  }
1447
- @-webkit-keyframes webkitSiblingBugfix {
1448
- from {
1449
- -webkit-transform: translate3d(0, 0, 0);
1450
- }
1451
- to {
1452
- -webkit-transform: translate3d(0, 0, 0);
1453
- }
1454
  }
1455
-
1456
- /* --------------------------------------------------
1457
- :: Simple Input Append & Prepend
1458
- ---------------------------------------------------*/
1459
- .ot-input-append,
1460
- .ot-input-prepend {
1461
- display: inline-block;
1462
- vertical-align: middle;
1463
- font-size: 0;
1464
- white-space: nowrap;
1465
  }
1466
- .ot-input-append input {
1467
- position: relative;
1468
- margin-bottom: 0;
1469
- *margin-left: 0;
1470
- vertical-align: top;
1471
- -webkit-border-radius: 0 2px 2px 0;
1472
- -moz-border-radius: 0 2px 2px 0;
1473
- border-radius: 0 2px 2px 0;
1474
  }
1475
- .ot-input-append input:focus,
1476
- .ot-input-prepend input:focus {
1477
- z-index: 2;
1478
  }
1479
- .ot-input-append .ot-add-on,
1480
- .ot-input-prepend .ot-add-on {
1481
- display: inline-block;
1482
- width: auto;
1483
- height: 27px;
1484
- line-height: 28px;
1485
- min-width: 16px;
1486
- padding: 0 6px;
1487
- font-size: 16px;
1488
- font-weight: normal;
1489
- text-align: center;
1490
- text-shadow: 0 1px 0 white;
1491
- background-color: #f7f7f7;
1492
- border: 1px solid #ccc;
1493
  }
1494
- .ot-input-prepend input {
1495
- border-left: 0 !important;
1496
  }
1497
- .ot-input-prepend .ot-add-on:first-child {
1498
- -webkit-border-radius: 2px 0 0 2px;
1499
- -moz-border-radius: 2px 0 0 2px;
1500
- border-radius: 2px 0 0 2px;
1501
  }
1502
- .ot-input-append input {
1503
- border-right: 0 !important;
1504
- -webkit-border-radius: 2px 0 0 2px;
1505
- -moz-border-radius: 2px 0 0 2px;
1506
- border-radius: 2px 0 0 2px;
1507
  }
1508
- .ot-input-append input + .btn-group .btn:first-child {
1509
- -webkit-border-top-left-radius: 0;
1510
- -moz-border-radius-topleft: 0;
1511
- border-top-left-radius: 0;
1512
- -webkit-border-bottom-left-radius: 0;
1513
- -moz-border-radius-bottomleft: 0;
1514
- border-bottom-left-radius: 0;
1515
  }
1516
- .ot-input-append .ot-add-on:last-child {
1517
- -webkit-border-radius: 0 2px 2px 0;
1518
- -moz-border-radius: 0 2px 2px 0;
1519
- border-radius: 0 2px 2px 0;
1520
  }
1521
- .ot-input-prepend.ot-input-append input {
1522
- -webkit-border-radius: 0;
1523
- -moz-border-radius: 0;
1524
- border-radius: 0;
1525
  }
1526
- .ot-input-prepend.ot-input-append .ot-add-on:first-child {
1527
- -webkit-border-radius: 2px 0 0 2px;
1528
- -moz-border-radius: 2px 0 0 2px;
1529
- border-radius: 2px 0 0 2px;
1530
  }
1531
- .ot-input-prepend.ot-input-append .ot-add-on:last-child {
1532
- -webkit-border-radius: 0 2px 2px 0;
1533
- -moz-border-radius: 0 2px 2px 0;
1534
- border-radius: 0 2px 2px 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1535
  }
1
  /* --------------------------------------------------
2
  :: OptionTree Font
3
  ---------------------------------------------------*/
4
+ @font-face {
5
+ font-family: "option-tree-font";
6
+ src:url("../fonts/option-tree-font.eot");
7
+ src:url("../fonts/option-tree-font.eot?#iefix") format("embedded-opentype"),
8
+ url("../fonts/option-tree-font.woff") format("woff"),
9
+ url("../fonts/option-tree-font.ttf") format("truetype"),
10
+ url("../fonts/option-tree-font.svg#option-tree-font") format("svg");
11
+ font-weight: normal;
12
+ font-style: normal;
13
+ }
14
+
15
  [class^="ot-icon-"],
16
  [class*=" ot-icon-"] {
17
  font-family: "option-tree-font";
24
  -webkit-font-smoothing: antialiased;
25
  -moz-osx-font-smoothing: grayscale;
26
  }
27
+ .ot-icon-option-tree:before {
28
+ content: "\e785";
29
  }
30
+ .ot-icon-glass:before {
31
+ content: "\e600";
32
  }
33
+ .ot-icon-music:before {
34
+ content: "\e601";
35
  }
36
+ .ot-icon-search:before {
37
+ content: "\e602";
38
  }
39
+ .ot-icon-envelope:before {
40
+ content: "\e603";
41
  }
42
+ .ot-icon-heart:before {
43
+ content: "\e604";
44
  }
45
+ .ot-icon-star:before {
46
+ content: "\e605";
47
  }
48
+ .ot-icon-star-empty:before {
49
+ content: "\e606";
50
  }
51
+ .ot-icon-user:before {
52
+ content: "\e607";
53
  }
54
+ .ot-icon-film:before {
55
+ content: "\e608";
56
  }
57
+ .ot-icon-th-large:before {
58
+ content: "\e609";
59
  }
60
+ .ot-icon-th:before {
61
+ content: "\e60a";
62
  }
63
+ .ot-icon-th-list:before {
64
+ content: "\e60b";
65
  }
66
+ .ot-icon-ok:before {
67
+ content: "\e60c";
68
  }
69
+ .ot-icon-remove:before {
70
+ content: "\e60d";
71
  }
72
+ .ot-icon-zoom-in:before {
73
+ content: "\e60e";
74
  }
75
+ .ot-icon-zoom-out:before {
76
+ content: "\e60f";
 
 
 
 
 
 
77
  }
78
+ .ot-icon-off:before {
79
+ content: "\e610";
 
 
 
 
 
80
  }
81
+ .ot-icon-signal:before {
82
+ content: "\e611";
 
 
 
 
83
  }
84
+ .ot-icon-cog:before {
85
+ content: "\e612";
 
 
86
  }
87
+ .ot-icon-trash:before {
88
+ content: "\e783";
 
89
  }
90
+ .ot-icon-home:before {
91
+ content: "\e613";
 
 
 
 
 
 
 
 
 
 
 
 
 
92
  }
93
+ .ot-icon-file:before {
94
+ content: "\e614";
 
 
 
 
95
  }
96
+ .ot-icon-time:before {
97
+ content: "\e615";
 
 
 
 
 
 
 
 
 
 
 
 
 
98
  }
99
+ .ot-icon-road:before {
100
+ content: "\e616";
 
 
 
101
  }
102
+ .ot-icon-download-alt:before {
103
+ content: "\e617";
 
104
  }
105
+ .ot-icon-download:before {
106
+ content: "\e618";
107
  }
108
+ .ot-icon-upload:before {
109
+ content: "\e619";
 
 
 
 
110
  }
111
+ .ot-icon-inbox:before {
112
+ content: "\e61a";
 
 
 
 
113
  }
114
+ .ot-icon-play-circle:before {
115
+ content: "\e61b";
116
  }
117
+ .ot-icon-repeat:before {
118
+ content: "\e61c";
 
 
 
 
 
119
  }
120
+ .ot-icon-refresh:before {
121
+ content: "\e61d";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
122
  }
123
+ .ot-icon-list-alt:before {
124
+ content: "\e61e";
 
 
 
 
 
 
 
 
 
125
  }
126
+ .ot-icon-lock:before {
127
+ content: "\e61f";
 
 
 
 
 
 
 
128
  }
129
+ .ot-icon-flag:before {
130
+ content: "\e620";
 
 
131
  }
132
+ .ot-icon-headphones:before {
133
+ content: "\e621";
 
 
 
 
134
  }
135
+ .ot-icon-volume-off:before {
136
+ content: "\e622";
 
 
137
  }
138
+ .ot-icon-volume-down:before {
139
+ content: "\e623";
140
  }
141
+ .ot-icon-volume-up:before {
142
+ content: "\e624";
 
 
 
 
143
  }
144
+ .ot-icon-qrcode:before {
145
+ content: "\e625";
146
  }
147
+ .ot-icon-barcode:before {
148
+ content: "\e626";
 
 
 
 
 
 
 
149
  }
150
+ .ot-icon-tag:before {
151
+ content: "\e627";
 
 
 
 
 
 
 
 
 
 
 
 
 
152
  }
153
+ .ot-icon-tags:before {
154
+ content: "\e628";
 
 
 
 
 
 
155
  }
156
+ .ot-icon-book:before {
157
+ content: "\e629";
 
 
158
  }
159
+ .ot-icon-bookmark:before {
160
+ content: "\e62a";
 
 
161
  }
162
+ .ot-icon-print:before {
163
+ content: "\e62b";
 
 
164
  }
165
+ .ot-icon-camera:before {
166
+ content: "\e62c";
 
 
 
167
  }
168
+ .ot-icon-font:before {
169
+ content: "\e62d";
170
  }
171
+ .ot-icon-bold:before {
172
+ content: "\e62e";
 
 
 
 
173
  }
174
+ .ot-icon-italic:before {
175
+ content: "\e62f";
 
 
 
 
176
  }
177
+ .ot-icon-text-height:before {
178
+ content: "\e630";
179
  }
180
+ .ot-icon-text-width:before {
181
+ content: "\e631";
 
 
182
  }
183
+ .ot-icon-align-left:before {
184
+ content: "\e632";
 
 
185
  }
186
+ .ot-icon-align-center:before {
187
+ content: "\e633";
 
 
 
188
  }
189
+ .ot-icon-align-right:before {
190
+ content: "\e634";
191
  }
192
+ .ot-icon-align-justify:before {
193
+ content: "\e635";
 
 
194
  }
195
+ .ot-icon-list:before {
196
+ content: "\e636";
 
197
  }
198
+ .ot-icon-indent-left:before {
199
+ content: "\e637";
 
 
200
  }
201
+ .ot-icon-indent-right:before {
202
+ content: "\e638";
 
 
203
  }
204
+ .ot-icon-facetime-video:before {
205
+ content: "\e639";
 
206
  }
207
+ .ot-icon-picture:before {
208
+ content: "\e63a";
 
 
209
  }
210
+ .ot-icon-pencil:before {
211
+ content: "\e784";
 
 
 
 
 
 
 
212
  }
213
+ .ot-icon-map-marker:before {
214
+ content: "\e63b";
 
 
 
 
 
 
215
  }
216
+ .ot-icon-adjust:before {
217
+ content: "\e63c";
 
218
  }
219
+ .ot-icon-tint:before {
220
+ content: "\e63d";
221
  }
222
+ .ot-icon-edit:before {
223
+ content: "\e63e";
 
 
 
 
 
 
224
  }
225
+ .ot-icon-share:before {
226
+ content: "\e63f";
 
 
 
 
 
 
 
 
 
 
 
 
227
  }
228
+ .ot-icon-check:before {
229
+ content: "\e640";
 
 
230
  }
231
+ .ot-icon-move:before {
232
+ content: "\e641";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
233
  }
234
+ .ot-icon-step-backward:before {
235
+ content: "\e642";
 
236
  }
237
+ .ot-icon-fast-backward:before {
238
+ content: "\e643";
 
 
 
 
 
239
  }
240
+ .ot-icon-backward:before {
241
+ content: "\e644";
 
 
 
 
 
 
242
  }
243
+ .ot-icon-play:before {
244
+ content: "\e645";
 
 
 
 
 
 
 
 
 
 
245
  }
246
+ .ot-icon-pause:before {
247
+ content: "\e646";
 
 
 
248
  }
249
+ .ot-icon-stop:before {
250
+ content: "\e647";
 
 
 
251
  }
252
+ .ot-icon-forward:before {
253
+ content: "\e648";
 
 
 
 
254
  }
255
+ .ot-icon-fast-forward:before {
256
+ content: "\e649";
 
 
 
 
 
257
  }
258
+ .ot-icon-step-forward:before {
259
+ content: "\e64a";
 
260
  }
261
+ .ot-icon-eject:before {
262
+ content: "\e64b";
 
 
 
 
 
 
 
263
  }
264
+ .ot-icon-chevron-left:before {
265
+ content: "\e64c";
266
  }
267
+ .ot-icon-chevron-right:before {
268
+ content: "\e64d";
269
  }
270
+ .ot-icon-plus-sign:before {
271
+ content: "\e781";
272
  }
273
+ .ot-icon-minus-sign:before {
274
+ content: "\e782";
 
 
 
275
  }
276
+ .ot-icon-remove-sign:before {
277
+ content: "\e64e";
 
 
 
 
 
 
 
 
 
 
 
 
 
278
  }
279
+ .ot-icon-ok-sign:before {
280
+ content: "\e786";
281
  }
282
+ .ot-icon-question-sign:before {
283
+ content: "\e64f";
 
 
 
 
 
284
  }
285
+ .ot-icon-info-sign:before {
286
+ content: "\e650";
287
  }
288
+ .ot-icon-screenshot:before {
289
+ content: "\e651";
290
  }
291
+ .ot-icon-remove-circle:before {
292
+ content: "\e652";
 
 
293
  }
294
+ .ot-icon-ok-circle:before {
295
+ content: "\e653";
296
  }
297
+ .ot-icon-ban-circle:before {
298
+ content: "\e654";
 
299
  }
300
+ .ot-icon-arrow-left:before {
301
+ content: "\e655";
302
  }
303
+ .ot-icon-arrow-right:before {
304
+ content: "\e656";
305
  }
306
+ .ot-icon-arrow-up:before {
307
+ content: "\e657";
 
308
  }
309
+ .ot-icon-arrow-down:before {
310
+ content: "\e658";
 
 
 
 
311
  }
312
+ .ot-icon-share-alt:before {
313
+ content: "\e659";
 
 
 
 
 
 
 
 
 
314
  }
315
+ .ot-icon-resize-full:before {
316
+ content: "\e65a";
317
  }
318
+ .ot-icon-resize-small:before {
319
+ content: "\e65b";
 
 
320
  }
321
+ .ot-icon-plus:before {
322
+ content: "\e65c";
 
 
 
 
 
323
  }
324
+ .ot-icon-minus:before {
325
+ content: "\e65d";
 
 
 
326
  }
327
+ .ot-icon-asterisk:before {
328
+ content: "\e65e";
 
329
  }
330
+ .ot-icon-exclamation-sign:before {
331
+ content: "\e65f";
 
332
  }
333
+ .ot-icon-gift:before {
334
+ content: "\e660";
 
 
335
  }
336
+ .ot-icon-leaf:before {
337
+ content: "\e661";
338
  }
339
+ .ot-icon-fire:before {
340
+ content: "\e662";
 
 
 
341
  }
342
+ .ot-icon-eye-open:before {
343
+ content: "\e663";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
344
  }
345
+ .ot-icon-eye-close:before {
346
+ content: "\e664";
 
347
  }
348
+ .ot-icon-warning-sign:before {
349
+ content: "\e665";
 
 
 
 
 
 
 
 
 
 
 
350
  }
351
+ .ot-icon-plane:before {
352
+ content: "\e666";
 
353
  }
354
+ .ot-icon-calendar:before {
355
+ content: "\e667";
 
 
 
 
356
  }
357
+ .ot-icon-random:before {
358
+ content: "\e668";
359
  }
360
+ .ot-icon-comment:before {
361
+ content: "\e669";
362
  }
363
+ .ot-icon-magnet:before {
364
+ content: "\e66a";
365
  }
366
+ .ot-icon-chevron-up:before {
367
+ content: "\e66b";
 
 
 
368
  }
369
+ .ot-icon-chevron-down:before {
370
+ content: "\e66c";
 
 
 
 
371
  }
372
+ .ot-icon-retweet:before {
373
+ content: "\e66d";
 
 
 
 
 
 
374
  }
375
+ .ot-icon-shopping-cart:before {
376
+ content: "\e66e";
 
 
 
 
377
  }
378
+ .ot-icon-folder-close:before {
379
+ content: "\e66f";
 
 
 
 
380
  }
381
+ .ot-icon-folder-open:before {
382
+ content: "\e670";
 
 
 
 
 
 
383
  }
384
+ .ot-icon-resize-vertical:before {
385
+ content: "\e778";
 
 
 
386
  }
387
+ .ot-icon-resize-horizontal:before {
388
+ content: "\e779";
 
 
 
389
  }
390
+ .ot-icon-bar-chart:before {
391
+ content: "\e671";
 
 
 
 
 
392
  }
393
+ .ot-icon-twitter-sign:before {
394
+ content: "\e672";
 
 
 
 
 
 
 
395
  }
396
+ .ot-icon-facebook-sign:before {
397
+ content: "\e673";
 
 
 
 
 
398
  }
399
+ .ot-icon-camera-retro:before {
400
+ content: "\e674";
 
 
 
 
 
 
 
 
 
 
 
 
 
401
  }
402
+ .ot-icon-key:before {
403
+ content: "\e675";
404
  }
405
+ .ot-icon-cogs:before {
406
+ content: "\e676";
 
 
 
 
407
  }
408
+ .ot-icon-comments:before {
409
+ content: "\e677";
 
 
 
 
 
 
 
 
 
410
  }
411
+ .ot-icon-thumbs-up:before {
412
+ content: "\e678";
413
  }
414
+ .ot-icon-thumbs-down:before {
415
+ content: "\e679";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
416
  }
417
+ .ot-icon-star-half:before {
418
+ content: "\e67a";
 
 
 
 
 
 
 
 
 
 
419
  }
420
+ .ot-icon-heart-empty:before {
421
+ content: "\e67b";
 
 
 
 
422
  }
423
+ .ot-icon-signout:before {
424
+ content: "\e67c";
425
  }
426
+ .ot-icon-linkedin-sign:before {
427
+ content: "\e67d";
 
 
 
 
 
 
 
 
 
 
 
428
  }
429
+ .ot-icon-pushpin:before {
430
+ content: "\e67e";
 
 
 
 
 
 
431
  }
432
+ .ot-icon-external-link:before {
433
+ content: "\e67f";
434
  }
435
+ .ot-icon-signin:before {
436
+ content: "\e680";
 
 
 
 
437
  }
438
+ .ot-icon-trophy:before {
439
+ content: "\e681";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
440
  }
441
+ .ot-icon-github-sign:before {
442
+ content: "\e682";
 
 
 
 
 
 
443
  }
444
+ .ot-icon-upload-alt:before {
445
+ content: "\e683";
446
  }
447
+ .ot-icon-lemon:before {
448
+ content: "\e684";
449
  }
450
+ .ot-icon-phone:before {
451
+ content: "\e685";
 
 
 
 
 
 
 
 
 
452
  }
453
+ .ot-icon-check-empty:before {
454
+ content: "\e686";
 
 
 
 
 
 
 
 
 
 
 
 
 
455
  }
456
+ .ot-icon-bookmark-empty:before {
457
+ content: "\e687";
 
 
 
458
  }
459
+ .ot-icon-phone-sign:before {
460
+ content: "\e688";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
461
  }
462
+ .ot-icon-twitter:before {
463
+ content: "\e689";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
464
  }
465
+ .ot-icon-facebook:before {
466
+ content: "\e68a";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
467
  }
468
+ .ot-icon-github:before {
469
+ content: "\e68b";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
470
  }
471
+ .ot-icon-unlock:before {
472
+ content: "\e68c";
473
  }
474
+ .ot-icon-credit:before {
475
+ content: "\e68d";
476
  }
477
+ .ot-icon-rss:before {
478
+ content: "\e68e";
479
  }
480
+ .ot-icon-hdd:before {
481
+ content: "\e68f";
482
  }
483
+ .ot-icon-bullhorn:before {
484
+ content: "\e690";
 
 
 
 
 
 
485
  }
486
+ .ot-icon-bell:before {
487
+ content: "\e691";
 
 
 
488
  }
489
+ .ot-icon-certificate:before {
490
+ content: "\e692";
 
 
 
 
 
 
491
  }
492
+ .ot-icon-hand-right:before {
493
+ content: "\e693";
 
 
 
 
 
 
 
 
 
 
 
 
 
494
  }
495
+ .ot-icon-hand-left:before {
496
+ content: "\e694";
 
497
  }
498
+ .ot-icon-hand-up:before {
499
+ content: "\e695";
 
 
 
 
500
  }
501
+ .ot-icon-hand-down:before {
502
+ content: "\e696";
503
  }
504
+ .ot-icon-circle-arrow-left:before {
505
+ content: "\e697";
506
  }
507
+ .ot-icon-circle-arrow-right:before {
508
+ content: "\e698";
 
 
509
  }
510
+ .ot-icon-circle-arrow-up:before {
511
+ content: "\e699";
 
 
 
 
 
 
 
 
 
 
 
 
512
  }
513
+ .ot-icon-circle-arrow-down:before {
514
+ content: "\e69a";
515
  }
516
+ .ot-icon-globe:before {
517
+ content: "\e69b";
 
518
  }
519
+ .ot-icon-wrench:before {
520
+ content: "\e69c";
 
521
  }
522
+ .ot-icon-tasks:before {
523
+ content: "\e69d";
524
  }
525
+ .ot-icon-filter:before {
526
+ content: "\e69e";
 
527
  }
528
+ .ot-icon-briefcase:before {
529
+ content: "\e69f";
530
  }
531
+ .ot-icon-fullscreen:before {
532
+ content: "\e780";
533
  }
534
+ .ot-icon-group:before {
535
+ content: "\e6a0";
 
536
  }
537
+ .ot-icon-link:before {
538
+ content: "\e6a1";
 
 
 
539
  }
540
+ .ot-icon-cloud:before {
541
+ content: "\e6a2";
 
 
 
 
 
542
  }
543
+ .ot-icon-beaker:before {
544
+ content: "\e6a3";
545
  }
546
+ .ot-icon-cut:before {
547
+ content: "\e6a4";
 
 
548
  }
549
+ .ot-icon-copy:before {
550
+ content: "\e6a5";
 
551
  }
552
+ .ot-icon-paper-clip:before {
553
+ content: "\e6a6";
 
554
  }
555
+ .ot-icon-save:before {
556
+ content: "\e6a7";
 
 
557
  }
558
+ .ot-icon-sign-blank:before {
559
+ content: "\e6a8";
 
 
 
560
  }
561
+ .ot-icon-reorder:before {
562
+ content: "\e6a9";
 
 
 
 
 
 
563
  }
564
+ .ot-icon-list-ul:before {
565
+ content: "\e6aa";
 
 
 
 
 
 
 
566
  }
567
+ .ot-icon-list-ol:before {
568
+ content: "\e6ab";
 
569
  }
570
+ .ot-icon-strikethrough:before {
571
+ content: "\e6ac";
 
 
572
  }
573
+ .ot-icon-underline:before {
574
+ content: "\e6ad";
 
575
  }
576
+ .ot-icon-table:before {
577
+ content: "\e6ae";
 
 
 
 
578
  }
579
+ .ot-icon-magic:before {
580
+ content: "\e6af";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
581
  }
582
+ .ot-icon-truck:before {
583
+ content: "\e6b0";
 
 
584
  }
585
+ .ot-icon-pinterest:before {
586
+ content: "\e6b1";
 
 
 
 
 
587
  }
588
+ .ot-icon-pinterest-sign:before {
589
+ content: "\e6b2";
 
 
 
 
 
 
 
 
590
  }
591
+ .ot-icon-google-plus-sign:before {
592
+ content: "\e6b3";
 
 
 
 
 
 
593
  }
594
+ .ot-icon-google-plus:before {
595
+ content: "\e6b4";
 
596
  }
597
+ .ot-icon-money:before {
598
+ content: "\e6b5";
 
 
 
 
 
 
 
 
 
 
 
 
599
  }
600
+ .ot-icon-caret-down:before {
601
+ content: "\e6b6";
602
  }
603
+ .ot-icon-caret-up:before {
604
+ content: "\e6b7";
 
 
605
  }
606
+ .ot-icon-caret-left:before {
607
+ content: "\e6b8";
 
 
 
608
  }
609
+ .ot-icon-caret-right:before {
610
+ content: "\e6b9";
 
 
 
 
 
611
  }
612
+ .ot-icon-columns:before {
613
+ content: "\e6ba";
 
 
614
  }
615
+ .ot-icon-sort:before {
616
+ content: "\e6bb";
 
 
617
  }
618
+ .ot-icon-sort-down:before {
619
+ content: "\e6bc";
 
 
620
  }
621
+ .ot-icon-sort-up:before {
622
+ content: "\e6bd";
623
+ }
624
+ .ot-icon-envelope-alt:before {
625
+ content: "\e6be";
626
+ }
627
+ .ot-icon-linkedin:before {
628
+ content: "\e6bf";
629
+ }
630
+ .ot-icon-undo:before {
631
+ content: "\e6c0";
632
+ }
633
+ .ot-icon-legal:before {
634
+ content: "\e6c1";
635
+ }
636
+ .ot-icon-dashboard:before {
637
+ content: "\e6c2";
638
+ }
639
+ .ot-icon-comment-alt:before {
640
+ content: "\e6c3";
641
+ }
642
+ .ot-icon-comments-alt:before {
643
+ content: "\e6c4";
644
+ }
645
+ .ot-icon-bolt:before {
646
+ content: "\e6c5";
647
+ }
648
+ .ot-icon-sitemap:before {
649
+ content: "\e6c6";
650
+ }
651
+ .ot-icon-umbrella:before {
652
+ content: "\e6c7";
653
+ }
654
+ .ot-icon-paste:before {
655
+ content: "\e6c8";
656
+ }
657
+ .ot-icon-lightbulb:before {
658
+ content: "\e6c9";
659
+ }
660
+ .ot-icon-exchange:before {
661
+ content: "\e6ca";
662
+ }
663
+ .ot-icon-cloud-download:before {
664
+ content: "\e6cb";
665
+ }
666
+ .ot-icon-cloud-upload:before {
667
+ content: "\e6cc";
668
+ }
669
+ .ot-icon-user-md:before {
670
+ content: "\e6cd";
671
+ }
672
+ .ot-icon-stethoscope:before {
673
+ content: "\e6ce";
674
+ }
675
+ .ot-icon-suitcase:before {
676
+ content: "\e6cf";
677
+ }
678
+ .ot-icon-bell-alt:before {
679
+ content: "\e6d0";
680
+ }
681
+ .ot-icon-coffee:before {
682
+ content: "\e6d1";
683
+ }
684
+ .ot-icon-food:before {
685
+ content: "\e6d2";
686
+ }
687
+ .ot-icon-file-alt:before {
688
+ content: "\e6d3";
689
+ }
690
+ .ot-icon-building:before {
691
+ content: "\e6d4";
692
+ }
693
+ .ot-icon-hospital:before {
694
+ content: "\e6d5";
695
+ }
696
+ .ot-icon-ambulance:before {
697
+ content: "\e6d6";
698
+ }
699
+ .ot-icon-medkit:before {
700
+ content: "\e6d7";
701
+ }
702
+ .ot-icon-fighter-jet:before {
703
+ content: "\e6d8";
704
+ }
705
+ .ot-icon-beer:before {
706
+ content: "\e6d9";
707
+ }
708
+ .ot-icon-h-sign:before {
709
+ content: "\e6da";
710
+ }
711
+ .ot-icon-plus-sign2:before {
712
+ content: "\e6db";
713
+ }
714
+ .ot-icon-double-angle-left:before {
715
+ content: "\e6dc";
716
+ }
717
+ .ot-icon-double-angle-right:before {
718
+ content: "\e6dd";
719
+ }
720
+ .ot-icon-double-angle-up:before {
721
+ content: "\e6de";
722
+ }
723
+ .ot-icon-double-angle-down:before {
724
+ content: "\e6df";
725
+ }
726
+ .ot-icon-angle-left:before {
727
+ content: "\e775";
728
+ }
729
+ .ot-icon-angle-right:before {
730
+ content: "\e774";
731
+ }
732
+ .ot-icon-angle-up:before {
733
+ content: "\e776";
734
+ }
735
+ .ot-icon-angle-down:before {
736
+ content: "\e777";
737
+ }
738
+ .ot-icon-desktop:before {
739
+ content: "\e6e0";
740
+ }
741
+ .ot-icon-laptop:before {
742
+ content: "\e6e1";
743
+ }
744
+ .ot-icon-tablet:before {
745
+ content: "\e6e2";
746
+ }
747
+ .ot-icon-mobile:before {
748
+ content: "\e6e3";
749
+ }
750
+ .ot-icon-circle-blank:before {
751
+ content: "\e6e4";
752
+ }
753
+ .ot-icon-quote-left:before {
754
+ content: "\e6e5";
755
+ }
756
+ .ot-icon-quote-right:before {
757
+ content: "\e6e6";
758
+ }
759
+ .ot-icon-spinner:before {
760
+ content: "\e6e7";
761
+ }
762
+ .ot-icon-circle:before {
763
+ content: "\e787";
764
+ }
765
+ .ot-icon-reply:before {
766
+ content: "\e6e8";
767
+ }
768
+ .ot-icon-github-alt:before {
769
+ content: "\e6e9";
770
+ }
771
+ .ot-icon-folder-close-alt:before {
772
+ content: "\e6ea";
773
+ }
774
+ .ot-icon-folder-open-alt:before {
775
+ content: "\e6eb";
776
+ }
777
+ .ot-icon-expand-alt:before {
778
+ content: "\e6ec";
779
+ }
780
+ .ot-icon-collapse-alt:before {
781
+ content: "\e6ed";
782
+ }
783
+ .ot-icon-smile:before {
784
+ content: "\e6ee";
785
+ }
786
+ .ot-icon-frown:before {
787
+ content: "\e6ef";
788
+ }
789
+ .ot-icon-meh:before {
790
+ content: "\e6f0";
791
+ }
792
+ .ot-icon-gamepad:before {
793
+ content: "\e6f1";
794
+ }
795
+ .ot-icon-keyboard:before {
796
+ content: "\e6f2";
797
+ }
798
+ .ot-icon-flag-alt:before {
799
+ content: "\e6f3";
800
+ }
801
+ .ot-icon-flag-checkered:before {
802
+ content: "\e6f4";
803
+ }
804
+ .ot-icon-terminal:before {
805
+ content: "\e6f5";
806
+ }
807
+ .ot-icon-code:before {
808
+ content: "\e6f6";
809
+ }
810
+ .ot-icon-reply-all:before {
811
+ content: "\e6f7";
812
+ }
813
+ .ot-icon-star-half-full:before {
814
+ content: "\e6f8";
815
+ }
816
+ .ot-icon-location-arrow:before {
817
+ content: "\e6f9";
818
+ }
819
+ .ot-icon-crop:before {
820
+ content: "\e6fa";
821
+ }
822
+ .ot-icon-code-fork:before {
823
+ content: "\e6fb";
824
+ }
825
+ .ot-icon-unlink:before {
826
+ content: "\e6fc";
827
+ }
828
+ .ot-icon-question:before {
829
+ content: "\e6fd";
830
+ }
831
+ .ot-icon-info:before {
832
+ content: "\e6fe";
833
+ }
834
+ .ot-icon-exclamation:before {
835
+ content: "\e6ff";
836
+ }
837
+ .ot-icon-superscript:before {
838
+ content: "\e700";
839
+ }
840
+ .ot-icon-subscript:before {
841
+ content: "\e701";
842
+ }
843
+ .ot-icon-eraser:before {
844
+ content: "\e702";
845
+ }
846
+ .ot-icon-puzzle:before {
847
+ content: "\e703";
848
+ }
849
+ .ot-icon-microphone:before {
850
+ content: "\e704";
851
+ }
852
+ .ot-icon-microphone-off:before {
853
+ content: "\e705";
854
+ }
855
+ .ot-icon-shield:before {
856
+ content: "\e706";
857
+ }
858
+ .ot-icon-calendar-empty:before {
859
+ content: "\e707";
860
+ }
861
+ .ot-icon-fire-extinguisher:before {
862
+ content: "\e708";
863
+ }
864
+ .ot-icon-rocket:before {
865
+ content: "\e709";
866
+ }
867
+ .ot-icon-maxcdn:before {
868
+ content: "\e70a";
869
+ }
870
+ .ot-icon-chevron-sign-left:before {
871
+ content: "\e70b";
872
+ }
873
+ .ot-icon-chevron-sign-right:before {
874
+ content: "\e70c";
875
+ }
876
+ .ot-icon-chevron-sign-up:before {
877
+ content: "\e70d";
878
+ }
879
+ .ot-icon-chevron-sign-down:before {
880
+ content: "\e70e";
881
+ }
882
+ .ot-icon-html5:before {
883
+ content: "\e70f";
884
+ }
885
+ .ot-icon-css3:before {
886
+ content: "\e710";
887
+ }
888
+ .ot-icon-anchor:before {
889
+ content: "\e711";
890
+ }
891
+ .ot-icon-unlock-alt:before {
892
+ content: "\e712";
893
+ }
894
+ .ot-icon-bullseye:before {
895
+ content: "\e713";
896
+ }
897
+ .ot-icon-ellipsis-horizontal:before {
898
+ content: "\e714";
899
+ }
900
+ .ot-icon-ellipsis-vertical:before {
901
+ content: "\e715";
902
+ }
903
+ .ot-icon-rss-sign:before {
904
+ content: "\e716";
905
+ }
906
+ .ot-icon-play-sign:before {
907
+ content: "\e717";
908
+ }
909
+ .ot-icon-ticket:before {
910
+ content: "\e718";
911
+ }
912
+ .ot-icon-minus-sign-alt:before {
913
+ content: "\e719";
914
+ }
915
+ .ot-icon-check-minus:before {
916
+ content: "\e71a";
917
+ }
918
+ .ot-icon-level-up:before {
919
+ content: "\e71b";
920
+ }
921
+ .ot-icon-level-down:before {
922
+ content: "\e71c";
923
+ }
924
+ .ot-icon-check-sign:before {
925
+ content: "\e71d";
926
+ }
927
+ .ot-icon-edit-sign:before {
928
+ content: "\e71e";
929
+ }
930
+ .ot-icon-external-link-sign:before {
931
+ content: "\e71f";
932
+ }
933
+ .ot-icon-share-sign:before {
934
+ content: "\e720";
935
+ }
936
+ .ot-icon-compass:before {
937
+ content: "\e721";
938
+ }
939
+ .ot-icon-collapse:before {
940
+ content: "\e722";
941
+ }
942
+ .ot-icon-collapse-top:before {
943
+ content: "\e723";
944
+ }
945
+ .ot-icon-expand:before {
946
+ content: "\e724";
947
+ }
948
+ .ot-icon-euro:before {
949
+ content: "\e725";
950
+ }
951
+ .ot-icon-gbp:before {
952
+ content: "\e726";
953
+ }
954
+ .ot-icon-dollar:before {
955
+ content: "\e727";
956
+ }
957
+ .ot-icon-rupee:before {
958
+ content: "\e728";
959
+ }
960
+ .ot-icon-yen:before {
961
+ content: "\e729";
962
+ }
963
+ .ot-icon-renminbi:before {
964
+ content: "\e72a";
965
+ }
966
+ .ot-icon-won:before {
967
+ content: "\e72b";
968
+ }
969
+ .ot-icon-bitcoin:before {
970
+ content: "\e72c";
971
+ }
972
+ .ot-icon-file2:before {
973
+ content: "\e72d";
974
+ }
975
+ .ot-icon-file-text:before {
976
+ content: "\e72e";
977
+ }
978
+ .ot-icon-sort-by-alphabet:before {
979
+ content: "\e72f";
980
+ }
981
+ .ot-icon-sort-by-alphabet-alt:before {
982
+ content: "\e730";
983
+ }
984
+ .ot-icon-sort-by-attributes:before {
985
+ content: "\e731";
986
+ }
987
+ .ot-icon-sort-by-attributes-alt:before {
988
+ content: "\e732";
989
+ }
990
+ .ot-icon-sort-by-order:before {
991
+ content: "\e733";
992
+ }
993
+ .ot-icon-sort-by-order-alt:before {
994
+ content: "\e734";
995
+ }
996
+ .ot-icon-thumbs-up2:before {
997
+ content: "\e735";
998
+ }
999
+ .ot-icon-thumbs-down2:before {
1000
+ content: "\e736";
1001
+ }
1002
+ .ot-icon-youtube-sign:before {
1003
+ content: "\e737";
1004
+ }
1005
+ .ot-icon-youtube:before {
1006
+ content: "\e738";
1007
+ }
1008
+ .ot-icon-xing:before {
1009
+ content: "\e739";
1010
+ }
1011
+ .ot-icon-xing-sign:before {
1012
+ content: "\e73a";
1013
+ }
1014
+ .ot-icon-youtube-play:before {
1015
+ content: "\e73b";
1016
+ }
1017
+ .ot-icon-dropbox:before {
1018
+ content: "\e73c";
1019
+ }
1020
+ .ot-icon-stackexchange:before {
1021
+ content: "\e73d";
1022
+ }
1023
+ .ot-icon-instagram:before {
1024
+ content: "\e73e";
1025
+ }
1026
+ .ot-icon-flickr:before {
1027
+ content: "\e73f";
1028
+ }
1029
+ .ot-icon-adn:before {
1030
+ content: "\e740";
1031
+ }
1032
+ .ot-icon-bitbucket:before {
1033
+ content: "\e741";
1034
+ }
1035
+ .ot-icon-bitbucket-sign:before {
1036
+ content: "\e742";
1037
+ }
1038
+ .ot-icon-tumblr:before {
1039
+ content: "\e743";
1040
+ }
1041
+ .ot-icon-tumblr-sign:before {
1042
+ content: "\e744";
1043
+ }
1044
+ .ot-icon-long-arrow-down:before {
1045
+ content: "\e770";
1046
+ }
1047
+ .ot-icon-long-arrow-up:before {
1048
+ content: "\e771";
1049
+ }
1050
+ .ot-icon-long-arrow-left:before {
1051
+ content: "\e772";
1052
+ }
1053
+ .ot-icon-long-arrow-right:before {
1054
+ content: "\e773";
1055
+ }
1056
+ .ot-icon-apple:before {
1057
+ content: "\e745";
1058
+ }
1059
+ .ot-icon-windows:before {
1060
+ content: "\e746";
1061
+ }
1062
+ .ot-icon-android:before {
1063
+ content: "\e747";
1064
+ }
1065
+ .ot-icon-linux:before {
1066
+ content: "\e748";
1067
+ }
1068
+ .ot-icon-dribbble:before {
1069
+ content: "\e749";
1070
+ }
1071
+ .ot-icon-skype:before {
1072
+ content: "\e74a";
1073
+ }
1074
+ .ot-icon-foursquare:before {
1075
+ content: "\e74b";
1076
+ }
1077
+ .ot-icon-trello:before {
1078
+ content: "\e74c";
1079
+ }
1080
+ .ot-icon-female:before {
1081
+ content: "\e74d";
1082
+ }
1083
+ .ot-icon-male:before {
1084
+ content: "\e74e";
1085
+ }
1086
+ .ot-icon-gittip:before {
1087
+ content: "\e74f";
1088
+ }
1089
+ .ot-icon-sun:before {
1090
+ content: "\e750";
1091
+ }
1092
+ .ot-icon-moon:before {
1093
+ content: "\e751";
1094
+ }
1095
+ .ot-icon-archive:before {
1096
+ content: "\e752";
1097
+ }
1098
+ .ot-icon-bug:before {
1099
+ content: "\e753";
1100
+ }
1101
+ .ot-icon-vk:before {
1102
+ content: "\e754";
1103
+ }
1104
+ .ot-icon-weibo:before {
1105
+ content: "\e755";
1106
+ }
1107
+ .ot-icon-renren:before {
1108
+ content: "\e756";
1109
+ }
1110
+
1111
+ /* --------------------------------------------------
1112
+ :: Screen Meta & Menu Icon
1113
+ ---------------------------------------------------*/
1114
+ .appearance_page_ot-theme-options #screen-meta {
1115
+ margin-right: 20px;
1116
+ margin-left: 2px;
1117
+ min-width: 533px;
1118
+ }
1119
+
1120
+ /* --------------------------------------------------
1121
+ :: Messages
1122
+ ---------------------------------------------------*/
1123
+ .wrap.settings-wrap div.error,
1124
+ .wrap.settings-wrap div.updated {
1125
+ margin: 9px 5px 0px 2px !important;
1126
+ }
1127
+
1128
+ /* --------------------------------------------------
1129
+ :: OptionTree Wrappers
1130
+ ---------------------------------------------------*/
1131
+ #option-tree-settings-api .metabox-holder {
1132
+ overflow: hidden;
1133
+ }
1134
+ #option-tree-settings-api .postbox {
1135
+ background: #fff;
1136
+ border: none;
1137
+ margin: 0 20px;
1138
+ }
1139
+ #option-tree-settings-api .inside {
1140
+ margin: 0px !important;
1141
+ padding: 0px !important;
1142
+ }
1143
+ #option-tree-settings-api > .ui-tabs {
1144
+ background: #fff;
1145
+ border: 1px solid #ccc;
1146
+ border-top: none;
1147
+ margin: 0px 5px 0 2px;
1148
+ min-width: 533px;
1149
+ padding-bottom: 5px;
1150
+ position: relative;
1151
+ -webkit-box-shadow: inset 146px 0 0 #f1f1f1, inset 147px 0 0 #ccc, 0 1px 3px rgba(0,0,0,0.05);
1152
+ -moz-box-shadow: inset 146px 0 0 #f1f1f1, inset 147px 0 0 #ccc, 0 1px 3px rgba(0,0,0,0.05);
1153
+ box-shadow: inset 146px 0 0 #f1f1f1, inset 147px 0 0 #ccc, 0 1px 3px rgba(0,0,0,0.05);
1154
+ -webkit-border-radius: 0 0 2px 2px;
1155
+ -moz-border-radius: 0 0 2px 2px;
1156
+ border-radius: 0 0 2px 2px;
1157
+ }
1158
+
1159
+ /* --------------------------------------------------
1160
+ :: Header
1161
+ ---------------------------------------------------*/
1162
+ #option-tree-header-wrap {
1163
+ position: relative;
1164
+ }
1165
+ #option-tree-header {
1166
+ background: #333;
1167
+ color: #bbb;
1168
+ display: block;
1169
+ margin: 11px 5px 0 2px;
1170
+ min-width: 535px;
1171
+ overflow: hidden;
1172
+ position: relative;
1173
+ -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
1174
+ -moz-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
1175
+ box-shadow: 0 1px 3px rgba(0,0,0,0.05);
1176
+ -webkit-border-radius: 2px 2px 0 0;
1177
+ -moz-border-radius: 2px 2px 0 0;
1178
+ border-radius: 2px 2px 0 0;
1179
+ }
1180
+ #option-tree-header li {
1181
+ display: block;
1182
+ float: left;
1183
+ margin: 0px;
1184
+ padding: 0px;
1185
+ }
1186
+ #option-tree-header li a {
1187
+ color: #999;
1188
+ text-decoration: none;
1189
+ -webkit-transition: none;
1190
+ -moz-transition: none;
1191
+ transition: none;
1192
+ }
1193
+ #option-tree-header li a:hover {
1194
+ color: #0074a2;
1195
+ }
1196
+ #option-tree-header #option-tree-logo a {
1197
+ border-right: 1px solid #000;
1198
+ float: left;
1199
+ height: 24px;
1200
+ padding: 3px 12px 3px 13px;
1201
+ width: 20px;
1202
+ }
1203
+ #option-tree-header li#option-tree-logo:hover {
1204
+ background-color: #222;
1205
+ color: #0074a2;
1206
+ -webkit-border-top-left-radius: 2px;
1207
+ -moz-border-radius-topleft: 2px;
1208
+ border-top-left-radius: 2px;
1209
+ }
1210
+ #option-tree-header li#option-tree-logo:hover a {
1211
+ border-right-color: #000;
1212
+ }
1213
+ #option-tree-header #option-tree-version span,
1214
+ #option-tree-header #theme-version span {
1215
+ border-left: 1px solid #444;
1216
+ display: block;
1217
+ float: left;
1218
+ height: 24px;
1219
+ line-height: 24px;
1220
+ padding: 3px 12px 3px 12px;
1221
+ }
1222
+ #option-tree-header #theme-version:before {
1223
+ border-right: 1px solid #000;
1224
+ content: "";
1225
+ display: block;
1226
+ float: left;
1227
+ height: 30px;
1228
+ }
1229
+ /* light */
1230
+ .admin-color-light #option-tree-header {
1231
+ background: #888;
1232
+ color: #fff;
1233
+ }
1234
+ .admin-color-light #option-tree-header li a {
1235
+ color: #ccc;
1236
+ }
1237
+ .admin-color-light #option-tree-header li a:hover {
1238
+ color: #eee;
1239
+ }
1240
+ .admin-color-light #option-tree-header #option-tree-logo a,
1241
+ .admin-color-light #option-tree-header #theme-version:before {
1242
+ border-right-color: #3c3c3c;
1243
+ }
1244
+ .admin-color-light #option-tree-header li#option-tree-logo:hover {
1245
+ background-color: #777;
1246
+ }
1247
+ .admin-color-light #option-tree-header li#option-tree-logo:hover a {
1248
+ border-right-color: #3c3c3c;
1249
+ }
1250
+ .admin-color-light #option-tree-header #option-tree-version span,
1251
+ .admin-color-light #option-tree-header #theme-version span {
1252
+ border-left-color: #999;
1253
+ }
1254
+ /* blue */
1255
+ .admin-color-blue #option-tree-header {
1256
+ background: #52accc;
1257
+ color: #fff;
1258
+ }
1259
+ .admin-color-blue #option-tree-header li a {
1260
+ color: #e2f8ff;
1261
+ }
1262
+ .admin-color-blue #option-tree-header li a:hover {
1263
+ color: #fff;
1264
+ }
1265
+ .admin-color-blue #option-tree-header #option-tree-logo a,
1266
+ .admin-color-blue #option-tree-header #theme-version:before {
1267
+ border-right-color: #002b39;
1268
+ }
1269
+ .admin-color-blue #option-tree-header li#option-tree-logo:hover {
1270
+ background-color: #006484;
1271
+ }
1272
+ .admin-color-blue #option-tree-header li#option-tree-logo:hover a {
1273
+ border-right-color: #002b39;
1274
+ }
1275
+ .admin-color-blue #option-tree-header #option-tree-version span,
1276
+ .admin-color-blue #option-tree-header #theme-version span {
1277
+ border-left-color: #5dc2e6;
1278
+ }
1279
+ /* coffee */
1280
+ .admin-color-coffee #option-tree-header {
1281
+ background: #59524c;
1282
+ color: #c7cbc9;
1283
+ }
1284
+ .admin-color-coffee #option-tree-header li a {
1285
+ color: #f3f2f1;
1286
+ }
1287
+ .admin-color-coffee #option-tree-header li a:hover {
1288
+ color: #fff;
1289
+ }
1290
+ .admin-color-coffee #option-tree-header #option-tree-logo a,
1291
+ .admin-color-coffee #option-tree-header #theme-version:before {
1292
+ border-right-color: #0f0e0d;
1293
+ }
1294
+ .admin-color-coffee #option-tree-header li#option-tree-logo:hover {
1295
+ background-color: #cca588;
1296
+ }
1297
+ .admin-color-coffee #option-tree-header li#option-tree-logo:hover a {
1298
+ border-right-color: #0f0e0d;
1299
+ }
1300
+ .admin-color-coffee #option-tree-header #option-tree-version span,
1301
+ .admin-color-coffee #option-tree-header #theme-version span {
1302
+ border-left-color: #675f58;
1303
+ }
1304
+ /* ectoplasm */
1305
+ .admin-color-ectoplasm #option-tree-header {
1306
+ background: #523f6d;
1307
+ color: #c6c6d3;
1308
+ }
1309
+ .admin-color-ectoplasm #option-tree-header li a {
1310
+ color: #f3f2f1;
1311
+ }
1312
+ .admin-color-ectoplasm #option-tree-header li a:hover {
1313
+ color: #fff;
1314
+ }
1315
+ .admin-color-ectoplasm #option-tree-header #option-tree-logo a,
1316
+ .admin-color-ectoplasm #option-tree-header #theme-version:before {
1317
+ border-right-color: #181220;
1318
+ }
1319
+ .admin-color-ectoplasm #option-tree-header li#option-tree-logo:hover {
1320
+ background-color: #a3b542;
1321
+ }
1322
+ .admin-color-ectoplasm #option-tree-header li#option-tree-logo:hover a {
1323
+ border-right-color: #181220;
1324
+ }
1325
+ .admin-color-ectoplasm #option-tree-header #option-tree-version span,
1326
+ .admin-color-ectoplasm #option-tree-header #theme-version span {
1327
+ border-left-color: #644d85;
1328
+ }
1329
+ /* midnight */
1330
+ .admin-color-midnight #option-tree-header {
1331
+ background: #363b3f;
1332
+ color: #f1f2f3;
1333
+ }
1334
+ .admin-color-midnight #option-tree-header li a {
1335
+ color: #f1f2f3;
1336
+ }
1337
+ .admin-color-midnight #option-tree-header li a:hover {
1338
+ color: #fff;
1339
+ }
1340
+ .admin-color-midnight #option-tree-header #option-tree-logo a,
1341
+ .admin-color-midnight #option-tree-header #theme-version:before {
1342
+ border-right-color: #090a0b;
1343
+ }
1344
+ .admin-color-midnight #option-tree-header li#option-tree-logo:hover {
1345
+ background-color: #ed543f;
1346
+ }
1347
+ .admin-color-midnight #option-tree-header li#option-tree-logo:hover a {
1348
+ border-right-color: #090a0b;
1349
+ }
1350
+ .admin-color-midnight #option-tree-header #option-tree-version span,
1351
+ .admin-color-midnight #option-tree-header #theme-version span {
1352
+ border-left-color: #4c5359;
1353
+ }
1354
+ /* ocean */
1355
+ .admin-color-ocean #option-tree-header {
1356
+ background: #738e96;
1357
+ color: #f1fcff;
1358
+ }
1359
+ .admin-color-ocean #option-tree-header li a {
1360
+ color: #f1fcff;
1361
+ }
1362
+ .admin-color-ocean #option-tree-header li a:hover {
1363
+ color: #fff;
1364
+ }
1365
+ .admin-color-ocean #option-tree-header #option-tree-logo a,
1366
+ .admin-color-ocean #option-tree-header #theme-version:before {
1367
+ border-right-color: #39464a;
1368
+ }
1369
+ .admin-color-ocean #option-tree-header li#option-tree-logo:hover {
1370
+ background-color: #9ab8a0;
1371
+ }
1372
+ .admin-color-ocean #option-tree-header li#option-tree-logo:hover a {
1373
+ border-right-color: #39464a;
1374
+ }
1375
+ .admin-color-ocean #option-tree-header #option-tree-version span,
1376
+ .admin-color-ocean #option-tree-header #theme-version span {
1377
+ border-left-color: #87a6af;
1378
+ }
1379
+ /* sunrise */
1380
+ .admin-color-sunrise #option-tree-header {
1381
+ background: #da4f41;
1382
+ color: #fff;
1383
+ }
1384
+ .admin-color-sunrise #option-tree-header li a {
1385
+ color: #f3f1f1;
1386
+ }
1387
+ .admin-color-sunrise #option-tree-header li a:hover {
1388
+ color: #fff;
1389
+ }
1390
+ .admin-color-sunrise #option-tree-header #option-tree-logo a,
1391
+ .admin-color-sunrise #option-tree-header #theme-version:before {
1392
+ border-right-color: #8a322a;
1393
+ }
1394
+ .admin-color-sunrise #option-tree-header li#option-tree-logo:hover {
1395
+ background-color: #e88436;
1396
+ }
1397
+ .admin-color-sunrise #option-tree-header li#option-tree-logo:hover a {
1398
+ border-right-color: #8a322a;
1399
+ }
1400
+ .admin-color-sunrise #option-tree-header #option-tree-version span,
1401
+ .admin-color-sunrise #option-tree-header #theme-version span {
1402
+ border-left-color: #e75546;
1403
+ }
1404
+
1405
+ /* --------------------------------------------------
1406
+ :: Sub Header
1407
+ ---------------------------------------------------*/
1408
+ #option-tree-sub-header {
1409
+ background: #fafafa;
1410
+ border: 1px solid #ccc;
1411
+ border-top: none;
1412
+ display: block;
1413
+ margin: 0 5px 0 2px;
1414
+ min-width: 523px;
1415
+ overflow: hidden;
1416
+ padding: 5px;
1417
+ position: relative;
1418
+ -webkit-box-shadow: inset 0 1px 0 #fff, 0 1px 3px rgba(0,0,0,0.05);
1419
+ -moz-box-shadow: inset 0 1px 0 #fff, 0 1px 3px rgba(0,0,0,0.05);
1420
+ box-shadow: inset 0 1px 0 #fff, 0 1px 3px rgba(0,0,0,0.05);
1421
+ }
1422
+
1423
+ /* --------------------------------------------------
1424
+ :: Tabs
1425
+ ---------------------------------------------------*/
1426
+ .wrap.settings-wrap .ui-tabs-nav {
1427
+ float: left;
1428
+ list-style: none;
1429
+ margin: 0 0 0 -4px;
1430
+ padding: 1em 0;
1431
+ width: 151px;
1432
+ }
1433
+ .wrap.settings-wrap .ui-tabs-nav li {
1434
+ border: 1px solid transparent;
1435
+ border-right-width: 0px;
1436
+ display: block; margin: 0;
1437
+ -webkit-border-radius: 2px 0 0 2px;
1438
+ -moz-border-radius: 2px 0 0 2px;
1439
+ border-radius: 2px 0 0 2px;
1440
+ }
1441
+ .wrap.settings-wrap .ui-tabs-nav li.ui-state-active {
1442
+ background: #fff;
1443
+ border-color: #ccc;
1444
+ color: #000;
1445
+ }
1446
+ .wrap.settings-wrap .ui-tabs-nav li a {
1447
+ color: #21759b;
1448
+ display: block;
1449
+ line-height: 18px;
1450
+ padding: 5px 5px 5px 12px;
1451
+ text-decoration: none;
1452
+ }
1453
+ .wrap.settings-wrap .ui-tabs-nav li a:hover,
1454
+ .wrap.settings-wrap .ui-tabs-nav li.ui-state-active a {
1455
+ color: #000;
1456
+ outline: none;
1457
+ }
1458
+ .wrap.settings-wrap .ui-tabs-panel {
1459
+ clear: both;
1460
+ }
1461
+
1462
+ /* --------------------------------------------------
1463
+ :: Format Settings
1464
+ ---------------------------------------------------*/
1465
+ .format-settings {
1466
+ position: relative;
1467
+ width: 100%;
1468
+ }
1469
+ .format-setting-wrap {
1470
+ padding: 10px 0 20px 0;
1471
+ }
1472
+
1473
+ /* --------------------------------------------------
1474
+ :: Format Setting Label
1475
+ ---------------------------------------------------*/
1476
+ .format-setting-label {
1477
+ border-bottom: 1px dashed #ccc;
1478
+ margin: 0 0 20px 0;
1479
+ padding: 5px 0px 1px 0px;
1480
+ width: 100%;
1481
+ }
1482
+ #option-tree-settings-api .description h3,
1483
+ #option-tree-settings-api .format-setting-label .label,
1484
+ .metabox-holder .format-setting-label .label {
1485
+ background: none;
1486
+ border: none;
1487
+ color: #222;
1488
+ cursor: text;
1489
+ display: block;
1490
+ font-size: 1.3em;
1491
+ font-weight: 500;
1492
+ line-height: 1.6em;
1493
+ letter-spacing: 0;
1494
+ padding: 0 0 9px 0;
1495
+ -webkit-user-select: text;
1496
+ text-shadow: none;
1497
+ }
1498
+
1499
+ /* --------------------------------------------------
1500
+ :: Format Setting
1501
+ ---------------------------------------------------*/
1502
+ .format-setting {
1503
+ overflow: hidden;
1504
+ position: relative;
1505
+ width: 100%;
1506
+ }
1507
+ .format-setting .format-setting-inner {
1508
+ float: left;
1509
+ position: relative;
1510
+ width: 63%;
1511
+ }
1512
+ .format-setting.no-desc .format-setting-inner,
1513
+ .format-setting.wide-desc .format-setting-inner,
1514
+ .option-tree-list-item .format-setting-inner {
1515
+ width: 100%;
1516
+ }
1517
+ .format-setting .description {
1518
+ float: right;
1519
+ padding: 5px 0;
1520
+ width: 35%;
1521
+ }
1522
+ .format-setting.no-desc .description,
1523
+ .format-setting.wide-desc .description,
1524
+ .option-tree-list-item .description {
1525
+ float: none;
1526
+ width: 100%;
1527
+ }
1528
+ .list-item-description {
1529
+ padding-top: 10px;
1530
+ }
1531
+ #option-tree-settings-api h4 {
1532
+ color: #333;
1533
+ font-size: 1.2em;
1534
+ font-weight: 500;
1535
+ line-height: 1.5em;
1536
+ margin: 1em 0 0.5em 0;
1537
+ padding: 0;
1538
+ }
1539
+ #option-tree-settings-api h5 {
1540
+ color: #444;
1541
+ font-size: 1em;
1542
+ font-weight: 700;
1543
+ line-height: 1.2em;
1544
+ margin: 1em 0 0.5em 0;
1545
+ padding: 0;
1546
+ }
1547
+ #option-tree-settings-api p {
1548
+ margin: 0 0 1.5em 0 !important;
1549
+ }
1550
+ #post .format-setting-inner p {
1551
+ float: left;
1552
+ width: 100%;
1553
+ margin: 0 0 1.05em 0 !important;
1554
+ }
1555
+ .aside {
1556
+ border-bottom: 1px solid #eee;
1557
+ padding-bottom: 15px;
1558
+ margin-bottom: 15px;
1559
+ }
1560
+ .deprecated {
1561
+ border-bottom: 1px solid #eee;
1562
+ color: #b94029;
1563
+ padding-bottom: 15px;
1564
+ margin-bottom: 15px;
1565
+ }
1566
+ .warning {
1567
+ color: #b94029;
1568
+ }
1569
+ .docs-ul {
1570
+ line-height: 1.3em;
1571
+ margin: 0;
1572
+ padding: 0 0 1em 0;
1573
+ }
1574
+ .docs-ul li {
1575
+ list-style-type: square;
1576
+ margin-left: 20px;
1577
+ }
1578
+ #contextual-help-setting {
1579
+ float: left;
1580
+ padding: 10px 0 5px 0;
1581
+ width: 100%;
1582
+ }
1583
+ #contextual-help-label {
1584
+ float: left;
1585
+ padding-top: 20px;
1586
+ width: 100%;
1587
+ }
1588
+ #option_tree_settings_help {
1589
+ float: left;
1590
+ width: 100%;
1591
+ }
1592
+ #option-tree-settings-api blockquote {
1593
+ font-style: italic;
1594
+ padding-left: 15px;
1595
+ position: relative;
1596
+ }
1597
+ #option-tree-settings-api blockquote:before {
1598
+ color: #ccc;
1599
+ content: "\201C";
1600
+ display: block;
1601
+ font-size: 400%;
1602
+ font-style: normal;
1603
+ left: -10px;
1604
+ position: absolute;
1605
+ top: 10px;
1606
+ }
1607
+ @media only screen and (max-width: 1020px) {
1608
+ .format-setting .description,
1609
+ .format-setting .format-setting-inner {
1610
+ width: 100%;
1611
+ }
1612
+ .format-setting .description {
1613
+ padding-top: 0px;
1614
+ padding-bottom: 20px;
1615
+ }
1616
+ }
1617
+ .ot-background-group {
1618
+ overflow: hidden;
1619
+ width: auto;
1620
+ }
1621
+ .ot-background-size-input {
1622
+ max-width: 110px;
1623
+ }
1624
+ .option-tree-setting-edit,
1625
+ .option-tree-setting-remove {
1626
+ text-indent: -9999px;
1627
+ }
1628
+
1629
+ /* --------------------------------------------------
1630
+ :: Code formatting
1631
+ ---------------------------------------------------*/
1632
+ #option-tree-settings-api code,
1633
+ .ot-metabox-wrapper code {
1634
+ background-color: #f1f1f1;
1635
+ color: #333;
1636
+ font-size: 12px;
1637
+ }
1638
+ #option-tree-settings-api pre {
1639
+ font-size: 13px;
1640
+ padding: 0;
1641
+ margin: 1.5em 0;
1642
+ line-height: 18px;
1643
+ overflow: auto;
1644
+ overflow-Y: hidden;
1645
+ padding-top: 18px;
1646
+ background: #f1f1f1;
1647
+ border-bottom: 1px solid #f1f1f1;
1648
+ margin-bottom: 20px;
1649
+ color: #000;
1650
+ white-space: pre-wrap;
1651
+ word-wrap: break-word;
1652
+ }
1653
+ #option-tree-settings-api pre code {
1654
+ padding: 0 18px 18px 18px;
1655
+ display: block;
1656
+ background: url(../images/ot-pre-bg.gif) repeat left top;
1657
+ }
1658
+
1659
+ /* --------------------------------------------------
1660
+ :: Input & Upload
1661
+ ---------------------------------------------------*/
1662
+ input.option-tree-ui-upload-input,
1663
+ input.option-tree-ui-input {
1664
+ background: #fff;
1665
+ border: 1px solid #ccc !important;
1666
+ line-height: 17px;
1667
+ font-size: 12px;
1668
+ margin-bottom: 5px !important;
1669
+ padding: 7px 6px;
1670
+ position: relative;
1671
+ width: 100% !important;
1672
+ -webkit-border-radius: 2px;
1673
+ -moz-border-radius: 2px;
1674
+ border-radius: 2px;
1675
+ -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
1676
+ -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
1677
+ box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
1678
+ }
1679
+ input:hover.option-tree-ui-upload-input,
1680
+ input:hover.option-tree-ui-input {
1681
+ border-color: #bbb !important;
1682
+ -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
1683
+ -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
1684
+ box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
1685
+ }
1686
+ input:focus.option-tree-ui-upload-input,
1687
+ input:focus.option-tree-ui-input {
1688
+ border-color: #999 !important;
1689
+ }
1690
+
1691
+ @media screen and (-webkit-min-device-pixel-ratio:0) {
1692
+ .option-tree-ui-input,
1693
+ .option-tree-ui-upload-input {
1694
+ padding: 5px 6px !important;
1695
+ }
1696
+ }
1697
+
1698
+ /* --------------------------------------------------
1699
+ :: Upload
1700
+ ---------------------------------------------------*/
1701
+ div.option-tree-ui-media-wrap {
1702
+ margin: 0 55px 0 0;
1703
+ min-height: 35px;
1704
+ position: relative;
1705
+ }
1706
+ .option-tree-ui-media-wrap img {
1707
+ background: #fafafa;
1708
+ border: 1px solid #ccc;
1709
+ padding: 4px;
1710
+ display: block;
1711
+ float: left;
1712
+ max-width: 100%;
1713
+ height: auto;
1714
+ -ms-interpolation-mode: bicubic;
1715
+ -webkit-border-radius: 2px;
1716
+ -moz-border-radius: 2px;
1717
+ border-radius: 2px;
1718
+ }
1719
+ .option-tree-ui-upload-parent {
1720
+ width: auto !important;
1721
+ margin-right: 45px;
1722
+ padding: 0px;
1723
+ position: relative;
1724
+ }
1725
+ .ot_upload_media {
1726
+ top: 0px;
1727
+ margin: 0px !important;
1728
+ position: absolute;
1729
+ right: -45px;
1730
+ text-indent: -9999px;
1731
+ }
1732
+ .option-tree-ui-media-wrap a.option-tree-ui-remove-media {
1733
+ float: none !important;
1734
+ margin: 0px !important;
1735
+ position: absolute !important;
1736
+ right: -55px;
1737
+ text-indent: -9999px;
1738
+ top: 1px;
1739
+ }
1740
+
1741
+ /* --------------------------------------------------
1742
+ :: Textarea
1743
+ ---------------------------------------------------*/
1744
+ .fill-area .description,
1745
+ .fill-area .format-setting-inner {
1746
+ width: 100% !important;
1747
+ }
1748
+ .wp-editor-area {
1749
+ display: block;
1750
+ }
1751
+ .textarea,
1752
+ .ot-metabox-wrapper textarea {
1753
+ width: 99.9%;
1754
+ border: 1px solid #ccc;
1755
+ font-family: Consolas, Monaco, monospace;
1756
+ line-height: 150%;
1757
+ outline: 0;
1758
+ padding: 10px;
1759
+ resize: vertical;
1760
+ }
1761
+ #contextual-help-setting .textarea {
1762
+ width: 99.75%;
1763
+ }
1764
+ .ot-metabox-wrapper .wp-editor-container {
1765
+ border: none;
1766
+ }
1767
+ .textarea:hover,
1768
+ .ot-metabox-wrapper textarea:hover {
1769
+ border-color: #bbb !important;
1770
+ -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
1771
+ -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
1772
+ box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
1773
+ }
1774
+ .textarea:focus,
1775
+ .ot-metabox-wrapper textarea:focus {
1776
+ border-color: #999 !important;
1777
+ }
1778
+
1779
+ @media only screen and (max-width: 1105px) {
1780
+ .type-textarea .description, .type-textarea .format-setting-inner {
1781
+ width: 100%;
1782
+ }
1783
+ }
1784
+
1785
+ /* --------------------------------------------------
1786
+ :: Setting Item with Drag & Drop
1787
+ ---------------------------------------------------*/
1788
+ .option-tree-setting-wrap {
1789
+ margin-top: 0px;
1790
+ }
1791
+ .option-tree-setting-wrap li {
1792
+ margin: 5px 0px;
1793
+ }
1794
+ .option-tree-setting {
1795
+ border: 1px solid #ccc;
1796
+ overflow: hidden;
1797
+ position: relative;
1798
+ -webkit-border-radius: 2px;
1799
+ -moz-border-radius: 2px;
1800
+ border-radius: 2px;
1801
+ }
1802
+ .option-tree-setting:hover {
1803
+ border-color: #999;
1804
+ -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
1805
+ -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
1806
+ box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
1807
+ }
1808
+ .option-tree-setting a {
1809
+ text-decoration: none;
1810
+ }
1811
+ .option-tree-setting .open {
1812
+ background: #fafafa;
1813
+ cursor: move;
1814
+ line-height: 21px;
1815
+ height: 21px;
1816
+ padding: 10px 100px 10px 10px;
1817
+ display: block;
1818
+ }
1819
+ .ui-state-disabled .option-tree-setting .open {
1820
+ cursor: default;
1821
+ }
1822
+ .option-tree-setting .open:hover {
1823
+ background: #fafafa;
1824
+ }
1825
+ .option-tree-setting .open:hover:before {
1826
+ color: #999;
1827
+ content: "\e715";
1828
+ left: 4px;
1829
+ font-family: "option-tree-font";
1830
+ speak: none;
1831
+ font-size: 14px;
1832
+ font-style: normal;
1833
+ font-weight: normal;
1834
+ font-variant: normal;
1835
+ text-transform: none;
1836
+ line-height: 1;
1837
+ position: absolute;
1838
+ top: 14px;
1839
+ -webkit-font-smoothing: antialiased;
1840
+ -moz-osx-font-smoothing: grayscale;
1841
+ }
1842
+ .option-tree-setting.is-section .open:hover:before {
1843
+ color: #000;
1844
+ }
1845
+ .button-section {
1846
+ position: absolute;
1847
+ right: 0px;
1848
+ top: 1px;
1849
+ }
1850
+ .option-tree-setting.is-section {
1851
+ border: 1px solid #000;
1852
+ }
1853
+ .option-tree-setting.is-section .option-tree-setting-body,
1854
+ .option-tree-setting.is-section .option-tree-ui-button {
1855
+ border-right-color: #000 !important;
1856
+ }
1857
+ .option-tree-setting.is-section .open {
1858
+ background: #333;
1859
+ color: #bbb;
1860
+ }
1861
+ .format-setting .ui-sortable-helper .option-tree-setting .open {
1862
+ background: #fff;
1863
+ }
1864
+ .option-tree-setting.is-section .open:hover,
1865
+ .format-setting .ui-sortable-helper .option-tree-setting.is-section .open {
1866
+ background: #333;
1867
+ }
1868
+ /* light */
1869
+ .admin-color-light .option-tree-setting.is-section,
1870
+ .admin-color-light .option-tree-setting.is-section .option-tree-setting-body,
1871
+ .admin-color-light .option-tree-setting.is-section .option-tree-ui-button {
1872
+ border-color: #3c3c3c !important;
1873
+ }
1874
+ .admin-color-light .option-tree-setting.is-section .open:hover:before {
1875
+ color: #3c3c3c;
1876
+ }
1877
+ .admin-color-light .option-tree-setting.is-section .open {
1878
+ background: #888;
1879
+ color: #fff;
1880
+ }
1881
+ .admin-color-light .option-tree-setting.is-section .open:hover,
1882
+ .admin-color-light .format-setting .ui-sortable-helper .option-tree-setting.is-section .open {
1883
+ background: #888;
1884
+ }
1885
+ /* blue */
1886
+ .admin-color-blue .option-tree-setting.is-section,
1887
+ .admin-color-blue .option-tree-setting.is-section .option-tree-setting-body,
1888
+ .admin-color-blue .option-tree-setting.is-section .option-tree-ui-button {
1889
+ border-color: #002b39 !important;
1890
+ }
1891
+ .admin-color-blue .option-tree-setting.is-section .open:hover:before {
1892
+ color: #002b39;
1893
+ }
1894
+ .admin-color-blue .option-tree-setting.is-section .open {
1895
+ background: #52accc;
1896
+ color: #fff;
1897
+ }
1898
+ .admin-color-blue .option-tree-setting.is-section .open:hover,
1899
+ .admin-color-blue .format-setting .ui-sortable-helper .option-tree-setting.is-section .open {
1900
+ background: #52accc;
1901
+ }
1902
+ /* coffee */
1903
+ .admin-color-coffee .option-tree-setting.is-section,
1904
+ .admin-color-coffee .option-tree-setting.is-section .option-tree-setting-body,
1905
+ .admin-color-coffee .option-tree-setting.is-section .option-tree-ui-button {
1906
+ border-color: #0f0e0d !important;
1907
+ }
1908
+ .admin-color-coffee .option-tree-setting.is-section .open:hover:before {
1909
+ color: #0f0e0d;
1910
+ }
1911
+ .admin-color-coffee .option-tree-setting.is-section .open {
1912
+ background: #59524c;
1913
+ color: #c7cbc9;
1914
+ }
1915
+ .admin-color-coffee .option-tree-setting.is-section .open:hover,
1916
+ .admin-color-coffee .format-setting .ui-sortable-helper .option-tree-setting.is-section .open {
1917
+ background: #59524c;
1918
+ }
1919
+ /* ectoplasm */
1920
+ .admin-color-ectoplasm .option-tree-setting.is-section,
1921
+ .admin-color-ectoplasm .option-tree-setting.is-section .option-tree-setting-body,
1922
+ .admin-color-ectoplasm .option-tree-setting.is-section .option-tree-ui-button {
1923
+ border-color: #181220 !important;
1924
+ }
1925
+ .admin-color-ectoplasm .option-tree-setting.is-section .open:hover:before {
1926
+ color: #181220;
1927
+ }
1928
+ .admin-color-ectoplasm .option-tree-setting.is-section .open {
1929
+ background: #523f6d;
1930
+ color: #c6c6d3;
1931
+ }
1932
+ .admin-color-ectoplasm .option-tree-setting.is-section .open:hover,
1933
+ .admin-color-ectoplasm .format-setting .ui-sortable-helper .option-tree-setting.is-section .open {
1934
+ background: #523f6d;
1935
+ }
1936
+ /* midnight */
1937
+ .admin-color-midnight .option-tree-setting.is-section,
1938
+ .admin-color-midnight .option-tree-setting.is-section .option-tree-setting-body,
1939
+ .admin-color-midnight .option-tree-setting.is-section .option-tree-ui-button {
1940
+ border-color: #090a0b !important;
1941
+ }
1942
+ .admin-color-midnight .option-tree-setting.is-section .open:hover:before {
1943
+ color: #090a0b;
1944
+ }
1945
+ .admin-color-midnight .option-tree-setting.is-section .open {
1946
+ background: #363b3f;
1947
+ color: #f1f2f3;
1948
+ }
1949
+ .admin-color-midnight .option-tree-setting.is-section .open:hover,
1950
+ .admin-color-midnight .format-setting .ui-sortable-helper .option-tree-setting.is-section .open {
1951
+ background: #363b3f;
1952
+ }
1953
+ /* ocean */
1954
+ .admin-color-ocean .option-tree-setting.is-section,
1955
+ .admin-color-ocean .option-tree-setting.is-section .option-tree-setting-body,
1956
+ .admin-color-ocean .option-tree-setting.is-section .option-tree-ui-button {
1957
+ border-color: #39464a !important;
1958
+ }
1959
+ .admin-color-ocean .option-tree-setting.is-section .open:hover:before {
1960
+ color: #39464a;
1961
+ }
1962
+ .admin-color-ocean .option-tree-setting.is-section .open {
1963
+ background: #738e96;
1964
+ color: #f1fcff;
1965
+ }
1966
+ .admin-color-ocean .option-tree-setting.is-section .open:hover,
1967
+ .admin-color-ocean .format-setting .ui-sortable-helper .option-tree-setting.is-section .open {
1968
+ background: #738e96;
1969
+ }
1970
+ /* sunrise */
1971
+ .admin-color-sunrise .option-tree-setting.is-section,
1972
+ .admin-color-sunrise .option-tree-setting.is-section .option-tree-setting-body,
1973
+ .admin-color-sunrise .option-tree-setting.is-section .option-tree-ui-button {
1974
+ border-color: #8a322a !important;
1975
+ }
1976
+ .admin-color-sunrise .option-tree-setting.is-section .open:hover:before {
1977
+ color: #8a322a;
1978
+ }
1979
+ .admin-color-sunrise .option-tree-setting.is-section .open {
1980
+ background: #da4f41;
1981
+ color: #fff;
1982
+ }
1983
+ .admin-color-sunrise .option-tree-setting.is-section .open:hover,
1984
+ .admin-color-sunrise .format-setting .ui-sortable-helper .option-tree-setting.is-section .open {
1985
+ background: #da4f41;
1986
+ }
1987
+ .ui-state-highlight {
1988
+ border: 1px dashed #ccc;
1989
+ display: block;
1990
+ -webkit-border-radius: 2px;
1991
+ -moz-border-radius: 2px;
1992
+ border-radius: 2px;
1993
+ }
1994
+ .option-tree-setting-body {
1995
+ background: #fff;
1996
+ border-top: 1px solid #ccc;
1997
+ display: none;
1998
+ padding: 10px;
1999
+ -webkit-border-bottom-right-radius: 2px;
2000
+ -webkit-border-bottom-left-radius: 2px;
2001
+ -moz-border-radius-bottomright: 2px;
2002
+ -moz-border-radius-bottomleft: 2px;
2003
+ border-bottom-right-radius: 2px;
2004
+ border-bottom-left-radius: 2px;
2005
+ }
2006
+ li ul .format-setting-wrap {
2007
+ padding: 0 0 10px 0;
2008
+ }
2009
+ li ul .format-setting-label {
2010
+ border: none;
2011
+ padding: 0px;
2012
+ margin: 0px;
2013
+ }
2014
+
2015
+ /* --------------------------------------------------
2016
+ :: Layouts
2017
+ ---------------------------------------------------*/
2018
+ #option_tree_layouts {
2019
+ display: none;
2020
+ padding-top: 12px;
2021
+ }
2022
+ #option-tree-options-layouts-form {
2023
+ left: 13px;
2024
+ position: absolute;
2025
+ top: 30px;
2026
+ z-index: 10;
2027
+ }
2028
+ .option-tree-save-layout {
2029
+ float: left;
2030
+ padding: 10px 0;
2031
+ }
2032
+ .option-tree-save-layout.active-layout {
2033
+ padding-left: 10px;
2034
+ }
2035
+ .option-tree-save-layout .widefat {
2036
+ float: left;
2037
+ width: 128px !important;
2038
+ margin: 0;
2039
+ }
2040
+ .option-tree-active-layout {
2041
+ border-right: 1px solid #ccc;
2042
+ float: left;
2043
+ padding: 10px 10px 10px 0;
2044
+ min-width: 126px;
2045
+ }
2046
+ .button.save-layout {
2047
+ margin: 0 0 0 10px !important;
2048
+ }
2049
+ .option-tree-layout-activate {
2050
+ text-indent: -9999px;
2051
+ }
2052
+
2053
+ /* --------------------------------------------------
2054
+ :: Select
2055
+ ---------------------------------------------------*/
2056
+ .select-wrapper {
2057
+ background: #fff url(../images/ot-select.png) no-repeat right center;
2058
+ border: 1px solid #ccc;
2059
+ display: block;
2060
+ float: left;
2061
+ font-size: 12px;
2062
+ height: 27px;
2063
+ margin: 0 5px 5px 0;
2064
+ width: auto;
2065
+ -webkit-border-radius: 2px;
2066
+ -moz-border-radius: 2px;
2067
+ border-radius: 2px;
2068
+ -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
2069
+ -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
2070
+ box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
2071
+ }
2072
+ .select-wrapper:hover {
2073
+ background-image: url(../images/ot-select-hover.png);
2074
+ border-color: #999;
2075
+ }
2076
+ select.option-tree-ui-select {
2077
+ cursor: pointer;
2078
+ filter: alpha(opacity: 0);
2079
+ font-size: 14px;
2080
+ height: 29px;
2081
+ margin: 0;
2082
+ -moz-opacity: 0;
2083
+ opacity: 0;
2084
+ padding: 0 !important;
2085
+ position: relative;
2086
+ width: inherit;
2087
+ z-index: 4;
2088
+ min-width: 118px;
2089
+ }
2090
+
2091
+ select.option-tree-ui-select option {
2092
+ padding: 3px 15px !important;
2093
+ }
2094
+ .select-wrapper span {
2095
+ height: 27px;
2096
+ line-height: 27px;
2097
+ padding-left: 7px;
2098
+ position: absolute;
2099
+ z-index: 2;
2100
+ }
2101
+ #option-tree-options-layouts-form .select-wrapper {
2102
+ margin: 0px;
2103
+ }
2104
+ #option-tree-options-layouts-form select.option-tree-ui-select {
2105
+ min-width: 124px;
2106
+ }
2107
+ .type-measurement select.option-tree-ui-select {
2108
+ min-width: 73px !important;
2109
+ }
2110
+ .type-measurement .select-wrapper {
2111
+ margin-right: 0;
2112
+ position: absolute;
2113
+ right: 0px;
2114
+ top: 0px;
2115
+ }
2116
+
2117
+ /* FireFox */
2118
+ @-moz-document url-prefix() {
2119
+ #option-tree-options-layouts-form .select-wrapper {
2120
+ left: 250px;
2121
+ }
2122
+ }
2123
+
2124
+ /* Webkit */
2125
+ @media screen and (-webkit-min-device-pixel-ratio:0) {
2126
+ .select-wrapper span {
2127
+ height: 26px;
2128
+ line-height: 26px;
2129
+ }
2130
+ }
2131
+
2132
+ /* Opera 11 */
2133
+ @media not screen and (1) {
2134
+ .select-wrapper {
2135
+ height: 26px;
2136
+ }
2137
+ }
2138
+
2139
+ /* --------------------------------------------------
2140
+ :: Measurement
2141
+ ---------------------------------------------------*/
2142
+ .option-tree-ui-measurement-input-wrap {
2143
+ margin-right: 80px;
2144
+ }
2145
+
2146
+ /* --------------------------------------------------
2147
+ :: Checkbox & Radio
2148
+ ---------------------------------------------------*/
2149
+ .format-setting.type-checkbox input,
2150
+ .format-setting.type-radio input {
2151
+ float: left;
2152
+ margin: 2px 5px 0 1px;
2153
+ }
2154
+ .format-setting.type-checkbox label,
2155
+ .format-setting.type-radio label {
2156
+ float: left;
2157
+ max-width: 90%;
2158
+ padding: 0px;
2159
+ }
2160
+ #option-tree-settings-api .format-setting.type-checkbox p,
2161
+ #option-tree-settings-api .format-setting.type-radio p {
2162
+ float: left;
2163
+ margin: 0.5em 0 !important;
2164
+ width: 100%;
2165
+ }
2166
+
2167
+ /* --------------------------------------------------
2168
+ :: Radio Images
2169
+ ---------------------------------------------------*/
2170
+ .type-radio-image .option-tree-ui-radio-images {
2171
+ float: left;
2172
+ margin: 0 10px 10px 0px;
2173
+ }
2174
+ .type-radio-image .option-tree-ui-radio-images img {
2175
+ background: #fff;
2176
+ border: 1px solid #ccc;
2177
+ cursor: pointer;
2178
+ opacity: 0.8;
2179
+ padding: 5px;
2180
+ -webkit-border-radius: 2px;
2181
+ -moz-border-radius: 2px;
2182
+ border-radius: 2px;
2183
+ }
2184
+ .type-radio-image .option-tree-ui-radio-images img.option-tree-ui-radio-image-selected,
2185
+ .type-radio-image .option-tree-ui-radio-images img:hover {
2186
+ border-color: #464646;
2187
+ opacity: 1;
2188
+ -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
2189
+ -moz-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
2190
+ box-shadow: 0 1px 3px rgba(0,0,0,0.05);
2191
+ }
2192
+
2193
+ /* --------------------------------------------------
2194
+ :: Numeric Slider
2195
+ ---------------------------------------------------*/
2196
+ .type-numeric-slider .format-setting-inner {
2197
+ background: #fcfcfc;
2198
+ border: 1px solid #ccc;
2199
+ min-height: 41px;
2200
+ padding: 5px;
2201
+ -webkit-box-sizing: border-box;
2202
+ -moz-box-sizing: border-box;
2203
+ box-sizing: border-box;
2204
+ -webkit-border-radius: 2px;
2205
+ -moz-border-radius: 2px;
2206
+ border-radius: 2px;
2207
+ }
2208
+ .ot-numeric-slider-wrap {
2209
+ margin: 0 96px 0 0;
2210
+ }
2211
+ .ot-numeric-slider-wrap .ot-numeric-slider-helper-input {
2212
+ position: absolute;
2213
+ right: 5px;
2214
+ text-align: center;
2215
+ top: 5px;
2216
+ width: 90px !important;
2217
+ }
2218
+ .ot-numeric-slider.ui-slider {
2219
+ background: #fff;
2220
+ border: 1px solid #ccc;
2221
+ margin: 8px 8px 0 8px;
2222
+ position: relative;
2223
+ -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
2224
+ -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
2225
+ box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
2226
+ -webkit-border-radius: 2px;
2227
+ -moz-border-radius: 2px;
2228
+ border-radius: 2px;
2229
+ }
2230
+ .ot-numeric-slider.ui-slider-horizontal {
2231
+ height: 11px;
2232
+ }
2233
+ .ot-numeric-slider.ui-slider .ui-slider-handle {
2234
+ border: 1px solid #000;
2235
+ color: #555;
2236
+ cursor: pointer;
2237
+ display: block;
2238
+ height: 27px;
2239
+ margin: -9px -8px;
2240
+ outline: 0;
2241
+ position: absolute;
2242
+ width: 16px;
2243
+ -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 rgba(0,0,0,.08);
2244
+ -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 rgba(0,0,0,.08);
2245
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 rgba(0,0,0,.08);
2246
+ -webkit-border-radius: 2px;
2247
+ -moz-border-radius: 2px;
2248
+ border-radius: 2px;
2249
+ }
2250
+ /* default */
2251
+ .ot-numeric-slider.ui-slider .ui-slider-handle {
2252
+ background: #333;
2253
+ border-color: #000;
2254
+ }
2255
+ .ot-numeric-slider.ui-slider .ui-slider-handle:hover,
2256
+ .ot-numeric-slider.ui-slider .ui-slider-handle.ui-state-active {
2257
+ background: #444;
2258
+ border-color: #111;
2259
+ }
2260
+ /* light */
2261
+ .admin-color-light .ot-numeric-slider.ui-slider .ui-slider-handle {
2262
+ background: #888;
2263
+ border-color: #3c3c3c;
2264
+ }
2265
+ .admin-color-light .ot-numeric-slider.ui-slider .ui-slider-handle:hover,
2266
+ .admin-color-light .ot-numeric-slider.ui-slider .ui-slider-handle.ui-state-active {
2267
+ background: #999;
2268
+ border-color: #777;
2269
+ }
2270
+ /* blue */
2271
+ .admin-color-blue .ot-numeric-slider.ui-slider .ui-slider-handle {
2272
+ background: #52accc;
2273
+ border-color: #002b39;
2274
+ }
2275
+ .admin-color-blue .ot-numeric-slider.ui-slider .ui-slider-handle:hover,
2276
+ .admin-color-blue .ot-numeric-slider.ui-slider .ui-slider-handle.ui-state-active {
2277
+ background: #5dc2e6;
2278
+ border-color: #006484;
2279
+ }
2280
+ /* coffee */
2281
+ .admin-color-coffee .ot-numeric-slider.ui-slider .ui-slider-handle {
2282
+ background: #59524c;
2283
+ border-color: #0f0e0d;
2284
+ }
2285
+ .admin-color-coffee .ot-numeric-slider.ui-slider .ui-slider-handle:hover,
2286
+ .admin-color-coffee .ot-numeric-slider.ui-slider .ui-slider-handle.ui-state-active {
2287
+ background: #cca588;
2288
+ border-color: #675f58;
2289
+ }
2290
+ /* ectoplasm */
2291
+ .admin-color-ectoplasm .ot-numeric-slider.ui-slider .ui-slider-handle {
2292
+ background: #523f6d;
2293
+ border-color: #181220;
2294
+ }
2295
+ .admin-color-ectoplasm .ot-numeric-slider.ui-slider .ui-slider-handle:hover,
2296
+ .admin-color-ectoplasm .ot-numeric-slider.ui-slider .ui-slider-handle.ui-state-active {
2297
+ background: #a3b542;
2298
+ border-color: #644d85;
2299
+ }
2300
+ /* midnight */
2301
+ .admin-color-midnight .ot-numeric-slider.ui-slider .ui-slider-handle {
2302
+ background: #363b3f;
2303
+ border-color: #090a0b;
2304
+ }
2305
+ .admin-color-midnight .ot-numeric-slider.ui-slider .ui-slider-handle:hover,
2306
+ .admin-color-midnight .ot-numeric-slider.ui-slider .ui-slider-handle.ui-state-active {
2307
+ background: #ed543f;
2308
+ border-color: #a0382a;
2309
+ }
2310
+ /* ocean */
2311
+ .admin-color-ocean .ot-numeric-slider.ui-slider .ui-slider-handle {
2312
+ background: #738e96;
2313
+ border-color: #39464a;
2314
+ }
2315
+ .admin-color-ocean .ot-numeric-slider.ui-slider .ui-slider-handle:hover,
2316
+ .admin-color-ocean .ot-numeric-slider.ui-slider .ui-slider-handle.ui-state-active {
2317
+ background: #9ab8a0;
2318
+ border-color: #5a6c5e;
2319
+ }
2320
+ /* sunrise */
2321
+ .admin-color-sunrise .ot-numeric-slider.ui-slider .ui-slider-handle {
2322
+ background: #da4f41;
2323
+ border-color: #8a322a;
2324
+ }
2325
+ .admin-color-sunrise .ot-numeric-slider.ui-slider .ui-slider-handle:hover,
2326
+ .admin-color-sunrise .ot-numeric-slider.ui-slider .ui-slider-handle.ui-state-active {
2327
+ background: #e88436;
2328
+ border-color: #e75546;
2329
+ }
2330
+
2331
+ /* --------------------------------------------------
2332
+ :: Colorpicker
2333
+ ---------------------------------------------------*/
2334
+ .option-tree-ui-colorpicker-input-wrap {
2335
+ float: left;
2336
+ }
2337
+ .hide-color-picker {
2338
+ display: none;
2339
+ }
2340
+ .option-tree-ui-colorpicker-input-wrap .wp-color-picker,
2341
+ .option-tree-ui-colorpicker-input-wrap .wp-picker-default,
2342
+ .option-tree-ui-colorpicker-input-wrap .wp-picker-clear {
2343
+ border-color: #ccc;
2344
+ height: 29px !important;
2345
+ line-height: 27px !important;
2346
+ margin-top: 0px;
2347
+ -webkit-border-radius: 2px;
2348
+ -moz-border-radius: 2px;
2349
+ border-radius: 2px;
2350
+ -webkit-box-shadow: none;
2351
+ -moz-box-shadow: none;
2352
+ box-shadow: none;
2353
+ }
2354
+ .option-tree-ui-colorpicker-input-wrap .wp-color-result {
2355
+ height: 27px;
2356
+ outline: 0;
2357
+ margin: 0 5px 5px 0px;
2358
+ top: 0px;
2359
+ -webkit-box-shadow: none;
2360
+ -moz-box-shadow: none;
2361
+ box-shadow: none;
2362
+ }
2363
+ .option-tree-ui-colorpicker-input-wrap .wp-color-result:after {
2364
+ line-height: 27px;
2365
+ }
2366
+ .option-tree-ui-colorpicker-input-wrap .wp-picker-container .iris-picker {
2367
+ border-color: #ccc;
2368
+ margin: 0px 5px 5px 0;
2369
+ -webkit-border-radius: 2px;
2370
+ -moz-border-radius: 2px;
2371
+ border-radius: 2px;
2372
+ }
2373
+
2374
+ /* --------------------------------------------------
2375
+ :: OptionTree UI Buttons
2376
+ ---------------------------------------------------*/
2377
+ .option-tree-ui-button.button {
2378
+ float: left;
2379
+ font-size: 12px !important;
2380
+ line-height: 27px !important;
2381
+ height: 29px !important;
2382
+ margin: 5px;
2383
+ min-width: 40px;
2384
+ padding: 0 10px 1px !important;
2385
+ }
2386
+ .option-tree-ui-button:active,
2387
+ .option-tree-ui-button:hover,
2388
+ .option-tree-ui-button:focus {
2389
+ outline: 0;
2390
+ }
2391
+ .option-tree-ui-button.hidden {
2392
+ display: none;
2393
+ }
2394
+ .option-tree-ui-button.button-secondary {
2395
+ background: #b73b27;
2396
+ border-color: #7f291b;
2397
+ color: #fff;
2398
+ text-shadow: none;
2399
+ -webkit-box-shadow: inset 0 1px 0 rgba(229,134,119,0.5), 0 1px 0 rgba(0,0,0,.15);
2400
+ -moz-box-shadow: inset 0 1px 0 rgba(229,134,119,0.5), 0 1px 0 rgba(0,0,0,.15);
2401
+ box-shadow: inset 0 1px 0 rgba(229,134,119,0.5), 0 1px 0 rgba(0,0,0,.15);
2402
+ }
2403
+ .option-tree-ui-button.button-secondary.hover,
2404
+ .option-tree-ui-button.button-secondary:hover,
2405
+ .option-tree-ui-button.button-secondary.focus,
2406
+ .option-tree-ui-button.button-secondary:focus {
2407
+ background: #9b3221;
2408
+ border-color: #7f291b;
2409
+ color: #fff;
2410
+ -webkit-box-shadow: inset 0 1px 0 rgba(229,134,119,0.6);
2411
+ -moz-box-shadow: inset 0 1px 0 rgba(229,134,119,0.5), 0 1px 0 rgba(0,0,0,.15);
2412
+ box-shadow: inset 0 1px 0 rgba(229,134,119,0.6);
2413
+ }
2414
+ .option-tree-ui-button.button-secondary.focus,
2415
+ .option-tree-ui-button.button-secondary:focus {
2416
+ border-color: #4f160d;
2417
+ -webkit-box-shadow: inset 0 1px 0 rgba(229,134,119,0.6), 1px 1px 2px rgba(0,0,0,0.4);
2418
+ -moz-box-shadow: inset 0 1px 0 rgba(229,134,119,0.6), 1px 1px 2px rgba(0,0,0,0.4);
2419
+ box-shadow: inset 0 1px 0 rgba(229,134,119,0.6), 1px 1px 2px rgba(0,0,0,0.4);
2420
+ }
2421
+ .option-tree-ui-button.button-secondary.active,
2422
+ .option-tree-ui-button.button-secondary.active:hover,
2423
+ .option-tree-ui-button.button-secondary.active:focus,
2424
+ .option-tree-ui-button.button-secondary:active {
2425
+ background: #b73b27;
2426
+ border-color: #7f291b;
2427
+ color: rgba(255,255,255,0.95);
2428
+ -webkit-box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
2429
+ -moz-box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
2430
+ box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
2431
+ vertical-align: top;
2432
+ }
2433
+ .option-tree-ui-button.right {
2434
+ float: right;
2435
+ }
2436
+ .option-tree-ui-button.hug-left {
2437
+ margin-left: 0px;
2438
+ }
2439
+ .option-tree-ui-button.hug-right {
2440
+ margin-right: 0px;
2441
+ }
2442
+ .option-tree-ui-button.pad {
2443
+ padding: 0px 21px;
2444
+ }
2445
+ .option-tree-ui-button.left-item {
2446
+ margin: 5px 0 5px 5px;
2447
+ -webkit-border-top-right-radius: 0px;
2448
+ -webkit-border-bottom-right-radius: 0px;
2449
+ -moz-border-radius-topright: 0px;
2450
+ -moz-border-radius-bottomright: 0px;
2451
+ border-top-right-radius: 0px;
2452
+ border-bottom-right-radius: 0px;
2453
+ }
2454
+ .option-tree-ui-button.center-item {
2455
+ margin: 5px 0 5px -1px;
2456
+ -webkit-border-radius: 0px;
2457
+ -moz-border-radius: 0px;
2458
+ border-radius: 0px;
2459
+ }
2460
+ .option-tree-ui-button.right-item {
2461
+ margin: 5px 5px 5px -1px;
2462
+ -webkit-border-top-left-radius: 0px;
2463
+ -webkit-border-bottom-left-radius: 0px;
2464
+ -moz-border-radius-topleft: 0px;
2465
+ -moz-border-radius-bottomleft: 0px;
2466
+ border-top-left-radius: 0px;
2467
+ border-bottom-left-radius: 0px;
2468
+ }
2469
+ .option-tree-ui-buttons {
2470
+ background: #fff;
2471
+ border: 1px solid #ccc;
2472
+ margin: 11px 5px 0 2px;
2473
+ min-width: 523px;
2474
+ overflow: hidden;
2475
+ padding: 5px;
2476
+ position: relative;
2477
+ -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
2478
+ -moz-box-shadow: 0 1px 3px rgba(0,0,0,0.05);
2479
+ box-shadow: 0 1px 3px rgba(0,0,0,0.05);
2480
+ -webkit-border-radius: 2px;
2481
+ -moz-border-radius: 2px;
2482
+ border-radius: 2px;
2483
+ }
2484
+ .option-tree-ui-buttons.alt {
2485
+ background: #f5f5f5;
2486
+ border-color: #dfdfdf;
2487
+ }
2488
+ .option-tree-ui-buttons:before,
2489
+ .option-tree-ui-buttons:after {
2490
+ content: "\0020";
2491
+ display: block;
2492
+ height: 0;
2493
+ visibility: hidden;
2494
+ }
2495
+ .option-tree-ui-buttons:after {
2496
+ clear: both;
2497
+ }
2498
+ .option-tree-ui-buttons {
2499
+ zoom: 1;
2500
+ }
2501
+ button.reset-settings {
2502
+ position: relative;
2503
+ top: -45px;
2504
+ left: 8px;
2505
+ }
2506
+
2507
+ /* --------------------------------------------------
2508
+ :: OptionTree UI Button Icons
2509
+ ---------------------------------------------------*/
2510
+ .option-tree-ui-button .icon {
2511
+ color: #3a3a3a;
2512
+ display: inline-block;
2513
+ float: left;
2514
+ font-size: 20px;
2515
+ height: 20px;
2516
+ margin-top: 3px;
2517
+ opacity: 0.9;
2518
+ overflow: hidden;
2519
+ text-align: center;
2520
+ text-indent: 0;
2521
+ width: 18px;
2522
+ }
2523
+ button.option-tree-ui-button .icon {
2524
+ margin-top: -3px;
2525
+ }
2526
+ .option-tree-ui-button.light .icon {
2527
+ color: #fff;
2528
+ opacity: 0.9;
2529
+ }
2530
+ .option-tree-ui-button.active .icon,
2531
+ .option-tree-ui-button:hover .icon {
2532
+ opacity: 1;
2533
+ }
2534
+ .option-tree-ui-button .icon.right-label {
2535
+ margin-right: 10px;
2536
+ }
2537
+ .option-tree-ui-button .icon.left-label {
2538
+ margin-left: 10px;
2539
+ float: right;
2540
+ }
2541
+ .option-tree-ui-button .upload {
2542
+ background-position: -0px -0px;
2543
+ }
2544
+ .option-tree-ui-button .trash-can {
2545
+ background-position: -18px -0px;
2546
+ }
2547
+ .option-tree-ui-button .pencil,
2548
+ .option-tree-ui-button .check {
2549
+ background-position: -36px -0px;
2550
+ }
2551
+ .option-tree-ui-button:hover .pencil,
2552
+ .option-tree-ui-button:hover .check,
2553
+ .option-tree-ui-button.active .pencil,
2554
+ .option-tree-ui-button.active .check {
2555
+ background-position: -54px -0px;
2556
+ }
2557
+
2558
+ /* --------------------------------------------------
2559
+ :: WP 3.8 Fixes (via Github @AlxMedia)
2560
+ ---------------------------------------------------*/
2561
+ #option-tree-settings-api #poststuff,
2562
+ #option-tree-settings-api #post-body-content {
2563
+ min-width: 0;
2564
+ }
2565
+ #option-tree-settings-api #poststuff h3 {
2566
+ font-family: inherit !important;
2567
+ }
2568
+ #option-tree-settings-api .postbox {
2569
+ -webkit-box-shadow: none;
2570
+ -moz-box-shadow: none;
2571
+ box-shadow: none;
2572
+ }
2573
+ #option-tree-settings-api p input[type="checkbox"],
2574
+ #option-tree-settings-api p input[type="radio"] {
2575
+ margin-top: 2px;
2576
+ }
2577
+ #option-tree-settings-api .format-setting.type-checkbox p,
2578
+ #option-tree-settings-api .format-setting.type-radio p {
2579
+ margin: 0.3em 0 !important;
2580
+ }
2581
+ input.option-tree-ui-upload-input,
2582
+ input.option-tree-ui-input {
2583
+ padding-top: 5px;
2584
+ padding-bottom: 5px;
2585
+ }
2586
+ @media screen and ( max-width: 782px ) {
2587
+ #option-tree-settings-api p input[type="checkbox"],
2588
+ #option-tree-settings-api p input[type="radio"] {
2589
+ margin-top: -3px;
2590
+ }
2591
+ }
2592
+
2593
+ /* --------------------------------------------------
2594
+ :: Gallery
2595
+ ---------------------------------------------------*/
2596
+ ul.ot-gallery-list {
2597
+ float: left;
2598
+ margin: 0;
2599
+ width: 100%;
2600
+ }
2601
+ ul.ot-gallery-list li {
2602
+ background: none repeat scroll 0 0 white;
2603
+ border: 1px solid #bbb;
2604
+ float: left;
2605
+ margin: 0px 10px 10px 0;
2606
+ padding: 4px;
2607
+ -webkit-border-radius: 2px;
2608
+ -moz-border-radius: 2px;
2609
+ border-radius: 2px;
2610
+ }
2611
+ ul.ot-gallery-list li img {
2612
+ display: block;
2613
+ margin: 0;
2614
+ }
2615
+
2616
+ .ot-gallery-buttons {
2617
+ float: left;
2618
+ width: 100%;
2619
+ }
2620
+ .ot-gallery-buttons a.option-tree-ui-button {
2621
+ margin-top: 0px;
2622
+ margin-bottom: 0px;
2623
+ }
2624
+
2625
+ /* --------------------------------------------------
2626
+ :: On/Off Switch
2627
+ ---------------------------------------------------*/
2628
+ .on-off-switch .slide-button {
2629
+ display: none;
2630
+ }
2631
+ @media only screen {
2632
+ .on-off-switch {
2633
+ background-color: #fff;
2634
+ border: 1px solid #ccc;
2635
+ color: #333;
2636
+ display: block;
2637
+ font-size: 12px;
2638
+ font-weight: normal;
2639
+ height: 27px;
2640
+ margin: 2px 1px;
2641
+ position: relative;
2642
+ padding: 0;
2643
+ text-align: center;
2644
+ text-transform: uppercase;
2645
+ width: 100px;
2646
+ -webkit-border-radius: 2px;
2647
+ -moz-border-radius: 2px;
2648
+ border-radius: 2px;
2649
+ -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
2650
+ -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
2651
+ box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.05);
2652
+ }
2653
+ .on-off-switch * {
2654
+ -webkit-box-sizing: border-box;
2655
+ -moz-box-sizing: border-box;
2656
+ box-sizing: border-box;
2657
+ }
2658
+ .on-off-switch input {
2659
+ position: absolute;
2660
+ opacity: 0;
2661
+ }
2662
+ .on-off-switch label {
2663
+ cursor: pointer;
2664
+ float: left;
2665
+ height: 27px;
2666
+ line-height: 27px;
2667
+ margin: 0;
2668
+ position: relative;
2669
+ text-align: center;
2670
+ vertical-align: middle;
2671
+ width: 50px;
2672
+ z-index: 2;
2673
+ }
2674
+ .on-off-switch input:last-of-type + label {
2675
+ color: #333;
2676
+ }
2677
+ .on-off-switch input:checked + label {
2678
+ color: #333;
2679
+ }
2680
+ .on-off-switch input:last-of-type:checked + label {
2681
+ color: #fff;
2682
+ }
2683
+ .on-off-switch input:focus + label {
2684
+ outline: none;
2685
+ }
2686
+ .on-off-switch .slide-button {
2687
+ background: #b2d27e;
2688
+ border: 1px solid #7c9258;
2689
+ display: block;
2690
+ height: 29px;
2691
+ left: -1px;
2692
+ padding: 0;
2693
+ position: absolute;
2694
+ text-decoration: none;
2695
+ top: -1px;
2696
+ width: 51px;
2697
+ z-index: 1;
2698
+ -webkit-border-radius: 2px;
2699
+ -moz-border-radius: 2px;
2700
+ border-radius: 2px;
2701
+ -webkit-box-shadow: inset 0 1px 0 #c8eb8e, 0 1px 0 rgba(0,0,0,.08);
2702
+ -moz-box-shadow: inset 0 1px 0 #c8eb8e, 0 1px 0 rgba(0,0,0,.08);
2703
+ box-shadow: inset 0 1px 0 #c8eb8e, 0 1px 0 rgba(0,0,0,.08);
2704
+ -webkit-transition: all 0.2s ease-out;
2705
+ -moz-transition: all 0.2s ease-out;
2706
+ transition: all 0.2s ease-out;
2707
+ }
2708
+ .on-off-switch input:last-of-type:checked ~ .slide-button {
2709
+ background: #b73b27;
2710
+ border-color: #7f291b;
2711
+ color: #fff;
2712
+ left: 50px;
2713
+ -webkit-box-shadow: inset 0 1px 0 rgba(229,134,119,0.6), 0 1px 0 rgba(0,0,0,.15);
2714
+ -moz-box-shadow: inset 0 1px 0 rgba(229,134,119,0.6), 0 1px 0 rgba(0,0,0,.15);
2715
+ box-shadow: inset 0 1px 0 rgba(229,134,119,0.6), 0 1px 0 rgba(0,0,0,.15);
2716
+ }
2717
+ }
2718
+ @media only screen and (-webkit-max-device-pixel-ratio: 2) and (max-device-width: 1280px) {
2719
+ .on-off-switch {
2720
+ -webkit-animation: webkitSiblingBugfix infinite 1s;
2721
+ }
2722
+ }
2723
+ @-webkit-keyframes webkitSiblingBugfix {
2724
+ from {
2725
+ -webkit-transform: translate3d(0, 0, 0);
2726
+ }
2727
+ to {
2728
+ -webkit-transform: translate3d(0, 0, 0);
2729
+ }
2730
+ }
2731
+
2732
+ /* --------------------------------------------------
2733
+ :: Simple Input Append & Prepend
2734
+ ---------------------------------------------------*/
2735
+ .ot-input-append,
2736
+ .ot-input-prepend {
2737
+ display: inline-block;
2738
+ vertical-align: middle;
2739
+ font-size: 0;
2740
+ white-space: nowrap;
2741
+ }
2742
+ .ot-input-append input {
2743
+ position: relative;
2744
+ margin-bottom: 0;
2745
+ *margin-left: 0;
2746
+ vertical-align: top;
2747
+ -webkit-border-radius: 0 2px 2px 0;
2748
+ -moz-border-radius: 0 2px 2px 0;
2749
+ border-radius: 0 2px 2px 0;
2750
+ }
2751
+ .ot-input-append input:focus,
2752
+ .ot-input-prepend input:focus {
2753
+ z-index: 2;
2754
+ }
2755
+ .ot-input-append .ot-add-on,
2756
+ .ot-input-prepend .ot-add-on {
2757
+ display: inline-block;
2758
+ width: auto;
2759
+ height: 27px;
2760
+ line-height: 28px;
2761
+ min-width: 16px;
2762
+ padding: 0 6px;
2763
+ font-size: 16px;
2764
+ font-weight: normal;
2765
+ text-align: center;
2766
+ text-shadow: 0 1px 0 white;
2767
+ background-color: #f7f7f7;
2768
+ border: 1px solid #ccc;
2769
+ }
2770
+ .ot-input-prepend input {
2771
+ border-left: 0 !important;
2772
+ }
2773
+ .ot-input-prepend .ot-add-on:first-child {
2774
+ -webkit-border-radius: 2px 0 0 2px;
2775
+ -moz-border-radius: 2px 0 0 2px;
2776
+ border-radius: 2px 0 0 2px;
2777
+ }
2778
+ .ot-input-append input {
2779
+ border-right: 0 !important;
2780
+ -webkit-border-radius: 2px 0 0 2px;
2781
+ -moz-border-radius: 2px 0 0 2px;
2782
+ border-radius: 2px 0 0 2px;
2783
+ }
2784
+ .ot-input-append input + .btn-group .btn:first-child {
2785
+ -webkit-border-top-left-radius: 0;
2786
+ -moz-border-radius-topleft: 0;
2787
+ border-top-left-radius: 0;
2788
+ -webkit-border-bottom-left-radius: 0;
2789
+ -moz-border-radius-bottomleft: 0;
2790
+ border-bottom-left-radius: 0;
2791
+ }
2792
+ .ot-input-append .ot-add-on:last-child {
2793
+ -webkit-border-radius: 0 2px 2px 0;
2794
+ -moz-border-radius: 0 2px 2px 0;
2795
+ border-radius: 0 2px 2px 0;
2796
+ }
2797
+ .ot-input-prepend.ot-input-append input {
2798
+ -webkit-border-radius: 0;
2799
+ -moz-border-radius: 0;
2800
+ border-radius: 0;
2801
+ }
2802
+ .ot-input-prepend.ot-input-append .ot-add-on:first-child {
2803
+ -webkit-border-radius: 2px 0 0 2px;
2804
+ -moz-border-radius: 2px 0 0 2px;
2805
+ border-radius: 2px 0 0 2px;
2806
+ }
2807
+ .ot-input-prepend.ot-input-append .ot-add-on:last-child {
2808
+ -webkit-border-radius: 0 2px 2px 0;
2809
+ -moz-border-radius: 0 2px 2px 0;
2810
+ border-radius: 0 2px 2px 0;
2811
+ }
2812
+
2813
+ /* --------------------------------------------------
2814
+ :: CSS Editor
2815
+ ---------------------------------------------------*/
2816
+ #option-tree-settings-api pre.ot-css-editor {
2817
+ bottom: 0;
2818
+ height: 280px;
2819
+ left: 0;
2820
+ margin: 0 !important;
2821
+ right: 0;
2822
+ top: 0;
2823
+ }
2824
+ #option-tree-settings-api pre.ace-chrome {
2825
+ background-color: #fff !important;
2826
+ border: 1px solid #ccc;
2827
+ -webkit-border-radius: 2px;
2828
+ -moz-border-radius: 2px;
2829
+ border-radius: 2px;
2830
+ }
2831
+ #option-tree-settings-api pre.ace-chrome:hover {
2832
+ border-color: #bbb !important;
2833
+ -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
2834
+ -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
2835
+ box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
2836
+ }
2837
+ #option-tree-settings-api pre.ace-chrome.ace_focus {
2838
+ border-color: #999 !important;
2839
+ -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
2840
+ -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
2841
+ box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.0980392);
2842
+ }
2843
+
2844
+ /* --------------------------------------------------
2845
+ :: Date Picker
2846
+ ---------------------------------------------------*/
2847
+ .ui-datepicker {
2848
+ background: #fff;
2849
+ border: 1px solid #ccc;
2850
+ height: auto;
2851
+ margin: 5px auto 0;
2852
+ width: 216px;
2853
+ z-index: 101 !important;
2854
+ -webkit-border-radius: 2px;
2855
+ -moz-border-radius: 2px;
2856
+ border-radius: 2px;
2857
+ }
2858
+ .ui-datepicker a {
2859
+ text-decoration: none;
2860
+ }
2861
+ .ui-datepicker table {
2862
+ border-collapse: collapse;
2863
+ border-spacing: 0;
2864
+ width: 100%;
2865
+ }
2866
+ .ui-datepicker .ui-widget-header {
2867
+ left: -1px;
2868
+ line-height: 30px;
2869
+ position: relative;
2870
+ top: -1px;
2871
+ width: 218px;
2872
+ -webkit-border-radius: 2px 2px 0 0;
2873
+ -moz-border-radius: 2px 2px 0 0;
2874
+ border-radius: 2px 2px 0 0;
2875
+ }
2876
+ .ui-datepicker .ui-datepicker-title {
2877
+ text-align: center;
2878
+ }
2879
+ .ui-datepicker-prev,
2880
+ .ui-datepicker-next {
2881
+ color: #ccc;
2882
+ display: inline-block;
2883
+ font-family: "option-tree-font";
2884
+ font-size: 16px;
2885
+ width: 30px;
2886
+ height: 30px;
2887
+ text-align: center;
2888
+ cursor: pointer;
2889
+ -webkit-border-radius: 2px 0 0 0;
2890
+ -moz-border-radius: 2px 0 0 0;
2891
+ border-radius: 2px 0 0 0;
2892
+ }
2893
+ .ui-datepicker-next {
2894
+ -webkit-border-radius: 0 2px 0 0;
2895
+ -moz-border-radius: 0 2px 0 0;
2896
+ border-radius: 0 2px 0 0;
2897
+ }
2898
+ .ui-datepicker-prev span,
2899
+ .ui-datepicker-next span {
2900
+ display: none;
2901
+ }
2902
+ .ui-datepicker-prev:hover,
2903
+ .ui-datepicker-next:hover {
2904
+ color: #fff;
2905
+ }
2906
+ .ui-datepicker-prev:before {
2907
+ border-right: 1px solid #555;
2908
+ content: "\e775";
2909
+ display: block;
2910
+ float: left;
2911
+ width: 31px;
2912
+ height: 30px;
2913
+ }
2914
+ .ui-datepicker-prev {
2915
+ border-right: 1px solid #333;
2916
+ float: left;
2917
+ }
2918
+ .ui-datepicker-next:before {
2919
+ border-left: 1px solid #555;
2920
+ content: "\e774";
2921
+ display: block;
2922
+ float: right;
2923
+ width: 30px;
2924
+ height: 30px;
2925
+ }
2926
+ .ui-datepicker-next {
2927
+ border-left: 1px solid #333;
2928
+ float: right;
2929
+ width: 31px;
2930
+ }
2931
+ a.ui-datepicker-prev,
2932
+ a.ui-datepicker-next {
2933
+ outline: 0;
2934
+ }
2935
+ .ui-datepicker thead {
2936
+ background-color: #fafafa;
2937
+ border-bottom: 1px solid #ccc;
2938
+ }
2939
+ .ui-datepicker th {
2940
+ text-transform: uppercase;
2941
+ font-size: 9px;
2942
+ padding: 5px 0;
2943
+ color: #555;
2944
+ text-shadow: 1px 0px 0px rgba(255,255,255,0.5);
2945
+ }
2946
+ .ui-datepicker tbody td {
2947
+ border-right: 1px solid #ccc;
2948
+ padding: 0;
2949
+ }
2950
+ .ui-datepicker tbody td:last-child {
2951
+ border-right: 0px;
2952
+ }
2953
+ .ui-datepicker tbody tr {
2954
+ border-bottom: 1px solid #ccc;
2955
+ }
2956
+ .ui-datepicker tbody tr:last-child {
2957
+ border-bottom: 0px;
2958
+ }
2959
+ .ui-datepicker td span,
2960
+ .ui-datepicker td a {
2961
+ display: inline-block;
2962
+ font-size: 11px;
2963
+ text-align: center;
2964
+ width: 30px;
2965
+ height: 29px;
2966
+ line-height: 30px;
2967
+ color: #555;
2968
+ text-shadow: 1px 0px 0px rgba(255,255,255,0.5);
2969
+ }
2970
+ .ui-datepicker-calendar .ui-state-default {
2971
+ background-color: #f1f1f1;
2972
+ }
2973
+ .ui-datepicker-calendar .ui-state-highlight {
2974
+ border-radius: 0px;
2975
+ border: none;
2976
+ color: #0074a2;
2977
+ }
2978
+ .ui-datepicker-calendar .ui-state-hover {
2979
+ background: #fff;
2980
+ }
2981
+ .ui-datepicker-calendar .ui-state-active {
2982
+ background-color: #0074a2;
2983
+ color: #fff !important;
2984
+ text-shadow: 0px 1px 0px rgba(0,0,0,0.25);
2985
+ position: relative;
2986
+ }
2987
+ .ui-datepicker-unselectable .ui-state-default {
2988
+ background: #fff;
2989
+ color: #aaa;
2990
+ }
2991
+ .ui-datepicker-calendar td:first-child .ui-state-active {
2992
+ margin-left: 0;
2993
+ width: 30px;
2994
+ }
2995
+ .ui-datepicker-calendar td:last-child .ui-state-active {
2996
+ margin-right: 0;
2997
+ width: 30px;
2998
+ }
2999
+ .ui-datepicker-calendar tr:last-child .ui-state-active {
3000
+ height: 30px;
3001
+ margin-bottom: 0;
3002
+ }
3003
+ .ui-datepicker .ui-datepicker-buttonpane {
3004
+ background-image: none;
3005
+ border-left: 0;
3006
+ border-right: 0;
3007
+ border-bottom: 0;
3008
+ margin: 0;
3009
+ padding: 0 .7em;
3010
+ }
3011
+ .ui-datepicker .ui-datepicker-buttonpane button {
3012
+ background: #f7f7f7;
3013
+ border: 1px solid #ccc;
3014
+ color: #555;
3015
+ cursor: pointer;
3016
+ float: right;
3017
+ height: auto;
3018
+ margin: .7em 0;
3019
+ padding: 5px 14px;
3020
+ width: auto;
3021
+ -webkit-border-radius: 3px;
3022
+ -moz-border-radius: 3px;
3023
+ border-radius: 3px;
3024
+ -webkit-box-shadow: inset 0 1px 0 #fff, 0 1px 0 rgba(0,0,0,.08);
3025
+ -moz-box-shadow: inset 0 1px 0 #fff, 0 1px 0 rgba(0,0,0,.08);
3026
+ box-shadow: inset 0 1px 0 #fff, 0 1px 0 rgba(0,0,0,.08);
3027
+ }
3028
+ .ui-datepicker .ui-datepicker-buttonpane button::-moz-focus-inner {
3029
+ border-width: 1px 0;
3030
+ border-style: solid none;
3031
+ border-color: transparent;
3032
+ padding: 0;
3033
+ }
3034
+ .ui-datepicker .ui-datepicker-buttonpane button:hover,
3035
+ .ui-datepicker .ui-datepicker-buttonpane button:focus {
3036
+ background: #fafafa;
3037
+ border-color: #999;
3038
+ color: #222;
3039
+ outline: 0;
3040
+ }
3041
+ .ui-datepicker .ui-datepicker-buttonpane button:focus {
3042
+ -webkit-box-shadow: 1px 1px 1px rgba(0,0,0,.2);
3043
+ -moz-box-shadow: 1px 1px 1px rgba(0,0,0,.2);
3044
+ box-shadow: 1px 1px 1px rgba(0,0,0,.2);
3045
+ }
3046
+ .ui-datepicker .ui-datepicker-buttonpane button:active {
3047
+ background: #eee;
3048
+ border-color: #999;
3049
+ color: #333;
3050
+ outline: 0;
3051
+ -webkit-box-shadow: inset 0 2px 5px -3px rgba( 0, 0, 0, 0.5 );
3052
+ -moz-box-shadow: inset 0 2px 5px -3px rgba( 0, 0, 0, 0.5 );
3053
+ box-shadow: inset 0 2px 5px -3px rgba( 0, 0, 0, 0.5 );
3054
+ }
3055
+ .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
3056
+ float: left;
3057
+ }
3058
+ .ui-datepicker-calendar + .ui-datepicker-buttonpane {
3059
+ border-bottom: 1px solid #ccc;
3060
+ }
3061
+ .ui-datepicker-multi-2 {
3062
+ width: 432px !important;
3063
+ }
3064
+ .ui-datepicker-multi-3 {
3065
+ width: 648px !important;
3066
+ }
3067
+ .ui-datepicker-multi-4 {
3068
+ width: 864px !important;
3069
+ }
3070
+ .ui-datepicker-group {
3071
+ float: left;
3072
+ width: 216px !important;
3073
+ }
3074
+ .ui-datepicker-row-break {
3075
+ clear: both;
3076
+ width: 100%;
3077
+ font-size: 0;
3078
+ }
3079
+ .ui-datepicker-multi .ui-datepicker-buttonpane {
3080
+ border-top: 1px solid #ccc !important;
3081
+ }
3082
+
3083
+ /* default color scheme */
3084
+ .ui-datepicker .ui-widget-header {
3085
+ background: #333;
3086
+ color: #bbb;
3087
+ }
3088
+ .ui-datepicker .ui-widget-header a {
3089
+ color: #999;
3090
+ }
3091
+ .ui-datepicker-prev,
3092
+ .ui-datepicker-next:before {
3093
+ border-color: #000;
3094
+ }
3095
+ .ui-datepicker-next,
3096
+ .ui-datepicker-prev:before {
3097
+ border-color: #444;
3098
+ }
3099
+ .ui-datepicker-prev:hover,
3100
+ .ui-datepicker-next:hover {
3101
+ background: #222;
3102
+ color: #0074a2 !important;
3103
+ }
3104
+ /* light */
3105
+ .admin-color-light .ui-datepicker .ui-widget-header {
3106
+ background: #888;
3107
+ color: #fff;
3108
+ }
3109
+ .admin-color-light .ui-datepicker .ui-widget-header a {
3110
+ color: #ccc;
3111
+ }
3112
+ .admin-color-light .ui-datepicker-prev,
3113
+ .admin-color-light .ui-datepicker-next:before {
3114
+ border-color: #3c3c3c;
3115
+ }
3116
+ .admin-color-light .ui-datepicker-next,
3117
+ .admin-color-light .ui-datepicker-prev:before {
3118
+ border-color: #999;
3119
+ }
3120
+ .admin-color-light .ui-datepicker-prev:hover,
3121
+ .admin-color-light .ui-datepicker-next:hover {
3122
+ background: #777;
3123
+ color: #eee !important;
3124
+ }
3125
+ /* blue */
3126
+ .admin-color-blue .ui-datepicker .ui-widget-header {
3127
+ background: #52accc;
3128
+ color: #fff;
3129
+ }
3130
+ .admin-color-blue .ui-datepicker .ui-widget-header a {
3131
+ color: #e2f8ff;
3132
+ }
3133
+ .admin-color-blue .ui-datepicker-prev,
3134
+ .admin-color-blue .ui-datepicker-next:before {
3135
+ border-color: #002b39;
3136
+ }
3137
+ .admin-color-blue .ui-datepicker-next,
3138
+ .admin-color-blue .ui-datepicker-prev:before {
3139
+ border-color: #5dc2e6;
3140
+ }
3141
+ .admin-color-blue .ui-datepicker-prev:hover,
3142
+ .admin-color-blue .ui-datepicker-next:hover {
3143
+ background: #006484;
3144
+ color: #fff !important;
3145
+ }
3146
+ /* coffee */
3147
+ .admin-color-coffee .ui-datepicker .ui-widget-header {
3148
+ background: #59524c;
3149
+ color: #c7cbc9;
3150
+ }
3151
+ .admin-color-coffee .ui-datepicker .ui-widget-header a {
3152
+ color: #f3f2f1;
3153
+ }
3154
+ .admin-color-coffee .ui-datepicker-prev,
3155
+ .admin-color-coffee .ui-datepicker-next:before {
3156
+ border-color: #0f0e0d;
3157
+ }
3158
+ .admin-color-coffee .ui-datepicker-next,
3159
+ .admin-color-coffee .ui-datepicker-prev:before {
3160
+ border-color: #675f58;
3161
+ }
3162
+ .admin-color-coffee .ui-datepicker-prev:hover,
3163
+ .admin-color-coffee .ui-datepicker-next:hover {
3164
+ background: #cca588;
3165
+ color: #fff !important;
3166
+ }
3167
+ /* ectoplasm */
3168
+ .admin-color-ectoplasm .ui-datepicker .ui-widget-header {
3169
+ background: #523f6d;
3170
+ color: #c6c6d3;
3171
+ }
3172
+ .admin-color-ectoplasm .ui-datepicker .ui-widget-header a {
3173
+ color: #f3f2f1;
3174
+ }
3175
+ .admin-color-ectoplasm .ui-datepicker-prev,
3176
+ .admin-color-ectoplasm .ui-datepicker-next:before {
3177
+ border-color: #181220;
3178
+ }
3179
+ .admin-color-ectoplasm .ui-datepicker-next,
3180
+ .admin-color-ectoplasm .ui-datepicker-prev:before {
3181
+ border-color: #644d85;
3182
+ }
3183
+ .admin-color-ectoplasm .ui-datepicker-prev:hover,
3184
+ .admin-color-ectoplasm .ui-datepicker-next:hover {
3185
+ background: #a3b542;
3186
+ color: #fff !important;
3187
+ }
3188
+ /* midnight */
3189
+ .admin-color-midnight .ui-datepicker .ui-widget-header {
3190
+ background: #363b3f;
3191
+ color: #f1f2f3;
3192
+ }
3193
+ .admin-color-midnight .ui-datepicker .ui-widget-header a {
3194
+ color: #f1f2f3;
3195
+ }
3196
+ .admin-color-midnight .ui-datepicker-prev,
3197
+ .admin-color-midnight .ui-datepicker-next:before {
3198
+ border-color: #090a0b;
3199
+ }
3200
+ .admin-color-midnight .ui-datepicker-next,
3201
+ .admin-color-midnight .ui-datepicker-prev:before {
3202
+ border-color: #4c5359;
3203
+ }
3204
+ .admin-color-midnight .ui-datepicker-prev:hover,
3205
+ .admin-color-midnight .ui-datepicker-next:hover {
3206
+ background: #ed543f;
3207
+ color: #fff !important;
3208
+ }
3209
+ /* ocean */
3210
+ .admin-color-ocean .ui-datepicker .ui-widget-header {
3211
+ background: #738e96;
3212
+ color: #f1fcff;
3213
+ }
3214
+ .admin-color-ocean .ui-datepicker .ui-widget-header a {
3215
+ color: #f1fcff;
3216
+ }
3217
+ .admin-color-ocean .ui-datepicker-prev,
3218
+ .admin-color-ocean .ui-datepicker-next:before {
3219
+ border-color: #39464a;
3220
+ }
3221
+ .admin-color-ocean .ui-datepicker-next,
3222
+ .admin-color-ocean .ui-datepicker-prev:before {
3223
+ border-color: #87a6af;
3224
+ }
3225
+ .admin-color-ocean .ui-datepicker-prev:hover,
3226
+ .admin-color-ocean .ui-datepicker-next:hover {
3227
+ background: #9ab8a0;
3228
+ color: #fff !important;
3229
+ }
3230
+ /* sunrise */
3231
+ .admin-color-sunrise .ui-datepicker .ui-widget-header {
3232
+ background: #da4f41;
3233
+ color: #fff;
3234
+ }
3235
+ .admin-color-sunrise .ui-datepicker .ui-widget-header a {
3236
+ color: #f3f1f1;
3237
+ }
3238
+ .admin-color-sunrise .ui-datepicker-prev,
3239
+ .admin-color-sunrise .ui-datepicker-next:before {
3240
+ border-color: #8a322a;
3241
+ }
3242
+ .admin-color-sunrise .ui-datepicker-next,
3243
+ .admin-color-sunrise .ui-datepicker-prev:before {
3244
+ border-color: #e75546;
3245
+ }
3246
+ .admin-color-sunrise .ui-datepicker-prev:hover,
3247
+ .admin-color-sunrise .ui-datepicker-next:hover {
3248
+ background: #e88436;
3249
+ color: #fff !important;
3250
+ }
3251
+
3252
+ /* --------------------------------------------------
3253
+ :: Time Picker
3254
+ ---------------------------------------------------*/
3255
+ .ui-timepicker-div {
3256
+ border-top: 1px solid #ccc;
3257
+ padding: 0 .4em;
3258
+ }
3259
+ .ui-timepicker-div .ui-widget-content {
3260
+ border: 1px solid #aaa;
3261
+ background: #fff;
3262
+ font-weight: normal;
3263
+ color: #212121;
3264
+ }
3265
+ .ui-timepicker-div .ui-slider {
3266
+ position: relative;
3267
+ text-align: left;
3268
+ }
3269
+ .ui-timepicker-div .ui-slider-horizontal {
3270
+ height: .8em;
3271
+ bottom: -.3em;
3272
+ position: relative;
3273
+ -webkit-border-radius: 2px;
3274
+ -moz-border-radius: 2px;
3275
+ border-radius: 2px;
3276
+ }
3277
+ .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle {
3278
+ background: #f7f7f7;
3279
+ border: 1px solid #ccc;
3280
+ color: #555;
3281
+ cursor: pointer;
3282
+ display: block;
3283
+ height: 1.3em;
3284
+ margin-left: -.5em;
3285
+ outline: 0;
3286
+ position: absolute;
3287
+ top: -.325em;
3288
+ width: .8em;
3289
+ -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 rgba(0,0,0,.08);
3290
+ -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 rgba(0,0,0,.08);
3291
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 0 rgba(0,0,0,.08);
3292
+ -webkit-border-radius: 2px;
3293
+ -moz-border-radius: 2px;
3294
+ border-radius: 2px;
3295
+ }
3296
+ .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle:hover {
3297
+ background: #fafafa;
3298
+ border-color: #999;
3299
+ color: #222;
3300
+ }
3301
+ .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle.ui-state-active {
3302
+ background: #eee;
3303
+ border-color: #999;
3304
+ color: #333;
3305
+ outline: none;
3306
+ }
3307
+ .ui-datepicker-prev,
3308
+ .ui-datepicker-next:before {
3309
+ border-color: #000;
3310
+ }
3311
+ .ui-datepicker-next,
3312
+ .ui-datepicker-prev:before {
3313
+ border-color: #444;
3314
+ }
3315
+ .ui-datepicker-prev:hover,
3316
+ .ui-datepicker-next:hover {
3317
+ background: #222;
3318
+ color: #0074a2 !important;
3319
+ }
3320
+
3321
+ .ui-timepicker-div dl {
3322
+ text-align: left;
3323
+ }
3324
+ .ui-timepicker-div dl dt {
3325
+ float: left;
3326
+ clear: left;
3327
+ padding: 0 0 0 5px;
3328
+ }
3329
+ .ui-timepicker-div dl dd {
3330
+ margin: 0 10px 10px 45%;
3331
+ }
3332
+ .ui-timepicker-div td {
3333
+ font-size: 90%;
3334
+ }
3335
+ .ui-tpicker-grid-label {
3336
+ background: none;
3337
+ border: none;
3338
+ margin: 0;
3339
+ padding: 0;
3340
+ }
3341
+ /* default */
3342
+ .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle {
3343
+ background: #333;
3344
+ border-color: #000;
3345
+ }
3346
+ .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle:hover,
3347
+ .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle.ui-state-active {
3348
+ background: #444;
3349
+ border-color: #111;
3350
+ }
3351
+ /* light */
3352
+ .admin-color-light .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle {
3353
+ background: #888;
3354
+ border-color: #3c3c3c;
3355
+ }
3356
+ .admin-color-light .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle:hover,
3357
+ .admin-color-light .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle.ui-state-active {
3358
+ background: #999;
3359
+ border-color: #777;
3360
+ }
3361
+ /* blue */
3362
+ .admin-color-blue .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle {
3363
+ background: #52accc;
3364
+ border-color: #002b39;
3365
+ }
3366
+ .admin-color-blue .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle:hover,
3367
+ .admin-color-blue .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle.ui-state-active {
3368
+ background: #5dc2e6;
3369
+ border-color: #006484;
3370
+ }
3371
+ /* coffee */
3372
+ .admin-color-coffee .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle {
3373
+ background: #59524c;
3374
+ border-color: #0f0e0d;
3375
+ }
3376
+ .admin-color-coffee .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle:hover,
3377
+ .admin-color-coffee .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle.ui-state-active {
3378
+ background: #cca588;
3379
+ border-color: #675f58;
3380
+ }
3381
+ /* ectoplasm */
3382
+ .admin-color-ectoplasm .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle {
3383
+ background: #523f6d;
3384
+ border-color: #181220;
3385
+ }
3386
+ .admin-color-ectoplasm .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle:hover,
3387
+ .admin-color-ectoplasm .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle.ui-state-active {
3388
+ background: #a3b542;
3389
+ border-color: #644d85;
3390
+ }
3391
+ /* midnight */
3392
+ .admin-color-midnight .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle {
3393
+ background: #363b3f;
3394
+ border-color: #090a0b;
3395
+ }
3396
+ .admin-color-midnight .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle:hover,
3397
+ .admin-color-midnight .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle.ui-state-active {
3398
+ background: #ed543f;
3399
+ border-color: #a0382a;
3400
+ }
3401
+ /* ocean */
3402
+ .admin-color-ocean .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle {
3403
+ background: #738e96;
3404
+ border-color: #39464a;
3405
+ }
3406
+ .admin-color-ocean .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle:hover,
3407
+ .admin-color-ocean .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle.ui-state-active {
3408
+ background: #9ab8a0;
3409
+ border-color: #5a6c5e;
3410
+ }
3411
+ /* sunrise */
3412
+ .admin-color-sunrise .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle {
3413
+ background: #da4f41;
3414
+ border-color: #8a322a;
3415
+ }
3416
+ .admin-color-sunrise .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle:hover,
3417
+ .admin-color-sunrise .ui-timepicker-div .ui-slider-horizontal .ui-slider-handle.ui-state-active {
3418
+ background: #e88436;
3419
+ border-color: #e75546;
3420
+ }
3421
+
3422
+ /* --------------------------------------------------
3423
+ :: Meta Box Tabs
3424
+ ---------------------------------------------------*/
3425
+ .ot-metabox-tabs.ui-tabs {
3426
+ position: relative;
3427
+ }
3428
+ .ot-metabox-tabs.ui-tabs .ot-metabox-wrapper {
3429
+ overflow: hidden;
3430
+ }
3431
+ .ot-metabox-tabs.ui-tabs .ot-metabox-panels {
3432
+ background: white;
3433
+ border: 1px solid #ccc;
3434
+ margin: 12px 0 0 0;
3435
+ min-height: 140px;
3436
+ overflow: hidden;
3437
+ padding: 12px;
3438
+ -webkit-border-radius: 2px;
3439
+ -moz-border-radius: 2px;
3440
+ border-radius: 2px;
3441
+ }
3442
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav {
3443
+ float: left;
3444
+ list-style: none;
3445
+ margin: 0 -1px 0 0;
3446
+ padding: 1em 0;
3447
+ width: 151px;
3448
+ }
3449
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li {
3450
+ border: 1px solid transparent;
3451
+ border-right-width: 0px;
3452
+ display: block;
3453
+ margin: 0;
3454
+ outline: 0;
3455
+ -webkit-border-radius: 2px 0 0 2px;
3456
+ -moz-border-radius: 2px 0 0 2px;
3457
+ border-radius: 2px 0 0 2px;
3458
+ }
3459
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li.ui-state-active {
3460
+ background: white;
3461
+ border-color: #ccc;
3462
+ color: black;
3463
+ }
3464
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li a {
3465
+ color: #21759b;
3466
+ display: block;
3467
+ line-height: 18px;
3468
+ outline: 0;
3469
+ padding: 5px 5px 5px 12px;
3470
+ text-decoration: none;
3471
+ }
3472
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li a:hover {
3473
+ color: black;
3474
+ outline: none;
3475
+ }
3476
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li.ui-state-active a {
3477
+ color: black;
3478
+ outline: none;
3479
+ }
3480
+ .ot-metabox-tabs.ui-tabs .ot-metabox-panel {
3481
+ clear: both;
3482
+ }
3483
+
3484
+ /* --------------------------------------------------
3485
+ :: Theme Option & Side Metabox Tabs
3486
+ ---------------------------------------------------*/
3487
+ .ot-theme-option-tabs.ui-tabs
3488
+ #side-sortables .ot-metabox-tabs.ui-tabs {
3489
+ position: relative;
3490
+ }
3491
+ .ot-theme-option-tabs.ui-tabs .inside,
3492
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-wrapper {
3493
+ overflow: hidden;
3494
+ }
3495
+ .ot-theme-option-tabs.ui-tabs .ot-theme-option-panels,
3496
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-panels {
3497
+ border: 0;
3498
+ margin: 0;
3499
+ overflow: hidden;
3500
+ padding: 0;
3501
+ width: 100%;
3502
+ }
3503
+ .ot-theme-option-tabs.ui-tabs .ot-theme-option-nav.ui-tabs-nav,
3504
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav {
3505
+ border-bottom: 1px solid #ccc;
3506
+ float: none;
3507
+ font-size: 12px !important;
3508
+ height: 30px;
3509
+ list-style: none;
3510
+ margin: 2px 0 0 0;
3511
+ padding: 0;
3512
+ width: 100%;
3513
+ }
3514
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav {
3515
+ margin-top: 10px;
3516
+ }
3517
+ .ot-theme-option-tabs.ui-tabs .ot-theme-option-nav.ui-tabs-nav li.ui-state-default,
3518
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li.ui-state-default {
3519
+ background: #fafafa;
3520
+ border: 1px solid #ccc;
3521
+ border-width: 1px 1px 0px 1px;
3522
+ display: block;
3523
+ float: left;
3524
+ margin: 0 0 0 3px;
3525
+ padding: 0;
3526
+ outline: 0;
3527
+ -webkit-border-radius: 2px 2px 0 0;
3528
+ -moz-border-radius: 2px 2px 0 0;
3529
+ border-radius: 2px 2px 0 0;
3530
+ }
3531
+ .ot-theme-option-tabs.ui-tabs .ot-theme-option-nav.ui-tabs-nav li:hover,
3532
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li:hover {
3533
+ background: #f1f1f1;
3534
+ border: 1px solid #ccc;
3535
+ border-width: 1px 1px 0px 1px;
3536
+ }
3537
+ .ot-theme-option-tabs.ui-tabs .ot-theme-option-nav.ui-tabs-nav li.ui-state-active,
3538
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li.ui-state-active {
3539
+ background: white;
3540
+ border-color: #ccc;
3541
+ border-width: 1px 1px 0px 1px;
3542
+ color: black;
3543
+ padding: 0;
3544
+ -webkit-border-radius: 2px 2px 0 0;
3545
+ -moz-border-radius: 2px 2px 0 0;
3546
+ border-radius: 2px 2px 0 0;
3547
+ }
3548
+ .ot-theme-option-tabs.ui-tabs .ot-theme-option-nav.ui-tabs-nav li a,
3549
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li a {
3550
+ color: #21759b;
3551
+ display: block;
3552
+ line-height: 18px;
3553
+ outline: 0;
3554
+ padding: 6px 12px 5px 12px !important;
3555
+ text-decoration: none;
3556
+ }
3557
+ .ot-theme-option-tabs.ui-tabs .ot-theme-option-nav.ui-tabs-nav li a:hover,
3558
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li a:hover {
3559
+ color: black;
3560
+ outline: none;
3561
+ }
3562
+ .ot-theme-option-tabs.ui-tabs .ot-theme-option-nav.ui-tabs-nav li.ui-state-active a,
3563
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li.ui-state-active a {
3564
+ color: black;
3565
+ outline: none;
3566
+ padding: 6px 12px 6px 12px !important;
3567
+ }
3568
+ .ot-theme-option-tabs.ui-tabs .ot-theme-option-panel,
3569
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-panel {
3570
+ clear: both;
3571
+ }
3572
+ #side-sortables .ot-metabox-tabs.ui-tabs .format-setting .description,
3573
+ #side-sortables .ot-metabox-tabs.ui-tabs .format-setting .format-setting-inner {
3574
+ width: 100%;
3575
+ }
3576
+
3577
+ /* --------------------------------------------------
3578
+ :: Metabox Tabs for Small Screens & Mobile Devices
3579
+ ---------------------------------------------------*/
3580
+ @media screen and ( max-width: 1020px ) {
3581
+ .ot-metabox-tabs.ui-tabs {
3582
+ position: relative;
3583
+ }
3584
+ .ot-metabox-tabs.ui-tabs .ot-metabox-wrapper {
3585
+ overflow: hidden;
3586
+ }
3587
+ .ot-metabox-tabs.ui-tabs .ot-metabox-panels {
3588
+ border: 0;
3589
+ margin: 0;
3590
+ overflow: hidden;
3591
+ padding: 0;
3592
+ width: 100%;
3593
+ }
3594
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav {
3595
+ border-bottom: 1px solid #ccc;
3596
+ float: none;
3597
+ font-size: 12px !important;
3598
+ height: 30px;
3599
+ list-style: none;
3600
+ margin: 2px 0 0 0;
3601
+ padding: 0;
3602
+ width: 100%;
3603
+ }
3604
+ #side-sortables .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav {
3605
+ margin-top: 10px;
3606
+ }
3607
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li.ui-state-default {
3608
+ background: #fafafa;
3609
+ border: 1px solid #ccc;
3610
+ border-width: 1px 1px 0px 1px;
3611
+ display: block;
3612
+ float: left;
3613
+ margin: 0 0 0 3px;
3614
+ padding: 0;
3615
+ outline: 0;
3616
+ -webkit-border-radius: 2px 2px 0 0;
3617
+ -moz-border-radius: 2px 2px 0 0;
3618
+ border-radius: 2px 2px 0 0;
3619
+ }
3620
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li:hover {
3621
+ background: #f1f1f1;
3622
+ border: 1px solid #ccc;
3623
+ border-width: 1px 1px 0px 1px;
3624
+ }
3625
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li.ui-state-active {
3626
+ background: white;
3627
+ border-color: #ccc;
3628
+ border-width: 1px 1px 0px 1px;
3629
+ color: black;
3630
+ padding: 0;
3631
+ -webkit-border-radius: 2px 2px 0 0;
3632
+ -moz-border-radius: 2px 2px 0 0;
3633
+ border-radius: 2px 2px 0 0;
3634
+ }
3635
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li a {
3636
+ color: #21759b;
3637
+ display: block;
3638
+ line-height: 18px;
3639
+ outline: 0;
3640
+ padding: 6px 12px 5px 12px !important;
3641
+ text-decoration: none;
3642
+ }
3643
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li a:hover {
3644
+ color: black;
3645
+ outline: none;
3646
+ }
3647
+ .ot-metabox-tabs.ui-tabs .ot-metabox-nav.ui-tabs-nav li.ui-state-active a {
3648
+ color: black;
3649
+ outline: none;
3650
+ padding: 6px 12px 6px 12px !important;
3651
+ }
3652
+ .ot-metabox-tabs.ui-tabs .ot-metabox-panel {
3653
+ clear: both;
3654
+ }
3655
  }
assets/fonts/option-tree-font.eot CHANGED
Binary file
assets/fonts/option-tree-font.svg CHANGED
@@ -7,6 +7,349 @@
7
  <font-face units-per-em="1024" ascent="960" descent="-64" />
8
  <missing-glyph horiz-adv-x="1024" />
9
  <glyph unicode="&#x20;" d="" horiz-adv-x="512" />
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  <glyph unicode="&#xe770;" d="M437.143 208.571q4.571-10.857-2.857-20l-200-219.429q-5.714-5.714-13.143-5.714-8 0-13.714 5.714l-202.857 219.429q-7.429 9.143-2.857 20 5.143 10.857 16.571 10.857h128v713.143q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-713.143h128q12 0 16.571-10.857z" horiz-adv-x="439" />
11
  <glyph unicode="&#xe771;" d="M437.143 669.143q-5.143-10.857-16.571-10.857h-128v-713.143q0-8-5.143-13.143t-13.143-5.143h-109.714q-8 0-13.143 5.143t-5.143 13.143v713.143h-128q-12 0-16.571 10.857t2.857 20l200 219.429q5.714 5.714 13.143 5.714 8 0 13.714-5.714l202.857-219.429q7.429-9.143 2.857-20z" horiz-adv-x="439" />
12
  <glyph unicode="&#xe772;" d="M1024 493.714v-109.714q0-8-5.143-13.143t-13.143-5.143h-713.143v-128q0-12-10.857-16.571t-20 2.857l-219.429 200q-5.714 5.714-5.714 13.143 0 8 5.714 13.714l219.429 202.286q9.143 8 20 3.429 10.857-5.143 10.857-16.571v-128h713.143q8 0 13.143-5.143t5.143-13.143z" />
@@ -20,7 +363,9 @@
20
  <glyph unicode="&#xe780;" d="M733.143 641.714l-202.857-202.857 202.857-202.857 82.286 82.286q16.571 17.714 40 8 22.286-9.714 22.286-33.714v-256q0-14.857-10.857-25.714t-25.714-10.857h-256q-24 0-33.714 22.857-9.714 22.286 8 39.429l82.286 82.286-202.857 202.857-202.857-202.857 82.286-82.286q17.714-17.143 8-39.429-9.714-22.857-33.714-22.857h-256q-14.857 0-25.714 10.857t-10.857 25.714v256q0 24 22.857 33.714 22.286 9.714 39.429-8l82.286-82.286 202.857 202.857-202.857 202.857-82.286-82.286q-10.857-10.857-25.714-10.857-6.857 0-13.714 2.857-22.857 9.714-22.857 33.714v256q0 14.857 10.857 25.714t25.714 10.857h256q24 0 33.714-22.857 9.714-22.286-8-39.429l-82.286-82.286 202.857-202.857 202.857 202.857-82.286 82.286q-17.714 17.143-8 39.429 9.714 22.857 33.714 22.857h256q14.857 0 25.714-10.857t10.857-25.714v-256q0-24-22.286-33.714-7.429-2.857-14.286-2.857-14.857 0-25.714 10.857z" horiz-adv-x="878" />
21
  <glyph unicode="&#xe781;" d="M694.857 402.286v73.143q0 14.857-10.857 25.714t-25.714 10.857h-146.286v146.286q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-146.286h-146.286q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h146.286v-146.286q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714v146.286h146.286q14.857 0 25.714 10.857t10.857 25.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
22
  <glyph unicode="&#xe782;" d="M694.857 402.286v73.143q0 14.857-10.857 25.714t-25.714 10.857h-438.857q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h438.857q14.857 0 25.714 10.857t10.857 25.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
23
- <glyph unicode="&#xe783;" d="M733.714 531.428q0 16-10.286 26.286l-52 51.429q-10.857 10.857-25.714 10.857t-25.714-10.857l-233.143-232.571-129.143 129.143q-10.857 10.857-25.714 10.857t-25.714-10.857l-52-51.429q-10.286-10.286-10.286-26.286 0-15.429 10.286-25.714l206.857-206.857q10.857-10.857 25.714-10.857 15.429 0 26.286 10.857l310.286 310.286q10.286 10.286 10.286 25.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
24
- <glyph unicode="&#xe784;" d="M877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
25
  <glyph unicode="&#xe785;" d="M511.99-64c-282.309 0-511.99 229.681-511.99 512.020 0 282.299 229.681 511.98 511.99 511.98 282.329 0 512.010-229.681 512.010-511.98 0-282.338-229.681-512.020-512.010-512.020zM511.99 904.251c-251.569 0-456.241-204.672-456.241-456.231 0-251.589 204.672-456.271 456.241-456.271 251.55 0 456.212 204.682 456.212 456.271 0 251.559-204.662 456.231-456.212 456.231zM438.597 145.881c0 0.876 0 457.59 0 457.59h-75.845c-29.637 0-54.223-2.462-73.738-7.375-19.535-4.923-36.697-18.412-51.515-40.438-14.828-22.055-23.276-56.015-25.374-101.937h-49.684v175.429c-26.929-53.209-42.201-113.339-42.201-177.063 0-177.546 117.849-327.532 279.562-376.133 14.1-1.812 38.666 4.46 38.794 69.927zM794.91 374.252c-37.809-0.305-68.401 31.99-68.401 71.454 0 39.473 30.592 71.483 68.401 71.483 2.028 0 4.027-0.128 5.986-0.305-0.138 3.121-0.798 6.105-1.851 8.862 0.010 0 0.010 0 0.020 0-4.106 11.569-8.93 21.465-14.503 29.637-14.818 21.858-30.779 35.338-47.852 40.438-17.083 5.11-36.775 7.66-59.087 7.66h-92.219v-457.945c0.030-70.37 29.46-71.995 43.323-68.874 2.274 0.709 4.519 1.497 6.774 2.235 0.030 0.020 0.167 0.098 0.187 0.108 0.049 0 0.079 0.020 0.118 0.020 0 0-0.059-0.030-0.158-0.069 156.859 51.515 270.159 199.060 270.159 373.14 0 68.047-17.319 132.047-47.774 187.845 0-22.518 0-192.817 0-194.225 0.020-37.268-20.51-71.119-63.124-71.463zM513.024 844.879c-138.801 0-260.687-72.054-330.555-180.736h661.1c-69.849 108.672-191.744 180.736-330.545 180.736z" />
 
 
26
  </font></defs></svg>
7
  <font-face units-per-em="1024" ascent="960" descent="-64" />
8
  <missing-glyph horiz-adv-x="1024" />
9
  <glyph unicode="&#x20;" d="" horiz-adv-x="512" />
10
+ <glyph unicode="&#xe600;" d="M970.857 844.571q0-20-24.571-44.571l-361.143-361.143v-438.857h182.857q14.857 0 25.714-10.857t10.857-25.714-10.857-25.714-25.714-10.857h-512q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714 25.714 10.857h182.857v438.857l-361.143 361.143q-24.571 24.571-24.571 44.571 0 13.143 10.286 20.857t21.714 10 24.571 2.286h804.571q13.143 0 24.571-2.286t21.714-10 10.286-20.857z" />
11
+ <glyph unicode="&#xe601;" d="M877.714 822.857v-640q0-28.571-19.429-50.857t-49.143-34.571-59.143-18.286-55.143-6-55.143 6-59.143 18.286-49.143 34.571-19.429 50.857 19.429 50.857 49.143 34.571 59.143 18.286 55.143 6q60 0 109.714-22.286v306.857l-438.857-135.429v-405.143q0-28.571-19.429-50.857t-49.143-34.571-59.143-18.286-55.143-6-55.143 6-59.143 18.286-49.143 34.571-19.429 50.857 19.429 50.857 49.143 34.571 59.143 18.286 55.143 6q60 0 109.714-22.286v552.571q0 17.714 10.857 32.286t28 20.286l475.429 146.286q6.857 2.286 16 2.286 22.857 0 38.857-16t16-38.857z" horiz-adv-x="878" />
12
+ <glyph unicode="&#xe602;" d="M658.286 475.428q0 105.714-75.143 180.857t-180.857 75.143-180.857-75.143-75.143-180.857 75.143-180.857 180.857-75.143 180.857 75.143 75.143 180.857zM950.857 0q0-29.714-21.714-51.429t-51.429-21.714q-30.857 0-51.429 21.714l-196 195.429q-102.286-70.857-228-70.857-81.714 0-156.286 31.714t-128.571 85.714-85.714 128.571-31.714 156.286 31.714 156.286 85.714 128.571 128.571 85.714 156.286 31.714 156.286-31.714 128.571-85.714 85.714-128.571 31.714-156.286q0-125.714-70.857-228l196-196q21.143-21.143 21.143-51.429z" horiz-adv-x="951" />
13
+ <glyph unicode="&#xe603;" d="M950.857 91.428v438.857q-18.286-20.571-39.429-37.714-153.143-117.714-243.429-193.143-29.143-24.571-47.429-38.286t-49.429-27.714-58.571-14h-1.143q-27.429 0-58.571 14t-49.429 27.714-47.429 38.286q-90.286 75.429-243.429 193.143-21.143 17.143-39.429 37.714v-438.857q0-7.429 5.429-12.857t12.857-5.429h841.143q7.429 0 12.857 5.429t5.429 12.857zM950.857 692v14t-0.286 7.429-1.714 7.143-3.143 5.143-5.143 4.286-8 1.429h-841.143q-7.429 0-12.857-5.429t-5.429-12.857q0-96 84-162.286 110.286-86.857 229.143-181.143 3.429-2.857 20-16.857t26.286-21.429 25.429-18 28.857-15.714 24.571-5.143h1.142q11.429 0 24.571 5.143t28.857 15.714 25.429 18 26.286 21.429 20 16.857q118.857 94.286 229.143 181.143 30.857 24.571 57.429 66t26.571 75.143zM1024 713.143v-621.714q0-37.714-26.857-64.571t-64.571-26.857h-841.143q-37.714 0-64.571 26.857t-26.857 64.571v621.714q0 37.714 26.857 64.571t64.571 26.857h841.143q37.714 0 64.571-26.857t26.857-64.571z" />
14
+ <glyph unicode="&#xe604;" d="M512 0q-14.857 0-25.143 10.286l-356.571 344q-5.714 4.571-15.714 14.857t-31.714 37.429-38.857 55.714-30.571 69.143-13.429 78.857q0 125.714 72.571 196.571t200.571 70.857q35.429 0 72.286-12.286t68.571-33.143 54.571-39.143 43.429-38.857q20.571 20.571 43.429 38.857t54.571 39.143 68.571 33.143 72.286 12.286q128 0 200.571-70.857t72.571-196.571q0-126.286-130.857-257.143l-356-342.857q-10.286-10.286-25.143-10.286z" />
15
+ <glyph unicode="&#xe605;" d="M950.857 581.143q0-12.571-14.857-27.429l-207.429-202.286 49.143-285.714q0.571-4 0.571-11.429 0-12-6-20.286t-17.429-8.286q-10.857 0-22.857 6.857l-256.571 134.857-256.571-134.857q-12.571-6.857-22.857-6.857-12 0-18 8.286t-6 20.286q0 3.429 1.143 11.429l49.143 285.714-208 202.286q-14.286 15.429-14.286 27.429 0 21.143 32 26.286l286.857 41.714 128.571 260q10.857 23.429 28 23.429t28-23.429l128.571-260 286.857-41.714q32-5.143 32-26.286z" horiz-adv-x="951" />
16
+ <glyph unicode="&#xe606;" d="M649.714 377.143l174.857 169.714-241.143 35.429-108 218.286-108-218.286-241.143-35.429 174.857-169.714-41.714-240.571 216 113.714 215.429-113.714zM950.857 581.143q0-12.571-14.857-27.429l-207.429-202.286 49.143-285.714q0.571-4 0.571-11.429 0-28.571-23.429-28.571-10.857 0-22.857 6.857l-256.571 134.857-256.571-134.857q-12.571-6.857-22.857-6.857-12 0-18 8.286t-6 20.286q0 3.429 1.143 11.429l49.143 285.714-208 202.286q-14.286 15.429-14.286 27.429 0 21.143 32 26.286l286.857 41.714 128.571 260q10.857 23.429 28 23.429t28-23.429l128.571-260 286.857-41.714q32-5.143 32-26.286z" horiz-adv-x="951" />
17
+ <glyph unicode="&#xe607;" d="M804.571 148q0-68.571-41.714-108.286t-110.857-39.714h-499.429q-69.143 0-110.857 39.714t-41.714 108.286q0 30.286 2 59.143t8 62.286 15.143 62 24.571 55.714 35.429 46.286 48.857 30.571 63.714 11.429q5.143 0 24-12.286t42.571-27.429 61.714-27.429 76.286-12.286 76.286 12.286 61.714 27.429 42.571 27.429 24 12.286q34.857 0 63.714-11.429t48.857-30.571 35.429-46.286 24.571-55.714 15.143-62 8-62.286 2-59.143zM621.714 658.286q0-90.857-64.286-155.143t-155.143-64.286-155.143 64.286-64.286 155.143 64.286 155.143 155.143 64.286 155.143-64.286 64.286-155.143z" horiz-adv-x="805" />
18
+ <glyph unicode="&#xe608;" d="M219.429 36.571v73.143q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714zM219.429 256v73.143q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714zM219.429 475.428v73.143q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714zM804.571 36.571v292.571q0 14.857-10.857 25.714t-25.714 10.857h-438.857q-14.857 0-25.714-10.857t-10.857-25.714v-292.571q0-14.857 10.857-25.714t25.714-10.857h438.857q14.857 0 25.714 10.857t10.857 25.714zM219.429 694.857v73.143q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714zM1024 36.571v73.143q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714zM804.571 475.428v292.571q0 14.857-10.857 25.714t-25.714 10.857h-438.857q-14.857 0-25.714-10.857t-10.857-25.714v-292.571q0-14.857 10.857-25.714t25.714-10.857h438.857q14.857 0 25.714 10.857t10.857 25.714zM1024 256v73.143q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714zM1024 475.428v73.143q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714zM1024 694.857v73.143q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714zM1097.143 786.286v-768q0-37.714-26.857-64.571t-64.571-26.857h-914.286q-37.714 0-64.571 26.857t-26.857 64.571v768q0 37.714 26.857 64.571t64.571 26.857h914.286q37.714 0 64.571-26.857t26.857-64.571z" horiz-adv-x="1097" />
19
+ <glyph unicode="&#xe609;" d="M438.857 365.714v-219.429q0-29.714-21.714-51.429t-51.429-21.714h-292.571q-29.714 0-51.429 21.714t-21.714 51.429v219.429q0 29.714 21.714 51.429t51.429 21.714h292.571q29.714 0 51.429-21.714t21.714-51.429zM438.857 804.571v-219.429q0-29.714-21.714-51.429t-51.429-21.714h-292.571q-29.714 0-51.429 21.714t-21.714 51.429v219.429q0 29.714 21.714 51.429t51.429 21.714h292.571q29.714 0 51.429-21.714t21.714-51.429zM950.857 365.714v-219.429q0-29.714-21.714-51.429t-51.429-21.714h-292.571q-29.714 0-51.429 21.714t-21.714 51.429v219.429q0 29.714 21.714 51.429t51.429 21.714h292.571q29.714 0 51.429-21.714t21.714-51.429zM950.857 804.571v-219.429q0-29.714-21.714-51.429t-51.429-21.714h-292.571q-29.714 0-51.429 21.714t-21.714 51.429v219.429q0 29.714 21.714 51.429t51.429 21.714h292.571q29.714 0 51.429-21.714t21.714-51.429z" horiz-adv-x="951" />
20
+ <glyph unicode="&#xe60a;" d="M292.571 237.714v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM292.571 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM658.286 237.714v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM292.571 822.857v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM658.286 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM1024 237.714v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM658.286 822.857v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM1024 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM1024 822.857v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857z" />
21
+ <glyph unicode="&#xe60b;" d="M292.571 237.714v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM292.571 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM1024 237.714v-109.714q0-22.857-16-38.857t-38.857-16h-548.571q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h548.571q22.857 0 38.857-16t16-38.857zM292.571 822.857v-109.714q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857zM1024 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-548.571q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h548.571q22.857 0 38.857-16t16-38.857zM1024 822.857v-109.714q0-22.857-16-38.857t-38.857-16h-548.571q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h548.571q22.857 0 38.857-16t16-38.857z" />
22
+ <glyph unicode="&#xe60c;" d="M954.857 627.428q0-22.857-16-38.857l-491.429-491.429q-16-16-38.857-16t-38.857 16l-284.571 284.571q-16 16-16 38.857t16 38.857l77.714 77.714q16 16 38.857 16t38.857-16l168-168.571 374.857 375.429q16 16 38.857 16t38.857-16l77.714-77.714q16-16 16-38.857z" />
23
+ <glyph unicode="&#xe60d;" d="M741.714 195.428q0-22.857-16-38.857l-77.714-77.714q-16-16-38.857-16t-38.857 16l-168 168-168-168q-16-16-38.857-16t-38.857 16l-77.714 77.714q-16 16-16 38.857t16 38.857l168 168-168 168q-16 16-16 38.857t16 38.857l77.714 77.714q16 16 38.857 16t38.857-16l168-168 168 168q16 16 38.857 16t38.857-16l77.714-77.714q16-16 16-38.857t-16-38.857l-168-168 168-168q16-16 16-38.857z" horiz-adv-x="805" />
24
+ <glyph unicode="&#xe60e;" d="M585.143 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-128v-128q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v128h-128q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h128v128q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857v-128h128q7.429 0 12.857-5.429t5.429-12.857zM658.286 475.428q0 105.714-75.143 180.857t-180.857 75.143-180.857-75.143-75.143-180.857 75.143-180.857 180.857-75.143 180.857 75.143 75.143 180.857zM950.857 0q0-30.286-21.429-51.714t-51.714-21.429q-30.857 0-51.429 21.714l-196 195.429q-102.286-70.857-228-70.857-81.714 0-156.286 31.714t-128.571 85.714-85.714 128.571-31.714 156.286 31.714 156.286 85.714 128.571 128.571 85.714 156.286 31.714 156.286-31.714 128.571-85.714 85.714-128.571 31.714-156.286q0-125.714-70.857-228l196-196q21.143-21.143 21.143-51.429z" horiz-adv-x="951" />
25
+ <glyph unicode="&#xe60f;" d="M585.143 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-329.143q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h329.143q7.429 0 12.857-5.429t5.429-12.857zM658.286 475.428q0 105.714-75.143 180.857t-180.857 75.143-180.857-75.143-75.143-180.857 75.143-180.857 180.857-75.143 180.857 75.143 75.143 180.857zM950.857 0q0-30.286-21.429-51.714t-51.714-21.429q-30.857 0-51.429 21.714l-196 195.429q-102.286-70.857-228-70.857-81.714 0-156.286 31.714t-128.571 85.714-85.714 128.571-31.714 156.286 31.714 156.286 85.714 128.571 128.571 85.714 156.286 31.714 156.286-31.714 128.571-85.714 85.714-128.571 31.714-156.286q0-125.714-70.857-228l196-196q21.143-21.143 21.143-51.429z" horiz-adv-x="951" />
26
+ <glyph unicode="&#xe610;" d="M877.714 438.857q0-89.143-34.857-170.286t-93.714-140-140-93.714-170.286-34.857-170.286 34.857-140 93.714-93.714 140-34.857 170.286q0 104 46 196t129.429 154.286q24.571 18.286 54.571 14.286t47.714-28.571q18.286-24 14-54t-28.286-48.286q-56-42.286-86.571-103.429t-30.571-130.286q0-59.429 23.143-113.429t62.571-93.429 93.429-62.571 113.429-23.143 113.429 23.143 93.429 62.571 62.571 93.429 23.143 113.429q0 69.143-30.571 130.286t-86.571 103.429q-24 18.286-28.286 48.286t14 54q17.714 24.571 48 28.571t54.286-14.286q83.429-62.286 129.429-154.286t46-196zM512 877.714v-365.714q0-29.714-21.714-51.429t-51.429-21.714-51.429 21.714-21.714 51.429v365.714q0 29.714 21.714 51.429t51.429 21.714 51.429-21.714 21.714-51.429z" horiz-adv-x="878" />
27
+ <glyph unicode="&#xe611;" d="M146.286 128v-109.714q0-8-5.143-13.143t-13.143-5.143h-109.714q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143zM365.714 201.143v-182.857q0-8-5.143-13.143t-13.143-5.143h-109.714q-8 0-13.143 5.143t-5.143 13.143v182.857q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143zM585.143 347.428v-329.143q0-8-5.143-13.143t-13.143-5.143h-109.714q-8 0-13.143 5.143t-5.143 13.143v329.143q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143zM804.571 566.857v-548.571q0-8-5.143-13.143t-13.143-5.143h-109.714q-8 0-13.143 5.143t-5.143 13.143v548.571q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143zM1024 859.428v-841.143q0-8-5.143-13.143t-13.143-5.143h-109.714q-8 0-13.143 5.143t-5.143 13.143v841.143q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143z" />
28
+ <glyph unicode="&#xe612;" d="M585.143 438.857q0 60.571-42.857 103.429t-103.429 42.857-103.429-42.857-42.857-103.429 42.857-103.429 103.429-42.857 103.429 42.857 42.857 103.429zM877.714 501.143v-126.857q0-6.857-4.571-13.143t-11.429-7.429l-105.714-16q-10.857-30.857-22.286-52 20-28.571 61.143-78.857 5.714-6.857 5.714-14.286t-5.143-13.143q-15.429-21.143-56.571-61.714t-53.714-40.571q-6.857 0-14.857 5.143l-78.857 61.714q-25.143-13.143-52-21.714-9.143-77.714-16.571-106.286-4-16-20.571-16h-126.857q-8 0-14 4.857t-6.571 12.286l-16 105.143q-28 9.143-51.429 21.143l-80.571-61.143q-5.714-5.143-14.286-5.143-8 0-14.286 6.286-72 65.143-94.286 96-4 5.714-4 13.143 0 6.857 4.571 13.143 8.571 12 29.143 38t30.857 40.286q-15.429 28.571-23.429 56.571l-104.571 15.429q-7.429 1.143-12 7.143t-4.571 13.429v126.857q0 6.857 4.571 13.143t10.857 7.429l106.286 16q8 26.286 22.286 52.571-22.857 32.571-61.143 78.857-5.714 6.857-5.714 13.714 0 5.714 5.143 13.143 14.857 20.571 56.286 61.429t54 40.857q7.429 0 14.857-5.714l78.857-61.143q25.143 13.143 52 21.714 9.143 77.714 16.571 106.286 4 16 20.571 16h126.857q8 0 14-4.857t6.571-12.286l16-105.143q28-9.143 51.429-21.143l81.143 61.143q5.143 5.143 13.714 5.143 7.429 0 14.286-5.714 73.714-68 94.286-97.143 4-4.571 4-12.571 0-6.857-4.571-13.143-8.571-12-29.143-38t-30.857-40.286q14.857-28.571 23.429-56l104.571-16q7.429-1.143 12-7.143t4.571-13.429z" horiz-adv-x="878" />
29
+ <glyph unicode="&#xe613;" d="M804.571 384v-274.286q0-14.857-10.857-25.714t-25.714-10.857h-219.429v219.429h-146.286v-219.429h-219.429q-14.857 0-25.714 10.857t-10.857 25.714v274.286q0 0.571 0.286 1.714t0.286 1.714l328.571 270.857 328.571-270.857q0.571-1.143 0.571-3.429zM932 423.428l-35.429-42.286q-4.571-5.143-12-6.286h-1.714q-7.429 0-12 4l-395.429 329.714-395.429-329.714q-6.857-4.571-13.714-4-7.429 1.143-12 6.286l-35.429 42.286q-4.571 5.714-4 13.429t6.286 12.286l410.857 342.286q18.286 14.857 43.429 14.857t43.429-14.857l139.429-116.571v111.429q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-233.143l125.143-104q5.714-4.571 6.286-12.286t-4-13.429z" horiz-adv-x="951" />
30
+ <glyph unicode="&#xe614;" d="M73.143 73.143h585.143v438.857h-237.714q-22.857 0-38.857 16t-16 38.857v237.714h-292.571v-731.429zM438.857 585.143h214.857q-5.714 16.571-12.571 23.429l-178.857 178.857q-6.857 6.857-23.429 12.571v-214.857zM731.429 566.857v-512q0-22.857-16-38.857t-38.857-16h-621.714q-22.857 0-38.857 16t-16 38.857v768q0 22.857 16 38.857t38.857 16h365.714q22.857 0 50.286-11.429t43.429-27.429l178.286-178.286q16-16 27.429-43.429t11.429-50.286z" horiz-adv-x="731" />
31
+ <glyph unicode="&#xe615;" d="M512 640v-256q0-8-5.143-13.143t-13.143-5.143h-182.857q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h128v201.143q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143zM749.714 438.857q0 84.571-41.714 156t-113.143 113.143-156 41.714-156-41.714-113.143-113.143-41.714-156 41.714-156 113.143-113.143 156-41.714 156 41.714 113.143 113.143 41.714 156zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
32
+ <glyph unicode="&#xe616;" d="M634.857 381.714v2.286l-13.714 182.857q-0.571 7.429-6.286 12.857t-13.143 5.429h-106.286q-7.429 0-13.143-5.429t-6.286-12.857l-13.714-182.857v-2.286q-0.571-6.857 4.571-11.429t12-4.571h139.429q6.857 0 12 4.571t4.571 11.429zM1068.571 114.857q0-41.714-26.286-41.714h-402.286q7.429 0 12.571 5.429t4.571 12.857l-11.429 146.286q-0.571 7.429-6.286 12.857t-13.143 5.429h-155.429q-7.429 0-13.143-5.429t-6.286-12.857l-11.429-146.286q-0.571-7.429 4.571-12.857t12.571-5.429h-402.286q-26.286 0-26.286 41.714 0 30.857 14.857 66.286l238.286 596.571q4.571 10.857 14.857 18.857t21.714 8h193.714q-7.429 0-13.143-5.429t-6.286-12.857l-8.571-109.714q-0.571-8 4.571-13.143t12.571-5.143h94.857q7.429 0 12.571 5.143t4.571 13.143l-8.571 109.714q-0.571 7.429-6.286 12.857t-13.143 5.429h193.714q11.429 0 21.714-8t14.857-18.857l238.286-596.571q14.857-35.429 14.857-66.286z" horiz-adv-x="1097" />
33
+ <glyph unicode="&#xe617;" d="M731.429 182.857q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM877.714 182.857q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM950.857 310.857v-182.857q0-22.857-16-38.857t-38.857-16h-841.143q-22.857 0-38.857 16t-16 38.857v182.857q0 22.857 16 38.857t38.857 16h265.714l77.143-77.714q33.143-32 77.714-32t77.714 32l77.714 77.714h265.143q22.857 0 38.857-16t16-38.857zM765.143 636q9.714-23.429-8-40l-256-256q-10.286-10.857-25.714-10.857t-25.714 10.857l-256 256q-17.714 16.571-8 40 9.714 22.286 33.714 22.286h146.286v256q0 14.857 10.857 25.714t25.714 10.857h146.286q14.857 0 25.714-10.857t10.857-25.714v-256h146.286q24 0 33.714-22.286z" horiz-adv-x="951" />
34
+ <glyph unicode="&#xe618;" d="M640 420.571q0-6.857-5.714-13.714l-182.286-182.286q-6.286-5.143-13.143-5.143t-13.143 5.143l-182.857 182.857q-8.571 9.143-4 20 4.571 11.429 17.143 11.429h109.714v201.143q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-201.143h109.714q8 0 13.143-5.143t5.143-13.143zM438.857 749.714q-84.571 0-156-41.714t-113.143-113.143-41.714-156 41.714-156 113.143-113.143 156-41.714 156 41.714 113.143 113.143 41.714 156-41.714 156-113.143 113.143-156 41.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
35
+ <glyph unicode="&#xe619;" d="M638.857 450.286q-4.571-11.429-17.143-11.429h-109.714v-201.143q0-8-5.143-13.143t-13.143-5.143h-109.714q-8 0-13.143 5.143t-5.143 13.143v201.143h-109.714q-8 0-13.143 5.143t-5.143 13.143q0 6.857 5.714 13.714l182.286 182.286q6.286 5.143 13.143 5.143t13.143-5.143l182.857-182.857q8.571-9.143 4-20zM438.857 749.714q-84.571 0-156-41.714t-113.143-113.143-41.714-156 41.714-156 113.143-113.143 156-41.714 156 41.714 113.143 113.143 41.714 156-41.714 156-113.143 113.143-156 41.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
36
+ <glyph unicode="&#xe61a;" d="M584.571 402.286h180.571q-0.571 1.714-1.429 4.571t-1.429 4.571l-121.143 283.429h-404.571l-121.143-283.429q-0.571-1.143-1.429-4.571t-1.429-4.571h180.571l54.286-109.714h182.857zM877.714 385.143v-275.429q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v275.429q0 35.429 14.286 70.286l136 315.429q5.714 14.286 20.857 24t30 9.714h475.429q14.857 0 30-9.714t20.857-24l136-315.429q14.286-34.857 14.286-70.286z" horiz-adv-x="878" />
37
+ <glyph unicode="&#xe61b;" d="M676.571 438.857q0-21.143-18.286-31.429l-310.857-182.857q-8.571-5.143-18.286-5.143-9.143 0-18.286 4.571-18.286 10.857-18.286 32v365.714q0 21.143 18.286 32 18.857 10.286 36.571-0.571l310.857-182.857q18.286-10.286 18.286-31.429zM749.714 438.857q0 84.571-41.714 156t-113.143 113.143-156 41.714-156-41.714-113.143-113.143-41.714-156 41.714-156 113.143-113.143 156-41.714 156 41.714 113.143 113.143 41.714 156zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
38
+ <glyph unicode="&#xe61c;" d="M877.714 804.571v-256q0-14.857-10.857-25.714t-25.714-10.857h-256q-24 0-33.714 22.857-9.714 22.286 8 39.429l78.857 78.857q-84.571 78.286-199.429 78.286-59.429 0-113.429-23.143t-93.429-62.571-62.571-93.429-23.143-113.429 23.143-113.429 62.571-93.429 93.429-62.571 113.429-23.143q68 0 128.571 29.714t102.286 84q4 5.714 13.143 6.857 8 0 14.286-5.143l78.286-78.857q5.143-4.571 5.429-11.714t-4.286-12.857q-62.286-75.429-150.857-116.857t-186.857-41.429q-89.143 0-170.286 34.857t-140 93.714-93.714 140-34.857 170.286 34.857 170.286 93.714 140 140 93.714 170.286 34.857q84 0 162.571-31.714t139.714-89.429l74.286 73.714q16.571 17.714 40 8 22.286-9.714 22.286-33.714z" horiz-adv-x="878" />
39
+ <glyph unicode="&#xe61d;" d="M863.429 347.428q0-2.857-0.571-4-36.571-153.143-153.143-248.286t-273.143-95.143q-83.429 0-161.429 31.429t-139.143 89.714l-73.714-73.714q-10.857-10.857-25.714-10.857t-25.714 10.857-10.857 25.714v256q0 14.857 10.857 25.714t25.714 10.857h256q14.857 0 25.714-10.857t10.857-25.714-10.857-25.714l-78.286-78.286q40.571-37.714 92-58.286t106.857-20.571q76.571 0 142.857 37.143t106.286 102.286q6.286 9.714 30.286 66.857 4.571 13.143 17.143 13.143h109.714q7.429 0 12.857-5.429t5.429-12.857zM877.714 804.571v-256q0-14.857-10.857-25.714t-25.714-10.857h-256q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714l78.857 78.857q-84.571 78.286-199.429 78.286-76.571 0-142.857-37.143t-106.286-102.286q-6.286-9.714-30.286-66.857-4.571-13.143-17.143-13.143h-113.714q-7.429 0-12.857 5.429t-5.429 12.857v4q37.143 153.143 154.286 248.286t274.286 95.143q83.429 0 162.286-31.714t140-89.429l74.286 73.714q10.857 10.857 25.714 10.857t25.714-10.857 10.857-25.714z" horiz-adv-x="878" />
40
+ <glyph unicode="&#xe61e;" d="M219.429 274.286v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM219.429 420.571v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM219.429 566.857v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM877.714 274.286v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-548.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h548.571q7.429 0 12.857-5.429t5.429-12.857zM877.714 420.571v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-548.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h548.571q7.429 0 12.857-5.429t5.429-12.857zM877.714 566.857v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-548.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h548.571q7.429 0 12.857-5.429t5.429-12.857zM950.857 164.571v475.429q0 7.429-5.429 12.857t-12.857 5.429h-841.143q-7.429 0-12.857-5.429t-5.429-12.857v-475.429q0-7.429 5.429-12.857t12.857-5.429h841.143q7.429 0 12.857 5.429t5.429 12.857zM1024 786.286v-621.714q0-37.714-26.857-64.571t-64.571-26.857h-841.143q-37.714 0-64.571 26.857t-26.857 64.571v621.714q0 37.714 26.857 64.571t64.571 26.857h841.143q37.714 0 64.571-26.857t26.857-64.571z" />
41
+ <glyph unicode="&#xe61f;" d="M182.857 512h292.571v109.714q0 60.571-42.857 103.429t-103.429 42.857-103.429-42.857-42.857-103.429v-109.714zM658.286 457.143v-329.143q0-22.857-16-38.857t-38.857-16h-548.571q-22.857 0-38.857 16t-16 38.857v329.143q0 22.857 16 38.857t38.857 16h18.286v109.714q0 105.143 75.429 180.571t180.571 75.429 180.571-75.429 75.429-180.571v-109.714h18.286q22.857 0 38.857-16t16-38.857z" horiz-adv-x="658" />
42
+ <glyph unicode="&#xe620;" d="M182.857 804.571q0-41.143-36.571-62.857v-723.429q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v723.429q-36.571 21.714-36.571 62.857 0 30.286 21.429 51.714t51.714 21.429 51.714-21.429 21.429-51.714zM1024 768v-436q0-14.286-7.143-22t-22.571-15.714q-122.857-66.286-210.857-66.286-34.857 0-70.571 12.571t-62 27.429-66 27.429-81.429 12.571q-109.714 0-265.143-83.429-9.714-5.143-18.857-5.143-14.857 0-25.714 10.857t-10.857 25.714v424q0 18.286 17.714 31.429 12 8 45.143 24.571 134.857 68.571 240.571 68.571 61.143 0 114.286-16.571t125.143-50.286q21.714-10.857 50.286-10.857 30.857 0 67.143 12t62.857 26.857 50.286 26.857 31.143 12q14.857 0 25.714-10.857t10.857-25.714z" />
43
+ <glyph unicode="&#xe621;" d="M950.857 444.571q0-94.857-34.286-179.429l-11.429-28-105.714-18.857q-12.571-47.429-51.714-78t-89.429-30.571v-18.286q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v329.143q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143v-18.286q40.571 0 74.286-20.286t53.143-54.571l38.857 6.857q16.571 54.286 16.571 110.286 0 84.571-50.286 159.429t-135.143 119.429-180.286 44.571-180.286-44.571-135.143-119.429-50.286-159.429q0-56 16.571-110.286l38.857-6.857q19.429 34.286 53.143 54.571t74.286 20.286v18.286q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143v-329.143q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v18.286q-50.286 0-89.429 30.571t-51.714 78l-105.714 18.857-11.429 28q-34.286 84.571-34.286 179.429 0 86.286 38.286 166.286t102.286 138.571 152 93.429 182.857 34.857 182.857-34.857 152-93.429 102.286-138.571 38.286-166.286z" horiz-adv-x="951" />
44
+ <glyph unicode="&#xe622;" d="M438.857 749.714v-621.714q0-14.857-10.857-25.714t-25.714-10.857-25.714 10.857l-190.286 190.286h-149.714q-14.857 0-25.714 10.857t-10.857 25.714v219.429q0 14.857 10.857 25.714t25.714 10.857h149.714l190.286 190.286q10.857 10.857 25.714 10.857t25.714-10.857 10.857-25.714z" horiz-adv-x="439" />
45
+ <glyph unicode="&#xe623;" d="M438.857 749.714v-621.714q0-14.857-10.857-25.714t-25.714-10.857-25.714 10.857l-190.286 190.286h-149.714q-14.857 0-25.714 10.857t-10.857 25.714v219.429q0 14.857 10.857 25.714t25.714 10.857h149.714l190.286 190.286q10.857 10.857 25.714 10.857t25.714-10.857 10.857-25.714zM658.286 438.857q0-43.429-24.286-80.857t-64.286-53.429q-5.714-2.857-14.286-2.857-14.857 0-25.714 10.571t-10.857 26q0 12 6.857 20.286t16.571 14.286 19.429 13.143 16.571 20.286 6.857 32.571-6.857 32.571-16.571 20.286-19.429 13.143-16.571 14.286-6.857 20.286q0 15.429 10.857 26t25.714 10.571q8.571 0 14.286-2.857 40-15.429 64.286-53.143t24.286-81.143z" horiz-adv-x="658" />
46
+ <glyph unicode="&#xe624;" d="M438.857 749.714v-621.714q0-14.857-10.857-25.714t-25.714-10.857-25.714 10.857l-190.286 190.286h-149.714q-14.857 0-25.714 10.857t-10.857 25.714v219.429q0 14.857 10.857 25.714t25.714 10.857h149.714l190.286 190.286q10.857 10.857 25.714 10.857t25.714-10.857 10.857-25.714zM658.286 438.857q0-43.429-24.286-80.857t-64.286-53.429q-5.714-2.857-14.286-2.857-14.857 0-25.714 10.571t-10.857 26q0 12 6.857 20.286t16.571 14.286 19.429 13.143 16.571 20.286 6.857 32.571-6.857 32.571-16.571 20.286-19.429 13.143-16.571 14.286-6.857 20.286q0 15.429 10.857 26t25.714 10.571q8.571 0 14.286-2.857 40-15.429 64.286-53.143t24.286-81.143zM804.571 438.857q0-87.429-48.571-161.429t-128.571-107.714q-7.429-2.857-14.286-2.857-15.429 0-26.286 10.857t-10.857 25.714q0 22.286 22.286 33.714 32 16.571 43.429 25.143 42.286 30.857 66 77.429t23.714 99.143-23.714 99.143-66 77.429q-11.429 8.571-43.429 25.143-22.286 11.429-22.286 33.714 0 14.857 10.857 25.714t25.714 10.857q7.429 0 14.857-2.857 80-33.714 128.571-107.714t48.571-161.429zM950.857 438.857q0-131.429-72.571-241.429t-193.143-162q-7.429-2.857-14.857-2.857-14.857 0-25.714 10.857t-10.857 25.714q0 20.571 22.286 33.714 4 2.286 12.857 6t12.857 6q26.286 14.286 46.857 29.143 70.286 52 109.714 129.714t39.429 165.143-39.429 165.143-109.714 129.714q-20.571 14.857-46.857 29.143-4 2.286-12.857 6t-12.857 6q-22.286 13.143-22.286 33.714 0 14.857 10.857 25.714t25.714 10.857q7.429 0 14.857-2.857 120.571-52 193.143-162t72.571-241.429z" horiz-adv-x="951" />
47
+ <glyph unicode="&#xe625;" d="M219.429 292.571v-73.143h-73.143v73.143h73.143zM219.429 731.428v-73.143h-73.143v73.143h73.143zM658.286 731.428v-73.143h-73.143v73.143h73.143zM73.143 146.857h219.429v218.857h-219.429v-218.857zM73.143 585.143h219.429v219.429h-219.429v-219.429zM512 585.143h219.429v219.429h-219.429v-219.429zM365.714 438.857v-365.714h-365.714v365.714h365.714zM658.286 146.286v-73.143h-73.143v73.143h73.143zM804.571 146.286v-73.143h-73.143v73.143h73.143zM804.571 438.857v-219.429h-219.429v73.143h-73.143v-219.429h-73.143v365.714h219.429v-73.143h73.143v73.143h73.143zM365.714 877.714v-365.714h-365.714v365.714h365.714zM804.571 877.714v-365.714h-365.714v365.714h365.714z" horiz-adv-x="805" />
48
+ <glyph unicode="&#xe626;" d="M36 73.143h-36v804.571h36v-804.571zM72 73.714h-18.286v804h18.286v-804zM125.714 73.714h-17.714v804h17.714v-804zM215.429 73.714h-17.714v804h17.714v-804zM305.143 73.714h-35.429v804h35.429v-804zM377.143 73.714h-17.714v804h17.714v-804zM413.143 73.714h-17.714v804h17.714v-804zM449.143 73.714h-17.714v804h17.714v-804zM538.857 73.714h-36v804h36v-804zM628.571 73.714h-36v804h36v-804zM700.571 73.714h-36v804h36v-804zM772.571 73.714h-36v804h36v-804zM826.286 73.714h-36v804h36v-804zM934.286 73.714h-53.714v804h53.714v-804zM970.286 73.714h-18.286v804h18.286v-804zM1024 73.143h-36v804.571h36v-804.571z" />
49
+ <glyph unicode="&#xe627;" d="M256 694.857q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM865.714 365.714q0-30.286-21.143-51.429l-280.571-281.143q-22.286-21.143-52-21.143-30.286 0-51.429 21.143l-408.571 409.143q-21.714 21.143-36.857 57.714t-15.143 66.857v237.714q0 29.714 21.714 51.429t51.429 21.714h237.714q30.286 0 66.857-15.143t58.286-36.857l408.571-408q21.143-22.286 21.143-52z" horiz-adv-x="878" />
50
+ <glyph unicode="&#xe628;" d="M256 694.857q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM865.714 365.714q0-30.286-21.143-51.429l-280.571-281.143q-22.286-21.143-52-21.143-30.286 0-51.429 21.143l-408.571 409.143q-21.714 21.143-36.857 57.714t-15.143 66.857v237.714q0 29.714 21.714 51.429t51.429 21.714h237.714q30.286 0 66.857-15.143t58.286-36.857l408.571-408q21.143-22.286 21.143-52zM1085.143 365.714q0-30.286-21.143-51.429l-280.571-281.143q-22.286-21.143-52-21.143-20.571 0-33.714 8t-30.286 25.714l268.571 268.571q21.143 21.143 21.143 51.429 0 29.714-21.143 52l-408.571 408q-21.714 21.714-58.286 36.857t-66.857 15.143h128q30.286 0 66.857-15.143t58.286-36.857l408.571-408q21.143-22.286 21.143-52z" horiz-adv-x="1097" />
51
+ <glyph unicode="&#xe629;" d="M936.571 677.714q22.857-32.571 10.286-73.714l-157.143-517.714q-10.857-36.571-43.714-61.429t-70-24.857h-527.429q-44 0-84.857 30.571t-56.857 75.143q-13.714 38.286-1.143 72.571 0 2.286 1.714 15.429t2.286 21.143q0.571 4.571-1.714 12.286t-1.714 11.143q1.143 6.286 4.571 12t9.429 13.429 9.429 13.429q13.143 21.714 25.714 52.286t17.143 52.286q1.714 5.714 0.286 17.143t-0.286 16q1.714 6.286 9.714 16t9.714 13.143q12 20.571 24 52.571t14.286 51.429q0.571 5.143-1.429 18.286t0.286 16q2.286 7.429 12.571 17.429t12.571 12.857q10.857 14.857 24.286 48.286t15.714 55.143q0.571 4.571-1.714 14.571t-1.143 15.143q1.143 4.571 5.143 10.286t10.286 13.143 9.714 12q4.571 6.857 9.429 17.429t8.571 20 9.143 20.571 11.143 18.286 15.143 13.429 20.571 6.571 27.143-3.143l-0.571-1.714q21.714 5.143 29.143 5.143h434.857q42.286 0 65.143-32t10.286-74.286l-156.571-517.714q-20.571-68-40.857-87.714t-73.429-19.714h-496.571q-15.429 0-21.714-8.571-6.286-9.143-0.571-24.571 13.714-40 82.286-40h527.429q16.571 0 32 8.857t20 23.714l171.429 564q4 12.571 2.857 32.571 21.714-8.571 33.714-24.571zM328.571 676.571q-2.286-7.429 1.143-12.857t11.429-5.429h347.429q7.429 0 14.571 5.429t9.429 12.857l12 36.571q2.286 7.429-1.143 12.857t-11.429 5.429h-347.429q-7.429 0-14.571-5.429t-9.429-12.857zM281.143 530.286q-2.286-7.429 1.143-12.857t11.429-5.429h347.429q7.429 0 14.571 5.429t9.429 12.857l12 36.571q2.286 7.429-1.143 12.857t-11.429 5.429h-347.429q-7.429 0-14.571-5.429t-9.429-12.857z" horiz-adv-x="951" />
52
+ <glyph unicode="&#xe62a;" d="M665.143 877.714q13.143 0 25.143-5.143 18.857-7.429 30-23.429t11.143-35.429v-736.571q0-19.429-11.143-35.429t-30-23.429q-10.857-4.571-25.143-4.571-27.429 0-47.429 18.286l-252 242.286-252-242.286q-20.571-18.857-47.429-18.857-13.143 0-25.143 5.143-18.857 7.429-30 23.429t-11.143 35.429v736.571q0 19.429 11.143 35.429t30 23.429q12 5.143 25.143 5.143h598.857z" horiz-adv-x="731" />
53
+ <glyph unicode="&#xe62b;" d="M219.429 73.143h512v146.286h-512v-146.286zM219.429 438.857h512v219.429h-91.429q-22.857 0-38.857 16t-16 38.857v91.429h-365.714v-365.714zM877.714 402.286q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM950.857 402.286v-237.714q0-7.429-5.429-12.857t-12.857-5.429h-128v-91.429q0-22.857-16-38.857t-38.857-16h-548.571q-22.857 0-38.857 16t-16 38.857v91.429h-128q-7.429 0-12.857 5.429t-5.429 12.857v237.714q0 45.143 32.286 77.429t77.429 32.286h36.571v310.857q0 22.857 16 38.857t38.857 16h384q22.857 0 50.286-11.429t43.429-27.429l86.857-86.857q16-16 27.429-43.429t11.429-50.286v-146.286h36.571q45.143 0 77.429-32.286t32.286-77.429z" horiz-adv-x="951" />
54
+ <glyph unicode="&#xe62c;" d="M548.571 566.857q68 0 116.286-48.286t48.286-116.286-48.286-116.286-116.286-48.286-116.286 48.286-48.286 116.286 48.286 116.286 116.286 48.286zM950.857 804.571q60.571 0 103.429-42.857t42.857-103.429v-512q0-60.571-42.857-103.429t-103.429-42.857h-804.571q-60.571 0-103.429 42.857t-42.857 103.429v512q0 60.571 42.857 103.429t103.429 42.857h128l29.143 77.714q10.857 28 39.714 48.286t59.143 20.286h292.571q30.286 0 59.143-20.286t39.714-48.286l29.143-77.714h128zM548.571 146.286q105.714 0 180.857 75.143t75.143 180.857-75.143 180.857-180.857 75.143-180.857-75.143-75.143-180.857 75.143-180.857 180.857-75.143z" horiz-adv-x="1097" />
55
+ <glyph unicode="&#xe62d;" d="M414.286 631.428l-97.143-257.143q41.714-0.571 87.714-1.143t68-0.857 30-0.286l16.571 1.143q-18.286 54.286-52.571 137.714-30.286 75.429-52.571 120.571zM12 0h-12l1.143 45.143q12.571 4 45.714 10.286 50.857 9.143 62.857 17.714 11.429 9.143 27.429 38.857l135.429 352 160 413.714h73.143l6.286-12 117.143-274.286q58.857-138.286 70.857-169.714 22.286-58.286 54.857-134.286 14.857-33.143 37.143-93.714 13.714-38.286 37.143-85.143 12.571-28 20-32.571 12.571-10.857 39.429-13.143 26.857-3.429 58.857-15.429 3.429-22.286 3.429-32.571 0-8-0.571-14.857-45.714 0-109.714 4.571-53.143 4.571-108 4.571-45.143 0-77.143-1.143l-114.286-6.286-33.143-1.143q0 25.714 2.286 44.571l74.857 16q32 7.429 38.857 13.143 6.857 6.857 6.857 15.429t-3.429 18.286l-26.857 65.143-52.571 130.286-257.143 1.143q-16.571-37.143-59.429-156.571-13.143-36.571-13.143-48 0-17.714 9.714-24.571 14.857-12 58.857-18.286 1.714 0 7.714-1.143t17.143-2.857 23.143-3.429q0.571-16 0.571-33.143 0-9.714-1.143-15.429-37.714 0-199.429 11.429l-27.429-4.571q-46.286-8-95.429-8z" horiz-adv-x="951" />
56
+ <glyph unicode="&#xe62e;" d="M317.143 81.714q43.429-18.286 80-18.286 74.857 0 123.429 23.429t69.714 64.571q21.714 40 21.714 103.429 0 65.143-23.429 102.857-33.143 53.714-80.571 72-45.714 18.286-141.143 18.286-42.286 0-57.714-5.714v-82.286l-0.571-98.857 1.714-154.286q0-8.571 6.857-25.143zM309.143 508q24.571-4 62.286-4 100 0 150.857 37.143t50.857 128q0 64-48.571 106.857-48 42.857-145.714 42.857-29.714 0-74.286-7.429 0-25.143 1.143-44 4-69.714 3.429-159.429l-0.571-56q0-24.571 0.571-44zM0 0l1.143 53.714q25.714 5.143 38.857 6.857 44 6.857 70.286 17.714 9.714 15.429 12 29.143 5.143 37.714 5.143 110.857l-1.143 284q-2.857 146.286-5.143 230.857-0.571 49.714-6.286 62.286-0.571 2.286-6.857 6.857-10.286 6.857-39.429 8.571-17.143 1.143-65.143 7.429l-2.286 47.429 148.571 3.429 217.143 7.429 25.714 0.571q2.857 0 8 0.286t8 0.286q0.571 0 12.286-0.286t23.143-0.286h42.286q50.286 0 109.143-15.429 24.571-7.429 54.857-22.286 32.571-16.571 58.286-43.429 25.143-26.857 37.143-59.429t12-69.714q0-40-18.286-73.143t-54.286-60q-14.857-11.429-85.714-44 101.143-23.429 152.571-83.429 52.571-60.571 52.571-134.857 0-43.429-16.571-92-12-35.429-40.571-66.857-37.714-41.143-80-61.714-41.714-20.571-116-34.286-46.857-8.571-113.143-6.286l-112.571 2.286q-48 1.143-170.286-6.286-18.857-1.714-155.429-6.286z" horiz-adv-x="805" />
57
+ <glyph unicode="&#xe62f;" d="M0 1.143l9.714 48.571q2.286 0.571 44 11.429 43.429 10.857 66.286 22.286 16.571 21.143 23.429 57.714l15.429 79.429 32 153.143 6.857 36.571q4.571 25.143 9.714 48.286t9.143 38.286 7.143 26.571 5.143 17.429 2 6.571l16.571 89.714 9.143 36 12.571 77.143 4.571 28.571v21.714q-23.429 12.571-82.286 16-16 1.143-21.714 2.286l10.857 58.857 181.143-8q22.286-1.143 41.714-1.143 37.714 0 122.286 5.143 18.857 1.143 38.857 2.571t20.571 1.429q-1.143-10.857-3.429-21.714-4-16.571-7.429-29.143-31.429-10.857-62.286-17.714-36.571-9.143-57.714-17.714-6.857-17.714-13.714-50.286-5.143-25.143-7.429-46.857-25.143-113.714-37.714-174.857l-34.857-177.714-21.714-90.286-24.571-134.286-6.857-25.714q-1.143-4 0.571-15.429 36.571-8.571 68-12 20.571-2.857 37.714-5.714-0.571-16.571-4-33.143-4-17.714-5.143-23.429-10.286 0-13.143-0.571-13.714-1.143-24-1.143-5.143 0-16 1.714-10.857 2.286-82.857 9.714l-113.143 1.143q-23.429 0.571-99.429-6.286-42.286-4-56-5.143z" horiz-adv-x="585" />
58
+ <glyph unicode="&#xe630;" d="M46.286 877.143l30.857-15.429q11.429-2.857 120.571-2.857h74.286l10.857 1.714 65.714 0.571 122.857-0.571h167.429l19.429-1.143q8-0.571 16 4t12 9.143l4 4.571 24 0.571q8.571 0 16-0.571v-59.714t0.571-75.143l0.571-57.143-0.571-33.143q0-18.286-2.286-29.143-22.286-8.571-38.857-10.286-14.286 24.571-30.857 73.143-4.571 13.714-8.857 35.714t-6.571 37.429-3.429 16.571q-7.429 8.571-15.429 10.857-4 1.143-24.286 1.143t-59.143-0.571-63.429-0.571q-19.429 0-38.286-2.857-5.714-55.429-4.571-77.714l0.571-86.857v-189.714l1.714-205.143-0.571-84q-0.571-26.286 6.286-48.571 28-14.286 50.857-18.286 1.143 0 10.286-2.857t25.143-7.429 24.571-6.857q17.143-4.571 28.571-10.286 2.857-25.714 2.857-28.571 0-5.714-1.714-16.571-8-0.571-19.429-0.571-62.857 0-106.857 5.714-41.143 4.571-136 4.571-50.286 0-133.143-8-27.429-2.286-40-2.286-1.143 12.571-1.143 14.857l-0.571 14.857v5.143q12 18.857 45.143 28 79.429 21.714 90.857 28.571 5.143 12 6.857 32 4.571 109.714 3.429 247.429l-2.857 244.571q-0.571 35.429-0.286 67.714t0.286 58.571-1.143 32.571-3.429 8.571q-3.429 2.857-8 3.429-21.714 3.429-84.571 3.429-24.571 0-57.143-7.714t-41.714-14q-7.429-5.143-12.571-18.857t-12.571-42.857-13.714-48q-3.429-10.857-11.143-18.286t-11.714-7.429q-25.143 15.429-32 25.143v218.857zM996.571 146.286q18.857 0 24-10.571t-6.286-25.429l-72-92.571q-11.429-14.857-28-14.857t-28 14.857l-72 92.571q-11.429 14.857-6.286 25.429t24 10.571h45.714v585.143h-45.714q-18.857 0-24 10.571t6.286 25.429l72 92.571q11.429 14.857 28 14.857t28-14.857l72-92.571q11.429-14.857 6.286-25.429t-24-10.571h-45.714v-585.143h45.714z" />
59
+ <glyph unicode="&#xe631;" d="M46.286 877.143l30.857-15.429q11.429-2.857 120.571-2.857h74.286l10.857 1.714 65.714 0.571 436.571-0.571 19.429-1.143q8-0.571 16 4t12 9.143l4 4.571 24 0.571q8.571 0 16-0.571v-59.714t0.571-75.143l0.571-57.143-0.571-33.143q0-18.286-2.286-29.143-22.286-8.571-38.857-10.286-14.286 24.571-30.857 73.143-4.571 13.714-8.857 35.714t-6.571 37.429-3.429 16.571q-7.429 8.571-15.429 10.857-4 1.143-33.429 1.143t-79.143-0.571-73.143-0.571q-53.714 0-72.571-2.857-5.714-55.429-4.571-77.714l0.571-86.857v29.714l1.714-205.143-0.571-84q-0.571-26.286 6.286-48.571 28-14.286 50.857-18.286 1.143 0 10.286-2.857t25.143-7.429 24.571-6.857q17.143-4.571 28.571-10.286 2.857-25.714 2.857-28.571 0-5.714-1.714-16.571-8-0.571-19.429-0.571-62.857 0-106.857 5.714-41.143 4.571-136 4.571-46.857 0-133.143-7.429-25.714-2.857-40-2.857-1.143 12.571-1.143 14.857l-0.571 14.857v5.143q12 18.857 45.143 28 79.429 21.714 90.857 28.571 5.143 12 6.857 32 3.429 78.286 3.429 247.429l-2.857 25.143q0 151.429-1.143 158.857-1.143 6.286-3.429 8.571-3.429 2.857-8 3.429-21.714 3.429-84.571 3.429-28.571 0-96.286-8t-75.714-13.714q-7.429-5.143-12.571-18.857t-12.571-42.857-13.714-48q-3.429-10.857-11.143-18.286t-11.714-7.429q-25.143 15.429-32 25.143v218.857zM860 137.714q14.857-11.429 14.857-28t-14.857-28l-92.571-72q-14.857-11.429-25.429-6.286t-10.571 24v45.714h-585.143v-45.714q0-18.857-10.571-24t-25.429 6.286l-92.571 72q-14.857 11.429-14.857 28t14.857 28l92.571 72q14.857 11.429 25.429 6.286t10.571-24v-45.714h585.143v45.714q0 18.857 10.571 24t25.429-6.286z" horiz-adv-x="878" />
60
+ <glyph unicode="&#xe632;" d="M1024 182.857v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM804.571 402.286v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-731.429q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h731.429q14.857 0 25.714-10.857t10.857-25.714zM950.857 621.714v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-877.714q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h877.714q14.857 0 25.714-10.857t10.857-25.714zM731.429 841.143v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-658.286q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h658.286q14.857 0 25.714-10.857t10.857-25.714z" />
61
+ <glyph unicode="&#xe633;" d="M1024 182.857v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM804.571 402.286v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-512q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h512q14.857 0 25.714-10.857t10.857-25.714zM950.857 621.714v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714zM731.429 841.143v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-365.714q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h365.714q14.857 0 25.714-10.857t10.857-25.714z" />
62
+ <glyph unicode="&#xe634;" d="M1024 182.857v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM1024 402.286v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-731.429q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h731.429q14.857 0 25.714-10.857t10.857-25.714zM1024 621.714v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-877.714q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h877.714q14.857 0 25.714-10.857t10.857-25.714zM1024 841.143v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-658.286q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h658.286q14.857 0 25.714-10.857t10.857-25.714z" />
63
+ <glyph unicode="&#xe635;" d="M1024 182.857v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM1024 402.286v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM1024 621.714v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM1024 841.143v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714z" />
64
+ <glyph unicode="&#xe636;" d="M146.286 201.143v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-109.714q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h109.714q7.429 0 12.857-5.429t5.429-12.857zM146.286 420.571v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-109.714q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h109.714q7.429 0 12.857-5.429t5.429-12.857zM146.286 640v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-109.714q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h109.714q7.429 0 12.857-5.429t5.429-12.857zM1024 201.143v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-768q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h768q7.429 0 12.857-5.429t5.429-12.857zM146.286 859.428v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-109.714q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h109.714q7.429 0 12.857-5.429t5.429-12.857zM1024 420.571v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-768q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h768q7.429 0 12.857-5.429t5.429-12.857zM1024 640v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-768q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h768q7.429 0 12.857-5.429t5.429-12.857zM1024 859.428v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-768q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h768q7.429 0 12.857-5.429t5.429-12.857z" />
65
+ <glyph unicode="&#xe637;" d="M219.429 640v-329.143q0-7.429-5.429-12.857t-12.857-5.429q-8 0-13.143 5.143l-164.571 164.571q-5.143 5.143-5.143 13.143t5.143 13.143l164.571 164.571q5.143 5.143 13.143 5.143 7.429 0 12.857-5.429t5.429-12.857zM1024 201.143v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-987.429q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h987.429q7.429 0 12.857-5.429t5.429-12.857zM1024 420.571v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-621.714q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h621.714q7.429 0 12.857-5.429t5.429-12.857zM1024 640v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-621.714q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h621.714q7.429 0 12.857-5.429t5.429-12.857zM1024 859.428v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-987.429q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h987.429q7.429 0 12.857-5.429t5.429-12.857z" />
66
+ <glyph unicode="&#xe638;" d="M201.143 475.428q0-8-5.143-13.143l-164.571-164.571q-5.143-5.143-13.143-5.143-7.429 0-12.857 5.429t-5.429 12.857v329.143q0 7.429 5.429 12.857t12.857 5.429q8 0 13.143-5.143l164.571-164.571q5.143-5.143 5.143-13.143zM1024 201.143v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-987.429q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h987.429q7.429 0 12.857-5.429t5.429-12.857zM1024 420.571v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-621.714q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h621.714q7.429 0 12.857-5.429t5.429-12.857zM1024 640v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-621.714q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h621.714q7.429 0 12.857-5.429t5.429-12.857zM1024 859.428v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-987.429q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h987.429q7.429 0 12.857-5.429t5.429-12.857z" />
67
+ <glyph unicode="&#xe639;" d="M1024 749.714v-621.714q0-24-22.286-33.714-7.429-2.857-14.286-2.857-15.429 0-25.714 10.857l-230.286 230.286v-94.857q0-68-48.286-116.286t-116.286-48.286h-402.286q-68 0-116.286 48.286t-48.286 116.286v402.286q0 68 48.286 116.286t116.286 48.286h402.286q68 0 116.286-48.286t48.286-116.286v-94.286l230.286 229.714q10.286 10.857 25.714 10.857 6.857 0 14.286-2.857 22.286-9.714 22.286-33.714z" />
68
+ <glyph unicode="&#xe63a;" d="M365.714 621.714q0-45.714-32-77.714t-77.714-32-77.714 32-32 77.714 32 77.714 77.714 32 77.714-32 32-77.714zM950.857 402.286v-256h-804.571v109.714l182.857 182.857 91.429-91.429 292.571 292.571zM1005.714 804.571h-914.286q-7.429 0-12.857-5.429t-5.429-12.857v-694.857q0-7.429 5.429-12.857t12.857-5.429h914.286q7.429 0 12.857 5.429t5.429 12.857v694.857q0 7.429-5.429 12.857t-12.857 5.429zM1097.143 786.286v-694.857q0-37.714-26.857-64.571t-64.571-26.857h-914.286q-37.714 0-64.571 26.857t-26.857 64.571v694.857q0 37.714 26.857 64.571t64.571 26.857h914.286q37.714 0 64.571-26.857t26.857-64.571z" horiz-adv-x="1097" />
69
+ <glyph unicode="&#xe63b;" d="M438.857 585.143q0 60.571-42.857 103.429t-103.429 42.857-103.429-42.857-42.857-103.429 42.857-103.429 103.429-42.857 103.429 42.857 42.857 103.429zM585.143 585.143q0-62.286-18.857-102.286l-208-442.286q-9.143-18.857-27.143-29.714t-38.571-10.857-38.571 10.857-26.571 29.714l-208.571 442.286q-18.857 40-18.857 102.286 0 121.143 85.714 206.857t206.857 85.714 206.857-85.714 85.714-206.857z" horiz-adv-x="585" />
70
+ <glyph unicode="&#xe63c;" d="M438.857 128v621.714q-84.571 0-156-41.714t-113.143-113.143-41.714-156 41.714-156 113.143-113.143 156-41.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
71
+ <glyph unicode="&#xe63d;" d="M292.571 292.571q0 20.571-11.429 39.429-0.571 0.571-8.857 12.857t-14.571 21.714-14.286 25.143-12 28.857q-2.286 9.143-12 9.143t-12-9.143q-4-13.143-12-28.857t-14.286-25.143-14.571-21.714-8.857-12.857q-11.429-18.857-11.429-39.429 0-30.286 21.429-51.714t51.714-21.429 51.714 21.429 21.429 51.714zM585.143 365.714q0-121.143-85.714-206.857t-206.857-85.714-206.857 85.714-85.714 206.857q0 82.857 46.286 157.143 3.429 5.143 35.714 51.714t57.714 86.286 56.857 101.714 47.429 115.143q5.143 17.143 19.429 26.857t29.143 9.714 29.429-9.714 19.143-26.857q16-53.143 47.429-115.143t56.857-101.714 57.714-86.286 35.714-51.714q46.286-72.571 46.286-157.143z" horiz-adv-x="585" />
72
+ <glyph unicode="&#xe63e;" d="M507.429 274.286l66.286 66.286-86.857 86.857-66.286-66.286v-32h54.857v-54.857h32zM758.857 685.714q-9.143 9.143-18.857-0.571l-200-200q-9.714-9.714-0.571-18.857t18.857 0.571l200 200q9.714 9.714 0.571 18.857zM804.571 346.286v-108.571q0-68-48.286-116.286t-116.286-48.286h-475.429q-68 0-116.286 48.286t-48.286 116.286v475.429q0 68 48.286 116.286t116.286 48.286h475.429q36 0 66.857-14.286 8.571-4 10.286-13.143 1.714-9.714-5.143-16.571l-28-28q-8-8-18.286-4.571-13.143 3.429-25.714 3.429h-475.429q-37.714 0-64.571-26.857t-26.857-64.571v-475.429q0-37.714 26.857-64.571t64.571-26.857h475.429q37.714 0 64.571 26.857t26.857 64.571v72q0 7.429 5.143 12.571l36.571 36.571q8.571 8.571 20 4t11.429-16.571zM749.714 768l164.571-164.571-384-384h-164.571v164.571zM1003.429 692.571l-52.571-52.571-164.571 164.571 52.571 52.571q16 16 38.857 16t38.857-16l86.857-86.857q16-16 16-38.857t-16-38.857z" />
73
+ <glyph unicode="&#xe63f;" d="M804.571 385.714v-148q0-68-48.286-116.286t-116.286-48.286h-475.429q-68 0-116.286 48.286t-48.286 116.286v475.429q0 68 48.286 116.286t116.286 48.286h145.714q7.429 0 12.857-5.429t5.429-12.857q0-15.429-14.857-18.286-44-14.857-76-34.286-5.714-2.286-9.143-2.286h-64q-37.714 0-64.571-26.857t-26.857-64.571v-475.429q0-37.714 26.857-64.571t64.571-26.857h475.429q37.714 0 64.571 26.857t26.857 64.571v122.286q0 10.857 10.286 16.571 16 7.429 30.857 21.143 9.143 9.143 20 4.571 12-5.143 12-16.571zM940 669.143l-219.429-219.429q-10.286-10.857-25.714-10.857-6.857 0-14.286 2.857-22.286 9.714-22.286 33.714v109.714h-91.429q-184.571 0-250.286-74.857-68-78.286-42.286-270.286 1.714-13.143-11.429-19.429-4.571-1.143-6.857-1.143-9.143 0-14.857 7.429-5.714 8-12 17.714t-22.571 39.143-28.286 56.857-22 65.143-10 69.714q0 28 2 52t8 51.429 16 50.286 26.857 46.571 39.143 42.286 54 35.143 71.143 27.714 91.143 17.429 112.286 6.286h91.429v109.714q0 24 22.286 33.714 7.429 2.857 14.286 2.857 14.857 0 25.714-10.857l219.429-219.429q10.857-10.857 10.857-25.714t-10.857-25.714z" horiz-adv-x="951" />
74
+ <glyph unicode="&#xe640;" d="M804.571 419.428v-181.714q0-68-48.286-116.286t-116.286-48.286h-475.429q-68 0-116.286 48.286t-48.286 116.286v475.429q0 68 48.286 116.286t116.286 48.286h475.429q36 0 66.857-14.286 8.571-4 10.286-13.143 1.714-9.714-5.143-16.571l-28-28q-5.714-5.714-13.143-5.714-1.714 0-5.143 1.143-13.143 3.429-25.714 3.429h-475.429q-37.714 0-64.571-26.857t-26.857-64.571v-475.429q0-37.714 26.857-64.571t64.571-26.857h475.429q37.714 0 64.571 26.857t26.857 64.571v145.143q0 7.429 5.143 12.571l36.571 36.571q5.714 5.714 13.143 5.714 3.429 0 6.857-1.714 11.429-4.571 11.429-16.571zM936.571 698.857l-465.143-465.143q-13.714-13.714-32.571-13.714t-32.571 13.714l-245.714 245.714q-13.714 13.714-13.714 32.571t13.714 32.571l62.857 62.857q13.714 13.714 32.571 13.714t32.571-13.714l150.286-150.286 369.714 369.714q13.714 13.714 32.571 13.714t32.571-13.714l62.857-62.857q13.714-13.714 13.714-32.571t-13.714-32.571z" horiz-adv-x="951" />
75
+ <glyph unicode="&#xe641;" d="M1024 438.857q0-14.857-10.857-25.714l-146.286-146.286q-10.857-10.857-25.714-10.857t-25.714 10.857-10.857 25.714v73.143h-219.429v-219.429h73.143q14.857 0 25.714-10.857t10.857-25.714-10.857-25.714l-146.286-146.286q-10.857-10.857-25.714-10.857t-25.714 10.857l-146.286 146.286q-10.857 10.857-10.857 25.714t10.857 25.714 25.714 10.857h73.143v219.429h-219.429v-73.143q0-14.857-10.857-25.714t-25.714-10.857-25.714 10.857l-146.286 146.286q-10.857 10.857-10.857 25.714t10.857 25.714l146.286 146.286q10.857 10.857 25.714 10.857t25.714-10.857 10.857-25.714v-73.143h219.429v219.429h-73.143q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714l146.286 146.286q10.857 10.857 25.714 10.857t25.714-10.857l146.286-146.286q10.857-10.857 10.857-25.714t-10.857-25.714-25.714-10.857h-73.143v-219.429h219.429v73.143q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857l146.286-146.286q10.857-10.857 10.857-25.714z" />
76
+ <glyph unicode="&#xe642;" d="M559.429 870.286q10.857 10.857 18.286 7.429t7.429-18.286v-841.143q0-14.857-7.429-18.286t-18.286 7.429l-405.714 405.714q-5.143 5.143-7.429 10.857v-387.429q0-14.857-10.857-25.714t-25.714-10.857h-73.143q-14.857 0-25.714 10.857t-10.857 25.714v804.571q0 14.857 10.857 25.714t25.714 10.857h73.143q14.857 0 25.714-10.857t10.857-25.714v-387.429q2.286 6.286 7.429 10.857z" horiz-adv-x="585" />
77
+ <glyph unicode="&#xe643;" d="M998.286 870.286q10.857 10.857 18.286 7.429t7.429-18.286v-841.143q0-14.857-7.429-18.286t-18.286 7.429l-405.714 405.714q-5.143 5.143-7.429 10.857v-405.714q0-14.857-7.429-18.286t-18.286 7.429l-405.714 405.714q-5.143 5.143-7.429 10.857v-387.429q0-14.857-10.857-25.714t-25.714-10.857h-73.143q-14.857 0-25.714 10.857t-10.857 25.714v804.571q0 14.857 10.857 25.714t25.714 10.857h73.143q14.857 0 25.714-10.857t10.857-25.714v-387.429q2.286 6.286 7.429 10.857l405.714 405.714q10.857 10.857 18.286 7.429t7.429-18.286v-405.714q2.286 6.286 7.429 10.857z" />
78
+ <glyph unicode="&#xe644;" d="M925.143 870.286q10.857 10.857 18.286 7.429t7.429-18.286v-841.143q0-14.857-7.429-18.286t-18.286 7.429l-405.714 405.714q-4.571 5.143-7.429 10.857v-405.714q0-14.857-7.429-18.286t-18.286 7.429l-405.714 405.714q-10.857 10.857-10.857 25.714t10.857 25.714l405.714 405.714q10.857 10.857 18.286 7.429t7.429-18.286v-405.714q2.857 6.286 7.429 10.857z" horiz-adv-x="951" />
79
+ <glyph unicode="&#xe645;" d="M790.857 421.143l-758.857-421.714q-13.143-7.429-22.571-1.714t-9.429 20.571v841.143q0 14.857 9.429 20.571t22.571-1.714l758.857-421.714q13.143-7.429 13.143-17.714t-13.143-17.714z" horiz-adv-x="805" />
80
+ <glyph unicode="&#xe646;" d="M877.714 841.143v-804.571q0-14.857-10.857-25.714t-25.714-10.857h-292.571q-14.857 0-25.714 10.857t-10.857 25.714v804.571q0 14.857 10.857 25.714t25.714 10.857h292.571q14.857 0 25.714-10.857t10.857-25.714zM365.714 841.143v-804.571q0-14.857-10.857-25.714t-25.714-10.857h-292.571q-14.857 0-25.714 10.857t-10.857 25.714v804.571q0 14.857 10.857 25.714t25.714 10.857h292.571q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="878" />
81
+ <glyph unicode="&#xe647;" d="M877.714 841.143v-804.571q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v804.571q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="878" />
82
+ <glyph unicode="&#xe648;" d="M25.714 7.428q-10.857-10.857-18.286-7.429t-7.429 18.286v841.143q0 14.857 7.429 18.286t18.286-7.429l405.714-405.714q4.571-4.571 7.429-10.857v405.714q0 14.857 7.429 18.286t18.286-7.429l405.714-405.714q10.857-10.857 10.857-25.714t-10.857-25.714l-405.714-405.714q-10.857-10.857-18.286-7.429t-7.429 18.286v405.714q-2.857-5.714-7.429-10.857z" horiz-adv-x="951" />
83
+ <glyph unicode="&#xe649;" d="M25.714 7.428q-10.857-10.857-18.286-7.429t-7.429 18.286v841.143q0 14.857 7.429 18.286t18.286-7.429l405.714-405.714q4.571-4.571 7.429-10.857v405.714q0 14.857 7.429 18.286t18.286-7.429l405.714-405.714q4.571-4.571 7.429-10.857v387.429q0 14.857 10.857 25.714t25.714 10.857h73.143q14.857 0 25.714-10.857t10.857-25.714v-804.571q0-14.857-10.857-25.714t-25.714-10.857h-73.143q-14.857 0-25.714 10.857t-10.857 25.714v387.429q-2.857-5.714-7.429-10.857l-405.714-405.714q-10.857-10.857-18.286-7.429t-7.429 18.286v405.714q-2.857-5.714-7.429-10.857z" />
84
+ <glyph unicode="&#xe64a;" d="M25.714 7.428q-10.857-10.857-18.286-7.429t-7.429 18.286v841.143q0 14.857 7.429 18.286t18.286-7.429l405.714-405.714q4.571-4.571 7.429-10.857v387.429q0 14.857 10.857 25.714t25.714 10.857h73.143q14.857 0 25.714-10.857t10.857-25.714v-804.571q0-14.857-10.857-25.714t-25.714-10.857h-73.143q-14.857 0-25.714 10.857t-10.857 25.714v387.429q-2.857-5.714-7.429-10.857z" horiz-adv-x="585" />
85
+ <glyph unicode="&#xe64b;" d="M8 391.428l405.714 405.714q10.857 10.857 25.714 10.857t25.714-10.857l405.714-405.714q10.857-10.857 7.429-18.286t-18.286-7.429h-841.143q-14.857 0-18.286 7.429t7.429 18.286zM841.714 73.143h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v146.286q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714v-146.286q0-14.857-10.857-25.714t-25.714-10.857z" horiz-adv-x="879" />
86
+ <glyph unicode="&#xe64c;" d="M424 52l-372.571 372q-21.143 21.143-21.143 51.714t21.143 51.714l372.571 372q21.143 21.143 51.714 21.143t51.714-21.143l42.857-42.857q21.143-21.143 21.143-51.714t-21.143-51.714l-277.714-277.714 277.714-277.143q21.143-21.714 21.143-52t-21.143-51.429l-42.857-42.857q-21.143-21.143-51.714-21.143t-51.714 21.143z" horiz-adv-x="658" />
87
+ <glyph unicode="&#xe64d;" d="M628 475.428q0-29.714-21.143-52l-372.571-372q-21.143-21.143-51.429-21.143t-51.429 21.143l-43.429 42.857q-21.143 22.286-21.143 52 0 30.286 21.143 51.429l277.714 277.714-277.714 277.143q-21.143 22.286-21.143 52 0 30.286 21.143 51.429l43.429 42.857q20.571 21.714 51.429 21.714t51.429-21.714l372.571-372q21.143-21.143 21.143-51.429z" horiz-adv-x="658" />
88
+ <glyph unicode="&#xe64e;" d="M656.571 309.714q0 14.857-10.857 25.714l-103.429 103.429 103.429 103.429q10.857 10.857 10.857 25.714 0 15.429-10.857 26.286l-51.429 51.429q-10.857 10.857-26.286 10.857-14.857 0-25.714-10.857l-103.429-103.429-103.429 103.429q-10.857 10.857-25.714 10.857-15.429 0-26.286-10.857l-51.429-51.429q-10.857-10.857-10.857-26.286 0-14.857 10.857-25.714l103.429-103.429-103.429-103.429q-10.857-10.857-10.857-25.714 0-15.429 10.857-26.286l51.429-51.429q10.857-10.857 26.286-10.857 14.857 0 25.714 10.857l103.429 103.429 103.429-103.429q10.857-10.857 25.714-10.857 15.429 0 26.286 10.857l51.429 51.429q10.857 10.857 10.857 26.286zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
89
+ <glyph unicode="&#xe64f;" d="M512 164.571v109.714q0 8-5.143 13.143t-13.143 5.143h-109.714q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h109.714q8 0 13.143 5.143t5.143 13.143zM658.286 548.571q0 50.286-31.714 93.143t-79.143 66.286-97.143 23.429q-138.857 0-212-121.714-8.571-13.714 4.571-24l75.429-57.143q4-3.429 10.857-3.429 9.143 0 14.286 6.857 30.286 38.857 49.143 52.571 19.429 13.714 49.143 13.714 27.429 0 48.857-14.857t21.429-33.714q0-21.714-11.429-34.857t-38.857-25.714q-36-16-66-49.429t-30-71.714v-20.571q0-8 5.143-13.143t13.143-5.143h109.714q8 0 13.143 5.143t5.143 13.143q0 10.857 12.286 28.286t31.143 28.286q18.286 10.286 28 16.286t26.286 20 25.429 27.429 16 34.571 7.143 46.286zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
90
+ <glyph unicode="&#xe650;" d="M585.143 164.571v91.429q0 8-5.143 13.143t-13.143 5.143h-54.857v292.571q0 8-5.143 13.143t-13.143 5.143h-182.857q-8 0-13.143-5.143t-5.143-13.143v-91.429q0-8 5.143-13.143t13.143-5.143h54.857v-182.857h-54.857q-8 0-13.143-5.143t-5.143-13.143v-91.429q0-8 5.143-13.143t13.143-5.143h256q8 0 13.143 5.143t5.143 13.143zM512 676.571v91.429q0 8-5.143 13.143t-13.143 5.143h-109.714q-8 0-13.143-5.143t-5.143-13.143v-91.429q0-8 5.143-13.143t13.143-5.143h109.714q8 0 13.143 5.143t5.143 13.143zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
91
+ <glyph unicode="&#xe651;" d="M684 365.714h-62.286q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h62.286q-18.286 61.714-64.286 107.714t-107.714 64.286v-62.286q0-14.857-10.857-25.714t-25.714-10.857h-73.143q-14.857 0-25.714 10.857t-10.857 25.714v62.286q-61.714-18.286-107.714-64.286t-64.286-107.714h62.286q14.857 0 25.714-10.857t10.857-25.714v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-62.286q18.286-61.714 64.286-107.714t107.714-64.286v62.286q0 14.857 10.857 25.714t25.714 10.857h73.143q14.857 0 25.714-10.857t10.857-25.714v-62.286q61.714 18.286 107.714 64.286t64.286 107.714zM877.714 475.428v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-81.714q-21.143-92-88.286-159.143t-159.143-88.286v-81.714q0-14.857-10.857-25.714t-25.714-10.857h-73.143q-14.857 0-25.714 10.857t-10.857 25.714v81.714q-92 21.143-159.143 88.286t-88.286 159.143h-81.714q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h81.714q21.143 92 88.286 159.143t159.143 88.286v81.714q0 14.857 10.857 25.714t25.714 10.857h73.143q14.857 0 25.714-10.857t10.857-25.714v-81.714q92-21.143 159.143-88.286t88.286-159.143h81.714q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="878" />
92
+ <glyph unicode="&#xe652;" d="M626.857 334.286l-83.429-83.429q-5.714-5.714-13.143-5.714t-13.143 5.714l-78.286 78.286-78.286-78.286q-5.714-5.714-13.143-5.714t-13.143 5.714l-83.429 83.429q-5.714 5.714-5.714 13.143t5.714 13.143l78.286 78.286-78.286 78.286q-5.714 5.714-5.714 13.143t5.714 13.143l83.429 83.429q5.714 5.714 13.143 5.714t13.143-5.714l78.286-78.286 78.286 78.286q5.714 5.714 13.143 5.714t13.143-5.714l83.429-83.429q5.714-5.714 5.714-13.143t-5.714-13.143l-78.286-78.286 78.286-78.286q5.714-5.714 5.714-13.143t-5.714-13.143zM749.714 438.857q0 84.571-41.714 156t-113.143 113.143-156 41.714-156-41.714-113.143-113.143-41.714-156 41.714-156 113.143-113.143 156-41.714 156 41.714 113.143 113.143 41.714 156zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
93
+ <glyph unicode="&#xe653;" d="M669.143 486.286l-241.143-241.143q-10.857-10.857-25.714-10.857t-25.714 10.857l-168 168q-10.857 10.857-10.857 25.714t10.857 25.714l58.286 58.286q10.857 10.857 25.714 10.857t25.714-10.857l84-84 157.143 157.143q10.857 10.857 25.714 10.857t25.714-10.857l58.286-58.286q10.857-10.857 10.857-25.714t-10.857-25.714zM749.714 438.857q0 84.571-41.714 156t-113.143 113.143-156 41.714-156-41.714-113.143-113.143-41.714-156 41.714-156 113.143-113.143 156-41.714 156 41.714 113.143 113.143 41.714 156zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
94
+ <glyph unicode="&#xe654;" d="M749.714 440.571q0 92-49.714 168.571l-430.857-430.286q78.286-50.857 169.714-50.857 63.429 0 120.857 24.857t99.143 66.571 66.286 99.714 24.571 121.429zM178.857 269.714l431.429 430.857q-77.143 52-171.429 52-84.571 0-156-41.714t-113.143-113.714-41.714-156.571q0-92.571 50.857-170.857zM877.714 440.571q0-89.714-34.857-171.429t-93.429-140.571-140-93.714-170.571-34.857-170.571 34.857-140 93.714-93.429 140.571-34.857 171.429 34.857 171.143 93.429 140.286 140 93.714 170.571 34.857 170.571-34.857 140-93.714 93.429-140.286 34.857-171.143z" horiz-adv-x="878" />
95
+ <glyph unicode="&#xe655;" d="M877.714 438.857v-73.143q0-30.286-18.571-51.714t-48.286-21.429h-402.286l167.429-168q21.714-20.571 21.714-51.429t-21.714-51.429l-42.857-43.429q-21.143-21.143-51.429-21.143-29.714 0-52 21.143l-372 372.571q-21.143 21.143-21.143 51.429 0 29.714 21.143 52l372 371.429q21.714 21.714 52 21.714 29.714 0 51.429-21.714l42.857-42.286q21.714-21.714 21.714-52t-21.714-52l-167.429-167.429h402.286q29.714 0 48.286-21.429t18.571-51.714z" horiz-adv-x="878" />
96
+ <glyph unicode="&#xe656;" d="M841.143 402.286q0-30.857-21.143-52l-372-372q-22.286-21.143-52-21.143-29.143 0-51.429 21.143l-42.857 42.857q-21.714 21.714-21.714 52t21.714 52l167.429 167.429h-402.286q-29.714 0-48.286 21.429t-18.571 51.714v73.143q0 30.286 18.571 51.714t48.286 21.429h402.286l-167.429 168q-21.714 20.571-21.714 51.429t21.714 51.429l42.857 42.857q21.714 21.714 51.429 21.714 30.286 0 52-21.714l372-372q21.143-20 21.143-51.429z" horiz-adv-x="878" />
97
+ <glyph unicode="&#xe657;" d="M920.571 396q0-29.143-21.143-51.429l-42.857-42.857q-21.714-21.714-52-21.714-30.857 0-51.429 21.714l-168 167.429v-402.286q0-29.714-21.429-48.286t-51.714-18.571h-73.143q-30.286 0-51.714 18.571t-21.429 48.286v402.286l-168-167.429q-20.571-21.714-51.429-21.714t-51.429 21.714l-42.857 42.857q-21.714 21.714-21.714 51.429 0 30.286 21.714 52l372 372q20 21.143 51.429 21.143 30.857 0 52-21.143l372-372q21.143-22.286 21.143-52z" horiz-adv-x="951" />
98
+ <glyph unicode="&#xe658;" d="M920.571 475.428q0-30.286-21.143-51.429l-372-372.571q-22.286-21.143-52-21.143-30.286 0-51.429 21.143l-372 372.571q-21.714 20.571-21.714 51.429 0 30.286 21.714 52l42.286 42.857q22.286 21.143 52 21.143 30.286 0 51.429-21.143l168-168v402.286q0 29.714 21.714 51.429t51.429 21.714h73.143q29.714 0 51.429-21.714t21.714-51.429v-402.286l168 168q21.143 21.143 51.429 21.143 29.714 0 52-21.143l42.857-42.857q21.143-22.286 21.143-52z" horiz-adv-x="951" />
99
+ <glyph unicode="&#xe659;" d="M1024 585.143q0-14.857-10.857-25.714l-292.571-292.571q-10.857-10.857-25.714-10.857t-25.714 10.857-10.857 25.714v146.286h-128q-56 0-100.286-3.429t-88-12.286-76-24.286-60.286-39.714-45.714-57.714-27.714-79.143-10-103.429q0-31.429 2.857-70.286 0-3.429 1.429-13.429t1.429-15.143q0-8.571-4.857-14.286t-13.429-5.714q-9.143 0-16 9.714-4 5.143-7.429 12.571t-7.714 17.143-6 13.714q-72.571 162.857-72.571 257.714 0 113.714 30.286 190.286 92.571 230.286 500 230.286h128v146.286q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857l292.571-292.571q10.857-10.857 10.857-25.714z" />
100
+ <glyph unicode="&#xe65a;" d="M431.429 347.428q0-7.429-5.714-13.143l-189.714-189.714 82.286-82.286q10.857-10.857 10.857-25.714t-10.857-25.714-25.714-10.857h-256q-14.857 0-25.714 10.857t-10.857 25.714v256q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857l82.286-82.286 189.714 189.714q5.714 5.714 13.143 5.714t13.143-5.714l65.143-65.143q5.714-5.714 5.714-13.143zM877.714 841.143v-256q0-14.857-10.857-25.714t-25.714-10.857-25.714 10.857l-82.286 82.286-189.714-189.714q-5.714-5.714-13.143-5.714t-13.143 5.714l-65.143 65.143q-5.714 5.714-5.714 13.143t5.714 13.143l189.714 189.714-82.286 82.286q-10.857 10.857-10.857 25.714t10.857 25.714 25.714 10.857h256q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="878" />
101
+ <glyph unicode="&#xe65b;" d="M438.857 402.286v-256q0-14.857-10.857-25.714t-25.714-10.857-25.714 10.857l-82.286 82.286-189.714-189.714q-5.714-5.714-13.143-5.714t-13.143 5.714l-65.143 65.143q-5.714 5.714-5.714 13.143t5.714 13.143l189.714 189.714-82.286 82.286q-10.857 10.857-10.857 25.714t10.857 25.714 25.714 10.857h256q14.857 0 25.714-10.857t10.857-25.714zM870.286 786.286q0-7.429-5.714-13.143l-189.714-189.714 82.286-82.286q10.857-10.857 10.857-25.714t-10.857-25.714-25.714-10.857h-256q-14.857 0-25.714 10.857t-10.857 25.714v256q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857l82.286-82.286 189.714 189.714q5.714 5.714 13.143 5.714t13.143-5.714l65.143-65.143q5.714-5.714 5.714-13.143z" horiz-adv-x="878" />
102
+ <glyph unicode="&#xe65c;" d="M804.571 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-237.714v-237.714q0-22.857-16-38.857t-38.857-16h-109.714q-22.857 0-38.857 16t-16 38.857v237.714h-237.714q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h237.714v237.714q0 22.857 16 38.857t38.857 16h109.714q22.857 0 38.857-16t16-38.857v-237.714h237.714q22.857 0 38.857-16t16-38.857z" horiz-adv-x="805" />
103
+ <glyph unicode="&#xe65d;" d="M804.571 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-694.857q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h694.857q22.857 0 38.857-16t16-38.857z" horiz-adv-x="805" />
104
+ <glyph unicode="&#xe65e;" d="M846.857 350.857q26.286-14.857 34-44.286t-7.143-55.714l-36.571-62.857q-14.857-26.286-44.286-34t-55.714 7.143l-152 87.429v-175.429q0-29.714-21.714-51.429t-51.429-21.714h-73.143q-29.714 0-51.429 21.714t-21.714 51.429v175.429l-152-87.429q-26.286-14.857-55.714-7.143t-44.286 34l-36.571 62.857q-14.857 26.286-7.143 55.714t34 44.286l152 88-152 88q-26.286 14.857-34 44.286t7.143 55.714l36.571 62.857q14.857 26.286 44.286 34t55.714-7.143l152-87.429v175.429q0 29.714 21.714 51.429t51.429 21.714h73.143q29.714 0 51.429-21.714t21.714-51.429v-175.429l152 87.429q26.286 14.857 55.714 7.143t44.286-34l36.571-62.857q14.857-26.286 7.143-55.714t-34-44.286l-152-88z" horiz-adv-x="951" />
105
+ <glyph unicode="&#xe65f;" d="M438.857 877.714q119.429 0 220.286-58.857t159.714-159.714 58.857-220.286-58.857-220.286-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857zM512 165.143v108.571q0 8-5.143 13.429t-12.571 5.429h-109.714q-7.429 0-13.143-5.714t-5.714-13.143v-108.571q0-7.429 5.714-13.143t13.143-5.714h109.714q7.429 0 12.571 5.429t5.143 13.429zM510.857 361.714l10.286 354.857q0 6.857-5.714 10.286-5.714 4.571-13.714 4.571h-125.714q-8 0-13.714-4.571-5.714-3.429-5.714-10.286l9.714-354.857q0-5.714 5.714-10t13.714-4.286h105.714q8 0 13.429 4.286t6 10z" horiz-adv-x="878" />
106
+ <glyph unicode="&#xe660;" d="M530.286 176v409.143h-182.857v-409.143q0-14.286 10.286-22t26.286-7.714h109.714q16 0 26.286 7.714t10.286 22zM269.714 658.286h111.429l-72 92q-14.857 17.714-39.429 17.714-22.857 0-38.857-16t-16-38.857 16-38.857 38.857-16zM662.857 713.143q0 22.857-16 38.857t-38.857 16q-24.571 0-39.429-17.714l-71.429-92h110.857q22.857 0 38.857 16t16 38.857zM877.714 566.857v-182.857q0-8-5.143-13.143t-13.143-5.143h-54.857v-237.714q0-22.857-16-38.857t-38.857-16h-621.714q-22.857 0-38.857 16t-16 38.857v237.714h-54.857q-8 0-13.143 5.143t-5.143 13.143v182.857q0 8 5.143 13.143t13.143 5.143h251.429q-53.143 0-90.571 37.429t-37.429 90.571 37.429 90.571 90.571 37.429q61.143 0 96-44l73.143-94.286 73.143 94.286q34.857 44 96 44 53.143 0 90.571-37.429t37.429-90.571-37.429-90.571-90.571-37.429h251.429q8 0 13.143-5.143t5.143-13.143z" horiz-adv-x="878" />
107
+ <glyph unicode="&#xe661;" d="M731.429 548.571q0 14.857-10.857 25.714t-25.714 10.857q-98.286 0-181.714-28.286t-148.286-76.571-134.571-125.429q-10.857-12-10.857-25.714 0-14.857 10.857-25.714t25.714-10.857q13.714 0 25.714 10.857 15.429 13.714 42.286 40.571t38.286 37.714q78.286 70.857 153.429 100.571t179.143 29.714q14.857 0 25.714 10.857t10.857 25.714zM1024 661.714q0-54.286-11.429-110.286-26.286-128-105.429-218.857t-204.286-153.143q-122.286-61.714-250.286-61.714-84.571 0-163.429 26.857-8.571 2.857-50.286 24t-54.857 21.143q-9.143 0-22.571-18.286t-25.714-40-30-40-34.286-18.286q-17.143 0-29.143 6.286t-17.714 13.714-15.429 24q-1.143 2.286-3.429 6.286t-3.143 5.714-1.714 5.429-0.857 7.714q0 20 17.714 42t38.857 37.429 38.857 32 17.714 27.429q0 2.286-8 21.714t-9.143 25.143q-5.143 29.143-5.143 59.429 0 65.714 24.857 125.714t68 105.429 97.429 79.429 116.571 54.571q31.429 10.286 82.857 14.571t102.571 5.143 102 3.429 93.429 13.714 64.857 32.286l16.857 16.857t16.857 16 15.429 11.429 20.857 9.143 24.857 2.571q22.286 0 40.286-26.286t27.143-64 13.714-70.857 4.571-54.857z" />
108
+ <glyph unicode="&#xe662;" d="M804.571-18.286v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-768q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h768q7.429 0 12.857-5.429t5.429-12.857zM658.286 585.143q0-44.571-14-82.286t-36.571-64.286-50-50.286-54.857-44.286-50-41.143-36.571-46.571-14-55.143q0-54.857 38.286-128l-2.286 0.571 0.571-0.571q-51.429 23.429-91.429 47.429t-79.143 57.143-64.857 70-41.429 86-15.714 105.143q0 44.571 14 82.286t36.571 64.286 50 50.286 54.857 44.286 50 41.143 36.571 46.571 14 55.143q0 53.714-37.714 128l1.714-0.571-0.571 0.571q51.429-23.429 91.429-47.429t79.143-57.143 64.857-70 41.429-86 15.714-105.143z" horiz-adv-x="805" />
109
+ <glyph unicode="&#xe663;" d="M950.857 402.286q-86.857 134.857-217.714 201.714 34.857-59.429 34.857-128.571 0-105.714-75.143-180.857t-180.857-75.143-180.857 75.143-75.143 180.857q0 69.143 34.857 128.571-130.857-66.857-217.714-201.714 76-117.143 190.571-186.571t248.286-69.429 248.286 69.429 190.571 186.571zM539.429 621.714q0 11.429-8 19.429t-19.429 8q-71.429 0-122.571-51.143t-51.143-122.571q0-11.429 8-19.429t19.429-8 19.429 8 8 19.429q0 49.143 34.857 84t84 34.857q11.429 0 19.429 8t8 19.429zM1024 402.286q0-19.429-11.429-39.429-80-131.429-215.143-210.571t-285.429-79.143-285.429 79.429-215.143 210.286q-11.429 20-11.429 39.429t11.429 39.429q80 130.857 215.143 210.286t285.429 79.429 285.429-79.429 215.143-210.286q11.429-20 11.429-39.429z" />
110
+ <glyph unicode="&#xe664;" d="M317.143 188l44.571 80.571q-49.714 36-77.714 90.857t-28 116q0 69.143 34.857 128.571-130.857-66.857-217.714-201.714 95.429-147.429 244-214.286zM539.429 621.714q0 11.429-8 19.429t-19.429 8q-71.429 0-122.571-51.143t-51.143-122.571q0-11.429 8-19.429t19.429-8 19.429 8 8 19.429q0 49.143 34.857 84t84 34.857q11.429 0 19.429 8t8 19.429zM746.857 730.857q0-4-0.571-5.143-60-107.429-180-323.429t-180.571-324l-28-50.857q-5.714-9.143-16-9.143-6.857 0-76.571 40-9.143 5.714-9.143 16 0 6.857 25.143 49.714-81.714 37.143-150.571 98.857t-119.143 140q-11.429 17.714-11.429 39.429t11.429 39.429q87.429 134.286 217.143 212t283.429 77.714q50.857 0 102.857-9.714l30.857 55.429q5.714 9.143 16 9.143 2.857 0 10.286-3.429t17.714-8.857 18.857-10.571 18-10.571 11.143-6.571q9.143-5.714 9.143-15.429zM768 475.428q0-79.429-45.143-144.857t-119.429-94l160 286.857q4.571-25.714 4.571-48zM1024 402.286q0-20-11.429-39.429-22.286-36.571-62.286-82.857-85.714-98.286-198.571-152.571t-239.714-54.286l42.286 75.429q121.143 10.286 224.286 78.286t172.286 175.429q-65.714 102.286-161.143 168l36 64q54.286-36.571 104.286-87.429t82.571-105.143q11.429-19.429 11.429-39.429z" />
111
+ <glyph unicode="&#xe665;" d="M585.143 165.143v108.571q0 8-5.429 13.429t-12.857 5.429h-109.714q-7.429 0-12.857-5.429t-5.429-13.429v-108.571q0-8 5.429-13.429t12.857-5.429h109.714q7.429 0 12.857 5.429t5.429 13.429zM584 378.857l10.286 262.286q0 6.857-5.714 10.857-7.429 6.286-13.714 6.286h-125.714q-6.286 0-13.714-6.286-5.714-4-5.714-12l9.714-261.143q0-5.714 5.714-9.429t13.714-3.714h105.714q8 0 13.429 3.714t6 9.429zM576 912.571l438.857-804.571q20-36-1.143-72-9.714-16.571-26.571-26.286t-36.286-9.714h-877.714q-19.429 0-36.286 9.714t-26.571 26.286q-21.143 36-1.143 72l438.857 804.571q9.714 17.714 26.857 28t37.143 10.286 37.143-10.286 26.857-28z" />
112
+ <glyph unicode="&#xe666;" d="M786.286 859.428q25.143-29.714 6.857-84.571t-61.714-98.286l-92-92 91.429-397.714q2.857-10.857-6.857-18.857l-73.143-54.857q-4-3.429-10.857-3.429-2.286 0-4 0.571-8.571 1.714-12 9.143l-159.429 290.286-148-148 30.286-110.857q2.857-9.714-4.571-17.714l-54.857-54.857q-5.143-5.143-13.143-5.143h-1.143q-8.571 1.143-13.714 7.429l-108 144-144 108q-6.286 4-7.429 13.143-0.571 7.429 5.143 14.286l54.857 55.429q5.143 5.143 13.143 5.143 3.429 0 4.571-0.571l110.857-30.286 148 148-290.286 159.429q-8 4.571-9.714 13.714-1.143 9.143 5.143 15.429l73.143 73.143q8 7.429 17.143 4.571l380-90.857 91.429 91.429q43.429 43.429 98.286 61.714t84.571-6.857z" horiz-adv-x="805" />
113
+ <glyph unicode="&#xe667;" d="M73.143 0h164.571v164.571h-164.571v-164.571zM274.286 0h182.857v164.571h-182.857v-164.571zM73.143 201.143h164.571v182.857h-164.571v-182.857zM274.286 201.143h182.857v182.857h-182.857v-182.857zM73.143 420.571h164.571v164.571h-164.571v-164.571zM493.714 0h182.857v164.571h-182.857v-164.571zM274.286 420.571h182.857v164.571h-182.857v-164.571zM713.143 0h164.571v164.571h-164.571v-164.571zM493.714 201.143h182.857v182.857h-182.857v-182.857zM292.571 694.857v164.571q0 7.429-5.429 12.857t-12.857 5.429h-36.571q-7.429 0-12.857-5.429t-5.429-12.857v-164.571q0-7.429 5.429-12.857t12.857-5.429h36.571q7.429 0 12.857 5.429t5.429 12.857zM713.143 201.143h164.571v182.857h-164.571v-182.857zM493.714 420.571h182.857v164.571h-182.857v-164.571zM713.143 420.571h164.571v164.571h-164.571v-164.571zM731.429 694.857v164.571q0 7.429-5.429 12.857t-12.857 5.429h-36.571q-7.429 0-12.857-5.429t-5.429-12.857v-164.571q0-7.429 5.429-12.857t12.857-5.429h36.571q7.429 0 12.857 5.429t5.429 12.857zM950.857 731.428v-731.429q0-29.714-21.714-51.429t-51.429-21.714h-804.571q-29.714 0-51.429 21.714t-21.714 51.429v731.429q0 29.714 21.714 51.429t51.429 21.714h73.143v54.857q0 37.714 26.857 64.571t64.571 26.857h36.571q37.714 0 64.571-26.857t26.857-64.571v-54.857h219.429v54.857q0 37.714 26.857 64.571t64.571 26.857h36.571q37.714 0 64.571-26.857t26.857-64.571v-54.857h73.143q29.714 0 51.429-21.714t21.714-51.429z" horiz-adv-x="951" />
114
+ <glyph unicode="&#xe668;" d="M380.571 676q-34.286-52.571-78.286-156-12.571 25.714-21.143 41.429t-23.143 36.286-29.143 32.286-36 20-46.571 8.286h-128q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h128q142.857 0 234.286-128.571zM1024 219.428q0-8-5.143-13.143l-182.857-182.857q-5.143-5.143-13.143-5.143-7.429 0-12.857 5.429t-5.429 12.857v109.714q-18.286 0-48.571-0.286t-46.286-0.571-41.714 0.571-40.571 2.857-36.571 6-36 10.571-33.143 16.286-33.714 22.857-31.429 30.571-32 39.714q33.714 53.143 77.714 156 12.571-25.714 21.143-41.429t23.143-36.286 29.143-32.286 36-20 46.571-8.286h146.286v109.714q0 8 5.143 13.143t13.143 5.143q6.857 0 13.714-5.714l182.286-182.286q5.143-5.143 5.143-13.143zM1024 731.428q0-8-5.143-13.143l-182.857-182.857q-5.143-5.143-13.143-5.143-7.429 0-12.857 5.429t-5.429 12.857v109.714h-146.286q-27.429 0-49.714-8.571t-39.429-25.714-29.143-35.143-25.714-44.286q-18.286-35.429-44.571-97.714-16.571-37.714-28.286-63.429t-30.857-60-36.571-57.143-42.286-47.429-51.429-39.143-60.857-24-73.143-9.429h-128q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h128q27.429 0 49.714 8.571t39.429 25.714 29.143 35.143 25.714 44.286q18.286 35.429 44.571 97.714 16.571 37.714 28.286 63.429t30.857 60 36.571 57.143 42.286 47.429 51.429 39.143 60.857 24 73.143 9.429h146.286v109.714q0 8 5.143 13.143t13.143 5.143q6.857 0 13.714-5.714l182.286-182.286q5.143-5.143 5.143-13.143z" />
115
+ <glyph unicode="&#xe669;" d="M1024 438.857q0-99.429-68.571-183.714t-186.286-133.143-257.143-48.857q-40 0-82.857 4.571-113.143-100-262.857-138.286-28-8-65.143-12.571-9.714-1.143-17.429 5.143t-10 16.571v0.571q-1.714 2.286-0.286 6.857t1.143 5.714 2.571 5.429l3.429 5.143t4 4.857 4.571 5.143q4 4.571 17.714 19.714t19.714 21.714 17.714 22.571 18.571 29.143 15.429 33.714 14.857 43.429q-89.714 50.857-141.429 125.714t-51.714 160.571q0 74.286 40.571 142t109.143 116.857 163.429 78 198.857 28.857q139.429 0 257.143-48.857t186.286-133.143 68.571-183.714z" />
116
+ <glyph unicode="&#xe66a;" d="M877.714 475.428v-73.143q0-114.857-56.286-206.857t-156.571-143.714-226-51.714-226 51.714-156.571 143.714-56.286 206.857v73.143q0 14.857 10.857 25.714t25.714 10.857h219.429q14.857 0 25.714-10.857t10.857-25.714v-73.143q0-29.714 13.429-51.429t30.571-32.571 40.571-17.143 36.571-7.429 25.143-1.143 25.143 1.143 36.571 7.429 40.571 17.143 30.571 32.571 13.429 51.429v73.143q0 14.857 10.857 25.714t25.714 10.857h219.429q14.857 0 25.714-10.857t10.857-25.714zM292.571 841.143v-219.429q0-14.857-10.857-25.714t-25.714-10.857h-219.429q-14.857 0-25.714 10.857t-10.857 25.714v219.429q0 14.857 10.857 25.714t25.714 10.857h219.429q14.857 0 25.714-10.857t10.857-25.714zM877.714 841.143v-219.429q0-14.857-10.857-25.714t-25.714-10.857h-219.429q-14.857 0-25.714 10.857t-10.857 25.714v219.429q0 14.857 10.857 25.714t25.714 10.857h219.429q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="878" />
117
+ <glyph unicode="&#xe66b;" d="M920.571 256q0-30.286-21.143-51.429l-42.857-42.857q-21.714-21.714-52-21.714-30.857 0-51.429 21.714l-277.714 277.143-277.714-277.143q-20.571-21.714-51.429-21.714t-51.429 21.714l-42.857 42.857q-21.714 20.571-21.714 51.429 0 30.286 21.714 52l372 372q21.143 21.143 51.429 21.143 29.714 0 52-21.143l371.429-372q21.714-21.714 21.714-52z" horiz-adv-x="951" />
118
+ <glyph unicode="&#xe66c;" d="M920.571 548.571q0-30.286-21.143-51.429l-372-372q-21.714-21.714-52-21.714-30.857 0-51.429 21.714l-372 372q-21.714 20.571-21.714 51.429 0 30.286 21.714 52l42.286 42.857q22.286 21.143 52 21.143 30.286 0 51.429-21.143l277.714-277.714 277.714 277.714q21.143 21.143 51.429 21.143 29.714 0 52-21.143l42.857-42.857q21.143-22.286 21.143-52z" horiz-adv-x="951" />
119
+ <glyph unicode="&#xe66d;" d="M731.429 91.428q0-7.429-5.429-12.857t-12.857-5.429h-548.571q-4.571 0-7.714 1.143t-5.143 4-3.143 4.571-1.714 6.571-0.571 6.571v342.858h-109.714q-14.857 0-25.714 10.857t-10.857 25.714q0 13.714 8.571 23.429l182.857 219.429q10.857 12.571 28 12.571t28-12.571l182.857-219.429q8.571-9.714 8.571-23.429 0-14.857-10.857-25.714t-25.714-10.857h-109.714v-219.429h329.143q9.143 0 14.286-6.286l91.429-109.714q4-6.286 4-12zM1097.143 329.143q0-13.714-8.571-23.429l-182.857-219.429q-11.429-13.143-28-13.143t-28 13.143l-182.857 219.429q-8.571 9.714-8.571 23.429 0 14.857 10.857 25.714t25.714 10.857h109.714v219.429h-329.143q-9.143 0-14.286 6.857l-91.429 109.714q-4 5.143-4 11.429 0 7.429 5.429 12.857t12.857 5.429h548.571q4.571 0 7.714-1.143t5.143-4 3.143-4.571 1.714-6.571 0.571-6.571v-342.858h109.714q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="1097" />
120
+ <glyph unicode="&#xe66e;" d="M365.714 73.143q0-30.286-21.429-51.714t-51.714-21.429-51.714 21.429-21.429 51.714 21.429 51.714 51.714 21.429 51.714-21.429 21.429-51.714zM877.714 73.143q0-30.286-21.429-51.714t-51.714-21.429-51.714 21.429-21.429 51.714 21.429 51.714 51.714 21.429 51.714-21.429 21.429-51.714zM950.857 694.857v-292.571q0-13.714-9.143-24.286t-23.429-12.286l-596.571-69.714q0.571-4 2.571-12.286t3.429-15.143 1.429-12.571q0-9.143-13.714-36.571h525.714q14.857 0 25.714-10.857t10.857-25.714-10.857-25.714-25.714-10.857h-585.143q-14.857 0-25.714 10.857t-10.857 25.714q0 8 6.286 22.571t16.857 34 11.714 21.714l-101.143 470.286h-116.571q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714 25.714 10.857h146.286q9.143 0 16.286-3.714t11.429-8.857 7.429-14 4.286-15.143 3.143-16.857 2.571-14.571h686.286q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="951" />
121
+ <glyph unicode="&#xe66f;" d="M950.857 603.428v-402.286q0-52.571-37.714-90.286t-90.286-37.714h-694.857q-52.571 0-90.286 37.714t-37.714 90.286v548.571q0 52.571 37.714 90.286t90.286 37.714h182.857q52.571 0 90.286-37.714t37.714-90.286v-18.286h384q52.571 0 90.286-37.714t37.714-90.286z" horiz-adv-x="951" />
122
+ <glyph unicode="&#xe670;" d="M1073.714 406.857q0-17.714-17.714-37.714l-192-226.286q-24.571-29.143-68.857-49.429t-82-20.286h-621.714q-19.429 0-34.571 7.429t-15.143 24.571q0 17.714 17.714 37.714l192 226.286q24.571 29.143 68.857 49.429t82 20.286h621.714q19.429 0 34.571-7.429t15.143-24.571zM877.714 603.428v-91.429h-475.429q-53.714 0-112.571-27.143t-93.714-68.286l-195.428-229.715q0 2.286-0.286 7.143t-0.286 7.143v548.571q0 52.571 37.714 90.286t90.286 37.714h182.857q52.571 0 90.286-37.714t37.714-90.286v-18.286h310.857q52.571 0 90.286-37.714t37.714-90.286z" horiz-adv-x="1097" />
123
+ <glyph unicode="&#xe671;" d="M292.571 365.714v-219.429h-146.286v219.429h146.286zM512 658.286v-512h-146.286v512h146.286zM731.429 512v-365.714h-146.286v365.714h146.286zM950.857 731.428v-585.143h-146.286v585.143h146.286zM1024 91.428v694.857q0 7.429-5.429 12.857t-12.857 5.429h-914.286q-7.429 0-12.857-5.429t-5.429-12.857v-694.857q0-7.429 5.429-12.857t12.857-5.429h914.286q7.429 0 12.857 5.429t5.429 12.857zM1097.143 786.286v-694.857q0-37.714-26.857-64.571t-64.571-26.857h-914.286q-37.714 0-64.571 26.857t-26.857 64.571v694.857q0 37.714 26.857 64.571t64.571 26.857h914.286q37.714 0 64.571-26.857t26.857-64.571z" horiz-adv-x="1097" />
124
+ <glyph unicode="&#xe672;" d="M731.429 602.286q-32-14.286-69.143-19.429 38.857 22.857 53.143 66.857-37.143-21.714-76.571-29.143-34.857 37.714-87.429 37.714-49.714 0-84.857-35.143t-35.143-84.857q0-16.571 2.857-27.429-73.714 4-138.286 37.143t-109.714 88.571q-16.571-28.571-16.571-60.571 0-65.143 52-100-26.857 0.571-57.143 14.857v-1.143q0-42.857 28.571-76.286t70.286-41.429q-16.571-4.571-29.143-4.571-7.429 0-22.286 2.286 12-36 42.571-59.429t69.429-24q-66.286-51.429-149.143-51.429-14.857 0-28.571 1.714 84.571-53.714 184-53.714 64 0 120 20.286t96 54.286 68.857 78.286 42.857 92.571 14 96.286q0 10.286-0.571 15.429 36 25.714 60 62.286zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
125
+ <glyph unicode="&#xe673;" d="M746.857 426.286l13.143 125.143h-113.143v62.286q0 28 8.857 39.143t40.857 11.143h62.857v125.143h-100q-86.857 0-124.571-41.143t-37.714-121.714v-74.857h-74.857v-125.143h74.857v-362.857h149.714v362.857h100zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
126
+ <glyph unicode="&#xe674;" d="M530.286 475.428q0 8-5.143 13.143t-13.143 5.143q-37.714 0-64.571-26.857t-26.857-64.571q0-8 5.143-13.143t13.143-5.143 13.143 5.143 5.143 13.143q0 22.857 16 38.857t38.857 16q8 0 13.143 5.143t5.143 13.143zM658.286 401.143q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429 42.857 103.429 103.429 42.857 103.429-42.857 42.857-103.429zM73.143 73.143h877.714v73.143h-877.714v-73.143zM731.429 401.143q0 90.857-64.286 155.143t-155.143 64.286-155.143-64.286-64.286-155.143 64.286-155.143 155.143-64.286 155.143 64.286 64.286 155.143zM146.286 768h219.429v73.143h-219.429v-73.143zM73.143 658.286h877.714v146.286h-473.143l-36.571-73.143h-368v-73.143zM1024 804.571v-731.429q0-30.286-21.429-51.714t-51.714-21.429h-877.714q-30.286 0-51.714 21.429t-21.429 51.714v731.429q0 30.286 21.429 51.714t51.714 21.429h877.714q30.286 0 51.714-21.429t21.429-51.714z" />
127
+ <glyph unicode="&#xe675;" d="M475.429 658.286q0 45.714-32 77.714t-77.714 32-77.714-32-32-77.714q0-24 10.857-47.429-23.429 10.857-47.429 10.857-45.714 0-77.714-32t-32-77.714 32-77.714 77.714-32 77.714 32 32 77.714q0 24-10.857 47.429 23.429-10.857 47.429-10.857 45.714 0 77.714 32t32 77.714zM961.714 256q0-9.714-28-37.714t-37.714-28q-5.143 0-16.286 9.143t-20.857 18.857-22 22.857-14 14.857l-54.857-54.857 125.714-125.714q16-16 16-38.857 0-24-22.286-46.286t-46.286-22.286q-22.857 0-38.857 16l-383.429 383.429q-100.571-74.857-208.571-74.857-93.143 0-151.714 58.571t-58.571 151.714q0 91.429 54.286 178.857t141.714 141.714 178.857 54.286q93.143 0 151.714-58.571t58.571-151.714q0-108-74.857-208.571l202.857-202.857 54.857 54.857q-1.714 1.714-14.857 14t-22.857 22-18.857 20.857-9.143 16.286q0 9.714 28 37.714t37.714 28q7.429 0 13.143-5.714 3.429-3.429 26.286-25.429t46.857-45.429 49.429-49.143 41.714-44.571 16.286-23.429z" />
128
+ <glyph unicode="&#xe676;" d="M512 438.857q0 60.571-42.857 103.429t-103.429 42.857-103.429-42.857-42.857-103.429 42.857-103.429 103.429-42.857 103.429 42.857 42.857 103.429zM950.857 146.286q0 29.714-21.714 51.429t-51.429 21.714-51.429-21.714-21.714-51.429q0-30.286 21.429-51.714t51.714-21.429 51.714 21.429 21.429 51.714zM950.857 731.428q0 29.714-21.714 51.429t-51.429 21.714-51.429-21.714-21.714-51.429q0-30.286 21.429-51.714t51.714-21.429 51.714 21.429 21.429 51.714zM731.429 490.857v-105.714q0-5.714-4-11.143t-9.143-6l-88.571-13.714q-6.286-20-18.286-43.429 19.429-27.429 51.429-65.714 4-5.714 4-11.429 0-6.857-4-10.857-13.143-17.143-47.143-51.143t-44.857-34q-6.286 0-12 4l-65.714 51.429q-21.143-10.857-44-17.714-6.286-61.714-13.143-88.571-4-13.714-17.143-13.714h-106.286q-6.286 0-11.429 4.286t-5.714 10l-13.143 87.429q-19.429 5.714-42.857 17.714l-67.429-50.857q-4-4-11.429-4-6.286 0-12 4.571-82.286 76-82.286 91.429 0 5.143 4 10.857 5.714 8 23.429 30.286t26.857 34.857q-13.143 25.143-20 46.857l-86.857 13.714q-5.714 0.571-9.714 5.429t-4 11.143v105.714q0 5.714 4 11.143t9.143 6l88.571 13.714q6.286 20 18.286 43.429-19.429 27.429-51.429 65.714-4 6.286-4 11.429 0 6.857 4 11.429 12.571 17.143 46.857 50.857t45.143 33.714q6.286 0 12-4l65.714-51.429q19.429 10.286 44 18.286 6.286 61.714 13.143 88 4 13.714 17.143 13.714h106.286q6.286 0 11.429-4.286t5.714-10l13.143-87.429q19.429-5.714 42.857-17.714l67.429 50.857q4.571 4 11.429 4 6.286 0 12-4.571 82.286-76 82.286-91.429 0-5.143-4-10.857-6.857-9.143-24-30.857t-25.714-34.286q13.143-27.429 19.429-46.857l86.857-13.143q5.714-1.143 9.714-6t4-11.143zM1097.143 186.286v-80q0-9.143-85.143-17.714-6.857-15.429-17.143-29.714 29.143-64.571 29.143-78.857 0-2.286-2.286-4-69.714-40.571-70.857-40.571-4.571 0-26.286 26.857t-29.714 38.857q-11.429-1.143-17.143-1.143t-17.143 1.143q-8-12-29.714-38.857t-26.286-26.857q-1.143 0-70.857 40.571-2.286 1.714-2.286 4 0 14.286 29.143 78.857-10.286 14.286-17.143 29.714-85.143 8.571-85.143 17.714v80q0 9.143 85.143 17.714 7.429 16.571 17.143 29.714-29.143 64.571-29.143 78.857 0 2.286 2.286 4 2.286 1.143 20 11.429t33.714 19.429 17.143 9.143q4.571 0 26.286-26.571t29.714-38.571q11.429 1.143 17.143 1.143t17.143-1.143q29.143 40.571 52.571 64l3.429 1.143q2.286 0 70.857-40 2.286-1.714 2.286-4 0-14.286-29.143-78.857 9.714-13.143 17.143-29.714 85.143-8.571 85.143-17.714zM1097.143 771.428v-80q0-9.143-85.143-17.714-6.857-15.429-17.143-29.714 29.143-64.571 29.143-78.857 0-2.286-2.286-4-69.714-40.571-70.857-40.571-4.571 0-26.286 26.857t-29.714 38.857q-11.429-1.143-17.143-1.143t-17.143 1.143q-8-12-29.714-38.857t-26.286-26.857q-1.143 0-70.857 40.571-2.286 1.714-2.286 4 0 14.286 29.143 78.857-10.286 14.286-17.143 29.714-85.143 8.571-85.143 17.714v80q0 9.143 85.143 17.714 7.429 16.571 17.143 29.714-29.143 64.571-29.143 78.857 0 2.286 2.286 4 2.286 1.143 20 11.429t33.714 19.429 17.143 9.143q4.571 0 26.286-26.571t29.714-38.571q11.429 1.143 17.143 1.143t17.143-1.143q29.143 40.571 52.571 64l3.429 1.143q2.286 0 70.857-40 2.286-1.714 2.286-4 0-14.286-29.143-78.857 9.714-13.143 17.143-29.714 85.143-8.571 85.143-17.714z" horiz-adv-x="1097" />
129
+ <glyph unicode="&#xe677;" d="M804.571 512q0-79.429-53.714-146.857t-146.571-106.571-202-39.143q-49.143 0-100.571 9.143-70.857-50.286-158.857-73.143-20.571-5.143-49.143-9.143h-1.714q-6.286 0-11.714 4.571t-6.571 12q-0.571 1.714-0.571 3.714t0.286 3.714 1.143 3.429l1.429 2.857t2 3.143 2.286 2.857 2.571 2.857 2.286 2.571q2.857 3.429 13.143 14.286t14.857 16.857 12.857 16.571 14.286 22 11.714 25.143q-70.857 41.143-111.429 101.143t-40.571 128q0 79.429 53.714 146.857t146.571 106.571 202 39.143 202-39.143 146.571-106.571 53.714-146.857zM1024 365.714q0-68.571-40.571-128.286t-111.429-100.857q5.714-13.714 11.714-25.143t14.286-22 12.857-16.571 14.857-16.857 13.143-14.286q0.571-0.571 2.286-2.571t2.571-2.857 2.286-2.857 2-3.143l1.429-2.857t1.143-3.429 0.286-3.714-0.571-3.714q-1.714-8-7.429-12.571t-12.571-4q-28.571 4-49.143 9.143-88 22.857-158.857 73.143-51.429-9.143-100.571-9.143-154.857 0-269.714 75.429 33.143-2.286 50.286-2.286 92 0 176.571 25.714t150.857 73.714q71.429 52.571 109.714 121.143t38.286 145.143q0 44-13.143 86.857 73.714-40.571 116.571-101.714t42.857-131.429z" />
130
+ <glyph unicode="&#xe678;" d="M146.286 182.857q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM804.571 512q0 29.143-22.286 51.143t-50.857 22h-201.143q0 33.143 27.429 91.143t27.429 91.714q0 56-18.286 82.857t-73.143 26.857q-14.857-14.857-21.714-48.571t-17.429-71.714-34-62.571q-12.571-13.143-44-52-2.286-2.857-13.143-17.143t-18-23.429-19.714-24.286-22.857-25.143-22-20.286-22.857-15.429-20.286-5.143h-18.286v-365.714h18.286q7.429 0 18-1.714t18.857-3.714 21.714-6.286 20-6.571 20.286-7.143 16.571-6q120.571-41.714 195.429-41.714h69.143q109.714 0 109.714 95.429 0 14.857-2.857 32 17.143 9.143 27.143 30t10 42-10.286 39.429q30.286 28.571 30.286 68 0 14.286-5.714 31.714t-14.286 27.143q18.286 0.571 30.571 26.857t12.286 46.286zM877.714 512.571q0-50.857-28-93.143 5.143-18.857 5.143-39.429 0-44-21.714-82.286 1.714-12 1.714-24.571 0-57.714-34.286-101.714 0.571-79.429-48.571-125.429t-129.714-46h-73.714q-54.857 0-108.286 12.857t-123.714 37.429q-66.286 22.857-78.857 22.857h-164.571q-30.286 0-51.714 21.429t-21.429 51.714v365.714q0 30.286 21.429 51.714t51.714 21.429h156.571q20.571 13.714 78.286 88.571 33.143 42.857 61.143 73.143 13.714 14.286 20.286 48.857t17.429 72.286 35.429 61.714q22.286 21.143 51.429 21.143 48 0 86.286-18.571t58.286-58 20-106.286q0-53.143-27.429-109.714h100.571q59.429 0 102.857-43.429t43.429-102.286z" horiz-adv-x="878" />
131
+ <glyph unicode="&#xe679;" d="M146.286 694.857q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM804.571 365.714q0 20-12.286 46.286t-30.571 26.857q8.571 9.714 14.286 27.143t5.714 31.714q0 39.429-30.286 68 10.286 18.286 10.286 39.429t-10 42-27.143 30q2.857 17.143 2.857 32 0 48.571-28 72t-77.714 23.429h-73.143q-74.857 0-195.429-41.714-2.857-1.143-16.571-6t-20.286-7.143-20-6.571-21.714-6.286-18.857-3.714-18-1.714h-18.286v-365.714h18.286q9.143 0 20.286-5.143t22.857-15.429 22-20.286 22.857-25.143 19.714-24.286 18-23.429 13.143-17.143q31.429-38.857 44-52 23.429-24.571 34-62.571t17.429-71.714 21.714-48.571q54.857 0 73.143 26.857t18.286 82.857q0 33.714-27.429 91.714t-27.429 91.143h201.143q28.571 0 50.857 22t22.286 51.143zM877.714 365.143q0-58.857-43.429-102.286t-102.857-43.429h-100.571q27.429-56.571 27.429-109.714 0-67.429-20-106.286-20-39.429-58.286-58t-86.286-18.571q-29.143 0-51.429 21.143-19.429 18.857-30.857 46.857t-14.571 51.714-10 48.286-17.714 36.571q-27.429 28.571-61.143 72.571-57.714 74.857-78.286 88.571h-156.571q-30.286 0-51.714 21.429t-21.429 51.714v365.714q0 30.286 21.429 51.714t51.714 21.429h164.571q12.571 0 78.857 22.857 73.143 25.143 127.429 37.714t114.286 12.571h64q80 0 129.429-45.143t48.857-123.429v-2.857q34.286-44 34.286-101.714 0-12.571-1.714-24.571 21.714-38.286 21.714-82.286 0-20.571-5.143-39.429 28-42.286 28-93.143z" horiz-adv-x="878" />
132
+ <glyph unicode="&#xe67a;" d="M475.429 932.571v-765.143l-256.571-134.857q-12.571-6.857-22.857-6.857-12 0-18 8.286t-6 20.286q0 3.429 1.143 11.429l49.143 285.714-208 202.286q-14.286 15.429-14.286 27.429 0 21.143 32 26.286l286.857 41.714 128.571 260q10.857 23.429 28 23.429z" horiz-adv-x="512" />
133
+ <glyph unicode="&#xe67b;" d="M950.857 610.286q0 46.286-12.286 81.714t-31.429 56.286-46.571 34-53.714 17.714-56 4.571-64-14.571-63.143-36.571-49.429-41.143-34.286-35.143q-10.286-12.571-28-12.571t-28 12.571q-13.714 16-34.286 35.143t-49.429 41.143-63.143 36.571-64 14.571-56-4.571-53.714-17.714-46.571-34-31.429-56.286-12.286-81.714q0-96 106.857-202.857l332-320 331.429 319.429q107.429 107.429 107.429 203.429zM1024 610.286q0-126.286-130.857-257.143l-356-342.857q-10.286-10.286-25.143-10.286t-25.143 10.286l-356.571 344q-5.714 4.571-15.714 14.857t-31.714 37.429-38.857 55.714-30.571 69.143-13.429 78.857q0 125.714 72.571 196.571t200.571 70.857q35.429 0 72.286-12.286t68.571-33.143 54.571-39.143 43.429-38.857q20.571 20.571 43.429 38.857t54.571 39.143 68.571 33.143 72.286 12.286q128 0 200.571-70.857t72.571-196.571z" />
134
+ <glyph unicode="&#xe67c;" d="M365.714 128q0-2.286 0.571-11.429t0.286-15.143-1.714-13.429-5.714-11.143-11.714-3.714h-182.857q-68 0-116.286 48.286t-48.286 116.286v402.286q0 68 48.286 116.286t116.286 48.286h182.857q7.429 0 12.857-5.429t5.429-12.857q0-2.286 0.571-11.429t0.286-15.143-1.714-13.429-5.714-11.143-11.714-3.714h-182.857q-37.714 0-64.571-26.857t-26.857-64.571v-402.286q0-37.714 26.857-64.571t64.571-26.857h178.285t6.571-0.571 6.571-1.714 4.571-3.143 4-5.143 1.143-7.714zM896 438.857q0-14.857-10.857-25.714l-310.857-310.857q-10.857-10.857-25.714-10.857t-25.714 10.857-10.857 25.714v164.571h-256q-14.857 0-25.714 10.857t-10.857 25.714v219.429q0 14.857 10.857 25.714t25.714 10.857h256v164.571q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857l310.857-310.857q10.857-10.857 10.857-25.714z" horiz-adv-x="951" />
135
+ <glyph unicode="&#xe67d;" d="M135.429 142.857h132v396.571h-132v-396.571zM276 661.714q-0.571 29.714-20.571 49.143t-53.143 19.429-54-19.429-20.857-49.143q0-29.143 20.286-48.857t52.857-19.714h0.571q33.714 0 54.286 19.714t20.571 48.857zM610.286 142.857h132v227.429q0 88-41.714 133.143t-110.286 45.143q-77.714 0-119.429-66.857h1.143v57.714h-132q1.714-37.714 0-396.571h132v221.714q0 21.714 4 32 8.571 20 25.714 34t42.286 14q66.286 0 66.286-89.714v-212zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
136
+ <glyph unicode="&#xe67e;" d="M274.286 457.143v256q0 8-5.143 13.143t-13.143 5.143-13.143-5.143-5.143-13.143v-256q0-8 5.143-13.143t13.143-5.143 13.143 5.143 5.143 13.143zM658.286 256q0-14.857-10.857-25.714t-25.714-10.857h-245.143l-29.143-276q-1.143-6.857-6-11.714t-11.714-4.857h-0.571q-15.429 0-18.286 15.429l-43.429 277.143h-230.857q-14.857 0-25.714 10.857t-10.857 25.714q0 70.286 44.857 126.571t101.429 56.286v292.571q-29.714 0-51.429 21.714t-21.714 51.429 21.714 51.429 51.429 21.714h365.714q29.714 0 51.429-21.714t21.714-51.429-21.714-51.429-51.429-21.714v-292.571q56.571 0 101.429-56.286t44.857-126.571z" horiz-adv-x="658" />
137
+ <glyph unicode="&#xe67f;" d="M804.571 420.571v-182.857q0-68-48.286-116.286t-116.286-48.286h-475.429q-68 0-116.286 48.286t-48.286 116.286v475.429q0 68 48.286 116.286t116.286 48.286h402.286q8 0 13.143-5.143t5.143-13.143v-36.571q0-8-5.143-13.143t-13.143-5.143h-402.286q-37.714 0-64.571-26.857t-26.857-64.571v-475.429q0-37.714 26.857-64.571t64.571-26.857h475.429q37.714 0 64.571 26.857t26.857 64.571v182.857q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143zM1024 914.286v-292.571q0-14.857-10.857-25.714t-25.714-10.857-25.714 10.857l-100.571 100.571-372.571-372.571q-5.714-5.714-13.143-5.714t-13.143 5.714l-65.143 65.143q-5.714 5.714-5.714 13.143t5.714 13.143l372.571 372.571-100.571 100.571q-10.857 10.857-10.857 25.714t10.857 25.714 25.714 10.857h292.571q14.857 0 25.714-10.857t10.857-25.714z" />
138
+ <glyph unicode="&#xe680;" d="M676.571 438.857q0-14.857-10.857-25.714l-310.857-310.857q-10.857-10.857-25.714-10.857t-25.714 10.857-10.857 25.714v164.571h-256q-14.857 0-25.714 10.857t-10.857 25.714v219.429q0 14.857 10.857 25.714t25.714 10.857h256v164.571q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857l310.857-310.857q10.857-10.857 10.857-25.714zM877.714 640v-402.286q0-68-48.286-116.286t-116.286-48.286h-182.857q-7.429 0-12.857 5.429t-5.429 12.857q0 2.286-0.571 11.429t-0.286 15.143 1.714 13.429 5.714 11.143 11.714 3.714h182.857q37.714 0 64.571 26.857t26.857 64.571v402.286q0 37.714-26.857 64.571t-64.571 26.857h-178.285t-6.571 0.571-6.571 1.714-4.571 3.143-4 5.143-1.143 7.714q0 2.286-0.571 11.429t-0.286 15.143 1.714 13.429 5.714 11.143 11.714 3.714h182.857q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
139
+ <glyph unicode="&#xe681;" d="M261.714 446.286q-42.286 92.571-42.286 212h-146.286v-54.857q0-44.571 54-92.571t134.571-64.571zM877.714 603.428v54.857h-146.286q0-119.429-42.286-212 80.571 16.571 134.571 64.571t54 92.571zM950.857 676.571v-73.143q0-40.571-23.714-81.714t-64-74.286-98.857-55.714-123.143-25.429q-24-30.857-54.286-54.286-21.714-19.429-30-41.429t-8.286-51.143q0-30.857 17.429-52t55.714-21.143q42.857 0 76.286-26t33.429-65.429v-36.571q0-8-5.143-13.143t-13.143-5.143h-475.429q-8 0-13.143 5.143t-5.143 13.143v36.571q0 39.429 33.429 65.429t76.286 26q38.286 0 55.714 21.143t17.429 52q0 29.143-8.286 51.143t-30 41.429q-30.286 23.429-54.286 54.286-64.571 2.857-123.143 25.429t-98.857 55.714-64 74.286-23.714 81.714v73.143q0 22.857 16 38.857t38.857 16h164.571v54.857q0 37.714 26.857 64.571t64.571 26.857h329.143q37.714 0 64.571-26.857t26.857-64.571v-54.857h164.571q22.857 0 38.857-16t16-38.857z" horiz-adv-x="951" />
140
+ <glyph unicode="&#xe682;" d="M225.143 178.286q-4.571-5.143-11.429 1.714-7.429 6.286-2.286 10.857 4.571 5.143 11.429-1.714 6.857-6.286 2.286-10.857zM201.143 213.143q5.143-6.857 0-10.857-4.571-3.429-9.714 4t0 10.286q5.143 4 9.714-3.429zM166.286 247.428q-2.857-4-7.429-1.143-5.714 2.857-4 6.857 1.714 2.857 7.429 1.143 5.714-2.857 4-6.857zM184 228q-3.429-4-9.143 1.714-5.143 6.286-1.143 9.143 3.429 3.429 9.143-1.714 5.143-6.286 1.143-9.143zM257.714 164q-2.286-6.857-10.857-3.429-9.714 2.286-7.429 8.571t10.857 4q9.143-2.857 7.429-9.143zM293.714 161.143q0-6.286-9.143-6.286-9.714-1.143-9.714 6.286 0 6.286 9.143 6.286 9.714 1.143 9.714-6.286zM326.857 166.857q1.143-5.714-8-8t-10.286 4.571 8 8.571q9.143 1.143 10.286-5.143zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-128q-9.143 0-14 0.571t-11.143 2.857-9.143 8.286-2.857 15.714v136.571q0 55.429-29.714 81.143 32.571 3.429 58.571 10.286t53.714 22.286 46.286 38 30.286 60 11.714 86q0 69.143-45.143 117.714 21.143 52-4.571 116.571-16 5.143-46.286-6.286t-52.571-25.143l-21.714-13.714q-53.143 14.857-109.714 14.857t-109.714-14.857q-9.143 6.286-24.286 15.429t-47.714 22-49.143 7.714q-25.143-64.571-4-116.571-45.143-48.571-45.143-117.714 0-48.571 11.714-85.714t30-60 46-38.286 53.714-22.286 58.571-10.286q-22.857-20.571-28-58.857-12-5.714-25.714-8.571t-32.571-2.857-37.429 12.286-31.714 35.714q-10.857 18.286-27.714 29.714t-28.286 13.714l-11.429 1.714q-12 0-16.571-2.571t-2.857-6.571 5.143-8 7.429-6.857l4-2.857q12.571-5.714 24.857-21.714t18-29.143l5.714-13.143q7.429-21.714 25.143-35.143t38.286-17.143 39.714-4 31.714 2l13.143 2.286q0-21.714 0.286-58.857t0.286-38.857q0-12.571-6.286-19.143t-12.571-7.429-18.857-0.857h-128q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
141
+ <glyph unicode="&#xe683;" d="M731.429 109.714q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM877.714 109.714q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM950.857 237.714v-182.857q0-22.857-16-38.857t-38.857-16h-841.143q-22.857 0-38.857 16t-16 38.857v182.857q0 22.857 16 38.857t38.857 16h244q12-32 40.286-52.571t63.143-20.571h146.286q34.857 0 63.143 20.571t40.286 52.571h244q22.857 0 38.857-16t16-38.857zM765.143 608q-9.714-22.857-33.714-22.857h-146.286v-256q0-14.857-10.857-25.714t-25.714-10.857h-146.286q-14.857 0-25.714 10.857t-10.857 25.714v256h-146.286q-24 0-33.714 22.857-9.714 22.286 8 39.429l256 256q10.286 10.857 25.714 10.857t25.714-10.857l256-256q17.714-17.143 8-39.429z" horiz-adv-x="951" />
142
+ <glyph unicode="&#xe684;" d="M804 478.857q0 25.143-4 64.857t-10.286 55.143q-6.857 17.143-9.714 25.143t-5.143 20.857-2.286 27.714q0 13.143 2.857 39.143t2.857 38.571q0 21.143-5.714 31.429-2.286 0.571-7.429 0.571-10.857 0-33.143-2.571t-33.714-2.571q-34.286 0-100.571 13.714t-100 13.714q-24.571 0-54-6.571t-48.571-13.429-51.143-19.429q-78.286-30.857-115.429-58.857-54.857-41.714-91.143-108.286t-50.286-134.857-14-142q0-22.857 7.143-68.571t7.143-69.143q0-13.143-6.286-38t-6.286-37.429 6.857-20.857 19.429-8.286q13.714 0 41.429 6.286t42 6.286q32.571 0 96.857-8.857t96.857-8.857q103.429 0 162.286 20.571 73.714 25.714 134.571 87.143t94.857 140.286 34 157.143zM877.143 480q0-94.286-40-187.143t-112-164.571-160.571-103.143q-70.857-25.143-186.286-25.143-32.571 0-97.143 8.286t-96.571 8.286q-13.714 0-41.429-8.286t-42-8.286q-41.714 0-70.571 31.714t-28.857 73.429q0 13.714 6.286 38.857t6.286 38.286q0 22.857-7.143 68.857t-7.143 69.429q0 63.429 10.286 124.286t31.143 119.714 57.429 110.857 85.714 89.143q44.571 33.714 132.571 68.571 110.857 44.571 180.571 44.571 34.286 0 100.286-13.714t99.143-13.714q10.857 0 32.571 2.857t33.143 2.857q46.286 0 67.429-28.857t21.143-76.857q0-13.143-2.857-38.857t-2.857-38.857q0-5.714 0.571-10.571t1.714-9.714 2.286-7.714 3.714-9.143 3.714-9.714q9.143-22.857 14.286-67.714t5.143-78z" horiz-adv-x="878" />
143
+ <glyph unicode="&#xe685;" d="M804.571 242.286q0-15.429-5.714-40.286t-12-39.143q-12-28.571-69.714-60.571-53.714-29.143-106.286-29.143-15.429 0-30 2t-32.857 7.143-27.143 8.286-31.714 11.714-28 10.286q-56 20-100 47.429-73.143 45.143-151.143 123.143t-123.143 151.143q-27.429 44-47.429 100-1.714 5.143-10.286 28t-11.714 31.714-8.286 27.143-7.143 32.857-2 30q0 52.571 29.143 106.286 32 57.714 60.571 69.714 14.286 6.286 39.143 12t40.286 5.714q8 0 12-1.714 10.286-3.429 30.286-43.429 6.286-10.857 17.143-30.857t20-36.286 17.714-30.571q1.714-2.286 10-14.286t12.286-20.286 4-16.286q0-11.429-16.286-28.571t-35.429-31.429-35.429-30.286-16.286-26.286q0-5.143 2.857-12.857t4.857-11.714 8-13.714 6.571-10.857q43.429-78.286 99.429-134.286t134.286-99.429q1.143-0.571 10.857-6.571t13.714-8 11.714-4.857 12.857-2.857q10.286 0 26.286 16.286t30.286 35.429 31.429 35.429 28.571 16.286q8 0 16.286-4t20.286-12.286 14.286-10q14.286-8.571 30.571-17.714t36.286-20 30.857-17.143q40-20 43.429-30.286 1.714-4 1.714-12z" horiz-adv-x="805" />
144
+ <glyph unicode="&#xe686;" d="M640 804.571h-475.429q-37.714 0-64.571-26.857t-26.857-64.571v-475.429q0-37.714 26.857-64.571t64.571-26.857h475.429q37.714 0 64.571 26.857t26.857 64.571v475.429q0 37.714-26.857 64.571t-64.571 26.857zM804.571 713.143v-475.429q0-68-48.286-116.286t-116.286-48.286h-475.429q-68 0-116.286 48.286t-48.286 116.286v475.429q0 68 48.286 116.286t116.286 48.286h475.429q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="805" />
145
+ <glyph unicode="&#xe687;" d="M658.286 804.571h-585.143v-709.714l292.571 280.571 50.857-48.571 241.714-232v709.714zM665.143 877.714q13.143 0 25.143-5.143 18.857-7.429 30-23.429t11.143-35.429v-736.571q0-19.429-11.143-35.429t-30-23.429q-10.857-4.571-25.143-4.571-27.429 0-47.429 18.286l-252 242.286-252-242.286q-20.571-18.857-47.429-18.857-13.143 0-25.143 5.143-18.857 7.429-30 23.429t-11.143 35.429v736.571q0 19.429 11.143 35.429t30 23.429q12 5.143 25.143 5.143h598.857z" horiz-adv-x="731" />
146
+ <glyph unicode="&#xe688;" d="M731.429 269.143q0 6.286-1.143 9.143-1.714 4.571-22 16.857t-50.571 28.286l-30.286 16.571q-2.857 1.714-10.857 7.429t-14.286 8.571-12 2.857q-10.286 0-26.857-18.571t-32.571-37.429-25.143-18.857q-4 0-9.429 2t-8.857 3.714-9.714 5.429-8 4.857q-56.571 31.429-97.429 72.286t-72.286 97.429q-1.143 1.714-4.857 8t-5.429 9.714-3.714 8.857-2 9.429q0 7.429 11.714 19.143t25.714 22 25.714 22.571 11.714 20.857q0 5.714-2.857 12t-8.571 14.286-7.429 10.857q-1.714 3.429-8.571 16.286t-14.286 26-15.143 27.143-14.286 23.143-9.429 10.286-9.143 1.143q-27.429 0-57.714-12.571-26.286-12-45.714-54t-19.429-74.571q0-9.143 1.429-19.429t2.857-17.429 5.143-18.857 5.714-16.857 7.143-18.857 6.286-17.143q34.286-93.714 123.714-183.143t183.143-123.714q3.429-1.143 17.143-6.286t18.857-7.143 16.857-5.714 18.857-5.143 17.429-2.857 19.429-1.429q32.571 0 74.571 19.429t54 45.714q12.571 30.286 12.571 57.714zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
147
+ <glyph unicode="&#xe689;" d="M925.714 717.714q-38.286-56-92.571-95.429 0.571-8 0.571-24 0-74.286-21.714-148.286t-66-142-105.429-120.286-147.429-83.429-184.571-31.143q-154.857 0-283.429 82.857 20-2.286 44.571-2.286 128.571 0 229.143 78.857-60 1.143-107.429 36.857t-65.143 91.143q18.857-2.857 34.857-2.857 24.571 0 48.571 6.286-64 13.143-106 63.714t-42 117.429v2.286q38.857-21.714 83.429-23.429-37.714 25.143-60 65.714t-22.286 88q0 50.286 25.143 93.143 69.143-85.143 168.286-136.286t212.286-56.857q-4.571 21.714-4.571 42.286 0 76.571 54 130.571t130.571 54q80 0 134.857-58.286 62.286 12 117.143 44.571-21.143-65.714-81.143-101.714 53.143 5.714 106.286 28.571z" horiz-adv-x="951" />
148
+ <glyph unicode="&#xe68a;" d="M292 633.143h146.857l-17.143-162.286h-129.714v-470.857h-194.857v470.857h-97.143v162.286h97.143v97.714q0 104 49.143 157.429t161.714 53.429h129.714v-162.286h-81.143q-22.286 0-35.714-3.714t-19.429-13.429-7.714-19.714-1.714-28.286v-81.143z" horiz-adv-x="439" />
149
+ <glyph unicode="&#xe68b;" d="M877.714 438.857q0-143.429-83.714-258t-216.286-158.571q-15.429-2.857-22.571 4t-7.143 17.143v120.571q0 55.429-29.714 81.143 32.571 3.429 58.571 10.286t53.714 22.286 46.286 38 30.286 60 11.714 86q0 69.143-45.143 117.714 21.143 52-4.571 116.571-16 5.143-46.286-6.286t-52.571-25.143l-21.714-13.714q-53.143 14.857-109.714 14.857t-109.714-14.857q-9.143 6.286-24.286 15.429t-47.714 22-49.143 7.714q-25.143-64.571-4-116.571-45.143-48.571-45.143-117.714 0-48.571 11.714-85.714t30-60 46-38.286 53.714-22.286 58.571-10.286q-22.857-20.571-28-58.857-12-5.714-25.714-8.571t-32.571-2.857-37.429 12.286-31.714 35.714q-10.857 18.286-27.714 29.714t-28.286 13.714l-11.429 1.714q-12 0-16.571-2.571t-2.857-6.571 5.143-8 7.429-6.857l4-2.857q12.571-5.714 24.857-21.714t18-29.143l5.714-13.143q7.429-21.714 25.143-35.143t38.286-17.143 39.714-4 31.714 2l13.143 2.286q0-21.714 0.286-50.857t0.286-30.857q0-10.286-7.429-17.143t-22.857-4q-132.571 44-216.286 158.571t-83.714 258q0 119.429 58.857 220.286t159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
150
+ <glyph unicode="&#xe68c;" d="M950.857 621.714v-146.286q0-14.857-10.857-25.714t-25.714-10.857h-36.571q-14.857 0-25.714 10.857t-10.857 25.714v146.286q0 60.571-42.857 103.429t-103.429 42.857-103.429-42.857-42.857-103.429v-109.714h54.857q22.857 0 38.857-16t16-38.857v-329.143q0-22.857-16-38.857t-38.857-16h-548.571q-22.857 0-38.857 16t-16 38.857v329.143q0 22.857 16 38.857t38.857 16h384v109.714q0 105.714 75.143 180.857t180.857 75.143 180.857-75.143 75.143-180.857z" horiz-adv-x="951" />
151
+ <glyph unicode="&#xe68d;" d="M1005.714 877.714q37.714 0 64.571-26.857t26.857-64.571v-694.857q0-37.714-26.857-64.571t-64.571-26.857h-914.286q-37.714 0-64.571 26.857t-26.857 64.571v694.857q0 37.714 26.857 64.571t64.571 26.857h914.286zM91.429 804.571q-7.429 0-12.857-5.429t-5.429-12.857v-128h950.857v128q0 7.429-5.429 12.857t-12.857 5.429h-914.286zM1005.714 73.143q7.429 0 12.857 5.429t5.429 12.857v347.429h-950.857v-347.429q0-7.429 5.429-12.857t12.857-5.429h914.286zM146.286 146.286v73.143h146.286v-73.143h-146.286zM365.714 146.286v73.143h219.429v-73.143h-219.429z" horiz-adv-x="1097" />
152
+ <glyph unicode="&#xe68e;" d="M219.429 182.857q0-45.714-32-77.714t-77.714-32-77.714 32-32 77.714 32 77.714 77.714 32 77.714-32 32-77.714zM512 112.571q1.143-16-9.714-27.429-10.286-12-26.857-12h-77.143q-14.286 0-24.571 9.429t-11.429 23.714q-12.571 130.857-105.429 223.714t-223.714 105.429q-14.286 1.143-23.714 11.429t-9.429 24.571v77.143q0 16.571 12 26.857 9.714 9.714 24.571 9.714h2.857q91.429-7.429 174.857-46t148-103.714q65.143-64.571 103.714-148t46-174.857zM804.571 111.428q1.143-15.429-10.286-26.857-10.286-11.429-26.286-11.429h-81.714q-14.857 0-25.429 10t-11.143 24.286q-6.857 122.857-57.714 233.429t-132.286 192-192 132.286-233.429 58.286q-14.286 0.571-24.286 11.143t-10 24.857v81.714q0 16 11.429 26.286 10.286 10.286 25.143 10.286h1.714q149.714-7.429 286.571-68.571t243.143-168q106.857-106.286 168-243.143t68.571-286.571z" horiz-adv-x="805" />
153
+ <glyph unicode="&#xe68f;" d="M594.286 256q0-18.857-13.429-32.286t-32.286-13.429-32.286 13.429-13.429 32.286 13.429 32.286 32.286 13.429 32.286-13.429 13.429-32.286zM740.571 256q0-18.857-13.429-32.286t-32.286-13.429-32.286 13.429-13.429 32.286 13.429 32.286 32.286 13.429 32.286-13.429 13.429-32.286zM804.571 164.571v182.857q0 7.429-5.429 12.857t-12.857 5.429h-694.857q-7.429 0-12.857-5.429t-5.429-12.857v-182.857q0-7.429 5.429-12.857t12.857-5.429h694.857q7.429 0 12.857 5.429t5.429 12.857zM101.714 438.857h674.286l-89.714 275.429q-2.286 7.429-9.143 12.286t-14.857 4.857h-446.857q-8 0-14.857-4.857t-9.143-12.286zM877.714 347.428v-182.857q0-37.714-26.857-64.571t-64.571-26.857h-694.857q-37.714 0-64.571 26.857t-26.857 64.571v182.857q0 14.286 9.143 42.857l112.571 346.286q9.714 30.286 36 49.143t57.714 18.857h446.857q31.429 0 57.714-18.857t36-49.143l112.571-346.286q9.143-28.571 9.143-42.857z" horiz-adv-x="878" />
154
+ <glyph unicode="&#xe690;" d="M950.857 585.143q30.286 0 51.714-21.429t21.429-51.714-21.429-51.714-51.714-21.429v-219.429q0-29.714-21.714-51.429t-51.429-21.714q-238.286 198.286-464 217.143-33.143-10.857-52-37.714t-17.714-57.429 22.857-52.857q-11.429-18.857-13.143-37.429t3.429-33.143 19.143-31.429 27.429-28.571 35.143-28.857q-16.571-33.143-63.714-47.429t-96.286-6.571-75.429 31.714q-4 13.143-16.857 50t-18.286 54-13.143 50.857-8.571 57.714 2 56.286 12.571 63.143h-69.714q-37.714 0-64.571 26.857t-26.857 64.571v109.714q0 37.714 26.857 64.571t64.571 26.857h274.286q248.571 0 512 219.429 29.714 0 51.429-21.714t21.714-51.429v-219.429zM877.714 240v545.143q-225.143-172.571-438.857-196v-154.286q215.429-24 438.857-194.857z" />
155
+ <glyph unicode="&#xe691;" d="M484.571-18.286q0 9.143-9.143 9.143-33.714 0-58 24.286t-24.286 58q0 9.143-9.143 9.143t-9.143-9.143q0-41.714 29.429-71.143t71.143-29.429q9.143 0 9.143 9.143zM104.571 146.286h741.714q-93.714 103.429-140.857 235.143t-47.143 276.857q0 146.286-182.857 146.286t-182.857-146.286q0-145.143-47.143-276.857t-140.857-235.143zM950.857 146.286q0-29.714-21.714-51.429t-51.429-21.714h-256q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429h-256q-29.714 0-51.429 21.714t-21.714 51.429q108.571 92 164 227.143t55.429 284.857q0 94.286 54.857 149.714t150.857 66.857q-4.571 10.286-4.571 21.143 0 22.857 16 38.857t38.857 16 38.857-16 16-38.857q0-10.857-4.571-21.143 96-11.429 150.857-66.857t54.857-149.714q0-149.714 55.429-284.857t164-227.143z" horiz-adv-x="951" />
156
+ <glyph unicode="&#xe692;" d="M786.286 438.857l78.857-77.143q17.143-16 11.429-40-6.857-23.429-29.714-29.143l-107.429-27.429 30.286-106.286q6.857-23.429-10.857-40-16.571-17.714-40-10.857l-106.286 30.286-27.429-107.429q-5.714-22.857-29.143-29.714-6.857-1.143-10.857-1.143-17.714 0-29.143 12.571l-77.143 78.857-77.143-78.857q-16-17.143-40-11.429-23.429 6.286-29.143 29.714l-27.429 107.429-106.286-30.286q-23.429-6.857-40 10.857-17.714 16.571-10.857 40l30.286 106.286-107.429 27.429q-22.857 5.714-29.714 29.143-5.714 24 11.429 40l78.857 77.143-78.857 77.143q-17.143 16-11.429 40 6.857 23.429 29.714 29.143l107.429 27.429-30.286 106.286q-6.857 23.429 10.857 40 16.571 17.714 40 10.857l106.286-30.286 27.429 107.429q5.714 23.429 29.143 29.143 23.429 6.857 40-10.857l77.143-79.429 77.143 79.429q16.571 17.143 40 10.857 23.429-5.714 29.143-29.143l27.429-107.429 106.286 30.286q23.429 6.857 40-10.857 17.714-16.571 10.857-40l-30.286-106.286 107.429-27.429q22.857-5.714 29.714-29.143 5.714-24-11.429-40z" horiz-adv-x="878" />
157
+ <glyph unicode="&#xe693;" d="M146.286 182.857q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM950.857 512q0 29.143-22.286 51.143t-50.857 22h-329.143q0 11.429 8.571 27.714t18.857 31.429 18.857 38.857 8.571 48.286q0 38.286-25.429 55.714t-66 17.429q-13.714 0-51.429-79.429-13.714-25.143-21.143-37.143-22.857-36.571-64-82.857-40.571-46.286-57.714-60.571-39.429-32.571-80-32.571h-18.286v-365.714h18.286q41.143 0 95.429-18.286t110.571-36.571 102.571-18.286q108 0 108 95.429 0 14.857-2.857 32 17.143 9.143 27.143 30t10 42-10.286 39.429q30.286 28.571 30.286 68 0 14.286-5.714 31.714t-14.286 27.143h189.143q29.714 0 51.429 21.714t21.714 51.429zM1024 512.571q0-60-43.143-103.429t-103.143-43.429h-96.571q-2.286-35.429-21.143-68 1.714-12 1.714-24.571 0-57.714-34.286-101.714 0.571-79.429-48.571-125.429t-129.714-46q-76 0-184 39.429-93.714 33.714-127.429 33.714h-164.571q-30.286 0-51.714 21.429t-21.429 51.714v365.714q0 30.286 21.429 51.714t51.714 21.429h164.571q5.714 0 12.286 2.571t13.429 8 12.857 10.286 13.714 12.857 11.714 12.286 10.857 12.286 8 9.714q37.143 42.286 57.143 73.714 7.429 12 18.857 35.429t21.143 41.143 23.143 36 31.429 28.286 39.714 10q71.429 0 118-38.286t46.571-108q0-38.857-12.571-73.143h213.714q59.429 0 102.857-43.429t43.429-102.286z" />
158
+ <glyph unicode="&#xe694;" d="M786.286 146.286h18.286v365.714h-18.286q-20 0-38.571 6.857t-35.714 21.143-28.571 26.286-28 30.857q-1.143 1.714-2 2.571t-2.286 2.571-2.571 2.857q-41.143 46.286-64 82.857-8 12.571-21.714 38.857-0.571 1.714-6 12.857t-10.571 20.571-11.429 20.286-12.286 17.429-10.571 6.571q-40.571 0-66-17.429t-25.429-55.714q0-24.571 8.571-48.286t18.857-38.857 18.857-31.429 8.571-27.714h-329.143q-28.571 0-50.857-22t-22.286-51.143q0-29.714 21.714-51.429t51.429-21.714h189.143q-8.571-9.714-14.286-27.143t-5.714-31.714q0-39.429 30.286-68-10.286-18.286-10.286-39.429t10-42 27.143-30q-2.286-13.714-2.286-32 0-48.571 27.714-72t77.429-23.429q48 0 104.571 18.286t110.857 36.571 95.429 18.286zM950.857 182.857q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM1024 512v-365.714q0-30.286-21.429-51.714t-51.714-21.429h-164.571q-33.714 0-127.429-33.714-108.571-39.429-181.143-39.429-81.143 0-131.429 44.286t-49.714 124.286l0.571 2.857q-34.857 43.429-34.857 101.714 0 12.571 1.714 24.571-18.857 32.571-21.143 68h-96.571q-60 0-103.143 43.429t-43.143 103.429q0 58.857 43.429 102.286t102.857 43.429h213.714q-12.571 34.286-12.571 73.143 0 69.714 46.571 108t118 38.286q21.714 0 39.714-10t31.429-28.286 23.143-36 21.143-41.143 18.857-35.429q20-31.429 57.143-73.714 1.143-1.714 8-9.714t10.857-12.286 11.714-12.286 13.714-12.857 12.857-10.286 13.429-8 12.286-2.571h164.571q30.286 0 51.714-21.429t21.429-51.714z" />
159
+ <glyph unicode="&#xe695;" d="M731.429 36.571q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM804.571 473.143q0 108-95.429 108-14.857 0-32-2.857-9.143 17.143-30 27.143t-42 10-39.429-10.286q-28.571 30.286-68 30.286-14.286 0-31.714-5.714t-27.143-14.286v189.143q0 29.714-21.714 51.429t-51.429 21.714q-29.143 0-51.143-22.286t-22-50.857v-329.143q-11.429 0-27.714 8.571t-31.429 18.857-38.857 18.857-48.286 8.571q-38.286 0-55.714-25.429t-17.429-66q0-13.714 79.429-51.429 25.143-13.714 37.143-21.143 36.571-22.857 82.857-64 46.286-40.571 60.571-57.714 32.571-39.429 32.571-80v-18.286h365.714v18.286q0 41.143 18.286 95.429t36.571 110.571 18.286 102.571zM877.714 476q0-76-39.429-184-33.714-93.714-33.714-127.429v-164.571q0-30.286-21.429-51.714t-51.714-21.429h-365.714q-30.286 0-51.714 21.429t-21.429 51.714v164.571q0 5.714-2.571 12.286t-8 13.429-10.286 12.857-12.857 13.714-12.286 11.714-12.286 10.857-9.714 8q-42.286 37.143-73.714 57.143-12 7.429-35.429 18.857t-41.143 21.143-36 23.143-28.286 31.429-10 39.714q0 71.429 38.286 118t108 46.571q38.857 0 73.143-12.571v213.714q0 59.429 43.429 102.857t102.286 43.429q60 0 103.429-43.143t43.429-103.143v-96.571q35.429-2.286 68-21.143 12 1.714 24.571 1.714 57.714 0 101.714-34.286 79.429 0.571 125.429-48.571t46-129.714z" horiz-adv-x="878" />
160
+ <glyph unicode="&#xe696;" d="M804.571 402.286q0 48-18.286 104.571t-36.571 110.857-18.286 95.429v18.286h-365.714v-18.286q0-20-6.857-38.571t-21.143-35.714-26.286-28.571-30.857-28q-5.143-4.571-8-6.857-46.286-41.143-82.857-64-12.571-8-38.857-21.714-1.714-0.571-12.857-6t-20.571-10.571-20.286-11.429-17.429-12.286-6.571-10.571q0-40.571 17.429-66t55.714-25.429q24.571 0 48.286 8.571t38.857 18.857 31.429 18.857 27.714 8.571v-329.143q0-28.571 22-50.857t51.143-22.286q29.714 0 51.429 21.714t21.714 51.429v189.143q26.286-20 58.857-20 39.429 0 68 30.286 18.286-10.286 39.429-10.286t42 10 30 27.143q13.714-2.286 32-2.286 48.571 0 72 27.714t23.429 77.429zM731.429 841.143q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM877.714 404.571q0-81.143-44.286-131.429t-124.286-49.714l-2.857 0.571q-43.429-34.857-101.714-34.857-12.571 0-24.571 1.714-30.857-17.143-68-21.143v-96.571q0-60-43.429-103.143t-103.429-43.143q-58.857 0-102.286 43.429t-43.429 102.857v213.714q-30.857-12.571-73.143-12.571-69.143 0-107.714 46.571t-38.571 118q0 21.714 10 39.714t28.286 31.429 36 23.143 41.143 21.143 35.429 18.857q31.429 20 73.714 57.143 1.714 1.143 9.714 8t12.286 10.857 12.286 11.714 12.857 13.714 10.286 12.857 8 13.429 2.571 12.286v164.571q0 30.286 21.429 51.714t51.714 21.429h365.714q30.286 0 51.714-21.429t21.429-51.714v-164.571q0-33.714 33.714-127.429 39.429-108.571 39.429-181.143z" horiz-adv-x="878" />
161
+ <glyph unicode="&#xe697;" d="M731.429 402.286v73.143q0 14.857-10.857 25.714t-25.714 10.857h-286.857l108 108q10.857 10.857 10.857 25.714t-10.857 25.714l-52 52q-10.286 10.286-25.714 10.286t-25.714-10.286l-258.857-258.857q-10.286-10.286-10.286-25.714t10.286-25.714l258.857-258.857q10.286-10.286 25.714-10.286t25.714 10.286l52 52q10.286 10.286 10.286 25.714t-10.286 25.714l-108 108h286.857q14.857 0 25.714 10.857t10.857 25.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
162
+ <glyph unicode="&#xe698;" d="M734.286 438.857q0 15.429-10.286 25.714l-258.857 258.857q-10.286 10.286-25.714 10.286t-25.714-10.286l-52-52q-10.286-10.286-10.286-25.714t10.286-25.714l108-108h-286.857q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h286.857l-108-108q-10.857-10.857-10.857-25.714t10.857-25.714l52-52q10.286-10.286 25.714-10.286t25.714 10.286l258.857 258.857q10.286 10.286 10.286 25.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
163
+ <glyph unicode="&#xe699;" d="M733.714 439.428q0 15.429-10.286 25.714l-258.857 258.857q-10.286 10.286-25.714 10.286t-25.714-10.286l-258.857-258.857q-10.286-10.286-10.286-25.714t10.286-25.714l52-52q10.286-10.286 25.714-10.286t25.714 10.286l108 108v-286.857q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714v286.857l108-108q10.857-10.857 25.714-10.857t25.714 10.857l52 52q10.286 10.286 10.286 25.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
164
+ <glyph unicode="&#xe69a;" d="M733.714 438.286q0 15.429-10.286 25.714l-52 52q-10.286 10.286-25.714 10.286t-25.714-10.286l-108-108v286.857q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-286.857l-108 108q-10.857 10.857-25.714 10.857t-25.714-10.857l-52-52q-10.286-10.286-10.286-25.714t10.286-25.714l258.857-258.857q10.286-10.286 25.714-10.286t25.714 10.286l258.857 258.857q10.286 10.286 10.286 25.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
165
+ <glyph unicode="&#xe69b;" d="M438.857 877.714q119.429 0 220.286-58.857t159.714-159.714 58.857-220.286-58.857-220.286-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857zM595.429 580q-1.143-0.571-5.429-5.429t-7.714-5.429q1.143 0 2.571 2.857t2.857 6.286 2 4q3.429 4 12.571 8.571 8 3.429 29.714 6.857 19.429 4.571 29.143-6.286-1.143 1.143 5.429 7.429t8.286 6.857q1.714 1.143 8.571 2.571t8.571 4.286l1.143 12.571q-6.857-0.571-10 4t-3.714 12q0-1.143-3.429-4.571 0 4-2.571 4.571t-6.571-0.571-5.143-0.571q-5.714 1.714-8.571 4.286t-4.571 9.429-2.286 8.571q-1.143 2.857-5.429 6t-5.429 6q-0.571 1.143-1.429 3.143t-1.714 3.714-2.286 3.143-3.143 1.429-4-2.857-4.286-5.714-2.571-2.857q-1.714 1.143-3.429 0.857t-2.571-0.571-2.571-1.714-2.857-2q-1.714-1.143-4.857-1.714t-4.857-1.143q8.571 2.857-0.571 6.286-5.714 2.286-9.143 1.714 5.143 2.286 4.286 6.857t-4.857 8h2.857q-0.571 2.286-4.857 4.857t-10 4.857-7.429 3.429q-4.571 2.857-19.429 5.429t-18.857 0.286q-2.857-3.429-2.571-6t2.286-8 2-7.143q0.571-3.429-3.143-7.429t-3.714-6.857q0-4 8-8.857t5.714-12.286q-1.714-4.571-9.143-9.143t-9.143-6.857q-2.857-4.571-0.857-10.571t6-9.429q1.143-1.143 0.857-2.286t-2-2.571-3.143-2.286-3.714-2l-1.714-1.143q-6.286-2.857-11.714 3.429t-7.714 14.857q-4 14.286-9.143 17.143-13.143 4.571-16.571-0.571-2.857 7.429-23.429 14.857-14.286 5.143-33.143 2.286 3.429 0.571 0 8.571-4 8.571-10.857 6.857 1.714 3.429 2.286 10t0.571 7.714q1.714 7.429 6.857 13.143 0.571 0.571 4 4.857t5.429 7.714 0.286 3.429q20-2.286 28.571 6.286 2.857 2.857 6.571 9.714t6 9.714q5.143 3.429 8 3.143t8.286-3.143 8.286-2.857q8-0.571 8.857 6.286t-4.286 11.429q6.857-0.571 1.714 9.714-2.857 4-4.571 5.143-6.857 2.286-15.429-2.857-4.571-2.286 1.143-4.571-0.571 0.571-5.429-6t-9.429-10-9.143 2.857q-0.571 0.571-3.143 7.714t-5.429 7.714q-4.571 0-9.143-8.571 1.714 4.571-6.286 8.571t-13.714 4.571q10.857 6.857-4.571 15.429-4 2.286-11.714 2.857t-11.143-2.286q-2.857-4-3.143-6.571t2.857-4.571 6-3.143 6.571-2.286 4.857-1.714q8-5.714 4.571-8-1.143-0.571-4.857-2t-6.571-2.571-3.429-2.286q-1.714-2.286 0-8t-1.143-8q-2.857 2.857-5.143 10t-4 9.429q4-5.143-14.286-3.429l-5.714 0.571q-2.286 0-9.143-1.143t-11.714-0.571-7.714 4.571q-2.286 4.571 0 11.429 0.571 2.286 2.286 1.143-2.286 1.714-6.286 5.429t-5.714 4.857q-26.286-8.571-53.714-23.429 3.429-0.571 6.857 0.571 2.857 1.143 7.429 3.714t5.714 3.143q19.429 8 24 4l2.857 2.857q8-9.143 11.429-14.286-4 2.286-17.143 0.571-11.429-3.429-12.571-6.857 4-6.857 2.857-10.286-2.286 1.714-6.571 5.714t-8.286 6.286-8.571 2.857q-9.143 0-12.571-0.571-83.429-45.714-134.286-126.857 4-4 6.857-4.571 2.286-0.571 2.857-5.143t1.429-6.286 6.571 1.714q5.143-4.571 1.714-10.857 0.571 0.571 25.143-15.429 10.857-9.714 12-12 1.714-6.286-5.714-10.286-0.571 1.143-5.143 5.143t-5.143 2.286q-1.714-2.857 0.286-10.571t6-7.143q-4 0-5.429-9.143t-1.429-20.286-0.571-13.429l1.143-0.571q-1.714-6.857 3.143-19.714t12.286-11.143q-7.429-1.714 11.429-24.571 3.429-4.571 4.571-5.143 1.714-1.143 6.857-4.286t8.571-5.714 5.714-6q2.286-2.857 5.714-12.857t8-13.429q-1.143-3.429 5.429-11.429t6-13.143q-0.571 0-1.429-0.571t-1.429-0.571q1.714-4 8.857-8t8.857-7.429q0.571-1.714 1.143-5.714t1.714-6.286 4.571-1.143q1.143 11.429-13.714 35.429-8.571 14.286-9.714 16.571-1.714 2.857-3.143 8.857t-2.571 8.286q1.143 0 3.429-0.857t4.857-2 4.286-2.286 1.143-1.714q-1.714-4 1.143-10t6.857-10.571 9.714-10.857 6.857-7.429q3.429-3.429 8-11.143t0-7.714q5.143 0 11.429-5.714t9.714-11.429q2.857-4.571 4.571-14.857t2.857-13.714q1.143-4 4.857-7.714t7.143-5.429l9.143-4.571t7.429-4q2.857-1.143 10.571-6t12.286-6.571q5.714-2.286 9.143-2.286t8.286 1.429 7.714 2q8.571 1.143 16.571-8.571t12-12q20.571-10.857 31.429-6.286-1.143-0.571 0.286-4.286t4.571-8.857 5.143-8.286 3.143-4.857q2.857-3.429 10.286-8.571t10.286-8.571q3.429 2.286 4 5.143-1.714-4.571 4-11.429t10.286-5.714q8 1.714 8 18.286-17.714-8.571-28 10.286 0 0.571-1.429 3.143t-2.286 4.857-1.429 4.857 0 4.286 2.857 1.714q5.143 0 5.714 2t-1.143 7.143-2.286 7.429q-0.571 4.571-6.286 11.429t-6.857 8.571q-2.857-5.143-9.143-4.571t-9.143 5.143q0-0.571-0.857-3.143t-0.857-3.714q-7.429 0-8.571 0.571 0.571 1.714 1.429 10t2 12.857q0.571 2.286 3.143 6.857t4.286 8.286 2.286 7.143-2.571 5.429-10 1.429q-10.857-0.571-14.857-11.429-0.571-1.714-1.714-6t-2.857-6.571-5.143-4q-4-1.714-13.714-1.143t-13.714 2.857q-7.429 4.571-12.857 16.571t-5.429 21.143q0 5.714 1.429 15.143t1.714 14.286-3.143 14q1.714 1.143 5.143 5.429t5.714 6q1.143 0.571 2.571 0.857t2.571 0 2.286 0.857 1.714 3.429q-0.571 0.571-2.286 1.714-1.714 1.714-2.286 1.714 4-1.714 16.286 0.857t15.714-0.857q8.571-6.286 12.571 1.143 0 0.571-1.429 5.429t-0.286 7.714q2.857-15.429 16.571-5.143 1.714-1.714 8.857-2.857t10-2.857q1.714-1.143 4-3.143t3.143-2.571 2.857 0.286 4.857 3.714q5.714-8 6.857-13.714 6.286-22.857 10.857-25.143 4-1.714 6.286-1.143t2.571 5.429 0 8-0.857 7.143l-0.571 4.571v10.286l-0.571 4.571q-8.571 1.714-10.571 6.857t0.857 10.571 8.571 10.571q0.571 0.571 4.571 2t8.857 3.714 7.143 4.571q12 10.857 8.571 20 4 0 6.286 5.143-0.571 0-2.857 1.714t-4.286 2.857-2.571 1.143q5.143 2.857 1.143 9.143 2.857 1.714 4.286 6.286t4.286 5.714q5.143-6.857 12-1.143 4 4.571 0.571 9.143 2.857 4 11.714 6t10.571 5.429q4-1.143 4.571 1.143t0.571 6.857 1.714 6.857q2.286 2.857 8.571 5.143t7.429 2.857l9.714 6.286q1.714 2.286 0 2.286 10.286-1.143 17.714 6.286 5.714 6.286-3.429 11.429 1.714 3.429-1.714 5.429t-8.571 3.143q1.714 0.571 6.571 0.286t6 0.857q8.571 5.714-4 9.143-9.714 2.857-24.571-6.857zM502.286 78.857q117.714 20.571 200.571 108-1.714 1.714-7.143 2.571t-7.143 2q-10.286 4-13.714 4.571 0.571 4-1.429 7.429t-4.571 5.143-7.143 4.571-6.286 4q-1.143 1.143-4 3.429t-4 3.143-4.286 2.571-4.857 1.143-5.714-0.571l-1.714-0.571q-1.714-0.571-3.143-1.429t-3.143-1.714-2.286-1.714 0-1.429q-12 9.714-20.571 12.571-2.857 0.571-6.286 3.143t-6 4-5.714 0.857-6.571-4q-2.857-2.857-3.429-8.571t-1.143-7.429q-4 2.857 0 10t1.143 10.571q-1.714 3.429-6 2.571t-6.857-2.571-6.571-4.857-5.143-3.714-4.857-3.143-4.857-4.286q-1.714-2.286-3.429-6.857t-2.857-6.286q-1.143 2.286-6.571 3.714t-5.429 3.143q1.143-5.714 2.286-20t2.857-21.714q4-17.714-6.857-27.429-15.429-14.286-16.571-22.857-2.286-12.571 6.857-14.857 0-4-4.571-11.714t-4-12.286q0-3.429 1.143-9.143z" horiz-adv-x="878" />
166
+ <glyph unicode="&#xe69c;" d="M219.429 109.714q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM587.429 349.714l-389.714-389.714q-21.143-21.143-51.429-21.143-29.714 0-52 21.143l-60.571 61.714q-21.714 20.571-21.714 51.429 0 30.286 21.714 52l389.143 389.143q22.286-56 65.429-99.143t99.143-65.429zM949.714 598.286q0-22.286-13.143-60.571-26.857-76.571-94-124.286t-147.714-47.714q-105.714 0-180.857 75.143t-75.143 180.857 75.143 180.857 180.857 75.143q33.143 0 69.429-9.429t61.429-26.571q9.143-6.286 9.143-16t-9.143-16l-167.429-96.571v-128l110.286-61.143q2.857 1.714 45.143 27.714t77.429 46.286 40.286 20.286q8.571 0 13.429-5.714t4.857-14.286z" horiz-adv-x="951" />
167
+ <glyph unicode="&#xe69d;" d="M585.143 146.286h365.714v73.143h-365.714v-73.143zM365.714 438.857h585.143v73.143h-585.143v-73.143zM731.429 731.428h219.429v73.143h-219.429v-73.143zM1024 256v-146.286q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v146.286q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM1024 548.571v-146.286q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v146.286q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714zM1024 841.143v-146.286q0-14.857-10.857-25.714t-25.714-10.857h-950.857q-14.857 0-25.714 10.857t-10.857 25.714v146.286q0 14.857 10.857 25.714t25.714 10.857h950.857q14.857 0 25.714-10.857t10.857-25.714z" />
168
+ <glyph unicode="&#xe69e;" d="M801.714 782.286q9.714-23.429-8-40l-281.714-281.714v-424q0-24-22.286-33.714-7.429-2.857-14.286-2.857-15.429 0-25.714 10.857l-146.286 146.286q-10.857 10.857-10.857 25.714v277.714l-281.714 281.714q-17.714 16.571-8 40 9.714 22.286 33.714 22.286h731.429q24 0 33.714-22.286z" horiz-adv-x="805" />
169
+ <glyph unicode="&#xe69f;" d="M365.714 804.571h292.571v73.143h-292.571v-73.143zM1024 438.857v-274.286q0-37.714-26.857-64.571t-64.571-26.857h-841.143q-37.714 0-64.571 26.857t-26.857 64.571v274.286h384v-91.429q0-14.857 10.857-25.714t25.714-10.857h182.857q14.857 0 25.714 10.857t10.857 25.714v91.429h384zM585.143 438.857v-73.143h-146.286v73.143h146.286zM1024 713.143v-219.429h-1024v219.429q0 37.714 26.857 64.571t64.571 26.857h201.143v91.429q0 22.857 16 38.857t38.857 16h329.143q22.857 0 38.857-16t16-38.857v-91.429h201.143q37.714 0 64.571-26.857t26.857-64.571z" />
170
+ <glyph unicode="&#xe6a0;" d="M338.857 438.857q-92.571-2.857-151.429-73.143h-76.571q-46.857 0-78.857 23.143t-32 67.714q0 201.714 70.857 201.714 3.429 0 24.857-12t55.714-24.286 68-12.286q38.286 0 76 13.143-2.857-21.143-2.857-37.714 0-79.429 46.286-146.286zM950.857 74.857q0-68.571-41.714-108.286t-110.857-39.714h-499.429q-69.143 0-110.857 39.714t-41.714 108.286q0 30.286 2 59.143t8 62.286 15.143 62 24.571 55.714 35.429 46.286 48.857 30.571 63.714 11.429q5.714 0 24.571-12.286t41.714-27.429 61.143-27.429 77.143-12.286 77.143 12.286 61.143 27.429 41.714 27.429 24.571 12.286q34.857 0 63.714-11.429t48.857-30.571 35.429-46.286 24.571-55.714 15.143-62 8-62.286 2-59.143zM365.714 804.571q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429 42.857 103.429 103.429 42.857 103.429-42.857 42.857-103.429zM768 585.143q0-90.857-64.286-155.143t-155.143-64.286-155.143 64.286-64.286 155.143 64.286 155.143 155.143 64.286 155.143-64.286 64.286-155.143zM1097.143 456.571q0-44.571-32-67.714t-78.857-23.143h-76.571q-58.857 70.286-151.429 73.143 46.286 66.857 46.286 146.286 0 16.571-2.857 37.714 37.714-13.143 76-13.143 33.714 0 68 12.286t55.714 24.286 24.857 12q70.857 0 70.857-201.714zM1024 804.571q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429 42.857 103.429 103.429 42.857 103.429-42.857 42.857-103.429z" horiz-adv-x="1097" />
171
+ <glyph unicode="&#xe6a1;" d="M832 256q0 22.857-16 38.857l-118.857 118.857q-16 16-38.857 16-24 0-41.143-18.286 1.714-1.714 10.857-10.571t12.286-12.286 8.571-10.857 7.429-14.571 2-15.714q0-22.857-16-38.857t-38.857-16q-8.571 0-15.714 2t-14.571 7.429-10.857 8.571-12.286 12.286-10.571 10.857q-18.857-17.714-18.857-41.714 0-22.857 16-38.857l117.714-118.286q15.429-15.429 38.857-15.429 22.857 0 38.857 14.857l84 83.429q16 16 16 38.286zM430.286 658.857q0 22.857-16 38.857l-117.714 118.286q-16 16-38.857 16-22.286 0-38.857-15.429l-84-83.429q-16-16-16-38.286 0-22.857 16-38.857l118.857-118.857q15.429-15.429 38.857-15.429 24 0 41.143 17.714-1.714 1.714-10.857 10.571t-12.286 12.286-8.571 10.857-7.429 14.571-2 15.714q0 22.857 16 38.857t38.857 16q8.571 0 15.714-2t14.571-7.429 10.857-8.571 12.286-12.286 10.571-10.857q18.857 17.714 18.857 41.714zM941.714 256q0-68.571-48.571-116l-84-83.429q-47.429-47.429-116-47.429-69.143 0-116.571 48.571l-117.714 118.286q-47.429 47.429-47.429 116 0 70.286 50.286 119.429l-50.286 50.286q-49.143-50.286-118.857-50.286-68.571 0-116.571 48l-118.857 118.857q-48 48-48 116.571t48.571 116l84 83.429q47.429 47.429 116 47.429 69.143 0 116.571-48.571l117.714-118.286q47.429-47.429 47.429-116 0-70.286-50.286-119.429l50.286-50.286q49.143 50.286 118.857 50.286 68.571 0 116.571-48l118.857-118.857q48-48 48-116.571z" horiz-adv-x="951" />
172
+ <glyph unicode="&#xe6a2;" d="M1097.143 292.571q0-90.857-64.286-155.143t-155.143-64.286h-621.714q-105.714 0-180.857 75.143t-75.143 180.857q0 75.429 40.571 138t106.857 93.429q-1.143 16-1.143 24.571 0 121.143 85.714 206.857t206.857 85.714q90.286 0 163.714-50.286t107.143-131.429q40 35.429 94.857 35.429 60.571 0 103.429-42.857t42.857-103.429q0-42.857-23.429-78.857 73.714-17.143 121.714-76.857t48-136.857z" horiz-adv-x="1097" />
173
+ <glyph unicode="&#xe6a3;" d="M872.571 123.428q32-50.857 12.286-87.143t-80.286-36.286h-658.286q-60.571 0-80.286 36.286t12.286 87.143l287.429 453.143v228h-36.571q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714 25.714 10.857h292.571q14.857 0 25.714-10.857t10.857-25.714-10.857-25.714-25.714-10.857h-36.571v-228zM427.429 537.714l-155.429-245.143h406.857l-155.429 245.143-11.429 17.714v249.143h-73.143v-249.143z" horiz-adv-x="951" />
174
+ <glyph unicode="&#xe6a4;" d="M548.571 438.857q14.857 0 25.714-10.857t10.857-25.714-10.857-25.714-25.714-10.857-25.714 10.857-10.857 25.714 10.857 25.714 25.714 10.857zM720 402.286l289.714-227.429q16-11.429 14.286-32-2.857-20-20-29.143l-73.143-36.571q-7.429-4-16.571-4-9.714 0-17.714 4.571l-394.286 221.143-62.857-37.714q-4.571-2.286-6.857-2.857 8-28 5.714-55.429-4-44-32-84.286t-75.429-70.571q-75.429-48-158.286-48-77.714 0-126.857 44.571-51.429 48-45.143 118.286 4 43.429 32 84t74.857 70.857q75.429 48 158.857 48 47.429 0 86.286-17.714 5.143 7.429 12.571 12.571l69.714 41.714-69.714 41.714q-7.429 5.143-12.571 12.571-38.857-17.714-86.286-17.714-83.429 0-158.857 48-46.857 30.286-74.857 70.857t-32 84q-2.857 33.714 8.857 64.571t36.286 53.143q48.571 45.143 126.857 45.143 82.857 0 158.286-48 47.429-29.714 75.429-70.286t32-84.571q2.286-27.429-5.714-55.429 2.286-0.571 6.857-2.857l62.857-37.714 394.286 221.143q8 4.571 17.714 4.571 9.143 0 16.571-4l73.143-36.571q17.143-9.143 20-29.143 1.714-20.571-14.286-32zM330.857 550.857q26.286 24 12 61.714t-60.571 66.857q-52.571 33.714-109.714 33.714-42.286 0-64.571-20.571-26.286-24-12-61.714t60.571-66.857q52.571-33.714 109.714-33.714 42.286 0 64.571 20.571zM282.286 125.143q46.286 29.143 60.571 66.857t-12 61.714q-22.286 20.571-64.571 20.571-57.143 0-109.714-33.714-46.286-29.143-60.571-66.857t12-61.714q22.286-20.571 64.571-20.571 57.143 0 109.714 33.714zM384 475.428l54.857-33.143v6.286q0 20.571 18.857 32l8 4.571-45.143 26.857-14.857-14.857q-1.714-1.714-5.714-6.286t-6.857-6.857q-1.143-1.143-2.286-2t-1.714-1.429zM512 347.428l54.857-18.286 420.571 329.143-73.143 36.571-438.857-246.286v-64.571l-91.429-54.857 5.143-4.571q1.143-1.143 4-3.429 2.286-2.286 6.286-6.857t6.286-6.857l14.857-14.857zM914.286 109.714l73.143 36.571-297.143 233.143-101.143-78.857q-1.143-1.714-7.429-4z" />
175
+ <glyph unicode="&#xe6a5;" d="M969.143 731.428q22.857 0 38.857-16t16-38.857v-694.857q0-22.857-16-38.857t-38.857-16h-548.571q-22.857 0-38.857 16t-16 38.857v164.571h-310.857q-22.857 0-38.857 16t-16 38.857v384q0 22.857 11.429 50.286t27.429 43.429l233.143 233.143q16 16 43.429 27.429t50.286 11.429h237.714q22.857 0 38.857-16t16-38.857v-187.429q38.857 22.857 73.143 22.857h237.714zM658.286 609.714l-170.857-170.857h170.857v170.857zM292.571 829.143l-170.857-170.857h170.857v170.857zM404.571 459.428l180.571 180.571v237.714h-219.429v-237.714q0-22.857-16-38.857t-38.857-16h-237.714v-365.714h292.571v146.286q0 22.857 11.429 50.286t27.429 43.429zM950.857 0v658.286h-219.429v-237.714q0-22.857-16-38.857t-38.857-16h-237.714v-365.714h512z" />
176
+ <glyph unicode="&#xe6a6;" d="M802.286 159.428q0-66.857-45.143-112t-112-45.143q-77.143 0-134.286 57.143l-444 443.429q-64.571 65.714-64.571 154.857 0 90.857 62.857 154.286t153.714 63.429q90.286 0 156-64.571l345.714-346.286q5.714-5.714 5.714-12.571 0-9.143-17.429-26.571t-26.571-17.429q-7.429 0-13.143 5.714l-346.286 346.857q-45.143 44-103.429 44-60.571 0-102.286-42.857t-41.714-103.429q0-60 43.429-103.429l443.429-444q36-36 82.857-36 36.571 0 60.571 24t24 60.571q0 46.857-36 82.857l-332 332q-14.857 13.714-34.286 13.714-16.571 0-27.429-10.857t-10.857-27.429q0-18.286 14.286-33.714l234.286-234.286q5.714-5.714 5.714-12.571 0-9.143-17.714-26.857t-26.857-17.714q-6.857 0-12.571 5.714l-234.286 234.286q-36 34.857-36 85.143 0 46.857 32.571 79.429t79.429 32.571q50.286 0 85.143-36l332-332q57.143-56 57.143-134.286z" horiz-adv-x="805" />
177
+ <glyph unicode="&#xe6a7;" d="M219.429 73.143h438.857v219.429h-438.857v-219.429zM731.429 73.143h73.143v512q0 8-5.714 22t-11.429 19.714l-160.571 160.571q-5.714 5.714-19.429 11.429t-22.286 5.714v-237.714q0-22.857-16-38.857t-38.857-16h-329.143q-22.857 0-38.857 16t-16 38.857v237.714h-73.143v-731.429h73.143v237.714q0 22.857 16 38.857t38.857 16h475.429q22.857 0 38.857-16t16-38.857v-237.714zM512 603.428v182.857q0 7.429-5.429 12.857t-12.857 5.429h-109.714q-7.429 0-12.857-5.429t-5.429-12.857v-182.857q0-7.429 5.429-12.857t12.857-5.429h109.714q7.429 0 12.857 5.429t5.429 12.857zM877.714 585.143v-530.286q0-22.857-16-38.857t-38.857-16h-768q-22.857 0-38.857 16t-16 38.857v768q0 22.857 16 38.857t38.857 16h530.286q22.857 0 50.286-11.429t43.429-27.429l160-160q16-16 27.429-43.429t11.429-50.286z" horiz-adv-x="878" />
178
+ <glyph unicode="&#xe6a8;" d="M877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
179
+ <glyph unicode="&#xe6a9;" d="M877.714 182.857v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714zM877.714 475.428v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714zM877.714 768v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="878" />
180
+ <glyph unicode="&#xe6aa;" d="M219.429 146.286q0-45.714-32-77.714t-77.714-32-77.714 32-32 77.714 32 77.714 77.714 32 77.714-32 32-77.714zM219.429 438.857q0-45.714-32-77.714t-77.714-32-77.714 32-32 77.714 32 77.714 77.714 32 77.714-32 32-77.714zM1024 201.143v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-694.857q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h694.857q7.429 0 12.857-5.429t5.429-12.857zM219.429 731.428q0-45.714-32-77.714t-77.714-32-77.714 32-32 77.714 32 77.714 77.714 32 77.714-32 32-77.714zM1024 493.714v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-694.857q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h694.857q7.429 0 12.857-5.429t5.429-12.857zM1024 786.286v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-694.857q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h694.857q7.429 0 12.857-5.429t5.429-12.857z" />
181
+ <glyph unicode="&#xe6ab;" d="M217.714 25.143q0-45.714-31.143-72t-77.429-26.286q-60.571 0-98.286 37.714l32.571 50.286q28-25.714 60.571-25.714 16.571 0 28.857 8.286t12.286 24.286q0 36.571-60 32l-14.857 32q4.571 5.714 18.571 24.857t24.286 30.857 21.143 22v0.571q-9.143 0-27.714-0.571t-27.714-0.571v-30.286h-60.571v86.857h190.286v-50.286l-54.286-65.714q29.143-6.857 46.286-28t17.143-50.286zM218.857 383.428v-90.857h-206.857q-3.429 20.571-3.429 30.857 0 29.143 13.429 53.143t32.286 38.857 37.714 27.143 32.286 24.857 13.429 25.714q0 14.286-8.286 22t-22.571 7.714q-26.286 0-46.286-33.143l-48.571 33.714q13.714 29.143 40.857 45.429t60.286 16.286q41.714 0 70.286-23.714t28.571-64.286q0-28.571-19.429-52.286t-42.857-36.857-43.143-28.857-20.286-30h72.571v34.286h60zM1024 201.143v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-694.857q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 8 5.143 13.143t13.143 5.143h694.857q7.429 0 12.857-5.429t5.429-12.857zM219.429 714.857v-56.571h-191.429v56.571h61.143q0 23.429 0.286 69.714t0.286 69.143v6.857h-1.143q-4.571-9.714-28.571-30.857l-40.571 43.429 77.714 72.571h60.571v-230.857h61.714zM1024 493.714v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-694.857q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 8 5.143 13.143t13.143 5.143h694.857q7.429 0 12.857-5.429t5.429-12.857zM1024 786.286v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-694.857q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h694.857q7.429 0 12.857-5.429t5.429-12.857z" />
182
+ <glyph unicode="&#xe6ac;" d="M1005.714 438.857q8 0 13.143-5.143t5.143-13.143v-36.571q0-8-5.143-13.143t-13.143-5.143h-987.429q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h987.429zM276 475.428q-16 20-29.143 45.714-27.429 55.429-27.429 107.429 0 103.429 76.571 176.571 76 72.571 224.571 72.571 28.571 0 95.429-10.857 37.714-6.857 101.143-27.429 5.714-21.714 12-67.429 8-70.286 8-104.571 0-10.286-2.857-25.714l-6.857-1.714-48 3.429-8 1.143q-28.571 85.143-58.857 117.143-50.286 52-120 52-65.143 0-104-33.714-38.286-33.143-38.286-83.429 0-41.714 37.714-80t159.429-73.714q39.429-11.429 98.857-37.714 33.143-16 54.286-29.714h-424.571zM565.714 329.143h234.857q4-22.286 4-52.571 0-63.429-23.429-121.143-13.143-31.429-40.571-59.429-21.143-20-62.286-46.286-45.714-27.429-87.429-37.714-45.714-12-116-12-65.143 0-111.429 13.143l-80 22.857q-32.571 9.143-41.143 16-4.571 4.571-4.571 12.571v7.429q0 61.714-1.143 89.143-0.571 17.143 0 38.857l1.143 21.143v25.143l58.286 1.143q8.571-19.429 17.143-40.571t12.857-32 7.143-15.429q20-32.571 45.714-53.714 24.571-20.571 60-32.571 33.714-12.571 75.429-12.571 36.571 0 79.429 15.429 44 14.857 69.714 49.143 26.857 34.857 26.857 73.714 0 48-46.286 89.714-19.429 16.571-78.286 40.571z" />
183
+ <glyph unicode="&#xe6ad;" d="M27.429 823.428q-21.143 1.143-25.714 2.286l-1.714 50.286q7.429 0.571 22.857 0.571 34.286 0 64-2.286 75.429-4 94.857-4 49.143 0 96 1.714 66.286 2.286 83.429 2.857 32 0 49.143 1.143l-0.571-8 1.143-36.571v-5.143q-34.286-5.143-70.857-5.143-34.286 0-45.143-14.286-7.429-8-7.429-75.429 0-7.429 0.286-18.571t0.286-14.571l0.571-130.857 8-160q3.429-70.857 29.143-115.429 20-33.714 54.857-52.571 50.286-26.857 101.143-26.857 59.429 0 109.143 16 32 10.286 56.571 29.143 27.429 20.571 37.143 36.571 20.571 32 30.286 65.143 12 41.714 12 130.857 0 45.143-2 73.143t-6.286 70-7.714 91.143l-2.286 33.714q-2.857 38.286-13.714 50.286-19.429 20-44 19.429l-57.143-1.143-8 1.714 1.143 49.143h48l117.143-5.714q43.429-1.714 112 5.714l10.286-1.143q3.429-21.714 3.429-29.143 0-4-2.286-17.714-25.714-6.857-48-7.429-41.714-6.286-45.143-9.714-8.571-8.571-8.571-23.429 0-4 0.857-15.429t0.857-17.714q4.571-10.857 12.571-226.286 3.429-111.429-8.571-173.714-8.571-43.429-23.429-69.714-21.714-37.143-64-70.286-42.857-32.571-104-50.857-62.286-18.857-145.714-18.857-95.429 0-162.286 26.286-68 26.857-102.286 69.714-34.857 43.429-47.429 111.429-9.143 45.714-9.143 135.429v190.286q0 107.429-9.714 121.714-14.286 20.571-84 22.286zM877.714 18.286v36.571q0 8-5.143 13.143t-13.143 5.143h-841.143q-8 0-13.143-5.143t-5.143-13.143v-36.571q0-8 5.143-13.143t13.143-5.143h841.143q8 0 13.143 5.143t5.143 13.143z" horiz-adv-x="878" />
184
+ <glyph unicode="&#xe6ae;" d="M292.571 164.571v109.714q0 8-5.143 13.143t-13.143 5.143h-182.857q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h182.857q8 0 13.143 5.143t5.143 13.143zM292.571 384v109.714q0 8-5.143 13.143t-13.143 5.143h-182.857q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h182.857q8 0 13.143 5.143t5.143 13.143zM585.143 164.571v109.714q0 8-5.143 13.143t-13.143 5.143h-182.857q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h182.857q8 0 13.143 5.143t5.143 13.143zM292.571 603.428v109.714q0 8-5.143 13.143t-13.143 5.143h-182.857q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h182.857q8 0 13.143 5.143t5.143 13.143zM585.143 384v109.714q0 8-5.143 13.143t-13.143 5.143h-182.857q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h182.857q8 0 13.143 5.143t5.143 13.143zM877.714 164.571v109.714q0 8-5.143 13.143t-13.143 5.143h-182.857q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h182.857q8 0 13.143 5.143t5.143 13.143zM585.143 603.428v109.714q0 8-5.143 13.143t-13.143 5.143h-182.857q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h182.857q8 0 13.143 5.143t5.143 13.143zM877.714 384v109.714q0 8-5.143 13.143t-13.143 5.143h-182.857q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h182.857q8 0 13.143 5.143t5.143 13.143zM877.714 603.428v109.714q0 8-5.143 13.143t-13.143 5.143h-182.857q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h182.857q8 0 13.143 5.143t5.143 13.143zM950.857 786.286v-621.714q0-37.714-26.857-64.571t-64.571-26.857h-768q-37.714 0-64.571 26.857t-26.857 64.571v621.714q0 37.714 26.857 64.571t64.571 26.857h768q37.714 0 64.571-26.857t26.857-64.571z" horiz-adv-x="951" />
185
+ <glyph unicode="&#xe6af;" d="M680 618.857l167.429 167.429-61.143 61.143-167.429-167.429zM935.429 786.286q0-15.429-10.286-25.714l-734.857-734.857q-10.286-10.286-25.714-10.286t-25.714 10.286l-113.143 113.143q-10.286 10.286-10.286 25.714t10.286 25.714l734.857 734.857q10.286 10.286 25.714 10.286t25.714-10.286l113.143-113.143q10.286-10.286 10.286-25.714zM163.429 894.857l56-17.143-56-17.143-17.143-56-17.143 56-56 17.143 56 17.143 17.143 56zM363.429 802.286l112-34.286-112-34.286-34.286-112-34.286 112-112 34.286 112 34.286 34.286 112zM894.857 529.143l56-17.143-56-17.143-17.143-56-17.143 56-56 17.143 56 17.143 17.143 56zM529.143 894.857l56-17.143-56-17.143-17.143-56-17.143 56-56 17.143 56 17.143 17.143 56z" horiz-adv-x="951" />
186
+ <glyph unicode="&#xe6b0;" d="M365.714 146.286q0 29.714-21.714 51.429t-51.429 21.714-51.429-21.714-21.714-51.429 21.714-51.429 51.429-21.714 51.429 21.714 21.714 51.429zM146.286 438.857h219.429v146.286h-90.286q-7.429 0-12.571-5.143l-111.429-111.429q-5.143-5.143-5.143-12.571v-17.143zM877.714 146.286q0 29.714-21.714 51.429t-51.429 21.714-51.429-21.714-21.714-51.429 21.714-51.429 51.429-21.714 51.429 21.714 21.714 51.429zM1024 768v-585.143q0-8.571-2.286-15.143t-7.714-10.571-9.429-6.571-13.429-3.429-12.857-1.143-14.571 0-12.857 0.286q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429h-219.429q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429h-36.571q-1.714 0-12.857-0.286t-14.571 0-12.857 1.143-13.429 3.429-9.429 6.571-7.714 10.571-2.286 15.143q0 14.857 10.857 25.714t25.714 10.857v182.857q0 4.571-0.286 20t0 21.714 1.429 19.714 3.714 21.143 8 17.429 12.857 17.143l113.143 113.143q10.857 10.857 28.857 18.286t33.429 7.429h91.429v109.714q0 14.857 10.857 25.714t25.714 10.857h585.143q14.857 0 25.714-10.857t10.857-25.714z" />
187
+ <glyph unicode="&#xe6b1;" d="M877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857q-63.429 0-124.571 18.286 33.714 53.143 44.571 93.714 5.143 19.429 30.857 120.571 11.429-22.286 41.714-38.571t65.143-16.286q69.143 0 123.429 39.143t84 107.714 29.714 154.286q0 65.143-34 122.286t-98.571 93.143-145.714 36q-60 0-112-16.571t-88.286-44-62.286-63.143-38.286-74-12.286-76.571q0-59.429 22.857-104.571t66.857-63.429q17.143-6.857 21.714 11.429 1.143 4 4.571 17.714t4.571 17.143q3.429 13.143-6.286 24.571-29.143 34.857-29.143 86.286 0 86.286 59.714 148.286t156.286 62q86.286 0 134.571-46.857t48.286-121.714q0-97.143-39.143-165.143t-100.286-68q-34.857 0-56 24.857t-13.143 59.714q4.571 20 15.143 53.429t17.143 58.857 6.571 43.143q0 28.571-15.429 47.429t-44 18.857q-35.429 0-60-32.571t-24.571-81.143q0-41.714 14.286-69.714l-56.571-238.857q-9.714-40-7.429-101.143-117.714 52-190.286 160.571t-72.571 241.714q0 119.429 58.857 220.286t159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
188
+ <glyph unicode="&#xe6b2;" d="M713.143 877.714q68 0 116.286-48.286t48.286-116.286v-548.571q0-68-48.286-116.286t-116.286-48.286h-414.286q48.571 69.714 61.714 120 5.143 19.429 30.286 119.429 12-22.286 42-38.286t64.286-16q103.429 0 168.857 84.286t65.429 213.429q0 48-20 92.857t-55.143 79.429-87.143 55.429-112.571 20.857q-59.429 0-111.143-16.286t-87.429-43.714-61.429-62.571-38-73.143-12.286-75.714q0-58.286 22.571-102.857t66.571-62.857q7.429-2.857 13.429 0t8.286 10.857q5.714 25.143 8.571 34.857 3.429 13.143-6.286 24-28.571 35.429-28.571 85.714 0 85.714 59.143 146.571t154.571 60.857q85.143 0 132.857-46.286t47.714-120q0-96-38.571-163.429t-99.143-67.429q-34.286 0-55.429 24.857t-13.143 59.143q4.571 19.429 15.143 52.857t16.857 58.286 6.286 42.571q0 28-15.143 46.571t-43.143 18.571q-34.857 0-59.143-32.286t-24.286-79.714q0-41.143 13.714-69.143l-56-236.571q-13.714-57.143-4-145.143h-104.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571z" horiz-adv-x="878" />
189
+ <glyph unicode="&#xe6b3;" d="M387.429 40.571q0-21.714-5.714-40.571h-217.143q-54.286 0-98 32.286t-59.143 84.286q13.714 25.714 39.429 44.286t57.143 28.286 61.143 13.714 61.143 4q18.286 0 28-1.143 3.429-2.286 17.429-12t18.857-13.143 17.714-13.143 18.286-14.571 15.714-14.571 15.143-16.857 12-17.429 10-19.714 5.429-20.571 2.571-23.143zM220 241.143q-133.714-4-220-48.571v247.429q58.857-67.429 156-67.429 18.286 0 40 2.857-12-34.857-12-49.143 0-38.286 36-85.143zM318.857 533.143q0-57.143-24.857-91.714t-80.286-34.571q-29.143 0-55.429 14.857t-44.571 38.571-32 53.429-20.286 59.429-6.571 56.571q0 54.857 29.429 94.286t82.571 39.429q37.714 0 68-23.429t48-59.429 26.857-74.286 9.143-73.143zM877.714 585.143v-420.571q0-68-48.286-116.286t-116.286-48.286h-267.429q22.286 41.714 22.286 89.714 0 37.714-12.571 70t-31.714 53.143-41.143 40.571-41.143 34-31.714 31.143-12.571 34q0 20.571 13.143 38.857t32 35.143 37.429 36.857 31.714 53.143 13.143 74.857-15.143 83.143-43.143 67.714q-3.429 3.429-8 6.286t-7.143 4.286-5.714 5.429-6 9.714h77.143l77.143 36.571h-249.714q-78.857 0-139.714-22t-104.286-76.286q0 72 46.286 121.714t118.286 49.714h548.571q68 0 116.286-48.286t48.286-116.286v-54.857h-146.286v146.286h-73.143v-146.286h-146.286v-73.143h146.286v-146.286h73.143v146.286h146.286z" horiz-adv-x="878" />
190
+ <glyph unicode="&#xe6b4;" d="M500.571 113.714q0 12-2.571 23.143t-5.429 20.571-10 19.714-12 17.429-15.143 16.857-15.714 14.571-18.286 14.571-17.714 13.143-18.857 13.143-17.429 12q-9.714 1.143-28.571 1.143-30.857 0-60.571-4t-61.714-14.286-56-26.286-39.429-42.857-15.429-61.143q0-38.857 20.286-69.429t53.143-48 68.857-26 72.571-8.571q33.714 0 64.286 7.143t57.429 22.286 42.571 42 15.714 62.857zM432 606.286q0 34.286-9.429 72.857t-26.857 74.571-48 59.429-68.286 23.429q-53.143 0-82.286-39.429t-29.143-94.286q0-26.857 6.571-56.571t20.286-59.429 32-53.429 44.571-38.571 55.429-14.857q55.429 0 80.286 34.571t24.857 91.714zM357.143 877.714h249.714l-77.143-45.143h-77.143q40.571-25.714 62.857-72t22.286-96.571q0-42.286-13.143-75.143t-32-52.857-37.714-36.857-32-34.857-13.143-38.571q0-14.857 9.429-29.143t24.571-27.429 33.429-27.429 36.571-31.714 33.429-37.714 24.571-48.571 9.429-60.857q0-91.429-80-161.143-86.857-74.857-240-74.857-33.714 0-68.286 5.714t-69.714 19.143-62 33.143-44 50.857-17.143 69.429q0 34.857 21.143 77.143 18.286 36.571 54.857 63.143t82.857 40.571 88.571 20.571 85.714 7.714q-36.571 47.429-36.571 85.143 0 6.857 1.143 13.429t2.857 11.143 4.571 12.286 4 12.286q-22.857-2.857-40-2.857-85.143 0-146 56t-60.857 140.571q0 80 54.286 143.143t133.714 80.857q53.714 11.429 106.857 11.429zM950.857 731.428v-73.143h-146.286v-146.286h-73.143v146.286h-146.286v73.143h146.286v146.286h73.143v-146.286h146.286z" horiz-adv-x="951" />
191
+ <glyph unicode="&#xe6b5;" d="M438.857 292.571h219.429v54.857h-73.143v256h-65.143l-84.571-78.286 44-45.714q24 21.143 31.429 32.571h1.143v-164.571h-73.143v-54.857zM731.429 438.857q0-40-12-81.143t-34-76.571-58-57.714-78.857-22.286-78.857 22.286-58 57.714-34 76.571-12 81.143 12 81.143 34 76.571 58 57.714 78.857 22.286 78.857-22.286 58-57.714 34-76.571 12-81.143zM1024 292.571v292.571q-60.571 0-103.429 42.857t-42.857 103.429h-658.286q0-60.571-42.857-103.429t-103.429-42.857v-292.571q60.571 0 103.429-42.857t42.857-103.429h658.286q0 60.571 42.857 103.429t103.429 42.857zM1097.143 768v-658.286q0-14.857-10.857-25.714t-25.714-10.857h-1024q-14.857 0-25.714 10.857t-10.857 25.714v658.286q0 14.857 10.857 25.714t25.714 10.857h1024q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="1097" />
192
+ <glyph unicode="&#xe6b6;" d="M585.143 548.571q0-14.857-10.857-25.714l-256-256q-10.857-10.857-25.714-10.857t-25.714 10.857l-256 256q-10.857 10.857-10.857 25.714t10.857 25.714 25.714 10.857h512q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="585" />
193
+ <glyph unicode="&#xe6b7;" d="M585.143 256q0-14.857-10.857-25.714t-25.714-10.857h-512q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714l256 256q10.857 10.857 25.714 10.857t25.714-10.857l256-256q10.857-10.857 10.857-25.714z" horiz-adv-x="585" />
194
+ <glyph unicode="&#xe6b8;" d="M365.714 694.857v-512q0-14.857-10.857-25.714t-25.714-10.857-25.714 10.857l-256 256q-10.857 10.857-10.857 25.714t10.857 25.714l256 256q10.857 10.857 25.714 10.857t25.714-10.857 10.857-25.714z" horiz-adv-x="366" />
195
+ <glyph unicode="&#xe6b9;" d="M329.143 438.857q0-14.857-10.857-25.714l-256-256q-10.857-10.857-25.714-10.857t-25.714 10.857-10.857 25.714v512q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857l256-256q10.857-10.857 10.857-25.714z" horiz-adv-x="366" />
196
+ <glyph unicode="&#xe6ba;" d="M91.429 73.143h347.429v658.286h-365.714v-640q0-7.429 5.429-12.857t12.857-5.429zM877.714 91.428v640h-365.714v-658.286h347.429q7.429 0 12.857 5.429t5.429 12.857zM950.857 786.286v-694.857q0-37.714-26.857-64.571t-64.571-26.857h-768q-37.714 0-64.571 26.857t-26.857 64.571v694.857q0 37.714 26.857 64.571t64.571 26.857h768q37.714 0 64.571-26.857t26.857-64.571z" horiz-adv-x="951" />
197
+ <glyph unicode="&#xe6bb;" d="M585.143 329.143q0-14.857-10.857-25.714l-256-256q-10.857-10.857-25.714-10.857t-25.714 10.857l-256 256q-10.857 10.857-10.857 25.714t10.857 25.714 25.714 10.857h512q14.857 0 25.714-10.857t10.857-25.714zM585.143 548.571q0-14.857-10.857-25.714t-25.714-10.857h-512q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714l256 256q10.857 10.857 25.714 10.857t25.714-10.857l256-256q10.857-10.857 10.857-25.714z" horiz-adv-x="585" />
198
+ <glyph unicode="&#xe6bc;" d="M585.143 329.143q0-14.857-10.857-25.714l-256-256q-10.857-10.857-25.714-10.857t-25.714 10.857l-256 256q-10.857 10.857-10.857 25.714t10.857 25.714 25.714 10.857h512q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="585" />
199
+ <glyph unicode="&#xe6bd;" d="M585.143 548.571q0-14.857-10.857-25.714t-25.714-10.857h-512q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714l256 256q10.857 10.857 25.714 10.857t25.714-10.857l256-256q10.857-10.857 10.857-25.714z" horiz-adv-x="585" />
200
+ <glyph unicode="&#xe6be;" d="M1024 545.143v-453.714q0-37.714-26.857-64.571t-64.571-26.857h-841.143q-37.714 0-64.571 26.857t-26.857 64.571v453.714q25.143-28 57.714-49.714 206.857-140.571 284-197.143 32.571-24 52.857-37.429t54-27.429 62.857-14h1.143q29.143 0 62.857 14t54 27.429 52.857 37.429q97.143 70.286 284.571 197.143 32.571 22.286 57.143 49.714zM1024 713.143q0-45.143-28-86.286t-69.714-70.286q-214.857-149.143-267.429-185.714-5.714-4-24.286-17.429t-30.857-21.714-29.714-18.571-32.857-15.429-28.571-5.143h-1.143q-13.143 0-28.571 5.143t-32.857 15.429-29.714 18.571-30.857 21.714-24.286 17.429q-52 36.571-149.714 104.286t-117.143 81.429q-35.429 24-66.857 66t-31.429 78q0 44.571 23.714 74.286t67.714 29.714h841.143q37.143 0 64.286-26.857t27.143-64.571z" />
201
+ <glyph unicode="&#xe6bf;" d="M199.429 593.714v-566.286h-188.571v566.286h188.571zM211.429 768.571q0.571-41.714-28.857-69.714t-77.429-28h-1.143q-46.857 0-75.429 28t-28.571 69.714q0 42.286 29.429 70t76.857 27.714 76-27.714 29.143-70zM877.714 352v-324.571h-188v302.857q0 60-23.143 94t-72.286 34q-36 0-60.286-19.714t-36.286-48.857q-6.286-17.143-6.286-46.286v-316h-188q1.143 228 1.143 369.714t-0.571 169.143l-0.571 27.429h188v-82.286h-1.143q11.429 18.286 23.429 32t32.286 29.714 49.714 24.857 65.429 8.857q97.714 0 157.143-64.857t59.429-190z" horiz-adv-x="878" />
202
+ <glyph unicode="&#xe6c0;" d="M877.714 438.857q0-89.143-34.857-170.286t-93.714-140-140-93.714-170.286-34.857q-98.286 0-186.857 41.429t-150.857 116.857q-4 5.714-3.714 12.857t4.857 11.714l78.286 78.857q5.714 5.143 14.286 5.143 9.143-1.143 13.143-6.857 41.714-54.286 102.286-84t128.571-29.714q59.429 0 113.429 23.143t93.429 62.571 62.571 93.429 23.143 113.429-23.143 113.429-62.571 93.429-93.429 62.571-113.429 23.143q-56 0-107.429-20.286t-91.429-58l78.286-78.857q17.714-17.143 8-39.429-9.714-22.857-33.714-22.857h-256q-14.857 0-25.714 10.857t-10.857 25.714v256q0 24 22.857 33.714 22.286 9.714 39.429-8l74.286-73.714q61.143 57.714 139.714 89.429t162.571 31.714q89.143 0 170.286-34.857t140-93.714 93.714-140 34.857-170.286z" horiz-adv-x="878" />
203
+ <glyph unicode="&#xe6c1;" d="M1012 73.143q0-30.286-21.143-51.429l-61.143-61.714q-22.286-21.143-52-21.143-30.286 0-51.429 21.143l-207.429 208q-21.714 20.571-21.714 51.429 0 30.286 24.571 54.857l-146.286 146.286-72-72q-8-8-19.429-8t-19.429 8q1.143-1.143 7.143-6.857t7.143-7.429 5.714-6.571 5.714-7.714 3.429-7.714 3.143-9.429 0.857-10.286q0-21.714-16-38.857-1.714-1.714-9.429-10.286t-10.857-11.714-10.571-9.429-12.571-8.857-12.571-5.143-14.857-2.571q-22.857 0-38.857 16l-233.143 233.143q-16 16-16 38.857 0 7.429 2.571 14.857t5.143 12.571 8.857 12.571 9.429 10.571 11.714 10.857 10.286 9.429q17.143 16 38.857 16 5.714 0 10.286-0.857t9.429-3.143 7.714-3.429 7.714-5.714 6.571-5.714 7.429-7.143 6.857-7.143q-8 8-8 19.429t8 19.429l198.857 198.857q8 8 19.429 8t19.429-8q-1.143 1.143-7.143 6.857t-7.143 7.429-5.714 6.571-5.714 7.714-3.429 7.714-3.143 9.429-0.857 10.286q0 21.714 16 38.857 1.714 1.714 9.429 10.286t10.857 11.714 10.571 9.429 12.571 8.857 12.571 5.143 14.857 2.571q22.857 0 38.857-16l233.143-233.143q16-16 16-38.857 0-7.429-2.571-14.857t-5.143-12.571-8.857-12.571-9.429-10.571-11.714-10.857-10.286-9.429q-17.143-16-38.857-16-5.714 0-10.286 0.857t-9.429 3.143-7.714 3.429-7.714 5.714-6.571 5.714-7.429 7.143-6.857 7.143q8-8 8-19.429t-8-19.429l-72-72 146.286-146.286q24.571 24.571 54.857 24.571 29.714 0 52-21.143l207.429-207.429q21.143-22.286 21.143-52z" />
204
+ <glyph unicode="&#xe6c2;" d="M219.429 292.571q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM329.143 548.571q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM573.714 273.714l57.714 218.286q3.429 14.857-4.286 27.714t-22 16.857-27.429-3.714-17.143-22.571l-57.714-218.286q-34.286-2.857-61.143-24.857t-36-56.286q-11.429-44 11.429-83.429t66.857-50.857 83.429 11.429 50.857 66.857q9.143 34.286-3.429 66.857t-41.143 52zM950.857 292.571q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM585.143 658.286q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM841.143 548.571q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM1024 292.571q0-149.143-80.571-276-10.857-16.571-30.857-16.571h-801.143q-20 0-30.857 16.571-80.571 126.286-80.571 276 0 104 40.571 198.857t109.143 163.429 163.429 109.143 198.857 40.571 198.857-40.571 163.429-109.143 109.143-163.429 40.571-198.857z" />
205
+ <glyph unicode="&#xe6c3;" d="M512 731.428q-116.571 0-218-39.714t-161.143-107.143-59.714-145.714q0-64 40.857-122t115.143-100.286l49.714-28.571-15.429-54.857q-13.714-52-40-98.286 86.857 36 157.143 97.714l24.571 21.714 32.571-3.429q39.429-4.571 74.286-4.571 116.571 0 218 39.714t161.143 107.143 59.714 145.714-59.714 145.714-161.143 107.143-218 39.714zM1024 438.857q0-99.429-68.571-183.714t-186.286-133.143-257.143-48.857q-40 0-82.857 4.571-113.143-100-262.857-138.286-28-8-65.143-12.571h-2.857q-8.571 0-15.429 6t-9.143 15.714v0.571q-1.714 2.286-0.286 6.857t1.143 5.714 2.571 5.429l3.429 5.143t4 4.857 4.571 5.143q4 4.571 17.714 19.714t19.714 21.714 17.714 22.571 18.571 29.143 15.429 33.714 14.857 43.429q-89.714 50.857-141.429 125.714t-51.714 160.571q0 99.429 68.571 183.714t186.286 133.143 257.143 48.857 257.143-48.857 186.286-133.143 68.571-183.714z" />
206
+ <glyph unicode="&#xe6c4;" d="M402.286 731.428q-87.429 0-163.429-29.714t-120.857-80.571-44.857-109.143q0-46.857 30.286-90.286t85.143-75.429l55.429-32-20-48q19.429 11.429 35.429 22.286l25.143 17.714 30.286-5.714q44.571-8 87.429-8 87.429 0 163.429 29.714t120.857 80.571 44.857 109.143-44.857 109.143-120.857 80.571-163.429 29.714zM402.286 804.571q109.143 0 202-39.143t146.571-106.571 53.714-146.857-53.714-146.857-146.571-106.571-202-39.143q-49.143 0-100.571 9.143-70.857-50.286-158.857-73.143-20.571-5.143-49.143-9.143h-1.714q-6.286 0-11.714 4.571t-6.571 12q-0.571 1.714-0.571 3.714t0.286 3.714 1.143 3.429l1.429 2.857t2 3.143 2.286 2.857 2.571 2.857 2.286 2.571q2.857 3.429 13.143 14.286t14.857 16.857 12.857 16.571 14.286 22 11.714 25.143q-70.857 41.143-111.429 101.143t-40.571 128q0 79.429 53.714 146.857t146.571 106.571 202 39.143zM872 136.571q5.714-13.714 11.714-25.143t14.286-22 12.857-16.571 14.857-16.857 13.143-14.286q0.571-0.571 2.286-2.571t2.571-2.857 2.286-2.857 2-3.143l1.429-2.857t1.143-3.429 0.286-3.714-0.571-3.714q-1.714-8-7.429-12.571t-12.571-4q-28.571 4-49.143 9.143-88 22.857-158.857 73.143-51.429-9.143-100.571-9.143-154.857 0-269.714 75.429 33.143-2.286 50.286-2.286 92 0 176.571 25.714t150.857 73.714q71.429 52.571 109.714 121.143t38.286 145.143q0 44-13.143 86.857 73.714-40.571 116.571-101.714t42.857-131.429q0-68.571-40.571-128.286t-111.429-100.857z" />
207
+ <glyph unicode="&#xe6c5;" d="M505.714 627.428q10.286-11.429 4-25.143l-308.571-661.143q-7.429-14.286-24-14.286-2.286 0-8 1.143-9.714 2.857-14.571 10.857t-2.571 17.143l112.571 461.714-232-57.714q-2.286-0.571-6.857-0.571-10.286 0-17.714 6.286-10.286 8.571-7.429 22.286l114.857 471.429q2.286 8 9.143 13.143t16 5.143h187.429q10.857 0 18.286-7.143t7.429-16.857q0-4.571-2.857-10.286l-97.714-264.571 226.286 56q4.571 1.143 6.857 1.143 10.857 0 19.429-8.571z" horiz-adv-x="512" />
208
+ <glyph unicode="&#xe6c6;" d="M1024 237.714v-182.857q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v182.857q0 22.857 16 38.857t38.857 16h54.857v109.714h-292.571v-109.714h54.857q22.857 0 38.857-16t16-38.857v-182.857q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v182.857q0 22.857 16 38.857t38.857 16h54.857v109.714h-292.571v-109.714h54.857q22.857 0 38.857-16t16-38.857v-182.857q0-22.857-16-38.857t-38.857-16h-182.857q-22.857 0-38.857 16t-16 38.857v182.857q0 22.857 16 38.857t38.857 16h54.857v109.714q0 29.714 21.714 51.429t51.429 21.714h292.571v109.714h-54.857q-22.857 0-38.857 16t-16 38.857v182.857q0 22.857 16 38.857t38.857 16h182.857q22.857 0 38.857-16t16-38.857v-182.857q0-22.857-16-38.857t-38.857-16h-54.857v-109.714h292.571q29.714 0 51.429-21.714t21.714-51.429v-109.714h54.857q22.857 0 38.857-16t16-38.857z" />
209
+ <glyph unicode="&#xe6c7;" d="M512 477.714v-331.429q0-59.429-43.429-102.857t-102.857-43.429-102.857 43.429-43.429 102.857q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857 10.857-25.714q0-28.571 22.286-50.857t50.857-22.286 50.857 22.286 22.286 50.857v331.429q18.857 6.286 36.571 6.286t36.571-6.286zM950.857 462.286q0-7.429-5.429-12.857t-12.857-5.429q-6.286 0-13.143 5.714-28 26.286-53.143 39.429t-58.286 13.143q-38.857 0-73.143-21.143t-58.857-55.429q-4-5.714-10-16t-8.286-13.714q-6.286-9.714-16-9.714-10.286 0-16.571 9.714-2.286 3.429-8.286 13.714t-10 16q-24.571 34.286-58.571 55.429t-72.857 21.143-72.857-21.143-58.571-55.429q-4-5.714-10-16t-8.286-13.714q-6.286-9.714-16.571-9.714-9.714 0-16 9.714-2.286 3.429-8.286 13.714t-10 16q-24.571 34.286-58.857 55.429t-73.143 21.143q-33.143 0-58.286-13.143t-53.143-39.429q-6.857-5.714-13.143-5.714-7.429 0-12.857 5.429t-5.429 12.857q0 2.857 0.571 4 25.714 104.571 98.571 182.571t170.286 116.857 206 38.857q80 0 156.857-22.857t140.857-64.857 111.143-106.857 66-143.714q0.571-1.143 0.571-4zM512 877.714v-56q-24 1.143-36.571 1.143t-36.571-1.143v56q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857 10.857-25.714z" horiz-adv-x="951" />
210
+ <glyph unicode="&#xe6c8;" d="M438.857 0h512v365.714h-237.714q-22.857 0-38.857 16t-16 38.857v237.714h-219.429v-658.286zM585.143 822.857v36.571q0 7.429-5.429 12.857t-12.857 5.429h-402.286q-7.429 0-12.857-5.429t-5.429-12.857v-36.571q0-7.429 5.429-12.857t12.857-5.429h402.286q7.429 0 12.857 5.429t5.429 12.857zM731.429 438.857h170.857l-170.857 170.857v-170.857zM1024 365.714v-384q0-22.857-16-38.857t-38.857-16h-548.571q-22.857 0-38.857 16t-16 38.857v91.429h-310.857q-22.857 0-38.857 16t-16 38.857v768q0 22.857 16 38.857t38.857 16h621.714q22.857 0 38.857-16t16-38.857v-187.429q12-7.429 20.571-16l233.143-233.143q16-16 27.429-43.429t11.429-50.286z" />
211
+ <glyph unicode="&#xe6c9;" d="M420.571 621.714q0-7.429-5.429-12.857t-12.857-5.429-12.857 5.429-5.429 12.857q0 26.286-30.857 40.571t-60.571 14.286q-7.429 0-12.857 5.429t-5.429 12.857 5.429 12.857 12.857 5.429q28.571 0 56.857-9.143t49.714-30.857 21.429-51.429zM512 621.714q0 41.143-19.714 76.571t-51.429 58-70.286 35.429-78 12.857-78-12.857-70.286-35.429-51.429-58-19.714-76.571q0-57.714 38.857-102.857 5.714-6.286 17.429-18.857t17.429-18.857q73.143-87.429 80.571-170.286h130.286q7.429 82.857 80.571 170.286 5.714 6.286 17.429 18.857t17.429 18.857q38.857 45.143 38.857 102.857zM585.143 621.714q0-88.571-58.857-153.143-25.714-28-42.571-49.714t-34-54.571-19.429-61.429q26.857-16 26.857-46.857 0-21.143-14.286-36.571 14.286-15.429 14.286-36.571 0-29.714-25.714-46.286 7.429-13.143 7.429-26.857 0-26.286-18-40.571t-44.286-14.286q-11.429-25.143-34.286-40t-49.714-14.857-49.714 14.857-34.286 40q-26.286 0-44.286 14.286t-18 40.571q0 13.714 7.429 26.857-25.714 16.571-25.714 46.286 0 21.143 14.286 36.571-14.286 15.429-14.286 36.571 0 30.857 26.857 46.857-2.286 28.571-19.429 61.429t-34 54.571-42.571 49.714q-58.857 64.571-58.857 153.143 0 56.571 25.429 105.429t66.857 81.143 93.714 50.857 106.571 18.571 106.571-18.571 93.714-50.857 66.857-81.143 25.429-105.429z" horiz-adv-x="585" />
212
+ <glyph unicode="&#xe6ca;" d="M1024 274.286v-109.714q0-7.429-5.429-12.857t-12.857-5.429h-786.286v-109.714q0-7.429-5.429-12.857t-12.857-5.429q-6.857 0-13.714 5.714l-182.286 182.857q-5.143 5.143-5.143 12.571 0 8 5.143 13.143l182.857 182.857q5.143 5.143 13.143 5.143 7.429 0 12.857-5.429t5.429-12.857v-109.714h786.286q7.429 0 12.857-5.429t5.429-12.857zM1024 585.143q0-8-5.143-13.143l-182.857-182.857q-5.143-5.143-13.143-5.143-7.429 0-12.857 5.429t-5.429 12.857v109.714h-786.286q-7.429 0-12.857 5.429t-5.429 12.857v109.714q0 7.429 5.429 12.857t12.857 5.429h786.286v109.714q0 8 5.143 13.143t13.143 5.143q6.857 0 13.714-5.714l182.286-182.286q5.143-5.143 5.143-13.143z" />
213
+ <glyph unicode="&#xe6cb;" d="M731.429 420.571q0 8-5.143 13.143t-13.143 5.143h-128v201.143q0 7.429-5.429 12.857t-12.857 5.429h-109.714q-7.429 0-12.857-5.429t-5.429-12.857v-201.143h-128q-7.429 0-12.857-5.429t-5.429-12.857q0-8 5.143-13.143l201.143-201.143q5.143-5.143 13.143-5.143t13.143 5.143l200.571 200.571q5.714 6.857 5.714 13.714zM1097.143 292.571q0-90.857-64.286-155.143t-155.143-64.286h-621.714q-105.714 0-180.857 75.143t-75.143 180.857q0 74.286 40 137.143t107.429 94.286q-1.143 17.143-1.143 24.571 0 121.143 85.714 206.857t206.857 85.714q89.143 0 163.143-49.714t107.714-132q40.571 35.429 94.857 35.429 60.571 0 103.429-42.857t42.857-103.429q0-43.429-23.429-78.857 74.286-17.714 122-77.429t47.714-136.286z" horiz-adv-x="1097" />
214
+ <glyph unicode="&#xe6cc;" d="M731.429 457.143q0 8-5.143 13.143l-201.143 201.143q-5.143 5.143-13.143 5.143t-13.143-5.143l-200.571-200.571q-5.714-6.857-5.714-13.714 0-8 5.143-13.143t13.143-5.143h128v-201.143q0-7.429 5.429-12.857t12.857-5.429h109.714q7.429 0 12.857 5.429t5.429 12.857v201.143h128q7.429 0 12.857 5.429t5.429 12.857zM1097.143 292.571q0-90.857-64.286-155.143t-155.143-64.286h-621.714q-105.714 0-180.857 75.143t-75.143 180.857q0 74.286 40 137.143t107.429 94.286q-1.143 17.143-1.143 24.571 0 121.143 85.714 206.857t206.857 85.714q89.143 0 163.143-49.714t107.714-132q40.571 35.429 94.857 35.429 60.571 0 103.429-42.857t42.857-103.429q0-43.429-23.429-78.857 74.286-17.714 122-77.429t47.714-136.286z" horiz-adv-x="1097" />
215
+ <glyph unicode="&#xe6cd;" d="M219.429 182.857q0-14.857-10.857-25.714t-25.714-10.857-25.714 10.857-10.857 25.714 10.857 25.714 25.714 10.857 25.714-10.857 10.857-25.714zM804.571 148q0-69.143-41.714-108.571t-110.857-39.429h-499.429q-69.143 0-110.857 39.429t-41.714 108.571q0 38.857 3.143 74.857t13.714 78.857 27.143 75.714 46.286 58.857 68.571 34.571q-12.571-29.714-12.571-68.571v-116q-33.143-11.429-53.143-40t-20-63.429q0-45.714 32-77.714t77.714-32 77.714 32 32 77.714q0 34.857-20.286 63.429t-52.857 40v116q0 35.429 14.286 53.143 75.429-59.429 168.571-59.429t168.571 59.429q14.286-17.714 14.286-53.143v-36.571q-60.571 0-103.429-42.857t-42.857-103.429v-50.857q-18.286-16.571-18.286-40.571 0-22.857 16-38.857t38.857-16 38.857 16 16 38.857q0 24-18.286 40.571v50.857q0 29.714 21.714 51.429t51.429 21.714 51.429-21.714 21.714-51.429v-50.857q-18.286-16.571-18.286-40.571 0-22.857 16-38.857t38.857-16 38.857 16 16 38.857q0 24-18.286 40.571v50.857q0 38.857-19.714 72.857t-53.429 53.429q0 5.714 0.286 24.286t0 27.429-1.429 23.714-4 26.857-7.429 22.857q38.857-8.571 68.571-34.571t46.286-58.857 27.143-75.714 13.714-78.857 3.143-74.857zM621.714 658.286q0-90.857-64.286-155.143t-155.143-64.286-155.143 64.286-64.286 155.143 64.286 155.143 155.143 64.286 155.143-64.286 64.286-155.143z" horiz-adv-x="805" />
216
+ <glyph unicode="&#xe6ce;" d="M731.429 548.571q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM804.571 548.571q0-35.429-20.286-63.429t-52.857-40v-225.714q0-90.857-75.143-155.143t-180.857-64.286-180.857 64.286-75.143 155.143v75.429q-93.714 11.429-156.571 73.143t-62.857 144v292.571q0 14.857 10.857 25.714t25.714 10.857q3.429 0 9.143-1.143 9.714 17.143 26.857 27.429t37.143 10.286q30.286 0 51.714-21.429t21.429-51.714-21.429-51.714-51.714-21.429q-18.857 0-36.571 10.286v-229.714q0-60.571 53.714-103.429t129.143-42.857 129.143 42.857 53.714 103.429v229.714q-17.714-10.286-36.571-10.286-30.286 0-51.714 21.429t-21.429 51.714 21.429 51.714 51.714 21.429q20 0 37.143-10.286t26.857-27.429q5.714 1.143 9.143 1.143 14.857 0 25.714-10.857t10.857-25.714v-292.571q0-82.286-62.857-144t-156.571-73.143v-75.429q0-60.571 53.714-103.429t129.143-42.857 129.143 42.857 53.714 103.429v225.714q-32.571 12-52.857 40t-20.286 63.429q0 45.714 32 77.714t77.714 32 77.714-32 32-77.714z" horiz-adv-x="805" />
217
+ <glyph unicode="&#xe6cf;" d="M365.714 731.428h292.571v73.143h-292.571v-73.143zM164.571 731.428v-731.429h-36.571q-52.571 0-90.286 37.714t-37.714 90.286v475.429q0 52.571 37.714 90.286t90.286 37.714h36.571zM804.571 731.428v-731.429h-585.143v731.429h73.143v91.429q0 22.857 16 38.857t38.857 16h329.143q22.857 0 38.857-16t16-38.857v-91.429h73.143zM1024 603.428v-475.429q0-52.571-37.714-90.286t-90.286-37.714h-36.571v731.429h36.571q52.571 0 90.286-37.714t37.714-90.286z" />
218
+ <glyph unicode="&#xe6d0;" d="M484.571-18.286q0 9.143-9.143 9.143-33.714 0-58 24.286t-24.286 58q0 9.143-9.143 9.143t-9.143-9.143q0-41.714 29.429-71.143t71.143-29.429q9.143 0 9.143 9.143zM950.857 146.286q0-29.714-21.714-51.429t-51.429-21.714h-256q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429h-256q-29.714 0-51.429 21.714t-21.714 51.429q108.571 92 164 227.143t55.429 284.857q0 94.286 54.857 149.714t150.857 66.857q-4.571 10.286-4.571 21.143 0 22.857 16 38.857t38.857 16 38.857-16 16-38.857q0-10.857-4.571-21.143 96-11.429 150.857-66.857t54.857-149.714q0-149.714 55.429-284.857t164-227.143z" horiz-adv-x="951" />
219
+ <glyph unicode="&#xe6d1;" d="M950.857 585.143q0 45.714-32 77.714t-77.714 32h-36.571v-219.429h36.571q45.714 0 77.714 32t32 77.714zM0 146.286h1024q0-60.571-42.857-103.429t-103.429-42.857h-731.429q-60.571 0-103.429 42.857t-42.857 103.429zM1060.571 585.143q0-90.857-64.286-155.143t-155.143-64.286h-36.571v-18.286q0-52.571-37.714-90.286t-90.286-37.714h-402.286q-52.571 0-90.286 37.714t-37.714 90.286v420.571q0 14.857 10.857 25.714t25.714 10.857h658.286q90.857 0 155.143-64.286t64.286-155.143z" horiz-adv-x="1097" />
220
+ <glyph unicode="&#xe6d2;" d="M365.714 914.286v-365.714q0-34.857-20.286-63.429t-52.857-40v-445.143q0-29.714-21.714-51.429t-51.429-21.714h-73.143q-29.714 0-51.429 21.714t-21.714 51.429v445.143q-32.571 11.429-52.857 40t-20.286 63.429v365.714q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857 10.857-25.714v-237.714q0-14.857 10.857-25.714t25.714-10.857 25.714 10.857 10.857 25.714v237.714q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857 10.857-25.714v-237.714q0-14.857 10.857-25.714t25.714-10.857 25.714 10.857 10.857 25.714v237.714q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857 10.857-25.714zM804.571 914.286v-914.286q0-29.714-21.714-51.429t-51.429-21.714h-73.143q-29.714 0-51.429 21.714t-21.714 51.429v292.571h-128q-7.429 0-12.857 5.429t-5.429 12.857v457.143q0 75.429 53.714 129.143t129.143 53.714h146.286q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="805" />
221
+ <glyph unicode="&#xe6d3;" d="M585.143 274.286v-36.571q0-8-5.143-13.143t-13.143-5.143h-402.286q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h402.286q8 0 13.143-5.143t5.143-13.143zM585.143 420.571v-36.571q0-8-5.143-13.143t-13.143-5.143h-402.286q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h402.286q8 0 13.143-5.143t5.143-13.143zM73.143 73.143h585.143v438.857h-237.714q-22.857 0-38.857 16t-16 38.857v237.714h-292.571v-731.429zM438.857 585.143h214.857q-5.714 16.571-12.571 23.429l-178.857 178.857q-6.857 6.857-23.429 12.571v-214.857zM731.429 566.857v-512q0-22.857-16-38.857t-38.857-16h-621.714q-22.857 0-38.857 16t-16 38.857v768q0 22.857 16 38.857t38.857 16h365.714q22.857 0 50.286-11.429t43.429-27.429l178.286-178.286q16-16 27.429-43.429t11.429-50.286z" horiz-adv-x="731" />
222
+ <glyph unicode="&#xe6d4;" d="M219.429 201.143v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM219.429 347.428v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM365.714 347.428v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM219.429 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM658.286 201.143v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM512 347.428v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM365.714 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM219.429 640v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM658.286 347.428v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM512 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM365.714 640v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM219.429 786.286v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM658.286 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM512 640v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM365.714 786.286v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM658.286 640v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM512 786.286v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM658.286 786.286v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM512 0h219.429v877.714h-658.286v-877.714h219.429v128q0 7.429 5.429 12.857t12.857 5.429h182.857q7.429 0 12.857-5.429t5.429-12.857v-128zM804.571 914.286v-950.857q0-14.857-10.857-25.714t-25.714-10.857h-731.429q-14.857 0-25.714 10.857t-10.857 25.714v950.857q0 14.857 10.857 25.714t25.714 10.857h731.429q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="805" />
223
+ <glyph unicode="&#xe6d5;" d="M219.429 201.143v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM219.429 347.428v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM365.714 347.428v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM219.429 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM658.286 201.143v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM512 347.428v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM365.714 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM658.286 347.428v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM512 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM658.286 493.714v-36.571q0-7.429-5.429-12.857t-12.857-5.429h-36.571q-7.429 0-12.857 5.429t-5.429 12.857v36.571q0 7.429 5.429 12.857t12.857 5.429h36.571q7.429 0 12.857-5.429t5.429-12.857zM512 0h219.429v658.286h-146.286v-18.286q0-22.857-16-38.857t-38.857-16h-256q-22.857 0-38.857 16t-16 38.857v18.286h-146.286v-658.286h219.429v128q0 7.429 5.429 12.857t12.857 5.429h182.857q7.429 0 12.857-5.429t5.429-12.857v-128zM512 676.571v182.857q0 7.429-5.429 12.857t-12.857 5.429h-36.571q-7.429 0-12.857-5.429t-5.429-12.857v-54.857h-73.143v54.857q0 7.429-5.429 12.857t-12.857 5.429h-36.571q-7.429 0-12.857-5.429t-5.429-12.857v-182.857q0-7.429 5.429-12.857t12.857-5.429h36.571q7.429 0 12.857 5.429t5.429 12.857v54.857h73.143v-54.857q0-7.429 5.429-12.857t12.857-5.429h36.571q7.429 0 12.857 5.429t5.429 12.857zM804.571 694.857v-731.429q0-14.857-10.857-25.714t-25.714-10.857h-731.429q-14.857 0-25.714 10.857t-10.857 25.714v731.429q0 14.857 10.857 25.714t25.714 10.857h182.857v164.571q0 22.857 16 38.857t38.857 16h256q22.857 0 38.857-16t16-38.857v-164.571h182.857q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="805" />
224
+ <glyph unicode="&#xe6d6;" d="M365.714 146.286q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM146.286 438.857h219.429v146.286h-90.286q-8-1.143-12.571-5.143l-111.429-111.429q-4-6.857-5.143-12.571v-17.143zM877.714 146.286q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM950.857 530.286v109.714q0 8-5.143 13.143t-13.143 5.143h-128v128q0 8-5.143 13.143t-13.143 5.143h-109.714q-8 0-13.143-5.143t-5.143-13.143v-128h-128q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h128v-128q0-8 5.143-13.143t13.143-5.143h109.714q8 0 13.143 5.143t5.143 13.143v128h128q8 0 13.143 5.143t5.143 13.143zM1097.143 841.143v-658.286q0-14.857-10.857-25.714t-25.714-10.857h-109.714q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429h-219.429q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429h-73.143q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714 25.714 10.857v237.714q0 14.857 7.429 33.143t18.286 29.143l113.143 113.143q10.857 10.857 29.143 18.286t33.143 7.429h91.429v182.857q0 14.857 10.857 25.714t25.714 10.857h658.286q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="1097" />
225
+ <glyph unicode="&#xe6d7;" d="M731.429 310.857v109.714q0 8-5.143 13.143t-13.143 5.143h-128v128q0 8-5.143 13.143t-13.143 5.143h-109.714q-8 0-13.143-5.143t-5.143-13.143v-128h-128q-8 0-13.143-5.143t-5.143-13.143v-109.714q0-8 5.143-13.143t13.143-5.143h128v-128q0-8 5.143-13.143t13.143-5.143h109.714q8 0 13.143 5.143t5.143 13.143v128h128q8 0 13.143 5.143t5.143 13.143zM365.714 731.428h292.571v73.143h-292.571v-73.143zM146.286 731.428v-731.429h-18.286q-52.571 0-90.286 37.714t-37.714 90.286v475.429q0 52.571 37.714 90.286t90.286 37.714h18.286zM822.857 731.428v-731.429h-621.714v731.429h91.429v91.429q0 22.857 16 38.857t38.857 16h329.143q22.857 0 38.857-16t16-38.857v-91.429h91.429zM1024 603.428v-475.429q0-52.571-37.714-90.286t-90.286-37.714h-18.286v731.429h18.286q52.571 0 90.286-37.714t37.714-90.286z" />
226
+ <glyph unicode="&#xe6d8;" d="M1097.143 402.286q-0.571-18.286-164.571-54.857l-201.143-18.286-128-36.571h-36.571l-167.429-201.143h39.429q14.857 0 25.714-2.571t10.857-6.571-10.857-6.571-25.714-2.571h-182.857v18.286h36.571v237.714h-91.429l-109.714-128h-54.857l-18.286 18.286v109.714h18.286v18.286h73.143v4.571l-109.714 13.714v73.143l109.714 13.714v4.571h-73.143v18.286h-18.286v109.714l18.286 18.286h54.857l109.714-128h91.429v237.714h-36.571v18.286h182.857q14.857 0 25.714-2.571t10.857-6.571-10.857-6.571-25.714-2.571h-39.429l167.429-201.143h36.571l128-36.571 201.143-18.286q149.143-33.143 164-53.143z" horiz-adv-x="1097" />
227
+ <glyph unicode="&#xe6d9;" d="M365.714 438.857v219.429h-146.286v-146.286q0-30.286 21.429-51.714t51.714-21.429h73.143zM950.857 182.857v-109.714h-658.286v109.714l73.143 109.714h-73.143q-90.857 0-155.143 64.286t-64.286 155.143v182.857l-36.571 36.571 18.286 73.143h274.286l18.286 73.143h548.571l18.286-109.714-36.571-18.286v-457.143z" horiz-adv-x="951" />
228
+ <glyph unicode="&#xe6da;" d="M731.429 182.857v512q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-182.857h-292.571v182.857q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-512q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714v182.857h292.571v-182.857q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
229
+ <glyph unicode="&#xe6db;" d="M731.429 402.286v73.143q0 14.857-10.857 25.714t-25.714 10.857h-182.857v182.857q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-182.857h-182.857q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h182.857v-182.857q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714v182.857h182.857q14.857 0 25.714 10.857t10.857 25.714zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
230
+ <glyph unicode="&#xe6dc;" d="M358.286 164.571q0-7.429-5.714-13.143l-28.571-28.571q-5.714-5.714-13.143-5.714t-13.143 5.714l-266.286 266.286q-5.714 5.714-5.714 13.143t5.714 13.143l266.286 266.286q5.714 5.714 13.143 5.714t13.143-5.714l28.571-28.571q5.714-5.714 5.714-13.143t-5.714-13.143l-224.571-224.571 224.571-224.571q5.714-5.714 5.714-13.143zM577.714 164.571q0-7.429-5.714-13.143l-28.571-28.571q-5.714-5.714-13.143-5.714t-13.143 5.714l-266.286 266.286q-5.714 5.714-5.714 13.143t5.714 13.143l266.286 266.286q5.714 5.714 13.143 5.714t13.143-5.714l28.571-28.571q5.714-5.714 5.714-13.143t-5.714-13.143l-224.571-224.571 224.571-224.571q5.714-5.714 5.714-13.143z" horiz-adv-x="585" />
231
+ <glyph unicode="&#xe6dd;" d="M340 402.286q0-7.429-5.714-13.143l-266.286-266.286q-5.714-5.714-13.143-5.714t-13.143 5.714l-28.571 28.571q-5.714 5.714-5.714 13.143t5.714 13.143l224.571 224.571-224.571 224.571q-5.714 5.714-5.714 13.143t5.714 13.143l28.571 28.571q5.714 5.714 13.143 5.714t13.143-5.714l266.286-266.286q5.714-5.714 5.714-13.143zM559.429 402.286q0-7.429-5.714-13.143l-266.286-266.286q-5.714-5.714-13.143-5.714t-13.143 5.714l-28.571 28.571q-5.714 5.714-5.714 13.143t5.714 13.143l224.571 224.571-224.571 224.571q-5.714 5.714-5.714 13.143t5.714 13.143l28.571 28.571q5.714 5.714 13.143 5.714t13.143-5.714l266.286-266.286q5.714-5.714 5.714-13.143z" horiz-adv-x="585" />
232
+ <glyph unicode="&#xe6de;" d="M614.286 201.143q0-7.429-5.714-13.143l-28.571-28.571q-5.714-5.714-13.143-5.714t-13.143 5.714l-224.571 224.571-224.571-224.571q-5.714-5.714-13.143-5.714t-13.143 5.714l-28.571 28.571q-5.714 5.714-5.714 13.143t5.714 13.143l266.286 266.286q5.714 5.714 13.143 5.714t13.143-5.714l266.286-266.286q5.714-5.714 5.714-13.143zM614.286 420.571q0-7.429-5.714-13.143l-28.571-28.571q-5.714-5.714-13.143-5.714t-13.143 5.714l-224.571 224.571-224.571-224.571q-5.714-5.714-13.143-5.714t-13.143 5.714l-28.571 28.571q-5.714 5.714-5.714 13.143t5.714 13.143l266.286 266.286q5.714 5.714 13.143 5.714t13.143-5.714l266.286-266.286q5.714-5.714 5.714-13.143z" horiz-adv-x="658" />
233
+ <glyph unicode="&#xe6df;" d="M614.286 457.143q0-7.429-5.714-13.143l-266.286-266.286q-5.714-5.714-13.143-5.714t-13.143 5.714l-266.286 266.286q-5.714 5.714-5.714 13.143t5.714 13.143l28.571 28.571q5.714 5.714 13.143 5.714t13.143-5.714l224.571-224.571 224.571 224.571q5.714 5.714 13.143 5.714t13.143-5.714l28.571-28.571q5.714-5.714 5.714-13.143zM614.286 676.571q0-7.429-5.714-13.143l-266.286-266.286q-5.714-5.714-13.143-5.714t-13.143 5.714l-266.286 266.286q-5.714 5.714-5.714 13.143t5.714 13.143l28.571 28.571q5.714 5.714 13.143 5.714t13.143-5.714l224.571-224.571 224.571 224.571q5.714 5.714 13.143 5.714t13.143-5.714l28.571-28.571q5.714-5.714 5.714-13.143z" horiz-adv-x="658" />
234
+ <glyph unicode="&#xe6e0;" d="M1024 384v475.429q0 7.429-5.429 12.857t-12.857 5.429h-914.286q-7.429 0-12.857-5.429t-5.429-12.857v-475.429q0-7.429 5.429-12.857t12.857-5.429h914.286q7.429 0 12.857 5.429t5.429 12.857zM1097.143 859.428v-621.714q0-37.714-26.857-64.571t-64.571-26.857h-310.857q0-21.143 9.143-44.286t18.286-40.571 9.143-24.857q0-14.857-10.857-25.714t-25.714-10.857h-292.571q-14.857 0-25.714 10.857t-10.857 25.714q0 8 9.143 25.143t18.286 40 9.143 44.571h-310.857q-37.714 0-64.571 26.857t-26.857 64.571v621.714q0 37.714 26.857 64.571t64.571 26.857h914.286q37.714 0 64.571-26.857t26.857-64.571z" horiz-adv-x="1097" />
235
+ <glyph unicode="&#xe6e1;" d="M237.714 219.428q-37.714 0-64.571 26.857t-26.857 64.571v402.286q0 37.714 26.857 64.571t64.571 26.857h621.714q37.714 0 64.571-26.857t26.857-64.571v-402.286q0-37.714-26.857-64.571t-64.571-26.857h-621.714zM219.429 713.143v-402.286q0-7.429 5.429-12.857t12.857-5.429h621.714q7.429 0 12.857 5.429t5.429 12.857v402.286q0 7.429-5.429 12.857t-12.857 5.429h-621.714q-7.429 0-12.857-5.429t-5.429-12.857zM1005.714 182.857h91.429v-54.857q0-22.857-26.857-38.857t-64.571-16h-914.286q-37.714 0-64.571 16t-26.857 38.857v54.857h1005.714zM594.286 128q9.143 0 9.143 9.143t-9.143 9.143h-91.429q-9.143 0-9.143-9.143t9.143-9.143h91.429z" horiz-adv-x="1097" />
236
+ <glyph unicode="&#xe6e2;" d="M365.714 146.286q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM585.143 237.714v548.571q0 7.429-5.429 12.857t-12.857 5.429h-475.429q-7.429 0-12.857-5.429t-5.429-12.857v-548.571q0-7.429 5.429-12.857t12.857-5.429h475.429q7.429 0 12.857 5.429t5.429 12.857zM658.286 786.286v-621.714q0-37.714-26.857-64.571t-64.571-26.857h-475.429q-37.714 0-64.571 26.857t-26.857 64.571v621.714q0 37.714 26.857 64.571t64.571 26.857h475.429q37.714 0 64.571-26.857t26.857-64.571z" horiz-adv-x="658" />
237
+ <glyph unicode="&#xe6e3;" d="M265.143 146.286q0 18.857-13.429 32.286t-32.286 13.429-32.286-13.429-13.429-32.286 13.429-32.286 32.286-13.429 32.286 13.429 13.429 32.286zM384 237.714v402.286q0 7.429-5.429 12.857t-12.857 5.429h-292.571q-7.429 0-12.857-5.429t-5.429-12.857v-402.286q0-7.429 5.429-12.857t12.857-5.429h292.571q7.429 0 12.857 5.429t5.429 12.857zM274.286 722.286q0 9.143-9.143 9.143h-91.429q-9.143 0-9.143-9.143t9.143-9.143h91.429q9.143 0 9.143 9.143zM438.857 731.428v-585.143q0-29.714-21.714-51.429t-51.429-21.714h-292.571q-29.714 0-51.429 21.714t-21.714 51.429v585.143q0 29.714 21.714 51.429t51.429 21.714h292.571q29.714 0 51.429-21.714t21.714-51.429z" horiz-adv-x="439" />
238
+ <glyph unicode="&#xe6e4;" d="M438.857 749.714q-84.571 0-156-41.714t-113.143-113.143-41.714-156 41.714-156 113.143-113.143 156-41.714 156 41.714 113.143 113.143 41.714 156-41.714 156-113.143 113.143-156 41.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
239
+ <glyph unicode="&#xe6e5;" d="M438.857 402.286v-219.429q0-45.714-32-77.714t-77.714-32h-219.429q-45.714 0-77.714 32t-32 77.714v402.286q0 59.429 23.143 113.429t62.571 93.429 93.429 62.571 113.429 23.143h36.571q14.857 0 25.714-10.857t10.857-25.714v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-36.571q-60.571 0-103.429-42.857t-42.857-103.429v-18.286q0-22.857 16-38.857t38.857-16h128q45.714 0 77.714-32t32-77.714zM950.857 402.286v-219.429q0-45.714-32-77.714t-77.714-32h-219.429q-45.714 0-77.714 32t-32 77.714v402.286q0 59.429 23.143 113.429t62.571 93.429 93.429 62.571 113.429 23.143h36.571q14.857 0 25.714-10.857t10.857-25.714v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-36.571q-60.571 0-103.429-42.857t-42.857-103.429v-18.286q0-22.857 16-38.857t38.857-16h128q45.714 0 77.714-32t32-77.714z" horiz-adv-x="951" />
240
+ <glyph unicode="&#xe6e6;" d="M438.857 768v-402.286q0-59.429-23.143-113.429t-62.571-93.429-93.429-62.571-113.429-23.143h-36.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h36.571q60.571 0 103.429 42.857t42.857 103.429v18.286q0 22.857-16 38.857t-38.857 16h-128q-45.714 0-77.714 32t-32 77.714v219.429q0 45.714 32 77.714t77.714 32h219.429q45.714 0 77.714-32t32-77.714zM950.857 768v-402.286q0-59.429-23.143-113.429t-62.571-93.429-93.429-62.571-113.429-23.143h-36.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h36.571q60.571 0 103.429 42.857t42.857 103.429v18.286q0 22.857-16 38.857t-38.857 16h-128q-45.714 0-77.714 32t-32 77.714v219.429q0 45.714 32 77.714t77.714 32h219.429q45.714 0 77.714-32t32-77.714z" horiz-adv-x="951" />
241
+ <glyph unicode="&#xe6e7;" d="M283.429 182.857q0-34.286-24.286-58.286t-58-24q-34.286 0-58.286 24t-24 58.286 24 58.286 58.286 24q33.714 0 58-24t24.286-58.286zM530.286 73.143q0-30.286-21.429-51.714t-51.714-21.429-51.714 21.429-21.429 51.714 21.429 51.714 51.714 21.429 51.714-21.429 21.429-51.714zM182.857 438.857q0-37.714-26.857-64.571t-64.571-26.857-64.571 26.857-26.857 64.571 26.857 64.571 64.571 26.857 64.571-26.857 26.857-64.571zM777.143 182.857q0-26.286-18.857-45.143t-45.143-18.857-45.143 18.857-18.857 45.143 18.857 45.143 45.143 18.857 45.143-18.857 18.857-45.143zM301.714 694.857q0-41.714-29.429-71.143t-71.143-29.429-71.143 29.429-29.429 71.143 29.429 71.143 71.143 29.429 71.143-29.429 29.429-71.143zM566.857 804.571q0-45.714-32-77.714t-77.714-32-77.714 32-32 77.714 32 77.714 77.714 32 77.714-32 32-77.714zM877.714 438.857q0-22.857-16-38.857t-38.857-16-38.857 16-16 38.857 16 38.857 38.857 16 38.857-16 16-38.857zM758.857 694.857q0-18.857-13.429-32.286t-32.286-13.429-32.286 13.429-13.429 32.286 13.429 32.286 32.286 13.429 32.286-13.429 13.429-32.286z" horiz-adv-x="896" />
242
+ <glyph unicode="&#xe6e8;" d="M1024 310.857q0-94.857-72.571-257.714-1.714-4-6-13.714t-7.714-17.143-7.429-12.571q-6.857-9.714-16-9.714-8.571 0-13.429 5.714t-4.857 14.286q0 5.143 1.429 15.143t1.429 13.429q2.857 38.857 2.857 70.286 0 57.714-10 103.429t-27.714 79.143-45.714 57.714-60.286 39.714-76 24.286-88 12.286-100.286 3.429h-128v-146.286q0-14.857-10.857-25.714t-25.714-10.857-25.714 10.857l-292.571 292.571q-10.857 10.857-10.857 25.714t10.857 25.714l292.571 292.571q10.857 10.857 25.714 10.857t25.714-10.857 10.857-25.714v-146.286h128q407.429 0 500-230.286 30.286-76.571 30.286-190.286z" />
243
+ <glyph unicode="&#xe6e9;" d="M365.714 256q0-22.857-7.143-46.857t-24.571-43.429-41.429-19.429-41.429 19.429-24.571 43.429-7.143 46.857 7.143 46.857 24.571 43.429 41.429 19.429 41.429-19.429 24.571-43.429 7.143-46.857zM731.429 256q0-22.857-7.143-46.857t-24.571-43.429-41.429-19.429-41.429 19.429-24.571 43.429-7.143 46.857 7.143 46.857 24.571 43.429 41.429 19.429 41.429-19.429 24.571-43.429 7.143-46.857zM822.857 256q0 68.571-39.429 116.571t-106.857 48q-23.429 0-111.429-12-40.571-6.286-89.714-6.286t-89.714 6.286q-86.857 12-111.429 12-67.429 0-106.857-48t-39.429-116.571q0-50.286 18.286-87.714t46.286-58.857 69.714-34.286 80-16.857 85.143-4h96q46.857 0 85.143 4t80 16.857 69.714 34.286 46.286 58.857 18.286 87.714zM950.857 356.571q0-118.286-34.857-189.143-21.714-44-60.286-76t-80.571-49.143-97.143-27.143-98-12.571-95.429-2.571q-44.571 0-81.143 1.714t-84.286 7.143-87.143 17.143-78.286 29.429-69.143 46.286-49.143 65.714q-35.429 70.286-35.429 189.143 0 135.429 77.714 226.286-15.429 46.857-15.429 97.143 0 66.286 29.143 124.571 61.714 0 108.571-22.571t108-70.571q84 20 176.571 20 84.571 0 160-18.286 60 46.857 106.857 69.143t108 22.286q29.143-58.286 29.143-124.571 0-49.714-15.429-96 77.714-91.429 77.714-227.429z" horiz-adv-x="951" />
244
+ <glyph unicode="&#xe6ea;" d="M877.714 201.143v402.286q0 22.857-16 38.857t-38.857 16h-402.286q-22.857 0-38.857 16t-16 38.857v36.571q0 22.857-16 38.857t-38.857 16h-182.857q-22.857 0-38.857-16t-16-38.857v-548.571q0-22.857 16-38.857t38.857-16h694.857q22.857 0 38.857 16t16 38.857zM950.857 603.428v-402.286q0-52.571-37.714-90.286t-90.286-37.714h-694.857q-52.571 0-90.286 37.714t-37.714 90.286v548.571q0 52.571 37.714 90.286t90.286 37.714h182.857q52.571 0 90.286-37.714t37.714-90.286v-18.286h384q52.571 0 90.286-37.714t37.714-90.286z" horiz-adv-x="951" />
245
+ <glyph unicode="&#xe6eb;" d="M1017.714 418.857q0 20-30.286 20h-621.714q-22.857 0-48.857-12.286t-40.857-30l-168-207.429q-10.286-13.714-10.286-22.857 0-20 30.286-20h621.714q22.857 0 49.143 12.571t40.571 30.286l168 207.429q10.286 12.571 10.286 22.286zM365.714 512h438.857v91.429q0 22.857-16 38.857t-38.857 16h-329.143q-22.857 0-38.857 16t-16 38.857v36.571q0 22.857-16 38.857t-38.857 16h-182.857q-22.857 0-38.857-16t-16-38.857v-487.429l146.286 180q25.143 30.286 66.286 50t80 19.714zM1090.857 418.857q0-35.429-26.286-68.571l-168.571-207.429q-24.571-30.286-66.286-50t-80-19.714h-621.714q-52.571 0-90.286 37.714t-37.714 90.286v548.571q0 52.571 37.714 90.286t90.286 37.714h182.857q52.571 0 90.286-37.714t37.714-90.286v-18.286h310.857q52.571 0 90.286-37.714t37.714-90.286v-91.429h109.714q30.857 0 56.571-14t38.286-40.286q8.571-18.286 8.571-38.857z" horiz-adv-x="1097" />
246
+ <glyph unicode="&#xe6ec;" d="M512 420.571v-36.571q0-8-5.143-13.143t-13.143-5.143h-128v-128q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v128h-128q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h128v128q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143v-128h128q8 0 13.143-5.143t5.143-13.143zM585.143 201.143v402.286q0 22.857-16 38.857t-38.857 16h-402.286q-22.857 0-38.857-16t-16-38.857v-402.286q0-22.857 16-38.857t38.857-16h402.286q22.857 0 38.857 16t16 38.857zM658.286 603.428v-402.286q0-52.571-37.429-90.286t-90.571-37.714h-402.286q-53.143 0-90.571 37.714t-37.429 90.286v402.286q0 53.143 37.429 90.571t90.571 37.429h402.286q53.143 0 90.571-37.429t37.429-90.571z" horiz-adv-x="658" />
247
+ <glyph unicode="&#xe6ed;" d="M530.286 731.428q53.143 0 90.571-37.429t37.429-90.571v-402.286q0-52.571-37.429-90.286t-90.571-37.714h-402.286q-53.143 0-90.571 37.714t-37.429 90.286v402.286q0 53.143 37.429 90.571t90.571 37.429h402.286zM585.143 201.143v402.286q0 22.857-16 38.857t-38.857 16h-402.286q-22.857 0-38.857-16t-16-38.857v-402.286q0-22.857 16-38.857t38.857-16h402.286q22.857 0 38.857 16t16 38.857zM493.714 438.857q8 0 13.143-5.143t5.143-13.143v-36.571q0-8-5.143-13.143t-13.143-5.143h-329.143q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h329.143z" horiz-adv-x="658" />
248
+ <glyph unicode="&#xe6ee;" d="M648 336.571q-21.143-69.143-78.857-111.429t-130.286-42.286-130.286 42.286-78.857 111.429q-4.571 14.286 2.286 27.714t21.714 18q14.286 4.571 27.714-2.286t18-21.714q14.286-45.714 52.857-74t86.571-28.286 86.571 28.286 52.857 74q4.571 14.857 18.286 21.714t28 2.286 21.143-18 2.286-27.714zM365.714 585.143q0-30.286-21.429-51.714t-51.714-21.429-51.714 21.429-21.429 51.714 21.429 51.714 51.714 21.429 51.714-21.429 21.429-51.714zM658.286 585.143q0-30.286-21.429-51.714t-51.714-21.429-51.714 21.429-21.429 51.714 21.429 51.714 51.714 21.429 51.714-21.429 21.429-51.714zM804.571 438.857q0 74.286-29.143 142t-78 116.571-116.571 78-142 29.143-142-29.143-116.571-78-78-116.571-29.143-142 29.143-142 78-116.571 116.571-78 142-29.143 142 29.143 116.571 78 78 116.571 29.143 142zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
249
+ <glyph unicode="&#xe6ef;" d="M648 248.571q4.571-14.286-2.286-27.714t-21.143-18-28 2.286-18.286 21.714q-14.286 45.714-52.857 74t-86.571 28.286-86.571-28.286-52.857-74q-4.571-14.857-18-21.714t-27.714-2.286q-14.857 4.571-21.714 18t-2.286 27.714q21.143 69.143 78.857 111.429t130.286 42.286 130.286-42.286 78.857-111.429zM365.714 585.143q0-30.286-21.429-51.714t-51.714-21.429-51.714 21.429-21.429 51.714 21.429 51.714 51.714 21.429 51.714-21.429 21.429-51.714zM658.286 585.143q0-30.286-21.429-51.714t-51.714-21.429-51.714 21.429-21.429 51.714 21.429 51.714 51.714 21.429 51.714-21.429 21.429-51.714zM804.571 438.857q0 74.286-29.143 142t-78 116.571-116.571 78-142 29.143-142-29.143-116.571-78-78-116.571-29.143-142 29.143-142 78-116.571 116.571-78 142-29.143 142 29.143 116.571 78 78 116.571 29.143 142zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
250
+ <glyph unicode="&#xe6f0;" d="M658.286 329.143q0-14.857-10.857-25.714t-25.714-10.857h-365.714q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714 25.714 10.857h365.714q14.857 0 25.714-10.857t10.857-25.714zM365.714 585.143q0-30.286-21.429-51.714t-51.714-21.429-51.714 21.429-21.429 51.714 21.429 51.714 51.714 21.429 51.714-21.429 21.429-51.714zM658.286 585.143q0-30.286-21.429-51.714t-51.714-21.429-51.714 21.429-21.429 51.714 21.429 51.714 51.714 21.429 51.714-21.429 21.429-51.714zM804.571 438.857q0 74.286-29.143 142t-78 116.571-116.571 78-142 29.143-142-29.143-116.571-78-78-116.571-29.143-142 29.143-142 78-116.571 116.571-78 142-29.143 142 29.143 116.571 78 78 116.571 29.143 142zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
251
+ <glyph unicode="&#xe6f1;" d="M475.429 329.143v73.143q0 8-5.143 13.143t-13.143 5.143h-109.714v109.714q0 8-5.143 13.143t-13.143 5.143h-73.143q-8 0-13.143-5.143t-5.143-13.143v-109.714h-109.714q-8 0-13.143-5.143t-5.143-13.143v-73.143q0-8 5.143-13.143t13.143-5.143h109.714v-109.714q0-8 5.143-13.143t13.143-5.143h73.143q8 0 13.143 5.143t5.143 13.143v109.714h109.714q8 0 13.143 5.143t5.143 13.143zM804.571 292.571q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM950.857 438.857q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM1097.143 365.714q0-121.143-85.714-206.857t-206.857-85.714q-109.714 0-193.143 73.143h-125.714q-83.429-73.143-193.143-73.143-121.143 0-206.857 85.714t-85.714 206.857 85.714 206.857 206.857 85.714h512q121.143 0 206.857-85.714t85.714-206.857z" horiz-adv-x="1097" />
252
+ <glyph unicode="&#xe6f2;" d="M219.429 283.428v-54.857q0-9.143-9.143-9.143h-54.857q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM292.571 429.714v-54.857q0-9.143-9.143-9.143h-128q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h128q9.143 0 9.143-9.143zM219.429 576v-54.857q0-9.143-9.143-9.143h-54.857q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM804.571 283.428v-54.857q0-9.143-9.143-9.143h-493.714q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h493.714q9.143 0 9.143-9.143zM438.857 429.714v-54.857q0-9.143-9.143-9.143h-54.857q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM365.714 576v-54.857q0-9.143-9.143-9.143h-54.857q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM585.143 429.714v-54.857q0-9.143-9.143-9.143h-54.857q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM512 576v-54.857q0-9.143-9.143-9.143h-54.857q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM731.429 429.714v-54.857q0-9.143-9.143-9.143h-54.857q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM950.857 283.428v-54.857q0-9.143-9.143-9.143h-54.857q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM658.286 576v-54.857q0-9.143-9.143-9.143h-54.857q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM804.571 576v-54.857q0-9.143-9.143-9.143h-54.857q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM950.857 576v-201.143q0-9.143-9.143-9.143h-128q-9.143 0-9.143 9.143v54.857q0 9.143 9.143 9.143h64v137.143q0 9.143 9.143 9.143h54.857q9.143 0 9.143-9.143zM1024 146.286v512h-950.857v-512h950.857zM1097.143 658.286v-512q0-30.286-21.429-51.714t-51.714-21.429h-950.857q-30.286 0-51.714 21.429t-21.429 51.714v512q0 30.286 21.429 51.714t51.714 21.429h950.857q30.286 0 51.714-21.429t21.429-51.714z" horiz-adv-x="1097" />
253
+ <glyph unicode="&#xe6f3;" d="M950.857 353.714v352q-96.571-52-174.857-52-46.857 0-82.857 18.286-57.143 28-105.143 43.714t-101.714 15.714q-98.857 0-230.286-72.571v-342.286q140 64.571 247.429 64.571 31.429 0 59.143-4.286t56-14.857 44-17.714 47.143-22.571l16-8q25.143-12.571 57.714-12.571 68.571 0 167.429 52.571zM182.857 804.571q0-20-10-36.571t-26.571-26.286v-723.429q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v723.429q-16.571 9.714-26.571 26.286t-10 36.571q0 30.286 21.429 51.714t51.714 21.429 51.714-21.429 21.429-51.714zM1024 768v-436q0-22.286-20-32.571-5.714-2.857-9.714-5.143-124.571-66.286-210.857-66.286-50.286 0-90.286 20l-16 8q-36.571 18.857-56.571 27.429t-52 16.571-65.143 8q-58.286 0-134.571-25.143t-130.571-58.286q-8.571-5.143-18.857-5.143-9.143 0-18.286 4.571-18.286 10.857-18.286 32v424q0 20 17.714 31.429 20 12 44.857 24.286t65.143 29.714 87.143 28.286 88.571 10.857q64 0 119.429-17.714t119.429-49.143q21.714-10.857 50.857-10.857 69.714 0 177.143 64 12.571 6.857 17.714 9.714 17.714 9.143 35.429-1.143 17.714-11.429 17.714-31.429z" />
254
+ <glyph unicode="&#xe6f4;" d="M475.429 379.428v109.714q-103.429-9.143-219.429-66.857v-105.714q117.143 54.857 219.429 62.857zM475.429 618.286v112.571q-98.286-4.571-219.429-72v-108q122.857 63.429 219.429 67.429zM950.857 353.714v105.143q-134.286-66.286-219.429-40.571v128q-11.429 3.429-22.286 8.571-2.857 1.714-18.857 9.714t-19.714 9.714-18 8.571-19.714 8.857-18.571 7.429-20.571 7.143-20 4.857-22.571 4.286-22.571 2.286-25.143 1.143q-13.143 0-28-1.714v-126.857h10.857q58.286 0 110-16.571t112.857-46.857q10.857-5.143 22.286-8.571v-107.429q24-9.714 52-9.714 68.571 0 167.429 52.571zM950.857 597.714v108q-96.571-52-174.857-52-25.714 0-44.571 4.571v-112q84.571-24 219.429 51.429zM182.857 804.571q0-20-10-36.571t-26.571-26.286v-723.429q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v723.429q-16.571 9.714-26.571 26.286t-10 36.571q0 30.286 21.429 51.714t51.714 21.429 51.714-21.429 21.429-51.714zM1024 768v-436q0-22.286-20-32.571-5.714-2.857-9.714-5.143-124.571-66.286-210.857-66.286-50.286 0-90.286 20l-16 8q-36.571 18.857-56.571 27.429t-52 16.571-65.143 8q-58.286 0-134.571-25.143t-130.571-58.286q-8.571-5.143-18.857-5.143-9.143 0-18.286 4.571-18.286 10.857-18.286 32v424q0 20 17.714 31.429 20 12 44.857 24.286t65.143 29.714 87.143 28.286 88.571 10.857q64 0 119.429-17.714t119.429-49.143q21.714-10.857 50.857-10.857 69.714 0 177.143 64 12.571 6.857 17.714 9.714 17.714 9.143 35.429-1.143 17.714-11.429 17.714-31.429z" />
255
+ <glyph unicode="&#xe6f5;" d="M334.286 389.143l-266.286-266.286q-5.714-5.714-13.143-5.714t-13.143 5.714l-28.571 28.571q-5.714 5.714-5.714 13.143t5.714 13.143l224.571 224.571-224.571 224.571q-5.714 5.714-5.714 13.143t5.714 13.143l28.571 28.571q5.714 5.714 13.143 5.714t13.143-5.714l266.286-266.286q5.714-5.714 5.714-13.143t-5.714-13.143zM950.857 128v-36.571q0-8-5.143-13.143t-13.143-5.143h-548.571q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h548.571q8 0 13.143-5.143t5.143-13.143z" horiz-adv-x="951" />
256
+ <glyph unicode="&#xe6f6;" d="M352.571 151.428l-28.571-28.571q-5.714-5.714-13.143-5.714t-13.143 5.714l-266.286 266.286q-5.714 5.714-5.714 13.143t5.714 13.143l266.286 266.286q5.714 5.714 13.143 5.714t13.143-5.714l28.571-28.571q5.714-5.714 5.714-13.143t-5.714-13.143l-224.571-224.571 224.571-224.571q5.714-5.714 5.714-13.143t-5.714-13.143zM690.286 761.143l-213.143-737.714q-2.286-7.429-8.857-11.143t-13.429-1.429l-35.429 9.714q-7.429 2.286-11.143 8.857t-1.429 14l213.143 737.714q2.286 7.429 8.857 11.143t13.429 1.429l35.429-9.714q7.429-2.286 11.143-8.857t1.429-14zM1065.714 389.143l-266.286-266.286q-5.714-5.714-13.143-5.714t-13.143 5.714l-28.571 28.571q-5.714 5.714-5.714 13.143t5.714 13.143l224.571 224.571-224.571 224.571q-5.714 5.714-5.714 13.143t5.714 13.143l28.571 28.571q5.714 5.714 13.143 5.714t13.143-5.714l266.286-266.286q5.714-5.714 5.714-13.143t-5.714-13.143z" horiz-adv-x="1097" />
257
+ <glyph unicode="&#xe6f7;" d="M365.714 332.571v-40q0-24-22.286-33.714-7.429-2.857-14.286-2.857-15.429 0-25.714 10.857l-292.571 292.571q-10.857 10.857-10.857 25.714t10.857 25.714l292.571 292.571q16.571 17.714 40 8 22.286-9.714 22.286-33.714v-39.429l-226.857-227.429q-10.857-10.857-10.857-25.714t10.857-25.714zM1024 310.857q0-33.143-9.714-76.286t-22-78.857-27.429-71.429-23.143-51.714l-11.429-22.857q-4.571-9.714-16-9.714-3.429 0-5.143 0.571-14.286 4.571-13.143 19.429 24.571 228.571-60.571 322.857-36.571 40.571-97.429 63.143t-152.857 30v-143.429q0-24-22.286-33.714-7.429-2.857-14.286-2.857-15.429 0-25.714 10.857l-292.571 292.571q-10.857 10.857-10.857 25.714t10.857 25.714l292.571 292.571q16.571 17.714 40 8 22.286-9.714 22.286-33.714v-149.714q234.857-16 342.286-126.286 96.571-98.857 96.571-290.857z" />
258
+ <glyph unicode="&#xe6f8;" d="M677.714 404l146.857 142.857-241.143 35.429-17.143 34.286-90.857 184v-550.286l33.714-17.714 181.714-96-34.286 202.857-6.857 37.714zM936 553.714l-207.429-202.286 49.143-285.714q2.857-18.857-3.429-29.429t-19.429-10.571q-9.714 0-22.857 6.857l-256.571 134.857-256.571-134.857q-13.143-6.857-22.857-6.857-13.143 0-19.429 10.571t-3.429 29.429l49.143 285.714-208 202.286q-18.286 18.286-13.143 34t30.857 19.714l286.857 41.714 128.571 260q11.429 23.429 28 23.429 16 0 28-23.429l128.571-260 286.857-41.714q25.714-4 30.857-19.714t-13.714-34z" horiz-adv-x="951" />
259
+ <glyph unicode="&#xe6f9;" d="M800.571 751.428l-365.714-731.429q-9.714-20-32.571-20-2.857 0-8.571 1.143-12.571 2.857-20.286 12.857t-7.714 22.571v329.143h-329.143q-12.571 0-22.571 7.714t-12.857 20.286 2.286 24 16.571 17.143l731.429 365.714q7.429 4 16.571 4 15.429 0 25.714-10.857 8.571-8 10.571-19.714t-3.714-22.571z" horiz-adv-x="805" />
260
+ <glyph unicode="&#xe6fa;" d="M318.286 219.428h340v340zM292.571 245.143l340 340h-340v-340zM950.857 201.143v-109.714q0-8-5.143-13.143t-13.143-5.143h-128v-128q0-8-5.143-13.143t-13.143-5.143h-109.714q-8 0-13.143 5.143t-5.143 13.143v128h-493.714q-8 0-13.143 5.143t-5.143 13.143v493.714h-128q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h128v128q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-128h486.286l140.571 141.143q5.714 5.143 13.143 5.143t13.143-5.143q5.143-5.714 5.143-13.143t-5.143-13.143l-141.143-140.571v-486.286h128q8 0 13.143-5.143t5.143-13.143z" horiz-adv-x="951" />
261
+ <glyph unicode="&#xe6fb;" d="M164.571 109.714q0 22.857-16 38.857t-38.857 16-38.857-16-16-38.857 16-38.857 38.857-16 38.857 16 16 38.857zM164.571 768q0 22.857-16 38.857t-38.857 16-38.857-16-16-38.857 16-38.857 38.857-16 38.857 16 16 38.857zM530.286 694.857q0 22.857-16 38.857t-38.857 16-38.857-16-16-38.857 16-38.857 38.857-16 38.857 16 16 38.857zM585.143 694.857q0-29.714-14.857-55.143t-40-39.714q-1.143-164-129.143-236.571-38.857-21.714-116-46.286-73.143-22.857-96.857-40.571t-23.714-57.143v-14.857q25.143-14.286 40-39.714t14.857-55.143q0-45.714-32-77.714t-77.714-32-77.714 32-32 77.714q0 29.714 14.857 55.143t40 39.714v468.571q-25.143 14.286-40 39.714t-14.857 55.143q0 45.714 32 77.714t77.714 32 77.714-32 32-77.714q0-29.714-14.857-55.143t-40-39.714v-284q30.857 14.857 88 32.571 31.429 9.714 50 16.857t40.286 17.714 33.714 22.571 23.143 29.143 16 39.714 4.857 52.286q-25.143 14.286-40 39.714t-14.857 55.143q0 45.714 32 77.714t77.714 32 77.714-32 32-77.714z" horiz-adv-x="585" />
262
+ <glyph unicode="&#xe6fc;" d="M250.857 224.571l-146.286-146.286q-5.714-5.143-13.143-5.143-6.857 0-13.143 5.143-5.143 5.714-5.143 13.143t5.143 13.143l146.286 146.286q5.714 5.143 13.143 5.143t13.143-5.143q5.143-5.714 5.143-13.143t-5.143-13.143zM347.429 201.143v-182.857q0-8-5.143-13.143t-13.143-5.143-13.143 5.143-5.143 13.143v182.857q0 8 5.143 13.143t13.143 5.143 13.143-5.143 5.143-13.143zM219.429 329.143q0-8-5.143-13.143t-13.143-5.143h-182.857q-8 0-13.143 5.143t-5.143 13.143 5.143 13.143 13.143 5.143h182.857q8 0 13.143-5.143t5.143-13.143zM941.714 256q0-68.571-48.571-116l-84-83.429q-47.429-47.429-116-47.429-69.143 0-116.571 48.571l-190.857 191.429q-12 12-24 32l136.571 10.286 156-156.571q15.429-15.429 38.857-15.714t38.857 15.143l84 83.429q16 16 16 38.286 0 22.857-16 38.857l-156.571 157.143 10.286 136.571q20-12 32-24l192-192q48-49.143 48-116.571zM589.143 669.714l-136.571-10.286-156 156.571q-16 16-38.857 16-22.286 0-38.857-15.429l-84-83.429q-16-16-16-38.286 0-22.857 16-38.857l156.571-156.571-10.286-137.143q-20 12-32 24l-192 192q-48 49.143-48 116.571 0 68.571 48.571 116l84 83.429q47.429 47.429 116 47.429 69.143 0 116.571-48.571l190.857-191.429q12-12 24-32zM950.857 621.714q0-8-5.143-13.143t-13.143-5.143h-182.857q-8 0-13.143 5.143t-5.143 13.143 5.143 13.143 13.143 5.143h182.857q8 0 13.143-5.143t5.143-13.143zM640 932.571v-182.857q0-8-5.143-13.143t-13.143-5.143-13.143 5.143-5.143 13.143v182.857q0 8 5.143 13.143t13.143 5.143 13.143-5.143 5.143-13.143zM872.571 846.286l-146.286-146.286q-6.286-5.143-13.143-5.143t-13.143 5.143q-5.143 5.714-5.143 13.143t5.143 13.143l146.286 146.286q5.714 5.143 13.143 5.143t13.143-5.143q5.143-5.714 5.143-13.143t-5.143-13.143z" horiz-adv-x="951" />
263
+ <glyph unicode="&#xe6fd;" d="M402.286 233.143v-137.143q0-9.143-6.857-16t-16-6.857h-137.143q-9.143 0-16 6.857t-6.857 16v137.143q0 9.143 6.857 16t16 6.857h137.143q9.143 0 16-6.857t6.857-16zM582.857 576q0-30.857-8.857-57.714t-20-43.714-31.429-34-32.857-24.857-34.857-20.286q-23.429-13.143-39.143-37.143t-15.714-38.286q0-9.714-6.857-18.571t-16-8.857h-137.143q-8.571 0-14.571 10.571t-6 21.429v25.714q0 47.429 37.143 89.429t81.714 62q33.714 15.429 48 32t14.286 43.429q0 24-26.571 42.286t-61.429 18.286q-37.143 0-61.714-16.571-20-14.286-61.143-65.714-7.429-9.143-17.714-9.143-6.857 0-14.286 4.571l-93.714 71.429q-7.429 5.714-8.857 14.286t3.143 16q91.429 152 265.143 152 45.714 0 92-17.714t83.429-47.429 60.571-72.857 23.429-90.571z" horiz-adv-x="585" />
264
+ <glyph unicode="&#xe6fe;" d="M365.714 182.857v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-292.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h36.571v219.429h-36.571q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h219.429q14.857 0 25.714-10.857t10.857-25.714v-329.143h36.571q14.857 0 25.714-10.857t10.857-25.714zM292.571 841.143v-109.714q0-14.857-10.857-25.714t-25.714-10.857h-146.286q-14.857 0-25.714 10.857t-10.857 25.714v109.714q0 14.857 10.857 25.714t25.714 10.857h146.286q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="366" />
265
+ <glyph unicode="&#xe6ff;" d="M292.571 237.714v-128q0-14.857-10.857-25.714t-25.714-10.857h-146.286q-14.857 0-25.714 10.857t-10.857 25.714v128q0 14.857 10.857 25.714t25.714 10.857h146.286q14.857 0 25.714-10.857t10.857-25.714zM309.714 841.143l-16-438.857q-0.571-14.857-11.714-25.714t-26-10.857h-146.286q-14.857 0-26 10.857t-11.714 25.714l-16 438.857q-0.571 14.857 10 25.714t25.429 10.857h182.857q14.857 0 25.429-10.857t10-25.714z" horiz-adv-x="366" />
266
+ <glyph unicode="&#xe700;" d="M512.571 168.571v-95.429h-141.714l-90.857 144-13.714 24q-4.571 5.143-6.286 12h-1.714l-5.143-12q-5.714-11.429-14.286-25.143l-88.571-142.857h-147.429v95.429h73.143l112.571 166.286-105.714 155.429h-78.286v96h157.714l79.429-130.286q1.143-2.286 13.143-24 4.571-5.143 6.286-12h1.714q1.714 5.143 6.286 12l14.286 24 80 130.286h146.857v-96h-71.429l-105.143-152.571 116.571-169.143h62.286zM876.571 556.571v-117.714h-293.714l-1.714 15.429q-2.286 16-2.286 26.286 0 36.571 14.857 66.857t37.143 49.429 48 37.143 48 31.143 37.143 30.857 14.857 36.571q0 21.714-16.857 35.714t-40.286 14q-29.143 0-55.429-22.286-8-6.286-20.571-21.714l-60 52.571q14.857 21.143 36 37.714 47.429 37.143 107.429 37.143 62.857 0 101.714-34t38.857-90.571q0-32-14-58.857t-35.429-43.714-46.571-33.429-46.857-28.857-37.429-29.429-17.429-36h132.571v45.714h72z" horiz-adv-x="878" />
267
+ <glyph unicode="&#xe701;" d="M512.571 168.571v-95.429h-141.714l-90.857 144-13.714 24q-4.571 5.143-6.286 12h-1.714l-5.143-12q-5.714-11.429-14.286-25.143l-88.571-142.857h-147.429v95.429h73.143l112.571 166.286-105.714 155.429h-78.286v96h157.714l79.429-130.286q1.143-2.286 13.143-24 4.571-5.143 6.286-12h1.714q1.714 5.143 6.286 12l14.286 24 80 130.286h146.857v-96h-71.429l-105.143-152.571 116.571-169.143h62.286zM877.714 44.571v-117.714h-293.714l-2.286 15.429q-1.714 25.714-1.714 26.286 0 36.571 14.857 66.857t37.143 49.429 48 37.143 48 31.143 37.143 30.857 14.857 36.571q0 21.714-16.857 35.714t-40.286 14q-29.143 0-55.429-22.286-8-6.286-20.571-21.714l-60 52.571q14.857 21.143 36 37.714 45.714 37.143 107.429 37.143 62.857 0 101.714-34t38.857-90.571q0-37.714-19.714-67.714t-48-49.143-56.857-35.714-49.714-36-23.429-41.714h132.571v45.714h72z" horiz-adv-x="878" />
268
+ <glyph unicode="&#xe702;" d="M512 146.286l192 219.429h-438.857l-192-219.429h438.857zM1090.857 761.714q8.571-19.429 5.429-40.857t-17.429-37.429l-512-585.143q-21.714-25.143-54.857-25.143h-438.857q-21.714 0-39.714 11.714t-27.143 31.143q-8.571 19.429-5.429 40.857t17.429 37.429l512 585.143q21.714 25.143 54.857 25.143h438.857q21.714 0 39.714-11.714t27.143-31.143z" horiz-adv-x="1097" />
269
+ <glyph unicode="&#xe703;" d="M950.857 323.428q0-46.286-25.429-77.143t-70.571-30.857q-23.429 0-44.286 10t-33.714 21.714-32.286 21.714-40.571 10q-62.857 0-62.857-70.857 0-22.286 9.143-65.714t8.571-65.714v-2.857q-12.571 0-18.857-0.571-19.429-1.714-55.714-6.571t-66-7.714-56-2.857q-34.857 0-58.857 15.143t-24 47.714q0 21.143 10 40.571t21.714 32.286 21.714 33.714 10 44.286q0 45.143-30.857 70.571t-77.143 25.429q-48 0-81.714-26t-33.714-72.857q0-24.571 8.571-47.429t19.143-36.857 19.143-30.286 8.571-28.857q0-25.714-26.286-50.857-21.143-20-66.857-20-54.286 0-140 13.714-5.143 1.143-15.714 2.286t-15.714 2.286l-7.429 1.143q-0.571 0-1.714 0.571-1.143 0-1.143 0.571v585.143q1.143-0.571 10-2t19.429-2.857 12.286-2q85.714-13.714 140-13.714 45.714 0 66.857 20 26.286 25.143 26.286 50.857 0 12.571-8.571 28.857t-19.143 30.286-19.143 36.857-8.571 47.429q0 46.857 33.714 72.857t82.286 26q45.714 0 76.571-25.429t30.857-70.571q0-23.429-10-44.286t-21.714-33.714-21.714-32.286-10-40.571q0-32.571 24-47.714t58.857-15.143q36.571 0 102.857 8.571t93.143 9.714v-1.143q-0.571-1.143-2-10t-2.857-19.429-2-12.286q-13.714-85.714-13.714-140 0-45.714 20-66.857 25.143-26.286 50.857-26.286 12.571 0 28.857 8.571t30.286 19.143 36.857 19.143 47.429 8.571q46.857 0 72.857-33.714t26-81.714z" horiz-adv-x="951" />
270
+ <glyph unicode="&#xe704;" d="M658.286 548.571v-73.143q0-126.286-84.286-219.714t-208.286-107.143v-75.429h146.286q14.857 0 25.714-10.857t10.857-25.714-10.857-25.714-25.714-10.857h-365.714q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714 25.714 10.857h146.286v75.429q-124 13.714-208.286 107.143t-84.286 219.714v73.143q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857 10.857-25.714v-73.143q0-105.714 75.143-180.857t180.857-75.143 180.857 75.143 75.143 180.857v73.143q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857 10.857-25.714zM512 768v-292.571q0-75.429-53.714-129.143t-129.143-53.714-129.143 53.714-53.714 129.143v292.571q0 75.429 53.714 129.143t129.143 53.714 129.143-53.714 53.714-129.143z" horiz-adv-x="658" />
271
+ <glyph unicode="&#xe705;" d="M154.857 410.857l-57.714-57.714q-24 58.857-24 122.286v73.143q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857 10.857-25.714v-73.143q0-30.286 8.571-64.571zM791.429 754.857l-206.286-206.286v-73.143q0-75.429-53.714-129.143t-129.143-53.714q-31.429 0-62.286 10.857l-54.857-54.857q55.429-29.143 117.143-29.143 105.714 0 180.857 75.143t75.143 180.857v73.143q0 14.857 10.857 25.714t25.714 10.857 25.714-10.857 10.857-25.714v-73.143q0-126.286-84.286-219.714t-208.286-107.143v-75.429h146.286q14.857 0 25.714-10.857t10.857-25.714-10.857-25.714-25.714-10.857h-365.714q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714 25.714 10.857h146.286v75.429q-71.429 7.429-134.286 46.286l-145.143-145.143q-5.714-5.714-13.143-5.714t-13.143 5.714l-46.857 46.857q-5.714 5.714-5.714 13.143t5.714 13.143l705.143 705.143q5.714 5.714 13.143 5.714t13.143-5.714l46.857-46.857q5.714-5.714 5.714-13.143t-5.714-13.143zM574.286 830.286l-354.857-354.857v292.571q0 75.429 53.714 129.143t129.143 53.714q58.286 0 105.429-33.714t66.571-86.857z" horiz-adv-x="805" />
272
+ <glyph unicode="&#xe706;" d="M621.714 402.286v365.714h-256v-649.714q68 36 121.714 78.286 134.286 105.143 134.286 205.714zM731.429 841.143v-438.857q0-49.143-19.143-97.429t-47.429-85.714-67.429-72.857-72.286-58.857-69.143-44.286-51.143-28.286-24.286-11.429q-6.857-3.429-14.857-3.429t-14.857 3.429q-9.143 4-24.286 11.429t-51.143 28.286-69.143 44.286-72.286 58.857-67.429 72.857-47.429 85.714-19.143 97.429v438.857q0 14.857 10.857 25.714t25.714 10.857h658.286q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="731" />
273
+ <glyph unicode="&#xe707;" d="M73.143 0h804.571v585.143h-804.571v-585.143zM292.571 694.857v164.571q0 8-5.143 13.143t-13.143 5.143h-36.571q-8 0-13.143-5.143t-5.143-13.143v-164.571q0-8 5.143-13.143t13.143-5.143h36.571q8 0 13.143 5.143t5.143 13.143zM731.429 694.857v164.571q0 8-5.143 13.143t-13.143 5.143h-36.571q-8 0-13.143-5.143t-5.143-13.143v-164.571q0-8 5.143-13.143t13.143-5.143h36.571q8 0 13.143 5.143t5.143 13.143zM950.857 731.428v-731.429q0-29.714-21.714-51.429t-51.429-21.714h-804.571q-29.714 0-51.429 21.714t-21.714 51.429v731.429q0 29.714 21.714 51.429t51.429 21.714h73.143v54.857q0 37.714 26.857 64.571t64.571 26.857h36.571q37.714 0 64.571-26.857t26.857-64.571v-54.857h219.429v54.857q0 37.714 26.857 64.571t64.571 26.857h36.571q37.714 0 64.571-26.857t26.857-64.571v-54.857h73.143q29.714 0 51.429-21.714t21.714-51.429z" horiz-adv-x="951" />
274
+ <glyph unicode="&#xe708;" d="M292.571 841.143q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM804.571 859.428v-182.857q0-9.143-6.857-14.286-4.571-4-11.429-4-2.286 0-4 0.571l-256 54.857q-6.286 1.143-10.286 6.286t-4 11.429h-146.286v-58.286q63.429-13.143 104.857-63.429t41.429-116v-457.143q0-14.857-10.857-25.714t-25.714-10.857h-292.571q-14.857 0-25.714 10.857t-10.857 25.714v457.143q0 60.571 35.714 108.857t92.286 65.429v63.429h-18.286q-33.714 0-65.714-13.429t-52.286-30.286-37.714-38-23.143-30.571-8-14q-9.714-20-32.571-20-9.143 0-16.571 4-13.143 6.857-18 21.143t2 28q2.857 5.714 8.286 14.857t21.429 30.571 34.571 40 48.571 38.286 62 30q-14.286 24-14.286 49.143 0 37.714 26.857 64.571t64.571 26.857 64.571-26.857 26.857-64.571q0-18.857-8-36.571h172.571q0 6.286 4 11.429t10.286 6.286l256 54.857q1.714 0.571 4 0.571 6.857 0 11.429-4 6.857-5.143 6.857-14.286z" horiz-adv-x="805" />
275
+ <glyph unicode="&#xe709;" d="M822.857 694.857q0 22.857-16 38.857t-38.857 16-38.857-16-16-38.857 16-38.857 38.857-16 38.857 16 16 38.857zM950.857 859.428q0-142.286-43.143-246t-144.857-206q-46.286-45.714-111.429-100.571l-11.429-216.571q-1.143-9.143-9.143-14.857l-219.429-128q-4-2.286-9.143-2.286-6.857 0-13.143 5.143l-36.571 36.571q-7.429 8-4.571 18.286l48.571 157.714-160.571 160.571-157.714-48.571q-1.714-0.571-5.143-0.571-8 0-13.143 5.143l-36.571 36.571q-9.714 10.857-2.857 22.286l128 219.429q5.714 8 14.857 9.143l216.571 11.429q54.857 65.143 100.571 111.429 107.429 106.857 204.571 147.429t246.286 40.571q8 0 13.714-5.429t5.714-12.857z" horiz-adv-x="951" />
276
+ <glyph unicode="&#xe70a;" d="M976 576.571l-107.429-503.429h-173.714l103.429 485.143q2.286 12 0.571 24.571-2.286 11.429-9.143 20-5.714 8-16 13.714-10.286 5.143-22.857 5.143h-112.571l-117.143-548.571h-173.143l116.571 548.571h-173.714l-117.143-548.571h-173.714l155.429 731.429h650.857q89.714 0 140-67.429 49.143-66.286 29.714-160.571z" />
277
+ <glyph unicode="&#xe70b;" d="M519.429 153.714l58.286 58.286q10.857 10.857 10.857 25.714t-10.857 25.714l-175.429 175.429 175.429 175.429q10.857 10.857 10.857 25.714t-10.857 25.714l-58.286 58.286q-10.857 10.857-25.714 10.857t-25.714-10.857l-259.429-259.429q-10.857-10.857-10.857-25.714t10.857-25.714l259.429-259.429q10.857-10.857 25.714-10.857t25.714 10.857zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
278
+ <glyph unicode="&#xe70c;" d="M409.714 153.714l259.429 259.429q10.857 10.857 10.857 25.714t-10.857 25.714l-259.429 259.429q-10.857 10.857-25.714 10.857t-25.714-10.857l-58.286-58.286q-10.857-10.857-10.857-25.714t10.857-25.714l175.429-175.429-175.429-175.429q-10.857-10.857-10.857-25.714t10.857-25.714l58.286-58.286q10.857-10.857 25.714-10.857t25.714 10.857zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
279
+ <glyph unicode="&#xe70d;" d="M665.714 300l58.286 58.286q10.857 10.857 10.857 25.714t-10.857 25.714l-259.429 259.429q-10.857 10.857-25.714 10.857t-25.714-10.857l-259.429-259.429q-10.857-10.857-10.857-25.714t10.857-25.714l58.286-58.286q10.857-10.857 25.714-10.857t25.714 10.857l175.429 175.429 175.429-175.429q10.857-10.857 25.714-10.857t25.714 10.857zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
280
+ <glyph unicode="&#xe70e;" d="M464.571 208.571l259.429 259.429q10.857 10.857 10.857 25.714t-10.857 25.714l-58.286 58.286q-10.857 10.857-25.714 10.857t-25.714-10.857l-175.429-175.429-175.429 175.429q-10.857 10.857-25.714 10.857t-25.714-10.857l-58.286-58.286q-10.857-10.857-10.857-25.714t10.857-25.714l259.429-259.429q10.857-10.857 25.714-10.857t25.714 10.857zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
281
+ <glyph unicode="&#xe70f;" d="M645.714 609.714l9.143 100h-505.143l26.857-305.143h349.714l-12.571-130.286-112.571-30.286-112 30.286-7.429 80h-100l12.571-158.857 206.857-57.143h2.286v0.571l205.143 56.571 28.571 310.857h-368l-8.571 103.429h385.143zM0 877.714h804.571l-73.143-821.714-330.286-92.571-328 92.571z" horiz-adv-x="805" />
282
+ <glyph unicode="&#xe710;" d="M157.143 877.714h860l-152-761.714-459.429-152.571-398.857 152.571 40.571 203.429h169.714l-16.571-84 241.143-92 277.714 92 38.857 193.714h-690.286l33.143 169.714h690.857l21.714 109.143h-690.286z" />
283
+ <glyph unicode="&#xe711;" d="M548.571 804.571q0 14.857-10.857 25.714t-25.714 10.857-25.714-10.857-10.857-25.714 10.857-25.714 25.714-10.857 25.714 10.857 10.857 25.714zM1024 274.286v-201.143q0-12.571-11.429-17.143-4.571-1.143-6.857-1.143-7.429 0-13.143 5.143l-53.143 53.143q-68-81.714-182-129.429t-245.429-47.714-245.429 47.714-182 129.429l-53.143-53.143q-5.143-5.143-13.143-5.143-2.286 0-6.857 1.143-11.429 4.571-11.429 17.143v201.143q0 8 5.143 13.143t13.143 5.143h201.143q12.571 0 17.143-11.429 4.571-10.857-4-20l-57.143-57.143q38.286-52 108.286-87.714t155.143-47.143v369.714h-109.714q-14.857 0-25.714 10.857t-10.857 25.714v73.143q0 14.857 10.857 25.714t25.714 10.857h109.714v93.143q-33.143 19.429-53.143 52.857t-20 73.429q0 60.571 42.857 103.429t103.429 42.857 103.429-42.857 42.857-103.429q0-40-20-73.429t-53.143-52.857v-93.143h109.714q14.857 0 25.714-10.857t10.857-25.714v-73.143q0-14.857-10.857-25.714t-25.714-10.857h-109.714v-369.714q85.143 11.429 155.143 47.143t108.286 87.714l-57.143 57.143q-8.571 9.143-4 20 4.571 11.429 17.143 11.429h201.143q8 0 13.143-5.143t5.143-13.143z" />
284
+ <glyph unicode="&#xe712;" d="M603.429 512q22.857 0 38.857-16t16-38.857v-329.143q0-22.857-16-38.857t-38.857-16h-548.571q-22.857 0-38.857 16t-16 38.857v329.143q0 22.857 16 38.857t38.857 16h18.286v182.857q0 105.714 75.143 180.857t180.857 75.143 180.857-75.143 75.143-180.857q0-14.857-10.857-25.714t-25.714-10.857h-36.571q-14.857 0-25.714 10.857t-10.857 25.714q0 60.571-42.857 103.429t-103.429 42.857-103.429-42.857-42.857-103.429v-182.857h420.571z" horiz-adv-x="658" />
285
+ <glyph unicode="&#xe713;" d="M585.143 438.857q0-60.571-42.857-103.429t-103.429-42.857-103.429 42.857-42.857 103.429 42.857 103.429 103.429 42.857 103.429-42.857 42.857-103.429zM658.286 438.857q0 90.857-64.286 155.143t-155.143 64.286-155.143-64.286-64.286-155.143 64.286-155.143 155.143-64.286 155.143 64.286 64.286 155.143zM731.429 438.857q0-121.143-85.714-206.857t-206.857-85.714-206.857 85.714-85.714 206.857 85.714 206.857 206.857 85.714 206.857-85.714 85.714-206.857zM804.571 438.857q0 74.286-29.143 142t-78 116.571-116.571 78-142 29.143-142-29.143-116.571-78-78-116.571-29.143-142 29.143-142 78-116.571 116.571-78 142-29.143 142 29.143 116.571 78 78 116.571 29.143 142zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
286
+ <glyph unicode="&#xe714;" d="M219.429 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-109.714q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h109.714q22.857 0 38.857-16t16-38.857zM512 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-109.714q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h109.714q22.857 0 38.857-16t16-38.857zM804.571 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-109.714q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h109.714q22.857 0 38.857-16t16-38.857z" horiz-adv-x="805" />
287
+ <glyph unicode="&#xe715;" d="M219.429 237.714v-109.714q0-22.857-16-38.857t-38.857-16h-109.714q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h109.714q22.857 0 38.857-16t16-38.857zM219.429 530.286v-109.714q0-22.857-16-38.857t-38.857-16h-109.714q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h109.714q22.857 0 38.857-16t16-38.857zM219.429 822.857v-109.714q0-22.857-16-38.857t-38.857-16h-109.714q-22.857 0-38.857 16t-16 38.857v109.714q0 22.857 16 38.857t38.857 16h109.714q22.857 0 38.857-16t16-38.857z" horiz-adv-x="219" />
288
+ <glyph unicode="&#xe716;" d="M292.571 219.428q0 30.286-21.429 51.714t-51.714 21.429-51.714-21.429-21.429-51.714 21.429-51.714 51.714-21.429 51.714 21.429 21.429 51.714zM493.143 165.714q-7.429 132.571-101.143 226.286t-226.286 101.143q-8 0.571-13.714-5.143t-5.714-13.143v-73.143q0-7.429 4.857-12.571t12.286-5.714q88-6.286 150.857-69.143t69.143-150.857q0.571-7.429 5.714-12.286t12.571-4.857h73.143q7.429 0 13.143 5.714t5.143 13.714zM712.571 165.143q-2.857 88-32 170t-79.714 148.571-117.143 117.143-148.571 79.714-170 32q-8 0.571-13.143-5.143-5.714-5.714-5.714-13.143v-73.143q0-7.429 5.143-12.571t12.571-5.714q116.571-4 216-63.714t159.143-159.143 63.714-216q0.571-7.429 5.714-12.571t12.571-5.143h73.143q7.429 0 13.143 5.714 6.286 5.143 5.143 13.143zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
289
+ <glyph unicode="&#xe717;" d="M438.857 877.714q119.429 0 220.286-58.857t159.714-159.714 58.857-220.286-58.857-220.286-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857zM658.286 407.428q18.286 10.286 18.286 31.429t-18.286 31.429l-310.857 182.857q-17.714 10.857-36.571 0.571-18.286-10.857-18.286-32v-365.714q0-21.143 18.286-32 9.143-4.571 18.286-4.571 9.714 0 18.286 5.143z" horiz-adv-x="878" />
290
+ <glyph unicode="&#xe718;" d="M585.143 692.571l180.571-180.571-326.857-326.857-180.571 180.571zM464.571 133.143l353.143 353.143q10.857 10.857 10.857 25.714t-10.857 25.714l-206.857 206.857q-10.286 10.286-25.714 10.286t-25.714-10.286l-353.143-353.143q-10.857-10.857-10.857-25.714t10.857-25.714l206.857-206.857q10.286-10.286 25.714-10.286t25.714 10.286zM972.571 497.143l-518.286-518.857q-21.143-21.143-51.714-21.143t-51.714 21.143l-72 72q32 32 32 77.714t-32 77.714-77.714 32-77.714-32l-71.429 72q-21.143 21.143-21.143 51.714t21.143 51.714l518.286 517.714q21.143 21.143 51.714 21.143t51.714-21.143l71.429-71.429q-32-32-32-77.714t32-77.714 77.714-32 77.714 32l72-71.429q21.143-21.143 21.143-51.714t-21.143-51.714z" />
291
+ <glyph unicode="&#xe719;" d="M731.429 402.286v73.143q0 14.857-10.857 25.714t-25.714 10.857h-512q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h512q14.857 0 25.714 10.857t10.857 25.714zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
292
+ <glyph unicode="&#xe71a;" d="M658.286 493.714v-36.571q0-8-5.143-13.143t-13.143-5.143h-475.429q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h475.429q8 0 13.143-5.143t5.143-13.143zM731.429 237.714v475.429q0 37.714-26.857 64.571t-64.571 26.857h-475.429q-37.714 0-64.571-26.857t-26.857-64.571v-475.429q0-37.714 26.857-64.571t64.571-26.857h475.429q37.714 0 64.571 26.857t26.857 64.571zM804.571 713.143v-475.429q0-68-48.286-116.286t-116.286-48.286h-475.429q-68 0-116.286 48.286t-48.286 116.286v475.429q0 68 48.286 116.286t116.286 48.286h475.429q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="805" />
293
+ <glyph unicode="&#xe71b;" d="M581.714 606.286q-10.286-21.143-33.143-21.143h-109.714v-493.714q0-8-5.143-13.143t-13.143-5.143h-402.286q-12 0-16.571 10.286-4.571 11.429 2.286 20l91.429 109.714q5.143 6.286 14.286 6.286h182.857v365.714h-109.714q-22.857 0-33.143 21.143-9.714 21.143 5.143 38.857l182.857 219.429q10.286 12.571 28 12.571t28-12.571l182.857-219.429q15.429-18.286 5.143-38.857z" horiz-adv-x="585" />
294
+ <glyph unicode="&#xe71c;" d="M18.286 804.571h402.286q7.429 0 12.857-5.429t5.429-13.429v-493.143h109.714q22.857 0 33.143-21.143t-5.143-39.429l-182.857-219.429q-10.286-12.571-28-12.571t-28 12.571l-182.857 219.429q-14.857 17.714-5.143 39.429 10.286 21.143 33.143 21.143h109.714v365.714h-182.857q-8 0-14.286 6.286l-91.429 109.714q-7.429 8-2.286 19.429 5.143 10.857 16.571 10.857z" horiz-adv-x="585" />
295
+ <glyph unicode="&#xe71d;" d="M391.429 208.571l350.857 350.857q10.857 10.857 10.857 25.714t-10.857 25.714l-58.286 58.286q-10.857 10.857-25.714 10.857t-25.714-10.857l-266.857-266.857-120.571 120.571q-10.857 10.857-25.714 10.857t-25.714-10.857l-58.286-58.286q-10.857-10.857-10.857-25.714t10.857-25.714l204.571-204.571q10.857-10.857 25.714-10.857t25.714 10.857zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
296
+ <glyph unicode="&#xe71e;" d="M230.857 317.714l86.857-86.857-29.714-29.714h-32v54.857h-54.857v32zM467.429 540.571q8-7.429-1.714-17.143l-166.286-166.286q-9.714-9.714-17.143-1.714-8 7.429 1.714 17.143l166.286 166.286q9.714 9.714 17.143 1.714zM310.857 146.286l310.857 310.857-164.571 164.571-310.857-310.857v-164.571h164.571zM658.286 493.714l52.571 52.571q16 16 16 38.857t-16 38.857l-86.857 86.857q-16 16-38.857 16t-38.857-16l-52.571-52.571zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
297
+ <glyph unicode="&#xe71f;" d="M731.429 420.571v274.286q0 14.857-10.857 25.714t-25.714 10.857h-274.286q-24 0-33.714-22.286-9.714-23.429 8-40l82.286-82.286-305.143-305.143q-10.857-10.857-10.857-25.714t10.857-25.714l58.286-58.286q10.857-10.857 25.714-10.857t25.714 10.857l305.143 305.143 82.286-82.286q10.286-10.857 25.714-10.857 6.857 0 14.286 2.857 22.286 9.714 22.286 33.714zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
298
+ <glyph unicode="&#xe720;" d="M574.286 321.714l201.143 201.143q10.857 10.857 10.857 25.714t-10.857 25.714l-201.143 201.143q-17.143 17.714-39.429 8-22.857-9.714-22.857-33.714v-91.429q-68 0-123.429-11.143t-92.857-29.143-65.143-45.143-43.714-54.571-25.429-62.286-12.286-63.714-2.857-63.143q0-103.429 95.429-230.857 5.714-6.857 14.286-6.857 4 0 7.429 1.714 12.571 5.143 10.857 18.857-25.143 202.286 35.429 270.286 26.286 29.714 74.286 43.143t128 13.429v-91.429q0-24 22.857-33.714 6.857-2.857 13.714-2.857 14.857 0 25.714 10.857zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
299
+ <glyph unicode="&#xe721;" d="M365.714 329.143l146.286 73.143-146.286 73.143v-146.286zM585.143 666.857v-309.714l-292.571-146.286v309.714zM749.714 438.857q0 84.571-41.714 156t-113.143 113.143-156 41.714-156-41.714-113.143-113.143-41.714-156 41.714-156 113.143-113.143 156-41.714 156 41.714 113.143 113.143 41.714 156zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
300
+ <glyph unicode="&#xe722;" d="M654.286 565.143q10.286-20-2.857-37.714l-182.857-256q-10.857-15.429-29.714-15.429t-29.714 15.429l-182.857 256q-13.143 17.714-2.857 37.714 9.714 20 32.571 20h365.714q22.857 0 32.571-20zM731.429 164.571v548.571q0 7.429-5.429 12.857t-12.857 5.429h-548.571q-7.429 0-12.857-5.429t-5.429-12.857v-548.571q0-7.429 5.429-12.857t12.857-5.429h548.571q7.429 0 12.857 5.429t5.429 12.857zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
301
+ <glyph unicode="&#xe723;" d="M654.286 312.571q-9.714-20-32.571-20h-365.714q-22.857 0-32.571 20-10.286 20 2.857 37.714l182.857 256q10.857 15.429 29.714 15.429t29.714-15.429l182.857-256q13.143-17.714 2.857-37.714zM731.429 164.571v548.571q0 7.429-5.429 12.857t-12.857 5.429h-548.571q-7.429 0-12.857-5.429t-5.429-12.857v-548.571q0-7.429 5.429-12.857t12.857-5.429h548.571q7.429 0 12.857 5.429t5.429 12.857zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
302
+ <glyph unicode="&#xe724;" d="M621.714 438.857q0-18.857-15.429-29.714l-256-182.857q-17.714-13.143-37.714-2.857-20 9.714-20 32.571v365.714q0 22.857 20 32.571 20 10.286 37.714-2.857l256-182.857q15.429-10.857 15.429-29.714zM731.429 164.571v548.571q0 8-5.143 13.143t-13.143 5.143h-548.571q-8 0-13.143-5.143t-5.143-13.143v-548.571q0-8 5.143-13.143t13.143-5.143h548.571q8 0 13.143 5.143t5.143 13.143zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
303
+ <glyph unicode="&#xe725;" d="M557.714 204l20-90.857q1.714-6.857-1.714-12.857t-9.714-8.286l-2.857-0.571q-2.286-1.143-6-2t-9.143-2.571-12.286-3.143-14.571-2.857-17.143-2.857-19.143-2.571-20.857-1.714-22-0.571q-133.714 0-233.714 74.571t-136 200.857h-54.286q-7.429 0-12.857 5.429t-5.429 12.857v64.571q0 7.429 5.429 12.857t12.857 5.429h37.714q-1.143 32.571 0.571 60h-38.286q-8 0-13.143 5.143t-5.143 13.143v65.143q0 8 5.143 13.143t13.143 5.143h56q38.286 120 139.143 193.143t228.857 73.143q58.286 0 110.857-13.143 6.286-1.714 11.429-8.571 3.429-6.286 1.714-13.714l-24.571-90.857q-1.714-7.429-8-11.143t-13.714-1.429l-2.286 0.571q-2.286 0.571-6.571 1.429l-10 2t-12.857 2-14.857 1.714-16.571 1.429-16.857 0.571q-72 0-129.143-36.571t-85.714-100.571h267.429q9.143 0 14.286-6.857 5.714-6.857 4-14.857l-13.714-65.143q-2.857-14.857-18.286-14.857h-278.857q-1.714-21.143 0-60h262.286q8.571 0 14.286-6.857 5.143-6.857 3.429-15.429l-13.714-64q-1.143-6.286-6.286-10.571t-11.429-4.286h-221.143q27.429-66.857 85.429-106t130.571-39.143q10.286 0 20.571 0.857t19.143 2 16.857 2.571 14 2.857 10.571 2.571l6.857 1.714 2.857 1.143q7.429 2.857 14.857-1.143 6.857-4 8.571-12z" horiz-adv-x="585" />
304
+ <glyph unicode="&#xe726;" d="M582.857 301.143v-209.714q0-8-5.143-13.143t-13.143-5.143h-546.286q-8 0-13.143 5.143t-5.143 13.143v85.714q0 7.429 5.429 12.857t12.857 5.429h55.429v218.857h-54.286q-8 0-13.143 5.429t-5.143 12.857v74.857q0 8 5.143 13.143t13.143 5.143h54.286v127.429q0 97.714 70.571 161.143t179.714 63.429q105.714 0 191.429-71.429 5.143-4.571 5.714-11.714t-4-12.857l-58.857-72.571q-5.143-6.286-12.571-6.857-7.429-1.143-13.143 4-2.857 2.857-14.857 10.857t-39.429 18.286-53.143 10.286q-48.571 0-78.286-26.857t-29.714-70.286v-122.857h174.286q7.429 0 12.857-5.143t5.429-13.143v-74.857q0-7.429-5.429-12.857t-12.857-5.429h-174.286v-216.571h236.571v103.429q0 7.429 5.143 12.857t13.143 5.429h92.571q8 0 13.143-5.429t5.143-12.857z" horiz-adv-x="585" />
305
+ <glyph unicode="&#xe727;" d="M558.857 273.714q0-87.429-56.857-150.571t-147.714-78v-100q0-8-5.143-13.143t-13.143-5.143h-77.143q-7.429 0-12.857 5.429t-5.429 12.857v100q-37.714 5.143-72.857 17.714t-58 25.429-42.286 27.429-26.571 21.429-10 10.286q-9.714 12-1.143 23.429l58.857 77.143q4 5.714 13.143 6.857 8.571 1.143 13.714-5.143l1.143-1.143q64.571-56.571 138.857-71.429 21.143-4.571 42.286-4.571 46.286 0 81.429 24.571t35.143 69.714q0 16-8.571 30.286t-19.143 24-33.429 21.429-37.714 18.286-45.714 18.571q-22.286 9.143-35.143 14.286t-35.143 15.143-35.714 17.714-32.286 20.286-30.571 24.286-24.857 28-20.286 33.143-12 38-4.857 44.571q0 78.857 56 138.286t145.714 76.571v102.857q0 7.429 5.429 12.857t12.857 5.429h77.143q8 0 13.143-5.143t5.143-13.143v-100.571q32.571-3.429 63.143-13.143t49.714-19.143 36.286-21.429 22.286-16.571 8.571-8q9.714-10.286 2.857-21.714l-46.286-83.429q-4.571-8.571-13.143-9.143-8-1.714-15.429 4-1.714 1.714-8.286 6.857t-22.286 15.143-33.429 18.286-42.571 14.857-48.857 6.571q-54.286 0-88.571-24.571t-34.286-63.429q0-14.857 4.857-27.429t16.857-23.714 22.571-18.857 32-17.714 34.571-15.429 40-15.714q30.286-11.429 46.286-18t43.429-20 43.143-24.286 35.429-28.571 30.286-36.286 18-43.714 7.429-53.714z" horiz-adv-x="585" />
306
+ <glyph unicode="&#xe728;" d="M513.143 682.286v-58.286q0-8-5.143-13.143t-13.143-5.143h-96q-13.143-82.286-73.714-133.714t-157.714-62.857q95.429-101.714 262.286-306.286 8-9.143 2.286-19.429-4.571-10.286-16.571-10.286h-111.429q-9.143 0-14.286 6.857-174.857 209.714-284.571 326.286-5.143 5.143-5.143 12.571v72.571q0 7.429 5.429 12.857t12.857 5.429h64q75.429 0 121.429 24.571t58.571 71.429h-244q-8 0-13.143 5.143t-5.143 13.143v58.286q0 8 5.143 13.143t13.143 5.143h236q-32.571 64.571-153.143 64.571h-82.857q-7.429 0-12.857 5.429t-5.429 12.857v76q0 8 5.143 13.143t13.143 5.143h475.429q8 0 13.143-5.143t5.143-13.143v-58.286q0-8-5.143-13.143t-13.143-5.143h-133.143q26.857-34.857 36.571-82.286h97.714q8 0 13.143-5.143t5.143-13.143z" horiz-adv-x="513" />
307
+ <glyph unicode="&#xe729;" d="M344.571 73.143h-98.286q-7.429 0-12.857 5.143t-5.429 13.143v188.571h-164.571q-7.429 0-12.857 5.143t-5.429 13.143v58.857q0 7.429 5.429 12.857t12.857 5.429h164.571v48.571h-164.571q-7.429 0-12.857 5.143t-5.429 13.143v59.429q0 7.429 5.429 12.857t12.857 5.429h122.286l-183.429 330.286q-4.571 9.143 0 18.286 5.714 9.143 16 9.143h110.857q10.857 0 16.571-10.286l122.857-242.857q10.857-21.714 32-71.429 5.714 13.714 17.429 38.857t15.714 34.857l109.143 240q4.571 10.857 16.571 10.857h109.143q9.714 0 15.429-9.143 5.143-8 0.571-17.714l-178.857-330.857h122.857q7.429 0 12.857-5.429t5.429-12.857v-59.429q0-8-5.429-13.143t-12.857-5.143h-165.714v-48.571h165.714q7.429 0 12.857-5.429t5.429-12.857v-58.857q0-8-5.429-13.143t-12.857-5.143h-165.714v-188.571q0-7.429-5.429-12.857t-12.857-5.429z" horiz-adv-x="586" />
308
+ <glyph unicode="&#xe72a;" d="M950.857 274.286v-18.286q0-75.429-53.714-129.143t-129.143-53.714h-73.143q-75.429 0-129.143 53.714t-53.714 129.143v274.286h-128q-1.143-58.286-8.286-108.857t-17.429-89.143-27.714-72.286-32.571-56.857-38.571-44.286-39.714-33.429-42.286-25.143-39.429-18.286-37.429-14.571q-2.286-1.143-18.286-7.429-4.571-1.143-6.857-1.143-12.571 0-17.143 11.429l-40.571 101.714q-2.857 7.429 0 14.286t9.714 9.714q4 1.714 11.429 4.286t10.286 3.714q17.714 6.857 26.571 10.571t25.429 11.429 26 14.857 24 18.571 23.143 24.286 19.714 30.571 17.429 39.143 12.857 47.714 9.714 58.857 3.714 70.286h-146.286q-8 0-13.143 5.143t-5.143 13.143v91.429q0 8 5.143 13.143t13.143 5.143h694.857q8 0 13.143-5.143t5.143-13.143v-91.429q0-8-5.143-13.143t-13.143-5.143h-128v-292.571q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714v36.571q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143zM731.429 859.428v-91.429q0-8-5.143-13.143t-13.143-5.143h-548.571q-8 0-13.143 5.143t-5.143 13.143v91.429q0 8 5.143 13.143t13.143 5.143h548.571q8 0 13.143-5.143t5.143-13.143z" horiz-adv-x="951" />
309
+ <glyph unicode="&#xe72b;" d="M293.714 268l46.286 170.857h-90.857l42.857-171.429q0.571-0.571 0.571-1.714t0.571-1.714q0 0.571 0.286 2t0.286 2zM360 512l20 73.143h-166.857l18.286-73.143h128.571zM469.714 512h79.429l-20 73.143h-40zM726.286 267.428l44.571 171.429h-92.571l46.286-170.857q0-0.571 0.286-2t0.857-2q0 0.571 0.286 1.714t0.286 1.714zM789.714 512l18.857 73.143h-169.714l19.429-73.143h131.429zM1024 493.714v-36.571q0-8-5.143-13.143t-13.143-5.143h-121.714l-93.714-352q-4-13.714-17.714-13.714h-90.857q-13.714 0-17.714 13.714l-94.857 352h-119.429l-95.429-352q-4-13.714-17.714-13.714h-90.857q-6.286 0-11.143 4t-6 9.714l-91.429 352h-118.857q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h100l-18.857 73.143h-81.143q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h62.286l-50.857 196.571q-2.857 8.571 2.857 16 5.714 6.857 14.857 6.857h78.286q14.857 0 17.714-13.714l51.429-205.714h205.143l55.429 205.714q4 13.714 17.714 13.714h72q13.714 0 17.714-13.714l56-205.714h208.571l53.143 205.714q2.857 13.714 17.714 13.714h78.286q9.143 0 14.857-6.857 5.714-7.429 2.857-16l-52-196.571h63.429q8 0 13.143-5.143t5.143-13.143v-36.571q0-8-5.143-13.143t-13.143-5.143h-82.857l-19.429-73.143h102.286q8 0 13.143-5.143t5.143-13.143z" />
310
+ <glyph unicode="&#xe72c;" d="M666.857 585.143q10.286-104-74.857-147.429 66.857-16 100-58.857t25.714-122.286q-4-40.571-18.571-71.429t-36.857-50.857-55.429-33.429-69.429-19.714-83.143-8.571v-145.714h-88v143.429q-45.714 0-69.714 0.571v-144h-88v145.714q-10.286 0-30.857 0.286t-31.429 0.286h-114.286l17.714 104.571h63.429q28.571 0 33.143 29.143v229.714h9.143q-3.429 0.571-9.143 0.571v164q-7.429 38.857-50.857 38.857h-63.429v93.714l121.143-0.571q36.571 0 55.429 0.571v144h88v-141.143q46.857 1.143 69.714 1.143v140h88v-144q45.143-4 80-12.857t64.571-25.714 47.143-44.571 20.857-65.429zM544 273.714q0 20.571-8.571 36.571t-21.143 26.286-32.857 17.429-37.429 10.571-42.286 5.143-39.429 1.714-36.857-0.571-27.143-0.571v-193.143q4.571 0 21.143-0.286t27.429-0.286 30.286 0.857 33.429 2.286 32.571 4.857 31.714 8 27.143 12 22.571 17.143 14 22.857 5.429 29.143zM503.429 545.714q0 18.857-7.143 33.429t-17.429 24-27.429 16-31.429 9.429-35.143 4.571-33.143 1.429-30.857-0.571-22.571-0.286v-175.429q2.857 0 19.714-0.286t26.571 0 28.571 1.143 31.429 3.143 29.429 6.286 27.714 10.571 21.143 15.429 15.429 22 5.143 29.143z" horiz-adv-x="731" />
311
+ <glyph unicode="&#xe72d;" d="M731.429 512v-457.143q0-22.857-16-38.857t-38.857-16h-621.714q-22.857 0-38.857 16t-16 38.857v768q0 22.857 16 38.857t38.857 16h310.857v-310.857q0-22.857 16-38.857t38.857-16h310.857zM729.714 585.143h-290.857v290.857q46.857-8.571 75.429-37.143l178.286-178.286q28.571-28.571 37.143-75.429z" horiz-adv-x="731" />
312
+ <glyph unicode="&#xe72e;" d="M585.143 164.571v36.571q0 8-5.143 13.143t-13.143 5.143h-402.286q-8 0-13.143-5.143t-5.143-13.143v-36.571q0-8 5.143-13.143t13.143-5.143h402.286q8 0 13.143 5.143t5.143 13.143zM585.143 310.857v36.571q0 8-5.143 13.143t-13.143 5.143h-402.286q-8 0-13.143-5.143t-5.143-13.143v-36.571q0-8 5.143-13.143t13.143-5.143h402.286q8 0 13.143 5.143t5.143 13.143zM731.429 512v-457.143q0-22.857-16-38.857t-38.857-16h-621.714q-22.857 0-38.857 16t-16 38.857v768q0 22.857 16 38.857t38.857 16h310.857v-310.857q0-22.857 16-38.857t38.857-16h310.857zM729.714 585.143h-290.857v290.857q46.857-8.571 75.429-37.143l178.286-178.286q28.571-28.571 37.143-75.429z" horiz-adv-x="731" />
313
+ <glyph unicode="&#xe72f;" d="M680.571 717.714h101.143l-41.143 124.571-6.857 26.857q-1.143 9.143-1.143 11.429h-2.286l-1.714-11.429q0-0.571-2-10.286t-4.286-16.571zM420.571 128q0-6.857-5.714-13.714l-182.286-182.286q-5.714-5.143-13.143-5.143-6.857 0-13.143 5.143l-182.857 182.857q-8.571 9.143-4 20 4.571 11.429 17.143 11.429h109.714v786.286q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-786.286h109.714q8 0 13.143-5.143t5.143-13.143zM898.286 60v-133.143h-333.714v51.429l210.857 302.286q6.857 10.286 12 15.429l6.286 5.143v1.714q-1.143 0-3.714-0.286t-4.286-0.286q-6.857-1.714-17.143-1.714h-132.571v-65.714h-68.571v130.857h324v-50.857l-210.857-302.857q-3.429-4.571-12-14.857l-6.286-6.286v-1.143l8 1.143q5.143 1.143 17.143 1.143h141.714v68h69.143zM949.143 572.571v-60.571h-164.571v60.571h42.857l-26.857 82.286h-138.857l-26.857-82.286h42.857v-60.571h-164v60.571h40l131.429 378.286h92.571l131.429-378.286h40z" horiz-adv-x="951" />
314
+ <glyph unicode="&#xe730;" d="M680.571 132.571h101.143l-41.143 124.571-6.857 26.857q-1.143 9.143-1.143 11.429h-2.286l-1.714-11.429q0-0.571-2-10.286t-4.286-16.571zM420.571 128q0-6.857-5.714-13.714l-182.286-182.286q-5.714-5.143-13.143-5.143-6.857 0-13.143 5.143l-182.857 182.857q-8.571 9.143-4 20 4.571 11.429 17.143 11.429h109.714v786.286q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-786.286h109.714q8 0 13.143-5.143t5.143-13.143zM949.143-12.572v-60.571h-164.571v60.571h42.857l-26.857 82.286h-138.857l-26.857-82.286h42.857v-60.571h-164v60.571h40l131.429 378.286h92.571l131.429-378.286h40zM898.286 645.143v-133.143h-333.714v51.429l210.857 302.286q6.857 10.286 12 15.429l6.286 5.143v1.714q-1.143 0-3.714-0.286t-4.286-0.286q-6.857-1.714-17.143-1.714h-132.571v-65.714h-68.571v130.857h324v-50.857l-210.857-302.857q-3.429-4.571-12-14.857l-6.286-5.714v-1.714l8 1.714q5.143 0.571 17.143 0.571h141.714v68h69.143z" horiz-adv-x="951" />
315
+ <glyph unicode="&#xe731;" d="M420.571 128q0-6.857-5.714-13.714l-182.286-182.286q-5.714-5.143-13.143-5.143-6.857 0-13.143 5.143l-182.857 182.857q-8.571 9.143-4 20 4.571 11.429 17.143 11.429h109.714v786.286q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-786.286h109.714q8 0 13.143-5.143t5.143-13.143zM1024 54.857v-109.714q0-8-5.143-13.143t-13.143-5.143h-475.429q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h475.429q8 0 13.143-5.143t5.143-13.143zM914.286 347.428v-109.714q0-8-5.143-13.143t-13.143-5.143h-365.714q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h365.714q8 0 13.143-5.143t5.143-13.143zM804.571 640v-109.714q0-8-5.143-13.143t-13.143-5.143h-256q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h256q8 0 13.143-5.143t5.143-13.143zM694.857 932.571v-109.714q0-8-5.143-13.143t-13.143-5.143h-146.286q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h146.286q8 0 13.143-5.143t5.143-13.143z" />
316
+ <glyph unicode="&#xe732;" d="M694.857 54.857v-109.714q0-8-5.143-13.143t-13.143-5.143h-146.286q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h146.286q8 0 13.143-5.143t5.143-13.143zM420.571 128q0-6.857-5.714-13.714l-182.286-182.286q-5.714-5.143-13.143-5.143-6.857 0-13.143 5.143l-182.857 182.857q-8.571 9.143-4 20 4.571 11.429 17.143 11.429h109.714v786.286q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-786.286h109.714q8 0 13.143-5.143t5.143-13.143zM804.571 347.428v-109.714q0-8-5.143-13.143t-13.143-5.143h-256q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h256q8 0 13.143-5.143t5.143-13.143zM914.286 640v-109.714q0-8-5.143-13.143t-13.143-5.143h-365.714q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h365.714q8 0 13.143-5.143t5.143-13.143zM1024 932.571v-109.714q0-8-5.143-13.143t-13.143-5.143h-475.429q-8 0-13.143 5.143t-5.143 13.143v109.714q0 8 5.143 13.143t13.143 5.143h475.429q8 0 13.143-5.143t5.143-13.143z" />
317
+ <glyph unicode="&#xe733;" d="M769.143 200.571q0 36-25.143 66.286t-58.857 30.286q-29.714 0-47.429-21.143t-17.714-53.714 20.857-54.286 59.714-21.714q28.571 0 48.571 15.429t20 38.857zM420.571 128q0-6.857-5.714-13.714l-182.286-182.286q-5.714-5.143-13.143-5.143-6.857 0-13.143 5.143l-182.857 182.857q-8.571 9.143-4 20 4.571 11.429 17.143 11.429h109.714v786.286q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-786.286h109.714q8 0 13.143-5.143t5.143-13.143zM849.143 167.428q0-35.429-7.429-69.429t-23.429-65.143-38.857-54.571-56.286-37.429-72.857-14q-35.429 0-61.714 9.143-13.714 4.571-24 8.571l22.286 64.571q8.571-4 17.714-6.286 21.143-7.429 42.857-7.429 48 0 76.857 33.429t38 83.143h-1.143q-12-13.143-35.143-21.143t-48.286-8q-60.571 0-98.857 40.857t-38.286 98.571q0 60 41.143 101.714t103.429 41.714q70.286 0 117.143-54t46.857-144.286zM832 577.143v-65.143h-268v65.143h95.429v246.857q0 4 0.286 10.857t0.286 9.714v9.143h-1.143l-4-6.857q-4.571-7.429-14.857-17.714l-35.429-33.143-46.857 49.143 109.714 105.714h70.286v-373.714h94.286z" horiz-adv-x="878" />
318
+ <glyph unicode="&#xe734;" d="M769.143 785.714q0 36-25.143 66.286t-58.857 30.286q-29.714 0-47.429-21.143t-17.714-53.714 20.857-54.286 59.714-21.714q28.571 0 48.571 15.429t20 38.857zM420.571 128q0-6.857-5.714-13.714l-182.286-182.286q-5.714-5.143-13.143-5.143-6.857 0-13.143 5.143l-182.857 182.857q-8.571 9.143-4 20 4.571 11.429 17.143 11.429h109.714v786.286q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-786.286h109.714q8 0 13.143-5.143t5.143-13.143zM832-8v-65.143h-268v65.143h95.429v246.857q0 4 0.286 10.857t0.286 9.714v9.143h-1.143l-4-6.857q-4.571-7.429-14.857-17.714l-35.429-33.143-46.857 49.143 109.714 105.714h70.286v-373.714h94.286zM849.143 752.571q0-35.429-7.429-69.429t-23.429-65.143-38.857-54.571-56.286-37.429-72.857-14q-35.429 0-61.714 9.143-13.714 4.571-24 8.571l22.286 64.571q8.571-4 17.714-6.286 21.143-7.429 42.857-7.429 48 0 76.857 33.429t38 83.143h-1.143q-12-13.143-35.143-21.143t-48.286-8q-60.571 0-98.857 40.857t-38.286 98.571q0 60 41.143 101.714t103.429 41.714q70.286 0 117.143-54t46.857-144.286z" horiz-adv-x="878" />
319
+ <glyph unicode="&#xe735;" d="M146.286 182.857q0 14.857-10.857 25.714t-25.714 10.857q-15.429 0-26-10.857t-10.571-25.714q0-15.429 10.571-26t26-10.571q14.857 0 25.714 10.571t10.857 26zM237.714 475.428v-365.714q0-14.857-10.857-25.714t-25.714-10.857h-164.571q-14.857 0-25.714 10.857t-10.857 25.714v365.714q0 14.857 10.857 25.714t25.714 10.857h164.571q14.857 0 25.714-10.857t10.857-25.714zM914.286 475.428q0-49.143-31.429-85.143 8.571-25.143 8.571-43.429 1.714-43.429-24.571-78.286 9.714-32 0-66.857-8.571-32.571-30.857-53.714 5.143-64-28-103.429-36.571-43.429-112.571-44.571h-73.714q-37.714 0-82.286 8.857t-69.429 16.571-68.857 22.571q-70.286 24.571-90.286 25.143-14.857 0.571-25.714 11.143t-10.857 25.429v366.286q0 14.286 10.286 24.857t24.571 11.714q13.714 1.143 43.429 33.714t57.714 69.143q38.857 49.714 57.714 68.571 10.286 10.286 17.714 27.429t10 27.714 7.714 34.571q4 22.286 7.143 34.857t11.143 29.714 19.429 28.571q10.857 10.857 25.714 10.857 26.286 0 47.143-6t34.286-14.857 22.857-23.143 13.714-25.714 6.857-28.571 2.857-25.714 0.286-22.286q0-21.714-5.429-43.429t-10.857-34.286-15.714-32q-1.714-3.429-5.714-10.286t-6.286-12.571-4.571-13.714h158.286q44.571 0 77.143-32.571t32.571-77.143z" horiz-adv-x="951" />
320
+ <glyph unicode="&#xe736;" d="M146.286 621.714q0-14.857-10.857-25.714t-25.714-10.857q-15.429 0-26 10.857t-10.571 25.714q0 15.429 10.571 26t26 10.571q14.857 0 25.714-10.571t10.857-26zM237.714 329.143v365.714q0 14.857-10.857 25.714t-25.714 10.857h-164.571q-14.857 0-25.714-10.857t-10.857-25.714v-365.714q0-14.857 10.857-25.714t25.714-10.857h164.571q14.857 0 25.714 10.857t10.857 25.714zM882.857 414.286q31.429-34.857 31.429-85.143-0.571-44.571-32.857-77.143t-76.857-32.571h-158.286q2.286-8 4.571-13.714t6.286-12.571 5.714-10.286q10.286-21.143 15.429-32.571t10.857-33.429 5.714-43.714q0-13.714-0.286-22.286t-2.857-25.714-6.857-28.571-13.714-25.714-22.857-23.143-34.286-14.857-47.143-6q-14.857 0-25.714 10.857-11.429 11.429-19.429 28.571t-11.143 29.714-7.143 34.857q-5.143 24-7.714 34.571t-10 27.714-17.714 27.429q-18.857 18.857-57.714 68.571-28 36.571-57.714 69.143t-43.429 33.714q-14.286 1.143-24.571 11.714t-10.286 24.857v366.286q0 14.857 10.857 25.429t25.714 11.143q20 0.571 90.286 25.143 44 14.857 68.857 22.571t69.429 16.571 82.286 8.857h73.714q76-1.143 112.571-44.571 33.143-39.429 28-103.429 22.286-21.143 30.857-53.714 9.714-34.857 0-66.857 26.286-34.857 24.571-78.286 0-18.286-8.571-43.429z" horiz-adv-x="951" />
321
+ <glyph unicode="&#xe737;" d="M525.143 206.286v89.714q0 28.571-16.571 28.571-9.714 0-18.857-9.143v-128q9.143-9.143 18.857-9.143 16.571 0 16.571 28zM630.286 276h37.714v19.429q0 29.143-18.857 29.143t-18.857-29.143v-19.429zM304 428v-40h-45.714v-241.714h-42.286v241.714h-44.571v40h132.571zM418.857 356v-209.714h-38.286v22.857q-22.286-25.714-43.429-25.714-18.857 0-24 16-3.429 9.143-3.429 30.857v165.714h37.714v-154.286q0-13.714 0.571-14.857 0.571-8.571 8.571-8.571 11.429 0 24 17.714v160h38.286zM562.857 292.571v-83.429q0-29.714-4-41.714-6.857-24-30.286-24-20 0-38.857 23.429v-20.571h-38.286v281.714h38.286v-92q18.286 22.857 38.857 22.857 23.429 0 30.286-24 4-12 4-42.286zM706.286 218.857v-5.143q0-16.571-1.143-24.571-1.714-12.571-8.571-22.857-15.429-22.857-45.714-22.857-29.714 0-46.286 21.714-12 15.429-12 49.143v73.714q0 33.714 11.429 49.143 16.571 21.714 45.714 21.714t44.571-21.714q12-16 12-49.143v-43.429h-76v-37.143q0-29.143 19.429-29.143 13.714 0 17.143 14.857 0 0.571 0.286 4t0.286 9.429v12.286h38.857zM448.571 689.714v-89.143q0-29.143-18.286-29.143t-18.286 29.143v89.143q0 29.714 18.286 29.714t18.286-29.714zM753.143 282.286q0 101.143-10.857 148.571-5.714 25.143-24.571 42t-43.429 19.714q-77.714 8.571-235.429 8.571-157.143 0-234.857-8.571-25.143-2.857-43.714-19.714t-24.286-42q-11.429-49.714-11.429-148.571 0-100.571 11.429-148.571 5.714-24.571 24.286-41.714t43.143-20q78.286-8.571 235.429-8.571t235.429 8.571q24.571 2.857 43.143 20t24.286 41.714q11.429 48 11.429 148.571zM321.714 654.286l51.429 169.143h-42.857l-29.143-111.429-30.286 111.429h-44.571l13.714-39.429t13.143-39.429q20-58.857 26.286-90.286v-114.857h42.286v114.857zM486.857 608v74.286q0 33.143-12 49.714-16.571 21.714-44.571 21.714-29.143 0-44.571-21.714-12-16.571-12-49.714v-74.286q0-33.143 12-49.714 15.429-21.714 44.571-21.714 28 0 44.571 21.714 12 15.429 12 49.714zM590.286 539.428h38.286v211.429h-38.286v-161.714q-12.571-17.714-24-17.714-8.571 0-9.143 9.143-0.571 1.143-0.571 14.857v155.429h-38.286v-167.429q0-21.143 3.429-31.429 6.286-15.429 24.571-15.429 20.571 0 44 25.714v-22.857zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
322
+ <glyph unicode="&#xe738;" d="M554.857 240v-120.571q0-38.286-22.286-38.286-13.143 0-25.714 12.571v172q12.571 12.571 25.714 12.571 22.286 0 22.286-38.286zM748 239.428v-26.286h-51.429v26.286q0 38.857 25.714 38.857t25.714-38.857zM196 364h61.143v53.714h-178.286v-53.714h60v-325.143h57.143v325.143zM360.571 38.857h50.857v282.286h-50.857v-216q-17.143-24-32.571-24-10.286 0-12 12-0.571 1.714-0.571 20v208h-50.857v-223.429q0-28 4.571-41.714 6.857-21.143 33.143-21.143 27.429 0 58.286 34.857v-30.857zM605.714 123.428v112.571q0 41.714-5.143 56.571-9.714 32-40.571 32-28.571 0-53.143-30.857v124h-50.857v-378.857h50.857v27.429q25.714-31.429 53.143-31.429 30.857 0 40.571 31.429 5.143 15.429 5.143 57.143zM798.857 129.143v7.429h-52q0-29.143-1.143-34.857-4-20.571-22.857-20.571-26.286 0-26.286 39.429v49.714h102.286v58.857q0 45.143-15.429 66.286-22.286 29.143-60.571 29.143-38.857 0-61.143-29.143-16-21.143-16-66.286v-98.857q0-45.143 16.571-66.286 22.286-29.143 61.714-29.143 41.143 0 61.714 30.286 10.286 15.429 12 30.857 1.143 5.143 1.143 33.143zM451.429 650.857v120q0 39.429-24.571 39.429t-24.571-39.429v-120q0-40 24.571-40t24.571 40zM862.286 221.714q0-133.714-14.857-200-8-33.714-33.143-56.571t-58.286-26.286q-105.143-12-317.143-12t-317.143 12q-33.143 3.429-58.571 26.286t-32.857 56.571q-14.857 64-14.857 200 0 133.714 14.857 200 8 33.714 33.143 56.571t58.857 26.857q104.571 11.429 316.571 11.429t317.143-11.429q33.143-4 58.571-26.857t32.857-56.571q14.857-64 14.857-200zM292 950.857h58.286l-69.143-228v-154.857h-57.143v154.857q-8 42.286-34.857 121.143-21.143 58.857-37.143 106.857h60.571l40.571-150.286zM503.429 760.571v-100q0-46.286-16-67.429-21.143-29.143-60.571-29.143-38.286 0-60 29.143-16 21.714-16 67.429v100q0 45.714 16 66.857 21.714 29.143 60 29.143 39.429 0 60.571-29.143 16-21.143 16-66.857zM694.857 853.143v-285.143h-52v31.429q-30.286-35.429-58.857-35.429-26.286 0-33.714 21.143-4.571 13.714-4.571 42.857v225.143h52v-209.714q0-18.857 0.571-20 1.714-12.571 12-12.571 15.429 0 32.571 24.571v217.714h52z" horiz-adv-x="878" />
323
+ <glyph unicode="&#xe739;" d="M341.143 569.714q-5.714-10.286-146.857-260.571-15.429-26.286-37.143-26.286h-136.571q-12 0-17.714 9.714t0 20.571l144.571 256q0.571 0 0 0.571l-92 159.429q-6.857 12.571-0.571 21.143 5.143 8.571 18.286 8.571h136.571q22.857 0 37.714-25.714zM801.714 936.571q6.286-9.143 0-21.143l-301.714-533.714v-0.571l192-351.429q6.286-11.429 0.571-21.143-5.714-8.571-18.286-8.571h-136.571q-24 0-37.714 25.714l-193.714 355.429q10.286 18.286 303.429 538.286 14.286 25.714 36.571 25.714h137.714q12.571 0 17.714-8.571z" horiz-adv-x="805" />
324
+ <glyph unicode="&#xe73a;" d="M391.429 513.714q0 0.571-72 126.857-12 19.429-29.714 19.429h-105.143q-10.286 0-14.857-6.286-4-6.857 0.571-16.571l71.429-123.429v-0.571l-112-197.714q-5.143-8 0-16 4.571-7.429 13.714-7.429h105.714q17.714 0 28.571 20.571zM748 797.714q-4 6.857-13.714 6.857h-106.857q-17.143 0-28-20l-234.857-416.571q0.571-1.143 149.714-274.857 11.429-20 29.714-20h105.143q10.286 0 14.286 6.857 4.571 7.429-0.571 16l-148.571 272v0.571l233.714 413.143q4.571 9.143 0 16zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
325
+ <glyph unicode="&#xe73b;" d="M731.429 438.857q0 21.143-17.143 30.857l-292.571 182.857q-17.714 11.429-37.143 1.143-18.857-10.286-18.857-32v-365.714q0-21.714 18.857-32 9.143-4.571 17.714-4.571 11.429 0 19.429 5.714l292.571 182.857q17.143 9.714 17.143 30.857zM1024 438.857q0-54.857-0.571-85.714t-4.857-78-12.857-84.286q-9.143-41.714-39.429-70.286t-70.857-33.143q-126.857-14.286-383.429-14.286t-383.429 14.286q-40.571 4.571-71.143 33.143t-39.714 70.286q-8 37.143-12.286 84.286t-4.857 78-0.571 85.714 0.571 85.714 4.857 78 12.857 84.286q9.143 41.714 39.429 70.286t70.857 33.143q126.857 14.286 383.429 14.286t383.429-14.286q40.571-4.571 71.143-33.143t39.714-70.286q8-37.143 12.286-84.286t4.857-78 0.571-85.714z" />
326
+ <glyph unicode="&#xe73c;" d="M229.714 546.857l282.286-174.286-195.429-162.857-280 182.286zM793.143 229.714v-61.714l-280-167.429v-0.571l-0.571 0.571-0.571-0.571v0.571l-279.429 167.429v61.714l84-54.857 195.429 162.286v1.143l0.571-0.571 0.571 0.571v-1.143l196-162.286zM316.571 883.428l195.429-162.857-282.286-173.714-193.143 154.286zM794.286 546.857l193.143-154.857-279.429-182.286-196 162.857zM708 883.428l279.429-182.286-193.143-154.286-282.286 173.714z" />
327
+ <glyph unicode="&#xe73d;" d="M530.286 150.286v-86.286l-404-0.571v86.286zM668 348v-400.571l-0.571-20v-0.571l-667.429 0.571v420.571h69.143v-353.143h530.286v353.143h68.571zM137.714 297.714l402.286-37.143-7.429-85.714-402.857 37.143zM176.571 478.286l390.286-104.571-22.286-83.429-390.286 104.571zM269.714 677.714l348-205.714-44-74.286-348 205.714zM475.429 866.857l227.429-334.286-70.857-48.571-228 333.714zM734.286 950.857l69.143-398.286-85.143-14.857-69.143 398.286z" horiz-adv-x="805" />
328
+ <glyph unicode="&#xe73e;" d="M778.286 136v370.286h-77.143q11.429-36 11.429-74.857 0-72-36.571-132.857t-99.429-96.286-137.143-35.429q-112.571 0-192.571 77.429t-80 187.143q0 38.857 11.429 74.857h-80.571v-370.286q0-14.857 10-24.857t24.857-10h610.857q14.286 0 24.571 10t10.286 24.857zM616 440.571q0 70.857-51.714 120.857t-124.857 50q-72.571 0-124.286-50t-51.714-120.857 51.714-120.857 124.286-50q73.143 0 124.857 50t51.714 120.857zM778.286 646.286v94.286q0 16-11.429 27.714t-28 11.714h-99.429q-16.571 0-28-11.714t-11.429-27.714v-94.286q0-16.571 11.429-28t28-11.429h99.429q16.571 0 28 11.429t11.429 28zM877.714 765.143v-652.571q0-46.286-33.143-79.429t-79.429-33.143h-652.571q-46.286 0-79.429 33.143t-33.143 79.429v652.571q0 46.286 33.143 79.429t79.429 33.143h652.571q46.286 0 79.429-33.143t33.143-79.429z" horiz-adv-x="878" />
329
+ <glyph unicode="&#xe73f;" d="M713.143 877.714q68 0 116.286-48.286t48.286-116.286v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571zM398.857 438.857q0 50.286-35.429 85.714t-85.714 35.429-85.714-35.429-35.429-85.714 35.429-85.714 85.714-35.429 85.714 35.429 35.429 85.714zM721.143 438.857q0 50.286-35.429 85.714t-85.714 35.429-85.714-35.429-35.429-85.714 35.429-85.714 85.714-35.429 85.714 35.429 35.429 85.714z" horiz-adv-x="878" />
330
+ <glyph unicode="&#xe740;" d="M438.857 595.428l114.857-174.857h-229.714zM647.429 292.571h53.714l-262.286 394.857-262.286-394.857h53.714l59.429 91.429h298.286zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
331
+ <glyph unicode="&#xe741;" d="M465.714 460q4.571-36-28.857-57.714t-63.714-3.429q-22.286 9.714-30.571 33.143t-0.286 46.857 29.714 33.143q20.571 10.286 41.429 6.857t36.571-20.286 15.714-38.571zM529.143 472q-8 61.143-64.571 93.714t-112.571 7.429q-36-16-57.429-50.571t-19.714-74q2.286-52 44.286-88.571t94.571-32q52 4.571 86.857 48t28.571 96zM665.714 781.714q-11.429 15.429-32 25.429t-33.143 12.571-40.571 7.143q-166.286 26.857-323.429-1.143-24.571-4-37.714-6.857t-31.429-12.571-28.571-24.571q17.143-16 43.429-26t42-12.571 50-6.571q130.286-16.571 256-0.571 36 4.571 51.143 6.857t41.429 12.286 42.857 26.571zM698.286 190.286q-4.571-14.857-8.857-43.714t-8-48-16.286-40-33.143-32.286q-49.143-27.429-108.286-40.857t-115.429-12.571-115.143 10.571q-26.286 4.571-46.571 10.286t-43.714 15.429-41.714 24.857-29.714 35.143q-14.286 54.857-32.571 166.857l3.429 9.143 10.286 5.143q127.429-84.571 289.429-84.571t290 84.571q12-3.429 13.714-13.143t-2.857-25.714-4.571-21.143zM801.714 739.428q-14.857-95.429-63.429-374.286-2.857-17.143-15.429-32t-24.857-22.857-31.143-17.714q-144-72-348.571-50.286-141.714 15.429-225.143 79.429-8.571 6.857-14.571 15.143t-9.714 20-5.143 19.429-3.429 22.571-3.143 20q-5.143 28.571-15.143 85.714t-16 92.286-13.429 84.286-12.571 90.286q1.714 14.857 10 27.714t18 21.429 25.714 17.143 26.286 12.857 27.429 10.571q71.429 26.286 178.857 36.571 216.571 21.143 386.286-28.571 88.571-26.286 122.857-69.714 9.143-11.429 9.429-29.143t-3.143-30.857z" horiz-adv-x="805" />
332
+ <glyph unicode="&#xe742;" d="M484.571 453.714q0 24.571-23.429 37.714t-44 0.571q-24.571-11.429-24.286-41.429t24.857-40.286q22.286-13.143 46.286 2.286t20.571 41.143zM530.286 462.857q4.571-37.714-20.571-69.143t-62.857-34.857-68 22.857-32 64.571q-1.143 28 14.571 53.143t41.429 36.571q40 17.714 80.857-5.714t46.571-67.429zM628.571 686.286q-11.429-12-30.571-19.429t-30.286-9.143-36.286-4.571q-88.571-11.429-185.143 0-25.143 3.429-36 5.429t-30 9.143-31.143 18.571q7.429 10.857 20.571 17.714t22.857 8.857 26.857 4.857q113.143 20 233.143 0.571 18.857-2.857 29.143-4.857t24.571-9.143 22.286-18zM652.571 260q0 4 3.143 15.143t1.714 18.286-10 9.429q-92-60.571-208.571-60.571t-209.143 60.571l-6.857-3.429-2.857-6.857q14.857-88 23.429-120 26.857-46.286 116.571-61.714 142.286-26.286 244.571 30.286 19.429 10.857 28 29.429t12.857 48.857 7.143 40.571zM726.857 656q5.143 30.286-4.571 42.857-24.571 31.429-88.571 50.286-123.429 36-278.286 20.571-75.429-6.857-129.143-26.286-21.714-8.571-34-14.286t-26.857-19.429-16.857-30.857q4.571-38.857 10.857-78.857t16.571-97.714 13.714-78.286q0.571-2.857 2.857-17.714t4-20.571 6.857-15.429 12.571-16q60-45.714 162.286-57.143 148-16 251.429 36 13.714 7.429 22.571 13.143t17.714 16.571 11.143 22.857q27.429 152.571 45.714 270.286zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
333
+ <glyph unicode="&#xe743;" d="M222.857 877.714h125.143v-221.714h208v-137.714h-208v-225.143q0-77.714 8-98.286 7.429-21.143 29.714-34.286 28.571-17.714 66.857-17.714 66.857 0 132.571 43.429v-138.286q-58.286-27.429-101.714-37.143-44-10.857-98.857-10.857-60 0-106.286 15.429-44.571 14.286-78.857 42.857-33.143 29.143-45.143 60-12.571 30.857-12.571 92v308h-97.143v124q52 17.143 88.571 48 36.571 31.429 58.857 75.429t30.857 112z" horiz-adv-x="585" />
334
+ <glyph unicode="&#xe744;" d="M641.714 145.714v103.429q-50.286-32-99.429-32-29.143 0-50.286 13.143-16.571 9.714-22.286 25.714-6.286 17.143-6.286 73.714v168.571h156.571v103.429h-156.571v166.286h-93.714q-6.286-51.429-22.857-84t-44.571-56.571q-27.429-22.857-66.286-36v-93.143h72.571v-230.857q0-44.571 9.714-69.143 9.714-24 33.714-44.571 24.571-21.143 59.429-32.571 35.429-11.429 80-11.429 38.286 0 73.714 8 32.571 7.429 76.571 28zM877.714 713.143v-548.571q0-68-48.286-116.286t-116.286-48.286h-548.571q-68 0-116.286 48.286t-48.286 116.286v548.571q0 68 48.286 116.286t116.286 48.286h548.571q68 0 116.286-48.286t48.286-116.286z" horiz-adv-x="878" />
335
+ <glyph unicode="&#xe745;" d="M796 256.571q-22.286-71.429-70.286-142.857-73.714-112-146.857-112-28 0-80 18.286-49.143 18.286-86.286 18.286-34.857 0-81.143-18.857-46.286-19.429-75.429-19.429-86.857 0-172 148-84 149.143-84 287.429 0 130.286 64.571 213.714 64 82.286 162.286 82.286 41.143 0 101.143-17.143 59.429-17.143 78.857-17.143 25.714 0 81.714 19.429 58.286 19.429 98.857 19.429 68 0 121.714-37.143 29.714-20.571 59.429-57.143-45.143-38.286-65.143-67.429-37.143-53.714-37.143-118.286 0-70.857 39.429-127.429t90.286-72zM581.143 926.857q0-34.857-16.571-77.714-17.143-42.857-53.143-78.857-30.857-30.857-61.714-41.143-21.143-6.286-59.429-9.714 1.714 85.143 44.571 146.857 42.286 61.143 142.857 84.571 0.571-1.714 1.429-6.286t1.429-6.286q0-2.286 0.286-5.714t0.286-5.714z" horiz-adv-x="805" />
336
+ <glyph unicode="&#xe746;" d="M389.714 376v-372l-389.714 53.714v318.286h389.714zM389.714 800.571v-376.571h-389.714v322.857zM950.857 376v-449.143l-518.286 71.429v377.714h518.286zM950.857 877.714v-453.714h-518.286v382.286z" horiz-adv-x="951" />
337
+ <glyph unicode="&#xe747;" d="M281.714 674.857q9.143 0 15.714 6.571t6.571 15.714-6.571 15.714-15.714 6.571-15.429-6.571-6.286-15.714 6.286-15.714 15.429-6.571zM522.857 674.857q9.143 0 15.429 6.571t6.286 15.714-6.286 15.714-15.429 6.571-15.714-6.571-6.571-15.714 6.571-15.714 15.714-6.571zM58.857 569.714q24 0 41.143-17.143t17.143-41.143v-245.714q0-24.571-16.857-41.714t-41.429-17.143-41.714 17.143-17.143 41.714v245.714q0 24 17.143 41.143t41.714 17.143zM664.571 558.857v-380.571q0-26.286-18.286-44.571t-44-18.286h-42.857v-129.714q0-24.571-17.143-41.714t-41.714-17.143-41.714 17.143-17.143 41.714v129.714h-78.857v-129.714q0-24.571-17.143-41.714t-41.714-17.143q-24 0-41.143 17.143t-17.143 41.714l-0.571 129.714h-42.286q-26.286 0-44.571 18.286t-18.286 44.571v380.571h524.571zM532 790.286q61.143-31.429 97.714-87.714t36.571-123.143h-528.571q0 66.857 36.571 123.143t98.286 87.714l-40.571 74.857q-4 7.429 2.857 11.429 7.429 3.429 11.429-3.429l41.143-75.429q54.286 24 114.857 24t114.857-24l41.143 75.429q4 6.857 11.429 3.429 6.857-4 2.857-11.429zM804.571 511.428v-245.714q0-24.571-17.143-41.714t-41.714-17.143q-24 0-41.143 17.143t-17.143 41.714v245.714q0 24.571 17.143 41.429t41.143 16.857q24.571 0 41.714-16.857t17.143-41.429z" horiz-adv-x="805" />
338
+ <glyph unicode="&#xe748;" d="M378.857 716q-6.286-0.571-8.857-6t-4.857-5.429q-2.857-0.571-2.857 2.857 0 6.857 10.857 8.571h5.714zM428.571 708q-2.286-0.571-6.571 3.714t-10 2.571q13.714 6.286 18.286-1.143 1.714-3.429-1.714-5.143zM228 464q-2.286 0.571-3.429-1.714t-2.571-7.143-3.143-7.714-5.714-7.429q-4-5.714-0.571-6.857 2.286-0.571 7.143 4t7.143 10.286q0.571 1.714 1.143 4t1.143 3.429 0.857 2.571 0.286 2.286v1.714t-0.571 1.429-1.714 1.143zM716.571 258.857q0 10.286-31.429 24 2.286 8.571 4.286 15.714t2.857 14.857 1.714 12.286 0.286 12.857-0.571 11.143-2 12.571-2.286 11.714-2.857 14.286-3.143 15.143q-5.714 27.429-26.857 58.857t-41.143 42.857q13.714-11.429 32.571-47.429 49.714-92.571 30.857-158.857-6.286-22.857-28.571-24-17.714-2.286-22 10.571t-4.571 47.714-6.571 61.143q-5.143 22.286-11.143 39.429t-11.143 26-8.857 14-7.429 8.571-4.286 4q-8 35.429-17.714 58.857t-16.857 32-13.429 18.857-8.571 22.857q-2.286 12 3.429 30.571t2.571 28.286-25.429 14.286q-8.571 1.714-25.429 10.286t-20.286 9.143q-4.571 0.571-6.286 14.857t4.571 29.143 20.571 15.429q21.143 1.714 29.143-17.143t2.286-33.143q-6.286-10.857-1.143-15.143t17.143-0.286q7.429 2.286 7.429 20.571v21.143q-2.857 17.143-7.714 28.571t-12 17.429-13.429 8.571-15.429 4.286q-61.143-4.571-50.857-76.571 0-8.571-0.571-8.571-5.143 5.143-16.857 6t-18.857-0.286-8.857 2.857q0.571 32.571-9.143 51.429t-25.714 19.429q-15.429 0.571-23.714-15.714t-9.429-34q-0.571-8.571 2-21.143t7.429-21.429 8.857-7.714q5.714 1.714 9.143 8 2.286 5.143-4 4.571-4 0-8.857 8.286t-5.429 19.143q-0.571 12.571 5.143 21.143t19.429 8q9.714 0 15.429-12t5.429-22.286-0.857-12.571q-12.571-8.571-17.714-16.571-4.571-6.857-15.714-13.429t-11.714-7.143q-7.429-8-8.857-15.429t4.286-10.286q8-4.571 14.286-11.143t9.143-10.857 10.571-7.429 20.286-3.714q26.857-1.143 58.286 8.571 1.143 0.571 13.143 4t19.714 6 16.857 7.429 12 10q5.143 8 11.429 4.571 2.857-1.714 3.714-4.857t-1.714-6.857-9.429-5.429q-11.429-3.429-32.286-12.286t-26-11.143q-25.143-10.857-40-13.143-14.286-2.857-45.143 1.143-5.714 1.143-5.143-1.143t9.714-10.857q14.286-13.143 38.286-12.571 9.714 0.571 20.571 4t20.571 8 19.143 10 17.143 9.714 14 6.857 10 1.429 4.857-6.286q0-1.143-0.571-2.571t-2.286-2.857-3.429-2.571-4.857-2.857-5.143-2.571-5.714-2.857-5.429-2.571q-16-8-38.571-25.143t-38-24.571-28-0.571q-12 6.286-36 41.714-12.571 17.714-14.286 12.571-0.571-1.714-0.571-5.714 0-14.286-8.571-32.286t-16.857-31.714-12-33.143 6.571-36q-13.143-3.429-35.714-51.429t-27.143-80.571q-1.143-10.286-0.857-39.429t-3.143-33.714q-4.571-13.714-16.571-1.714-18.286 17.714-20.571 53.714-1.143 16 2.286 32 2.286 10.857-0.571 10.286l-2.286-2.857q-20.571-37.143 5.714-94.857 2.857-6.857 14.286-16t13.714-11.429q11.429-13.143 59.429-51.714t53.143-43.714q9.143-8.571 10-21.714t-8-24.571-26-13.143q4.571-8.571 16.571-25.429t16-30.857 4-40.286q26.286 13.714 4 52.571-2.286 4.571-6 9.143t-5.429 6.857-1.143 3.429q1.714 2.857 7.429 5.429t11.429-1.429q26.286-29.714 94.857-20.571 76 8.571 101.143 49.714 13.143 21.714 19.429 17.143 6.857-3.429 5.714-29.714-0.571-14.286-13.143-52.571-5.143-13.143-3.429-21.429t13.714-8.857q1.714 10.857 8.286 44t7.714 51.429q1.143 12-3.714 42t-4.286 55.429 13.143 40.286q8.571 10.286 29.143 10.286 0.571 21.143 19.714 30.286t41.429 6 34.286-12.857zM357.714 731.428q1.714 9.714-1.429 17.143t-6.571 8.571q-5.143 1.143-5.143-4 1.143-2.857 2.857-3.429 5.714 0 4-8.571-1.714-11.429 4.571-11.429 1.714 0 1.714 1.714zM597.143 618.857q-1.143 4.571-3.714 6.571t-7.429 2.857-8.286 3.143q-2.857 1.714-5.429 4.571t-4 4.571-3.143 3.714-2.286 2.286-2.286-0.857q-8-9.143 4-24.857t22.286-18q5.143-0.571 8.286 4.571t2 11.429zM495.429 740.571q0 6.286-2.857 11.143t-6.286 7.143-5.143 1.714q-8-0.571-4-4l2.286-1.143q8-2.286 10.286-17.714 0-1.714 4.571 1.143zM526.286 873.714q0 1.143-1.429 2.857t-5.143 4-5.429 3.429q-8.571 8.571-13.714 8.571-5.143-0.571-6.571-4.286t-0.571-7.429-0.286-7.143q-0.571-2.286-3.429-6t-3.429-5.143 1.714-4.857q2.286-1.714 4.571 0t6.286 5.143 8.571 5.143q0.571 0.571 5.143 0.571t8.571 1.143 5.143 4zM849.143 107.428q11.429-6.857 17.714-14t6.857-13.714-1.429-12.857-8.857-12.571-13.429-11.143-17.143-10.571-18-9.429-18.286-8.857-15.429-7.429q-21.714-10.857-48.857-32t-43.143-36.571q-9.714-9.143-38.857-11.143t-50.857 8.286q-10.286 5.143-16.857 13.429t-9.429 14.571-12.571 11.143-26.857 5.429q-25.143 0.571-74.286 0.571-10.857 0-32.571-0.857t-33.143-1.429q-25.143-0.571-45.429-8.571t-30.571-17.143-24.857-16.286-30.571-6.571q-16.571 0.571-63.429 17.714t-83.429 24.571q-10.857 2.286-29.143 5.429t-28.571 5.143-22.571 5.429-19.143 8.286-9.714 11.143q-5.714 13.143 4 38t10.286 31.143q0.571 9.143-2.286 22.857t-5.714 24.286-2.571 20.857 6 15.429q8 6.857 32.571 8t34.286 6.857q17.143 10.286 24 20t6.857 29.143q12-41.714-18.286-60.571-18.286-11.429-47.429-8.571-19.429 1.714-24.571-5.714-7.429-8.571 2.857-32.571 1.143-3.429 4.571-10.286t4.857-10.286 2.571-9.714 0.571-12.571q0-8.571-9.714-28t-8-27.429q1.714-9.714 21.143-14.857 11.429-3.429 48.286-10.571t56.857-11.714q13.714-3.429 42.286-12.571t47.143-13.143 31.714-2.286q24.571 3.429 36.857 16t13.143 27.429-4.286 33.429-10.857 29.714-11.429 20.857q-69.143 108.571-96.571 138.286-38.857 42.286-64.571 22.857-6.286-5.143-8.571 8.571-1.714 9.143-1.143 21.714 0.571 16.571 5.714 29.714t13.714 26.857 12.571 24q4.571 12 15.143 41.143t16.857 44.571 17.143 34.857 22.286 30.857q62.857 81.714 70.857 111.429-6.857 64-9.143 177.143-1.143 51.429 13.714 86.571t60.571 59.714q22.286 12 59.429 12 30.286 0.571 60.571-7.714t50.857-23.714q32.571-24 52.286-69.429t16.857-84.286q-2.857-54.286 17.143-122.286 19.429-64.571 76-124.571 31.429-33.714 56.857-93.143t34-109.143q4.571-28 2.857-48.286t-6.857-31.714-11.429-12.571q-5.714-1.143-13.429-10.857t-15.429-20.286-23.143-19.143-34.857-8q-10.286 0.571-18 2.857t-12.857 7.714-7.714 8.857-6.571 11.714-5.143 11.143q-12.571 21.143-23.429 17.143t-16-28 4-55.429q11.429-40 0.571-111.429-5.714-37.143 10.286-57.429t41.714-18.857 48.571 20.286q33.714 28 51.143 38t59.143 24.286q30.286 10.286 44 20.857t10.571 19.714-14.286 16.286-29.429 13.429q-18.857 6.286-28.286 27.429t-8.571 41.429 8.857 27.143q0.571-17.714 4.571-32.286t8.286-23.143 11.714-16.286 12-10.857 12.286-7.429 9.429-5.429z" horiz-adv-x="878" />
339
+ <glyph unicode="&#xe749;" d="M585.143 93.714q-24 137.714-80 284.571h-1.143l-1.143-0.571q-9.143-3.429-24.571-9.429t-57.714-28-78.286-46.857-74.857-65.429-58.857-84.571l-8.571 6.286q105.143-85.714 238.857-85.714 75.429 0 146.286 29.714zM479.429 440.571q-12 28-30.286 63.429-177.714-53.143-384.571-53.143-0.571-4-0.571-12 0-70.857 25.143-135.143t70.857-115.143q28.571 50.857 70.571 95.143t81.429 71.143 74.571 46.286 56.857 27.429l21.143 7.429q2.286 0.571 7.429 2t7.429 2.571zM418.286 561.714q-68.571 121.714-139.429 216-78.857-37.143-133.714-106.286t-73.143-155.429q172.571 0 346.286 45.714zM809.143 379.428q-120 34.286-233.714 16.571 49.714-136.571 73.143-268 63.429 42.857 105.714 108.286t54.857 143.143zM349.143 802.857q-0.571 0-1.143-0.571 0.571 0.571 1.143 0.571zM686.286 720q-105.714 93.714-247.429 93.714-43.429 0-88.571-10.857 74.857-97.143 140.571-218.286 39.429 14.857 74.286 34.571t55.143 35.143 37.429 32.571 21.429 23.143zM813.714 442.857q-1.714 132.571-85.143 234.286l-0.571-0.571q-5.143-6.857-10.857-14t-24.857-25.429-40.571-34.571-57.143-37.143-75.143-36.857q14.286-30.286 25.143-54.286 1.143-3.429 3.714-10t4.286-9.429q20.571 2.857 42.571 4t42 1.143 39.429-0.857 36.571-2.286 32.286-3.143 27.429-3.714 20.857-3.429 14.286-2.571zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
340
+ <glyph unicode="&#xe74a;" d="M670.286 343.428q0 28.571-11.143 52.286t-27.714 39.143-41.714 28-47.143 19.429-50 13.143l-59.429 13.714q-17.143 4-25.143 6t-20 6.571-17.143 9.143-9.429 12-4.286 17.143q0 44 82.286 44 24.571 0 44-6.857t30.857-16.286 21.714-19.143 22.857-16.571 27.429-6.857q26.857 0 43.143 18.286t16.286 44q0 31.429-32 56.857t-81.143 38.571-104 13.143q-38.857 0-75.429-8.857t-68.286-26.857-50.857-49.714-19.143-73.429q0-34.857 10.857-60.857t32-43.143 45.714-27.714 58.857-18.571l83.429-20.571q51.429-12.571 64-20.571 18.286-11.429 18.286-34.286 0-22.286-22.857-36.857t-60-14.571q-29.143 0-52.286 9.143t-37.143 22-26 25.714-26.286 22-30.857 9.143q-28.571 0-43.143-17.143t-14.571-42.857q0-52.571 69.714-90t166.286-37.429q41.714 0 80 10.571t70 30.571 50.571 53.429 18.857 75.143zM877.714 219.428q0-90.857-64.286-155.143t-155.143-64.286q-74.286 0-133.714 45.714-44-9.143-85.714-9.143-81.714 0-156.286 31.714t-128.571 85.714-85.714 128.571-31.714 156.286q0 41.714 9.143 85.714-45.714 59.429-45.714 133.714 0 90.857 64.286 155.143t155.143 64.286q74.286 0 133.714-45.714 44 9.143 85.714 9.143 81.714 0 156.286-31.714t128.571-85.714 85.714-128.571 31.714-156.286q0-41.714-9.143-85.714 45.714-59.429 45.714-133.714z" horiz-adv-x="878" />
341
+ <glyph unicode="&#xe74b;" d="M847.429 365.714l-335.429-335.429q-29.714-30.286-72.857-30.286t-73.429 30.286l-335.429 335.429q-30.286 30.286-30.286 73.143t30.286 73.143l335.429 335.429q30.286 30.286 73.143 30.286t73.143-30.286l151.429-151.429-227.429-228-107.429 107.429q-24 24-56.571 24-33.714 0-57.143-23.429l-68.571-69.143q-24-22.857-24-56.571 0-33.143 24-57.143l232-233.143q17.143-16 38.286-21.143l3.429-2.286h16q34.286 0 56.571 23.429l353.714 353.714 1.143-1.714q30.286-30.286 30.286-73.143t-30.286-73.143zM803.429 723.428l68.571-68.571q8-8.571 8-20.571t-8-20.571l-417.143-417.143q-9.714-8.571-21.143-8.571v0q-2.286 0-3.429 0.571-10.286 1.143-17.143 8l-232.571 233.143q-8 8.571-8 20.571t8 20l69.143 68.571q7.429 8.571 20 8.571t20.571-8.571l144-144 328 328.571q8.571 8.571 20.571 8.571t20.571-8.571z" horiz-adv-x="951" />
342
+ <glyph unicode="&#xe74c;" d="M402.286 182.857v585.143q0 8-5.143 13.143t-13.143 5.143h-274.286q-8 0-13.143-5.143t-5.143-13.143v-585.143q0-8 5.143-13.143t13.143-5.143h274.286q8 0 13.143 5.143t5.143 13.143zM786.286 402.286v365.714q0 8-5.143 13.143t-13.143 5.143h-274.286q-8 0-13.143-5.143t-5.143-13.143v-365.714q0-8 5.143-13.143t13.143-5.143h274.286q8 0 13.143 5.143t5.143 13.143zM877.714 841.143v-804.571q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v804.571q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714z" horiz-adv-x="878" />
343
+ <glyph unicode="&#xe74d;" d="M731.429 347.428q0-22.857-16-38.857t-38.857-16q-29.143 0-45.714 24.571l-129.714 194.857h-25.714v-75.429l141.143-234.857q5.143-8.571 5.143-18.857 0-14.857-10.857-25.714t-25.714-10.857h-109.714v-155.429q0-26.286-18.857-45.143t-45.143-18.857h-91.429q-26.286 0-45.143 18.857t-18.857 45.143v155.429h-109.714q-14.857 0-25.714 10.857t-10.857 25.714q0 10.286 5.143 18.857l141.143 234.857v75.429h-25.714l-129.714-194.857q-16.571-24.571-45.714-24.571-22.857 0-38.857 16t-16 38.857q0 16.571 9.143 30.286l146.286 219.429q41.714 61.143 100.571 61.143h219.429q58.857 0 100.571-61.143l146.286-219.429q9.143-13.714 9.143-30.286zM493.714 804.571q0-53.143-37.429-90.571t-90.571-37.429-90.571 37.429-37.429 90.571 37.429 90.571 90.571 37.429 90.571-37.429 37.429-90.571z" horiz-adv-x="731" />
344
+ <glyph unicode="&#xe74e;" d="M585.143 548.571v-237.714q0-22.857-16-38.857t-38.857-16-38.857 16-16 38.857v201.143h-36.571v-521.143q0-26.286-18.857-45.143t-45.143-18.857-45.143 18.857-18.857 45.143v265.143h-36.571v-265.143q0-26.286-18.857-45.143t-45.143-18.857-45.143 18.857-18.857 45.143v521.143h-36.571v-201.143q0-22.857-16-38.857t-38.857-16-38.857 16-16 38.857v237.714q0 45.714 32 77.714t77.714 32h365.714q45.714 0 77.714-32t32-77.714zM420.571 804.571q0-53.143-37.429-90.571t-90.571-37.429-90.571 37.429-37.429 90.571 37.429 90.571 90.571 37.429 90.571-37.429 37.429-90.571z" horiz-adv-x="585" />
345
+ <glyph unicode="&#xe74f;" d="M441.714 206.857l200 270.286q9.143 12.571 14 33.714t-3.429 48.571-35.143 45.143q-22.857 14.857-47.429 14.571t-42-10-31.143-25.714q-20.571-22.857-54.857-22.857-33.714 0-54.286 22.857-13.714 16-31.143 25.714t-42 10-48-14.571q-26.286-17.714-34.571-45.143t-3.429-48.571 14-33.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
346
+ <glyph unicode="&#xe750;" d="M841.143 438.857q0 66.857-26 127.714t-70.286 105.143-105.143 70.286-127.714 26-127.714-26-105.143-70.286-70.286-105.143-26-127.714 26-127.714 70.286-105.143 105.143-70.286 127.714-26 127.714 26 105.143 70.286 70.286 105.143 26 127.714zM998.857 280.571q-2.286-8.571-11.429-11.429l-166.857-54.857v-174.857q0-9.143-7.429-14.857-8.571-5.714-16.571-2.286l-166.857 53.714-102.857-141.714q-5.714-7.429-14.857-7.429t-14.857 7.429l-102.857 141.714-166.857-53.714q-8-3.429-16.571 2.286-7.429 5.714-7.429 14.857v174.857l-166.857 54.857q-9.143 2.857-11.429 11.429-2.857 9.714 2.286 16.571l102.857 141.714-102.857 141.714q-5.143 7.429-2.286 16.571 2.286 8.571 11.429 11.429l166.857 54.857v174.857q0 9.143 7.429 14.857 8.571 5.714 16.571 2.286l166.857-53.714 102.857 141.714q5.143 6.857 14.857 6.857t14.857-6.857l102.857-141.714 166.857 53.714q8 3.429 16.571-2.286 7.429-5.714 7.429-14.857v-174.857l166.857-54.857q9.143-2.857 11.429-11.429 2.857-9.143-2.286-16.571l-102.857-141.714 102.857-141.714q5.143-6.857 2.286-16.571z" />
347
+ <glyph unicode="&#xe751;" d="M721.143 206.286q-30.857-5.143-62.857-5.143-104 0-192.571 51.429t-140 140-51.429 192.571q0 109.714 59.429 204-114.857-34.286-187.714-130.857t-72.857-219.429q0-74.286 29.143-142t78-116.571 116.571-78 142-29.143q82.286 0 156.286 35.143t126 98zM837.143 254.857q-53.714-116-162-185.429t-236.286-69.429q-89.143 0-170.286 34.857t-140 93.714-93.714 140-34.857 170.286q0 87.429 32.857 167.143t89.143 138 134.571 94 165.714 39.143q25.143 1.143 34.857-22.286 10.286-23.429-8.571-41.143-49.143-44.571-75.143-103.714t-26-124.857q0-84.571 41.714-156t113.143-113.143 156-41.714q67.429 0 130.286 29.143 23.429 10.286 41.143-7.429 8-8 10-19.429t-2.571-21.714z" horiz-adv-x="878" />
348
+ <glyph unicode="&#xe752;" d="M621.714 475.428q0 14.857-10.857 25.714t-25.714 10.857h-146.286q-14.857 0-25.714-10.857t-10.857-25.714 10.857-25.714 25.714-10.857h146.286q14.857 0 25.714 10.857t10.857 25.714zM950.857 585.143v-548.571q0-14.857-10.857-25.714t-25.714-10.857h-804.571q-14.857 0-25.714 10.857t-10.857 25.714v548.571q0 14.857 10.857 25.714t25.714 10.857h804.571q14.857 0 25.714-10.857t10.857-25.714zM987.429 841.143v-146.286q0-14.857-10.857-25.714t-25.714-10.857h-877.714q-14.857 0-25.714 10.857t-10.857 25.714v146.286q0 14.857 10.857 25.714t25.714 10.857h877.714q14.857 0 25.714-10.857t10.857-25.714z" />
349
+ <glyph unicode="&#xe753;" d="M932.571 402.286q0-14.857-10.857-25.714t-25.714-10.857h-128q0-97.714-38.286-165.714l118.857-119.429q10.857-10.857 10.857-25.714t-10.857-25.714q-10.286-10.857-25.714-10.857t-25.714 10.857l-113.143 112.571q-2.857-2.857-8.571-7.429t-24-16.286-37.143-20.857-46.857-16.571-55.429-7.429v512h-73.143v-512q-29.143 0-58 7.714t-49.714 18.857-37.714 22.286-24.857 18.571l-8.571 8-104.571-118.286q-11.429-12-27.429-12-13.714 0-24.571 9.143-10.857 10.286-11.714 25.429t8.857 26.571l115.429 129.714q-33.143 65.143-33.143 156.571h-128q-14.857 0-25.714 10.857t-10.857 25.714 10.857 25.714 25.714 10.857h128v168l-98.857 98.857q-10.857 10.857-10.857 25.714t10.857 25.714 25.714 10.857 25.714-10.857l98.857-98.857h482.286l98.857 98.857q10.857 10.857 25.714 10.857t25.714-10.857 10.857-25.714-10.857-25.714l-98.857-98.857v-168h128q14.857 0 25.714-10.857t10.857-25.714zM658.286 731.428h-365.714q0 76 53.429 129.429t129.429 53.429 129.429-53.429 53.429-129.429z" horiz-adv-x="951" />
350
+ <glyph unicode="&#xe754;" d="M1095.429 653.714q13.143-36.571-85.714-168-13.714-18.286-37.143-48.571-44.571-57.143-51.429-74.857-9.714-23.429 8-46.286 9.714-12 46.286-46.857h0.571l2.286-2.286q80.571-74.857 109.143-126.286 1.714-2.857 3.714-7.143t4-15.143-0.286-19.429-14.286-15.714-33.714-7.143l-146.286-2.286q-13.714-2.857-32 2.857t-29.714 12.571l-11.429 6.857q-17.143 12-40 36.571t-39.143 44.286-34.857 33.143-32.286 8.857q-1.714-0.571-4.571-2t-9.714-8.286-12.286-16.857-9.714-29.714-3.714-44.286q0-8.571-2-15.714t-4.286-10.571l-2.286-2.857q-10.286-10.857-30.286-12.571h-65.714q-40.571-2.286-83.429 9.429t-75.143 30.286-58.857 37.714-40.286 32.857l-14.286 13.714q-5.714 5.714-15.714 17.143t-40.857 52-60.571 86.286-70 120.571-74.571 155.429q-3.429 9.143-3.429 15.429t1.714 9.143l2.286 3.429q8.571 10.857 32.571 10.857l156.571 1.143q6.857-1.143 13.143-3.714t9.143-4.857l2.857-1.714q9.143-6.286 13.714-18.286 11.429-28.571 26.286-59.143t23.429-46.571l9.143-16.571q16.571-34.286 32-59.429t27.714-39.143 23.714-22 19.429-8 15.429 2.857q1.143 0.571 2.857 2.857t6.857 12.571 7.714 26.857 5.429 46.286 0 71.429q-1.143 22.857-5.143 41.714t-8 26.286l-3.429 6.857q-14.286 19.429-48.571 24.571-7.429 1.143 2.857 13.714 9.714 10.857 21.714 17.143 30.286 14.857 136.571 13.714 46.857-0.571 77.143-7.429 11.429-2.857 19.143-7.714t11.714-13.714 6-18.286 2-26-0.571-31.429-1.429-40.286-0.857-47.143q0-6.286-0.571-24t-0.286-27.429 2-23.143 6.571-22.286 12.857-14q4.571-1.143 9.714-2.286t14.857 6.286 21.714 19.714 29.714 38.286 38.857 61.429q34.286 59.429 61.143 128.571 2.286 5.714 5.714 10t6.286 6l2.286 1.714 2.857 1.429t7.429 1.714 11.429 0.286l164.571 1.143q22.286 2.857 36.571-1.429t17.714-9.429z" horiz-adv-x="1097" />
351
+ <glyph unicode="&#xe755;" d="M385.714 217.143q12 19.429 6.286 39.429t-25.714 28.571q-19.429 8-41.714 0.571t-34.286-26.286q-12.571-19.429-7.429-39.143t24.571-28.857 42.571-1.429 35.714 27.143zM439.429 286.286q4.571 7.429 2 15.143t-10 10.571q-8 2.857-16.286-0.286t-12.286-10.571q-9.714-17.714 7.429-25.714 8-2.857 16.571 0.286t12.571 10.571zM538.857 225.143q-25.714-58.286-90.286-85.714t-128-6.857q-61.143 19.429-84.286 72.286t3.714 107.143q26.857 53.143 86.571 79.429t120.286 10.857q63.429-16.571 90.571-68.286t1.429-108.857zM717.143 316.571q-5.143 54.857-50.857 97.143t-119.143 62.286-156.857 12q-127.429-13.143-211.143-80.857t-75.714-151.143q5.143-54.857 50.857-97.143t119.143-62.286 156.857-12q127.429 13.143 211.143 80.857t75.714 151.143zM893.143 314.286q0-38.857-21.143-79.714t-62.286-78.286-96.286-67.143-129.143-47.429-154.571-17.714-157.143 19.143-137.429 53.143-98 86.286-37.143 114q0 65.714 39.714 140t112.857 147.429q96.571 96.571 195.143 134.857t140.857-4q37.143-36.571 11.429-119.429-2.286-8-0.571-11.429t5.714-4 8.286 0.286 7.714 2l3.429 1.143q79.429 33.714 140.571 33.714t87.429-34.857q25.714-36 0-101.714-1.143-7.429-2.571-11.429t2.571-7.143 6.857-4.286 9.714-3.429q32.571-10.286 58.857-26.857t45.714-46.571 19.429-66.571zM850.857 670.857q24-26.857 31.143-62t-3.714-67.143q-4.571-13.143-16.857-19.429t-25.429-2.286q-13.143 4.571-19.429 16.857t-2.286 25.429q11.429 36-13.714 63.429t-61.143 20q-13.714-2.857-25.714 4.571t-14.286 21.143q-2.857 13.714 4.571 25.429t21.143 14.571q34.286 7.429 68-3.143t57.714-37.429zM954.286 764q49.714-54.857 64.286-127.143t-7.714-138q-5.143-15.429-19.429-22.857t-29.714-2.286-22.857 19.429-2.857 29.714q16 46.857 5.714 98.286t-45.714 90.286q-35.429 39.429-84.571 54.571t-98.857 4.857q-16-3.429-29.714 5.429t-17.143 24.857 5.429 29.429 24.857 16.857q70.286 14.857 139.429-6.571t118.857-76.857z" />
352
+ <glyph unicode="&#xe756;" d="M460 166.286q-69.714-38.286-149.143-38.286-80.571 0-149.143 38.286 56 34.857 95.429 85.143t53.714 109.143q14.286-58.857 53.714-109.143t95.429-85.143zM258.857 745.143v-196.571q0-102.286-51.143-186.286t-134-124q-73.714 86.857-73.714 200.571 0 114.286 74 201.143t184.857 105.143zM547.429 639.428q-73.143-86.857-73.143-200.571 0-114.857 73.143-200.571-82.857 40-134 124.571t-51.143 187.429v194.857q112-18.857 185.143-105.714zM936 166.286q-69.714-38.286-149.143-38.286-80.571 0-149.143 38.286 56 34.857 95.429 85.143t53.714 109.143q14.286-58.857 53.714-109.143t95.429-85.143zM734.857 745.143v-196.571q0-102.286-52-186.286t-135.429-124v0q76 88 76 200.571 0 111.429-76 200.571 73.714 86.286 187.429 105.714zM1097.143 438.857q0-114.857-73.714-200.571-82.857 40-134 124.571t-51.143 187.429v194.857q110.857-18.286 184.857-105.143t74-201.143z" horiz-adv-x="1097" />
353
  <glyph unicode="&#xe770;" d="M437.143 208.571q4.571-10.857-2.857-20l-200-219.429q-5.714-5.714-13.143-5.714-8 0-13.714 5.714l-202.857 219.429q-7.429 9.143-2.857 20 5.143 10.857 16.571 10.857h128v713.143q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143v-713.143h128q12 0 16.571-10.857z" horiz-adv-x="439" />
354
  <glyph unicode="&#xe771;" d="M437.143 669.143q-5.143-10.857-16.571-10.857h-128v-713.143q0-8-5.143-13.143t-13.143-5.143h-109.714q-8 0-13.143 5.143t-5.143 13.143v713.143h-128q-12 0-16.571 10.857t2.857 20l200 219.429q5.714 5.714 13.143 5.714 8 0 13.714-5.714l202.857-219.429q7.429-9.143 2.857-20z" horiz-adv-x="439" />
355
  <glyph unicode="&#xe772;" d="M1024 493.714v-109.714q0-8-5.143-13.143t-13.143-5.143h-713.143v-128q0-12-10.857-16.571t-20 2.857l-219.429 200q-5.714 5.714-5.714 13.143 0 8 5.714 13.714l219.429 202.286q9.143 8 20 3.429 10.857-5.143 10.857-16.571v-128h713.143q8 0 13.143-5.143t5.143-13.143z" />
363
  <glyph unicode="&#xe780;" d="M733.143 641.714l-202.857-202.857 202.857-202.857 82.286 82.286q16.571 17.714 40 8 22.286-9.714 22.286-33.714v-256q0-14.857-10.857-25.714t-25.714-10.857h-256q-24 0-33.714 22.857-9.714 22.286 8 39.429l82.286 82.286-202.857 202.857-202.857-202.857 82.286-82.286q17.714-17.143 8-39.429-9.714-22.857-33.714-22.857h-256q-14.857 0-25.714 10.857t-10.857 25.714v256q0 24 22.857 33.714 22.286 9.714 39.429-8l82.286-82.286 202.857 202.857-202.857 202.857-82.286-82.286q-10.857-10.857-25.714-10.857-6.857 0-13.714 2.857-22.857 9.714-22.857 33.714v256q0 14.857 10.857 25.714t25.714 10.857h256q24 0 33.714-22.857 9.714-22.286-8-39.429l-82.286-82.286 202.857-202.857 202.857 202.857-82.286 82.286q-17.714 17.143-8 39.429 9.714 22.857 33.714 22.857h256q14.857 0 25.714-10.857t10.857-25.714v-256q0-24-22.286-33.714-7.429-2.857-14.286-2.857-14.857 0-25.714 10.857z" horiz-adv-x="878" />
364
  <glyph unicode="&#xe781;" d="M694.857 402.286v73.143q0 14.857-10.857 25.714t-25.714 10.857h-146.286v146.286q0 14.857-10.857 25.714t-25.714 10.857h-73.143q-14.857 0-25.714-10.857t-10.857-25.714v-146.286h-146.286q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h146.286v-146.286q0-14.857 10.857-25.714t25.714-10.857h73.143q14.857 0 25.714 10.857t10.857 25.714v146.286h146.286q14.857 0 25.714 10.857t10.857 25.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
365
  <glyph unicode="&#xe782;" d="M694.857 402.286v73.143q0 14.857-10.857 25.714t-25.714 10.857h-438.857q-14.857 0-25.714-10.857t-10.857-25.714v-73.143q0-14.857 10.857-25.714t25.714-10.857h438.857q14.857 0 25.714 10.857t10.857 25.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
366
+ <glyph unicode="&#xe783;" d="M292.571 530.286v-329.143q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v329.143q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143zM438.857 530.286v-329.143q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v329.143q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143zM585.143 530.286v-329.143q0-8-5.143-13.143t-13.143-5.143h-36.571q-8 0-13.143 5.143t-5.143 13.143v329.143q0 8 5.143 13.143t13.143 5.143h36.571q8 0 13.143-5.143t5.143-13.143zM658.286 116.571v541.714h-512v-541.714q0-12.571 4-23.143t8.286-15.429 6-4.857h475.429q1.714 0 6 4.857t8.286 15.429 4 23.143zM274.286 731.428h256l-27.429 66.857q-4 5.143-9.714 6.286h-181.143q-5.714-1.143-9.714-6.286zM804.571 713.143v-36.571q0-8-5.143-13.143t-13.143-5.143h-54.857v-541.714q0-47.429-26.857-82t-64.571-34.571h-475.429q-37.714 0-64.571 33.429t-26.857 80.857v544h-54.857q-8 0-13.143 5.143t-5.143 13.143v36.571q0 8 5.143 13.143t13.143 5.143h176.571l40 95.429q8.571 21.143 30.857 36t45.143 14.857h182.857q22.857 0 45.143-14.857t30.857-36l40-95.429h176.571q8 0 13.143-5.143t5.143-13.143z" horiz-adv-x="805" />
367
+ <glyph unicode="&#xe784;" d="M207.429 73.143l52 52-134.286 134.286-52-52v-61.143h73.143v-73.143h61.143zM506.286 603.428q0 12.571-12.571 12.571-5.714 0-9.714-4l-309.714-309.714q-4-4-4-9.714 0-12.571 12.571-12.571 5.714 0 9.714 4l309.714 309.714q4 4 4 9.714zM475.429 713.143l237.714-237.714-475.429-475.429h-237.714v237.714zM865.714 658.286q0-30.286-21.143-51.429l-94.857-94.857-237.714 237.714 94.857 94.286q20.571 21.714 51.429 21.714 30.286 0 52-21.714l134.286-133.714q21.143-22.286 21.143-52z" horiz-adv-x="878" />
368
  <glyph unicode="&#xe785;" d="M511.99-64c-282.309 0-511.99 229.681-511.99 512.020 0 282.299 229.681 511.98 511.99 511.98 282.329 0 512.010-229.681 512.010-511.98 0-282.338-229.681-512.020-512.010-512.020zM511.99 904.251c-251.569 0-456.241-204.672-456.241-456.231 0-251.589 204.672-456.271 456.241-456.271 251.55 0 456.212 204.682 456.212 456.271 0 251.559-204.662 456.231-456.212 456.231zM438.597 145.881c0 0.876 0 457.59 0 457.59h-75.845c-29.637 0-54.223-2.462-73.738-7.375-19.535-4.923-36.697-18.412-51.515-40.438-14.828-22.055-23.276-56.015-25.374-101.937h-49.684v175.429c-26.929-53.209-42.201-113.339-42.201-177.063 0-177.546 117.849-327.532 279.562-376.133 14.1-1.812 38.666 4.46 38.794 69.927zM794.91 374.252c-37.809-0.305-68.401 31.99-68.401 71.454 0 39.473 30.592 71.483 68.401 71.483 2.028 0 4.027-0.128 5.986-0.305-0.138 3.121-0.798 6.105-1.851 8.862 0.010 0 0.010 0 0.020 0-4.106 11.569-8.93 21.465-14.503 29.637-14.818 21.858-30.779 35.338-47.852 40.438-17.083 5.11-36.775 7.66-59.087 7.66h-92.219v-457.945c0.030-70.37 29.46-71.995 43.323-68.874 2.274 0.709 4.519 1.497 6.774 2.235 0.030 0.020 0.167 0.098 0.187 0.108 0.049 0 0.079 0.020 0.118 0.020 0 0-0.059-0.030-0.158-0.069 156.859 51.515 270.159 199.060 270.159 373.14 0 68.047-17.319 132.047-47.774 187.845 0-22.518 0-192.817 0-194.225 0.020-37.268-20.51-71.119-63.124-71.463zM513.024 844.879c-138.801 0-260.687-72.054-330.555-180.736h661.1c-69.849 108.672-191.744 180.736-330.545 180.736z" />
369
+ <glyph unicode="&#xe786;" d="M733.714 531.428q0 16-10.286 26.286l-52 51.429q-10.857 10.857-25.714 10.857t-25.714-10.857l-233.143-232.571-129.143 129.143q-10.857 10.857-25.714 10.857t-25.714-10.857l-52-51.429q-10.286-10.286-10.286-26.286 0-15.429 10.286-25.714l206.857-206.857q10.857-10.857 25.714-10.857 15.429 0 26.286 10.857l310.286 310.286q10.286 10.286 10.286 25.714zM877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
370
+ <glyph unicode="&#xe787;" d="M877.714 438.857q0-119.429-58.857-220.286t-159.714-159.714-220.286-58.857-220.286 58.857-159.714 159.714-58.857 220.286 58.857 220.286 159.714 159.714 220.286 58.857 220.286-58.857 159.714-159.714 58.857-220.286z" horiz-adv-x="878" />
371
  </font></defs></svg>
assets/fonts/option-tree-font.ttf CHANGED
Binary file
assets/fonts/option-tree-font.woff CHANGED
Binary file
assets/images/ot-dots.png DELETED
Binary file
assets/images/ot-menu-bg.png DELETED
Binary file
assets/images/ot-menu-top-bg.png DELETED
Binary file
assets/images/ot-select-hover-rtl.png ADDED
Binary file
assets/images/ot-select-hover.png CHANGED
Binary file
assets/images/ot-select-rtl.png ADDED
Binary file
assets/images/ot-select.png CHANGED
Binary file
assets/images/ot-sub-header-bg.png DELETED
Binary file
assets/images/ot-ui-light-sprite.png DELETED
Binary file
assets/images/ot-ui-sprite.png DELETED
Binary file
assets/js/ot-admin.js CHANGED
@@ -28,6 +28,7 @@
28
  this.fix_textarea();
29
  this.replicate_ajax();
30
  this.reset_settings();
 
31
  },
32
  init_hide_body: function(elm,type) {
33
  var css = '.option-tree-setting-body';
@@ -313,7 +314,7 @@
313
  $.each( conditions, function( index, condition ) {
314
 
315
  var target = $( '#setting_' + condition.check );
316
- var targetEl = !! target.length && target.find( 'select, input[type="radio"]:checked, input.ot-numeric-slider-hidden-input' ).first();
317
 
318
  if ( ! target.length || ( ! targetEl.length && condition.value.toString() != '' ) ) {
319
  return;
@@ -374,10 +375,10 @@
374
  });
375
  },
376
  init_conditions: function() {
377
- $( document ).on( 'change.conditionals', '.format-settings[id^="setting_"] select, .format-settings[id^="setting_"] input[type="radio"]:checked, .format-settings[id^="setting_"] input.ot-numeric-slider-hidden-input', function( e ) {
378
  OT_UI.parse_condition();
379
  });
380
- $(OT_UI.parse_condition());
381
  },
382
  init_upload: function() {
383
  $(document).on('click', '.ot_upload_media', function() {
@@ -400,7 +401,7 @@
400
  if ( mime.match(regex) ) {
401
  btnContent += '<div class="option-tree-ui-image-wrap"><img src="'+href+'" alt="" /></div>';
402
  }
403
- btnContent += '<a href="javascript:(void);" class="option-tree-ui-remove-media option-tree-ui-button red light" title="'+option_tree.remove_media_text+'"><span class="icon trash-can">'+option_tree.remove_media_text+'</span></a>';
404
  $('#'+field_id).val(href);
405
  $('#'+field_id+'_media').remove();
406
  $('#'+field_id).parent().parent('div').append('<div class="option-tree-ui-media-wrap" id="'+field_id+'_media" />');
@@ -429,7 +430,7 @@
429
  if (href.match(image) && OT_UI.url_exists(href)) {
430
  btnContent += '<div class="option-tree-ui-image-wrap"><img src="'+href+'" alt="" /></div>';
431
  }
432
- btnContent += '<a href="javascript:(void);" class="option-tree-ui-remove-media option-tree-ui-button red light" title="'+option_tree.remove_media_text+'"><span class="icon trash-can">'+option_tree.remove_media_text+'</span></a>';
433
  $('#'+field_id).val(href);
434
  $('#'+field_id+'_media').remove();
435
  $('#'+field_id).parent().parent('div').append('<div class="option-tree-ui-media-wrap" id="'+field_id+'_media" />');
@@ -471,7 +472,7 @@
471
  if (val.match(image)) {
472
  btnContent += '<div class="option-tree-ui-image-wrap"><img src="'+val+'" alt="" /></div>';
473
  }
474
- btnContent += '<a href="javascript:(void);" class="option-tree-ui-remove-media option-tree-ui-button red light" title="'+option_tree.remove_media_text+'"><span class="icon trash-can">'+option_tree.remove_media_text+'</span></a>';
475
  $('#'+id).val(val);
476
  $('#'+id+'_media').remove();
477
  $('#'+id).parent().parent('div').append('<div class="option-tree-ui-media-wrap" id="'+id+'_media" />');
@@ -498,7 +499,7 @@
498
  hidden.add(helper).val(ui.value);
499
  },
500
  change: function() {
501
- $(OT_UI.init_conditions());
502
  }
503
  });
504
  });
@@ -550,6 +551,20 @@
550
  bind_colorpicker: function(field_id) {
551
  $('#'+field_id).wpColorPicker();
552
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
553
  fix_upload_parent: function() {
554
  $('.option-tree-ui-upload-input').on('focus blur', function(){
555
  $(this).parent('.option-tree-ui-upload-parent').toggleClass('focus');
@@ -589,6 +604,23 @@
589
  event.preventDefault();
590
  });
591
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
592
  url_exists: function(url) {
593
  var link = document.createElement('a')
594
  link.href = url
@@ -656,9 +688,10 @@
656
  success: function(res) {
657
  parent.children('.ot-gallery-list').html(res)
658
  if ( $(elm).parent().children('.ot-gallery-delete').length <= 0 ) {
659
- $(elm).parent().append('<a href="#" class="option-tree-ui-button red hug-left ot-gallery-delete">' + option_tree.delete + '</a>')
660
  }
661
  $(elm).text(option_tree.edit)
 
662
  }
663
  })
664
  })
@@ -714,11 +747,12 @@
714
  , remove: function (elm) {
715
 
716
  if ( confirm( option_tree.confirm ) ) {
717
-
718
- $(elm).parents('.format-setting-inner').children('.ot-gallery-value').attr('value', ' ')
719
  $(elm).parents('.format-setting-inner').children('.ot-gallery-list').remove()
720
  $(elm).next('.ot-gallery-edit').text( option_tree.create )
721
  $(elm).remove()
 
722
 
723
  }
724
 
@@ -738,4 +772,118 @@
738
  ot_gallery.open($(this))
739
  })
740
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
741
  }(window.jQuery);
28
  this.fix_textarea();
29
  this.replicate_ajax();
30
  this.reset_settings();
31
+ this.css_editor_mode();
32
  },
33
  init_hide_body: function(elm,type) {
34
  var css = '.option-tree-setting-body';
314
  $.each( conditions, function( index, condition ) {
315
 
316
  var target = $( '#setting_' + condition.check );
317
+ var targetEl = !! target.length && target.find( 'select, input[type="radio"]:checked, input[type="text"], input[type="hidden"], input.ot-numeric-slider-hidden-input' ).first();
318
 
319
  if ( ! target.length || ( ! targetEl.length && condition.value.toString() != '' ) ) {
320
  return;
375
  });
376
  },
377
  init_conditions: function() {
378
+ $( document ).on( 'change.conditionals', '.format-settings[id^="setting_"] select, .format-settings[id^="setting_"] input[type="radio"]:checked, .format-settings[id^="setting_"] input[type="text"], .format-settings[id^="setting_"] input[type="hidden"], .format-settings[id^="setting_"] input.ot-numeric-slider-hidden-input', function( e ) {
379
  OT_UI.parse_condition();
380
  });
381
+ OT_UI.parse_condition();
382
  },
383
  init_upload: function() {
384
  $(document).on('click', '.ot_upload_media', function() {
401
  if ( mime.match(regex) ) {
402
  btnContent += '<div class="option-tree-ui-image-wrap"><img src="'+href+'" alt="" /></div>';
403
  }
404
+ btnContent += '<a href="javascript:(void);" class="option-tree-ui-remove-media option-tree-ui-button button button-secondary light" title="'+option_tree.remove_media_text+'"><span class="icon ot-icon-minus-sign"></span>'+option_tree.remove_media_text+'</a>';
405
  $('#'+field_id).val(href);
406
  $('#'+field_id+'_media').remove();
407
  $('#'+field_id).parent().parent('div').append('<div class="option-tree-ui-media-wrap" id="'+field_id+'_media" />');
430
  if (href.match(image) && OT_UI.url_exists(href)) {
431
  btnContent += '<div class="option-tree-ui-image-wrap"><img src="'+href+'" alt="" /></div>';
432
  }
433
+ btnContent += '<a href="javascript:(void);" class="option-tree-ui-remove-media option-tree-ui-button button button-secondary light" title="'+option_tree.remove_media_text+'"><span class="icon ot-icon-minus-sign"></span>'+option_tree.remove_media_text+'</a>';
434
  $('#'+field_id).val(href);
435
  $('#'+field_id+'_media').remove();
436
  $('#'+field_id).parent().parent('div').append('<div class="option-tree-ui-media-wrap" id="'+field_id+'_media" />');
472
  if (val.match(image)) {
473
  btnContent += '<div class="option-tree-ui-image-wrap"><img src="'+val+'" alt="" /></div>';
474
  }
475
+ btnContent += '<a href="javascript:(void);" class="option-tree-ui-remove-media option-tree-ui-button button button-secondary light" title="'+option_tree.remove_media_text+'"><span class="icon ot-icon-minus-sign">'+option_tree.remove_media_text+'</span></a>';
476
  $('#'+id).val(val);
477
  $('#'+id+'_media').remove();
478
  $('#'+id).parent().parent('div').append('<div class="option-tree-ui-media-wrap" id="'+id+'_media" />');
499
  hidden.add(helper).val(ui.value);
500
  },
501
  change: function() {
502
+ OT_UI.init_conditions();
503
  }
504
  });
505
  });
551
  bind_colorpicker: function(field_id) {
552
  $('#'+field_id).wpColorPicker();
553
  },
554
+ bind_date_picker: function(field_id) {
555
+ $('#'+field_id).datepicker({
556
+ showOtherMonths: true,
557
+ showButtonPanel: true,
558
+ currentText: option_tree.date_current,
559
+ closeText: option_tree.date_close
560
+ });
561
+ },
562
+ bind_date_time_picker: function(field_id) {
563
+ $('#'+field_id).datetimepicker({
564
+ showOtherMonths: true,
565
+ closeText: option_tree.date_close
566
+ });
567
+ },
568
  fix_upload_parent: function() {
569
  $('.option-tree-ui-upload-input').on('focus blur', function(){
570
  $(this).parent('.option-tree-ui-upload-parent').toggleClass('focus');
604
  event.preventDefault();
605
  });
606
  },
607
+ css_editor_mode: function() {
608
+ $('.ot-css-editor').each(function() {
609
+ var editor = ace.edit($(this).attr('id'));
610
+ var this_textarea = jQuery('#textarea_' + $(this).attr('id'));
611
+ editor.setTheme("ace/theme/chrome");
612
+ editor.getSession().setMode("ace/mode/css");
613
+ editor.setShowPrintMargin( false );
614
+
615
+ editor.getSession().setValue(this_textarea.val());
616
+ editor.getSession().on('change', function(){
617
+ this_textarea.val(editor.getSession().getValue());
618
+ });
619
+ this_textarea.on('change', function(){
620
+ editor.getSession().setValue(this_textarea.val());
621
+ });
622
+ });
623
+ },
624
  url_exists: function(url) {
625
  var link = document.createElement('a')
626
  link.href = url
688
  success: function(res) {
689
  parent.children('.ot-gallery-list').html(res)
690
  if ( $(elm).parent().children('.ot-gallery-delete').length <= 0 ) {
691
+ $(elm).parent().append('<a href="#" class="option-tree-ui-button button button-secondary hug-left ot-gallery-delete">' + option_tree.delete + '</a>')
692
  }
693
  $(elm).text(option_tree.edit)
694
+ OT_UI.init_conditions()
695
  }
696
  })
697
  })
747
  , remove: function (elm) {
748
 
749
  if ( confirm( option_tree.confirm ) ) {
750
+
751
+ $(elm).parents('.format-setting-inner').children('.ot-gallery-value').attr('value', '')
752
  $(elm).parents('.format-setting-inner').children('.ot-gallery-list').remove()
753
  $(elm).next('.ot-gallery-edit').text( option_tree.create )
754
  $(elm).remove()
755
+ OT_UI.init_conditions()
756
 
757
  }
758
 
772
  ot_gallery.open($(this))
773
  })
774
 
775
+ }(window.jQuery);
776
+
777
+ /*!
778
+ * Adds metabox tabs
779
+ */
780
+ !function ($) {
781
+
782
+ $(document).on('ready', function () {
783
+
784
+ // Loop over the metaboxes
785
+ $('.ot-metabox-wrapper').each( function() {
786
+
787
+ // Only if there is a tab option
788
+ if ( $(this).find('.type-tab').length ) {
789
+
790
+ // Add .ot-metabox-panels
791
+ $(this).find('.type-tab').parents('.ot-metabox-wrapper').wrapInner('<div class="ot-metabox-panels" />')
792
+
793
+ // Wrapp with .ot-metabox-tabs & add .ot-metabox-nav before .ot-metabox-panels
794
+ $(this).find('.ot-metabox-panels').wrap('<div class="ot-metabox-tabs" />').before('<ul class="ot-metabox-nav" />')
795
+
796
+ // Loop over settings and build the tabs nav
797
+ $(this).find('.format-settings').each( function() {
798
+
799
+ if ( $(this).find('.type-tab').length > 0 ) {
800
+ var title = $(this).find('.type-tab').prev().find('label').text()
801
+ , id = $(this).attr('id')
802
+
803
+ // Add a class, hide & append nav item
804
+ $(this).addClass('is-panel').hide()
805
+ $(this).parents('.ot-metabox-panels').prev('.ot-metabox-nav').append('<li><a href="#' + id + '">' + title + '</a></li>')
806
+
807
+ }
808
+
809
+ })
810
+
811
+ // Loop over the panels and wrap and ID them.
812
+ $(this).find('.is-panel').each( function() {
813
+ var id = $(this).attr('id')
814
+
815
+ $(this).add( $(this).nextUntil('.is-panel') ).wrapAll('<div id="' + id + '" class="tab-content" />')
816
+
817
+ })
818
+
819
+ // Create the tabs
820
+ $(this).find('.ot-metabox-tabs').tabs()
821
+
822
+ // Move the orphaned settings to the top
823
+ $(this).find('.ot-metabox-panels > .format-settings').prependTo($(this))
824
+
825
+ }
826
+
827
+ })
828
+
829
+ })
830
+
831
+ }(window.jQuery);
832
+
833
+ /*!
834
+ * Adds theme option tabs
835
+ */
836
+ !function ($) {
837
+
838
+ $(document).on('ready', function () {
839
+
840
+ // Loop over the theme options
841
+ $('#option-tree-settings-api .inside').each( function() {
842
+
843
+ // Only if there is a tab option
844
+ if ( $(this).find('.type-tab').length ) {
845
+
846
+ // Add .ot-theme-option-panels
847
+ $(this).find('.type-tab').parents('.inside').wrapInner('<div class="ot-theme-option-panels" />')
848
+
849
+ // Wrap with .ot-theme-option-tabs & add .ot-theme-option-nav before .ot-theme-option-panels
850
+ $(this).find('.ot-theme-option-panels').wrap('<div class="ot-theme-option-tabs" />').before('<ul class="ot-theme-option-nav" />')
851
+
852
+ // Loop over settings and build the tabs nav
853
+ $(this).find('.format-settings').each( function() {
854
+
855
+ if ( $(this).find('.type-tab').length > 0 ) {
856
+ var title = $(this).find('.type-tab').prev().find('.label').text()
857
+ , id = $(this).attr('id')
858
+
859
+ // Add a class, hide & append nav item
860
+ $(this).addClass('is-panel').hide()
861
+ $(this).parents('.ot-theme-option-panels').prev('.ot-theme-option-nav').append('<li><a href="#' + id + '">' + title + '</a></li>')
862
+
863
+ } else {
864
+
865
+ }
866
+
867
+ })
868
+
869
+ // Loop over the panels and wrap and ID them.
870
+ $(this).find('.is-panel').each( function() {
871
+ var id = $(this).attr('id')
872
+
873
+ $(this).add( $(this).nextUntil('.is-panel') ).wrapAll('<div id="' + id + '" class="tab-content" />')
874
+
875
+ })
876
+
877
+ // Create the tabs
878
+ $(this).find('.ot-theme-option-tabs').tabs()
879
+
880
+ // Move the orphaned settings to the top
881
+ $(this).find('.ot-theme-option-panels > .format-settings').prependTo($(this).find('.ot-theme-option-tabs'))
882
+
883
+ }
884
+
885
+ })
886
+
887
+ })
888
+
889
  }(window.jQuery);
assets/js/vendor/ace/ace.js ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ (function(){function o(e){var i=function(e,t){return r("",e,t)},s=t;e&&(t[e]||(t[e]={}),s=t[e]);if(!s.define||!s.define.packaged)n.original=s.define,s.define=n,s.define.packaged=!0;if(!s.require||!s.require.packaged)r.original=s.require,s.require=i,s.require.packaged=!0}var e="ace",t=function(){return this}();if(!e&&typeof requirejs!="undefined")return;var n=function(e,t,r){if(typeof e!="string"){n.original?n.original.apply(window,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(r=t),n.modules||(n.modules={},n.payloads={}),n.payloads[e]=r,n.modules[e]=null},r=function(e,t,n){if(Object.prototype.toString.call(t)==="[object Array]"){var i=[];for(var o=0,u=t.length;o<u;++o){var a=s(e,t[o]);if(!a&&r.original)return r.original.apply(window,arguments);i.push(a)}n&&n.apply(null,i)}else{if(typeof t=="string"){var f=s(e,t);return!f&&r.original?r.original.apply(window,arguments):(n&&n(),f)}if(r.original)return r.original.apply(window,arguments)}},i=function(e,t){if(t.indexOf("!")!==-1){var n=t.split("!");return i(e,n[0])+"!"+i(e,n[1])}if(t.charAt(0)=="."){var r=e.split("/").slice(0,-1).join("/");t=r+"/"+t;while(t.indexOf(".")!==-1&&s!=t){var s=t;t=t.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return t},s=function(e,t){t=i(e,t);var s=n.modules[t];if(!s){s=n.payloads[t];if(typeof s=="function"){var o={},u={id:t,uri:"",exports:o,packaged:!0},a=function(e,n){return r(t,e,n)},f=s(a,o,u);o=f||u.exports,n.modules[t]=o,delete n.payloads[t]}s=n.modules[t]=o||s}return s};o(e)})(),ace.define("ace/ace",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/dom","ace/lib/event","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/multi_select","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config"],function(e,t,n){e("./lib/fixoldbrowsers");var r=e("./lib/dom"),i=e("./lib/event"),s=e("./editor").Editor,o=e("./edit_session").EditSession,u=e("./undomanager").UndoManager,a=e("./virtual_renderer").VirtualRenderer,f=e("./multi_select").MultiSelect;e("./worker/worker_client"),e("./keyboard/hash_handler"),e("./placeholder"),e("./mode/folding/fold_mode"),e("./theme/textmate"),e("./ext/error_marker"),t.config=e("./config"),t.require=e,t.edit=function(e){if(typeof e=="string"){var n=e,e=document.getElementById(n);if(!e)throw new Error("ace.edit can't find div #"+n)}if(e.env&&e.env.editor instanceof s)return e.env.editor;var o=t.createEditSession(r.getInnerText(e));e.innerHTML="";var u=new s(new a(e));new f(u),u.setSession(o);var l={document:o,editor:u,onResize:u.resize.bind(u,null)};return i.addListener(window,"resize",l.onResize),u.on("destroy",function(){i.removeListener(window,"resize",l.onResize)}),e.env=u.env=l,u},t.createEditSession=function(e,t){var n=new o(e,t);return n.setUndoManager(new u),n},t.EditSession=o,t.UndoManager=u}),ace.define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/regexp","ace/lib/es5-shim"],function(e,t,n){e("./regexp"),e("./es5-shim")}),ace.define("ace/lib/regexp",["require","exports","module"],function(e,t,n){function o(e){return(e.global?"g":"")+(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.extended?"x":"")+(e.sticky?"y":"")}function u(e,t,n){if(Array.prototype.indexOf)return e.indexOf(t,n);for(var r=n||0;r<e.length;r++)if(e[r]===t)return r;return-1}var r={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},i=r.exec.call(/()??/,"")[1]===undefined,s=function(){var e=/^/g;return r.test.call(e,""),!e.lastIndex}();if(s&&i)return;RegExp.prototype.exec=function(e){var t=r.exec.apply(this,arguments),n,a;if(typeof e=="string"&&t){!i&&t.length>1&&u(t,"")>-1&&(a=RegExp(this.source,r.replace.call(o(this),"g","")),r.replace.call(e.slice(t.index),a,function(){for(var e=1;e<arguments.length-2;e++)arguments[e]===undefined&&(t[e]=undefined)}));if(this._xregexp&&this._xregexp.captureNames)for(var f=1;f<t.length;f++)n=this._xregexp.captureNames[f-1],n&&(t[n]=t[f]);!s&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--}return t},s||(RegExp.prototype.test=function(e){var t=r.exec.call(this,e);return t&&this.global&&!t[0].length&&this.lastIndex>t.index&&this.lastIndex--,!!t})}),ace.define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function w(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function H(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function B(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function j(e){var t,n,r;if(B(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(B(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(B(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(t){var n=this;if(typeof n!="function")throw new TypeError("Function.prototype.bind called on incompatible "+n);var i=u.call(arguments,1),s=function(){if(this instanceof s){var e=n.apply(this,i.concat(u.call(arguments)));return Object(e)===e?e:this}return n.apply(t,i.concat(u.call(arguments)))};return n.prototype&&(r.prototype=n.prototype,s.prototype=new r,r.prototype=null),s});var i=Function.prototype.call,s=Array.prototype,o=Object.prototype,u=s.slice,a=i.bind(o.toString),f=i.bind(o.hasOwnProperty),l,c,h,p,d;if(d=f(o,"__defineGetter__"))l=i.bind(o.__defineGetter__),c=i.bind(o.__defineSetter__),h=i.bind(o.__lookupGetter__),p=i.bind(o.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=u.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),a=e+o,f=a+s-o,l=n-a,c=n-o;if(f<a)for(var h=0;h<l;++h)this[f+h]=this[a+h];else if(f>a)for(h=l;h--;)this[f+h]=this[a+h];if(s&&e===c)this.length=c,this.push.apply(this,i);else{this.length=c+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var v=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?v.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(u.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(t){return a(t)=="[object Array]"});var m=Object("a"),g=m[0]!="a"||!(0 in m);Array.prototype.forEach||(Array.prototype.forEach=function(t){var n=F(this),r=g&&a(this)=="[object String]"?this.split(""):n,i=arguments[1],s=-1,o=r.length>>>0;if(a(t)!="[object Function]")throw new TypeError;while(++s<o)s in r&&t.call(i,r[s],s,n)}),Array.prototype.map||(Array.prototype.map=function(t){var n=F(this),r=g&&a(this)=="[object String]"?this.split(""):n,i=r.length>>>0,s=Array(i),o=arguments[1];if(a(t)!="[object Function]")throw new TypeError(t+" is not a function");for(var u=0;u<i;u++)u in r&&(s[u]=t.call(o,r[u],u,n));return s}),Array.prototype.filter||(Array.prototype.filter=function(t){var n=F(this),r=g&&a(this)=="[object String]"?this.split(""):n,i=r.length>>>0,s=[],o,u=arguments[1];if(a(t)!="[object Function]")throw new TypeError(t+" is not a function");for(var f=0;f<i;f++)f in r&&(o=r[f],t.call(u,o,f,n)&&s.push(o));return s}),Array.prototype.every||(Array.prototype.every=function(t){var n=F(this),r=g&&a(this)=="[object String]"?this.split(""):n,i=r.length>>>0,s=arguments[1];if(a(t)!="[object Function]")throw new TypeError(t+" is not a function");for(var o=0;o<i;o++)if(o in r&&!t.call(s,r[o],o,n))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(t){var n=F(this),r=g&&a(this)=="[object String]"?this.split(""):n,i=r.length>>>0,s=arguments[1];if(a(t)!="[object Function]")throw new TypeError(t+" is not a function");for(var o=0;o<i;o++)if(o in r&&t.call(s,r[o],o,n))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(t){var n=F(this),r=g&&a(this)=="[object String]"?this.split(""):n,i=r.length>>>0;if(a(t)!="[object Function]")throw new TypeError(t+" is not a function");if(!i&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var s=0,o;if(arguments.length>=2)o=arguments[1];else do{if(s in r){o=r[s++];break}if(++s>=i)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;s<i;s++)s in r&&(o=t.call(void 0,o,r[s],s,n));return o}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(t){var n=F(this),r=g&&a(this)=="[object String]"?this.split(""):n,i=r.length>>>0;if(a(t)!="[object Function]")throw new TypeError(t+" is not a function");if(!i&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var s,o=i-1;if(arguments.length>=2)s=arguments[1];else do{if(o in r){s=r[o--];break}if(--o<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do o in this&&(s=t.call(void 0,s,r[o],o,n));while(o--);return s});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(t){var n=g&&a(this)=="[object String]"?this.split(""):F(this),r=n.length>>>0;if(!r)return-1;var i=0;arguments.length>1&&(i=H(arguments[1])),i=i>=0?i:Math.max(0,r+i);for(;i<r;i++)if(i in n&&n[i]===t)return i;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(t){var n=g&&a(this)=="[object String]"?this.split(""):F(this),r=n.length>>>0;if(!r)return-1;var i=r-1;arguments.length>1&&(i=Math.min(i,H(arguments[1]))),i=i>=0?i:r-Math.abs(i);for(;i>=0;i--)if(i in n&&t===n[i])return i;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(t){return t.__proto__||(t.constructor?t.constructor.prototype:o)});if(!Object.getOwnPropertyDescriptor){var y="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(t,n){if(typeof t!="object"&&typeof t!="function"||t===null)throw new TypeError(y+t);if(!f(t,n))return;var r,i,s;r={enumerable:!0,configurable:!0};if(d){var u=t.__proto__;t.__proto__=o;var i=h(t,n),s=p(t,n);t.__proto__=u;if(i||s)return i&&(r.get=i),s&&(r.set=s),r}return r.value=t[n],r}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(t){return Object.keys(t)});if(!Object.create){var b;Object.prototype.__proto__===null?b=function(){return{__proto__:null}}:b=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(t,n){var r;if(t===null)r=b();else{if(typeof t!="object")throw new TypeError("typeof prototype["+typeof t+"] != 'object'");var i=function(){};i.prototype=t,r=new i,r.__proto__=t}return n!==void 0&&Object.defineProperties(r,n),r}}if(Object.defineProperty){var E=w({}),S=typeof document=="undefined"||w(document.createElement("div"));if(!E||!S)var x=Object.defineProperty}if(!Object.defineProperty||x){var T="Property description must be an object: ",N="Object.defineProperty called on non-object: ",C="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(t,n,r){if(typeof t!="object"&&typeof t!="function"||t===null)throw new TypeError(N+t);if(typeof r!="object"&&typeof r!="function"||r===null)throw new TypeError(T+r);if(x)try{return x.call(Object,t,n,r)}catch(i){}if(f(r,"value"))if(d&&(h(t,n)||p(t,n))){var s=t.__proto__;t.__proto__=o,delete t[n],t[n]=r.value,t.__proto__=s}else t[n]=r.value;else{if(!d)throw new TypeError(C);f(r,"get")&&l(t,n,r.get),f(r,"set")&&c(t,n,r.set)}return t}}Object.defineProperties||(Object.defineProperties=function(t,n){for(var r in n)f(n,r)&&Object.defineProperty(t,r,n[r]);return t}),Object.seal||(Object.seal=function(t){return t}),Object.freeze||(Object.freeze=function(t){return t});try{Object.freeze(function(){})}catch(k){Object.freeze=function(t){return function(n){return typeof n=="function"?n:t(n)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(t){return t}),Object.isSealed||(Object.isSealed=function(t){return!1}),Object.isFrozen||(Object.isFrozen=function(t){return!1}),Object.isExtensible||(Object.isExtensible=function(t){if(Object(t)===t)throw new TypeError;var n="";while(f(t,n))n+="?";t[n]=!0;var r=f(t,n);return delete t[n],r});if(!Object.keys){var L=!0,A=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],O=A.length;for(var M in{toString:null})L=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)f(e,t)&&I.push(t);if(L)for(var n=0,r=O;n<r;n++){var i=A[n];f(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var _=" \n\f\r   ᠎              \u2028\u2029";if(!String.prototype.trim||_.trim()){_="["+_+"]";var D=new RegExp("^"+_+_+"*"),P=new RegExp(_+_+"*$");String.prototype.trim=function(){return String(this).replace(D,"").replace(P,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),ace.define("ace/lib/dom",["require","exports","module"],function(e,t,n){if(typeof document=="undefined")return;var r="http://www.w3.org/1999/xhtml";t.getDocumentHead=function(e){return e||(e=document),e.head||e.getElementsByTagName("head")[0]||e.documentElement},t.createElement=function(e,t){return document.createElementNS?document.createElementNS(t||r,e):document.createElement(e)},t.hasCssClass=function(e,t){var n=e.className.split(/\s+/g);return n.indexOf(t)!==-1},t.addCssClass=function(e,n){t.hasCssClass(e,n)||(e.className+=" "+n)},t.removeCssClass=function(e,t){var n=e.className.split(/\s+/g);for(;;){var r=n.indexOf(t);if(r==-1)break;n.splice(r,1)}e.className=n.join(" ")},t.toggleCssClass=function(e,t){var n=e.className.split(/\s+/g),r=!0;for(;;){var i=n.indexOf(t);if(i==-1)break;r=!1,n.splice(i,1)}return r&&n.push(t),e.className=n.join(" "),r},t.setCssClass=function(e,n,r){r?t.addCssClass(e,n):t.removeCssClass(e,n)},t.hasCssString=function(e,t){var n=0,r;t=t||document;if(t.createStyleSheet&&(r=t.styleSheets)){while(n<r.length)if(r[n++].owningElement.id===e)return!0}else if(r=t.getElementsByTagName("style"))while(n<r.length)if(r[n++].id===e)return!0;return!1},t.importCssString=function(n,i,s){s=s||document;if(i&&t.hasCssString(i,s))return null;var o;s.createStyleSheet?(o=s.createStyleSheet(),o.cssText=n,i&&(o.owningElement.id=i)):(o=s.createElementNS?s.createElementNS(r,"style"):s.createElement("style"),o.appendChild(s.createTextNode(n)),i&&(o.id=i),t.getDocumentHead(s).appendChild(o))},t.importCssStylsheet=function(e,n){if(n.createStyleSheet)n.createStyleSheet(e);else{var r=t.createElement("link");r.rel="stylesheet",r.href=e,t.getDocumentHead(n).appendChild(r)}},t.getInnerWidth=function(e){return parseInt(t.computedStyle(e,"paddingLeft"),10)+parseInt(t.computedStyle(e,"paddingRight"),10)+e.clientWidth},t.getInnerHeight=function(e){return parseInt(t.computedStyle(e,"paddingTop"),10)+parseInt(t.computedStyle(e,"paddingBottom"),10)+e.clientHeight},window.pageYOffset!==undefined?(t.getPageScrollTop=function(){return window.pageYOffset},t.getPageScrollLeft=function(){return window.pageXOffset}):(t.getPageScrollTop=function(){return document.body.scrollTop},t.getPageScrollLeft=function(){return document.body.scrollLeft}),window.getComputedStyle?t.computedStyle=function(e,t){return t?(window.getComputedStyle(e,"")||{})[t]||"":window.getComputedStyle(e,"")||{}}:t.computedStyle=function(e,t){return t?e.currentStyle[t]:e.currentStyle},t.scrollbarWidth=function(e){var n=t.createElement("ace_inner");n.style.width="100%",n.style.minWidth="0px",n.style.height="200px",n.style.display="block";var r=t.createElement("ace_outer"),i=r.style;i.position="absolute",i.left="-10000px",i.overflow="hidden",i.width="200px",i.minWidth="0px",i.height="150px",i.display="block",r.appendChild(n);var s=e.documentElement;s.appendChild(r);var o=n.offsetWidth;i.overflow="scroll";var u=n.offsetWidth;return o==u&&(u=r.clientWidth),s.removeChild(r),o-u},t.setInnerHtml=function(e,t){var n=e.cloneNode(!1);return n.innerHTML=t,e.parentNode.replaceChild(n,e),n},"textContent"in document.documentElement?(t.setInnerText=function(e,t){e.textContent=t},t.getInnerText=function(e){return e.textContent}):(t.setInnerText=function(e,t){e.innerText=t},t.getInnerText=function(e){return e.innerText}),t.getParentWindow=function(e){return e.defaultView||e.parentWindow}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent","ace/lib/dom"],function(e,t,n){function o(e,t,n){var s=0;!i.isOpera||"KeyboardEvent"in window||!i.isMac?s=0|(t.ctrlKey?1:0)|(t.altKey?2:0)|(t.shiftKey?4:0)|(t.metaKey?8:0):s=0|(t.metaKey?1:0)|(t.altKey?2:0)|(t.shiftKey?4:0)|(t.ctrlKey?8:0);if(!i.isMac&&u){if(u[91]||u[92])s|=8;if(u.altGr){if((3&s)==3)return;u.altGr=0}if(n===18||n===17){var o=t.location||t.keyLocation;if(n===17&&o===1)a=t.timeStamp;else if(n===18&&s===3&&o===2){var f=-a;a=t.timeStamp,f+=a,f<3&&(u.altGr=!0)}}}if(n in r.MODIFIER_KEYS){switch(r.MODIFIER_KEYS[n]){case"Alt":s=2;break;case"Shift":s=4;break;case"Ctrl":s=1;break;default:s=8}n=0}s&8&&(n===91||n===93)&&(n=0);if(!s&&n===13)if(t.location||t.keyLocation===3){e(t,s,-n);if(t.defaultPrevented)return}return!!s||n in r.FUNCTION_KEYS||n in r.PRINTABLE_KEYS?e(t,s,n):!1}var r=e("./keys"),i=e("./useragent"),s=e("./dom");t.addListener=function(e,t,n){if(e.addEventListener)return e.addEventListener(t,n,!1);if(e.attachEvent){var r=function(){n.call(e,window.event)};n._wrapper=r,e.attachEvent("on"+t,r)}},t.removeListener=function(e,t,n){if(e.removeEventListener)return e.removeEventListener(t,n,!1);e.detachEvent&&e.detachEvent("on"+t,n._wrapper||n)},t.stopEvent=function(e){return t.stopPropagation(e),t.preventDefault(e),!1},t.stopPropagation=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0},t.preventDefault=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1},t.getButton=function(e){return e.type=="dblclick"?0:e.type=="contextmenu"||e.ctrlKey&&i.isMac?2:e.preventDefault?e.button:{1:0,2:2,4:1}[e.button]},t.capture=function(e,n,r){function i(e){n&&n(e),r&&r(e),t.removeListener(document,"mousemove",n,!0),t.removeListener(document,"mouseup",i,!0),t.removeListener(document,"dragstart",i,!0)}return t.addListener(document,"mousemove",n,!0),t.addListener(document,"mouseup",i,!0),t.addListener(document,"dragstart",i,!0),i},t.addMouseWheelListener=function(e,n){"onmousewheel"in e?t.addListener(e,"mousewheel",function(e){var t=8;e.wheelDeltaX!==undefined?(e.wheelX=-e.wheelDeltaX/t,e.wheelY=-e.wheelDeltaY/t):(e.wheelX=0,e.wheelY=-e.wheelDelta/t),n(e)}):"onwheel"in e?t.addListener(e,"wheel",function(e){var t=.35;switch(e.deltaMode){case e.DOM_DELTA_PIXEL:e.wheelX=e.deltaX*t||0,e.wheelY=e.deltaY*t||0;break;case e.DOM_DELTA_LINE:case e.DOM_DELTA_PAGE:e.wheelX=(e.deltaX||0)*5,e.wheelY=(e.deltaY||0)*5}n(e)}):t.addListener(e,"DOMMouseScroll",function(e){e.axis&&e.axis==e.HORIZONTAL_AXIS?(e.wheelX=(e.detail||0)*5,e.wheelY=0):(e.wheelX=0,e.wheelY=(e.detail||0)*5),n(e)})},t.addMultiMouseDownListener=function(e,n,r,s){var o=0,u,a,f,l={2:"dblclick",3:"tripleclick",4:"quadclick"};t.addListener(e,"mousedown",function(e){t.getButton(e)!=0?o=0:e.detail>1?(o++,o>4&&(o=1)):o=1;if(i.isIE){var n=Math.abs(e.clientX-u)>5||Math.abs(e.clientY-a)>5;n&&(o=1),o==1&&(u=e.clientX,a=e.clientY)}r[s]("mousedown",e);if(o>4)o=0;else if(o>1)return r[s](l[o],e)}),i.isOldIE&&t.addListener(e,"dblclick",function(e){o=2,f&&clearTimeout(f),f=setTimeout(function(){f=null},n[o-1]||600),r[s]("mousedown",e),r[s](l[o],e)})};var u=null,a=0;t.addCommandKeyListener=function(e,n){var r=t.addListener;if(i.isOldGecko||i.isOpera&&!("KeyboardEvent"in window)){var s=null;r(e,"keydown",function(e){s=e.keyCode}),r(e,"keypress",function(e){return o(n,e,s)})}else{var a=null;r(e,"keydown",function(e){u[e.keyCode]=!0;var t=o(n,e,e.keyCode);return a=e.defaultPrevented,t}),r(e,"keypress",function(e){a&&(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey)&&(t.stopEvent(e),a=null)}),r(e,"keyup",function(e){u[e.keyCode]=null}),u||(u=Object.create(null),r(window,"focus",function(e){u=Object.create(null)}))}};if(window.postMessage&&!i.isOldIE){var f=1;t.nextTick=function(e,n){n=n||window;var r="zero-timeout-message-"+f;t.addListener(n,"message",function i(s){s.data==r&&(t.stopPropagation(s),t.removeListener(n,"message",i),e())}),n.postMessage(r,"*")}}t.nextFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame,t.nextFrame?t.nextFrame=t.nextFrame.bind(window):t.nextFrame=function(e){setTimeout(e,17)}}),ace.define("ace/lib/keys",["require","exports","module","ace/lib/oop"],function(e,t,n){var r=e("./oop"),i=function(){var e={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,meta:8,command:8,cmd:8},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete",96:"Numpad0",97:"Numpad1",98:"Numpad2",99:"Numpad3",100:"Numpad4",101:"Numpad5",102:"Numpad6",103:"Numpad7",104:"Numpad8",105:"Numpad9","-13":"NumpadEnter",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",188:",",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"}};for(var t in e.FUNCTION_KEYS){var n=e.FUNCTION_KEYS[t].toLowerCase();e[n]=parseInt(t,10)}return r.mixin(e,e.MODIFIER_KEYS),r.mixin(e,e.PRINTABLE_KEYS),r.mixin(e,e.FUNCTION_KEYS),e.enter=e["return"],e.escape=e.esc,e.del=e["delete"],e[173]="-",e}();r.mixin(t,i),t.keyCodeToString=function(e){return(i[e]||String.fromCharCode(e)).toLowerCase()}}),ace.define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),ace.define("ace/lib/useragent",["require","exports","module"],function(e,t,n){t.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},t.getOS=function(){return t.isMac?t.OS.MAC:t.isLinux?t.OS.LINUX:t.OS.WINDOWS};if(typeof navigator!="object")return;var r=(navigator.platform.match(/mac|win|linux/i)||["other"])[0].toLowerCase(),i=navigator.userAgent;t.isWin=r=="win",t.isMac=r=="mac",t.isLinux=r=="linux",t.isIE=(navigator.appName=="Microsoft Internet Explorer"||navigator.appName.indexOf("MSAppHost")>=0)&&parseFloat(navigator.userAgent.match(/MSIE ([0-9]+[\.0-9]+)/)[1]),t.isOldIE=t.isIE&&t.isIE<9,t.isGecko=t.isMozilla=window.controllers&&window.navigator.product==="Gecko",t.isOldGecko=t.isGecko&&parseInt((navigator.userAgent.match(/rv\:(\d+)/)||[])[1],10)<4,t.isOpera=window.opera&&Object.prototype.toString.call(window.opera)=="[object Opera]",t.isWebKit=parseFloat(i.split("WebKit/")[1])||undefined,t.isChrome=parseFloat(i.split(" Chrome/")[1])||undefined,t.isAIR=i.indexOf("AdobeAIR")>=0,t.isIPad=i.indexOf("iPad")>=0,t.isTouchPad=i.indexOf("TouchPad")>=0}),ace.define("ace/editor",["require","exports","module","ace/lib/fixoldbrowsers","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/keyboard/textinput","ace/mouse/mouse_handler","ace/mouse/fold_handler","ace/keyboard/keybinding","ace/edit_session","ace/search","ace/range","ace/lib/event_emitter","ace/commands/command_manager","ace/commands/default_commands","ace/config"],function(e,t,n){e("./lib/fixoldbrowsers");var r=e("./lib/oop"),i=e("./lib/dom"),s=e("./lib/lang"),o=e("./lib/useragent"),u=e("./keyboard/textinput").TextInput,a=e("./mouse/mouse_handler").MouseHandler,f=e("./mouse/fold_handler").FoldHandler,l=e("./keyboard/keybinding").KeyBinding,c=e("./edit_session").EditSession,h=e("./search").Search,p=e("./range").Range,d=e("./lib/event_emitter").EventEmitter,v=e("./commands/command_manager").CommandManager,m=e("./commands/default_commands").commands,g=e("./config"),y=function(e,t){var n=e.getContainerElement();this.container=n,this.renderer=e,this.commands=new v(o.isMac?"mac":"win",m),this.textInput=new u(e.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.keyBinding=new l(this),this.$mouseHandler=new a(this),new f(this),this.$blockScrolling=0,this.$search=(new h).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=s.delayedCall(function(){this._signal("input",{}),this.session.bgTokenizer&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(e,t){t._$emitInputEvent.schedule(31)}),this.setSession(t||new c("")),g.resetOptions(this),g._emit("editor",this)};(function(){r.implement(this,d),this.$initOperationListeners=function(){function e(e){return e[e.length-1]}this.selections=[],this.commands.on("exec",function(t){this.startOperation(t);var n=t.command;if(n.aceCommandGroup=="fileJump"){var r=this.prevOp;if(!r||r.command.aceCommandGroup!="fileJump")this.lastFileJumpPos=e(this.selections)}else this.lastFileJumpPos=null}.bind(this),!0),this.commands.on("afterExec",function(e){var t=e.command;t.aceCommandGroup=="fileJump"&&this.lastFileJumpPos&&!this.curOp.selectionChanged&&this.selection.fromJSON(this.lastFileJumpPos),this.endOperation(e)}.bind(this),!0),this.$opResetTimer=s.delayedCall(this.endOperation.bind(this)),this.on("change",function(){this.curOp||this.startOperation(),this.curOp.docChanged=!0}.bind(this),!0),this.on("changeSelection",function(){this.curOp||this.startOperation(),this.curOp.selectionChanged=!0}.bind(this),!0)},this.curOp=null,this.prevOp={},this.startOperation=function(e){if(this.curOp){if(!e||this.curOp.command)return;this.prevOp=this.curOp}e||(this.previousCommand=null,e={}),this.$opResetTimer.schedule(),this.curOp={command:e.command||{},args:e.args,scrollTop:this.renderer.scrollTop};var t=this.curOp.command;t&&t.scrollIntoView&&this.$blockScrolling++,this.selections.push(this.selection.toJSON())},this.endOperation=function(){if(this.curOp){var e=this.curOp.command;if(e&&e.scrollIntoView){this.$blockScrolling--;switch(e.scrollIntoView){case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var t=this.selection.getRange(),n=this.renderer.layerConfig;(t.start.row>=n.lastRow||t.end.row<=n.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead);break;default:}e.scrollIntoView=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.prevOp=this.curOp,this.curOp=null}},this.$historyTracker=function(e){if(!this.$mergeUndoDeltas)return;var t=this.prevOp,n=["backspace","del","insertstring"],r=t.command&&e.command.name==t.command.name;if(e.command.name=="insertstring"){var i=e.args;this.mergeNextCommand===undefined&&(this.mergeNextCommand=!0),r=r&&this.mergeNextCommand&&(!/\s/.test(i)||/\s/.test(t.args)),this.mergeNextCommand=!0}else r=r&&n.indexOf(e.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(r=!1),r?this.session.mergeUndoDeltas=!0:n.indexOf(e.command.name)!==-1&&(this.sequenceStartTime=Date.now())},this.setKeyboardHandler=function(e){if(!e)this.keyBinding.setKeyboardHandler(null);else if(typeof e=="string"){this.$keybindingId=e;var t=this;g.loadModule(["keybinding",e],function(n){t.$keybindingId==e&&t.keyBinding.setKeyboardHandler(n&&n.handler)})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(e)},this.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},this.setSession=function(e){if(this.session==e)return;if(this.session){var t=this.session;this.session.removeEventListener("change",this.$onDocumentChange),this.session.removeEventListener("changeMode",this.$onChangeMode),this.session.removeEventListener("tokenizerUpdate",this.$onTokenizerUpdate),this.session.removeEventListener("changeTabSize",this.$onChangeTabSize),this.session.removeEventListener("changeWrapLimit",this.$onChangeWrapLimit),this.session.removeEventListener("changeWrapMode",this.$onChangeWrapMode),this.session.removeEventListener("onChangeFold",this.$onChangeFold),this.session.removeEventListener("changeFrontMarker",this.$onChangeFrontMarker),this.session.removeEventListener("changeBackMarker",this.$onChangeBackMarker),this.session.removeEventListener("changeBreakpoint",this.$onChangeBreakpoint),this.session.removeEventListener("changeAnnotation",this.$onChangeAnnotation),this.session.removeEventListener("changeOverwrite",this.$onCursorChange),this.session.removeEventListener("changeScrollTop",this.$onScrollTopChange),this.session.removeEventListener("changeScrollLeft",this.$onScrollLeftChange);var n=this.session.getSelection();n.removeEventListener("changeCursor",this.$onCursorChange),n.removeEventListener("changeSelection",this.$onSelectionChange)}this.session=e,this.$onDocumentChange=this.onDocumentChange.bind(this),e.addEventListener("change",this.$onDocumentChange),this.renderer.setSession(e),this.$onChangeMode=this.onChangeMode.bind(this),e.addEventListener("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),e.addEventListener("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),e.addEventListener("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),e.addEventListener("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),e.addEventListener("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),e.addEventListener("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.addEventListener("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.addEventListener("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.addEventListener("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.addEventListener("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.addEventListener("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.addEventListener("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.addEventListener("changeScrollLeft",this.$onScrollLeftChange),this.selection=e.getSelection(),this.selection.addEventListener("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.addEventListener("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.$blockScrolling+=1,this.onCursorChange(),this.$blockScrolling-=1,this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull(),this._emit("changeSession",{session:e,oldSession:t})},this.getSession=function(){return this.session},this.setValue=function(e,t){return this.session.doc.setValue(e),t?t==1?this.navigateFileEnd():t==-1&&this.navigateFileStart():this.selectAll(),e},this.getValue=function(){return this.session.getValue()},this.getSelection=function(){return this.selection},this.resize=function(e){this.renderer.onResize(e)},this.setTheme=function(e){this.renderer.setTheme(e)},this.getTheme=function(){return this.renderer.getTheme()},this.setStyle=function(e){this.renderer.setStyle(e)},this.unsetStyle=function(e){this.renderer.unsetStyle(e)},this.getFontSize=function(){return this.getOption("fontSize")||i.computedStyle(this.container,"fontSize")},this.setFontSize=function(e){this.setOption("fontSize",e)},this.$highlightBrackets=function(){this.session.$bracketHighlight&&(this.session.removeMarker(this.session.$bracketHighlight),this.session.$bracketHighlight=null);if(this.$highlightPending)return;var e=this;this.$highlightPending=!0,setTimeout(function(){e.$highlightPending=!1;var t=e.session.findMatchingBracket(e.getCursorPosition());if(t)var n=new p(t.row,t.column,t.row,t.column+1);else if(e.session.$mode.getMatching)var n=e.session.$mode.getMatching(e.session);n&&(e.session.$bracketHighlight=e.session.addMarker(n,"ace_bracket","text"))},50)},this.focus=function(){var e=this;setTimeout(function(){e.textInput.focus()}),this.textInput.focus()},this.isFocused=function(){return this.textInput.isFocused()},this.blur=function(){this.textInput.blur()},this.onFocus=function(){if(this.$isFocused)return;this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus")},this.onBlur=function(){if(!this.$isFocused)return;this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur")},this.$cursorChange=function(){this.renderer.updateCursor()},this.onDocumentChange=function(e){var t=e.data,n=t.range,r;n.start.row==n.end.row&&t.action!="insertLines"&&t.action!="removeLines"?r=n.end.row:r=Infinity,this.renderer.updateLines(n.start.row,r),this._emit("change",e),this.$cursorChange()},this.onTokenizerUpdate=function(e){var t=e.data;this.renderer.updateLines(t.first,t.last)},this.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},this.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},this.onCursorChange=function(){this.$cursorChange(),this.$blockScrolling||this.renderer.scrollCursorIntoView(),this.$highlightBrackets(),this.$updateHighlightActiveLine(),this._emit("changeSelection")},this.$updateHighlightActiveLine=function(){var e=this.getSession(),t;if(this.$highlightActiveLine){if(this.$selectionStyle!="line"||!this.selection.isMultiLine())t=this.getCursorPosition();this.renderer.$maxLines&&this.session.getLength()===1&&(t=!1)}if(e.$highlightLineMarker&&!t)e.removeMarker(e.$highlightLineMarker.id),e.$highlightLineMarker=null;else if(!e.$highlightLineMarker&&t){var n=new p(t.row,t.column,t.row,Infinity);n.id=e.addMarker(n,"ace_active-line","screenLine"),e.$highlightLineMarker=n}else t&&(e.$highlightLineMarker.start.row=t.row,e.$highlightLineMarker.end.row=t.row,e.$highlightLineMarker.start.column=t.column,e._emit("changeBackMarker"))},this.onSelectionChange=function(e){var t=this.session;t.$selectionMarker&&t.removeMarker(t.$selectionMarker),t.$selectionMarker=null;if(!this.selection.isEmpty()){var n=this.selection.getRange(),r=this.getSelectionStyle();t.$selectionMarker=t.addMarker(n,"ace_selection",r)}else this.$updateHighlightActiveLine();var i=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(i),this._emit("changeSelection")},this.$getSelectionHighLightRegexp=function(){var e=this.session,t=this.getSelectionRange();if(t.isEmpty()||t.isMultiLine())return;var n=t.start.column-1,r=t.end.column+1,i=e.getLine(t.start.row),s=i.length,o=i.substring(Math.max(n,0),Math.min(r,s));if(n>=0&&/^[\w\d]/.test(o)||r<=s&&/[\w\d]$/.test(o))return;o=i.substring(t.start.column,t.end.column);if(!/^[\w\d]+$/.test(o))return;var u=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:o});return u},this.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},this.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},this.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},this.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},this.onChangeMode=function(e){this.renderer.updateText(),this._emit("changeMode",e)},this.onChangeWrapLimit=function(){this.renderer.updateFull()},this.onChangeWrapMode=function(){this.renderer.onResize(!0)},this.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},this.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},this.getCopyText=function(){var e=this.getSelectedText();return this._signal("copy",e),e},this.onCopy=function(){this.commands.exec("copy",this)},this.onCut=function(){this.commands.exec("cut",this)},this.onPaste=function(e){if(this.$readOnly)return;this._emit("paste",e),this.insert(e)},this.execCommand=function(e,t){this.commands.exec(e,this,t)},this.insert=function(e){var t=this.session,n=t.getMode(),r=this.getCursorPosition();if(this.getBehavioursEnabled()){var i=n.transformAction(t.getState(r.row),"insertion",this,t,e);i&&(e!==i.text&&(this.session.mergeUndoDeltas=!1,this.$mergeNextCommand=!1),e=i.text)}e==" "&&(e=this.session.getTabString());if(!this.selection.isEmpty()){var s=this.getSelectionRange();r=this.session.remove(s),this.clearSelection()}else if(this.session.getOverwrite()){var s=new p.fromPoints(r,r);s.end.column+=e.length,this.session.remove(s)}if(e=="\n"||e=="\r\n"){var o=t.getLine(r.row);if(r.column>o.search(/\S|$/)){var u=o.substr(r.column).search(/\S|$/);t.doc.removeInLine(r.row,r.column,r.column+u)}}this.clearSelection();var a=r.column,f=t.getState(r.row),o=t.getLine(r.row),l=n.checkOutdent(f,o,e),c=t.insert(r,e);i&&i.selection&&(i.selection.length==2?this.selection.setSelectionRange(new p(r.row,a+i.selection[0],r.row,a+i.selection[1])):this.selection.setSelectionRange(new p(r.row+i.selection[0],i.selection[1],r.row+i.selection[2],i.selection[3])));if(t.getDocument().isNewLine(e)){var h=n.getNextLineIndent(f,o.slice(0,r.column),t.getTabString());t.insert({row:r.row+1,column:0},h)}l&&n.autoOutdent(f,t,r.row)},this.onTextInput=function(e){this.keyBinding.onTextInput(e)},this.onCommandKey=function(e,t,n){this.keyBinding.onCommandKey(e,t,n)},this.setOverwrite=function(e){this.session.setOverwrite(e)},this.getOverwrite=function(){return this.session.getOverwrite()},this.toggleOverwrite=function(){this.session.toggleOverwrite()},this.setScrollSpeed=function(e){this.setOption("scrollSpeed",e)},this.getScrollSpeed=function(){return this.getOption("scrollSpeed")},this.setDragDelay=function(e){this.setOption("dragDelay",e)},this.getDragDelay=function(){return this.getOption("dragDelay")},this.setSelectionStyle=function(e){this.setOption("selectionStyle",e)},this.getSelectionStyle=function(){return this.getOption("selectionStyle")},this.setHighlightActiveLine=function(e){this.setOption("highlightActiveLine",e)},this.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.setHighlightSelectedWord=function(e){this.setOption("highlightSelectedWord",e)},this.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},this.setAnimatedScroll=function(e){this.renderer.setAnimatedScroll(e)},this.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},this.setShowInvisibles=function(e){this.renderer.setShowInvisibles(e)},this.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},this.setDisplayIndentGuides=function(e){this.renderer.setDisplayIndentGuides(e)},this.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},this.setShowPrintMargin=function(e){this.renderer.setShowPrintMargin(e)},this.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},this.setPrintMarginColumn=function(e){this.renderer.setPrintMarginColumn(e)},this.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},this.setReadOnly=function(e){this.setOption("readOnly",e)},this.getReadOnly=function(){return this.getOption("readOnly")},this.setBehavioursEnabled=function(e){this.setOption("behavioursEnabled",e)},this.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},this.setWrapBehavioursEnabled=function(e){this.setOption("wrapBehavioursEnabled",e)},this.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},this.setShowFoldWidgets=function(e){this.setOption("showFoldWidgets",e)},this.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.remove=function(e){this.selection.isEmpty()&&(e=="left"?this.selection.selectLeft():this.selection.selectRight());var t=this.getSelectionRange();if(this.getBehavioursEnabled()){var n=this.session,r=n.getState(t.start.row),i=n.getMode().transformAction(r,"deletion",this,n,t);if(t.end.column===0){var s=n.getTextRange(t);if(s[s.length-1]=="\n"){var o=n.getLine(t.end.row);/^\s+$/.test(o)&&(t.end.column=o.length)}}i&&(t=i)}this.session.remove(t),this.clearSelection()},this.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.session.remove(this.getSelectionRange()),this.clearSelection()},this.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var e=this.getSelectionRange();e.start.column==e.end.column&&e.start.row==e.end.row&&(e.end.column=0,e.end.row++),this.session.remove(e),this.clearSelection()},this.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var e=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(e)},this.transposeLetters=function(){if(!this.selection.isEmpty())return;var e=this.getCursorPosition(),t=e.column;if(t===0)return;var n=this.session.getLine(e.row),r,i;t<n.length?(r=n.charAt(t)+n.charAt(t-1),i=new p(e.row,t-1,e.row,t+1)):(r=n.charAt(t-1)+n.charAt(t-2),i=new p(e.row,t-2,e.row,t)),this.session.replace(i,r)},this.toLowerCase=function(){var e=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var t=this.getSelectionRange(),n=this.session.getTextRange(t);this.session.replace(t,n.toLowerCase()),this.selection.setSelectionRange(e)},this.toUpperCase=function(){var e=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var t=this.getSelectionRange(),n=this.session.getTextRange(t);this.session.replace(t,n.toUpperCase()),this.selection.setSelectionRange(e)},this.indent=function(){var e=this.session,t=this.getSelectionRange();if(t.start.row<t.end.row){var n=this.$getSelectedRows();e.indentRows(n.first,n.last," ");return}if(t.start.column<t.end.column){var r=e.getTextRange(t);if(!/^\s+$/.test(r)){var n=this.$getSelectedRows();e.indentRows(n.first,n.last," ");return}}var i=e.getLine(t.start.row),o=t.start,u=e.getTabSize(),a=e.documentToScreenColumn(o.row,o.column);if(this.session.getUseSoftTabs())var f=u-a%u,l=s.stringRepeat(" ",f);else{var f=a%u;while(i[t.start.column]==" "&&f)t.start.column--,f--;this.selection.setSelectionRange(t),l=" "}return this.insert(l)},this.blockIndent=function(){var e=this.$getSelectedRows();this.session.indentRows(e.first,e.last," ")},this.blockOutdent=function(){var e=this.session.getSelection();this.session.outdentRows(e.getRange())},this.sortLines=function(){var e=this.$getSelectedRows(),t=this.session,n=[];for(i=e.first;i<=e.last;i++)n.push(t.getLine(i));n.sort(function(e,t){return e.toLowerCase()<t.toLowerCase()?-1:e.toLowerCase()>t.toLowerCase()?1:0});var r=new p(0,0,0,0);for(var i=e.first;i<=e.last;i++){var s=t.getLine(i);r.start.row=i,r.end.row=i,r.end.column=s.length,t.replace(r,n[i-e.first])}},this.toggleCommentLines=function(){var e=this.session.getState(this.getCursorPosition().row),t=this.$getSelectedRows();this.session.getMode().toggleCommentLines(e,this.session,t.first,t.last)},this.toggleBlockComment=function(){var e=this.getCursorPosition(),t=this.session.getState(e.row),n=this.getSelectionRange();this.session.getMode().toggleBlockComment(t,this.session,n,e)},this.getNumberAt=function(e,t){var n=/[\-]?[0-9]+(?:\.[0-9]+)?/g;n.lastIndex=0;var r=this.session.getLine(e);while(n.lastIndex<t){var i=n.exec(r);if(i.index<=t&&i.index+i[0].length>=t){var s={value:i[0],start:i.index,end:i.index+i[0].length};return s}}return null},this.modifyNumber=function(e){var t=this.selection.getCursor().row,n=this.selection.getCursor().column,r=new p(t,n-1,t,n),i=this.session.getTextRange(r);if(!isNaN(parseFloat(i))&&isFinite(i)){var s=this.getNumberAt(t,n);if(s){var o=s.value.indexOf(".")>=0?s.start+s.value.indexOf(".")+1:s.end,u=s.start+s.value.length-o,a=parseFloat(s.value);a*=Math.pow(10,u),o!==s.end&&n<o?e*=Math.pow(10,s.end-n-1):e*=Math.pow(10,s.end-n),a+=e,a/=Math.pow(10,u);var f=a.toFixed(u),l=new p(t,s.start,t,s.end);this.session.replace(l,f),this.moveCursorTo(t,Math.max(s.start+1,n+f.length-s.value.length))}}},this.removeLines=function(){var e=this.$getSelectedRows(),t;e.first===0||e.last+1<this.session.getLength()?t=new p(e.first,0,e.last+1,0):t=new p(e.first-1,this.session.getLine(e.first-1).length,e.last,this.session.getLine(e.last).length),this.session.remove(t),this.clearSelection()},this.duplicateSelection=function(){var e=this.selection,t=this.session,n=e.getRange(),r=e.isBackwards();if(n.isEmpty()){var i=n.start.row;t.duplicateLines(i,i)}else{var s=r?n.start:n.end,o=t.insert(s,t.getTextRange(n),!1);n.start=s,n.end=o,e.setSelectionRange(n,r)}},this.moveLinesDown=function(){this.$moveLines(function(e,t){return this.session.moveLinesDown(e,t)})},this.moveLinesUp=function(){this.$moveLines(function(e,t){return this.session.moveLinesUp(e,t)})},this.moveText=function(e,t,n){return this.session.moveText(e,t,n)},this.copyLinesUp=function(){this.$moveLines(function(e,t){return this.session.duplicateLines(e,t),0})},this.copyLinesDown=function(){this.$moveLines(function(e,t){return this.session.duplicateLines(e,t)})},this.$moveLines=function(e){var t=this.selection;if(!t.inMultiSelectMode||this.inVirtualSelectionMode){var n=t.toOrientedRange(),r=this.$getSelectedRows(n),i=e.call(this,r.first,r.last);n.moveBy(i,0),t.fromOrientedRange(n)}else{var s=t.rangeList.ranges;t.rangeList.detach(this.session);for(var o=s.length;o--;){var u=o,r=s[o].collapseRows(),a=r.end.row,f=r.start.row;while(o--){r=s[o].collapseRows();if(!(f-r.end.row<=1))break;f=r.end.row}o++;var i=e.call(this,f,a);while(u>=o)s[u].moveBy(i,0),u--}t.fromOrientedRange(t.ranges[0]),t.rangeList.attach(this.session)}},this.$getSelectedRows=function(){var e=this.getSelectionRange().collapseRows();return{first:this.session.getRowFoldStart(e.start.row),last:this.session.getRowFoldEnd(e.end.row)}},this.onCompositionStart=function(e){this.renderer.showComposition(this.getCursorPosition())},this.onCompositionUpdate=function(e){this.renderer.setCompositionText(e)},this.onCompositionEnd=function(){this.renderer.hideComposition()},this.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},this.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},this.isRowVisible=function(e){return e>=this.getFirstVisibleRow()&&e<=this.getLastVisibleRow()},this.isRowFullyVisible=function(e){return e>=this.renderer.getFirstFullyVisibleRow()&&e<=this.renderer.getLastFullyVisibleRow()},this.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},this.$moveByPage=function(e,t){var n=this.renderer,r=this.renderer.layerConfig,i=e*Math.floor(r.height/r.lineHeight);this.$blockScrolling++,t===!0?this.selection.$moveSelection(function(){this.moveCursorBy(i,0)}):t===!1&&(this.selection.moveCursorBy(i,0),this.selection.clearSelection()),this.$blockScrolling--;var s=n.scrollTop;n.scrollBy(0,i*r.lineHeight),t!=null&&n.scrollCursorIntoView(null,.5),n.animateScrolling(s)},this.selectPageDown=function(){this.$moveByPage(1,!0)},this.selectPageUp=function(){this.$moveByPage(-1,!0)},this.gotoPageDown=function(){this.$moveByPage(1,!1)},this.gotoPageUp=function(){this.$moveByPage(-1,!1)},this.scrollPageDown=function(){this.$moveByPage(1)},this.scrollPageUp=function(){this.$moveByPage(-1)},this.scrollToRow=function(e){this.renderer.scrollToRow(e)},this.scrollToLine=function(e,t,n,r){this.renderer.scrollToLine(e,t,n,r)},this.centerSelection=function(){var e=this.getSelectionRange(),t={row:Math.floor(e.start.row+(e.end.row-e.start.row)/2),column:Math.floor(e.start.column+(e.end.column-e.start.column)/2)};this.renderer.alignCursor(t,.5)},this.getCursorPosition=function(){return this.selection.getCursor()},this.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},this.getSelectionRange=function(){return this.selection.getRange()},this.selectAll=function(){this.$blockScrolling+=1,this.selection.selectAll(),this.$blockScrolling-=1},this.clearSelection=function(){this.selection.clearSelection()},this.moveCursorTo=function(e,t){this.selection.moveCursorTo(e,t)},this.moveCursorToPosition=function(e){this.selection.moveCursorToPosition(e)},this.jumpToMatching=function(e){var t=this.getCursorPosition(),n=this.session.getBracketRange(t);if(!n){n=this.find({needle:/[{}()\[\]]/g,preventScroll:!0,start:{row:t.row,column:t.column-1}});if(!n)return;var r=n.start;r.row==t.row&&Math.abs(r.column-t.column)<2&&(n=this.session.getBracketRange(r))}r=n&&n.cursor||r,r&&(e?n&&n.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo(r.row,r.column):(this.clearSelection(),this.moveCursorTo(r.row,r.column)))},this.gotoLine=function(e,t,n){this.selection.clearSelection(),this.session.unfold({row:e-1,column:t||0}),this.$blockScrolling+=1,this.exitMultiSelectMode&&this.exitMultiSelectMode(),this.moveCursorTo(e-1,t||0),this.$blockScrolling-=1,this.isRowFullyVisible(e-1)||this.scrollToLine(e-1,!0,n)},this.navigateTo=function(e,t){this.clearSelection(),this.moveCursorTo(e,t)},this.navigateUp=function(e){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection(),e=e||1,this.selection.moveCursorBy(-e,0)},this.navigateDown=function(e){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var t=this.selection.anchor.getPosition();return this.moveCursorToPosition(t)}this.selection.clearSelection(),e=e||1,this.selection.moveCursorBy(e,0)},this.navigateLeft=function(e){if(!this.selection.isEmpty()){var t=this.getSelectionRange().start;this.moveCursorToPosition(t)}else{e=e||1;while(e--)this.selection.moveCursorLeft()}this.clearSelection()},this.navigateRight=function(e){if(!this.selection.isEmpty()){var t=this.getSelectionRange().end;this.moveCursorToPosition(t)}else{e=e||1;while(e--)this.selection.moveCursorRight()}this.clearSelection()},this.navigateLineStart=function(){this.selection.moveCursorLineStart(),this.clearSelection()},this.navigateLineEnd=function(){this.selection.moveCursorLineEnd(),this.clearSelection()},this.navigateFileEnd=function(){this.selection.moveCursorFileEnd(),this.clearSelection()},this.navigateFileStart=function(){this.selection.moveCursorFileStart(),this.clearSelection()},this.navigateWordRight=function(){this.selection.moveCursorWordRight(),this.clearSelection()},this.navigateWordLeft=function(){this.selection.moveCursorWordLeft(),this.clearSelection()},this.replace=function(e,t){t&&this.$search.set(t);var n=this.$search.find(this.session),r=0;return n?(this.$tryReplace(n,e)&&(r=1),n!==null&&(this.selection.setSelectionRange(n),this.renderer.scrollSelectionIntoView(n.start,n.end)),r):r},this.replaceAll=function(e,t){t&&this.$search.set(t);var n=this.$search.findAll(this.session),r=0;if(!n.length)return r;this.$blockScrolling+=1;var i=this.getSelectionRange();this.clearSelection(),this.selection.moveCursorTo(0,0);for(var s=n.length-1;s>=0;--s)this.$tryReplace(n[s],e)&&r++;return this.selection.setSelectionRange(i),this.$blockScrolling-=1,r},this.$tryReplace=function(e,t){var n=this.session.getTextRange(e);return t=this.$search.replace(n,t),t!==null?(e.end=this.session.replace(e,t),e):null},this.getLastSearchOptions=function(){return this.$search.getOptions()},this.find=function(e,t,n){t||(t={}),typeof e=="string"||e instanceof RegExp?t.needle=e:typeof e=="object"&&r.mixin(t,e);var i=this.selection.getRange();t.needle==null&&(e=this.session.getTextRange(i)||this.$search.$options.needle,e||(i=this.session.getWordRange(i.start.row,i.start.column),e=this.session.getTextRange(i)),this.$search.set({needle:e})),this.$search.set(t),t.start||this.$search.set({start:i});var s=this.$search.find(this.session);if(t.preventScroll)return s;if(s)return this.revealRange(s,n),s;t.backwards?i.start=i.end:i.end=i.start,this.selection.setRange(i)},this.findNext=function(e,t){this.find({skipCurrent:!0,backwards:!1},e,t)},this.findPrevious=function(e,t){this.find(e,{skipCurrent:!0,backwards:!0},t)},this.revealRange=function(e,t){this.$blockScrolling+=1,this.session.unfold(e),this.selection.setSelectionRange(e),this.$blockScrolling-=1;var n=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(e.start,e.end,.5),t!==!1&&this.renderer.animateScrolling(n)},this.undo=function(){this.$blockScrolling++,this.session.getUndoManager().undo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.redo=function(){this.$blockScrolling++,this.session.getUndoManager().redo(),this.$blockScrolling--,this.renderer.scrollCursorIntoView(null,.5)},this.destroy=function(){this.renderer.destroy(),this._emit("destroy",this)},this.setAutoScrollEditorIntoView=function(e){if(e===!1)return;var t,n=this,r=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var i=this.$scrollAnchor;i.style.cssText="position:absolute",this.container.insertBefore(i,this.container.firstChild);var s=this.on("changeSelection",function(){r=!0}),o=this.renderer.on("beforeRender",function(){r&&(t=n.renderer.container.getBoundingClientRect())}),u=this.renderer.on("afterRender",function(){if(r&&t&&n.isFocused()){var e=n.renderer,s=e.$cursorLayer.$pixelPos,o=e.layerConfig,u=s.top-o.offset;s.top>=0&&u+t.top<0?r=!0:s.top<o.height&&s.top+t.top+o.lineHeight>window.innerHeight?r=!1:r=null,r!=null&&(i.style.top=u+"px",i.style.left=s.left+"px",i.style.height=o.lineHeight+"px",i.scrollIntoView(r)),r=t=null}});this.setAutoScrollEditorIntoView=function(e){if(e===!0)return;delete this.setAutoScrollEditorIntoView,this.removeEventListener("changeSelection",s),this.renderer.removeEventListener("afterRender",u),this.renderer.removeEventListener("beforeRender",o)}},this.$resetCursorStyle=function(){var e=this.$cursorStyle||"ace",t=this.renderer.$cursorLayer;if(!t)return;t.setSmoothBlinking(e=="smooth"),t.isBlinking=!this.$readOnly&&e!="wide"}}).call(y.prototype),g.defineOptions(y.prototype,"editor",{selectionStyle:{set:function(e){this.onSelectionChange(),this._emit("changeSelectionStyle",{data:e})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(e){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(e){this.textInput.setReadOnly(e),this.$resetCursorStyle()},initialValue:!1},cursorStyle:{set:function(e){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",showGutter:"renderer",displayIndentGuides:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimout:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",tabSize:"session",wrap:"session",foldStyle:"session",mode:"session"}),t.Editor=y}),ace.define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object"||!e)return e;var n=e.constructor;if(n===RegExp)return e;var r=n();for(var i in e)typeof e[i]=="object"?r[i]=t.deepCopy(e[i]):r[i]=e[i];return r},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r.isPending=function(){return t},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n==null&&(n=setTimeout(r,e||t))};return i.delay=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)},i.schedule=i,i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/lib/dom","ace/lib/lang"],function(e,t,n){var r=e("../lib/event"),i=e("../lib/useragent"),s=e("../lib/dom"),o=e("../lib/lang"),u=i.isChrome<18,a=function(e,t){function b(e){if(h)return;if(k)t=0,r=e?0:n.value.length-1;else var t=e?2:1,r=2;try{n.setSelectionRange(t,r)}catch(i){}}function w(){if(h)return;n.value=a,i.isWebKit&&y.schedule()}function F(){setTimeout(function(){p&&(n.style.cssText=p,p=""),t.renderer.$keepTextAreaAtCursor==null&&(t.renderer.$keepTextAreaAtCursor=!0,t.renderer.$moveTextAreaToCursor())},0)}var n=s.createElement("textarea");n.className="ace_text-input",i.isTouchPad&&n.setAttribute("x-palm-disable-auto-cap",!0),n.wrap="off",n.autocorrect="off",n.autocapitalize="off",n.spellcheck=!1,n.style.opacity="0",e.insertBefore(n,e.firstChild);var a="",f=!1,l=!1,c=!1,h=!1,p="",d=!0;try{var v=document.activeElement===n}catch(m){}r.addListener(n,"blur",function(){t.onBlur(),v=!1}),r.addListener(n,"focus",function(){v=!0,t.onFocus(),b()}),this.focus=function(){n.focus()},this.blur=function(){n.blur()},this.isFocused=function(){return v};var g=o.delayedCall(function(){v&&b(d)}),y=o.delayedCall(function(){h||(n.value=a,v&&b())});i.isWebKit||t.addEventListener("changeSelection",function(){t.selection.isEmpty()!=d&&(d=!d,g.schedule())}),w(),v&&t.onFocus();var E=function(e){return e.selectionStart===0&&e.selectionEnd===e.value.length};!n.setSelectionRange&&n.createTextRange&&(n.setSelectionRange=function(e,t){var n=this.createTextRange();n.collapse(!0),n.moveStart("character",e),n.moveEnd("character",t),n.select()},E=function(e){try{var t=e.ownerDocument.selection.createRange()}catch(n){}return!t||t.parentElement()!=e?!1:t.text==e.value});if(i.isOldIE){var S=!1,x=function(e){if(S)return;var t=n.value;if(h||!t||t==a)return;if(e&&t==a[0])return T.schedule();A(t),S=!0,w(),S=!1},T=o.delayedCall(x);r.addListener(n,"propertychange",x);var N={13:1,27:1};r.addListener(n,"keyup",function(e){h&&(!n.value||N[e.keyCode])&&setTimeout(B,0);if((n.value.charCodeAt(0)||0)<129)return T.call();h?H():P()}),r.addListener(n,"keydown",function(e){T.schedule(50)})}var C=function(e){f?f=!1:l?l=!1:E(n)?(t.selectAll(),b()):k&&b(t.selection.isEmpty())},k=null;this.setInputHandler=function(e){k=e},this.getInputHandler=function(){return k};var L=!1,A=function(e){k&&(e=k(e),k=null),c?(b(),e&&t.onPaste(e),c=!1):e==a.charAt(0)?L?t.execCommand("del",{source:"ace"}):t.execCommand("backspace",{source:"ace"}):(e.substring(0,2)==a?e=e.substr(2):e.charAt(0)==a.charAt(0)?e=e.substr(1):e.charAt(e.length-1)==a.charAt(0)&&(e=e.slice(0,-1)),e.charAt(e.length-1)==a.charAt(0)&&(e=e.slice(0,-1)),e&&t.onTextInput(e)),L&&(L=!1)},O=function(e){if(h)return;var t=n.value;A(t),w()},M=function(e){var i=t.getCopyText();if(!i){r.preventDefault(e);return}var s=e.clipboardData||window.clipboardData;if(s&&!u){var o=s.setData("Text",i);o&&(t.onCut(),r.preventDefault(e))}o||(f=!0,n.value=i,n.select(),setTimeout(function(){f=!1,w(),b(),t.onCut()}))},_=function(e){var i=t.getCopyText();if(!i){r.preventDefault(e);return}var s=e.clipboardData||window.clipboardData;if(s&&!u){var o=s.setData("Text",i);o&&(t.onCopy(),r.preventDefault(e))}o||(l=!0,n.value=i,n.select(),setTimeout(function(){l=!1,w(),b(),t.onCopy()}))},D=function(e){var s=e.clipboardData||window.clipboardData;if(s){var o=s.getData("Text");o&&t.onPaste(o),i.isIE&&setTimeout(b),r.preventDefault(e)}else n.value="",c=!0};r.addCommandKeyListener(n,t.onCommandKey.bind(t)),r.addListener(n,"select",C),r.addListener(n,"input",O),r.addListener(n,"cut",M),r.addListener(n,"copy",_),r.addListener(n,"paste",D),(!("oncut"in n)||!("oncopy"in n)||!("onpaste"in n))&&r.addListener(e,"keydown",function(e){if(i.isMac&&!e.metaKey||!e.ctrlKey)return;switch(e.keyCode){case 67:_(e);break;case 86:D(e);break;case 88:M(e)}});var P=function(e){if(h)return;h={},t.onCompositionStart(),setTimeout(H,0),t.on("mousedown",B),t.selection.isEmpty()||(t.insert(""),t.session.markUndoGroup(),t.selection.clearSelection()),t.session.markUndoGroup()},H=function(){if(!h)return;var e=n.value.replace(/\x01/g,"");if(h.lastValue===e)return;t.onCompositionUpdate(e),h.lastValue&&t.undo(),h.lastValue=e;if(h.lastValue){var r=t.selection.getRange();t.insert(h.lastValue),t.session.markUndoGroup(),h.range=t.selection.getRange(),t.selection.setRange(r),t.selection.clearSelection()}},B=function(e){var r=h;h=!1;var i=setTimeout(function(){i=null;var e=n.value.replace(/\x01/g,"");if(h)return;e==r.lastValue?w():!r.lastValue&&e&&(w(),A(e))});k=function(n){return i&&clearTimeout(i),n=n.replace(/\x01/g,""),n==r.lastValue?"":(r.lastValue&&i&&t.undo(),n)},t.onCompositionEnd(),t.removeListener("mousedown",B),e.type=="compositionend"&&r.range&&t.selection.setRange(r.range)},j=o.delayedCall(H,50);r.addListener(n,"compositionstart",P),i.isGecko?r.addListener(n,"text",function(){j.schedule()}):(r.addListener(n,"keyup",function(){j.schedule()}),r.addListener(n,"keydown",function(){j.schedule()})),r.addListener(n,"compositionend",B),this.getElement=function(){return n},this.setReadOnly=function(e){n.readOnly=e},this.onContextMenu=function(e){L=!0,p||(p=n.style.cssText),n.style.cssText="z-index:100000;"+(i.isIE?"opacity:0.1;":""),b(t.selection.isEmpty()),t._emit("nativecontextmenu",{target:t,domEvent:e});var o=t.container.getBoundingClientRect(),u=s.computedStyle(t.container),a=o.top+(parseInt(u.borderTopWidth)||0),f=o.left+(parseInt(o.borderLeftWidth)||0),l=o.bottom-a-n.clientHeight,c=function(e){n.style.left=e.clientX-f-2+"px",n.style.top=Math.min(e.clientY-a-2,l)+"px"};c(e);if(e.type!="mousedown")return;t.renderer.$keepTextAreaAtCursor&&(t.renderer.$keepTextAreaAtCursor=null),i.isWin&&r.capture(t.container,c,F)},this.onContextMenuClose=F;if(!i.isGecko||i.isMac){var I=function(e){t.textInput.onContextMenu(e),F()};r.addListener(t.renderer.scroller,"contextmenu",I),r.addListener(n,"contextmenu",I)}};t.TextInput=a}),ace.define("ace/mouse/mouse_handler",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/mouse/default_handlers","ace/mouse/default_gutter_handler","ace/mouse/mouse_event","ace/mouse/dragdrop_handler","ace/config"],function(e,t,n){var r=e("../lib/event"),i=e("../lib/useragent"),s=e("./default_handlers").DefaultHandlers,o=e("./default_gutter_handler").GutterHandler,u=e("./mouse_event").MouseEvent,a=e("./dragdrop_handler").DragdropHandler,f=e("../config"),l=function(e){this.editor=e,new s(this),new o(this),new a(this);var t=e.renderer.getMouseEventTarget();r.addListener(t,"click",this.onMouseEvent.bind(this,"click")),r.addListener(t,"mousemove",this.onMouseMove.bind(this,"mousemove")),r.addMultiMouseDownListener(t,[300,300,250],this,"onMouseEvent"),e.renderer.scrollBarV&&(r.addMultiMouseDownListener(e.renderer.scrollBarV.inner,[300,300,250],this,"onMouseEvent"),r.addMultiMouseDownListener(e.renderer.scrollBarH.inner,[300,300,250],this,"onMouseEvent")),r.addMouseWheelListener(e.container,this.onMouseWheel.bind(this,"mousewheel"));var n=e.renderer.$gutter;r.addListener(n,"mousedown",this.onMouseEvent.bind(this,"guttermousedown")),r.addListener(n,"click",this.onMouseEvent.bind(this,"gutterclick")),r.addListener(n,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick")),r.addListener(n,"mousemove",this.onMouseEvent.bind(this,"guttermousemove")),r.addListener(t,"mousedown",function(t){e.focus()}),r.addListener(n,"mousedown",function(t){return e.focus(),r.preventDefault(t)})};(function(){this.onMouseEvent=function(e,t){this.editor._emit(e,new u(t,this.editor))},this.onMouseMove=function(e,t){var n=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;if(!n||!n.length)return;this.editor._emit(e,new u(t,this.editor))},this.onMouseWheel=function(e,t){var n=new u(t,this.editor);n.speed=this.$scrollSpeed*2,n.wheelX=t.wheelX,n.wheelY=t.wheelY,this.editor._emit(e,n)},this.setState=function(e){this.state=e},this.captureMouse=function(e,t){this.x=e.x,this.y=e.y,this.isMousePressed=!0;var n=this.editor.renderer;n.$keepTextAreaAtCursor&&(n.$keepTextAreaAtCursor=null);var s=this,o=function(e){s.x=e.clientX,s.y=e.clientY,t&&t(e),s.mouseEvent=new u(e,s.editor),s.$mouseMoved=!0},a=function(e){clearInterval(l),f(),s[s.state+"End"]&&s[s.state+"End"](e),s.$clickSelection=null,n.$keepTextAreaAtCursor==null&&(n.$keepTextAreaAtCursor=!0,n.$moveTextAreaToCursor()),s.isMousePressed=!1,s.$onCaptureMouseMove=s.releaseMouse=null,s.onMouseEvent("mouseup",e)},f=function(){s[s.state]&&s[s.state](),s.$mouseMoved=!1};if(i.isOldIE&&e.domEvent.type=="dblclick")return setTimeout(function(){a(e)});s.$onCaptureMouseMove=o,s.releaseMouse=r.capture(this.editor.container,o,a);var l=setInterval(f,20)},this.releaseMouse=null}).call(l.prototype),f.defineOptions(l.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:150},dragEnabled:{initialValue:!0},focusTimout:{initialValue:0}}),t.MouseHandler=l}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,n){function u(e){e.$clickSelection=null;var t=e.editor;t.setDefaultHandler("mousedown",this.onMouseDown.bind(e)),t.setDefaultHandler("dblclick",this.onDoubleClick.bind(e)),t.setDefaultHandler("tripleclick",this.onTripleClick.bind(e)),t.setDefaultHandler("quadclick",this.onQuadClick.bind(e)),t.setDefaultHandler("mousewheel",this.onMouseWheel.bind(e));var n=["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"];n.forEach(function(t){e[t]=this[t]},this),e.selectByLines=this.extendSelectionBy.bind(e,"getLineRange"),e.selectByWords=this.extendSelectionBy.bind(e,"getWordRange")}function a(e,t,n,r){return Math.sqrt(Math.pow(n-e,2)+Math.pow(r-t,2))}function f(e,t){if(e.start.row==e.end.row)var n=2*t.column-e.start.column-e.end.column;else if(e.start.row==e.end.row-1&&!e.start.column&&!e.end.column)var n=t.column-4;else var n=2*t.row-e.start.row-e.end.row;return n<0?{cursor:e.start,anchor:e.end}:{cursor:e.end,anchor:e.start}}var r=e("../lib/dom"),i=e("../lib/event"),s=e("../lib/useragent"),o=0;(function(){this.onMouseDown=function(e){var t=e.inSelection(),n=e.getDocumentPosition();this.mousedownEvent=e;var r=this.editor,i=e.getButton();if(i!==0){var s=r.getSelectionRange(),o=s.isEmpty();o&&(r.moveCursorToPosition(n),r.selection.clearSelection()),r.textInput.onContextMenu(e.domEvent);return}if(t&&!r.isFocused()){r.focus();if(this.$focusTimout&&!this.$clickSelection&&!r.inMultiSelectMode){this.mousedownEvent.time=Date.now(),this.setState("focusWait"),this.captureMouse(e);return}}return!t||this.$clickSelection||e.getShiftKey()||r.inMultiSelectMode?this.startSelect(n):t&&(this.mousedownEvent.time=Date.now(),this.startSelect(n)),this.captureMouse(e),e.preventDefault()},this.startSelect=function(e){e=e||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var t=this.editor,n=this.mousedownEvent.getShiftKey();n?t.selection.selectToPosition(e):this.$clickSelection||(t.moveCursorToPosition(e),t.selection.clearSelection()),t.renderer.scroller.setCapture&&t.renderer.scroller.setCapture(),t.setStyle("ace_selecting"),this.setState("select")},this.select=function(){var e,t=this.editor,n=t.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var r=this.$clickSelection.comparePoint(n);if(r==-1)e=this.$clickSelection.end;else if(r==1)e=this.$clickSelection.start;else{var i=f(this.$clickSelection,n);n=i.cursor,e=i.anchor}t.selection.setSelectionAnchor(e.row,e.column)}t.selection.selectToPosition(n),t.renderer.scrollCursorIntoView()},this.extendSelectionBy=function(e){var t,n=this.editor,r=n.renderer.screenToTextCoordinates(this.x,this.y),i=n.selection[e](r.row,r.column);if(this.$clickSelection){var s=this.$clickSelection.comparePoint(i.start),o=this.$clickSelection.comparePoint(i.end);if(s==-1&&o<=0){t=this.$clickSelection.end;if(i.end.row!=r.row||i.end.column!=r.column)r=i.start}else if(o==1&&s>=0){t=this.$clickSelection.start;if(i.start.row!=r.row||i.start.column!=r.column)r=i.end}else if(s==-1&&o==1)r=i.end,t=i.start;else{var u=f(this.$clickSelection,r);r=u.cursor,t=u.anchor}n.selection.setSelectionAnchor(t.row,t.column)}n.selection.selectToPosition(r),n.renderer.scrollCursorIntoView()},this.selectEnd=this.selectAllEnd=this.selectByWordsEnd=this.selectByLinesEnd=function(){this.editor.unsetStyle("ace_selecting"),this.editor.renderer.scroller.releaseCapture&&this.editor.renderer.scroller.releaseCapture()},this.focusWait=function(){var e=a(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),t=Date.now();(e>o||t-this.mousedownEvent.time>this.$focusTimout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},this.onDoubleClick=function(e){var t=e.getDocumentPosition(),n=this.editor,r=n.session,i=r.getBracketRange(t);i?(i.isEmpty()&&(i.start.column--,i.end.column++),this.setState("select")):(i=n.selection.getWordRange(t.row,t.column),this.setState("selectByWords")),this.$clickSelection=i,this[this.state]&&this[this.state](e)},this.onTripleClick=function(e){var t=e.getDocumentPosition(),n=this.editor;this.setState("selectByLines"),this.$clickSelection=n.selection.getLineRange(t.row),this[this.state]&&this[this.state](e)},this.onQuadClick=function(e){var t=this.editor;t.selectAll(),this.$clickSelection=t.getSelectionRange(),this.setState("selectAll")},this.onMouseWheel=function(e){if(e.getShiftKey()||e.getAccelKey())return;var t=e.domEvent.timeStamp,n=t-(this.$lastScrollTime||0),r=this.editor,i=r.renderer.isScrollableBy(e.wheelX*e.speed,e.wheelY*e.speed);if(i||n<200)return this.$lastScrollTime=t,r.renderer.scrollBy(e.wheelX*e.speed,e.wheelY*e.speed),e.stop()}}).call(u.prototype),t.DefaultHandlers=u}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/event"],function(e,t,n){function s(e){function f(){u=r.createElement("div"),u.className="ace_gutter-tooltip",u.style.display="none",t.container.appendChild(u)}function l(){u||f();var e=o.getDocumentPosition().row,r=n.$annotations[e];if(!r)return c();var i=t.session.getLength();if(e==i){var s=t.renderer.pixelToScreenCoordinates(0,o.y).row,l=o.$pos;if(s>t.session.documentToScreenRow(l.row,l.column))return c()}if(a==r)return;a=r.text.join("<br/>"),u.style.display="block",u.innerHTML=a,t.on("mousewheel",c),h(o)}function c(){s&&(s=clearTimeout(s)),a&&(u.style.display="none",a=null,t.removeEventListener("mousewheel",c))}function h(e){var n=t.renderer.$gutter.getBoundingClientRect();u.style.left=e.x+15+"px";if(e.y+3*t.renderer.lineHeight+15<n.bottom)u.style.bottom="",u.style.top=e.y+15+"px";else{u.style.top="";var r=window.innerHeight||document.documentElement.clientHeight;u.style.bottom=r-e.y+5+"px"}}var t=e.editor,n=t.renderer.$gutterLayer;e.editor.setDefaultHandler("guttermousedown",function(r){if(!t.isFocused()||r.getButton()!=0)return;var i=n.getRegion(r);if(i=="foldWidgets")return;var s=r.getDocumentPosition().row,o=t.session.selection;if(r.getShiftKey())o.selectTo(s,0);else{if(r.domEvent.detail==2)return t.selectAll(),r.preventDefault();e.$clickSelection=t.selection.getLineRange(s)}return e.setState("selectByLines"),e.captureMouse(r),r.preventDefault()});var s,o,u,a;e.editor.setDefaultHandler("guttermousemove",function(t){var n=t.domEvent.target||t.domEvent.srcElement;if(r.hasCssClass(n,"ace_fold-widget"))return c();a&&h(t),o=t;if(s)return;s=setTimeout(function(){s=null,o&&!e.isMousePressed?l():c()},50)}),i.addListener(t.renderer.$gutter,"mouseout",function(e){o=null;if(!a||s)return;s=setTimeout(function(){s=null,c()},50)}),t.on("changeSession",c)}var r=e("../lib/dom"),i=e("../lib/event");t.GutterHandler=s}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,t,n){var r=e("../lib/event"),i=e("../lib/useragent"),s=t.MouseEvent=function(e,t){this.domEvent=e,this.editor=t,this.x=this.clientX=e.clientX,this.y=this.clientY=e.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1};(function(){this.stopPropagation=function(){r.stopPropagation(this.domEvent),this.propagationStopped=!0},this.preventDefault=function(){r.preventDefault(this.domEvent),this.defaultPrevented=!0},this.stop=function(){this.stopPropagation(),this.preventDefault()},this.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},this.inSelection=function(){if(this.$inSelection!==null)return this.$inSelection;var e=this.editor,t=e.getSelectionRange();if(t.isEmpty())this.$inSelection=!1;else{var n=this.getDocumentPosition();this.$inSelection=t.contains(n.row,n.column)}return this.$inSelection},this.getButton=function(){return r.getButton(this.domEvent)},this.getShiftKey=function(){return this.domEvent.shiftKey},this.getAccelKey=i.isMac?function(){return this.domEvent.metaKey}:function(){return this.domEvent.ctrlKey}}).call(s.prototype)}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,t,n){function f(e){function T(e,n){var r=Date.now(),i=!n||e.row!=n.row,s=!n||e.column!=n.column;if(!S||i||s)t.$blockScrolling+=1,t.moveCursorToPosition(e),t.$blockScrolling-=1,S=r,x={x:p,y:d};else{var o=l(x.x,x.y,p,d);o>a?S=null:r-S>=u&&(t.renderer.scrollCursorIntoView(),S=null)}}function N(e,n){var r=Date.now(),i=t.renderer.layerConfig.lineHeight,s=t.renderer.layerConfig.characterWidth,u=t.renderer.scroller.getBoundingClientRect(),a={x:{left:p-u.left,right:u.right-p},y:{top:d-u.top,bottom:u.bottom-d}},f=Math.min(a.x.left,a.x.right),l=Math.min(a.y.top,a.y.bottom),c={row:e.row,column:e.column};f/s<=2&&(c.column+=a.x.left<a.x.right?-3:2),l/i<=1&&(c.row+=a.y.top<a.y.bottom?-1:1);var h=e.row!=c.row,v=e.column!=c.column,m=!n||e.row!=n.row;h||v&&!m?E?r-E>=o&&t.renderer.scrollCursorIntoView(c):E=r:E=null}function C(){var e=g;g=t.renderer.screenToTextCoordinates(p,d),T(g,e),N(g,e)}function k(){m=t.selection.toOrientedRange(),h=t.session.addMarker(m,"ace_selection",t.getSelectionStyle()),t.clearSelection(),t.isFocused()&&t.renderer.$cursorLayer.setBlinking(!1),clearInterval(v),v=setInterval(C,20),y=0,i.addListener(document,"mousemove",O)}function L(){clearInterval(v),t.session.removeMarker(h),h=null,t.$blockScrolling+=1,t.selection.fromOrientedRange(m),t.$blockScrolling-=1,t.isFocused()&&!w&&t.renderer.$cursorLayer.setBlinking(!t.getReadOnly()),m=null,y=0,E=null,S=null,i.removeListener(document,"mousemove",O)}function O(){A==null&&(A=setTimeout(function(){A!=null&&h&&L()},20))}function M(e){var t=e.types;return!t||Array.prototype.some.call(t,function(e){return e=="text/plain"||e=="Text"})}function _(e){var t=["copy","copymove","all","uninitialized"],n=["move","copymove","linkmove","all","uninitialized"],r=s.isMac?e.altKey:e.ctrlKey,i="uninitialized";try{i=e.dataTransfer.effectAllowed.toLowerCase()}catch(e){}var o="none";return r&&t.indexOf(i)>=0?o="copy":n.indexOf(i)>=0?o="move":t.indexOf(i)>=0&&(o="copy"),o}var t=e.editor,n=r.createElement("img");n.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",s.isOpera&&(n.style.cssText="width:1px;height:1px;position:fixed;top:0;left:0;z-index:2147483647;opacity:0;");var f=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];f.forEach(function(t){e[t]=this[t]},this),t.addEventListener("mousedown",this.onMouseDown.bind(e));var c=t.container,h,p,d,v,m,g,y=0,b,w,E,S,x;this.onDragStart=function(e){if(this.cancelDrag||!c.draggable){var r=this;return setTimeout(function(){r.startSelect(),r.captureMouse(e)},0),e.preventDefault()}m=t.getSelectionRange();var i=e.dataTransfer;i.effectAllowed=t.getReadOnly()?"copy":"copyMove",s.isOpera&&(t.container.appendChild(n),n._top=n.offsetTop),i.setDragImage&&i.setDragImage(n,0,0),s.isOpera&&t.container.removeChild(n),i.clearData(),i.setData("Text",t.session.getTextRange()),w=!0,this.setState("drag")},this.onDragEnd=function(e){c.draggable=!1,w=!1,this.setState(null);if(!t.getReadOnly()){var n=e.dataTransfer.dropEffect;!b&&n=="move"&&t.session.remove(t.getSelectionRange()),t.renderer.$cursorLayer.setBlinking(!0)}this.editor.unsetStyle("ace_dragging")},this.onDragEnter=function(e){if(t.getReadOnly()||!M(e.dataTransfer))return;return h||k(),y++,e.dataTransfer.dropEffect=b=_(e),i.preventDefault(e)},this.onDragOver=function(e){if(t.getReadOnly()||!M(e.dataTransfer))return;return h||(k(),y++),A!==null&&(A=null),p=e.clientX,d=e.clientY,e.dataTransfer.dropEffect=b=_(e),i.preventDefault(e)},this.onDragLeave=function(e){y--;if(y<=0&&h)return L(),b=null,i.preventDefault(e)},this.onDrop=function(e){if(!h)return;var n=e.dataTransfer;if(w)switch(b){case"move":m.contains(g.row,g.column)?m={start:g,end:g}:m=t.moveText(m,g);break;case"copy":m=t.moveText(m,g,!0)}else{var r=n.getData("Text");m={start:g,end:t.session.insert(g,r)},t.focus(),b=null}return L(),i.preventDefault(e)},i.addListener(c,"dragstart",this.onDragStart.bind(e)),i.addListener(c,"dragend",this.onDragEnd.bind(e)),i.addListener(c,"dragenter",this.onDragEnter.bind(e)),i.addListener(c,"dragover",this.onDragOver.bind(e)),i.addListener(c,"dragleave",this.onDragLeave.bind(e)),i.addListener(c,"drop",this.onDrop.bind(e));var A=null}function l(e,t,n,r){return Math.sqrt(Math.pow(n-e,2)+Math.pow(r-t,2))}var r=e("../lib/dom"),i=e("../lib/event"),s=e("../lib/useragent"),o=200,u=200,a=5;(function(){this.dragWait=function(){var e=Date.now()-this.mousedownEvent.time;e>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var e=this.editor.container;e.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(e){this.editor.renderer.$cursorLayer.setBlinking(!this.editor.getReadOnly()),this.editor.unsetStyle("ace_dragging"),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var e=this.editor.container;e.draggable=!0,this.editor.renderer.$cursorLayer.setBlinking(!1),this.editor.setStyle("ace_dragging"),this.setState("dragReady")},this.onMouseDrag=function(e){var t=this.editor.container;if(s.isIE&&this.state=="dragReady"){var n=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>3&&t.dragDrop()}if(this.state==="dragWait"){var n=l(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);n>0&&(t.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(e){if(!this.$dragEnabled)return;this.mousedownEvent=e;var t=this.editor,n=e.inSelection(),r=e.getButton(),i=e.domEvent.detail||1;if(i===1&&r===0&&n){if(e.editor.inMultiSelectMode&&(e.getAccelKey()||e.getShiftKey()))return;this.mousedownEvent.time=Date.now();var o=e.domEvent.target||e.domEvent.srcElement;"unselectable"in o&&(o.unselectable="on");if(t.getDragDelay()){if(s.isWebKit){this.cancelDrag=!0;var u=t.container;u.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(e,this.onMouseDrag.bind(this)),e.defaultPrevented=!0}}}).call(f.prototype),t.DragdropHandler=f}),ace.define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/lib/net","ace/lib/event_emitter"],function(e,t,n){"no use strict";function f(e){return e.replace(/-(.)/g,function(e,t){return t.toUpperCase()})}var r=e("./lib/lang"),i=e("./lib/oop"),s=e("./lib/net"),o=e("./lib/event_emitter").EventEmitter,u=function(){return this}(),a={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{}};t.get=function(e){if(!a.hasOwnProperty(e))throw new Error("Unknown config key: "+e);return a[e]},t.set=function(e,t){if(!a.hasOwnProperty(e))throw new Error("Unknown config key: "+e);a[e]=t},t.all=function(){return r.copyObject(a)},i.implement(t,o),t.moduleUrl=function(e,t){if(a.$moduleUrls[e])return a.$moduleUrls[e];var n=e.split("/");t=t||n[n.length-2]||"";var r=t=="snippets"?"/":"-",i=n[n.length-1];if(r=="-"){var s=new RegExp("^"+t+"[\\-_]|[\\-_]"+t+"$","g");i=i.replace(s,"")}(!i||i==t)&&n.length>1&&(i=n[n.length-2]);var o=a[t+"Path"];return o==null?o=a.basePath:r=="/"&&(t=r=""),o&&o.slice(-1)!="/"&&(o+="/"),o+t+r+i+this.get("suffix")},t.setModuleUrl=function(e,t){return a.$moduleUrls[e]=t},t.$loading={},t.loadModule=function(n,r){var i,o;Array.isArray(n)&&(o=n[0],n=n[1]);try{i=e(n)}catch(u){}if(i&&!t.$loading[n])return r&&r(i);t.$loading[n]||(t.$loading[n]=[]),t.$loading[n].push(r);if(t.$loading[n].length>1)return;var a=function(){e([n],function(e){t._emit("load.module",{name:n,module:e});var r=t.$loading[n];t.$loading[n]=null,r.forEach(function(t){t&&t(e)})})};if(!t.get("packaged"))return a();s.loadScript(t.moduleUrl(n,o),a)},t.init=function(){a.packaged=e.packaged||n.packaged||u.define&&define.packaged;if(!u.document)return"";var r={},i="",s=document.getElementsByTagName("script");for(var o=0;o<s.length;o++){var l=s[o],c=l.src||l.getAttribute("src");if(!c)continue;var h=l.attributes;for(var p=0,d=h.length;p<d;p++){var v=h[p];v.name.indexOf("data-ace-")===0&&(r[f(v.name.replace(/^data-ace-/,""))]=v.value)}var m=c.match(/^(.*)\/ace(\-\w+)?\.js(\?|$)/);m&&(i=m[1])}i&&(r.base=r.base||i,r.packaged=!0),r.basePath=r.base,r.workerPath=r.workerPath||r.base,r.modePath=r.modePath||r.base,r.themePath=r.themePath||r.base,delete r.base;for(var g in r)typeof r[g]!="undefined"&&t.set(g,r[g])};var l={setOptions:function(e){Object.keys(e).forEach(function(t){this.setOption(t,e[t])},this)},getOptions:function(e){var t={};return e?Array.isArray(e)||(t=e,e=Object.keys(t)):e=Object.keys(this.$options),e.forEach(function(e){t[e]=this.getOption(e)},this),t},setOption:function(e,t){if(this["$"+e]===t)return;var n=this.$options[e];if(!n)return typeof console!="undefined"&&console.warn&&console.warn('misspelled option "'+e+'"'),undefined;if(n.forwardTo)return this[n.forwardTo]&&this[n.forwardTo].setOption(e,t);n.handlesSet||(this["$"+e]=t),n&&n.set&&n.set.call(this,t)},getOption:function(e){var t=this.$options[e];return t?t.forwardTo?this[t.forwardTo]&&this[t.forwardTo].getOption(e):t&&t.get?t.get.call(this):this["$"+e]:(typeof console!="undefined"&&console.warn&&console.warn('misspelled option "'+e+'"'),undefined)}},c={};t.defineOptions=function(e,t,n){return e.$options||(c[t]=e.$options={}),Object.keys(n).forEach(function(t){var r=n[t];typeof r=="string"&&(r={forwardTo:r}),r.name||(r.name=t),e.$options[r.name]=r,"initialValue"in r&&(e["$"+r.name]=r.initialValue)}),i.implement(e,l),this},t.resetOptions=function(e){Object.keys(e.$options).forEach(function(t){var n=e.$options[t];"value"in n&&e.setOption(t,n.value)})},t.setDefaultValue=function(e,n,r){var i=c[e]||(c[e]={});i[n]&&(i.forwardTo?t.setDefaultValue(i.forwardTo,n,r):i[n].value=r)},t.setDefaultValues=function(e,n){Object.keys(n).forEach(function(r){t.setDefaultValue(e,r,n[r])})}}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,t,n){var r=e("./dom");t.get=function(e,t){var n=new XMLHttpRequest;n.open("GET",e,!0),n.onreadystatechange=function(){n.readyState===4&&t(n.responseText)},n.send(null)},t.loadScript=function(e,t){var n=r.getDocumentHead(),i=document.createElement("script");i.src=e,n.appendChild(i),i.onload=i.onreadystatechange=function(e,n){if(n||!i.readyState||i.readyState=="loaded"||i.readyState=="complete")i=i.onload=i.onreadystatechange=null,n||t()}}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;n=n.slice();for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){var n=this._defaultHandlers;n||(n=this._defaultHandlers={_disabled_:{}});if(n[e]){var r=n[e],i=n._disabled_[e];i||(n._disabled_[e]=i=[]),i.push(r);var s=i.indexOf(t);s!=-1&&i.splice(s,1)}n[e]=t},r.removeDefaultHandler=function(e,t){var n=this._defaultHandlers;if(!n)return;var r=n._disabled_[e];if(n[e]==t){var i=n[e];r&&this.setDefaultHandler(e,r.pop())}else if(r){var s=r.indexOf(t);s!=-1&&r.splice(s,1)}},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),ace.define("ace/mouse/fold_handler",["require","exports","module"],function(e,t,n){function r(e){e.on("click",function(t){var n=t.getDocumentPosition(),r=e.session,i=r.getFoldAt(n.row,n.column,1);i&&(t.getAccelKey()?r.removeFold(i):r.expandFold(i),t.stop())}),e.on("gutterclick",function(t){var n=e.renderer.$gutterLayer.getRegion(t);if(n=="foldWidgets"){var r=t.getDocumentPosition().row,i=e.session;i.foldWidgets&&i.foldWidgets[r]&&e.session.onFoldWidgetClick(r,t),e.isFocused()||e.focus(),t.stop()}}),e.on("gutterdblclick",function(t){var n=e.renderer.$gutterLayer.getRegion(t);if(n=="foldWidgets"){var r=t.getDocumentPosition().row,i=e.session,s=i.getParentFoldRangeData(r,!0),o=s.range||s.firstRange;if(o){r=o.start.row;var u=i.getFoldAt(r,i.getLine(r).length,1);u?i.removeFold(u):(i.addFold("...",o),e.renderer.scrollCursorIntoView({row:o.start.row,column:0}))}t.stop()}})}t.FoldHandler=r}),ace.define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(e,t,n){var r=e("../lib/keys"),i=e("../lib/event"),s=function(e){this.$editor=e,this.$data={},this.$handlers=[],this.setDefaultHandler(e.commands)};(function(){this.setDefaultHandler=function(e){this.removeKeyboardHandler(this.$defaultHandler),this.$defaultHandler=e,this.addKeyboardHandler(e,0),this.$data={editor:this.$editor}},this.setKeyboardHandler=function(e){var t=this.$handlers;if(t[t.length-1]==e)return;while(t[t.length-1]&&t[t.length-1]!=this.$defaultHandler)this.removeKeyboardHandler(t[t.length-1]);this.addKeyboardHandler(e,1)},this.addKeyboardHandler=function(e,t){if(!e)return;var n=this.$handlers.indexOf(e);n!=-1&&this.$handlers.splice(n,1),t==undefined?this.$handlers.push(e):this.$handlers.splice(t,0,e),n==-1&&e.attach&&e.attach(this.$editor)},this.removeKeyboardHandler=function(e){var t=this.$handlers.indexOf(e);return t==-1?!1:(this.$handlers.splice(t,1),e.detach&&e.detach(this.$editor),!0)},this.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]},this.$callKeyboardHandlers=function(e,t,n,r){var s,o=!1,u=this.$editor.commands;for(var a=this.$handlers.length;a--;){s=this.$handlers[a].handleKeyboard(this.$data,e,t,n,r);if(!s||!s.command)continue;s.command=="null"?o=!0:o=u.exec(s.command,this.$editor,s.args,r),o&&r&&e!=-1&&s.passEvent!=1&&s.command.passEvent!=1&&i.stopEvent(r);if(o)break}return o},this.onCommandKey=function(e,t,n){var i=r.keyCodeToString(n);this.$callKeyboardHandlers(t,i,n,e)},this.onTextInput=function(e){var t=this.$callKeyboardHandlers(-1,e);t||this.$editor.commands.exec("insertstring",this.$editor,e)}}).call(s.prototype),t.KeyBinding=s}),ace.define("ace/edit_session",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/config","ace/lib/event_emitter","ace/selection","ace/mode/text","ace/range","ace/document","ace/background_tokenizer","ace/search_highlight","ace/edit_session/folding","ace/edit_session/bracket_match"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/lang"),s=e("./config"),o=e("./lib/event_emitter").EventEmitter,u=e("./selection").Selection,a=e("./mode/text").Mode,f=e("./range").Range,l=e("./document").Document,c=e("./background_tokenizer").BackgroundTokenizer,h=e("./search_highlight").SearchHighlight,p=function(e,t){this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$foldData=[],this.$foldData.toString=function(){return this.join("\n")},this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this);if(typeof e!="object"||!e.getLine)e=new l(e);this.setDocument(e),this.selection=new u(this),s.resetOptions(this),this.setMode(t),s._emit("session",this)};(function(){function g(e){return e<4352?!1:e>=4352&&e<=4447||e>=4515&&e<=4519||e>=4602&&e<=4607||e>=9001&&e<=9002||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12283||e>=12288&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12589||e>=12593&&e<=12686||e>=12688&&e<=12730||e>=12736&&e<=12771||e>=12784&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=13054||e>=13056&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=55216&&e<=55238||e>=55243&&e<=55291||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=65281&&e<=65376||e>=65504&&e<=65510}r.implement(this,o),this.setDocument=function(e){this.doc&&this.doc.removeListener("change",this.$onChange),this.doc=e,e.on("change",this.$onChange),this.bgTokenizer&&this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},this.getDocument=function(){return this.doc},this.$resetRowCache=function(e){if(!e){this.$docRowCache=[],this.$screenRowCache=[];return}var t=this.$docRowCache.length,n=this.$getRowCacheIndex(this.$docRowCache,e)+1;t>n&&(this.$docRowCache.splice(n,t),this.$screenRowCache.splice(n,t))},this.$getRowCacheIndex=function(e,t){var n=0,r=e.length-1;while(n<=r){var i=n+r>>1,s=e[i];if(t>s)n=i+1;else{if(!(t<s))return i;r=i-1}}return n-1},this.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.bgTokenizer&&this.bgTokenizer.start(0)},this.onChangeFold=function(e){var t=e.data;this.$resetRowCache(t.start.row)},this.onChange=function(e){var t=e.data;this.$modified=!0,this.$resetRowCache(t.range.start.row);var n=this.$updateInternalDataOnChange(e);!this.$fromUndo&&this.$undoManager&&!t.ignore&&(this.$deltasDoc.push(t),n&&n.length!=0&&this.$deltasFold.push({action:"removeFolds",folds:n}),this.$informUndoManager.schedule()),this.bgTokenizer.$updateOnChange(t),this._emit("change",e)},this.setValue=function(e){this.doc.setValue(e),this.selection.moveCursorTo(0,0),this.selection.clearSelection(),this.$resetRowCache(0),this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.getUndoManager().reset()},this.getValue=this.toString=function(){return this.doc.getValue()},this.getSelection=function(){return this.selection},this.getState=function(e){return this.bgTokenizer.getState(e)},this.getTokens=function(e){return this.bgTokenizer.getTokens(e)},this.getTokenAt=function(e,t){var n=this.bgTokenizer.getTokens(e),r,i=0;if(t==null)s=n.length-1,i=this.getLine(e).length;else for(var s=0;s<n.length;s++){i+=n[s].value.length;if(i>=t)break}return r=n[s],r?(r.index=s,r.start=i-r.value.length,r):null},this.setUndoManager=function(e){this.$undoManager=e,this.$deltas=[],this.$deltasDoc=[],this.$deltasFold=[],this.$informUndoManager&&this.$informUndoManager.cancel();if(e){var t=this;this.$syncInformUndoManager=function(){t.$informUndoManager.cancel(),t.$deltasFold.length&&(t.$deltas.push({group:"fold",deltas:t.$deltasFold}),t.$deltasFold=[]),t.$deltasDoc.length&&(t.$deltas.push({group:"doc",deltas:t.$deltasDoc}),t.$deltasDoc=[]),t.$deltas.length>0&&e.execute({action:"aceupdate",args:[t.$deltas,t],merge:t.mergeUndoDeltas}),t.mergeUndoDeltas=!1,t.$deltas=[]},this.$informUndoManager=i.delayedCall(this.$syncInformUndoManager)}},this.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},this.$defaultUndoManager={undo:function(){},redo:function(){},reset:function(){}},this.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},this.getTabString=function(){return this.getUseSoftTabs()?i.stringRepeat(" ",this.getTabSize()):" "},this.setUseSoftTabs=function(e){this.setOption("useSoftTabs",e)},this.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},this.setTabSize=function(e){this.setOption("tabSize",e)},this.getTabSize=function(){return this.$tabSize},this.isTabStop=function(e){return this.$useSoftTabs&&e.column%this.$tabSize==0},this.$overwrite=!1,this.setOverwrite=function(e){this.setOption("overwrite",e)},this.getOverwrite=function(){return this.$overwrite},this.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},this.addGutterDecoration=function(e,t){this.$decorations[e]||(this.$decorations[e]=""),this.$decorations[e]+=" "+t,this._emit("changeBreakpoint",{})},this.removeGutterDecoration=function(e,t){this.$decorations[e]=(this.$decorations[e]||"").replace(" "+t,""),this._emit("changeBreakpoint",{})},this.getBreakpoints=function(){return this.$breakpoints},this.setBreakpoints=function(e){this.$breakpoints=[];for(var t=0;t<e.length;t++)this.$breakpoints[e[t]]="ace_breakpoint";this._emit("changeBreakpoint",{})},this.clearBreakpoints=function(){this.$breakpoints=[],this._emit("changeBreakpoint",{})},this.setBreakpoint=function(e,t){t===undefined&&(t="ace_breakpoint"),t?this.$breakpoints[e]=t:delete this.$breakpoints[e],this._emit("changeBreakpoint",{})},this.clearBreakpoint=function(e){delete this.$breakpoints[e],this._emit("changeBreakpoint",{})},this.addMarker=function(e,t,n,r){var i=this.$markerId++,s={range:e,type:n||"line",renderer:typeof n=="function"?n:null,clazz:t,inFront:!!r,id:i};return r?(this.$frontMarkers[i]=s,this._emit("changeFrontMarker")):(this.$backMarkers[i]=s,this._emit("changeBackMarker")),i},this.addDynamicMarker=function(e,t){if(!e.update)return;var n=this.$markerId++;return e.id=n,e.inFront=!!t,t?(this.$frontMarkers[n]=e,this._emit("changeFrontMarker")):(this.$backMarkers[n]=e,this._emit("changeBackMarker")),e},this.removeMarker=function(e){var t=this.$frontMarkers[e]||this.$backMarkers[e];if(!t)return;var n=t.inFront?this.$frontMarkers:this.$backMarkers;t&&(delete n[e],this._emit(t.inFront?"changeFrontMarker":"changeBackMarker"))},this.getMarkers=function(e){return e?this.$frontMarkers:this.$backMarkers},this.highlight=function(e){if(!this.$searchHighlight){var t=new h(null,"ace_selected-word","text");this.$searchHighlight=this.addDynamicMarker(t)}this.$searchHighlight.setRegexp(e)},this.highlightLines=function(e,t,n,r){typeof t!="number"&&(n=t,t=e),n||(n="ace_step");var i=new f(e,0,t,Infinity);return i.id=this.addMarker(i,n,"fullLine",r),i},this.setAnnotations=function(e){this.$annotations=e,this._emit("changeAnnotation",{})},this.getAnnotations=function(){return this.$annotations||[]},this.clearAnnotations=function(){this.setAnnotations([])},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r?\n)/m);t?this.$autoNewLine=t[1]:this.$autoNewLine="\n"},this.getWordRange=function(e,t){var n=this.getLine(e),r=!1;t>0&&(r=!!n.charAt(t-1).match(this.tokenRe)),r||(r=!!n.charAt(t).match(this.tokenRe));if(r)var i=this.tokenRe;else if(/^\s+$/.test(n.slice(t-1,t+1)))var i=/\s/;else var i=this.nonTokenRe;var s=t;if(s>0){do s--;while(s>=0&&n.charAt(s).match(i));s++}var o=t;while(o<n.length&&n.charAt(o).match(i))o++;return new f(e,s,e,o)},this.getAWordRange=function(e,t){var n=this.getWordRange(e,t),r=this.getLine(n.end.row);while(r.charAt(n.end.column).match(/[ \t]/))n.end.column+=1;return n},this.setNewLineMode=function(e){this.doc.setNewLineMode(e)},this.getNewLineMode=function(){return this.doc.getNewLineMode()},this.setUseWorker=function(e){this.setOption("useWorker",e)},this.getUseWorker=function(){return this.$useWorker},this.onReloadTokenizer=function(e){var t=e.data;this.bgTokenizer.start(t.first),this._emit("tokenizerUpdate",e)},this.$modes={},this.$mode=null,this.$modeId=null,this.setMode=function(e,t){if(e&&typeof e=="object"){if(e.getTokenizer)return this.$onChangeMode(e);var n=e,r=n.path}else r=e||"ace/mode/text";this.$modes["ace/mode/text"]||(this.$modes["ace/mode/text"]=new a);if(this.$modes[r]&&!n){this.$onChangeMode(this.$modes[r]),t&&t();return}this.$modeId=r,s.loadModule(["mode",r],function(e){if(this.$modeId!==r)return t&&t();if(this.$modes[r]&&!n)return this.$onChangeMode(this.$modes[r]);e&&e.Mode&&(e=new e.Mode(n),n||(this.$modes[r]=e,e.$id=r),this.$onChangeMode(e),t&&t())}.bind(this)),this.$mode||this.$onChangeMode(this.$modes["ace/mode/text"],!0)},this.$onChangeMode=function(e,t){t||(this.$modeId=e.$id);if(this.$mode===e)return;this.$mode=e,this.$stopWorker(),this.$useWorker&&this.$startWorker();var n=e.getTokenizer();if(n.addEventListener!==undefined){var r=this.onReloadTokenizer.bind(this);n.addEventListener("update",r)}if(!this.bgTokenizer){this.bgTokenizer=new c(n);var i=this;this.bgTokenizer.addEventListener("update",function(e){i._emit("tokenizerUpdate",e)})}else this.bgTokenizer.setTokenizer(n);this.bgTokenizer.setDocument(this.getDocument()),this.tokenRe=e.tokenRe,this.nonTokenRe=e.nonTokenRe,t||(this.$options.wrapMethod.set.call(this,this.$wrapMethod),this.$setFolding(e.foldingRules),this.bgTokenizer.start(0),this._emit("changeMode"))},this.$stopWorker=function(){this.$worker&&this.$worker.terminate(),this.$worker=null},this.$startWorker=function(){if(typeof Worker!="undefined"&&!e.noWorker)try{this.$worker=this.$mode.createWorker(this)}catch(t){console.log("Could not load worker"),console.log(t),this.$worker=null}else this.$worker=null},this.getMode=function(){return this.$mode},this.$scrollTop=0,this.setScrollTop=function(e){if(this.$scrollTop===e||isNaN(e))return;this.$scrollTop=e,this._signal("changeScrollTop",e)},this.getScrollTop=function(){return this.$scrollTop},this.$scrollLeft=0,this.setScrollLeft=function(e){if(this.$scrollLeft===e||isNaN(e))return;this.$scrollLeft=e,this._signal("changeScrollLeft",e)},this.getScrollLeft=function(){return this.$scrollLeft},this.getScreenWidth=function(){return this.$computeWidth(),this.lineWidgets?Math.max(this.getLineWidgetMaxWidth(),this.screenWidth):this.screenWidth},this.getLineWidgetMaxWidth=function(){if(this.lineWidgetsWidth!=null)return this.lineWidgetsWidth;var e=0;return this.lineWidgets.forEach(function(t){t&&t.screenWidth>e&&(e=t.screenWidth)}),this.lineWidgetWidth=e},this.$computeWidth=function(e){if(this.$modified||e){this.$modified=!1;if(this.$useWrapMode)return this.screenWidth=this.$wrapLimit;var t=this.doc.getAllLines(),n=this.$rowLengthCache,r=0,i=0,s=this.$foldData[i],o=s?s.start.row:Infinity,u=t.length;for(var a=0;a<u;a++){if(a>o){a=s.end.row+1;if(a>=u)break;s=this.$foldData[i++],o=s?s.start.row:Infinity}n[a]==null&&(n[a]=this.$getStringScreenWidth(t[a])[0]),n[a]>r&&(r=n[a])}this.screenWidth=r}},this.getLine=function(e){return this.doc.getLine(e)},this.getLines=function(e,t){return this.doc.getLines(e,t)},this.getLength=function(){return this.doc.getLength()},this.getTextRange=function(e){return this.doc.getTextRange(e||this.selection.getRange())},this.insert=function(e,t){return this.doc.insert(e,t)},this.remove=function(e){return this.doc.remove(e)},this.undoChanges=function(e,t){if(!e.length)return;this.$fromUndo=!0;var n=null;for(var r=e.length-1;r!=-1;r--){var i=e[r];i.group=="doc"?(this.doc.revertDeltas(i.deltas),n=this.$getUndoSelection(i.deltas,!0,n)):i.deltas.forEach(function(e){this.addFolds(e.folds)},this)}return this.$fromUndo=!1,n&&this.$undoSelect&&!t&&this.selection.setSelectionRange(n),n},this.redoChanges=function(e,t){if(!e.length)return;this.$fromUndo=!0;var n=null;for(var r=0;r<e.length;r++){var i=e[r];i.group=="doc"&&(this.doc.applyDeltas(i.deltas),n=this.$getUndoSelection(i.deltas,!1,n))}return this.$fromUndo=!1,n&&this.$undoSelect&&!t&&this.selection.setSelectionRange(n),n},this.setUndoSelect=function(e){this.$undoSelect=e},this.$getUndoSelection=function(e,t,n){function r(e){var n=e.action==="insertText"||e.action==="insertLines";return t?!n:n}var i=e[0],s,o,u=!1;r(i)?(s=f.fromPoints(i.range.start,i.range.end),u=!0):(s=f.fromPoints(i.range.start,i.range.start),u=!1);for(var a=1;a<e.length;a++)i=e[a],r(i)?(o=i.range.start,s.compare(o.row,o.column)==-1&&s.setStart(i.range.start),o=i.range.end,s.compare(o.row,o.column)==1&&s.setEnd(i.range.end),u=!0):(o=i.range.start,s.compare(o.row,o.column)==-1&&(s=f.fromPoints(i.range.start,i.range.start)),u=!1);if(n!=null){f.comparePoints(n.start,s.start)==0&&(n.start.column+=s.end.column-s.start.column,n.end.column+=s.end.column-s.start.column);var l=n.compareRange(s);l==1?s.setStart(n.start):l==-1&&s.setEnd(n.end)}return s},this.replace=function(e,t){return this.doc.replace(e,t)},this.moveText=function(e,t,n){var r=this.getTextRange(e),i=this.getFoldsInRange(e),s=f.fromPoints(t,t);if(!n){this.remove(e);var o=e.start.row-e.end.row,u=o?-e.end.column:e.start.column-e.end.column;u&&(s.start.row==e.end.row&&s.start.column>e.end.column&&(s.start.column+=u),s.end.row==e.end.row&&s.end.column>e.end.column&&(s.end.column+=u)),o&&s.start.row>=e.end.row&&(s.start.row+=o,s.end.row+=o)}s.end=this.insert(s.start,r);if(i.length){var a=e.start,l=s.start,o=l.row-a.row,u=l.column-a.column;this.addFolds(i.map(function(e){return e=e.clone(),e.start.row==a.row&&(e.start.column+=u),e.end.row==a.row&&(e.end.column+=u),e.start.row+=o,e.end.row+=o,e}))}return s},this.indentRows=function(e,t,n){n=n.replace(/\t/g,this.getTabString());for(var r=e;r<=t;r++)this.insert({row:r,column:0},n)},this.outdentRows=function(e){var t=e.collapseRows(),n=new f(0,0,0,0),r=this.getTabSize();for(var i=t.start.row;i<=t.end.row;++i){var s=this.getLine(i);n.start.row=i,n.end.row=i;for(var o=0;o<r;++o)if(s.charAt(o)!=" ")break;o<r&&s.charAt(o)==" "?(n.start.column=o,n.end.column=o+1):(n.start.column=0,n.end.column=o),this.remove(n)}},this.$moveLines=function(e,t,n){e=this.getRowFoldStart(e),t=this.getRowFoldEnd(t);if(n<0){var r=this.getRowFoldStart(e+n);if(r<0)return 0;var i=r-e}else if(n>0){var r=this.getRowFoldEnd(t+n);if(r>this.doc.getLength()-1)return 0;var i=r-t}else{e=this.$clipRowToDocument(e),t=this.$clipRowToDocument(t);var i=t-e+1}var s=new f(e,0,t,Number.MAX_VALUE),o=this.getFoldsInRange(s).map(function(e){return e=e.clone(),e.start.row+=i,e.end.row+=i,e}),u=n==0?this.doc.getLines(e,t):this.doc.removeLines(e,t);return this.doc.insertLines(e+i,u),o.length&&this.addFolds(o),i},this.moveLinesUp=function(e,t){return this.$moveLines(e,t,-1)},this.moveLinesDown=function(e,t){return this.$moveLines(e,t,1)},this.duplicateLines=function(e,t){return this.$moveLines(e,t,0)},this.$clipRowToDocument=function(e){return Math.max(0,Math.min(e,this.doc.getLength()-1))},this.$clipColumnToRow=function(e,t){return t<0?0:Math.min(this.doc.getLine(e).length,t)},this.$clipPositionToDocument=function(e,t){t=Math.max(0,t);if(e<0)e=0,t=0;else{var n=this.doc.getLength();e>=n?(e=n-1,t=this.doc.getLine(n-1).length):t=Math.min(this.doc.getLine(e).length,t)}return{row:e,column:t}},this.$clipRangeToDocument=function(e){e.start.row<0?(e.start.row=0,e.start.column=0):e.start.column=this.$clipColumnToRow(e.start.row,e.start.column);var t=this.doc.getLength()-1;return e.end.row>t?(e.end.row=t,e.end.column=this.doc.getLine(t).length):e.end.column=this.$clipColumnToRow(e.end.row,e.end.column),e},this.$wrapLimit=80,this.$useWrapMode=!1,this.$wrapLimitRange={min:null,max:null},this.setUseWrapMode=function(e){if(e!=this.$useWrapMode){this.$useWrapMode=e,this.$modified=!0,this.$resetRowCache(0);if(e){var t=this.getLength();this.$wrapData=[];for(var n=0;n<t;n++)this.$wrapData.push([]);this.$updateWrapData(0,t-1)}this._emit("changeWrapMode")}},this.getUseWrapMode=function(){return this.$useWrapMode},this.setWrapLimitRange=function(e,t){if(this.$wrapLimitRange.min!==e||this.$wrapLimitRange.max!==t)this.$wrapLimitRange={min:e,max:t},this.$modified=!0,this._emit("changeWrapMode")},this.adjustWrapLimit=function(e,t){var n=this.$wrapLimitRange;n.max<0&&(n={min:t,max:t});var r=this.$constrainWrapLimit(e,n.min,n.max);return r!=this.$wrapLimit&&r>1?(this.$wrapLimit=r,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._emit("changeWrapLimit")),!0):!1},this.$constrainWrapLimit=function(e,t,n){return t&&(e=Math.max(t,e)),n&&(e=Math.min(n,e)),e},this.getWrapLimit=function(){return this.$wrapLimit},this.setWrapLimit=function(e){this.setWrapLimitRange(e,e)},this.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},this.$updateInternalDataOnChange=function(e){var t=this.$useWrapMode,n,r=e.data.action,i=e.data.range.start.row,s=e.data.range.end.row,o=e.data.range.start,u=e.data.range.end,a=null;r.indexOf("Lines")!=-1?(r=="insertLines"?s=i+e.data.lines.length:s=i,n=e.data.lines?e.data.lines.length:s-i):n=s-i,this.$updating=!0;if(n!=0)if(r.indexOf("remove")!=-1){this[t?"$wrapData":"$rowLengthCache"].splice(i,n);var f=this.$foldData;a=this.getFoldsInRange(e.data.range),this.removeFolds(a);var l=this.getFoldLine(u.row),c=0;if(l){l.addRemoveChars(u.row,u.column,o.column-u.column),l.shiftRow(-n);var h=this.getFoldLine(i);h&&h!==l&&(h.merge(l),l=h),c=f.indexOf(l)+1}for(c;c<f.length;c++){var l=f[c];l.start.row>=u.row&&l.shiftRow(-n)}s=i}else{var p;if(t){p=[i,0];for(var d=0;d<n;d++)p.push([]);this.$wrapData.splice.apply(this.$wrapData,p)}else p=Array(n),p.unshift(i,0),this.$rowLengthCache.splice.apply(this.$rowLengthCache,p);var f=this.$foldData,l=this.getFoldLine(i),c=0;if(l){var v=l.range.compareInside(o.row,o.column);v==0?(l=l.split(o.row,o.column),l.shiftRow(n),l.addRemoveChars(s,0,u.column-o.column)):v==-1&&(l.addRemoveChars(i,0,u.column-o.column),l.shiftRow(n)),c=f.indexOf(l)+1}for(c;c<f.length;c++){var l=f[c];l.start.row>=i&&l.shiftRow(n)}}else{n=Math.abs(e.data.range.start.column-e.data.range.end.column),r.indexOf("remove")!=-1&&(a=this.getFoldsInRange(e.data.range),this.removeFolds(a),n=-n);var l=this.getFoldLine(i);l&&l.addRemoveChars(i,o.column,n)}return t&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,t?this.$updateWrapData(i,s):this.$updateRowLengthCache(i,s),a},this.$updateRowLengthCache=function(e,t,n){this.$rowLengthCache[e]=null,this.$rowLengthCache[t]=null},this.$updateWrapData=function(e,t){var n=this.doc.getAllLines(),r=this.getTabSize(),i=this.$wrapData,s=this.$wrapLimit,o,a,f=e;t=Math.min(t,n.length-1);while(f<=t)a=this.getFoldLine(f,a),a?(o=[],a.walk(function(e,t,r,i){var s;if(e!=null){s=this.$getDisplayTokens(e,o.length),s[0]=u;for(var a=1;a<s.length;a++)s[a]=l}else s=this.$getDisplayTokens(n[t].substring(i,r),o.length);o=o.concat(s)}.bind(this),a.end.row,n[a.end.row].length+1),i[a.start.row]=this.$computeWrapSplits(o,s,r),f=a.end.row+1):(o=this.$getDisplayTokens(n[f]),i[f]=this.$computeWrapSplits(o,s,r),f++)};var t=1,n=2,u=3,l=4,p=9,d=10,v=11,m=12;this.$computeWrapSplits=function(e,t){function a(t){var r=e.slice(i,t),o=r.length;r.join("").replace(/12/g,function(){o-=1}).replace(/2/g,function(){o-=1}),s+=o,n.push(s),i=t}if(e.length==0)return[];var n=[],r=e.length,i=0,s=0,o=this.$wrapAsCode;while(r-i>t){var f=i+t;if(e[f-1]>=d&&e[f]>=d){a(f);continue}if(e[f]==u||e[f]==l){for(f;f!=i-1;f--)if(e[f]==u)break;if(f>i){a(f);continue}f=i+t;for(f;f<e.length;f++)if(e[f]!=l)break;if(f==e.length)break;a(f);continue}var c=Math.max(f-(o?10:t-(t>>2)),i-1);while(f>c&&e[f]<u)f--;if(o){while(f>c&&e[f]<u)f--;while(f>c&&e[f]==p)f--}else while(f>c&&e[f]<d)f--;if(f>c){a(++f);continue}f=i+t,a(f)}return n},this.$getDisplayTokens=function(e,r){var i=[],s;r=r||0;for(var o=0;o<e.length;o++){var u=e.charCodeAt(o);if(u==9){s=this.getScreenTabSize(i.length+r),i.push(v);for(var a=1;a<s;a++)i.push(m)}else u==32?i.push(d):u>39&&u<48||u>57&&u<64?i.push(p):u>=4352&&g(u)?i.push(t,n):i.push(t)}return i},this.$getStringScreenWidth=function(e,t,n){if(t==0)return[0,0];t==null&&(t=Infinity),n=n||0;var r,i;for(i=0;i<e.length;i++){r=e.charCodeAt(i),r==9?n+=this.getScreenTabSize(n):r>=4352&&g(r)?n+=2:n+=1;if(n>t)break}return[n,i]},this.lineWidgets=null,this.getRowLength=function(e){if(this.lineWidgets)var t=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0;else t=0;return!this.$useWrapMode||!this.$wrapData[e]?1+t:this.$wrapData[e].length+1+t},this.getRowLineCount=function(e){return!this.$useWrapMode||!this.$wrapData[e]?1:this.$wrapData[e].length+1},this.getScreenLastRowColumn=function(e){var t=this.screenToDocumentPosition(e,Number.MAX_VALUE);return this.documentToScreenColumn(t.row,t.column)},this.getDocumentLastRowColumn=function(e,t){var n=this.documentToScreenRow(e,t);return this.getScreenLastRowColumn(n)},this.getDocumentLastRowColumnPosition=function(e,t){var n=this.documentToScreenRow(e,t);return this.screenToDocumentPosition(n,Number.MAX_VALUE/10)},this.getRowSplitData=function(e){return this.$useWrapMode?this.$wrapData[e]:undefined},this.getScreenTabSize=function(e){return this.$tabSize-e%this.$tabSize},this.screenToDocumentRow=function(e,t){return this.screenToDocumentPosition(e,t).row},this.screenToDocumentColumn=function(e,t){return this.screenToDocumentPosition(e,t).column},this.screenToDocumentPosition=function(e,t){if(e<0)return{row:0,column:0};var n,r=0,i=0,s,o=0,u=0,a=this.$screenRowCache,f=this.$getRowCacheIndex(a,e),l=a.length;if(l&&f>=0)var o=a[f],r=this.$docRowCache[f],c=e>a[l-1];else var c=!l;var h=this.getLength()-1,p=this.getNextFoldLine(r),d=p?p.start.row:Infinity;while(o<=e){u=this.getRowLength(r);if(o+u>e||r>=h)break;o+=u,r++,r>d&&(r=p.end.row+1,p=this.getNextFoldLine(r,p),d=p?p.start.row:Infinity),c&&(this.$docRowCache.push(r),this.$screenRowCache.push(o))}if(p&&p.start.row<=r)n=this.getFoldDisplayLine(p),r=p.start.row;else{if(o+u<=e||r>h)return{row:h,column:this.getLine(h).length};n=this.getLine(r),p=null}if(this.$useWrapMode){var v=this.$wrapData[r];if(v){var m=Math.floor(e-o);s=v[m],m>0&&v.length&&(i=v[m-1]||v[v.length-1],n=n.substring(i))}}return i+=this.$getStringScreenWidth(n,t)[1],this.$useWrapMode&&i>=s&&(i=s-1),p?p.idxToPosition(i):{row:r,column:i}},this.documentToScreenPosition=function(e,t){if(typeof t=="undefined")var n=this.$clipPositionToDocument(e.row,e.column);else n=this.$clipPositionToDocument(e,t);e=n.row,t=n.column;var r=0,i=null,s=null;s=this.getFoldAt(e,t,1),s&&(e=s.start.row,t=s.start.column);var o,u=0,a=this.$docRowCache,f=this.$getRowCacheIndex(a,e),l=a.length;if(l&&f>=0)var u=a[f],r=this.$screenRowCache[f],c=e>a[l-1];else var c=!l;var h=this.getNextFoldLine(u),p=h?h.start.row:Infinity;while(u<e){if(u>=p){o=h.end.row+1;if(o>e)break;h=this.getNextFoldLine(o,h),p=h?h.start.row:Infinity}else o=u+1;r+=this.getRowLength(u),u=o,c&&(this.$docRowCache.push(u),this.$screenRowCache.push(r))}var d="";h&&u>=p?(d=this.getFoldDisplayLine(h,e,t),i=h.start.row):(d=this.getLine(e).substring(0,t),i=e);if(this.$useWrapMode){var v=this.$wrapData[i],m=0;while(d.length>=v[m])r++,m++;d=d.substring(v[m-1]||0,d.length)}return{row:r,column:this.$getStringScreenWidth(d)[0]}},this.documentToScreenColumn=function(e,t){return this.documentToScreenPosition(e,t).column},this.documentToScreenRow=function(e,t){return this.documentToScreenPosition(e,t).row},this.getScreenLength=function(){var e=0,t=null;if(!this.$useWrapMode){e=this.getLength();var n=this.$foldData;for(var r=0;r<n.length;r++)t=n[r],e-=t.end.row-t.start.row}else{var i=this.$wrapData.length,s=0,r=0,t=this.$foldData[r++],o=t?t.start.row:Infinity;while(s<i)e+=this.$wrapData[s].length+1,s++,s>o&&(s=t.end.row+1,t=this.$foldData[r++],o=t?t.start.row:Infinity)}return this.lineWidgets&&(e+=this.$getWidgetScreenLength()),e}}).call(p.prototype),e("./edit_session/folding").Folding.call(p.prototype),e("./edit_session/bracket_match").BracketMatch.call(p.prototype),s.defineOptions(p.prototype,"session",{wrap:{set:function(e){!e||e=="off"?e=!1:e=="free"?e=!0:e=="printMargin"?e=-1:typeof e=="string"&&(e=parseInt(e,10)||!1);if(this.$wrap==e)return;if(!e)this.setUseWrapMode(!1);else{var t=typeof e=="number"?e:null;this.setWrapLimitRange(t,t),this.setUseWrapMode(!0)}this.$wrap=e},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(e){e=e=="auto"?this.$mode.type!="text":e!="text",e!=this.$wrapAsCode&&(this.$wrapAsCode=e,this.$useWrapMode&&(this.$modified=!0,this.$resetRowCache(0),this.$updateWrapData(0,this.getLength()-1)))},initialValue:"auto"},firstLineNumber:{set:function(){this._emit("changeBreakpoint")},initialValue:1},useWorker:{set:function(e){this.$useWorker=e,this.$stopWorker(),e&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(e){if(isNaN(e)||this.$tabSize===e)return;this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=e,this._emit("changeTabSize")},initialValue:4,handlesSet:!0},overwrite:{set:function(e){this._emit("changeOverwrite")},initialValue:!1},newLineMode:{set:function(e){this.doc.setNewLineMode(e)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(e){this.setMode(e)},get:function(){return this.$modeId}}}),t.EditSession=p}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/lang"),s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=function(e){this.session=e,this.doc=e.getDocument(),this.clearSelection(),this.lead=this.selectionLead=this.doc.createAnchor(0,0),this.anchor=this.selectionAnchor=this.doc.createAnchor(0,0);var t=this;this.lead.on("change",function(e){t._emit("changeCursor"),t.$isEmpty||t._emit("changeSelection"),!t.$keepDesiredColumnOnChange&&e.old.column!=e.value.column&&(t.$desiredColumn=null)}),this.selectionAnchor.on("change",function(){t.$isEmpty||t._emit("changeSelection")})};(function(){r.implement(this,s),this.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},this.isMultiLine=function(){return this.isEmpty()?!1:this.getRange().isMultiLine()},this.getCursor=function(){return this.lead.getPosition()},this.setSelectionAnchor=function(e,t){this.anchor.setPosition(e,t),this.$isEmpty&&(this.$isEmpty=!1,this._emit("changeSelection"))},this.getSelectionAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},this.getSelectionLead=function(){return this.lead.getPosition()},this.shiftSelection=function(e){if(this.$isEmpty){this.moveCursorTo(this.lead.row,this.lead.column+e);return}var t=this.getSelectionAnchor(),n=this.getSelectionLead(),r=this.isBackwards();(!r||t.column!==0)&&this.setSelectionAnchor(t.row,t.column+e),(r||n.column!==0)&&this.$moveSelection(function(){this.moveCursorTo(n.row,n.column+e)})},this.isBackwards=function(){var e=this.anchor,t=this.lead;return e.row>t.row||e.row==t.row&&e.column>t.column},this.getRange=function(){var e=this.anchor,t=this.lead;return this.isEmpty()?o.fromPoints(t,t):this.isBackwards()?o.fromPoints(t,e):o.fromPoints(e,t)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){var e=this.doc.getLength()-1;this.setSelectionAnchor(0,0),this.moveCursorTo(e,this.doc.getLine(e).length)},this.setRange=this.setSelectionRange=function(e,t){t?(this.setSelectionAnchor(e.end.row,e.end.column),this.selectTo(e.start.row,e.start.column)):(this.setSelectionAnchor(e.start.row,e.start.column),this.selectTo(e.end.row,e.end.column)),this.getRange().isEmpty()&&(this.$isEmpty=!0),this.$desiredColumn=null},this.$moveSelection=function(e){var t=this.lead;this.$isEmpty&&this.setSelectionAnchor(t.row,t.column),e.call(this)},this.selectTo=function(e,t){this.$moveSelection(function(){this.moveCursorTo(e,t)})},this.selectToPosition=function(e){this.$moveSelection(function(){this.moveCursorToPosition(e)})},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(e,t){if(typeof t=="undefined"){var n=e||this.lead;e=n.row,t=n.column}return this.session.getWordRange(e,t)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var e=this.getCursor(),t=this.session.getAWordRange(e.row,e.column);this.setSelectionRange(t)},this.getLineRange=function(e,t){var n=typeof e=="number"?e:this.lead.row,r,i=this.session.getFoldLine(n);return i?(n=i.start.row,r=i.end.row):r=n,t===!0?new o(n,0,r,this.session.getLine(r).length):new o(n,0,r+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.moveCursorLeft=function(){var e=this.lead.getPosition(),t;if(t=this.session.getFoldAt(e.row,e.column,-1))this.moveCursorTo(t.start.row,t.start.column);else if(e.column==0)e.row>0&&this.moveCursorTo(e.row-1,this.doc.getLine(e.row-1).length);else{var n=this.session.getTabSize();this.session.isTabStop(e)&&this.doc.getLine(e.row).slice(e.column-n,e.column).split(" ").length-1==n?this.moveCursorBy(0,-n):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var e=this.lead.getPosition(),t;if(t=this.session.getFoldAt(e.row,e.column,1))this.moveCursorTo(t.end.row,t.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row<this.doc.getLength()-1&&this.moveCursorTo(this.lead.row+1,0);else{var n=this.session.getTabSize(),e=this.lead;this.session.isTabStop(e)&&this.doc.getLine(e.row).slice(e.column,e.column+n).split(" ").length-1==n?this.moveCursorBy(0,n):this.moveCursorBy(0,1)}},this.moveCursorLineStart=function(){var e=this.lead.row,t=this.lead.column,n=this.session.documentToScreenRow(e,t),r=this.session.screenToDocumentPosition(n,0),i=this.session.getDisplayLine(e,null,r.row,r.column),s=i.match(/^\s*/);s[0].length!=t&&!this.session.$useEmacsStyleLineStart&&(r.column+=s[0].length),this.moveCursorToPosition(r)},this.moveCursorLineEnd=function(){var e=this.lead,t=this.session.getDocumentLastRowColumnPosition(e.row,e.column);if(this.lead.column==t.column){var n=this.session.getLine(t.row);if(t.column==n.length){var r=n.search(/\s+$/);r>0&&(t.column=r)}}this.moveCursorTo(t.row,t.column)},this.moveCursorFileEnd=function(){var e=this.doc.getLength()-1,t=this.doc.getLine(e).length;this.moveCursorTo(e,t)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),r=n.substring(t),i;this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var s=this.session.getFoldAt(e,t,1);if(s){this.moveCursorTo(s.end.row,s.end.column);return}if(i=this.session.nonTokenRe.exec(r))t+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,r=n.substring(t);if(t>=n.length){this.moveCursorTo(e,n.length),this.moveCursorRight(),e<this.doc.getLength()-1&&this.moveCursorWordRight();return}if(i=this.session.tokenRe.exec(r))t+=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0;this.moveCursorTo(e,t)},this.moveCursorLongWordLeft=function(){var e=this.lead.row,t=this.lead.column,n;if(n=this.session.getFoldAt(e,t,-1)){this.moveCursorTo(n.start.row,n.start.column);return}var r=this.session.getFoldStringAt(e,t,-1);r==null&&(r=this.doc.getLine(e).substring(0,t));var s=i.stringReverse(r),o;this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;if(o=this.session.nonTokenRe.exec(s))t-=this.session.nonTokenRe.lastIndex,s=s.slice(this.session.nonTokenRe.lastIndex),this.session.nonTokenRe.lastIndex=0;if(t<=0){this.moveCursorTo(e,0),this.moveCursorLeft(),e>0&&this.moveCursorWordLeft();return}if(o=this.session.tokenRe.exec(s))t-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0;this.moveCursorTo(e,t)},this.$shortWordEndIndex=function(e){var t,n=0,r,i=/\s/,s=this.session.tokenRe;s.lastIndex=0;if(t=this.session.tokenRe.exec(e))n=this.session.tokenRe.lastIndex;else{while((r=e[n])&&i.test(r))n++;if(n<1){s.lastIndex=0;while((r=e[n])&&!s.test(r)){s.lastIndex=0,n++;if(i.test(r)){if(n>2){n--;break}while((r=e[n])&&i.test(r))n++;if(n>2)break}}}}return s.lastIndex=0,n},this.moveCursorShortWordRight=function(){var e=this.lead.row,t=this.lead.column,n=this.doc.getLine(e),r=n.substring(t),i=this.session.getFoldAt(e,t,1);if(i)return this.moveCursorTo(i.end.row,i.end.column);if(t==n.length){var s=this.doc.getLength();do e++,r=this.doc.getLine(e);while(e<s&&/^\s*$/.test(r));/^\s+/.test(r)||(r=""),t=0}var o=this.$shortWordEndIndex(r);this.moveCursorTo(e,t+o)},this.moveCursorShortWordLeft=function(){var e=this.lead.row,t=this.lead.column,n;if(n=this.session.getFoldAt(e,t,-1))return this.moveCursorTo(n.start.row,n.start.column);var r=this.session.getLine(e).substring(0,t);if(t==0){do e--,r=this.doc.getLine(e);while(e>0&&/^\s*$/.test(r));t=r.length,/\s+$/.test(r)||(r="")}var s=i.stringReverse(r),o=this.$shortWordEndIndex(s);return this.moveCursorTo(e,t-o)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(e,t){var n=this.session.documentToScreenPosition(this.lead.row,this.lead.column);t===0&&(this.$desiredColumn?n.column=this.$desiredColumn:this.$desiredColumn=n.column);var r=this.session.screenToDocumentPosition(n.row+e,n.column);e!==0&&t===0&&r.row===this.lead.row&&r.column===this.lead.column&&this.session.lineWidgets&&this.session.lineWidgets[r.row]&&r.row++,this.moveCursorTo(r.row,r.column+t,t===0)},this.moveCursorToPosition=function(e){this.moveCursorTo(e.row,e.column)},this.moveCursorTo=function(e,t,n){var r=this.session.getFoldAt(e,t,1);r&&(e=r.start.row,t=r.start.column),this.$keepDesiredColumnOnChange=!0,this.lead.setPosition(e,t),this.$keepDesiredColumnOnChange=!1,n||(this.$desiredColumn=null)},this.moveCursorToScreen=function(e,t,n){var r=this.session.screenToDocumentPosition(e,t);this.moveCursorTo(r.row,r.column,n)},this.detach=function(){this.lead.detach(),this.anchor.detach(),this.session=this.doc=null},this.fromOrientedRange=function(e){this.setSelectionRange(e,e.cursor==e.start),this.$desiredColumn=e.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(e){var t=this.getRange();return e?(e.start.column=t.start.column,e.start.row=t.start.row,e.end.column=t.end.column,e.end.row=t.end.row):e=t,e.cursor=this.isBackwards()?e.start:e.end,e.desiredColumn=this.$desiredColumn,e},this.toJSON=function(){if(this.rangeCount)var e=this.ranges.map(function(e){var t=e.clone();return t.isBackwards=e.cursor==e.start,t});else{var e=this.getRange();e.isBackwards=this.isBackwards()}return e},this.fromJSON=function(e){if(e.start==undefined){if(this.rangeList){this.toSingleRange(e[0]);for(var t=e.length;t--;){var n=o.fromPoints(e[t].start,e[t].end);e.isBackwards&&(n.cursor=n.start),this.addRange(n,!0)}return}e=e[0]}this.rangeList&&this.toSingleRange(e),this.setSelectionRange(e,e.isBackwards)},this.isEqual=function(e){if((e.length||this.rangeCount)&&e.length!=this.rangeCount)return!1;if(!e.length||!this.ranges)return this.getRange().isEqual(e);for(var t=this.ranges.length;t--;)if(!this.ranges[t].isEqual(e[t]))return!1;return!0}}).call(u.prototype),t.Selection=u}),ace.define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),ace.define("ace/mode/text",["require","exports","module","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour","ace/unicode","ace/lib/lang","ace/token_iterator","ace/range"],function(e,t,n){var r=e("../tokenizer").Tokenizer,i=e("./text_highlight_rules").TextHighlightRules,s=e("./behaviour").Behaviour,o=e("../unicode"),u=e("../lib/lang"),a=e("../token_iterator").TokenIterator,f=e("../range").Range,l=function(){this.HighlightRules=i,this.$behaviour=new s};(function(){this.tokenRe=new RegExp("^["+o.packages.L+o.packages.Mn+o.packages.Mc+o.packages.Nd+o.packages.Pc+"\\$_]+","g"),this.nonTokenRe=new RegExp("^(?:[^"+o.packages.L+o.packages.Mn+o.packages.Mc+o.packages.Nd+o.packages.Pc+"\\$_]|s])+","g"),this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=new this.HighlightRules,this.$tokenizer=new r(this.$highlightRules.getRules())),this.$tokenizer},this.lineCommentStart="",this.blockComment="",this.toggleCommentLines=function(e,t,n,r){function w(e){for(var t=n;t<=r;t++)e(i.getLine(t),t)}var i=t.doc,s=!0,o=!0,a=Infinity,f=t.getTabSize(),l=!1;if(!this.lineCommentStart){if(!this.blockComment)return!1;var c=this.blockComment.start,h=this.blockComment.end,p=new RegExp("^(\\s*)(?:"+u.escapeRegExp(c)+")"),d=new RegExp("(?:"+u.escapeRegExp(h)+")\\s*$"),v=function(e,t){if(g(e,t))return;if(!s||/\S/.test(e))i.insertInLine({row:t,column:e.length},h),i.insertInLine({row:t,column:a},c)},m=function(e,t){var n;(n=e.match(d))&&i.removeInLine(t,e.length-n[0].length,e.length),(n=e.match(p))&&i.removeInLine(t,n[1].length,n[0].length)},g=function(e,n){if(p.test(e))return!0;var r=t.getTokens(n);for(var i=0;i<r.length;i++)if(r[i].type==="comment")return!0}}else{if(Array.isArray(this.lineCommentStart))var p=this.lineCommentStart.map(u.escapeRegExp).join("|"),c=this.lineCommentStart[0];else var p=u.escapeRegExp(this.lineCommentStart),c=this.lineCommentStart;p=new RegExp("^(\\s*)(?:"+p+") ?"),l=t.getUseSoftTabs();var m=function(e,t){var n=e.match(p);if(!n)return;var r=n[1].length,s=n[0].length;!b(e,r,s)&&n[0][s-1]==" "&&s--,i.removeInLine(t,r,s)},y=c+" ",v=function(e,t){if(!s||/\S/.test(e))b(e,a,a)?i.insertInLine({row:t,column:a},y):i.insertInLine({row:t,column:a},c)},g=function(e,t){return p.test(e)},b=function(e,t,n){var r=0;while(t--&&e.charAt(t)==" ")r++;if(r%f!=0)return!1;var r=0;while(e.charAt(n++)==" ")r++;return f>2?r%f!=f-1:r%f==0}}var E=Infinity;w(function(e,t){var n=e.search(/\S/);n!==-1?(n<a&&(a=n),o&&!g(e,t)&&(o=!1)):E>e.length&&(E=e.length)}),a==Infinity&&(a=E,s=!1,o=!1),l&&a%f!=0&&(a=Math.floor(a/f)*f),w(o?m:v)},this.toggleBlockComment=function(e,t,n,r){var i=this.blockComment;if(!i)return;!i.start&&i[0]&&(i=i[0]);var s=new a(t,r.row,r.column),o=s.getCurrentToken(),u=t.selection,l=t.selection.toOrientedRange(),c,h;if(o&&/comment/.test(o.type)){var p,d;while(o&&/comment/.test(o.type)){var v=o.value.indexOf(i.start);if(v!=-1){var m=s.getCurrentTokenRow(),g=s.getCurrentTokenColumn()+v;p=new f(m,g,m,g+i.start.length);break}o=s.stepBackward()}var s=new a(t,r.row,r.column),o=s.getCurrentToken();while(o&&/comment/.test(o.type)){var v=o.value.indexOf(i.end);if(v!=-1){var m=s.getCurrentTokenRow(),g=s.getCurrentTokenColumn()+v;d=new f(m,g,m,g+i.end.length);break}o=s.stepForward()}d&&t.remove(d),p&&(t.remove(p),c=p.start.row,h=-i.start.length)}else h=i.start.length,c=n.start.row,t.insert(n.end,i.end),t.insert(n.start,i.start);l.start.row==c&&(l.start.column+=h),l.end.row==c&&(l.end.column+=h),t.selection.fromOrientedRange(l)},this.getNextLineIndent=function(e,t,n){return this.$getIndent(t)},this.checkOutdent=function(e,t,n){return!1},this.autoOutdent=function(e,t,n){},this.$getIndent=function(e){return e.match(/^\s*/)[0]},this.createWorker=function(e){return null},this.createModeDelegates=function(e){this.$embeds=[],this.$modes={};for(var t in e)e[t]&&(this.$embeds.push(t),this.$modes[t]=new e[t]);var n=["toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"];for(var t=0;t<n.length;t++)(function(e){var r=n[t],i=e[r];e[n[t]]=function(){return this.$delegator(r,arguments,i)}})(this)},this.$delegator=function(e,t,n){var r=t[0];typeof r!="string"&&(r=r[0]);for(var i=0;i<this.$embeds.length;i++){if(!this.$modes[this.$embeds[i]])continue;var s=r.split(this.$embeds[i]);if(!s[0]&&s[1]){t[0]=s[1];var o=this.$modes[this.$embeds[i]];return o[e].apply(o,t)}}var u=n.apply(this,t);return n?u:undefined},this.transformAction=function(e,t,n,r,i){if(this.$behaviour){var s=this.$behaviour.getBehaviours();for(var o in s)if(s[o][t]){var u=s[o][t].apply(this,arguments);if(u)return u}}},this.getKeywords=function(e){if(!this.completionKeywords){var t=this.$tokenizer.rules,n=[];for(var r in t){var i=t[r];for(var s=0,o=i.length;s<o;s++)if(typeof i[s].token=="string")/keyword|support|storage/.test(i[s].token)&&n.push(i[s].regex);else if(typeof i[s].token=="object")for(var u=0,a=i[s].token.length;u<a;u++)if(/keyword|support|storage/.test(i[s].token[u])){var r=i[s].regex.match(/\(.+?\)/g)[u];n.push(r.substr(1,r.length-2))}}this.completionKeywords=n}return e?n.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(e,t,n,r){var i=this.$keywordList||this.$createKeywordList();return i.map(function(e){return{name:e,value:e,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(l.prototype),t.Mode=l}),ace.define("ace/tokenizer",["require","exports","module"],function(e,t,n){var r=1e3,i=function(e){this.states=e,this.regExps={},this.matchMappings={};for(var t in this.states){var n=this.states[t],r=[],i=0,s=this.matchMappings[t]={defaultToken:"text"},o="g",u=[];for(var a=0;a<n.length;a++){var f=n[a];f.defaultToken&&(s.defaultToken=f.defaultToken),f.caseInsensitive&&(o="gi");if(f.regex==null)continue;f.regex instanceof RegExp&&(f.regex=f.regex.toString().slice(1,-1));var l=f.regex,c=(new RegExp("(?:("+l+")|(.))")).exec("a").length-2;if(Array.isArray(f.token))if(f.token.length==1||c==1)f.token=f.token[0];else{if(c-1!=f.token.length)throw new Error("number of classes and regexp groups in '"+f.token+"'\n'"+f.regex+"' doesn't match\n"+(c-1)+"!="+f.token.length);f.tokenArray=f.token,f.token=null,f.onMatch=this.$arrayTokens}else typeof f.token=="function"&&!f.onMatch&&(c>1?f.onMatch=this.$applyToken:f.onMatch=f.token);c>1&&(/\\\d/.test(f.regex)?l=f.regex.replace(/\\([0-9]+)/g,function(e,t){return"\\"+(parseInt(t,10)+i+1)}):(c=1,l=this.removeCapturingGroups(f.regex)),!f.splitRegex&&typeof f.token!="string"&&u.push(f)),s[i]=a,i+=c,r.push(l),f.onMatch||(f.onMatch=null),f.__proto__=null}u.forEach(function(e){e.splitRegex=this.createSplitterRegexp(e.regex,o)},this),this.regExps[t]=new RegExp("("+r.join(")|(")+")|($)",o)}};(function(){this.$setMaxTokenCount=function(e){r=e|0},this.$applyToken=function(e){var t=this.splitRegex.exec(e).slice(1),n=this.token.apply(this,t);if(typeof n=="string")return[{type:n,value:e}];var r=[];for(var i=0,s=n.length;i<s;i++)t[i]&&(r[r.length]={type:n[i],value:t[i]});return r},this.$arrayTokens=function(e){if(!e)return[];var t=this.splitRegex.exec(e);if(!t)return"text";var n=[],r=this.tokenArray;for(var i=0,s=r.length;i<s;i++)t[i+1]&&(n[n.length]={type:r[i],value:t[i+1]});return n},this.removeCapturingGroups=function(e){var t=e.replace(/\[(?:\\.|[^\]])*?\]|\\.|\(\?[:=!]|(\()/g,function(e,t){return t?"(?:":e});return t},this.createSplitterRegexp=function(e,t){if(e.indexOf("(?=")!=-1){var n=0,r=!1,i={};e.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(e,t,s,o,u,a){return r?r=u!="]":u?r=!0:o?(n==i.stack&&(i.end=a+1,i.stack=-1),n--):s&&(n++,s.length!=1&&(i.stack=n,i.start=a)),e}),i.end!=null&&/^\)*$/.test(e.substr(i.end))&&(e=e.substring(0,i.start)+e.substr(i.end))}return new RegExp(e,(t||"").replace("g",""))},this.getLineTokens=function(e,t){if(t&&typeof t!="string"){var n=t.slice(0);t=n[0]}else var n=[];var i=t||"start",s=this.states[i];s||(i="start",s=this.states[i]);var o=this.matchMappings[i],u=this.regExps[i];u.lastIndex=0;var a,f=[],l=0,c={type:null,value:""};while(a=u.exec(e)){var h=o.defaultToken,p=null,d=a[0],v=u.lastIndex;if(v-d.length>l){var m=e.substring(l,v-d.length);c.type==h?c.value+=m:(c.type&&f.push(c),c={type:h,value:m})}for(var g=0;g<a.length-2;g++){if(a[g+1]===undefined)continue;p=s[o[g]],p.onMatch?h=p.onMatch(d,i,n):h=p.token,p.next&&(typeof p.next=="string"?i=p.next:i=p.next(i,n),s=this.states[i],s||(window.console&&console.error&&console.error(i,"doesn't exist"),i="start",s=this.states[i]),o=this.matchMappings[i],l=v,u=this.regExps[i],u.lastIndex=v);break}if(d)if(typeof h=="string")!!p&&p.merge===!1||c.type!==h?(c.type&&f.push(c),c={type:h,value:d}):c.value+=d;else if(h){c.type&&f.push(c),c={type:null,value:""};for(var g=0;g<h.length;g++)f.push(h[g])}if(l==e.length)break;l=v;if(f.length>r){while(l<e.length)c.type&&f.push(c),c={value:e.substring(l,l+=2e3),type:"overflow"};i="start",n=[];break}}return c.type&&f.push(c),n.length>1&&n[0]!==i&&n.unshift(i),{tokens:f,state:n.length?n:i}}}).call(i.prototype),t.Tokenizer=i}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(e,t,n){var r=e("../lib/lang"),i=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(e,t){if(!t){for(var n in e)this.$rules[n]=e[n];return}for(var n in e){var r=e[n];for(var i=0;i<r.length;i++){var s=r[i];s.next&&(typeof s.next!="string"?s.nextState&&s.nextState.indexOf(t)!==0&&(s.nextState=t+s.nextState):s.next.indexOf(t)!==0&&(s.next=t+s.next))}this.$rules[t+n]=r}},this.getRules=function(){return this.$rules},this.embedRules=function(e,t,n,i,s){var o=(new e).getRules();if(i)for(var u=0;u<i.length;u++)i[u]=t+i[u];else{i=[];for(var a in o)i.push(t+a)}this.addRules(o,t);if(n){var f=Array.prototype[s?"push":"unshift"];for(var u=0;u<i.length;u++)f.apply(this.$rules[i[u]],r.deepCopy(n))}this.$embeds||(this.$embeds=[]),this.$embeds.push(t)},this.getEmbeds=function(){return this.$embeds};var e=function(e,t){return e!="start"&&t.unshift(this.nextState,e),this.nextState},t=function(e,t){return t[0]!==e?"start":(t.shift(),t.shift())};this.normalizeRules=function(){function i(s){var o=r[s];o.processed=!0;for(var u=0;u<o.length;u++){var a=o[u];!a.regex&&a.start&&(a.regex=a.start,a.next||(a.next=[]),a.next.push({defaultToken:a.token},{token:a.token+".end",regex:a.end||a.start,next:"pop"}),a.token=a.token+".start",a.push=!0);var f=a.next||a.push;if(f&&Array.isArray(f)){var l=a.stateName;l||(l=a.token,typeof l!="string"&&(l=l[0]||""),r[l]&&(l+=n++)),r[l]=f,a.next=l,i(l)}else f=="pop"&&(a.next=t);a.push&&(a.nextState=a.next||a.push,a.next=e,delete a.push);if(a.rules)for(var c in a.rules)r[c]?r[c].push&&r[c].push.apply(r[c],a.rules[c]):r[c]=a.rules[c];if(a.include||typeof a=="string")var h=a.include||a,p=r[h];else Array.isArray(a)&&(p=a);if(p){var d=[u,1].concat(p);a.noEscape&&(d=d.filter(function(e){return!e.next})),o.splice.apply(o,d),u--,p=null}a.keywordMap&&(a.token=this.createKeywordMapper(a.keywordMap,a.defaultToken||"text",a.caseInsensitive),delete a.defaultToken)}}var n=0,r=this.$rules;Object.keys(r).forEach(i,this)},this.createKeywordMapper=function(e,t,n,r){var i=Object.create(null);return Object.keys(e).forEach(function(t){var s=e[t];n&&(s=s.toLowerCase());var o=s.split(r||"|");for(var u=o.length;u--;)i[o[u]]=t}),Object.getPrototypeOf(i)&&(i.__proto__=null),this.$keywordList=Object.keys(i),e=null,n?function(e){return i[e.toLowerCase()]||t}:function(e){return i[e]||t}},this.getKeywords=function(){return this.$keywords}}).call(i.prototype),t.TextHighlightRules=i}),ace.define("ace/mode/behaviour",["require","exports","module"],function(e,t,n){var r=function(){this.$behaviours={}};(function(){this.add=function(e,t,n){switch(undefined){case this.$behaviours:this.$behaviours={};case this.$behaviours[e]:this.$behaviours[e]={}}this.$behaviours[e][t]=n},this.addBehaviours=function(e){for(var t in e)for(var n in e[t])this.add(t,n,e[t][n])},this.remove=function(e){this.$behaviours&&this.$behaviours[e]&&delete this.$behaviours[e]},this.inherit=function(e,t){if(typeof e=="function")var n=(new e).getBehaviours(t);else var n=e.getBehaviours(t);this.addBehaviours(n)},this.getBehaviours=function(e){if(!e)return this.$behaviours;var t={};for(var n=0;n<e.length;n++)this.$behaviours[e[n]]&&(t[e[n]]=this.$behaviours[e[n]]);return t}}).call(r.prototype),t.Behaviour=r}),ace.define("ace/unicode",["require","exports","module"],function(e,t,n){function r(e){var n=/\w{4}/g;for(var r in e)t.packages[r]=e[r].replace(n,"\\u$&")}t.packages={},r({L:"0041-005A0061-007A00AA00B500BA00C0-00D600D8-00F600F8-02C102C6-02D102E0-02E402EC02EE0370-037403760377037A-037D03860388-038A038C038E-03A103A3-03F503F7-0481048A-05250531-055605590561-058705D0-05EA05F0-05F20621-064A066E066F0671-06D306D506E506E606EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA07F407F507FA0800-0815081A082408280904-0939093D09500958-0961097109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E460E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EC60EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10A0-10C510D0-10FA10FC1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317D717DC1820-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541AA71B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C7D1CE9-1CEC1CEE-1CF11D00-1DBF1E00-1F151F18-1F1D1F20-1F451F48-1F4D1F50-1F571F591F5B1F5D1F5F-1F7D1F80-1FB41FB6-1FBC1FBE1FC2-1FC41FC6-1FCC1FD0-1FD31FD6-1FDB1FE0-1FEC1FF2-1FF41FF6-1FFC2071207F2090-209421022107210A-211321152119-211D212421262128212A-212D212F-2139213C-213F2145-2149214E218321842C00-2C2E2C30-2C5E2C60-2CE42CEB-2CEE2D00-2D252D30-2D652D6F2D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE2E2F300530063031-3035303B303C3041-3096309D-309F30A1-30FA30FC-30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A48CA4D0-A4FDA500-A60CA610-A61FA62AA62BA640-A65FA662-A66EA67F-A697A6A0-A6E5A717-A71FA722-A788A78BA78CA7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2A9CFAA00-AA28AA40-AA42AA44-AA4BAA60-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADB-AADDABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB00-FB06FB13-FB17FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF21-FF3AFF41-FF5AFF66-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",Ll:"0061-007A00AA00B500BA00DF-00F600F8-00FF01010103010501070109010B010D010F01110113011501170119011B011D011F01210123012501270129012B012D012F01310133013501370138013A013C013E014001420144014601480149014B014D014F01510153015501570159015B015D015F01610163016501670169016B016D016F0171017301750177017A017C017E-0180018301850188018C018D019201950199-019B019E01A101A301A501A801AA01AB01AD01B001B401B601B901BA01BD-01BF01C601C901CC01CE01D001D201D401D601D801DA01DC01DD01DF01E101E301E501E701E901EB01ED01EF01F001F301F501F901FB01FD01FF02010203020502070209020B020D020F02110213021502170219021B021D021F02210223022502270229022B022D022F02310233-0239023C023F0240024202470249024B024D024F-02930295-02AF037103730377037B-037D039003AC-03CE03D003D103D5-03D703D903DB03DD03DF03E103E303E503E703E903EB03ED03EF-03F303F503F803FB03FC0430-045F04610463046504670469046B046D046F04710473047504770479047B047D047F0481048B048D048F04910493049504970499049B049D049F04A104A304A504A704A904AB04AD04AF04B104B304B504B704B904BB04BD04BF04C204C404C604C804CA04CC04CE04CF04D104D304D504D704D904DB04DD04DF04E104E304E504E704E904EB04ED04EF04F104F304F504F704F904FB04FD04FF05010503050505070509050B050D050F05110513051505170519051B051D051F0521052305250561-05871D00-1D2B1D62-1D771D79-1D9A1E011E031E051E071E091E0B1E0D1E0F1E111E131E151E171E191E1B1E1D1E1F1E211E231E251E271E291E2B1E2D1E2F1E311E331E351E371E391E3B1E3D1E3F1E411E431E451E471E491E4B1E4D1E4F1E511E531E551E571E591E5B1E5D1E5F1E611E631E651E671E691E6B1E6D1E6F1E711E731E751E771E791E7B1E7D1E7F1E811E831E851E871E891E8B1E8D1E8F1E911E931E95-1E9D1E9F1EA11EA31EA51EA71EA91EAB1EAD1EAF1EB11EB31EB51EB71EB91EBB1EBD1EBF1EC11EC31EC51EC71EC91ECB1ECD1ECF1ED11ED31ED51ED71ED91EDB1EDD1EDF1EE11EE31EE51EE71EE91EEB1EED1EEF1EF11EF31EF51EF71EF91EFB1EFD1EFF-1F071F10-1F151F20-1F271F30-1F371F40-1F451F50-1F571F60-1F671F70-1F7D1F80-1F871F90-1F971FA0-1FA71FB0-1FB41FB61FB71FBE1FC2-1FC41FC61FC71FD0-1FD31FD61FD71FE0-1FE71FF2-1FF41FF61FF7210A210E210F2113212F21342139213C213D2146-2149214E21842C30-2C5E2C612C652C662C682C6A2C6C2C712C732C742C76-2C7C2C812C832C852C872C892C8B2C8D2C8F2C912C932C952C972C992C9B2C9D2C9F2CA12CA32CA52CA72CA92CAB2CAD2CAF2CB12CB32CB52CB72CB92CBB2CBD2CBF2CC12CC32CC52CC72CC92CCB2CCD2CCF2CD12CD32CD52CD72CD92CDB2CDD2CDF2CE12CE32CE42CEC2CEE2D00-2D25A641A643A645A647A649A64BA64DA64FA651A653A655A657A659A65BA65DA65FA663A665A667A669A66BA66DA681A683A685A687A689A68BA68DA68FA691A693A695A697A723A725A727A729A72BA72DA72F-A731A733A735A737A739A73BA73DA73FA741A743A745A747A749A74BA74DA74FA751A753A755A757A759A75BA75DA75FA761A763A765A767A769A76BA76DA76FA771-A778A77AA77CA77FA781A783A785A787A78CFB00-FB06FB13-FB17FF41-FF5A",Lu:"0041-005A00C0-00D600D8-00DE01000102010401060108010A010C010E01100112011401160118011A011C011E01200122012401260128012A012C012E01300132013401360139013B013D013F0141014301450147014A014C014E01500152015401560158015A015C015E01600162016401660168016A016C016E017001720174017601780179017B017D018101820184018601870189-018B018E-0191019301940196-0198019C019D019F01A001A201A401A601A701A901AC01AE01AF01B1-01B301B501B701B801BC01C401C701CA01CD01CF01D101D301D501D701D901DB01DE01E001E201E401E601E801EA01EC01EE01F101F401F6-01F801FA01FC01FE02000202020402060208020A020C020E02100212021402160218021A021C021E02200222022402260228022A022C022E02300232023A023B023D023E02410243-02460248024A024C024E03700372037603860388-038A038C038E038F0391-03A103A3-03AB03CF03D2-03D403D803DA03DC03DE03E003E203E403E603E803EA03EC03EE03F403F703F903FA03FD-042F04600462046404660468046A046C046E04700472047404760478047A047C047E0480048A048C048E04900492049404960498049A049C049E04A004A204A404A604A804AA04AC04AE04B004B204B404B604B804BA04BC04BE04C004C104C304C504C704C904CB04CD04D004D204D404D604D804DA04DC04DE04E004E204E404E604E804EA04EC04EE04F004F204F404F604F804FA04FC04FE05000502050405060508050A050C050E05100512051405160518051A051C051E0520052205240531-055610A0-10C51E001E021E041E061E081E0A1E0C1E0E1E101E121E141E161E181E1A1E1C1E1E1E201E221E241E261E281E2A1E2C1E2E1E301E321E341E361E381E3A1E3C1E3E1E401E421E441E461E481E4A1E4C1E4E1E501E521E541E561E581E5A1E5C1E5E1E601E621E641E661E681E6A1E6C1E6E1E701E721E741E761E781E7A1E7C1E7E1E801E821E841E861E881E8A1E8C1E8E1E901E921E941E9E1EA01EA21EA41EA61EA81EAA1EAC1EAE1EB01EB21EB41EB61EB81EBA1EBC1EBE1EC01EC21EC41EC61EC81ECA1ECC1ECE1ED01ED21ED41ED61ED81EDA1EDC1EDE1EE01EE21EE41EE61EE81EEA1EEC1EEE1EF01EF21EF41EF61EF81EFA1EFC1EFE1F08-1F0F1F18-1F1D1F28-1F2F1F38-1F3F1F48-1F4D1F591F5B1F5D1F5F1F68-1F6F1FB8-1FBB1FC8-1FCB1FD8-1FDB1FE8-1FEC1FF8-1FFB21022107210B-210D2110-211221152119-211D212421262128212A-212D2130-2133213E213F214521832C00-2C2E2C602C62-2C642C672C692C6B2C6D-2C702C722C752C7E-2C802C822C842C862C882C8A2C8C2C8E2C902C922C942C962C982C9A2C9C2C9E2CA02CA22CA42CA62CA82CAA2CAC2CAE2CB02CB22CB42CB62CB82CBA2CBC2CBE2CC02CC22CC42CC62CC82CCA2CCC2CCE2CD02CD22CD42CD62CD82CDA2CDC2CDE2CE02CE22CEB2CEDA640A642A644A646A648A64AA64CA64EA650A652A654A656A658A65AA65CA65EA662A664A666A668A66AA66CA680A682A684A686A688A68AA68CA68EA690A692A694A696A722A724A726A728A72AA72CA72EA732A734A736A738A73AA73CA73EA740A742A744A746A748A74AA74CA74EA750A752A754A756A758A75AA75CA75EA760A762A764A766A768A76AA76CA76EA779A77BA77DA77EA780A782A784A786A78BFF21-FF3A",Lt:"01C501C801CB01F21F88-1F8F1F98-1F9F1FA8-1FAF1FBC1FCC1FFC",Lm:"02B0-02C102C6-02D102E0-02E402EC02EE0374037A0559064006E506E607F407F507FA081A0824082809710E460EC610FC17D718431AA71C78-1C7D1D2C-1D611D781D9B-1DBF2071207F2090-20942C7D2D6F2E2F30053031-3035303B309D309E30FC-30FEA015A4F8-A4FDA60CA67FA717-A71FA770A788A9CFAA70AADDFF70FF9EFF9F",Lo:"01BB01C0-01C3029405D0-05EA05F0-05F20621-063F0641-064A066E066F0671-06D306D506EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA0800-08150904-0939093D09500958-096109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E450E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10D0-10FA1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317DC1820-18421844-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C771CE9-1CEC1CEE-1CF12135-21382D30-2D652D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE3006303C3041-3096309F30A1-30FA30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A014A016-A48CA4D0-A4F7A500-A60BA610-A61FA62AA62BA66EA6A0-A6E5A7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2AA00-AA28AA40-AA42AA44-AA4BAA60-AA6FAA71-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADBAADCABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF66-FF6FFF71-FF9DFFA0-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC",M:"0300-036F0483-04890591-05BD05BF05C105C205C405C505C70610-061A064B-065E067006D6-06DC06DE-06E406E706E806EA-06ED07110730-074A07A6-07B007EB-07F30816-0819081B-08230825-08270829-082D0900-0903093C093E-094E0951-0955096209630981-098309BC09BE-09C409C709C809CB-09CD09D709E209E30A01-0A030A3C0A3E-0A420A470A480A4B-0A4D0A510A700A710A750A81-0A830ABC0ABE-0AC50AC7-0AC90ACB-0ACD0AE20AE30B01-0B030B3C0B3E-0B440B470B480B4B-0B4D0B560B570B620B630B820BBE-0BC20BC6-0BC80BCA-0BCD0BD70C01-0C030C3E-0C440C46-0C480C4A-0C4D0C550C560C620C630C820C830CBC0CBE-0CC40CC6-0CC80CCA-0CCD0CD50CD60CE20CE30D020D030D3E-0D440D46-0D480D4A-0D4D0D570D620D630D820D830DCA0DCF-0DD40DD60DD8-0DDF0DF20DF30E310E34-0E3A0E47-0E4E0EB10EB4-0EB90EBB0EBC0EC8-0ECD0F180F190F350F370F390F3E0F3F0F71-0F840F860F870F90-0F970F99-0FBC0FC6102B-103E1056-1059105E-10601062-10641067-106D1071-10741082-108D108F109A-109D135F1712-17141732-1734175217531772177317B6-17D317DD180B-180D18A91920-192B1930-193B19B0-19C019C819C91A17-1A1B1A55-1A5E1A60-1A7C1A7F1B00-1B041B34-1B441B6B-1B731B80-1B821BA1-1BAA1C24-1C371CD0-1CD21CD4-1CE81CED1CF21DC0-1DE61DFD-1DFF20D0-20F02CEF-2CF12DE0-2DFF302A-302F3099309AA66F-A672A67CA67DA6F0A6F1A802A806A80BA823-A827A880A881A8B4-A8C4A8E0-A8F1A926-A92DA947-A953A980-A983A9B3-A9C0AA29-AA36AA43AA4CAA4DAA7BAAB0AAB2-AAB4AAB7AAB8AABEAABFAAC1ABE3-ABEAABECABEDFB1EFE00-FE0FFE20-FE26",Mn:"0300-036F0483-04870591-05BD05BF05C105C205C405C505C70610-061A064B-065E067006D6-06DC06DF-06E406E706E806EA-06ED07110730-074A07A6-07B007EB-07F30816-0819081B-08230825-08270829-082D0900-0902093C0941-0948094D0951-095509620963098109BC09C1-09C409CD09E209E30A010A020A3C0A410A420A470A480A4B-0A4D0A510A700A710A750A810A820ABC0AC1-0AC50AC70AC80ACD0AE20AE30B010B3C0B3F0B41-0B440B4D0B560B620B630B820BC00BCD0C3E-0C400C46-0C480C4A-0C4D0C550C560C620C630CBC0CBF0CC60CCC0CCD0CE20CE30D41-0D440D4D0D620D630DCA0DD2-0DD40DD60E310E34-0E3A0E47-0E4E0EB10EB4-0EB90EBB0EBC0EC8-0ECD0F180F190F350F370F390F71-0F7E0F80-0F840F860F870F90-0F970F99-0FBC0FC6102D-10301032-10371039103A103D103E10581059105E-10601071-1074108210851086108D109D135F1712-17141732-1734175217531772177317B7-17BD17C617C9-17D317DD180B-180D18A91920-19221927192819321939-193B1A171A181A561A58-1A5E1A601A621A65-1A6C1A73-1A7C1A7F1B00-1B031B341B36-1B3A1B3C1B421B6B-1B731B801B811BA2-1BA51BA81BA91C2C-1C331C361C371CD0-1CD21CD4-1CE01CE2-1CE81CED1DC0-1DE61DFD-1DFF20D0-20DC20E120E5-20F02CEF-2CF12DE0-2DFF302A-302F3099309AA66FA67CA67DA6F0A6F1A802A806A80BA825A826A8C4A8E0-A8F1A926-A92DA947-A951A980-A982A9B3A9B6-A9B9A9BCAA29-AA2EAA31AA32AA35AA36AA43AA4CAAB0AAB2-AAB4AAB7AAB8AABEAABFAAC1ABE5ABE8ABEDFB1EFE00-FE0FFE20-FE26",Mc:"0903093E-09400949-094C094E0982098309BE-09C009C709C809CB09CC09D70A030A3E-0A400A830ABE-0AC00AC90ACB0ACC0B020B030B3E0B400B470B480B4B0B4C0B570BBE0BBF0BC10BC20BC6-0BC80BCA-0BCC0BD70C01-0C030C41-0C440C820C830CBE0CC0-0CC40CC70CC80CCA0CCB0CD50CD60D020D030D3E-0D400D46-0D480D4A-0D4C0D570D820D830DCF-0DD10DD8-0DDF0DF20DF30F3E0F3F0F7F102B102C10311038103B103C105610571062-10641067-106D108310841087-108C108F109A-109C17B617BE-17C517C717C81923-19261929-192B193019311933-193819B0-19C019C819C91A19-1A1B1A551A571A611A631A641A6D-1A721B041B351B3B1B3D-1B411B431B441B821BA11BA61BA71BAA1C24-1C2B1C341C351CE11CF2A823A824A827A880A881A8B4-A8C3A952A953A983A9B4A9B5A9BAA9BBA9BD-A9C0AA2FAA30AA33AA34AA4DAA7BABE3ABE4ABE6ABE7ABE9ABEAABEC",Me:"0488048906DE20DD-20E020E2-20E4A670-A672",N:"0030-003900B200B300B900BC-00BE0660-066906F0-06F907C0-07C90966-096F09E6-09EF09F4-09F90A66-0A6F0AE6-0AEF0B66-0B6F0BE6-0BF20C66-0C6F0C78-0C7E0CE6-0CEF0D66-0D750E50-0E590ED0-0ED90F20-0F331040-10491090-10991369-137C16EE-16F017E0-17E917F0-17F91810-18191946-194F19D0-19DA1A80-1A891A90-1A991B50-1B591BB0-1BB91C40-1C491C50-1C5920702074-20792080-20892150-21822185-21892460-249B24EA-24FF2776-27932CFD30073021-30293038-303A3192-31953220-32293251-325F3280-328932B1-32BFA620-A629A6E6-A6EFA830-A835A8D0-A8D9A900-A909A9D0-A9D9AA50-AA59ABF0-ABF9FF10-FF19",Nd:"0030-00390660-066906F0-06F907C0-07C90966-096F09E6-09EF0A66-0A6F0AE6-0AEF0B66-0B6F0BE6-0BEF0C66-0C6F0CE6-0CEF0D66-0D6F0E50-0E590ED0-0ED90F20-0F291040-10491090-109917E0-17E91810-18191946-194F19D0-19DA1A80-1A891A90-1A991B50-1B591BB0-1BB91C40-1C491C50-1C59A620-A629A8D0-A8D9A900-A909A9D0-A9D9AA50-AA59ABF0-ABF9FF10-FF19",Nl:"16EE-16F02160-21822185-218830073021-30293038-303AA6E6-A6EF",No:"00B200B300B900BC-00BE09F4-09F90BF0-0BF20C78-0C7E0D70-0D750F2A-0F331369-137C17F0-17F920702074-20792080-20892150-215F21892460-249B24EA-24FF2776-27932CFD3192-31953220-32293251-325F3280-328932B1-32BFA830-A835",P:"0021-00230025-002A002C-002F003A003B003F0040005B-005D005F007B007D00A100AB00B700BB00BF037E0387055A-055F0589058A05BE05C005C305C605F305F40609060A060C060D061B061E061F066A-066D06D40700-070D07F7-07F90830-083E0964096509700DF40E4F0E5A0E5B0F04-0F120F3A-0F3D0F850FD0-0FD4104A-104F10FB1361-13681400166D166E169B169C16EB-16ED1735173617D4-17D617D8-17DA1800-180A1944194519DE19DF1A1E1A1F1AA0-1AA61AA8-1AAD1B5A-1B601C3B-1C3F1C7E1C7F1CD32010-20272030-20432045-20512053-205E207D207E208D208E2329232A2768-277527C527C627E6-27EF2983-299829D8-29DB29FC29FD2CF9-2CFC2CFE2CFF2E00-2E2E2E302E313001-30033008-30113014-301F3030303D30A030FBA4FEA4FFA60D-A60FA673A67EA6F2-A6F7A874-A877A8CEA8CFA8F8-A8FAA92EA92FA95FA9C1-A9CDA9DEA9DFAA5C-AA5FAADEAADFABEBFD3EFD3FFE10-FE19FE30-FE52FE54-FE61FE63FE68FE6AFE6BFF01-FF03FF05-FF0AFF0C-FF0FFF1AFF1BFF1FFF20FF3B-FF3DFF3FFF5BFF5DFF5F-FF65",Pd:"002D058A05BE140018062010-20152E172E1A301C303030A0FE31FE32FE58FE63FF0D",Ps:"0028005B007B0F3A0F3C169B201A201E2045207D208D23292768276A276C276E27702772277427C527E627E827EA27EC27EE2983298529872989298B298D298F299129932995299729D829DA29FC2E222E242E262E283008300A300C300E3010301430163018301A301DFD3EFE17FE35FE37FE39FE3BFE3DFE3FFE41FE43FE47FE59FE5BFE5DFF08FF3BFF5BFF5FFF62",Pe:"0029005D007D0F3B0F3D169C2046207E208E232A2769276B276D276F27712773277527C627E727E927EB27ED27EF298429862988298A298C298E2990299229942996299829D929DB29FD2E232E252E272E293009300B300D300F3011301530173019301B301E301FFD3FFE18FE36FE38FE3AFE3CFE3EFE40FE42FE44FE48FE5AFE5CFE5EFF09FF3DFF5DFF60FF63",Pi:"00AB2018201B201C201F20392E022E042E092E0C2E1C2E20",Pf:"00BB2019201D203A2E032E052E0A2E0D2E1D2E21",Pc:"005F203F20402054FE33FE34FE4D-FE4FFF3F",Po:"0021-00230025-0027002A002C002E002F003A003B003F0040005C00A100B700BF037E0387055A-055F058905C005C305C605F305F40609060A060C060D061B061E061F066A-066D06D40700-070D07F7-07F90830-083E0964096509700DF40E4F0E5A0E5B0F04-0F120F850FD0-0FD4104A-104F10FB1361-1368166D166E16EB-16ED1735173617D4-17D617D8-17DA1800-18051807-180A1944194519DE19DF1A1E1A1F1AA0-1AA61AA8-1AAD1B5A-1B601C3B-1C3F1C7E1C7F1CD3201620172020-20272030-2038203B-203E2041-20432047-205120532055-205E2CF9-2CFC2CFE2CFF2E002E012E06-2E082E0B2E0E-2E162E182E192E1B2E1E2E1F2E2A-2E2E2E302E313001-3003303D30FBA4FEA4FFA60D-A60FA673A67EA6F2-A6F7A874-A877A8CEA8CFA8F8-A8FAA92EA92FA95FA9C1-A9CDA9DEA9DFAA5C-AA5FAADEAADFABEBFE10-FE16FE19FE30FE45FE46FE49-FE4CFE50-FE52FE54-FE57FE5F-FE61FE68FE6AFE6BFF01-FF03FF05-FF07FF0AFF0CFF0EFF0FFF1AFF1BFF1FFF20FF3CFF61FF64FF65",S:"0024002B003C-003E005E0060007C007E00A2-00A900AC00AE-00B100B400B600B800D700F702C2-02C502D2-02DF02E5-02EB02ED02EF-02FF03750384038503F604820606-0608060B060E060F06E906FD06FE07F609F209F309FA09FB0AF10B700BF3-0BFA0C7F0CF10CF20D790E3F0F01-0F030F13-0F170F1A-0F1F0F340F360F380FBE-0FC50FC7-0FCC0FCE0FCF0FD5-0FD8109E109F13601390-139917DB194019E0-19FF1B61-1B6A1B74-1B7C1FBD1FBF-1FC11FCD-1FCF1FDD-1FDF1FED-1FEF1FFD1FFE20442052207A-207C208A-208C20A0-20B8210021012103-21062108210921142116-2118211E-2123212521272129212E213A213B2140-2144214A-214D214F2190-2328232B-23E82400-24262440-244A249C-24E92500-26CD26CF-26E126E326E8-26FF2701-27042706-2709270C-27272729-274B274D274F-27522756-275E2761-276727942798-27AF27B1-27BE27C0-27C427C7-27CA27CC27D0-27E527F0-29822999-29D729DC-29FB29FE-2B4C2B50-2B592CE5-2CEA2E80-2E992E9B-2EF32F00-2FD52FF0-2FFB300430123013302030363037303E303F309B309C319031913196-319F31C0-31E33200-321E322A-32503260-327F328A-32B032C0-32FE3300-33FF4DC0-4DFFA490-A4C6A700-A716A720A721A789A78AA828-A82BA836-A839AA77-AA79FB29FDFCFDFDFE62FE64-FE66FE69FF04FF0BFF1C-FF1EFF3EFF40FF5CFF5EFFE0-FFE6FFE8-FFEEFFFCFFFD",Sm:"002B003C-003E007C007E00AC00B100D700F703F60606-060820442052207A-207C208A-208C2140-2144214B2190-2194219A219B21A021A321A621AE21CE21CF21D221D421F4-22FF2308-230B23202321237C239B-23B323DC-23E125B725C125F8-25FF266F27C0-27C427C7-27CA27CC27D0-27E527F0-27FF2900-29822999-29D729DC-29FB29FE-2AFF2B30-2B442B47-2B4CFB29FE62FE64-FE66FF0BFF1C-FF1EFF5CFF5EFFE2FFE9-FFEC",Sc:"002400A2-00A5060B09F209F309FB0AF10BF90E3F17DB20A0-20B8A838FDFCFE69FF04FFE0FFE1FFE5FFE6",Sk:"005E006000A800AF00B400B802C2-02C502D2-02DF02E5-02EB02ED02EF-02FF0375038403851FBD1FBF-1FC11FCD-1FCF1FDD-1FDF1FED-1FEF1FFD1FFE309B309CA700-A716A720A721A789A78AFF3EFF40FFE3",So:"00A600A700A900AE00B000B60482060E060F06E906FD06FE07F609FA0B700BF3-0BF80BFA0C7F0CF10CF20D790F01-0F030F13-0F170F1A-0F1F0F340F360F380FBE-0FC50FC7-0FCC0FCE0FCF0FD5-0FD8109E109F13601390-1399194019E0-19FF1B61-1B6A1B74-1B7C210021012103-21062108210921142116-2118211E-2123212521272129212E213A213B214A214C214D214F2195-2199219C-219F21A121A221A421A521A7-21AD21AF-21CD21D021D121D321D5-21F32300-2307230C-231F2322-2328232B-237B237D-239A23B4-23DB23E2-23E82400-24262440-244A249C-24E92500-25B625B8-25C025C2-25F72600-266E2670-26CD26CF-26E126E326E8-26FF2701-27042706-2709270C-27272729-274B274D274F-27522756-275E2761-276727942798-27AF27B1-27BE2800-28FF2B00-2B2F2B452B462B50-2B592CE5-2CEA2E80-2E992E9B-2EF32F00-2FD52FF0-2FFB300430123013302030363037303E303F319031913196-319F31C0-31E33200-321E322A-32503260-327F328A-32B032C0-32FE3300-33FF4DC0-4DFFA490-A4C6A828-A82BA836A837A839AA77-AA79FDFDFFE4FFE8FFEDFFEEFFFCFFFD",Z:"002000A01680180E2000-200A20282029202F205F3000",Zs:"002000A01680180E2000-200A202F205F3000",Zl:"2028",Zp:"2029",C:"0000-001F007F-009F00AD03780379037F-0383038B038D03A20526-05300557055805600588058B-059005C8-05CF05EB-05EF05F5-0605061C061D0620065F06DD070E070F074B074C07B2-07BF07FB-07FF082E082F083F-08FF093A093B094F095609570973-097809800984098D098E0991099209A909B109B3-09B509BA09BB09C509C609C909CA09CF-09D609D8-09DB09DE09E409E509FC-0A000A040A0B-0A0E0A110A120A290A310A340A370A3A0A3B0A3D0A43-0A460A490A4A0A4E-0A500A52-0A580A5D0A5F-0A650A76-0A800A840A8E0A920AA90AB10AB40ABA0ABB0AC60ACA0ACE0ACF0AD1-0ADF0AE40AE50AF00AF2-0B000B040B0D0B0E0B110B120B290B310B340B3A0B3B0B450B460B490B4A0B4E-0B550B58-0B5B0B5E0B640B650B72-0B810B840B8B-0B8D0B910B96-0B980B9B0B9D0BA0-0BA20BA5-0BA70BAB-0BAD0BBA-0BBD0BC3-0BC50BC90BCE0BCF0BD1-0BD60BD8-0BE50BFB-0C000C040C0D0C110C290C340C3A-0C3C0C450C490C4E-0C540C570C5A-0C5F0C640C650C70-0C770C800C810C840C8D0C910CA90CB40CBA0CBB0CC50CC90CCE-0CD40CD7-0CDD0CDF0CE40CE50CF00CF3-0D010D040D0D0D110D290D3A-0D3C0D450D490D4E-0D560D58-0D5F0D640D650D76-0D780D800D810D840D97-0D990DB20DBC0DBE0DBF0DC7-0DC90DCB-0DCE0DD50DD70DE0-0DF10DF5-0E000E3B-0E3E0E5C-0E800E830E850E860E890E8B0E8C0E8E-0E930E980EA00EA40EA60EA80EA90EAC0EBA0EBE0EBF0EC50EC70ECE0ECF0EDA0EDB0EDE-0EFF0F480F6D-0F700F8C-0F8F0F980FBD0FCD0FD9-0FFF10C6-10CF10FD-10FF1249124E124F12571259125E125F1289128E128F12B112B612B712BF12C112C612C712D7131113161317135B-135E137D-137F139A-139F13F5-13FF169D-169F16F1-16FF170D1715-171F1737-173F1754-175F176D17711774-177F17B417B517DE17DF17EA-17EF17FA-17FF180F181A-181F1878-187F18AB-18AF18F6-18FF191D-191F192C-192F193C-193F1941-1943196E196F1975-197F19AC-19AF19CA-19CF19DB-19DD1A1C1A1D1A5F1A7D1A7E1A8A-1A8F1A9A-1A9F1AAE-1AFF1B4C-1B4F1B7D-1B7F1BAB-1BAD1BBA-1BFF1C38-1C3A1C4A-1C4C1C80-1CCF1CF3-1CFF1DE7-1DFC1F161F171F1E1F1F1F461F471F4E1F4F1F581F5A1F5C1F5E1F7E1F7F1FB51FC51FD41FD51FDC1FF01FF11FF51FFF200B-200F202A-202E2060-206F20722073208F2095-209F20B9-20CF20F1-20FF218A-218F23E9-23FF2427-243F244B-245F26CE26E226E4-26E727002705270A270B2728274C274E2753-2755275F27602795-279727B027BF27CB27CD-27CF2B4D-2B4F2B5A-2BFF2C2F2C5F2CF2-2CF82D26-2D2F2D66-2D6E2D70-2D7F2D97-2D9F2DA72DAF2DB72DBF2DC72DCF2DD72DDF2E32-2E7F2E9A2EF4-2EFF2FD6-2FEF2FFC-2FFF3040309730983100-3104312E-3130318F31B8-31BF31E4-31EF321F32FF4DB6-4DBF9FCC-9FFFA48D-A48FA4C7-A4CFA62C-A63FA660A661A674-A67BA698-A69FA6F8-A6FFA78D-A7FAA82C-A82FA83A-A83FA878-A87FA8C5-A8CDA8DA-A8DFA8FC-A8FFA954-A95EA97D-A97FA9CEA9DA-A9DDA9E0-A9FFAA37-AA3FAA4EAA4FAA5AAA5BAA7C-AA7FAAC3-AADAAAE0-ABBFABEEABEFABFA-ABFFD7A4-D7AFD7C7-D7CAD7FC-F8FFFA2EFA2FFA6EFA6FFADA-FAFFFB07-FB12FB18-FB1CFB37FB3DFB3FFB42FB45FBB2-FBD2FD40-FD4FFD90FD91FDC8-FDEFFDFEFDFFFE1A-FE1FFE27-FE2FFE53FE67FE6C-FE6FFE75FEFD-FF00FFBF-FFC1FFC8FFC9FFD0FFD1FFD8FFD9FFDD-FFDFFFE7FFEF-FFFBFFFEFFFF",Cc:"0000-001F007F-009F",Cf:"00AD0600-060306DD070F17B417B5200B-200F202A-202E2060-2064206A-206FFEFFFFF9-FFFB",Co:"E000-F8FF",Cs:"D800-DFFF",Cn:"03780379037F-0383038B038D03A20526-05300557055805600588058B-059005C8-05CF05EB-05EF05F5-05FF06040605061C061D0620065F070E074B074C07B2-07BF07FB-07FF082E082F083F-08FF093A093B094F095609570973-097809800984098D098E0991099209A909B109B3-09B509BA09BB09C509C609C909CA09CF-09D609D8-09DB09DE09E409E509FC-0A000A040A0B-0A0E0A110A120A290A310A340A370A3A0A3B0A3D0A43-0A460A490A4A0A4E-0A500A52-0A580A5D0A5F-0A650A76-0A800A840A8E0A920AA90AB10AB40ABA0ABB0AC60ACA0ACE0ACF0AD1-0ADF0AE40AE50AF00AF2-0B000B040B0D0B0E0B110B120B290B310B340B3A0B3B0B450B460B490B4A0B4E-0B550B58-0B5B0B5E0B640B650B72-0B810B840B8B-0B8D0B910B96-0B980B9B0B9D0BA0-0BA20BA5-0BA70BAB-0BAD0BBA-0BBD0BC3-0BC50BC90BCE0BCF0BD1-0BD60BD8-0BE50BFB-0C000C040C0D0C110C290C340C3A-0C3C0C450C490C4E-0C540C570C5A-0C5F0C640C650C70-0C770C800C810C840C8D0C910CA90CB40CBA0CBB0CC50CC90CCE-0CD40CD7-0CDD0CDF0CE40CE50CF00CF3-0D010D040D0D0D110D290D3A-0D3C0D450D490D4E-0D560D58-0D5F0D640D650D76-0D780D800D810D840D97-0D990DB20DBC0DBE0DBF0DC7-0DC90DCB-0DCE0DD50DD70DE0-0DF10DF5-0E000E3B-0E3E0E5C-0E800E830E850E860E890E8B0E8C0E8E-0E930E980EA00EA40EA60EA80EA90EAC0EBA0EBE0EBF0EC50EC70ECE0ECF0EDA0EDB0EDE-0EFF0F480F6D-0F700F8C-0F8F0F980FBD0FCD0FD9-0FFF10C6-10CF10FD-10FF1249124E124F12571259125E125F1289128E128F12B112B612B712BF12C112C612C712D7131113161317135B-135E137D-137F139A-139F13F5-13FF169D-169F16F1-16FF170D1715-171F1737-173F1754-175F176D17711774-177F17DE17DF17EA-17EF17FA-17FF180F181A-181F1878-187F18AB-18AF18F6-18FF191D-191F192C-192F193C-193F1941-1943196E196F1975-197F19AC-19AF19CA-19CF19DB-19DD1A1C1A1D1A5F1A7D1A7E1A8A-1A8F1A9A-1A9F1AAE-1AFF1B4C-1B4F1B7D-1B7F1BAB-1BAD1BBA-1BFF1C38-1C3A1C4A-1C4C1C80-1CCF1CF3-1CFF1DE7-1DFC1F161F171F1E1F1F1F461F471F4E1F4F1F581F5A1F5C1F5E1F7E1F7F1FB51FC51FD41FD51FDC1FF01FF11FF51FFF2065-206920722073208F2095-209F20B9-20CF20F1-20FF218A-218F23E9-23FF2427-243F244B-245F26CE26E226E4-26E727002705270A270B2728274C274E2753-2755275F27602795-279727B027BF27CB27CD-27CF2B4D-2B4F2B5A-2BFF2C2F2C5F2CF2-2CF82D26-2D2F2D66-2D6E2D70-2D7F2D97-2D9F2DA72DAF2DB72DBF2DC72DCF2DD72DDF2E32-2E7F2E9A2EF4-2EFF2FD6-2FEF2FFC-2FFF3040309730983100-3104312E-3130318F31B8-31BF31E4-31EF321F32FF4DB6-4DBF9FCC-9FFFA48D-A48FA4C7-A4CFA62C-A63FA660A661A674-A67BA698-A69FA6F8-A6FFA78D-A7FAA82C-A82FA83A-A83FA878-A87FA8C5-A8CDA8DA-A8DFA8FC-A8FFA954-A95EA97D-A97FA9CEA9DA-A9DDA9E0-A9FFAA37-AA3FAA4EAA4FAA5AAA5BAA7C-AA7FAAC3-AADAAAE0-ABBFABEEABEFABFA-ABFFD7A4-D7AFD7C7-D7CAD7FC-D7FFFA2EFA2FFA6EFA6FFADA-FAFFFB07-FB12FB18-FB1CFB37FB3DFB3FFB42FB45FBB2-FBD2FD40-FD4FFD90FD91FDC8-FDEFFDFEFDFFFE1A-FE1FFE27-FE2FFE53FE67FE6C-FE6FFE75FEFDFEFEFF00FFBF-FFC1FFC8FFC9FFD0FFD1FFD8FFD9FFDD-FFDFFFE7FFEF-FFF8FFFEFFFF"})}),ace.define("ace/token_iterator",["require","exports","module"],function(e,t,n){var r=function(e,t,n){this.$session=e,this.$row=t,this.$rowTokens=e.getTokens(t);var r=e.getTokenAt(t,n);this.$tokenIndex=r?r.index:-1};(function(){this.stepBackward=function(){this.$tokenIndex-=1;while(this.$tokenIndex<0){this.$row-=1;if(this.$row<0)return this.$row=0,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=this.$rowTokens.length-1}return this.$rowTokens[this.$tokenIndex]},this.stepForward=function(){this.$tokenIndex+=1;var e;while(this.$tokenIndex>=this.$rowTokens.length){this.$row+=1,e||(e=this.$session.getLength());if(this.$row>=e)return this.$row=e-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},this.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},this.getCurrentTokenRow=function(){return this.$row},this.getCurrentTokenColumn=function(){var e=this.$rowTokens,t=this.$tokenIndex,n=e[t].start;if(n!==undefined)return n;n=0;while(t>0)t-=1,n+=e[t].value.length;return n}}).call(r.prototype),t.TokenIterator=r}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this._insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.getLine(e.start.row).substring(e.start.column,e.end.column);var t=this.getLines(e.start.row,e.end.row);t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;return e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this._insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){return e>=this.getLength()?this.insert({row:e,column:0},"\n"+t.join("\n")):this._insertLines(Math.max(e,0),t)},this._insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this._insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){!e instanceof s&&(e=s.fromPoints(e.start,e.end)),e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this._removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){return e<0||t>=this.getLength()?this.remove(new s(e,0,t+1,0)):this._removeLines(e,t)},this._removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){!e instanceof s&&(e=s.fromPoints(e.start,e.end));if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this._removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this._removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this._insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length+r;return i+e.column}}).call(u.prototype),t.Document=u}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.$onChange=this.onChange.bind(this),this.attach(e),typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;if(t.action==="insertText")if(s.row===r&&s.column<=i){if(s.column!==i||!this.$insertRight)s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row)}else s.row!==o.row&&s.row<r&&(r+=o.row-s.row);else t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0));this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),ace.define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=function(e,t){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=e;var n=this;this.$worker=function(){if(!n.running)return;var e=new Date,t=n.currentLine,r=-1,i=n.doc;while(n.lines[t])t++;var s=t,o=i.getLength(),u=0;n.running=!1;while(t<o){n.$tokenizeRow(t),r=t;do t++;while(n.lines[t]);u++;if(u%5==0&&new Date-e>20){n.running=setTimeout(n.$worker,20),n.currentLine=t;return}}n.currentLine=t,s<=r&&n.fireUpdateEvent(s,r)}};(function(){r.implement(this,i),this.setTokenizer=function(e){this.tokenizer=e,this.lines=[],this.states=[],this.start(0)},this.setDocument=function(e){this.doc=e,this.lines=[],this.states=[],this.stop()},this.fireUpdateEvent=function(e,t){var n={first:e,last:t};this._emit("update",{data:n})},this.start=function(e){this.currentLine=Math.min(e||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},this.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},this.$updateOnChange=function(e){var t=e.range,n=t.start.row,r=t.end.row-n;if(r===0)this.lines[n]=null;else if(e.action=="removeText"||e.action=="removeLines")this.lines.splice(n,r+1,null),this.states.splice(n,r+1,null);else{var i=Array(r+1);i.unshift(n,1),this.lines.splice.apply(this.lines,i),this.states.splice.apply(this.states,i)}this.currentLine=Math.min(n,this.currentLine,this.doc.getLength()),this.stop()},this.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},this.getTokens=function(e){return this.lines[e]||this.$tokenizeRow(e)},this.getState=function(e){return this.currentLine==e&&this.$tokenizeRow(e),this.states[e]||"start"},this.$tokenizeRow=function(e){var t=this.doc.getLine(e),n=this.states[e-1],r=this.tokenizer.getLineTokens(t,n,e);return this.states[e]+""!=r.state+""?(this.states[e]=r.state,this.lines[e+1]=null,this.currentLine>e+1&&(this.currentLine=e+1)):this.currentLine==e&&(this.currentLine=e+1),this.lines[e]=r.tokens}}).call(s.prototype),t.BackgroundTokenizer=s}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,n){var r=e("./lib/lang"),i=e("./lib/oop"),s=e("./range").Range,o=function(e,t,n){this.setRegexp(e),this.clazz=t,this.type=n||"text"};(function(){this.MAX_RANGES=500,this.setRegexp=function(e){if(this.regExp+""==e+"")return;this.regExp=e,this.cache=[]},this.update=function(e,t,n,i){if(!this.regExp)return;var o=i.firstRow,u=i.lastRow;for(var a=o;a<=u;a++){var f=this.cache[a];f==null&&(f=r.getMatchOffsets(n.getLine(a),this.regExp),f.length>this.MAX_RANGES&&(f=f.slice(0,this.MAX_RANGES)),f=f.map(function(e){return new s(a,e.offset,a,e.offset+e.length)}),this.cache[a]=f.length?f:"");for(var l=f.length;l--;)t.drawSingleLineMarker(e,f[l].toScreenRange(n),this.clazz,i)}}}).call(o.prototype),t.SearchHighlight=o}),ace.define("ace/edit_session/folding",["require","exports","module","ace/range","ace/edit_session/fold_line","ace/edit_session/fold","ace/token_iterator"],function(e,t,n){function u(){this.getFoldAt=function(e,t,n){var r=this.getFoldLine(e);if(!r)return null;var i=r.folds;for(var s=0;s<i.length;s++){var o=i[s];if(o.range.contains(e,t)){if(n==1&&o.range.isEnd(e,t))continue;if(n==-1&&o.range.isStart(e,t))continue;return o}}},this.getFoldsInRange=function(e){var t=e.start,n=e.end,r=this.$foldData,i=[];t.column+=1,n.column-=1;for(var s=0;s<r.length;s++){var o=r[s].range.compareRange(e);if(o==2)continue;if(o==-2)break;var u=r[s].folds;for(var a=0;a<u.length;a++){var f=u[a];o=f.range.compareRange(e);if(o==-2)break;if(o==2)continue;if(o==42)break;i.push(f)}}return t.column-=1,n.column+=1,i},this.getFoldsInRangeList=function(e){if(Array.isArray(e)){var t=[];e.forEach(function(e){t=t.concat(this.getFoldsInRange(e))},this)}else var t=this.getFoldsInRange(e);return t},this.getAllFolds=function(){var e=[],t=this.$foldData;for(var n=0;n<t.length;n++)for(var r=0;r<t[n].folds.length;r++)e.push(t[n].folds[r]);return e},this.getFoldStringAt=function(e,t,n,r){r=r||this.getFoldLine(e);if(!r)return null;var i={end:{column:0}},s,o;for(var u=0;u<r.folds.length;u++){o=r.folds[u];var a=o.range.compareEnd(e,t);if(a==-1){s=this.getLine(o.start.row).substring(i.end.column,o.start.column);break}if(a===0)return null;i=o}return s||(s=this.getLine(o.start.row).substring(i.end.column)),n==-1?s.substring(0,t-i.end.column):n==1?s.substring(t-i.end.column):s},this.getFoldLine=function(e,t){var n=this.$foldData,r=0;t&&(r=n.indexOf(t)),r==-1&&(r=0);for(r;r<n.length;r++){var i=n[r];if(i.start.row<=e&&i.end.row>=e)return i;if(i.end.row>e)return null}return null},this.getNextFoldLine=function(e,t){var n=this.$foldData,r=0;t&&(r=n.indexOf(t)),r==-1&&(r=0);for(r;r<n.length;r++){var i=n[r];if(i.end.row>=e)return i}return null},this.getFoldedRowCount=function(e,t){var n=this.$foldData,r=t-e+1;for(var i=0;i<n.length;i++){var s=n[i],o=s.end.row,u=s.start.row;if(o>=t){u<t&&(u>=e?r-=t-u:r=0);break}o>=e&&(u>=e?r-=o-u:r-=o-e+1)}return r},this.$addFoldLine=function(e){return this.$foldData.push(e),this.$foldData.sort(function(e,t){return e.start.row-t.start.row}),e},this.addFold=function(e,t){var n=this.$foldData,r=!1,o;e instanceof s?o=e:(o=new s(t,e),o.collapseChildren=t.collapseChildren),this.$clipRangeToDocument(o.range);var u=o.start.row,a=o.start.column,f=o.end.row,l=o.end.column;if(u<f||u==f&&a<=l-2){var c=this.getFoldAt(u,a,1),h=this.getFoldAt(f,l,-1);if(c&&h==c)return c.addSubFold(o);if(c&&!c.range.isStart(u,a)||h&&!h.range.isEnd(f,l))throw new Error("A fold can't intersect already existing fold"+o.range+c.range);var p=this.getFoldsInRange(o.range);p.length>0&&(this.removeFolds(p),p.forEach(function(e){o.addSubFold(e)}));for(var d=0;d<n.length;d++){var v=n[d];if(f==v.start.row){v.addFold(o),r=!0;break}if(u==v.end.row){v.addFold(o),r=!0;if(!o.sameRow){var m=n[d+1];if(m&&m.start.row==f){v.merge(m);break}}break}if(f<=v.start.row)break}return r||(v=this.$addFoldLine(new i(this.$foldData,o))),this.$useWrapMode?this.$updateWrapData(v.start.row,v.start.row):this.$updateRowLengthCache(v.start.row,v.start.row),this.$modified=!0,this._emit("changeFold",{data:o,action:"add"}),o}throw new Error("The range has to be at least 2 characters width")},this.addFolds=function(e){e.forEach(function(e){this.addFold(e)},this)},this.removeFold=function(e){var t=e.foldLine,n=t.start.row,r=t.end.row,i=this.$foldData,s=t.folds;if(s.length==1)i.splice(i.indexOf(t),1);else if(t.range.isEnd(e.end.row,e.end.column))s.pop(),t.end.row=s[s.length-1].end.row,t.end.column=s[s.length-1].end.column;else if(t.range.isStart(e.start.row,e.start.column))s.shift(),t.start.row=s[0].start.row,t.start.column=s[0].start.column;else if(e.sameRow)s.splice(s.indexOf(e),1);else{var o=t.split(e.start.row,e.start.column);s=o.folds,s.shift(),o.start.row=s[0].start.row,o.start.column=s[0].start.column}this.$updating||(this.$useWrapMode?this.$updateWrapData(n,r):this.$updateRowLengthCache(n,r)),this.$modified=!0,this._emit("changeFold",{data:e,action:"remove"})},this.removeFolds=function(e){var t=[];for(var n=0;n<e.length;n++)t.push(e[n]);t.forEach(function(e){this.removeFold(e)},this),this.$modified=!0},this.expandFold=function(e){this.removeFold(e),e.subFolds.forEach(function(t){e.restoreRange(t),this.addFold(t)},this),e.collapseChildren>0&&this.foldAll(e.start.row+1,e.end.row,e.collapseChildren-1),e.subFolds=[]},this.expandFolds=function(e){e.forEach(function(e){this.expandFold(e)},this)},this.unfold=function(e,t){var n,i;e==null?(n=new r(0,0,this.getLength(),0),t=!0):typeof e=="number"?n=new r(e,0,e,this.getLine(e).length):"row"in e?n=r.fromPoints(e,e):n=e,i=this.getFoldsInRangeList(n);if(t)this.removeFolds(i);else{var s=i;while(s.length)this.expandFolds(s),s=this.getFoldsInRangeList(n)}if(i.length)return i},this.isRowFolded=function(e,t){return!!this.getFoldLine(e,t)},this.getRowFoldEnd=function(e,t){var n=this.getFoldLine(e,t);return n?n.end.row:e},this.getRowFoldStart=function(e,t){var n=this.getFoldLine(e,t);return n?n.start.row:e},this.getFoldDisplayLine=function(e,t,n,r,i){r==null&&(r=e.start.row,i=0),t==null&&(t=e.end.row,n=this.getLine(t).length);var s=this.doc,o="";return e.walk(function(e,t,n,u){if(t<r)return;if(t==r){if(n<i)return;u=Math.max(i,u)}e!=null?o+=e:o+=s.getLine(t).substring(u,n)},t,n),o},this.getDisplayLine=function(e,t,n,r){var i=this.getFoldLine(e);if(!i){var s;return s=this.doc.getLine(e),s.substring(r||0,t||s.length)}return this.getFoldDisplayLine(i,e,t,n,r)},this.$cloneFoldData=function(){var e=[];return e=this.$foldData.map(function(t){var n=t.folds.map(function(e){return e.clone()});return new i(e,n)}),e},this.toggleFold=function(e){var t=this.selection,n=t.getRange(),r,i;if(n.isEmpty()){var s=n.start;r=this.getFoldAt(s.row,s.column);if(r){this.expandFold(r);return}(i=this.findMatchingBracket(s))?n.comparePoint(i)==1?n.end=i:(n.start=i,n.start.column++,n.end.column--):(i=this.findMatchingBracket({row:s.row,column:s.column+1}))?(n.comparePoint(i)==1?n.end=i:n.start=i,n.start.column++):n=this.getCommentFoldRange(s.row,s.column)||n}else{var o=this.getFoldsInRange(n);if(e&&o.length){this.expandFolds(o);return}o.length==1&&(r=o[0])}r||(r=this.getFoldAt(n.start.row,n.start.column));if(r&&r.range.toString()==n.toString()){this.expandFold(r);return}var u="...";if(!n.isMultiLine()){u=this.getTextRange(n);if(u.length<4)return;u=u.trim().substring(0,2)+".."}this.addFold(u,n)},this.getCommentFoldRange=function(e,t,n){var i=new o(this,e,t),s=i.getCurrentToken();if(s&&/^comment|string/.test(s.type)){var u=new r,a=new RegExp(s.type.replace(/\..*/,"\\."));if(n!=1){do s=i.stepBackward();while(s&&a.test(s.type));i.stepForward()}u.start.row=i.getCurrentTokenRow(),u.start.column=i.getCurrentTokenColumn()+2,i=new o(this,e,t);if(n!=-1){do s=i.stepForward();while(s&&a.test(s.type));s=i.stepBackward()}else s=i.getCurrentToken();return u.end.row=i.getCurrentTokenRow(),u.end.column=i.getCurrentTokenColumn()+s.value.length-2,u}},this.foldAll=function(e,t,n){n==undefined&&(n=1e5);var r=this.foldWidgets;if(!r)return;t=t||this.getLength(),e=e||0;for(var i=e;i<t;i++){r[i]==null&&(r[i]=this.getFoldWidget(i));if(r[i]!="start")continue;var s=this.getFoldWidgetRange(i);if(s&&s.isMultiLine()&&s.end.row<=t&&s.start.row>=e){i=s.end.row;try{var o=this.addFold("...",s);o&&(o.collapseChildren=n)}catch(u){}}}},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(e){if(!this.$foldStyles[e])throw new Error("invalid fold style: "+e+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle==e)return;this.$foldStyle=e,e=="manual"&&this.unfold();var t=this.$foldMode;this.$setFolding(null),this.$setFolding(t)},this.$setFolding=function(e){if(this.$foldMode==e)return;this.$foldMode=e,this.removeListener("change",this.$updateFoldWidgets),this._emit("changeAnnotation");if(!e||this.$foldStyle=="manual"){this.foldWidgets=null;return}this.foldWidgets=[],this.getFoldWidget=e.getFoldWidget.bind(e,this,this.$foldStyle),this.getFoldWidgetRange=e.getFoldWidgetRange.bind(e,this,this.$foldStyle),this.$updateFoldWidgets=this.updateFoldWidgets.bind(this),this.on("change",this.$updateFoldWidgets)},this.getParentFoldRangeData=function(e,t){var n=this.foldWidgets;if(!n||t&&n[e])return{};var r=e-1,i;while(r>=0){var s=n[r];s==null&&(s=n[r]=this.getFoldWidget(r));if(s=="start"){var o=this.getFoldWidgetRange(r);i||(i=o);if(o&&o.end.row>=e)break}r--}return{range:r!==-1&&o,firstRange:i}},this.onFoldWidgetClick=function(e,t){t=t.domEvent;var n={children:t.shiftKey,all:t.ctrlKey||t.metaKey,siblings:t.altKey},r=this.$toggleFoldWidget(e,n);if(!r){var i=t.target||t.srcElement;i&&/ace_fold-widget/.test(i.className)&&(i.className+=" ace_invalid")}},this.$toggleFoldWidget=function(e,t){if(!this.getFoldWidget)return;var n=this.getFoldWidget(e),r=this.getLine(e),i=n==="end"?-1:1,s=this.getFoldAt(e,i===-1?0:r.length,i);if(s){t.children||t.all?this.removeFold(s):this.expandFold(s);return}var o=this.getFoldWidgetRange(e,!0);if(o&&!o.isMultiLine()){s=this.getFoldAt(o.start.row,o.start.column,1);if(s&&o.isEqual(s.range)){this.removeFold(s);return}}if(t.siblings){var u=this.getParentFoldRangeData(e);if(u.range)var a=u.range.start.row+1,f=u.range.end.row;this.foldAll(a,f,t.all?1e4:0)}else t.children?(f=o?o.end.row:this.getLength(),this.foldAll(e+1,o.end.row,t.all?1e4:0)):o&&(t.all&&(o.collapseChildren=1e4),this.addFold("...",o));return o},this.toggleFoldWidget=function(e){var t=this.selection.getCursor().row;t=this.getRowFoldStart(t);var n=this.$toggleFoldWidget(t,{});if(n)return;var r=this.getParentFoldRangeData(t,!0);n=r.range||r.firstRange;if(n){t=n.start.row;var i=this.getFoldAt(t,this.getLine(t).length,1);i?this.removeFold(i):this.addFold("...",n)}},this.updateFoldWidgets=function(e){var t=e.data,n=t.range,r=n.start.row,i=n.end.row-r;if(i===0)this.foldWidgets[r]=null;else if(t.action=="removeText"||t.action=="removeLines")this.foldWidgets.splice(r,i+1,null);else{var s=Array(i+1);s.unshift(r,1),this.foldWidgets.splice.apply(this.foldWidgets,s)}}}var r=e("../range").Range,i=e("./fold_line").FoldLine,s=e("./fold").Fold,o=e("../token_iterator").TokenIterator;t.Folding=u}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,t,n){function i(e,t){this.foldData=e,Array.isArray(t)?this.folds=t:t=this.folds=[t];var n=t[t.length-1];this.range=new r(t[0].start.row,t[0].start.column,n.end.row,n.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(e){e.setFoldLine(this)},this)}var r=e("../range").Range;(function(){this.shiftRow=function(e){this.start.row+=e,this.end.row+=e,this.folds.forEach(function(t){t.start.row+=e,t.end.row+=e})},this.addFold=function(e){if(e.sameRow){if(e.start.row<this.startRow||e.endRow>this.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(e),this.folds.sort(function(e,t){return-e.range.compareEnd(t.start.row,t.start.column)}),this.range.compareEnd(e.start.row,e.start.column)>0?(this.end.row=e.end.row,this.end.column=e.end.column):this.range.compareStart(e.end.row,e.end.column)<0&&(this.start.row=e.start.row,this.start.column=e.start.column)}else if(e.start.row==this.end.row)this.folds.push(e),this.end.row=e.end.row,this.end.column=e.end.column;else{if(e.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(e),this.start.row=e.start.row,this.start.column=e.start.column}e.foldLine=this},this.containsRow=function(e){return e>=this.start.row&&e<=this.end.row},this.walk=function(e,t,n){var r=0,i=this.folds,s,o,u,a=!0;t==null&&(t=this.end.row,n=this.end.column);for(var f=0;f<i.length;f++){s=i[f],o=s.range.compareStart(t,n);if(o==-1){e(null,t,n,r,a);return}u=e(null,s.start.row,s.start.column,r,a),u=!u&&e(s.placeholder,s.start.row,s.start.column,r);if(u||o==0)return;a=!s.sameRow,r=s.end.column}e(null,t,n,r,a)},this.getNextFoldTo=function(e,t){var n,r;for(var i=0;i<this.folds.length;i++){n=this.folds[i],r=n.range.compareEnd(e,t);if(r==-1)return{fold:n,kind:"after"};if(r==0)return{fold:n,kind:"inside"}}return null},this.addRemoveChars=function(e,t,n){var r=this.getNextFoldTo(e,t),i,s;if(r){i=r.fold;if(r.kind=="inside"&&i.start.column!=t&&i.start.row!=e)window.console&&window.console.log(e,t,i);else if(i.start.row==e){s=this.folds;var o=s.indexOf(i);o==0&&(this.start.column+=n);for(o;o<s.length;o++){i=s[o],i.start.column+=n;if(!i.sameRow)return;i.end.column+=n}this.end.column+=n}}},this.split=function(e,t){var n=this.getNextFoldTo(e,t).fold,r=this.folds,s=this.foldData;if(!n)return null;var o=r.indexOf(n),u=r[o-1];this.end.row=u.end.row,this.end.column=u.end.column,r=r.splice(o,r.length-o);var a=new i(s,r);return s.splice(s.indexOf(this)+1,0,a),a},this.merge=function(e){var t=e.folds;for(var n=0;n<t.length;n++)this.addFold(t[n]);var r=this.foldData;r.splice(r.indexOf(e),1)},this.toString=function(){var e=[this.range.toString()+": ["];return this.folds.forEach(function(t){e.push(" "+t.toString())}),e.push("]"),e.join("\n")},this.idxToPosition=function(e){var t=0,n;for(var r=0;r<this.folds.length;r++){var n=this.folds[r];e-=n.start.column-t;if(e<0)return{row:n.start.row,column:n.start.column+e};e-=n.placeholder.length;if(e<0)return n.start;t=n.end.column}return{row:this.end.row,column:this.end.column+e}}}).call(i.prototype),t.FoldLine=i}),ace.define("ace/edit_session/fold",["require","exports","module","ace/range","ace/range_list","ace/lib/oop"],function(e,t,n){function u(e,t){e.row-=t.row,e.row==0&&(e.column-=t.column)}function a(e,t){u(e.start,t),u(e.end,t)}function f(e,t){e.row==0&&(e.column+=t.column),e.row+=t.row}function l(e,t){f(e.start,t),f(e.end,t)}var r=e("../range").Range,i=e("../range_list").RangeList,s=e("../lib/oop"),o=t.Fold=function(e,t){this.foldLine=null,this.placeholder=t,this.range=e,this.start=e.start,this.end=e.end,this.sameRow=e.start.row==e.end.row,this.subFolds=this.ranges=[]};s.inherits(o,i),function(){this.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},this.setFoldLine=function(e){this.foldLine=e,this.subFolds.forEach(function(t){t.setFoldLine(e)})},this.clone=function(){var e=this.range.clone(),t=new o(e,this.placeholder);return this.subFolds.forEach(function(e){t.subFolds.push(e.clone())}),t.collapseChildren=this.collapseChildren,t},this.addSubFold=function(e){if(this.range.isEqual(e))return;if(!this.range.containsRange(e))throw new Error("A fold can't intersect already existing fold"+e.range+this.range);a(e,this.start);var t=e.start.row,n=e.start.column;for(var r=0,i=-1;r<this.subFolds.length;r++){i=this.subFolds[r].range.compare(t,n);if(i!=1)break}var s=this.subFolds[r];if(i==0)return s.addSubFold(e);var t=e.range.end.row,n=e.range.end.column;for(var o=r,i=-1;o<this.subFolds.length;o++){i=this.subFolds[o].range.compare(t,n);if(i!=1)break}var u=this.subFolds[o];if(i==0)throw new Error("A fold can't intersect already existing fold"+e.range+this.range);var f=this.subFolds.splice(r,o-r,e);return e.setFoldLine(this.foldLine),e},this.restoreRange=function(e){return l(e,this.start)}}.call(o.prototype)}),ace.define("ace/range_list",["require","exports","module","ace/range"],function(e,t,n){var r=e("./range").Range,i=r.comparePoints,s=function(){this.ranges=[]};(function(){this.comparePoints=i,this.pointIndex=function(e,t,n){var r=this.ranges;for(var s=n||0;s<r.length;s++){var o=r[s],u=i(e,o.end);if(u>0)continue;var a=i(e,o.start);return u===0?t&&a!==0?-s-2:s:a>0||a===0&&!t?s:-s-1}return-s-1},this.add=function(e){var t=!e.isEmpty(),n=this.pointIndex(e.start,t);n<0&&(n=-n-1);var r=this.pointIndex(e.end,t,n);return r<0?r=-r-1:r++,this.ranges.splice(n,r-n,e)},this.addList=function(e){var t=[];for(var n=e.length;n--;)t.push.call(t,this.add(e[n]));return t},this.substractPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges.splice(t,1)},this.merge=function(){var e=[],t=this.ranges;t=t.sort(function(e,t){return i(e.start,t.start)});var n=t[0],r;for(var s=1;s<t.length;s++){r=n,n=t[s];var o=i(r.end,n.start);if(o<0)continue;if(o==0&&!r.isEmpty()&&!n.isEmpty())continue;i(r.end,n.end)<0&&(r.end.row=n.end.row,r.end.column=n.end.column),t.splice(s,1),e.push(n),n=r,s--}return this.ranges=t,e},this.contains=function(e,t){return this.pointIndex({row:e,column:t})>=0},this.containsPoint=function(e){return this.pointIndex(e)>=0},this.rangeAtPoint=function(e){var t=this.pointIndex(e);if(t>=0)return this.ranges[t]},this.clipRows=function(e,t){var n=this.ranges;if(n[0].start.row>t||n[n.length-1].start.row<e)return[];var r=this.pointIndex({row:e,column:0});r<0&&(r=-r-1);var i=this.pointIndex({row:t,column:0},r);i<0&&(i=-i-1);var s=[];for(var o=r;o<i;o++)s.push(n[o]);return s},this.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},this.attach=function(e){this.session&&this.detach(),this.session=e,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},this.detach=function(){if(!this.session)return;this.session.removeListener("change",this.onChange),this.session=null},this.$onChange=function(e){var t=e.data.range;if(e.data.action[0]=="i")var n=t.start,r=t.end;else var r=t.start,n=t.end;var i=n.row,s=r.row,o=s-i,u=-n.column+r.column,a=this.ranges;for(var f=0,l=a.length;f<l;f++){var c=a[f];if(c.end.row<i)continue;if(c.start.row>i)break;c.start.row==i&&c.start.column>=n.column&&(c.start.column!=n.column||!this.$insertRight)&&(c.start.column+=u,c.start.row+=o);if(c.end.row==i&&c.end.column>=n.column){if(c.end.column==n.column&&this.$insertRight)continue;c.end.column==n.column&&u>0&&f<l-1&&c.end.column>c.start.column&&c.end.column==a[f+1].start.column&&(c.end.column-=u),c.end.column+=u,c.end.row+=o}}if(o!=0&&f<l)for(;f<l;f++){var c=a[f];c.start.row+=o,c.end.row+=o}}}).call(s.prototype),t.RangeList=s}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,t,n){function s(){this.findMatchingBracket=function(e,t){if(e.column==0)return null;var n=t||this.getLine(e.row).charAt(e.column-1);if(n=="")return null;var r=n.match(/([\(\[\{])|([\)\]\}])/);return r?r[1]?this.$findClosingBracket(r[1],e):this.$findOpeningBracket(r[2],e):null},this.getBracketRange=function(e){var t=this.getLine(e.row),n=!0,r,s=t.charAt(e.column-1),o=s&&s.match(/([\(\[\{])|([\)\]\}])/);o||(s=t.charAt(e.column),e={row:e.row,column:e.column+1},o=s&&s.match(/([\(\[\{])|([\)\]\}])/),n=!1);if(!o)return null;if(o[1]){var u=this.$findClosingBracket(o[1],e);if(!u)return null;r=i.fromPoints(e,u),n||(r.end.column++,r.start.column--),r.cursor=r.end}else{var u=this.$findOpeningBracket(o[2],e);if(!u)return null;r=i.fromPoints(u,e),n||(r.start.column++,r.end.column--),r.cursor=r.start}return r},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{"},this.$findOpeningBracket=function(e,t,n){var i=this.$brackets[e],s=1,o=new r(this,t.row,t.column),u=o.getCurrentToken();u||(u=o.stepForward());if(!u)return;n||(n=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("rparen",".paren")+")+"));var a=t.column-o.getCurrentTokenColumn()-2,f=u.value;for(;;){while(a>=0){var l=f.charAt(a);if(l==i){s-=1;if(s==0)return{row:o.getCurrentTokenRow(),column:a+o.getCurrentTokenColumn()}}else l==e&&(s+=1);a-=1}do u=o.stepBackward();while(u&&!n.test(u.type));if(u==null)break;f=u.value,a=f.length-1}return null},this.$findClosingBracket=function(e,t,n){var i=this.$brackets[e],s=1,o=new r(this,t.row,t.column),u=o.getCurrentToken();u||(u=o.stepForward());if(!u)return;n||(n=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("lparen",".paren")+")+"));var a=t.column-o.getCurrentTokenColumn();for(;;){var f=u.value,l=f.length;while(a<l){var c=f.charAt(a);if(c==i){s-=1;if(s==0)return{row:o.getCurrentTokenRow(),column:a+o.getCurrentTokenColumn()}}else c==e&&(s+=1);a+=1}do u=o.stepForward();while(u&&!n.test(u.type));if(u==null)break;a=0}return null}}var r=e("../token_iterator").TokenIterator,i=e("../range").Range;t.BracketMatch=s}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,t,n){var r=e("./lib/lang"),i=e("./lib/oop"),s=e("./range").Range,o=function(){this.$options={}};(function(){this.set=function(e){return i.mixin(this.$options,e),this},this.getOptions=function(){return r.copyObject(this.$options)},this.setOptions=function(e){this.$options=e},this.find=function(e){var t=this.$matchIterator(e,this.$options);if(!t)return!1;var n=null;return t.forEach(function(e,t,r){if(!e.start){var i=e.offset+(r||0);n=new s(t,i,t,i+e.length)}else n=e;return!0}),n},this.findAll=function(e){var t=this.$options;if(!t.needle)return[];this.$assembleRegExp(t);var n=t.range,i=n?e.getLines(n.start.row,n.end.row):e.doc.getAllLines(),o=[],u=t.re;if(t.$isMultiLine){var a=u.length,f=i.length-a;for(var l=u.offset||0;l<=f;l++){for(var c=0;c<a;c++)if(i[l+c].search(u[c])==-1)break;var h=i[l],p=i[l+a-1],d=h.match(u[0])[0].length,v=p.match(u[a-1])[0].length;o.push(new s(l,h.length-d,l+a-1,v))}}else for(var m=0;m<i.length;m++){var g=r.getMatchOffsets(i[m],u);for(var c=0;c<g.length;c++){var y=g[c];o.push(new s(m,y.offset,m,y.offset+y.length))}}if(n){var b=n.start.column,w=n.start.column,m=0,c=o.length-1;while(m<c&&o[m].start.column<b&&o[m].start.row==n.start.row)m++;while(m<c&&o[c].end.column>w&&o[c].end.row==n.end.row)c--;o=o.slice(m,c+1);for(m=0,c=o.length;m<c;m++)o[m].start.row+=n.start.row,o[m].end.row+=n.start.row}return o},this.replace=function(e,t){var n=this.$options,r=this.$assembleRegExp(n);if(n.$isMultiLine)return t;if(!r)return;var i=r.exec(e);if(!i||i[0].length!=e.length)return null;t=e.replace(r,t);if(n.preserveCase){t=t.split("");for(var s=Math.min(e.length,e.length);s--;){var o=e[s];o&&o.toLowerCase()!=o?t[s]=t[s].toUpperCase():t[s]=t[s].toLowerCase()}t=t.join("")}return t},this.$matchIterator=function(e,t){var n=this.$assembleRegExp(t);if(!n)return!1;var i=this,o,u=t.backwards;if(t.$isMultiLine)var a=n.length,f=function(t,r,i){var u=t.search(n[0]);if(u==-1)return;for(var f=1;f<a;f++){t=e.getLine(r+f);if(t.search(n[f])==-1)return}var l=t.match(n[a-1])[0].length,c=new s(r,u,r+a-1,l);n.offset==1?(c.start.row--,c.start.column=Number.MAX_VALUE):i&&(c.start.column+=i);if(o(c))return!0};else if(u)var f=function(e,t,i){var s=r.getMatchOffsets(e,n);for(var u=s.length-1;u>=0;u--)if(o(s[u],t,i))return!0};else var f=function(e,t,i){var s=r.getMatchOffsets(e,n);for(var u=0;u<s.length;u++)if(o(s[u],t,i))return!0};return{forEach:function(n){o=n,i.$lineIterator(e,t).forEach(f)}}},this.$assembleRegExp=function(e,t){if(e.needle instanceof RegExp)return e.re=e.needle;var n=e.needle;if(!e.needle)return e.re=!1;e.regExp||(n=r.escapeRegExp(n)),e.wholeWord&&(n="\\b"+n+"\\b");var i=e.caseSensitive?"g":"gi";e.$isMultiLine=!t&&/[\n\r]/.test(n);if(e.$isMultiLine)return e.re=this.$assembleMultilineRegExp(n,i);try{var s=new RegExp(n,i)}catch(o){s=!1}return e.re=s},this.$assembleMultilineRegExp=function(e,t){var n=e.replace(/\r\n|\r|\n/g,"$\n^").split("\n"),r=[];for(var i=0;i<n.length;i++)try{r.push(new RegExp(n[i],t))}catch(s){return!1}return n[0]==""?(r.shift(),r.offset=1):r.offset=0,r},this.$lineIterator=function(e,t){var n=t.backwards==1,r=t.skipCurrent!=0,i=t.range,s=t.start;s||(s=i?i[n?"end":"start"]:e.selection.getRange()),s.start&&(s=s[r!=n?"end":"start"]);var o=i?i.start.row:0,u=i?i.end.row:e.getLength()-1,a=n?function(n){var r=s.row,i=e.getLine(r).substring(0,s.column);if(n(i,r))return;for(r--;r>=o;r--)if(n(e.getLine(r),r))return;if(t.wrap==0)return;for(r=u,o=s.row;r>=o;r--)if(n(e.getLine(r),r))return}:function(n){var r=s.row,i=e.getLine(r).substr(s.column);if(n(i,r,s.column))return;for(r+=1;r<=u;r++)if(n(e.getLine(r),r))return;if(t.wrap==0)return;for(r=o,u=s.row;r<=u;r++)if(n(e.getLine(r),r))return};return{forEach:a}}}).call(o.prototype),t.Search=o}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,t,n){var r=e("../lib/oop"),i=e("../keyboard/hash_handler").HashHandler,s=e("../lib/event_emitter").EventEmitter,o=function(e,t){i.call(this,t,e),this.byName=this.commands,this.setDefaultHandler("exec",function(e){return e.command.exec(e.editor,e.args||{})})};r.inherits(o,i),function(){r.implement(this,s),this.exec=function(e,t,n){typeof e=="string"&&(e=this.commands[e]);if(!e)return!1;if(t&&t.$readOnly&&!e.readOnly)return!1;var r={editor:t,command:e,args:n},i=this._emit("exec",r);return this._signal("afterExec",r),i===!1?!1:!0},this.toggleRecording=function(e){if(this.$inReplay)return;return e&&e._emit("changeStatus"),this.recording?(this.macro.pop(),this.removeEventListener("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(e){this.macro.push([e.command,e.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},this.replay=function(e){if(this.$inReplay||!this.macro)return;if(this.recording)return this.toggleRecording(e);try{this.$inReplay=!0,this.macro.forEach(function(t){typeof t=="string"?this.exec(t,e):this.exec(t[0],e,t[1])},this)}finally{this.$inReplay=!1}},this.trimMacro=function(e){return e.map(function(e){return typeof e[0]!="string"&&(e[0]=e[0].name),e[1]||(e=e[0]),e})}}.call(o.prototype),t.CommandManager=o}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,t,n){function s(e,t){this.platform=t||(i.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={};if(this.__defineGetter__&&this.__defineSetter__&&typeof console!="undefined"&&console.error){var n=!1,r=function(){n||(n=!0,console.error("commmandKeyBinding has too many m's. use commandKeyBinding"))};this.__defineGetter__("commmandKeyBinding",function(){return r(),this.commandKeyBinding}),this.__defineSetter__("commmandKeyBinding",function(e){return r(),this.commandKeyBinding=e})}else this.commmandKeyBinding=this.commandKeyBinding;this.addCommands(e)}var r=e("../lib/keys"),i=e("../lib/useragent");(function(){this.addCommand=function(e){this.commands[e.name]&&this.removeCommand(e),this.commands[e.name]=e,e.bindKey&&this._buildKeyHash(e)},this.removeCommand=function(e){var t=typeof e=="string"?e:e.name;e=this.commands[t],delete this.commands[t];var n=this.commandKeyBinding;for(var r in n)for(var i in n[r])n[r][i]==e&&delete n[r][i]},this.bindKey=function(e,t){if(!e)return;if(typeof t=="function"){this.addCommand({exec:t,bindKey:e,name:t.name||e});return}var n=this.commandKeyBinding;e.split("|").forEach(function(e){var r=this.parseKeys(e,t),i=r.hashId;(n[i]||(n[i]={}))[r.key]=t},this)},this.addCommands=function(e){e&&Object.keys(e).forEach(function(t){var n=e[t];if(!n)return;if(typeof n=="string")return this.bindKey(n,t);typeof n=="function"&&(n={exec:n});if(typeof n!="object")return;n.name||(n.name=t),this.addCommand(n)},this)},this.removeCommands=function(e){Object.keys(e).forEach(function(t){this.removeCommand(e[t])},this)},this.bindKeys=function(e){Object.keys(e).forEach(function(t){this.bindKey(t,e[t])},this)},this._buildKeyHash=function(e){var t=e.bindKey;if(!t)return;var n=typeof t=="string"?t:t[this.platform];this.bindKey(n,e)},this.parseKeys=function(e){e.indexOf(" ")!=-1&&(e=e.split(/\s+/).pop());var t=e.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(e){return e}),n=t.pop(),i=r[n];if(r.FUNCTION_KEYS[i])n=r.FUNCTION_KEYS[i].toLowerCase();else{if(!t.length)return{key:n,hashId:-1};if(t.length==1&&t[0]=="shift")return{key:n.toUpperCase(),hashId:-1}}var s=0;for(var o=t.length;o--;){var u=r.KEY_MODS[t[o]];if(u==null)return typeof console!="undefined"&&console.error("invalid modifier "+t[o]+" in "+e),!1;s|=u}return{key:n,hashId:s}},this.findKeyCommand=function(t,n){var r=this.commandKeyBinding;return r[t]&&r[t][n]},this.handleKeyboard=function(e,t,n,r){return{command:this.findKeyCommand(t,n)}}}).call(s.prototype),t.HashHandler=s}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config"],function(e,t,n){function s(e,t){return{win:e,mac:t}}var r=e("../lib/lang"),i=e("../config");t.commands=[{name:"showSettingsMenu",bindKey:s("Ctrl-,","Command-,"),exec:function(e){i.loadModule("ace/ext/settings_menu",function(t){t.init(e),e.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",bindKey:s("Alt-E","Ctrl-E"),exec:function(e){i.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,1)})},scrollIntoView:"center",readOnly:!0},{name:"goToPreviousError",bindKey:s("Alt-Shift-E","Ctrl-Shift-E"),exec:function(e){i.loadModule("ace/ext/error_marker",function(t){t.showErrorMarker(e,-1)})},scrollIntoView:"center",readOnly:!0},{name:"selectall",bindKey:s("Ctrl-A","Command-A"),exec:function(e){e.selectAll()},readOnly:!0},{name:"centerselection",bindKey:s(null,"Ctrl-L"),exec:function(e){e.centerSelection()},readOnly:!0},{name:"gotoline",bindKey:s("Ctrl-L","Command-L"),exec:function(e){var t=parseInt(prompt("Enter line number:"),10);isNaN(t)||e.gotoLine(t)},readOnly:!0},{name:"fold",bindKey:s("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(e){e.session.toggleFold(!1)},scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:s("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(e){e.session.toggleFold(!0)},scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",bindKey:s("F2","F2"),exec:function(e){e.session.toggleFoldWidget()},scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",bindKey:s("Alt-F2","Alt-F2"),exec:function(e){e.session.toggleFoldWidget(!0)},scrollIntoView:"center",readOnly:!0},{name:"foldall",bindKey:s("Ctrl-Alt-0","Ctrl-Command-Option-0"),exec:function(e){e.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",bindKey:s("Alt-0","Command-Option-0"),exec:function(e){e.session.foldAll(),e.session.unfold(e.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",bindKey:s("Alt-Shift-0","Command-Option-Shift-0"),exec:function(e){e.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",bindKey:s("Ctrl-K","Command-G"),exec:function(e){e.findNext()},readOnly:!0},{name:"findprevious",bindKey:s("Ctrl-Shift-K","Command-Shift-G"),exec:function(e){e.findPrevious()},readOnly:!0},{name:"selectOrFindNext",bindKey:s("ALt-K","Ctrl-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findNext()},readOnly:!0},{name:"selectOrFindPrevious",bindKey:s("Alt-Shift-K","Ctrl-Shift-G"),exec:function(e){e.selection.isEmpty()?e.selection.selectWord():e.findPrevious()},readOnly:!0},{name:"find",bindKey:s("Ctrl-F","Command-F"),exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e)})},readOnly:!0},{name:"overwrite",bindKey:"Insert",exec:function(e){e.toggleOverwrite()},readOnly:!0},{name:"selecttostart",bindKey:s("Ctrl-Shift-Home","Command-Shift-Up"),exec:function(e){e.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",bindKey:s("Ctrl-Home","Command-Home|Command-Up"),exec:function(e){e.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",bindKey:s("Shift-Up","Shift-Up"),exec:function(e){e.getSelection().selectUp()},multiSelectAction:"forEach",readOnly:!0},{name:"golineup",bindKey:s("Up","Up|Ctrl-P"),exec:function(e,t){e.navigateUp(t.times)},multiSelectAction:"forEach",readOnly:!0},{name:"selecttoend",bindKey:s("Ctrl-Shift-End","Command-Shift-Down"),exec:function(e){e.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",bindKey:s("Ctrl-End","Command-End|Command-Down"),exec:function(e){e.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",bindKey:s("Shift-Down","Shift-Down"),exec:function(e){e.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",bindKey:s("Down","Down|Ctrl-N"),exec:function(e,t){e.navigateDown(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",bindKey:s("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(e){e.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",bindKey:s("Ctrl-Left","Option-Left"),exec:function(e){e.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",bindKey:s("Alt-Shift-Left","Command-Shift-Left"),exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",bindKey:s("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(e){e.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",bindKey:s("Shift-Left","Shift-Left"),exec:function(e){e.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",bindKey:s("Left","Left|Ctrl-B"),exec:function(e,t){e.navigateLeft(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",bindKey:s("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(e){e.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",bindKey:s("Ctrl-Right","Option-Right"),exec:function(e){e.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",bindKey:s("Alt-Shift-Right","Command-Shift-Right"),exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",bindKey:s("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(e){e.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",bindKey:s("Shift-Right","Shift-Right"),exec:function(e){e.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",bindKey:s("Right","Right|Ctrl-F"),exec:function(e,t){e.navigateRight(t.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",bindKey:"Shift-PageDown",exec:function(e){e.selectPageDown()},readOnly:!0},{name:"pagedown",bindKey:s(null,"Option-PageDown"),exec:function(e){e.scrollPageDown()},readOnly:!0},{name:"gotopagedown",bindKey:s("PageDown","PageDown|Ctrl-V"),exec:function(e){e.gotoPageDown()},readOnly:!0},{name:"selectpageup",bindKey:"Shift-PageUp",exec:function(e){e.selectPageUp()},readOnly:!0},{name:"pageup",bindKey:s(null,"Option-PageUp"),exec:function(e){e.scrollPageUp()},readOnly:!0},{name:"gotopageup",bindKey:"PageUp",exec:function(e){e.gotoPageUp()},readOnly:!0},{name:"scrollup",bindKey:s("Ctrl-Up",null),exec:function(e){e.renderer.scrollBy(0,-2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",bindKey:s("Ctrl-Down",null),exec:function(e){e.renderer.scrollBy(0,2*e.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",bindKey:"Shift-Home",exec:function(e){e.getSelection().selectLineStart()},multiSelectAction:"forEach",readOnly:!0},{name:"selectlineend",bindKey:"Shift-End",exec:function(e){e.getSelection().selectLineEnd()},multiSelectAction:"forEach",readOnly:!0},{name:"togglerecording",bindKey:s("Ctrl-Alt-E","Command-Option-E"),exec:function(e){e.commands.toggleRecording(e)},readOnly:!0},{name:"replaymacro",bindKey:s("Ctrl-Shift-E","Command-Shift-E"),exec:function(e){e.commands.replay(e)},readOnly:!0},{name:"jumptomatching",bindKey:s("Ctrl-P","Ctrl-Shift-P"),exec:function(e){e.jumpToMatching()},multiSelectAction:"forEach",readOnly:!0},{name:"selecttomatching",bindKey:s("Ctrl-Shift-P",null),exec:function(e){e.jumpToMatching(!0)},multiSelectAction:"forEach",readOnly:!0},{name:"cut",exec:function(e){var t=e.getSelectionRange();e._emit("cut",t),e.selection.isEmpty()||(e.session.remove(t),e.clearSelection())},multiSelectAction:"forEach"},{name:"removeline",bindKey:s("Ctrl-D","Command-D"),exec:function(e){e.removeLines()},multiSelectAction:"forEachLine"},{name:"duplicateSelection",bindKey:s("Ctrl-Shift-D","Command-Shift-D"),exec:function(e){e.duplicateSelection()},multiSelectAction:"forEach"},{name:"sortlines",bindKey:s("Ctrl-Alt-S","Command-Alt-S"),exec:function(e){e.sortLines()},multiSelectAction:"forEachLine"},{name:"togglecomment",bindKey:s("Ctrl-/","Command-/"),exec:function(e){e.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",bindKey:s("Ctrl-Shift-/","Command-Shift-/"),exec:function(e){e.toggleBlockComment()},multiSelectAction:"forEach"},{name:"modifyNumberUp",bindKey:s("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(e){e.modifyNumber(1)},multiSelectAction:"forEach"},{name:"modifyNumberDown",bindKey:s("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(e){e.modifyNumber(-1)},multiSelectAction:"forEach"},{name:"replace",bindKey:s("Ctrl-H","Command-Option-F"),exec:function(e){i.loadModule("ace/ext/searchbox",function(t){t.Search(e,!0)})}},{name:"undo",bindKey:s("Ctrl-Z","Command-Z"),exec:function(e){e.undo()}},{name:"redo",bindKey:s("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(e){e.redo()}},{name:"copylinesup",bindKey:s("Alt-Shift-Up","Command-Option-Up"),exec:function(e){e.copyLinesUp()}},{name:"movelinesup",bindKey:s("Alt-Up","Option-Up"),exec:function(e){e.moveLinesUp()}},{name:"copylinesdown",bindKey:s("Alt-Shift-Down","Command-Option-Down"),exec:function(e){e.copyLinesDown()}},{name:"movelinesdown",bindKey:s("Alt-Down","Option-Down"),exec:function(e){e.moveLinesDown()}},{name:"del",bindKey:s("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(e){e.remove("right")},multiSelectAction:"forEach"},{name:"backspace",bindKey:s("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(e){e.remove("left")},multiSelectAction:"forEach"},{name:"cut_or_delete",bindKey:s("Shift-Delete",null),exec:function(e){if(!e.selection.isEmpty())return!1;e.remove("left")},multiSelectAction:"forEach"},{name:"removetolinestart",bindKey:s("Alt-Backspace","Command-Backspace"),exec:function(e){e.removeToLineStart()},multiSelectAction:"forEach"},{name:"removetolineend",bindKey:s("Alt-Delete","Ctrl-K"),exec:function(e){e.removeToLineEnd()},multiSelectAction:"forEach"},{name:"removewordleft",bindKey:s("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(e){e.removeWordLeft()},multiSelectAction:"forEach"},{name:"removewordright",bindKey:s("Ctrl-Delete","Alt-Delete"),exec:function(e){e.removeWordRight()},multiSelectAction:"forEach"},{name:"outdent",bindKey:s("Shift-Tab","Shift-Tab"),exec:function(e){e.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",bindKey:s("Tab","Tab"),exec:function(e){e.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",bindKey:s("Ctrl-[","Ctrl-["),exec:function(e){e.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",bindKey:s("Ctrl-]","Ctrl-]"),exec:function(e){e.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",exec:function(e,t){e.insert(t)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",exec:function(e,t){e.insert(r.stringRepeat(t.text||"",t.times||1))},multiSelectAction:"forEach"},{name:"splitline",bindKey:s(null,"Ctrl-O"),exec:function(e){e.splitLine()},multiSelectAction:"forEach"},{name:"transposeletters",bindKey:s("Ctrl-T","Ctrl-T"),exec:function(e){e.transposeLetters()},multiSelectAction:function(e){e.transposeSelections(1)}},{name:"touppercase",bindKey:s("Ctrl-U","Ctrl-U"),exec:function(e){e.toUpperCase()},multiSelectAction:"forEach"},{name:"tolowercase",bindKey:s("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(e){e.toLowerCase()},multiSelectAction:"forEach"}]}),ace.define("ace/undomanager",["require","exports","module"],function(e,t,n){var r=function(){this.reset()};(function(){this.execute=function(e){var t=e.args[0];this.$doc=e.args[1],e.merge&&this.hasUndo()&&(t=this.$undoStack.pop().concat(t)),this.$undoStack.push(t),this.$redoStack=[],this.dirtyCounter<0&&(this.dirtyCounter=NaN),this.dirtyCounter++},this.undo=function(e){var t=this.$undoStack.pop(),n=null;return t&&(n=this.$doc.undoChanges(t,e),this.$redoStack.push(t),this.dirtyCounter--),n},this.redo=function(e){var t=this.$redoStack.pop(),n=null;return t&&(n=this.$doc.redoChanges(t,e),this.$undoStack.push(t),this.dirtyCounter++),n},this.reset=function(){this.$undoStack=[],this.$redoStack=[],this.dirtyCounter=0},this.hasUndo=function(){return this.$undoStack.length>0},this.hasRedo=function(){return this.$redoStack.length>0},this.markClean=function(){this.dirtyCounter=0},this.isClean=function(){return this.dirtyCounter===0}}).call(r.prototype),t.UndoManager=r}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/useragent","ace/config","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/renderloop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/dom"),s=e("./lib/useragent"),o=e("./config"),u=e("./layer/gutter").Gutter,a=e("./layer/marker").Marker,f=e("./layer/text").Text,l=e("./layer/cursor").Cursor,c=e("./scrollbar").HScrollBar,h=e("./scrollbar").VScrollBar,p=e("./renderloop").RenderLoop,d=e("./lib/event_emitter").EventEmitter,v=".ace_editor {position: relative;overflow: hidden;font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'source-code-pro', monospace;font-size: 12px;line-height: normal;color: black;}.ace_editor .ace_line {direction: ltr;unicode-bidi: bidi-override;}.ace_scroller {position: absolute;overflow: hidden;top: 0;bottom: 0;background-color: inherit;-ms-user-select: none;-moz-user-select: none;-webkit-user-select: none;user-select: none;}.ace_content {position: absolute;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;cursor: text;min-width: 100%;}.ace_dragging, .ace_dragging * {cursor: move !important;}.ace_dragging .ace_scroller:before{position: absolute;top: 0;left: 0;right: 0;bottom: 0;content: '';background: rgba(250, 250, 250, 0.01);z-index: 1000;}.ace_dragging.ace_dark .ace_scroller:before{background: rgba(0, 0, 0, 0.01);}.ace_selecting, .ace_selecting * {cursor: text !important;}.ace_gutter {position: absolute;overflow : hidden;width: auto;top: 0;bottom: 0;left: 0;cursor: default;z-index: 4;}.ace_gutter-active-line {position: absolute;left: 0;right: 0;}.ace_scroller.ace_scroll-left {box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;}.ace_gutter-cell {padding-left: 19px;padding-right: 6px;background-repeat: no-repeat;}.ace_gutter-cell.ace_error {background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUM2OEZDQTQ4RTU0MTFFMUEzM0VFRTM2RUY1M0RBMjYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUM2OEZDQTU4RTU0MTFFMUEzM0VFRTM2RUY1M0RBMjYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBQzY4RkNBMjhFNTQxMUUxQTMzRUVFMzZFRjUzREEyNiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBQzY4RkNBMzhFNTQxMUUxQTMzRUVFMzZFRjUzREEyNiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PkgXxbAAAAJbSURBVHjapFNNaBNBFH4zs5vdZLP5sQmNpT82QY209heh1ioWisaDRcSKF0WKJ0GQnrzrxasHsR6EnlrwD0TagxJabaVEpFYxLWlLSS822tr87m66ccfd2GKyVhA6MMybgfe97/vmPUQphd0sZjto9XIn9OOsvlu2nkqRzVU+6vvlzPf8W6bk8dxQ0NPbxAALgCgg2JkaQuhzQau/El0zbmUA7U0Es8v2CiYmKQJHGO1QICCLoqilMhkmurDAyapKgqItezi/USRdJqEYY4D5jCy03ht2yMkkvL91jTTX10qzyyu2hruPRN7jgbH+EOsXcMLgYiThEgAMhABW85oqy1DXdRIdvP1AHJ2acQXvDIrVHcdQNrEKNYSVMSZGMjEzIIAwDXIo+6G/FxcGnzkC3T2oMhLjre49sBB+RRcHLqdafK6sYdE/GGBwU1VpFNj0aN8pJbe+BkZyevUrvLl6Xmm0W9IuTc0DxrDNAJd5oEvI/KRsNC3bQyNjPO9yQ1YHcfj2QvfQc/5TUhJTBc2iM0U7AWDQtc1nJHvD/cfO2s7jaGkiTEfa/Ep8coLu7zmNmh8+dc5lZDuUeFAGUNA/OY6JVaypQ0vjr7XYjUvJM37vt+j1vuTK5DgVfVUoTjVe+y3/LxMxY2GgU+CSLy4cpfsYorRXuXIOi0Vt40h67uZFTdIo6nLaZcwUJWAzwNS0tBnqqKzQDnjdG/iPyZxo46HaKUpbvYkj8qYRTZsBhge+JHhZyh0x9b95JqjVJkT084kZIPwu/mPWqPgfQ5jXh2+92Ay7HedfAgwA6KDWafb4w3cAAAAASUVORK5CYII=\");background-repeat: no-repeat;background-position: 2px center;}.ace_gutter-cell.ace_warning {background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUM2OEZDQTg4RTU0MTFFMUEzM0VFRTM2RUY1M0RBMjYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUM2OEZDQTk4RTU0MTFFMUEzM0VFRTM2RUY1M0RBMjYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBQzY4RkNBNjhFNTQxMUUxQTMzRUVFMzZFRjUzREEyNiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBQzY4RkNBNzhFNTQxMUUxQTMzRUVFMzZFRjUzREEyNiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pgd7PfIAAAGmSURBVHjaYvr//z8DJZiJgUIANoCRkREb9gLiSVAaQx4OQM7AAkwd7XU2/v++/rOttdYGEB9dASEvOMydGKfH8Gv/p4XTkvRBfLxeQAP+1cUhXopyvzhP7P/IoSj7g7Mw09cNKO6J1QQ0L4gICPIv/veg/8W+JdFvQNLHVsW9/nmn9zk7B+cCkDwhL7gt6knSZnx9/LuCEOcvkIAMP+cvto9nfqyZmmUAksfnBUtbM60gX/3/kgyv3/xSFOL5DZT+L8vP+Yfh5cvfPvp/xUHyQHXGyAYwgpwBjZYFT3Y1OEl/OfCH4ffv3wzc4iwMvNIsDJ+f/mH4+vIPAxsb631WW0Yln6ZpQLXdMK/DXGDflh+sIv37EivD5x//Gb7+YWT4y86sl7BCCkSD+Z++/1dkvsFRl+HnD1Rvje4F8whjMXmGj58YGf5zsDMwcnAwfPvKcml62DsQDeaDxN+/Y0qwlpEHqrdB94IRNIDUgfgfKJChGK4OikEW3gTiXUB950ASLFAF54AC94A0G9QAfOnmF9DCDzABFqS08IHYDIScdijOjQABBgC+/9awBH96jwAAAABJRU5ErkJggg==\");background-position: 2px center;}.ace_gutter-cell.ace_info {background-image: url(\"data:image/gif;base64,R0lGODlhEAAQAMQAAAAAAEFBQVJSUl5eXmRkZGtra39/f4WFhYmJiZGRkaampry8vMPDw8zMzNXV1dzc3OTk5Orq6vDw8P///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABQALAAAAAAQABAAAAUuICWOZGmeaBml5XGwFCQSBGyXRSAwtqQIiRuiwIM5BoYVbEFIyGCQoeJGrVptIQA7\");background-position: 2px center;}.ace_dark .ace_gutter-cell.ace_info {background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpGRTk5MTVGREIxNDkxMUUxOTc5Q0FFREQyMTNGMjBFQyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpGRTk5MTVGRUIxNDkxMUUxOTc5Q0FFREQyMTNGMjBFQyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkZFOTkxNUZCQjE0OTExRTE5NzlDQUVERDIxM0YyMEVDIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkZFOTkxNUZDQjE0OTExRTE5NzlDQUVERDIxM0YyMEVDIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+SIDkjAAAAJ1JREFUeNpi/P//PwMlgImBQkB7A6qrq/+DMC55FkIGKCoq4pVnpFkgTp069f/+/fv/r1u37r+tre1/kg0A+ptn9uzZYLaRkRHpLvjw4cNXWVlZhufPnzOcO3eOdAO0tbVPAjHDmzdvGA4fPsxIsgGSkpJmv379Ynj37h2DjIyMCMkG3LhxQ/T27dsMampqDHZ2dq/pH41DxwCAAAMAFdc68dUsFZgAAAAASUVORK5CYII=\");}.ace_scrollbar {position: absolute;right: 0;bottom: 0;z-index: 6;}.ace_scrollbar-inner {position: absolute;cursor: text;left: 0;top: 0;}.ace_scrollbar-v{overflow-x: hidden;overflow-y: scroll;top: 0;}.ace_scrollbar-h {overflow-x: scroll;overflow-y: hidden;left: 0;}.ace_print-margin {position: absolute;height: 100%;}.ace_text-input {position: absolute;z-index: 0;width: 0.5em;height: 1em;opacity: 0;background: transparent;-moz-appearance: none;appearance: none;border: none;resize: none;outline: none;overflow: hidden;font: inherit;padding: 0 1px;margin: 0 -1px;text-indent: -1em;-ms-user-select: text;-moz-user-select: text;-webkit-user-select: text;user-select: text;}.ace_text-input.ace_composition {background: #f8f8f8;color: #111;z-index: 1000;opacity: 1;text-indent: 0;}.ace_layer {z-index: 1;position: absolute;overflow: hidden;white-space: pre;height: 100%;width: 100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;/* setting pointer-events: auto; on node under the mouse, which changesduring scroll, will break mouse wheel scrolling in Safari */pointer-events: none;}.ace_gutter-layer {position: relative;width: auto;text-align: right;pointer-events: auto;}.ace_text-layer {font: inherit !important;}.ace_cjk {display: inline-block;text-align: center;}.ace_cursor-layer {z-index: 4;}.ace_cursor {z-index: 4;position: absolute;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;border-left: 2px solid}.ace_slim-cursors .ace_cursor {border-left-width: 1px;}.ace_overwrite-cursors .ace_cursor {border-left-width: 0px;border-bottom: 1px solid;}.ace_hidden-cursors .ace_cursor {opacity: 0.2;}.ace_smooth-blinking .ace_cursor {-moz-transition: opacity 0.18s;-webkit-transition: opacity 0.18s;-o-transition: opacity 0.18s;-ms-transition: opacity 0.18s;transition: opacity 0.18s;}.ace_cursor[style*=\"opacity: 0\"]{-ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";}.ace_editor.ace_multiselect .ace_cursor {border-left-width: 1px;}.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {position: absolute;z-index: 3;}.ace_marker-layer .ace_selection {position: absolute;z-index: 5;}.ace_marker-layer .ace_bracket {position: absolute;z-index: 6;}.ace_marker-layer .ace_active-line {position: absolute;z-index: 2;}.ace_marker-layer .ace_selected-word {position: absolute;z-index: 4;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}.ace_line .ace_fold {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;display: inline-block;height: 11px;margin-top: -2px;vertical-align: middle;background-image:url(\"data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%11%00%00%00%09%08%06%00%00%00%D4%E8%C7%0C%00%00%03%1EiCCPICC%20Profile%00%00x%01%85T%DFk%D3P%14%FE%DAe%9D%B0%E1%8B%3Ag%11%09%3Eh%91ndStC%9C%B6kW%BA%CDZ%EA6%B7!H%9B%A6m%5C%9A%C6%24%ED~%B0%07%D9%8Bo%3A%C5w%F1%07%3E%F9%07%0C%D9%83o%7B%92%0D%C6%14a%F8%AC%88%22L%F6%22%B3%9E%9B4M'S%03%B9%F7%BB%DF%F9%EE9'%E7%E4%5E%A0%F9qZ%D3%14%2F%0F%14USO%C5%C2%FC%C4%E4%14%DF%F2%01%5E%1CC%2B%FChM%8B%86%16J%26G%40%0F%D3%B2y%EF%B3%F3%0E%1E%C6lt%EEo%DF%AB%FEc%D5%9A%95%0C%11%F0%1C%20%BE%945%C4%22%E1Y%A0i%5C%D4t%13%E0%D6%89%EF%9D15%C2%CDLsX%A7%04%09%1Fg8oc%81%E1%8C%8D%23%96f45%40%9A%09%C2%07%C5B%3AK%B8%408%98i%E0%F3%0D%D8%CE%81%14%E4'%26%A9%92.%8B%3C%ABER%2F%E5dE%B2%0C%F6%F0%1Fs%83%F2_%B0%A8%94%E9%9B%AD%E7%10%8Dm%9A%19N%D1%7C%8A%DE%1F9%7Dp%8C%E6%00%D5%C1%3F_%18%BDA%B8%9DpX6%E3%A35~B%CD%24%AE%11%26%BD%E7%EEti%98%EDe%9A%97Y)%12%25%1C%24%BCbT%AE3li%E6%0B%03%89%9A%E6%D3%ED%F4P%92%B0%9F4%BF43Y%F3%E3%EDP%95%04%EB1%C5%F5%F6KF%F4%BA%BD%D7%DB%91%93%07%E35%3E%A7)%D6%7F%40%FE%BD%F7%F5r%8A%E5y%92%F0%EB%B4%1E%8D%D5%F4%5B%92%3AV%DB%DB%E4%CD%A6%23%C3%C4wQ%3F%03HB%82%8E%1Cd(%E0%91B%0Ca%9Ac%C4%AA%F8L%16%19%22J%A4%D2itTy%B28%D6%3B(%93%96%ED%1CGx%C9_%0E%B8%5E%16%F5%5B%B2%B8%F6%E0%FB%9E%DD%25%D7%8E%BC%15%85%C5%B7%A3%D8Q%ED%B5%81%E9%BA%B2%13%9A%1B%7Fua%A5%A3n%E17%B9%E5%9B%1Bm%AB%0B%08Q%FE%8A%E5%B1H%5Ee%CAO%82Q%D7u6%E6%90S%97%FCu%0B%CF2%94%EE%25v%12X%0C%BA%AC%F0%5E%F8*l%0AO%85%17%C2%97%BF%D4%C8%CE%DE%AD%11%CB%80q%2C%3E%AB%9ES%CD%C6%EC%25%D2L%D2%EBd%B8%BF%8A%F5B%C6%18%F9%901CZ%9D%BE%24M%9C%8A9%F2%DAP%0B'%06w%82%EB%E6%E2%5C%2F%D7%07%9E%BB%CC%5D%E1%FA%B9%08%AD.r%23%8E%C2%17%F5E%7C!%F0%BE3%BE%3E_%B7o%88a%A7%DB%BE%D3d%EB%A31Z%EB%BB%D3%91%BA%A2%B1z%94%8F%DB'%F6%3D%8E%AA%13%19%B2%B1%BE%B1~V%08%2B%B4%A2cjJ%B3tO%00%03%25mN%97%F3%05%93%EF%11%84%0B%7C%88%AE-%89%8F%ABbW%90O%2B%0Ao%99%0C%5E%97%0CI%AFH%D9.%B0%3B%8F%ED%03%B6S%D6%5D%E6i_s9%F3*p%E9%1B%FD%C3%EB.7U%06%5E%19%C0%D1s.%17%A03u%E4%09%B0%7C%5E%2C%EB%15%DB%1F%3C%9E%B7%80%91%3B%DBc%AD%3Dma%BA%8B%3EV%AB%DBt.%5B%1E%01%BB%0F%AB%D5%9F%CF%AA%D5%DD%E7%E4%7F%0Bx%A3%FC%06%A9%23%0A%D6%C2%A1_2%00%00%00%09pHYs%00%00%0B%13%00%00%0B%13%01%00%9A%9C%18%00%00%00%B5IDAT(%15%A5%91%3D%0E%02!%10%85ac%E1%05%D6%CE%D6%C6%CE%D2%E8%ED%CD%DE%C0%C6%D6N.%E0V%F8%3D%9Ca%891XH%C2%BE%D9y%3F%90!%E6%9C%C3%BFk%E5%011%C6-%F5%C8N%04%DF%BD%FF%89%DFt%83DN%60%3E%F3%AB%A0%DE%1A%5Dg%BE%10Q%97%1B%40%9C%A8o%10%8F%5E%828%B4%1B%60%87%F6%02%26%85%1Ch%1E%C1%2B%5Bk%FF%86%EE%B7j%09%9A%DA%9B%ACe%A3%F9%EC%DA!9%B4%D5%A6%81%86%86%98%CC%3C%5B%40%FA%81%B3%E9%CB%23%94%C16Azo%05%D4%E1%C1%95a%3B%8A'%A0%E8%CC%17%22%85%1D%BA%00%A2%FA%DC%0A%94%D1%D1%8D%8B%3A%84%17B%C7%60%1A%25Z%FC%8D%00%00%00%00IEND%AEB%60%82\"),url(\"data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%05%00%00%007%08%06%00%00%00%C4%DD%80C%00%00%03%1EiCCPICC%20Profile%00%00x%01%85T%DFk%D3P%14%FE%DAe%9D%B0%E1%8B%3Ag%11%09%3Eh%91ndStC%9C%B6kW%BA%CDZ%EA6%B7!H%9B%A6m%5C%9A%C6%24%ED~%B0%07%D9%8Bo%3A%C5w%F1%07%3E%F9%07%0C%D9%83o%7B%92%0D%C6%14a%F8%AC%88%22L%F6%22%B3%9E%9B4M'S%03%B9%F7%BB%DF%F9%EE9'%E7%E4%5E%A0%F9qZ%D3%14%2F%0F%14USO%C5%C2%FC%C4%E4%14%DF%F2%01%5E%1CC%2B%FChM%8B%86%16J%26G%40%0F%D3%B2y%EF%B3%F3%0E%1E%C6lt%EEo%DF%AB%FEc%D5%9A%95%0C%11%F0%1C%20%BE%945%C4%22%E1Y%A0i%5C%D4t%13%E0%D6%89%EF%9D15%C2%CDLsX%A7%04%09%1Fg8oc%81%E1%8C%8D%23%96f45%40%9A%09%C2%07%C5B%3AK%B8%408%98i%E0%F3%0D%D8%CE%81%14%E4'%26%A9%92.%8B%3C%ABER%2F%E5dE%B2%0C%F6%F0%1Fs%83%F2_%B0%A8%94%E9%9B%AD%E7%10%8Dm%9A%19N%D1%7C%8A%DE%1F9%7Dp%8C%E6%00%D5%C1%3F_%18%BDA%B8%9DpX6%E3%A35~B%CD%24%AE%11%26%BD%E7%EEti%98%EDe%9A%97Y)%12%25%1C%24%BCbT%AE3li%E6%0B%03%89%9A%E6%D3%ED%F4P%92%B0%9F4%BF43Y%F3%E3%EDP%95%04%EB1%C5%F5%F6KF%F4%BA%BD%D7%DB%91%93%07%E35%3E%A7)%D6%7F%40%FE%BD%F7%F5r%8A%E5y%92%F0%EB%B4%1E%8D%D5%F4%5B%92%3AV%DB%DB%E4%CD%A6%23%C3%C4wQ%3F%03HB%82%8E%1Cd(%E0%91B%0Ca%9Ac%C4%AA%F8L%16%19%22J%A4%D2itTy%B28%D6%3B(%93%96%ED%1CGx%C9_%0E%B8%5E%16%F5%5B%B2%B8%F6%E0%FB%9E%DD%25%D7%8E%BC%15%85%C5%B7%A3%D8Q%ED%B5%81%E9%BA%B2%13%9A%1B%7Fua%A5%A3n%E17%B9%E5%9B%1Bm%AB%0B%08Q%FE%8A%E5%B1H%5Ee%CAO%82Q%D7u6%E6%90S%97%FCu%0B%CF2%94%EE%25v%12X%0C%BA%AC%F0%5E%F8*l%0AO%85%17%C2%97%BF%D4%C8%CE%DE%AD%11%CB%80q%2C%3E%AB%9ES%CD%C6%EC%25%D2L%D2%EBd%B8%BF%8A%F5B%C6%18%F9%901CZ%9D%BE%24M%9C%8A9%F2%DAP%0B'%06w%82%EB%E6%E2%5C%2F%D7%07%9E%BB%CC%5D%E1%FA%B9%08%AD.r%23%8E%C2%17%F5E%7C!%F0%BE3%BE%3E_%B7o%88a%A7%DB%BE%D3d%EB%A31Z%EB%BB%D3%91%BA%A2%B1z%94%8F%DB'%F6%3D%8E%AA%13%19%B2%B1%BE%B1~V%08%2B%B4%A2cjJ%B3tO%00%03%25mN%97%F3%05%93%EF%11%84%0B%7C%88%AE-%89%8F%ABbW%90O%2B%0Ao%99%0C%5E%97%0CI%AFH%D9.%B0%3B%8F%ED%03%B6S%D6%5D%E6i_s9%F3*p%E9%1B%FD%C3%EB.7U%06%5E%19%C0%D1s.%17%A03u%E4%09%B0%7C%5E%2C%EB%15%DB%1F%3C%9E%B7%80%91%3B%DBc%AD%3Dma%BA%8B%3EV%AB%DBt.%5B%1E%01%BB%0F%AB%D5%9F%CF%AA%D5%DD%E7%E4%7F%0Bx%A3%FC%06%A9%23%0A%D6%C2%A1_2%00%00%00%09pHYs%00%00%0B%13%00%00%0B%13%01%00%9A%9C%18%00%00%00%3AIDAT8%11c%FC%FF%FF%7F%18%03%1A%60%01%F2%3F%A0%891%80%04%FF%11-%F8%17%9BJ%E2%05%B1ZD%81v%26t%E7%80%F8%A3%82h%A12%1A%20%A3%01%02%0F%01%BA%25%06%00%19%C0%0D%AEF%D5%3ES%00%00%00%00IEND%AEB%60%82\");background-repeat: no-repeat, repeat-x;background-position: center center, top left;color: transparent;border: 1px solid black;-moz-border-radius: 2px;-webkit-border-radius: 2px;border-radius: 2px;cursor: pointer;pointer-events: auto;}.ace_dark .ace_fold {}.ace_fold:hover{background-image:url(\"data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%11%00%00%00%09%08%06%00%00%00%D4%E8%C7%0C%00%00%03%1EiCCPICC%20Profile%00%00x%01%85T%DFk%D3P%14%FE%DAe%9D%B0%E1%8B%3Ag%11%09%3Eh%91ndStC%9C%B6kW%BA%CDZ%EA6%B7!H%9B%A6m%5C%9A%C6%24%ED~%B0%07%D9%8Bo%3A%C5w%F1%07%3E%F9%07%0C%D9%83o%7B%92%0D%C6%14a%F8%AC%88%22L%F6%22%B3%9E%9B4M'S%03%B9%F7%BB%DF%F9%EE9'%E7%E4%5E%A0%F9qZ%D3%14%2F%0F%14USO%C5%C2%FC%C4%E4%14%DF%F2%01%5E%1CC%2B%FChM%8B%86%16J%26G%40%0F%D3%B2y%EF%B3%F3%0E%1E%C6lt%EEo%DF%AB%FEc%D5%9A%95%0C%11%F0%1C%20%BE%945%C4%22%E1Y%A0i%5C%D4t%13%E0%D6%89%EF%9D15%C2%CDLsX%A7%04%09%1Fg8oc%81%E1%8C%8D%23%96f45%40%9A%09%C2%07%C5B%3AK%B8%408%98i%E0%F3%0D%D8%CE%81%14%E4'%26%A9%92.%8B%3C%ABER%2F%E5dE%B2%0C%F6%F0%1Fs%83%F2_%B0%A8%94%E9%9B%AD%E7%10%8Dm%9A%19N%D1%7C%8A%DE%1F9%7Dp%8C%E6%00%D5%C1%3F_%18%BDA%B8%9DpX6%E3%A35~B%CD%24%AE%11%26%BD%E7%EEti%98%EDe%9A%97Y)%12%25%1C%24%BCbT%AE3li%E6%0B%03%89%9A%E6%D3%ED%F4P%92%B0%9F4%BF43Y%F3%E3%EDP%95%04%EB1%C5%F5%F6KF%F4%BA%BD%D7%DB%91%93%07%E35%3E%A7)%D6%7F%40%FE%BD%F7%F5r%8A%E5y%92%F0%EB%B4%1E%8D%D5%F4%5B%92%3AV%DB%DB%E4%CD%A6%23%C3%C4wQ%3F%03HB%82%8E%1Cd(%E0%91B%0Ca%9Ac%C4%AA%F8L%16%19%22J%A4%D2itTy%B28%D6%3B(%93%96%ED%1CGx%C9_%0E%B8%5E%16%F5%5B%B2%B8%F6%E0%FB%9E%DD%25%D7%8E%BC%15%85%C5%B7%A3%D8Q%ED%B5%81%E9%BA%B2%13%9A%1B%7Fua%A5%A3n%E17%B9%E5%9B%1Bm%AB%0B%08Q%FE%8A%E5%B1H%5Ee%CAO%82Q%D7u6%E6%90S%97%FCu%0B%CF2%94%EE%25v%12X%0C%BA%AC%F0%5E%F8*l%0AO%85%17%C2%97%BF%D4%C8%CE%DE%AD%11%CB%80q%2C%3E%AB%9ES%CD%C6%EC%25%D2L%D2%EBd%B8%BF%8A%F5B%C6%18%F9%901CZ%9D%BE%24M%9C%8A9%F2%DAP%0B'%06w%82%EB%E6%E2%5C%2F%D7%07%9E%BB%CC%5D%E1%FA%B9%08%AD.r%23%8E%C2%17%F5E%7C!%F0%BE3%BE%3E_%B7o%88a%A7%DB%BE%D3d%EB%A31Z%EB%BB%D3%91%BA%A2%B1z%94%8F%DB'%F6%3D%8E%AA%13%19%B2%B1%BE%B1~V%08%2B%B4%A2cjJ%B3tO%00%03%25mN%97%F3%05%93%EF%11%84%0B%7C%88%AE-%89%8F%ABbW%90O%2B%0Ao%99%0C%5E%97%0CI%AFH%D9.%B0%3B%8F%ED%03%B6S%D6%5D%E6i_s9%F3*p%E9%1B%FD%C3%EB.7U%06%5E%19%C0%D1s.%17%A03u%E4%09%B0%7C%5E%2C%EB%15%DB%1F%3C%9E%B7%80%91%3B%DBc%AD%3Dma%BA%8B%3EV%AB%DBt.%5B%1E%01%BB%0F%AB%D5%9F%CF%AA%D5%DD%E7%E4%7F%0Bx%A3%FC%06%A9%23%0A%D6%C2%A1_2%00%00%00%09pHYs%00%00%0B%13%00%00%0B%13%01%00%9A%9C%18%00%00%00%B5IDAT(%15%A5%91%3D%0E%02!%10%85ac%E1%05%D6%CE%D6%C6%CE%D2%E8%ED%CD%DE%C0%C6%D6N.%E0V%F8%3D%9Ca%891XH%C2%BE%D9y%3F%90!%E6%9C%C3%BFk%E5%011%C6-%F5%C8N%04%DF%BD%FF%89%DFt%83DN%60%3E%F3%AB%A0%DE%1A%5Dg%BE%10Q%97%1B%40%9C%A8o%10%8F%5E%828%B4%1B%60%87%F6%02%26%85%1Ch%1E%C1%2B%5Bk%FF%86%EE%B7j%09%9A%DA%9B%ACe%A3%F9%EC%DA!9%B4%D5%A6%81%86%86%98%CC%3C%5B%40%FA%81%B3%E9%CB%23%94%C16Azo%05%D4%E1%C1%95a%3B%8A'%A0%E8%CC%17%22%85%1D%BA%00%A2%FA%DC%0A%94%D1%D1%8D%8B%3A%84%17B%C7%60%1A%25Z%FC%8D%00%00%00%00IEND%AEB%60%82\"),url(\"data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%05%00%00%007%08%06%00%00%00%C4%DD%80C%00%00%03%1EiCCPICC%20Profile%00%00x%01%85T%DFk%D3P%14%FE%DAe%9D%B0%E1%8B%3Ag%11%09%3Eh%91ndStC%9C%B6kW%BA%CDZ%EA6%B7!H%9B%A6m%5C%9A%C6%24%ED~%B0%07%D9%8Bo%3A%C5w%F1%07%3E%F9%07%0C%D9%83o%7B%92%0D%C6%14a%F8%AC%88%22L%F6%22%B3%9E%9B4M'S%03%B9%F7%BB%DF%F9%EE9'%E7%E4%5E%A0%F9qZ%D3%14%2F%0F%14USO%C5%C2%FC%C4%E4%14%DF%F2%01%5E%1CC%2B%FChM%8B%86%16J%26G%40%0F%D3%B2y%EF%B3%F3%0E%1E%C6lt%EEo%DF%AB%FEc%D5%9A%95%0C%11%F0%1C%20%BE%945%C4%22%E1Y%A0i%5C%D4t%13%E0%D6%89%EF%9D15%C2%CDLsX%A7%04%09%1Fg8oc%81%E1%8C%8D%23%96f45%40%9A%09%C2%07%C5B%3AK%B8%408%98i%E0%F3%0D%D8%CE%81%14%E4'%26%A9%92.%8B%3C%ABER%2F%E5dE%B2%0C%F6%F0%1Fs%83%F2_%B0%A8%94%E9%9B%AD%E7%10%8Dm%9A%19N%D1%7C%8A%DE%1F9%7Dp%8C%E6%00%D5%C1%3F_%18%BDA%B8%9DpX6%E3%A35~B%CD%24%AE%11%26%BD%E7%EEti%98%EDe%9A%97Y)%12%25%1C%24%BCbT%AE3li%E6%0B%03%89%9A%E6%D3%ED%F4P%92%B0%9F4%BF43Y%F3%E3%EDP%95%04%EB1%C5%F5%F6KF%F4%BA%BD%D7%DB%91%93%07%E35%3E%A7)%D6%7F%40%FE%BD%F7%F5r%8A%E5y%92%F0%EB%B4%1E%8D%D5%F4%5B%92%3AV%DB%DB%E4%CD%A6%23%C3%C4wQ%3F%03HB%82%8E%1Cd(%E0%91B%0Ca%9Ac%C4%AA%F8L%16%19%22J%A4%D2itTy%B28%D6%3B(%93%96%ED%1CGx%C9_%0E%B8%5E%16%F5%5B%B2%B8%F6%E0%FB%9E%DD%25%D7%8E%BC%15%85%C5%B7%A3%D8Q%ED%B5%81%E9%BA%B2%13%9A%1B%7Fua%A5%A3n%E17%B9%E5%9B%1Bm%AB%0B%08Q%FE%8A%E5%B1H%5Ee%CAO%82Q%D7u6%E6%90S%97%FCu%0B%CF2%94%EE%25v%12X%0C%BA%AC%F0%5E%F8*l%0AO%85%17%C2%97%BF%D4%C8%CE%DE%AD%11%CB%80q%2C%3E%AB%9ES%CD%C6%EC%25%D2L%D2%EBd%B8%BF%8A%F5B%C6%18%F9%901CZ%9D%BE%24M%9C%8A9%F2%DAP%0B'%06w%82%EB%E6%E2%5C%2F%D7%07%9E%BB%CC%5D%E1%FA%B9%08%AD.r%23%8E%C2%17%F5E%7C!%F0%BE3%BE%3E_%B7o%88a%A7%DB%BE%D3d%EB%A31Z%EB%BB%D3%91%BA%A2%B1z%94%8F%DB'%F6%3D%8E%AA%13%19%B2%B1%BE%B1~V%08%2B%B4%A2cjJ%B3tO%00%03%25mN%97%F3%05%93%EF%11%84%0B%7C%88%AE-%89%8F%ABbW%90O%2B%0Ao%99%0C%5E%97%0CI%AFH%D9.%B0%3B%8F%ED%03%B6S%D6%5D%E6i_s9%F3*p%E9%1B%FD%C3%EB.7U%06%5E%19%C0%D1s.%17%A03u%E4%09%B0%7C%5E%2C%EB%15%DB%1F%3C%9E%B7%80%91%3B%DBc%AD%3Dma%BA%8B%3EV%AB%DBt.%5B%1E%01%BB%0F%AB%D5%9F%CF%AA%D5%DD%E7%E4%7F%0Bx%A3%FC%06%A9%23%0A%D6%C2%A1_2%00%00%00%09pHYs%00%00%0B%13%00%00%0B%13%01%00%9A%9C%18%00%00%003IDAT8%11c%FC%FF%FF%7F%3E%03%1A%60%01%F2%3F%A3%891%80%04%FFQ%26%F8w%C0%B43%A1%DB%0C%E2%8F%0A%A2%85%CAh%80%8C%06%08%3C%04%E8%96%18%00%A3S%0D%CD%CF%D8%C1%9D%00%00%00%00IEND%AEB%60%82\");background-repeat: no-repeat, repeat-x;background-position: center center, top left;}.ace_gutter-tooltip {background-color: #FFF;background-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1));background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));border: 1px solid gray;border-radius: 1px;box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);color: black;display: inline-block;max-width: 500px;padding: 4px;position: fixed;z-index: 999999;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;cursor: default;white-space: pre-line;word-wrap: break-word;line-height: normal;font-style: normal;font-weight: normal;letter-spacing: normal;}.ace_folding-enabled > .ace_gutter-cell {padding-right: 13px;}.ace_fold-widget {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;margin: 0 -12px 0 1px;display: none;width: 11px;vertical-align: top;background-image: url(\"data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%05%00%00%00%05%08%06%00%00%00%8Do%26%E5%00%00%004IDATx%DAe%8A%B1%0D%000%0C%C2%F2%2CK%96%BC%D0%8F9%81%88H%E9%D0%0E%96%C0%10%92%3E%02%80%5E%82%E4%A9*-%EEsw%C8%CC%11%EE%96w%D8%DC%E9*Eh%0C%151(%00%00%00%00IEND%AEB%60%82\");background-repeat: no-repeat;background-position: center;border-radius: 3px;border: 1px solid transparent;cursor: pointer;}.ace_folding-enabled .ace_fold-widget {display: inline-block; }.ace_fold-widget.ace_end {background-image: url(\"data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%05%00%00%00%05%08%06%00%00%00%8Do%26%E5%00%00%004IDATx%DAm%C7%C1%09%000%08C%D1%8C%ECE%C8E(%8E%EC%02)%1EZJ%F1%C1'%04%07I%E1%E5%EE%CAL%F5%A2%99%99%22%E2%D6%1FU%B5%FE0%D9x%A7%26Wz5%0E%D5%00%00%00%00IEND%AEB%60%82\");}.ace_fold-widget.ace_closed {background-image: url(\"data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%03%00%00%00%06%08%06%00%00%00%06%E5%24%0C%00%00%009IDATx%DA5%CA%C1%09%000%08%03%C0%AC*(%3E%04%C1%0D%BA%B1%23%A4Uh%E0%20%81%C0%CC%F8%82%81%AA%A2%AArGfr%88%08%11%11%1C%DD%7D%E0%EE%5B%F6%F6%CB%B8%05Q%2F%E9tai%D9%00%00%00%00IEND%AEB%60%82\");}.ace_fold-widget:hover {border: 1px solid rgba(0, 0, 0, 0.3);background-color: rgba(255, 255, 255, 0.2);-moz-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);}.ace_fold-widget:active {border: 1px solid rgba(0, 0, 0, 0.4);background-color: rgba(0, 0, 0, 0.05);-moz-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);}/*** Dark version for fold widgets*/.ace_dark .ace_fold-widget {background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC\");}.ace_dark .ace_fold-widget.ace_end {background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==\");}.ace_dark .ace_fold-widget.ace_closed {background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==\");}.ace_dark .ace_fold-widget:hover {box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);background-color: rgba(255, 255, 255, 0.1);}.ace_dark .ace_fold-widget:active {-moz-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);}.ace_fold-widget.ace_invalid {background-color: #FFB4B4;border-color: #DE5555;}.ace_fade-fold-widgets .ace_fold-widget {-moz-transition: opacity 0.4s ease 0.05s;-webkit-transition: opacity 0.4s ease 0.05s;-o-transition: opacity 0.4s ease 0.05s;-ms-transition: opacity 0.4s ease 0.05s;transition: opacity 0.4s ease 0.05s;opacity: 0;}.ace_fade-fold-widgets:hover .ace_fold-widget {-moz-transition: opacity 0.05s ease 0.05s;-webkit-transition: opacity 0.05s ease 0.05s;-o-transition: opacity 0.05s ease 0.05s;-ms-transition: opacity 0.05s ease 0.05s;transition: opacity 0.05s ease 0.05s;opacity:1;}.ace_underline {text-decoration: underline;}.ace_bold {font-weight: bold;}.ace_nobold .ace_bold {font-weight: normal;}.ace_italic {font-style: italic;}.ace_error-marker {background-color: rgba(255, 0, 0,0.2);position: absolute;z-index: 9;}.ace_highlight-marker {background-color: rgba(255, 255, 0,0.2);position: absolute;z-index: 8;}";i.importCssString(v,"ace_editor");var m=function(e,t){var n=this;this.container=e||i.createElement("div"),this.$keepTextAreaAtCursor=!0,i.addCssClass(this.container,"ace_editor"),this.setTheme(t),this.$gutter=i.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.scroller=i.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=i.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new u(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new a(this.content);var r=this.$textLayer=new f(this.content);this.canvas=r.element,this.$markerFront=new a(this.content),this.$cursorLayer=new l(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new h(this.container,this),this.scrollBarH=new c(this.container,this),this.scrollBarV.addEventListener("scroll",function(e){n.$scrollAnimation||n.session.setScrollTop(e.data-n.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(e){n.$scrollAnimation||n.session.setScrollLeft(e.data-n.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$textLayer.addEventListener("changeCharacterSize",function(){n.updateCharacterSize(),n.onResize(!0,n.gutterWidth,n.$size.width,n.$size.height),n._signal("changeCharacterSize")}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$loop=new p(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),o.resetOptions(this),o._emit("renderer",this)};(function(){this.CHANGE_CURSOR=1,this.CHANGE_MARKER=2,this.CHANGE_GUTTER=4,this.CHANGE_SCROLL=8,this.CHANGE_LINES=16,this.CHANGE_TEXT=32,this.CHANGE_SIZE=64,this.CHANGE_MARKER_BACK=128,this.CHANGE_MARKER_FRONT=256,this.CHANGE_FULL=512,this.CHANGE_H_SCROLL=1024,r.implement(this,d),this.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin()},this.setSession=function(e){this.session=e,this.scrollMargin.top&&e.getScrollTop()<=0&&e.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(e),this.$markerBack.setSession(e),this.$markerFront.setSession(e),this.$gutterLayer.setSession(e),this.$textLayer.setSession(e),this.$loop.schedule(this.CHANGE_FULL)},this.updateLines=function(e,t){t===undefined&&(t=Infinity),this.$changedLines?(this.$changedLines.firstRow>e&&(this.$changedLines.firstRow=e),this.$changedLines.lastRow<t&&(this.$changedLines.lastRow=t)):this.$changedLines={firstRow:e,lastRow:t};if(this.$changedLines.firstRow>this.layerConfig.lastRow||this.$changedLines.lastRow<this.layerConfig.firstRow)return;this.$loop.schedule(this.CHANGE_LINES)},this.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},this.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},this.updateFull=function(e){e?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},this.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},this.$changes=0,this.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},this.onResize=function(e,t,n,r){if(this.resizing>2)return;this.resizing>0?this.resizing++:this.resizing=e?1:0;var i=this.container;r||(r=i.clientHeight||i.scrollHeight),n||(n=i.clientWidth||i.scrollWidth);var s=this.$updateCachedSize(e,t,n,r);if(!this.$size.scrollerHeight||!n&&!r)return this.resizing=0;e&&(this.$gutterLayer.$padding=null),e?this.$renderChanges(s|this.$changes,!0):this.$loop.schedule(s|this.$changes),this.resizing&&(this.resizing=0)},this.$updateCachedSize=function(e,t,n,r){r-=this.$extraHeight||0;var i=0,s=this.$size,o={width:s.width,height:s.height,scrollerHeight:s.scrollerHeight,scrollerWidth:s.scrollerWidth};r&&(e||s.height!=r)&&(s.height=r,i=this.CHANGE_SIZE,s.scrollerHeight=s.height,this.$horizScroll&&(s.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",this.session&&(i|=this.CHANGE_SCROLL));if(n&&(e||s.width!=n)){i=this.CHANGE_SIZE,s.width=n,t==null&&(t=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=t,this.scrollBarH.element.style.left=this.scroller.style.left=t+"px",s.scrollerWidth=Math.max(0,n-t-this.scrollBarV.getWidth()),this.scrollBarH.element.style.right=this.scroller.style.right=this.scrollBarV.getWidth()+"px",this.scroller.style.bottom=this.scrollBarH.getHeight()+"px";if(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||e)i|=this.CHANGE_FULL}return s.$dirty=!n||!r,i&&this._signal("resize",o),i},this.onGutterResize=function(){var e=this.$showGutter?this.$gutter.offsetWidth:0;e!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,e,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):(this.$computeLayerConfig(),this.$loop.schedule(this.CHANGE_MARKER))},this.adjustWrapLimit=function(){var e=this.$size.scrollerWidth-this.$padding*2,t=Math.floor(e/this.characterWidth);return this.session.adjustWrapLimit(t,this.$showPrintMargin&&this.$printMarginColumn)},this.setAnimatedScroll=function(e){this.setOption("animatedScroll",e)},this.getAnimatedScroll=function(){return this.$animatedScroll},this.setShowInvisibles=function(e){this.setOption("showInvisibles",e)},this.getShowInvisibles=function(){return this.getOption("showInvisibles")},this.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},this.setDisplayIndentGuides=function(e){this.setOption("displayIndentGuides",e)},this.setShowPrintMargin=function(e){this.setOption("showPrintMargin",e)},this.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},this.setPrintMarginColumn=function(e){this.setOption("printMarginColumn",e)},this.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},this.getShowGutter=function(){return this.getOption("showGutter")},this.setShowGutter=function(e){return this.setOption("showGutter",e)},this.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},this.setFadeFoldWidgets=function(e){this.setOption("fadeFoldWidgets",e)},this.setHighlightGutterLine=function(e){this.setOption("highlightGutterLine",e)},this.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},this.$updateGutterLineHighlight=function(){var e=this.$cursorLayer.$pixelPos,t=this.layerConfig.lineHeight;if(this.session.getUseWrapMode()){var n=this.session.selection.getCursor();n.column=0,e=this.$cursorLayer.getPixelPosition(n,!0),t*=this.session.getRowLength(n.row)}this.$gutterLineHighlight.style.top=e.top-this.layerConfig.offset+"px",this.$gutterLineHighlight.style.height=t+"px"},this.$updatePrintMargin=function(){if(!this.$showPrintMargin&&!this.$printMarginEl)return;if(!this.$printMarginEl){var e=i.createElement("div");e.className="ace_layer ace_print-margin-layer",this.$printMarginEl=i.createElement("div"),this.$printMarginEl.className="ace_print-margin",e.appendChild(this.$printMarginEl),this.content.insertBefore(e,this.content.firstChild)}var t=this.$printMarginEl.style;t.left=this.characterWidth*this.$printMarginColumn+this.$padding+"px",t.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit()},this.getContainerElement=function(){return this.container},this.getMouseEventTarget=function(){return this.content},this.getTextAreaContainer=function(){return this.container},this.$moveTextAreaToCursor=function(){if(!this.$keepTextAreaAtCursor)return;var e=this.layerConfig,t=this.$cursorLayer.$pixelPos.top,n=this.$cursorLayer.$pixelPos.left;t-=e.offset;var r=this.lineHeight;if(t<0||t>e.height-r)return;var i=this.characterWidth;if(this.$composition){var s=this.textarea.value.replace(/^\x01+/,"");i*=this.session.$getStringScreenWidth(s)[0]+2,r+=2,t-=1}n-=this.scrollLeft,n>this.$size.scrollerWidth-i&&(n=this.$size.scrollerWidth-i),n-=this.scrollBar.width,this.textarea.style.height=r+"px",this.textarea.style.width=i+"px",this.textarea.style.right=Math.max(0,this.$size.scrollerWidth-n-i)+"px",this.textarea.style.bottom=Math.max(0,this.$size.height-t-r)+"px"},this.getFirstVisibleRow=function(){return this.layerConfig.firstRow},this.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)},this.getLastFullyVisibleRow=function(){var e=Math.floor((this.layerConfig.height+this.layerConfig.offset)/this.layerConfig.lineHeight);return this.layerConfig.firstRow-1+e},this.getLastVisibleRow=function(){return this.layerConfig.lastRow},this.$padding=null,this.setPadding=function(e){this.$padding=e,this.$textLayer.setPadding(e),this.$cursorLayer.setPadding(e),this.$markerFront.setPadding(e),this.$markerBack.setPadding(e),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},this.setScrollMargin=function(e,t,n,r){var i=this.scrollMargin;i.top=e|0,i.bottom=t|0,i.right=r|0,i.left=n|0,i.v=i.top+i.bottom,i.h=i.left+i.right,i.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(i.top),this.updateFull()},this.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setHScrollBarAlwaysVisible=function(e){this.setOption("hScrollBarAlwaysVisible",e)},this.getVScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},this.setVScrollBarAlwaysVisible=function(e){this.setOption("vScrollBarAlwaysVisible",e)},this.$updateScrollBarV=function(){this.scrollBarV.setScrollHeight(this.layerConfig.maxHeight+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},this.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},this.$frozen=!1,this.freeze=function(){this.$frozen=!0},this.unfreeze=function(){this.$frozen=!1},this.$renderChanges=function(e,t){this.$changes&&(e|=this.$changes,this.$changes=0);if(!this.session||!this.container.offsetWidth||this.$frozen||!e&&!t){this.$changes|=e;return}if(this.$size.$dirty)return this.$changes|=e,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender");var n=this.layerConfig;if(e&this.CHANGE_FULL||e&this.CHANGE_SIZE||e&this.CHANGE_TEXT||e&this.CHANGE_LINES||e&this.CHANGE_SCROLL||e&this.CHANGE_H_SCROLL)e|=this.$computeLayerConfig(),n=this.layerConfig,this.$updateScrollBarV(),e&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),this.$gutterLayer.element.style.marginTop=-n.offset+"px",this.content.style.marginTop=-n.offset+"px",this.content.style.width=n.width+2*this.$padding+"px",this.content.style.height=n.minHeight+"px";e&this.CHANGE_H_SCROLL&&(this.content.style.marginLeft=-this.scrollLeft+"px",this.scroller.className=this.scrollLeft<=0?"ace_scroller":"ace_scroller ace_scroll-left");if(e&this.CHANGE_FULL){this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),this._signal("afterRender");return}if(e&this.CHANGE_SCROLL){e&this.CHANGE_TEXT||e&this.CHANGE_LINES?this.$textLayer.update(n):this.$textLayer.scrollLines(n),this.$showGutter&&this.$gutterLayer.update(n),this.$markerBack.update(n),this.$markerFront.update(n),this.$cursorLayer.update(n),this.$highlightGutterLine&&this.$updateGutterLineHighlight(),this.$moveTextAreaToCursor(),this._signal("afterRender");return}e&this.CHANGE_TEXT?(this.$textLayer.update(n),this.$showGutter&&this.$gutterLayer.update(n)):e&this.CHANGE_LINES?(this.$updateLines()||e&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(n):(e&this.CHANGE_TEXT||e&this.CHANGE_GUTTER)&&this.$showGutter&&this.$gutterLayer.update(n),e&this.CHANGE_CURSOR&&(this.$cursorLayer.update(n),this.$moveTextAreaToCursor(),this.$highlightGutterLine&&this.$updateGutterLineHighlight()),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(n),e&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(n),this._signal("afterRender")},this.$autosize=function(){var e=this.session.getScreenLength()*this.lineHeight,t=this.$maxLines*this.lineHeight,n=Math.max((this.$minLines||1)*this.lineHeight,Math.min(t,e))+this.scrollMargin.v+(this.$extraHeight||0),r=e>t;if(n!=this.desiredHeight||this.$size.height!=this.desiredHeight||r!=this.$vScroll){r!=this.$vScroll&&(this.$vScroll=r,this.scrollBarV.setVisible(r));var i=this.container.clientWidth;this.container.style.height=n+"px",this.$updateCachedSize(!0,this.$gutterWidth,i,n),this.desiredHeight=n}},this.$computeLayerConfig=function(){this.$maxLines&&this.lineHeight>1&&this.$autosize();var e=this.session,t=this.$size.height<=2*this.lineHeight,n=this.session.getScreenLength(),r=n*this.lineHeight,i=this.scrollTop%this.lineHeight,s=this.$size.scrollerHeight+this.lineHeight,o=this.$getLongestLine(),u=!t&&(this.$hScrollBarAlwaysVisible||this.$size.scrollerWidth-o-2*this.$padding<0),a=this.$horizScroll!==u;a&&(this.$horizScroll=u,this.scrollBarH.setVisible(u)),!this.$maxLines&&this.$scrollPastEnd&&this.scrollTop>r-this.$size.scrollerHeight&&(r+=Math.min((this.$size.scrollerHeight-this.lineHeight)*this.$scrollPastEnd,this.scrollTop-r+this.$size.scrollerHeight));var f=!t&&(this.$vScrollBarAlwaysVisible||this.$size.scrollerHeight-r<0),l=this.$vScroll!==f;l&&(this.$vScroll=f,this.scrollBarV.setVisible(f)),this.session.setScrollTop(Math.max(-this.scrollMargin.top,Math.min(this.scrollTop,r-this.$size.scrollerHeight+this.scrollMargin.v))),this.session.setScrollLeft(Math.max(-this.scrollMargin.left,Math.min(this.scrollLeft,o+2*this.$padding-this.$size.scrollerWidth+this.scrollMargin.h)));var c=Math.ceil(s/this.lineHeight)-1,h=Math.max(0,Math.round((this.scrollTop-i)/this.lineHeight)),p=h+c,d,v,m=this.lineHeight;h=e.screenToDocumentRow(h,0);var g=e.getFoldLine(h);g&&(h=g.start.row),d=e.documentToScreenRow(h,0),v=e.getRowLength(h)*m,p=Math.min(e.screenToDocumentRow(p,0),e.getLength()-1),s=this.$size.scrollerHeight+e.getRowLength(p)*m+v,i=this.scrollTop-d*m;var y=0;if(a||l)y=this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this._signal("scrollbarVisibilityChanged"),l&&(o=this.$getLongestLine());return this.layerConfig={width:o,padding:this.$padding,firstRow:h,firstRowScreen:d,lastRow:p,lineHeight:m,characterWidth:this.characterWidth,minHeight:s,maxHeight:r,offset:i,height:this.$size.scrollerHeight},y},this.$updateLines=function(){var e=this.$changedLines.firstRow,t=this.$changedLines.lastRow;this.$changedLines=null;var n=this.layerConfig;if(e>n.lastRow+1)return;if(t<n.firstRow)return;if(t===Infinity){this.$showGutter&&this.$gutterLayer.update(n),this.$textLayer.update(n);return}return this.$textLayer.updateLines(n,e,t),!0},this.$getLongestLine=function(){var e=this.session.getScreenWidth();return this.showInvisibles&&!this.session.$useWrapMode&&(e+=1),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(e*this.characterWidth))},this.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},this.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},this.addGutterDecoration=function(e,t){this.$gutterLayer.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){this.$gutterLayer.removeGutterDecoration(e,t)},this.updateBreakpoints=function(e){this.$loop.schedule(this.CHANGE_GUTTER)},this.setAnnotations=function(e){this.$gutterLayer.setAnnotations(e),this.$loop.schedule(this.CHANGE_GUTTER)},this.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},this.hideCursor=function(){this.$cursorLayer.hideCursor()},this.showCursor=function(){this.$cursorLayer.showCursor()},this.scrollSelectionIntoView=function(e,t,n){this.scrollCursorIntoView(e,n),this.scrollCursorIntoView(t,n)},this.scrollCursorIntoView=function(e,t){if(this.$size.scrollerHeight===0)return;var n=this.$cursorLayer.getPixelPosition(e),r=n.left,i=n.top,s=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;s>i?(t&&(i-=t*this.$size.scrollerHeight),i==0?i=-this.scrollMargin.top:i==0&&(i=+this.scrollMargin.bottom),this.session.setScrollTop(i)):s+this.$size.scrollerHeight<i+this.lineHeight&&(t&&(i+=t*this.$size.scrollerHeight),this.session.setScrollTop(i+this.lineHeight-this.$size.scrollerHeight));var o=this.scrollLeft;o>r?(r<this.$padding+2*this.layerConfig.characterWidth&&(r=-this.scrollMargin.left),this.session.setScrollLeft(r)):o+this.$size.scrollerWidth<r+this.characterWidth?this.session.setScrollLeft(Math.round(r+this.characterWidth-this.$size.scrollerWidth)):o<=this.$padding&&r-o<this.characterWidth&&this.session.setScrollLeft(0)},this.getScrollTop=function(){return this.session.getScrollTop()},this.getScrollLeft=function(){return this.session.getScrollLeft()},this.getScrollTopRow=function(){return this.scrollTop/this.lineHeight},this.getScrollBottomRow=function(){return Math.max(0,Math.floor((this.scrollTop+this.$size.scrollerHeight)/this.lineHeight)-1)},this.scrollToRow=function(e){this.session.setScrollTop(e*this.lineHeight)},this.alignCursor=function(e,t){typeof e=="number"&&(e={row:e,column:0});var n=this.$cursorLayer.getPixelPosition(e),r=this.$size.scrollerHeight-this.lineHeight,i=n.top-r*(t||0);return this.session.setScrollTop(i),i},this.STEPS=8,this.$calcSteps=function(e,t){var n=0,r=this.STEPS,i=[],s=function(e,t,n){return n*(Math.pow(e-1,3)+1)+t};for(n=0;n<r;++n)i.push(s(n/this.STEPS,e,t-e));return i},this.scrollToLine=function(e,t,n,r){var i=this.$cursorLayer.getPixelPosition({row:e,column:0}),s=i.top;t&&(s-=this.$size.scrollerHeight/2);var o=this.scrollTop;this.session.setScrollTop(s),n!==!1&&this.animateScrolling(o,r)},this.animateScrolling=function(e,t){var n=this.scrollTop;if(!this.$animatedScroll)return;var r=this;if(e==n)return;if(this.$scrollAnimation){var i=this.$scrollAnimation.steps;if(i.length){e=i[0];if(e==n)return}}var s=r.$calcSteps(e,n);this.$scrollAnimation={from:e,to:n,steps:s},clearInterval(this.$timer),r.session.setScrollTop(s.shift()),r.session.$scrollTop=n,this.$timer=setInterval(function(){s.length?(r.session.setScrollTop(s.shift()),r.session.$scrollTop=n):n!=null?(r.session.$scrollTop=-1,r.session.setScrollTop(n),n=null):(r.$timer=clearInterval(r.$timer),r.$scrollAnimation=null,t&&t())},10)},this.scrollToY=function(e){this.scrollTop!==e&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=e)},this.scrollToX=function(e){this.scrollLeft!==e&&(this.scrollLeft=e),this.$loop.schedule(this.CHANGE_H_SCROLL)},this.scrollTo=function(e,t){this.session.setScrollTop(t),this.session.setScrollLeft(t)},this.scrollBy=function(e,t){t&&this.session.setScrollTop(this.session.getScrollTop()+t),e&&this.session.setScrollLeft(this.session.getScrollLeft()+e)},this.isScrollableBy=function(e,t){if(t<0&&this.session.getScrollTop()>=1-this.scrollMargin.top)return!0;if(t>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight-(this.$size.scrollerHeight-this.lineHeight)*this.$scrollPastEnd<-1+this.scrollMargin.bottom)return!0;if(e<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left)return!0;if(e>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},this.pixelToScreenCoordinates=function(e,t){var n=this.scroller.getBoundingClientRect(),r=(e+this.scrollLeft-n.left-this.$padding)/this.characterWidth,i=Math.floor((t+this.scrollTop-n.top)/this.lineHeight),s=Math.round(r);return{row:i,column:s,side:r-s>0?1:-1}},this.screenToTextCoordinates=function(e,t){var n=this.scroller.getBoundingClientRect(),r=Math.round((e+this.scrollLeft-n.left-this.$padding)/this.characterWidth),i=(t+this.scrollTop-n.top)/this.lineHeight;return this.session.screenToDocumentPosition(i,Math.max(r,0))},this.textToScreenCoordinates=function(e,t){var n=this.scroller.getBoundingClientRect(),r=this.session.documentToScreenPosition(e,t),i=this.$padding+Math.round(r.column*this.characterWidth),s=r.row*this.lineHeight;return{pageX:n.left+i-this.scrollLeft,pageY:n.top+s-this.scrollTop}},this.visualizeFocus=function(){i.addCssClass(this.container,"ace_focus")},this.visualizeBlur=function(){i.removeCssClass(this.container,"ace_focus")},this.showComposition=function(e){this.$composition||(this.$composition={keepTextAreaAtCursor:this.$keepTextAreaAtCursor,cssText:this.textarea.style.cssText}),this.$keepTextAreaAtCursor=!0,i.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor()},this.setCompositionText=function(e){this.$moveTextAreaToCursor()},this.hideComposition=function(){if(!this.$composition)return;i.removeCssClass(this.textarea,"ace_composition"),this.$keepTextAreaAtCursor=this.$composition.keepTextAreaAtCursor,this.textarea.style.cssText=this.$composition.cssText,this.$composition=null},this.setTheme=function(e,t){function s(r){if(n.$themeId!=e)return t&&t();if(!r.cssClass)return;i.importCssString(r.cssText,r.cssClass,n.container.ownerDocument),n.theme&&i.removeCssClass(n.container,n.theme.cssClass);var s="padding"in r?r.padding:"padding"in(n.theme||{})?4:n.$padding;n.$padding&&s!=n.$padding&&n.setPadding(s),n.$theme=r.cssClass,n.theme=r,i.addCssClass(n.container,r.cssClass),i.setCssClass(n.container,"ace_dark",r.isDark),n.$size&&(n.$size.width=0,n.$updateSizeAsync()),n._dispatchEvent("themeLoaded",{theme:r}),t&&t()}var n=this;this.$themeId=e,n._dispatchEvent("themeChange",{theme:e});if(!e||typeof e=="string"){var r=e||this.$options.theme.initialValue;o.loadModule(["theme",r],s)}else s(e)},this.getTheme=function(){return this.$themeId},this.setStyle=function(e,t){i.setCssClass(this.container,e,t!==!1)},this.unsetStyle=function(e){i.removeCssClass(this.container,e)},this.setCursorStyle=function(e){this.content.style.cursor!=e&&(this.content.style.cursor=e)},this.setMouseCursor=function(e){this.content.style.cursor=e},this.destroy=function(){this.$textLayer.destroy(),this.$cursorLayer.destroy()}}).call(m.prototype),o.defineOptions(m.prototype,"renderer",{animatedScroll:{initialValue:!1},showInvisibles:{set:function(e){this.$textLayer.setShowInvisibles(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(e){typeof e=="number"&&(this.$printMarginColumn=e),this.$showPrintMargin=!!e,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(e){this.$gutter.style.display=e?"block":"none",this.onGutterResize()},initialValue:!0},fadeFoldWidgets:{set:function(e){i.setCssClass(this.$gutter,"ace_fade-fold-widgets",e)},initialValue:!1},showFoldWidgets:{set:function(e){this.$gutterLayer.setShowFoldWidgets(e)},initialValue:!0},displayIndentGuides:{set:function(e){this.$textLayer.setDisplayIndentGuides(e)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightGutterLine:{set:function(e){if(!this.$gutterLineHighlight){this.$gutterLineHighlight=i.createElement("div"),this.$gutterLineHighlight.className="ace_gutter-active-line",this.$gutter.appendChild(this.$gutterLineHighlight);return}this.$gutterLineHighlight.style.display=e?"":"none",this.$cursorLayer.$pixelPos&&this.$updateGutterLineHighlight()},initialValue:!1,value:!0},hScrollBarAlwaysVisible:{set:function(e){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(e){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(e){typeof e=="number"&&(e+="px"),this.container.style.fontSize=e,this.updateFontSize()},initialValue:12},fontFamily:{set:function(e){this.container.style.fontFamily=e,this.updateFontSize()}},maxLines:{set:function(e){this.updateFull()}},minLines:{set:function(e){this.updateFull()}},scrollPastEnd:{set:function(e){e=+e||0;if(this.$scrollPastEnd==e)return;this.$scrollPastEnd=e,this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(e){this.$gutterLayer.$fixedWidth=!!e,this.$loop.schedule(this.CHANGE_GUTTER)}},theme:{set:function(e){this.setTheme(e)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0}}),t.VirtualRenderer=m}),ace.define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter"],function(e,t,n){var r=e("../lib/dom"),i=e("../lib/oop"),s=e("../lib/lang"),o=e("../lib/event_emitter").EventEmitter,u=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_gutter-layer",e.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$cells=[]};(function(){i.implement(this,o),this.setSession=function(e){this.session&&this.session.removeEventListener("change",this.$updateAnnotations),this.session=e,e.on("change",this.$updateAnnotations)},this.addGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(e,t)},this.removeGutterDecoration=function(e,t){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(e,t)},this.setAnnotations=function(e){this.$annotations=[];for(var t=0;t<e.length;t++){var n=e[t],r=n.row,i=this.$annotations[r];i||(i=this.$annotations[r]={text:[]});var o=n.text;o=o?s.escapeHTML(o):n.html||"",i.text.indexOf(o)===-1&&i.text.push(o);var u=n.type;u=="error"?i.className=" ace_error":u=="warning"&&i.className!=" ace_error"?i.className=" ace_warning":u=="info"&&!i.className&&(i.className=" ace_info")}},this.$updateAnnotations=function(e){if(!this.$annotations.length)return;var t=e.data,n=t.range,r=n.start.row,i=n.end.row-r;if(i!==0)if(t.action=="removeText"||t.action=="removeLines")this.$annotations.splice(r,i+1,null);else{var s=new Array(i+1);s.unshift(r,1),this.$annotations.splice.apply(this.$annotations,s)}},this.update=function(e){var t=e.firstRow,n=e.lastRow,i=this.session,s=i.getNextFoldLine(t),o=s?s.start.row:Infinity,u=this.$showFoldWidgets&&i.foldWidgets,a=i.$breakpoints,f=i.$decorations,l=i.$firstLineNumber,c=0,h=i.gutterRenderer,p=null,d=-1,v=t;for(;;){v>o&&(v=s.end.row+1,s=i.getNextFoldLine(v,s),o=s?s.start.row:Infinity);if(v>n){while(this.$cells.length>d+1)p=this.$cells.pop(),this.element.removeChild(p.element);break}p=this.$cells[++d],p||(p={element:null,textNode:null,foldWidget:null},p.element=r.createElement("div"),p.textNode=document.createTextNode(""),p.element.appendChild(p.textNode),this.element.appendChild(p.element),this.$cells[d]=p);var m="ace_gutter-cell ";a[v]&&(m+=a[v]),f[v]&&(m+=f[v]),this.$annotations[v]&&(m+=this.$annotations[v].className),p.element.className!=m&&(p.element.className=m);var g=i.getRowLength(v)*e.lineHeight+"px";g!=p.element.style.height&&(p.element.style.height=g);if(u){var y=u[v];y==null&&(y=u[v]=i.getFoldWidget(v))}if(y){p.foldWidget||(p.foldWidget=r.createElement("span"),p.element.appendChild(p.foldWidget));var m="ace_fold-widget ace_"+y;y=="start"&&v==o&&v<s.end.row?m+=" ace_closed":m+=" ace_open",p.foldWidget.className!=m&&(p.foldWidget.className=m);var g=e.lineHeight+"px";p.foldWidget.style.height!=g&&(p.foldWidget.style.height=g)}else p.foldWidget&&(p.element.removeChild(p.foldWidget),p.foldWidget=null);var b=c=h?h.getText(i,v):v+l;b!=p.textNode.data&&(p.textNode.data=b),v++}this.element.style.height=e.minHeight+"px";if(this.$fixedWidth||i.$useWrapMode)c=i.getLength()+l;var w=h?h.getWidth(i,c,e):c.toString().length*e.characterWidth,E=this.$padding||this.$computePadding();w+=E.left+E.right,w!==this.gutterWidth&&!isNaN(w)&&(this.gutterWidth=w,this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._emit("changeGutterWidth",w))},this.$fixedWidth=!1,this.$showFoldWidgets=!0,this.setShowFoldWidgets=function(e){e?r.addCssClass(this.element,"ace_folding-enabled"):r.removeCssClass(this.element,"ace_folding-enabled"),this.$showFoldWidgets=e,this.$padding=null},this.getShowFoldWidgets=function(){return this.$showFoldWidgets},this.$computePadding=function(){if(!this.element.firstChild)return{left:0,right:0};var e=r.computedStyle(this.element.firstChild);return this.$padding={},this.$padding.left=parseInt(e.paddingLeft)+1||0,this.$padding.right=parseInt(e.paddingRight)||0,this.$padding},this.getRegion=function(e){var t=this.$padding||this.$computePadding(),n=this.element.getBoundingClientRect();if(e.x<t.left+n.left)return"markers";if(this.$showFoldWidgets&&e.x>n.right-t.right)return"foldWidgets"}}).call(u.prototype),t.Gutter=u}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,t,n){var r=e("../range").Range,i=e("../lib/dom"),s=function(e){this.element=i.createElement("div"),this.element.className="ace_layer ace_marker-layer",e.appendChild(this.element)};(function(){this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setMarkers=function(e){this.markers=e},this.update=function(e){var e=e||this.config;if(!e)return;this.config=e;var t=[];for(var n in this.markers){var r=this.markers[n];if(!r.range){r.update(t,this,this.session,e);continue}var s=r.range.clipRows(e.firstRow,e.lastRow);if(s.isEmpty())continue;s=s.toScreenRange(this.session);if(r.renderer){var o=this.$getTop(s.start.row,e),u=this.$padding+s.start.column*e.characterWidth;r.renderer(t,s,u,o,e)}else r.type=="fullLine"?this.drawFullLineMarker(t,s,r.clazz,e):r.type=="screenLine"?this.drawScreenLineMarker(t,s,r.clazz,e):s.isMultiLine()?r.type=="text"?this.drawTextMarker(t,s,r.clazz,e):this.drawMultiLineMarker(t,s,r.clazz,e):this.drawSingleLineMarker(t,s,r.clazz+" ace_start",e)}this.element=i.setInnerHtml(this.element,t.join(""))},this.$getTop=function(e,t){return(e-t.firstRowScreen)*t.lineHeight},this.drawTextMarker=function(e,t,n,i,s){var o=t.start.row,u=new r(o,t.start.column,o,this.session.getScreenLastRowColumn(o));this.drawSingleLineMarker(e,u,n+" ace_start",i,1,s),o=t.end.row,u=new r(o,0,o,t.end.column),this.drawSingleLineMarker(e,u,n,i,0,s);for(o=t.start.row+1;o<t.end.row;o++)u.start.row=o,u.end.row=o,u.end.column=this.session.getScreenLastRowColumn(o),this.drawSingleLineMarker(e,u,n,i,1,s)},this.drawMultiLineMarker=function(e,t,n,r,i){var s=this.$padding,o=r.lineHeight,u=this.$getTop(t.start.row,r),a=s+t.start.column*r.characterWidth;i=i||"",e.push("<div class='",n," ace_start' style='","height:",o,"px;","right:0;","top:",u,"px;","left:",a,"px;",i,"'></div>"),u=this.$getTop(t.end.row,r);var f=t.end.column*r.characterWidth;e.push("<div class='",n,"' style='","height:",o,"px;","width:",f,"px;","top:",u,"px;","left:",s,"px;",i,"'></div>"),o=(t.end.row-t.start.row-1)*r.lineHeight;if(o<0)return;u=this.$getTop(t.start.row+1,r),e.push("<div class='",n,"' style='","height:",o,"px;","right:0;","top:",u,"px;","left:",s,"px;",i,"'></div>")},this.drawSingleLineMarker=function(e,t,n,r,i,s){var o=r.lineHeight,u=(t.end.column+(i||0)-t.start.column)*r.characterWidth,a=this.$getTop(t.start.row,r),f=this.$padding+t.start.column*r.characterWidth;e.push("<div class='",n,"' style='","height:",o,"px;","width:",u,"px;","top:",a,"px;","left:",f,"px;",s||"","'></div>")},this.drawFullLineMarker=function(e,t,n,r,i){var s=this.$getTop(t.start.row,r),o=r.lineHeight;t.start.row!=t.end.row&&(o+=this.$getTop(t.end.row,r)-s),e.push("<div class='",n,"' style='","height:",o,"px;","top:",s,"px;","left:0;right:0;",i||"","'></div>")},this.drawScreenLineMarker=function(e,t,n,r,i){var s=this.$getTop(t.start.row,r),o=r.lineHeight;e.push("<div class='",n,"' style='","height:",o,"px;","top:",s,"px;","left:0;right:0;",i||"","'></div>")}}).call(s.prototype),t.Marker=s}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/lib/event_emitter"],function(e,t,n){var r=e("../lib/oop"),i=e("../lib/dom"),s=e("../lib/lang"),o=e("../lib/useragent"),u=e("../lib/event_emitter").EventEmitter,a=function(e){this.element=i.createElement("div"),this.element.className="ace_layer ace_text-layer",e.appendChild(this.element),this.$characterSize={width:0,height:0},this.checkForSizeChanges(),this.$pollSizeChanges()};(function(){r.implement(this,u),this.EOF_CHAR="¶",this.EOL_CHAR="¬",this.TAB_CHAR="→",this.SPACE_CHAR="·",this.$padding=0,this.setPadding=function(e){this.$padding=e,this.element.style.padding="0 "+e+"px"},this.getLineHeight=function(){return this.$characterSize.height||0},this.getCharacterWidth=function(){return this.$characterSize.width||0},this.checkForSizeChanges=function(){var e=this.$measureSizes();if(e&&(this.$characterSize.width!==e.width||this.$characterSize.height!==e.height)){this.$measureNode.style.fontWeight="bold";var t=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=e,this.allowBoldFonts=t&&t.width===e.width&&t.height===e.height,this._emit("changeCharacterSize",{data:e})}},this.$pollSizeChanges=function(){var e=this;this.$pollSizeChangesTimer=setInterval(function(){e.checkForSizeChanges()},500)},this.$fontStyles={fontFamily:1,fontSize:1,fontWeight:1,fontStyle:1,lineHeight:1},this.$measureSizes=o.isIE||o.isOldGecko?function(){var e=1e3;if(!this.$measureNode){var t=this.$measureNode=i.createElement("div"),n=t.style;n.width=n.height="auto",n.left=n.top=-e*40+"px",n.visibility="hidden",n.position="fixed",n.overflow="visible",n.whiteSpace="nowrap",t.innerHTML=s.stringRepeat("Xy",e);if(this.element.ownerDocument.body)this.element.ownerDocument.body.appendChild(t);else{var r=this.element.parentNode;while(!i.hasCssClass(r,"ace_editor"))r=r.parentNode;r.appendChild(t)}}if(!this.element.offsetWidth)return null;var n=this.$measureNode.style,o=i.computedStyle(this.element);for(var u in this.$fontStyles)n[u]=o[u];var a={height:this.$measureNode.offsetHeight,width:this.$measureNode.offsetWidth/(e*2)};return a.width==0||a.height==0?null:a}:function(){if(!this.$measureNode){var e=this.$measureNode=i.createElement("div"),t=e.style;t.width=t.height="auto",t.left=t.top="-100px",t.visibility="hidden",t.position="fixed",t.overflow="visible",t.whiteSpace="nowrap",e.innerHTML=s.stringRepeat("X",100);var n=this.element.parentNode;while(n&&!i.hasCssClass(n,"ace_editor"))n=n.parentNode;if(!n)return this.$measureNode=null;n.appendChild(e)}var r=this.$measureNode.getBoundingClientRect(),o={height:r.height,width:r.width/100};return o.width==0||o.height==0?null:o},this.setSession=function(e){this.session=e,this.$computeTabString()},this.showInvisibles=!1,this.setShowInvisibles=function(e){return this.showInvisibles==e?!1:(this.showInvisibles=e,this.$computeTabString(),!0)},this.displayIndentGuides=!0,this.setDisplayIndentGuides=function(e){return this.displayIndentGuides==e?!1:(this.displayIndentGuides=e,this.$computeTabString(),!0)},this.$tabStrings=[],this.onChangeTabSize=this.$computeTabString=function(){var e=this.session.getTabSize();this.tabSize=e;var t=this.$tabStrings=[0];for(var n=1;n<e+1;n++)this.showInvisibles?t.push("<span class='ace_invisible'>"+this.TAB_CHAR+s.stringRepeat(" ",n-1)+"</span>"):t.push(s.stringRepeat(" ",n));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var r="ace_indent-guide";if(this.showInvisibles){r+=" ace_invisible";var i=s.stringRepeat(this.SPACE_CHAR,this.tabSize),o=this.TAB_CHAR+s.stringRepeat(" ",this.tabSize-1)}else var i=s.stringRepeat(" ",this.tabSize),o=i;this.$tabStrings[" "]="<span class='"+r+"'>"+i+"</span>",this.$tabStrings[" "]="<span class='"+r+"'>"+o+"</span>"}},this.updateLines=function(e,t,n){(this.config.lastRow!=e.lastRow||this.config.firstRow!=e.firstRow)&&this.scrollLines(e),this.config=e;var r=Math.max(t,e.firstRow),s=Math.min(n,e.lastRow),o=this.element.childNodes,u=0;for(var a=e.firstRow;a<r;a++){var f=this.session.getFoldLine(a);if(f){if(f.containsRow(r)){r=f.start.row;break}a=f.end.row}u++}var a=r,f=this.session.getNextFoldLine(a),l=f?f.start.row:Infinity;for(;;){a>l&&(a=f.end.row+1,f=this.session.getNextFoldLine(a,f),l=f?f.start.row:Infinity);if(a>s)break;var c=o[u++];if(c){var h=[];this.$renderLine(h,a,!this.$useLineGroups(),a==l?f:!1),c.style.height=e.lineHeight*this.session.getRowLength(a)+"px",i.setInnerHtml(c,h.join(""))}a++}},this.scrollLines=function(e){var t=this.config;this.config=e;if(!t||t.lastRow<e.firstRow)return this.update(e);if(e.lastRow<t.firstRow)return this.update(e);var n=this.element;if(t.firstRow<e.firstRow)for(var r=this.session.getFoldedRowCount(t.firstRow,e.firstRow-1);r>0;r--)n.removeChild(n.firstChild);if(t.lastRow>e.lastRow)for(var r=this.session.getFoldedRowCount(e.lastRow+1,t.lastRow);r>0;r--)n.removeChild(n.lastChild);if(e.firstRow<t.firstRow){var i=this.$renderLinesFragment(e,e.firstRow,t.firstRow-1);n.firstChild?n.insertBefore(i,n.firstChild):n.appendChild(i)}if(e.lastRow>t.lastRow){var i=this.$renderLinesFragment(e,t.lastRow+1,e.lastRow);n.appendChild(i)}},this.$renderLinesFragment=function(e,t,n){var r=this.element.ownerDocument.createDocumentFragment(),s=t,o=this.session.getNextFoldLine(s),u=o?o.start.row:Infinity;for(;;){s>u&&(s=o.end.row+1,o=this.session.getNextFoldLine(s,o),u=o?o.start.row:Infinity);if(s>n)break;var a=i.createElement("div"),f=[];this.$renderLine(f,s,!1,s==u?o:!1),a.innerHTML=f.join("");if(this.$useLineGroups())a.className="ace_line_group",r.appendChild(a),a.style.height=e.lineHeight*this.session.getRowLength(s)+"px";else{var l=a.childNodes;while(l.length)r.appendChild(l[0])}s++}return r},this.update=function(e){this.config=e;var t=[],n=e.firstRow,r=e.lastRow,s=n,o=this.session.getNextFoldLine(s),u=o?o.start.row:Infinity;for(;;){s>u&&(s=o.end.row+1,o=this.session.getNextFoldLine(s,o),u=o?o.start.row:Infinity);if(s>r)break;this.$useLineGroups()&&t.push("<div class='ace_line_group' style='height:",e.lineHeight*this.session.getRowLength(s),"px'>"),this.$renderLine(t,s,!1,s==u?o:!1),this.$useLineGroups()&&t.push("</div>"),s++}this.element=i.setInnerHtml(this.element,t.join(""))},this.$textToken={text:!0,rparen:!0,lparen:!0},this.$renderToken=function(e,t,n,r){var i=this,o=/\t|&|<|( +)|([\x00-\x1f\x80-\xa0\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\u3000\uFEFF])|[\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3000-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]/g,u=function(e,n,r,o,u){if(n)return i.showInvisibles?"<span class='ace_invisible'>"+s.stringRepeat(i.SPACE_CHAR,e.length)+"</span>":s.stringRepeat(" ",e.length);if(e=="&")return"&#38;";if(e=="<")return"&#60;";if(e==" "){var a=i.session.getScreenTabSize(t+o);return t+=a-1,i.$tabStrings[a]}if(e==" "){var f=i.showInvisibles?"ace_cjk ace_invisible":"ace_cjk",l=i.showInvisibles?i.SPACE_CHAR:"";return t+=1,"<span class='"+f+"' style='width:"+i.config.characterWidth*2+"px'>"+l+"</span>"}return r?"<span class='ace_invisible ace_invalid'>"+i.SPACE_CHAR+"</span>":(t+=1,"<span class='ace_cjk' style='width:"+i.config.characterWidth*2+"px'>"+e+"</span>")},a=r.replace(o,u);if(!this.$textToken[n.type]){var f="ace_"+n.type.replace(/\./g," ace_"),l="";n.type=="fold"&&(l=" style='width:"+n.value.length*this.config.characterWidth+"px;' "),e.push("<span class='",f,"'",l,">",a,"</span>")}else e.push(a);return t+r.length},this.renderIndentGuide=function(e,t,n){var r=t.search(this.$indentGuideRe);return r<=0||r>=n?t:t[0]==" "?(r-=r%this.tabSize,e.push(s.stringRepeat(this.$tabStrings[" "],r/this.tabSize)),t.substr(r)):t[0]==" "?(e.push(s.stringRepeat(this.$tabStrings[" "],r)),t.substr(r)):t},this.$renderWrappedLine=function(e,t,n,r){var i=0,s=0,o=n[0],u=0;for(var a=0;a<t.length;a++){var f=t[a],l=f.value;if(a==0&&this.displayIndentGuides){i=l.length,l=this.renderIndentGuide(e,l,o);if(!l)continue;i-=l.length}if(i+l.length<o)u=this.$renderToken(e,u,f,l),i+=l.length;else{while(i+l.length>=o)u=this.$renderToken(e,u,f,l.substring(0,o-i)),l=l.substring(o-i),i=o,r||e.push("</div>","<div class='ace_line' style='height:",this.config.lineHeight,"px'>"),s++,u=0,o=n[s]||Number.MAX_VALUE;l.length!=0&&(i+=l.length,u=this.$renderToken(e,u,f,l))}}},this.$renderSimpleLine=function(e,t){var n=0,r=t[0],i=r.value;this.displayIndentGuides&&(i=this.renderIndentGuide(e,i)),i&&(n=this.$renderToken(e,n,r,i));for(var s=1;s<t.length;s++)r=t[s],i=r.value,n=this.$renderToken(e,n,r,i)},this.$renderLine=function(e,t,n,r){!r&&r!=0&&(r=this.session.getFoldLine(t));if(r)var i=this.$getFoldLineTokens(t,r);else var i=this.session.getTokens(t);n||e.push("<div class='ace_line' style='height:",this.config.lineHeight*(this.$useLineGroups()?1:this.session.getRowLength(t)),"px'>");if(i.length){var s=this.session.getRowSplitData(t);s&&s.length?this.$renderWrappedLine(e,i,s,n):this.$renderSimpleLine(e,i)}this.showInvisibles&&(r&&(t=r.end.row),e.push("<span class='ace_invisible'>",t==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,"</span>")),n||e.push("</div>")},this.$getFoldLineTokens=function(e,t){function i(e,t,n){var i=0,s=0;while(s+e[i].value.length<t){s+=e[i].value.length,i++;if(i==e.length)return}if(s!=t){var o=e[i].value.substring(t-s);o.length>n-t&&(o=o.substring(0,n-t)),r.push({type:e[i].type,value:o}),s=t+o.length,i+=1}while(s<n&&i<e.length){var o=e[i].value;o.length+s>n?r.push({type:e[i].type,value:o.substring(0,n-s)}):r.push(e[i]),s+=o.length,i+=1}}var n=this.session,r=[],s=n.getTokens(e);return t.walk(function(e,t,o,u,a){e!=null?r.push({type:"fold",value:e}):(a&&(s=n.getTokens(t)),s.length&&i(s,u,o))},t.end.row,this.session.getLine(t.end.row).length),r},this.$useLineGroups=function(){return this.session.getUseWrapMode()},this.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$measureNode&&this.$measureNode.parentNode.removeChild(this.$measureNode),delete this.$measureNode}}).call(a.prototype),t.Text=a}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,t,n){var r=e("../lib/dom"),i=function(e){this.element=r.createElement("div"),this.element.className="ace_layer ace_cursor-layer",e.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),r.addCssClass(this.element,"ace_hidden-cursors")};(function(){this.$padding=0,this.setPadding=function(e){this.$padding=e},this.setSession=function(e){this.session=e},this.setBlinking=function(e){e!=this.isBlinking&&(this.isBlinking=e,this.restartTimer())},this.setBlinkInterval=function(e){e!=this.blinkInterval&&(this.blinkInterval=e,this.restartTimer())},this.setSmoothBlinking=function(e){e!=this.smoothBlinking&&(this.smoothBlinking=e,e?r.addCssClass(this.element,"ace_smooth-blinking"):r.removeCssClass(this.element,"ace_smooth-blinking"),this.restartTimer())},this.addCursor=function(){var e=r.createElement("div");return e.className="ace_cursor",this.element.appendChild(e),this.cursors.push(e),e},this.removeCursor=function(){if(this.cursors.length>1){var e=this.cursors.pop();return e.parentNode.removeChild(e),e}},this.hideCursor=function(){this.isVisible=!1,r.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.showCursor=function(){this.isVisible=!0,r.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},this.restartTimer=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.smoothBlinking&&r.removeCssClass(this.element,"ace_smooth-blinking");for(var e=this.cursors.length;e--;)this.cursors[e].style.opacity="";if(!this.isBlinking||!this.blinkInterval||!this.isVisible)return;this.smoothBlinking&&setTimeout(function(){r.addCssClass(this.element,"ace_smooth-blinking")}.bind(this));var t=function(){this.timeoutId=setTimeout(function(){for(var e=this.cursors.length;e--;)this.cursors[e].style.opacity=0}.bind(this),.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){for(var e=this.cursors.length;e--;)this.cursors[e].style.opacity="";t()}.bind(this),this.blinkInterval),t()},this.getPixelPosition=function(e,t){if(!this.config||!this.session)return{left:0,top:0};e||(e=this.session.selection.getCursor());var n=this.session.documentToScreenPosition(e),r=this.$padding+n.column*this.config.characterWidth,i=(n.row-(t?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:r,top:i}},this.update=function(e){this.config=e;var t=this.session.$selectionMarkers,n=0,r=0;if(t===undefined||t.length===0)t=[{cursor:null}];for(var n=0,i=t.length;n<i;n++){var s=this.getPixelPosition(t[n].cursor,!0);if((s.top>e.height+e.offset||s.top<-e.offset)&&n>1)continue;var o=(this.cursors[r++]||this.addCursor()).style;o.left=s.left+"px",o.top=s.top+"px",o.width=e.characterWidth+"px",o.height=e.lineHeight+"px"}while(this.cursors.length>r)this.removeCursor();var u=this.session.getOverwrite();this.$setOverwrite(u),this.$pixelPos=s,this.restartTimer()},this.$setOverwrite=function(e){e!=this.overwrite&&(this.overwrite=e,e?r.addCssClass(this.element,"ace_overwrite-cursors"):r.removeCssClass(this.element,"ace_overwrite-cursors"))},this.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)}}).call(i.prototype),t.Cursor=i}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/dom"),s=e("./lib/event"),o=e("./lib/event_emitter").EventEmitter,u=function(e){this.element=i.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+this.classSuffix,this.inner=i.createElement("div"),this.inner.className="ace_scrollbar-inner",this.element.appendChild(this.inner),e.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,s.addListener(this.element,"scroll",this.onScroll.bind(this)),s.addListener(this.element,"mousedown",s.preventDefault)};(function(){r.implement(this,o),this.setVisible=function(e){this.element.style.display=e?"":"none",this.isVisible=e}}).call(u.prototype);var a=function(e,t){u.call(this,e),this.scrollTop=0,t.$scrollbarWidth=this.width=i.scrollbarWidth(e.ownerDocument),this.inner.style.width=this.element.style.width=(this.width||15)+5+"px"};r.inherits(a,u),function(){this.classSuffix="-v",this.onScroll=function(){this.skipEvent||(this.scrollTop=this.element.scrollTop,this._emit("scroll",{data:this.scrollTop})),this.skipEvent=!1},this.getWidth=function(){return this.isVisible?this.width:0},this.setHeight=function(e){this.element.style.height=e+"px"},this.setInnerHeight=function(e){this.inner.style.height=e+"px"},this.setScrollHeight=function(e){this.inner.style.height=e+"px"},this.setScrollTop=function(e){this.scrollTop!=e&&(this.skipEvent=!0,this.scrollTop=this.element.scrollTop=e)}}.call(a.prototype);var f=function(e,t){u.call(this,e),this.scrollLeft=0,this.height=t.$scrollbarWidth,this.inner.style.height=this.element.style.height=(this.height||15)+5+"px"};r.inherits(f,u),function(){this.classSuffix="-h",this.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},this.getHeight=function(){return this.isVisible?this.height:0},this.setWidth=function(e){this.element.style.width=e+"px"},this.setInnerWidth=function(e){this.inner.style.width=e+"px"},this.setScrollWidth=function(e){this.inner.style.width=e+"px"},this.setScrollLeft=function(e){this.scrollLeft!=e&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=e)}}.call(f.prototype),t.ScrollBar=a,t.ScrollBarV=a,t.ScrollBarH=f,t.VScrollBar=a,t.HScrollBar=f}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,t,n){var r=e("./lib/event"),i=function(e,t){this.onRender=e,this.pending=!1,this.changes=0,this.window=t||window};(function(){this.schedule=function(e){this.changes=this.changes|e;if(!this.pending&&this.changes){this.pending=!0;var t=this;r.nextFrame(function(){t.pending=!1;var e;while(e=t.changes)t.changes=0,t.onRender(e)},this.window)}}}).call(i.prototype),t.RenderLoop=i}),ace.define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(e,t,n){function h(e,t,n){return c.$options.wrap=!0,c.$options.needle=t,c.$options.backwards=n==-1,c.find(e)}function v(e,t){return e.row==t.row&&e.column==t.column}function m(e){if(e.$multiselectOnSessionChange)return;e.$onAddRange=e.$onAddRange.bind(e),e.$onRemoveRange=e.$onRemoveRange.bind(e),e.$onMultiSelect=e.$onMultiSelect.bind(e),e.$onSingleSelect=e.$onSingleSelect.bind(e),e.$multiselectOnSessionChange=t.onSessionChange.bind(e),e.$multiselectOnSessionChange(e),e.on("changeSession",e.$multiselectOnSessionChange),e.on("mousedown",o),e.commands.addCommands(f.defaultCommands),g(e)}function g(e){function r(t){n&&(e.renderer.setMouseCursor(""),n=!1)}var t=e.textInput.getElement(),n=!1;u.addListener(t,"keydown",function(t){t.keyCode==18&&!(t.ctrlKey||t.shiftKey||t.metaKey)?n||(e.renderer.setMouseCursor("crosshair"),n=!0):n&&r()}),u.addListener(t,"keyup",r),u.addListener(t,"blur",r)}var r=e("./range_list").RangeList,i=e("./range").Range,s=e("./selection").Selection,o=e("./mouse/multi_select_handler").onMouseDown,u=e("./lib/event"),a=e("./lib/lang"),f=e("./commands/multi_select_commands");t.commands=f.defaultCommands.concat(f.multiSelectCommands);var l=e("./search").Search,c=new l,p=e("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(p.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(e,t){if(!e)return;if(!this.inMultiSelectMode&&this.rangeCount==0){var n=this.toOrientedRange();this.rangeList.add(n),this.rangeList.add(e);if(this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),t||this.fromOrientedRange(e);this.rangeList.removeAll(),this.rangeList.add(n),this.$onAddRange(n)}e.cursor||(e.cursor=e.end);var r=this.rangeList.add(e);return this.$onAddRange(e),r.length&&this.$onRemoveRange(r),this.rangeCount>1&&!this.inMultiSelectMode&&(this._emit("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),t||this.fromOrientedRange(e)},this.toSingleRange=function(e){e=e||this.ranges[0];var t=this.rangeList.removeAll();t.length&&this.$onRemoveRange(t),e&&this.fromOrientedRange(e)},this.substractPoint=function(e){var t=this.rangeList.substractPoint(e);if(t)return this.$onRemoveRange(t),t[0]},this.mergeOverlappingRanges=function(){var e=this.rangeList.merge();e.length?this.$onRemoveRange(e):this.ranges[0]&&this.fromOrientedRange(this.ranges[0])},this.$onAddRange=function(e){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(e),this._emit("addRange",{range:e})},this.$onRemoveRange=function(e){this.rangeCount=this.rangeList.ranges.length;if(this.rangeCount==1&&this.inMultiSelectMode){var t=this.rangeList.ranges.pop();e.push(t),this.rangeCount=0}for(var n=e.length;n--;){var r=this.ranges.indexOf(e[n]);this.ranges.splice(r,1)}this._emit("removeRange",{ranges:e}),this.rangeCount==0&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._emit("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),t=t||this.ranges[0],t&&!t.isEqual(this.getRange())&&this.fromOrientedRange(t)},this.$initRangeList=function(){if(this.rangeList)return;this.rangeList=new r,this.ranges=[],this.rangeCount=0},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],n=i.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(n,t.cursor==t.start)}else{var n=this.getRange(),r=this.isBackwards(),s=n.start.row,o=n.end.row;if(s==o){if(r)var u=n.end,a=n.start;else var u=n.start,a=n.end;this.addRange(i.fromPoints(a,a)),this.addRange(i.fromPoints(u,u));return}var f=[],l=this.getLineRange(s,!0);l.start.column=n.start.column,f.push(l);for(var c=s+1;c<o;c++)f.push(this.getLineRange(c,!0));l=this.getLineRange(o,!0),l.end.column=n.end.column,f.push(l),f.forEach(this.addRange,this)}},this.toggleBlockSelection=function(){if(this.rangeCount>1){var e=this.rangeList.ranges,t=e[e.length-1],n=i.fromPoints(e[0].start,t.end);this.toSingleRange(),this.setSelectionRange(n,t.cursor==t.start)}else{var r=this.session.documentToScreenPosition(this.selectionLead),s=this.session.documentToScreenPosition(this.selectionAnchor),o=this.rectangularRangeBlock(r,s);o.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(e,t,n){var r=[],s=e.column<t.column;if(s)var o=e.column,u=t.column;else var o=t.column,u=e.column;var a=e.row<t.row;if(a)var f=e.row,l=t.row;else var f=t.row,l=e.row;o<0&&(o=0),f<0&&(f=0),f==l&&(n=!0);for(var c=f;c<=l;c++){var h=i.fromPoints(this.session.screenToDocumentPosition(c,o),this.session.screenToDocumentPosition(c,u));if(h.isEmpty()){if(p&&v(h.end,p))break;var p=h.end}h.cursor=s?h.start:h.end,r.push(h)}a&&r.reverse();if(!n){var d=r.length-1;while(r[d].isEmpty()&&d>0)d--;if(d>0){var m=0;while(r[m].isEmpty())m++}for(var g=d;g>=m;g--)r[g].isEmpty()&&r.splice(g,1)}return r}}.call(s.prototype);var d=e("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(e){e.cursor||(e.cursor=e.end);var t=this.getSelectionStyle();return e.marker=this.session.addMarker(e,"ace_selection",t),this.session.$selectionMarkers.push(e),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,e},this.removeSelectionMarker=function(e){if(!e.marker)return;this.session.removeMarker(e.marker);var t=this.session.$selectionMarkers.indexOf(e);t!=-1&&this.session.$selectionMarkers.splice(t,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length},this.removeSelectionMarkers=function(e){var t=this.session.$selectionMarkers;for(var n=e.length;n--;){var r=e[n];if(!r.marker)continue;this.session.removeMarker(r.marker);var i=t.indexOf(r);i!=-1&&t.splice(i,1)}this.session.selectionMarkerCount=t.length},this.$onAddRange=function(e){this.addSelectionMarker(e.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(e){this.removeSelectionMarkers(e.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(e){if(this.inMultiSelectMode)return;this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(f.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onSingleSelect=function(e){if(this.session.multiSelect.inVirtualMode)return;this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(f.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelectExec=function(e){var t=e.command,n=e.editor;if(!n.multiSelect)return;if(!t.multiSelectAction){var r=t.exec(n,e.args||{});n.multiSelect.addRange(n.multiSelect.toOrientedRange()),n.multiSelect.mergeOverlappingRanges()}else t.multiSelectAction=="forEach"?r=n.forEachSelection(t,e.args):t.multiSelectAction=="forEachLine"?r=n.forEachSelection(t,e.args,!0):t.multiSelectAction=="single"?(n.exitMultiSelectMode(),r=t.exec(n,e.args||{})):r=t.multiSelectAction(n,e.args||{});return r},this.forEachSelection=function(e,t,n){if(this.inVirtualSelectionMode)return;var r=this.session,i=this.selection,o=i.rangeList,u,a=i._eventRegistry;i._eventRegistry={};var f=new s(r);this.inVirtualSelectionMode=!0;for(var l=o.ranges.length;l--;){if(n)while(l>0&&o.ranges[l].start.row==o.ranges[l-1].end.row)l--;f.fromOrientedRange(o.ranges[l]),this.selection=r.selection=f;var c=e.exec(this,t||{});!u==undefined&&(u=c),f.toOrientedRange(o.ranges[l])}f.detach(),this.selection=r.selection=i,this.inVirtualSelectionMode=!1,i._eventRegistry=a,i.mergeOverlappingRanges();var h=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),h&&h.from==h.to&&this.renderer.animateScrolling(h.from),u},this.exitMultiSelectMode=function(){if(!this.inMultiSelectMode||this.inVirtualSelectionMode)return;this.multiSelect.toSingleRange()},this.getSelectedText=function(){var e="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var t=this.multiSelect.rangeList.ranges,n=[];for(var r=0;r<t.length;r++)n.push(this.session.getTextRange(t[r]));var i=this.session.getDocument().getNewLineCharacter();e=n.join(i),e.length==(n.length-1)*i.length&&(e="")}else this.selection.isEmpty()||(e=this.session.getTextRange(this.getSelectionRange()));return e},this.onPaste=function(e){if(this.$readOnly)return;this._signal("paste",e);if(!this.inMultiSelectMode||this.inVirtualSelectionMode)return this.insert(e);var t=e.split(/\r\n|\r|\n/),n=this.selection.rangeList.ranges;if(t.length>n.length||t.length<2||!t[1])return this.commands.exec("insertstring",this,e);for(var r=n.length;r--;){var i=n[r];i.isEmpty()||this.session.remove(i),this.session.insert(i.start,t[r])}},this.findAll=function(e,t,n){t=t||{},t.needle=e||t.needle,this.$search.set(t);var r=this.$search.findAll(this.session);if(!r.length)return 0;this.$blockScrolling+=1;var i=this.multiSelect;n||i.toSingleRange(r[0]);for(var s=r.length;s--;)i.addRange(r[s],!0);return this.$blockScrolling-=1,r.length},this.selectMoreLines=function(e,t){var n=this.selection.toOrientedRange(),r=n.cursor==n.end,s=this.session.documentToScreenPosition(n.cursor);this.selection.$desiredColumn&&(s.column=this.selection.$desiredColumn);var o=this.session.screenToDocumentPosition(s.row+e,s.column);if(!n.isEmpty())var u=this.session.documentToScreenPosition(r?n.end:n.start),a=this.session.screenToDocumentPosition(u.row+e,u.column);else var a=o;if(r){var f=i.fromPoints(o,a);f.cursor=f.start}else{var f=i.fromPoints(a,o);f.cursor=f.end}f.desiredColumn=s.column;if(!this.selection.inMultiSelectMode)this.selection.addRange(n);else if(t)var l=n.cursor;this.selection.addRange(f),l&&this.selection.substractPoint(l)},this.transposeSelections=function(e){var t=this.session,n=t.multiSelect,r=n.ranges;for(var i=r.length;i--;){var s=r[i];if(s.isEmpty()){var o=t.getWordRange(s.start.row,s.start.column);s.start.row=o.start.row,s.start.column=o.start.column,s.end.row=o.end.row,s.end.column=o.end.column}}n.mergeOverlappingRanges();var u=[];for(var i=r.length;i--;){var s=r[i];u.unshift(t.getTextRange(s))}e<0?u.unshift(u.pop()):u.push(u.shift());for(var i=r.length;i--;){var s=r[i],o=s.clone();t.replace(s,u[i]),s.start.row=o.start.row,s.start.column=o.start.column}},this.selectMore=function(e,t){var n=this.session,r=n.multiSelect,i=r.toOrientedRange();i.isEmpty()&&(i=n.getWordRange(i.start.row,i.start.column),i.cursor=e==-1?i.start:i.end,this.multiSelect.addRange(i));var s=n.getTextRange(i),o=h(n,s,e);o&&(o.cursor=e==-1?o.start:o.end,this.$blockScrolling+=1,this.session.unfold(o),this.multiSelect.addRange(o),this.$blockScrolling-=1,this.renderer.scrollCursorIntoView(null,.5)),t&&this.multiSelect.substractPoint(i.cursor)},this.alignCursors=function(){var e=this.session,t=e.multiSelect,n=t.ranges;if(!n.length){var r=this.selection.getRange(),s=r.start.row,o=r.end.row,u=s==o;if(u){var f=this.session.getLength(),l;do l=this.session.getLine(o);while(/[=:]/.test(l)&&++o<f);do l=this.session.getLine(s);while(/[=:]/.test(l)&&--s>0);s<0&&(s=0),o>=f&&(o=f-1)}var c=this.session.doc.removeLines(s,o);c=this.$reAlignText(c,u),this.session.doc.insert({row:s,column:0},c.join("\n")+"\n"),u||(r.start.column=0,r.end.column=c[c.length-1].length),this.selection.setRange(r)}else{var h=-1,p=n.filter(function(e){if(e.cursor.row==h)return!0;h=e.cursor.row});t.$onRemoveRange(p);var d=0,v=Infinity,m=n.map(function(t){var n=t.cursor,r=e.getLine(n.row),i=r.substr(n.column).search(/\S/g);return i==-1&&(i=0),n.column>d&&(d=n.column),i<v&&(v=i),i});n.forEach(function(t,n){var r=t.cursor,s=d-r.column,o=m[n]-v;s>o?e.insert(r,a.stringRepeat(" ",s-o)):e.remove(new i(r.row,r.column,r.row,r.column-s+o)),t.start.column=t.end.column=d,t.start.row=t.end.row=r.row,t.cursor=t.end}),t.fromOrientedRange(n[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(e,t){function u(e){return a.stringRepeat(" ",e)}function f(e){return e[2]?u(i)+e[2]+u(s-e[2].length+o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function l(e){return e[2]?u(i+s-e[2].length)+e[2]+u(o," ")+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}function c(e){return e[2]?u(i)+e[2]+u(o)+e[4].replace(/^([=:])\s+/,"$1 "):e[0]}var n=!0,r=!0,i,s,o;return e.map(function(e){var t=e.match(/(\s*)(.*?)(\s*)([=:].*)/);return t?i==null?(i=t[1].length,s=t[2].length,o=t[3].length,t):(i+s+o!=t[1].length+t[2].length+t[3].length&&(r=!1),i!=t[1].length&&(n=!1),i>t[1].length&&(i=t[1].length),s<t[2].length&&(s=t[2].length),o>t[3].length&&(o=t[3].length),t):[e]}).map(t?f:n?r?l:f:c)}}).call(d.prototype),t.onSessionChange=function(e){var t=e.session;t.multiSelect||(t.$selectionMarkers=[],t.selection.$initRangeList(),t.multiSelect=t.selection),this.multiSelect=t.multiSelect;var n=e.oldSession;n&&(n.multiSelect.removeEventListener("addRange",this.$onAddRange),n.multiSelect.removeEventListener("removeRange",this.$onRemoveRange),n.multiSelect.removeEventListener("multiSelect",this.$onMultiSelect),n.multiSelect.removeEventListener("singleSelect",this.$onSingleSelect)),t.multiSelect.on("addRange",this.$onAddRange),t.multiSelect.on("removeRange",this.$onRemoveRange),t.multiSelect.on("multiSelect",this.$onMultiSelect),t.multiSelect.on("singleSelect",this.$onSingleSelect),this.inMultiSelectMode!=t.selection.inMultiSelectMode&&(t.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},t.MultiSelect=m,e("./config").defineOptions(d.prototype,"editor",{enableMultiselect:{set:function(e){m(this),e?(this.on("changeSession",this.$multiselectOnSessionChange),this.on("mousedown",o)):(this.off("changeSession",this.$multiselectOnSessionChange),this.off("mousedown",o))},value:!0}})}),ace.define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event"],function(e,t,n){function i(e,t){return e.row==t.row&&e.column==t.column}function s(e){var t=e.domEvent,n=t.altKey,s=t.shiftKey,o=e.getAccelKey(),u=e.getButton();if(e.editor.inMultiSelectMode&&u==2){e.editor.textInput.onContextMenu(e.domEvent);return}if(!o&&!n){u==0&&e.editor.inMultiSelectMode&&e.editor.exitMultiSelectMode();return}var a=e.editor,f=a.selection,l=a.inMultiSelectMode,c=e.getDocumentPosition(),h=f.getCursor(),p=e.inSelection()||f.isEmpty()&&i(c,h),d=e.x,v=e.y,m=function(e){d=e.clientX,v=e.clientY},g=function(){var e=a.renderer.pixelToScreenCoordinates(d,v),t=y.screenToDocumentPosition(e.row,e.column);if(i(w,e)&&i(t,f.selectionLead))return;w=e,a.selection.moveCursorToPosition(t),a.selection.clearSelection(),a.renderer.scrollCursorIntoView(),a.removeSelectionMarkers(x),x=f.rectangularRangeBlock(w,b),x.forEach(a.addSelectionMarker,a),a.updateSelectionMarkers()},y=a.session,b=a.renderer.pixelToScreenCoordinates(d,v),w=b;if(o&&!s&&!n&&u==0){if(!l&&p)return;if(!l){var E=f.toOrientedRange();a.addSelectionMarker(E)}var S=f.rangeList.rangeAtPoint(c);a.$blockScrolling++,a.once("mouseup",function(){var e=f.toOrientedRange();S&&e.isEmpty()&&i(S.cursor,e.cursor)?f.substractPoint(e.cursor):(E&&(a.removeSelectionMarker(E),f.addRange(E)),f.addRange(e)),a.$blockScrolling--})}else if(n&&u==0){e.stop(),l&&!o?f.toSingleRange():!l&&o&&f.addRange();var x=[];s?(b=y.documentToScreenPosition(f.lead),g()):(f.moveCursorToPosition(c),f.clearSelection());var T=function(e){clearInterval(C),a.removeSelectionMarkers(x);for(var t=0;t<x.length;t++)f.addRange(x[t])},N=g;r.capture(a.container,m,T);var C=setInterval(function(){N()},20);return e.preventDefault()}}var r=e("../lib/event");t.onMouseDown=s}),ace.define("ace/commands/multi_select_commands",["require","exports","module","ace/keyboard/hash_handler"],function(e,t,n){t.defaultCommands=[{name:"addCursorAbove",exec:function(e){e.selectMoreLines(-1)},bindKey:{win:"Ctrl-Alt-Up",mac:"Ctrl-Alt-Up"},readonly:!0},{name:"addCursorBelow",exec:function(e){e.selectMoreLines(1)},bindKey:{win:"Ctrl-Alt-Down",mac:"Ctrl-Alt-Down"},readonly:!0},{name:"addCursorAboveSkipCurrent",exec:function(e){e.selectMoreLines(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Up",mac:"Ctrl-Alt-Shift-Up"},readonly:!0},{name:"addCursorBelowSkipCurrent",exec:function(e){e.selectMoreLines(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Down",mac:"Ctrl-Alt-Shift-Down"},readonly:!0},{name:"selectMoreBefore",exec:function(e){e.selectMore(-1)},bindKey:{win:"Ctrl-Alt-Left",mac:"Ctrl-Alt-Left"},readonly:!0},{name:"selectMoreAfter",exec:function(e){e.selectMore(1)},bindKey:{win:"Ctrl-Alt-Right",mac:"Ctrl-Alt-Right"},readonly:!0},{name:"selectNextBefore",exec:function(e){e.selectMore(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Left",mac:"Ctrl-Alt-Shift-Left"},readonly:!0},{name:"selectNextAfter",exec:function(e){e.selectMore(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Right",mac:"Ctrl-Alt-Shift-Right"},readonly:!0},{name:"splitIntoLines",exec:function(e){e.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readonly:!0},{name:"alignCursors",exec:function(e){e.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"}}],t.multiSelectCommands=[{name:"singleSelection",bindKey:"esc",exec:function(e){e.exitMultiSelectMode()},readonly:!0,isAvailable:function(e){return e&&e.inMultiSelectMode}}];var r=e("../keyboard/hash_handler").HashHandler;t.keyboardHandler=new r(t.multiSelectCommands)}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/config"],function(e,t,n){var r=e("../lib/oop"),i=e("../lib/event_emitter").EventEmitter,s=e("../config"),o=function(t,n,r){this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl);var i;if(s.get("packaged")||!e.toUrl)i=s.moduleUrl(n,"worker");else{var o=this.$normalizePath;i=o(e.toUrl("ace/worker/worker.js",null,"_"));var u={};t.forEach(function(t){u[t]=o(e.toUrl(t,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}this.$worker=new Worker(i),this.$worker.postMessage({init:!0,tlns:u,module:n,classname:r}),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){r.implement(this,i),this.onMessage=function(e){var t=e.data;switch(t.type){case"log":window.console&&console.log&&console.log.apply(console,t.data);break;case"event":this._emit(t.name,{data:t.data});break;case"call":var n=this.callbacks[t.id];n&&(n(t.data),delete this.callbacks[t.id])}},this.$normalizePath=function(e){return location.host?(e=e.replace(/^[a-z]+:\/\/[^\/]+/,""),e=location.protocol+"//"+location.host+(e.charAt(0)=="/"?"":location.pathname.replace(/\/[^\/]*$/,""))+"/"+e.replace(/^[\/]+/,""),e):e},this.terminate=function(){this._emit("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker=null,this.$doc.removeEventListener("change",this.changeListener),this.$doc=null},this.send=function(e,t){this.$worker.postMessage({command:e,args:t})},this.call=function(e,t,n){if(n){var r=this.callbackId++;this.callbacks[r]=n,t.push(r)}this.send(e,t)},this.emit=function(e,t){try{this.$worker.postMessage({event:e,data:{data:t.data}})}catch(n){}},this.attachToDocument=function(e){this.$doc&&this.terminate(),this.$doc=e,this.call("setValue",[e.getValue()]),e.on("change",this.changeListener)},this.changeListener=function(e){this.deltaQueue?this.deltaQueue.push(e.data):(this.deltaQueue=[e.data],setTimeout(this.$sendDeltaQueue,0))},this.$sendDeltaQueue=function(){var e=this.deltaQueue;if(!e)return;this.deltaQueue=null,e.length>20&&e.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:e})}}).call(o.prototype);var u=function(e,t,n){this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.callbackId=1,this.callbacks={},this.messageBuffer=[];var r=null,o=Object.create(i),u=this;this.$worker={},this.$worker.terminate=function(){},this.$worker.postMessage=function(e){u.messageBuffer.push(e),r&&setTimeout(a)};var a=function(){var e=u.messageBuffer.shift();e.command?r[e.command].apply(r,e.args):e.event&&o._emit(e.event,e.data)};o.postMessage=function(e){u.onMessage({data:e})},o.callback=function(e,t){this.postMessage({type:"call",id:t,data:e})},o.emit=function(e,t){this.postMessage({type:"event",name:e,data:t})},s.loadModule(["worker",t],function(e){r=new e[n](o);while(u.messageBuffer.length)a()})};u.prototype=o.prototype,t.UIWorkerClient=u,t.WorkerClient=o}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,t,n){var r=e("./range").Range,i=e("./lib/event_emitter").EventEmitter,s=e("./lib/oop"),o=function(e,t,n,r,i,s){var o=this;this.length=t,this.session=e,this.doc=e.getDocument(),this.mainClass=i,this.othersClass=s,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate),this.$others=r,this.$onCursorChange=function(){setTimeout(function(){o.onCursorChange()})},this.$pos=n;var u=e.getUndoManager().$undoStack||e.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=u.length,this.setup(),e.selection.on("changeCursor",this.$onCursorChange)};(function(){s.implement(this,i),this.setup=function(){var e=this,t=this.doc,n=this.session,i=this.$pos;this.pos=t.createAnchor(i.row,i.column),this.markerId=n.addMarker(new r(i.row,i.column,i.row,i.column+this.length),this.mainClass,null,!1),this.pos.on("change",function(t){n.removeMarker(e.markerId),e.markerId=n.addMarker(new r(t.value.row,t.value.column,t.value.row,t.value.column+e.length),e.mainClass,null,!1)}),this.others=[],this.$others.forEach(function(n){var r=t.createAnchor(n.row,n.column);e.others.push(r)}),n.setUndoSelect(!1)},this.showOtherMarkers=function(){if(this.othersActive)return;var e=this.session,t=this;this.othersActive=!0,this.others.forEach(function(n){n.markerId=e.addMarker(new r(n.row,n.column,n.row,n.column+t.length),t.othersClass,null,!1),n.on("change",function(i){e.removeMarker(n.markerId),n.markerId=e.addMarker(new r(i.value.row,i.value.column,i.value.row,i.value.column+t.length),t.othersClass,null,!1)})})},this.hideOtherMarkers=function(){if(!this.othersActive)return;this.othersActive=!1;for(var e=0;e<this.others.length;e++)this.session.removeMarker(this.others[e].markerId)},this.onUpdate=function(e){var t=e.data,n=t.range;if(n.start.row!==n.end.row)return;if(n.start.row!==this.pos.row)return;if(this.$updating)return;this.$updating=!0;var i=t.action==="insertText"?n.end.column-n.start.column:n.start.column-n.end.column;if(n.start.column>=this.pos.column&&n.start.column<=this.pos.column+this.length+1){var s=n.start.column-this.pos.column;this.length+=i;if(!this.session.$fromUndo){if(t.action==="insertText")for(var o=this.others.length-1;o>=0;o--){var u=this.others[o],a={row:u.row,column:u.column+s};u.row===n.start.row&&n.start.column<u.column&&(a.column+=i),this.doc.insert(a,t.text)}else if(t.action==="removeText")for(var o=this.others.length-1;o>=0;o--){var u=this.others[o],a={row:u.row,column:u.column+s};u.row===n.start.row&&n.start.column<u.column&&(a.column+=i),this.doc.remove(new r(a.row,a.column,a.row,a.column-i))}n.start.column===this.pos.column&&t.action==="insertText"?setTimeout(function(){this.pos.setPosition(this.pos.row,this.pos.column-i);for(var e=0;e<this.others.length;e++){var t=this.others[e],r={row:t.row,column:t.column-i};t.row===n.start.row&&n.start.column<t.column&&(r.column+=i),t.setPosition(r.row,r.column)}}.bind(this),0):n.start.column===this.pos.column&&t.action==="removeText"&&setTimeout(function(){for(var e=0;e<this.others.length;e++){var t=this.others[e];t.row===n.start.row&&n.start.column<t.column&&t.setPosition(t.row,t.column-i)}}.bind(this),0)}this.pos._emit("change",{value:this.pos});for(var o=0;o<this.others.length;o++)this.others[o]._emit("change",{value:this.others[o]})}this.$updating=!1},this.onCursorChange=function(e){if(this.$updating)return;var t=this.session.selection.getCursor();t.row===this.pos.row&&t.column>=this.pos.column&&t.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",e)):(this.hideOtherMarkers(),this._emit("cursorLeave",e))},this.detach=function(){this.session.removeMarker(this.markerId),this.hideOtherMarkers(),this.doc.removeEventListener("change",this.$onUpdate),this.session.selection.removeEventListener("changeCursor",this.$onCursorChange),this.pos.detach();for(var e=0;e<this.others.length;e++)this.others[e].detach();this.session.setUndoSelect(!0)},this.cancel=function(){if(this.$undoStackDepth===-1)throw Error("Canceling placeholders only supported with undo manager attached to session.");var e=this.session.getUndoManager(),t=(e.$undoStack||e.$undostack).length-this.$undoStackDepth;for(var n=0;n<t;n++)e.undo(!0)}}).call(o.prototype),t.PlaceHolder=o}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,t,n){var r=e("../../range").Range,i=t.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);return this.foldingStartMarker.test(r)?"start":t=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(r)?"end":""},this.getFoldWidgetRange=function(e,t,n){return null},this.indentationBlock=function(e,t,n){var i=/\S/,s=e.getLine(t),o=s.search(i);if(o==-1)return;var u=n||s.length,a=e.getLength(),f=t,l=t;while(++t<a){var c=e.getLine(t).search(i);if(c==-1)continue;if(c<=o)break;l=t}if(l>f){var h=e.getLine(l).length;return new r(f,u,l,h)}},this.openingBracketBlock=function(e,t,n,i,s){var o={row:n,column:i+1},u=e.$findClosingBracket(t,o,s);if(!u)return;var a=e.foldWidgets[u.row];return a==null&&(a=e.getFoldWidget(u.row)),a=="start"&&u.row>o.row&&(u.row--,u.column=e.getLine(u.row).length),r.fromPoints(o,u)},this.closingBracketBlock=function(e,t,n,i,s){var o={row:n,column:i},u=e.$findOpeningBracket(t,o);if(!u)return;return u.column++,o.column--,r.fromPoints(u,o)}}).call(i.prototype)}),ace.define("ace/theme/textmate",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-tm",t.cssText='.ace-tm .ace_gutter {background: #f0f0f0;color: #333;}.ace-tm .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-tm .ace_fold {background-color: #6B72E6;}.ace-tm {background-color: #FFFFFF;}.ace-tm .ace_cursor {color: black;}.ace-tm .ace_invisible {color: rgb(191, 191, 191);}.ace-tm .ace_storage,.ace-tm .ace_keyword {color: blue;}.ace-tm .ace_constant {color: rgb(197, 6, 11);}.ace-tm .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-tm .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-tm .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-tm .ace_invalid {background-color: rgba(255, 0, 0, 0.1);color: red;}.ace-tm .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-tm .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class {color: rgb(109, 121, 222);}.ace-tm .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-tm .ace_string {color: rgb(3, 106, 7);}.ace-tm .ace_comment {color: rgb(76, 136, 107);}.ace-tm .ace_comment.ace_doc {color: rgb(0, 102, 255);}.ace-tm .ace_comment.ace_doc.ace_tag {color: rgb(128, 159, 191);}.ace-tm .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-tm .ace_variable {color: rgb(49, 132, 149);}.ace-tm .ace_xml-pe {color: rgb(104, 104, 91);}.ace-tm .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-tm .ace_heading {color: rgb(12, 7, 255);}.ace-tm .ace_list {color:rgb(185, 6, 144);}.ace-tm .ace_meta.ace_tag {color:rgb(0, 22, 142);}.ace-tm .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-tm .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-tm.ace_multiselect .ace_selection.ace_start {box-shadow: 0 0 3px 0px white;border-radius: 2px;}.ace-tm .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-tm .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-tm .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-tm .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-tm .ace_gutter-active-line {background-color : #dcdcdc;}.ace-tm .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-tm .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range"],function(e,t,n){function o(e,t,n){var r=0,i=e.length-1;while(r<=i){var s=r+i>>1,o=n(t,e[s]);if(o>0)r=s+1;else{if(!(o<0))return s;i=s-1}}return-(r+1)}function u(e,t,n){var r=e.getAnnotations().sort(s.comparePoints);if(!r.length)return;var i=o(r,{row:t,column:-1},s.comparePoints);i<0&&(i=-i-1),i>=r.length-1?i=n>0?0:r.length-1:i===0&&n<0&&(i=r.length-1);var u=r[i];if(!u||!n)return;if(u.row===t){do u=r[i+=n];while(u&&u.row===t);if(!u)return r.slice()}var a=[];t=u.row;do a[n<0?"unshift":"push"](u),u=r[i+=n];while(u&&u.row==t);return a.length&&a}var r=e("ace/line_widgets").LineWidgets,i=e("ace/lib/dom"),s=e("ace/range").Range;t.showErrorMarker=function(e,t){var n=e.session;n.widgetManager||(n.widgetManager=new r(n),n.widgetManager.attach(e));var s=e.getCursorPosition(),o=s.row,a=n.lineWidgets&&n.lineWidgets[o];a?a.destroy():o-=t;var f=u(n,o,t),l;if(f){var c=f[0];c.pos&&c.column==null&&(s.column=c.pos.sc),s.row=c.row,l=e.renderer.$gutterLayer.$annotations[s.row]}else{if(a)return;l={text:["Looks good!"],className:"ace_ok"}}e.session.unfold(s.row),e.selection.moveCursorToPosition(s),e.selection.clearSelection();var h={row:s.row,fixedWidth:!0,coverGutter:!0,el:i.createElement("div")},p=h.el.appendChild(i.createElement("div")),d=h.el.appendChild(i.createElement("div"));d.className="error_widget_arrow "+l.className;var v=e.renderer.$cursorLayer.getPixelPosition(s).left;d.style.left=v+e.renderer.gutterWidth-5+"px",h.el.className="error_widget_wrapper",p.className="error_widget "+l.className,p.innerHTML=l.text.join("<br>");var m={handleKeyboard:function(e,t,n){if(t===0&&n==="esc")return h.destroy(),!0}};h.destroy=function(){if(e.$mouseHandler.isMousePressed)return;e.keyBinding.removeKeyboardHandler(m),n.widgetManager.removeLineWidget(h),e.off("changeSelection",h.destroy),e.off("changeSession",h.destroy),e.off("mouseup",h.destroy),e.off("change",h.destroy)},e.keyBinding.addKeyboardHandler(m),e.on("changeSelection",h.destroy),e.on("changeSession",h.destroy),e.on("mouseup",h.destroy),e.on("change",h.destroy),e.session.widgetManager.addLineWidget(h),h.el.onmousedown=e.focus.bind(e)},i.importCssString(" .error_widget_wrapper { background: inherit; color: inherit; border:none } .error_widget { border-top: solid 2px; border-bottom: solid 2px; margin: 5px 0; padding: 10px 40px; white-space: pre-wrap; } .error_widget.ace_error, .error_widget_arrow.ace_error{ border-color: #ff5a5a } .error_widget.ace_warning, .error_widget_arrow.ace_warning{ border-color: #F1D817 } .error_widget.ace_info, .error_widget_arrow.ace_info{ border-color: #5a5a5a } .error_widget.ace_ok, .error_widget_arrow.ace_ok{ border-color: #5aaa5a } .error_widget_arrow { position: absolute; border: solid 5px; border-top-color: transparent!important; border-right-color: transparent!important; border-left-color: transparent!important; top: -5px; }","")}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/range"],function(e,t,n){function o(e){this.session=e,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.detach=this.detach.bind(this),this.session.on("change",this.updateOnChange)}var r=e("./lib/oop"),i=e("./lib/dom"),s=e("./range").Range;(function(){this.getRowLength=function(e){var t;return this.lineWidgets?t=this.lineWidgets[e]&&this.lineWidgets[e].rowCount||0:t=0,!this.$useWrapMode||!this.$wrapData[e]?1+t:this.$wrapData[e].length+1+t},this.$getWidgetScreenLength=function(){var e=0;return this.lineWidgets.forEach(function(t){t&&t.rowCount&&(e+=t.rowCount)}),e},this.attach=function(e){e.widgetManager&&e.widgetManager!=this&&e.widgetManager.detach();if(this.editor==e)return;this.detach(),this.editor=e,this.editor.on("changeSession",this.detach),e.widgetManager=this,e.setOption("enableLineWidgets",!0),e.renderer.on("beforeRender",this.measureWidgets),e.renderer.on("afterRender",this.renderWidgets)},this.detach=function(e){if(e&&e.session==this.session)return;var t=this.editor;if(!t)return;t.off("changeSession",this.detach),this.editor=null,t.widgetManager=null,t.renderer.off("beforeRender",this.measureWidgets),t.renderer.off("afterRender",this.renderWidgets);var n=this.session.lineWidgets;n&&n.forEach(function(e){e&&e.el&&e.el.parentNode&&(e._inDocument=!1,e.el.parentNode.removeChild(e.el))})},this.updateOnChange=function(e){var t=this.session.lineWidgets;if(!t)return;var n=e.data,r=n.range,i=r.start.row,s=r.end.row-i;if(s!==0)if(n.action=="removeText"||n.action=="removeLines"){var o=t.splice(i+1,s);o.forEach(function(e){e&&this.removeLineWidget(e)},this),this.$updateRows()}else{var u=new Array(s);u.unshift(i,0),t.splice.apply(t,u),this.$updateRows()}},this.$updateRows=function(){var e=this.session.lineWidgets;if(!e)return;var t=!0;e.forEach(function(e,n){e&&(t=!1,e.row=n)}),t&&(this.session.lineWidgets=null)},this.addLineWidget=function(e){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength())),this.session.lineWidgets[e.row]=e;var t=this.editor.renderer;return e.html&&!e.el&&(e.el=i.createElement("div"),e.el.innerHTML=e.html),e.el&&(i.addCssClass(e.el,"ace_lineWidgetContainer"),e.el.style.position="absolute",e.el.style.zIndex=5,t.container.appendChild(e.el),e._inDocument=!0),e.coverGutter||(e.el.style.zIndex=3),e.pixelHeight||(e.pixelHeight=e.el.offsetHeight),e.rowCount==null&&(e.rowCount=e.pixelHeight/t.layerConfig.lineHeight),this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows(),this.renderWidgets(null,t),e},this.removeLineWidget=function(e){e._inDocument=!1,e.el&&e.el.parentNode&&e.el.parentNode.removeChild(e.el);if(e.editor&&e.editor.destroy)try{e.editor.destroy()}catch(t){}this.session.lineWidgets&&(this.session.lineWidgets[e.row]=undefined),this.session._emit("changeFold",{data:{start:{row:e.row}}}),this.$updateRows()},this.onWidgetChanged=function(e){this.session._changedWidgets.push(e),this.editor&&this.editor.renderer.updateFull()},this.measureWidgets=function(e,t){var n=this.session._changedWidgets,r=t.layerConfig;if(!n||!n.length)return;var i=Infinity;for(var s=0;s<n.length;s++){var o=n[s];o._inDocument||(o._inDocument=!0,t.container.appendChild(o.el)),o.h=o.el.offsetHeight,o.fixedWidth||(o.w=o.el.offsetWidth,o.screenWidth=Math.ceil(o.w/r.characterWidth));var u=o.h/r.lineHeight;o.coverLine&&(u-=this.session.getRowLineCount(o.row),u<0&&(u=0)),o.rowCount!=u&&(o.rowCount=u,o.row<i&&(i=o.row))}i!=Infinity&&(this.session._emit("changeFold",{data:{start:{row:i}}}),this.session.lineWidgetWidth=null),this.session._changedWidgets=[]},this.renderWidgets=function(e,t){var n=t.layerConfig,r=this.session.lineWidgets;if(!r)return;var i=Math.min(this.firstRow,n.firstRow),s=Math.max(this.lastRow,n.lastRow,r.length);while(i>0&&!r[i])i--;this.firstRow=n.firstRow,this.lastRow=n.lastRow,t.$cursorLayer.config=n;for(var o=i;o<=s;o++){var u=r[o];if(!u||!u.el)continue;u._inDocument||(u._inDocument=!0,t.container.appendChild(u.el));var a=t.$cursorLayer.getPixelPosition({row:o,column:0},!0).top;u.coverLine||(a+=n.lineHeight*this.session.getRowLineCount(u.row)),u.el.style.top=a-n.offset+"px";var f=u.coverGutter?0:t.gutterWidth;u.fixedWidth||(f-=t.scrollLeft),u.el.style.left=f+"px",u.fixedWidth?u.el.style.right=t.scrollBar.getWidth()+"px":u.el.style.right=""}}}).call(o.prototype),t.LineWidgets=o});
2
+ (function() {
3
+ ace.require(["ace/ace"], function(a) {
4
+ a && a.config.init();
5
+ if (!window.ace)
6
+ window.ace = {};
7
+ for (var key in a) if (a.hasOwnProperty(key))
8
+ ace[key] = a[key];
9
+ });
10
+ })();
assets/js/vendor/ace/mode-css.js ADDED
@@ -0,0 +1 @@
 
1
+ ace.define("ace/mode/css",["require","exports","module","ace/lib/oop","ace/mode/text","ace/tokenizer","ace/mode/css_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/css","ace/mode/folding/cstyle"],function(e,t,n){var r=e("../lib/oop"),i=e("./text").Mode,s=e("../tokenizer").Tokenizer,o=e("./css_highlight_rules").CssHighlightRules,u=e("./matching_brace_outdent").MatchingBraceOutdent,a=e("../worker/worker_client").WorkerClient,f=e("./behaviour/css").CssBehaviour,l=e("./folding/cstyle").FoldMode,c=function(){this.HighlightRules=o,this.$outdent=new u,this.$behaviour=new f,this.foldingRules=new l};r.inherits(c,i),function(){this.foldingRules="cStyle",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e).tokens;if(i.length&&i[i.length-1].type=="comment")return r;var s=t.match(/^.*\{\s*$/);return s&&(r+=n),r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){var t=new a(["ace"],"ace/mode/css_worker","Worker");return t.attachToDocument(e.getDocument()),t.on("csslint",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/css"}.call(c.prototype),t.Mode=c}),ace.define("ace/mode/css_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"],function(e,t,n){var r=e("../lib/oop"),i=e("../lib/lang"),s=e("./text_highlight_rules").TextHighlightRules,o=t.supportType="animation-fill-mode|alignment-adjust|alignment-baseline|animation-delay|animation-direction|animation-duration|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|animation|appearance|azimuth|backface-visibility|background-attachment|background-break|background-clip|background-color|background-image|background-origin|background-position|background-repeat|background-size|background|baseline-shift|binding|bleed|bookmark-label|bookmark-level|bookmark-state|bookmark-target|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|border|bottom|box-align|box-decoration-break|box-direction|box-flex-group|box-flex|box-lines|box-ordinal-group|box-orient|box-pack|box-shadow|box-sizing|break-after|break-before|break-inside|caption-side|clear|clip|color-profile|color|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|content|counter-increment|counter-reset|crop|cue-after|cue-before|cue|cursor|direction|display|dominant-baseline|drop-initial-after-adjust|drop-initial-after-align|drop-initial-before-adjust|drop-initial-before-align|drop-initial-size|drop-initial-value|elevation|empty-cells|fit|fit-position|float-offset|float|font-family|font-size|font-size-adjust|font-stretch|font-style|font-variant|font-weight|font|grid-columns|grid-rows|hanging-punctuation|height|hyphenate-after|hyphenate-before|hyphenate-character|hyphenate-lines|hyphenate-resource|hyphens|icon|image-orientation|image-rendering|image-resolution|inline-box-align|left|letter-spacing|line-height|line-stacking-ruby|line-stacking-shift|line-stacking-strategy|line-stacking|list-style-image|list-style-position|list-style-type|list-style|margin-bottom|margin-left|margin-right|margin-top|margin|mark-after|mark-before|mark|marks|marquee-direction|marquee-play-count|marquee-speed|marquee-style|max-height|max-width|min-height|min-width|move-to|nav-down|nav-index|nav-left|nav-right|nav-up|opacity|orphans|outline-color|outline-offset|outline-style|outline-width|outline|overflow-style|overflow-x|overflow-y|overflow|padding-bottom|padding-left|padding-right|padding-top|padding|page-break-after|page-break-before|page-break-inside|page-policy|page|pause-after|pause-before|pause|perspective-origin|perspective|phonemes|pitch-range|pitch|play-during|pointer-events|position|presentation-level|punctuation-trim|quotes|rendering-intent|resize|rest-after|rest-before|rest|richness|right|rotation-point|rotation|ruby-align|ruby-overhang|ruby-position|ruby-span|size|speak-header|speak-numeral|speak-punctuation|speak|speech-rate|stress|string-set|table-layout|target-name|target-new|target-position|target|text-align-last|text-align|text-decoration|text-emphasis|text-height|text-indent|text-justify|text-outline|text-shadow|text-transform|text-wrap|top|transform-origin|transform-style|transform|transition-delay|transition-duration|transition-property|transition-timing-function|transition|unicode-bidi|vertical-align|visibility|voice-balance|voice-duration|voice-family|voice-pitch-range|voice-pitch|voice-rate|voice-stress|voice-volume|volume|white-space-collapse|white-space|widows|width|word-break|word-spacing|word-wrap|z-index",u=t.supportFunction="rgb|rgba|url|attr|counter|counters",a=t.supportConstant="absolute|after-edge|after|all-scroll|all|alphabetic|always|antialiased|armenian|auto|avoid-column|avoid-page|avoid|balance|baseline|before-edge|before|below|bidi-override|block-line-height|block|bold|bolder|border-box|both|bottom|box|break-all|break-word|capitalize|caps-height|caption|center|central|char|circle|cjk-ideographic|clone|close-quote|col-resize|collapse|column|consider-shifts|contain|content-box|cover|crosshair|cubic-bezier|dashed|decimal-leading-zero|decimal|default|disabled|disc|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|e-resize|ease-in|ease-in-out|ease-out|ease|ellipsis|end|exclude-ruby|fill|fixed|georgian|glyphs|grid-height|groove|hand|hanging|hebrew|help|hidden|hiragana-iroha|hiragana|horizontal|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|ideographic|inactive|include-ruby|inherit|initial|inline-block|inline-box|inline-line-height|inline-table|inline|inset|inside|inter-ideograph|inter-word|invert|italic|justify|katakana-iroha|katakana|keep-all|last|left|lighter|line-edge|line-through|line|linear|list-item|local|loose|lower-alpha|lower-greek|lower-latin|lower-roman|lowercase|lr-tb|ltr|mathematical|max-height|max-size|medium|menu|message-box|middle|move|n-resize|ne-resize|newspaper|no-change|no-close-quote|no-drop|no-open-quote|no-repeat|none|normal|not-allowed|nowrap|nw-resize|oblique|open-quote|outset|outside|overline|padding-box|page|pointer|pre-line|pre-wrap|pre|preserve-3d|progress|relative|repeat-x|repeat-y|repeat|replaced|reset-size|ridge|right|round|row-resize|rtl|s-resize|scroll|se-resize|separate|slice|small-caps|small-caption|solid|space|square|start|static|status-bar|step-end|step-start|steps|stretch|strict|sub|super|sw-resize|table-caption|table-cell|table-column-group|table-column|table-footer-group|table-header-group|table-row-group|table-row|table|tb-rl|text-after-edge|text-before-edge|text-bottom|text-size|text-top|text|thick|thin|transparent|underline|upper-alpha|upper-latin|upper-roman|uppercase|use-script|vertical-ideographic|vertical-text|visible|w-resize|wait|whitespace|z-index|zero",f=t.supportConstantColor="aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow",l=t.supportConstantFonts="arial|century|comic|courier|garamond|georgia|helvetica|impact|lucida|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace",c=t.numRe="\\-?(?:(?:[0-9]+)|(?:[0-9]*\\.[0-9]+))",h=t.pseudoElements="(\\:+)\\b(after|before|first-letter|first-line|moz-selection|selection)\\b",p=t.pseudoClasses="(:)\\b(active|checked|disabled|empty|enabled|first-child|first-of-type|focus|hover|indeterminate|invalid|last-child|last-of-type|link|not|nth-child|nth-last-child|nth-last-of-type|nth-of-type|only-child|only-of-type|required|root|target|valid|visited)\\b",d=function(){var e=this.createKeywordMapper({"support.function":u,"support.constant":a,"support.type":o,"support.constant.color":f,"support.constant.fonts":l},"text",!0);this.$rules={start:[{token:"comment",regex:"\\/\\*",push:"comment"},{token:"paren.lparen",regex:"\\{",push:"ruleset"},{token:"string",regex:"@.*?{",push:"media"},{token:"keyword",regex:"#[a-z0-9-_]+"},{token:"variable",regex:"\\.[a-z0-9-_]+"},{token:"string",regex:":[a-z0-9-_]+"},{token:"constant",regex:"[a-z0-9-_]+"},{caseInsensitive:!0}],media:[{token:"comment",regex:"\\/\\*",push:"comment"},{token:"paren.lparen",regex:"\\{",push:"ruleset"},{token:"string",regex:"\\}",next:"pop"},{token:"keyword",regex:"#[a-z0-9-_]+"},{token:"variable",regex:"\\.[a-z0-9-_]+"},{token:"string",regex:":[a-z0-9-_]+"},{token:"constant",regex:"[a-z0-9-_]+"},{caseInsensitive:!0}],comment:[{token:"comment",regex:"\\*\\/",next:"pop"},{defaultToken:"comment"}],ruleset:[{token:"paren.rparen",regex:"\\}",next:"pop"},{token:"comment",regex:"\\/\\*",push:"comment"},{token:"string",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]'},{token:"string",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:["constant.numeric","keyword"],regex:"("+c+")(ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vm|vw|%)"},{token:"constant.numeric",regex:c},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:["punctuation","entity.other.attribute-name.pseudo-element.css"],regex:h},{token:["punctuation","entity.other.attribute-name.pseudo-class.css"],regex:p},{token:["support.function","string","support.function"],regex:"(url\\()(.*)(\\))"},{token:e,regex:"\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*"},{caseInsensitive:!0}]},this.normalizeRules()};r.inherits(d,s),t.CssHighlightRules=d}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),ace.define("ace/mode/behaviour/css",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/mode/behaviour/cstyle","ace/token_iterator"],function(e,t,n){var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("./cstyle").CstyleBehaviour,o=e("../../token_iterator").TokenIterator,u=function(){this.inherit(s),this.add("colon","insertion",function(e,t,n,r,i){if(i===":"){var s=n.getCursorPosition(),u=new o(r,s.row,s.column),a=u.getCurrentToken();a&&a.value.match(/\s+/)&&(a=u.stepBackward());if(a&&a.type==="support.type"){var f=r.doc.getLine(s.row),l=f.substring(s.column,s.column+1);if(l===":")return{text:"",selection:[1,1]};if(!f.substring(s.column).match(/^\s*;/))return{text:":;",selection:[1,1]}}}}),this.add("colon","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s===":"){var u=n.getCursorPosition(),a=new o(r,u.row,u.column),f=a.getCurrentToken();f&&f.value.match(/\s+/)&&(f=a.stepBackward());if(f&&f.type==="support.type"){var l=r.doc.getLine(i.start.row),c=l.substring(i.end.column,i.end.column+1);if(c===";")return i.end.column++,i}}}),this.add("semicolon","insertion",function(e,t,n,r,i){if(i===";"){var s=n.getCursorPosition(),o=r.doc.getLine(s.row),u=o.substring(s.column,s.column+1);if(u===";")return{text:"",selection:[1,1]}}})};r.inherits(u,s),t.CssBehaviour=u}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,t,n){var r=e("../../lib/oop"),i=e("../behaviour").Behaviour,s=e("../../token_iterator").TokenIterator,o=e("../../lib/lang"),u=["text","paren.rparen","punctuation.operator"],a=["text","paren.rparen","punctuation.operator","comment"],f=0,l=-1,c="",h=0,p=-1,d="",v="",m=function(){m.isSaneInsertion=function(e,t){var n=e.getCursorPosition(),r=new s(t,n.row,n.column);if(!this.$matchTokenType(r.getCurrentToken()||"text",u)){var i=new s(t,n.row,n.column+1);if(!this.$matchTokenType(i.getCurrentToken()||"text",u))return!1}return r.stepForward(),r.getCurrentTokenRow()!==n.row||this.$matchTokenType(r.getCurrentToken()||"text",a)},m.$matchTokenType=function(e,t){return t.indexOf(e.type||e)>-1},m.recordAutoInsert=function(e,t,n){var r=e.getCursorPosition(),i=t.doc.getLine(r.row);this.isAutoInsertedClosing(r,i,c[0])||(f=0),l=r.row,c=n+i.substr(r.column),f++},m.recordMaybeInsert=function(e,t,n){var r=e.getCursorPosition(),i=t.doc.getLine(r.row);this.isMaybeInsertedClosing(r,i)||(h=0),p=r.row,d=i.substr(0,r.column)+n,v=i.substr(r.column),h++},m.isAutoInsertedClosing=function(e,t,n){return f>0&&e.row===l&&n===c[0]&&t.substr(e.column)===c},m.isMaybeInsertedClosing=function(e,t){return h>0&&e.row===p&&t.substr(e.column)===v&&t.substr(0,e.column)==d},m.popAutoInsertedClosing=function(){c=c.substr(1),f--},m.clearMaybeInsertedClosing=function(){h=0,p=-1},this.add("braces","insertion",function(e,t,n,r,i){var s=n.getCursorPosition(),u=r.doc.getLine(s.row);if(i=="{"){var a=n.getSelectionRange(),f=r.doc.getTextRange(a);if(f!==""&&f!=="{"&&n.getWrapBehavioursEnabled())return{text:"{"+f+"}",selection:!1};if(m.isSaneInsertion(n,r))return/[\]\}\)]/.test(u[s.column])||n.inMultiSelectMode?(m.recordAutoInsert(n,r,"}"),{text:"{}",selection:[1,1]}):(m.recordMaybeInsert(n,r,"{"),{text:"{",selection:[1,1]})}else if(i=="}"){var l=u.substring(s.column,s.column+1);if(l=="}"){var c=r.$findOpeningBracket("}",{column:s.column+1,row:s.row});if(c!==null&&m.isAutoInsertedClosing(s,u,i))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else{if(i=="\n"||i=="\r\n"){var p="";m.isMaybeInsertedClosing(s,u)&&(p=o.stringRepeat("}",h),m.clearMaybeInsertedClosing());var l=u.substring(s.column,s.column+1);if(l==="}"){var d=r.findMatchingBracket({row:s.row,column:s.column+1},"}");if(!d)return null;var v=this.$getIndent(r.getLine(d.row))}else{if(!p)return;var v=this.$getIndent(u)}var g=v+r.getTabString();return{text:"\n"+g+"\n"+v+p,selection:[1,g.length,1,g.length]}}m.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="{"){var o=r.doc.getLine(i.start.row),u=o.substring(i.end.column,i.end.column+1);if(u=="}")return i.end.column++,i;h--}}),this.add("parens","insertion",function(e,t,n,r,i){if(i=="("){var s=n.getSelectionRange(),o=r.doc.getTextRange(s);if(o!==""&&n.getWrapBehavioursEnabled())return{text:"("+o+")",selection:!1};if(m.isSaneInsertion(n,r))return m.recordAutoInsert(n,r,")"),{text:"()",selection:[1,1]}}else if(i==")"){var u=n.getCursorPosition(),a=r.doc.getLine(u.row),f=a.substring(u.column,u.column+1);if(f==")"){var l=r.$findOpeningBracket(")",{column:u.column+1,row:u.row});if(l!==null&&m.isAutoInsertedClosing(u,a,i))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="("){var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u==")")return i.end.column++,i}}),this.add("brackets","insertion",function(e,t,n,r,i){if(i=="["){var s=n.getSelectionRange(),o=r.doc.getTextRange(s);if(o!==""&&n.getWrapBehavioursEnabled())return{text:"["+o+"]",selection:!1};if(m.isSaneInsertion(n,r))return m.recordAutoInsert(n,r,"]"),{text:"[]",selection:[1,1]}}else if(i=="]"){var u=n.getCursorPosition(),a=r.doc.getLine(u.row),f=a.substring(u.column,u.column+1);if(f=="]"){var l=r.$findOpeningBracket("]",{column:u.column+1,row:u.row});if(l!==null&&m.isAutoInsertedClosing(u,a,i))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&s=="["){var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u=="]")return i.end.column++,i}}),this.add("string_dquotes","insertion",function(e,t,n,r,i){if(i=='"'||i=="'"){var s=i,o=n.getSelectionRange(),u=r.doc.getTextRange(o);if(u!==""&&u!=="'"&&u!='"'&&n.getWrapBehavioursEnabled())return{text:s+u+s,selection:!1};var a=n.getCursorPosition(),f=r.doc.getLine(a.row),l=f.substring(a.column-1,a.column);if(l=="\\")return null;var c=r.getTokens(o.start.row),h=0,p,d=-1;for(var v=0;v<c.length;v++){p=c[v],p.type=="string"?d=-1:d<0&&(d=p.value.indexOf(s));if(p.value.length+h>o.start.column)break;h+=c[v].value.length}if(!p||d<0&&p.type!=="comment"&&(p.type!=="string"||o.start.column!==p.value.length+h-1&&p.value.lastIndexOf(s)===p.value.length-1)){if(!m.isSaneInsertion(n,r))return;return{text:s+s,selection:[1,1]}}if(p&&p.type==="string"){var g=f.substring(a.column,a.column+1);if(g==s)return{text:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(e,t,n,r,i){var s=r.doc.getTextRange(i);if(!i.isMultiLine()&&(s=='"'||s=="'")){var o=r.doc.getLine(i.start.row),u=o.substring(i.start.column+1,i.start.column+2);if(u==s)return i.end.column++,i}})};r.inherits(m,i),t.CstyleBehaviour=m}),ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/(\{|\[)[^\}\]]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/,this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n),s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}},this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)}}.call(o.prototype)})
assets/js/vendor/ace/theme-chrome.js ADDED
@@ -0,0 +1 @@
 
1
+ ace.define("ace/theme/chrome",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-chrome",t.cssText='.ace-chrome .ace_gutter {background: #ebebeb;color: #333;overflow : hidden;}.ace-chrome .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-chrome {background-color: #FFFFFF;}.ace-chrome .ace_cursor {color: black;}.ace-chrome .ace_invisible {color: rgb(191, 191, 191);}.ace-chrome .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-chrome .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-chrome .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-chrome .ace_invalid {background-color: rgb(153, 0, 0);color: white;}.ace-chrome .ace_fold {}.ace-chrome .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-chrome .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-chrome .ace_support.ace_type,.ace-chrome .ace_support.ace_class.ace-chrome .ace_support.ace_other {color: rgb(109, 121, 222);}.ace-chrome .ace_variable.ace_parameter {font-style:italic;color:#FD971F;}.ace-chrome .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-chrome .ace_comment {color: #236e24;}.ace-chrome .ace_comment.ace_doc {color: #236e24;}.ace-chrome .ace_comment.ace_doc.ace_tag {color: #236e24;}.ace-chrome .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-chrome .ace_variable {color: rgb(49, 132, 149);}.ace-chrome .ace_xml-pe {color: rgb(104, 104, 91);}.ace-chrome .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-chrome .ace_heading {color: rgb(12, 7, 255);}.ace-chrome .ace_list {color:rgb(185, 6, 144);}.ace-chrome .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-chrome .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-chrome .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-chrome .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-chrome .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-chrome .ace_gutter-active-line {background-color : #dcdcdc;}.ace-chrome .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-chrome .ace_storage,.ace-chrome .ace_keyword,.ace-chrome .ace_meta.ace_tag {color: rgb(147, 15, 128);}.ace-chrome .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-chrome .ace_string {color: #1A1AA6;}.ace-chrome .ace_entity.ace_other.ace_attribute-name {color: #994409;}.ace-chrome .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass)})
assets/js/vendor/ace/worker-css.js ADDED
@@ -0,0 +1 @@
 
1
+ "no use strict";(function(e){if(typeof e.window!="undefined"&&e.document)return;e.console=function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},e.console.error=e.console.warn=e.console.log=e.console.trace=e.console,e.window=e,e.ace=e,e.onerror=function(e,t,n,r,i){console.error("Worker "+i.stack)},e.normalizeModule=function(t,n){if(n.indexOf("!")!==-1){var r=n.split("!");return e.normalizeModule(t,r[0])+"!"+e.normalizeModule(t,r[1])}if(n.charAt(0)=="."){var i=t.split("/").slice(0,-1).join("/");n=(i?i+"/":"")+n;while(n.indexOf(".")!==-1&&s!=n){var s=n;n=n.replace(/^\.\//,"").replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return n},e.require=function(t,n){n||(n=t,t=null);if(!n.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");n=e.normalizeModule(t,n);var r=e.require.modules[n];if(r)return r.initialized||(r.initialized=!0,r.exports=r.factory().exports),r.exports;var i=n.split("/");if(!e.require.tlns)return console.log("unable to load "+n);i[0]=e.require.tlns[i[0]]||i[0];var s=i.join("/")+".js";return e.require.id=n,importScripts(s),e.require(t,n)},e.require.modules={},e.require.tlns={},e.define=function(t,n,r){arguments.length==2?(r=n,typeof t!="string"&&(n=t,t=e.require.id)):arguments.length==1&&(r=t,n=[],t=e.require.id),n.length||(n=["require","exports","module"]);if(t.indexOf("text!")===0)return;var i=function(n){return e.require(t,n)};e.require.modules[t]={exports:{},factory:function(){var e=this,t=r.apply(this,n.map(function(t){switch(t){case"require":return i;case"exports":return e.exports;case"module":return e;default:return i(t)}}));return t&&(e.exports=t),e}}},e.define.amd={},e.initBaseUrls=function(e){require.tlns=e},e.initSender=function(){var t=e.require("ace/lib/event_emitter").EventEmitter,n=e.require("ace/lib/oop"),r=function(){};return function(){n.implement(this,t),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(r.prototype),new r},e.main=null,e.sender=null,e.onmessage=function(e){var t=e.data;if(t.command){if(!main[t.command])throw new Error("Unknown command:"+t.command);main[t.command].apply(main,t.args)}else if(t.init){initBaseUrls(t.tlns),require("ace/lib/es5-shim"),sender=initSender();var n=require(t.module)[t.classname];main=new n(sender)}else t.event&&sender&&sender._emit(t.event,t.data)}})(this),ace.define("ace/lib/es5-shim",["require","exports","module"],function(e,t,n){function r(){}function i(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){}}function s(e){return e=+e,e!==e?e=0:e!==0&&e!==1/0&&e!==-1/0&&(e=(e>0||-1)*Math.floor(Math.abs(e))),e}function o(e){var t=typeof e;return e===null||t==="undefined"||t==="boolean"||t==="number"||t==="string"}function u(e){var t,n,r;if(o(e))return e;n=e.valueOf;if(typeof n=="function"){t=n.call(e);if(o(t))return t}r=e.toString;if(typeof r=="function"){t=r.call(e);if(o(t))return t}throw new TypeError}Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if(typeof t!="function")throw new TypeError("Function.prototype.bind called on incompatible "+t);var n=c.call(arguments,1),i=function(){if(this instanceof i){var r=t.apply(this,n.concat(c.call(arguments)));return Object(r)===r?r:this}return t.apply(e,n.concat(c.call(arguments)))};return t.prototype&&(r.prototype=t.prototype,i.prototype=new r,r.prototype=null),i});var a=Function.prototype.call,f=Array.prototype,l=Object.prototype,c=f.slice,h=a.bind(l.toString),p=a.bind(l.hasOwnProperty),d,v,m,g,y;if(y=p(l,"__defineGetter__"))d=a.bind(l.__defineGetter__),v=a.bind(l.__defineSetter__),m=a.bind(l.__lookupGetter__),g=a.bind(l.__lookupSetter__);if([1,2].splice(0).length!=2)if(!function(){function e(e){var t=new Array(e+2);return t[0]=t[1]=0,t}var t=[],n;t.splice.apply(t,e(20)),t.splice.apply(t,e(26)),n=t.length,t.splice(5,0,"XXX"),n+1==t.length;if(n+1==t.length)return!0}())Array.prototype.splice=function(e,t){var n=this.length;e>0?e>n&&(e=n):e==void 0?e=0:e<0&&(e=Math.max(n+e,0)),e+t<n||(t=n-e);var r=this.slice(e,e+t),i=c.call(arguments,2),s=i.length;if(e===n)s&&this.push.apply(this,i);else{var o=Math.min(t,n-e),u=e+o,a=u+s-o,f=n-u,l=n-o;if(a<u)for(var h=0;h<f;++h)this[a+h]=this[u+h];else if(a>u)for(h=f;h--;)this[a+h]=this[u+h];if(s&&e===l)this.length=l,this.push.apply(this,i);else{this.length=l+s;for(h=0;h<s;++h)this[e+h]=i[h]}}return r};else{var b=Array.prototype.splice;Array.prototype.splice=function(e,t){return arguments.length?b.apply(this,[e===void 0?0:e,t===void 0?this.length-e:t].concat(c.call(arguments,2))):[]}}Array.isArray||(Array.isArray=function(e){return h(e)=="[object Array]"});var w=Object("a"),E=w[0]!="a"||!(0 in w);Array.prototype.forEach||(Array.prototype.forEach=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=arguments[1],i=-1,s=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError;while(++i<s)i in n&&e.call(r,n[i],i,t)}),Array.prototype.map||(Array.prototype.map=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=Array(r),s=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var o=0;o<r;o++)o in n&&(i[o]=e.call(s,n[o],o,t));return i}),Array.prototype.filter||(Array.prototype.filter=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=[],s,o=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var u=0;u<r;u++)u in n&&(s=n[u],e.call(o,s,u,t)&&i.push(s));return i}),Array.prototype.every||(Array.prototype.every=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&!e.call(i,n[s],s,t))return!1;return!0}),Array.prototype.some||(Array.prototype.some=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0,i=arguments[1];if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");for(var s=0;s<r;s++)if(s in n&&e.call(i,n[s],s,t))return!0;return!1}),Array.prototype.reduce||(Array.prototype.reduce=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var i=0,s;if(arguments.length>=2)s=arguments[1];else do{if(i in n){s=n[i++];break}if(++i>=r)throw new TypeError("reduce of empty array with no initial value")}while(!0);for(;i<r;i++)i in n&&(s=e.call(void 0,s,n[i],i,t));return s}),Array.prototype.reduceRight||(Array.prototype.reduceRight=function(e){var t=F(this),n=E&&h(this)=="[object String]"?this.split(""):t,r=n.length>>>0;if(h(e)!="[object Function]")throw new TypeError(e+" is not a function");if(!r&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var i,s=r-1;if(arguments.length>=2)i=arguments[1];else do{if(s in n){i=n[s--];break}if(--s<0)throw new TypeError("reduceRight of empty array with no initial value")}while(!0);do s in this&&(i=e.call(void 0,i,n[s],s,t));while(s--);return i});if(!Array.prototype.indexOf||[0,1].indexOf(1,2)!=-1)Array.prototype.indexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=0;arguments.length>1&&(r=s(arguments[1])),r=r>=0?r:Math.max(0,n+r);for(;r<n;r++)if(r in t&&t[r]===e)return r;return-1};if(!Array.prototype.lastIndexOf||[0,1].lastIndexOf(0,-3)!=-1)Array.prototype.lastIndexOf=function(e){var t=E&&h(this)=="[object String]"?this.split(""):F(this),n=t.length>>>0;if(!n)return-1;var r=n-1;arguments.length>1&&(r=Math.min(r,s(arguments[1]))),r=r>=0?r:n-Math.abs(r);for(;r>=0;r--)if(r in t&&e===t[r])return r;return-1};Object.getPrototypeOf||(Object.getPrototypeOf=function(e){return e.__proto__||(e.constructor?e.constructor.prototype:l)});if(!Object.getOwnPropertyDescriptor){var S="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function(e,t){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(S+e);if(!p(e,t))return;var n,r,i;n={enumerable:!0,configurable:!0};if(y){var s=e.__proto__;e.__proto__=l;var r=m(e,t),i=g(e,t);e.__proto__=s;if(r||i)return r&&(n.get=r),i&&(n.set=i),n}return n.value=e[t],n}}Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function(e){return Object.keys(e)});if(!Object.create){var x;Object.prototype.__proto__===null?x=function(){return{__proto__:null}}:x=function(){var e={};for(var t in e)e[t]=null;return e.constructor=e.hasOwnProperty=e.propertyIsEnumerable=e.isPrototypeOf=e.toLocaleString=e.toString=e.valueOf=e.__proto__=null,e},Object.create=function(e,t){var n;if(e===null)n=x();else{if(typeof e!="object")throw new TypeError("typeof prototype["+typeof e+"] != 'object'");var r=function(){};r.prototype=e,n=new r,n.__proto__=e}return t!==void 0&&Object.defineProperties(n,t),n}}if(Object.defineProperty){var T=i({}),N=typeof document=="undefined"||i(document.createElement("div"));if(!T||!N)var C=Object.defineProperty}if(!Object.defineProperty||C){var k="Property description must be an object: ",L="Object.defineProperty called on non-object: ",A="getters & setters can not be defined on this javascript engine";Object.defineProperty=function(e,t,n){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError(L+e);if(typeof n!="object"&&typeof n!="function"||n===null)throw new TypeError(k+n);if(C)try{return C.call(Object,e,t,n)}catch(r){}if(p(n,"value"))if(y&&(m(e,t)||g(e,t))){var i=e.__proto__;e.__proto__=l,delete e[t],e[t]=n.value,e.__proto__=i}else e[t]=n.value;else{if(!y)throw new TypeError(A);p(n,"get")&&d(e,t,n.get),p(n,"set")&&v(e,t,n.set)}return e}}Object.defineProperties||(Object.defineProperties=function(e,t){for(var n in t)p(t,n)&&Object.defineProperty(e,n,t[n]);return e}),Object.seal||(Object.seal=function(e){return e}),Object.freeze||(Object.freeze=function(e){return e});try{Object.freeze(function(){})}catch(O){Object.freeze=function(e){return function(t){return typeof t=="function"?t:e(t)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function(e){return e}),Object.isSealed||(Object.isSealed=function(e){return!1}),Object.isFrozen||(Object.isFrozen=function(e){return!1}),Object.isExtensible||(Object.isExtensible=function(e){if(Object(e)===e)throw new TypeError;var t="";while(p(e,t))t+="?";e[t]=!0;var n=p(e,t);return delete e[t],n});if(!Object.keys){var M=!0,_=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],D=_.length;for(var P in{toString:null})M=!1;Object.keys=function I(e){if(typeof e!="object"&&typeof e!="function"||e===null)throw new TypeError("Object.keys called on a non-object");var I=[];for(var t in e)p(e,t)&&I.push(t);if(M)for(var n=0,r=D;n<r;n++){var i=_[n];p(e,i)&&I.push(i)}return I}}Date.now||(Date.now=function(){return(new Date).getTime()});var H=" \n\f\r   ᠎              \u2028\u2029";if(!String.prototype.trim||H.trim()){H="["+H+"]";var B=new RegExp("^"+H+H+"*"),j=new RegExp(H+H+"*$");String.prototype.trim=function(){return String(this).replace(B,"").replace(j,"")}}var F=function(e){if(e==null)throw new TypeError("can't convert "+e+" to object");return Object(e)}}),ace.define("ace/mode/css_worker",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/worker/mirror","ace/mode/css/csslint"],function(e,t,n){var r=e("../lib/oop"),i=e("../lib/lang"),s=e("../worker/mirror").Mirror,o=e("./css/csslint").CSSLint,u=t.Worker=function(e){s.call(this,e),this.setTimeout(400),this.ruleset=null,this.setDisabledRules("ids"),this.setInfoRules("adjoining-classes|qualified-headings|zero-units|gradients|import|outline-none")};r.inherits(u,s),function(){this.setInfoRules=function(e){typeof e=="string"&&(e=e.split("|")),this.infoRules=i.arrayToMap(e),this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.setDisabledRules=function(e){if(!e)this.ruleset=null;else{typeof e=="string"&&(e=e.split("|"));var t={};o.getRules().forEach(function(e){t[e.id]=!0}),e.forEach(function(e){delete t[e]}),this.ruleset=t}this.doc.getValue()&&this.deferredUpdate.schedule(100)},this.onUpdate=function(){var e=this.doc.getValue(),t=this.infoRules,n=o.verify(e,this.ruleset);this.sender.emit("csslint",n.messages.map(function(e){return{row:e.line-1,column:e.col-1,text:e.message,type:t[e.rule.id]?"info":e.type,rule:e.rule.name}}))}}.call(u.prototype)}),ace.define("ace/lib/oop",["require","exports","module"],function(e,t,n){t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),ace.define("ace/lib/lang",["require","exports","module"],function(e,t,n){t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function(e){if(typeof e!="object"||!e)return e;var n=e.constructor;if(n===RegExp)return e;var r=n();for(var i in e)typeof e[i]=="object"?r[i]=t.deepCopy(e[i]):r[i]=e[i];return r},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return e.replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r.isPending=function(){return t},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n==null&&(n=setTimeout(r,e||t))};return i.delay=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)},i.schedule=i,i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),ace.define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"],function(e,t,n){var r=e("../document").Document,i=e("../lib/lang"),s=t.Mirror=function(e){this.sender=e;var t=this.doc=new r(""),n=this.deferredUpdate=i.delayedCall(this.onUpdate.bind(this)),s=this;e.on("change",function(e){t.applyDeltas(e.data);if(s.$timeout)return n.schedule(s.$timeout);s.onUpdate()})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(s.prototype)}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=e("./range").Range,o=e("./anchor").Anchor,u=function(e){this.$lines=[],e.length==0?this.$lines=[""]:Array.isArray(e)?this._insertLines(0,e):this.insert({row:0,column:0},e)};(function(){r.implement(this,i),this.setValue=function(e){var t=this.getLength();this.remove(new s(0,0,t,this.getLine(t-1).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new o(this,e,t)},"aaa".split(/a/).length==0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n"},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine}},this.$autoNewLine="\n",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){if(e.start.row==e.end.row)return this.getLine(e.start.row).substring(e.start.column,e.end.column);var t=this.getLines(e.start.row,e.end.row);t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;return e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column)),t.join(this.getNewLineCharacter())},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):e.row<0&&(e.row=0),e},this.insert=function(e,t){if(!t||t.length===0)return e;e=this.$clipPosition(e),this.getLength()<=1&&this.$detectNewLine(t);var n=this.$split(t),r=n.splice(0,1)[0],i=n.length==0?null:n.splice(n.length-1,1)[0];return e=this.insertInLine(e,r),i!==null&&(e=this.insertNewLine(e),e=this._insertLines(e.row,n),e=this.insertInLine(e,i||"")),e},this.insertLines=function(e,t){return e>=this.getLength()?this.insert({row:e,column:0},"\n"+t.join("\n")):this._insertLines(Math.max(e,0),t)},this._insertLines=function(e,t){if(t.length==0)return{row:e,column:0};if(t.length>65535){var n=this._insertLines(e,t.slice(65535));t=t.slice(0,65535)}var r=[e,0];r.push.apply(r,t),this.$lines.splice.apply(this.$lines,r);var i=new s(e,0,e+t.length,0),o={action:"insertLines",range:i,lines:t};return this._emit("change",{data:o}),n||i.end},this.insertNewLine=function(e){e=this.$clipPosition(e);var t=this.$lines[e.row]||"";this.$lines[e.row]=t.substring(0,e.column),this.$lines.splice(e.row+1,0,t.substring(e.column,t.length));var n={row:e.row+1,column:0},r={action:"insertText",range:s.fromPoints(e,n),text:this.getNewLineCharacter()};return this._emit("change",{data:r}),n},this.insertInLine=function(e,t){if(t.length==0)return e;var n=this.$lines[e.row]||"";this.$lines[e.row]=n.substring(0,e.column)+t+n.substring(e.column);var r={row:e.row,column:e.column+t.length},i={action:"insertText",range:s.fromPoints(e,r),text:t};return this._emit("change",{data:i}),r},this.remove=function(e){!e instanceof s&&(e=s.fromPoints(e.start,e.end)),e.start=this.$clipPosition(e.start),e.end=this.$clipPosition(e.end);if(e.isEmpty())return e.start;var t=e.start.row,n=e.end.row;if(e.isMultiLine()){var r=e.start.column==0?t:t+1,i=n-1;e.end.column>0&&this.removeInLine(n,0,e.end.column),i>=r&&this._removeLines(r,i),r!=t&&(this.removeInLine(t,e.start.column,this.getLine(t).length),this.removeNewLine(e.start.row))}else this.removeInLine(t,e.start.column,e.end.column);return e.start},this.removeInLine=function(e,t,n){if(t==n)return;var r=new s(e,t,e,n),i=this.getLine(e),o=i.substring(t,n),u=i.substring(0,t)+i.substring(n,i.length);this.$lines.splice(e,1,u);var a={action:"removeText",range:r,text:o};return this._emit("change",{data:a}),r.start},this.removeLines=function(e,t){return e<0||t>=this.getLength()?this.remove(new s(e,0,t+1,0)):this._removeLines(e,t)},this._removeLines=function(e,t){var n=new s(e,0,t+1,0),r=this.$lines.splice(e,t-e+1),i={action:"removeLines",range:n,nl:this.getNewLineCharacter(),lines:r};return this._emit("change",{data:i}),r},this.removeNewLine=function(e){var t=this.getLine(e),n=this.getLine(e+1),r=new s(e,t.length,e+1,0),i=t+n;this.$lines.splice(e,2,i);var o={action:"removeText",range:r,text:this.getNewLineCharacter()};this._emit("change",{data:o})},this.replace=function(e,t){!e instanceof s&&(e=s.fromPoints(e.start,e.end));if(t.length==0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);if(t)var n=this.insert(e.start,t);else n=e.start;return n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this.insertLines(r.start.row,n.lines):n.action=="insertText"?this.insert(r.start,n.text):n.action=="removeLines"?this._removeLines(r.start.row,r.end.row-1):n.action=="removeText"&&this.remove(r)}},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--){var n=e[t],r=s.fromPoints(n.range.start,n.range.end);n.action=="insertLines"?this._removeLines(r.start.row,r.end.row-1):n.action=="insertText"?this.remove(r):n.action=="removeLines"?this._insertLines(r.start.row,n.lines):n.action=="removeText"&&this.insert(r.start,n.text)}},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:n[s-1].length}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length+r;return i+e.column}}).call(u.prototype),t.Document=u}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(e,t,n){var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;n=n.slice();for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;t&&this.addEventListener(e,function r(){n.removeEventListener(e,r),t.apply(null,arguments)})},r.setDefaultHandler=function(e,t){var n=this._defaultHandlers;n||(n=this._defaultHandlers={_disabled_:{}});if(n[e]){var r=n[e],i=n._disabled_[e];i||(n._disabled_[e]=i=[]),i.push(r);var s=i.indexOf(t);s!=-1&&i.splice(s,1)}n[e]=t},r.removeDefaultHandler=function(e,t){var n=this._defaultHandlers;if(!n)return;var r=n._disabled_[e];if(n[e]==t){var i=n[e];r&&this.setDefaultHandler(e,r.pop())}else if(r){var s=r.indexOf(t);s!=-1&&r.splice(s,1)}},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){this._eventRegistry&&(this._eventRegistry[e]=[])},t.EventEmitter=r}),ace.define("ace/range",["require","exports","module"],function(e,t,n){var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,t,n){var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.$onChange=this.onChange.bind(this),this.attach(e),typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n)};(function(){r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(e){var t=e.data,n=t.range;if(n.start.row==n.end.row&&n.start.row!=this.row)return;if(n.start.row>this.row)return;if(n.start.row==this.row&&n.start.column>this.column)return;var r=this.row,i=this.column,s=n.start,o=n.end;if(t.action==="insertText")if(s.row===r&&s.column<=i){if(s.column!==i||!this.$insertRight)s.row===o.row?i+=o.column-s.column:(i-=s.column,r+=o.row-s.row)}else s.row!==o.row&&s.row<r&&(r+=o.row-s.row);else t.action==="insertLines"?s.row<=r&&(r+=o.row-s.row):t.action==="removeText"?s.row===r&&s.column<i?o.column>=i?i=s.column:i=Math.max(0,i-(o.column-s.column)):s.row!==o.row&&s.row<r?(o.row===r&&(i=Math.max(0,i-o.column)+s.column),r-=o.row-s.row):o.row===r&&(r-=o.row-s.row,i=Math.max(0,i-o.column)+s.column):t.action=="removeLines"&&s.row<=r&&(o.row<=r?r-=o.row-s.row:(r=s.row,i=0));this.setPosition(r,i,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._emit("change",{old:i,value:r})},this.detach=function(){this.document.removeEventListener("change",this.$onChange)},this.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),ace.define("ace/mode/css/csslint",["require","exports","module"],function(require,exports,module){function Reporter(e,t){this.messages=[],this.stats=[],this.lines=e,this.ruleset=t}var parserlib={};(function(){function e(){this._listeners={}}function t(e){this._input=e.replace(/\n\r?/g,"\n"),this._line=1,this._col=1,this._cursor=0}function n(e,t,n){this.col=n,this.line=t,this.message=e}function r(e,t,n,r){this.col=n,this.line=t,this.text=e,this.type=r}function i(e,n){this._reader=e?new t(e.toString()):null,this._token=null,this._tokenData=n,this._lt=[],this._ltIndex=0,this._ltIndexCache=[]}e.prototype={constructor:e,addListener:function(e,t){this._listeners[e]||(this._listeners[e]=[]),this._listeners[e].push(t)},fire:function(e){typeof e=="string"&&(e={type:e}),typeof e.target!="undefined"&&(e.target=this);if(typeof e.type=="undefined")throw new Error("Event object missing 'type' property.");if(this._listeners[e.type]){var t=this._listeners[e.type].concat();for(var n=0,r=t.length;n<r;n++)t[n].call(this,e)}},removeListener:function(e,t){if(this._listeners[e]){var n=this._listeners[e];for(var r=0,i=n.length;r<i;r++)if(n[r]===t){n.splice(r,1);break}}}},t.prototype={constructor:t,getCol:function(){return this._col},getLine:function(){return this._line},eof:function(){return this._cursor==this._input.length},peek:function(e){var t=null;return e=typeof e=="undefined"?1:e,this._cursor<this._input.length&&(t=this._input.charAt(this._cursor+e-1)),t},read:function(){var e=null;return this._cursor<this._input.length&&(this._input.charAt(this._cursor)=="\n"?(this._line++,this._col=1):this._col++,e=this._input.charAt(this._cursor++)),e},mark:function(){this._bookmark={cursor:this._cursor,line:this._line,col:this._col}},reset:function(){this._bookmark&&(this._cursor=this._bookmark.cursor,this._line=this._bookmark.line,this._col=this._bookmark.col,delete this._bookmark)},readTo:function(e){var t="",n;while(t.length<e.length||t.lastIndexOf(e)!=t.length-e.length){n=this.read();if(!n)throw new Error('Expected "'+e+'" at line '+this._line+", col "+this._col+".");t+=n}return t},readWhile:function(e){var t="",n=this.read();while(n!==null&&e(n))t+=n,n=this.read();return t},readMatch:function(e){var t=this._input.substring(this._cursor),n=null;return typeof e=="string"?t.indexOf(e)===0&&(n=this.readCount(e.length)):e instanceof RegExp&&e.test(t)&&(n=this.readCount(RegExp.lastMatch.length)),n},readCount:function(e){var t="";while(e--)t+=this.read();return t}},n.prototype=new Error,r.fromToken=function(e){return new r(e.value,e.startLine,e.startCol)},r.prototype={constructor:r,valueOf:function(){return this.toString()},toString:function(){return this.text}},i.createTokenData=function(e){var t=[],n={},r=e.concat([]),i=0,s=r.length+1;r.UNKNOWN=-1,r.unshift({name:"EOF"});for(;i<s;i++)t.push(r[i].name),r[r[i].name]=i,r[i].text&&(n[r[i].text]=i);return r.name=function(e){return t[e]},r.type=function(e){return n[e]},r},i.prototype={constructor:i,match:function(e,t){e instanceof Array||(e=[e]);var n=this.get(t),r=0,i=e.length;while(r<i)if(n==e[r++])return!0;return this.unget(),!1},mustMatch:function(e,t){var r;e instanceof Array||(e=[e]);if(!this.match.apply(this,arguments))throw r=this.LT(1),new n("Expected "+this._tokenData[e[0]].name+" at line "+r.startLine+", col "+r.startCol+".",r.startLine,r.startCol)},advance:function(e,t){while(this.LA(0)!==0&&!this.match(e,t))this.get();return this.LA(0)},get:function(e){var t=this._tokenData,n=this._reader,r,i=0,s=t.length,o=!1,u,a;if(this._lt.length&&this._ltIndex>=0&&this._ltIndex<this._lt.length){i++,this._token=this._lt[this._ltIndex++],a=t[this._token.type];while(a.channel!==undefined&&e!==a.channel&&this._ltIndex<this._lt.length)this._token=this._lt[this._ltIndex++],a=t[this._token.type],i++;if((a.channel===undefined||e===a.channel)&&this._ltIndex<=this._lt.length)return this._ltIndexCache.push(i),this._token.type}return u=this._getToken(),u.type>-1&&!t[u.type].hide&&(u.channel=t[u.type].channel,this._token=u,this._lt.push(u),this._ltIndexCache.push(this._lt.length-this._ltIndex+i),this._lt.length>5&&this._lt.shift(),this._ltIndexCache.length>5&&this._ltIndexCache.shift(),this._ltIndex=this._lt.length),a=t[u.type],a&&(a.hide||a.channel!==undefined&&e!==a.channel)?this.get(e):u.type},LA:function(e){var t=e,n;if(e>0){if(e>5)throw new Error("Too much lookahead.");while(t)n=this.get(),t--;while(t<e)this.unget(),t++}else if(e<0){if(!this._lt[this._ltIndex+e])throw new Error("Too much lookbehind.");n=this._lt[this._ltIndex+e].type}else n=this._token.type;return n},LT:function(e){return this.LA(e),this._lt[this._ltIndex+e-1]},peek:function(){return this.LA(1)},token:function(){return this._token},tokenName:function(e){return e<0||e>this._tokenData.length?"UNKNOWN_TOKEN":this._tokenData[e].name},tokenType:function(e){return this._tokenData[e]||-1},unget:function(){if(!this._ltIndexCache.length)throw new Error("Too much lookahead.");this._ltIndex-=this._ltIndexCache.pop(),this._token=this._lt[this._ltIndex-1]}},parserlib.util={StringReader:t,SyntaxError:n,SyntaxUnit:r,EventTarget:e,TokenStreamBase:i}})(),function(){function Combinator(e,t,n){SyntaxUnit.call(this,e,t,n,Parser.COMBINATOR_TYPE),this.type="unknown",/^\s+$/.test(e)?this.type="descendant":e==">"?this.type="child":e=="+"?this.type="adjacent-sibling":e=="~"&&(this.type="sibling")}function MediaFeature(e,t){SyntaxUnit.call(this,"("+e+(t!==null?":"+t:"")+")",e.startLine,e.startCol,Parser.MEDIA_FEATURE_TYPE),this.name=e,this.value=t}function MediaQuery(e,t,n,r,i){SyntaxUnit.call(this,(e?e+" ":"")+(t?t:"")+(t&&n.length>0?" and ":"")+n.join(" and "),r,i,Parser.MEDIA_QUERY_TYPE),this.modifier=e,this.mediaType=t,this.features=n}function Parser(e){EventTarget.call(this),this.options=e||{},this._tokenStream=null}function PropertyName(e,t,n,r){SyntaxUnit.call(this,e,n,r,Parser.PROPERTY_NAME_TYPE),this.hack=t}function PropertyValue(e,t,n){SyntaxUnit.call(this,e.join(" "),t,n,Parser.PROPERTY_VALUE_TYPE),this.parts=e}function PropertyValueIterator(e){this._i=0,this._parts=e.parts,this._marks=[],this.value=e}function PropertyValuePart(text,line,col){SyntaxUnit.call(this,text,line,col,Parser.PROPERTY_VALUE_PART_TYPE),this.type="unknown";var temp;if(/^([+\-]?[\d\.]+)([a-z]+)$/i.test(text)){this.type="dimension",this.value=+RegExp.$1,this.units=RegExp.$2;switch(this.units.toLowerCase()){case"em":case"rem":case"ex":case"px":case"cm":case"mm":case"in":case"pt":case"pc":case"ch":case"vh":case"vw":case"vm":this.type="length";break;case"deg":case"rad":case"grad":this.type="angle";break;case"ms":case"s":this.type="time";break;case"hz":case"khz":this.type="frequency";break;case"dpi":case"dpcm":this.type="resolution"}}else/^([+\-]?[\d\.]+)%$/i.test(text)?(this.type="percentage",this.value=+RegExp.$1):/^([+\-]?[\d\.]+)%$/i.test(text)?(this.type="percentage",this.value=+RegExp.$1):/^([+\-]?\d+)$/i.test(text)?(this.type="integer",this.value=+RegExp.$1):/^([+\-]?[\d\.]+)$/i.test(text)?(this.type="number",this.value=+RegExp.$1):/^#([a-f0-9]{3,6})/i.test(text)?(this.type="color",temp=RegExp.$1,temp.length==3?(this.red=parseInt(temp.charAt(0)+temp.charAt(0),16),this.green=parseInt(temp.charAt(1)+temp.charAt(1),16),this.blue=parseInt(temp.charAt(2)+temp.charAt(2),16)):(this.red=parseInt(temp.substring(0,2),16),this.green=parseInt(temp.substring(2,4),16),this.blue=parseInt(temp.substring(4,6),16))):/^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1,this.green=+RegExp.$2,this.blue=+RegExp.$3):/^rgb\(\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1*255/100,this.green=+RegExp.$2*255/100,this.blue=+RegExp.$3*255/100):/^rgba\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d\.]+)\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1,this.green=+RegExp.$2,this.blue=+RegExp.$3,this.alpha=+RegExp.$4):/^rgba\(\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d\.]+)\s*\)/i.test(text)?(this.type="color",this.red=+RegExp.$1*255/100,this.green=+RegExp.$2*255/100,this.blue=+RegExp.$3*255/100,this.alpha=+RegExp.$4):/^hsl\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*\)/i.test(text)?(this.type="color",this.hue=+RegExp.$1,this.saturation=+RegExp.$2/100,this.lightness=+RegExp.$3/100):/^hsla\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*,\s*([\d\.]+)\s*\)/i.test(text)?(this.type="color",this.hue=+RegExp.$1,this.saturation=+RegExp.$2/100,this.lightness=+RegExp.$3/100,this.alpha=+RegExp.$4):/^url\(["']?([^\)"']+)["']?\)/i.test(text)?(this.type="uri",this.uri=RegExp.$1):/^([^\(]+)\(/i.test(text)?(this.type="function",this.name=RegExp.$1,this.value=text):/^["'][^"']*["']/.test(text)?(this.type="string",this.value=eval(text)):Colors[text.toLowerCase()]?(this.type="color",temp=Colors[text.toLowerCase()].substring(1),this.red=parseInt(temp.substring(0,2),16),this.green=parseInt(temp.substring(2,4),16),this.blue=parseInt(temp.substring(4,6),16)):/^[\,\/]$/.test(text)?(this.type="operator",this.value=text):/^[a-z\-\u0080-\uFFFF][a-z0-9\-\u0080-\uFFFF]*$/i.test(text)&&(this.type="identifier",this.value=text)}function Selector(e,t,n){SyntaxUnit.call(this,e.join(" "),t,n,Parser.SELECTOR_TYPE),this.parts=e,this.specificity=Specificity.calculate(this)}function SelectorPart(e,t,n,r,i){SyntaxUnit.call(this,n,r,i,Parser.SELECTOR_PART_TYPE),this.elementName=e,this.modifiers=t}function SelectorSubPart(e,t,n,r){SyntaxUnit.call(this,e,n,r,Parser.SELECTOR_SUB_PART_TYPE),this.type=t,this.args=[]}function Specificity(e,t,n,r){this.a=e,this.b=t,this.c=n,this.d=r}function isHexDigit(e){return e!==null&&h.test(e)}function isDigit(e){return e!==null&&/\d/.test(e)}function isWhitespace(e){return e!==null&&/\s/.test(e)}function isNewLine(e){return e!==null&&nl.test(e)}function isNameStart(e){return e!==null&&/[a-z_\u0080-\uFFFF\\]/i.test(e)}function isNameChar(e){return e!==null&&(isNameStart(e)||/[0-9\-\\]/.test(e))}function isIdentStart(e){return e!==null&&(isNameStart(e)||/\-\\/.test(e))}function mix(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}function TokenStream(e){TokenStreamBase.call(this,e,Tokens)}function ValidationError(e,t,n){this.col=n,this.line=t,this.message=e}var EventTarget=parserlib.util.EventTarget,TokenStreamBase=parserlib.util.TokenStreamBase,StringReader=parserlib.util.StringReader,SyntaxError=parserlib.util.SyntaxError,SyntaxUnit=parserlib.util.SyntaxUnit,Colors={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32",activeBorder:"Active window border.",activecaption:"Active window caption.",appworkspace:"Background color of multiple document interface.",background:"Desktop background.",buttonface:"The face background color for 3-D elements that appear 3-D due to one layer of surrounding border.",buttonhighlight:"The color of the border facing the light source for 3-D elements that appear 3-D due to one layer of surrounding border.",buttonshadow:"The color of the border away from the light source for 3-D elements that appear 3-D due to one layer of surrounding border.",buttontext:"Text on push buttons.",captiontext:"Text in caption, size box, and scrollbar arrow box.",graytext:"Grayed (disabled) text. This color is set to #000 if the current display driver does not support a solid gray color.",highlight:"Item(s) selected in a control.",highlighttext:"Text of item(s) selected in a control.",inactiveborder:"Inactive window border.",inactivecaption:"Inactive window caption.",inactivecaptiontext:"Color of text in an inactive caption.",infobackground:"Background color for tooltip controls.",infotext:"Text color for tooltip controls.",menu:"Menu background.",menutext:"Text in menus.",scrollbar:"Scroll bar gray area.",threeddarkshadow:"The color of the darker (generally outer) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedface:"The face background color for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedhighlight:"The color of the lighter (generally outer) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedlightshadow:"The color of the darker (generally inner) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",threedshadow:"The color of the lighter (generally inner) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.",window:"Window background.",windowframe:"Window frame.",windowtext:"Text in windows."};Combinator.prototype=new SyntaxUnit,Combinator.prototype.constructor=Combinator,MediaFeature.prototype=new SyntaxUnit,MediaFeature.prototype.constructor=MediaFeature,MediaQuery.prototype=new SyntaxUnit,MediaQuery.prototype.constructor=MediaQuery,Parser.DEFAULT_TYPE=0,Parser.COMBINATOR_TYPE=1,Parser.MEDIA_FEATURE_TYPE=2,Parser.MEDIA_QUERY_TYPE=3,Parser.PROPERTY_NAME_TYPE=4,Parser.PROPERTY_VALUE_TYPE=5,Parser.PROPERTY_VALUE_PART_TYPE=6,Parser.SELECTOR_TYPE=7,Parser.SELECTOR_PART_TYPE=8,Parser.SELECTOR_SUB_PART_TYPE=9,Parser.prototype=function(){var e=new EventTarget,t,n={constructor:Parser,DEFAULT_TYPE:0,COMBINATOR_TYPE:1,MEDIA_FEATURE_TYPE:2,MEDIA_QUERY_TYPE:3,PROPERTY_NAME_TYPE:4,PROPERTY_VALUE_TYPE:5,PROPERTY_VALUE_PART_TYPE:6,SELECTOR_TYPE:7,SELECTOR_PART_TYPE:8,SELECTOR_SUB_PART_TYPE:9,_stylesheet:function(){var e=this._tokenStream,t=null,n,r,i;this.fire("startstylesheet"),this._charset(),this._skipCruft();while(e.peek()==Tokens.IMPORT_SYM)this._import(),this._skipCruft();while(e.peek()==Tokens.NAMESPACE_SYM)this._namespace(),this._skipCruft();i=e.peek();while(i>Tokens.EOF){try{switch(i){case Tokens.MEDIA_SYM:this._media(),this._skipCruft();break;case Tokens.PAGE_SYM:this._page(),this._skipCruft();break;case Tokens.FONT_FACE_SYM:this._font_face(),this._skipCruft();break;case Tokens.KEYFRAMES_SYM:this._keyframes(),this._skipCruft();break;case Tokens.VIEWPORT_SYM:this._viewport(),this._skipCruft();break;case Tokens.UNKNOWN_SYM:e.get();if(!!this.options.strict)throw new SyntaxError("Unknown @ rule.",e.LT(0).startLine,e.LT(0).startCol);this.fire({type:"error",error:null,message:"Unknown @ rule: "+e.LT(0).value+".",line:e.LT(0).startLine,col:e.LT(0).startCol}),n=0;while(e.advance([Tokens.LBRACE,Tokens.RBRACE])==Tokens.LBRACE)n++;while(n)e.advance([Tokens.RBRACE]),n--;break;case Tokens.S:this._readWhitespace();break;default:if(!this._ruleset())switch(i){case Tokens.CHARSET_SYM:throw r=e.LT(1),this._charset(!1),new SyntaxError("@charset not allowed here.",r.startLine,r.startCol);case Tokens.IMPORT_SYM:throw r=e.LT(1),this._import(!1),new SyntaxError("@import not allowed here.",r.startLine,r.startCol);case Tokens.NAMESPACE_SYM:throw r=e.LT(1),this._namespace(!1),new SyntaxError("@namespace not allowed here.",r.startLine,r.startCol);default:e.get(),this._unexpectedToken(e.token())}}}catch(s){if(!(s instanceof SyntaxError&&!this.options.strict))throw s;this.fire({type:"error",error:s,message:s.message,line:s.line,col:s.col})}i=e.peek()}i!=Tokens.EOF&&this._unexpectedToken(e.token()),this.fire("endstylesheet")},_charset:function(e){var t=this._tokenStream,n,r,i,s;t.match(Tokens.CHARSET_SYM)&&(i=t.token().startLine,s=t.token().startCol,this._readWhitespace(),t.mustMatch(Tokens.STRING),r=t.token(),n=r.value,this._readWhitespace(),t.mustMatch(Tokens.SEMICOLON),e!==!1&&this.fire({type:"charset",charset:n,line:i,col:s}))},_import:function(e){var t=this._tokenStream,n,r,i,s=[];t.mustMatch(Tokens.IMPORT_SYM),i=t.token(),this._readWhitespace(),t.mustMatch([Tokens.STRING,Tokens.URI]),r=t.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/,"$1"),this._readWhitespace(),s=this._media_query_list(),t.mustMatch(Tokens.SEMICOLON),this._readWhitespace(),e!==!1&&this.fire({type:"import",uri:r,media:s,line:i.startLine,col:i.startCol})},_namespace:function(e){var t=this._tokenStream,n,r,i,s;t.mustMatch(Tokens.NAMESPACE_SYM),n=t.token().startLine,r=t.token().startCol,this._readWhitespace(),t.match(Tokens.IDENT)&&(i=t.token().value,this._readWhitespace()),t.mustMatch([Tokens.STRING,Tokens.URI]),s=t.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/,"$1"),this._readWhitespace(),t.mustMatch(Tokens.SEMICOLON),this._readWhitespace(),e!==!1&&this.fire({type:"namespace",prefix:i,uri:s,line:n,col:r})},_media:function(){var e=this._tokenStream,t,n,r;e.mustMatch(Tokens.MEDIA_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),r=this._media_query_list(),e.mustMatch(Tokens.LBRACE),this._readWhitespace(),this.fire({type:"startmedia",media:r,line:t,col:n});for(;;)if(e.peek()==Tokens.PAGE_SYM)this._page();else if(e.peek()==Tokens.FONT_FACE_SYM)this._font_face();else if(!this._ruleset())break;e.mustMatch(Tokens.RBRACE),this._readWhitespace(),this.fire({type:"endmedia",media:r,line:t,col:n})},_media_query_list:function(){var e=this._tokenStream,t=[];this._readWhitespace(),(e.peek()==Tokens.IDENT||e.peek()==Tokens.LPAREN)&&t.push(this._media_query());while(e.match(Tokens.COMMA))this._readWhitespace(),t.push(this._media_query());return t},_media_query:function(){var e=this._tokenStream,t=null,n=null,r=null,i=[];e.match(Tokens.IDENT)&&(n=e.token().value.toLowerCase(),n!="only"&&n!="not"?(e.unget(),n=null):r=e.token()),this._readWhitespace(),e.peek()==Tokens.IDENT?(t=this._media_type(),r===null&&(r=e.token())):e.peek()==Tokens.LPAREN&&(r===null&&(r=e.LT(1)),i.push(this._media_expression()));if(t===null&&i.length===0)return null;this._readWhitespace();while(e.match(Tokens.IDENT))e.token().value.toLowerCase()!="and"&&this._unexpectedToken(e.token()),this._readWhitespace(),i.push(this._media_expression());return new MediaQuery(n,t,i,r.startLine,r.startCol)},_media_type:function(){return this._media_feature()},_media_expression:function(){var e=this._tokenStream,t=null,n,r=null;return e.mustMatch(Tokens.LPAREN),t=this._media_feature(),this._readWhitespace(),e.match(Tokens.COLON)&&(this._readWhitespace(),n=e.LT(1),r=this._expression()),e.mustMatch(Tokens.RPAREN),this._readWhitespace(),new MediaFeature(t,r?new SyntaxUnit(r,n.startLine,n.startCol):null)},_media_feature:function(){var e=this._tokenStream;return e.mustMatch(Tokens.IDENT),SyntaxUnit.fromToken(e.token())},_page:function(){var e=this._tokenStream,t,n,r=null,i=null;e.mustMatch(Tokens.PAGE_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),e.match(Tokens.IDENT)&&(r=e.token().value,r.toLowerCase()==="auto"&&this._unexpectedToken(e.token())),e.peek()==Tokens.COLON&&(i=this._pseudo_page()),this._readWhitespace(),this.fire({type:"startpage",id:r,pseudo:i,line:t,col:n}),this._readDeclarations(!0,!0),this.fire({type:"endpage",id:r,pseudo:i,line:t,col:n})},_margin:function(){var e=this._tokenStream,t,n,r=this._margin_sym();return r?(t=e.token().startLine,n=e.token().startCol,this.fire({type:"startpagemargin",margin:r,line:t,col:n}),this._readDeclarations(!0),this.fire({type:"endpagemargin",margin:r,line:t,col:n}),!0):!1},_margin_sym:function(){var e=this._tokenStream;return e.match([Tokens.TOPLEFTCORNER_SYM,Tokens.TOPLEFT_SYM,Tokens.TOPCENTER_SYM,Tokens.TOPRIGHT_SYM,Tokens.TOPRIGHTCORNER_SYM,Tokens.BOTTOMLEFTCORNER_SYM,Tokens.BOTTOMLEFT_SYM,Tokens.BOTTOMCENTER_SYM,Tokens.BOTTOMRIGHT_SYM,Tokens.BOTTOMRIGHTCORNER_SYM,Tokens.LEFTTOP_SYM,Tokens.LEFTMIDDLE_SYM,Tokens.LEFTBOTTOM_SYM,Tokens.RIGHTTOP_SYM,Tokens.RIGHTMIDDLE_SYM,Tokens.RIGHTBOTTOM_SYM])?SyntaxUnit.fromToken(e.token()):null},_pseudo_page:function(){var e=this._tokenStream;return e.mustMatch(Tokens.COLON),e.mustMatch(Tokens.IDENT),e.token().value},_font_face:function(){var e=this._tokenStream,t,n;e.mustMatch(Tokens.FONT_FACE_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),this.fire({type:"startfontface",line:t,col:n}),this._readDeclarations(!0),this.fire({type:"endfontface",line:t,col:n})},_viewport:function(){var e=this._tokenStream,t,n;e.mustMatch(Tokens.VIEWPORT_SYM),t=e.token().startLine,n=e.token().startCol,this._readWhitespace(),this.fire({type:"startviewport",line:t,col:n}),this._readDeclarations(!0),this.fire({type:"endviewport",line:t,col:n})},_operator:function(e){var t=this._tokenStream,n=null;if(t.match([Tokens.SLASH,Tokens.COMMA])||e&&t.match([Tokens.PLUS,Tokens.STAR,Tokens.MINUS]))n=t.token(),this._readWhitespace();return n?PropertyValuePart.fromToken(n):null},_combinator:function(){var e=this._tokenStream,t=null,n;return e.match([Tokens.PLUS,Tokens.GREATER,Tokens.TILDE])&&(n=e.token(),t=new Combinator(n.value,n.startLine,n.startCol),this._readWhitespace()),t},_unary_operator:function(){var e=this._tokenStream;return e.match([Tokens.MINUS,Tokens.PLUS])?e.token().value:null},_property:function(){var e=this._tokenStream,t=null,n=null,r,i,s,o;return e.peek()==Tokens.STAR&&this.options.starHack&&(e.get(),i=e.token(),n=i.value,s=i.startLine,o=i.startCol),e.match(Tokens.IDENT)&&(i=e.token(),r=i.value,r.charAt(0)=="_"&&this.options.underscoreHack&&(n="_",r=r.substring(1)),t=new PropertyName(r,n,s||i.startLine,o||i.startCol),this._readWhitespace()),t},_ruleset:function(){var e=this._tokenStream,t,n;try{n=this._selectors_group()}catch(r){if(r instanceof SyntaxError&&!this.options.strict){this.fire({type:"error",error:r,message:r.message,line:r.line,col:r.col}),t=e.advance([Tokens.RBRACE]);if(t!=Tokens.RBRACE)throw r;return!0}throw r}return n&&(this.fire({type:"startrule",selectors:n,line:n[0].line,col:n[0].col}),this._readDeclarations(!0),this.fire({type:"endrule",selectors:n,line:n[0].line,col:n[0].col})),n},_selectors_group:function(){var e=this._tokenStream,t=[],n;n=this._selector();if(n!==null){t.push(n);while(e.match(Tokens.COMMA))this._readWhitespace(),n=this._selector(),n!==null?t.push(n):this._unexpectedToken(e.LT(1))}return t.length?t:null},_selector:function(){var e=this._tokenStream,t=[],n=null,r=null,i=null;n=this._simple_selector_sequence();if(n===null)return null;t.push(n);do{r=this._combinator();if(r!==null)t.push(r),n=this._simple_selector_sequence(),n===null?this._unexpectedToken(e.LT(1)):t.push(n);else{if(!this._readWhitespace())break;i=new Combinator(e.token().value,e.token().startLine,e.token().startCol),r=this._combinator(),n=this._simple_selector_sequence(),n===null?r!==null&&this._unexpectedToken(e.LT(1)):(r!==null?t.push(r):t.push(i),t.push(n))}}while(!0);return new Selector(t,t[0].line,t[0].col)},_simple_selector_sequence:function(){var e=this._tokenStream,t=null,n=[],r="",i=[function(){return e.match(Tokens.HASH)?new SelectorSubPart(e.token().value,"id",e.token().startLine,e.token().startCol):null},this._class,this._attrib,this._pseudo,this._negation],s=0,o=i.length,u=null,a=!1,f,l;f=e.LT(1).startLine,l=e.LT(1).startCol,t=this._type_selector(),t||(t=this._universal()),t!==null&&(r+=t);for(;;){if(e.peek()===Tokens.S)break;while(s<o&&u===null)u=i[s++].call(this);if(u===null){if(r==="")return null;break}s=0,n.push(u),r+=u.toString(),u=null}return r!==""?new SelectorPart(t,n,r,f,l):null},_type_selector:function(){var e=this._tokenStream,t=this._namespace_prefix(),n=this._element_name();return n?(t&&(n.text=t+n.text,n.col-=t.length),n):(t&&(e.unget(),t.length>1&&e.unget()),null)},_class:function(){var e=this._tokenStream,t;return e.match(Tokens.DOT)?(e.mustMatch(Tokens.IDENT),t=e.token(),new SelectorSubPart("."+t.value,"class",t.startLine,t.startCol-1)):null},_element_name:function(){var e=this._tokenStream,t;return e.match(Tokens.IDENT)?(t=e.token(),new SelectorSubPart(t.value,"elementName",t.startLine,t.startCol)):null},_namespace_prefix:function(){var e=this._tokenStream,t="";if(e.LA(1)===Tokens.PIPE||e.LA(2)===Tokens.PIPE)e.match([Tokens.IDENT,Tokens.STAR])&&(t+=e.token().value),e.mustMatch(Tokens.PIPE),t+="|";return t.length?t:null},_universal:function(){var e=this._tokenStream,t="",n;return n=this._namespace_prefix(),n&&(t+=n),e.match(Tokens.STAR)&&(t+="*"),t.length?t:null},_attrib:function(){var e=this._tokenStream,t=null,n,r;return e.match(Tokens.LBRACKET)?(r=e.token(),t=r.value,t+=this._readWhitespace(),n=this._namespace_prefix(),n&&(t+=n),e.mustMatch(Tokens.IDENT),t+=e.token().value,t+=this._readWhitespace(),e.match([Tokens.PREFIXMATCH,Tokens.SUFFIXMATCH,Tokens.SUBSTRINGMATCH,Tokens.EQUALS,Tokens.INCLUDES,Tokens.DASHMATCH])&&(t+=e.token().value,t+=this._readWhitespace(),e.mustMatch([Tokens.IDENT,Tokens.STRING]),t+=e.token().value,t+=this._readWhitespace()),e.mustMatch(Tokens.RBRACKET),new SelectorSubPart(t+"]","attribute",r.startLine,r.startCol)):null},_pseudo:function(){var e=this._tokenStream,t=null,n=":",r,i;return e.match(Tokens.COLON)&&(e.match(Tokens.COLON)&&(n+=":"),e.match(Tokens.IDENT)?(t=e.token().value,r=e.token().startLine,i=e.token().startCol-n.length):e.peek()==Tokens.FUNCTION&&(r=e.LT(1).startLine,i=e.LT(1).startCol-n.length,t=this._functional_pseudo()),t&&(t=new SelectorSubPart(n+t,"pseudo",r,i))),t},_functional_pseudo:function(){var e=this._tokenStream,t=null;return e.match(Tokens.FUNCTION)&&(t=e.token().value,t+=this._readWhitespace(),t+=this._expression(),e.mustMatch(Tokens.RPAREN),t+=")"),t},_expression:function(){var e=this._tokenStream,t="";while(e.match([Tokens.PLUS,Tokens.MINUS,Tokens.DIMENSION,Tokens.NUMBER,Tokens.STRING,Tokens.IDENT,Tokens.LENGTH,Tokens.FREQ,Tokens.ANGLE,Tokens.TIME,Tokens.RESOLUTION,Tokens.SLASH]))t+=e.token().value,t+=this._readWhitespace();return t.length?t:null},_negation:function(){var e=this._tokenStream,t,n,r="",i,s=null;return e.match(Tokens.NOT)&&(r=e.token().value,t=e.token().startLine,n=e.token().startCol,r+=this._readWhitespace(),i=this._negation_arg(),r+=i,r+=this._readWhitespace(),e.match(Tokens.RPAREN),r+=e.token().value,s=new SelectorSubPart(r,"not",t,n),s.args.push(i)),s},_negation_arg:function(){var e=this._tokenStream,t=[this._type_selector,this._universal,function(){return e.match(Tokens.HASH)?new SelectorSubPart(e.token().value,"id",e.token().startLine,e.token().startCol):null},this._class,this._attrib,this._pseudo],n=null,r=0,i=t.length,s,o,u,a;o=e.LT(1).startLine,u=e.LT(1).startCol;while(r<i&&n===null)n=t[r].call(this),r++;return n===null&&this._unexpectedToken(e.LT(1)),n.type=="elementName"?a=new SelectorPart(n,[],n.toString(),o,u):a=new SelectorPart(null,[n],n.toString(),o,u),a},_declaration:function(){var e=this._tokenStream,t=null,n=null,r=null,i=null,s=null,o="";t=this._property();if(t!==null){e.mustMatch(Tokens.COLON),this._readWhitespace(),n=this._expr(),(!n||n.length===0)&&this._unexpectedToken(e.LT(1)),r=this._prio(),o=t.toString();if(this.options.starHack&&t.hack=="*"||this.options.underscoreHack&&t.hack=="_")o=t.text;try{this._validateProperty(o,n)}catch(u){s=u}return this.fire({type:"property",property:t,value:n,important:r,line:t.line,col:t.col,invalid:s}),!0}return!1},_prio:function(){var e=this._tokenStream,t=e.match(Tokens.IMPORTANT_SYM);return this._readWhitespace(),t},_expr:function(e){var t=this._tokenStream,n=[],r=null,i=null;r=this._term();if(r!==null){n.push(r);do{i=this._operator(e),i&&n.push(i),r=this._term();if(r===null)break;n.push(r)}while(!0)}return n.length>0?new PropertyValue(n,n[0].line,n[0].col):null},_term:function(){var e=this._tokenStream,t=null,n=null,r,i,s;return t=this._unary_operator(),t!==null&&(i=e.token().startLine,s=e.token().startCol),e.peek()==Tokens.IE_FUNCTION&&this.options.ieFilters?(n=this._ie_function(),t===null&&(i=e.token().startLine,s=e.token().startCol)):e.match([Tokens.NUMBER,Tokens.PERCENTAGE,Tokens.LENGTH,Tokens.ANGLE,Tokens.TIME,Tokens.FREQ,Tokens.STRING,Tokens.IDENT,Tokens.URI,Tokens.UNICODE_RANGE])?(n=e.token().value,t===null&&(i=e.token().startLine,s=e.token().startCol),this._readWhitespace()):(r=this._hexcolor(),r===null?(t===null&&(i=e.LT(1).startLine,s=e.LT(1).startCol),n===null&&(e.LA(3)==Tokens.EQUALS&&this.options.ieFilters?n=this._ie_function():n=this._function())):(n=r.value,t===null&&(i=r.startLine,s=r.startCol))),n!==null?new PropertyValuePart(t!==null?t+n:n,i,s):null},_function:function(){var e=this._tokenStream,t=null,n=null,r;if(e.match(Tokens.FUNCTION)){t=e.token().value,this._readWhitespace(),n=this._expr(!0),t+=n;if(this.options.ieFilters&&e.peek()==Tokens.EQUALS)do{this._readWhitespace()&&(t+=e.token().value),e.LA(0)==Tokens.COMMA&&(t+=e.token().value),e.match(Tokens.IDENT),t+=e.token().value,e.match(Tokens.EQUALS),t+=e.token().value,r=e.peek();while(r!=Tokens.COMMA&&r!=Tokens.S&&r!=Tokens.RPAREN)e.get(),t+=e.token().value,r=e.peek()}while(e.match([Tokens.COMMA,Tokens.S]));e.match(Tokens.RPAREN),t+=")",this._readWhitespace()}return t},_ie_function:function(){var e=this._tokenStream,t=null,n=null,r;if(e.match([Tokens.IE_FUNCTION,Tokens.FUNCTION])){t=e.token().value;do{this._readWhitespace()&&(t+=e.token().value),e.LA(0)==Tokens.COMMA&&(t+=e.token().value),e.match(Tokens.IDENT),t+=e.token().value,e.match(Tokens.EQUALS),t+=e.token().value,r=e.peek();while(r!=Tokens.COMMA&&r!=Tokens.S&&r!=Tokens.RPAREN)e.get(),t+=e.token().value,r=e.peek()}while(e.match([Tokens.COMMA,Tokens.S]));e.match(Tokens.RPAREN),t+=")",this._readWhitespace()}return t},_hexcolor:function(){var e=this._tokenStream,t=null,n;if(e.match(Tokens.HASH)){t=e.token(),n=t.value;if(!/#[a-f0-9]{3,6}/i.test(n))throw new SyntaxError("Expected a hex color but found '"+n+"' at line "+t.startLine+", col "+t.startCol+".",t.startLine,t.startCol);this._readWhitespace()}return t},_keyframes:function(){var e=this._tokenStream,t,n,r,i="";e.mustMatch(Tokens.KEYFRAMES_SYM),t=e.token(),/^@\-([^\-]+)\-/.test(t.value)&&(i=RegExp.$1),this._readWhitespace(),r=this._keyframe_name(),this._readWhitespace(),e.mustMatch(Tokens.LBRACE),this.fire({type:"startkeyframes",name:r,prefix:i,line:t.startLine,col:t.startCol}),this._readWhitespace(),n=e.peek();while(n==Tokens.IDENT||n==Tokens.PERCENTAGE)this._keyframe_rule(),this._readWhitespace(),n=e.peek();this.fire({type:"endkeyframes",name:r,prefix:i,line:t.startLine,col:t.startCol}),this._readWhitespace(),e.mustMatch(Tokens.RBRACE)},_keyframe_name:function(){var e=this._tokenStream,t;return e.mustMatch([Tokens.IDENT,Tokens.STRING]),SyntaxUnit.fromToken(e.token())},_keyframe_rule:function(){var e=this._tokenStream,t,n=this._key_list();this.fire({type:"startkeyframerule",keys:n,line:n[0].line,col:n[0].col}),this._readDeclarations(!0),this.fire({type:"endkeyframerule",keys:n,line:n[0].line,col:n[0].col})},_key_list:function(){var e=this._tokenStream,t,n,r=[];r.push(this._key()),this._readWhitespace();while(e.match(Tokens.COMMA))this._readWhitespace(),r.push(this._key()),this._readWhitespace();return r},_key:function(){var e=this._tokenStream,t;if(e.match(Tokens.PERCENTAGE))return SyntaxUnit.fromToken(e.token());if(e.match(Tokens.IDENT)){t=e.token();if(/from|to/i.test(t.value))return SyntaxUnit.fromToken(t);e.unget()}this._unexpectedToken(e.LT(1))},_skipCruft:function(){while(this._tokenStream.match([Tokens.S,Tokens.CDO,Tokens.CDC]));},_readDeclarations:function(e,t){var n=this._tokenStream,r;this._readWhitespace(),e&&n.mustMatch(Tokens.LBRACE),this._readWhitespace();try{for(;;){if(!(n.match(Tokens.SEMICOLON)||t&&this._margin())){if(!this._declaration())break;if(!n.match(Tokens.SEMICOLON))break}this._readWhitespace()}n.mustMatch(Tokens.RBRACE),this._readWhitespace()}catch(i){if(!(i instanceof SyntaxError&&!this.options.strict))throw i;this.fire({type:"error",error:i,message:i.message,line:i.line,col:i.col}),r=n.advance([Tokens.SEMICOLON,Tokens.RBRACE]);if(r==Tokens.SEMICOLON)this._readDeclarations(!1,t);else if(r!=Tokens.RBRACE)throw i}},_readWhitespace:function(){var e=this._tokenStream,t="";while(e.match(Tokens.S))t+=e.token().value;return t},_unexpectedToken:function(e){throw new SyntaxError("Unexpected token '"+e.value+"' at line "+e.startLine+", col "+e.startCol+".",e.startLine,e.startCol)},_verifyEnd:function(){this._tokenStream.LA(1)!=Tokens.EOF&&this._unexpectedToken(this._tokenStream.LT(1))},_validateProperty:function(e,t){Validation.validate(e,t)},parse:function(e){this._tokenStream=new TokenStream(e,Tokens),this._stylesheet()},parseStyleSheet:function(e){return this.parse(e)},parseMediaQuery:function(e){this._tokenStream=new TokenStream(e,Tokens);var t=this._media_query();return this._verifyEnd(),t},parsePropertyValue:function(e){this._tokenStream=new TokenStream(e,Tokens),this._readWhitespace();var t=this._expr();return this._readWhitespace(),this._verifyEnd(),t},parseRule:function(e){this._tokenStream=new TokenStream(e,Tokens),this._readWhitespace();var t=this._ruleset();return this._readWhitespace(),this._verifyEnd(),t},parseSelector:function(e){this._tokenStream=new TokenStream(e,Tokens),this._readWhitespace();var t=this._selector();return this._readWhitespace(),this._verifyEnd(),t},parseStyleAttribute:function(e){e+="}",this._tokenStream=new TokenStream(e,Tokens),this._readDeclarations()}};for(t in n)n.hasOwnProperty(t)&&(e[t]=n[t]);return e}();var Properties={"alignment-adjust":"auto | baseline | before-edge | text-before-edge | middle | central | after-edge | text-after-edge | ideographic | alphabetic | hanging | mathematical | <percentage> | <length>","alignment-baseline":"baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical",animation:1,"animation-delay":{multi:"<time>",comma:!0},"animation-direction":{multi:"normal | alternate",comma:!0},"animation-duration":{multi:"<time>",comma:!0},"animation-iteration-count":{multi:"<number> | infinite",comma:!0},"animation-name":{multi:"none | <ident>",comma:!0},"animation-play-state":{multi:"running | paused",comma:!0},"animation-timing-function":1,"-moz-animation-delay":{multi:"<time>",comma:!0},"-moz-animation-direction":{multi:"normal | alternate",comma:!0},"-moz-animation-duration":{multi:"<time>",comma:!0},"-moz-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-moz-animation-name":{multi:"none | <ident>",comma:!0},"-moz-animation-play-state":{multi:"running | paused",comma:!0},"-ms-animation-delay":{multi:"<time>",comma:!0},"-ms-animation-direction":{multi:"normal | alternate",comma:!0},"-ms-animation-duration":{multi:"<time>",comma:!0},"-ms-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-ms-animation-name":{multi:"none | <ident>",comma:!0},"-ms-animation-play-state":{multi:"running | paused",comma:!0},"-webkit-animation-delay":{multi:"<time>",comma:!0},"-webkit-animation-direction":{multi:"normal | alternate",comma:!0},"-webkit-animation-duration":{multi:"<time>",comma:!0},"-webkit-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-webkit-animation-name":{multi:"none | <ident>",comma:!0},"-webkit-animation-play-state":{multi:"running | paused",comma:!0},"-o-animation-delay":{multi:"<time>",comma:!0},"-o-animation-direction":{multi:"normal | alternate",comma:!0},"-o-animation-duration":{multi:"<time>",comma:!0},"-o-animation-iteration-count":{multi:"<number> | infinite",comma:!0},"-o-animation-name":{multi:"none | <ident>",comma:!0},"-o-animation-play-state":{multi:"running | paused",comma:!0},appearance:"icon | window | desktop | workspace | document | tooltip | dialog | button | push-button | hyperlink | radio-button | checkbox | menu-item | tab | menu | menubar | pull-down-menu | pop-up-menu | list-menu | radio-group | checkbox-group | outline-tree | range | field | combo-box | signature | password | normal | none | inherit",azimuth:function(e){var t="<angle> | leftwards | rightwards | inherit",n="left-side | far-left | left | center-left | center | center-right | right | far-right | right-side",r=!1,i=!1,s;ValidationTypes.isAny(e,t)||(ValidationTypes.isAny(e,"behind")&&(r=!0,i=!0),ValidationTypes.isAny(e,n)&&(i=!0,r||ValidationTypes.isAny(e,"behind")));if(e.hasNext())throw s=e.next(),i?new ValidationError("Expected end of value but found '"+s+"'.",s.line,s.col):new ValidationError("Expected (<'azimuth'>) but found '"+s+"'.",s.line,s.col)},"backface-visibility":"visible | hidden",background:1,"background-attachment":{multi:"<attachment>",comma:!0},"background-clip":{multi:"<box>",comma:!0},"background-color":"<color> | inherit","background-image":{multi:"<bg-image>",comma:!0},"background-origin":{multi:"<box>",comma:!0},"background-position":{multi:"<bg-position>",comma:!0},"background-repeat":{multi:"<repeat-style>"},"background-size":{multi:"<bg-size>",comma:!0},"baseline-shift":"baseline | sub | super | <percentage> | <length>",behavior:1,binding:1,bleed:"<length>","bookmark-label":"<content> | <attr> | <string>","bookmark-level":"none | <integer>","bookmark-state":"open | closed","bookmark-target":"none | <uri> | <attr>",border:"<border-width> || <border-style> || <color>","border-bottom":"<border-width> || <border-style> || <color>","border-bottom-color":"<color> | inherit","border-bottom-left-radius":"<x-one-radius>","border-bottom-right-radius":"<x-one-radius>","border-bottom-style":"<border-style>","border-bottom-width":"<border-width>","border-collapse":"collapse | separate | inherit","border-color":{multi:"<color> | inherit",max:4},"border-image":1,"border-image-outset":{multi:"<length> | <number>",max:4},"border-image-repeat":{multi:"stretch | repeat | round",max:2},"border-image-slice":function(e){var t=!1,n="<number> | <percentage>",r=!1,i=0,s=4,o;ValidationTypes.isAny(e,"fill")&&(r=!0,t=!0);while(e.hasNext()&&i<s){t=ValidationTypes.isAny(e,n);if(!t)break;i++}r?t=!0:ValidationTypes.isAny(e,"fill");if(e.hasNext())throw o=e.next(),t?new ValidationError("Expected end of value but found '"+o+"'.",o.line,o.col):new ValidationError("Expected ([<number> | <percentage>]{1,4} && fill?) but found '"+o+"'.",o.line,o.col)},"border-image-source":"<image> | none","border-image-width":{multi:"<length> | <percentage> | <number> | auto",max:4},"border-left":"<border-width> || <border-style> || <color>","border-left-color":"<color> | inherit","border-left-style":"<border-style>","border-left-width":"<border-width>","border-radius":function(e){var t=!1,n="<length> | <percentage> | inherit",r=!1,i=!1,s=0,o=8,u;while(e.hasNext()&&s<o){t=ValidationTypes.isAny(e,n);if(!t){if(!(e.peek()=="/"&&s>0&&!r))break;r=!0,o=s+5,e.next()}s++}if(e.hasNext())throw u=e.next(),t?new ValidationError("Expected end of value but found '"+u+"'.",u.line,u.col):new ValidationError("Expected (<'border-radius'>) but found '"+u+"'.",u.line,u.col)},"border-right":"<border-width> || <border-style> || <color>","border-right-color":"<color> | inherit","border-right-style":"<border-style>","border-right-width":"<border-width>","border-spacing":{multi:"<length> | inherit",max:2},"border-style":{multi:"<border-style>",max:4},"border-top":"<border-width> || <border-style> || <color>","border-top-color":"<color> | inherit","border-top-left-radius":"<x-one-radius>","border-top-right-radius":"<x-one-radius>","border-top-style":"<border-style>","border-top-width":"<border-width>","border-width":{multi:"<border-width>",max:4},bottom:"<margin-width> | inherit","box-align":"start | end | center | baseline | stretch","box-decoration-break":"slice |clone","box-direction":"normal | reverse | inherit","box-flex":"<number>","box-flex-group":"<integer>","box-lines":"single | multiple","box-ordinal-group":"<integer>","box-orient":"horizontal | vertical | inline-axis | block-axis | inherit","box-pack":"start | end | center | justify","box-shadow":function(e){var t=!1,n;if(!ValidationTypes.isAny(e,"none"))Validation.multiProperty("<shadow>",e,!0,Infinity);else if(e.hasNext())throw n=e.next(),new ValidationError("Expected end of value but found '"+n+"'.",n.line,n.col)},"box-sizing":"content-box | border-box | inherit","break-after":"auto | always | avoid | left | right | page | column | avoid-page | avoid-column","break-before":"auto | always | avoid | left | right | page | column | avoid-page | avoid-column","break-inside":"auto | avoid | avoid-page | avoid-column","caption-side":"top | bottom | inherit",clear:"none | right | left | both | inherit",clip:1,color:"<color> | inherit","color-profile":1,"column-count":"<integer> | auto","column-fill":"auto | balance","column-gap":"<length> | normal","column-rule":"<border-width> || <border-style> || <color>","column-rule-color":"<color>","column-rule-style":"<border-style>","column-rule-width":"<border-width>","column-span":"none | all","column-width":"<length> | auto",columns:1,content:1,"counter-increment":1,"counter-reset":1,crop:"<shape> | auto",cue:"cue-after | cue-before | inherit","cue-after":1,"cue-before":1,cursor:1,direction:"ltr | rtl | inherit",display:"inline | block | list-item | inline-block | table | inline-table | table-row-group | table-header-group | table-footer-group | table-row | table-column-group | table-column | table-cell | table-caption | box | inline-box | grid | inline-grid | none | inherit | -moz-box | -moz-inline-block | -moz-inline-box | -moz-inline-grid | -moz-inline-stack | -moz-inline-table | -moz-grid | -moz-grid-group | -moz-grid-line | -moz-groupbox | -moz-deck | -moz-popup | -moz-stack | -moz-marker | -webkit-box | -webkit-inline-box","dominant-baseline":1,"drop-initial-after-adjust":"central | middle | after-edge | text-after-edge | ideographic | alphabetic | mathematical | <percentage> | <length>","drop-initial-after-align":"baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical","drop-initial-before-adjust":"before-edge | text-before-edge | central | middle | hanging | mathematical | <percentage> | <length>","drop-initial-before-align":"caps-height | baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical","drop-initial-size":"auto | line | <length> | <percentage>","drop-initial-value":"initial | <integer>",elevation:"<angle> | below | level | above | higher | lower | inherit","empty-cells":"show | hide | inherit",filter:1,fit:"fill | hidden | meet | slice","fit-position":1,"float":"left | right | none | inherit","float-offset":1,font:1,"font-family":1,"font-size":"<absolute-size> | <relative-size> | <length> | <percentage> | inherit","font-size-adjust":"<number> | none | inherit","font-stretch":"normal | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded | inherit","font-style":"normal | italic | oblique | inherit","font-variant":"normal | small-caps | inherit","font-weight":"normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | inherit","grid-cell-stacking":"columns | rows | layer","grid-column":1,"grid-columns":1,"grid-column-align":"start | end | center | stretch","grid-column-sizing":1,"grid-column-span":"<integer>","grid-flow":"none | rows | columns","grid-layer":"<integer>","grid-row":1,"grid-rows":1,"grid-row-align":"start | end | center | stretch","grid-row-span":"<integer>","grid-row-sizing":1,"hanging-punctuation":1,height:"<margin-width> | inherit","hyphenate-after":"<integer> | auto","hyphenate-before":"<integer> | auto","hyphenate-character":"<string> | auto","hyphenate-lines":"no-limit | <integer>","hyphenate-resource":1,hyphens:"none | manual | auto",icon:1,"image-orientation":"angle | auto","image-rendering":1,"image-resolution":1,"inline-box-align":"initial | last | <integer>",left:"<margin-width> | inherit","letter-spacing":"<length> | normal | inherit","line-height":"<number> | <length> | <percentage> | normal | inherit","line-break":"auto | loose | normal | strict","line-stacking":1,"line-stacking-ruby":"exclude-ruby | include-ruby","line-stacking-shift":"consider-shifts | disregard-shifts","line-stacking-strategy":"inline-line-height | block-line-height | max-height | grid-height","list-style":1,"list-style-image":"<uri> | none | inherit","list-style-position":"inside | outside | inherit","list-style-type":"disc | circle | square | decimal | decimal-leading-zero | lower-roman | upper-roman | lower-greek | lower-latin | upper-latin | armenian | georgian | lower-alpha | upper-alpha | none | inherit",margin:{multi:"<margin-width> | inherit",max:4},"margin-bottom":"<margin-width> | inherit","margin-left":"<margin-width> | inherit","margin-right":"<margin-width> | inherit","margin-top":"<margin-width> | inherit",mark:1,"mark-after":1,"mark-before":1,marks:1,"marquee-direction":1,"marquee-play-count":1,"marquee-speed":1,"marquee-style":1,"max-height":"<length> | <percentage> | none | inherit","max-width":"<length> | <percentage> | none | inherit","min-height":"<length> | <percentage> | inherit","min-width":"<length> | <percentage> | inherit","move-to":1,"nav-down":1,"nav-index":1,"nav-left":1,"nav-right":1,"nav-up":1,opacity:"<number> | inherit",orphans:"<integer> | inherit",outline:1,"outline-color":"<color> | invert | inherit","outline-offset":1,"outline-style":"<border-style> | inherit","outline-width":"<border-width> | inherit",overflow:"visible | hidden | scroll | auto | inherit","overflow-style":1,"overflow-x":1,"overflow-y":1,padding:{multi:"<padding-width> | inherit",max:4},"padding-bottom":"<padding-width> | inherit","padding-left":"<padding-width> | inherit","padding-right":"<padding-width> | inherit","padding-top":"<padding-width> | inherit",page:1,"page-break-after":"auto | always | avoid | left | right | inherit","page-break-before":"auto | always | avoid | left | right | inherit","page-break-inside":"auto | avoid | inherit","page-policy":1,pause:1,"pause-after":1,"pause-before":1,perspective:1,"perspective-origin":1,phonemes:1,pitch:1,"pitch-range":1,"play-during":1,"pointer-events":"auto | none | visiblePainted | visibleFill | visibleStroke | visible | painted | fill | stroke | all | inherit",position:"static | relative | absolute | fixed | inherit","presentation-level":1,"punctuation-trim":1,quotes:1,"rendering-intent":1,resize:1,rest:1,"rest-after":1,"rest-before":1,richness:1,right:"<margin-width> | inherit",rotation:1,"rotation-point":1,"ruby-align":1,"ruby-overhang":1,"ruby-position":1,"ruby-span":1,size:1,speak:"normal | none | spell-out | inherit","speak-header":"once | always | inherit","speak-numeral":"digits | continuous | inherit","speak-punctuation":"code | none | inherit","speech-rate":1,src:1,stress:1,"string-set":1,"table-layout":"auto | fixed | inherit","tab-size":"<integer> | <length>",target:1,"target-name":1,"target-new":1,"target-position":1,"text-align":"left | right | center | justify | inherit","text-align-last":1,"text-decoration":1,"text-emphasis":1,"text-height":1,"text-indent":"<length> | <percentage> | inherit","text-justify":"auto | none | inter-word | inter-ideograph | inter-cluster | distribute | kashida","text-outline":1,"text-overflow":1,"text-rendering":"auto | optimizeSpeed | optimizeLegibility | geometricPrecision | inherit","text-shadow":1,"text-transform":"capitalize | uppercase | lowercase | none | inherit","text-wrap":"normal | none | avoid",top:"<margin-width> | inherit",transform:1,"transform-origin":1,"transform-style":1,transition:1,"transition-delay":1,"transition-duration":1,"transition-property":1,"transition-timing-function":1,"unicode-bidi":"normal | embed | bidi-override | inherit","user-modify":"read-only | read-write | write-only | inherit","user-select":"none | text | toggle | element | elements | all | inherit","vertical-align":"auto | use-script | baseline | sub | super | top | text-top | central | middle | bottom | text-bottom | <percentage> | <length>",visibility:"visible | hidden | collapse | inherit","voice-balance":1,"voice-duration":1,"voice-family":1,"voice-pitch":1,"voice-pitch-range":1,"voice-rate":1,"voice-stress":1,"voice-volume":1,volume:1,"white-space":"normal | pre | nowrap | pre-wrap | pre-line | inherit | -pre-wrap | -o-pre-wrap | -moz-pre-wrap | -hp-pre-wrap","white-space-collapse":1,widows:"<integer> | inherit",width:"<length> | <percentage> | auto | inherit","word-break":"normal | keep-all | break-all","word-spacing":"<length> | normal | inherit","word-wrap":1,"z-index":"<integer> | auto | inherit",zoom:"<number> | <percentage> | normal"};PropertyName.prototype=new SyntaxUnit,PropertyName.prototype.constructor=PropertyName,PropertyName.prototype.toString=function(){return(this.hack?this.hack:"")+this.text},PropertyValue.prototype=new SyntaxUnit,PropertyValue.prototype.constructor=PropertyValue,PropertyValueIterator.prototype.count=function(){return this._parts.length},PropertyValueIterator.prototype.isFirst=function(){return this._i===0},PropertyValueIterator.prototype.hasNext=function(){return this._i<this._parts.length},PropertyValueIterator.prototype.mark=function(){this._marks.push(this._i)},PropertyValueIterator.prototype.peek=function(e){return this.hasNext()?this._parts[this._i+(e||0)]:null},PropertyValueIterator.prototype.next=function(){return this.hasNext()?this._parts[this._i++]:null},PropertyValueIterator.prototype.previous=function(){return this._i>0?this._parts[--this._i]:null},PropertyValueIterator.prototype.restore=function(){this._marks.length&&(this._i=this._marks.pop())},PropertyValuePart.prototype=new SyntaxUnit,PropertyValuePart.prototype.constructor=PropertyValuePart,PropertyValuePart.fromToken=function(e){return new PropertyValuePart(e.value,e.startLine,e.startCol)};var Pseudos={":first-letter":1,":first-line":1,":before":1,":after":1};Pseudos.ELEMENT=1,Pseudos.CLASS=2,Pseudos.isElement=function(e){return e.indexOf("::")===0||Pseudos[e.toLowerCase()]==Pseudos.ELEMENT},Selector.prototype=new SyntaxUnit,Selector.prototype.constructor=Selector,SelectorPart.prototype=new SyntaxUnit,SelectorPart.prototype.constructor=SelectorPart,SelectorSubPart.prototype=new SyntaxUnit,SelectorSubPart.prototype.constructor=SelectorSubPart,Specificity.prototype={constructor:Specificity,compare:function(e){var t=["a","b","c","d"],n,r;for(n=0,r=t.length;n<r;n++){if(this[t[n]]<e[t[n]])return-1;if(this[t[n]]>e[t[n]])return 1}return 0},valueOf:function(){return this.a*1e3+this.b*100+this.c*10+this.d},toString:function(){return this.a+","+this.b+","+this.c+","+this.d}},Specificity.calculate=function(e){function t(e){var n,r,i,a,f=e.elementName?e.elementName.text:"",l;f&&f.charAt(f.length-1)!="*"&&u++;for(n=0,i=e.modifiers.length;n<i;n++){l=e.modifiers[n];switch(l.type){case"class":case"attribute":o++;break;case"id":s++;break;case"pseudo":Pseudos.isElement(l.text)?u++:o++;break;case"not":for(r=0,a=l.args.length;r<a;r++)t(l.args[r])}}}var n,r,i,s=0,o=0,u=0;for(n=0,r=e.parts.length;n<r;n++)i=e.parts[n],i instanceof SelectorPart&&t(i);return new Specificity(0,s,o,u)};var h=/^[0-9a-fA-F]$/,nonascii=/^[\u0080-\uFFFF]$/,nl=/\n|\r\n|\r|\f/;TokenStream.prototype=mix(new TokenStreamBase,{_getToken:function(e){var t,n=this._reader,r=null,i=n.getLine(),s=n.getCol();t=n.read();while(t){switch(t){case"/":n.peek()=="*"?r=this.commentToken(t,i,s):r=this.charToken(t,i,s);break;case"|":case"~":case"^":case"$":case"*":n.peek()=="="?r=this.comparisonToken(t,i,s):r=this.charToken(t,i,s);break;case'"':case"'":r=this.stringToken(t,i,s);break;case"#":isNameChar(n.peek())?r=this.hashToken(t,i,s):r=this.charToken(t,i,s);break;case".":isDigit(n.peek())?r=this.numberToken(t,i,s):r=this.charToken(t,i,s);break;case"-":n.peek()=="-"?r=this.htmlCommentEndToken(t,i,s):isNameStart(n.peek())?r=this.identOrFunctionToken(t,i,s):r=this.charToken(t,i,s);break;case"!":r=this.importantToken(t,i,s);break;case"@":r=this.atRuleToken(t,i,s);break;case":":r=this.notToken(t,i,s);break;case"<":r=this.htmlCommentStartToken(t,i,s);break;case"U":case"u":if(n.peek()=="+"){r=this.unicodeRangeToken(t,i,s);break};default:isDigit(t)?r=this.numberToken(t,i,s):isWhitespace(t)?r=this.whitespaceToken(t,i,s):isIdentStart(t)?r=this.identOrFunctionToken(t,i,s):r=this.charToken(t,i,s)}break}return!r&&t===null&&(r=this.createToken(Tokens.EOF,null,i,s)),r},createToken:function(e,t,n,r,i){var s=this._reader;return i=i||{},{value:t,type:e,channel:i.channel,hide:i.hide||!1,startLine:n,startCol:r,endLine:s.getLine(),endCol:s.getCol()}},atRuleToken:function(e,t,n){var r=e,i=this._reader,s=Tokens.CHAR,o=!1,u,a;i.mark(),u=this.readName(),r=e+u,s=Tokens.type(r.toLowerCase());if(s==Tokens.CHAR||s==Tokens.UNKNOWN)r.length>1?s=Tokens.UNKNOWN_SYM:(s=Tokens.CHAR,r=e,i.reset());return this.createToken(s,r,t,n)},charToken:function(e,t,n){var r=Tokens.type(e);return r==-1&&(r=Tokens.CHAR),this.createToken(r,e,t,n)},commentToken:function(e,t,n){var r=this._reader,i=this.readComment(e);return this.createToken(Tokens.COMMENT,i,t,n)},comparisonToken:function(e,t,n){var r=this._reader,i=e+r.read(),s=Tokens.type(i)||Tokens.CHAR;return this.createToken(s,i,t,n)},hashToken:function(e,t,n){var r=this._reader,i=this.readName(e);return this.createToken(Tokens.HASH,i,t,n)},htmlCommentStartToken:function(e,t,n){var r=this._reader,i=e;return r.mark(),i+=r.readCount(3),i=="<!--"?this.createToken(Tokens.CDO,i,t,n):(r.reset(),this.charToken(e,t,n))},htmlCommentEndToken:function(e,t,n){var r=this._reader,i=e;return r.mark(),i+=r.readCount(2),i=="-->"?this.createToken(Tokens.CDC,i,t,n):(r.reset(),this.charToken(e,t,n))},identOrFunctionToken:function(e,t,n){var r=this._reader,i=this.readName(e),s=Tokens.IDENT;return r.peek()=="("?(i+=r.read(),i.toLowerCase()=="url("?(s=Tokens.URI,i=this.readURI(i),i.toLowerCase()=="url("&&(s=Tokens.FUNCTION)):s=Tokens.FUNCTION):r.peek()==":"&&i.toLowerCase()=="progid"&&(i+=r.readTo("("),s=Tokens.IE_FUNCTION),this.createToken(s,i,t,n)},importantToken:function(e,t,n){var r=this._reader,i=e,s=Tokens.CHAR,o,u;r.mark(),u=r.read();while(u){if(u=="/"){if(r.peek()!="*")break;o=this.readComment(u);if(o==="")break}else{if(!isWhitespace(u)){if(/i/i.test(u)){o=r.readCount(8),/mportant/i.test(o)&&(i+=u+o,s=Tokens.IMPORTANT_SYM);break}break}i+=u+this.readWhitespace()}u=r.read()}return s==Tokens.CHAR?(r.reset(),this.charToken(e,t,n)):this.createToken(s,i,t,n)},notToken:function(e,t,n){var r=this._reader,i=e;return r.mark(),i+=r.readCount(4),i.toLowerCase()==":not("?this.createToken(Tokens.NOT,i,t,n):(r.reset(),this.charToken(e,t,n))},numberToken:function(e,t,n){var r=this._reader,i=this.readNumber(e),s,o=Tokens.NUMBER,u=r.peek();return isIdentStart(u)?(s=this.readName(r.read()),i+=s,/^em$|^ex$|^px$|^gd$|^rem$|^vw$|^vh$|^vm$|^ch$|^cm$|^mm$|^in$|^pt$|^pc$/i.test(s)?o=Tokens.LENGTH:/^deg|^rad$|^grad$/i.test(s)?o=Tokens.ANGLE:/^ms$|^s$/i.test(s)?o=Tokens.TIME:/^hz$|^khz$/i.test(s)?o=Tokens.FREQ:/^dpi$|^dpcm$/i.test(s)?o=Tokens.RESOLUTION:o=Tokens.DIMENSION):u=="%"&&(i+=r.read(),o=Tokens.PERCENTAGE),this.createToken(o,i,t,n)},stringToken:function(e,t,n){var r=e,i=e,s=this._reader,o=e,u=Tokens.STRING,a=s.read();while(a){i+=a;if(a==r&&o!="\\")break;if(isNewLine(s.peek())&&a!="\\"){u=Tokens.INVALID;break}o=a,a=s.read()}return a===null&&(u=Tokens.INVALID),this.createToken(u,i,t,n)},unicodeRangeToken:function(e,t,n){var r=this._reader,i=e,s,o=Tokens.CHAR;return r.peek()=="+"&&(r.mark(),i+=r.read(),i+=this.readUnicodeRangePart(!0),i.length==2?r.reset():(o=Tokens.UNICODE_RANGE,i.indexOf("?")==-1&&r.peek()=="-"&&(r.mark(),s=r.read(),s+=this.readUnicodeRangePart(!1),s.length==1?r.reset():i+=s))),this.createToken(o,i,t,n)},whitespaceToken:function(e,t,n){var r=this._reader,i=e+this.readWhitespace();return this.createToken(Tokens.S,i,t,n)},readUnicodeRangePart:function(e){var t=this._reader,n="",r=t.peek();while(isHexDigit(r)&&n.length<6)t.read(),n+=r,r=t.peek();if(e)while(r=="?"&&n.length<6)t.read(),n+=r,r=t.peek();return n},readWhitespace:function(){var e=this._reader,t="",n=e.peek();while(isWhitespace(n))e.read(),t+=n,n=e.peek();return t},readNumber:function(e){var t=this._reader,n=e,r=e==".",i=t.peek();while(i){if(isDigit(i))n+=t.read();else{if(i!=".")break;if(r)break;r=!0,n+=t.read()}i=t.peek()}return n},readString:function(){var e=this._reader,t=e.read(),n=t,r=t,i=e.peek();while(i){i=e.read(),n+=i;if(i==t&&r!="\\")break;if(isNewLine(e.peek())&&i!="\\"){n="";break}r=i,i=e.peek()}return i===null&&(n=""),n},readURI:function(e){var t=this._reader,n=e,r="",i=t.peek();t.mark();while(i&&isWhitespace(i))t.read(),i=t.peek();i=="'"||i=='"'?r=this.readString():r=this.readURL(),i=t.peek();while(i&&isWhitespace(i))t.read(),i=t.peek();return r===""||i!=")"?(n=e,t.reset()):n+=r+t.read(),n},readURL:function(){var e=this._reader,t="",n=e.peek();while(/^[!#$%&\\*-~]$/.test(n))t+=e.read(),n=e.peek();return t},readName:function(e){var t=this._reader,n=e||"",r=t.peek();for(;;)if(r=="\\")n+=this.readEscape(t.read()),r=t.peek();else{if(!r||!isNameChar(r))break;n+=t.read(),r=t.peek()}return n},readEscape:function(e){var t=this._reader,n=e||"",r=0,i=t.peek();if(isHexDigit(i))do n+=t.read(),i=t.peek();while(i&&isHexDigit(i)&&++r<6);return n.length==3&&/\s/.test(i)||n.length==7||n.length==1?t.read():i="",n+i},readComment:function(e){var t=this._reader,n=e||"",r=t.read();if(r=="*"){while(r){n+=r;if(n.length>2&&r=="*"&&t.peek()=="/"){n+=t.read();break}r=t.read()}return n}return""}});var Tokens=[{name:"CDO"},{name:"CDC"},{name:"S",whitespace:!0},{name:"COMMENT",comment:!0,hide:!0,channel:"comment"},{name:"INCLUDES",text:"~="},{name:"DASHMATCH",text:"|="},{name:"PREFIXMATCH",text:"^="},{name:"SUFFIXMATCH",text:"$="},{name:"SUBSTRINGMATCH",text:"*="},{name:"STRING"},{name:"IDENT"},{name:"HASH"},{name:"IMPORT_SYM",text:"@import"},{name:"PAGE_SYM",text:"@page"},{name:"MEDIA_SYM",text:"@media"},{name:"FONT_FACE_SYM",text:"@font-face"},{name:"CHARSET_SYM",text:"@charset"},{name:"NAMESPACE_SYM",text:"@namespace"},{name:"VIEWPORT_SYM",text:"@viewport"},{name:"UNKNOWN_SYM"},{name:"KEYFRAMES_SYM",text:["@keyframes","@-webkit-keyframes","@-moz-keyframes","@-o-keyframes"]},{name:"IMPORTANT_SYM"},{name:"LENGTH"},{name:"ANGLE"},{name:"TIME"},{name:"FREQ"},{name:"DIMENSION"},{name:"PERCENTAGE"},{name:"NUMBER"},{name:"URI"},{name:"FUNCTION"},{name:"UNICODE_RANGE"},{name:"INVALID"},{name:"PLUS",text:"+"},{name:"GREATER",text:">"},{name:"COMMA",text:","},{name:"TILDE",text:"~"},{name:"NOT"},{name:"TOPLEFTCORNER_SYM",text:"@top-left-corner"},{name:"TOPLEFT_SYM",text:"@top-left"},{name:"TOPCENTER_SYM",text:"@top-center"},{name:"TOPRIGHT_SYM",text:"@top-right"},{name:"TOPRIGHTCORNER_SYM",text:"@top-right-corner"},{name:"BOTTOMLEFTCORNER_SYM",text:"@bottom-left-corner"},{name:"BOTTOMLEFT_SYM",text:"@bottom-left"},{name:"BOTTOMCENTER_SYM",text:"@bottom-center"},{name:"BOTTOMRIGHT_SYM",text:"@bottom-right"},{name:"BOTTOMRIGHTCORNER_SYM",text:"@bottom-right-corner"},{name:"LEFTTOP_SYM",text:"@left-top"},{name:"LEFTMIDDLE_SYM",text:"@left-middle"},{name:"LEFTBOTTOM_SYM",text:"@left-bottom"},{name:"RIGHTTOP_SYM",text:"@right-top"},{name:"RIGHTMIDDLE_SYM",text:"@right-middle"},{name:"RIGHTBOTTOM_SYM",text:"@right-bottom"},{name:"RESOLUTION",state:"media"},{name:"IE_FUNCTION"},{name:"CHAR"},{name:"PIPE",text:"|"},{name:"SLASH",text:"/"},{name:"MINUS",text:"-"},{name:"STAR",text:"*"},{name:"LBRACE",text:"{"},{name:"RBRACE",text:"}"},{name:"LBRACKET",text:"["},{name:"RBRACKET",text:"]"},{name:"EQUALS",text:"="},{name:"COLON",text:":"},{name:"SEMICOLON",text:";"},{name:"LPAREN",text:"("},{name:"RPAREN",text:")"},{name:"DOT",text:"."}];(function(){var e=[],t={};Tokens.UNKNOWN=-1,Tokens.unshift({name:"EOF"});for(var n=0,r=Tokens.length;n<r;n++){e.push(Tokens[n].name),Tokens[Tokens[n].name]=n;if(Tokens[n].text)if(Tokens[n].text instanceof Array)for(var i=0;i<Tokens[n].text.length;i++)t[Tokens[n].text[i]]=n;else t[Tokens[n].text]=n}Tokens.name=function(t){return e[t]},Tokens.type=function(e){return t[e]||-1}})();var Validation={validate:function(e,t){var n=e.toString().toLowerCase(),r=t.parts,i=new PropertyValueIterator(t),s=Properties[n],o,u,a,f,l,c,h,p,d,v,m;if(!s){if(n.indexOf("-")!==0)throw new ValidationError("Unknown property '"+e+"'.",e.line,e.col)}else typeof s!="number"&&(typeof s=="string"?s.indexOf("||")>-1?this.groupProperty(s,i):this.singleProperty(s,i,1):s.multi?this.multiProperty(s.multi,i,s.comma,s.max||Infinity):typeof s=="function"&&s(i))},singleProperty:function(e,t,n,r){var i=!1,s=t.value,o=0,u;while(t.hasNext()&&o<n){i=ValidationTypes.isAny(t,e);if(!i)break;o++}if(!i)throw t.hasNext()&&!t.isFirst()?(u=t.peek(),new ValidationError("Expected end of value but found '"+u+"'.",u.line,u.col)):new ValidationError("Expected ("+e+") but found '"+s+"'.",s.line,s.col);if(t.hasNext())throw u=t.next(),new ValidationError("Expected end of value but found '"+u+"'.",u.line,u.col)},multiProperty:function(e,t,n,r){var i=!1,s=t.value,o=0,u=!1,a;while(t.hasNext()&&!i&&o<r){if(!ValidationTypes.isAny(t,e))break;o++;if(!t.hasNext())i=!0;else if(n){if(t.peek()!=",")break;a=t.next()}}if(!i)throw t.hasNext()&&!t.isFirst()?(a=t.peek(),new ValidationError("Expected end of value but found '"+a+"'.",a.line,a.col)):(a=t.previous(),n&&a==","?new ValidationError("Expected end of value but found '"+a+"'.",a.line,a.col):new ValidationError("Expected ("+e+") but found '"+s+"'.",s.line,s.col));if(t.hasNext())throw a=t.next(),new ValidationError("Expected end of value but found '"+a+"'.",a.line,a.col)},groupProperty:function(e,t,n){var r=!1,i=t.value,s=e.split("||").length,o={count:0},u=!1,a,f;while(t.hasNext()&&!r){a=ValidationTypes.isAnyOfGroup(t,e);if(!a)break;if(o[a])break;o[a]=1,o.count++,u=!0;if(o.count==s||!t.hasNext())r=!0}if(!r)throw u&&t.hasNext()?(f=t.peek(),new ValidationError("Expected end of value but found '"+f+"'.",f.line,f.col)):new ValidationError("Expected ("+e+") but found '"+i+"'.",i.line,i.col);if(t.hasNext())throw f=t.next(),new ValidationError("Expected end of value but found '"+f+"'.",f.line,f.col)}};ValidationError.prototype=new Error;var ValidationTypes={isLiteral:function(e,t){var n=e.text.toString().toLowerCase(),r=t.split(" | "),i,s,o=!1;for(i=0,s=r.length;i<s&&!o;i++)n==r[i].toLowerCase()&&(o=!0);return o},isSimple:function(e){return!!this.simple[e]},isComplex:function(e){return!!this.complex[e]},isAny:function(e,t){var n=t.split(" | "),r,i,s=!1;for(r=0,i=n.length;r<i&&!s&&e.hasNext();r++)s=this.isType(e,n[r]);return s},isAnyOfGroup:function(e,t){var n=t.split(" || "),r,i,s=!1;for(r=0,i=n.length;r<i&&!s;r++)s=this.isType(e,n[r]);return s?n[r-1]:!1},isType:function(e,t){var n=e.peek(),r=!1;return t.charAt(0)!="<"?(r=this.isLiteral(n,t),r&&e.next()):this.simple[t]?(r=this.simple[t](n),r&&e.next()):r=this.complex[t](e),r},simple:{"<absolute-size>":function(e){return ValidationTypes.isLiteral(e,"xx-small | x-small | small | medium | large | x-large | xx-large")},"<attachment>":function(e){return ValidationTypes.isLiteral(e,"scroll | fixed | local")},"<attr>":function(e){return e.type=="function"&&e.name=="attr"},"<bg-image>":function(e){return this["<image>"](e)||this["<gradient>"](e)||e=="none"},"<gradient>":function(e){return e.type=="function"&&/^(?:\-(?:ms|moz|o|webkit)\-)?(?:repeating\-)?(?:radial\-|linear\-)?gradient/i.test(e)},"<box>":function(e){return ValidationTypes.isLiteral(e,"padding-box | border-box | content-box")},"<content>":function(e){return e.type=="function"&&e.name=="content"},"<relative-size>":function(e){return ValidationTypes.isLiteral(e,"smaller | larger")},"<ident>":function(e){return e.type=="identifier"},"<length>":function(e){return e.type=="function"&&/^(?:\-(?:ms|moz|o|webkit)\-)?calc/i.test(e)?!0:e.type=="length"||e.type=="number"||e.type=="integer"||e=="0"},"<color>":function(e){return e.type=="color"||e=="transparent"},"<number>":function(e){return e.type=="number"||this["<integer>"](e)},"<integer>":function(e){return e.type=="integer"},"<line>":function(e){return e.type=="integer"},"<angle>":function(e){return e.type=="angle"},"<uri>":function(e){return e.type=="uri"},"<image>":function(e){return this["<uri>"](e)},"<percentage>":function(e){return e.type=="percentage"||e=="0"},"<border-width>":function(e){return this["<length>"](e)||ValidationTypes.isLiteral(e,"thin | medium | thick")},"<border-style>":function(e){return ValidationTypes.isLiteral(e,"none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset")},"<margin-width>":function(e){return this["<length>"](e)||this["<percentage>"](e)||ValidationTypes.isLiteral(e,"auto")},"<padding-width>":function(e){return this["<length>"](e)||this["<percentage>"](e)},"<shape>":function(e){return e.type=="function"&&(e.name=="rect"||e.name=="inset-rect")},"<time>":function(e){return e.type=="time"}},complex:{"<bg-position>":function(e){var t=this,n=!1,r="<percentage> | <length>",i="left | right",s="top | bottom",o=0,u=function(){return e.hasNext()&&e.peek()!=","};while(e.peek(o)&&e.peek(o)!=",")o++;return o<3?ValidationTypes.isAny(e,i+" | center | "+r)?(n=!0,ValidationTypes.isAny(e,s+" | center | "+r)):ValidationTypes.isAny(e,s)&&(n=!0,ValidationTypes.isAny(e,i+" | center")):ValidationTypes.isAny(e,i)?ValidationTypes.isAny(e,s)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,r)&&(ValidationTypes.isAny(e,s)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,"center")&&(n=!0)):ValidationTypes.isAny(e,s)?ValidationTypes.isAny(e,i)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,r)&&(ValidationTypes.isAny(e,i)?(n=!0,ValidationTypes.isAny(e,r)):ValidationTypes.isAny(e,"center")&&(n=!0)):ValidationTypes.isAny(e,"center")&&ValidationTypes.isAny(e,i+" | "+s)&&(n=!0,ValidationTypes.isAny(e,r)),n},"<bg-size>":function(e){var t=this,n=!1,r="<percentage> | <length> | auto",i,s,o;return ValidationTypes.isAny(e,"cover | contain")?n=!0:ValidationTypes.isAny(e,r)&&(n=!0,ValidationTypes.isAny(e,r)),n},"<repeat-style>":function(e){var t=!1,n="repeat | space | round | no-repeat",r;return e.hasNext()&&(r=e.next(),ValidationTypes.isLiteral(r,"repeat-x | repeat-y")?t=!0:ValidationTypes.isLiteral(r,n)&&(t=!0,e.hasNext()&&ValidationTypes.isLiteral(e.peek(),n)&&e.next())),t},"<shadow>":function(e){var t=!1,n=0,r=!1,i=!1,s;if(e.hasNext()){ValidationTypes.isAny(e,"inset")&&(r=!0),ValidationTypes.isAny(e,"<color>")&&(i=!0);while(ValidationTypes.isAny(e,"<length>")&&n<4)n++;e.hasNext()&&(i||ValidationTypes.isAny(e,"<color>"),r||ValidationTypes.isAny(e,"inset")),t=n>=2&&n<=4}return t},"<x-one-radius>":function(e){var t=!1,n="<length> | <percentage> | inherit";return ValidationTypes.isAny(e,n)&&(t=!0,ValidationTypes.isAny(e,n)),t}}};parserlib.css={Colors:Colors,Combinator:Combinator,Parser:Parser,PropertyName:PropertyName,PropertyValue:PropertyValue,PropertyValuePart:PropertyValuePart,MediaFeature:MediaFeature,MediaQuery:MediaQuery,Selector:Selector,SelectorPart:SelectorPart,SelectorSubPart:SelectorSubPart,Specificity:Specificity,TokenStream:TokenStream,Tokens:Tokens,ValidationError:ValidationError}}(),function(){for(var e in parserlib)exports[e]=parserlib[e]}();var CSSLint=function(){function e(e,t){var n,i=e&&e.match(r),s=i&&i[1];return s&&(n={"true":2,"":1,"false":0,2:2,1:1,0:0},s.toLowerCase().split(",").forEach(function(e){var r=e.split(":"),i=r[0]||"",s=r[1]||"";t[i.trim()]=n[s.trim()]})),t}var t=[],n=[],r=/\/\*csslint([^\*]*)\*\//,i=new parserlib.util.EventTarget;return i.version="0.10.0",i.addRule=function(e){t.push(e),t[e.id]=e},i.clearRules=function(){t=[]},i.getRules=function(){return[].concat(t).sort(function(e,t){return e.id>t.id?1:0})},i.getRuleset=function(){var e={},n=0,r=t.length;while(n<r)e[t[n++].id]=1;return e},i.addFormatter=function(e){n[e.id]=e},i.getFormatter=function(e){return n[e]},i.format=function(e,t,n,r){var i=this.getFormatter(n),s=null;return i&&(s=i.startFormat(),s+=i.formatResults(e,t,r||{}),s+=i.endFormat()),s},i.hasFormat=function(e){return n.hasOwnProperty(e)},i.verify=function(n,i){var s=0,o=t.length,u,a,f,l=new parserlib.css.Parser({starHack:!0,ieFilters:!0,underscoreHack:!0,strict:!1});a=n.replace(/\n\r?/g,"$split$").split("$split$"),i||(i=this.getRuleset()),r.test(n)&&(i=e(n,i)),u=new Reporter(a,i),i.errors=2;for(s in i)i.hasOwnProperty(s)&&i[s]&&t[s]&&t[s].init(l,u);try{l.parse(n)}catch(c){u.error("Fatal error, cannot continue: "+c.message,c.line,c.col,{})}return f={messages:u.messages,stats:u.stats,ruleset:u.ruleset},f.messages.sort(function(e,t){return e.rollup&&!t.rollup?1:!e.rollup&&t.rollup?-1:e.line-t.line}),f},i}();Reporter.prototype={constructor:Reporter,error:function(e,t,n,r){this.messages.push({type:"error",line:t,col:n,message:e,evidence:this.lines[t-1],rule:r||{}})},warn:function(e,t,n,r){this.report(e,t,n,r)},report:function(e,t,n,r){this.messages.push({type:this.ruleset[r.id]==2?"error":"warning",line:t,col:n,message:e,evidence:this.lines[t-1],rule:r})},info:function(e,t,n,r){this.messages.push({type:"info",line:t,col:n,message:e,evidence:this.lines[t-1],rule:r})},rollupError:function(e,t){this.messages.push({type:"error",rollup:!0,message:e,rule:t})},rollupWarn:function(e,t){this.messages.push({type:"warning",rollup:!0,message:e,rule:t})},stat:function(e,t){this.stats[e]=t}},CSSLint._Reporter=Reporter,CSSLint.Util={mix:function(e,t){var n;for(n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return n},indexOf:function(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},forEach:function(e,t){if(e.forEach)return e.forEach(t);for(var n=0,r=e.length;n<r;n++)t(e[n],n,e)}},CSSLint.addRule({id:"adjoining-classes",name:"Disallow adjoining classes",desc:"Don't use adjoining classes.",browsers:"IE6",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l,c;for(f=0;f<i.length;f++){s=i[f];for(l=0;l<s.parts.length;l++){o=s.parts[l];if(o.type==e.SELECTOR_PART_TYPE){a=0;for(c=0;c<o.modifiers.length;c++)u=o.modifiers[c],u.type=="class"&&a++,a>1&&t.report("Don't use adjoining classes.",o.line,o.col,n)}}}})}}),CSSLint.addRule({id:"box-model",name:"Beware of broken box size",desc:"Don't use width or height when using padding or border.",browsers:"All",init:function(e,t){function n(){u={},a=!1}function r(){var e,n;if(!a){if(u.height)for(e in o)o.hasOwnProperty(e)&&u[e]&&(n=u[e].value,(e!="padding"||n.parts.length!==2||n.parts[0].value!==0)&&t.report("Using height with "+e+" can sometimes make elements larger than you expect.",u[e].line,u[e].col,i));if(u.width)for(e in s)s.hasOwnProperty(e)&&u[e]&&(n=u[e].value,(e!="padding"||n.parts.length!==2||n.parts[1].value!==0)&&t.report("Using width with "+e+" can sometimes make elements larger than you expect.",u[e].line,u[e].col,i))}}var i=this,s={border:1,"border-left":1,"border-right":1,padding:1,"padding-left":1,"padding-right":1},o={border:1,"border-bottom":1,"border-top":1,padding:1,"padding-bottom":1,"padding-top":1},u,a=!1;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var t=e.property.text.toLowerCase();o[t]||s[t]?!/^0\S*$/.test(e.value)&&(t!="border"||e.value!="none")&&(u[t]={line:e.property.line,col:e.property.col,value:e.value}):/^(width|height)/i.test(t)&&/^(length|percentage)/.test(e.value.parts[0].type)?u[t]=1:t=="box-sizing"&&(a=!0)}),e.addListener("endrule",r),e.addListener("endfontface",r),e.addListener("endpage",r),e.addListener("endpagemargin",r),e.addListener("endkeyframerule",r)}}),CSSLint.addRule({id:"box-sizing",name:"Disallow use of box-sizing",desc:"The box-sizing properties isn't supported in IE6 and IE7.",browsers:"IE6, IE7",tags:["Compatibility"],init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property.text.toLowerCase();r=="box-sizing"&&t.report("The box-sizing property isn't supported in IE6 and IE7.",e.line,e.col,n)})}}),CSSLint.addRule({id:"bulletproof-font-face",name:"Use the bulletproof @font-face syntax",desc:"Use the bulletproof @font-face syntax to avoid 404's in old IE (http://www.fontspring.com/blog/the-new-bulletproof-font-face-syntax).",browsers:"All",init:function(e,t){var n=this,r=0,i=!1,s=!0,o=!1,u,a;e.addListener("startfontface",function(e){i=!0}),e.addListener("property",function(e){if(!i)return;var t=e.property.toString().toLowerCase(),n=e.value.toString();u=e.line,a=e.col;if(t==="src"){var r=/^\s?url\(['"].+\.eot\?.*['"]\)\s*format\(['"]embedded-opentype['"]\).*$/i;!n.match(r)&&s?(o=!0,s=!1):n.match(r)&&!s&&(o=!1)}}),e.addListener("endfontface",function(e){i=!1,o&&t.report("@font-face declaration doesn't follow the fontspring bulletproof syntax.",u,a,n)})}}),CSSLint.addRule({id:"compatible-vendor-prefixes",name:"Require compatible vendor prefixes",desc:"Include all compatible vendor prefixes to reach a wider range of users.",browsers:"All",init:function(e,t){var n=this,r,i,s,o,u,a,f,l=!1,c=Array.prototype.push,h=[];r={animation:"webkit moz","animation-delay":"webkit moz","animation-direction":"webkit moz","animation-duration":"webkit moz","animation-fill-mode":"webkit moz","animation-iteration-count":"webkit moz","animation-name":"webkit moz","animation-play-state":"webkit moz","animation-timing-function":"webkit moz",appearance:"webkit moz","border-end":"webkit moz","border-end-color":"webkit moz","border-end-style":"webkit moz","border-end-width":"webkit moz","border-image":"webkit moz o","border-radius":"webkit","border-start":"webkit moz","border-start-color":"webkit moz","border-start-style":"webkit moz","border-start-width":"webkit moz","box-align":"webkit moz ms","box-direction":"webkit moz ms","box-flex":"webkit moz ms","box-lines":"webkit ms","box-ordinal-group":"webkit moz ms","box-orient":"webkit moz ms","box-pack":"webkit moz ms","box-sizing":"webkit moz","box-shadow":"webkit moz","column-count":"webkit moz ms","column-gap":"webkit moz ms","column-rule":"webkit moz ms","column-rule-color":"webkit moz ms","column-rule-style":"webkit moz ms","column-rule-width":"webkit moz ms","column-width":"webkit moz ms",hyphens:"epub moz","line-break":"webkit ms","margin-end":"webkit moz","margin-start":"webkit moz","marquee-speed":"webkit wap","marquee-style":"webkit wap","padding-end":"webkit moz","padding-start":"webkit moz","tab-size":"moz o","text-size-adjust":"webkit ms",transform:"webkit moz ms o","transform-origin":"webkit moz ms o",transition:"webkit moz o","transition-delay":"webkit moz o","transition-duration":"webkit moz o","transition-property":"webkit moz o","transition-timing-function":"webkit moz o","user-modify":"webkit moz","user-select":"webkit moz ms","word-break":"epub ms","writing-mode":"epub ms"};for(s in r)if(r.hasOwnProperty(s)){o=[],u=r[s].split(" ");for(a=0,f=u.length;a<f;a++)o.push("-"+u[a]+"-"+s);r[s]=o,c.apply(h,o)}e.addListener("startrule",function(){i=[]}),e.addListener("startkeyframes",function(e){l=e.prefix||!0}),e.addListener("endkeyframes",function(e){l=!1}),e.addListener("property",function(e){var t=e.property;CSSLint.Util.indexOf(h,t.text)>-1&&(!l||typeof l!="string"||t.text.indexOf("-"+l+"-")!==0)&&i.push(t)}),e.addListener("endrule",function(e){if(!i.length)return;var s={},o,u,a,f,l,c,h,p,d,v;for(o=0,u=i.length;o<u;o++){a=i[o];for(f in r)r.hasOwnProperty(f)&&(l=r[f],CSSLint.Util.indexOf(l,a.text)>-1&&(s[f]||(s[f]={full:l.slice(0),actual:[],actualNodes:[]}),CSSLint.Util.indexOf(s[f].actual,a.text)===-1&&(s[f].actual.push(a.text),s[f].actualNodes.push(a))))}for(f in s)if(s.hasOwnProperty(f)){c=s[f],h=c.full,p=c.actual;if(h.length>p.length)for(o=0,u=h.length;o<u;o++)d=h[o],CSSLint.Util.indexOf(p,d)===-1&&(v=p.length===1?p[0]:p.length==2?p.join(" and "):p.join(", "),t.report("The property "+d+" is compatible with "+v+" and should be included as well.",c.actualNodes[0].line,c.actualNodes[0].col,n))}})}}),CSSLint.addRule({id:"display-property-grouping",name:"Require properties appropriate for display",desc:"Certain properties shouldn't be used with certain display property values.",browsers:"All",init:function(e,t){function n(e,n,r){u[e]&&(typeof o[e]!="string"||u[e].value.toLowerCase()!=o[e])&&t.report(r||e+" can't be used with display: "+n+".",u[e].line,u[e].col,s)}function r(){u={}}function i(){var e=u.display?u.display.value:null;if(e)switch(e){case"inline":n("height",e),n("width",e),n("margin",e),n("margin-top",e),n("margin-bottom",e),n("float",e,"display:inline has no effect on floated elements (but may be used to fix the IE6 double-margin bug).");break;case"block":n("vertical-align",e);break;case"inline-block":n("float",e);break;default:e.indexOf("table-")===0&&(n("margin",e),n("margin-left",e),n("margin-right",e),n("margin-top",e),n("margin-bottom",e),n("float",e))}}var s=this,o={display:1,"float":"none",height:1,width:1,margin:1,"margin-left":1,"margin-right":1,"margin-bottom":1,"margin-top":1,padding:1,"padding-left":1,"padding-right":1,"padding-bottom":1,"padding-top":1,"vertical-align":1},u;e.addListener("startrule",r),e.addListener("startfontface",r),e.addListener("startkeyframerule",r),e.addListener("startpagemargin",r),e.addListener("startpage",r),e.addListener("property",function(e){var t=e.property.text.toLowerCase();o[t]&&(u[t]={value:e.value.text,line:e.property.line,col:e.property.col})}),e.addListener("endrule",i),e.addListener("endfontface",i),e.addListener("endkeyframerule",i),e.addListener("endpagemargin",i),e.addListener("endpage",i)}}),CSSLint.addRule({id:"duplicate-background-images",name:"Disallow duplicate background images",desc:"Every background-image should be unique. Use a common class for e.g. sprites.",browsers:"All",init:function(e,t){var n=this,r={};e.addListener("property",function(e){var i=e.property.text,s=e.value,o,u;if(i.match(/background/i))for(o=0,u=s.parts.length;o<u;o++)s.parts[o].type=="uri"&&(typeof r[s.parts[o].uri]=="undefined"?r[s.parts[o].uri]=e:t.report("Background image '"+s.parts[o].uri+"' was used multiple times, first declared at line "+r[s.parts[o].uri].line+", col "+r[s.parts[o].uri].col+".",e.line,e.col,n))})}}),CSSLint.addRule({id:"duplicate-properties",name:"Disallow duplicate properties",desc:"Duplicate properties must appear one after the other.",browsers:"All",init:function(e,t){function n(e){i={}}var r=this,i,s;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var n=e.property,o=n.text.toLowerCase();i[o]&&(s!=o||i[o]==e.value.text)&&t.report("Duplicate property '"+e.property+"' found.",e.line,e.col,r),i[o]=e.value.text,s=o})}}),CSSLint.addRule({id:"empty-rules",name:"Disallow empty rules",desc:"Rules without any properties specified should be removed.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(){r=0}),e.addListener("property",function(){r++}),e.addListener("endrule",function(e){var i=e.selectors;r===0&&t.report("Rule is empty.",i[0].line,i[0].col,n)})}}),CSSLint.addRule({id:"errors",name:"Parsing Errors",desc:"This rule looks for recoverable syntax errors.",browsers:"All",init:function(e,t){var n=this;e.addListener("error",function(e){t.error(e.message,e.line,e.col,n)})}}),CSSLint.addRule({id:"fallback-colors",name:"Require fallback colors",desc:"For older browsers that don't support RGBA, HSL, or HSLA, provide a fallback color.",browsers:"IE6,IE7,IE8",init:function(e,t){function n(e){o={},i=null}var r=this,i,s={color:1,background:1,"border-color":1,"border-top-color":1,"border-right-color":1,"border-bottom-color":1,"border-left-color":1,border:1,"border-top":1,"border-right":1,"border-bottom":1,"border-left":1,"background-color":1},o;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var n=e.property,o=n.text.toLowerCase(),u=e.value.parts,a=0,f="",l=u.length;if(s[o])while(a<l)u[a].type=="color"&&("alpha"in u[a]||"hue"in u[a]?(/([^\)]+)\(/.test(u[a])&&(f=RegExp.$1.toUpperCase()),(!i||i.property.text.toLowerCase()!=o||i.colorType!="compat")&&t.report("Fallback "+o+" (hex or RGB) should precede "+f+" "+o+".",e.line,e.col,r)):e.colorType="compat"),a++;i=e})}}),CSSLint.addRule({id:"floats",name:"Disallow too many floats",desc:"This rule tests if the float property is used too many times",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("property",function(e){e.property.text.toLowerCase()=="float"&&e.value.text.toLowerCase()!="none"&&r++}),e.addListener("endstylesheet",function(){t.stat("floats",r),r>=10&&t.rollupWarn("Too many floats ("+r+"), you're probably using them for layout. Consider using a grid system instead.",n)})}}),CSSLint.addRule({id:"font-faces",name:"Don't use too many web fonts",desc:"Too many different web fonts in the same stylesheet.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("startfontface",function(){r++}),e.addListener("endstylesheet",function(){r>5&&t.rollupWarn("Too many @font-face declarations ("+r+").",n)})}}),CSSLint.addRule({id:"font-sizes",name:"Disallow too many font sizes",desc:"Checks the number of font-size declarations.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("property",function(e){e.property=="font-size"&&r++}),e.addListener("endstylesheet",function(){t.stat("font-sizes",r),r>=10&&t.rollupWarn("Too many font-size declarations ("+r+"), abstraction needed.",n)})}}),CSSLint.addRule({id:"gradients",name:"Require all gradient definitions",desc:"When using a vendor-prefixed gradient, make sure to use them all.",browsers:"All",init:function(e,t){var n=this,r;e.addListener("startrule",function(){r={moz:0,webkit:0,oldWebkit:0,o:0}}),e.addListener("property",function(e){/\-(moz|o|webkit)(?:\-(?:linear|radial))\-gradient/i.test(e.value)?r[RegExp.$1]=1:/\-webkit\-gradient/i.test(e.value)&&(r.oldWebkit=1)}),e.addListener("endrule",function(e){var i=[];r.moz||i.push("Firefox 3.6+"),r.webkit||i.push("Webkit (Safari 5+, Chrome)"),r.oldWebkit||i.push("Old Webkit (Safari 4+, Chrome)"),r.o||i.push("Opera 11.1+"),i.length&&i.length<4&&t.report("Missing vendor-prefixed CSS gradients for "+i.join(", ")+".",e.selectors[0].line,e.selectors[0].col,n)})}}),CSSLint.addRule({id:"ids",name:"Disallow IDs in selectors",desc:"Selectors should not contain IDs.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l,c;for(f=0;f<i.length;f++){s=i[f],a=0;for(l=0;l<s.parts.length;l++){o=s.parts[l];if(o.type==e.SELECTOR_PART_TYPE)for(c=0;c<o.modifiers.length;c++)u=o.modifiers[c],u.type=="id"&&a++}a==1?t.report("Don't use IDs in selectors.",s.line,s.col,n):a>1&&t.report(a+" IDs in the selector, really?",s.line,s.col,n)}})}}),CSSLint.addRule({id:"import",name:"Disallow @import",desc:"Don't use @import, use <link> instead.",browsers:"All",init:function(e,t){var n=this;e.addListener("import",function(e){t.report("@import prevents parallel downloads, use <link> instead.",e.line,e.col,n)})}}),CSSLint.addRule({id:"important",name:"Disallow !important",desc:"Be careful when using !important declaration",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("property",function(e){e.important===!0&&(r++,t.report("Use of !important",e.line,e.col,n))}),e.addListener("endstylesheet",function(){t.stat("important",r),r>=10&&t.rollupWarn("Too many !important declarations ("+r+"), try to use less than 10 to avoid specificity issues.",n)})}}),CSSLint.addRule({id:"known-properties",name:"Require use of known properties",desc:"Properties should be known (listed in CSS3 specification) or be a vendor-prefixed property.",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property.text.toLowerCase();e.invalid&&t.report(e.invalid.message,e.line,e.col,n)})}}),CSSLint.addRule({id:"outline-none",name:"Disallow outline: none",desc:"Use of outline: none or outline: 0 should be limited to :focus rules.",browsers:"All",tags:["Accessibility"],init:function(e,t){function n(e){e.selectors?s={line:e.line,col:e.col,selectors:e.selectors,propCount:0,outline:!1}:s=null}function r(e){s&&s.outline&&(s.selectors.toString().toLowerCase().indexOf(":focus")==-1?t.report("Outlines should only be modified using :focus.",s.line,s.col,i):s.propCount==1&&t.report("Outlines shouldn't be hidden unless other visual changes are made.",s.line,s.col,i))}var i=this,s;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var t=e.property.text.toLowerCase(),n=e.value;s&&(s.propCount++,t=="outline"&&(n=="none"||n=="0")&&(s.outline=!0))}),e.addListener("endrule",r),e.addListener("endfontface",r),e.addListener("endpage",r),e.addListener("endpagemargin",r),e.addListener("endkeyframerule",r)}}),CSSLint.addRule({id:"overqualified-elements",name:"Disallow overqualified elements",desc:"Don't use classes or IDs with elements (a.foo or a#foo).",browsers:"All",init:function(e,t){var n=this,r={};e.addListener("startrule",function(i){var s=i.selectors,o,u,a,f,l,c;for(f=0;f<s.length;f++){o=s[f];for(l=0;l<o.parts.length;l++){u=o.parts[l];if(u.type==e.SELECTOR_PART_TYPE)for(c=0;c<u.modifiers.length;c++)a=u.modifiers[c],u.elementName&&a.type=="id"?t.report("Element ("+u+") is overqualified, just use "+a+" without element name.",u.line,u.col,n):a.type=="class"&&(r[a]||(r[a]=[]),r[a].push({modifier:a,part:u}))}}}),e.addListener("endstylesheet",function(){var e;for(e in r)r.hasOwnProperty(e)&&r[e].length==1&&r[e][0].part.elementName&&t.report("Element ("+r[e][0].part+") is overqualified, just use "+r[e][0].modifier+" without element name.",r[e][0].part.line,r[e][0].part.col,n)})}}),CSSLint.addRule({id:"qualified-headings",name:"Disallow qualified headings",desc:"Headings should not be qualified (namespaced).",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a;for(u=0;u<i.length;u++){s=i[u];for(a=0;a<s.parts.length;a++)o=s.parts[a],o.type==e.SELECTOR_PART_TYPE&&o.elementName&&/h[1-6]/.test(o.elementName.toString())&&a>0&&t.report("Heading ("+o.elementName+") should not be qualified.",o.line,o.col,n)}})}}),CSSLint.addRule({id:"regex-selectors",name:"Disallow selectors that look like regexs",desc:"Selectors that look like regular expressions are slow and should be avoided.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l;for(a=0;a<i.length;a++){s=i[a];for(f=0;f<s.parts.length;f++){o=s.parts[f];if(o.type==e.SELECTOR_PART_TYPE)for(l=0;l<o.modifiers.length;l++)u=o.modifiers[l],u.type=="attribute"&&/([\~\|\^\$\*]=)/.test(u)&&t.report("Attribute selectors with "+RegExp.$1+" are slow!",u.line,u.col,n)}}})}}),CSSLint.addRule({id:"rules-count",name:"Rules Count",desc:"Track how many rules there are.",browsers:"All",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(){r++}),e.addListener("endstylesheet",function(){t.stat("rule-count",r)})}}),CSSLint.addRule({id:"selector-max-approaching",name:"Warn when approaching the 4095 selector limit for IE",desc:"Will warn when selector count is >= 3800 selectors.",browsers:"IE",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(e){r+=e.selectors.length}),e.addListener("endstylesheet",function(){r>=3800&&t.report("You have "+r+" selectors. Internet Explorer supports a maximum of 4095 selectors per stylesheet. Consider refactoring.",0,0,n)})}}),CSSLint.addRule({id:"selector-max",name:"Error when past the 4095 selector limit for IE",desc:"Will error when selector count is > 4095.",browsers:"IE",init:function(e,t){var n=this,r=0;e.addListener("startrule",function(e){r+=e.selectors.length}),e.addListener("endstylesheet",function(){r>4095&&t.report("You have "+r+" selectors. Internet Explorer supports a maximum of 4095 selectors per stylesheet. Consider refactoring.",0,0,n)})}}),CSSLint.addRule({id:"shorthand",name:"Require shorthand properties",desc:"Use shorthand properties where possible.",browsers:"All",init:function(e,t){function n(e){f={}}function r(e){var n,r,s,o;for(n in l)if(l.hasOwnProperty(n)){o=0;for(r=0,s=l[n].length;r<s;r++)o+=f[l[n][r]]?1:0;o==l[n].length&&t.report("The properties "+l[n].join(", ")+" can be replaced by "+n+".",e.line,e.col,i)}}var i=this,s,o,u,a={},f,l={margin:["margin-top","margin-bottom","margin-left","margin-right"],padding:["padding-top","padding-bottom","padding-left","padding-right"]};for(s in l)if(l.hasOwnProperty(s))for(o=0,u=l[s].length;o<u;o++)a[l[s][o]]=s;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("property",function(e){var t=e.property.toString().toLowerCase(),n=e.value.parts[0].value;a[t]&&(f[t]=1)}),e.addListener("endrule",r),e.addListener("endfontface",r)}}),CSSLint.addRule({id:"star-property-hack",name:"Disallow properties with a star prefix",desc:"Checks for the star property hack (targets IE6/7)",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property;r.hack=="*"&&t.report("Property with star prefix found.",e.property.line,e.property.col,n)})}}),CSSLint.addRule({id:"text-indent",name:"Disallow negative text-indent",desc:"Checks for text indent less than -99px",browsers:"All",init:function(e,t){function n(e){s=!1,o="inherit"}function r(e){s&&o!="ltr"&&t.report("Negative text-indent doesn't work well with RTL. If you use text-indent for image replacement explicitly set direction for that item to ltr.",s.line,s.col,i)}var i=this,s,o;e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("property",function(e){var t=e.property.toString().toLowerCase(),n=e.value;t=="text-indent"&&n.parts[0].value<-99?s=e.property:t=="direction"&&n=="ltr"&&(o="ltr")}),e.addListener("endrule",r),e.addListener("endfontface",r)}}),CSSLint.addRule({id:"underscore-property-hack",name:"Disallow properties with an underscore prefix",desc:"Checks for the underscore property hack (targets IE6)",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.property;r.hack=="_"&&t.report("Property with underscore prefix found.",e.property.line,e.property.col,n)})}}),CSSLint.addRule({id:"unique-headings",name:"Headings should only be defined once",desc:"Headings should be defined only once.",browsers:"All",init:function(e,t){var n=this,r={h1:0,h2:0,h3:0,h4:0,h5:0,h6:0};e.addListener("startrule",function(e){var i=e.selectors,s,o,u,a,f;for(a=0;a<i.length;a++){s=i[a],o=s.parts[s.parts.length-1];if(o.elementName&&/(h[1-6])/i.test(o.elementName.toString())){for(f=0;f<o.modifiers.length;f++)if(o.modifiers[f].type=="pseudo"){u=!0;break}u||(r[RegExp.$1]++,r[RegExp.$1]>1&&t.report("Heading ("+o.elementName+") has already been defined.",o.line,o.col,n))}}}),e.addListener("endstylesheet",function(e){var i,s=[];for(i in r)r.hasOwnProperty(i)&&r[i]>1&&s.push(r[i]+" "+i+"s");s.length&&t.rollupWarn("You have "+s.join(", ")+" defined in this stylesheet.",n)})}}),CSSLint.addRule({id:"universal-selector",name:"Disallow universal selector",desc:"The universal selector (*) is known to be slow.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(e){var r=e.selectors,i,s,o,u,a,f;for(u=0;u<r.length;u++)i=r[u],s=i.parts[i.parts.length-1],s.elementName=="*"&&t.report(n.desc,s.line,s.col,n)})}}),CSSLint.addRule({id:"unqualified-attributes",name:"Disallow unqualified attribute selectors",desc:"Unqualified attribute selectors are known to be slow.",browsers:"All",init:function(e,t){var n=this;e.addListener("startrule",function(r){var i=r.selectors,s,o,u,a,f,l;for(a=0;a<i.length;a++){s=i[a],o=s.parts[s.parts.length-1];if(o.type==e.SELECTOR_PART_TYPE)for(l=0;l<o.modifiers.length;l++)u=o.modifiers[l],u.type=="attribute"&&(!o.elementName||o.elementName=="*")&&t.report(n.desc,o.line,o.col,n)}})}}),CSSLint.addRule({id:"vendor-prefix",name:"Require standard property with vendor prefix",desc:"When using a vendor-prefixed property, make sure to include the standard one.",browsers:"All",init:function(e,t){function n(){s={},o=1}function r(e){var n,r,o,a,f,l,c=[];for(n in s)u[n]&&c.push({actual:n,needed:u[n]});for(r=0,o=c.length;r<o;r++)f=c[r].needed,l=c[r].actual,s[f]?s[f][0].pos<s[l][0].pos&&t.report("Standard property '"+f+"' should come after vendor-prefixed property '"+l+"'.",s[l][0].name.line,s[l][0].name.col,i):t.report("Missing standard property '"+f+"' to go along with '"+l+"'.",s[l][0].name.line,s[l][0].name.col,i)}var i=this,s,o,u={"-webkit-border-radius":"border-radius","-webkit-border-top-left-radius":"border-top-left-radius","-webkit-border-top-right-radius":"border-top-right-radius","-webkit-border-bottom-left-radius":"border-bottom-left-radius","-webkit-border-bottom-right-radius":"border-bottom-right-radius","-o-border-radius":"border-radius","-o-border-top-left-radius":"border-top-left-radius","-o-border-top-right-radius":"border-top-right-radius","-o-border-bottom-left-radius":"border-bottom-left-radius","-o-border-bottom-right-radius":"border-bottom-right-radius","-moz-border-radius":"border-radius","-moz-border-radius-topleft":"border-top-left-radius","-moz-border-radius-topright":"border-top-right-radius","-moz-border-radius-bottomleft":"border-bottom-left-radius","-moz-border-radius-bottomright":"border-bottom-right-radius","-moz-column-count":"column-count","-webkit-column-count":"column-count","-moz-column-gap":"column-gap","-webkit-column-gap":"column-gap","-moz-column-rule":"column-rule","-webkit-column-rule":"column-rule","-moz-column-rule-style":"column-rule-style","-webkit-column-rule-style":"column-rule-style","-moz-column-rule-color":"column-rule-color","-webkit-column-rule-color":"column-rule-color","-moz-column-rule-width":"column-rule-width","-webkit-column-rule-width":"column-rule-width","-moz-column-width":"column-width","-webkit-column-width":"column-width","-webkit-column-span":"column-span","-webkit-columns":"columns","-moz-box-shadow":"box-shadow","-webkit-box-shadow":"box-shadow","-moz-transform":"transform","-webkit-transform":"transform","-o-transform":"transform","-ms-transform":"transform","-moz-transform-origin":"transform-origin","-webkit-transform-origin":"transform-origin","-o-transform-origin":"transform-origin","-ms-transform-origin":"transform-origin","-moz-box-sizing":"box-sizing","-webkit-box-sizing":"box-sizing","-moz-user-select":"user-select","-khtml-user-select":"user-select","-webkit-user-select":"user-select"};e.addListener("startrule",n),e.addListener("startfontface",n),e.addListener("startpage",n),e.addListener("startpagemargin",n),e.addListener("startkeyframerule",n),e.addListener("property",function(e){var t=e.property.text.toLowerCase();s[t]||(s[t]=[]),s[t].push({name:e.property,value:e.value,pos:o++})}),e.addListener("endrule",r),e.addListener("endfontface",r),e.addListener("endpage",r),e.addListener("endpagemargin",r),e.addListener("endkeyframerule",r)}}),CSSLint.addRule({id:"zero-units",name:"Disallow units for 0 values",desc:"You don't need to specify units when a value is 0.",browsers:"All",init:function(e,t){var n=this;e.addListener("property",function(e){var r=e.value.parts,i=0,s=r.length;while(i<s)(r[i].units||r[i].type=="percentage")&&r[i].value===0&&r[i].type!="time"&&t.report("Values of 0 shouldn't have units specified.",r[i].line,r[i].col,n),i++})}}),function(){var e=function(e){return!e||e.constructor!==String?"":e.replace(/[\"&><]/g,function(e){switch(e){case'"':return"&quot;";case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;"}})};CSSLint.addFormatter({id:"checkstyle-xml",name:"Checkstyle XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><checkstyle>'},endFormat:function(){return"</checkstyle>"},readError:function(t,n){return'<file name="'+e(t)+'"><error line="0" column="0" severty="error" message="'+e(n)+'"></error></file>'},formatResults:function(t,n,r){var i=t.messages,s=[],o=function(e){return!!e&&"name"in e?"net.csslint."+e.name.replace(/\s/g,""):""};return i.length>0&&(s.push('<file name="'+n+'">'),CSSLint.Util.forEach(i,function(t,n){t.rollup||s.push('<error line="'+t.line+'" column="'+t.col+'" severity="'+t.type+'"'+' message="'+e(t.message)+'" source="'+o(t.rule)+'"/>')}),s.push("</file>")),s.join("")}})}(),CSSLint.addFormatter({id:"compact",name:"Compact, 'porcelain' format",startFormat:function(){return""},endFormat:function(){return""},formatResults:function(e,t,n){var r=e.messages,i="";n=n||{};var s=function(e){return e.charAt(0).toUpperCase()+e.slice(1)};return r.length===0?n.quiet?"":t+": Lint Free!":(CSSLint.Util.forEach(r,function(e,n){e.rollup?i+=t+": "+s(e.type)+" - "+e.message+"\n":i+=t+": "+"line "+e.line+", col "+e.col+", "+s(e.type)+" - "+e.message+"\n"}),i)}}),CSSLint.addFormatter({id:"csslint-xml",name:"CSSLint XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><csslint>'},endFormat:function(){return"</csslint>"},formatResults:function(e,t,n){var r=e.messages,i=[],s=function(e){return!e||e.constructor!==String?"":e.replace(/\"/g,"'").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return r.length>0&&(i.push('<file name="'+t+'">'),CSSLint.Util.forEach(r,function(e,t){e.rollup?i.push('<issue severity="'+e.type+'" reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>'):i.push('<issue line="'+e.line+'" char="'+e.col+'" severity="'+e.type+'"'+' reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>')}),i.push("</file>")),i.join("")}}),CSSLint.addFormatter({id:"junit-xml",name:"JUNIT XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><testsuites>'},endFormat:function(){return"</testsuites>"},formatResults:function(e,t,n){var r=e.messages,i=[],s={error:0,failure:0},o=function(e){return!!e&&"name"in e?"net.csslint."+e.name.replace(/\s/g,""):""},u=function(e){return!e||e.constructor!==String?"":e.replace(/\"/g,"'").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return r.length>0&&(r.forEach(function(e,t){var n=e.type==="warning"?"error":e.type;e.rollup||(i.push('<testcase time="0" name="'+o(e.rule)+'">'),i.push("<"+n+' message="'+u(e.message)+'"><![CDATA['+e.line+":"+e.col+":"+u(e.evidence)+"]]></"+n+">"),i.push("</testcase>"),s[n]+=1)}),i.unshift('<testsuite time="0" tests="'+r.length+'" skipped="0" errors="'+s.error+'" failures="'+s.failure+'" package="net.csslint" name="'+t+'">'),i.push("</testsuite>")),i.join("")}}),CSSLint.addFormatter({id:"lint-xml",name:"Lint XML format",startFormat:function(){return'<?xml version="1.0" encoding="utf-8"?><lint>'},endFormat:function(){return"</lint>"},formatResults:function(e,t,n){var r=e.messages,i=[],s=function(e){return!e||e.constructor!==String?"":e.replace(/\"/g,"'").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};return r.length>0&&(i.push('<file name="'+t+'">'),CSSLint.Util.forEach(r,function(e,t){e.rollup?i.push('<issue severity="'+e.type+'" reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>'):i.push('<issue line="'+e.line+'" char="'+e.col+'" severity="'+e.type+'"'+' reason="'+s(e.message)+'" evidence="'+s(e.evidence)+'"/>')}),i.push("</file>")),i.join("")}}),CSSLint.addFormatter({id:"text",name:"Plain Text",startFormat:function(){return""},endFormat:function(){return""},formatResults:function(e,t,n){var r=e.messages,i="";n=n||{};if(r.length===0)return n.quiet?"":"\n\ncsslint: No errors in "+t+".";i="\n\ncsslint: There are "+r.length+" problems in "+t+".";var s=t.lastIndexOf("/"),o=t;return s===-1&&(s=t.lastIndexOf("\\")),s>-1&&(o=t.substring(s+1)),CSSLint.Util.forEach(r,function(e,t){i=i+"\n\n"+o,e.rollup?(i+="\n"+(t+1)+": "+e.type,i+="\n"+e.message):(i+="\n"+(t+1)+": "+e.type+" at line "+e.line+", col "+e.col,i+="\n"+e.message,i+="\n"+e.evidence)}),i}}),exports.CSSLint=CSSLint})
assets/js/vendor/jquery/jquery-ui-timepicker.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ /*! jQuery Timepicker Addon - v1.4.3 - 2013-11-30
2
+ * http://trentrichardson.com/examples/timepicker
3
+ * Copyright (c) 2013 Trent Richardson; Licensed MIT */
4
+ (function($){if($.ui.timepicker=$.ui.timepicker||{},!$.ui.timepicker.version){$.extend($.ui,{timepicker:{version:"1.4.3"}});var Timepicker=function(){this.regional=[],this.regional[""]={currentText:"Now",closeText:"Done",amNames:["AM","A"],pmNames:["PM","P"],timeFormat:"HH:mm",timeSuffix:"",timeOnlyTitle:"Choose Time",timeText:"Time",hourText:"Hour",minuteText:"Minute",secondText:"Second",millisecText:"Millisecond",microsecText:"Microsecond",timezoneText:"Time Zone",isRTL:!1},this._defaults={showButtonPanel:!0,timeOnly:!1,showHour:null,showMinute:null,showSecond:null,showMillisec:null,showMicrosec:null,showTimezone:null,showTime:!0,stepHour:1,stepMinute:1,stepSecond:1,stepMillisec:1,stepMicrosec:1,hour:0,minute:0,second:0,millisec:0,microsec:0,timezone:null,hourMin:0,minuteMin:0,secondMin:0,millisecMin:0,microsecMin:0,hourMax:23,minuteMax:59,secondMax:59,millisecMax:999,microsecMax:999,minDateTime:null,maxDateTime:null,onSelect:null,hourGrid:0,minuteGrid:0,secondGrid:0,millisecGrid:0,microsecGrid:0,alwaysSetTime:!0,separator:" ",altFieldTimeOnly:!0,altTimeFormat:null,altSeparator:null,altTimeSuffix:null,pickerTimeFormat:null,pickerTimeSuffix:null,showTimepicker:!0,timezoneList:null,addSliderAccess:!1,sliderAccessArgs:null,controlType:"slider",defaultValue:null,parse:"strict"},$.extend(this._defaults,this.regional[""])};$.extend(Timepicker.prototype,{$input:null,$altInput:null,$timeObj:null,inst:null,hour_slider:null,minute_slider:null,second_slider:null,millisec_slider:null,microsec_slider:null,timezone_select:null,hour:0,minute:0,second:0,millisec:0,microsec:0,timezone:null,hourMinOriginal:null,minuteMinOriginal:null,secondMinOriginal:null,millisecMinOriginal:null,microsecMinOriginal:null,hourMaxOriginal:null,minuteMaxOriginal:null,secondMaxOriginal:null,millisecMaxOriginal:null,microsecMaxOriginal:null,ampm:"",formattedDate:"",formattedTime:"",formattedDateTime:"",timezoneList:null,units:["hour","minute","second","millisec","microsec"],support:{},control:null,setDefaults:function(e){return extendRemove(this._defaults,e||{}),this},_newInst:function($input,opts){var tp_inst=new Timepicker,inlineSettings={},fns={},overrides,i;for(var attrName in this._defaults)if(this._defaults.hasOwnProperty(attrName)){var attrValue=$input.attr("time:"+attrName);if(attrValue)try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}overrides={beforeShow:function(e,t){return $.isFunction(tp_inst._defaults.evnts.beforeShow)?tp_inst._defaults.evnts.beforeShow.call($input[0],e,t,tp_inst):void 0},onChangeMonthYear:function(e,t,i){tp_inst._updateDateTime(i),$.isFunction(tp_inst._defaults.evnts.onChangeMonthYear)&&tp_inst._defaults.evnts.onChangeMonthYear.call($input[0],e,t,i,tp_inst)},onClose:function(e,t){tp_inst.timeDefined===!0&&""!==$input.val()&&tp_inst._updateDateTime(t),$.isFunction(tp_inst._defaults.evnts.onClose)&&tp_inst._defaults.evnts.onClose.call($input[0],e,t,tp_inst)}};for(i in overrides)overrides.hasOwnProperty(i)&&(fns[i]=opts[i]||null);tp_inst._defaults=$.extend({},this._defaults,inlineSettings,opts,overrides,{evnts:fns,timepicker:tp_inst}),tp_inst.amNames=$.map(tp_inst._defaults.amNames,function(e){return e.toUpperCase()}),tp_inst.pmNames=$.map(tp_inst._defaults.pmNames,function(e){return e.toUpperCase()}),tp_inst.support=detectSupport(tp_inst._defaults.timeFormat+(tp_inst._defaults.pickerTimeFormat?tp_inst._defaults.pickerTimeFormat:"")+(tp_inst._defaults.altTimeFormat?tp_inst._defaults.altTimeFormat:"")),"string"==typeof tp_inst._defaults.controlType?("slider"===tp_inst._defaults.controlType&&$.ui.slider===void 0&&(tp_inst._defaults.controlType="select"),tp_inst.control=tp_inst._controls[tp_inst._defaults.controlType]):tp_inst.control=tp_inst._defaults.controlType;var timezoneList=[-720,-660,-600,-570,-540,-480,-420,-360,-300,-270,-240,-210,-180,-120,-60,0,60,120,180,210,240,270,300,330,345,360,390,420,480,525,540,570,600,630,660,690,720,765,780,840];null!==tp_inst._defaults.timezoneList&&(timezoneList=tp_inst._defaults.timezoneList);var tzl=timezoneList.length,tzi=0,tzv=null;if(tzl>0&&"object"!=typeof timezoneList[0])for(;tzl>tzi;tzi++)tzv=timezoneList[tzi],timezoneList[tzi]={value:tzv,label:$.timepicker.timezoneOffsetString(tzv,tp_inst.support.iso8601)};return tp_inst._defaults.timezoneList=timezoneList,tp_inst.timezone=null!==tp_inst._defaults.timezone?$.timepicker.timezoneOffsetNumber(tp_inst._defaults.timezone):-1*(new Date).getTimezoneOffset(),tp_inst.hour=tp_inst._defaults.hour<tp_inst._defaults.hourMin?tp_inst._defaults.hourMin:tp_inst._defaults.hour>tp_inst._defaults.hourMax?tp_inst._defaults.hourMax:tp_inst._defaults.hour,tp_inst.minute=tp_inst._defaults.minute<tp_inst._defaults.minuteMin?tp_inst._defaults.minuteMin:tp_inst._defaults.minute>tp_inst._defaults.minuteMax?tp_inst._defaults.minuteMax:tp_inst._defaults.minute,tp_inst.second=tp_inst._defaults.second<tp_inst._defaults.secondMin?tp_inst._defaults.secondMin:tp_inst._defaults.second>tp_inst._defaults.secondMax?tp_inst._defaults.secondMax:tp_inst._defaults.second,tp_inst.millisec=tp_inst._defaults.millisec<tp_inst._defaults.millisecMin?tp_inst._defaults.millisecMin:tp_inst._defaults.millisec>tp_inst._defaults.millisecMax?tp_inst._defaults.millisecMax:tp_inst._defaults.millisec,tp_inst.microsec=tp_inst._defaults.microsec<tp_inst._defaults.microsecMin?tp_inst._defaults.microsecMin:tp_inst._defaults.microsec>tp_inst._defaults.microsecMax?tp_inst._defaults.microsecMax:tp_inst._defaults.microsec,tp_inst.ampm="",tp_inst.$input=$input,tp_inst._defaults.altField&&(tp_inst.$altInput=$(tp_inst._defaults.altField).css({cursor:"pointer"}).focus(function(){$input.trigger("focus")})),(0===tp_inst._defaults.minDate||0===tp_inst._defaults.minDateTime)&&(tp_inst._defaults.minDate=new Date),(0===tp_inst._defaults.maxDate||0===tp_inst._defaults.maxDateTime)&&(tp_inst._defaults.maxDate=new Date),void 0!==tp_inst._defaults.minDate&&tp_inst._defaults.minDate instanceof Date&&(tp_inst._defaults.minDateTime=new Date(tp_inst._defaults.minDate.getTime())),void 0!==tp_inst._defaults.minDateTime&&tp_inst._defaults.minDateTime instanceof Date&&(tp_inst._defaults.minDate=new Date(tp_inst._defaults.minDateTime.getTime())),void 0!==tp_inst._defaults.maxDate&&tp_inst._defaults.maxDate instanceof Date&&(tp_inst._defaults.maxDateTime=new Date(tp_inst._defaults.maxDate.getTime())),void 0!==tp_inst._defaults.maxDateTime&&tp_inst._defaults.maxDateTime instanceof Date&&(tp_inst._defaults.maxDate=new Date(tp_inst._defaults.maxDateTime.getTime())),tp_inst.$input.bind("focus",function(){tp_inst._onFocus()}),tp_inst},_addTimePicker:function(e){var t=this.$altInput&&this._defaults.altFieldTimeOnly?this.$input.val()+" "+this.$altInput.val():this.$input.val();this.timeDefined=this._parseTime(t),this._limitMinMaxDateTime(e,!1),this._injectTimePicker()},_parseTime:function(e,t){if(this.inst||(this.inst=$.datepicker._getInst(this.$input[0])),t||!this._defaults.timeOnly){var i=$.datepicker._get(this.inst,"dateFormat");try{var s=parseDateTimeInternal(i,this._defaults.timeFormat,e,$.datepicker._getFormatConfig(this.inst),this._defaults);if(!s.timeObj)return!1;$.extend(this,s.timeObj)}catch(a){return $.timepicker.log("Error parsing the date/time string: "+a+"\ndate/time string = "+e+"\ntimeFormat = "+this._defaults.timeFormat+"\ndateFormat = "+i),!1}return!0}var n=$.datepicker.parseTime(this._defaults.timeFormat,e,this._defaults);return n?($.extend(this,n),!0):!1},_injectTimePicker:function(){var e=this.inst.dpDiv,t=this.inst.settings,i=this,s="",a="",n=null,r={},l={},o=null,c=0,u=0;if(0===e.find("div.ui-timepicker-div").length&&t.showTimepicker){var m=' style="display:none;"',d='<div class="ui-timepicker-div'+(t.isRTL?" ui-timepicker-rtl":"")+'"><dl>'+'<dt class="ui_tpicker_time_label"'+(t.showTime?"":m)+">"+t.timeText+"</dt>"+'<dd class="ui_tpicker_time"'+(t.showTime?"":m)+"></dd>";for(c=0,u=this.units.length;u>c;c++){if(s=this.units[c],a=s.substr(0,1).toUpperCase()+s.substr(1),n=null!==t["show"+a]?t["show"+a]:this.support[s],r[s]=parseInt(t[s+"Max"]-(t[s+"Max"]-t[s+"Min"])%t["step"+a],10),l[s]=0,d+='<dt class="ui_tpicker_'+s+'_label"'+(n?"":m)+">"+t[s+"Text"]+"</dt>"+'<dd class="ui_tpicker_'+s+'"><div class="ui_tpicker_'+s+'_slider"'+(n?"":m)+"></div>",n&&t[s+"Grid"]>0){if(d+='<div style="padding-left: 1px"><table class="ui-tpicker-grid-label"><tr>',"hour"===s)for(var p=t[s+"Min"];r[s]>=p;p+=parseInt(t[s+"Grid"],10)){l[s]++;var h=$.datepicker.formatTime(this.support.ampm?"hht":"HH",{hour:p},t);d+='<td data-for="'+s+'">'+h+"</td>"}else for(var _=t[s+"Min"];r[s]>=_;_+=parseInt(t[s+"Grid"],10))l[s]++,d+='<td data-for="'+s+'">'+(10>_?"0":"")+_+"</td>";d+="</tr></table></div>"}d+="</dd>"}var f=null!==t.showTimezone?t.showTimezone:this.support.timezone;d+='<dt class="ui_tpicker_timezone_label"'+(f?"":m)+">"+t.timezoneText+"</dt>",d+='<dd class="ui_tpicker_timezone" '+(f?"":m)+"></dd>",d+="</dl></div>";var g=$(d);for(t.timeOnly===!0&&(g.prepend('<div class="ui-widget-header ui-helper-clearfix ui-corner-all"><div class="ui-datepicker-title">'+t.timeOnlyTitle+"</div>"+"</div>"),e.find(".ui-datepicker-header, .ui-datepicker-calendar").hide()),c=0,u=i.units.length;u>c;c++)s=i.units[c],a=s.substr(0,1).toUpperCase()+s.substr(1),n=null!==t["show"+a]?t["show"+a]:this.support[s],i[s+"_slider"]=i.control.create(i,g.find(".ui_tpicker_"+s+"_slider"),s,i[s],t[s+"Min"],r[s],t["step"+a]),n&&t[s+"Grid"]>0&&(o=100*l[s]*t[s+"Grid"]/(r[s]-t[s+"Min"]),g.find(".ui_tpicker_"+s+" table").css({width:o+"%",marginLeft:t.isRTL?"0":o/(-2*l[s])+"%",marginRight:t.isRTL?o/(-2*l[s])+"%":"0",borderCollapse:"collapse"}).find("td").click(function(){var e=$(this),t=e.html(),a=parseInt(t.replace(/[^0-9]/g),10),n=t.replace(/[^apm]/gi),r=e.data("for");"hour"===r&&(-1!==n.indexOf("p")&&12>a?a+=12:-1!==n.indexOf("a")&&12===a&&(a=0)),i.control.value(i,i[r+"_slider"],s,a),i._onTimeChange(),i._onSelectHandler()}).css({cursor:"pointer",width:100/l[s]+"%",textAlign:"center",overflow:"hidden"}));if(this.timezone_select=g.find(".ui_tpicker_timezone").append("<select></select>").find("select"),$.fn.append.apply(this.timezone_select,$.map(t.timezoneList,function(e){return $("<option />").val("object"==typeof e?e.value:e).text("object"==typeof e?e.label:e)})),this.timezone!==void 0&&null!==this.timezone&&""!==this.timezone){var M=-1*new Date(this.inst.selectedYear,this.inst.selectedMonth,this.inst.selectedDay,12).getTimezoneOffset();M===this.timezone?selectLocalTimezone(i):this.timezone_select.val(this.timezone)}else this.hour!==void 0&&null!==this.hour&&""!==this.hour?this.timezone_select.val(t.timezone):selectLocalTimezone(i);this.timezone_select.change(function(){i._onTimeChange(),i._onSelectHandler()});var v=e.find(".ui-datepicker-buttonpane");if(v.length?v.before(g):e.append(g),this.$timeObj=g.find(".ui_tpicker_time"),null!==this.inst){var k=this.timeDefined;this._onTimeChange(),this.timeDefined=k}if(this._defaults.addSliderAccess){var T=this._defaults.sliderAccessArgs,D=this._defaults.isRTL;T.isRTL=D,setTimeout(function(){if(0===g.find(".ui-slider-access").length){g.find(".ui-slider:visible").sliderAccess(T);var e=g.find(".ui-slider-access:eq(0)").outerWidth(!0);e&&g.find("table:visible").each(function(){var t=$(this),i=t.outerWidth(),s=(""+t.css(D?"marginRight":"marginLeft")).replace("%",""),a=i-e,n=s*a/i+"%",r={width:a,marginRight:0,marginLeft:0};r[D?"marginRight":"marginLeft"]=n,t.css(r)})}},10)}i._limitMinMaxDateTime(this.inst,!0)}},_limitMinMaxDateTime:function(e,t){var i=this._defaults,s=new Date(e.selectedYear,e.selectedMonth,e.selectedDay);if(this._defaults.showTimepicker){if(null!==$.datepicker._get(e,"minDateTime")&&void 0!==$.datepicker._get(e,"minDateTime")&&s){var a=$.datepicker._get(e,"minDateTime"),n=new Date(a.getFullYear(),a.getMonth(),a.getDate(),0,0,0,0);(null===this.hourMinOriginal||null===this.minuteMinOriginal||null===this.secondMinOriginal||null===this.millisecMinOriginal||null===this.microsecMinOriginal)&&(this.hourMinOriginal=i.hourMin,this.minuteMinOriginal=i.minuteMin,this.secondMinOriginal=i.secondMin,this.millisecMinOriginal=i.millisecMin,this.microsecMinOriginal=i.microsecMin),e.settings.timeOnly||n.getTime()===s.getTime()?(this._defaults.hourMin=a.getHours(),this.hour<=this._defaults.hourMin?(this.hour=this._defaults.hourMin,this._defaults.minuteMin=a.getMinutes(),this.minute<=this._defaults.minuteMin?(this.minute=this._defaults.minuteMin,this._defaults.secondMin=a.getSeconds(),this.second<=this._defaults.secondMin?(this.second=this._defaults.secondMin,this._defaults.millisecMin=a.getMilliseconds(),this.millisec<=this._defaults.millisecMin?(this.millisec=this._defaults.millisecMin,this._defaults.microsecMin=a.getMicroseconds()):(this.microsec<this._defaults.microsecMin&&(this.microsec=this._defaults.microsecMin),this._defaults.microsecMin=this.microsecMinOriginal)):(this._defaults.millisecMin=this.millisecMinOriginal,this._defaults.microsecMin=this.microsecMinOriginal)):(this._defaults.secondMin=this.secondMinOriginal,this._defaults.millisecMin=this.millisecMinOriginal,this._defaults.microsecMin=this.microsecMinOriginal)):(this._defaults.minuteMin=this.minuteMinOriginal,this._defaults.secondMin=this.secondMinOriginal,this._defaults.millisecMin=this.millisecMinOriginal,this._defaults.microsecMin=this.microsecMinOriginal)):(this._defaults.hourMin=this.hourMinOriginal,this._defaults.minuteMin=this.minuteMinOriginal,this._defaults.secondMin=this.secondMinOriginal,this._defaults.millisecMin=this.millisecMinOriginal,this._defaults.microsecMin=this.microsecMinOriginal)}if(null!==$.datepicker._get(e,"maxDateTime")&&void 0!==$.datepicker._get(e,"maxDateTime")&&s){var r=$.datepicker._get(e,"maxDateTime"),l=new Date(r.getFullYear(),r.getMonth(),r.getDate(),0,0,0,0);(null===this.hourMaxOriginal||null===this.minuteMaxOriginal||null===this.secondMaxOriginal||null===this.millisecMaxOriginal)&&(this.hourMaxOriginal=i.hourMax,this.minuteMaxOriginal=i.minuteMax,this.secondMaxOriginal=i.secondMax,this.millisecMaxOriginal=i.millisecMax,this.microsecMaxOriginal=i.microsecMax),e.settings.timeOnly||l.getTime()===s.getTime()?(this._defaults.hourMax=r.getHours(),this.hour>=this._defaults.hourMax?(this.hour=this._defaults.hourMax,this._defaults.minuteMax=r.getMinutes(),this.minute>=this._defaults.minuteMax?(this.minute=this._defaults.minuteMax,this._defaults.secondMax=r.getSeconds(),this.second>=this._defaults.secondMax?(this.second=this._defaults.secondMax,this._defaults.millisecMax=r.getMilliseconds(),this.millisec>=this._defaults.millisecMax?(this.millisec=this._defaults.millisecMax,this._defaults.microsecMax=r.getMicroseconds()):(this.microsec>this._defaults.microsecMax&&(this.microsec=this._defaults.microsecMax),this._defaults.microsecMax=this.microsecMaxOriginal)):(this._defaults.millisecMax=this.millisecMaxOriginal,this._defaults.microsecMax=this.microsecMaxOriginal)):(this._defaults.secondMax=this.secondMaxOriginal,this._defaults.millisecMax=this.millisecMaxOriginal,this._defaults.microsecMax=this.microsecMaxOriginal)):(this._defaults.minuteMax=this.minuteMaxOriginal,this._defaults.secondMax=this.secondMaxOriginal,this._defaults.millisecMax=this.millisecMaxOriginal,this._defaults.microsecMax=this.microsecMaxOriginal)):(this._defaults.hourMax=this.hourMaxOriginal,this._defaults.minuteMax=this.minuteMaxOriginal,this._defaults.secondMax=this.secondMaxOriginal,this._defaults.millisecMax=this.millisecMaxOriginal,this._defaults.microsecMax=this.microsecMaxOriginal)}if(void 0!==t&&t===!0){var o=parseInt(this._defaults.hourMax-(this._defaults.hourMax-this._defaults.hourMin)%this._defaults.stepHour,10),c=parseInt(this._defaults.minuteMax-(this._defaults.minuteMax-this._defaults.minuteMin)%this._defaults.stepMinute,10),u=parseInt(this._defaults.secondMax-(this._defaults.secondMax-this._defaults.secondMin)%this._defaults.stepSecond,10),m=parseInt(this._defaults.millisecMax-(this._defaults.millisecMax-this._defaults.millisecMin)%this._defaults.stepMillisec,10),d=parseInt(this._defaults.microsecMax-(this._defaults.microsecMax-this._defaults.microsecMin)%this._defaults.stepMicrosec,10);this.hour_slider&&(this.control.options(this,this.hour_slider,"hour",{min:this._defaults.hourMin,max:o}),this.control.value(this,this.hour_slider,"hour",this.hour-this.hour%this._defaults.stepHour)),this.minute_slider&&(this.control.options(this,this.minute_slider,"minute",{min:this._defaults.minuteMin,max:c}),this.control.value(this,this.minute_slider,"minute",this.minute-this.minute%this._defaults.stepMinute)),this.second_slider&&(this.control.options(this,this.second_slider,"second",{min:this._defaults.secondMin,max:u}),this.control.value(this,this.second_slider,"second",this.second-this.second%this._defaults.stepSecond)),this.millisec_slider&&(this.control.options(this,this.millisec_slider,"millisec",{min:this._defaults.millisecMin,max:m}),this.control.value(this,this.millisec_slider,"millisec",this.millisec-this.millisec%this._defaults.stepMillisec)),this.microsec_slider&&(this.control.options(this,this.microsec_slider,"microsec",{min:this._defaults.microsecMin,max:d}),this.control.value(this,this.microsec_slider,"microsec",this.microsec-this.microsec%this._defaults.stepMicrosec))}}},_onTimeChange:function(){if(this._defaults.showTimepicker){var e=this.hour_slider?this.control.value(this,this.hour_slider,"hour"):!1,t=this.minute_slider?this.control.value(this,this.minute_slider,"minute"):!1,i=this.second_slider?this.control.value(this,this.second_slider,"second"):!1,s=this.millisec_slider?this.control.value(this,this.millisec_slider,"millisec"):!1,a=this.microsec_slider?this.control.value(this,this.microsec_slider,"microsec"):!1,n=this.timezone_select?this.timezone_select.val():!1,r=this._defaults,l=r.pickerTimeFormat||r.timeFormat,o=r.pickerTimeSuffix||r.timeSuffix;"object"==typeof e&&(e=!1),"object"==typeof t&&(t=!1),"object"==typeof i&&(i=!1),"object"==typeof s&&(s=!1),"object"==typeof a&&(a=!1),"object"==typeof n&&(n=!1),e!==!1&&(e=parseInt(e,10)),t!==!1&&(t=parseInt(t,10)),i!==!1&&(i=parseInt(i,10)),s!==!1&&(s=parseInt(s,10)),a!==!1&&(a=parseInt(a,10)),n!==!1&&(n=""+n);var c=r[12>e?"amNames":"pmNames"][0],u=e!==parseInt(this.hour,10)||t!==parseInt(this.minute,10)||i!==parseInt(this.second,10)||s!==parseInt(this.millisec,10)||a!==parseInt(this.microsec,10)||this.ampm.length>0&&12>e!=(-1!==$.inArray(this.ampm.toUpperCase(),this.amNames))||null!==this.timezone&&n!==""+this.timezone;u&&(e!==!1&&(this.hour=e),t!==!1&&(this.minute=t),i!==!1&&(this.second=i),s!==!1&&(this.millisec=s),a!==!1&&(this.microsec=a),n!==!1&&(this.timezone=n),this.inst||(this.inst=$.datepicker._getInst(this.$input[0])),this._limitMinMaxDateTime(this.inst,!0)),this.support.ampm&&(this.ampm=c),this.formattedTime=$.datepicker.formatTime(r.timeFormat,this,r),this.$timeObj&&(l===r.timeFormat?this.$timeObj.text(this.formattedTime+o):this.$timeObj.text($.datepicker.formatTime(l,this,r)+o)),this.timeDefined=!0,u&&(this._updateDateTime(),this.$input.focus())}},_onSelectHandler:function(){var e=this._defaults.onSelect||this.inst.settings.onSelect,t=this.$input?this.$input[0]:null;e&&t&&e.apply(t,[this.formattedDateTime,this])},_updateDateTime:function(e){e=this.inst||e;var t=e.currentYear>0?new Date(e.currentYear,e.currentMonth,e.currentDay):new Date(e.selectedYear,e.selectedMonth,e.selectedDay),i=$.datepicker._daylightSavingAdjust(t),s=$.datepicker._get(e,"dateFormat"),a=$.datepicker._getFormatConfig(e),n=null!==i&&this.timeDefined;this.formattedDate=$.datepicker.formatDate(s,null===i?new Date:i,a);var r=this.formattedDate;if(""===e.lastVal&&(e.currentYear=e.selectedYear,e.currentMonth=e.selectedMonth,e.currentDay=e.selectedDay),this._defaults.timeOnly===!0?r=this.formattedTime:this._defaults.timeOnly!==!0&&(this._defaults.alwaysSetTime||n)&&(r+=this._defaults.separator+this.formattedTime+this._defaults.timeSuffix),this.formattedDateTime=r,this._defaults.showTimepicker)if(this.$altInput&&this._defaults.timeOnly===!1&&this._defaults.altFieldTimeOnly===!0)this.$altInput.val(this.formattedTime),this.$input.val(this.formattedDate);else if(this.$altInput){this.$input.val(r);var l="",o=this._defaults.altSeparator?this._defaults.altSeparator:this._defaults.separator,c=this._defaults.altTimeSuffix?this._defaults.altTimeSuffix:this._defaults.timeSuffix;this._defaults.timeOnly||(l=this._defaults.altFormat?$.datepicker.formatDate(this._defaults.altFormat,null===i?new Date:i,a):this.formattedDate,l&&(l+=o)),l+=this._defaults.altTimeFormat?$.datepicker.formatTime(this._defaults.altTimeFormat,this,this._defaults)+c:this.formattedTime+c,this.$altInput.val(l)}else this.$input.val(r);else this.$input.val(this.formattedDate);this.$input.trigger("change")},_onFocus:function(){if(!this.$input.val()&&this._defaults.defaultValue){this.$input.val(this._defaults.defaultValue);var e=$.datepicker._getInst(this.$input.get(0)),t=$.datepicker._get(e,"timepicker");if(t&&t._defaults.timeOnly&&e.input.val()!==e.lastVal)try{$.datepicker._updateDatepicker(e)}catch(i){$.timepicker.log(i)}}},_controls:{slider:{create:function(e,t,i,s,a,n,r){var l=e._defaults.isRTL;return t.prop("slide",null).slider({orientation:"horizontal",value:l?-1*s:s,min:l?-1*n:a,max:l?-1*a:n,step:r,slide:function(t,s){e.control.value(e,$(this),i,l?-1*s.value:s.value),e._onTimeChange()},stop:function(){e._onSelectHandler()}})},options:function(e,t,i,s,a){if(e._defaults.isRTL){if("string"==typeof s)return"min"===s||"max"===s?void 0!==a?t.slider(s,-1*a):Math.abs(t.slider(s)):t.slider(s);var n=s.min,r=s.max;return s.min=s.max=null,void 0!==n&&(s.max=-1*n),void 0!==r&&(s.min=-1*r),t.slider(s)}return"string"==typeof s&&void 0!==a?t.slider(s,a):t.slider(s)},value:function(e,t,i,s){return e._defaults.isRTL?void 0!==s?t.slider("value",-1*s):Math.abs(t.slider("value")):void 0!==s?t.slider("value",s):t.slider("value")}},select:{create:function(e,t,i,s,a,n,r){for(var l='<select class="ui-timepicker-select" data-unit="'+i+'" data-min="'+a+'" data-max="'+n+'" data-step="'+r+'">',o=e._defaults.pickerTimeFormat||e._defaults.timeFormat,c=a;n>=c;c+=r)l+='<option value="'+c+'"'+(c===s?" selected":"")+">",l+="hour"===i?$.datepicker.formatTime($.trim(o.replace(/[^ht ]/gi,"")),{hour:c},e._defaults):"millisec"===i||"microsec"===i||c>=10?c:"0"+(""+c),l+="</option>";return l+="</select>",t.children("select").remove(),$(l).appendTo(t).change(function(){e._onTimeChange(),e._onSelectHandler()}),t},options:function(e,t,i,s,a){var n={},r=t.children("select");if("string"==typeof s){if(void 0===a)return r.data(s);n[s]=a}else n=s;return e.control.create(e,t,r.data("unit"),r.val(),n.min||r.data("min"),n.max||r.data("max"),n.step||r.data("step"))},value:function(e,t,i,s){var a=t.children("select");return void 0!==s?a.val(s):a.val()}}}}),$.fn.extend({timepicker:function(e){e=e||{};var t=Array.prototype.slice.call(arguments);return"object"==typeof e&&(t[0]=$.extend(e,{timeOnly:!0})),$(this).each(function(){$.fn.datetimepicker.apply($(this),t)})},datetimepicker:function(e){e=e||{};var t=arguments;return"string"==typeof e?"getDate"===e?$.fn.datepicker.apply($(this[0]),t):this.each(function(){var e=$(this);e.datepicker.apply(e,t)}):this.each(function(){var t=$(this);t.datepicker($.timepicker._newInst(t,e)._defaults)})}}),$.datepicker.parseDateTime=function(e,t,i,s,a){var n=parseDateTimeInternal(e,t,i,s,a);if(n.timeObj){var r=n.timeObj;n.date.setHours(r.hour,r.minute,r.second,r.millisec),n.date.setMicroseconds(r.microsec)}return n.date},$.datepicker.parseTime=function(e,t,i){var s=extendRemove(extendRemove({},$.timepicker._defaults),i||{});-1!==e.replace(/\'.*?\'/g,"").indexOf("Z");var a=function(e,t,i){var s,a=function(e,t){var i=[];return e&&$.merge(i,e),t&&$.merge(i,t),i=$.map(i,function(e){return e.replace(/[.*+?|()\[\]{}\\]/g,"\\$&")}),"("+i.join("|")+")?"},n=function(e){var t=e.toLowerCase().match(/(h{1,2}|m{1,2}|s{1,2}|l{1}|c{1}|t{1,2}|z|'.*?')/g),i={h:-1,m:-1,s:-1,l:-1,c:-1,t:-1,z:-1};if(t)for(var s=0;t.length>s;s++)-1===i[(""+t[s]).charAt(0)]&&(i[(""+t[s]).charAt(0)]=s+1);return i},r="^"+(""+e).replace(/([hH]{1,2}|mm?|ss?|[tT]{1,2}|[zZ]|[lc]|'.*?')/g,function(e){var t=e.length;switch(e.charAt(0).toLowerCase()){case"h":return 1===t?"(\\d?\\d)":"(\\d{"+t+"})";case"m":return 1===t?"(\\d?\\d)":"(\\d{"+t+"})";case"s":return 1===t?"(\\d?\\d)":"(\\d{"+t+"})";case"l":return"(\\d?\\d?\\d)";case"c":return"(\\d?\\d?\\d)";case"z":return"(z|[-+]\\d\\d:?\\d\\d|\\S+)?";case"t":return a(i.amNames,i.pmNames);default:return"("+e.replace(/\'/g,"").replace(/(\.|\$|\^|\\|\/|\(|\)|\[|\]|\?|\+|\*)/g,function(e){return"\\"+e})+")?"}}).replace(/\s/g,"\\s?")+i.timeSuffix+"$",l=n(e),o="";s=t.match(RegExp(r,"i"));var c={hour:0,minute:0,second:0,millisec:0,microsec:0};return s?(-1!==l.t&&(void 0===s[l.t]||0===s[l.t].length?(o="",c.ampm=""):(o=-1!==$.inArray(s[l.t].toUpperCase(),i.amNames)?"AM":"PM",c.ampm=i["AM"===o?"amNames":"pmNames"][0])),-1!==l.h&&(c.hour="AM"===o&&"12"===s[l.h]?0:"PM"===o&&"12"!==s[l.h]?parseInt(s[l.h],10)+12:Number(s[l.h])),-1!==l.m&&(c.minute=Number(s[l.m])),-1!==l.s&&(c.second=Number(s[l.s])),-1!==l.l&&(c.millisec=Number(s[l.l])),-1!==l.c&&(c.microsec=Number(s[l.c])),-1!==l.z&&void 0!==s[l.z]&&(c.timezone=$.timepicker.timezoneOffsetNumber(s[l.z])),c):!1},n=function(e,t,i){try{var s=new Date("2012-01-01 "+t);if(isNaN(s.getTime())&&(s=new Date("2012-01-01T"+t),isNaN(s.getTime())&&(s=new Date("01/01/2012 "+t),isNaN(s.getTime()))))throw"Unable to parse time with native Date: "+t;return{hour:s.getHours(),minute:s.getMinutes(),second:s.getSeconds(),millisec:s.getMilliseconds(),microsec:s.getMicroseconds(),timezone:-1*s.getTimezoneOffset()}}catch(n){try{return a(e,t,i)}catch(r){$.timepicker.log("Unable to parse \ntimeString: "+t+"\ntimeFormat: "+e)}}return!1};return"function"==typeof s.parse?s.parse(e,t,s):"loose"===s.parse?n(e,t,s):a(e,t,s)},$.datepicker.formatTime=function(e,t,i){i=i||{},i=$.extend({},$.timepicker._defaults,i),t=$.extend({hour:0,minute:0,second:0,millisec:0,microsec:0,timezone:null},t);var s=e,a=i.amNames[0],n=parseInt(t.hour,10);return n>11&&(a=i.pmNames[0]),s=s.replace(/(?:HH?|hh?|mm?|ss?|[tT]{1,2}|[zZ]|[lc]|'.*?')/g,function(e){switch(e){case"HH":return("0"+n).slice(-2);case"H":return n;case"hh":return("0"+convert24to12(n)).slice(-2);case"h":return convert24to12(n);case"mm":return("0"+t.minute).slice(-2);case"m":return t.minute;case"ss":return("0"+t.second).slice(-2);case"s":return t.second;case"l":return("00"+t.millisec).slice(-3);case"c":return("00"+t.microsec).slice(-3);case"z":return $.timepicker.timezoneOffsetString(null===t.timezone?i.timezone:t.timezone,!1);case"Z":return $.timepicker.timezoneOffsetString(null===t.timezone?i.timezone:t.timezone,!0);case"T":return a.charAt(0).toUpperCase();case"TT":return a.toUpperCase();case"t":return a.charAt(0).toLowerCase();case"tt":return a.toLowerCase();default:return e.replace(/'/g,"")}})},$.datepicker._base_selectDate=$.datepicker._selectDate,$.datepicker._selectDate=function(e,t){var i=this._getInst($(e)[0]),s=this._get(i,"timepicker");s?(s._limitMinMaxDateTime(i,!0),i.inline=i.stay_open=!0,this._base_selectDate(e,t),i.inline=i.stay_open=!1,this._notifyChange(i),this._updateDatepicker(i)):this._base_selectDate(e,t)},$.datepicker._base_updateDatepicker=$.datepicker._updateDatepicker,$.datepicker._updateDatepicker=function(e){var t=e.input[0];if(!($.datepicker._curInst&&$.datepicker._curInst!==e&&$.datepicker._datepickerShowing&&$.datepicker._lastInput!==t||"boolean"==typeof e.stay_open&&e.stay_open!==!1)){this._base_updateDatepicker(e);var i=this._get(e,"timepicker");i&&i._addTimePicker(e)}},$.datepicker._base_doKeyPress=$.datepicker._doKeyPress,$.datepicker._doKeyPress=function(e){var t=$.datepicker._getInst(e.target),i=$.datepicker._get(t,"timepicker");if(i&&$.datepicker._get(t,"constrainInput")){var s=i.support.ampm,a=null!==i._defaults.showTimezone?i._defaults.showTimezone:i.support.timezone,n=$.datepicker._possibleChars($.datepicker._get(t,"dateFormat")),r=(""+i._defaults.timeFormat).replace(/[hms]/g,"").replace(/TT/g,s?"APM":"").replace(/Tt/g,s?"AaPpMm":"").replace(/tT/g,s?"AaPpMm":"").replace(/T/g,s?"AP":"").replace(/tt/g,s?"apm":"").replace(/t/g,s?"ap":"")+" "+i._defaults.separator+i._defaults.timeSuffix+(a?i._defaults.timezoneList.join(""):"")+i._defaults.amNames.join("")+i._defaults.pmNames.join("")+n,l=String.fromCharCode(void 0===e.charCode?e.keyCode:e.charCode);return e.ctrlKey||" ">l||!n||r.indexOf(l)>-1}return $.datepicker._base_doKeyPress(e)},$.datepicker._base_updateAlternate=$.datepicker._updateAlternate,$.datepicker._updateAlternate=function(e){var t=this._get(e,"timepicker");if(t){var i=t._defaults.altField;if(i){var s=(t._defaults.altFormat||t._defaults.dateFormat,this._getDate(e)),a=$.datepicker._getFormatConfig(e),n="",r=t._defaults.altSeparator?t._defaults.altSeparator:t._defaults.separator,l=t._defaults.altTimeSuffix?t._defaults.altTimeSuffix:t._defaults.timeSuffix,o=null!==t._defaults.altTimeFormat?t._defaults.altTimeFormat:t._defaults.timeFormat;n+=$.datepicker.formatTime(o,t,t._defaults)+l,t._defaults.timeOnly||t._defaults.altFieldTimeOnly||null===s||(n=t._defaults.altFormat?$.datepicker.formatDate(t._defaults.altFormat,s,a)+r+n:t.formattedDate+r+n),$(i).val(n)}}else $.datepicker._base_updateAlternate(e)},$.datepicker._base_doKeyUp=$.datepicker._doKeyUp,$.datepicker._doKeyUp=function(e){var t=$.datepicker._getInst(e.target),i=$.datepicker._get(t,"timepicker");if(i&&i._defaults.timeOnly&&t.input.val()!==t.lastVal)try{$.datepicker._updateDatepicker(t)}catch(s){$.timepicker.log(s)}return $.datepicker._base_doKeyUp(e)},$.datepicker._base_gotoToday=$.datepicker._gotoToday,$.datepicker._gotoToday=function(e){var t=this._getInst($(e)[0]),i=t.dpDiv;this._base_gotoToday(e);var s=this._get(t,"timepicker");selectLocalTimezone(s);var a=new Date;this._setTime(t,a),$(".ui-datepicker-today",i).click()},$.datepicker._disableTimepickerDatepicker=function(e){var t=this._getInst(e);if(t){var i=this._get(t,"timepicker");$(e).datepicker("getDate"),i&&(t.settings.showTimepicker=!1,i._defaults.showTimepicker=!1,i._updateDateTime(t))}},$.datepicker._enableTimepickerDatepicker=function(e){var t=this._getInst(e);if(t){var i=this._get(t,"timepicker");$(e).datepicker("getDate"),i&&(t.settings.showTimepicker=!0,i._defaults.showTimepicker=!0,i._addTimePicker(t),i._updateDateTime(t))}},$.datepicker._setTime=function(e,t){var i=this._get(e,"timepicker");if(i){var s=i._defaults;i.hour=t?t.getHours():s.hour,i.minute=t?t.getMinutes():s.minute,i.second=t?t.getSeconds():s.second,i.millisec=t?t.getMilliseconds():s.millisec,i.microsec=t?t.getMicroseconds():s.microsec,i._limitMinMaxDateTime(e,!0),i._onTimeChange(),i._updateDateTime(e)}},$.datepicker._setTimeDatepicker=function(e,t,i){var s=this._getInst(e);if(s){var a=this._get(s,"timepicker");if(a){this._setDateFromField(s);var n;t&&("string"==typeof t?(a._parseTime(t,i),n=new Date,n.setHours(a.hour,a.minute,a.second,a.millisec),n.setMicroseconds(a.microsec)):(n=new Date(t.getTime()),n.setMicroseconds(t.getMicroseconds())),"Invalid Date"==""+n&&(n=void 0),this._setTime(s,n))}}},$.datepicker._base_setDateDatepicker=$.datepicker._setDateDatepicker,$.datepicker._setDateDatepicker=function(e,t){var i=this._getInst(e);if(i){"string"==typeof t&&(t=new Date(t),t.getTime()||$.timepicker.log("Error creating Date object from string."));var s,a=this._get(i,"timepicker");t instanceof Date?(s=new Date(t.getTime()),s.setMicroseconds(t.getMicroseconds())):s=t,a&&s&&(a.support.timezone||null!==a._defaults.timezone||(a.timezone=-1*s.getTimezoneOffset()),t=$.timepicker.timezoneAdjust(t,a.timezone),s=$.timepicker.timezoneAdjust(s,a.timezone)),this._updateDatepicker(i),this._base_setDateDatepicker.apply(this,arguments),this._setTimeDatepicker(e,s,!0)}},$.datepicker._base_getDateDatepicker=$.datepicker._getDateDatepicker,$.datepicker._getDateDatepicker=function(e,t){var i=this._getInst(e);if(i){var s=this._get(i,"timepicker");if(s){void 0===i.lastVal&&this._setDateFromField(i,t);var a=this._getDate(i);return a&&s._parseTime($(e).val(),s.timeOnly)&&(a.setHours(s.hour,s.minute,s.second,s.millisec),a.setMicroseconds(s.microsec),null!=s.timezone&&(s.support.timezone||null!==s._defaults.timezone||(s.timezone=-1*a.getTimezoneOffset()),a=$.timepicker.timezoneAdjust(a,s.timezone))),a
5
+ }return this._base_getDateDatepicker(e,t)}},$.datepicker._base_parseDate=$.datepicker.parseDate,$.datepicker.parseDate=function(e,t,i){var s;try{s=this._base_parseDate(e,t,i)}catch(a){if(!(a.indexOf(":")>=0))throw a;s=this._base_parseDate(e,t.substring(0,t.length-(a.length-a.indexOf(":")-2)),i),$.timepicker.log("Error parsing the date string: "+a+"\ndate string = "+t+"\ndate format = "+e)}return s},$.datepicker._base_formatDate=$.datepicker._formatDate,$.datepicker._formatDate=function(e){var t=this._get(e,"timepicker");return t?(t._updateDateTime(e),t.$input.val()):this._base_formatDate(e)},$.datepicker._base_optionDatepicker=$.datepicker._optionDatepicker,$.datepicker._optionDatepicker=function(e,t,i){var s,a=this._getInst(e);if(!a)return null;var n=this._get(a,"timepicker");if(n){var r,l=null,o=null,c=null,u=n._defaults.evnts,m={};if("string"==typeof t){if("minDate"===t||"minDateTime"===t)l=i;else if("maxDate"===t||"maxDateTime"===t)o=i;else if("onSelect"===t)c=i;else if(u.hasOwnProperty(t)){if(i===void 0)return u[t];m[t]=i,s={}}}else if("object"==typeof t){t.minDate?l=t.minDate:t.minDateTime?l=t.minDateTime:t.maxDate?o=t.maxDate:t.maxDateTime&&(o=t.maxDateTime);for(r in u)u.hasOwnProperty(r)&&t[r]&&(m[r]=t[r])}for(r in m)m.hasOwnProperty(r)&&(u[r]=m[r],s||(s=$.extend({},t)),delete s[r]);if(s&&isEmptyObject(s))return;l?(l=0===l?new Date:new Date(l),n._defaults.minDate=l,n._defaults.minDateTime=l):o?(o=0===o?new Date:new Date(o),n._defaults.maxDate=o,n._defaults.maxDateTime=o):c&&(n._defaults.onSelect=c)}return void 0===i?this._base_optionDatepicker.call($.datepicker,e,t):this._base_optionDatepicker.call($.datepicker,e,s||t,i)};var isEmptyObject=function(e){var t;for(t in e)if(e.hasOwnProperty(t))return!1;return!0},extendRemove=function(e,t){$.extend(e,t);for(var i in t)(null===t[i]||void 0===t[i])&&(e[i]=t[i]);return e},detectSupport=function(e){var t=e.replace(/'.*?'/g,"").toLowerCase(),i=function(e,t){return-1!==e.indexOf(t)?!0:!1};return{hour:i(t,"h"),minute:i(t,"m"),second:i(t,"s"),millisec:i(t,"l"),microsec:i(t,"c"),timezone:i(t,"z"),ampm:i(t,"t")&&i(e,"h"),iso8601:i(e,"Z")}},convert24to12=function(e){return e%=12,0===e&&(e=12),e+""},computeEffectiveSetting=function(e,t){return e&&e[t]?e[t]:$.timepicker._defaults[t]},splitDateTime=function(e,t){var i=computeEffectiveSetting(t,"separator"),s=computeEffectiveSetting(t,"timeFormat"),a=s.split(i),n=a.length,r=e.split(i),l=r.length;return l>1?{dateString:r.splice(0,l-n).join(i),timeString:r.splice(0,n).join(i)}:{dateString:e,timeString:""}},parseDateTimeInternal=function(e,t,i,s,a){var n,r,l;if(r=splitDateTime(i,a),n=$.datepicker._base_parseDate(e,r.dateString,s),""===r.timeString)return{date:n};if(l=$.datepicker.parseTime(t,r.timeString,a),!l)throw"Wrong time format";return{date:n,timeObj:l}},selectLocalTimezone=function(e,t){if(e&&e.timezone_select){var i=t||new Date;e.timezone_select.val(-i.getTimezoneOffset())}};$.timepicker=new Timepicker,$.timepicker.timezoneOffsetString=function(e,t){if(isNaN(e)||e>840||-720>e)return e;var i=e,s=i%60,a=(i-s)/60,n=t?":":"",r=(i>=0?"+":"-")+("0"+Math.abs(a)).slice(-2)+n+("0"+Math.abs(s)).slice(-2);return"+00:00"===r?"Z":r},$.timepicker.timezoneOffsetNumber=function(e){var t=(""+e).replace(":","");return"Z"===t.toUpperCase()?0:/^(\-|\+)\d{4}$/.test(t)?("-"===t.substr(0,1)?-1:1)*(60*parseInt(t.substr(1,2),10)+parseInt(t.substr(3,2),10)):e},$.timepicker.timezoneAdjust=function(e,t){var i=$.timepicker.timezoneOffsetNumber(t);return isNaN(i)||e.setMinutes(e.getMinutes()+-e.getTimezoneOffset()-i),e},$.timepicker.timeRange=function(e,t,i){return $.timepicker.handleRange("timepicker",e,t,i)},$.timepicker.datetimeRange=function(e,t,i){$.timepicker.handleRange("datetimepicker",e,t,i)},$.timepicker.dateRange=function(e,t,i){$.timepicker.handleRange("datepicker",e,t,i)},$.timepicker.handleRange=function(e,t,i,s){function a(a,n){var r=t[e]("getDate"),l=i[e]("getDate"),o=a[e]("getDate");if(null!==r){var c=new Date(r.getTime()),u=new Date(r.getTime());c.setMilliseconds(c.getMilliseconds()+s.minInterval),u.setMilliseconds(u.getMilliseconds()+s.maxInterval),s.minInterval>0&&c>l?i[e]("setDate",c):s.maxInterval>0&&l>u?i[e]("setDate",u):r>l&&n[e]("setDate",o)}}function n(t,i,a){if(t.val()){var n=t[e].call(t,"getDate");null!==n&&s.minInterval>0&&("minDate"===a&&n.setMilliseconds(n.getMilliseconds()+s.minInterval),"maxDate"===a&&n.setMilliseconds(n.getMilliseconds()-s.minInterval)),n.getTime&&i[e].call(i,"option",a,n)}}return s=$.extend({},{minInterval:0,maxInterval:0,start:{},end:{}},s),$.fn[e].call(t,$.extend({onClose:function(){a($(this),i)},onSelect:function(){n($(this),i,"minDate")}},s,s.start)),$.fn[e].call(i,$.extend({onClose:function(){a($(this),t)},onSelect:function(){n($(this),t,"maxDate")}},s,s.end)),a(t,i),n(t,i,"minDate"),n(i,t,"maxDate"),$([t.get(0),i.get(0)])},$.timepicker.log=function(e){window.console&&window.console.log(e)},$.timepicker._util={_extendRemove:extendRemove,_isEmptyObject:isEmptyObject,_convert24to12:convert24to12,_detectSupport:detectSupport,_selectLocalTimezone:selectLocalTimezone,_computeEffectiveSetting:computeEffectiveSetting,_splitDateTime:splitDateTime,_parseDateTimeInternal:parseDateTimeInternal},Date.prototype.getMicroseconds||(Date.prototype.microseconds=0,Date.prototype.getMicroseconds=function(){return this.microseconds},Date.prototype.setMicroseconds=function(e){return this.setMilliseconds(this.getMilliseconds()+Math.floor(e/1e3)),this.microseconds=e%1e3,this}),$.timepicker.version="1.4.3"}})(jQuery);
assets/theme-mode/demo-functions.php ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Theme Mode
4
+ */
5
+ # add_filter( 'ot_theme_mode', '__return_false' );
6
+
7
+ /**
8
+ * Child Theme Mode
9
+ */
10
+ # add_filter( 'ot_child_theme_mode', '__return_false' );
11
+
12
+ /**
13
+ * Show Settings Pages
14
+ */
15
+ # add_filter( 'ot_show_pages', '__return_true' );
16
+
17
+ /**
18
+ * Show Theme Options UI Builder
19
+ */
20
+ # add_filter( 'ot_show_options_ui', '__return_true' );
21
+
22
+ /**
23
+ * Show Settings Import
24
+ */
25
+ # add_filter( 'ot_show_settings_import', '__return_true' );
26
+
27
+ /**
28
+ * Show Settings Export
29
+ */
30
+ # add_filter( 'ot_show_settings_export', '__return_true' );
31
+
32
+ /**
33
+ * Show New Layout
34
+ */
35
+ # add_filter( 'ot_show_new_layout', '__return_true' );
36
+
37
+ /**
38
+ * Show Documentation
39
+ */
40
+ # add_filter( 'ot_show_docs', '__return_true' );
41
+
42
+ /**
43
+ * Custom Theme Option page
44
+ */
45
+ # add_filter( 'ot_use_theme_options', '__return_true' );
46
+
47
+ /**
48
+ * Meta Boxes
49
+ */
50
+ # add_filter( 'ot_meta_boxes', '__return_true' );
51
+
52
+ /**
53
+ * Allow Unfiltered HTML in textareas options
54
+ */
55
+ # add_filter( 'ot_allow_unfiltered_html', '__return_false' );
56
+
57
+ /**
58
+ * OptionTree in Theme Mode
59
+ */
60
+ # load_template( trailingslashit( get_template_directory() ) . 'option-tree/ot-loader.php' );
61
+
62
+ /**
63
+ * Theme Options
64
+ */
65
+ # load_template( trailingslashit( get_template_directory() ) . 'admin/theme-options.php' );
assets/theme-mode/demo-meta-boxes.php CHANGED
@@ -1,55 +1,74 @@
1
  <?php
2
  /**
3
- * Initialize the meta boxes.
4
  */
5
- add_action( 'admin_init', '_custom_meta_boxes' );
6
 
7
  /**
8
  * Meta Boxes demo code.
9
  *
10
- * You can find all the available option types
11
- * in demo-theme-options.php.
12
  *
13
  * @return void
14
- *
15
- * @access private
16
  * @since 2.0
17
  */
18
- function _custom_meta_boxes() {
19
 
20
  /**
21
  * Create a custom meta boxes array that we pass to
22
  * the OptionTree Meta Box API Class.
23
  */
24
  $my_meta_box = array(
25
- 'id' => 'my_meta_box',
26
- 'title' => 'Demo Meta Box',
27
  'desc' => '',
28
  'pages' => array( 'post' ),
29
  'context' => 'normal',
30
  'priority' => 'high',
31
  'fields' => array(
32
  array(
33
- 'label' => 'Background',
34
- 'id' => 'my_background',
35
- 'type' => 'background',
36
- 'desc' => 'BlahLorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
37
- 'std' => '',
38
- 'rows' => '',
39
- 'post_type' => '',
40
- 'taxonomy' => '',
41
- 'class' => ''
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  ),
43
  array(
44
- 'label' => 'Category Checkbox',
45
- 'id' => 'my_category_checkbox',
46
- 'type' => 'category-checkbox',
47
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
48
- 'std' => '',
49
- 'rows' => '',
50
- 'post_type' => '',
51
- 'taxonomy' => '',
52
- 'class' => ''
53
  )
54
  )
55
  );
@@ -58,6 +77,7 @@ function _custom_meta_boxes() {
58
  * Register our meta boxes using the
59
  * ot_register_meta_box() function.
60
  */
61
- ot_register_meta_box( $my_meta_box );
 
62
 
63
  }
1
  <?php
2
  /**
3
+ * Initialize the custom Meta Boxes.
4
  */
5
+ add_action( 'admin_init', 'custom_meta_boxes' );
6
 
7
  /**
8
  * Meta Boxes demo code.
9
  *
10
+ * You can find all the available option types in demo-theme-options.php.
 
11
  *
12
  * @return void
 
 
13
  * @since 2.0
14
  */
15
+ function custom_meta_boxes() {
16
 
17
  /**
18
  * Create a custom meta boxes array that we pass to
19
  * the OptionTree Meta Box API Class.
20
  */
21
  $my_meta_box = array(
22
+ 'id' => 'demo_meta_box',
23
+ 'title' => __( 'Demo Meta Box', 'theme-text-domain' ),
24
  'desc' => '',
25
  'pages' => array( 'post' ),
26
  'context' => 'normal',
27
  'priority' => 'high',
28
  'fields' => array(
29
  array(
30
+ 'label' => __( 'Conditions', 'theme-text-domain' ),
31
+ 'id' => 'demo_conditions',
32
+ 'type' => 'tab'
33
+ ),
34
+ array(
35
+ 'label' => __( 'Show Gallery', 'theme-text-domain' ),
36
+ 'id' => 'demo_show_gallery',
37
+ 'type' => 'on-off',
38
+ 'desc' => sprintf( __( 'Shows the Gallery when set to %s.', 'theme-text-domain' ), '<code>on</code>' ),
39
+ 'std' => 'off'
40
+ ),
41
+ array(
42
+ 'label' => '',
43
+ 'id' => 'demo_textblock',
44
+ 'type' => 'textblock',
45
+ 'desc' => __( 'Congratulations, you created a gallery!', 'theme-text-domain' ),
46
+ 'operator' => 'and',
47
+ 'condition' => 'demo_show_gallery:is(on),demo_gallery:not()'
48
+ ),
49
+ array(
50
+ 'label' => __( 'Gallery', 'theme-text-domain' ),
51
+ 'id' => 'demo_gallery',
52
+ 'type' => 'gallery',
53
+ 'desc' => sprintf( __( 'This is a Gallery option type. It displays when %s.', 'theme-text-domain' ), '<code>demo_show_gallery:is(on)</code>' ),
54
+ 'condition' => 'demo_show_gallery:is(on)'
55
+ ),
56
+ array(
57
+ 'label' => __( 'More Options', 'theme-text-domain' ),
58
+ 'id' => 'demo_more_options',
59
+ 'type' => 'tab'
60
+ ),
61
+ array(
62
+ 'label' => __( 'Text', 'theme-text-domain' ),
63
+ 'id' => 'demo_text',
64
+ 'type' => 'text',
65
+ 'desc' => __( 'This is a demo Text field.', 'theme-text-domain' )
66
  ),
67
  array(
68
+ 'label' => __( 'Textarea', 'theme-text-domain' ),
69
+ 'id' => 'demo_textarea',
70
+ 'type' => 'textarea',
71
+ 'desc' => __( 'This is a demo Textarea field.' )
 
 
 
 
 
72
  )
73
  )
74
  );
77
  * Register our meta boxes using the
78
  * ot_register_meta_box() function.
79
  */
80
+ if ( function_exists( 'ot_register_meta_box' ) )
81
+ ot_register_meta_box( $my_meta_box );
82
 
83
  }
assets/theme-mode/demo-theme-options.php CHANGED
@@ -1,18 +1,16 @@
1
  <?php
2
  /**
3
- * Initialize the options before anything else.
4
  */
5
- add_action( 'admin_init', '_custom_theme_options', 1 );
6
 
7
  /**
8
- * Theme Mode demo code of all the available option types.
9
  *
10
  * @return void
11
- *
12
- * @access private
13
  * @since 2.0
14
  */
15
- function _custom_theme_options() {
16
 
17
  /**
18
  * Get a copy of the saved settings array.
@@ -20,447 +18,605 @@ function _custom_theme_options() {
20
  $saved_settings = get_option( 'option_tree_settings', array() );
21
 
22
  /**
23
- * Create a custom settings array that we pass to
24
- * the OptionTree Settings API Class.
25
  */
26
- $custom_settings = array(
27
- 'contextual_help' => array(
28
  'content' => array(
29
  array(
30
- 'id' => 'general_help',
31
- 'title' => 'General',
32
- 'content' => '<p>Help content goes here!</p>'
33
  )
34
  ),
35
- 'sidebar' => '<p>Sidebar content goes here!</p>'
36
  ),
37
- 'sections' => array(
38
- array(
39
- 'title' => 'General',
40
- 'id' => 'general_default'
41
- ),
42
  array(
43
- 'title' => 'Miscellaneous ',
44
- 'id' => 'miscellaneous'
45
  )
46
  ),
47
- 'settings' => array(
48
  array(
49
- 'label' => 'Background',
50
- 'id' => 'my_background',
51
- 'type' => 'background',
52
- 'desc' => 'BlahLorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
53
  'std' => '',
 
 
54
  'rows' => '',
55
  'post_type' => '',
56
  'taxonomy' => '',
 
57
  'class' => '',
58
- 'section' => 'general_default'
 
59
  ),
60
  array(
61
- 'label' => 'Category Checkbox',
62
- 'id' => 'my_category_checkbox',
63
- 'type' => 'category-checkbox',
64
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
65
  'std' => '',
 
 
66
  'rows' => '',
67
  'post_type' => '',
68
  'taxonomy' => '',
 
69
  'class' => '',
70
- 'section' => 'general_default'
 
71
  ),
72
  array(
73
- 'label' => 'Category Select',
74
- 'id' => 'my_category_select',
75
- 'type' => 'category-select',
76
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
77
  'std' => '',
 
 
78
  'rows' => '',
79
  'post_type' => '',
80
  'taxonomy' => '',
 
81
  'class' => '',
82
- 'section' => 'general_default'
 
83
  ),
84
  array(
85
- 'label' => 'Checkbox',
86
- 'id' => 'my_checkbox',
87
- 'type' => 'checkbox',
88
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
89
- 'choices' => array(
90
- array (
91
- 'label' => 'Yes',
92
- 'value' => 'Yes'
93
- )
94
- ),
95
  'std' => '',
 
 
96
  'rows' => '',
97
  'post_type' => '',
98
  'taxonomy' => '',
 
99
  'class' => '',
100
- 'section' => 'general_default'
 
 
 
 
 
 
 
 
 
 
 
 
 
101
  ),
102
  array(
103
- 'label' => 'Colorpicker',
104
- 'id' => 'my_colorpicker',
105
- 'type' => 'colorpicker',
106
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
107
  'std' => '',
 
 
108
  'rows' => '',
109
  'post_type' => '',
110
  'taxonomy' => '',
 
111
  'class' => '',
112
- 'section' => 'general_default'
 
113
  ),
114
  array(
115
- 'label' => 'CSS',
116
- 'id' => 'my_css',
 
 
 
 
117
  'type' => 'css',
118
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
119
- 'std' => '',
120
  'rows' => '20',
121
  'post_type' => '',
122
  'taxonomy' => '',
 
123
  'class' => '',
124
- 'section' => 'general_default'
 
125
  ),
126
  array(
127
- 'label' => 'Custom Post Type Checkbox',
128
- 'id' => 'my_custom_post_type_checkbox',
129
- 'type' => 'custom-post-type-checkbox',
130
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
131
  'std' => '',
 
 
132
  'rows' => '',
133
  'post_type' => 'post',
134
  'taxonomy' => '',
 
135
  'class' => '',
136
- 'section' => 'general_default'
 
137
  ),
138
  array(
139
- 'label' => 'Custom Post Type Select',
140
- 'id' => 'my_custom_post_type_select',
141
- 'type' => 'custom-post-type-select',
142
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
143
  'std' => '',
 
 
144
  'rows' => '',
145
  'post_type' => 'post',
146
  'taxonomy' => '',
 
147
  'class' => '',
148
- 'section' => 'general_default'
 
149
  ),
150
  array(
151
- 'label' => 'List Item',
152
- 'id' => 'my_list_item',
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
153
  'type' => 'list-item',
154
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
155
- 'settings' => array(
156
- array(
157
- 'label' => 'Upload',
158
- 'id' => 'my_list_item_upload',
159
- 'type' => 'upload',
160
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
161
- 'std' => '',
162
- 'rows' => '',
163
- 'post_type' => '',
164
- 'taxonomy' => '',
165
- 'class' => ''
166
- ),
167
  array(
168
- 'label' => 'Text',
169
- 'id' => 'my_list_item_text',
170
- 'type' => 'text',
171
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
172
  'std' => '',
173
- 'rows' => '',
174
- 'post_type' => '',
175
- 'taxonomy' => '',
176
- 'class' => ''
177
- ),
178
- array(
179
- 'label' => 'Textarea Simple',
180
- 'id' => 'my_list_item_textarea_simple',
181
  'type' => 'textarea-simple',
182
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
183
- 'std' => '',
184
  'rows' => '10',
185
  'post_type' => '',
186
  'taxonomy' => '',
187
- 'class' => ''
 
 
 
188
  )
189
- ),
 
 
 
 
 
190
  'std' => '',
 
 
191
  'rows' => '',
192
  'post_type' => '',
193
  'taxonomy' => '',
 
194
  'class' => '',
195
- 'section' => 'general_default'
 
196
  ),
197
  array(
198
- 'label' => 'Measurement',
199
- 'id' => 'my_measurement',
200
- 'type' => 'measurement',
201
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
202
  'std' => '',
 
 
203
  'rows' => '',
204
  'post_type' => '',
205
  'taxonomy' => '',
 
206
  'class' => '',
207
- 'section' => 'general_default'
 
208
  ),
209
  array(
210
- 'label' => 'Page Checkbox',
211
- 'id' => 'my_page_checkbox',
212
- 'type' => 'page-checkbox',
213
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
214
  'std' => '',
 
 
215
  'rows' => '',
216
  'post_type' => '',
217
  'taxonomy' => '',
 
218
  'class' => '',
219
- 'section' => 'general_default'
 
220
  ),
221
  array(
222
- 'label' => 'Page Select',
223
- 'id' => 'my_page_select',
224
- 'type' => 'page-select',
225
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
226
  'std' => '',
 
 
227
  'rows' => '',
228
  'post_type' => '',
229
  'taxonomy' => '',
 
230
  'class' => '',
231
- 'section' => 'general_default'
 
232
  ),
233
  array(
234
- 'label' => 'Post Checkbox',
235
- 'id' => 'my_post_checkbox',
236
- 'type' => 'post-checkbox',
237
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
238
  'std' => '',
 
 
239
  'rows' => '',
240
  'post_type' => '',
241
  'taxonomy' => '',
 
242
  'class' => '',
243
- 'section' => 'general_default'
 
244
  ),
245
  array(
246
- 'label' => 'Post Select',
247
- 'id' => 'my_post_select',
248
- 'type' => 'post-select',
249
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
 
 
 
 
 
 
 
 
 
 
 
 
 
 
250
  'std' => '',
 
 
251
  'rows' => '',
252
  'post_type' => '',
253
  'taxonomy' => '',
 
254
  'class' => '',
255
- 'section' => 'general_default'
 
256
  ),
257
  array(
258
- 'label' => 'Radio',
259
- 'id' => 'my_radio',
 
 
260
  'type' => 'radio',
261
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
262
- 'choices' => array(
 
 
 
 
 
 
 
263
  array(
264
- 'label' => 'Yes',
265
- 'value' => 'yes'
 
266
  ),
267
  array(
268
- 'label' => 'No',
269
- 'value' => 'no'
270
- ),
 
271
  array(
272
- 'label' => 'Maybe',
273
- 'value' => 'maybe'
 
274
  )
275
- ),
276
- 'std' => 'yes',
 
 
 
 
 
 
 
277
  'rows' => '',
278
  'post_type' => '',
279
  'taxonomy' => '',
 
280
  'class' => '',
281
- 'section' => 'miscellaneous'
 
282
  ),
283
  array(
284
- 'label' => 'Radio Image',
285
- 'id' => 'my_radio_image',
286
- 'type' => 'radio-image',
287
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
288
- 'std' => 'right-sidebar',
 
289
  'rows' => '',
290
  'post_type' => '',
291
  'taxonomy' => '',
 
292
  'class' => '',
293
- 'section' => 'miscellaneous'
294
- ),
295
- array(
296
- 'label' => 'Select',
297
- 'id' => 'my_select',
298
- 'type' => 'select',
299
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
300
- 'choices' => array(
301
  array(
302
- 'label' => 'Yes',
303
- 'value' => 'yes'
 
304
  ),
305
  array(
306
- 'label' => 'No',
307
- 'value' => 'no'
 
308
  ),
309
  array(
310
- 'label' => 'Maybe',
311
- 'value' => 'maybe'
 
312
  )
313
- ),
314
- 'std' => 'maybe',
315
- 'rows' => '',
316
- 'post_type' => '',
317
- 'taxonomy' => '',
318
- 'class' => '',
319
- 'section' => 'miscellaneous'
320
  ),
321
  array(
322
- 'label' => 'Slider',
323
- 'id' => 'my_slider',
324
- 'type' => 'slider',
325
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
326
  'std' => '',
 
 
327
  'rows' => '',
328
  'post_type' => '',
329
  'taxonomy' => '',
 
330
  'class' => '',
331
- 'section' => 'miscellaneous'
 
332
  ),
333
  array(
334
- 'label' => 'Tag Checkbox',
335
- 'id' => 'my_tag_checkbox',
336
- 'type' => 'tag-checkbox',
337
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
338
  'std' => '',
 
 
339
  'rows' => '',
340
  'post_type' => '',
341
  'taxonomy' => '',
 
342
  'class' => '',
343
- 'section' => 'miscellaneous'
 
344
  ),
345
  array(
346
- 'label' => 'Tag Select',
347
- 'id' => 'my_tag_select',
348
- 'type' => 'tag-select',
349
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
350
  'std' => '',
 
 
351
  'rows' => '',
352
  'post_type' => '',
353
  'taxonomy' => '',
 
354
  'class' => '',
355
- 'section' => 'miscellaneous'
 
356
  ),
357
  array(
358
- 'label' => 'Taxonomy Checkbox',
359
- 'id' => 'my_taxonomy_checkbox',
360
- 'type' => 'taxonomy-checkbox',
361
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
362
  'std' => '',
 
 
363
  'rows' => '',
364
  'post_type' => '',
365
  'taxonomy' => 'category,post_tag',
 
366
  'class' => '',
367
- 'section' => 'miscellaneous'
 
368
  ),
369
  array(
370
- 'label' => 'Taxonomy Select',
371
- 'id' => 'my_taxonomy_select',
372
- 'type' => 'taxonomy-select',
373
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
374
  'std' => '',
 
 
375
  'rows' => '',
376
  'post_type' => '',
377
  'taxonomy' => 'category,post_tag',
 
378
  'class' => '',
379
- 'section' => 'miscellaneous'
 
380
  ),
381
  array(
382
- 'label' => 'Text',
383
- 'id' => 'my_text',
384
- 'type' => 'text',
385
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
386
  'std' => '',
 
 
387
  'rows' => '',
388
  'post_type' => '',
389
  'taxonomy' => '',
 
390
  'class' => '',
391
- 'section' => 'miscellaneous'
 
392
  ),
393
  array(
394
- 'label' => 'Textarea',
395
- 'id' => 'my_textarea',
396
- 'type' => 'textarea',
397
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
398
  'std' => '',
 
 
399
  'rows' => '15',
400
  'post_type' => '',
401
  'taxonomy' => '',
 
402
  'class' => '',
403
- 'section' => 'miscellaneous'
 
404
  ),
405
  array(
406
- 'label' => 'Textarea Simple',
407
- 'id' => 'my_textarea_simple',
408
- 'type' => 'textarea-simple',
409
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
410
  'std' => '',
 
 
411
  'rows' => '10',
412
  'post_type' => '',
413
  'taxonomy' => '',
 
414
  'class' => '',
415
- 'section' => 'miscellaneous'
 
416
  ),
417
  array(
418
- 'label' => 'Textblock',
419
- 'id' => 'my_textblock',
420
- 'type' => 'textblock',
421
- 'desc' => '<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>',
422
  'std' => '',
 
 
423
  'rows' => '',
424
  'post_type' => '',
425
  'taxonomy' => '',
 
426
  'class' => '',
427
- 'section' => 'miscellaneous'
 
428
  ),
429
  array(
430
- 'label' => 'Textblock Titled',
431
- 'id' => 'my_textblock_titled',
432
- 'type' => 'textblock-titled',
433
- 'desc' => '<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>',
434
  'std' => '',
 
 
435
  'rows' => '',
436
  'post_type' => '',
437
  'taxonomy' => '',
 
438
  'class' => '',
439
- 'section' => 'miscellaneous'
 
440
  ),
441
  array(
442
- 'label' => 'Typography',
443
- 'id' => 'my_typography',
444
- 'type' => 'typography',
445
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
446
  'std' => '',
 
 
447
  'rows' => '',
448
  'post_type' => '',
449
  'taxonomy' => '',
 
450
  'class' => '',
451
- 'section' => 'miscellaneous'
 
452
  ),
453
  array(
454
- 'label' => 'Upload',
455
- 'id' => 'my_upload',
456
- 'type' => 'upload',
457
- 'desc' => 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
458
  'std' => '',
 
 
459
  'rows' => '',
460
  'post_type' => '',
461
  'taxonomy' => '',
 
462
  'class' => '',
463
- 'section' => 'miscellaneous'
 
464
  )
465
  )
466
  );
1
  <?php
2
  /**
3
+ * Initialize the custom Theme Options.
4
  */
5
+ add_action( 'admin_init', 'custom_theme_options' );
6
 
7
  /**
8
+ * Build the custom settings & update OptionTree.
9
  *
10
  * @return void
 
 
11
  * @since 2.0
12
  */
13
+ function custom_theme_options() {
14
 
15
  /**
16
  * Get a copy of the saved settings array.
18
  $saved_settings = get_option( 'option_tree_settings', array() );
19
 
20
  /**
21
+ * Custom settings array that will eventually be
22
+ * passes to the OptionTree Settings API Class.
23
  */
24
+ $custom_settings = array(
25
+ 'contextual_help' => array(
26
  'content' => array(
27
  array(
28
+ 'id' => 'option_types_help',
29
+ 'title' => __( 'Option Types', 'theme-text-domain' ),
30
+ 'content' => '<p>' . __( 'Help content goes here!', 'theme-text-domain' ) . '</p>'
31
  )
32
  ),
33
+ 'sidebar' => '<p>' . __( 'Sidebar content goes here!', 'theme-text-domain' ) . '</p>'
34
  ),
35
+ 'sections' => array(
 
 
 
 
36
  array(
37
+ 'id' => 'option_types',
38
+ 'title' => __( 'Option Types', 'theme-text-domain' )
39
  )
40
  ),
41
+ 'settings' => array(
42
  array(
43
+ 'id' => 'demo_background',
44
+ 'label' => __( 'Background', 'theme-text-domain' ),
45
+ 'desc' => sprintf( __( 'The Background option type is for adding background styles to your theme either dynamically via the CSS option type below or manually with %s. The Background option type has filters that allow you to remove fields or change the defaults. For example, you can filter %s to remove unwanted fields from all Background options or an individual one. You can also filter %s. These filters allow you to fine tune the select lists for your specific needs.', 'theme-text-domain' ), '<code>ot_get_option()</code>', '<code>ot_recognized_background_fields</code>', '<code>ot_recognized_background_repeat</code>, <code>ot_recognized_background_attachment</code>, <code>ot_recognized_background_position</code>, ' . __( 'and', 'theme-text-domain' ) . ' <code>ot_type_background_size_choices</code>' ),
 
46
  'std' => '',
47
+ 'type' => 'background',
48
+ 'section' => 'option_types',
49
  'rows' => '',
50
  'post_type' => '',
51
  'taxonomy' => '',
52
+ 'min_max_step'=> '',
53
  'class' => '',
54
+ 'condition' => '',
55
+ 'operator' => 'and'
56
  ),
57
  array(
58
+ 'id' => 'demo_category_checkbox',
59
+ 'label' => __( 'Category Checkbox', 'theme-text-domain' ),
60
+ 'desc' => __( 'The Category Checkbox option type displays a list of category IDs. It allows the user to check multiple category IDs and will return that value as an array for use in a custom function or loop.' ),
 
61
  'std' => '',
62
+ 'type' => 'category-checkbox',
63
+ 'section' => 'option_types',
64
  'rows' => '',
65
  'post_type' => '',
66
  'taxonomy' => '',
67
+ 'min_max_step'=> '',
68
  'class' => '',
69
+ 'condition' => '',
70
+ 'operator' => 'and'
71
  ),
72
  array(
73
+ 'id' => 'demo_category_select',
74
+ 'label' => __( 'Category Select', 'theme-text-domain' ),
75
+ 'desc' => __( 'The Category Select option type displays a list of category IDs. It allows the user to select only one category ID and will return that value for use in a custom function or loop.', 'theme-text-domain' ),
 
76
  'std' => '',
77
+ 'type' => 'category-select',
78
+ 'section' => 'option_types',
79
  'rows' => '',
80
  'post_type' => '',
81
  'taxonomy' => '',
82
+ 'min_max_step'=> '',
83
  'class' => '',
84
+ 'condition' => '',
85
+ 'operator' => 'and'
86
  ),
87
  array(
88
+ 'id' => 'demo_checkbox',
89
+ 'label' => __( 'Checkbox', 'theme-text-domain' ),
90
+ 'desc' => __( 'The Checkbox option type displays a group of choices. It allows the user to check multiple choices and will return that value as an array for use in a custom function or loop.', 'theme-text-domain' ),
 
 
 
 
 
 
 
91
  'std' => '',
92
+ 'type' => 'checkbox',
93
+ 'section' => 'option_types',
94
  'rows' => '',
95
  'post_type' => '',
96
  'taxonomy' => '',
97
+ 'min_max_step'=> '',
98
  'class' => '',
99
+ 'condition' => '',
100
+ 'operator' => 'and',
101
+ 'choices' => array(
102
+ array(
103
+ 'value' => 'no',
104
+ 'label' => __( 'No', 'theme-text-domain' ),
105
+ 'src' => ''
106
+ ),
107
+ array(
108
+ 'value' => 'Yes',
109
+ 'label' => __( 'Yes', 'theme-text-domain' ),
110
+ 'src' => ''
111
+ )
112
+ )
113
  ),
114
  array(
115
+ 'id' => 'demo_colorpicker',
116
+ 'label' => __( 'Colorpicker', 'theme-text-domain' ),
117
+ 'desc' => __( 'The Colorpicker option type saves a hexadecimal color code for use in CSS. Use it to modify the color of something in your theme.', 'theme-text-domain' ),
 
118
  'std' => '',
119
+ 'type' => 'colorpicker',
120
+ 'section' => 'option_types',
121
  'rows' => '',
122
  'post_type' => '',
123
  'taxonomy' => '',
124
+ 'min_max_step'=> '',
125
  'class' => '',
126
+ 'condition' => '',
127
+ 'operator' => 'and'
128
  ),
129
  array(
130
+ 'id' => 'demo_css',
131
+ 'label' => __( 'CSS', 'theme-text-domain' ),
132
+ 'desc' => '<p>' . sprintf( __( 'The CSS option type is a textarea that when used properly can add dynamic CSS to your theme from within OptionTree. Unfortunately, due server limitations you will need to create a file named %s at the root level of your theme and change permissions using %s so the server can write to the file. I have had the most success setting this single file to %s but feel free to play around with permissions until everything is working. A good starting point is %s. When the server can save to the file, CSS will automatically be updated when you save your Theme Options.', 'theme-text-domain' ), '<code>dynamic.css</code>', '<code>chmod</code>', '<code>0777</code>', '<code>0666</code>' ) . '</p><p>' . sprintf( __( 'This example assumes you have an option with the ID of %1$s. Which means this option will automatically insert the value of %1$s into the %2$s when the Theme Options are saved.', 'theme-text-domain' ), '<code>demo_background</code>', '<code>dynamic.css</code>' ) . '</p>',
133
+ 'std' => '#custom {
134
+ {{demo_background}}
135
+ }',
136
  'type' => 'css',
137
+ 'section' => 'option_types',
 
138
  'rows' => '20',
139
  'post_type' => '',
140
  'taxonomy' => '',
141
+ 'min_max_step'=> '',
142
  'class' => '',
143
+ 'condition' => '',
144
+ 'operator' => 'and'
145
  ),
146
  array(
147
+ 'id' => 'demo_custom_post_type_checkbox',
148
+ 'label' => __( 'Custom Post Type Checkbox', 'theme-text-domain' ),
149
+ 'desc' => sprintf( __( 'The Custom Post Type Select option type displays a list of IDs from any available WordPress post type or custom post type. It allows the user to check multiple post IDs for use in a custom function or loop. Requires at least one valid %1$s in the %1$s field.', 'theme-text-domain' ), '<code>post_type</code>' ),
 
150
  'std' => '',
151
+ 'type' => 'custom-post-type-checkbox',
152
+ 'section' => 'option_types',
153
  'rows' => '',
154
  'post_type' => 'post',
155
  'taxonomy' => '',
156
+ 'min_max_step'=> '',
157
  'class' => '',
158
+ 'condition' => '',
159
+ 'operator' => 'and'
160
  ),
161
  array(
162
+ 'id' => 'demo_custom_post_type_select',
163
+ 'label' => __( 'Custom Post Type Select', 'theme-text-domain' ),
164
+ 'desc' => sprintf( __( 'The Custom Post Type Select option type displays a list of IDs from any available WordPress post type or custom post type. It will return a single post ID for use in a custom function or loop. Requires at least one valid %1$s in the %1$s field.', 'theme-text-domain' ), '<code>post_type</code>' ),
 
165
  'std' => '',
166
+ 'type' => 'custom-post-type-select',
167
+ 'section' => 'option_types',
168
  'rows' => '',
169
  'post_type' => 'post',
170
  'taxonomy' => '',
171
+ 'min_max_step'=> '',
172
  'class' => '',
173
+ 'condition' => '',
174
+ 'operator' => 'and'
175
  ),
176
  array(
177
+ 'id' => 'demo_date_picker',
178
+ 'label' => __( 'Date Picker', 'theme-text-domain' ),
179
+ 'desc' => __( 'The Date Picker option type is tied to a standard form input field which displays a calendar pop-up that allow the user to pick any date when focus is given to the input field. The returned value is a date formatted string.', 'theme-text-domain' ),
180
+ 'std' => '',
181
+ 'type' => 'date-picker',
182
+ 'section' => 'option_types',
183
+ 'rows' => '',
184
+ 'post_type' => '',
185
+ 'taxonomy' => '',
186
+ 'min_max_step'=> '',
187
+ 'class' => '',
188
+ 'condition' => '',
189
+ 'operator' => 'and'
190
+ ),
191
+ array(
192
+ 'id' => 'demo_date_time_picker',
193
+ 'label' => __( 'Date Time Picker', 'theme-text-domain' ),
194
+ 'desc' => __( 'The Date Time Picker option type is tied to a standard form input field which displays a calendar pop-up that allow the user to pick any date and time when focus is given to the input field. The returned value is a date and time formatted string.', 'theme-text-domain' ),
195
+ 'std' => '',
196
+ 'type' => 'date-time-picker',
197
+ 'section' => 'option_types',
198
+ 'rows' => '',
199
+ 'post_type' => '',
200
+ 'taxonomy' => '',
201
+ 'min_max_step'=> '',
202
+ 'class' => '',
203
+ 'condition' => '',
204
+ 'operator' => 'and'
205
+ ),
206
+ array(
207
+ 'id' => 'demo_gallery',
208
+ 'label' => __( 'Gallery', 'theme-text-domain' ),
209
+ 'desc' => __( 'The Gallery option type saves a comma separated list of image attachment IDs. You will need to create a front-end function to display the images in your theme.', 'theme-text-domain' ),
210
+ 'std' => '',
211
+ 'type' => 'gallery',
212
+ 'section' => 'option_types',
213
+ 'rows' => '',
214
+ 'post_type' => '',
215
+ 'taxonomy' => '',
216
+ 'min_max_step'=> '',
217
+ 'class' => '',
218
+ 'condition' => '',
219
+ 'operator' => 'and'
220
+ ),
221
+ array(
222
+ 'id' => 'demo_list_item',
223
+ 'label' => __( 'List Item', 'theme-text-domain' ),
224
+ 'desc' => __( 'The List Item option type allows for a great deal of customization. You can add settings to the List Item and those settings will be displayed to the user when they add a new List Item. Typical use is for creating sliding content or blocks of code for custom layouts.', 'theme-text-domain' ),
225
+ 'std' => '',
226
  'type' => 'list-item',
227
+ 'section' => 'option_types',
228
+ 'rows' => '',
229
+ 'post_type' => '',
230
+ 'taxonomy' => '',
231
+ 'min_max_step'=> '',
232
+ 'class' => '',
233
+ 'condition' => '',
234
+ 'operator' => 'and',
235
+ 'settings' => array(
 
 
 
 
236
  array(
237
+ 'id' => 'demo_list_item_content',
238
+ 'label' => __( 'Content', 'theme-text-domain' ),
239
+ 'desc' => '',
 
240
  'std' => '',
 
 
 
 
 
 
 
 
241
  'type' => 'textarea-simple',
 
 
242
  'rows' => '10',
243
  'post_type' => '',
244
  'taxonomy' => '',
245
+ 'min_max_step'=> '',
246
+ 'class' => '',
247
+ 'condition' => '',
248
+ 'operator' => 'and'
249
  )
250
+ )
251
+ ),
252
+ array(
253
+ 'id' => 'demo_measurement',
254
+ 'label' => __( 'Measurement', 'theme-text-domain' ),
255
+ 'desc' => sprintf( __( 'The Measurement option type is a mix of input and select fields. The text input excepts a value and the select lets you choose the unit of measurement to add to that value. Currently the default units are %s, %s, %s, and %s. However, you can change them with the %s filter.', 'theme-text-domain' ), '<code>px</code>', '<code>%</code>', '<code>em</code>', '<code>pt</code>', '<code>ot_measurement_unit_types</code>' ),
256
  'std' => '',
257
+ 'type' => 'measurement',
258
+ 'section' => 'option_types',
259
  'rows' => '',
260
  'post_type' => '',
261
  'taxonomy' => '',
262
+ 'min_max_step'=> '',
263
  'class' => '',
264
+ 'condition' => '',
265
+ 'operator' => 'and'
266
  ),
267
  array(
268
+ 'id' => 'demo_numeric_slider',
269
+ 'label' => __( 'Numeric Slider', 'theme-text-domain' ),
270
+ 'desc' => __( 'The Numeric Slider option type displays a jQuery UI slider. It will return a single numerical value for use in a custom function or loop.', 'theme-text-domain' ),
 
271
  'std' => '',
272
+ 'type' => 'numeric-slider',
273
+ 'section' => 'option_types',
274
  'rows' => '',
275
  'post_type' => '',
276
  'taxonomy' => '',
277
+ 'min_max_step'=> '-500,5000,100',
278
  'class' => '',
279
+ 'condition' => '',
280
+ 'operator' => 'and'
281
  ),
282
  array(
283
+ 'id' => 'demo_on_off',
284
+ 'label' => __( 'On/Off', 'theme-text-domain' ),
285
+ 'desc' => sprintf( __( 'The On/Off option type displays a simple switch that can be used to turn things on or off. The saved return value is either %s or %s.', 'theme-text-domain' ), '<code>on</code>', '<code>off</code>' ),
 
286
  'std' => '',
287
+ 'type' => 'on-off',
288
+ 'section' => 'option_types',
289
  'rows' => '',
290
  'post_type' => '',
291
  'taxonomy' => '',
292
+ 'min_max_step'=> '',
293
  'class' => '',
294
+ 'condition' => '',
295
+ 'operator' => 'and'
296
  ),
297
  array(
298
+ 'id' => 'demo_page_checkbox',
299
+ 'label' => __( 'Page Checkbox', 'theme-text-domain' ),
300
+ 'desc' => __( 'The Page Checkbox option type displays a list of page IDs. It allows the user to check multiple page IDs for use in a custom function or loop.', 'theme-text-domain' ),
 
301
  'std' => '',
302
+ 'type' => 'page-checkbox',
303
+ 'section' => 'option_types',
304
  'rows' => '',
305
  'post_type' => '',
306
  'taxonomy' => '',
307
+ 'min_max_step'=> '',
308
  'class' => '',
309
+ 'condition' => '',
310
+ 'operator' => 'and'
311
  ),
312
  array(
313
+ 'id' => 'demo_page_select',
314
+ 'label' => __( 'Page Select', 'theme-text-domain' ),
315
+ 'desc' => __( 'The Page Select option type displays a list of page IDs. It will return a single page ID for use in a custom function or loop.', 'theme-text-domain' ),
 
316
  'std' => '',
317
+ 'type' => 'page-select',
318
+ 'section' => 'option_types',
319
  'rows' => '',
320
  'post_type' => '',
321
  'taxonomy' => '',
322
+ 'min_max_step'=> '',
323
  'class' => '',
324
+ 'condition' => '',
325
+ 'operator' => 'and'
326
  ),
327
  array(
328
+ 'id' => 'demo_post_checkbox',
329
+ 'label' => __( 'Post Checkbox', 'theme-text-domain' ),
330
+ 'desc' => __( 'The Post Checkbox option type displays a list of post IDs. It allows the user to check multiple post IDs for use in a custom function or loop.', 'theme-text-domain' ),
331
+ 'std' => '',
332
+ 'type' => 'post-checkbox',
333
+ 'section' => 'option_types',
334
+ 'rows' => '',
335
+ 'post_type' => '',
336
+ 'taxonomy' => '',
337
+ 'min_max_step'=> '',
338
+ 'class' => '',
339
+ 'condition' => '',
340
+ 'operator' => 'and'
341
+ ),
342
+ array(
343
+ 'id' => 'demo_post_select',
344
+ 'label' => __( 'Post Select', 'theme-text-domain' ),
345
+ 'desc' => __( 'The Post Select option type displays a list of post IDs. It will return a single post ID for use in a custom function or loop.', 'theme-text-domain' ),
346
  'std' => '',
347
+ 'type' => 'post-select',
348
+ 'section' => 'option_types',
349
  'rows' => '',
350
  'post_type' => '',
351
  'taxonomy' => '',
352
+ 'min_max_step'=> '',
353
  'class' => '',
354
+ 'condition' => '',
355
+ 'operator' => 'and'
356
  ),
357
  array(
358
+ 'id' => 'demo_radio',
359
+ 'label' => __( 'Radio', 'theme-text-domain' ),
360
+ 'desc' => __( 'The Radio option type displays a group of choices. It allows the user to choose one and will return that value as a string for use in a custom function or loop.', 'theme-text-domain' ),
361
+ 'std' => '',
362
  'type' => 'radio',
363
+ 'section' => 'option_types',
364
+ 'rows' => '',
365
+ 'post_type' => '',
366
+ 'taxonomy' => '',
367
+ 'min_max_step'=> '',
368
+ 'class' => '',
369
+ 'condition' => '',
370
+ 'operator' => 'and',
371
+ 'choices' => array(
372
  array(
373
+ 'value' => 'yes',
374
+ 'label' => __( 'Yes', 'theme-text-domain' ),
375
+ 'src' => ''
376
  ),
377
  array(
378
+ 'value' => 'no',
379
+ 'label' => __( 'No', 'theme-text-domain' ),
380
+ 'src' => ''
381
+ ),
382
  array(
383
+ 'value' => 'maybe',
384
+ 'label' => __( 'Maybe', 'theme-text-domain' ),
385
+ 'src' => ''
386
  )
387
+ )
388
+ ),
389
+ array(
390
+ 'id' => 'demo_radio_image',
391
+ 'label' => __( 'Radio Image', 'theme-text-domain' ),
392
+ 'desc' => sprintf( __( 'the Radio Images option type is primarily used for layouts. However, you can filter the image list using %s. As well, you can add your own custom images using the choices array.', 'theme-text-domain' ), '<code>ot_radio_images</code>' ),
393
+ 'std' => 'right-sidebar',
394
+ 'type' => 'radio-image',
395
+ 'section' => 'option_types',
396
  'rows' => '',
397
  'post_type' => '',
398
  'taxonomy' => '',
399
+ 'min_max_step'=> '',
400
  'class' => '',
401
+ 'condition' => '',
402
+ 'operator' => 'and'
403
  ),
404
  array(
405
+ 'id' => 'demo_select',
406
+ 'label' => __( 'Select', 'theme-text-domain' ),
407
+ 'desc' => __( 'The Select option type is used to list anything you want that would be chosen from a select list.', 'theme-text-domain' ),
408
+ 'std' => '',
409
+ 'type' => 'select',
410
+ 'section' => 'option_types',
411
  'rows' => '',
412
  'post_type' => '',
413
  'taxonomy' => '',
414
+ 'min_max_step'=> '',
415
  'class' => '',
416
+ 'condition' => '',
417
+ 'operator' => 'and',
418
+ 'choices' => array(
419
+ array(
420
+ 'value' => '',
421
+ 'label' => __( '-- Choose One --', 'theme-text-domain' ),
422
+ 'src' => ''
423
+ ),
424
  array(
425
+ 'value' => 'yes',
426
+ 'label' => __( 'Yes', 'theme-text-domain' ),
427
+ 'src' => ''
428
  ),
429
  array(
430
+ 'value' => 'no',
431
+ 'label' => __( 'No', 'theme-text-domain' ),
432
+ 'src' => ''
433
  ),
434
  array(
435
+ 'value' => 'maybe',
436
+ 'label' => __( 'Maybe', 'theme-text-domain' ),
437
+ 'src' => ''
438
  )
439
+ )
 
 
 
 
 
 
440
  ),
441
  array(
442
+ 'id' => 'demo_sidebar_select',
443
+ 'label' => __( 'Sidebar Select', 'theme-text-domain' ),
444
+ 'desc' => '<p>' . sprintf( __( 'This option type makes it possible for users to select a WordPress registered sidebar to use on a specific area. By using the two provided filters, %s, and %s we can be selective about which sidebars are available on a specific content area.', 'theme-text-domain' ), '<code>ot_recognized_sidebars</code>', '<code>ot_recognized_sidebars_{$field_id}</code>' ) . '</p><p>' . sprintf( __( 'For example, if we create a WordPress theme that provides the ability to change the Blog Sidebar and we don\'t want to have the footer sidebars available on this area, we can unset those sidebars either manually or by using a regular expression if we have a common name like %s.', 'theme-text-domain' ), '<code>footer-sidebar-$i</code>' ) . '</p>',
 
445
  'std' => '',
446
+ 'type' => 'sidebar-select',
447
+ 'section' => 'option_types',
448
  'rows' => '',
449
  'post_type' => '',
450
  'taxonomy' => '',
451
+ 'min_max_step'=> '',
452
  'class' => '',
453
+ 'condition' => '',
454
+ 'operator' => 'and'
455
  ),
456
  array(
457
+ 'id' => 'demo_tag_checkbox',
458
+ 'label' => __( 'Tag Checkbox', 'theme-text-domain' ),
459
+ 'desc' => __( 'The Tag Checkbox option type displays a list of tag IDs. It allows the user to check multiple tag IDs and will return that value as an array for use in a custom function or loop.', 'theme-text-domain' ),
 
460
  'std' => '',
461
+ 'type' => 'tag-checkbox',
462
+ 'section' => 'option_types',
463
  'rows' => '',
464
  'post_type' => '',
465
  'taxonomy' => '',
466
+ 'min_max_step'=> '',
467
  'class' => '',
468
+ 'condition' => '',
469
+ 'operator' => 'and'
470
  ),
471
  array(
472
+ 'id' => 'demo_tag_select',
473
+ 'label' => __( 'Tag Select', 'theme-text-domain' ),
474
+ 'desc' => __( 'The Tag Select option type displays a list of tag IDs. It allows the user to select only one tag ID and will return that value for use in a custom function or loop.', 'theme-text-domain' ),
 
475
  'std' => '',
476
+ 'type' => 'tag-select',
477
+ 'section' => 'option_types',
478
  'rows' => '',
479
  'post_type' => '',
480
  'taxonomy' => '',
481
+ 'min_max_step'=> '',
482
  'class' => '',
483
+ 'condition' => '',
484
+ 'operator' => 'and'
485
  ),
486
  array(
487
+ 'id' => 'demo_taxonomy_checkbox',
488
+ 'label' => __( 'Taxonomy Checkbox', 'theme-text-domain' ),
489
+ 'desc' => __( 'The Taxonomy Checkbox option type displays a list of taxonomy IDs. It allows the user to check multiple taxonomy IDs and will return that value as an array for use in a custom function or loop.', 'theme-text-domain' ),
 
490
  'std' => '',
491
+ 'type' => 'taxonomy-checkbox',
492
+ 'section' => 'option_types',
493
  'rows' => '',
494
  'post_type' => '',
495
  'taxonomy' => 'category,post_tag',
496
+ 'min_max_step'=> '',
497
  'class' => '',
498
+ 'condition' => '',
499
+ 'operator' => 'and'
500
  ),
501
  array(
502
+ 'id' => 'demo_taxonomy_select',
503
+ 'label' => __( 'Taxonomy Select', 'theme-text-domain' ),
504
+ 'desc' => __( 'The Taxonomy Select option type displays a list of taxonomy IDs. It allows the user to select only one taxonomy ID and will return that value for use in a custom function or loop.', 'theme-text-domain' ),
 
505
  'std' => '',
506
+ 'type' => 'taxonomy-select',
507
+ 'section' => 'option_types',
508
  'rows' => '',
509
  'post_type' => '',
510
  'taxonomy' => 'category,post_tag',
511
+ 'min_max_step'=> '',
512
  'class' => '',
513
+ 'condition' => '',
514
+ 'operator' => 'and'
515
  ),
516
  array(
517
+ 'id' => 'demo_text',
518
+ 'label' => __( 'Text', 'theme-text-domain' ),
519
+ 'desc' => __( 'The Text option type is used to save string values. For example, any optional or required text that is of reasonably short character length.', 'theme-text-domain' ),
 
520
  'std' => '',
521
+ 'type' => 'text',
522
+ 'section' => 'option_types',
523
  'rows' => '',
524
  'post_type' => '',
525
  'taxonomy' => '',
526
+ 'min_max_step'=> '',
527
  'class' => '',
528
+ 'condition' => '',
529
+ 'operator' => 'and'
530
  ),
531
  array(
532
+ 'id' => 'demo_textarea',
533
+ 'label' => __( 'Textarea', 'theme-text-domain' ),
534
+ 'desc' => sprintf( __( 'The Textarea option type is a large string value used for custom code or text in the theme and has a WYSIWYG editor that can be filtered to change the how it is displayed. For example, you can filter %s, %s, %s, and %s.', 'theme-text-domain' ), '<code>wpautop</code>', '<code>media_buttons</code>', '<code>tinymce</code>', '<code>quicktags</code>' ),
 
535
  'std' => '',
536
+ 'type' => 'textarea',
537
+ 'section' => 'option_types',
538
  'rows' => '15',
539
  'post_type' => '',
540
  'taxonomy' => '',
541
+ 'min_max_step'=> '',
542
  'class' => '',
543
+ 'condition' => '',
544
+ 'operator' => 'and'
545
  ),
546
  array(
547
+ 'id' => 'demo_textarea_simple',
548
+ 'label' => __( 'Textarea Simple', 'theme-text-domain' ),
549
+ 'desc' => __( 'The Textarea Simple option type is a large string value used for custom code or text in the theme. The Textarea Simple does not have a WYSIWYG editor.', 'theme-text-domain' ),
 
550
  'std' => '',
551
+ 'type' => 'textarea-simple',
552
+ 'section' => 'option_types',
553
  'rows' => '10',
554
  'post_type' => '',
555
  'taxonomy' => '',
556
+ 'min_max_step'=> '',
557
  'class' => '',
558
+ 'condition' => '',
559
+ 'operator' => 'and'
560
  ),
561
  array(
562
+ 'id' => 'demo_textblock',
563
+ 'label' => __( 'Textblock', 'theme-text-domain' ),
564
+ 'desc' => __( 'The Textblock option type is used only on the Theme Option page. It will allow you to create & display HTML, but has no title above the text block. You can then use the Textblock to add a more detailed set of instruction on how the options are used in your theme. You would never use this in your themes template files as it does not save a value.', 'theme-text-domain' ),
 
565
  'std' => '',
566
+ 'type' => 'textblock',
567
+ 'section' => 'option_types',
568
  'rows' => '',
569
  'post_type' => '',
570
  'taxonomy' => '',
571
+ 'min_max_step'=> '',
572
  'class' => '',
573
+ 'condition' => '',
574
+ 'operator' => 'and'
575
  ),
576
  array(
577
+ 'id' => 'demo_textblock_titled',
578
+ 'label' => __( 'Textblock Titled', 'theme-text-domain' ),
579
+ 'desc' => __( 'The Textblock Titled option type is used only on the Theme Option page. It will allow you to create & display HTML, and has a title above the text block. You can then use the Textblock Titled to add a more detailed set of instruction on how the options are used in your theme. You would never use this in your themes template files as it does not save a value.', 'theme-text-domain' ),
 
580
  'std' => '',
581
+ 'type' => 'textblock-titled',
582
+ 'section' => 'option_types',
583
  'rows' => '',
584
  'post_type' => '',
585
  'taxonomy' => '',
586
+ 'min_max_step'=> '',
587
  'class' => '',
588
+ 'condition' => '',
589
+ 'operator' => 'and'
590
  ),
591
  array(
592
+ 'id' => 'demo_typography',
593
+ 'label' => __( 'Typography', 'theme-text-domain' ),
594
+ 'desc' => sprintf( __( 'The Typography option type is for adding typography styles to your theme either dynamically via the CSS option type above or manually with %s. The Typography option type has filters that allow you to remove fields or change the defaults. For example, you can filter %s to remove unwanted fields from all Background options or an individual one. You can also filter %s. These filters allow you to fine tune the select lists for your specific needs.', 'theme-text-domain' ), '<code>ot_get_option()</code>', '<code>ot_recognized_typography_fields</code>', '<code>ot_recognized_font_families</code>, <code>ot_recognized_font_sizes</code>, <code>ot_recognized_font_styles</code>, <code>ot_recognized_font_variants</code>, <code>ot_recognized_font_weights</code>, <code>ot_recognized_letter_spacing</code>, <code>ot_recognized_line_heights</code>, <code>ot_recognized_text_decorations</code> ' . __( 'and', 'theme-text-domain' ) . ' <code>ot_recognized_text_transformations</code>' ),
 
595
  'std' => '',
596
+ 'type' => 'typography',
597
+ 'section' => 'option_types',
598
  'rows' => '',
599
  'post_type' => '',
600
  'taxonomy' => '',
601
+ 'min_max_step'=> '',
602
  'class' => '',
603
+ 'condition' => '',
604
+ 'operator' => 'and'
605
  ),
606
  array(
607
+ 'id' => 'demo_upload',
608
+ 'label' => __( 'Upload', 'theme-text-domain' ),
609
+ 'desc' => sprintf( __( 'The Upload option type is used to upload any WordPress supported media. After uploading, users are required to press the "%s" button in order to populate the input with the URI of that media. There is one caveat of this feature. If you import the theme options and have uploaded media on one site the old URI will not reflect the URI of your new site. You will have to re-upload or %s any media to your new server and change the URIs if necessary.', 'theme-text-domain' ), apply_filters( 'ot_upload_text', __( 'Send to OptionTree', 'theme-text-domain' ) ), 'FTP' ),
 
610
  'std' => '',
611
+ 'type' => 'upload',
612
+ 'section' => 'option_types',
613
  'rows' => '',
614
  'post_type' => '',
615
  'taxonomy' => '',
616
+ 'min_max_step'=> '',
617
  'class' => '',
618
+ 'condition' => '',
619
+ 'operator' => 'and'
620
  )
621
  )
622
  );
composer.json ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "valendesigns/option-tree",
3
+ "description": "Theme Options UI Builder for WordPress.",
4
+ "authors": [
5
+ {
6
+ "name": "Derek Herman",
7
+ "email": "derek@valendesigns.com"
8
+ }
9
+ ],
10
+ "require": {
11
+ },
12
+ "autoload": {
13
+ "files": ["ot-loader.php"]
14
+ }
15
+ }
includes/ot-functions-admin.php CHANGED
@@ -26,7 +26,7 @@ if ( ! function_exists( 'ot_register_theme_options_page' ) ) {
26
  function ot_register_theme_options_page() {
27
 
28
  /* get the settings array */
29
- $get_settings = get_option( 'option_tree_settings' );
30
 
31
  /* sections array */
32
  $sections = isset( $get_settings['sections'] ) ? $get_settings['sections'] : array();
@@ -42,7 +42,7 @@ if ( ! function_exists( 'ot_register_theme_options_page' ) ) {
42
 
43
  ot_register_settings( array(
44
  array(
45
- 'id' => 'option_tree',
46
  'pages' => array(
47
  array(
48
  'id' => 'ot_theme_options',
@@ -67,7 +67,7 @@ if ( ! function_exists( 'ot_register_theme_options_page' ) ) {
67
  );
68
 
69
  // Filters the options.php to add the minimum user capabilities.
70
- add_filter( 'option_page_capability_option_tree', create_function( '$caps', "return '$caps';" ), 999 );
71
 
72
  }
73
 
@@ -371,7 +371,7 @@ if ( ! function_exists( 'ot_register_settings_page' ) ) {
371
  // Register the pages.
372
  ot_register_settings( array(
373
  array(
374
- 'id' => 'option_tree_settings',
375
  'pages' => $ot_register_pages_array
376
  )
377
  )
@@ -400,7 +400,7 @@ if ( ! function_exists( 'ot_after_theme_options_save' ) ) {
400
  if ( apply_filters( 'ot_theme_options_menu_slug', 'ot-theme-options' ) == $page && $updated ) {
401
 
402
  /* grab a copy of the theme options */
403
- $options = get_option( 'option_tree' );
404
 
405
  /* execute the action hook and pass the theme options to it */
406
  do_action( 'ot_after_theme_options_save', $options );
@@ -466,6 +466,18 @@ if ( ! function_exists( 'ot_validate_setting' ) ) {
466
 
467
  $input['background-image'] = ot_validate_setting( $input['background-image'], 'upload', $field_id );
468
 
 
 
 
 
 
 
 
 
 
 
 
 
469
  } else if ( 'colorpicker' == $type ) {
470
 
471
  /* return empty & set error */
@@ -489,14 +501,35 @@ if ( ! function_exists( 'ot_validate_setting' ) ) {
489
 
490
  $input[0] = sanitize_text_field( $input[0] );
491
 
 
 
 
 
 
492
  } else if ( 'typography' == $type && isset( $input['font-color'] ) ) {
493
 
494
  $input['font-color'] = ot_validate_setting( $input['font-color'], 'colorpicker', $field_id );
495
-
 
 
 
 
 
 
 
 
 
 
 
 
496
  } else if ( 'upload' == $type ) {
497
 
498
  $input = sanitize_text_field( $input );
499
-
 
 
 
 
500
  }
501
 
502
  $input = apply_filters( 'ot_after_validate_setting', $input, $type, $field_id );
@@ -506,7 +539,7 @@ if ( ! function_exists( 'ot_validate_setting' ) ) {
506
  }
507
 
508
  }
509
-
510
  /**
511
  * Setup the default admin styles
512
  *
@@ -518,12 +551,23 @@ if ( ! function_exists( 'ot_validate_setting' ) ) {
518
  if ( ! function_exists( 'ot_admin_styles' ) ) {
519
 
520
  function ot_admin_styles() {
521
-
522
- wp_enqueue_style( 'ot-admin-css', OT_URL . 'assets/css/ot-admin.css', false, OT_VERSION );
 
 
523
 
524
  /* load WP colorpicker */
525
  wp_enqueue_style( 'wp-color-picker' );
526
 
 
 
 
 
 
 
 
 
 
527
  }
528
 
529
  }
@@ -543,7 +587,10 @@ if ( ! function_exists( 'ot_admin_styles' ) ) {
543
  if ( ! function_exists( 'ot_admin_scripts' ) ) {
544
 
545
  function ot_admin_scripts() {
546
-
 
 
 
547
  if ( function_exists( 'wp_enqueue_media' ) ) {
548
  /* WP 3.5 Media Uploader */
549
  wp_enqueue_media();
@@ -554,17 +601,26 @@ if ( ! function_exists( 'ot_admin_scripts' ) ) {
554
 
555
  /* load jQuery-ui slider */
556
  wp_enqueue_script( 'jquery-ui-slider' );
 
 
 
557
 
558
  /* load WP colorpicker */
559
  wp_enqueue_script( 'wp-color-picker' );
560
 
 
 
 
 
 
 
561
  /* load all the required scripts */
562
- wp_enqueue_script( 'ot-admin-js', OT_URL . 'assets/js/ot-admin.js', array( 'jquery', 'jquery-ui-tabs', 'jquery-ui-sortable', 'jquery-ui-slider', 'wp-color-picker' ), OT_VERSION );
563
 
564
  /* create localized JS array */
565
  $localized_array = array(
566
  'ajax' => admin_url( 'admin-ajax.php' ),
567
- 'upload_text' => __( 'Send to OptionTree', 'option-tree' ),
568
  'remove_media_text' => __( 'Remove Media', 'option-tree' ),
569
  'reset_agree' => __( 'Are you sure you want to reset back to the defaults?', 'option-tree' ),
570
  'remove_no' => __( 'You can\'t remove this! But you can edit the values.', 'option-tree' ),
@@ -574,11 +630,17 @@ if ( ! function_exists( 'ot_admin_scripts' ) ) {
574
  'delete' => __( 'Delete Gallery', 'option-tree' ),
575
  'edit' => __( 'Edit Gallery', 'option-tree' ),
576
  'create' => __( 'Create Gallery', 'option-tree' ),
577
- 'confirm' => __( 'Are you sure you want to delete this Gallery?', 'option-tree' )
 
 
 
578
  );
579
 
580
  /* localized script attached to 'option_tree' */
581
  wp_localize_script( 'ot-admin-js', 'option_tree', $localized_array );
 
 
 
582
 
583
  }
584
 
@@ -668,7 +730,7 @@ if ( ! function_exists( 'ot_default_settings' ) ) {
668
  function ot_default_settings() {
669
  global $wpdb, $table_prefix;
670
 
671
- if ( ! get_option( 'option_tree_settings' ) ) {
672
 
673
  $section_count = 0;
674
  $settings_count = 0;
@@ -778,10 +840,10 @@ if ( ! function_exists( 'ot_default_settings' ) ) {
778
  }
779
 
780
  /* update the settings array */
781
- update_option( 'option_tree_settings', $settings );
782
 
783
  /* get option tree array */
784
- $options = get_option( 'option_tree' );
785
 
786
  /* validate options */
787
  if ( is_array( $options ) ) {
@@ -802,7 +864,7 @@ if ( ! function_exists( 'ot_default_settings' ) ) {
802
  do_action( 'ot_before_theme_options_save', $options );
803
 
804
  /* update the option tree array */
805
- update_option( 'option_tree', $options );
806
 
807
  }
808
 
@@ -825,7 +887,7 @@ if ( ! function_exists( 'ot_save_css' ) ) {
825
  function ot_save_css( $options ) {
826
 
827
  /* grab a copy of the settings */
828
- $settings = get_option( 'option_tree_settings' );
829
 
830
  /* has settings */
831
  if ( isset( $settings['settings'] ) ) {
@@ -960,7 +1022,7 @@ if ( ! function_exists( 'ot_import' ) ) {
960
  }
961
 
962
  /* update settings */
963
- update_option( 'option_tree_settings', $settings );
964
 
965
  /* set message */
966
  $message = 'success';
@@ -984,7 +1046,7 @@ if ( ! function_exists( 'ot_import' ) ) {
984
 
985
  /* is array: save & show success message */
986
  if ( is_array( $textarea ) ) {
987
- update_option( 'option_tree_settings', $textarea );
988
  $message = 'success';
989
  }
990
 
@@ -1004,7 +1066,7 @@ if ( ! function_exists( 'ot_import' ) ) {
1004
  $options = isset( $_POST['import_data'] ) ? unserialize( ot_decode( $_POST['import_data'] ) ) : '';
1005
 
1006
  /* get settings array */
1007
- $settings = get_option( 'option_tree_settings' );
1008
 
1009
  /* has options */
1010
  if ( is_array( $options ) ) {
@@ -1030,7 +1092,7 @@ if ( ! function_exists( 'ot_import' ) ) {
1030
  do_action( 'ot_before_theme_options_save', $options );
1031
 
1032
  /* update the option tree array */
1033
- update_option( 'option_tree', $options );
1034
 
1035
  $message = 'success';
1036
 
@@ -1052,7 +1114,7 @@ if ( ! function_exists( 'ot_import' ) ) {
1052
  $layouts = isset( $_POST['import_layouts'] ) ? unserialize( ot_decode( $_POST['import_layouts'] ) ) : '';
1053
 
1054
  /* get settings array */
1055
- $settings = get_option( 'option_tree_settings' );
1056
 
1057
  /* has layouts */
1058
  if ( is_array( $layouts ) ) {
@@ -1093,12 +1155,12 @@ if ( ! function_exists( 'ot_import' ) ) {
1093
  /* execute the action hook and pass the theme options to it */
1094
  do_action( 'ot_before_theme_options_save', $new_options );
1095
 
1096
- update_option( 'option_tree', $new_options );
1097
 
1098
  }
1099
 
1100
  /* update the option tree layouts array */
1101
- update_option( 'option_tree_layouts', $layouts );
1102
 
1103
  $message = 'success';
1104
 
@@ -1266,7 +1328,16 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1266
  $contextual_help = '';
1267
  $sections = '';
1268
  $settings = '';
1269
- $option_tree_settings = get_option( 'option_tree_settings', array() );
 
 
 
 
 
 
 
 
 
1270
 
1271
  header( "Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
1272
  header( "Pragma: no-cache ");
@@ -1280,13 +1351,13 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1280
  $help = '';
1281
  foreach( $option_tree_settings['contextual_help']['content'] as $value ) {
1282
  $_id = isset( $value['id'] ) ? $value['id'] : '';
1283
- $_title = isset( $value['title'] ) ? str_replace( "'", "\'", $value['title'] ) : '';
1284
- $_content = isset( $value['content'] ) ? html_entity_decode( str_replace( "'", "\'", $value['content'] ) ) : '';
1285
  $help.= "
1286
  array(
1287
  'id' => '$_id',
1288
- 'title' => '$_title',
1289
- 'content' => '$_content'
1290
  ),";
1291
  }
1292
  $help = substr_replace( $help, '' , -1 );
@@ -1298,7 +1369,7 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1298
  /* build contextual help sidebar */
1299
  if ( isset( $option_tree_settings['contextual_help']['sidebar'] ) ) {
1300
  $contextual_help.= "
1301
- 'sidebar' => '" . html_entity_decode( str_replace( "'", "\'", $option_tree_settings['contextual_help']['sidebar'] ) ) . "'";
1302
  }
1303
 
1304
  /* check that $contexual_help has a value and add to $build_settings */
@@ -1312,11 +1383,11 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1312
  if ( isset( $option_tree_settings['sections'] ) ) {
1313
  foreach( $option_tree_settings['sections'] as $value ) {
1314
  $_id = isset( $value['id'] ) ? $value['id'] : '';
1315
- $_title = isset( $value['title'] ) ? str_replace( "'", "\'", $value['title'] ) : '';
1316
  $sections.= "
1317
  array(
1318
  'id' => '$_id',
1319
- 'title' => '$_title'
1320
  ),";
1321
  }
1322
  $sections = substr_replace( $sections, '' , -1 );
@@ -1333,8 +1404,8 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1333
  if ( isset( $option_tree_settings['settings'] ) ) {
1334
  foreach( $option_tree_settings['settings'] as $value ) {
1335
  $_id = isset( $value['id'] ) ? $value['id'] : '';
1336
- $_label = isset( $value['label'] ) ? str_replace( "'", "\'", $value['label'] ) : '';
1337
- $_desc = isset( $value['desc'] ) ? str_replace( "'", "\'", $value['desc'] ) : '';
1338
  $_std = isset( $value['std'] ) ? str_replace( "'", "\'", $value['std'] ) : '';
1339
  $_type = isset( $value['type'] ) ? $value['type'] : '';
1340
  $_section = isset( $value['section'] ) ? $value['section'] : '';
@@ -1350,12 +1421,12 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1350
  if ( isset( $value['choices'] ) && ! empty( $value['choices'] ) ) {
1351
  foreach( $value['choices'] as $choice ) {
1352
  $_choice_value = isset( $choice['value'] ) ? str_replace( "'", "\'", $choice['value'] ) : '';
1353
- $_choice_label = isset( $choice['label'] ) ? str_replace( "'", "\'", $choice['label'] ) : '';
1354
  $_choice_src = isset( $choice['src'] ) ? str_replace( "'", "\'", $choice['src'] ) : '';
1355
  $choices.= "
1356
  array(
1357
  'value' => '$_choice_value',
1358
- 'label' => '$_choice_label',
1359
  'src' => '$_choice_src'
1360
  ),";
1361
  }
@@ -1380,8 +1451,8 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1380
  if ( isset( $value['settings'] ) && ! empty( $value['settings'] ) ) {
1381
  foreach( $value['settings'] as $setting ) {
1382
  $_setting_id = isset( $setting['id'] ) ? $setting['id'] : '';
1383
- $_setting_label = isset( $setting['label'] ) ? str_replace( "'", "\'", $setting['label'] ) : '';
1384
- $_setting_desc = isset( $setting['desc'] ) ? str_replace( "'", "\'", $setting['desc'] ) : '';
1385
  $_setting_std = isset( $setting['std'] ) ? $setting['std'] : '';
1386
  $_setting_type = isset( $setting['type'] ) ? $setting['type'] : '';
1387
  $_setting_rows = isset( $setting['rows'] ) ? $setting['rows'] : '';
@@ -1396,12 +1467,12 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1396
  if ( isset( $setting['choices'] ) && ! empty( $setting['choices'] ) ) {
1397
  foreach( $setting['choices'] as $setting_choice ) {
1398
  $_setting_choice_value = isset( $setting_choice['value'] ) ? $setting_choice['value'] : '';
1399
- $_setting_choice_label = isset( $setting_choice['label'] ) ? str_replace( "'", "\'", $setting_choice['label'] ) : '';
1400
  $_setting_choice_src = isset( $setting_choice['src'] ) ? str_replace( "'", "\'", $setting_choice['src'] ) : '';
1401
  $setting_choices.= "
1402
  array(
1403
  'value' => '$_setting_choice_value',
1404
- 'label' => '$_setting_choice_label',
1405
  'src' => '$_setting_choice_src'
1406
  ),";
1407
  }
@@ -1425,8 +1496,8 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1425
  $setting_settings.= "
1426
  array(
1427
  'id' => '$_setting_id',
1428
- 'label' => '$_setting_label',
1429
- 'desc' => '$_setting_desc',
1430
  'std' => $setting_std,
1431
  'type' => '$_setting_type',
1432
  'rows' => '$_setting_rows',
@@ -1447,8 +1518,8 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1447
  $settings.= "
1448
  array(
1449
  'id' => '$_id',
1450
- 'label' => '$_label',
1451
- 'desc' => '$_desc',
1452
  'std' => $std,
1453
  'type' => '$_type',
1454
  'section' => '$_section',
@@ -1471,6 +1542,8 @@ if ( ! function_exists( 'ot_export_php_settings_array' ) ) {
1471
  )";
1472
  }
1473
 
 
 
1474
  $content.= "<?php
1475
  /**
1476
  * Initialize the custom theme options.
@@ -1484,7 +1557,7 @@ function custom_theme_options() {
1484
  /**
1485
  * Get a copy of the saved settings array.
1486
  */
1487
- \$saved_settings = get_option( 'option_tree_settings', array() );
1488
 
1489
  /**
1490
  * Custom settings array that
26
  function ot_register_theme_options_page() {
27
 
28
  /* get the settings array */
29
+ $get_settings = get_option( ot_settings_id() );
30
 
31
  /* sections array */
32
  $sections = isset( $get_settings['sections'] ) ? $get_settings['sections'] : array();
42
 
43
  ot_register_settings( array(
44
  array(
45
+ 'id' => ot_options_id(),
46
  'pages' => array(
47
  array(
48
  'id' => 'ot_theme_options',
67
  );
68
 
69
  // Filters the options.php to add the minimum user capabilities.
70
+ add_filter( 'option_page_capability_' . ot_options_id(), create_function( '$caps', "return '$caps';" ), 999 );
71
 
72
  }
73
 
371
  // Register the pages.
372
  ot_register_settings( array(
373
  array(
374
+ 'id' => ot_settings_id(),
375
  'pages' => $ot_register_pages_array
376
  )
377
  )
400
  if ( apply_filters( 'ot_theme_options_menu_slug', 'ot-theme-options' ) == $page && $updated ) {
401
 
402
  /* grab a copy of the theme options */
403
+ $options = get_option( ot_options_id() );
404
 
405
  /* execute the action hook and pass the theme options to it */
406
  do_action( 'ot_after_theme_options_save', $options );
466
 
467
  $input['background-image'] = ot_validate_setting( $input['background-image'], 'upload', $field_id );
468
 
469
+ // Loop over array and check for values
470
+ foreach( $input as $key => $value ) {
471
+ if ( ! empty( $value ) ) {
472
+ $has_value = true;
473
+ }
474
+ }
475
+
476
+ // No value; set to empty
477
+ if ( ! isset( $has_value ) ) {
478
+ $input = '';
479
+ }
480
+
481
  } else if ( 'colorpicker' == $type ) {
482
 
483
  /* return empty & set error */
501
 
502
  $input[0] = sanitize_text_field( $input[0] );
503
 
504
+ // No value; set to empty
505
+ if ( empty( $input[0] ) && empty( $input[1] ) ) {
506
+ $input = '';
507
+ }
508
+
509
  } else if ( 'typography' == $type && isset( $input['font-color'] ) ) {
510
 
511
  $input['font-color'] = ot_validate_setting( $input['font-color'], 'colorpicker', $field_id );
512
+
513
+ // Loop over array and check for values
514
+ foreach( $input as $key => $value ) {
515
+ if ( ! empty( $value ) ) {
516
+ $has_value = true;
517
+ }
518
+ }
519
+
520
+ // No value; set to empty
521
+ if ( ! isset( $has_value ) ) {
522
+ $input = '';
523
+ }
524
+
525
  } else if ( 'upload' == $type ) {
526
 
527
  $input = sanitize_text_field( $input );
528
+
529
+ } else if ( 'gallery' == $type ) {
530
+
531
+ $input = trim( $input );
532
+
533
  }
534
 
535
  $input = apply_filters( 'ot_after_validate_setting', $input, $type, $field_id );
539
  }
540
 
541
  }
542
+
543
  /**
544
  * Setup the default admin styles
545
  *
551
  if ( ! function_exists( 'ot_admin_styles' ) ) {
552
 
553
  function ot_admin_styles() {
554
+ global $wp_styles;
555
+
556
+ /* execute styles before actions */
557
+ do_action( 'ot_admin_styles_before' );
558
 
559
  /* load WP colorpicker */
560
  wp_enqueue_style( 'wp-color-picker' );
561
 
562
+ /* load admin styles */
563
+ wp_enqueue_style( 'ot-admin-css', OT_URL . 'assets/css/ot-admin.css', false, OT_VERSION );
564
+
565
+ /* load the RTL stylesheet */
566
+ $wp_styles->add_data( 'ot-admin-css','rtl', true );
567
+
568
+ /* execute styles after actions */
569
+ do_action( 'ot_admin_styles_after' );
570
+
571
  }
572
 
573
  }
587
  if ( ! function_exists( 'ot_admin_scripts' ) ) {
588
 
589
  function ot_admin_scripts() {
590
+
591
+ /* execute scripts before actions */
592
+ do_action( 'ot_admin_scripts_before' );
593
+
594
  if ( function_exists( 'wp_enqueue_media' ) ) {
595
  /* WP 3.5 Media Uploader */
596
  wp_enqueue_media();
601
 
602
  /* load jQuery-ui slider */
603
  wp_enqueue_script( 'jquery-ui-slider' );
604
+
605
+ /* load jQuery-ui datepicker */
606
+ wp_enqueue_script( 'jquery-ui-datepicker' );
607
 
608
  /* load WP colorpicker */
609
  wp_enqueue_script( 'wp-color-picker' );
610
 
611
+ /* Load Ace Editor for CSS Editing */
612
+ wp_enqueue_script( 'ace-editor', OT_URL . 'assets/js/vendor/ace/ace.js', null, OT_VERSION );
613
+
614
+ /* load jQuery UI timepicker addon */
615
+ wp_enqueue_script( 'jquery-ui-timepicker', OT_URL . 'assets/js/vendor/jquery/jquery-ui-timepicker.js', array( 'jquery', 'jquery-ui-slider', 'jquery-ui-datepicker' ), '1.4.3' );
616
+
617
  /* load all the required scripts */
618
+ wp_enqueue_script( 'ot-admin-js', OT_URL . 'assets/js/ot-admin.js', array( 'jquery', 'jquery-ui-tabs', 'jquery-ui-sortable', 'jquery-ui-slider', 'wp-color-picker', 'ace-editor', 'jquery-ui-datepicker', 'jquery-ui-timepicker' ), OT_VERSION );
619
 
620
  /* create localized JS array */
621
  $localized_array = array(
622
  'ajax' => admin_url( 'admin-ajax.php' ),
623
+ 'upload_text' => apply_filters( 'ot_upload_text', __( 'Send to OptionTree', 'option-tree' ) ),
624
  'remove_media_text' => __( 'Remove Media', 'option-tree' ),
625
  'reset_agree' => __( 'Are you sure you want to reset back to the defaults?', 'option-tree' ),
626
  'remove_no' => __( 'You can\'t remove this! But you can edit the values.', 'option-tree' ),
630
  'delete' => __( 'Delete Gallery', 'option-tree' ),
631
  'edit' => __( 'Edit Gallery', 'option-tree' ),
632
  'create' => __( 'Create Gallery', 'option-tree' ),
633
+ 'confirm' => __( 'Are you sure you want to delete this Gallery?', 'option-tree' ),
634
+ 'date_current' => __( 'Today', 'option-tree' ),
635
+ 'date_time_current' => __( 'Now', 'option-tree' ),
636
+ 'date_close' => __( 'Close', 'option-tree' )
637
  );
638
 
639
  /* localized script attached to 'option_tree' */
640
  wp_localize_script( 'ot-admin-js', 'option_tree', $localized_array );
641
+
642
+ /* execute scripts after actions */
643
+ do_action( 'ot_admin_scripts_after' );
644
 
645
  }
646
 
730
  function ot_default_settings() {
731
  global $wpdb, $table_prefix;
732
 
733
+ if ( ! get_option( ot_settings_id() ) ) {
734
 
735
  $section_count = 0;
736
  $settings_count = 0;
840
  }
841
 
842
  /* update the settings array */
843
+ update_option( ot_settings_id(), $settings );
844
 
845
  /* get option tree array */
846
+ $options = get_option( ot_options_id() );
847
 
848
  /* validate options */
849
  if ( is_array( $options ) ) {
864
  do_action( 'ot_before_theme_options_save', $options );
865
 
866
  /* update the option tree array */
867
+ update_option( ot_options_id(), $options );
868
 
869
  }
870
 
887
  function ot_save_css( $options ) {
888
 
889
  /* grab a copy of the settings */
890
+ $settings = get_option( ot_settings_id() );
891
 
892
  /* has settings */
893
  if ( isset( $settings['settings'] ) ) {
1022
  }
1023
 
1024
  /* update settings */
1025
+ update_option( ot_settings_id(), $settings );
1026
 
1027
  /* set message */
1028
  $message = 'success';
1046
 
1047
  /* is array: save & show success message */
1048
  if ( is_array( $textarea ) ) {
1049
+ update_option( ot_settings_id(), $textarea );
1050
  $message = 'success';
1051
  }
1052
 
1066
  $options = isset( $_POST['import_data'] ) ? unserialize( ot_decode( $_POST['import_data'] ) ) : '';
1067
 
1068
  /* get settings array */
1069
+ $settings = get_option( ot_settings_id() );
1070
 
1071
  /* has options */
1072
  if ( is_array( $options ) ) {
1092
  do_action( 'ot_before_theme_options_save', $options );
1093
 
1094
  /* update the option tree array */
1095
+ update_option( ot_options_id(), $options );
1096
 
1097
  $message = 'success';
1098
 
1114
  $layouts = isset( $_POST['import_layouts'] ) ? unserialize( ot_decode( $_POST['import_layouts'] ) ) : '';
1115
 
1116
  /* get settings array */
1117
+ $settings = get_option( ot_settings_id() );
1118
 
1119
  /* has layouts */
1120
  if ( is_array( $layouts ) ) {
1155
  /* execute the action hook and pass the theme options to it */
1156
  do_action( 'ot_before_theme_options_save', $new_options );
1157
 
1158
+ update_option( ot_options_id(), $new_options );
1159
 
1160
  }
1161
 
1162
  /* update the option tree layouts array */
1163
+ update_option( ot_layouts_id(), $layouts );
1164
 
1165
  $message = 'success';
1166
 
1328
  $contextual_help = '';
1329
  $sections = '';
1330
  $settings = '';
1331
+ $option_tree_settings = get_option( ot_settings_id(), array() );
1332
+
1333
+ // Domain string helper
1334
+ function ot_I18n_string( $string ) {
1335
+ if ( ! empty( $string ) && isset( $_POST['domain'] ) && ! empty( $_POST['domain'] ) ) {
1336
+ $domain = str_replace( ' ', '-', trim( $_POST['domain'] ) );
1337
+ return "__( '$string', '$domain' )";
1338
+ }
1339
+ return "'$string'";
1340
+ }
1341
 
1342
  header( "Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
1343
  header( "Pragma: no-cache ");
1351
  $help = '';
1352
  foreach( $option_tree_settings['contextual_help']['content'] as $value ) {
1353
  $_id = isset( $value['id'] ) ? $value['id'] : '';
1354
+ $_title = ot_I18n_string( isset( $value['title'] ) ? str_replace( "'", "\'", $value['title'] ) : '' );
1355
+ $_content = ot_I18n_string( isset( $value['content'] ) ? html_entity_decode( str_replace( "'", "\'", $value['content'] ) ) : '' );
1356
  $help.= "
1357
  array(
1358
  'id' => '$_id',
1359
+ 'title' => $_title,
1360
+ 'content' => $_content
1361
  ),";
1362
  }
1363
  $help = substr_replace( $help, '' , -1 );
1369
  /* build contextual help sidebar */
1370
  if ( isset( $option_tree_settings['contextual_help']['sidebar'] ) ) {
1371
  $contextual_help.= "
1372
+ 'sidebar' => " . ot_I18n_string( html_entity_decode( str_replace( "'", "\'", $option_tree_settings['contextual_help']['sidebar'] ) ) );
1373
  }
1374
 
1375
  /* check that $contexual_help has a value and add to $build_settings */
1383
  if ( isset( $option_tree_settings['sections'] ) ) {
1384
  foreach( $option_tree_settings['sections'] as $value ) {
1385
  $_id = isset( $value['id'] ) ? $value['id'] : '';
1386
+ $_title = ot_I18n_string( isset( $value['title'] ) ? str_replace( "'", "\'", $value['title'] ) : '' );
1387
  $sections.= "
1388
  array(
1389
  'id' => '$_id',
1390
+ 'title' => $_title
1391
  ),";
1392
  }
1393
  $sections = substr_replace( $sections, '' , -1 );
1404
  if ( isset( $option_tree_settings['settings'] ) ) {
1405
  foreach( $option_tree_settings['settings'] as $value ) {
1406
  $_id = isset( $value['id'] ) ? $value['id'] : '';
1407
+ $_label = ot_I18n_string( isset( $value['label'] ) ? str_replace( "'", "\'", $value['label'] ) : '' );
1408
+ $_desc = ot_I18n_string( isset( $value['desc'] ) ? str_replace( "'", "\'", $value['desc'] ) : '' );
1409
  $_std = isset( $value['std'] ) ? str_replace( "'", "\'", $value['std'] ) : '';
1410
  $_type = isset( $value['type'] ) ? $value['type'] : '';
1411
  $_section = isset( $value['section'] ) ? $value['section'] : '';
1421
  if ( isset( $value['choices'] ) && ! empty( $value['choices'] ) ) {
1422
  foreach( $value['choices'] as $choice ) {
1423
  $_choice_value = isset( $choice['value'] ) ? str_replace( "'", "\'", $choice['value'] ) : '';
1424
+ $_choice_label = ot_I18n_string( isset( $choice['label'] ) ? str_replace( "'", "\'", $choice['label'] ) : '' );
1425
  $_choice_src = isset( $choice['src'] ) ? str_replace( "'", "\'", $choice['src'] ) : '';
1426
  $choices.= "
1427
  array(
1428
  'value' => '$_choice_value',
1429
+ 'label' => $_choice_label,
1430
  'src' => '$_choice_src'
1431
  ),";
1432
  }
1451
  if ( isset( $value['settings'] ) && ! empty( $value['settings'] ) ) {
1452
  foreach( $value['settings'] as $setting ) {
1453
  $_setting_id = isset( $setting['id'] ) ? $setting['id'] : '';
1454
+ $_setting_label = ot_I18n_string( isset( $setting['label'] ) ? str_replace( "'", "\'", $setting['label'] ) : '' );
1455
+ $_setting_desc = ot_I18n_string( isset( $setting['desc'] ) ? str_replace( "'", "\'", $setting['desc'] ) : '' );
1456
  $_setting_std = isset( $setting['std'] ) ? $setting['std'] : '';
1457
  $_setting_type = isset( $setting['type'] ) ? $setting['type'] : '';
1458
  $_setting_rows = isset( $setting['rows'] ) ? $setting['rows'] : '';
1467
  if ( isset( $setting['choices'] ) && ! empty( $setting['choices'] ) ) {
1468
  foreach( $setting['choices'] as $setting_choice ) {
1469
  $_setting_choice_value = isset( $setting_choice['value'] ) ? $setting_choice['value'] : '';
1470
+ $_setting_choice_label = ot_I18n_string( isset( $setting_choice['label'] ) ? str_replace( "'", "\'", $setting_choice['label'] ) : '' );
1471
  $_setting_choice_src = isset( $setting_choice['src'] ) ? str_replace( "'", "\'", $setting_choice['src'] ) : '';
1472
  $setting_choices.= "
1473
  array(
1474
  'value' => '$_setting_choice_value',
1475
+ 'label' => $_setting_choice_label,
1476
  'src' => '$_setting_choice_src'
1477
  ),";
1478
  }
1496
  $setting_settings.= "
1497
  array(
1498
  'id' => '$_setting_id',
1499
+ 'label' => $_setting_label,
1500
+ 'desc' => $_setting_desc,
1501
  'std' => $setting_std,
1502
  'type' => '$_setting_type',
1503
  'rows' => '$_setting_rows',
1518
  $settings.= "
1519
  array(
1520
  'id' => '$_id',
1521
+ 'label' => $_label,
1522
+ 'desc' => $_desc,
1523
  'std' => $std,
1524
  'type' => '$_type',
1525
  'section' => '$_section',
1542
  )";
1543
  }
1544
 
1545
+ $ot_settings_id = ot_settings_id();
1546
+
1547
  $content.= "<?php
1548
  /**
1549
  * Initialize the custom theme options.
1557
  /**
1558
  * Get a copy of the saved settings array.
1559
  */
1560
+ \$saved_settings = get_option( '$ot_settings_id', array() );
1561
 
1562
  /**
1563
  * Custom settings array that