From 144d5c891c833a9100f47bf7c664e0e36a286de5 Mon Sep 17 00:00:00 2001 From: dindanausa Date: Tue, 1 Jul 2025 12:11:14 +0700 Subject: [PATCH] first commit --- admin/assets/ckeditor/CHANGES.md | 1924 + admin/assets/ckeditor/LICENSE.md | 1421 + admin/assets/ckeditor/README.md | 39 + admin/assets/ckeditor/adapters/jquery.js | 10 + admin/assets/ckeditor/build-config.js | 170 + admin/assets/ckeditor/ckeditor.js | 1335 + admin/assets/ckeditor/config.js | 38 + admin/assets/ckeditor/contents.css | 208 + admin/assets/ckeditor/lang/af.js | 5 + admin/assets/ckeditor/lang/ar.js | 5 + admin/assets/ckeditor/lang/az.js | 5 + admin/assets/ckeditor/lang/bg.js | 5 + admin/assets/ckeditor/lang/bn.js | 5 + admin/assets/ckeditor/lang/bs.js | 5 + admin/assets/ckeditor/lang/ca.js | 5 + admin/assets/ckeditor/lang/cs.js | 5 + admin/assets/ckeditor/lang/cy.js | 5 + admin/assets/ckeditor/lang/da.js | 5 + admin/assets/ckeditor/lang/de-ch.js | 5 + admin/assets/ckeditor/lang/de.js | 5 + admin/assets/ckeditor/lang/el.js | 5 + admin/assets/ckeditor/lang/en-au.js | 5 + admin/assets/ckeditor/lang/en-ca.js | 5 + admin/assets/ckeditor/lang/en-gb.js | 5 + admin/assets/ckeditor/lang/en.js | 5 + admin/assets/ckeditor/lang/eo.js | 5 + admin/assets/ckeditor/lang/es-mx.js | 5 + admin/assets/ckeditor/lang/es.js | 5 + admin/assets/ckeditor/lang/et.js | 5 + admin/assets/ckeditor/lang/eu.js | 5 + admin/assets/ckeditor/lang/fa.js | 5 + admin/assets/ckeditor/lang/fi.js | 5 + admin/assets/ckeditor/lang/fo.js | 5 + admin/assets/ckeditor/lang/fr-ca.js | 5 + admin/assets/ckeditor/lang/fr.js | 5 + admin/assets/ckeditor/lang/gl.js | 5 + admin/assets/ckeditor/lang/gu.js | 5 + admin/assets/ckeditor/lang/he.js | 5 + admin/assets/ckeditor/lang/hi.js | 5 + admin/assets/ckeditor/lang/hr.js | 5 + admin/assets/ckeditor/lang/hu.js | 5 + admin/assets/ckeditor/lang/id.js | 5 + admin/assets/ckeditor/lang/is.js | 5 + admin/assets/ckeditor/lang/it.js | 5 + admin/assets/ckeditor/lang/ja.js | 5 + admin/assets/ckeditor/lang/ka.js | 5 + admin/assets/ckeditor/lang/km.js | 5 + admin/assets/ckeditor/lang/ko.js | 5 + admin/assets/ckeditor/lang/ku.js | 5 + admin/assets/ckeditor/lang/lt.js | 5 + admin/assets/ckeditor/lang/lv.js | 5 + admin/assets/ckeditor/lang/mk.js | 5 + admin/assets/ckeditor/lang/mn.js | 5 + admin/assets/ckeditor/lang/ms.js | 5 + admin/assets/ckeditor/lang/nb.js | 5 + admin/assets/ckeditor/lang/nl.js | 5 + admin/assets/ckeditor/lang/no.js | 5 + admin/assets/ckeditor/lang/oc.js | 5 + admin/assets/ckeditor/lang/pl.js | 5 + admin/assets/ckeditor/lang/pt-br.js | 5 + admin/assets/ckeditor/lang/pt.js | 5 + admin/assets/ckeditor/lang/ro.js | 5 + admin/assets/ckeditor/lang/ru.js | 5 + admin/assets/ckeditor/lang/si.js | 5 + admin/assets/ckeditor/lang/sk.js | 5 + admin/assets/ckeditor/lang/sl.js | 5 + admin/assets/ckeditor/lang/sq.js | 5 + admin/assets/ckeditor/lang/sr-latn.js | 5 + admin/assets/ckeditor/lang/sr.js | 5 + admin/assets/ckeditor/lang/sv.js | 5 + admin/assets/ckeditor/lang/th.js | 5 + admin/assets/ckeditor/lang/tr.js | 5 + admin/assets/ckeditor/lang/tt.js | 5 + admin/assets/ckeditor/lang/ug.js | 5 + admin/assets/ckeditor/lang/uk.js | 5 + admin/assets/ckeditor/lang/vi.js | 5 + admin/assets/ckeditor/lang/zh-cn.js | 5 + admin/assets/ckeditor/lang/zh.js | 5 + .../plugins/a11yhelp/dialogs/a11yhelp.js | 10 + .../dialogs/lang/_translationstatus.txt | 25 + .../plugins/a11yhelp/dialogs/lang/af.js | 11 + .../plugins/a11yhelp/dialogs/lang/ar.js | 11 + .../plugins/a11yhelp/dialogs/lang/az.js | 11 + .../plugins/a11yhelp/dialogs/lang/bg.js | 11 + .../plugins/a11yhelp/dialogs/lang/ca.js | 13 + .../plugins/a11yhelp/dialogs/lang/cs.js | 12 + .../plugins/a11yhelp/dialogs/lang/cy.js | 11 + .../plugins/a11yhelp/dialogs/lang/da.js | 11 + .../plugins/a11yhelp/dialogs/lang/de-ch.js | 12 + .../plugins/a11yhelp/dialogs/lang/de.js | 13 + .../plugins/a11yhelp/dialogs/lang/el.js | 13 + .../plugins/a11yhelp/dialogs/lang/en-au.js | 11 + .../plugins/a11yhelp/dialogs/lang/en-gb.js | 11 + .../plugins/a11yhelp/dialogs/lang/en.js | 11 + .../plugins/a11yhelp/dialogs/lang/eo.js | 13 + .../plugins/a11yhelp/dialogs/lang/es-mx.js | 13 + .../plugins/a11yhelp/dialogs/lang/es.js | 13 + .../plugins/a11yhelp/dialogs/lang/et.js | 11 + .../plugins/a11yhelp/dialogs/lang/eu.js | 12 + .../plugins/a11yhelp/dialogs/lang/fa.js | 11 + .../plugins/a11yhelp/dialogs/lang/fi.js | 11 + .../plugins/a11yhelp/dialogs/lang/fo.js | 11 + .../plugins/a11yhelp/dialogs/lang/fr-ca.js | 11 + .../plugins/a11yhelp/dialogs/lang/fr.js | 13 + .../plugins/a11yhelp/dialogs/lang/gl.js | 12 + .../plugins/a11yhelp/dialogs/lang/gu.js | 11 + .../plugins/a11yhelp/dialogs/lang/he.js | 11 + .../plugins/a11yhelp/dialogs/lang/hi.js | 11 + .../plugins/a11yhelp/dialogs/lang/hr.js | 11 + .../plugins/a11yhelp/dialogs/lang/hu.js | 12 + .../plugins/a11yhelp/dialogs/lang/id.js | 11 + .../plugins/a11yhelp/dialogs/lang/it.js | 13 + .../plugins/a11yhelp/dialogs/lang/ja.js | 9 + .../plugins/a11yhelp/dialogs/lang/km.js | 11 + .../plugins/a11yhelp/dialogs/lang/ko.js | 10 + .../plugins/a11yhelp/dialogs/lang/ku.js | 11 + .../plugins/a11yhelp/dialogs/lang/lt.js | 11 + .../plugins/a11yhelp/dialogs/lang/lv.js | 12 + .../plugins/a11yhelp/dialogs/lang/mk.js | 11 + .../plugins/a11yhelp/dialogs/lang/mn.js | 11 + .../plugins/a11yhelp/dialogs/lang/nb.js | 12 + .../plugins/a11yhelp/dialogs/lang/nl.js | 12 + .../plugins/a11yhelp/dialogs/lang/no.js | 11 + .../plugins/a11yhelp/dialogs/lang/oc.js | 12 + .../plugins/a11yhelp/dialogs/lang/pl.js | 13 + .../plugins/a11yhelp/dialogs/lang/pt-br.js | 13 + .../plugins/a11yhelp/dialogs/lang/pt.js | 12 + .../plugins/a11yhelp/dialogs/lang/ro.js | 12 + .../plugins/a11yhelp/dialogs/lang/ru.js | 11 + .../plugins/a11yhelp/dialogs/lang/si.js | 10 + .../plugins/a11yhelp/dialogs/lang/sk.js | 11 + .../plugins/a11yhelp/dialogs/lang/sl.js | 11 + .../plugins/a11yhelp/dialogs/lang/sq.js | 12 + .../plugins/a11yhelp/dialogs/lang/sr-latn.js | 12 + .../plugins/a11yhelp/dialogs/lang/sr.js | 12 + .../plugins/a11yhelp/dialogs/lang/sv.js | 11 + .../plugins/a11yhelp/dialogs/lang/th.js | 11 + .../plugins/a11yhelp/dialogs/lang/tr.js | 12 + .../plugins/a11yhelp/dialogs/lang/tt.js | 11 + .../plugins/a11yhelp/dialogs/lang/ug.js | 12 + .../plugins/a11yhelp/dialogs/lang/uk.js | 12 + .../plugins/a11yhelp/dialogs/lang/vi.js | 11 + .../plugins/a11yhelp/dialogs/lang/zh-cn.js | 9 + .../plugins/a11yhelp/dialogs/lang/zh.js | 9 + .../ckeditor/plugins/about/dialogs/about.js | 8 + .../about/dialogs/hidpi/logo_ckeditor.png | Bin 0 -> 12236 bytes .../plugins/about/dialogs/logo_ckeditor.png | Bin 0 -> 5650 bytes .../balloonpanel/skins/kama/balloonpanel.css | 220 + .../skins/moono-lisa/balloonpanel.css | 223 + .../skins/moono-lisa/images/close.png | Bin 0 -> 615 bytes .../skins/moono-lisa/images/hidpi/close.png | Bin 0 -> 1259 bytes .../balloonpanel/skins/moono/balloonpanel.css | 237 + .../balloonpanel/skins/moono/images/close.png | Bin 0 -> 824 bytes .../skins/moono/images/hidpi/close.png | Bin 0 -> 1271 bytes .../plugins/balloontoolbar/skins/default.css | 95 + .../skins/kama/balloontoolbar.css | 30 + .../skins/moono-lisa/balloontoolbar.css | 44 + .../skins/moono/balloontoolbar.css | 34 + .../plugins/clipboard/dialogs/paste.js | 11 + .../plugins/dialog/dialogDefinition.js | 4 + .../ckeditor/plugins/dialog/styles/dialog.css | 18 + .../plugins/easyimage/dialogs/easyimagealt.js | 6 + .../plugins/easyimage/styles/easyimage.css | 118 + admin/assets/ckeditor/plugins/icons.png | Bin 0 -> 6590 bytes admin/assets/ckeditor/plugins/icons_hidpi.png | Bin 0 -> 22271 bytes .../ckeditor/plugins/image/dialogs/image.js | 44 + .../ckeditor/plugins/image/images/noimage.png | Bin 0 -> 1610 bytes .../plugins/imagebase/styles/imagebase.css | 9 + .../ckeditor/plugins/link/dialogs/anchor.js | 8 + .../ckeditor/plugins/link/dialogs/link.js | 30 + .../ckeditor/plugins/link/images/anchor.png | Bin 0 -> 752 bytes .../plugins/link/images/hidpi/anchor.png | Bin 0 -> 1109 bytes .../magicline/images/hidpi/icon-rtl.png | Bin 0 -> 176 bytes .../plugins/magicline/images/hidpi/icon.png | Bin 0 -> 199 bytes .../plugins/magicline/images/icon-rtl.png | Bin 0 -> 138 bytes .../plugins/magicline/images/icon.png | Bin 0 -> 133 bytes .../plugins/pastefromgdocs/filter/default.js | 8 + .../plugins/pastefromword/filter/default.js | 43 + .../plugins/pastetools/filter/common.js | 22 + .../plugins/pastetools/filter/image.js | 6 + .../ckeditor/plugins/scayt/CHANGELOG.md | 4 + .../assets/ckeditor/plugins/scayt/LICENSE.md | 28 + admin/assets/ckeditor/plugins/scayt/README.md | 81 + .../ckeditor/plugins/scayt/dialogs/dialog.css | 23 + .../ckeditor/plugins/scayt/dialogs/options.js | 32 + .../plugins/scayt/dialogs/toolbar.css | 71 + .../plugins/scayt/skins/moono-lisa/scayt.css | 25 + .../dialogs/lang/_translationstatus.txt | 20 + .../plugins/specialchar/dialogs/lang/af.js | 13 + .../plugins/specialchar/dialogs/lang/ar.js | 13 + .../plugins/specialchar/dialogs/lang/az.js | 10 + .../plugins/specialchar/dialogs/lang/bg.js | 13 + .../plugins/specialchar/dialogs/lang/ca.js | 14 + .../plugins/specialchar/dialogs/lang/cs.js | 13 + .../plugins/specialchar/dialogs/lang/cy.js | 14 + .../plugins/specialchar/dialogs/lang/da.js | 11 + .../plugins/specialchar/dialogs/lang/de-ch.js | 13 + .../plugins/specialchar/dialogs/lang/de.js | 13 + .../plugins/specialchar/dialogs/lang/el.js | 13 + .../plugins/specialchar/dialogs/lang/en-au.js | 13 + .../plugins/specialchar/dialogs/lang/en-ca.js | 13 + .../plugins/specialchar/dialogs/lang/en-gb.js | 13 + .../plugins/specialchar/dialogs/lang/en.js | 13 + .../plugins/specialchar/dialogs/lang/eo.js | 12 + .../plugins/specialchar/dialogs/lang/es-mx.js | 13 + .../plugins/specialchar/dialogs/lang/es.js | 13 + .../plugins/specialchar/dialogs/lang/et.js | 11 + .../plugins/specialchar/dialogs/lang/eu.js | 13 + .../plugins/specialchar/dialogs/lang/fa.js | 12 + .../plugins/specialchar/dialogs/lang/fi.js | 13 + .../plugins/specialchar/dialogs/lang/fr-ca.js | 10 + .../plugins/specialchar/dialogs/lang/fr.js | 12 + .../plugins/specialchar/dialogs/lang/gl.js | 13 + .../plugins/specialchar/dialogs/lang/he.js | 12 + .../plugins/specialchar/dialogs/lang/hr.js | 13 + .../plugins/specialchar/dialogs/lang/hu.js | 12 + .../plugins/specialchar/dialogs/lang/id.js | 13 + .../plugins/specialchar/dialogs/lang/it.js | 14 + .../plugins/specialchar/dialogs/lang/ja.js | 9 + .../plugins/specialchar/dialogs/lang/km.js | 13 + .../plugins/specialchar/dialogs/lang/ko.js | 10 + .../plugins/specialchar/dialogs/lang/ku.js | 13 + .../plugins/specialchar/dialogs/lang/lt.js | 13 + .../plugins/specialchar/dialogs/lang/lv.js | 13 + .../plugins/specialchar/dialogs/lang/nb.js | 11 + .../plugins/specialchar/dialogs/lang/nl.js | 13 + .../plugins/specialchar/dialogs/lang/no.js | 11 + .../plugins/specialchar/dialogs/lang/oc.js | 12 + .../plugins/specialchar/dialogs/lang/pl.js | 12 + .../plugins/specialchar/dialogs/lang/pt-br.js | 11 + .../plugins/specialchar/dialogs/lang/pt.js | 13 + .../plugins/specialchar/dialogs/lang/ro.js | 13 + .../plugins/specialchar/dialogs/lang/ru.js | 13 + .../plugins/specialchar/dialogs/lang/si.js | 13 + .../plugins/specialchar/dialogs/lang/sk.js | 13 + .../plugins/specialchar/dialogs/lang/sl.js | 12 + .../plugins/specialchar/dialogs/lang/sq.js | 13 + .../specialchar/dialogs/lang/sr-latn.js | 13 + .../plugins/specialchar/dialogs/lang/sr.js | 13 + .../plugins/specialchar/dialogs/lang/sv.js | 11 + .../plugins/specialchar/dialogs/lang/th.js | 13 + .../plugins/specialchar/dialogs/lang/tr.js | 12 + .../plugins/specialchar/dialogs/lang/tt.js | 13 + .../plugins/specialchar/dialogs/lang/ug.js | 13 + .../plugins/specialchar/dialogs/lang/uk.js | 12 + .../plugins/specialchar/dialogs/lang/vi.js | 14 + .../plugins/specialchar/dialogs/lang/zh-cn.js | 9 + .../plugins/specialchar/dialogs/lang/zh.js | 9 + .../specialchar/dialogs/specialchar.js | 14 + .../ckeditor/plugins/table/dialogs/table.js | 22 + .../tableselection/styles/tableselection.css | 36 + .../plugins/tabletools/dialogs/tableCell.js | 18 + .../ckeditor/plugins/widget/images/handle.png | Bin 0 -> 220 bytes admin/assets/ckeditor/plugins/wsc/LICENSE.md | 28 + admin/assets/ckeditor/plugins/wsc/README.md | 80 + .../ckeditor/plugins/wsc/dialogs/ciframe.html | 66 + .../plugins/wsc/dialogs/tmpFrameset.html | 52 + .../ckeditor/plugins/wsc/dialogs/wsc.css | 82 + .../ckeditor/plugins/wsc/dialogs/wsc.js | 91 + .../ckeditor/plugins/wsc/dialogs/wsc_ie.js | 11 + .../plugins/wsc/skins/moono-lisa/wsc.css | 43 + admin/assets/ckeditor/samples/css/samples.css | 1637 + .../ckeditor/samples/img/github-top.png | Bin 0 -> 383 bytes .../assets/ckeditor/samples/img/header-bg.png | Bin 0 -> 13086 bytes .../ckeditor/samples/img/header-separator.png | Bin 0 -> 123 bytes admin/assets/ckeditor/samples/img/logo.png | Bin 0 -> 5634 bytes admin/assets/ckeditor/samples/img/logo.svg | 13 + .../ckeditor/samples/img/navigation-tip.png | Bin 0 -> 12029 bytes admin/assets/ckeditor/samples/index.html | 130 + admin/assets/ckeditor/samples/js/sample.js | 53 + admin/assets/ckeditor/samples/js/sf.js | 17 + admin/assets/ckeditor/samples/old/ajax.html | 86 + admin/assets/ckeditor/samples/old/api.html | 211 + .../assets/ckeditor/samples/old/appendto.html | 60 + .../samples/old/assets/inlineall/logo.png | Bin 0 -> 4283 bytes .../old/assets/outputxhtml/outputxhtml.css | 204 + .../samples/old/assets/posteddata.php | 60 + .../ckeditor/samples/old/assets/sample.jpg | Bin 0 -> 14449 bytes .../old/assets/uilanguages/languages.js | 7 + .../ckeditor/samples/old/datafiltering.html | 509 + .../samples/old/dialog/assets/my_dialog.js | 48 + .../ckeditor/samples/old/dialog/dialog.html | 191 + .../ckeditor/samples/old/divreplace.html | 145 + .../samples/old/easyimage/easyimage.html | 103 + .../samples/old/enterkey/enterkey.html | 107 + .../assets/outputforflash/outputforflash.fla | Bin 0 -> 85504 bytes .../assets/outputforflash/outputforflash.swf | Bin 0 -> 15571 bytes .../assets/outputforflash/swfobject.js | 19 + .../old/htmlwriter/outputforflash.html | 284 + .../samples/old/htmlwriter/outputhtml.html | 225 + admin/assets/ckeditor/samples/old/index.html | 132 + .../ckeditor/samples/old/inlineall.html | 315 + .../ckeditor/samples/old/inlinebycode.html | 125 + .../ckeditor/samples/old/inlinetextarea.html | 114 + admin/assets/ckeditor/samples/old/jquery.html | 104 + .../samples/old/magicline/magicline.html | 210 + .../assets/ckeditor/samples/old/readonly.html | 77 + .../ckeditor/samples/old/replacebyclass.html | 61 + .../ckeditor/samples/old/replacebycode.html | 60 + admin/assets/ckeditor/samples/old/sample.css | 357 + admin/assets/ckeditor/samples/old/sample.js | 50 + .../samples/old/sample_posteddata.php | 16 + .../assets/ckeditor/samples/old/tabindex.html | 79 + .../ckeditor/samples/old/toolbar/toolbar.html | 236 + .../assets/ckeditor/samples/old/uicolor.html | 73 + .../ckeditor/samples/old/uilanguages.html | 123 + .../samples/old/wysiwygarea/fullpage.html | 81 + .../ckeditor/samples/old/xhtmlstyle.html | 235 + .../toolbarconfigurator/css/fontello.css | 55 + .../toolbarconfigurator/font/LICENSE.txt | 10 + .../toolbarconfigurator/font/config.json | 28 + .../toolbarconfigurator/font/fontello.eot | Bin 0 -> 4988 bytes .../toolbarconfigurator/font/fontello.svg | 14 + .../toolbarconfigurator/font/fontello.ttf | Bin 0 -> 4820 bytes .../toolbarconfigurator/font/fontello.woff | Bin 0 -> 2904 bytes .../samples/toolbarconfigurator/index.html | 447 + .../js/abstracttoolbarmodifier.js | 13 + .../js/fulltoolbareditor.js | 9 + .../toolbarconfigurator/js/toolbarmodifier.js | 33 + .../js/toolbartextmodifier.js | 14 + .../lib/codemirror/LICENSE | 19 + .../lib/codemirror/codemirror.css | 325 + .../lib/codemirror/codemirror.js | 288 + .../lib/codemirror/javascript.js | 25 + .../lib/codemirror/neo.css | 36 + .../lib/codemirror/show-hint.css | 38 + .../lib/codemirror/show-hint.js | 16 + .../ckeditor/skins/moono-lisa/dialog.css | 5 + .../ckeditor/skins/moono-lisa/dialog_ie.css | 5 + .../ckeditor/skins/moono-lisa/dialog_ie8.css | 5 + .../skins/moono-lisa/dialog_iequirks.css | 5 + .../ckeditor/skins/moono-lisa/editor.css | 5 + .../skins/moono-lisa/editor_gecko.css | 5 + .../ckeditor/skins/moono-lisa/editor_ie.css | 5 + .../ckeditor/skins/moono-lisa/editor_ie8.css | 5 + .../skins/moono-lisa/editor_iequirks.css | 5 + .../ckeditor/skins/moono-lisa/icons.png | Bin 0 -> 6590 bytes .../ckeditor/skins/moono-lisa/icons_hidpi.png | Bin 0 -> 22271 bytes .../skins/moono-lisa/images/arrow.png | Bin 0 -> 191 bytes .../skins/moono-lisa/images/close.png | Bin 0 -> 615 bytes .../skins/moono-lisa/images/hidpi/close.png | Bin 0 -> 1238 bytes .../moono-lisa/images/hidpi/lock-open.png | Bin 0 -> 1071 bytes .../skins/moono-lisa/images/hidpi/lock.png | Bin 0 -> 1062 bytes .../skins/moono-lisa/images/hidpi/refresh.png | Bin 0 -> 1623 bytes .../skins/moono-lisa/images/lock-open.png | Bin 0 -> 511 bytes .../ckeditor/skins/moono-lisa/images/lock.png | Bin 0 -> 506 bytes .../skins/moono-lisa/images/refresh.png | Bin 0 -> 757 bytes .../skins/moono-lisa/images/spinner.gif | Bin 0 -> 2984 bytes .../ckeditor/skins/moono-lisa/readme.md | 46 + admin/assets/ckeditor/styles.js | 137 + admin/assets/ckeditor/vendor/promise.js | 13 + admin/assets/css/custom.css | 379 + admin/assets/css/font-awesome.css | 1672 + admin/assets/css/style.css | 1511 + admin/assets/datatables.css | 7123 ++ admin/assets/datatables.js | 98572 ++++++++++++++++ admin/assets/datatables.min.css | 25 + admin/assets/datatables.min.js | 372 + .../assets/font-awesome/fonts/FontAwesome.otf | Bin 0 -> 85908 bytes .../fonts/fontawesome-webfont.eot | Bin 0 -> 56006 bytes .../fonts/fontawesome-webfont.svg | 520 + .../fonts/fontawesome-webfont.ttf | Bin 0 -> 112160 bytes .../fonts/fontawesome-webfont.woff | Bin 0 -> 65452 bytes .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20335 bytes .../fonts/glyphicons-halflings-regular.svg | 229 + .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 41280 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23320 bytes admin/assets/img/1.png | Bin 0 -> 317 bytes admin/assets/img/2.png | Bin 0 -> 353 bytes admin/assets/img/3.png | Bin 0 -> 355 bytes admin/assets/img/4.png | Bin 0 -> 334 bytes admin/assets/js/bootstrap.bundle.min.js | 7 + admin/assets/js/bootstrap.min.js | 7 + admin/assets/js/cloud-zoom.1.0.3.min.js | 10 + admin/assets/js/custom.js | 214 + .../js/dataTables/dataTables.bootstrap.css | 233 + .../js/dataTables/dataTables.bootstrap.js | 245 + .../assets/js/dataTables/jquery.dataTables.js | 14013 +++ admin/assets/js/jquery-1.10.2.js | 10339 ++ admin/assets/js/jquery.metisMenu.js | 45 + admin/assets/js/jquery.min.js | 5 + admin/assets/js/morris/morris-0.4.3.min.css | 2 + admin/assets/js/morris/morris.js | 1913 + admin/assets/js/morris/raphael-2.1.0.min.js | 10 + admin/assets/slick/ajax-loader.gif | Bin 0 -> 4178 bytes admin/assets/slick/config.rb | 10 + admin/assets/slick/fonts/slick.eot | Bin 0 -> 2048 bytes admin/assets/slick/fonts/slick.svg | 14 + admin/assets/slick/fonts/slick.ttf | Bin 0 -> 1892 bytes admin/assets/slick/fonts/slick.woff | Bin 0 -> 1380 bytes admin/assets/slick/slick-theme.css | 204 + admin/assets/slick/slick-theme.less | 168 + admin/assets/slick/slick-theme.scss | 194 + admin/assets/slick/slick.css | 119 + admin/assets/slick/slick.js | 3011 + admin/assets/slick/slick.less | 100 + admin/assets/slick/slick.min.js | 1 + admin/assets/slick/slick.scss | 100 + admin/beranda.php | 62 + admin/css/css/sb-admin-2.css | 11270 ++ admin/css/css/sb-admin-2.min.css | 2 + admin/css/custom.css | 130 + admin/css/img/undraw_posting_photo.svg | 1 + admin/css/img/undraw_profile.svg | 38 + admin/css/img/undraw_profile_1.svg | 38 + admin/css/img/undraw_profile_2.svg | 44 + admin/css/img/undraw_profile_3.svg | 47 + admin/css/img/undraw_rocket.svg | 39 + admin/css/js/demo/chart-area-demo.js | 118 + admin/css/js/demo/chart-bar-demo.js | 111 + admin/css/js/demo/chart-pie-demo.js | 35 + admin/css/js/demo/datatables-demo.js | 4 + admin/css/js/sb-admin-2.js | 56 + admin/css/js/sb-admin-2.min.js | 7 + admin/css/scss/_buttons.scss | 52 + admin/css/scss/_cards.scss | 36 + admin/css/scss/_charts.scss | 29 + admin/css/scss/_dropdowns.scss | 21 + admin/css/scss/_error.scss | 52 + admin/css/scss/_footer.scss | 14 + admin/css/scss/_global.scss | 60 + admin/css/scss/_login.scss | 50 + admin/css/scss/_mixins.scss | 1 + admin/css/scss/_navs.scss | 3 + admin/css/scss/_utilities.scss | 7 + admin/css/scss/_variables.scss | 81 + admin/css/scss/navs/_global.scss | 42 + admin/css/scss/navs/_sidebar.scss | 477 + admin/css/scss/navs/_topbar.scss | 144 + admin/css/scss/sb-admin-2.scss | 20 + admin/css/scss/utilities/_animation.scss | 37 + admin/css/scss/utilities/_background.scss | 17 + admin/css/scss/utilities/_border.scss | 7 + admin/css/scss/utilities/_display.scss | 4 + admin/css/scss/utilities/_progress.scss | 3 + admin/css/scss/utilities/_rotate.scss | 7 + admin/css/scss/utilities/_text.scss | 54 + admin/css/vendor/chart.js/Chart.bundle.js | 20776 ++++ admin/css/vendor/chart.js/Chart.bundle.min.js | 7 + admin/css/vendor/chart.js/Chart.js | 16172 +++ admin/css/vendor/chart.js/Chart.min.js | 7 + .../datatables/dataTables.bootstrap4.css | 210 + .../datatables/dataTables.bootstrap4.js | 184 + .../datatables/dataTables.bootstrap4.min.css | 1 + .../datatables/dataTables.bootstrap4.min.js | 8 + .../vendor/datatables/jquery.dataTables.js | 15387 +++ .../datatables/jquery.dataTables.min.js | 168 + admin/css/vendor/fontawesome-free/LICENSE.txt | 34 + .../vendor/fontawesome-free/attribution.js | 3 + admin/css/vendor/fontawesome-free/css/all.css | 4619 + .../vendor/fontawesome-free/css/all.min.css | 5 + .../vendor/fontawesome-free/css/brands.css | 15 + .../fontawesome-free/css/brands.min.css | 5 + .../fontawesome-free/css/fontawesome.css | 4585 + .../fontawesome-free/css/fontawesome.min.css | 5 + .../vendor/fontawesome-free/css/regular.css | 15 + .../fontawesome-free/css/regular.min.css | 5 + .../css/vendor/fontawesome-free/css/solid.css | 16 + .../vendor/fontawesome-free/css/solid.min.css | 5 + .../fontawesome-free/css/svg-with-js.css | 371 + .../fontawesome-free/css/svg-with-js.min.css | 5 + .../vendor/fontawesome-free/css/v4-shims.css | 2172 + .../fontawesome-free/css/v4-shims.min.css | 5 + admin/css/vendor/fontawesome-free/js/all.js | 4467 + .../css/vendor/fontawesome-free/js/all.min.js | 5 + .../css/vendor/fontawesome-free/js/brands.js | 586 + .../vendor/fontawesome-free/js/brands.min.js | 5 + .../fontawesome-free/js/conflict-detection.js | 998 + .../js/conflict-detection.min.js | 5 + .../vendor/fontawesome-free/js/fontawesome.js | 2483 + .../fontawesome-free/js/fontawesome.min.js | 5 + .../css/vendor/fontawesome-free/js/regular.js | 280 + .../vendor/fontawesome-free/js/regular.min.js | 5 + admin/css/vendor/fontawesome-free/js/solid.js | 1130 + .../vendor/fontawesome-free/js/solid.min.js | 5 + .../vendor/fontawesome-free/js/v4-shims.js | 68 + .../fontawesome-free/js/v4-shims.min.js | 5 + .../fontawesome-free/less/_animated.less | 19 + .../less/_bordered-pulled.less | 16 + .../vendor/fontawesome-free/less/_core.less | 12 + .../fontawesome-free/less/_fixed-width.less | 6 + .../vendor/fontawesome-free/less/_icons.less | 1462 + .../vendor/fontawesome-free/less/_larger.less | 27 + .../vendor/fontawesome-free/less/_list.less | 18 + .../vendor/fontawesome-free/less/_mixins.less | 56 + .../less/_rotated-flipped.less | 24 + .../fontawesome-free/less/_screen-reader.less | 5 + .../vendor/fontawesome-free/less/_shims.less | 2066 + .../fontawesome-free/less/_stacked.less | 22 + .../fontawesome-free/less/_variables.less | 1474 + .../vendor/fontawesome-free/less/brands.less | 23 + .../fontawesome-free/less/fontawesome.less | 16 + .../vendor/fontawesome-free/less/regular.less | 23 + .../vendor/fontawesome-free/less/solid.less | 24 + .../fontawesome-free/less/v4-shims.less | 6 + .../fontawesome-free/metadata/categories.yml | 2572 + .../fontawesome-free/metadata/icons.yml | 21783 ++++ .../fontawesome-free/metadata/shims.yml | 298 + .../fontawesome-free/metadata/sponsors.yml | 744 + .../css/vendor/fontawesome-free/package.json | 58 + .../fontawesome-free/scss/_animated.scss | 20 + .../scss/_bordered-pulled.scss | 20 + .../vendor/fontawesome-free/scss/_core.scss | 21 + .../fontawesome-free/scss/_fixed-width.scss | 6 + .../vendor/fontawesome-free/scss/_icons.scss | 1462 + .../vendor/fontawesome-free/scss/_larger.scss | 23 + .../vendor/fontawesome-free/scss/_list.scss | 18 + .../vendor/fontawesome-free/scss/_mixins.scss | 56 + .../scss/_rotated-flipped.scss | 24 + .../fontawesome-free/scss/_screen-reader.scss | 5 + .../vendor/fontawesome-free/scss/_shims.scss | 2066 + .../fontawesome-free/scss/_stacked.scss | 31 + .../fontawesome-free/scss/_variables.scss | 1479 + .../vendor/fontawesome-free/scss/brands.scss | 23 + .../fontawesome-free/scss/fontawesome.scss | 16 + .../vendor/fontawesome-free/scss/regular.scss | 23 + .../vendor/fontawesome-free/scss/solid.scss | 24 + .../fontawesome-free/scss/v4-shims.scss | 6 + .../fontawesome-free/sprites/brands.svg | 1381 + .../fontawesome-free/sprites/regular.svg | 463 + .../vendor/fontawesome-free/sprites/solid.svg | 3013 + .../fontawesome-free/svgs/brands/500px.svg | 1 + .../svgs/brands/accessible-icon.svg | 1 + .../fontawesome-free/svgs/brands/accusoft.svg | 1 + .../svgs/brands/acquisitions-incorporated.svg | 1 + .../fontawesome-free/svgs/brands/adn.svg | 1 + .../fontawesome-free/svgs/brands/adversal.svg | 1 + .../svgs/brands/affiliatetheme.svg | 1 + .../fontawesome-free/svgs/brands/airbnb.svg | 1 + .../fontawesome-free/svgs/brands/algolia.svg | 1 + .../fontawesome-free/svgs/brands/alipay.svg | 1 + .../svgs/brands/amazon-pay.svg | 1 + .../fontawesome-free/svgs/brands/amazon.svg | 1 + .../fontawesome-free/svgs/brands/amilia.svg | 1 + .../fontawesome-free/svgs/brands/android.svg | 1 + .../svgs/brands/angellist.svg | 1 + .../svgs/brands/angrycreative.svg | 1 + .../fontawesome-free/svgs/brands/angular.svg | 1 + .../svgs/brands/app-store-ios.svg | 1 + .../svgs/brands/app-store.svg | 1 + .../fontawesome-free/svgs/brands/apper.svg | 1 + .../svgs/brands/apple-pay.svg | 1 + .../fontawesome-free/svgs/brands/apple.svg | 1 + .../svgs/brands/artstation.svg | 1 + .../svgs/brands/asymmetrik.svg | 1 + .../svgs/brands/atlassian.svg | 1 + .../fontawesome-free/svgs/brands/audible.svg | 1 + .../svgs/brands/autoprefixer.svg | 1 + .../fontawesome-free/svgs/brands/avianex.svg | 1 + .../fontawesome-free/svgs/brands/aviato.svg | 1 + .../fontawesome-free/svgs/brands/aws.svg | 1 + .../fontawesome-free/svgs/brands/bandcamp.svg | 1 + .../svgs/brands/battle-net.svg | 1 + .../svgs/brands/behance-square.svg | 1 + .../fontawesome-free/svgs/brands/behance.svg | 1 + .../svgs/brands/bimobject.svg | 1 + .../svgs/brands/bitbucket.svg | 1 + .../fontawesome-free/svgs/brands/bitcoin.svg | 1 + .../fontawesome-free/svgs/brands/bity.svg | 1 + .../svgs/brands/black-tie.svg | 1 + .../svgs/brands/blackberry.svg | 1 + .../svgs/brands/blogger-b.svg | 1 + .../fontawesome-free/svgs/brands/blogger.svg | 1 + .../svgs/brands/bluetooth-b.svg | 1 + .../svgs/brands/bluetooth.svg | 1 + .../svgs/brands/bootstrap.svg | 1 + .../fontawesome-free/svgs/brands/btc.svg | 1 + .../fontawesome-free/svgs/brands/buffer.svg | 1 + .../svgs/brands/buromobelexperte.svg | 1 + .../svgs/brands/buy-n-large.svg | 1 + .../svgs/brands/buysellads.svg | 1 + .../svgs/brands/canadian-maple-leaf.svg | 1 + .../svgs/brands/cc-amazon-pay.svg | 1 + .../fontawesome-free/svgs/brands/cc-amex.svg | 1 + .../svgs/brands/cc-apple-pay.svg | 1 + .../svgs/brands/cc-diners-club.svg | 1 + .../svgs/brands/cc-discover.svg | 1 + .../fontawesome-free/svgs/brands/cc-jcb.svg | 1 + .../svgs/brands/cc-mastercard.svg | 1 + .../svgs/brands/cc-paypal.svg | 1 + .../svgs/brands/cc-stripe.svg | 1 + .../fontawesome-free/svgs/brands/cc-visa.svg | 1 + .../svgs/brands/centercode.svg | 1 + .../fontawesome-free/svgs/brands/centos.svg | 1 + .../fontawesome-free/svgs/brands/chrome.svg | 1 + .../svgs/brands/chromecast.svg | 1 + .../svgs/brands/cloudflare.svg | 1 + .../svgs/brands/cloudscale.svg | 1 + .../svgs/brands/cloudsmith.svg | 1 + .../svgs/brands/cloudversify.svg | 1 + .../fontawesome-free/svgs/brands/codepen.svg | 1 + .../fontawesome-free/svgs/brands/codiepie.svg | 1 + .../svgs/brands/confluence.svg | 1 + .../svgs/brands/connectdevelop.svg | 1 + .../fontawesome-free/svgs/brands/contao.svg | 1 + .../svgs/brands/cotton-bureau.svg | 1 + .../fontawesome-free/svgs/brands/cpanel.svg | 1 + .../svgs/brands/creative-commons-by.svg | 1 + .../svgs/brands/creative-commons-nc-eu.svg | 1 + .../svgs/brands/creative-commons-nc-jp.svg | 1 + .../svgs/brands/creative-commons-nc.svg | 1 + .../svgs/brands/creative-commons-nd.svg | 1 + .../svgs/brands/creative-commons-pd-alt.svg | 1 + .../svgs/brands/creative-commons-pd.svg | 1 + .../svgs/brands/creative-commons-remix.svg | 1 + .../svgs/brands/creative-commons-sa.svg | 1 + .../brands/creative-commons-sampling-plus.svg | 1 + .../svgs/brands/creative-commons-sampling.svg | 1 + .../svgs/brands/creative-commons-share.svg | 1 + .../svgs/brands/creative-commons-zero.svg | 1 + .../svgs/brands/creative-commons.svg | 1 + .../svgs/brands/critical-role.svg | 1 + .../fontawesome-free/svgs/brands/css3-alt.svg | 1 + .../fontawesome-free/svgs/brands/css3.svg | 1 + .../svgs/brands/cuttlefish.svg | 1 + .../svgs/brands/d-and-d-beyond.svg | 1 + .../fontawesome-free/svgs/brands/d-and-d.svg | 1 + .../svgs/brands/dailymotion.svg | 1 + .../fontawesome-free/svgs/brands/dashcube.svg | 1 + .../fontawesome-free/svgs/brands/deezer.svg | 1 + .../svgs/brands/delicious.svg | 1 + .../svgs/brands/deploydog.svg | 1 + .../fontawesome-free/svgs/brands/deskpro.svg | 1 + .../fontawesome-free/svgs/brands/dev.svg | 1 + .../svgs/brands/deviantart.svg | 1 + .../fontawesome-free/svgs/brands/dhl.svg | 1 + .../fontawesome-free/svgs/brands/diaspora.svg | 1 + .../fontawesome-free/svgs/brands/digg.svg | 1 + .../svgs/brands/digital-ocean.svg | 1 + .../fontawesome-free/svgs/brands/discord.svg | 1 + .../svgs/brands/discourse.svg | 1 + .../fontawesome-free/svgs/brands/dochub.svg | 1 + .../fontawesome-free/svgs/brands/docker.svg | 1 + .../svgs/brands/draft2digital.svg | 1 + .../svgs/brands/dribbble-square.svg | 1 + .../fontawesome-free/svgs/brands/dribbble.svg | 1 + .../fontawesome-free/svgs/brands/dropbox.svg | 1 + .../fontawesome-free/svgs/brands/drupal.svg | 1 + .../fontawesome-free/svgs/brands/dyalog.svg | 1 + .../svgs/brands/earlybirds.svg | 1 + .../fontawesome-free/svgs/brands/ebay.svg | 1 + .../svgs/brands/edge-legacy.svg | 1 + .../fontawesome-free/svgs/brands/edge.svg | 1 + .../svgs/brands/elementor.svg | 1 + .../fontawesome-free/svgs/brands/ello.svg | 1 + .../fontawesome-free/svgs/brands/ember.svg | 1 + .../fontawesome-free/svgs/brands/empire.svg | 1 + .../fontawesome-free/svgs/brands/envira.svg | 1 + .../fontawesome-free/svgs/brands/erlang.svg | 1 + .../fontawesome-free/svgs/brands/ethereum.svg | 1 + .../fontawesome-free/svgs/brands/etsy.svg | 1 + .../fontawesome-free/svgs/brands/evernote.svg | 1 + .../svgs/brands/expeditedssl.svg | 1 + .../svgs/brands/facebook-f.svg | 1 + .../svgs/brands/facebook-messenger.svg | 1 + .../svgs/brands/facebook-square.svg | 1 + .../fontawesome-free/svgs/brands/facebook.svg | 1 + .../svgs/brands/fantasy-flight-games.svg | 1 + .../fontawesome-free/svgs/brands/fedex.svg | 1 + .../fontawesome-free/svgs/brands/fedora.svg | 1 + .../fontawesome-free/svgs/brands/figma.svg | 1 + .../svgs/brands/firefox-browser.svg | 1 + .../fontawesome-free/svgs/brands/firefox.svg | 1 + .../svgs/brands/first-order-alt.svg | 1 + .../svgs/brands/first-order.svg | 1 + .../svgs/brands/firstdraft.svg | 1 + .../fontawesome-free/svgs/brands/flickr.svg | 1 + .../svgs/brands/flipboard.svg | 1 + .../fontawesome-free/svgs/brands/fly.svg | 1 + .../svgs/brands/font-awesome-alt.svg | 1 + .../svgs/brands/font-awesome-flag.svg | 1 + .../svgs/brands/font-awesome-logo-full.svg | 1 + .../svgs/brands/font-awesome.svg | 1 + .../svgs/brands/fonticons-fi.svg | 1 + .../svgs/brands/fonticons.svg | 1 + .../svgs/brands/fort-awesome-alt.svg | 1 + .../svgs/brands/fort-awesome.svg | 1 + .../fontawesome-free/svgs/brands/forumbee.svg | 1 + .../svgs/brands/foursquare.svg | 1 + .../svgs/brands/free-code-camp.svg | 1 + .../fontawesome-free/svgs/brands/freebsd.svg | 1 + .../fontawesome-free/svgs/brands/fulcrum.svg | 1 + .../svgs/brands/galactic-republic.svg | 1 + .../svgs/brands/galactic-senate.svg | 1 + .../svgs/brands/get-pocket.svg | 1 + .../svgs/brands/gg-circle.svg | 1 + .../fontawesome-free/svgs/brands/gg.svg | 1 + .../fontawesome-free/svgs/brands/git-alt.svg | 1 + .../svgs/brands/git-square.svg | 1 + .../fontawesome-free/svgs/brands/git.svg | 1 + .../svgs/brands/github-alt.svg | 1 + .../svgs/brands/github-square.svg | 1 + .../fontawesome-free/svgs/brands/github.svg | 1 + .../svgs/brands/gitkraken.svg | 1 + .../fontawesome-free/svgs/brands/gitlab.svg | 1 + .../fontawesome-free/svgs/brands/gitter.svg | 1 + .../fontawesome-free/svgs/brands/glide-g.svg | 1 + .../fontawesome-free/svgs/brands/glide.svg | 1 + .../fontawesome-free/svgs/brands/gofore.svg | 1 + .../svgs/brands/goodreads-g.svg | 1 + .../svgs/brands/goodreads.svg | 1 + .../svgs/brands/google-drive.svg | 1 + .../svgs/brands/google-pay.svg | 1 + .../svgs/brands/google-play.svg | 1 + .../svgs/brands/google-plus-g.svg | 1 + .../svgs/brands/google-plus-square.svg | 1 + .../svgs/brands/google-plus.svg | 1 + .../svgs/brands/google-wallet.svg | 1 + .../fontawesome-free/svgs/brands/google.svg | 1 + .../fontawesome-free/svgs/brands/gratipay.svg | 1 + .../fontawesome-free/svgs/brands/grav.svg | 1 + .../fontawesome-free/svgs/brands/gripfire.svg | 1 + .../fontawesome-free/svgs/brands/grunt.svg | 1 + .../fontawesome-free/svgs/brands/guilded.svg | 1 + .../fontawesome-free/svgs/brands/gulp.svg | 1 + .../svgs/brands/hacker-news-square.svg | 1 + .../svgs/brands/hacker-news.svg | 1 + .../svgs/brands/hackerrank.svg | 1 + .../fontawesome-free/svgs/brands/hips.svg | 1 + .../svgs/brands/hire-a-helper.svg | 1 + .../fontawesome-free/svgs/brands/hive.svg | 1 + .../fontawesome-free/svgs/brands/hooli.svg | 1 + .../fontawesome-free/svgs/brands/hornbill.svg | 1 + .../fontawesome-free/svgs/brands/hotjar.svg | 1 + .../fontawesome-free/svgs/brands/houzz.svg | 1 + .../fontawesome-free/svgs/brands/html5.svg | 1 + .../fontawesome-free/svgs/brands/hubspot.svg | 1 + .../fontawesome-free/svgs/brands/ideal.svg | 1 + .../fontawesome-free/svgs/brands/imdb.svg | 1 + .../fontawesome-free/svgs/brands/innosoft.svg | 1 + .../svgs/brands/instagram-square.svg | 1 + .../svgs/brands/instagram.svg | 1 + .../fontawesome-free/svgs/brands/instalod.svg | 1 + .../fontawesome-free/svgs/brands/intercom.svg | 1 + .../svgs/brands/internet-explorer.svg | 1 + .../fontawesome-free/svgs/brands/invision.svg | 1 + .../fontawesome-free/svgs/brands/ioxhost.svg | 1 + .../fontawesome-free/svgs/brands/itch-io.svg | 1 + .../svgs/brands/itunes-note.svg | 1 + .../fontawesome-free/svgs/brands/itunes.svg | 1 + .../fontawesome-free/svgs/brands/java.svg | 1 + .../svgs/brands/jedi-order.svg | 1 + .../fontawesome-free/svgs/brands/jenkins.svg | 1 + .../fontawesome-free/svgs/brands/jira.svg | 1 + .../fontawesome-free/svgs/brands/joget.svg | 1 + .../fontawesome-free/svgs/brands/joomla.svg | 1 + .../svgs/brands/js-square.svg | 1 + .../fontawesome-free/svgs/brands/js.svg | 1 + .../fontawesome-free/svgs/brands/jsfiddle.svg | 1 + .../fontawesome-free/svgs/brands/kaggle.svg | 1 + .../fontawesome-free/svgs/brands/keybase.svg | 1 + .../fontawesome-free/svgs/brands/keycdn.svg | 1 + .../svgs/brands/kickstarter-k.svg | 1 + .../svgs/brands/kickstarter.svg | 1 + .../fontawesome-free/svgs/brands/korvue.svg | 1 + .../fontawesome-free/svgs/brands/laravel.svg | 1 + .../svgs/brands/lastfm-square.svg | 1 + .../fontawesome-free/svgs/brands/lastfm.svg | 1 + .../fontawesome-free/svgs/brands/leanpub.svg | 1 + .../fontawesome-free/svgs/brands/less.svg | 1 + .../fontawesome-free/svgs/brands/line.svg | 1 + .../svgs/brands/linkedin-in.svg | 1 + .../fontawesome-free/svgs/brands/linkedin.svg | 1 + .../fontawesome-free/svgs/brands/linode.svg | 1 + .../fontawesome-free/svgs/brands/linux.svg | 1 + .../fontawesome-free/svgs/brands/lyft.svg | 1 + .../fontawesome-free/svgs/brands/magento.svg | 1 + .../svgs/brands/mailchimp.svg | 1 + .../svgs/brands/mandalorian.svg | 1 + .../fontawesome-free/svgs/brands/markdown.svg | 1 + .../fontawesome-free/svgs/brands/mastodon.svg | 1 + .../fontawesome-free/svgs/brands/maxcdn.svg | 1 + .../fontawesome-free/svgs/brands/mdb.svg | 1 + .../fontawesome-free/svgs/brands/medapps.svg | 1 + .../fontawesome-free/svgs/brands/medium-m.svg | 1 + .../fontawesome-free/svgs/brands/medium.svg | 1 + .../fontawesome-free/svgs/brands/medrt.svg | 1 + .../fontawesome-free/svgs/brands/meetup.svg | 1 + .../fontawesome-free/svgs/brands/megaport.svg | 1 + .../fontawesome-free/svgs/brands/mendeley.svg | 1 + .../svgs/brands/microblog.svg | 1 + .../svgs/brands/microsoft.svg | 1 + .../fontawesome-free/svgs/brands/mix.svg | 1 + .../fontawesome-free/svgs/brands/mixcloud.svg | 1 + .../fontawesome-free/svgs/brands/mixer.svg | 1 + .../fontawesome-free/svgs/brands/mizuni.svg | 1 + .../fontawesome-free/svgs/brands/modx.svg | 1 + .../fontawesome-free/svgs/brands/monero.svg | 1 + .../fontawesome-free/svgs/brands/napster.svg | 1 + .../fontawesome-free/svgs/brands/neos.svg | 1 + .../fontawesome-free/svgs/brands/nimblr.svg | 1 + .../fontawesome-free/svgs/brands/node-js.svg | 1 + .../fontawesome-free/svgs/brands/node.svg | 1 + .../fontawesome-free/svgs/brands/npm.svg | 1 + .../fontawesome-free/svgs/brands/ns8.svg | 1 + .../svgs/brands/nutritionix.svg | 1 + .../svgs/brands/octopus-deploy.svg | 1 + .../svgs/brands/odnoklassniki-square.svg | 1 + .../svgs/brands/odnoklassniki.svg | 1 + .../svgs/brands/old-republic.svg | 1 + .../fontawesome-free/svgs/brands/opencart.svg | 1 + .../fontawesome-free/svgs/brands/openid.svg | 1 + .../fontawesome-free/svgs/brands/opera.svg | 1 + .../svgs/brands/optin-monster.svg | 1 + .../fontawesome-free/svgs/brands/orcid.svg | 1 + .../fontawesome-free/svgs/brands/osi.svg | 1 + .../fontawesome-free/svgs/brands/page4.svg | 1 + .../svgs/brands/pagelines.svg | 1 + .../fontawesome-free/svgs/brands/palfed.svg | 1 + .../fontawesome-free/svgs/brands/patreon.svg | 1 + .../fontawesome-free/svgs/brands/paypal.svg | 1 + .../svgs/brands/penny-arcade.svg | 1 + .../fontawesome-free/svgs/brands/perbyte.svg | 1 + .../svgs/brands/periscope.svg | 1 + .../svgs/brands/phabricator.svg | 1 + .../svgs/brands/phoenix-framework.svg | 1 + .../svgs/brands/phoenix-squadron.svg | 1 + .../fontawesome-free/svgs/brands/php.svg | 1 + .../svgs/brands/pied-piper-alt.svg | 1 + .../svgs/brands/pied-piper-hat.svg | 1 + .../svgs/brands/pied-piper-pp.svg | 1 + .../svgs/brands/pied-piper-square.svg | 1 + .../svgs/brands/pied-piper.svg | 1 + .../svgs/brands/pinterest-p.svg | 1 + .../svgs/brands/pinterest-square.svg | 1 + .../svgs/brands/pinterest.svg | 1 + .../svgs/brands/playstation.svg | 1 + .../svgs/brands/product-hunt.svg | 1 + .../fontawesome-free/svgs/brands/pushed.svg | 1 + .../fontawesome-free/svgs/brands/python.svg | 1 + .../fontawesome-free/svgs/brands/qq.svg | 1 + .../svgs/brands/quinscape.svg | 1 + .../fontawesome-free/svgs/brands/quora.svg | 1 + .../svgs/brands/r-project.svg | 1 + .../svgs/brands/raspberry-pi.svg | 1 + .../fontawesome-free/svgs/brands/ravelry.svg | 1 + .../fontawesome-free/svgs/brands/react.svg | 1 + .../svgs/brands/reacteurope.svg | 1 + .../fontawesome-free/svgs/brands/readme.svg | 1 + .../fontawesome-free/svgs/brands/rebel.svg | 1 + .../svgs/brands/red-river.svg | 1 + .../svgs/brands/reddit-alien.svg | 1 + .../svgs/brands/reddit-square.svg | 1 + .../fontawesome-free/svgs/brands/reddit.svg | 1 + .../fontawesome-free/svgs/brands/redhat.svg | 1 + .../fontawesome-free/svgs/brands/renren.svg | 1 + .../fontawesome-free/svgs/brands/replyd.svg | 1 + .../svgs/brands/researchgate.svg | 1 + .../svgs/brands/resolving.svg | 1 + .../fontawesome-free/svgs/brands/rev.svg | 1 + .../svgs/brands/rocketchat.svg | 1 + .../fontawesome-free/svgs/brands/rockrms.svg | 1 + .../fontawesome-free/svgs/brands/rust.svg | 1 + .../fontawesome-free/svgs/brands/safari.svg | 1 + .../svgs/brands/salesforce.svg | 1 + .../fontawesome-free/svgs/brands/sass.svg | 1 + .../fontawesome-free/svgs/brands/schlix.svg | 1 + .../fontawesome-free/svgs/brands/scribd.svg | 1 + .../svgs/brands/searchengin.svg | 1 + .../fontawesome-free/svgs/brands/sellcast.svg | 1 + .../fontawesome-free/svgs/brands/sellsy.svg | 1 + .../svgs/brands/servicestack.svg | 1 + .../svgs/brands/shirtsinbulk.svg | 1 + .../fontawesome-free/svgs/brands/shopify.svg | 1 + .../fontawesome-free/svgs/brands/shopware.svg | 1 + .../svgs/brands/simplybuilt.svg | 1 + .../fontawesome-free/svgs/brands/sistrix.svg | 1 + .../fontawesome-free/svgs/brands/sith.svg | 1 + .../fontawesome-free/svgs/brands/sketch.svg | 1 + .../fontawesome-free/svgs/brands/skyatlas.svg | 1 + .../fontawesome-free/svgs/brands/skype.svg | 1 + .../svgs/brands/slack-hash.svg | 1 + .../fontawesome-free/svgs/brands/slack.svg | 1 + .../svgs/brands/slideshare.svg | 1 + .../svgs/brands/snapchat-ghost.svg | 1 + .../svgs/brands/snapchat-square.svg | 1 + .../fontawesome-free/svgs/brands/snapchat.svg | 1 + .../svgs/brands/soundcloud.svg | 1 + .../svgs/brands/sourcetree.svg | 1 + .../fontawesome-free/svgs/brands/speakap.svg | 1 + .../svgs/brands/speaker-deck.svg | 1 + .../fontawesome-free/svgs/brands/spotify.svg | 1 + .../svgs/brands/squarespace.svg | 1 + .../svgs/brands/stack-exchange.svg | 1 + .../svgs/brands/stack-overflow.svg | 1 + .../svgs/brands/stackpath.svg | 1 + .../svgs/brands/staylinked.svg | 1 + .../svgs/brands/steam-square.svg | 1 + .../svgs/brands/steam-symbol.svg | 1 + .../fontawesome-free/svgs/brands/steam.svg | 1 + .../svgs/brands/sticker-mule.svg | 1 + .../fontawesome-free/svgs/brands/strava.svg | 1 + .../fontawesome-free/svgs/brands/stripe-s.svg | 1 + .../fontawesome-free/svgs/brands/stripe.svg | 1 + .../svgs/brands/studiovinari.svg | 1 + .../svgs/brands/stumbleupon-circle.svg | 1 + .../svgs/brands/stumbleupon.svg | 1 + .../svgs/brands/superpowers.svg | 1 + .../fontawesome-free/svgs/brands/supple.svg | 1 + .../fontawesome-free/svgs/brands/suse.svg | 1 + .../fontawesome-free/svgs/brands/swift.svg | 1 + .../fontawesome-free/svgs/brands/symfony.svg | 1 + .../svgs/brands/teamspeak.svg | 1 + .../svgs/brands/telegram-plane.svg | 1 + .../fontawesome-free/svgs/brands/telegram.svg | 1 + .../svgs/brands/tencent-weibo.svg | 1 + .../svgs/brands/the-red-yeti.svg | 1 + .../fontawesome-free/svgs/brands/themeco.svg | 1 + .../svgs/brands/themeisle.svg | 1 + .../svgs/brands/think-peaks.svg | 1 + .../fontawesome-free/svgs/brands/tiktok.svg | 1 + .../svgs/brands/trade-federation.svg | 1 + .../fontawesome-free/svgs/brands/trello.svg | 1 + .../svgs/brands/tripadvisor.svg | 1 + .../svgs/brands/tumblr-square.svg | 1 + .../fontawesome-free/svgs/brands/tumblr.svg | 1 + .../fontawesome-free/svgs/brands/twitch.svg | 1 + .../svgs/brands/twitter-square.svg | 1 + .../fontawesome-free/svgs/brands/twitter.svg | 1 + .../fontawesome-free/svgs/brands/typo3.svg | 1 + .../fontawesome-free/svgs/brands/uber.svg | 1 + .../fontawesome-free/svgs/brands/ubuntu.svg | 1 + .../fontawesome-free/svgs/brands/uikit.svg | 1 + .../fontawesome-free/svgs/brands/umbraco.svg | 1 + .../svgs/brands/uncharted.svg | 1 + .../svgs/brands/uniregistry.svg | 1 + .../fontawesome-free/svgs/brands/unity.svg | 1 + .../fontawesome-free/svgs/brands/unsplash.svg | 1 + .../fontawesome-free/svgs/brands/untappd.svg | 1 + .../fontawesome-free/svgs/brands/ups.svg | 1 + .../fontawesome-free/svgs/brands/usb.svg | 1 + .../fontawesome-free/svgs/brands/usps.svg | 1 + .../fontawesome-free/svgs/brands/ussunnah.svg | 1 + .../fontawesome-free/svgs/brands/vaadin.svg | 1 + .../fontawesome-free/svgs/brands/viacoin.svg | 1 + .../svgs/brands/viadeo-square.svg | 1 + .../fontawesome-free/svgs/brands/viadeo.svg | 1 + .../fontawesome-free/svgs/brands/viber.svg | 1 + .../svgs/brands/vimeo-square.svg | 1 + .../fontawesome-free/svgs/brands/vimeo-v.svg | 1 + .../fontawesome-free/svgs/brands/vimeo.svg | 1 + .../fontawesome-free/svgs/brands/vine.svg | 1 + .../fontawesome-free/svgs/brands/vk.svg | 1 + .../fontawesome-free/svgs/brands/vnv.svg | 1 + .../fontawesome-free/svgs/brands/vuejs.svg | 1 + .../svgs/brands/watchman-monitoring.svg | 1 + .../fontawesome-free/svgs/brands/waze.svg | 1 + .../fontawesome-free/svgs/brands/weebly.svg | 1 + .../fontawesome-free/svgs/brands/weibo.svg | 1 + .../fontawesome-free/svgs/brands/weixin.svg | 1 + .../svgs/brands/whatsapp-square.svg | 1 + .../fontawesome-free/svgs/brands/whatsapp.svg | 1 + .../fontawesome-free/svgs/brands/whmcs.svg | 1 + .../svgs/brands/wikipedia-w.svg | 1 + .../fontawesome-free/svgs/brands/windows.svg | 1 + .../fontawesome-free/svgs/brands/wix.svg | 1 + .../svgs/brands/wizards-of-the-coast.svg | 1 + .../fontawesome-free/svgs/brands/wodu.svg | 1 + .../svgs/brands/wolf-pack-battalion.svg | 1 + .../svgs/brands/wordpress-simple.svg | 1 + .../svgs/brands/wordpress.svg | 1 + .../svgs/brands/wpbeginner.svg | 1 + .../svgs/brands/wpexplorer.svg | 1 + .../fontawesome-free/svgs/brands/wpforms.svg | 1 + .../fontawesome-free/svgs/brands/wpressr.svg | 1 + .../fontawesome-free/svgs/brands/xbox.svg | 1 + .../svgs/brands/xing-square.svg | 1 + .../fontawesome-free/svgs/brands/xing.svg | 1 + .../svgs/brands/y-combinator.svg | 1 + .../fontawesome-free/svgs/brands/yahoo.svg | 1 + .../fontawesome-free/svgs/brands/yammer.svg | 1 + .../svgs/brands/yandex-international.svg | 1 + .../fontawesome-free/svgs/brands/yandex.svg | 1 + .../fontawesome-free/svgs/brands/yarn.svg | 1 + .../fontawesome-free/svgs/brands/yelp.svg | 1 + .../fontawesome-free/svgs/brands/yoast.svg | 1 + .../svgs/brands/youtube-square.svg | 1 + .../fontawesome-free/svgs/brands/youtube.svg | 1 + .../fontawesome-free/svgs/brands/zhihu.svg | 1 + .../svgs/regular/address-book.svg | 1 + .../svgs/regular/address-card.svg | 1 + .../fontawesome-free/svgs/regular/angry.svg | 1 + .../svgs/regular/arrow-alt-circle-down.svg | 1 + .../svgs/regular/arrow-alt-circle-left.svg | 1 + .../svgs/regular/arrow-alt-circle-right.svg | 1 + .../svgs/regular/arrow-alt-circle-up.svg | 1 + .../svgs/regular/bell-slash.svg | 1 + .../fontawesome-free/svgs/regular/bell.svg | 1 + .../svgs/regular/bookmark.svg | 1 + .../svgs/regular/building.svg | 1 + .../svgs/regular/calendar-alt.svg | 1 + .../svgs/regular/calendar-check.svg | 1 + .../svgs/regular/calendar-minus.svg | 1 + .../svgs/regular/calendar-plus.svg | 1 + .../svgs/regular/calendar-times.svg | 1 + .../svgs/regular/calendar.svg | 1 + .../svgs/regular/caret-square-down.svg | 1 + .../svgs/regular/caret-square-left.svg | 1 + .../svgs/regular/caret-square-right.svg | 1 + .../svgs/regular/caret-square-up.svg | 1 + .../svgs/regular/chart-bar.svg | 1 + .../svgs/regular/check-circle.svg | 1 + .../svgs/regular/check-square.svg | 1 + .../fontawesome-free/svgs/regular/circle.svg | 1 + .../svgs/regular/clipboard.svg | 1 + .../fontawesome-free/svgs/regular/clock.svg | 1 + .../fontawesome-free/svgs/regular/clone.svg | 1 + .../svgs/regular/closed-captioning.svg | 1 + .../svgs/regular/comment-alt.svg | 1 + .../svgs/regular/comment-dots.svg | 1 + .../fontawesome-free/svgs/regular/comment.svg | 1 + .../svgs/regular/comments.svg | 1 + .../fontawesome-free/svgs/regular/compass.svg | 1 + .../fontawesome-free/svgs/regular/copy.svg | 1 + .../svgs/regular/copyright.svg | 1 + .../svgs/regular/credit-card.svg | 1 + .../fontawesome-free/svgs/regular/dizzy.svg | 1 + .../svgs/regular/dot-circle.svg | 1 + .../fontawesome-free/svgs/regular/edit.svg | 1 + .../svgs/regular/envelope-open.svg | 1 + .../svgs/regular/envelope.svg | 1 + .../svgs/regular/eye-slash.svg | 1 + .../fontawesome-free/svgs/regular/eye.svg | 1 + .../svgs/regular/file-alt.svg | 1 + .../svgs/regular/file-archive.svg | 1 + .../svgs/regular/file-audio.svg | 1 + .../svgs/regular/file-code.svg | 1 + .../svgs/regular/file-excel.svg | 1 + .../svgs/regular/file-image.svg | 1 + .../svgs/regular/file-pdf.svg | 1 + .../svgs/regular/file-powerpoint.svg | 1 + .../svgs/regular/file-video.svg | 1 + .../svgs/regular/file-word.svg | 1 + .../fontawesome-free/svgs/regular/file.svg | 1 + .../fontawesome-free/svgs/regular/flag.svg | 1 + .../fontawesome-free/svgs/regular/flushed.svg | 1 + .../svgs/regular/folder-open.svg | 1 + .../fontawesome-free/svgs/regular/folder.svg | 1 + .../svgs/regular/font-awesome-logo-full.svg | 1 + .../svgs/regular/frown-open.svg | 1 + .../fontawesome-free/svgs/regular/frown.svg | 1 + .../fontawesome-free/svgs/regular/futbol.svg | 1 + .../fontawesome-free/svgs/regular/gem.svg | 1 + .../fontawesome-free/svgs/regular/grimace.svg | 1 + .../svgs/regular/grin-alt.svg | 1 + .../svgs/regular/grin-beam-sweat.svg | 1 + .../svgs/regular/grin-beam.svg | 1 + .../svgs/regular/grin-hearts.svg | 1 + .../svgs/regular/grin-squint-tears.svg | 1 + .../svgs/regular/grin-squint.svg | 1 + .../svgs/regular/grin-stars.svg | 1 + .../svgs/regular/grin-tears.svg | 1 + .../svgs/regular/grin-tongue-squint.svg | 1 + .../svgs/regular/grin-tongue-wink.svg | 1 + .../svgs/regular/grin-tongue.svg | 1 + .../svgs/regular/grin-wink.svg | 1 + .../fontawesome-free/svgs/regular/grin.svg | 1 + .../svgs/regular/hand-lizard.svg | 1 + .../svgs/regular/hand-paper.svg | 1 + .../svgs/regular/hand-peace.svg | 1 + .../svgs/regular/hand-point-down.svg | 1 + .../svgs/regular/hand-point-left.svg | 1 + .../svgs/regular/hand-point-right.svg | 1 + .../svgs/regular/hand-point-up.svg | 1 + .../svgs/regular/hand-pointer.svg | 1 + .../svgs/regular/hand-rock.svg | 1 + .../svgs/regular/hand-scissors.svg | 1 + .../svgs/regular/hand-spock.svg | 1 + .../svgs/regular/handshake.svg | 1 + .../fontawesome-free/svgs/regular/hdd.svg | 1 + .../fontawesome-free/svgs/regular/heart.svg | 1 + .../svgs/regular/hospital.svg | 1 + .../svgs/regular/hourglass.svg | 1 + .../svgs/regular/id-badge.svg | 1 + .../fontawesome-free/svgs/regular/id-card.svg | 1 + .../fontawesome-free/svgs/regular/image.svg | 1 + .../fontawesome-free/svgs/regular/images.svg | 1 + .../svgs/regular/keyboard.svg | 1 + .../svgs/regular/kiss-beam.svg | 1 + .../svgs/regular/kiss-wink-heart.svg | 1 + .../fontawesome-free/svgs/regular/kiss.svg | 1 + .../svgs/regular/laugh-beam.svg | 1 + .../svgs/regular/laugh-squint.svg | 1 + .../svgs/regular/laugh-wink.svg | 1 + .../fontawesome-free/svgs/regular/laugh.svg | 1 + .../fontawesome-free/svgs/regular/lemon.svg | 1 + .../svgs/regular/life-ring.svg | 1 + .../svgs/regular/lightbulb.svg | 1 + .../svgs/regular/list-alt.svg | 1 + .../fontawesome-free/svgs/regular/map.svg | 1 + .../svgs/regular/meh-blank.svg | 1 + .../svgs/regular/meh-rolling-eyes.svg | 1 + .../fontawesome-free/svgs/regular/meh.svg | 1 + .../svgs/regular/minus-square.svg | 1 + .../svgs/regular/money-bill-alt.svg | 1 + .../fontawesome-free/svgs/regular/moon.svg | 1 + .../svgs/regular/newspaper.svg | 1 + .../svgs/regular/object-group.svg | 1 + .../svgs/regular/object-ungroup.svg | 1 + .../svgs/regular/paper-plane.svg | 1 + .../svgs/regular/pause-circle.svg | 1 + .../svgs/regular/play-circle.svg | 1 + .../svgs/regular/plus-square.svg | 1 + .../svgs/regular/question-circle.svg | 1 + .../svgs/regular/registered.svg | 1 + .../fontawesome-free/svgs/regular/sad-cry.svg | 1 + .../svgs/regular/sad-tear.svg | 1 + .../fontawesome-free/svgs/regular/save.svg | 1 + .../svgs/regular/share-square.svg | 1 + .../svgs/regular/smile-beam.svg | 1 + .../svgs/regular/smile-wink.svg | 1 + .../fontawesome-free/svgs/regular/smile.svg | 1 + .../svgs/regular/snowflake.svg | 1 + .../fontawesome-free/svgs/regular/square.svg | 1 + .../svgs/regular/star-half.svg | 1 + .../fontawesome-free/svgs/regular/star.svg | 1 + .../svgs/regular/sticky-note.svg | 1 + .../svgs/regular/stop-circle.svg | 1 + .../fontawesome-free/svgs/regular/sun.svg | 1 + .../svgs/regular/surprise.svg | 1 + .../svgs/regular/thumbs-down.svg | 1 + .../svgs/regular/thumbs-up.svg | 1 + .../svgs/regular/times-circle.svg | 1 + .../fontawesome-free/svgs/regular/tired.svg | 1 + .../svgs/regular/trash-alt.svg | 1 + .../svgs/regular/user-circle.svg | 1 + .../fontawesome-free/svgs/regular/user.svg | 1 + .../svgs/regular/window-close.svg | 1 + .../svgs/regular/window-maximize.svg | 1 + .../svgs/regular/window-minimize.svg | 1 + .../svgs/regular/window-restore.svg | 1 + .../vendor/fontawesome-free/svgs/solid/ad.svg | 1 + .../svgs/solid/address-book.svg | 1 + .../svgs/solid/address-card.svg | 1 + .../fontawesome-free/svgs/solid/adjust.svg | 1 + .../svgs/solid/air-freshener.svg | 1 + .../svgs/solid/align-center.svg | 1 + .../svgs/solid/align-justify.svg | 1 + .../svgs/solid/align-left.svg | 1 + .../svgs/solid/align-right.svg | 1 + .../fontawesome-free/svgs/solid/allergies.svg | 1 + .../fontawesome-free/svgs/solid/ambulance.svg | 1 + .../american-sign-language-interpreting.svg | 1 + .../fontawesome-free/svgs/solid/anchor.svg | 1 + .../svgs/solid/angle-double-down.svg | 1 + .../svgs/solid/angle-double-left.svg | 1 + .../svgs/solid/angle-double-right.svg | 1 + .../svgs/solid/angle-double-up.svg | 1 + .../svgs/solid/angle-down.svg | 1 + .../svgs/solid/angle-left.svg | 1 + .../svgs/solid/angle-right.svg | 1 + .../fontawesome-free/svgs/solid/angle-up.svg | 1 + .../fontawesome-free/svgs/solid/angry.svg | 1 + .../fontawesome-free/svgs/solid/ankh.svg | 1 + .../fontawesome-free/svgs/solid/apple-alt.svg | 1 + .../fontawesome-free/svgs/solid/archive.svg | 1 + .../fontawesome-free/svgs/solid/archway.svg | 1 + .../svgs/solid/arrow-alt-circle-down.svg | 1 + .../svgs/solid/arrow-alt-circle-left.svg | 1 + .../svgs/solid/arrow-alt-circle-right.svg | 1 + .../svgs/solid/arrow-alt-circle-up.svg | 1 + .../svgs/solid/arrow-circle-down.svg | 1 + .../svgs/solid/arrow-circle-left.svg | 1 + .../svgs/solid/arrow-circle-right.svg | 1 + .../svgs/solid/arrow-circle-up.svg | 1 + .../svgs/solid/arrow-down.svg | 1 + .../svgs/solid/arrow-left.svg | 1 + .../svgs/solid/arrow-right.svg | 1 + .../fontawesome-free/svgs/solid/arrow-up.svg | 1 + .../svgs/solid/arrows-alt-h.svg | 1 + .../svgs/solid/arrows-alt-v.svg | 1 + .../svgs/solid/arrows-alt.svg | 1 + .../solid/assistive-listening-systems.svg | 1 + .../fontawesome-free/svgs/solid/asterisk.svg | 1 + .../vendor/fontawesome-free/svgs/solid/at.svg | 1 + .../fontawesome-free/svgs/solid/atlas.svg | 1 + .../fontawesome-free/svgs/solid/atom.svg | 1 + .../svgs/solid/audio-description.svg | 1 + .../fontawesome-free/svgs/solid/award.svg | 1 + .../svgs/solid/baby-carriage.svg | 1 + .../fontawesome-free/svgs/solid/baby.svg | 1 + .../fontawesome-free/svgs/solid/backspace.svg | 1 + .../fontawesome-free/svgs/solid/backward.svg | 1 + .../fontawesome-free/svgs/solid/bacon.svg | 1 + .../fontawesome-free/svgs/solid/bacteria.svg | 1 + .../fontawesome-free/svgs/solid/bacterium.svg | 1 + .../fontawesome-free/svgs/solid/bahai.svg | 1 + .../svgs/solid/balance-scale-left.svg | 1 + .../svgs/solid/balance-scale-right.svg | 1 + .../svgs/solid/balance-scale.svg | 1 + .../fontawesome-free/svgs/solid/ban.svg | 1 + .../fontawesome-free/svgs/solid/band-aid.svg | 1 + .../fontawesome-free/svgs/solid/barcode.svg | 1 + .../fontawesome-free/svgs/solid/bars.svg | 1 + .../svgs/solid/baseball-ball.svg | 1 + .../svgs/solid/basketball-ball.svg | 1 + .../fontawesome-free/svgs/solid/bath.svg | 1 + .../svgs/solid/battery-empty.svg | 1 + .../svgs/solid/battery-full.svg | 1 + .../svgs/solid/battery-half.svg | 1 + .../svgs/solid/battery-quarter.svg | 1 + .../svgs/solid/battery-three-quarters.svg | 1 + .../fontawesome-free/svgs/solid/bed.svg | 1 + .../fontawesome-free/svgs/solid/beer.svg | 1 + .../svgs/solid/bell-slash.svg | 1 + .../fontawesome-free/svgs/solid/bell.svg | 1 + .../svgs/solid/bezier-curve.svg | 1 + .../fontawesome-free/svgs/solid/bible.svg | 1 + .../fontawesome-free/svgs/solid/bicycle.svg | 1 + .../fontawesome-free/svgs/solid/biking.svg | 1 + .../svgs/solid/binoculars.svg | 1 + .../fontawesome-free/svgs/solid/biohazard.svg | 1 + .../svgs/solid/birthday-cake.svg | 1 + .../svgs/solid/blender-phone.svg | 1 + .../fontawesome-free/svgs/solid/blender.svg | 1 + .../fontawesome-free/svgs/solid/blind.svg | 1 + .../fontawesome-free/svgs/solid/blog.svg | 1 + .../fontawesome-free/svgs/solid/bold.svg | 1 + .../fontawesome-free/svgs/solid/bolt.svg | 1 + .../fontawesome-free/svgs/solid/bomb.svg | 1 + .../fontawesome-free/svgs/solid/bone.svg | 1 + .../fontawesome-free/svgs/solid/bong.svg | 1 + .../fontawesome-free/svgs/solid/book-dead.svg | 1 + .../svgs/solid/book-medical.svg | 1 + .../fontawesome-free/svgs/solid/book-open.svg | 1 + .../svgs/solid/book-reader.svg | 1 + .../fontawesome-free/svgs/solid/book.svg | 1 + .../fontawesome-free/svgs/solid/bookmark.svg | 1 + .../svgs/solid/border-all.svg | 1 + .../svgs/solid/border-none.svg | 1 + .../svgs/solid/border-style.svg | 1 + .../svgs/solid/bowling-ball.svg | 1 + .../fontawesome-free/svgs/solid/box-open.svg | 1 + .../svgs/solid/box-tissue.svg | 1 + .../fontawesome-free/svgs/solid/box.svg | 1 + .../fontawesome-free/svgs/solid/boxes.svg | 1 + .../fontawesome-free/svgs/solid/braille.svg | 1 + .../fontawesome-free/svgs/solid/brain.svg | 1 + .../svgs/solid/bread-slice.svg | 1 + .../svgs/solid/briefcase-medical.svg | 1 + .../fontawesome-free/svgs/solid/briefcase.svg | 1 + .../svgs/solid/broadcast-tower.svg | 1 + .../fontawesome-free/svgs/solid/broom.svg | 1 + .../fontawesome-free/svgs/solid/brush.svg | 1 + .../fontawesome-free/svgs/solid/bug.svg | 1 + .../fontawesome-free/svgs/solid/building.svg | 1 + .../fontawesome-free/svgs/solid/bullhorn.svg | 1 + .../fontawesome-free/svgs/solid/bullseye.svg | 1 + .../fontawesome-free/svgs/solid/burn.svg | 1 + .../fontawesome-free/svgs/solid/bus-alt.svg | 1 + .../fontawesome-free/svgs/solid/bus.svg | 1 + .../svgs/solid/business-time.svg | 1 + .../svgs/solid/calculator.svg | 1 + .../svgs/solid/calendar-alt.svg | 1 + .../svgs/solid/calendar-check.svg | 1 + .../svgs/solid/calendar-day.svg | 1 + .../svgs/solid/calendar-minus.svg | 1 + .../svgs/solid/calendar-plus.svg | 1 + .../svgs/solid/calendar-times.svg | 1 + .../svgs/solid/calendar-week.svg | 1 + .../fontawesome-free/svgs/solid/calendar.svg | 1 + .../svgs/solid/camera-retro.svg | 1 + .../fontawesome-free/svgs/solid/camera.svg | 1 + .../svgs/solid/campground.svg | 1 + .../svgs/solid/candy-cane.svg | 1 + .../fontawesome-free/svgs/solid/cannabis.svg | 1 + .../fontawesome-free/svgs/solid/capsules.svg | 1 + .../fontawesome-free/svgs/solid/car-alt.svg | 1 + .../svgs/solid/car-battery.svg | 1 + .../fontawesome-free/svgs/solid/car-crash.svg | 1 + .../fontawesome-free/svgs/solid/car-side.svg | 1 + .../fontawesome-free/svgs/solid/car.svg | 1 + .../fontawesome-free/svgs/solid/caravan.svg | 1 + .../svgs/solid/caret-down.svg | 1 + .../svgs/solid/caret-left.svg | 1 + .../svgs/solid/caret-right.svg | 1 + .../svgs/solid/caret-square-down.svg | 1 + .../svgs/solid/caret-square-left.svg | 1 + .../svgs/solid/caret-square-right.svg | 1 + .../svgs/solid/caret-square-up.svg | 1 + .../fontawesome-free/svgs/solid/caret-up.svg | 1 + .../fontawesome-free/svgs/solid/carrot.svg | 1 + .../svgs/solid/cart-arrow-down.svg | 1 + .../fontawesome-free/svgs/solid/cart-plus.svg | 1 + .../svgs/solid/cash-register.svg | 1 + .../fontawesome-free/svgs/solid/cat.svg | 1 + .../svgs/solid/certificate.svg | 1 + .../fontawesome-free/svgs/solid/chair.svg | 1 + .../svgs/solid/chalkboard-teacher.svg | 1 + .../svgs/solid/chalkboard.svg | 1 + .../svgs/solid/charging-station.svg | 1 + .../svgs/solid/chart-area.svg | 1 + .../fontawesome-free/svgs/solid/chart-bar.svg | 1 + .../svgs/solid/chart-line.svg | 1 + .../fontawesome-free/svgs/solid/chart-pie.svg | 1 + .../svgs/solid/check-circle.svg | 1 + .../svgs/solid/check-double.svg | 1 + .../svgs/solid/check-square.svg | 1 + .../fontawesome-free/svgs/solid/check.svg | 1 + .../fontawesome-free/svgs/solid/cheese.svg | 1 + .../svgs/solid/chess-bishop.svg | 1 + .../svgs/solid/chess-board.svg | 1 + .../svgs/solid/chess-king.svg | 1 + .../svgs/solid/chess-knight.svg | 1 + .../svgs/solid/chess-pawn.svg | 1 + .../svgs/solid/chess-queen.svg | 1 + .../svgs/solid/chess-rook.svg | 1 + .../fontawesome-free/svgs/solid/chess.svg | 1 + .../svgs/solid/chevron-circle-down.svg | 1 + .../svgs/solid/chevron-circle-left.svg | 1 + .../svgs/solid/chevron-circle-right.svg | 1 + .../svgs/solid/chevron-circle-up.svg | 1 + .../svgs/solid/chevron-down.svg | 1 + .../svgs/solid/chevron-left.svg | 1 + .../svgs/solid/chevron-right.svg | 1 + .../svgs/solid/chevron-up.svg | 1 + .../fontawesome-free/svgs/solid/child.svg | 1 + .../fontawesome-free/svgs/solid/church.svg | 1 + .../svgs/solid/circle-notch.svg | 1 + .../fontawesome-free/svgs/solid/circle.svg | 1 + .../fontawesome-free/svgs/solid/city.svg | 1 + .../svgs/solid/clinic-medical.svg | 1 + .../svgs/solid/clipboard-check.svg | 1 + .../svgs/solid/clipboard-list.svg | 1 + .../fontawesome-free/svgs/solid/clipboard.svg | 1 + .../fontawesome-free/svgs/solid/clock.svg | 1 + .../fontawesome-free/svgs/solid/clone.svg | 1 + .../svgs/solid/closed-captioning.svg | 1 + .../svgs/solid/cloud-download-alt.svg | 1 + .../svgs/solid/cloud-meatball.svg | 1 + .../svgs/solid/cloud-moon-rain.svg | 1 + .../svgs/solid/cloud-moon.svg | 1 + .../svgs/solid/cloud-rain.svg | 1 + .../svgs/solid/cloud-showers-heavy.svg | 1 + .../svgs/solid/cloud-sun-rain.svg | 1 + .../fontawesome-free/svgs/solid/cloud-sun.svg | 1 + .../svgs/solid/cloud-upload-alt.svg | 1 + .../fontawesome-free/svgs/solid/cloud.svg | 1 + .../fontawesome-free/svgs/solid/cocktail.svg | 1 + .../svgs/solid/code-branch.svg | 1 + .../fontawesome-free/svgs/solid/code.svg | 1 + .../fontawesome-free/svgs/solid/coffee.svg | 1 + .../fontawesome-free/svgs/solid/cog.svg | 1 + .../fontawesome-free/svgs/solid/cogs.svg | 1 + .../fontawesome-free/svgs/solid/coins.svg | 1 + .../fontawesome-free/svgs/solid/columns.svg | 1 + .../svgs/solid/comment-alt.svg | 1 + .../svgs/solid/comment-dollar.svg | 1 + .../svgs/solid/comment-dots.svg | 1 + .../svgs/solid/comment-medical.svg | 1 + .../svgs/solid/comment-slash.svg | 1 + .../fontawesome-free/svgs/solid/comment.svg | 1 + .../svgs/solid/comments-dollar.svg | 1 + .../fontawesome-free/svgs/solid/comments.svg | 1 + .../svgs/solid/compact-disc.svg | 1 + .../fontawesome-free/svgs/solid/compass.svg | 1 + .../svgs/solid/compress-alt.svg | 1 + .../svgs/solid/compress-arrows-alt.svg | 1 + .../fontawesome-free/svgs/solid/compress.svg | 1 + .../svgs/solid/concierge-bell.svg | 1 + .../svgs/solid/cookie-bite.svg | 1 + .../fontawesome-free/svgs/solid/cookie.svg | 1 + .../fontawesome-free/svgs/solid/copy.svg | 1 + .../fontawesome-free/svgs/solid/copyright.svg | 1 + .../fontawesome-free/svgs/solid/couch.svg | 1 + .../svgs/solid/credit-card.svg | 1 + .../fontawesome-free/svgs/solid/crop-alt.svg | 1 + .../fontawesome-free/svgs/solid/crop.svg | 1 + .../fontawesome-free/svgs/solid/cross.svg | 1 + .../svgs/solid/crosshairs.svg | 1 + .../fontawesome-free/svgs/solid/crow.svg | 1 + .../fontawesome-free/svgs/solid/crown.svg | 1 + .../fontawesome-free/svgs/solid/crutch.svg | 1 + .../fontawesome-free/svgs/solid/cube.svg | 1 + .../fontawesome-free/svgs/solid/cubes.svg | 1 + .../fontawesome-free/svgs/solid/cut.svg | 1 + .../fontawesome-free/svgs/solid/database.svg | 1 + .../fontawesome-free/svgs/solid/deaf.svg | 1 + .../fontawesome-free/svgs/solid/democrat.svg | 1 + .../fontawesome-free/svgs/solid/desktop.svg | 1 + .../svgs/solid/dharmachakra.svg | 1 + .../fontawesome-free/svgs/solid/diagnoses.svg | 1 + .../fontawesome-free/svgs/solid/dice-d20.svg | 1 + .../fontawesome-free/svgs/solid/dice-d6.svg | 1 + .../fontawesome-free/svgs/solid/dice-five.svg | 1 + .../fontawesome-free/svgs/solid/dice-four.svg | 1 + .../fontawesome-free/svgs/solid/dice-one.svg | 1 + .../fontawesome-free/svgs/solid/dice-six.svg | 1 + .../svgs/solid/dice-three.svg | 1 + .../fontawesome-free/svgs/solid/dice-two.svg | 1 + .../fontawesome-free/svgs/solid/dice.svg | 1 + .../svgs/solid/digital-tachograph.svg | 1 + .../svgs/solid/directions.svg | 1 + .../fontawesome-free/svgs/solid/disease.svg | 1 + .../fontawesome-free/svgs/solid/divide.svg | 1 + .../fontawesome-free/svgs/solid/dizzy.svg | 1 + .../fontawesome-free/svgs/solid/dna.svg | 1 + .../fontawesome-free/svgs/solid/dog.svg | 1 + .../svgs/solid/dollar-sign.svg | 1 + .../svgs/solid/dolly-flatbed.svg | 1 + .../fontawesome-free/svgs/solid/dolly.svg | 1 + .../fontawesome-free/svgs/solid/donate.svg | 1 + .../svgs/solid/door-closed.svg | 1 + .../fontawesome-free/svgs/solid/door-open.svg | 1 + .../svgs/solid/dot-circle.svg | 1 + .../fontawesome-free/svgs/solid/dove.svg | 1 + .../fontawesome-free/svgs/solid/download.svg | 1 + .../svgs/solid/drafting-compass.svg | 1 + .../fontawesome-free/svgs/solid/dragon.svg | 1 + .../svgs/solid/draw-polygon.svg | 1 + .../svgs/solid/drum-steelpan.svg | 1 + .../fontawesome-free/svgs/solid/drum.svg | 1 + .../svgs/solid/drumstick-bite.svg | 1 + .../fontawesome-free/svgs/solid/dumbbell.svg | 1 + .../svgs/solid/dumpster-fire.svg | 1 + .../fontawesome-free/svgs/solid/dumpster.svg | 1 + .../fontawesome-free/svgs/solid/dungeon.svg | 1 + .../fontawesome-free/svgs/solid/edit.svg | 1 + .../fontawesome-free/svgs/solid/egg.svg | 1 + .../fontawesome-free/svgs/solid/eject.svg | 1 + .../svgs/solid/ellipsis-h.svg | 1 + .../svgs/solid/ellipsis-v.svg | 1 + .../svgs/solid/envelope-open-text.svg | 1 + .../svgs/solid/envelope-open.svg | 1 + .../svgs/solid/envelope-square.svg | 1 + .../fontawesome-free/svgs/solid/envelope.svg | 1 + .../fontawesome-free/svgs/solid/equals.svg | 1 + .../fontawesome-free/svgs/solid/eraser.svg | 1 + .../fontawesome-free/svgs/solid/ethernet.svg | 1 + .../fontawesome-free/svgs/solid/euro-sign.svg | 1 + .../svgs/solid/exchange-alt.svg | 1 + .../svgs/solid/exclamation-circle.svg | 1 + .../svgs/solid/exclamation-triangle.svg | 1 + .../svgs/solid/exclamation.svg | 1 + .../svgs/solid/expand-alt.svg | 1 + .../svgs/solid/expand-arrows-alt.svg | 1 + .../fontawesome-free/svgs/solid/expand.svg | 1 + .../svgs/solid/external-link-alt.svg | 1 + .../svgs/solid/external-link-square-alt.svg | 1 + .../svgs/solid/eye-dropper.svg | 1 + .../fontawesome-free/svgs/solid/eye-slash.svg | 1 + .../fontawesome-free/svgs/solid/eye.svg | 1 + .../fontawesome-free/svgs/solid/fan.svg | 1 + .../svgs/solid/fast-backward.svg | 1 + .../svgs/solid/fast-forward.svg | 1 + .../fontawesome-free/svgs/solid/faucet.svg | 1 + .../fontawesome-free/svgs/solid/fax.svg | 1 + .../svgs/solid/feather-alt.svg | 1 + .../fontawesome-free/svgs/solid/feather.svg | 1 + .../fontawesome-free/svgs/solid/female.svg | 1 + .../svgs/solid/fighter-jet.svg | 1 + .../fontawesome-free/svgs/solid/file-alt.svg | 1 + .../svgs/solid/file-archive.svg | 1 + .../svgs/solid/file-audio.svg | 1 + .../fontawesome-free/svgs/solid/file-code.svg | 1 + .../svgs/solid/file-contract.svg | 1 + .../fontawesome-free/svgs/solid/file-csv.svg | 1 + .../svgs/solid/file-download.svg | 1 + .../svgs/solid/file-excel.svg | 1 + .../svgs/solid/file-export.svg | 1 + .../svgs/solid/file-image.svg | 1 + .../svgs/solid/file-import.svg | 1 + .../svgs/solid/file-invoice-dollar.svg | 1 + .../svgs/solid/file-invoice.svg | 1 + .../svgs/solid/file-medical-alt.svg | 1 + .../svgs/solid/file-medical.svg | 1 + .../fontawesome-free/svgs/solid/file-pdf.svg | 1 + .../svgs/solid/file-powerpoint.svg | 1 + .../svgs/solid/file-prescription.svg | 1 + .../svgs/solid/file-signature.svg | 1 + .../svgs/solid/file-upload.svg | 1 + .../svgs/solid/file-video.svg | 1 + .../fontawesome-free/svgs/solid/file-word.svg | 1 + .../fontawesome-free/svgs/solid/file.svg | 1 + .../fontawesome-free/svgs/solid/fill-drip.svg | 1 + .../fontawesome-free/svgs/solid/fill.svg | 1 + .../fontawesome-free/svgs/solid/film.svg | 1 + .../fontawesome-free/svgs/solid/filter.svg | 1 + .../svgs/solid/fingerprint.svg | 1 + .../fontawesome-free/svgs/solid/fire-alt.svg | 1 + .../svgs/solid/fire-extinguisher.svg | 1 + .../fontawesome-free/svgs/solid/fire.svg | 1 + .../fontawesome-free/svgs/solid/first-aid.svg | 1 + .../fontawesome-free/svgs/solid/fish.svg | 1 + .../svgs/solid/fist-raised.svg | 1 + .../svgs/solid/flag-checkered.svg | 1 + .../fontawesome-free/svgs/solid/flag-usa.svg | 1 + .../fontawesome-free/svgs/solid/flag.svg | 1 + .../fontawesome-free/svgs/solid/flask.svg | 1 + .../fontawesome-free/svgs/solid/flushed.svg | 1 + .../svgs/solid/folder-minus.svg | 1 + .../svgs/solid/folder-open.svg | 1 + .../svgs/solid/folder-plus.svg | 1 + .../fontawesome-free/svgs/solid/folder.svg | 1 + .../svgs/solid/font-awesome-logo-full.svg | 1 + .../fontawesome-free/svgs/solid/font.svg | 1 + .../svgs/solid/football-ball.svg | 1 + .../fontawesome-free/svgs/solid/forward.svg | 1 + .../fontawesome-free/svgs/solid/frog.svg | 1 + .../svgs/solid/frown-open.svg | 1 + .../fontawesome-free/svgs/solid/frown.svg | 1 + .../svgs/solid/funnel-dollar.svg | 1 + .../fontawesome-free/svgs/solid/futbol.svg | 1 + .../fontawesome-free/svgs/solid/gamepad.svg | 1 + .../fontawesome-free/svgs/solid/gas-pump.svg | 1 + .../fontawesome-free/svgs/solid/gavel.svg | 1 + .../fontawesome-free/svgs/solid/gem.svg | 1 + .../svgs/solid/genderless.svg | 1 + .../fontawesome-free/svgs/solid/ghost.svg | 1 + .../fontawesome-free/svgs/solid/gift.svg | 1 + .../fontawesome-free/svgs/solid/gifts.svg | 1 + .../svgs/solid/glass-cheers.svg | 1 + .../svgs/solid/glass-martini-alt.svg | 1 + .../svgs/solid/glass-martini.svg | 1 + .../svgs/solid/glass-whiskey.svg | 1 + .../fontawesome-free/svgs/solid/glasses.svg | 1 + .../svgs/solid/globe-africa.svg | 1 + .../svgs/solid/globe-americas.svg | 1 + .../svgs/solid/globe-asia.svg | 1 + .../svgs/solid/globe-europe.svg | 1 + .../fontawesome-free/svgs/solid/globe.svg | 1 + .../fontawesome-free/svgs/solid/golf-ball.svg | 1 + .../fontawesome-free/svgs/solid/gopuram.svg | 1 + .../svgs/solid/graduation-cap.svg | 1 + .../svgs/solid/greater-than-equal.svg | 1 + .../svgs/solid/greater-than.svg | 1 + .../fontawesome-free/svgs/solid/grimace.svg | 1 + .../fontawesome-free/svgs/solid/grin-alt.svg | 1 + .../svgs/solid/grin-beam-sweat.svg | 1 + .../fontawesome-free/svgs/solid/grin-beam.svg | 1 + .../svgs/solid/grin-hearts.svg | 1 + .../svgs/solid/grin-squint-tears.svg | 1 + .../svgs/solid/grin-squint.svg | 1 + .../svgs/solid/grin-stars.svg | 1 + .../svgs/solid/grin-tears.svg | 1 + .../svgs/solid/grin-tongue-squint.svg | 1 + .../svgs/solid/grin-tongue-wink.svg | 1 + .../svgs/solid/grin-tongue.svg | 1 + .../fontawesome-free/svgs/solid/grin-wink.svg | 1 + .../fontawesome-free/svgs/solid/grin.svg | 1 + .../svgs/solid/grip-horizontal.svg | 1 + .../svgs/solid/grip-lines-vertical.svg | 1 + .../svgs/solid/grip-lines.svg | 1 + .../svgs/solid/grip-vertical.svg | 1 + .../fontawesome-free/svgs/solid/guitar.svg | 1 + .../fontawesome-free/svgs/solid/h-square.svg | 1 + .../fontawesome-free/svgs/solid/hamburger.svg | 1 + .../fontawesome-free/svgs/solid/hammer.svg | 1 + .../fontawesome-free/svgs/solid/hamsa.svg | 1 + .../svgs/solid/hand-holding-heart.svg | 1 + .../svgs/solid/hand-holding-medical.svg | 1 + .../svgs/solid/hand-holding-usd.svg | 1 + .../svgs/solid/hand-holding-water.svg | 1 + .../svgs/solid/hand-holding.svg | 1 + .../svgs/solid/hand-lizard.svg | 1 + .../svgs/solid/hand-middle-finger.svg | 1 + .../svgs/solid/hand-paper.svg | 1 + .../svgs/solid/hand-peace.svg | 1 + .../svgs/solid/hand-point-down.svg | 1 + .../svgs/solid/hand-point-left.svg | 1 + .../svgs/solid/hand-point-right.svg | 1 + .../svgs/solid/hand-point-up.svg | 1 + .../svgs/solid/hand-pointer.svg | 1 + .../fontawesome-free/svgs/solid/hand-rock.svg | 1 + .../svgs/solid/hand-scissors.svg | 1 + .../svgs/solid/hand-sparkles.svg | 1 + .../svgs/solid/hand-spock.svg | 1 + .../svgs/solid/hands-helping.svg | 1 + .../svgs/solid/hands-wash.svg | 1 + .../fontawesome-free/svgs/solid/hands.svg | 1 + .../svgs/solid/handshake-alt-slash.svg | 1 + .../svgs/solid/handshake-slash.svg | 1 + .../fontawesome-free/svgs/solid/handshake.svg | 1 + .../fontawesome-free/svgs/solid/hanukiah.svg | 1 + .../fontawesome-free/svgs/solid/hard-hat.svg | 1 + .../fontawesome-free/svgs/solid/hashtag.svg | 1 + .../svgs/solid/hat-cowboy-side.svg | 1 + .../svgs/solid/hat-cowboy.svg | 1 + .../svgs/solid/hat-wizard.svg | 1 + .../fontawesome-free/svgs/solid/hdd.svg | 1 + .../svgs/solid/head-side-cough-slash.svg | 1 + .../svgs/solid/head-side-cough.svg | 1 + .../svgs/solid/head-side-mask.svg | 1 + .../svgs/solid/head-side-virus.svg | 1 + .../fontawesome-free/svgs/solid/heading.svg | 1 + .../svgs/solid/headphones-alt.svg | 1 + .../svgs/solid/headphones.svg | 1 + .../fontawesome-free/svgs/solid/headset.svg | 1 + .../svgs/solid/heart-broken.svg | 1 + .../fontawesome-free/svgs/solid/heart.svg | 1 + .../fontawesome-free/svgs/solid/heartbeat.svg | 1 + .../svgs/solid/helicopter.svg | 1 + .../svgs/solid/highlighter.svg | 1 + .../fontawesome-free/svgs/solid/hiking.svg | 1 + .../fontawesome-free/svgs/solid/hippo.svg | 1 + .../fontawesome-free/svgs/solid/history.svg | 1 + .../svgs/solid/hockey-puck.svg | 1 + .../svgs/solid/holly-berry.svg | 1 + .../fontawesome-free/svgs/solid/home.svg | 1 + .../svgs/solid/horse-head.svg | 1 + .../fontawesome-free/svgs/solid/horse.svg | 1 + .../svgs/solid/hospital-alt.svg | 1 + .../svgs/solid/hospital-symbol.svg | 1 + .../svgs/solid/hospital-user.svg | 1 + .../fontawesome-free/svgs/solid/hospital.svg | 1 + .../fontawesome-free/svgs/solid/hot-tub.svg | 1 + .../fontawesome-free/svgs/solid/hotdog.svg | 1 + .../fontawesome-free/svgs/solid/hotel.svg | 1 + .../svgs/solid/hourglass-end.svg | 1 + .../svgs/solid/hourglass-half.svg | 1 + .../svgs/solid/hourglass-start.svg | 1 + .../fontawesome-free/svgs/solid/hourglass.svg | 1 + .../svgs/solid/house-damage.svg | 1 + .../svgs/solid/house-user.svg | 1 + .../fontawesome-free/svgs/solid/hryvnia.svg | 1 + .../fontawesome-free/svgs/solid/i-cursor.svg | 1 + .../fontawesome-free/svgs/solid/ice-cream.svg | 1 + .../fontawesome-free/svgs/solid/icicles.svg | 1 + .../fontawesome-free/svgs/solid/icons.svg | 1 + .../fontawesome-free/svgs/solid/id-badge.svg | 1 + .../svgs/solid/id-card-alt.svg | 1 + .../fontawesome-free/svgs/solid/id-card.svg | 1 + .../fontawesome-free/svgs/solid/igloo.svg | 1 + .../fontawesome-free/svgs/solid/image.svg | 1 + .../fontawesome-free/svgs/solid/images.svg | 1 + .../fontawesome-free/svgs/solid/inbox.svg | 1 + .../fontawesome-free/svgs/solid/indent.svg | 1 + .../fontawesome-free/svgs/solid/industry.svg | 1 + .../fontawesome-free/svgs/solid/infinity.svg | 1 + .../svgs/solid/info-circle.svg | 1 + .../fontawesome-free/svgs/solid/info.svg | 1 + .../fontawesome-free/svgs/solid/italic.svg | 1 + .../fontawesome-free/svgs/solid/jedi.svg | 1 + .../fontawesome-free/svgs/solid/joint.svg | 1 + .../svgs/solid/journal-whills.svg | 1 + .../fontawesome-free/svgs/solid/kaaba.svg | 1 + .../fontawesome-free/svgs/solid/key.svg | 1 + .../fontawesome-free/svgs/solid/keyboard.svg | 1 + .../fontawesome-free/svgs/solid/khanda.svg | 1 + .../fontawesome-free/svgs/solid/kiss-beam.svg | 1 + .../svgs/solid/kiss-wink-heart.svg | 1 + .../fontawesome-free/svgs/solid/kiss.svg | 1 + .../fontawesome-free/svgs/solid/kiwi-bird.svg | 1 + .../fontawesome-free/svgs/solid/landmark.svg | 1 + .../fontawesome-free/svgs/solid/language.svg | 1 + .../svgs/solid/laptop-code.svg | 1 + .../svgs/solid/laptop-house.svg | 1 + .../svgs/solid/laptop-medical.svg | 1 + .../fontawesome-free/svgs/solid/laptop.svg | 1 + .../svgs/solid/laugh-beam.svg | 1 + .../svgs/solid/laugh-squint.svg | 1 + .../svgs/solid/laugh-wink.svg | 1 + .../fontawesome-free/svgs/solid/laugh.svg | 1 + .../svgs/solid/layer-group.svg | 1 + .../fontawesome-free/svgs/solid/leaf.svg | 1 + .../fontawesome-free/svgs/solid/lemon.svg | 1 + .../svgs/solid/less-than-equal.svg | 1 + .../fontawesome-free/svgs/solid/less-than.svg | 1 + .../svgs/solid/level-down-alt.svg | 1 + .../svgs/solid/level-up-alt.svg | 1 + .../fontawesome-free/svgs/solid/life-ring.svg | 1 + .../fontawesome-free/svgs/solid/lightbulb.svg | 1 + .../fontawesome-free/svgs/solid/link.svg | 1 + .../fontawesome-free/svgs/solid/lira-sign.svg | 1 + .../fontawesome-free/svgs/solid/list-alt.svg | 1 + .../fontawesome-free/svgs/solid/list-ol.svg | 1 + .../fontawesome-free/svgs/solid/list-ul.svg | 1 + .../fontawesome-free/svgs/solid/list.svg | 1 + .../svgs/solid/location-arrow.svg | 1 + .../fontawesome-free/svgs/solid/lock-open.svg | 1 + .../fontawesome-free/svgs/solid/lock.svg | 1 + .../svgs/solid/long-arrow-alt-down.svg | 1 + .../svgs/solid/long-arrow-alt-left.svg | 1 + .../svgs/solid/long-arrow-alt-right.svg | 1 + .../svgs/solid/long-arrow-alt-up.svg | 1 + .../svgs/solid/low-vision.svg | 1 + .../svgs/solid/luggage-cart.svg | 1 + .../svgs/solid/lungs-virus.svg | 1 + .../fontawesome-free/svgs/solid/lungs.svg | 1 + .../fontawesome-free/svgs/solid/magic.svg | 1 + .../fontawesome-free/svgs/solid/magnet.svg | 1 + .../fontawesome-free/svgs/solid/mail-bulk.svg | 1 + .../fontawesome-free/svgs/solid/male.svg | 1 + .../svgs/solid/map-marked-alt.svg | 1 + .../svgs/solid/map-marked.svg | 1 + .../svgs/solid/map-marker-alt.svg | 1 + .../svgs/solid/map-marker.svg | 1 + .../fontawesome-free/svgs/solid/map-pin.svg | 1 + .../fontawesome-free/svgs/solid/map-signs.svg | 1 + .../fontawesome-free/svgs/solid/map.svg | 1 + .../fontawesome-free/svgs/solid/marker.svg | 1 + .../svgs/solid/mars-double.svg | 1 + .../svgs/solid/mars-stroke-h.svg | 1 + .../svgs/solid/mars-stroke-v.svg | 1 + .../svgs/solid/mars-stroke.svg | 1 + .../fontawesome-free/svgs/solid/mars.svg | 1 + .../fontawesome-free/svgs/solid/mask.svg | 1 + .../fontawesome-free/svgs/solid/medal.svg | 1 + .../fontawesome-free/svgs/solid/medkit.svg | 1 + .../fontawesome-free/svgs/solid/meh-blank.svg | 1 + .../svgs/solid/meh-rolling-eyes.svg | 1 + .../fontawesome-free/svgs/solid/meh.svg | 1 + .../fontawesome-free/svgs/solid/memory.svg | 1 + .../fontawesome-free/svgs/solid/menorah.svg | 1 + .../fontawesome-free/svgs/solid/mercury.svg | 1 + .../fontawesome-free/svgs/solid/meteor.svg | 1 + .../fontawesome-free/svgs/solid/microchip.svg | 1 + .../svgs/solid/microphone-alt-slash.svg | 1 + .../svgs/solid/microphone-alt.svg | 1 + .../svgs/solid/microphone-slash.svg | 1 + .../svgs/solid/microphone.svg | 1 + .../svgs/solid/microscope.svg | 1 + .../svgs/solid/minus-circle.svg | 1 + .../svgs/solid/minus-square.svg | 1 + .../fontawesome-free/svgs/solid/minus.svg | 1 + .../fontawesome-free/svgs/solid/mitten.svg | 1 + .../svgs/solid/mobile-alt.svg | 1 + .../fontawesome-free/svgs/solid/mobile.svg | 1 + .../svgs/solid/money-bill-alt.svg | 1 + .../svgs/solid/money-bill-wave-alt.svg | 1 + .../svgs/solid/money-bill-wave.svg | 1 + .../svgs/solid/money-bill.svg | 1 + .../svgs/solid/money-check-alt.svg | 1 + .../svgs/solid/money-check.svg | 1 + .../fontawesome-free/svgs/solid/monument.svg | 1 + .../fontawesome-free/svgs/solid/moon.svg | 1 + .../svgs/solid/mortar-pestle.svg | 1 + .../fontawesome-free/svgs/solid/mosque.svg | 1 + .../svgs/solid/motorcycle.svg | 1 + .../fontawesome-free/svgs/solid/mountain.svg | 1 + .../svgs/solid/mouse-pointer.svg | 1 + .../fontawesome-free/svgs/solid/mouse.svg | 1 + .../fontawesome-free/svgs/solid/mug-hot.svg | 1 + .../fontawesome-free/svgs/solid/music.svg | 1 + .../svgs/solid/network-wired.svg | 1 + .../fontawesome-free/svgs/solid/neuter.svg | 1 + .../fontawesome-free/svgs/solid/newspaper.svg | 1 + .../fontawesome-free/svgs/solid/not-equal.svg | 1 + .../svgs/solid/notes-medical.svg | 1 + .../svgs/solid/object-group.svg | 1 + .../svgs/solid/object-ungroup.svg | 1 + .../fontawesome-free/svgs/solid/oil-can.svg | 1 + .../vendor/fontawesome-free/svgs/solid/om.svg | 1 + .../fontawesome-free/svgs/solid/otter.svg | 1 + .../fontawesome-free/svgs/solid/outdent.svg | 1 + .../fontawesome-free/svgs/solid/pager.svg | 1 + .../svgs/solid/paint-brush.svg | 1 + .../svgs/solid/paint-roller.svg | 1 + .../fontawesome-free/svgs/solid/palette.svg | 1 + .../fontawesome-free/svgs/solid/pallet.svg | 1 + .../svgs/solid/paper-plane.svg | 1 + .../fontawesome-free/svgs/solid/paperclip.svg | 1 + .../svgs/solid/parachute-box.svg | 1 + .../fontawesome-free/svgs/solid/paragraph.svg | 1 + .../fontawesome-free/svgs/solid/parking.svg | 1 + .../fontawesome-free/svgs/solid/passport.svg | 1 + .../svgs/solid/pastafarianism.svg | 1 + .../fontawesome-free/svgs/solid/paste.svg | 1 + .../svgs/solid/pause-circle.svg | 1 + .../fontawesome-free/svgs/solid/pause.svg | 1 + .../fontawesome-free/svgs/solid/paw.svg | 1 + .../fontawesome-free/svgs/solid/peace.svg | 1 + .../fontawesome-free/svgs/solid/pen-alt.svg | 1 + .../fontawesome-free/svgs/solid/pen-fancy.svg | 1 + .../fontawesome-free/svgs/solid/pen-nib.svg | 1 + .../svgs/solid/pen-square.svg | 1 + .../fontawesome-free/svgs/solid/pen.svg | 1 + .../svgs/solid/pencil-alt.svg | 1 + .../svgs/solid/pencil-ruler.svg | 1 + .../svgs/solid/people-arrows.svg | 1 + .../svgs/solid/people-carry.svg | 1 + .../svgs/solid/pepper-hot.svg | 1 + .../fontawesome-free/svgs/solid/percent.svg | 1 + .../svgs/solid/percentage.svg | 1 + .../svgs/solid/person-booth.svg | 1 + .../fontawesome-free/svgs/solid/phone-alt.svg | 1 + .../svgs/solid/phone-slash.svg | 1 + .../svgs/solid/phone-square-alt.svg | 1 + .../svgs/solid/phone-square.svg | 1 + .../svgs/solid/phone-volume.svg | 1 + .../fontawesome-free/svgs/solid/phone.svg | 1 + .../svgs/solid/photo-video.svg | 1 + .../svgs/solid/piggy-bank.svg | 1 + .../fontawesome-free/svgs/solid/pills.svg | 1 + .../svgs/solid/pizza-slice.svg | 1 + .../svgs/solid/place-of-worship.svg | 1 + .../svgs/solid/plane-arrival.svg | 1 + .../svgs/solid/plane-departure.svg | 1 + .../svgs/solid/plane-slash.svg | 1 + .../fontawesome-free/svgs/solid/plane.svg | 1 + .../svgs/solid/play-circle.svg | 1 + .../fontawesome-free/svgs/solid/play.svg | 1 + .../fontawesome-free/svgs/solid/plug.svg | 1 + .../svgs/solid/plus-circle.svg | 1 + .../svgs/solid/plus-square.svg | 1 + .../fontawesome-free/svgs/solid/plus.svg | 1 + .../fontawesome-free/svgs/solid/podcast.svg | 1 + .../fontawesome-free/svgs/solid/poll-h.svg | 1 + .../fontawesome-free/svgs/solid/poll.svg | 1 + .../fontawesome-free/svgs/solid/poo-storm.svg | 1 + .../fontawesome-free/svgs/solid/poo.svg | 1 + .../fontawesome-free/svgs/solid/poop.svg | 1 + .../fontawesome-free/svgs/solid/portrait.svg | 1 + .../svgs/solid/pound-sign.svg | 1 + .../fontawesome-free/svgs/solid/power-off.svg | 1 + .../fontawesome-free/svgs/solid/pray.svg | 1 + .../svgs/solid/praying-hands.svg | 1 + .../svgs/solid/prescription-bottle-alt.svg | 1 + .../svgs/solid/prescription-bottle.svg | 1 + .../svgs/solid/prescription.svg | 1 + .../fontawesome-free/svgs/solid/print.svg | 1 + .../svgs/solid/procedures.svg | 1 + .../svgs/solid/project-diagram.svg | 1 + .../svgs/solid/pump-medical.svg | 1 + .../fontawesome-free/svgs/solid/pump-soap.svg | 1 + .../svgs/solid/puzzle-piece.svg | 1 + .../fontawesome-free/svgs/solid/qrcode.svg | 1 + .../svgs/solid/question-circle.svg | 1 + .../fontawesome-free/svgs/solid/question.svg | 1 + .../fontawesome-free/svgs/solid/quidditch.svg | 1 + .../svgs/solid/quote-left.svg | 1 + .../svgs/solid/quote-right.svg | 1 + .../fontawesome-free/svgs/solid/quran.svg | 1 + .../svgs/solid/radiation-alt.svg | 1 + .../fontawesome-free/svgs/solid/radiation.svg | 1 + .../fontawesome-free/svgs/solid/rainbow.svg | 1 + .../fontawesome-free/svgs/solid/random.svg | 1 + .../fontawesome-free/svgs/solid/receipt.svg | 1 + .../svgs/solid/record-vinyl.svg | 1 + .../fontawesome-free/svgs/solid/recycle.svg | 1 + .../fontawesome-free/svgs/solid/redo-alt.svg | 1 + .../fontawesome-free/svgs/solid/redo.svg | 1 + .../svgs/solid/registered.svg | 1 + .../svgs/solid/remove-format.svg | 1 + .../fontawesome-free/svgs/solid/reply-all.svg | 1 + .../fontawesome-free/svgs/solid/reply.svg | 1 + .../svgs/solid/republican.svg | 1 + .../fontawesome-free/svgs/solid/restroom.svg | 1 + .../fontawesome-free/svgs/solid/retweet.svg | 1 + .../fontawesome-free/svgs/solid/ribbon.svg | 1 + .../fontawesome-free/svgs/solid/ring.svg | 1 + .../fontawesome-free/svgs/solid/road.svg | 1 + .../fontawesome-free/svgs/solid/robot.svg | 1 + .../fontawesome-free/svgs/solid/rocket.svg | 1 + .../fontawesome-free/svgs/solid/route.svg | 1 + .../svgs/solid/rss-square.svg | 1 + .../fontawesome-free/svgs/solid/rss.svg | 1 + .../svgs/solid/ruble-sign.svg | 1 + .../svgs/solid/ruler-combined.svg | 1 + .../svgs/solid/ruler-horizontal.svg | 1 + .../svgs/solid/ruler-vertical.svg | 1 + .../fontawesome-free/svgs/solid/ruler.svg | 1 + .../fontawesome-free/svgs/solid/running.svg | 1 + .../svgs/solid/rupee-sign.svg | 1 + .../fontawesome-free/svgs/solid/sad-cry.svg | 1 + .../fontawesome-free/svgs/solid/sad-tear.svg | 1 + .../svgs/solid/satellite-dish.svg | 1 + .../fontawesome-free/svgs/solid/satellite.svg | 1 + .../fontawesome-free/svgs/solid/save.svg | 1 + .../fontawesome-free/svgs/solid/school.svg | 1 + .../svgs/solid/screwdriver.svg | 1 + .../fontawesome-free/svgs/solid/scroll.svg | 1 + .../fontawesome-free/svgs/solid/sd-card.svg | 1 + .../svgs/solid/search-dollar.svg | 1 + .../svgs/solid/search-location.svg | 1 + .../svgs/solid/search-minus.svg | 1 + .../svgs/solid/search-plus.svg | 1 + .../fontawesome-free/svgs/solid/search.svg | 1 + .../fontawesome-free/svgs/solid/seedling.svg | 1 + .../fontawesome-free/svgs/solid/server.svg | 1 + .../fontawesome-free/svgs/solid/shapes.svg | 1 + .../svgs/solid/share-alt-square.svg | 1 + .../fontawesome-free/svgs/solid/share-alt.svg | 1 + .../svgs/solid/share-square.svg | 1 + .../fontawesome-free/svgs/solid/share.svg | 1 + .../svgs/solid/shekel-sign.svg | 1 + .../svgs/solid/shield-alt.svg | 1 + .../svgs/solid/shield-virus.svg | 1 + .../fontawesome-free/svgs/solid/ship.svg | 1 + .../svgs/solid/shipping-fast.svg | 1 + .../svgs/solid/shoe-prints.svg | 1 + .../svgs/solid/shopping-bag.svg | 1 + .../svgs/solid/shopping-basket.svg | 1 + .../svgs/solid/shopping-cart.svg | 1 + .../fontawesome-free/svgs/solid/shower.svg | 1 + .../svgs/solid/shuttle-van.svg | 1 + .../svgs/solid/sign-in-alt.svg | 1 + .../svgs/solid/sign-language.svg | 1 + .../svgs/solid/sign-out-alt.svg | 1 + .../fontawesome-free/svgs/solid/sign.svg | 1 + .../fontawesome-free/svgs/solid/signal.svg | 1 + .../fontawesome-free/svgs/solid/signature.svg | 1 + .../fontawesome-free/svgs/solid/sim-card.svg | 1 + .../fontawesome-free/svgs/solid/sink.svg | 1 + .../fontawesome-free/svgs/solid/sitemap.svg | 1 + .../fontawesome-free/svgs/solid/skating.svg | 1 + .../svgs/solid/skiing-nordic.svg | 1 + .../fontawesome-free/svgs/solid/skiing.svg | 1 + .../svgs/solid/skull-crossbones.svg | 1 + .../fontawesome-free/svgs/solid/skull.svg | 1 + .../fontawesome-free/svgs/solid/slash.svg | 1 + .../fontawesome-free/svgs/solid/sleigh.svg | 1 + .../fontawesome-free/svgs/solid/sliders-h.svg | 1 + .../svgs/solid/smile-beam.svg | 1 + .../svgs/solid/smile-wink.svg | 1 + .../fontawesome-free/svgs/solid/smile.svg | 1 + .../fontawesome-free/svgs/solid/smog.svg | 1 + .../svgs/solid/smoking-ban.svg | 1 + .../fontawesome-free/svgs/solid/smoking.svg | 1 + .../fontawesome-free/svgs/solid/sms.svg | 1 + .../svgs/solid/snowboarding.svg | 1 + .../fontawesome-free/svgs/solid/snowflake.svg | 1 + .../fontawesome-free/svgs/solid/snowman.svg | 1 + .../fontawesome-free/svgs/solid/snowplow.svg | 1 + .../fontawesome-free/svgs/solid/soap.svg | 1 + .../fontawesome-free/svgs/solid/socks.svg | 1 + .../svgs/solid/solar-panel.svg | 1 + .../svgs/solid/sort-alpha-down-alt.svg | 1 + .../svgs/solid/sort-alpha-down.svg | 1 + .../svgs/solid/sort-alpha-up-alt.svg | 1 + .../svgs/solid/sort-alpha-up.svg | 1 + .../svgs/solid/sort-amount-down-alt.svg | 1 + .../svgs/solid/sort-amount-down.svg | 1 + .../svgs/solid/sort-amount-up-alt.svg | 1 + .../svgs/solid/sort-amount-up.svg | 1 + .../fontawesome-free/svgs/solid/sort-down.svg | 1 + .../svgs/solid/sort-numeric-down-alt.svg | 1 + .../svgs/solid/sort-numeric-down.svg | 1 + .../svgs/solid/sort-numeric-up-alt.svg | 1 + .../svgs/solid/sort-numeric-up.svg | 1 + .../fontawesome-free/svgs/solid/sort-up.svg | 1 + .../fontawesome-free/svgs/solid/sort.svg | 1 + .../fontawesome-free/svgs/solid/spa.svg | 1 + .../svgs/solid/space-shuttle.svg | 1 + .../svgs/solid/spell-check.svg | 1 + .../fontawesome-free/svgs/solid/spider.svg | 1 + .../fontawesome-free/svgs/solid/spinner.svg | 1 + .../fontawesome-free/svgs/solid/splotch.svg | 1 + .../fontawesome-free/svgs/solid/spray-can.svg | 1 + .../svgs/solid/square-full.svg | 1 + .../svgs/solid/square-root-alt.svg | 1 + .../fontawesome-free/svgs/solid/square.svg | 1 + .../fontawesome-free/svgs/solid/stamp.svg | 1 + .../svgs/solid/star-and-crescent.svg | 1 + .../svgs/solid/star-half-alt.svg | 1 + .../fontawesome-free/svgs/solid/star-half.svg | 1 + .../svgs/solid/star-of-david.svg | 1 + .../svgs/solid/star-of-life.svg | 1 + .../fontawesome-free/svgs/solid/star.svg | 1 + .../svgs/solid/step-backward.svg | 1 + .../svgs/solid/step-forward.svg | 1 + .../svgs/solid/stethoscope.svg | 1 + .../svgs/solid/sticky-note.svg | 1 + .../svgs/solid/stop-circle.svg | 1 + .../fontawesome-free/svgs/solid/stop.svg | 1 + .../svgs/solid/stopwatch-20.svg | 1 + .../fontawesome-free/svgs/solid/stopwatch.svg | 1 + .../svgs/solid/store-alt-slash.svg | 1 + .../fontawesome-free/svgs/solid/store-alt.svg | 1 + .../svgs/solid/store-slash.svg | 1 + .../fontawesome-free/svgs/solid/store.svg | 1 + .../fontawesome-free/svgs/solid/stream.svg | 1 + .../svgs/solid/street-view.svg | 1 + .../svgs/solid/strikethrough.svg | 1 + .../svgs/solid/stroopwafel.svg | 1 + .../fontawesome-free/svgs/solid/subscript.svg | 1 + .../fontawesome-free/svgs/solid/subway.svg | 1 + .../svgs/solid/suitcase-rolling.svg | 1 + .../fontawesome-free/svgs/solid/suitcase.svg | 1 + .../fontawesome-free/svgs/solid/sun.svg | 1 + .../svgs/solid/superscript.svg | 1 + .../fontawesome-free/svgs/solid/surprise.svg | 1 + .../svgs/solid/swatchbook.svg | 1 + .../fontawesome-free/svgs/solid/swimmer.svg | 1 + .../svgs/solid/swimming-pool.svg | 1 + .../fontawesome-free/svgs/solid/synagogue.svg | 1 + .../fontawesome-free/svgs/solid/sync-alt.svg | 1 + .../fontawesome-free/svgs/solid/sync.svg | 1 + .../fontawesome-free/svgs/solid/syringe.svg | 1 + .../svgs/solid/table-tennis.svg | 1 + .../fontawesome-free/svgs/solid/table.svg | 1 + .../svgs/solid/tablet-alt.svg | 1 + .../fontawesome-free/svgs/solid/tablet.svg | 1 + .../fontawesome-free/svgs/solid/tablets.svg | 1 + .../svgs/solid/tachometer-alt.svg | 1 + .../fontawesome-free/svgs/solid/tag.svg | 1 + .../fontawesome-free/svgs/solid/tags.svg | 1 + .../fontawesome-free/svgs/solid/tape.svg | 1 + .../fontawesome-free/svgs/solid/tasks.svg | 1 + .../fontawesome-free/svgs/solid/taxi.svg | 1 + .../svgs/solid/teeth-open.svg | 1 + .../fontawesome-free/svgs/solid/teeth.svg | 1 + .../svgs/solid/temperature-high.svg | 1 + .../svgs/solid/temperature-low.svg | 1 + .../fontawesome-free/svgs/solid/tenge.svg | 1 + .../fontawesome-free/svgs/solid/terminal.svg | 1 + .../svgs/solid/text-height.svg | 1 + .../svgs/solid/text-width.svg | 1 + .../fontawesome-free/svgs/solid/th-large.svg | 1 + .../fontawesome-free/svgs/solid/th-list.svg | 1 + .../vendor/fontawesome-free/svgs/solid/th.svg | 1 + .../svgs/solid/theater-masks.svg | 1 + .../svgs/solid/thermometer-empty.svg | 1 + .../svgs/solid/thermometer-full.svg | 1 + .../svgs/solid/thermometer-half.svg | 1 + .../svgs/solid/thermometer-quarter.svg | 1 + .../svgs/solid/thermometer-three-quarters.svg | 1 + .../svgs/solid/thermometer.svg | 1 + .../svgs/solid/thumbs-down.svg | 1 + .../fontawesome-free/svgs/solid/thumbs-up.svg | 1 + .../fontawesome-free/svgs/solid/thumbtack.svg | 1 + .../svgs/solid/ticket-alt.svg | 1 + .../svgs/solid/times-circle.svg | 1 + .../fontawesome-free/svgs/solid/times.svg | 1 + .../svgs/solid/tint-slash.svg | 1 + .../fontawesome-free/svgs/solid/tint.svg | 1 + .../fontawesome-free/svgs/solid/tired.svg | 1 + .../svgs/solid/toggle-off.svg | 1 + .../fontawesome-free/svgs/solid/toggle-on.svg | 1 + .../svgs/solid/toilet-paper-slash.svg | 1 + .../svgs/solid/toilet-paper.svg | 1 + .../fontawesome-free/svgs/solid/toilet.svg | 1 + .../fontawesome-free/svgs/solid/toolbox.svg | 1 + .../fontawesome-free/svgs/solid/tools.svg | 1 + .../fontawesome-free/svgs/solid/tooth.svg | 1 + .../fontawesome-free/svgs/solid/torah.svg | 1 + .../svgs/solid/torii-gate.svg | 1 + .../fontawesome-free/svgs/solid/tractor.svg | 1 + .../fontawesome-free/svgs/solid/trademark.svg | 1 + .../svgs/solid/traffic-light.svg | 1 + .../fontawesome-free/svgs/solid/trailer.svg | 1 + .../fontawesome-free/svgs/solid/train.svg | 1 + .../fontawesome-free/svgs/solid/tram.svg | 1 + .../svgs/solid/transgender-alt.svg | 1 + .../svgs/solid/transgender.svg | 1 + .../fontawesome-free/svgs/solid/trash-alt.svg | 1 + .../svgs/solid/trash-restore-alt.svg | 1 + .../svgs/solid/trash-restore.svg | 1 + .../fontawesome-free/svgs/solid/trash.svg | 1 + .../fontawesome-free/svgs/solid/tree.svg | 1 + .../fontawesome-free/svgs/solid/trophy.svg | 1 + .../svgs/solid/truck-loading.svg | 1 + .../svgs/solid/truck-monster.svg | 1 + .../svgs/solid/truck-moving.svg | 1 + .../svgs/solid/truck-pickup.svg | 1 + .../fontawesome-free/svgs/solid/truck.svg | 1 + .../fontawesome-free/svgs/solid/tshirt.svg | 1 + .../fontawesome-free/svgs/solid/tty.svg | 1 + .../vendor/fontawesome-free/svgs/solid/tv.svg | 1 + .../svgs/solid/umbrella-beach.svg | 1 + .../fontawesome-free/svgs/solid/umbrella.svg | 1 + .../fontawesome-free/svgs/solid/underline.svg | 1 + .../fontawesome-free/svgs/solid/undo-alt.svg | 1 + .../fontawesome-free/svgs/solid/undo.svg | 1 + .../svgs/solid/universal-access.svg | 1 + .../svgs/solid/university.svg | 1 + .../fontawesome-free/svgs/solid/unlink.svg | 1 + .../svgs/solid/unlock-alt.svg | 1 + .../fontawesome-free/svgs/solid/unlock.svg | 1 + .../fontawesome-free/svgs/solid/upload.svg | 1 + .../svgs/solid/user-alt-slash.svg | 1 + .../fontawesome-free/svgs/solid/user-alt.svg | 1 + .../svgs/solid/user-astronaut.svg | 1 + .../svgs/solid/user-check.svg | 1 + .../svgs/solid/user-circle.svg | 1 + .../svgs/solid/user-clock.svg | 1 + .../fontawesome-free/svgs/solid/user-cog.svg | 1 + .../fontawesome-free/svgs/solid/user-edit.svg | 1 + .../svgs/solid/user-friends.svg | 1 + .../svgs/solid/user-graduate.svg | 1 + .../svgs/solid/user-injured.svg | 1 + .../fontawesome-free/svgs/solid/user-lock.svg | 1 + .../fontawesome-free/svgs/solid/user-md.svg | 1 + .../svgs/solid/user-minus.svg | 1 + .../svgs/solid/user-ninja.svg | 1 + .../svgs/solid/user-nurse.svg | 1 + .../fontawesome-free/svgs/solid/user-plus.svg | 1 + .../svgs/solid/user-secret.svg | 1 + .../svgs/solid/user-shield.svg | 1 + .../svgs/solid/user-slash.svg | 1 + .../fontawesome-free/svgs/solid/user-tag.svg | 1 + .../fontawesome-free/svgs/solid/user-tie.svg | 1 + .../svgs/solid/user-times.svg | 1 + .../fontawesome-free/svgs/solid/user.svg | 1 + .../fontawesome-free/svgs/solid/users-cog.svg | 1 + .../svgs/solid/users-slash.svg | 1 + .../fontawesome-free/svgs/solid/users.svg | 1 + .../svgs/solid/utensil-spoon.svg | 1 + .../fontawesome-free/svgs/solid/utensils.svg | 1 + .../svgs/solid/vector-square.svg | 1 + .../svgs/solid/venus-double.svg | 1 + .../svgs/solid/venus-mars.svg | 1 + .../fontawesome-free/svgs/solid/venus.svg | 1 + .../svgs/solid/vest-patches.svg | 1 + .../fontawesome-free/svgs/solid/vest.svg | 1 + .../fontawesome-free/svgs/solid/vial.svg | 1 + .../fontawesome-free/svgs/solid/vials.svg | 1 + .../svgs/solid/video-slash.svg | 1 + .../fontawesome-free/svgs/solid/video.svg | 1 + .../fontawesome-free/svgs/solid/vihara.svg | 1 + .../svgs/solid/virus-slash.svg | 1 + .../fontawesome-free/svgs/solid/virus.svg | 1 + .../fontawesome-free/svgs/solid/viruses.svg | 1 + .../fontawesome-free/svgs/solid/voicemail.svg | 1 + .../svgs/solid/volleyball-ball.svg | 1 + .../svgs/solid/volume-down.svg | 1 + .../svgs/solid/volume-mute.svg | 1 + .../svgs/solid/volume-off.svg | 1 + .../fontawesome-free/svgs/solid/volume-up.svg | 1 + .../fontawesome-free/svgs/solid/vote-yea.svg | 1 + .../svgs/solid/vr-cardboard.svg | 1 + .../fontawesome-free/svgs/solid/walking.svg | 1 + .../fontawesome-free/svgs/solid/wallet.svg | 1 + .../fontawesome-free/svgs/solid/warehouse.svg | 1 + .../fontawesome-free/svgs/solid/water.svg | 1 + .../svgs/solid/wave-square.svg | 1 + .../svgs/solid/weight-hanging.svg | 1 + .../fontawesome-free/svgs/solid/weight.svg | 1 + .../svgs/solid/wheelchair.svg | 1 + .../fontawesome-free/svgs/solid/wifi.svg | 1 + .../fontawesome-free/svgs/solid/wind.svg | 1 + .../svgs/solid/window-close.svg | 1 + .../svgs/solid/window-maximize.svg | 1 + .../svgs/solid/window-minimize.svg | 1 + .../svgs/solid/window-restore.svg | 1 + .../svgs/solid/wine-bottle.svg | 1 + .../svgs/solid/wine-glass-alt.svg | 1 + .../svgs/solid/wine-glass.svg | 1 + .../fontawesome-free/svgs/solid/won-sign.svg | 1 + .../fontawesome-free/svgs/solid/wrench.svg | 1 + .../fontawesome-free/svgs/solid/x-ray.svg | 1 + .../fontawesome-free/svgs/solid/yen-sign.svg | 1 + .../fontawesome-free/svgs/solid/yin-yang.svg | 1 + .../webfonts/fa-brands-400.eot | Bin 0 -> 134346 bytes .../webfonts/fa-brands-400.svg | 3717 + .../webfonts/fa-brands-400.ttf | Bin 0 -> 134040 bytes .../webfonts/fa-brands-400.woff | Bin 0 -> 90060 bytes .../webfonts/fa-brands-400.woff2 | Bin 0 -> 76764 bytes .../webfonts/fa-regular-400.eot | Bin 0 -> 34034 bytes .../webfonts/fa-regular-400.svg | 801 + .../webfonts/fa-regular-400.ttf | Bin 0 -> 33736 bytes .../webfonts/fa-regular-400.woff | Bin 0 -> 16276 bytes .../webfonts/fa-regular-400.woff2 | Bin 0 -> 13276 bytes .../webfonts/fa-solid-900.eot | Bin 0 -> 203030 bytes .../webfonts/fa-solid-900.svg | 5034 + .../webfonts/fa-solid-900.ttf | Bin 0 -> 202744 bytes .../webfonts/fa-solid-900.woff | Bin 0 -> 101652 bytes .../webfonts/fa-solid-900.woff2 | Bin 0 -> 78196 bytes .../jquery.easing.compatibility.js | 59 + .../css/vendor/jquery-easing/jquery.easing.js | 166 + .../vendor/jquery-easing/jquery.easing.min.js | 1 + admin/css/vendor/jquery/jquery.js | 10881 ++ admin/css/vendor/jquery/jquery.min.js | 2 + admin/css/vendor/jquery/jquery.min.map | 1 + admin/css/vendor/jquery/jquery.slim.js | 8782 ++ admin/css/vendor/jquery/jquery.slim.min.js | 2 + admin/css/vendor/jquery/jquery.slim.min.map | 1 + admin/gejaladaftar.php | 46 + admin/gejalaedit.php | 41 + admin/gejalahapus.php | 8 + admin/gejalatambah.php | 36 + admin/index.php | 262 + admin/logout.php | 4 + admin/nilaifuzzydaftar.php | 42 + admin/nilaifuzzyedit.php | 40 + admin/nilaifuzzyhapus.php | 6 + admin/nilaifuzzytambah.php | 34 + admin/nilaigejalapenyakitdaftar.php | 65 + admin/nilaigejalapenyakitedit.php | 73 + admin/nilaigejalapenyakithapus.php | 5 + admin/nilaigejalapenyakittambah.php | 60 + admin/penyakitdaftar.php | 50 + admin/penyakitedit.php | 52 + admin/penyakithapus.php | 8 + admin/penyakittambah.php | 48 + admin/ruledaftar.php | 183 + admin/ruleedit.php | 70 + admin/rulehapus.php | 8 + admin/ruletambah.php | 59 + database/sistempakarmamdani.sql | 311 + diagnosis.php | 296 + diagnosislama.php | 253 + footer.php | 78 + foto/Untitled.png | Bin 0 -> 1573 bytes foto/logo.png | Bin 0 -> 106109 bytes foto/tembakau.jpg | Bin 0 -> 866046 bytes foto/tembakau1.jpg | Bin 0 -> 315836 bytes header.php | 180 + home/css/gaya.css | 11531 ++ home/css/style.css | 217 + home/img/banner1.jpg | Bin 0 -> 1296877 bytes home/img/banner2.jpg | Bin 0 -> 1296877 bytes home/js/main.js | 35 + home/lib/animate/animate.css | 1579 + home/lib/animate/animate.min.css | 11 + home/lib/counterup/counterup.min.js | 11 + home/lib/easing/easing.js | 168 + home/lib/easing/easing.min.js | 1 + home/lib/lightbox/css/lightbox.css | 207 + home/lib/lightbox/css/lightbox.min.css | 1 + home/lib/lightbox/images/close.png | Bin 0 -> 280 bytes home/lib/lightbox/images/loading.gif | Bin 0 -> 8476 bytes home/lib/lightbox/images/next.png | Bin 0 -> 1350 bytes home/lib/lightbox/images/prev.png | Bin 0 -> 1360 bytes home/lib/lightbox/js/lightbox.js | 519 + home/lib/lightbox/js/lightbox.min.js | 15 + home/lib/lightbox/links.php | 6 + home/lib/owlcarousel/LICENSE | 23 + home/lib/owlcarousel/assets/ajax-loader.gif | Bin 0 -> 3208 bytes home/lib/owlcarousel/assets/owl.carousel.css | 170 + .../owlcarousel/assets/owl.carousel.min.css | 6 + .../owlcarousel/assets/owl.theme.default.css | 50 + .../assets/owl.theme.default.min.css | 6 + .../owlcarousel/assets/owl.theme.green.css | 50 + .../assets/owl.theme.green.min.css | 6 + .../lib/owlcarousel/assets/owl.video.play.png | Bin 0 -> 4976 bytes home/lib/owlcarousel/owl.carousel.js | 3275 + home/lib/owlcarousel/owl.carousel.min.js | 7 + home/lib/parallax/parallax.min.js | 6 + home/lib/waypoints/links.php | 5 + home/lib/waypoints/waypoints.min.js | 7 + home/lib/wow/wow.js | 542 + home/lib/wow/wow.min.js | 3 + home/scss/bootstrap.scss | 32 + home/scss/bootstrap/scss/_accordion.scss | 118 + home/scss/bootstrap/scss/_alert.scss | 57 + home/scss/bootstrap/scss/_badge.scss | 29 + home/scss/bootstrap/scss/_breadcrumb.scss | 28 + home/scss/bootstrap/scss/_button-group.scss | 139 + home/scss/bootstrap/scss/_buttons.scss | 111 + home/scss/bootstrap/scss/_card.scss | 215 + home/scss/bootstrap/scss/_carousel.scss | 229 + home/scss/bootstrap/scss/_close.scss | 40 + home/scss/bootstrap/scss/_containers.scss | 41 + home/scss/bootstrap/scss/_dropdown.scss | 240 + home/scss/bootstrap/scss/_forms.scss | 9 + home/scss/bootstrap/scss/_functions.scss | 205 + home/scss/bootstrap/scss/_grid.scss | 22 + home/scss/bootstrap/scss/_helpers.scss | 7 + home/scss/bootstrap/scss/_images.scss | 42 + home/scss/bootstrap/scss/_list-group.scss | 174 + home/scss/bootstrap/scss/_mixins.scss | 42 + home/scss/bootstrap/scss/_modal.scss | 228 + home/scss/bootstrap/scss/_nav.scss | 139 + home/scss/bootstrap/scss/_navbar.scss | 306 + home/scss/bootstrap/scss/_offcanvas.scss | 77 + home/scss/bootstrap/scss/_pagination.scss | 64 + home/scss/bootstrap/scss/_popover.scss | 158 + home/scss/bootstrap/scss/_progress.scss | 48 + home/scss/bootstrap/scss/_reboot.scss | 621 + home/scss/bootstrap/scss/_root.scss | 16 + home/scss/bootstrap/scss/_spinners.scss | 69 + home/scss/bootstrap/scss/_tables.scss | 150 + home/scss/bootstrap/scss/_toasts.scss | 51 + home/scss/bootstrap/scss/_tooltip.scss | 115 + home/scss/bootstrap/scss/_transitions.scss | 21 + home/scss/bootstrap/scss/_type.scss | 104 + home/scss/bootstrap/scss/_utilities.scss | 594 + home/scss/bootstrap/scss/_variables.scss | 1464 + home/scss/bootstrap/scss/bootstrap-grid.scss | 65 + .../scss/bootstrap/scss/bootstrap-reboot.scss | 15 + .../bootstrap/scss/bootstrap-utilities.scss | 18 + home/scss/bootstrap/scss/bootstrap.scss | 52 + .../scss/forms/_floating-labels.scss | 61 + .../bootstrap/scss/forms/_form-check.scss | 152 + .../bootstrap/scss/forms/_form-control.scss | 219 + .../bootstrap/scss/forms/_form-range.scss | 91 + .../bootstrap/scss/forms/_form-select.scss | 67 + .../scss/bootstrap/scss/forms/_form-text.scss | 11 + .../bootstrap/scss/forms/_input-group.scss | 121 + home/scss/bootstrap/scss/forms/_labels.scss | 36 + .../bootstrap/scss/forms/_validation.scss | 12 + .../bootstrap/scss/helpers/_clearfix.scss | 3 + .../scss/helpers/_colored-links.scss | 12 + .../bootstrap/scss/helpers/_position.scss | 30 + home/scss/bootstrap/scss/helpers/_ratio.scss | 26 + .../scss/helpers/_stretched-link.scss | 15 + .../scss/helpers/_text-truncation.scss | 7 + .../scss/helpers/_visually-hidden.scss | 8 + home/scss/bootstrap/scss/mixins/_alert.scss | 11 + .../bootstrap/scss/mixins/_border-radius.scss | 78 + .../bootstrap/scss/mixins/_box-shadow.scss | 18 + .../bootstrap/scss/mixins/_breakpoints.scss | 127 + home/scss/bootstrap/scss/mixins/_buttons.scss | 133 + home/scss/bootstrap/scss/mixins/_caret.scss | 64 + .../scss/bootstrap/scss/mixins/_clearfix.scss | 9 + .../bootstrap/scss/mixins/_color-scheme.scss | 7 + .../bootstrap/scss/mixins/_container.scss | 9 + .../bootstrap/scss/mixins/_deprecate.scss | 10 + home/scss/bootstrap/scss/mixins/_forms.scss | 137 + .../bootstrap/scss/mixins/_gradients.scss | 47 + home/scss/bootstrap/scss/mixins/_grid.scss | 125 + home/scss/bootstrap/scss/mixins/_image.scss | 16 + .../bootstrap/scss/mixins/_list-group.scss | 24 + home/scss/bootstrap/scss/mixins/_lists.scss | 7 + .../bootstrap/scss/mixins/_pagination.scss | 31 + .../bootstrap/scss/mixins/_reset-text.scss | 17 + home/scss/bootstrap/scss/mixins/_resize.scss | 6 + .../scss/mixins/_table-variants.scss | 21 + .../bootstrap/scss/mixins/_text-truncate.scss | 8 + .../bootstrap/scss/mixins/_transition.scss | 26 + .../bootstrap/scss/mixins/_utilities.scss | 68 + .../scss/mixins/_visually-hidden.scss | 29 + home/scss/bootstrap/scss/utilities/_api.scss | 47 + home/scss/bootstrap/scss/vendor/_rfs.scss | 312 + index.php | 32 + koneksi.php | 3 + login.php | 61 + logout.php | 6 + penyakit.php | 132 + 2310 files changed, 348051 insertions(+) create mode 100644 admin/assets/ckeditor/CHANGES.md create mode 100644 admin/assets/ckeditor/LICENSE.md create mode 100644 admin/assets/ckeditor/README.md create mode 100644 admin/assets/ckeditor/adapters/jquery.js create mode 100644 admin/assets/ckeditor/build-config.js create mode 100644 admin/assets/ckeditor/ckeditor.js create mode 100644 admin/assets/ckeditor/config.js create mode 100644 admin/assets/ckeditor/contents.css create mode 100644 admin/assets/ckeditor/lang/af.js create mode 100644 admin/assets/ckeditor/lang/ar.js create mode 100644 admin/assets/ckeditor/lang/az.js create mode 100644 admin/assets/ckeditor/lang/bg.js create mode 100644 admin/assets/ckeditor/lang/bn.js create mode 100644 admin/assets/ckeditor/lang/bs.js create mode 100644 admin/assets/ckeditor/lang/ca.js create mode 100644 admin/assets/ckeditor/lang/cs.js create mode 100644 admin/assets/ckeditor/lang/cy.js create mode 100644 admin/assets/ckeditor/lang/da.js create mode 100644 admin/assets/ckeditor/lang/de-ch.js create mode 100644 admin/assets/ckeditor/lang/de.js create mode 100644 admin/assets/ckeditor/lang/el.js create mode 100644 admin/assets/ckeditor/lang/en-au.js create mode 100644 admin/assets/ckeditor/lang/en-ca.js create mode 100644 admin/assets/ckeditor/lang/en-gb.js create mode 100644 admin/assets/ckeditor/lang/en.js create mode 100644 admin/assets/ckeditor/lang/eo.js create mode 100644 admin/assets/ckeditor/lang/es-mx.js create mode 100644 admin/assets/ckeditor/lang/es.js create mode 100644 admin/assets/ckeditor/lang/et.js create mode 100644 admin/assets/ckeditor/lang/eu.js create mode 100644 admin/assets/ckeditor/lang/fa.js create mode 100644 admin/assets/ckeditor/lang/fi.js create mode 100644 admin/assets/ckeditor/lang/fo.js create mode 100644 admin/assets/ckeditor/lang/fr-ca.js create mode 100644 admin/assets/ckeditor/lang/fr.js create mode 100644 admin/assets/ckeditor/lang/gl.js create mode 100644 admin/assets/ckeditor/lang/gu.js create mode 100644 admin/assets/ckeditor/lang/he.js create mode 100644 admin/assets/ckeditor/lang/hi.js create mode 100644 admin/assets/ckeditor/lang/hr.js create mode 100644 admin/assets/ckeditor/lang/hu.js create mode 100644 admin/assets/ckeditor/lang/id.js create mode 100644 admin/assets/ckeditor/lang/is.js create mode 100644 admin/assets/ckeditor/lang/it.js create mode 100644 admin/assets/ckeditor/lang/ja.js create mode 100644 admin/assets/ckeditor/lang/ka.js create mode 100644 admin/assets/ckeditor/lang/km.js create mode 100644 admin/assets/ckeditor/lang/ko.js create mode 100644 admin/assets/ckeditor/lang/ku.js create mode 100644 admin/assets/ckeditor/lang/lt.js create mode 100644 admin/assets/ckeditor/lang/lv.js create mode 100644 admin/assets/ckeditor/lang/mk.js create mode 100644 admin/assets/ckeditor/lang/mn.js create mode 100644 admin/assets/ckeditor/lang/ms.js create mode 100644 admin/assets/ckeditor/lang/nb.js create mode 100644 admin/assets/ckeditor/lang/nl.js create mode 100644 admin/assets/ckeditor/lang/no.js create mode 100644 admin/assets/ckeditor/lang/oc.js create mode 100644 admin/assets/ckeditor/lang/pl.js create mode 100644 admin/assets/ckeditor/lang/pt-br.js create mode 100644 admin/assets/ckeditor/lang/pt.js create mode 100644 admin/assets/ckeditor/lang/ro.js create mode 100644 admin/assets/ckeditor/lang/ru.js create mode 100644 admin/assets/ckeditor/lang/si.js create mode 100644 admin/assets/ckeditor/lang/sk.js create mode 100644 admin/assets/ckeditor/lang/sl.js create mode 100644 admin/assets/ckeditor/lang/sq.js create mode 100644 admin/assets/ckeditor/lang/sr-latn.js create mode 100644 admin/assets/ckeditor/lang/sr.js create mode 100644 admin/assets/ckeditor/lang/sv.js create mode 100644 admin/assets/ckeditor/lang/th.js create mode 100644 admin/assets/ckeditor/lang/tr.js create mode 100644 admin/assets/ckeditor/lang/tt.js create mode 100644 admin/assets/ckeditor/lang/ug.js create mode 100644 admin/assets/ckeditor/lang/uk.js create mode 100644 admin/assets/ckeditor/lang/vi.js create mode 100644 admin/assets/ckeditor/lang/zh-cn.js create mode 100644 admin/assets/ckeditor/lang/zh.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/af.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/az.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/da.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/de-ch.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/de.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/el.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/en-au.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/en.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/es-mx.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/es.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/et.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/eu.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/fo.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/he.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/id.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/it.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/km.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/no.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/oc.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/si.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/th.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js create mode 100644 admin/assets/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js create mode 100644 admin/assets/ckeditor/plugins/about/dialogs/about.js create mode 100644 admin/assets/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png create mode 100644 admin/assets/ckeditor/plugins/about/dialogs/logo_ckeditor.png create mode 100644 admin/assets/ckeditor/plugins/balloonpanel/skins/kama/balloonpanel.css create mode 100644 admin/assets/ckeditor/plugins/balloonpanel/skins/moono-lisa/balloonpanel.css create mode 100644 admin/assets/ckeditor/plugins/balloonpanel/skins/moono-lisa/images/close.png create mode 100644 admin/assets/ckeditor/plugins/balloonpanel/skins/moono-lisa/images/hidpi/close.png create mode 100644 admin/assets/ckeditor/plugins/balloonpanel/skins/moono/balloonpanel.css create mode 100644 admin/assets/ckeditor/plugins/balloonpanel/skins/moono/images/close.png create mode 100644 admin/assets/ckeditor/plugins/balloonpanel/skins/moono/images/hidpi/close.png create mode 100644 admin/assets/ckeditor/plugins/balloontoolbar/skins/default.css create mode 100644 admin/assets/ckeditor/plugins/balloontoolbar/skins/kama/balloontoolbar.css create mode 100644 admin/assets/ckeditor/plugins/balloontoolbar/skins/moono-lisa/balloontoolbar.css create mode 100644 admin/assets/ckeditor/plugins/balloontoolbar/skins/moono/balloontoolbar.css create mode 100644 admin/assets/ckeditor/plugins/clipboard/dialogs/paste.js create mode 100644 admin/assets/ckeditor/plugins/dialog/dialogDefinition.js create mode 100644 admin/assets/ckeditor/plugins/dialog/styles/dialog.css create mode 100644 admin/assets/ckeditor/plugins/easyimage/dialogs/easyimagealt.js create mode 100644 admin/assets/ckeditor/plugins/easyimage/styles/easyimage.css create mode 100644 admin/assets/ckeditor/plugins/icons.png create mode 100644 admin/assets/ckeditor/plugins/icons_hidpi.png create mode 100644 admin/assets/ckeditor/plugins/image/dialogs/image.js create mode 100644 admin/assets/ckeditor/plugins/image/images/noimage.png create mode 100644 admin/assets/ckeditor/plugins/imagebase/styles/imagebase.css create mode 100644 admin/assets/ckeditor/plugins/link/dialogs/anchor.js create mode 100644 admin/assets/ckeditor/plugins/link/dialogs/link.js create mode 100644 admin/assets/ckeditor/plugins/link/images/anchor.png create mode 100644 admin/assets/ckeditor/plugins/link/images/hidpi/anchor.png create mode 100644 admin/assets/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png create mode 100644 admin/assets/ckeditor/plugins/magicline/images/hidpi/icon.png create mode 100644 admin/assets/ckeditor/plugins/magicline/images/icon-rtl.png create mode 100644 admin/assets/ckeditor/plugins/magicline/images/icon.png create mode 100644 admin/assets/ckeditor/plugins/pastefromgdocs/filter/default.js create mode 100644 admin/assets/ckeditor/plugins/pastefromword/filter/default.js create mode 100644 admin/assets/ckeditor/plugins/pastetools/filter/common.js create mode 100644 admin/assets/ckeditor/plugins/pastetools/filter/image.js create mode 100644 admin/assets/ckeditor/plugins/scayt/CHANGELOG.md create mode 100644 admin/assets/ckeditor/plugins/scayt/LICENSE.md create mode 100644 admin/assets/ckeditor/plugins/scayt/README.md create mode 100644 admin/assets/ckeditor/plugins/scayt/dialogs/dialog.css create mode 100644 admin/assets/ckeditor/plugins/scayt/dialogs/options.js create mode 100644 admin/assets/ckeditor/plugins/scayt/dialogs/toolbar.css create mode 100644 admin/assets/ckeditor/plugins/scayt/skins/moono-lisa/scayt.css create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/af.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/ar.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/az.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/bg.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/ca.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/cs.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/cy.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/da.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/de-ch.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/de.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/el.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/en-au.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/en-ca.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/en.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/eo.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/es-mx.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/es.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/et.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/eu.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/fa.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/fi.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/fr.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/gl.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/he.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/hr.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/hu.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/id.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/it.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/ja.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/km.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/ko.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/ku.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/lt.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/lv.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/nb.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/nl.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/no.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/oc.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/pl.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/pt.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/ro.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/ru.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/si.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/sk.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/sl.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/sq.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/sr-latn.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/sr.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/sv.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/th.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/tr.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/tt.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/ug.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/uk.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/vi.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/lang/zh.js create mode 100644 admin/assets/ckeditor/plugins/specialchar/dialogs/specialchar.js create mode 100644 admin/assets/ckeditor/plugins/table/dialogs/table.js create mode 100644 admin/assets/ckeditor/plugins/tableselection/styles/tableselection.css create mode 100644 admin/assets/ckeditor/plugins/tabletools/dialogs/tableCell.js create mode 100644 admin/assets/ckeditor/plugins/widget/images/handle.png create mode 100644 admin/assets/ckeditor/plugins/wsc/LICENSE.md create mode 100644 admin/assets/ckeditor/plugins/wsc/README.md create mode 100644 admin/assets/ckeditor/plugins/wsc/dialogs/ciframe.html create mode 100644 admin/assets/ckeditor/plugins/wsc/dialogs/tmpFrameset.html create mode 100644 admin/assets/ckeditor/plugins/wsc/dialogs/wsc.css create mode 100644 admin/assets/ckeditor/plugins/wsc/dialogs/wsc.js create mode 100644 admin/assets/ckeditor/plugins/wsc/dialogs/wsc_ie.js create mode 100644 admin/assets/ckeditor/plugins/wsc/skins/moono-lisa/wsc.css create mode 100644 admin/assets/ckeditor/samples/css/samples.css create mode 100644 admin/assets/ckeditor/samples/img/github-top.png create mode 100644 admin/assets/ckeditor/samples/img/header-bg.png create mode 100644 admin/assets/ckeditor/samples/img/header-separator.png create mode 100644 admin/assets/ckeditor/samples/img/logo.png create mode 100644 admin/assets/ckeditor/samples/img/logo.svg create mode 100644 admin/assets/ckeditor/samples/img/navigation-tip.png create mode 100644 admin/assets/ckeditor/samples/index.html create mode 100644 admin/assets/ckeditor/samples/js/sample.js create mode 100644 admin/assets/ckeditor/samples/js/sf.js create mode 100644 admin/assets/ckeditor/samples/old/ajax.html create mode 100644 admin/assets/ckeditor/samples/old/api.html create mode 100644 admin/assets/ckeditor/samples/old/appendto.html create mode 100644 admin/assets/ckeditor/samples/old/assets/inlineall/logo.png create mode 100644 admin/assets/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css create mode 100644 admin/assets/ckeditor/samples/old/assets/posteddata.php create mode 100644 admin/assets/ckeditor/samples/old/assets/sample.jpg create mode 100644 admin/assets/ckeditor/samples/old/assets/uilanguages/languages.js create mode 100644 admin/assets/ckeditor/samples/old/datafiltering.html create mode 100644 admin/assets/ckeditor/samples/old/dialog/assets/my_dialog.js create mode 100644 admin/assets/ckeditor/samples/old/dialog/dialog.html create mode 100644 admin/assets/ckeditor/samples/old/divreplace.html create mode 100644 admin/assets/ckeditor/samples/old/easyimage/easyimage.html create mode 100644 admin/assets/ckeditor/samples/old/enterkey/enterkey.html create mode 100644 admin/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla create mode 100644 admin/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.swf create mode 100644 admin/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js create mode 100644 admin/assets/ckeditor/samples/old/htmlwriter/outputforflash.html create mode 100644 admin/assets/ckeditor/samples/old/htmlwriter/outputhtml.html create mode 100644 admin/assets/ckeditor/samples/old/index.html create mode 100644 admin/assets/ckeditor/samples/old/inlineall.html create mode 100644 admin/assets/ckeditor/samples/old/inlinebycode.html create mode 100644 admin/assets/ckeditor/samples/old/inlinetextarea.html create mode 100644 admin/assets/ckeditor/samples/old/jquery.html create mode 100644 admin/assets/ckeditor/samples/old/magicline/magicline.html create mode 100644 admin/assets/ckeditor/samples/old/readonly.html create mode 100644 admin/assets/ckeditor/samples/old/replacebyclass.html create mode 100644 admin/assets/ckeditor/samples/old/replacebycode.html create mode 100644 admin/assets/ckeditor/samples/old/sample.css create mode 100644 admin/assets/ckeditor/samples/old/sample.js create mode 100644 admin/assets/ckeditor/samples/old/sample_posteddata.php create mode 100644 admin/assets/ckeditor/samples/old/tabindex.html create mode 100644 admin/assets/ckeditor/samples/old/toolbar/toolbar.html create mode 100644 admin/assets/ckeditor/samples/old/uicolor.html create mode 100644 admin/assets/ckeditor/samples/old/uilanguages.html create mode 100644 admin/assets/ckeditor/samples/old/wysiwygarea/fullpage.html create mode 100644 admin/assets/ckeditor/samples/old/xhtmlstyle.html create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/css/fontello.css create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/font/config.json create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.eot create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.svg create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.ttf create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.woff create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/index.html create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css create mode 100644 admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js create mode 100644 admin/assets/ckeditor/skins/moono-lisa/dialog.css create mode 100644 admin/assets/ckeditor/skins/moono-lisa/dialog_ie.css create mode 100644 admin/assets/ckeditor/skins/moono-lisa/dialog_ie8.css create mode 100644 admin/assets/ckeditor/skins/moono-lisa/dialog_iequirks.css create mode 100644 admin/assets/ckeditor/skins/moono-lisa/editor.css create mode 100644 admin/assets/ckeditor/skins/moono-lisa/editor_gecko.css create mode 100644 admin/assets/ckeditor/skins/moono-lisa/editor_ie.css create mode 100644 admin/assets/ckeditor/skins/moono-lisa/editor_ie8.css create mode 100644 admin/assets/ckeditor/skins/moono-lisa/editor_iequirks.css create mode 100644 admin/assets/ckeditor/skins/moono-lisa/icons.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/icons_hidpi.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/images/arrow.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/images/close.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/images/hidpi/close.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/images/hidpi/lock-open.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/images/hidpi/lock.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/images/hidpi/refresh.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/images/lock-open.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/images/lock.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/images/refresh.png create mode 100644 admin/assets/ckeditor/skins/moono-lisa/images/spinner.gif create mode 100644 admin/assets/ckeditor/skins/moono-lisa/readme.md create mode 100644 admin/assets/ckeditor/styles.js create mode 100644 admin/assets/ckeditor/vendor/promise.js create mode 100644 admin/assets/css/custom.css create mode 100644 admin/assets/css/font-awesome.css create mode 100644 admin/assets/css/style.css create mode 100644 admin/assets/datatables.css create mode 100644 admin/assets/datatables.js create mode 100644 admin/assets/datatables.min.css create mode 100644 admin/assets/datatables.min.js create mode 100644 admin/assets/font-awesome/fonts/FontAwesome.otf create mode 100644 admin/assets/font-awesome/fonts/fontawesome-webfont.eot create mode 100644 admin/assets/font-awesome/fonts/fontawesome-webfont.svg create mode 100644 admin/assets/font-awesome/fonts/fontawesome-webfont.ttf create mode 100644 admin/assets/font-awesome/fonts/fontawesome-webfont.woff create mode 100644 admin/assets/fonts/glyphicons-halflings-regular.eot create mode 100644 admin/assets/fonts/glyphicons-halflings-regular.svg create mode 100644 admin/assets/fonts/glyphicons-halflings-regular.ttf create mode 100644 admin/assets/fonts/glyphicons-halflings-regular.woff create mode 100644 admin/assets/img/1.png create mode 100644 admin/assets/img/2.png create mode 100644 admin/assets/img/3.png create mode 100644 admin/assets/img/4.png create mode 100644 admin/assets/js/bootstrap.bundle.min.js create mode 100644 admin/assets/js/bootstrap.min.js create mode 100644 admin/assets/js/cloud-zoom.1.0.3.min.js create mode 100644 admin/assets/js/custom.js create mode 100644 admin/assets/js/dataTables/dataTables.bootstrap.css create mode 100644 admin/assets/js/dataTables/dataTables.bootstrap.js create mode 100644 admin/assets/js/dataTables/jquery.dataTables.js create mode 100644 admin/assets/js/jquery-1.10.2.js create mode 100644 admin/assets/js/jquery.metisMenu.js create mode 100644 admin/assets/js/jquery.min.js create mode 100644 admin/assets/js/morris/morris-0.4.3.min.css create mode 100644 admin/assets/js/morris/morris.js create mode 100644 admin/assets/js/morris/raphael-2.1.0.min.js create mode 100644 admin/assets/slick/ajax-loader.gif create mode 100644 admin/assets/slick/config.rb create mode 100644 admin/assets/slick/fonts/slick.eot create mode 100644 admin/assets/slick/fonts/slick.svg create mode 100644 admin/assets/slick/fonts/slick.ttf create mode 100644 admin/assets/slick/fonts/slick.woff create mode 100644 admin/assets/slick/slick-theme.css create mode 100644 admin/assets/slick/slick-theme.less create mode 100644 admin/assets/slick/slick-theme.scss create mode 100644 admin/assets/slick/slick.css create mode 100644 admin/assets/slick/slick.js create mode 100644 admin/assets/slick/slick.less create mode 100644 admin/assets/slick/slick.min.js create mode 100644 admin/assets/slick/slick.scss create mode 100644 admin/beranda.php create mode 100644 admin/css/css/sb-admin-2.css create mode 100644 admin/css/css/sb-admin-2.min.css create mode 100644 admin/css/custom.css create mode 100644 admin/css/img/undraw_posting_photo.svg create mode 100644 admin/css/img/undraw_profile.svg create mode 100644 admin/css/img/undraw_profile_1.svg create mode 100644 admin/css/img/undraw_profile_2.svg create mode 100644 admin/css/img/undraw_profile_3.svg create mode 100644 admin/css/img/undraw_rocket.svg create mode 100644 admin/css/js/demo/chart-area-demo.js create mode 100644 admin/css/js/demo/chart-bar-demo.js create mode 100644 admin/css/js/demo/chart-pie-demo.js create mode 100644 admin/css/js/demo/datatables-demo.js create mode 100644 admin/css/js/sb-admin-2.js create mode 100644 admin/css/js/sb-admin-2.min.js create mode 100644 admin/css/scss/_buttons.scss create mode 100644 admin/css/scss/_cards.scss create mode 100644 admin/css/scss/_charts.scss create mode 100644 admin/css/scss/_dropdowns.scss create mode 100644 admin/css/scss/_error.scss create mode 100644 admin/css/scss/_footer.scss create mode 100644 admin/css/scss/_global.scss create mode 100644 admin/css/scss/_login.scss create mode 100644 admin/css/scss/_mixins.scss create mode 100644 admin/css/scss/_navs.scss create mode 100644 admin/css/scss/_utilities.scss create mode 100644 admin/css/scss/_variables.scss create mode 100644 admin/css/scss/navs/_global.scss create mode 100644 admin/css/scss/navs/_sidebar.scss create mode 100644 admin/css/scss/navs/_topbar.scss create mode 100644 admin/css/scss/sb-admin-2.scss create mode 100644 admin/css/scss/utilities/_animation.scss create mode 100644 admin/css/scss/utilities/_background.scss create mode 100644 admin/css/scss/utilities/_border.scss create mode 100644 admin/css/scss/utilities/_display.scss create mode 100644 admin/css/scss/utilities/_progress.scss create mode 100644 admin/css/scss/utilities/_rotate.scss create mode 100644 admin/css/scss/utilities/_text.scss create mode 100644 admin/css/vendor/chart.js/Chart.bundle.js create mode 100644 admin/css/vendor/chart.js/Chart.bundle.min.js create mode 100644 admin/css/vendor/chart.js/Chart.js create mode 100644 admin/css/vendor/chart.js/Chart.min.js create mode 100644 admin/css/vendor/datatables/dataTables.bootstrap4.css create mode 100644 admin/css/vendor/datatables/dataTables.bootstrap4.js create mode 100644 admin/css/vendor/datatables/dataTables.bootstrap4.min.css create mode 100644 admin/css/vendor/datatables/dataTables.bootstrap4.min.js create mode 100644 admin/css/vendor/datatables/jquery.dataTables.js create mode 100644 admin/css/vendor/datatables/jquery.dataTables.min.js create mode 100644 admin/css/vendor/fontawesome-free/LICENSE.txt create mode 100644 admin/css/vendor/fontawesome-free/attribution.js create mode 100644 admin/css/vendor/fontawesome-free/css/all.css create mode 100644 admin/css/vendor/fontawesome-free/css/all.min.css create mode 100644 admin/css/vendor/fontawesome-free/css/brands.css create mode 100644 admin/css/vendor/fontawesome-free/css/brands.min.css create mode 100644 admin/css/vendor/fontawesome-free/css/fontawesome.css create mode 100644 admin/css/vendor/fontawesome-free/css/fontawesome.min.css create mode 100644 admin/css/vendor/fontawesome-free/css/regular.css create mode 100644 admin/css/vendor/fontawesome-free/css/regular.min.css create mode 100644 admin/css/vendor/fontawesome-free/css/solid.css create mode 100644 admin/css/vendor/fontawesome-free/css/solid.min.css create mode 100644 admin/css/vendor/fontawesome-free/css/svg-with-js.css create mode 100644 admin/css/vendor/fontawesome-free/css/svg-with-js.min.css create mode 100644 admin/css/vendor/fontawesome-free/css/v4-shims.css create mode 100644 admin/css/vendor/fontawesome-free/css/v4-shims.min.css create mode 100644 admin/css/vendor/fontawesome-free/js/all.js create mode 100644 admin/css/vendor/fontawesome-free/js/all.min.js create mode 100644 admin/css/vendor/fontawesome-free/js/brands.js create mode 100644 admin/css/vendor/fontawesome-free/js/brands.min.js create mode 100644 admin/css/vendor/fontawesome-free/js/conflict-detection.js create mode 100644 admin/css/vendor/fontawesome-free/js/conflict-detection.min.js create mode 100644 admin/css/vendor/fontawesome-free/js/fontawesome.js create mode 100644 admin/css/vendor/fontawesome-free/js/fontawesome.min.js create mode 100644 admin/css/vendor/fontawesome-free/js/regular.js create mode 100644 admin/css/vendor/fontawesome-free/js/regular.min.js create mode 100644 admin/css/vendor/fontawesome-free/js/solid.js create mode 100644 admin/css/vendor/fontawesome-free/js/solid.min.js create mode 100644 admin/css/vendor/fontawesome-free/js/v4-shims.js create mode 100644 admin/css/vendor/fontawesome-free/js/v4-shims.min.js create mode 100644 admin/css/vendor/fontawesome-free/less/_animated.less create mode 100644 admin/css/vendor/fontawesome-free/less/_bordered-pulled.less create mode 100644 admin/css/vendor/fontawesome-free/less/_core.less create mode 100644 admin/css/vendor/fontawesome-free/less/_fixed-width.less create mode 100644 admin/css/vendor/fontawesome-free/less/_icons.less create mode 100644 admin/css/vendor/fontawesome-free/less/_larger.less create mode 100644 admin/css/vendor/fontawesome-free/less/_list.less create mode 100644 admin/css/vendor/fontawesome-free/less/_mixins.less create mode 100644 admin/css/vendor/fontawesome-free/less/_rotated-flipped.less create mode 100644 admin/css/vendor/fontawesome-free/less/_screen-reader.less create mode 100644 admin/css/vendor/fontawesome-free/less/_shims.less create mode 100644 admin/css/vendor/fontawesome-free/less/_stacked.less create mode 100644 admin/css/vendor/fontawesome-free/less/_variables.less create mode 100644 admin/css/vendor/fontawesome-free/less/brands.less create mode 100644 admin/css/vendor/fontawesome-free/less/fontawesome.less create mode 100644 admin/css/vendor/fontawesome-free/less/regular.less create mode 100644 admin/css/vendor/fontawesome-free/less/solid.less create mode 100644 admin/css/vendor/fontawesome-free/less/v4-shims.less create mode 100644 admin/css/vendor/fontawesome-free/metadata/categories.yml create mode 100644 admin/css/vendor/fontawesome-free/metadata/icons.yml create mode 100644 admin/css/vendor/fontawesome-free/metadata/shims.yml create mode 100644 admin/css/vendor/fontawesome-free/metadata/sponsors.yml create mode 100644 admin/css/vendor/fontawesome-free/package.json create mode 100644 admin/css/vendor/fontawesome-free/scss/_animated.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_bordered-pulled.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_core.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_fixed-width.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_icons.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_larger.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_list.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_mixins.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_rotated-flipped.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_screen-reader.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_shims.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_stacked.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/_variables.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/brands.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/fontawesome.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/regular.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/solid.scss create mode 100644 admin/css/vendor/fontawesome-free/scss/v4-shims.scss create mode 100644 admin/css/vendor/fontawesome-free/sprites/brands.svg create mode 100644 admin/css/vendor/fontawesome-free/sprites/regular.svg create mode 100644 admin/css/vendor/fontawesome-free/sprites/solid.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/500px.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/accessible-icon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/accusoft.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/acquisitions-incorporated.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/adn.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/adversal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/affiliatetheme.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/airbnb.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/algolia.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/alipay.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/amazon-pay.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/amazon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/amilia.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/android.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/angellist.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/angrycreative.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/angular.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/app-store-ios.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/app-store.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/apper.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/apple-pay.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/apple.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/artstation.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/asymmetrik.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/atlassian.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/audible.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/autoprefixer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/avianex.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/aviato.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/aws.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/bandcamp.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/battle-net.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/behance-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/behance.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/bimobject.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/bitbucket.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/bitcoin.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/bity.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/black-tie.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/blackberry.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/blogger-b.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/blogger.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/bluetooth-b.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/bluetooth.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/bootstrap.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/btc.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/buffer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/buromobelexperte.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/buy-n-large.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/buysellads.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/canadian-maple-leaf.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cc-amazon-pay.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cc-amex.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cc-apple-pay.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cc-diners-club.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cc-discover.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cc-jcb.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cc-mastercard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cc-paypal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cc-stripe.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cc-visa.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/centercode.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/centos.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/chrome.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/chromecast.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cloudflare.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cloudscale.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cloudsmith.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cloudversify.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/codepen.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/codiepie.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/confluence.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/connectdevelop.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/contao.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cotton-bureau.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cpanel.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-by.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-nc-eu.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-nc-jp.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-nc.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-nd.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-pd-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-pd.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-remix.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-sa.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-sampling-plus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-sampling.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-share.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons-zero.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/creative-commons.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/critical-role.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/css3-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/css3.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/cuttlefish.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/d-and-d-beyond.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/d-and-d.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/dailymotion.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/dashcube.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/deezer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/delicious.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/deploydog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/deskpro.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/dev.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/deviantart.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/dhl.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/diaspora.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/digg.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/digital-ocean.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/discord.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/discourse.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/dochub.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/docker.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/draft2digital.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/dribbble-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/dribbble.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/dropbox.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/drupal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/dyalog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/earlybirds.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ebay.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/edge-legacy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/edge.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/elementor.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ello.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ember.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/empire.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/envira.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/erlang.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ethereum.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/etsy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/evernote.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/expeditedssl.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/facebook-f.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/facebook-messenger.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/facebook-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/facebook.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/fantasy-flight-games.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/fedex.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/fedora.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/figma.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/firefox-browser.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/firefox.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/first-order-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/first-order.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/firstdraft.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/flickr.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/flipboard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/fly.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/font-awesome-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/font-awesome-flag.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/font-awesome-logo-full.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/font-awesome.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/fonticons-fi.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/fonticons.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/fort-awesome-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/fort-awesome.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/forumbee.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/foursquare.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/free-code-camp.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/freebsd.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/fulcrum.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/galactic-republic.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/galactic-senate.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/get-pocket.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/gg-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/gg.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/git-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/git-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/git.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/github-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/github-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/github.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/gitkraken.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/gitlab.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/gitter.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/glide-g.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/glide.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/gofore.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/goodreads-g.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/goodreads.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/google-drive.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/google-pay.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/google-play.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/google-plus-g.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/google-plus-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/google-plus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/google-wallet.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/google.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/gratipay.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/grav.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/gripfire.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/grunt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/guilded.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/gulp.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/hacker-news-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/hacker-news.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/hackerrank.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/hips.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/hire-a-helper.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/hive.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/hooli.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/hornbill.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/hotjar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/houzz.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/html5.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/hubspot.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ideal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/imdb.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/innosoft.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/instagram-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/instagram.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/instalod.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/intercom.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/internet-explorer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/invision.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ioxhost.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/itch-io.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/itunes-note.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/itunes.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/java.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/jedi-order.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/jenkins.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/jira.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/joget.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/joomla.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/js-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/js.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/jsfiddle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/kaggle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/keybase.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/keycdn.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/kickstarter-k.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/kickstarter.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/korvue.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/laravel.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/lastfm-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/lastfm.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/leanpub.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/less.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/line.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/linkedin-in.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/linkedin.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/linode.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/linux.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/lyft.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/magento.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/mailchimp.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/mandalorian.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/markdown.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/mastodon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/maxcdn.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/mdb.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/medapps.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/medium-m.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/medium.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/medrt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/meetup.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/megaport.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/mendeley.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/microblog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/microsoft.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/mix.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/mixcloud.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/mixer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/mizuni.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/modx.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/monero.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/napster.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/neos.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/nimblr.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/node-js.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/node.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/npm.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ns8.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/nutritionix.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/octopus-deploy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/odnoklassniki-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/odnoklassniki.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/old-republic.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/opencart.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/openid.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/opera.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/optin-monster.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/orcid.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/osi.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/page4.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/pagelines.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/palfed.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/patreon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/paypal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/penny-arcade.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/perbyte.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/periscope.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/phabricator.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/phoenix-framework.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/phoenix-squadron.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/php.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/pied-piper-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/pied-piper-hat.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/pied-piper-pp.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/pied-piper-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/pied-piper.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/pinterest-p.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/pinterest-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/pinterest.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/playstation.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/product-hunt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/pushed.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/python.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/qq.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/quinscape.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/quora.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/r-project.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/raspberry-pi.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ravelry.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/react.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/reacteurope.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/readme.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/rebel.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/red-river.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/reddit-alien.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/reddit-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/reddit.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/redhat.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/renren.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/replyd.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/researchgate.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/resolving.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/rev.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/rocketchat.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/rockrms.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/rust.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/safari.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/salesforce.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/sass.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/schlix.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/scribd.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/searchengin.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/sellcast.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/sellsy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/servicestack.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/shirtsinbulk.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/shopify.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/shopware.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/simplybuilt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/sistrix.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/sith.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/sketch.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/skyatlas.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/skype.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/slack-hash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/slack.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/slideshare.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/snapchat-ghost.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/snapchat-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/snapchat.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/soundcloud.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/sourcetree.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/speakap.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/speaker-deck.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/spotify.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/squarespace.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/stack-exchange.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/stack-overflow.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/stackpath.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/staylinked.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/steam-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/steam-symbol.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/steam.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/sticker-mule.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/strava.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/stripe-s.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/stripe.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/studiovinari.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/stumbleupon-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/stumbleupon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/superpowers.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/supple.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/suse.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/swift.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/symfony.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/teamspeak.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/telegram-plane.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/telegram.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/tencent-weibo.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/the-red-yeti.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/themeco.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/themeisle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/think-peaks.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/tiktok.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/trade-federation.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/trello.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/tripadvisor.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/tumblr-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/tumblr.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/twitch.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/twitter-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/twitter.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/typo3.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/uber.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ubuntu.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/uikit.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/umbraco.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/uncharted.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/uniregistry.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/unity.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/unsplash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/untappd.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ups.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/usb.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/usps.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/ussunnah.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/vaadin.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/viacoin.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/viadeo-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/viadeo.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/viber.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/vimeo-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/vimeo-v.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/vimeo.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/vine.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/vk.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/vnv.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/vuejs.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/watchman-monitoring.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/waze.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/weebly.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/weibo.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/weixin.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/whatsapp-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/whatsapp.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/whmcs.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wikipedia-w.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/windows.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wix.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wizards-of-the-coast.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wodu.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wolf-pack-battalion.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wordpress-simple.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wordpress.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wpbeginner.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wpexplorer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wpforms.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/wpressr.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/xbox.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/xing-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/xing.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/y-combinator.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/yahoo.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/yammer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/yandex-international.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/yandex.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/yarn.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/yelp.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/yoast.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/youtube-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/youtube.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/brands/zhihu.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/address-book.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/address-card.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/angry.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/arrow-alt-circle-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/arrow-alt-circle-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/arrow-alt-circle-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/arrow-alt-circle-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/bell-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/bell.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/bookmark.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/building.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/calendar-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/calendar-check.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/calendar-minus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/calendar-plus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/calendar-times.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/calendar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/caret-square-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/caret-square-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/caret-square-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/caret-square-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/chart-bar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/check-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/check-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/clipboard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/clock.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/clone.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/closed-captioning.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/comment-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/comment-dots.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/comment.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/comments.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/compass.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/copy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/copyright.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/credit-card.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/dizzy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/dot-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/edit.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/envelope-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/envelope.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/eye-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/eye.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file-archive.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file-audio.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file-code.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file-excel.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file-image.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file-pdf.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file-powerpoint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file-video.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file-word.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/file.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/flag.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/flushed.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/folder-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/folder.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/font-awesome-logo-full.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/frown-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/frown.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/futbol.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/gem.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grimace.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-beam-sweat.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-beam.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-hearts.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-squint-tears.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-squint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-stars.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-tears.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-tongue-squint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-tongue-wink.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-tongue.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin-wink.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/grin.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-lizard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-paper.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-peace.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-point-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-point-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-point-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-point-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-pointer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-rock.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-scissors.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hand-spock.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/handshake.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hdd.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/heart.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hospital.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/hourglass.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/id-badge.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/id-card.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/image.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/images.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/keyboard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/kiss-beam.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/kiss-wink-heart.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/kiss.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/laugh-beam.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/laugh-squint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/laugh-wink.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/laugh.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/lemon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/life-ring.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/lightbulb.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/list-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/map.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/meh-blank.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/meh-rolling-eyes.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/meh.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/minus-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/money-bill-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/moon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/newspaper.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/object-group.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/object-ungroup.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/paper-plane.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/pause-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/play-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/plus-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/question-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/registered.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/sad-cry.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/sad-tear.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/save.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/share-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/smile-beam.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/smile-wink.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/smile.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/snowflake.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/star-half.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/star.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/sticky-note.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/stop-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/sun.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/surprise.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/thumbs-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/thumbs-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/times-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/tired.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/trash-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/user-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/user.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/window-close.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/window-maximize.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/window-minimize.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/regular/window-restore.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ad.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/address-book.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/address-card.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/adjust.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/air-freshener.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/align-center.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/align-justify.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/align-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/align-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/allergies.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ambulance.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/american-sign-language-interpreting.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/anchor.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/angle-double-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/angle-double-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/angle-double-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/angle-double-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/angle-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/angle-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/angle-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/angle-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/angry.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ankh.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/apple-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/archive.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/archway.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-alt-circle-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-alt-circle-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-alt-circle-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-alt-circle-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-circle-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-circle-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-circle-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-circle-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrow-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrows-alt-h.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrows-alt-v.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/arrows-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/assistive-listening-systems.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/asterisk.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/at.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/atlas.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/atom.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/audio-description.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/award.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/baby-carriage.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/baby.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/backspace.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/backward.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bacon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bacteria.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bacterium.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bahai.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/balance-scale-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/balance-scale-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/balance-scale.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ban.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/band-aid.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/barcode.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bars.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/baseball-ball.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/basketball-ball.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bath.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/battery-empty.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/battery-full.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/battery-half.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/battery-quarter.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/battery-three-quarters.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bed.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/beer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bell-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bell.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bezier-curve.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bible.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bicycle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/biking.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/binoculars.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/biohazard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/birthday-cake.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/blender-phone.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/blender.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/blind.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/blog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bold.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bolt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bomb.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bone.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bong.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/book-dead.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/book-medical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/book-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/book-reader.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/book.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bookmark.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/border-all.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/border-none.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/border-style.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bowling-ball.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/box-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/box-tissue.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/box.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/boxes.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/braille.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/brain.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bread-slice.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/briefcase-medical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/briefcase.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/broadcast-tower.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/broom.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/brush.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bug.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/building.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bullhorn.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bullseye.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/burn.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bus-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/bus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/business-time.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/calculator.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/calendar-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/calendar-check.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/calendar-day.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/calendar-minus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/calendar-plus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/calendar-times.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/calendar-week.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/calendar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/camera-retro.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/camera.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/campground.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/candy-cane.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cannabis.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/capsules.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/car-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/car-battery.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/car-crash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/car-side.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/car.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/caravan.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/caret-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/caret-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/caret-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/caret-square-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/caret-square-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/caret-square-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/caret-square-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/caret-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/carrot.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cart-arrow-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cart-plus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cash-register.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cat.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/certificate.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chair.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chalkboard-teacher.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chalkboard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/charging-station.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chart-area.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chart-bar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chart-line.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chart-pie.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/check-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/check-double.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/check-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/check.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cheese.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chess-bishop.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chess-board.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chess-king.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chess-knight.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chess-pawn.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chess-queen.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chess-rook.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chess.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chevron-circle-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chevron-circle-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chevron-circle-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chevron-circle-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chevron-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chevron-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chevron-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/chevron-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/child.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/church.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/circle-notch.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/city.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/clinic-medical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/clipboard-check.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/clipboard-list.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/clipboard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/clock.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/clone.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/closed-captioning.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cloud-download-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cloud-meatball.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cloud-moon-rain.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cloud-moon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cloud-rain.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cloud-showers-heavy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cloud-sun-rain.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cloud-sun.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cloud-upload-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cloud.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cocktail.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/code-branch.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/code.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/coffee.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cogs.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/coins.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/columns.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/comment-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/comment-dollar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/comment-dots.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/comment-medical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/comment-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/comment.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/comments-dollar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/comments.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/compact-disc.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/compass.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/compress-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/compress-arrows-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/compress.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/concierge-bell.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cookie-bite.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cookie.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/copy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/copyright.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/couch.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/credit-card.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/crop-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/crop.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cross.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/crosshairs.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/crow.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/crown.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/crutch.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cube.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cubes.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/cut.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/database.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/deaf.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/democrat.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/desktop.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dharmachakra.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/diagnoses.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dice-d20.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dice-d6.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dice-five.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dice-four.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dice-one.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dice-six.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dice-three.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dice-two.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dice.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/digital-tachograph.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/directions.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/disease.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/divide.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dizzy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dna.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dollar-sign.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dolly-flatbed.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dolly.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/donate.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/door-closed.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/door-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dot-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dove.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/download.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/drafting-compass.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dragon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/draw-polygon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/drum-steelpan.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/drum.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/drumstick-bite.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dumbbell.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dumpster-fire.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dumpster.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/dungeon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/edit.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/egg.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/eject.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ellipsis-h.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ellipsis-v.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/envelope-open-text.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/envelope-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/envelope-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/envelope.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/equals.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/eraser.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ethernet.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/euro-sign.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/exchange-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/exclamation-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/exclamation-triangle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/exclamation.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/expand-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/expand-arrows-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/expand.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/external-link-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/external-link-square-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/eye-dropper.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/eye-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/eye.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fan.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fast-backward.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fast-forward.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/faucet.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fax.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/feather-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/feather.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/female.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fighter-jet.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-archive.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-audio.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-code.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-contract.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-csv.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-download.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-excel.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-export.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-image.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-import.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-invoice-dollar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-invoice.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-medical-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-medical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-pdf.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-powerpoint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-prescription.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-signature.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-upload.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-video.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file-word.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/file.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fill-drip.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fill.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/film.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/filter.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fingerprint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fire-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fire-extinguisher.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fire.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/first-aid.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fish.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/fist-raised.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/flag-checkered.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/flag-usa.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/flag.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/flask.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/flushed.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/folder-minus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/folder-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/folder-plus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/folder.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/font-awesome-logo-full.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/font.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/football-ball.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/forward.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/frog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/frown-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/frown.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/funnel-dollar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/futbol.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/gamepad.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/gas-pump.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/gavel.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/gem.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/genderless.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ghost.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/gift.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/gifts.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/glass-cheers.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/glass-martini-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/glass-martini.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/glass-whiskey.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/glasses.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/globe-africa.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/globe-americas.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/globe-asia.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/globe-europe.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/globe.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/golf-ball.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/gopuram.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/graduation-cap.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/greater-than-equal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/greater-than.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grimace.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-beam-sweat.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-beam.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-hearts.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-squint-tears.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-squint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-stars.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-tears.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-tongue-squint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-tongue-wink.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-tongue.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin-wink.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grin.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grip-horizontal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grip-lines-vertical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grip-lines.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/grip-vertical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/guitar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/h-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hamburger.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hammer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hamsa.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-holding-heart.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-holding-medical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-holding-usd.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-holding-water.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-holding.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-lizard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-middle-finger.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-paper.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-peace.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-point-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-point-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-point-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-point-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-pointer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-rock.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-scissors.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-sparkles.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hand-spock.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hands-helping.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hands-wash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hands.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/handshake-alt-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/handshake-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/handshake.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hanukiah.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hard-hat.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hashtag.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hat-cowboy-side.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hat-cowboy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hat-wizard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hdd.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/head-side-cough-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/head-side-cough.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/head-side-mask.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/head-side-virus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/heading.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/headphones-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/headphones.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/headset.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/heart-broken.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/heart.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/heartbeat.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/helicopter.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/highlighter.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hiking.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hippo.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/history.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hockey-puck.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/holly-berry.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/home.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/horse-head.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/horse.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hospital-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hospital-symbol.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hospital-user.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hospital.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hot-tub.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hotdog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hotel.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hourglass-end.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hourglass-half.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hourglass-start.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hourglass.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/house-damage.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/house-user.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/hryvnia.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/i-cursor.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ice-cream.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/icicles.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/icons.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/id-badge.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/id-card-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/id-card.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/igloo.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/image.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/images.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/inbox.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/indent.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/industry.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/infinity.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/info-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/info.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/italic.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/jedi.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/joint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/journal-whills.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/kaaba.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/key.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/keyboard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/khanda.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/kiss-beam.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/kiss-wink-heart.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/kiss.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/kiwi-bird.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/landmark.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/language.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/laptop-code.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/laptop-house.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/laptop-medical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/laptop.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/laugh-beam.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/laugh-squint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/laugh-wink.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/laugh.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/layer-group.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/leaf.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/lemon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/less-than-equal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/less-than.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/level-down-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/level-up-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/life-ring.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/lightbulb.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/link.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/lira-sign.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/list-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/list-ol.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/list-ul.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/list.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/location-arrow.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/lock-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/lock.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/long-arrow-alt-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/long-arrow-alt-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/long-arrow-alt-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/long-arrow-alt-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/low-vision.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/luggage-cart.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/lungs-virus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/lungs.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/magic.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/magnet.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mail-bulk.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/male.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/map-marked-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/map-marked.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/map-marker-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/map-marker.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/map-pin.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/map-signs.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/map.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/marker.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mars-double.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mars-stroke-h.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mars-stroke-v.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mars-stroke.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mars.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mask.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/medal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/medkit.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/meh-blank.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/meh-rolling-eyes.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/meh.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/memory.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/menorah.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mercury.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/meteor.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/microchip.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/microphone-alt-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/microphone-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/microphone-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/microphone.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/microscope.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/minus-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/minus-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/minus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mitten.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mobile-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mobile.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/money-bill-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/money-bill-wave-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/money-bill-wave.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/money-bill.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/money-check-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/money-check.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/monument.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/moon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mortar-pestle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mosque.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/motorcycle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mountain.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mouse-pointer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mouse.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/mug-hot.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/music.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/network-wired.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/neuter.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/newspaper.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/not-equal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/notes-medical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/object-group.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/object-ungroup.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/oil-can.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/om.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/otter.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/outdent.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pager.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/paint-brush.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/paint-roller.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/palette.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pallet.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/paper-plane.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/paperclip.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/parachute-box.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/paragraph.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/parking.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/passport.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pastafarianism.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/paste.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pause-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pause.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/paw.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/peace.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pen-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pen-fancy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pen-nib.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pen-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pen.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pencil-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pencil-ruler.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/people-arrows.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/people-carry.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pepper-hot.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/percent.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/percentage.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/person-booth.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/phone-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/phone-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/phone-square-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/phone-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/phone-volume.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/phone.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/photo-video.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/piggy-bank.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pills.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pizza-slice.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/place-of-worship.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/plane-arrival.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/plane-departure.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/plane-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/plane.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/play-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/play.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/plug.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/plus-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/plus-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/plus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/podcast.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/poll-h.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/poll.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/poo-storm.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/poo.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/poop.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/portrait.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pound-sign.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/power-off.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pray.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/praying-hands.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/prescription-bottle-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/prescription-bottle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/prescription.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/print.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/procedures.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/project-diagram.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pump-medical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/pump-soap.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/puzzle-piece.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/qrcode.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/question-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/question.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/quidditch.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/quote-left.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/quote-right.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/quran.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/radiation-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/radiation.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/rainbow.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/random.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/receipt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/record-vinyl.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/recycle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/redo-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/redo.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/registered.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/remove-format.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/reply-all.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/reply.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/republican.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/restroom.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/retweet.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ribbon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ring.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/road.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/robot.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/rocket.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/route.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/rss-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/rss.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ruble-sign.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ruler-combined.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ruler-horizontal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ruler-vertical.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ruler.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/running.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/rupee-sign.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sad-cry.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sad-tear.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/satellite-dish.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/satellite.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/save.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/school.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/screwdriver.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/scroll.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sd-card.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/search-dollar.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/search-location.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/search-minus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/search-plus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/search.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/seedling.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/server.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shapes.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/share-alt-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/share-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/share-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/share.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shekel-sign.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shield-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shield-virus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ship.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shipping-fast.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shoe-prints.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shopping-bag.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shopping-basket.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shopping-cart.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shower.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/shuttle-van.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sign-in-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sign-language.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sign-out-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sign.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/signal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/signature.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sim-card.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sink.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sitemap.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/skating.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/skiing-nordic.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/skiing.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/skull-crossbones.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/skull.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sleigh.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sliders-h.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/smile-beam.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/smile-wink.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/smile.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/smog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/smoking-ban.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/smoking.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sms.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/snowboarding.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/snowflake.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/snowman.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/snowplow.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/soap.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/socks.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/solar-panel.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-alpha-down-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-alpha-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-alpha-up-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-alpha-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-amount-down-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-amount-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-amount-up-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-amount-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-numeric-down-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-numeric-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-numeric-up-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-numeric-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sort.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/spa.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/space-shuttle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/spell-check.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/spider.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/spinner.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/splotch.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/spray-can.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/square-full.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/square-root-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/stamp.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/star-and-crescent.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/star-half-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/star-half.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/star-of-david.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/star-of-life.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/star.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/step-backward.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/step-forward.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/stethoscope.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sticky-note.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/stop-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/stop.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/stopwatch-20.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/stopwatch.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/store-alt-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/store-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/store-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/store.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/stream.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/street-view.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/strikethrough.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/stroopwafel.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/subscript.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/subway.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/suitcase-rolling.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/suitcase.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sun.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/superscript.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/surprise.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/swatchbook.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/swimmer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/swimming-pool.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/synagogue.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sync-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/sync.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/syringe.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/table-tennis.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/table.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tablet-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tablet.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tablets.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tachometer-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tag.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tags.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tape.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tasks.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/taxi.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/teeth-open.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/teeth.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/temperature-high.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/temperature-low.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tenge.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/terminal.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/text-height.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/text-width.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/th-large.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/th-list.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/th.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/theater-masks.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/thermometer-empty.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/thermometer-full.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/thermometer-half.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/thermometer-quarter.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/thermometer-three-quarters.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/thermometer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/thumbs-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/thumbs-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/thumbtack.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/ticket-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/times-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/times.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tint-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tint.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tired.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/toggle-off.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/toggle-on.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/toilet-paper-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/toilet-paper.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/toilet.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/toolbox.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tools.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tooth.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/torah.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/torii-gate.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tractor.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/trademark.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/traffic-light.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/trailer.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/train.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tram.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/transgender-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/transgender.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/trash-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/trash-restore-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/trash-restore.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/trash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tree.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/trophy.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/truck-loading.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/truck-monster.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/truck-moving.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/truck-pickup.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/truck.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tshirt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tty.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/tv.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/umbrella-beach.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/umbrella.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/underline.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/undo-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/undo.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/universal-access.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/university.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/unlink.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/unlock-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/unlock.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/upload.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-alt-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-astronaut.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-check.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-circle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-clock.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-cog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-edit.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-friends.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-graduate.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-injured.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-lock.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-md.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-minus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-ninja.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-nurse.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-plus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-secret.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-shield.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-tag.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-tie.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user-times.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/user.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/users-cog.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/users-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/users.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/utensil-spoon.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/utensils.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/vector-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/venus-double.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/venus-mars.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/venus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/vest-patches.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/vest.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/vial.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/vials.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/video-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/video.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/vihara.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/virus-slash.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/virus.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/viruses.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/voicemail.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/volleyball-ball.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/volume-down.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/volume-mute.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/volume-off.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/volume-up.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/vote-yea.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/vr-cardboard.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/walking.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/wallet.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/warehouse.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/water.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/wave-square.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/weight-hanging.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/weight.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/wheelchair.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/wifi.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/wind.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/window-close.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/window-maximize.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/window-minimize.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/window-restore.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/wine-bottle.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/wine-glass-alt.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/wine-glass.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/won-sign.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/wrench.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/x-ray.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/yen-sign.svg create mode 100644 admin/css/vendor/fontawesome-free/svgs/solid/yin-yang.svg create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-brands-400.eot create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-brands-400.svg create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-brands-400.ttf create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-brands-400.woff create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-brands-400.woff2 create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-regular-400.eot create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-regular-400.svg create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-regular-400.ttf create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-regular-400.woff create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-regular-400.woff2 create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-solid-900.eot create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-solid-900.svg create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-solid-900.ttf create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-solid-900.woff create mode 100644 admin/css/vendor/fontawesome-free/webfonts/fa-solid-900.woff2 create mode 100644 admin/css/vendor/jquery-easing/jquery.easing.compatibility.js create mode 100644 admin/css/vendor/jquery-easing/jquery.easing.js create mode 100644 admin/css/vendor/jquery-easing/jquery.easing.min.js create mode 100644 admin/css/vendor/jquery/jquery.js create mode 100644 admin/css/vendor/jquery/jquery.min.js create mode 100644 admin/css/vendor/jquery/jquery.min.map create mode 100644 admin/css/vendor/jquery/jquery.slim.js create mode 100644 admin/css/vendor/jquery/jquery.slim.min.js create mode 100644 admin/css/vendor/jquery/jquery.slim.min.map create mode 100644 admin/gejaladaftar.php create mode 100644 admin/gejalaedit.php create mode 100644 admin/gejalahapus.php create mode 100644 admin/gejalatambah.php create mode 100644 admin/index.php create mode 100644 admin/logout.php create mode 100644 admin/nilaifuzzydaftar.php create mode 100644 admin/nilaifuzzyedit.php create mode 100644 admin/nilaifuzzyhapus.php create mode 100644 admin/nilaifuzzytambah.php create mode 100644 admin/nilaigejalapenyakitdaftar.php create mode 100644 admin/nilaigejalapenyakitedit.php create mode 100644 admin/nilaigejalapenyakithapus.php create mode 100644 admin/nilaigejalapenyakittambah.php create mode 100644 admin/penyakitdaftar.php create mode 100644 admin/penyakitedit.php create mode 100644 admin/penyakithapus.php create mode 100644 admin/penyakittambah.php create mode 100644 admin/ruledaftar.php create mode 100644 admin/ruleedit.php create mode 100644 admin/rulehapus.php create mode 100644 admin/ruletambah.php create mode 100644 database/sistempakarmamdani.sql create mode 100644 diagnosis.php create mode 100644 diagnosislama.php create mode 100644 footer.php create mode 100644 foto/Untitled.png create mode 100644 foto/logo.png create mode 100644 foto/tembakau.jpg create mode 100644 foto/tembakau1.jpg create mode 100644 header.php create mode 100644 home/css/gaya.css create mode 100644 home/css/style.css create mode 100644 home/img/banner1.jpg create mode 100644 home/img/banner2.jpg create mode 100644 home/js/main.js create mode 100644 home/lib/animate/animate.css create mode 100644 home/lib/animate/animate.min.css create mode 100644 home/lib/counterup/counterup.min.js create mode 100644 home/lib/easing/easing.js create mode 100644 home/lib/easing/easing.min.js create mode 100644 home/lib/lightbox/css/lightbox.css create mode 100644 home/lib/lightbox/css/lightbox.min.css create mode 100644 home/lib/lightbox/images/close.png create mode 100644 home/lib/lightbox/images/loading.gif create mode 100644 home/lib/lightbox/images/next.png create mode 100644 home/lib/lightbox/images/prev.png create mode 100644 home/lib/lightbox/js/lightbox.js create mode 100644 home/lib/lightbox/js/lightbox.min.js create mode 100644 home/lib/lightbox/links.php create mode 100644 home/lib/owlcarousel/LICENSE create mode 100644 home/lib/owlcarousel/assets/ajax-loader.gif create mode 100644 home/lib/owlcarousel/assets/owl.carousel.css create mode 100644 home/lib/owlcarousel/assets/owl.carousel.min.css create mode 100644 home/lib/owlcarousel/assets/owl.theme.default.css create mode 100644 home/lib/owlcarousel/assets/owl.theme.default.min.css create mode 100644 home/lib/owlcarousel/assets/owl.theme.green.css create mode 100644 home/lib/owlcarousel/assets/owl.theme.green.min.css create mode 100644 home/lib/owlcarousel/assets/owl.video.play.png create mode 100644 home/lib/owlcarousel/owl.carousel.js create mode 100644 home/lib/owlcarousel/owl.carousel.min.js create mode 100644 home/lib/parallax/parallax.min.js create mode 100644 home/lib/waypoints/links.php create mode 100644 home/lib/waypoints/waypoints.min.js create mode 100644 home/lib/wow/wow.js create mode 100644 home/lib/wow/wow.min.js create mode 100644 home/scss/bootstrap.scss create mode 100644 home/scss/bootstrap/scss/_accordion.scss create mode 100644 home/scss/bootstrap/scss/_alert.scss create mode 100644 home/scss/bootstrap/scss/_badge.scss create mode 100644 home/scss/bootstrap/scss/_breadcrumb.scss create mode 100644 home/scss/bootstrap/scss/_button-group.scss create mode 100644 home/scss/bootstrap/scss/_buttons.scss create mode 100644 home/scss/bootstrap/scss/_card.scss create mode 100644 home/scss/bootstrap/scss/_carousel.scss create mode 100644 home/scss/bootstrap/scss/_close.scss create mode 100644 home/scss/bootstrap/scss/_containers.scss create mode 100644 home/scss/bootstrap/scss/_dropdown.scss create mode 100644 home/scss/bootstrap/scss/_forms.scss create mode 100644 home/scss/bootstrap/scss/_functions.scss create mode 100644 home/scss/bootstrap/scss/_grid.scss create mode 100644 home/scss/bootstrap/scss/_helpers.scss create mode 100644 home/scss/bootstrap/scss/_images.scss create mode 100644 home/scss/bootstrap/scss/_list-group.scss create mode 100644 home/scss/bootstrap/scss/_mixins.scss create mode 100644 home/scss/bootstrap/scss/_modal.scss create mode 100644 home/scss/bootstrap/scss/_nav.scss create mode 100644 home/scss/bootstrap/scss/_navbar.scss create mode 100644 home/scss/bootstrap/scss/_offcanvas.scss create mode 100644 home/scss/bootstrap/scss/_pagination.scss create mode 100644 home/scss/bootstrap/scss/_popover.scss create mode 100644 home/scss/bootstrap/scss/_progress.scss create mode 100644 home/scss/bootstrap/scss/_reboot.scss create mode 100644 home/scss/bootstrap/scss/_root.scss create mode 100644 home/scss/bootstrap/scss/_spinners.scss create mode 100644 home/scss/bootstrap/scss/_tables.scss create mode 100644 home/scss/bootstrap/scss/_toasts.scss create mode 100644 home/scss/bootstrap/scss/_tooltip.scss create mode 100644 home/scss/bootstrap/scss/_transitions.scss create mode 100644 home/scss/bootstrap/scss/_type.scss create mode 100644 home/scss/bootstrap/scss/_utilities.scss create mode 100644 home/scss/bootstrap/scss/_variables.scss create mode 100644 home/scss/bootstrap/scss/bootstrap-grid.scss create mode 100644 home/scss/bootstrap/scss/bootstrap-reboot.scss create mode 100644 home/scss/bootstrap/scss/bootstrap-utilities.scss create mode 100644 home/scss/bootstrap/scss/bootstrap.scss create mode 100644 home/scss/bootstrap/scss/forms/_floating-labels.scss create mode 100644 home/scss/bootstrap/scss/forms/_form-check.scss create mode 100644 home/scss/bootstrap/scss/forms/_form-control.scss create mode 100644 home/scss/bootstrap/scss/forms/_form-range.scss create mode 100644 home/scss/bootstrap/scss/forms/_form-select.scss create mode 100644 home/scss/bootstrap/scss/forms/_form-text.scss create mode 100644 home/scss/bootstrap/scss/forms/_input-group.scss create mode 100644 home/scss/bootstrap/scss/forms/_labels.scss create mode 100644 home/scss/bootstrap/scss/forms/_validation.scss create mode 100644 home/scss/bootstrap/scss/helpers/_clearfix.scss create mode 100644 home/scss/bootstrap/scss/helpers/_colored-links.scss create mode 100644 home/scss/bootstrap/scss/helpers/_position.scss create mode 100644 home/scss/bootstrap/scss/helpers/_ratio.scss create mode 100644 home/scss/bootstrap/scss/helpers/_stretched-link.scss create mode 100644 home/scss/bootstrap/scss/helpers/_text-truncation.scss create mode 100644 home/scss/bootstrap/scss/helpers/_visually-hidden.scss create mode 100644 home/scss/bootstrap/scss/mixins/_alert.scss create mode 100644 home/scss/bootstrap/scss/mixins/_border-radius.scss create mode 100644 home/scss/bootstrap/scss/mixins/_box-shadow.scss create mode 100644 home/scss/bootstrap/scss/mixins/_breakpoints.scss create mode 100644 home/scss/bootstrap/scss/mixins/_buttons.scss create mode 100644 home/scss/bootstrap/scss/mixins/_caret.scss create mode 100644 home/scss/bootstrap/scss/mixins/_clearfix.scss create mode 100644 home/scss/bootstrap/scss/mixins/_color-scheme.scss create mode 100644 home/scss/bootstrap/scss/mixins/_container.scss create mode 100644 home/scss/bootstrap/scss/mixins/_deprecate.scss create mode 100644 home/scss/bootstrap/scss/mixins/_forms.scss create mode 100644 home/scss/bootstrap/scss/mixins/_gradients.scss create mode 100644 home/scss/bootstrap/scss/mixins/_grid.scss create mode 100644 home/scss/bootstrap/scss/mixins/_image.scss create mode 100644 home/scss/bootstrap/scss/mixins/_list-group.scss create mode 100644 home/scss/bootstrap/scss/mixins/_lists.scss create mode 100644 home/scss/bootstrap/scss/mixins/_pagination.scss create mode 100644 home/scss/bootstrap/scss/mixins/_reset-text.scss create mode 100644 home/scss/bootstrap/scss/mixins/_resize.scss create mode 100644 home/scss/bootstrap/scss/mixins/_table-variants.scss create mode 100644 home/scss/bootstrap/scss/mixins/_text-truncate.scss create mode 100644 home/scss/bootstrap/scss/mixins/_transition.scss create mode 100644 home/scss/bootstrap/scss/mixins/_utilities.scss create mode 100644 home/scss/bootstrap/scss/mixins/_visually-hidden.scss create mode 100644 home/scss/bootstrap/scss/utilities/_api.scss create mode 100644 home/scss/bootstrap/scss/vendor/_rfs.scss create mode 100644 index.php create mode 100644 koneksi.php create mode 100644 login.php create mode 100644 logout.php create mode 100644 penyakit.php diff --git a/admin/assets/ckeditor/CHANGES.md b/admin/assets/ckeditor/CHANGES.md new file mode 100644 index 0000000..b618f7c --- /dev/null +++ b/admin/assets/ckeditor/CHANGES.md @@ -0,0 +1,1924 @@ +CKEditor 4 Changelog +==================== + +## CKEditor 4.15 + +New features: + +* [#3940](https://github.com/ckeditor/ckeditor4/issues/3940): Introduced the `colorName` property for customizing foreground and background styles in the [Color Button](https://ckeditor.com/cke4/addon/colorbutton) plugin via the [`config.colorButton_foreStyle`](https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_config.html#cfg-colorButton_foreStyle) and [`config.colorButton_backStyle`](https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_config.html#cfg-colorButton_backStyle) configuration options. +* [#3793](https://github.com/ckeditor/ckeditor4/issues/3793): Introduced the [Editor Placeholder](https://ckeditor.com/cke4/addon/editorplaceholder) plugin. +* [#1795](https://github.com/ckeditor/ckeditor4/issues/1795): The colors picked from the [Color Dialog](https://ckeditor.com/cke4/addon/colordialog) are now stored in the [Color Button](https://ckeditor.com/cke4/addon/colorbutton) palette and can be reused easily. +* [#3783](https://github.com/ckeditor/ckeditor4/issues/3783): The colors used in the document are now displayed as a part of the [Color Button](https://ckeditor.com/cke4/addon/colorbutton) palette. + +Fixed Issues: + +* [#4060](https://github.com/ckeditor/ckeditor4/issues/4060): Fixed: The content inside a [widget](https://ckeditor.com/cke4/addon/widget) nested editable is escaped twice. +* [#4183](https://github.com/ckeditor/ckeditor4/issues/4183): [Safari] Fixed: Incorrect image dimensions when using the [Easy Image](https://ckeditor.com/cke4/addon/easyimage) plugin alongside the [IFrame Editing Area](https://ckeditor.com/cke4/addon/wysiwygarea) plugin. +* [#3693](https://github.com/ckeditor/ckeditor4/issues/3693): Fixed: Incorrect default values for several [Color Button](https://ckeditor.com/cke4/addon/colorbutton) configuration variables in the API documentation. +* [#3795](https://github.com/ckeditor/ckeditor4/issues/3795): Fixed: Setting the [`config.dataIndentationChars`](https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_config.html#cfg-dataIndentationChars) configuration option to an empty string is ignored and replaced by a tab (`\t`) character. Thanks to [Thomas Grinderslev](https://github.com/Znegl)! +* [#4107](https://github.com/ckeditor/ckeditor4/issues/4107): Fixed: Multiple [Autocomplete](https://ckeditor.com/cke4/addon/autocomplete) instances cause keyboard navigation issues. +* [#4041](https://github.com/ckeditor/ckeditor4/issues/4041): Fixed: The[`selection.scrollIntoView`](https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_dom_selection.html#method-scrollIntoView) method throws an error when the editor selection is not set. +* [#3361](https://github.com/ckeditor/ckeditor4/issues/3361): Fixed: Loading multiple [custom editor configurations](https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_config.html#cfg-customConfig) is prone to a race condition between these. +* [#4007](https://github.com/ckeditor/ckeditor4/issues/4007): Fixed: Screen readers do not announce the [Rich Combo](https://ckeditor.com/cke4/addon/richcombo) plugin is collapsed or expanded. +* [#4141](https://github.com/ckeditor/ckeditor4/issues/4141): Fixed: The styles are incorrectly applied when there is a `` DOM element. + +Other Changes: + +* [#13859](https://dev.ckeditor.com/ticket/13859): Test cases created with `bender.tools.createTestsForEditors` will also receive editor bot as a second parameter. + +## CKEditor 4.5.4 + +New Features: + +* [#13632](https://dev.ckeditor.com/ticket/13632): Introduce error logging mechanism. +* [#13730](https://dev.ckeditor.com/ticket/13730): Switch to the new error logging mechanism. + +Fixed Issues: + +* [#9856](https://dev.ckeditor.com/ticket/9856): Fixed: Cannot use the native context menu together with the [Div Editing Area](https://ckeditor.com/cke4/addon/divarea) plugin. Thanks to [Mark Wade](https://github.com/mark-wade)! +* [#12733](https://dev.ckeditor.com/ticket/12733): [IE9+] Fixed: Radio button `onChange` does not work. Thanks to [Iliya Kostadinov](https://github.com/iliyakostadinov)! +* [#13142](https://dev.ckeditor.com/ticket/13142): [Edge] Fixed: *Ctrl+A* and then *Backspace* result in an empty `
` element. +* [#13599](https://dev.ckeditor.com/ticket/13599): Fixed: Cross-editor drag and drop of an inline widget results in error/artifacts. +* [#13640](https://dev.ckeditor.com/ticket/13640): [IE] Fixed: Dropping a widget outside the `` element is not handled correctly. +* [#13533](https://dev.ckeditor.com/ticket/13533): Fixed: No progress during upload. +* [#13680](https://dev.ckeditor.com/ticket/13680): Fixed: The parser should allow the `` element to be a child of the `` element. +* [#11724](https://dev.ckeditor.com/ticket/11724): [Touch devices] Fixed: Drop-downs often hide right after opening them. +* [#13690](https://dev.ckeditor.com/ticket/13690): Fixed: Copying content from IE to Chrome adds an extra paragraph. +* [#13284](https://dev.ckeditor.com/ticket/13284): Fixed: Cannot drag and drop a widget if the text caret is placed just after the widget instance. +* [#13516](https://dev.ckeditor.com/ticket/13516): Fixed: CKEditor removes empty HTML5 anchors without the `name` attribute. +* [#13765](https://dev.ckeditor.com/ticket/13765): [Safari 9] Fixed: Problems with rendering samples. + +Other Changes: + +* [#11725](https://dev.ckeditor.com/ticket/11725): Marked [`CKEDITOR.env.mobile`](https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_env.html#property-mobile) as deprecated. The reason is that it is no longer clear what "mobile" means. +* [#13737](https://dev.ckeditor.com/ticket/13737): Upgraded [Bender.js](https://github.com/benderjs/benderjs) to 0.4.1. + +## CKEditor 4.5.3 + +New Features: + +* [#13501](https://dev.ckeditor.com/ticket/13501): Added the [`config.fileTools_defaultFileName`](https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_config.html#cfg-fileTools_defaultFileName) option to allow setting a default file name for paste uploads. +* [#13603](https://dev.ckeditor.com/ticket/13603): Added support for uploading dropped BMP images. + +Fixed Issues: + +* [#13590](https://dev.ckeditor.com/ticket/13590): Fixed: Various issues related to the [Paste from Word](https://ckeditor.com/cke4/addon/pastefromword) feature. Fixes also: + * [#11215](https://dev.ckeditor.com/ticket/11215), + * [#8780](https://dev.ckeditor.com/ticket/8780), + * [#12762](https://dev.ckeditor.com/ticket/12762). +* [#13386](https://dev.ckeditor.com/ticket/13386): [Edge] Fixed: Issues with selecting and editing images. +* [#13568](https://dev.ckeditor.com/ticket/13568): Fixed: The [`editor.getSelectedHtml()`](https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_editor.html#method-getSelectedHtml) method returns invalid results for entire content selection. +* [#13453](https://dev.ckeditor.com/ticket/13453): Fixed: Drag&drop of entire editor content throws an error. +* [#13465](https://dev.ckeditor.com/ticket/13465): Fixed: Error is thrown and the widget is lost on drag&drop if it is the only content of the editor. +* [#13414](https://dev.ckeditor.com/ticket/13414): Fixed: Content auto paragraphing in a nested editable despite editor configuration. +* [#13429](https://dev.ckeditor.com/ticket/13429): Fixed: Incorrect selection after content insertion by the [Auto Embed](https://ckeditor.com/cke4/addon/autoembed) plugin. +* [#13388](https://dev.ckeditor.com/ticket/13388): Fixed: [Table Resize](https://ckeditor.com/cke4/addon/tableresize) integration with [Undo](https://ckeditor.com/cke4/addon/undo) is broken. + +Other Changes: + +* [#13637](https://dev.ckeditor.com/ticket/13637): Several icons were refactored. +* Updated [Bender.js](https://github.com/benderjs/benderjs) to 0.3.0 and introduced the ability to run tests via HTTPs ([#13265](https://dev.ckeditor.com/ticket/13265)). + +## CKEditor 4.5.2 + +Fixed Issues: + +* [#13609](https://dev.ckeditor.com/ticket/13609): [Edge] Fixed: The browser crashes when switching to the source mode. Thanks to [Andrew Williams and Mark Smeed](http://webxsolution.com/)! +* [PR#201](https://github.com/ckeditor/ckeditor4/pull/201): Fixed: Buttons in the toolbar configurator cause form submission. Thanks to [colemanw](https://github.com/colemanw)! +* [#13422](https://dev.ckeditor.com/ticket/13422): Fixed: A monospaced font should be used in the ` + + + +

+

+ + + + + + diff --git a/admin/assets/ckeditor/samples/old/appendto.html b/admin/assets/ckeditor/samples/old/appendto.html new file mode 100644 index 0000000..4d7bafb --- /dev/null +++ b/admin/assets/ckeditor/samples/old/appendto.html @@ -0,0 +1,60 @@ + + + + + + Append To Page Element Using JavaScript Code — CKEditor Sample + + + + + +

+ CKEditor Samples » Append To Page Element Using JavaScript Code +

+
+ This sample is not maintained anymore. Check out the brand new samples in CKEditor Examples. +
+
+
+

+ The CKEDITOR.appendTo() method serves to to place editors inside existing DOM elements. Unlike CKEDITOR.replace(), + a target container to be replaced is no longer necessary. A new editor + instance is inserted directly wherever it is desired. +

+
CKEDITOR.appendTo( 'container_id',
+	{ /* Configuration options to be used. */ }
+	'Editor content to be used.'
+);
+
+ +
+
+ + + diff --git a/admin/assets/ckeditor/samples/old/assets/inlineall/logo.png b/admin/assets/ckeditor/samples/old/assets/inlineall/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b4d5979e3451d76d72e8b9337ee208d7275abb15 GIT binary patch literal 4283 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 literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css b/admin/assets/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css new file mode 100644 index 0000000..bdcb17e --- /dev/null +++ b/admin/assets/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css @@ -0,0 +1,204 @@ +/* + * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. + * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license + * + * Styles used by the XHTML 1.1 sample page (xhtml.html). + */ + +/** + * Basic definitions for the editing area. + */ +body +{ + font-family: Arial, Verdana, sans-serif; + font-size: 80%; + color: #000000; + background-color: #ffffff; + padding: 5px; + margin: 0px; +} + +/** + * Core styles. + */ + +.Bold +{ + font-weight: bold; +} + +.Italic +{ + font-style: italic; +} + +.Underline +{ + text-decoration: underline; +} + +.StrikeThrough +{ + text-decoration: line-through; +} + +.Subscript +{ + vertical-align: sub; + font-size: smaller; +} + +.Superscript +{ + vertical-align: super; + font-size: smaller; +} + +/** + * Font faces. + */ + +.FontComic +{ + font-family: 'Comic Sans MS'; +} + +.FontCourier +{ + font-family: 'Courier New'; +} + +.FontTimes +{ + font-family: 'Times New Roman'; +} + +/** + * Font sizes. + */ + +.FontSmaller +{ + font-size: smaller; +} + +.FontLarger +{ + font-size: larger; +} + +.FontSmall +{ + font-size: 8pt; +} + +.FontBig +{ + font-size: 14pt; +} + +.FontDouble +{ + font-size: 200%; +} + +/** + * Font colors. + */ +.FontColor1 +{ + color: #ff9900; +} + +.FontColor2 +{ + color: #0066cc; +} + +.FontColor3 +{ + color: #f7c61c; +} + +.FontColor1BG +{ + background-color: #ff9900; +} + +.FontColor2BG +{ + background-color: #0066cc; +} + +.FontColor3BG +{ + background-color: #f7c61c; +} + +/** + * Indentation. + */ + +.Indent1 +{ + margin-left: 40px; +} + +.Indent2 +{ + margin-left: 80px; +} + +.Indent3 +{ + margin-left: 120px; +} + +/** + * Alignment. + */ + +.JustifyLeft +{ + text-align: left; +} + +.JustifyRight +{ + text-align: right; +} + +.JustifyCenter +{ + text-align: center; +} + +.JustifyFull +{ + text-align: justify; +} + +/** + * Other. + */ + +code +{ + font-family: courier, monospace; + background-color: #eeeeee; + padding-left: 1px; + padding-right: 1px; + border: #c0c0c0 1px solid; +} + +kbd +{ + padding: 0px 1px 0px 1px; + border-width: 1px 2px 2px 1px; + border-style: solid; +} + +blockquote +{ + color: #808080; +} diff --git a/admin/assets/ckeditor/samples/old/assets/posteddata.php b/admin/assets/ckeditor/samples/old/assets/posteddata.php new file mode 100644 index 0000000..00d9945 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/assets/posteddata.php @@ -0,0 +1,60 @@ + + + + + + Sample — CKEditor + + + + +

+ CKEditor — Posted Data +

+ + + + + + + + + $value ) + { + if ( ( !is_string($value) && !is_numeric($value) ) || !is_string($key) ) + continue; + + if ( get_magic_quotes_gpc() ) + $value = htmlspecialchars( stripslashes((string)$value) ); + else + $value = htmlspecialchars( (string)$value ); +?> + + + + + +
Field NameValue
+ + + diff --git a/admin/assets/ckeditor/samples/old/assets/sample.jpg b/admin/assets/ckeditor/samples/old/assets/sample.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9498271c6032eafda487c0428ad5b26eff35985a GIT binary patch literal 14449 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 literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/samples/old/assets/uilanguages/languages.js b/admin/assets/ckeditor/samples/old/assets/uilanguages/languages.js new file mode 100644 index 0000000..aae3405 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/assets/uilanguages/languages.js @@ -0,0 +1,7 @@ +/* + Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. + For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +var CKEDITOR_LANGS=function(){var c={af:"Afrikaans",ar:"Arabic",az:"Azerbaijani",bg:"Bulgarian",bn:"Bengali/Bangla",bs:"Bosnian",ca:"Catalan",cs:"Czech",cy:"Welsh",da:"Danish",de:"German","de-ch":"German (Switzerland)",el:"Greek",en:"English","en-au":"English (Australia)","en-ca":"English (Canadian)","en-gb":"English (United Kingdom)",eo:"Esperanto",es:"Spanish","es-mx":"Spanish (Mexico)",et:"Estonian",eu:"Basque",fa:"Persian",fi:"Finnish",fo:"Faroese",fr:"French","fr-ca":"French (Canada)",gl:"Galician", +gu:"Gujarati",he:"Hebrew",hi:"Hindi",hr:"Croatian",hu:"Hungarian",id:"Indonesian",is:"Icelandic",it:"Italian",ja:"Japanese",ka:"Georgian",km:"Khmer",ko:"Korean",ku:"Kurdish",lt:"Lithuanian",lv:"Latvian",mk:"Macedonian",mn:"Mongolian",ms:"Malay",nb:"Norwegian Bokmal",nl:"Dutch",no:"Norwegian",oc:"Occitan",pl:"Polish",pt:"Portuguese (Portugal)","pt-br":"Portuguese (Brazil)",ro:"Romanian",ru:"Russian",si:"Sinhala",sk:"Slovak",sq:"Albanian",sl:"Slovenian",sr:"Serbian (Cyrillic)","sr-latn":"Serbian (Latin)", +sv:"Swedish",th:"Thai",tr:"Turkish",tt:"Tatar",ug:"Uighur",uk:"Ukrainian",vi:"Vietnamese",zh:"Chinese Traditional","zh-cn":"Chinese Simplified"},b=[],a;for(a in CKEDITOR.lang.languages)b.push({code:a,name:c[a]||a});b.sort(function(a,b){return a.name + + + + + Data Filtering — CKEditor Sample + + + + + + +

+ CKEditor Samples » Data Filtering and Features Activation +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ This sample page demonstrates the idea of Advanced Content Filter + (ACF), a sophisticated + tool that takes control over what kind of data is accepted by the editor and what + kind of output is produced. +

+

When and what is being filtered?

+

+ ACF controls + every single source of data that comes to the editor. + It process both HTML that is inserted manually (i.e. pasted by the user) + and programmatically like: +

+
+editor.setData( '<p>Hello world!</p>' );
+
+

+ ACF discards invalid, + useless HTML tags and attributes so the editor remains "clean" during + runtime. ACF behaviour + can be configured and adjusted for a particular case to prevent the + output HTML (i.e. in CMS systems) from being polluted. + + This kind of filtering is a first, client-side line of defense + against "tag soups", + the tool that precisely restricts which tags, attributes and styles + are allowed (desired). When properly configured, ACF + is an easy and fast way to produce a high-quality, intentionally filtered HTML. +

+ +

How to configure or disable ACF?

+

+ Advanced Content Filter is enabled by default, working in "automatic mode", yet + it provides a set of easy rules that allow adjusting filtering rules + and disabling the entire feature when necessary. The config property + responsible for this feature is config.allowedContent. +

+

+ By "automatic mode" is meant that loaded plugins decide which kind + of content is enabled and which is not. For example, if the link + plugin is loaded it implies that <a> tag is + automatically allowed. Each plugin is given a set + of predefined ACF rules + that control the editor until + config.allowedContent + is defined manually. +

+

+ Let's assume our intention is to restrict the editor to accept (produce) paragraphs + only: no attributes, no styles, no other tags. + With ACF + this is very simple. Basically set + config.allowedContent to 'p': +

+
+var editor = CKEDITOR.replace( textarea_id, {
+	allowedContent: 'p'
+} );
+
+

+ Now try to play with allowed content: +

+
+// Trying to insert disallowed tag and attribute.
+editor.setData( '<p style="color: red">Hello <em>world</em>!</p>' );
+alert( editor.getData() );
+
+// Filtered data is returned.
+"<p>Hello world!</p>"
+
+

+ What happened? Since config.allowedContent: 'p' is set the editor assumes + that only plain <p> are accepted. Nothing more. This is why + style attribute and <em> tag are gone. The same + filtering would happen if we pasted disallowed HTML into this editor. +

+

+ This is just a small sample of what ACF + can do. To know more, please refer to the sample section below and + the official Advanced Content Filter guide. +

+

+ You may, of course, want CKEditor to avoid filtering of any kind. + To get rid of ACF, + basically set + config.allowedContent to true like this: +

+
+CKEDITOR.replace( textarea_id, {
+	allowedContent: true
+} );
+
+ +

Beyond data flow: Features activation

+

+ ACF is far more than + I/O control: the entire + UI of the editor is adjusted to what + filters restrict. For example: if <a> tag is + disallowed + by ACF, + then accordingly link command, toolbar button and link dialog + are also disabled. Editor is smart: it knows which features must be + removed from the interface to match filtering rules. +

+

+ CKEditor can be far more specific. If <a> tag is + allowed by filtering rules to be used but it is restricted + to have only one attribute (href) + config.allowedContent = 'a[!href]', then + "Target" tab of the link dialog is automatically disabled as target + attribute isn't included in ACF rules + for <a>. This behaviour applies to dialog fields, context + menus and toolbar buttons. +

+ +

Sample configurations

+

+ There are several editor instances below that present different + ACF setups. All of them, + except the inline instance, share the same HTML content to visualize + how different filtering rules affect the same input data. +

+
+ +
+ +
+

+ This editor is using default configuration ("automatic mode"). It means that + + config.allowedContent is defined by loaded plugins. + Each plugin extends filtering rules to make it's own associated content + available for the user. +

+
+ + + +
+ +
+ +
+ +
+

+ This editor is using a custom configuration for + ACF: +

+
+CKEDITOR.replace( 'editor2', {
+	allowedContent:
+		'h1 h2 h3 p blockquote strong em;' +
+		'a[!href];' +
+		'img(left,right)[!src,alt,width,height];' +
+		'table tr th td caption;' +
+		'span{!font-family};' +'
+		'span{!color};' +
+		'span(!marker);' +
+		'del ins'
+} );
+
+

+ The following rules may require additional explanation: +

+
    +
  • + h1 h2 h3 p blockquote strong em - These tags + are accepted by the editor. Any tag attributes will be discarded. +
  • +
  • + a[!href] - href attribute is obligatory + for <a> tag. Tags without this attribute + are disarded. No other attribute will be accepted. +
  • +
  • + img(left,right)[!src,alt,width,height] - src + attribute is obligatory for <img> tag. + alt, width, height + and class attributes are accepted but + class must be either class="left" + or class="right" +
  • +
  • + table tr th td caption - These tags + are accepted by the editor. Any tag attributes will be discarded. +
  • +
  • + span{!font-family}, span{!color}, + span(!marker) - <span> tags + will be accepted if either font-family or + color style is set or class="marker" + is present. +
  • +
  • + del ins - These tags + are accepted by the editor. Any tag attributes will be discarded. +
  • +
+

+ Please note that UI of the + editor is different. It's a response to what happened to the filters. + Since text-align isn't allowed, the align toolbar is gone. + The same thing happened to subscript/superscript, strike, underline + (<u>, <sub>, <sup> + are disallowed by + config.allowedContent) and many other buttons. +

+
+ + +
+ +
+ +
+ +
+

+ This editor is using a custom configuration for + ACF. + Note that filters can be configured as an object literal + as an alternative to a string-based definition. +

+
+CKEDITOR.replace( 'editor3', {
+	allowedContent: {
+		'b i ul ol big small': true,
+		'h1 h2 h3 p blockquote li': {
+			styles: 'text-align'
+		},
+		a: { attributes: '!href,target' },
+		img: {
+			attributes: '!src,alt',
+			styles: 'width,height',
+			classes: 'left,right'
+		}
+	}
+} );
+
+
+ + +
+ +
+ +
+ +
+

+ This editor is using a custom set of plugins and buttons. +

+
+CKEDITOR.replace( 'editor4', {
+	removePlugins: 'bidi,font,forms,flash,horizontalrule,iframe,justify,table,tabletools,smiley',
+	removeButtons: 'Anchor,Underline,Strike,Subscript,Superscript,Image',
+	format_tags: 'p;h1;h2;h3;pre;address'
+} );
+
+

+ As you can see, removing plugins and buttons implies filtering. + Several tags are not allowed in the editor because there's no + plugin/button that is responsible for creating and editing this + kind of content (for example: the image is missing because + of removeButtons: 'Image'). The conclusion is that + ACF works "backwards" + as well: modifying UI + elements is changing allowed content rules. +

+
+ + +
+ +
+ +
+ +
+

+ This editor is built on editable <h1> element. + ACF takes care of + what can be included in <h1>. Note that there + are no block styles in Styles combo. Also why lists, indentation, + blockquote, div, form and other buttons are missing. +

+

+ ACF makes sure that + no disallowed tags will come to <h1> so the final + markup is valid. If the user tried to paste some invalid HTML + into this editor (let's say a list), it would be automatically + converted into plain text. +

+
+

+ Apollo 11 was the spaceflight that landed the first humans, Americans Neil Armstrong and Buzz Aldrin, on the Moon on July 20, 1969, at 20:18 UTC. +

+
+ +
+ +
+ +
+

+ This editor is using a custom configuration for ACF. + It's using the + Disallowed Content property of the filter to eliminate all title attributes. +

+ +
+CKEDITOR.replace( 'editor6', {
+	allowedContent: {
+		'b i ul ol big small': true,
+		'h1 h2 h3 p blockquote li': {
+			styles: 'text-align'
+		},
+		a: {attributes: '!href,target'},
+		img: {
+			attributes: '!src,alt',
+			styles: 'width,height',
+			classes: 'left,right'
+		}
+	},
+	disallowedContent: '*{title*}'
+} );
+
+
+ + +
+ +
+ +
+ +
+

+ This editor is using a custom configuration for ACF. + It's using the + Disallowed Content property of the filter to eliminate all a and img tags, + while allowing all other tags. +

+
+CKEDITOR.replace( 'editor7', {
+	allowedContent: {
+		// Allow all content.
+		$1: {
+			elements: CKEDITOR.dtd,
+			attributes: true,
+			styles: true,
+			classes: true
+		}
+	},
+	disallowedContent: 'img a'
+} );
+
+
+ + +
+ + + + diff --git a/admin/assets/ckeditor/samples/old/dialog/assets/my_dialog.js b/admin/assets/ckeditor/samples/old/dialog/assets/my_dialog.js new file mode 100644 index 0000000..d8698f3 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/dialog/assets/my_dialog.js @@ -0,0 +1,48 @@ +/** + * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. + * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license + */ + +CKEDITOR.dialog.add( 'myDialog', function() { + return { + title: 'My Dialog', + minWidth: 400, + minHeight: 200, + contents: [ + { + id: 'tab1', + label: 'First Tab', + title: 'First Tab', + elements: [ + { + id: 'input1', + type: 'text', + label: 'Text Field' + }, + { + id: 'select1', + type: 'select', + label: 'Select Field', + items: [ + [ 'option1', 'value1' ], + [ 'option2', 'value2' ] + ] + } + ] + }, + { + id: 'tab2', + label: 'Second Tab', + title: 'Second Tab', + elements: [ + { + id: 'button1', + type: 'button', + label: 'Button Field' + } + ] + } + ] + }; +} ); + diff --git a/admin/assets/ckeditor/samples/old/dialog/dialog.html b/admin/assets/ckeditor/samples/old/dialog/dialog.html new file mode 100644 index 0000000..cc16d09 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/dialog/dialog.html @@ -0,0 +1,191 @@ + + + + + + Using API to Customize Dialog Windows — CKEditor Sample + + + + + + + + + + +

+ CKEditor Samples » Using CKEditor Dialog API +

+
+ This sample is not maintained anymore. Check out the brand new samples in CKEditor Examples. +
+
+

+ This sample shows how to use the + CKEditor Dialog API + to customize CKEditor dialog windows without changing the original editor code. + The following customizations are being done in the example below: +

+

+ For details on how to create this setup check the source code of this sample page. +

+
+

A custom dialog is added to the editors using the pluginsLoaded event, from an external dialog definition file:

+
    +
  1. Creating a custom dialog window – "My Dialog" dialog window opened with the "My Dialog" toolbar button.
  2. +
  3. Creating a custom button – Add button to open the dialog with "My Dialog" toolbar button.
  4. +
+ + +

The below editor modify the dialog definition of the above added dialog using the dialogDefinition event:

+
    +
  1. Adding dialog tab – Add new tab "My Tab" to dialog window.
  2. +
  3. Removing a dialog window tab – Remove "Second Tab" page from the dialog window.
  4. +
  5. Adding dialog window fields – Add "My Custom Field" to the dialog window.
  6. +
  7. Removing dialog window field – Remove "Select Field" selection field from the dialog window.
  8. +
  9. Setting default values for dialog window fields – Set default value of "Text Field" text field.
  10. +
  11. Setup initial focus for dialog window – Put initial focus on "My Custom Field" text field.
  12. +
+ + + + + diff --git a/admin/assets/ckeditor/samples/old/divreplace.html b/admin/assets/ckeditor/samples/old/divreplace.html new file mode 100644 index 0000000..3431db8 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/divreplace.html @@ -0,0 +1,145 @@ + + + + + + Replace DIV — CKEditor Sample + + + + + + + +

+ CKEditor Samples » Replace DIV with CKEditor on the Fly +

+
+ This sample is not maintained anymore. Check out the brand new samples in CKEditor Examples. +
+
+

+ This sample shows how to automatically replace <div> elements + with a CKEditor instance on the fly, following user's doubleclick. The content + that was previously placed inside the <div> element will now + be moved into CKEditor editing area. +

+

+ For details on how to create this setup check the source code of this sample page. +

+
+

+ Double-click any of the following <div> elements to transform them into + editor instances. +

+
+

+ Part 1 +

+

+ Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras et ipsum quis mi + semper accumsan. Integer pretium dui id massa. Suspendisse in nisl sit amet urna + rutrum imperdiet. Nulla eu tellus. Donec ante nisi, ullamcorper quis, fringilla + nec, sagittis eleifend, pede. Nulla commodo interdum massa. Donec id metus. Fusce + eu ipsum. Suspendisse auctor. Phasellus fermentum porttitor risus. +

+
+
+

+ Part 2 +

+

+ Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras et ipsum quis mi + semper accumsan. Integer pretium dui id massa. Suspendisse in nisl sit amet urna + rutrum imperdiet. Nulla eu tellus. Donec ante nisi, ullamcorper quis, fringilla + nec, sagittis eleifend, pede. Nulla commodo interdum massa. Donec id metus. Fusce + eu ipsum. Suspendisse auctor. Phasellus fermentum porttitor risus. +

+

+ Donec velit. Mauris massa. Vestibulum non nulla. Nam suscipit arcu nec elit. Phasellus + sollicitudin iaculis ante. Ut non mauris et sapien tincidunt adipiscing. Vestibulum + vitae leo. Suspendisse nec mi tristique nulla laoreet vulputate. +

+
+
+

+ Part 3 +

+

+ Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras et ipsum quis mi + semper accumsan. Integer pretium dui id massa. Suspendisse in nisl sit amet urna + rutrum imperdiet. Nulla eu tellus. Donec ante nisi, ullamcorper quis, fringilla + nec, sagittis eleifend, pede. Nulla commodo interdum massa. Donec id metus. Fusce + eu ipsum. Suspendisse auctor. Phasellus fermentum porttitor risus. +

+
+ + + diff --git a/admin/assets/ckeditor/samples/old/easyimage/easyimage.html b/admin/assets/ckeditor/samples/old/easyimage/easyimage.html new file mode 100644 index 0000000..fc56c5f --- /dev/null +++ b/admin/assets/ckeditor/samples/old/easyimage/easyimage.html @@ -0,0 +1,103 @@ + + + + + + CKEditor Easy Image Sample + + + + + + + + + + + +
+
+

+ CKEditor Sample +

+
+
+ +
+
+
+
+

Easy Image Demo

+

This sample shows the progress of work on Easy Image. Drop an image file into the editor to see how easily images can be handled.

+
+
+
+
+
+
+
+

Apollo 11

+
+ Saturn V carrying Apollo 11 +
+

Apollo 11 was the spaceflight that landed the first humans, Americans Neil Armstrong and Buzz Aldrin, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.

+
+ Saturn V carrying Apollo 11 +
Saturn V carrying Apollo 11
+
+

Armstrong spent about three and a half two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5 kg) of lunar material for return to Earth. A third member of the mission, Michael Collins, piloted the command spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.

+
+
+
+
+
+ +
+
+

+ CKEditor – The text editor for the Internet – https://ckeditor.com +

+

+ Copyright © 2003-2020, CKSource – Frederico Knabben. All rights reserved. +

+
+
+ + + + diff --git a/admin/assets/ckeditor/samples/old/enterkey/enterkey.html b/admin/assets/ckeditor/samples/old/enterkey/enterkey.html new file mode 100644 index 0000000..15ca071 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/enterkey/enterkey.html @@ -0,0 +1,107 @@ + + + + + + ENTER Key Configuration — CKEditor Sample + + + + + + + + + +

+ CKEditor Samples » ENTER Key Configuration +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ This sample shows how to configure the Enter and Shift+Enter keys + to perform actions specified in the + enterMode + and shiftEnterMode + parameters, respectively. + You can choose from the following options: +

+
    +
  • ENTER_P – new <p> paragraphs are created;
  • +
  • ENTER_BR – lines are broken with <br> elements;
  • +
  • ENTER_DIV – new <div> blocks are created.
  • +
+

+ The sample code below shows how to configure CKEditor to create a <div> block when Enter key is pressed. +

+
+CKEDITOR.replace( 'textarea_id', {
+	enterMode: CKEDITOR.ENTER_DIV
+});
+

+ Note that textarea_id in the code above is the id attribute of + the <textarea> element to be replaced. +

+
+
+ When Enter is pressed:
+ +
+
+ When Shift+Enter is pressed:
+ +
+
+
+

+
+ +

+

+ +

+
+ + + diff --git a/admin/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla b/admin/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/outputforflash.fla new file mode 100644 index 0000000000000000000000000000000000000000..27e68ccd1cb7192c8bda2418d198d90f1aff10a7 GIT binary patch literal 85504 zcmeHw2YggT*Z$pXLX+M*5u`~Agc2Y$>C%e=N(~_aDG4MXp+-@<6j3A)Kv5BuDu{@b zC|x6{DAId*Y0^6+|L2*xbNBAuWOu`>|IhFDWnpse%sF#r=FFKs_uOCh*OHPmYZ*-8K6tk2PRprjCG_WH{79A?ZYUi6>A(LS66mN!;9s=nuQk<%01ne) zSe0J?@@sxZeN#UozZlc)i(&h6O(@>6QKuF)<(E3G)v zXPdCYd7FMC&|c3g*>`eEzor(TRY&^#TT>Ev_{;Q}uKIZ(7wC%kJGq>s{5$KPGDxa% zbKTOT_7>lK^}{PogC`6Wsp$28{ln#zSpWVAjHS@<`@8BtE#)7EbZdu+|T||L>@O>OR{P^B}pp|7)&)rMFKIHwi8iqOv?0;poo{m<8?`xU6v5;IhNz zfWr`=<$@#K|BoNjsf6?@!&QL`fU62u4K5I_IviUqTTU&wAh_Cab>Qm41;f>Ys}I)z zt|1(Gz5v)5t_fUIICc%q;n;n(gnJRL6&z{X0Jeo|2iG3116)VAPH>&!UV?iWt_xgO zxNdN-z`Y9B9j*slPqkl^o?lm|zq(N|l;fBCP!2KO^ zZ)56zf*`e;qW7yM{vrvFKlDF_?o$UmMgRfzwVmGoc|-4shUu!GC)$4kuhJ&`C-{5f z`QM~(_nYqXv1k>VwuucKzwM|Xo6ScXY11-Y?U6Y;U(*BG-&#Fs^|hP{ewkWnvvc`Q zm^wXSp8t=r6S7qHpV7O0^Ir?iD|dQw(eb6G?@g{-v`q5j@S+`}Pgg7cUZoFx?9cb9 zSMgBW*qqsC1qbEKKXdQGYnT7L*I~fJ($`8iN`9`#g}lcuuKZ%8~xTmfH2ni2FaknOOYV^7l7H%xt-8)yzF#AIWm=(u%i-{jqh%(r;p7Vy@1bcyDfl z^}eSU+`cmBw{yRSS38|_^P{YXVqVDbSJ1Ohs?BV*`0B1tYpp(*r|YJPT_6A1;o_Qe z%c75TpVfYR!Y?JhTYUW1Ym0nCibP*|x9I5P#M`!r$BQG*9_aq<@Lsc@yHft$KHs(7 z-Me?y;z3uQDY`LoNp!~ieQOo?r26RVd*+udbnTs$>wH5lHQn{x@S-&;559i7)~%gG zj+W08)ppPQ<(;bC?Y(CD@m>{6-OIn{ozZQ7%-MUWf8@a&L09bcuVkx#C3F2v88#j| z+2rC^pZkA&=eK(+qqlCpJ8+_J?!(6ef`|A2u|nMID-S=HT1HXwQrP(Jl+1}^*WIu$^P*N?GL{#613*>d7q1$K5tlO?C?**T43^kTGkr3 zAJDgbpYVR1%-OWe!r!`2Ouu2~fM&z`4Av=RjL!W=M*DHrhw)rG3=jIi&Okh~k7U2b zU*qQ`Y*!r6_G$us7<9C(*EPRJn0XFBZ^%AQldTAh^hpZC#Lvgf98sTXhK{=xI^KTT zNK7Khq@UXHn>oF+6FpYCkL}9~jhkqp1IoNFWSU=4VPW)o=7w&H?(E^Sz z`VX1fJOD#ZB!-(|Vv!Jr3hJXpVQ8wX%beLAA}X#j22a+4Bc!E1wI7Bdtq+E{ei(+c z;a|$NRvBEQk=h`mKK;=#`D-QdPsR(=hJ#~YPz?~v27lzFAAC)~JsPf@;Glfvk)}=-!F^N?bbtx_|(Mgvi=U4!^jCQ4CG8liosegkw{o#M31b!Sn?Tfh$$6T)e zMpk^XcU`_}7y3^Lek1tHlgkr>$22QmC%V~R`|4J@r%gM%{gVmx3yuD;>yWj> zZ@u$fyZgJQWGGwbO1?jSKHKEt<3Dm;ynk-?CmCwZSb6E*^}}C|%RPDUf!ZT3CG5Gk zv`yEC;U|t>d7)e6=}n0Z#y=VURm3h+g>mFfmZf#(3RWga$Q_~Bl5NVyE=Zc`0S?Q zUEcQ%S+b;W$A}&qy7sKF#XtG&P0RlCX2sx`o*iR%oG4be>^^N;{<1!kW@?ju-*s5Fr;iH+MkG98!g+J)OYF>P~tF?;n9kgc9 zOD}Ey;Lo;q<}|!?y+DDVN{lT~I$u!ttVNS-L1Vr@zdbx#+cCFSFV6FsZCa-f7mOcp zq(Yvx)B4p9_{QhX-NldgX0F@q<*vC`cR9Va@_SoLR9W-m_CA|h9BbXyH~XhoGn}2? zc+K!5!@n5U@%E_h`Et(+kNv20!s##1Hi_Swsp!&%wUXz?XF3*~apQxk3-Xlk&3?^Z zc4_aU_ecC1bEred!lRGu?fG8Q<^glxDi&4c=67ZH?OD3NK%1@WZ%-)p^LuYqEqx{5 zMXlocwQCNRIrGc!89u)D#ngK@4=)>+d)5itcuL`e$fV%aK{h_h`q4qj#Kb zGGJ}}1}paLpZ4YAyqk-6dE0l)%zpWP{4(LxPYKUnegDLfyFczfxjlS#V7ASpAAeUO zwAjeMN_SuEd#wB19FuOm-{^XUMGuoQ9`egtWn%I1elfXrzFVbK*&nvNvAN{c#~b5< z-aByl=B<$9NlTtT{?ovZAGY)#zWbR~zE|=MD|z+(Z`W^rq3GP$jQiX5m{mLB*Lnp@ zwe385$Bs#7^7kra?-8FPDZ16YE44p5)1=6>nBRsC9x~=w@y%Z@ehztj*{5Z(W-}-J zJZA47lNvvMTx?@p{i25}+#a}~e*A({+X~rA?A@0zv~Ta`Rn`o?;9oWT;%kp0bDz4_ zXOwTvT36oJvcJ0G=lACh95$!O^u;e9x_9$Zmj;;w7M0zz>&40sA_tA`m;Xw>rA-S~ zm|s7>$^EZ)9lVk6o!Y%}3|euw$Lb$%Ek5?k9{WchUyTWRW9X8HUk_Ln@Z{_3%M*Ie zKJd%F6$iS-m#cK(>?gI7o-F=CWb|#{YJYY8_Q#t8zuf%7)|z939u(O6L5|opy$;>T zw=;g%p{n7-PDgH!-!o-;?TFe@9p>8iuj>-j?789>x2?HwDroGKcTd%=@@+vo+GorQ z)U_R#iVjGM8S&Dl5B_WhO@47z?R`DYZ;P{Sz1tvm+tFuEygF|1&iFj<%v(FGw}xGc+{?Vxh0!JhAr7XX72lkdq0eNe{7ZTCsV5aykOtp{p))S z?Y=eXxA7=Z=gU zJZ#C%_>1kv6x;a0t;m8=H7}g%pBNVvnsGvrxJA2fbUTA$Y<=rVn<5(vjF~bb@!R)u zOsX@g-k?$kE9B3=U_ze0_4mCSwzyd0pvOBWy;QnxNWf>|-AnA~T(0?!9_6}T>9BR& z*gTU0Us?a!;JZ&gODH+C#hA()&#gbQu1dZ6-}L|f^7fTIzx%Cu{r!)#-MqK+MB=i) z>W#{qeE!=L8|yU~yZx)z-@5x_>r&@im)M*CKZpKEc&~Pj@Pg3+SMzI7sG}vss8Hl_DdSn%bDlb4WGZ-YumT$ zm(>f}cD~{1x5qTi9(crm?#Qui?tQuPz*irI%pTq*e!-Y!`~36A-MRKf{f#%4oZdSo z|In7*AJ6Oh`-NNI249GHL(5d~_Y+f(*P6Mf$I^PQyjFb1!^q=rZvE`~=^O`&cH2Lx z(`(0K>ouQyD{|iXMxXUP7JF`6OrENZmfB9Xtb4xb>Mq3(pV@WkSlui;PBxj+bGX*^ zXoIhhuQ>B_{fVQKUjD3dk9@BN=lHb#njK$#)VpflqBr9j_~k!#{7&*S`KN6AYIVUQ zt2-6=>Gf?fLDOqT72n(A`oIR6x>v0?ed`}Rhn{KDqt%`AA#c{-9)7y_oX8nhzW!z3 z<42`>&+l4&Y*3HDo6FaCx;189mxL)N8#gHX;{Ne}wfnL`_(uy`H~zL+z0ZT9&wSDT zaPPR@bv8B)4SjCcyoXtDMy#$`uVS+%^ES13k~nmE&!{=C9-mib#E+eO|9Wv-?JPaV z6dRFv{n+(W4Qpk5wN}Gp!O@SZJ~Mj!wu1W?m8!7Mzvu4iWo~ti&GSdkL*pL48F1uG zlXFc5+}t-dCff&N|2nX*{mRdee{wwAr(;%E8`3rU^y=WfE3)SQeBhq&-v>S(F+b*= zdj}(G75lkrp`Y4bIriDiaj&l!SbV}ehr0Iqw$)D;66fFYU3@t#NBIkvHW!+ZA;M z6nU}UH^^o6UGHBTe)Yhy6^mk4Eb03DwJ*Cy*1fr)OX>WF=7#LP8Z+vheKk&Wc=Te$ zEj21v?eJ5stzqA`-#6!#V|89Gv#r*)d226ji>Y~{!TB=}f3vOr;HPf;%WnRDX3Xlv zwX|(@YR!({-TCmOIh8(M|FCbs{t@{ztVULLF23@9vl7=@&Un1zz4nh*otvEFQrk=I zH^2Pr$9ble$=>+f(W$+EeZ1)L-nQ9K)fg8(E^5ac7x!0<>2RXQPkw8A+|PQh*RUmr ziXZXc^;`CrW_9tb(%T+52h{(&;BH`)aeRI^VY5`@?nnf61N8yUfsEP z*)Mu6sCpsW^jiy)+in~mbMWS=+sC30{t)uY_XFNp)%EU=8Q%{7q~MKat!ni;-K6)> zZ>m3z?6Tq7l6mDLiWYeByE6IPlqk8lQQbQ4)x2G#!r~3Z+En~%(}RUSjh?tZBBWgR zin)7TDez#!rVBT=B=uakDP+x(I)|>tm0z>={M@OvF9*jrD7o{Sj8(S`J5W30m3)`Z z=bGF+u+r{3ed7N!vvz}sBUKyMESBY9g_+mxT)x(*NL0nPZw)Dfxzu-`HhQ@7tvW;h z{Ps?bgI`zJG3|ETz$0gOw!hJ0c|gX?t6~-g=gD5CYnP!N3RS!`uVKvIE1gzHoo>74 zv#!-2@ysJ7?6=9N|+2@0yio zK;757EgpC%;PTYHeq)0ET)uDp;YF{X^u3zznMpOv`b?|a=~CM)7wcZC`)-bHe|-GP zpE1>AW?yJqq)y)8i4&SWtUI}BRK@dG=G=<7)cru!p*bs8>G)@bmGM_IK3Z_U^!Qs_ zLS{e7@$#0Ee~zs+WKXVv#j}qIIxsG1b(anI>=#Z1XCD9Y!`wBtoc?NQm6Lz|wdKaF zPe0f{b8)uq@nr|y+qI<4=+d8^U9!Ah%-p+E_e|-ST%vB^<;@#Q#^3WFpKDs;-h!=y zuC895XWFLxm5UF|lYhcHP0N2X^^@B@TO}2~J}~fnB0IG46APZma)0@Xv2j^T%-B17 z__W&lCpA72cX9oyXMAqFKfGz_7ao7zYwRzD%T}&?cJ0pT6Nk)wc(LvqJBsDL^Zks- zGjG%h%lgNGY-P&Us`%BQppjWKPV3UKd4(<;Pks7D^ty)yChQ43dU?;_&w@)9j>6>O zY?EPqSJ(b(NY(I#rCN=z`D9ws{TJtUPkw33+xrfUp7HCdN`o65sba78)!@-P3YUF1 z&y>cW-y0X!ar?=)B9Cu7yEF1k<>fymUhvyi^4i-|cSWw=J)&FEiw7(B>$7Ib`e}y~ zzxepe!qe7tC|2jys1hjI(GSXhzvyyg-JR3xG(T{*$(_<0mls(bH2dU&^_L4?IMsE_ z_OHvf`tXBRtxL=}Tp@q<%l1hfN`(4MJF@>$aN)a)a-ZKc`KyrV$4RZX&z(_Y_{uij zy8d40+@ZizAsvQ(KkD3}+^6nG|GqPG&HU$X#h+>0DqzO=A8%glTqFO3|7_Z_c--hi z!9{1}!B{!&c=>_H8U~EsF}?P{P15S6ia4~3X)w2!P7TpzxVR2!(nI*RED0!sw!j^+(Ma9oMTjOxyQ75K6 zd#>T>iC3$B-eY^xhCUPb`IlH*DI|XI{ecgY`@MSZ!Ny~UYaCg&JLZ)S3e4T`*Gu;r zT)!IGGo;(ysVj?Yc&jlolrRZH+3!EMzSpn#(6wE*pWc4&`zaN^X?6C;h)@6e?!?Y! z>n^sR{ra=tT)f|5@cf%IUc2?)u4(ANt}h$2EuwqRnp;0T{rU1bXE(IJ+W+n!E2^9i zoYMT8YGEZNcPaZ#&+^57u3xt4%uUB`4y@aEZ;pc_T9j}5R+V4Z?ESWLVqE;e0fT28 z&D=J0%-c1e$#XT|oIIymRlk~VMxG~K#}w$={l@TN+vn}M@@msO4`%jlzCV1$ywK?r z??uNi+m|Wdw2IdzHa}3_x5~96^G_Vw?sw$5n)esJziM5@RRaz|5$crrW=*}pllJZ3 ze&UVKle^6b9#p@}Pd7)FUbB1b`X2XY|52~SUyTQ~zi?{9J9+j@sWqr}#eLxgGLM}y zzhK{I%a$3m_s@B^`rUo8eB0Y+a&|pBH}}v#qi;RgeCu$jHxmCE|LU3b->e_==GbBN zn~iuF`7ok>$sE_}J$t)!wZ9UZJbF-LIvCz9+ATcs!MmGtUq97VG{XxE2k*)CO_%=l zT3me)QsZ8mPDkpmN%&(`z2Y|pES(v<>+RKj=Z3V)yf<^-k{R}|9&z&fV+R+H?z`wn z(QZFY>bq~-n%YAPoT<=ubkmYmhAycRa_I29$<5llwsPI(S`}LPWPT?@w&6!!J@VVn zuP0>O`)!Wy7vgOtg8J^=wmyH*pS3^ustYu~@{N33H=n+Ds%w0v(QlvGK7I0oR(HdaWM5_rOM5@|M;g9IEi?pV=bockMl6dAt8AOyaMYuwKUFz0VSAxonJ;bowZ_<_uRCWyR&?H^ z#zn)L)Zbe1+r0-zpDq=$D%)q{dme)L&i>W+th2K9*7bdRmFYWUQ169-!=rkBeD2HrON#dj zs&VuD_Q(shJ1vcOc| zjthQnn|b-gwHHpEtug-5wBL6IUMSr(Td{n3etqsgTbh5g?%Mk|p36DI_jIXMQ(H}* zy7i4ikG59%VRn3%19M{4(Lm>(KEr=$(&Ox?-5qv!*N*1=HdnP;Q~NfYSLD~Bk-Lv( zt-W(^{Cn3DN6kDpuiK1?GPC2llYUhc2Sr9<8+QfR2{N{!t| zqdzY&tmv>_XUFY+GW*Qc#HgN^CnP4Xe*0XvYtM(S|211&Q0e;l7Hkh*b8UO+@ns)x z9y#)@oUip>QaSqOMH8 zBecQ&BPS!?+M4fN^BmK1Hp|xL@%ru0?V32X)wt0iu^Zp5GpA_NVlS?IE+SXp(k*4? z?jHR8SC>LV=FjWfWBs{$lZ-2~!)~{AN<4OdriH^L3xeokHH|TQltR`vsqU zd2+X~8CR?4**5>q{Nml_-pLz2XxiYLuP20G?^gW0zi*Y8+}EEw*)m~H!xbMSjMqvw zufAW?O0~xpZ3s3$xv|+Fr>Fz4_1hj>#1Ys;=Eg9$ZujZTI&*7}lh@{{a%%$4+)`yKDeww#=G9DWX%9vYqEqD;_HELrKjOb$(u{i1yUM<4eX|_Xl{bAwOIJxPown;0nVPfh!7E435V?JiAt|B>bh|o`Wk5R|c*u z98Z7B!|~WC5{~()1o(HK|C8_k)*od^*>jIS8g4k;2)NhbM#Awn*C@EraAV-c!i|F) z4;Ksfcbxz8Xo{zRlp%n}pD!rX`9JT!RD%y6^>hE}P`=RfJ^ zKk4T`>E}P`=RfJ^Kk4T`>E}P`=RfJ^Kk4T`>E}P`=RfJ^KWRAs5f}b>=D-W^DV)UE z0#Z2F>3|FW?#_sYi|g^Bc)cSU@7eL9KhKeP-U4p?$HR-hPKbe`$Zk}V2)1dtaJZbuS9r8HcsPvTGpGogcsm;X z7VE2;mg72~Om6|QDje?wwh`}EYYh=Oxg=SDgX7&m!GkF9a=al(UuSV2z#qM~9FZb$ zF3R)oaE-5D$(IKGLBm(t{BdugAN~!&lRWtk#c3*ES_?%8 zi58E`0LY2)vuW=FHC^uvYywBTa(EOSCaY49B%;SQFjyE5|4o>K37%pNpBLQ|Z!ySs z-Zky^?b}dak-=p3LOaZXuyhE&hnJ|gw5nDc>XyHZElkUcn-IA$2p7nUD-s!a#UU^H zwp%!9{<1pWFx-$q8S6co1Ax_` z6oKd_KEVBxc)$%=FeOn05GF__g2ZMZk?YA&w3WDH(jD*)n$q)t-BCL?5dRdQT@k>d z15kw!WHXS+hN9a5`Y_x}$%MSb0-it~DgoLRfy~n92(lSS#2*W$V`2Xy4)ADhP5TV6 z8nl3LEV??oB9K8-(G%JXB;qT&rJ#Qw%_JW1Q{0t2LS&< z27d!Qgo54xv?~JKWGSI(KOo3vAT{knmCmg)Ktee_LVl=6Dw9;IhnpfqR8rT3gQ+4^WPD-G+(1M0ILGN3z-u7C;~?iVkvA-P*j6kg<5mQIwtriB+92A6~EIUVyn6hxCKz<*RBXO?HW)A1RsS&@lQZi z;t=>8kjnsH0{j+GC2v;*kO@$$M0|y$tpr^}mx0`kUTqs-G;YyNrXMZCt_U>kB!XT9 z33>$`3B^;7Z4guxy-H!gDD+B7neB=I$_Z36RKLwYBL8na3#Q1_N2OrY1~4DWGZ;{1 z+pY-EDxQO#8}ZUKWcJkQrvO zG&zA8t(=tU@zI-^+1j*EGiX{uCh);8w~!I~S#&Ju8WQ+dWcDAL>kIDBq-|&9|276WA0$!}?N=phR|J~&ACe#$n}J09#bwby zB5*rkGc;)%+S-oHu(t(x8uegT1n8DQQVS)w8A!zMiTngc13{nK{6dAHX~6qgk_-5jP7JCU|+~? z6yO^uzsj~<5ul2InkBj>g~U*&9vgv2myDYB3kbph_e0o&0bhh{2IL=;vKdI2 zZBumlA-f?!hC|pvfJ%Msia^dNNMbXPkfV}Ug04HCLYLZtNF{4m1jr_I=tU73fkdyR(60bl0(v+AuoU139loK5+Z6$- z2|=Yrdr(NoQ$0QpWF{c%0_Fj11y}@7MYk&gOr?M-B={&KR7gE4e)B=Z_OTrBAu_M> zYgYuA`va9*@KHz<{e!Za_6O*X0-goT2BJHFDtWsifck;tGEg=HiKe0C_c7x6qJJ3; zxEi|Mkbd+#c0~ZaK+r@nbx=r59n_;AkX=!?zabG0y-F?ZiU1=cP;ZL*AQOrYrw7x5Jm z@x2*3TcTX*XC4Vu7$L(`9uI(wl}_vxD!Wr5*nk%bm2Ad#vefUI7BR-m3%1L10 zF#WtK(v8862*~=bG+Att1AhA7|Em&s%KcwyA+A&ZK9Mj8=R7UM=28xmZoh};skf7p zOW;(=4+9mv56Amse@Mg5mu6d3sDH-!N$_AS!`3T$8*H%pXfNl*pW<3Ztzy8*r1jh= z`%62gUC_R*u07BW+)Tcd6oB`O9%}(-IUx;btrfLt0mT)co?5_qwyuEH$;APg>IKX< zYJ*lmuBmsyub_`YID*h4Dy)Jg`EoOzd-#4-~qrffZR~DD+26DAm}WDYz7kX72WGV zGWWv)2kNjA<0}G*njzwoh)C=vsK=Bb^_<~^K8nB*gy;&Zpi+JXMJz^lG#EU3-_E(@ zbF}k&@c0+qkWp)>)eEzYLQ_ZM(*l+!=eObcKAx*eJ!E7wq5(F zN%G^Q>R7?A+mgH`iCx1F=m=(W_xxvA$ivjcUptF;7!T&vDrvWIL~}bQRcLNWLE@O zt|6$1h_8?!RgcwyTmbs=fciSZSIM7@b1n;;?*KhpD&&<+>?cpMd94{!^hT@gr< zYY4I#NW@oktw6sJ$ew_20*(Y6%=n4`yGaO|CgLk3;;Y9QK)wPbi`xcpCty>?R|J@| zBB+CiuaM|9)#F(p>j9Y+l|;p@r$f6Uz;FW+qL6$5Mn8;f*ti(3i>DnOiJr0#8Qu?^dKAHKBRRO#W@9NR|HtmC=vsS_=@fj z=x>64FJKPTG+_{+T@lEjMSO{>N4(*Bn4Mq>L8A!xebPE2W6DjDU5LgiFD8y2a3N8hT?OZ`0g>VERmclB? zYGf=0eH6kGgjnA9i|CXg9P|9=7yoxN^tP?{(E`SC_7boqsrM5c5o#YIwX1&6hgD9Ahap7|(sA)u=u@&@j#8E*IvJq&ZRwVtAhnC2mf<6l22*NU7 zVHGS0ZmeMieH6kGgm$H{R@en;GPZ&~iog+sp+yBMDg`Nz&bq7#eH20pm_fR%%~XuV zG!+!Gmb5BJk7cG}<Tf#pf5oLX;$hz}n;fudxGya*qnX6^tU1pGyZeu}_BV$*H|c?Co` zx6;XMMg#<^xGQwzV!-<#UkJ#w{1gG^lt%n7@N`-5BssHUGa`VeimRZ?mV!PCA@j*( zpy~{4ipLKD`vZOt$jSKy9r`H(>{cSECr~!+Ydj6Y6U3~O;e1qo0#Eg5M~#zLVZdm> z06QTYEKvDM;^ic>$5Mn8;Kd5;onv4vs13aojyCT5c5F|v| z3?$+!x(Pacd%!n9L|7TnPZ40=u9Mib;dtU~QIfH6uzapZ&;uElK~#qrz$Jjc>(I|Z z%cpyyP9yQO4^Nu*o=#>nA|O!3EssKwS4+UNIxNk6Dgrccoy4Y9#?w!NC&~Z9lTAcq z1PlfYAbB0N4z$8K7MeNRp}uvKdHCdqL4zp;8_NeH4LIS1KNU-ghC~!{g{D zyAW<8TrU%v!B>0egT8?C{ha7Q4&yHeP`2ud+DffrUhNln*JwxbVo7lr4n0J&mVka| zeqQZa^cWq9ss@^-TCtoWfdI%f34A&tu)r(HD{bI=O}nn0&5PdQ4ptL)@?u*8yS7^X zyxL79byKU(Zs%EaA2ssgPaYUBL3aZA;cHnS&W2dI#G#|MN$z=+#%6wI2;f=3Td0s6 zfTscPA`YRSBEZ-W6uSqTmJd%?@q__QC$||95UAq*qVw1cXh#}^Tx9qu0!=%jli0MM z@I>yCEGx)tMg%>Oamk}A;C?{1<~us{Q_Lkv8xcPd$Ub5$xJL_na5n+=5^(jPDs zkVPf~KScoL&`E4sUOWu|Qi@FWL@ELTM*+=tuV6LZub_`Y;QUob;o6XTRImzAQ@}+* zABAuPAuWYfu#z52K_7*{8cRnZE%jIoK}(Uw6A0;RKvo5zT@m2$9V8608Au37(Jj>J z2Li@|h*0!Uia^u8)JbgGbUeu(ie#?|o+<)Lq8?uZlJ~Jb0{j^8qz?TQ0pcP^_8c?t zv|DJ*DxJ(`L;z0}*M>rnS7E?afUK+pK)WK4hwLP=8A!xebPATy<0bHKHW)J__P8q%h@SHH6TPRz%NICkM%md8&G2&wj($QPg>VF6 z1W{Nkd<9O z;3s?)&`%LyS*(-TwD0jWO5~bkL-2%IlpX;*)g$2xK<)wz06e2ZKSdx(TZs5S02z!Y znGVTqMg#<^xU}*`Bqqv&H=)RsAc5ZgL{$}^JVGv zvCLFtO}~O776TkXrbk6Z*aS^SL6Jj8ETS+NC@dkz|J8uQ0C(%qPZ3B)J%F-_lj(2~ zf4xp-Ga`Vgii<^`;Dt?M0Z#%(BAQ(hU>Rq`S4eDBDzpkp39bYmh78rP?LmZViE#CqD^ zid!RxE6mCWn}}uL`XDi_36>hK<;CiyB=$T?<`hFa&rGm#=g!9=tYQvn3rU%PNDH`G za##z~4(AmgKkTEGE)bL)Y7>?j%V?ML;%M{|+%87IFt7c{70d1N;wbn^&T3I~Jmhtg42v3+a>Ji9PJpvwr zU}^z!syXDEux4j^zEGQ^KKSdx(2O|i(RY1gq822r z3PLRJ+dEEDC~SR(&e=&~r4||CZ-cqQMeJVW)qaC-w^lwNDY-I_G{scgNBfW{Y~^4( z;)|SGGd$+h?68{2zufW2j9rNm8U~%*n97&cZgGx}aw9RqrVtU|s3GJQW)r}zfG+^D z&$BB6N%A9tYz7hyL(y5`WIeuuK8gU6)KNHkR)H!=!D%3&5-8}S5RM?Et*}-&LyxVX zk0QWzT^)r>w<=HtEdXjQ()H$F>txuF)1R$5SE?_djeF~L3I%D8sI)1idc;9 z2tp%Q*fl!ULO^N+3tJGnZ&w89u5}XJB-WA0>s&l?MWi4#h<*iq6v7b%^-@?XRO+Un zk0NlWDvl~u@(QXX6!cLDN4Air!cqWQtaPd0Pa=`=^S&LUHvpoq-?M-WD-)TmV~m0<-%2^?HlIJ|M8u#T^ertl3>>-DkUkr!M^6+d1v=Pw)j zP0@AYnfEn|YFTe;S=+$gvHXr`D6WL?+vc?JJwzMXG?&-}VHDPc`jLaWpqMf{bm|w22RJXaPQ+4C9A#uMb1Q$M za+F8&=0l}Vx*Oz9nRA57LO9Yerw6K7>G-00uGWx4IGjI*9)5q-EG2#ga{#l-8??=1H0U`==%Fl=nYVd;cFZ8fOhMzyJS0Z+h1E{{x@y3&8)x%l)qUoNC)n z>9zN-u=6=Z47S+fau!5?coX#?x39gcXn+`jWc|kiz`01*8w&z?w5R3 z-0@%ast6N5Q(yRB8U+ySV(}La`)#UF40b&G;RZhr_}Non`#Akw`t*0{)8D1XZ6n;~ zYFP#y2|5$?3VZsy^f+zB$~gU9dc1g*{w_UQ2jBHif0rIJDw_I8f0v$yS7ODaM!jf{ z4P9>*MkBjYeDY^rwW%;dhC600<{1o-vC?s2WO|n# zyf?$*sTbKSM3e50&Y&zYw~!# zpPRzm@a+R@h>i_leg~2^BI{yvCY!z;s*1}!mwv!khTX_$>_iXJ6vkhxr}^UyzoZ^7 z4E7d>fRFnAr9bRZa$~s(V$8OaBxPV(76~VtX$D(8~x{pHb$=pBteJ{O~G20?oms56Z|+gMJPmQH(`b(m4+; zfaOq{S{@u92p}i*=>Q`irJcEX^BHJ0cso9tY<%!J$4jUU4%*Sk5zAc(ZPGE^BUOLr z^xS>wpf&Ov11>3kzB&zj8X+%{kYJybK7(zMrn~&`W7pBBoBp_t6oHQl^TXZz$o61S ztKw7FxvjPOl9&**1!XksG4Ql}po6-Im6{*C4nZA-mcrl&Y{Z z4|g@fk9UVcvi%v`UIT4R$mKa_4(>mbu0D-U36Fx@8lyymL`{hnC(BjFnWOjZz7x38 zygF;7C0ckBeqvnp0cqyy;MGy+Vn6g6!y$nI$gjaQpQ~0yKx>DKT4(EQjNH(?xzVE( zu*R@XfvJUzBU>XSd`Pq8u)|?QyiUv@vgb zBuD90ottI>*;5|jqM+IMtV~jJS!YRmlOFr}Fd-!_o`(y~Go_fKj(EeDvW(DPgFMwd zgCkg9(b|MGEn}a1&E-f(txaV-e%86%o-~a2$s&R;YPuz6a;#<13s}Z>PrMwn ztUxUY^L^7S%Thv5oXoj$?pZ~?Ty$2>+1OjEvN((f8>MmSU0b5p;_QJvPY7z8vpmOK z$B381+Cr#}Y#prok&arl%mO_1nH`{E+_qqC#t1Ie`L~>N{dwZTys_>EK%dBs{pA4k z6#wdqnH1Uju!rm@k|Mm^Or^FTf2b{=bu za|cRE^c|I)^~IZ7<$8u|HJaC!pNe4$Zu&gSY{1=2P~Ogp24ALO)TO0uxUWk&)-g{U zzr>s}S2gq}mC#DrTFf84p}xyC1=6zQ(|sx_&HyYr=Y3DidS=UWs^=2Ub>p5Jdn2j8 zoZ+#qjXJi>#9u^-x$;hJWzhtfmW-W|J1~Hzu9?oLhfZGtX4{{Sd`}58c^Te$Mq|UZBN^cb&dcbOF<1YJFjt*>d z)JIi%8PXDMrV&~u?-jE=attvflhZnGbOs0c(IU1xQ~g>>{d8^E`(B!JBvFHwvBsNp zxmI{xpG&&wF`k06T7RakFY+eOa$aZDi={QWZqeQfX6#omubywM&5`BUrl zo`!AbS!ccWo?mBZuG}F47jm-nSe`gJW_;Dq%gFhjXvcZ1x-VyFYGhVxeAbDex2%i2 zsnwy#x%WEH)!qn}(9&PIA0s@>wJo`JuM1ouagHg+MkNW;Y$8qEyx0S?%=f&n%O?8F z)McL}jU446;~?#2Xjv#q9${X;W~hpBM*Ty*SY`;G#<*0+EejuSG|92fOidr%Ye`yb z);+hh*Q_U5dBL%$wY^%`^X9b`->y-gW-%mY>4W5KAxw;nsqcY~fL06>>o2_>$lky* zkMlGOaIATlo2Q)>yROpNdk;xNAH!9v7}YJS4R3T%uADrKeF4t>ymx$4-h1$nlBF+l zH{(}3l1=rsPmD!7Qrh8g-vZ3NZi@42OCRn@|D`U5L(}Ar)&P-HLswkR3Y>Ml6UJN9 zUQJlq;IfqD67m?~gg97Np z{pDQGUS0II$VD1kS1NND%U-EBx~OJ&-jCXhA@&o>r(N?My}Acox6FCm>!zDknnkYe zX9KC$j%9x7Nw;~f!P62$n_c!KG$|NT|p&&niRBHI>HIDC?2qQMhG?nzEKV2mGtb<8nIk6#GQ3Bcj~5 zR%s}0LY<|u8{c0WDtAbqVm-)yi~E7jwP8wA>XoHe^rjzDYgj|qEG^d?9>z|moNriK zt-J9u)s}DRQQh}L9id5bP18?nF2)X?L~%F8=@ib=x4G|=Si2*w=dO0%m=IT}EG^AF zFFBqK5qmv6VU#&bVbznS9IDkgb)LJbVi$wGk%f!*YaPdJ5YeAyw~p?VvpQ2S^reFH zXymCEXeW9s&QiJSBd==mNwp(WTV+`+ZN(FJulZU|;5_m5*sn0JmYJA0Eys2D*^sMc zed%7qlrE{g1m@S}zJMivp7esJer!h(s2lFF3`UDE?RDm|YKI){c*4qENVP92G|6TB zVqE97P7o!S*UD4Qqp90mXQhw}ml0m3&kMbS5r=XxpWjltwV0Bnk23R?Gi2^6%d;fT zlX(}4dn`unSb9nK{Zp#FoFy0Txp+7Cbgw5~_LNV3)>#8P?A6R?ot6>F(+n5w_tkzKqH@a%k zHBWsN^C5TF3~l{e*2;4J=3xe6$*a4uUyWaK9%tm$vj6XngRC`DIOfdO7H^zUN-eO= zS>3ld=e;b`Y>WLsnmDCA12D>L8I9bx;gorC}-XiN44w#y64;ovk2ZClqWK# zJAG*!IUFa(a>c|uR>LSWI?IUeX%uqosGKbn!`9dxXzS>cEmHK%S>FAUC#>@P zmv<*QZkld?rLpYX_fm5tdH%~gW~^y35?b1ar~WXNKHufWk-0BRWu&x}!&5Kf+=FqY z9|pOg9PMi3m5~6r>X-@hsV+24hVWckhSbtSsv03R^^jUPeU&sac13WJ@$2fe6>;OZ znobj_$5IqBydp*!x@t(9Ps|NnRrrxZ%go7}u{|7mA7;!!O)Wi@wVb3!S{9x2CN0h* zJoKWLx^mYCvX2^$847RTH3Da90@oO(xr${i<&GQM7-w7DC*?~-oCB%3rP`GiI}MgK zhWmch!&<6h+Ex(k_2ro1X)VE4Cvt0%fH$?I*2QXFV$z9J?vqEM=j7QpQhkc_T=y5` zc>CX!fjca&=hAW)6}=IEvQO4uZg`9^*uvKuH;xz-F|0|yFkighV7yG@8=FRNAmg@& z9qxh}l$9VJX?Vkk4TV?6jia{*yt?S~ax6}bvaBrDdDWFbGN; z?-b`S!Fiox6(%@;Xvj+EY=};>GDJr&+fhoQOH7n+tI|lfkd;Mr#8Py!_~O;pxrR54 zSSq2!#?kwx;T4=INr_D+HWFT4bo73quz`Z}hlVr+=Q)N~aDLnH>YR-ROIEBSU3BzP zpGCT1g7XR$H%xG59Z6!rnRO(+I%nk-d1gCGNpu`oplbMC*L+=c5;_PhMJLLOUIgBG zhBu7fS%x=`-pPhHk=|ItD-xn4b$=`1m|SI`9JVVN$Q*xR&Zt=Nn*j7btJulGwVot1!sy*cu{gE z(OH_LGd50)R(~L_E;qxLl6r5Q{(knP~ZYDS<3(hCu)kR0ntRq33taDbxf-~EZ zj4L>^9Z9d?OwkFiMRaKD;GCLH#%Ua4b|Y>JmN!m}R=bfWQQkN)TJ1Ju$Q%ftPh8 zWhFRsZYE_VI5S-tS8!%RqD1f^E^A+SEhR#C1uW}G7oGCzqElYM8KTmOB`d)hGQso% z<|TaP41_k`Z4A_Zj%Q&8LWCkBIjO!;k7<0K>Ys^;!3Bdp-LgM(pEJ6OcJ5Ygv>~Po7!X%Xv-f*X8Gk0#$kwEJW&$(fgi&JUqJq> z90eWz2qeGj_ZMQkpmpjqqF<=vUiR$m)Wx$Zoh}Wb1YgZ2N4;emS zP^f?P+SUD|2Mq4lH)8mZX#aZtRjXC48Bjf_T8$clU;3Z_c?ozj{zOAjS%jm>$fkw~ zD{qZk$+&4ZaFs=vxXSWh8@b9N%v{M_@W!d*Zb(XIyeead`|mV$l_kXrRt--f%}o_c zP%cBYY#_>LJ_Pn)>`KK;qqVCyklLGY6X4#0dmC;d+$6Zka8ux>!cBvl4)+e+47iza zv*2dKy$d%7?mf8o;pW1905=Z~>q>1t+yc0GxP@?w;1S{%IkPgwygB&>i{(`X5dr}DL6bEy{2I_bk^NK$e(-h_}}YTdfEyxZ3kIlT^*EJ?qTL{pB3Dmys;j?7TVP=IbPUao&)K zJX=m zrfW+sFEhytW2qQEv*?$*YZAQB;KAscMN8aqb6nlBT(zK7(!j@It|bLN|Kld8Jn2&k zX0t3kj3*9W8S`?vFl=3J_+zV28f2hep$6z&E?n`|8@J}m$~d=e&%K1)YA|12<>fhf z0UJ4xy;hpJs=kM>Mx|=<&2nMN{be4dTW+tKTg(c$)BaShxLNAnn;y;e3Ju$->2*cR zOB>$slo!1`T-UPHiZ^^6FXW{#7N&CP%rNKWqKzCI+?wZfxp-{7CYz#Rv;W4FTB)?@ zze65!Zk390H;YzyYE_Pls4TBnM(HdUG~JKMDVoiBim|xAJ}+WB7h|cVMS7!A@+BMtM)%9G9Y9jLTW(l%6=5^W|dl&QeDAZJ~)+ zwDw26xLg_K2>KMST)Ms-<)I(8l--lQk(+wymb#?BLMKOB7j5#=oS9{e@g#po55?T1 zYFy1y6YfW7*$2oiR5e=bmv>ncmLATVzD16L#w^6rV|c?stu{Q=;8So`7j->ww!Bv2 zO`cu#&->ohFe~NqQg~<7bBczq()bFr^96mDo;B_;mf*o4mqi|)+DaOYi&^y56L4-n8qdG?wLJv_Z}j zR1d4xL)1nwrdu?_(@5YL(=F!1ETftyK8_K^#h{sGR_Q&bR7|Z|c8uKXY%1$KOG|Xm z!_%IVH?{9rX&5zS(REL~L8`q<8s*D5EML_0$|P7Cc{{WzRRd<0mg8RXUhH_KiJ$Xs zrfNf`S&F4Ubl?A&`@{?=_Jz#7RXOH8GVj$Ff7?NuN_SO7P#AFms8`zQy%)BSqtB zE+-q#I&U%4X6Z{k>AP&5shWthaC5Kg=AJplnW|;fa5n=~`|{Fg!Z4g?JMYVgS3NBn z;*CBUJ7G4#!J-}Ba8PSdqrZEKb!>lq575I1^S6uyaxC+{{TZgK(zr%-ysGP5D)pMN zG=!w`VLA(xGib}G;i;X<@huetW0sNG6EEv3UFFgA8n8RlXf7+!R1CJctSKlbwI}5; zYGLS=%WgudCgxJv)szMqQZ-@cvg;*JOl2yn?3`OVR5H6=oUo=+H0_mkBVsPSwe#L8Te2{wlNOU_mRXV~ zEv6BVP^_9#F}7w|vAEYlrEh9Sijo=x$F&s8B6{qfOz!?D8DL$tajb=R9#!_uM=fF0;%LJ#$re#W-HL zHMEw-(mPHh?DL`zTVj=P#S4?w?Rx=U;sBg`#P?k-W+oXx9- zBE*fcs(+19Ew$I9R#2vz@oX6EpEq@8Sy{N(*R-uH-01-|$}7WhmcGLsPqu*Jn6sv8 z+K#WR=&!oSHzwR0Fv}oc1Xu4+c=ifYC49NRphjY0s)XJE;T5Jz=xrgq!c+;py@eOo zhNZQJk@T7kn9(aZ^W}cQ*=)d!SixBuFr!y+mIln|6`WfjuHYPoH+)zkJy&J}W*`m| zd1gW)&tZbIG+;)o;7r30BF`|90agtaXD~J1h+?|B^$|@kzBATrzzoEiAm+>cy69+a zMH(<8R+uW02F&Ocrb?s%GkS%olCCNnfx-w1EdfYbIcLLczzlH%1?Tn#0pa-(tsJg!c<9bhv-O50}P_}%?8XsY&KvJS~{ zN&{xZ3eM7i8N6l#X7rj2n9-}7SD`I6dIe``z>HpzXV#Id1;Lq>vW&zQ(U}dHxnl9= zDl$ov60!}N449Evm{*Yo%;?pPfhl5Psze$vBUYFy>F*F7Inzjn;A}Qv24b@TGkSH- zhSo8zG+;)o;4BT8!5b#>EDe~^YcgO)ugQQJy*g(a*P&PBnRTR#jtNNvX24oRXEtEw ziq(Xv5{gdtS0)2yBo;Hqqyo!n|OqE1BL`S!FjdfjJ^$Vr2#V#qrJk*ghU%O8!#hQ zaFzzl=ruT})L_8}|235mo`jb{h-)@rMz0tLX?RJrGFlVSG-<$$STS0aGq7T`k_OC( z6{A&^YXR&dT~cm?Nz zhF5U*H@t!~6Ox+aEF2UbX|+!UYc^oU;_IW8-si-L(MlRHBUX%7(tsJgVziP5%;*)P z6~}#{8)gG$z$WUP^)_fWU`DLqEDe~^D>zF7X7mcq(tsJfW&>vQ>YVj-lT8N9h!vb! zMYQnXi(bK58Ze_*aFzzl;58dCqgQaIoh_+Xg0nPWMy$?R z&sDPEOeGYVOctCeI^nfyozWAf)SS%*%#e`TfEm4Fw2}tQ=oO=tG+;)rK3eJJjT7Ub zG++j-*?<|nCIe>l3eM7i8NGtDG+;)r;LPq=)`H;7N;ycunhluID>zF7X7mcq(tsJg zf-?mxWu{1RsbwcI%>}*C-LX zE8VMWo$?9=hFa-ZU3AJTSqaXpqw6pQkdYNb@uhB`OPGluJxV9zf;)eD%%`wmmX?^Z z_f-RZ8e($9V@}haTTxP%n5j!B1EnEG7uX*{LWJdAP+x=X!W#`*z7EcFn%+czApG$L>sJT+aOM3(DetV1-|*n ztJIwU+hUuuFW^A@t&KP(!M{E%V{!bh1IGhnZb$PQ3I4)A2+LekBIjEzD zE9xrX#Tbf9G}2&>8W}PCVRXF>rf>2~KFpCn%!O2j(GI#w$WZ_+ztF5m4g9SPR|DZS z;rP`Ie?Wc#I!LR6zqRl;5U>(VkOU!38Y1D}AkaDgD=Eq+!-64)P;67x!Pk$P;EIQH z2_=qs?vL_ELlSk6N)>#MjsGgcF<0FB4@YQK$dCV+n`-!54gV_X{3}6XF=D%q7ZWN8 zNtFU$O4^(|M}Bxb=K6A*zmeZQkU1}2L<^agwD2+WWF0!{jP>bSBGzbS)Uc|{%8)%T z3sgaFX|jc-tBi87POW)Xl9akq2U^COu8{1K+$U`45^P==Q^}M9c*HeD@O;H}2#{7+WNr|U(J}5`k?o!rs ztB(EC?IINV?%FCM(Y}U3108LgbX8D`G&;e4jvM$<2x04}3YdE9V9Yv@G~2{rQUCSv zHxmDN^`GA#;|t={`6{^1NQ;`z?NPpjL&>GY>EAA2**CO7Z|^E)@B5y?qDS(!uZx02 zd3i+kkj_20_i09oi%DfQ*fy%5V@2d#{Uc=8M4q2e+& zds#=X&T*ZWj`|s?QeM_{OCm4U7Lsym&L&q{BK`X4(b<<)7A-#%d8&;buNlhH6g_cG z*g)k7+eG|p2A$@p))@b)f#wDDij9P8gpj77s{uMkuc*qHQmW1xno@3gk%D#B2awWr z&g}q5?VreP%BgzJZ97qqa@NIB%4*)mIrr>k|B2jtmkZCOX@UGv_UxTvQqe6{XR7C> z#owWBX{|BX)1_V4Q`U6J+x$0Jlt8xlI?y7=i{15s>4Tnt$D-6$N6%oTOG#4ZG*pSq z960a(|D(5_Q+=BJzmC~0M>6*_qSR+0=3F^=Jxxy7w}wFrUl+Y#KlC;7l6W-oW?nU< zb@ph^p}RDmCeQpzJ$o$XG!*%);-X#jXo`)K#=-OSa~{LD-% z*HFx_Oi!)+)QZquNnBgmzdOWJE&jW6Z_ZtMNzBstcRZ)p$-ko>%(+Of6SFk_9na}? z^6#hzb1u^B#4L?}$8&m}{5$HwoQw22F-zm$@tj^K|BiYv=OVpM%+mOGJU?xnaA&~v z{F=K@^0fMO>~{0~nJ+1*pSYkQ?`UY)TF^9qT;9N;p}S9YRSht{)m5Xq^;=y*wQAO? fUadCXFyJq?Rl_m)a2qCv<0BFhk^c98u>}4fd_aIc;R45Ut z=++=<(5&IsK#}2m*1GRszw=zzd9HJw^Vf5(>+G&xy}j33pY>V8cd)0%{^v->5@V!fVLiHU zaMio-w`%UCr(LNu6r25ATSe(P({;k)*w@cqbb4eM&p0oM^`v~os8_g^lFwqh8IHWY zp)dTPCD_r_;S{-`cv-{3CuyPr*#Inj3YO-+4rN znOdk(Ct^e#MwHD$Eu2qmiiY)OzcdA{3nDT4{m$jr)~WMZsNA1NeU)Bbk#1OR>|K7L zhl?m{%8{UlN?1ba?@||)(mMG&wACz;$dLpjRw1S3RLPwq)Ybx-rI#WlzXyM$1z0Sf zarg7;G=reo58}_YCy4~jYf5BmzKfdgQp$sR`!3*mg|p`kzA(#EVCR3}m>rqQGae1~ zV*Vb+vwW~XR%5HDYWDR-8L3fFz4JFj8Ofh~9x3B?EKxTU!pyM0>~9-y9}Ij%N`ou~^tq?&oOBJ;06QUPxk!$D>Oyw%d=r}wo^paSk zA{4)IiE?*Z9g@=GA-T*VPH!3|a}oCltyxn>&8BVv4;`9Y7F>yhZ_}DjmCfw*ELYb{ zEj<+E0V{ZQFKbIYfj8cbUi<{y-MJJVw#p0}KaqOCe(< z#p0nkzDk_V)5o_JdJ9Y6L5!*m_nTqB6<3j9anR*eLGk8`)ArwEmzbD&BF+e+#TZJ~ zuM*8Tl&smZN>cEZXOU7SVvhtPZ=dRYCEkI0IZF}4%M;0zEF91Zow2XFqO%BXUMXav zwcmO9p;Dyf+>A`R=%o+lzeOyUTJ+nVBS%##^lQ`ldDMzfB+9p0b0%{dQC{iWkZCtx zop|0e&b$A%``RVS-lZ(#e8kwi4GGj6zY98B*Na4MbCG!FV(*V$bA8V^M=_kmsykuY zOqoa}U4L0zz z2eUg*tgu!+h(r#?Akm*pEh9HmB;-(uWVXF(r)b?wr=Nv`q!-c5XLGKso$ZN)tnlW4 zyLJI5v4Ium-648;?P6i?Dh1V5a8$lV0+q)1g39Wek;rEsB+@FCy;v$Yd$G`AI1o9A z;6w>_INy2HOHEQzuO~$BwFUDoltuPj zlF_Od)Ru@hNvq^HiJXLy7a_xEcgj0oSdE88<6QQ?MM}$e7E0v)=`~k$-JcuoA;vq# z=mf`BOC_h%Thdom^%>$^LA1ltglo5_Nh>px#etgqe8kw4<~P0w3$cwE&6agW*{Z-qH7r7e4|T5-h+&Q0C5^**B= zp9x!G0}|*pDhuj0Dn&DDxJZ)aaG&BO;d^H08nq?LrTgee%Ay&mtNe(6C}?k$c;Yb} zGquAZbggHq0*!-yqhdK8- zA3#V7CPH5SJ*O`tWLtRdjI4Y_6HTbg?NL%R?B^n>jpqv%`SeAVyh98l9^%?NyIUA7 z_gdxsC^;PoUmrY|=dcaJKIdvgZe4$``}y2b>9+@Xe&vYrK0xC5)kWMZ@r#>rzn1^> zJM>DT*y^7|0=f%D%kEyfchFUBNikx~N64`FvMWm~#a5ORD#j}c_NKAM5j8g9ECbRp zTFFH+k+1qYmg+V7HU=--VscI&Nv&X_aItmXd5k(V`}5$r#Uz~;u1|6$l1wymD%A3> z2;Is;RbtIZJ2paFJ2s4m{?KYhJiR;O8>(`gwWBr5t1^qrmmuv1Ph{eLvV3I0$s*+a zlg?=U?33(?tXnQCy>j}t!zCR_&4a1BPxUdYrXuS2Jw(?CH5K$ea9G&Cnc^LY1niY^ z{Y7`!plMmWTS}aEn%y`4Zf_i4p*Bx^t#0LWuXS;TLWto~goIeWxvX75%!53xo%07Y zF0=1d0vM*vGGeQvyq9^|jv8 zI|sZp;FM5{Xe*kB+De*jP*6h=+NE=~dFadwTGcb8b%BLC=;k$v5k3C1 z&kM40#hZ?PuSneNXseTaJ#?|RlI<=yPX&pX=H@PTc~w6_V0mqPewoocA+q zue#^X5;I_MXd4fr;Zv<{H}~(?>c4G#B^Z@=BHGrJH3g5uc~tcx(Y}}hR{baF1k;L(Hm%j>e#(JcKwuB!& zQDd}tbK&b_LvPdIEHZOmuwch4Df2DuLoFVyVVe!VM3*htC!4M);(k3!&u_-XrpmB~ zDeKMeX^6cXeYJg|-sLBMWh=Z{uWDB4lo|A)@fl(vd*p~*5f_D^m1q?TMPVo$tws?j z5=EhCv>wHv4JZ!9qm5`Y+~`Lw`Nj+uc98B~u)<`8$y@zYom3s9iRmDX*)7&BhW|~~ z;maXS>~$|dnnG|J{$KgCpJof0rT=sT3Qc+flcu*r z!@?1qkPedl?g^|N;S%iwEdAjNO#kUm{0&5J0y4)p6TOA#Y?=INqglHOF z2U(6v5VC*|hgE>G-`T+65hLQ;5yu|*?RyYmCh@sQ7y9)f^aUnO`2$OTl+bk1r5{d6 zk7TPyvc=j59GtBl$rk$?h~5Om*0S zaAe?C>q)Eiq}6(8I0&%oBXf=lwNAyNgis=hS7w&f>M6*Sk zh~7l>W>RxA(OW>fp)F9K3&i^eYhR$-G>u+?j*d$ZssOi5un9AP&0{orBPqpXflm0T z0>pJ1QN)Bja2RC*o5#3l2Mv#F2MtHwLBm0|}b zER;jq=8(2Iq-_pqn?qYNb)1HMK4A%A1z`&9FqCEh6Mkk9okN%pifd zRuHmK0qLuN^i@FmDjLC8XU za8hV|h?zy01N8h^Kr{=LkkS$;O{bO6q9zXjSyNd+=6DX_Vd57MeT?Xngk?Y$L_P^~ zm;uByfOS3)AG0S(CfKhar5Us`n$83th%>~xf{=wONDdXy;{h6+Q=xaPa|jOuqhNH{ zIY#tJ!ZILhDxX$Kn}AVQ!pI$%XvKiPr)k@e-96qfIT4m6x zA#w>}1z|lf3D&d*_GbxU1tFhSOA{T-pq-{&`jHRB{hlT}7CWV&zrl#Gt_R{AaGgdV z&fzr4;WWtsvz<68w6oAx79k%fI#vSIfl-{L@h9?Wbr7Kxh{sh2`7{ux5r|{fLCjVl zj)pa#b`J8%r`1EN2Er>qJob9hFJ?P&GHB;v)O?^Sj2-I=!g^p5%<2Ww?*&@SR6S^& zi3Z|i&@Ms_*}zO#N32T-D+ud>c-|Vwd}3A*T@Or}s-rbRv>%tSgzr6|w1IY& zM7|0;_6lgcB3Hq0C2S{72JITj^BT$X8p#torQqW{v91T=JaL^yAkOm|iFS=d!)zzc z30f=3vlX0r&^S-5TL{|-I|#c7Zxixq*J-S=MxZFHV;jk*jpWlt^1)6i_&6V|>w!2Q zT&EG31o^a)eA-ApnC-+#p|z7$!{mcb|5*p@o@^p)BkUmTBD_t=r`>?n&!=@j{8Au3 z3OY!S*l7gaJk<=uGl|&_#4FxO>!oD_W8fUuNv;u{v{rfr@%iwrB0h?{$mqJr=(@=0 zuu}>?9v#;8Ks-8JrxA!}y9?sC6Y^=dAWkDD951&?hPO$Ew@EAPG=h&ayiGF1YzN&v zsmP+zo5vJcGk{`rCf#^S9OySG0X#acNE{Z?%0#OG{U+JOQ6-KJp&s#>bV+(CRUBwM zB>}_{ux1ghOtcCRN06jPOsEpALwsGL^?=(Z#Ocz|N|BHSWKOF9hmj7@Z&DXHF{KAI zo?_Bvpj3=d9EdZQ0bhzxn)q^rEaE5=twP8qjvAp3adZipba{FgMI6YSmH;OFlp$J? zkVPD2px>kl5Z@bMtxBi^bbt)8qX&$bkf1BjSug_%5KWm-2Z%FQ1d0Kf)8as!xgzu> zO?(;R%Mr4OqfDp*jDR~CTwje)o%lM0dO+qhldeRlOya}3L40KrUm4m;gJw?45Xup< z2-SdolR7|Sm|I+jNmn7eLIqlhgFZSg4ID-?K)j~dR|ev-t3c*Dz;EC6h*o6bwoE!3 zR#Obff_=q?nv%d_Bn|AM$N-tsa>P*t;+UAqKpc||@tJg0&|*M53all8##1uHkpntR z$`h?X$Rbn$;ys3`Mkq#CgI40eZ4-*XhzS;zKyS=bk&YXQZ9cxAO<)XG2yIPS2|r0YT}F(BR> zm~7&x0Ucm1up>sF4-^OD9fB!C97Q0WF-#RgHlZreVNwf-S93lY7p}vk>%+`T0C6T* zD-g1Pev`^Xs{kV=)PY@;dBiaQvZf4y%xNQ_@stIyi(*F{dqPJ-dAb3_WCM+%z5&!X zAv7hv8POKNE{Y}5_QZD}+L2I#ZV0)l0P(##)@-^FnSW!5CP6nQ=M!Uy&jQ^%273hv zGYI+X0V5`$Z=fL%XN$E7(0Iy>(2CFo$eOYP`c2vsIuPHT(1TEdZbEju37lsXKo27p zaNC3m5NCx;4S>vPLqa1U?gcv*z+q%Zv^}9Cp%bAqp*wIGDbr11HrPOXPBR6^0ElB^ znh;tM+5&M*Q#iZY6YW8KNxB(0Y+%AqeIRq%0Ep)wYa>Dv;+PR_0USn_L|YNs5IPb% z5xNsf(9OwOn3J_IhnZy47eJmWbPM8GfFnj<2)#%E6MiZZtpda~7sC9g0`a&o^@wjk zXb5CY83B!_On`oqW50)VC$2 zwq);N-;k6V0dXeSu>j(Ig0(%NBcT%^lMcHc&VhC?=lVn&5}FXl0*L1y*RdgVAan#W zr`>?fWA4Q9AY{_*!50JKm{>~y@l4vou9hZ_JP@B}FjasFKh=Q7Q}cjb6n!AxvDh&r zG$D>Da2S~pZ9%jpp%rm#2qD=NU(s zZ3Cd+qzTY?$_mJwwjp#U^dMx@ouH;TeKFKj0OB(?rasVk%7FNWKzz=@bxeUc2dozY zab!#zLR%nn+JR_CLO0;iaSx)|^d%5Sh3-r;bS4?PKpaClrZLcX$`sf|F(X=n?n?HL zE7X^uyAkaMnn`zuItoC127@ykp{l56zWURmqKnV zAU*>ug*t5F=mPNyE``X3L>m#>5ZV(u5V{l6=#ngQX9$G*Kp@-)vY6AEM9Z>dS@_$q zIV}8b*c?{+&v4*2$_C&MY8DOq!t^<;<}nfA(Qzg);ineSI>evDngbDbihqS~uBga{ z3jh55p)NAQ;)xxNnrQkj%OH%^`}KHTHym)f4@t{@vp6FHiDU+kcn-Qr6OGkSP`Y{Tc&z zOH5ceygkCYTE^l=gt6S$N3V|uk7d7pL(KXOA@PyxqggRgtMpj-O_cv#t@$_{YuWm! zjksML%Q+ev8Z20#uM05LW7$SUu{e>dBjV#&oUpjC4V%J3(KIy{@}Z#^bW@mzgoY7A zID@RoWB3NnP{lo!d)&s}YnG7j%oQfPr91EM4@wS@q+2lWCSM#((q}$Q){+MI$32rNv!FqQ{Ypu?euYz!_%0zI_-VJaBSKB$@c0?J^~B3Y zK4}61R4^0{r|u4(7S|O(h>jTldfj6tQb3Bx2446$N{Od_rv}iXXfx=UbZf?OhJXNm zv14Bsd3|DUcjK~<=PH}muDT@i_M`jn$uvbB?M+_zL1N40#j)@l+D39TNlVGK$TTXY z^nu|V%0-uwfc~~AB+}=JXm^y>ob6PKKr<&Q(aa~;PLEbxJN-?)6^Xo#N1_XZhb}D) zZbstV7E0`gta2Yj9}xR-+?)M{2X7H@2W(KrAt`^kdW2>$e9#QZ=s&}x0=;vbx{-s0V)ctrMbWMI|8u+~`|Z(pBuBp&IB0x32j=NvvJ?+t18Rx_g*cO#!l z9+G;N=dHaVkZSa0^9dfS{G0ZnJ`d@Nl@|=*=~ekCnyId=73;-CLPMEoHzZQ&M7eLz z+gSmBQ&}o&GG%`kHvd?zYF~*M(WOY@te2Q!m4m}gq}*AFl8QBvb{Pv92iA&w3#?hc z-ai{Z0c#s`^8YKiMviOp=Z`%B3;YEd%y$JN?t6sdXvwaJ%^08kxq6PCXqNla3AgT2 z$dE0Pm_;v{aq!27GBqpL_)Rm;Sq;q`e7MX_>SdR9Z`ak!GCamIeI#3!d2gkUJ!1HA z5c_#`X-@u7{59i^PK@q-kpohT@)paq2geLZ@`S67nuM)*-s=kw%X?UqJmIhfF1SXDajnaJY5=yH(4OYIXu+q`F$aW&>W^9X+e&+?af zA;u%EoPpx9mfYOHAKnO^`a>&p6IcGe$(xl|cyR1&BahhA#z!{n?eh$VPM zDtVn-eBZ~}qxoeXJird*F@9+GKHYt}L$V~un8QO&L0XbHKL$2lqEYhE5@frF`ck|+qZG;iIK6*EZhG%Ac)eu^F{Bo0X;uy)VQMK-d+&EPApg3_aV9FC;?aCW zcUSot1f!62e8xHc?6_}3i)G1@y71J)4>)`Gv!5U-6($lhGxxk0i0Ixnl;G8KHd;0w z~7CmOM&;GD3E?tGG$Y>4qW$PwHBRPF483 zc~_OS$~{_wM5;@XInTYcc4jjrs0g`=?QyBSLJyf^J5?o1nUe3msAWd|gcz2kNc!#_ z=9}=;0|(SW>TDJxoQ-6+!1s(+i_dwN&_sB10oaNm;pS#Dk-UeN0 z-`_nKb|z=6Zv}oh?1Yx0W$>^p3?2wap>=TG`ukDvPVr>8jL`qX4aL829wy-;u4RXB zE!LXis|{8Ij8FJb8AoXzREx0L2A>Q0y-oHx|etG(!Dseq)X?QsX zQX!XkmfiZOQ1sv7I=>K-VxS0tfk6tdn}_Hk8FV}qHk1g8ghXtcgQ4b)RWSl~PWq2e z54v}m=_F7x@6ZjEZL(wA9ASd~zG5@};}x3*5fvWP+7?X2W4pME&q4-fGL z=nMe{T|j^#ASfsxB*GLC5f&DaoHbjNDI+N>D<2eWf>59J*`l3#p+UvlzPX<7N1vvud{&tJIMaP?a2^|tmK9i4ao z?7esY!Na~s&j(+;eD(Ux+jm2szkK~RGWz|;*f<^+1=0Q<7Vv*LE-@Gvl}@M81@X8j z)XjL{VswVGfq=NJmtaV&go@!VAxXQeU{tb+7tG#R#8ZVb4>qN(m+&|s;`LzL64#cEl<*vb6}%l$3TB;7 zjLplgb)Tv%ep>VGz^p5)GFk(d1CU%!5NtkPvIcISQ8Z~9ZW0`5GV@G6bWc$hK%H1U9M`pca!DyLEIcC|9+(ftCC zJa??!5+E>*HeLyv-2CADo^3tpR~BD;BR0CR{LjB4=f8hFH5jP=QNroUz&fd`?JAa^ z&+NY?#&8xaWqo`Ze{0nmp?KX5Pqu~|+EnJ5e%ZO*DC@`PJ)dSeo*dHfXmTDM%ldM# zEpf^3Da%Hrss?nAOAjlW1`}v04Lphm*^~^Mfsu2YO37Qs(&bMH zj|5o1f4P13?E7A=-o^E~{3|<$-+x;0sM~#El&jjychOZhM1@yc&-7K>?(D~`M z)zLpq<^`>Nmv4W2(2D1qxji!Yq0QS{>$WQ-+b;BXkvQP8d+^VWv*(ZP*!E%K!n?GJ zK$F5tX3_x(M-Su}aIM?oY|=N@_J>AChkn`hbKiNjX%z6Nc6c=Bk#6o(Ma_2JfJ~p# z!zaHrJhUtu_fae}{uj(KW28%s(_^n&oz@5>HMZfCkK8va+9^T{s&2QVzix}DXj-EXecOrBx%(+`H{Vv* zw?164c<11vpti?02UYd`0%~$4Zl3?4``X`W1@URg3TLz*MB~>b8!3xKalO#V_X<=&Ybi0 zgIUkv80wL0PA+B9$Cm`R&i?d3scg;HCwH`+vizIJs89MfITa<}7QAx3d~fCWkzm83X|%?=U>eyz9eZ$fWF+s}#~sV>%#3(c zX*jzsm1`8UW8>Iz_TxS6mlONezUG{IuyJyGduObw)PiNLi_Y!)wsTl7vTLO2;;33W}o>Rwx3)Q>#~YoK3mi(U7;BF>@MiSIGJywqj}O zL~Kb5+p4Nc^=w8_XZX$=p=l%Kix&MLqrL2g2BD`$FN4u`?Y+f3i}!1lpD%pB&Us`Jo3n3A%JQuXj~VpM zSrV;p-nM1r`t0Z1P2b&WD;RXwjXJO}`lW%}o(p{$OGe+X*e^+WyvFDq^KF3c$-GTx zb*~h;9b6!C=jv$GL4oZC_je&_1*EXM#$vt)E`tG>Z2#4>_cOV((v&)0E0+ z=!nuiab@^P&GzWvgARYp`04X?Wk%rT@vtT4R!Pf>huiYPG#;7!CKh?HZ{D4}Fy%x3 zf+rtu<4@(b_t@NST7JLy-X-g@TMgzV$2fcMK8<Fo#iRQ7YflXB zPgqB))#q(_W%KdU36%>ohYV+F|502nku!JjL)TExsQ}AdmHe;0_wQYDtX$LIRJT$4 zNbiWI~t`Iz4AHjVfS*c{+A38R39Bf{cpY zY>RYk9*QlPT9LHCSTB3BnCW$6wY3#;_+sys%|D&KWx&GWdF^5WUz zNeAN+cp1g)l<8MtZrVdCLd+wUDt6q>w6{!)pouVlmJ-<(}W|w*|g&`)9czZu9O|DwkJ)Y^U zIpg;J!q96SRCo878;l}ZPw8Dk!%Fqnd*n)gypnh7-TO$0z2?bwNs+G|%E zccOBd*Zf?+7G$*lU^oOcS_aU*e{($eIi~2|_FX6U%kDLfk=(>SqJQRtaB%Yy)47Qk zOY1iDjIv;2^5@43t<9jm+b?Ft-mAH+AY-u2`hI-ro=2bMB9>Yt1p1%#Zc%EpY`a#q ze0Pe?x&dyhgPiP>oXi_rVr|mv^j7K5A5^<{7$sIo6iQxRtLuyIj4HnM7;yETz5&egi}p!V~&a{=?>R-Def6J{i%^X^REn2K-N{pxD@Tm3$7K21G8 zzPA6`WZ_nQq5{n)1}ER({I09KiOJyXX$~# zJHLBW^j&Dnxo#=nCOUfjqg}!0&+oo}eZRcs!Pc$YV}<^DbpA%xxixdfva;mo8*1Jy z*^n$#J+xn5^8Kdv)0-+b_DA*BBnL=s$qYQYXLmRBjW9`uMEp2GPI>)t5%%R zJ+yw|fk}oVU(UV>;io);DD>W0tJ~Q^RQu`aJ{$NR1OAJ!0Qy^r=3g#EEUEO{Zf2o9 z7ExbM=M~ONMSBGV=+I8~%VOD`!Z?Ny+Wd3&+?};qMITkDXc+$vK8*n%O@u6CSRql7 xtD_gGM1_UNt5{jikFomaTNEL*A~t>MCVV*k_sOSXZM{{fd;5vc$G literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js b/admin/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js new file mode 100644 index 0000000..0700921 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/htmlwriter/assets/outputforflash/swfobject.js @@ -0,0 +1,19 @@ +var swfobject=function(){function w(){if(!u){try{var a=d.getElementsByTagName("body")[0].appendChild(d.createElement("span"));a.parentNode.removeChild(a)}catch(b){return}u=!0;for(var a=z.length,c=0;cf){f++;setTimeout(arguments.callee,10);return}a.removeChild(b);c=null;E()})()}else E()} +function E(){var a=r.length;if(0e.wk)if(r[b].expressInstall&&F()){g={};g.data=r[b].expressInstall;g.width=d.getAttribute("width")||"0";g.height=d.getAttribute("height")||"0";d.getAttribute("class")&&(g.styleclass=d.getAttribute("class"));d.getAttribute("align")&&(g.align=d.getAttribute("align"));for(var h={},d=d.getElementsByTagName("param"),k=d.length,l=0;l< +k;l++)"movie"!=d[l].getAttribute("name").toLowerCase()&&(h[d[l].getAttribute("name")]=d[l].getAttribute("value"));G(g,h,c,f)}else W(d),f&&f(g);else v(c,!0),f&&(g.success=!0,g.ref=H(c),f(g))}else v(c,!0),f&&((c=H(c))&&"undefined"!=typeof c.SetVariable&&(g.success=!0,g.ref=c),f(g))}}function H(a){var b=null;(a=p(a))&&"OBJECT"==a.nodeName&&("undefined"!=typeof a.SetVariable?b=a:(a=a.getElementsByTagName("object")[0])&&(b=a));return b}function F(){return!B&&A("6.0.65")&&(e.win||e.mac)&&!(e.wk&&312>e.wk)} +function G(a,b,c,f){B=!0;I=f||null;O={success:!1,id:c};var g=p(c);if(g){"OBJECT"==g.nodeName?(y=J(g),C=null):(y=g,C=c);a.id="SWFObjectExprInst";if("undefined"==typeof a.width||!/%$/.test(a.width)&&310>parseInt(a.width,10))a.width="310";if("undefined"==typeof a.height||!/%$/.test(a.height)&&137>parseInt(a.height,10))a.height="137";d.title=d.title.slice(0,47)+" - Flash Player Installation";f=e.ie&&e.win?"ActiveX":"PlugIn";f="MMredirectURL\x3d"+n.location.toString().replace(/&/g,"%26")+"\x26MMplayerType\x3d"+ +f+"\x26MMdoctitle\x3d"+d.title;b.flashvars="undefined"!=typeof b.flashvars?b.flashvars+("\x26"+f):f;e.ie&&e.win&&4!=g.readyState&&(f=d.createElement("div"),c+="SWFObjectNew",f.setAttribute("id",c),g.parentNode.insertBefore(f,g),g.style.display="none",function(){4==g.readyState?g.parentNode.removeChild(g):setTimeout(arguments.callee,10)}());K(a,b,c)}}function W(a){if(e.ie&&e.win&&4!=a.readyState){var b=d.createElement("div");a.parentNode.insertBefore(b,a);b.parentNode.replaceChild(J(a),b);a.style.display= +"none";(function(){4==a.readyState?a.parentNode.removeChild(a):setTimeout(arguments.callee,10)})()}else a.parentNode.replaceChild(J(a),a)}function J(a){var b=d.createElement("div");if(e.win&&e.ie)b.innerHTML=a.innerHTML;else if(a=a.getElementsByTagName("object")[0])if(a=a.childNodes)for(var c=a.length,f=0;fe.wk)return f;if(g)if("undefined"==typeof a.id&& +(a.id=c),e.ie&&e.win){var q="",h;for(h in a)a[h]!=Object.prototype[h]&&("data"==h.toLowerCase()?b.movie=a[h]:"styleclass"==h.toLowerCase()?q+=' class\x3d"'+a[h]+'"':"classid"!=h.toLowerCase()&&(q+=" "+h+'\x3d"'+a[h]+'"'));h="";for(var k in b)b[k]!=Object.prototype[k]&&(h+='\x3cparam name\x3d"'+k+'" value\x3d"'+b[k]+'" /\x3e');g.outerHTML='\x3cobject classid\x3d"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+q+"\x3e"+h+"\x3c/object\x3e";D[D.length]=a.id;f=p(a.id)}else{k=d.createElement("object");k.setAttribute("type", +"application/x-shockwave-flash");for(var l in a)a[l]!=Object.prototype[l]&&("styleclass"==l.toLowerCase()?k.setAttribute("class",a[l]):"classid"!=l.toLowerCase()&&k.setAttribute(l,a[l]));for(q in b)b[q]!=Object.prototype[q]&&"movie"!=q.toLowerCase()&&(a=k,h=q,l=b[q],c=d.createElement("param"),c.setAttribute("name",h),c.setAttribute("value",l),a.appendChild(c));g.parentNode.replaceChild(k,g);f=k}return f}function P(a){var b=p(a);b&&"OBJECT"==b.nodeName&&(e.ie&&e.win?(b.style.display="none",function(){if(4== +b.readyState){var c=p(a);if(c){for(var f in c)"function"==typeof c[f]&&(c[f]=null);c.parentNode.removeChild(c)}}else setTimeout(arguments.callee,10)}()):b.parentNode.removeChild(b))}function p(a){var b=null;try{b=d.getElementById(a)}catch(c){}return b}function U(a,b,c){a.attachEvent(b,c);x[x.length]=[a,b,c]}function A(a){var b=e.pv;a=a.split(".");a[0]=parseInt(a[0],10);a[1]=parseInt(a[1],10)||0;a[2]=parseInt(a[2],10)||0;return b[0]>a[0]||b[0]==a[0]&&b[1]>a[1]||b[0]==a[0]&&b[1]==a[1]&&b[2]>=a[2]?!0: +!1}function Q(a,b,c,f){if(!e.ie||!e.mac){var g=d.getElementsByTagName("head")[0];g&&(c=c&&"string"==typeof c?c:"screen",f&&(L=m=null),m&&L==c||(f=d.createElement("style"),f.setAttribute("type","text/css"),f.setAttribute("media",c),m=g.appendChild(f),e.ie&&e.win&&"undefined"!=typeof d.styleSheets&&0\.;]/.exec(a)&&"undefined"!=typeof encodeURIComponent?encodeURIComponent(a):a}var n=window,d=document,t=navigator,T=!1,z=[function(){T?V():E()}],r=[],D=[],x=[],y,C,I,O,u=!1,B=!1,m,L,R=!0,e=function(){var a="undefined"!=typeof d.getElementById&&"undefined"!=typeof d.getElementsByTagName&&"undefined"!=typeof d.createElement,b=t.userAgent.toLowerCase(), +c=t.platform.toLowerCase(),f=c?/win/.test(c):/win/.test(b),c=c?/mac/.test(c):/mac/.test(b),b=/webkit/.test(b)?parseFloat(b.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):!1,g=!+"\v1",e=[0,0,0],h=null;if("undefined"!=typeof t.plugins&&"object"==typeof t.plugins["Shockwave Flash"])!(h=t.plugins["Shockwave Flash"].description)||"undefined"!=typeof t.mimeTypes&&t.mimeTypes["application/x-shockwave-flash"]&&!t.mimeTypes["application/x-shockwave-flash"].enabledPlugin||(T=!0,g=!1,h=h.replace(/^.*\s+(\S+\s+\S+$)/, +"$1"),e[0]=parseInt(h.replace(/^(.*)\..*$/,"$1"),10),e[1]=parseInt(h.replace(/^.*\.(.*)\s.*$/,"$1"),10),e[2]=/[a-zA-Z]/.test(h)?parseInt(h.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0);else if("undefined"!=typeof n.ActiveXObject)try{var k=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");k&&(h=k.GetVariable("$version"))&&(g=!0,h=h.split(" ")[1].split(","),e=[parseInt(h[0],10),parseInt(h[1],10),parseInt(h[2],10)])}catch(l){}return{w3:a,pv:e,wk:b,ie:g,win:f,mac:c}}();(function(){e.w3&&(("undefined"!=typeof d.readyState&& +"complete"==d.readyState||"undefined"==typeof d.readyState&&(d.getElementsByTagName("body")[0]||d.body))&&w(),u||("undefined"!=typeof d.addEventListener&&d.addEventListener("DOMContentLoaded",w,!1),e.ie&&e.win&&(d.attachEvent("onreadystatechange",function(){"complete"==d.readyState&&(d.detachEvent("onreadystatechange",arguments.callee),w())}),n==top&&function(){if(!u){try{d.documentElement.doScroll("left")}catch(a){setTimeout(arguments.callee,0);return}w()}}()),e.wk&&function(){u||(/loaded|complete/.test(d.readyState)? +w():setTimeout(arguments.callee,0))}(),N(w)))})();(function(){e.ie&&e.win&&window.attachEvent("onunload",function(){for(var a=x.length,b=0;be.wk)&&a&&b&&c&&d&&g?(v(b,!1),M(function(){c+="";d+="";var e={};if(l&&"object"===typeof l)for(var m in l)e[m]=l[m];e.data=a;e.width=c;e.height=d;m={};if(k&&"object"===typeof k)for(var r in k)m[r]=k[r];if(h&&"object"===typeof h)for(var t in h)m.flashvars="undefined"!=typeof m.flashvars?m.flashvars+("\x26"+t+"\x3d"+h[t]):t+"\x3d"+h[t];if(A(g))r=K(e,m,b),e.id==b&&v(b,!0),p.success=!0,p.ref=r;else{if(q&&F()){e.data=q;G(e, +m,b,n);return}v(b,!0)}n&&n(p)})):n&&n(p)},switchOffAutoHideShow:function(){R=!1},ua:e,getFlashPlayerVersion:function(){return{major:e.pv[0],minor:e.pv[1],release:e.pv[2]}},hasFlashPlayerVersion:A,createSWF:function(a,b,c){if(e.w3)return K(a,b,c)},showExpressInstall:function(a,b,c,d){e.w3&&F()&&G(a,b,c,d)},removeSWF:function(a){e.w3&&P(a)},createCSS:function(a,b,c,d){e.w3&&Q(a,b,c,d)},addDomLoadEvent:M,addLoadEvent:N,getQueryParamValue:function(a){var b=d.location.search||d.location.hash;if(b){/\?/.test(b)&& +(b=b.split("?")[1]);if(null==a)return S(b);for(var b=b.split("\x26"),c=0;c + + + + + Output for Flash — CKEditor Sample + + + + + + + + + + + + +

+ CKEditor Samples » Producing Flash Compliant HTML Output +

+
+ This sample is not maintained anymore. Check out the brand new samples in CKEditor Examples. +
+
+

+ This sample shows how to configure CKEditor to output + HTML code that can be used with + + Adobe Flash. + The code will contain a subset of standard HTML elements like <b>, + <i>, and <p> as well as HTML attributes. +

+

+ To add a CKEditor instance outputting Flash compliant HTML code, load the editor using a standard + JavaScript call, and define CKEditor features to use HTML elements and attributes. +

+

+ For details on how to create this setup check the source code of this sample page. +

+
+

+ To see how it works, create some content in the editing area of CKEditor on the left + and send it to the Flash object on the right side of the page by using the + Send to Flash button. +

+ + + + + +
+ + +

+ +

+
+
+
+ + + diff --git a/admin/assets/ckeditor/samples/old/htmlwriter/outputhtml.html b/admin/assets/ckeditor/samples/old/htmlwriter/outputhtml.html new file mode 100644 index 0000000..29bcf8f --- /dev/null +++ b/admin/assets/ckeditor/samples/old/htmlwriter/outputhtml.html @@ -0,0 +1,225 @@ + + + + + + HTML Compliant Output — CKEditor Sample + + + + + + + + + + +

+ CKEditor Samples » Producing HTML Compliant Output +

+
+ This sample is not maintained anymore. Check out the brand new samples in CKEditor Examples. +
+
+

+ This sample shows how to configure CKEditor to output valid + HTML 4.01 code. + Traditional HTML elements like <b>, + <i>, and <font> are used in place of + <strong>, <em>, and CSS styles. +

+

+ To add a CKEditor instance outputting legacy HTML 4.01 code, load the editor using a standard + JavaScript call, and define CKEditor features to use the HTML compliant elements and attributes. +

+

+ A snippet of the configuration code can be seen below; check the source of this page for + full definition: +

+
+CKEDITOR.replace( 'textarea_id', {
+	coreStyles_bold: { element: 'b' },
+	coreStyles_italic: { element: 'i' },
+
+	fontSize_style: {
+		element: 'font',
+		attributes: { 'size': '#(size)' }
+	}
+
+	...
+});
+
+
+

+ + + +

+

+ +

+
+ + + diff --git a/admin/assets/ckeditor/samples/old/index.html b/admin/assets/ckeditor/samples/old/index.html new file mode 100644 index 0000000..502f768 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/index.html @@ -0,0 +1,132 @@ + + + + + + CKEditor Samples + + + + +

+ CKEditor Samples +

+
+ These samples are not maintained anymore. Check out the brand new samples in CKEditor Examples. +
+
+
+

+ Basic Samples +

+
+
Replace textarea elements by class name
+
Automatic replacement of all textarea elements of a given class with a CKEditor instance.
+ +
Replace textarea elements by code
+
Replacement of textarea elements with CKEditor instances by using a JavaScript call.
+ +
Create editors with jQuery
+
Creating standard and inline CKEditor instances with jQuery adapter.
+
+ +

+ Basic Customization +

+
+
User Interface color
+
Changing CKEditor User Interface color and adding a toolbar button that lets the user set the UI color.
+ +
User Interface languages
+
Changing CKEditor User Interface language and adding a drop-down list that lets the user choose the UI language.
+
+ + +

Plugins

+
+
Magicline plugin
+
Try the latest sample of CKEditor 4 and learn more about customizing your WYSIWYG editor with endless possibilities.
+ +
Full page support
+
Try the latest sample of CKEditor 4 and learn more about customizing your WYSIWYG editor with endless possibilities.
+
+
+
+

+ Inline Editing +

+
+
Massive inline editor creation
+
Turn all elements with contentEditable = true attribute into inline editors.
+ +
Convert element into an inline editor by code
+
Conversion of DOM elements into inline CKEditor instances by using a JavaScript call.
+ +
Replace textarea with inline editor New!
+
A form with a textarea that is replaced by an inline editor at runtime.
+ + +
+ +

+ Advanced Samples +

+
+
Data filtering and features activation New!
+
Data filtering and automatic features activation basing on configuration.
+ +
Replace DIV elements on the fly
+
Transforming a div element into an instance of CKEditor with a mouse click.
+ +
Append editor instances
+
Appending editor instances to existing DOM elements.
+ +
Create and destroy editor instances for Ajax applications
+
Creating and destroying CKEditor instances on the fly and saving the contents entered into the editor window.
+ +
Basic usage of the API
+
Using the CKEditor JavaScript API to interact with the editor at runtime.
+ +
XHTML-compliant style
+
Configuring CKEditor to produce XHTML 1.1 compliant attributes and styles.
+ +
Read-only mode
+
Using the readOnly API to block introducing changes to the editor contents.
+ +
"Tab" key-based navigation
+
Navigating among editor instances with tab key.
+ + + +
Using the JavaScript API to customize dialog windows
+
Try the latest sample of CKEditor 4 and learn more about customizing your WYSIWYG editor with endless possibilities.
+ +
Using the "Enter" key in CKEditor
+
Try the latest sample of CKEditor 4 and learn more about customizing your WYSIWYG editor with endless possibilities.
+ +
Output for Flash
+
Try the latest sample of CKEditor 4 and learn more about customizing your WYSIWYG editor with endless possibilities.
+ +
Output HTML
+
Try the latest sample of CKEditor 4 and learn more about customizing your WYSIWYG editor with endless possibilities.
+ +
Toolbar Configurations
+
Try the latest sample of CKEditor 4 and learn more about customizing your WYSIWYG editor with endless possibilities.
+ +
+
+
+ + + diff --git a/admin/assets/ckeditor/samples/old/inlineall.html b/admin/assets/ckeditor/samples/old/inlineall.html new file mode 100644 index 0000000..21d510f --- /dev/null +++ b/admin/assets/ckeditor/samples/old/inlineall.html @@ -0,0 +1,315 @@ + + + + + + Massive inline editing — CKEditor Sample + + + + + + + +
+

CKEditor Samples » Massive inline editing

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

This sample page demonstrates the inline editing feature - CKEditor instances will be created automatically from page elements with contentEditable attribute set to value true:

+
<div contenteditable="true" > ... </div>
+

Click inside of any element below to start editing.

+
+
+
+ +
+
+
+

+ Fusce vitae porttitor +

+

+ + Lorem ipsum dolor sit amet dolor. Duis blandit vestibulum faucibus a, tortor. + +

+

+ Proin nunc justo felis mollis tincidunt, risus risus pede, posuere cubilia Curae, Nullam euismod, enim. Etiam nibh ultricies dolor ac dignissim erat volutpat. Vivamus fermentum nisl nulla sem in metus. Maecenas wisi. Donec nec erat volutpat. +

+
+

+ Fusce vitae porttitor a, euismod convallis nisl, blandit risus tortor, pretium. + Vehicula vitae, imperdiet vel, ornare enim vel sodales rutrum +

+
+
+

+ Libero nunc, rhoncus ante ipsum non ipsum. Nunc eleifend pede turpis id sollicitudin fringilla. Phasellus ultrices, velit ac arcu. +

+
+

Pellentesque nunc. Donec suscipit erat. Pellentesque habitant morbi tristique ullamcorper.

+

Mauris mattis feugiat lectus nec mauris. Nullam vitae ante.

+
+
+
+
+

+ Integer condimentum sit amet +

+

+ Aenean nonummy a, mattis varius. Cras aliquet. + Praesent magna non mattis ac, rhoncus nunc, rhoncus eget, cursus pulvinar mollis.

+

Proin id nibh. Sed eu libero posuere sed, lectus. Phasellus dui gravida gravida feugiat mattis ac, felis.

+

Integer condimentum sit amet, tempor elit odio, a dolor non ante at sapien. Sed ac lectus. Nulla ligula quis eleifend mi, id leo velit pede cursus arcu id nulla ac lectus. Phasellus vestibulum. Nunc viverra enim quis diam.

+
+
+

+ Praesent wisi accumsan sit amet nibh +

+

Donec ullamcorper, risus tortor, pretium porttitor. Morbi quam quis lectus non leo.

+

Integer faucibus scelerisque. Proin faucibus at, aliquet vulputate, odio at eros. Fusce gravida, erat vitae augue. Fusce urna fringilla gravida.

+

In hac habitasse platea dictumst. Praesent wisi accumsan sit amet nibh. Maecenas orci luctus a, lacinia quam sem, posuere commodo, odio condimentum tempor, pede semper risus. Suspendisse pede. In hac habitasse platea dictumst. Nam sed laoreet sit amet erat. Integer.

+
+
+
+
+

+ CKEditor logo +

+

Quisque justo neque, mattis sed, fermentum ultrices posuere cubilia Curae, Vestibulum elit metus, quis placerat ut, lectus. Ut sagittis, nunc libero, egestas consequat lobortis velit rutrum ut, faucibus turpis. Fusce porttitor, nulla quis turpis. Nullam laoreet vel, consectetuer tellus suscipit ultricies, hendrerit wisi. Donec odio nec velit ac nunc sit amet, accumsan cursus aliquet. Vestibulum ante sit amet sagittis mi.

+

+ Nullam laoreet vel consectetuer tellus suscipit +

+
    +
  • Ut sagittis, nunc libero, egestas consequat lobortis velit rutrum ut, faucibus turpis.
  • +
  • Fusce porttitor, nulla quis turpis. Nullam laoreet vel, consectetuer tellus suscipit ultricies, hendrerit wisi.
  • +
  • Mauris eget tellus. Donec non felis. Nam eget dolor. Vestibulum enim. Donec.
  • +
+

Quisque justo neque, mattis sed, fermentum ultrices posuere cubilia Curae, Vestibulum elit metus, quis placerat ut, lectus.

+

Nullam laoreet vel, consectetuer tellus suscipit ultricies, hendrerit wisi. Ut sagittis, nunc libero, egestas consequat lobortis velit rutrum ut, faucibus turpis. Fusce porttitor, nulla quis turpis.

+

Donec odio nec velit ac nunc sit amet, accumsan cursus aliquet. Vestibulum ante sit amet sagittis mi. Sed in nonummy faucibus turpis. Mauris eget tellus. Donec non felis. Nam eget dolor. Vestibulum enim. Donec.

+
+
+
+
+ Tags of this article: +

+ inline, editing, floating, CKEditor +

+
+
+ + + diff --git a/admin/assets/ckeditor/samples/old/inlinebycode.html b/admin/assets/ckeditor/samples/old/inlinebycode.html new file mode 100644 index 0000000..dfe46be --- /dev/null +++ b/admin/assets/ckeditor/samples/old/inlinebycode.html @@ -0,0 +1,125 @@ + + + + + + Inline Editing by Code — CKEditor Sample + + + + + + +

+ CKEditor Samples » Inline Editing by Code +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ This sample shows how to create an inline editor instance of CKEditor. It is created + with a JavaScript call using the following code: +

+
+// This property tells CKEditor to not activate every element with contenteditable=true element.
+CKEDITOR.disableAutoInline = true;
+
+var editor = CKEDITOR.inline( document.getElementById( 'editable' ) );
+
+

+ Note that editable in the code above is the id + attribute of the <div> element to be converted into an inline instance. +

+
+
+

Saturn V carrying Apollo 11 Apollo 11

+ +

Apollo 11 was the spaceflight that landed the first humans, Americans Neil Armstrong and Buzz Aldrin, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.

+ +

Armstrong spent about three and a half two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5 kg) of lunar material for return to Earth. A third member of the mission, Michael Collins, piloted the command spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.

+ +

Broadcasting and quotes

+ +

Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:

+ +
+

One small step for [a] man, one giant leap for mankind.

+
+ +

Apollo 11 effectively ended the Space Race and fulfilled a national goal proposed in 1961 by the late U.S. President John F. Kennedy in a speech before the United States Congress:

+ +
+

[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.

+
+ +

Technical details

+ + + + + + + + + + + + + + + + + + + + + + + +
Mission crew
PositionAstronaut
CommanderNeil A. Armstrong
Command Module PilotMichael Collins
Lunar Module PilotEdwin "Buzz" E. Aldrin, Jr.
+ +

Launched by a Saturn V rocket from Kennedy Space Center in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of NASA's Apollo program. The Apollo spacecraft had three parts:

+ +
    +
  1. Command Module with a cabin for the three astronauts which was the only part which landed back on Earth
  2. +
  3. Service Module which supported the Command Module with propulsion, electrical power, oxygen and water
  4. +
  5. Lunar Module for landing on the Moon.
  6. +
+ +

After being sent to the Moon by the Saturn V's upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the Sea of Tranquility. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the Pacific Ocean on July 24.

+ +
+

Source: Wikipedia.org

+
+ + + + + diff --git a/admin/assets/ckeditor/samples/old/inlinetextarea.html b/admin/assets/ckeditor/samples/old/inlinetextarea.html new file mode 100644 index 0000000..f36347c --- /dev/null +++ b/admin/assets/ckeditor/samples/old/inlinetextarea.html @@ -0,0 +1,114 @@ + + + + + + Replace Textarea with Inline Editor — CKEditor Sample + + + + + + +

+ CKEditor Samples » Replace Textarea with Inline Editor +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ You can also create an inline editor from a textarea + element. In this case the textarea will be replaced + by a div element with inline editing enabled. +

+
+// "article-body" is the name of a textarea element.
+var editor = CKEDITOR.inline( 'article-body' );
+
+
+
+

This is a sample form with some fields

+

+ Title:
+

+

+ Article Body (Textarea converted to CKEditor):
+ +

+

+ +

+
+ + + + + diff --git a/admin/assets/ckeditor/samples/old/jquery.html b/admin/assets/ckeditor/samples/old/jquery.html new file mode 100644 index 0000000..56348d7 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/jquery.html @@ -0,0 +1,104 @@ + + + + + + jQuery Adapter — CKEditor Sample + + + + + + + + + +

+ CKEditor Samples » Create Editors with jQuery +

+
+ This sample is not maintained anymore. Check out the brand new samples in CKEditor Examples. +
+
+
+

+ This sample shows how to use the jQuery adapter. + Note that you have to include both CKEditor and jQuery scripts before including the adapter. +

+ +
+<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
+<script src="/ckedit../../ckeditor.js"></script>
+<script src="/ckeditor/adapters/jquery.js"></script>
+
+ +

Then you can replace HTML elements with a CKEditor instance using the ckeditor() method.

+ +
+$( document ).ready( function() {
+	$( 'textarea#editor1' ).ckeditor();
+} );
+
+
+ +

Inline Example

+ +
+

Saturn V carrying Apollo 11Apollo 11 was the spaceflight that landed the first humans, Americans Neil Armstrong and Buzz Aldrin, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.

+

Armstrong spent about three and a half two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5 kg) of lunar material for return to Earth. A third member of the mission, Michael Collins, piloted the command spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth. +

Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:

+

One small step for [a] man, one giant leap for mankind.

Apollo 11 effectively ended the Space Race and fulfilled a national goal proposed in 1961 by the late U.S. President John F. Kennedy in a speech before the United States Congress:

[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.

+
+ +
+ +

Classic (iframe-based) Example

+ + + +

+ + + + + +

+
+ + + diff --git a/admin/assets/ckeditor/samples/old/magicline/magicline.html b/admin/assets/ckeditor/samples/old/magicline/magicline.html new file mode 100644 index 0000000..6c0c028 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/magicline/magicline.html @@ -0,0 +1,210 @@ + + + + + + Using Magicline plugin — CKEditor Sample + + + + + + + + +

+ CKEditor Samples » Using Magicline plugin +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ This sample shows the advantages of Magicline plugin + which is to enhance the editing process. Thanks to this plugin, + a number of difficult focus spaces which are inaccessible due to + browser issues can now be focused. +

+

+ Magicline plugin shows a red line with a handler + which, when clicked, inserts a paragraph and allows typing. To see this, + focus an editor and move your mouse above the focus space you want + to access. The plugin is enabled by default so no additional + configuration is necessary. +

+
+
+ +
+

+ This editor uses a default Magicline setup. +

+
+ + +
+
+
+ +
+

+ This editor is using a blue line. +

+
+CKEDITOR.replace( 'editor2', {
+	magicline_color: 'blue'
+});
+
+ + +
+ + + diff --git a/admin/assets/ckeditor/samples/old/readonly.html b/admin/assets/ckeditor/samples/old/readonly.html new file mode 100644 index 0000000..8a4f27a --- /dev/null +++ b/admin/assets/ckeditor/samples/old/readonly.html @@ -0,0 +1,77 @@ + + + + + + Using the CKEditor Read-Only API — CKEditor Sample + + + + + + +

+ CKEditor Samples » Using the CKEditor Read-Only API +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ This sample shows how to use the + setReadOnly + API to put editor into the read-only state that makes it impossible for users to change the editor contents. +

+

+ For details on how to create this setup check the source code of this sample page. +

+
+
+

+ +

+

+ + +

+
+ + + diff --git a/admin/assets/ckeditor/samples/old/replacebyclass.html b/admin/assets/ckeditor/samples/old/replacebyclass.html new file mode 100644 index 0000000..0518b8b --- /dev/null +++ b/admin/assets/ckeditor/samples/old/replacebyclass.html @@ -0,0 +1,61 @@ + + + + + + Replace Textareas by Class Name — CKEditor Sample + + + + + +

+ CKEditor Samples » Replace Textarea Elements by Class Name +

+
+ This sample is not maintained anymore. Check out the brand new samples in CKEditor Examples. +
+
+

+ This sample shows how to automatically replace all <textarea> elements + of a given class with a CKEditor instance. +

+

+ To replace a <textarea> element, simply assign it the ckeditor + class, as in the code below: +

+
+<textarea class="ckeditor" name="editor1"></textarea>
+
+

+ Note that other <textarea> attributes (like id or name) need to be adjusted to your document. +

+
+
+

+ + +

+

+ +

+
+ + + diff --git a/admin/assets/ckeditor/samples/old/replacebycode.html b/admin/assets/ckeditor/samples/old/replacebycode.html new file mode 100644 index 0000000..c8793e0 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/replacebycode.html @@ -0,0 +1,60 @@ + + + + + + Replace Textarea by Code — CKEditor Sample + + + + + +

+ CKEditor Samples » Replace Textarea Elements Using JavaScript Code +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+
+

+ This editor is using an <iframe> element-based editing area, provided by the Wysiwygarea plugin. +

+
+CKEDITOR.replace( 'textarea_id' )
+
+
+ + +

+ +

+
+ + + diff --git a/admin/assets/ckeditor/samples/old/sample.css b/admin/assets/ckeditor/samples/old/sample.css new file mode 100644 index 0000000..20f60a8 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/sample.css @@ -0,0 +1,357 @@ +/* +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ + +html, body, h1, h2, h3, h4, h5, h6, div, span, blockquote, p, address, form, fieldset, img, ul, ol, dl, dt, dd, li, hr, table, td, th, strong, em, sup, sub, dfn, ins, del, q, cite, var, samp, code, kbd, tt, pre +{ + line-height: 1.5; +} + +body +{ + padding: 10px 30px; +} + +input, textarea, select, option, optgroup, button, td, th +{ + font-size: 100%; +} + +pre +{ + -moz-tab-size: 4; + tab-size: 4; +} + +pre, code, kbd, samp, tt +{ + font-family: monospace,monospace; + font-size: 1em; +} + +body { + width: 960px; + margin: 0 auto; +} + +code +{ + background: #f3f3f3; + border: 1px solid #ddd; + padding: 1px 4px; + border-radius: 3px; +} + +abbr +{ + border-bottom: 1px dotted #555; + cursor: pointer; +} + +.new, .beta +{ + text-transform: uppercase; + font-size: 10px; + font-weight: bold; + padding: 1px 4px; + margin: 0 0 0 5px; + color: #fff; + float: right; + border-radius: 3px; +} + +.new +{ + background: #FF7E00; + border: 1px solid #DA8028; + text-shadow: 0 1px 0 #C97626; + + box-shadow: 0 2px 3px 0 #FFA54E inset; +} + +.beta +{ + background: #18C0DF; + border: 1px solid #19AAD8; + text-shadow: 0 1px 0 #048CAD; + font-style: italic; + + box-shadow: 0 2px 3px 0 #50D4FD inset; +} + +h1.samples +{ + color: #0782C1; + font-size: 200%; + font-weight: normal; + margin: 0; + padding: 0; +} + +h1.samples a +{ + color: #0782C1; + text-decoration: none; + border-bottom: 1px dotted #0782C1; +} + +.samples a:hover +{ + border-bottom: 1px dotted #0782C1; +} + +h2.samples +{ + color: #000000; + font-size: 130%; + margin: 15px 0 0 0; + padding: 0; +} + +p, blockquote, address, form, pre, dl, h1.samples, h2.samples +{ + margin-bottom: 15px; +} + +ul.samples +{ + margin-bottom: 15px; +} + +.clear +{ + clear: both; +} + +fieldset +{ + margin: 0; + padding: 10px; +} + +body, input, textarea +{ + color: #333333; + font-family: Arial, Helvetica, sans-serif; +} + +body +{ + font-size: 75%; +} + +a.samples +{ + color: #189DE1; + text-decoration: none; +} + +form +{ + margin: 0; + padding: 0; +} + +pre.samples +{ + background-color: #F7F7F7; + border: 1px solid #D7D7D7; + overflow: auto; + padding: 0.25em; + white-space: pre-wrap; /* CSS 2.1 */ + word-wrap: break-word; /* IE7 */ +} + +#footer +{ + clear: both; + padding-top: 10px; +} + +#footer hr +{ + margin: 10px 0 15px 0; + height: 1px; + border: solid 1px gray; + border-bottom: none; +} + +#footer p +{ + margin: 0 10px 10px 10px; + float: left; +} + +#footer #copy +{ + float: right; +} + +#outputSample +{ + width: 100%; + table-layout: fixed; +} + +#outputSample thead th +{ + color: #dddddd; + background-color: #999999; + padding: 4px; + white-space: nowrap; +} + +#outputSample tbody th +{ + vertical-align: top; + text-align: left; +} + +#outputSample pre +{ + margin: 0; + padding: 0; +} + +.description +{ + border: 1px dotted #B7B7B7; + margin-bottom: 10px; + padding: 10px 10px 0; + overflow: hidden; +} + +label +{ + display: block; + margin-bottom: 6px; +} + +/** + * CKEditor editables are automatically set with the "cke_editable" class + * plus cke_editable_(inline|themed) depending on the editor type. + */ + +/* Style a bit the inline editables. */ +.cke_editable.cke_editable_inline +{ + cursor: pointer; +} + +/* Once an editable element gets focused, the "cke_focus" class is + added to it, so we can style it differently. */ +.cke_editable.cke_editable_inline.cke_focus +{ + box-shadow: inset 0px 0px 20px 3px #ddd, inset 0 0 1px #000; + outline: none; + background: #eee; + cursor: text; +} + +/* Avoid pre-formatted overflows inline editable. */ +.cke_editable_inline pre +{ + white-space: pre-wrap; + word-wrap: break-word; +} + +/** + * Samples index styles. + */ + +.twoColumns, +.twoColumnsLeft, +.twoColumnsRight +{ + overflow: hidden; +} + +.twoColumnsLeft, +.twoColumnsRight +{ + width: 45%; +} + +.twoColumnsLeft +{ + float: left; +} + +.twoColumnsRight +{ + float: right; +} + +dl.samples +{ + padding: 0 0 0 40px; +} +dl.samples > dt +{ + display: list-item; + list-style-type: disc; + list-style-position: outside; + margin: 0 0 3px; +} +dl.samples > dd +{ + margin: 0 0 3px; +} +.warning +{ + color: #f7c61c; + background-color: #FFCCBA; + border: 2px dotted #f7c61c; + padding: 15px 10px; + margin: 10px 0; +} + +.warning.deprecated { + font-size: 1.3em; +} + +/* Used on inline samples */ + +blockquote +{ + font-style: italic; + font-family: Georgia, Times, "Times New Roman", serif; + padding: 2px 0; + border-style: solid; + border-color: #ccc; + border-width: 0; +} + +.cke_contents_ltr blockquote +{ + padding-left: 20px; + padding-right: 8px; + border-left-width: 5px; +} + +.cke_contents_rtl blockquote +{ + padding-left: 8px; + padding-right: 20px; + border-right-width: 5px; +} + +img.right { + border: 1px solid #ccc; + float: right; + margin-left: 15px; + padding: 5px; +} + +img.left { + border: 1px solid #ccc; + float: left; + margin-right: 15px; + padding: 5px; +} + +.marker +{ + background-color: Yellow; +} diff --git a/admin/assets/ckeditor/samples/old/sample.js b/admin/assets/ckeditor/samples/old/sample.js new file mode 100644 index 0000000..86ba9d0 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/sample.js @@ -0,0 +1,50 @@ +/** + * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. + * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license + */ + +// Tool scripts for the sample pages. +// This file can be ignored and is not required to make use of CKEditor. + +( function() { + CKEDITOR.on( 'instanceReady', function( ev ) { + // Check for sample compliance. + var editor = ev.editor, + meta = CKEDITOR.document.$.getElementsByName( 'ckeditor-sample-required-plugins' ), + requires = meta.length ? CKEDITOR.dom.element.get( meta[ 0 ] ).getAttribute( 'content' ).split( ',' ) : [], + missing = [], + i; + + if ( requires.length ) { + for ( i = 0; i < requires.length; i++ ) { + if ( !editor.plugins[ requires[ i ] ] ) + missing.push( '' + requires[ i ] + '' ); + } + + if ( missing.length ) { + var warn = CKEDITOR.dom.element.createFromHtml( + '
' + + 'To fully experience this demo, the ' + missing.join( ', ' ) + ' plugin' + ( missing.length > 1 ? 's are' : ' is' ) + ' required.' + + '
' + ); + warn.insertBefore( editor.container ); + } + } + + // Set icons. + var doc = new CKEDITOR.dom.document( document ), + icons = doc.find( '.button_icon' ); + + for ( i = 0; i < icons.count(); i++ ) { + var icon = icons.getItem( i ), + name = icon.getAttribute( 'data-icon' ), + style = CKEDITOR.skin.getIconStyle( name, ( CKEDITOR.lang.dir == 'rtl' ) ); + + icon.addClass( 'cke_button_icon' ); + icon.addClass( 'cke_button__' + name + '_icon' ); + icon.setAttribute( 'style', style ); + icon.setStyle( 'float', 'none' ); + + } + } ); +} )(); diff --git a/admin/assets/ckeditor/samples/old/sample_posteddata.php b/admin/assets/ckeditor/samples/old/sample_posteddata.php new file mode 100644 index 0000000..e22f9dc --- /dev/null +++ b/admin/assets/ckeditor/samples/old/sample_posteddata.php @@ -0,0 +1,16 @@ +
+
+-------------------------------------------------------------------------------------------
+  CKEditor - Posted Data
+
+  We are sorry, but your Web server does not support the PHP language used in this script.
+
+  Please note that CKEditor can be used with any other server-side language than just PHP.
+  To save the content created with CKEditor you need to read the POST data on the server
+  side and write it to a file or the database.
+
+  Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.
+  For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
+-------------------------------------------------------------------------------------------
+
+
*/ include "assets/posteddata.php"; ?> diff --git a/admin/assets/ckeditor/samples/old/tabindex.html b/admin/assets/ckeditor/samples/old/tabindex.html new file mode 100644 index 0000000..78a6129 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/tabindex.html @@ -0,0 +1,79 @@ + + + + + + TAB Key-Based Navigation — CKEditor Sample + + + + + + + +

+ CKEditor Samples » TAB Key-Based Navigation +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ This sample shows how tab key navigation among editor instances is + affected by the tabIndex attribute from + the original page element. Use TAB key to move between the editors. +

+
+

+ +

+
+

+ +

+

+ +

+ + + diff --git a/admin/assets/ckeditor/samples/old/toolbar/toolbar.html b/admin/assets/ckeditor/samples/old/toolbar/toolbar.html new file mode 100644 index 0000000..10443c6 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/toolbar/toolbar.html @@ -0,0 +1,236 @@ + + + + + + Toolbar Configuration — CKEditor Sample + + + + + + + + +

+ CKEditor Samples » Toolbar Configuration +

+
+ This sample is not maintained anymore. Check out the brand new CKEditor Toolbar Configurator. +
+
+

+ This sample page demonstrates editor with loaded full toolbar (all registered buttons) and, if + current editor's configuration modifies default settings, also editor with modified toolbar. +

+ +

Since CKEditor 4 there are two ways to configure toolbar buttons.

+ +

By config.toolbar

+ +

+ You can explicitly define which buttons are displayed in which groups and in which order. + This is the more precise setting, but less flexible. If newly added plugin adds its + own button you'll have to add it manually to your config.toolbar setting as well. +

+ +

To add a CKEditor instance with custom toolbar setting, insert the following JavaScript call to your code:

+ +
+CKEDITOR.replace( 'textarea_id', {
+	toolbar: [
+		{ name: 'document', items: [ 'Source', '-', 'NewPage', 'Preview', '-', 'Templates' ] },	// Defines toolbar group with name (used to create voice label) and items in 3 subgroups.
+		[ 'Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Undo', 'Redo' ],			// Defines toolbar group without name.
+		'/',																					// Line break - next group will be placed in new line.
+		{ name: 'basicstyles', items: [ 'Bold', 'Italic' ] }
+	]
+});
+ +

By config.toolbarGroups

+ +

+ You can define which groups of buttons (like e.g. basicstyles, clipboard + and forms) are displayed and in which order. Registered buttons are associated + with toolbar groups by toolbar property in their definition. + This setting's advantage is that you don't have to modify toolbar configuration + when adding/removing plugins which register their own buttons. +

+ +

To add a CKEditor instance with custom toolbar groups setting, insert the following JavaScript call to your code:

+ +
+CKEDITOR.replace( 'textarea_id', {
+	toolbarGroups: [
+		{ name: 'document',	   groups: [ 'mode', 'document' ] },			// Displays document group with its two subgroups.
+ 		{ name: 'clipboard',   groups: [ 'clipboard', 'undo' ] },			// Group's name will be used to create voice label.
+ 		'/',																// Line break - next group will be placed in new line.
+ 		{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
+ 		{ name: 'links' }
+	]
+
+	// NOTE: Remember to leave 'toolbar' property with the default value (null).
+});
+
+ + + +
+

Full toolbar configuration

+

Below you can see editor with full toolbar, generated automatically by the editor.

+

+ Note: To create editor instance with full toolbar you don't have to set anything. + Just leave toolbar and toolbarGroups with the default, null values. +

+ +

+	
+ + + + + + diff --git a/admin/assets/ckeditor/samples/old/uicolor.html b/admin/assets/ckeditor/samples/old/uicolor.html new file mode 100644 index 0000000..2919a51 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/uicolor.html @@ -0,0 +1,73 @@ + + + + + + UI Color Picker — CKEditor Sample + + + + + +

+ CKEditor Samples » UI Color +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ This sample shows how to automatically replace <textarea> elements + with a CKEditor instance with an option to change the color of its user interface.
+ Note:The UI skin color feature depends on the CKEditor skin + compatibility. The Moono and Kama skins are examples of skins that work with it. +

+
+
+

+ This editor instance has a UI color value defined in configuration to change the skin color, + To specify the color of the user interface, set the uiColor property: +

+
+CKEDITOR.replace( 'textarea_id', {
+	uiColor: '#14B8C4'
+});
+

+ Note that textarea_id in the code above is the id attribute of + the <textarea> element to be replaced. +

+

+ + +

+

+ +

+
+ + + diff --git a/admin/assets/ckeditor/samples/old/uilanguages.html b/admin/assets/ckeditor/samples/old/uilanguages.html new file mode 100644 index 0000000..3698623 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/uilanguages.html @@ -0,0 +1,123 @@ + + + + + + User Interface Globalization — CKEditor Sample + + + + + + +

+ CKEditor Samples » User Interface Languages +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ This sample shows how to automatically replace <textarea> elements + with a CKEditor instance with an option to change the language of its user interface. +

+

+ It pulls the language list from CKEditor _languages.js file that contains the list of supported languages and creates + a drop-down list that lets the user change the UI language. +

+

+ By default, CKEditor automatically localizes the editor to the language of the user. + The UI language can be controlled with two configuration options: + language and + + defaultLanguage. The defaultLanguage setting specifies the + default CKEditor language to be used when a localization suitable for user's settings is not available. +

+

+ To specify the user interface language that will be used no matter what language is + specified in user's browser or operating system, set the language property: +

+
+CKEDITOR.replace( 'textarea_id', {
+	// Load the German interface.
+	language: 'de'
+});
+

+ Note that textarea_id in the code above is the id attribute of + the <textarea> element to be replaced. +

+
+
+

+ Available languages ( languages!):
+ +
+ + (You may see strange characters if your system does not support the selected language) + +

+

+ + +

+
+ + + diff --git a/admin/assets/ckeditor/samples/old/wysiwygarea/fullpage.html b/admin/assets/ckeditor/samples/old/wysiwygarea/fullpage.html new file mode 100644 index 0000000..0a9c5c8 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/wysiwygarea/fullpage.html @@ -0,0 +1,81 @@ + + + + + + Full Page Editing — CKEditor Sample + + + + + + + + + + +

+ CKEditor Samples » Full Page Editing +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ This sample shows how to configure CKEditor to edit entire HTML pages, from the + <html> tag to the </html> tag. +

+

+ The CKEditor instance below is inserted with a JavaScript call using the following code: +

+
+CKEDITOR.replace( 'textarea_id', {
+	fullPage: true,
+	allowedContent: true
+});
+
+

+ Note that textarea_id in the code above is the id attribute of + the <textarea> element to be replaced. +

+

+ The allowedContent in the code above is set to true to disable content filtering. + Setting this option is not obligatory, but in full page mode there is a strong chance that one may want be able to freely enter any HTML content in source mode without any limitations. +

+
+
+ + + +

+ +

+
+ + + diff --git a/admin/assets/ckeditor/samples/old/xhtmlstyle.html b/admin/assets/ckeditor/samples/old/xhtmlstyle.html new file mode 100644 index 0000000..6ad6570 --- /dev/null +++ b/admin/assets/ckeditor/samples/old/xhtmlstyle.html @@ -0,0 +1,235 @@ + + + + + + XHTML Compliant Output — CKEditor Sample + + + + + + + +

+ CKEditor Samples » Producing XHTML Compliant Output +

+
+ This sample is not maintained anymore. Check out its brand new version in CKEditor Examples. +
+
+

+ This sample shows how to configure CKEditor to output valid + XHTML 1.1 code. + Deprecated elements (<font>, <u>) or attributes + (size, face) will be replaced with XHTML compliant code. +

+

+ To add a CKEditor instance outputting valid XHTML code, load the editor using a standard + JavaScript call and define CKEditor features to use the XHTML compliant elements and styles. +

+

+ A snippet of the configuration code can be seen below; check the source of this page for + full definition: +

+
+CKEDITOR.replace( 'textarea_id', {
+	contentsCss: 'assets/outputxhtml.css',
+
+	coreStyles_bold: {
+		element: 'span',
+		attributes: { 'class': 'Bold' }
+	},
+	coreStyles_italic: {
+		element: 'span',
+		attributes: { 'class': 'Italic' }
+	},
+
+	...
+});
+
+
+

+ + + +

+

+ +

+
+ + + diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/css/fontello.css b/admin/assets/ckeditor/samples/toolbarconfigurator/css/fontello.css new file mode 100644 index 0000000..af1d460 --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/css/fontello.css @@ -0,0 +1,55 @@ +@font-face { + font-family: 'fontello'; + src: url('../font/fontello.eot?89024372'); + src: url('../font/fontello.eot?89024372#iefix') format('embedded-opentype'), + url('../font/fontello.woff?89024372') format('woff'), + url('../font/fontello.ttf?89024372') format('truetype'), + url('../font/fontello.svg?89024372#fontello') format('svg'); + font-weight: normal; + font-style: normal; +} +/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */ +/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */ +/* +@media screen and (-webkit-min-device-pixel-ratio:0) { + @font-face { + font-family: 'fontello'; + src: url('../font/fontello.svg?89024372#fontello') format('svg'); + } +} +*/ + + [class^="icon-"]:before, [class*=" icon-"]:before { + font-family: "fontello"; + font-style: normal; + font-weight: normal; + speak: none; + + display: inline-block; + text-decoration: inherit; + width: 1em; + margin-right: .2em; + text-align: center; + /* opacity: .8; */ + + /* For safety - reset parent styles, that can break glyph codes*/ + font-variant: normal; + text-transform: none; + + /* fix buttons height, for twitter bootstrap */ + line-height: 1em; + + /* Animation center compensation - margins should be symmetric */ + /* remove if not needed */ + margin-left: .2em; + + /* you can be more comfortable with increased icons size */ + /* font-size: 120%; */ + + /* Uncomment for 3D effect */ + /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ +} + +.icon-trash:before { content: '\e802'; } /* '' */ +.icon-down-big:before { content: '\e800'; } /* '' */ +.icon-up-big:before { content: '\e801'; } /* '' */ diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt b/admin/assets/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt new file mode 100644 index 0000000..174b67a --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt @@ -0,0 +1,10 @@ +Font license info + + +## Font Awesome + + Copyright (C) 2012 by Dave Gandy + + Author: Dave Gandy + License: SIL () + Homepage: http://fortawesome.github.com/Font-Awesome/ diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/font/config.json b/admin/assets/ckeditor/samples/toolbarconfigurator/font/config.json new file mode 100644 index 0000000..94809d7 --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/font/config.json @@ -0,0 +1,28 @@ +{ + "name": "", + "css_prefix_text": "icon-", + "css_use_suffix": false, + "hinting": true, + "units_per_em": 1000, + "ascent": 850, + "glyphs": [ + { + "uid": "f48ae54adfb27d8ada53d0fd9e34ee10", + "css": "trash-empty", + "code": 59392, + "src": "fontawesome" + }, + { + "uid": "1c4068ed75209e21af36017df8871802", + "css": "down-big", + "code": 59393, + "src": "fontawesome" + }, + { + "uid": "95376bf082bfec6ce06ea1cda7bd7ead", + "css": "up-big", + "code": 59394, + "src": "fontawesome" + } + ] +} \ No newline at end of file diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.eot b/admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.eot new file mode 100644 index 0000000000000000000000000000000000000000..2732fad4b99afccc74c27aa672ccd40f913b80ca GIT binary patch literal 4988 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 Kt8V<(q5l8`HZgPn literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.svg b/admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.svg new file mode 100644 index 0000000..33d14ac --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.svg @@ -0,0 +1,14 @@ + + + +Copyright (C) 2014 by original authors @ fontello.com + + + + + + + + + + \ No newline at end of file diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.ttf b/admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.ttf new file mode 100644 index 0000000000000000000000000000000000000000..fbcbf06af5fe25519880166886f3af289acfd960 GIT binary patch literal 4820 zcmd^CTWlNG5uLlsm#CLzk+c)a@}*alWO7N#vLq{(?8tmbah%k$*OY% z_ATvKu-vOj@mD$}GC06gp=A4p<(R2=va9=8AAKd9Q?2l^dUxRbiZBS%{`5+bDwY>*~s3H8xt zNYnh32@V|zxZ2|);1!+|J)(Q?Q87GlT(k`ipE*4c3bvhLEu`NG?tVXX7N217B; zZhv%84Dsxr_B5EGosjA4`I*lz-r4;%8^s0wehJ>4*V;b)xGCWG2ei@!w-D|bMEvyQ zWG0o=+U-o94t9vnz|(#{gnWAOZk>GX?6a+7|E5MAcO20NnNO-U`I~Rnx&u3c3y06P z{a}uBM}WV#r{6g^;SR&ap7b9%Z<}MCpnD<>%yC`l^V)5ok)#Bz!FH|T4TpJ{{<80L z$eF?Od^F_P(ExPL!8+_22fKiuaIl*i>8gW0us`cyKgH2koCSf=PH*x}=4ya;gMQ** zL5D=EgEeXq#~rN0o^Y@W_?&~?6cSH5*aLgf!G4+*TMlldZt;io`o`_e<;A74>`kAP z1O2B4<=kz#4%70QwIZ#X<)!t_Ejcb1*4N6Vm6i2maecLpr%Q`BSFFvtT9>n>&8_A2 zHF+x8UpGyb)=HaJxirt-x1L`dD3=%H!shy_oN)Zgjm`BNrD8d`R4#9v?dz-0$E|)X_J;wswFC8lX_u22{}OhbczOn=D?6()>zBfM2l8nvFIjdEZHMl(8uvEKwE>g z1jY(*l8X4QK46~)V-fRL;AQiH(fhs3g1t#w$dbKFI!TCSfiRm8zdXKQrE&%E<*; zsaT*)862vt z+um$esVV(buG-X;M);KS$McHPN{gnd4gB%rqeKWr(4$kisz7D16{!m9im(l_h=FN! z9IlP?6fJ6x=CO=PBtKa|{SHcoUxRi7OHV60zaxaO%iV%p+}W!+QcXrm7U1_6&CLS$ zX)0AIRGZy#wHgnfz~Wm$Y>6k-A+su2wwYCpp_!EqBrWTXILYKtUQ&w--sPf zsNVg0ijeAwDG}_q%Xjj#%l-UN%#=fRHgS`bUh8k1l6pLb6#BV+Wn|79Bh{D)A}bSX zKn8VI0S#o0Bviso9vMrh+S zU;t72O~gj;;h#-Wo@~5SNg7g)Rp9H?!LUr$d?*)R6xp~`1wKdPS8{J_QkUVkwQl|4 ze2P!D4>ttjA)+yX#!jP4af&EjyQZ{sVct-B+M37V)zVfNxRA$50L?;RT!+SlH4--9 zX9C$n*uLPR<_ZyTAwWS*;>wLZb@N=zvp|X3-tood7d9gK1CQ9f0bY+p40pG)9%Bs4 zJZ+nm4<|&*2?KSDqX`mf&|W?=)12zi)m&1J;hN^W93z~4rhHLo7cqoJ%NC7V#cMa3 z;ZzklCDf1;F)+x>+-iiHJhCuRqK zNCgA!NoC@IjDLy!0`373XjchvQl{#INONtnsGgj_HD0eq1{VWPOd7?@nma^e022U$ z!KAq(Y|CQ+w&fyo&SB_r<}kR#90pG?hryG~c?95V%wceuISi(l!{7>YMggXo!(fIv z46ZVV!BfmR4=~Fd2480mgB)`h|4`kalJ zx?&@yu9|V>D=EEe>K0$$3EaGw-lgA9*g(a<1ypGw3sD`2PZ{_@4oucg5a!mFtzN8-MH2e*ji^AMF4D literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.woff b/admin/assets/ckeditor/samples/toolbarconfigurator/font/fontello.woff new file mode 100644 index 0000000000000000000000000000000000000000..e1d56472f88b35b037149608094afc4bbcf97b50 GIT binary patch literal 2904 zcmY*bc{r5a8-8EQOm-oAc3G0_yAoq$ER)?>YK*a^u}p($QzBc!h>|6VlHJ&{lqiN| z%aSF#WGNzFi12%-@B8QXT-SY_=f1D|InN*GT<1JtXe1H<0Vvp<0Z#hLGx#s3=l>sQ zyOU}F03slj4oAb8vm>4ak03~kg}5HHqWXA+UV4U-B%r(%()b{V!psj+y@PxRkTwDU zOuqqug%Zz7*7xza4AsI0A$j71taaKCOI3R)GL5BLW=s;ZJ zFE&`^13U;`kmd~a4TJi2cV!EU1_fRwK_z{V=OhGU*^^NtK}0X8mJOnSBONKZ83*Jn zPb_}bGpo6|v$@5-tvV(mA{TC~ehRCC$K$YA9M;RbnU$g6%}!ACyvi#qj&mocjk~R@ zdzy>So9R6WEUU3;)Azt)y>DTKU`QBu5cpHD&MD0p6F?|{p8?KX(8 zP%$221f@mZ#lit^5LN*I^jafEBs;Qe{6PD*3cy{>I780Lb{GvEaO6ufzz6Z@;h#L= z93Iy>_pLKZK~Tj{u`N{csOX_mrla}nq%Ya+r@r|o8aFzM|E^xWVJK5gDy>y|(A#9@ z>NBFZfE1NhydfOxKbV{Hkg>4D@BwPe+-*4IWKtSCEZDu42W_7DB3lM^apLN3_FZpC|0Id}3ba2oZ!x;lpF*vvG5Bar{2q;Iowe1FOhN(z|mv2b4#GL zW)?%C&@Z#L(S=@+=e=8Mk%5C+%vHum>iXA$RaXM!iYtTibKq)$p`mlxF(w60F*iT% z2w2W^nI+BQ!cQ6RoVyqD=|RAX+@wNy4~ZHI_}FbJ{LSmt;CN>g_&Pqq-U0 z`x{m0VaPJJn719yx@RqOT-3)V@7LL^ZqMP6(s7@27B!6m`fBASX;P~{*x1U{7ot2K z^Rqczc>H^kS>pf}>+{EGQsa)r?gIr>bztUG%SPXL))gN6XYN{Ud@Jz^&;5EcaM7Db z?YjCOtECJ#?21mVCueTDe|dg`tKM(QEMSZ)Inz;6n{c$=@1%rwDKcQpAx|%q zNf_oQV0+|DpGM`5$GBtWFQZQh8rS`>Kb3JEJIe^O?3$WR@wS^Gvutpp-_wFdDS^yc zOG`R<5Qe&T^AN~Bt{FMt^RNeKa_7$4)OSiBqESOImM92>*$*T47CFaWc~7WCDmWAs>?WY8<)1fgFn;-o zRRS;V;lmo=gmsS$puhM}lLB>oCm0RwuWOuV*&?RP zl+-cGw4EY)ySzg(_PylUj(U!@bkW;#U%0PZakgk9%dGMH58$J~PS4X!qeAGt9n--h z%dAFr4V*V4O!49_h-C`p8}G86n9{FnchBy%NZH=hAbJ|_#lbE1Mj=9t9rU3+d?c+< z&iQyFk#nEv;d1GD`pXOg;K2dFMb5fI=?&yL!`D6)#vl3+%ssAd!Rx_ty1`$dU)WiK z;u66_jf;yTtL7g&=8(DgI!rhCpWoydUp zv>qd;GHU93_*N~CLfDW{%w!18* zjZ|F1B(PiZMT3z+$modrryp=GDX%#!&QQOJGUd%26v zGg!h{b2m-roYdhocL&=0E6-ToBn%0Ayl~wC@nx8@;@5mHP`euW(pSyf^RC_T@9GKm zeyb(m7b)2$h7rS@BQe&bK9(sBKQlK7>&13qX0wAksZ+tXw%u_Jjnv{{&c(C(y*iEDkOA)FBb({PRfl*Nh-4OzMhPaJDL>bo_~y<<^yjv?u@Rc878 z#MD10UTPJ#{gBiB?7iJ{NguPn8lAoO%2L4O;6`MP=2 zvPDA8zBJnU(dCdwyjg6U*Rx>#mo?XyiGg~fo^6_~aZ2xa<+AnxhI}6sbmV{kU@R7x z#aWeClEX90*~hz1-jZTpa1SR$^~JCX3GN5t1H8Y&h`NI5Mo)oLST^K;HUECce{M(2 z9Nhfs4SRBk6$=7!UCfD$ivYm*1OYN$vsY$y_WS7iOLBnMh*&(v31}`M9h&R?S-!uDxe~I&L z^j+IqI0y$OE<{=Uy$85kfHLg+tveABlsL*G${lIhHwI{J1@-LGY5+lfz$eS^qoM); zJ^}Djz@iT5uyv+_U?Qge5HyB*N>qT-hzdsOph_lr7E@b9B`X75kqQG5R2eYV#<{{M h)|m=pL{N{>SsfEVryv3YMICr>r-JDom6<*r{|}rP@vZ;> literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/index.html b/admin/assets/ckeditor/samples/toolbarconfigurator/index.html new file mode 100644 index 0000000..fca55bd --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/index.html @@ -0,0 +1,447 @@ + + + + + + + + Toolbar Configurator + + + + + + + + + + + + + +
+
+

+ CKEditor Logo +

+ +
+
+ +
+
+
+
+
+

+ Toolbar Configurator + Help +

+ +
+
+ Select configurator type + + + + + + + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+ +
+
+
+

What Am I Doing Here?

+ +
+
+
+

Arrange toolbar groups, toggle button visibility according to your needs and get your toolbar configuration.

+

You can replace the content of the config.js file with the generated configuration. If you already set some configuration options you will need to merge both configurations.

+
+
+

Read more about different ways of setting configuration and do not forget about clearing browser cache.

+

Arranging toolbar groups is the recommended way of configuring the toolbar, but if you need more freedom you can use the advanced configurator.

+
+
+ +
+ +

+ +

+
+
+
+
+ +
+

+ CKEditor – The text editor for the Internet – https://ckeditor.com +

+

+ Copyright © 2003-2020, CKSource – Frederico Knabben. All rights reserved. +

+
+ + + + + + + + + + + + + + diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js b/admin/assets/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js new file mode 100644 index 0000000..65f0b87 --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js @@ -0,0 +1,13 @@ +"function"!=typeof Object.create&&function(){var a=function(){};Object.create=function(b){if(1 and others + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css b/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css new file mode 100644 index 0000000..ceacd13 --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css @@ -0,0 +1,325 @@ +/* BASICS */ + +.CodeMirror { + /* Set height, width, borders, and global font properties here */ + font-family: monospace; + height: 300px; + color: black; +} + +/* PADDING */ + +.CodeMirror-lines { + padding: 4px 0; /* Vertical padding around content */ +} +.CodeMirror pre { + padding: 0 4px; /* Horizontal padding of content */ +} + +.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler { + background-color: white; /* The little square between H and V scrollbars */ +} + +/* GUTTER */ + +.CodeMirror-gutters { + border-right: 1px solid #ddd; + background-color: #f7f7f7; + white-space: nowrap; +} +.CodeMirror-linenumbers {} +.CodeMirror-linenumber { + padding: 0 3px 0 5px; + min-width: 20px; + text-align: right; + color: #999; + white-space: nowrap; +} + +.CodeMirror-guttermarker { color: black; } +.CodeMirror-guttermarker-subtle { color: #999; } + +/* CURSOR */ + +.CodeMirror div.CodeMirror-cursor { + border-left: 1px solid black; +} +/* Shown when moving in bi-directional text */ +.CodeMirror div.CodeMirror-secondarycursor { + border-left: 1px solid silver; +} +.CodeMirror.cm-fat-cursor div.CodeMirror-cursor { + width: auto; + border: 0; + background: #7e7; +} +.CodeMirror.cm-fat-cursor div.CodeMirror-cursors { + z-index: 1; +} + +.cm-animate-fat-cursor { + width: auto; + border: 0; + -webkit-animation: blink 1.06s steps(1) infinite; + -moz-animation: blink 1.06s steps(1) infinite; + animation: blink 1.06s steps(1) infinite; +} +@-moz-keyframes blink { + 0% { background: #7e7; } + 50% { background: none; } + 100% { background: #7e7; } +} +@-webkit-keyframes blink { + 0% { background: #7e7; } + 50% { background: none; } + 100% { background: #7e7; } +} +@keyframes blink { + 0% { background: #7e7; } + 50% { background: none; } + 100% { background: #7e7; } +} + +/* Can style cursor different in overwrite (non-insert) mode */ +div.CodeMirror-overwrite div.CodeMirror-cursor {} + +.cm-tab { display: inline-block; text-decoration: inherit; } + +.CodeMirror-ruler { + border-left: 1px solid #ccc; + position: absolute; +} + +/* DEFAULT THEME */ + +.cm-s-default .cm-keyword {color: #708;} +.cm-s-default .cm-atom {color: #219;} +.cm-s-default .cm-number {color: #164;} +.cm-s-default .cm-def {color: #00f;} +.cm-s-default .cm-variable, +.cm-s-default .cm-punctuation, +.cm-s-default .cm-property, +.cm-s-default .cm-operator {} +.cm-s-default .cm-variable-2 {color: #05a;} +.cm-s-default .cm-variable-3 {color: #085;} +.cm-s-default .cm-comment {color: #a50;} +.cm-s-default .cm-string {color: #a11;} +.cm-s-default .cm-string-2 {color: #f50;} +.cm-s-default .cm-meta {color: #555;} +.cm-s-default .cm-qualifier {color: #555;} +.cm-s-default .cm-builtin {color: #30a;} +.cm-s-default .cm-bracket {color: #997;} +.cm-s-default .cm-tag {color: #170;} +.cm-s-default .cm-attribute {color: #00c;} +.cm-s-default .cm-header {color: blue;} +.cm-s-default .cm-quote {color: #090;} +.cm-s-default .cm-hr {color: #999;} +.cm-s-default .cm-link {color: #00c;} + +.cm-negative {color: #d44;} +.cm-positive {color: #292;} +.cm-header, .cm-strong {font-weight: bold;} +.cm-em {font-style: italic;} +.cm-link {text-decoration: underline;} +.cm-strikethrough {text-decoration: line-through;} + +.cm-s-default .cm-error {color: #f00;} +.cm-invalidchar {color: #f00;} + +.CodeMirror-composing { border-bottom: 2px solid; } + +/* Default styles for common addons */ + +div.CodeMirror span.CodeMirror-matchingbracket {color: #0f0;} +div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;} +.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); } +.CodeMirror-activeline-background {background: #e8f2ff;} + +/* STOP */ + +/* The rest of this file contains styles related to the mechanics of + the editor. You probably shouldn't touch them. */ + +.CodeMirror { + position: relative; + overflow: hidden; + background: white; +} + +.CodeMirror-scroll { + overflow: scroll !important; /* Things will break if this is overridden */ + /* 30px is the magic margin used to hide the element's real scrollbars */ + /* See overflow: hidden in .CodeMirror */ + margin-bottom: -30px; margin-right: -30px; + padding-bottom: 30px; + height: 100%; + outline: none; /* Prevent dragging from highlighting the element */ + position: relative; +} +.CodeMirror-sizer { + position: relative; + border-right: 30px solid transparent; +} + +/* The fake, visible scrollbars. Used to force redraw during scrolling + before actuall scrolling happens, thus preventing shaking and + flickering artifacts. */ +.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler { + position: absolute; + z-index: 6; + display: none; +} +.CodeMirror-vscrollbar { + right: 0; top: 0; + overflow-x: hidden; + overflow-y: scroll; +} +.CodeMirror-hscrollbar { + bottom: 0; left: 0; + overflow-y: hidden; + overflow-x: scroll; +} +.CodeMirror-scrollbar-filler { + right: 0; bottom: 0; +} +.CodeMirror-gutter-filler { + left: 0; bottom: 0; +} + +.CodeMirror-gutters { + position: absolute; left: 0; top: 0; + z-index: 3; +} +.CodeMirror-gutter { + white-space: normal; + height: 100%; + display: inline-block; + margin-bottom: -30px; + /* Hack to make IE7 behave */ + *zoom:1; + *display:inline; +} +.CodeMirror-gutter-wrapper { + position: absolute; + z-index: 4; + height: 100%; +} +.CodeMirror-gutter-elt { + position: absolute; + cursor: default; + z-index: 4; +} +.CodeMirror-gutter-wrapper { + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; +} + +.CodeMirror-lines { + cursor: text; + min-height: 1px; /* prevents collapsing before first draw */ +} +.CodeMirror pre { + /* Reset some styles that the rest of the page might have set */ + -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; + border-width: 0; + background: transparent; + font-family: inherit; + font-size: inherit; + margin: 0; + white-space: pre; + word-wrap: normal; + line-height: inherit; + color: inherit; + z-index: 2; + position: relative; + overflow: visible; + -webkit-tap-highlight-color: transparent; +} +.CodeMirror-wrap pre { + word-wrap: break-word; + white-space: pre-wrap; + word-break: normal; +} + +.CodeMirror-linebackground { + position: absolute; + left: 0; right: 0; top: 0; bottom: 0; + z-index: 0; +} + +.CodeMirror-linewidget { + position: relative; + z-index: 2; + overflow: auto; +} + +.CodeMirror-widget {} + +.CodeMirror-code { + outline: none; +} + +/* Force content-box sizing for the elements where we expect it */ +.CodeMirror-scroll, +.CodeMirror-sizer, +.CodeMirror-gutter, +.CodeMirror-gutters, +.CodeMirror-linenumber { + -moz-box-sizing: content-box; + box-sizing: content-box; +} + +.CodeMirror-measure { + position: absolute; + width: 100%; + height: 0; + overflow: hidden; + visibility: hidden; +} +.CodeMirror-measure pre { position: static; } + +.CodeMirror div.CodeMirror-cursor { + position: absolute; + border-right: none; + width: 0; +} + +div.CodeMirror-cursors { + visibility: hidden; + position: relative; + z-index: 3; +} +.CodeMirror-focused div.CodeMirror-cursors { + visibility: visible; +} + +.CodeMirror-selected { background: #d9d9d9; } +.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; } +.CodeMirror-crosshair { cursor: crosshair; } +.CodeMirror ::selection { background: #d7d4f0; } +.CodeMirror ::-moz-selection { background: #d7d4f0; } + +.cm-searching { + background: #ffa; + background: rgba(255, 255, 0, .4); +} + +/* IE7 hack to prevent it from returning funny offsetTops on the spans */ +.CodeMirror span { *vertical-align: text-bottom; } + +/* Used to force a border model for a node */ +.cm-force-border { padding-right: .1px; } + +@media print { + /* Hide the cursor when printing */ + .CodeMirror div.CodeMirror-cursors { + visibility: hidden; + } +} + +/* See issue #2901 */ +.cm-tab-wrap-hack:after { content: ''; } + +/* Help users use markselection to safely style text background */ +span.CodeMirror-selectedtext { background: none; } diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js b/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js new file mode 100644 index 0000000..538493f --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js @@ -0,0 +1,288 @@ +(function(q){if("object"==typeof exports&&"object"==typeof module)module.exports=q();else{if("function"==typeof define&&define.amd)return define([],q);this.CodeMirror=q()}})(function(){function q(a,b){if(!(this instanceof q))return new q(a,b);this.options=b=b?V(b):{};V(qf,b,!1);wc(b);var c=b.value;"string"==typeof c&&(c=new P(c,b.mode));this.doc=c;var d=new q.inputStyles[b.inputStyle](this),d=this.display=new rf(a,c,d);d.wrapper.CodeMirror=this;Ad(this);Bd(this);b.lineWrapping&&(this.display.wrapper.className+= +" CodeMirror-wrap");b.autofocus&&!ab&&d.input.focus();Cd(this);this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:!1,cutIncoming:!1,draggingText:!1,highlight:new bb,keySeq:null,specialChars:null};var e=this;B&&11>C&&setTimeout(function(){e.display.input.reset(!0)},20);sf(this);Dd||(tf(),Dd=!0);Ja(this);this.curOp.forceUpdate=!0;Ed(this,c);b.autofocus&&!ab||e.hasFocus()?setTimeout(cb(xc,this),20):db(this);for(var f in Ka)if(Ka.hasOwnProperty(f))Ka[f](this, +b[f],Fd);Gd(this);b.finishInit&&b.finishInit(this);for(c=0;cC&&(this.gutters.style.zIndex=-1,this.scroller.style.paddingRight= +0);J||wa&&ab||(this.scroller.draggable=!0);a&&(a.appendChild?a.appendChild(this.wrapper):a(this.wrapper));this.reportedViewFrom=this.reportedViewTo=this.viewFrom=this.viewTo=b.first;this.view=[];this.externalMeasured=this.renderedView=null;this.lastWrapHeight=this.lastWrapWidth=this.viewOffset=0;this.updateLineNumbers=null;this.nativeBarWidth=this.barHeight=this.barWidth=0;this.scrollbarsClipped=!1;this.lineNumWidth=this.lineNumInnerWidth=this.lineNumChars=null;this.alignWidgets=!1;this.maxLine=this.cachedCharWidth= +this.cachedTextHeight=this.cachedPaddingH=null;this.maxLineLength=0;this.maxLineChanged=!1;this.wheelDX=this.wheelDY=this.wheelStartX=this.wheelStartY=null;this.shift=!1;this.activeTouch=this.selForContextMenu=null;c.init(this)}function zc(a){a.doc.mode=q.getMode(a.options,a.doc.modeOption);eb(a)}function eb(a){a.doc.iter(function(a){a.stateAfter&&(a.stateAfter=null);a.styles&&(a.styles=null)});a.doc.frontier=a.doc.first;fb(a,100);a.state.modeGen++;a.curOp&&Q(a)}function Id(a){var b=xa(a.display), +c=a.options.lineWrapping,d=c&&Math.max(5,a.display.scroller.clientWidth/gb(a.display)-3);return function(e){if(ya(a.doc,e))return 0;var f=0;if(e.widgets)for(var g=0;gb.maxLineLength&&(b.maxLineLength=d,b.maxLine=a)})}function wc(a){var b=D(a.gutters,"CodeMirror-linenumbers");-1==b&&a.lineNumbers?a.gutters=a.gutters.concat(["CodeMirror-linenumbers"]): +-1C&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")}function Gc(){}function Cd(a){a.display.scrollbars&&(a.display.scrollbars.clear(), +a.display.scrollbars.addClass&&kb(a.display.wrapper,a.display.scrollbars.addClass));a.display.scrollbars=new q.scrollbarModel[a.options.scrollbarStyle](function(b){a.display.wrapper.insertBefore(b,a.display.scrollbarFiller);v(b,"mousedown",function(){a.state.focused&&setTimeout(function(){a.display.input.focus()},0)});b.setAttribute("cm-not-content","true")},function(b,c){"horizontal"==c?Ma(a,b):lb(a,b)},a);a.display.scrollbars.addClass&&mb(a.display.wrapper,a.display.scrollbars.addClass)}function Na(a, +b){b||(b=jb(a));var c=a.display.barWidth,d=a.display.barHeight;Jd(a,b);for(var e=0;4>e&&c!=a.display.barWidth||d!=a.display.barHeight;e++)c!=a.display.barWidth&&a.options.lineWrapping&&Lb(a),Jd(a,jb(a)),c=a.display.barWidth,d=a.display.barHeight}function Jd(a,b){var c=a.display,d=c.scrollbars.update(b);c.sizer.style.paddingRight=(c.barWidth=d.right)+"px";c.sizer.style.paddingBottom=(c.barHeight=d.bottom)+"px";d.right&&d.bottom?(c.scrollbarFiller.style.display="block",c.scrollbarFiller.style.height= +d.bottom+"px",c.scrollbarFiller.style.width=d.right+"px"):c.scrollbarFiller.style.display="";d.bottom&&a.options.coverGutterNextToScrollbar&&a.options.fixedGutter?(c.gutterFiller.style.display="block",c.gutterFiller.style.height=d.bottom+"px",c.gutterFiller.style.width=b.gutterWidth+"px"):c.gutterFiller.style.display=""}function Hc(a,b,c){var d=c&&null!=c.top?Math.max(0,c.top):a.scroller.scrollTop,d=Math.floor(d-a.lineSpace.offsetTop),e=c&&null!=c.bottom?c.bottom:d+a.wrapper.clientHeight,d=Ba(b,d), +e=Ba(b,e);if(c&&c.ensure){var f=c.ensure.from.line;c=c.ensure.to.line;f=e&&(d=Ba(b,ea(u(b,c))-a.wrapper.clientHeight),e=c)}return{from:d,to:Math.max(e,d+1)}}function Bc(a){var b=a.display,c=b.view;if(b.alignWidgets||b.gutters.firstChild&&a.options.fixedGutter){for(var d=Ic(b)-b.scroller.scrollLeft+a.doc.scrollLeft,e=b.gutters.offsetWidth,f=d+"px",g=0;g=c.viewFrom&&b.visible.to<=c.viewTo&&(null==c.updateLineNumbers||c.updateLineNumbers>=c.viewTo)&&c.renderedView==c.view&&0==Kd(a))return!1;Gd(a)&&(qa(a),b.dims=Kc(a));var e=d.first+d.size,f=Math.max(b.visible.from-a.options.viewportMargin,d.first),g=Math.min(e,b.visible.to+a.options.viewportMargin);c.viewFromf-c.viewFrom&& +(f=Math.max(d.first,c.viewFrom));c.viewTo>g&&20>c.viewTo-g&&(g=Math.min(e,c.viewTo));ra&&(f=Mc(a.doc,f),g=Ld(a.doc,g));d=f!=c.viewFrom||g!=c.viewTo||c.lastWrapHeight!=b.wrapperHeight||c.lastWrapWidth!=b.wrapperWidth;e=a.display;0==e.view.length||f>=e.viewTo||g<=e.viewFrom?(e.view=Nb(a,f,g),e.viewFrom=f):(e.viewFrom>f?e.view=Nb(a,f,e.viewFrom).concat(e.view):e.viewFromg&&(e.view=e.view.slice(0, +Ca(a,g))));e.viewTo=g;c.viewOffset=ea(u(a.doc,c.viewFrom));a.display.mover.style.top=c.viewOffset+"px";g=Kd(a);if(!d&&0==g&&!b.force&&c.renderedView==c.view&&(null==c.updateLineNumbers||c.updateLineNumbers>=c.viewTo))return!1;f=fa();4=a.display.viewFrom&&b.visible.to<=a.display.viewTo)break;if(!Lc(a,b))break;Lb(a);d=jb(a);nb(a);Oc(a,d);Na(a,d)}b.signal(a,"update",a);if(a.display.viewFrom!=a.display.reportedViewFrom||a.display.viewTo!=a.display.reportedViewTo)b.signal(a, +"viewportChange",a,a.display.viewFrom,a.display.viewTo),a.display.reportedViewFrom=a.display.viewFrom,a.display.reportedViewTo=a.display.viewTo}function Pc(a,b){var c=new Mb(a,b);if(Lc(a,c)){Lb(a);Md(a,c);var d=jb(a);nb(a);Oc(a,d);Na(a,d);c.finish()}}function Oc(a,b){a.display.sizer.style.minHeight=b.docHeight+"px";var c=b.docHeight+a.display.barHeight;a.display.heightForcer.style.top=c+"px";a.display.gutters.style.height=Math.max(c+da(a),b.clientHeight)+"px"}function Lb(a){a=a.display;for(var b= +a.lineDiv.offsetTop,c=0;cC){var f=d.node.offsetTop+d.node.offsetHeight;e=f-b;b=f}else e=d.node.getBoundingClientRect(),e=e.bottom-e.top;f=d.line.height-e;2>e&&(e=xa(a));if(.001f)if(ca(d.line,e),Nd(d.line),d.rest)for(e=0;eC&&(a.node.style.zIndex=2));return a.node}function Pd(a,b){var c=a.display.externalMeasured;return c&&c.line==b.line?(a.display.externalMeasured=null,b.measure=c.measure,c.built):Sd(a,b)}function Qc(a){var b=a.bgClass?a.bgClass+" "+(a.line.bgClass||""):a.line.bgClass;b&&(b+=" CodeMirror-linebackground");if(a.background)b?a.background.className=b:(a.background.parentNode.removeChild(a.background), +a.background=null);else if(b){var c=Ob(a);a.background=c.insertBefore(t("div",null,b),c.firstChild)}a.line.wrapClass?Ob(a).className=a.line.wrapClass:a.node!=a.text&&(a.node.className="");a.text.className=(a.textClass?a.textClass+" "+(a.line.textClass||""):a.line.textClass)||""}function Qd(a,b,c,d){b.gutter&&(b.node.removeChild(b.gutter),b.gutter=null);var e=b.line.gutterMarkers;if(a.options.lineNumbers||e){var f=Ob(b),g=b.gutter=t("div",null,"CodeMirror-gutter-wrapper","left: "+(a.options.fixedGutter? +d.fixedPos:-d.gutterTotalWidth)+"px; width: "+d.gutterTotalWidth+"px");a.display.input.setUneditable(g);f.insertBefore(g,b.text);b.line.gutterClass&&(g.className+=" "+b.line.gutterClass);!a.options.lineNumbers||e&&e["CodeMirror-linenumbers"]||(b.lineNumber=g.appendChild(t("div",Jc(a.options,c),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+d.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+a.display.lineNumInnerWidth+"px")));if(e)for(b=0;by(a,b)?b:a}function Qb(a,b){return 0>y(a,b)?a:b}function Ud(a){a.state.focused||(a.display.input.focus(),xc(a))}function Rb(a){return a.options.readOnly||a.doc.cantEdit}function Sc(a,b,c,d,e){var f=a.doc;a.display.shift=!1;d||(d=f.sel);var g=sa(b),h=null;a.state.pasteIncoming&&1l.head.ch&&(!k||d.ranges[k-1].head.line!=l.head.line)){l=a.getModeAt(l.head);m=ta(m);p=!1;if(l.electricChars)for(var E=0;Ee?k.map:l[e],g=0;ge?a.line:a.rest[e]);e=f[g]+d;if(0>d||h!=b)e=f[g+(d?1:0)];return r(c,e)}}}var e=a.text.firstChild,f=!1;if(!b||!Wc(e,b))return Ra(r(F(a.line),0),!0);if(b==e&&(f=!0,b=e.childNodes[c],c=0,!b))return c=a.rest?A(a.rest):a.line,Ra(r(F(c),c.text.length),f);var g=3==b.nodeType?b:null,h=b;g||1!=b.childNodes.length||3!=b.firstChild.nodeType||(g=b.firstChild,c&&(c=g.nodeValue.length));for(;h.parentNode!=e;)h=h.parentNode; +var k=a.measure,l=k.maps;if(b=d(g,h,c))return Ra(b,f);e=h.nextSibling;for(g=g?g.nodeValue.length-c:0;e;e=e.nextSibling){if(b=d(e,e.firstChild,0))return Ra(r(b.line,b.ch-g),f);g+=e.textContent.length}h=h.previousSibling;for(g=c;h;h=h.previousSibling){if(b=d(h,h.firstChild,-1))return Ra(r(b.line,b.ch+g),f);g+=e.textContent.length}}function xf(a,b,c,d,e){function f(a){return function(b){return b.id==a}}function g(b){if(1==b.nodeType){var c=b.getAttribute("cm-text");if(null!=c)""==c&&(c=b.textContent.replace(/\u200b/g, +"")),h+=c;else{var c=b.getAttribute("cm-marker"),p;if(c)b=a.findMarks(r(d,0),r(e+1,0),f(+c)),b.length&&(p=b[0].find())&&(h+=Da(a.doc,p.from,p.to).join("\n"));else if("false"!=b.getAttribute("contenteditable")){for(p=0;pc)return r(c,u(a,c).text.length);var c= +u(a,b.line).text.length,d=b.ch,c=null==d||d>c?r(b.line,c):0>d?r(b.line,0):b;return c}function qb(a,b){return b>=a.first&&by(c,a),b!=0>y(d,a)?(a=c,c=d):b!=0>y(c,d)&&(c=d)),new z(a,c)):new z(d||c,c)}function Ub(a,b,c,d){H(a,new la([rb(a,a.sel.primary(),b,c)],0),d)}function ae(a,b,c){for(var d=[],e=0;ey(b.primary().head,a.sel.primary().head)?-1:1);de(a,ee(a,b,d,!0));c&&!1===c.scroll||!a.cm||Pa(a.cm)}function de(a,b){b.equals(a.sel)||(a.sel=b,a.cm&&(a.cm.curOp.updateInput=a.cm.curOp.selectionChanged=!0,fe(a.cm)),L(a,"cursorActivity",a))}function ge(a){de(a,ee(a,a.sel,null,!1),ha)}function ee(a,b,c,d){for(var e,f=0;f=f.ch:l.to>f.ch))){if(d&&(K(m,"beforeCursorEnter"),m.explicitlyCleared))if(h.markedSpans){--k;continue}else break;if(m.atomic){k= +m.find(0>g?-1:1);if(0==y(k,f)&&(k.ch+=g,0>k.ch?k=k.line>a.first?w(a,r(k.line-1)):null:k.ch>h.text.length&&(k=k.lineb&&(b=0);b=Math.round(b);d=Math.round(d);h.appendChild(t("div",null,"CodeMirror-selected","position: absolute; left: "+a+"px; top: "+b+"px; width: "+(null==c?m-a:c)+"px; height: "+(d-b)+"px"))}function e(b,c,e){var f=u(g,b),h=f.text.length,k,p;Af(Y(f),c||0,null==e?h:e,function(g,q,t){var u=Yb(a,r(b,g),"div",f,"left"),v,w;g==q?(v=u,t=w=u.left):(v=Yb(a,r(b,q-1),"div",f,"right"), +"rtl"==t&&(t=u,u=v,v=t),t=u.left,w=v.right);null==c&&0==g&&(t=l);3p.bottom||v.bottom==p.bottom&&v.right>p.right)p=v;ta.options.cursorBlinkRate&&(b.cursorDiv.style.visibility="hidden")}}function fb(a,b){a.doc.mode.startState&&a.doc.frontier=a.display.viewTo)){var c=+new Date+a.options.workTime,d=Sa(b.mode,sb(a,b.frontier)),e=[];b.iter(b.frontier,Math.min(b.first+b.size,a.display.viewTo+ +500),function(f){if(b.frontier>=a.display.viewFrom){var g=f.styles,h=je(a,f,d,!0);f.styles=h.styles;var k=f.styleClasses;(h=h.classes)?f.styleClasses=h:k&&(f.styleClasses=null);k=!g||g.length!=f.styles.length||k!=h&&(!k||!h||k.bgClass!=h.bgClass||k.textClass!=h.textClass);for(h=0;!k&&hc)return fb(a,a.options.workDelay),!0}); +e.length&&T(a,function(){for(var b=0;bg;--b){if(b<=f.first)return f.first;var h=u(f,b-1);if(h.stateAfter&&(!c||b<=f.frontier))return b;h=aa(h.text,null,a.options.tabSize);if(null==e||d>h)e=b-1,d=h}return e}function sb(a,b,c){var d=a.doc,e=a.display;if(!d.mode.startState)return!0;var f=Cf(a,b,c),g=f>d.first&&u(d,f-1).stateAfter,g=g?Sa(d.mode,g):Df(d.mode);d.iter(f,b,function(c){Zc(a, +c.text,g);c.stateAfter=f==b-1||0==f%5||f>=e.viewFrom&&fc)return{map:a.measure.maps[d],cache:a.measure.caches[d],before:!0}}function Vc(a,b){if(b>=a.display.viewFrom&&b=c.lineN&&bm;m++){for(;h&&tb(b.line.text.charAt(k.coverStart+h));)--h;for(;k.coverStart+lC&&0==h&&l==k.coverEnd-k.coverStart)n=d.parentNode.getBoundingClientRect();else if(B&&a.options.lineWrapping){var E=Ea(d,h,l).getClientRects();n=E.length?E["right"==g?E.length-1:0]:ad}else n=Ea(d,h,l).getBoundingClientRect()||ad;if(n.left||n.right||0==h)break;l=h;--h;c="right"}B&&11>C&&((E=!window.screen||null==screen.logicalXDPI||screen.logicalXDPI==screen.deviceXDPI)|| +(null!=bd?E=bd:(m=U(a.display.measure,t("span","x")),E=m.getBoundingClientRect(),m=Ea(m,0,1).getBoundingClientRect(),E=bd=1C)||h||n&&(n.left||n.right)||(n=(n=d.parentNode.getClientRects()[0])? +{left:n.left,right:n.left+gb(a.display),top:n.top,bottom:n.bottom}:ad);E=n.top-b.rect.top;d=n.bottom-b.rect.top;h=(E+d)/2;g=b.view.measure.heights;for(m=0;mb)f=l-k,e=f-1,b>=l&&(g="right");if(null!=e){d=a[h+2];k==l&&c==(d.insertLeft?"left":"right")&&(g=c);if("left"==c&&0==e)for(;h&&a[h-2]==a[h-3]&&a[h-1].insertLeft;)d=a[(h-=3)+2],g="left";if("right"==c&&e==l-k)for(;hc.from?g(a-1):g(a,d)}d=d||u(a.doc,b.line);e||(e=Zb(a,d));var k=Y(d);b=b.ch;if(!k)return g(b);var l=Sb(k,b),l=h(b,l);null!=vb&&(l.other=h(b,vb));return l}function oe(a, +b){var c=0;b=w(a.doc,b);a.options.lineWrapping||(c=gb(a.display)*b.ch);var d=u(a.doc,b.line),e=ea(d)+a.display.lineSpace.offsetTop;return{left:c,right:c,top:e,bottom:e+d.height}}function $b(a,b,c,d){a=r(a,b);a.xRel=d;c&&(a.outside=!0);return a}function fd(a,b,c){var d=a.doc;c+=a.display.viewOffset;if(0>c)return $b(d.first,0,!0,-1);var e=Ba(d,c),f=d.first+d.size-1;if(e>f)return $b(d.first+d.size-1,u(d,f).text.length,!0,1);0>b&&(b=0);for(d=u(d,e);;)if(e=Ef(a,d,e,b,c),f=(d=Aa(d,!1))&&d.find(0,!0),d&& +(e.ch>f.from.ch||e.ch==f.from.ch&&0d.bottom)return d.left-k;if(gt)return $b(c,n,u,1);for(;;){if(m?n==e||n==gd(b,e,1):1>=n-e){m=d +d?-1:1d){n=w;t=x;if(u=h)t+=1E3;p=v}else e=w,E=x,q=h,p-=v}}function xa(a){if(null!=a.cachedTextHeight)return a.cachedTextHeight;if(null==Fa){Fa=t("pre");for(var b=0;49>b;++b)Fa.appendChild(document.createTextNode("x")),Fa.appendChild(t("br"));Fa.appendChild(document.createTextNode("x"))}U(a.measure,Fa);b=Fa.offsetHeight/50;3=d.viewTo)||d.maxLineChanged&&c.options.lineWrapping;e.update=e.mustUpdate&&new Mb(c,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}for(b= +0;bl;l++){var m=!1,p=ma(c,h),n=g&&g!=h?ma(c,g):p,n=cc(c,Math.min(p.left, +n.left),Math.min(p.top,n.top)-k,Math.max(p.left,n.left),Math.max(p.bottom,n.bottom)+k),q=c.doc.scrollTop,r=c.doc.scrollLeft;null!=n.scrollTop&&(lb(c,n.scrollTop),1g.top+l.top?h=!0:g.bottom+l.top>(window.innerHeight||document.documentElement.clientHeight)&& +(h=!1),null==h||Gf||(g=t("div","​",null,"position: absolute; top: "+(g.top-k.viewOffset-c.display.lineSpace.offsetTop)+"px; height: "+(g.bottom-g.top+da(c)+k.barHeight)+"px; left: "+g.left+"px; width: 2px;"),c.display.lineSpace.appendChild(g),g.scrollIntoView(h),c.display.lineSpace.removeChild(g))))}h=e.maybeHiddenMarkers;g=e.maybeUnhiddenMarkers;if(h)for(k=0;kb)&&(e.updateLineNumbers=b);a.curOp.viewChanged=!0;if(b>=e.viewTo)ra&&Mc(a.doc,b)e.viewFrom?qa(a):(e.viewFrom+=d,e.viewTo+=d);else if(b<=e.viewFrom&&c>=e.viewTo)qa(a);else if(b<=e.viewFrom){var f=dc(a,c,c+d,1);f?(e.view=e.view.slice(f.index),e.viewFrom=f.lineN,e.viewTo+=d):qa(a)}else if(c>=e.viewTo)(f=dc(a,b,b,-1))?(e.view=e.view.slice(0,f.index),e.viewTo=f.lineN):qa(a);else{var f=dc(a,b,b,-1),g=dc(a,c,c+d,1);f&&g?(e.view= +e.view.slice(0,f.index).concat(Nb(a,f.lineN,g.lineN)).concat(e.view.slice(g.index)),e.viewTo+=d):qa(a)}if(a=e.externalMeasured)c=e.lineN&&b=d.viewTo||(a=d.view[Ca(a,b)],null!=a.node&&(a=a.changes||(a.changes=[]),-1==D(a,c)&&a.push(c)))}function qa(a){a.display.viewFrom=a.display.viewTo= +a.doc.first;a.display.view=[];a.display.viewOffset=0}function Ca(a,b){if(b>=a.display.viewTo)return null;b-=a.display.viewFrom;if(0>b)return null;for(var c=a.display.view,d=0;db)return d}function dc(a,b,c,d){var e=Ca(a,b),f=a.display.view;if(!ra||c==a.doc.first+a.doc.size)return{index:e,lineN:c};for(var g=0,h=a.display.viewFrom;gd?0:f.length- +1))return null;c+=d*f[e-(0>d?1:0)].size;e+=d}return{index:e,lineN:c}}function Kd(a){a=a.display.view;for(var b=0,c=0;cC?v(d.scroller,"dblclick",G(a,function(b){if(!ja(a, +b)){var c=Ua(a,b);!c||hd(a,b,"gutterClick",!0,L)||oa(a.display,b)||(O(b),b=a.findWordAt(c),Ub(a.doc,b.anchor,b.head))}})):v(d.scroller,"dblclick",function(b){ja(a,b)||O(b)});id||v(d.scroller,"contextmenu",function(b){qe(a,b)});var e,f={end:0};v(d.scroller,"touchstart",function(a){var b;1!=a.touches.length?b=!1:(b=a.touches[0],b=1>=b.radiusX&&1>=b.radiusY);b||(clearTimeout(e),b=+new Date,d.activeTouch={start:b,moved:!1,prev:300>=b-f.end?f:null},1==a.touches.length&&(d.activeTouch.left=a.touches[0].pageX, +d.activeTouch.top=a.touches[0].pageY))});v(d.scroller,"touchmove",function(){d.activeTouch&&(d.activeTouch.moved=!0)});v(d.scroller,"touchend",function(e){var f=d.activeTouch;if(f&&!oa(d,e)&&null!=f.left&&!f.moved&&300>new Date-f.start){var g=a.coordsChar(d.activeTouch,"page"),f=!f.prev||c(f,f.prev)?new z(g,g):!f.prev.prev||c(f,f.prev.prev)?a.findWordAt(g):new z(r(g.line,0),w(a.doc,r(g.line+1,0)));a.setSelection(f.anchor,f.head);a.focus();O(e)}b()});v(d.scroller,"touchcancel",b);v(d.scroller,"scroll", +function(){d.scroller.clientHeight&&(lb(a,d.scroller.scrollTop),Ma(a,d.scroller.scrollLeft,!0),K(a,"scroll",a))});v(d.scroller,"mousewheel",function(b){re(a,b)});v(d.scroller,"DOMMouseScroll",function(b){re(a,b)});v(d.wrapper,"scroll",function(){d.wrapper.scrollTop=d.wrapper.scrollLeft=0});d.dragFunctions={simple:function(b){ja(a,b)||jd(b)},start:function(b){if(B&&(!a.state.draggingText||100>+new Date-se))jd(b);else if(!ja(a,b)&&!oa(a.display,b)&&(b.dataTransfer.setData("Text",a.getSelection()),b.dataTransfer.setDragImage&& +!te)){var c=t("img",null,null,"position: fixed; left: 0; top: 0;");c.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw\x3d\x3d";ba&&(c.width=c.height=1,a.display.wrapper.appendChild(c),c._top=c.offsetTop);b.dataTransfer.setDragImage(c,0,0);ba&&c.parentNode.removeChild(c)}},drop:G(a,Hf)};var g=d.input.getField();v(g,"keyup",function(b){ue.call(a,b)});v(g,"keydown",G(a,ve));v(g,"keypress",G(a,we));v(g,"focus",cb(xc,a));v(g,"blur",cb(db,a))}function If(a){var b=a.display; +if(b.lastWrapHeight!=b.wrapper.clientHeight||b.lastWrapWidth!=b.wrapper.clientWidth)b.cachedCharWidth=b.cachedTextHeight=b.cachedPaddingH=null,b.scrollbarsClipped=!1,a.setSize()}function oa(a,b){for(var c=b.target||b.srcElement;c!=a.wrapper;c=c.parentNode)if(!c||1==c.nodeType&&"true"==c.getAttribute("cm-ignore-events")||c.parentNode==a.sizer&&c!=a.mover)return!0}function Ua(a,b,c,d){var e=a.display;if(!c&&"true"==(b.target||b.srcElement).getAttribute("cm-not-content"))return null;var f,g;c=e.lineSpace.getBoundingClientRect(); +try{f=b.clientX-c.left,g=b.clientY-c.top}catch(h){return null}b=fd(a,f,g);var k;d&&1==b.xRel&&(k=u(a.doc,b.line).text).length==b.ch&&(d=aa(k,k.length,a.options.tabSize)-k.length,b=r(b.line,Math.max(0,Math.round((f-ie(a.display).left)/gb(a.display))-d)));return b}function pe(a){var b=this.display;if(!(b.activeTouch&&b.input.supportsTouch()||ja(this,a)))if(b.shift=a.shiftKey,oa(b,a))J||(b.scroller.draggable=!1,setTimeout(function(){b.scroller.draggable=!0},100));else if(!hd(this,a,"gutterClick",!0, +L)){var c=Ua(this,a);window.focus();switch(xe(a)){case 1:c?Jf(this,a,c):(a.target||a.srcElement)==b.scroller&&O(a);break;case 2:J&&(this.state.lastMiddleDown=+new Date);c&&Ub(this.doc,c);setTimeout(function(){b.input.focus()},20);O(a);break;case 3:id?qe(this,a):Kf(this)}}}function Jf(a,b,c){B?setTimeout(cb(Ud,a),0):a.curOp.focus=fa();var d=+new Date,e;ec&&ec.time>d-400&&0==y(ec.pos,c)?e="triple":fc&&fc.time>d-400&&0==y(fc.pos,c)?(e="double",ec={time:d,pos:c}):(e="single",fc={time:d,pos:c});var d= +a.doc.sel,f=W?b.metaKey:b.ctrlKey,g;a.options.dragDrop&&Lf&&!Rb(a)&&"single"==e&&-1<(g=d.contains(c))&&!d.ranges[g].empty()?Mf(a,b,c,f):Nf(a,b,c,e,f)}function Mf(a,b,c,d){var e=a.display,f=+new Date,g=G(a,function(h){J&&(e.scroller.draggable=!1);a.state.draggingText=!1;ka(document,"mouseup",g);ka(e.scroller,"drop",g);10>Math.abs(b.clientX-h.clientX)+Math.abs(b.clientY-h.clientY)&&(O(h),!d&&+new Date-200t&&e.push(new z(r(h, +t),r(h,ye(E,g,f))))}e.length||e.push(new z(c,c));H(l,Z(n.ranges.slice(0,p).concat(e),p),{origin:"*mouse",scroll:!1});a.scrollIntoView(b)}else e=m,f=e.anchor,k=b,"single"!=d&&(b="double"==d?a.findWordAt(b):new z(r(b.line,0),w(l,r(b.line+1,0))),0=h.to|| +e.lineB.bottom?20:0;m&&setTimeout(G(a,function(){A==c&&(k.scroller.scrollTop+=m,g(b))}),50)}}function h(a){A=Infinity;O(a);k.input.focus();ka(document,"mousemove",F);ka(document,"mouseup",C);l.history.lastSelOrigin=null}var k=a.display,l=a.doc;O(b);var m,p,n=l.sel,q=n.ranges;e&&!b.shiftKey?(p=l.sel.contains(c),m=-1=Math.floor(a.display.gutters.getBoundingClientRect().right))return!1;d&&O(b);d=a.display;var k=d.lineDiv.getBoundingClientRect();if(g>k.bottom||!S(a,c))return ld(b);g-=k.top-d.viewOffset;for(k=0;k=f)return f=Ba(a.doc,g),e(a, +c,a,f,a.options.gutters[k],b),ld(b)}}function Hf(a){var b=this;if(!ja(b,a)&&!oa(b.display,a)){O(a);B&&(se=+new Date);var c=Ua(b,a,!0),d=a.dataTransfer.files;if(c&&!Rb(b))if(d&&d.length&&window.FileReader&&window.File){var e=d.length,f=Array(e),g=0;a=function(a,d){var h=new FileReader;h.onload=G(b,function(){f[d]=h.result;if(++g==e){c=w(b.doc,c);var a={from:c,to:c,text:sa(f.join("\n")),origin:"paste"};Oa(b.doc,a);be(b.doc,ga(c,ta(a)))}});h.readAsText(a)};for(var h=0;hMath.abs(a.doc.scrollTop-b)||(a.doc.scrollTop=b,wa||Pc(a,{top:b}),a.display.scroller.scrollTop!=b&& +(a.display.scroller.scrollTop=b),a.display.scrollbars.setScrollTop(b),wa&&Pc(a),fb(a,100))}function Ma(a,b,c){(c?b==a.doc.scrollLeft:2>Math.abs(a.doc.scrollLeft-b))||(b=Math.min(b,a.display.scroller.scrollWidth-a.display.scroller.clientWidth),a.doc.scrollLeft=b,Bc(a),a.display.scroller.scrollLeft!=b&&(a.display.scroller.scrollLeft=b),a.display.scrollbars.setScrollLeft(b))}function re(a,b){var c=ze(b),d=c.x,c=c.y,e=a.display,f=e.scroller;if(d&&f.scrollWidth>f.clientWidth||c&&f.scrollHeight>f.clientHeight){if(c&& +W&&J){var g=b.target,h=e.view;a:for(;g!=f;g=g.parentNode)for(var k=0;kg?h=Math.max(0,h+g-50):k=Math.min(a.doc.height,k+g+50),Pc(a,{top:h,bottom:k})),20>gc&&(null==e.wheelStartX?(e.wheelStartX=f.scrollLeft,e.wheelStartY=f.scrollTop,e.wheelDX=d,e.wheelDY=c,setTimeout(function(){if(null!=e.wheelStartX){var a=f.scrollLeft-e.wheelStartX,b=f.scrollTop- +e.wheelStartY,a=b&&e.wheelDY&&b/e.wheelDY||a&&e.wheelDX&&a/e.wheelDX;e.wheelStartX=e.wheelStartY=null;a&&(R=(R*gc+a)/(gc+1),++gc)}},200)):(e.wheelDX+=d,e.wheelDY+=c))):(c&&lb(a,Math.max(0,Math.min(f.scrollTop+c*R,f.scrollHeight-f.clientHeight))),Ma(a,Math.max(0,Math.min(f.scrollLeft+d*R,f.scrollWidth-f.clientWidth))),O(b),e.wheelStartX=null)}}function hc(a,b,c){if("string"==typeof b&&(b=ic[b],!b))return!1;a.display.input.ensurePolled();var d=a.display.shift,e=!1;try{Rb(a)&&(a.state.suppressEdits= +!0),c&&(a.display.shift=!1),e=b(a)!=Ae}finally{a.display.shift=d,a.state.suppressEdits=!1}return e}function Of(a,b,c){for(var d=0;dC&&27==a.keyCode&&(a.returnValue=!1);var b=a.keyCode;this.display.shift=16==b||a.shiftKey;var c=Be(this,a);ba&&(md=c?b:null,!c&&88==b&&!Ce&&(W?a.metaKey:a.ctrlKey)&&this.replaceSelection("",null,"cut"));18!=b||/\bCodeMirror-crosshair\b/.test(this.display.lineDiv.className)||Tf(this)}}function Tf(a){function b(a){18!=a.keyCode&&a.altKey||(kb(c,"CodeMirror-crosshair"),ka(document,"keyup",b),ka(document,"mouseover",b))}var c=a.display.lineDiv;mb(c,"CodeMirror-crosshair");v(document,"keyup",b);v(document, +"mouseover",b)}function ue(a){16==a.keyCode&&(this.doc.sel.shift=!1);ja(this,a)}function we(a){if(!(oa(this.display,a)||ja(this,a)||a.ctrlKey&&!a.altKey||W&&a.metaKey)){var b=a.keyCode,c=a.charCode;if(ba&&b==md)md=null,O(a);else if(!ba||a.which&&!(10>a.which)||!Be(this,a))if(b=String.fromCharCode(null==c?b:c),!Sf(this,a,b))this.display.input.onKeyPress(a)}}function Kf(a){a.state.delayingBlurEvent=!0;setTimeout(function(){a.state.delayingBlurEvent&&(a.state.delayingBlurEvent=!1,db(a))},100)}function xc(a){a.state.delayingBlurEvent&& +(a.state.delayingBlurEvent=!1);"nocursor"!=a.options.readOnly&&(a.state.focused||(K(a,"focus",a),a.state.focused=!0,mb(a.display.wrapper,"CodeMirror-focused"),a.curOp||a.display.selForContextMenu==a.doc.sel||(a.display.input.reset(),J&&setTimeout(function(){a.display.input.reset(!0)},20)),a.display.input.receivedFocus()),Yc(a))}function db(a){a.state.delayingBlurEvent||(a.state.focused&&(K(a,"blur",a),a.state.focused=!1,kb(a.display.wrapper,"CodeMirror-focused")),clearInterval(a.display.blinker), +setTimeout(function(){a.state.focused||(a.display.shift=!1)},150))}function qe(a,b){var c;(c=oa(a.display,b))||(c=S(a,"gutterContextMenu")?hd(a,b,"gutterContextMenu",!1,K):!1);if(!c)a.display.input.onContextMenu(b)}function De(a,b){if(0>y(a,b.from))return a;if(0>=y(a,b.to))return ta(b);var c=a.line+b.text.length-(b.to.line-b.from.line)-1,d=a.ch;a.line==b.to.line&&(d+=ta(b).ch-b.to.ch);return r(c,d)}function nd(a,b){for(var c=[],d=0;da.lastLine())){if(b.from.linee&&(b= +{from:b.from,to:r(e,u(a,e).text.length),text:[b.text[0]],origin:b.origin});b.removed=Da(a,b.from,b.to);c||(c=nd(a,b));a.cm?Vf(a.cm,b,d):qd(a,b,d);Vb(a,c,ha)}}function Vf(a,b,c){var d=a.doc,e=a.display,f=b.from,g=b.to,h=!1,k=f.line;a.options.lineWrapping||(k=F(ia(u(d,f.line))),d.iter(k,g.line+1,function(a){if(a==e.maxLine)return h=!0}));-1e.maxLineLength&&(e.maxLine= +a,e.maxLineLength=b,e.maxLineChanged=!0,h=!1)}),h&&(a.curOp.updateMaxLine=!0));d.frontier=Math.min(d.frontier,f.line);fb(a,400);c=b.text.length-(g.line-f.line)-1;b.full?Q(a):f.line!=g.line||1!=b.text.length||Me(a.doc,b)?Q(a,f.line,g.line+1,c):na(a,f.line,"text");c=S(a,"changes");if((d=S(a,"change"))||c)b={from:f,to:g,text:b.text,removed:b.removed,origin:b.origin},d&&L(a,"change",a,b),c&&(a.curOp.changeObjs||(a.curOp.changeObjs=[])).push(b);a.display.selForContextMenu=null}function wb(a,b,c,d,e){d|| +(d=c);if(0>y(d,c)){var f=d;d=c;c=f}"string"==typeof b&&(b=sa(b));Oa(a,{from:c,to:d,text:b,origin:e})}function cc(a,b,c,d,e){var f=a.display,g=xa(a.display);0>c&&(c=0);var h=a.curOp&&null!=a.curOp.scrollTop?a.curOp.scrollTop:f.scroller.scrollTop,k=Nc(a),l={};e-c>k&&(e=c+k);var m=a.doc.height+Ec(f),p=cm-g;ch+k&&(c=Math.min(c,(g?m:e)-k),c!=h&&(l.scrollTop=c));h=a.curOp&&null!=a.curOp.scrollLeft?a.curOp.scrollLeft:f.scroller.scrollLeft;a=pa(a)-(a.options.fixedGutter?f.gutters.offsetWidth: +0);(f=d-b>a)&&(d=b+a);10>b?l.scrollLeft=0:ba+h-3&&(l.scrollLeft=d+(f?0:10)-a);return l}function lc(a,b,c){null==b&&null==c||mc(a);null!=b&&(a.curOp.scrollLeft=(null==a.curOp.scrollLeft?a.doc.scrollLeft:a.curOp.scrollLeft)+b);null!=c&&(a.curOp.scrollTop=(null==a.curOp.scrollTop?a.doc.scrollTop:a.curOp.scrollTop)+c)}function Pa(a){mc(a);var b=a.getCursor(),c=b,d=b;a.options.lineWrapping||(c=b.ch?r(b.line,b.ch-1):b,d=r(b.line,b.ch+1));a.curOp.scrollToPos={from:c, +to:d,margin:a.options.cursorScrollMargin,isCursor:!0}}function mc(a){var b=a.curOp.scrollToPos;if(b){a.curOp.scrollToPos=null;var c=oe(a,b.from),d=oe(a,b.to),b=cc(a,Math.min(c.left,d.left),Math.min(c.top,d.top)-b.margin,Math.max(c.right,d.right),Math.max(c.bottom,d.bottom)+b.margin);a.scrollTo(b.scrollLeft,b.scrollTop)}}function pb(a,b,c,d){var e=a.doc,f;null==c&&(c="add");"smart"==c&&(e.mode.indent?f=sb(a,b):c="prev");var g=a.options.tabSize,h=u(e,b),k=aa(h.text,null,g);h.stateAfter&&(h.stateAfter= +null);var l=h.text.match(/^\s*/)[0],m;if(!d&&!/\S/.test(h.text))m=0,c="not";else if("smart"==c&&(m=e.mode.indent(f,h.text.slice(l.length),h.text),m==Ae||150e.first?aa(u(e,b-1).text,null,g):0:"add"==c?m=k+a.options.indentUnit:"subtract"==c?m=k-a.options.indentUnit:"number"==typeof c&&(m=k+c);m=Math.max(0,m);c="";d=0;if(a.options.indentWithTabs)for(a=Math.floor(m/g);a;--a)d+=g,c+="\t";d=y(f.from,A(d).to);){var g=d.pop();if(0>y(g.from,f.from)){f.from=g.from;break}}d.push(f)}T(a, +function(){for(var b=d.length-1;0<=b;b--)wb(a.doc,"",d[b].from,d[b].to,"+delete");Pa(a)})}function rd(a,b,c,d,e){function f(b){var d=(e?gd:Oe)(l,h,c,!0);if(null==d){if(b=!b)b=g+c,b=a.first+a.size?b=m=!1:(g=b,b=l=u(a,b));if(b)h=e?(0>c?bc:ac)(l):0>c?l.text.length:0;else return m=!1}else h=d;return!0}var g=b.line,h=b.ch,k=c,l=u(a,g),m=!0;if("char"==d)f();else if("column"==d)f(!0);else if("word"==d||"group"==d){var p=null;d="group"==d;b=a.cm&&a.cm.getHelper(b,"wordChars");for(var n=!0;!(0> +c)||f(!n);n=!1){var q=l.text.charAt(h)||"\n",q=oc(q,b)?"w":d&&"\n"==q?"n":!d||/\s/.test(q)?null:"p";!d||n||q||(q="s");if(p&&p!=q){0>c&&(c=1,f());break}q&&(p=q);if(0c?1.5:.5)*xa(a.display))):"line"==d&&(g=0c?0>=g:g>=e.height){b.hitSide=!0;break}g+=5*c}return b}function x(a,b,c,d){q.defaults[a]=b;c&&(Ka[a]=d?function(a,b,d){d!=Fd&&c(a,b,d)}:c)}function Wf(a){var b=a.split(/-(?!$)/);a=b[b.length-1];for(var c,d,e,f,g=0;g=e:l.to>e);(k||(k=[])).push(new qc(m,l.from,p?null:l.to))}}c=k;if(d)for(var h=0,n;h=f:k.to>f)||k.from==f&&"bookmark"==l.type&&(!g||k.marker.insertLeft))m=null==k.from||(l.inclusiveLeft?k.from<=f:k.fromy(g.to,e.from)||0k||!c.inclusiveLeft&&!k)&&h.push({from:g.from,to:e.from});(0Ve(d,e.marker))&&(d=e.marker);return d}function Qe(a,b,c,d,e){a=u(a,b);if(a=ra&&a.markedSpans)for(b=0;b=k||0>=h&&0<=k)&&(0>=h&&(0y(g.from,d)||f.marker.inclusiveLeft&& +e.inclusiveRight)))return!0}}}function ia(a){for(var b;b=Aa(a,!0);)a=b.find(-1,!0).line;return a}function Mc(a,b){var c=u(a,b),d=ia(c);return c==d?b:F(d)}function Ld(a,b){if(b>a.lastLine())return b;var c=u(a,b),d;if(!ya(a,c))return b;for(;d=Aa(c,!1);)c=d.find(1,!0).line;return F(c)+1}function ya(a,b){var c=ra&&b.markedSpans;if(c)for(var d,e=0;ee;e++){d&&(d[0]=q.innerMode(a,c).mode);var f=a.token(b,c);if(b.pos>b.start)return f}throw Error("Mode "+a.name+" failed to advance stream.");}function Ye(a,b,c,d){function e(a){return{start:m.start,end:m.pos,string:m.current(),type:h||null,state:a?Sa(f.mode,l):l}}var f=a.doc,g=f.mode,h;b=w(f,b);var k=u(f,b.line),l=sb(a,b.line,c),m=new tc(k.text,a.options.tabSize),p;for(d&&(p=[]);(d||m.posa.options.maxHighlightLength?(h=!1,g&&Zc(a,b,d,m.pos),m.pos=b.length,p=null):p=We(ud(c,m,d,n),f);if(n){var q=n[0].name;q&&(p="m-"+(p?q+" "+p:q))}if(!h||l!=p){for(;ka&&e.splice(h,1,a,e[h+1],d);h+=2;k=Math.min(a,d)}if(b)if(g.opaque)e.splice(c,h-c,a,"cm-overlay "+b),h=c+2;else for(;cEa(g,1,2).getBoundingClientRect().right-h.right:!1}g&&(f=Y(e))&&(c.addToken=dg(c.addToken,f));c.map=[];h=b!= +a.display.externalMeasured&&F(e);a:{g=c;var h=$e(a,e,h),k=e.markedSpans,l=e.text,m=0;if(k)for(var p=l.length,n=0,q=1,r="",u=void 0,v=void 0,w=0,x=void 0,y=void 0,A=void 0,C=void 0,z=void 0;;){if(w==n){for(var x=y=A=C=v="",z=null,w=Infinity,G=[],H=0;Hn||D.collapsed&&I.to==n&&I.from==n)?(null!=I.to&&I.to!=n&&w>I.to&&(w=I.to,y=""),D.className&&(x+=" "+D.className),D.css&&(v=D.css), +D.startStyle&&I.from==n&&(A+=" "+D.startStyle),D.endStyle&&I.to==w&&(y+=" "+D.endStyle),D.title&&!C&&(C=D.title),D.collapsed&&(!z||0>Ve(z.marker,D))&&(z=I)):I.from>n&&w>I.from&&(w=I.from)}if(z&&(z.from||0)==n){bf(g,(null==z.to?p+1:z.to)-n,z.marker,null==z.from);if(null==z.to)break a;z.to==n&&(z=!1)}if(!z&&G.length)for(H=0;H=p)break;for(G=Math.min(p,w);;){if(r){H=n+r.length;z||(I=H>G?r.slice(0,G-n):r,g.addToken(g,I,u?u+x:x,A,n+I.length==w?y:"",C,v));if(H>=G){r=r.slice(G- +n);n=G;break}n=H;A=""}r=l.slice(m,m=h[q++]);u=af(h[q++],g.cm.options)}}else for(var q=1;qC?m.appendChild(t("span",[r])):m.appendChild(r);a.map.push(a.pos,a.pos+q,r);a.col+=q;a.pos+=q}if(!n)break;p+=q+1;"\t"==n[0]?(r=a.cm.options.tabSize,n=r-a.col%r,r=m.appendChild(t("span",Ne(n),"cm-tab")),r.setAttribute("role","presentation"),r.setAttribute("cm-text","\t"),a.col+=n):(r=a.cm.options.specialCharPlaceholder(n[0]),r.setAttribute("cm-text",n[0]),B&&9>C?m.appendChild(t("span",[r])):m.appendChild(r),a.col+=1);a.map.push(a.pos,a.pos+1,r);a.pos++}else{a.col+=b.length;var m=document.createTextNode(h); +a.map.push(a.pos,a.pos+b.length,m);B&&9>C&&(l=!0);a.pos+=b.length}if(c||d||e||l||g)return b=c||"",d&&(b+=d),e&&(b+=e),d=t("span",[m],b,g),f&&(d.title=f),a.content.appendChild(d);a.content.appendChild(m)}}function fg(a){for(var b=" ",c=0;cl&&n.from<=l)break}if(n.to>=m)return a(c,d,e,f,g, +h,k);a(c,d.slice(0,n.to-l),e,f,null,h,k);f=null;d=d.slice(n.to-l);l=n.to}}}function bf(a,b,c,d){var e=!d&&c.widgetNode;e&&a.map.push(a.pos,a.pos+b,e);!d&&a.cm.display.input.needsContentAttribute&&(e||(e=a.content.appendChild(document.createElement("span"))),e.setAttribute("cm-marker",c.id));e&&(a.cm.display.input.setUneditable(e),a.content.appendChild(e));a.pos+=b}function Me(a,b){return 0==b.from.ch&&0==b.to.ch&&""==A(b.text)&&(!a.cm||a.cm.options.wholeLineUpdateBefore)}function qd(a,b,c,d){function e(a, +c,e){a.text=c;a.stateAfter&&(a.stateAfter=null);a.styles&&(a.styles=null);null!=a.order&&(a.order=null);Te(a);Ue(a,e);c=d?d(a):1;c!=a.height&&ca(a,c);L(a,"change",a,b)}function f(a,b){for(var e=a,f=[];eb||b>=a.size)throw Error("There is no line "+(b+a.first)+" in the document.");for(var c=a;!c.lines;)for(var d=0;;++d){var e=c.children[d],f=e.chunkSize();if(bf-a.cm.options.historyEventDelay|| +"*"==b.origin.charAt(0)))e.lastOp==d?(ce(e.done),g=A(e.done)):e.done.length&&!A(e.done).ranges?g=A(e.done):1e.undoDepth;)e.done.shift(),e.done[0].ranges||e.done.shift();e.done.push(c);e.generation= +++e.maxGeneration;e.lastModTime=e.lastSelTime=f;e.lastOp=e.lastSelOp=d;e.lastOrigin=e.lastSelOrigin=b.origin;k||K(a,"historyAdded")}function Wb(a,b){var c=A(b);c&&c.ranges&&c.equals(a)||b.push(a)}function cf(a,b,c,d){var e=b["spans_"+a.id],f=0;a.iter(Math.max(a.first,c),Math.min(a.first+a.size,d),function(c){c.markedSpans&&((e||(e=b["spans_"+a.id]={}))[f]=c.markedSpans);++f})}function Zf(a){if(!a)return null;for(var b=0,c;b=b)return d+Math.min(g,b-e);e+=f-d;e+=c-e%c;d=f+1;if(e>=b)return d}}function Ne(a){for(;vc.length<=a;)vc.push(A(vc)+" ");return vc[a]}function A(a){return a[a.length-1]}function D(a,b){for(var c=0;c=b.offsetWidth&&2C))}a=yd?t("span", +"​"):t("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px");a.setAttribute("cm-text","");return a}function Af(a,b,c,d){if(!a)return d(b,c,"ltr");for(var e=!1,f=0;fb||b==c&&g.to==b)d(Math.max(g.from,b),Math.min(g.to,c),1==g.level?"rtl":"ltr"),e=!0}e||d(b,c,"ltr")}function dd(a){return a.level%2?a.to:a.from}function ed(a){return a.level%2?a.from:a.to}function ac(a){return(a=Y(a))?dd(a[0]):0}function bc(a){var b=Y(a);return b?ed(A(b)):a.text.length} +function kf(a,b){var c=u(a.doc,b),d=ia(c);d!=c&&(b=F(d));d=(c=Y(d))?c[0].level%2?bc(d):ac(d):0;return r(b,d)}function lf(a,b){var c=kf(a,b.line),d=u(a.doc,c.line),e=Y(d);return e&&0!=e[0].level?c:(d=Math.max(0,d.text.search(/\S/)),r(c.line,b.line==c.line&&b.ch<=d&&b.ch?0:d))}function Sb(a,b){vb=null;for(var c=0,d;cb)return c;if(e.from==b||e.to==b)if(null==d)d=c;else{var f;f=e.level;var g=a[d].level,h=a[0].level;f=f==h?!0:g==h?!1:fg.from&&bb||b>a.text.length?null:b}var wa=/gecko\/\d/i.test(navigator.userAgent),mf=/MSIE \d/.test(navigator.userAgent),nf=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),B=mf||nf,C=B&&(mf?document.documentMode||6:nf[1]),J=/WebKit\//.test(navigator.userAgent),jg=J&&/Qt\/\d+\.\d+/.test(navigator.userAgent),kg=/Chrome\//.test(navigator.userAgent),ba=/Opera\//.test(navigator.userAgent),te=/Apple Computer/.test(navigator.vendor),lg=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(navigator.userAgent), +Gf=/PhantomJS/.test(navigator.userAgent),Qa=/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent),ab=Qa||/Android|webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(navigator.userAgent),W=Qa||/Mac/.test(navigator.platform),mg=/win/i.test(navigator.platform),Ia=ba&&navigator.userAgent.match(/Version\/(\d*\.\d*)/);Ia&&(Ia=Number(Ia[1]));Ia&&15<=Ia&&(ba=!1,J=!0);var of=W&&(jg||ba&&(null==Ia||12.11>Ia)),id=wa||B&&9<=C,Ge=!1,ra=!1;Fc.prototype=V({update:function(a){var b= +a.scrollWidth>a.clientWidth+1,c=a.scrollHeight>a.clientHeight+1,d=a.nativeBarWidth;c?(this.vert.style.display="block",this.vert.style.bottom=b?d+"px":"0",this.vert.firstChild.style.height=Math.max(0,a.scrollHeight-a.clientHeight+(a.viewHeight-(b?d:0)))+"px"):(this.vert.style.display="",this.vert.firstChild.style.height="0");b?(this.horiz.style.display="block",this.horiz.style.right=c?d+"px":"0",this.horiz.style.left=a.barLeft+"px",this.horiz.firstChild.style.width=a.scrollWidth-a.clientWidth+(a.viewWidth- +a.barLeft-(c?d:0))+"px"):(this.horiz.style.display="",this.horiz.firstChild.style.width="0");!this.checkedOverlay&&0new Date-d.state.lastMiddleDown)){var a=f.selectionStart,b=f.selectionEnd;f.value+="$";f.selectionEnd=b;f.selectionStart= +a;d.state.fakedLastChar=!0}d.state.pasteIncoming=!0;c.fastPoll()});v(f,"cut",b);v(f,"copy",b);v(a.scroller,"paste",function(b){oa(a,b)||(d.state.pasteIncoming=!0,c.focus())});v(a.lineSpace,"selectstart",function(b){oa(a,b)||O(b)});v(f,"compositionstart",function(){var a=d.getCursor("from");c.composing={start:a,range:d.markText(a,d.getCursor("to"),{className:"CodeMirror-composing"})}});v(f,"compositionend",function(){c.composing&&(c.poll(),c.composing.range.clear(),c.composing=null)})},prepareSelection:function(){var a= +this.cm,b=a.display,c=a.doc,d=he(a);if(a.options.moveInputWithCursor){var a=ma(a,c.sel.primary().head,"div"),c=b.wrapper.getBoundingClientRect(),e=b.lineDiv.getBoundingClientRect();d.teTop=Math.max(0,Math.min(b.wrapper.clientHeight-10,a.top+e.top-c.top));d.teLeft=Math.max(0,Math.min(b.wrapper.clientWidth-10,a.left+e.left-c.left))}return d},showSelection:function(a){var b=this.cm.display;U(b.cursorDiv,a.cursors);U(b.selectionDiv,a.selection);null!=a.teTop&&(this.wrapper.style.top=a.teTop+"px",this.wrapper.style.left= +a.teLeft+"px")},reset:function(a){if(!this.contextMenuPending){var b,c,d=this.cm,e=d.doc;d.somethingSelected()?(this.prevInput="",b=e.sel.primary(),c=(b=Ce&&(100C&&f.scrollbars.setScrollTop(f.scroller.scrollTop= +k);if(null!=g.selectionStart){(!B||B&&9>C)&&b();var a=0,c=function(){f.selForContextMenu==e.doc.sel&&0==g.selectionStart&&0a++?f.detectingSelectAll=setTimeout(c,500):f.input.reset()};f.detectingSelectAll=setTimeout(c,200)}}var d=this,e=d.cm,f=e.display,g=d.textarea,h=Ua(e,a),k=f.scroller.scrollTop;if(h&&!ba){e.options.resetSelectionOnContextMenu&&-1==e.doc.sel.contains(h)&&G(e,H)(e.doc,ga(h),ha);var l=g.style.cssText;d.wrapper.style.position= +"absolute";g.style.cssText="position: fixed; width: 30px; height: 30px; top: "+(a.clientY-5)+"px; left: "+(a.clientX-5)+"px; z-index: 1000; background: "+(B?"rgba(255, 255, 255, .05)":"transparent")+"; outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity\x3d5);";if(J)var m=window.scrollY;f.input.focus();J&&window.scrollTo(null,m);f.input.reset();e.somethingSelected()||(g.value=d.prevInput=" ");d.contextMenuPending=!0;f.selForContextMenu=e.doc.sel;clearTimeout(f.detectingSelectAll); +B&&9<=C&&b();if(id){jd(a);var p=function(){ka(window,"mouseup",p);setTimeout(c,20)};v(window,"mouseup",p)}else setTimeout(c,50)}},setUneditable:Eb,needsContentAttribute:!1},Tc.prototype);Uc.prototype=V({init:function(a){function b(a){if(d.somethingSelected())X=d.getSelections(),"cut"==a.type&&d.replaceSelection("",null,"cut");else if(d.options.lineWiseCopyCut){var b=Vd(d);X=b.text;"cut"==a.type&&d.operation(function(){d.setSelections(b.ranges,0,ha);d.replaceSelection("",null,"cut")})}else return; +if(a.clipboardData&&!Qa)a.preventDefault(),a.clipboardData.clearData(),a.clipboardData.setData("text/plain",X.join("\n"));else{var c=Xd();a=c.firstChild;d.display.lineSpace.insertBefore(c,d.display.lineSpace.firstChild);a.value=X.join("\n");var h=document.activeElement;Za(a);setTimeout(function(){d.display.lineSpace.removeChild(c);h.focus()},50)}}var c=this,d=c.cm;a=c.div=a.lineDiv;a.contentEditable="true";Wd(a);v(a,"paste",function(a){var b=a.clipboardData&&a.clipboardData.getData("text/plain"); +b&&(a.preventDefault(),d.replaceSelection(b,null,"paste"))});v(a,"compositionstart",function(a){a=a.data;c.composing={sel:d.doc.sel,data:a,startData:a};if(a){var b=d.doc.sel.primary(),g=d.getLine(b.head.line).indexOf(a,Math.max(0,b.head.ch-a.length));-1b.viewTo-1)return!1;var e;d.line==b.viewFrom||0==(e=Ca(a,d.line))?(d=F(b.view[0].line),e=b.view[0].node):(d=F(b.view[e].line),e=b.view[e-1].node.nextSibling);var f= +Ca(a,c.line);f==b.view.length-1?(c=b.viewTo-1,b=b.view[f].node):(c=F(b.view[f+1].line)-1,b=b.view[f+1].node.previousSibling);b=sa(xf(a,e,b,d,c));for(e=Da(a.doc,r(d,0),r(c,u(a.doc,c).text.length));1=y(a,d.to()))return c}return-1}};z.prototype={from:function(){return Qb(this.anchor,this.head)},to:function(){return Pb(this.anchor,this.head)},empty:function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch}};var ad={left:0,right:0,top:0,bottom:0},Fa,Ta=null,Ff=0,fc,ec,se=0,gc=0,R=null;B?R=-.53:wa?R=15:kg?R=-.7:te&&(R=-1/3);var ze=function(a){var b=a.wheelDeltaX,c=a.wheelDeltaY;null==b&&a.detail&& +a.axis==a.HORIZONTAL_AXIS&&(b=a.detail);null==c&&a.detail&&a.axis==a.VERTICAL_AXIS?c=a.detail:null==c&&(c=a.wheelDelta);return{x:b,y:c}};q.wheelEventPixels=function(a){a=ze(a);a.x*=R;a.y*=R;return a};var Qf=new bb,md=null,ta=q.changeEnd=function(a){return a.text?r(a.from.line+a.text.length-1,A(a.text).length+(1==a.text.length?a.from.ch:0)):a.to};q.prototype={constructor:q,focus:function(){window.focus();this.display.input.focus()},setOption:function(a,b){var c=this.options,d=c[a];if(c[a]!=b||"mode"== +a)c[a]=b,Ka.hasOwnProperty(a)&&G(this,Ka[a])(this,b,d)},getOption:function(a){return this.options[a]},getDoc:function(){return this.doc},addKeyMap:function(a,b){this.state.keyMaps[b?"push":"unshift"](pc(a))},removeKeyMap:function(a){for(var b=this.state.keyMaps,c=0;cc&&(pb(this,e.head.line,a,!0),c=e.head.line,d==this.doc.sel.primIndex&&Pa(this));else{for(var f=e.from(),e=e.to(),g=Math.max(c,f.line),c=Math.min(this.lastLine(),e.line-(e.ch?0:1))+1,e=g;e>1;if((e?b[2*e-1]:0)>=a)d=e;else if(b[2*e+1]c?b:0==c?null:b.slice(0,c-1)},getModeAt:function(a){var b=this.doc.mode;return b.innerMode?q.innerMode(b,this.getTokenAt(a).state).mode:b},getHelper:function(a,b){return this.getHelpers(a,b)[0]},getHelpers:function(a,b){var c=[];if(!$a.hasOwnProperty(b))return c;var d=$a[b],e=this.getModeAt(a);if("string"== +typeof e[b])d[e[b]]&&c.push(d[e[b]]);else if(e[b])for(var f=0;fd&&(a=d,c=!0),d=u(this.doc, +a)):d=a;return cd(this,d,{top:0,left:0},b||"page").top+(c?this.doc.height-ea(d):0)},defaultTextHeight:function(){return xa(this.display)},defaultCharWidth:function(){return gb(this.display)},setGutterMarker:M(function(a,b,c){return nc(this.doc,a,"gutter",function(a){var e=a.gutterMarkers||(a.gutterMarkers={});e[b]=c;!c&&hf(e)&&(a.gutterMarkers=null);return!0})}),clearGutter:M(function(a){var b=this,c=b.doc,d=c.first;c.iter(function(c){c.gutterMarkers&&c.gutterMarkers[a]&&(c.gutterMarkers[a]=null, +na(b,d,"gutter"),hf(c.gutterMarkers)&&(c.gutterMarkers=null));++d})}),lineInfo:function(a){if("number"==typeof a){if(!qb(this.doc,a))return null;var b=a;a=u(this.doc,a);if(!a)return null}else if(b=F(a),null==b)return null;return{line:b,handle:a,text:a.text,gutterMarkers:a.gutterMarkers,textClass:a.textClass,bgClass:a.bgClass,wrapClass:a.wrapClass,widgets:a.widgets}},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(a,b,c,d,e){var f=this.display;a= +ma(this,w(this.doc,a));var g=a.bottom,h=a.left;b.style.position="absolute";b.setAttribute("cm-ignore-events","true");this.display.input.setUneditable(b);f.sizer.appendChild(b);if("over"==d)g=a.top;else if("above"==d||"near"==d){var k=Math.max(f.wrapper.clientHeight,this.doc.height),l=Math.max(f.sizer.clientWidth,f.lineSpace.clientWidth);("above"==d||a.bottom+b.offsetHeight>k)&&a.top>b.offsetHeight?g=a.top-b.offsetHeight:a.bottom+b.offsetHeight<=k&&(g=a.bottom);h+b.offsetWidth>l&&(h=l-b.offsetWidth)}b.style.top= +g+"px";b.style.left=b.style.right="";"right"==e?(h=f.sizer.clientWidth-b.offsetWidth,b.style.right="0px"):("left"==e?h=0:"middle"==e&&(h=(f.sizer.clientWidth-b.offsetWidth)/2),b.style.left=h+"px");c&&(a=cc(this,h,g,h+b.offsetWidth,g+b.offsetHeight),null!=a.scrollTop&&lb(this,a.scrollTop),null!=a.scrollLeft&&Ma(this,a.scrollLeft))},triggerOnKeyDown:M(ve),triggerOnKeyPress:M(we),triggerOnKeyUp:ue,execCommand:function(a){if(ic.hasOwnProperty(a))return ic[a](this)},findPosH:function(a,b,c,d){var e=1; +0>b&&(e=-1,b=-b);var f=0;for(a=w(this.doc,a);fa?d.from():d.to()},Gb)}),deleteH:M(function(a,b){var c=this.doc;this.doc.sel.somethingSelected()?c.replaceSelection("",null,"+delete"):Va(this,function(d){var e=rd(c,d.head,a,b,!1);return 0>a?{from:e,to:d.head}:{from:d.head,to:e}})}),findPosV:function(a, +b,c,d){var e=1;0>b&&(e=-1,b=-b);var f=0;for(a=w(this.doc,a);fa?g.from():g.to();var k=ma(c,g.head,"div");null!=g.goalColumn&&(k.left=g.goalColumn);e.push(k.left);var l=Pe(c,k,a,b);"page"==b&&g==d.sel.primary()&&lc(c,null,Yb(c,l,"div").top-k.top);return l}, +Gb);if(e.length)for(var g=0;ga.xRel||d==b.length)&&c?--c:++d;for(var f=b.charAt(c),f=oc(f,e)?function(a){return oc(a,e)}:/\s/.test(f)?function(a){return/\s/.test(a)}:function(a){return!/\s/.test(a)&&!oc(a)};0a.doc.first){var g=u(a.doc,e.line-1).text;g&&a.replaceRange(f.charAt(0)+"\n"+g.charAt(g.length-1),r(e.line-1,g.length-1),r(e.line,1),"+transpose")}c.push(new z(e, +e))}a.setSelections(c)})},newlineAndIndent:function(a){T(a,function(){for(var b=a.listSelections().length,c=0;c=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||void 0},next:function(){if(this.pos +b},eatSpace:function(){for(var a=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>a},skipToEnd:function(){this.pos=this.string.length},skipTo:function(a){a=this.string.indexOf(a,this.pos);if(-1a.display.maxLineLength&&(a.display.maxLine=f,a.display.maxLineLength=g,a.display.maxLineChanged=!0);null!=c&&a&&this.collapsed&&Q(a,c,d+1);this.lines.length=0;this.explicitlyCleared= +!0;this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,a&&ge(a.doc));a&&L(a,"markerCleared",a,this);b&&La(a);this.parent&&this.parent.clear()}};Ha.prototype.find=function(a,b){null==a&&"bookmark"==this.type&&(a=1);for(var c,d,e=0;ethis.size-b&&(1=this.children.length)){var a=this;do{var b=a.children.splice(a.children.length-5,5),b=new Cb(b);if(a.parent){a.size-=b.size;a.height-=b.height;var c=D(a.parent.children,a);a.parent.children.splice(c+1,0,b)}else c=new Cb(a.children), +c.parent=a,a.children=[c,b],a=c;b.parent=a.parent}while(10y(h.head,h.anchor),f[e]=new z(h?k:g,h?g:k)):f[e]=new z(g,g)}f=new la(f,this.sel.primIndex)}b=f;for(f=d.length-1;0<=f;f--)Oa(this,d[f]);b?be(this,b):this.cm&&Pa(this.cm)}),undo:N(function(){kc(this,"undo")}),redo:N(function(){kc(this,"redo")}),undoSelection:N(function(){kc(this,"undo",!0)}),redoSelection:N(function(){kc(this,"redo",!0)}),setExtending:function(a){this.extend=a},getExtending:function(){return this.extend},historySize:function(){for(var a= +this.history,b=0,c=0,d=0;d=a.ch)&&b.push(e.marker.parent||e.marker)}return b},findMarks:function(a,b,c){a=w(this,a); +b=w(this,b);var d=[],e=a.line;this.iter(a.line,b.line+1,function(f){if(f=f.markedSpans)for(var g=0;gh.to||null==h.from&&e!=a.line||e==b.line&&h.from>b.ch||c&&!c(h.marker)||d.push(h.marker.parent||h.marker)}++e});return d},getAllMarks:function(){var a=[];this.iter(function(b){if(b=b.markedSpans)for(var c=0;c +a)return b=a,!0;a-=d;++c});return w(this,r(c,b))},indexFromPos:function(a){a=w(this,a);var b=a.ch;if(a.linea.ch)return 0;this.iter(this.first,a.line,function(a){b+=a.text.length+1});return b},copy:function(a){var b=new P(xd(this,this.first,this.first+this.size),this.modeOption,this.first);b.scrollTop=this.scrollTop;b.scrollLeft=this.scrollLeft;b.sel=this.sel;b.extend=!1;a&&(b.history.undoDepth=this.history.undoDepth,b.setHistory(this.getHistory()));return b},linkedDoc:function(a){a|| +(a={});var b=this.first,c=this.first+this.size;null!=a.from&&a.from>b&&(b=a.from);null!=a.to&&a.toD(pg,Jb)&&(q.prototype[Jb]=function(a){return function(){return a.apply(this.doc,arguments)}}(P.prototype[Jb]));Ya(P);var O=q.e_preventDefault=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1},qg=q.e_stopPropagation=function(a){a.stopPropagation?a.stopPropagation():a.cancelBubble=!0},jd=q.e_stop=function(a){O(a);qg(a)},v=q.on=function(a,b,c){a.addEventListener? +a.addEventListener(b,c,!1):a.attachEvent?a.attachEvent("on"+b,c):(a=a._handlers||(a._handlers={}),(a[b]||(a[b]=[])).push(c))},ka=q.off=function(a,b,c){if(a.removeEventListener)a.removeEventListener(b,c,!1);else if(a.detachEvent)a.detachEvent("on"+b,c);else if(a=a._handlers&&a._handlers[b])for(b=0;bf||f>=b)return e+(b-d);e+=f-d;e+=c-e%c;d=f+1}},vc=[""],Za=function(a){a.select()};Qa?Za=function(a){a.selectionStart=0;a.selectionEnd=a.value.length}:B&& +(Za=function(a){try{a.select()}catch(b){}});var rg=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,gf=q.isWordChar=function(a){return/\w/.test(a)||"€"C&&(fa=function(){try{return document.activeElement}catch(a){return document.body}}); +var kb=q.rmClass=function(a,b){var c=a.className,d=Fb(b).exec(c);if(d){var e=c.slice(d.index+d[0].length);a.className=c.slice(0,d.index)+(e?d[1]+e:"")}},mb=q.addClass=function(a,b){var c=a.className;Fb(b).test(c)||(a.className+=(c?" ":"")+b)},Dd=!1,Lf=function(){if(B&&9>C)return!1;var a=t("div");return"draggable"in a||"dragDrop"in a}(),yd,vd,sa=q.splitLines=3!="\n\nb".split(/\n/).length?function(a){for(var b=0,c=[],d=a.length;b<=d;){var e=a.indexOf("\n",b);-1==e&&(e=a.length);var f=a.slice(b,"\r"== +a.charAt(e-1)?e-1:e),g=f.indexOf("\r");-1!=g?(c.push(f.slice(0,g)),b+=g+1):(c.push(f),b=e+1)}return c}:function(a){return a.split(/\r\n?|\n/)},ng=window.getSelection?function(a){try{return a.selectionStart!=a.selectionEnd}catch(b){return!1}}:function(a){try{var b=a.ownerDocument.selection.createRange()}catch(c){}return b&&b.parentElement()==a?0!=b.compareEndPoints("StartToEnd",b):!1},Ce=function(){var a=t("div");if("oncopy"in a)return!0;a.setAttribute("oncopy","return;");return"function"==typeof a.oncopy}(), +bd=null,va={3:"Enter",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"\x3d",91:"Mod",92:"Mod",93:"Mod",107:"\x3d",109:"-",127:"Delete",173:"-",186:";",187:"\x3d",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home", +63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"};q.keyNames=va;(function(){for(var a=0;10>a;a++)va[a+48]=va[a+96]=String(a);for(a=65;90>=a;a++)va[a]=String.fromCharCode(a);for(a=1;12>=a;a++)va[a+111]=va[a+63235]="F"+a})();var vb,gg=function(){function a(a){return 247>=a?"bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN".charAt(a): +1424<=a&&1524>=a?"R":1536<=a&&1773>=a?"rrrrrrrrrrrr,rNNmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmrrrrrrrnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmNmmmm".charAt(a-1536):1774<=a&&2220>=a?"r":8192<=a&&8203>=a?"w":8204==a?"b":"L"}function b(a,b,c){this.level=a;this.from=b;this.to=c}var c=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,d=/[stwN]/,e=/[LRr]/,f=/[Lb1n]/,g=/[1n]/;return function(h){if(!c.test(h))return!1; +for(var k=h.length,l=[],m=0,p;me)){for(var d=0,b=!1,e=e-1;0<=e;--e){var f=a.string.charAt(e),g="([{}])".indexOf(f);if(0<=g&&3>g){if(!d){++e;break}if(0==--d)break}else if(3<=g&&6>g)++d;else if(R.test(f))b=!0;else{if(/["'\/]/.test(f))return;if(b&&!d){++e;break}}}b&&!d&&(c.fatArrowAt=e)}}function ca(a,c,b,d,f,h){this.indented=a;this.column=c;this.type=b;this.prev=f;this.info=h;null!=d&&(this.align=d)}function g(){for(var a=arguments.length-1;0<=a;a--)f.cc.push(arguments[a])} +function b(){g.apply(null,arguments);return!0}function x(a){function c(c){for(;c;c=c.next)if(c.name==a)return!0;return!1}var b=f.state;b.context?(f.marked="def",c(b.localVars)||(b.localVars={name:a,next:b.localVars})):!c(b.globalVars)&&t.globalVars&&(b.globalVars={name:a,next:b.globalVars})}function y(){f.state.context={prev:f.state.context,vars:f.state.localVars};f.state.localVars=ra}function z(){f.state.localVars=f.state.context.vars;f.state.context=f.state.context.prev}function l(a,c){var b=function(){var b= +f.state,e=b.indented;if("stat"==b.lexical.type)e=b.lexical.indented;else for(var h=b.lexical;h&&")"==h.type&&h.align;h=h.prev)e=h.indented;b.lexical=new ca(e,f.stream.column(),a,null,b.lexical,c)};b.lex=!0;return b}function k(){var a=f.state;a.lexical.prev&&(")"==a.lexical.type&&(a.indented=a.lexical.indented),a.lexical=a.lexical.prev)}function m(a){function c(e){return e==a?b():";"==a?g():b(c)}return c}function r(a,c){return"var"==a?b(l("vardef",c.length),T,m(";"),k):"keyword a"==a?b(l("form"),n, +r,k):"keyword b"==a?b(l("form"),r,k):"{"==a?b(l("}"),U,k):";"==a?b():"if"==a?("else"==f.state.lexical.info&&f.state.cc[f.state.cc.length-1]==k&&f.state.cc.pop()(),b(l("form"),n,r,k,da)):"function"==a?b(v):"for"==a?b(l("form"),ea,r,k):"variable"==a?b(l("stat"),sa):"switch"==a?b(l("form"),n,l("}","switch"),m("{"),U,k,k):"case"==a?b(n,m(":")):"default"==a?b(m(":")):"catch"==a?b(l("form"),y,m("("),V,m(")"),r,k,z):"module"==a?b(l("form"),y,ta,z,k):"class"==a?b(l("form"),ua,k):"export"==a?b(l("form"),va, +k):"import"==a?b(l("form"),wa,k):g(l("stat"),n,m(";"),k)}function n(a){return fa(a,!1)}function u(a){return fa(a,!0)}function fa(a,c){if(f.state.fatArrowAt==f.stream.start){var e=c?ga:ha;if("("==a)return b(y,l(")"),F(A,")"),k,m("\x3d\x3e"),e,z);if("variable"==a)return g(y,A,m("\x3d\x3e"),e,z)}e=c?W:M;return xa.hasOwnProperty(a)?b(e):"function"==a?b(v,e):"keyword c"==a?b(c?ia:X):"("==a?b(l(")"),X,N,m(")"),k,e):"operator"==a||"spread"==a?b(c?u:n):"["==a?b(l("]"),ya,k,e):"{"==a?G(za,"}",null,e):"quasi"== +a?g(O,e):b()}function X(a){return a.match(/[;\}\)\],]/)?g():g(n)}function ia(a){return a.match(/[;\}\)\],]/)?g():g(u)}function M(a,c){return","==a?b(n):W(a,c,!1)}function W(a,c,e){var d=0==e?M:W,f=0==e?n:u;if("\x3d\x3e"==a)return b(y,e?ga:ha,z);if("operator"==a)return/\+\+|--/.test(c)?b(d):"?"==c?b(n,m(":"),f):b(f);if("quasi"==a)return g(O,d);if(";"!=a){if("("==a)return G(u,")","call",d);if("."==a)return b(Aa,d);if("["==a)return b(l("]"),X,m("]"),k,d)}}function O(a,c){return"quasi"!=a?g():"${"!=c.slice(c.length- +2)?b(O):b(n,Ba)}function Ba(a){if("}"==a)return f.marked="string-2",f.state.tokenize=Q,b(O)}function ha(a){S(f.stream,f.state);return g("{"==a?r:n)}function ga(a){S(f.stream,f.state);return g("{"==a?r:u)}function sa(a){return":"==a?b(k,r):g(M,m(";"),k)}function Aa(a){if("variable"==a)return f.marked="property",b()}function za(a,c){if("variable"==a||"keyword"==f.style)return f.marked="property","get"==c||"set"==c?b(Ca):b(H);if("number"==a||"string"==a)return f.marked=L?"property":f.style+" property", +b(H);if("jsonld-keyword"==a)return b(H);if("["==a)return b(n,m("]"),H)}function Ca(a){if("variable"!=a)return g(H);f.marked="property";return b(v)}function H(a){if(":"==a)return b(u);if("("==a)return g(v)}function F(a,c){function e(d){return","==d?(d=f.state.lexical,"call"==d.info&&(d.pos=(d.pos||0)+1),b(a,e)):d==c?b():b(m(c))}return function(d){return d==c?b():g(a,e)}}function G(a,c,e){for(var d=3;d!?|~^]/,qa=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/,E,I,xa={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,"this":!0,"jsonld-keyword":!0},f={state:null,column:null,marked:null,cc:null},ra={name:"this", +next:{name:"arguments"}};k.lex=!0;return{startState:function(a){a={tokenize:w,lastType:"sof",cc:[],lexical:new ca((a||0)-C,0,"block",!1),localVars:t.localVars,context:t.localVars&&{vars:t.localVars},indented:0};t.globalVars&&"object"==typeof t.globalVars&&(a.globalVars=t.globalVars);return a},token:function(a,b){a.sol()&&(b.lexical.hasOwnProperty("align")||(b.lexical.align=!1),b.indented=a.indentation(),S(a,b));if(b.tokenize!=J&&a.eatSpace())return null;var e=b.tokenize(a,b);if("comment"==E)return e; +b.lastType="operator"!=E||"++"!=I&&"--"!=I?E:"incdec";a:{var d=E,g=I,h=b.cc;f.state=b;f.stream=a;f.marked=null;f.cc=h;f.style=e;b.lexical.hasOwnProperty("align")||(b.lexical.align=!0);for(;;)if((h.length?h.pop():D?n:r)(d,g)){for(;h.length&&h[h.length-1].lex;)h.pop()();if(f.marked){e=f.marked;break a}if(d="variable"==d)b:{for(d=b.localVars;d;d=d.next)if(d.name==g){d=!0;break b}for(h=b.context;h;h=h.prev)for(d=h.vars;d;d=d.next)if(d.name==g){d=!0;break b}d=void 0}if(d){e="variable-2";break a}break a}}return e}, +indent:function(a,b){if(a.tokenize==J)return p.Pass;if(a.tokenize!=w)return 0;var e=b&&b.charAt(0),d=a.lexical;if(!/^\s*else\b/.test(b))for(var f=a.cc.length-1;0<=f;--f){var g=a.cc[f];if(g==k)d=d.prev;else if(g!=da)break}"stat"==d.type&&"}"==e&&(d=d.prev);na&&")"==d.type&&"stat"==d.prev.type&&(d=d.prev);f=d.type;g=e==f;return"vardef"==f?d.indented+("operator"==a.lastType||","==a.lastType?d.info+1:0):"form"==f&&"{"==e?d.indented:"form"==f?d.indented+C:"stat"==f?(e=d.indented,d="operator"==a.lastType|| +","==a.lastType||K.test(b.charAt(0))||/[,.]/.test(b.charAt(0)),e+(d?na||C:0)):"switch"!=d.info||g||0==t.doubleIndentSwitch?d.align?d.column+(g?0:1):d.indented+(g?0:C):d.indented+(/^(?:case|default)\b/.test(b)?C:2*C)},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:D?null:"/*",blockCommentEnd:D?null:"*/",lineComment:D?null:"//",fold:"brace",closeBrackets:"()[]{}''\"\"``",helperType:D?"json":"javascript",jsonldMode:L,jsonMode:D}});p.registerHelper("wordChars","javascript",/[\w$]/); +p.defineMIME("text/javascript","javascript");p.defineMIME("text/ecmascript","javascript");p.defineMIME("application/javascript","javascript");p.defineMIME("application/x-javascript","javascript");p.defineMIME("application/ecmascript","javascript");p.defineMIME("application/json",{name:"javascript",json:!0});p.defineMIME("application/x-json",{name:"javascript",json:!0});p.defineMIME("application/ld+json",{name:"javascript",jsonld:!0});p.defineMIME("text/typescript",{name:"javascript",typescript:!0}); +p.defineMIME("application/typescript",{name:"javascript",typescript:!0})}); \ No newline at end of file diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css b/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css new file mode 100644 index 0000000..d019aab --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css @@ -0,0 +1,36 @@ +/* neo theme for codemirror */ + +/* Color scheme */ + +.cm-s-neo.CodeMirror { + background-color:#ffffff; + color:#2e383c; + line-height:1.4375; +} +.cm-s-neo .cm-comment {color:#75787b} +.cm-s-neo .cm-keyword, .cm-s-neo .cm-property {color:#1d75b3} +.cm-s-neo .cm-atom,.cm-s-neo .cm-number {color:#75438a} +.cm-s-neo .cm-node,.cm-s-neo .cm-tag {color:#9c3328} +.cm-s-neo .cm-string {color:#b35e14} +.cm-s-neo .cm-variable,.cm-s-neo .cm-qualifier {color:#047d65} + + +/* Editor styling */ + +.cm-s-neo pre { + padding:0; +} + +.cm-s-neo .CodeMirror-gutters { + border:none; + border-right:10px solid transparent; + background-color:transparent; +} + +.cm-s-neo .CodeMirror-linenumber { + padding:0; + color:#e0e2e5; +} + +.cm-s-neo .CodeMirror-guttermarker { color: #1d75b3; } +.cm-s-neo .CodeMirror-guttermarker-subtle { color: #e0e2e5; } diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css b/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css new file mode 100644 index 0000000..924e638 --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css @@ -0,0 +1,38 @@ +.CodeMirror-hints { + position: absolute; + z-index: 10; + overflow: hidden; + list-style: none; + + margin: 0; + padding: 2px; + + -webkit-box-shadow: 2px 3px 5px rgba(0,0,0,.2); + -moz-box-shadow: 2px 3px 5px rgba(0,0,0,.2); + box-shadow: 2px 3px 5px rgba(0,0,0,.2); + border-radius: 3px; + border: 1px solid silver; + + background: white; + font-size: 90%; + font-family: monospace; + + max-height: 20em; + overflow-y: auto; +} + +.CodeMirror-hint { + margin: 0; + padding: 0 4px; + border-radius: 2px; + max-width: 19em; + overflow: hidden; + white-space: pre; + color: black; + cursor: pointer; +} + +li.CodeMirror-hint-active { + background: #08f; + color: white; +} diff --git a/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js b/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js new file mode 100644 index 0000000..072359c --- /dev/null +++ b/admin/assets/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js @@ -0,0 +1,16 @@ +(function(f){"object"==typeof exports&&"object"==typeof module?f(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],f):f(CodeMirror)})(function(f){function p(a,b){this.cm=a;this.options=this.buildOptions(b);this.widget=null;this.tick=this.debounce=0;this.startPos=this.cm.getCursor();this.startLen=this.cm.getLine(this.startPos.line).length;var c=this;a.on("cursorActivity",this.activityFunc=function(){c.cursorActivity()})}function w(a,b){function c(a, +c){var d;d="string"!=typeof c?function(a){return c(a,b)}:e.hasOwnProperty(c)?e[c]:c;f[a]=d}var e={Up:function(){b.moveFocus(-1)},Down:function(){b.moveFocus(1)},PageUp:function(){b.moveFocus(-b.menuSize()+1,!0)},PageDown:function(){b.moveFocus(b.menuSize()-1,!0)},Home:function(){b.setFocus(0)},End:function(){b.setFocus(b.length-1)},Enter:b.pick,Tab:b.pick,Esc:b.close},d=a.options.customKeys,f=d?{}:e;if(d)for(var g in d)d.hasOwnProperty(g)&&c(g,d[g]);if(d=a.options.extraKeys)for(g in d)d.hasOwnProperty(g)&& +c(g,d[g]);return f}function v(a,b){for(;b&&b!=a;){if("LI"===b.nodeName.toUpperCase()&&b.parentNode==a)return b;b=b.parentNode}}function n(a,b){this.completion=a;this.data=b;this.picked=!1;var c=this,e=a.cm,d=this.hints=document.createElement("ul");d.className="CodeMirror-hints";this.selectedHint=b.selectedHint||0;for(var m=b.list,g=0;gk&&(d.style.height=k-5+"px",d.style.top=(t=g.bottom-h.top)+"px",k=e.getCursor(),b.from.ch!=k.ch&&(g=e.cursorCoords(k),d.style.left=(r=g.left)+"px",h=d.getBoundingClientRect()))}k=h.right-l;0l&&(d.style.width=l-5+"px",k-=h.right-h.left-l),d.style.left=(r=g.left-k)+"px");e.addKeyMap(this.keyMap=w(a,{moveFocus:function(a,b){c.changeActive(c.selectedHint+ +a,b)},setFocus:function(a){c.changeActive(a)},menuSize:function(){return c.screenAmount()},length:m.length,close:function(){a.close()},pick:function(){c.pick()},data:b}));if(a.options.closeOnUnfocus){var p;e.on("blur",this.onBlur=function(){p=setTimeout(function(){a.close()},100)});e.on("focus",this.onFocus=function(){clearTimeout(p)})}var q=e.getScrollInfo();e.on("scroll",this.onScroll=function(){var c=e.getScrollInfo(),b=e.getWrapperElement().getBoundingClientRect(),f=t+q.top-c.top,g=f-(window.pageYOffset|| +(document.documentElement||document.body).scrollTop);n||(g+=d.offsetHeight);if(g<=b.top||g>=b.bottom)return a.close();d.style.top=f+"px";d.style.left=r+q.left-c.left+"px"});f.on(d,"dblclick",function(a){(a=v(d,a.target||a.srcElement))&&null!=a.hintId&&(c.changeActive(a.hintId),c.pick())});f.on(d,"click",function(b){(b=v(d,b.target||b.srcElement))&&null!=b.hintId&&(c.changeActive(b.hintId),a.options.completeOnSingleClick&&c.pick())});f.on(d,"mousedown",function(){setTimeout(function(){e.focus()},20)}); +f.signal(b,"select",m[0],d.firstChild);return!0}f.showHint=function(a,b,c){if(!b)return a.showHint(c);c&&c.async&&(b.async=!0);b={hint:b};if(c)for(var e in c)b[e]=c[e];return a.showHint(b)};f.defineExtension("showHint",function(a){1=this.data.list.length?a=b?this.data.list.length-1:0:0>a&&(a=b?0:this.data.list.length-1); +if(this.selectedHint!=a){var c=this.hints.childNodes[this.selectedHint];c.className=c.className.replace(" CodeMirror-hint-active","");c=this.hints.childNodes[this.selectedHint=a];c.className+=" CodeMirror-hint-active";c.offsetTopthis.hints.scrollTop+this.hints.clientHeight&&(this.hints.scrollTop=c.offsetTop+c.offsetHeight-this.hints.clientHeight+3);f.signal(this.data,"select",this.data.list[this.selectedHint],c)}}, +screenAmount:function(){return Math.floor(this.hints.clientHeight/this.hints.firstChild.offsetHeight)||1}};f.registerHelper("hint","auto",function(a,b){var c=a.getHelpers(a.getCursor(),"hint");if(c.length)for(var e=0;e,]/,closeOnUnfocus:!0,completeOnSingleClick:!1,container:null,customKeys:null,extraKeys:null};f.defineOption("hintOptions",null)}); \ No newline at end of file diff --git a/admin/assets/ckeditor/skins/moono-lisa/dialog.css b/admin/assets/ckeditor/skins/moono-lisa/dialog.css new file mode 100644 index 0000000..aef0323 --- /dev/null +++ b/admin/assets/ckeditor/skins/moono-lisa/dialog.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#fff}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:12px;cursor:move;position:relative;color:#484848;border-bottom:1px solid #d1d1d1;padding:12px 19px 12px 12px;background:#f8f8f8;letter-spacing:.3px}.cke_dialog_spinner{border-radius:50%;width:12px;height:12px;overflow:hidden;text-indent:-9999em;border:2px solid rgba(102,102,102,0.2);border-left-color:rgba(102,102,102,1);-webkit-animation:dialog_spinner 1s infinite linear;animation:dialog_spinner 1s infinite linear}.cke_browser_ie8 .cke_dialog_spinner,.cke_browser_ie9 .cke_dialog_spinner{background:url(images/spinner.gif) center top no-repeat;width:16px;height:16px;border:0}@-webkit-keyframes dialog_spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes dialog_spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:43px;border-top:1px solid #d1d1d1}.cke_dialog_contents_body{overflow:auto;padding:9px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border-top:1px solid #d1d1d1;background:#f8f8f8}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:33px;display:inline-block;margin:9px 0 0;position:absolute;z-index:2;left:11px}.cke_rtl .cke_dialog_tabs{left:auto;right:11px}a.cke_dialog_tab{height:25px;padding:4px 8px;display:inline-block;cursor:pointer;line-height:26px;outline:0;color:#484848;border:1px solid #d1d1d1;border-radius:3px 3px 0 0;background:#f8f8f8;min-width:90px;text-align:center;margin-left:-1px;letter-spacing:.3px}a.cke_dialog_tab:hover{background-color:#fff}a.cke_dialog_tab:focus{border:2px solid #139ff7;border-bottom-color:#d1d1d1;padding:3px 7px;position:relative;z-index:1}a.cke_dialog_tab_selected{background:#fff;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover,a.cke_dialog_tab_selected:focus{border-bottom-color:#fff}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab:focus,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}a.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:16px;width:16px;top:11px;z-index:5;opacity:.7;filter:alpha(opacity = 70)}.cke_rtl .cke_dialog_close_button{left:12px}.cke_ltr .cke_dialog_close_button{right:12px}.cke_hc a.cke_dialog_close_button{background-image:none}.cke_hidpi a.cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}a.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}a.cke_dialog_close_button span{display:none}.cke_hc a.cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%;margin-top:12px}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_tel,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,input.cke_dialog_ui_input_tel,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #bcbcbc;padding:4px 6px;outline:0;width:100%;*width:95%;box-sizing:border-box;border-radius:2px;min-height:28px;margin-left:1px}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,input.cke_dialog_ui_input_tel:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,input.cke_dialog_ui_input_tel:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:2px solid #139ff7}input.cke_dialog_ui_input_text:focus{padding-left:5px}textarea.cke_dialog_ui_input_textarea:focus{padding:3px 5px}select.cke_dialog_ui_input_select:focus{margin:0;width:100%!important}input.cke_dialog_ui_checkbox_input,input.cke_dialog_ui_radio_input{margin-left:1px;margin-right:2px}input.cke_dialog_ui_checkbox_input:focus,input.cke_dialog_ui_checkbox_input:active,input.cke_dialog_ui_radio_input:focus,input.cke_dialog_ui_radio_input:active{border:0;outline:2px solid #139ff7}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 1px;margin:0;text-align:center;color:#484848;vertical-align:middle;cursor:pointer;border:1px solid #bcbcbc;border-radius:2px;background:#f8f8f8;letter-spacing:.3px;line-height:18px;box-sizing:border-box}.cke_hc a.cke_dialog_ui_button{border-width:3px}span.cke_dialog_ui_button{padding:0 10px;cursor:pointer}a.cke_dialog_ui_button:hover{background:#fff}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border:2px solid #139ff7;outline:0;padding:3px 0}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;background:#09863e;border:1px solid #09863e}.cke_hc a.cke_dialog_ui_button{border:3px solid #bcbcbc}a.cke_dialog_ui_button_ok:hover{background:#53aa78;border-color:#53aa78}a.cke_dialog_ui_button_ok:focus{box-shadow:inset 0 0 0 2px #FFF}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#139ff7}.cke_hc a.cke_dialog_ui_button_ok:hover,.cke_hc a.cke_dialog_ui_button_ok:focus,.cke_hc a.cke_dialog_ui_button_ok:active{border-color:#484848}a.cke_dialog_ui_button_ok.cke_disabled{background:#d1d1d1;border-color:#d1d1d1;cursor:default}a.cke_dialog_ui_button_ok.cke_disabled span{cursor:default}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:28px;line-height:28px;background-color:#fff;border:1px solid #bcbcbc;padding:3px 3px 3px 6px;outline:0;border-radius:2px;margin:0 1px;box-sizing:border-box;width:calc(100% - 2px)!important}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog_ui_labeled_label{margin-left:1px}.cke_dialog .cke_dark_background{background-color:transparent}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked,.cke_dialog a.cke_btn_reset{margin:2px}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_dialog a.cke_btn_over,.cke_dialog a.cke_btn_locked:hover,.cke_dialog a.cke_btn_locked:focus,.cke_dialog a.cke_btn_locked:active,.cke_dialog a.cke_btn_unlocked:hover,.cke_dialog a.cke_btn_unlocked:focus,.cke_dialog a.cke_btn_unlocked:active,.cke_dialog a.cke_btn_reset:hover,.cke_dialog a.cke_btn_reset:focus,.cke_dialog a.cke_btn_reset:active{cursor:pointer;outline:0;margin:0;border:2px solid #139ff7}.cke_dialog fieldset{border:1px solid #bcbcbc}.cke_dialog fieldset legend{padding:0 6px}.cke_dialog_ui_checkbox,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox{display:inline-block}.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox{padding-top:5px}.cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input,.cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input+label,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input+label{vertical-align:middle}.cke_dialog .ImagePreviewBox{border:1px ridge #bcbcbc;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:1px solid #bcbcbc;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;cursor:default;letter-spacing:.3px}.cke_dialog_body label+.cke_dialog_ui_labeled_content{margin-top:2px}.cke_dialog_contents_body .cke_dialog_ui_text,.cke_dialog_contents_body .cke_dialog_ui_select,.cke_dialog_contents_body .cke_dialog_ui_hbox_last>a.cke_dialog_ui_button{margin-top:4px}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:2px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_dialog_contents_body .cke_accessibility_legend{margin:2px 7px 2px 2px}.cke_dialog_contents_body .cke_accessibility_legend:focus,.cke_dialog_contents_body .cke_accessibility_legend:active{outline:0;border:2px solid #139ff7;margin:0 5px 0 0}.cke_dialog_contents_body input[type=file]:focus,.cke_dialog_contents_body input[type=file]:active{border:2px solid #139ff7}.cke_dialog_find_fieldset{margin-top:10px!important}.cke_dialog_image_ratiolock{margin-top:52px!important}.cke_dialog_forms_select_order label.cke_dialog_ui_labeled_label{margin-left:0}.cke_dialog_forms_select_order div.cke_dialog_ui_input_select{width:100%}.cke_dialog_forms_select_order_txtsize .cke_dialog_ui_hbox_last{padding-top:4px}.cke_dialog_image_url .cke_dialog_ui_hbox_last,.cke_dialog_flash_url .cke_dialog_ui_hbox_last{vertical-align:bottom}a.cke_dialog_ui_button.cke_dialog_image_browse{margin-top:10px}.cke_dialog_contents_body .cke_tpl_list{border:#bcbcbc 1px solid;margin:1px}.cke_dialog_contents_body .cke_tpl_list:focus,.cke_dialog_contents_body .cke_tpl_list:active{outline:0;margin:0;border:2px solid #139ff7}.cke_dialog_contents_body .cke_tpl_list a:focus,.cke_dialog_contents_body .cke_tpl_list a:active{outline:0}.cke_dialog_contents_body .cke_tpl_list a:focus .cke_tpl_item,.cke_dialog_contents_body .cke_tpl_list a:active .cke_tpl_item{border:2px solid #139ff7;padding:6px} \ No newline at end of file diff --git a/admin/assets/ckeditor/skins/moono-lisa/dialog_ie.css b/admin/assets/ckeditor/skins/moono-lisa/dialog_ie.css new file mode 100644 index 0000000..50403e2 --- /dev/null +++ b/admin/assets/ckeditor/skins/moono-lisa/dialog_ie.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#fff}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:12px;cursor:move;position:relative;color:#484848;border-bottom:1px solid #d1d1d1;padding:12px 19px 12px 12px;background:#f8f8f8;letter-spacing:.3px}.cke_dialog_spinner{border-radius:50%;width:12px;height:12px;overflow:hidden;text-indent:-9999em;border:2px solid rgba(102,102,102,0.2);border-left-color:rgba(102,102,102,1);-webkit-animation:dialog_spinner 1s infinite linear;animation:dialog_spinner 1s infinite linear}.cke_browser_ie8 .cke_dialog_spinner,.cke_browser_ie9 .cke_dialog_spinner{background:url(images/spinner.gif) center top no-repeat;width:16px;height:16px;border:0}@-webkit-keyframes dialog_spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes dialog_spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:43px;border-top:1px solid #d1d1d1}.cke_dialog_contents_body{overflow:auto;padding:9px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border-top:1px solid #d1d1d1;background:#f8f8f8}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:33px;display:inline-block;margin:9px 0 0;position:absolute;z-index:2;left:11px}.cke_rtl .cke_dialog_tabs{left:auto;right:11px}a.cke_dialog_tab{height:25px;padding:4px 8px;display:inline-block;cursor:pointer;line-height:26px;outline:0;color:#484848;border:1px solid #d1d1d1;border-radius:3px 3px 0 0;background:#f8f8f8;min-width:90px;text-align:center;margin-left:-1px;letter-spacing:.3px}a.cke_dialog_tab:hover{background-color:#fff}a.cke_dialog_tab:focus{border:2px solid #139ff7;border-bottom-color:#d1d1d1;padding:3px 7px;position:relative;z-index:1}a.cke_dialog_tab_selected{background:#fff;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover,a.cke_dialog_tab_selected:focus{border-bottom-color:#fff}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab:focus,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}a.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:16px;width:16px;top:11px;z-index:5;opacity:.7;filter:alpha(opacity = 70)}.cke_rtl .cke_dialog_close_button{left:12px}.cke_ltr .cke_dialog_close_button{right:12px}.cke_hc a.cke_dialog_close_button{background-image:none}.cke_hidpi a.cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}a.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}a.cke_dialog_close_button span{display:none}.cke_hc a.cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%;margin-top:12px}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_tel,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,input.cke_dialog_ui_input_tel,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #bcbcbc;padding:4px 6px;outline:0;width:100%;*width:95%;box-sizing:border-box;border-radius:2px;min-height:28px;margin-left:1px}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,input.cke_dialog_ui_input_tel:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,input.cke_dialog_ui_input_tel:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:2px solid #139ff7}input.cke_dialog_ui_input_text:focus{padding-left:5px}textarea.cke_dialog_ui_input_textarea:focus{padding:3px 5px}select.cke_dialog_ui_input_select:focus{margin:0;width:100%!important}input.cke_dialog_ui_checkbox_input,input.cke_dialog_ui_radio_input{margin-left:1px;margin-right:2px}input.cke_dialog_ui_checkbox_input:focus,input.cke_dialog_ui_checkbox_input:active,input.cke_dialog_ui_radio_input:focus,input.cke_dialog_ui_radio_input:active{border:0;outline:2px solid #139ff7}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 1px;margin:0;text-align:center;color:#484848;vertical-align:middle;cursor:pointer;border:1px solid #bcbcbc;border-radius:2px;background:#f8f8f8;letter-spacing:.3px;line-height:18px;box-sizing:border-box}.cke_hc a.cke_dialog_ui_button{border-width:3px}span.cke_dialog_ui_button{padding:0 10px;cursor:pointer}a.cke_dialog_ui_button:hover{background:#fff}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border:2px solid #139ff7;outline:0;padding:3px 0}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;background:#09863e;border:1px solid #09863e}.cke_hc a.cke_dialog_ui_button{border:3px solid #bcbcbc}a.cke_dialog_ui_button_ok:hover{background:#53aa78;border-color:#53aa78}a.cke_dialog_ui_button_ok:focus{box-shadow:inset 0 0 0 2px #FFF}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#139ff7}.cke_hc a.cke_dialog_ui_button_ok:hover,.cke_hc a.cke_dialog_ui_button_ok:focus,.cke_hc a.cke_dialog_ui_button_ok:active{border-color:#484848}a.cke_dialog_ui_button_ok.cke_disabled{background:#d1d1d1;border-color:#d1d1d1;cursor:default}a.cke_dialog_ui_button_ok.cke_disabled span{cursor:default}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:28px;line-height:28px;background-color:#fff;border:1px solid #bcbcbc;padding:3px 3px 3px 6px;outline:0;border-radius:2px;margin:0 1px;box-sizing:border-box;width:calc(100% - 2px)!important}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog_ui_labeled_label{margin-left:1px}.cke_dialog .cke_dark_background{background-color:transparent}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked,.cke_dialog a.cke_btn_reset{margin:2px}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_dialog a.cke_btn_over,.cke_dialog a.cke_btn_locked:hover,.cke_dialog a.cke_btn_locked:focus,.cke_dialog a.cke_btn_locked:active,.cke_dialog a.cke_btn_unlocked:hover,.cke_dialog a.cke_btn_unlocked:focus,.cke_dialog a.cke_btn_unlocked:active,.cke_dialog a.cke_btn_reset:hover,.cke_dialog a.cke_btn_reset:focus,.cke_dialog a.cke_btn_reset:active{cursor:pointer;outline:0;margin:0;border:2px solid #139ff7}.cke_dialog fieldset{border:1px solid #bcbcbc}.cke_dialog fieldset legend{padding:0 6px}.cke_dialog_ui_checkbox,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox{display:inline-block}.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox{padding-top:5px}.cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input,.cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input+label,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input+label{vertical-align:middle}.cke_dialog .ImagePreviewBox{border:1px ridge #bcbcbc;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:1px solid #bcbcbc;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;cursor:default;letter-spacing:.3px}.cke_dialog_body label+.cke_dialog_ui_labeled_content{margin-top:2px}.cke_dialog_contents_body .cke_dialog_ui_text,.cke_dialog_contents_body .cke_dialog_ui_select,.cke_dialog_contents_body .cke_dialog_ui_hbox_last>a.cke_dialog_ui_button{margin-top:4px}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:2px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_dialog_contents_body .cke_accessibility_legend{margin:2px 7px 2px 2px}.cke_dialog_contents_body .cke_accessibility_legend:focus,.cke_dialog_contents_body .cke_accessibility_legend:active{outline:0;border:2px solid #139ff7;margin:0 5px 0 0}.cke_dialog_contents_body input[type=file]:focus,.cke_dialog_contents_body input[type=file]:active{border:2px solid #139ff7}.cke_dialog_find_fieldset{margin-top:10px!important}.cke_dialog_image_ratiolock{margin-top:52px!important}.cke_dialog_forms_select_order label.cke_dialog_ui_labeled_label{margin-left:0}.cke_dialog_forms_select_order div.cke_dialog_ui_input_select{width:100%}.cke_dialog_forms_select_order_txtsize .cke_dialog_ui_hbox_last{padding-top:4px}.cke_dialog_image_url .cke_dialog_ui_hbox_last,.cke_dialog_flash_url .cke_dialog_ui_hbox_last{vertical-align:bottom}a.cke_dialog_ui_button.cke_dialog_image_browse{margin-top:10px}.cke_dialog_contents_body .cke_tpl_list{border:#bcbcbc 1px solid;margin:1px}.cke_dialog_contents_body .cke_tpl_list:focus,.cke_dialog_contents_body .cke_tpl_list:active{outline:0;margin:0;border:2px solid #139ff7}.cke_dialog_contents_body .cke_tpl_list a:focus,.cke_dialog_contents_body .cke_tpl_list a:active{outline:0}.cke_dialog_contents_body .cke_tpl_list a:focus .cke_tpl_item,.cke_dialog_contents_body .cke_tpl_list a:active .cke_tpl_item{border:2px solid #139ff7;padding:6px}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password,.cke_rtl input.cke_dialog_ui_input_tel{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password,.cke_rtl div.cke_dialog_ui_input_tel{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_tel,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0} \ No newline at end of file diff --git a/admin/assets/ckeditor/skins/moono-lisa/dialog_ie8.css b/admin/assets/ckeditor/skins/moono-lisa/dialog_ie8.css new file mode 100644 index 0000000..6b73dc5 --- /dev/null +++ b/admin/assets/ckeditor/skins/moono-lisa/dialog_ie8.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#fff}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:12px;cursor:move;position:relative;color:#484848;border-bottom:1px solid #d1d1d1;padding:12px 19px 12px 12px;background:#f8f8f8;letter-spacing:.3px}.cke_dialog_spinner{border-radius:50%;width:12px;height:12px;overflow:hidden;text-indent:-9999em;border:2px solid rgba(102,102,102,0.2);border-left-color:rgba(102,102,102,1);-webkit-animation:dialog_spinner 1s infinite linear;animation:dialog_spinner 1s infinite linear}.cke_browser_ie8 .cke_dialog_spinner,.cke_browser_ie9 .cke_dialog_spinner{background:url(images/spinner.gif) center top no-repeat;width:16px;height:16px;border:0}@-webkit-keyframes dialog_spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes dialog_spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:43px;border-top:1px solid #d1d1d1}.cke_dialog_contents_body{overflow:auto;padding:9px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border-top:1px solid #d1d1d1;background:#f8f8f8}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:33px;display:inline-block;margin:9px 0 0;position:absolute;z-index:2;left:11px}.cke_rtl .cke_dialog_tabs{left:auto;right:11px}a.cke_dialog_tab{height:25px;padding:4px 8px;display:inline-block;cursor:pointer;line-height:26px;outline:0;color:#484848;border:1px solid #d1d1d1;border-radius:3px 3px 0 0;background:#f8f8f8;min-width:90px;text-align:center;margin-left:-1px;letter-spacing:.3px}a.cke_dialog_tab:hover{background-color:#fff}a.cke_dialog_tab:focus{border:2px solid #139ff7;border-bottom-color:#d1d1d1;padding:3px 7px;position:relative;z-index:1}a.cke_dialog_tab_selected{background:#fff;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover,a.cke_dialog_tab_selected:focus{border-bottom-color:#fff}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab:focus,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}a.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:16px;width:16px;top:11px;z-index:5;opacity:.7;filter:alpha(opacity = 70)}.cke_rtl .cke_dialog_close_button{left:12px}.cke_ltr .cke_dialog_close_button{right:12px}.cke_hc a.cke_dialog_close_button{background-image:none}.cke_hidpi a.cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}a.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}a.cke_dialog_close_button span{display:none}.cke_hc a.cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%;margin-top:12px}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_tel,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,input.cke_dialog_ui_input_tel,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #bcbcbc;padding:4px 6px;outline:0;width:100%;*width:95%;box-sizing:border-box;border-radius:2px;min-height:28px;margin-left:1px}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,input.cke_dialog_ui_input_tel:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,input.cke_dialog_ui_input_tel:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:2px solid #139ff7}input.cke_dialog_ui_input_text:focus{padding-left:5px}textarea.cke_dialog_ui_input_textarea:focus{padding:3px 5px}select.cke_dialog_ui_input_select:focus{margin:0;width:100%!important}input.cke_dialog_ui_checkbox_input,input.cke_dialog_ui_radio_input{margin-left:1px;margin-right:2px}input.cke_dialog_ui_checkbox_input:focus,input.cke_dialog_ui_checkbox_input:active,input.cke_dialog_ui_radio_input:focus,input.cke_dialog_ui_radio_input:active{border:0;outline:2px solid #139ff7}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 1px;margin:0;text-align:center;color:#484848;vertical-align:middle;cursor:pointer;border:1px solid #bcbcbc;border-radius:2px;background:#f8f8f8;letter-spacing:.3px;line-height:18px;box-sizing:border-box}.cke_hc a.cke_dialog_ui_button{border-width:3px}span.cke_dialog_ui_button{padding:0 10px;cursor:pointer}a.cke_dialog_ui_button:hover{background:#fff}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border:2px solid #139ff7;outline:0;padding:3px 0}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;background:#09863e;border:1px solid #09863e}.cke_hc a.cke_dialog_ui_button{border:3px solid #bcbcbc}a.cke_dialog_ui_button_ok:hover{background:#53aa78;border-color:#53aa78}a.cke_dialog_ui_button_ok:focus{box-shadow:inset 0 0 0 2px #FFF}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#139ff7}.cke_hc a.cke_dialog_ui_button_ok:hover,.cke_hc a.cke_dialog_ui_button_ok:focus,.cke_hc a.cke_dialog_ui_button_ok:active{border-color:#484848}a.cke_dialog_ui_button_ok.cke_disabled{background:#d1d1d1;border-color:#d1d1d1;cursor:default}a.cke_dialog_ui_button_ok.cke_disabled span{cursor:default}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:28px;line-height:28px;background-color:#fff;border:1px solid #bcbcbc;padding:3px 3px 3px 6px;outline:0;border-radius:2px;margin:0 1px;box-sizing:border-box;width:calc(100% - 2px)!important}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog_ui_labeled_label{margin-left:1px}.cke_dialog .cke_dark_background{background-color:transparent}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked,.cke_dialog a.cke_btn_reset{margin:2px}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_dialog a.cke_btn_over,.cke_dialog a.cke_btn_locked:hover,.cke_dialog a.cke_btn_locked:focus,.cke_dialog a.cke_btn_locked:active,.cke_dialog a.cke_btn_unlocked:hover,.cke_dialog a.cke_btn_unlocked:focus,.cke_dialog a.cke_btn_unlocked:active,.cke_dialog a.cke_btn_reset:hover,.cke_dialog a.cke_btn_reset:focus,.cke_dialog a.cke_btn_reset:active{cursor:pointer;outline:0;margin:0;border:2px solid #139ff7}.cke_dialog fieldset{border:1px solid #bcbcbc}.cke_dialog fieldset legend{padding:0 6px}.cke_dialog_ui_checkbox,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox{display:inline-block}.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox{padding-top:5px}.cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input,.cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input+label,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input+label{vertical-align:middle}.cke_dialog .ImagePreviewBox{border:1px ridge #bcbcbc;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:1px solid #bcbcbc;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;cursor:default;letter-spacing:.3px}.cke_dialog_body label+.cke_dialog_ui_labeled_content{margin-top:2px}.cke_dialog_contents_body .cke_dialog_ui_text,.cke_dialog_contents_body .cke_dialog_ui_select,.cke_dialog_contents_body .cke_dialog_ui_hbox_last>a.cke_dialog_ui_button{margin-top:4px}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:2px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_dialog_contents_body .cke_accessibility_legend{margin:2px 7px 2px 2px}.cke_dialog_contents_body .cke_accessibility_legend:focus,.cke_dialog_contents_body .cke_accessibility_legend:active{outline:0;border:2px solid #139ff7;margin:0 5px 0 0}.cke_dialog_contents_body input[type=file]:focus,.cke_dialog_contents_body input[type=file]:active{border:2px solid #139ff7}.cke_dialog_find_fieldset{margin-top:10px!important}.cke_dialog_image_ratiolock{margin-top:52px!important}.cke_dialog_forms_select_order label.cke_dialog_ui_labeled_label{margin-left:0}.cke_dialog_forms_select_order div.cke_dialog_ui_input_select{width:100%}.cke_dialog_forms_select_order_txtsize .cke_dialog_ui_hbox_last{padding-top:4px}.cke_dialog_image_url .cke_dialog_ui_hbox_last,.cke_dialog_flash_url .cke_dialog_ui_hbox_last{vertical-align:bottom}a.cke_dialog_ui_button.cke_dialog_image_browse{margin-top:10px}.cke_dialog_contents_body .cke_tpl_list{border:#bcbcbc 1px solid;margin:1px}.cke_dialog_contents_body .cke_tpl_list:focus,.cke_dialog_contents_body .cke_tpl_list:active{outline:0;margin:0;border:2px solid #139ff7}.cke_dialog_contents_body .cke_tpl_list a:focus,.cke_dialog_contents_body .cke_tpl_list a:active{outline:0}.cke_dialog_contents_body .cke_tpl_list a:focus .cke_tpl_item,.cke_dialog_contents_body .cke_tpl_list a:active .cke_tpl_item{border:2px solid #139ff7;padding:6px}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password,.cke_rtl input.cke_dialog_ui_input_tel{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password,.cke_rtl div.cke_dialog_ui_input_tel{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_tel,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}a.cke_dialog_ui_button{min-height:18px}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,input.cke_dialog_ui_input_tel,textarea.cke_dialog_ui_input_textarea{min-height:18px}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,input.cke_dialog_ui_input_tel:focus,textarea.cke_dialog_ui_input_textarea:focus{padding-top:4px;padding-bottom:2px}select.cke_dialog_ui_input_select{width:100%!important}select.cke_dialog_ui_input_select:focus{margin-left:1px;width:100%!important;padding-top:2px;padding-bottom:2px} \ No newline at end of file diff --git a/admin/assets/ckeditor/skins/moono-lisa/dialog_iequirks.css b/admin/assets/ckeditor/skins/moono-lisa/dialog_iequirks.css new file mode 100644 index 0000000..2c2ed4c --- /dev/null +++ b/admin/assets/ckeditor/skins/moono-lisa/dialog_iequirks.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#fff}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:12px;cursor:move;position:relative;color:#484848;border-bottom:1px solid #d1d1d1;padding:12px 19px 12px 12px;background:#f8f8f8;letter-spacing:.3px}.cke_dialog_spinner{border-radius:50%;width:12px;height:12px;overflow:hidden;text-indent:-9999em;border:2px solid rgba(102,102,102,0.2);border-left-color:rgba(102,102,102,1);-webkit-animation:dialog_spinner 1s infinite linear;animation:dialog_spinner 1s infinite linear}.cke_browser_ie8 .cke_dialog_spinner,.cke_browser_ie9 .cke_dialog_spinner{background:url(images/spinner.gif) center top no-repeat;width:16px;height:16px;border:0}@-webkit-keyframes dialog_spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes dialog_spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:43px;border-top:1px solid #d1d1d1}.cke_dialog_contents_body{overflow:auto;padding:9px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border-top:1px solid #d1d1d1;background:#f8f8f8}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:33px;display:inline-block;margin:9px 0 0;position:absolute;z-index:2;left:11px}.cke_rtl .cke_dialog_tabs{left:auto;right:11px}a.cke_dialog_tab{height:25px;padding:4px 8px;display:inline-block;cursor:pointer;line-height:26px;outline:0;color:#484848;border:1px solid #d1d1d1;border-radius:3px 3px 0 0;background:#f8f8f8;min-width:90px;text-align:center;margin-left:-1px;letter-spacing:.3px}a.cke_dialog_tab:hover{background-color:#fff}a.cke_dialog_tab:focus{border:2px solid #139ff7;border-bottom-color:#d1d1d1;padding:3px 7px;position:relative;z-index:1}a.cke_dialog_tab_selected{background:#fff;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover,a.cke_dialog_tab_selected:focus{border-bottom-color:#fff}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab:focus,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}a.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:16px;width:16px;top:11px;z-index:5;opacity:.7;filter:alpha(opacity = 70)}.cke_rtl .cke_dialog_close_button{left:12px}.cke_ltr .cke_dialog_close_button{right:12px}.cke_hc a.cke_dialog_close_button{background-image:none}.cke_hidpi a.cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}a.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}a.cke_dialog_close_button span{display:none}.cke_hc a.cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%;margin-top:12px}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_tel,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,input.cke_dialog_ui_input_tel,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #bcbcbc;padding:4px 6px;outline:0;width:100%;*width:95%;box-sizing:border-box;border-radius:2px;min-height:28px;margin-left:1px}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,input.cke_dialog_ui_input_tel:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,input.cke_dialog_ui_input_tel:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:2px solid #139ff7}input.cke_dialog_ui_input_text:focus{padding-left:5px}textarea.cke_dialog_ui_input_textarea:focus{padding:3px 5px}select.cke_dialog_ui_input_select:focus{margin:0;width:100%!important}input.cke_dialog_ui_checkbox_input,input.cke_dialog_ui_radio_input{margin-left:1px;margin-right:2px}input.cke_dialog_ui_checkbox_input:focus,input.cke_dialog_ui_checkbox_input:active,input.cke_dialog_ui_radio_input:focus,input.cke_dialog_ui_radio_input:active{border:0;outline:2px solid #139ff7}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 1px;margin:0;text-align:center;color:#484848;vertical-align:middle;cursor:pointer;border:1px solid #bcbcbc;border-radius:2px;background:#f8f8f8;letter-spacing:.3px;line-height:18px;box-sizing:border-box}.cke_hc a.cke_dialog_ui_button{border-width:3px}span.cke_dialog_ui_button{padding:0 10px;cursor:pointer}a.cke_dialog_ui_button:hover{background:#fff}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border:2px solid #139ff7;outline:0;padding:3px 0}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;background:#09863e;border:1px solid #09863e}.cke_hc a.cke_dialog_ui_button{border:3px solid #bcbcbc}a.cke_dialog_ui_button_ok:hover{background:#53aa78;border-color:#53aa78}a.cke_dialog_ui_button_ok:focus{box-shadow:inset 0 0 0 2px #FFF}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#139ff7}.cke_hc a.cke_dialog_ui_button_ok:hover,.cke_hc a.cke_dialog_ui_button_ok:focus,.cke_hc a.cke_dialog_ui_button_ok:active{border-color:#484848}a.cke_dialog_ui_button_ok.cke_disabled{background:#d1d1d1;border-color:#d1d1d1;cursor:default}a.cke_dialog_ui_button_ok.cke_disabled span{cursor:default}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:28px;line-height:28px;background-color:#fff;border:1px solid #bcbcbc;padding:3px 3px 3px 6px;outline:0;border-radius:2px;margin:0 1px;box-sizing:border-box;width:calc(100% - 2px)!important}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog_ui_labeled_label{margin-left:1px}.cke_dialog .cke_dark_background{background-color:transparent}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked,.cke_dialog a.cke_btn_reset{margin:2px}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_dialog a.cke_btn_over,.cke_dialog a.cke_btn_locked:hover,.cke_dialog a.cke_btn_locked:focus,.cke_dialog a.cke_btn_locked:active,.cke_dialog a.cke_btn_unlocked:hover,.cke_dialog a.cke_btn_unlocked:focus,.cke_dialog a.cke_btn_unlocked:active,.cke_dialog a.cke_btn_reset:hover,.cke_dialog a.cke_btn_reset:focus,.cke_dialog a.cke_btn_reset:active{cursor:pointer;outline:0;margin:0;border:2px solid #139ff7}.cke_dialog fieldset{border:1px solid #bcbcbc}.cke_dialog fieldset legend{padding:0 6px}.cke_dialog_ui_checkbox,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox{display:inline-block}.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox{padding-top:5px}.cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input,.cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input+label,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input,.cke_dialog fieldset .cke_dialog_ui_vbox .cke_dialog_ui_checkbox .cke_dialog_ui_checkbox_input+label{vertical-align:middle}.cke_dialog .ImagePreviewBox{border:1px ridge #bcbcbc;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:1px solid #bcbcbc;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;cursor:default;letter-spacing:.3px}.cke_dialog_body label+.cke_dialog_ui_labeled_content{margin-top:2px}.cke_dialog_contents_body .cke_dialog_ui_text,.cke_dialog_contents_body .cke_dialog_ui_select,.cke_dialog_contents_body .cke_dialog_ui_hbox_last>a.cke_dialog_ui_button{margin-top:4px}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:2px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_dialog_contents_body .cke_accessibility_legend{margin:2px 7px 2px 2px}.cke_dialog_contents_body .cke_accessibility_legend:focus,.cke_dialog_contents_body .cke_accessibility_legend:active{outline:0;border:2px solid #139ff7;margin:0 5px 0 0}.cke_dialog_contents_body input[type=file]:focus,.cke_dialog_contents_body input[type=file]:active{border:2px solid #139ff7}.cke_dialog_find_fieldset{margin-top:10px!important}.cke_dialog_image_ratiolock{margin-top:52px!important}.cke_dialog_forms_select_order label.cke_dialog_ui_labeled_label{margin-left:0}.cke_dialog_forms_select_order div.cke_dialog_ui_input_select{width:100%}.cke_dialog_forms_select_order_txtsize .cke_dialog_ui_hbox_last{padding-top:4px}.cke_dialog_image_url .cke_dialog_ui_hbox_last,.cke_dialog_flash_url .cke_dialog_ui_hbox_last{vertical-align:bottom}a.cke_dialog_ui_button.cke_dialog_image_browse{margin-top:10px}.cke_dialog_contents_body .cke_tpl_list{border:#bcbcbc 1px solid;margin:1px}.cke_dialog_contents_body .cke_tpl_list:focus,.cke_dialog_contents_body .cke_tpl_list:active{outline:0;margin:0;border:2px solid #139ff7}.cke_dialog_contents_body .cke_tpl_list a:focus,.cke_dialog_contents_body .cke_tpl_list a:active{outline:0}.cke_dialog_contents_body .cke_tpl_list a:focus .cke_tpl_item,.cke_dialog_contents_body .cke_tpl_list a:active .cke_tpl_item{border:2px solid #139ff7;padding:6px}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password,.cke_rtl input.cke_dialog_ui_input_tel{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password,.cke_rtl div.cke_dialog_ui_input_tel{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_tel,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}.cke_dialog_footer{filter:""} \ No newline at end of file diff --git a/admin/assets/ckeditor/skins/moono-lisa/editor.css b/admin/assets/ckeditor/skins/moono-lisa/editor.css new file mode 100644 index 0000000..c836f73 --- /dev/null +++ b/admin/assets/ckeditor/skins/moono-lisa/editor.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;position:static;transition:none}.cke_reset_all,.cke_reset_all *,.cke_reset_all a,.cke_reset_all textarea{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;position:static;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre-wrap}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #d1d1d1;padding:0}.cke_inner{display:block;background:#fff;padding:0;-webkit-touch-callout:none}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #d1d1d1;background:#f8f8f8;padding:6px 8px 2px;white-space:normal}.cke_float .cke_top{border:1px solid #d1d1d1}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #d1d1d1;background:#f8f8f8}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #bcbcbc transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #bcbcbc;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #d1d1d1}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_block:focus{outline:0}.cke_panel_list{margin:0;padding:0;list-style-type:none;white-space:nowrap}.cke_panel_listItem{margin:0;padding:0}.cke_panel_listItem a{padding:6px 7px;display:block;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis}.cke_hc .cke_panel_listItem a{border-style:none}.cke_panel_listItem.cke_selected a,.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{background-color:#e9e9e9}.cke_panel_listItem a:focus{outline:1px dotted #000}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:4px 5px}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:6px 6px 7px 6px;color:#484848;border-bottom:1px solid #d1d1d1;background:#f8f8f8}.cke_colorblock{padding:10px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}a.cke_colorbox{padding:2px;float:left;width:20px;height:20px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{outline:0;padding:0;border:2px solid #139ff7}a:hover.cke_colorbox{border-color:#bcbcbc}span.cke_colorbox{width:20px;height:20px;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:3px;display:block;cursor:pointer}a.cke_colorauto{padding:0;border:1px solid transparent;margin-bottom:6px;height:26px;line-height:26px}a.cke_colormore{margin-top:10px;height:20px;line-height:19px}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{outline:0;border:#139ff7 1px solid;background-color:#f8f8f8}a:hover.cke_colorauto,a:hover.cke_colormore{border-color:#bcbcbc}.cke_colorauto span.cke_colorbox{width:18px;height:18px;border:1px solid #808080;margin-left:1px;margin-top:3px}.cke_rtl .cke_colorauto span.cke_colorbox{margin-left:0;margin-right:1px}span.cke_colorbox[style*="#ffffff"],span.cke_colorbox[style*="#FFFFFF"],span.cke_colorbox[style="background-color:#fff"],span.cke_colorbox[style="background-color:#FFF"],span.cke_colorbox[style*="rgb(255,255,255)"],span.cke_colorbox[style*="rgb(255, 255, 255)"]{border:1px solid #808080;width:18px;height:18px}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{border:0;float:left;margin:1px 2px 6px 0;padding-right:3px}.cke_rtl .cke_toolgroup{float:right;margin:1px 0 6px 2px;padding-left:3px;padding-right:0}.cke_hc .cke_toolgroup{margin-right:5px;margin-bottom:5px}.cke_hc.cke_rtl .cke_toolgroup{margin-right:0;margin-left:5px}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0;position:relative}a.cke_button_expandable{padding:4px 5px}.cke_rtl a.cke_button{float:right}.cke_hc a.cke_button{border:1px solid black;padding:3px 5px;margin:0 3px 5px 0}.cke_hc.cke_rtl a.cke_button{margin:0 0 5px 3px}a.cke_button_on{background:#fff;border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_on{padding:3px 4px}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active{background:#e5e5e5;border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_off:hover,a.cke_button_expandable.cke_button_off:focus,a.cke_button_expandable.cke_button_off:active{padding:3px 4px}.cke_hc a.cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active{background:#e5e5e5;border:3px solid #000;padding:1px 3px}a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{border:0;padding:4px 6px;background-color:transparent}a.cke_button_expandable.cke_button_disabled:hover,a.cke_button_expandable.cke_button_disabled:active{padding:4px 5px}a.cke_button_disabled:focus{border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_disabled:focus{padding:3px 4px}.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border:1px solid #acacac;padding:3px 5px;margin:0 3px 5px 0}.cke_hc a.cke_button_disabled:focus{border:3px solid #000;padding:1px 3px}.cke_hc.cke_rtl a.cke_button_disabled:hover,.cke_hc.cke_rtl a.cke_button_disabled:focus,.cke_hc.cke_rtl a.cke_button_disabled:active{margin:0 0 5px 3px}a.cke_button_disabled .cke_button_icon,a.cke_button_disabled .cke_button_arrow{opacity:.3}.cke_hc a.cke_button_disabled{border-color:#acacac}.cke_hc a.cke_button_disabled .cke_button_icon,.cke_hc a.cke_button_disabled .cke_button_label{opacity:.5}.cke_toolgroup a.cke_button:last-child:after,.cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:4px;top:0;right:-3px}.cke_rtl .cke_toolgroup a.cke_button:last-child:after,.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{border-right:0;right:auto;border-left:1px solid #bcbcbc;top:0;left:-3px}.cke_hc .cke_toolgroup a.cke_button:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_disabled:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{border-color:#000;top:0;right:-7px}.cke_hc.cke_rtl .cke_toolgroup a.cke_button:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{top:0;right:auto;left:-7px}.cke_toolgroup a.cke_button:hover:last-child:after,.cke_toolgroup a.cke_button:focus:last-child:after,.cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-1px;right:-4px}.cke_rtl .cke_toolgroup a.cke_button:hover:last-child:after,.cke_rtl .cke_toolgroup a.cke_button:focus:last-child:after,.cke_rtl .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-1px;right:auto;left:-4px}.cke_hc .cke_toolgroup a.cke_button:hover:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-2px;right:-9px}.cke_hc.cke_rtl .cke_toolgroup a.cke_button:hover:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-2px;right:auto;left:-9px}.cke_toolbar.cke_toolbar_last .cke_toolgroup a.cke_button:last-child:after{content:none;border:0;width:0;height:0}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#484848}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 3px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #484848}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px 0 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#bcbcbc;margin:4px 2px 0 2px;height:18px;width:1px}.cke_rtl .cke_toolbar_separator{float:right}.cke_hc .cke_toolbar_separator{background-color:#000;margin-left:2px;margin-right:5px;margin-bottom:9px}.cke_hc.cke_rtl .cke_toolbar_separator{margin-left:5px;margin-right:2px}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}a.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #bcbcbc}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser:hover{background:#e5e5e5}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border:3px solid transparent;border-bottom-color:#484848}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#484848}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0}.cke_menuitem span{cursor:default}.cke_menubutton{display:block}.cke_hc .cke_menubutton{padding:2px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#e9e9e9;display:block;outline:1px dotted}.cke_menubutton:hover{outline:0}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_disabled:hover,.cke_menubutton_disabled:focus,.cke_menubutton_disabled:active{background-color:transparent;outline:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#f8f8f8;padding:6px 4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#e9e9e9}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{background-color:#f8f8f8;outline:0}.cke_menuitem .cke_menubutton_on{background-color:#e9e9e9;border:1px solid #dedede;outline:0}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px;background-color:#e9e9e9}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_shortcut{color:#979797}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d1d1d1;height:1px}.cke_menuarrow{background:transparent url(images/arrow.png) no-repeat 0 10px;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_hc .cke_menuarrow{background-image:none}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left;position:relative;margin-bottom:5px}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:1px;margin-bottom:10px}.cke_combo:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:5px;top:0;right:0}.cke_rtl .cke_combo:after{border-right:0;border-left:1px solid #bcbcbc;right:auto;left:0}.cke_hc .cke_combo:after{border-color:#000}a.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0;padding:1px}.cke_rtl a.cke_combo_button{float:right}.cke_hc a.cke_combo_button{padding:4px}.cke_combo_on a.cke_combo_button,.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus,.cke_combo_off a.cke_combo_button:active{background:#e5e5e5;border:1px solid #bcbcbc;padding:0 0 0 1px;margin-left:-1px}.cke_combo_off a.cke_combo_button:focus{outline:0}.cke_combo_on a.cke_combo_button,.cke_combo_off a.cke_combo_button:active{background:#fff}.cke_rtl .cke_combo_on a.cke_combo_button,.cke_rtl .cke_combo_off a.cke_combo_button:hover,.cke_rtl .cke_combo_off a.cke_combo_button:focus,.cke_rtl .cke_combo_off a.cke_combo_button:active{padding:0 1px 0 0;margin-left:0;margin-right:-1px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border:3px solid #000;padding:1px 1px 1px 2px}.cke_hc.cke_rtl .cke_combo_on a.cke_combo_button,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:hover,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:focus,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:active{padding:1px 2px 1px 1px}.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0 0 0 3px;margin-left:-3px}.cke_rtl .cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0 3px 0 0;margin-left:0;margin-right:-3px}.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px 1px 1px 7px;margin-left:-6px}.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px 7px 1px 1px;margin-left:0;margin-right:-6px}.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0;margin:0}.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px;margin:0}.cke_toolbar .cke_combo+.cke_toolbar_end,.cke_toolbar .cke_combo+.cke_toolgroup{margin-right:0;margin-left:2px}.cke_rtl .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_rtl .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:0;margin-right:2px}.cke_hc .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_hc .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:5px}.cke_hc.cke_rtl .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_hc.cke_rtl .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:0;margin-right:5px}.cke_toolbar.cke_toolbar_last .cke_combo:nth-last-child(-n+2):after{content:none;border:0;width:0;height:0}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#484848;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 10px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #484848}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}a.cke_path_item,span.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#484848;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#e5e5e5}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combopanel__fontsize{width:135px}textarea.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre-wrap;border:0;padding:0;margin:0;display:block}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_notifications_area{pointer-events:none}.cke_notification{pointer-events:auto;position:relative;margin:10px;width:300px;color:white;text-align:center;opacity:.95;filter:alpha(opacity = 95);-webkit-animation:fadeIn .7s;animation:fadeIn .7s}.cke_notification_message a{color:#12306f}@-webkit-keyframes fadeIn{from{opacity:.4}to{opacity:.95}}@keyframes fadeIn{from{opacity:.4}to{opacity:.95}}.cke_notification_success{background:#72b572;border:1px solid #63a563}.cke_notification_warning{background:#c83939;border:1px solid #902b2b}.cke_notification_info{background:#2e9ad0;border:1px solid #0f74a8}.cke_notification_info span.cke_notification_progress{background-color:#0f74a8;display:block;padding:0;margin:0;height:100%;overflow:hidden;position:absolute;z-index:1}.cke_notification_message{position:relative;margin:4px 23px 3px;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:18px;z-index:4;text-overflow:ellipsis;overflow:hidden}.cke_notification_close{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:1px;right:1px;padding:0;margin:0;z-index:5;opacity:.6;filter:alpha(opacity = 60)}.cke_notification_close:hover{opacity:1;filter:alpha(opacity = 100)}.cke_notification_close span{display:none}.cke_notification_warning a.cke_notification_close{opacity:.8;filter:alpha(opacity = 80)}.cke_notification_warning a.cke_notification_close:hover{opacity:1;filter:alpha(opacity = 100)}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_button__about_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -144px !important;}.cke_button__blockquote_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -168px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -192px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -216px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -240px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -264px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -288px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -312px !important;}.cke_button__horizontalrule_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -336px !important;}.cke_button__image_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -360px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -384px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -408px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -432px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -456px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -480px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -504px !important;}.cke_button__link_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -528px !important;}.cke_button__unlink_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -552px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -576px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -600px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -624px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -648px !important;}.cke_button__maximize_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -672px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -696px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -720px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -744px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -768px !important;}.cke_button__removeformat_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -792px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -816px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -840px !important;}.cke_button__specialchar_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -864px !important;}.cke_button__scayt_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -888px !important;}.cke_button__table_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -912px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -936px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -960px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -984px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1008px !important;}.cke_button__spellchecker_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1032px !important;}.cke_button__easyimagealigncenter_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1056px !important;}.cke_button__easyimagealignleft_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1080px !important;}.cke_button__easyimagealignright_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1104px !important;}.cke_button__easyimagealt_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1128px !important;}.cke_button__easyimagefull_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1152px !important;}.cke_button__easyimageside_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1176px !important;}.cke_button__easyimageupload_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1200px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealigncenter_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealignleft_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealignright_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealt_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagefull_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimageside_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimageupload_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1200px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/admin/assets/ckeditor/skins/moono-lisa/editor_gecko.css b/admin/assets/ckeditor/skins/moono-lisa/editor_gecko.css new file mode 100644 index 0000000..19fe116 --- /dev/null +++ b/admin/assets/ckeditor/skins/moono-lisa/editor_gecko.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;position:static;transition:none}.cke_reset_all,.cke_reset_all *,.cke_reset_all a,.cke_reset_all textarea{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;position:static;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre-wrap}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #d1d1d1;padding:0}.cke_inner{display:block;background:#fff;padding:0;-webkit-touch-callout:none}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #d1d1d1;background:#f8f8f8;padding:6px 8px 2px;white-space:normal}.cke_float .cke_top{border:1px solid #d1d1d1}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #d1d1d1;background:#f8f8f8}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #bcbcbc transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #bcbcbc;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #d1d1d1}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_block:focus{outline:0}.cke_panel_list{margin:0;padding:0;list-style-type:none;white-space:nowrap}.cke_panel_listItem{margin:0;padding:0}.cke_panel_listItem a{padding:6px 7px;display:block;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis}.cke_hc .cke_panel_listItem a{border-style:none}.cke_panel_listItem.cke_selected a,.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{background-color:#e9e9e9}.cke_panel_listItem a:focus{outline:1px dotted #000}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:4px 5px}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:6px 6px 7px 6px;color:#484848;border-bottom:1px solid #d1d1d1;background:#f8f8f8}.cke_colorblock{padding:10px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}a.cke_colorbox{padding:2px;float:left;width:20px;height:20px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{outline:0;padding:0;border:2px solid #139ff7}a:hover.cke_colorbox{border-color:#bcbcbc}span.cke_colorbox{width:20px;height:20px;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:3px;display:block;cursor:pointer}a.cke_colorauto{padding:0;border:1px solid transparent;margin-bottom:6px;height:26px;line-height:26px}a.cke_colormore{margin-top:10px;height:20px;line-height:19px}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{outline:0;border:#139ff7 1px solid;background-color:#f8f8f8}a:hover.cke_colorauto,a:hover.cke_colormore{border-color:#bcbcbc}.cke_colorauto span.cke_colorbox{width:18px;height:18px;border:1px solid #808080;margin-left:1px;margin-top:3px}.cke_rtl .cke_colorauto span.cke_colorbox{margin-left:0;margin-right:1px}span.cke_colorbox[style*="#ffffff"],span.cke_colorbox[style*="#FFFFFF"],span.cke_colorbox[style="background-color:#fff"],span.cke_colorbox[style="background-color:#FFF"],span.cke_colorbox[style*="rgb(255,255,255)"],span.cke_colorbox[style*="rgb(255, 255, 255)"]{border:1px solid #808080;width:18px;height:18px}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{border:0;float:left;margin:1px 2px 6px 0;padding-right:3px}.cke_rtl .cke_toolgroup{float:right;margin:1px 0 6px 2px;padding-left:3px;padding-right:0}.cke_hc .cke_toolgroup{margin-right:5px;margin-bottom:5px}.cke_hc.cke_rtl .cke_toolgroup{margin-right:0;margin-left:5px}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0;position:relative}a.cke_button_expandable{padding:4px 5px}.cke_rtl a.cke_button{float:right}.cke_hc a.cke_button{border:1px solid black;padding:3px 5px;margin:0 3px 5px 0}.cke_hc.cke_rtl a.cke_button{margin:0 0 5px 3px}a.cke_button_on{background:#fff;border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_on{padding:3px 4px}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active{background:#e5e5e5;border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_off:hover,a.cke_button_expandable.cke_button_off:focus,a.cke_button_expandable.cke_button_off:active{padding:3px 4px}.cke_hc a.cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active{background:#e5e5e5;border:3px solid #000;padding:1px 3px}a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{border:0;padding:4px 6px;background-color:transparent}a.cke_button_expandable.cke_button_disabled:hover,a.cke_button_expandable.cke_button_disabled:active{padding:4px 5px}a.cke_button_disabled:focus{border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_disabled:focus{padding:3px 4px}.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border:1px solid #acacac;padding:3px 5px;margin:0 3px 5px 0}.cke_hc a.cke_button_disabled:focus{border:3px solid #000;padding:1px 3px}.cke_hc.cke_rtl a.cke_button_disabled:hover,.cke_hc.cke_rtl a.cke_button_disabled:focus,.cke_hc.cke_rtl a.cke_button_disabled:active{margin:0 0 5px 3px}a.cke_button_disabled .cke_button_icon,a.cke_button_disabled .cke_button_arrow{opacity:.3}.cke_hc a.cke_button_disabled{border-color:#acacac}.cke_hc a.cke_button_disabled .cke_button_icon,.cke_hc a.cke_button_disabled .cke_button_label{opacity:.5}.cke_toolgroup a.cke_button:last-child:after,.cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:4px;top:0;right:-3px}.cke_rtl .cke_toolgroup a.cke_button:last-child:after,.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{border-right:0;right:auto;border-left:1px solid #bcbcbc;top:0;left:-3px}.cke_hc .cke_toolgroup a.cke_button:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_disabled:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{border-color:#000;top:0;right:-7px}.cke_hc.cke_rtl .cke_toolgroup a.cke_button:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{top:0;right:auto;left:-7px}.cke_toolgroup a.cke_button:hover:last-child:after,.cke_toolgroup a.cke_button:focus:last-child:after,.cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-1px;right:-4px}.cke_rtl .cke_toolgroup a.cke_button:hover:last-child:after,.cke_rtl .cke_toolgroup a.cke_button:focus:last-child:after,.cke_rtl .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-1px;right:auto;left:-4px}.cke_hc .cke_toolgroup a.cke_button:hover:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-2px;right:-9px}.cke_hc.cke_rtl .cke_toolgroup a.cke_button:hover:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-2px;right:auto;left:-9px}.cke_toolbar.cke_toolbar_last .cke_toolgroup a.cke_button:last-child:after{content:none;border:0;width:0;height:0}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#484848}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 3px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #484848}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px 0 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#bcbcbc;margin:4px 2px 0 2px;height:18px;width:1px}.cke_rtl .cke_toolbar_separator{float:right}.cke_hc .cke_toolbar_separator{background-color:#000;margin-left:2px;margin-right:5px;margin-bottom:9px}.cke_hc.cke_rtl .cke_toolbar_separator{margin-left:5px;margin-right:2px}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}a.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #bcbcbc}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser:hover{background:#e5e5e5}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border:3px solid transparent;border-bottom-color:#484848}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#484848}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0}.cke_menuitem span{cursor:default}.cke_menubutton{display:block}.cke_hc .cke_menubutton{padding:2px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#e9e9e9;display:block;outline:1px dotted}.cke_menubutton:hover{outline:0}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_disabled:hover,.cke_menubutton_disabled:focus,.cke_menubutton_disabled:active{background-color:transparent;outline:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#f8f8f8;padding:6px 4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#e9e9e9}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{background-color:#f8f8f8;outline:0}.cke_menuitem .cke_menubutton_on{background-color:#e9e9e9;border:1px solid #dedede;outline:0}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px;background-color:#e9e9e9}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_shortcut{color:#979797}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d1d1d1;height:1px}.cke_menuarrow{background:transparent url(images/arrow.png) no-repeat 0 10px;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_hc .cke_menuarrow{background-image:none}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left;position:relative;margin-bottom:5px}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:1px;margin-bottom:10px}.cke_combo:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:5px;top:0;right:0}.cke_rtl .cke_combo:after{border-right:0;border-left:1px solid #bcbcbc;right:auto;left:0}.cke_hc .cke_combo:after{border-color:#000}a.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0;padding:1px}.cke_rtl a.cke_combo_button{float:right}.cke_hc a.cke_combo_button{padding:4px}.cke_combo_on a.cke_combo_button,.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus,.cke_combo_off a.cke_combo_button:active{background:#e5e5e5;border:1px solid #bcbcbc;padding:0 0 0 1px;margin-left:-1px}.cke_combo_off a.cke_combo_button:focus{outline:0}.cke_combo_on a.cke_combo_button,.cke_combo_off a.cke_combo_button:active{background:#fff}.cke_rtl .cke_combo_on a.cke_combo_button,.cke_rtl .cke_combo_off a.cke_combo_button:hover,.cke_rtl .cke_combo_off a.cke_combo_button:focus,.cke_rtl .cke_combo_off a.cke_combo_button:active{padding:0 1px 0 0;margin-left:0;margin-right:-1px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border:3px solid #000;padding:1px 1px 1px 2px}.cke_hc.cke_rtl .cke_combo_on a.cke_combo_button,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:hover,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:focus,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:active{padding:1px 2px 1px 1px}.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0 0 0 3px;margin-left:-3px}.cke_rtl .cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0 3px 0 0;margin-left:0;margin-right:-3px}.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px 1px 1px 7px;margin-left:-6px}.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px 7px 1px 1px;margin-left:0;margin-right:-6px}.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0;margin:0}.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px;margin:0}.cke_toolbar .cke_combo+.cke_toolbar_end,.cke_toolbar .cke_combo+.cke_toolgroup{margin-right:0;margin-left:2px}.cke_rtl .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_rtl .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:0;margin-right:2px}.cke_hc .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_hc .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:5px}.cke_hc.cke_rtl .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_hc.cke_rtl .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:0;margin-right:5px}.cke_toolbar.cke_toolbar_last .cke_combo:nth-last-child(-n+2):after{content:none;border:0;width:0;height:0}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#484848;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 10px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #484848}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}a.cke_path_item,span.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#484848;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#e5e5e5}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combopanel__fontsize{width:135px}textarea.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre-wrap;border:0;padding:0;margin:0;display:block}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_notifications_area{pointer-events:none}.cke_notification{pointer-events:auto;position:relative;margin:10px;width:300px;color:white;text-align:center;opacity:.95;filter:alpha(opacity = 95);-webkit-animation:fadeIn .7s;animation:fadeIn .7s}.cke_notification_message a{color:#12306f}@-webkit-keyframes fadeIn{from{opacity:.4}to{opacity:.95}}@keyframes fadeIn{from{opacity:.4}to{opacity:.95}}.cke_notification_success{background:#72b572;border:1px solid #63a563}.cke_notification_warning{background:#c83939;border:1px solid #902b2b}.cke_notification_info{background:#2e9ad0;border:1px solid #0f74a8}.cke_notification_info span.cke_notification_progress{background-color:#0f74a8;display:block;padding:0;margin:0;height:100%;overflow:hidden;position:absolute;z-index:1}.cke_notification_message{position:relative;margin:4px 23px 3px;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:18px;z-index:4;text-overflow:ellipsis;overflow:hidden}.cke_notification_close{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:1px;right:1px;padding:0;margin:0;z-index:5;opacity:.6;filter:alpha(opacity = 60)}.cke_notification_close:hover{opacity:1;filter:alpha(opacity = 100)}.cke_notification_close span{display:none}.cke_notification_warning a.cke_notification_close{opacity:.8;filter:alpha(opacity = 80)}.cke_notification_warning a.cke_notification_close:hover{opacity:1;filter:alpha(opacity = 100)}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_bottom{padding-bottom:3px}.cke_combo_text{margin-bottom:-1px;margin-top:1px}.cke_button__about_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -144px !important;}.cke_button__blockquote_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -168px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -192px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -216px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -240px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -264px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -288px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -312px !important;}.cke_button__horizontalrule_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -336px !important;}.cke_button__image_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -360px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -384px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -408px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -432px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -456px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -480px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -504px !important;}.cke_button__link_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -528px !important;}.cke_button__unlink_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -552px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -576px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -600px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -624px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -648px !important;}.cke_button__maximize_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -672px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -696px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -720px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -744px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -768px !important;}.cke_button__removeformat_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -792px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -816px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -840px !important;}.cke_button__specialchar_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -864px !important;}.cke_button__scayt_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -888px !important;}.cke_button__table_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -912px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -936px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -960px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -984px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1008px !important;}.cke_button__spellchecker_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1032px !important;}.cke_button__easyimagealigncenter_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1056px !important;}.cke_button__easyimagealignleft_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1080px !important;}.cke_button__easyimagealignright_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1104px !important;}.cke_button__easyimagealt_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1128px !important;}.cke_button__easyimagefull_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1152px !important;}.cke_button__easyimageside_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1176px !important;}.cke_button__easyimageupload_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1200px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealigncenter_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealignleft_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealignright_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealt_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagefull_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimageside_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimageupload_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1200px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/admin/assets/ckeditor/skins/moono-lisa/editor_ie.css b/admin/assets/ckeditor/skins/moono-lisa/editor_ie.css new file mode 100644 index 0000000..5557dd4 --- /dev/null +++ b/admin/assets/ckeditor/skins/moono-lisa/editor_ie.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;position:static;transition:none}.cke_reset_all,.cke_reset_all *,.cke_reset_all a,.cke_reset_all textarea{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;position:static;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre-wrap}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #d1d1d1;padding:0}.cke_inner{display:block;background:#fff;padding:0;-webkit-touch-callout:none}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #d1d1d1;background:#f8f8f8;padding:6px 8px 2px;white-space:normal}.cke_float .cke_top{border:1px solid #d1d1d1}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #d1d1d1;background:#f8f8f8}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #bcbcbc transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #bcbcbc;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #d1d1d1}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_block:focus{outline:0}.cke_panel_list{margin:0;padding:0;list-style-type:none;white-space:nowrap}.cke_panel_listItem{margin:0;padding:0}.cke_panel_listItem a{padding:6px 7px;display:block;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis}.cke_hc .cke_panel_listItem a{border-style:none}.cke_panel_listItem.cke_selected a,.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{background-color:#e9e9e9}.cke_panel_listItem a:focus{outline:1px dotted #000}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:4px 5px}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:6px 6px 7px 6px;color:#484848;border-bottom:1px solid #d1d1d1;background:#f8f8f8}.cke_colorblock{padding:10px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}a.cke_colorbox{padding:2px;float:left;width:20px;height:20px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{outline:0;padding:0;border:2px solid #139ff7}a:hover.cke_colorbox{border-color:#bcbcbc}span.cke_colorbox{width:20px;height:20px;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:3px;display:block;cursor:pointer}a.cke_colorauto{padding:0;border:1px solid transparent;margin-bottom:6px;height:26px;line-height:26px}a.cke_colormore{margin-top:10px;height:20px;line-height:19px}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{outline:0;border:#139ff7 1px solid;background-color:#f8f8f8}a:hover.cke_colorauto,a:hover.cke_colormore{border-color:#bcbcbc}.cke_colorauto span.cke_colorbox{width:18px;height:18px;border:1px solid #808080;margin-left:1px;margin-top:3px}.cke_rtl .cke_colorauto span.cke_colorbox{margin-left:0;margin-right:1px}span.cke_colorbox[style*="#ffffff"],span.cke_colorbox[style*="#FFFFFF"],span.cke_colorbox[style="background-color:#fff"],span.cke_colorbox[style="background-color:#FFF"],span.cke_colorbox[style*="rgb(255,255,255)"],span.cke_colorbox[style*="rgb(255, 255, 255)"]{border:1px solid #808080;width:18px;height:18px}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{border:0;float:left;margin:1px 2px 6px 0;padding-right:3px}.cke_rtl .cke_toolgroup{float:right;margin:1px 0 6px 2px;padding-left:3px;padding-right:0}.cke_hc .cke_toolgroup{margin-right:5px;margin-bottom:5px}.cke_hc.cke_rtl .cke_toolgroup{margin-right:0;margin-left:5px}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0;position:relative}a.cke_button_expandable{padding:4px 5px}.cke_rtl a.cke_button{float:right}.cke_hc a.cke_button{border:1px solid black;padding:3px 5px;margin:0 3px 5px 0}.cke_hc.cke_rtl a.cke_button{margin:0 0 5px 3px}a.cke_button_on{background:#fff;border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_on{padding:3px 4px}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active{background:#e5e5e5;border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_off:hover,a.cke_button_expandable.cke_button_off:focus,a.cke_button_expandable.cke_button_off:active{padding:3px 4px}.cke_hc a.cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active{background:#e5e5e5;border:3px solid #000;padding:1px 3px}a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{border:0;padding:4px 6px;background-color:transparent}a.cke_button_expandable.cke_button_disabled:hover,a.cke_button_expandable.cke_button_disabled:active{padding:4px 5px}a.cke_button_disabled:focus{border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_disabled:focus{padding:3px 4px}.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border:1px solid #acacac;padding:3px 5px;margin:0 3px 5px 0}.cke_hc a.cke_button_disabled:focus{border:3px solid #000;padding:1px 3px}.cke_hc.cke_rtl a.cke_button_disabled:hover,.cke_hc.cke_rtl a.cke_button_disabled:focus,.cke_hc.cke_rtl a.cke_button_disabled:active{margin:0 0 5px 3px}a.cke_button_disabled .cke_button_icon,a.cke_button_disabled .cke_button_arrow{opacity:.3}.cke_hc a.cke_button_disabled{border-color:#acacac}.cke_hc a.cke_button_disabled .cke_button_icon,.cke_hc a.cke_button_disabled .cke_button_label{opacity:.5}.cke_toolgroup a.cke_button:last-child:after,.cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:4px;top:0;right:-3px}.cke_rtl .cke_toolgroup a.cke_button:last-child:after,.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{border-right:0;right:auto;border-left:1px solid #bcbcbc;top:0;left:-3px}.cke_hc .cke_toolgroup a.cke_button:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_disabled:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{border-color:#000;top:0;right:-7px}.cke_hc.cke_rtl .cke_toolgroup a.cke_button:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{top:0;right:auto;left:-7px}.cke_toolgroup a.cke_button:hover:last-child:after,.cke_toolgroup a.cke_button:focus:last-child:after,.cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-1px;right:-4px}.cke_rtl .cke_toolgroup a.cke_button:hover:last-child:after,.cke_rtl .cke_toolgroup a.cke_button:focus:last-child:after,.cke_rtl .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-1px;right:auto;left:-4px}.cke_hc .cke_toolgroup a.cke_button:hover:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-2px;right:-9px}.cke_hc.cke_rtl .cke_toolgroup a.cke_button:hover:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-2px;right:auto;left:-9px}.cke_toolbar.cke_toolbar_last .cke_toolgroup a.cke_button:last-child:after{content:none;border:0;width:0;height:0}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#484848}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 3px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #484848}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px 0 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#bcbcbc;margin:4px 2px 0 2px;height:18px;width:1px}.cke_rtl .cke_toolbar_separator{float:right}.cke_hc .cke_toolbar_separator{background-color:#000;margin-left:2px;margin-right:5px;margin-bottom:9px}.cke_hc.cke_rtl .cke_toolbar_separator{margin-left:5px;margin-right:2px}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}a.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #bcbcbc}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser:hover{background:#e5e5e5}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border:3px solid transparent;border-bottom-color:#484848}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#484848}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0}.cke_menuitem span{cursor:default}.cke_menubutton{display:block}.cke_hc .cke_menubutton{padding:2px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#e9e9e9;display:block;outline:1px dotted}.cke_menubutton:hover{outline:0}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_disabled:hover,.cke_menubutton_disabled:focus,.cke_menubutton_disabled:active{background-color:transparent;outline:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#f8f8f8;padding:6px 4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#e9e9e9}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{background-color:#f8f8f8;outline:0}.cke_menuitem .cke_menubutton_on{background-color:#e9e9e9;border:1px solid #dedede;outline:0}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px;background-color:#e9e9e9}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_shortcut{color:#979797}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d1d1d1;height:1px}.cke_menuarrow{background:transparent url(images/arrow.png) no-repeat 0 10px;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_hc .cke_menuarrow{background-image:none}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left;position:relative;margin-bottom:5px}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:1px;margin-bottom:10px}.cke_combo:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:5px;top:0;right:0}.cke_rtl .cke_combo:after{border-right:0;border-left:1px solid #bcbcbc;right:auto;left:0}.cke_hc .cke_combo:after{border-color:#000}a.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0;padding:1px}.cke_rtl a.cke_combo_button{float:right}.cke_hc a.cke_combo_button{padding:4px}.cke_combo_on a.cke_combo_button,.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus,.cke_combo_off a.cke_combo_button:active{background:#e5e5e5;border:1px solid #bcbcbc;padding:0 0 0 1px;margin-left:-1px}.cke_combo_off a.cke_combo_button:focus{outline:0}.cke_combo_on a.cke_combo_button,.cke_combo_off a.cke_combo_button:active{background:#fff}.cke_rtl .cke_combo_on a.cke_combo_button,.cke_rtl .cke_combo_off a.cke_combo_button:hover,.cke_rtl .cke_combo_off a.cke_combo_button:focus,.cke_rtl .cke_combo_off a.cke_combo_button:active{padding:0 1px 0 0;margin-left:0;margin-right:-1px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border:3px solid #000;padding:1px 1px 1px 2px}.cke_hc.cke_rtl .cke_combo_on a.cke_combo_button,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:hover,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:focus,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:active{padding:1px 2px 1px 1px}.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0 0 0 3px;margin-left:-3px}.cke_rtl .cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0 3px 0 0;margin-left:0;margin-right:-3px}.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px 1px 1px 7px;margin-left:-6px}.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px 7px 1px 1px;margin-left:0;margin-right:-6px}.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0;margin:0}.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px;margin:0}.cke_toolbar .cke_combo+.cke_toolbar_end,.cke_toolbar .cke_combo+.cke_toolgroup{margin-right:0;margin-left:2px}.cke_rtl .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_rtl .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:0;margin-right:2px}.cke_hc .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_hc .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:5px}.cke_hc.cke_rtl .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_hc.cke_rtl .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:0;margin-right:5px}.cke_toolbar.cke_toolbar_last .cke_combo:nth-last-child(-n+2):after{content:none;border:0;width:0;height:0}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#484848;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 10px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #484848}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}a.cke_path_item,span.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#484848;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#e5e5e5}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combopanel__fontsize{width:135px}textarea.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre-wrap;border:0;padding:0;margin:0;display:block}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_notifications_area{pointer-events:none}.cke_notification{pointer-events:auto;position:relative;margin:10px;width:300px;color:white;text-align:center;opacity:.95;filter:alpha(opacity = 95);-webkit-animation:fadeIn .7s;animation:fadeIn .7s}.cke_notification_message a{color:#12306f}@-webkit-keyframes fadeIn{from{opacity:.4}to{opacity:.95}}@keyframes fadeIn{from{opacity:.4}to{opacity:.95}}.cke_notification_success{background:#72b572;border:1px solid #63a563}.cke_notification_warning{background:#c83939;border:1px solid #902b2b}.cke_notification_info{background:#2e9ad0;border:1px solid #0f74a8}.cke_notification_info span.cke_notification_progress{background-color:#0f74a8;display:block;padding:0;margin:0;height:100%;overflow:hidden;position:absolute;z-index:1}.cke_notification_message{position:relative;margin:4px 23px 3px;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:18px;z-index:4;text-overflow:ellipsis;overflow:hidden}.cke_notification_close{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:1px;right:1px;padding:0;margin:0;z-index:5;opacity:.6;filter:alpha(opacity = 60)}.cke_notification_close:hover{opacity:1;filter:alpha(opacity = 100)}.cke_notification_close span{display:none}.cke_notification_warning a.cke_notification_close{opacity:.8;filter:alpha(opacity = 80)}.cke_notification_warning a.cke_notification_close:hover{opacity:1;filter:alpha(opacity = 100)}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_button__about_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -144px !important;}.cke_button__blockquote_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -168px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -192px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -216px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -240px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -264px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -288px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -312px !important;}.cke_button__horizontalrule_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -336px !important;}.cke_button__image_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -360px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -384px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -408px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -432px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -456px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -480px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -504px !important;}.cke_button__link_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -528px !important;}.cke_button__unlink_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -552px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -576px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -600px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -624px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -648px !important;}.cke_button__maximize_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -672px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -696px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -720px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -744px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -768px !important;}.cke_button__removeformat_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -792px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -816px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -840px !important;}.cke_button__specialchar_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -864px !important;}.cke_button__scayt_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -888px !important;}.cke_button__table_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -912px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -936px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -960px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -984px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1008px !important;}.cke_button__spellchecker_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1032px !important;}.cke_button__easyimagealigncenter_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1056px !important;}.cke_button__easyimagealignleft_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1080px !important;}.cke_button__easyimagealignright_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1104px !important;}.cke_button__easyimagealt_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1128px !important;}.cke_button__easyimagefull_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1152px !important;}.cke_button__easyimageside_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1176px !important;}.cke_button__easyimageupload_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1200px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealigncenter_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealignleft_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealignright_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealt_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagefull_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimageside_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimageupload_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1200px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/admin/assets/ckeditor/skins/moono-lisa/editor_ie8.css b/admin/assets/ckeditor/skins/moono-lisa/editor_ie8.css new file mode 100644 index 0000000..665172a --- /dev/null +++ b/admin/assets/ckeditor/skins/moono-lisa/editor_ie8.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;position:static;transition:none}.cke_reset_all,.cke_reset_all *,.cke_reset_all a,.cke_reset_all textarea{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;position:static;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre-wrap}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #d1d1d1;padding:0}.cke_inner{display:block;background:#fff;padding:0;-webkit-touch-callout:none}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #d1d1d1;background:#f8f8f8;padding:6px 8px 2px;white-space:normal}.cke_float .cke_top{border:1px solid #d1d1d1}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #d1d1d1;background:#f8f8f8}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #bcbcbc transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #bcbcbc;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #d1d1d1}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_block:focus{outline:0}.cke_panel_list{margin:0;padding:0;list-style-type:none;white-space:nowrap}.cke_panel_listItem{margin:0;padding:0}.cke_panel_listItem a{padding:6px 7px;display:block;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis}.cke_hc .cke_panel_listItem a{border-style:none}.cke_panel_listItem.cke_selected a,.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{background-color:#e9e9e9}.cke_panel_listItem a:focus{outline:1px dotted #000}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:4px 5px}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:6px 6px 7px 6px;color:#484848;border-bottom:1px solid #d1d1d1;background:#f8f8f8}.cke_colorblock{padding:10px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}a.cke_colorbox{padding:2px;float:left;width:20px;height:20px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{outline:0;padding:0;border:2px solid #139ff7}a:hover.cke_colorbox{border-color:#bcbcbc}span.cke_colorbox{width:20px;height:20px;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:3px;display:block;cursor:pointer}a.cke_colorauto{padding:0;border:1px solid transparent;margin-bottom:6px;height:26px;line-height:26px}a.cke_colormore{margin-top:10px;height:20px;line-height:19px}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{outline:0;border:#139ff7 1px solid;background-color:#f8f8f8}a:hover.cke_colorauto,a:hover.cke_colormore{border-color:#bcbcbc}.cke_colorauto span.cke_colorbox{width:18px;height:18px;border:1px solid #808080;margin-left:1px;margin-top:3px}.cke_rtl .cke_colorauto span.cke_colorbox{margin-left:0;margin-right:1px}span.cke_colorbox[style*="#ffffff"],span.cke_colorbox[style*="#FFFFFF"],span.cke_colorbox[style="background-color:#fff"],span.cke_colorbox[style="background-color:#FFF"],span.cke_colorbox[style*="rgb(255,255,255)"],span.cke_colorbox[style*="rgb(255, 255, 255)"]{border:1px solid #808080;width:18px;height:18px}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{border:0;float:left;margin:1px 2px 6px 0;padding-right:3px}.cke_rtl .cke_toolgroup{float:right;margin:1px 0 6px 2px;padding-left:3px;padding-right:0}.cke_hc .cke_toolgroup{margin-right:5px;margin-bottom:5px}.cke_hc.cke_rtl .cke_toolgroup{margin-right:0;margin-left:5px}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0;position:relative}a.cke_button_expandable{padding:4px 5px}.cke_rtl a.cke_button{float:right}.cke_hc a.cke_button{border:1px solid black;padding:3px 5px;margin:0 3px 5px 0}.cke_hc.cke_rtl a.cke_button{margin:0 0 5px 3px}a.cke_button_on{background:#fff;border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_on{padding:3px 4px}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active{background:#e5e5e5;border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_off:hover,a.cke_button_expandable.cke_button_off:focus,a.cke_button_expandable.cke_button_off:active{padding:3px 4px}.cke_hc a.cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active{background:#e5e5e5;border:3px solid #000;padding:1px 3px}a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{border:0;padding:4px 6px;background-color:transparent}a.cke_button_expandable.cke_button_disabled:hover,a.cke_button_expandable.cke_button_disabled:active{padding:4px 5px}a.cke_button_disabled:focus{border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_disabled:focus{padding:3px 4px}.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border:1px solid #acacac;padding:3px 5px;margin:0 3px 5px 0}.cke_hc a.cke_button_disabled:focus{border:3px solid #000;padding:1px 3px}.cke_hc.cke_rtl a.cke_button_disabled:hover,.cke_hc.cke_rtl a.cke_button_disabled:focus,.cke_hc.cke_rtl a.cke_button_disabled:active{margin:0 0 5px 3px}a.cke_button_disabled .cke_button_icon,a.cke_button_disabled .cke_button_arrow{opacity:.3}.cke_hc a.cke_button_disabled{border-color:#acacac}.cke_hc a.cke_button_disabled .cke_button_icon,.cke_hc a.cke_button_disabled .cke_button_label{opacity:.5}.cke_toolgroup a.cke_button:last-child:after,.cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:4px;top:0;right:-3px}.cke_rtl .cke_toolgroup a.cke_button:last-child:after,.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{border-right:0;right:auto;border-left:1px solid #bcbcbc;top:0;left:-3px}.cke_hc .cke_toolgroup a.cke_button:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_disabled:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{border-color:#000;top:0;right:-7px}.cke_hc.cke_rtl .cke_toolgroup a.cke_button:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{top:0;right:auto;left:-7px}.cke_toolgroup a.cke_button:hover:last-child:after,.cke_toolgroup a.cke_button:focus:last-child:after,.cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-1px;right:-4px}.cke_rtl .cke_toolgroup a.cke_button:hover:last-child:after,.cke_rtl .cke_toolgroup a.cke_button:focus:last-child:after,.cke_rtl .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-1px;right:auto;left:-4px}.cke_hc .cke_toolgroup a.cke_button:hover:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-2px;right:-9px}.cke_hc.cke_rtl .cke_toolgroup a.cke_button:hover:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-2px;right:auto;left:-9px}.cke_toolbar.cke_toolbar_last .cke_toolgroup a.cke_button:last-child:after{content:none;border:0;width:0;height:0}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#484848}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 3px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #484848}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px 0 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#bcbcbc;margin:4px 2px 0 2px;height:18px;width:1px}.cke_rtl .cke_toolbar_separator{float:right}.cke_hc .cke_toolbar_separator{background-color:#000;margin-left:2px;margin-right:5px;margin-bottom:9px}.cke_hc.cke_rtl .cke_toolbar_separator{margin-left:5px;margin-right:2px}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}a.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #bcbcbc}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser:hover{background:#e5e5e5}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border:3px solid transparent;border-bottom-color:#484848}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#484848}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0}.cke_menuitem span{cursor:default}.cke_menubutton{display:block}.cke_hc .cke_menubutton{padding:2px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#e9e9e9;display:block;outline:1px dotted}.cke_menubutton:hover{outline:0}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_disabled:hover,.cke_menubutton_disabled:focus,.cke_menubutton_disabled:active{background-color:transparent;outline:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#f8f8f8;padding:6px 4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#e9e9e9}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{background-color:#f8f8f8;outline:0}.cke_menuitem .cke_menubutton_on{background-color:#e9e9e9;border:1px solid #dedede;outline:0}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px;background-color:#e9e9e9}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_shortcut{color:#979797}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d1d1d1;height:1px}.cke_menuarrow{background:transparent url(images/arrow.png) no-repeat 0 10px;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_hc .cke_menuarrow{background-image:none}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left;position:relative;margin-bottom:5px}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:1px;margin-bottom:10px}.cke_combo:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:5px;top:0;right:0}.cke_rtl .cke_combo:after{border-right:0;border-left:1px solid #bcbcbc;right:auto;left:0}.cke_hc .cke_combo:after{border-color:#000}a.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0;padding:1px}.cke_rtl a.cke_combo_button{float:right}.cke_hc a.cke_combo_button{padding:4px}.cke_combo_on a.cke_combo_button,.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus,.cke_combo_off a.cke_combo_button:active{background:#e5e5e5;border:1px solid #bcbcbc;padding:0 0 0 1px;margin-left:-1px}.cke_combo_off a.cke_combo_button:focus{outline:0}.cke_combo_on a.cke_combo_button,.cke_combo_off a.cke_combo_button:active{background:#fff}.cke_rtl .cke_combo_on a.cke_combo_button,.cke_rtl .cke_combo_off a.cke_combo_button:hover,.cke_rtl .cke_combo_off a.cke_combo_button:focus,.cke_rtl .cke_combo_off a.cke_combo_button:active{padding:0 1px 0 0;margin-left:0;margin-right:-1px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border:3px solid #000;padding:1px 1px 1px 2px}.cke_hc.cke_rtl .cke_combo_on a.cke_combo_button,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:hover,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:focus,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:active{padding:1px 2px 1px 1px}.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0 0 0 3px;margin-left:-3px}.cke_rtl .cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0 3px 0 0;margin-left:0;margin-right:-3px}.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px 1px 1px 7px;margin-left:-6px}.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px 7px 1px 1px;margin-left:0;margin-right:-6px}.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0;margin:0}.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px;margin:0}.cke_toolbar .cke_combo+.cke_toolbar_end,.cke_toolbar .cke_combo+.cke_toolgroup{margin-right:0;margin-left:2px}.cke_rtl .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_rtl .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:0;margin-right:2px}.cke_hc .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_hc .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:5px}.cke_hc.cke_rtl .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_hc.cke_rtl .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:0;margin-right:5px}.cke_toolbar.cke_toolbar_last .cke_combo:nth-last-child(-n+2):after{content:none;border:0;width:0;height:0}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#484848;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 10px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #484848}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}a.cke_path_item,span.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#484848;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#e5e5e5}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combopanel__fontsize{width:135px}textarea.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre-wrap;border:0;padding:0;margin:0;display:block}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_notifications_area{pointer-events:none}.cke_notification{pointer-events:auto;position:relative;margin:10px;width:300px;color:white;text-align:center;opacity:.95;filter:alpha(opacity = 95);-webkit-animation:fadeIn .7s;animation:fadeIn .7s}.cke_notification_message a{color:#12306f}@-webkit-keyframes fadeIn{from{opacity:.4}to{opacity:.95}}@keyframes fadeIn{from{opacity:.4}to{opacity:.95}}.cke_notification_success{background:#72b572;border:1px solid #63a563}.cke_notification_warning{background:#c83939;border:1px solid #902b2b}.cke_notification_info{background:#2e9ad0;border:1px solid #0f74a8}.cke_notification_info span.cke_notification_progress{background-color:#0f74a8;display:block;padding:0;margin:0;height:100%;overflow:hidden;position:absolute;z-index:1}.cke_notification_message{position:relative;margin:4px 23px 3px;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:18px;z-index:4;text-overflow:ellipsis;overflow:hidden}.cke_notification_close{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:1px;right:1px;padding:0;margin:0;z-index:5;opacity:.6;filter:alpha(opacity = 60)}.cke_notification_close:hover{opacity:1;filter:alpha(opacity = 100)}.cke_notification_close span{display:none}.cke_notification_warning a.cke_notification_close{opacity:.8;filter:alpha(opacity = 80)}.cke_notification_warning a.cke_notification_close:hover{opacity:1;filter:alpha(opacity = 100)}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_toolbox_collapser .cke_arrow{border-width:4px}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{border-width:3px}.cke_toolbox_collapser .cke_arrow{margin-top:0}.cke_toolbar{position:relative}.cke_rtl .cke_toolbar_end{right:auto;left:0}.cke_toolbar_end:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:4px;top:1px;right:2px}.cke_rtl .cke_toolbar_end:after{right:auto;left:2px}.cke_hc .cke_toolbar_end:after{top:2px;right:5px;border-color:#000}.cke_hc.cke_rtl .cke_toolbar_end:after{right:auto;left:5px}.cke_combo+.cke_toolbar_end:after,.cke_toolbar.cke_toolbar_last .cke_toolbar_end:after{content:none;border:0}.cke_combo+.cke_toolgroup+.cke_toolbar_end:after{right:0}.cke_rtl .cke_combo+.cke_toolgroup+.cke_toolbar_end:after{right:auto;left:0}.cke_button__about_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -144px !important;}.cke_button__blockquote_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -168px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -192px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -216px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -240px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -264px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -288px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -312px !important;}.cke_button__horizontalrule_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -336px !important;}.cke_button__image_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -360px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -384px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -408px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -432px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -456px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -480px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -504px !important;}.cke_button__link_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -528px !important;}.cke_button__unlink_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -552px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -576px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -600px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -624px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -648px !important;}.cke_button__maximize_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -672px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -696px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -720px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -744px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -768px !important;}.cke_button__removeformat_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -792px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -816px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -840px !important;}.cke_button__specialchar_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -864px !important;}.cke_button__scayt_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -888px !important;}.cke_button__table_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -912px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -936px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -960px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -984px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1008px !important;}.cke_button__spellchecker_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1032px !important;}.cke_button__easyimagealigncenter_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1056px !important;}.cke_button__easyimagealignleft_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1080px !important;}.cke_button__easyimagealignright_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1104px !important;}.cke_button__easyimagealt_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1128px !important;}.cke_button__easyimagefull_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1152px !important;}.cke_button__easyimageside_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1176px !important;}.cke_button__easyimageupload_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1200px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealigncenter_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealignleft_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealignright_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealt_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagefull_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimageside_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimageupload_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1200px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/admin/assets/ckeditor/skins/moono-lisa/editor_iequirks.css b/admin/assets/ckeditor/skins/moono-lisa/editor_iequirks.css new file mode 100644 index 0000000..a064274 --- /dev/null +++ b/admin/assets/ckeditor/skins/moono-lisa/editor_iequirks.css @@ -0,0 +1,5 @@ +/* +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. +For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;position:static;transition:none}.cke_reset_all,.cke_reset_all *,.cke_reset_all a,.cke_reset_all textarea{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;position:static;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre-wrap}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box}.cke_reset_all table{table-layout:auto}.cke_chrome{display:block;border:1px solid #d1d1d1;padding:0}.cke_inner{display:block;background:#fff;padding:0;-webkit-touch-callout:none}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #d1d1d1;background:#f8f8f8;padding:6px 8px 2px;white-space:normal}.cke_float .cke_top{border:1px solid #d1d1d1}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #d1d1d1;background:#f8f8f8}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #bcbcbc transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #bcbcbc;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #d1d1d1}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_block:focus{outline:0}.cke_panel_list{margin:0;padding:0;list-style-type:none;white-space:nowrap}.cke_panel_listItem{margin:0;padding:0}.cke_panel_listItem a{padding:6px 7px;display:block;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis}.cke_hc .cke_panel_listItem a{border-style:none}.cke_panel_listItem.cke_selected a,.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{background-color:#e9e9e9}.cke_panel_listItem a:focus{outline:1px dotted #000}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:4px 5px}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:6px 6px 7px 6px;color:#484848;border-bottom:1px solid #d1d1d1;background:#f8f8f8}.cke_colorblock{padding:10px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}a.cke_colorbox{padding:2px;float:left;width:20px;height:20px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{outline:0;padding:0;border:2px solid #139ff7}a:hover.cke_colorbox{border-color:#bcbcbc}span.cke_colorbox{width:20px;height:20px;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:3px;display:block;cursor:pointer}a.cke_colorauto{padding:0;border:1px solid transparent;margin-bottom:6px;height:26px;line-height:26px}a.cke_colormore{margin-top:10px;height:20px;line-height:19px}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{outline:0;border:#139ff7 1px solid;background-color:#f8f8f8}a:hover.cke_colorauto,a:hover.cke_colormore{border-color:#bcbcbc}.cke_colorauto span.cke_colorbox{width:18px;height:18px;border:1px solid #808080;margin-left:1px;margin-top:3px}.cke_rtl .cke_colorauto span.cke_colorbox{margin-left:0;margin-right:1px}span.cke_colorbox[style*="#ffffff"],span.cke_colorbox[style*="#FFFFFF"],span.cke_colorbox[style="background-color:#fff"],span.cke_colorbox[style="background-color:#FFF"],span.cke_colorbox[style*="rgb(255,255,255)"],span.cke_colorbox[style*="rgb(255, 255, 255)"]{border:1px solid #808080;width:18px;height:18px}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{border:0;float:left;margin:1px 2px 6px 0;padding-right:3px}.cke_rtl .cke_toolgroup{float:right;margin:1px 0 6px 2px;padding-left:3px;padding-right:0}.cke_hc .cke_toolgroup{margin-right:5px;margin-bottom:5px}.cke_hc.cke_rtl .cke_toolgroup{margin-right:0;margin-left:5px}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0;position:relative}a.cke_button_expandable{padding:4px 5px}.cke_rtl a.cke_button{float:right}.cke_hc a.cke_button{border:1px solid black;padding:3px 5px;margin:0 3px 5px 0}.cke_hc.cke_rtl a.cke_button{margin:0 0 5px 3px}a.cke_button_on{background:#fff;border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_on{padding:3px 4px}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active{background:#e5e5e5;border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_off:hover,a.cke_button_expandable.cke_button_off:focus,a.cke_button_expandable.cke_button_off:active{padding:3px 4px}.cke_hc a.cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active{background:#e5e5e5;border:3px solid #000;padding:1px 3px}a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{border:0;padding:4px 6px;background-color:transparent}a.cke_button_expandable.cke_button_disabled:hover,a.cke_button_expandable.cke_button_disabled:active{padding:4px 5px}a.cke_button_disabled:focus{border:1px #bcbcbc solid;padding:3px 5px}a.cke_button_expandable.cke_button_disabled:focus{padding:3px 4px}.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border:1px solid #acacac;padding:3px 5px;margin:0 3px 5px 0}.cke_hc a.cke_button_disabled:focus{border:3px solid #000;padding:1px 3px}.cke_hc.cke_rtl a.cke_button_disabled:hover,.cke_hc.cke_rtl a.cke_button_disabled:focus,.cke_hc.cke_rtl a.cke_button_disabled:active{margin:0 0 5px 3px}a.cke_button_disabled .cke_button_icon,a.cke_button_disabled .cke_button_arrow{opacity:.3}.cke_hc a.cke_button_disabled{border-color:#acacac}.cke_hc a.cke_button_disabled .cke_button_icon,.cke_hc a.cke_button_disabled .cke_button_label{opacity:.5}.cke_toolgroup a.cke_button:last-child:after,.cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:4px;top:0;right:-3px}.cke_rtl .cke_toolgroup a.cke_button:last-child:after,.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{border-right:0;right:auto;border-left:1px solid #bcbcbc;top:0;left:-3px}.cke_hc .cke_toolgroup a.cke_button:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_disabled:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{border-color:#000;top:0;right:-7px}.cke_hc.cke_rtl .cke_toolgroup a.cke_button:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_disabled:hover:last-child:after{top:0;right:auto;left:-7px}.cke_toolgroup a.cke_button:hover:last-child:after,.cke_toolgroup a.cke_button:focus:last-child:after,.cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-1px;right:-4px}.cke_rtl .cke_toolgroup a.cke_button:hover:last-child:after,.cke_rtl .cke_toolgroup a.cke_button:focus:last-child:after,.cke_rtl .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-1px;right:auto;left:-4px}.cke_hc .cke_toolgroup a.cke_button:hover:last-child:after,.cke_hc .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-2px;right:-9px}.cke_hc.cke_rtl .cke_toolgroup a.cke_button:hover:last-child:after,.cke_hc.cke_rtl .cke_toolgroup a.cke_button.cke_button_on:last-child:after{top:-2px;right:auto;left:-9px}.cke_toolbar.cke_toolbar_last .cke_toolgroup a.cke_button:last-child:after{content:none;border:0;width:0;height:0}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#484848}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 3px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #484848}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px 0 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#bcbcbc;margin:4px 2px 0 2px;height:18px;width:1px}.cke_rtl .cke_toolbar_separator{float:right}.cke_hc .cke_toolbar_separator{background-color:#000;margin-left:2px;margin-right:5px;margin-bottom:9px}.cke_hc.cke_rtl .cke_toolbar_separator{margin-left:5px;margin-right:2px}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}a.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #bcbcbc}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser:hover{background:#e5e5e5}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border:3px solid transparent;border-bottom-color:#484848}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#484848}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0}.cke_menuitem span{cursor:default}.cke_menubutton{display:block}.cke_hc .cke_menubutton{padding:2px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#e9e9e9;display:block;outline:1px dotted}.cke_menubutton:hover{outline:0}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_disabled:hover,.cke_menubutton_disabled:focus,.cke_menubutton_disabled:active{background-color:transparent;outline:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#f8f8f8;padding:6px 4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#e9e9e9}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{background-color:#f8f8f8;outline:0}.cke_menuitem .cke_menubutton_on{background-color:#e9e9e9;border:1px solid #dedede;outline:0}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px;background-color:#e9e9e9}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_shortcut{color:#979797}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d1d1d1;height:1px}.cke_menuarrow{background:transparent url(images/arrow.png) no-repeat 0 10px;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_hc .cke_menuarrow{background-image:none}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left;position:relative;margin-bottom:5px}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:1px;margin-bottom:10px}.cke_combo:after{content:"";position:absolute;height:18px;width:0;border-right:1px solid #bcbcbc;margin-top:5px;top:0;right:0}.cke_rtl .cke_combo:after{border-right:0;border-left:1px solid #bcbcbc;right:auto;left:0}.cke_hc .cke_combo:after{border-color:#000}a.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0;padding:1px}.cke_rtl a.cke_combo_button{float:right}.cke_hc a.cke_combo_button{padding:4px}.cke_combo_on a.cke_combo_button,.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus,.cke_combo_off a.cke_combo_button:active{background:#e5e5e5;border:1px solid #bcbcbc;padding:0 0 0 1px;margin-left:-1px}.cke_combo_off a.cke_combo_button:focus{outline:0}.cke_combo_on a.cke_combo_button,.cke_combo_off a.cke_combo_button:active{background:#fff}.cke_rtl .cke_combo_on a.cke_combo_button,.cke_rtl .cke_combo_off a.cke_combo_button:hover,.cke_rtl .cke_combo_off a.cke_combo_button:focus,.cke_rtl .cke_combo_off a.cke_combo_button:active{padding:0 1px 0 0;margin-left:0;margin-right:-1px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border:3px solid #000;padding:1px 1px 1px 2px}.cke_hc.cke_rtl .cke_combo_on a.cke_combo_button,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:hover,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:focus,.cke_hc.cke_rtl .cke_combo_off a.cke_combo_button:active{padding:1px 2px 1px 1px}.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0 0 0 3px;margin-left:-3px}.cke_rtl .cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_rtl .cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0 3px 0 0;margin-left:0;margin-right:-3px}.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px 1px 1px 7px;margin-left:-6px}.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc.cke_rtl .cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px 7px 1px 1px;margin-left:0;margin-right:-6px}.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:0;margin:0}.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbox .cke_toolbar:first-child>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_on a.cke_combo_button,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_toolbar_break+.cke_toolbar>.cke_toolbar_start+.cke_combo_off a.cke_combo_button:active{padding:1px;margin:0}.cke_toolbar .cke_combo+.cke_toolbar_end,.cke_toolbar .cke_combo+.cke_toolgroup{margin-right:0;margin-left:2px}.cke_rtl .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_rtl .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:0;margin-right:2px}.cke_hc .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_hc .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:5px}.cke_hc.cke_rtl .cke_toolbar .cke_combo+.cke_toolbar_end,.cke_hc.cke_rtl .cke_toolbar .cke_combo+.cke_toolgroup{margin-left:0;margin-right:5px}.cke_toolbar.cke_toolbar_last .cke_combo:nth-last-child(-n+2):after{content:none;border:0;width:0;height:0}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#484848;width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 10px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #484848}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}a.cke_path_item,span.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#484848;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#e5e5e5}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combopanel__fontsize{width:135px}textarea.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre-wrap;border:0;padding:0;margin:0;display:block}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_notifications_area{pointer-events:none}.cke_notification{pointer-events:auto;position:relative;margin:10px;width:300px;color:white;text-align:center;opacity:.95;filter:alpha(opacity = 95);-webkit-animation:fadeIn .7s;animation:fadeIn .7s}.cke_notification_message a{color:#12306f}@-webkit-keyframes fadeIn{from{opacity:.4}to{opacity:.95}}@keyframes fadeIn{from{opacity:.4}to{opacity:.95}}.cke_notification_success{background:#72b572;border:1px solid #63a563}.cke_notification_warning{background:#c83939;border:1px solid #902b2b}.cke_notification_info{background:#2e9ad0;border:1px solid #0f74a8}.cke_notification_info span.cke_notification_progress{background-color:#0f74a8;display:block;padding:0;margin:0;height:100%;overflow:hidden;position:absolute;z-index:1}.cke_notification_message{position:relative;margin:4px 23px 3px;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:18px;z-index:4;text-overflow:ellipsis;overflow:hidden}.cke_notification_close{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:1px;right:1px;padding:0;margin:0;z-index:5;opacity:.6;filter:alpha(opacity = 60)}.cke_notification_close:hover{opacity:1;filter:alpha(opacity = 100)}.cke_notification_close span{display:none}.cke_notification_warning a.cke_notification_close{opacity:.8;filter:alpha(opacity = 80)}.cke_notification_warning a.cke_notification_close:hover{opacity:1;filter:alpha(opacity = 100)}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_top,.cke_contents,.cke_bottom{width:100%}.cke_button_arrow{font-size:0}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_button,.cke_rtl .cke_button *,.cke_rtl .cke_combo,.cke_rtl .cke_combo *,.cke_rtl .cke_path_item,.cke_rtl .cke_path_item *,.cke_rtl .cke_path_empty{float:none}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_combo_button,.cke_rtl .cke_combo_button *,.cke_rtl .cke_button,.cke_rtl .cke_button_icon{display:inline-block;vertical-align:top}.cke_rtl .cke_button_icon{float:none}.cke_resizer{width:10px}.cke_source{white-space:normal}.cke_bottom{position:static}.cke_colorbox{font-size:0}.cke_button__about_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -144px !important;}.cke_button__blockquote_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -168px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -192px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -216px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -240px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -264px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -288px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -312px !important;}.cke_button__horizontalrule_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -336px !important;}.cke_button__image_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -360px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -384px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -408px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -432px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -456px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -480px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -504px !important;}.cke_button__link_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -528px !important;}.cke_button__unlink_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -552px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -576px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -600px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -624px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -648px !important;}.cke_button__maximize_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -672px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -696px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -720px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -744px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -768px !important;}.cke_button__removeformat_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -792px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -816px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -840px !important;}.cke_button__specialchar_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -864px !important;}.cke_button__scayt_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -888px !important;}.cke_button__table_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -912px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -936px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -960px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -984px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1008px !important;}.cke_button__spellchecker_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1032px !important;}.cke_button__easyimagealigncenter_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1056px !important;}.cke_button__easyimagealignleft_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1080px !important;}.cke_button__easyimagealignright_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1104px !important;}.cke_button__easyimagealt_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1128px !important;}.cke_button__easyimagefull_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1152px !important;}.cke_button__easyimageside_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1176px !important;}.cke_button__easyimageupload_icon {background: url(icons.png?t=cc4885b53) no-repeat 0 -1200px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealigncenter_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealignleft_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealignright_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagealt_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimagefull_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimageside_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_hidpi .cke_button__easyimageupload_icon {background: url(icons_hidpi.png?t=cc4885b53) no-repeat 0 -1200px !important;background-size: 16px !important;} \ No newline at end of file diff --git a/admin/assets/ckeditor/skins/moono-lisa/icons.png b/admin/assets/ckeditor/skins/moono-lisa/icons.png new file mode 100644 index 0000000000000000000000000000000000000000..ae86d42dd4c3b8521481e4f2da79b72552813b5f GIT binary patch literal 6590 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 Q4;euH(Gx_eGCJ&k0Qn-pMgRZ+ literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/skins/moono-lisa/icons_hidpi.png b/admin/assets/ckeditor/skins/moono-lisa/icons_hidpi.png new file mode 100644 index 0000000000000000000000000000000000000000..c33779ad6de60682b12797f9fca81730bb015aaa GIT binary patch literal 22271 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
68}FbC<5-pGBOs+sPtH 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 KI&ZZd6aEE@6cAwm literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/skins/moono-lisa/images/arrow.png b/admin/assets/ckeditor/skins/moono-lisa/images/arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..d72b5f3b8808bd89996ef62f845164d459957a1b GIT binary patch literal 191 zcmeAS@N?(olHy`uVBq!ia0vp^Y(Ol>!VDz;rWf@BDXjpX5LX~=X=(ZY|9>EfAH1#& z-3wIBTN30K45T@Ev~-ix<}bSOt=nC)A1Gk%>Eal|aXtBhiAd6gyIe=gyBczF}qKQ%F0(mNbo(!7G$6ystm-3eX4!Pgg&ebxsLQ E09R-@$^ZZW literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/skins/moono-lisa/images/close.png b/admin/assets/ckeditor/skins/moono-lisa/images/close.png new file mode 100644 index 0000000000000000000000000000000000000000..40caa6ddfd01c2a26947761de218e4ce8f5e361e GIT binary patch literal 615 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6-E$sR$z z3=CDO3=9p;3=BX21L>Cx45bDP46hOx7_4S6Fo@?*ia+WGRLhp+?e4A1op@M5>3aOmOBJL-|3|^OV7Yn$}BPM-7dk4;tau8cTbEB zVOVq2VrTe-pr)C+XL-*25p&w{RY|c$I<(f*c*aemrB}2+@TEpJ&78kybw|w+iRXsL zc6QXHdC8sL^yZ3dsB5%j+BccxKY6pB9X)fwF9YU; literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/skins/moono-lisa/images/hidpi/close.png b/admin/assets/ckeditor/skins/moono-lisa/images/hidpi/close.png new file mode 100644 index 0000000000000000000000000000000000000000..fa00f4fce646958807479472de68a95c5ac44eb2 GIT binary patch literal 1238 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 UhGj7#fj|ump00i_>zopr0FH;n#Q*>R literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/skins/moono-lisa/images/hidpi/refresh.png b/admin/assets/ckeditor/skins/moono-lisa/images/hidpi/refresh.png new file mode 100644 index 0000000000000000000000000000000000000000..117a2d4a4715551e735a14ac0a79d40c9affab8a GIT binary patch literal 1623 zcmV-d2B`UoP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 zVoOIv0RI600RN!9r;`8x00(qQO+^Rb3jz%x0D}(B2mk;DTS-JgR9M5ES51fIa!A}CT=lR4Pn&pDncWR+4(bwe$DFdqE52*HDR$iagkUKPw~3G6`3 z!Bc_#{B#| z78Vwe=XuHcJkMWd=C9H;y~50;y?R}q=SY$SOG``G-Q7Jv@M&QdLO=+CJkKGeEDi?% zW`15u`A`V)a5x+u^*ry1MiCKqc6O>2ID7W&6pVV4woXHJwOs}unqZKI>SYKZ+38~toltPju zh@uDpjsrODI1Ud6g8~`D_n!(O?pF!c7c-Atu(`R3EXyhd>bnpk%(CoTA;dWoA#*Je z70NSnG3R;SOG%RaVZuK*H-|=}F-AZyG$1Ule!mZ9{xQq4J`tVM1hg+LTnjPh;yC_Y z2=SeiviLqXH-{hy!0YSlQ@+)QuCA`mg<+_qly8`b%p%v5=A@MMZnp~n1p>8N4UXwM zQ^=`Pr})N=8zVgBu>5b&trF4CM~)mR{I8?Hsj@7NW8A!XQ`!QIBy%0W6=uGd=lKZ$ z7XZ9gfk4{rcHP5=4^MH0nc+AN92qS)H@Z(d^8%3UaZ&aQ$^?E#fz+&KN)QR=S?oy`J^~wZEej? ztCyve?^$}?&$8^e>$;_Es7DY4&-MHLN6d`dw{O$QlP57txIIVhcH0I)nF>t`2{CgK z!^~XdjR~BuNGX2;aMWbJ?MAzF16DaU!%5opQ z^Ovdd*O*ETL)a&)BDw<{41u11)O1UMad@IlM(|7LN8JN}!AwU}& z8-?!&g8_WsFX2T*|0<=9RS~FGt6?-6ARrb=?CFD5Vet z!BkFHO0`_qZQ5j#Qli)EAxV;{5*~)(qV0F3)PKJ3m&jPJ*TH7jGdbi7{jTq6nm(3N zR+7rDig6sH-|z3j8qEB;*|erdxoFEA$GL7pZE*!sO1Q53iyg`U z(Cv1=w3AX8hGQ3)9~zAYnE4wWhB~~Yl&=dRl)W%;G;0umj*9B3i&W_fIu8ljkIkV_);j?24{ly*kbV_HbPn z4<04M^QvVh>rn8X2Yqi%Jck@5aI)je|A0z!>~}+L^02E1VL~hPe164Xeyy&wu+=m zDJ(B9hqrFs8iZj8^LNblw-&C?xOVN@v;qLoZnujPYyO^@!tH3#cXOTDcnTqk?`fKr zgag3;LVDC3zOf0O0000bbVXQnWMOn=I%9HWVRU5xGB7bVEio}IFfvpzGdeRfIxsLR zFflqXFxLUB?EnA(C3HntbYx+4WjbwdWNBu305UK!HZ3tREif`vF*7!lvI6-E$sR$z z3=CDO3=9p;3=BX21L>Cx45bDP46hOx7_4S6Fo@?*ia+WGRLhp+?e4 zXsMjst^Hgcb?*)HYR(;>?|kX8+=2JA85!;{ysK~L@z>RI1^QgI#5JNMC9x#cD!C{X zNHG{07@FxCnClu^h8P-K85>xc7-<_ASs55eOen8F(U6;;l9^VCTSMmA^GARh7(8A5 KT-G@yGywqDd$lqE literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/skins/moono-lisa/images/lock.png b/admin/assets/ckeditor/skins/moono-lisa/images/lock.png new file mode 100644 index 0000000000000000000000000000000000000000..bde67727d775326b472106b5e0a82f7744de2fc9 GIT binary patch literal 506 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6-E$sR$z z3=CDO3=9p;3=BX21L>Cx45bDP46hOx7_4S6Fo@?*ia+WGRLhp+?e4 z>z#`>8*e`A zcVWh~ihTX*C38NTGiXPgmlmG6j8o-*;1Q*w@T-a~4xzFxPvT~aWN2pzE}t@O-}{L{ zQ6Z%rhW{8Ux-Pt7VA%7$d*;Fe)%&+p_;bFR=DE+7x#7z82{mh$F4Wt=#2|6f{o)Dl zCT>5Uvy+XR7F(JKOtf6;A~@6Dh(qyCh^S)AZFjbFJ1viKJin92WNUQ7GJf~E-OuKn zFLn6z-KWsh|MmIAwD@$MYv#-hKbReosxL9#m<|ee)e_f;l9a@fRIB8oR3OD*WMF8f zYhbQxXc=N?Y-MabP0l+XkK D;C!rU literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/skins/moono-lisa/images/refresh.png b/admin/assets/ckeditor/skins/moono-lisa/images/refresh.png new file mode 100644 index 0000000000000000000000000000000000000000..e363764e3d0886333a3b03b04f5502d4cd79d133 GIT binary patch literal 757 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6-E$sR$z z3=CDO3=9p;3=BX21L>Cx45bDP46hOx7_4S6Fo@?*ia+WGRLhp+?e4=#-F2>at)pi3YpXk7?elJnowJM)Rcbn##3;CP{noPIf9*u1IU=&zl`?0=2~WI! z=1*ky-*w6t4jybgQdo26y~Qix)vKIlEtCIbQ_sh6?UuK!sc*5HOFv@`Q^N{=iC#DR zwOiZwHqPxn;mdHndV{-C(JS^-cB`jUF+C7qnDJAWfvI47?rmwgJ$LguJN(%7emLLW zCcpb}`SUy8`A^d}GYbAKJa;k2j61B#dS*w!wA6r}$3I&4hj=C0&2R3=Gc;bu^=?(X z%8dHU@q{ literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/skins/moono-lisa/images/spinner.gif b/admin/assets/ckeditor/skins/moono-lisa/images/spinner.gif new file mode 100644 index 0000000000000000000000000000000000000000..d898d41fa7e0d56b5c0da930750e108e50c14d72 GIT binary patch literal 2984 zcmeH|X*8R88^)iIq}DU`>OwP=T3e-=BBi$4DkQN?thHqk38A4vt5G2&WJ5X+EFD9YT0*sI89FsZ>!72Q&ifkPB@Bi+&U~74=F2=EpXZ$4bKTc<{qMhnlf9`~ zkQ^Wfd;|ajfe;xP85bAFX0snWcpwxChlhv9#>S$eqLP!78yXs3ym*1f!KBV7>b5C(sIPDd$9=)eU}Lyb1T(C|L~Y+d zitR+2qa5i~Maw@~h|4LnKu1*BpT|0%7X#@Us zYG0c%Rw%8s#h!qURb_nB6CDm#w0$Lm!+p6v)M1kPS6XTpYCGb>$ zrTSFsgjs@7;L=ZNHr`*n_AE1e5P&%x;-F-v(5M@!yeHIV8(Mr6q{Znl>TQf94KE)T z7jK=}M@8CeE4Ft!n|nH5@PMzW$tdgUYdov%J=p^p227dAuVV6QXd{etFA&=)=JQj9v_;&SKsh|xZYiyHz`t} zO$T;SEw-s42kOby%|^F=j7GM_Km1qqEqlBw5OJV|i6ea(-8^72y3DWglIPp>Okf(v zPU7=mxfODI5iS2nYy$E81{Tzpng{R3ssh~8E%-KLGq=WZNxhi=qK3lRWk{V+skb`$ z_YH4Mpe6Q-$#UD#5Xp6su8QKBCf}FKvW&5|sa??W>3ww)t)A@tg{= z4o0RHDJ(?yK(NOaa@X8eyH!FJTiQ<)&aDb3%WU`M7CbZUJQ`@^2f5v$)*qu`nO=86 z2yqIGQJez9lZfJlU&Za6{O@(z&?&~7-h`Hp$_ftsz|BZ{J#11GYBDqi zshW{Rt5*`7xQm|tt~XBey@J|SM|X}7wQpgd;&cwOY|_D9hgHO%mMy{7bV~b)UQMM? zFwCH?Vl7QzTg?nUV?0JZk%dU~l8LTFi*Nk-qMK?`Ro(H69NCLUL|R=5JoD(s6R+s~??G-dIB&9( zjE0(rADgtz-YFY$_P5l6Z;HHtk~qz+Iq+yIJJXieBm+B*sPKAR)c1I;p}-|a>KH;T z{k*1vuNaxPZ$$8M&a8M!TYqb(>|{cnMOHZKWvi6%jd*BtRy(j%nE}1-R27v5q^S(n zeB&fb0Md+~9W)Bg^wzQgvGku#O{?6C*#Gp3owR!rT3qT1ITjV{8WUx+rycepJN{jH zom;~1e}pn;IWXEkc-VtF^?uPS!tlMr+@))CvZoeQy6pAyRh-8R)z99iekfQRJaQHm zZ-e&p^dozb($k!`&^wna)Yd8qr7Dr9$7(}iD-CY9mB0YT@zQH0&#TlhoZgC>A{I zAwv8OyXVfJbKzcCm`9QKJe{sg8!wMYFoleOl258#R=>&($9e~ZCnu33m~K(1C?=O} z6CH26C4J{2-zW+3YdiK${&l?^le*q1!^Y>G_MO_=kph+BFBYR%aRo5ay9QagY!jpt6z#}jj1 zdmRs6#V7hQ{S#SNsYjiu2`N<9y{v{6cZG?6u3KQ|`A9m=&`l*3wQ}*CCo*^$qZLqZ5gL)PX88H^eiH-Hy@B{Ysn8b_ literal 0 HcmV?d00001 diff --git a/admin/assets/ckeditor/skins/moono-lisa/readme.md b/admin/assets/ckeditor/skins/moono-lisa/readme.md new file mode 100644 index 0000000..33f226f --- /dev/null +++ b/admin/assets/ckeditor/skins/moono-lisa/readme.md @@ -0,0 +1,46 @@ +"Moono-lisa" Skin +================= + +This skin has been made a **default skin** starting from CKEditor 4.6.0 and is maintained by the core developers. + +For more information about skins, please check the [CKEditor Skin SDK](https://ckeditor.com/docs/ckeditor4/latest/guide/skin_sdk_intro.html) +documentation. + +Features +------------------- +"Moono-lisa" is a monochromatic skin, which offers a modern, flat and minimalistic look which blends very well in modern design. +It comes with the following features: + +- Chameleon feature with brightness. +- High-contrast compatibility. +- Graphics source provided in SVG. + +Directory Structure +------------------- + +CSS parts: +- **editor.css**: the main CSS file. It's simply loading several other files, for easier maintenance, +- **mainui.css**: the file contains styles of entire editor outline structures, +- **toolbar.css**: the file contains styles of the editor toolbar space (top), +- **richcombo.css**: the file contains styles of the rich combo ui elements on toolbar, +- **panel.css**: the file contains styles of the rich combo drop-down, it's not loaded +until the first panel open up, +- **elementspath.css**: the file contains styles of the editor elements path bar (bottom), +- **menu.css**: the file contains styles of all editor menus including context menu and button drop-down, +it's not loaded until the first menu open up, +- **dialog.css**: the CSS files for the dialog UI, it's not loaded until the first dialog open, +- **reset.css**: the file defines the basis of style resets among all editor UI spaces, +- **preset.css**: the file defines the default styles of some UI elements reflecting the skin preference, +- **editor_XYZ.css** and **dialog_XYZ.css**: browser specific CSS hacks. + +Other parts: +- **skin.js**: the only JavaScript part of the skin that registers the skin, its browser specific files and its icons and defines the Chameleon feature, +- **images/**: contains a fill general used images, +- **dev/**: contains SVG and PNG source of the skin icons. + +License +------- + +Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. + +For licensing, see LICENSE.md or [https://ckeditor.com/legal/ckeditor-oss-license](https://ckeditor.com/legal/ckeditor-oss-license) diff --git a/admin/assets/ckeditor/styles.js b/admin/assets/ckeditor/styles.js new file mode 100644 index 0000000..333f11f --- /dev/null +++ b/admin/assets/ckeditor/styles.js @@ -0,0 +1,137 @@ +/** + * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. + * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license + */ + +// This file contains style definitions that can be used by CKEditor plugins. +// +// The most common use for it is the "stylescombo" plugin which shows the Styles drop-down +// list containing all styles in the editor toolbar. Other plugins, like +// the "div" plugin, use a subset of the styles for their features. +// +// If you do not have plugins that depend on this file in your editor build, you can simply +// ignore it. Otherwise it is strongly recommended to customize this file to match your +// website requirements and design properly. +// +// For more information refer to: https://ckeditor.com/docs/ckeditor4/latest/guide/dev_styles.html#style-rules + +CKEDITOR.stylesSet.add( 'default', [ + /* Block styles */ + + // These styles are already available in the "Format" drop-down list ("format" plugin), + // so they are not needed here by default. You may enable them to avoid + // placing the "Format" combo in the toolbar, maintaining the same features. + /* + { name: 'Paragraph', element: 'p' }, + { name: 'Heading 1', element: 'h1' }, + { name: 'Heading 2', element: 'h2' }, + { name: 'Heading 3', element: 'h3' }, + { name: 'Heading 4', element: 'h4' }, + { name: 'Heading 5', element: 'h5' }, + { name: 'Heading 6', element: 'h6' }, + { name: 'Preformatted Text',element: 'pre' }, + { name: 'Address', element: 'address' }, + */ + + { name: 'Italic Title', element: 'h2', styles: { 'font-style': 'italic' } }, + { name: 'Subtitle', element: 'h3', styles: { 'color': '#aaa', 'font-style': 'italic' } }, + { + name: 'Special Container', + element: 'div', + styles: { + padding: '5px 10px', + background: '#eee', + border: '1px solid #ccc' + } + }, + + /* Inline styles */ + + // These are core styles available as toolbar buttons. You may opt enabling + // some of them in the Styles drop-down list, removing them from the toolbar. + // (This requires the "stylescombo" plugin.) + /* + { name: 'Strong', element: 'strong', overrides: 'b' }, + { name: 'Emphasis', element: 'em' , overrides: 'i' }, + { name: 'Underline', element: 'u' }, + { name: 'Strikethrough', element: 'strike' }, + { name: 'Subscript', element: 'sub' }, + { name: 'Superscript', element: 'sup' }, + */ + + { name: 'Marker', element: 'span', attributes: { 'class': 'marker' } }, + + { name: 'Big', element: 'big' }, + { name: 'Small', element: 'small' }, + { name: 'Typewriter', element: 'tt' }, + + { name: 'Computer Code', element: 'code' }, + { name: 'Keyboard Phrase', element: 'kbd' }, + { name: 'Sample Text', element: 'samp' }, + { name: 'Variable', element: 'var' }, + + { name: 'Deleted Text', element: 'del' }, + { name: 'Inserted Text', element: 'ins' }, + + { name: 'Cited Work', element: 'cite' }, + { name: 'Inline Quotation', element: 'q' }, + + { name: 'Language: RTL', element: 'span', attributes: { 'dir': 'rtl' } }, + { name: 'Language: LTR', element: 'span', attributes: { 'dir': 'ltr' } }, + + /* Object styles */ + + { + name: 'Styled Image (left)', + element: 'img', + attributes: { 'class': 'left' } + }, + + { + name: 'Styled Image (right)', + element: 'img', + attributes: { 'class': 'right' } + }, + + { + name: 'Compact Table', + element: 'table', + attributes: { + cellpadding: '5', + cellspacing: '0', + border: '1', + bordercolor: '#ccc' + }, + styles: { + 'border-collapse': 'collapse' + } + }, + + { name: 'Borderless Table', element: 'table', styles: { 'border-style': 'hidden', 'background-color': '#E6E6FA' } }, + { name: 'Square Bulleted List', element: 'ul', styles: { 'list-style-type': 'square' } }, + + /* Widget styles */ + + { name: 'Clean Image', type: 'widget', widget: 'image', attributes: { 'class': 'image-clean' } }, + { name: 'Grayscale Image', type: 'widget', widget: 'image', attributes: { 'class': 'image-grayscale' } }, + + { name: 'Featured Snippet', type: 'widget', widget: 'codeSnippet', attributes: { 'class': 'code-featured' } }, + + { name: 'Featured Formula', type: 'widget', widget: 'mathjax', attributes: { 'class': 'math-featured' } }, + + { name: '240p', type: 'widget', widget: 'embedSemantic', attributes: { 'class': 'embed-240p' }, group: 'size' }, + { name: '360p', type: 'widget', widget: 'embedSemantic', attributes: { 'class': 'embed-360p' }, group: 'size' }, + { name: '480p', type: 'widget', widget: 'embedSemantic', attributes: { 'class': 'embed-480p' }, group: 'size' }, + { name: '720p', type: 'widget', widget: 'embedSemantic', attributes: { 'class': 'embed-720p' }, group: 'size' }, + { name: '1080p', type: 'widget', widget: 'embedSemantic', attributes: { 'class': 'embed-1080p' }, group: 'size' }, + + // Adding space after the style name is an intended workaround. For now, there + // is no option to create two styles with the same name for different widget types. See https://dev.ckeditor.com/ticket/16664. + { name: '240p ', type: 'widget', widget: 'embed', attributes: { 'class': 'embed-240p' }, group: 'size' }, + { name: '360p ', type: 'widget', widget: 'embed', attributes: { 'class': 'embed-360p' }, group: 'size' }, + { name: '480p ', type: 'widget', widget: 'embed', attributes: { 'class': 'embed-480p' }, group: 'size' }, + { name: '720p ', type: 'widget', widget: 'embed', attributes: { 'class': 'embed-720p' }, group: 'size' }, + { name: '1080p ', type: 'widget', widget: 'embed', attributes: { 'class': 'embed-1080p' }, group: 'size' } + +] ); + diff --git a/admin/assets/ckeditor/vendor/promise.js b/admin/assets/ckeditor/vendor/promise.js new file mode 100644 index 0000000..c4d9912 --- /dev/null +++ b/admin/assets/ckeditor/vendor/promise.js @@ -0,0 +1,13 @@ +(function(v,w){"object"===typeof exports&&"undefined"!==typeof module?module.exports=w():"function"===typeof define&&define.amd?define(w):v.ES6Promise=w()})(this,function(){function v(a){return"function"===typeof a}function w(){return function(){return process.nextTick(n)}}function R(){return"undefined"!==typeof B?function(){B(n)}:C()}function S(){var a=0,b=new J(n),c=document.createTextNode("");b.observe(c,{characterData:!0});return function(){c.data=a=++a%2}}function T(){var a=new MessageChannel; +a.port1.onmessage=n;return function(){return a.port2.postMessage(0)}}function C(){var a=setTimeout;return function(){return a(n,1)}}function n(){for(var a=0;aimg { + margin-left:20px; +} + +/*============================================== + MENU STYLES + =============================================*/ + + +.user-image { + margin: 25px auto; +-webkit-border-radius: 10px; +-moz-border-radius: 10px; +border-radius: 10px; +max-height:170px; +max-width:170px; +} + +.navbar-cls-top .navbar-brand { + color: #fff; +background: crimson; +width: 260px; +text-align: center; +height: 60px; +font-size: 30px; +font-weight: 700; +} +.active-menu { + background-color:crimson!important; +} + +.arrow { + float: right; +} + +.fa.arrow:before { + content: "\f104"; +} + +.active > a > .fa.arrow:before { + content: "\f107"; +} + + +.nav-second-level li, +.nav-third-level li { + border-bottom: none !important; +} + +.nav-second-level li a { + padding-left: 37px; +} + +.nav-third-level li a { + padding-left: 55px; +} +.sidebar-collapse , .sidebar-collapse .nav{ + background:none; +} +.sidebar-collapse .nav { + padding:0; +} +.sidebar-collapse .nav > li > a { + color:#fff; + background:#202020; + text-shadow:none; + +} +.sidebar-collapse > .nav > li > a { + padding:15px 10px; +} +.sidebar-collapse > .nav > li { + border-bottom: 1px solid rgba(107, 108, 109, 0.19); +} +.sidebar-collapse .nav > li > a:hover, +.sidebar-collapse .nav > li > a:focus { + + background:#0A0A0A; + outline:0; +} + +.nav-second-level > li > a:before , +.nav-third-level > li > a:before { + content:""; + display:block; + position:absolute; + left:20px; + width:15px; + height:1px; + background:crimson; + top:20px; +} +.nav-second-level > li > a:after, +.nav-third-level > li > a:after { + content:""; + display:block; + position:absolute; + left:20px; + width:1px; + height:100%; + background:crimson; + top:0px; + z-index:10; +} +.nav-second-level > li:last-child > a:after, +.nav-third-level > li:last-child > a:after { + height:50%; +} +.nav-third-level > li > a:after, +.nav-third-level > li > a:before { + left:40px; +} +.navbar-side { + border:none; + background-color: #202020; + +} +.navbar-cls-top { + background:#4D4D4D; + border-bottom:none; + +} +.navbar-cls-top .navbar-brand:hover { + +background: crimson; +color:#fff; + +} + +.navbar-default { +border:0px solid black; + +} +.navbar-header { + background: #e97100; +} +.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus { +background-color: #e97100; +} +.navbar-default .navbar-toggle { +border-color: #fff; +} + +.navbar-default .navbar-toggle .icon-bar { +background-color: #FFF; +} +.nav > li > a > i { + margin-right:10px; +} +/*============================================== + UI ELEMENTS STYLES + =============================================*/ +.btn-circle { +width: 50px; +height: 50px; +padding: 6px 0; + -webkit-border-radius: 25px; +-moz-border-radius: 25px; +border-radius: 25px; +text-align: center; +font-size: 12px; +line-height: 1.428571429; +} + +/*============================================== + MEDIA QUERIES + =============================================*/ + + @media(min-width:768px) { + #page-wrapper{ + margin: 0 0 0 260px; + padding: 15px 30px; + min-height: 1200px; + + } + + + .navbar-side { + z-index: 1; + position: absolute; + width: 260px; + } + + .navbar { + border-radius: 0px; +} + +} + + diff --git a/admin/assets/css/font-awesome.css b/admin/assets/css/font-awesome.css new file mode 100644 index 0000000..43dccaa --- /dev/null +++ b/admin/assets/css/font-awesome.css @@ -0,0 +1,1672 @@ +/*! + * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */ +/* FONT PATH + * -------------------------- */ +@font-face { + font-family: 'FontAwesome'; + src: url('../font-awesome/fonts/fontawesome-webfont.eot?v=4.2.0'); + src: url('../font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('../font-awesome/fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('../font-awesome/fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('../font-awesome/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg'); + font-weight: normal; + font-style: normal; +} +.fa { + display: inline-block; + font: normal normal normal 14px/1 FontAwesome; + font-size: inherit; + text-rendering: auto; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +/* makes the font 33% larger relative to the icon container */ +.fa-lg { + font-size: 1.33333333em; + line-height: 0.75em; + vertical-align: -15%; +} +.fa-2x { + font-size: 2em; +} +.fa-3x { + font-size: 3em; +} +.fa-4x { + font-size: 4em; +} +.fa-5x { + font-size: 5em; +} +.fa-fw { + width: 1.28571429em; + text-align: center; +} +.fa-ul { + padding-left: 0; + margin-left: 2.14285714em; + list-style-type: none; +} +.fa-ul > li { + position: relative; +} +.fa-li { + position: absolute; + left: -2.14285714em; + width: 2.14285714em; + top: 0.14285714em; + text-align: center; +} +.fa-li.fa-lg { + left: -1.85714286em; +} +.fa-border { + padding: .2em .25em .15em; + border: solid 0.08em #eeeeee; + border-radius: .1em; +} +.pull-right { + float: right; +} +.pull-left { + float: left; +} +.fa.pull-left { + margin-right: .3em; +} +.fa.pull-right { + margin-left: .3em; +} +.fa-spin { + -webkit-animation: fa-spin 2s infinite linear; + animation: fa-spin 2s infinite linear; +} +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +.fa-rotate-90 { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1); + -webkit-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} +.fa-rotate-180 { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2); + -webkit-transform: rotate(180deg); + -ms-transform: rotate(180deg); + transform: rotate(180deg); +} +.fa-rotate-270 { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); + -webkit-transform: rotate(270deg); + -ms-transform: rotate(270deg); + transform: rotate(270deg); +} +.fa-flip-horizontal { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1); + -webkit-transform: scale(-1, 1); + -ms-transform: scale(-1, 1); + transform: scale(-1, 1); +} +.fa-flip-vertical { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1); + -webkit-transform: scale(1, -1); + -ms-transform: scale(1, -1); + transform: scale(1, -1); +} +:root .fa-rotate-90, +:root .fa-rotate-180, +:root .fa-rotate-270, +:root .fa-flip-horizontal, +:root .fa-flip-vertical { + filter: none; +} +.fa-stack { + position: relative; + display: inline-block; + width: 2em; + height: 2em; + line-height: 2em; + vertical-align: middle; +} +.fa-stack-1x, +.fa-stack-2x { + position: absolute; + left: 0; + width: 100%; + text-align: center; +} +.fa-stack-1x { + line-height: inherit; +} +.fa-stack-2x { + font-size: 2em; +} +.fa-inverse { + color: #ffffff; +} +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen + readers do not read off random characters that represent icons */ +.fa-glass:before { + content: "\f000"; +} +.fa-music:before { + content: "\f001"; +} +.fa-search:before { + content: "\f002"; +} +.fa-envelope-o:before { + content: "\f003"; +} +.fa-heart:before { + content: "\f004"; +} +.fa-star:before { + content: "\f005"; +} +.fa-star-o:before { + content: "\f006"; +} +.fa-user:before { + content: "\f007"; +} +.fa-film:before { + content: "\f008"; +} +.fa-th-large:before { + content: "\f009"; +} +.fa-th:before { + content: "\f00a"; +} +.fa-th-list:before { + content: "\f00b"; +} +.fa-check:before { + content: "\f00c"; +} +.fa-remove:before, +.fa-close:before, +.fa-times:before { + content: "\f00d"; +} +.fa-search-plus:before { + content: "\f00e"; +} +.fa-search-minus:before { + content: "\f010"; +} +.fa-power-off:before { + content: "\f011"; +} +.fa-signal:before { + content: "\f012"; +} +.fa-gear:before, +.fa-cog:before { + content: "\f013"; +} +.fa-trash-o:before { + content: "\f014"; +} +.fa-home:before { + content: "\f015"; +} +.fa-file-o:before { + content: "\f016"; +} +.fa-clock-o:before { + content: "\f017"; +} +.fa-road:before { + content: "\f018"; +} +.fa-download:before { + content: "\f019"; +} +.fa-arrow-circle-o-down:before { + content: "\f01a"; +} +.fa-arrow-circle-o-up:before { + content: "\f01b"; +} +.fa-inbox:before { + content: "\f01c"; +} +.fa-play-circle-o:before { + content: "\f01d"; +} +.fa-rotate-right:before, +.fa-repeat:before { + content: "\f01e"; +} +.fa-refresh:before { + content: "\f021"; +} +.fa-list-alt:before { + content: "\f022"; +} +.fa-lock:before { + content: "\f023"; +} +.fa-flag:before { + content: "\f024"; +} +.fa-headphones:before { + content: "\f025"; +} +.fa-volume-off:before { + content: "\f026"; +} +.fa-volume-down:before { + content: "\f027"; +} +.fa-volume-up:before { + content: "\f028"; +} +.fa-qrcode:before { + content: "\f029"; +} +.fa-barcode:before { + content: "\f02a"; +} +.fa-tag:before { + content: "\f02b"; +} +.fa-tags:before { + content: "\f02c"; +} +.fa-book:before { + content: "\f02d"; +} +.fa-bookmark:before { + content: "\f02e"; +} +.fa-print:before { + content: "\f02f"; +} +.fa-camera:before { + content: "\f030"; +} +.fa-font:before { + content: "\f031"; +} +.fa-bold:before { + content: "\f032"; +} +.fa-italic:before { + content: "\f033"; +} +.fa-text-height:before { + content: "\f034"; +} +.fa-text-width:before { + content: "\f035"; +} +.fa-align-left:before { + content: "\f036"; +} +.fa-align-center:before { + content: "\f037"; +} +.fa-align-right:before { + content: "\f038"; +} +.fa-align-justify:before { + content: "\f039"; +} +.fa-list:before { + content: "\f03a"; +} +.fa-dedent:before, +.fa-outdent:before { + content: "\f03b"; +} +.fa-indent:before { + content: "\f03c"; +} +.fa-video-camera:before { + content: "\f03d"; +} +.fa-photo:before, +.fa-image:before, +.fa-picture-o:before { + content: "\f03e"; +} +.fa-pencil:before { + content: "\f040"; +} +.fa-map-marker:before { + content: "\f041"; +} +.fa-adjust:before { + content: "\f042"; +} +.fa-tint:before { + content: "\f043"; +} +.fa-edit:before, +.fa-pencil-square-o:before { + content: "\f044"; +} +.fa-share-square-o:before { + content: "\f045"; +} +.fa-check-square-o:before { + content: "\f046"; +} +.fa-arrows:before { + content: "\f047"; +} +.fa-step-backward:before { + content: "\f048"; +} +.fa-fast-backward:before { + content: "\f049"; +} +.fa-backward:before { + content: "\f04a"; +} +.fa-play:before { + content: "\f04b"; +} +.fa-pause:before { + content: "\f04c"; +} +.fa-stop:before { + content: "\f04d"; +} +.fa-forward:before { + content: "\f04e"; +} +.fa-fast-forward:before { + content: "\f050"; +} +.fa-step-forward:before { + content: "\f051"; +} +.fa-eject:before { + content: "\f052"; +} +.fa-chevron-left:before { + content: "\f053"; +} +.fa-chevron-right:before { + content: "\f054"; +} +.fa-plus-circle:before { + content: "\f055"; +} +.fa-minus-circle:before { + content: "\f056"; +} +.fa-times-circle:before { + content: "\f057"; +} +.fa-check-circle:before { + content: "\f058"; +} +.fa-question-circle:before { + content: "\f059"; +} +.fa-info-circle:before { + content: "\f05a"; +} +.fa-crosshairs:before { + content: "\f05b"; +} +.fa-times-circle-o:before { + content: "\f05c"; +} +.fa-check-circle-o:before { + content: "\f05d"; +} +.fa-ban:before { + content: "\f05e"; +} +.fa-arrow-left:before { + content: "\f060"; +} +.fa-arrow-right:before { + content: "\f061"; +} +.fa-arrow-up:before { + content: "\f062"; +} +.fa-arrow-down:before { + content: "\f063"; +} +.fa-mail-forward:before, +.fa-share:before { + content: "\f064"; +} +.fa-expand:before { + content: "\f065"; +} +.fa-compress:before { + content: "\f066"; +} +.fa-plus:before { + content: "\f067"; +} +.fa-minus:before { + content: "\f068"; +} +.fa-asterisk:before { + content: "\f069"; +} +.fa-exclamation-circle:before { + content: "\f06a"; +} +.fa-gift:before { + content: "\f06b"; +} +.fa-leaf:before { + content: "\f06c"; +} +.fa-fire:before { + content: "\f06d"; +} +.fa-eye:before { + content: "\f06e"; +} +.fa-eye-slash:before { + content: "\f070"; +} +.fa-warning:before, +.fa-exclamation-triangle:before { + content: "\f071"; +} +.fa-plane:before { + content: "\f072"; +} +.fa-calendar:before { + content: "\f073"; +} +.fa-random:before { + content: "\f074"; +} +.fa-comment:before { + content: "\f075"; +} +.fa-magnet:before { + content: "\f076"; +} +.fa-chevron-up:before { + content: "\f077"; +} +.fa-chevron-down:before { + content: "\f078"; +} +.fa-retweet:before { + content: "\f079"; +} +.fa-shopping-cart:before { + content: "\f07a"; +} +.fa-folder:before { + content: "\f07b"; +} +.fa-folder-open:before { + content: "\f07c"; +} +.fa-arrows-v:before { + content: "\f07d"; +} +.fa-arrows-h:before { + content: "\f07e"; +} +.fa-bar-chart-o:before, +.fa-bar-chart:before { + content: "\f080"; +} +.fa-twitter-square:before { + content: "\f081"; +} +.fa-facebook-square:before { + content: "\f082"; +} +.fa-camera-retro:before { + content: "\f083"; +} +.fa-key:before { + content: "\f084"; +} +.fa-gears:before, +.fa-cogs:before { + content: "\f085"; +} +.fa-comments:before { + content: "\f086"; +} +.fa-thumbs-o-up:before { + content: "\f087"; +} +.fa-thumbs-o-down:before { + content: "\f088"; +} +.fa-star-half:before { + content: "\f089"; +} +.fa-heart-o:before { + content: "\f08a"; +} +.fa-sign-out:before { + content: "\f08b"; +} +.fa-linkedin-square:before { + content: "\f08c"; +} +.fa-thumb-tack:before { + content: "\f08d"; +} +.fa-external-link:before { + content: "\f08e"; +} +.fa-sign-in:before { + content: "\f090"; +} +.fa-trophy:before { + content: "\f091"; +} +.fa-github-square:before { + content: "\f092"; +} +.fa-upload:before { + content: "\f093"; +} +.fa-lemon-o:before { + content: "\f094"; +} +.fa-phone:before { + content: "\f095"; +} +.fa-square-o:before { + content: "\f096"; +} +.fa-bookmark-o:before { + content: "\f097"; +} +.fa-phone-square:before { + content: "\f098"; +} +.fa-twitter:before { + content: "\f099"; +} +.fa-facebook:before { + content: "\f09a"; +} +.fa-github:before { + content: "\f09b"; +} +.fa-unlock:before { + content: "\f09c"; +} +.fa-credit-card:before { + content: "\f09d"; +} +.fa-rss:before { + content: "\f09e"; +} +.fa-hdd-o:before { + content: "\f0a0"; +} +.fa-bullhorn:before { + content: "\f0a1"; +} +.fa-bell:before { + content: "\f0f3"; +} +.fa-certificate:before { + content: "\f0a3"; +} +.fa-hand-o-right:before { + content: "\f0a4"; +} +.fa-hand-o-left:before { + content: "\f0a5"; +} +.fa-hand-o-up:before { + content: "\f0a6"; +} +.fa-hand-o-down:before { + content: "\f0a7"; +} +.fa-arrow-circle-left:before { + content: "\f0a8"; +} +.fa-arrow-circle-right:before { + content: "\f0a9"; +} +.fa-arrow-circle-up:before { + content: "\f0aa"; +} +.fa-arrow-circle-down:before { + content: "\f0ab"; +} +.fa-globe:before { + content: "\f0ac"; +} +.fa-wrench:before { + content: "\f0ad"; +} +.fa-tasks:before { + content: "\f0ae"; +} +.fa-filter:before { + content: "\f0b0"; +} +.fa-briefcase:before { + content: "\f0b1"; +} +.fa-arrows-alt:before { + content: "\f0b2"; +} +.fa-group:before, +.fa-users:before { + content: "\f0c0"; +} +.fa-chain:before, +.fa-link:before { + content: "\f0c1"; +} +.fa-cloud:before { + content: "\f0c2"; +} +.fa-flask:before { + content: "\f0c3"; +} +.fa-cut:before, +.fa-scissors:before { + content: "\f0c4"; +} +.fa-copy:before, +.fa-files-o:before { + content: "\f0c5"; +} +.fa-paperclip:before { + content: "\f0c6"; +} +.fa-save:before, +.fa-floppy-o:before { + content: "\f0c7"; +} +.fa-square:before { + content: "\f0c8"; +} +.fa-navicon:before, +.fa-reorder:before, +.fa-bars:before { + content: "\f0c9"; +} +.fa-list-ul:before { + content: "\f0ca"; +} +.fa-list-ol:before { + content: "\f0cb"; +} +.fa-strikethrough:before { + content: "\f0cc"; +} +.fa-underline:before { + content: "\f0cd"; +} +.fa-table:before { + content: "\f0ce"; +} +.fa-magic:before { + content: "\f0d0"; +} +.fa-truck:before { + content: "\f0d1"; +} +.fa-pinterest:before { + content: "\f0d2"; +} +.fa-pinterest-square:before { + content: "\f0d3"; +} +.fa-google-plus-square:before { + content: "\f0d4"; +} +.fa-google-plus:before { + content: "\f0d5"; +} +.fa-money:before { + content: "\f0d6"; +} +.fa-caret-down:before { + content: "\f0d7"; +} +.fa-caret-up:before { + content: "\f0d8"; +} +.fa-caret-left:before { + content: "\f0d9"; +} +.fa-caret-right:before { + content: "\f0da"; +} +.fa-columns:before { + content: "\f0db"; +} +.fa-unsorted:before, +.fa-sort:before { + content: "\f0dc"; +} +.fa-sort-down:before, +.fa-sort-desc:before { + content: "\f0dd"; +} +.fa-sort-up:before, +.fa-sort-asc:before { + content: "\f0de"; +} +.fa-envelope:before { + content: "\f0e0"; +} +.fa-linkedin:before { + content: "\f0e1"; +} +.fa-rotate-left:before, +.fa-undo:before { + content: "\f0e2"; +} +.fa-legal:before, +.fa-gavel:before { + content: "\f0e3"; +} +.fa-dashboard:before, +.fa-tachometer:before { + content: "\f0e4"; +} +.fa-comment-o:before { + content: "\f0e5"; +} +.fa-comments-o:before { + content: "\f0e6"; +} +.fa-flash:before, +.fa-bolt:before { + content: "\f0e7"; +} +.fa-sitemap:before { + content: "\f0e8"; +} +.fa-umbrella:before { + content: "\f0e9"; +} +.fa-paste:before, +.fa-clipboard:before { + content: "\f0ea"; +} +.fa-lightbulb-o:before { + content: "\f0eb"; +} +.fa-exchange:before { + content: "\f0ec"; +} +.fa-cloud-download:before { + content: "\f0ed"; +} +.fa-cloud-upload:before { + content: "\f0ee"; +} +.fa-user-md:before { + content: "\f0f0"; +} +.fa-stethoscope:before { + content: "\f0f1"; +} +.fa-suitcase:before { + content: "\f0f2"; +} +.fa-bell-o:before { + content: "\f0a2"; +} +.fa-coffee:before { + content: "\f0f4"; +} +.fa-cutlery:before { + content: "\f0f5"; +} +.fa-file-text-o:before { + content: "\f0f6"; +} +.fa-building-o:before { + content: "\f0f7"; +} +.fa-hospital-o:before { + content: "\f0f8"; +} +.fa-ambulance:before { + content: "\f0f9"; +} +.fa-medkit:before { + content: "\f0fa"; +} +.fa-fighter-jet:before { + content: "\f0fb"; +} +.fa-beer:before { + content: "\f0fc"; +} +.fa-h-square:before { + content: "\f0fd"; +} +.fa-plus-square:before { + content: "\f0fe"; +} +.fa-angle-double-left:before { + content: "\f100"; +} +.fa-angle-double-right:before { + content: "\f101"; +} +.fa-angle-double-up:before { + content: "\f102"; +} +.fa-angle-double-down:before { + content: "\f103"; +} +.fa-angle-left:before { + content: "\f104"; +} +.fa-angle-right:before { + content: "\f105"; +} +.fa-angle-up:before { + content: "\f106"; +} +.fa-angle-down:before { + content: "\f107"; +} +.fa-desktop:before { + content: "\f108"; +} +.fa-laptop:before { + content: "\f109"; +} +.fa-tablet:before { + content: "\f10a"; +} +.fa-mobile-phone:before, +.fa-mobile:before { + content: "\f10b"; +} +.fa-circle-o:before { + content: "\f10c"; +} +.fa-quote-left:before { + content: "\f10d"; +} +.fa-quote-right:before { + content: "\f10e"; +} +.fa-spinner:before { + content: "\f110"; +} +.fa-circle:before { + content: "\f111"; +} +.fa-mail-reply:before, +.fa-reply:before { + content: "\f112"; +} +.fa-github-alt:before { + content: "\f113"; +} +.fa-folder-o:before { + content: "\f114"; +} +.fa-folder-open-o:before { + content: "\f115"; +} +.fa-smile-o:before { + content: "\f118"; +} +.fa-frown-o:before { + content: "\f119"; +} +.fa-meh-o:before { + content: "\f11a"; +} +.fa-gamepad:before { + content: "\f11b"; +} +.fa-keyboard-o:before { + content: "\f11c"; +} +.fa-flag-o:before { + content: "\f11d"; +} +.fa-flag-checkered:before { + content: "\f11e"; +} +.fa-terminal:before { + content: "\f120"; +} +.fa-code:before { + content: "\f121"; +} +.fa-mail-reply-all:before, +.fa-reply-all:before { + content: "\f122"; +} +.fa-star-half-empty:before, +.fa-star-half-full:before, +.fa-star-half-o:before { + content: "\f123"; +} +.fa-location-arrow:before { + content: "\f124"; +} +.fa-crop:before { + content: "\f125"; +} +.fa-code-fork:before { + content: "\f126"; +} +.fa-unlink:before, +.fa-chain-broken:before { + content: "\f127"; +} +.fa-question:before { + content: "\f128"; +} +.fa-info:before { + content: "\f129"; +} +.fa-exclamation:before { + content: "\f12a"; +} +.fa-superscript:before { + content: "\f12b"; +} +.fa-subscript:before { + content: "\f12c"; +} +.fa-eraser:before { + content: "\f12d"; +} +.fa-puzzle-piece:before { + content: "\f12e"; +} +.fa-microphone:before { + content: "\f130"; +} +.fa-microphone-slash:before { + content: "\f131"; +} +.fa-shield:before { + content: "\f132"; +} +.fa-calendar-o:before { + content: "\f133"; +} +.fa-fire-extinguisher:before { + content: "\f134"; +} +.fa-rocket:before { + content: "\f135"; +} +.fa-maxcdn:before { + content: "\f136"; +} +.fa-chevron-circle-left:before { + content: "\f137"; +} +.fa-chevron-circle-right:before { + content: "\f138"; +} +.fa-chevron-circle-up:before { + content: "\f139"; +} +.fa-chevron-circle-down:before { + content: "\f13a"; +} +.fa-html5:before { + content: "\f13b"; +} +.fa-css3:before { + content: "\f13c"; +} +.fa-anchor:before { + content: "\f13d"; +} +.fa-unlock-alt:before { + content: "\f13e"; +} +.fa-bullseye:before { + content: "\f140"; +} +.fa-ellipsis-h:before { + content: "\f141"; +} +.fa-ellipsis-v:before { + content: "\f142"; +} +.fa-rss-square:before { + content: "\f143"; +} +.fa-play-circle:before { + content: "\f144"; +} +.fa-ticket:before { + content: "\f145"; +} +.fa-minus-square:before { + content: "\f146"; +} +.fa-minus-square-o:before { + content: "\f147"; +} +.fa-level-up:before { + content: "\f148"; +} +.fa-level-down:before { + content: "\f149"; +} +.fa-check-square:before { + content: "\f14a"; +} +.fa-pencil-square:before { + content: "\f14b"; +} +.fa-external-link-square:before { + content: "\f14c"; +} +.fa-share-square:before { + content: "\f14d"; +} +.fa-compass:before { + content: "\f14e"; +} +.fa-toggle-down:before, +.fa-caret-square-o-down:before { + content: "\f150"; +} +.fa-toggle-up:before, +.fa-caret-square-o-up:before { + content: "\f151"; +} +.fa-toggle-right:before, +.fa-caret-square-o-right:before { + content: "\f152"; +} +.fa-euro:before, +.fa-eur:before { + content: "\f153"; +} +.fa-gbp:before { + content: "\f154"; +} +.fa-dollar:before, +.fa-usd:before { + content: "\f155"; +} +.fa-rupee:before, +.fa-inr:before { + content: "\f156"; +} +.fa-cny:before, +.fa-rmb:before, +.fa-yen:before, +.fa-jpy:before { + content: "\f157"; +} +.fa-ruble:before, +.fa-rouble:before, +.fa-rub:before { + content: "\f158"; +} +.fa-won:before, +.fa-krw:before { + content: "\f159"; +} +.fa-bitcoin:before, +.fa-btc:before { + content: "\f15a"; +} +.fa-file:before { + content: "\f15b"; +} +.fa-file-text:before { + content: "\f15c"; +} +.fa-sort-alpha-asc:before { + content: "\f15d"; +} +.fa-sort-alpha-desc:before { + content: "\f15e"; +} +.fa-sort-amount-asc:before { + content: "\f160"; +} +.fa-sort-amount-desc:before { + content: "\f161"; +} +.fa-sort-numeric-asc:before { + content: "\f162"; +} +.fa-sort-numeric-desc:before { + content: "\f163"; +} +.fa-thumbs-up:before { + content: "\f164"; +} +.fa-thumbs-down:before { + content: "\f165"; +} +.fa-youtube-square:before { + content: "\f166"; +} +.fa-youtube:before { + content: "\f167"; +} +.fa-xing:before { + content: "\f168"; +} +.fa-xing-square:before { + content: "\f169"; +} +.fa-youtube-play:before { + content: "\f16a"; +} +.fa-dropbox:before { + content: "\f16b"; +} +.fa-stack-overflow:before { + content: "\f16c"; +} +.fa-instagram:before { + content: "\f16d"; +} +.fa-flickr:before { + content: "\f16e"; +} +.fa-adn:before { + content: "\f170"; +} +.fa-bitbucket:before { + content: "\f171"; +} +.fa-bitbucket-square:before { + content: "\f172"; +} +.fa-tumblr:before { + content: "\f173"; +} +.fa-tumblr-square:before { + content: "\f174"; +} +.fa-long-arrow-down:before { + content: "\f175"; +} +.fa-long-arrow-up:before { + content: "\f176"; +} +.fa-long-arrow-left:before { + content: "\f177"; +} +.fa-long-arrow-right:before { + content: "\f178"; +} +.fa-apple:before { + content: "\f179"; +} +.fa-windows:before { + content: "\f17a"; +} +.fa-android:before { + content: "\f17b"; +} +.fa-linux:before { + content: "\f17c"; +} +.fa-dribbble:before { + content: "\f17d"; +} +.fa-skype:before { + content: "\f17e"; +} +.fa-foursquare:before { + content: "\f180"; +} +.fa-trello:before { + content: "\f181"; +} +.fa-female:before { + content: "\f182"; +} +.fa-male:before { + content: "\f183"; +} +.fa-gittip:before { + content: "\f184"; +} +.fa-sun-o:before { + content: "\f185"; +} +.fa-moon-o:before { + content: "\f186"; +} +.fa-archive:before { + content: "\f187"; +} +.fa-bug:before { + content: "\f188"; +} +.fa-vk:before { + content: "\f189"; +} +.fa-weibo:before { + content: "\f18a"; +} +.fa-renren:before { + content: "\f18b"; +} +.fa-pagelines:before { + content: "\f18c"; +} +.fa-stack-exchange:before { + content: "\f18d"; +} +.fa-arrow-circle-o-right:before { + content: "\f18e"; +} +.fa-arrow-circle-o-left:before { + content: "\f190"; +} +.fa-toggle-left:before, +.fa-caret-square-o-left:before { + content: "\f191"; +} +.fa-dot-circle-o:before { + content: "\f192"; +} +.fa-wheelchair:before { + content: "\f193"; +} +.fa-vimeo-square:before { + content: "\f194"; +} +.fa-turkish-lira:before, +.fa-try:before { + content: "\f195"; +} +.fa-plus-square-o:before { + content: "\f196"; +} +.fa-space-shuttle:before { + content: "\f197"; +} +.fa-slack:before { + content: "\f198"; +} +.fa-envelope-square:before { + content: "\f199"; +} +.fa-wordpress:before { + content: "\f19a"; +} +.fa-openid:before { + content: "\f19b"; +} +.fa-institution:before, +.fa-bank:before, +.fa-university:before { + content: "\f19c"; +} +.fa-mortar-board:before, +.fa-graduation-cap:before { + content: "\f19d"; +} +.fa-yahoo:before { + content: "\f19e"; +} +.fa-google:before { + content: "\f1a0"; +} +.fa-reddit:before { + content: "\f1a1"; +} +.fa-reddit-square:before { + content: "\f1a2"; +} +.fa-stumbleupon-circle:before { + content: "\f1a3"; +} +.fa-stumbleupon:before { + content: "\f1a4"; +} +.fa-delicious:before { + content: "\f1a5"; +} +.fa-digg:before { + content: "\f1a6"; +} +.fa-pied-piper:before { + content: "\f1a7"; +} +.fa-pied-piper-alt:before { + content: "\f1a8"; +} +.fa-drupal:before { + content: "\f1a9"; +} +.fa-joomla:before { + content: "\f1aa"; +} +.fa-language:before { + content: "\f1ab"; +} +.fa-fax:before { + content: "\f1ac"; +} +.fa-building:before { + content: "\f1ad"; +} +.fa-child:before { + content: "\f1ae"; +} +.fa-paw:before { + content: "\f1b0"; +} +.fa-spoon:before { + content: "\f1b1"; +} +.fa-cube:before { + content: "\f1b2"; +} +.fa-cubes:before { + content: "\f1b3"; +} +.fa-behance:before { + content: "\f1b4"; +} +.fa-behance-square:before { + content: "\f1b5"; +} +.fa-steam:before { + content: "\f1b6"; +} +.fa-steam-square:before { + content: "\f1b7"; +} +.fa-recycle:before { + content: "\f1b8"; +} +.fa-automobile:before, +.fa-car:before { + content: "\f1b9"; +} +.fa-cab:before, +.fa-taxi:before { + content: "\f1ba"; +} +.fa-tree:before { + content: "\f1bb"; +} +.fa-spotify:before { + content: "\f1bc"; +} +.fa-deviantart:before { + content: "\f1bd"; +} +.fa-soundcloud:before { + content: "\f1be"; +} +.fa-database:before { + content: "\f1c0"; +} +.fa-file-pdf-o:before { + content: "\f1c1"; +} +.fa-file-word-o:before { + content: "\f1c2"; +} +.fa-file-excel-o:before { + content: "\f1c3"; +} +.fa-file-powerpoint-o:before { + content: "\f1c4"; +} +.fa-file-photo-o:before, +.fa-file-picture-o:before, +.fa-file-image-o:before { + content: "\f1c5"; +} +.fa-file-zip-o:before, +.fa-file-archive-o:before { + content: "\f1c6"; +} +.fa-file-sound-o:before, +.fa-file-audio-o:before { + content: "\f1c7"; +} +.fa-file-movie-o:before, +.fa-file-video-o:before { + content: "\f1c8"; +} +.fa-file-code-o:before { + content: "\f1c9"; +} +.fa-vine:before { + content: "\f1ca"; +} +.fa-codepen:before { + content: "\f1cb"; +} +.fa-jsfiddle:before { + content: "\f1cc"; +} +.fa-life-bouy:before, +.fa-life-buoy:before, +.fa-life-saver:before, +.fa-support:before, +.fa-life-ring:before { + content: "\f1cd"; +} +.fa-circle-o-notch:before { + content: "\f1ce"; +} +.fa-ra:before, +.fa-rebel:before { + content: "\f1d0"; +} +.fa-ge:before, +.fa-empire:before { + content: "\f1d1"; +} +.fa-git-square:before { + content: "\f1d2"; +} +.fa-git:before { + content: "\f1d3"; +} +.fa-hacker-news:before { + content: "\f1d4"; +} +.fa-tencent-weibo:before { + content: "\f1d5"; +} +.fa-qq:before { + content: "\f1d6"; +} +.fa-wechat:before, +.fa-weixin:before { + content: "\f1d7"; +} +.fa-send:before, +.fa-paper-plane:before { + content: "\f1d8"; +} +.fa-send-o:before, +.fa-paper-plane-o:before { + content: "\f1d9"; +} +.fa-history:before { + content: "\f1da"; +} +.fa-circle-thin:before { + content: "\f1db"; +} +.fa-header:before { + content: "\f1dc"; +} +.fa-paragraph:before { + content: "\f1dd"; +} +.fa-sliders:before { + content: "\f1de"; +} +.fa-share-alt:before { + content: "\f1e0"; +} +.fa-share-alt-square:before { + content: "\f1e1"; +} +.fa-bomb:before { + content: "\f1e2"; +} +.fa-soccer-ball-o:before, +.fa-futbol-o:before { + content: "\f1e3"; +} +.fa-tty:before { + content: "\f1e4"; +} +.fa-binoculars:before { + content: "\f1e5"; +} +.fa-plug:before { + content: "\f1e6"; +} +.fa-slideshare:before { + content: "\f1e7"; +} +.fa-twitch:before { + content: "\f1e8"; +} +.fa-yelp:before { + content: "\f1e9"; +} +.fa-newspaper-o:before { + content: "\f1ea"; +} +.fa-wifi:before { + content: "\f1eb"; +} +.fa-calculator:before { + content: "\f1ec"; +} +.fa-paypal:before { + content: "\f1ed"; +} +.fa-google-wallet:before { + content: "\f1ee"; +} +.fa-cc-visa:before { + content: "\f1f0"; +} +.fa-cc-mastercard:before { + content: "\f1f1"; +} +.fa-cc-discover:before { + content: "\f1f2"; +} +.fa-cc-amex:before { + content: "\f1f3"; +} +.fa-cc-paypal:before { + content: "\f1f4"; +} +.fa-cc-stripe:before { + content: "\f1f5"; +} +.fa-bell-slash:before { + content: "\f1f6"; +} +.fa-bell-slash-o:before { + content: "\f1f7"; +} +.fa-trash:before { + content: "\f1f8"; +} +.fa-copyright:before { + content: "\f1f9"; +} +.fa-at:before { + content: "\f1fa"; +} +.fa-eyedropper:before { + content: "\f1fb"; +} +.fa-paint-brush:before { + content: "\f1fc"; +} +.fa-birthday-cake:before { + content: "\f1fd"; +} +.fa-area-chart:before { + content: "\f1fe"; +} +.fa-pie-chart:before { + content: "\f200"; +} +.fa-line-chart:before { + content: "\f201"; +} +.fa-lastfm:before { + content: "\f202"; +} +.fa-lastfm-square:before { + content: "\f203"; +} +.fa-toggle-off:before { + content: "\f204"; +} +.fa-toggle-on:before { + content: "\f205"; +} +.fa-bicycle:before { + content: "\f206"; +} +.fa-bus:before { + content: "\f207"; +} +.fa-ioxhost:before { + content: "\f208"; +} +.fa-angellist:before { + content: "\f209"; +} +.fa-cc:before { + content: "\f20a"; +} +.fa-shekel:before, +.fa-sheqel:before, +.fa-ils:before { + content: "\f20b"; +} +.fa-meanpath:before { + content: "\f20c"; +} diff --git a/admin/assets/css/style.css b/admin/assets/css/style.css new file mode 100644 index 0000000..2080994 --- /dev/null +++ b/admin/assets/css/style.css @@ -0,0 +1,1511 @@ +/* +Author: W3layout +Author URL: http://w3layouts.com +License: Creative Commons Attribution 3.0 Unported +License URL: http://creativecommons.org/licenses/by/3.0/ +*/ +/* reset */ +html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,dl,dt,dd,ol,nav ul,nav li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;} +article, aside, details, figcaption, figure,footer, header, hgroup, menu, nav, section {display: block;} +ol,ul{list-style:none;margin:0;padding:0;} +blockquote,q{quotes:none;} +blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;} +table{border-collapse:collapse;border-spacing:0;} +/* start editing from here */ +a{text-decoration:none;} +.txt-rt{text-align:right;}/* text align right */ +.txt-lt{text-align:left;}/* text align left */ +.txt-center{text-align:center;}/* text align center */ +.float-rt{float:right;}/* float right */ +.float-lt{float:left;}/* float left */ +.clear{clear:both;}/* clear float */ +.pos-relative{position:relative;}/* Position Relative */ +.pos-absolute{position:absolute;}/* Position Absolute */ +.vertical-base{ vertical-align:baseline;}/* vertical align baseline */ +.vertical-top{ vertical-align:top;}/* vertical align top */ +.underline{ padding-bottom:5px; border-bottom: 1px solid #eee; margin:0 0 20px 0;}/* Add 5px bottom padding and a underline */ +nav.vertical ul li{ display:block;}/* vertical menu */ +nav.horizontal ul li{ display: inline-block;}/* horizontal menu */ +img{max-width:100%;} +/*end reset*/ +@font-face { + font-family: 'bebas_neueregular'; + src:url(../fonts/BebasNeue-webfont.ttf) format('truetype'); +} +body { + font-family: 'bebas_neueregular'; + background:#ffffff; + font-size: 100%; +} +.wrap{ + margin:0 auto; + width:80%; +} +.header_bg{ + background: #ffffff; +} +.header{ + padding: 2%; +} +.logo{ + float:left; +} +/*search*/ +.h_search{ + float: right; + position: relative; + border: 1px solid rgb(216, 216, 216); + width: 40.3333%; + margin: 0.5% 15% 0; + border-radius: 2px; + -webkit-border-radius: 2px; + -moz-border-radius: 2px; + -o-border-radius: 2px; +} +.h_search input[type="text"]{ + -webkit-appearance: none; + padding: 6px 16px; + outline: none; + color: #312c3c; + background: #FFFFFF; + border: none; + width: 84.33333%; + line-height: 1.5em; + position: relative; + font-size: 0.8725em; + text-transform: capitalize; +} +.h_search input[type="submit"]{ + -webkit-appearance: none; + background: url('../images/search.png') no-repeat 10px 5px; + padding: 6px 0px; + border: none; + cursor: pointer; + width: 8.33%; + line-height: 1.5em; + outline: none; + position: absolute; + right: 0px; +} +.h_search input[type="submit"]:hover { + background: url('../images/search_h.png') no-repeat 10px 5px; +} +/*------start-top-nav------*/ +.top-nav { + display:none; + position:relative; +} +.nav-item { + float:left; + *display:inline; + zoom:1; +} +.nav-item a { + display:block; + padding:10px 20px; + color:#FFF; + background:#4A4444; +} +.nav-item a:hover,.nav-item a.active { + background: #43B6A8; + color: #ffffff; +} +.nav-mobile { + display: none; + cursor: pointer; + float:left; + background: url(../images/nav_icon.png) 18% 52% no-repeat; + height: 35px; + width: 35px; +} +.nav-mobile { + display:block; +} +.nav { + width:100%; +} +.nav-list { + display:none; +} +.nav-item { + width:100%; + float:none; +} +.nav-item a { + font-family: 'Source Sans Pro', sans-serif; + background: #FFFFFF; + padding: 6px 10px; + color: #555555; + text-transform: uppercase; + border-bottom: 1px solid #E2E2E2; + -webkit-transition: color .2s linear,background .2s linear; + -moz-transition: color .2s linear,background .2s linear; + -o-transition: color .2s linear,background .2s linear; + transition: color .2s linear,background .2s linear; + font-weight: normal; + font-size: 0.8em; +} +.nav-active, .nav-active-inner .nav-inner { + display:block; +} +.top-nav-right{ + float:right; + padding: 7px 10px; +} +.top-header { + padding: 5px 0; +} +.top-nav-right input[type="submit"]{ + background: url(../images/search-icon.png) no-repeat 42% 50% #bd7f1c; + padding:10px 20px; + border: none; + display: block; + float: left; + margin:0; + outline:none; + cursor:pointer; + transition: 0.5s ease; + -o-transition: 0.5s ease; + -webkit-transition: 0.5s ease; +} +.top-nav-right input[type="submit"]:hover{ + background: url(../images/search-icon.png) no-repeat 42% 50% #996004; +} +.top-nav-right input[type="text"]{ + border:none; + float:left; + padding:10px 5px; + outline:none; + display: block; + margin:0; + -webkit-apperance:none; +} +.search_box { + float: right; + width: 30.3333%; + margin-right: 3.333%; + border: 1px solid #FFFFFF; + position: relative; + border-radius: 2px; + -webkit-border-radius: 2px; + -moz-border-radius: 2px; + -o-border-radius: 2px; +} +.search_box form input[type="text"] { + -webkit-appearance: none; + padding: 6px 16px; + outline: none; + color: #ffffff; + background: none; + border: none; + width: 74.33333%; + line-height: 1.5em; + position: relative; + font-size: 0.8725em; + text-transform: capitalize; +} +.search_box form input[type="submit"] { + -webkit-appearance: none; + background: url('../images/search.png') no-repeat 10px 5px; + padding: 6px 0px; + border: none; + cursor: pointer; + width: 20.33%; + line-height: 1.5em; + outline: none; + position: absolute; + right: 0px; +} +/* header_btm */ +.header_btm{ + background: #4CCFC1; +} +.header_sub{ + padding: 0 2%; +} +/* start menu */ +.h_menu{ + font-family: 'bebas_neueregular'; + float:left; + color:#ffffff; + font-size: 1.2em; +} +.h_menu ul li{ + display: inline-block; +} +.h_menu ul li:first-child a{ + padding-left: 0px; +} +.h_menu ul li a{ + display: block; + padding: 14px 18px; + font-size: 1.2em; + text-transform: uppercase; + color: #ffffff; + -webkit-transition: all 0.3s ease-in-out; + -moz-transition: all 0.3s ease-in-out; + -o-transition: all 0.3s ease-in-out; + transition: all 0.3s ease-in-out; +} +.h_menu ul li a:hover{ + color:#f0f0f0; +} +.h_menu ul li.active a{ + color:#f0f0f0; +} +/* start icon styles */ +.h_icon{ + float: right; + width: 10.777%; +} +.icon1:before,.icon1:after { + content: ""; + display: table; +} +.icon1:after { + clear: both; +} +.icon1 li { + float: left; + position: relative; +} +.icon1 li:last-child{ + border-right:none; +} +.icon1 li:hover > a { + color: #fafafa; +} +*html .icon1 li a:hover { /* IE6 only */ + color: #fafafa; +} +.icon1 ul { + width:300px; + margin: 20px 0 0 0; + opacity: 0; + visibility: hidden; + position: absolute; + top: 50px; + z-index: 1; + right: -60px; + background: #ffffff; + -webkit-transition: all .2s ease-in-out; + -moz-transition: all .2s ease-in-out; + -ms-transition: all .2s ease-in-out; + -o-transition: all .2s ease-in-out; + transition: all .2s ease-in-out; + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + -o-border-radius: 5px; + border-radius: 5px; + box-shadow: 0px 2px 6px #777777; + -webkit-box-shadow: 0px 2px 6px #777777; + -moz-box-shadow: 0px 2px 6px #777777; + -o-box-shadow: 0px 2px 6px #777777; +} +.icon1 li:hover > ul { + opacity: 1; + visibility: visible; + margin: 0; +} +.icon1 ul ul { + top: 6px; + left: 20px; + margin: 0 0 0 20px; + border-radius: 5px; + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + -o-border-radius: 5px; +} +.icon1 ul li { + float: none; + display: block; + border: 0; +} +.icon1 ul li:first-child{ + border-top:none; +} +.icon1 ul li:first-child a{ + border-top-left-radius: 5px; + -webkit-border-top-left-radius: 5px; + -moz-border-top-left-radius: 5px; + -o-border-top-left-radius: 5px; +} +.icon1 ul li:last-child { + -moz-box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; +} +.icon1 ul a { + _height: 10px; /*IE6 only*/ + white-space: nowrap; + float: none; + text-transform: none; +} +.active-icon{ + display: block; +} +.icon1 ul li:first-child > a:after { + content: ''; + position: absolute; + right: 0%; + top: -30px; + border-left: 10px solid transparent; + border-right:10px solid transparent; + border-bottom:10px solid #f0f0f0; +} +.icon1 ul ul li:first-child a:after { + left: -100px; + top: 0%; + margin-top: 20px; + border-left: 0; + border-bottom:20px solid transparent; + border-top: 20px solid transparent; + border-right:20px solid #323757; +} +/* Mobile */ +.icon1-trigger { + display: none; +} +.sub-icon1 img{ + border:none; + display:inline-block; + vertical-align:middle; +} +.c1{ + background: url(../images/cart.png) no-repeat 0px 0px; + width: 46px; + height: 46px; + display: inline-block; + vertical-align: middle; + margin-top: 2px; +} +.c1 i{ + font-size: 2em; + color: #999999; + padding-left: 50px; + line-height: 1.5em; + font-weight: 600; +} +.icon1 .profile_img { + margin-top: 3px; +} +.sub-icon1 ul li h3{ + text-align:center; + font-size: 1.5em; + color: #4CCFC1; + margin-bottom: 4%; +} +.sub-icon1 ul li p{ + font-family: 'Source Sans Pro', sans-serif; + text-align:center; + font-size: 0.8925em; + color: #555555; + line-height: 1.8em; +} +.sub-icon1.list{ + padding: 20px 10px; + z-index: 999; +} +.sub-icon1 ul li p a{ + color: #4CCFC1; +} +.sub-icon1 ul li p a:hover{ + color: #555555; + text-decoration:underline; +} +/* start cauersol */ +.cau_left{ + float:left; + width: 47.3333%; + margin-left: 3.33333%; +} +.cau_left:first-child{ + margin-left: 0%; +} +/* start main1 */ +.main_bg1{ + border-top: 4px solid #47BEAF; + background: #40C4B2; +} +.main1{ + padding: 2%; +} +.main1 h2{ + font-size: 2em; + color:#ffffff; + text-shadow: 0 1px 0 rgb(24, 141, 118); +} +/* start main */ +.main_bg{ + background: #ffffff; +} +.main{ + padding: -2%; +} +/* start grids_of_3 */ +.grids_of_3{ + text-align:center; + margin: 4% 0; +} +.grid1_of_3{ + float: left; + width: 29.333%; + margin-left: 4.3333%; + border: 1px solid rgb(223, 223, 223); + position: relative; +} +.grid1_of_3:first-child{ + margin-left: 0; +} +.grid1_of_3 a{ + padding: 2%; + display: block; +} +.grid1_of_3 img{ + margin-top: 8%; +} +.grid1_of_3 h3{ + margin: 6% 0 8%; + font-size: 1.8em; + color: #999999; + -webkit-transition: all 0.3s ease-in-out; + -moz-transition: all 0.3s ease-in-out; + -o-transition: all 0.3s ease-in-out; + transition: all 0.3s ease-in-out; +} +.grid1_of_3:hover h3,.grid1_of_3:hover h4 span{ + color: rgb(24, 141, 118); +} +.b_btm{ + position: absolute; + width: 100%; + border-bottom: 6px solid #3CC395; + left: 0px; + display: block; + bottom: 0px; +} +.price{ + display: block; + margin-bottom: 40px; +} +.price h4{ + font-size: 1.5em; + color: #999999; +} +.price h4 span{ + display: inline-block; + font-size: 1.1em; + background: #3CC395; + color: #ffffff; + padding: 8px 20px; + margin-left: 30px; + -webkit-transition: all 0.3s ease-in-out; + -moz-transition: all 0.3s ease-in-out; + -o-transition: all 0.3s ease-in-out; + transition: all 0.3s ease-in-out; +} +/* start footer */ +.footer_bg{ + background: #40C4B2; +} +.footer{ + padding: 2%; +} +/* start grids_of_3 */ +.grids_of_4{ + margin: 2% 0; +} +.grid1_of_4{ + float: left; + width: 21.333%; + margin-left: 4.3333%; +} +.grid1_of_4:first-child{ + margin-left: 0; +} +.grid1_of_4 h4{ + font-size: 1.8em; + color: #ffffff; +} +.f_nav{ + margin-top: 4%; +} +.f_nav li{ + display: block; +} +.f_nav li a{ + font-family: 'Source Sans Pro', sans-serif; + font-size: 1em; + color: #fefefe; + line-height: 1.8em; + text-transform: capitalize; +} +.f_nav li a:hover{ + color: #ffffff; + text-decoration: underline; +} +/* start footer1 */ +.footer_bg1{ + background: #2DA89B; +} +#toTop { + display: none; + text-decoration: none; + position: fixed; + bottom: 10px; + right: 10px; + overflow: hidden; + width: 34px; + height: 34px; + border: none; + text-indent: 100%; + background: url(../images/top_move.png) no-repeat right top; +} +.copy{ + text-align:center; + font-family: 'Source Sans Pro', sans-serif; +} +.copy p{ + font-size: 0.9725em; + line-height: 1.8em; + color: #ffffff; +} +.copy p a{ + color:#fefefe; + text-decoration: underline; +} +.copy p a:hover{ + text-decoration: none; +} +/*---start-gallery_sale -----*/ +.gallery{ + margin-top: 4%; +} +#info { + -webkit-border-radius:5px; + -moz-border-radius:5px; + -o-border-radius: 5px; + border-radius:5px; + background:#fcf8e3; + border:1px solid #fbeed5; + width:95%; + max-width:900px; + margin:0 auto 40px auto; + font-family:arial; + font-size:12px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -o-box-sizing: border-box; +} +#info .info-wrapper { + padding:10px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -o-box-sizing: border-box; +} +#info a { + color:#c09853; + text-decoration:none; +} +#info p { + margin:5px 0 0 0; +} +.container { + font-family: 'Source Sans Pro', sans-serif; + position: relative; + -webkit-transition: all 1s ease; + -moz-transition: all 1s ease; + -o-transition: all 1s ease; + transition: all 1s ease; +} +#filters { + margin:1%; + padding:0; + list-style:none; +} +#filters li { + float:left; +} +#filters li span { + font-size: 1.2em; + display: block; + padding: 10px 30px; + text-decoration: none; + color: #555555; + cursor: pointer; + text-transform: capitalize; +} +#filters li span.active { + background: #3CC395; + color:#fff; +} +#portfoliolist .portfolio { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -o-box-sizing: border-box; + width:23%; + margin:1%; + display:none; + float:left; + overflow:hidden; +} +.portfolio-wrapper { + overflow:hidden; + position: relative !important; + cursor:pointer; +} +.portfolio img { + max-width:100%; + position: relative; + -webkit-filter: grayscale(50%); + opacity: 5; + transition: all 300ms!important; + -webkit-transition: all 300ms!important; + -moz-transition: all 300ms!important; +} +.portfolio .label { + position: absolute; + width: 100%; + height:40px; + bottom:-40px; +} +.portfolio .label-bg { + background: rgba(76, 207, 193, 0.72); + width: 100%; + height:100%; + position: absolute; + top:0; + left:0; +} +.portfolio .label-text { + text-transform: uppercase; + color:#fff; + position: relative; + z-index:500; + padding:4px 8px; + font-size: 16px; +} +.portfolio .text-category { + color: #555555; + display:block; + font-size:9px; + font-size: 12px; + text-transform:uppercase; +} +/* Self Clearing Goodness */ +.container:after { content: "\0020"; display: block; height: 0; clear: both; visibility: hidden; } + +.clearfix:before, +.clearfix:after, +.row:before, +.row:after { + content: '\0020'; + display: block; + overflow: hidden; + visibility: hidden; + width: 0; + height: 0; } +.row:after, +.clearfix:after { + clear: both; } +.row, +.clearfix { + zoom: 1; } +.clear { + clear: both; + display: block; + overflow: hidden; + visibility: hidden; + width: 0; + height: 0; +} +/* end gallery_sale */ +/* start handbags */ +h2.style{ + font-size: 2em; + color: #777777; + text-shadow: 0 1px 0 #ffffff; +} +h2.top{ + margin-top: 2%; +} +/*service*/ +.service{ + margin: 2% 0; +} +.ser-main{ + float: left; + width: 68.33333%; + margin-right: 2.3333%; + font-family: 'Source Sans Pro', sans-serif; +} +.ser-main h4{ + font-family: 'bebas_neueregular'; + font-size: 2em; + color: #777777; + text-shadow: 0 1px 0 #ffffff; + margin-bottom: 2%; +} +.ser-grid{ + padding: 4% 0; + text-align: center; + border-bottom: 1px solid rgb(238, 238, 238); +} +.ser-grid:last-child{ + border-bottom:none; +} +.ser-grid-list{ + float: left; + width: 28.33333%; + margin-left: 6.33333%; +} +.ser-grid-list:first-child{ + margin-left: 0; +} +.ser-grid-list h5{ + margin: 2% 0 4%; +} +.ser-grid-list h5 a{ + text-transform: capitalize; + font-size: 1.8em; + color: #4CCFC1; + font-family: 'bebas_neueregular'; + text-shadow: 0 1px 0 #ffffff; + -webkit-transition: all 0.3s ease-in-out; + -moz-transition: all 0.3s ease-in-out; + -o-transition: all 0.3s ease-in-out; + transition: all 0.3s ease-in-out; +} +.ser-grid-list h5 a:hover{ + color:#999999; +} +p.para{ + font-size: 0.8725em; + color: #555555; + line-height: 1.8em; +} +/* start contact */ +.contact{ + margin:2% 0; + display: block; +} +.contact h2{ + font-size: 2em; + color: #777777; + text-shadow: 0 1px 0 #ffffff; +} +.map{ + margin: 2% 2% 2% 0; +} +.col{ + display: block; +} +.contact-form{ + position:relative; +} +.contact-form div{ + padding:5px 0; +} +.contact-form span label{ + font-family: 'Source Sans Pro', sans-serif; + color: #777777; + display: block; + font-size: 0.8725em; + padding-bottom: 5px; + text-transform: capitalize; +} +.contact-form input[type="text"], .contact-form textarea { + font-family: 'Source Sans Pro', sans-serif; + background: #FFFFFF; + border: 1px solid #E7E7E7; + color: rgba(85, 81, 81, 0.84); + padding: 8px; + display: block; + width: 96.3333%; + outline: none; + -webkit-appearance: none; + text-transform: capitalize; +} +.contact-form textarea{ + resize:none; + height:120px; +} +.contact-form input[type="submit"]{ + margin-top:10px; + font-family: 'Source Sans Pro', sans-serif; + -webkit-appearance: none; + cursor:pointer; + color: #ffffff; + background: #3CC395; + border:none; + outline:none; + display: inline-block; + text-transform: uppercase; + padding: 12px 38px; + font-size: 0.875em; + -webkit-transition: all 0.3s ease-in-out; + -moz-transition: all 0.3s ease-in-out; + -o-transition: all 0.3s ease-in-out; + transition: all 0.3s ease-in-out; +} +.contact-form input[type="submit"]:hover{ + background: #555555; + color: #ffffff; +} +/*-- start details--*/ +.single{ + padding:2% 0; +} +.left_content{ + width: 72.3333%; + float: left; +} +.left_sidebar{ + width: 22.3333%; + float: left; + margin-left: 4.33333%; +} +.span1_of_1{ + float: left; + width: 52.3333%; +} +.span1_of_1_des{ + float: right; + width: 44.3333%; + margin-left: 3.333%; +} +/* start desc1 */ +.desc1 { + font-family: 'Source Sans Pro', sans-serif; + display: block; + float: right; +} +.desc1 h3{ + text-shadow: 0 1px 0 #ffffff; + font-family: 'bebas_neueregular'; + color:#555555; + font-size:2em; + margin-bottom: 10px; +} +.desc1 h5{ + margin-top: 2%; + font-size: 1.6em; + color: #5EAFA5; + line-height: 1.5em; + text-shadow: 0 1px 0 #ffffff; +} +.desc1 h5 a{ + margin-left:5px; + color:#555555; + text-transform:capitalize; + font-size: 14px; +} +.desc1 h5 a:hover{ + color: #5EAFA5; +} +.desc1 p{ + font-size: 0.8725em; + color: #555555; + line-height: 1.8em; +} +/* start available */ +.available { + margin-top: 10px; + padding: 15px 0; + border-top: 1px solid #EEEEEE; + border-bottom: 1px solid #EEEEEE; +} +.available h4{ + font-size: 1.1em; + color: #777; + margin-bottom: 20px; + text-transform: uppercase; + text-shadow: 0 1px 0 #ffffff; +} +.available li { + display: inline; + font-size: 0.8125em; + padding: 1.5% 2%; + color: #555555; +} +.available li select { + font-family: 'Source Sans Pro', sans-serif; + outline:none; + display: inline; + font-size: 1em; + color: #555555; + margin-left: 10px; + padding: 4px; + border: 1px solid rgb(224, 224, 224); +} +.available span a{ + padding-top: 35px; + display: block; + color: #555555; + font-size: 0.8725em; + text-transform: uppercase; + text-decoration: underline; + margin-right: 10px; +} +.available span a:hover{ + text-decoration: none; +} +/* start share-des */ +.share-desc{ + padding: 20px 0; +} +.share h4{ + font-size: 1.1em; + color: #777; + margin-bottom: 10px; + text-transform: uppercase; + text-shadow: 0 1px 0 #ffffff; +} +.share_nav{ + float:left; +} +.share_nav li { + display: inline-block; + margin: 5px 6px; +} +.share_nav li a { + background: #9C9C9C; + padding: 10px; + display: block; + -webkit-transition: all 0.3s ease-out; + -moz-transition: all 0.3s ease-out; + -ms-transition: all 0.3s ease-out; + -o-transition: all 0.3s ease-out; + transition: all 0.3s ease-out; + border-radius: 30px; + -webkit-border-radius: 30px; + -moz-border-radius: 30px; + -o-border-radius: 30px; +} +.share_nav li a:hover{ + background: #3CC395; +} +.share li img { + vertical-align:middle; +} +.btn_form{ + margin-top: 6%; + float: left; +} +.btn_form form input[type="submit"]{ + font-family: 'Source Sans Pro', sans-serif; + cursor:pointer; + border:none; + outline:none; + display: inline-block; + font-size: 1em; + padding: 10px 34px; + background: #555555; + color:#fff; + text-transform: capitalize; + -webkit-transition: all 0.3s ease-in-out; + -moz-transition: all 0.3s ease-in-out; + -o-transition: all 0.3s ease-in-out; + transition: all 0.3s ease-in-out; +} +.btn_form form input[type="submit"]:hover{ + background: #3CC395; +} +.span_right{ + float: right; +} +/* end description */ +/* start sellers */ +.sellers{ + font-family: 'Source Sans Pro', sans-serif; + border: 1px solid rgb(235, 235, 235); +} +.sellers h4{ + font-family: 'bebas_neueregular'; + font-size: 2em; + color: #ffffff; + line-height: 1.5em; + text-shadow: 0 1px 0 #1C6159; + padding: 10px 20px; + background: #4CCFC1; +} +.single-nav li { + list-style-image: url(../images/marker1.gif); + border-bottom: 1px dotted #E8E8E8; +} +.single-nav li a { + text-transform: capitalize; + font-size: 0.8725em; + color: #555555; + padding: 15px 20px; + display: block; +} +.single-nav li a:hover { + background: #FCFCFC; + color: #5EAFA5; +} +.banner-wrap{ + padding-bottom: 5%; +} +.banner-wrap.bottom_banner.color_link .main_link { + border-color: #f0f0f0; + background: #4CCFC1; + -webkit-transition: all 300ms linear; + -moz-transition: all 300ms linear; + -o-transition: all 300ms linear; + transition: all 300ms linear; +} +.main_link { + border: 5px solid #E5E5E5; + background: #FFF; + padding: 15px 20px 10px; + text-decoration: none!important; + text-align: center; + display: block; + min-height: 68px; +} +.banner-wrap.bottom_banner .main_link figure { + display: inline-block; + margin: 0 9px 0 0; + vertical-align: middle; +} +.banner-wrap.bottom_banner.color_link .main_link h5{ + color: #fff; +} +.banner-wrap.bottom_banner .main_link h5 { + text-transform: uppercase; + margin: -5px 0 0 0; + display: inline-block; + text-align: left; + font-size: 16px; + line-height: 18px; + letter-spacing: -1px; + vertical-align: middle; +} +.banner-wrap.bottom_banner .main_link h5 span { + font-size:1.5em; + line-height: 29px; +} +.banner-wrap.bottom_banner.color_link .main_link p { + color: #fff; +} +.banner-wrap.bottom_banner.color_link .main_link:hover { + text-decoration: none; + background: #3CC395; + border-color: #f0f0f0; +} +.brands{ + border:1px solid #ddd; +} +.brands h1{ + background: #F3F3F3; + color: #333; + padding: 10px; + font-size: 1.3em; +} +.field{ + padding: 10px; + text-align: center; +} +.field select { + font-family: 'Source Sans Pro', sans-serif; + border: 1px solid #F0EFEE; + background: #FFF; + color: #555; + outline: none; + padding: 4px; + font-size: 0.89em; +} +.field select.select1 { + width: 100%; +} +/* start tabs */ +.tabs { + position: relative; + margin: 40px auto; +} +.tabs input { + position: absolute; + z-index: 1000; + width: 248px; + height: 44px; + left: 0px; + top: 0px; + opacity: 0; + -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; + filter: alpha(opacity=0); + cursor: pointer; +} +.tabs input#tab-2{ + left: 257px; +} +.tabs input#tab-3{ + left: 515px; +} +.tabs label { + font-family: 'bebas_neueregular'; + cursor: pointer; + background: #FAFAFA; + font-size: 20px; + line-height: 45px; + height: 45px; + position: relative; + padding: 0 40px; + float: left; + display: block; + width: 20.3333%; + color:#999999; + font-weight: normal; + text-transform: capitalize; + text-align: center; + text-shadow: 1px 1px 1px rgba(255,255,255,0.3); + box-shadow: 2px 0 2px rgba(0,0,0,0.1), -2px 0 2px rgba(0,0,0,0.1); + -webkit-box-shadow: 2px 0 2px rgba(0,0,0,0.1), -2px 0 2px rgba(0,0,0,0.1); + -moz-box-shadow: 2px 0 2px rgba(0,0,0,0.1), -2px 0 2px rgba(0,0,0,0.1); + -o-box-shadow: 2px 0 2px rgba(0,0,0,0.1), -2px 0 2px rgba(0,0,0,0.1); + border-radius: 3px 3px 0 0; + -webkit-border-radius: 3px 3px 0 0; + -moz-border-radius: 3px 3px 0 0; + -o-border-radius: 3px 3px 0 0; + -webkit-transition: all 0.3s ease-out; + -moz-transition: all 0.3s ease-out; + -ms-transition: all 0.3s ease-out; + -o-transition: all 0.3s ease-out; + transition: all 0.3s ease-out; +} +.tabs label:after { + content: ''; + background: #fff; + position: absolute; + bottom: -2px; + left: 0; + width: 100%; + height: 2px; + display: block; +} +.tabs input:hover + label { + background: #3DC4B7; + color:#ffffff; + font-weight: normal; +} +.tabs label:first-of-type { + border-left: 1px solid rgb(241, 238, 238); + z-index: 4; + box-shadow: 0px 0 2px rgba(197, 197, 197, 1); + -webkit-box-shadow: 0px 0 2px rgba(197, 197, 197, 1); + -moz-box-shadow: 0px 0 2px rgba(197, 197, 197, 1); + -o-box-shadow: 0px 0 2px rgba(197, 197, 197, 1); +} +.tab-label-2 { + z-index: 1; +} +.tab-label-3 { + z-index: 2; +} +.tab-label-4 { + z-index: 1; +} +.tabs input:checked + label { + cursor:pointer; + color: #3DC4B6; + background: #fff; + z-index: 6; +} +.clear-shadow { + clear: both; +} +.content { + overflow: scroll; + background: #fff; + position: relative; + width: 100%; + min-height: 450px; + z-index: 5; + border: 1px solid rgb(223, 223, 223); + box-shadow: 0 -2px 3px -2px rgba(0,0,0,0.2), 0 2px 2px rgba(0,0,0,0.1); + -webkit-box-shadow: 0 -2px 3px -2px rgba(0,0,0,0.2), 0 2px 2px rgba(0,0,0,0.1); + -moz-box-shadow: 0 -2px 3px -2px rgba(0,0,0,0.2), 0 2px 2px rgba(0,0,0,0.1); + -o-box-shadow: 0 -2px 3px -2px rgba(0,0,0,0.2), 0 2px 2px rgba(0,0,0,0.1); + border-radius: 0 3px 3px 3px; + -webkit-border-radius: 0 3px 3px 3px; + -moz-border-radius: 0 3px 3px 3px; + -o-border-radius: 0 3px 3px 3px; +} +.content div { + width:98%; + position: absolute; + top: 0; + left: 0; + padding: 10px; + z-index: 1; + opacity: 0; + -webkit-transition: opacity linear 0.1s; + -moz-transition: opacity linear 0.1s; + -o-transition: opacity linear 0.1s; + -ms-transition: opacity linear 0.1s; + transition: opacity linear 0.1s; +} +.tabs input.tab-selector-1:checked ~ .content .content-1, +.tabs input.tab-selector-2:checked ~ .content .content-2, +.tabs input.tab-selector-3:checked ~ .content .content-3, +.tabs input.tab-selector-4:checked ~ .content .content-4 { + z-index: 100; + -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; + filter: alpha(opacity=100); + opacity: 1; + -webkit-transition: opacity ease-out 0.2s 0.1s; + -moz-transition: opacity ease-out 0.2s 0.1s; + -o-transition: opacity ease-out 0.2s 0.1s; + -ms-transition: opacity ease-out 0.2s 0.1s; + transition: opacity ease-out 0.2s 0.1s; +} +.content div h2,.content div h3{ + color: #398080; +} +.content div p { + text-align: left; + font-size: 0.85em; + color: #5c5c5c; + line-height: 2em; + font-family: 'Source Sans Pro', sans-serif; +} +.content ul li:before{ + content: url('../images/arrow.png'); + padding-top: 4px; + padding-right: 8px; + display: inline-block; + vertical-align: middle; + line-height: 2em; +} +.content ul{ + margin-left: 20px; +} +.content ul li { + font-size: 0.8725em; + color: #555555; + font-family: 'Source Sans Pro', sans-serif; +} +/* end tabs */ +/***** Media Quries *****/ +@media only screen and (max-width: 1366px) { + .wrap{ + width:95%; + } + .h_menu ul li a { + padding: 10px 12px; + } + .span1_of_1 { + width: 52.3333%; + } + .span1_of_1_des { + width: 42.3333%; + float: left; + } +} +@media only screen and (max-width: 1280px) { + .wrap{ + width:95%; + } + .h_menu ul li a { + padding: 10px 10px; + } + .desc1 h3 { + font-size: 1.4em; + } + .product-image { + width: 350px; + } +} +@media only screen and (max-width: 1024px) { + .wrap{ + width:95%; + } + .h_search input[type="submit"] { + width: 10.33%; + } + .h_menu ul li a { + padding: 10px 4px; + } + .grid1_of_3 h3 { + font-size: 1.5em; + } + .span1_of_1 { + width: 100%; + } + .span1_of_1_des { + width: 38.3333%; + } + .single-nav li a { + padding: 10px 10px; + } +} +@media only screen and (max-width: 800px) { + .wrap{ + width:95%; + } + .h_search { + display: none; + } + .h_icon { + width: 18.777%; + } + .h_menu { + display: none; + } + .header_sub { + padding: 1% 2%; + } + .top-nav { + display: block; + } + .ser-main { + float: none; + width: 100%; + margin-right: 0; + } + .left_sidebar { + width: 100%; + float: none; + margin-left: 0%; + } + .ser-grid-list h5 a { + font-size: 1.5em; + } + .grid1_of_4 { + float: left; + width: 45.333%; + margin-top: 2.3333%; + } + .grid1_of_4:nth-child(3){ + margin-left: 0; + } + .price h4 { + font-size: 1.4em; + } + .left_content { + width: 100%; + float: none; + } + .span1_of_1 { + width: 100%; + } + .span1_of_1_des { + width: 42.3333%; + } + .tabs input { + width: 226px; + } + .tabs input#tab-2 { + left: 220px; + } + .tabs input#tab-3 { + left: 444px; + } + .desc1 h5 { + font-size: 1.4em; + } + .btn_form { + margin-top: 4%; + } +} +@media only screen and (max-width: 640px){ + .wrap{ + width:95%; + } + .search_box { + margin-right: 0; + } + #filters li span { + padding: 10px 20px; + } + .price h4 { + font-size: 1.2em; + } + .span1_of_1 { + float:none; + width: 100%; + } + .span1_of_1_des { + margin-top:4%; + float:none; + width: 100%; + margin-left: 0; + } + .tabs input { + width: 75px; + } + .tabs label { + width: 18.3333%; + } +} +@media only screen and (max-width: 480px) { + .wrap{ + width:95%; + } + .h_icon { + width: 25.777%; + } + .search_box { + width: 44.3333%; + } + .grid1_of_3 { + float: none; + width: 99.333%; + margin-left: 0%; + margin-bottom: 4%; + } + .grid1_of_4 { + margin-left:0; + float: none; + width: 99.333%; + } + .ser-grid-list { + float: none; + width: 100%; + margin-left: 0%; + margin-bottom: 4%; + } + .ser-grid-list h5 { + margin: 2% 0 1%; + } + .tabs input { + width: 99%; + } + .tabs label { + width: 100%; + float:none; + padding: 0; + } + .tabs input#tab-2 { + left: 0px; + } + .tabs input#tab-3 { + left: 0px; + } + .tabs input#tab-4 { + left: 0px; + } + .content div { + width: 94%; + } + .product-essential { + padding: 5px; + } +} +@media only screen and (max-width: 320px) { + .wrap{ + width:95%; + } + .h_icon { + width: 34.777%; + } + .search_box { + width: 60.3333%; + } + .product-essential { + padding: 0px; + } + .tabs { + margin: 10px auto; + } +} \ No newline at end of file diff --git a/admin/assets/datatables.css b/admin/assets/datatables.css new file mode 100644 index 0000000..2691799 --- /dev/null +++ b/admin/assets/datatables.css @@ -0,0 +1,7123 @@ +/* + * This combined file was created by the DataTables downloader builder: + * https://datatables.net/download + * + * To rebuild or modify this file with the latest versions of the included + * software please visit: + * https://datatables.net/download/#bs-3.3.7/jszip-2.5.0/pdfmake-0.1.32/dt-1.10.16/b-1.5.1/b-flash-1.5.1/b-html5-1.5.1/b-print-1.5.1 + * + * Included libraries: + * Bootstrap 3 3.3.7, JSZip 2.5.0, pdfmake 0.1.32, DataTables 1.10.16, Buttons 1.5.1, Flash export 1.5.1, HTML5 export 1.5.1, Print view 1.5.1 + */ + +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ +html { + font-family: sans-serif; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background-color: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + margin: .67em 0; + font-size: 2em; +} +mark { + color: #000; + background: #ff0; +} +small { + font-size: 80%; +} +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} +sup { + top: -.5em; +} +sub { + bottom: -.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + height: 0; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + margin: 0; + font: inherit; + color: inherit; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + padding: .35em .625em .75em; + margin: 0 2px; + border: 1px solid #c0c0c0; +} +legend { + padding: 0; + border: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-spacing: 0; + border-collapse: collapse; +} +td, +th { + padding: 0; +} +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ +@media print { + *, + *:before, + *:after { + color: #000 !important; + text-shadow: none !important; + background: transparent !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + .navbar { + display: none; + } + .btn > .caret, + .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .label { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table td, + .table th { + background-color: #fff !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #ddd !important; + } +} +@font-face { + font-family: 'Glyphicons Halflings'; + + src: url('Bootstrap-3.3.7/fonts/glyphicons-halflings-regular.eot'); + src: url('Bootstrap-3.3.7/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('Bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('Bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff') format('woff'), url('Bootstrap-3.3.7/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('Bootstrap-3.3.7/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.glyphicon-asterisk:before { + content: "\002a"; +} +.glyphicon-plus:before { + content: "\002b"; +} +.glyphicon-euro:before, +.glyphicon-eur:before { + content: "\20ac"; +} +.glyphicon-minus:before { + content: "\2212"; +} +.glyphicon-cloud:before { + content: "\2601"; +} +.glyphicon-envelope:before { + content: "\2709"; +} +.glyphicon-pencil:before { + content: "\270f"; +} +.glyphicon-glass:before { + content: "\e001"; +} +.glyphicon-music:before { + content: "\e002"; +} +.glyphicon-search:before { + content: "\e003"; +} +.glyphicon-heart:before { + content: "\e005"; +} +.glyphicon-star:before { + content: "\e006"; +} +.glyphicon-star-empty:before { + content: "\e007"; +} +.glyphicon-user:before { + content: "\e008"; +} +.glyphicon-film:before { + content: "\e009"; +} +.glyphicon-th-large:before { + content: "\e010"; +} +.glyphicon-th:before { + content: "\e011"; +} +.glyphicon-th-list:before { + content: "\e012"; +} +.glyphicon-ok:before { + content: "\e013"; +} +.glyphicon-remove:before { + content: "\e014"; +} +.glyphicon-zoom-in:before { + content: "\e015"; +} +.glyphicon-zoom-out:before { + content: "\e016"; +} +.glyphicon-off:before { + content: "\e017"; +} +.glyphicon-signal:before { + content: "\e018"; +} +.glyphicon-cog:before { + content: "\e019"; +} +.glyphicon-trash:before { + content: "\e020"; +} +.glyphicon-home:before { + content: "\e021"; +} +.glyphicon-file:before { + content: "\e022"; +} +.glyphicon-time:before { + content: "\e023"; +} +.glyphicon-road:before { + content: "\e024"; +} +.glyphicon-download-alt:before { + content: "\e025"; +} +.glyphicon-download:before { + content: "\e026"; +} +.glyphicon-upload:before { + content: "\e027"; +} +.glyphicon-inbox:before { + content: "\e028"; +} +.glyphicon-play-circle:before { + content: "\e029"; +} +.glyphicon-repeat:before { + content: "\e030"; +} +.glyphicon-refresh:before { + content: "\e031"; +} +.glyphicon-list-alt:before { + content: "\e032"; +} +.glyphicon-lock:before { + content: "\e033"; +} +.glyphicon-flag:before { + content: "\e034"; +} +.glyphicon-headphones:before { + content: "\e035"; +} +.glyphicon-volume-off:before { + content: "\e036"; +} +.glyphicon-volume-down:before { + content: "\e037"; +} +.glyphicon-volume-up:before { + content: "\e038"; +} +.glyphicon-qrcode:before { + content: "\e039"; +} +.glyphicon-barcode:before { + content: "\e040"; +} +.glyphicon-tag:before { + content: "\e041"; +} +.glyphicon-tags:before { + content: "\e042"; +} +.glyphicon-book:before { + content: "\e043"; +} +.glyphicon-bookmark:before { + content: "\e044"; +} +.glyphicon-print:before { + content: "\e045"; +} +.glyphicon-camera:before { + content: "\e046"; +} +.glyphicon-font:before { + content: "\e047"; +} +.glyphicon-bold:before { + content: "\e048"; +} +.glyphicon-italic:before { + content: "\e049"; +} +.glyphicon-text-height:before { + content: "\e050"; +} +.glyphicon-text-width:before { + content: "\e051"; +} +.glyphicon-align-left:before { + content: "\e052"; +} +.glyphicon-align-center:before { + content: "\e053"; +} +.glyphicon-align-right:before { + content: "\e054"; +} +.glyphicon-align-justify:before { + content: "\e055"; +} +.glyphicon-list:before { + content: "\e056"; +} +.glyphicon-indent-left:before { + content: "\e057"; +} +.glyphicon-indent-right:before { + content: "\e058"; +} +.glyphicon-facetime-video:before { + content: "\e059"; +} +.glyphicon-picture:before { + content: "\e060"; +} +.glyphicon-map-marker:before { + content: "\e062"; +} +.glyphicon-adjust:before { + content: "\e063"; +} +.glyphicon-tint:before { + content: "\e064"; +} +.glyphicon-edit:before { + content: "\e065"; +} +.glyphicon-share:before { + content: "\e066"; +} +.glyphicon-check:before { + content: "\e067"; +} +.glyphicon-move:before { + content: "\e068"; +} +.glyphicon-step-backward:before { + content: "\e069"; +} +.glyphicon-fast-backward:before { + content: "\e070"; +} +.glyphicon-backward:before { + content: "\e071"; +} +.glyphicon-play:before { + content: "\e072"; +} +.glyphicon-pause:before { + content: "\e073"; +} +.glyphicon-stop:before { + content: "\e074"; +} +.glyphicon-forward:before { + content: "\e075"; +} +.glyphicon-fast-forward:before { + content: "\e076"; +} +.glyphicon-step-forward:before { + content: "\e077"; +} +.glyphicon-eject:before { + content: "\e078"; +} +.glyphicon-chevron-left:before { + content: "\e079"; +} +.glyphicon-chevron-right:before { + content: "\e080"; +} +.glyphicon-plus-sign:before { + content: "\e081"; +} +.glyphicon-minus-sign:before { + content: "\e082"; +} +.glyphicon-remove-sign:before { + content: "\e083"; +} +.glyphicon-ok-sign:before { + content: "\e084"; +} +.glyphicon-question-sign:before { + content: "\e085"; +} +.glyphicon-info-sign:before { + content: "\e086"; +} +.glyphicon-screenshot:before { + content: "\e087"; +} +.glyphicon-remove-circle:before { + content: "\e088"; +} +.glyphicon-ok-circle:before { + content: "\e089"; +} +.glyphicon-ban-circle:before { + content: "\e090"; +} +.glyphicon-arrow-left:before { + content: "\e091"; +} +.glyphicon-arrow-right:before { + content: "\e092"; +} +.glyphicon-arrow-up:before { + content: "\e093"; +} +.glyphicon-arrow-down:before { + content: "\e094"; +} +.glyphicon-share-alt:before { + content: "\e095"; +} +.glyphicon-resize-full:before { + content: "\e096"; +} +.glyphicon-resize-small:before { + content: "\e097"; +} +.glyphicon-exclamation-sign:before { + content: "\e101"; +} +.glyphicon-gift:before { + content: "\e102"; +} +.glyphicon-leaf:before { + content: "\e103"; +} +.glyphicon-fire:before { + content: "\e104"; +} +.glyphicon-eye-open:before { + content: "\e105"; +} +.glyphicon-eye-close:before { + content: "\e106"; +} +.glyphicon-warning-sign:before { + content: "\e107"; +} +.glyphicon-plane:before { + content: "\e108"; +} +.glyphicon-calendar:before { + content: "\e109"; +} +.glyphicon-random:before { + content: "\e110"; +} +.glyphicon-comment:before { + content: "\e111"; +} +.glyphicon-magnet:before { + content: "\e112"; +} +.glyphicon-chevron-up:before { + content: "\e113"; +} +.glyphicon-chevron-down:before { + content: "\e114"; +} +.glyphicon-retweet:before { + content: "\e115"; +} +.glyphicon-shopping-cart:before { + content: "\e116"; +} +.glyphicon-folder-close:before { + content: "\e117"; +} +.glyphicon-folder-open:before { + content: "\e118"; +} +.glyphicon-resize-vertical:before { + content: "\e119"; +} +.glyphicon-resize-horizontal:before { + content: "\e120"; +} +.glyphicon-hdd:before { + content: "\e121"; +} +.glyphicon-bullhorn:before { + content: "\e122"; +} +.glyphicon-bell:before { + content: "\e123"; +} +.glyphicon-certificate:before { + content: "\e124"; +} +.glyphicon-thumbs-up:before { + content: "\e125"; +} +.glyphicon-thumbs-down:before { + content: "\e126"; +} +.glyphicon-hand-right:before { + content: "\e127"; +} +.glyphicon-hand-left:before { + content: "\e128"; +} +.glyphicon-hand-up:before { + content: "\e129"; +} +.glyphicon-hand-down:before { + content: "\e130"; +} +.glyphicon-circle-arrow-right:before { + content: "\e131"; +} +.glyphicon-circle-arrow-left:before { + content: "\e132"; +} +.glyphicon-circle-arrow-up:before { + content: "\e133"; +} +.glyphicon-circle-arrow-down:before { + content: "\e134"; +} +.glyphicon-globe:before { + content: "\e135"; +} +.glyphicon-wrench:before { + content: "\e136"; +} +.glyphicon-tasks:before { + content: "\e137"; +} +.glyphicon-filter:before { + content: "\e138"; +} +.glyphicon-briefcase:before { + content: "\e139"; +} +.glyphicon-fullscreen:before { + content: "\e140"; +} +.glyphicon-dashboard:before { + content: "\e141"; +} +.glyphicon-paperclip:before { + content: "\e142"; +} +.glyphicon-heart-empty:before { + content: "\e143"; +} +.glyphicon-link:before { + content: "\e144"; +} +.glyphicon-phone:before { + content: "\e145"; +} +.glyphicon-pushpin:before { + content: "\e146"; +} +.glyphicon-usd:before { + content: "\e148"; +} +.glyphicon-gbp:before { + content: "\e149"; +} +.glyphicon-sort:before { + content: "\e150"; +} +.glyphicon-sort-by-alphabet:before { + content: "\e151"; +} +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} +.glyphicon-sort-by-order:before { + content: "\e153"; +} +.glyphicon-sort-by-order-alt:before { + content: "\e154"; +} +.glyphicon-sort-by-attributes:before { + content: "\e155"; +} +.glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} +.glyphicon-unchecked:before { + content: "\e157"; +} +.glyphicon-expand:before { + content: "\e158"; +} +.glyphicon-collapse-down:before { + content: "\e159"; +} +.glyphicon-collapse-up:before { + content: "\e160"; +} +.glyphicon-log-in:before { + content: "\e161"; +} +.glyphicon-flash:before { + content: "\e162"; +} +.glyphicon-log-out:before { + content: "\e163"; +} +.glyphicon-new-window:before { + content: "\e164"; +} +.glyphicon-record:before { + content: "\e165"; +} +.glyphicon-save:before { + content: "\e166"; +} +.glyphicon-open:before { + content: "\e167"; +} +.glyphicon-saved:before { + content: "\e168"; +} +.glyphicon-import:before { + content: "\e169"; +} +.glyphicon-export:before { + content: "\e170"; +} +.glyphicon-send:before { + content: "\e171"; +} +.glyphicon-floppy-disk:before { + content: "\e172"; +} +.glyphicon-floppy-saved:before { + content: "\e173"; +} +.glyphicon-floppy-remove:before { + content: "\e174"; +} +.glyphicon-floppy-save:before { + content: "\e175"; +} +.glyphicon-floppy-open:before { + content: "\e176"; +} +.glyphicon-credit-card:before { + content: "\e177"; +} +.glyphicon-transfer:before { + content: "\e178"; +} +.glyphicon-cutlery:before { + content: "\e179"; +} +.glyphicon-header:before { + content: "\e180"; +} +.glyphicon-compressed:before { + content: "\e181"; +} +.glyphicon-earphone:before { + content: "\e182"; +} +.glyphicon-phone-alt:before { + content: "\e183"; +} +.glyphicon-tower:before { + content: "\e184"; +} +.glyphicon-stats:before { + content: "\e185"; +} +.glyphicon-sd-video:before { + content: "\e186"; +} +.glyphicon-hd-video:before { + content: "\e187"; +} +.glyphicon-subtitles:before { + content: "\e188"; +} +.glyphicon-sound-stereo:before { + content: "\e189"; +} +.glyphicon-sound-dolby:before { + content: "\e190"; +} +.glyphicon-sound-5-1:before { + content: "\e191"; +} +.glyphicon-sound-6-1:before { + content: "\e192"; +} +.glyphicon-sound-7-1:before { + content: "\e193"; +} +.glyphicon-copyright-mark:before { + content: "\e194"; +} +.glyphicon-registration-mark:before { + content: "\e195"; +} +.glyphicon-cloud-download:before { + content: "\e197"; +} +.glyphicon-cloud-upload:before { + content: "\e198"; +} +.glyphicon-tree-conifer:before { + content: "\e199"; +} +.glyphicon-tree-deciduous:before { + content: "\e200"; +} +.glyphicon-cd:before { + content: "\e201"; +} +.glyphicon-save-file:before { + content: "\e202"; +} +.glyphicon-open-file:before { + content: "\e203"; +} +.glyphicon-level-up:before { + content: "\e204"; +} +.glyphicon-copy:before { + content: "\e205"; +} +.glyphicon-paste:before { + content: "\e206"; +} +.glyphicon-alert:before { + content: "\e209"; +} +.glyphicon-equalizer:before { + content: "\e210"; +} +.glyphicon-king:before { + content: "\e211"; +} +.glyphicon-queen:before { + content: "\e212"; +} +.glyphicon-pawn:before { + content: "\e213"; +} +.glyphicon-bishop:before { + content: "\e214"; +} +.glyphicon-knight:before { + content: "\e215"; +} +.glyphicon-baby-formula:before { + content: "\e216"; +} +.glyphicon-tent:before { + content: "\26fa"; +} +.glyphicon-blackboard:before { + content: "\e218"; +} +.glyphicon-bed:before { + content: "\e219"; +} +.glyphicon-apple:before { + content: "\f8ff"; +} +.glyphicon-erase:before { + content: "\e221"; +} +.glyphicon-hourglass:before { + content: "\231b"; +} +.glyphicon-lamp:before { + content: "\e223"; +} +.glyphicon-duplicate:before { + content: "\e224"; +} +.glyphicon-piggy-bank:before { + content: "\e225"; +} +.glyphicon-scissors:before { + content: "\e226"; +} +.glyphicon-bitcoin:before { + content: "\e227"; +} +.glyphicon-btc:before { + content: "\e227"; +} +.glyphicon-xbt:before { + content: "\e227"; +} +.glyphicon-yen:before { + content: "\00a5"; +} +.glyphicon-jpy:before { + content: "\00a5"; +} +.glyphicon-ruble:before { + content: "\20bd"; +} +.glyphicon-rub:before { + content: "\20bd"; +} +.glyphicon-scale:before { + content: "\e230"; +} +.glyphicon-ice-lolly:before { + content: "\e231"; +} +.glyphicon-ice-lolly-tasted:before { + content: "\e232"; +} +.glyphicon-education:before { + content: "\e233"; +} +.glyphicon-option-horizontal:before { + content: "\e234"; +} +.glyphicon-option-vertical:before { + content: "\e235"; +} +.glyphicon-menu-hamburger:before { + content: "\e236"; +} +.glyphicon-modal-window:before { + content: "\e237"; +} +.glyphicon-oil:before { + content: "\e238"; +} +.glyphicon-grain:before { + content: "\e239"; +} +.glyphicon-sunglasses:before { + content: "\e240"; +} +.glyphicon-text-size:before { + content: "\e241"; +} +.glyphicon-text-color:before { + content: "\e242"; +} +.glyphicon-text-background:before { + content: "\e243"; +} +.glyphicon-object-align-top:before { + content: "\e244"; +} +.glyphicon-object-align-bottom:before { + content: "\e245"; +} +.glyphicon-object-align-horizontal:before { + content: "\e246"; +} +.glyphicon-object-align-left:before { + content: "\e247"; +} +.glyphicon-object-align-vertical:before { + content: "\e248"; +} +.glyphicon-object-align-right:before { + content: "\e249"; +} +.glyphicon-triangle-right:before { + content: "\e250"; +} +.glyphicon-triangle-left:before { + content: "\e251"; +} +.glyphicon-triangle-bottom:before { + content: "\e252"; +} +.glyphicon-triangle-top:before { + content: "\e253"; +} +.glyphicon-console:before { + content: "\e254"; +} +.glyphicon-superscript:before { + content: "\e255"; +} +.glyphicon-subscript:before { + content: "\e256"; +} +.glyphicon-menu-left:before { + content: "\e257"; +} +.glyphicon-menu-right:before { + content: "\e258"; +} +.glyphicon-menu-down:before { + content: "\e259"; +} +.glyphicon-menu-up:before { + content: "\e260"; +} +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +html { + font-size: 10px; + + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #333; + background-color: #fff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #337ab7; + text-decoration: none; +} +a:hover, +a:focus { + color: #23527c; + text-decoration: underline; +} +a:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive, +.thumbnail > img, +.thumbnail a > img, +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 6px; +} +.img-thumbnail { + display: inline-block; + max-width: 100%; + height: auto; + padding: 4px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: all .2s ease-in-out; + -o-transition: all .2s ease-in-out; + transition: all .2s ease-in-out; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eee; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.sr-only-focusable:active, +.sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; +} +[role="button"] { + cursor: pointer; +} +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: inherit; + font-weight: 500; + line-height: 1.1; + color: inherit; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #777; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +mark, +.mark { + padding: .2em; + background-color: #fcf8e3; +} +.text-left { + text-align: left; +} +.text-right { + text-align: right; +} +.text-center { + text-align: center; +} +.text-justify { + text-align: justify; +} +.text-nowrap { + white-space: nowrap; +} +.text-lowercase { + text-transform: lowercase; +} +.text-uppercase { + text-transform: uppercase; +} +.text-capitalize { + text-transform: capitalize; +} +.text-muted { + color: #777; +} +.text-primary { + color: #337ab7; +} +a.text-primary:hover, +a.text-primary:focus { + color: #286090; +} +.text-success { + color: #3c763d; +} +a.text-success:hover, +a.text-success:focus { + color: #2b542c; +} +.text-info { + color: #31708f; +} +a.text-info:hover, +a.text-info:focus { + color: #245269; +} +.text-warning { + color: #8a6d3b; +} +a.text-warning:hover, +a.text-warning:focus { + color: #66512c; +} +.text-danger { + color: #a94442; +} +a.text-danger:hover, +a.text-danger:focus { + color: #843534; +} +.bg-primary { + color: #fff; + background-color: #337ab7; +} +a.bg-primary:hover, +a.bg-primary:focus { + background-color: #286090; +} +.bg-success { + background-color: #dff0d8; +} +a.bg-success:hover, +a.bg-success:focus { + background-color: #c1e2b3; +} +.bg-info { + background-color: #d9edf7; +} +a.bg-info:hover, +a.bg-info:focus { + background-color: #afd9ee; +} +.bg-warning { + background-color: #fcf8e3; +} +a.bg-warning:hover, +a.bg-warning:focus { + background-color: #f7ecb5; +} +.bg-danger { + background-color: #f2dede; +} +a.bg-danger:hover, +a.bg-danger:focus { + background-color: #e4b9b9; +} +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #eee; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + margin-left: -5px; + list-style: none; +} +.list-inline > li { + display: inline-block; + padding-right: 5px; + padding-left: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + overflow: hidden; + clear: left; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #777; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #eee; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #777; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + text-align: right; + border-right: 5px solid #eee; + border-left: 0; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #fff; + background-color: #333; + border-radius: 3px; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none; +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + color: #333; + word-break: break-all; + word-wrap: break-word; + background-color: #f5f5f5; + border: 1px solid #ccc; + border-radius: 4px; +} +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; +} +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.container { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1170px; + } +} +.container-fluid { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +.row { + margin-right: -15px; + margin-left: -15px; +} +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + float: left; +} +.col-xs-12 { + width: 100%; +} +.col-xs-11 { + width: 91.66666667%; +} +.col-xs-10 { + width: 83.33333333%; +} +.col-xs-9 { + width: 75%; +} +.col-xs-8 { + width: 66.66666667%; +} +.col-xs-7 { + width: 58.33333333%; +} +.col-xs-6 { + width: 50%; +} +.col-xs-5 { + width: 41.66666667%; +} +.col-xs-4 { + width: 33.33333333%; +} +.col-xs-3 { + width: 25%; +} +.col-xs-2 { + width: 16.66666667%; +} +.col-xs-1 { + width: 8.33333333%; +} +.col-xs-pull-12 { + right: 100%; +} +.col-xs-pull-11 { + right: 91.66666667%; +} +.col-xs-pull-10 { + right: 83.33333333%; +} +.col-xs-pull-9 { + right: 75%; +} +.col-xs-pull-8 { + right: 66.66666667%; +} +.col-xs-pull-7 { + right: 58.33333333%; +} +.col-xs-pull-6 { + right: 50%; +} +.col-xs-pull-5 { + right: 41.66666667%; +} +.col-xs-pull-4 { + right: 33.33333333%; +} +.col-xs-pull-3 { + right: 25%; +} +.col-xs-pull-2 { + right: 16.66666667%; +} +.col-xs-pull-1 { + right: 8.33333333%; +} +.col-xs-pull-0 { + right: auto; +} +.col-xs-push-12 { + left: 100%; +} +.col-xs-push-11 { + left: 91.66666667%; +} +.col-xs-push-10 { + left: 83.33333333%; +} +.col-xs-push-9 { + left: 75%; +} +.col-xs-push-8 { + left: 66.66666667%; +} +.col-xs-push-7 { + left: 58.33333333%; +} +.col-xs-push-6 { + left: 50%; +} +.col-xs-push-5 { + left: 41.66666667%; +} +.col-xs-push-4 { + left: 33.33333333%; +} +.col-xs-push-3 { + left: 25%; +} +.col-xs-push-2 { + left: 16.66666667%; +} +.col-xs-push-1 { + left: 8.33333333%; +} +.col-xs-push-0 { + left: auto; +} +.col-xs-offset-12 { + margin-left: 100%; +} +.col-xs-offset-11 { + margin-left: 91.66666667%; +} +.col-xs-offset-10 { + margin-left: 83.33333333%; +} +.col-xs-offset-9 { + margin-left: 75%; +} +.col-xs-offset-8 { + margin-left: 66.66666667%; +} +.col-xs-offset-7 { + margin-left: 58.33333333%; +} +.col-xs-offset-6 { + margin-left: 50%; +} +.col-xs-offset-5 { + margin-left: 41.66666667%; +} +.col-xs-offset-4 { + margin-left: 33.33333333%; +} +.col-xs-offset-3 { + margin-left: 25%; +} +.col-xs-offset-2 { + margin-left: 16.66666667%; +} +.col-xs-offset-1 { + margin-left: 8.33333333%; +} +.col-xs-offset-0 { + margin-left: 0; +} +@media (min-width: 768px) { + .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { + float: left; + } + .col-sm-12 { + width: 100%; + } + .col-sm-11 { + width: 91.66666667%; + } + .col-sm-10 { + width: 83.33333333%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-8 { + width: 66.66666667%; + } + .col-sm-7 { + width: 58.33333333%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-5 { + width: 41.66666667%; + } + .col-sm-4 { + width: 33.33333333%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-2 { + width: 16.66666667%; + } + .col-sm-1 { + width: 8.33333333%; + } + .col-sm-pull-12 { + right: 100%; + } + .col-sm-pull-11 { + right: 91.66666667%; + } + .col-sm-pull-10 { + right: 83.33333333%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-8 { + right: 66.66666667%; + } + .col-sm-pull-7 { + right: 58.33333333%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-5 { + right: 41.66666667%; + } + .col-sm-pull-4 { + right: 33.33333333%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-2 { + right: 16.66666667%; + } + .col-sm-pull-1 { + right: 8.33333333%; + } + .col-sm-pull-0 { + right: auto; + } + .col-sm-push-12 { + left: 100%; + } + .col-sm-push-11 { + left: 91.66666667%; + } + .col-sm-push-10 { + left: 83.33333333%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-8 { + left: 66.66666667%; + } + .col-sm-push-7 { + left: 58.33333333%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-5 { + left: 41.66666667%; + } + .col-sm-push-4 { + left: 33.33333333%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-2 { + left: 16.66666667%; + } + .col-sm-push-1 { + left: 8.33333333%; + } + .col-sm-push-0 { + left: auto; + } + .col-sm-offset-12 { + margin-left: 100%; + } + .col-sm-offset-11 { + margin-left: 91.66666667%; + } + .col-sm-offset-10 { + margin-left: 83.33333333%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-8 { + margin-left: 66.66666667%; + } + .col-sm-offset-7 { + margin-left: 58.33333333%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-5 { + margin-left: 41.66666667%; + } + .col-sm-offset-4 { + margin-left: 33.33333333%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-2 { + margin-left: 16.66666667%; + } + .col-sm-offset-1 { + margin-left: 8.33333333%; + } + .col-sm-offset-0 { + margin-left: 0; + } +} +@media (min-width: 992px) { + .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + float: left; + } + .col-md-12 { + width: 100%; + } + .col-md-11 { + width: 91.66666667%; + } + .col-md-10 { + width: 83.33333333%; + } + .col-md-9 { + width: 75%; + } + .col-md-8 { + width: 66.66666667%; + } + .col-md-7 { + width: 58.33333333%; + } + .col-md-6 { + width: 50%; + } + .col-md-5 { + width: 41.66666667%; + } + .col-md-4 { + width: 33.33333333%; + } + .col-md-3 { + width: 25%; + } + .col-md-2 { + width: 16.66666667%; + } + .col-md-1 { + width: 8.33333333%; + } + .col-md-pull-12 { + right: 100%; + } + .col-md-pull-11 { + right: 91.66666667%; + } + .col-md-pull-10 { + right: 83.33333333%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-8 { + right: 66.66666667%; + } + .col-md-pull-7 { + right: 58.33333333%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-5 { + right: 41.66666667%; + } + .col-md-pull-4 { + right: 33.33333333%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-2 { + right: 16.66666667%; + } + .col-md-pull-1 { + right: 8.33333333%; + } + .col-md-pull-0 { + right: auto; + } + .col-md-push-12 { + left: 100%; + } + .col-md-push-11 { + left: 91.66666667%; + } + .col-md-push-10 { + left: 83.33333333%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-8 { + left: 66.66666667%; + } + .col-md-push-7 { + left: 58.33333333%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-5 { + left: 41.66666667%; + } + .col-md-push-4 { + left: 33.33333333%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-2 { + left: 16.66666667%; + } + .col-md-push-1 { + left: 8.33333333%; + } + .col-md-push-0 { + left: auto; + } + .col-md-offset-12 { + margin-left: 100%; + } + .col-md-offset-11 { + margin-left: 91.66666667%; + } + .col-md-offset-10 { + margin-left: 83.33333333%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-8 { + margin-left: 66.66666667%; + } + .col-md-offset-7 { + margin-left: 58.33333333%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-5 { + margin-left: 41.66666667%; + } + .col-md-offset-4 { + margin-left: 33.33333333%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-2 { + margin-left: 16.66666667%; + } + .col-md-offset-1 { + margin-left: 8.33333333%; + } + .col-md-offset-0 { + margin-left: 0; + } +} +@media (min-width: 1200px) { + .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { + float: left; + } + .col-lg-12 { + width: 100%; + } + .col-lg-11 { + width: 91.66666667%; + } + .col-lg-10 { + width: 83.33333333%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-8 { + width: 66.66666667%; + } + .col-lg-7 { + width: 58.33333333%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-5 { + width: 41.66666667%; + } + .col-lg-4 { + width: 33.33333333%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-2 { + width: 16.66666667%; + } + .col-lg-1 { + width: 8.33333333%; + } + .col-lg-pull-12 { + right: 100%; + } + .col-lg-pull-11 { + right: 91.66666667%; + } + .col-lg-pull-10 { + right: 83.33333333%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-8 { + right: 66.66666667%; + } + .col-lg-pull-7 { + right: 58.33333333%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-5 { + right: 41.66666667%; + } + .col-lg-pull-4 { + right: 33.33333333%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-2 { + right: 16.66666667%; + } + .col-lg-pull-1 { + right: 8.33333333%; + } + .col-lg-pull-0 { + right: auto; + } + .col-lg-push-12 { + left: 100%; + } + .col-lg-push-11 { + left: 91.66666667%; + } + .col-lg-push-10 { + left: 83.33333333%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-8 { + left: 66.66666667%; + } + .col-lg-push-7 { + left: 58.33333333%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-5 { + left: 41.66666667%; + } + .col-lg-push-4 { + left: 33.33333333%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-2 { + left: 16.66666667%; + } + .col-lg-push-1 { + left: 8.33333333%; + } + .col-lg-push-0 { + left: auto; + } + .col-lg-offset-12 { + margin-left: 100%; + } + .col-lg-offset-11 { + margin-left: 91.66666667%; + } + .col-lg-offset-10 { + margin-left: 83.33333333%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-8 { + margin-left: 66.66666667%; + } + .col-lg-offset-7 { + margin-left: 58.33333333%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-5 { + margin-left: 41.66666667%; + } + .col-lg-offset-4 { + margin-left: 33.33333333%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-2 { + margin-left: 16.66666667%; + } + .col-lg-offset-1 { + margin-left: 8.33333333%; + } + .col-lg-offset-0 { + margin-left: 0; + } +} +table { + background-color: transparent; +} +caption { + padding-top: 8px; + padding-bottom: 8px; + color: #777; + text-align: left; +} +th { + text-align: left; +} +.table { + width: 100%; + max-width: 100%; + margin-bottom: 20px; +} +.table > thead > tr > th, +.table > tbody > tr > th, +.table > tfoot > tr > th, +.table > thead > tr > td, +.table > tbody > tr > td, +.table > tfoot > tr > td { + padding: 8px; + line-height: 1.42857143; + vertical-align: top; + border-top: 1px solid #ddd; +} +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #ddd; +} +.table > caption + thead > tr:first-child > th, +.table > colgroup + thead > tr:first-child > th, +.table > thead:first-child > tr:first-child > th, +.table > caption + thead > tr:first-child > td, +.table > colgroup + thead > tr:first-child > td, +.table > thead:first-child > tr:first-child > td { + border-top: 0; +} +.table > tbody + tbody { + border-top: 2px solid #ddd; +} +.table .table { + background-color: #fff; +} +.table-condensed > thead > tr > th, +.table-condensed > tbody > tr > th, +.table-condensed > tfoot > tr > th, +.table-condensed > thead > tr > td, +.table-condensed > tbody > tr > td, +.table-condensed > tfoot > tr > td { + padding: 5px; +} +.table-bordered { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.table-striped > tbody > tr:nth-of-type(odd) { + background-color: #f9f9f9; +} +.table-hover > tbody > tr:hover { + background-color: #f5f5f5; +} +table col[class*="col-"] { + position: static; + display: table-column; + float: none; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + display: table-cell; + float: none; +} +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #f5f5f5; +} +.table-hover > tbody > tr > td.active:hover, +.table-hover > tbody > tr > th.active:hover, +.table-hover > tbody > tr.active:hover > td, +.table-hover > tbody > tr:hover > .active, +.table-hover > tbody > tr.active:hover > th { + background-color: #e8e8e8; +} +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #dff0d8; +} +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td, +.table-hover > tbody > tr:hover > .success, +.table-hover > tbody > tr.success:hover > th { + background-color: #d0e9c6; +} +.table > thead > tr > td.info, +.table > tbody > tr > td.info, +.table > tfoot > tr > td.info, +.table > thead > tr > th.info, +.table > tbody > tr > th.info, +.table > tfoot > tr > th.info, +.table > thead > tr.info > td, +.table > tbody > tr.info > td, +.table > tfoot > tr.info > td, +.table > thead > tr.info > th, +.table > tbody > tr.info > th, +.table > tfoot > tr.info > th { + background-color: #d9edf7; +} +.table-hover > tbody > tr > td.info:hover, +.table-hover > tbody > tr > th.info:hover, +.table-hover > tbody > tr.info:hover > td, +.table-hover > tbody > tr:hover > .info, +.table-hover > tbody > tr.info:hover > th { + background-color: #c4e3f3; +} +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #fcf8e3; +} +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td, +.table-hover > tbody > tr:hover > .warning, +.table-hover > tbody > tr.warning:hover > th { + background-color: #faf2cc; +} +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #f2dede; +} +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td, +.table-hover > tbody > tr:hover > .danger, +.table-hover > tbody > tr.danger:hover > th { + background-color: #ebcccc; +} +.table-responsive { + min-height: .01%; + overflow-x: auto; +} +@media screen and (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #ddd; + } + .table-responsive > .table { + margin-bottom: 0; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} +label { + display: inline-block; + max-width: 100%; + margin-bottom: 5px; + font-weight: bold; +} +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + line-height: normal; +} +input[type="file"] { + display: block; +} +input[type="range"] { + display: block; + width: 100%; +} +select[multiple], +select[size] { + height: auto; +} +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 7px; + font-size: 14px; + line-height: 1.42857143; + color: #555; +} +.form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.42857143; + color: #555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); +} +.form-control::-moz-placeholder { + color: #999; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #999; +} +.form-control::-webkit-input-placeholder { + color: #999; +} +.form-control::-ms-expand { + background-color: transparent; + border: 0; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #eee; + opacity: 1; +} +.form-control[disabled], +fieldset[disabled] .form-control { + cursor: not-allowed; +} +textarea.form-control { + height: auto; +} +input[type="search"] { + -webkit-appearance: none; +} +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"].form-control, + input[type="time"].form-control, + input[type="datetime-local"].form-control, + input[type="month"].form-control { + line-height: 34px; + } + input[type="date"].input-sm, + input[type="time"].input-sm, + input[type="datetime-local"].input-sm, + input[type="month"].input-sm, + .input-group-sm input[type="date"], + .input-group-sm input[type="time"], + .input-group-sm input[type="datetime-local"], + .input-group-sm input[type="month"] { + line-height: 30px; + } + input[type="date"].input-lg, + input[type="time"].input-lg, + input[type="datetime-local"].input-lg, + input[type="month"].input-lg, + .input-group-lg input[type="date"], + .input-group-lg input[type="time"], + .input-group-lg input[type="datetime-local"], + .input-group-lg input[type="month"] { + line-height: 46px; + } +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px; +} +.radio label, +.checkbox label { + min-height: 20px; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + position: absolute; + margin-top: 4px \9; + margin-left: -20px; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + vertical-align: middle; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +input[type="radio"][disabled], +input[type="checkbox"][disabled], +input[type="radio"].disabled, +input[type="checkbox"].disabled, +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"] { + cursor: not-allowed; +} +.radio-inline.disabled, +.checkbox-inline.disabled, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} +.radio.disabled label, +.checkbox.disabled label, +fieldset[disabled] .radio label, +fieldset[disabled] .checkbox label { + cursor: not-allowed; +} +.form-control-static { + min-height: 34px; + padding-top: 7px; + padding-bottom: 7px; + margin-bottom: 0; +} +.form-control-static.input-lg, +.form-control-static.input-sm { + padding-right: 0; + padding-left: 0; +} +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-sm { + height: 30px; + line-height: 30px; +} +textarea.input-sm, +select[multiple].input-sm { + height: auto; +} +.form-group-sm .form-control { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.form-group-sm select.form-control { + height: 30px; + line-height: 30px; +} +.form-group-sm textarea.form-control, +.form-group-sm select[multiple].form-control { + height: auto; +} +.form-group-sm .form-control-static { + height: 30px; + min-height: 32px; + padding: 6px 10px; + font-size: 12px; + line-height: 1.5; +} +.input-lg { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-lg { + height: 46px; + line-height: 46px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.form-group-lg select.form-control { + height: 46px; + line-height: 46px; +} +.form-group-lg textarea.form-control, +.form-group-lg select[multiple].form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 46px; + min-height: 38px; + padding: 11px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 42.5px; +} +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 34px; + height: 34px; + line-height: 34px; + text-align: center; + pointer-events: none; +} +.input-lg + .form-control-feedback, +.input-group-lg + .form-control-feedback, +.form-group-lg .form-control + .form-control-feedback { + width: 46px; + height: 46px; + line-height: 46px; +} +.input-sm + .form-control-feedback, +.input-group-sm + .form-control-feedback, +.form-group-sm .form-control + .form-control-feedback { + width: 30px; + height: 30px; + line-height: 30px; +} +.has-success .help-block, +.has-success .control-label, +.has-success .radio, +.has-success .checkbox, +.has-success .radio-inline, +.has-success .checkbox-inline, +.has-success.radio label, +.has-success.checkbox label, +.has-success.radio-inline label, +.has-success.checkbox-inline label { + color: #3c763d; +} +.has-success .form-control { + border-color: #3c763d; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-success .form-control:focus { + border-color: #2b542c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; +} +.has-success .input-group-addon { + color: #3c763d; + background-color: #dff0d8; + border-color: #3c763d; +} +.has-success .form-control-feedback { + color: #3c763d; +} +.has-warning .help-block, +.has-warning .control-label, +.has-warning .radio, +.has-warning .checkbox, +.has-warning .radio-inline, +.has-warning .checkbox-inline, +.has-warning.radio label, +.has-warning.checkbox label, +.has-warning.radio-inline label, +.has-warning.checkbox-inline label { + color: #8a6d3b; +} +.has-warning .form-control { + border-color: #8a6d3b; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-warning .form-control:focus { + border-color: #66512c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; +} +.has-warning .input-group-addon { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #8a6d3b; +} +.has-warning .form-control-feedback { + color: #8a6d3b; +} +.has-error .help-block, +.has-error .control-label, +.has-error .radio, +.has-error .checkbox, +.has-error .radio-inline, +.has-error .checkbox-inline, +.has-error.radio label, +.has-error.checkbox label, +.has-error.radio-inline label, +.has-error.checkbox-inline label { + color: #a94442; +} +.has-error .form-control { + border-color: #a94442; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-error .form-control:focus { + border-color: #843534; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; +} +.has-error .input-group-addon { + color: #a94442; + background-color: #f2dede; + border-color: #a94442; +} +.has-error .form-control-feedback { + color: #a94442; +} +.has-feedback label ~ .form-control-feedback { + top: 25px; +} +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #737373; +} +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .form-control-static { + display: inline-block; + } + .form-inline .input-group { + display: inline-table; + vertical-align: middle; + } + .form-inline .input-group .input-group-addon, + .form-inline .input-group .input-group-btn, + .form-inline .input-group .form-control { + width: auto; + } + .form-inline .input-group > .form-control { + width: 100%; + } + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio label, + .form-inline .checkbox label { + padding-left: 0; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .form-inline .has-feedback .form-control-feedback { + top: 0; + } +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + padding-top: 7px; + margin-top: 0; + margin-bottom: 0; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 27px; +} +.form-horizontal .form-group { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + padding-top: 7px; + margin-bottom: 0; + text-align: right; + } +} +.form-horizontal .has-feedback .form-control-feedback { + right: 15px; +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 11px; + font-size: 18px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 6px; + font-size: 12px; + } +} +.btn { + display: inline-block; + padding: 6px 12px; + margin-bottom: 0; + font-size: 14px; + font-weight: normal; + line-height: 1.42857143; + text-align: center; + white-space: nowrap; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus, +.btn.focus, +.btn:active.focus, +.btn.active.focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus, +.btn.focus { + color: #333; + text-decoration: none; +} +.btn:active, +.btn.active { + background-image: none; + outline: 0; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; + opacity: .65; +} +a.btn.disabled, +fieldset[disabled] a.btn { + pointer-events: none; +} +.btn-default { + color: #333; + background-color: #fff; + border-color: #ccc; +} +.btn-default:focus, +.btn-default.focus { + color: #333; + background-color: #e6e6e6; + border-color: #8c8c8c; +} +.btn-default:hover { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active:hover, +.btn-default.active:hover, +.open > .dropdown-toggle.btn-default:hover, +.btn-default:active:focus, +.btn-default.active:focus, +.open > .dropdown-toggle.btn-default:focus, +.btn-default:active.focus, +.btn-default.active.focus, +.open > .dropdown-toggle.btn-default.focus { + color: #333; + background-color: #d4d4d4; + border-color: #8c8c8c; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus { + background-color: #fff; + border-color: #ccc; +} +.btn-default .badge { + color: #fff; + background-color: #333; +} +.btn-primary { + color: #fff; + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary:focus, +.btn-primary.focus { + color: #fff; + background-color: #286090; + border-color: #122b40; +} +.btn-primary:hover { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active:hover, +.btn-primary.active:hover, +.open > .dropdown-toggle.btn-primary:hover, +.btn-primary:active:focus, +.btn-primary.active:focus, +.open > .dropdown-toggle.btn-primary:focus, +.btn-primary:active.focus, +.btn-primary.active.focus, +.open > .dropdown-toggle.btn-primary.focus { + color: #fff; + background-color: #204d74; + border-color: #122b40; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus { + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary .badge { + color: #337ab7; + background-color: #fff; +} +.btn-success { + color: #fff; + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success:focus, +.btn-success.focus { + color: #fff; + background-color: #449d44; + border-color: #255625; +} +.btn-success:hover { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active:hover, +.btn-success.active:hover, +.open > .dropdown-toggle.btn-success:hover, +.btn-success:active:focus, +.btn-success.active:focus, +.open > .dropdown-toggle.btn-success:focus, +.btn-success:active.focus, +.btn-success.active.focus, +.open > .dropdown-toggle.btn-success.focus { + color: #fff; + background-color: #398439; + border-color: #255625; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus { + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success .badge { + color: #5cb85c; + background-color: #fff; +} +.btn-info { + color: #fff; + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info:focus, +.btn-info.focus { + color: #fff; + background-color: #31b0d5; + border-color: #1b6d85; +} +.btn-info:hover { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active:hover, +.btn-info.active:hover, +.open > .dropdown-toggle.btn-info:hover, +.btn-info:active:focus, +.btn-info.active:focus, +.open > .dropdown-toggle.btn-info:focus, +.btn-info:active.focus, +.btn-info.active.focus, +.open > .dropdown-toggle.btn-info.focus { + color: #fff; + background-color: #269abc; + border-color: #1b6d85; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus { + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info .badge { + color: #5bc0de; + background-color: #fff; +} +.btn-warning { + color: #fff; + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning:focus, +.btn-warning.focus { + color: #fff; + background-color: #ec971f; + border-color: #985f0d; +} +.btn-warning:hover { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active:hover, +.btn-warning.active:hover, +.open > .dropdown-toggle.btn-warning:hover, +.btn-warning:active:focus, +.btn-warning.active:focus, +.open > .dropdown-toggle.btn-warning:focus, +.btn-warning:active.focus, +.btn-warning.active.focus, +.open > .dropdown-toggle.btn-warning.focus { + color: #fff; + background-color: #d58512; + border-color: #985f0d; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus { + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning .badge { + color: #f0ad4e; + background-color: #fff; +} +.btn-danger { + color: #fff; + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger:focus, +.btn-danger.focus { + color: #fff; + background-color: #c9302c; + border-color: #761c19; +} +.btn-danger:hover { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active:hover, +.btn-danger.active:hover, +.open > .dropdown-toggle.btn-danger:hover, +.btn-danger:active:focus, +.btn-danger.active:focus, +.open > .dropdown-toggle.btn-danger:focus, +.btn-danger:active.focus, +.btn-danger.active.focus, +.open > .dropdown-toggle.btn-danger.focus { + color: #fff; + background-color: #ac2925; + border-color: #761c19; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus { + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger .badge { + color: #d9534f; + background-color: #fff; +} +.btn-link { + font-weight: normal; + color: #337ab7; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link.active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #23527c; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #777; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.fade { + opacity: 0; + -webkit-transition: opacity .15s linear; + -o-transition: opacity .15s linear; + transition: opacity .15s linear; +} +.fade.in { + opacity: 1; +} +.collapse { + display: none; +} +.collapse.in { + display: block; +} +tr.collapse.in { + display: table-row; +} +tbody.collapse.in { + display: table-row-group; +} +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-timing-function: ease; + -o-transition-timing-function: ease; + transition-timing-function: ease; + -webkit-transition-duration: .35s; + -o-transition-duration: .35s; + transition-duration: .35s; + -webkit-transition-property: height, visibility; + -o-transition-property: height, visibility; + transition-property: height, visibility; +} +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px dashed; + border-top: 4px solid \9; + border-right: 4px solid transparent; + border-left: 4px solid transparent; +} +.dropup, +.dropdown { + position: relative; +} +.dropdown-toggle:focus { + outline: 0; +} +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + font-size: 14px; + text-align: left; + list-style: none; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); + box-shadow: 0 6px 12px rgba(0, 0, 0, .175); +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #333; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + color: #262626; + text-decoration: none; + background-color: #f5f5f5; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #fff; + text-decoration: none; + background-color: #337ab7; + outline: 0; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #777; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + cursor: not-allowed; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + right: 0; + left: auto; +} +.dropdown-menu-left { + right: auto; + left: 0; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #777; + white-space: nowrap; +} +.dropdown-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + content: ""; + border-top: 0; + border-bottom: 4px dashed; + border-bottom: 4px solid \9; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px; +} +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + right: 0; + left: auto; + } + .navbar-right .dropdown-menu-left { + right: auto; + left: 0; + } +} +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + z-index: 2; +} +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group { + margin-left: -1px; +} +.btn-toolbar { + margin-left: -5px; +} +.btn-toolbar .btn, +.btn-toolbar .btn-group, +.btn-toolbar .input-group { + float: left; +} +.btn-toolbar > .btn, +.btn-toolbar > .btn-group, +.btn-toolbar > .input-group { + margin-left: 5px; +} +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} +.btn-group > .btn:first-child { + margin-left: 0; +} +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group > .btn-group { + float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-right: 8px; + padding-left: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-right: 12px; + padding-left: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn .caret { + margin-left: 0; +} +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} +.dropup .btn-lg .caret { + border-width: 0 5px 5px; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group, +.btn-group-vertical > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100%; +} +.btn-group-vertical > .btn-group > .btn { + float: none; +} +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + display: table-cell; + float: none; + width: 1%; +} +.btn-group-justified > .btn-group .btn { + width: 100%; +} +.btn-group-justified > .btn-group .dropdown-menu { + left: auto; +} +[data-toggle="buttons"] > .btn input[type="radio"], +[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], +[data-toggle="buttons"] > .btn input[type="checkbox"], +[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.input-group { + position: relative; + display: table; + border-collapse: separate; +} +.input-group[class*="col-"] { + float: none; + padding-right: 0; + padding-left: 0; +} +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0; +} +.input-group .form-control:focus { + z-index: 3; +} +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 46px; + line-height: 46px; +} +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn, +select[multiple].input-group-lg > .form-control, +select[multiple].input-group-lg > .input-group-addon, +select[multiple].input-group-lg > .input-group-btn > .btn { + height: auto; +} +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn, +select[multiple].input-group-sm > .form-control, +select[multiple].input-group-sm > .input-group-addon, +select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto; +} +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} +.input-group-addon, +.input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} +.input-group-addon { + padding: 6px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #555; + text-align: center; + background-color: #eee; + border: 1px solid #ccc; + border-radius: 4px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.input-group-addon.input-lg { + padding: 10px 16px; + font-size: 18px; + border-radius: 6px; +} +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + margin-top: 0; +} +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group-addon:first-child { + border-right: 0; +} +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.input-group-addon:last-child { + border-left: 0; +} +.input-group-btn { + position: relative; + font-size: 0; + white-space: nowrap; +} +.input-group-btn > .btn { + position: relative; +} +.input-group-btn > .btn + .btn { + margin-left: -1px; +} +.input-group-btn > .btn:hover, +.input-group-btn > .btn:focus, +.input-group-btn > .btn:active { + z-index: 2; +} +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group { + margin-right: -1px; +} +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group { + z-index: 2; + margin-left: -1px; +} +.nav { + padding-left: 0; + margin-bottom: 0; + list-style: none; +} +.nav > li { + position: relative; + display: block; +} +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #eee; +} +.nav > li.disabled > a { + color: #777; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #777; + text-decoration: none; + cursor: not-allowed; + background-color: transparent; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #eee; + border-color: #337ab7; +} +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.nav > li > a > img { + max-width: none; +} +.nav-tabs { + border-bottom: 1px solid #ddd; +} +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #eee #eee #ddd; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #555; + cursor: default; + background-color: #fff; + border: 1px solid #ddd; + border-bottom-color: transparent; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-tabs.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-tabs.nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs.nav-justified > .active > a, + .nav-tabs.nav-justified > .active > a:hover, + .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 4px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #fff; + background-color: #337ab7; +} +.nav-stacked > li { + float: none; +} +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} +.nav-justified { + width: 100%; +} +.nav-justified > li { + float: none; +} +.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs-justified { + border-bottom: 0; +} +.nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar { + position: relative; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} +@media (min-width: 768px) { + .navbar { + border-radius: 4px; + } +} +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + padding-right: 15px; + padding-left: 15px; + overflow-x: visible; + -webkit-overflow-scrolling: touch; + border-top: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-fixed-top .navbar-collapse, + .navbar-static-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + padding-right: 0; + padding-left: 0; + } +} +.navbar-fixed-top .navbar-collapse, +.navbar-fixed-bottom .navbar-collapse { + max-height: 340px; +} +@media (max-device-width: 480px) and (orientation: landscape) { + .navbar-fixed-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + max-height: 200px; + } +} +.container > .navbar-header, +.container-fluid > .navbar-header, +.container > .navbar-collapse, +.container-fluid > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .container > .navbar-header, + .container-fluid > .navbar-header, + .container > .navbar-collapse, + .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 768px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + border-radius: 0; + } +} +.navbar-fixed-top { + top: 0; + border-width: 0 0 1px; +} +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; + border-width: 1px 0 0; +} +.navbar-brand { + float: left; + height: 50px; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +.navbar-brand > img { + display: block; +} +@media (min-width: 768px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: -15px; + } +} +.navbar-toggle { + position: relative; + float: right; + padding: 9px 10px; + margin-top: 8px; + margin-right: 15px; + margin-bottom: 8px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.navbar-toggle:focus { + outline: 0; +} +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 7.5px -15px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} +.navbar-form { + padding: 10px 15px; + margin-top: 8px; + margin-right: -15px; + margin-bottom: 8px; + margin-left: -15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); +} +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .navbar-form .form-control-static { + display: inline-block; + } + .navbar-form .input-group { + display: inline-table; + vertical-align: middle; + } + .navbar-form .input-group .input-group-addon, + .navbar-form .input-group .input-group-btn, + .navbar-form .input-group .form-control { + width: auto; + } + .navbar-form .input-group > .form-control { + width: 100%; + } + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio label, + .navbar-form .checkbox label { + padding-left: 0; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .navbar-form .has-feedback .form-control-feedback { + top: 0; + } +} +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } + .navbar-form .form-group:last-child { + margin-bottom: 0; + } +} +@media (min-width: 768px) { + .navbar-form { + width: auto; + padding-top: 0; + padding-bottom: 0; + margin-right: 0; + margin-left: 0; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: 8px; + margin-bottom: 8px; +} +.navbar-btn.btn-sm { + margin-top: 10px; + margin-bottom: 10px; +} +.navbar-btn.btn-xs { + margin-top: 14px; + margin-bottom: 14px; +} +.navbar-text { + margin-top: 15px; + margin-bottom: 15px; +} +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-right: 15px; + margin-left: 15px; + } +} +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + margin-right: -15px; + } + .navbar-right ~ .navbar-right { + margin-right: 0; + } +} +.navbar-default { + background-color: #f8f8f8; + border-color: #e7e7e7; +} +.navbar-default .navbar-brand { + color: #777; +} +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #5e5e5e; + background-color: transparent; +} +.navbar-default .navbar-text { + color: #777; +} +.navbar-default .navbar-nav > li > a { + color: #777; +} +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #333; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #555; + background-color: #e7e7e7; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #ccc; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: #ddd; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #ddd; +} +.navbar-default .navbar-toggle .icon-bar { + background-color: #888; +} +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #e7e7e7; +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + color: #555; + background-color: #e7e7e7; +} +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #777; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #333; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #555; + background-color: #e7e7e7; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #ccc; + background-color: transparent; + } +} +.navbar-default .navbar-link { + color: #777; +} +.navbar-default .navbar-link:hover { + color: #333; +} +.navbar-default .btn-link { + color: #777; +} +.navbar-default .btn-link:hover, +.navbar-default .btn-link:focus { + color: #333; +} +.navbar-default .btn-link[disabled]:hover, +fieldset[disabled] .navbar-default .btn-link:hover, +.navbar-default .btn-link[disabled]:focus, +fieldset[disabled] .navbar-default .btn-link:focus { + color: #ccc; +} +.navbar-inverse { + background-color: #222; + border-color: #080808; +} +.navbar-inverse .navbar-brand { + color: #9d9d9d; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-text { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #fff; + background-color: #080808; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: #333; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #333; +} +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #fff; +} +.navbar-inverse .navbar-collapse, +.navbar-inverse .navbar-form { + border-color: #101010; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .open > a:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + color: #fff; + background-color: #080808; +} +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #9d9d9d; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #fff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #444; + background-color: transparent; + } +} +.navbar-inverse .navbar-link { + color: #9d9d9d; +} +.navbar-inverse .navbar-link:hover { + color: #fff; +} +.navbar-inverse .btn-link { + color: #9d9d9d; +} +.navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link:focus { + color: #fff; +} +.navbar-inverse .btn-link[disabled]:hover, +fieldset[disabled] .navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link[disabled]:focus, +fieldset[disabled] .navbar-inverse .btn-link:focus { + color: #444; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f5f5f5; + border-radius: 4px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + padding: 0 5px; + color: #ccc; + content: "/\00a0"; +} +.breadcrumb > .active { + color: #777; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + margin-left: -1px; + line-height: 1.42857143; + color: #337ab7; + text-decoration: none; + background-color: #fff; + border: 1px solid #ddd; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + z-index: 2; + color: #23527c; + background-color: #eee; + border-color: #ddd; +} +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 3; + color: #fff; + cursor: default; + background-color: #337ab7; + border-color: #337ab7; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #777; + cursor: not-allowed; + background-color: #fff; + border-color: #ddd; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; +} +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 0; + text-align: center; + list-style: none; +} +.pager li { + display: inline; +} +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 15px; +} +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #eee; +} +.pager .next > a, +.pager .next > span { + float: right; +} +.pager .previous > a, +.pager .previous > span { + float: left; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #777; + cursor: not-allowed; + background-color: #fff; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +a.label:hover, +a.label:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #777; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #5e5e5e; +} +.label-primary { + background-color: #337ab7; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #286090; +} +.label-success { + background-color: #5cb85c; +} +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #449d44; +} +.label-info { + background-color: #5bc0de; +} +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #31b0d5; +} +.label-warning { + background-color: #f0ad4e; +} +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #ec971f; +} +.label-danger { + background-color: #d9534f; +} +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #c9302c; +} +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: middle; + background-color: #777; + border-radius: 10px; +} +.badge:empty { + display: none; +} +.btn .badge { + position: relative; + top: -1px; +} +.btn-xs .badge, +.btn-group-xs > .btn .badge { + top: 0; + padding: 1px 5px; +} +a.badge:hover, +a.badge:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #337ab7; + background-color: #fff; +} +.list-group-item > .badge { + float: right; +} +.list-group-item > .badge + .badge { + margin-right: 5px; +} +.nav-pills > li > a > .badge { + margin-left: 3px; +} +.jumbotron { + padding-top: 30px; + padding-bottom: 30px; + margin-bottom: 30px; + color: inherit; + background-color: #eee; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #d5d5d5; +} +.container .jumbotron, +.container-fluid .jumbotron { + padding-right: 15px; + padding-left: 15px; + border-radius: 6px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron, + .container-fluid .jumbotron { + padding-right: 60px; + padding-left: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: border .2s ease-in-out; + -o-transition: border .2s ease-in-out; + transition: border .2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-right: auto; + margin-left: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #337ab7; +} +.thumbnail .caption { + padding: 9px; + color: #333; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.alert > p, +.alert > ul { + margin-bottom: 0; +} +.alert > p + p { + margin-top: 5px; +} +.alert-dismissable, +.alert-dismissible { + padding-right: 35px; +} +.alert-dismissable .close, +.alert-dismissible .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.alert-success { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.alert-success hr { + border-top-color: #c9e2b3; +} +.alert-success .alert-link { + color: #2b542c; +} +.alert-info { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.alert-info hr { + border-top-color: #a6e1ec; +} +.alert-info .alert-link { + color: #245269; +} +.alert-warning { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.alert-warning hr { + border-top-color: #f7e1b5; +} +.alert-warning .alert-link { + color: #66512c; +} +.alert-danger { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.alert-danger hr { + border-top-color: #e4b9c0; +} +.alert-danger .alert-link { + color: #843534; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + height: 20px; + margin-bottom: 20px; + overflow: hidden; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); +} +.progress-bar { + float: left; + width: 0; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #fff; + text-align: center; + background-color: #337ab7; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + -webkit-transition: width .6s ease; + -o-transition: width .6s ease; + transition: width .6s ease; +} +.progress-striped .progress-bar, +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + background-size: 40px 40px; +} +.progress.active .progress-bar, +.progress-bar.active { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.progress-bar-success { + background-color: #5cb85c; +} +.progress-striped .progress-bar-success { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-info { + background-color: #5bc0de; +} +.progress-striped .progress-bar-info { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-warning { + background-color: #f0ad4e; +} +.progress-striped .progress-bar-warning { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-danger { + background-color: #d9534f; +} +.progress-striped .progress-bar-danger { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media, +.media-body { + overflow: hidden; + zoom: 1; +} +.media-body { + width: 10000px; +} +.media-object { + display: block; +} +.media-object.img-thumbnail { + max-width: none; +} +.media-right, +.media > .pull-right { + padding-left: 10px; +} +.media-left, +.media > .pull-left { + padding-right: 10px; +} +.media-left, +.media-right, +.media-body { + display: table-cell; + vertical-align: top; +} +.media-middle { + vertical-align: middle; +} +.media-bottom { + vertical-align: bottom; +} +.media-heading { + margin-top: 0; + margin-bottom: 5px; +} +.media-list { + padding-left: 0; + list-style: none; +} +.list-group { + padding-left: 0; + margin-bottom: 20px; +} +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #fff; + border: 1px solid #ddd; +} +.list-group-item:first-child { + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +a.list-group-item, +button.list-group-item { + color: #555; +} +a.list-group-item .list-group-item-heading, +button.list-group-item .list-group-item-heading { + color: #333; +} +a.list-group-item:hover, +button.list-group-item:hover, +a.list-group-item:focus, +button.list-group-item:focus { + color: #555; + text-decoration: none; + background-color: #f5f5f5; +} +button.list-group-item { + width: 100%; + text-align: left; +} +.list-group-item.disabled, +.list-group-item.disabled:hover, +.list-group-item.disabled:focus { + color: #777; + cursor: not-allowed; + background-color: #eee; +} +.list-group-item.disabled .list-group-item-heading, +.list-group-item.disabled:hover .list-group-item-heading, +.list-group-item.disabled:focus .list-group-item-heading { + color: inherit; +} +.list-group-item.disabled .list-group-item-text, +.list-group-item.disabled:hover .list-group-item-text, +.list-group-item.disabled:focus .list-group-item-text { + color: #777; +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.list-group-item.active .list-group-item-heading, +.list-group-item.active:hover .list-group-item-heading, +.list-group-item.active:focus .list-group-item-heading, +.list-group-item.active .list-group-item-heading > small, +.list-group-item.active:hover .list-group-item-heading > small, +.list-group-item.active:focus .list-group-item-heading > small, +.list-group-item.active .list-group-item-heading > .small, +.list-group-item.active:hover .list-group-item-heading > .small, +.list-group-item.active:focus .list-group-item-heading > .small { + color: inherit; +} +.list-group-item.active .list-group-item-text, +.list-group-item.active:hover .list-group-item-text, +.list-group-item.active:focus .list-group-item-text { + color: #c7ddef; +} +.list-group-item-success { + color: #3c763d; + background-color: #dff0d8; +} +a.list-group-item-success, +button.list-group-item-success { + color: #3c763d; +} +a.list-group-item-success .list-group-item-heading, +button.list-group-item-success .list-group-item-heading { + color: inherit; +} +a.list-group-item-success:hover, +button.list-group-item-success:hover, +a.list-group-item-success:focus, +button.list-group-item-success:focus { + color: #3c763d; + background-color: #d0e9c6; +} +a.list-group-item-success.active, +button.list-group-item-success.active, +a.list-group-item-success.active:hover, +button.list-group-item-success.active:hover, +a.list-group-item-success.active:focus, +button.list-group-item-success.active:focus { + color: #fff; + background-color: #3c763d; + border-color: #3c763d; +} +.list-group-item-info { + color: #31708f; + background-color: #d9edf7; +} +a.list-group-item-info, +button.list-group-item-info { + color: #31708f; +} +a.list-group-item-info .list-group-item-heading, +button.list-group-item-info .list-group-item-heading { + color: inherit; +} +a.list-group-item-info:hover, +button.list-group-item-info:hover, +a.list-group-item-info:focus, +button.list-group-item-info:focus { + color: #31708f; + background-color: #c4e3f3; +} +a.list-group-item-info.active, +button.list-group-item-info.active, +a.list-group-item-info.active:hover, +button.list-group-item-info.active:hover, +a.list-group-item-info.active:focus, +button.list-group-item-info.active:focus { + color: #fff; + background-color: #31708f; + border-color: #31708f; +} +.list-group-item-warning { + color: #8a6d3b; + background-color: #fcf8e3; +} +a.list-group-item-warning, +button.list-group-item-warning { + color: #8a6d3b; +} +a.list-group-item-warning .list-group-item-heading, +button.list-group-item-warning .list-group-item-heading { + color: inherit; +} +a.list-group-item-warning:hover, +button.list-group-item-warning:hover, +a.list-group-item-warning:focus, +button.list-group-item-warning:focus { + color: #8a6d3b; + background-color: #faf2cc; +} +a.list-group-item-warning.active, +button.list-group-item-warning.active, +a.list-group-item-warning.active:hover, +button.list-group-item-warning.active:hover, +a.list-group-item-warning.active:focus, +button.list-group-item-warning.active:focus { + color: #fff; + background-color: #8a6d3b; + border-color: #8a6d3b; +} +.list-group-item-danger { + color: #a94442; + background-color: #f2dede; +} +a.list-group-item-danger, +button.list-group-item-danger { + color: #a94442; +} +a.list-group-item-danger .list-group-item-heading, +button.list-group-item-danger .list-group-item-heading { + color: inherit; +} +a.list-group-item-danger:hover, +button.list-group-item-danger:hover, +a.list-group-item-danger:focus, +button.list-group-item-danger:focus { + color: #a94442; + background-color: #ebcccc; +} +a.list-group-item-danger.active, +button.list-group-item-danger.active, +a.list-group-item-danger.active:hover, +button.list-group-item-danger.active:hover, +a.list-group-item-danger.active:focus, +button.list-group-item-danger.active:focus { + color: #fff; + background-color: #a94442; + border-color: #a94442; +} +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} +.panel { + margin-bottom: 20px; + background-color: #fff; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: 0 1px 1px rgba(0, 0, 0, .05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + color: inherit; +} +.panel-title > a, +.panel-title > small, +.panel-title > .small, +.panel-title > small > a, +.panel-title > .small > a { + color: inherit; +} +.panel-footer { + padding: 10px 15px; + background-color: #f5f5f5; + border-top: 1px solid #ddd; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .list-group, +.panel > .panel-collapse > .list-group { + margin-bottom: 0; +} +.panel > .list-group .list-group-item, +.panel > .panel-collapse > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0; +} +.panel > .list-group:first-child .list-group-item:first-child, +.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .list-group:last-child .list-group-item:last-child, +.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.list-group + .panel-footer { + border-top-width: 0; +} +.panel > .table, +.panel > .table-responsive > .table, +.panel > .panel-collapse > .table { + margin-bottom: 0; +} +.panel > .table caption, +.panel > .table-responsive > .table caption, +.panel > .panel-collapse > .table caption { + padding-right: 15px; + padding-left: 15px; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 3px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 3px; +} +.panel > .panel-body + .table, +.panel > .panel-body + .table-responsive, +.panel > .table + .panel-body, +.panel > .table-responsive + .panel-body { + border-top: 1px solid #ddd; +} +.panel > .table > tbody:first-child > tr:first-child th, +.panel > .table > tbody:first-child > tr:first-child td { + border-top: 0; +} +.panel > .table-bordered, +.panel > .table-responsive > .table-bordered { + border: 0; +} +.panel > .table-bordered > thead > tr > th:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.panel > .table-bordered > tbody > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.panel > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-bordered > thead > tr > td:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.panel > .table-bordered > tbody > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.panel > .table-bordered > tfoot > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.panel > .table-bordered > thead > tr > th:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.panel > .table-bordered > tbody > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.panel > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-bordered > thead > tr > td:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.panel > .table-bordered > tbody > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.panel > .table-bordered > tfoot > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.panel > .table-bordered > thead > tr:first-child > td, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, +.panel > .table-bordered > tbody > tr:first-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, +.panel > .table-bordered > thead > tr:first-child > th, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, +.panel > .table-bordered > tbody > tr:first-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0; +} +.panel > .table-bordered > tbody > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.panel > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-bordered > tbody > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.panel > .table-bordered > tfoot > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0; +} +.panel > .table-responsive { + margin-bottom: 0; + border: 0; +} +.panel-group { + margin-bottom: 20px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse > .panel-body, +.panel-group .panel-heading + .panel-collapse > .list-group { + border-top: 1px solid #ddd; +} +.panel-group .panel-footer { + border-top: 0; +} +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #ddd; +} +.panel-default { + border-color: #ddd; +} +.panel-default > .panel-heading { + color: #333; + background-color: #f5f5f5; + border-color: #ddd; +} +.panel-default > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ddd; +} +.panel-default > .panel-heading .badge { + color: #f5f5f5; + background-color: #333; +} +.panel-default > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ddd; +} +.panel-primary { + border-color: #337ab7; +} +.panel-primary > .panel-heading { + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.panel-primary > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #337ab7; +} +.panel-primary > .panel-heading .badge { + color: #337ab7; + background-color: #fff; +} +.panel-primary > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #337ab7; +} +.panel-success { + border-color: #d6e9c6; +} +.panel-success > .panel-heading { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.panel-success > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #d6e9c6; +} +.panel-success > .panel-heading .badge { + color: #dff0d8; + background-color: #3c763d; +} +.panel-success > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #d6e9c6; +} +.panel-info { + border-color: #bce8f1; +} +.panel-info > .panel-heading { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.panel-info > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #bce8f1; +} +.panel-info > .panel-heading .badge { + color: #d9edf7; + background-color: #31708f; +} +.panel-info > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #bce8f1; +} +.panel-warning { + border-color: #faebcc; +} +.panel-warning > .panel-heading { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.panel-warning > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #faebcc; +} +.panel-warning > .panel-heading .badge { + color: #fcf8e3; + background-color: #8a6d3b; +} +.panel-warning > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #faebcc; +} +.panel-danger { + border-color: #ebccd1; +} +.panel-danger > .panel-heading { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.panel-danger > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ebccd1; +} +.panel-danger > .panel-heading .badge { + color: #f2dede; + background-color: #a94442; +} +.panel-danger > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ebccd1; +} +.embed-responsive { + position: relative; + display: block; + height: 0; + padding: 0; + overflow: hidden; +} +.embed-responsive .embed-responsive-item, +.embed-responsive iframe, +.embed-responsive embed, +.embed-responsive object, +.embed-responsive video { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} +.embed-responsive-16by9 { + padding-bottom: 56.25%; +} +.embed-responsive-4by3 { + padding-bottom: 75%; +} +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, .15); +} +.well-lg { + padding: 24px; + border-radius: 6px; +} +.well-sm { + padding: 9px; + border-radius: 3px; +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000; + text-shadow: 0 1px 0 #fff; + filter: alpha(opacity=20); + opacity: .2; +} +.close:hover, +.close:focus { + color: #000; + text-decoration: none; + cursor: pointer; + filter: alpha(opacity=50); + opacity: .5; +} +button.close { + -webkit-appearance: none; + padding: 0; + cursor: pointer; + background: transparent; + border: 0; +} +.modal-open { + overflow: hidden; +} +.modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + display: none; + overflow: hidden; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transition: -webkit-transform .3s ease-out; + -o-transition: -o-transform .3s ease-out; + transition: transform .3s ease-out; + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); +} +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} +.modal-dialog { + position: relative; + width: auto; + margin: 10px; +} +.modal-content { + position: relative; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + outline: 0; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); + box-shadow: 0 3px 9px rgba(0, 0, 0, .5); +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000; +} +.modal-backdrop.fade { + filter: alpha(opacity=0); + opacity: 0; +} +.modal-backdrop.in { + filter: alpha(opacity=50); + opacity: .5; +} +.modal-header { + padding: 15px; + border-bottom: 1px solid #e5e5e5; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.42857143; +} +.modal-body { + position: relative; + padding: 15px; +} +.modal-footer { + padding: 15px; + text-align: right; + border-top: 1px solid #e5e5e5; +} +.modal-footer .btn + .btn { + margin-bottom: 0; + margin-left: 5px; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + } + .modal-sm { + width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg { + width: 900px; + } +} +.tooltip { + position: absolute; + z-index: 1070; + display: block; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 12px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + filter: alpha(opacity=0); + opacity: 0; + + line-break: auto; +} +.tooltip.in { + filter: alpha(opacity=90); + opacity: .9; +} +.tooltip.top { + padding: 5px 0; + margin-top: -3px; +} +.tooltip.right { + padding: 0 5px; + margin-left: 3px; +} +.tooltip.bottom { + padding: 5px 0; + margin-top: 3px; +} +.tooltip.left { + padding: 0 5px; + margin-left: -3px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-left .tooltip-arrow { + right: 5px; + bottom: 0; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + left: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + right: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + left: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: none; + max-width: 276px; + padding: 1px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + + line-break: auto; +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + padding: 8px 14px; + margin: 0; + font-size: 14px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover > .arrow, +.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover > .arrow { + border-width: 11px; +} +.popover > .arrow:after { + content: ""; + border-width: 10px; +} +.popover.top > .arrow { + bottom: -11px; + left: 50%; + margin-left: -11px; + border-top-color: #999; + border-top-color: rgba(0, 0, 0, .25); + border-bottom-width: 0; +} +.popover.top > .arrow:after { + bottom: 1px; + margin-left: -10px; + content: " "; + border-top-color: #fff; + border-bottom-width: 0; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-right-color: #999; + border-right-color: rgba(0, 0, 0, .25); + border-left-width: 0; +} +.popover.right > .arrow:after { + bottom: -10px; + left: 1px; + content: " "; + border-right-color: #fff; + border-left-width: 0; +} +.popover.bottom > .arrow { + top: -11px; + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999; + border-bottom-color: rgba(0, 0, 0, .25); +} +.popover.bottom > .arrow:after { + top: 1px; + margin-left: -10px; + content: " "; + border-top-width: 0; + border-bottom-color: #fff; +} +.popover.left > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #999; + border-left-color: rgba(0, 0, 0, .25); +} +.popover.left > .arrow:after { + right: 1px; + bottom: -10px; + content: " "; + border-right-width: 0; + border-left-color: #fff; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner > .item { + position: relative; + display: none; + -webkit-transition: .6s ease-in-out left; + -o-transition: .6s ease-in-out left; + transition: .6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + line-height: 1; +} +@media all and (transform-3d), (-webkit-transform-3d) { + .carousel-inner > .item { + -webkit-transition: -webkit-transform .6s ease-in-out; + -o-transition: -o-transform .6s ease-in-out; + transition: transform .6s ease-in-out; + + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + perspective: 1000px; + } + .carousel-inner > .item.next, + .carousel-inner > .item.active.right { + left: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + .carousel-inner > .item.prev, + .carousel-inner > .item.active.left { + left: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + .carousel-inner > .item.next.left, + .carousel-inner > .item.prev.right, + .carousel-inner > .item.active { + left: 0; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 15%; + font-size: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); + background-color: rgba(0, 0, 0, 0); + filter: alpha(opacity=50); + opacity: .5; +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control.right { + right: 0; + left: auto; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control:hover, +.carousel-control:focus { + color: #fff; + text-decoration: none; + filter: alpha(opacity=90); + outline: 0; + opacity: .9; +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; + margin-top: -10px; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; + margin-left: -10px; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; + margin-right: -10px; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + font-family: serif; + line-height: 1; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + padding-left: 0; + margin-left: -30%; + text-align: center; + list-style: none; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); + border: 1px solid #fff; + border-radius: 10px; +} +.carousel-indicators .active { + width: 12px; + height: 12px; + margin: 0; + background-color: #fff; +} +.carousel-caption { + position: absolute; + right: 15%; + bottom: 20px; + left: 15%; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -10px; + font-size: 30px; + } + .carousel-control .glyphicon-chevron-left, + .carousel-control .icon-prev { + margin-left: -10px; + } + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-next { + margin-right: -10px; + } + .carousel-caption { + right: 20%; + left: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after, +.dl-horizontal dd:before, +.dl-horizontal dd:after, +.container:before, +.container:after, +.container-fluid:before, +.container-fluid:after, +.row:before, +.row:after, +.form-horizontal .form-group:before, +.form-horizontal .form-group:after, +.btn-toolbar:before, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after, +.nav:before, +.nav:after, +.navbar:before, +.navbar:after, +.navbar-header:before, +.navbar-header:after, +.navbar-collapse:before, +.navbar-collapse:after, +.pager:before, +.pager:after, +.panel-body:before, +.panel-body:after, +.modal-header:before, +.modal-header:after, +.modal-footer:before, +.modal-footer:after { + display: table; + content: " "; +} +.clearfix:after, +.dl-horizontal dd:after, +.container:after, +.container-fluid:after, +.row:after, +.form-horizontal .form-group:after, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:after, +.nav:after, +.navbar:after, +.navbar-header:after, +.navbar-collapse:after, +.pager:after, +.panel-body:after, +.modal-header:after, +.modal-footer:after { + clear: both; +} +.center-block { + display: block; + margin-right: auto; + margin-left: auto; +} +.pull-right { + float: right !important; +} +.pull-left { + float: left !important; +} +.hide { + display: none !important; +} +.show { + display: block !important; +} +.invisible { + visibility: hidden; +} +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; +} +.affix { + position: fixed; +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { + display: none !important; +} +.visible-xs-block, +.visible-xs-inline, +.visible-xs-inline-block, +.visible-sm-block, +.visible-sm-inline, +.visible-sm-inline-block, +.visible-md-block, +.visible-md-inline, +.visible-md-inline-block, +.visible-lg-block, +.visible-lg-inline, +.visible-lg-inline-block { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + table.visible-xs { + display: table !important; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} +@media (max-width: 767px) { + .visible-xs-block { + display: block !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline { + display: inline !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline-block { + display: inline-block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + table.visible-sm { + display: table !important; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-block { + display: block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline { + display: inline !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline-block { + display: inline-block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + table.visible-md { + display: table !important; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-block { + display: block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline { + display: inline !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline-block { + display: inline-block !important; + } +} +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + table.visible-lg { + display: table !important; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-lg-block { + display: block !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline { + display: inline !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline-block { + display: inline-block !important; + } +} +@media (max-width: 767px) { + .hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-lg { + display: none !important; + } +} +.visible-print { + display: none !important; +} +@media print { + .visible-print { + display: block !important; + } + table.visible-print { + display: table !important; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } +} +.visible-print-block { + display: none !important; +} +@media print { + .visible-print-block { + display: block !important; + } +} +.visible-print-inline { + display: none !important; +} +@media print { + .visible-print-inline { + display: inline !important; + } +} +.visible-print-inline-block { + display: none !important; +} +@media print { + .visible-print-inline-block { + display: inline-block !important; + } +} +@media print { + .hidden-print { + display: none !important; + } +} +/*# sourceMappingURL=bootstrap.css.map */ + + +table.dataTable { + clear: both; + margin-top: 6px !important; + margin-bottom: 6px !important; + max-width: none !important; + border-collapse: separate !important; +} +table.dataTable td, +table.dataTable th { + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +table.dataTable td.dataTables_empty, +table.dataTable th.dataTables_empty { + text-align: center; +} +table.dataTable.nowrap th, +table.dataTable.nowrap td { + white-space: nowrap; +} + +div.dataTables_wrapper div.dataTables_length label { + font-weight: normal; + text-align: left; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_length select { + width: 75px; + display: inline-block; +} +div.dataTables_wrapper div.dataTables_filter { + text-align: right; +} +div.dataTables_wrapper div.dataTables_filter label { + font-weight: normal; + white-space: nowrap; + text-align: left; +} +div.dataTables_wrapper div.dataTables_filter input { + margin-left: 0.5em; + display: inline-block; + width: auto; +} +div.dataTables_wrapper div.dataTables_info { + padding-top: 8px; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_paginate { + margin: 0; + white-space: nowrap; + text-align: right; +} +div.dataTables_wrapper div.dataTables_paginate ul.pagination { + margin: 2px 0; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 200px; + margin-left: -100px; + margin-top: -26px; + text-align: center; + padding: 1em 0; +} + +table.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting, +table.dataTable thead > tr > td.sorting_asc, +table.dataTable thead > tr > td.sorting_desc, +table.dataTable thead > tr > td.sorting { + padding-right: 30px; +} +table.dataTable thead > tr > th:active, +table.dataTable thead > tr > td:active { + outline: none; +} +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting_asc_disabled, +table.dataTable thead .sorting_desc_disabled { + cursor: pointer; + position: relative; +} +table.dataTable thead .sorting:after, +table.dataTable thead .sorting_asc:after, +table.dataTable thead .sorting_desc:after, +table.dataTable thead .sorting_asc_disabled:after, +table.dataTable thead .sorting_desc_disabled:after { + position: absolute; + bottom: 8px; + right: 8px; + display: block; + font-family: 'Glyphicons Halflings'; + opacity: 0.5; +} +table.dataTable thead .sorting:after { + opacity: 0.2; + content: "\e150"; + /* sort */ +} +table.dataTable thead .sorting_asc:after { + content: "\e155"; + /* sort-by-attributes */ +} +table.dataTable thead .sorting_desc:after { + content: "\e156"; + /* sort-by-attributes-alt */ +} +table.dataTable thead .sorting_asc_disabled:after, +table.dataTable thead .sorting_desc_disabled:after { + color: #eee; +} + +div.dataTables_scrollHead table.dataTable { + margin-bottom: 0 !important; +} + +div.dataTables_scrollBody > table { + border-top: none; + margin-top: 0 !important; + margin-bottom: 0 !important; +} +div.dataTables_scrollBody > table > thead .sorting:after, +div.dataTables_scrollBody > table > thead .sorting_asc:after, +div.dataTables_scrollBody > table > thead .sorting_desc:after { + display: none; +} +div.dataTables_scrollBody > table > tbody > tr:first-child > th, +div.dataTables_scrollBody > table > tbody > tr:first-child > td { + border-top: none; +} + +div.dataTables_scrollFoot > .dataTables_scrollFootInner { + box-sizing: content-box; +} +div.dataTables_scrollFoot > .dataTables_scrollFootInner > table { + margin-top: 0 !important; + border-top: none; +} + +@media screen and (max-width: 767px) { + div.dataTables_wrapper div.dataTables_length, + div.dataTables_wrapper div.dataTables_filter, + div.dataTables_wrapper div.dataTables_info, + div.dataTables_wrapper div.dataTables_paginate { + text-align: center; + } +} +table.dataTable.table-condensed > thead > tr > th { + padding-right: 20px; +} +table.dataTable.table-condensed .sorting:after, +table.dataTable.table-condensed .sorting_asc:after, +table.dataTable.table-condensed .sorting_desc:after { + top: 6px; + right: 6px; +} + +table.table-bordered.dataTable th, +table.table-bordered.dataTable td { + border-left-width: 0; +} +table.table-bordered.dataTable th:last-child, table.table-bordered.dataTable th:last-child, +table.table-bordered.dataTable td:last-child, +table.table-bordered.dataTable td:last-child { + border-right-width: 0; +} +table.table-bordered.dataTable tbody th, +table.table-bordered.dataTable tbody td { + border-bottom-width: 0; +} + +div.dataTables_scrollHead table.table-bordered { + border-bottom-width: 0; +} + +div.table-responsive > div.dataTables_wrapper > div.row { + margin: 0; +} +div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:first-child { + padding-left: 0; +} +div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:last-child { + padding-right: 0; +} + + +@keyframes dtb-spinner { + 100% { + transform: rotate(360deg); + } +} +@-o-keyframes dtb-spinner { + 100% { + -o-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-ms-keyframes dtb-spinner { + 100% { + -ms-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-webkit-keyframes dtb-spinner { + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-moz-keyframes dtb-spinner { + 100% { + -moz-transform: rotate(360deg); + transform: rotate(360deg); + } +} +div.dt-button-info { + position: fixed; + top: 50%; + left: 50%; + width: 400px; + margin-top: -100px; + margin-left: -200px; + background-color: white; + border: 2px solid #111; + box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.3); + border-radius: 3px; + text-align: center; + z-index: 21; +} +div.dt-button-info h2 { + padding: 0.5em; + margin: 0; + font-weight: normal; + border-bottom: 1px solid #ddd; + background-color: #f3f3f3; +} +div.dt-button-info > div { + padding: 1em; +} + +ul.dt-button-collection.dropdown-menu { + display: block; + z-index: 2002; + -webkit-column-gap: 8px; + -moz-column-gap: 8px; + -ms-column-gap: 8px; + -o-column-gap: 8px; + column-gap: 8px; +} +ul.dt-button-collection.dropdown-menu.fixed { + position: fixed; + top: 50%; + left: 50%; + margin-left: -75px; + border-radius: 0; +} +ul.dt-button-collection.dropdown-menu.fixed.two-column { + margin-left: -150px; +} +ul.dt-button-collection.dropdown-menu.fixed.three-column { + margin-left: -225px; +} +ul.dt-button-collection.dropdown-menu.fixed.four-column { + margin-left: -300px; +} +ul.dt-button-collection.dropdown-menu > * { + -webkit-column-break-inside: avoid; + break-inside: avoid; +} +ul.dt-button-collection.dropdown-menu.two-column { + width: 300px; + padding-bottom: 1px; + -webkit-column-count: 2; + -moz-column-count: 2; + -ms-column-count: 2; + -o-column-count: 2; + column-count: 2; +} +ul.dt-button-collection.dropdown-menu.three-column { + width: 450px; + padding-bottom: 1px; + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; +} +ul.dt-button-collection.dropdown-menu.four-column { + width: 600px; + padding-bottom: 1px; + -webkit-column-count: 4; + -moz-column-count: 4; + -ms-column-count: 4; + -o-column-count: 4; + column-count: 4; +} +ul.dt-button-collection.dropdown-menu .dt-button { + border-radius: 0; +} + +div.dt-button-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 2001; +} + +@media screen and (max-width: 767px) { + div.dt-buttons { + float: none; + width: 100%; + text-align: center; + margin-bottom: 0.5em; + } + div.dt-buttons a.btn { + float: none; + } +} +div.dt-buttons button.btn.processing, +div.dt-buttons div.btn.processing, +div.dt-buttons a.btn.processing { + color: rgba(0, 0, 0, 0.2); +} +div.dt-buttons button.btn.processing:after, +div.dt-buttons div.btn.processing:after, +div.dt-buttons a.btn.processing:after { + position: absolute; + top: 50%; + left: 50%; + width: 16px; + height: 16px; + margin: -8px 0 0 -8px; + box-sizing: border-box; + display: block; + content: ' '; + border: 2px solid #282828; + border-radius: 50%; + border-left-color: transparent; + border-right-color: transparent; + animation: dtb-spinner 1500ms infinite linear; + -o-animation: dtb-spinner 1500ms infinite linear; + -ms-animation: dtb-spinner 1500ms infinite linear; + -webkit-animation: dtb-spinner 1500ms infinite linear; + -moz-animation: dtb-spinner 1500ms infinite linear; +} + + diff --git a/admin/assets/datatables.js b/admin/assets/datatables.js new file mode 100644 index 0000000..5480d66 --- /dev/null +++ b/admin/assets/datatables.js @@ -0,0 +1,98572 @@ +/* + * This combined file was created by the DataTables downloader builder: + * https://datatables.net/download + * + * To rebuild or modify this file with the latest versions of the included + * software please visit: + * https://datatables.net/download/#bs-3.3.7/jszip-2.5.0/pdfmake-0.1.32/dt-1.10.16/b-1.5.1/b-flash-1.5.1/b-html5-1.5.1/b-print-1.5.1 + * + * Included libraries: + * Bootstrap 3 3.3.7, JSZip 2.5.0, pdfmake 0.1.32, DataTables 1.10.16, Buttons 1.5.1, Flash export 1.5.1, HTML5 export 1.5.1, Print view 1.5.1 + */ + +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under the MIT license + */ + +if (typeof jQuery === 'undefined') { + throw new Error('Bootstrap\'s JavaScript requires jQuery') +} + ++function ($) { + 'use strict'; + var version = $.fn.jquery.split(' ')[0].split('.') + if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] > 3)) { + throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4') + } +}(jQuery); + +/* ======================================================================== + * Bootstrap: transition.js v3.3.7 + * http://getbootstrap.com/javascript/#transitions + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) + // ============================================================ + + function transitionEnd() { + var el = document.createElement('bootstrap') + + var transEndEventNames = { + WebkitTransition : 'webkitTransitionEnd', + MozTransition : 'transitionend', + OTransition : 'oTransitionEnd otransitionend', + transition : 'transitionend' + } + + for (var name in transEndEventNames) { + if (el.style[name] !== undefined) { + return { end: transEndEventNames[name] } + } + } + + return false // explicit for ie8 ( ._.) + } + + // http://blog.alexmaccaw.com/css-transitions + $.fn.emulateTransitionEnd = function (duration) { + var called = false + var $el = this + $(this).one('bsTransitionEnd', function () { called = true }) + var callback = function () { if (!called) $($el).trigger($.support.transition.end) } + setTimeout(callback, duration) + return this + } + + $(function () { + $.support.transition = transitionEnd() + + if (!$.support.transition) return + + $.event.special.bsTransitionEnd = { + bindType: $.support.transition.end, + delegateType: $.support.transition.end, + handle: function (e) { + if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments) + } + } + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: alert.js v3.3.7 + * http://getbootstrap.com/javascript/#alerts + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // ALERT CLASS DEFINITION + // ====================== + + var dismiss = '[data-dismiss="alert"]' + var Alert = function (el) { + $(el).on('click', dismiss, this.close) + } + + Alert.VERSION = '3.3.7' + + Alert.TRANSITION_DURATION = 150 + + Alert.prototype.close = function (e) { + var $this = $(this) + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = $(selector === '#' ? [] : selector) + + if (e) e.preventDefault() + + if (!$parent.length) { + $parent = $this.closest('.alert') + } + + $parent.trigger(e = $.Event('close.bs.alert')) + + if (e.isDefaultPrevented()) return + + $parent.removeClass('in') + + function removeElement() { + // detach from parent, fire event then clean up data + $parent.detach().trigger('closed.bs.alert').remove() + } + + $.support.transition && $parent.hasClass('fade') ? + $parent + .one('bsTransitionEnd', removeElement) + .emulateTransitionEnd(Alert.TRANSITION_DURATION) : + removeElement() + } + + + // ALERT PLUGIN DEFINITION + // ======================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.alert') + + if (!data) $this.data('bs.alert', (data = new Alert(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + var old = $.fn.alert + + $.fn.alert = Plugin + $.fn.alert.Constructor = Alert + + + // ALERT NO CONFLICT + // ================= + + $.fn.alert.noConflict = function () { + $.fn.alert = old + return this + } + + + // ALERT DATA-API + // ============== + + $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: button.js v3.3.7 + * http://getbootstrap.com/javascript/#buttons + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // BUTTON PUBLIC CLASS DEFINITION + // ============================== + + var Button = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Button.DEFAULTS, options) + this.isLoading = false + } + + Button.VERSION = '3.3.7' + + Button.DEFAULTS = { + loadingText: 'loading...' + } + + Button.prototype.setState = function (state) { + var d = 'disabled' + var $el = this.$element + var val = $el.is('input') ? 'val' : 'html' + var data = $el.data() + + state += 'Text' + + if (data.resetText == null) $el.data('resetText', $el[val]()) + + // push to event loop to allow forms to submit + setTimeout($.proxy(function () { + $el[val](data[state] == null ? this.options[state] : data[state]) + + if (state == 'loadingText') { + this.isLoading = true + $el.addClass(d).attr(d, d).prop(d, true) + } else if (this.isLoading) { + this.isLoading = false + $el.removeClass(d).removeAttr(d).prop(d, false) + } + }, this), 0) + } + + Button.prototype.toggle = function () { + var changed = true + var $parent = this.$element.closest('[data-toggle="buttons"]') + + if ($parent.length) { + var $input = this.$element.find('input') + if ($input.prop('type') == 'radio') { + if ($input.prop('checked')) changed = false + $parent.find('.active').removeClass('active') + this.$element.addClass('active') + } else if ($input.prop('type') == 'checkbox') { + if (($input.prop('checked')) !== this.$element.hasClass('active')) changed = false + this.$element.toggleClass('active') + } + $input.prop('checked', this.$element.hasClass('active')) + if (changed) $input.trigger('change') + } else { + this.$element.attr('aria-pressed', !this.$element.hasClass('active')) + this.$element.toggleClass('active') + } + } + + + // BUTTON PLUGIN DEFINITION + // ======================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.button') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.button', (data = new Button(this, options))) + + if (option == 'toggle') data.toggle() + else if (option) data.setState(option) + }) + } + + var old = $.fn.button + + $.fn.button = Plugin + $.fn.button.Constructor = Button + + + // BUTTON NO CONFLICT + // ================== + + $.fn.button.noConflict = function () { + $.fn.button = old + return this + } + + + // BUTTON DATA-API + // =============== + + $(document) + .on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) { + var $btn = $(e.target).closest('.btn') + Plugin.call($btn, 'toggle') + if (!($(e.target).is('input[type="radio"], input[type="checkbox"]'))) { + // Prevent double click on radios, and the double selections (so cancellation) on checkboxes + e.preventDefault() + // The target component still receive the focus + if ($btn.is('input,button')) $btn.trigger('focus') + else $btn.find('input:visible,button:visible').first().trigger('focus') + } + }) + .on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) { + $(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type)) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: carousel.js v3.3.7 + * http://getbootstrap.com/javascript/#carousel + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // CAROUSEL CLASS DEFINITION + // ========================= + + var Carousel = function (element, options) { + this.$element = $(element) + this.$indicators = this.$element.find('.carousel-indicators') + this.options = options + this.paused = null + this.sliding = null + this.interval = null + this.$active = null + this.$items = null + + this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this)) + + this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element + .on('mouseenter.bs.carousel', $.proxy(this.pause, this)) + .on('mouseleave.bs.carousel', $.proxy(this.cycle, this)) + } + + Carousel.VERSION = '3.3.7' + + Carousel.TRANSITION_DURATION = 600 + + Carousel.DEFAULTS = { + interval: 5000, + pause: 'hover', + wrap: true, + keyboard: true + } + + Carousel.prototype.keydown = function (e) { + if (/input|textarea/i.test(e.target.tagName)) return + switch (e.which) { + case 37: this.prev(); break + case 39: this.next(); break + default: return + } + + e.preventDefault() + } + + Carousel.prototype.cycle = function (e) { + e || (this.paused = false) + + this.interval && clearInterval(this.interval) + + this.options.interval + && !this.paused + && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) + + return this + } + + Carousel.prototype.getItemIndex = function (item) { + this.$items = item.parent().children('.item') + return this.$items.index(item || this.$active) + } + + Carousel.prototype.getItemForDirection = function (direction, active) { + var activeIndex = this.getItemIndex(active) + var willWrap = (direction == 'prev' && activeIndex === 0) + || (direction == 'next' && activeIndex == (this.$items.length - 1)) + if (willWrap && !this.options.wrap) return active + var delta = direction == 'prev' ? -1 : 1 + var itemIndex = (activeIndex + delta) % this.$items.length + return this.$items.eq(itemIndex) + } + + Carousel.prototype.to = function (pos) { + var that = this + var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active')) + + if (pos > (this.$items.length - 1) || pos < 0) return + + if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, "slid" + if (activeIndex == pos) return this.pause().cycle() + + return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos)) + } + + Carousel.prototype.pause = function (e) { + e || (this.paused = true) + + if (this.$element.find('.next, .prev').length && $.support.transition) { + this.$element.trigger($.support.transition.end) + this.cycle(true) + } + + this.interval = clearInterval(this.interval) + + return this + } + + Carousel.prototype.next = function () { + if (this.sliding) return + return this.slide('next') + } + + Carousel.prototype.prev = function () { + if (this.sliding) return + return this.slide('prev') + } + + Carousel.prototype.slide = function (type, next) { + var $active = this.$element.find('.item.active') + var $next = next || this.getItemForDirection(type, $active) + var isCycling = this.interval + var direction = type == 'next' ? 'left' : 'right' + var that = this + + if ($next.hasClass('active')) return (this.sliding = false) + + var relatedTarget = $next[0] + var slideEvent = $.Event('slide.bs.carousel', { + relatedTarget: relatedTarget, + direction: direction + }) + this.$element.trigger(slideEvent) + if (slideEvent.isDefaultPrevented()) return + + this.sliding = true + + isCycling && this.pause() + + if (this.$indicators.length) { + this.$indicators.find('.active').removeClass('active') + var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)]) + $nextIndicator && $nextIndicator.addClass('active') + } + + var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid" + if ($.support.transition && this.$element.hasClass('slide')) { + $next.addClass(type) + $next[0].offsetWidth // force reflow + $active.addClass(direction) + $next.addClass(direction) + $active + .one('bsTransitionEnd', function () { + $next.removeClass([type, direction].join(' ')).addClass('active') + $active.removeClass(['active', direction].join(' ')) + that.sliding = false + setTimeout(function () { + that.$element.trigger(slidEvent) + }, 0) + }) + .emulateTransitionEnd(Carousel.TRANSITION_DURATION) + } else { + $active.removeClass('active') + $next.addClass('active') + this.sliding = false + this.$element.trigger(slidEvent) + } + + isCycling && this.cycle() + + return this + } + + + // CAROUSEL PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.carousel') + var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) + var action = typeof option == 'string' ? option : options.slide + + if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) + if (typeof option == 'number') data.to(option) + else if (action) data[action]() + else if (options.interval) data.pause().cycle() + }) + } + + var old = $.fn.carousel + + $.fn.carousel = Plugin + $.fn.carousel.Constructor = Carousel + + + // CAROUSEL NO CONFLICT + // ==================== + + $.fn.carousel.noConflict = function () { + $.fn.carousel = old + return this + } + + + // CAROUSEL DATA-API + // ================= + + var clickHandler = function (e) { + var href + var $this = $(this) + var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7 + if (!$target.hasClass('carousel')) return + var options = $.extend({}, $target.data(), $this.data()) + var slideIndex = $this.attr('data-slide-to') + if (slideIndex) options.interval = false + + Plugin.call($target, options) + + if (slideIndex) { + $target.data('bs.carousel').to(slideIndex) + } + + e.preventDefault() + } + + $(document) + .on('click.bs.carousel.data-api', '[data-slide]', clickHandler) + .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler) + + $(window).on('load', function () { + $('[data-ride="carousel"]').each(function () { + var $carousel = $(this) + Plugin.call($carousel, $carousel.data()) + }) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: collapse.js v3.3.7 + * http://getbootstrap.com/javascript/#collapse + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + +/* jshint latedef: false */ + ++function ($) { + 'use strict'; + + // COLLAPSE PUBLIC CLASS DEFINITION + // ================================ + + var Collapse = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Collapse.DEFAULTS, options) + this.$trigger = $('[data-toggle="collapse"][href="#' + element.id + '"],' + + '[data-toggle="collapse"][data-target="#' + element.id + '"]') + this.transitioning = null + + if (this.options.parent) { + this.$parent = this.getParent() + } else { + this.addAriaAndCollapsedClass(this.$element, this.$trigger) + } + + if (this.options.toggle) this.toggle() + } + + Collapse.VERSION = '3.3.7' + + Collapse.TRANSITION_DURATION = 350 + + Collapse.DEFAULTS = { + toggle: true + } + + Collapse.prototype.dimension = function () { + var hasWidth = this.$element.hasClass('width') + return hasWidth ? 'width' : 'height' + } + + Collapse.prototype.show = function () { + if (this.transitioning || this.$element.hasClass('in')) return + + var activesData + var actives = this.$parent && this.$parent.children('.panel').children('.in, .collapsing') + + if (actives && actives.length) { + activesData = actives.data('bs.collapse') + if (activesData && activesData.transitioning) return + } + + var startEvent = $.Event('show.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + if (actives && actives.length) { + Plugin.call(actives, 'hide') + activesData || actives.data('bs.collapse', null) + } + + var dimension = this.dimension() + + this.$element + .removeClass('collapse') + .addClass('collapsing')[dimension](0) + .attr('aria-expanded', true) + + this.$trigger + .removeClass('collapsed') + .attr('aria-expanded', true) + + this.transitioning = 1 + + var complete = function () { + this.$element + .removeClass('collapsing') + .addClass('collapse in')[dimension]('') + this.transitioning = 0 + this.$element + .trigger('shown.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + var scrollSize = $.camelCase(['scroll', dimension].join('-')) + + this.$element + .one('bsTransitionEnd', $.proxy(complete, this)) + .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize]) + } + + Collapse.prototype.hide = function () { + if (this.transitioning || !this.$element.hasClass('in')) return + + var startEvent = $.Event('hide.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + var dimension = this.dimension() + + this.$element[dimension](this.$element[dimension]())[0].offsetHeight + + this.$element + .addClass('collapsing') + .removeClass('collapse in') + .attr('aria-expanded', false) + + this.$trigger + .addClass('collapsed') + .attr('aria-expanded', false) + + this.transitioning = 1 + + var complete = function () { + this.transitioning = 0 + this.$element + .removeClass('collapsing') + .addClass('collapse') + .trigger('hidden.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + this.$element + [dimension](0) + .one('bsTransitionEnd', $.proxy(complete, this)) + .emulateTransitionEnd(Collapse.TRANSITION_DURATION) + } + + Collapse.prototype.toggle = function () { + this[this.$element.hasClass('in') ? 'hide' : 'show']() + } + + Collapse.prototype.getParent = function () { + return $(this.options.parent) + .find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]') + .each($.proxy(function (i, element) { + var $element = $(element) + this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element) + }, this)) + .end() + } + + Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) { + var isOpen = $element.hasClass('in') + + $element.attr('aria-expanded', isOpen) + $trigger + .toggleClass('collapsed', !isOpen) + .attr('aria-expanded', isOpen) + } + + function getTargetFromTrigger($trigger) { + var href + var target = $trigger.attr('data-target') + || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7 + + return $(target) + } + + + // COLLAPSE PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.collapse') + var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data && options.toggle && /show|hide/.test(option)) options.toggle = false + if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.collapse + + $.fn.collapse = Plugin + $.fn.collapse.Constructor = Collapse + + + // COLLAPSE NO CONFLICT + // ==================== + + $.fn.collapse.noConflict = function () { + $.fn.collapse = old + return this + } + + + // COLLAPSE DATA-API + // ================= + + $(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e) { + var $this = $(this) + + if (!$this.attr('data-target')) e.preventDefault() + + var $target = getTargetFromTrigger($this) + var data = $target.data('bs.collapse') + var option = data ? 'toggle' : $this.data() + + Plugin.call($target, option) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: dropdown.js v3.3.7 + * http://getbootstrap.com/javascript/#dropdowns + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // DROPDOWN CLASS DEFINITION + // ========================= + + var backdrop = '.dropdown-backdrop' + var toggle = '[data-toggle="dropdown"]' + var Dropdown = function (element) { + $(element).on('click.bs.dropdown', this.toggle) + } + + Dropdown.VERSION = '3.3.7' + + function getParent($this) { + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = selector && $(selector) + + return $parent && $parent.length ? $parent : $this.parent() + } + + function clearMenus(e) { + if (e && e.which === 3) return + $(backdrop).remove() + $(toggle).each(function () { + var $this = $(this) + var $parent = getParent($this) + var relatedTarget = { relatedTarget: this } + + if (!$parent.hasClass('open')) return + + if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return + + $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget)) + + if (e.isDefaultPrevented()) return + + $this.attr('aria-expanded', 'false') + $parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget)) + }) + } + + Dropdown.prototype.toggle = function (e) { + var $this = $(this) + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + clearMenus() + + if (!isActive) { + if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { + // if mobile we use a backdrop because click events don't delegate + $(document.createElement('div')) + .addClass('dropdown-backdrop') + .insertAfter($(this)) + .on('click', clearMenus) + } + + var relatedTarget = { relatedTarget: this } + $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget)) + + if (e.isDefaultPrevented()) return + + $this + .trigger('focus') + .attr('aria-expanded', 'true') + + $parent + .toggleClass('open') + .trigger($.Event('shown.bs.dropdown', relatedTarget)) + } + + return false + } + + Dropdown.prototype.keydown = function (e) { + if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return + + var $this = $(this) + + e.preventDefault() + e.stopPropagation() + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + if (!isActive && e.which != 27 || isActive && e.which == 27) { + if (e.which == 27) $parent.find(toggle).trigger('focus') + return $this.trigger('click') + } + + var desc = ' li:not(.disabled):visible a' + var $items = $parent.find('.dropdown-menu' + desc) + + if (!$items.length) return + + var index = $items.index(e.target) + + if (e.which == 38 && index > 0) index-- // up + if (e.which == 40 && index < $items.length - 1) index++ // down + if (!~index) index = 0 + + $items.eq(index).trigger('focus') + } + + + // DROPDOWN PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.dropdown') + + if (!data) $this.data('bs.dropdown', (data = new Dropdown(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + var old = $.fn.dropdown + + $.fn.dropdown = Plugin + $.fn.dropdown.Constructor = Dropdown + + + // DROPDOWN NO CONFLICT + // ==================== + + $.fn.dropdown.noConflict = function () { + $.fn.dropdown = old + return this + } + + + // APPLY TO STANDARD DROPDOWN ELEMENTS + // =================================== + + $(document) + .on('click.bs.dropdown.data-api', clearMenus) + .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() }) + .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle) + .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown) + .on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: modal.js v3.3.7 + * http://getbootstrap.com/javascript/#modals + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // MODAL CLASS DEFINITION + // ====================== + + var Modal = function (element, options) { + this.options = options + this.$body = $(document.body) + this.$element = $(element) + this.$dialog = this.$element.find('.modal-dialog') + this.$backdrop = null + this.isShown = null + this.originalBodyPad = null + this.scrollbarWidth = 0 + this.ignoreBackdropClick = false + + if (this.options.remote) { + this.$element + .find('.modal-content') + .load(this.options.remote, $.proxy(function () { + this.$element.trigger('loaded.bs.modal') + }, this)) + } + } + + Modal.VERSION = '3.3.7' + + Modal.TRANSITION_DURATION = 300 + Modal.BACKDROP_TRANSITION_DURATION = 150 + + Modal.DEFAULTS = { + backdrop: true, + keyboard: true, + show: true + } + + Modal.prototype.toggle = function (_relatedTarget) { + return this.isShown ? this.hide() : this.show(_relatedTarget) + } + + Modal.prototype.show = function (_relatedTarget) { + var that = this + var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget }) + + this.$element.trigger(e) + + if (this.isShown || e.isDefaultPrevented()) return + + this.isShown = true + + this.checkScrollbar() + this.setScrollbar() + this.$body.addClass('modal-open') + + this.escape() + this.resize() + + this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this)) + + this.$dialog.on('mousedown.dismiss.bs.modal', function () { + that.$element.one('mouseup.dismiss.bs.modal', function (e) { + if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true + }) + }) + + this.backdrop(function () { + var transition = $.support.transition && that.$element.hasClass('fade') + + if (!that.$element.parent().length) { + that.$element.appendTo(that.$body) // don't move modals dom position + } + + that.$element + .show() + .scrollTop(0) + + that.adjustDialog() + + if (transition) { + that.$element[0].offsetWidth // force reflow + } + + that.$element.addClass('in') + + that.enforceFocus() + + var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget }) + + transition ? + that.$dialog // wait for modal to slide in + .one('bsTransitionEnd', function () { + that.$element.trigger('focus').trigger(e) + }) + .emulateTransitionEnd(Modal.TRANSITION_DURATION) : + that.$element.trigger('focus').trigger(e) + }) + } + + Modal.prototype.hide = function (e) { + if (e) e.preventDefault() + + e = $.Event('hide.bs.modal') + + this.$element.trigger(e) + + if (!this.isShown || e.isDefaultPrevented()) return + + this.isShown = false + + this.escape() + this.resize() + + $(document).off('focusin.bs.modal') + + this.$element + .removeClass('in') + .off('click.dismiss.bs.modal') + .off('mouseup.dismiss.bs.modal') + + this.$dialog.off('mousedown.dismiss.bs.modal') + + $.support.transition && this.$element.hasClass('fade') ? + this.$element + .one('bsTransitionEnd', $.proxy(this.hideModal, this)) + .emulateTransitionEnd(Modal.TRANSITION_DURATION) : + this.hideModal() + } + + Modal.prototype.enforceFocus = function () { + $(document) + .off('focusin.bs.modal') // guard against infinite focus loop + .on('focusin.bs.modal', $.proxy(function (e) { + if (document !== e.target && + this.$element[0] !== e.target && + !this.$element.has(e.target).length) { + this.$element.trigger('focus') + } + }, this)) + } + + Modal.prototype.escape = function () { + if (this.isShown && this.options.keyboard) { + this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) { + e.which == 27 && this.hide() + }, this)) + } else if (!this.isShown) { + this.$element.off('keydown.dismiss.bs.modal') + } + } + + Modal.prototype.resize = function () { + if (this.isShown) { + $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this)) + } else { + $(window).off('resize.bs.modal') + } + } + + Modal.prototype.hideModal = function () { + var that = this + this.$element.hide() + this.backdrop(function () { + that.$body.removeClass('modal-open') + that.resetAdjustments() + that.resetScrollbar() + that.$element.trigger('hidden.bs.modal') + }) + } + + Modal.prototype.removeBackdrop = function () { + this.$backdrop && this.$backdrop.remove() + this.$backdrop = null + } + + Modal.prototype.backdrop = function (callback) { + var that = this + var animate = this.$element.hasClass('fade') ? 'fade' : '' + + if (this.isShown && this.options.backdrop) { + var doAnimate = $.support.transition && animate + + this.$backdrop = $(document.createElement('div')) + .addClass('modal-backdrop ' + animate) + .appendTo(this.$body) + + this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) { + if (this.ignoreBackdropClick) { + this.ignoreBackdropClick = false + return + } + if (e.target !== e.currentTarget) return + this.options.backdrop == 'static' + ? this.$element[0].focus() + : this.hide() + }, this)) + + if (doAnimate) this.$backdrop[0].offsetWidth // force reflow + + this.$backdrop.addClass('in') + + if (!callback) return + + doAnimate ? + this.$backdrop + .one('bsTransitionEnd', callback) + .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : + callback() + + } else if (!this.isShown && this.$backdrop) { + this.$backdrop.removeClass('in') + + var callbackRemove = function () { + that.removeBackdrop() + callback && callback() + } + $.support.transition && this.$element.hasClass('fade') ? + this.$backdrop + .one('bsTransitionEnd', callbackRemove) + .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : + callbackRemove() + + } else if (callback) { + callback() + } + } + + // these following methods are used to handle overflowing modals + + Modal.prototype.handleUpdate = function () { + this.adjustDialog() + } + + Modal.prototype.adjustDialog = function () { + var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight + + this.$element.css({ + paddingLeft: !this.bodyIsOverflowing && modalIsOverflowing ? this.scrollbarWidth : '', + paddingRight: this.bodyIsOverflowing && !modalIsOverflowing ? this.scrollbarWidth : '' + }) + } + + Modal.prototype.resetAdjustments = function () { + this.$element.css({ + paddingLeft: '', + paddingRight: '' + }) + } + + Modal.prototype.checkScrollbar = function () { + var fullWindowWidth = window.innerWidth + if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8 + var documentElementRect = document.documentElement.getBoundingClientRect() + fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left) + } + this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth + this.scrollbarWidth = this.measureScrollbar() + } + + Modal.prototype.setScrollbar = function () { + var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10) + this.originalBodyPad = document.body.style.paddingRight || '' + if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth) + } + + Modal.prototype.resetScrollbar = function () { + this.$body.css('padding-right', this.originalBodyPad) + } + + Modal.prototype.measureScrollbar = function () { // thx walsh + var scrollDiv = document.createElement('div') + scrollDiv.className = 'modal-scrollbar-measure' + this.$body.append(scrollDiv) + var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth + this.$body[0].removeChild(scrollDiv) + return scrollbarWidth + } + + + // MODAL PLUGIN DEFINITION + // ======================= + + function Plugin(option, _relatedTarget) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.modal') + var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data) $this.data('bs.modal', (data = new Modal(this, options))) + if (typeof option == 'string') data[option](_relatedTarget) + else if (options.show) data.show(_relatedTarget) + }) + } + + var old = $.fn.modal + + $.fn.modal = Plugin + $.fn.modal.Constructor = Modal + + + // MODAL NO CONFLICT + // ================= + + $.fn.modal.noConflict = function () { + $.fn.modal = old + return this + } + + + // MODAL DATA-API + // ============== + + $(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) { + var $this = $(this) + var href = $this.attr('href') + var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) // strip for ie7 + var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data()) + + if ($this.is('a')) e.preventDefault() + + $target.one('show.bs.modal', function (showEvent) { + if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown + $target.one('hidden.bs.modal', function () { + $this.is(':visible') && $this.trigger('focus') + }) + }) + Plugin.call($target, option, this) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: tooltip.js v3.3.7 + * http://getbootstrap.com/javascript/#tooltip + * Inspired by the original jQuery.tipsy by Jason Frame + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // TOOLTIP PUBLIC CLASS DEFINITION + // =============================== + + var Tooltip = function (element, options) { + this.type = null + this.options = null + this.enabled = null + this.timeout = null + this.hoverState = null + this.$element = null + this.inState = null + + this.init('tooltip', element, options) + } + + Tooltip.VERSION = '3.3.7' + + Tooltip.TRANSITION_DURATION = 150 + + Tooltip.DEFAULTS = { + animation: true, + placement: 'top', + selector: false, + template: '', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + container: false, + viewport: { + selector: 'body', + padding: 0 + } + } + + Tooltip.prototype.init = function (type, element, options) { + this.enabled = true + this.type = type + this.$element = $(element) + this.options = this.getOptions(options) + this.$viewport = this.options.viewport && $($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport)) + this.inState = { click: false, hover: false, focus: false } + + if (this.$element[0] instanceof document.constructor && !this.options.selector) { + throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!') + } + + var triggers = this.options.trigger.split(' ') + + for (var i = triggers.length; i--;) { + var trigger = triggers[i] + + if (trigger == 'click') { + this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this)) + } else if (trigger != 'manual') { + var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin' + var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout' + + this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) + this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) + } + } + + this.options.selector ? + (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) : + this.fixTitle() + } + + Tooltip.prototype.getDefaults = function () { + return Tooltip.DEFAULTS + } + + Tooltip.prototype.getOptions = function (options) { + options = $.extend({}, this.getDefaults(), this.$element.data(), options) + + if (options.delay && typeof options.delay == 'number') { + options.delay = { + show: options.delay, + hide: options.delay + } + } + + return options + } + + Tooltip.prototype.getDelegateOptions = function () { + var options = {} + var defaults = this.getDefaults() + + this._options && $.each(this._options, function (key, value) { + if (defaults[key] != value) options[key] = value + }) + + return options + } + + Tooltip.prototype.enter = function (obj) { + var self = obj instanceof this.constructor ? + obj : $(obj.currentTarget).data('bs.' + this.type) + + if (!self) { + self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) + $(obj.currentTarget).data('bs.' + this.type, self) + } + + if (obj instanceof $.Event) { + self.inState[obj.type == 'focusin' ? 'focus' : 'hover'] = true + } + + if (self.tip().hasClass('in') || self.hoverState == 'in') { + self.hoverState = 'in' + return + } + + clearTimeout(self.timeout) + + self.hoverState = 'in' + + if (!self.options.delay || !self.options.delay.show) return self.show() + + self.timeout = setTimeout(function () { + if (self.hoverState == 'in') self.show() + }, self.options.delay.show) + } + + Tooltip.prototype.isInStateTrue = function () { + for (var key in this.inState) { + if (this.inState[key]) return true + } + + return false + } + + Tooltip.prototype.leave = function (obj) { + var self = obj instanceof this.constructor ? + obj : $(obj.currentTarget).data('bs.' + this.type) + + if (!self) { + self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) + $(obj.currentTarget).data('bs.' + this.type, self) + } + + if (obj instanceof $.Event) { + self.inState[obj.type == 'focusout' ? 'focus' : 'hover'] = false + } + + if (self.isInStateTrue()) return + + clearTimeout(self.timeout) + + self.hoverState = 'out' + + if (!self.options.delay || !self.options.delay.hide) return self.hide() + + self.timeout = setTimeout(function () { + if (self.hoverState == 'out') self.hide() + }, self.options.delay.hide) + } + + Tooltip.prototype.show = function () { + var e = $.Event('show.bs.' + this.type) + + if (this.hasContent() && this.enabled) { + this.$element.trigger(e) + + var inDom = $.contains(this.$element[0].ownerDocument.documentElement, this.$element[0]) + if (e.isDefaultPrevented() || !inDom) return + var that = this + + var $tip = this.tip() + + var tipId = this.getUID(this.type) + + this.setContent() + $tip.attr('id', tipId) + this.$element.attr('aria-describedby', tipId) + + if (this.options.animation) $tip.addClass('fade') + + var placement = typeof this.options.placement == 'function' ? + this.options.placement.call(this, $tip[0], this.$element[0]) : + this.options.placement + + var autoToken = /\s?auto?\s?/i + var autoPlace = autoToken.test(placement) + if (autoPlace) placement = placement.replace(autoToken, '') || 'top' + + $tip + .detach() + .css({ top: 0, left: 0, display: 'block' }) + .addClass(placement) + .data('bs.' + this.type, this) + + this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element) + this.$element.trigger('inserted.bs.' + this.type) + + var pos = this.getPosition() + var actualWidth = $tip[0].offsetWidth + var actualHeight = $tip[0].offsetHeight + + if (autoPlace) { + var orgPlacement = placement + var viewportDim = this.getPosition(this.$viewport) + + placement = placement == 'bottom' && pos.bottom + actualHeight > viewportDim.bottom ? 'top' : + placement == 'top' && pos.top - actualHeight < viewportDim.top ? 'bottom' : + placement == 'right' && pos.right + actualWidth > viewportDim.width ? 'left' : + placement == 'left' && pos.left - actualWidth < viewportDim.left ? 'right' : + placement + + $tip + .removeClass(orgPlacement) + .addClass(placement) + } + + var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight) + + this.applyPlacement(calculatedOffset, placement) + + var complete = function () { + var prevHoverState = that.hoverState + that.$element.trigger('shown.bs.' + that.type) + that.hoverState = null + + if (prevHoverState == 'out') that.leave(that) + } + + $.support.transition && this.$tip.hasClass('fade') ? + $tip + .one('bsTransitionEnd', complete) + .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : + complete() + } + } + + Tooltip.prototype.applyPlacement = function (offset, placement) { + var $tip = this.tip() + var width = $tip[0].offsetWidth + var height = $tip[0].offsetHeight + + // manually read margins because getBoundingClientRect includes difference + var marginTop = parseInt($tip.css('margin-top'), 10) + var marginLeft = parseInt($tip.css('margin-left'), 10) + + // we must check for NaN for ie 8/9 + if (isNaN(marginTop)) marginTop = 0 + if (isNaN(marginLeft)) marginLeft = 0 + + offset.top += marginTop + offset.left += marginLeft + + // $.fn.offset doesn't round pixel values + // so we use setOffset directly with our own function B-0 + $.offset.setOffset($tip[0], $.extend({ + using: function (props) { + $tip.css({ + top: Math.round(props.top), + left: Math.round(props.left) + }) + } + }, offset), 0) + + $tip.addClass('in') + + // check to see if placing tip in new offset caused the tip to resize itself + var actualWidth = $tip[0].offsetWidth + var actualHeight = $tip[0].offsetHeight + + if (placement == 'top' && actualHeight != height) { + offset.top = offset.top + height - actualHeight + } + + var delta = this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight) + + if (delta.left) offset.left += delta.left + else offset.top += delta.top + + var isVertical = /top|bottom/.test(placement) + var arrowDelta = isVertical ? delta.left * 2 - width + actualWidth : delta.top * 2 - height + actualHeight + var arrowOffsetPosition = isVertical ? 'offsetWidth' : 'offsetHeight' + + $tip.offset(offset) + this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical) + } + + Tooltip.prototype.replaceArrow = function (delta, dimension, isVertical) { + this.arrow() + .css(isVertical ? 'left' : 'top', 50 * (1 - delta / dimension) + '%') + .css(isVertical ? 'top' : 'left', '') + } + + Tooltip.prototype.setContent = function () { + var $tip = this.tip() + var title = this.getTitle() + + $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title) + $tip.removeClass('fade in top bottom left right') + } + + Tooltip.prototype.hide = function (callback) { + var that = this + var $tip = $(this.$tip) + var e = $.Event('hide.bs.' + this.type) + + function complete() { + if (that.hoverState != 'in') $tip.detach() + if (that.$element) { // TODO: Check whether guarding this code with this `if` is really necessary. + that.$element + .removeAttr('aria-describedby') + .trigger('hidden.bs.' + that.type) + } + callback && callback() + } + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + $tip.removeClass('in') + + $.support.transition && $tip.hasClass('fade') ? + $tip + .one('bsTransitionEnd', complete) + .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : + complete() + + this.hoverState = null + + return this + } + + Tooltip.prototype.fixTitle = function () { + var $e = this.$element + if ($e.attr('title') || typeof $e.attr('data-original-title') != 'string') { + $e.attr('data-original-title', $e.attr('title') || '').attr('title', '') + } + } + + Tooltip.prototype.hasContent = function () { + return this.getTitle() + } + + Tooltip.prototype.getPosition = function ($element) { + $element = $element || this.$element + + var el = $element[0] + var isBody = el.tagName == 'BODY' + + var elRect = el.getBoundingClientRect() + if (elRect.width == null) { + // width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093 + elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top }) + } + var isSvg = window.SVGElement && el instanceof window.SVGElement + // Avoid using $.offset() on SVGs since it gives incorrect results in jQuery 3. + // See https://github.com/twbs/bootstrap/issues/20280 + var elOffset = isBody ? { top: 0, left: 0 } : (isSvg ? null : $element.offset()) + var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() } + var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null + + return $.extend({}, elRect, scroll, outerDims, elOffset) + } + + Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) { + return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } : + placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } : + placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } : + /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width } + + } + + Tooltip.prototype.getViewportAdjustedDelta = function (placement, pos, actualWidth, actualHeight) { + var delta = { top: 0, left: 0 } + if (!this.$viewport) return delta + + var viewportPadding = this.options.viewport && this.options.viewport.padding || 0 + var viewportDimensions = this.getPosition(this.$viewport) + + if (/right|left/.test(placement)) { + var topEdgeOffset = pos.top - viewportPadding - viewportDimensions.scroll + var bottomEdgeOffset = pos.top + viewportPadding - viewportDimensions.scroll + actualHeight + if (topEdgeOffset < viewportDimensions.top) { // top overflow + delta.top = viewportDimensions.top - topEdgeOffset + } else if (bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height) { // bottom overflow + delta.top = viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset + } + } else { + var leftEdgeOffset = pos.left - viewportPadding + var rightEdgeOffset = pos.left + viewportPadding + actualWidth + if (leftEdgeOffset < viewportDimensions.left) { // left overflow + delta.left = viewportDimensions.left - leftEdgeOffset + } else if (rightEdgeOffset > viewportDimensions.right) { // right overflow + delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset + } + } + + return delta + } + + Tooltip.prototype.getTitle = function () { + var title + var $e = this.$element + var o = this.options + + title = $e.attr('data-original-title') + || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) + + return title + } + + Tooltip.prototype.getUID = function (prefix) { + do prefix += ~~(Math.random() * 1000000) + while (document.getElementById(prefix)) + return prefix + } + + Tooltip.prototype.tip = function () { + if (!this.$tip) { + this.$tip = $(this.options.template) + if (this.$tip.length != 1) { + throw new Error(this.type + ' `template` option must consist of exactly 1 top-level element!') + } + } + return this.$tip + } + + Tooltip.prototype.arrow = function () { + return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')) + } + + Tooltip.prototype.enable = function () { + this.enabled = true + } + + Tooltip.prototype.disable = function () { + this.enabled = false + } + + Tooltip.prototype.toggleEnabled = function () { + this.enabled = !this.enabled + } + + Tooltip.prototype.toggle = function (e) { + var self = this + if (e) { + self = $(e.currentTarget).data('bs.' + this.type) + if (!self) { + self = new this.constructor(e.currentTarget, this.getDelegateOptions()) + $(e.currentTarget).data('bs.' + this.type, self) + } + } + + if (e) { + self.inState.click = !self.inState.click + if (self.isInStateTrue()) self.enter(self) + else self.leave(self) + } else { + self.tip().hasClass('in') ? self.leave(self) : self.enter(self) + } + } + + Tooltip.prototype.destroy = function () { + var that = this + clearTimeout(this.timeout) + this.hide(function () { + that.$element.off('.' + that.type).removeData('bs.' + that.type) + if (that.$tip) { + that.$tip.detach() + } + that.$tip = null + that.$arrow = null + that.$viewport = null + that.$element = null + }) + } + + + // TOOLTIP PLUGIN DEFINITION + // ========================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.tooltip') + var options = typeof option == 'object' && option + + if (!data && /destroy|hide/.test(option)) return + if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.tooltip + + $.fn.tooltip = Plugin + $.fn.tooltip.Constructor = Tooltip + + + // TOOLTIP NO CONFLICT + // =================== + + $.fn.tooltip.noConflict = function () { + $.fn.tooltip = old + return this + } + +}(jQuery); + +/* ======================================================================== + * Bootstrap: popover.js v3.3.7 + * http://getbootstrap.com/javascript/#popovers + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // POPOVER PUBLIC CLASS DEFINITION + // =============================== + + var Popover = function (element, options) { + this.init('popover', element, options) + } + + if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js') + + Popover.VERSION = '3.3.7' + + Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, { + placement: 'right', + trigger: 'click', + content: '', + template: '' + }) + + + // NOTE: POPOVER EXTENDS tooltip.js + // ================================ + + Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype) + + Popover.prototype.constructor = Popover + + Popover.prototype.getDefaults = function () { + return Popover.DEFAULTS + } + + Popover.prototype.setContent = function () { + var $tip = this.tip() + var title = this.getTitle() + var content = this.getContent() + + $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title) + $tip.find('.popover-content').children().detach().end()[ // we use append for html objects to maintain js events + this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text' + ](content) + + $tip.removeClass('fade top bottom left right in') + + // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do + // this manually by checking the contents. + if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide() + } + + Popover.prototype.hasContent = function () { + return this.getTitle() || this.getContent() + } + + Popover.prototype.getContent = function () { + var $e = this.$element + var o = this.options + + return $e.attr('data-content') + || (typeof o.content == 'function' ? + o.content.call($e[0]) : + o.content) + } + + Popover.prototype.arrow = function () { + return (this.$arrow = this.$arrow || this.tip().find('.arrow')) + } + + + // POPOVER PLUGIN DEFINITION + // ========================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.popover') + var options = typeof option == 'object' && option + + if (!data && /destroy|hide/.test(option)) return + if (!data) $this.data('bs.popover', (data = new Popover(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.popover + + $.fn.popover = Plugin + $.fn.popover.Constructor = Popover + + + // POPOVER NO CONFLICT + // =================== + + $.fn.popover.noConflict = function () { + $.fn.popover = old + return this + } + +}(jQuery); + +/* ======================================================================== + * Bootstrap: scrollspy.js v3.3.7 + * http://getbootstrap.com/javascript/#scrollspy + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // SCROLLSPY CLASS DEFINITION + // ========================== + + function ScrollSpy(element, options) { + this.$body = $(document.body) + this.$scrollElement = $(element).is(document.body) ? $(window) : $(element) + this.options = $.extend({}, ScrollSpy.DEFAULTS, options) + this.selector = (this.options.target || '') + ' .nav li > a' + this.offsets = [] + this.targets = [] + this.activeTarget = null + this.scrollHeight = 0 + + this.$scrollElement.on('scroll.bs.scrollspy', $.proxy(this.process, this)) + this.refresh() + this.process() + } + + ScrollSpy.VERSION = '3.3.7' + + ScrollSpy.DEFAULTS = { + offset: 10 + } + + ScrollSpy.prototype.getScrollHeight = function () { + return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight) + } + + ScrollSpy.prototype.refresh = function () { + var that = this + var offsetMethod = 'offset' + var offsetBase = 0 + + this.offsets = [] + this.targets = [] + this.scrollHeight = this.getScrollHeight() + + if (!$.isWindow(this.$scrollElement[0])) { + offsetMethod = 'position' + offsetBase = this.$scrollElement.scrollTop() + } + + this.$body + .find(this.selector) + .map(function () { + var $el = $(this) + var href = $el.data('target') || $el.attr('href') + var $href = /^#./.test(href) && $(href) + + return ($href + && $href.length + && $href.is(':visible') + && [[$href[offsetMethod]().top + offsetBase, href]]) || null + }) + .sort(function (a, b) { return a[0] - b[0] }) + .each(function () { + that.offsets.push(this[0]) + that.targets.push(this[1]) + }) + } + + ScrollSpy.prototype.process = function () { + var scrollTop = this.$scrollElement.scrollTop() + this.options.offset + var scrollHeight = this.getScrollHeight() + var maxScroll = this.options.offset + scrollHeight - this.$scrollElement.height() + var offsets = this.offsets + var targets = this.targets + var activeTarget = this.activeTarget + var i + + if (this.scrollHeight != scrollHeight) { + this.refresh() + } + + if (scrollTop >= maxScroll) { + return activeTarget != (i = targets[targets.length - 1]) && this.activate(i) + } + + if (activeTarget && scrollTop < offsets[0]) { + this.activeTarget = null + return this.clear() + } + + for (i = offsets.length; i--;) { + activeTarget != targets[i] + && scrollTop >= offsets[i] + && (offsets[i + 1] === undefined || scrollTop < offsets[i + 1]) + && this.activate(targets[i]) + } + } + + ScrollSpy.prototype.activate = function (target) { + this.activeTarget = target + + this.clear() + + var selector = this.selector + + '[data-target="' + target + '"],' + + this.selector + '[href="' + target + '"]' + + var active = $(selector) + .parents('li') + .addClass('active') + + if (active.parent('.dropdown-menu').length) { + active = active + .closest('li.dropdown') + .addClass('active') + } + + active.trigger('activate.bs.scrollspy') + } + + ScrollSpy.prototype.clear = function () { + $(this.selector) + .parentsUntil(this.options.target, '.active') + .removeClass('active') + } + + + // SCROLLSPY PLUGIN DEFINITION + // =========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.scrollspy') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.scrollspy + + $.fn.scrollspy = Plugin + $.fn.scrollspy.Constructor = ScrollSpy + + + // SCROLLSPY NO CONFLICT + // ===================== + + $.fn.scrollspy.noConflict = function () { + $.fn.scrollspy = old + return this + } + + + // SCROLLSPY DATA-API + // ================== + + $(window).on('load.bs.scrollspy.data-api', function () { + $('[data-spy="scroll"]').each(function () { + var $spy = $(this) + Plugin.call($spy, $spy.data()) + }) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: tab.js v3.3.7 + * http://getbootstrap.com/javascript/#tabs + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // TAB CLASS DEFINITION + // ==================== + + var Tab = function (element) { + // jscs:disable requireDollarBeforejQueryAssignment + this.element = $(element) + // jscs:enable requireDollarBeforejQueryAssignment + } + + Tab.VERSION = '3.3.7' + + Tab.TRANSITION_DURATION = 150 + + Tab.prototype.show = function () { + var $this = this.element + var $ul = $this.closest('ul:not(.dropdown-menu)') + var selector = $this.data('target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + if ($this.parent('li').hasClass('active')) return + + var $previous = $ul.find('.active:last a') + var hideEvent = $.Event('hide.bs.tab', { + relatedTarget: $this[0] + }) + var showEvent = $.Event('show.bs.tab', { + relatedTarget: $previous[0] + }) + + $previous.trigger(hideEvent) + $this.trigger(showEvent) + + if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return + + var $target = $(selector) + + this.activate($this.closest('li'), $ul) + this.activate($target, $target.parent(), function () { + $previous.trigger({ + type: 'hidden.bs.tab', + relatedTarget: $this[0] + }) + $this.trigger({ + type: 'shown.bs.tab', + relatedTarget: $previous[0] + }) + }) + } + + Tab.prototype.activate = function (element, container, callback) { + var $active = container.find('> .active') + var transition = callback + && $.support.transition + && ($active.length && $active.hasClass('fade') || !!container.find('> .fade').length) + + function next() { + $active + .removeClass('active') + .find('> .dropdown-menu > .active') + .removeClass('active') + .end() + .find('[data-toggle="tab"]') + .attr('aria-expanded', false) + + element + .addClass('active') + .find('[data-toggle="tab"]') + .attr('aria-expanded', true) + + if (transition) { + element[0].offsetWidth // reflow for transition + element.addClass('in') + } else { + element.removeClass('fade') + } + + if (element.parent('.dropdown-menu').length) { + element + .closest('li.dropdown') + .addClass('active') + .end() + .find('[data-toggle="tab"]') + .attr('aria-expanded', true) + } + + callback && callback() + } + + $active.length && transition ? + $active + .one('bsTransitionEnd', next) + .emulateTransitionEnd(Tab.TRANSITION_DURATION) : + next() + + $active.removeClass('in') + } + + + // TAB PLUGIN DEFINITION + // ===================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.tab') + + if (!data) $this.data('bs.tab', (data = new Tab(this))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.tab + + $.fn.tab = Plugin + $.fn.tab.Constructor = Tab + + + // TAB NO CONFLICT + // =============== + + $.fn.tab.noConflict = function () { + $.fn.tab = old + return this + } + + + // TAB DATA-API + // ============ + + var clickHandler = function (e) { + e.preventDefault() + Plugin.call($(this), 'show') + } + + $(document) + .on('click.bs.tab.data-api', '[data-toggle="tab"]', clickHandler) + .on('click.bs.tab.data-api', '[data-toggle="pill"]', clickHandler) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: affix.js v3.3.7 + * http://getbootstrap.com/javascript/#affix + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // AFFIX CLASS DEFINITION + // ====================== + + var Affix = function (element, options) { + this.options = $.extend({}, Affix.DEFAULTS, options) + + this.$target = $(this.options.target) + .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this)) + .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) + + this.$element = $(element) + this.affixed = null + this.unpin = null + this.pinnedOffset = null + + this.checkPosition() + } + + Affix.VERSION = '3.3.7' + + Affix.RESET = 'affix affix-top affix-bottom' + + Affix.DEFAULTS = { + offset: 0, + target: window + } + + Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) { + var scrollTop = this.$target.scrollTop() + var position = this.$element.offset() + var targetHeight = this.$target.height() + + if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false + + if (this.affixed == 'bottom') { + if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom' + return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom' + } + + var initializing = this.affixed == null + var colliderTop = initializing ? scrollTop : position.top + var colliderHeight = initializing ? targetHeight : height + + if (offsetTop != null && scrollTop <= offsetTop) return 'top' + if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom' + + return false + } + + Affix.prototype.getPinnedOffset = function () { + if (this.pinnedOffset) return this.pinnedOffset + this.$element.removeClass(Affix.RESET).addClass('affix') + var scrollTop = this.$target.scrollTop() + var position = this.$element.offset() + return (this.pinnedOffset = position.top - scrollTop) + } + + Affix.prototype.checkPositionWithEventLoop = function () { + setTimeout($.proxy(this.checkPosition, this), 1) + } + + Affix.prototype.checkPosition = function () { + if (!this.$element.is(':visible')) return + + var height = this.$element.height() + var offset = this.options.offset + var offsetTop = offset.top + var offsetBottom = offset.bottom + var scrollHeight = Math.max($(document).height(), $(document.body).height()) + + if (typeof offset != 'object') offsetBottom = offsetTop = offset + if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element) + if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element) + + var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom) + + if (this.affixed != affix) { + if (this.unpin != null) this.$element.css('top', '') + + var affixType = 'affix' + (affix ? '-' + affix : '') + var e = $.Event(affixType + '.bs.affix') + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + this.affixed = affix + this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null + + this.$element + .removeClass(Affix.RESET) + .addClass(affixType) + .trigger(affixType.replace('affix', 'affixed') + '.bs.affix') + } + + if (affix == 'bottom') { + this.$element.offset({ + top: scrollHeight - height - offsetBottom + }) + } + } + + + // AFFIX PLUGIN DEFINITION + // ======================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.affix') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.affix', (data = new Affix(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.affix + + $.fn.affix = Plugin + $.fn.affix.Constructor = Affix + + + // AFFIX NO CONFLICT + // ================= + + $.fn.affix.noConflict = function () { + $.fn.affix = old + return this + } + + + // AFFIX DATA-API + // ============== + + $(window).on('load', function () { + $('[data-spy="affix"]').each(function () { + var $spy = $(this) + var data = $spy.data() + + data.offset = data.offset || {} + + if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom + if (data.offsetTop != null) data.offset.top = data.offsetTop + + Plugin.call($spy, data) + }) + }) + +}(jQuery); + + +/*! + +JSZip - A Javascript class for generating and reading zip files + + +(c) 2009-2014 Stuart Knightley +Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/master/LICENSE.markdown. + +JSZip uses the library pako released under the MIT license : +https://github.com/nodeca/pako/blob/master/LICENSE +*/ +!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var f;"undefined"!=typeof window?f=window:"undefined"!=typeof global?f=global:"undefined"!=typeof self&&(f=self),f.JSZip=e()}}(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o> 2; + enc2 = ((chr1 & 3) << 4) | (chr2 >> 4); + enc3 = ((chr2 & 15) << 2) | (chr3 >> 6); + enc4 = chr3 & 63; + + if (isNaN(chr2)) { + enc3 = enc4 = 64; + } + else if (isNaN(chr3)) { + enc4 = 64; + } + + output = output + _keyStr.charAt(enc1) + _keyStr.charAt(enc2) + _keyStr.charAt(enc3) + _keyStr.charAt(enc4); + + } + + return output; +}; + +// public method for decoding +exports.decode = function(input, utf8) { + var output = ""; + var chr1, chr2, chr3; + var enc1, enc2, enc3, enc4; + var i = 0; + + input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ""); + + while (i < input.length) { + + enc1 = _keyStr.indexOf(input.charAt(i++)); + enc2 = _keyStr.indexOf(input.charAt(i++)); + enc3 = _keyStr.indexOf(input.charAt(i++)); + enc4 = _keyStr.indexOf(input.charAt(i++)); + + chr1 = (enc1 << 2) | (enc2 >> 4); + chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); + chr3 = ((enc3 & 3) << 6) | enc4; + + output = output + String.fromCharCode(chr1); + + if (enc3 != 64) { + output = output + String.fromCharCode(chr2); + } + if (enc4 != 64) { + output = output + String.fromCharCode(chr3); + } + + } + + return output; + +}; + +},{}],2:[function(_dereq_,module,exports){ +'use strict'; +function CompressedObject() { + this.compressedSize = 0; + this.uncompressedSize = 0; + this.crc32 = 0; + this.compressionMethod = null; + this.compressedContent = null; +} + +CompressedObject.prototype = { + /** + * Return the decompressed content in an unspecified format. + * The format will depend on the decompressor. + * @return {Object} the decompressed content. + */ + getContent: function() { + return null; // see implementation + }, + /** + * Return the compressed content in an unspecified format. + * The format will depend on the compressed conten source. + * @return {Object} the compressed content. + */ + getCompressedContent: function() { + return null; // see implementation + } +}; +module.exports = CompressedObject; + +},{}],3:[function(_dereq_,module,exports){ +'use strict'; +exports.STORE = { + magic: "\x00\x00", + compress: function(content, compressionOptions) { + return content; // no compression + }, + uncompress: function(content) { + return content; // no compression + }, + compressInputType: null, + uncompressInputType: null +}; +exports.DEFLATE = _dereq_('./flate'); + +},{"./flate":8}],4:[function(_dereq_,module,exports){ +'use strict'; + +var utils = _dereq_('./utils'); + +var table = [ + 0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, + 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3, + 0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, + 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91, + 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE, + 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7, + 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, + 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5, + 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, + 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B, + 0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, + 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59, + 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, + 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F, + 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, + 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D, + 0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A, + 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433, + 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, + 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01, + 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, + 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457, + 0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C, + 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65, + 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, + 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB, + 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, + 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9, + 0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086, + 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F, + 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, + 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD, + 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, + 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683, + 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8, + 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1, + 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, + 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7, + 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, + 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5, + 0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, + 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B, + 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, + 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79, + 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, + 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F, + 0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, + 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D, + 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, + 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713, + 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, + 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21, + 0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E, + 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777, + 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, + 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45, + 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, + 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB, + 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0, + 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9, + 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, + 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF, + 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, + 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D +]; + +/** + * + * Javascript crc32 + * http://www.webtoolkit.info/ + * + */ +module.exports = function crc32(input, crc) { + if (typeof input === "undefined" || !input.length) { + return 0; + } + + var isArray = utils.getTypeOf(input) !== "string"; + + if (typeof(crc) == "undefined") { + crc = 0; + } + var x = 0; + var y = 0; + var b = 0; + + crc = crc ^ (-1); + for (var i = 0, iTop = input.length; i < iTop; i++) { + b = isArray ? input[i] : input.charCodeAt(i); + y = (crc ^ b) & 0xFF; + x = table[y]; + crc = (crc >>> 8) ^ x; + } + + return crc ^ (-1); +}; +// vim: set shiftwidth=4 softtabstop=4: + +},{"./utils":21}],5:[function(_dereq_,module,exports){ +'use strict'; +var utils = _dereq_('./utils'); + +function DataReader(data) { + this.data = null; // type : see implementation + this.length = 0; + this.index = 0; +} +DataReader.prototype = { + /** + * Check that the offset will not go too far. + * @param {string} offset the additional offset to check. + * @throws {Error} an Error if the offset is out of bounds. + */ + checkOffset: function(offset) { + this.checkIndex(this.index + offset); + }, + /** + * Check that the specifed index will not be too far. + * @param {string} newIndex the index to check. + * @throws {Error} an Error if the index is out of bounds. + */ + checkIndex: function(newIndex) { + if (this.length < newIndex || newIndex < 0) { + throw new Error("End of data reached (data length = " + this.length + ", asked index = " + (newIndex) + "). Corrupted zip ?"); + } + }, + /** + * Change the index. + * @param {number} newIndex The new index. + * @throws {Error} if the new index is out of the data. + */ + setIndex: function(newIndex) { + this.checkIndex(newIndex); + this.index = newIndex; + }, + /** + * Skip the next n bytes. + * @param {number} n the number of bytes to skip. + * @throws {Error} if the new index is out of the data. + */ + skip: function(n) { + this.setIndex(this.index + n); + }, + /** + * Get the byte at the specified index. + * @param {number} i the index to use. + * @return {number} a byte. + */ + byteAt: function(i) { + // see implementations + }, + /** + * Get the next number with a given byte size. + * @param {number} size the number of bytes to read. + * @return {number} the corresponding number. + */ + readInt: function(size) { + var result = 0, + i; + this.checkOffset(size); + for (i = this.index + size - 1; i >= this.index; i--) { + result = (result << 8) + this.byteAt(i); + } + this.index += size; + return result; + }, + /** + * Get the next string with a given byte size. + * @param {number} size the number of bytes to read. + * @return {string} the corresponding string. + */ + readString: function(size) { + return utils.transformTo("string", this.readData(size)); + }, + /** + * Get raw data without conversion, bytes. + * @param {number} size the number of bytes to read. + * @return {Object} the raw data, implementation specific. + */ + readData: function(size) { + // see implementations + }, + /** + * Find the last occurence of a zip signature (4 bytes). + * @param {string} sig the signature to find. + * @return {number} the index of the last occurence, -1 if not found. + */ + lastIndexOfSignature: function(sig) { + // see implementations + }, + /** + * Get the next date. + * @return {Date} the date. + */ + readDate: function() { + var dostime = this.readInt(4); + return new Date( + ((dostime >> 25) & 0x7f) + 1980, // year + ((dostime >> 21) & 0x0f) - 1, // month + (dostime >> 16) & 0x1f, // day + (dostime >> 11) & 0x1f, // hour + (dostime >> 5) & 0x3f, // minute + (dostime & 0x1f) << 1); // second + } +}; +module.exports = DataReader; + +},{"./utils":21}],6:[function(_dereq_,module,exports){ +'use strict'; +exports.base64 = false; +exports.binary = false; +exports.dir = false; +exports.createFolders = false; +exports.date = null; +exports.compression = null; +exports.compressionOptions = null; +exports.comment = null; +exports.unixPermissions = null; +exports.dosPermissions = null; + +},{}],7:[function(_dereq_,module,exports){ +'use strict'; +var utils = _dereq_('./utils'); + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.string2binary = function(str) { + return utils.string2binary(str); +}; + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.string2Uint8Array = function(str) { + return utils.transformTo("uint8array", str); +}; + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.uint8Array2String = function(array) { + return utils.transformTo("string", array); +}; + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.string2Blob = function(str) { + var buffer = utils.transformTo("arraybuffer", str); + return utils.arrayBuffer2Blob(buffer); +}; + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.arrayBuffer2Blob = function(buffer) { + return utils.arrayBuffer2Blob(buffer); +}; + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.transformTo = function(outputType, input) { + return utils.transformTo(outputType, input); +}; + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.getTypeOf = function(input) { + return utils.getTypeOf(input); +}; + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.checkSupport = function(type) { + return utils.checkSupport(type); +}; + +/** + * @deprecated + * This value will be removed in a future version without replacement. + */ +exports.MAX_VALUE_16BITS = utils.MAX_VALUE_16BITS; + +/** + * @deprecated + * This value will be removed in a future version without replacement. + */ +exports.MAX_VALUE_32BITS = utils.MAX_VALUE_32BITS; + + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.pretty = function(str) { + return utils.pretty(str); +}; + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.findCompression = function(compressionMethod) { + return utils.findCompression(compressionMethod); +}; + +/** + * @deprecated + * This function will be removed in a future version without replacement. + */ +exports.isRegExp = function (object) { + return utils.isRegExp(object); +}; + + +},{"./utils":21}],8:[function(_dereq_,module,exports){ +'use strict'; +var USE_TYPEDARRAY = (typeof Uint8Array !== 'undefined') && (typeof Uint16Array !== 'undefined') && (typeof Uint32Array !== 'undefined'); + +var pako = _dereq_("pako"); +exports.uncompressInputType = USE_TYPEDARRAY ? "uint8array" : "array"; +exports.compressInputType = USE_TYPEDARRAY ? "uint8array" : "array"; + +exports.magic = "\x08\x00"; +exports.compress = function(input, compressionOptions) { + return pako.deflateRaw(input, { + level : compressionOptions.level || -1 // default compression + }); +}; +exports.uncompress = function(input) { + return pako.inflateRaw(input); +}; + +},{"pako":24}],9:[function(_dereq_,module,exports){ +'use strict'; + +var base64 = _dereq_('./base64'); + +/** +Usage: + zip = new JSZip(); + zip.file("hello.txt", "Hello, World!").file("tempfile", "nothing"); + zip.folder("images").file("smile.gif", base64Data, {base64: true}); + zip.file("Xmas.txt", "Ho ho ho !", {date : new Date("December 25, 2007 00:00:01")}); + zip.remove("tempfile"); + + base64zip = zip.generate(); + +**/ + +/** + * Representation a of zip file in js + * @constructor + * @param {String=|ArrayBuffer=|Uint8Array=} data the data to load, if any (optional). + * @param {Object=} options the options for creating this objects (optional). + */ +function JSZip(data, options) { + // if this constructor is used without `new`, it adds `new` before itself: + if(!(this instanceof JSZip)) return new JSZip(data, options); + + // object containing the files : + // { + // "folder/" : {...}, + // "folder/data.txt" : {...} + // } + this.files = {}; + + this.comment = null; + + // Where we are in the hierarchy + this.root = ""; + if (data) { + this.load(data, options); + } + this.clone = function() { + var newObj = new JSZip(); + for (var i in this) { + if (typeof this[i] !== "function") { + newObj[i] = this[i]; + } + } + return newObj; + }; +} +JSZip.prototype = _dereq_('./object'); +JSZip.prototype.load = _dereq_('./load'); +JSZip.support = _dereq_('./support'); +JSZip.defaults = _dereq_('./defaults'); + +/** + * @deprecated + * This namespace will be removed in a future version without replacement. + */ +JSZip.utils = _dereq_('./deprecatedPublicUtils'); + +JSZip.base64 = { + /** + * @deprecated + * This method will be removed in a future version without replacement. + */ + encode : function(input) { + return base64.encode(input); + }, + /** + * @deprecated + * This method will be removed in a future version without replacement. + */ + decode : function(input) { + return base64.decode(input); + } +}; +JSZip.compressions = _dereq_('./compressions'); +module.exports = JSZip; + +},{"./base64":1,"./compressions":3,"./defaults":6,"./deprecatedPublicUtils":7,"./load":10,"./object":13,"./support":17}],10:[function(_dereq_,module,exports){ +'use strict'; +var base64 = _dereq_('./base64'); +var ZipEntries = _dereq_('./zipEntries'); +module.exports = function(data, options) { + var files, zipEntries, i, input; + options = options || {}; + if (options.base64) { + data = base64.decode(data); + } + + zipEntries = new ZipEntries(data, options); + files = zipEntries.files; + for (i = 0; i < files.length; i++) { + input = files[i]; + this.file(input.fileName, input.decompressed, { + binary: true, + optimizedBinaryString: true, + date: input.date, + dir: input.dir, + comment : input.fileComment.length ? input.fileComment : null, + unixPermissions : input.unixPermissions, + dosPermissions : input.dosPermissions, + createFolders: options.createFolders + }); + } + if (zipEntries.zipComment.length) { + this.comment = zipEntries.zipComment; + } + + return this; +}; + +},{"./base64":1,"./zipEntries":22}],11:[function(_dereq_,module,exports){ +(function (Buffer){ +'use strict'; +module.exports = function(data, encoding){ + return new Buffer(data, encoding); +}; +module.exports.test = function(b){ + return Buffer.isBuffer(b); +}; + +}).call(this,(typeof Buffer !== "undefined" ? Buffer : undefined)) +},{}],12:[function(_dereq_,module,exports){ +'use strict'; +var Uint8ArrayReader = _dereq_('./uint8ArrayReader'); + +function NodeBufferReader(data) { + this.data = data; + this.length = this.data.length; + this.index = 0; +} +NodeBufferReader.prototype = new Uint8ArrayReader(); + +/** + * @see DataReader.readData + */ +NodeBufferReader.prototype.readData = function(size) { + this.checkOffset(size); + var result = this.data.slice(this.index, this.index + size); + this.index += size; + return result; +}; +module.exports = NodeBufferReader; + +},{"./uint8ArrayReader":18}],13:[function(_dereq_,module,exports){ +'use strict'; +var support = _dereq_('./support'); +var utils = _dereq_('./utils'); +var crc32 = _dereq_('./crc32'); +var signature = _dereq_('./signature'); +var defaults = _dereq_('./defaults'); +var base64 = _dereq_('./base64'); +var compressions = _dereq_('./compressions'); +var CompressedObject = _dereq_('./compressedObject'); +var nodeBuffer = _dereq_('./nodeBuffer'); +var utf8 = _dereq_('./utf8'); +var StringWriter = _dereq_('./stringWriter'); +var Uint8ArrayWriter = _dereq_('./uint8ArrayWriter'); + +/** + * Returns the raw data of a ZipObject, decompress the content if necessary. + * @param {ZipObject} file the file to use. + * @return {String|ArrayBuffer|Uint8Array|Buffer} the data. + */ +var getRawData = function(file) { + if (file._data instanceof CompressedObject) { + file._data = file._data.getContent(); + file.options.binary = true; + file.options.base64 = false; + + if (utils.getTypeOf(file._data) === "uint8array") { + var copy = file._data; + // when reading an arraybuffer, the CompressedObject mechanism will keep it and subarray() a Uint8Array. + // if we request a file in the same format, we might get the same Uint8Array or its ArrayBuffer (the original zip file). + file._data = new Uint8Array(copy.length); + // with an empty Uint8Array, Opera fails with a "Offset larger than array size" + if (copy.length !== 0) { + file._data.set(copy, 0); + } + } + } + return file._data; +}; + +/** + * Returns the data of a ZipObject in a binary form. If the content is an unicode string, encode it. + * @param {ZipObject} file the file to use. + * @return {String|ArrayBuffer|Uint8Array|Buffer} the data. + */ +var getBinaryData = function(file) { + var result = getRawData(file), + type = utils.getTypeOf(result); + if (type === "string") { + if (!file.options.binary) { + // unicode text ! + // unicode string => binary string is a painful process, check if we can avoid it. + if (support.nodebuffer) { + return nodeBuffer(result, "utf-8"); + } + } + return file.asBinary(); + } + return result; +}; + +/** + * Transform this._data into a string. + * @param {function} filter a function String -> String, applied if not null on the result. + * @return {String} the string representing this._data. + */ +var dataToString = function(asUTF8) { + var result = getRawData(this); + if (result === null || typeof result === "undefined") { + return ""; + } + // if the data is a base64 string, we decode it before checking the encoding ! + if (this.options.base64) { + result = base64.decode(result); + } + if (asUTF8 && this.options.binary) { + // JSZip.prototype.utf8decode supports arrays as input + // skip to array => string step, utf8decode will do it. + result = out.utf8decode(result); + } + else { + // no utf8 transformation, do the array => string step. + result = utils.transformTo("string", result); + } + + if (!asUTF8 && !this.options.binary) { + result = utils.transformTo("string", out.utf8encode(result)); + } + return result; +}; +/** + * A simple object representing a file in the zip file. + * @constructor + * @param {string} name the name of the file + * @param {String|ArrayBuffer|Uint8Array|Buffer} data the data + * @param {Object} options the options of the file + */ +var ZipObject = function(name, data, options) { + this.name = name; + this.dir = options.dir; + this.date = options.date; + this.comment = options.comment; + this.unixPermissions = options.unixPermissions; + this.dosPermissions = options.dosPermissions; + + this._data = data; + this.options = options; + + /* + * This object contains initial values for dir and date. + * With them, we can check if the user changed the deprecated metadata in + * `ZipObject#options` or not. + */ + this._initialMetadata = { + dir : options.dir, + date : options.date + }; +}; + +ZipObject.prototype = { + /** + * Return the content as UTF8 string. + * @return {string} the UTF8 string. + */ + asText: function() { + return dataToString.call(this, true); + }, + /** + * Returns the binary content. + * @return {string} the content as binary. + */ + asBinary: function() { + return dataToString.call(this, false); + }, + /** + * Returns the content as a nodejs Buffer. + * @return {Buffer} the content as a Buffer. + */ + asNodeBuffer: function() { + var result = getBinaryData(this); + return utils.transformTo("nodebuffer", result); + }, + /** + * Returns the content as an Uint8Array. + * @return {Uint8Array} the content as an Uint8Array. + */ + asUint8Array: function() { + var result = getBinaryData(this); + return utils.transformTo("uint8array", result); + }, + /** + * Returns the content as an ArrayBuffer. + * @return {ArrayBuffer} the content as an ArrayBufer. + */ + asArrayBuffer: function() { + return this.asUint8Array().buffer; + } +}; + +/** + * Transform an integer into a string in hexadecimal. + * @private + * @param {number} dec the number to convert. + * @param {number} bytes the number of bytes to generate. + * @returns {string} the result. + */ +var decToHex = function(dec, bytes) { + var hex = "", + i; + for (i = 0; i < bytes; i++) { + hex += String.fromCharCode(dec & 0xff); + dec = dec >>> 8; + } + return hex; +}; + +/** + * Merge the objects passed as parameters into a new one. + * @private + * @param {...Object} var_args All objects to merge. + * @return {Object} a new object with the data of the others. + */ +var extend = function() { + var result = {}, i, attr; + for (i = 0; i < arguments.length; i++) { // arguments is not enumerable in some browsers + for (attr in arguments[i]) { + if (arguments[i].hasOwnProperty(attr) && typeof result[attr] === "undefined") { + result[attr] = arguments[i][attr]; + } + } + } + return result; +}; + +/** + * Transforms the (incomplete) options from the user into the complete + * set of options to create a file. + * @private + * @param {Object} o the options from the user. + * @return {Object} the complete set of options. + */ +var prepareFileAttrs = function(o) { + o = o || {}; + if (o.base64 === true && (o.binary === null || o.binary === undefined)) { + o.binary = true; + } + o = extend(o, defaults); + o.date = o.date || new Date(); + if (o.compression !== null) o.compression = o.compression.toUpperCase(); + + return o; +}; + +/** + * Add a file in the current folder. + * @private + * @param {string} name the name of the file + * @param {String|ArrayBuffer|Uint8Array|Buffer} data the data of the file + * @param {Object} o the options of the file + * @return {Object} the new file. + */ +var fileAdd = function(name, data, o) { + // be sure sub folders exist + var dataType = utils.getTypeOf(data), + parent; + + o = prepareFileAttrs(o); + + if (typeof o.unixPermissions === "string") { + o.unixPermissions = parseInt(o.unixPermissions, 8); + } + + // UNX_IFDIR 0040000 see zipinfo.c + if (o.unixPermissions && (o.unixPermissions & 0x4000)) { + o.dir = true; + } + // Bit 4 Directory + if (o.dosPermissions && (o.dosPermissions & 0x0010)) { + o.dir = true; + } + + if (o.dir) { + name = forceTrailingSlash(name); + } + + if (o.createFolders && (parent = parentFolder(name))) { + folderAdd.call(this, parent, true); + } + + if (o.dir || data === null || typeof data === "undefined") { + o.base64 = false; + o.binary = false; + data = null; + dataType = null; + } + else if (dataType === "string") { + if (o.binary && !o.base64) { + // optimizedBinaryString == true means that the file has already been filtered with a 0xFF mask + if (o.optimizedBinaryString !== true) { + // this is a string, not in a base64 format. + // Be sure that this is a correct "binary string" + data = utils.string2binary(data); + } + } + } + else { // arraybuffer, uint8array, ... + o.base64 = false; + o.binary = true; + + if (!dataType && !(data instanceof CompressedObject)) { + throw new Error("The data of '" + name + "' is in an unsupported format !"); + } + + // special case : it's way easier to work with Uint8Array than with ArrayBuffer + if (dataType === "arraybuffer") { + data = utils.transformTo("uint8array", data); + } + } + + var object = new ZipObject(name, data, o); + this.files[name] = object; + return object; +}; + +/** + * Find the parent folder of the path. + * @private + * @param {string} path the path to use + * @return {string} the parent folder, or "" + */ +var parentFolder = function (path) { + if (path.slice(-1) == '/') { + path = path.substring(0, path.length - 1); + } + var lastSlash = path.lastIndexOf('/'); + return (lastSlash > 0) ? path.substring(0, lastSlash) : ""; +}; + + +/** + * Returns the path with a slash at the end. + * @private + * @param {String} path the path to check. + * @return {String} the path with a trailing slash. + */ +var forceTrailingSlash = function(path) { + // Check the name ends with a / + if (path.slice(-1) != "/") { + path += "/"; // IE doesn't like substr(-1) + } + return path; +}; +/** + * Add a (sub) folder in the current folder. + * @private + * @param {string} name the folder's name + * @param {boolean=} [createFolders] If true, automatically create sub + * folders. Defaults to false. + * @return {Object} the new folder. + */ +var folderAdd = function(name, createFolders) { + createFolders = (typeof createFolders !== 'undefined') ? createFolders : false; + + name = forceTrailingSlash(name); + + // Does this folder already exist? + if (!this.files[name]) { + fileAdd.call(this, name, null, { + dir: true, + createFolders: createFolders + }); + } + return this.files[name]; +}; + +/** + * Generate a JSZip.CompressedObject for a given zipOject. + * @param {ZipObject} file the object to read. + * @param {JSZip.compression} compression the compression to use. + * @param {Object} compressionOptions the options to use when compressing. + * @return {JSZip.CompressedObject} the compressed result. + */ +var generateCompressedObjectFrom = function(file, compression, compressionOptions) { + var result = new CompressedObject(), + content; + + // the data has not been decompressed, we might reuse things ! + if (file._data instanceof CompressedObject) { + result.uncompressedSize = file._data.uncompressedSize; + result.crc32 = file._data.crc32; + + if (result.uncompressedSize === 0 || file.dir) { + compression = compressions['STORE']; + result.compressedContent = ""; + result.crc32 = 0; + } + else if (file._data.compressionMethod === compression.magic) { + result.compressedContent = file._data.getCompressedContent(); + } + else { + content = file._data.getContent(); + // need to decompress / recompress + result.compressedContent = compression.compress(utils.transformTo(compression.compressInputType, content), compressionOptions); + } + } + else { + // have uncompressed data + content = getBinaryData(file); + if (!content || content.length === 0 || file.dir) { + compression = compressions['STORE']; + content = ""; + } + result.uncompressedSize = content.length; + result.crc32 = crc32(content); + result.compressedContent = compression.compress(utils.transformTo(compression.compressInputType, content), compressionOptions); + } + + result.compressedSize = result.compressedContent.length; + result.compressionMethod = compression.magic; + + return result; +}; + + + + +/** + * Generate the UNIX part of the external file attributes. + * @param {Object} unixPermissions the unix permissions or null. + * @param {Boolean} isDir true if the entry is a directory, false otherwise. + * @return {Number} a 32 bit integer. + * + * adapted from http://unix.stackexchange.com/questions/14705/the-zip-formats-external-file-attribute : + * + * TTTTsstrwxrwxrwx0000000000ADVSHR + * ^^^^____________________________ file type, see zipinfo.c (UNX_*) + * ^^^_________________________ setuid, setgid, sticky + * ^^^^^^^^^________________ permissions + * ^^^^^^^^^^______ not used ? + * ^^^^^^ DOS attribute bits : Archive, Directory, Volume label, System file, Hidden, Read only + */ +var generateUnixExternalFileAttr = function (unixPermissions, isDir) { + + var result = unixPermissions; + if (!unixPermissions) { + // I can't use octal values in strict mode, hence the hexa. + // 040775 => 0x41fd + // 0100664 => 0x81b4 + result = isDir ? 0x41fd : 0x81b4; + } + + return (result & 0xFFFF) << 16; +}; + +/** + * Generate the DOS part of the external file attributes. + * @param {Object} dosPermissions the dos permissions or null. + * @param {Boolean} isDir true if the entry is a directory, false otherwise. + * @return {Number} a 32 bit integer. + * + * Bit 0 Read-Only + * Bit 1 Hidden + * Bit 2 System + * Bit 3 Volume Label + * Bit 4 Directory + * Bit 5 Archive + */ +var generateDosExternalFileAttr = function (dosPermissions, isDir) { + + // the dir flag is already set for compatibility + + return (dosPermissions || 0) & 0x3F; +}; + +/** + * Generate the various parts used in the construction of the final zip file. + * @param {string} name the file name. + * @param {ZipObject} file the file content. + * @param {JSZip.CompressedObject} compressedObject the compressed object. + * @param {number} offset the current offset from the start of the zip file. + * @param {String} platform let's pretend we are this platform (change platform dependents fields) + * @return {object} the zip parts. + */ +var generateZipParts = function(name, file, compressedObject, offset, platform) { + var data = compressedObject.compressedContent, + utfEncodedFileName = utils.transformTo("string", utf8.utf8encode(file.name)), + comment = file.comment || "", + utfEncodedComment = utils.transformTo("string", utf8.utf8encode(comment)), + useUTF8ForFileName = utfEncodedFileName.length !== file.name.length, + useUTF8ForComment = utfEncodedComment.length !== comment.length, + o = file.options, + dosTime, + dosDate, + extraFields = "", + unicodePathExtraField = "", + unicodeCommentExtraField = "", + dir, date; + + + // handle the deprecated options.dir + if (file._initialMetadata.dir !== file.dir) { + dir = file.dir; + } else { + dir = o.dir; + } + + // handle the deprecated options.date + if(file._initialMetadata.date !== file.date) { + date = file.date; + } else { + date = o.date; + } + + var extFileAttr = 0; + var versionMadeBy = 0; + if (dir) { + // dos or unix, we set the dos dir flag + extFileAttr |= 0x00010; + } + if(platform === "UNIX") { + versionMadeBy = 0x031E; // UNIX, version 3.0 + extFileAttr |= generateUnixExternalFileAttr(file.unixPermissions, dir); + } else { // DOS or other, fallback to DOS + versionMadeBy = 0x0014; // DOS, version 2.0 + extFileAttr |= generateDosExternalFileAttr(file.dosPermissions, dir); + } + + // date + // @see http://www.delorie.com/djgpp/doc/rbinter/it/52/13.html + // @see http://www.delorie.com/djgpp/doc/rbinter/it/65/16.html + // @see http://www.delorie.com/djgpp/doc/rbinter/it/66/16.html + + dosTime = date.getHours(); + dosTime = dosTime << 6; + dosTime = dosTime | date.getMinutes(); + dosTime = dosTime << 5; + dosTime = dosTime | date.getSeconds() / 2; + + dosDate = date.getFullYear() - 1980; + dosDate = dosDate << 4; + dosDate = dosDate | (date.getMonth() + 1); + dosDate = dosDate << 5; + dosDate = dosDate | date.getDate(); + + if (useUTF8ForFileName) { + // set the unicode path extra field. unzip needs at least one extra + // field to correctly handle unicode path, so using the path is as good + // as any other information. This could improve the situation with + // other archive managers too. + // This field is usually used without the utf8 flag, with a non + // unicode path in the header (winrar, winzip). This helps (a bit) + // with the messy Windows' default compressed folders feature but + // breaks on p7zip which doesn't seek the unicode path extra field. + // So for now, UTF-8 everywhere ! + unicodePathExtraField = + // Version + decToHex(1, 1) + + // NameCRC32 + decToHex(crc32(utfEncodedFileName), 4) + + // UnicodeName + utfEncodedFileName; + + extraFields += + // Info-ZIP Unicode Path Extra Field + "\x75\x70" + + // size + decToHex(unicodePathExtraField.length, 2) + + // content + unicodePathExtraField; + } + + if(useUTF8ForComment) { + + unicodeCommentExtraField = + // Version + decToHex(1, 1) + + // CommentCRC32 + decToHex(this.crc32(utfEncodedComment), 4) + + // UnicodeName + utfEncodedComment; + + extraFields += + // Info-ZIP Unicode Path Extra Field + "\x75\x63" + + // size + decToHex(unicodeCommentExtraField.length, 2) + + // content + unicodeCommentExtraField; + } + + var header = ""; + + // version needed to extract + header += "\x0A\x00"; + // general purpose bit flag + // set bit 11 if utf8 + header += (useUTF8ForFileName || useUTF8ForComment) ? "\x00\x08" : "\x00\x00"; + // compression method + header += compressedObject.compressionMethod; + // last mod file time + header += decToHex(dosTime, 2); + // last mod file date + header += decToHex(dosDate, 2); + // crc-32 + header += decToHex(compressedObject.crc32, 4); + // compressed size + header += decToHex(compressedObject.compressedSize, 4); + // uncompressed size + header += decToHex(compressedObject.uncompressedSize, 4); + // file name length + header += decToHex(utfEncodedFileName.length, 2); + // extra field length + header += decToHex(extraFields.length, 2); + + + var fileRecord = signature.LOCAL_FILE_HEADER + header + utfEncodedFileName + extraFields; + + var dirRecord = signature.CENTRAL_FILE_HEADER + + // version made by (00: DOS) + decToHex(versionMadeBy, 2) + + // file header (common to file and central directory) + header + + // file comment length + decToHex(utfEncodedComment.length, 2) + + // disk number start + "\x00\x00" + + // internal file attributes TODO + "\x00\x00" + + // external file attributes + decToHex(extFileAttr, 4) + + // relative offset of local header + decToHex(offset, 4) + + // file name + utfEncodedFileName + + // extra field + extraFields + + // file comment + utfEncodedComment; + + return { + fileRecord: fileRecord, + dirRecord: dirRecord, + compressedObject: compressedObject + }; +}; + + +// return the actual prototype of JSZip +var out = { + /** + * Read an existing zip and merge the data in the current JSZip object. + * The implementation is in jszip-load.js, don't forget to include it. + * @param {String|ArrayBuffer|Uint8Array|Buffer} stream The stream to load + * @param {Object} options Options for loading the stream. + * options.base64 : is the stream in base64 ? default : false + * @return {JSZip} the current JSZip object + */ + load: function(stream, options) { + throw new Error("Load method is not defined. Is the file jszip-load.js included ?"); + }, + + /** + * Filter nested files/folders with the specified function. + * @param {Function} search the predicate to use : + * function (relativePath, file) {...} + * It takes 2 arguments : the relative path and the file. + * @return {Array} An array of matching elements. + */ + filter: function(search) { + var result = [], + filename, relativePath, file, fileClone; + for (filename in this.files) { + if (!this.files.hasOwnProperty(filename)) { + continue; + } + file = this.files[filename]; + // return a new object, don't let the user mess with our internal objects :) + fileClone = new ZipObject(file.name, file._data, extend(file.options)); + relativePath = filename.slice(this.root.length, filename.length); + if (filename.slice(0, this.root.length) === this.root && // the file is in the current root + search(relativePath, fileClone)) { // and the file matches the function + result.push(fileClone); + } + } + return result; + }, + + /** + * Add a file to the zip file, or search a file. + * @param {string|RegExp} name The name of the file to add (if data is defined), + * the name of the file to find (if no data) or a regex to match files. + * @param {String|ArrayBuffer|Uint8Array|Buffer} data The file data, either raw or base64 encoded + * @param {Object} o File options + * @return {JSZip|Object|Array} this JSZip object (when adding a file), + * a file (when searching by string) or an array of files (when searching by regex). + */ + file: function(name, data, o) { + if (arguments.length === 1) { + if (utils.isRegExp(name)) { + var regexp = name; + return this.filter(function(relativePath, file) { + return !file.dir && regexp.test(relativePath); + }); + } + else { // text + return this.filter(function(relativePath, file) { + return !file.dir && relativePath === name; + })[0] || null; + } + } + else { // more than one argument : we have data ! + name = this.root + name; + fileAdd.call(this, name, data, o); + } + return this; + }, + + /** + * Add a directory to the zip file, or search. + * @param {String|RegExp} arg The name of the directory to add, or a regex to search folders. + * @return {JSZip} an object with the new directory as the root, or an array containing matching folders. + */ + folder: function(arg) { + if (!arg) { + return this; + } + + if (utils.isRegExp(arg)) { + return this.filter(function(relativePath, file) { + return file.dir && arg.test(relativePath); + }); + } + + // else, name is a new folder + var name = this.root + arg; + var newFolder = folderAdd.call(this, name); + + // Allow chaining by returning a new object with this folder as the root + var ret = this.clone(); + ret.root = newFolder.name; + return ret; + }, + + /** + * Delete a file, or a directory and all sub-files, from the zip + * @param {string} name the name of the file to delete + * @return {JSZip} this JSZip object + */ + remove: function(name) { + name = this.root + name; + var file = this.files[name]; + if (!file) { + // Look for any folders + if (name.slice(-1) != "/") { + name += "/"; + } + file = this.files[name]; + } + + if (file && !file.dir) { + // file + delete this.files[name]; + } else { + // maybe a folder, delete recursively + var kids = this.filter(function(relativePath, file) { + return file.name.slice(0, name.length) === name; + }); + for (var i = 0; i < kids.length; i++) { + delete this.files[kids[i].name]; + } + } + + return this; + }, + + /** + * Generate the complete zip file + * @param {Object} options the options to generate the zip file : + * - base64, (deprecated, use type instead) true to generate base64. + * - compression, "STORE" by default. + * - type, "base64" by default. Values are : string, base64, uint8array, arraybuffer, blob. + * @return {String|Uint8Array|ArrayBuffer|Buffer|Blob} the zip file + */ + generate: function(options) { + options = extend(options || {}, { + base64: true, + compression: "STORE", + compressionOptions : null, + type: "base64", + platform: "DOS", + comment: null, + mimeType: 'application/zip' + }); + + utils.checkSupport(options.type); + + // accept nodejs `process.platform` + if( + options.platform === 'darwin' || + options.platform === 'freebsd' || + options.platform === 'linux' || + options.platform === 'sunos' + ) { + options.platform = "UNIX"; + } + if (options.platform === 'win32') { + options.platform = "DOS"; + } + + var zipData = [], + localDirLength = 0, + centralDirLength = 0, + writer, i, + utfEncodedComment = utils.transformTo("string", this.utf8encode(options.comment || this.comment || "")); + + // first, generate all the zip parts. + for (var name in this.files) { + if (!this.files.hasOwnProperty(name)) { + continue; + } + var file = this.files[name]; + + var compressionName = file.options.compression || options.compression.toUpperCase(); + var compression = compressions[compressionName]; + if (!compression) { + throw new Error(compressionName + " is not a valid compression method !"); + } + var compressionOptions = file.options.compressionOptions || options.compressionOptions || {}; + + var compressedObject = generateCompressedObjectFrom.call(this, file, compression, compressionOptions); + + var zipPart = generateZipParts.call(this, name, file, compressedObject, localDirLength, options.platform); + localDirLength += zipPart.fileRecord.length + compressedObject.compressedSize; + centralDirLength += zipPart.dirRecord.length; + zipData.push(zipPart); + } + + var dirEnd = ""; + + // end of central dir signature + dirEnd = signature.CENTRAL_DIRECTORY_END + + // number of this disk + "\x00\x00" + + // number of the disk with the start of the central directory + "\x00\x00" + + // total number of entries in the central directory on this disk + decToHex(zipData.length, 2) + + // total number of entries in the central directory + decToHex(zipData.length, 2) + + // size of the central directory 4 bytes + decToHex(centralDirLength, 4) + + // offset of start of central directory with respect to the starting disk number + decToHex(localDirLength, 4) + + // .ZIP file comment length + decToHex(utfEncodedComment.length, 2) + + // .ZIP file comment + utfEncodedComment; + + + // we have all the parts (and the total length) + // time to create a writer ! + var typeName = options.type.toLowerCase(); + if(typeName==="uint8array"||typeName==="arraybuffer"||typeName==="blob"||typeName==="nodebuffer") { + writer = new Uint8ArrayWriter(localDirLength + centralDirLength + dirEnd.length); + }else{ + writer = new StringWriter(localDirLength + centralDirLength + dirEnd.length); + } + + for (i = 0; i < zipData.length; i++) { + writer.append(zipData[i].fileRecord); + writer.append(zipData[i].compressedObject.compressedContent); + } + for (i = 0; i < zipData.length; i++) { + writer.append(zipData[i].dirRecord); + } + + writer.append(dirEnd); + + var zip = writer.finalize(); + + + + switch(options.type.toLowerCase()) { + // case "zip is an Uint8Array" + case "uint8array" : + case "arraybuffer" : + case "nodebuffer" : + return utils.transformTo(options.type.toLowerCase(), zip); + case "blob" : + return utils.arrayBuffer2Blob(utils.transformTo("arraybuffer", zip), options.mimeType); + // case "zip is a string" + case "base64" : + return (options.base64) ? base64.encode(zip) : zip; + default : // case "string" : + return zip; + } + + }, + + /** + * @deprecated + * This method will be removed in a future version without replacement. + */ + crc32: function (input, crc) { + return crc32(input, crc); + }, + + /** + * @deprecated + * This method will be removed in a future version without replacement. + */ + utf8encode: function (string) { + return utils.transformTo("string", utf8.utf8encode(string)); + }, + + /** + * @deprecated + * This method will be removed in a future version without replacement. + */ + utf8decode: function (input) { + return utf8.utf8decode(input); + } +}; +module.exports = out; + +},{"./base64":1,"./compressedObject":2,"./compressions":3,"./crc32":4,"./defaults":6,"./nodeBuffer":11,"./signature":14,"./stringWriter":16,"./support":17,"./uint8ArrayWriter":19,"./utf8":20,"./utils":21}],14:[function(_dereq_,module,exports){ +'use strict'; +exports.LOCAL_FILE_HEADER = "PK\x03\x04"; +exports.CENTRAL_FILE_HEADER = "PK\x01\x02"; +exports.CENTRAL_DIRECTORY_END = "PK\x05\x06"; +exports.ZIP64_CENTRAL_DIRECTORY_LOCATOR = "PK\x06\x07"; +exports.ZIP64_CENTRAL_DIRECTORY_END = "PK\x06\x06"; +exports.DATA_DESCRIPTOR = "PK\x07\x08"; + +},{}],15:[function(_dereq_,module,exports){ +'use strict'; +var DataReader = _dereq_('./dataReader'); +var utils = _dereq_('./utils'); + +function StringReader(data, optimizedBinaryString) { + this.data = data; + if (!optimizedBinaryString) { + this.data = utils.string2binary(this.data); + } + this.length = this.data.length; + this.index = 0; +} +StringReader.prototype = new DataReader(); +/** + * @see DataReader.byteAt + */ +StringReader.prototype.byteAt = function(i) { + return this.data.charCodeAt(i); +}; +/** + * @see DataReader.lastIndexOfSignature + */ +StringReader.prototype.lastIndexOfSignature = function(sig) { + return this.data.lastIndexOf(sig); +}; +/** + * @see DataReader.readData + */ +StringReader.prototype.readData = function(size) { + this.checkOffset(size); + // this will work because the constructor applied the "& 0xff" mask. + var result = this.data.slice(this.index, this.index + size); + this.index += size; + return result; +}; +module.exports = StringReader; + +},{"./dataReader":5,"./utils":21}],16:[function(_dereq_,module,exports){ +'use strict'; + +var utils = _dereq_('./utils'); + +/** + * An object to write any content to a string. + * @constructor + */ +var StringWriter = function() { + this.data = []; +}; +StringWriter.prototype = { + /** + * Append any content to the current string. + * @param {Object} input the content to add. + */ + append: function(input) { + input = utils.transformTo("string", input); + this.data.push(input); + }, + /** + * Finalize the construction an return the result. + * @return {string} the generated string. + */ + finalize: function() { + return this.data.join(""); + } +}; + +module.exports = StringWriter; + +},{"./utils":21}],17:[function(_dereq_,module,exports){ +(function (Buffer){ +'use strict'; +exports.base64 = true; +exports.array = true; +exports.string = true; +exports.arraybuffer = typeof ArrayBuffer !== "undefined" && typeof Uint8Array !== "undefined"; +// contains true if JSZip can read/generate nodejs Buffer, false otherwise. +// Browserify will provide a Buffer implementation for browsers, which is +// an augmented Uint8Array (i.e., can be used as either Buffer or U8). +exports.nodebuffer = typeof Buffer !== "undefined"; +// contains true if JSZip can read/generate Uint8Array, false otherwise. +exports.uint8array = typeof Uint8Array !== "undefined"; + +if (typeof ArrayBuffer === "undefined") { + exports.blob = false; +} +else { + var buffer = new ArrayBuffer(0); + try { + exports.blob = new Blob([buffer], { + type: "application/zip" + }).size === 0; + } + catch (e) { + try { + var Builder = window.BlobBuilder || window.WebKitBlobBuilder || window.MozBlobBuilder || window.MSBlobBuilder; + var builder = new Builder(); + builder.append(buffer); + exports.blob = builder.getBlob('application/zip').size === 0; + } + catch (e) { + exports.blob = false; + } + } +} + +}).call(this,(typeof Buffer !== "undefined" ? Buffer : undefined)) +},{}],18:[function(_dereq_,module,exports){ +'use strict'; +var DataReader = _dereq_('./dataReader'); + +function Uint8ArrayReader(data) { + if (data) { + this.data = data; + this.length = this.data.length; + this.index = 0; + } +} +Uint8ArrayReader.prototype = new DataReader(); +/** + * @see DataReader.byteAt + */ +Uint8ArrayReader.prototype.byteAt = function(i) { + return this.data[i]; +}; +/** + * @see DataReader.lastIndexOfSignature + */ +Uint8ArrayReader.prototype.lastIndexOfSignature = function(sig) { + var sig0 = sig.charCodeAt(0), + sig1 = sig.charCodeAt(1), + sig2 = sig.charCodeAt(2), + sig3 = sig.charCodeAt(3); + for (var i = this.length - 4; i >= 0; --i) { + if (this.data[i] === sig0 && this.data[i + 1] === sig1 && this.data[i + 2] === sig2 && this.data[i + 3] === sig3) { + return i; + } + } + + return -1; +}; +/** + * @see DataReader.readData + */ +Uint8ArrayReader.prototype.readData = function(size) { + this.checkOffset(size); + if(size === 0) { + // in IE10, when using subarray(idx, idx), we get the array [0x00] instead of []. + return new Uint8Array(0); + } + var result = this.data.subarray(this.index, this.index + size); + this.index += size; + return result; +}; +module.exports = Uint8ArrayReader; + +},{"./dataReader":5}],19:[function(_dereq_,module,exports){ +'use strict'; + +var utils = _dereq_('./utils'); + +/** + * An object to write any content to an Uint8Array. + * @constructor + * @param {number} length The length of the array. + */ +var Uint8ArrayWriter = function(length) { + this.data = new Uint8Array(length); + this.index = 0; +}; +Uint8ArrayWriter.prototype = { + /** + * Append any content to the current array. + * @param {Object} input the content to add. + */ + append: function(input) { + if (input.length !== 0) { + // with an empty Uint8Array, Opera fails with a "Offset larger than array size" + input = utils.transformTo("uint8array", input); + this.data.set(input, this.index); + this.index += input.length; + } + }, + /** + * Finalize the construction an return the result. + * @return {Uint8Array} the generated array. + */ + finalize: function() { + return this.data; + } +}; + +module.exports = Uint8ArrayWriter; + +},{"./utils":21}],20:[function(_dereq_,module,exports){ +'use strict'; + +var utils = _dereq_('./utils'); +var support = _dereq_('./support'); +var nodeBuffer = _dereq_('./nodeBuffer'); + +/** + * The following functions come from pako, from pako/lib/utils/strings + * released under the MIT license, see pako https://github.com/nodeca/pako/ + */ + +// Table with utf8 lengths (calculated by first byte of sequence) +// Note, that 5 & 6-byte values and some 4-byte values can not be represented in JS, +// because max possible codepoint is 0x10ffff +var _utf8len = new Array(256); +for (var i=0; i<256; i++) { + _utf8len[i] = (i >= 252 ? 6 : i >= 248 ? 5 : i >= 240 ? 4 : i >= 224 ? 3 : i >= 192 ? 2 : 1); +} +_utf8len[254]=_utf8len[254]=1; // Invalid sequence start + +// convert string to array (typed, when possible) +var string2buf = function (str) { + var buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0; + + // count binary size + for (m_pos = 0; m_pos < str_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 0xfc00) === 0xd800 && (m_pos+1 < str_len)) { + c2 = str.charCodeAt(m_pos+1); + if ((c2 & 0xfc00) === 0xdc00) { + c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00); + m_pos++; + } + } + buf_len += c < 0x80 ? 1 : c < 0x800 ? 2 : c < 0x10000 ? 3 : 4; + } + + // allocate buffer + if (support.uint8array) { + buf = new Uint8Array(buf_len); + } else { + buf = new Array(buf_len); + } + + // convert + for (i=0, m_pos = 0; i < buf_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 0xfc00) === 0xd800 && (m_pos+1 < str_len)) { + c2 = str.charCodeAt(m_pos+1); + if ((c2 & 0xfc00) === 0xdc00) { + c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00); + m_pos++; + } + } + if (c < 0x80) { + /* one byte */ + buf[i++] = c; + } else if (c < 0x800) { + /* two bytes */ + buf[i++] = 0xC0 | (c >>> 6); + buf[i++] = 0x80 | (c & 0x3f); + } else if (c < 0x10000) { + /* three bytes */ + buf[i++] = 0xE0 | (c >>> 12); + buf[i++] = 0x80 | (c >>> 6 & 0x3f); + buf[i++] = 0x80 | (c & 0x3f); + } else { + /* four bytes */ + buf[i++] = 0xf0 | (c >>> 18); + buf[i++] = 0x80 | (c >>> 12 & 0x3f); + buf[i++] = 0x80 | (c >>> 6 & 0x3f); + buf[i++] = 0x80 | (c & 0x3f); + } + } + + return buf; +}; + +// Calculate max possible position in utf8 buffer, +// that will not break sequence. If that's not possible +// - (very small limits) return max size as is. +// +// buf[] - utf8 bytes array +// max - length limit (mandatory); +var utf8border = function(buf, max) { + var pos; + + max = max || buf.length; + if (max > buf.length) { max = buf.length; } + + // go back from last position, until start of sequence found + pos = max-1; + while (pos >= 0 && (buf[pos] & 0xC0) === 0x80) { pos--; } + + // Fuckup - very small and broken sequence, + // return max, because we should return something anyway. + if (pos < 0) { return max; } + + // If we came to start of buffer - that means vuffer is too small, + // return max too. + if (pos === 0) { return max; } + + return (pos + _utf8len[buf[pos]] > max) ? pos : max; +}; + +// convert array to string +var buf2string = function (buf) { + var str, i, out, c, c_len; + var len = buf.length; + + // Reserve max possible length (2 words per char) + // NB: by unknown reasons, Array is significantly faster for + // String.fromCharCode.apply than Uint16Array. + var utf16buf = new Array(len*2); + + for (out=0, i=0; i 4) { utf16buf[out++] = 0xfffd; i += c_len-1; continue; } + + // apply mask on first byte + c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07; + // join the rest + while (c_len > 1 && i < len) { + c = (c << 6) | (buf[i++] & 0x3f); + c_len--; + } + + // terminated by end of string? + if (c_len > 1) { utf16buf[out++] = 0xfffd; continue; } + + if (c < 0x10000) { + utf16buf[out++] = c; + } else { + c -= 0x10000; + utf16buf[out++] = 0xd800 | ((c >> 10) & 0x3ff); + utf16buf[out++] = 0xdc00 | (c & 0x3ff); + } + } + + // shrinkBuf(utf16buf, out) + if (utf16buf.length !== out) { + if(utf16buf.subarray) { + utf16buf = utf16buf.subarray(0, out); + } else { + utf16buf.length = out; + } + } + + // return String.fromCharCode.apply(null, utf16buf); + return utils.applyFromCharCode(utf16buf); +}; + + +// That's all for the pako functions. + + +/** + * Transform a javascript string into an array (typed if possible) of bytes, + * UTF-8 encoded. + * @param {String} str the string to encode + * @return {Array|Uint8Array|Buffer} the UTF-8 encoded string. + */ +exports.utf8encode = function utf8encode(str) { + if (support.nodebuffer) { + return nodeBuffer(str, "utf-8"); + } + + return string2buf(str); +}; + + +/** + * Transform a bytes array (or a representation) representing an UTF-8 encoded + * string into a javascript string. + * @param {Array|Uint8Array|Buffer} buf the data de decode + * @return {String} the decoded string. + */ +exports.utf8decode = function utf8decode(buf) { + if (support.nodebuffer) { + return utils.transformTo("nodebuffer", buf).toString("utf-8"); + } + + buf = utils.transformTo(support.uint8array ? "uint8array" : "array", buf); + + // return buf2string(buf); + // Chrome prefers to work with "small" chunks of data + // for the method buf2string. + // Firefox and Chrome has their own shortcut, IE doesn't seem to really care. + var result = [], k = 0, len = buf.length, chunk = 65536; + while (k < len) { + var nextBoundary = utf8border(buf, Math.min(k + chunk, len)); + if (support.uint8array) { + result.push(buf2string(buf.subarray(k, nextBoundary))); + } else { + result.push(buf2string(buf.slice(k, nextBoundary))); + } + k = nextBoundary; + } + return result.join(""); + +}; +// vim: set shiftwidth=4 softtabstop=4: + +},{"./nodeBuffer":11,"./support":17,"./utils":21}],21:[function(_dereq_,module,exports){ +'use strict'; +var support = _dereq_('./support'); +var compressions = _dereq_('./compressions'); +var nodeBuffer = _dereq_('./nodeBuffer'); +/** + * Convert a string to a "binary string" : a string containing only char codes between 0 and 255. + * @param {string} str the string to transform. + * @return {String} the binary string. + */ +exports.string2binary = function(str) { + var result = ""; + for (var i = 0; i < str.length; i++) { + result += String.fromCharCode(str.charCodeAt(i) & 0xff); + } + return result; +}; +exports.arrayBuffer2Blob = function(buffer, mimeType) { + exports.checkSupport("blob"); + mimeType = mimeType || 'application/zip'; + + try { + // Blob constructor + return new Blob([buffer], { + type: mimeType + }); + } + catch (e) { + + try { + // deprecated, browser only, old way + var Builder = window.BlobBuilder || window.WebKitBlobBuilder || window.MozBlobBuilder || window.MSBlobBuilder; + var builder = new Builder(); + builder.append(buffer); + return builder.getBlob(mimeType); + } + catch (e) { + + // well, fuck ?! + throw new Error("Bug : can't construct the Blob."); + } + } + + +}; +/** + * The identity function. + * @param {Object} input the input. + * @return {Object} the same input. + */ +function identity(input) { + return input; +} + +/** + * Fill in an array with a string. + * @param {String} str the string to use. + * @param {Array|ArrayBuffer|Uint8Array|Buffer} array the array to fill in (will be mutated). + * @return {Array|ArrayBuffer|Uint8Array|Buffer} the updated array. + */ +function stringToArrayLike(str, array) { + for (var i = 0; i < str.length; ++i) { + array[i] = str.charCodeAt(i) & 0xFF; + } + return array; +} + +/** + * Transform an array-like object to a string. + * @param {Array|ArrayBuffer|Uint8Array|Buffer} array the array to transform. + * @return {String} the result. + */ +function arrayLikeToString(array) { + // Performances notes : + // -------------------- + // String.fromCharCode.apply(null, array) is the fastest, see + // see http://jsperf.com/converting-a-uint8array-to-a-string/2 + // but the stack is limited (and we can get huge arrays !). + // + // result += String.fromCharCode(array[i]); generate too many strings ! + // + // This code is inspired by http://jsperf.com/arraybuffer-to-string-apply-performance/2 + var chunk = 65536; + var result = [], + len = array.length, + type = exports.getTypeOf(array), + k = 0, + canUseApply = true; + try { + switch(type) { + case "uint8array": + String.fromCharCode.apply(null, new Uint8Array(0)); + break; + case "nodebuffer": + String.fromCharCode.apply(null, nodeBuffer(0)); + break; + } + } catch(e) { + canUseApply = false; + } + + // no apply : slow and painful algorithm + // default browser on android 4.* + if (!canUseApply) { + var resultStr = ""; + for(var i = 0; i < array.length;i++) { + resultStr += String.fromCharCode(array[i]); + } + return resultStr; + } + while (k < len && chunk > 1) { + try { + if (type === "array" || type === "nodebuffer") { + result.push(String.fromCharCode.apply(null, array.slice(k, Math.min(k + chunk, len)))); + } + else { + result.push(String.fromCharCode.apply(null, array.subarray(k, Math.min(k + chunk, len)))); + } + k += chunk; + } + catch (e) { + chunk = Math.floor(chunk / 2); + } + } + return result.join(""); +} + +exports.applyFromCharCode = arrayLikeToString; + + +/** + * Copy the data from an array-like to an other array-like. + * @param {Array|ArrayBuffer|Uint8Array|Buffer} arrayFrom the origin array. + * @param {Array|ArrayBuffer|Uint8Array|Buffer} arrayTo the destination array which will be mutated. + * @return {Array|ArrayBuffer|Uint8Array|Buffer} the updated destination array. + */ +function arrayLikeToArrayLike(arrayFrom, arrayTo) { + for (var i = 0; i < arrayFrom.length; i++) { + arrayTo[i] = arrayFrom[i]; + } + return arrayTo; +} + +// a matrix containing functions to transform everything into everything. +var transform = {}; + +// string to ? +transform["string"] = { + "string": identity, + "array": function(input) { + return stringToArrayLike(input, new Array(input.length)); + }, + "arraybuffer": function(input) { + return transform["string"]["uint8array"](input).buffer; + }, + "uint8array": function(input) { + return stringToArrayLike(input, new Uint8Array(input.length)); + }, + "nodebuffer": function(input) { + return stringToArrayLike(input, nodeBuffer(input.length)); + } +}; + +// array to ? +transform["array"] = { + "string": arrayLikeToString, + "array": identity, + "arraybuffer": function(input) { + return (new Uint8Array(input)).buffer; + }, + "uint8array": function(input) { + return new Uint8Array(input); + }, + "nodebuffer": function(input) { + return nodeBuffer(input); + } +}; + +// arraybuffer to ? +transform["arraybuffer"] = { + "string": function(input) { + return arrayLikeToString(new Uint8Array(input)); + }, + "array": function(input) { + return arrayLikeToArrayLike(new Uint8Array(input), new Array(input.byteLength)); + }, + "arraybuffer": identity, + "uint8array": function(input) { + return new Uint8Array(input); + }, + "nodebuffer": function(input) { + return nodeBuffer(new Uint8Array(input)); + } +}; + +// uint8array to ? +transform["uint8array"] = { + "string": arrayLikeToString, + "array": function(input) { + return arrayLikeToArrayLike(input, new Array(input.length)); + }, + "arraybuffer": function(input) { + return input.buffer; + }, + "uint8array": identity, + "nodebuffer": function(input) { + return nodeBuffer(input); + } +}; + +// nodebuffer to ? +transform["nodebuffer"] = { + "string": arrayLikeToString, + "array": function(input) { + return arrayLikeToArrayLike(input, new Array(input.length)); + }, + "arraybuffer": function(input) { + return transform["nodebuffer"]["uint8array"](input).buffer; + }, + "uint8array": function(input) { + return arrayLikeToArrayLike(input, new Uint8Array(input.length)); + }, + "nodebuffer": identity +}; + +/** + * Transform an input into any type. + * The supported output type are : string, array, uint8array, arraybuffer, nodebuffer. + * If no output type is specified, the unmodified input will be returned. + * @param {String} outputType the output type. + * @param {String|Array|ArrayBuffer|Uint8Array|Buffer} input the input to convert. + * @throws {Error} an Error if the browser doesn't support the requested output type. + */ +exports.transformTo = function(outputType, input) { + if (!input) { + // undefined, null, etc + // an empty string won't harm. + input = ""; + } + if (!outputType) { + return input; + } + exports.checkSupport(outputType); + var inputType = exports.getTypeOf(input); + var result = transform[inputType][outputType](input); + return result; +}; + +/** + * Return the type of the input. + * The type will be in a format valid for JSZip.utils.transformTo : string, array, uint8array, arraybuffer. + * @param {Object} input the input to identify. + * @return {String} the (lowercase) type of the input. + */ +exports.getTypeOf = function(input) { + if (typeof input === "string") { + return "string"; + } + if (Object.prototype.toString.call(input) === "[object Array]") { + return "array"; + } + if (support.nodebuffer && nodeBuffer.test(input)) { + return "nodebuffer"; + } + if (support.uint8array && input instanceof Uint8Array) { + return "uint8array"; + } + if (support.arraybuffer && input instanceof ArrayBuffer) { + return "arraybuffer"; + } +}; + +/** + * Throw an exception if the type is not supported. + * @param {String} type the type to check. + * @throws {Error} an Error if the browser doesn't support the requested type. + */ +exports.checkSupport = function(type) { + var supported = support[type.toLowerCase()]; + if (!supported) { + throw new Error(type + " is not supported by this browser"); + } +}; +exports.MAX_VALUE_16BITS = 65535; +exports.MAX_VALUE_32BITS = -1; // well, "\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF" is parsed as -1 + +/** + * Prettify a string read as binary. + * @param {string} str the string to prettify. + * @return {string} a pretty string. + */ +exports.pretty = function(str) { + var res = '', + code, i; + for (i = 0; i < (str || "").length; i++) { + code = str.charCodeAt(i); + res += '\\x' + (code < 16 ? "0" : "") + code.toString(16).toUpperCase(); + } + return res; +}; + +/** + * Find a compression registered in JSZip. + * @param {string} compressionMethod the method magic to find. + * @return {Object|null} the JSZip compression object, null if none found. + */ +exports.findCompression = function(compressionMethod) { + for (var method in compressions) { + if (!compressions.hasOwnProperty(method)) { + continue; + } + if (compressions[method].magic === compressionMethod) { + return compressions[method]; + } + } + return null; +}; +/** +* Cross-window, cross-Node-context regular expression detection +* @param {Object} object Anything +* @return {Boolean} true if the object is a regular expression, +* false otherwise +*/ +exports.isRegExp = function (object) { + return Object.prototype.toString.call(object) === "[object RegExp]"; +}; + + +},{"./compressions":3,"./nodeBuffer":11,"./support":17}],22:[function(_dereq_,module,exports){ +'use strict'; +var StringReader = _dereq_('./stringReader'); +var NodeBufferReader = _dereq_('./nodeBufferReader'); +var Uint8ArrayReader = _dereq_('./uint8ArrayReader'); +var utils = _dereq_('./utils'); +var sig = _dereq_('./signature'); +var ZipEntry = _dereq_('./zipEntry'); +var support = _dereq_('./support'); +var jszipProto = _dereq_('./object'); +// class ZipEntries {{{ +/** + * All the entries in the zip file. + * @constructor + * @param {String|ArrayBuffer|Uint8Array} data the binary stream to load. + * @param {Object} loadOptions Options for loading the stream. + */ +function ZipEntries(data, loadOptions) { + this.files = []; + this.loadOptions = loadOptions; + if (data) { + this.load(data); + } +} +ZipEntries.prototype = { + /** + * Check that the reader is on the speficied signature. + * @param {string} expectedSignature the expected signature. + * @throws {Error} if it is an other signature. + */ + checkSignature: function(expectedSignature) { + var signature = this.reader.readString(4); + if (signature !== expectedSignature) { + throw new Error("Corrupted zip or bug : unexpected signature " + "(" + utils.pretty(signature) + ", expected " + utils.pretty(expectedSignature) + ")"); + } + }, + /** + * Read the end of the central directory. + */ + readBlockEndOfCentral: function() { + this.diskNumber = this.reader.readInt(2); + this.diskWithCentralDirStart = this.reader.readInt(2); + this.centralDirRecordsOnThisDisk = this.reader.readInt(2); + this.centralDirRecords = this.reader.readInt(2); + this.centralDirSize = this.reader.readInt(4); + this.centralDirOffset = this.reader.readInt(4); + + this.zipCommentLength = this.reader.readInt(2); + // warning : the encoding depends of the system locale + // On a linux machine with LANG=en_US.utf8, this field is utf8 encoded. + // On a windows machine, this field is encoded with the localized windows code page. + this.zipComment = this.reader.readString(this.zipCommentLength); + // To get consistent behavior with the generation part, we will assume that + // this is utf8 encoded. + this.zipComment = jszipProto.utf8decode(this.zipComment); + }, + /** + * Read the end of the Zip 64 central directory. + * Not merged with the method readEndOfCentral : + * The end of central can coexist with its Zip64 brother, + * I don't want to read the wrong number of bytes ! + */ + readBlockZip64EndOfCentral: function() { + this.zip64EndOfCentralSize = this.reader.readInt(8); + this.versionMadeBy = this.reader.readString(2); + this.versionNeeded = this.reader.readInt(2); + this.diskNumber = this.reader.readInt(4); + this.diskWithCentralDirStart = this.reader.readInt(4); + this.centralDirRecordsOnThisDisk = this.reader.readInt(8); + this.centralDirRecords = this.reader.readInt(8); + this.centralDirSize = this.reader.readInt(8); + this.centralDirOffset = this.reader.readInt(8); + + this.zip64ExtensibleData = {}; + var extraDataSize = this.zip64EndOfCentralSize - 44, + index = 0, + extraFieldId, + extraFieldLength, + extraFieldValue; + while (index < extraDataSize) { + extraFieldId = this.reader.readInt(2); + extraFieldLength = this.reader.readInt(4); + extraFieldValue = this.reader.readString(extraFieldLength); + this.zip64ExtensibleData[extraFieldId] = { + id: extraFieldId, + length: extraFieldLength, + value: extraFieldValue + }; + } + }, + /** + * Read the end of the Zip 64 central directory locator. + */ + readBlockZip64EndOfCentralLocator: function() { + this.diskWithZip64CentralDirStart = this.reader.readInt(4); + this.relativeOffsetEndOfZip64CentralDir = this.reader.readInt(8); + this.disksCount = this.reader.readInt(4); + if (this.disksCount > 1) { + throw new Error("Multi-volumes zip are not supported"); + } + }, + /** + * Read the local files, based on the offset read in the central part. + */ + readLocalFiles: function() { + var i, file; + for (i = 0; i < this.files.length; i++) { + file = this.files[i]; + this.reader.setIndex(file.localHeaderOffset); + this.checkSignature(sig.LOCAL_FILE_HEADER); + file.readLocalPart(this.reader); + file.handleUTF8(); + file.processAttributes(); + } + }, + /** + * Read the central directory. + */ + readCentralDir: function() { + var file; + + this.reader.setIndex(this.centralDirOffset); + while (this.reader.readString(4) === sig.CENTRAL_FILE_HEADER) { + file = new ZipEntry({ + zip64: this.zip64 + }, this.loadOptions); + file.readCentralPart(this.reader); + this.files.push(file); + } + }, + /** + * Read the end of central directory. + */ + readEndOfCentral: function() { + var offset = this.reader.lastIndexOfSignature(sig.CENTRAL_DIRECTORY_END); + if (offset === -1) { + // Check if the content is a truncated zip or complete garbage. + // A "LOCAL_FILE_HEADER" is not required at the beginning (auto + // extractible zip for example) but it can give a good hint. + // If an ajax request was used without responseType, we will also + // get unreadable data. + var isGarbage = true; + try { + this.reader.setIndex(0); + this.checkSignature(sig.LOCAL_FILE_HEADER); + isGarbage = false; + } catch (e) {} + + if (isGarbage) { + throw new Error("Can't find end of central directory : is this a zip file ? " + + "If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html"); + } else { + throw new Error("Corrupted zip : can't find end of central directory"); + } + } + this.reader.setIndex(offset); + this.checkSignature(sig.CENTRAL_DIRECTORY_END); + this.readBlockEndOfCentral(); + + + /* extract from the zip spec : + 4) If one of the fields in the end of central directory + record is too small to hold required data, the field + should be set to -1 (0xFFFF or 0xFFFFFFFF) and the + ZIP64 format record should be created. + 5) The end of central directory record and the + Zip64 end of central directory locator record must + reside on the same disk when splitting or spanning + an archive. + */ + if (this.diskNumber === utils.MAX_VALUE_16BITS || this.diskWithCentralDirStart === utils.MAX_VALUE_16BITS || this.centralDirRecordsOnThisDisk === utils.MAX_VALUE_16BITS || this.centralDirRecords === utils.MAX_VALUE_16BITS || this.centralDirSize === utils.MAX_VALUE_32BITS || this.centralDirOffset === utils.MAX_VALUE_32BITS) { + this.zip64 = true; + + /* + Warning : the zip64 extension is supported, but ONLY if the 64bits integer read from + the zip file can fit into a 32bits integer. This cannot be solved : Javascript represents + all numbers as 64-bit double precision IEEE 754 floating point numbers. + So, we have 53bits for integers and bitwise operations treat everything as 32bits. + see https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Operators/Bitwise_Operators + and http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf section 8.5 + */ + + // should look for a zip64 EOCD locator + offset = this.reader.lastIndexOfSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR); + if (offset === -1) { + throw new Error("Corrupted zip : can't find the ZIP64 end of central directory locator"); + } + this.reader.setIndex(offset); + this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR); + this.readBlockZip64EndOfCentralLocator(); + + // now the zip64 EOCD record + this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir); + this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_END); + this.readBlockZip64EndOfCentral(); + } + }, + prepareReader: function(data) { + var type = utils.getTypeOf(data); + if (type === "string" && !support.uint8array) { + this.reader = new StringReader(data, this.loadOptions.optimizedBinaryString); + } + else if (type === "nodebuffer") { + this.reader = new NodeBufferReader(data); + } + else { + this.reader = new Uint8ArrayReader(utils.transformTo("uint8array", data)); + } + }, + /** + * Read a zip file and create ZipEntries. + * @param {String|ArrayBuffer|Uint8Array|Buffer} data the binary string representing a zip file. + */ + load: function(data) { + this.prepareReader(data); + this.readEndOfCentral(); + this.readCentralDir(); + this.readLocalFiles(); + } +}; +// }}} end of ZipEntries +module.exports = ZipEntries; + +},{"./nodeBufferReader":12,"./object":13,"./signature":14,"./stringReader":15,"./support":17,"./uint8ArrayReader":18,"./utils":21,"./zipEntry":23}],23:[function(_dereq_,module,exports){ +'use strict'; +var StringReader = _dereq_('./stringReader'); +var utils = _dereq_('./utils'); +var CompressedObject = _dereq_('./compressedObject'); +var jszipProto = _dereq_('./object'); + +var MADE_BY_DOS = 0x00; +var MADE_BY_UNIX = 0x03; + +// class ZipEntry {{{ +/** + * An entry in the zip file. + * @constructor + * @param {Object} options Options of the current file. + * @param {Object} loadOptions Options for loading the stream. + */ +function ZipEntry(options, loadOptions) { + this.options = options; + this.loadOptions = loadOptions; +} +ZipEntry.prototype = { + /** + * say if the file is encrypted. + * @return {boolean} true if the file is encrypted, false otherwise. + */ + isEncrypted: function() { + // bit 1 is set + return (this.bitFlag & 0x0001) === 0x0001; + }, + /** + * say if the file has utf-8 filename/comment. + * @return {boolean} true if the filename/comment is in utf-8, false otherwise. + */ + useUTF8: function() { + // bit 11 is set + return (this.bitFlag & 0x0800) === 0x0800; + }, + /** + * Prepare the function used to generate the compressed content from this ZipFile. + * @param {DataReader} reader the reader to use. + * @param {number} from the offset from where we should read the data. + * @param {number} length the length of the data to read. + * @return {Function} the callback to get the compressed content (the type depends of the DataReader class). + */ + prepareCompressedContent: function(reader, from, length) { + return function() { + var previousIndex = reader.index; + reader.setIndex(from); + var compressedFileData = reader.readData(length); + reader.setIndex(previousIndex); + + return compressedFileData; + }; + }, + /** + * Prepare the function used to generate the uncompressed content from this ZipFile. + * @param {DataReader} reader the reader to use. + * @param {number} from the offset from where we should read the data. + * @param {number} length the length of the data to read. + * @param {JSZip.compression} compression the compression used on this file. + * @param {number} uncompressedSize the uncompressed size to expect. + * @return {Function} the callback to get the uncompressed content (the type depends of the DataReader class). + */ + prepareContent: function(reader, from, length, compression, uncompressedSize) { + return function() { + + var compressedFileData = utils.transformTo(compression.uncompressInputType, this.getCompressedContent()); + var uncompressedFileData = compression.uncompress(compressedFileData); + + if (uncompressedFileData.length !== uncompressedSize) { + throw new Error("Bug : uncompressed data size mismatch"); + } + + return uncompressedFileData; + }; + }, + /** + * Read the local part of a zip file and add the info in this object. + * @param {DataReader} reader the reader to use. + */ + readLocalPart: function(reader) { + var compression, localExtraFieldsLength; + + // we already know everything from the central dir ! + // If the central dir data are false, we are doomed. + // On the bright side, the local part is scary : zip64, data descriptors, both, etc. + // The less data we get here, the more reliable this should be. + // Let's skip the whole header and dash to the data ! + reader.skip(22); + // in some zip created on windows, the filename stored in the central dir contains \ instead of /. + // Strangely, the filename here is OK. + // I would love to treat these zip files as corrupted (see http://www.info-zip.org/FAQ.html#backslashes + // or APPNOTE#4.4.17.1, "All slashes MUST be forward slashes '/'") but there are a lot of bad zip generators... + // Search "unzip mismatching "local" filename continuing with "central" filename version" on + // the internet. + // + // I think I see the logic here : the central directory is used to display + // content and the local directory is used to extract the files. Mixing / and \ + // may be used to display \ to windows users and use / when extracting the files. + // Unfortunately, this lead also to some issues : http://seclists.org/fulldisclosure/2009/Sep/394 + this.fileNameLength = reader.readInt(2); + localExtraFieldsLength = reader.readInt(2); // can't be sure this will be the same as the central dir + this.fileName = reader.readString(this.fileNameLength); + reader.skip(localExtraFieldsLength); + + if (this.compressedSize == -1 || this.uncompressedSize == -1) { + throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory " + "(compressedSize == -1 || uncompressedSize == -1)"); + } + + compression = utils.findCompression(this.compressionMethod); + if (compression === null) { // no compression found + throw new Error("Corrupted zip : compression " + utils.pretty(this.compressionMethod) + " unknown (inner file : " + this.fileName + ")"); + } + this.decompressed = new CompressedObject(); + this.decompressed.compressedSize = this.compressedSize; + this.decompressed.uncompressedSize = this.uncompressedSize; + this.decompressed.crc32 = this.crc32; + this.decompressed.compressionMethod = this.compressionMethod; + this.decompressed.getCompressedContent = this.prepareCompressedContent(reader, reader.index, this.compressedSize, compression); + this.decompressed.getContent = this.prepareContent(reader, reader.index, this.compressedSize, compression, this.uncompressedSize); + + // we need to compute the crc32... + if (this.loadOptions.checkCRC32) { + this.decompressed = utils.transformTo("string", this.decompressed.getContent()); + if (jszipProto.crc32(this.decompressed) !== this.crc32) { + throw new Error("Corrupted zip : CRC32 mismatch"); + } + } + }, + + /** + * Read the central part of a zip file and add the info in this object. + * @param {DataReader} reader the reader to use. + */ + readCentralPart: function(reader) { + this.versionMadeBy = reader.readInt(2); + this.versionNeeded = reader.readInt(2); + this.bitFlag = reader.readInt(2); + this.compressionMethod = reader.readString(2); + this.date = reader.readDate(); + this.crc32 = reader.readInt(4); + this.compressedSize = reader.readInt(4); + this.uncompressedSize = reader.readInt(4); + this.fileNameLength = reader.readInt(2); + this.extraFieldsLength = reader.readInt(2); + this.fileCommentLength = reader.readInt(2); + this.diskNumberStart = reader.readInt(2); + this.internalFileAttributes = reader.readInt(2); + this.externalFileAttributes = reader.readInt(4); + this.localHeaderOffset = reader.readInt(4); + + if (this.isEncrypted()) { + throw new Error("Encrypted zip are not supported"); + } + + this.fileName = reader.readString(this.fileNameLength); + this.readExtraFields(reader); + this.parseZIP64ExtraField(reader); + this.fileComment = reader.readString(this.fileCommentLength); + }, + + /** + * Parse the external file attributes and get the unix/dos permissions. + */ + processAttributes: function () { + this.unixPermissions = null; + this.dosPermissions = null; + var madeBy = this.versionMadeBy >> 8; + + // Check if we have the DOS directory flag set. + // We look for it in the DOS and UNIX permissions + // but some unknown platform could set it as a compatibility flag. + this.dir = this.externalFileAttributes & 0x0010 ? true : false; + + if(madeBy === MADE_BY_DOS) { + // first 6 bits (0 to 5) + this.dosPermissions = this.externalFileAttributes & 0x3F; + } + + if(madeBy === MADE_BY_UNIX) { + this.unixPermissions = (this.externalFileAttributes >> 16) & 0xFFFF; + // the octal permissions are in (this.unixPermissions & 0x01FF).toString(8); + } + + // fail safe : if the name ends with a / it probably means a folder + if (!this.dir && this.fileName.slice(-1) === '/') { + this.dir = true; + } + }, + + /** + * Parse the ZIP64 extra field and merge the info in the current ZipEntry. + * @param {DataReader} reader the reader to use. + */ + parseZIP64ExtraField: function(reader) { + + if (!this.extraFields[0x0001]) { + return; + } + + // should be something, preparing the extra reader + var extraReader = new StringReader(this.extraFields[0x0001].value); + + // I really hope that these 64bits integer can fit in 32 bits integer, because js + // won't let us have more. + if (this.uncompressedSize === utils.MAX_VALUE_32BITS) { + this.uncompressedSize = extraReader.readInt(8); + } + if (this.compressedSize === utils.MAX_VALUE_32BITS) { + this.compressedSize = extraReader.readInt(8); + } + if (this.localHeaderOffset === utils.MAX_VALUE_32BITS) { + this.localHeaderOffset = extraReader.readInt(8); + } + if (this.diskNumberStart === utils.MAX_VALUE_32BITS) { + this.diskNumberStart = extraReader.readInt(4); + } + }, + /** + * Read the central part of a zip file and add the info in this object. + * @param {DataReader} reader the reader to use. + */ + readExtraFields: function(reader) { + var start = reader.index, + extraFieldId, + extraFieldLength, + extraFieldValue; + + this.extraFields = this.extraFields || {}; + + while (reader.index < start + this.extraFieldsLength) { + extraFieldId = reader.readInt(2); + extraFieldLength = reader.readInt(2); + extraFieldValue = reader.readString(extraFieldLength); + + this.extraFields[extraFieldId] = { + id: extraFieldId, + length: extraFieldLength, + value: extraFieldValue + }; + } + }, + /** + * Apply an UTF8 transformation if needed. + */ + handleUTF8: function() { + if (this.useUTF8()) { + this.fileName = jszipProto.utf8decode(this.fileName); + this.fileComment = jszipProto.utf8decode(this.fileComment); + } else { + var upath = this.findExtraFieldUnicodePath(); + if (upath !== null) { + this.fileName = upath; + } + var ucomment = this.findExtraFieldUnicodeComment(); + if (ucomment !== null) { + this.fileComment = ucomment; + } + } + }, + + /** + * Find the unicode path declared in the extra field, if any. + * @return {String} the unicode path, null otherwise. + */ + findExtraFieldUnicodePath: function() { + var upathField = this.extraFields[0x7075]; + if (upathField) { + var extraReader = new StringReader(upathField.value); + + // wrong version + if (extraReader.readInt(1) !== 1) { + return null; + } + + // the crc of the filename changed, this field is out of date. + if (jszipProto.crc32(this.fileName) !== extraReader.readInt(4)) { + return null; + } + + return jszipProto.utf8decode(extraReader.readString(upathField.length - 5)); + } + return null; + }, + + /** + * Find the unicode comment declared in the extra field, if any. + * @return {String} the unicode comment, null otherwise. + */ + findExtraFieldUnicodeComment: function() { + var ucommentField = this.extraFields[0x6375]; + if (ucommentField) { + var extraReader = new StringReader(ucommentField.value); + + // wrong version + if (extraReader.readInt(1) !== 1) { + return null; + } + + // the crc of the comment changed, this field is out of date. + if (jszipProto.crc32(this.fileComment) !== extraReader.readInt(4)) { + return null; + } + + return jszipProto.utf8decode(extraReader.readString(ucommentField.length - 5)); + } + return null; + } +}; +module.exports = ZipEntry; + +},{"./compressedObject":2,"./object":13,"./stringReader":15,"./utils":21}],24:[function(_dereq_,module,exports){ +// Top level file is just a mixin of submodules & constants +'use strict'; + +var assign = _dereq_('./lib/utils/common').assign; + +var deflate = _dereq_('./lib/deflate'); +var inflate = _dereq_('./lib/inflate'); +var constants = _dereq_('./lib/zlib/constants'); + +var pako = {}; + +assign(pako, deflate, inflate, constants); + +module.exports = pako; +},{"./lib/deflate":25,"./lib/inflate":26,"./lib/utils/common":27,"./lib/zlib/constants":30}],25:[function(_dereq_,module,exports){ +'use strict'; + + +var zlib_deflate = _dereq_('./zlib/deflate.js'); +var utils = _dereq_('./utils/common'); +var strings = _dereq_('./utils/strings'); +var msg = _dereq_('./zlib/messages'); +var zstream = _dereq_('./zlib/zstream'); + + +/* Public constants ==========================================================*/ +/* ===========================================================================*/ + +var Z_NO_FLUSH = 0; +var Z_FINISH = 4; + +var Z_OK = 0; +var Z_STREAM_END = 1; + +var Z_DEFAULT_COMPRESSION = -1; + +var Z_DEFAULT_STRATEGY = 0; + +var Z_DEFLATED = 8; + +/* ===========================================================================*/ + + +/** + * class Deflate + * + * Generic JS-style wrapper for zlib calls. If you don't need + * streaming behaviour - use more simple functions: [[deflate]], + * [[deflateRaw]] and [[gzip]]. + **/ + +/* internal + * Deflate.chunks -> Array + * + * Chunks of output data, if [[Deflate#onData]] not overriden. + **/ + +/** + * Deflate.result -> Uint8Array|Array + * + * Compressed result, generated by default [[Deflate#onData]] + * and [[Deflate#onEnd]] handlers. Filled after you push last chunk + * (call [[Deflate#push]] with `Z_FINISH` / `true` param). + **/ + +/** + * Deflate.err -> Number + * + * Error code after deflate finished. 0 (Z_OK) on success. + * You will not need it in real life, because deflate errors + * are possible only on wrong options or bad `onData` / `onEnd` + * custom handlers. + **/ + +/** + * Deflate.msg -> String + * + * Error message, if [[Deflate.err]] != 0 + **/ + + +/** + * new Deflate(options) + * - options (Object): zlib deflate options. + * + * Creates new deflator instance with specified params. Throws exception + * on bad params. Supported options: + * + * - `level` + * - `windowBits` + * - `memLevel` + * - `strategy` + * + * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced) + * for more information on these. + * + * Additional options, for internal needs: + * + * - `chunkSize` - size of generated data chunks (16K by default) + * - `raw` (Boolean) - do raw deflate + * - `gzip` (Boolean) - create gzip wrapper + * - `to` (String) - if equal to 'string', then result will be "binary string" + * (each char code [0..255]) + * - `header` (Object) - custom header for gzip + * - `text` (Boolean) - true if compressed data believed to be text + * - `time` (Number) - modification time, unix timestamp + * - `os` (Number) - operation system code + * - `extra` (Array) - array of bytes with extra data (max 65536) + * - `name` (String) - file name (binary string) + * - `comment` (String) - comment (binary string) + * - `hcrc` (Boolean) - true if header crc should be added + * + * ##### Example: + * + * ```javascript + * var pako = require('pako') + * , chunk1 = Uint8Array([1,2,3,4,5,6,7,8,9]) + * , chunk2 = Uint8Array([10,11,12,13,14,15,16,17,18,19]); + * + * var deflate = new pako.Deflate({ level: 3}); + * + * deflate.push(chunk1, false); + * deflate.push(chunk2, true); // true -> last chunk + * + * if (deflate.err) { throw new Error(deflate.err); } + * + * console.log(deflate.result); + * ``` + **/ +var Deflate = function(options) { + + this.options = utils.assign({ + level: Z_DEFAULT_COMPRESSION, + method: Z_DEFLATED, + chunkSize: 16384, + windowBits: 15, + memLevel: 8, + strategy: Z_DEFAULT_STRATEGY, + to: '' + }, options || {}); + + var opt = this.options; + + if (opt.raw && (opt.windowBits > 0)) { + opt.windowBits = -opt.windowBits; + } + + else if (opt.gzip && (opt.windowBits > 0) && (opt.windowBits < 16)) { + opt.windowBits += 16; + } + + this.err = 0; // error code, if happens (0 = Z_OK) + this.msg = ''; // error message + this.ended = false; // used to avoid multiple onEnd() calls + this.chunks = []; // chunks of compressed data + + this.strm = new zstream(); + this.strm.avail_out = 0; + + var status = zlib_deflate.deflateInit2( + this.strm, + opt.level, + opt.method, + opt.windowBits, + opt.memLevel, + opt.strategy + ); + + if (status !== Z_OK) { + throw new Error(msg[status]); + } + + if (opt.header) { + zlib_deflate.deflateSetHeader(this.strm, opt.header); + } +}; + +/** + * Deflate#push(data[, mode]) -> Boolean + * - data (Uint8Array|Array|String): input data. Strings will be converted to + * utf8 byte sequence. + * - mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes. + * See constants. Skipped or `false` means Z_NO_FLUSH, `true` meansh Z_FINISH. + * + * Sends input data to deflate pipe, generating [[Deflate#onData]] calls with + * new compressed chunks. Returns `true` on success. The last data block must have + * mode Z_FINISH (or `true`). That flush internal pending buffers and call + * [[Deflate#onEnd]]. + * + * On fail call [[Deflate#onEnd]] with error code and return false. + * + * We strongly recommend to use `Uint8Array` on input for best speed (output + * array format is detected automatically). Also, don't skip last param and always + * use the same type in your code (boolean or number). That will improve JS speed. + * + * For regular `Array`-s make sure all elements are [0..255]. + * + * ##### Example + * + * ```javascript + * push(chunk, false); // push one of data chunks + * ... + * push(chunk, true); // push last chunk + * ``` + **/ +Deflate.prototype.push = function(data, mode) { + var strm = this.strm; + var chunkSize = this.options.chunkSize; + var status, _mode; + + if (this.ended) { return false; } + + _mode = (mode === ~~mode) ? mode : ((mode === true) ? Z_FINISH : Z_NO_FLUSH); + + // Convert data if needed + if (typeof data === 'string') { + // If we need to compress text, change encoding to utf8. + strm.input = strings.string2buf(data); + } else { + strm.input = data; + } + + strm.next_in = 0; + strm.avail_in = strm.input.length; + + do { + if (strm.avail_out === 0) { + strm.output = new utils.Buf8(chunkSize); + strm.next_out = 0; + strm.avail_out = chunkSize; + } + status = zlib_deflate.deflate(strm, _mode); /* no bad return value */ + + if (status !== Z_STREAM_END && status !== Z_OK) { + this.onEnd(status); + this.ended = true; + return false; + } + if (strm.avail_out === 0 || (strm.avail_in === 0 && _mode === Z_FINISH)) { + if (this.options.to === 'string') { + this.onData(strings.buf2binstring(utils.shrinkBuf(strm.output, strm.next_out))); + } else { + this.onData(utils.shrinkBuf(strm.output, strm.next_out)); + } + } + } while ((strm.avail_in > 0 || strm.avail_out === 0) && status !== Z_STREAM_END); + + // Finalize on the last chunk. + if (_mode === Z_FINISH) { + status = zlib_deflate.deflateEnd(this.strm); + this.onEnd(status); + this.ended = true; + return status === Z_OK; + } + + return true; +}; + + +/** + * Deflate#onData(chunk) -> Void + * - chunk (Uint8Array|Array|String): ouput data. Type of array depends + * on js engine support. When string output requested, each chunk + * will be string. + * + * By default, stores data blocks in `chunks[]` property and glue + * those in `onEnd`. Override this handler, if you need another behaviour. + **/ +Deflate.prototype.onData = function(chunk) { + this.chunks.push(chunk); +}; + + +/** + * Deflate#onEnd(status) -> Void + * - status (Number): deflate status. 0 (Z_OK) on success, + * other if not. + * + * Called once after you tell deflate that input stream complete + * or error happenned. By default - join collected chunks, + * free memory and fill `results` / `err` properties. + **/ +Deflate.prototype.onEnd = function(status) { + // On success - join + if (status === Z_OK) { + if (this.options.to === 'string') { + this.result = this.chunks.join(''); + } else { + this.result = utils.flattenChunks(this.chunks); + } + } + this.chunks = []; + this.err = status; + this.msg = this.strm.msg; +}; + + +/** + * deflate(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to compress. + * - options (Object): zlib deflate options. + * + * Compress `data` with deflate alrorythm and `options`. + * + * Supported options are: + * + * - level + * - windowBits + * - memLevel + * - strategy + * + * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced) + * for more information on these. + * + * Sugar (options): + * + * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify + * negative windowBits implicitly. + * - `to` (String) - if equal to 'string', then result will be "binary string" + * (each char code [0..255]) + * + * ##### Example: + * + * ```javascript + * var pako = require('pako') + * , data = Uint8Array([1,2,3,4,5,6,7,8,9]); + * + * console.log(pako.deflate(data)); + * ``` + **/ +function deflate(input, options) { + var deflator = new Deflate(options); + + deflator.push(input, true); + + // That will never happens, if you don't cheat with options :) + if (deflator.err) { throw deflator.msg; } + + return deflator.result; +} + + +/** + * deflateRaw(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to compress. + * - options (Object): zlib deflate options. + * + * The same as [[deflate]], but creates raw data, without wrapper + * (header and adler32 crc). + **/ +function deflateRaw(input, options) { + options = options || {}; + options.raw = true; + return deflate(input, options); +} + + +/** + * gzip(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to compress. + * - options (Object): zlib deflate options. + * + * The same as [[deflate]], but create gzip wrapper instead of + * deflate one. + **/ +function gzip(input, options) { + options = options || {}; + options.gzip = true; + return deflate(input, options); +} + + +exports.Deflate = Deflate; +exports.deflate = deflate; +exports.deflateRaw = deflateRaw; +exports.gzip = gzip; +},{"./utils/common":27,"./utils/strings":28,"./zlib/deflate.js":32,"./zlib/messages":37,"./zlib/zstream":39}],26:[function(_dereq_,module,exports){ +'use strict'; + + +var zlib_inflate = _dereq_('./zlib/inflate.js'); +var utils = _dereq_('./utils/common'); +var strings = _dereq_('./utils/strings'); +var c = _dereq_('./zlib/constants'); +var msg = _dereq_('./zlib/messages'); +var zstream = _dereq_('./zlib/zstream'); +var gzheader = _dereq_('./zlib/gzheader'); + + +/** + * class Inflate + * + * Generic JS-style wrapper for zlib calls. If you don't need + * streaming behaviour - use more simple functions: [[inflate]] + * and [[inflateRaw]]. + **/ + +/* internal + * inflate.chunks -> Array + * + * Chunks of output data, if [[Inflate#onData]] not overriden. + **/ + +/** + * Inflate.result -> Uint8Array|Array|String + * + * Uncompressed result, generated by default [[Inflate#onData]] + * and [[Inflate#onEnd]] handlers. Filled after you push last chunk + * (call [[Inflate#push]] with `Z_FINISH` / `true` param). + **/ + +/** + * Inflate.err -> Number + * + * Error code after inflate finished. 0 (Z_OK) on success. + * Should be checked if broken data possible. + **/ + +/** + * Inflate.msg -> String + * + * Error message, if [[Inflate.err]] != 0 + **/ + + +/** + * new Inflate(options) + * - options (Object): zlib inflate options. + * + * Creates new inflator instance with specified params. Throws exception + * on bad params. Supported options: + * + * - `windowBits` + * + * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced) + * for more information on these. + * + * Additional options, for internal needs: + * + * - `chunkSize` - size of generated data chunks (16K by default) + * - `raw` (Boolean) - do raw inflate + * - `to` (String) - if equal to 'string', then result will be converted + * from utf8 to utf16 (javascript) string. When string output requested, + * chunk length can differ from `chunkSize`, depending on content. + * + * By default, when no options set, autodetect deflate/gzip data format via + * wrapper header. + * + * ##### Example: + * + * ```javascript + * var pako = require('pako') + * , chunk1 = Uint8Array([1,2,3,4,5,6,7,8,9]) + * , chunk2 = Uint8Array([10,11,12,13,14,15,16,17,18,19]); + * + * var inflate = new pako.Inflate({ level: 3}); + * + * inflate.push(chunk1, false); + * inflate.push(chunk2, true); // true -> last chunk + * + * if (inflate.err) { throw new Error(inflate.err); } + * + * console.log(inflate.result); + * ``` + **/ +var Inflate = function(options) { + + this.options = utils.assign({ + chunkSize: 16384, + windowBits: 0, + to: '' + }, options || {}); + + var opt = this.options; + + // Force window size for `raw` data, if not set directly, + // because we have no header for autodetect. + if (opt.raw && (opt.windowBits >= 0) && (opt.windowBits < 16)) { + opt.windowBits = -opt.windowBits; + if (opt.windowBits === 0) { opt.windowBits = -15; } + } + + // If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate + if ((opt.windowBits >= 0) && (opt.windowBits < 16) && + !(options && options.windowBits)) { + opt.windowBits += 32; + } + + // Gzip header has no info about windows size, we can do autodetect only + // for deflate. So, if window size not set, force it to max when gzip possible + if ((opt.windowBits > 15) && (opt.windowBits < 48)) { + // bit 3 (16) -> gzipped data + // bit 4 (32) -> autodetect gzip/deflate + if ((opt.windowBits & 15) === 0) { + opt.windowBits |= 15; + } + } + + this.err = 0; // error code, if happens (0 = Z_OK) + this.msg = ''; // error message + this.ended = false; // used to avoid multiple onEnd() calls + this.chunks = []; // chunks of compressed data + + this.strm = new zstream(); + this.strm.avail_out = 0; + + var status = zlib_inflate.inflateInit2( + this.strm, + opt.windowBits + ); + + if (status !== c.Z_OK) { + throw new Error(msg[status]); + } + + this.header = new gzheader(); + + zlib_inflate.inflateGetHeader(this.strm, this.header); +}; + +/** + * Inflate#push(data[, mode]) -> Boolean + * - data (Uint8Array|Array|String): input data + * - mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes. + * See constants. Skipped or `false` means Z_NO_FLUSH, `true` meansh Z_FINISH. + * + * Sends input data to inflate pipe, generating [[Inflate#onData]] calls with + * new output chunks. Returns `true` on success. The last data block must have + * mode Z_FINISH (or `true`). That flush internal pending buffers and call + * [[Inflate#onEnd]]. + * + * On fail call [[Inflate#onEnd]] with error code and return false. + * + * We strongly recommend to use `Uint8Array` on input for best speed (output + * format is detected automatically). Also, don't skip last param and always + * use the same type in your code (boolean or number). That will improve JS speed. + * + * For regular `Array`-s make sure all elements are [0..255]. + * + * ##### Example + * + * ```javascript + * push(chunk, false); // push one of data chunks + * ... + * push(chunk, true); // push last chunk + * ``` + **/ +Inflate.prototype.push = function(data, mode) { + var strm = this.strm; + var chunkSize = this.options.chunkSize; + var status, _mode; + var next_out_utf8, tail, utf8str; + + if (this.ended) { return false; } + _mode = (mode === ~~mode) ? mode : ((mode === true) ? c.Z_FINISH : c.Z_NO_FLUSH); + + // Convert data if needed + if (typeof data === 'string') { + // Only binary strings can be decompressed on practice + strm.input = strings.binstring2buf(data); + } else { + strm.input = data; + } + + strm.next_in = 0; + strm.avail_in = strm.input.length; + + do { + if (strm.avail_out === 0) { + strm.output = new utils.Buf8(chunkSize); + strm.next_out = 0; + strm.avail_out = chunkSize; + } + + status = zlib_inflate.inflate(strm, c.Z_NO_FLUSH); /* no bad return value */ + + if (status !== c.Z_STREAM_END && status !== c.Z_OK) { + this.onEnd(status); + this.ended = true; + return false; + } + + if (strm.next_out) { + if (strm.avail_out === 0 || status === c.Z_STREAM_END || (strm.avail_in === 0 && _mode === c.Z_FINISH)) { + + if (this.options.to === 'string') { + + next_out_utf8 = strings.utf8border(strm.output, strm.next_out); + + tail = strm.next_out - next_out_utf8; + utf8str = strings.buf2string(strm.output, next_out_utf8); + + // move tail + strm.next_out = tail; + strm.avail_out = chunkSize - tail; + if (tail) { utils.arraySet(strm.output, strm.output, next_out_utf8, tail, 0); } + + this.onData(utf8str); + + } else { + this.onData(utils.shrinkBuf(strm.output, strm.next_out)); + } + } + } + } while ((strm.avail_in > 0) && status !== c.Z_STREAM_END); + + if (status === c.Z_STREAM_END) { + _mode = c.Z_FINISH; + } + // Finalize on the last chunk. + if (_mode === c.Z_FINISH) { + status = zlib_inflate.inflateEnd(this.strm); + this.onEnd(status); + this.ended = true; + return status === c.Z_OK; + } + + return true; +}; + + +/** + * Inflate#onData(chunk) -> Void + * - chunk (Uint8Array|Array|String): ouput data. Type of array depends + * on js engine support. When string output requested, each chunk + * will be string. + * + * By default, stores data blocks in `chunks[]` property and glue + * those in `onEnd`. Override this handler, if you need another behaviour. + **/ +Inflate.prototype.onData = function(chunk) { + this.chunks.push(chunk); +}; + + +/** + * Inflate#onEnd(status) -> Void + * - status (Number): inflate status. 0 (Z_OK) on success, + * other if not. + * + * Called once after you tell inflate that input stream complete + * or error happenned. By default - join collected chunks, + * free memory and fill `results` / `err` properties. + **/ +Inflate.prototype.onEnd = function(status) { + // On success - join + if (status === c.Z_OK) { + if (this.options.to === 'string') { + // Glue & convert here, until we teach pako to send + // utf8 alligned strings to onData + this.result = this.chunks.join(''); + } else { + this.result = utils.flattenChunks(this.chunks); + } + } + this.chunks = []; + this.err = status; + this.msg = this.strm.msg; +}; + + +/** + * inflate(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to decompress. + * - options (Object): zlib inflate options. + * + * Decompress `data` with inflate/ungzip and `options`. Autodetect + * format via wrapper header by default. That's why we don't provide + * separate `ungzip` method. + * + * Supported options are: + * + * - windowBits + * + * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced) + * for more information. + * + * Sugar (options): + * + * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify + * negative windowBits implicitly. + * - `to` (String) - if equal to 'string', then result will be converted + * from utf8 to utf16 (javascript) string. When string output requested, + * chunk length can differ from `chunkSize`, depending on content. + * + * + * ##### Example: + * + * ```javascript + * var pako = require('pako') + * , input = pako.deflate([1,2,3,4,5,6,7,8,9]) + * , output; + * + * try { + * output = pako.inflate(input); + * } catch (err) + * console.log(err); + * } + * ``` + **/ +function inflate(input, options) { + var inflator = new Inflate(options); + + inflator.push(input, true); + + // That will never happens, if you don't cheat with options :) + if (inflator.err) { throw inflator.msg; } + + return inflator.result; +} + + +/** + * inflateRaw(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to decompress. + * - options (Object): zlib inflate options. + * + * The same as [[inflate]], but creates raw data, without wrapper + * (header and adler32 crc). + **/ +function inflateRaw(input, options) { + options = options || {}; + options.raw = true; + return inflate(input, options); +} + + +/** + * ungzip(data[, options]) -> Uint8Array|Array|String + * - data (Uint8Array|Array|String): input data to decompress. + * - options (Object): zlib inflate options. + * + * Just shortcut to [[inflate]], because it autodetects format + * by header.content. Done for convenience. + **/ + + +exports.Inflate = Inflate; +exports.inflate = inflate; +exports.inflateRaw = inflateRaw; +exports.ungzip = inflate; + +},{"./utils/common":27,"./utils/strings":28,"./zlib/constants":30,"./zlib/gzheader":33,"./zlib/inflate.js":35,"./zlib/messages":37,"./zlib/zstream":39}],27:[function(_dereq_,module,exports){ +'use strict'; + + +var TYPED_OK = (typeof Uint8Array !== 'undefined') && + (typeof Uint16Array !== 'undefined') && + (typeof Int32Array !== 'undefined'); + + +exports.assign = function (obj /*from1, from2, from3, ...*/) { + var sources = Array.prototype.slice.call(arguments, 1); + while (sources.length) { + var source = sources.shift(); + if (!source) { continue; } + + if (typeof(source) !== 'object') { + throw new TypeError(source + 'must be non-object'); + } + + for (var p in source) { + if (source.hasOwnProperty(p)) { + obj[p] = source[p]; + } + } + } + + return obj; +}; + + +// reduce buffer size, avoiding mem copy +exports.shrinkBuf = function (buf, size) { + if (buf.length === size) { return buf; } + if (buf.subarray) { return buf.subarray(0, size); } + buf.length = size; + return buf; +}; + + +var fnTyped = { + arraySet: function (dest, src, src_offs, len, dest_offs) { + if (src.subarray && dest.subarray) { + dest.set(src.subarray(src_offs, src_offs+len), dest_offs); + return; + } + // Fallback to ordinary array + for(var i=0; i= 252 ? 6 : i >= 248 ? 5 : i >= 240 ? 4 : i >= 224 ? 3 : i >= 192 ? 2 : 1); +} +_utf8len[254]=_utf8len[254]=1; // Invalid sequence start + + +// convert string to array (typed, when possible) +exports.string2buf = function (str) { + var buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0; + + // count binary size + for (m_pos = 0; m_pos < str_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 0xfc00) === 0xd800 && (m_pos+1 < str_len)) { + c2 = str.charCodeAt(m_pos+1); + if ((c2 & 0xfc00) === 0xdc00) { + c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00); + m_pos++; + } + } + buf_len += c < 0x80 ? 1 : c < 0x800 ? 2 : c < 0x10000 ? 3 : 4; + } + + // allocate buffer + buf = new utils.Buf8(buf_len); + + // convert + for (i=0, m_pos = 0; i < buf_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 0xfc00) === 0xd800 && (m_pos+1 < str_len)) { + c2 = str.charCodeAt(m_pos+1); + if ((c2 & 0xfc00) === 0xdc00) { + c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00); + m_pos++; + } + } + if (c < 0x80) { + /* one byte */ + buf[i++] = c; + } else if (c < 0x800) { + /* two bytes */ + buf[i++] = 0xC0 | (c >>> 6); + buf[i++] = 0x80 | (c & 0x3f); + } else if (c < 0x10000) { + /* three bytes */ + buf[i++] = 0xE0 | (c >>> 12); + buf[i++] = 0x80 | (c >>> 6 & 0x3f); + buf[i++] = 0x80 | (c & 0x3f); + } else { + /* four bytes */ + buf[i++] = 0xf0 | (c >>> 18); + buf[i++] = 0x80 | (c >>> 12 & 0x3f); + buf[i++] = 0x80 | (c >>> 6 & 0x3f); + buf[i++] = 0x80 | (c & 0x3f); + } + } + + return buf; +}; + +// Helper (used in 2 places) +function buf2binstring(buf, len) { + // use fallback for big arrays to avoid stack overflow + if (len < 65537) { + if ((buf.subarray && STR_APPLY_UIA_OK) || (!buf.subarray && STR_APPLY_OK)) { + return String.fromCharCode.apply(null, utils.shrinkBuf(buf, len)); + } + } + + var result = ''; + for(var i=0; i < len; i++) { + result += String.fromCharCode(buf[i]); + } + return result; +} + + +// Convert byte array to binary string +exports.buf2binstring = function(buf) { + return buf2binstring(buf, buf.length); +}; + + +// Convert binary string (typed, when possible) +exports.binstring2buf = function(str) { + var buf = new utils.Buf8(str.length); + for(var i=0, len=buf.length; i < len; i++) { + buf[i] = str.charCodeAt(i); + } + return buf; +}; + + +// convert array to string +exports.buf2string = function (buf, max) { + var i, out, c, c_len; + var len = max || buf.length; + + // Reserve max possible length (2 words per char) + // NB: by unknown reasons, Array is significantly faster for + // String.fromCharCode.apply than Uint16Array. + var utf16buf = new Array(len*2); + + for (out=0, i=0; i 4) { utf16buf[out++] = 0xfffd; i += c_len-1; continue; } + + // apply mask on first byte + c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07; + // join the rest + while (c_len > 1 && i < len) { + c = (c << 6) | (buf[i++] & 0x3f); + c_len--; + } + + // terminated by end of string? + if (c_len > 1) { utf16buf[out++] = 0xfffd; continue; } + + if (c < 0x10000) { + utf16buf[out++] = c; + } else { + c -= 0x10000; + utf16buf[out++] = 0xd800 | ((c >> 10) & 0x3ff); + utf16buf[out++] = 0xdc00 | (c & 0x3ff); + } + } + + return buf2binstring(utf16buf, out); +}; + + +// Calculate max possible position in utf8 buffer, +// that will not break sequence. If that's not possible +// - (very small limits) return max size as is. +// +// buf[] - utf8 bytes array +// max - length limit (mandatory); +exports.utf8border = function(buf, max) { + var pos; + + max = max || buf.length; + if (max > buf.length) { max = buf.length; } + + // go back from last position, until start of sequence found + pos = max-1; + while (pos >= 0 && (buf[pos] & 0xC0) === 0x80) { pos--; } + + // Fuckup - very small and broken sequence, + // return max, because we should return something anyway. + if (pos < 0) { return max; } + + // If we came to start of buffer - that means vuffer is too small, + // return max too. + if (pos === 0) { return max; } + + return (pos + _utf8len[buf[pos]] > max) ? pos : max; +}; + +},{"./common":27}],29:[function(_dereq_,module,exports){ +'use strict'; + +// Note: adler32 takes 12% for level 0 and 2% for level 6. +// It doesn't worth to make additional optimizationa as in original. +// Small size is preferable. + +function adler32(adler, buf, len, pos) { + var s1 = (adler & 0xffff) |0 + , s2 = ((adler >>> 16) & 0xffff) |0 + , n = 0; + + while (len !== 0) { + // Set limit ~ twice less than 5552, to keep + // s2 in 31-bits, because we force signed ints. + // in other case %= will fail. + n = len > 2000 ? 2000 : len; + len -= n; + + do { + s1 = (s1 + buf[pos++]) |0; + s2 = (s2 + s1) |0; + } while (--n); + + s1 %= 65521; + s2 %= 65521; + } + + return (s1 | (s2 << 16)) |0; +} + + +module.exports = adler32; +},{}],30:[function(_dereq_,module,exports){ +module.exports = { + + /* Allowed flush values; see deflate() and inflate() below for details */ + Z_NO_FLUSH: 0, + Z_PARTIAL_FLUSH: 1, + Z_SYNC_FLUSH: 2, + Z_FULL_FLUSH: 3, + Z_FINISH: 4, + Z_BLOCK: 5, + Z_TREES: 6, + + /* Return codes for the compression/decompression functions. Negative values + * are errors, positive values are used for special but normal events. + */ + Z_OK: 0, + Z_STREAM_END: 1, + Z_NEED_DICT: 2, + Z_ERRNO: -1, + Z_STREAM_ERROR: -2, + Z_DATA_ERROR: -3, + //Z_MEM_ERROR: -4, + Z_BUF_ERROR: -5, + //Z_VERSION_ERROR: -6, + + /* compression levels */ + Z_NO_COMPRESSION: 0, + Z_BEST_SPEED: 1, + Z_BEST_COMPRESSION: 9, + Z_DEFAULT_COMPRESSION: -1, + + + Z_FILTERED: 1, + Z_HUFFMAN_ONLY: 2, + Z_RLE: 3, + Z_FIXED: 4, + Z_DEFAULT_STRATEGY: 0, + + /* Possible values of the data_type field (though see inflate()) */ + Z_BINARY: 0, + Z_TEXT: 1, + //Z_ASCII: 1, // = Z_TEXT (deprecated) + Z_UNKNOWN: 2, + + /* The deflate compression method */ + Z_DEFLATED: 8 + //Z_NULL: null // Use -1 or null inline, depending on var type +}; +},{}],31:[function(_dereq_,module,exports){ +'use strict'; + +// Note: we can't get significant speed boost here. +// So write code to minimize size - no pregenerated tables +// and array tools dependencies. + + +// Use ordinary array, since untyped makes no boost here +function makeTable() { + var c, table = []; + + for(var n =0; n < 256; n++){ + c = n; + for(var k =0; k < 8; k++){ + c = ((c&1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1)); + } + table[n] = c; + } + + return table; +} + +// Create table on load. Just 255 signed longs. Not a problem. +var crcTable = makeTable(); + + +function crc32(crc, buf, len, pos) { + var t = crcTable + , end = pos + len; + + crc = crc ^ (-1); + + for (var i = pos; i < end; i++ ) { + crc = (crc >>> 8) ^ t[(crc ^ buf[i]) & 0xFF]; + } + + return (crc ^ (-1)); // >>> 0; +} + + +module.exports = crc32; +},{}],32:[function(_dereq_,module,exports){ +'use strict'; + +var utils = _dereq_('../utils/common'); +var trees = _dereq_('./trees'); +var adler32 = _dereq_('./adler32'); +var crc32 = _dereq_('./crc32'); +var msg = _dereq_('./messages'); + +/* Public constants ==========================================================*/ +/* ===========================================================================*/ + + +/* Allowed flush values; see deflate() and inflate() below for details */ +var Z_NO_FLUSH = 0; +var Z_PARTIAL_FLUSH = 1; +//var Z_SYNC_FLUSH = 2; +var Z_FULL_FLUSH = 3; +var Z_FINISH = 4; +var Z_BLOCK = 5; +//var Z_TREES = 6; + + +/* Return codes for the compression/decompression functions. Negative values + * are errors, positive values are used for special but normal events. + */ +var Z_OK = 0; +var Z_STREAM_END = 1; +//var Z_NEED_DICT = 2; +//var Z_ERRNO = -1; +var Z_STREAM_ERROR = -2; +var Z_DATA_ERROR = -3; +//var Z_MEM_ERROR = -4; +var Z_BUF_ERROR = -5; +//var Z_VERSION_ERROR = -6; + + +/* compression levels */ +//var Z_NO_COMPRESSION = 0; +//var Z_BEST_SPEED = 1; +//var Z_BEST_COMPRESSION = 9; +var Z_DEFAULT_COMPRESSION = -1; + + +var Z_FILTERED = 1; +var Z_HUFFMAN_ONLY = 2; +var Z_RLE = 3; +var Z_FIXED = 4; +var Z_DEFAULT_STRATEGY = 0; + +/* Possible values of the data_type field (though see inflate()) */ +//var Z_BINARY = 0; +//var Z_TEXT = 1; +//var Z_ASCII = 1; // = Z_TEXT +var Z_UNKNOWN = 2; + + +/* The deflate compression method */ +var Z_DEFLATED = 8; + +/*============================================================================*/ + + +var MAX_MEM_LEVEL = 9; +/* Maximum value for memLevel in deflateInit2 */ +var MAX_WBITS = 15; +/* 32K LZ77 window */ +var DEF_MEM_LEVEL = 8; + + +var LENGTH_CODES = 29; +/* number of length codes, not counting the special END_BLOCK code */ +var LITERALS = 256; +/* number of literal bytes 0..255 */ +var L_CODES = LITERALS + 1 + LENGTH_CODES; +/* number of Literal or Length codes, including the END_BLOCK code */ +var D_CODES = 30; +/* number of distance codes */ +var BL_CODES = 19; +/* number of codes used to transfer the bit lengths */ +var HEAP_SIZE = 2*L_CODES + 1; +/* maximum heap size */ +var MAX_BITS = 15; +/* All codes must not exceed MAX_BITS bits */ + +var MIN_MATCH = 3; +var MAX_MATCH = 258; +var MIN_LOOKAHEAD = (MAX_MATCH + MIN_MATCH + 1); + +var PRESET_DICT = 0x20; + +var INIT_STATE = 42; +var EXTRA_STATE = 69; +var NAME_STATE = 73; +var COMMENT_STATE = 91; +var HCRC_STATE = 103; +var BUSY_STATE = 113; +var FINISH_STATE = 666; + +var BS_NEED_MORE = 1; /* block not completed, need more input or more output */ +var BS_BLOCK_DONE = 2; /* block flush performed */ +var BS_FINISH_STARTED = 3; /* finish started, need only more output at next deflate */ +var BS_FINISH_DONE = 4; /* finish done, accept no more input or output */ + +var OS_CODE = 0x03; // Unix :) . Don't detect, use this default. + +function err(strm, errorCode) { + strm.msg = msg[errorCode]; + return errorCode; +} + +function rank(f) { + return ((f) << 1) - ((f) > 4 ? 9 : 0); +} + +function zero(buf) { var len = buf.length; while (--len >= 0) { buf[len] = 0; } } + + +/* ========================================================================= + * Flush as much pending output as possible. All deflate() output goes + * through this function so some applications may wish to modify it + * to avoid allocating a large strm->output buffer and copying into it. + * (See also read_buf()). + */ +function flush_pending(strm) { + var s = strm.state; + + //_tr_flush_bits(s); + var len = s.pending; + if (len > strm.avail_out) { + len = strm.avail_out; + } + if (len === 0) { return; } + + utils.arraySet(strm.output, s.pending_buf, s.pending_out, len, strm.next_out); + strm.next_out += len; + s.pending_out += len; + strm.total_out += len; + strm.avail_out -= len; + s.pending -= len; + if (s.pending === 0) { + s.pending_out = 0; + } +} + + +function flush_block_only (s, last) { + trees._tr_flush_block(s, (s.block_start >= 0 ? s.block_start : -1), s.strstart - s.block_start, last); + s.block_start = s.strstart; + flush_pending(s.strm); +} + + +function put_byte(s, b) { + s.pending_buf[s.pending++] = b; +} + + +/* ========================================================================= + * Put a short in the pending buffer. The 16-bit value is put in MSB order. + * IN assertion: the stream state is correct and there is enough room in + * pending_buf. + */ +function putShortMSB(s, b) { +// put_byte(s, (Byte)(b >> 8)); +// put_byte(s, (Byte)(b & 0xff)); + s.pending_buf[s.pending++] = (b >>> 8) & 0xff; + s.pending_buf[s.pending++] = b & 0xff; +} + + +/* =========================================================================== + * Read a new buffer from the current input stream, update the adler32 + * and total number of bytes read. All deflate() input goes through + * this function so some applications may wish to modify it to avoid + * allocating a large strm->input buffer and copying from it. + * (See also flush_pending()). + */ +function read_buf(strm, buf, start, size) { + var len = strm.avail_in; + + if (len > size) { len = size; } + if (len === 0) { return 0; } + + strm.avail_in -= len; + + utils.arraySet(buf, strm.input, strm.next_in, len, start); + if (strm.state.wrap === 1) { + strm.adler = adler32(strm.adler, buf, len, start); + } + + else if (strm.state.wrap === 2) { + strm.adler = crc32(strm.adler, buf, len, start); + } + + strm.next_in += len; + strm.total_in += len; + + return len; +} + + +/* =========================================================================== + * Set match_start to the longest match starting at the given string and + * return its length. Matches shorter or equal to prev_length are discarded, + * in which case the result is equal to prev_length and match_start is + * garbage. + * IN assertions: cur_match is the head of the hash chain for the current + * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1 + * OUT assertion: the match length is not greater than s->lookahead. + */ +function longest_match(s, cur_match) { + var chain_length = s.max_chain_length; /* max hash chain length */ + var scan = s.strstart; /* current string */ + var match; /* matched string */ + var len; /* length of current match */ + var best_len = s.prev_length; /* best match length so far */ + var nice_match = s.nice_match; /* stop if match long enough */ + var limit = (s.strstart > (s.w_size - MIN_LOOKAHEAD)) ? + s.strstart - (s.w_size - MIN_LOOKAHEAD) : 0/*NIL*/; + + var _win = s.window; // shortcut + + var wmask = s.w_mask; + var prev = s.prev; + + /* Stop when cur_match becomes <= limit. To simplify the code, + * we prevent matches with the string of window index 0. + */ + + var strend = s.strstart + MAX_MATCH; + var scan_end1 = _win[scan + best_len - 1]; + var scan_end = _win[scan + best_len]; + + /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16. + * It is easy to get rid of this optimization if necessary. + */ + // Assert(s->hash_bits >= 8 && MAX_MATCH == 258, "Code too clever"); + + /* Do not waste too much time if we already have a good match: */ + if (s.prev_length >= s.good_match) { + chain_length >>= 2; + } + /* Do not look for matches beyond the end of the input. This is necessary + * to make deflate deterministic. + */ + if (nice_match > s.lookahead) { nice_match = s.lookahead; } + + // Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead"); + + do { + // Assert(cur_match < s->strstart, "no future"); + match = cur_match; + + /* Skip to next match if the match length cannot increase + * or if the match length is less than 2. Note that the checks below + * for insufficient lookahead only occur occasionally for performance + * reasons. Therefore uninitialized memory will be accessed, and + * conditional jumps will be made that depend on those values. + * However the length of the match is limited to the lookahead, so + * the output of deflate is not affected by the uninitialized values. + */ + + if (_win[match + best_len] !== scan_end || + _win[match + best_len - 1] !== scan_end1 || + _win[match] !== _win[scan] || + _win[++match] !== _win[scan + 1]) { + continue; + } + + /* The check at best_len-1 can be removed because it will be made + * again later. (This heuristic is not always a win.) + * It is not necessary to compare scan[2] and match[2] since they + * are always equal when the other bytes match, given that + * the hash keys are equal and that HASH_BITS >= 8. + */ + scan += 2; + match++; + // Assert(*scan == *match, "match[2]?"); + + /* We check for insufficient lookahead only every 8th comparison; + * the 256th check will be made at strstart+258. + */ + do { + /*jshint noempty:false*/ + } while (_win[++scan] === _win[++match] && _win[++scan] === _win[++match] && + _win[++scan] === _win[++match] && _win[++scan] === _win[++match] && + _win[++scan] === _win[++match] && _win[++scan] === _win[++match] && + _win[++scan] === _win[++match] && _win[++scan] === _win[++match] && + scan < strend); + + // Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan"); + + len = MAX_MATCH - (strend - scan); + scan = strend - MAX_MATCH; + + if (len > best_len) { + s.match_start = cur_match; + best_len = len; + if (len >= nice_match) { + break; + } + scan_end1 = _win[scan + best_len - 1]; + scan_end = _win[scan + best_len]; + } + } while ((cur_match = prev[cur_match & wmask]) > limit && --chain_length !== 0); + + if (best_len <= s.lookahead) { + return best_len; + } + return s.lookahead; +} + + +/* =========================================================================== + * Fill the window when the lookahead becomes insufficient. + * Updates strstart and lookahead. + * + * IN assertion: lookahead < MIN_LOOKAHEAD + * OUT assertions: strstart <= window_size-MIN_LOOKAHEAD + * At least one byte has been read, or avail_in == 0; reads are + * performed for at least two bytes (required for the zip translate_eol + * option -- not supported here). + */ +function fill_window(s) { + var _w_size = s.w_size; + var p, n, m, more, str; + + //Assert(s->lookahead < MIN_LOOKAHEAD, "already enough lookahead"); + + do { + more = s.window_size - s.lookahead - s.strstart; + + // JS ints have 32 bit, block below not needed + /* Deal with !@#$% 64K limit: */ + //if (sizeof(int) <= 2) { + // if (more == 0 && s->strstart == 0 && s->lookahead == 0) { + // more = wsize; + // + // } else if (more == (unsigned)(-1)) { + // /* Very unlikely, but possible on 16 bit machine if + // * strstart == 0 && lookahead == 1 (input done a byte at time) + // */ + // more--; + // } + //} + + + /* If the window is almost full and there is insufficient lookahead, + * move the upper half to the lower one to make room in the upper half. + */ + if (s.strstart >= _w_size + (_w_size - MIN_LOOKAHEAD)) { + + utils.arraySet(s.window, s.window, _w_size, _w_size, 0); + s.match_start -= _w_size; + s.strstart -= _w_size; + /* we now have strstart >= MAX_DIST */ + s.block_start -= _w_size; + + /* Slide the hash table (could be avoided with 32 bit values + at the expense of memory usage). We slide even when level == 0 + to keep the hash table consistent if we switch back to level > 0 + later. (Using level 0 permanently is not an optimal usage of + zlib, so we don't care about this pathological case.) + */ + + n = s.hash_size; + p = n; + do { + m = s.head[--p]; + s.head[p] = (m >= _w_size ? m - _w_size : 0); + } while (--n); + + n = _w_size; + p = n; + do { + m = s.prev[--p]; + s.prev[p] = (m >= _w_size ? m - _w_size : 0); + /* If n is not on any hash chain, prev[n] is garbage but + * its value will never be used. + */ + } while (--n); + + more += _w_size; + } + if (s.strm.avail_in === 0) { + break; + } + + /* If there was no sliding: + * strstart <= WSIZE+MAX_DIST-1 && lookahead <= MIN_LOOKAHEAD - 1 && + * more == window_size - lookahead - strstart + * => more >= window_size - (MIN_LOOKAHEAD-1 + WSIZE + MAX_DIST-1) + * => more >= window_size - 2*WSIZE + 2 + * In the BIG_MEM or MMAP case (not yet supported), + * window_size == input_size + MIN_LOOKAHEAD && + * strstart + s->lookahead <= input_size => more >= MIN_LOOKAHEAD. + * Otherwise, window_size == 2*WSIZE so more >= 2. + * If there was sliding, more >= WSIZE. So in all cases, more >= 2. + */ + //Assert(more >= 2, "more < 2"); + n = read_buf(s.strm, s.window, s.strstart + s.lookahead, more); + s.lookahead += n; + + /* Initialize the hash value now that we have some input: */ + if (s.lookahead + s.insert >= MIN_MATCH) { + str = s.strstart - s.insert; + s.ins_h = s.window[str]; + + /* UPDATE_HASH(s, s->ins_h, s->window[str + 1]); */ + s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[str + 1]) & s.hash_mask; +//#if MIN_MATCH != 3 +// Call update_hash() MIN_MATCH-3 more times +//#endif + while (s.insert) { + /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */ + s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[str + MIN_MATCH-1]) & s.hash_mask; + + s.prev[str & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = str; + str++; + s.insert--; + if (s.lookahead + s.insert < MIN_MATCH) { + break; + } + } + } + /* If the whole input has less than MIN_MATCH bytes, ins_h is garbage, + * but this is not important since only literal bytes will be emitted. + */ + + } while (s.lookahead < MIN_LOOKAHEAD && s.strm.avail_in !== 0); + + /* If the WIN_INIT bytes after the end of the current data have never been + * written, then zero those bytes in order to avoid memory check reports of + * the use of uninitialized (or uninitialised as Julian writes) bytes by + * the longest match routines. Update the high water mark for the next + * time through here. WIN_INIT is set to MAX_MATCH since the longest match + * routines allow scanning to strstart + MAX_MATCH, ignoring lookahead. + */ +// if (s.high_water < s.window_size) { +// var curr = s.strstart + s.lookahead; +// var init = 0; +// +// if (s.high_water < curr) { +// /* Previous high water mark below current data -- zero WIN_INIT +// * bytes or up to end of window, whichever is less. +// */ +// init = s.window_size - curr; +// if (init > WIN_INIT) +// init = WIN_INIT; +// zmemzero(s->window + curr, (unsigned)init); +// s->high_water = curr + init; +// } +// else if (s->high_water < (ulg)curr + WIN_INIT) { +// /* High water mark at or above current data, but below current data +// * plus WIN_INIT -- zero out to current data plus WIN_INIT, or up +// * to end of window, whichever is less. +// */ +// init = (ulg)curr + WIN_INIT - s->high_water; +// if (init > s->window_size - s->high_water) +// init = s->window_size - s->high_water; +// zmemzero(s->window + s->high_water, (unsigned)init); +// s->high_water += init; +// } +// } +// +// Assert((ulg)s->strstart <= s->window_size - MIN_LOOKAHEAD, +// "not enough room for search"); +} + +/* =========================================================================== + * Copy without compression as much as possible from the input stream, return + * the current block state. + * This function does not insert new strings in the dictionary since + * uncompressible data is probably not useful. This function is used + * only for the level=0 compression option. + * NOTE: this function should be optimized to avoid extra copying from + * window to pending_buf. + */ +function deflate_stored(s, flush) { + /* Stored blocks are limited to 0xffff bytes, pending_buf is limited + * to pending_buf_size, and each stored block has a 5 byte header: + */ + var max_block_size = 0xffff; + + if (max_block_size > s.pending_buf_size - 5) { + max_block_size = s.pending_buf_size - 5; + } + + /* Copy as much as possible from input to output: */ + for (;;) { + /* Fill the window as much as possible: */ + if (s.lookahead <= 1) { + + //Assert(s->strstart < s->w_size+MAX_DIST(s) || + // s->block_start >= (long)s->w_size, "slide too late"); +// if (!(s.strstart < s.w_size + (s.w_size - MIN_LOOKAHEAD) || +// s.block_start >= s.w_size)) { +// throw new Error("slide too late"); +// } + + fill_window(s); + if (s.lookahead === 0 && flush === Z_NO_FLUSH) { + return BS_NEED_MORE; + } + + if (s.lookahead === 0) { + break; + } + /* flush the current block */ + } + //Assert(s->block_start >= 0L, "block gone"); +// if (s.block_start < 0) throw new Error("block gone"); + + s.strstart += s.lookahead; + s.lookahead = 0; + + /* Emit a stored block if pending_buf will be full: */ + var max_start = s.block_start + max_block_size; + + if (s.strstart === 0 || s.strstart >= max_start) { + /* strstart == 0 is possible when wraparound on 16-bit machine */ + s.lookahead = s.strstart - max_start; + s.strstart = max_start; + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + + + } + /* Flush if we may have to slide, otherwise block_start may become + * negative and the data will be gone: + */ + if (s.strstart - s.block_start >= (s.w_size - MIN_LOOKAHEAD)) { + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + } + } + + s.insert = 0; + + if (flush === Z_FINISH) { + /*** FLUSH_BLOCK(s, 1); ***/ + flush_block_only(s, true); + if (s.strm.avail_out === 0) { + return BS_FINISH_STARTED; + } + /***/ + return BS_FINISH_DONE; + } + + if (s.strstart > s.block_start) { + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + } + + return BS_NEED_MORE; +} + +/* =========================================================================== + * Compress as much as possible from the input stream, return the current + * block state. + * This function does not perform lazy evaluation of matches and inserts + * new strings in the dictionary only for unmatched strings or for short + * matches. It is used only for the fast compression options. + */ +function deflate_fast(s, flush) { + var hash_head; /* head of the hash chain */ + var bflush; /* set if current block must be flushed */ + + for (;;) { + /* Make sure that we always have enough lookahead, except + * at the end of the input file. We need MAX_MATCH bytes + * for the next match, plus MIN_MATCH bytes to insert the + * string following the next match. + */ + if (s.lookahead < MIN_LOOKAHEAD) { + fill_window(s); + if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH) { + return BS_NEED_MORE; + } + if (s.lookahead === 0) { + break; /* flush the current block */ + } + } + + /* Insert the string window[strstart .. strstart+2] in the + * dictionary, and set hash_head to the head of the hash chain: + */ + hash_head = 0/*NIL*/; + if (s.lookahead >= MIN_MATCH) { + /*** INSERT_STRING(s, s.strstart, hash_head); ***/ + s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; + hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = s.strstart; + /***/ + } + + /* Find the longest match, discarding those <= prev_length. + * At this point we have always match_length < MIN_MATCH + */ + if (hash_head !== 0/*NIL*/ && ((s.strstart - hash_head) <= (s.w_size - MIN_LOOKAHEAD))) { + /* To simplify the code, we prevent matches with the string + * of window index 0 (in particular we have to avoid a match + * of the string with itself at the start of the input file). + */ + s.match_length = longest_match(s, hash_head); + /* longest_match() sets match_start */ + } + if (s.match_length >= MIN_MATCH) { + // check_match(s, s.strstart, s.match_start, s.match_length); // for debug only + + /*** _tr_tally_dist(s, s.strstart - s.match_start, + s.match_length - MIN_MATCH, bflush); ***/ + bflush = trees._tr_tally(s, s.strstart - s.match_start, s.match_length - MIN_MATCH); + + s.lookahead -= s.match_length; + + /* Insert new strings in the hash table only if the match length + * is not too large. This saves time but degrades compression. + */ + if (s.match_length <= s.max_lazy_match/*max_insert_length*/ && s.lookahead >= MIN_MATCH) { + s.match_length--; /* string at strstart already in table */ + do { + s.strstart++; + /*** INSERT_STRING(s, s.strstart, hash_head); ***/ + s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; + hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = s.strstart; + /***/ + /* strstart never exceeds WSIZE-MAX_MATCH, so there are + * always MIN_MATCH bytes ahead. + */ + } while (--s.match_length !== 0); + s.strstart++; + } else + { + s.strstart += s.match_length; + s.match_length = 0; + s.ins_h = s.window[s.strstart]; + /* UPDATE_HASH(s, s.ins_h, s.window[s.strstart+1]); */ + s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[s.strstart + 1]) & s.hash_mask; + +//#if MIN_MATCH != 3 +// Call UPDATE_HASH() MIN_MATCH-3 more times +//#endif + /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not + * matter since it will be recomputed at next deflate call. + */ + } + } else { + /* No match, output a literal byte */ + //Tracevv((stderr,"%c", s.window[s.strstart])); + /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/ + bflush = trees._tr_tally(s, 0, s.window[s.strstart]); + + s.lookahead--; + s.strstart++; + } + if (bflush) { + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + } + } + s.insert = ((s.strstart < (MIN_MATCH-1)) ? s.strstart : MIN_MATCH-1); + if (flush === Z_FINISH) { + /*** FLUSH_BLOCK(s, 1); ***/ + flush_block_only(s, true); + if (s.strm.avail_out === 0) { + return BS_FINISH_STARTED; + } + /***/ + return BS_FINISH_DONE; + } + if (s.last_lit) { + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + } + return BS_BLOCK_DONE; +} + +/* =========================================================================== + * Same as above, but achieves better compression. We use a lazy + * evaluation for matches: a match is finally adopted only if there is + * no better match at the next window position. + */ +function deflate_slow(s, flush) { + var hash_head; /* head of hash chain */ + var bflush; /* set if current block must be flushed */ + + var max_insert; + + /* Process the input block. */ + for (;;) { + /* Make sure that we always have enough lookahead, except + * at the end of the input file. We need MAX_MATCH bytes + * for the next match, plus MIN_MATCH bytes to insert the + * string following the next match. + */ + if (s.lookahead < MIN_LOOKAHEAD) { + fill_window(s); + if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH) { + return BS_NEED_MORE; + } + if (s.lookahead === 0) { break; } /* flush the current block */ + } + + /* Insert the string window[strstart .. strstart+2] in the + * dictionary, and set hash_head to the head of the hash chain: + */ + hash_head = 0/*NIL*/; + if (s.lookahead >= MIN_MATCH) { + /*** INSERT_STRING(s, s.strstart, hash_head); ***/ + s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; + hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = s.strstart; + /***/ + } + + /* Find the longest match, discarding those <= prev_length. + */ + s.prev_length = s.match_length; + s.prev_match = s.match_start; + s.match_length = MIN_MATCH-1; + + if (hash_head !== 0/*NIL*/ && s.prev_length < s.max_lazy_match && + s.strstart - hash_head <= (s.w_size-MIN_LOOKAHEAD)/*MAX_DIST(s)*/) { + /* To simplify the code, we prevent matches with the string + * of window index 0 (in particular we have to avoid a match + * of the string with itself at the start of the input file). + */ + s.match_length = longest_match(s, hash_head); + /* longest_match() sets match_start */ + + if (s.match_length <= 5 && + (s.strategy === Z_FILTERED || (s.match_length === MIN_MATCH && s.strstart - s.match_start > 4096/*TOO_FAR*/))) { + + /* If prev_match is also MIN_MATCH, match_start is garbage + * but we will ignore the current match anyway. + */ + s.match_length = MIN_MATCH-1; + } + } + /* If there was a match at the previous step and the current + * match is not better, output the previous match: + */ + if (s.prev_length >= MIN_MATCH && s.match_length <= s.prev_length) { + max_insert = s.strstart + s.lookahead - MIN_MATCH; + /* Do not insert strings in hash table beyond this. */ + + //check_match(s, s.strstart-1, s.prev_match, s.prev_length); + + /***_tr_tally_dist(s, s.strstart - 1 - s.prev_match, + s.prev_length - MIN_MATCH, bflush);***/ + bflush = trees._tr_tally(s, s.strstart - 1- s.prev_match, s.prev_length - MIN_MATCH); + /* Insert in hash table all strings up to the end of the match. + * strstart-1 and strstart are already inserted. If there is not + * enough lookahead, the last two strings are not inserted in + * the hash table. + */ + s.lookahead -= s.prev_length-1; + s.prev_length -= 2; + do { + if (++s.strstart <= max_insert) { + /*** INSERT_STRING(s, s.strstart, hash_head); ***/ + s.ins_h = ((s.ins_h << s.hash_shift) ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; + hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = s.strstart; + /***/ + } + } while (--s.prev_length !== 0); + s.match_available = 0; + s.match_length = MIN_MATCH-1; + s.strstart++; + + if (bflush) { + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + } + + } else if (s.match_available) { + /* If there was no match at the previous position, output a + * single literal. If there was a match but the current match + * is longer, truncate the previous match to a single literal. + */ + //Tracevv((stderr,"%c", s->window[s->strstart-1])); + /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/ + bflush = trees._tr_tally(s, 0, s.window[s.strstart-1]); + + if (bflush) { + /*** FLUSH_BLOCK_ONLY(s, 0) ***/ + flush_block_only(s, false); + /***/ + } + s.strstart++; + s.lookahead--; + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } else { + /* There is no previous match to compare with, wait for + * the next step to decide. + */ + s.match_available = 1; + s.strstart++; + s.lookahead--; + } + } + //Assert (flush != Z_NO_FLUSH, "no flush?"); + if (s.match_available) { + //Tracevv((stderr,"%c", s->window[s->strstart-1])); + /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/ + bflush = trees._tr_tally(s, 0, s.window[s.strstart-1]); + + s.match_available = 0; + } + s.insert = s.strstart < MIN_MATCH-1 ? s.strstart : MIN_MATCH-1; + if (flush === Z_FINISH) { + /*** FLUSH_BLOCK(s, 1); ***/ + flush_block_only(s, true); + if (s.strm.avail_out === 0) { + return BS_FINISH_STARTED; + } + /***/ + return BS_FINISH_DONE; + } + if (s.last_lit) { + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + } + + return BS_BLOCK_DONE; +} + + +/* =========================================================================== + * For Z_RLE, simply look for runs of bytes, generate matches only of distance + * one. Do not maintain a hash table. (It will be regenerated if this run of + * deflate switches away from Z_RLE.) + */ +function deflate_rle(s, flush) { + var bflush; /* set if current block must be flushed */ + var prev; /* byte at distance one to match */ + var scan, strend; /* scan goes up to strend for length of run */ + + var _win = s.window; + + for (;;) { + /* Make sure that we always have enough lookahead, except + * at the end of the input file. We need MAX_MATCH bytes + * for the longest run, plus one for the unrolled loop. + */ + if (s.lookahead <= MAX_MATCH) { + fill_window(s); + if (s.lookahead <= MAX_MATCH && flush === Z_NO_FLUSH) { + return BS_NEED_MORE; + } + if (s.lookahead === 0) { break; } /* flush the current block */ + } + + /* See how many times the previous byte repeats */ + s.match_length = 0; + if (s.lookahead >= MIN_MATCH && s.strstart > 0) { + scan = s.strstart - 1; + prev = _win[scan]; + if (prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan]) { + strend = s.strstart + MAX_MATCH; + do { + /*jshint noempty:false*/ + } while (prev === _win[++scan] && prev === _win[++scan] && + prev === _win[++scan] && prev === _win[++scan] && + prev === _win[++scan] && prev === _win[++scan] && + prev === _win[++scan] && prev === _win[++scan] && + scan < strend); + s.match_length = MAX_MATCH - (strend - scan); + if (s.match_length > s.lookahead) { + s.match_length = s.lookahead; + } + } + //Assert(scan <= s->window+(uInt)(s->window_size-1), "wild scan"); + } + + /* Emit match if have run of MIN_MATCH or longer, else emit literal */ + if (s.match_length >= MIN_MATCH) { + //check_match(s, s.strstart, s.strstart - 1, s.match_length); + + /*** _tr_tally_dist(s, 1, s.match_length - MIN_MATCH, bflush); ***/ + bflush = trees._tr_tally(s, 1, s.match_length - MIN_MATCH); + + s.lookahead -= s.match_length; + s.strstart += s.match_length; + s.match_length = 0; + } else { + /* No match, output a literal byte */ + //Tracevv((stderr,"%c", s->window[s->strstart])); + /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/ + bflush = trees._tr_tally(s, 0, s.window[s.strstart]); + + s.lookahead--; + s.strstart++; + } + if (bflush) { + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + } + } + s.insert = 0; + if (flush === Z_FINISH) { + /*** FLUSH_BLOCK(s, 1); ***/ + flush_block_only(s, true); + if (s.strm.avail_out === 0) { + return BS_FINISH_STARTED; + } + /***/ + return BS_FINISH_DONE; + } + if (s.last_lit) { + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + } + return BS_BLOCK_DONE; +} + +/* =========================================================================== + * For Z_HUFFMAN_ONLY, do not look for matches. Do not maintain a hash table. + * (It will be regenerated if this run of deflate switches away from Huffman.) + */ +function deflate_huff(s, flush) { + var bflush; /* set if current block must be flushed */ + + for (;;) { + /* Make sure that we have a literal to write. */ + if (s.lookahead === 0) { + fill_window(s); + if (s.lookahead === 0) { + if (flush === Z_NO_FLUSH) { + return BS_NEED_MORE; + } + break; /* flush the current block */ + } + } + + /* Output a literal byte */ + s.match_length = 0; + //Tracevv((stderr,"%c", s->window[s->strstart])); + /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/ + bflush = trees._tr_tally(s, 0, s.window[s.strstart]); + s.lookahead--; + s.strstart++; + if (bflush) { + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + } + } + s.insert = 0; + if (flush === Z_FINISH) { + /*** FLUSH_BLOCK(s, 1); ***/ + flush_block_only(s, true); + if (s.strm.avail_out === 0) { + return BS_FINISH_STARTED; + } + /***/ + return BS_FINISH_DONE; + } + if (s.last_lit) { + /*** FLUSH_BLOCK(s, 0); ***/ + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + /***/ + } + return BS_BLOCK_DONE; +} + +/* Values for max_lazy_match, good_match and max_chain_length, depending on + * the desired pack level (0..9). The values given below have been tuned to + * exclude worst case performance for pathological files. Better values may be + * found for specific files. + */ +var Config = function (good_length, max_lazy, nice_length, max_chain, func) { + this.good_length = good_length; + this.max_lazy = max_lazy; + this.nice_length = nice_length; + this.max_chain = max_chain; + this.func = func; +}; + +var configuration_table; + +configuration_table = [ + /* good lazy nice chain */ + new Config(0, 0, 0, 0, deflate_stored), /* 0 store only */ + new Config(4, 4, 8, 4, deflate_fast), /* 1 max speed, no lazy matches */ + new Config(4, 5, 16, 8, deflate_fast), /* 2 */ + new Config(4, 6, 32, 32, deflate_fast), /* 3 */ + + new Config(4, 4, 16, 16, deflate_slow), /* 4 lazy matches */ + new Config(8, 16, 32, 32, deflate_slow), /* 5 */ + new Config(8, 16, 128, 128, deflate_slow), /* 6 */ + new Config(8, 32, 128, 256, deflate_slow), /* 7 */ + new Config(32, 128, 258, 1024, deflate_slow), /* 8 */ + new Config(32, 258, 258, 4096, deflate_slow) /* 9 max compression */ +]; + + +/* =========================================================================== + * Initialize the "longest match" routines for a new zlib stream + */ +function lm_init(s) { + s.window_size = 2 * s.w_size; + + /*** CLEAR_HASH(s); ***/ + zero(s.head); // Fill with NIL (= 0); + + /* Set the default configuration parameters: + */ + s.max_lazy_match = configuration_table[s.level].max_lazy; + s.good_match = configuration_table[s.level].good_length; + s.nice_match = configuration_table[s.level].nice_length; + s.max_chain_length = configuration_table[s.level].max_chain; + + s.strstart = 0; + s.block_start = 0; + s.lookahead = 0; + s.insert = 0; + s.match_length = s.prev_length = MIN_MATCH - 1; + s.match_available = 0; + s.ins_h = 0; +} + + +function DeflateState() { + this.strm = null; /* pointer back to this zlib stream */ + this.status = 0; /* as the name implies */ + this.pending_buf = null; /* output still pending */ + this.pending_buf_size = 0; /* size of pending_buf */ + this.pending_out = 0; /* next pending byte to output to the stream */ + this.pending = 0; /* nb of bytes in the pending buffer */ + this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */ + this.gzhead = null; /* gzip header information to write */ + this.gzindex = 0; /* where in extra, name, or comment */ + this.method = Z_DEFLATED; /* can only be DEFLATED */ + this.last_flush = -1; /* value of flush param for previous deflate call */ + + this.w_size = 0; /* LZ77 window size (32K by default) */ + this.w_bits = 0; /* log2(w_size) (8..16) */ + this.w_mask = 0; /* w_size - 1 */ + + this.window = null; + /* Sliding window. Input bytes are read into the second half of the window, + * and move to the first half later to keep a dictionary of at least wSize + * bytes. With this organization, matches are limited to a distance of + * wSize-MAX_MATCH bytes, but this ensures that IO is always + * performed with a length multiple of the block size. + */ + + this.window_size = 0; + /* Actual size of window: 2*wSize, except when the user input buffer + * is directly used as sliding window. + */ + + this.prev = null; + /* Link to older string with same hash index. To limit the size of this + * array to 64K, this link is maintained only for the last 32K strings. + * An index in this array is thus a window index modulo 32K. + */ + + this.head = null; /* Heads of the hash chains or NIL. */ + + this.ins_h = 0; /* hash index of string to be inserted */ + this.hash_size = 0; /* number of elements in hash table */ + this.hash_bits = 0; /* log2(hash_size) */ + this.hash_mask = 0; /* hash_size-1 */ + + this.hash_shift = 0; + /* Number of bits by which ins_h must be shifted at each input + * step. It must be such that after MIN_MATCH steps, the oldest + * byte no longer takes part in the hash key, that is: + * hash_shift * MIN_MATCH >= hash_bits + */ + + this.block_start = 0; + /* Window position at the beginning of the current output block. Gets + * negative when the window is moved backwards. + */ + + this.match_length = 0; /* length of best match */ + this.prev_match = 0; /* previous match */ + this.match_available = 0; /* set if previous match exists */ + this.strstart = 0; /* start of string to insert */ + this.match_start = 0; /* start of matching string */ + this.lookahead = 0; /* number of valid bytes ahead in window */ + + this.prev_length = 0; + /* Length of the best match at previous step. Matches not greater than this + * are discarded. This is used in the lazy match evaluation. + */ + + this.max_chain_length = 0; + /* To speed up deflation, hash chains are never searched beyond this + * length. A higher limit improves compression ratio but degrades the + * speed. + */ + + this.max_lazy_match = 0; + /* Attempt to find a better match only when the current match is strictly + * smaller than this value. This mechanism is used only for compression + * levels >= 4. + */ + // That's alias to max_lazy_match, don't use directly + //this.max_insert_length = 0; + /* Insert new strings in the hash table only if the match length is not + * greater than this length. This saves time but degrades compression. + * max_insert_length is used only for compression levels <= 3. + */ + + this.level = 0; /* compression level (1..9) */ + this.strategy = 0; /* favor or force Huffman coding*/ + + this.good_match = 0; + /* Use a faster search when the previous match is longer than this */ + + this.nice_match = 0; /* Stop searching when current match exceeds this */ + + /* used by trees.c: */ + + /* Didn't use ct_data typedef below to suppress compiler warning */ + + // struct ct_data_s dyn_ltree[HEAP_SIZE]; /* literal and length tree */ + // struct ct_data_s dyn_dtree[2*D_CODES+1]; /* distance tree */ + // struct ct_data_s bl_tree[2*BL_CODES+1]; /* Huffman tree for bit lengths */ + + // Use flat array of DOUBLE size, with interleaved fata, + // because JS does not support effective + this.dyn_ltree = new utils.Buf16(HEAP_SIZE * 2); + this.dyn_dtree = new utils.Buf16((2*D_CODES+1) * 2); + this.bl_tree = new utils.Buf16((2*BL_CODES+1) * 2); + zero(this.dyn_ltree); + zero(this.dyn_dtree); + zero(this.bl_tree); + + this.l_desc = null; /* desc. for literal tree */ + this.d_desc = null; /* desc. for distance tree */ + this.bl_desc = null; /* desc. for bit length tree */ + + //ush bl_count[MAX_BITS+1]; + this.bl_count = new utils.Buf16(MAX_BITS+1); + /* number of codes at each bit length for an optimal tree */ + + //int heap[2*L_CODES+1]; /* heap used to build the Huffman trees */ + this.heap = new utils.Buf16(2*L_CODES+1); /* heap used to build the Huffman trees */ + zero(this.heap); + + this.heap_len = 0; /* number of elements in the heap */ + this.heap_max = 0; /* element of largest frequency */ + /* The sons of heap[n] are heap[2*n] and heap[2*n+1]. heap[0] is not used. + * The same heap array is used to build all trees. + */ + + this.depth = new utils.Buf16(2*L_CODES+1); //uch depth[2*L_CODES+1]; + zero(this.depth); + /* Depth of each subtree used as tie breaker for trees of equal frequency + */ + + this.l_buf = 0; /* buffer index for literals or lengths */ + + this.lit_bufsize = 0; + /* Size of match buffer for literals/lengths. There are 4 reasons for + * limiting lit_bufsize to 64K: + * - frequencies can be kept in 16 bit counters + * - if compression is not successful for the first block, all input + * data is still in the window so we can still emit a stored block even + * when input comes from standard input. (This can also be done for + * all blocks if lit_bufsize is not greater than 32K.) + * - if compression is not successful for a file smaller than 64K, we can + * even emit a stored file instead of a stored block (saving 5 bytes). + * This is applicable only for zip (not gzip or zlib). + * - creating new Huffman trees less frequently may not provide fast + * adaptation to changes in the input data statistics. (Take for + * example a binary file with poorly compressible code followed by + * a highly compressible string table.) Smaller buffer sizes give + * fast adaptation but have of course the overhead of transmitting + * trees more frequently. + * - I can't count above 4 + */ + + this.last_lit = 0; /* running index in l_buf */ + + this.d_buf = 0; + /* Buffer index for distances. To simplify the code, d_buf and l_buf have + * the same number of elements. To use different lengths, an extra flag + * array would be necessary. + */ + + this.opt_len = 0; /* bit length of current block with optimal trees */ + this.static_len = 0; /* bit length of current block with static trees */ + this.matches = 0; /* number of string matches in current block */ + this.insert = 0; /* bytes at end of window left to insert */ + + + this.bi_buf = 0; + /* Output buffer. bits are inserted starting at the bottom (least + * significant bits). + */ + this.bi_valid = 0; + /* Number of valid bits in bi_buf. All bits above the last valid bit + * are always zero. + */ + + // Used for window memory init. We safely ignore it for JS. That makes + // sense only for pointers and memory check tools. + //this.high_water = 0; + /* High water mark offset in window for initialized bytes -- bytes above + * this are set to zero in order to avoid memory check warnings when + * longest match routines access bytes past the input. This is then + * updated to the new high water mark. + */ +} + + +function deflateResetKeep(strm) { + var s; + + if (!strm || !strm.state) { + return err(strm, Z_STREAM_ERROR); + } + + strm.total_in = strm.total_out = 0; + strm.data_type = Z_UNKNOWN; + + s = strm.state; + s.pending = 0; + s.pending_out = 0; + + if (s.wrap < 0) { + s.wrap = -s.wrap; + /* was made negative by deflate(..., Z_FINISH); */ + } + s.status = (s.wrap ? INIT_STATE : BUSY_STATE); + strm.adler = (s.wrap === 2) ? + 0 // crc32(0, Z_NULL, 0) + : + 1; // adler32(0, Z_NULL, 0) + s.last_flush = Z_NO_FLUSH; + trees._tr_init(s); + return Z_OK; +} + + +function deflateReset(strm) { + var ret = deflateResetKeep(strm); + if (ret === Z_OK) { + lm_init(strm.state); + } + return ret; +} + + +function deflateSetHeader(strm, head) { + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + if (strm.state.wrap !== 2) { return Z_STREAM_ERROR; } + strm.state.gzhead = head; + return Z_OK; +} + + +function deflateInit2(strm, level, method, windowBits, memLevel, strategy) { + if (!strm) { // === Z_NULL + return Z_STREAM_ERROR; + } + var wrap = 1; + + if (level === Z_DEFAULT_COMPRESSION) { + level = 6; + } + + if (windowBits < 0) { /* suppress zlib wrapper */ + wrap = 0; + windowBits = -windowBits; + } + + else if (windowBits > 15) { + wrap = 2; /* write gzip wrapper instead */ + windowBits -= 16; + } + + + if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method !== Z_DEFLATED || + windowBits < 8 || windowBits > 15 || level < 0 || level > 9 || + strategy < 0 || strategy > Z_FIXED) { + return err(strm, Z_STREAM_ERROR); + } + + + if (windowBits === 8) { + windowBits = 9; + } + /* until 256-byte window bug fixed */ + + var s = new DeflateState(); + + strm.state = s; + s.strm = strm; + + s.wrap = wrap; + s.gzhead = null; + s.w_bits = windowBits; + s.w_size = 1 << s.w_bits; + s.w_mask = s.w_size - 1; + + s.hash_bits = memLevel + 7; + s.hash_size = 1 << s.hash_bits; + s.hash_mask = s.hash_size - 1; + s.hash_shift = ~~((s.hash_bits + MIN_MATCH - 1) / MIN_MATCH); + + s.window = new utils.Buf8(s.w_size * 2); + s.head = new utils.Buf16(s.hash_size); + s.prev = new utils.Buf16(s.w_size); + + // Don't need mem init magic for JS. + //s.high_water = 0; /* nothing written to s->window yet */ + + s.lit_bufsize = 1 << (memLevel + 6); /* 16K elements by default */ + + s.pending_buf_size = s.lit_bufsize * 4; + s.pending_buf = new utils.Buf8(s.pending_buf_size); + + s.d_buf = s.lit_bufsize >> 1; + s.l_buf = (1 + 2) * s.lit_bufsize; + + s.level = level; + s.strategy = strategy; + s.method = method; + + return deflateReset(strm); +} + +function deflateInit(strm, level) { + return deflateInit2(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY); +} + + +function deflate(strm, flush) { + var old_flush, s; + var beg, val; // for gzip header write only + + if (!strm || !strm.state || + flush > Z_BLOCK || flush < 0) { + return strm ? err(strm, Z_STREAM_ERROR) : Z_STREAM_ERROR; + } + + s = strm.state; + + if (!strm.output || + (!strm.input && strm.avail_in !== 0) || + (s.status === FINISH_STATE && flush !== Z_FINISH)) { + return err(strm, (strm.avail_out === 0) ? Z_BUF_ERROR : Z_STREAM_ERROR); + } + + s.strm = strm; /* just in case */ + old_flush = s.last_flush; + s.last_flush = flush; + + /* Write the header */ + if (s.status === INIT_STATE) { + + if (s.wrap === 2) { // GZIP header + strm.adler = 0; //crc32(0L, Z_NULL, 0); + put_byte(s, 31); + put_byte(s, 139); + put_byte(s, 8); + if (!s.gzhead) { // s->gzhead == Z_NULL + put_byte(s, 0); + put_byte(s, 0); + put_byte(s, 0); + put_byte(s, 0); + put_byte(s, 0); + put_byte(s, s.level === 9 ? 2 : + (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ? + 4 : 0)); + put_byte(s, OS_CODE); + s.status = BUSY_STATE; + } + else { + put_byte(s, (s.gzhead.text ? 1 : 0) + + (s.gzhead.hcrc ? 2 : 0) + + (!s.gzhead.extra ? 0 : 4) + + (!s.gzhead.name ? 0 : 8) + + (!s.gzhead.comment ? 0 : 16) + ); + put_byte(s, s.gzhead.time & 0xff); + put_byte(s, (s.gzhead.time >> 8) & 0xff); + put_byte(s, (s.gzhead.time >> 16) & 0xff); + put_byte(s, (s.gzhead.time >> 24) & 0xff); + put_byte(s, s.level === 9 ? 2 : + (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ? + 4 : 0)); + put_byte(s, s.gzhead.os & 0xff); + if (s.gzhead.extra && s.gzhead.extra.length) { + put_byte(s, s.gzhead.extra.length & 0xff); + put_byte(s, (s.gzhead.extra.length >> 8) & 0xff); + } + if (s.gzhead.hcrc) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending, 0); + } + s.gzindex = 0; + s.status = EXTRA_STATE; + } + } + else // DEFLATE header + { + var header = (Z_DEFLATED + ((s.w_bits - 8) << 4)) << 8; + var level_flags = -1; + + if (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2) { + level_flags = 0; + } else if (s.level < 6) { + level_flags = 1; + } else if (s.level === 6) { + level_flags = 2; + } else { + level_flags = 3; + } + header |= (level_flags << 6); + if (s.strstart !== 0) { header |= PRESET_DICT; } + header += 31 - (header % 31); + + s.status = BUSY_STATE; + putShortMSB(s, header); + + /* Save the adler32 of the preset dictionary: */ + if (s.strstart !== 0) { + putShortMSB(s, strm.adler >>> 16); + putShortMSB(s, strm.adler & 0xffff); + } + strm.adler = 1; // adler32(0L, Z_NULL, 0); + } + } + +//#ifdef GZIP + if (s.status === EXTRA_STATE) { + if (s.gzhead.extra/* != Z_NULL*/) { + beg = s.pending; /* start of bytes to update crc */ + + while (s.gzindex < (s.gzhead.extra.length & 0xffff)) { + if (s.pending === s.pending_buf_size) { + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + flush_pending(strm); + beg = s.pending; + if (s.pending === s.pending_buf_size) { + break; + } + } + put_byte(s, s.gzhead.extra[s.gzindex] & 0xff); + s.gzindex++; + } + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + if (s.gzindex === s.gzhead.extra.length) { + s.gzindex = 0; + s.status = NAME_STATE; + } + } + else { + s.status = NAME_STATE; + } + } + if (s.status === NAME_STATE) { + if (s.gzhead.name/* != Z_NULL*/) { + beg = s.pending; /* start of bytes to update crc */ + //int val; + + do { + if (s.pending === s.pending_buf_size) { + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + flush_pending(strm); + beg = s.pending; + if (s.pending === s.pending_buf_size) { + val = 1; + break; + } + } + // JS specific: little magic to add zero terminator to end of string + if (s.gzindex < s.gzhead.name.length) { + val = s.gzhead.name.charCodeAt(s.gzindex++) & 0xff; + } else { + val = 0; + } + put_byte(s, val); + } while (val !== 0); + + if (s.gzhead.hcrc && s.pending > beg){ + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + if (val === 0) { + s.gzindex = 0; + s.status = COMMENT_STATE; + } + } + else { + s.status = COMMENT_STATE; + } + } + if (s.status === COMMENT_STATE) { + if (s.gzhead.comment/* != Z_NULL*/) { + beg = s.pending; /* start of bytes to update crc */ + //int val; + + do { + if (s.pending === s.pending_buf_size) { + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + flush_pending(strm); + beg = s.pending; + if (s.pending === s.pending_buf_size) { + val = 1; + break; + } + } + // JS specific: little magic to add zero terminator to end of string + if (s.gzindex < s.gzhead.comment.length) { + val = s.gzhead.comment.charCodeAt(s.gzindex++) & 0xff; + } else { + val = 0; + } + put_byte(s, val); + } while (val !== 0); + + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + if (val === 0) { + s.status = HCRC_STATE; + } + } + else { + s.status = HCRC_STATE; + } + } + if (s.status === HCRC_STATE) { + if (s.gzhead.hcrc) { + if (s.pending + 2 > s.pending_buf_size) { + flush_pending(strm); + } + if (s.pending + 2 <= s.pending_buf_size) { + put_byte(s, strm.adler & 0xff); + put_byte(s, (strm.adler >> 8) & 0xff); + strm.adler = 0; //crc32(0L, Z_NULL, 0); + s.status = BUSY_STATE; + } + } + else { + s.status = BUSY_STATE; + } + } +//#endif + + /* Flush as much pending output as possible */ + if (s.pending !== 0) { + flush_pending(strm); + if (strm.avail_out === 0) { + /* Since avail_out is 0, deflate will be called again with + * more output space, but possibly with both pending and + * avail_in equal to zero. There won't be anything to do, + * but this is not an error situation so make sure we + * return OK instead of BUF_ERROR at next call of deflate: + */ + s.last_flush = -1; + return Z_OK; + } + + /* Make sure there is something to do and avoid duplicate consecutive + * flushes. For repeated and useless calls with Z_FINISH, we keep + * returning Z_STREAM_END instead of Z_BUF_ERROR. + */ + } else if (strm.avail_in === 0 && rank(flush) <= rank(old_flush) && + flush !== Z_FINISH) { + return err(strm, Z_BUF_ERROR); + } + + /* User must not provide more input after the first FINISH: */ + if (s.status === FINISH_STATE && strm.avail_in !== 0) { + return err(strm, Z_BUF_ERROR); + } + + /* Start a new block or continue the current one. + */ + if (strm.avail_in !== 0 || s.lookahead !== 0 || + (flush !== Z_NO_FLUSH && s.status !== FINISH_STATE)) { + var bstate = (s.strategy === Z_HUFFMAN_ONLY) ? deflate_huff(s, flush) : + (s.strategy === Z_RLE ? deflate_rle(s, flush) : + configuration_table[s.level].func(s, flush)); + + if (bstate === BS_FINISH_STARTED || bstate === BS_FINISH_DONE) { + s.status = FINISH_STATE; + } + if (bstate === BS_NEED_MORE || bstate === BS_FINISH_STARTED) { + if (strm.avail_out === 0) { + s.last_flush = -1; + /* avoid BUF_ERROR next call, see above */ + } + return Z_OK; + /* If flush != Z_NO_FLUSH && avail_out == 0, the next call + * of deflate should use the same flush parameter to make sure + * that the flush is complete. So we don't have to output an + * empty block here, this will be done at next call. This also + * ensures that for a very small output buffer, we emit at most + * one empty block. + */ + } + if (bstate === BS_BLOCK_DONE) { + if (flush === Z_PARTIAL_FLUSH) { + trees._tr_align(s); + } + else if (flush !== Z_BLOCK) { /* FULL_FLUSH or SYNC_FLUSH */ + + trees._tr_stored_block(s, 0, 0, false); + /* For a full flush, this empty block will be recognized + * as a special marker by inflate_sync(). + */ + if (flush === Z_FULL_FLUSH) { + /*** CLEAR_HASH(s); ***/ /* forget history */ + zero(s.head); // Fill with NIL (= 0); + + if (s.lookahead === 0) { + s.strstart = 0; + s.block_start = 0; + s.insert = 0; + } + } + } + flush_pending(strm); + if (strm.avail_out === 0) { + s.last_flush = -1; /* avoid BUF_ERROR at next call, see above */ + return Z_OK; + } + } + } + //Assert(strm->avail_out > 0, "bug2"); + //if (strm.avail_out <= 0) { throw new Error("bug2");} + + if (flush !== Z_FINISH) { return Z_OK; } + if (s.wrap <= 0) { return Z_STREAM_END; } + + /* Write the trailer */ + if (s.wrap === 2) { + put_byte(s, strm.adler & 0xff); + put_byte(s, (strm.adler >> 8) & 0xff); + put_byte(s, (strm.adler >> 16) & 0xff); + put_byte(s, (strm.adler >> 24) & 0xff); + put_byte(s, strm.total_in & 0xff); + put_byte(s, (strm.total_in >> 8) & 0xff); + put_byte(s, (strm.total_in >> 16) & 0xff); + put_byte(s, (strm.total_in >> 24) & 0xff); + } + else + { + putShortMSB(s, strm.adler >>> 16); + putShortMSB(s, strm.adler & 0xffff); + } + + flush_pending(strm); + /* If avail_out is zero, the application will call deflate again + * to flush the rest. + */ + if (s.wrap > 0) { s.wrap = -s.wrap; } + /* write the trailer only once! */ + return s.pending !== 0 ? Z_OK : Z_STREAM_END; +} + +function deflateEnd(strm) { + var status; + + if (!strm/*== Z_NULL*/ || !strm.state/*== Z_NULL*/) { + return Z_STREAM_ERROR; + } + + status = strm.state.status; + if (status !== INIT_STATE && + status !== EXTRA_STATE && + status !== NAME_STATE && + status !== COMMENT_STATE && + status !== HCRC_STATE && + status !== BUSY_STATE && + status !== FINISH_STATE + ) { + return err(strm, Z_STREAM_ERROR); + } + + strm.state = null; + + return status === BUSY_STATE ? err(strm, Z_DATA_ERROR) : Z_OK; +} + +/* ========================================================================= + * Copy the source state to the destination state + */ +//function deflateCopy(dest, source) { +// +//} + +exports.deflateInit = deflateInit; +exports.deflateInit2 = deflateInit2; +exports.deflateReset = deflateReset; +exports.deflateResetKeep = deflateResetKeep; +exports.deflateSetHeader = deflateSetHeader; +exports.deflate = deflate; +exports.deflateEnd = deflateEnd; +exports.deflateInfo = 'pako deflate (from Nodeca project)'; + +/* Not implemented +exports.deflateBound = deflateBound; +exports.deflateCopy = deflateCopy; +exports.deflateSetDictionary = deflateSetDictionary; +exports.deflateParams = deflateParams; +exports.deflatePending = deflatePending; +exports.deflatePrime = deflatePrime; +exports.deflateTune = deflateTune; +*/ +},{"../utils/common":27,"./adler32":29,"./crc32":31,"./messages":37,"./trees":38}],33:[function(_dereq_,module,exports){ +'use strict'; + + +function GZheader() { + /* true if compressed data believed to be text */ + this.text = 0; + /* modification time */ + this.time = 0; + /* extra flags (not used when writing a gzip file) */ + this.xflags = 0; + /* operating system */ + this.os = 0; + /* pointer to extra field or Z_NULL if none */ + this.extra = null; + /* extra field length (valid if extra != Z_NULL) */ + this.extra_len = 0; // Actually, we don't need it in JS, + // but leave for few code modifications + + // + // Setup limits is not necessary because in js we should not preallocate memory + // for inflate use constant limit in 65536 bytes + // + + /* space at extra (only when reading header) */ + // this.extra_max = 0; + /* pointer to zero-terminated file name or Z_NULL */ + this.name = ''; + /* space at name (only when reading header) */ + // this.name_max = 0; + /* pointer to zero-terminated comment or Z_NULL */ + this.comment = ''; + /* space at comment (only when reading header) */ + // this.comm_max = 0; + /* true if there was or will be a header crc */ + this.hcrc = 0; + /* true when done reading gzip header (not used when writing a gzip file) */ + this.done = false; +} + +module.exports = GZheader; +},{}],34:[function(_dereq_,module,exports){ +'use strict'; + +// See state defs from inflate.js +var BAD = 30; /* got a data error -- remain here until reset */ +var TYPE = 12; /* i: waiting for type bits, including last-flag bit */ + +/* + Decode literal, length, and distance codes and write out the resulting + literal and match bytes until either not enough input or output is + available, an end-of-block is encountered, or a data error is encountered. + When large enough input and output buffers are supplied to inflate(), for + example, a 16K input buffer and a 64K output buffer, more than 95% of the + inflate execution time is spent in this routine. + + Entry assumptions: + + state.mode === LEN + strm.avail_in >= 6 + strm.avail_out >= 258 + start >= strm.avail_out + state.bits < 8 + + On return, state.mode is one of: + + LEN -- ran out of enough output space or enough available input + TYPE -- reached end of block code, inflate() to interpret next block + BAD -- error in block data + + Notes: + + - The maximum input bits used by a length/distance pair is 15 bits for the + length code, 5 bits for the length extra, 15 bits for the distance code, + and 13 bits for the distance extra. This totals 48 bits, or six bytes. + Therefore if strm.avail_in >= 6, then there is enough input to avoid + checking for available input while decoding. + + - The maximum bytes that a single length/distance pair can output is 258 + bytes, which is the maximum length that can be coded. inflate_fast() + requires strm.avail_out >= 258 for each loop to avoid checking for + output space. + */ +module.exports = function inflate_fast(strm, start) { + var state; + var _in; /* local strm.input */ + var last; /* have enough input while in < last */ + var _out; /* local strm.output */ + var beg; /* inflate()'s initial strm.output */ + var end; /* while out < end, enough space available */ +//#ifdef INFLATE_STRICT + var dmax; /* maximum distance from zlib header */ +//#endif + var wsize; /* window size or zero if not using window */ + var whave; /* valid bytes in the window */ + var wnext; /* window write index */ + var window; /* allocated sliding window, if wsize != 0 */ + var hold; /* local strm.hold */ + var bits; /* local strm.bits */ + var lcode; /* local strm.lencode */ + var dcode; /* local strm.distcode */ + var lmask; /* mask for first level of length codes */ + var dmask; /* mask for first level of distance codes */ + var here; /* retrieved table entry */ + var op; /* code bits, operation, extra bits, or */ + /* window position, window bytes to copy */ + var len; /* match length, unused bytes */ + var dist; /* match distance */ + var from; /* where to copy match from */ + var from_source; + + + var input, output; // JS specific, because we have no pointers + + /* copy state to local variables */ + state = strm.state; + //here = state.here; + _in = strm.next_in; + input = strm.input; + last = _in + (strm.avail_in - 5); + _out = strm.next_out; + output = strm.output; + beg = _out - (start - strm.avail_out); + end = _out + (strm.avail_out - 257); +//#ifdef INFLATE_STRICT + dmax = state.dmax; +//#endif + wsize = state.wsize; + whave = state.whave; + wnext = state.wnext; + window = state.window; + hold = state.hold; + bits = state.bits; + lcode = state.lencode; + dcode = state.distcode; + lmask = (1 << state.lenbits) - 1; + dmask = (1 << state.distbits) - 1; + + + /* decode literals and length/distances until end-of-block or not enough + input data or output space */ + + top: + do { + if (bits < 15) { + hold += input[_in++] << bits; + bits += 8; + hold += input[_in++] << bits; + bits += 8; + } + + here = lcode[hold & lmask]; + + dolen: + for (;;) { // Goto emulation + op = here >>> 24/*here.bits*/; + hold >>>= op; + bits -= op; + op = (here >>> 16) & 0xff/*here.op*/; + if (op === 0) { /* literal */ + //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ? + // "inflate: literal '%c'\n" : + // "inflate: literal 0x%02x\n", here.val)); + output[_out++] = here & 0xffff/*here.val*/; + } + else if (op & 16) { /* length base */ + len = here & 0xffff/*here.val*/; + op &= 15; /* number of extra bits */ + if (op) { + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + } + len += hold & ((1 << op) - 1); + hold >>>= op; + bits -= op; + } + //Tracevv((stderr, "inflate: length %u\n", len)); + if (bits < 15) { + hold += input[_in++] << bits; + bits += 8; + hold += input[_in++] << bits; + bits += 8; + } + here = dcode[hold & dmask]; + + dodist: + for (;;) { // goto emulation + op = here >>> 24/*here.bits*/; + hold >>>= op; + bits -= op; + op = (here >>> 16) & 0xff/*here.op*/; + + if (op & 16) { /* distance base */ + dist = here & 0xffff/*here.val*/; + op &= 15; /* number of extra bits */ + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + } + } + dist += hold & ((1 << op) - 1); +//#ifdef INFLATE_STRICT + if (dist > dmax) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break top; + } +//#endif + hold >>>= op; + bits -= op; + //Tracevv((stderr, "inflate: distance %u\n", dist)); + op = _out - beg; /* max distance in output */ + if (dist > op) { /* see if copy from window */ + op = dist - op; /* distance back in window */ + if (op > whave) { + if (state.sane) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break top; + } + +// (!) This block is disabled in zlib defailts, +// don't enable it for binary compatibility +//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR +// if (len <= op - whave) { +// do { +// output[_out++] = 0; +// } while (--len); +// continue top; +// } +// len -= op - whave; +// do { +// output[_out++] = 0; +// } while (--op > whave); +// if (op === 0) { +// from = _out - dist; +// do { +// output[_out++] = output[from++]; +// } while (--len); +// continue top; +// } +//#endif + } + from = 0; // window index + from_source = window; + if (wnext === 0) { /* very common case */ + from += wsize - op; + if (op < len) { /* some from window */ + len -= op; + do { + output[_out++] = window[from++]; + } while (--op); + from = _out - dist; /* rest from output */ + from_source = output; + } + } + else if (wnext < op) { /* wrap around window */ + from += wsize + wnext - op; + op -= wnext; + if (op < len) { /* some from end of window */ + len -= op; + do { + output[_out++] = window[from++]; + } while (--op); + from = 0; + if (wnext < len) { /* some from start of window */ + op = wnext; + len -= op; + do { + output[_out++] = window[from++]; + } while (--op); + from = _out - dist; /* rest from output */ + from_source = output; + } + } + } + else { /* contiguous in window */ + from += wnext - op; + if (op < len) { /* some from window */ + len -= op; + do { + output[_out++] = window[from++]; + } while (--op); + from = _out - dist; /* rest from output */ + from_source = output; + } + } + while (len > 2) { + output[_out++] = from_source[from++]; + output[_out++] = from_source[from++]; + output[_out++] = from_source[from++]; + len -= 3; + } + if (len) { + output[_out++] = from_source[from++]; + if (len > 1) { + output[_out++] = from_source[from++]; + } + } + } + else { + from = _out - dist; /* copy direct from output */ + do { /* minimum length is three */ + output[_out++] = output[from++]; + output[_out++] = output[from++]; + output[_out++] = output[from++]; + len -= 3; + } while (len > 2); + if (len) { + output[_out++] = output[from++]; + if (len > 1) { + output[_out++] = output[from++]; + } + } + } + } + else if ((op & 64) === 0) { /* 2nd level distance code */ + here = dcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))]; + continue dodist; + } + else { + strm.msg = 'invalid distance code'; + state.mode = BAD; + break top; + } + + break; // need to emulate goto via "continue" + } + } + else if ((op & 64) === 0) { /* 2nd level length code */ + here = lcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))]; + continue dolen; + } + else if (op & 32) { /* end-of-block */ + //Tracevv((stderr, "inflate: end of block\n")); + state.mode = TYPE; + break top; + } + else { + strm.msg = 'invalid literal/length code'; + state.mode = BAD; + break top; + } + + break; // need to emulate goto via "continue" + } + } while (_in < last && _out < end); + + /* return unused bytes (on entry, bits < 8, so in won't go too far back) */ + len = bits >> 3; + _in -= len; + bits -= len << 3; + hold &= (1 << bits) - 1; + + /* update state and return */ + strm.next_in = _in; + strm.next_out = _out; + strm.avail_in = (_in < last ? 5 + (last - _in) : 5 - (_in - last)); + strm.avail_out = (_out < end ? 257 + (end - _out) : 257 - (_out - end)); + state.hold = hold; + state.bits = bits; + return; +}; + +},{}],35:[function(_dereq_,module,exports){ +'use strict'; + + +var utils = _dereq_('../utils/common'); +var adler32 = _dereq_('./adler32'); +var crc32 = _dereq_('./crc32'); +var inflate_fast = _dereq_('./inffast'); +var inflate_table = _dereq_('./inftrees'); + +var CODES = 0; +var LENS = 1; +var DISTS = 2; + +/* Public constants ==========================================================*/ +/* ===========================================================================*/ + + +/* Allowed flush values; see deflate() and inflate() below for details */ +//var Z_NO_FLUSH = 0; +//var Z_PARTIAL_FLUSH = 1; +//var Z_SYNC_FLUSH = 2; +//var Z_FULL_FLUSH = 3; +var Z_FINISH = 4; +var Z_BLOCK = 5; +var Z_TREES = 6; + + +/* Return codes for the compression/decompression functions. Negative values + * are errors, positive values are used for special but normal events. + */ +var Z_OK = 0; +var Z_STREAM_END = 1; +var Z_NEED_DICT = 2; +//var Z_ERRNO = -1; +var Z_STREAM_ERROR = -2; +var Z_DATA_ERROR = -3; +var Z_MEM_ERROR = -4; +var Z_BUF_ERROR = -5; +//var Z_VERSION_ERROR = -6; + +/* The deflate compression method */ +var Z_DEFLATED = 8; + + +/* STATES ====================================================================*/ +/* ===========================================================================*/ + + +var HEAD = 1; /* i: waiting for magic header */ +var FLAGS = 2; /* i: waiting for method and flags (gzip) */ +var TIME = 3; /* i: waiting for modification time (gzip) */ +var OS = 4; /* i: waiting for extra flags and operating system (gzip) */ +var EXLEN = 5; /* i: waiting for extra length (gzip) */ +var EXTRA = 6; /* i: waiting for extra bytes (gzip) */ +var NAME = 7; /* i: waiting for end of file name (gzip) */ +var COMMENT = 8; /* i: waiting for end of comment (gzip) */ +var HCRC = 9; /* i: waiting for header crc (gzip) */ +var DICTID = 10; /* i: waiting for dictionary check value */ +var DICT = 11; /* waiting for inflateSetDictionary() call */ +var TYPE = 12; /* i: waiting for type bits, including last-flag bit */ +var TYPEDO = 13; /* i: same, but skip check to exit inflate on new block */ +var STORED = 14; /* i: waiting for stored size (length and complement) */ +var COPY_ = 15; /* i/o: same as COPY below, but only first time in */ +var COPY = 16; /* i/o: waiting for input or output to copy stored block */ +var TABLE = 17; /* i: waiting for dynamic block table lengths */ +var LENLENS = 18; /* i: waiting for code length code lengths */ +var CODELENS = 19; /* i: waiting for length/lit and distance code lengths */ +var LEN_ = 20; /* i: same as LEN below, but only first time in */ +var LEN = 21; /* i: waiting for length/lit/eob code */ +var LENEXT = 22; /* i: waiting for length extra bits */ +var DIST = 23; /* i: waiting for distance code */ +var DISTEXT = 24; /* i: waiting for distance extra bits */ +var MATCH = 25; /* o: waiting for output space to copy string */ +var LIT = 26; /* o: waiting for output space to write literal */ +var CHECK = 27; /* i: waiting for 32-bit check value */ +var LENGTH = 28; /* i: waiting for 32-bit length (gzip) */ +var DONE = 29; /* finished check, done -- remain here until reset */ +var BAD = 30; /* got a data error -- remain here until reset */ +var MEM = 31; /* got an inflate() memory error -- remain here until reset */ +var SYNC = 32; /* looking for synchronization bytes to restart inflate() */ + +/* ===========================================================================*/ + + + +var ENOUGH_LENS = 852; +var ENOUGH_DISTS = 592; +//var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS); + +var MAX_WBITS = 15; +/* 32K LZ77 window */ +var DEF_WBITS = MAX_WBITS; + + +function ZSWAP32(q) { + return (((q >>> 24) & 0xff) + + ((q >>> 8) & 0xff00) + + ((q & 0xff00) << 8) + + ((q & 0xff) << 24)); +} + + +function InflateState() { + this.mode = 0; /* current inflate mode */ + this.last = false; /* true if processing last block */ + this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */ + this.havedict = false; /* true if dictionary provided */ + this.flags = 0; /* gzip header method and flags (0 if zlib) */ + this.dmax = 0; /* zlib header max distance (INFLATE_STRICT) */ + this.check = 0; /* protected copy of check value */ + this.total = 0; /* protected copy of output count */ + // TODO: may be {} + this.head = null; /* where to save gzip header information */ + + /* sliding window */ + this.wbits = 0; /* log base 2 of requested window size */ + this.wsize = 0; /* window size or zero if not using window */ + this.whave = 0; /* valid bytes in the window */ + this.wnext = 0; /* window write index */ + this.window = null; /* allocated sliding window, if needed */ + + /* bit accumulator */ + this.hold = 0; /* input bit accumulator */ + this.bits = 0; /* number of bits in "in" */ + + /* for string and stored block copying */ + this.length = 0; /* literal or length of data to copy */ + this.offset = 0; /* distance back to copy string from */ + + /* for table and code decoding */ + this.extra = 0; /* extra bits needed */ + + /* fixed and dynamic code tables */ + this.lencode = null; /* starting table for length/literal codes */ + this.distcode = null; /* starting table for distance codes */ + this.lenbits = 0; /* index bits for lencode */ + this.distbits = 0; /* index bits for distcode */ + + /* dynamic table building */ + this.ncode = 0; /* number of code length code lengths */ + this.nlen = 0; /* number of length code lengths */ + this.ndist = 0; /* number of distance code lengths */ + this.have = 0; /* number of code lengths in lens[] */ + this.next = null; /* next available space in codes[] */ + + this.lens = new utils.Buf16(320); /* temporary storage for code lengths */ + this.work = new utils.Buf16(288); /* work area for code table building */ + + /* + because we don't have pointers in js, we use lencode and distcode directly + as buffers so we don't need codes + */ + //this.codes = new utils.Buf32(ENOUGH); /* space for code tables */ + this.lendyn = null; /* dynamic table for length/literal codes (JS specific) */ + this.distdyn = null; /* dynamic table for distance codes (JS specific) */ + this.sane = 0; /* if false, allow invalid distance too far */ + this.back = 0; /* bits back of last unprocessed length/lit */ + this.was = 0; /* initial length of match */ +} + +function inflateResetKeep(strm) { + var state; + + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + strm.total_in = strm.total_out = state.total = 0; + strm.msg = ''; /*Z_NULL*/ + if (state.wrap) { /* to support ill-conceived Java test suite */ + strm.adler = state.wrap & 1; + } + state.mode = HEAD; + state.last = 0; + state.havedict = 0; + state.dmax = 32768; + state.head = null/*Z_NULL*/; + state.hold = 0; + state.bits = 0; + //state.lencode = state.distcode = state.next = state.codes; + state.lencode = state.lendyn = new utils.Buf32(ENOUGH_LENS); + state.distcode = state.distdyn = new utils.Buf32(ENOUGH_DISTS); + + state.sane = 1; + state.back = -1; + //Tracev((stderr, "inflate: reset\n")); + return Z_OK; +} + +function inflateReset(strm) { + var state; + + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + state.wsize = 0; + state.whave = 0; + state.wnext = 0; + return inflateResetKeep(strm); + +} + +function inflateReset2(strm, windowBits) { + var wrap; + var state; + + /* get the state */ + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + + /* extract wrap request from windowBits parameter */ + if (windowBits < 0) { + wrap = 0; + windowBits = -windowBits; + } + else { + wrap = (windowBits >> 4) + 1; + if (windowBits < 48) { + windowBits &= 15; + } + } + + /* set number of window bits, free window if different */ + if (windowBits && (windowBits < 8 || windowBits > 15)) { + return Z_STREAM_ERROR; + } + if (state.window !== null && state.wbits !== windowBits) { + state.window = null; + } + + /* update state and reset the rest of it */ + state.wrap = wrap; + state.wbits = windowBits; + return inflateReset(strm); +} + +function inflateInit2(strm, windowBits) { + var ret; + var state; + + if (!strm) { return Z_STREAM_ERROR; } + //strm.msg = Z_NULL; /* in case we return an error */ + + state = new InflateState(); + + //if (state === Z_NULL) return Z_MEM_ERROR; + //Tracev((stderr, "inflate: allocated\n")); + strm.state = state; + state.window = null/*Z_NULL*/; + ret = inflateReset2(strm, windowBits); + if (ret !== Z_OK) { + strm.state = null/*Z_NULL*/; + } + return ret; +} + +function inflateInit(strm) { + return inflateInit2(strm, DEF_WBITS); +} + + +/* + Return state with length and distance decoding tables and index sizes set to + fixed code decoding. Normally this returns fixed tables from inffixed.h. + If BUILDFIXED is defined, then instead this routine builds the tables the + first time it's called, and returns those tables the first time and + thereafter. This reduces the size of the code by about 2K bytes, in + exchange for a little execution time. However, BUILDFIXED should not be + used for threaded applications, since the rewriting of the tables and virgin + may not be thread-safe. + */ +var virgin = true; + +var lenfix, distfix; // We have no pointers in JS, so keep tables separate + +function fixedtables(state) { + /* build fixed huffman tables if first call (may not be thread safe) */ + if (virgin) { + var sym; + + lenfix = new utils.Buf32(512); + distfix = new utils.Buf32(32); + + /* literal/length table */ + sym = 0; + while (sym < 144) { state.lens[sym++] = 8; } + while (sym < 256) { state.lens[sym++] = 9; } + while (sym < 280) { state.lens[sym++] = 7; } + while (sym < 288) { state.lens[sym++] = 8; } + + inflate_table(LENS, state.lens, 0, 288, lenfix, 0, state.work, {bits: 9}); + + /* distance table */ + sym = 0; + while (sym < 32) { state.lens[sym++] = 5; } + + inflate_table(DISTS, state.lens, 0, 32, distfix, 0, state.work, {bits: 5}); + + /* do this just once */ + virgin = false; + } + + state.lencode = lenfix; + state.lenbits = 9; + state.distcode = distfix; + state.distbits = 5; +} + + +/* + Update the window with the last wsize (normally 32K) bytes written before + returning. If window does not exist yet, create it. This is only called + when a window is already in use, or when output has been written during this + inflate call, but the end of the deflate stream has not been reached yet. + It is also called to create a window for dictionary data when a dictionary + is loaded. + + Providing output buffers larger than 32K to inflate() should provide a speed + advantage, since only the last 32K of output is copied to the sliding window + upon return from inflate(), and since all distances after the first 32K of + output will fall in the output data, making match copies simpler and faster. + The advantage may be dependent on the size of the processor's data caches. + */ +function updatewindow(strm, src, end, copy) { + var dist; + var state = strm.state; + + /* if it hasn't been done already, allocate space for the window */ + if (state.window === null) { + state.wsize = 1 << state.wbits; + state.wnext = 0; + state.whave = 0; + + state.window = new utils.Buf8(state.wsize); + } + + /* copy state->wsize or less output bytes into the circular window */ + if (copy >= state.wsize) { + utils.arraySet(state.window,src, end - state.wsize, state.wsize, 0); + state.wnext = 0; + state.whave = state.wsize; + } + else { + dist = state.wsize - state.wnext; + if (dist > copy) { + dist = copy; + } + //zmemcpy(state->window + state->wnext, end - copy, dist); + utils.arraySet(state.window,src, end - copy, dist, state.wnext); + copy -= dist; + if (copy) { + //zmemcpy(state->window, end - copy, copy); + utils.arraySet(state.window,src, end - copy, copy, 0); + state.wnext = copy; + state.whave = state.wsize; + } + else { + state.wnext += dist; + if (state.wnext === state.wsize) { state.wnext = 0; } + if (state.whave < state.wsize) { state.whave += dist; } + } + } + return 0; +} + +function inflate(strm, flush) { + var state; + var input, output; // input/output buffers + var next; /* next input INDEX */ + var put; /* next output INDEX */ + var have, left; /* available input and output */ + var hold; /* bit buffer */ + var bits; /* bits in bit buffer */ + var _in, _out; /* save starting available input and output */ + var copy; /* number of stored or match bytes to copy */ + var from; /* where to copy match bytes from */ + var from_source; + var here = 0; /* current decoding table entry */ + var here_bits, here_op, here_val; // paked "here" denormalized (JS specific) + //var last; /* parent table entry */ + var last_bits, last_op, last_val; // paked "last" denormalized (JS specific) + var len; /* length to copy for repeats, bits to drop */ + var ret; /* return code */ + var hbuf = new utils.Buf8(4); /* buffer for gzip header crc calculation */ + var opts; + + var n; // temporary var for NEED_BITS + + var order = /* permutation of code lengths */ + [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]; + + + if (!strm || !strm.state || !strm.output || + (!strm.input && strm.avail_in !== 0)) { + return Z_STREAM_ERROR; + } + + state = strm.state; + if (state.mode === TYPE) { state.mode = TYPEDO; } /* skip check */ + + + //--- LOAD() --- + put = strm.next_out; + output = strm.output; + left = strm.avail_out; + next = strm.next_in; + input = strm.input; + have = strm.avail_in; + hold = state.hold; + bits = state.bits; + //--- + + _in = have; + _out = left; + ret = Z_OK; + + inf_leave: // goto emulation + for (;;) { + switch (state.mode) { + case HEAD: + if (state.wrap === 0) { + state.mode = TYPEDO; + break; + } + //=== NEEDBITS(16); + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if ((state.wrap & 2) && hold === 0x8b1f) { /* gzip header */ + state.check = 0/*crc32(0L, Z_NULL, 0)*/; + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = FLAGS; + break; + } + state.flags = 0; /* expect zlib header */ + if (state.head) { + state.head.done = false; + } + if (!(state.wrap & 1) || /* check if zlib header allowed */ + (((hold & 0xff)/*BITS(8)*/ << 8) + (hold >> 8)) % 31) { + strm.msg = 'incorrect header check'; + state.mode = BAD; + break; + } + if ((hold & 0x0f)/*BITS(4)*/ !== Z_DEFLATED) { + strm.msg = 'unknown compression method'; + state.mode = BAD; + break; + } + //--- DROPBITS(4) ---// + hold >>>= 4; + bits -= 4; + //---// + len = (hold & 0x0f)/*BITS(4)*/ + 8; + if (state.wbits === 0) { + state.wbits = len; + } + else if (len > state.wbits) { + strm.msg = 'invalid window size'; + state.mode = BAD; + break; + } + state.dmax = 1 << len; + //Tracev((stderr, "inflate: zlib header ok\n")); + strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/; + state.mode = hold & 0x200 ? DICTID : TYPE; + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + break; + case FLAGS: + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.flags = hold; + if ((state.flags & 0xff) !== Z_DEFLATED) { + strm.msg = 'unknown compression method'; + state.mode = BAD; + break; + } + if (state.flags & 0xe000) { + strm.msg = 'unknown header flags set'; + state.mode = BAD; + break; + } + if (state.head) { + state.head.text = ((hold >> 8) & 1); + } + if (state.flags & 0x0200) { + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = TIME; + /* falls through */ + case TIME: + //=== NEEDBITS(32); */ + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (state.head) { + state.head.time = hold; + } + if (state.flags & 0x0200) { + //=== CRC4(state.check, hold) + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + hbuf[2] = (hold >>> 16) & 0xff; + hbuf[3] = (hold >>> 24) & 0xff; + state.check = crc32(state.check, hbuf, 4, 0); + //=== + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = OS; + /* falls through */ + case OS: + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (state.head) { + state.head.xflags = (hold & 0xff); + state.head.os = (hold >> 8); + } + if (state.flags & 0x0200) { + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = EXLEN; + /* falls through */ + case EXLEN: + if (state.flags & 0x0400) { + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.length = hold; + if (state.head) { + state.head.extra_len = hold; + } + if (state.flags & 0x0200) { + //=== CRC2(state.check, hold); + hbuf[0] = hold & 0xff; + hbuf[1] = (hold >>> 8) & 0xff; + state.check = crc32(state.check, hbuf, 2, 0); + //===// + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + } + else if (state.head) { + state.head.extra = null/*Z_NULL*/; + } + state.mode = EXTRA; + /* falls through */ + case EXTRA: + if (state.flags & 0x0400) { + copy = state.length; + if (copy > have) { copy = have; } + if (copy) { + if (state.head) { + len = state.head.extra_len - state.length; + if (!state.head.extra) { + // Use untyped array for more conveniend processing later + state.head.extra = new Array(state.head.extra_len); + } + utils.arraySet( + state.head.extra, + input, + next, + // extra field is limited to 65536 bytes + // - no need for additional size check + copy, + /*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/ + len + ); + //zmemcpy(state.head.extra + len, next, + // len + copy > state.head.extra_max ? + // state.head.extra_max - len : copy); + } + if (state.flags & 0x0200) { + state.check = crc32(state.check, input, copy, next); + } + have -= copy; + next += copy; + state.length -= copy; + } + if (state.length) { break inf_leave; } + } + state.length = 0; + state.mode = NAME; + /* falls through */ + case NAME: + if (state.flags & 0x0800) { + if (have === 0) { break inf_leave; } + copy = 0; + do { + // TODO: 2 or 1 bytes? + len = input[next + copy++]; + /* use constant limit because in js we should not preallocate memory */ + if (state.head && len && + (state.length < 65536 /*state.head.name_max*/)) { + state.head.name += String.fromCharCode(len); + } + } while (len && copy < have); + + if (state.flags & 0x0200) { + state.check = crc32(state.check, input, copy, next); + } + have -= copy; + next += copy; + if (len) { break inf_leave; } + } + else if (state.head) { + state.head.name = null; + } + state.length = 0; + state.mode = COMMENT; + /* falls through */ + case COMMENT: + if (state.flags & 0x1000) { + if (have === 0) { break inf_leave; } + copy = 0; + do { + len = input[next + copy++]; + /* use constant limit because in js we should not preallocate memory */ + if (state.head && len && + (state.length < 65536 /*state.head.comm_max*/)) { + state.head.comment += String.fromCharCode(len); + } + } while (len && copy < have); + if (state.flags & 0x0200) { + state.check = crc32(state.check, input, copy, next); + } + have -= copy; + next += copy; + if (len) { break inf_leave; } + } + else if (state.head) { + state.head.comment = null; + } + state.mode = HCRC; + /* falls through */ + case HCRC: + if (state.flags & 0x0200) { + //=== NEEDBITS(16); */ + while (bits < 16) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (hold !== (state.check & 0xffff)) { + strm.msg = 'header crc mismatch'; + state.mode = BAD; + break; + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + } + if (state.head) { + state.head.hcrc = ((state.flags >> 9) & 1); + state.head.done = true; + } + strm.adler = state.check = 0 /*crc32(0L, Z_NULL, 0)*/; + state.mode = TYPE; + break; + case DICTID: + //=== NEEDBITS(32); */ + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + strm.adler = state.check = ZSWAP32(hold); + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = DICT; + /* falls through */ + case DICT: + if (state.havedict === 0) { + //--- RESTORE() --- + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + //--- + return Z_NEED_DICT; + } + strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/; + state.mode = TYPE; + /* falls through */ + case TYPE: + if (flush === Z_BLOCK || flush === Z_TREES) { break inf_leave; } + /* falls through */ + case TYPEDO: + if (state.last) { + //--- BYTEBITS() ---// + hold >>>= bits & 7; + bits -= bits & 7; + //---// + state.mode = CHECK; + break; + } + //=== NEEDBITS(3); */ + while (bits < 3) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.last = (hold & 0x01)/*BITS(1)*/; + //--- DROPBITS(1) ---// + hold >>>= 1; + bits -= 1; + //---// + + switch ((hold & 0x03)/*BITS(2)*/) { + case 0: /* stored block */ + //Tracev((stderr, "inflate: stored block%s\n", + // state.last ? " (last)" : "")); + state.mode = STORED; + break; + case 1: /* fixed block */ + fixedtables(state); + //Tracev((stderr, "inflate: fixed codes block%s\n", + // state.last ? " (last)" : "")); + state.mode = LEN_; /* decode codes */ + if (flush === Z_TREES) { + //--- DROPBITS(2) ---// + hold >>>= 2; + bits -= 2; + //---// + break inf_leave; + } + break; + case 2: /* dynamic block */ + //Tracev((stderr, "inflate: dynamic codes block%s\n", + // state.last ? " (last)" : "")); + state.mode = TABLE; + break; + case 3: + strm.msg = 'invalid block type'; + state.mode = BAD; + } + //--- DROPBITS(2) ---// + hold >>>= 2; + bits -= 2; + //---// + break; + case STORED: + //--- BYTEBITS() ---// /* go to byte boundary */ + hold >>>= bits & 7; + bits -= bits & 7; + //---// + //=== NEEDBITS(32); */ + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if ((hold & 0xffff) !== ((hold >>> 16) ^ 0xffff)) { + strm.msg = 'invalid stored block lengths'; + state.mode = BAD; + break; + } + state.length = hold & 0xffff; + //Tracev((stderr, "inflate: stored length %u\n", + // state.length)); + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + state.mode = COPY_; + if (flush === Z_TREES) { break inf_leave; } + /* falls through */ + case COPY_: + state.mode = COPY; + /* falls through */ + case COPY: + copy = state.length; + if (copy) { + if (copy > have) { copy = have; } + if (copy > left) { copy = left; } + if (copy === 0) { break inf_leave; } + //--- zmemcpy(put, next, copy); --- + utils.arraySet(output, input, next, copy, put); + //---// + have -= copy; + next += copy; + left -= copy; + put += copy; + state.length -= copy; + break; + } + //Tracev((stderr, "inflate: stored end\n")); + state.mode = TYPE; + break; + case TABLE: + //=== NEEDBITS(14); */ + while (bits < 14) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.nlen = (hold & 0x1f)/*BITS(5)*/ + 257; + //--- DROPBITS(5) ---// + hold >>>= 5; + bits -= 5; + //---// + state.ndist = (hold & 0x1f)/*BITS(5)*/ + 1; + //--- DROPBITS(5) ---// + hold >>>= 5; + bits -= 5; + //---// + state.ncode = (hold & 0x0f)/*BITS(4)*/ + 4; + //--- DROPBITS(4) ---// + hold >>>= 4; + bits -= 4; + //---// +//#ifndef PKZIP_BUG_WORKAROUND + if (state.nlen > 286 || state.ndist > 30) { + strm.msg = 'too many length or distance symbols'; + state.mode = BAD; + break; + } +//#endif + //Tracev((stderr, "inflate: table sizes ok\n")); + state.have = 0; + state.mode = LENLENS; + /* falls through */ + case LENLENS: + while (state.have < state.ncode) { + //=== NEEDBITS(3); + while (bits < 3) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.lens[order[state.have++]] = (hold & 0x07);//BITS(3); + //--- DROPBITS(3) ---// + hold >>>= 3; + bits -= 3; + //---// + } + while (state.have < 19) { + state.lens[order[state.have++]] = 0; + } + // We have separate tables & no pointers. 2 commented lines below not needed. + //state.next = state.codes; + //state.lencode = state.next; + // Switch to use dynamic table + state.lencode = state.lendyn; + state.lenbits = 7; + + opts = {bits: state.lenbits}; + ret = inflate_table(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts); + state.lenbits = opts.bits; + + if (ret) { + strm.msg = 'invalid code lengths set'; + state.mode = BAD; + break; + } + //Tracev((stderr, "inflate: code lengths ok\n")); + state.have = 0; + state.mode = CODELENS; + /* falls through */ + case CODELENS: + while (state.have < state.nlen + state.ndist) { + for (;;) { + here = state.lencode[hold & ((1 << state.lenbits) - 1)];/*BITS(state.lenbits)*/ + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + if (here_val < 16) { + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + state.lens[state.have++] = here_val; + } + else { + if (here_val === 16) { + //=== NEEDBITS(here.bits + 2); + n = here_bits + 2; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + if (state.have === 0) { + strm.msg = 'invalid bit length repeat'; + state.mode = BAD; + break; + } + len = state.lens[state.have - 1]; + copy = 3 + (hold & 0x03);//BITS(2); + //--- DROPBITS(2) ---// + hold >>>= 2; + bits -= 2; + //---// + } + else if (here_val === 17) { + //=== NEEDBITS(here.bits + 3); + n = here_bits + 3; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + len = 0; + copy = 3 + (hold & 0x07);//BITS(3); + //--- DROPBITS(3) ---// + hold >>>= 3; + bits -= 3; + //---// + } + else { + //=== NEEDBITS(here.bits + 7); + n = here_bits + 7; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + len = 0; + copy = 11 + (hold & 0x7f);//BITS(7); + //--- DROPBITS(7) ---// + hold >>>= 7; + bits -= 7; + //---// + } + if (state.have + copy > state.nlen + state.ndist) { + strm.msg = 'invalid bit length repeat'; + state.mode = BAD; + break; + } + while (copy--) { + state.lens[state.have++] = len; + } + } + } + + /* handle error breaks in while */ + if (state.mode === BAD) { break; } + + /* check for end-of-block code (better have one) */ + if (state.lens[256] === 0) { + strm.msg = 'invalid code -- missing end-of-block'; + state.mode = BAD; + break; + } + + /* build code tables -- note: do not change the lenbits or distbits + values here (9 and 6) without reading the comments in inftrees.h + concerning the ENOUGH constants, which depend on those values */ + state.lenbits = 9; + + opts = {bits: state.lenbits}; + ret = inflate_table(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts); + // We have separate tables & no pointers. 2 commented lines below not needed. + // state.next_index = opts.table_index; + state.lenbits = opts.bits; + // state.lencode = state.next; + + if (ret) { + strm.msg = 'invalid literal/lengths set'; + state.mode = BAD; + break; + } + + state.distbits = 6; + //state.distcode.copy(state.codes); + // Switch to use dynamic table + state.distcode = state.distdyn; + opts = {bits: state.distbits}; + ret = inflate_table(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts); + // We have separate tables & no pointers. 2 commented lines below not needed. + // state.next_index = opts.table_index; + state.distbits = opts.bits; + // state.distcode = state.next; + + if (ret) { + strm.msg = 'invalid distances set'; + state.mode = BAD; + break; + } + //Tracev((stderr, 'inflate: codes ok\n')); + state.mode = LEN_; + if (flush === Z_TREES) { break inf_leave; } + /* falls through */ + case LEN_: + state.mode = LEN; + /* falls through */ + case LEN: + if (have >= 6 && left >= 258) { + //--- RESTORE() --- + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + //--- + inflate_fast(strm, _out); + //--- LOAD() --- + put = strm.next_out; + output = strm.output; + left = strm.avail_out; + next = strm.next_in; + input = strm.input; + have = strm.avail_in; + hold = state.hold; + bits = state.bits; + //--- + + if (state.mode === TYPE) { + state.back = -1; + } + break; + } + state.back = 0; + for (;;) { + here = state.lencode[hold & ((1 << state.lenbits) -1)]; /*BITS(state.lenbits)*/ + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if (here_bits <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + if (here_op && (here_op & 0xf0) === 0) { + last_bits = here_bits; + last_op = here_op; + last_val = here_val; + for (;;) { + here = state.lencode[last_val + + ((hold & ((1 << (last_bits + last_op)) -1))/*BITS(last.bits + last.op)*/ >> last_bits)]; + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((last_bits + here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + //--- DROPBITS(last.bits) ---// + hold >>>= last_bits; + bits -= last_bits; + //---// + state.back += last_bits; + } + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + state.back += here_bits; + state.length = here_val; + if (here_op === 0) { + //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ? + // "inflate: literal '%c'\n" : + // "inflate: literal 0x%02x\n", here.val)); + state.mode = LIT; + break; + } + if (here_op & 32) { + //Tracevv((stderr, "inflate: end of block\n")); + state.back = -1; + state.mode = TYPE; + break; + } + if (here_op & 64) { + strm.msg = 'invalid literal/length code'; + state.mode = BAD; + break; + } + state.extra = here_op & 15; + state.mode = LENEXT; + /* falls through */ + case LENEXT: + if (state.extra) { + //=== NEEDBITS(state.extra); + n = state.extra; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.length += hold & ((1 << state.extra) -1)/*BITS(state.extra)*/; + //--- DROPBITS(state.extra) ---// + hold >>>= state.extra; + bits -= state.extra; + //---// + state.back += state.extra; + } + //Tracevv((stderr, "inflate: length %u\n", state.length)); + state.was = state.length; + state.mode = DIST; + /* falls through */ + case DIST: + for (;;) { + here = state.distcode[hold & ((1 << state.distbits) -1)];/*BITS(state.distbits)*/ + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + if ((here_op & 0xf0) === 0) { + last_bits = here_bits; + last_op = here_op; + last_val = here_val; + for (;;) { + here = state.distcode[last_val + + ((hold & ((1 << (last_bits + last_op)) -1))/*BITS(last.bits + last.op)*/ >> last_bits)]; + here_bits = here >>> 24; + here_op = (here >>> 16) & 0xff; + here_val = here & 0xffff; + + if ((last_bits + here_bits) <= bits) { break; } + //--- PULLBYTE() ---// + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + //---// + } + //--- DROPBITS(last.bits) ---// + hold >>>= last_bits; + bits -= last_bits; + //---// + state.back += last_bits; + } + //--- DROPBITS(here.bits) ---// + hold >>>= here_bits; + bits -= here_bits; + //---// + state.back += here_bits; + if (here_op & 64) { + strm.msg = 'invalid distance code'; + state.mode = BAD; + break; + } + state.offset = here_val; + state.extra = (here_op) & 15; + state.mode = DISTEXT; + /* falls through */ + case DISTEXT: + if (state.extra) { + //=== NEEDBITS(state.extra); + n = state.extra; + while (bits < n) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + state.offset += hold & ((1 << state.extra) -1)/*BITS(state.extra)*/; + //--- DROPBITS(state.extra) ---// + hold >>>= state.extra; + bits -= state.extra; + //---// + state.back += state.extra; + } +//#ifdef INFLATE_STRICT + if (state.offset > state.dmax) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break; + } +//#endif + //Tracevv((stderr, "inflate: distance %u\n", state.offset)); + state.mode = MATCH; + /* falls through */ + case MATCH: + if (left === 0) { break inf_leave; } + copy = _out - left; + if (state.offset > copy) { /* copy from window */ + copy = state.offset - copy; + if (copy > state.whave) { + if (state.sane) { + strm.msg = 'invalid distance too far back'; + state.mode = BAD; + break; + } +// (!) This block is disabled in zlib defailts, +// don't enable it for binary compatibility +//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR +// Trace((stderr, "inflate.c too far\n")); +// copy -= state.whave; +// if (copy > state.length) { copy = state.length; } +// if (copy > left) { copy = left; } +// left -= copy; +// state.length -= copy; +// do { +// output[put++] = 0; +// } while (--copy); +// if (state.length === 0) { state.mode = LEN; } +// break; +//#endif + } + if (copy > state.wnext) { + copy -= state.wnext; + from = state.wsize - copy; + } + else { + from = state.wnext - copy; + } + if (copy > state.length) { copy = state.length; } + from_source = state.window; + } + else { /* copy from output */ + from_source = output; + from = put - state.offset; + copy = state.length; + } + if (copy > left) { copy = left; } + left -= copy; + state.length -= copy; + do { + output[put++] = from_source[from++]; + } while (--copy); + if (state.length === 0) { state.mode = LEN; } + break; + case LIT: + if (left === 0) { break inf_leave; } + output[put++] = state.length; + left--; + state.mode = LEN; + break; + case CHECK: + if (state.wrap) { + //=== NEEDBITS(32); + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + // Use '|' insdead of '+' to make sure that result is signed + hold |= input[next++] << bits; + bits += 8; + } + //===// + _out -= left; + strm.total_out += _out; + state.total += _out; + if (_out) { + strm.adler = state.check = + /*UPDATE(state.check, put - _out, _out);*/ + (state.flags ? crc32(state.check, output, _out, put - _out) : adler32(state.check, output, _out, put - _out)); + + } + _out = left; + // NB: crc32 stored as signed 32-bit int, ZSWAP32 returns signed too + if ((state.flags ? hold : ZSWAP32(hold)) !== state.check) { + strm.msg = 'incorrect data check'; + state.mode = BAD; + break; + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + //Tracev((stderr, "inflate: check matches trailer\n")); + } + state.mode = LENGTH; + /* falls through */ + case LENGTH: + if (state.wrap && state.flags) { + //=== NEEDBITS(32); + while (bits < 32) { + if (have === 0) { break inf_leave; } + have--; + hold += input[next++] << bits; + bits += 8; + } + //===// + if (hold !== (state.total & 0xffffffff)) { + strm.msg = 'incorrect length check'; + state.mode = BAD; + break; + } + //=== INITBITS(); + hold = 0; + bits = 0; + //===// + //Tracev((stderr, "inflate: length matches trailer\n")); + } + state.mode = DONE; + /* falls through */ + case DONE: + ret = Z_STREAM_END; + break inf_leave; + case BAD: + ret = Z_DATA_ERROR; + break inf_leave; + case MEM: + return Z_MEM_ERROR; + case SYNC: + /* falls through */ + default: + return Z_STREAM_ERROR; + } + } + + // inf_leave <- here is real place for "goto inf_leave", emulated via "break inf_leave" + + /* + Return from inflate(), updating the total counts and the check value. + If there was no progress during the inflate() call, return a buffer + error. Call updatewindow() to create and/or update the window state. + Note: a memory error from inflate() is non-recoverable. + */ + + //--- RESTORE() --- + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + //--- + + if (state.wsize || (_out !== strm.avail_out && state.mode < BAD && + (state.mode < CHECK || flush !== Z_FINISH))) { + if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) { + state.mode = MEM; + return Z_MEM_ERROR; + } + } + _in -= strm.avail_in; + _out -= strm.avail_out; + strm.total_in += _in; + strm.total_out += _out; + state.total += _out; + if (state.wrap && _out) { + strm.adler = state.check = /*UPDATE(state.check, strm.next_out - _out, _out);*/ + (state.flags ? crc32(state.check, output, _out, strm.next_out - _out) : adler32(state.check, output, _out, strm.next_out - _out)); + } + strm.data_type = state.bits + (state.last ? 64 : 0) + + (state.mode === TYPE ? 128 : 0) + + (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0); + if (((_in === 0 && _out === 0) || flush === Z_FINISH) && ret === Z_OK) { + ret = Z_BUF_ERROR; + } + return ret; +} + +function inflateEnd(strm) { + + if (!strm || !strm.state /*|| strm->zfree == (free_func)0*/) { + return Z_STREAM_ERROR; + } + + var state = strm.state; + if (state.window) { + state.window = null; + } + strm.state = null; + return Z_OK; +} + +function inflateGetHeader(strm, head) { + var state; + + /* check state */ + if (!strm || !strm.state) { return Z_STREAM_ERROR; } + state = strm.state; + if ((state.wrap & 2) === 0) { return Z_STREAM_ERROR; } + + /* save header structure */ + state.head = head; + head.done = false; + return Z_OK; +} + + +exports.inflateReset = inflateReset; +exports.inflateReset2 = inflateReset2; +exports.inflateResetKeep = inflateResetKeep; +exports.inflateInit = inflateInit; +exports.inflateInit2 = inflateInit2; +exports.inflate = inflate; +exports.inflateEnd = inflateEnd; +exports.inflateGetHeader = inflateGetHeader; +exports.inflateInfo = 'pako inflate (from Nodeca project)'; + +/* Not implemented +exports.inflateCopy = inflateCopy; +exports.inflateGetDictionary = inflateGetDictionary; +exports.inflateMark = inflateMark; +exports.inflatePrime = inflatePrime; +exports.inflateSetDictionary = inflateSetDictionary; +exports.inflateSync = inflateSync; +exports.inflateSyncPoint = inflateSyncPoint; +exports.inflateUndermine = inflateUndermine; +*/ +},{"../utils/common":27,"./adler32":29,"./crc32":31,"./inffast":34,"./inftrees":36}],36:[function(_dereq_,module,exports){ +'use strict'; + + +var utils = _dereq_('../utils/common'); + +var MAXBITS = 15; +var ENOUGH_LENS = 852; +var ENOUGH_DISTS = 592; +//var ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS); + +var CODES = 0; +var LENS = 1; +var DISTS = 2; + +var lbase = [ /* Length codes 257..285 base */ + 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, + 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0 +]; + +var lext = [ /* Length codes 257..285 extra */ + 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, + 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78 +]; + +var dbase = [ /* Distance codes 0..29 base */ + 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, + 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, + 8193, 12289, 16385, 24577, 0, 0 +]; + +var dext = [ /* Distance codes 0..29 extra */ + 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, + 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, + 28, 28, 29, 29, 64, 64 +]; + +module.exports = function inflate_table(type, lens, lens_index, codes, table, table_index, work, opts) +{ + var bits = opts.bits; + //here = opts.here; /* table entry for duplication */ + + var len = 0; /* a code's length in bits */ + var sym = 0; /* index of code symbols */ + var min = 0, max = 0; /* minimum and maximum code lengths */ + var root = 0; /* number of index bits for root table */ + var curr = 0; /* number of index bits for current table */ + var drop = 0; /* code bits to drop for sub-table */ + var left = 0; /* number of prefix codes available */ + var used = 0; /* code entries in table used */ + var huff = 0; /* Huffman code */ + var incr; /* for incrementing code, index */ + var fill; /* index for replicating entries */ + var low; /* low bits for current root entry */ + var mask; /* mask for low root bits */ + var next; /* next available space in table */ + var base = null; /* base value table to use */ + var base_index = 0; +// var shoextra; /* extra bits table to use */ + var end; /* use base and extra for symbol > end */ + var count = new utils.Buf16(MAXBITS+1); //[MAXBITS+1]; /* number of codes of each length */ + var offs = new utils.Buf16(MAXBITS+1); //[MAXBITS+1]; /* offsets in table for each length */ + var extra = null; + var extra_index = 0; + + var here_bits, here_op, here_val; + + /* + Process a set of code lengths to create a canonical Huffman code. The + code lengths are lens[0..codes-1]. Each length corresponds to the + symbols 0..codes-1. The Huffman code is generated by first sorting the + symbols by length from short to long, and retaining the symbol order + for codes with equal lengths. Then the code starts with all zero bits + for the first code of the shortest length, and the codes are integer + increments for the same length, and zeros are appended as the length + increases. For the deflate format, these bits are stored backwards + from their more natural integer increment ordering, and so when the + decoding tables are built in the large loop below, the integer codes + are incremented backwards. + + This routine assumes, but does not check, that all of the entries in + lens[] are in the range 0..MAXBITS. The caller must assure this. + 1..MAXBITS is interpreted as that code length. zero means that that + symbol does not occur in this code. + + The codes are sorted by computing a count of codes for each length, + creating from that a table of starting indices for each length in the + sorted table, and then entering the symbols in order in the sorted + table. The sorted table is work[], with that space being provided by + the caller. + + The length counts are used for other purposes as well, i.e. finding + the minimum and maximum length codes, determining if there are any + codes at all, checking for a valid set of lengths, and looking ahead + at length counts to determine sub-table sizes when building the + decoding tables. + */ + + /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */ + for (len = 0; len <= MAXBITS; len++) { + count[len] = 0; + } + for (sym = 0; sym < codes; sym++) { + count[lens[lens_index + sym]]++; + } + + /* bound code lengths, force root to be within code lengths */ + root = bits; + for (max = MAXBITS; max >= 1; max--) { + if (count[max] !== 0) { break; } + } + if (root > max) { + root = max; + } + if (max === 0) { /* no symbols to code at all */ + //table.op[opts.table_index] = 64; //here.op = (var char)64; /* invalid code marker */ + //table.bits[opts.table_index] = 1; //here.bits = (var char)1; + //table.val[opts.table_index++] = 0; //here.val = (var short)0; + table[table_index++] = (1 << 24) | (64 << 16) | 0; + + + //table.op[opts.table_index] = 64; + //table.bits[opts.table_index] = 1; + //table.val[opts.table_index++] = 0; + table[table_index++] = (1 << 24) | (64 << 16) | 0; + + opts.bits = 1; + return 0; /* no symbols, but wait for decoding to report error */ + } + for (min = 1; min < max; min++) { + if (count[min] !== 0) { break; } + } + if (root < min) { + root = min; + } + + /* check for an over-subscribed or incomplete set of lengths */ + left = 1; + for (len = 1; len <= MAXBITS; len++) { + left <<= 1; + left -= count[len]; + if (left < 0) { + return -1; + } /* over-subscribed */ + } + if (left > 0 && (type === CODES || max !== 1)) { + return -1; /* incomplete set */ + } + + /* generate offsets into symbol table for each length for sorting */ + offs[1] = 0; + for (len = 1; len < MAXBITS; len++) { + offs[len + 1] = offs[len] + count[len]; + } + + /* sort symbols by length, by symbol order within each length */ + for (sym = 0; sym < codes; sym++) { + if (lens[lens_index + sym] !== 0) { + work[offs[lens[lens_index + sym]]++] = sym; + } + } + + /* + Create and fill in decoding tables. In this loop, the table being + filled is at next and has curr index bits. The code being used is huff + with length len. That code is converted to an index by dropping drop + bits off of the bottom. For codes where len is less than drop + curr, + those top drop + curr - len bits are incremented through all values to + fill the table with replicated entries. + + root is the number of index bits for the root table. When len exceeds + root, sub-tables are created pointed to by the root entry with an index + of the low root bits of huff. This is saved in low to check for when a + new sub-table should be started. drop is zero when the root table is + being filled, and drop is root when sub-tables are being filled. + + When a new sub-table is needed, it is necessary to look ahead in the + code lengths to determine what size sub-table is needed. The length + counts are used for this, and so count[] is decremented as codes are + entered in the tables. + + used keeps track of how many table entries have been allocated from the + provided *table space. It is checked for LENS and DIST tables against + the constants ENOUGH_LENS and ENOUGH_DISTS to guard against changes in + the initial root table size constants. See the comments in inftrees.h + for more information. + + sym increments through all symbols, and the loop terminates when + all codes of length max, i.e. all codes, have been processed. This + routine permits incomplete codes, so another loop after this one fills + in the rest of the decoding tables with invalid code markers. + */ + + /* set up for code type */ + // poor man optimization - use if-else instead of switch, + // to avoid deopts in old v8 + if (type === CODES) { + base = extra = work; /* dummy value--not used */ + end = 19; + } else if (type === LENS) { + base = lbase; + base_index -= 257; + extra = lext; + extra_index -= 257; + end = 256; + } else { /* DISTS */ + base = dbase; + extra = dext; + end = -1; + } + + /* initialize opts for loop */ + huff = 0; /* starting code */ + sym = 0; /* starting code symbol */ + len = min; /* starting code length */ + next = table_index; /* current table to fill in */ + curr = root; /* current table index bits */ + drop = 0; /* current bits to drop from code for index */ + low = -1; /* trigger new sub-table when len > root */ + used = 1 << root; /* use root table entries */ + mask = used - 1; /* mask for comparing low */ + + /* check available table space */ + if ((type === LENS && used > ENOUGH_LENS) || + (type === DISTS && used > ENOUGH_DISTS)) { + return 1; + } + + var i=0; + /* process all codes and make table entries */ + for (;;) { + i++; + /* create table entry */ + here_bits = len - drop; + if (work[sym] < end) { + here_op = 0; + here_val = work[sym]; + } + else if (work[sym] > end) { + here_op = extra[extra_index + work[sym]]; + here_val = base[base_index + work[sym]]; + } + else { + here_op = 32 + 64; /* end of block */ + here_val = 0; + } + + /* replicate for those indices with low len bits equal to huff */ + incr = 1 << (len - drop); + fill = 1 << curr; + min = fill; /* save offset to next table */ + do { + fill -= incr; + table[next + (huff >> drop) + fill] = (here_bits << 24) | (here_op << 16) | here_val |0; + } while (fill !== 0); + + /* backwards increment the len-bit code huff */ + incr = 1 << (len - 1); + while (huff & incr) { + incr >>= 1; + } + if (incr !== 0) { + huff &= incr - 1; + huff += incr; + } else { + huff = 0; + } + + /* go to next symbol, update count, len */ + sym++; + if (--count[len] === 0) { + if (len === max) { break; } + len = lens[lens_index + work[sym]]; + } + + /* create new sub-table if needed */ + if (len > root && (huff & mask) !== low) { + /* if first time, transition to sub-tables */ + if (drop === 0) { + drop = root; + } + + /* increment past last table */ + next += min; /* here min is 1 << curr */ + + /* determine length of next table */ + curr = len - drop; + left = 1 << curr; + while (curr + drop < max) { + left -= count[curr + drop]; + if (left <= 0) { break; } + curr++; + left <<= 1; + } + + /* check for enough space */ + used += 1 << curr; + if ((type === LENS && used > ENOUGH_LENS) || + (type === DISTS && used > ENOUGH_DISTS)) { + return 1; + } + + /* point entry in root table to sub-table */ + low = huff & mask; + /*table.op[low] = curr; + table.bits[low] = root; + table.val[low] = next - opts.table_index;*/ + table[low] = (root << 24) | (curr << 16) | (next - table_index) |0; + } + } + + /* fill in remaining table entry if code is incomplete (guaranteed to have + at most one remaining entry, since if the code is incomplete, the + maximum code length that was allowed to get this far is one bit) */ + if (huff !== 0) { + //table.op[next + huff] = 64; /* invalid code marker */ + //table.bits[next + huff] = len - drop; + //table.val[next + huff] = 0; + table[next + huff] = ((len - drop) << 24) | (64 << 16) |0; + } + + /* set return parameters */ + //opts.table_index += used; + opts.bits = root; + return 0; +}; + +},{"../utils/common":27}],37:[function(_dereq_,module,exports){ +'use strict'; + +module.exports = { + '2': 'need dictionary', /* Z_NEED_DICT 2 */ + '1': 'stream end', /* Z_STREAM_END 1 */ + '0': '', /* Z_OK 0 */ + '-1': 'file error', /* Z_ERRNO (-1) */ + '-2': 'stream error', /* Z_STREAM_ERROR (-2) */ + '-3': 'data error', /* Z_DATA_ERROR (-3) */ + '-4': 'insufficient memory', /* Z_MEM_ERROR (-4) */ + '-5': 'buffer error', /* Z_BUF_ERROR (-5) */ + '-6': 'incompatible version' /* Z_VERSION_ERROR (-6) */ +}; +},{}],38:[function(_dereq_,module,exports){ +'use strict'; + + +var utils = _dereq_('../utils/common'); + +/* Public constants ==========================================================*/ +/* ===========================================================================*/ + + +//var Z_FILTERED = 1; +//var Z_HUFFMAN_ONLY = 2; +//var Z_RLE = 3; +var Z_FIXED = 4; +//var Z_DEFAULT_STRATEGY = 0; + +/* Possible values of the data_type field (though see inflate()) */ +var Z_BINARY = 0; +var Z_TEXT = 1; +//var Z_ASCII = 1; // = Z_TEXT +var Z_UNKNOWN = 2; + +/*============================================================================*/ + + +function zero(buf) { var len = buf.length; while (--len >= 0) { buf[len] = 0; } } + +// From zutil.h + +var STORED_BLOCK = 0; +var STATIC_TREES = 1; +var DYN_TREES = 2; +/* The three kinds of block type */ + +var MIN_MATCH = 3; +var MAX_MATCH = 258; +/* The minimum and maximum match lengths */ + +// From deflate.h +/* =========================================================================== + * Internal compression state. + */ + +var LENGTH_CODES = 29; +/* number of length codes, not counting the special END_BLOCK code */ + +var LITERALS = 256; +/* number of literal bytes 0..255 */ + +var L_CODES = LITERALS + 1 + LENGTH_CODES; +/* number of Literal or Length codes, including the END_BLOCK code */ + +var D_CODES = 30; +/* number of distance codes */ + +var BL_CODES = 19; +/* number of codes used to transfer the bit lengths */ + +var HEAP_SIZE = 2*L_CODES + 1; +/* maximum heap size */ + +var MAX_BITS = 15; +/* All codes must not exceed MAX_BITS bits */ + +var Buf_size = 16; +/* size of bit buffer in bi_buf */ + + +/* =========================================================================== + * Constants + */ + +var MAX_BL_BITS = 7; +/* Bit length codes must not exceed MAX_BL_BITS bits */ + +var END_BLOCK = 256; +/* end of block literal code */ + +var REP_3_6 = 16; +/* repeat previous bit length 3-6 times (2 bits of repeat count) */ + +var REPZ_3_10 = 17; +/* repeat a zero length 3-10 times (3 bits of repeat count) */ + +var REPZ_11_138 = 18; +/* repeat a zero length 11-138 times (7 bits of repeat count) */ + +var extra_lbits = /* extra bits for each length code */ + [0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]; + +var extra_dbits = /* extra bits for each distance code */ + [0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]; + +var extra_blbits = /* extra bits for each bit length code */ + [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]; + +var bl_order = + [16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]; +/* The lengths of the bit length codes are sent in order of decreasing + * probability, to avoid transmitting the lengths for unused bit length codes. + */ + +/* =========================================================================== + * Local data. These are initialized only once. + */ + +// We pre-fill arrays with 0 to avoid uninitialized gaps + +var DIST_CODE_LEN = 512; /* see definition of array dist_code below */ + +// !!!! Use flat array insdead of structure, Freq = i*2, Len = i*2+1 +var static_ltree = new Array((L_CODES+2) * 2); +zero(static_ltree); +/* The static literal tree. Since the bit lengths are imposed, there is no + * need for the L_CODES extra codes used during heap construction. However + * The codes 286 and 287 are needed to build a canonical tree (see _tr_init + * below). + */ + +var static_dtree = new Array(D_CODES * 2); +zero(static_dtree); +/* The static distance tree. (Actually a trivial tree since all codes use + * 5 bits.) + */ + +var _dist_code = new Array(DIST_CODE_LEN); +zero(_dist_code); +/* Distance codes. The first 256 values correspond to the distances + * 3 .. 258, the last 256 values correspond to the top 8 bits of + * the 15 bit distances. + */ + +var _length_code = new Array(MAX_MATCH-MIN_MATCH+1); +zero(_length_code); +/* length code for each normalized match length (0 == MIN_MATCH) */ + +var base_length = new Array(LENGTH_CODES); +zero(base_length); +/* First normalized length for each code (0 = MIN_MATCH) */ + +var base_dist = new Array(D_CODES); +zero(base_dist); +/* First normalized distance for each code (0 = distance of 1) */ + + +var StaticTreeDesc = function (static_tree, extra_bits, extra_base, elems, max_length) { + + this.static_tree = static_tree; /* static tree or NULL */ + this.extra_bits = extra_bits; /* extra bits for each code or NULL */ + this.extra_base = extra_base; /* base index for extra_bits */ + this.elems = elems; /* max number of elements in the tree */ + this.max_length = max_length; /* max bit length for the codes */ + + // show if `static_tree` has data or dummy - needed for monomorphic objects + this.has_stree = static_tree && static_tree.length; +}; + + +var static_l_desc; +var static_d_desc; +var static_bl_desc; + + +var TreeDesc = function(dyn_tree, stat_desc) { + this.dyn_tree = dyn_tree; /* the dynamic tree */ + this.max_code = 0; /* largest code with non zero frequency */ + this.stat_desc = stat_desc; /* the corresponding static tree */ +}; + + + +function d_code(dist) { + return dist < 256 ? _dist_code[dist] : _dist_code[256 + (dist >>> 7)]; +} + + +/* =========================================================================== + * Output a short LSB first on the stream. + * IN assertion: there is enough room in pendingBuf. + */ +function put_short (s, w) { +// put_byte(s, (uch)((w) & 0xff)); +// put_byte(s, (uch)((ush)(w) >> 8)); + s.pending_buf[s.pending++] = (w) & 0xff; + s.pending_buf[s.pending++] = (w >>> 8) & 0xff; +} + + +/* =========================================================================== + * Send a value on a given number of bits. + * IN assertion: length <= 16 and value fits in length bits. + */ +function send_bits(s, value, length) { + if (s.bi_valid > (Buf_size - length)) { + s.bi_buf |= (value << s.bi_valid) & 0xffff; + put_short(s, s.bi_buf); + s.bi_buf = value >> (Buf_size - s.bi_valid); + s.bi_valid += length - Buf_size; + } else { + s.bi_buf |= (value << s.bi_valid) & 0xffff; + s.bi_valid += length; + } +} + + +function send_code(s, c, tree) { + send_bits(s, tree[c*2]/*.Code*/, tree[c*2 + 1]/*.Len*/); +} + + +/* =========================================================================== + * Reverse the first len bits of a code, using straightforward code (a faster + * method would use a table) + * IN assertion: 1 <= len <= 15 + */ +function bi_reverse(code, len) { + var res = 0; + do { + res |= code & 1; + code >>>= 1; + res <<= 1; + } while (--len > 0); + return res >>> 1; +} + + +/* =========================================================================== + * Flush the bit buffer, keeping at most 7 bits in it. + */ +function bi_flush(s) { + if (s.bi_valid === 16) { + put_short(s, s.bi_buf); + s.bi_buf = 0; + s.bi_valid = 0; + + } else if (s.bi_valid >= 8) { + s.pending_buf[s.pending++] = s.bi_buf & 0xff; + s.bi_buf >>= 8; + s.bi_valid -= 8; + } +} + + +/* =========================================================================== + * Compute the optimal bit lengths for a tree and update the total bit length + * for the current block. + * IN assertion: the fields freq and dad are set, heap[heap_max] and + * above are the tree nodes sorted by increasing frequency. + * OUT assertions: the field len is set to the optimal bit length, the + * array bl_count contains the frequencies for each bit length. + * The length opt_len is updated; static_len is also updated if stree is + * not null. + */ +function gen_bitlen(s, desc) +// deflate_state *s; +// tree_desc *desc; /* the tree descriptor */ +{ + var tree = desc.dyn_tree; + var max_code = desc.max_code; + var stree = desc.stat_desc.static_tree; + var has_stree = desc.stat_desc.has_stree; + var extra = desc.stat_desc.extra_bits; + var base = desc.stat_desc.extra_base; + var max_length = desc.stat_desc.max_length; + var h; /* heap index */ + var n, m; /* iterate over the tree elements */ + var bits; /* bit length */ + var xbits; /* extra bits */ + var f; /* frequency */ + var overflow = 0; /* number of elements with bit length too large */ + + for (bits = 0; bits <= MAX_BITS; bits++) { + s.bl_count[bits] = 0; + } + + /* In a first pass, compute the optimal bit lengths (which may + * overflow in the case of the bit length tree). + */ + tree[s.heap[s.heap_max]*2 + 1]/*.Len*/ = 0; /* root of the heap */ + + for (h = s.heap_max+1; h < HEAP_SIZE; h++) { + n = s.heap[h]; + bits = tree[tree[n*2 +1]/*.Dad*/ * 2 + 1]/*.Len*/ + 1; + if (bits > max_length) { + bits = max_length; + overflow++; + } + tree[n*2 + 1]/*.Len*/ = bits; + /* We overwrite tree[n].Dad which is no longer needed */ + + if (n > max_code) { continue; } /* not a leaf node */ + + s.bl_count[bits]++; + xbits = 0; + if (n >= base) { + xbits = extra[n-base]; + } + f = tree[n * 2]/*.Freq*/; + s.opt_len += f * (bits + xbits); + if (has_stree) { + s.static_len += f * (stree[n*2 + 1]/*.Len*/ + xbits); + } + } + if (overflow === 0) { return; } + + // Trace((stderr,"\nbit length overflow\n")); + /* This happens for example on obj2 and pic of the Calgary corpus */ + + /* Find the first bit length which could increase: */ + do { + bits = max_length-1; + while (s.bl_count[bits] === 0) { bits--; } + s.bl_count[bits]--; /* move one leaf down the tree */ + s.bl_count[bits+1] += 2; /* move one overflow item as its brother */ + s.bl_count[max_length]--; + /* The brother of the overflow item also moves one step up, + * but this does not affect bl_count[max_length] + */ + overflow -= 2; + } while (overflow > 0); + + /* Now recompute all bit lengths, scanning in increasing frequency. + * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all + * lengths instead of fixing only the wrong ones. This idea is taken + * from 'ar' written by Haruhiko Okumura.) + */ + for (bits = max_length; bits !== 0; bits--) { + n = s.bl_count[bits]; + while (n !== 0) { + m = s.heap[--h]; + if (m > max_code) { continue; } + if (tree[m*2 + 1]/*.Len*/ !== bits) { + // Trace((stderr,"code %d bits %d->%d\n", m, tree[m].Len, bits)); + s.opt_len += (bits - tree[m*2 + 1]/*.Len*/)*tree[m*2]/*.Freq*/; + tree[m*2 + 1]/*.Len*/ = bits; + } + n--; + } + } +} + + +/* =========================================================================== + * Generate the codes for a given tree and bit counts (which need not be + * optimal). + * IN assertion: the array bl_count contains the bit length statistics for + * the given tree and the field len is set for all tree elements. + * OUT assertion: the field code is set for all tree elements of non + * zero code length. + */ +function gen_codes(tree, max_code, bl_count) +// ct_data *tree; /* the tree to decorate */ +// int max_code; /* largest code with non zero frequency */ +// ushf *bl_count; /* number of codes at each bit length */ +{ + var next_code = new Array(MAX_BITS+1); /* next code value for each bit length */ + var code = 0; /* running code value */ + var bits; /* bit index */ + var n; /* code index */ + + /* The distribution counts are first used to generate the code values + * without bit reversal. + */ + for (bits = 1; bits <= MAX_BITS; bits++) { + next_code[bits] = code = (code + bl_count[bits-1]) << 1; + } + /* Check that the bit counts in bl_count are consistent. The last code + * must be all ones. + */ + //Assert (code + bl_count[MAX_BITS]-1 == (1< length code (0..28) */ + length = 0; + for (code = 0; code < LENGTH_CODES-1; code++) { + base_length[code] = length; + for (n = 0; n < (1< dist code (0..29) */ + dist = 0; + for (code = 0 ; code < 16; code++) { + base_dist[code] = dist; + for (n = 0; n < (1<>= 7; /* from now on, all distances are divided by 128 */ + for ( ; code < D_CODES; code++) { + base_dist[code] = dist << 7; + for (n = 0; n < (1<<(extra_dbits[code]-7)); n++) { + _dist_code[256 + dist++] = code; + } + } + //Assert (dist == 256, "tr_static_init: 256+dist != 512"); + + /* Construct the codes of the static literal tree */ + for (bits = 0; bits <= MAX_BITS; bits++) { + bl_count[bits] = 0; + } + + n = 0; + while (n <= 143) { + static_ltree[n*2 + 1]/*.Len*/ = 8; + n++; + bl_count[8]++; + } + while (n <= 255) { + static_ltree[n*2 + 1]/*.Len*/ = 9; + n++; + bl_count[9]++; + } + while (n <= 279) { + static_ltree[n*2 + 1]/*.Len*/ = 7; + n++; + bl_count[7]++; + } + while (n <= 287) { + static_ltree[n*2 + 1]/*.Len*/ = 8; + n++; + bl_count[8]++; + } + /* Codes 286 and 287 do not exist, but we must include them in the + * tree construction to get a canonical Huffman tree (longest code + * all ones) + */ + gen_codes(static_ltree, L_CODES+1, bl_count); + + /* The static distance tree is trivial: */ + for (n = 0; n < D_CODES; n++) { + static_dtree[n*2 + 1]/*.Len*/ = 5; + static_dtree[n*2]/*.Code*/ = bi_reverse(n, 5); + } + + // Now data ready and we can init static trees + static_l_desc = new StaticTreeDesc(static_ltree, extra_lbits, LITERALS+1, L_CODES, MAX_BITS); + static_d_desc = new StaticTreeDesc(static_dtree, extra_dbits, 0, D_CODES, MAX_BITS); + static_bl_desc =new StaticTreeDesc(new Array(0), extra_blbits, 0, BL_CODES, MAX_BL_BITS); + + //static_init_done = true; +} + + +/* =========================================================================== + * Initialize a new block. + */ +function init_block(s) { + var n; /* iterates over tree elements */ + + /* Initialize the trees. */ + for (n = 0; n < L_CODES; n++) { s.dyn_ltree[n*2]/*.Freq*/ = 0; } + for (n = 0; n < D_CODES; n++) { s.dyn_dtree[n*2]/*.Freq*/ = 0; } + for (n = 0; n < BL_CODES; n++) { s.bl_tree[n*2]/*.Freq*/ = 0; } + + s.dyn_ltree[END_BLOCK*2]/*.Freq*/ = 1; + s.opt_len = s.static_len = 0; + s.last_lit = s.matches = 0; +} + + +/* =========================================================================== + * Flush the bit buffer and align the output on a byte boundary + */ +function bi_windup(s) +{ + if (s.bi_valid > 8) { + put_short(s, s.bi_buf); + } else if (s.bi_valid > 0) { + //put_byte(s, (Byte)s->bi_buf); + s.pending_buf[s.pending++] = s.bi_buf; + } + s.bi_buf = 0; + s.bi_valid = 0; +} + +/* =========================================================================== + * Copy a stored block, storing first the length and its + * one's complement if requested. + */ +function copy_block(s, buf, len, header) +//DeflateState *s; +//charf *buf; /* the input data */ +//unsigned len; /* its length */ +//int header; /* true if block header must be written */ +{ + bi_windup(s); /* align on byte boundary */ + + if (header) { + put_short(s, len); + put_short(s, ~len); + } +// while (len--) { +// put_byte(s, *buf++); +// } + utils.arraySet(s.pending_buf, s.window, buf, len, s.pending); + s.pending += len; +} + +/* =========================================================================== + * Compares to subtrees, using the tree depth as tie breaker when + * the subtrees have equal frequency. This minimizes the worst case length. + */ +function smaller(tree, n, m, depth) { + var _n2 = n*2; + var _m2 = m*2; + return (tree[_n2]/*.Freq*/ < tree[_m2]/*.Freq*/ || + (tree[_n2]/*.Freq*/ === tree[_m2]/*.Freq*/ && depth[n] <= depth[m])); +} + +/* =========================================================================== + * Restore the heap property by moving down the tree starting at node k, + * exchanging a node with the smallest of its two sons if necessary, stopping + * when the heap property is re-established (each father smaller than its + * two sons). + */ +function pqdownheap(s, tree, k) +// deflate_state *s; +// ct_data *tree; /* the tree to restore */ +// int k; /* node to move down */ +{ + var v = s.heap[k]; + var j = k << 1; /* left son of k */ + while (j <= s.heap_len) { + /* Set j to the smallest of the two sons: */ + if (j < s.heap_len && + smaller(tree, s.heap[j+1], s.heap[j], s.depth)) { + j++; + } + /* Exit if v is smaller than both sons */ + if (smaller(tree, v, s.heap[j], s.depth)) { break; } + + /* Exchange v with the smallest son */ + s.heap[k] = s.heap[j]; + k = j; + + /* And continue down the tree, setting j to the left son of k */ + j <<= 1; + } + s.heap[k] = v; +} + + +// inlined manually +// var SMALLEST = 1; + +/* =========================================================================== + * Send the block data compressed using the given Huffman trees + */ +function compress_block(s, ltree, dtree) +// deflate_state *s; +// const ct_data *ltree; /* literal tree */ +// const ct_data *dtree; /* distance tree */ +{ + var dist; /* distance of matched string */ + var lc; /* match length or unmatched char (if dist == 0) */ + var lx = 0; /* running index in l_buf */ + var code; /* the code to send */ + var extra; /* number of extra bits to send */ + + if (s.last_lit !== 0) { + do { + dist = (s.pending_buf[s.d_buf + lx*2] << 8) | (s.pending_buf[s.d_buf + lx*2 + 1]); + lc = s.pending_buf[s.l_buf + lx]; + lx++; + + if (dist === 0) { + send_code(s, lc, ltree); /* send a literal byte */ + //Tracecv(isgraph(lc), (stderr," '%c' ", lc)); + } else { + /* Here, lc is the match length - MIN_MATCH */ + code = _length_code[lc]; + send_code(s, code+LITERALS+1, ltree); /* send the length code */ + extra = extra_lbits[code]; + if (extra !== 0) { + lc -= base_length[code]; + send_bits(s, lc, extra); /* send the extra length bits */ + } + dist--; /* dist is now the match distance - 1 */ + code = d_code(dist); + //Assert (code < D_CODES, "bad d_code"); + + send_code(s, code, dtree); /* send the distance code */ + extra = extra_dbits[code]; + if (extra !== 0) { + dist -= base_dist[code]; + send_bits(s, dist, extra); /* send the extra distance bits */ + } + } /* literal or match pair ? */ + + /* Check that the overlay between pending_buf and d_buf+l_buf is ok: */ + //Assert((uInt)(s->pending) < s->lit_bufsize + 2*lx, + // "pendingBuf overflow"); + + } while (lx < s.last_lit); + } + + send_code(s, END_BLOCK, ltree); +} + + +/* =========================================================================== + * Construct one Huffman tree and assigns the code bit strings and lengths. + * Update the total bit length for the current block. + * IN assertion: the field freq is set for all tree elements. + * OUT assertions: the fields len and code are set to the optimal bit length + * and corresponding code. The length opt_len is updated; static_len is + * also updated if stree is not null. The field max_code is set. + */ +function build_tree(s, desc) +// deflate_state *s; +// tree_desc *desc; /* the tree descriptor */ +{ + var tree = desc.dyn_tree; + var stree = desc.stat_desc.static_tree; + var has_stree = desc.stat_desc.has_stree; + var elems = desc.stat_desc.elems; + var n, m; /* iterate over heap elements */ + var max_code = -1; /* largest code with non zero frequency */ + var node; /* new node being created */ + + /* Construct the initial heap, with least frequent element in + * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1]. + * heap[0] is not used. + */ + s.heap_len = 0; + s.heap_max = HEAP_SIZE; + + for (n = 0; n < elems; n++) { + if (tree[n * 2]/*.Freq*/ !== 0) { + s.heap[++s.heap_len] = max_code = n; + s.depth[n] = 0; + + } else { + tree[n*2 + 1]/*.Len*/ = 0; + } + } + + /* The pkzip format requires that at least one distance code exists, + * and that at least one bit should be sent even if there is only one + * possible code. So to avoid special checks later on we force at least + * two codes of non zero frequency. + */ + while (s.heap_len < 2) { + node = s.heap[++s.heap_len] = (max_code < 2 ? ++max_code : 0); + tree[node * 2]/*.Freq*/ = 1; + s.depth[node] = 0; + s.opt_len--; + + if (has_stree) { + s.static_len -= stree[node*2 + 1]/*.Len*/; + } + /* node is 0 or 1 so it does not have extra bits */ + } + desc.max_code = max_code; + + /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree, + * establish sub-heaps of increasing lengths: + */ + for (n = (s.heap_len >> 1/*int /2*/); n >= 1; n--) { pqdownheap(s, tree, n); } + + /* Construct the Huffman tree by repeatedly combining the least two + * frequent nodes. + */ + node = elems; /* next internal node of the tree */ + do { + //pqremove(s, tree, n); /* n = node of least frequency */ + /*** pqremove ***/ + n = s.heap[1/*SMALLEST*/]; + s.heap[1/*SMALLEST*/] = s.heap[s.heap_len--]; + pqdownheap(s, tree, 1/*SMALLEST*/); + /***/ + + m = s.heap[1/*SMALLEST*/]; /* m = node of next least frequency */ + + s.heap[--s.heap_max] = n; /* keep the nodes sorted by frequency */ + s.heap[--s.heap_max] = m; + + /* Create a new node father of n and m */ + tree[node * 2]/*.Freq*/ = tree[n * 2]/*.Freq*/ + tree[m * 2]/*.Freq*/; + s.depth[node] = (s.depth[n] >= s.depth[m] ? s.depth[n] : s.depth[m]) + 1; + tree[n*2 + 1]/*.Dad*/ = tree[m*2 + 1]/*.Dad*/ = node; + + /* and insert the new node in the heap */ + s.heap[1/*SMALLEST*/] = node++; + pqdownheap(s, tree, 1/*SMALLEST*/); + + } while (s.heap_len >= 2); + + s.heap[--s.heap_max] = s.heap[1/*SMALLEST*/]; + + /* At this point, the fields freq and dad are set. We can now + * generate the bit lengths. + */ + gen_bitlen(s, desc); + + /* The field len is now set, we can generate the bit codes */ + gen_codes(tree, max_code, s.bl_count); +} + + +/* =========================================================================== + * Scan a literal or distance tree to determine the frequencies of the codes + * in the bit length tree. + */ +function scan_tree(s, tree, max_code) +// deflate_state *s; +// ct_data *tree; /* the tree to be scanned */ +// int max_code; /* and its largest code of non zero frequency */ +{ + var n; /* iterates over all tree elements */ + var prevlen = -1; /* last emitted length */ + var curlen; /* length of current code */ + + var nextlen = tree[0*2 + 1]/*.Len*/; /* length of next code */ + + var count = 0; /* repeat count of the current code */ + var max_count = 7; /* max repeat count */ + var min_count = 4; /* min repeat count */ + + if (nextlen === 0) { + max_count = 138; + min_count = 3; + } + tree[(max_code+1)*2 + 1]/*.Len*/ = 0xffff; /* guard */ + + for (n = 0; n <= max_code; n++) { + curlen = nextlen; + nextlen = tree[(n+1)*2 + 1]/*.Len*/; + + if (++count < max_count && curlen === nextlen) { + continue; + + } else if (count < min_count) { + s.bl_tree[curlen * 2]/*.Freq*/ += count; + + } else if (curlen !== 0) { + + if (curlen !== prevlen) { s.bl_tree[curlen * 2]/*.Freq*/++; } + s.bl_tree[REP_3_6*2]/*.Freq*/++; + + } else if (count <= 10) { + s.bl_tree[REPZ_3_10*2]/*.Freq*/++; + + } else { + s.bl_tree[REPZ_11_138*2]/*.Freq*/++; + } + + count = 0; + prevlen = curlen; + + if (nextlen === 0) { + max_count = 138; + min_count = 3; + + } else if (curlen === nextlen) { + max_count = 6; + min_count = 3; + + } else { + max_count = 7; + min_count = 4; + } + } +} + + +/* =========================================================================== + * Send a literal or distance tree in compressed form, using the codes in + * bl_tree. + */ +function send_tree(s, tree, max_code) +// deflate_state *s; +// ct_data *tree; /* the tree to be scanned */ +// int max_code; /* and its largest code of non zero frequency */ +{ + var n; /* iterates over all tree elements */ + var prevlen = -1; /* last emitted length */ + var curlen; /* length of current code */ + + var nextlen = tree[0*2 + 1]/*.Len*/; /* length of next code */ + + var count = 0; /* repeat count of the current code */ + var max_count = 7; /* max repeat count */ + var min_count = 4; /* min repeat count */ + + /* tree[max_code+1].Len = -1; */ /* guard already set */ + if (nextlen === 0) { + max_count = 138; + min_count = 3; + } + + for (n = 0; n <= max_code; n++) { + curlen = nextlen; + nextlen = tree[(n+1)*2 + 1]/*.Len*/; + + if (++count < max_count && curlen === nextlen) { + continue; + + } else if (count < min_count) { + do { send_code(s, curlen, s.bl_tree); } while (--count !== 0); + + } else if (curlen !== 0) { + if (curlen !== prevlen) { + send_code(s, curlen, s.bl_tree); + count--; + } + //Assert(count >= 3 && count <= 6, " 3_6?"); + send_code(s, REP_3_6, s.bl_tree); + send_bits(s, count-3, 2); + + } else if (count <= 10) { + send_code(s, REPZ_3_10, s.bl_tree); + send_bits(s, count-3, 3); + + } else { + send_code(s, REPZ_11_138, s.bl_tree); + send_bits(s, count-11, 7); + } + + count = 0; + prevlen = curlen; + if (nextlen === 0) { + max_count = 138; + min_count = 3; + + } else if (curlen === nextlen) { + max_count = 6; + min_count = 3; + + } else { + max_count = 7; + min_count = 4; + } + } +} + + +/* =========================================================================== + * Construct the Huffman tree for the bit lengths and return the index in + * bl_order of the last bit length code to send. + */ +function build_bl_tree(s) { + var max_blindex; /* index of last bit length code of non zero freq */ + + /* Determine the bit length frequencies for literal and distance trees */ + scan_tree(s, s.dyn_ltree, s.l_desc.max_code); + scan_tree(s, s.dyn_dtree, s.d_desc.max_code); + + /* Build the bit length tree: */ + build_tree(s, s.bl_desc); + /* opt_len now includes the length of the tree representations, except + * the lengths of the bit lengths codes and the 5+5+4 bits for the counts. + */ + + /* Determine the number of bit length codes to send. The pkzip format + * requires that at least 4 bit length codes be sent. (appnote.txt says + * 3 but the actual value used is 4.) + */ + for (max_blindex = BL_CODES-1; max_blindex >= 3; max_blindex--) { + if (s.bl_tree[bl_order[max_blindex]*2 + 1]/*.Len*/ !== 0) { + break; + } + } + /* Update opt_len to include the bit length tree and counts */ + s.opt_len += 3*(max_blindex+1) + 5+5+4; + //Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld", + // s->opt_len, s->static_len)); + + return max_blindex; +} + + +/* =========================================================================== + * Send the header for a block using dynamic Huffman trees: the counts, the + * lengths of the bit length codes, the literal tree and the distance tree. + * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4. + */ +function send_all_trees(s, lcodes, dcodes, blcodes) +// deflate_state *s; +// int lcodes, dcodes, blcodes; /* number of codes for each tree */ +{ + var rank; /* index in bl_order */ + + //Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, "not enough codes"); + //Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES, + // "too many codes"); + //Tracev((stderr, "\nbl counts: ")); + send_bits(s, lcodes-257, 5); /* not +255 as stated in appnote.txt */ + send_bits(s, dcodes-1, 5); + send_bits(s, blcodes-4, 4); /* not -3 as stated in appnote.txt */ + for (rank = 0; rank < blcodes; rank++) { + //Tracev((stderr, "\nbl code %2d ", bl_order[rank])); + send_bits(s, s.bl_tree[bl_order[rank]*2 + 1]/*.Len*/, 3); + } + //Tracev((stderr, "\nbl tree: sent %ld", s->bits_sent)); + + send_tree(s, s.dyn_ltree, lcodes-1); /* literal tree */ + //Tracev((stderr, "\nlit tree: sent %ld", s->bits_sent)); + + send_tree(s, s.dyn_dtree, dcodes-1); /* distance tree */ + //Tracev((stderr, "\ndist tree: sent %ld", s->bits_sent)); +} + + +/* =========================================================================== + * Check if the data type is TEXT or BINARY, using the following algorithm: + * - TEXT if the two conditions below are satisfied: + * a) There are no non-portable control characters belonging to the + * "black list" (0..6, 14..25, 28..31). + * b) There is at least one printable character belonging to the + * "white list" (9 {TAB}, 10 {LF}, 13 {CR}, 32..255). + * - BINARY otherwise. + * - The following partially-portable control characters form a + * "gray list" that is ignored in this detection algorithm: + * (7 {BEL}, 8 {BS}, 11 {VT}, 12 {FF}, 26 {SUB}, 27 {ESC}). + * IN assertion: the fields Freq of dyn_ltree are set. + */ +function detect_data_type(s) { + /* black_mask is the bit mask of black-listed bytes + * set bits 0..6, 14..25, and 28..31 + * 0xf3ffc07f = binary 11110011111111111100000001111111 + */ + var black_mask = 0xf3ffc07f; + var n; + + /* Check for non-textual ("black-listed") bytes. */ + for (n = 0; n <= 31; n++, black_mask >>>= 1) { + if ((black_mask & 1) && (s.dyn_ltree[n*2]/*.Freq*/ !== 0)) { + return Z_BINARY; + } + } + + /* Check for textual ("white-listed") bytes. */ + if (s.dyn_ltree[9 * 2]/*.Freq*/ !== 0 || s.dyn_ltree[10 * 2]/*.Freq*/ !== 0 || + s.dyn_ltree[13 * 2]/*.Freq*/ !== 0) { + return Z_TEXT; + } + for (n = 32; n < LITERALS; n++) { + if (s.dyn_ltree[n * 2]/*.Freq*/ !== 0) { + return Z_TEXT; + } + } + + /* There are no "black-listed" or "white-listed" bytes: + * this stream either is empty or has tolerated ("gray-listed") bytes only. + */ + return Z_BINARY; +} + + +var static_init_done = false; + +/* =========================================================================== + * Initialize the tree data structures for a new zlib stream. + */ +function _tr_init(s) +{ + + if (!static_init_done) { + tr_static_init(); + static_init_done = true; + } + + s.l_desc = new TreeDesc(s.dyn_ltree, static_l_desc); + s.d_desc = new TreeDesc(s.dyn_dtree, static_d_desc); + s.bl_desc = new TreeDesc(s.bl_tree, static_bl_desc); + + s.bi_buf = 0; + s.bi_valid = 0; + + /* Initialize the first block of the first file: */ + init_block(s); +} + + +/* =========================================================================== + * Send a stored block + */ +function _tr_stored_block(s, buf, stored_len, last) +//DeflateState *s; +//charf *buf; /* input block */ +//ulg stored_len; /* length of input block */ +//int last; /* one if this is the last block for a file */ +{ + send_bits(s, (STORED_BLOCK<<1)+(last ? 1 : 0), 3); /* send block type */ + copy_block(s, buf, stored_len, true); /* with header */ +} + + +/* =========================================================================== + * Send one empty static block to give enough lookahead for inflate. + * This takes 10 bits, of which 7 may remain in the bit buffer. + */ +function _tr_align(s) { + send_bits(s, STATIC_TREES<<1, 3); + send_code(s, END_BLOCK, static_ltree); + bi_flush(s); +} + + +/* =========================================================================== + * Determine the best encoding for the current block: dynamic trees, static + * trees or store, and output the encoded block to the zip file. + */ +function _tr_flush_block(s, buf, stored_len, last) +//DeflateState *s; +//charf *buf; /* input block, or NULL if too old */ +//ulg stored_len; /* length of input block */ +//int last; /* one if this is the last block for a file */ +{ + var opt_lenb, static_lenb; /* opt_len and static_len in bytes */ + var max_blindex = 0; /* index of last bit length code of non zero freq */ + + /* Build the Huffman trees unless a stored block is forced */ + if (s.level > 0) { + + /* Check if the file is binary or text */ + if (s.strm.data_type === Z_UNKNOWN) { + s.strm.data_type = detect_data_type(s); + } + + /* Construct the literal and distance trees */ + build_tree(s, s.l_desc); + // Tracev((stderr, "\nlit data: dyn %ld, stat %ld", s->opt_len, + // s->static_len)); + + build_tree(s, s.d_desc); + // Tracev((stderr, "\ndist data: dyn %ld, stat %ld", s->opt_len, + // s->static_len)); + /* At this point, opt_len and static_len are the total bit lengths of + * the compressed block data, excluding the tree representations. + */ + + /* Build the bit length tree for the above two trees, and get the index + * in bl_order of the last bit length code to send. + */ + max_blindex = build_bl_tree(s); + + /* Determine the best encoding. Compute the block lengths in bytes. */ + opt_lenb = (s.opt_len+3+7) >>> 3; + static_lenb = (s.static_len+3+7) >>> 3; + + // Tracev((stderr, "\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u ", + // opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len, + // s->last_lit)); + + if (static_lenb <= opt_lenb) { opt_lenb = static_lenb; } + + } else { + // Assert(buf != (char*)0, "lost buf"); + opt_lenb = static_lenb = stored_len + 5; /* force a stored block */ + } + + if ((stored_len+4 <= opt_lenb) && (buf !== -1)) { + /* 4: two words for the lengths */ + + /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE. + * Otherwise we can't have processed more than WSIZE input bytes since + * the last block flush, because compression would have been + * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to + * transform a block into a stored block. + */ + _tr_stored_block(s, buf, stored_len, last); + + } else if (s.strategy === Z_FIXED || static_lenb === opt_lenb) { + + send_bits(s, (STATIC_TREES<<1) + (last ? 1 : 0), 3); + compress_block(s, static_ltree, static_dtree); + + } else { + send_bits(s, (DYN_TREES<<1) + (last ? 1 : 0), 3); + send_all_trees(s, s.l_desc.max_code+1, s.d_desc.max_code+1, max_blindex+1); + compress_block(s, s.dyn_ltree, s.dyn_dtree); + } + // Assert (s->compressed_len == s->bits_sent, "bad compressed size"); + /* The above check is made mod 2^32, for files larger than 512 MB + * and uLong implemented on 32 bits. + */ + init_block(s); + + if (last) { + bi_windup(s); + } + // Tracev((stderr,"\ncomprlen %lu(%lu) ", s->compressed_len>>3, + // s->compressed_len-7*last)); +} + +/* =========================================================================== + * Save the match info and tally the frequency counts. Return true if + * the current block must be flushed. + */ +function _tr_tally(s, dist, lc) +// deflate_state *s; +// unsigned dist; /* distance of matched string */ +// unsigned lc; /* match length-MIN_MATCH or unmatched char (if dist==0) */ +{ + //var out_length, in_length, dcode; + + s.pending_buf[s.d_buf + s.last_lit * 2] = (dist >>> 8) & 0xff; + s.pending_buf[s.d_buf + s.last_lit * 2 + 1] = dist & 0xff; + + s.pending_buf[s.l_buf + s.last_lit] = lc & 0xff; + s.last_lit++; + + if (dist === 0) { + /* lc is the unmatched char */ + s.dyn_ltree[lc*2]/*.Freq*/++; + } else { + s.matches++; + /* Here, lc is the match length - MIN_MATCH */ + dist--; /* dist = match distance - 1 */ + //Assert((ush)dist < (ush)MAX_DIST(s) && + // (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) && + // (ush)d_code(dist) < (ush)D_CODES, "_tr_tally: bad match"); + + s.dyn_ltree[(_length_code[lc]+LITERALS+1) * 2]/*.Freq*/++; + s.dyn_dtree[d_code(dist) * 2]/*.Freq*/++; + } + +// (!) This block is disabled in zlib defailts, +// don't enable it for binary compatibility + +//#ifdef TRUNCATE_BLOCK +// /* Try to guess if it is profitable to stop the current block here */ +// if ((s.last_lit & 0x1fff) === 0 && s.level > 2) { +// /* Compute an upper bound for the compressed length */ +// out_length = s.last_lit*8; +// in_length = s.strstart - s.block_start; +// +// for (dcode = 0; dcode < D_CODES; dcode++) { +// out_length += s.dyn_dtree[dcode*2]/*.Freq*/ * (5 + extra_dbits[dcode]); +// } +// out_length >>>= 3; +// //Tracev((stderr,"\nlast_lit %u, in %ld, out ~%ld(%ld%%) ", +// // s->last_lit, in_length, out_length, +// // 100L - out_length*100L/in_length)); +// if (s.matches < (s.last_lit>>1)/*int /2*/ && out_length < (in_length>>1)/*int /2*/) { +// return true; +// } +// } +//#endif + + return (s.last_lit === s.lit_bufsize-1); + /* We avoid equality with lit_bufsize because of wraparound at 64K + * on 16 bit machines and because stored blocks are restricted to + * 64K-1 bytes. + */ +} + +exports._tr_init = _tr_init; +exports._tr_stored_block = _tr_stored_block; +exports._tr_flush_block = _tr_flush_block; +exports._tr_tally = _tr_tally; +exports._tr_align = _tr_align; +},{"../utils/common":27}],39:[function(_dereq_,module,exports){ +'use strict'; + + +function ZStream() { + /* next input byte */ + this.input = null; // JS specific, because we have no pointers + this.next_in = 0; + /* number of bytes available at input */ + this.avail_in = 0; + /* total number of input bytes read so far */ + this.total_in = 0; + /* next output byte should be put there */ + this.output = null; // JS specific, because we have no pointers + this.next_out = 0; + /* remaining free space at output */ + this.avail_out = 0; + /* total number of bytes output so far */ + this.total_out = 0; + /* last error message, NULL if no error */ + this.msg = ''/*Z_NULL*/; + /* not visible by applications */ + this.state = null; + /* best guess about the data type: binary or text */ + this.data_type = 2/*Z_UNKNOWN*/; + /* adler32 value of the uncompressed data */ + this.adler = 0; +} + +module.exports = ZStream; +},{}]},{},[9]) +(9) +}); + +/*! pdfmake v0.1.32, @license MIT, @link http://pdfmake.org */ +(function webpackUniversalModuleDefinition(root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else { + var a = factory(); + for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; + } +})(this, function() { +return /******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; + +/******/ // The require function +/******/ function __webpack_require__(moduleId) { + +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) +/******/ return installedModules[moduleId].exports; + +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ exports: {}, +/******/ id: moduleId, +/******/ loaded: false +/******/ }; + +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); + +/******/ // Flag the module as loaded +/******/ module.loaded = true; + +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } + + +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; + +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; + +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; + +/******/ // Load entry module and return exports +/******/ return __webpack_require__(0); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ (function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(global) {module.exports = global["pdfMake"] = __webpack_require__(1); + /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()))) + +/***/ }), +/* 1 */ +/***/ (function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(Buffer, global) {/* jslint node: true */ + /* jslint browser: true */ + 'use strict'; + + var PdfPrinter = __webpack_require__(6); + var FileSaver = __webpack_require__(300); + var saveAs = FileSaver.saveAs; + + var defaultClientFonts = { + Roboto: { + normal: 'Roboto-Regular.ttf', + bold: 'Roboto-Medium.ttf', + italics: 'Roboto-Italic.ttf', + bolditalics: 'Roboto-MediumItalic.ttf' + } + }; + + function Document(docDefinition, tableLayouts, fonts, vfs) { + this.docDefinition = docDefinition; + this.tableLayouts = tableLayouts || null; + this.fonts = fonts || defaultClientFonts; + this.vfs = vfs; + } + + function canCreatePdf() { + // Ensure the browser provides the level of support needed + if (!Object.keys) { + return false; + } + return true; + } + + Document.prototype._createDoc = function (options, callback) { + options = options || {}; + if (this.tableLayouts) { + options.tableLayouts = this.tableLayouts; + } + + var printer = new PdfPrinter(this.fonts); + printer.fs.bindFS(this.vfs); + + var doc = printer.createPdfKitDocument(this.docDefinition, options); + var chunks = []; + var result; + + doc.on('readable', function () { + var chunk; + while ((chunk = doc.read(9007199254740991)) !== null) { + chunks.push(chunk); + } + }); + doc.on('end', function () { + result = Buffer.concat(chunks); + callback(result, doc._pdfMakePages); + }); + doc.end(); + }; + + Document.prototype._getPages = function (options, cb) { + if (!cb) { + throw '_getPages is an async method and needs a callback argument'; + } + this._createDoc(options, function (ignoreBuffer, pages) { + cb(pages); + }); + }; + + Document.prototype._bufferToBlob = function (buffer) { + var blob; + try { + blob = new Blob([buffer], {type: 'application/pdf'}); + } catch (e) { + // Old browser which can't handle it without making it an byte array (ie10) + if (e.name === 'InvalidStateError') { + var byteArray = new Uint8Array(buffer); + blob = new Blob([byteArray.buffer], {type: 'application/pdf'}); + } + } + + if (!blob) { + throw 'Could not generate blob'; + } + + return blob; + }; + + Document.prototype._openWindow = function () { + // we have to open the window immediately and store the reference + // otherwise popup blockers will stop us + var win = global.open('', '_blank'); + if (win === null) { + throw 'Open PDF in new window blocked by browser'; + } + + return win; + }; + + Document.prototype._openPdf = function (options, win) { + if (!win) { + win = this._openWindow(); + } + try { + this.getBlob(function (result) { + var urlCreator = global.URL || global.webkitURL; + var pdfUrl = urlCreator.createObjectURL(result); + win.location.href = pdfUrl; + }, options); + } catch (e) { + win.close(); + throw e; + } + }; + + Document.prototype.open = function (options, win) { + options = options || {}; + options.autoPrint = false; + win = win || null; + + this._openPdf(options, win); + }; + + + Document.prototype.print = function (options, win) { + options = options || {}; + options.autoPrint = true; + win = win || null; + + this._openPdf(options, win); + }; + + Document.prototype.download = function (defaultFileName, cb, options) { + if (typeof defaultFileName === 'function') { + cb = defaultFileName; + defaultFileName = null; + } + + defaultFileName = defaultFileName || 'file.pdf'; + this.getBlob(function (result) { + saveAs(result, defaultFileName); + + if (typeof cb === 'function') { + cb(); + } + }, options); + }; + + Document.prototype.getBase64 = function (cb, options) { + if (!cb) { + throw 'getBase64 is an async method and needs a callback argument'; + } + this.getBuffer(function (buffer) { + cb(buffer.toString('base64')); + }, options); + }; + + Document.prototype.getDataUrl = function (cb, options) { + if (!cb) { + throw 'getDataUrl is an async method and needs a callback argument'; + } + this.getBuffer(function (buffer) { + cb('data:application/pdf;base64,' + buffer.toString('base64')); + }, options); + }; + + Document.prototype.getBlob = function (cb, options) { + if (!cb) { + throw 'getBlob is an async method and needs a callback argument'; + } + var that = this; + this.getBuffer(function (result) { + var blob = that._bufferToBlob(result); + cb(blob); + }, options); + }; + + Document.prototype.getBuffer = function (cb, options) { + if (!cb) { + throw 'getBuffer is an async method and needs a callback argument'; + } + this._createDoc(options, function (buffer) { + cb(buffer); + }); + }; + + module.exports = { + createPdf: function (docDefinition) { + if (!canCreatePdf()) { + throw 'Your browser does not provide the level of support needed'; + } + return new Document(docDefinition, global.pdfMake.tableLayouts, global.pdfMake.fonts, global.pdfMake.vfs); + } + }; + + /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2).Buffer, (function() { return this; }()))) + +/***/ }), +/* 2 */ +/***/ (function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(global) {/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */ + /* eslint-disable no-proto */ + + 'use strict' + + var base64 = __webpack_require__(3) + var ieee754 = __webpack_require__(4) + var isArray = __webpack_require__(5) + + exports.Buffer = Buffer + exports.SlowBuffer = SlowBuffer + exports.INSPECT_MAX_BYTES = 50 + + /** + * If `Buffer.TYPED_ARRAY_SUPPORT`: + * === true Use Uint8Array implementation (fastest) + * === false Use Object implementation (most compatible, even IE6) + * + * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, + * Opera 11.6+, iOS 4.2+. + * + * Due to various browser bugs, sometimes the Object implementation will be used even + * when the browser supports typed arrays. + * + * Note: + * + * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances, + * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438. + * + * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function. + * + * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of + * incorrect length in some situations. + + * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they + * get the Object implementation, which is slower but behaves correctly. + */ + Buffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined + ? global.TYPED_ARRAY_SUPPORT + : typedArraySupport() + + /* + * Export kMaxLength after typed array support is determined. + */ + exports.kMaxLength = kMaxLength() + + function typedArraySupport () { + try { + var arr = new Uint8Array(1) + arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }} + return arr.foo() === 42 && // typed array instances can be augmented + typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray` + arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray` + } catch (e) { + return false + } + } + + function kMaxLength () { + return Buffer.TYPED_ARRAY_SUPPORT + ? 0x7fffffff + : 0x3fffffff + } + + function createBuffer (that, length) { + if (kMaxLength() < length) { + throw new RangeError('Invalid typed array length') + } + if (Buffer.TYPED_ARRAY_SUPPORT) { + // Return an augmented `Uint8Array` instance, for best performance + that = new Uint8Array(length) + that.__proto__ = Buffer.prototype + } else { + // Fallback: Return an object instance of the Buffer class + if (that === null) { + that = new Buffer(length) + } + that.length = length + } + + return that + } + + /** + * The Buffer constructor returns instances of `Uint8Array` that have their + * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of + * `Uint8Array`, so the returned instances will have all the node `Buffer` methods + * and the `Uint8Array` methods. Square bracket notation works as expected -- it + * returns a single octet. + * + * The `Uint8Array` prototype remains unmodified. + */ + + function Buffer (arg, encodingOrOffset, length) { + if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) { + return new Buffer(arg, encodingOrOffset, length) + } + + // Common case. + if (typeof arg === 'number') { + if (typeof encodingOrOffset === 'string') { + throw new Error( + 'If encoding is specified then the first argument must be a string' + ) + } + return allocUnsafe(this, arg) + } + return from(this, arg, encodingOrOffset, length) + } + + Buffer.poolSize = 8192 // not used by this implementation + + // TODO: Legacy, not needed anymore. Remove in next major version. + Buffer._augment = function (arr) { + arr.__proto__ = Buffer.prototype + return arr + } + + function from (that, value, encodingOrOffset, length) { + if (typeof value === 'number') { + throw new TypeError('"value" argument must not be a number') + } + + if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) { + return fromArrayBuffer(that, value, encodingOrOffset, length) + } + + if (typeof value === 'string') { + return fromString(that, value, encodingOrOffset) + } + + return fromObject(that, value) + } + + /** + * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError + * if value is a number. + * Buffer.from(str[, encoding]) + * Buffer.from(array) + * Buffer.from(buffer) + * Buffer.from(arrayBuffer[, byteOffset[, length]]) + **/ + Buffer.from = function (value, encodingOrOffset, length) { + return from(null, value, encodingOrOffset, length) + } + + if (Buffer.TYPED_ARRAY_SUPPORT) { + Buffer.prototype.__proto__ = Uint8Array.prototype + Buffer.__proto__ = Uint8Array + if (typeof Symbol !== 'undefined' && Symbol.species && + Buffer[Symbol.species] === Buffer) { + // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97 + Object.defineProperty(Buffer, Symbol.species, { + value: null, + configurable: true + }) + } + } + + function assertSize (size) { + if (typeof size !== 'number') { + throw new TypeError('"size" argument must be a number') + } else if (size < 0) { + throw new RangeError('"size" argument must not be negative') + } + } + + function alloc (that, size, fill, encoding) { + assertSize(size) + if (size <= 0) { + return createBuffer(that, size) + } + if (fill !== undefined) { + // Only pay attention to encoding if it's a string. This + // prevents accidentally sending in a number that would + // be interpretted as a start offset. + return typeof encoding === 'string' + ? createBuffer(that, size).fill(fill, encoding) + : createBuffer(that, size).fill(fill) + } + return createBuffer(that, size) + } + + /** + * Creates a new filled Buffer instance. + * alloc(size[, fill[, encoding]]) + **/ + Buffer.alloc = function (size, fill, encoding) { + return alloc(null, size, fill, encoding) + } + + function allocUnsafe (that, size) { + assertSize(size) + that = createBuffer(that, size < 0 ? 0 : checked(size) | 0) + if (!Buffer.TYPED_ARRAY_SUPPORT) { + for (var i = 0; i < size; ++i) { + that[i] = 0 + } + } + return that + } + + /** + * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. + * */ + Buffer.allocUnsafe = function (size) { + return allocUnsafe(null, size) + } + /** + * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. + */ + Buffer.allocUnsafeSlow = function (size) { + return allocUnsafe(null, size) + } + + function fromString (that, string, encoding) { + if (typeof encoding !== 'string' || encoding === '') { + encoding = 'utf8' + } + + if (!Buffer.isEncoding(encoding)) { + throw new TypeError('"encoding" must be a valid string encoding') + } + + var length = byteLength(string, encoding) | 0 + that = createBuffer(that, length) + + var actual = that.write(string, encoding) + + if (actual !== length) { + // Writing a hex string, for example, that contains invalid characters will + // cause everything after the first invalid character to be ignored. (e.g. + // 'abxxcd' will be treated as 'ab') + that = that.slice(0, actual) + } + + return that + } + + function fromArrayLike (that, array) { + var length = array.length < 0 ? 0 : checked(array.length) | 0 + that = createBuffer(that, length) + for (var i = 0; i < length; i += 1) { + that[i] = array[i] & 255 + } + return that + } + + function fromArrayBuffer (that, array, byteOffset, length) { + array.byteLength // this throws if `array` is not a valid ArrayBuffer + + if (byteOffset < 0 || array.byteLength < byteOffset) { + throw new RangeError('\'offset\' is out of bounds') + } + + if (array.byteLength < byteOffset + (length || 0)) { + throw new RangeError('\'length\' is out of bounds') + } + + if (byteOffset === undefined && length === undefined) { + array = new Uint8Array(array) + } else if (length === undefined) { + array = new Uint8Array(array, byteOffset) + } else { + array = new Uint8Array(array, byteOffset, length) + } + + if (Buffer.TYPED_ARRAY_SUPPORT) { + // Return an augmented `Uint8Array` instance, for best performance + that = array + that.__proto__ = Buffer.prototype + } else { + // Fallback: Return an object instance of the Buffer class + that = fromArrayLike(that, array) + } + return that + } + + function fromObject (that, obj) { + if (Buffer.isBuffer(obj)) { + var len = checked(obj.length) | 0 + that = createBuffer(that, len) + + if (that.length === 0) { + return that + } + + obj.copy(that, 0, 0, len) + return that + } + + if (obj) { + if ((typeof ArrayBuffer !== 'undefined' && + obj.buffer instanceof ArrayBuffer) || 'length' in obj) { + if (typeof obj.length !== 'number' || isnan(obj.length)) { + return createBuffer(that, 0) + } + return fromArrayLike(that, obj) + } + + if (obj.type === 'Buffer' && isArray(obj.data)) { + return fromArrayLike(that, obj.data) + } + } + + throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.') + } + + function checked (length) { + // Note: cannot use `length < kMaxLength()` here because that fails when + // length is NaN (which is otherwise coerced to zero.) + if (length >= kMaxLength()) { + throw new RangeError('Attempt to allocate Buffer larger than maximum ' + + 'size: 0x' + kMaxLength().toString(16) + ' bytes') + } + return length | 0 + } + + function SlowBuffer (length) { + if (+length != length) { // eslint-disable-line eqeqeq + length = 0 + } + return Buffer.alloc(+length) + } + + Buffer.isBuffer = function isBuffer (b) { + return !!(b != null && b._isBuffer) + } + + Buffer.compare = function compare (a, b) { + if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { + throw new TypeError('Arguments must be Buffers') + } + + if (a === b) return 0 + + var x = a.length + var y = b.length + + for (var i = 0, len = Math.min(x, y); i < len; ++i) { + if (a[i] !== b[i]) { + x = a[i] + y = b[i] + break + } + } + + if (x < y) return -1 + if (y < x) return 1 + return 0 + } + + Buffer.isEncoding = function isEncoding (encoding) { + switch (String(encoding).toLowerCase()) { + case 'hex': + case 'utf8': + case 'utf-8': + case 'ascii': + case 'latin1': + case 'binary': + case 'base64': + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return true + default: + return false + } + } + + Buffer.concat = function concat (list, length) { + if (!isArray(list)) { + throw new TypeError('"list" argument must be an Array of Buffers') + } + + if (list.length === 0) { + return Buffer.alloc(0) + } + + var i + if (length === undefined) { + length = 0 + for (i = 0; i < list.length; ++i) { + length += list[i].length + } + } + + var buffer = Buffer.allocUnsafe(length) + var pos = 0 + for (i = 0; i < list.length; ++i) { + var buf = list[i] + if (!Buffer.isBuffer(buf)) { + throw new TypeError('"list" argument must be an Array of Buffers') + } + buf.copy(buffer, pos) + pos += buf.length + } + return buffer + } + + function byteLength (string, encoding) { + if (Buffer.isBuffer(string)) { + return string.length + } + if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' && + (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) { + return string.byteLength + } + if (typeof string !== 'string') { + string = '' + string + } + + var len = string.length + if (len === 0) return 0 + + // Use a for loop to avoid recursion + var loweredCase = false + for (;;) { + switch (encoding) { + case 'ascii': + case 'latin1': + case 'binary': + return len + case 'utf8': + case 'utf-8': + case undefined: + return utf8ToBytes(string).length + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return len * 2 + case 'hex': + return len >>> 1 + case 'base64': + return base64ToBytes(string).length + default: + if (loweredCase) return utf8ToBytes(string).length // assume utf8 + encoding = ('' + encoding).toLowerCase() + loweredCase = true + } + } + } + Buffer.byteLength = byteLength + + function slowToString (encoding, start, end) { + var loweredCase = false + + // No need to verify that "this.length <= MAX_UINT32" since it's a read-only + // property of a typed array. + + // This behaves neither like String nor Uint8Array in that we set start/end + // to their upper/lower bounds if the value passed is out of range. + // undefined is handled specially as per ECMA-262 6th Edition, + // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. + if (start === undefined || start < 0) { + start = 0 + } + // Return early if start > this.length. Done here to prevent potential uint32 + // coercion fail below. + if (start > this.length) { + return '' + } + + if (end === undefined || end > this.length) { + end = this.length + } + + if (end <= 0) { + return '' + } + + // Force coersion to uint32. This will also coerce falsey/NaN values to 0. + end >>>= 0 + start >>>= 0 + + if (end <= start) { + return '' + } + + if (!encoding) encoding = 'utf8' + + while (true) { + switch (encoding) { + case 'hex': + return hexSlice(this, start, end) + + case 'utf8': + case 'utf-8': + return utf8Slice(this, start, end) + + case 'ascii': + return asciiSlice(this, start, end) + + case 'latin1': + case 'binary': + return latin1Slice(this, start, end) + + case 'base64': + return base64Slice(this, start, end) + + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return utf16leSlice(this, start, end) + + default: + if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) + encoding = (encoding + '').toLowerCase() + loweredCase = true + } + } + } + + // The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect + // Buffer instances. + Buffer.prototype._isBuffer = true + + function swap (b, n, m) { + var i = b[n] + b[n] = b[m] + b[m] = i + } + + Buffer.prototype.swap16 = function swap16 () { + var len = this.length + if (len % 2 !== 0) { + throw new RangeError('Buffer size must be a multiple of 16-bits') + } + for (var i = 0; i < len; i += 2) { + swap(this, i, i + 1) + } + return this + } + + Buffer.prototype.swap32 = function swap32 () { + var len = this.length + if (len % 4 !== 0) { + throw new RangeError('Buffer size must be a multiple of 32-bits') + } + for (var i = 0; i < len; i += 4) { + swap(this, i, i + 3) + swap(this, i + 1, i + 2) + } + return this + } + + Buffer.prototype.swap64 = function swap64 () { + var len = this.length + if (len % 8 !== 0) { + throw new RangeError('Buffer size must be a multiple of 64-bits') + } + for (var i = 0; i < len; i += 8) { + swap(this, i, i + 7) + swap(this, i + 1, i + 6) + swap(this, i + 2, i + 5) + swap(this, i + 3, i + 4) + } + return this + } + + Buffer.prototype.toString = function toString () { + var length = this.length | 0 + if (length === 0) return '' + if (arguments.length === 0) return utf8Slice(this, 0, length) + return slowToString.apply(this, arguments) + } + + Buffer.prototype.equals = function equals (b) { + if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer') + if (this === b) return true + return Buffer.compare(this, b) === 0 + } + + Buffer.prototype.inspect = function inspect () { + var str = '' + var max = exports.INSPECT_MAX_BYTES + if (this.length > 0) { + str = this.toString('hex', 0, max).match(/.{2}/g).join(' ') + if (this.length > max) str += ' ... ' + } + return '' + } + + Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) { + if (!Buffer.isBuffer(target)) { + throw new TypeError('Argument must be a Buffer') + } + + if (start === undefined) { + start = 0 + } + if (end === undefined) { + end = target ? target.length : 0 + } + if (thisStart === undefined) { + thisStart = 0 + } + if (thisEnd === undefined) { + thisEnd = this.length + } + + if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) { + throw new RangeError('out of range index') + } + + if (thisStart >= thisEnd && start >= end) { + return 0 + } + if (thisStart >= thisEnd) { + return -1 + } + if (start >= end) { + return 1 + } + + start >>>= 0 + end >>>= 0 + thisStart >>>= 0 + thisEnd >>>= 0 + + if (this === target) return 0 + + var x = thisEnd - thisStart + var y = end - start + var len = Math.min(x, y) + + var thisCopy = this.slice(thisStart, thisEnd) + var targetCopy = target.slice(start, end) + + for (var i = 0; i < len; ++i) { + if (thisCopy[i] !== targetCopy[i]) { + x = thisCopy[i] + y = targetCopy[i] + break + } + } + + if (x < y) return -1 + if (y < x) return 1 + return 0 + } + + // Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, + // OR the last index of `val` in `buffer` at offset <= `byteOffset`. + // + // Arguments: + // - buffer - a Buffer to search + // - val - a string, Buffer, or number + // - byteOffset - an index into `buffer`; will be clamped to an int32 + // - encoding - an optional encoding, relevant is val is a string + // - dir - true for indexOf, false for lastIndexOf + function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) { + // Empty buffer means no match + if (buffer.length === 0) return -1 + + // Normalize byteOffset + if (typeof byteOffset === 'string') { + encoding = byteOffset + byteOffset = 0 + } else if (byteOffset > 0x7fffffff) { + byteOffset = 0x7fffffff + } else if (byteOffset < -0x80000000) { + byteOffset = -0x80000000 + } + byteOffset = +byteOffset // Coerce to Number. + if (isNaN(byteOffset)) { + // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer + byteOffset = dir ? 0 : (buffer.length - 1) + } + + // Normalize byteOffset: negative offsets start from the end of the buffer + if (byteOffset < 0) byteOffset = buffer.length + byteOffset + if (byteOffset >= buffer.length) { + if (dir) return -1 + else byteOffset = buffer.length - 1 + } else if (byteOffset < 0) { + if (dir) byteOffset = 0 + else return -1 + } + + // Normalize val + if (typeof val === 'string') { + val = Buffer.from(val, encoding) + } + + // Finally, search either indexOf (if dir is true) or lastIndexOf + if (Buffer.isBuffer(val)) { + // Special case: looking for empty string/buffer always fails + if (val.length === 0) { + return -1 + } + return arrayIndexOf(buffer, val, byteOffset, encoding, dir) + } else if (typeof val === 'number') { + val = val & 0xFF // Search for a byte value [0-255] + if (Buffer.TYPED_ARRAY_SUPPORT && + typeof Uint8Array.prototype.indexOf === 'function') { + if (dir) { + return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset) + } else { + return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset) + } + } + return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir) + } + + throw new TypeError('val must be string, number or Buffer') + } + + function arrayIndexOf (arr, val, byteOffset, encoding, dir) { + var indexSize = 1 + var arrLength = arr.length + var valLength = val.length + + if (encoding !== undefined) { + encoding = String(encoding).toLowerCase() + if (encoding === 'ucs2' || encoding === 'ucs-2' || + encoding === 'utf16le' || encoding === 'utf-16le') { + if (arr.length < 2 || val.length < 2) { + return -1 + } + indexSize = 2 + arrLength /= 2 + valLength /= 2 + byteOffset /= 2 + } + } + + function read (buf, i) { + if (indexSize === 1) { + return buf[i] + } else { + return buf.readUInt16BE(i * indexSize) + } + } + + var i + if (dir) { + var foundIndex = -1 + for (i = byteOffset; i < arrLength; i++) { + if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) { + if (foundIndex === -1) foundIndex = i + if (i - foundIndex + 1 === valLength) return foundIndex * indexSize + } else { + if (foundIndex !== -1) i -= i - foundIndex + foundIndex = -1 + } + } + } else { + if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength + for (i = byteOffset; i >= 0; i--) { + var found = true + for (var j = 0; j < valLength; j++) { + if (read(arr, i + j) !== read(val, j)) { + found = false + break + } + } + if (found) return i + } + } + + return -1 + } + + Buffer.prototype.includes = function includes (val, byteOffset, encoding) { + return this.indexOf(val, byteOffset, encoding) !== -1 + } + + Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) { + return bidirectionalIndexOf(this, val, byteOffset, encoding, true) + } + + Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) { + return bidirectionalIndexOf(this, val, byteOffset, encoding, false) + } + + function hexWrite (buf, string, offset, length) { + offset = Number(offset) || 0 + var remaining = buf.length - offset + if (!length) { + length = remaining + } else { + length = Number(length) + if (length > remaining) { + length = remaining + } + } + + // must be an even number of digits + var strLen = string.length + if (strLen % 2 !== 0) throw new TypeError('Invalid hex string') + + if (length > strLen / 2) { + length = strLen / 2 + } + for (var i = 0; i < length; ++i) { + var parsed = parseInt(string.substr(i * 2, 2), 16) + if (isNaN(parsed)) return i + buf[offset + i] = parsed + } + return i + } + + function utf8Write (buf, string, offset, length) { + return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length) + } + + function asciiWrite (buf, string, offset, length) { + return blitBuffer(asciiToBytes(string), buf, offset, length) + } + + function latin1Write (buf, string, offset, length) { + return asciiWrite(buf, string, offset, length) + } + + function base64Write (buf, string, offset, length) { + return blitBuffer(base64ToBytes(string), buf, offset, length) + } + + function ucs2Write (buf, string, offset, length) { + return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length) + } + + Buffer.prototype.write = function write (string, offset, length, encoding) { + // Buffer#write(string) + if (offset === undefined) { + encoding = 'utf8' + length = this.length + offset = 0 + // Buffer#write(string, encoding) + } else if (length === undefined && typeof offset === 'string') { + encoding = offset + length = this.length + offset = 0 + // Buffer#write(string, offset[, length][, encoding]) + } else if (isFinite(offset)) { + offset = offset | 0 + if (isFinite(length)) { + length = length | 0 + if (encoding === undefined) encoding = 'utf8' + } else { + encoding = length + length = undefined + } + // legacy write(string, encoding, offset, length) - remove in v0.13 + } else { + throw new Error( + 'Buffer.write(string, encoding, offset[, length]) is no longer supported' + ) + } + + var remaining = this.length - offset + if (length === undefined || length > remaining) length = remaining + + if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) { + throw new RangeError('Attempt to write outside buffer bounds') + } + + if (!encoding) encoding = 'utf8' + + var loweredCase = false + for (;;) { + switch (encoding) { + case 'hex': + return hexWrite(this, string, offset, length) + + case 'utf8': + case 'utf-8': + return utf8Write(this, string, offset, length) + + case 'ascii': + return asciiWrite(this, string, offset, length) + + case 'latin1': + case 'binary': + return latin1Write(this, string, offset, length) + + case 'base64': + // Warning: maxLength not taken into account in base64Write + return base64Write(this, string, offset, length) + + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return ucs2Write(this, string, offset, length) + + default: + if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding) + encoding = ('' + encoding).toLowerCase() + loweredCase = true + } + } + } + + Buffer.prototype.toJSON = function toJSON () { + return { + type: 'Buffer', + data: Array.prototype.slice.call(this._arr || this, 0) + } + } + + function base64Slice (buf, start, end) { + if (start === 0 && end === buf.length) { + return base64.fromByteArray(buf) + } else { + return base64.fromByteArray(buf.slice(start, end)) + } + } + + function utf8Slice (buf, start, end) { + end = Math.min(buf.length, end) + var res = [] + + var i = start + while (i < end) { + var firstByte = buf[i] + var codePoint = null + var bytesPerSequence = (firstByte > 0xEF) ? 4 + : (firstByte > 0xDF) ? 3 + : (firstByte > 0xBF) ? 2 + : 1 + + if (i + bytesPerSequence <= end) { + var secondByte, thirdByte, fourthByte, tempCodePoint + + switch (bytesPerSequence) { + case 1: + if (firstByte < 0x80) { + codePoint = firstByte + } + break + case 2: + secondByte = buf[i + 1] + if ((secondByte & 0xC0) === 0x80) { + tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F) + if (tempCodePoint > 0x7F) { + codePoint = tempCodePoint + } + } + break + case 3: + secondByte = buf[i + 1] + thirdByte = buf[i + 2] + if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) { + tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F) + if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) { + codePoint = tempCodePoint + } + } + break + case 4: + secondByte = buf[i + 1] + thirdByte = buf[i + 2] + fourthByte = buf[i + 3] + if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) { + tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F) + if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) { + codePoint = tempCodePoint + } + } + } + } + + if (codePoint === null) { + // we did not generate a valid codePoint so insert a + // replacement char (U+FFFD) and advance only 1 byte + codePoint = 0xFFFD + bytesPerSequence = 1 + } else if (codePoint > 0xFFFF) { + // encode to utf16 (surrogate pair dance) + codePoint -= 0x10000 + res.push(codePoint >>> 10 & 0x3FF | 0xD800) + codePoint = 0xDC00 | codePoint & 0x3FF + } + + res.push(codePoint) + i += bytesPerSequence + } + + return decodeCodePointsArray(res) + } + + // Based on http://stackoverflow.com/a/22747272/680742, the browser with + // the lowest limit is Chrome, with 0x10000 args. + // We go 1 magnitude less, for safety + var MAX_ARGUMENTS_LENGTH = 0x1000 + + function decodeCodePointsArray (codePoints) { + var len = codePoints.length + if (len <= MAX_ARGUMENTS_LENGTH) { + return String.fromCharCode.apply(String, codePoints) // avoid extra slice() + } + + // Decode in chunks to avoid "call stack size exceeded". + var res = '' + var i = 0 + while (i < len) { + res += String.fromCharCode.apply( + String, + codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH) + ) + } + return res + } + + function asciiSlice (buf, start, end) { + var ret = '' + end = Math.min(buf.length, end) + + for (var i = start; i < end; ++i) { + ret += String.fromCharCode(buf[i] & 0x7F) + } + return ret + } + + function latin1Slice (buf, start, end) { + var ret = '' + end = Math.min(buf.length, end) + + for (var i = start; i < end; ++i) { + ret += String.fromCharCode(buf[i]) + } + return ret + } + + function hexSlice (buf, start, end) { + var len = buf.length + + if (!start || start < 0) start = 0 + if (!end || end < 0 || end > len) end = len + + var out = '' + for (var i = start; i < end; ++i) { + out += toHex(buf[i]) + } + return out + } + + function utf16leSlice (buf, start, end) { + var bytes = buf.slice(start, end) + var res = '' + for (var i = 0; i < bytes.length; i += 2) { + res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256) + } + return res + } + + Buffer.prototype.slice = function slice (start, end) { + var len = this.length + start = ~~start + end = end === undefined ? len : ~~end + + if (start < 0) { + start += len + if (start < 0) start = 0 + } else if (start > len) { + start = len + } + + if (end < 0) { + end += len + if (end < 0) end = 0 + } else if (end > len) { + end = len + } + + if (end < start) end = start + + var newBuf + if (Buffer.TYPED_ARRAY_SUPPORT) { + newBuf = this.subarray(start, end) + newBuf.__proto__ = Buffer.prototype + } else { + var sliceLen = end - start + newBuf = new Buffer(sliceLen, undefined) + for (var i = 0; i < sliceLen; ++i) { + newBuf[i] = this[i + start] + } + } + + return newBuf + } + + /* + * Need to make sure that buffer isn't trying to write out of bounds. + */ + function checkOffset (offset, ext, length) { + if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint') + if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length') + } + + Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var val = this[offset] + var mul = 1 + var i = 0 + while (++i < byteLength && (mul *= 0x100)) { + val += this[offset + i] * mul + } + + return val + } + + Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) { + checkOffset(offset, byteLength, this.length) + } + + var val = this[offset + --byteLength] + var mul = 1 + while (byteLength > 0 && (mul *= 0x100)) { + val += this[offset + --byteLength] * mul + } + + return val + } + + Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) { + if (!noAssert) checkOffset(offset, 1, this.length) + return this[offset] + } + + Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + return this[offset] | (this[offset + 1] << 8) + } + + Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + return (this[offset] << 8) | this[offset + 1] + } + + Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return ((this[offset]) | + (this[offset + 1] << 8) | + (this[offset + 2] << 16)) + + (this[offset + 3] * 0x1000000) + } + + Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset] * 0x1000000) + + ((this[offset + 1] << 16) | + (this[offset + 2] << 8) | + this[offset + 3]) + } + + Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var val = this[offset] + var mul = 1 + var i = 0 + while (++i < byteLength && (mul *= 0x100)) { + val += this[offset + i] * mul + } + mul *= 0x80 + + if (val >= mul) val -= Math.pow(2, 8 * byteLength) + + return val + } + + Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) { + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) checkOffset(offset, byteLength, this.length) + + var i = byteLength + var mul = 1 + var val = this[offset + --i] + while (i > 0 && (mul *= 0x100)) { + val += this[offset + --i] * mul + } + mul *= 0x80 + + if (val >= mul) val -= Math.pow(2, 8 * byteLength) + + return val + } + + Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) { + if (!noAssert) checkOffset(offset, 1, this.length) + if (!(this[offset] & 0x80)) return (this[offset]) + return ((0xff - this[offset] + 1) * -1) + } + + Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + var val = this[offset] | (this[offset + 1] << 8) + return (val & 0x8000) ? val | 0xFFFF0000 : val + } + + Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 2, this.length) + var val = this[offset + 1] | (this[offset] << 8) + return (val & 0x8000) ? val | 0xFFFF0000 : val + } + + Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset]) | + (this[offset + 1] << 8) | + (this[offset + 2] << 16) | + (this[offset + 3] << 24) + } + + Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + + return (this[offset] << 24) | + (this[offset + 1] << 16) | + (this[offset + 2] << 8) | + (this[offset + 3]) + } + + Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + return ieee754.read(this, offset, true, 23, 4) + } + + Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 4, this.length) + return ieee754.read(this, offset, false, 23, 4) + } + + Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 8, this.length) + return ieee754.read(this, offset, true, 52, 8) + } + + Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) { + if (!noAssert) checkOffset(offset, 8, this.length) + return ieee754.read(this, offset, false, 52, 8) + } + + function checkInt (buf, value, offset, ext, max, min) { + if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance') + if (value > max || value < min) throw new RangeError('"value" argument is out of bounds') + if (offset + ext > buf.length) throw new RangeError('Index out of range') + } + + Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) { + var maxBytes = Math.pow(2, 8 * byteLength) - 1 + checkInt(this, value, offset, byteLength, maxBytes, 0) + } + + var mul = 1 + var i = 0 + this[offset] = value & 0xFF + while (++i < byteLength && (mul *= 0x100)) { + this[offset + i] = (value / mul) & 0xFF + } + + return offset + byteLength + } + + Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + byteLength = byteLength | 0 + if (!noAssert) { + var maxBytes = Math.pow(2, 8 * byteLength) - 1 + checkInt(this, value, offset, byteLength, maxBytes, 0) + } + + var i = byteLength - 1 + var mul = 1 + this[offset + i] = value & 0xFF + while (--i >= 0 && (mul *= 0x100)) { + this[offset + i] = (value / mul) & 0xFF + } + + return offset + byteLength + } + + Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0) + if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) + this[offset] = (value & 0xff) + return offset + 1 + } + + function objectWriteUInt16 (buf, value, offset, littleEndian) { + if (value < 0) value = 0xffff + value + 1 + for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) { + buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>> + (littleEndian ? i : 1 - i) * 8 + } + } + + Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value & 0xff) + this[offset + 1] = (value >>> 8) + } else { + objectWriteUInt16(this, value, offset, true) + } + return offset + 2 + } + + Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 8) + this[offset + 1] = (value & 0xff) + } else { + objectWriteUInt16(this, value, offset, false) + } + return offset + 2 + } + + function objectWriteUInt32 (buf, value, offset, littleEndian) { + if (value < 0) value = 0xffffffff + value + 1 + for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) { + buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff + } + } + + Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset + 3] = (value >>> 24) + this[offset + 2] = (value >>> 16) + this[offset + 1] = (value >>> 8) + this[offset] = (value & 0xff) + } else { + objectWriteUInt32(this, value, offset, true) + } + return offset + 4 + } + + Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 24) + this[offset + 1] = (value >>> 16) + this[offset + 2] = (value >>> 8) + this[offset + 3] = (value & 0xff) + } else { + objectWriteUInt32(this, value, offset, false) + } + return offset + 4 + } + + Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) { + var limit = Math.pow(2, 8 * byteLength - 1) + + checkInt(this, value, offset, byteLength, limit - 1, -limit) + } + + var i = 0 + var mul = 1 + var sub = 0 + this[offset] = value & 0xFF + while (++i < byteLength && (mul *= 0x100)) { + if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { + sub = 1 + } + this[offset + i] = ((value / mul) >> 0) - sub & 0xFF + } + + return offset + byteLength + } + + Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) { + var limit = Math.pow(2, 8 * byteLength - 1) + + checkInt(this, value, offset, byteLength, limit - 1, -limit) + } + + var i = byteLength - 1 + var mul = 1 + var sub = 0 + this[offset + i] = value & 0xFF + while (--i >= 0 && (mul *= 0x100)) { + if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { + sub = 1 + } + this[offset + i] = ((value / mul) >> 0) - sub & 0xFF + } + + return offset + byteLength + } + + Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80) + if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value) + if (value < 0) value = 0xff + value + 1 + this[offset] = (value & 0xff) + return offset + 1 + } + + Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value & 0xff) + this[offset + 1] = (value >>> 8) + } else { + objectWriteUInt16(this, value, offset, true) + } + return offset + 2 + } + + Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 8) + this[offset + 1] = (value & 0xff) + } else { + objectWriteUInt16(this, value, offset, false) + } + return offset + 2 + } + + Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value & 0xff) + this[offset + 1] = (value >>> 8) + this[offset + 2] = (value >>> 16) + this[offset + 3] = (value >>> 24) + } else { + objectWriteUInt32(this, value, offset, true) + } + return offset + 4 + } + + Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) { + value = +value + offset = offset | 0 + if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000) + if (value < 0) value = 0xffffffff + value + 1 + if (Buffer.TYPED_ARRAY_SUPPORT) { + this[offset] = (value >>> 24) + this[offset + 1] = (value >>> 16) + this[offset + 2] = (value >>> 8) + this[offset + 3] = (value & 0xff) + } else { + objectWriteUInt32(this, value, offset, false) + } + return offset + 4 + } + + function checkIEEE754 (buf, value, offset, ext, max, min) { + if (offset + ext > buf.length) throw new RangeError('Index out of range') + if (offset < 0) throw new RangeError('Index out of range') + } + + function writeFloat (buf, value, offset, littleEndian, noAssert) { + if (!noAssert) { + checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38) + } + ieee754.write(buf, value, offset, littleEndian, 23, 4) + return offset + 4 + } + + Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) { + return writeFloat(this, value, offset, true, noAssert) + } + + Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) { + return writeFloat(this, value, offset, false, noAssert) + } + + function writeDouble (buf, value, offset, littleEndian, noAssert) { + if (!noAssert) { + checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308) + } + ieee754.write(buf, value, offset, littleEndian, 52, 8) + return offset + 8 + } + + Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) { + return writeDouble(this, value, offset, true, noAssert) + } + + Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) { + return writeDouble(this, value, offset, false, noAssert) + } + + // copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) + Buffer.prototype.copy = function copy (target, targetStart, start, end) { + if (!start) start = 0 + if (!end && end !== 0) end = this.length + if (targetStart >= target.length) targetStart = target.length + if (!targetStart) targetStart = 0 + if (end > 0 && end < start) end = start + + // Copy 0 bytes; we're done + if (end === start) return 0 + if (target.length === 0 || this.length === 0) return 0 + + // Fatal error conditions + if (targetStart < 0) { + throw new RangeError('targetStart out of bounds') + } + if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds') + if (end < 0) throw new RangeError('sourceEnd out of bounds') + + // Are we oob? + if (end > this.length) end = this.length + if (target.length - targetStart < end - start) { + end = target.length - targetStart + start + } + + var len = end - start + var i + + if (this === target && start < targetStart && targetStart < end) { + // descending copy from end + for (i = len - 1; i >= 0; --i) { + target[i + targetStart] = this[i + start] + } + } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) { + // ascending copy from start + for (i = 0; i < len; ++i) { + target[i + targetStart] = this[i + start] + } + } else { + Uint8Array.prototype.set.call( + target, + this.subarray(start, start + len), + targetStart + ) + } + + return len + } + + // Usage: + // buffer.fill(number[, offset[, end]]) + // buffer.fill(buffer[, offset[, end]]) + // buffer.fill(string[, offset[, end]][, encoding]) + Buffer.prototype.fill = function fill (val, start, end, encoding) { + // Handle string cases: + if (typeof val === 'string') { + if (typeof start === 'string') { + encoding = start + start = 0 + end = this.length + } else if (typeof end === 'string') { + encoding = end + end = this.length + } + if (val.length === 1) { + var code = val.charCodeAt(0) + if (code < 256) { + val = code + } + } + if (encoding !== undefined && typeof encoding !== 'string') { + throw new TypeError('encoding must be a string') + } + if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) { + throw new TypeError('Unknown encoding: ' + encoding) + } + } else if (typeof val === 'number') { + val = val & 255 + } + + // Invalid ranges are not set to a default, so can range check early. + if (start < 0 || this.length < start || this.length < end) { + throw new RangeError('Out of range index') + } + + if (end <= start) { + return this + } + + start = start >>> 0 + end = end === undefined ? this.length : end >>> 0 + + if (!val) val = 0 + + var i + if (typeof val === 'number') { + for (i = start; i < end; ++i) { + this[i] = val + } + } else { + var bytes = Buffer.isBuffer(val) + ? val + : utf8ToBytes(new Buffer(val, encoding).toString()) + var len = bytes.length + for (i = 0; i < end - start; ++i) { + this[i + start] = bytes[i % len] + } + } + + return this + } + + // HELPER FUNCTIONS + // ================ + + var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g + + function base64clean (str) { + // Node strips out invalid characters like \n and \t from the string, base64-js does not + str = stringtrim(str).replace(INVALID_BASE64_RE, '') + // Node converts strings with length < 2 to '' + if (str.length < 2) return '' + // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not + while (str.length % 4 !== 0) { + str = str + '=' + } + return str + } + + function stringtrim (str) { + if (str.trim) return str.trim() + return str.replace(/^\s+|\s+$/g, '') + } + + function toHex (n) { + if (n < 16) return '0' + n.toString(16) + return n.toString(16) + } + + function utf8ToBytes (string, units) { + units = units || Infinity + var codePoint + var length = string.length + var leadSurrogate = null + var bytes = [] + + for (var i = 0; i < length; ++i) { + codePoint = string.charCodeAt(i) + + // is surrogate component + if (codePoint > 0xD7FF && codePoint < 0xE000) { + // last char was a lead + if (!leadSurrogate) { + // no lead yet + if (codePoint > 0xDBFF) { + // unexpected trail + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + continue + } else if (i + 1 === length) { + // unpaired lead + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + continue + } + + // valid lead + leadSurrogate = codePoint + + continue + } + + // 2 leads in a row + if (codePoint < 0xDC00) { + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + leadSurrogate = codePoint + continue + } + + // valid surrogate pair + codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000 + } else if (leadSurrogate) { + // valid bmp char, but last char was a lead + if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD) + } + + leadSurrogate = null + + // encode utf8 + if (codePoint < 0x80) { + if ((units -= 1) < 0) break + bytes.push(codePoint) + } else if (codePoint < 0x800) { + if ((units -= 2) < 0) break + bytes.push( + codePoint >> 0x6 | 0xC0, + codePoint & 0x3F | 0x80 + ) + } else if (codePoint < 0x10000) { + if ((units -= 3) < 0) break + bytes.push( + codePoint >> 0xC | 0xE0, + codePoint >> 0x6 & 0x3F | 0x80, + codePoint & 0x3F | 0x80 + ) + } else if (codePoint < 0x110000) { + if ((units -= 4) < 0) break + bytes.push( + codePoint >> 0x12 | 0xF0, + codePoint >> 0xC & 0x3F | 0x80, + codePoint >> 0x6 & 0x3F | 0x80, + codePoint & 0x3F | 0x80 + ) + } else { + throw new Error('Invalid code point') + } + } + + return bytes + } + + function asciiToBytes (str) { + var byteArray = [] + for (var i = 0; i < str.length; ++i) { + // Node's code seems to be doing this and not & 0x7F.. + byteArray.push(str.charCodeAt(i) & 0xFF) + } + return byteArray + } + + function utf16leToBytes (str, units) { + var c, hi, lo + var byteArray = [] + for (var i = 0; i < str.length; ++i) { + if ((units -= 2) < 0) break + + c = str.charCodeAt(i) + hi = c >> 8 + lo = c % 256 + byteArray.push(lo) + byteArray.push(hi) + } + + return byteArray + } + + function base64ToBytes (str) { + return base64.toByteArray(base64clean(str)) + } + + function blitBuffer (src, dst, offset, length) { + for (var i = 0; i < length; ++i) { + if ((i + offset >= dst.length) || (i >= src.length)) break + dst[i + offset] = src[i] + } + return i + } + + function isnan (val) { + return val !== val // eslint-disable-line no-self-compare + } + + /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()))) + +/***/ }), +/* 3 */ +/***/ (function(module, exports) { + + 'use strict' + + exports.byteLength = byteLength + exports.toByteArray = toByteArray + exports.fromByteArray = fromByteArray + + var lookup = [] + var revLookup = [] + var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array + + var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' + for (var i = 0, len = code.length; i < len; ++i) { + lookup[i] = code[i] + revLookup[code.charCodeAt(i)] = i + } + + revLookup['-'.charCodeAt(0)] = 62 + revLookup['_'.charCodeAt(0)] = 63 + + function placeHoldersCount (b64) { + var len = b64.length + if (len % 4 > 0) { + throw new Error('Invalid string. Length must be a multiple of 4') + } + + // the number of equal signs (place holders) + // if there are two placeholders, than the two characters before it + // represent one byte + // if there is only one, then the three characters before it represent 2 bytes + // this is just a cheap hack to not do indexOf twice + return b64[len - 2] === '=' ? 2 : b64[len - 1] === '=' ? 1 : 0 + } + + function byteLength (b64) { + // base64 is 4/3 + up to two characters of the original data + return (b64.length * 3 / 4) - placeHoldersCount(b64) + } + + function toByteArray (b64) { + var i, l, tmp, placeHolders, arr + var len = b64.length + placeHolders = placeHoldersCount(b64) + + arr = new Arr((len * 3 / 4) - placeHolders) + + // if there are placeholders, only get up to the last complete 4 chars + l = placeHolders > 0 ? len - 4 : len + + var L = 0 + + for (i = 0; i < l; i += 4) { + tmp = (revLookup[b64.charCodeAt(i)] << 18) | (revLookup[b64.charCodeAt(i + 1)] << 12) | (revLookup[b64.charCodeAt(i + 2)] << 6) | revLookup[b64.charCodeAt(i + 3)] + arr[L++] = (tmp >> 16) & 0xFF + arr[L++] = (tmp >> 8) & 0xFF + arr[L++] = tmp & 0xFF + } + + if (placeHolders === 2) { + tmp = (revLookup[b64.charCodeAt(i)] << 2) | (revLookup[b64.charCodeAt(i + 1)] >> 4) + arr[L++] = tmp & 0xFF + } else if (placeHolders === 1) { + tmp = (revLookup[b64.charCodeAt(i)] << 10) | (revLookup[b64.charCodeAt(i + 1)] << 4) | (revLookup[b64.charCodeAt(i + 2)] >> 2) + arr[L++] = (tmp >> 8) & 0xFF + arr[L++] = tmp & 0xFF + } + + return arr + } + + function tripletToBase64 (num) { + return lookup[num >> 18 & 0x3F] + lookup[num >> 12 & 0x3F] + lookup[num >> 6 & 0x3F] + lookup[num & 0x3F] + } + + function encodeChunk (uint8, start, end) { + var tmp + var output = [] + for (var i = start; i < end; i += 3) { + tmp = (uint8[i] << 16) + (uint8[i + 1] << 8) + (uint8[i + 2]) + output.push(tripletToBase64(tmp)) + } + return output.join('') + } + + function fromByteArray (uint8) { + var tmp + var len = uint8.length + var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes + var output = '' + var parts = [] + var maxChunkLength = 16383 // must be multiple of 3 + + // go through the array every three bytes, we'll deal with trailing stuff later + for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { + parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength))) + } + + // pad the end with zeros, but make sure to not forget the extra bytes + if (extraBytes === 1) { + tmp = uint8[len - 1] + output += lookup[tmp >> 2] + output += lookup[(tmp << 4) & 0x3F] + output += '==' + } else if (extraBytes === 2) { + tmp = (uint8[len - 2] << 8) + (uint8[len - 1]) + output += lookup[tmp >> 10] + output += lookup[(tmp >> 4) & 0x3F] + output += lookup[(tmp << 2) & 0x3F] + output += '=' + } + + parts.push(output) + + return parts.join('') + } + + +/***/ }), +/* 4 */ +/***/ (function(module, exports) { + + exports.read = function (buffer, offset, isLE, mLen, nBytes) { + var e, m + var eLen = nBytes * 8 - mLen - 1 + var eMax = (1 << eLen) - 1 + var eBias = eMax >> 1 + var nBits = -7 + var i = isLE ? (nBytes - 1) : 0 + var d = isLE ? -1 : 1 + var s = buffer[offset + i] + + i += d + + e = s & ((1 << (-nBits)) - 1) + s >>= (-nBits) + nBits += eLen + for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {} + + m = e & ((1 << (-nBits)) - 1) + e >>= (-nBits) + nBits += mLen + for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {} + + if (e === 0) { + e = 1 - eBias + } else if (e === eMax) { + return m ? NaN : ((s ? -1 : 1) * Infinity) + } else { + m = m + Math.pow(2, mLen) + e = e - eBias + } + return (s ? -1 : 1) * m * Math.pow(2, e - mLen) + } + + exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { + var e, m, c + var eLen = nBytes * 8 - mLen - 1 + var eMax = (1 << eLen) - 1 + var eBias = eMax >> 1 + var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0) + var i = isLE ? 0 : (nBytes - 1) + var d = isLE ? 1 : -1 + var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0 + + value = Math.abs(value) + + if (isNaN(value) || value === Infinity) { + m = isNaN(value) ? 1 : 0 + e = eMax + } else { + e = Math.floor(Math.log(value) / Math.LN2) + if (value * (c = Math.pow(2, -e)) < 1) { + e-- + c *= 2 + } + if (e + eBias >= 1) { + value += rt / c + } else { + value += rt * Math.pow(2, 1 - eBias) + } + if (value * c >= 2) { + e++ + c /= 2 + } + + if (e + eBias >= eMax) { + m = 0 + e = eMax + } else if (e + eBias >= 1) { + m = (value * c - 1) * Math.pow(2, mLen) + e = e + eBias + } else { + m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen) + e = 0 + } + } + + for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {} + + e = (e << mLen) | m + eLen += mLen + for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {} + + buffer[offset + i - d] |= s * 128 + } + + +/***/ }), +/* 5 */ +/***/ (function(module, exports) { + + var toString = {}.toString; + + module.exports = Array.isArray || function (arr) { + return toString.call(arr) == '[object Array]'; + }; + + +/***/ }), +/* 6 */ +/***/ (function(module, exports, __webpack_require__) { + + /* jslint node: true */ + 'use strict'; + + var _ = __webpack_require__(7); + var FontProvider = __webpack_require__(9); + var LayoutBuilder = __webpack_require__(10); + var PdfKit = __webpack_require__(30); + var sizes = __webpack_require__(297); + var ImageMeasure = __webpack_require__(298); + var textDecorator = __webpack_require__(299); + var TextTools = __webpack_require__(15); + + _.noConflict(); + + //////////////////////////////////////// + // PdfPrinter + + /** + * @class Creates an instance of a PdfPrinter which turns document definition into a pdf + * + * @param {Object} fontDescriptors font definition dictionary + * + * @example + * var fontDescriptors = { + * Roboto: { + * normal: 'fonts/Roboto-Regular.ttf', + * bold: 'fonts/Roboto-Medium.ttf', + * italics: 'fonts/Roboto-Italic.ttf', + * bolditalics: 'fonts/Roboto-MediumItalic.ttf' + * } + * }; + * + * var printer = new PdfPrinter(fontDescriptors); + */ + function PdfPrinter(fontDescriptors) { + this.fontDescriptors = fontDescriptors; + } + + /** + * Executes layout engine for the specified document and renders it into a pdfkit document + * ready to be saved. + * + * @param {Object} docDefinition document definition + * @param {Object} docDefinition.content an array describing the pdf structure (for more information take a look at the examples in the /examples folder) + * @param {Object} [docDefinition.defaultStyle] default (implicit) style definition + * @param {Object} [docDefinition.styles] dictionary defining all styles which can be used in the document + * @param {Object} [docDefinition.pageSize] page size (pdfkit units, A4 dimensions by default) + * @param {Number} docDefinition.pageSize.width width + * @param {Number} docDefinition.pageSize.height height + * @param {Object} [docDefinition.pageMargins] page margins (pdfkit units) + * @param {Number} docDefinition.maxPagesNumber maximum number of pages to render + * + * @example + * + * var docDefinition = { + * info: { + * title: 'awesome Document', + * author: 'john doe', + * subject: 'subject of document', + * keywords: 'keywords for document', + * }, + * content: [ + * 'First paragraph', + * 'Second paragraph, this time a little bit longer', + * { text: 'Third paragraph, slightly bigger font size', fontSize: 20 }, + * { text: 'Another paragraph using a named style', style: 'header' }, + * { text: ['playing with ', 'inlines' ] }, + * { text: ['and ', { text: 'restyling ', bold: true }, 'them'] }, + * ], + * styles: { + * header: { fontSize: 30, bold: true } + * } + * } + * + * var pdfKitDoc = printer.createPdfKitDocument(docDefinition); + * + * pdfKitDoc.pipe(fs.createWriteStream('sample.pdf')); + * pdfKitDoc.end(); + * + * @return {Object} a pdfKit document object which can be saved or encode to data-url + */ + PdfPrinter.prototype.createPdfKitDocument = function (docDefinition, options) { + options = options || {}; + + var pageSize = fixPageSize(docDefinition.pageSize, docDefinition.pageOrientation); + + this.pdfKitDoc = new PdfKit({size: [pageSize.width, pageSize.height], autoFirstPage: false, compress: docDefinition.compress || true}); + setMetadata(docDefinition, this.pdfKitDoc); + + this.fontProvider = new FontProvider(this.fontDescriptors, this.pdfKitDoc); + + docDefinition.images = docDefinition.images || {}; + + var builder = new LayoutBuilder(pageSize, fixPageMargins(docDefinition.pageMargins || 40), new ImageMeasure(this.pdfKitDoc, docDefinition.images)); + + registerDefaultTableLayouts(builder); + if (options.tableLayouts) { + builder.registerTableLayouts(options.tableLayouts); + } + + var pages = builder.layoutDocument(docDefinition.content, this.fontProvider, docDefinition.styles || {}, docDefinition.defaultStyle || {fontSize: 12, font: 'Roboto'}, docDefinition.background, docDefinition.header, docDefinition.footer, docDefinition.images, docDefinition.watermark, docDefinition.pageBreakBefore); + var maxNumberPages = docDefinition.maxPagesNumber || -1; + if (typeof maxNumberPages === 'number' && maxNumberPages > -1) { + pages = pages.slice(0, maxNumberPages); + } + + // if pageSize.height is set to Infinity, calculate the actual height of the page that + // was laid out using the height of each of the items in the page. + if (pageSize.height === Infinity) { + var pageHeight = calculatePageHeight(pages, docDefinition.pageMargins); + this.pdfKitDoc.options.size = [pageSize.width, pageHeight]; + } + + renderPages(pages, this.fontProvider, this.pdfKitDoc, options.progressCallback); + + if (options.autoPrint) { + var printActionRef = this.pdfKitDoc.ref({ + Type: 'Action', + S: 'Named', + N: 'Print' + }); + this.pdfKitDoc._root.data.OpenAction = printActionRef; + printActionRef.end(); + } + return this.pdfKitDoc; + }; + + function setMetadata(docDefinition, pdfKitDoc) { + // PDF standard has these properties reserved: Title, Author, Subject, Keywords, + // Creator, Producer, CreationDate, ModDate, Trapped. + // To keep the pdfmake api consistent, the info field are defined lowercase. + // Custom properties don't contain a space. + function standardizePropertyKey(key) { + var standardProperties = ['Title', 'Author', 'Subject', 'Keywords', + 'Creator', 'Producer', 'CreationDate', 'ModDate', 'Trapped']; + var standardizedKey = key.charAt(0).toUpperCase() + key.slice(1); + if (standardProperties.indexOf(standardizedKey) !== -1) { + return standardizedKey; + } + + return key.replace(/\s+/g, ''); + } + + pdfKitDoc.info.Producer = 'pdfmake'; + pdfKitDoc.info.Creator = 'pdfmake'; + + if (docDefinition.info) { + for (var key in docDefinition.info) { + var value = docDefinition.info[key]; + if (value) { + key = standardizePropertyKey(key); + pdfKitDoc.info[key] = value; + } + } + } + } + + function calculatePageHeight(pages, margins) { + function getItemHeight(item) { + if (typeof item.item.getHeight === 'function') { + return item.item.getHeight(); + } else if (item.item._height) { + return item.item._height; + } else { + // TODO: add support for next item types + return 0; + } + } + + var fixedMargins = fixPageMargins(margins || 40); + var height = fixedMargins.top + fixedMargins.bottom; + pages.forEach(function (page) { + page.items.forEach(function (item) { + height += getItemHeight(item); + }); + }); + return height; + } + + function fixPageSize(pageSize, pageOrientation) { + function isNeedSwapPageSizes(pageOrientation) { + if (typeof pageOrientation === 'string' || pageOrientation instanceof String) { + pageOrientation = pageOrientation.toLowerCase(); + return ((pageOrientation === 'portrait') && (size.width > size.height)) || + ((pageOrientation === 'landscape') && (size.width < size.height)); + } + return false; + } + + // if pageSize.height is set to auto, set the height to infinity so there are no page breaks. + if (pageSize && pageSize.height === 'auto') { + pageSize.height = Infinity; + } + + var size = pageSize2widthAndHeight(pageSize || 'A4'); + if (isNeedSwapPageSizes(pageOrientation)) { // swap page sizes + size = {width: size.height, height: size.width}; + } + size.orientation = size.width > size.height ? 'landscape' : 'portrait'; + return size; + } + + function fixPageMargins(margin) { + if (!margin) { + return null; + } + + if (typeof margin === 'number' || margin instanceof Number) { + margin = {left: margin, right: margin, top: margin, bottom: margin}; + } else if (Array.isArray(margin)) { + if (margin.length === 2) { + margin = {left: margin[0], top: margin[1], right: margin[0], bottom: margin[1]}; + } else if (margin.length === 4) { + margin = {left: margin[0], top: margin[1], right: margin[2], bottom: margin[3]}; + } else { + throw 'Invalid pageMargins definition'; + } + } + + return margin; + } + + function registerDefaultTableLayouts(layoutBuilder) { + /*jshint unused: false */ + layoutBuilder.registerTableLayouts({ + noBorders: { + hLineWidth: function (i) { + return 0; + }, + vLineWidth: function (i) { + return 0; + }, + paddingLeft: function (i) { + return i && 4 || 0; + }, + paddingRight: function (i, node) { + return (i < node.table.widths.length - 1) ? 4 : 0; + } + }, + headerLineOnly: { + hLineWidth: function (i, node) { + if (i === 0 || i === node.table.body.length) { + return 0; + } + return (i === node.table.headerRows) ? 2 : 0; + }, + vLineWidth: function (i) { + return 0; + }, + paddingLeft: function (i) { + return i === 0 ? 0 : 8; + }, + paddingRight: function (i, node) { + return (i === node.table.widths.length - 1) ? 0 : 8; + } + }, + lightHorizontalLines: { + hLineWidth: function (i, node) { + if (i === 0 || i === node.table.body.length) { + return 0; + } + return (i === node.table.headerRows) ? 2 : 1; + }, + vLineWidth: function (i) { + return 0; + }, + hLineColor: function (i) { + return i === 1 ? 'black' : '#aaa'; + }, + paddingLeft: function (i) { + return i === 0 ? 0 : 8; + }, + paddingRight: function (i, node) { + return (i === node.table.widths.length - 1) ? 0 : 8; + } + } + }); + } + + function pageSize2widthAndHeight(pageSize) { + if (typeof pageSize === 'string' || pageSize instanceof String) { + var size = sizes[pageSize.toUpperCase()]; + if (!size) { + throw 'Page size ' + pageSize + ' not recognized'; + } + return {width: size[0], height: size[1]}; + } + + return pageSize; + } + + function updatePageOrientationInOptions(currentPage, pdfKitDoc) { + var previousPageOrientation = pdfKitDoc.options.size[0] > pdfKitDoc.options.size[1] ? 'landscape' : 'portrait'; + + if (currentPage.pageSize.orientation !== previousPageOrientation) { + var width = pdfKitDoc.options.size[0]; + var height = pdfKitDoc.options.size[1]; + pdfKitDoc.options.size = [height, width]; + } + } + + function renderPages(pages, fontProvider, pdfKitDoc, progressCallback) { + pdfKitDoc._pdfMakePages = pages; + pdfKitDoc.addPage(); + + var totalItems = progressCallback && _.sumBy(pages, function (page) { + return page.items.length; + }); + var renderedItems = 0; + progressCallback = progressCallback || function () {}; + + for (var i = 0; i < pages.length; i++) { + if (i > 0) { + updatePageOrientationInOptions(pages[i], pdfKitDoc); + pdfKitDoc.addPage(pdfKitDoc.options); + } + + var page = pages[i]; + for (var ii = 0, il = page.items.length; ii < il; ii++) { + var item = page.items[ii]; + switch (item.type) { + case 'vector': + renderVector(item.item, pdfKitDoc); + break; + case 'line': + renderLine(item.item, item.item.x, item.item.y, pdfKitDoc); + break; + case 'image': + renderImage(item.item, item.item.x, item.item.y, pdfKitDoc); + break; + } + renderedItems++; + progressCallback(renderedItems / totalItems); + } + if (page.watermark) { + renderWatermark(page, pdfKitDoc); + } + } + } + + function renderLine(line, x, y, pdfKitDoc) { + if (line._tocItemNode) { + var newWidth; + var diffWidth; + var textTools = new TextTools(null); + + line.inlines[0].text = line._tocItemNode.positions[0].pageNumber.toString(); + newWidth = textTools.widthOfString(line.inlines[0].text, line.inlines[0].font, line.inlines[0].fontSize, line.inlines[0].characterSpacing); + diffWidth = line.inlines[0].width - newWidth; + line.inlines[0].width = newWidth; + + switch (line.inlines[0].alignment) { + case 'right': + line.inlines[0].x += diffWidth; + break; + case 'center': + line.inlines[0].x += diffWidth / 2; + break; + } + } + + x = x || 0; + y = y || 0; + + var lineHeight = line.getHeight(); + var ascenderHeight = line.getAscenderHeight(); + var descent = lineHeight - ascenderHeight; + + textDecorator.drawBackground(line, x, y, pdfKitDoc); + + //TODO: line.optimizeInlines(); + for (var i = 0, l = line.inlines.length; i < l; i++) { + var inline = line.inlines[i]; + var shiftToBaseline = lineHeight - ((inline.font.ascender / 1000) * inline.fontSize) - descent; + + pdfKitDoc.fill(inline.color || 'black'); + + pdfKitDoc._font = inline.font; + pdfKitDoc.fontSize(inline.fontSize); + pdfKitDoc.text(inline.text, x + inline.x, y + shiftToBaseline, { + lineBreak: false, + textWidth: inline.width, + characterSpacing: inline.characterSpacing, + wordCount: 1, + link: inline.link + }); + + if (inline.linkToPage) { + var _ref = pdfKitDoc.ref({Type: 'Action', S: 'GoTo', D: [inline.linkToPage, 0, 0]}).end(); + pdfKitDoc.annotate(x + inline.x, y + shiftToBaseline, inline.width, inline.height, {Subtype: 'Link', Dest: [inline.linkToPage - 1, 'XYZ', null, null, null]}); + } + + } + + textDecorator.drawDecorations(line, x, y, pdfKitDoc); + } + + function renderWatermark(page, pdfKitDoc) { + var watermark = page.watermark; + + pdfKitDoc.fill(watermark.color); + pdfKitDoc.opacity(watermark.opacity); + + pdfKitDoc.save(); + + var angle = Math.atan2(pdfKitDoc.page.height, pdfKitDoc.page.width) * -180 / Math.PI; + pdfKitDoc.rotate(angle, {origin: [pdfKitDoc.page.width / 2, pdfKitDoc.page.height / 2]}); + + var x = pdfKitDoc.page.width / 2 - watermark.size.size.width / 2; + var y = pdfKitDoc.page.height / 2 - watermark.size.size.height / 4; + + pdfKitDoc._font = watermark.font; + pdfKitDoc.fontSize(watermark.size.fontSize); + pdfKitDoc.text(watermark.text, x, y, {lineBreak: false}); + + pdfKitDoc.restore(); + } + + function renderVector(vector, pdfKitDoc) { + //TODO: pdf optimization (there's no need to write all properties everytime) + pdfKitDoc.lineWidth(vector.lineWidth || 1); + if (vector.dash) { + pdfKitDoc.dash(vector.dash.length, {space: vector.dash.space || vector.dash.length, phase: vector.dash.phase || 0}); + } else { + pdfKitDoc.undash(); + } + pdfKitDoc.lineJoin(vector.lineJoin || 'miter'); + + //TODO: clipping + + switch (vector.type) { + case 'ellipse': + pdfKitDoc.ellipse(vector.x, vector.y, vector.r1, vector.r2); + break; + case 'rect': + if (vector.r) { + pdfKitDoc.roundedRect(vector.x, vector.y, vector.w, vector.h, vector.r); + } else { + pdfKitDoc.rect(vector.x, vector.y, vector.w, vector.h); + } + + if (vector.linearGradient) { + var gradient = pdfKitDoc.linearGradient(vector.x, vector.y, vector.x + vector.w, vector.y); + var step = 1 / (vector.linearGradient.length - 1); + + for (var i = 0; i < vector.linearGradient.length; i++) { + gradient.stop(i * step, vector.linearGradient[i]); + } + + vector.color = gradient; + } + break; + case 'line': + pdfKitDoc.moveTo(vector.x1, vector.y1); + pdfKitDoc.lineTo(vector.x2, vector.y2); + break; + case 'polyline': + if (vector.points.length === 0) { + break; + } + + pdfKitDoc.moveTo(vector.points[0].x, vector.points[0].y); + for (var i = 1, l = vector.points.length; i < l; i++) { + pdfKitDoc.lineTo(vector.points[i].x, vector.points[i].y); + } + + if (vector.points.length > 1) { + var p1 = vector.points[0]; + var pn = vector.points[vector.points.length - 1]; + + if (vector.closePath || p1.x === pn.x && p1.y === pn.y) { + pdfKitDoc.closePath(); + } + } + break; + case 'path': + pdfKitDoc.path(vector.d); + break; + } + + if (vector.color && vector.lineColor) { + pdfKitDoc.fillColor(vector.color, vector.fillOpacity || 1); + pdfKitDoc.strokeColor(vector.lineColor, vector.strokeOpacity || 1); + pdfKitDoc.fillAndStroke(); + } else if (vector.color) { + pdfKitDoc.fillColor(vector.color, vector.fillOpacity || 1); + pdfKitDoc.fill(); + } else { + pdfKitDoc.strokeColor(vector.lineColor || 'black', vector.strokeOpacity || 1); + pdfKitDoc.stroke(); + } + } + + function renderImage(image, x, y, pdfKitDoc) { + pdfKitDoc.image(image.image, image.x, image.y, {width: image._width, height: image._height}); + if (image.link) { + pdfKitDoc.link(image.x, image.y, image._width, image._height, image.link); + } + } + + module.exports = PdfPrinter; + + + /* temporary browser extension */ + PdfPrinter.prototype.fs = __webpack_require__(56); + + +/***/ }), +/* 7 */ +/***/ (function(module, exports, __webpack_require__) { + + var __WEBPACK_AMD_DEFINE_RESULT__;/* WEBPACK VAR INJECTION */(function(global, module) {/** + * @license + * Lodash + * Copyright JS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + */ + ;(function() { + + /** Used as a safe reference for `undefined` in pre-ES5 environments. */ + var undefined; + + /** Used as the semantic version number. */ + var VERSION = '4.17.4'; + + /** Used as the size to enable large array optimizations. */ + var LARGE_ARRAY_SIZE = 200; + + /** Error message constants. */ + var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.', + FUNC_ERROR_TEXT = 'Expected a function'; + + /** Used to stand-in for `undefined` hash values. */ + var HASH_UNDEFINED = '__lodash_hash_undefined__'; + + /** Used as the maximum memoize cache size. */ + var MAX_MEMOIZE_SIZE = 500; + + /** Used as the internal argument placeholder. */ + var PLACEHOLDER = '__lodash_placeholder__'; + + /** Used to compose bitmasks for cloning. */ + var CLONE_DEEP_FLAG = 1, + CLONE_FLAT_FLAG = 2, + CLONE_SYMBOLS_FLAG = 4; + + /** Used to compose bitmasks for value comparisons. */ + var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + + /** Used to compose bitmasks for function metadata. */ + var WRAP_BIND_FLAG = 1, + WRAP_BIND_KEY_FLAG = 2, + WRAP_CURRY_BOUND_FLAG = 4, + WRAP_CURRY_FLAG = 8, + WRAP_CURRY_RIGHT_FLAG = 16, + WRAP_PARTIAL_FLAG = 32, + WRAP_PARTIAL_RIGHT_FLAG = 64, + WRAP_ARY_FLAG = 128, + WRAP_REARG_FLAG = 256, + WRAP_FLIP_FLAG = 512; + + /** Used as default options for `_.truncate`. */ + var DEFAULT_TRUNC_LENGTH = 30, + DEFAULT_TRUNC_OMISSION = '...'; + + /** Used to detect hot functions by number of calls within a span of milliseconds. */ + var HOT_COUNT = 800, + HOT_SPAN = 16; + + /** Used to indicate the type of lazy iteratees. */ + var LAZY_FILTER_FLAG = 1, + LAZY_MAP_FLAG = 2, + LAZY_WHILE_FLAG = 3; + + /** Used as references for various `Number` constants. */ + var INFINITY = 1 / 0, + MAX_SAFE_INTEGER = 9007199254740991, + MAX_INTEGER = 1.7976931348623157e+308, + NAN = 0 / 0; + + /** Used as references for the maximum length and index of an array. */ + var MAX_ARRAY_LENGTH = 4294967295, + MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1, + HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1; + + /** Used to associate wrap methods with their bit flags. */ + var wrapFlags = [ + ['ary', WRAP_ARY_FLAG], + ['bind', WRAP_BIND_FLAG], + ['bindKey', WRAP_BIND_KEY_FLAG], + ['curry', WRAP_CURRY_FLAG], + ['curryRight', WRAP_CURRY_RIGHT_FLAG], + ['flip', WRAP_FLIP_FLAG], + ['partial', WRAP_PARTIAL_FLAG], + ['partialRight', WRAP_PARTIAL_RIGHT_FLAG], + ['rearg', WRAP_REARG_FLAG] + ]; + + /** `Object#toString` result references. */ + var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + asyncTag = '[object AsyncFunction]', + boolTag = '[object Boolean]', + dateTag = '[object Date]', + domExcTag = '[object DOMException]', + errorTag = '[object Error]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + mapTag = '[object Map]', + numberTag = '[object Number]', + nullTag = '[object Null]', + objectTag = '[object Object]', + promiseTag = '[object Promise]', + proxyTag = '[object Proxy]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]', + undefinedTag = '[object Undefined]', + weakMapTag = '[object WeakMap]', + weakSetTag = '[object WeakSet]'; + + var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + + /** Used to match empty string literals in compiled template source. */ + var reEmptyStringLeading = /\b__p \+= '';/g, + reEmptyStringMiddle = /\b(__p \+=) '' \+/g, + reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g; + + /** Used to match HTML entities and HTML characters. */ + var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g, + reUnescapedHtml = /[&<>"']/g, + reHasEscapedHtml = RegExp(reEscapedHtml.source), + reHasUnescapedHtml = RegExp(reUnescapedHtml.source); + + /** Used to match template delimiters. */ + var reEscape = /<%-([\s\S]+?)%>/g, + reEvaluate = /<%([\s\S]+?)%>/g, + reInterpolate = /<%=([\s\S]+?)%>/g; + + /** Used to match property names within property paths. */ + var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, + reIsPlainProp = /^\w*$/, + reLeadingDot = /^\./, + rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + + /** + * Used to match `RegExp` + * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). + */ + var reRegExpChar = /[\\^$.*+?()[\]{}|]/g, + reHasRegExpChar = RegExp(reRegExpChar.source); + + /** Used to match leading and trailing whitespace. */ + var reTrim = /^\s+|\s+$/g, + reTrimStart = /^\s+/, + reTrimEnd = /\s+$/; + + /** Used to match wrap detail comments. */ + var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/, + reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, + reSplitDetails = /,? & /; + + /** Used to match words composed of alphanumeric characters. */ + var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; + + /** Used to match backslashes in property paths. */ + var reEscapeChar = /\\(\\)?/g; + + /** + * Used to match + * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components). + */ + var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g; + + /** Used to match `RegExp` flags from their coerced string values. */ + var reFlags = /\w*$/; + + /** Used to detect bad signed hexadecimal string values. */ + var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + + /** Used to detect binary string values. */ + var reIsBinary = /^0b[01]+$/i; + + /** Used to detect host constructors (Safari). */ + var reIsHostCtor = /^\[object .+?Constructor\]$/; + + /** Used to detect octal string values. */ + var reIsOctal = /^0o[0-7]+$/i; + + /** Used to detect unsigned integer values. */ + var reIsUint = /^(?:0|[1-9]\d*)$/; + + /** Used to match Latin Unicode letters (excluding mathematical operators). */ + var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; + + /** Used to ensure capturing order of template delimiters. */ + var reNoMatch = /($^)/; + + /** Used to match unescaped characters in compiled string literals. */ + var reUnescapedString = /['\n\r\u2028\u2029\\]/g; + + /** Used to compose unicode character classes. */ + var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsDingbatRange = '\\u2700-\\u27bf', + rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff', + rsMathOpRange = '\\xac\\xb1\\xd7\\xf7', + rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf', + rsPunctuationRange = '\\u2000-\\u206f', + rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000', + rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde', + rsVarRange = '\\ufe0e\\ufe0f', + rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; + + /** Used to compose unicode capture groups. */ + var rsApos = "['\u2019]", + rsAstral = '[' + rsAstralRange + ']', + rsBreak = '[' + rsBreakRange + ']', + rsCombo = '[' + rsComboRange + ']', + rsDigits = '\\d+', + rsDingbat = '[' + rsDingbatRange + ']', + rsLower = '[' + rsLowerRange + ']', + rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']', + rsFitz = '\\ud83c[\\udffb-\\udfff]', + rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', + rsNonAstral = '[^' + rsAstralRange + ']', + rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', + rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', + rsUpper = '[' + rsUpperRange + ']', + rsZWJ = '\\u200d'; + + /** Used to compose unicode regexes. */ + var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')', + rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')', + rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?', + rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?', + reOptMod = rsModifier + '?', + rsOptVar = '[' + rsVarRange + ']?', + rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', + rsOrdLower = '\\d*(?:(?:1st|2nd|3rd|(?![123])\\dth)\\b)', + rsOrdUpper = '\\d*(?:(?:1ST|2ND|3RD|(?![123])\\dTH)\\b)', + rsSeq = rsOptVar + reOptMod + rsOptJoin, + rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq, + rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; + + /** Used to match apostrophes. */ + var reApos = RegExp(rsApos, 'g'); + + /** + * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and + * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols). + */ + var reComboMark = RegExp(rsCombo, 'g'); + + /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ + var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); + + /** Used to match complex or compound words. */ + var reUnicodeWord = RegExp([ + rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')', + rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')', + rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower, + rsUpper + '+' + rsOptContrUpper, + rsOrdUpper, + rsOrdLower, + rsDigits, + rsEmoji + ].join('|'), 'g'); + + /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ + var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); + + /** Used to detect strings that need a more robust regexp to match words. */ + var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; + + /** Used to assign default `context` object properties. */ + var contextProps = [ + 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array', + 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object', + 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array', + 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap', + '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout' + ]; + + /** Used to make template sourceURLs easier to identify. */ + var templateCounter = -1; + + /** Used to identify `toStringTag` values of typed arrays. */ + var typedArrayTags = {}; + typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = + typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = + typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = + typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = + typedArrayTags[uint32Tag] = true; + typedArrayTags[argsTag] = typedArrayTags[arrayTag] = + typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = + typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = + typedArrayTags[errorTag] = typedArrayTags[funcTag] = + typedArrayTags[mapTag] = typedArrayTags[numberTag] = + typedArrayTags[objectTag] = typedArrayTags[regexpTag] = + typedArrayTags[setTag] = typedArrayTags[stringTag] = + typedArrayTags[weakMapTag] = false; + + /** Used to identify `toStringTag` values supported by `_.clone`. */ + var cloneableTags = {}; + cloneableTags[argsTag] = cloneableTags[arrayTag] = + cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = + cloneableTags[boolTag] = cloneableTags[dateTag] = + cloneableTags[float32Tag] = cloneableTags[float64Tag] = + cloneableTags[int8Tag] = cloneableTags[int16Tag] = + cloneableTags[int32Tag] = cloneableTags[mapTag] = + cloneableTags[numberTag] = cloneableTags[objectTag] = + cloneableTags[regexpTag] = cloneableTags[setTag] = + cloneableTags[stringTag] = cloneableTags[symbolTag] = + cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = + cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; + cloneableTags[errorTag] = cloneableTags[funcTag] = + cloneableTags[weakMapTag] = false; + + /** Used to map Latin Unicode letters to basic Latin letters. */ + var deburredLetters = { + // Latin-1 Supplement block. + '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A', + '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a', + '\xc7': 'C', '\xe7': 'c', + '\xd0': 'D', '\xf0': 'd', + '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E', + '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e', + '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I', + '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i', + '\xd1': 'N', '\xf1': 'n', + '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O', + '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o', + '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U', + '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u', + '\xdd': 'Y', '\xfd': 'y', '\xff': 'y', + '\xc6': 'Ae', '\xe6': 'ae', + '\xde': 'Th', '\xfe': 'th', + '\xdf': 'ss', + // Latin Extended-A block. + '\u0100': 'A', '\u0102': 'A', '\u0104': 'A', + '\u0101': 'a', '\u0103': 'a', '\u0105': 'a', + '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C', + '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c', + '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd', + '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E', + '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e', + '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G', + '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g', + '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h', + '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I', + '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i', + '\u0134': 'J', '\u0135': 'j', + '\u0136': 'K', '\u0137': 'k', '\u0138': 'k', + '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L', + '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l', + '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N', + '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n', + '\u014c': 'O', '\u014e': 'O', '\u0150': 'O', + '\u014d': 'o', '\u014f': 'o', '\u0151': 'o', + '\u0154': 'R', '\u0156': 'R', '\u0158': 'R', + '\u0155': 'r', '\u0157': 'r', '\u0159': 'r', + '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S', + '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's', + '\u0162': 'T', '\u0164': 'T', '\u0166': 'T', + '\u0163': 't', '\u0165': 't', '\u0167': 't', + '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U', + '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u', + '\u0174': 'W', '\u0175': 'w', + '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y', + '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z', + '\u017a': 'z', '\u017c': 'z', '\u017e': 'z', + '\u0132': 'IJ', '\u0133': 'ij', + '\u0152': 'Oe', '\u0153': 'oe', + '\u0149': "'n", '\u017f': 's' + }; + + /** Used to map characters to HTML entities. */ + var htmlEscapes = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''' + }; + + /** Used to map HTML entities to characters. */ + var htmlUnescapes = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + ''': "'" + }; + + /** Used to escape characters for inclusion in compiled string literals. */ + var stringEscapes = { + '\\': '\\', + "'": "'", + '\n': 'n', + '\r': 'r', + '\u2028': 'u2028', + '\u2029': 'u2029' + }; + + /** Built-in method references without a dependency on `root`. */ + var freeParseFloat = parseFloat, + freeParseInt = parseInt; + + /** Detect free variable `global` from Node.js. */ + var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; + + /** Detect free variable `self`. */ + var freeSelf = typeof self == 'object' && self && self.Object === Object && self; + + /** Used as a reference to the global object. */ + var root = freeGlobal || freeSelf || Function('return this')(); + + /** Detect free variable `exports`. */ + var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; + + /** Detect free variable `module`. */ + var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; + + /** Detect the popular CommonJS extension `module.exports`. */ + var moduleExports = freeModule && freeModule.exports === freeExports; + + /** Detect free variable `process` from Node.js. */ + var freeProcess = moduleExports && freeGlobal.process; + + /** Used to access faster Node.js helpers. */ + var nodeUtil = (function() { + try { + return freeProcess && freeProcess.binding && freeProcess.binding('util'); + } catch (e) {} + }()); + + /* Node.js helper references. */ + var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer, + nodeIsDate = nodeUtil && nodeUtil.isDate, + nodeIsMap = nodeUtil && nodeUtil.isMap, + nodeIsRegExp = nodeUtil && nodeUtil.isRegExp, + nodeIsSet = nodeUtil && nodeUtil.isSet, + nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; + + /*--------------------------------------------------------------------------*/ + + /** + * Adds the key-value `pair` to `map`. + * + * @private + * @param {Object} map The map to modify. + * @param {Array} pair The key-value pair to add. + * @returns {Object} Returns `map`. + */ + function addMapEntry(map, pair) { + // Don't return `map.set` because it's not chainable in IE 11. + map.set(pair[0], pair[1]); + return map; + } + + /** + * Adds `value` to `set`. + * + * @private + * @param {Object} set The set to modify. + * @param {*} value The value to add. + * @returns {Object} Returns `set`. + */ + function addSetEntry(set, value) { + // Don't return `set.add` because it's not chainable in IE 11. + set.add(value); + return set; + } + + /** + * A faster alternative to `Function#apply`, this function invokes `func` + * with the `this` binding of `thisArg` and the arguments of `args`. + * + * @private + * @param {Function} func The function to invoke. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} args The arguments to invoke `func` with. + * @returns {*} Returns the result of `func`. + */ + function apply(func, thisArg, args) { + switch (args.length) { + case 0: return func.call(thisArg); + case 1: return func.call(thisArg, args[0]); + case 2: return func.call(thisArg, args[0], args[1]); + case 3: return func.call(thisArg, args[0], args[1], args[2]); + } + return func.apply(thisArg, args); + } + + /** + * A specialized version of `baseAggregator` for arrays. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform keys. + * @param {Object} accumulator The initial aggregated object. + * @returns {Function} Returns `accumulator`. + */ + function arrayAggregator(array, setter, iteratee, accumulator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + var value = array[index]; + setter(accumulator, value, iteratee(value), array); + } + return accumulator; + } + + /** + * A specialized version of `_.forEach` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ + function arrayEach(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (iteratee(array[index], index, array) === false) { + break; + } + } + return array; + } + + /** + * A specialized version of `_.forEachRight` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ + function arrayEachRight(array, iteratee) { + var length = array == null ? 0 : array.length; + + while (length--) { + if (iteratee(array[length], length, array) === false) { + break; + } + } + return array; + } + + /** + * A specialized version of `_.every` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + */ + function arrayEvery(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (!predicate(array[index], index, array)) { + return false; + } + } + return true; + } + + /** + * A specialized version of `_.filter` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ + function arrayFilter(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result[resIndex++] = value; + } + } + return result; + } + + /** + * A specialized version of `_.includes` for arrays without support for + * specifying an index to search from. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ + function arrayIncludes(array, value) { + var length = array == null ? 0 : array.length; + return !!length && baseIndexOf(array, value, 0) > -1; + } + + /** + * This function is like `arrayIncludes` except that it accepts a comparator. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @param {Function} comparator The comparator invoked per element. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ + function arrayIncludesWith(array, value, comparator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (comparator(value, array[index])) { + return true; + } + } + return false; + } + + /** + * A specialized version of `_.map` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ + function arrayMap(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length, + result = Array(length); + + while (++index < length) { + result[index] = iteratee(array[index], index, array); + } + return result; + } + + /** + * Appends the elements of `values` to `array`. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to append. + * @returns {Array} Returns `array`. + */ + function arrayPush(array, values) { + var index = -1, + length = values.length, + offset = array.length; + + while (++index < length) { + array[offset + index] = values[index]; + } + return array; + } + + /** + * A specialized version of `_.reduce` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the first element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ + function arrayReduce(array, iteratee, accumulator, initAccum) { + var index = -1, + length = array == null ? 0 : array.length; + + if (initAccum && length) { + accumulator = array[++index]; + } + while (++index < length) { + accumulator = iteratee(accumulator, array[index], index, array); + } + return accumulator; + } + + /** + * A specialized version of `_.reduceRight` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the last element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ + function arrayReduceRight(array, iteratee, accumulator, initAccum) { + var length = array == null ? 0 : array.length; + if (initAccum && length) { + accumulator = array[--length]; + } + while (length--) { + accumulator = iteratee(accumulator, array[length], length, array); + } + return accumulator; + } + + /** + * A specialized version of `_.some` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ + function arraySome(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (predicate(array[index], index, array)) { + return true; + } + } + return false; + } + + /** + * Gets the size of an ASCII `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ + var asciiSize = baseProperty('length'); + + /** + * Converts an ASCII `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function asciiToArray(string) { + return string.split(''); + } + + /** + * Splits an ASCII `string` into an array of its words. + * + * @private + * @param {string} The string to inspect. + * @returns {Array} Returns the words of `string`. + */ + function asciiWords(string) { + return string.match(reAsciiWord) || []; + } + + /** + * The base implementation of methods like `_.findKey` and `_.findLastKey`, + * without support for iteratee shorthands, which iterates over `collection` + * using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the found element or its key, else `undefined`. + */ + function baseFindKey(collection, predicate, eachFunc) { + var result; + eachFunc(collection, function(value, key, collection) { + if (predicate(value, key, collection)) { + result = key; + return false; + } + }); + return result; + } + + /** + * The base implementation of `_.findIndex` and `_.findLastIndex` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {number} fromIndex The index to search from. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, + index = fromIndex + (fromRight ? 1 : -1); + + while ((fromRight ? index-- : ++index < length)) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; + } + + /** + * The base implementation of `_.indexOf` without `fromIndex` bounds checks. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseIndexOf(array, value, fromIndex) { + return value === value + ? strictIndexOf(array, value, fromIndex) + : baseFindIndex(array, baseIsNaN, fromIndex); + } + + /** + * This function is like `baseIndexOf` except that it accepts a comparator. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @param {Function} comparator The comparator invoked per element. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseIndexOfWith(array, value, fromIndex, comparator) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (comparator(array[index], value)) { + return index; + } + } + return -1; + } + + /** + * The base implementation of `_.isNaN` without support for number objects. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + */ + function baseIsNaN(value) { + return value !== value; + } + + /** + * The base implementation of `_.mean` and `_.meanBy` without support for + * iteratee shorthands. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {number} Returns the mean. + */ + function baseMean(array, iteratee) { + var length = array == null ? 0 : array.length; + return length ? (baseSum(array, iteratee) / length) : NAN; + } + + /** + * The base implementation of `_.property` without support for deep paths. + * + * @private + * @param {string} key The key of the property to get. + * @returns {Function} Returns the new accessor function. + */ + function baseProperty(key) { + return function(object) { + return object == null ? undefined : object[key]; + }; + } + + /** + * The base implementation of `_.propertyOf` without support for deep paths. + * + * @private + * @param {Object} object The object to query. + * @returns {Function} Returns the new accessor function. + */ + function basePropertyOf(object) { + return function(key) { + return object == null ? undefined : object[key]; + }; + } + + /** + * The base implementation of `_.reduce` and `_.reduceRight`, without support + * for iteratee shorthands, which iterates over `collection` using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} accumulator The initial value. + * @param {boolean} initAccum Specify using the first or last element of + * `collection` as the initial value. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the accumulated value. + */ + function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { + eachFunc(collection, function(value, index, collection) { + accumulator = initAccum + ? (initAccum = false, value) + : iteratee(accumulator, value, index, collection); + }); + return accumulator; + } + + /** + * The base implementation of `_.sortBy` which uses `comparer` to define the + * sort order of `array` and replaces criteria objects with their corresponding + * values. + * + * @private + * @param {Array} array The array to sort. + * @param {Function} comparer The function to define sort order. + * @returns {Array} Returns `array`. + */ + function baseSortBy(array, comparer) { + var length = array.length; + + array.sort(comparer); + while (length--) { + array[length] = array[length].value; + } + return array; + } + + /** + * The base implementation of `_.sum` and `_.sumBy` without support for + * iteratee shorthands. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {number} Returns the sum. + */ + function baseSum(array, iteratee) { + var result, + index = -1, + length = array.length; + + while (++index < length) { + var current = iteratee(array[index]); + if (current !== undefined) { + result = result === undefined ? current : (result + current); + } + } + return result; + } + + /** + * The base implementation of `_.times` without support for iteratee shorthands + * or max array length checks. + * + * @private + * @param {number} n The number of times to invoke `iteratee`. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the array of results. + */ + function baseTimes(n, iteratee) { + var index = -1, + result = Array(n); + + while (++index < n) { + result[index] = iteratee(index); + } + return result; + } + + /** + * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array + * of key-value pairs for `object` corresponding to the property names of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the key-value pairs. + */ + function baseToPairs(object, props) { + return arrayMap(props, function(key) { + return [key, object[key]]; + }); + } + + /** + * The base implementation of `_.unary` without support for storing metadata. + * + * @private + * @param {Function} func The function to cap arguments for. + * @returns {Function} Returns the new capped function. + */ + function baseUnary(func) { + return function(value) { + return func(value); + }; + } + + /** + * The base implementation of `_.values` and `_.valuesIn` which creates an + * array of `object` property values corresponding to the property names + * of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the array of property values. + */ + function baseValues(object, props) { + return arrayMap(props, function(key) { + return object[key]; + }); + } + + /** + * Checks if a `cache` value for `key` exists. + * + * @private + * @param {Object} cache The cache to query. + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function cacheHas(cache, key) { + return cache.has(key); + } + + /** + * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol + * that is not found in the character symbols. + * + * @private + * @param {Array} strSymbols The string symbols to inspect. + * @param {Array} chrSymbols The character symbols to find. + * @returns {number} Returns the index of the first unmatched string symbol. + */ + function charsStartIndex(strSymbols, chrSymbols) { + var index = -1, + length = strSymbols.length; + + while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} + return index; + } + + /** + * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol + * that is not found in the character symbols. + * + * @private + * @param {Array} strSymbols The string symbols to inspect. + * @param {Array} chrSymbols The character symbols to find. + * @returns {number} Returns the index of the last unmatched string symbol. + */ + function charsEndIndex(strSymbols, chrSymbols) { + var index = strSymbols.length; + + while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} + return index; + } + + /** + * Gets the number of `placeholder` occurrences in `array`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} placeholder The placeholder to search for. + * @returns {number} Returns the placeholder count. + */ + function countHolders(array, placeholder) { + var length = array.length, + result = 0; + + while (length--) { + if (array[length] === placeholder) { + ++result; + } + } + return result; + } + + /** + * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A + * letters to basic Latin letters. + * + * @private + * @param {string} letter The matched letter to deburr. + * @returns {string} Returns the deburred letter. + */ + var deburrLetter = basePropertyOf(deburredLetters); + + /** + * Used by `_.escape` to convert characters to HTML entities. + * + * @private + * @param {string} chr The matched character to escape. + * @returns {string} Returns the escaped character. + */ + var escapeHtmlChar = basePropertyOf(htmlEscapes); + + /** + * Used by `_.template` to escape characters for inclusion in compiled string literals. + * + * @private + * @param {string} chr The matched character to escape. + * @returns {string} Returns the escaped character. + */ + function escapeStringChar(chr) { + return '\\' + stringEscapes[chr]; + } + + /** + * Gets the value at `key` of `object`. + * + * @private + * @param {Object} [object] The object to query. + * @param {string} key The key of the property to get. + * @returns {*} Returns the property value. + */ + function getValue(object, key) { + return object == null ? undefined : object[key]; + } + + /** + * Checks if `string` contains Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a symbol is found, else `false`. + */ + function hasUnicode(string) { + return reHasUnicode.test(string); + } + + /** + * Checks if `string` contains a word composed of Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a word is found, else `false`. + */ + function hasUnicodeWord(string) { + return reHasUnicodeWord.test(string); + } + + /** + * Converts `iterator` to an array. + * + * @private + * @param {Object} iterator The iterator to convert. + * @returns {Array} Returns the converted array. + */ + function iteratorToArray(iterator) { + var data, + result = []; + + while (!(data = iterator.next()).done) { + result.push(data.value); + } + return result; + } + + /** + * Converts `map` to its key-value pairs. + * + * @private + * @param {Object} map The map to convert. + * @returns {Array} Returns the key-value pairs. + */ + function mapToArray(map) { + var index = -1, + result = Array(map.size); + + map.forEach(function(value, key) { + result[++index] = [key, value]; + }); + return result; + } + + /** + * Creates a unary function that invokes `func` with its argument transformed. + * + * @private + * @param {Function} func The function to wrap. + * @param {Function} transform The argument transform. + * @returns {Function} Returns the new function. + */ + function overArg(func, transform) { + return function(arg) { + return func(transform(arg)); + }; + } + + /** + * Replaces all `placeholder` elements in `array` with an internal placeholder + * and returns an array of their indexes. + * + * @private + * @param {Array} array The array to modify. + * @param {*} placeholder The placeholder to replace. + * @returns {Array} Returns the new array of placeholder indexes. + */ + function replaceHolders(array, placeholder) { + var index = -1, + length = array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (value === placeholder || value === PLACEHOLDER) { + array[index] = PLACEHOLDER; + result[resIndex++] = index; + } + } + return result; + } + + /** + * Converts `set` to an array of its values. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the values. + */ + function setToArray(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = value; + }); + return result; + } + + /** + * Converts `set` to its value-value pairs. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the value-value pairs. + */ + function setToPairs(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = [value, value]; + }); + return result; + } + + /** + * A specialized version of `_.indexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function strictIndexOf(array, value, fromIndex) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (array[index] === value) { + return index; + } + } + return -1; + } + + /** + * A specialized version of `_.lastIndexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function strictLastIndexOf(array, value, fromIndex) { + var index = fromIndex + 1; + while (index--) { + if (array[index] === value) { + return index; + } + } + return index; + } + + /** + * Gets the number of symbols in `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the string size. + */ + function stringSize(string) { + return hasUnicode(string) + ? unicodeSize(string) + : asciiSize(string); + } + + /** + * Converts `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function stringToArray(string) { + return hasUnicode(string) + ? unicodeToArray(string) + : asciiToArray(string); + } + + /** + * Used by `_.unescape` to convert HTML entities to characters. + * + * @private + * @param {string} chr The matched character to unescape. + * @returns {string} Returns the unescaped character. + */ + var unescapeHtmlChar = basePropertyOf(htmlUnescapes); + + /** + * Gets the size of a Unicode `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ + function unicodeSize(string) { + var result = reUnicode.lastIndex = 0; + while (reUnicode.test(string)) { + ++result; + } + return result; + } + + /** + * Converts a Unicode `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function unicodeToArray(string) { + return string.match(reUnicode) || []; + } + + /** + * Splits a Unicode `string` into an array of its words. + * + * @private + * @param {string} The string to inspect. + * @returns {Array} Returns the words of `string`. + */ + function unicodeWords(string) { + return string.match(reUnicodeWord) || []; + } + + /*--------------------------------------------------------------------------*/ + + /** + * Create a new pristine `lodash` function using the `context` object. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Util + * @param {Object} [context=root] The context object. + * @returns {Function} Returns a new `lodash` function. + * @example + * + * _.mixin({ 'foo': _.constant('foo') }); + * + * var lodash = _.runInContext(); + * lodash.mixin({ 'bar': lodash.constant('bar') }); + * + * _.isFunction(_.foo); + * // => true + * _.isFunction(_.bar); + * // => false + * + * lodash.isFunction(lodash.foo); + * // => false + * lodash.isFunction(lodash.bar); + * // => true + * + * // Create a suped-up `defer` in Node.js. + * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer; + */ + var runInContext = (function runInContext(context) { + context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps)); + + /** Built-in constructor references. */ + var Array = context.Array, + Date = context.Date, + Error = context.Error, + Function = context.Function, + Math = context.Math, + Object = context.Object, + RegExp = context.RegExp, + String = context.String, + TypeError = context.TypeError; + + /** Used for built-in method references. */ + var arrayProto = Array.prototype, + funcProto = Function.prototype, + objectProto = Object.prototype; + + /** Used to detect overreaching core-js shims. */ + var coreJsData = context['__core-js_shared__']; + + /** Used to resolve the decompiled source of functions. */ + var funcToString = funcProto.toString; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** Used to generate unique IDs. */ + var idCounter = 0; + + /** Used to detect methods masquerading as native. */ + var maskSrcKey = (function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); + return uid ? ('Symbol(src)_1.' + uid) : ''; + }()); + + /** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ + var nativeObjectToString = objectProto.toString; + + /** Used to infer the `Object` constructor. */ + var objectCtorString = funcToString.call(Object); + + /** Used to restore the original `_` reference in `_.noConflict`. */ + var oldDash = root._; + + /** Used to detect if a method is native. */ + var reIsNative = RegExp('^' + + funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') + .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' + ); + + /** Built-in value references. */ + var Buffer = moduleExports ? context.Buffer : undefined, + Symbol = context.Symbol, + Uint8Array = context.Uint8Array, + allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined, + getPrototype = overArg(Object.getPrototypeOf, Object), + objectCreate = Object.create, + propertyIsEnumerable = objectProto.propertyIsEnumerable, + splice = arrayProto.splice, + spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined, + symIterator = Symbol ? Symbol.iterator : undefined, + symToStringTag = Symbol ? Symbol.toStringTag : undefined; + + var defineProperty = (function() { + try { + var func = getNative(Object, 'defineProperty'); + func({}, '', {}); + return func; + } catch (e) {} + }()); + + /** Mocked built-ins. */ + var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout, + ctxNow = Date && Date.now !== root.Date.now && Date.now, + ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout; + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeCeil = Math.ceil, + nativeFloor = Math.floor, + nativeGetSymbols = Object.getOwnPropertySymbols, + nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined, + nativeIsFinite = context.isFinite, + nativeJoin = arrayProto.join, + nativeKeys = overArg(Object.keys, Object), + nativeMax = Math.max, + nativeMin = Math.min, + nativeNow = Date.now, + nativeParseInt = context.parseInt, + nativeRandom = Math.random, + nativeReverse = arrayProto.reverse; + + /* Built-in method references that are verified to be native. */ + var DataView = getNative(context, 'DataView'), + Map = getNative(context, 'Map'), + Promise = getNative(context, 'Promise'), + Set = getNative(context, 'Set'), + WeakMap = getNative(context, 'WeakMap'), + nativeCreate = getNative(Object, 'create'); + + /** Used to store function metadata. */ + var metaMap = WeakMap && new WeakMap; + + /** Used to lookup unminified function names. */ + var realNames = {}; + + /** Used to detect maps, sets, and weakmaps. */ + var dataViewCtorString = toSource(DataView), + mapCtorString = toSource(Map), + promiseCtorString = toSource(Promise), + setCtorString = toSource(Set), + weakMapCtorString = toSource(WeakMap); + + /** Used to convert symbols to primitives and strings. */ + var symbolProto = Symbol ? Symbol.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined, + symbolToString = symbolProto ? symbolProto.toString : undefined; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a `lodash` object which wraps `value` to enable implicit method + * chain sequences. Methods that operate on and return arrays, collections, + * and functions can be chained together. Methods that retrieve a single value + * or may return a primitive value will automatically end the chain sequence + * and return the unwrapped value. Otherwise, the value must be unwrapped + * with `_#value`. + * + * Explicit chain sequences, which must be unwrapped with `_#value`, may be + * enabled using `_.chain`. + * + * The execution of chained methods is lazy, that is, it's deferred until + * `_#value` is implicitly or explicitly called. + * + * Lazy evaluation allows several methods to support shortcut fusion. + * Shortcut fusion is an optimization to merge iteratee calls; this avoids + * the creation of intermediate arrays and can greatly reduce the number of + * iteratee executions. Sections of a chain sequence qualify for shortcut + * fusion if the section is applied to an array and iteratees accept only + * one argument. The heuristic for whether a section qualifies for shortcut + * fusion is subject to change. + * + * Chaining is supported in custom builds as long as the `_#value` method is + * directly or indirectly included in the build. + * + * In addition to lodash methods, wrappers have `Array` and `String` methods. + * + * The wrapper `Array` methods are: + * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift` + * + * The wrapper `String` methods are: + * `replace` and `split` + * + * The wrapper methods that support shortcut fusion are: + * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`, + * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`, + * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray` + * + * The chainable wrapper methods are: + * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`, + * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`, + * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`, + * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`, + * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`, + * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`, + * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`, + * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`, + * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`, + * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`, + * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`, + * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`, + * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`, + * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`, + * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`, + * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`, + * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`, + * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`, + * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`, + * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`, + * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`, + * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`, + * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`, + * `zipObject`, `zipObjectDeep`, and `zipWith` + * + * The wrapper methods that are **not** chainable by default are: + * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`, + * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`, + * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`, + * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`, + * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`, + * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`, + * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`, + * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`, + * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`, + * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`, + * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`, + * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`, + * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`, + * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`, + * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`, + * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`, + * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`, + * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`, + * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`, + * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`, + * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`, + * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`, + * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`, + * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`, + * `upperFirst`, `value`, and `words` + * + * @name _ + * @constructor + * @category Seq + * @param {*} value The value to wrap in a `lodash` instance. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * function square(n) { + * return n * n; + * } + * + * var wrapped = _([1, 2, 3]); + * + * // Returns an unwrapped value. + * wrapped.reduce(_.add); + * // => 6 + * + * // Returns a wrapped value. + * var squares = wrapped.map(square); + * + * _.isArray(squares); + * // => false + * + * _.isArray(squares.value()); + * // => true + */ + function lodash(value) { + if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) { + if (value instanceof LodashWrapper) { + return value; + } + if (hasOwnProperty.call(value, '__wrapped__')) { + return wrapperClone(value); + } + } + return new LodashWrapper(value); + } + + /** + * The base implementation of `_.create` without support for assigning + * properties to the created object. + * + * @private + * @param {Object} proto The object to inherit from. + * @returns {Object} Returns the new object. + */ + var baseCreate = (function() { + function object() {} + return function(proto) { + if (!isObject(proto)) { + return {}; + } + if (objectCreate) { + return objectCreate(proto); + } + object.prototype = proto; + var result = new object; + object.prototype = undefined; + return result; + }; + }()); + + /** + * The function whose prototype chain sequence wrappers inherit from. + * + * @private + */ + function baseLodash() { + // No operation performed. + } + + /** + * The base constructor for creating `lodash` wrapper objects. + * + * @private + * @param {*} value The value to wrap. + * @param {boolean} [chainAll] Enable explicit method chain sequences. + */ + function LodashWrapper(value, chainAll) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__chain__ = !!chainAll; + this.__index__ = 0; + this.__values__ = undefined; + } + + /** + * By default, the template delimiters used by lodash are like those in + * embedded Ruby (ERB) as well as ES2015 template strings. Change the + * following template settings to use alternative delimiters. + * + * @static + * @memberOf _ + * @type {Object} + */ + lodash.templateSettings = { + + /** + * Used to detect `data` property values to be HTML-escaped. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + 'escape': reEscape, + + /** + * Used to detect code to be evaluated. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + 'evaluate': reEvaluate, + + /** + * Used to detect `data` property values to inject. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + 'interpolate': reInterpolate, + + /** + * Used to reference the data object in the template text. + * + * @memberOf _.templateSettings + * @type {string} + */ + 'variable': '', + + /** + * Used to import variables into the compiled template. + * + * @memberOf _.templateSettings + * @type {Object} + */ + 'imports': { + + /** + * A reference to the `lodash` function. + * + * @memberOf _.templateSettings.imports + * @type {Function} + */ + '_': lodash + } + }; + + // Ensure wrappers are instances of `baseLodash`. + lodash.prototype = baseLodash.prototype; + lodash.prototype.constructor = lodash; + + LodashWrapper.prototype = baseCreate(baseLodash.prototype); + LodashWrapper.prototype.constructor = LodashWrapper; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation. + * + * @private + * @constructor + * @param {*} value The value to wrap. + */ + function LazyWrapper(value) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__dir__ = 1; + this.__filtered__ = false; + this.__iteratees__ = []; + this.__takeCount__ = MAX_ARRAY_LENGTH; + this.__views__ = []; + } + + /** + * Creates a clone of the lazy wrapper object. + * + * @private + * @name clone + * @memberOf LazyWrapper + * @returns {Object} Returns the cloned `LazyWrapper` object. + */ + function lazyClone() { + var result = new LazyWrapper(this.__wrapped__); + result.__actions__ = copyArray(this.__actions__); + result.__dir__ = this.__dir__; + result.__filtered__ = this.__filtered__; + result.__iteratees__ = copyArray(this.__iteratees__); + result.__takeCount__ = this.__takeCount__; + result.__views__ = copyArray(this.__views__); + return result; + } + + /** + * Reverses the direction of lazy iteration. + * + * @private + * @name reverse + * @memberOf LazyWrapper + * @returns {Object} Returns the new reversed `LazyWrapper` object. + */ + function lazyReverse() { + if (this.__filtered__) { + var result = new LazyWrapper(this); + result.__dir__ = -1; + result.__filtered__ = true; + } else { + result = this.clone(); + result.__dir__ *= -1; + } + return result; + } + + /** + * Extracts the unwrapped value from its lazy wrapper. + * + * @private + * @name value + * @memberOf LazyWrapper + * @returns {*} Returns the unwrapped value. + */ + function lazyValue() { + var array = this.__wrapped__.value(), + dir = this.__dir__, + isArr = isArray(array), + isRight = dir < 0, + arrLength = isArr ? array.length : 0, + view = getView(0, arrLength, this.__views__), + start = view.start, + end = view.end, + length = end - start, + index = isRight ? end : (start - 1), + iteratees = this.__iteratees__, + iterLength = iteratees.length, + resIndex = 0, + takeCount = nativeMin(length, this.__takeCount__); + + if (!isArr || (!isRight && arrLength == length && takeCount == length)) { + return baseWrapperValue(array, this.__actions__); + } + var result = []; + + outer: + while (length-- && resIndex < takeCount) { + index += dir; + + var iterIndex = -1, + value = array[index]; + + while (++iterIndex < iterLength) { + var data = iteratees[iterIndex], + iteratee = data.iteratee, + type = data.type, + computed = iteratee(value); + + if (type == LAZY_MAP_FLAG) { + value = computed; + } else if (!computed) { + if (type == LAZY_FILTER_FLAG) { + continue outer; + } else { + break outer; + } + } + } + result[resIndex++] = value; + } + return result; + } + + // Ensure `LazyWrapper` is an instance of `baseLodash`. + LazyWrapper.prototype = baseCreate(baseLodash.prototype); + LazyWrapper.prototype.constructor = LazyWrapper; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a hash object. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function Hash(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + /** + * Removes all key-value entries from the hash. + * + * @private + * @name clear + * @memberOf Hash + */ + function hashClear() { + this.__data__ = nativeCreate ? nativeCreate(null) : {}; + this.size = 0; + } + + /** + * Removes `key` and its value from the hash. + * + * @private + * @name delete + * @memberOf Hash + * @param {Object} hash The hash to modify. + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function hashDelete(key) { + var result = this.has(key) && delete this.__data__[key]; + this.size -= result ? 1 : 0; + return result; + } + + /** + * Gets the hash value for `key`. + * + * @private + * @name get + * @memberOf Hash + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function hashGet(key) { + var data = this.__data__; + if (nativeCreate) { + var result = data[key]; + return result === HASH_UNDEFINED ? undefined : result; + } + return hasOwnProperty.call(data, key) ? data[key] : undefined; + } + + /** + * Checks if a hash value for `key` exists. + * + * @private + * @name has + * @memberOf Hash + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function hashHas(key) { + var data = this.__data__; + return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key); + } + + /** + * Sets the hash `key` to `value`. + * + * @private + * @name set + * @memberOf Hash + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the hash instance. + */ + function hashSet(key, value) { + var data = this.__data__; + this.size += this.has(key) ? 0 : 1; + data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; + return this; + } + + // Add methods to `Hash`. + Hash.prototype.clear = hashClear; + Hash.prototype['delete'] = hashDelete; + Hash.prototype.get = hashGet; + Hash.prototype.has = hashHas; + Hash.prototype.set = hashSet; + + /*------------------------------------------------------------------------*/ + + /** + * Creates an list cache object. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function ListCache(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + /** + * Removes all key-value entries from the list cache. + * + * @private + * @name clear + * @memberOf ListCache + */ + function listCacheClear() { + this.__data__ = []; + this.size = 0; + } + + /** + * Removes `key` and its value from the list cache. + * + * @private + * @name delete + * @memberOf ListCache + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function listCacheDelete(key) { + var data = this.__data__, + index = assocIndexOf(data, key); + + if (index < 0) { + return false; + } + var lastIndex = data.length - 1; + if (index == lastIndex) { + data.pop(); + } else { + splice.call(data, index, 1); + } + --this.size; + return true; + } + + /** + * Gets the list cache value for `key`. + * + * @private + * @name get + * @memberOf ListCache + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function listCacheGet(key) { + var data = this.__data__, + index = assocIndexOf(data, key); + + return index < 0 ? undefined : data[index][1]; + } + + /** + * Checks if a list cache value for `key` exists. + * + * @private + * @name has + * @memberOf ListCache + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function listCacheHas(key) { + return assocIndexOf(this.__data__, key) > -1; + } + + /** + * Sets the list cache `key` to `value`. + * + * @private + * @name set + * @memberOf ListCache + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the list cache instance. + */ + function listCacheSet(key, value) { + var data = this.__data__, + index = assocIndexOf(data, key); + + if (index < 0) { + ++this.size; + data.push([key, value]); + } else { + data[index][1] = value; + } + return this; + } + + // Add methods to `ListCache`. + ListCache.prototype.clear = listCacheClear; + ListCache.prototype['delete'] = listCacheDelete; + ListCache.prototype.get = listCacheGet; + ListCache.prototype.has = listCacheHas; + ListCache.prototype.set = listCacheSet; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a map cache object to store key-value pairs. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function MapCache(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + /** + * Removes all key-value entries from the map. + * + * @private + * @name clear + * @memberOf MapCache + */ + function mapCacheClear() { + this.size = 0; + this.__data__ = { + 'hash': new Hash, + 'map': new (Map || ListCache), + 'string': new Hash + }; + } + + /** + * Removes `key` and its value from the map. + * + * @private + * @name delete + * @memberOf MapCache + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function mapCacheDelete(key) { + var result = getMapData(this, key)['delete'](key); + this.size -= result ? 1 : 0; + return result; + } + + /** + * Gets the map value for `key`. + * + * @private + * @name get + * @memberOf MapCache + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function mapCacheGet(key) { + return getMapData(this, key).get(key); + } + + /** + * Checks if a map value for `key` exists. + * + * @private + * @name has + * @memberOf MapCache + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function mapCacheHas(key) { + return getMapData(this, key).has(key); + } + + /** + * Sets the map `key` to `value`. + * + * @private + * @name set + * @memberOf MapCache + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the map cache instance. + */ + function mapCacheSet(key, value) { + var data = getMapData(this, key), + size = data.size; + + data.set(key, value); + this.size += data.size == size ? 0 : 1; + return this; + } + + // Add methods to `MapCache`. + MapCache.prototype.clear = mapCacheClear; + MapCache.prototype['delete'] = mapCacheDelete; + MapCache.prototype.get = mapCacheGet; + MapCache.prototype.has = mapCacheHas; + MapCache.prototype.set = mapCacheSet; + + /*------------------------------------------------------------------------*/ + + /** + * + * Creates an array cache object to store unique values. + * + * @private + * @constructor + * @param {Array} [values] The values to cache. + */ + function SetCache(values) { + var index = -1, + length = values == null ? 0 : values.length; + + this.__data__ = new MapCache; + while (++index < length) { + this.add(values[index]); + } + } + + /** + * Adds `value` to the array cache. + * + * @private + * @name add + * @memberOf SetCache + * @alias push + * @param {*} value The value to cache. + * @returns {Object} Returns the cache instance. + */ + function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED); + return this; + } + + /** + * Checks if `value` is in the array cache. + * + * @private + * @name has + * @memberOf SetCache + * @param {*} value The value to search for. + * @returns {number} Returns `true` if `value` is found, else `false`. + */ + function setCacheHas(value) { + return this.__data__.has(value); + } + + // Add methods to `SetCache`. + SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; + SetCache.prototype.has = setCacheHas; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a stack cache object to store key-value pairs. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function Stack(entries) { + var data = this.__data__ = new ListCache(entries); + this.size = data.size; + } + + /** + * Removes all key-value entries from the stack. + * + * @private + * @name clear + * @memberOf Stack + */ + function stackClear() { + this.__data__ = new ListCache; + this.size = 0; + } + + /** + * Removes `key` and its value from the stack. + * + * @private + * @name delete + * @memberOf Stack + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function stackDelete(key) { + var data = this.__data__, + result = data['delete'](key); + + this.size = data.size; + return result; + } + + /** + * Gets the stack value for `key`. + * + * @private + * @name get + * @memberOf Stack + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function stackGet(key) { + return this.__data__.get(key); + } + + /** + * Checks if a stack value for `key` exists. + * + * @private + * @name has + * @memberOf Stack + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function stackHas(key) { + return this.__data__.has(key); + } + + /** + * Sets the stack `key` to `value`. + * + * @private + * @name set + * @memberOf Stack + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the stack cache instance. + */ + function stackSet(key, value) { + var data = this.__data__; + if (data instanceof ListCache) { + var pairs = data.__data__; + if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) { + pairs.push([key, value]); + this.size = ++data.size; + return this; + } + data = this.__data__ = new MapCache(pairs); + } + data.set(key, value); + this.size = data.size; + return this; + } + + // Add methods to `Stack`. + Stack.prototype.clear = stackClear; + Stack.prototype['delete'] = stackDelete; + Stack.prototype.get = stackGet; + Stack.prototype.has = stackHas; + Stack.prototype.set = stackSet; + + /*------------------------------------------------------------------------*/ + + /** + * Creates an array of the enumerable property names of the array-like `value`. + * + * @private + * @param {*} value The value to query. + * @param {boolean} inherited Specify returning inherited property names. + * @returns {Array} Returns the array of property names. + */ + function arrayLikeKeys(value, inherited) { + var isArr = isArray(value), + isArg = !isArr && isArguments(value), + isBuff = !isArr && !isArg && isBuffer(value), + isType = !isArr && !isArg && !isBuff && isTypedArray(value), + skipIndexes = isArr || isArg || isBuff || isType, + result = skipIndexes ? baseTimes(value.length, String) : [], + length = result.length; + + for (var key in value) { + if ((inherited || hasOwnProperty.call(value, key)) && + !(skipIndexes && ( + // Safari 9 has enumerable `arguments.length` in strict mode. + key == 'length' || + // Node.js 0.10 has enumerable non-index properties on buffers. + (isBuff && (key == 'offset' || key == 'parent')) || + // PhantomJS 2 has enumerable non-index properties on typed arrays. + (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) || + // Skip index properties. + isIndex(key, length) + ))) { + result.push(key); + } + } + return result; + } + + /** + * A specialized version of `_.sample` for arrays. + * + * @private + * @param {Array} array The array to sample. + * @returns {*} Returns the random element. + */ + function arraySample(array) { + var length = array.length; + return length ? array[baseRandom(0, length - 1)] : undefined; + } + + /** + * A specialized version of `_.sampleSize` for arrays. + * + * @private + * @param {Array} array The array to sample. + * @param {number} n The number of elements to sample. + * @returns {Array} Returns the random elements. + */ + function arraySampleSize(array, n) { + return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length)); + } + + /** + * A specialized version of `_.shuffle` for arrays. + * + * @private + * @param {Array} array The array to shuffle. + * @returns {Array} Returns the new shuffled array. + */ + function arrayShuffle(array) { + return shuffleSelf(copyArray(array)); + } + + /** + * This function is like `assignValue` except that it doesn't assign + * `undefined` values. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function assignMergeValue(object, key, value) { + if ((value !== undefined && !eq(object[key], value)) || + (value === undefined && !(key in object))) { + baseAssignValue(object, key, value); + } + } + + /** + * Assigns `value` to `key` of `object` if the existing value is not equivalent + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function assignValue(object, key, value) { + var objValue = object[key]; + if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || + (value === undefined && !(key in object))) { + baseAssignValue(object, key, value); + } + } + + /** + * Gets the index at which the `key` is found in `array` of key-value pairs. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} key The key to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function assocIndexOf(array, key) { + var length = array.length; + while (length--) { + if (eq(array[length][0], key)) { + return length; + } + } + return -1; + } + + /** + * Aggregates elements of `collection` on `accumulator` with keys transformed + * by `iteratee` and values set by `setter`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform keys. + * @param {Object} accumulator The initial aggregated object. + * @returns {Function} Returns `accumulator`. + */ + function baseAggregator(collection, setter, iteratee, accumulator) { + baseEach(collection, function(value, key, collection) { + setter(accumulator, value, iteratee(value), collection); + }); + return accumulator; + } + + /** + * The base implementation of `_.assign` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ + function baseAssign(object, source) { + return object && copyObject(source, keys(source), object); + } + + /** + * The base implementation of `_.assignIn` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ + function baseAssignIn(object, source) { + return object && copyObject(source, keysIn(source), object); + } + + /** + * The base implementation of `assignValue` and `assignMergeValue` without + * value checks. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function baseAssignValue(object, key, value) { + if (key == '__proto__' && defineProperty) { + defineProperty(object, key, { + 'configurable': true, + 'enumerable': true, + 'value': value, + 'writable': true + }); + } else { + object[key] = value; + } + } + + /** + * The base implementation of `_.at` without support for individual paths. + * + * @private + * @param {Object} object The object to iterate over. + * @param {string[]} paths The property paths to pick. + * @returns {Array} Returns the picked elements. + */ + function baseAt(object, paths) { + var index = -1, + length = paths.length, + result = Array(length), + skip = object == null; + + while (++index < length) { + result[index] = skip ? undefined : get(object, paths[index]); + } + return result; + } + + /** + * The base implementation of `_.clamp` which doesn't coerce arguments. + * + * @private + * @param {number} number The number to clamp. + * @param {number} [lower] The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the clamped number. + */ + function baseClamp(number, lower, upper) { + if (number === number) { + if (upper !== undefined) { + number = number <= upper ? number : upper; + } + if (lower !== undefined) { + number = number >= lower ? number : lower; + } + } + return number; + } + + /** + * The base implementation of `_.clone` and `_.cloneDeep` which tracks + * traversed objects. + * + * @private + * @param {*} value The value to clone. + * @param {boolean} bitmask The bitmask flags. + * 1 - Deep clone + * 2 - Flatten inherited properties + * 4 - Clone symbols + * @param {Function} [customizer] The function to customize cloning. + * @param {string} [key] The key of `value`. + * @param {Object} [object] The parent object of `value`. + * @param {Object} [stack] Tracks traversed objects and their clone counterparts. + * @returns {*} Returns the cloned value. + */ + function baseClone(value, bitmask, customizer, key, object, stack) { + var result, + isDeep = bitmask & CLONE_DEEP_FLAG, + isFlat = bitmask & CLONE_FLAT_FLAG, + isFull = bitmask & CLONE_SYMBOLS_FLAG; + + if (customizer) { + result = object ? customizer(value, key, object, stack) : customizer(value); + } + if (result !== undefined) { + return result; + } + if (!isObject(value)) { + return value; + } + var isArr = isArray(value); + if (isArr) { + result = initCloneArray(value); + if (!isDeep) { + return copyArray(value, result); + } + } else { + var tag = getTag(value), + isFunc = tag == funcTag || tag == genTag; + + if (isBuffer(value)) { + return cloneBuffer(value, isDeep); + } + if (tag == objectTag || tag == argsTag || (isFunc && !object)) { + result = (isFlat || isFunc) ? {} : initCloneObject(value); + if (!isDeep) { + return isFlat + ? copySymbolsIn(value, baseAssignIn(result, value)) + : copySymbols(value, baseAssign(result, value)); + } + } else { + if (!cloneableTags[tag]) { + return object ? value : {}; + } + result = initCloneByTag(value, tag, baseClone, isDeep); + } + } + // Check for circular references and return its corresponding clone. + stack || (stack = new Stack); + var stacked = stack.get(value); + if (stacked) { + return stacked; + } + stack.set(value, result); + + var keysFunc = isFull + ? (isFlat ? getAllKeysIn : getAllKeys) + : (isFlat ? keysIn : keys); + + var props = isArr ? undefined : keysFunc(value); + arrayEach(props || value, function(subValue, key) { + if (props) { + key = subValue; + subValue = value[key]; + } + // Recursively populate clone (susceptible to call stack limits). + assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + return result; + } + + /** + * The base implementation of `_.conforms` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property predicates to conform to. + * @returns {Function} Returns the new spec function. + */ + function baseConforms(source) { + var props = keys(source); + return function(object) { + return baseConformsTo(object, source, props); + }; + } + + /** + * The base implementation of `_.conformsTo` which accepts `props` to check. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property predicates to conform to. + * @returns {boolean} Returns `true` if `object` conforms, else `false`. + */ + function baseConformsTo(object, source, props) { + var length = props.length; + if (object == null) { + return !length; + } + object = Object(object); + while (length--) { + var key = props[length], + predicate = source[key], + value = object[key]; + + if ((value === undefined && !(key in object)) || !predicate(value)) { + return false; + } + } + return true; + } + + /** + * The base implementation of `_.delay` and `_.defer` which accepts `args` + * to provide to `func`. + * + * @private + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @param {Array} args The arguments to provide to `func`. + * @returns {number|Object} Returns the timer id or timeout object. + */ + function baseDelay(func, wait, args) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return setTimeout(function() { func.apply(undefined, args); }, wait); + } + + /** + * The base implementation of methods like `_.difference` without support + * for excluding multiple arrays or iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Array} values The values to exclude. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + */ + function baseDifference(array, values, iteratee, comparator) { + var index = -1, + includes = arrayIncludes, + isCommon = true, + length = array.length, + result = [], + valuesLength = values.length; + + if (!length) { + return result; + } + if (iteratee) { + values = arrayMap(values, baseUnary(iteratee)); + } + if (comparator) { + includes = arrayIncludesWith; + isCommon = false; + } + else if (values.length >= LARGE_ARRAY_SIZE) { + includes = cacheHas; + isCommon = false; + values = new SetCache(values); + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee == null ? value : iteratee(value); + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var valuesIndex = valuesLength; + while (valuesIndex--) { + if (values[valuesIndex] === computed) { + continue outer; + } + } + result.push(value); + } + else if (!includes(values, computed, comparator)) { + result.push(value); + } + } + return result; + } + + /** + * The base implementation of `_.forEach` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ + var baseEach = createBaseEach(baseForOwn); + + /** + * The base implementation of `_.forEachRight` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ + var baseEachRight = createBaseEach(baseForOwnRight, true); + + /** + * The base implementation of `_.every` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false` + */ + function baseEvery(collection, predicate) { + var result = true; + baseEach(collection, function(value, index, collection) { + result = !!predicate(value, index, collection); + return result; + }); + return result; + } + + /** + * The base implementation of methods like `_.max` and `_.min` which accepts a + * `comparator` to determine the extremum value. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The iteratee invoked per iteration. + * @param {Function} comparator The comparator used to compare values. + * @returns {*} Returns the extremum value. + */ + function baseExtremum(array, iteratee, comparator) { + var index = -1, + length = array.length; + + while (++index < length) { + var value = array[index], + current = iteratee(value); + + if (current != null && (computed === undefined + ? (current === current && !isSymbol(current)) + : comparator(current, computed) + )) { + var computed = current, + result = value; + } + } + return result; + } + + /** + * The base implementation of `_.fill` without an iteratee call guard. + * + * @private + * @param {Array} array The array to fill. + * @param {*} value The value to fill `array` with. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns `array`. + */ + function baseFill(array, value, start, end) { + var length = array.length; + + start = toInteger(start); + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = (end === undefined || end > length) ? length : toInteger(end); + if (end < 0) { + end += length; + } + end = start > end ? 0 : toLength(end); + while (start < end) { + array[start++] = value; + } + return array; + } + + /** + * The base implementation of `_.filter` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ + function baseFilter(collection, predicate) { + var result = []; + baseEach(collection, function(value, index, collection) { + if (predicate(value, index, collection)) { + result.push(value); + } + }); + return result; + } + + /** + * The base implementation of `_.flatten` with support for restricting flattening. + * + * @private + * @param {Array} array The array to flatten. + * @param {number} depth The maximum recursion depth. + * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. + * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. + * @param {Array} [result=[]] The initial result value. + * @returns {Array} Returns the new flattened array. + */ + function baseFlatten(array, depth, predicate, isStrict, result) { + var index = -1, + length = array.length; + + predicate || (predicate = isFlattenable); + result || (result = []); + + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + // Recursively flatten arrays (susceptible to call stack limits). + baseFlatten(value, depth - 1, predicate, isStrict, result); + } else { + arrayPush(result, value); + } + } else if (!isStrict) { + result[result.length] = value; + } + } + return result; + } + + /** + * The base implementation of `baseForOwn` which iterates over `object` + * properties returned by `keysFunc` and invokes `iteratee` for each property. + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {Function} keysFunc The function to get the keys of `object`. + * @returns {Object} Returns `object`. + */ + var baseFor = createBaseFor(); + + /** + * This function is like `baseFor` except that it iterates over properties + * in the opposite order. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {Function} keysFunc The function to get the keys of `object`. + * @returns {Object} Returns `object`. + */ + var baseForRight = createBaseFor(true); + + /** + * The base implementation of `_.forOwn` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ + function baseForOwn(object, iteratee) { + return object && baseFor(object, iteratee, keys); + } + + /** + * The base implementation of `_.forOwnRight` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ + function baseForOwnRight(object, iteratee) { + return object && baseForRight(object, iteratee, keys); + } + + /** + * The base implementation of `_.functions` which creates an array of + * `object` function property names filtered from `props`. + * + * @private + * @param {Object} object The object to inspect. + * @param {Array} props The property names to filter. + * @returns {Array} Returns the function names. + */ + function baseFunctions(object, props) { + return arrayFilter(props, function(key) { + return isFunction(object[key]); + }); + } + + /** + * The base implementation of `_.get` without support for default values. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @returns {*} Returns the resolved value. + */ + function baseGet(object, path) { + path = castPath(path, object); + + var index = 0, + length = path.length; + + while (object != null && index < length) { + object = object[toKey(path[index++])]; + } + return (index && index == length) ? object : undefined; + } + + /** + * The base implementation of `getAllKeys` and `getAllKeysIn` which uses + * `keysFunc` and `symbolsFunc` to get the enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Function} keysFunc The function to get the keys of `object`. + * @param {Function} symbolsFunc The function to get the symbols of `object`. + * @returns {Array} Returns the array of property names and symbols. + */ + function baseGetAllKeys(object, keysFunc, symbolsFunc) { + var result = keysFunc(object); + return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); + } + + /** + * The base implementation of `getTag` without fallbacks for buggy environments. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ + function baseGetTag(value) { + if (value == null) { + return value === undefined ? undefinedTag : nullTag; + } + return (symToStringTag && symToStringTag in Object(value)) + ? getRawTag(value) + : objectToString(value); + } + + /** + * The base implementation of `_.gt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + */ + function baseGt(value, other) { + return value > other; + } + + /** + * The base implementation of `_.has` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ + function baseHas(object, key) { + return object != null && hasOwnProperty.call(object, key); + } + + /** + * The base implementation of `_.hasIn` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ + function baseHasIn(object, key) { + return object != null && key in Object(object); + } + + /** + * The base implementation of `_.inRange` which doesn't coerce arguments. + * + * @private + * @param {number} number The number to check. + * @param {number} start The start of the range. + * @param {number} end The end of the range. + * @returns {boolean} Returns `true` if `number` is in the range, else `false`. + */ + function baseInRange(number, start, end) { + return number >= nativeMin(start, end) && number < nativeMax(start, end); + } + + /** + * The base implementation of methods like `_.intersection`, without support + * for iteratee shorthands, that accepts an array of arrays to inspect. + * + * @private + * @param {Array} arrays The arrays to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of shared values. + */ + function baseIntersection(arrays, iteratee, comparator) { + var includes = comparator ? arrayIncludesWith : arrayIncludes, + length = arrays[0].length, + othLength = arrays.length, + othIndex = othLength, + caches = Array(othLength), + maxLength = Infinity, + result = []; + + while (othIndex--) { + var array = arrays[othIndex]; + if (othIndex && iteratee) { + array = arrayMap(array, baseUnary(iteratee)); + } + maxLength = nativeMin(array.length, maxLength); + caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120)) + ? new SetCache(othIndex && array) + : undefined; + } + array = arrays[0]; + + var index = -1, + seen = caches[0]; + + outer: + while (++index < length && result.length < maxLength) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (!(seen + ? cacheHas(seen, computed) + : includes(result, computed, comparator) + )) { + othIndex = othLength; + while (--othIndex) { + var cache = caches[othIndex]; + if (!(cache + ? cacheHas(cache, computed) + : includes(arrays[othIndex], computed, comparator)) + ) { + continue outer; + } + } + if (seen) { + seen.push(computed); + } + result.push(value); + } + } + return result; + } + + /** + * The base implementation of `_.invert` and `_.invertBy` which inverts + * `object` with values transformed by `iteratee` and set by `setter`. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform values. + * @param {Object} accumulator The initial inverted object. + * @returns {Function} Returns `accumulator`. + */ + function baseInverter(object, setter, iteratee, accumulator) { + baseForOwn(object, function(value, key, object) { + setter(accumulator, iteratee(value), key, object); + }); + return accumulator; + } + + /** + * The base implementation of `_.invoke` without support for individual + * method arguments. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the method to invoke. + * @param {Array} args The arguments to invoke the method with. + * @returns {*} Returns the result of the invoked method. + */ + function baseInvoke(object, path, args) { + path = castPath(path, object); + object = parent(object, path); + var func = object == null ? object : object[toKey(last(path))]; + return func == null ? undefined : apply(func, object, args); + } + + /** + * The base implementation of `_.isArguments`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + */ + function baseIsArguments(value) { + return isObjectLike(value) && baseGetTag(value) == argsTag; + } + + /** + * The base implementation of `_.isArrayBuffer` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. + */ + function baseIsArrayBuffer(value) { + return isObjectLike(value) && baseGetTag(value) == arrayBufferTag; + } + + /** + * The base implementation of `_.isDate` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a date object, else `false`. + */ + function baseIsDate(value) { + return isObjectLike(value) && baseGetTag(value) == dateTag; + } + + /** + * The base implementation of `_.isEqual` which supports partial comparisons + * and tracks traversed objects. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {boolean} bitmask The bitmask flags. + * 1 - Unordered comparison + * 2 - Partial comparison + * @param {Function} [customizer] The function to customize comparisons. + * @param {Object} [stack] Tracks traversed `value` and `other` objects. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + */ + function baseIsEqual(value, other, bitmask, customizer, stack) { + if (value === other) { + return true; + } + if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { + return value !== value && other !== other; + } + return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); + } + + /** + * A specialized version of `baseIsEqual` for arrays and objects which performs + * deep comparisons and tracks traversed objects enabling objects with circular + * references to be compared. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} [stack] Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { + var objIsArr = isArray(object), + othIsArr = isArray(other), + objTag = objIsArr ? arrayTag : getTag(object), + othTag = othIsArr ? arrayTag : getTag(other); + + objTag = objTag == argsTag ? objectTag : objTag; + othTag = othTag == argsTag ? objectTag : othTag; + + var objIsObj = objTag == objectTag, + othIsObj = othTag == objectTag, + isSameTag = objTag == othTag; + + if (isSameTag && isBuffer(object)) { + if (!isBuffer(other)) { + return false; + } + objIsArr = true; + objIsObj = false; + } + if (isSameTag && !objIsObj) { + stack || (stack = new Stack); + return (objIsArr || isTypedArray(object)) + ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) + : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); + } + if (!(bitmask & COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), + othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); + + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, + othUnwrapped = othIsWrapped ? other.value() : other; + + stack || (stack = new Stack); + return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); + } + } + if (!isSameTag) { + return false; + } + stack || (stack = new Stack); + return equalObjects(object, other, bitmask, customizer, equalFunc, stack); + } + + /** + * The base implementation of `_.isMap` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + */ + function baseIsMap(value) { + return isObjectLike(value) && getTag(value) == mapTag; + } + + /** + * The base implementation of `_.isMatch` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Array} matchData The property names, values, and compare flags to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + */ + function baseIsMatch(object, source, matchData, customizer) { + var index = matchData.length, + length = index, + noCustomizer = !customizer; + + if (object == null) { + return !length; + } + object = Object(object); + while (index--) { + var data = matchData[index]; + if ((noCustomizer && data[2]) + ? data[1] !== object[data[0]] + : !(data[0] in object) + ) { + return false; + } + } + while (++index < length) { + data = matchData[index]; + var key = data[0], + objValue = object[key], + srcValue = data[1]; + + if (noCustomizer && data[2]) { + if (objValue === undefined && !(key in object)) { + return false; + } + } else { + var stack = new Stack; + if (customizer) { + var result = customizer(objValue, srcValue, key, object, source, stack); + } + if (!(result === undefined + ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) + : result + )) { + return false; + } + } + } + return true; + } + + /** + * The base implementation of `_.isNative` without bad shim checks. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a native function, + * else `false`. + */ + function baseIsNative(value) { + if (!isObject(value) || isMasked(value)) { + return false; + } + var pattern = isFunction(value) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); + } + + /** + * The base implementation of `_.isRegExp` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + */ + function baseIsRegExp(value) { + return isObjectLike(value) && baseGetTag(value) == regexpTag; + } + + /** + * The base implementation of `_.isSet` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + */ + function baseIsSet(value) { + return isObjectLike(value) && getTag(value) == setTag; + } + + /** + * The base implementation of `_.isTypedArray` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. + */ + function baseIsTypedArray(value) { + return isObjectLike(value) && + isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; + } + + /** + * The base implementation of `_.iteratee`. + * + * @private + * @param {*} [value=_.identity] The value to convert to an iteratee. + * @returns {Function} Returns the iteratee. + */ + function baseIteratee(value) { + // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. + // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. + if (typeof value == 'function') { + return value; + } + if (value == null) { + return identity; + } + if (typeof value == 'object') { + return isArray(value) + ? baseMatchesProperty(value[0], value[1]) + : baseMatches(value); + } + return property(value); + } + + /** + * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function baseKeys(object) { + if (!isPrototype(object)) { + return nativeKeys(object); + } + var result = []; + for (var key in Object(object)) { + if (hasOwnProperty.call(object, key) && key != 'constructor') { + result.push(key); + } + } + return result; + } + + /** + * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function baseKeysIn(object) { + if (!isObject(object)) { + return nativeKeysIn(object); + } + var isProto = isPrototype(object), + result = []; + + for (var key in object) { + if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) { + result.push(key); + } + } + return result; + } + + /** + * The base implementation of `_.lt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + */ + function baseLt(value, other) { + return value < other; + } + + /** + * The base implementation of `_.map` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ + function baseMap(collection, iteratee) { + var index = -1, + result = isArrayLike(collection) ? Array(collection.length) : []; + + baseEach(collection, function(value, key, collection) { + result[++index] = iteratee(value, key, collection); + }); + return result; + } + + /** + * The base implementation of `_.matches` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property values to match. + * @returns {Function} Returns the new spec function. + */ + function baseMatches(source) { + var matchData = getMatchData(source); + if (matchData.length == 1 && matchData[0][2]) { + return matchesStrictComparable(matchData[0][0], matchData[0][1]); + } + return function(object) { + return object === source || baseIsMatch(object, source, matchData); + }; + } + + /** + * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. + * + * @private + * @param {string} path The path of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ + function baseMatchesProperty(path, srcValue) { + if (isKey(path) && isStrictComparable(srcValue)) { + return matchesStrictComparable(toKey(path), srcValue); + } + return function(object) { + var objValue = get(object, path); + return (objValue === undefined && objValue === srcValue) + ? hasIn(object, path) + : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); + }; + } + + /** + * The base implementation of `_.merge` without support for multiple sources. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @param {number} srcIndex The index of `source`. + * @param {Function} [customizer] The function to customize merged values. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + */ + function baseMerge(object, source, srcIndex, customizer, stack) { + if (object === source) { + return; + } + baseFor(source, function(srcValue, key) { + if (isObject(srcValue)) { + stack || (stack = new Stack); + baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); + } + else { + var newValue = customizer + ? customizer(object[key], srcValue, (key + ''), object, source, stack) + : undefined; + + if (newValue === undefined) { + newValue = srcValue; + } + assignMergeValue(object, key, newValue); + } + }, keysIn); + } + + /** + * A specialized version of `baseMerge` for arrays and objects which performs + * deep merges and tracks traversed objects enabling objects with circular + * references to be merged. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @param {string} key The key of the value to merge. + * @param {number} srcIndex The index of `source`. + * @param {Function} mergeFunc The function to merge values. + * @param {Function} [customizer] The function to customize assigned values. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + */ + function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) { + var objValue = object[key], + srcValue = source[key], + stacked = stack.get(srcValue); + + if (stacked) { + assignMergeValue(object, key, stacked); + return; + } + var newValue = customizer + ? customizer(objValue, srcValue, (key + ''), object, source, stack) + : undefined; + + var isCommon = newValue === undefined; + + if (isCommon) { + var isArr = isArray(srcValue), + isBuff = !isArr && isBuffer(srcValue), + isTyped = !isArr && !isBuff && isTypedArray(srcValue); + + newValue = srcValue; + if (isArr || isBuff || isTyped) { + if (isArray(objValue)) { + newValue = objValue; + } + else if (isArrayLikeObject(objValue)) { + newValue = copyArray(objValue); + } + else if (isBuff) { + isCommon = false; + newValue = cloneBuffer(srcValue, true); + } + else if (isTyped) { + isCommon = false; + newValue = cloneTypedArray(srcValue, true); + } + else { + newValue = []; + } + } + else if (isPlainObject(srcValue) || isArguments(srcValue)) { + newValue = objValue; + if (isArguments(objValue)) { + newValue = toPlainObject(objValue); + } + else if (!isObject(objValue) || (srcIndex && isFunction(objValue))) { + newValue = initCloneObject(srcValue); + } + } + else { + isCommon = false; + } + } + if (isCommon) { + // Recursively merge objects and arrays (susceptible to call stack limits). + stack.set(srcValue, newValue); + mergeFunc(newValue, srcValue, srcIndex, customizer, stack); + stack['delete'](srcValue); + } + assignMergeValue(object, key, newValue); + } + + /** + * The base implementation of `_.nth` which doesn't coerce arguments. + * + * @private + * @param {Array} array The array to query. + * @param {number} n The index of the element to return. + * @returns {*} Returns the nth element of `array`. + */ + function baseNth(array, n) { + var length = array.length; + if (!length) { + return; + } + n += n < 0 ? length : 0; + return isIndex(n, length) ? array[n] : undefined; + } + + /** + * The base implementation of `_.orderBy` without param guards. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by. + * @param {string[]} orders The sort orders of `iteratees`. + * @returns {Array} Returns the new sorted array. + */ + function baseOrderBy(collection, iteratees, orders) { + var index = -1; + iteratees = arrayMap(iteratees.length ? iteratees : [identity], baseUnary(getIteratee())); + + var result = baseMap(collection, function(value, key, collection) { + var criteria = arrayMap(iteratees, function(iteratee) { + return iteratee(value); + }); + return { 'criteria': criteria, 'index': ++index, 'value': value }; + }); + + return baseSortBy(result, function(object, other) { + return compareMultiple(object, other, orders); + }); + } + + /** + * The base implementation of `_.pick` without support for individual + * property identifiers. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @returns {Object} Returns the new object. + */ + function basePick(object, paths) { + return basePickBy(object, paths, function(value, path) { + return hasIn(object, path); + }); + } + + /** + * The base implementation of `_.pickBy` without support for iteratee shorthands. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @param {Function} predicate The function invoked per property. + * @returns {Object} Returns the new object. + */ + function basePickBy(object, paths, predicate) { + var index = -1, + length = paths.length, + result = {}; + + while (++index < length) { + var path = paths[index], + value = baseGet(object, path); + + if (predicate(value, path)) { + baseSet(result, castPath(path, object), value); + } + } + return result; + } + + /** + * A specialized version of `baseProperty` which supports deep paths. + * + * @private + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + */ + function basePropertyDeep(path) { + return function(object) { + return baseGet(object, path); + }; + } + + /** + * The base implementation of `_.pullAllBy` without support for iteratee + * shorthands. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns `array`. + */ + function basePullAll(array, values, iteratee, comparator) { + var indexOf = comparator ? baseIndexOfWith : baseIndexOf, + index = -1, + length = values.length, + seen = array; + + if (array === values) { + values = copyArray(values); + } + if (iteratee) { + seen = arrayMap(array, baseUnary(iteratee)); + } + while (++index < length) { + var fromIndex = 0, + value = values[index], + computed = iteratee ? iteratee(value) : value; + + while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) { + if (seen !== array) { + splice.call(seen, fromIndex, 1); + } + splice.call(array, fromIndex, 1); + } + } + return array; + } + + /** + * The base implementation of `_.pullAt` without support for individual + * indexes or capturing the removed elements. + * + * @private + * @param {Array} array The array to modify. + * @param {number[]} indexes The indexes of elements to remove. + * @returns {Array} Returns `array`. + */ + function basePullAt(array, indexes) { + var length = array ? indexes.length : 0, + lastIndex = length - 1; + + while (length--) { + var index = indexes[length]; + if (length == lastIndex || index !== previous) { + var previous = index; + if (isIndex(index)) { + splice.call(array, index, 1); + } else { + baseUnset(array, index); + } + } + } + return array; + } + + /** + * The base implementation of `_.random` without support for returning + * floating-point numbers. + * + * @private + * @param {number} lower The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the random number. + */ + function baseRandom(lower, upper) { + return lower + nativeFloor(nativeRandom() * (upper - lower + 1)); + } + + /** + * The base implementation of `_.range` and `_.rangeRight` which doesn't + * coerce arguments. + * + * @private + * @param {number} start The start of the range. + * @param {number} end The end of the range. + * @param {number} step The value to increment or decrement by. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Array} Returns the range of numbers. + */ + function baseRange(start, end, step, fromRight) { + var index = -1, + length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), + result = Array(length); + + while (length--) { + result[fromRight ? length : ++index] = start; + start += step; + } + return result; + } + + /** + * The base implementation of `_.repeat` which doesn't coerce arguments. + * + * @private + * @param {string} string The string to repeat. + * @param {number} n The number of times to repeat the string. + * @returns {string} Returns the repeated string. + */ + function baseRepeat(string, n) { + var result = ''; + if (!string || n < 1 || n > MAX_SAFE_INTEGER) { + return result; + } + // Leverage the exponentiation by squaring algorithm for a faster repeat. + // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details. + do { + if (n % 2) { + result += string; + } + n = nativeFloor(n / 2); + if (n) { + string += string; + } + } while (n); + + return result; + } + + /** + * The base implementation of `_.rest` which doesn't validate or coerce arguments. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @returns {Function} Returns the new function. + */ + function baseRest(func, start) { + return setToString(overRest(func, start, identity), func + ''); + } + + /** + * The base implementation of `_.sample`. + * + * @private + * @param {Array|Object} collection The collection to sample. + * @returns {*} Returns the random element. + */ + function baseSample(collection) { + return arraySample(values(collection)); + } + + /** + * The base implementation of `_.sampleSize` without param guards. + * + * @private + * @param {Array|Object} collection The collection to sample. + * @param {number} n The number of elements to sample. + * @returns {Array} Returns the random elements. + */ + function baseSampleSize(collection, n) { + var array = values(collection); + return shuffleSelf(array, baseClamp(n, 0, array.length)); + } + + /** + * The base implementation of `_.set`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ + function baseSet(object, path, value, customizer) { + if (!isObject(object)) { + return object; + } + path = castPath(path, object); + + var index = -1, + length = path.length, + lastIndex = length - 1, + nested = object; + + while (nested != null && ++index < length) { + var key = toKey(path[index]), + newValue = value; + + if (index != lastIndex) { + var objValue = nested[key]; + newValue = customizer ? customizer(objValue, key, nested) : undefined; + if (newValue === undefined) { + newValue = isObject(objValue) + ? objValue + : (isIndex(path[index + 1]) ? [] : {}); + } + } + assignValue(nested, key, newValue); + nested = nested[key]; + } + return object; + } + + /** + * The base implementation of `setData` without support for hot loop shorting. + * + * @private + * @param {Function} func The function to associate metadata with. + * @param {*} data The metadata. + * @returns {Function} Returns `func`. + */ + var baseSetData = !metaMap ? identity : function(func, data) { + metaMap.set(func, data); + return func; + }; + + /** + * The base implementation of `setToString` without support for hot loop shorting. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ + var baseSetToString = !defineProperty ? identity : function(func, string) { + return defineProperty(func, 'toString', { + 'configurable': true, + 'enumerable': false, + 'value': constant(string), + 'writable': true + }); + }; + + /** + * The base implementation of `_.shuffle`. + * + * @private + * @param {Array|Object} collection The collection to shuffle. + * @returns {Array} Returns the new shuffled array. + */ + function baseShuffle(collection) { + return shuffleSelf(values(collection)); + } + + /** + * The base implementation of `_.slice` without an iteratee call guard. + * + * @private + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ + function baseSlice(array, start, end) { + var index = -1, + length = array.length; + + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = end > length ? length : end; + if (end < 0) { + end += length; + } + length = start > end ? 0 : ((end - start) >>> 0); + start >>>= 0; + + var result = Array(length); + while (++index < length) { + result[index] = array[index + start]; + } + return result; + } + + /** + * The base implementation of `_.some` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ + function baseSome(collection, predicate) { + var result; + + baseEach(collection, function(value, index, collection) { + result = predicate(value, index, collection); + return !result; + }); + return !!result; + } + + /** + * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which + * performs a binary search of `array` to determine the index at which `value` + * should be inserted into `array` in order to maintain its sort order. + * + * @private + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {boolean} [retHighest] Specify returning the highest qualified index. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + */ + function baseSortedIndex(array, value, retHighest) { + var low = 0, + high = array == null ? low : array.length; + + if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) { + while (low < high) { + var mid = (low + high) >>> 1, + computed = array[mid]; + + if (computed !== null && !isSymbol(computed) && + (retHighest ? (computed <= value) : (computed < value))) { + low = mid + 1; + } else { + high = mid; + } + } + return high; + } + return baseSortedIndexBy(array, value, identity, retHighest); + } + + /** + * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy` + * which invokes `iteratee` for `value` and each element of `array` to compute + * their sort ranking. The iteratee is invoked with one argument; (value). + * + * @private + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {Function} iteratee The iteratee invoked per element. + * @param {boolean} [retHighest] Specify returning the highest qualified index. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + */ + function baseSortedIndexBy(array, value, iteratee, retHighest) { + value = iteratee(value); + + var low = 0, + high = array == null ? 0 : array.length, + valIsNaN = value !== value, + valIsNull = value === null, + valIsSymbol = isSymbol(value), + valIsUndefined = value === undefined; + + while (low < high) { + var mid = nativeFloor((low + high) / 2), + computed = iteratee(array[mid]), + othIsDefined = computed !== undefined, + othIsNull = computed === null, + othIsReflexive = computed === computed, + othIsSymbol = isSymbol(computed); + + if (valIsNaN) { + var setLow = retHighest || othIsReflexive; + } else if (valIsUndefined) { + setLow = othIsReflexive && (retHighest || othIsDefined); + } else if (valIsNull) { + setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull); + } else if (valIsSymbol) { + setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol); + } else if (othIsNull || othIsSymbol) { + setLow = false; + } else { + setLow = retHighest ? (computed <= value) : (computed < value); + } + if (setLow) { + low = mid + 1; + } else { + high = mid; + } + } + return nativeMin(high, MAX_ARRAY_INDEX); + } + + /** + * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ + function baseSortedUniq(array, iteratee) { + var index = -1, + length = array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + if (!index || !eq(computed, seen)) { + var seen = computed; + result[resIndex++] = value === 0 ? 0 : value; + } + } + return result; + } + + /** + * The base implementation of `_.toNumber` which doesn't ensure correct + * conversions of binary, hexadecimal, or octal string values. + * + * @private + * @param {*} value The value to process. + * @returns {number} Returns the number. + */ + function baseToNumber(value) { + if (typeof value == 'number') { + return value; + } + if (isSymbol(value)) { + return NAN; + } + return +value; + } + + /** + * The base implementation of `_.toString` which doesn't convert nullish + * values to empty strings. + * + * @private + * @param {*} value The value to process. + * @returns {string} Returns the string. + */ + function baseToString(value) { + // Exit early for strings to avoid a performance hit in some environments. + if (typeof value == 'string') { + return value; + } + if (isArray(value)) { + // Recursively convert values (susceptible to call stack limits). + return arrayMap(value, baseToString) + ''; + } + if (isSymbol(value)) { + return symbolToString ? symbolToString.call(value) : ''; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; + } + + /** + * The base implementation of `_.uniqBy` without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ + function baseUniq(array, iteratee, comparator) { + var index = -1, + includes = arrayIncludes, + length = array.length, + isCommon = true, + result = [], + seen = result; + + if (comparator) { + isCommon = false; + includes = arrayIncludesWith; + } + else if (length >= LARGE_ARRAY_SIZE) { + var set = iteratee ? null : createSet(array); + if (set) { + return setToArray(set); + } + isCommon = false; + includes = cacheHas; + seen = new SetCache; + } + else { + seen = iteratee ? [] : result; + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var seenIndex = seen.length; + while (seenIndex--) { + if (seen[seenIndex] === computed) { + continue outer; + } + } + if (iteratee) { + seen.push(computed); + } + result.push(value); + } + else if (!includes(seen, computed, comparator)) { + if (seen !== result) { + seen.push(computed); + } + result.push(value); + } + } + return result; + } + + /** + * The base implementation of `_.unset`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The property path to unset. + * @returns {boolean} Returns `true` if the property is deleted, else `false`. + */ + function baseUnset(object, path) { + path = castPath(path, object); + object = parent(object, path); + return object == null || delete object[toKey(last(path))]; + } + + /** + * The base implementation of `_.update`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to update. + * @param {Function} updater The function to produce the updated value. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ + function baseUpdate(object, path, updater, customizer) { + return baseSet(object, path, updater(baseGet(object, path)), customizer); + } + + /** + * The base implementation of methods like `_.dropWhile` and `_.takeWhile` + * without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to query. + * @param {Function} predicate The function invoked per iteration. + * @param {boolean} [isDrop] Specify dropping elements instead of taking them. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Array} Returns the slice of `array`. + */ + function baseWhile(array, predicate, isDrop, fromRight) { + var length = array.length, + index = fromRight ? length : -1; + + while ((fromRight ? index-- : ++index < length) && + predicate(array[index], index, array)) {} + + return isDrop + ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length)) + : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index)); + } + + /** + * The base implementation of `wrapperValue` which returns the result of + * performing a sequence of actions on the unwrapped `value`, where each + * successive action is supplied the return value of the previous. + * + * @private + * @param {*} value The unwrapped value. + * @param {Array} actions Actions to perform to resolve the unwrapped value. + * @returns {*} Returns the resolved value. + */ + function baseWrapperValue(value, actions) { + var result = value; + if (result instanceof LazyWrapper) { + result = result.value(); + } + return arrayReduce(actions, function(result, action) { + return action.func.apply(action.thisArg, arrayPush([result], action.args)); + }, result); + } + + /** + * The base implementation of methods like `_.xor`, without support for + * iteratee shorthands, that accepts an array of arrays to inspect. + * + * @private + * @param {Array} arrays The arrays to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of values. + */ + function baseXor(arrays, iteratee, comparator) { + var length = arrays.length; + if (length < 2) { + return length ? baseUniq(arrays[0]) : []; + } + var index = -1, + result = Array(length); + + while (++index < length) { + var array = arrays[index], + othIndex = -1; + + while (++othIndex < length) { + if (othIndex != index) { + result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator); + } + } + } + return baseUniq(baseFlatten(result, 1), iteratee, comparator); + } + + /** + * This base implementation of `_.zipObject` which assigns values using `assignFunc`. + * + * @private + * @param {Array} props The property identifiers. + * @param {Array} values The property values. + * @param {Function} assignFunc The function to assign values. + * @returns {Object} Returns the new object. + */ + function baseZipObject(props, values, assignFunc) { + var index = -1, + length = props.length, + valsLength = values.length, + result = {}; + + while (++index < length) { + var value = index < valsLength ? values[index] : undefined; + assignFunc(result, props[index], value); + } + return result; + } + + /** + * Casts `value` to an empty array if it's not an array like object. + * + * @private + * @param {*} value The value to inspect. + * @returns {Array|Object} Returns the cast array-like object. + */ + function castArrayLikeObject(value) { + return isArrayLikeObject(value) ? value : []; + } + + /** + * Casts `value` to `identity` if it's not a function. + * + * @private + * @param {*} value The value to inspect. + * @returns {Function} Returns cast function. + */ + function castFunction(value) { + return typeof value == 'function' ? value : identity; + } + + /** + * Casts `value` to a path array if it's not one. + * + * @private + * @param {*} value The value to inspect. + * @param {Object} [object] The object to query keys on. + * @returns {Array} Returns the cast property path array. + */ + function castPath(value, object) { + if (isArray(value)) { + return value; + } + return isKey(value, object) ? [value] : stringToPath(toString(value)); + } + + /** + * A `baseRest` alias which can be replaced with `identity` by module + * replacement plugins. + * + * @private + * @type {Function} + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ + var castRest = baseRest; + + /** + * Casts `array` to a slice if it's needed. + * + * @private + * @param {Array} array The array to inspect. + * @param {number} start The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the cast slice. + */ + function castSlice(array, start, end) { + var length = array.length; + end = end === undefined ? length : end; + return (!start && end >= length) ? array : baseSlice(array, start, end); + } + + /** + * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout). + * + * @private + * @param {number|Object} id The timer id or timeout object of the timer to clear. + */ + var clearTimeout = ctxClearTimeout || function(id) { + return root.clearTimeout(id); + }; + + /** + * Creates a clone of `buffer`. + * + * @private + * @param {Buffer} buffer The buffer to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Buffer} Returns the cloned buffer. + */ + function cloneBuffer(buffer, isDeep) { + if (isDeep) { + return buffer.slice(); + } + var length = buffer.length, + result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); + + buffer.copy(result); + return result; + } + + /** + * Creates a clone of `arrayBuffer`. + * + * @private + * @param {ArrayBuffer} arrayBuffer The array buffer to clone. + * @returns {ArrayBuffer} Returns the cloned array buffer. + */ + function cloneArrayBuffer(arrayBuffer) { + var result = new arrayBuffer.constructor(arrayBuffer.byteLength); + new Uint8Array(result).set(new Uint8Array(arrayBuffer)); + return result; + } + + /** + * Creates a clone of `dataView`. + * + * @private + * @param {Object} dataView The data view to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned data view. + */ + function cloneDataView(dataView, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; + return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); + } + + /** + * Creates a clone of `map`. + * + * @private + * @param {Object} map The map to clone. + * @param {Function} cloneFunc The function to clone values. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned map. + */ + function cloneMap(map, isDeep, cloneFunc) { + var array = isDeep ? cloneFunc(mapToArray(map), CLONE_DEEP_FLAG) : mapToArray(map); + return arrayReduce(array, addMapEntry, new map.constructor); + } + + /** + * Creates a clone of `regexp`. + * + * @private + * @param {Object} regexp The regexp to clone. + * @returns {Object} Returns the cloned regexp. + */ + function cloneRegExp(regexp) { + var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); + result.lastIndex = regexp.lastIndex; + return result; + } + + /** + * Creates a clone of `set`. + * + * @private + * @param {Object} set The set to clone. + * @param {Function} cloneFunc The function to clone values. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned set. + */ + function cloneSet(set, isDeep, cloneFunc) { + var array = isDeep ? cloneFunc(setToArray(set), CLONE_DEEP_FLAG) : setToArray(set); + return arrayReduce(array, addSetEntry, new set.constructor); + } + + /** + * Creates a clone of the `symbol` object. + * + * @private + * @param {Object} symbol The symbol object to clone. + * @returns {Object} Returns the cloned symbol object. + */ + function cloneSymbol(symbol) { + return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; + } + + /** + * Creates a clone of `typedArray`. + * + * @private + * @param {Object} typedArray The typed array to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned typed array. + */ + function cloneTypedArray(typedArray, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; + return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); + } + + /** + * Compares values to sort them in ascending order. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {number} Returns the sort order indicator for `value`. + */ + function compareAscending(value, other) { + if (value !== other) { + var valIsDefined = value !== undefined, + valIsNull = value === null, + valIsReflexive = value === value, + valIsSymbol = isSymbol(value); + + var othIsDefined = other !== undefined, + othIsNull = other === null, + othIsReflexive = other === other, + othIsSymbol = isSymbol(other); + + if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || + (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || + (valIsNull && othIsDefined && othIsReflexive) || + (!valIsDefined && othIsReflexive) || + !valIsReflexive) { + return 1; + } + if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || + (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || + (othIsNull && valIsDefined && valIsReflexive) || + (!othIsDefined && valIsReflexive) || + !othIsReflexive) { + return -1; + } + } + return 0; + } + + /** + * Used by `_.orderBy` to compare multiple properties of a value to another + * and stable sort them. + * + * If `orders` is unspecified, all values are sorted in ascending order. Otherwise, + * specify an order of "desc" for descending or "asc" for ascending sort order + * of corresponding values. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {boolean[]|string[]} orders The order to sort by for each property. + * @returns {number} Returns the sort order indicator for `object`. + */ + function compareMultiple(object, other, orders) { + var index = -1, + objCriteria = object.criteria, + othCriteria = other.criteria, + length = objCriteria.length, + ordersLength = orders.length; + + while (++index < length) { + var result = compareAscending(objCriteria[index], othCriteria[index]); + if (result) { + if (index >= ordersLength) { + return result; + } + var order = orders[index]; + return result * (order == 'desc' ? -1 : 1); + } + } + // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications + // that causes it, under certain circumstances, to provide the same value for + // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247 + // for more details. + // + // This also ensures a stable sort in V8 and other engines. + // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details. + return object.index - other.index; + } + + /** + * Creates an array that is the composition of partially applied arguments, + * placeholders, and provided arguments into a single array of arguments. + * + * @private + * @param {Array} args The provided arguments. + * @param {Array} partials The arguments to prepend to those provided. + * @param {Array} holders The `partials` placeholder indexes. + * @params {boolean} [isCurried] Specify composing for a curried function. + * @returns {Array} Returns the new array of composed arguments. + */ + function composeArgs(args, partials, holders, isCurried) { + var argsIndex = -1, + argsLength = args.length, + holdersLength = holders.length, + leftIndex = -1, + leftLength = partials.length, + rangeLength = nativeMax(argsLength - holdersLength, 0), + result = Array(leftLength + rangeLength), + isUncurried = !isCurried; + + while (++leftIndex < leftLength) { + result[leftIndex] = partials[leftIndex]; + } + while (++argsIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result[holders[argsIndex]] = args[argsIndex]; + } + } + while (rangeLength--) { + result[leftIndex++] = args[argsIndex++]; + } + return result; + } + + /** + * This function is like `composeArgs` except that the arguments composition + * is tailored for `_.partialRight`. + * + * @private + * @param {Array} args The provided arguments. + * @param {Array} partials The arguments to append to those provided. + * @param {Array} holders The `partials` placeholder indexes. + * @params {boolean} [isCurried] Specify composing for a curried function. + * @returns {Array} Returns the new array of composed arguments. + */ + function composeArgsRight(args, partials, holders, isCurried) { + var argsIndex = -1, + argsLength = args.length, + holdersIndex = -1, + holdersLength = holders.length, + rightIndex = -1, + rightLength = partials.length, + rangeLength = nativeMax(argsLength - holdersLength, 0), + result = Array(rangeLength + rightLength), + isUncurried = !isCurried; + + while (++argsIndex < rangeLength) { + result[argsIndex] = args[argsIndex]; + } + var offset = argsIndex; + while (++rightIndex < rightLength) { + result[offset + rightIndex] = partials[rightIndex]; + } + while (++holdersIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result[offset + holders[holdersIndex]] = args[argsIndex++]; + } + } + return result; + } + + /** + * Copies the values of `source` to `array`. + * + * @private + * @param {Array} source The array to copy values from. + * @param {Array} [array=[]] The array to copy values to. + * @returns {Array} Returns `array`. + */ + function copyArray(source, array) { + var index = -1, + length = source.length; + + array || (array = Array(length)); + while (++index < length) { + array[index] = source[index]; + } + return array; + } + + /** + * Copies properties of `source` to `object`. + * + * @private + * @param {Object} source The object to copy properties from. + * @param {Array} props The property identifiers to copy. + * @param {Object} [object={}] The object to copy properties to. + * @param {Function} [customizer] The function to customize copied values. + * @returns {Object} Returns `object`. + */ + function copyObject(source, props, object, customizer) { + var isNew = !object; + object || (object = {}); + + var index = -1, + length = props.length; + + while (++index < length) { + var key = props[index]; + + var newValue = customizer + ? customizer(object[key], source[key], key, object, source) + : undefined; + + if (newValue === undefined) { + newValue = source[key]; + } + if (isNew) { + baseAssignValue(object, key, newValue); + } else { + assignValue(object, key, newValue); + } + } + return object; + } + + /** + * Copies own symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ + function copySymbols(source, object) { + return copyObject(source, getSymbols(source), object); + } + + /** + * Copies own and inherited symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ + function copySymbolsIn(source, object) { + return copyObject(source, getSymbolsIn(source), object); + } + + /** + * Creates a function like `_.groupBy`. + * + * @private + * @param {Function} setter The function to set accumulator values. + * @param {Function} [initializer] The accumulator object initializer. + * @returns {Function} Returns the new aggregator function. + */ + function createAggregator(setter, initializer) { + return function(collection, iteratee) { + var func = isArray(collection) ? arrayAggregator : baseAggregator, + accumulator = initializer ? initializer() : {}; + + return func(collection, setter, getIteratee(iteratee, 2), accumulator); + }; + } + + /** + * Creates a function like `_.assign`. + * + * @private + * @param {Function} assigner The function to assign values. + * @returns {Function} Returns the new assigner function. + */ + function createAssigner(assigner) { + return baseRest(function(object, sources) { + var index = -1, + length = sources.length, + customizer = length > 1 ? sources[length - 1] : undefined, + guard = length > 2 ? sources[2] : undefined; + + customizer = (assigner.length > 3 && typeof customizer == 'function') + ? (length--, customizer) + : undefined; + + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + customizer = length < 3 ? undefined : customizer; + length = 1; + } + object = Object(object); + while (++index < length) { + var source = sources[index]; + if (source) { + assigner(object, source, index, customizer); + } + } + return object; + }); + } + + /** + * Creates a `baseEach` or `baseEachRight` function. + * + * @private + * @param {Function} eachFunc The function to iterate over a collection. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ + function createBaseEach(eachFunc, fromRight) { + return function(collection, iteratee) { + if (collection == null) { + return collection; + } + if (!isArrayLike(collection)) { + return eachFunc(collection, iteratee); + } + var length = collection.length, + index = fromRight ? length : -1, + iterable = Object(collection); + + while ((fromRight ? index-- : ++index < length)) { + if (iteratee(iterable[index], index, iterable) === false) { + break; + } + } + return collection; + }; + } + + /** + * Creates a base function for methods like `_.forIn` and `_.forOwn`. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ + function createBaseFor(fromRight) { + return function(object, iteratee, keysFunc) { + var index = -1, + iterable = Object(object), + props = keysFunc(object), + length = props.length; + + while (length--) { + var key = props[fromRight ? length : ++index]; + if (iteratee(iterable[key], key, iterable) === false) { + break; + } + } + return object; + }; + } + + /** + * Creates a function that wraps `func` to invoke it with the optional `this` + * binding of `thisArg`. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} [thisArg] The `this` binding of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createBind(func, bitmask, thisArg) { + var isBind = bitmask & WRAP_BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + return fn.apply(isBind ? thisArg : this, arguments); + } + return wrapper; + } + + /** + * Creates a function like `_.lowerFirst`. + * + * @private + * @param {string} methodName The name of the `String` case method to use. + * @returns {Function} Returns the new case function. + */ + function createCaseFirst(methodName) { + return function(string) { + string = toString(string); + + var strSymbols = hasUnicode(string) + ? stringToArray(string) + : undefined; + + var chr = strSymbols + ? strSymbols[0] + : string.charAt(0); + + var trailing = strSymbols + ? castSlice(strSymbols, 1).join('') + : string.slice(1); + + return chr[methodName]() + trailing; + }; + } + + /** + * Creates a function like `_.camelCase`. + * + * @private + * @param {Function} callback The function to combine each word. + * @returns {Function} Returns the new compounder function. + */ + function createCompounder(callback) { + return function(string) { + return arrayReduce(words(deburr(string).replace(reApos, '')), callback, ''); + }; + } + + /** + * Creates a function that produces an instance of `Ctor` regardless of + * whether it was invoked as part of a `new` expression or by `call` or `apply`. + * + * @private + * @param {Function} Ctor The constructor to wrap. + * @returns {Function} Returns the new wrapped function. + */ + function createCtor(Ctor) { + return function() { + // Use a `switch` statement to work with class constructors. See + // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist + // for more details. + var args = arguments; + switch (args.length) { + case 0: return new Ctor; + case 1: return new Ctor(args[0]); + case 2: return new Ctor(args[0], args[1]); + case 3: return new Ctor(args[0], args[1], args[2]); + case 4: return new Ctor(args[0], args[1], args[2], args[3]); + case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]); + case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); + case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); + } + var thisBinding = baseCreate(Ctor.prototype), + result = Ctor.apply(thisBinding, args); + + // Mimic the constructor's `return` behavior. + // See https://es5.github.io/#x13.2.2 for more details. + return isObject(result) ? result : thisBinding; + }; + } + + /** + * Creates a function that wraps `func` to enable currying. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {number} arity The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createCurry(func, bitmask, arity) { + var Ctor = createCtor(func); + + function wrapper() { + var length = arguments.length, + args = Array(length), + index = length, + placeholder = getHolder(wrapper); + + while (index--) { + args[index] = arguments[index]; + } + var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder) + ? [] + : replaceHolders(args, placeholder); + + length -= holders.length; + if (length < arity) { + return createRecurry( + func, bitmask, createHybrid, wrapper.placeholder, undefined, + args, holders, undefined, undefined, arity - length); + } + var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + return apply(fn, this, args); + } + return wrapper; + } + + /** + * Creates a `_.find` or `_.findLast` function. + * + * @private + * @param {Function} findIndexFunc The function to find the collection index. + * @returns {Function} Returns the new find function. + */ + function createFind(findIndexFunc) { + return function(collection, predicate, fromIndex) { + var iterable = Object(collection); + if (!isArrayLike(collection)) { + var iteratee = getIteratee(predicate, 3); + collection = keys(collection); + predicate = function(key) { return iteratee(iterable[key], key, iterable); }; + } + var index = findIndexFunc(collection, predicate, fromIndex); + return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; + }; + } + + /** + * Creates a `_.flow` or `_.flowRight` function. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new flow function. + */ + function createFlow(fromRight) { + return flatRest(function(funcs) { + var length = funcs.length, + index = length, + prereq = LodashWrapper.prototype.thru; + + if (fromRight) { + funcs.reverse(); + } + while (index--) { + var func = funcs[index]; + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + if (prereq && !wrapper && getFuncName(func) == 'wrapper') { + var wrapper = new LodashWrapper([], true); + } + } + index = wrapper ? index : length; + while (++index < length) { + func = funcs[index]; + + var funcName = getFuncName(func), + data = funcName == 'wrapper' ? getData(func) : undefined; + + if (data && isLaziable(data[0]) && + data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && + !data[4].length && data[9] == 1 + ) { + wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); + } else { + wrapper = (func.length == 1 && isLaziable(func)) + ? wrapper[funcName]() + : wrapper.thru(func); + } + } + return function() { + var args = arguments, + value = args[0]; + + if (wrapper && args.length == 1 && isArray(value)) { + return wrapper.plant(value).value(); + } + var index = 0, + result = length ? funcs[index].apply(this, args) : value; + + while (++index < length) { + result = funcs[index].call(this, result); + } + return result; + }; + }); + } + + /** + * Creates a function that wraps `func` to invoke it with optional `this` + * binding of `thisArg`, partial application, and currying. + * + * @private + * @param {Function|string} func The function or method name to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to prepend to those provided to + * the new function. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [partialsRight] The arguments to append to those provided + * to the new function. + * @param {Array} [holdersRight] The `partialsRight` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { + var isAry = bitmask & WRAP_ARY_FLAG, + isBind = bitmask & WRAP_BIND_FLAG, + isBindKey = bitmask & WRAP_BIND_KEY_FLAG, + isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG), + isFlip = bitmask & WRAP_FLIP_FLAG, + Ctor = isBindKey ? undefined : createCtor(func); + + function wrapper() { + var length = arguments.length, + args = Array(length), + index = length; + + while (index--) { + args[index] = arguments[index]; + } + if (isCurried) { + var placeholder = getHolder(wrapper), + holdersCount = countHolders(args, placeholder); + } + if (partials) { + args = composeArgs(args, partials, holders, isCurried); + } + if (partialsRight) { + args = composeArgsRight(args, partialsRight, holdersRight, isCurried); + } + length -= holdersCount; + if (isCurried && length < arity) { + var newHolders = replaceHolders(args, placeholder); + return createRecurry( + func, bitmask, createHybrid, wrapper.placeholder, thisArg, + args, newHolders, argPos, ary, arity - length + ); + } + var thisBinding = isBind ? thisArg : this, + fn = isBindKey ? thisBinding[func] : func; + + length = args.length; + if (argPos) { + args = reorder(args, argPos); + } else if (isFlip && length > 1) { + args.reverse(); + } + if (isAry && ary < length) { + args.length = ary; + } + if (this && this !== root && this instanceof wrapper) { + fn = Ctor || createCtor(fn); + } + return fn.apply(thisBinding, args); + } + return wrapper; + } + + /** + * Creates a function like `_.invertBy`. + * + * @private + * @param {Function} setter The function to set accumulator values. + * @param {Function} toIteratee The function to resolve iteratees. + * @returns {Function} Returns the new inverter function. + */ + function createInverter(setter, toIteratee) { + return function(object, iteratee) { + return baseInverter(object, setter, toIteratee(iteratee), {}); + }; + } + + /** + * Creates a function that performs a mathematical operation on two values. + * + * @private + * @param {Function} operator The function to perform the operation. + * @param {number} [defaultValue] The value used for `undefined` arguments. + * @returns {Function} Returns the new mathematical operation function. + */ + function createMathOperation(operator, defaultValue) { + return function(value, other) { + var result; + if (value === undefined && other === undefined) { + return defaultValue; + } + if (value !== undefined) { + result = value; + } + if (other !== undefined) { + if (result === undefined) { + return other; + } + if (typeof value == 'string' || typeof other == 'string') { + value = baseToString(value); + other = baseToString(other); + } else { + value = baseToNumber(value); + other = baseToNumber(other); + } + result = operator(value, other); + } + return result; + }; + } + + /** + * Creates a function like `_.over`. + * + * @private + * @param {Function} arrayFunc The function to iterate over iteratees. + * @returns {Function} Returns the new over function. + */ + function createOver(arrayFunc) { + return flatRest(function(iteratees) { + iteratees = arrayMap(iteratees, baseUnary(getIteratee())); + return baseRest(function(args) { + var thisArg = this; + return arrayFunc(iteratees, function(iteratee) { + return apply(iteratee, thisArg, args); + }); + }); + }); + } + + /** + * Creates the padding for `string` based on `length`. The `chars` string + * is truncated if the number of characters exceeds `length`. + * + * @private + * @param {number} length The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padding for `string`. + */ + function createPadding(length, chars) { + chars = chars === undefined ? ' ' : baseToString(chars); + + var charsLength = chars.length; + if (charsLength < 2) { + return charsLength ? baseRepeat(chars, length) : chars; + } + var result = baseRepeat(chars, nativeCeil(length / stringSize(chars))); + return hasUnicode(chars) + ? castSlice(stringToArray(result), 0, length).join('') + : result.slice(0, length); + } + + /** + * Creates a function that wraps `func` to invoke it with the `this` binding + * of `thisArg` and `partials` prepended to the arguments it receives. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} partials The arguments to prepend to those provided to + * the new function. + * @returns {Function} Returns the new wrapped function. + */ + function createPartial(func, bitmask, thisArg, partials) { + var isBind = bitmask & WRAP_BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var argsIndex = -1, + argsLength = arguments.length, + leftIndex = -1, + leftLength = partials.length, + args = Array(leftLength + argsLength), + fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + + while (++leftIndex < leftLength) { + args[leftIndex] = partials[leftIndex]; + } + while (argsLength--) { + args[leftIndex++] = arguments[++argsIndex]; + } + return apply(fn, isBind ? thisArg : this, args); + } + return wrapper; + } + + /** + * Creates a `_.range` or `_.rangeRight` function. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new range function. + */ + function createRange(fromRight) { + return function(start, end, step) { + if (step && typeof step != 'number' && isIterateeCall(start, end, step)) { + end = step = undefined; + } + // Ensure the sign of `-0` is preserved. + start = toFinite(start); + if (end === undefined) { + end = start; + start = 0; + } else { + end = toFinite(end); + } + step = step === undefined ? (start < end ? 1 : -1) : toFinite(step); + return baseRange(start, end, step, fromRight); + }; + } + + /** + * Creates a function that performs a relational operation on two values. + * + * @private + * @param {Function} operator The function to perform the operation. + * @returns {Function} Returns the new relational operation function. + */ + function createRelationalOperation(operator) { + return function(value, other) { + if (!(typeof value == 'string' && typeof other == 'string')) { + value = toNumber(value); + other = toNumber(other); + } + return operator(value, other); + }; + } + + /** + * Creates a function that wraps `func` to continue currying. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {Function} wrapFunc The function to create the `func` wrapper. + * @param {*} placeholder The placeholder value. + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to prepend to those provided to + * the new function. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) { + var isCurry = bitmask & WRAP_CURRY_FLAG, + newHolders = isCurry ? holders : undefined, + newHoldersRight = isCurry ? undefined : holders, + newPartials = isCurry ? partials : undefined, + newPartialsRight = isCurry ? undefined : partials; + + bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG); + bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG); + + if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) { + bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG); + } + var newData = [ + func, bitmask, thisArg, newPartials, newHolders, newPartialsRight, + newHoldersRight, argPos, ary, arity + ]; + + var result = wrapFunc.apply(undefined, newData); + if (isLaziable(func)) { + setData(result, newData); + } + result.placeholder = placeholder; + return setWrapToString(result, func, bitmask); + } + + /** + * Creates a function like `_.round`. + * + * @private + * @param {string} methodName The name of the `Math` method to use when rounding. + * @returns {Function} Returns the new round function. + */ + function createRound(methodName) { + var func = Math[methodName]; + return function(number, precision) { + number = toNumber(number); + precision = precision == null ? 0 : nativeMin(toInteger(precision), 292); + if (precision) { + // Shift with exponential notation to avoid floating-point issues. + // See [MDN](https://mdn.io/round#Examples) for more details. + var pair = (toString(number) + 'e').split('e'), + value = func(pair[0] + 'e' + (+pair[1] + precision)); + + pair = (toString(value) + 'e').split('e'); + return +(pair[0] + 'e' + (+pair[1] - precision)); + } + return func(number); + }; + } + + /** + * Creates a set object of `values`. + * + * @private + * @param {Array} values The values to add to the set. + * @returns {Object} Returns the new set. + */ + var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) { + return new Set(values); + }; + + /** + * Creates a `_.toPairs` or `_.toPairsIn` function. + * + * @private + * @param {Function} keysFunc The function to get the keys of a given object. + * @returns {Function} Returns the new pairs function. + */ + function createToPairs(keysFunc) { + return function(object) { + var tag = getTag(object); + if (tag == mapTag) { + return mapToArray(object); + } + if (tag == setTag) { + return setToPairs(object); + } + return baseToPairs(object, keysFunc(object)); + }; + } + + /** + * Creates a function that either curries or invokes `func` with optional + * `this` binding and partially applied arguments. + * + * @private + * @param {Function|string} func The function or method name to wrap. + * @param {number} bitmask The bitmask flags. + * 1 - `_.bind` + * 2 - `_.bindKey` + * 4 - `_.curry` or `_.curryRight` of a bound function + * 8 - `_.curry` + * 16 - `_.curryRight` + * 32 - `_.partial` + * 64 - `_.partialRight` + * 128 - `_.rearg` + * 256 - `_.ary` + * 512 - `_.flip` + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to be partially applied. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) { + var isBindKey = bitmask & WRAP_BIND_KEY_FLAG; + if (!isBindKey && typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + var length = partials ? partials.length : 0; + if (!length) { + bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG); + partials = holders = undefined; + } + ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0); + arity = arity === undefined ? arity : toInteger(arity); + length -= holders ? holders.length : 0; + + if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) { + var partialsRight = partials, + holdersRight = holders; + + partials = holders = undefined; + } + var data = isBindKey ? undefined : getData(func); + + var newData = [ + func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, + argPos, ary, arity + ]; + + if (data) { + mergeData(newData, data); + } + func = newData[0]; + bitmask = newData[1]; + thisArg = newData[2]; + partials = newData[3]; + holders = newData[4]; + arity = newData[9] = newData[9] === undefined + ? (isBindKey ? 0 : func.length) + : nativeMax(newData[9] - length, 0); + + if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) { + bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG); + } + if (!bitmask || bitmask == WRAP_BIND_FLAG) { + var result = createBind(func, bitmask, thisArg); + } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) { + result = createCurry(func, bitmask, arity); + } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) { + result = createPartial(func, bitmask, thisArg, partials); + } else { + result = createHybrid.apply(undefined, newData); + } + var setter = data ? baseSetData : setData; + return setWrapToString(setter(result, newData), func, bitmask); + } + + /** + * Used by `_.defaults` to customize its `_.assignIn` use to assign properties + * of source objects to the destination object for all destination properties + * that resolve to `undefined`. + * + * @private + * @param {*} objValue The destination value. + * @param {*} srcValue The source value. + * @param {string} key The key of the property to assign. + * @param {Object} object The parent object of `objValue`. + * @returns {*} Returns the value to assign. + */ + function customDefaultsAssignIn(objValue, srcValue, key, object) { + if (objValue === undefined || + (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) { + return srcValue; + } + return objValue; + } + + /** + * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source + * objects into destination objects that are passed thru. + * + * @private + * @param {*} objValue The destination value. + * @param {*} srcValue The source value. + * @param {string} key The key of the property to merge. + * @param {Object} object The parent object of `objValue`. + * @param {Object} source The parent object of `srcValue`. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + * @returns {*} Returns the value to assign. + */ + function customDefaultsMerge(objValue, srcValue, key, object, source, stack) { + if (isObject(objValue) && isObject(srcValue)) { + // Recursively merge objects and arrays (susceptible to call stack limits). + stack.set(srcValue, objValue); + baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack); + stack['delete'](srcValue); + } + return objValue; + } + + /** + * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain + * objects. + * + * @private + * @param {*} value The value to inspect. + * @param {string} key The key of the property to inspect. + * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`. + */ + function customOmitClone(value) { + return isPlainObject(value) ? undefined : value; + } + + /** + * A specialized version of `baseIsEqualDeep` for arrays with support for + * partial deep comparisons. + * + * @private + * @param {Array} array The array to compare. + * @param {Array} other The other array to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `array` and `other` objects. + * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. + */ + function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + arrLength = array.length, + othLength = other.length; + + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(array); + if (stacked && stack.get(other)) { + return stacked == other; + } + var index = -1, + result = true, + seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined; + + stack.set(array, other); + stack.set(other, array); + + // Ignore non-index properties. + while (++index < arrLength) { + var arrValue = array[index], + othValue = other[index]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, arrValue, index, other, array, stack) + : customizer(arrValue, othValue, index, array, other, stack); + } + if (compared !== undefined) { + if (compared) { + continue; + } + result = false; + break; + } + // Recursively compare arrays (susceptible to call stack limits). + if (seen) { + if (!arraySome(other, function(othValue, othIndex) { + if (!cacheHas(seen, othIndex) && + (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { + return seen.push(othIndex); + } + })) { + result = false; + break; + } + } else if (!( + arrValue === othValue || + equalFunc(arrValue, othValue, bitmask, customizer, stack) + )) { + result = false; + break; + } + } + stack['delete'](array); + stack['delete'](other); + return result; + } + + /** + * A specialized version of `baseIsEqualDeep` for comparing objects of + * the same `toStringTag`. + * + * **Note:** This function only supports comparing values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {string} tag The `toStringTag` of the objects to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { + switch (tag) { + case dataViewTag: + if ((object.byteLength != other.byteLength) || + (object.byteOffset != other.byteOffset)) { + return false; + } + object = object.buffer; + other = other.buffer; + + case arrayBufferTag: + if ((object.byteLength != other.byteLength) || + !equalFunc(new Uint8Array(object), new Uint8Array(other))) { + return false; + } + return true; + + case boolTag: + case dateTag: + case numberTag: + // Coerce booleans to `1` or `0` and dates to milliseconds. + // Invalid dates are coerced to `NaN`. + return eq(+object, +other); + + case errorTag: + return object.name == other.name && object.message == other.message; + + case regexpTag: + case stringTag: + // Coerce regexes to strings and treat strings, primitives and objects, + // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring + // for more details. + return object == (other + ''); + + case mapTag: + var convert = mapToArray; + + case setTag: + var isPartial = bitmask & COMPARE_PARTIAL_FLAG; + convert || (convert = setToArray); + + if (object.size != other.size && !isPartial) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked) { + return stacked == other; + } + bitmask |= COMPARE_UNORDERED_FLAG; + + // Recursively compare objects (susceptible to call stack limits). + stack.set(object, other); + var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); + stack['delete'](object); + return result; + + case symbolTag: + if (symbolValueOf) { + return symbolValueOf.call(object) == symbolValueOf.call(other); + } + } + return false; + } + + /** + * A specialized version of `baseIsEqualDeep` for objects with support for + * partial deep comparisons. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + objProps = getAllKeys(object), + objLength = objProps.length, + othProps = getAllKeys(other), + othLength = othProps.length; + + if (objLength != othLength && !isPartial) { + return false; + } + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { + return false; + } + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked && stack.get(other)) { + return stacked == other; + } + var result = true; + stack.set(object, other); + stack.set(other, object); + + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], + othValue = other[key]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, objValue, key, other, object, stack) + : customizer(objValue, othValue, key, object, other, stack); + } + // Recursively compare objects (susceptible to call stack limits). + if (!(compared === undefined + ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) + : compared + )) { + result = false; + break; + } + skipCtor || (skipCtor = key == 'constructor'); + } + if (result && !skipCtor) { + var objCtor = object.constructor, + othCtor = other.constructor; + + // Non `Object` object instances with different constructors are not equal. + if (objCtor != othCtor && + ('constructor' in object && 'constructor' in other) && + !(typeof objCtor == 'function' && objCtor instanceof objCtor && + typeof othCtor == 'function' && othCtor instanceof othCtor)) { + result = false; + } + } + stack['delete'](object); + stack['delete'](other); + return result; + } + + /** + * A specialized version of `baseRest` which flattens the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ + function flatRest(func) { + return setToString(overRest(func, undefined, flatten), func + ''); + } + + /** + * Creates an array of own enumerable property names and symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ + function getAllKeys(object) { + return baseGetAllKeys(object, keys, getSymbols); + } + + /** + * Creates an array of own and inherited enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ + function getAllKeysIn(object) { + return baseGetAllKeys(object, keysIn, getSymbolsIn); + } + + /** + * Gets metadata for `func`. + * + * @private + * @param {Function} func The function to query. + * @returns {*} Returns the metadata for `func`. + */ + var getData = !metaMap ? noop : function(func) { + return metaMap.get(func); + }; + + /** + * Gets the name of `func`. + * + * @private + * @param {Function} func The function to query. + * @returns {string} Returns the function name. + */ + function getFuncName(func) { + var result = (func.name + ''), + array = realNames[result], + length = hasOwnProperty.call(realNames, result) ? array.length : 0; + + while (length--) { + var data = array[length], + otherFunc = data.func; + if (otherFunc == null || otherFunc == func) { + return data.name; + } + } + return result; + } + + /** + * Gets the argument placeholder value for `func`. + * + * @private + * @param {Function} func The function to inspect. + * @returns {*} Returns the placeholder value. + */ + function getHolder(func) { + var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func; + return object.placeholder; + } + + /** + * Gets the appropriate "iteratee" function. If `_.iteratee` is customized, + * this function returns the custom method, otherwise it returns `baseIteratee`. + * If arguments are provided, the chosen function is invoked with them and + * its result is returned. + * + * @private + * @param {*} [value] The value to convert to an iteratee. + * @param {number} [arity] The arity of the created iteratee. + * @returns {Function} Returns the chosen function or its result. + */ + function getIteratee() { + var result = lodash.iteratee || iteratee; + result = result === iteratee ? baseIteratee : result; + return arguments.length ? result(arguments[0], arguments[1]) : result; + } + + /** + * Gets the data for `map`. + * + * @private + * @param {Object} map The map to query. + * @param {string} key The reference key. + * @returns {*} Returns the map data. + */ + function getMapData(map, key) { + var data = map.__data__; + return isKeyable(key) + ? data[typeof key == 'string' ? 'string' : 'hash'] + : data.map; + } + + /** + * Gets the property names, values, and compare flags of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the match data of `object`. + */ + function getMatchData(object) { + var result = keys(object), + length = result.length; + + while (length--) { + var key = result[length], + value = object[key]; + + result[length] = [key, value, isStrictComparable(value)]; + } + return result; + } + + /** + * Gets the native function at `key` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {string} key The key of the method to get. + * @returns {*} Returns the function if it's native, else `undefined`. + */ + function getNative(object, key) { + var value = getValue(object, key); + return baseIsNative(value) ? value : undefined; + } + + /** + * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the raw `toStringTag`. + */ + function getRawTag(value) { + var isOwn = hasOwnProperty.call(value, symToStringTag), + tag = value[symToStringTag]; + + try { + value[symToStringTag] = undefined; + var unmasked = true; + } catch (e) {} + + var result = nativeObjectToString.call(value); + if (unmasked) { + if (isOwn) { + value[symToStringTag] = tag; + } else { + delete value[symToStringTag]; + } + } + return result; + } + + /** + * Creates an array of the own enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ + var getSymbols = !nativeGetSymbols ? stubArray : function(object) { + if (object == null) { + return []; + } + object = Object(object); + return arrayFilter(nativeGetSymbols(object), function(symbol) { + return propertyIsEnumerable.call(object, symbol); + }); + }; + + /** + * Creates an array of the own and inherited enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ + var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { + var result = []; + while (object) { + arrayPush(result, getSymbols(object)); + object = getPrototype(object); + } + return result; + }; + + /** + * Gets the `toStringTag` of `value`. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ + var getTag = baseGetTag; + + // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6. + if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) || + (Map && getTag(new Map) != mapTag) || + (Promise && getTag(Promise.resolve()) != promiseTag) || + (Set && getTag(new Set) != setTag) || + (WeakMap && getTag(new WeakMap) != weakMapTag)) { + getTag = function(value) { + var result = baseGetTag(value), + Ctor = result == objectTag ? value.constructor : undefined, + ctorString = Ctor ? toSource(Ctor) : ''; + + if (ctorString) { + switch (ctorString) { + case dataViewCtorString: return dataViewTag; + case mapCtorString: return mapTag; + case promiseCtorString: return promiseTag; + case setCtorString: return setTag; + case weakMapCtorString: return weakMapTag; + } + } + return result; + }; + } + + /** + * Gets the view, applying any `transforms` to the `start` and `end` positions. + * + * @private + * @param {number} start The start of the view. + * @param {number} end The end of the view. + * @param {Array} transforms The transformations to apply to the view. + * @returns {Object} Returns an object containing the `start` and `end` + * positions of the view. + */ + function getView(start, end, transforms) { + var index = -1, + length = transforms.length; + + while (++index < length) { + var data = transforms[index], + size = data.size; + + switch (data.type) { + case 'drop': start += size; break; + case 'dropRight': end -= size; break; + case 'take': end = nativeMin(end, start + size); break; + case 'takeRight': start = nativeMax(start, end - size); break; + } + } + return { 'start': start, 'end': end }; + } + + /** + * Extracts wrapper details from the `source` body comment. + * + * @private + * @param {string} source The source to inspect. + * @returns {Array} Returns the wrapper details. + */ + function getWrapDetails(source) { + var match = source.match(reWrapDetails); + return match ? match[1].split(reSplitDetails) : []; + } + + /** + * Checks if `path` exists on `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @param {Function} hasFunc The function to check properties. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + */ + function hasPath(object, path, hasFunc) { + path = castPath(path, object); + + var index = -1, + length = path.length, + result = false; + + while (++index < length) { + var key = toKey(path[index]); + if (!(result = object != null && hasFunc(object, key))) { + break; + } + object = object[key]; + } + if (result || ++index != length) { + return result; + } + length = object == null ? 0 : object.length; + return !!length && isLength(length) && isIndex(key, length) && + (isArray(object) || isArguments(object)); + } + + /** + * Initializes an array clone. + * + * @private + * @param {Array} array The array to clone. + * @returns {Array} Returns the initialized clone. + */ + function initCloneArray(array) { + var length = array.length, + result = array.constructor(length); + + // Add properties assigned by `RegExp#exec`. + if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) { + result.index = array.index; + result.input = array.input; + } + return result; + } + + /** + * Initializes an object clone. + * + * @private + * @param {Object} object The object to clone. + * @returns {Object} Returns the initialized clone. + */ + function initCloneObject(object) { + return (typeof object.constructor == 'function' && !isPrototype(object)) + ? baseCreate(getPrototype(object)) + : {}; + } + + /** + * Initializes an object clone based on its `toStringTag`. + * + * **Note:** This function only supports cloning values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to clone. + * @param {string} tag The `toStringTag` of the object to clone. + * @param {Function} cloneFunc The function to clone values. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the initialized clone. + */ + function initCloneByTag(object, tag, cloneFunc, isDeep) { + var Ctor = object.constructor; + switch (tag) { + case arrayBufferTag: + return cloneArrayBuffer(object); + + case boolTag: + case dateTag: + return new Ctor(+object); + + case dataViewTag: + return cloneDataView(object, isDeep); + + case float32Tag: case float64Tag: + case int8Tag: case int16Tag: case int32Tag: + case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: + return cloneTypedArray(object, isDeep); + + case mapTag: + return cloneMap(object, isDeep, cloneFunc); + + case numberTag: + case stringTag: + return new Ctor(object); + + case regexpTag: + return cloneRegExp(object); + + case setTag: + return cloneSet(object, isDeep, cloneFunc); + + case symbolTag: + return cloneSymbol(object); + } + } + + /** + * Inserts wrapper `details` in a comment at the top of the `source` body. + * + * @private + * @param {string} source The source to modify. + * @returns {Array} details The details to insert. + * @returns {string} Returns the modified source. + */ + function insertWrapDetails(source, details) { + var length = details.length; + if (!length) { + return source; + } + var lastIndex = length - 1; + details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex]; + details = details.join(length > 2 ? ', ' : ' '); + return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n'); + } + + /** + * Checks if `value` is a flattenable `arguments` object or array. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. + */ + function isFlattenable(value) { + return isArray(value) || isArguments(value) || + !!(spreadableSymbol && value && value[spreadableSymbol]); + } + + /** + * Checks if `value` is a valid array-like index. + * + * @private + * @param {*} value The value to check. + * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. + * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. + */ + function isIndex(value, length) { + length = length == null ? MAX_SAFE_INTEGER : length; + return !!length && + (typeof value == 'number' || reIsUint.test(value)) && + (value > -1 && value % 1 == 0 && value < length); + } + + /** + * Checks if the given arguments are from an iteratee call. + * + * @private + * @param {*} value The potential iteratee value argument. + * @param {*} index The potential iteratee index or key argument. + * @param {*} object The potential iteratee object argument. + * @returns {boolean} Returns `true` if the arguments are from an iteratee call, + * else `false`. + */ + function isIterateeCall(value, index, object) { + if (!isObject(object)) { + return false; + } + var type = typeof index; + if (type == 'number' + ? (isArrayLike(object) && isIndex(index, object.length)) + : (type == 'string' && index in object) + ) { + return eq(object[index], value); + } + return false; + } + + /** + * Checks if `value` is a property name and not a property path. + * + * @private + * @param {*} value The value to check. + * @param {Object} [object] The object to query keys on. + * @returns {boolean} Returns `true` if `value` is a property name, else `false`. + */ + function isKey(value, object) { + if (isArray(value)) { + return false; + } + var type = typeof value; + if (type == 'number' || type == 'symbol' || type == 'boolean' || + value == null || isSymbol(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || + (object != null && value in Object(object)); + } + + /** + * Checks if `value` is suitable for use as unique object key. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is suitable, else `false`. + */ + function isKeyable(value) { + var type = typeof value; + return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') + ? (value !== '__proto__') + : (value === null); + } + + /** + * Checks if `func` has a lazy counterpart. + * + * @private + * @param {Function} func The function to check. + * @returns {boolean} Returns `true` if `func` has a lazy counterpart, + * else `false`. + */ + function isLaziable(func) { + var funcName = getFuncName(func), + other = lodash[funcName]; + + if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) { + return false; + } + if (func === other) { + return true; + } + var data = getData(other); + return !!data && func === data[0]; + } + + /** + * Checks if `func` has its source masked. + * + * @private + * @param {Function} func The function to check. + * @returns {boolean} Returns `true` if `func` is masked, else `false`. + */ + function isMasked(func) { + return !!maskSrcKey && (maskSrcKey in func); + } + + /** + * Checks if `func` is capable of being masked. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `func` is maskable, else `false`. + */ + var isMaskable = coreJsData ? isFunction : stubFalse; + + /** + * Checks if `value` is likely a prototype object. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. + */ + function isPrototype(value) { + var Ctor = value && value.constructor, + proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; + + return value === proto; + } + + /** + * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` if suitable for strict + * equality comparisons, else `false`. + */ + function isStrictComparable(value) { + return value === value && !isObject(value); + } + + /** + * A specialized version of `matchesProperty` for source values suitable + * for strict equality comparisons, i.e. `===`. + * + * @private + * @param {string} key The key of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ + function matchesStrictComparable(key, srcValue) { + return function(object) { + if (object == null) { + return false; + } + return object[key] === srcValue && + (srcValue !== undefined || (key in Object(object))); + }; + } + + /** + * A specialized version of `_.memoize` which clears the memoized function's + * cache when it exceeds `MAX_MEMOIZE_SIZE`. + * + * @private + * @param {Function} func The function to have its output memoized. + * @returns {Function} Returns the new memoized function. + */ + function memoizeCapped(func) { + var result = memoize(func, function(key) { + if (cache.size === MAX_MEMOIZE_SIZE) { + cache.clear(); + } + return key; + }); + + var cache = result.cache; + return result; + } + + /** + * Merges the function metadata of `source` into `data`. + * + * Merging metadata reduces the number of wrappers used to invoke a function. + * This is possible because methods like `_.bind`, `_.curry`, and `_.partial` + * may be applied regardless of execution order. Methods like `_.ary` and + * `_.rearg` modify function arguments, making the order in which they are + * executed important, preventing the merging of metadata. However, we make + * an exception for a safe combined case where curried functions have `_.ary` + * and or `_.rearg` applied. + * + * @private + * @param {Array} data The destination metadata. + * @param {Array} source The source metadata. + * @returns {Array} Returns `data`. + */ + function mergeData(data, source) { + var bitmask = data[1], + srcBitmask = source[1], + newBitmask = bitmask | srcBitmask, + isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); + + var isCombo = + ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) || + ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) || + ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG)); + + // Exit early if metadata can't be merged. + if (!(isCommon || isCombo)) { + return data; + } + // Use source `thisArg` if available. + if (srcBitmask & WRAP_BIND_FLAG) { + data[2] = source[2]; + // Set when currying a bound function. + newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG; + } + // Compose partial arguments. + var value = source[3]; + if (value) { + var partials = data[3]; + data[3] = partials ? composeArgs(partials, value, source[4]) : value; + data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4]; + } + // Compose partial right arguments. + value = source[5]; + if (value) { + partials = data[5]; + data[5] = partials ? composeArgsRight(partials, value, source[6]) : value; + data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6]; + } + // Use source `argPos` if available. + value = source[7]; + if (value) { + data[7] = value; + } + // Use source `ary` if it's smaller. + if (srcBitmask & WRAP_ARY_FLAG) { + data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]); + } + // Use source `arity` if one is not provided. + if (data[9] == null) { + data[9] = source[9]; + } + // Use source `func` and merge bitmasks. + data[0] = source[0]; + data[1] = newBitmask; + + return data; + } + + /** + * This function is like + * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * except that it includes inherited enumerable properties. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function nativeKeysIn(object) { + var result = []; + if (object != null) { + for (var key in Object(object)) { + result.push(key); + } + } + return result; + } + + /** + * Converts `value` to a string using `Object.prototype.toString`. + * + * @private + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + */ + function objectToString(value) { + return nativeObjectToString.call(value); + } + + /** + * A specialized version of `baseRest` which transforms the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @param {Function} transform The rest array transform. + * @returns {Function} Returns the new function. + */ + function overRest(func, start, transform) { + start = nativeMax(start === undefined ? (func.length - 1) : start, 0); + return function() { + var args = arguments, + index = -1, + length = nativeMax(args.length - start, 0), + array = Array(length); + + while (++index < length) { + array[index] = args[start + index]; + } + index = -1; + var otherArgs = Array(start + 1); + while (++index < start) { + otherArgs[index] = args[index]; + } + otherArgs[start] = transform(array); + return apply(func, this, otherArgs); + }; + } + + /** + * Gets the parent value at `path` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} path The path to get the parent value of. + * @returns {*} Returns the parent value. + */ + function parent(object, path) { + return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1)); + } + + /** + * Reorder `array` according to the specified indexes where the element at + * the first index is assigned as the first element, the element at + * the second index is assigned as the second element, and so on. + * + * @private + * @param {Array} array The array to reorder. + * @param {Array} indexes The arranged array indexes. + * @returns {Array} Returns `array`. + */ + function reorder(array, indexes) { + var arrLength = array.length, + length = nativeMin(indexes.length, arrLength), + oldArray = copyArray(array); + + while (length--) { + var index = indexes[length]; + array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined; + } + return array; + } + + /** + * Sets metadata for `func`. + * + * **Note:** If this function becomes hot, i.e. is invoked a lot in a short + * period of time, it will trip its breaker and transition to an identity + * function to avoid garbage collection pauses in V8. See + * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070) + * for more details. + * + * @private + * @param {Function} func The function to associate metadata with. + * @param {*} data The metadata. + * @returns {Function} Returns `func`. + */ + var setData = shortOut(baseSetData); + + /** + * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout). + * + * @private + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @returns {number|Object} Returns the timer id or timeout object. + */ + var setTimeout = ctxSetTimeout || function(func, wait) { + return root.setTimeout(func, wait); + }; + + /** + * Sets the `toString` method of `func` to return `string`. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ + var setToString = shortOut(baseSetToString); + + /** + * Sets the `toString` method of `wrapper` to mimic the source of `reference` + * with wrapper details in a comment at the top of the source body. + * + * @private + * @param {Function} wrapper The function to modify. + * @param {Function} reference The reference function. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @returns {Function} Returns `wrapper`. + */ + function setWrapToString(wrapper, reference, bitmask) { + var source = (reference + ''); + return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask))); + } + + /** + * Creates a function that'll short out and invoke `identity` instead + * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN` + * milliseconds. + * + * @private + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new shortable function. + */ + function shortOut(func) { + var count = 0, + lastCalled = 0; + + return function() { + var stamp = nativeNow(), + remaining = HOT_SPAN - (stamp - lastCalled); + + lastCalled = stamp; + if (remaining > 0) { + if (++count >= HOT_COUNT) { + return arguments[0]; + } + } else { + count = 0; + } + return func.apply(undefined, arguments); + }; + } + + /** + * A specialized version of `_.shuffle` which mutates and sets the size of `array`. + * + * @private + * @param {Array} array The array to shuffle. + * @param {number} [size=array.length] The size of `array`. + * @returns {Array} Returns `array`. + */ + function shuffleSelf(array, size) { + var index = -1, + length = array.length, + lastIndex = length - 1; + + size = size === undefined ? length : size; + while (++index < size) { + var rand = baseRandom(index, lastIndex), + value = array[rand]; + + array[rand] = array[index]; + array[index] = value; + } + array.length = size; + return array; + } + + /** + * Converts `string` to a property path array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the property path array. + */ + var stringToPath = memoizeCapped(function(string) { + var result = []; + if (reLeadingDot.test(string)) { + result.push(''); + } + string.replace(rePropName, function(match, number, quote, string) { + result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match)); + }); + return result; + }); + + /** + * Converts `value` to a string key if it's not a string or symbol. + * + * @private + * @param {*} value The value to inspect. + * @returns {string|symbol} Returns the key. + */ + function toKey(value) { + if (typeof value == 'string' || isSymbol(value)) { + return value; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; + } + + /** + * Converts `func` to its source code. + * + * @private + * @param {Function} func The function to convert. + * @returns {string} Returns the source code. + */ + function toSource(func) { + if (func != null) { + try { + return funcToString.call(func); + } catch (e) {} + try { + return (func + ''); + } catch (e) {} + } + return ''; + } + + /** + * Updates wrapper `details` based on `bitmask` flags. + * + * @private + * @returns {Array} details The details to modify. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @returns {Array} Returns `details`. + */ + function updateWrapDetails(details, bitmask) { + arrayEach(wrapFlags, function(pair) { + var value = '_.' + pair[0]; + if ((bitmask & pair[1]) && !arrayIncludes(details, value)) { + details.push(value); + } + }); + return details.sort(); + } + + /** + * Creates a clone of `wrapper`. + * + * @private + * @param {Object} wrapper The wrapper to clone. + * @returns {Object} Returns the cloned wrapper. + */ + function wrapperClone(wrapper) { + if (wrapper instanceof LazyWrapper) { + return wrapper.clone(); + } + var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); + result.__actions__ = copyArray(wrapper.__actions__); + result.__index__ = wrapper.__index__; + result.__values__ = wrapper.__values__; + return result; + } + + /*------------------------------------------------------------------------*/ + + /** + * Creates an array of elements split into groups the length of `size`. + * If `array` can't be split evenly, the final chunk will be the remaining + * elements. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to process. + * @param {number} [size=1] The length of each chunk + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the new array of chunks. + * @example + * + * _.chunk(['a', 'b', 'c', 'd'], 2); + * // => [['a', 'b'], ['c', 'd']] + * + * _.chunk(['a', 'b', 'c', 'd'], 3); + * // => [['a', 'b', 'c'], ['d']] + */ + function chunk(array, size, guard) { + if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) { + size = 1; + } else { + size = nativeMax(toInteger(size), 0); + } + var length = array == null ? 0 : array.length; + if (!length || size < 1) { + return []; + } + var index = 0, + resIndex = 0, + result = Array(nativeCeil(length / size)); + + while (index < length) { + result[resIndex++] = baseSlice(array, index, (index += size)); + } + return result; + } + + /** + * Creates an array with all falsey values removed. The values `false`, `null`, + * `0`, `""`, `undefined`, and `NaN` are falsey. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to compact. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.compact([0, 1, false, 2, '', 3]); + * // => [1, 2, 3] + */ + function compact(array) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (value) { + result[resIndex++] = value; + } + } + return result; + } + + /** + * Creates a new array concatenating `array` with any additional arrays + * and/or values. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to concatenate. + * @param {...*} [values] The values to concatenate. + * @returns {Array} Returns the new concatenated array. + * @example + * + * var array = [1]; + * var other = _.concat(array, 2, [3], [[4]]); + * + * console.log(other); + * // => [1, 2, 3, [4]] + * + * console.log(array); + * // => [1] + */ + function concat() { + var length = arguments.length; + if (!length) { + return []; + } + var args = Array(length - 1), + array = arguments[0], + index = length; + + while (index--) { + args[index - 1] = arguments[index]; + } + return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1)); + } + + /** + * Creates an array of `array` values not included in the other given arrays + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. The order and references of result values are + * determined by the first array. + * + * **Note:** Unlike `_.pullAll`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @returns {Array} Returns the new array of filtered values. + * @see _.without, _.xor + * @example + * + * _.difference([2, 1], [2, 3]); + * // => [1] + */ + var difference = baseRest(function(array, values) { + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true)) + : []; + }); + + /** + * This method is like `_.difference` except that it accepts `iteratee` which + * is invoked for each element of `array` and `values` to generate the criterion + * by which they're compared. The order and references of result values are + * determined by the first array. The iteratee is invoked with one argument: + * (value). + * + * **Note:** Unlike `_.pullAllBy`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [1.2] + * + * // The `_.property` iteratee shorthand. + * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x'); + * // => [{ 'x': 2 }] + */ + var differenceBy = baseRest(function(array, values) { + var iteratee = last(values); + if (isArrayLikeObject(iteratee)) { + iteratee = undefined; + } + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2)) + : []; + }); + + /** + * This method is like `_.difference` except that it accepts `comparator` + * which is invoked to compare elements of `array` to `values`. The order and + * references of result values are determined by the first array. The comparator + * is invoked with two arguments: (arrVal, othVal). + * + * **Note:** Unlike `_.pullAllWith`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * + * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual); + * // => [{ 'x': 2, 'y': 1 }] + */ + var differenceWith = baseRest(function(array, values) { + var comparator = last(values); + if (isArrayLikeObject(comparator)) { + comparator = undefined; + } + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator) + : []; + }); + + /** + * Creates a slice of `array` with `n` elements dropped from the beginning. + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to drop. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.drop([1, 2, 3]); + * // => [2, 3] + * + * _.drop([1, 2, 3], 2); + * // => [3] + * + * _.drop([1, 2, 3], 5); + * // => [] + * + * _.drop([1, 2, 3], 0); + * // => [1, 2, 3] + */ + function drop(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + return baseSlice(array, n < 0 ? 0 : n, length); + } + + /** + * Creates a slice of `array` with `n` elements dropped from the end. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to drop. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.dropRight([1, 2, 3]); + * // => [1, 2] + * + * _.dropRight([1, 2, 3], 2); + * // => [1] + * + * _.dropRight([1, 2, 3], 5); + * // => [] + * + * _.dropRight([1, 2, 3], 0); + * // => [1, 2, 3] + */ + function dropRight(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + n = length - n; + return baseSlice(array, 0, n < 0 ? 0 : n); + } + + /** + * Creates a slice of `array` excluding elements dropped from the end. + * Elements are dropped until `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.dropRightWhile(users, function(o) { return !o.active; }); + * // => objects for ['barney'] + * + * // The `_.matches` iteratee shorthand. + * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false }); + * // => objects for ['barney', 'fred'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.dropRightWhile(users, ['active', false]); + * // => objects for ['barney'] + * + * // The `_.property` iteratee shorthand. + * _.dropRightWhile(users, 'active'); + * // => objects for ['barney', 'fred', 'pebbles'] + */ + function dropRightWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3), true, true) + : []; + } + + /** + * Creates a slice of `array` excluding elements dropped from the beginning. + * Elements are dropped until `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.dropWhile(users, function(o) { return !o.active; }); + * // => objects for ['pebbles'] + * + * // The `_.matches` iteratee shorthand. + * _.dropWhile(users, { 'user': 'barney', 'active': false }); + * // => objects for ['fred', 'pebbles'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.dropWhile(users, ['active', false]); + * // => objects for ['pebbles'] + * + * // The `_.property` iteratee shorthand. + * _.dropWhile(users, 'active'); + * // => objects for ['barney', 'fred', 'pebbles'] + */ + function dropWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3), true) + : []; + } + + /** + * Fills elements of `array` with `value` from `start` up to, but not + * including, `end`. + * + * **Note:** This method mutates `array`. + * + * @static + * @memberOf _ + * @since 3.2.0 + * @category Array + * @param {Array} array The array to fill. + * @param {*} value The value to fill `array` with. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns `array`. + * @example + * + * var array = [1, 2, 3]; + * + * _.fill(array, 'a'); + * console.log(array); + * // => ['a', 'a', 'a'] + * + * _.fill(Array(3), 2); + * // => [2, 2, 2] + * + * _.fill([4, 6, 8, 10], '*', 1, 3); + * // => [4, '*', '*', 10] + */ + function fill(array, value, start, end) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + if (start && typeof start != 'number' && isIterateeCall(array, value, start)) { + start = 0; + end = length; + } + return baseFill(array, value, start, end); + } + + /** + * This method is like `_.find` except that it returns the index of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.findIndex(users, function(o) { return o.user == 'barney'; }); + * // => 0 + * + * // The `_.matches` iteratee shorthand. + * _.findIndex(users, { 'user': 'fred', 'active': false }); + * // => 1 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findIndex(users, ['active', false]); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.findIndex(users, 'active'); + * // => 2 + */ + function findIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseFindIndex(array, getIteratee(predicate, 3), index); + } + + /** + * This method is like `_.findIndex` except that it iterates over elements + * of `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=array.length-1] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; }); + * // => 2 + * + * // The `_.matches` iteratee shorthand. + * _.findLastIndex(users, { 'user': 'barney', 'active': true }); + * // => 0 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findLastIndex(users, ['active', false]); + * // => 2 + * + * // The `_.property` iteratee shorthand. + * _.findLastIndex(users, 'active'); + * // => 0 + */ + function findLastIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = length - 1; + if (fromIndex !== undefined) { + index = toInteger(fromIndex); + index = fromIndex < 0 + ? nativeMax(length + index, 0) + : nativeMin(index, length - 1); + } + return baseFindIndex(array, getIteratee(predicate, 3), index, true); + } + + /** + * Flattens `array` a single level deep. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flatten([1, [2, [3, [4]], 5]]); + * // => [1, 2, [3, [4]], 5] + */ + function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, 1) : []; + } + + /** + * Recursively flattens `array`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flattenDeep([1, [2, [3, [4]], 5]]); + * // => [1, 2, 3, 4, 5] + */ + function flattenDeep(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, INFINITY) : []; + } + + /** + * Recursively flatten `array` up to `depth` times. + * + * @static + * @memberOf _ + * @since 4.4.0 + * @category Array + * @param {Array} array The array to flatten. + * @param {number} [depth=1] The maximum recursion depth. + * @returns {Array} Returns the new flattened array. + * @example + * + * var array = [1, [2, [3, [4]], 5]]; + * + * _.flattenDepth(array, 1); + * // => [1, 2, [3, [4]], 5] + * + * _.flattenDepth(array, 2); + * // => [1, 2, 3, [4], 5] + */ + function flattenDepth(array, depth) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + depth = depth === undefined ? 1 : toInteger(depth); + return baseFlatten(array, depth); + } + + /** + * The inverse of `_.toPairs`; this method returns an object composed + * from key-value `pairs`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} pairs The key-value pairs. + * @returns {Object} Returns the new object. + * @example + * + * _.fromPairs([['a', 1], ['b', 2]]); + * // => { 'a': 1, 'b': 2 } + */ + function fromPairs(pairs) { + var index = -1, + length = pairs == null ? 0 : pairs.length, + result = {}; + + while (++index < length) { + var pair = pairs[index]; + result[pair[0]] = pair[1]; + } + return result; + } + + /** + * Gets the first element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias first + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the first element of `array`. + * @example + * + * _.head([1, 2, 3]); + * // => 1 + * + * _.head([]); + * // => undefined + */ + function head(array) { + return (array && array.length) ? array[0] : undefined; + } + + /** + * Gets the index at which the first occurrence of `value` is found in `array` + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. If `fromIndex` is negative, it's used as the + * offset from the end of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.indexOf([1, 2, 1, 2], 2); + * // => 1 + * + * // Search from the `fromIndex`. + * _.indexOf([1, 2, 1, 2], 2, 2); + * // => 3 + */ + function indexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseIndexOf(array, value, index); + } + + /** + * Gets all but the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.initial([1, 2, 3]); + * // => [1, 2] + */ + function initial(array) { + var length = array == null ? 0 : array.length; + return length ? baseSlice(array, 0, -1) : []; + } + + /** + * Creates an array of unique values that are included in all given arrays + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. The order and references of result values are + * determined by the first array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * _.intersection([2, 1], [2, 3]); + * // => [2] + */ + var intersection = baseRest(function(arrays) { + var mapped = arrayMap(arrays, castArrayLikeObject); + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped) + : []; + }); + + /** + * This method is like `_.intersection` except that it accepts `iteratee` + * which is invoked for each element of each `arrays` to generate the criterion + * by which they're compared. The order and references of result values are + * determined by the first array. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [2.1] + * + * // The `_.property` iteratee shorthand. + * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }] + */ + var intersectionBy = baseRest(function(arrays) { + var iteratee = last(arrays), + mapped = arrayMap(arrays, castArrayLikeObject); + + if (iteratee === last(mapped)) { + iteratee = undefined; + } else { + mapped.pop(); + } + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped, getIteratee(iteratee, 2)) + : []; + }); + + /** + * This method is like `_.intersection` except that it accepts `comparator` + * which is invoked to compare elements of `arrays`. The order and references + * of result values are determined by the first array. The comparator is + * invoked with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.intersectionWith(objects, others, _.isEqual); + * // => [{ 'x': 1, 'y': 2 }] + */ + var intersectionWith = baseRest(function(arrays) { + var comparator = last(arrays), + mapped = arrayMap(arrays, castArrayLikeObject); + + comparator = typeof comparator == 'function' ? comparator : undefined; + if (comparator) { + mapped.pop(); + } + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped, undefined, comparator) + : []; + }); + + /** + * Converts all elements in `array` into a string separated by `separator`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to convert. + * @param {string} [separator=','] The element separator. + * @returns {string} Returns the joined string. + * @example + * + * _.join(['a', 'b', 'c'], '~'); + * // => 'a~b~c' + */ + function join(array, separator) { + return array == null ? '' : nativeJoin.call(array, separator); + } + + /** + * Gets the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the last element of `array`. + * @example + * + * _.last([1, 2, 3]); + * // => 3 + */ + function last(array) { + var length = array == null ? 0 : array.length; + return length ? array[length - 1] : undefined; + } + + /** + * This method is like `_.indexOf` except that it iterates over elements of + * `array` from right to left. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=array.length-1] The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.lastIndexOf([1, 2, 1, 2], 2); + * // => 3 + * + * // Search from the `fromIndex`. + * _.lastIndexOf([1, 2, 1, 2], 2, 2); + * // => 1 + */ + function lastIndexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = length; + if (fromIndex !== undefined) { + index = toInteger(fromIndex); + index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); + } + return value === value + ? strictLastIndexOf(array, value, index) + : baseFindIndex(array, baseIsNaN, index, true); + } + + /** + * Gets the element at index `n` of `array`. If `n` is negative, the nth + * element from the end is returned. + * + * @static + * @memberOf _ + * @since 4.11.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=0] The index of the element to return. + * @returns {*} Returns the nth element of `array`. + * @example + * + * var array = ['a', 'b', 'c', 'd']; + * + * _.nth(array, 1); + * // => 'b' + * + * _.nth(array, -2); + * // => 'c'; + */ + function nth(array, n) { + return (array && array.length) ? baseNth(array, toInteger(n)) : undefined; + } + + /** + * Removes all given values from `array` using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove` + * to remove elements from an array by predicate. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {...*} [values] The values to remove. + * @returns {Array} Returns `array`. + * @example + * + * var array = ['a', 'b', 'c', 'a', 'b', 'c']; + * + * _.pull(array, 'a', 'c'); + * console.log(array); + * // => ['b', 'b'] + */ + var pull = baseRest(pullAll); + + /** + * This method is like `_.pull` except that it accepts an array of values to remove. + * + * **Note:** Unlike `_.difference`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @returns {Array} Returns `array`. + * @example + * + * var array = ['a', 'b', 'c', 'a', 'b', 'c']; + * + * _.pullAll(array, ['a', 'c']); + * console.log(array); + * // => ['b', 'b'] + */ + function pullAll(array, values) { + return (array && array.length && values && values.length) + ? basePullAll(array, values) + : array; + } + + /** + * This method is like `_.pullAll` except that it accepts `iteratee` which is + * invoked for each element of `array` and `values` to generate the criterion + * by which they're compared. The iteratee is invoked with one argument: (value). + * + * **Note:** Unlike `_.differenceBy`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns `array`. + * @example + * + * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }]; + * + * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x'); + * console.log(array); + * // => [{ 'x': 2 }] + */ + function pullAllBy(array, values, iteratee) { + return (array && array.length && values && values.length) + ? basePullAll(array, values, getIteratee(iteratee, 2)) + : array; + } + + /** + * This method is like `_.pullAll` except that it accepts `comparator` which + * is invoked to compare elements of `array` to `values`. The comparator is + * invoked with two arguments: (arrVal, othVal). + * + * **Note:** Unlike `_.differenceWith`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 4.6.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns `array`. + * @example + * + * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }]; + * + * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual); + * console.log(array); + * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }] + */ + function pullAllWith(array, values, comparator) { + return (array && array.length && values && values.length) + ? basePullAll(array, values, undefined, comparator) + : array; + } + + /** + * Removes elements from `array` corresponding to `indexes` and returns an + * array of removed elements. + * + * **Note:** Unlike `_.at`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {...(number|number[])} [indexes] The indexes of elements to remove. + * @returns {Array} Returns the new array of removed elements. + * @example + * + * var array = ['a', 'b', 'c', 'd']; + * var pulled = _.pullAt(array, [1, 3]); + * + * console.log(array); + * // => ['a', 'c'] + * + * console.log(pulled); + * // => ['b', 'd'] + */ + var pullAt = flatRest(function(array, indexes) { + var length = array == null ? 0 : array.length, + result = baseAt(array, indexes); + + basePullAt(array, arrayMap(indexes, function(index) { + return isIndex(index, length) ? +index : index; + }).sort(compareAscending)); + + return result; + }); + + /** + * Removes all elements from `array` that `predicate` returns truthy for + * and returns an array of the removed elements. The predicate is invoked + * with three arguments: (value, index, array). + * + * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull` + * to pull elements from an array by value. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new array of removed elements. + * @example + * + * var array = [1, 2, 3, 4]; + * var evens = _.remove(array, function(n) { + * return n % 2 == 0; + * }); + * + * console.log(array); + * // => [1, 3] + * + * console.log(evens); + * // => [2, 4] + */ + function remove(array, predicate) { + var result = []; + if (!(array && array.length)) { + return result; + } + var index = -1, + indexes = [], + length = array.length; + + predicate = getIteratee(predicate, 3); + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result.push(value); + indexes.push(index); + } + } + basePullAt(array, indexes); + return result; + } + + /** + * Reverses `array` so that the first element becomes the last, the second + * element becomes the second to last, and so on. + * + * **Note:** This method mutates `array` and is based on + * [`Array#reverse`](https://mdn.io/Array/reverse). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to modify. + * @returns {Array} Returns `array`. + * @example + * + * var array = [1, 2, 3]; + * + * _.reverse(array); + * // => [3, 2, 1] + * + * console.log(array); + * // => [3, 2, 1] + */ + function reverse(array) { + return array == null ? array : nativeReverse.call(array); + } + + /** + * Creates a slice of `array` from `start` up to, but not including, `end`. + * + * **Note:** This method is used instead of + * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are + * returned. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ + function slice(array, start, end) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + if (end && typeof end != 'number' && isIterateeCall(array, start, end)) { + start = 0; + end = length; + } + else { + start = start == null ? 0 : toInteger(start); + end = end === undefined ? length : toInteger(end); + } + return baseSlice(array, start, end); + } + + /** + * Uses a binary search to determine the lowest index at which `value` + * should be inserted into `array` in order to maintain its sort order. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * _.sortedIndex([30, 50], 40); + * // => 1 + */ + function sortedIndex(array, value) { + return baseSortedIndex(array, value); + } + + /** + * This method is like `_.sortedIndex` except that it accepts `iteratee` + * which is invoked for `value` and each element of `array` to compute their + * sort ranking. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * var objects = [{ 'x': 4 }, { 'x': 5 }]; + * + * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; }); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.sortedIndexBy(objects, { 'x': 4 }, 'x'); + * // => 0 + */ + function sortedIndexBy(array, value, iteratee) { + return baseSortedIndexBy(array, value, getIteratee(iteratee, 2)); + } + + /** + * This method is like `_.indexOf` except that it performs a binary + * search on a sorted `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.sortedIndexOf([4, 5, 5, 5, 6], 5); + * // => 1 + */ + function sortedIndexOf(array, value) { + var length = array == null ? 0 : array.length; + if (length) { + var index = baseSortedIndex(array, value); + if (index < length && eq(array[index], value)) { + return index; + } + } + return -1; + } + + /** + * This method is like `_.sortedIndex` except that it returns the highest + * index at which `value` should be inserted into `array` in order to + * maintain its sort order. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * _.sortedLastIndex([4, 5, 5, 5, 6], 5); + * // => 4 + */ + function sortedLastIndex(array, value) { + return baseSortedIndex(array, value, true); + } + + /** + * This method is like `_.sortedLastIndex` except that it accepts `iteratee` + * which is invoked for `value` and each element of `array` to compute their + * sort ranking. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * var objects = [{ 'x': 4 }, { 'x': 5 }]; + * + * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; }); + * // => 1 + * + * // The `_.property` iteratee shorthand. + * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x'); + * // => 1 + */ + function sortedLastIndexBy(array, value, iteratee) { + return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true); + } + + /** + * This method is like `_.lastIndexOf` except that it performs a binary + * search on a sorted `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5); + * // => 3 + */ + function sortedLastIndexOf(array, value) { + var length = array == null ? 0 : array.length; + if (length) { + var index = baseSortedIndex(array, value, true) - 1; + if (eq(array[index], value)) { + return index; + } + } + return -1; + } + + /** + * This method is like `_.uniq` except that it's designed and optimized + * for sorted arrays. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.sortedUniq([1, 1, 2]); + * // => [1, 2] + */ + function sortedUniq(array) { + return (array && array.length) + ? baseSortedUniq(array) + : []; + } + + /** + * This method is like `_.uniqBy` except that it's designed and optimized + * for sorted arrays. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor); + * // => [1.1, 2.3] + */ + function sortedUniqBy(array, iteratee) { + return (array && array.length) + ? baseSortedUniq(array, getIteratee(iteratee, 2)) + : []; + } + + /** + * Gets all but the first element of `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to query. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.tail([1, 2, 3]); + * // => [2, 3] + */ + function tail(array) { + var length = array == null ? 0 : array.length; + return length ? baseSlice(array, 1, length) : []; + } + + /** + * Creates a slice of `array` with `n` elements taken from the beginning. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to take. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.take([1, 2, 3]); + * // => [1] + * + * _.take([1, 2, 3], 2); + * // => [1, 2] + * + * _.take([1, 2, 3], 5); + * // => [1, 2, 3] + * + * _.take([1, 2, 3], 0); + * // => [] + */ + function take(array, n, guard) { + if (!(array && array.length)) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + return baseSlice(array, 0, n < 0 ? 0 : n); + } + + /** + * Creates a slice of `array` with `n` elements taken from the end. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to take. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.takeRight([1, 2, 3]); + * // => [3] + * + * _.takeRight([1, 2, 3], 2); + * // => [2, 3] + * + * _.takeRight([1, 2, 3], 5); + * // => [1, 2, 3] + * + * _.takeRight([1, 2, 3], 0); + * // => [] + */ + function takeRight(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + n = length - n; + return baseSlice(array, n < 0 ? 0 : n, length); + } + + /** + * Creates a slice of `array` with elements taken from the end. Elements are + * taken until `predicate` returns falsey. The predicate is invoked with + * three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.takeRightWhile(users, function(o) { return !o.active; }); + * // => objects for ['fred', 'pebbles'] + * + * // The `_.matches` iteratee shorthand. + * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false }); + * // => objects for ['pebbles'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.takeRightWhile(users, ['active', false]); + * // => objects for ['fred', 'pebbles'] + * + * // The `_.property` iteratee shorthand. + * _.takeRightWhile(users, 'active'); + * // => [] + */ + function takeRightWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3), false, true) + : []; + } + + /** + * Creates a slice of `array` with elements taken from the beginning. Elements + * are taken until `predicate` returns falsey. The predicate is invoked with + * three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.takeWhile(users, function(o) { return !o.active; }); + * // => objects for ['barney', 'fred'] + * + * // The `_.matches` iteratee shorthand. + * _.takeWhile(users, { 'user': 'barney', 'active': false }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.takeWhile(users, ['active', false]); + * // => objects for ['barney', 'fred'] + * + * // The `_.property` iteratee shorthand. + * _.takeWhile(users, 'active'); + * // => [] + */ + function takeWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3)) + : []; + } + + /** + * Creates an array of unique values, in order, from all given arrays using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of combined values. + * @example + * + * _.union([2], [1, 2]); + * // => [2, 1] + */ + var union = baseRest(function(arrays) { + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true)); + }); + + /** + * This method is like `_.union` except that it accepts `iteratee` which is + * invoked for each element of each `arrays` to generate the criterion by + * which uniqueness is computed. Result values are chosen from the first + * array in which the value occurs. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of combined values. + * @example + * + * _.unionBy([2.1], [1.2, 2.3], Math.floor); + * // => [2.1, 1.2] + * + * // The `_.property` iteratee shorthand. + * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }, { 'x': 2 }] + */ + var unionBy = baseRest(function(arrays) { + var iteratee = last(arrays); + if (isArrayLikeObject(iteratee)) { + iteratee = undefined; + } + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2)); + }); + + /** + * This method is like `_.union` except that it accepts `comparator` which + * is invoked to compare elements of `arrays`. Result values are chosen from + * the first array in which the value occurs. The comparator is invoked + * with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of combined values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.unionWith(objects, others, _.isEqual); + * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }] + */ + var unionWith = baseRest(function(arrays) { + var comparator = last(arrays); + comparator = typeof comparator == 'function' ? comparator : undefined; + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator); + }); + + /** + * Creates a duplicate-free version of an array, using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons, in which only the first occurrence of each element + * is kept. The order of result values is determined by the order they occur + * in the array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.uniq([2, 1, 2]); + * // => [2, 1] + */ + function uniq(array) { + return (array && array.length) ? baseUniq(array) : []; + } + + /** + * This method is like `_.uniq` except that it accepts `iteratee` which is + * invoked for each element in `array` to generate the criterion by which + * uniqueness is computed. The order of result values is determined by the + * order they occur in the array. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.uniqBy([2.1, 1.2, 2.3], Math.floor); + * // => [2.1, 1.2] + * + * // The `_.property` iteratee shorthand. + * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }, { 'x': 2 }] + */ + function uniqBy(array, iteratee) { + return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : []; + } + + /** + * This method is like `_.uniq` except that it accepts `comparator` which + * is invoked to compare elements of `array`. The order of result values is + * determined by the order they occur in the array.The comparator is invoked + * with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.uniqWith(objects, _.isEqual); + * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }] + */ + function uniqWith(array, comparator) { + comparator = typeof comparator == 'function' ? comparator : undefined; + return (array && array.length) ? baseUniq(array, undefined, comparator) : []; + } + + /** + * This method is like `_.zip` except that it accepts an array of grouped + * elements and creates an array regrouping the elements to their pre-zip + * configuration. + * + * @static + * @memberOf _ + * @since 1.2.0 + * @category Array + * @param {Array} array The array of grouped elements to process. + * @returns {Array} Returns the new array of regrouped elements. + * @example + * + * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]); + * // => [['a', 1, true], ['b', 2, false]] + * + * _.unzip(zipped); + * // => [['a', 'b'], [1, 2], [true, false]] + */ + function unzip(array) { + if (!(array && array.length)) { + return []; + } + var length = 0; + array = arrayFilter(array, function(group) { + if (isArrayLikeObject(group)) { + length = nativeMax(group.length, length); + return true; + } + }); + return baseTimes(length, function(index) { + return arrayMap(array, baseProperty(index)); + }); + } + + /** + * This method is like `_.unzip` except that it accepts `iteratee` to specify + * how regrouped values should be combined. The iteratee is invoked with the + * elements of each group: (...group). + * + * @static + * @memberOf _ + * @since 3.8.0 + * @category Array + * @param {Array} array The array of grouped elements to process. + * @param {Function} [iteratee=_.identity] The function to combine + * regrouped values. + * @returns {Array} Returns the new array of regrouped elements. + * @example + * + * var zipped = _.zip([1, 2], [10, 20], [100, 200]); + * // => [[1, 10, 100], [2, 20, 200]] + * + * _.unzipWith(zipped, _.add); + * // => [3, 30, 300] + */ + function unzipWith(array, iteratee) { + if (!(array && array.length)) { + return []; + } + var result = unzip(array); + if (iteratee == null) { + return result; + } + return arrayMap(result, function(group) { + return apply(iteratee, undefined, group); + }); + } + + /** + * Creates an array excluding all given values using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * **Note:** Unlike `_.pull`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...*} [values] The values to exclude. + * @returns {Array} Returns the new array of filtered values. + * @see _.difference, _.xor + * @example + * + * _.without([2, 1, 2, 3], 1, 2); + * // => [3] + */ + var without = baseRest(function(array, values) { + return isArrayLikeObject(array) + ? baseDifference(array, values) + : []; + }); + + /** + * Creates an array of unique values that is the + * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference) + * of the given arrays. The order of result values is determined by the order + * they occur in the arrays. + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of filtered values. + * @see _.difference, _.without + * @example + * + * _.xor([2, 1], [2, 3]); + * // => [1, 3] + */ + var xor = baseRest(function(arrays) { + return baseXor(arrayFilter(arrays, isArrayLikeObject)); + }); + + /** + * This method is like `_.xor` except that it accepts `iteratee` which is + * invoked for each element of each `arrays` to generate the criterion by + * which by which they're compared. The order of result values is determined + * by the order they occur in the arrays. The iteratee is invoked with one + * argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [1.2, 3.4] + * + * // The `_.property` iteratee shorthand. + * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 2 }] + */ + var xorBy = baseRest(function(arrays) { + var iteratee = last(arrays); + if (isArrayLikeObject(iteratee)) { + iteratee = undefined; + } + return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2)); + }); + + /** + * This method is like `_.xor` except that it accepts `comparator` which is + * invoked to compare elements of `arrays`. The order of result values is + * determined by the order they occur in the arrays. The comparator is invoked + * with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.xorWith(objects, others, _.isEqual); + * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }] + */ + var xorWith = baseRest(function(arrays) { + var comparator = last(arrays); + comparator = typeof comparator == 'function' ? comparator : undefined; + return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator); + }); + + /** + * Creates an array of grouped elements, the first of which contains the + * first elements of the given arrays, the second of which contains the + * second elements of the given arrays, and so on. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to process. + * @returns {Array} Returns the new array of grouped elements. + * @example + * + * _.zip(['a', 'b'], [1, 2], [true, false]); + * // => [['a', 1, true], ['b', 2, false]] + */ + var zip = baseRest(unzip); + + /** + * This method is like `_.fromPairs` except that it accepts two arrays, + * one of property identifiers and one of corresponding values. + * + * @static + * @memberOf _ + * @since 0.4.0 + * @category Array + * @param {Array} [props=[]] The property identifiers. + * @param {Array} [values=[]] The property values. + * @returns {Object} Returns the new object. + * @example + * + * _.zipObject(['a', 'b'], [1, 2]); + * // => { 'a': 1, 'b': 2 } + */ + function zipObject(props, values) { + return baseZipObject(props || [], values || [], assignValue); + } + + /** + * This method is like `_.zipObject` except that it supports property paths. + * + * @static + * @memberOf _ + * @since 4.1.0 + * @category Array + * @param {Array} [props=[]] The property identifiers. + * @param {Array} [values=[]] The property values. + * @returns {Object} Returns the new object. + * @example + * + * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]); + * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } } + */ + function zipObjectDeep(props, values) { + return baseZipObject(props || [], values || [], baseSet); + } + + /** + * This method is like `_.zip` except that it accepts `iteratee` to specify + * how grouped values should be combined. The iteratee is invoked with the + * elements of each group: (...group). + * + * @static + * @memberOf _ + * @since 3.8.0 + * @category Array + * @param {...Array} [arrays] The arrays to process. + * @param {Function} [iteratee=_.identity] The function to combine + * grouped values. + * @returns {Array} Returns the new array of grouped elements. + * @example + * + * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) { + * return a + b + c; + * }); + * // => [111, 222] + */ + var zipWith = baseRest(function(arrays) { + var length = arrays.length, + iteratee = length > 1 ? arrays[length - 1] : undefined; + + iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined; + return unzipWith(arrays, iteratee); + }); + + /*------------------------------------------------------------------------*/ + + /** + * Creates a `lodash` wrapper instance that wraps `value` with explicit method + * chain sequences enabled. The result of such sequences must be unwrapped + * with `_#value`. + * + * @static + * @memberOf _ + * @since 1.3.0 + * @category Seq + * @param {*} value The value to wrap. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 }, + * { 'user': 'pebbles', 'age': 1 } + * ]; + * + * var youngest = _ + * .chain(users) + * .sortBy('age') + * .map(function(o) { + * return o.user + ' is ' + o.age; + * }) + * .head() + * .value(); + * // => 'pebbles is 1' + */ + function chain(value) { + var result = lodash(value); + result.__chain__ = true; + return result; + } + + /** + * This method invokes `interceptor` and returns `value`. The interceptor + * is invoked with one argument; (value). The purpose of this method is to + * "tap into" a method chain sequence in order to modify intermediate results. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @param {*} value The value to provide to `interceptor`. + * @param {Function} interceptor The function to invoke. + * @returns {*} Returns `value`. + * @example + * + * _([1, 2, 3]) + * .tap(function(array) { + * // Mutate input array. + * array.pop(); + * }) + * .reverse() + * .value(); + * // => [2, 1] + */ + function tap(value, interceptor) { + interceptor(value); + return value; + } + + /** + * This method is like `_.tap` except that it returns the result of `interceptor`. + * The purpose of this method is to "pass thru" values replacing intermediate + * results in a method chain sequence. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Seq + * @param {*} value The value to provide to `interceptor`. + * @param {Function} interceptor The function to invoke. + * @returns {*} Returns the result of `interceptor`. + * @example + * + * _(' abc ') + * .chain() + * .trim() + * .thru(function(value) { + * return [value]; + * }) + * .value(); + * // => ['abc'] + */ + function thru(value, interceptor) { + return interceptor(value); + } + + /** + * This method is the wrapper version of `_.at`. + * + * @name at + * @memberOf _ + * @since 1.0.0 + * @category Seq + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; + * + * _(object).at(['a[0].b.c', 'a[1]']).value(); + * // => [3, 4] + */ + var wrapperAt = flatRest(function(paths) { + var length = paths.length, + start = length ? paths[0] : 0, + value = this.__wrapped__, + interceptor = function(object) { return baseAt(object, paths); }; + + if (length > 1 || this.__actions__.length || + !(value instanceof LazyWrapper) || !isIndex(start)) { + return this.thru(interceptor); + } + value = value.slice(start, +start + (length ? 1 : 0)); + value.__actions__.push({ + 'func': thru, + 'args': [interceptor], + 'thisArg': undefined + }); + return new LodashWrapper(value, this.__chain__).thru(function(array) { + if (length && !array.length) { + array.push(undefined); + } + return array; + }); + }); + + /** + * Creates a `lodash` wrapper instance with explicit method chain sequences enabled. + * + * @name chain + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 } + * ]; + * + * // A sequence without explicit chaining. + * _(users).head(); + * // => { 'user': 'barney', 'age': 36 } + * + * // A sequence with explicit chaining. + * _(users) + * .chain() + * .head() + * .pick('user') + * .value(); + * // => { 'user': 'barney' } + */ + function wrapperChain() { + return chain(this); + } + + /** + * Executes the chain sequence and returns the wrapped result. + * + * @name commit + * @memberOf _ + * @since 3.2.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var array = [1, 2]; + * var wrapped = _(array).push(3); + * + * console.log(array); + * // => [1, 2] + * + * wrapped = wrapped.commit(); + * console.log(array); + * // => [1, 2, 3] + * + * wrapped.last(); + * // => 3 + * + * console.log(array); + * // => [1, 2, 3] + */ + function wrapperCommit() { + return new LodashWrapper(this.value(), this.__chain__); + } + + /** + * Gets the next value on a wrapped object following the + * [iterator protocol](https://mdn.io/iteration_protocols#iterator). + * + * @name next + * @memberOf _ + * @since 4.0.0 + * @category Seq + * @returns {Object} Returns the next iterator value. + * @example + * + * var wrapped = _([1, 2]); + * + * wrapped.next(); + * // => { 'done': false, 'value': 1 } + * + * wrapped.next(); + * // => { 'done': false, 'value': 2 } + * + * wrapped.next(); + * // => { 'done': true, 'value': undefined } + */ + function wrapperNext() { + if (this.__values__ === undefined) { + this.__values__ = toArray(this.value()); + } + var done = this.__index__ >= this.__values__.length, + value = done ? undefined : this.__values__[this.__index__++]; + + return { 'done': done, 'value': value }; + } + + /** + * Enables the wrapper to be iterable. + * + * @name Symbol.iterator + * @memberOf _ + * @since 4.0.0 + * @category Seq + * @returns {Object} Returns the wrapper object. + * @example + * + * var wrapped = _([1, 2]); + * + * wrapped[Symbol.iterator]() === wrapped; + * // => true + * + * Array.from(wrapped); + * // => [1, 2] + */ + function wrapperToIterator() { + return this; + } + + /** + * Creates a clone of the chain sequence planting `value` as the wrapped value. + * + * @name plant + * @memberOf _ + * @since 3.2.0 + * @category Seq + * @param {*} value The value to plant. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * function square(n) { + * return n * n; + * } + * + * var wrapped = _([1, 2]).map(square); + * var other = wrapped.plant([3, 4]); + * + * other.value(); + * // => [9, 16] + * + * wrapped.value(); + * // => [1, 4] + */ + function wrapperPlant(value) { + var result, + parent = this; + + while (parent instanceof baseLodash) { + var clone = wrapperClone(parent); + clone.__index__ = 0; + clone.__values__ = undefined; + if (result) { + previous.__wrapped__ = clone; + } else { + result = clone; + } + var previous = clone; + parent = parent.__wrapped__; + } + previous.__wrapped__ = value; + return result; + } + + /** + * This method is the wrapper version of `_.reverse`. + * + * **Note:** This method mutates the wrapped array. + * + * @name reverse + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var array = [1, 2, 3]; + * + * _(array).reverse().value() + * // => [3, 2, 1] + * + * console.log(array); + * // => [3, 2, 1] + */ + function wrapperReverse() { + var value = this.__wrapped__; + if (value instanceof LazyWrapper) { + var wrapped = value; + if (this.__actions__.length) { + wrapped = new LazyWrapper(this); + } + wrapped = wrapped.reverse(); + wrapped.__actions__.push({ + 'func': thru, + 'args': [reverse], + 'thisArg': undefined + }); + return new LodashWrapper(wrapped, this.__chain__); + } + return this.thru(reverse); + } + + /** + * Executes the chain sequence to resolve the unwrapped value. + * + * @name value + * @memberOf _ + * @since 0.1.0 + * @alias toJSON, valueOf + * @category Seq + * @returns {*} Returns the resolved unwrapped value. + * @example + * + * _([1, 2, 3]).value(); + * // => [1, 2, 3] + */ + function wrapperValue() { + return baseWrapperValue(this.__wrapped__, this.__actions__); + } + + /*------------------------------------------------------------------------*/ + + /** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The corresponding value of + * each key is the number of times the key was returned by `iteratee`. The + * iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * _.countBy([6.1, 4.2, 6.3], Math.floor); + * // => { '4': 1, '6': 2 } + * + * // The `_.property` iteratee shorthand. + * _.countBy(['one', 'two', 'three'], 'length'); + * // => { '3': 2, '5': 1 } + */ + var countBy = createAggregator(function(result, value, key) { + if (hasOwnProperty.call(result, key)) { + ++result[key]; + } else { + baseAssignValue(result, key, 1); + } + }); + + /** + * Checks if `predicate` returns truthy for **all** elements of `collection`. + * Iteration is stopped once `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * **Note:** This method returns `true` for + * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because + * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of + * elements of empty collections. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + * @example + * + * _.every([true, 1, null, 'yes'], Boolean); + * // => false + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.every(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.every(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.every(users, 'active'); + * // => false + */ + function every(collection, predicate, guard) { + var func = isArray(collection) ? arrayEvery : baseEvery; + if (guard && isIterateeCall(collection, predicate, guard)) { + predicate = undefined; + } + return func(collection, getIteratee(predicate, 3)); + } + + /** + * Iterates over elements of `collection`, returning an array of all elements + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * **Note:** Unlike `_.remove`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.reject + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * _.filter(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.filter(users, { 'age': 36, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.filter(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.filter(users, 'active'); + * // => objects for ['barney'] + */ + function filter(collection, predicate) { + var func = isArray(collection) ? arrayFilter : baseFilter; + return func(collection, getIteratee(predicate, 3)); + } + + /** + * Iterates over elements of `collection`, returning the first element + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false }, + * { 'user': 'pebbles', 'age': 1, 'active': true } + * ]; + * + * _.find(users, function(o) { return o.age < 40; }); + * // => object for 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.find(users, { 'age': 1, 'active': true }); + * // => object for 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.find(users, ['active', false]); + * // => object for 'fred' + * + * // The `_.property` iteratee shorthand. + * _.find(users, 'active'); + * // => object for 'barney' + */ + var find = createFind(findIndex); + + /** + * This method is like `_.find` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=collection.length-1] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * _.findLast([1, 2, 3, 4], function(n) { + * return n % 2 == 1; + * }); + * // => 3 + */ + var findLast = createFind(findLastIndex); + + /** + * Creates a flattened array of values by running each element in `collection` + * thru `iteratee` and flattening the mapped results. The iteratee is invoked + * with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [n, n]; + * } + * + * _.flatMap([1, 2], duplicate); + * // => [1, 1, 2, 2] + */ + function flatMap(collection, iteratee) { + return baseFlatten(map(collection, iteratee), 1); + } + + /** + * This method is like `_.flatMap` except that it recursively flattens the + * mapped results. + * + * @static + * @memberOf _ + * @since 4.7.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [[[n, n]]]; + * } + * + * _.flatMapDeep([1, 2], duplicate); + * // => [1, 1, 2, 2] + */ + function flatMapDeep(collection, iteratee) { + return baseFlatten(map(collection, iteratee), INFINITY); + } + + /** + * This method is like `_.flatMap` except that it recursively flattens the + * mapped results up to `depth` times. + * + * @static + * @memberOf _ + * @since 4.7.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {number} [depth=1] The maximum recursion depth. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [[[n, n]]]; + * } + * + * _.flatMapDepth([1, 2], duplicate, 2); + * // => [[1, 1], [2, 2]] + */ + function flatMapDepth(collection, iteratee, depth) { + depth = depth === undefined ? 1 : toInteger(depth); + return baseFlatten(map(collection, iteratee), depth); + } + + /** + * Iterates over elements of `collection` and invokes `iteratee` for each element. + * The iteratee is invoked with three arguments: (value, index|key, collection). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * **Note:** As with other "Collections" methods, objects with a "length" + * property are iterated like arrays. To avoid this behavior use `_.forIn` + * or `_.forOwn` for object iteration. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias each + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEachRight + * @example + * + * _.forEach([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `1` then `2`. + * + * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ + function forEach(collection, iteratee) { + var func = isArray(collection) ? arrayEach : baseEach; + return func(collection, getIteratee(iteratee, 3)); + } + + /** + * This method is like `_.forEach` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @alias eachRight + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEach + * @example + * + * _.forEachRight([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `2` then `1`. + */ + function forEachRight(collection, iteratee) { + var func = isArray(collection) ? arrayEachRight : baseEachRight; + return func(collection, getIteratee(iteratee, 3)); + } + + /** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The order of grouped values + * is determined by the order they occur in `collection`. The corresponding + * value of each key is an array of elements responsible for generating the + * key. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * _.groupBy([6.1, 4.2, 6.3], Math.floor); + * // => { '4': [4.2], '6': [6.1, 6.3] } + * + * // The `_.property` iteratee shorthand. + * _.groupBy(['one', 'two', 'three'], 'length'); + * // => { '3': ['one', 'two'], '5': ['three'] } + */ + var groupBy = createAggregator(function(result, value, key) { + if (hasOwnProperty.call(result, key)) { + result[key].push(value); + } else { + baseAssignValue(result, key, [value]); + } + }); + + /** + * Checks if `value` is in `collection`. If `collection` is a string, it's + * checked for a substring of `value`, otherwise + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * is used for equality comparisons. If `fromIndex` is negative, it's used as + * the offset from the end of `collection`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. + * @returns {boolean} Returns `true` if `value` is found, else `false`. + * @example + * + * _.includes([1, 2, 3], 1); + * // => true + * + * _.includes([1, 2, 3], 1, 2); + * // => false + * + * _.includes({ 'a': 1, 'b': 2 }, 1); + * // => true + * + * _.includes('abcd', 'bc'); + * // => true + */ + function includes(collection, value, fromIndex, guard) { + collection = isArrayLike(collection) ? collection : values(collection); + fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0; + + var length = collection.length; + if (fromIndex < 0) { + fromIndex = nativeMax(length + fromIndex, 0); + } + return isString(collection) + ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1) + : (!!length && baseIndexOf(collection, value, fromIndex) > -1); + } + + /** + * Invokes the method at `path` of each element in `collection`, returning + * an array of the results of each invoked method. Any additional arguments + * are provided to each invoked method. If `path` is a function, it's invoked + * for, and `this` bound to, each element in `collection`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Array|Function|string} path The path of the method to invoke or + * the function invoked per iteration. + * @param {...*} [args] The arguments to invoke each method with. + * @returns {Array} Returns the array of results. + * @example + * + * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort'); + * // => [[1, 5, 7], [1, 2, 3]] + * + * _.invokeMap([123, 456], String.prototype.split, ''); + * // => [['1', '2', '3'], ['4', '5', '6']] + */ + var invokeMap = baseRest(function(collection, path, args) { + var index = -1, + isFunc = typeof path == 'function', + result = isArrayLike(collection) ? Array(collection.length) : []; + + baseEach(collection, function(value) { + result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args); + }); + return result; + }); + + /** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The corresponding value of + * each key is the last element responsible for generating the key. The + * iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * var array = [ + * { 'dir': 'left', 'code': 97 }, + * { 'dir': 'right', 'code': 100 } + * ]; + * + * _.keyBy(array, function(o) { + * return String.fromCharCode(o.code); + * }); + * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } } + * + * _.keyBy(array, 'dir'); + * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } } + */ + var keyBy = createAggregator(function(result, value, key) { + baseAssignValue(result, key, value); + }); + + /** + * Creates an array of values by running each element in `collection` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`. + * + * The guarded methods are: + * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`, + * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`, + * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`, + * `template`, `trim`, `trimEnd`, `trimStart`, and `words` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + * @example + * + * function square(n) { + * return n * n; + * } + * + * _.map([4, 8], square); + * // => [16, 64] + * + * _.map({ 'a': 4, 'b': 8 }, square); + * // => [16, 64] (iteration order is not guaranteed) + * + * var users = [ + * { 'user': 'barney' }, + * { 'user': 'fred' } + * ]; + * + * // The `_.property` iteratee shorthand. + * _.map(users, 'user'); + * // => ['barney', 'fred'] + */ + function map(collection, iteratee) { + var func = isArray(collection) ? arrayMap : baseMap; + return func(collection, getIteratee(iteratee, 3)); + } + + /** + * This method is like `_.sortBy` except that it allows specifying the sort + * orders of the iteratees to sort by. If `orders` is unspecified, all values + * are sorted in ascending order. Otherwise, specify an order of "desc" for + * descending or "asc" for ascending sort order of corresponding values. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]] + * The iteratees to sort by. + * @param {string[]} [orders] The sort orders of `iteratees`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. + * @returns {Array} Returns the new sorted array. + * @example + * + * var users = [ + * { 'user': 'fred', 'age': 48 }, + * { 'user': 'barney', 'age': 34 }, + * { 'user': 'fred', 'age': 40 }, + * { 'user': 'barney', 'age': 36 } + * ]; + * + * // Sort by `user` in ascending order and by `age` in descending order. + * _.orderBy(users, ['user', 'age'], ['asc', 'desc']); + * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]] + */ + function orderBy(collection, iteratees, orders, guard) { + if (collection == null) { + return []; + } + if (!isArray(iteratees)) { + iteratees = iteratees == null ? [] : [iteratees]; + } + orders = guard ? undefined : orders; + if (!isArray(orders)) { + orders = orders == null ? [] : [orders]; + } + return baseOrderBy(collection, iteratees, orders); + } + + /** + * Creates an array of elements split into two groups, the first of which + * contains elements `predicate` returns truthy for, the second of which + * contains elements `predicate` returns falsey for. The predicate is + * invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the array of grouped elements. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': true }, + * { 'user': 'pebbles', 'age': 1, 'active': false } + * ]; + * + * _.partition(users, function(o) { return o.active; }); + * // => objects for [['fred'], ['barney', 'pebbles']] + * + * // The `_.matches` iteratee shorthand. + * _.partition(users, { 'age': 1, 'active': false }); + * // => objects for [['pebbles'], ['barney', 'fred']] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.partition(users, ['active', false]); + * // => objects for [['barney', 'pebbles'], ['fred']] + * + * // The `_.property` iteratee shorthand. + * _.partition(users, 'active'); + * // => objects for [['fred'], ['barney', 'pebbles']] + */ + var partition = createAggregator(function(result, value, key) { + result[key ? 0 : 1].push(value); + }, function() { return [[], []]; }); + + /** + * Reduces `collection` to a value which is the accumulated result of running + * each element in `collection` thru `iteratee`, where each successive + * invocation is supplied the return value of the previous. If `accumulator` + * is not given, the first element of `collection` is used as the initial + * value. The iteratee is invoked with four arguments: + * (accumulator, value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.reduce`, `_.reduceRight`, and `_.transform`. + * + * The guarded methods are: + * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, + * and `sortBy` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduceRight + * @example + * + * _.reduce([1, 2], function(sum, n) { + * return sum + n; + * }, 0); + * // => 3 + * + * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * return result; + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) + */ + function reduce(collection, iteratee, accumulator) { + var func = isArray(collection) ? arrayReduce : baseReduce, + initAccum = arguments.length < 3; + + return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach); + } + + /** + * This method is like `_.reduce` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduce + * @example + * + * var array = [[0, 1], [2, 3], [4, 5]]; + * + * _.reduceRight(array, function(flattened, other) { + * return flattened.concat(other); + * }, []); + * // => [4, 5, 2, 3, 0, 1] + */ + function reduceRight(collection, iteratee, accumulator) { + var func = isArray(collection) ? arrayReduceRight : baseReduce, + initAccum = arguments.length < 3; + + return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight); + } + + /** + * The opposite of `_.filter`; this method returns the elements of `collection` + * that `predicate` does **not** return truthy for. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.filter + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': true } + * ]; + * + * _.reject(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.reject(users, { 'age': 40, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.reject(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.reject(users, 'active'); + * // => objects for ['barney'] + */ + function reject(collection, predicate) { + var func = isArray(collection) ? arrayFilter : baseFilter; + return func(collection, negate(getIteratee(predicate, 3))); + } + + /** + * Gets a random element from `collection`. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Collection + * @param {Array|Object} collection The collection to sample. + * @returns {*} Returns the random element. + * @example + * + * _.sample([1, 2, 3, 4]); + * // => 2 + */ + function sample(collection) { + var func = isArray(collection) ? arraySample : baseSample; + return func(collection); + } + + /** + * Gets `n` random elements at unique keys from `collection` up to the + * size of `collection`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to sample. + * @param {number} [n=1] The number of elements to sample. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the random elements. + * @example + * + * _.sampleSize([1, 2, 3], 2); + * // => [3, 1] + * + * _.sampleSize([1, 2, 3], 4); + * // => [2, 3, 1] + */ + function sampleSize(collection, n, guard) { + if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) { + n = 1; + } else { + n = toInteger(n); + } + var func = isArray(collection) ? arraySampleSize : baseSampleSize; + return func(collection, n); + } + + /** + * Creates an array of shuffled values, using a version of the + * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to shuffle. + * @returns {Array} Returns the new shuffled array. + * @example + * + * _.shuffle([1, 2, 3, 4]); + * // => [4, 1, 3, 2] + */ + function shuffle(collection) { + var func = isArray(collection) ? arrayShuffle : baseShuffle; + return func(collection); + } + + /** + * Gets the size of `collection` by returning its length for array-like + * values or the number of own enumerable string keyed properties for objects. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @returns {number} Returns the collection size. + * @example + * + * _.size([1, 2, 3]); + * // => 3 + * + * _.size({ 'a': 1, 'b': 2 }); + * // => 2 + * + * _.size('pebbles'); + * // => 7 + */ + function size(collection) { + if (collection == null) { + return 0; + } + if (isArrayLike(collection)) { + return isString(collection) ? stringSize(collection) : collection.length; + } + var tag = getTag(collection); + if (tag == mapTag || tag == setTag) { + return collection.size; + } + return baseKeys(collection).length; + } + + /** + * Checks if `predicate` returns truthy for **any** element of `collection`. + * Iteration is stopped once `predicate` returns truthy. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + * @example + * + * _.some([null, 0, 'yes', false], Boolean); + * // => true + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.some(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.some(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.some(users, 'active'); + * // => true + */ + function some(collection, predicate, guard) { + var func = isArray(collection) ? arraySome : baseSome; + if (guard && isIterateeCall(collection, predicate, guard)) { + predicate = undefined; + } + return func(collection, getIteratee(predicate, 3)); + } + + /** + * Creates an array of elements, sorted in ascending order by the results of + * running each element in a collection thru each iteratee. This method + * performs a stable sort, that is, it preserves the original sort order of + * equal elements. The iteratees are invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {...(Function|Function[])} [iteratees=[_.identity]] + * The iteratees to sort by. + * @returns {Array} Returns the new sorted array. + * @example + * + * var users = [ + * { 'user': 'fred', 'age': 48 }, + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 }, + * { 'user': 'barney', 'age': 34 } + * ]; + * + * _.sortBy(users, [function(o) { return o.user; }]); + * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]] + * + * _.sortBy(users, ['user', 'age']); + * // => objects for [['barney', 34], ['barney', 36], ['fred', 40], ['fred', 48]] + */ + var sortBy = baseRest(function(collection, iteratees) { + if (collection == null) { + return []; + } + var length = iteratees.length; + if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) { + iteratees = []; + } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) { + iteratees = [iteratees[0]]; + } + return baseOrderBy(collection, baseFlatten(iteratees, 1), []); + }); + + /*------------------------------------------------------------------------*/ + + /** + * Gets the timestamp of the number of milliseconds that have elapsed since + * the Unix epoch (1 January 1970 00:00:00 UTC). + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Date + * @returns {number} Returns the timestamp. + * @example + * + * _.defer(function(stamp) { + * console.log(_.now() - stamp); + * }, _.now()); + * // => Logs the number of milliseconds it took for the deferred invocation. + */ + var now = ctxNow || function() { + return root.Date.now(); + }; + + /*------------------------------------------------------------------------*/ + + /** + * The opposite of `_.before`; this method creates a function that invokes + * `func` once it's called `n` or more times. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {number} n The number of calls before `func` is invoked. + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * var saves = ['profile', 'settings']; + * + * var done = _.after(saves.length, function() { + * console.log('done saving!'); + * }); + * + * _.forEach(saves, function(type) { + * asyncSave({ 'type': type, 'complete': done }); + * }); + * // => Logs 'done saving!' after the two async saves have completed. + */ + function after(n, func) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n < 1) { + return func.apply(this, arguments); + } + }; + } + + /** + * Creates a function that invokes `func`, with up to `n` arguments, + * ignoring any additional arguments. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to cap arguments for. + * @param {number} [n=func.length] The arity cap. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new capped function. + * @example + * + * _.map(['6', '8', '10'], _.ary(parseInt, 1)); + * // => [6, 8, 10] + */ + function ary(func, n, guard) { + n = guard ? undefined : n; + n = (func && n == null) ? func.length : n; + return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n); + } + + /** + * Creates a function that invokes `func`, with the `this` binding and arguments + * of the created function, while it's called less than `n` times. Subsequent + * calls to the created function return the result of the last `func` invocation. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {number} n The number of calls at which `func` is no longer invoked. + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * jQuery(element).on('click', _.before(5, addContactToList)); + * // => Allows adding up to 4 contacts to the list. + */ + function before(n, func) { + var result; + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n > 0) { + result = func.apply(this, arguments); + } + if (n <= 1) { + func = undefined; + } + return result; + }; + } + + /** + * Creates a function that invokes `func` with the `this` binding of `thisArg` + * and `partials` prepended to the arguments it receives. + * + * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds, + * may be used as a placeholder for partially applied arguments. + * + * **Note:** Unlike native `Function#bind`, this method doesn't set the "length" + * property of bound functions. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to bind. + * @param {*} thisArg The `this` binding of `func`. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new bound function. + * @example + * + * function greet(greeting, punctuation) { + * return greeting + ' ' + this.user + punctuation; + * } + * + * var object = { 'user': 'fred' }; + * + * var bound = _.bind(greet, object, 'hi'); + * bound('!'); + * // => 'hi fred!' + * + * // Bound with placeholders. + * var bound = _.bind(greet, object, _, '!'); + * bound('hi'); + * // => 'hi fred!' + */ + var bind = baseRest(function(func, thisArg, partials) { + var bitmask = WRAP_BIND_FLAG; + if (partials.length) { + var holders = replaceHolders(partials, getHolder(bind)); + bitmask |= WRAP_PARTIAL_FLAG; + } + return createWrap(func, bitmask, thisArg, partials, holders); + }); + + /** + * Creates a function that invokes the method at `object[key]` with `partials` + * prepended to the arguments it receives. + * + * This method differs from `_.bind` by allowing bound functions to reference + * methods that may be redefined or don't yet exist. See + * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern) + * for more details. + * + * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * @static + * @memberOf _ + * @since 0.10.0 + * @category Function + * @param {Object} object The object to invoke the method on. + * @param {string} key The key of the method. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new bound function. + * @example + * + * var object = { + * 'user': 'fred', + * 'greet': function(greeting, punctuation) { + * return greeting + ' ' + this.user + punctuation; + * } + * }; + * + * var bound = _.bindKey(object, 'greet', 'hi'); + * bound('!'); + * // => 'hi fred!' + * + * object.greet = function(greeting, punctuation) { + * return greeting + 'ya ' + this.user + punctuation; + * }; + * + * bound('!'); + * // => 'hiya fred!' + * + * // Bound with placeholders. + * var bound = _.bindKey(object, 'greet', _, '!'); + * bound('hi'); + * // => 'hiya fred!' + */ + var bindKey = baseRest(function(object, key, partials) { + var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG; + if (partials.length) { + var holders = replaceHolders(partials, getHolder(bindKey)); + bitmask |= WRAP_PARTIAL_FLAG; + } + return createWrap(key, bitmask, object, partials, holders); + }); + + /** + * Creates a function that accepts arguments of `func` and either invokes + * `func` returning its result, if at least `arity` number of arguments have + * been provided, or returns a function that accepts the remaining `func` + * arguments, and so on. The arity of `func` may be specified if `func.length` + * is not sufficient. + * + * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds, + * may be used as a placeholder for provided arguments. + * + * **Note:** This method doesn't set the "length" property of curried functions. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Function + * @param {Function} func The function to curry. + * @param {number} [arity=func.length] The arity of `func`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new curried function. + * @example + * + * var abc = function(a, b, c) { + * return [a, b, c]; + * }; + * + * var curried = _.curry(abc); + * + * curried(1)(2)(3); + * // => [1, 2, 3] + * + * curried(1, 2)(3); + * // => [1, 2, 3] + * + * curried(1, 2, 3); + * // => [1, 2, 3] + * + * // Curried with placeholders. + * curried(1)(_, 3)(2); + * // => [1, 2, 3] + */ + function curry(func, arity, guard) { + arity = guard ? undefined : arity; + var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity); + result.placeholder = curry.placeholder; + return result; + } + + /** + * This method is like `_.curry` except that arguments are applied to `func` + * in the manner of `_.partialRight` instead of `_.partial`. + * + * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for provided arguments. + * + * **Note:** This method doesn't set the "length" property of curried functions. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to curry. + * @param {number} [arity=func.length] The arity of `func`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new curried function. + * @example + * + * var abc = function(a, b, c) { + * return [a, b, c]; + * }; + * + * var curried = _.curryRight(abc); + * + * curried(3)(2)(1); + * // => [1, 2, 3] + * + * curried(2, 3)(1); + * // => [1, 2, 3] + * + * curried(1, 2, 3); + * // => [1, 2, 3] + * + * // Curried with placeholders. + * curried(3)(1, _)(2); + * // => [1, 2, 3] + */ + function curryRight(func, arity, guard) { + arity = guard ? undefined : arity; + var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity); + result.placeholder = curryRight.placeholder; + return result; + } + + /** + * Creates a debounced function that delays invoking `func` until after `wait` + * milliseconds have elapsed since the last time the debounced function was + * invoked. The debounced function comes with a `cancel` method to cancel + * delayed `func` invocations and a `flush` method to immediately invoke them. + * Provide `options` to indicate whether `func` should be invoked on the + * leading and/or trailing edge of the `wait` timeout. The `func` is invoked + * with the last arguments provided to the debounced function. Subsequent + * calls to the debounced function return the result of the last `func` + * invocation. + * + * **Note:** If `leading` and `trailing` options are `true`, `func` is + * invoked on the trailing edge of the timeout only if the debounced function + * is invoked more than once during the `wait` timeout. + * + * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred + * until to the next tick, similar to `setTimeout` with a timeout of `0`. + * + * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) + * for details over the differences between `_.debounce` and `_.throttle`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to debounce. + * @param {number} [wait=0] The number of milliseconds to delay. + * @param {Object} [options={}] The options object. + * @param {boolean} [options.leading=false] + * Specify invoking on the leading edge of the timeout. + * @param {number} [options.maxWait] + * The maximum time `func` is allowed to be delayed before it's invoked. + * @param {boolean} [options.trailing=true] + * Specify invoking on the trailing edge of the timeout. + * @returns {Function} Returns the new debounced function. + * @example + * + * // Avoid costly calculations while the window size is in flux. + * jQuery(window).on('resize', _.debounce(calculateLayout, 150)); + * + * // Invoke `sendMail` when clicked, debouncing subsequent calls. + * jQuery(element).on('click', _.debounce(sendMail, 300, { + * 'leading': true, + * 'trailing': false + * })); + * + * // Ensure `batchLog` is invoked once after 1 second of debounced calls. + * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 }); + * var source = new EventSource('/stream'); + * jQuery(source).on('message', debounced); + * + * // Cancel the trailing debounced invocation. + * jQuery(window).on('popstate', debounced.cancel); + */ + function debounce(func, wait, options) { + var lastArgs, + lastThis, + maxWait, + result, + timerId, + lastCallTime, + lastInvokeTime = 0, + leading = false, + maxing = false, + trailing = true; + + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + wait = toNumber(wait) || 0; + if (isObject(options)) { + leading = !!options.leading; + maxing = 'maxWait' in options; + maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; + trailing = 'trailing' in options ? !!options.trailing : trailing; + } + + function invokeFunc(time) { + var args = lastArgs, + thisArg = lastThis; + + lastArgs = lastThis = undefined; + lastInvokeTime = time; + result = func.apply(thisArg, args); + return result; + } + + function leadingEdge(time) { + // Reset any `maxWait` timer. + lastInvokeTime = time; + // Start the timer for the trailing edge. + timerId = setTimeout(timerExpired, wait); + // Invoke the leading edge. + return leading ? invokeFunc(time) : result; + } + + function remainingWait(time) { + var timeSinceLastCall = time - lastCallTime, + timeSinceLastInvoke = time - lastInvokeTime, + result = wait - timeSinceLastCall; + + return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result; + } + + function shouldInvoke(time) { + var timeSinceLastCall = time - lastCallTime, + timeSinceLastInvoke = time - lastInvokeTime; + + // Either this is the first call, activity has stopped and we're at the + // trailing edge, the system time has gone backwards and we're treating + // it as the trailing edge, or we've hit the `maxWait` limit. + return (lastCallTime === undefined || (timeSinceLastCall >= wait) || + (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait)); + } + + function timerExpired() { + var time = now(); + if (shouldInvoke(time)) { + return trailingEdge(time); + } + // Restart the timer. + timerId = setTimeout(timerExpired, remainingWait(time)); + } + + function trailingEdge(time) { + timerId = undefined; + + // Only invoke if we have `lastArgs` which means `func` has been + // debounced at least once. + if (trailing && lastArgs) { + return invokeFunc(time); + } + lastArgs = lastThis = undefined; + return result; + } + + function cancel() { + if (timerId !== undefined) { + clearTimeout(timerId); + } + lastInvokeTime = 0; + lastArgs = lastCallTime = lastThis = timerId = undefined; + } + + function flush() { + return timerId === undefined ? result : trailingEdge(now()); + } + + function debounced() { + var time = now(), + isInvoking = shouldInvoke(time); + + lastArgs = arguments; + lastThis = this; + lastCallTime = time; + + if (isInvoking) { + if (timerId === undefined) { + return leadingEdge(lastCallTime); + } + if (maxing) { + // Handle invocations in a tight loop. + timerId = setTimeout(timerExpired, wait); + return invokeFunc(lastCallTime); + } + } + if (timerId === undefined) { + timerId = setTimeout(timerExpired, wait); + } + return result; + } + debounced.cancel = cancel; + debounced.flush = flush; + return debounced; + } + + /** + * Defers invoking the `func` until the current call stack has cleared. Any + * additional arguments are provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to defer. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {number} Returns the timer id. + * @example + * + * _.defer(function(text) { + * console.log(text); + * }, 'deferred'); + * // => Logs 'deferred' after one millisecond. + */ + var defer = baseRest(function(func, args) { + return baseDelay(func, 1, args); + }); + + /** + * Invokes `func` after `wait` milliseconds. Any additional arguments are + * provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {number} Returns the timer id. + * @example + * + * _.delay(function(text) { + * console.log(text); + * }, 1000, 'later'); + * // => Logs 'later' after one second. + */ + var delay = baseRest(function(func, wait, args) { + return baseDelay(func, toNumber(wait) || 0, args); + }); + + /** + * Creates a function that invokes `func` with arguments reversed. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Function + * @param {Function} func The function to flip arguments for. + * @returns {Function} Returns the new flipped function. + * @example + * + * var flipped = _.flip(function() { + * return _.toArray(arguments); + * }); + * + * flipped('a', 'b', 'c', 'd'); + * // => ['d', 'c', 'b', 'a'] + */ + function flip(func) { + return createWrap(func, WRAP_FLIP_FLAG); + } + + /** + * Creates a function that memoizes the result of `func`. If `resolver` is + * provided, it determines the cache key for storing the result based on the + * arguments provided to the memoized function. By default, the first argument + * provided to the memoized function is used as the map cache key. The `func` + * is invoked with the `this` binding of the memoized function. + * + * **Note:** The cache is exposed as the `cache` property on the memoized + * function. Its creation may be customized by replacing the `_.memoize.Cache` + * constructor with one whose instances implement the + * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object) + * method interface of `clear`, `delete`, `get`, `has`, and `set`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to have its output memoized. + * @param {Function} [resolver] The function to resolve the cache key. + * @returns {Function} Returns the new memoized function. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * var other = { 'c': 3, 'd': 4 }; + * + * var values = _.memoize(_.values); + * values(object); + * // => [1, 2] + * + * values(other); + * // => [3, 4] + * + * object.a = 2; + * values(object); + * // => [1, 2] + * + * // Modify the result cache. + * values.cache.set(object, ['a', 'b']); + * values(object); + * // => ['a', 'b'] + * + * // Replace `_.memoize.Cache`. + * _.memoize.Cache = WeakMap; + */ + function memoize(func, resolver) { + if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) { + throw new TypeError(FUNC_ERROR_TEXT); + } + var memoized = function() { + var args = arguments, + key = resolver ? resolver.apply(this, args) : args[0], + cache = memoized.cache; + + if (cache.has(key)) { + return cache.get(key); + } + var result = func.apply(this, args); + memoized.cache = cache.set(key, result) || cache; + return result; + }; + memoized.cache = new (memoize.Cache || MapCache); + return memoized; + } + + // Expose `MapCache`. + memoize.Cache = MapCache; + + /** + * Creates a function that negates the result of the predicate `func`. The + * `func` predicate is invoked with the `this` binding and arguments of the + * created function. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} predicate The predicate to negate. + * @returns {Function} Returns the new negated function. + * @example + * + * function isEven(n) { + * return n % 2 == 0; + * } + * + * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven)); + * // => [1, 3, 5] + */ + function negate(predicate) { + if (typeof predicate != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return function() { + var args = arguments; + switch (args.length) { + case 0: return !predicate.call(this); + case 1: return !predicate.call(this, args[0]); + case 2: return !predicate.call(this, args[0], args[1]); + case 3: return !predicate.call(this, args[0], args[1], args[2]); + } + return !predicate.apply(this, args); + }; + } + + /** + * Creates a function that is restricted to invoking `func` once. Repeat calls + * to the function return the value of the first invocation. The `func` is + * invoked with the `this` binding and arguments of the created function. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * var initialize = _.once(createApplication); + * initialize(); + * initialize(); + * // => `createApplication` is invoked once + */ + function once(func) { + return before(2, func); + } + + /** + * Creates a function that invokes `func` with its arguments transformed. + * + * @static + * @since 4.0.0 + * @memberOf _ + * @category Function + * @param {Function} func The function to wrap. + * @param {...(Function|Function[])} [transforms=[_.identity]] + * The argument transforms. + * @returns {Function} Returns the new function. + * @example + * + * function doubled(n) { + * return n * 2; + * } + * + * function square(n) { + * return n * n; + * } + * + * var func = _.overArgs(function(x, y) { + * return [x, y]; + * }, [square, doubled]); + * + * func(9, 3); + * // => [81, 6] + * + * func(10, 5); + * // => [100, 10] + */ + var overArgs = castRest(function(func, transforms) { + transforms = (transforms.length == 1 && isArray(transforms[0])) + ? arrayMap(transforms[0], baseUnary(getIteratee())) + : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee())); + + var funcsLength = transforms.length; + return baseRest(function(args) { + var index = -1, + length = nativeMin(args.length, funcsLength); + + while (++index < length) { + args[index] = transforms[index].call(this, args[index]); + } + return apply(func, this, args); + }); + }); + + /** + * Creates a function that invokes `func` with `partials` prepended to the + * arguments it receives. This method is like `_.bind` except it does **not** + * alter the `this` binding. + * + * The `_.partial.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * **Note:** This method doesn't set the "length" property of partially + * applied functions. + * + * @static + * @memberOf _ + * @since 0.2.0 + * @category Function + * @param {Function} func The function to partially apply arguments to. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new partially applied function. + * @example + * + * function greet(greeting, name) { + * return greeting + ' ' + name; + * } + * + * var sayHelloTo = _.partial(greet, 'hello'); + * sayHelloTo('fred'); + * // => 'hello fred' + * + * // Partially applied with placeholders. + * var greetFred = _.partial(greet, _, 'fred'); + * greetFred('hi'); + * // => 'hi fred' + */ + var partial = baseRest(function(func, partials) { + var holders = replaceHolders(partials, getHolder(partial)); + return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders); + }); + + /** + * This method is like `_.partial` except that partially applied arguments + * are appended to the arguments it receives. + * + * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * **Note:** This method doesn't set the "length" property of partially + * applied functions. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Function + * @param {Function} func The function to partially apply arguments to. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new partially applied function. + * @example + * + * function greet(greeting, name) { + * return greeting + ' ' + name; + * } + * + * var greetFred = _.partialRight(greet, 'fred'); + * greetFred('hi'); + * // => 'hi fred' + * + * // Partially applied with placeholders. + * var sayHelloTo = _.partialRight(greet, 'hello', _); + * sayHelloTo('fred'); + * // => 'hello fred' + */ + var partialRight = baseRest(function(func, partials) { + var holders = replaceHolders(partials, getHolder(partialRight)); + return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders); + }); + + /** + * Creates a function that invokes `func` with arguments arranged according + * to the specified `indexes` where the argument value at the first index is + * provided as the first argument, the argument value at the second index is + * provided as the second argument, and so on. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to rearrange arguments for. + * @param {...(number|number[])} indexes The arranged argument indexes. + * @returns {Function} Returns the new function. + * @example + * + * var rearged = _.rearg(function(a, b, c) { + * return [a, b, c]; + * }, [2, 0, 1]); + * + * rearged('b', 'c', 'a') + * // => ['a', 'b', 'c'] + */ + var rearg = flatRest(function(func, indexes) { + return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes); + }); + + /** + * Creates a function that invokes `func` with the `this` binding of the + * created function and arguments from `start` and beyond provided as + * an array. + * + * **Note:** This method is based on the + * [rest parameter](https://mdn.io/rest_parameters). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Function + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @returns {Function} Returns the new function. + * @example + * + * var say = _.rest(function(what, names) { + * return what + ' ' + _.initial(names).join(', ') + + * (_.size(names) > 1 ? ', & ' : '') + _.last(names); + * }); + * + * say('hello', 'fred', 'barney', 'pebbles'); + * // => 'hello fred, barney, & pebbles' + */ + function rest(func, start) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + start = start === undefined ? start : toInteger(start); + return baseRest(func, start); + } + + /** + * Creates a function that invokes `func` with the `this` binding of the + * create function and an array of arguments much like + * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply). + * + * **Note:** This method is based on the + * [spread operator](https://mdn.io/spread_operator). + * + * @static + * @memberOf _ + * @since 3.2.0 + * @category Function + * @param {Function} func The function to spread arguments over. + * @param {number} [start=0] The start position of the spread. + * @returns {Function} Returns the new function. + * @example + * + * var say = _.spread(function(who, what) { + * return who + ' says ' + what; + * }); + * + * say(['fred', 'hello']); + * // => 'fred says hello' + * + * var numbers = Promise.all([ + * Promise.resolve(40), + * Promise.resolve(36) + * ]); + * + * numbers.then(_.spread(function(x, y) { + * return x + y; + * })); + * // => a Promise of 76 + */ + function spread(func, start) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + start = start == null ? 0 : nativeMax(toInteger(start), 0); + return baseRest(function(args) { + var array = args[start], + otherArgs = castSlice(args, 0, start); + + if (array) { + arrayPush(otherArgs, array); + } + return apply(func, this, otherArgs); + }); + } + + /** + * Creates a throttled function that only invokes `func` at most once per + * every `wait` milliseconds. The throttled function comes with a `cancel` + * method to cancel delayed `func` invocations and a `flush` method to + * immediately invoke them. Provide `options` to indicate whether `func` + * should be invoked on the leading and/or trailing edge of the `wait` + * timeout. The `func` is invoked with the last arguments provided to the + * throttled function. Subsequent calls to the throttled function return the + * result of the last `func` invocation. + * + * **Note:** If `leading` and `trailing` options are `true`, `func` is + * invoked on the trailing edge of the timeout only if the throttled function + * is invoked more than once during the `wait` timeout. + * + * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred + * until to the next tick, similar to `setTimeout` with a timeout of `0`. + * + * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) + * for details over the differences between `_.throttle` and `_.debounce`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to throttle. + * @param {number} [wait=0] The number of milliseconds to throttle invocations to. + * @param {Object} [options={}] The options object. + * @param {boolean} [options.leading=true] + * Specify invoking on the leading edge of the timeout. + * @param {boolean} [options.trailing=true] + * Specify invoking on the trailing edge of the timeout. + * @returns {Function} Returns the new throttled function. + * @example + * + * // Avoid excessively updating the position while scrolling. + * jQuery(window).on('scroll', _.throttle(updatePosition, 100)); + * + * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes. + * var throttled = _.throttle(renewToken, 300000, { 'trailing': false }); + * jQuery(element).on('click', throttled); + * + * // Cancel the trailing throttled invocation. + * jQuery(window).on('popstate', throttled.cancel); + */ + function throttle(func, wait, options) { + var leading = true, + trailing = true; + + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + if (isObject(options)) { + leading = 'leading' in options ? !!options.leading : leading; + trailing = 'trailing' in options ? !!options.trailing : trailing; + } + return debounce(func, wait, { + 'leading': leading, + 'maxWait': wait, + 'trailing': trailing + }); + } + + /** + * Creates a function that accepts up to one argument, ignoring any + * additional arguments. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Function + * @param {Function} func The function to cap arguments for. + * @returns {Function} Returns the new capped function. + * @example + * + * _.map(['6', '8', '10'], _.unary(parseInt)); + * // => [6, 8, 10] + */ + function unary(func) { + return ary(func, 1); + } + + /** + * Creates a function that provides `value` to `wrapper` as its first + * argument. Any additional arguments provided to the function are appended + * to those provided to the `wrapper`. The wrapper is invoked with the `this` + * binding of the created function. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {*} value The value to wrap. + * @param {Function} [wrapper=identity] The wrapper function. + * @returns {Function} Returns the new function. + * @example + * + * var p = _.wrap(_.escape, function(func, text) { + * return '

' + func(text) + '

'; + * }); + * + * p('fred, barney, & pebbles'); + * // => '

fred, barney, & pebbles

' + */ + function wrap(value, wrapper) { + return partial(castFunction(wrapper), value); + } + + /*------------------------------------------------------------------------*/ + + /** + * Casts `value` as an array if it's not one. + * + * @static + * @memberOf _ + * @since 4.4.0 + * @category Lang + * @param {*} value The value to inspect. + * @returns {Array} Returns the cast array. + * @example + * + * _.castArray(1); + * // => [1] + * + * _.castArray({ 'a': 1 }); + * // => [{ 'a': 1 }] + * + * _.castArray('abc'); + * // => ['abc'] + * + * _.castArray(null); + * // => [null] + * + * _.castArray(undefined); + * // => [undefined] + * + * _.castArray(); + * // => [] + * + * var array = [1, 2, 3]; + * console.log(_.castArray(array) === array); + * // => true + */ + function castArray() { + if (!arguments.length) { + return []; + } + var value = arguments[0]; + return isArray(value) ? value : [value]; + } + + /** + * Creates a shallow clone of `value`. + * + * **Note:** This method is loosely based on the + * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) + * and supports cloning arrays, array buffers, booleans, date objects, maps, + * numbers, `Object` objects, regexes, sets, strings, symbols, and typed + * arrays. The own enumerable properties of `arguments` objects are cloned + * as plain objects. An empty object is returned for uncloneable values such + * as error objects, functions, DOM nodes, and WeakMaps. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to clone. + * @returns {*} Returns the cloned value. + * @see _.cloneDeep + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var shallow = _.clone(objects); + * console.log(shallow[0] === objects[0]); + * // => true + */ + function clone(value) { + return baseClone(value, CLONE_SYMBOLS_FLAG); + } + + /** + * This method is like `_.clone` except that it accepts `customizer` which + * is invoked to produce the cloned value. If `customizer` returns `undefined`, + * cloning is handled by the method instead. The `customizer` is invoked with + * up to four arguments; (value [, index|key, object, stack]). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to clone. + * @param {Function} [customizer] The function to customize cloning. + * @returns {*} Returns the cloned value. + * @see _.cloneDeepWith + * @example + * + * function customizer(value) { + * if (_.isElement(value)) { + * return value.cloneNode(false); + * } + * } + * + * var el = _.cloneWith(document.body, customizer); + * + * console.log(el === document.body); + * // => false + * console.log(el.nodeName); + * // => 'BODY' + * console.log(el.childNodes.length); + * // => 0 + */ + function cloneWith(value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseClone(value, CLONE_SYMBOLS_FLAG, customizer); + } + + /** + * This method is like `_.clone` except that it recursively clones `value`. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Lang + * @param {*} value The value to recursively clone. + * @returns {*} Returns the deep cloned value. + * @see _.clone + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var deep = _.cloneDeep(objects); + * console.log(deep[0] === objects[0]); + * // => false + */ + function cloneDeep(value) { + return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); + } + + /** + * This method is like `_.cloneWith` except that it recursively clones `value`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to recursively clone. + * @param {Function} [customizer] The function to customize cloning. + * @returns {*} Returns the deep cloned value. + * @see _.cloneWith + * @example + * + * function customizer(value) { + * if (_.isElement(value)) { + * return value.cloneNode(true); + * } + * } + * + * var el = _.cloneDeepWith(document.body, customizer); + * + * console.log(el === document.body); + * // => false + * console.log(el.nodeName); + * // => 'BODY' + * console.log(el.childNodes.length); + * // => 20 + */ + function cloneDeepWith(value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); + } + + /** + * Checks if `object` conforms to `source` by invoking the predicate + * properties of `source` with the corresponding property values of `object`. + * + * **Note:** This method is equivalent to `_.conforms` when `source` is + * partially applied. + * + * @static + * @memberOf _ + * @since 4.14.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property predicates to conform to. + * @returns {boolean} Returns `true` if `object` conforms, else `false`. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * + * _.conformsTo(object, { 'b': function(n) { return n > 1; } }); + * // => true + * + * _.conformsTo(object, { 'b': function(n) { return n > 2; } }); + * // => false + */ + function conformsTo(object, source) { + return source == null || baseConformsTo(object, source, keys(source)); + } + + /** + * Performs a + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * comparison between two values to determine if they are equivalent. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.eq(object, object); + * // => true + * + * _.eq(object, other); + * // => false + * + * _.eq('a', 'a'); + * // => true + * + * _.eq('a', Object('a')); + * // => false + * + * _.eq(NaN, NaN); + * // => true + */ + function eq(value, other) { + return value === other || (value !== value && other !== other); + } + + /** + * Checks if `value` is greater than `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + * @see _.lt + * @example + * + * _.gt(3, 1); + * // => true + * + * _.gt(3, 3); + * // => false + * + * _.gt(1, 3); + * // => false + */ + var gt = createRelationalOperation(baseGt); + + /** + * Checks if `value` is greater than or equal to `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than or equal to + * `other`, else `false`. + * @see _.lte + * @example + * + * _.gte(3, 1); + * // => true + * + * _.gte(3, 3); + * // => true + * + * _.gte(1, 3); + * // => false + */ + var gte = createRelationalOperation(function(value, other) { + return value >= other; + }); + + /** + * Checks if `value` is likely an `arguments` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + * else `false`. + * @example + * + * _.isArguments(function() { return arguments; }()); + * // => true + * + * _.isArguments([1, 2, 3]); + * // => false + */ + var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { + return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && + !propertyIsEnumerable.call(value, 'callee'); + }; + + /** + * Checks if `value` is classified as an `Array` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array, else `false`. + * @example + * + * _.isArray([1, 2, 3]); + * // => true + * + * _.isArray(document.body.children); + * // => false + * + * _.isArray('abc'); + * // => false + * + * _.isArray(_.noop); + * // => false + */ + var isArray = Array.isArray; + + /** + * Checks if `value` is classified as an `ArrayBuffer` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. + * @example + * + * _.isArrayBuffer(new ArrayBuffer(2)); + * // => true + * + * _.isArrayBuffer(new Array(2)); + * // => false + */ + var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer; + + /** + * Checks if `value` is array-like. A value is considered array-like if it's + * not a function and has a `value.length` that's an integer greater than or + * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is array-like, else `false`. + * @example + * + * _.isArrayLike([1, 2, 3]); + * // => true + * + * _.isArrayLike(document.body.children); + * // => true + * + * _.isArrayLike('abc'); + * // => true + * + * _.isArrayLike(_.noop); + * // => false + */ + function isArrayLike(value) { + return value != null && isLength(value.length) && !isFunction(value); + } + + /** + * This method is like `_.isArrayLike` except that it also checks if `value` + * is an object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array-like object, + * else `false`. + * @example + * + * _.isArrayLikeObject([1, 2, 3]); + * // => true + * + * _.isArrayLikeObject(document.body.children); + * // => true + * + * _.isArrayLikeObject('abc'); + * // => false + * + * _.isArrayLikeObject(_.noop); + * // => false + */ + function isArrayLikeObject(value) { + return isObjectLike(value) && isArrayLike(value); + } + + /** + * Checks if `value` is classified as a boolean primitive or object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a boolean, else `false`. + * @example + * + * _.isBoolean(false); + * // => true + * + * _.isBoolean(null); + * // => false + */ + function isBoolean(value) { + return value === true || value === false || + (isObjectLike(value) && baseGetTag(value) == boolTag); + } + + /** + * Checks if `value` is a buffer. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. + * @example + * + * _.isBuffer(new Buffer(2)); + * // => true + * + * _.isBuffer(new Uint8Array(2)); + * // => false + */ + var isBuffer = nativeIsBuffer || stubFalse; + + /** + * Checks if `value` is classified as a `Date` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a date object, else `false`. + * @example + * + * _.isDate(new Date); + * // => true + * + * _.isDate('Mon April 23 2012'); + * // => false + */ + var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate; + + /** + * Checks if `value` is likely a DOM element. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`. + * @example + * + * _.isElement(document.body); + * // => true + * + * _.isElement(''); + * // => false + */ + function isElement(value) { + return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value); + } + + /** + * Checks if `value` is an empty object, collection, map, or set. + * + * Objects are considered empty if they have no own enumerable string keyed + * properties. + * + * Array-like values such as `arguments` objects, arrays, buffers, strings, or + * jQuery-like collections are considered empty if they have a `length` of `0`. + * Similarly, maps and sets are considered empty if they have a `size` of `0`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is empty, else `false`. + * @example + * + * _.isEmpty(null); + * // => true + * + * _.isEmpty(true); + * // => true + * + * _.isEmpty(1); + * // => true + * + * _.isEmpty([1, 2, 3]); + * // => false + * + * _.isEmpty({ 'a': 1 }); + * // => false + */ + function isEmpty(value) { + if (value == null) { + return true; + } + if (isArrayLike(value) && + (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' || + isBuffer(value) || isTypedArray(value) || isArguments(value))) { + return !value.length; + } + var tag = getTag(value); + if (tag == mapTag || tag == setTag) { + return !value.size; + } + if (isPrototype(value)) { + return !baseKeys(value).length; + } + for (var key in value) { + if (hasOwnProperty.call(value, key)) { + return false; + } + } + return true; + } + + /** + * Performs a deep comparison between two values to determine if they are + * equivalent. + * + * **Note:** This method supports comparing arrays, array buffers, booleans, + * date objects, error objects, maps, numbers, `Object` objects, regexes, + * sets, strings, symbols, and typed arrays. `Object` objects are compared + * by their own, not inherited, enumerable properties. Functions and DOM + * nodes are compared by strict equality, i.e. `===`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.isEqual(object, other); + * // => true + * + * object === other; + * // => false + */ + function isEqual(value, other) { + return baseIsEqual(value, other); + } + + /** + * This method is like `_.isEqual` except that it accepts `customizer` which + * is invoked to compare values. If `customizer` returns `undefined`, comparisons + * are handled by the method instead. The `customizer` is invoked with up to + * six arguments: (objValue, othValue [, index|key, object, other, stack]). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * function isGreeting(value) { + * return /^h(?:i|ello)$/.test(value); + * } + * + * function customizer(objValue, othValue) { + * if (isGreeting(objValue) && isGreeting(othValue)) { + * return true; + * } + * } + * + * var array = ['hello', 'goodbye']; + * var other = ['hi', 'goodbye']; + * + * _.isEqualWith(array, other, customizer); + * // => true + */ + function isEqualWith(value, other, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + var result = customizer ? customizer(value, other) : undefined; + return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result; + } + + /** + * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`, + * `SyntaxError`, `TypeError`, or `URIError` object. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an error object, else `false`. + * @example + * + * _.isError(new Error); + * // => true + * + * _.isError(Error); + * // => false + */ + function isError(value) { + if (!isObjectLike(value)) { + return false; + } + var tag = baseGetTag(value); + return tag == errorTag || tag == domExcTag || + (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value)); + } + + /** + * Checks if `value` is a finite primitive number. + * + * **Note:** This method is based on + * [`Number.isFinite`](https://mdn.io/Number/isFinite). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a finite number, else `false`. + * @example + * + * _.isFinite(3); + * // => true + * + * _.isFinite(Number.MIN_VALUE); + * // => true + * + * _.isFinite(Infinity); + * // => false + * + * _.isFinite('3'); + * // => false + */ + function isFinite(value) { + return typeof value == 'number' && nativeIsFinite(value); + } + + /** + * Checks if `value` is classified as a `Function` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a function, else `false`. + * @example + * + * _.isFunction(_); + * // => true + * + * _.isFunction(/abc/); + * // => false + */ + function isFunction(value) { + if (!isObject(value)) { + return false; + } + // The use of `Object#toString` avoids issues with the `typeof` operator + // in Safari 9 which returns 'object' for typed arrays and other constructors. + var tag = baseGetTag(value); + return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; + } + + /** + * Checks if `value` is an integer. + * + * **Note:** This method is based on + * [`Number.isInteger`](https://mdn.io/Number/isInteger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an integer, else `false`. + * @example + * + * _.isInteger(3); + * // => true + * + * _.isInteger(Number.MIN_VALUE); + * // => false + * + * _.isInteger(Infinity); + * // => false + * + * _.isInteger('3'); + * // => false + */ + function isInteger(value) { + return typeof value == 'number' && value == toInteger(value); + } + + /** + * Checks if `value` is a valid array-like length. + * + * **Note:** This method is loosely based on + * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. + * @example + * + * _.isLength(3); + * // => true + * + * _.isLength(Number.MIN_VALUE); + * // => false + * + * _.isLength(Infinity); + * // => false + * + * _.isLength('3'); + * // => false + */ + function isLength(value) { + return typeof value == 'number' && + value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; + } + + /** + * Checks if `value` is the + * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) + * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an object, else `false`. + * @example + * + * _.isObject({}); + * // => true + * + * _.isObject([1, 2, 3]); + * // => true + * + * _.isObject(_.noop); + * // => true + * + * _.isObject(null); + * // => false + */ + function isObject(value) { + var type = typeof value; + return value != null && (type == 'object' || type == 'function'); + } + + /** + * Checks if `value` is object-like. A value is object-like if it's not `null` + * and has a `typeof` result of "object". + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is object-like, else `false`. + * @example + * + * _.isObjectLike({}); + * // => true + * + * _.isObjectLike([1, 2, 3]); + * // => true + * + * _.isObjectLike(_.noop); + * // => false + * + * _.isObjectLike(null); + * // => false + */ + function isObjectLike(value) { + return value != null && typeof value == 'object'; + } + + /** + * Checks if `value` is classified as a `Map` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + * @example + * + * _.isMap(new Map); + * // => true + * + * _.isMap(new WeakMap); + * // => false + */ + var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; + + /** + * Performs a partial deep comparison between `object` and `source` to + * determine if `object` contains equivalent property values. + * + * **Note:** This method is equivalent to `_.matches` when `source` is + * partially applied. + * + * Partial comparisons will match empty array and empty object `source` + * values against any array or object value, respectively. See `_.isEqual` + * for a list of supported value comparisons. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * + * _.isMatch(object, { 'b': 2 }); + * // => true + * + * _.isMatch(object, { 'b': 1 }); + * // => false + */ + function isMatch(object, source) { + return object === source || baseIsMatch(object, source, getMatchData(source)); + } + + /** + * This method is like `_.isMatch` except that it accepts `customizer` which + * is invoked to compare values. If `customizer` returns `undefined`, comparisons + * are handled by the method instead. The `customizer` is invoked with five + * arguments: (objValue, srcValue, index|key, object, source). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + * @example + * + * function isGreeting(value) { + * return /^h(?:i|ello)$/.test(value); + * } + * + * function customizer(objValue, srcValue) { + * if (isGreeting(objValue) && isGreeting(srcValue)) { + * return true; + * } + * } + * + * var object = { 'greeting': 'hello' }; + * var source = { 'greeting': 'hi' }; + * + * _.isMatchWith(object, source, customizer); + * // => true + */ + function isMatchWith(object, source, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseIsMatch(object, source, getMatchData(source), customizer); + } + + /** + * Checks if `value` is `NaN`. + * + * **Note:** This method is based on + * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as + * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for + * `undefined` and other non-number values. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + * @example + * + * _.isNaN(NaN); + * // => true + * + * _.isNaN(new Number(NaN)); + * // => true + * + * isNaN(undefined); + * // => true + * + * _.isNaN(undefined); + * // => false + */ + function isNaN(value) { + // An `NaN` primitive is the only value that is not equal to itself. + // Perform the `toStringTag` check first to avoid errors with some + // ActiveX objects in IE. + return isNumber(value) && value != +value; + } + + /** + * Checks if `value` is a pristine native function. + * + * **Note:** This method can't reliably detect native functions in the presence + * of the core-js package because core-js circumvents this kind of detection. + * Despite multiple requests, the core-js maintainer has made it clear: any + * attempt to fix the detection will be obstructed. As a result, we're left + * with little choice but to throw an error. Unfortunately, this also affects + * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill), + * which rely on core-js. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a native function, + * else `false`. + * @example + * + * _.isNative(Array.prototype.push); + * // => true + * + * _.isNative(_); + * // => false + */ + function isNative(value) { + if (isMaskable(value)) { + throw new Error(CORE_ERROR_TEXT); + } + return baseIsNative(value); + } + + /** + * Checks if `value` is `null`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `null`, else `false`. + * @example + * + * _.isNull(null); + * // => true + * + * _.isNull(void 0); + * // => false + */ + function isNull(value) { + return value === null; + } + + /** + * Checks if `value` is `null` or `undefined`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is nullish, else `false`. + * @example + * + * _.isNil(null); + * // => true + * + * _.isNil(void 0); + * // => true + * + * _.isNil(NaN); + * // => false + */ + function isNil(value) { + return value == null; + } + + /** + * Checks if `value` is classified as a `Number` primitive or object. + * + * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are + * classified as numbers, use the `_.isFinite` method. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a number, else `false`. + * @example + * + * _.isNumber(3); + * // => true + * + * _.isNumber(Number.MIN_VALUE); + * // => true + * + * _.isNumber(Infinity); + * // => true + * + * _.isNumber('3'); + * // => false + */ + function isNumber(value) { + return typeof value == 'number' || + (isObjectLike(value) && baseGetTag(value) == numberTag); + } + + /** + * Checks if `value` is a plain object, that is, an object created by the + * `Object` constructor or one with a `[[Prototype]]` of `null`. + * + * @static + * @memberOf _ + * @since 0.8.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a plain object, else `false`. + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * _.isPlainObject(new Foo); + * // => false + * + * _.isPlainObject([1, 2, 3]); + * // => false + * + * _.isPlainObject({ 'x': 0, 'y': 0 }); + * // => true + * + * _.isPlainObject(Object.create(null)); + * // => true + */ + function isPlainObject(value) { + if (!isObjectLike(value) || baseGetTag(value) != objectTag) { + return false; + } + var proto = getPrototype(value); + if (proto === null) { + return true; + } + var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor; + return typeof Ctor == 'function' && Ctor instanceof Ctor && + funcToString.call(Ctor) == objectCtorString; + } + + /** + * Checks if `value` is classified as a `RegExp` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + * @example + * + * _.isRegExp(/abc/); + * // => true + * + * _.isRegExp('/abc/'); + * // => false + */ + var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; + + /** + * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754 + * double precision number which isn't the result of a rounded unsafe integer. + * + * **Note:** This method is based on + * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`. + * @example + * + * _.isSafeInteger(3); + * // => true + * + * _.isSafeInteger(Number.MIN_VALUE); + * // => false + * + * _.isSafeInteger(Infinity); + * // => false + * + * _.isSafeInteger('3'); + * // => false + */ + function isSafeInteger(value) { + return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER; + } + + /** + * Checks if `value` is classified as a `Set` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + * @example + * + * _.isSet(new Set); + * // => true + * + * _.isSet(new WeakSet); + * // => false + */ + var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; + + /** + * Checks if `value` is classified as a `String` primitive or object. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a string, else `false`. + * @example + * + * _.isString('abc'); + * // => true + * + * _.isString(1); + * // => false + */ + function isString(value) { + return typeof value == 'string' || + (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag); + } + + /** + * Checks if `value` is classified as a `Symbol` primitive or object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. + * @example + * + * _.isSymbol(Symbol.iterator); + * // => true + * + * _.isSymbol('abc'); + * // => false + */ + function isSymbol(value) { + return typeof value == 'symbol' || + (isObjectLike(value) && baseGetTag(value) == symbolTag); + } + + /** + * Checks if `value` is classified as a typed array. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. + * @example + * + * _.isTypedArray(new Uint8Array); + * // => true + * + * _.isTypedArray([]); + * // => false + */ + var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; + + /** + * Checks if `value` is `undefined`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. + * @example + * + * _.isUndefined(void 0); + * // => true + * + * _.isUndefined(null); + * // => false + */ + function isUndefined(value) { + return value === undefined; + } + + /** + * Checks if `value` is classified as a `WeakMap` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a weak map, else `false`. + * @example + * + * _.isWeakMap(new WeakMap); + * // => true + * + * _.isWeakMap(new Map); + * // => false + */ + function isWeakMap(value) { + return isObjectLike(value) && getTag(value) == weakMapTag; + } + + /** + * Checks if `value` is classified as a `WeakSet` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a weak set, else `false`. + * @example + * + * _.isWeakSet(new WeakSet); + * // => true + * + * _.isWeakSet(new Set); + * // => false + */ + function isWeakSet(value) { + return isObjectLike(value) && baseGetTag(value) == weakSetTag; + } + + /** + * Checks if `value` is less than `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + * @see _.gt + * @example + * + * _.lt(1, 3); + * // => true + * + * _.lt(3, 3); + * // => false + * + * _.lt(3, 1); + * // => false + */ + var lt = createRelationalOperation(baseLt); + + /** + * Checks if `value` is less than or equal to `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than or equal to + * `other`, else `false`. + * @see _.gte + * @example + * + * _.lte(1, 3); + * // => true + * + * _.lte(3, 3); + * // => true + * + * _.lte(3, 1); + * // => false + */ + var lte = createRelationalOperation(function(value, other) { + return value <= other; + }); + + /** + * Converts `value` to an array. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to convert. + * @returns {Array} Returns the converted array. + * @example + * + * _.toArray({ 'a': 1, 'b': 2 }); + * // => [1, 2] + * + * _.toArray('abc'); + * // => ['a', 'b', 'c'] + * + * _.toArray(1); + * // => [] + * + * _.toArray(null); + * // => [] + */ + function toArray(value) { + if (!value) { + return []; + } + if (isArrayLike(value)) { + return isString(value) ? stringToArray(value) : copyArray(value); + } + if (symIterator && value[symIterator]) { + return iteratorToArray(value[symIterator]()); + } + var tag = getTag(value), + func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values); + + return func(value); + } + + /** + * Converts `value` to a finite number. + * + * @static + * @memberOf _ + * @since 4.12.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted number. + * @example + * + * _.toFinite(3.2); + * // => 3.2 + * + * _.toFinite(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toFinite(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toFinite('3.2'); + * // => 3.2 + */ + function toFinite(value) { + if (!value) { + return value === 0 ? value : 0; + } + value = toNumber(value); + if (value === INFINITY || value === -INFINITY) { + var sign = (value < 0 ? -1 : 1); + return sign * MAX_INTEGER; + } + return value === value ? value : 0; + } + + /** + * Converts `value` to an integer. + * + * **Note:** This method is loosely based on + * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toInteger(3.2); + * // => 3 + * + * _.toInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toInteger(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toInteger('3.2'); + * // => 3 + */ + function toInteger(value) { + var result = toFinite(value), + remainder = result % 1; + + return result === result ? (remainder ? result - remainder : result) : 0; + } + + /** + * Converts `value` to an integer suitable for use as the length of an + * array-like object. + * + * **Note:** This method is based on + * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toLength(3.2); + * // => 3 + * + * _.toLength(Number.MIN_VALUE); + * // => 0 + * + * _.toLength(Infinity); + * // => 4294967295 + * + * _.toLength('3.2'); + * // => 3 + */ + function toLength(value) { + return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0; + } + + /** + * Converts `value` to a number. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to process. + * @returns {number} Returns the number. + * @example + * + * _.toNumber(3.2); + * // => 3.2 + * + * _.toNumber(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toNumber(Infinity); + * // => Infinity + * + * _.toNumber('3.2'); + * // => 3.2 + */ + function toNumber(value) { + if (typeof value == 'number') { + return value; + } + if (isSymbol(value)) { + return NAN; + } + if (isObject(value)) { + var other = typeof value.valueOf == 'function' ? value.valueOf() : value; + value = isObject(other) ? (other + '') : other; + } + if (typeof value != 'string') { + return value === 0 ? value : +value; + } + value = value.replace(reTrim, ''); + var isBinary = reIsBinary.test(value); + return (isBinary || reIsOctal.test(value)) + ? freeParseInt(value.slice(2), isBinary ? 2 : 8) + : (reIsBadHex.test(value) ? NAN : +value); + } + + /** + * Converts `value` to a plain object flattening inherited enumerable string + * keyed properties of `value` to own properties of the plain object. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {Object} Returns the converted plain object. + * @example + * + * function Foo() { + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.assign({ 'a': 1 }, new Foo); + * // => { 'a': 1, 'b': 2 } + * + * _.assign({ 'a': 1 }, _.toPlainObject(new Foo)); + * // => { 'a': 1, 'b': 2, 'c': 3 } + */ + function toPlainObject(value) { + return copyObject(value, keysIn(value)); + } + + /** + * Converts `value` to a safe integer. A safe integer can be compared and + * represented correctly. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toSafeInteger(3.2); + * // => 3 + * + * _.toSafeInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toSafeInteger(Infinity); + * // => 9007199254740991 + * + * _.toSafeInteger('3.2'); + * // => 3 + */ + function toSafeInteger(value) { + return value + ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) + : (value === 0 ? value : 0); + } + + /** + * Converts `value` to a string. An empty string is returned for `null` + * and `undefined` values. The sign of `-0` is preserved. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.toString(null); + * // => '' + * + * _.toString(-0); + * // => '-0' + * + * _.toString([1, 2, 3]); + * // => '1,2,3' + */ + function toString(value) { + return value == null ? '' : baseToString(value); + } + + /*------------------------------------------------------------------------*/ + + /** + * Assigns own enumerable string keyed properties of source objects to the + * destination object. Source objects are applied from left to right. + * Subsequent sources overwrite property assignments of previous sources. + * + * **Note:** This method mutates `object` and is loosely based on + * [`Object.assign`](https://mdn.io/Object/assign). + * + * @static + * @memberOf _ + * @since 0.10.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assignIn + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assign({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'c': 3 } + */ + var assign = createAssigner(function(object, source) { + if (isPrototype(source) || isArrayLike(source)) { + copyObject(source, keys(source), object); + return; + } + for (var key in source) { + if (hasOwnProperty.call(source, key)) { + assignValue(object, key, source[key]); + } + } + }); + + /** + * This method is like `_.assign` except that it iterates over own and + * inherited source properties. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias extend + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assign + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assignIn({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 } + */ + var assignIn = createAssigner(function(object, source) { + copyObject(source, keysIn(source), object); + }); + + /** + * This method is like `_.assignIn` except that it accepts `customizer` + * which is invoked to produce the assigned values. If `customizer` returns + * `undefined`, assignment is handled by the method instead. The `customizer` + * is invoked with five arguments: (objValue, srcValue, key, object, source). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias extendWith + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @see _.assignWith + * @example + * + * function customizer(objValue, srcValue) { + * return _.isUndefined(objValue) ? srcValue : objValue; + * } + * + * var defaults = _.partialRight(_.assignInWith, customizer); + * + * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ + var assignInWith = createAssigner(function(object, source, srcIndex, customizer) { + copyObject(source, keysIn(source), object, customizer); + }); + + /** + * This method is like `_.assign` except that it accepts `customizer` + * which is invoked to produce the assigned values. If `customizer` returns + * `undefined`, assignment is handled by the method instead. The `customizer` + * is invoked with five arguments: (objValue, srcValue, key, object, source). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @see _.assignInWith + * @example + * + * function customizer(objValue, srcValue) { + * return _.isUndefined(objValue) ? srcValue : objValue; + * } + * + * var defaults = _.partialRight(_.assignWith, customizer); + * + * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ + var assignWith = createAssigner(function(object, source, srcIndex, customizer) { + copyObject(source, keys(source), object, customizer); + }); + + /** + * Creates an array of values corresponding to `paths` of `object`. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Array} Returns the picked values. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; + * + * _.at(object, ['a[0].b.c', 'a[1]']); + * // => [3, 4] + */ + var at = flatRest(baseAt); + + /** + * Creates an object that inherits from the `prototype` object. If a + * `properties` object is given, its own enumerable string keyed properties + * are assigned to the created object. + * + * @static + * @memberOf _ + * @since 2.3.0 + * @category Object + * @param {Object} prototype The object to inherit from. + * @param {Object} [properties] The properties to assign to the object. + * @returns {Object} Returns the new object. + * @example + * + * function Shape() { + * this.x = 0; + * this.y = 0; + * } + * + * function Circle() { + * Shape.call(this); + * } + * + * Circle.prototype = _.create(Shape.prototype, { + * 'constructor': Circle + * }); + * + * var circle = new Circle; + * circle instanceof Circle; + * // => true + * + * circle instanceof Shape; + * // => true + */ + function create(prototype, properties) { + var result = baseCreate(prototype); + return properties == null ? result : baseAssign(result, properties); + } + + /** + * Assigns own and inherited enumerable string keyed properties of source + * objects to the destination object for all destination properties that + * resolve to `undefined`. Source objects are applied from left to right. + * Once a property is set, additional values of the same property are ignored. + * + * **Note:** This method mutates `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaultsDeep + * @example + * + * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ + var defaults = baseRest(function(args) { + args.push(undefined, customDefaultsAssignIn); + return apply(assignInWith, undefined, args); + }); + + /** + * This method is like `_.defaults` except that it recursively assigns + * default properties. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 3.10.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaults + * @example + * + * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } }); + * // => { 'a': { 'b': 2, 'c': 3 } } + */ + var defaultsDeep = baseRest(function(args) { + args.push(undefined, customDefaultsMerge); + return apply(mergeWith, undefined, args); + }); + + /** + * This method is like `_.find` except that it returns the key of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Object + * @param {Object} object The object to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {string|undefined} Returns the key of the matched element, + * else `undefined`. + * @example + * + * var users = { + * 'barney': { 'age': 36, 'active': true }, + * 'fred': { 'age': 40, 'active': false }, + * 'pebbles': { 'age': 1, 'active': true } + * }; + * + * _.findKey(users, function(o) { return o.age < 40; }); + * // => 'barney' (iteration order is not guaranteed) + * + * // The `_.matches` iteratee shorthand. + * _.findKey(users, { 'age': 1, 'active': true }); + * // => 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findKey(users, ['active', false]); + * // => 'fred' + * + * // The `_.property` iteratee shorthand. + * _.findKey(users, 'active'); + * // => 'barney' + */ + function findKey(object, predicate) { + return baseFindKey(object, getIteratee(predicate, 3), baseForOwn); + } + + /** + * This method is like `_.findKey` except that it iterates over elements of + * a collection in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {string|undefined} Returns the key of the matched element, + * else `undefined`. + * @example + * + * var users = { + * 'barney': { 'age': 36, 'active': true }, + * 'fred': { 'age': 40, 'active': false }, + * 'pebbles': { 'age': 1, 'active': true } + * }; + * + * _.findLastKey(users, function(o) { return o.age < 40; }); + * // => returns 'pebbles' assuming `_.findKey` returns 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.findLastKey(users, { 'age': 36, 'active': true }); + * // => 'barney' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findLastKey(users, ['active', false]); + * // => 'fred' + * + * // The `_.property` iteratee shorthand. + * _.findLastKey(users, 'active'); + * // => 'pebbles' + */ + function findLastKey(object, predicate) { + return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight); + } + + /** + * Iterates over own and inherited enumerable string keyed properties of an + * object and invokes `iteratee` for each property. The iteratee is invoked + * with three arguments: (value, key, object). Iteratee functions may exit + * iteration early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forInRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forIn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed). + */ + function forIn(object, iteratee) { + return object == null + ? object + : baseFor(object, getIteratee(iteratee, 3), keysIn); + } + + /** + * This method is like `_.forIn` except that it iterates over properties of + * `object` in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forIn + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forInRight(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'. + */ + function forInRight(object, iteratee) { + return object == null + ? object + : baseForRight(object, getIteratee(iteratee, 3), keysIn); + } + + /** + * Iterates over own enumerable string keyed properties of an object and + * invokes `iteratee` for each property. The iteratee is invoked with three + * arguments: (value, key, object). Iteratee functions may exit iteration + * early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forOwnRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forOwn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ + function forOwn(object, iteratee) { + return object && baseForOwn(object, getIteratee(iteratee, 3)); + } + + /** + * This method is like `_.forOwn` except that it iterates over properties of + * `object` in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forOwn + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forOwnRight(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'. + */ + function forOwnRight(object, iteratee) { + return object && baseForOwnRight(object, getIteratee(iteratee, 3)); + } + + /** + * Creates an array of function property names from own enumerable properties + * of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to inspect. + * @returns {Array} Returns the function names. + * @see _.functionsIn + * @example + * + * function Foo() { + * this.a = _.constant('a'); + * this.b = _.constant('b'); + * } + * + * Foo.prototype.c = _.constant('c'); + * + * _.functions(new Foo); + * // => ['a', 'b'] + */ + function functions(object) { + return object == null ? [] : baseFunctions(object, keys(object)); + } + + /** + * Creates an array of function property names from own and inherited + * enumerable properties of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to inspect. + * @returns {Array} Returns the function names. + * @see _.functions + * @example + * + * function Foo() { + * this.a = _.constant('a'); + * this.b = _.constant('b'); + * } + * + * Foo.prototype.c = _.constant('c'); + * + * _.functionsIn(new Foo); + * // => ['a', 'b', 'c'] + */ + function functionsIn(object) { + return object == null ? [] : baseFunctions(object, keysIn(object)); + } + + /** + * Gets the value at `path` of `object`. If the resolved value is + * `undefined`, the `defaultValue` is returned in its place. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.get(object, 'a[0].b.c'); + * // => 3 + * + * _.get(object, ['a', '0', 'b', 'c']); + * // => 3 + * + * _.get(object, 'a.b.c', 'default'); + * // => 'default' + */ + function get(object, path, defaultValue) { + var result = object == null ? undefined : baseGet(object, path); + return result === undefined ? defaultValue : result; + } + + /** + * Checks if `path` is a direct property of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = { 'a': { 'b': 2 } }; + * var other = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.has(object, 'a'); + * // => true + * + * _.has(object, 'a.b'); + * // => true + * + * _.has(object, ['a', 'b']); + * // => true + * + * _.has(other, 'a'); + * // => false + */ + function has(object, path) { + return object != null && hasPath(object, path, baseHas); + } + + /** + * Checks if `path` is a direct or inherited property of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.hasIn(object, 'a'); + * // => true + * + * _.hasIn(object, 'a.b'); + * // => true + * + * _.hasIn(object, ['a', 'b']); + * // => true + * + * _.hasIn(object, 'b'); + * // => false + */ + function hasIn(object, path) { + return object != null && hasPath(object, path, baseHasIn); + } + + /** + * Creates an object composed of the inverted keys and values of `object`. + * If `object` contains duplicate values, subsequent values overwrite + * property assignments of previous values. + * + * @static + * @memberOf _ + * @since 0.7.0 + * @category Object + * @param {Object} object The object to invert. + * @returns {Object} Returns the new inverted object. + * @example + * + * var object = { 'a': 1, 'b': 2, 'c': 1 }; + * + * _.invert(object); + * // => { '1': 'c', '2': 'b' } + */ + var invert = createInverter(function(result, value, key) { + result[value] = key; + }, constant(identity)); + + /** + * This method is like `_.invert` except that the inverted object is generated + * from the results of running each element of `object` thru `iteratee`. The + * corresponding inverted value of each inverted key is an array of keys + * responsible for generating the inverted value. The iteratee is invoked + * with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.1.0 + * @category Object + * @param {Object} object The object to invert. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Object} Returns the new inverted object. + * @example + * + * var object = { 'a': 1, 'b': 2, 'c': 1 }; + * + * _.invertBy(object); + * // => { '1': ['a', 'c'], '2': ['b'] } + * + * _.invertBy(object, function(value) { + * return 'group' + value; + * }); + * // => { 'group1': ['a', 'c'], 'group2': ['b'] } + */ + var invertBy = createInverter(function(result, value, key) { + if (hasOwnProperty.call(result, value)) { + result[value].push(key); + } else { + result[value] = [key]; + } + }, getIteratee); + + /** + * Invokes the method at `path` of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the method to invoke. + * @param {...*} [args] The arguments to invoke the method with. + * @returns {*} Returns the result of the invoked method. + * @example + * + * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] }; + * + * _.invoke(object, 'a[0].b.c.slice', 1, 3); + * // => [2, 3] + */ + var invoke = baseRest(baseInvoke); + + /** + * Creates an array of the own enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. See the + * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * for more details. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keys(new Foo); + * // => ['a', 'b'] (iteration order is not guaranteed) + * + * _.keys('hi'); + * // => ['0', '1'] + */ + function keys(object) { + return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); + } + + /** + * Creates an array of the own and inherited enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keysIn(new Foo); + * // => ['a', 'b', 'c'] (iteration order is not guaranteed) + */ + function keysIn(object) { + return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); + } + + /** + * The opposite of `_.mapValues`; this method creates an object with the + * same values as `object` and keys generated by running each own enumerable + * string keyed property of `object` thru `iteratee`. The iteratee is invoked + * with three arguments: (value, key, object). + * + * @static + * @memberOf _ + * @since 3.8.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns the new mapped object. + * @see _.mapValues + * @example + * + * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) { + * return key + value; + * }); + * // => { 'a1': 1, 'b2': 2 } + */ + function mapKeys(object, iteratee) { + var result = {}; + iteratee = getIteratee(iteratee, 3); + + baseForOwn(object, function(value, key, object) { + baseAssignValue(result, iteratee(value, key, object), value); + }); + return result; + } + + /** + * Creates an object with the same keys as `object` and values generated + * by running each own enumerable string keyed property of `object` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, key, object). + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns the new mapped object. + * @see _.mapKeys + * @example + * + * var users = { + * 'fred': { 'user': 'fred', 'age': 40 }, + * 'pebbles': { 'user': 'pebbles', 'age': 1 } + * }; + * + * _.mapValues(users, function(o) { return o.age; }); + * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) + * + * // The `_.property` iteratee shorthand. + * _.mapValues(users, 'age'); + * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) + */ + function mapValues(object, iteratee) { + var result = {}; + iteratee = getIteratee(iteratee, 3); + + baseForOwn(object, function(value, key, object) { + baseAssignValue(result, key, iteratee(value, key, object)); + }); + return result; + } + + /** + * This method is like `_.assign` except that it recursively merges own and + * inherited enumerable string keyed properties of source objects into the + * destination object. Source properties that resolve to `undefined` are + * skipped if a destination value exists. Array and plain object properties + * are merged recursively. Other objects and value types are overridden by + * assignment. Source objects are applied from left to right. Subsequent + * sources overwrite property assignments of previous sources. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @example + * + * var object = { + * 'a': [{ 'b': 2 }, { 'd': 4 }] + * }; + * + * var other = { + * 'a': [{ 'c': 3 }, { 'e': 5 }] + * }; + * + * _.merge(object, other); + * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] } + */ + var merge = createAssigner(function(object, source, srcIndex) { + baseMerge(object, source, srcIndex); + }); + + /** + * This method is like `_.merge` except that it accepts `customizer` which + * is invoked to produce the merged values of the destination and source + * properties. If `customizer` returns `undefined`, merging is handled by the + * method instead. The `customizer` is invoked with six arguments: + * (objValue, srcValue, key, object, source, stack). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} customizer The function to customize assigned values. + * @returns {Object} Returns `object`. + * @example + * + * function customizer(objValue, srcValue) { + * if (_.isArray(objValue)) { + * return objValue.concat(srcValue); + * } + * } + * + * var object = { 'a': [1], 'b': [2] }; + * var other = { 'a': [3], 'b': [4] }; + * + * _.mergeWith(object, other, customizer); + * // => { 'a': [1, 3], 'b': [2, 4] } + */ + var mergeWith = createAssigner(function(object, source, srcIndex, customizer) { + baseMerge(object, source, srcIndex, customizer); + }); + + /** + * The opposite of `_.pick`; this method creates an object composed of the + * own and inherited enumerable property paths of `object` that are not omitted. + * + * **Note:** This method is considerably slower than `_.pick`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The source object. + * @param {...(string|string[])} [paths] The property paths to omit. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.omit(object, ['a', 'c']); + * // => { 'b': '2' } + */ + var omit = flatRest(function(object, paths) { + var result = {}; + if (object == null) { + return result; + } + var isDeep = false; + paths = arrayMap(paths, function(path) { + path = castPath(path, object); + isDeep || (isDeep = path.length > 1); + return path; + }); + copyObject(object, getAllKeysIn(object), result); + if (isDeep) { + result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone); + } + var length = paths.length; + while (length--) { + baseUnset(result, paths[length]); + } + return result; + }); + + /** + * The opposite of `_.pickBy`; this method creates an object composed of + * the own and inherited enumerable string keyed properties of `object` that + * `predicate` doesn't return truthy for. The predicate is invoked with two + * arguments: (value, key). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The source object. + * @param {Function} [predicate=_.identity] The function invoked per property. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.omitBy(object, _.isNumber); + * // => { 'b': '2' } + */ + function omitBy(object, predicate) { + return pickBy(object, negate(getIteratee(predicate))); + } + + /** + * Creates an object composed of the picked `object` properties. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The source object. + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.pick(object, ['a', 'c']); + * // => { 'a': 1, 'c': 3 } + */ + var pick = flatRest(function(object, paths) { + return object == null ? {} : basePick(object, paths); + }); + + /** + * Creates an object composed of the `object` properties `predicate` returns + * truthy for. The predicate is invoked with two arguments: (value, key). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The source object. + * @param {Function} [predicate=_.identity] The function invoked per property. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.pickBy(object, _.isNumber); + * // => { 'a': 1, 'c': 3 } + */ + function pickBy(object, predicate) { + if (object == null) { + return {}; + } + var props = arrayMap(getAllKeysIn(object), function(prop) { + return [prop]; + }); + predicate = getIteratee(predicate); + return basePickBy(object, props, function(value, path) { + return predicate(value, path[0]); + }); + } + + /** + * This method is like `_.get` except that if the resolved value is a + * function it's invoked with the `this` binding of its parent object and + * its result is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to resolve. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] }; + * + * _.result(object, 'a[0].b.c1'); + * // => 3 + * + * _.result(object, 'a[0].b.c2'); + * // => 4 + * + * _.result(object, 'a[0].b.c3', 'default'); + * // => 'default' + * + * _.result(object, 'a[0].b.c3', _.constant('default')); + * // => 'default' + */ + function result(object, path, defaultValue) { + path = castPath(path, object); + + var index = -1, + length = path.length; + + // Ensure the loop is entered when path is empty. + if (!length) { + length = 1; + object = undefined; + } + while (++index < length) { + var value = object == null ? undefined : object[toKey(path[index])]; + if (value === undefined) { + index = length; + value = defaultValue; + } + object = isFunction(value) ? value.call(object) : value; + } + return object; + } + + /** + * Sets the value at `path` of `object`. If a portion of `path` doesn't exist, + * it's created. Arrays are created for missing index properties while objects + * are created for all other missing properties. Use `_.setWith` to customize + * `path` creation. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @returns {Object} Returns `object`. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.set(object, 'a[0].b.c', 4); + * console.log(object.a[0].b.c); + * // => 4 + * + * _.set(object, ['x', '0', 'y', 'z'], 5); + * console.log(object.x[0].y.z); + * // => 5 + */ + function set(object, path, value) { + return object == null ? object : baseSet(object, path, value); + } + + /** + * This method is like `_.set` except that it accepts `customizer` which is + * invoked to produce the objects of `path`. If `customizer` returns `undefined` + * path creation is handled by the method instead. The `customizer` is invoked + * with three arguments: (nsValue, key, nsObject). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @example + * + * var object = {}; + * + * _.setWith(object, '[0][1]', 'a', Object); + * // => { '0': { '1': 'a' } } + */ + function setWith(object, path, value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return object == null ? object : baseSet(object, path, value, customizer); + } + + /** + * Creates an array of own enumerable string keyed-value pairs for `object` + * which can be consumed by `_.fromPairs`. If `object` is a map or set, its + * entries are returned. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias entries + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the key-value pairs. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.toPairs(new Foo); + * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed) + */ + var toPairs = createToPairs(keys); + + /** + * Creates an array of own and inherited enumerable string keyed-value pairs + * for `object` which can be consumed by `_.fromPairs`. If `object` is a map + * or set, its entries are returned. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias entriesIn + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the key-value pairs. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.toPairsIn(new Foo); + * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed) + */ + var toPairsIn = createToPairs(keysIn); + + /** + * An alternative to `_.reduce`; this method transforms `object` to a new + * `accumulator` object which is the result of running each of its own + * enumerable string keyed properties thru `iteratee`, with each invocation + * potentially mutating the `accumulator` object. If `accumulator` is not + * provided, a new object with the same `[[Prototype]]` will be used. The + * iteratee is invoked with four arguments: (accumulator, value, key, object). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 1.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The custom accumulator value. + * @returns {*} Returns the accumulated value. + * @example + * + * _.transform([2, 3, 4], function(result, n) { + * result.push(n *= n); + * return n % 2 == 0; + * }, []); + * // => [4, 9] + * + * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } + */ + function transform(object, iteratee, accumulator) { + var isArr = isArray(object), + isArrLike = isArr || isBuffer(object) || isTypedArray(object); + + iteratee = getIteratee(iteratee, 4); + if (accumulator == null) { + var Ctor = object && object.constructor; + if (isArrLike) { + accumulator = isArr ? new Ctor : []; + } + else if (isObject(object)) { + accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {}; + } + else { + accumulator = {}; + } + } + (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) { + return iteratee(accumulator, value, index, object); + }); + return accumulator; + } + + /** + * Removes the property at `path` of `object`. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to unset. + * @returns {boolean} Returns `true` if the property is deleted, else `false`. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 7 } }] }; + * _.unset(object, 'a[0].b.c'); + * // => true + * + * console.log(object); + * // => { 'a': [{ 'b': {} }] }; + * + * _.unset(object, ['a', '0', 'b', 'c']); + * // => true + * + * console.log(object); + * // => { 'a': [{ 'b': {} }] }; + */ + function unset(object, path) { + return object == null ? true : baseUnset(object, path); + } + + /** + * This method is like `_.set` except that accepts `updater` to produce the + * value to set. Use `_.updateWith` to customize `path` creation. The `updater` + * is invoked with one argument: (value). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.6.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {Function} updater The function to produce the updated value. + * @returns {Object} Returns `object`. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.update(object, 'a[0].b.c', function(n) { return n * n; }); + * console.log(object.a[0].b.c); + * // => 9 + * + * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; }); + * console.log(object.x[0].y.z); + * // => 0 + */ + function update(object, path, updater) { + return object == null ? object : baseUpdate(object, path, castFunction(updater)); + } + + /** + * This method is like `_.update` except that it accepts `customizer` which is + * invoked to produce the objects of `path`. If `customizer` returns `undefined` + * path creation is handled by the method instead. The `customizer` is invoked + * with three arguments: (nsValue, key, nsObject). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.6.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {Function} updater The function to produce the updated value. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @example + * + * var object = {}; + * + * _.updateWith(object, '[0][1]', _.constant('a'), Object); + * // => { '0': { '1': 'a' } } + */ + function updateWith(object, path, updater, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer); + } + + /** + * Creates an array of the own enumerable string keyed property values of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property values. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.values(new Foo); + * // => [1, 2] (iteration order is not guaranteed) + * + * _.values('hi'); + * // => ['h', 'i'] + */ + function values(object) { + return object == null ? [] : baseValues(object, keys(object)); + } + + /** + * Creates an array of the own and inherited enumerable string keyed property + * values of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property values. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.valuesIn(new Foo); + * // => [1, 2, 3] (iteration order is not guaranteed) + */ + function valuesIn(object) { + return object == null ? [] : baseValues(object, keysIn(object)); + } + + /*------------------------------------------------------------------------*/ + + /** + * Clamps `number` within the inclusive `lower` and `upper` bounds. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Number + * @param {number} number The number to clamp. + * @param {number} [lower] The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the clamped number. + * @example + * + * _.clamp(-10, -5, 5); + * // => -5 + * + * _.clamp(10, -5, 5); + * // => 5 + */ + function clamp(number, lower, upper) { + if (upper === undefined) { + upper = lower; + lower = undefined; + } + if (upper !== undefined) { + upper = toNumber(upper); + upper = upper === upper ? upper : 0; + } + if (lower !== undefined) { + lower = toNumber(lower); + lower = lower === lower ? lower : 0; + } + return baseClamp(toNumber(number), lower, upper); + } + + /** + * Checks if `n` is between `start` and up to, but not including, `end`. If + * `end` is not specified, it's set to `start` with `start` then set to `0`. + * If `start` is greater than `end` the params are swapped to support + * negative ranges. + * + * @static + * @memberOf _ + * @since 3.3.0 + * @category Number + * @param {number} number The number to check. + * @param {number} [start=0] The start of the range. + * @param {number} end The end of the range. + * @returns {boolean} Returns `true` if `number` is in the range, else `false`. + * @see _.range, _.rangeRight + * @example + * + * _.inRange(3, 2, 4); + * // => true + * + * _.inRange(4, 8); + * // => true + * + * _.inRange(4, 2); + * // => false + * + * _.inRange(2, 2); + * // => false + * + * _.inRange(1.2, 2); + * // => true + * + * _.inRange(5.2, 4); + * // => false + * + * _.inRange(-3, -2, -6); + * // => true + */ + function inRange(number, start, end) { + start = toFinite(start); + if (end === undefined) { + end = start; + start = 0; + } else { + end = toFinite(end); + } + number = toNumber(number); + return baseInRange(number, start, end); + } + + /** + * Produces a random number between the inclusive `lower` and `upper` bounds. + * If only one argument is provided a number between `0` and the given number + * is returned. If `floating` is `true`, or either `lower` or `upper` are + * floats, a floating-point number is returned instead of an integer. + * + * **Note:** JavaScript follows the IEEE-754 standard for resolving + * floating-point values which can produce unexpected results. + * + * @static + * @memberOf _ + * @since 0.7.0 + * @category Number + * @param {number} [lower=0] The lower bound. + * @param {number} [upper=1] The upper bound. + * @param {boolean} [floating] Specify returning a floating-point number. + * @returns {number} Returns the random number. + * @example + * + * _.random(0, 5); + * // => an integer between 0 and 5 + * + * _.random(5); + * // => also an integer between 0 and 5 + * + * _.random(5, true); + * // => a floating-point number between 0 and 5 + * + * _.random(1.2, 5.2); + * // => a floating-point number between 1.2 and 5.2 + */ + function random(lower, upper, floating) { + if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) { + upper = floating = undefined; + } + if (floating === undefined) { + if (typeof upper == 'boolean') { + floating = upper; + upper = undefined; + } + else if (typeof lower == 'boolean') { + floating = lower; + lower = undefined; + } + } + if (lower === undefined && upper === undefined) { + lower = 0; + upper = 1; + } + else { + lower = toFinite(lower); + if (upper === undefined) { + upper = lower; + lower = 0; + } else { + upper = toFinite(upper); + } + } + if (lower > upper) { + var temp = lower; + lower = upper; + upper = temp; + } + if (floating || lower % 1 || upper % 1) { + var rand = nativeRandom(); + return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper); + } + return baseRandom(lower, upper); + } + + /*------------------------------------------------------------------------*/ + + /** + * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the camel cased string. + * @example + * + * _.camelCase('Foo Bar'); + * // => 'fooBar' + * + * _.camelCase('--foo-bar--'); + * // => 'fooBar' + * + * _.camelCase('__FOO_BAR__'); + * // => 'fooBar' + */ + var camelCase = createCompounder(function(result, word, index) { + word = word.toLowerCase(); + return result + (index ? capitalize(word) : word); + }); + + /** + * Converts the first character of `string` to upper case and the remaining + * to lower case. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to capitalize. + * @returns {string} Returns the capitalized string. + * @example + * + * _.capitalize('FRED'); + * // => 'Fred' + */ + function capitalize(string) { + return upperFirst(toString(string).toLowerCase()); + } + + /** + * Deburrs `string` by converting + * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table) + * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A) + * letters to basic Latin letters and removing + * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to deburr. + * @returns {string} Returns the deburred string. + * @example + * + * _.deburr('déjà vu'); + * // => 'deja vu' + */ + function deburr(string) { + string = toString(string); + return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ''); + } + + /** + * Checks if `string` ends with the given target string. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to inspect. + * @param {string} [target] The string to search for. + * @param {number} [position=string.length] The position to search up to. + * @returns {boolean} Returns `true` if `string` ends with `target`, + * else `false`. + * @example + * + * _.endsWith('abc', 'c'); + * // => true + * + * _.endsWith('abc', 'b'); + * // => false + * + * _.endsWith('abc', 'b', 2); + * // => true + */ + function endsWith(string, target, position) { + string = toString(string); + target = baseToString(target); + + var length = string.length; + position = position === undefined + ? length + : baseClamp(toInteger(position), 0, length); + + var end = position; + position -= target.length; + return position >= 0 && string.slice(position, end) == target; + } + + /** + * Converts the characters "&", "<", ">", '"', and "'" in `string` to their + * corresponding HTML entities. + * + * **Note:** No other characters are escaped. To escape additional + * characters use a third-party library like [_he_](https://mths.be/he). + * + * Though the ">" character is escaped for symmetry, characters like + * ">" and "/" don't need escaping in HTML and have no special meaning + * unless they're part of a tag or unquoted attribute value. See + * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands) + * (under "semi-related fun fact") for more details. + * + * When working with HTML you should always + * [quote attribute values](http://wonko.com/post/html-escaping) to reduce + * XSS vectors. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category String + * @param {string} [string=''] The string to escape. + * @returns {string} Returns the escaped string. + * @example + * + * _.escape('fred, barney, & pebbles'); + * // => 'fred, barney, & pebbles' + */ + function escape(string) { + string = toString(string); + return (string && reHasUnescapedHtml.test(string)) + ? string.replace(reUnescapedHtml, escapeHtmlChar) + : string; + } + + /** + * Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+", + * "?", "(", ")", "[", "]", "{", "}", and "|" in `string`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to escape. + * @returns {string} Returns the escaped string. + * @example + * + * _.escapeRegExp('[lodash](https://lodash.com/)'); + * // => '\[lodash\]\(https://lodash\.com/\)' + */ + function escapeRegExp(string) { + string = toString(string); + return (string && reHasRegExpChar.test(string)) + ? string.replace(reRegExpChar, '\\$&') + : string; + } + + /** + * Converts `string` to + * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the kebab cased string. + * @example + * + * _.kebabCase('Foo Bar'); + * // => 'foo-bar' + * + * _.kebabCase('fooBar'); + * // => 'foo-bar' + * + * _.kebabCase('__FOO_BAR__'); + * // => 'foo-bar' + */ + var kebabCase = createCompounder(function(result, word, index) { + return result + (index ? '-' : '') + word.toLowerCase(); + }); + + /** + * Converts `string`, as space separated words, to lower case. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the lower cased string. + * @example + * + * _.lowerCase('--Foo-Bar--'); + * // => 'foo bar' + * + * _.lowerCase('fooBar'); + * // => 'foo bar' + * + * _.lowerCase('__FOO_BAR__'); + * // => 'foo bar' + */ + var lowerCase = createCompounder(function(result, word, index) { + return result + (index ? ' ' : '') + word.toLowerCase(); + }); + + /** + * Converts the first character of `string` to lower case. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.lowerFirst('Fred'); + * // => 'fred' + * + * _.lowerFirst('FRED'); + * // => 'fRED' + */ + var lowerFirst = createCaseFirst('toLowerCase'); + + /** + * Pads `string` on the left and right sides if it's shorter than `length`. + * Padding characters are truncated if they can't be evenly divided by `length`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to pad. + * @param {number} [length=0] The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padded string. + * @example + * + * _.pad('abc', 8); + * // => ' abc ' + * + * _.pad('abc', 8, '_-'); + * // => '_-abc_-_' + * + * _.pad('abc', 3); + * // => 'abc' + */ + function pad(string, length, chars) { + string = toString(string); + length = toInteger(length); + + var strLength = length ? stringSize(string) : 0; + if (!length || strLength >= length) { + return string; + } + var mid = (length - strLength) / 2; + return ( + createPadding(nativeFloor(mid), chars) + + string + + createPadding(nativeCeil(mid), chars) + ); + } + + /** + * Pads `string` on the right side if it's shorter than `length`. Padding + * characters are truncated if they exceed `length`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to pad. + * @param {number} [length=0] The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padded string. + * @example + * + * _.padEnd('abc', 6); + * // => 'abc ' + * + * _.padEnd('abc', 6, '_-'); + * // => 'abc_-_' + * + * _.padEnd('abc', 3); + * // => 'abc' + */ + function padEnd(string, length, chars) { + string = toString(string); + length = toInteger(length); + + var strLength = length ? stringSize(string) : 0; + return (length && strLength < length) + ? (string + createPadding(length - strLength, chars)) + : string; + } + + /** + * Pads `string` on the left side if it's shorter than `length`. Padding + * characters are truncated if they exceed `length`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to pad. + * @param {number} [length=0] The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padded string. + * @example + * + * _.padStart('abc', 6); + * // => ' abc' + * + * _.padStart('abc', 6, '_-'); + * // => '_-_abc' + * + * _.padStart('abc', 3); + * // => 'abc' + */ + function padStart(string, length, chars) { + string = toString(string); + length = toInteger(length); + + var strLength = length ? stringSize(string) : 0; + return (length && strLength < length) + ? (createPadding(length - strLength, chars) + string) + : string; + } + + /** + * Converts `string` to an integer of the specified radix. If `radix` is + * `undefined` or `0`, a `radix` of `10` is used unless `value` is a + * hexadecimal, in which case a `radix` of `16` is used. + * + * **Note:** This method aligns with the + * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category String + * @param {string} string The string to convert. + * @param {number} [radix=10] The radix to interpret `value` by. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {number} Returns the converted integer. + * @example + * + * _.parseInt('08'); + * // => 8 + * + * _.map(['6', '08', '10'], _.parseInt); + * // => [6, 8, 10] + */ + function parseInt(string, radix, guard) { + if (guard || radix == null) { + radix = 0; + } else if (radix) { + radix = +radix; + } + return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0); + } + + /** + * Repeats the given string `n` times. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to repeat. + * @param {number} [n=1] The number of times to repeat the string. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {string} Returns the repeated string. + * @example + * + * _.repeat('*', 3); + * // => '***' + * + * _.repeat('abc', 2); + * // => 'abcabc' + * + * _.repeat('abc', 0); + * // => '' + */ + function repeat(string, n, guard) { + if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) { + n = 1; + } else { + n = toInteger(n); + } + return baseRepeat(toString(string), n); + } + + /** + * Replaces matches for `pattern` in `string` with `replacement`. + * + * **Note:** This method is based on + * [`String#replace`](https://mdn.io/String/replace). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to modify. + * @param {RegExp|string} pattern The pattern to replace. + * @param {Function|string} replacement The match replacement. + * @returns {string} Returns the modified string. + * @example + * + * _.replace('Hi Fred', 'Fred', 'Barney'); + * // => 'Hi Barney' + */ + function replace() { + var args = arguments, + string = toString(args[0]); + + return args.length < 3 ? string : string.replace(args[1], args[2]); + } + + /** + * Converts `string` to + * [snake case](https://en.wikipedia.org/wiki/Snake_case). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the snake cased string. + * @example + * + * _.snakeCase('Foo Bar'); + * // => 'foo_bar' + * + * _.snakeCase('fooBar'); + * // => 'foo_bar' + * + * _.snakeCase('--FOO-BAR--'); + * // => 'foo_bar' + */ + var snakeCase = createCompounder(function(result, word, index) { + return result + (index ? '_' : '') + word.toLowerCase(); + }); + + /** + * Splits `string` by `separator`. + * + * **Note:** This method is based on + * [`String#split`](https://mdn.io/String/split). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to split. + * @param {RegExp|string} separator The separator pattern to split by. + * @param {number} [limit] The length to truncate results to. + * @returns {Array} Returns the string segments. + * @example + * + * _.split('a-b-c', '-', 2); + * // => ['a', 'b'] + */ + function split(string, separator, limit) { + if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) { + separator = limit = undefined; + } + limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0; + if (!limit) { + return []; + } + string = toString(string); + if (string && ( + typeof separator == 'string' || + (separator != null && !isRegExp(separator)) + )) { + separator = baseToString(separator); + if (!separator && hasUnicode(string)) { + return castSlice(stringToArray(string), 0, limit); + } + } + return string.split(separator, limit); + } + + /** + * Converts `string` to + * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage). + * + * @static + * @memberOf _ + * @since 3.1.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the start cased string. + * @example + * + * _.startCase('--foo-bar--'); + * // => 'Foo Bar' + * + * _.startCase('fooBar'); + * // => 'Foo Bar' + * + * _.startCase('__FOO_BAR__'); + * // => 'FOO BAR' + */ + var startCase = createCompounder(function(result, word, index) { + return result + (index ? ' ' : '') + upperFirst(word); + }); + + /** + * Checks if `string` starts with the given target string. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to inspect. + * @param {string} [target] The string to search for. + * @param {number} [position=0] The position to search from. + * @returns {boolean} Returns `true` if `string` starts with `target`, + * else `false`. + * @example + * + * _.startsWith('abc', 'a'); + * // => true + * + * _.startsWith('abc', 'b'); + * // => false + * + * _.startsWith('abc', 'b', 1); + * // => true + */ + function startsWith(string, target, position) { + string = toString(string); + position = position == null + ? 0 + : baseClamp(toInteger(position), 0, string.length); + + target = baseToString(target); + return string.slice(position, position + target.length) == target; + } + + /** + * Creates a compiled template function that can interpolate data properties + * in "interpolate" delimiters, HTML-escape interpolated data properties in + * "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data + * properties may be accessed as free variables in the template. If a setting + * object is given, it takes precedence over `_.templateSettings` values. + * + * **Note:** In the development build `_.template` utilizes + * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl) + * for easier debugging. + * + * For more information on precompiling templates see + * [lodash's custom builds documentation](https://lodash.com/custom-builds). + * + * For more information on Chrome extension sandboxes see + * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval). + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category String + * @param {string} [string=''] The template string. + * @param {Object} [options={}] The options object. + * @param {RegExp} [options.escape=_.templateSettings.escape] + * The HTML "escape" delimiter. + * @param {RegExp} [options.evaluate=_.templateSettings.evaluate] + * The "evaluate" delimiter. + * @param {Object} [options.imports=_.templateSettings.imports] + * An object to import into the template as free variables. + * @param {RegExp} [options.interpolate=_.templateSettings.interpolate] + * The "interpolate" delimiter. + * @param {string} [options.sourceURL='lodash.templateSources[n]'] + * The sourceURL of the compiled template. + * @param {string} [options.variable='obj'] + * The data object variable name. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the compiled template function. + * @example + * + * // Use the "interpolate" delimiter to create a compiled template. + * var compiled = _.template('hello <%= user %>!'); + * compiled({ 'user': 'fred' }); + * // => 'hello fred!' + * + * // Use the HTML "escape" delimiter to escape data property values. + * var compiled = _.template('<%- value %>'); + * compiled({ 'value': ' + if (val === '') return true; + if (val === 'false') return false; + if (val === 'true') return true; + return val; + } + + if (DOCUMENT && typeof DOCUMENT.querySelector === 'function') { + var attrs = [['data-family-prefix', 'familyPrefix'], ['data-replacement-class', 'replacementClass'], ['data-auto-replace-svg', 'autoReplaceSvg'], ['data-auto-add-css', 'autoAddCss'], ['data-auto-a11y', 'autoA11y'], ['data-search-pseudo-elements', 'searchPseudoElements'], ['data-observe-mutations', 'observeMutations'], ['data-mutate-approach', 'mutateApproach'], ['data-keep-original-source', 'keepOriginalSource'], ['data-measure-performance', 'measurePerformance'], ['data-show-missing-icons', 'showMissingIcons']]; + attrs.forEach(function (_ref) { + var _ref2 = _slicedToArray(_ref, 2), + attr = _ref2[0], + key = _ref2[1]; + + var val = coerce(getAttrConfig(attr)); + + if (val !== undefined && val !== null) { + initial[key] = val; + } + }); + } + + var _default = { + familyPrefix: DEFAULT_FAMILY_PREFIX, + replacementClass: DEFAULT_REPLACEMENT_CLASS, + autoReplaceSvg: true, + autoAddCss: true, + autoA11y: true, + searchPseudoElements: false, + observeMutations: true, + mutateApproach: 'async', + keepOriginalSource: true, + measurePerformance: false, + showMissingIcons: true + }; + + var _config = _objectSpread({}, _default, initial); + + if (!_config.autoReplaceSvg) _config.observeMutations = false; + + var config = _objectSpread({}, _config); + + WINDOW.FontAwesomeConfig = config; + + var w = WINDOW || {}; + if (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {}; + if (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {}; + if (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {}; + if (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = []; + var namespace = w[NAMESPACE_IDENTIFIER]; + + var functions = []; + + var listener = function listener() { + DOCUMENT.removeEventListener('DOMContentLoaded', listener); + loaded = 1; + functions.map(function (fn) { + return fn(); + }); + }; + + var loaded = false; + + if (IS_DOM) { + loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState); + if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', listener); + } + + function domready (fn) { + if (!IS_DOM) return; + loaded ? setTimeout(fn, 0) : functions.push(fn); + } + + var PENDING = 'pending'; + var SETTLED = 'settled'; + var FULFILLED = 'fulfilled'; + var REJECTED = 'rejected'; + + var NOOP = function NOOP() {}; + + var isNode = typeof global !== 'undefined' && typeof global.process !== 'undefined' && typeof global.process.emit === 'function'; + var asyncSetTimer = typeof setImmediate === 'undefined' ? setTimeout : setImmediate; + var asyncQueue = []; + var asyncTimer; + + function asyncFlush() { + // run promise callbacks + for (var i = 0; i < asyncQueue.length; i++) { + asyncQueue[i][0](asyncQueue[i][1]); + } // reset async asyncQueue + + + asyncQueue = []; + asyncTimer = false; + } + + function asyncCall(callback, arg) { + asyncQueue.push([callback, arg]); + + if (!asyncTimer) { + asyncTimer = true; + asyncSetTimer(asyncFlush, 0); + } + } + + function invokeResolver(resolver, promise) { + function resolvePromise(value) { + resolve(promise, value); + } + + function rejectPromise(reason) { + reject(promise, reason); + } + + try { + resolver(resolvePromise, rejectPromise); + } catch (e) { + rejectPromise(e); + } + } + + function invokeCallback(subscriber) { + var owner = subscriber.owner; + var settled = owner._state; + var value = owner._data; + var callback = subscriber[settled]; + var promise = subscriber.then; + + if (typeof callback === 'function') { + settled = FULFILLED; + + try { + value = callback(value); + } catch (e) { + reject(promise, e); + } + } + + if (!handleThenable(promise, value)) { + if (settled === FULFILLED) { + resolve(promise, value); + } + + if (settled === REJECTED) { + reject(promise, value); + } + } + } + + function handleThenable(promise, value) { + var resolved; + + try { + if (promise === value) { + throw new TypeError('A promises callback cannot return that same promise.'); + } + + if (value && (typeof value === 'function' || _typeof(value) === 'object')) { + // then should be retrieved only once + var then = value.then; + + if (typeof then === 'function') { + then.call(value, function (val) { + if (!resolved) { + resolved = true; + + if (value === val) { + fulfill(promise, val); + } else { + resolve(promise, val); + } + } + }, function (reason) { + if (!resolved) { + resolved = true; + reject(promise, reason); + } + }); + return true; + } + } + } catch (e) { + if (!resolved) { + reject(promise, e); + } + + return true; + } + + return false; + } + + function resolve(promise, value) { + if (promise === value || !handleThenable(promise, value)) { + fulfill(promise, value); + } + } + + function fulfill(promise, value) { + if (promise._state === PENDING) { + promise._state = SETTLED; + promise._data = value; + asyncCall(publishFulfillment, promise); + } + } + + function reject(promise, reason) { + if (promise._state === PENDING) { + promise._state = SETTLED; + promise._data = reason; + asyncCall(publishRejection, promise); + } + } + + function publish(promise) { + promise._then = promise._then.forEach(invokeCallback); + } + + function publishFulfillment(promise) { + promise._state = FULFILLED; + publish(promise); + } + + function publishRejection(promise) { + promise._state = REJECTED; + publish(promise); + + if (!promise._handled && isNode) { + global.process.emit('unhandledRejection', promise._data, promise); + } + } + + function notifyRejectionHandled(promise) { + global.process.emit('rejectionHandled', promise); + } + /** + * @class + */ + + + function P(resolver) { + if (typeof resolver !== 'function') { + throw new TypeError('Promise resolver ' + resolver + ' is not a function'); + } + + if (this instanceof P === false) { + throw new TypeError('Failed to construct \'Promise\': Please use the \'new\' operator, this object constructor cannot be called as a function.'); + } + + this._then = []; + invokeResolver(resolver, this); + } + + P.prototype = { + constructor: P, + _state: PENDING, + _then: null, + _data: undefined, + _handled: false, + then: function then(onFulfillment, onRejection) { + var subscriber = { + owner: this, + then: new this.constructor(NOOP), + fulfilled: onFulfillment, + rejected: onRejection + }; + + if ((onRejection || onFulfillment) && !this._handled) { + this._handled = true; + + if (this._state === REJECTED && isNode) { + asyncCall(notifyRejectionHandled, this); + } + } + + if (this._state === FULFILLED || this._state === REJECTED) { + // already resolved, call callback async + asyncCall(invokeCallback, subscriber); + } else { + // subscribe + this._then.push(subscriber); + } + + return subscriber.then; + }, + catch: function _catch(onRejection) { + return this.then(null, onRejection); + } + }; + + P.all = function (promises) { + if (!Array.isArray(promises)) { + throw new TypeError('You must pass an array to Promise.all().'); + } + + return new P(function (resolve, reject) { + var results = []; + var remaining = 0; + + function resolver(index) { + remaining++; + return function (value) { + results[index] = value; + + if (! --remaining) { + resolve(results); + } + }; + } + + for (var i = 0, promise; i < promises.length; i++) { + promise = promises[i]; + + if (promise && typeof promise.then === 'function') { + promise.then(resolver(i), reject); + } else { + results[i] = promise; + } + } + + if (!remaining) { + resolve(results); + } + }); + }; + + P.race = function (promises) { + if (!Array.isArray(promises)) { + throw new TypeError('You must pass an array to Promise.race().'); + } + + return new P(function (resolve, reject) { + for (var i = 0, promise; i < promises.length; i++) { + promise = promises[i]; + + if (promise && typeof promise.then === 'function') { + promise.then(resolve, reject); + } else { + resolve(promise); + } + } + }); + }; + + P.resolve = function (value) { + if (value && _typeof(value) === 'object' && value.constructor === P) { + return value; + } + + return new P(function (resolve) { + resolve(value); + }); + }; + + P.reject = function (reason) { + return new P(function (resolve, reject) { + reject(reason); + }); + }; + + var picked = typeof Promise === 'function' ? Promise : P; + + var d = UNITS_IN_GRID; + var meaninglessTransform = { + size: 16, + x: 0, + y: 0, + rotate: 0, + flipX: false, + flipY: false + }; + + function isReserved(name) { + return ~RESERVED_CLASSES.indexOf(name); + } + + function bunker(fn) { + try { + fn(); + } catch (e) { + if (!PRODUCTION) { + throw e; + } + } + } + function insertCss(css) { + if (!css || !IS_DOM) { + return; + } + + var style = DOCUMENT.createElement('style'); + style.setAttribute('type', 'text/css'); + style.innerHTML = css; + var headChildren = DOCUMENT.head.childNodes; + var beforeChild = null; + + for (var i = headChildren.length - 1; i > -1; i--) { + var child = headChildren[i]; + var tagName = (child.tagName || '').toUpperCase(); + + if (['STYLE', 'LINK'].indexOf(tagName) > -1) { + beforeChild = child; + } + } + + DOCUMENT.head.insertBefore(style, beforeChild); + return css; + } + var idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; + function nextUniqueId() { + var size = 12; + var id = ''; + + while (size-- > 0) { + id += idPool[Math.random() * 62 | 0]; + } + + return id; + } + function toArray(obj) { + var array = []; + + for (var i = (obj || []).length >>> 0; i--;) { + array[i] = obj[i]; + } + + return array; + } + function classArray(node) { + if (node.classList) { + return toArray(node.classList); + } else { + return (node.getAttribute('class') || '').split(' ').filter(function (i) { + return i; + }); + } + } + function getIconName(familyPrefix, cls) { + var parts = cls.split('-'); + var prefix = parts[0]; + var iconName = parts.slice(1).join('-'); + + if (prefix === familyPrefix && iconName !== '' && !isReserved(iconName)) { + return iconName; + } else { + return null; + } + } + function htmlEscape(str) { + return "".concat(str).replace(/&/g, '&').replace(/"/g, '"').replace(/'/g, ''').replace(//g, '>'); + } + function joinAttributes(attributes) { + return Object.keys(attributes || {}).reduce(function (acc, attributeName) { + return acc + "".concat(attributeName, "=\"").concat(htmlEscape(attributes[attributeName]), "\" "); + }, '').trim(); + } + function joinStyles(styles) { + return Object.keys(styles || {}).reduce(function (acc, styleName) { + return acc + "".concat(styleName, ": ").concat(styles[styleName], ";"); + }, ''); + } + function transformIsMeaningful(transform) { + return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY; + } + function transformForSvg(_ref) { + var transform = _ref.transform, + containerWidth = _ref.containerWidth, + iconWidth = _ref.iconWidth; + var outer = { + transform: "translate(".concat(containerWidth / 2, " 256)") + }; + var innerTranslate = "translate(".concat(transform.x * 32, ", ").concat(transform.y * 32, ") "); + var innerScale = "scale(".concat(transform.size / 16 * (transform.flipX ? -1 : 1), ", ").concat(transform.size / 16 * (transform.flipY ? -1 : 1), ") "); + var innerRotate = "rotate(".concat(transform.rotate, " 0 0)"); + var inner = { + transform: "".concat(innerTranslate, " ").concat(innerScale, " ").concat(innerRotate) + }; + var path = { + transform: "translate(".concat(iconWidth / 2 * -1, " -256)") + }; + return { + outer: outer, + inner: inner, + path: path + }; + } + function transformForCss(_ref2) { + var transform = _ref2.transform, + _ref2$width = _ref2.width, + width = _ref2$width === void 0 ? UNITS_IN_GRID : _ref2$width, + _ref2$height = _ref2.height, + height = _ref2$height === void 0 ? UNITS_IN_GRID : _ref2$height, + _ref2$startCentered = _ref2.startCentered, + startCentered = _ref2$startCentered === void 0 ? false : _ref2$startCentered; + var val = ''; + + if (startCentered && IS_IE) { + val += "translate(".concat(transform.x / d - width / 2, "em, ").concat(transform.y / d - height / 2, "em) "); + } else if (startCentered) { + val += "translate(calc(-50% + ".concat(transform.x / d, "em), calc(-50% + ").concat(transform.y / d, "em)) "); + } else { + val += "translate(".concat(transform.x / d, "em, ").concat(transform.y / d, "em) "); + } + + val += "scale(".concat(transform.size / d * (transform.flipX ? -1 : 1), ", ").concat(transform.size / d * (transform.flipY ? -1 : 1), ") "); + val += "rotate(".concat(transform.rotate, "deg) "); + return val; + } + + var ALL_SPACE = { + x: 0, + y: 0, + width: '100%', + height: '100%' + }; + + function fillBlack(abstract) { + var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; + + if (abstract.attributes && (abstract.attributes.fill || force)) { + abstract.attributes.fill = 'black'; + } + + return abstract; + } + + function deGroup(abstract) { + if (abstract.tag === 'g') { + return abstract.children; + } else { + return [abstract]; + } + } + + function makeIconMasking (_ref) { + var children = _ref.children, + attributes = _ref.attributes, + main = _ref.main, + mask = _ref.mask, + explicitMaskId = _ref.maskId, + transform = _ref.transform; + var mainWidth = main.width, + mainPath = main.icon; + var maskWidth = mask.width, + maskPath = mask.icon; + var trans = transformForSvg({ + transform: transform, + containerWidth: maskWidth, + iconWidth: mainWidth + }); + var maskRect = { + tag: 'rect', + attributes: _objectSpread({}, ALL_SPACE, { + fill: 'white' + }) + }; + var maskInnerGroupChildrenMixin = mainPath.children ? { + children: mainPath.children.map(fillBlack) + } : {}; + var maskInnerGroup = { + tag: 'g', + attributes: _objectSpread({}, trans.inner), + children: [fillBlack(_objectSpread({ + tag: mainPath.tag, + attributes: _objectSpread({}, mainPath.attributes, trans.path) + }, maskInnerGroupChildrenMixin))] + }; + var maskOuterGroup = { + tag: 'g', + attributes: _objectSpread({}, trans.outer), + children: [maskInnerGroup] + }; + var maskId = "mask-".concat(explicitMaskId || nextUniqueId()); + var clipId = "clip-".concat(explicitMaskId || nextUniqueId()); + var maskTag = { + tag: 'mask', + attributes: _objectSpread({}, ALL_SPACE, { + id: maskId, + maskUnits: 'userSpaceOnUse', + maskContentUnits: 'userSpaceOnUse' + }), + children: [maskRect, maskOuterGroup] + }; + var defs = { + tag: 'defs', + children: [{ + tag: 'clipPath', + attributes: { + id: clipId + }, + children: deGroup(maskPath) + }, maskTag] + }; + children.push(defs, { + tag: 'rect', + attributes: _objectSpread({ + fill: 'currentColor', + 'clip-path': "url(#".concat(clipId, ")"), + mask: "url(#".concat(maskId, ")") + }, ALL_SPACE) + }); + return { + children: children, + attributes: attributes + }; + } + + function makeIconStandard (_ref) { + var children = _ref.children, + attributes = _ref.attributes, + main = _ref.main, + transform = _ref.transform, + styles = _ref.styles; + var styleString = joinStyles(styles); + + if (styleString.length > 0) { + attributes['style'] = styleString; + } + + if (transformIsMeaningful(transform)) { + var trans = transformForSvg({ + transform: transform, + containerWidth: main.width, + iconWidth: main.width + }); + children.push({ + tag: 'g', + attributes: _objectSpread({}, trans.outer), + children: [{ + tag: 'g', + attributes: _objectSpread({}, trans.inner), + children: [{ + tag: main.icon.tag, + children: main.icon.children, + attributes: _objectSpread({}, main.icon.attributes, trans.path) + }] + }] + }); + } else { + children.push(main.icon); + } + + return { + children: children, + attributes: attributes + }; + } + + function asIcon (_ref) { + var children = _ref.children, + main = _ref.main, + mask = _ref.mask, + attributes = _ref.attributes, + styles = _ref.styles, + transform = _ref.transform; + + if (transformIsMeaningful(transform) && main.found && !mask.found) { + var width = main.width, + height = main.height; + var offset = { + x: width / height / 2, + y: 0.5 + }; + attributes['style'] = joinStyles(_objectSpread({}, styles, { + 'transform-origin': "".concat(offset.x + transform.x / 16, "em ").concat(offset.y + transform.y / 16, "em") + })); + } + + return [{ + tag: 'svg', + attributes: attributes, + children: children + }]; + } + + function asSymbol (_ref) { + var prefix = _ref.prefix, + iconName = _ref.iconName, + children = _ref.children, + attributes = _ref.attributes, + symbol = _ref.symbol; + var id = symbol === true ? "".concat(prefix, "-").concat(config.familyPrefix, "-").concat(iconName) : symbol; + return [{ + tag: 'svg', + attributes: { + style: 'display: none;' + }, + children: [{ + tag: 'symbol', + attributes: _objectSpread({}, attributes, { + id: id + }), + children: children + }] + }]; + } + + function makeInlineSvgAbstract(params) { + var _params$icons = params.icons, + main = _params$icons.main, + mask = _params$icons.mask, + prefix = params.prefix, + iconName = params.iconName, + transform = params.transform, + symbol = params.symbol, + title = params.title, + maskId = params.maskId, + titleId = params.titleId, + extra = params.extra, + _params$watchable = params.watchable, + watchable = _params$watchable === void 0 ? false : _params$watchable; + + var _ref = mask.found ? mask : main, + width = _ref.width, + height = _ref.height; + + var isUploadedIcon = prefix === 'fak'; + var widthClass = isUploadedIcon ? '' : "fa-w-".concat(Math.ceil(width / height * 16)); + var attrClass = [config.replacementClass, iconName ? "".concat(config.familyPrefix, "-").concat(iconName) : '', widthClass].filter(function (c) { + return extra.classes.indexOf(c) === -1; + }).filter(function (c) { + return c !== '' || !!c; + }).concat(extra.classes).join(' '); + var content = { + children: [], + attributes: _objectSpread({}, extra.attributes, { + 'data-prefix': prefix, + 'data-icon': iconName, + 'class': attrClass, + 'role': extra.attributes.role || 'img', + 'xmlns': 'http://www.w3.org/2000/svg', + 'viewBox': "0 0 ".concat(width, " ").concat(height) + }) + }; + var uploadedIconWidthStyle = isUploadedIcon && !~extra.classes.indexOf('fa-fw') ? { + width: "".concat(width / height * 16 * 0.0625, "em") + } : {}; + + if (watchable) { + content.attributes[DATA_FA_I2SVG] = ''; + } + + if (title) content.children.push({ + tag: 'title', + attributes: { + id: content.attributes['aria-labelledby'] || "title-".concat(titleId || nextUniqueId()) + }, + children: [title] + }); + + var args = _objectSpread({}, content, { + prefix: prefix, + iconName: iconName, + main: main, + mask: mask, + maskId: maskId, + transform: transform, + symbol: symbol, + styles: _objectSpread({}, uploadedIconWidthStyle, extra.styles) + }); + + var _ref2 = mask.found && main.found ? makeIconMasking(args) : makeIconStandard(args), + children = _ref2.children, + attributes = _ref2.attributes; + + args.children = children; + args.attributes = attributes; + + if (symbol) { + return asSymbol(args); + } else { + return asIcon(args); + } + } + function makeLayersTextAbstract(params) { + var content = params.content, + width = params.width, + height = params.height, + transform = params.transform, + title = params.title, + extra = params.extra, + _params$watchable2 = params.watchable, + watchable = _params$watchable2 === void 0 ? false : _params$watchable2; + + var attributes = _objectSpread({}, extra.attributes, title ? { + 'title': title + } : {}, { + 'class': extra.classes.join(' ') + }); + + if (watchable) { + attributes[DATA_FA_I2SVG] = ''; + } + + var styles = _objectSpread({}, extra.styles); + + if (transformIsMeaningful(transform)) { + styles['transform'] = transformForCss({ + transform: transform, + startCentered: true, + width: width, + height: height + }); + styles['-webkit-transform'] = styles['transform']; + } + + var styleString = joinStyles(styles); + + if (styleString.length > 0) { + attributes['style'] = styleString; + } + + var val = []; + val.push({ + tag: 'span', + attributes: attributes, + children: [content] + }); + + if (title) { + val.push({ + tag: 'span', + attributes: { + class: 'sr-only' + }, + children: [title] + }); + } + + return val; + } + function makeLayersCounterAbstract(params) { + var content = params.content, + title = params.title, + extra = params.extra; + + var attributes = _objectSpread({}, extra.attributes, title ? { + 'title': title + } : {}, { + 'class': extra.classes.join(' ') + }); + + var styleString = joinStyles(extra.styles); + + if (styleString.length > 0) { + attributes['style'] = styleString; + } + + var val = []; + val.push({ + tag: 'span', + attributes: attributes, + children: [content] + }); + + if (title) { + val.push({ + tag: 'span', + attributes: { + class: 'sr-only' + }, + children: [title] + }); + } + + return val; + } + + var noop$1 = function noop() {}; + + var p = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : { + mark: noop$1, + measure: noop$1 + }; + var preamble = "FA \"5.15.3\""; + + var begin = function begin(name) { + p.mark("".concat(preamble, " ").concat(name, " begins")); + return function () { + return end(name); + }; + }; + + var end = function end(name) { + p.mark("".concat(preamble, " ").concat(name, " ends")); + p.measure("".concat(preamble, " ").concat(name), "".concat(preamble, " ").concat(name, " begins"), "".concat(preamble, " ").concat(name, " ends")); + }; + + var perf = { + begin: begin, + end: end + }; + + /** + * Internal helper to bind a function known to have 4 arguments + * to a given context. + */ + + var bindInternal4 = function bindInternal4(func, thisContext) { + return function (a, b, c, d) { + return func.call(thisContext, a, b, c, d); + }; + }; + + /** + * # Reduce + * + * A fast object `.reduce()` implementation. + * + * @param {Object} subject The object to reduce over. + * @param {Function} fn The reducer function. + * @param {mixed} initialValue The initial value for the reducer, defaults to subject[0]. + * @param {Object} thisContext The context for the reducer. + * @return {mixed} The final result. + */ + + + var reduce = function fastReduceObject(subject, fn, initialValue, thisContext) { + var keys = Object.keys(subject), + length = keys.length, + iterator = thisContext !== undefined ? bindInternal4(fn, thisContext) : fn, + i, + key, + result; + + if (initialValue === undefined) { + i = 1; + result = subject[keys[0]]; + } else { + i = 0; + result = initialValue; + } + + for (; i < length; i++) { + key = keys[i]; + result = iterator(result, subject[key], key, subject); + } + + return result; + }; + + function toHex(unicode) { + var result = ''; + + for (var i = 0; i < unicode.length; i++) { + var hex = unicode.charCodeAt(i).toString(16); + result += ('000' + hex).slice(-4); + } + + return result; + } + + function defineIcons(prefix, icons) { + var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + var _params$skipHooks = params.skipHooks, + skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks; + var normalized = Object.keys(icons).reduce(function (acc, iconName) { + var icon = icons[iconName]; + var expanded = !!icon.icon; + + if (expanded) { + acc[icon.iconName] = icon.icon; + } else { + acc[iconName] = icon; + } + + return acc; + }, {}); + + if (typeof namespace.hooks.addPack === 'function' && !skipHooks) { + namespace.hooks.addPack(prefix, normalized); + } else { + namespace.styles[prefix] = _objectSpread({}, namespace.styles[prefix] || {}, normalized); + } + /** + * Font Awesome 4 used the prefix of `fa` for all icons. With the introduction + * of new styles we needed to differentiate between them. Prefix `fa` is now an alias + * for `fas` so we'll easy the upgrade process for our users by automatically defining + * this as well. + */ + + + if (prefix === 'fas') { + defineIcons('fa', icons); + } + } + + var styles = namespace.styles, + shims = namespace.shims; + var _byUnicode = {}; + var _byLigature = {}; + var _byOldName = {}; + var build = function build() { + var lookup = function lookup(reducer) { + return reduce(styles, function (o, style, prefix) { + o[prefix] = reduce(style, reducer, {}); + return o; + }, {}); + }; + + _byUnicode = lookup(function (acc, icon, iconName) { + if (icon[3]) { + acc[icon[3]] = iconName; + } + + return acc; + }); + _byLigature = lookup(function (acc, icon, iconName) { + var ligatures = icon[2]; + acc[iconName] = iconName; + ligatures.forEach(function (ligature) { + acc[ligature] = iconName; + }); + return acc; + }); + var hasRegular = 'far' in styles; + _byOldName = reduce(shims, function (acc, shim) { + var oldName = shim[0]; + var prefix = shim[1]; + var iconName = shim[2]; + + if (prefix === 'far' && !hasRegular) { + prefix = 'fas'; + } + + acc[oldName] = { + prefix: prefix, + iconName: iconName + }; + return acc; + }, {}); + }; + build(); + function byUnicode(prefix, unicode) { + return (_byUnicode[prefix] || {})[unicode]; + } + function byLigature(prefix, ligature) { + return (_byLigature[prefix] || {})[ligature]; + } + function byOldName(name) { + return _byOldName[name] || { + prefix: null, + iconName: null + }; + } + + var styles$1 = namespace.styles; + var emptyCanonicalIcon = function emptyCanonicalIcon() { + return { + prefix: null, + iconName: null, + rest: [] + }; + }; + function getCanonicalIcon(values) { + return values.reduce(function (acc, cls) { + var iconName = getIconName(config.familyPrefix, cls); + + if (styles$1[cls]) { + acc.prefix = cls; + } else if (config.autoFetchSvg && Object.keys(PREFIX_TO_STYLE).indexOf(cls) > -1) { + acc.prefix = cls; + } else if (iconName) { + var shim = acc.prefix === 'fa' ? byOldName(iconName) : {}; + acc.iconName = shim.iconName || iconName; + acc.prefix = shim.prefix || acc.prefix; + } else if (cls !== config.replacementClass && cls.indexOf('fa-w-') !== 0) { + acc.rest.push(cls); + } + + return acc; + }, emptyCanonicalIcon()); + } + function iconFromMapping(mapping, prefix, iconName) { + if (mapping && mapping[prefix] && mapping[prefix][iconName]) { + return { + prefix: prefix, + iconName: iconName, + icon: mapping[prefix][iconName] + }; + } + } + + function toHtml(abstractNodes) { + var tag = abstractNodes.tag, + _abstractNodes$attrib = abstractNodes.attributes, + attributes = _abstractNodes$attrib === void 0 ? {} : _abstractNodes$attrib, + _abstractNodes$childr = abstractNodes.children, + children = _abstractNodes$childr === void 0 ? [] : _abstractNodes$childr; + + if (typeof abstractNodes === 'string') { + return htmlEscape(abstractNodes); + } else { + return "<".concat(tag, " ").concat(joinAttributes(attributes), ">").concat(children.map(toHtml).join(''), ""); + } + } + + var noop$2 = function noop() {}; + + function isWatched(node) { + var i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null; + return typeof i2svg === 'string'; + } + + function getMutator() { + if (config.autoReplaceSvg === true) { + return mutators.replace; + } + + var mutator = mutators[config.autoReplaceSvg]; + return mutator || mutators.replace; + } + + var mutators = { + replace: function replace(mutation) { + var node = mutation[0]; + var abstract = mutation[1]; + var newOuterHTML = abstract.map(function (a) { + return toHtml(a); + }).join('\n'); + + if (node.parentNode && node.outerHTML) { + node.outerHTML = newOuterHTML + (config.keepOriginalSource && node.tagName.toLowerCase() !== 'svg' ? "") : ''); + } else if (node.parentNode) { + var newNode = document.createElement('span'); + node.parentNode.replaceChild(newNode, node); + newNode.outerHTML = newOuterHTML; + } + }, + nest: function nest(mutation) { + var node = mutation[0]; + var abstract = mutation[1]; // If we already have a replaced node we do not want to continue nesting within it. + // Short-circuit to the standard replacement + + if (~classArray(node).indexOf(config.replacementClass)) { + return mutators.replace(mutation); + } + + var forSvg = new RegExp("".concat(config.familyPrefix, "-.*")); + delete abstract[0].attributes.style; + delete abstract[0].attributes.id; + var splitClasses = abstract[0].attributes.class.split(' ').reduce(function (acc, cls) { + if (cls === config.replacementClass || cls.match(forSvg)) { + acc.toSvg.push(cls); + } else { + acc.toNode.push(cls); + } + + return acc; + }, { + toNode: [], + toSvg: [] + }); + abstract[0].attributes.class = splitClasses.toSvg.join(' '); + var newInnerHTML = abstract.map(function (a) { + return toHtml(a); + }).join('\n'); + node.setAttribute('class', splitClasses.toNode.join(' ')); + node.setAttribute(DATA_FA_I2SVG, ''); + node.innerHTML = newInnerHTML; + } + }; + + function performOperationSync(op) { + op(); + } + + function perform(mutations, callback) { + var callbackFunction = typeof callback === 'function' ? callback : noop$2; + + if (mutations.length === 0) { + callbackFunction(); + } else { + var frame = performOperationSync; + + if (config.mutateApproach === MUTATION_APPROACH_ASYNC) { + frame = WINDOW.requestAnimationFrame || performOperationSync; + } + + frame(function () { + var mutator = getMutator(); + var mark = perf.begin('mutate'); + mutations.map(mutator); + mark(); + callbackFunction(); + }); + } + } + var disabled = false; + function disableObservation() { + disabled = true; + } + function enableObservation() { + disabled = false; + } + var mo = null; + function observe(options) { + if (!MUTATION_OBSERVER) { + return; + } + + if (!config.observeMutations) { + return; + } + + var treeCallback = options.treeCallback, + nodeCallback = options.nodeCallback, + pseudoElementsCallback = options.pseudoElementsCallback, + _options$observeMutat = options.observeMutationsRoot, + observeMutationsRoot = _options$observeMutat === void 0 ? DOCUMENT : _options$observeMutat; + mo = new MUTATION_OBSERVER(function (objects) { + if (disabled) return; + toArray(objects).forEach(function (mutationRecord) { + if (mutationRecord.type === 'childList' && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) { + if (config.searchPseudoElements) { + pseudoElementsCallback(mutationRecord.target); + } + + treeCallback(mutationRecord.target); + } + + if (mutationRecord.type === 'attributes' && mutationRecord.target.parentNode && config.searchPseudoElements) { + pseudoElementsCallback(mutationRecord.target.parentNode); + } + + if (mutationRecord.type === 'attributes' && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) { + if (mutationRecord.attributeName === 'class') { + var _getCanonicalIcon = getCanonicalIcon(classArray(mutationRecord.target)), + prefix = _getCanonicalIcon.prefix, + iconName = _getCanonicalIcon.iconName; + + if (prefix) mutationRecord.target.setAttribute('data-prefix', prefix); + if (iconName) mutationRecord.target.setAttribute('data-icon', iconName); + } else { + nodeCallback(mutationRecord.target); + } + } + }); + }); + if (!IS_DOM) return; + mo.observe(observeMutationsRoot, { + childList: true, + attributes: true, + characterData: true, + subtree: true + }); + } + function disconnect() { + if (!mo) return; + mo.disconnect(); + } + + function styleParser (node) { + var style = node.getAttribute('style'); + var val = []; + + if (style) { + val = style.split(';').reduce(function (acc, style) { + var styles = style.split(':'); + var prop = styles[0]; + var value = styles.slice(1); + + if (prop && value.length > 0) { + acc[prop] = value.join(':').trim(); + } + + return acc; + }, {}); + } + + return val; + } + + function classParser (node) { + var existingPrefix = node.getAttribute('data-prefix'); + var existingIconName = node.getAttribute('data-icon'); + var innerText = node.innerText !== undefined ? node.innerText.trim() : ''; + var val = getCanonicalIcon(classArray(node)); + + if (existingPrefix && existingIconName) { + val.prefix = existingPrefix; + val.iconName = existingIconName; + } + + if (val.prefix && innerText.length > 1) { + val.iconName = byLigature(val.prefix, node.innerText); + } else if (val.prefix && innerText.length === 1) { + val.iconName = byUnicode(val.prefix, toHex(node.innerText)); + } + + return val; + } + + var parseTransformString = function parseTransformString(transformString) { + var transform = { + size: 16, + x: 0, + y: 0, + flipX: false, + flipY: false, + rotate: 0 + }; + + if (!transformString) { + return transform; + } else { + return transformString.toLowerCase().split(' ').reduce(function (acc, n) { + var parts = n.toLowerCase().split('-'); + var first = parts[0]; + var rest = parts.slice(1).join('-'); + + if (first && rest === 'h') { + acc.flipX = true; + return acc; + } + + if (first && rest === 'v') { + acc.flipY = true; + return acc; + } + + rest = parseFloat(rest); + + if (isNaN(rest)) { + return acc; + } + + switch (first) { + case 'grow': + acc.size = acc.size + rest; + break; + + case 'shrink': + acc.size = acc.size - rest; + break; + + case 'left': + acc.x = acc.x - rest; + break; + + case 'right': + acc.x = acc.x + rest; + break; + + case 'up': + acc.y = acc.y - rest; + break; + + case 'down': + acc.y = acc.y + rest; + break; + + case 'rotate': + acc.rotate = acc.rotate + rest; + break; + } + + return acc; + }, transform); + } + }; + function transformParser (node) { + return parseTransformString(node.getAttribute('data-fa-transform')); + } + + function symbolParser (node) { + var symbol = node.getAttribute('data-fa-symbol'); + return symbol === null ? false : symbol === '' ? true : symbol; + } + + function attributesParser (node) { + var extraAttributes = toArray(node.attributes).reduce(function (acc, attr) { + if (acc.name !== 'class' && acc.name !== 'style') { + acc[attr.name] = attr.value; + } + + return acc; + }, {}); + var title = node.getAttribute('title'); + var titleId = node.getAttribute('data-fa-title-id'); + + if (config.autoA11y) { + if (title) { + extraAttributes['aria-labelledby'] = "".concat(config.replacementClass, "-title-").concat(titleId || nextUniqueId()); + } else { + extraAttributes['aria-hidden'] = 'true'; + extraAttributes['focusable'] = 'false'; + } + } + + return extraAttributes; + } + + function maskParser (node) { + var mask = node.getAttribute('data-fa-mask'); + + if (!mask) { + return emptyCanonicalIcon(); + } else { + return getCanonicalIcon(mask.split(' ').map(function (i) { + return i.trim(); + })); + } + } + + function blankMeta() { + return { + iconName: null, + title: null, + titleId: null, + prefix: null, + transform: meaninglessTransform, + symbol: false, + mask: null, + maskId: null, + extra: { + classes: [], + styles: {}, + attributes: {} + } + }; + } + function parseMeta(node) { + var _classParser = classParser(node), + iconName = _classParser.iconName, + prefix = _classParser.prefix, + extraClasses = _classParser.rest; + + var extraStyles = styleParser(node); + var transform = transformParser(node); + var symbol = symbolParser(node); + var extraAttributes = attributesParser(node); + var mask = maskParser(node); + return { + iconName: iconName, + title: node.getAttribute('title'), + titleId: node.getAttribute('data-fa-title-id'), + prefix: prefix, + transform: transform, + symbol: symbol, + mask: mask, + maskId: node.getAttribute('data-fa-mask-id'), + extra: { + classes: extraClasses, + styles: extraStyles, + attributes: extraAttributes + } + }; + } + + function MissingIcon(error) { + this.name = 'MissingIcon'; + this.message = error || 'Icon unavailable'; + this.stack = new Error().stack; + } + MissingIcon.prototype = Object.create(Error.prototype); + MissingIcon.prototype.constructor = MissingIcon; + + var FILL = { + fill: 'currentColor' + }; + var ANIMATION_BASE = { + attributeType: 'XML', + repeatCount: 'indefinite', + dur: '2s' + }; + var RING = { + tag: 'path', + attributes: _objectSpread({}, FILL, { + d: 'M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z' + }) + }; + + var OPACITY_ANIMATE = _objectSpread({}, ANIMATION_BASE, { + attributeName: 'opacity' + }); + + var DOT = { + tag: 'circle', + attributes: _objectSpread({}, FILL, { + cx: '256', + cy: '364', + r: '28' + }), + children: [{ + tag: 'animate', + attributes: _objectSpread({}, ANIMATION_BASE, { + attributeName: 'r', + values: '28;14;28;28;14;28;' + }) + }, { + tag: 'animate', + attributes: _objectSpread({}, OPACITY_ANIMATE, { + values: '1;0;1;1;0;1;' + }) + }] + }; + var QUESTION = { + tag: 'path', + attributes: _objectSpread({}, FILL, { + opacity: '1', + d: 'M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z' + }), + children: [{ + tag: 'animate', + attributes: _objectSpread({}, OPACITY_ANIMATE, { + values: '1;0;0;0;0;1;' + }) + }] + }; + var EXCLAMATION = { + tag: 'path', + attributes: _objectSpread({}, FILL, { + opacity: '0', + d: 'M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z' + }), + children: [{ + tag: 'animate', + attributes: _objectSpread({}, OPACITY_ANIMATE, { + values: '0;0;1;1;0;0;' + }) + }] + }; + var missing = { + tag: 'g', + children: [RING, DOT, QUESTION, EXCLAMATION] + }; + + var styles$2 = namespace.styles; + function asFoundIcon(icon) { + var width = icon[0]; + var height = icon[1]; + + var _icon$slice = icon.slice(4), + _icon$slice2 = _slicedToArray(_icon$slice, 1), + vectorData = _icon$slice2[0]; + + var element = null; + + if (Array.isArray(vectorData)) { + element = { + tag: 'g', + attributes: { + class: "".concat(config.familyPrefix, "-").concat(DUOTONE_CLASSES.GROUP) + }, + children: [{ + tag: 'path', + attributes: { + class: "".concat(config.familyPrefix, "-").concat(DUOTONE_CLASSES.SECONDARY), + fill: 'currentColor', + d: vectorData[0] + } + }, { + tag: 'path', + attributes: { + class: "".concat(config.familyPrefix, "-").concat(DUOTONE_CLASSES.PRIMARY), + fill: 'currentColor', + d: vectorData[1] + } + }] + }; + } else { + element = { + tag: 'path', + attributes: { + fill: 'currentColor', + d: vectorData + } + }; + } + + return { + found: true, + width: width, + height: height, + icon: element + }; + } + function findIcon(iconName, prefix) { + return new picked(function (resolve, reject) { + var val = { + found: false, + width: 512, + height: 512, + icon: missing + }; + + if (iconName && prefix && styles$2[prefix] && styles$2[prefix][iconName]) { + var icon = styles$2[prefix][iconName]; + return resolve(asFoundIcon(icon)); + } + + if (iconName && prefix && !config.showMissingIcons) { + reject(new MissingIcon("Icon is missing for prefix ".concat(prefix, " with icon name ").concat(iconName))); + } else { + resolve(val); + } + }); + } + + var styles$3 = namespace.styles; + + function generateSvgReplacementMutation(node, nodeMeta) { + var iconName = nodeMeta.iconName, + title = nodeMeta.title, + titleId = nodeMeta.titleId, + prefix = nodeMeta.prefix, + transform = nodeMeta.transform, + symbol = nodeMeta.symbol, + mask = nodeMeta.mask, + maskId = nodeMeta.maskId, + extra = nodeMeta.extra; + return new picked(function (resolve, reject) { + picked.all([findIcon(iconName, prefix), findIcon(mask.iconName, mask.prefix)]).then(function (_ref) { + var _ref2 = _slicedToArray(_ref, 2), + main = _ref2[0], + mask = _ref2[1]; + + resolve([node, makeInlineSvgAbstract({ + icons: { + main: main, + mask: mask + }, + prefix: prefix, + iconName: iconName, + transform: transform, + symbol: symbol, + mask: mask, + maskId: maskId, + title: title, + titleId: titleId, + extra: extra, + watchable: true + })]); + }); + }); + } + + function generateLayersText(node, nodeMeta) { + var title = nodeMeta.title, + transform = nodeMeta.transform, + extra = nodeMeta.extra; + var width = null; + var height = null; + + if (IS_IE) { + var computedFontSize = parseInt(getComputedStyle(node).fontSize, 10); + var boundingClientRect = node.getBoundingClientRect(); + width = boundingClientRect.width / computedFontSize; + height = boundingClientRect.height / computedFontSize; + } + + if (config.autoA11y && !title) { + extra.attributes['aria-hidden'] = 'true'; + } + + return picked.resolve([node, makeLayersTextAbstract({ + content: node.innerHTML, + width: width, + height: height, + transform: transform, + title: title, + extra: extra, + watchable: true + })]); + } + + function generateMutation(node) { + var nodeMeta = parseMeta(node); + + if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) { + return generateLayersText(node, nodeMeta); + } else { + return generateSvgReplacementMutation(node, nodeMeta); + } + } + + function onTree(root) { + var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; + if (!IS_DOM) return; + var htmlClassList = DOCUMENT.documentElement.classList; + + var hclAdd = function hclAdd(suffix) { + return htmlClassList.add("".concat(HTML_CLASS_I2SVG_BASE_CLASS, "-").concat(suffix)); + }; + + var hclRemove = function hclRemove(suffix) { + return htmlClassList.remove("".concat(HTML_CLASS_I2SVG_BASE_CLASS, "-").concat(suffix)); + }; + + var prefixes = config.autoFetchSvg ? Object.keys(PREFIX_TO_STYLE) : Object.keys(styles$3); + var prefixesDomQuery = [".".concat(LAYERS_TEXT_CLASSNAME, ":not([").concat(DATA_FA_I2SVG, "])")].concat(prefixes.map(function (p) { + return ".".concat(p, ":not([").concat(DATA_FA_I2SVG, "])"); + })).join(', '); + + if (prefixesDomQuery.length === 0) { + return; + } + + var candidates = []; + + try { + candidates = toArray(root.querySelectorAll(prefixesDomQuery)); + } catch (e) {// noop + } + + if (candidates.length > 0) { + hclAdd('pending'); + hclRemove('complete'); + } else { + return; + } + + var mark = perf.begin('onTree'); + var mutations = candidates.reduce(function (acc, node) { + try { + var mutation = generateMutation(node); + + if (mutation) { + acc.push(mutation); + } + } catch (e) { + if (!PRODUCTION) { + if (e instanceof MissingIcon) { + console.error(e); + } + } + } + + return acc; + }, []); + return new picked(function (resolve, reject) { + picked.all(mutations).then(function (resolvedMutations) { + perform(resolvedMutations, function () { + hclAdd('active'); + hclAdd('complete'); + hclRemove('pending'); + if (typeof callback === 'function') callback(); + mark(); + resolve(); + }); + }).catch(function () { + mark(); + reject(); + }); + }); + } + function onNode(node) { + var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; + generateMutation(node).then(function (mutation) { + if (mutation) { + perform([mutation], callback); + } + }); + } + + function replaceForPosition(node, position) { + var pendingAttribute = "".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-')); + return new picked(function (resolve, reject) { + if (node.getAttribute(pendingAttribute) !== null) { + // This node is already being processed + return resolve(); + } + + var children = toArray(node.children); + var alreadyProcessedPseudoElement = children.filter(function (c) { + return c.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position; + })[0]; + var styles = WINDOW.getComputedStyle(node, position); + var fontFamily = styles.getPropertyValue('font-family').match(FONT_FAMILY_PATTERN); + var fontWeight = styles.getPropertyValue('font-weight'); + var content = styles.getPropertyValue('content'); + + if (alreadyProcessedPseudoElement && !fontFamily) { + // If we've already processed it but the current computed style does not result in a font-family, + // that probably means that a class name that was previously present to make the icon has been + // removed. So we now should delete the icon. + node.removeChild(alreadyProcessedPseudoElement); + return resolve(); + } else if (fontFamily && content !== 'none' && content !== '') { + var _content = styles.getPropertyValue('content'); + + var prefix = ~['Solid', 'Regular', 'Light', 'Duotone', 'Brands', 'Kit'].indexOf(fontFamily[2]) ? STYLE_TO_PREFIX[fontFamily[2].toLowerCase()] : FONT_WEIGHT_TO_PREFIX[fontWeight]; + var hexValue = toHex(_content.length === 3 ? _content.substr(1, 1) : _content); + var iconName = byUnicode(prefix, hexValue); + var iconIdentifier = iconName; // Only convert the pseudo element in this :before/:after position into an icon if we haven't + // already done so with the same prefix and iconName + + if (iconName && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) { + node.setAttribute(pendingAttribute, iconIdentifier); + + if (alreadyProcessedPseudoElement) { + // Delete the old one, since we're replacing it with a new one + node.removeChild(alreadyProcessedPseudoElement); + } + + var meta = blankMeta(); + var extra = meta.extra; + extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position; + findIcon(iconName, prefix).then(function (main) { + var abstract = makeInlineSvgAbstract(_objectSpread({}, meta, { + icons: { + main: main, + mask: emptyCanonicalIcon() + }, + prefix: prefix, + iconName: iconIdentifier, + extra: extra, + watchable: true + })); + var element = DOCUMENT.createElement('svg'); + + if (position === ':before') { + node.insertBefore(element, node.firstChild); + } else { + node.appendChild(element); + } + + element.outerHTML = abstract.map(function (a) { + return toHtml(a); + }).join('\n'); + node.removeAttribute(pendingAttribute); + resolve(); + }).catch(reject); + } else { + resolve(); + } + } else { + resolve(); + } + }); + } + + function replace(node) { + return picked.all([replaceForPosition(node, ':before'), replaceForPosition(node, ':after')]); + } + + function processable(node) { + return node.parentNode !== document.head && !~TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS.indexOf(node.tagName.toUpperCase()) && !node.getAttribute(DATA_FA_PSEUDO_ELEMENT) && (!node.parentNode || node.parentNode.tagName !== 'svg'); + } + + function searchPseudoElements (root) { + if (!IS_DOM) return; + return new picked(function (resolve, reject) { + var operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace); + var end = perf.begin('searchPseudoElements'); + disableObservation(); + picked.all(operations).then(function () { + end(); + enableObservation(); + resolve(); + }).catch(function () { + end(); + enableObservation(); + reject(); + }); + }); + } + + var baseStyles = "svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.3333333333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:solid .08em #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fad.fa-inverse{color:#fff}"; + + function css () { + var dfp = DEFAULT_FAMILY_PREFIX; + var drc = DEFAULT_REPLACEMENT_CLASS; + var fp = config.familyPrefix; + var rc = config.replacementClass; + var s = baseStyles; + + if (fp !== dfp || rc !== drc) { + var dPatt = new RegExp("\\.".concat(dfp, "\\-"), 'g'); + var customPropPatt = new RegExp("\\--".concat(dfp, "\\-"), 'g'); + var rPatt = new RegExp("\\.".concat(drc), 'g'); + s = s.replace(dPatt, ".".concat(fp, "-")).replace(customPropPatt, "--".concat(fp, "-")).replace(rPatt, ".".concat(rc)); + } + + return s; + } + + var Library = + /*#__PURE__*/ + function () { + function Library() { + _classCallCheck(this, Library); + + this.definitions = {}; + } + + _createClass(Library, [{ + key: "add", + value: function add() { + var _this = this; + + for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) { + definitions[_key] = arguments[_key]; + } + + var additions = definitions.reduce(this._pullDefinitions, {}); + Object.keys(additions).forEach(function (key) { + _this.definitions[key] = _objectSpread({}, _this.definitions[key] || {}, additions[key]); + defineIcons(key, additions[key]); + build(); + }); + } + }, { + key: "reset", + value: function reset() { + this.definitions = {}; + } + }, { + key: "_pullDefinitions", + value: function _pullDefinitions(additions, definition) { + var normalized = definition.prefix && definition.iconName && definition.icon ? { + 0: definition + } : definition; + Object.keys(normalized).map(function (key) { + var _normalized$key = normalized[key], + prefix = _normalized$key.prefix, + iconName = _normalized$key.iconName, + icon = _normalized$key.icon; + if (!additions[prefix]) additions[prefix] = {}; + additions[prefix][iconName] = icon; + }); + return additions; + } + }]); + + return Library; + }(); + + function ensureCss() { + if (config.autoAddCss && !_cssInserted) { + insertCss(css()); + + _cssInserted = true; + } + } + + function apiObject(val, abstractCreator) { + Object.defineProperty(val, 'abstract', { + get: abstractCreator + }); + Object.defineProperty(val, 'html', { + get: function get() { + return val.abstract.map(function (a) { + return toHtml(a); + }); + } + }); + Object.defineProperty(val, 'node', { + get: function get() { + if (!IS_DOM) return; + var container = DOCUMENT.createElement('div'); + container.innerHTML = val.html; + return container.children; + } + }); + return val; + } + + function findIconDefinition(iconLookup) { + var _iconLookup$prefix = iconLookup.prefix, + prefix = _iconLookup$prefix === void 0 ? 'fa' : _iconLookup$prefix, + iconName = iconLookup.iconName; + if (!iconName) return; + return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName); + } + + function resolveIcons(next) { + return function (maybeIconDefinition) { + var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {}); + var mask = params.mask; + + if (mask) { + mask = (mask || {}).icon ? mask : findIconDefinition(mask || {}); + } + + return next(iconDefinition, _objectSpread({}, params, { + mask: mask + })); + }; + } + + var library = new Library(); + var noAuto = function noAuto() { + config.autoReplaceSvg = false; + config.observeMutations = false; + disconnect(); + }; + var _cssInserted = false; + var dom = { + i2svg: function i2svg() { + var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + + if (IS_DOM) { + ensureCss(); + var _params$node = params.node, + node = _params$node === void 0 ? DOCUMENT : _params$node, + _params$callback = params.callback, + callback = _params$callback === void 0 ? function () {} : _params$callback; + + if (config.searchPseudoElements) { + searchPseudoElements(node); + } + + return onTree(node, callback); + } else { + return picked.reject('Operation requires a DOM of some kind.'); + } + }, + css: css, + insertCss: function insertCss$$1() { + if (!_cssInserted) { + insertCss(css()); + + _cssInserted = true; + } + }, + watch: function watch() { + var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + var autoReplaceSvgRoot = params.autoReplaceSvgRoot, + observeMutationsRoot = params.observeMutationsRoot; + + if (config.autoReplaceSvg === false) { + config.autoReplaceSvg = true; + } + + config.observeMutations = true; + domready(function () { + autoReplace({ + autoReplaceSvgRoot: autoReplaceSvgRoot + }); + observe({ + treeCallback: onTree, + nodeCallback: onNode, + pseudoElementsCallback: searchPseudoElements, + observeMutationsRoot: observeMutationsRoot + }); + }); + } + }; + var parse = { + transform: function transform(transformString) { + return parseTransformString(transformString); + } + }; + var icon = resolveIcons(function (iconDefinition) { + var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var _params$transform = params.transform, + transform = _params$transform === void 0 ? meaninglessTransform : _params$transform, + _params$symbol = params.symbol, + symbol = _params$symbol === void 0 ? false : _params$symbol, + _params$mask = params.mask, + mask = _params$mask === void 0 ? null : _params$mask, + _params$maskId = params.maskId, + maskId = _params$maskId === void 0 ? null : _params$maskId, + _params$title = params.title, + title = _params$title === void 0 ? null : _params$title, + _params$titleId = params.titleId, + titleId = _params$titleId === void 0 ? null : _params$titleId, + _params$classes = params.classes, + classes = _params$classes === void 0 ? [] : _params$classes, + _params$attributes = params.attributes, + attributes = _params$attributes === void 0 ? {} : _params$attributes, + _params$styles = params.styles, + styles = _params$styles === void 0 ? {} : _params$styles; + if (!iconDefinition) return; + var prefix = iconDefinition.prefix, + iconName = iconDefinition.iconName, + icon = iconDefinition.icon; + return apiObject(_objectSpread({ + type: 'icon' + }, iconDefinition), function () { + ensureCss(); + + if (config.autoA11y) { + if (title) { + attributes['aria-labelledby'] = "".concat(config.replacementClass, "-title-").concat(titleId || nextUniqueId()); + } else { + attributes['aria-hidden'] = 'true'; + attributes['focusable'] = 'false'; + } + } + + return makeInlineSvgAbstract({ + icons: { + main: asFoundIcon(icon), + mask: mask ? asFoundIcon(mask.icon) : { + found: false, + width: null, + height: null, + icon: {} + } + }, + prefix: prefix, + iconName: iconName, + transform: _objectSpread({}, meaninglessTransform, transform), + symbol: symbol, + title: title, + maskId: maskId, + titleId: titleId, + extra: { + attributes: attributes, + styles: styles, + classes: classes + } + }); + }); + }); + var text = function text(content) { + var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var _params$transform2 = params.transform, + transform = _params$transform2 === void 0 ? meaninglessTransform : _params$transform2, + _params$title2 = params.title, + title = _params$title2 === void 0 ? null : _params$title2, + _params$classes2 = params.classes, + classes = _params$classes2 === void 0 ? [] : _params$classes2, + _params$attributes2 = params.attributes, + attributes = _params$attributes2 === void 0 ? {} : _params$attributes2, + _params$styles2 = params.styles, + styles = _params$styles2 === void 0 ? {} : _params$styles2; + return apiObject({ + type: 'text', + content: content + }, function () { + ensureCss(); + return makeLayersTextAbstract({ + content: content, + transform: _objectSpread({}, meaninglessTransform, transform), + title: title, + extra: { + attributes: attributes, + styles: styles, + classes: ["".concat(config.familyPrefix, "-layers-text")].concat(_toConsumableArray(classes)) + } + }); + }); + }; + var counter = function counter(content) { + var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var _params$title3 = params.title, + title = _params$title3 === void 0 ? null : _params$title3, + _params$classes3 = params.classes, + classes = _params$classes3 === void 0 ? [] : _params$classes3, + _params$attributes3 = params.attributes, + attributes = _params$attributes3 === void 0 ? {} : _params$attributes3, + _params$styles3 = params.styles, + styles = _params$styles3 === void 0 ? {} : _params$styles3; + return apiObject({ + type: 'counter', + content: content + }, function () { + ensureCss(); + return makeLayersCounterAbstract({ + content: content.toString(), + title: title, + extra: { + attributes: attributes, + styles: styles, + classes: ["".concat(config.familyPrefix, "-layers-counter")].concat(_toConsumableArray(classes)) + } + }); + }); + }; + var layer = function layer(assembler) { + var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var _params$classes4 = params.classes, + classes = _params$classes4 === void 0 ? [] : _params$classes4; + return apiObject({ + type: 'layer' + }, function () { + ensureCss(); + var children = []; + assembler(function (args) { + Array.isArray(args) ? args.map(function (a) { + children = children.concat(a.abstract); + }) : children = children.concat(args.abstract); + }); + return [{ + tag: 'span', + attributes: { + class: ["".concat(config.familyPrefix, "-layers")].concat(_toConsumableArray(classes)).join(' ') + }, + children: children + }]; + }); + }; + var api = { + noAuto: noAuto, + config: config, + dom: dom, + library: library, + parse: parse, + findIconDefinition: findIconDefinition, + icon: icon, + text: text, + counter: counter, + layer: layer, + toHtml: toHtml + }; + + var autoReplace = function autoReplace() { + var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + var _params$autoReplaceSv = params.autoReplaceSvgRoot, + autoReplaceSvgRoot = _params$autoReplaceSv === void 0 ? DOCUMENT : _params$autoReplaceSv; + if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({ + node: autoReplaceSvgRoot + }); + }; + + function bootstrap() { + if (IS_BROWSER) { + if (!WINDOW.FontAwesome) { + WINDOW.FontAwesome = api; + } + + domready(function () { + autoReplace(); + observe({ + treeCallback: onTree, + nodeCallback: onNode, + pseudoElementsCallback: searchPseudoElements + }); + }); + } + + namespace.hooks = _objectSpread({}, namespace.hooks, { + addPack: function addPack(prefix, icons) { + namespace.styles[prefix] = _objectSpread({}, namespace.styles[prefix] || {}, icons); + build(); + autoReplace(); + }, + addShims: function addShims(shims) { + var _namespace$shims; + + (_namespace$shims = namespace.shims).push.apply(_namespace$shims, _toConsumableArray(shims)); + + build(); + autoReplace(); + } + }); + } + + bunker(bootstrap); + +}()); diff --git a/admin/css/vendor/fontawesome-free/js/all.min.js b/admin/css/vendor/fontawesome-free/js/all.min.js new file mode 100644 index 0000000..1070e47 --- /dev/null +++ b/admin/css/vendor/fontawesome-free/js/all.min.js @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +!function(){"use strict";var c={},l={};try{"undefined"!=typeof window&&(c=window),"undefined"!=typeof document&&(l=document)}catch(c){}var h=(c.navigator||{}).userAgent,z=void 0===h?"":h,a=c,v=l,m=(a.document,!!v.documentElement&&!!v.head&&"function"==typeof v.addEventListener&&v.createElement,~z.indexOf("MSIE")||z.indexOf("Trident/"),"___FONT_AWESOME___"),e=function(){try{return!0}catch(c){return!1}}();var s=a||{};s[m]||(s[m]={}),s[m].styles||(s[m].styles={}),s[m].hooks||(s[m].hooks={}),s[m].shims||(s[m].shims=[]);var t=s[m];function M(c,z){var l=(2>>0;h--;)l[h]=c[h];return l}function Ac(c){return c.classList?bc(c.classList):(c.getAttribute("class")||"").split(" ").filter(function(c){return c})}function gc(c,l){var h,z=l.split("-"),a=z[0],v=z.slice(1).join("-");return a!==c||""===v||(h=v,~T.indexOf(h))?null:v}function Sc(c){return"".concat(c).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function yc(h){return Object.keys(h||{}).reduce(function(c,l){return c+"".concat(l,": ").concat(h[l],";")},"")}function wc(c){return c.size!==Lc.size||c.x!==Lc.x||c.y!==Lc.y||c.rotate!==Lc.rotate||c.flipX||c.flipY}function Zc(c){var l=c.transform,h=c.containerWidth,z=c.iconWidth,a={transform:"translate(".concat(h/2," 256)")},v="translate(".concat(32*l.x,", ").concat(32*l.y,") "),m="scale(".concat(l.size/16*(l.flipX?-1:1),", ").concat(l.size/16*(l.flipY?-1:1),") "),e="rotate(".concat(l.rotate," 0 0)");return{outer:a,inner:{transform:"".concat(v," ").concat(m," ").concat(e)},path:{transform:"translate(".concat(z/2*-1," -256)")}}}var kc={x:0,y:0,width:"100%",height:"100%"};function xc(c){var l=!(1").concat(m.map(Jc).join(""),"")}var $c=function(){};function cl(c){return"string"==typeof(c.getAttribute?c.getAttribute(cc):null)}var ll={replace:function(c){var l=c[0],h=c[1].map(function(c){return Jc(c)}).join("\n");if(l.parentNode&&l.outerHTML)l.outerHTML=h+(lc.keepOriginalSource&&"svg"!==l.tagName.toLowerCase()?"\x3c!-- ".concat(l.outerHTML," Font Awesome fontawesome.com --\x3e"):"");else if(l.parentNode){var z=document.createElement("span");l.parentNode.replaceChild(z,l),z.outerHTML=h}},nest:function(c){var l=c[0],h=c[1];if(~Ac(l).indexOf(lc.replacementClass))return ll.replace(c);var z=new RegExp("".concat(lc.familyPrefix,"-.*"));delete h[0].attributes.style,delete h[0].attributes.id;var a=h[0].attributes.class.split(" ").reduce(function(c,l){return l===lc.replacementClass||l.match(z)?c.toSvg.push(l):c.toNode.push(l),c},{toNode:[],toSvg:[]});h[0].attributes.class=a.toSvg.join(" ");var v=h.map(function(c){return Jc(c)}).join("\n");l.setAttribute("class",a.toNode.join(" ")),l.setAttribute(cc,""),l.innerHTML=v}};function hl(c){c()}function zl(h,c){var z="function"==typeof c?c:$c;if(0===h.length)z();else{var l=hl;lc.mutateApproach===y&&(l=o.requestAnimationFrame||hl),l(function(){var c=!0===lc.autoReplaceSvg?ll.replace:ll[lc.autoReplaceSvg]||ll.replace,l=_c.begin("mutate");h.map(c),l(),z()})}}var al=!1;function vl(){al=!1}var ml=null;function el(c){if(t&&lc.observeMutations){var a=c.treeCallback,v=c.nodeCallback,m=c.pseudoElementsCallback,l=c.observeMutationsRoot,h=void 0===l?C:l;ml=new t(function(c){al||bc(c).forEach(function(c){if("childList"===c.type&&0 2 && arguments[2] !== undefined ? arguments[2] : {}; + var _params$skipHooks = params.skipHooks, + skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks; + var normalized = Object.keys(icons).reduce(function (acc, iconName) { + var icon = icons[iconName]; + var expanded = !!icon.icon; + + if (expanded) { + acc[icon.iconName] = icon.icon; + } else { + acc[iconName] = icon; + } + + return acc; + }, {}); + + if (typeof namespace.hooks.addPack === 'function' && !skipHooks) { + namespace.hooks.addPack(prefix, normalized); + } else { + namespace.styles[prefix] = _objectSpread({}, namespace.styles[prefix] || {}, normalized); + } + /** + * Font Awesome 4 used the prefix of `fa` for all icons. With the introduction + * of new styles we needed to differentiate between them. Prefix `fa` is now an alias + * for `fas` so we'll easy the upgrade process for our users by automatically defining + * this as well. + */ + + + if (prefix === 'fas') { + defineIcons('fa', icons); + } + } + + var icons = { + "500px": [448, 512, [], "f26e", "M103.3 344.3c-6.5-14.2-6.9-18.3 7.4-23.1 25.6-8 8 9.2 43.2 49.2h.3v-93.9c1.2-50.2 44-92.2 97.7-92.2 53.9 0 97.7 43.5 97.7 96.8 0 63.4-60.8 113.2-128.5 93.3-10.5-4.2-2.1-31.7 8.5-28.6 53 0 89.4-10.1 89.4-64.4 0-61-77.1-89.6-116.9-44.6-23.5 26.4-17.6 42.1-17.6 157.6 50.7 31 118.3 22 160.4-20.1 24.8-24.8 38.5-58 38.5-93 0-35.2-13.8-68.2-38.8-93.3-24.8-24.8-57.8-38.5-93.3-38.5s-68.8 13.8-93.5 38.5c-.3.3-16 16.5-21.2 23.9l-.5.6c-3.3 4.7-6.3 9.1-20.1 6.1-6.9-1.7-14.3-5.8-14.3-11.8V20c0-5 3.9-10.5 10.5-10.5h241.3c8.3 0 8.3 11.6 8.3 15.1 0 3.9 0 15.1-8.3 15.1H130.3v132.9h.3c104.2-109.8 282.8-36 282.8 108.9 0 178.1-244.8 220.3-310.1 62.8zm63.3-260.8c-.5 4.2 4.6 24.5 14.6 20.6C306 56.6 384 144.5 390.6 144.5c4.8 0 22.8-15.3 14.3-22.8-93.2-89-234.5-57-238.3-38.2zM393 414.7C283 524.6 94 475.5 61 310.5c0-12.2-30.4-7.4-28.9 3.3 24 173.4 246 256.9 381.6 121.3 6.9-7.8-12.6-28.4-20.7-20.4zM213.6 306.6c0 4 4.3 7.3 5.5 8.5 3 3 6.1 4.4 8.5 4.4 3.8 0 2.6.2 22.3-19.5 19.6 19.3 19.1 19.5 22.3 19.5 5.4 0 18.5-10.4 10.7-18.2L265.6 284l18.2-18.2c6.3-6.8-10.1-21.8-16.2-15.7L249.7 268c-18.6-18.8-18.4-19.5-21.5-19.5-5 0-18 11.7-12.4 17.3L234 284c-18.1 17.9-20.4 19.2-20.4 22.6z"], + "accessible-icon": [448, 512, [], "f368", "M423.9 255.8L411 413.1c-3.3 40.7-63.9 35.1-60.6-4.9l10-122.5-41.1 2.3c10.1 20.7 15.8 43.9 15.8 68.5 0 41.2-16.1 78.7-42.3 106.5l-39.3-39.3c57.9-63.7 13.1-167.2-74-167.2-25.9 0-49.5 9.9-67.2 26L73 243.2c22-20.7 50.1-35.1 81.4-40.2l75.3-85.7-42.6-24.8-51.6 46c-30 26.8-70.6-18.5-40.5-45.4l68-60.7c9.8-8.8 24.1-10.2 35.5-3.6 0 0 139.3 80.9 139.5 81.1 16.2 10.1 20.7 36 6.1 52.6L285.7 229l106.1-5.9c18.5-1.1 33.6 14.4 32.1 32.7zm-64.9-154c28.1 0 50.9-22.8 50.9-50.9C409.9 22.8 387.1 0 359 0c-28.1 0-50.9 22.8-50.9 50.9 0 28.1 22.8 50.9 50.9 50.9zM179.6 456.5c-80.6 0-127.4-90.6-82.7-156.1l-39.7-39.7C36.4 287 24 320.3 24 356.4c0 130.7 150.7 201.4 251.4 122.5l-39.7-39.7c-16 10.9-35.3 17.3-56.1 17.3z"], + "accusoft": [640, 512, [], "f369", "M322.1 252v-1l-51.2-65.8s-12 1.6-25 15.1c-9 9.3-242.1 239.1-243.4 240.9-7 10 1.6 6.8 15.7 1.7.8 0 114.5-36.6 114.5-36.6.5-.6-.1-.1.6-.6-.4-5.1-.8-26.2-1-27.7-.6-5.2 2.2-6.9 7-8.9l92.6-33.8c.6-.8 88.5-81.7 90.2-83.3zm160.1 120.1c13.3 16.1 20.7 13.3 30.8 9.3 3.2-1.2 115.4-47.6 117.8-48.9 8-4.3-1.7-16.7-7.2-23.4-2.1-2.5-205.1-245.6-207.2-248.3-9.7-12.2-14.3-12.9-38.4-12.8-10.2 0-106.8.5-116.5.6-19.2.1-32.9-.3-19.2 16.9C250 75 476.5 365.2 482.2 372.1zm152.7 1.6c-2.3-.3-24.6-4.7-38-7.2 0 0-115 50.4-117.5 51.6-16 7.3-26.9-3.2-36.7-14.6l-57.1-74c-5.4-.9-60.4-9.6-65.3-9.3-3.1.2-9.6.8-14.4 2.9-4.9 2.1-145.2 52.8-150.2 54.7-5.1 2-11.4 3.6-11.1 7.6.2 2.5 2 2.6 4.6 3.5 2.7.8 300.9 67.6 308 69.1 15.6 3.3 38.5 10.5 53.6 1.7 2.1-1.2 123.8-76.4 125.8-77.8 5.4-4 4.3-6.8-1.7-8.2z"], + "acquisitions-incorporated": [384, 512, [], "f6af", "M357.45 468.2c-1.2-7.7-1.3-7.6-9.6-7.6-99.8.2-111.8-2.4-112.7-2.6-12.3-1.7-20.6-10.5-21-23.1-.1-1.6-.2-71.6-1-129.1-.1-4.7 1.6-6.4 5.9-7.5 12.5-3 24.9-6.1 37.3-9.7 4.3-1.3 6.8-.2 8.4 3.5 4.5 10.3 8.8 20.6 13.2 30.9 1.6 3.7.1 4.4-3.4 4.4-10-.2-20-.1-30.4-.1v27h116c-1.4-9.5-2.7-18.1-4-27.5-7 0-13.8.4-20.4-.1-22.6-1.6-18.3-4.4-84-158.6-8.8-20.1-27.9-62.1-36.5-89.2-4.4-14 5.5-25.4 18.9-26.6 18.6-1.7 37.5-1.6 56.2-2 20.6-.4 41.2-.4 61.8-.5 3.1 0 4-1.4 4.3-4.3 1.2-9.8 2.7-19.5 4-29.2.8-5.3 1.6-10.7 2.4-16.1L23.75 0c-3.6 0-5.3 1.1-4.6 5.3 2.2 13.2-.8.8 6.4 45.3 63.4 0 71.8.9 101.8.5 12.3-.2 37 3.5 37.7 22.1.4 11.4-1.1 11.3-32.6 87.4-53.8 129.8-50.7 120.3-67.3 161-1.7 4.1-3.6 5.2-7.6 5.2-8.5-.2-17-.3-25.4.1-1.9.1-5.2 1.8-5.5 3.2-1.5 8.1-2.2 16.3-3.2 24.9h114.3v-27.6c-6.9 0-33.5.4-35.3-2.9 5.3-12.3 10.4-24.4 15.7-36.7 16.3 4 31.9 7.8 47.6 11.7 3.4.9 4.6 3 4.6 6.8-.1 42.9.1 85.9.2 128.8 0 10.2-5.5 19.1-14.9 23.1-6.5 2.7-3.3 3.4-121.4 2.4-5.3 0-7.1 2-7.6 6.8-1.5 12.9-2.9 25.9-5 38.8-.8 5 1.3 5.7 5.3 5.7 183.2.6-30.7 0 337.1 0-2.5-15-4.4-29.4-6.6-43.7zm-174.9-205.7c-13.3-4.2-26.6-8.2-39.9-12.5a44.53 44.53 0 0 1-5.8-2.9c17.2-44.3 34.2-88.1 51.3-132.1 7.5 2.4 7.9-.8 9.4 0 9.3 22.5 18.1 60.1 27 82.8 6.6 16.7 13 33.5 19.7 50.9a35.78 35.78 0 0 1-3.9 2.1c-13.1 3.9-26.4 7.5-39.4 11.7a27.66 27.66 0 0 1-18.4 0z"], + "adn": [496, 512, [], "f170", "M248 167.5l64.9 98.8H183.1l64.9-98.8zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-99.8 82.7L248 115.5 99.8 338.7h30.4l33.6-51.7h168.6l33.6 51.7h30.2z"], + "adversal": [512, 512, [], "f36a", "M482.1 32H28.7C5.8 32 0 37.9 0 60.9v390.2C0 474.4 5.8 480 28.7 480h453.4c24.4 0 29.9-5.2 29.9-29.7V62.2c0-24.6-5.4-30.2-29.9-30.2zM178.4 220.3c-27.5-20.2-72.1-8.7-84.2 23.4-4.3 11.1-9.3 9.5-17.5 8.3-9.7-1.5-17.2-3.2-22.5-5.5-28.8-11.4 8.6-55.3 24.9-64.3 41.1-21.4 83.4-22.2 125.3-4.8 40.9 16.8 34.5 59.2 34.5 128.5 2.7 25.8-4.3 58.3 9.3 88.8 1.9 4.4.4 7.9-2.7 10.7-8.4 6.7-39.3 2.2-46.6-7.4-1.9-2.2-1.8-3.6-3.9-6.2-3.6-3.9-7.3-2.2-11.9 1-57.4 36.4-140.3 21.4-147-43.3-3.1-29.3 12.4-57.1 39.6-71 38.2-19.5 112.2-11.8 114-30.9 1.1-10.2-1.9-20.1-11.3-27.3zm286.7 222c0 15.1-11.1 9.9-17.8 9.9H52.4c-7.4 0-18.2 4.8-17.8-10.7.4-13.9 10.5-9.1 17.1-9.1 132.3-.4 264.5-.4 396.8 0 6.8 0 16.6-4.4 16.6 9.9zm3.8-340.5v291c0 5.7-.7 13.9-8.1 13.9-12.4-.4-27.5 7.1-36.1-5.6-5.8-8.7-7.8-4-12.4-1.2-53.4 29.7-128.1 7.1-144.4-85.2-6.1-33.4-.7-67.1 15.7-100 11.8-23.9 56.9-76.1 136.1-30.5v-71c0-26.2-.1-26.2 26-26.2 3.1 0 6.6.4 9.7 0 10.1-.8 13.6 4.4 13.6 14.3-.1.2-.1.3-.1.5zm-51.5 232.3c-19.5 47.6-72.9 43.3-90 5.2-15.1-33.3-15.5-68.2.4-101.5 16.3-34.1 59.7-35.7 81.5-4.8 20.6 28.8 14.9 84.6 8.1 101.1zm-294.8 35.3c-7.5-1.3-33-3.3-33.7-27.8-.4-13.9 7.8-23 19.8-25.8 24.4-5.9 49.3-9.9 73.7-14.7 8.9-2 7.4 4.4 7.8 9.5 1.4 33-26.1 59.2-67.6 58.8z"], + "affiliatetheme": [512, 512, [], "f36b", "M159.7 237.4C108.4 308.3 43.1 348.2 14 326.6-15.2 304.9 2.8 230 54.2 159.1c51.3-70.9 116.6-110.8 145.7-89.2 29.1 21.6 11.1 96.6-40.2 167.5zm351.2-57.3C437.1 303.5 319 367.8 246.4 323.7c-25-15.2-41.3-41.2-49-73.8-33.6 64.8-92.8 113.8-164.1 133.2 49.8 59.3 124.1 96.9 207 96.9 150 0 271.6-123.1 271.6-274.9.1-8.5-.3-16.8-1-25z"], + "airbnb": [448, 512, [], "f834", "M224 373.12c-25.24-31.67-40.08-59.43-45-83.18-22.55-88 112.61-88 90.06 0-5.45 24.25-20.29 52-45 83.18zm138.15 73.23c-42.06 18.31-83.67-10.88-119.3-50.47 103.9-130.07 46.11-200-18.85-200-54.92 0-85.16 46.51-73.28 100.5 6.93 29.19 25.23 62.39 54.43 99.5-32.53 36.05-60.55 52.69-85.15 54.92-50 7.43-89.11-41.06-71.3-91.09 15.1-39.16 111.72-231.18 115.87-241.56 15.75-30.07 25.56-57.4 59.38-57.4 32.34 0 43.4 25.94 60.37 59.87 36 70.62 89.35 177.48 114.84 239.09 13.17 33.07-1.37 71.29-37.01 86.64zm47-136.12C280.27 35.93 273.13 32 224 32c-45.52 0-64.87 31.67-84.66 72.79C33.18 317.1 22.89 347.19 22 349.81-3.22 419.14 48.74 480 111.63 480c21.71 0 60.61-6.06 112.37-62.4 58.68 63.78 101.26 62.4 112.37 62.4 62.89.05 114.85-60.86 89.61-130.19.02-3.89-16.82-38.9-16.82-39.58z"], + "algolia": [448, 512, [], "f36c", "M229.3 182.6c-49.3 0-89.2 39.9-89.2 89.2 0 49.3 39.9 89.2 89.2 89.2s89.2-39.9 89.2-89.2c0-49.3-40-89.2-89.2-89.2zm62.7 56.6l-58.9 30.6c-1.8.9-3.8-.4-3.8-2.3V201c0-1.5 1.3-2.7 2.7-2.6 26.2 1 48.9 15.7 61.1 37.1.7 1.3.2 3-1.1 3.7zM389.1 32H58.9C26.4 32 0 58.4 0 90.9V421c0 32.6 26.4 59 58.9 59H389c32.6 0 58.9-26.4 58.9-58.9V90.9C448 58.4 421.6 32 389.1 32zm-202.6 84.7c0-10.8 8.7-19.5 19.5-19.5h45.3c10.8 0 19.5 8.7 19.5 19.5v15.4c0 1.8-1.7 3-3.3 2.5-12.3-3.4-25.1-5.1-38.1-5.1-13.5 0-26.7 1.8-39.4 5.5-1.7.5-3.4-.8-3.4-2.5v-15.8zm-84.4 37l9.2-9.2c7.6-7.6 19.9-7.6 27.5 0l7.7 7.7c1.1 1.1 1 3-.3 4-6.2 4.5-12.1 9.4-17.6 14.9-5.4 5.4-10.4 11.3-14.8 17.4-1 1.3-2.9 1.5-4 .3l-7.7-7.7c-7.6-7.5-7.6-19.8 0-27.4zm127.2 244.8c-70 0-126.6-56.7-126.6-126.6s56.7-126.6 126.6-126.6c70 0 126.6 56.6 126.6 126.6 0 69.8-56.7 126.6-126.6 126.6z"], + "alipay": [448, 512, [], "f642", "M377.74 32H70.26C31.41 32 0 63.41 0 102.26v307.48C0 448.59 31.41 480 70.26 480h307.48c38.52 0 69.76-31.08 70.26-69.6-45.96-25.62-110.59-60.34-171.6-88.44-32.07 43.97-84.14 81-148.62 81-70.59 0-93.73-45.3-97.04-76.37-3.97-39.01 14.88-81.5 99.52-81.5 35.38 0 79.35 10.25 127.13 24.96 16.53-30.09 26.45-60.34 26.45-60.34h-178.2v-16.7h92.08v-31.24H88.28v-19.01h109.44V92.34h50.92v50.42h109.44v19.01H248.63v31.24h88.77s-15.21 46.62-38.35 90.92c48.93 16.7 100.01 36.04 148.62 52.74V102.26C447.83 63.57 416.43 32 377.74 32zM47.28 322.95c.99 20.17 10.25 53.73 69.93 53.73 52.07 0 92.58-39.68 117.87-72.9-44.63-18.68-84.48-31.41-109.44-31.41-67.45 0-79.35 33.06-78.36 50.58z"], + "amazon": [448, 512, [], "f270", "M257.2 162.7c-48.7 1.8-169.5 15.5-169.5 117.5 0 109.5 138.3 114 183.5 43.2 6.5 10.2 35.4 37.5 45.3 46.8l56.8-56S341 288.9 341 261.4V114.3C341 89 316.5 32 228.7 32 140.7 32 94 87 94 136.3l73.5 6.8c16.3-49.5 54.2-49.5 54.2-49.5 40.7-.1 35.5 29.8 35.5 69.1zm0 86.8c0 80-84.2 68-84.2 17.2 0-47.2 50.5-56.7 84.2-57.8v40.6zm136 163.5c-7.7 10-70 67-174.5 67S34.2 408.5 9.7 379c-6.8-7.7 1-11.3 5.5-8.3C88.5 415.2 203 488.5 387.7 401c7.5-3.7 13.3 2 5.5 12zm39.8 2.2c-6.5 15.8-16 26.8-21.2 31-5.5 4.5-9.5 2.7-6.5-3.8s19.3-46.5 12.7-55c-6.5-8.3-37-4.3-48-3.2-10.8 1-13 2-14-.3-2.3-5.7 21.7-15.5 37.5-17.5 15.7-1.8 41-.8 46 5.7 3.7 5.1 0 27.1-6.5 43.1z"], + "amazon-pay": [640, 512, [], "f42c", "M14 325.3c2.3-4.2 5.2-4.9 9.7-2.5 10.4 5.6 20.6 11.4 31.2 16.7a595.88 595.88 0 0 0 127.4 46.3 616.61 616.61 0 0 0 63.2 11.8 603.33 603.33 0 0 0 95 5.2c17.4-.4 34.8-1.8 52.1-3.8a603.66 603.66 0 0 0 163.3-42.8c2.9-1.2 5.9-2 9.1-1.2 6.7 1.8 9 9 4.1 13.9a70 70 0 0 1-9.6 7.4c-30.7 21.1-64.2 36.4-99.6 47.9a473.31 473.31 0 0 1-75.1 17.6 431 431 0 0 1-53.2 4.8 21.3 21.3 0 0 0-2.5.3H308a21.3 21.3 0 0 0-2.5-.3c-3.6-.2-7.2-.3-10.7-.4a426.3 426.3 0 0 1-50.4-5.3A448.4 448.4 0 0 1 164 420a443.33 443.33 0 0 1-145.6-87c-1.8-1.6-3-3.8-4.4-5.7zM172 65.1l-4.3.6a80.92 80.92 0 0 0-38 15.1c-2.4 1.7-4.6 3.5-7.1 5.4a4.29 4.29 0 0 1-.4-1.4c-.4-2.7-.8-5.5-1.3-8.2-.7-4.6-3-6.6-7.6-6.6h-11.5c-6.9 0-8.2 1.3-8.2 8.2v209.3c0 1 0 2 .1 3 .2 3 2 4.9 4.9 5 7 .1 14.1.1 21.1 0 2.9 0 4.7-2 5-5 .1-1 .1-2 .1-3v-72.4c1.1.9 1.7 1.4 2.2 1.9 17.9 14.9 38.5 19.8 61 15.4 20.4-4 34.6-16.5 43.8-34.9 7-13.9 9.9-28.7 10.3-44.1.5-17.1-1.2-33.9-8.1-49.8-8.5-19.6-22.6-32.5-43.9-36.9-3.2-.7-6.5-1-9.8-1.5-2.8-.1-5.5-.1-8.3-.1zM124.6 107a3.48 3.48 0 0 1 1.7-3.3c13.7-9.5 28.8-14.5 45.6-13.2 14.9 1.1 27.1 8.4 33.5 25.9 3.9 10.7 4.9 21.8 4.9 33 0 10.4-.8 20.6-4 30.6-6.8 21.3-22.4 29.4-42.6 28.5-14-.6-26.2-6-37.4-13.9a3.57 3.57 0 0 1-1.7-3.3c.1-14.1 0-28.1 0-42.2s.1-28 0-42.1zm205.7-41.9c-1 .1-2 .3-2.9.4a148 148 0 0 0-28.9 4.1c-6.1 1.6-12 3.8-17.9 5.8-3.6 1.2-5.4 3.8-5.3 7.7.1 3.3-.1 6.6 0 9.9.1 4.8 2.1 6.1 6.8 4.9 7.8-2 15.6-4.2 23.5-5.7 12.3-2.3 24.7-3.3 37.2-1.4 6.5 1 12.6 2.9 16.8 8.4 3.7 4.8 5.1 10.5 5.3 16.4.3 8.3.2 16.6.3 24.9a7.84 7.84 0 0 1-.2 1.4c-.5-.1-.9 0-1.3-.1a180.56 180.56 0 0 0-32-4.9c-11.3-.6-22.5.1-33.3 3.9-12.9 4.5-23.3 12.3-29.4 24.9-4.7 9.8-5.4 20.2-3.9 30.7 2 14 9 24.8 21.4 31.7 11.9 6.6 24.8 7.4 37.9 5.4 15.1-2.3 28.5-8.7 40.3-18.4a7.36 7.36 0 0 1 1.6-1.1c.6 3.8 1.1 7.4 1.8 11 .6 3.1 2.5 5.1 5.4 5.2 5.4.1 10.9.1 16.3 0a4.84 4.84 0 0 0 4.8-4.7 26.2 26.2 0 0 0 .1-2.8v-106a80 80 0 0 0-.9-12.9c-1.9-12.9-7.4-23.5-19-30.4-6.7-4-14.1-6-21.8-7.1-3.6-.5-7.2-.8-10.8-1.3-3.9.1-7.9.1-11.9.1zm35 127.7a3.33 3.33 0 0 1-1.5 3c-11.2 8.1-23.5 13.5-37.4 14.9-5.7.6-11.4.4-16.8-1.8a20.08 20.08 0 0 1-12.4-13.3 32.9 32.9 0 0 1-.1-19.4c2.5-8.3 8.4-13 16.4-15.6a61.33 61.33 0 0 1 24.8-2.2c8.4.7 16.6 2.3 25 3.4 1.6.2 2.1 1 2.1 2.6-.1 4.8 0 9.5 0 14.3s-.2 9.4-.1 14.1zm259.9 129.4c-1-5-4.8-6.9-9.1-8.3a88.42 88.42 0 0 0-21-3.9 147.32 147.32 0 0 0-39.2 1.9c-14.3 2.7-27.9 7.3-40 15.6a13.75 13.75 0 0 0-3.7 3.5 5.11 5.11 0 0 0-.5 4c.4 1.5 2.1 1.9 3.6 1.8a16.2 16.2 0 0 0 2.2-.1c7.8-.8 15.5-1.7 23.3-2.5 11.4-1.1 22.9-1.8 34.3-.9a71.64 71.64 0 0 1 14.4 2.7c5.1 1.4 7.4 5.2 7.6 10.4.4 8-1.4 15.7-3.5 23.3-4.1 15.4-10 30.3-15.8 45.1a17.6 17.6 0 0 0-1 3c-.5 2.9 1.2 4.8 4.1 4.1a10.56 10.56 0 0 0 4.8-2.5 145.91 145.91 0 0 0 12.7-13.4c12.8-16.4 20.3-35.3 24.7-55.6.8-3.6 1.4-7.3 2.1-10.9v-17.3zM493.1 199q-19.35-53.55-38.7-107.2c-2-5.7-4.2-11.3-6.3-16.9-1.1-2.9-3.2-4.8-6.4-4.8-7.6-.1-15.2-.2-22.9-.1-2.5 0-3.7 2-3.2 4.5a43.1 43.1 0 0 0 1.9 6.1q29.4 72.75 59.1 145.5c1.7 4.1 2.1 7.6.2 11.8-3.3 7.3-5.9 15-9.3 22.3-3 6.5-8 11.4-15.2 13.3a42.13 42.13 0 0 1-15.4 1.1c-2.5-.2-5-.8-7.5-1-3.4-.2-5.1 1.3-5.2 4.8q-.15 5 0 9.9c.1 5.5 2 8 7.4 8.9a108.18 108.18 0 0 0 16.9 2c17.1.4 30.7-6.5 39.5-21.4a131.63 131.63 0 0 0 9.2-18.4q35.55-89.7 70.6-179.6a26.62 26.62 0 0 0 1.6-5.5c.4-2.8-.9-4.4-3.7-4.4-6.6-.1-13.3 0-19.9 0a7.54 7.54 0 0 0-7.7 5.2c-.5 1.4-1.1 2.7-1.6 4.1l-34.8 100c-2.5 7.2-5.1 14.5-7.7 22.2-.4-1.1-.6-1.7-.9-2.4z"], + "amilia": [448, 512, [], "f36d", "M240.1 32c-61.9 0-131.5 16.9-184.2 55.4-5.1 3.1-9.1 9.2-7.2 19.4 1.1 5.1 5.1 27.4 10.2 39.6 4.1 10.2 14.2 10.2 20.3 6.1 32.5-22.3 96.5-47.7 152.3-47.7 57.9 0 58.9 28.4 58.9 73.1v38.5C203 227.7 78.2 251 46.7 264.2 11.2 280.5 16.3 357.7 16.3 376s15.2 104 124.9 104c47.8 0 113.7-20.7 153.3-42.1v25.4c0 3 2.1 8.2 6.1 9.1 3.1 1 50.7 2 59.9 2s62.5.3 66.5-.7c4.1-1 5.1-6.1 5.1-9.1V168c-.1-80.3-57.9-136-192-136zm50.2 348c-21.4 13.2-48.7 24.4-79.1 24.4-52.8 0-58.9-33.5-59-44.7 0-12.2-3-42.7 18.3-52.9 24.3-13.2 75.1-29.4 119.8-33.5z"], + "android": [576, 512, [], "f17b", "M420.55,301.93a24,24,0,1,1,24-24,24,24,0,0,1-24,24m-265.1,0a24,24,0,1,1,24-24,24,24,0,0,1-24,24m273.7-144.48,47.94-83a10,10,0,1,0-17.27-10h0l-48.54,84.07a301.25,301.25,0,0,0-246.56,0L116.18,64.45a10,10,0,1,0-17.27,10h0l47.94,83C64.53,202.22,8.24,285.55,0,384H576c-8.24-98.45-64.54-181.78-146.85-226.55"], + "angellist": [448, 512, [], "f209", "M347.1 215.4c11.7-32.6 45.4-126.9 45.4-157.1 0-26.6-15.7-48.9-43.7-48.9-44.6 0-84.6 131.7-97.1 163.1C242 144 196.6 0 156.6 0c-31.1 0-45.7 22.9-45.7 51.7 0 35.3 34.2 126.8 46.6 162-6.3-2.3-13.1-4.3-20-4.3-23.4 0-48.3 29.1-48.3 52.6 0 8.9 4.9 21.4 8 29.7-36.9 10-51.1 34.6-51.1 71.7C46 435.6 114.4 512 210.6 512c118 0 191.4-88.6 191.4-202.9 0-43.1-6.9-82-54.9-93.7zM311.7 108c4-12.3 21.1-64.3 37.1-64.3 8.6 0 10.9 8.9 10.9 16 0 19.1-38.6 124.6-47.1 148l-34-6 33.1-93.7zM142.3 48.3c0-11.9 14.5-45.7 46.3 47.1l34.6 100.3c-15.6-1.3-27.7-3-35.4 1.4-10.9-28.8-45.5-119.7-45.5-148.8zM140 244c29.3 0 67.1 94.6 67.1 107.4 0 5.1-4.9 11.4-10.6 11.4-20.9 0-76.9-76.9-76.9-97.7.1-7.7 12.7-21.1 20.4-21.1zm184.3 186.3c-29.1 32-66.3 48.6-109.7 48.6-59.4 0-106.3-32.6-128.9-88.3-17.1-43.4 3.8-68.3 20.6-68.3 11.4 0 54.3 60.3 54.3 73.1 0 4.9-7.7 8.3-11.7 8.3-16.1 0-22.4-15.5-51.1-51.4-29.7 29.7 20.5 86.9 58.3 86.9 26.1 0 43.1-24.2 38-42 3.7 0 8.3.3 11.7-.6 1.1 27.1 9.1 59.4 41.7 61.7 0-.9 2-7.1 2-7.4 0-17.4-10.6-32.6-10.6-50.3 0-28.3 21.7-55.7 43.7-71.7 8-6 17.7-9.7 27.1-13.1 9.7-3.7 20-8 27.4-15.4-1.1-11.2-5.7-21.1-16.9-21.1-27.7 0-120.6 4-120.6-39.7 0-6.7.1-13.1 17.4-13.1 32.3 0 114.3 8 138.3 29.1 18.1 16.1 24.3 113.2-31 174.7zm-98.6-126c9.7 3.1 19.7 4 29.7 6-7.4 5.4-14 12-20.3 19.1-2.8-8.5-6.2-16.8-9.4-25.1z"], + "angrycreative": [640, 512, [], "f36e", "M640 238.2l-3.2 28.2-34.5 2.3-2 18.1 34.5-2.3-3.2 28.2-34.4 2.2-2.3 20.1 34.4-2.2-3 26.1-64.7 4.1 12.7-113.2L527 365.2l-31.9 2-23.8-117.8 30.3-2 13.6 79.4 31.7-82.4 93.1-6.2zM426.8 371.5l28.3-1.8L468 249.6l-28.4 1.9-12.8 120zM162 388.1l-19.4-36-3.5 37.4-28.2 1.7 2.7-29.1c-11 18-32 34.3-56.9 35.8C23.9 399.9-3 377 .3 339.7c2.6-29.3 26.7-62.8 67.5-65.4 37.7-2.4 47.6 23.2 51.3 28.8l2.8-30.8 38.9-2.5c20.1-1.3 38.7 3.7 42.5 23.7l2.6-26.6 64.8-4.2-2.7 27.9-36.4 2.4-1.7 17.9 36.4-2.3-2.7 27.9-36.4 2.3-1.9 19.9 36.3-2.3-2.1 20.8 55-117.2 23.8-1.6L370.4 369l8.9-85.6-22.3 1.4 2.9-27.9 75-4.9-3 28-24.3 1.6-9.7 91.9-58 3.7-4.3-15.6-39.4 2.5-8 16.3-126.2 7.7zm-44.3-70.2l-26.4 1.7C84.6 307.2 76.9 303 65 303.8c-19 1.2-33.3 17.5-34.6 33.3-1.4 16 7.3 32.5 28.7 31.2 12.8-.8 21.3-8.6 28.9-18.9l27-1.7 2.7-29.8zm56.1-7.7c1.2-12.9-7.6-13.6-26.1-12.4l-2.7 28.5c14.2-.9 27.5-2.1 28.8-16.1zm21.1 70.8l5.8-60c-5 13.5-14.7 21.1-27.9 26.6l22.1 33.4zm135.4-45l-7.9-37.8-15.8 39.3 23.7-1.5zm-170.1-74.6l-4.3-17.5-39.6 2.6-8.1 18.2-31.9 2.1 57-121.9 23.9-1.6 30.7 102 9.9-104.7 27-1.8 37.8 63.6 6.5-66.6 28.5-1.9-4 41.2c7.4-13.5 22.9-44.7 63.6-47.5 40.5-2.8 52.4 29.3 53.4 30.3l3.3-32 39.3-2.7c12.7-.9 27.8.3 36.3 9.7l-4.4-11.9 32.2-2.2 12.9 43.2 23-45.7 31-2.2-43.6 78.4-4.8 44.3-28.4 1.9 4.8-44.3-15.8-43c1 22.3-9.2 40.1-32 49.6l25.2 38.8-36.4 2.4-19.2-36.8-4 38.3-28.4 1.9 3.3-31.5c-6.7 9.3-19.7 35.4-59.6 38-26.2 1.7-45.6-10.3-55.4-39.2l-4 40.3-25 1.6-37.6-63.3-6.3 66.2-56.8 3.7zm276.6-82.1c10.2-.7 17.5-2.1 21.6-4.3 4.5-2.4 7-6.4 7.6-12.1.6-5.3-.6-8.8-3.4-10.4-3.6-2.1-10.6-2.8-22.9-2l-2.9 28.8zM327.7 214c5.6 5.9 12.7 8.5 21.3 7.9 4.7-.3 9.1-1.8 13.3-4.1 5.5-3 10.6-8 15.1-14.3l-34.2 2.3 2.4-23.9 63.1-4.3 1.2-12-31.2 2.1c-4.1-3.7-7.8-6.6-11.1-8.1-4-1.7-8.1-2.8-12.2-2.5-8 .5-15.3 3.6-22 9.2-7.7 6.4-12 14.5-12.9 24.4-1.1 9.6 1.4 17.3 7.2 23.3zm-201.3 8.2l23.8-1.6-8.3-37.6-15.5 39.2z"], + "angular": [448, 512, [], "f420", "M185.7 268.1h76.2l-38.1-91.6-38.1 91.6zM223.8 32L16 106.4l31.8 275.7 176 97.9 176-97.9 31.8-275.7zM354 373.8h-48.6l-26.2-65.4H168.6l-26.2 65.4H93.7L223.8 81.5z"], + "app-store": [512, 512, [], "f36f", "M255.9 120.9l9.1-15.7c5.6-9.8 18.1-13.1 27.9-7.5 9.8 5.6 13.1 18.1 7.5 27.9l-87.5 151.5h63.3c20.5 0 32 24.1 23.1 40.8H113.8c-11.3 0-20.4-9.1-20.4-20.4 0-11.3 9.1-20.4 20.4-20.4h52l66.6-115.4-20.8-36.1c-5.6-9.8-2.3-22.2 7.5-27.9 9.8-5.6 22.2-2.3 27.9 7.5l8.9 15.7zm-78.7 218l-19.6 34c-5.6 9.8-18.1 13.1-27.9 7.5-9.8-5.6-13.1-18.1-7.5-27.9l14.6-25.2c16.4-5.1 29.8-1.2 40.4 11.6zm168.9-61.7h53.1c11.3 0 20.4 9.1 20.4 20.4 0 11.3-9.1 20.4-20.4 20.4h-29.5l19.9 34.5c5.6 9.8 2.3 22.2-7.5 27.9-9.8 5.6-22.2 2.3-27.9-7.5-33.5-58.1-58.7-101.6-75.4-130.6-17.1-29.5-4.9-59.1 7.2-69.1 13.4 23 33.4 57.7 60.1 104zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm216 248c0 118.7-96.1 216-216 216-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216z"], + "app-store-ios": [448, 512, [], "f370", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM127 384.5c-5.5 9.6-17.8 12.8-27.3 7.3-9.6-5.5-12.8-17.8-7.3-27.3l14.3-24.7c16.1-4.9 29.3-1.1 39.6 11.4L127 384.5zm138.9-53.9H84c-11 0-20-9-20-20s9-20 20-20h51l65.4-113.2-20.5-35.4c-5.5-9.6-2.2-21.8 7.3-27.3 9.6-5.5 21.8-2.2 27.3 7.3l8.9 15.4 8.9-15.4c5.5-9.6 17.8-12.8 27.3-7.3 9.6 5.5 12.8 17.8 7.3 27.3l-85.8 148.6h62.1c20.2 0 31.5 23.7 22.7 40zm98.1 0h-29l19.6 33.9c5.5 9.6 2.2 21.8-7.3 27.3-9.6 5.5-21.8 2.2-27.3-7.3-32.9-56.9-57.5-99.7-74-128.1-16.7-29-4.8-58 7.1-67.8 13.1 22.7 32.7 56.7 58.9 102h52c11 0 20 9 20 20 0 11.1-9 20-20 20z"], + "apper": [640, 512, [], "f371", "M42.1 239.1c22.2 0 29 2.8 33.5 14.6h.8v-22.9c0-11.3-4.8-15.4-17.9-15.4-11.3 0-14.4 2.5-15.1 12.8H4.8c.3-13.9 1.5-19.1 5.8-24.4C17.9 195 29.5 192 56.7 192c33 0 47.1 5 53.9 18.9 2 4.3 4 15.6 4 23.7v76.3H76.3l1.3-19.1h-1c-5.3 15.6-13.6 20.4-35.5 20.4-30.3 0-41.1-10.1-41.1-37.3 0-25.2 12.3-35.8 42.1-35.8zm17.1 48.1c13.1 0 16.9-3 16.9-13.4 0-9.1-4.3-11.6-19.6-11.6-13.1 0-17.9 3-17.9 12.1-.1 10.4 3.7 12.9 20.6 12.9zm77.8-94.9h38.3l-1.5 20.6h.8c9.1-17.1 15.9-20.9 37.5-20.9 14.4 0 24.7 3 31.5 9.1 9.8 8.6 12.8 20.4 12.8 48.1 0 30-3 43.1-12.1 52.9-6.8 7.3-16.4 10.1-33.2 10.1-20.4 0-29.2-5.5-33.8-21.2h-.8v70.3H137v-169zm80.9 60.7c0-27.5-3.3-32.5-20.7-32.5-16.9 0-20.7 5-20.7 28.7 0 28 3.5 33.5 21.2 33.5 16.4 0 20.2-5.6 20.2-29.7zm57.9-60.7h38.3l-1.5 20.6h.8c9.1-17.1 15.9-20.9 37.5-20.9 14.4 0 24.7 3 31.5 9.1 9.8 8.6 12.8 20.4 12.8 48.1 0 30-3 43.1-12.1 52.9-6.8 7.3-16.4 10.1-33.3 10.1-20.4 0-29.2-5.5-33.8-21.2h-.8v70.3h-39.5v-169zm80.9 60.7c0-27.5-3.3-32.5-20.7-32.5-16.9 0-20.7 5-20.7 28.7 0 28 3.5 33.5 21.2 33.5 16.4 0 20.2-5.6 20.2-29.7zm53.8-3.8c0-25.4 3.3-37.8 12.3-45.8 8.8-8.1 22.2-11.3 45.1-11.3 42.8 0 55.7 12.8 55.7 55.7v11.1h-75.3c-.3 2-.3 4-.3 4.8 0 16.9 4.5 21.9 20.1 21.9 13.9 0 17.9-3 17.9-13.9h37.5v2.3c0 9.8-2.5 18.9-6.8 24.7-7.3 9.8-19.6 13.6-44.3 13.6-27.5 0-41.6-3.3-50.6-12.3-8.5-8.5-11.3-21.3-11.3-50.8zm76.4-11.6c-.3-1.8-.3-3.3-.3-3.8 0-12.3-3.3-14.6-19.6-14.6-14.4 0-17.1 3-18.1 15.1l-.3 3.3h38.3zm55.6-45.3h38.3l-1.8 19.9h.7c6.8-14.9 14.4-20.2 29.7-20.2 10.8 0 19.1 3.3 23.4 9.3 5.3 7.3 6.8 14.4 6.8 34 0 1.5 0 5 .2 9.3h-35c.3-1.8.3-3.3.3-4 0-15.4-2-19.4-10.3-19.4-6.3 0-10.8 3.3-13.1 9.3-1 3-1 4.3-1 12.3v68h-38.3V192.3z"], + "apple": [384, 512, [], "f179", "M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z"], + "apple-pay": [640, 512, [], "f415", "M116.9 158.5c-7.5 8.9-19.5 15.9-31.5 14.9-1.5-12 4.4-24.8 11.3-32.6 7.5-9.1 20.6-15.6 31.3-16.1 1.2 12.4-3.7 24.7-11.1 33.8m10.9 17.2c-17.4-1-32.3 9.9-40.5 9.9-8.4 0-21-9.4-34.8-9.1-17.9.3-34.5 10.4-43.6 26.5-18.8 32.3-4.9 80 13.3 106.3 8.9 13 19.5 27.3 33.5 26.8 13.3-.5 18.5-8.6 34.5-8.6 16.1 0 20.8 8.6 34.8 8.4 14.5-.3 23.6-13 32.5-26 10.1-14.8 14.3-29.1 14.5-29.9-.3-.3-28-10.9-28.3-42.9-.3-26.8 21.9-39.5 22.9-40.3-12.5-18.6-32-20.6-38.8-21.1m100.4-36.2v194.9h30.3v-66.6h41.9c38.3 0 65.1-26.3 65.1-64.3s-26.4-64-64.1-64h-73.2zm30.3 25.5h34.9c26.3 0 41.3 14 41.3 38.6s-15 38.8-41.4 38.8h-34.8V165zm162.2 170.9c19 0 36.6-9.6 44.6-24.9h.6v23.4h28v-97c0-28.1-22.5-46.3-57.1-46.3-32.1 0-55.9 18.4-56.8 43.6h27.3c2.3-12 13.4-19.9 28.6-19.9 18.5 0 28.9 8.6 28.9 24.5v10.8l-37.8 2.3c-35.1 2.1-54.1 16.5-54.1 41.5.1 25.2 19.7 42 47.8 42zm8.2-23.1c-16.1 0-26.4-7.8-26.4-19.6 0-12.3 9.9-19.4 28.8-20.5l33.6-2.1v11c0 18.2-15.5 31.2-36 31.2zm102.5 74.6c29.5 0 43.4-11.3 55.5-45.4L640 193h-30.8l-35.6 115.1h-.6L537.4 193h-31.6L557 334.9l-2.8 8.6c-4.6 14.6-12.1 20.3-25.5 20.3-2.4 0-7-.3-8.9-.5v23.4c1.8.4 9.3.7 11.6.7z"], + "artstation": [512, 512, [], "f77a", "M2 377.4l43 74.3A51.35 51.35 0 0 0 90.9 480h285.4l-59.2-102.6zM501.8 350L335.6 59.3A51.38 51.38 0 0 0 290.2 32h-88.4l257.3 447.6 40.7-70.5c1.9-3.2 21-29.7 2-59.1zM275 304.5l-115.5-200L44 304.5z"], + "asymmetrik": [576, 512, [], "f372", "M517.5 309.2c38.8-40 58.1-80 58.5-116.1.8-65.5-59.4-118.2-169.4-135C277.9 38.4 118.1 73.6 0 140.5 52 114 110.6 92.3 170.7 82.3c74.5-20.5 153-25.4 221.3-14.8C544.5 91.3 588.8 195 490.8 299.2c-10.2 10.8-22 21.1-35 30.6L304.9 103.4 114.7 388.9c-65.6-29.4-76.5-90.2-19.1-151.2 20.8-22.2 48.3-41.9 79.5-58.1 20-12.2 39.7-22.6 62-30.7-65.1 20.3-122.7 52.9-161.6 92.9-27.7 28.6-41.4 57.1-41.7 82.9-.5 35.1 23.4 65.1 68.4 83l-34.5 51.7h101.6l22-34.4c22.2 1 45.3 0 68.6-2.7l-22.8 37.1h135.5L340 406.3c18.6-5.3 36.9-11.5 54.5-18.7l45.9 71.8H542L468.6 349c18.5-12.1 35-25.5 48.9-39.8zm-187.6 80.5l-25-40.6-32.7 53.3c-23.4 3.5-46.7 5.1-69.2 4.4l101.9-159.3 78.7 123c-17.2 7.4-35.3 13.9-53.7 19.2z"], + "atlassian": [512, 512, [], "f77b", "M152.2 236.4c-7.7-8.2-19.7-7.7-24.8 2.8L1.6 490.2c-5 10 2.4 21.7 13.4 21.7h175c5.8.1 11-3.2 13.4-8.4 37.9-77.8 15.1-196.3-51.2-267.1zM244.4 8.1c-122.3 193.4-8.5 348.6 65 495.5 2.5 5.1 7.7 8.4 13.4 8.4H497c11.2 0 18.4-11.8 13.4-21.7 0 0-234.5-470.6-240.4-482.3-5.3-10.6-18.8-10.8-25.6.1z"], + "audible": [640, 512, [], "f373", "M640 199.9v54l-320 200L0 254v-54l320 200 320-200.1zm-194.5 72l47.1-29.4c-37.2-55.8-100.7-92.6-172.7-92.6-72 0-135.5 36.7-172.6 92.4h.3c2.5-2.3 5.1-4.5 7.7-6.7 89.7-74.4 219.4-58.1 290.2 36.3zm-220.1 18.8c16.9-11.9 36.5-18.7 57.4-18.7 34.4 0 65.2 18.4 86.4 47.6l45.4-28.4c-20.9-29.9-55.6-49.5-94.8-49.5-38.9 0-73.4 19.4-94.4 49zM103.6 161.1c131.8-104.3 318.2-76.4 417.5 62.1l.7 1 48.8-30.4C517.1 112.1 424.8 58.1 319.9 58.1c-103.5 0-196.6 53.5-250.5 135.6 9.9-10.5 22.7-23.5 34.2-32.6zm467 32.7z"], + "autoprefixer": [640, 512, [], "f41c", "M318.4 16l-161 480h77.5l25.4-81.4h119.5L405 496h77.5L318.4 16zm-40.3 341.9l41.2-130.4h1.5l40.9 130.4h-83.6zM640 405l-10-31.4L462.1 358l19.4 56.5L640 405zm-462.1-47L10 373.7 0 405l158.5 9.4 19.4-56.4z"], + "avianex": [512, 512, [], "f374", "M453.1 32h-312c-38.9 0-76.2 31.2-83.3 69.7L1.2 410.3C-5.9 448.8 19.9 480 58.9 480h312c38.9 0 76.2-31.2 83.3-69.7l56.7-308.5c7-38.6-18.8-69.8-57.8-69.8zm-58.2 347.3l-32 13.5-115.4-110c-14.7 10-29.2 19.5-41.7 27.1l22.1 64.2-17.9 12.7-40.6-61-52.4-48.1 15.7-15.4 58 31.1c9.3-10.5 20.8-22.6 32.8-34.9L203 228.9l-68.8-99.8 18.8-28.9 8.9-4.8L265 207.8l4.9 4.5c19.4-18.8 33.8-32.4 33.8-32.4 7.7-6.5 21.5-2.9 30.7 7.9 9 10.5 10.6 24.7 2.7 31.3-1.8 1.3-15.5 11.4-35.3 25.6l4.5 7.3 94.9 119.4-6.3 7.9z"], + "aviato": [640, 512, [], "f421", "M107.2 283.5l-19-41.8H36.1l-19 41.8H0l62.2-131.4 62.2 131.4h-17.2zm-45-98.1l-19.6 42.5h39.2l-19.6-42.5zm112.7 102.4l-62.2-131.4h17.1l45.1 96 45.1-96h17l-62.1 131.4zm80.6-4.3V156.4H271v127.1h-15.5zm209.1-115.6v115.6h-17.3V167.9h-41.2v-11.5h99.6v11.5h-41.1zM640 218.8c0 9.2-1.7 17.8-5.1 25.8-3.4 8-8.2 15.1-14.2 21.1-6 6-13.1 10.8-21.1 14.2-8 3.4-16.6 5.1-25.8 5.1s-17.8-1.7-25.8-5.1c-8-3.4-15.1-8.2-21.1-14.2-6-6-10.8-13-14.2-21.1-3.4-8-5.1-16.6-5.1-25.8s1.7-17.8 5.1-25.8c3.4-8 8.2-15.1 14.2-21.1 6-6 13-8.4 21.1-11.9 8-3.4 16.6-5.1 25.8-5.1s17.8 1.7 25.8 5.1c8 3.4 15.1 5.8 21.1 11.9 6 6 10.7 13.1 14.2 21.1 3.4 8 5.1 16.6 5.1 25.8zm-15.5 0c0-7.3-1.3-14-3.9-20.3-2.6-6.3-6.2-11.7-10.8-16.3-4.6-4.6-10-8.2-16.2-10.9-6.2-2.7-12.8-4-19.8-4s-13.6 1.3-19.8 4c-6.2 2.7-11.6 6.3-16.2 10.9-4.6 4.6-8.2 10-10.8 16.3-2.6 6.3-3.9 13.1-3.9 20.3 0 7.3 1.3 14 3.9 20.3 2.6 6.3 6.2 11.7 10.8 16.3 4.6 4.6 10 8.2 16.2 10.9 6.2 2.7 12.8 4 19.8 4s13.6-1.3 19.8-4c6.2-2.7 11.6-6.3 16.2-10.9 4.6-4.6 8.2-10 10.8-16.3 2.6-6.3 3.9-13.1 3.9-20.3zm-94.8 96.7v-6.3l88.9-10-242.9 13.4c.6-2.2 1.1-4.6 1.4-7.2.3-2 .5-4.2.6-6.5l64.8-8.1-64.9 1.9c0-.4-.1-.7-.1-1.1-2.8-17.2-25.5-23.7-25.5-23.7l-1.1-26.3h23.8l19 41.8h17.1L348.6 152l-62.2 131.4h17.1l19-41.8h23.6L345 268s-22.7 6.5-25.5 23.7c-.1.3-.1.7-.1 1.1l-64.9-1.9 64.8 8.1c.1 2.3.3 4.4.6 6.5.3 2.6.8 5 1.4 7.2L78.4 299.2l88.9 10v6.3c-5.9.9-10.5 6-10.5 12.2 0 6.8 5.6 12.4 12.4 12.4 6.8 0 12.4-5.6 12.4-12.4 0-6.2-4.6-11.3-10.5-12.2v-5.8l80.3 9v5.4c-5.7 1.1-9.9 6.2-9.9 12.1 0 6.8 5.6 10.2 12.4 10.2 6.8 0 12.4-3.4 12.4-10.2 0-6-4.3-11-9.9-12.1v-4.9l28.4 3.2v23.7h-5.9V360h5.9v-6.6h5v6.6h5.9v-13.8h-5.9V323l38.3 4.3c8.1 11.4 19 13.6 19 13.6l-.1 6.7-5.1.2-.1 12.1h4.1l.1-5h5.2l.1 5h4.1l-.1-12.1-5.1-.2-.1-6.7s10.9-2.1 19-13.6l38.3-4.3v23.2h-5.9V360h5.9v-6.6h5v6.6h5.9v-13.8h-5.9v-23.7l28.4-3.2v4.9c-5.7 1.1-9.9 6.2-9.9 12.1 0 6.8 5.6 10.2 12.4 10.2 6.8 0 12.4-3.4 12.4-10.2 0-6-4.3-11-9.9-12.1v-5.4l80.3-9v5.8c-5.9.9-10.5 6-10.5 12.2 0 6.8 5.6 12.4 12.4 12.4 6.8 0 12.4-5.6 12.4-12.4-.2-6.3-4.7-11.4-10.7-12.3zm-200.8-87.6l19.6-42.5 19.6 42.5h-17.9l-1.7-40.3-1.7 40.3h-17.9z"], + "aws": [640, 512, [], "f375", "M180.41 203.01c-.72 22.65 10.6 32.68 10.88 39.05a8.164 8.164 0 0 1-4.1 6.27l-12.8 8.96a10.66 10.66 0 0 1-5.63 1.92c-.43-.02-8.19 1.83-20.48-25.61a78.608 78.608 0 0 1-62.61 29.45c-16.28.89-60.4-9.24-58.13-56.21-1.59-38.28 34.06-62.06 70.93-60.05 7.1.02 21.6.37 46.99 6.27v-15.62c2.69-26.46-14.7-46.99-44.81-43.91-2.4.01-19.4-.5-45.84 10.11-7.36 3.38-8.3 2.82-10.75 2.82-7.41 0-4.36-21.48-2.94-24.2 5.21-6.4 35.86-18.35 65.94-18.18a76.857 76.857 0 0 1 55.69 17.28 70.285 70.285 0 0 1 17.67 52.36l-.01 69.29zM93.99 235.4c32.43-.47 46.16-19.97 49.29-30.47 2.46-10.05 2.05-16.41 2.05-27.4-9.67-2.32-23.59-4.85-39.56-4.87-15.15-1.14-42.82 5.63-41.74 32.26-1.24 16.79 11.12 31.4 29.96 30.48zm170.92 23.05c-7.86.72-11.52-4.86-12.68-10.37l-49.8-164.65c-.97-2.78-1.61-5.65-1.92-8.58a4.61 4.61 0 0 1 3.86-5.25c.24-.04-2.13 0 22.25 0 8.78-.88 11.64 6.03 12.55 10.37l35.72 140.83 33.16-140.83c.53-3.22 2.94-11.07 12.8-10.24h17.16c2.17-.18 11.11-.5 12.68 10.37l33.42 142.63L420.98 80.1c.48-2.18 2.72-11.37 12.68-10.37h19.72c.85-.13 6.15-.81 5.25 8.58-.43 1.85 3.41-10.66-52.75 169.9-1.15 5.51-4.82 11.09-12.68 10.37h-18.69c-10.94 1.15-12.51-9.66-12.68-10.75L328.67 110.7l-32.78 136.99c-.16 1.09-1.73 11.9-12.68 10.75h-18.3zm273.48 5.63c-5.88.01-33.92-.3-57.36-12.29a12.802 12.802 0 0 1-7.81-11.91v-10.75c0-8.45 6.2-6.9 8.83-5.89 10.04 4.06 16.48 7.14 28.81 9.6 36.65 7.53 52.77-2.3 56.72-4.48 13.15-7.81 14.19-25.68 5.25-34.95-10.48-8.79-15.48-9.12-53.13-21-4.64-1.29-43.7-13.61-43.79-52.36-.61-28.24 25.05-56.18 69.52-55.95 12.67-.01 46.43 4.13 55.57 15.62 1.35 2.09 2.02 4.55 1.92 7.04v10.11c0 4.44-1.62 6.66-4.87 6.66-7.71-.86-21.39-11.17-49.16-10.75-6.89-.36-39.89.91-38.41 24.97-.43 18.96 26.61 26.07 29.7 26.89 36.46 10.97 48.65 12.79 63.12 29.58 17.14 22.25 7.9 48.3 4.35 55.44-19.08 37.49-68.42 34.44-69.26 34.42zm40.2 104.86c-70.03 51.72-171.69 79.25-258.49 79.25A469.127 469.127 0 0 1 2.83 327.46c-6.53-5.89-.77-13.96 7.17-9.47a637.37 637.37 0 0 0 316.88 84.12 630.22 630.22 0 0 0 241.59-49.55c11.78-5 21.77 7.8 10.12 16.38zm29.19-33.29c-8.96-11.52-59.28-5.38-81.81-2.69-6.79.77-7.94-5.12-1.79-9.47 40.07-28.17 105.88-20.1 113.44-10.63 7.55 9.47-2.05 75.41-39.56 106.91-5.76 4.87-11.27 2.3-8.71-4.1 8.44-21.25 27.39-68.49 18.43-80.02z"], + "bandcamp": [512, 512, [], "f2d5", "M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm48.2,326.1h-181L207.9,178h181Z"], + "battle-net": [512, 512, [], "f835", "M448.61 225.62c26.87.18 35.57-7.43 38.92-12.37 12.47-16.32-7.06-47.6-52.85-71.33 17.76-33.58 30.11-63.68 36.34-85.3 3.38-11.83 1.09-19 .45-20.25-1.72 10.52-15.85 48.46-48.2 100.05-25-11.22-56.52-20.1-93.77-23.8-8.94-16.94-34.88-63.86-60.48-88.93C252.18 7.14 238.7 1.07 228.18.22h-.05c-13.83-1.55-22.67 5.85-27.4 11-17.2 18.53-24.33 48.87-25 84.07-7.24-12.35-17.17-24.63-28.5-25.93h-.18c-20.66-3.48-38.39 29.22-36 81.29-38.36 1.38-71 5.75-93 11.23-9.9 2.45-16.22 7.27-17.76 9.72 1-.38 22.4-9.22 111.56-9.22 5.22 53 29.75 101.82 26 93.19-9.73 15.4-38.24 62.36-47.31 97.7-5.87 22.88-4.37 37.61.15 47.14 5.57 12.75 16.41 16.72 23.2 18.26 25 5.71 55.38-3.63 86.7-21.14-7.53 12.84-13.9 28.51-9.06 39.34 7.31 19.65 44.49 18.66 88.44-9.45 20.18 32.18 40.07 57.94 55.7 74.12a39.79 39.79 0 0 0 8.75 7.09c5.14 3.21 8.58 3.37 8.58 3.37-8.24-6.75-34-38-62.54-91.78 22.22-16 45.65-38.87 67.47-69.27 122.82 4.6 143.29-24.76 148-31.64 14.67-19.88 3.43-57.44-57.32-93.69zm-77.85 106.22c23.81-37.71 30.34-67.77 29.45-92.33 27.86 17.57 47.18 37.58 49.06 58.83 1.14 12.93-8.1 29.12-78.51 33.5zM216.9 387.69c9.76-6.23 19.53-13.12 29.2-20.49 6.68 13.33 13.6 26.1 20.6 38.19-40.6 21.86-68.84 12.76-49.8-17.7zm215-171.35c-10.29-5.34-21.16-10.34-32.38-15.05a722.459 722.459 0 0 0 22.74-36.9c39.06 24.1 45.9 53.18 9.64 51.95zM279.18 398c-5.51-11.35-11-23.5-16.5-36.44 43.25 1.27 62.42-18.73 63.28-20.41 0 .07-25 15.64-62.53 12.25a718.78 718.78 0 0 0 85.06-84q13.06-15.31 24.93-31.11c-.36-.29-1.54-3-16.51-12-51.7 60.27-102.34 98-132.75 115.92-20.59-11.18-40.84-31.78-55.71-61.49-20-39.92-30-82.39-31.57-116.07 12.3.91 25.27 2.17 38.85 3.88-22.29 36.8-14.39 63-13.47 64.23 0-.07-.95-29.17 20.14-59.57a695.23 695.23 0 0 0 44.67 152.84c.93-.38 1.84.88 18.67-8.25-26.33-74.47-33.76-138.17-34-173.43 20-12.42 48.18-19.8 81.63-17.81 44.57 2.67 86.36 15.25 116.32 30.71q-10.69 15.66-23.33 32.47C365.63 152 339.1 145.84 337.5 146c.11 0 25.9 14.07 41.52 47.22a717.63 717.63 0 0 0-115.34-31.71 646.608 646.608 0 0 0-39.39-6.05c-.07.45-1.81 1.85-2.16 20.33C300 190.28 358.78 215.68 389.36 233c.74 23.55-6.95 51.61-25.41 79.57-24.6 37.31-56.39 67.23-84.77 85.43zm27.4-287c-44.56-1.66-73.58 7.43-94.69 20.67 2-52.3 21.31-76.38 38.21-75.28C267 52.15 305 108.55 306.58 111zm-130.65 3.1c.48 12.11 1.59 24.62 3.21 37.28-14.55-.85-28.74-1.25-42.4-1.26-.08 3.24-.12-51 24.67-49.59h.09c5.76 1.09 10.63 6.88 14.43 13.57zm-28.06 162c20.76 39.7 43.3 60.57 65.25 72.31-46.79 24.76-77.53 20-84.92 4.51-.2-.21-11.13-15.3 19.67-76.81zm210.06 74.8"], + "behance": [576, 512, [], "f1b4", "M232 237.2c31.8-15.2 48.4-38.2 48.4-74 0-70.6-52.6-87.8-113.3-87.8H0v354.4h171.8c64.4 0 124.9-30.9 124.9-102.9 0-44.5-21.1-77.4-64.7-89.7zM77.9 135.9H151c28.1 0 53.4 7.9 53.4 40.5 0 30.1-19.7 42.2-47.5 42.2h-79v-82.7zm83.3 233.7H77.9V272h84.9c34.3 0 56 14.3 56 50.6 0 35.8-25.9 47-57.6 47zm358.5-240.7H376V94h143.7v34.9zM576 305.2c0-75.9-44.4-139.2-124.9-139.2-78.2 0-131.3 58.8-131.3 135.8 0 79.9 50.3 134.7 131.3 134.7 61.3 0 101-27.6 120.1-86.3H509c-6.7 21.9-34.3 33.5-55.7 33.5-41.3 0-63-24.2-63-65.3h185.1c.3-4.2.6-8.7.6-13.2zM390.4 274c2.3-33.7 24.7-54.8 58.5-54.8 35.4 0 53.2 20.8 56.2 54.8H390.4z"], + "behance-square": [448, 512, [], "f1b5", "M186.5 293c0 19.3-14 25.4-31.2 25.4h-45.1v-52.9h46c18.6.1 30.3 7.8 30.3 27.5zm-7.7-82.3c0-17.7-13.7-21.9-28.9-21.9h-39.6v44.8H153c15.1 0 25.8-6.6 25.8-22.9zm132.3 23.2c-18.3 0-30.5 11.4-31.7 29.7h62.2c-1.7-18.5-11.3-29.7-30.5-29.7zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM271.7 185h77.8v-18.9h-77.8V185zm-43 110.3c0-24.1-11.4-44.9-35-51.6 17.2-8.2 26.2-17.7 26.2-37 0-38.2-28.5-47.5-61.4-47.5H68v192h93.1c34.9-.2 67.6-16.9 67.6-55.9zM380 280.5c0-41.1-24.1-75.4-67.6-75.4-42.4 0-71.1 31.8-71.1 73.6 0 43.3 27.3 73 71.1 73 33.2 0 54.7-14.9 65.1-46.8h-33.7c-3.7 11.9-18.6 18.1-30.2 18.1-22.4 0-34.1-13.1-34.1-35.3h100.2c.1-2.3.3-4.8.3-7.2z"], + "bimobject": [448, 512, [], "f378", "M416 32H32C14.4 32 0 46.4 0 64v384c0 17.6 14.4 32 32 32h384c17.6 0 32-14.4 32-32V64c0-17.6-14.4-32-32-32zm-64 257.4c0 49.4-11.4 82.6-103.8 82.6h-16.9c-44.1 0-62.4-14.9-70.4-38.8h-.9V368H96V136h64v74.7h1.1c4.6-30.5 39.7-38.8 69.7-38.8h17.3c92.4 0 103.8 33.1 103.8 82.5v35zm-64-28.9v22.9c0 21.7-3.4 33.8-38.4 33.8h-45.3c-28.9 0-44.1-6.5-44.1-35.7v-19c0-29.3 15.2-35.7 44.1-35.7h45.3c35-.2 38.4 12 38.4 33.7z"], + "bitbucket": [512, 512, [], "f171", "M22.2 32A16 16 0 0 0 6 47.8a26.35 26.35 0 0 0 .2 2.8l67.9 412.1a21.77 21.77 0 0 0 21.3 18.2h325.7a16 16 0 0 0 16-13.4L505 50.7a16 16 0 0 0-13.2-18.3 24.58 24.58 0 0 0-2.8-.2L22.2 32zm285.9 297.8h-104l-28.1-147h157.3l-25.2 147z"], + "bitcoin": [512, 512, [], "f379", "M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zm-141.651-35.33c4.937-32.999-20.191-50.739-54.55-62.573l11.146-44.702-27.213-6.781-10.851 43.524c-7.154-1.783-14.502-3.464-21.803-5.13l10.929-43.81-27.198-6.781-11.153 44.686c-5.922-1.349-11.735-2.682-17.377-4.084l.031-.14-37.53-9.37-7.239 29.062s20.191 4.627 19.765 4.913c11.022 2.751 13.014 10.044 12.68 15.825l-12.696 50.925c.76.194 1.744.473 2.829.907-.907-.225-1.876-.473-2.876-.713l-17.796 71.338c-1.349 3.348-4.767 8.37-12.471 6.464.271.395-19.78-4.937-19.78-4.937l-13.51 31.147 35.414 8.827c6.588 1.651 13.045 3.379 19.4 5.006l-11.262 45.213 27.182 6.781 11.153-44.733a1038.209 1038.209 0 0 0 21.687 5.627l-11.115 44.523 27.213 6.781 11.262-45.128c46.404 8.781 81.299 5.239 95.986-36.727 11.836-33.79-.589-53.281-25.004-65.991 17.78-4.098 31.174-15.792 34.747-39.949zm-62.177 87.179c-8.41 33.79-65.308 15.523-83.755 10.943l14.944-59.899c18.446 4.603 77.6 13.717 68.811 48.956zm8.417-87.667c-7.673 30.736-55.031 15.12-70.393 11.292l13.548-54.327c15.363 3.828 64.836 10.973 56.845 43.035z"], + "bity": [496, 512, [], "f37a", "M78.4 67.2C173.8-22 324.5-24 421.5 71c14.3 14.1-6.4 37.1-22.4 21.5-84.8-82.4-215.8-80.3-298.9-3.2-16.3 15.1-36.5-8.3-21.8-22.1zm98.9 418.6c19.3 5.7 29.3-23.6 7.9-30C73 421.9 9.4 306.1 37.7 194.8c5-19.6-24.9-28.1-30.2-7.1-32.1 127.4 41.1 259.8 169.8 298.1zm148.1-2c121.9-40.2 192.9-166.9 164.4-291-4.5-19.7-34.9-13.8-30 7.9 24.2 107.7-37.1 217.9-143.2 253.4-21.2 7-10.4 36 8.8 29.7zm-62.9-79l.2-71.8c0-8.2-6.6-14.8-14.8-14.8-8.2 0-14.8 6.7-14.8 14.8l-.2 71.8c0 8.2 6.6 14.8 14.8 14.8s14.8-6.6 14.8-14.8zm71-269c2.1 90.9 4.7 131.9-85.5 132.5-92.5-.7-86.9-44.3-85.5-132.5 0-21.8-32.5-19.6-32.5 0v71.6c0 69.3 60.7 90.9 118 90.1 57.3.8 118-20.8 118-90.1v-71.6c0-19.6-32.5-21.8-32.5 0z"], + "black-tie": [448, 512, [], "f27e", "M0 32v448h448V32H0zm316.5 325.2L224 445.9l-92.5-88.7 64.5-184-64.5-86.6h184.9L252 173.2l64.5 184z"], + "blackberry": [512, 512, [], "f37b", "M166 116.9c0 23.4-16.4 49.1-72.5 49.1H23.4l21-88.8h67.8c42.1 0 53.8 23.3 53.8 39.7zm126.2-39.7h-67.8L205.7 166h70.1c53.8 0 70.1-25.7 70.1-49.1.1-16.4-11.6-39.7-53.7-39.7zM88.8 208.1H21L0 296.9h70.1c56.1 0 72.5-23.4 72.5-49.1 0-16.3-11.7-39.7-53.8-39.7zm180.1 0h-67.8l-18.7 88.8h70.1c53.8 0 70.1-23.4 70.1-49.1 0-16.3-11.7-39.7-53.7-39.7zm189.3-53.8h-67.8l-18.7 88.8h70.1c53.8 0 70.1-23.4 70.1-49.1.1-16.3-11.6-39.7-53.7-39.7zm-28 137.9h-67.8L343.7 381h70.1c56.1 0 70.1-23.4 70.1-49.1 0-16.3-11.6-39.7-53.7-39.7zM240.8 346H173l-18.7 88.8h70.1c56.1 0 70.1-25.7 70.1-49.1.1-16.3-11.6-39.7-53.7-39.7z"], + "blogger": [448, 512, [], "f37c", "M162.4 196c4.8-4.9 6.2-5.1 36.4-5.1 27.2 0 28.1.1 32.1 2.1 5.8 2.9 8.3 7 8.3 13.6 0 5.9-2.4 10-7.6 13.4-2.8 1.8-4.5 1.9-31.1 2.1-16.4.1-29.5-.2-31.5-.8-10.3-2.9-14.1-17.7-6.6-25.3zm61.4 94.5c-53.9 0-55.8.2-60.2 4.1-3.5 3.1-5.7 9.4-5.1 13.9.7 4.7 4.8 10.1 9.2 12 2.2 1 14.1 1.7 56.3 1.2l47.9-.6 9.2-1.5c9-5.1 10.5-17.4 3.1-24.4-5.3-4.7-5-4.7-60.4-4.7zm223.4 130.1c-3.5 28.4-23 50.4-51.1 57.5-7.2 1.8-9.7 1.9-172.9 1.8-157.8 0-165.9-.1-172-1.8-8.4-2.2-15.6-5.5-22.3-10-5.6-3.8-13.9-11.8-17-16.4-3.8-5.6-8.2-15.3-10-22C.1 423 0 420.3 0 256.3 0 93.2 0 89.7 1.8 82.6 8.1 57.9 27.7 39 53 33.4c7.3-1.6 332.1-1.9 340-.3 21.2 4.3 37.9 17.1 47.6 36.4 7.7 15.3 7-1.5 7.3 180.6.2 115.8 0 164.5-.7 170.5zm-85.4-185.2c-1.1-5-4.2-9.6-7.7-11.5-1.1-.6-8-1.3-15.5-1.7-12.4-.6-13.8-.8-17.8-3.1-6.2-3.6-7.9-7.6-8-18.3 0-20.4-8.5-39.4-25.3-56.5-12-12.2-25.3-20.5-40.6-25.1-3.6-1.1-11.8-1.5-39.2-1.8-42.9-.5-52.5.4-67.1 6.2-27 10.7-46.3 33.4-53.4 62.4-1.3 5.4-1.6 14.2-1.9 64.3-.4 62.8 0 72.1 4 84.5 9.7 30.7 37.1 53.4 64.6 58.4 9.2 1.7 122.2 2.1 133.7.5 20.1-2.7 35.9-10.8 50.7-25.9 10.7-10.9 17.4-22.8 21.8-38.5 3.2-10.9 2.9-88.4 1.7-93.9z"], + "blogger-b": [448, 512, [], "f37d", "M446.6 222.7c-1.8-8-6.8-15.4-12.5-18.5-1.8-1-13-2.2-25-2.7-20.1-.9-22.3-1.3-28.7-5-10.1-5.9-12.8-12.3-12.9-29.5-.1-33-13.8-63.7-40.9-91.3-19.3-19.7-40.9-33-65.5-40.5-5.9-1.8-19.1-2.4-63.3-2.9-69.4-.8-84.8.6-108.4 10C45.9 59.5 14.7 96.1 3.3 142.9 1.2 151.7.7 165.8.2 246.8c-.6 101.5.1 116.4 6.4 136.5 15.6 49.6 59.9 86.3 104.4 94.3 14.8 2.7 197.3 3.3 216 .8 32.5-4.4 58-17.5 81.9-41.9 17.3-17.7 28.1-36.8 35.2-62.1 4.9-17.6 4.5-142.8 2.5-151.7zm-322.1-63.6c7.8-7.9 10-8.2 58.8-8.2 43.9 0 45.4.1 51.8 3.4 9.3 4.7 13.4 11.3 13.4 21.9 0 9.5-3.8 16.2-12.3 21.6-4.6 2.9-7.3 3.1-50.3 3.3-26.5.2-47.7-.4-50.8-1.2-16.6-4.7-22.8-28.5-10.6-40.8zm191.8 199.8l-14.9 2.4-77.5.9c-68.1.8-87.3-.4-90.9-2-7.1-3.1-13.8-11.7-14.9-19.4-1.1-7.3 2.6-17.3 8.2-22.4 7.1-6.4 10.2-6.6 97.3-6.7 89.6-.1 89.1-.1 97.6 7.8 12.1 11.3 9.5 31.2-4.9 39.4z"], + "bluetooth": [448, 512, [], "f293", "M292.6 171.1L249.7 214l-.3-86 43.2 43.1m-43.2 219.8l43.1-43.1-42.9-42.9-.2 86zM416 259.4C416 465 344.1 512 230.9 512S32 465 32 259.4 115.4 0 228.6 0 416 53.9 416 259.4zm-158.5 0l79.4-88.6L211.8 36.5v176.9L138 139.6l-27 26.9 92.7 93-92.7 93 26.9 26.9 73.8-73.8 2.3 170 127.4-127.5-83.9-88.7z"], + "bluetooth-b": [320, 512, [], "f294", "M196.48 260.023l92.626-103.333L143.125 0v206.33l-86.111-86.111-31.406 31.405 108.061 108.399L25.608 368.422l31.406 31.405 86.111-86.111L145.84 512l148.552-148.644-97.912-103.333zm40.86-102.996l-49.977 49.978-.338-100.295 50.315 50.317zM187.363 313.04l49.977 49.978-50.315 50.316.338-100.294z"], + "bootstrap": [448, 512, [], "f836", "M292.3 311.93c0 42.41-39.72 41.43-43.92 41.43h-80.89v-81.69h80.89c42.56 0 43.92 31.9 43.92 40.26zm-50.15-73.13c.67 0 38.44 1 38.44-36.31 0-15.52-3.51-35.87-38.44-35.87h-74.66v72.18h74.66zM448 106.67v298.66A74.89 74.89 0 0 1 373.33 480H74.67A74.89 74.89 0 0 1 0 405.33V106.67A74.89 74.89 0 0 1 74.67 32h298.66A74.89 74.89 0 0 1 448 106.67zM338.05 317.86c0-21.57-6.65-58.29-49.05-67.35v-.73c22.91-9.78 37.34-28.25 37.34-55.64 0-7 2-64.78-77.6-64.78h-127v261.33c128.23 0 139.87 1.68 163.6-5.71 14.21-4.42 52.71-17.98 52.71-67.12z"], + "btc": [384, 512, [], "f15a", "M310.204 242.638c27.73-14.18 45.377-39.39 41.28-81.3-5.358-57.351-52.458-76.573-114.85-81.929V0h-48.528v77.203c-12.605 0-25.525.315-38.444.63V0h-48.528v79.409c-17.842.539-38.622.276-97.37 0v51.678c38.314-.678 58.417-3.14 63.023 21.427v217.429c-2.925 19.492-18.524 16.685-53.255 16.071L3.765 443.68c88.481 0 97.37.315 97.37.315V512h48.528v-67.06c13.234.315 26.154.315 38.444.315V512h48.528v-68.005c81.299-4.412 135.647-24.894 142.895-101.467 5.671-61.446-23.32-88.862-69.326-99.89zM150.608 134.553c27.415 0 113.126-8.507 113.126 48.528 0 54.515-85.71 48.212-113.126 48.212v-96.74zm0 251.776V279.821c32.772 0 133.127-9.138 133.127 53.255-.001 60.186-100.355 53.253-133.127 53.253z"], + "buffer": [448, 512, [], "f837", "M427.84 380.67l-196.5 97.82a18.6 18.6 0 0 1-14.67 0L20.16 380.67c-4-2-4-5.28 0-7.29L67.22 350a18.65 18.65 0 0 1 14.69 0l134.76 67a18.51 18.51 0 0 0 14.67 0l134.76-67a18.62 18.62 0 0 1 14.68 0l47.06 23.43c4.05 1.96 4.05 5.24 0 7.24zm0-136.53l-47.06-23.43a18.62 18.62 0 0 0-14.68 0l-134.76 67.08a18.68 18.68 0 0 1-14.67 0L81.91 220.71a18.65 18.65 0 0 0-14.69 0l-47.06 23.43c-4 2-4 5.29 0 7.31l196.51 97.8a18.6 18.6 0 0 0 14.67 0l196.5-97.8c4.05-2.02 4.05-5.3 0-7.31zM20.16 130.42l196.5 90.29a20.08 20.08 0 0 0 14.67 0l196.51-90.29c4-1.86 4-4.89 0-6.74L231.33 33.4a19.88 19.88 0 0 0-14.67 0l-196.5 90.28c-4.05 1.85-4.05 4.88 0 6.74z"], + "buromobelexperte": [448, 512, [], "f37f", "M0 32v128h128V32H0zm120 120H8V40h112v112zm40-120v128h128V32H160zm120 120H168V40h112v112zm40-120v128h128V32H320zm120 120H328V40h112v112zM0 192v128h128V192H0zm120 120H8V200h112v112zm40-120v128h128V192H160zm120 120H168V200h112v112zm40-120v128h128V192H320zm120 120H328V200h112v112zM0 352v128h128V352H0zm120 120H8V360h112v112zm40-120v128h128V352H160zm120 120H168V360h112v112zm40-120v128h128V352H320z"], + "buy-n-large": [576, 512, [], "f8a6", "M288 32C133.27 32 7.79 132.32 7.79 256S133.27 480 288 480s280.21-100.32 280.21-224S442.73 32 288 32zm-85.39 357.19L64.1 390.55l77.25-290.74h133.44c63.15 0 84.93 28.65 78 72.84a60.24 60.24 0 0 1-1.5 6.85 77.39 77.39 0 0 0-17.21-1.93c-42.35 0-76.69 33.88-76.69 75.65 0 37.14 27.14 68 62.93 74.45-18.24 37.16-56.16 60.92-117.71 61.52zM358 207.11h32l-22.16 90.31h-35.41l-11.19-35.63-7.83 35.63h-37.83l26.63-90.31h31.34l15 36.75zm145.86 182.08H306.79L322.63 328a78.8 78.8 0 0 0 11.47.83c42.34 0 76.69-33.87 76.69-75.65 0-32.65-21-60.46-50.38-71.06l21.33-82.35h92.5l-53.05 205.36h103.87zM211.7 269.39H187l-13.8 56.47h24.7c16.14 0 32.11-3.18 37.94-26.65 5.56-22.31-7.99-29.82-24.14-29.82zM233 170h-21.34L200 217.71h21.37c18 0 35.38-14.64 39.21-30.14C265.23 168.71 251.07 170 233 170z"], + "buysellads": [448, 512, [], "f20d", "M224 150.7l42.9 160.7h-85.8L224 150.7zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-65.3 325.3l-94.5-298.7H159.8L65.3 405.3H156l111.7-91.6 24.2 91.6h90.8z"], + "canadian-maple-leaf": [512, 512, [], "f785", "M383.8 351.7c2.5-2.5 105.2-92.4 105.2-92.4l-17.5-7.5c-10-4.9-7.4-11.5-5-17.4 2.4-7.6 20.1-67.3 20.1-67.3s-47.7 10-57.7 12.5c-7.5 2.4-10-2.5-12.5-7.5s-15-32.4-15-32.4-52.6 59.9-55.1 62.3c-10 7.5-20.1 0-17.6-10 0-10 27.6-129.6 27.6-129.6s-30.1 17.4-40.1 22.4c-7.5 5-12.6 5-17.6-5C293.5 72.3 255.9 0 255.9 0s-37.5 72.3-42.5 79.8c-5 10-10 10-17.6 5-10-5-40.1-22.4-40.1-22.4S183.3 182 183.3 192c2.5 10-7.5 17.5-17.6 10-2.5-2.5-55.1-62.3-55.1-62.3S98.1 167 95.6 172s-5 9.9-12.5 7.5C73 177 25.4 167 25.4 167s17.6 59.7 20.1 67.3c2.4 6 5 12.5-5 17.4L23 259.3s102.6 89.9 105.2 92.4c5.1 5 10 7.5 5.1 22.5-5.1 15-10.1 35.1-10.1 35.1s95.2-20.1 105.3-22.6c8.7-.9 18.3 2.5 18.3 12.5S241 512 241 512h30s-5.8-102.7-5.8-112.8 9.5-13.4 18.4-12.5c10 2.5 105.2 22.6 105.2 22.6s-5-20.1-10-35.1 0-17.5 5-22.5z"], + "cc-amazon-pay": [576, 512, [], "f42d", "M124.7 201.8c.1-11.8 0-23.5 0-35.3v-35.3c0-1.3.4-2 1.4-2.7 11.5-8 24.1-12.1 38.2-11.1 12.5.9 22.7 7 28.1 21.7 3.3 8.9 4.1 18.2 4.1 27.7 0 8.7-.7 17.3-3.4 25.6-5.7 17.8-18.7 24.7-35.7 23.9-11.7-.5-21.9-5-31.4-11.7-.9-.8-1.4-1.6-1.3-2.8zm154.9 14.6c4.6 1.8 9.3 2 14.1 1.5 11.6-1.2 21.9-5.7 31.3-12.5.9-.6 1.3-1.3 1.3-2.5-.1-3.9 0-7.9 0-11.8 0-4-.1-8 0-12 0-1.4-.4-2-1.8-2.2-7-.9-13.9-2.2-20.9-2.9-7-.6-14-.3-20.8 1.9-6.7 2.2-11.7 6.2-13.7 13.1-1.6 5.4-1.6 10.8.1 16.2 1.6 5.5 5.2 9.2 10.4 11.2zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zm-207.5 23.9c.4 1.7.9 3.4 1.6 5.1 16.5 40.6 32.9 81.3 49.5 121.9 1.4 3.5 1.7 6.4.2 9.9-2.8 6.2-4.9 12.6-7.8 18.7-2.6 5.5-6.7 9.5-12.7 11.2-4.2 1.1-8.5 1.3-12.9.9-2.1-.2-4.2-.7-6.3-.8-2.8-.2-4.2 1.1-4.3 4-.1 2.8-.1 5.6 0 8.3.1 4.6 1.6 6.7 6.2 7.5 4.7.8 9.4 1.6 14.2 1.7 14.3.3 25.7-5.4 33.1-17.9 2.9-4.9 5.6-10.1 7.7-15.4 19.8-50.1 39.5-100.3 59.2-150.5.6-1.5 1.1-3 1.3-4.6.4-2.4-.7-3.6-3.1-3.7-5.6-.1-11.1 0-16.7 0-3.1 0-5.3 1.4-6.4 4.3-.4 1.1-.9 2.3-1.3 3.4l-29.1 83.7c-2.1 6.1-4.2 12.1-6.5 18.6-.4-.9-.6-1.4-.8-1.9-10.8-29.9-21.6-59.9-32.4-89.8-1.7-4.7-3.5-9.5-5.3-14.2-.9-2.5-2.7-4-5.4-4-6.4-.1-12.8-.2-19.2-.1-2.2 0-3.3 1.6-2.8 3.7zM242.4 206c1.7 11.7 7.6 20.8 18 26.6 9.9 5.5 20.7 6.2 31.7 4.6 12.7-1.9 23.9-7.3 33.8-15.5.4-.3.8-.6 1.4-1 .5 3.2.9 6.2 1.5 9.2.5 2.6 2.1 4.3 4.5 4.4 4.6.1 9.1.1 13.7 0 2.3-.1 3.8-1.6 4-3.9.1-.8.1-1.6.1-2.3v-88.8c0-3.6-.2-7.2-.7-10.8-1.6-10.8-6.2-19.7-15.9-25.4-5.6-3.3-11.8-5-18.2-5.9-3-.4-6-.7-9.1-1.1h-10c-.8.1-1.6.3-2.5.3-8.2.4-16.3 1.4-24.2 3.5-5.1 1.3-10 3.2-15 4.9-3 1-4.5 3.2-4.4 6.5.1 2.8-.1 5.6 0 8.3.1 4.1 1.8 5.2 5.7 4.1 6.5-1.7 13.1-3.5 19.7-4.8 10.3-1.9 20.7-2.7 31.1-1.2 5.4.8 10.5 2.4 14.1 7 3.1 4 4.2 8.8 4.4 13.7.3 6.9.2 13.9.3 20.8 0 .4-.1.7-.2 1.2-.4 0-.8 0-1.1-.1-8.8-2.1-17.7-3.6-26.8-4.1-9.5-.5-18.9.1-27.9 3.2-10.8 3.8-19.5 10.3-24.6 20.8-4.1 8.3-4.6 17-3.4 25.8zM98.7 106.9v175.3c0 .8 0 1.7.1 2.5.2 2.5 1.7 4.1 4.1 4.2 5.9.1 11.8.1 17.7 0 2.5 0 4-1.7 4.1-4.1.1-.8.1-1.7.1-2.5v-60.7c.9.7 1.4 1.2 1.9 1.6 15 12.5 32.2 16.6 51.1 12.9 17.1-3.4 28.9-13.9 36.7-29.2 5.8-11.6 8.3-24.1 8.7-37 .5-14.3-1-28.4-6.8-41.7-7.1-16.4-18.9-27.3-36.7-30.9-2.7-.6-5.5-.8-8.2-1.2h-7c-1.2.2-2.4.3-3.6.5-11.7 1.4-22.3 5.8-31.8 12.7-2 1.4-3.9 3-5.9 4.5-.1-.5-.3-.8-.4-1.2-.4-2.3-.7-4.6-1.1-6.9-.6-3.9-2.5-5.5-6.4-5.6h-9.7c-5.9-.1-6.9 1-6.9 6.8zM493.6 339c-2.7-.7-5.1 0-7.6 1-43.9 18.4-89.5 30.2-136.8 35.8-14.5 1.7-29.1 2.8-43.7 3.2-26.6.7-53.2-.8-79.6-4.3-17.8-2.4-35.5-5.7-53-9.9-37-8.9-72.7-21.7-106.7-38.8-8.8-4.4-17.4-9.3-26.1-14-3.8-2.1-6.2-1.5-8.2 2.1v1.7c1.2 1.6 2.2 3.4 3.7 4.8 36 32.2 76.6 56.5 122 72.9 21.9 7.9 44.4 13.7 67.3 17.5 14 2.3 28 3.8 42.2 4.5 3 .1 6 .2 9 .4.7 0 1.4.2 2.1.3h17.7c.7-.1 1.4-.3 2.1-.3 14.9-.4 29.8-1.8 44.6-4 21.4-3.2 42.4-8.1 62.9-14.7 29.6-9.6 57.7-22.4 83.4-40.1 2.8-1.9 5.7-3.8 8-6.2 4.3-4.4 2.3-10.4-3.3-11.9zm50.4-27.7c-.8-4.2-4-5.8-7.6-7-5.7-1.9-11.6-2.8-17.6-3.3-11-.9-22-.4-32.8 1.6-12 2.2-23.4 6.1-33.5 13.1-1.2.8-2.4 1.8-3.1 3-.6.9-.7 2.3-.5 3.4.3 1.3 1.7 1.6 3 1.5.6 0 1.2 0 1.8-.1l19.5-2.1c9.6-.9 19.2-1.5 28.8-.8 4.1.3 8.1 1.2 12 2.2 4.3 1.1 6.2 4.4 6.4 8.7.3 6.7-1.2 13.1-2.9 19.5-3.5 12.9-8.3 25.4-13.3 37.8-.3.8-.7 1.7-.8 2.5-.4 2.5 1 4 3.4 3.5 1.4-.3 3-1.1 4-2.1 3.7-3.6 7.5-7.2 10.6-11.2 10.7-13.8 17-29.6 20.7-46.6.7-3 1.2-6.1 1.7-9.1.2-4.7.2-9.6.2-14.5z"], + "cc-amex": [576, 512, [], "f1f3", "M325.1 167.8c0-16.4-14.1-18.4-27.4-18.4l-39.1-.3v69.3H275v-25.1h18c18.4 0 14.5 10.3 14.8 25.1h16.6v-13.5c0-9.2-1.5-15.1-11-18.4 7.4-3 11.8-10.7 11.7-18.7zm-29.4 11.3H275v-15.3h21c5.1 0 10.7 1 10.7 7.4 0 6.6-5.3 7.9-11 7.9zM279 268.6h-52.7l-21 22.8-20.5-22.8h-66.5l-.1 69.3h65.4l21.3-23 20.4 23h32.2l.1-23.3c18.9 0 49.3 4.6 49.3-23.3 0-17.3-12.3-22.7-27.9-22.7zm-103.8 54.7h-40.6v-13.8h36.3v-14.1h-36.3v-12.5h41.7l17.9 20.2zm65.8 8.2l-25.3-28.1L241 276zm37.8-31h-21.2v-17.6h21.5c5.6 0 10.2 2.3 10.2 8.4 0 6.4-4.6 9.2-10.5 9.2zm-31.6-136.7v-14.6h-55.5v69.3h55.5v-14.3h-38.9v-13.8h37.8v-14.1h-37.8v-12.5zM576 255.4h-.2zm-194.6 31.9c0-16.4-14.1-18.7-27.1-18.7h-39.4l-.1 69.3h16.6l.1-25.3h17.6c11 0 14.8 2 14.8 13.8l-.1 11.5h16.6l.1-13.8c0-8.9-1.8-15.1-11-18.4 7.7-3.1 11.8-10.8 11.9-18.4zm-29.2 11.2h-20.7v-15.6h21c5.1 0 10.7 1 10.7 7.4 0 6.9-5.4 8.2-11 8.2zm-172.8-80v-69.3h-27.6l-19.7 47-21.7-47H83.3v65.7l-28.1-65.7H30.7L1 218.5h17.9l6.4-15.3h34.5l6.4 15.3H100v-54.2l24 54.2h14.6l24-54.2v54.2zM31.2 188.8l11.2-27.6 11.5 27.6zm477.4 158.9v-4.5c-10.8 5.6-3.9 4.5-156.7 4.5 0-25.2.1-23.9 0-25.2-1.7-.1-3.2-.1-9.4-.1 0 17.9-.1 6.8-.1 25.3h-39.6c0-12.1.1-15.3.1-29.2-10 6-22.8 6.4-34.3 6.2 0 14.7-.1 8.3-.1 23h-48.9c-5.1-5.7-2.7-3.1-15.4-17.4-3.2 3.5-12.8 13.9-16.1 17.4h-82v-92.3h83.1c5 5.6 2.8 3.1 15.5 17.2 3.2-3.5 12.2-13.4 15.7-17.2h58c9.8 0 18 1.9 24.3 5.6v-5.6c54.3 0 64.3-1.4 75.7 5.1v-5.1h78.2v5.2c11.4-6.9 19.6-5.2 64.9-5.2v5c10.3-5.9 16.6-5.2 54.3-5V80c0-26.5-21.5-48-48-48h-480c-26.5 0-48 21.5-48 48v109.8c9.4-21.9 19.7-46 23.1-53.9h39.7c4.3 10.1 1.6 3.7 9 21.1v-21.1h46c2.9 6.2 11.1 24 13.9 30 5.8-13.6 10.1-23.9 12.6-30h103c0-.1 11.5 0 11.6 0 43.7.2 53.6-.8 64.4 5.3v-5.3H363v9.3c7.6-6.1 17.9-9.3 30.7-9.3h27.6c0 .5 1.9.3 2.3.3H456c4.2 9.8 2.6 6 8.8 20.6v-20.6h43.3c4.9 8-1-1.8 11.2 18.4v-18.4h39.9v92h-41.6c-5.4-9-1.4-2.2-13.2-21.9v21.9h-52.8c-6.4-14.8-.1-.3-6.6-15.3h-19c-4.2 10-2.2 5.2-6.4 15.3h-26.8c-12.3 0-22.3-3-29.7-8.9v8.9h-66.5c-.3-13.9-.1-24.8-.1-24.8-1.8-.3-3.4-.2-9.8-.2v25.1H151.2v-11.4c-2.5 5.6-2.7 5.9-5.1 11.4h-29.5c-4-8.9-2.9-6.4-5.1-11.4v11.4H58.6c-4.2-10.1-2.2-5.3-6.4-15.3H33c-4.2 10-2.2 5.2-6.4 15.3H0V432c0 26.5 21.5 48 48 48h480.1c26.5 0 48-21.5 48-48v-90.4c-12.7 8.3-32.7 6.1-67.5 6.1zm36.3-64.5H575v-14.6h-32.9c-12.8 0-23.8 6.6-23.8 20.7 0 33 42.7 12.8 42.7 27.4 0 5.1-4.3 6.4-8.4 6.4h-32l-.1 14.8h32c8.4 0 17.6-1.8 22.5-8.9v-25.8c-10.5-13.8-39.3-1.3-39.3-13.5 0-5.8 4.6-6.5 9.2-6.5zm-57 39.8h-32.2l-.1 14.8h32.2c14.8 0 26.2-5.6 26.2-22 0-33.2-42.9-11.2-42.9-26.3 0-5.6 4.9-6.4 9.2-6.4h30.4v-14.6h-33.2c-12.8 0-23.5 6.6-23.5 20.7 0 33 42.7 12.5 42.7 27.4-.1 5.4-4.7 6.4-8.8 6.4zm-42.2-40.1v-14.3h-55.2l-.1 69.3h55.2l.1-14.3-38.6-.3v-13.8H445v-14.1h-37.8v-12.5zm-56.3-108.1c-.3.2-1.4 2.2-1.4 7.6 0 6 .9 7.7 1.1 7.9.2.1 1.1.5 3.4.5l7.3-16.9c-1.1 0-2.1-.1-3.1-.1-5.6 0-7 .7-7.3 1zm20.4-10.5h-.1zm-16.2-15.2c-23.5 0-34 12-34 35.3 0 22.2 10.2 34 33 34h19.2l6.4-15.3h34.3l6.6 15.3h33.7v-51.9l31.2 51.9h23.6v-69h-16.9v48.1l-29.1-48.1h-25.3v65.4l-27.9-65.4h-24.8l-23.5 54.5h-7.4c-13.3 0-16.1-8.1-16.1-19.9 0-23.8 15.7-20 33.1-19.7v-15.2zm42.1 12.1l11.2 27.6h-22.8zm-101.1-12v69.3h16.9v-69.3z"], + "cc-apple-pay": [576, 512, [], "f416", "M302.2 218.4c0 17.2-10.5 27.1-29 27.1h-24.3v-54.2h24.4c18.4 0 28.9 9.8 28.9 27.1zm47.5 62.6c0 8.3 7.2 13.7 18.5 13.7 14.4 0 25.2-9.1 25.2-21.9v-7.7l-23.5 1.5c-13.3.9-20.2 5.8-20.2 14.4zM576 79v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V79c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM127.8 197.2c8.4.7 16.8-4.2 22.1-10.4 5.2-6.4 8.6-15 7.7-23.7-7.4.3-16.6 4.9-21.9 11.3-4.8 5.5-8.9 14.4-7.9 22.8zm60.6 74.5c-.2-.2-19.6-7.6-19.8-30-.2-18.7 15.3-27.7 16-28.2-8.8-13-22.4-14.4-27.1-14.7-12.2-.7-22.6 6.9-28.4 6.9-5.9 0-14.7-6.6-24.3-6.4-12.5.2-24.2 7.3-30.5 18.6-13.1 22.6-3.4 56 9.3 74.4 6.2 9.1 13.7 19.1 23.5 18.7 9.3-.4 13-6 24.2-6 11.3 0 14.5 6 24.3 5.9 10.2-.2 16.5-9.1 22.8-18.2 6.9-10.4 9.8-20.4 10-21zm135.4-53.4c0-26.6-18.5-44.8-44.9-44.8h-51.2v136.4h21.2v-46.6h29.3c26.8 0 45.6-18.4 45.6-45zm90 23.7c0-19.7-15.8-32.4-40-32.4-22.5 0-39.1 12.9-39.7 30.5h19.1c1.6-8.4 9.4-13.9 20-13.9 13 0 20.2 6 20.2 17.2v7.5l-26.4 1.6c-24.6 1.5-37.9 11.6-37.9 29.1 0 17.7 13.7 29.4 33.4 29.4 13.3 0 25.6-6.7 31.2-17.4h.4V310h19.6v-68zM516 210.9h-21.5l-24.9 80.6h-.4l-24.9-80.6H422l35.9 99.3-1.9 6c-3.2 10.2-8.5 14.2-17.9 14.2-1.7 0-4.9-.2-6.2-.3v16.4c1.2.4 6.5.5 8.1.5 20.7 0 30.4-7.9 38.9-31.8L516 210.9z"], + "cc-diners-club": [576, 512, [], "f24c", "M239.7 79.9c-96.9 0-175.8 78.6-175.8 175.8 0 96.9 78.9 175.8 175.8 175.8 97.2 0 175.8-78.9 175.8-175.8 0-97.2-78.6-175.8-175.8-175.8zm-39.9 279.6c-41.7-15.9-71.4-56.4-71.4-103.8s29.7-87.9 71.4-104.1v207.9zm79.8.3V151.6c41.7 16.2 71.4 56.7 71.4 104.1s-29.7 87.9-71.4 104.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM329.7 448h-90.3c-106.2 0-193.8-85.5-193.8-190.2C45.6 143.2 133.2 64 239.4 64h90.3c105 0 200.7 79.2 200.7 193.8 0 104.7-95.7 190.2-200.7 190.2z"], + "cc-discover": [576, 512, [], "f1f2", "M520.4 196.1c0-7.9-5.5-12.1-15.6-12.1h-4.9v24.9h4.7c10.3 0 15.8-4.4 15.8-12.8zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-44.1 138.9c22.6 0 52.9-4.1 52.9 24.4 0 12.6-6.6 20.7-18.7 23.2l25.8 34.4h-19.6l-22.2-32.8h-2.2v32.8h-16zm-55.9.1h45.3v14H444v18.2h28.3V217H444v22.2h29.3V253H428zm-68.7 0l21.9 55.2 22.2-55.2h17.5l-35.5 84.2h-8.6l-35-84.2zm-55.9-3c24.7 0 44.6 20 44.6 44.6 0 24.7-20 44.6-44.6 44.6-24.7 0-44.6-20-44.6-44.6 0-24.7 20-44.6 44.6-44.6zm-49.3 6.1v19c-20.1-20.1-46.8-4.7-46.8 19 0 25 27.5 38.5 46.8 19.2v19c-29.7 14.3-63.3-5.7-63.3-38.2 0-31.2 33.1-53 63.3-38zm-97.2 66.3c11.4 0 22.4-15.3-3.3-24.4-15-5.5-20.2-11.4-20.2-22.7 0-23.2 30.6-31.4 49.7-14.3l-8.4 10.8c-10.4-11.6-24.9-6.2-24.9 2.5 0 4.4 2.7 6.9 12.3 10.3 18.2 6.6 23.6 12.5 23.6 25.6 0 29.5-38.8 37.4-56.6 11.3l10.3-9.9c3.7 7.1 9.9 10.8 17.5 10.8zM55.4 253H32v-82h23.4c26.1 0 44.1 17 44.1 41.1 0 18.5-13.2 40.9-44.1 40.9zm67.5 0h-16v-82h16zM544 433c0 8.2-6.8 15-15 15H128c189.6-35.6 382.7-139.2 416-160zM74.1 191.6c-5.2-4.9-11.6-6.6-21.9-6.6H48v54.2h4.2c10.3 0 17-2 21.9-6.4 5.7-5.2 8.9-12.8 8.9-20.7s-3.2-15.5-8.9-20.5z"], + "cc-jcb": [576, 512, [], "f24b", "M431.5 244.3V212c41.2 0 38.5.2 38.5.2 7.3 1.3 13.3 7.3 13.3 16 0 8.8-6 14.5-13.3 15.8-1.2.4-3.3.3-38.5.3zm42.8 20.2c-2.8-.7-3.3-.5-42.8-.5v35c39.6 0 40 .2 42.8-.5 7.5-1.5 13.5-8 13.5-17 0-8.7-6-15.5-13.5-17zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM182 192.3h-57c0 67.1 10.7 109.7-35.8 109.7-19.5 0-38.8-5.7-57.2-14.8v28c30 8.3 68 8.3 68 8.3 97.9 0 82-47.7 82-131.2zm178.5 4.5c-63.4-16-165-14.9-165 59.3 0 77.1 108.2 73.6 165 59.2V287C312.9 311.7 253 309 253 256s59.8-55.6 107.5-31.2v-28zM544 286.5c0-18.5-16.5-30.5-38-32v-.8c19.5-2.7 30.3-15.5 30.3-30.2 0-19-15.7-30-37-31 0 0 6.3-.3-120.3-.3v127.5h122.7c24.3.1 42.3-12.9 42.3-33.2z"], + "cc-mastercard": [576, 512, [], "f1f1", "M482.9 410.3c0 6.8-4.6 11.7-11.2 11.7-6.8 0-11.2-5.2-11.2-11.7 0-6.5 4.4-11.7 11.2-11.7 6.6 0 11.2 5.2 11.2 11.7zm-310.8-11.7c-7.1 0-11.2 5.2-11.2 11.7 0 6.5 4.1 11.7 11.2 11.7 6.5 0 10.9-4.9 10.9-11.7-.1-6.5-4.4-11.7-10.9-11.7zm117.5-.3c-5.4 0-8.7 3.5-9.5 8.7h19.1c-.9-5.7-4.4-8.7-9.6-8.7zm107.8.3c-6.8 0-10.9 5.2-10.9 11.7 0 6.5 4.1 11.7 10.9 11.7 6.8 0 11.2-4.9 11.2-11.7 0-6.5-4.4-11.7-11.2-11.7zm105.9 26.1c0 .3.3.5.3 1.1 0 .3-.3.5-.3 1.1-.3.3-.3.5-.5.8-.3.3-.5.5-1.1.5-.3.3-.5.3-1.1.3-.3 0-.5 0-1.1-.3-.3 0-.5-.3-.8-.5-.3-.3-.5-.5-.5-.8-.3-.5-.3-.8-.3-1.1 0-.5 0-.8.3-1.1 0-.5.3-.8.5-1.1.3-.3.5-.3.8-.5.5-.3.8-.3 1.1-.3.5 0 .8 0 1.1.3.5.3.8.3 1.1.5s.2.6.5 1.1zm-2.2 1.4c.5 0 .5-.3.8-.3.3-.3.3-.5.3-.8 0-.3 0-.5-.3-.8-.3 0-.5-.3-1.1-.3h-1.6v3.5h.8V426h.3l1.1 1.4h.8l-1.1-1.3zM576 81v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V81c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM64 220.6c0 76.5 62.1 138.5 138.5 138.5 27.2 0 53.9-8.2 76.5-23.1-72.9-59.3-72.4-171.2 0-230.5-22.6-15-49.3-23.1-76.5-23.1-76.4-.1-138.5 62-138.5 138.2zm224 108.8c70.5-55 70.2-162.2 0-217.5-70.2 55.3-70.5 162.6 0 217.5zm-142.3 76.3c0-8.7-5.7-14.4-14.7-14.7-4.6 0-9.5 1.4-12.8 6.5-2.4-4.1-6.5-6.5-12.2-6.5-3.8 0-7.6 1.4-10.6 5.4V392h-8.2v36.7h8.2c0-18.9-2.5-30.2 9-30.2 10.2 0 8.2 10.2 8.2 30.2h7.9c0-18.3-2.5-30.2 9-30.2 10.2 0 8.2 10 8.2 30.2h8.2v-23zm44.9-13.7h-7.9v4.4c-2.7-3.3-6.5-5.4-11.7-5.4-10.3 0-18.2 8.2-18.2 19.3 0 11.2 7.9 19.3 18.2 19.3 5.2 0 9-1.9 11.7-5.4v4.6h7.9V392zm40.5 25.6c0-15-22.9-8.2-22.9-15.2 0-5.7 11.9-4.8 18.5-1.1l3.3-6.5c-9.4-6.1-30.2-6-30.2 8.2 0 14.3 22.9 8.3 22.9 15 0 6.3-13.5 5.8-20.7.8l-3.5 6.3c11.2 7.6 32.6 6 32.6-7.5zm35.4 9.3l-2.2-6.8c-3.8 2.1-12.2 4.4-12.2-4.1v-16.6h13.1V392h-13.1v-11.2h-8.2V392h-7.6v7.3h7.6V416c0 17.6 17.3 14.4 22.6 10.9zm13.3-13.4h27.5c0-16.2-7.4-22.6-17.4-22.6-10.6 0-18.2 7.9-18.2 19.3 0 20.5 22.6 23.9 33.8 14.2l-3.8-6c-7.8 6.4-19.6 5.8-21.9-4.9zm59.1-21.5c-4.6-2-11.6-1.8-15.2 4.4V392h-8.2v36.7h8.2V408c0-11.6 9.5-10.1 12.8-8.4l2.4-7.6zm10.6 18.3c0-11.4 11.6-15.1 20.7-8.4l3.8-6.5c-11.6-9.1-32.7-4.1-32.7 15 0 19.8 22.4 23.8 32.7 15l-3.8-6.5c-9.2 6.5-20.7 2.6-20.7-8.6zm66.7-18.3H408v4.4c-8.3-11-29.9-4.8-29.9 13.9 0 19.2 22.4 24.7 29.9 13.9v4.6h8.2V392zm33.7 0c-2.4-1.2-11-2.9-15.2 4.4V392h-7.9v36.7h7.9V408c0-11 9-10.3 12.8-8.4l2.4-7.6zm40.3-14.9h-7.9v19.3c-8.2-10.9-29.9-5.1-29.9 13.9 0 19.4 22.5 24.6 29.9 13.9v4.6h7.9v-51.7zm7.6-75.1v4.6h.8V302h1.9v-.8h-4.6v.8h1.9zm6.6 123.8c0-.5 0-1.1-.3-1.6-.3-.3-.5-.8-.8-1.1-.3-.3-.8-.5-1.1-.8-.5 0-1.1-.3-1.6-.3-.3 0-.8.3-1.4.3-.5.3-.8.5-1.1.8-.5.3-.8.8-.8 1.1-.3.5-.3 1.1-.3 1.6 0 .3 0 .8.3 1.4 0 .3.3.8.8 1.1.3.3.5.5 1.1.8.5.3 1.1.3 1.4.3.5 0 1.1 0 1.6-.3.3-.3.8-.5 1.1-.8.3-.3.5-.8.8-1.1.3-.6.3-1.1.3-1.4zm3.2-124.7h-1.4l-1.6 3.5-1.6-3.5h-1.4v5.4h.8v-4.1l1.6 3.5h1.1l1.4-3.5v4.1h1.1v-5.4zm4.4-80.5c0-76.2-62.1-138.3-138.5-138.3-27.2 0-53.9 8.2-76.5 23.1 72.1 59.3 73.2 171.5 0 230.5 22.6 15 49.5 23.1 76.5 23.1 76.4.1 138.5-61.9 138.5-138.4z"], + "cc-paypal": [576, 512, [], "f1f4", "M186.3 258.2c0 12.2-9.7 21.5-22 21.5-9.2 0-16-5.2-16-15 0-12.2 9.5-22 21.7-22 9.3 0 16.3 5.7 16.3 15.5zM80.5 209.7h-4.7c-1.5 0-3 1-3.2 2.7l-4.3 26.7 8.2-.3c11 0 19.5-1.5 21.5-14.2 2.3-13.4-6.2-14.9-17.5-14.9zm284 0H360c-1.8 0-3 1-3.2 2.7l-4.2 26.7 8-.3c13 0 22-3 22-18-.1-10.6-9.6-11.1-18.1-11.1zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM128.3 215.4c0-21-16.2-28-34.7-28h-40c-2.5 0-5 2-5.2 4.7L32 294.2c-.3 2 1.2 4 3.2 4h19c2.7 0 5.2-2.9 5.5-5.7l4.5-26.6c1-7.2 13.2-4.7 18-4.7 28.6 0 46.1-17 46.1-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.2 8.2-5.8-8.5-14.2-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9 0 20.2-4.9 26.5-11.9-.5 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H200c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm40.5 97.9l63.7-92.6c.5-.5.5-1 .5-1.7 0-1.7-1.5-3.5-3.2-3.5h-19.2c-1.7 0-3.5 1-4.5 2.5l-26.5 39-11-37.5c-.8-2.2-3-4-5.5-4h-18.7c-1.7 0-3.2 1.8-3.2 3.5 0 1.2 19.5 56.8 21.2 62.1-2.7 3.8-20.5 28.6-20.5 31.6 0 1.8 1.5 3.2 3.2 3.2h19.2c1.8-.1 3.5-1.1 4.5-2.6zm159.3-106.7c0-21-16.2-28-34.7-28h-39.7c-2.7 0-5.2 2-5.5 4.7l-16.2 102c-.2 2 1.3 4 3.2 4h20.5c2 0 3.5-1.5 4-3.2l4.5-29c1-7.2 13.2-4.7 18-4.7 28.4 0 45.9-17 45.9-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.3 8.2-5.5-8.5-14-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9.3 0 20.5-4.9 26.5-11.9-.3 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H484c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm47.5-33.3c0-2-1.5-3.5-3.2-3.5h-18.5c-1.5 0-3 1.2-3.2 2.7l-16.2 104-.3.5c0 1.8 1.5 3.5 3.5 3.5h16.5c2.5 0 5-2.9 5.2-5.7L544 191.2v-.3zm-90 51.8c-12.2 0-21.7 9.7-21.7 22 0 9.7 7 15 16.2 15 12 0 21.7-9.2 21.7-21.5.1-9.8-6.9-15.5-16.2-15.5z"], + "cc-stripe": [576, 512, [], "f1f5", "M492.4 220.8c-8.9 0-18.7 6.7-18.7 22.7h36.7c0-16-9.3-22.7-18-22.7zM375 223.4c-8.2 0-13.3 2.9-17 7l.2 52.8c3.5 3.7 8.5 6.7 16.8 6.7 13.1 0 21.9-14.3 21.9-33.4 0-18.6-9-33.2-21.9-33.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM122.2 281.1c0 25.6-20.3 40.1-49.9 40.3-12.2 0-25.6-2.4-38.8-8.1v-33.9c12 6.4 27.1 11.3 38.9 11.3 7.9 0 13.6-2.1 13.6-8.7 0-17-54-10.6-54-49.9 0-25.2 19.2-40.2 48-40.2 11.8 0 23.5 1.8 35.3 6.5v33.4c-10.8-5.8-24.5-9.1-35.3-9.1-7.5 0-12.1 2.2-12.1 7.7 0 16 54.3 8.4 54.3 50.7zm68.8-56.6h-27V275c0 20.9 22.5 14.4 27 12.6v28.9c-4.7 2.6-13.3 4.7-24.9 4.7-21.1 0-36.9-15.5-36.9-36.5l.2-113.9 34.7-7.4v30.8H191zm74 2.4c-4.5-1.5-18.7-3.6-27.1 7.4v84.4h-35.5V194.2h30.7l2.2 10.5c8.3-15.3 24.9-12.2 29.6-10.5h.1zm44.1 91.8h-35.7V194.2h35.7zm0-142.9l-35.7 7.6v-28.9l35.7-7.6zm74.1 145.5c-12.4 0-20-5.3-25.1-9l-.1 40.2-35.5 7.5V194.2h31.3l1.8 8.8c4.9-4.5 13.9-11.1 27.8-11.1 24.9 0 48.4 22.5 48.4 63.8 0 45.1-23.2 65.5-48.6 65.6zm160.4-51.5h-69.5c1.6 16.6 13.8 21.5 27.6 21.5 14.1 0 25.2-3 34.9-7.9V312c-9.7 5.3-22.4 9.2-39.4 9.2-34.6 0-58.8-21.7-58.8-64.5 0-36.2 20.5-64.9 54.3-64.9 33.7 0 51.3 28.7 51.3 65.1 0 3.5-.3 10.9-.4 12.9z"], + "cc-visa": [576, 512, [], "f1f0", "M470.1 231.3s7.6 37.2 9.3 45H446c3.3-8.9 16-43.5 16-43.5-.2.3 3.3-9.1 5.3-14.9l2.8 13.4zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM152.5 331.2L215.7 176h-42.5l-39.3 106-4.3-21.5-14-71.4c-2.3-9.9-9.4-12.7-18.2-13.1H32.7l-.7 3.1c15.8 4 29.9 9.8 42.2 17.1l35.8 135h42.5zm94.4.2L272.1 176h-40.2l-25.1 155.4h40.1zm139.9-50.8c.2-17.7-10.6-31.2-33.7-42.3-14.1-7.1-22.7-11.9-22.7-19.2.2-6.6 7.3-13.4 23.1-13.4 13.1-.3 22.7 2.8 29.9 5.9l3.6 1.7 5.5-33.6c-7.9-3.1-20.5-6.6-36-6.6-39.7 0-67.6 21.2-67.8 51.4-.3 22.3 20 34.7 35.2 42.2 15.5 7.6 20.8 12.6 20.8 19.3-.2 10.4-12.6 15.2-24.1 15.2-16 0-24.6-2.5-37.7-8.3l-5.3-2.5-5.6 34.9c9.4 4.3 26.8 8.1 44.8 8.3 42.2.1 69.7-20.8 70-53zM528 331.4L495.6 176h-31.1c-9.6 0-16.9 2.8-21 12.9l-59.7 142.5H426s6.9-19.2 8.4-23.3H486c1.2 5.5 4.8 23.3 4.8 23.3H528z"], + "centercode": [512, 512, [], "f380", "M329.2 268.6c-3.8 35.2-35.4 60.6-70.6 56.8-35.2-3.8-60.6-35.4-56.8-70.6 3.8-35.2 35.4-60.6 70.6-56.8 35.1 3.8 60.6 35.4 56.8 70.6zm-85.8 235.1C96.7 496-8.2 365.5 10.1 224.3c11.2-86.6 65.8-156.9 139.1-192 161-77.1 349.7 37.4 354.7 216.6 4.1 147-118.4 262.2-260.5 254.8zm179.9-180c27.9-118-160.5-205.9-237.2-234.2-57.5 56.3-69.1 188.6-33.8 344.4 68.8 15.8 169.1-26.4 271-110.2z"], + "centos": [448, 512, [], "f789", "M289.6 97.5l31.6 31.7-76.3 76.5V97.5zm-162.4 31.7l76.3 76.5V97.5h-44.7zm41.5-41.6h44.7v127.9l10.8 10.8 10.8-10.8V87.6h44.7L224.2 32zm26.2 168.1l-10.8-10.8H55.5v-44.8L0 255.7l55.5 55.6v-44.8h128.6l10.8-10.8zm79.3-20.7h107.9v-44.8l-31.6-31.7zm173.3 20.7L392 200.1v44.8H264.3l-10.8 10.8 10.8 10.8H392v44.8l55.5-55.6zM65.4 176.2l32.5-31.7 90.3 90.5h15.3v-15.3l-90.3-90.5 31.6-31.7H65.4zm316.7-78.7h-78.5l31.6 31.7-90.3 90.5V235h15.3l90.3-90.5 31.6 31.7zM203.5 413.9V305.8l-76.3 76.5 31.6 31.7h44.7zM65.4 235h108.8l-76.3-76.5-32.5 31.7zm316.7 100.2l-31.6 31.7-90.3-90.5h-15.3v15.3l90.3 90.5-31.6 31.7h78.5zm0-58.8H274.2l76.3 76.5 31.6-31.7zm-60.9 105.8l-76.3-76.5v108.1h44.7zM97.9 352.9l76.3-76.5H65.4v44.8zm181.8 70.9H235V295.9l-10.8-10.8-10.8 10.8v127.9h-44.7l55.5 55.6zm-166.5-41.6l90.3-90.5v-15.3h-15.3l-90.3 90.5-32.5-31.7v78.7h79.4z"], + "chrome": [496, 512, [], "f268", "M131.5 217.5L55.1 100.1c47.6-59.2 119-91.8 192-92.1 42.3-.3 85.5 10.5 124.8 33.2 43.4 25.2 76.4 61.4 97.4 103L264 133.4c-58.1-3.4-113.4 29.3-132.5 84.1zm32.9 38.5c0 46.2 37.4 83.6 83.6 83.6s83.6-37.4 83.6-83.6-37.4-83.6-83.6-83.6-83.6 37.3-83.6 83.6zm314.9-89.2L339.6 174c37.9 44.3 38.5 108.2 6.6 157.2L234.1 503.6c46.5 2.5 94.4-7.7 137.8-32.9 107.4-62 150.9-192 107.4-303.9zM133.7 303.6L40.4 120.1C14.9 159.1 0 205.9 0 256c0 124 90.8 226.7 209.5 244.9l63.7-124.8c-57.6 10.8-113.2-20.8-139.5-72.5z"], + "chromecast": [512, 512, [], "f838", "M447.8,64H64c-23.6,0-42.7,19.1-42.7,42.7v63.9H64v-63.9h383.8v298.6H298.6V448H448c23.6,0,42.7-19.1,42.7-42.7V106.7 C490.7,83.1,471.4,64,447.8,64z M21.3,383.6L21.3,383.6l0,63.9h63.9C85.2,412.2,56.6,383.6,21.3,383.6L21.3,383.6z M21.3,298.6V341 c58.9,0,106.6,48.1,106.6,107h42.7C170.7,365.6,103.7,298.7,21.3,298.6z M213.4,448h42.7c-0.5-129.5-105.3-234.3-234.8-234.6l0,42.4 C127.3,255.6,213.3,342,213.4,448z"], + "cloudflare": [640, 512, [], "e07d", "M407.906,319.913l-230.8-2.928a4.58,4.58,0,0,1-3.632-1.926,4.648,4.648,0,0,1-.494-4.147,6.143,6.143,0,0,1,5.361-4.076L411.281,303.9c27.631-1.26,57.546-23.574,68.022-50.784l13.286-34.542a7.944,7.944,0,0,0,.524-2.936,7.735,7.735,0,0,0-.164-1.631A151.91,151.91,0,0,0,201.257,198.4,68.12,68.12,0,0,0,94.2,269.59C41.924,271.106,0,313.728,0,366.12a96.054,96.054,0,0,0,1.029,13.958,4.508,4.508,0,0,0,4.445,3.871l426.1.051c.043,0,.08-.019.122-.02a5.606,5.606,0,0,0,5.271-4l3.273-11.265c3.9-13.4,2.448-25.8-4.1-34.9C430.124,325.423,420.09,320.487,407.906,319.913ZM513.856,221.1c-2.141,0-4.271.062-6.391.164a3.771,3.771,0,0,0-3.324,2.653l-9.077,31.193c-3.9,13.4-2.449,25.786,4.1,34.89,6.02,8.4,16.054,13.323,28.238,13.9l49.2,2.939a4.491,4.491,0,0,1,3.51,1.894,4.64,4.64,0,0,1,.514,4.169,6.153,6.153,0,0,1-5.351,4.075l-51.125,2.939c-27.754,1.27-57.669,23.574-68.145,50.784l-3.695,9.606a2.716,2.716,0,0,0,2.427,3.68c.046,0,.088.017.136.017h175.91a4.69,4.69,0,0,0,4.539-3.37,124.807,124.807,0,0,0,4.682-34C640,277.3,583.524,221.1,513.856,221.1Z"], + "cloudscale": [448, 512, [], "f383", "M318.1 154l-9.4 7.6c-22.5-19.3-51.5-33.6-83.3-33.6C153.8 128 96 188.8 96 260.3c0 6.6.4 13.1 1.4 19.4-2-56 41.8-97.4 92.6-97.4 24.2 0 46.2 9.4 62.6 24.7l-25.2 20.4c-8.3-.9-16.8 1.8-23.1 8.1-11.1 11-11.1 28.9 0 40 11.1 11 28.9 11 40 0 6.3-6.3 9-14.9 8.1-23.1l75.2-88.8c6.3-6.5-3.3-15.9-9.5-9.6zm-83.8 111.5c-5.6 5.5-14.6 5.5-20.2 0-5.6-5.6-5.6-14.6 0-20.2s14.6-5.6 20.2 0 5.6 14.7 0 20.2zM224 32C100.5 32 0 132.5 0 256s100.5 224 224 224 224-100.5 224-224S347.5 32 224 32zm0 384c-88.2 0-160-71.8-160-160S135.8 96 224 96s160 71.8 160 160-71.8 160-160 160z"], + "cloudsmith": [332, 512, [], "f384", "M332.5 419.9c0 46.4-37.6 84.1-84 84.1s-84-37.7-84-84.1 37.6-84 84-84 84 37.6 84 84zm-84-243.9c46.4 0 80-37.6 80-84s-33.6-84-80-84-88 37.6-88 84-29.6 76-76 76-84 41.6-84 88 37.6 80 84 80 84-33.6 84-80 33.6-80 80-80z"], + "cloudversify": [616, 512, [], "f385", "M148.6 304c8.2 68.5 67.4 115.5 146 111.3 51.2 43.3 136.8 45.8 186.4-5.6 69.2 1.1 118.5-44.6 131.5-99.5 14.8-62.5-18.2-132.5-92.1-155.1-33-88.1-131.4-101.5-186.5-85-57.3 17.3-84.3 53.2-99.3 109.7-7.8 2.7-26.5 8.9-45 24.1 11.7 0 15.2 8.9 15.2 19.5v20.4c0 10.7-8.7 19.5-19.5 19.5h-20.2c-10.7 0-19.5-6-19.5-16.7V240H98.8C95 240 88 244.3 88 251.9v40.4c0 6.4 5.3 11.8 11.7 11.8h48.9zm227.4 8c-10.7 46.3 21.7 72.4 55.3 86.8C324.1 432.6 259.7 348 296 288c-33.2 21.6-33.7 71.2-29.2 92.9-17.9-12.4-53.8-32.4-57.4-79.8-3-39.9 21.5-75.7 57-93.9C297 191.4 369.9 198.7 400 248c-14.1-48-53.8-70.1-101.8-74.8 30.9-30.7 64.4-50.3 114.2-43.7 69.8 9.3 133.2 82.8 67.7 150.5 35-16.3 48.7-54.4 47.5-76.9l10.5 19.6c11.8 22 15.2 47.6 9.4 72-9.2 39-40.6 68.8-79.7 76.5-32.1 6.3-83.1-5.1-91.8-59.2zM128 208H88.2c-8.9 0-16.2-7.3-16.2-16.2v-39.6c0-8.9 7.3-16.2 16.2-16.2H128c8.9 0 16.2 7.3 16.2 16.2v39.6c0 8.9-7.3 16.2-16.2 16.2zM10.1 168C4.5 168 0 163.5 0 157.9v-27.8c0-5.6 4.5-10.1 10.1-10.1h27.7c5.5 0 10.1 4.5 10.1 10.1v27.8c0 5.6-4.5 10.1-10.1 10.1H10.1zM168 142.7v-21.4c0-5.1 4.2-9.3 9.3-9.3h21.4c5.1 0 9.3 4.2 9.3 9.3v21.4c0 5.1-4.2 9.3-9.3 9.3h-21.4c-5.1 0-9.3-4.2-9.3-9.3zM56 235.5v25c0 6.3-5.1 11.5-11.4 11.5H19.4C13.1 272 8 266.8 8 260.5v-25c0-6.3 5.1-11.5 11.4-11.5h25.1c6.4 0 11.5 5.2 11.5 11.5z"], + "codepen": [512, 512, [], "f1cb", "M502.285 159.704l-234-156c-7.987-4.915-16.511-4.96-24.571 0l-234 156C3.714 163.703 0 170.847 0 177.989v155.999c0 7.143 3.714 14.286 9.715 18.286l234 156.022c7.987 4.915 16.511 4.96 24.571 0l234-156.022c6-3.999 9.715-11.143 9.715-18.286V177.989c-.001-7.142-3.715-14.286-9.716-18.285zM278 63.131l172.286 114.858-76.857 51.429L278 165.703V63.131zm-44 0v102.572l-95.429 63.715-76.857-51.429L234 63.131zM44 219.132l55.143 36.857L44 292.846v-73.714zm190 229.715L61.714 333.989l76.857-51.429L234 346.275v102.572zm22-140.858l-77.715-52 77.715-52 77.715 52-77.715 52zm22 140.858V346.275l95.429-63.715 76.857 51.429L278 448.847zm190-156.001l-55.143-36.857L468 219.132v73.714z"], + "codiepie": [472, 512, [], "f284", "M422.5 202.9c30.7 0 33.5 53.1-.3 53.1h-10.8v44.3h-26.6v-97.4h37.7zM472 352.6C429.9 444.5 350.4 504 248 504 111 504 0 393 0 256S111 8 248 8c97.4 0 172.8 53.7 218.2 138.4l-186 108.8L472 352.6zm-38.5 12.5l-60.3-30.7c-27.1 44.3-70.4 71.4-122.4 71.4-82.5 0-149.2-66.7-149.2-148.9 0-82.5 66.7-149.2 149.2-149.2 48.4 0 88.9 23.5 116.9 63.4l59.5-34.6c-40.7-62.6-104.7-100-179.2-100-121.2 0-219.5 98.3-219.5 219.5S126.8 475.5 248 475.5c78.6 0 146.5-42.1 185.5-110.4z"], + "confluence": [512, 512, [], "f78d", "M2.3 412.2c-4.5 7.6-2.1 17.5 5.5 22.2l105.9 65.2c7.7 4.7 17.7 2.4 22.4-5.3 0-.1.1-.2.1-.2 67.1-112.2 80.5-95.9 280.9-.7 8.1 3.9 17.8.4 21.7-7.7.1-.1.1-.3.2-.4l50.4-114.1c3.6-8.1-.1-17.6-8.1-21.3-22.2-10.4-66.2-31.2-105.9-50.3C127.5 179 44.6 345.3 2.3 412.2zm507.4-312.1c4.5-7.6 2.1-17.5-5.5-22.2L398.4 12.8c-7.5-5-17.6-3.1-22.6 4.4-.2.3-.4.6-.6 1-67.3 112.6-81.1 95.6-280.6.9-8.1-3.9-17.8-.4-21.7 7.7-.1.1-.1.3-.2.4L22.2 141.3c-3.6 8.1.1 17.6 8.1 21.3 22.2 10.4 66.3 31.2 106 50.4 248 120 330.8-45.4 373.4-112.9z"], + "connectdevelop": [576, 512, [], "f20e", "M550.5 241l-50.089-86.786c1.071-2.142 1.875-4.553 1.875-7.232 0-8.036-6.696-14.733-14.732-15.001l-55.447-95.893c.536-1.607 1.071-3.214 1.071-4.821 0-8.571-6.964-15.268-15.268-15.268-4.821 0-8.839 2.143-11.786 5.625H299.518C296.839 18.143 292.821 16 288 16s-8.839 2.143-11.518 5.625H170.411C167.464 18.143 163.447 16 158.625 16c-8.303 0-15.268 6.696-15.268 15.268 0 1.607.536 3.482 1.072 4.821l-55.983 97.233c-5.356 2.41-9.107 7.5-9.107 13.661 0 .535.268 1.071.268 1.607l-53.304 92.143c-7.232 1.339-12.59 7.5-12.59 15 0 7.232 5.089 13.393 12.054 15l55.179 95.358c-.536 1.607-.804 2.946-.804 4.821 0 7.232 5.089 13.393 12.054 14.732l51.697 89.732c-.536 1.607-1.071 3.482-1.071 5.357 0 8.571 6.964 15.268 15.268 15.268 4.821 0 8.839-2.143 11.518-5.357h106.875C279.161 493.857 283.447 496 288 496s8.839-2.143 11.518-5.357h107.143c2.678 2.946 6.696 4.821 10.982 4.821 8.571 0 15.268-6.964 15.268-15.268 0-1.607-.267-2.946-.803-4.285l51.697-90.268c6.964-1.339 12.054-7.5 12.054-14.732 0-1.607-.268-3.214-.804-4.821l54.911-95.358c6.964-1.339 12.322-7.5 12.322-15-.002-7.232-5.092-13.393-11.788-14.732zM153.535 450.732l-43.66-75.803h43.66v75.803zm0-83.839h-43.66c-.268-1.071-.804-2.142-1.339-3.214l44.999-47.41v50.624zm0-62.411l-50.357 53.304c-1.339-.536-2.679-1.34-4.018-1.607L43.447 259.75c.535-1.339.535-2.679.535-4.018s0-2.41-.268-3.482l51.965-90c2.679-.268 5.357-1.072 7.768-2.679l50.089 51.965v92.946zm0-102.322l-45.803-47.41c1.339-2.143 2.143-4.821 2.143-7.767 0-.268-.268-.804-.268-1.072l43.928-15.804v72.053zm0-80.625l-43.66 15.804 43.66-75.536v59.732zm326.519 39.108l.804 1.339L445.5 329.125l-63.75-67.232 98.036-101.518.268.268zM291.75 355.107l11.518 11.786H280.5l11.25-11.786zm-.268-11.25l-83.303-85.446 79.553-84.375 83.036 87.589-79.286 82.232zm5.357 5.893l79.286-82.232 67.5 71.25-5.892 28.125H313.714l-16.875-17.143zM410.411 44.393c1.071.536 2.142 1.072 3.482 1.34l57.857 100.714v.536c0 2.946.803 5.624 2.143 7.767L376.393 256l-83.035-87.589L410.411 44.393zm-9.107-2.143L287.732 162.518l-57.054-60.268 166.339-60h4.287zm-123.483 0c2.678 2.678 6.16 4.285 10.179 4.285s7.5-1.607 10.179-4.285h75L224.786 95.821 173.893 42.25h103.928zm-116.249 5.625l1.071-2.142a33.834 33.834 0 0 0 2.679-.804l51.161 53.84-54.911 19.821V47.875zm0 79.286l60.803-21.964 59.732 63.214-79.553 84.107-40.982-42.053v-83.304zm0 92.678L198 257.607l-36.428 38.304v-76.072zm0 87.858l42.053-44.464 82.768 85.982-17.143 17.678H161.572v-59.196zm6.964 162.053c-1.607-1.607-3.482-2.678-5.893-3.482l-1.071-1.607v-89.732h99.91l-91.607 94.821h-1.339zm129.911 0c-2.679-2.41-6.428-4.285-10.447-4.285s-7.767 1.875-10.447 4.285h-96.429l91.607-94.821h38.304l91.607 94.821H298.447zm120-11.786l-4.286 7.5c-1.339.268-2.41.803-3.482 1.339l-89.196-91.875h114.376l-17.412 83.036zm12.856-22.232l12.858-60.803h21.964l-34.822 60.803zm34.822-68.839h-20.357l4.553-21.16 17.143 18.214c-.535.803-1.071 1.874-1.339 2.946zm66.161-107.411l-55.447 96.697c-1.339.535-2.679 1.071-4.018 1.874l-20.625-21.964 34.554-163.928 45.803 79.286c-.267 1.339-.803 2.678-.803 4.285 0 1.339.268 2.411.536 3.75z"], + "contao": [512, 512, [], "f26d", "M45.4 305c14.4 67.1 26.4 129 68.2 175H34c-18.7 0-34-15.2-34-34V66c0-18.7 15.2-34 34-34h57.7C77.9 44.6 65.6 59.2 54.8 75.6c-45.4 70-27 146.8-9.4 229.4zM478 32h-90.2c21.4 21.4 39.2 49.5 52.7 84.1l-137.1 29.3c-14.9-29-37.8-53.3-82.6-43.9-24.6 5.3-41 19.3-48.3 34.6-8.8 18.7-13.2 39.8 8.2 140.3 21.1 100.2 33.7 117.7 49.5 131.2 12.9 11.1 33.4 17 58.3 11.7 44.5-9.4 55.7-40.7 57.4-73.2l137.4-29.6c3.2 71.5-18.7 125.2-57.4 163.6H478c18.7 0 34-15.2 34-34V66c0-18.8-15.2-34-34-34z"], + "cotton-bureau": [512, 512, [], "f89e", "M474.31 330.41c-23.66 91.85-94.23 144.59-201.9 148.35V429.6c0-48 26.41-74.39 74.39-74.39 62 0 99.2-37.2 99.2-99.21 0-61.37-36.53-98.28-97.38-99.06-33-69.32-146.5-64.65-177.24 0C110.52 157.72 74 194.63 74 256c0 62.13 37.27 99.41 99.4 99.41 48 0 74.55 26.23 74.55 74.39V479c-134.43-5-211.1-85.07-211.1-223 0-141.82 81.35-223.2 223.2-223.2 114.77 0 189.84 53.2 214.69 148.81H500C473.88 71.51 388.22 8 259.82 8 105 8 12 101.19 12 255.82 12 411.14 105.19 504.34 259.82 504c128.27 0 213.87-63.81 239.67-173.59zM357 182.33c41.37 3.45 64.2 29 64.2 73.67 0 48-26.43 74.41-74.4 74.41-28.61 0-49.33-9.59-61.59-27.33 83.06-16.55 75.59-99.67 71.79-120.75zm-81.68 97.36c-2.46-10.34-16.33-87 56.23-97 2.27 10.09 16.52 87.11-56.26 97zM260 132c28.61 0 49 9.67 61.44 27.61-28.36 5.48-49.36 20.59-61.59 43.45-12.23-22.86-33.23-38-61.6-43.45 12.41-17.69 33.27-27.35 61.57-27.35zm-71.52 50.72c73.17 10.57 58.91 86.81 56.49 97-72.41-9.84-59-86.95-56.25-97zM173.2 330.41c-48 0-74.4-26.4-74.4-74.41 0-44.36 22.86-70 64.22-73.67-6.75 37.2-1.38 106.53 71.65 120.75-12.14 17.63-32.84 27.3-61.14 27.3zm53.21 12.39A80.8 80.8 0 0 0 260 309.25c7.77 14.49 19.33 25.54 33.82 33.55a80.28 80.28 0 0 0-33.58 33.83c-8-14.5-19.07-26.23-33.56-33.83z"], + "cpanel": [640, 512, [], "f388", "M210.3 220.2c-5.6-24.8-26.9-41.2-51-41.2h-37c-7.1 0-12.5 4.5-14.3 10.9L73.1 320l24.7-.1c6.8 0 12.3-4.5 14.2-10.7l25.8-95.7h19.8c8.4 0 16.2 5.6 18.3 14.8 2.5 10.9-5.9 22.6-18.3 22.6h-10.3c-7 0-12.5 4.6-14.3 10.8l-6.4 23.8h32c37.2 0 58.3-36.2 51.7-65.3zm-156.5 28h18.6c6.9 0 12.4-4.4 14.3-10.9l6.2-23.6h-40C30 213.7 9 227.8 1.7 254.8-7 288.6 18.5 320 52 320h12.4l7.1-26.1c1.2-4.4-2.2-8.3-6.4-8.3H53.8c-24.7 0-24.9-37.4 0-37.4zm247.5-34.8h-77.9l-3.5 13.4c-2.4 9.6 4.5 18.5 14.2 18.5h57.5c4 0 2.4 4.3 2.1 5.3l-8.6 31.8c-.4 1.4-.9 5.3-5.5 5.3h-34.9c-5.3 0-5.3-7.9 0-7.9h21.6c6.8 0 12.3-4.6 14.2-10.8l3.5-13.2h-48.4c-39.2 0-43.6 63.8-.7 63.8l57.5.2c11.2 0 20.6-7.2 23.4-17.8l14-51.8c4.8-19.2-9.7-36.8-28.5-36.8zM633.1 179h-18.9c-4.9 0-9.2 3.2-10.4 7.9L568.2 320c20.7 0 39.8-13.8 44.9-34.5l26.5-98.2c1.2-4.3-2-8.3-6.5-8.3zm-236.3 34.7v.1h-48.3l-26.2 98c-1.2 4.4 2.2 8.3 6.4 8.3h18.9c4.8 0 9.2-3 10.4-7.8l17.2-64H395c12.5 0 21.4 11.8 18.1 23.4l-10.6 40c-1.2 4.3 1.9 8.3 6.4 8.3H428c4.6 0 9.1-2.9 10.3-7.8l8.8-33.1c9-33.1-15.9-65.4-50.3-65.4zm98.3 74.6c-3.6 0-6-3.4-5.1-6.7l8-30c.9-3.9 3.7-6 7.8-6h32.9c2.6 0 4.6 2.4 3.9 5.1l-.7 2.6c-.6 2-1.9 3-3.9 3h-21.6c-7 0-12.6 4.6-14.2 10.8l-3.5 13h53.4c10.5 0 20.3-6.6 23.2-17.6l3.2-12c4.9-19.1-9.3-36.8-28.3-36.8h-47.3c-17.9 0-33.8 12-38.6 29.6l-10.8 40c-5 17.7 8.3 36.7 28.3 36.7h66.7c6.8 0 12.3-4.5 14.2-10.7l5.7-21z"], + "creative-commons": [496, 512, [], "f25e", "M245.83 214.87l-33.22 17.28c-9.43-19.58-25.24-19.93-27.46-19.93-22.13 0-33.22 14.61-33.22 43.84 0 23.57 9.21 43.84 33.22 43.84 14.47 0 24.65-7.09 30.57-21.26l30.55 15.5c-6.17 11.51-25.69 38.98-65.1 38.98-22.6 0-73.96-10.32-73.96-77.05 0-58.69 43-77.06 72.63-77.06 30.72-.01 52.7 11.95 65.99 35.86zm143.05 0l-32.78 17.28c-9.5-19.77-25.72-19.93-27.9-19.93-22.14 0-33.22 14.61-33.22 43.84 0 23.55 9.23 43.84 33.22 43.84 14.45 0 24.65-7.09 30.54-21.26l31 15.5c-2.1 3.75-21.39 38.98-65.09 38.98-22.69 0-73.96-9.87-73.96-77.05 0-58.67 42.97-77.06 72.63-77.06 30.71-.01 52.58 11.95 65.56 35.86zM247.56 8.05C104.74 8.05 0 123.11 0 256.05c0 138.49 113.6 248 247.56 248 129.93 0 248.44-100.87 248.44-248 0-137.87-106.62-248-248.44-248zm.87 450.81c-112.54 0-203.7-93.04-203.7-202.81 0-105.42 85.43-203.27 203.72-203.27 112.53 0 202.82 89.46 202.82 203.26-.01 121.69-99.68 202.82-202.84 202.82z"], + "creative-commons-by": [496, 512, [], "f4e7", "M314.9 194.4v101.4h-28.3v120.5h-77.1V295.9h-28.3V194.4c0-4.4 1.6-8.2 4.6-11.3 3.1-3.1 6.9-4.7 11.3-4.7H299c4.1 0 7.8 1.6 11.1 4.7 3.1 3.2 4.8 6.9 4.8 11.3zm-101.5-63.7c0-23.3 11.5-35 34.5-35s34.5 11.7 34.5 35c0 23-11.5 34.5-34.5 34.5s-34.5-11.5-34.5-34.5zM247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3z"], + "creative-commons-nc": [496, 512, [], "f4e8", "M247.6 8C387.4 8 496 115.9 496 256c0 147.2-118.5 248-248.4 248C113.1 504 0 393.2 0 256 0 123.1 104.7 8 247.6 8zM55.8 189.1c-7.4 20.4-11.1 42.7-11.1 66.9 0 110.9 92.1 202.4 203.7 202.4 122.4 0 177.2-101.8 178.5-104.1l-93.4-41.6c-7.7 37.1-41.2 53-68.2 55.4v38.1h-28.8V368c-27.5-.3-52.6-10.2-75.3-29.7l34.1-34.5c31.7 29.4 86.4 31.8 86.4-2.2 0-6.2-2.2-11.2-6.6-15.1-14.2-6-1.8-.1-219.3-97.4zM248.4 52.3c-38.4 0-112.4 8.7-170.5 93l94.8 42.5c10-31.3 40.4-42.9 63.8-44.3v-38.1h28.8v38.1c22.7 1.2 43.4 8.9 62 23L295 199.7c-42.7-29.9-83.5-8-70 11.1 53.4 24.1 43.8 19.8 93 41.6l127.1 56.7c4.1-17.4 6.2-35.1 6.2-53.1 0-57-19.8-105-59.3-143.9-39.3-39.9-87.2-59.8-143.6-59.8z"], + "creative-commons-nc-eu": [496, 512, [], "f4e9", "M247.7 8C103.6 8 0 124.8 0 256c0 136.3 111.7 248 247.7 248C377.9 504 496 403.1 496 256 496 117 388.4 8 247.7 8zm.6 450.7c-112 0-203.6-92.5-203.6-202.7 0-23.2 3.7-45.2 10.9-66l65.7 29.1h-4.7v29.5h23.3c0 6.2-.4 3.2-.4 19.5h-22.8v29.5h27c11.4 67 67.2 101.3 124.6 101.3 26.6 0 50.6-7.9 64.8-15.8l-10-46.1c-8.7 4.6-28.2 10.8-47.3 10.8-28.2 0-58.1-10.9-67.3-50.2h90.3l128.3 56.8c-1.5 2.1-56.2 104.3-178.8 104.3zm-16.7-190.6l-.5-.4.9.4h-.4zm77.2-19.5h3.7v-29.5h-70.3l-28.6-12.6c2.5-5.5 5.4-10.5 8.8-14.3 12.9-15.8 31.1-22.4 51.1-22.4 18.3 0 35.3 5.4 46.1 10l11.6-47.3c-15-6.6-37-12.4-62.3-12.4-39 0-72.2 15.8-95.9 42.3-5.3 6.1-9.8 12.9-13.9 20.1l-81.6-36.1c64.6-96.8 157.7-93.6 170.7-93.6 113 0 203 90.2 203 203.4 0 18.7-2.1 36.3-6.3 52.9l-136.1-60.5z"], + "creative-commons-nc-jp": [496, 512, [], "f4ea", "M247.7 8C103.6 8 0 124.8 0 256c0 136.4 111.8 248 247.7 248C377.9 504 496 403.2 496 256 496 117.2 388.5 8 247.7 8zm.6 450.7c-112 0-203.6-92.5-203.6-202.7 0-21.1 3-41.2 9-60.3l127 56.5h-27.9v38.6h58.1l5.7 11.8v18.7h-63.8V360h63.8v56h61.7v-56h64.2v-35.7l81 36.1c-1.5 2.2-57.1 98.3-175.2 98.3zm87.6-137.3h-57.6v-18.7l2.9-5.6 54.7 24.3zm6.5-51.4v-17.8h-38.6l63-116H301l-43.4 96-23-10.2-39.6-85.7h-65.8l27.3 51-81.9-36.5c27.8-44.1 82.6-98.1 173.7-98.1 112.8 0 203 90 203 203.4 0 21-2.7 40.6-7.9 59l-101-45.1z"], + "creative-commons-nd": [496, 512, [], "f4eb", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm94 144.3v42.5H162.1V197h180.3zm0 79.8v42.5H162.1v-42.5h180.3z"], + "creative-commons-pd": [496, 512, [], "f4ec", "M248 8C111 8 0 119.1 0 256c0 137 111 248 248 248s248-111 248-248C496 119.1 385 8 248 8zm0 449.5c-139.2 0-235.8-138-190.2-267.9l78.8 35.1c-2.1 10.5-3.3 21.5-3.3 32.9 0 99 73.9 126.9 120.4 126.9 22.9 0 53.5-6.7 79.4-29.5L297 311.1c-5.5 6.3-17.6 16.7-36.3 16.7-37.8 0-53.7-39.9-53.9-71.9 230.4 102.6 216.5 96.5 217.9 96.8-34.3 62.4-100.6 104.8-176.7 104.8zm194.2-150l-224-100c18.8-34 54.9-30.7 74.7-11l40.4-41.6c-27.1-23.3-58-27.5-78.1-27.5-47.4 0-80.9 20.5-100.7 51.6l-74.9-33.4c36.1-54.9 98.1-91.2 168.5-91.2 111.1 0 201.5 90.4 201.5 201.5 0 18-2.4 35.4-6.8 52-.3-.1-.4-.2-.6-.4z"], + "creative-commons-pd-alt": [496, 512, [], "f4ed", "M247.6 8C104.7 8 0 123.1 0 256c0 138.5 113.6 248 247.6 248C377.5 504 496 403.1 496 256 496 118.1 389.4 8 247.6 8zm.8 450.8c-112.5 0-203.7-93-203.7-202.8 0-105.4 85.5-203.3 203.7-203.3 112.6 0 202.9 89.5 202.8 203.3 0 121.7-99.6 202.8-202.8 202.8zM316.7 186h-53.2v137.2h53.2c21.4 0 70-5.1 70-68.6 0-63.4-48.6-68.6-70-68.6zm.8 108.5h-19.9v-79.7l19.4-.1c3.8 0 35-2.1 35 39.9 0 24.6-10.5 39.9-34.5 39.9zM203.7 186h-68.2v137.3h34.6V279h27c54.1 0 57.1-37.5 57.1-46.5 0-31-16.8-46.5-50.5-46.5zm-4.9 67.3h-29.2v-41.6h28.3c30.9 0 28.8 41.6.9 41.6z"], + "creative-commons-remix": [496, 512, [], "f4ee", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm161.7 207.7l4.9 2.2v70c-7.2 3.6-63.4 27.5-67.3 28.8-6.5-1.8-113.7-46.8-137.3-56.2l-64.2 26.6-63.3-27.5v-63.8l59.3-24.8c-.7-.7-.4 5-.4-70.4l67.3-29.7L361 178.5v61.6l49.1 20.3zm-70.4 81.5v-43.8h-.4v-1.8l-113.8-46.5V295l113.8 46.9v-.4l.4.4zm7.5-57.6l39.9-16.4-36.8-15.5-39 16.4 35.9 15.5zm52.3 38.1v-43L355.2 298v43.4l44.3-19z"], + "creative-commons-sa": [496, 512, [], "f4ef", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zM137.7 221c13-83.9 80.5-95.7 108.9-95.7 99.8 0 127.5 82.5 127.5 134.2 0 63.6-41 132.9-128.9 132.9-38.9 0-99.1-20-109.4-97h62.5c1.5 30.1 19.6 45.2 54.5 45.2 23.3 0 58-18.2 58-82.8 0-82.5-49.1-80.6-56.7-80.6-33.1 0-51.7 14.6-55.8 43.8h18.2l-49.2 49.2-49-49.2h19.4z"], + "creative-commons-sampling": [496, 512, [], "f4f0", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm3.6 53.2c2.8-.3 11.5 1 11.5 11.5l6.6 107.2 4.9-59.3c0-6 4.7-10.6 10.6-10.6 5.9 0 10.6 4.7 10.6 10.6 0 2.5-.5-5.7 5.7 81.5l5.8-64.2c.3-2.9 2.9-9.3 10.2-9.3 3.8 0 9.9 2.3 10.6 8.9l11.5 96.5 5.3-12.8c1.8-4.4 5.2-6.6 10.2-6.6h58v21.3h-50.9l-18.2 44.3c-3.9 9.9-19.5 9.1-20.8-3.1l-4-31.9-7.5 92.6c-.3 3-3 9.3-10.2 9.3-3 0-9.8-2.1-10.6-9.3 0-1.9.6 5.8-6.2-77.9l-5.3 72.2c-1.1 4.8-4.8 9.3-10.6 9.3-2.9 0-9.8-2-10.6-9.3 0-1.9.5 6.7-5.8-87.7l-5.8 94.8c0 6.3-3.6 12.4-10.6 12.4-5.2 0-10.6-4.1-10.6-12l-5.8-87.7c-5.8 92.5-5.3 84-5.3 85.9-1.1 4.8-4.8 9.3-10.6 9.3-3 0-9.8-2.1-10.6-9.3 0-.7-.4-1.1-.4-2.6l-6.2-88.6L182 348c-.7 6.5-6.7 9.3-10.6 9.3-5.8 0-9.6-4.1-10.6-8.9L149.7 272c-2 4-3.5 8.4-11.1 8.4H87.2v-21.3H132l13.7-27.9c4.4-9.9 18.2-7.2 19.9 2.7l3.1 20.4 8.4-97.9c0-6 4.8-10.6 10.6-10.6.5 0 10.6-.2 10.6 12.4l4.9 69.1 6.6-92.6c0-10.1 9.5-10.6 10.2-10.6.6 0 10.6.7 10.6 10.6l5.3 80.6 6.2-97.9c.1-1.1-.6-10.3 9.9-11.5z"], + "creative-commons-sampling-plus": [496, 512, [], "f4f1", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm107 205.6c-4.7 0-9 2.8-10.7 7.2l-4 9.5-11-92.8c-1.7-13.9-22-13.4-23.1.4l-4.3 51.4-5.2-68.8c-1.1-14.3-22.1-14.2-23.2 0l-3.5 44.9-5.9-94.3c-.9-14.5-22.3-14.4-23.2 0l-5.1 83.7-4.3-66.3c-.9-14.4-22.2-14.4-23.2 0l-5.3 80.2-4.1-57c-1.1-14.3-22-14.3-23.2-.2l-7.7 89.8-1.8-12.2c-1.7-11.4-17.1-13.6-22-3.3l-13.2 27.7H87.5v23.2h51.3c4.4 0 8.4-2.5 10.4-6.4l10.7 73.1c2 13.5 21.9 13 23.1-.7l3.8-43.6 5.7 78.3c1.1 14.4 22.3 14.2 23.2-.1l4.6-70.4 4.8 73.3c.9 14.4 22.3 14.4 23.2-.1l4.9-80.5 4.5 71.8c.9 14.3 22.1 14.5 23.2.2l4.6-58.6 4.9 64.4c1.1 14.3 22 14.2 23.1.1l6.8-83 2.7 22.3c1.4 11.8 17.7 14.1 22.3 3.1l18-43.4h50.5V258l-58.4.3zm-78 5.2h-21.9v21.9c0 4.1-3.3 7.5-7.5 7.5-4.1 0-7.5-3.3-7.5-7.5v-21.9h-21.9c-4.1 0-7.5-3.3-7.5-7.5 0-4.1 3.4-7.5 7.5-7.5h21.9v-21.9c0-4.1 3.4-7.5 7.5-7.5s7.5 3.3 7.5 7.5v21.9h21.9c4.1 0 7.5 3.3 7.5 7.5 0 4.1-3.4 7.5-7.5 7.5z"], + "creative-commons-share": [496, 512, [], "f4f2", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm101 132.4c7.8 0 13.7 6.1 13.7 13.7v182.5c0 7.7-6.1 13.7-13.7 13.7H214.3c-7.7 0-13.7-6-13.7-13.7v-54h-54c-7.8 0-13.7-6-13.7-13.7V131.1c0-8.2 6.6-12.7 12.4-13.7h136.4c7.7 0 13.7 6 13.7 13.7v54h54zM159.9 300.3h40.7V198.9c0-7.4 5.8-12.6 12-13.7h55.8v-40.3H159.9v155.4zm176.2-88.1H227.6v155.4h108.5V212.2z"], + "creative-commons-zero": [496, 512, [], "f4f3", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm-.4 60.5c-81.9 0-102.5 77.3-102.5 142.8 0 65.5 20.6 142.8 102.5 142.8S350.5 321.5 350.5 256c0-65.5-20.6-142.8-102.5-142.8zm0 53.9c3.3 0 6.4.5 9.2 1.2 5.9 5.1 8.8 12.1 3.1 21.9l-54.5 100.2c-1.7-12.7-1.9-25.1-1.9-34.4 0-28.8 2-88.9 44.1-88.9zm40.8 46.2c2.9 15.4 3.3 31.4 3.3 42.7 0 28.9-2 88.9-44.1 88.9-13.5 0-32.6-7.7-20.1-26.4l60.9-105.2z"], + "critical-role": [448, 512, [], "f6c9", "M225.82 0c.26.15 216.57 124.51 217.12 124.72 3 1.18 3.7 3.46 3.7 6.56q-.11 125.17 0 250.36a5.88 5.88 0 0 1-3.38 5.78c-21.37 12-207.86 118.29-218.93 124.58h-3C142 466.34 3.08 386.56 2.93 386.48a3.29 3.29 0 0 1-1.88-3.24c0-.87 0-225.94-.05-253.1a5 5 0 0 1 2.93-4.93C27.19 112.11 213.2 6 224.07 0zM215.4 20.42l-.22-.16Q118.06 75.55 21 130.87c0 .12.08.23.13.35l30.86 11.64c-7.71 6-8.32 6-10.65 5.13-.1 0-24.17-9.28-26.8-10v230.43c.88-1.41 64.07-110.91 64.13-111 1.62-2.82 3-1.92 9.12-1.52 1.4.09 1.48.22.78 1.42-41.19 71.33-36.4 63-67.48 116.94-.81 1.4-.61 1.13 1.25 1.13h186.5c1.44 0 1.69-.23 1.7-1.64v-8.88c0-1.34 2.36-.81-18.37-1-7.46-.07-14.14-3.22-21.38-12.7-7.38-9.66-14.62-19.43-21.85-29.21-2.28-3.08-3.45-2.38-16.76-2.38-1.75 0-1.78 0-1.76 1.82.29 26.21.15 25.27 1 32.66.52 4.37 2.16 4.2 9.69 4.81 3.14.26 3.88 4.08.52 4.92-1.57.39-31.6.51-33.67-.1a2.42 2.42 0 0 1 .3-4.73c3.29-.76 6.16.81 6.66-4.44 1.3-13.66 1.17-9 1.1-79.42 0-10.82-.35-12.58-5.36-13.55-1.22-.24-3.54-.16-4.69-.55-2.88-1-2-4.84 1.77-4.85 33.67 0 46.08-1.07 56.06 4.86 7.74 4.61 12 11.48 12.51 20.4.88 14.59-6.51 22.35-15 32.59a1.46 1.46 0 0 0 0 2.22c2.6 3.25 5 6.63 7.71 9.83 27.56 33.23 24.11 30.54 41.28 33.06.89.13 1-.42 1-1.15v-11c0-1 .32-1.43 1.41-1.26a72.37 72.37 0 0 0 23.58-.3c1.08-.15 1.5.2 1.48 1.33 0 .11.88 26.69.87 26.8-.05 1.52.67 1.62 1.89 1.62h186.71Q386.51 304.6 346 234.33c2.26-.66-.4 0 6.69-1.39 2-.39 2.05-.41 3.11 1.44 7.31 12.64 77.31 134 77.37 134.06V138c-1.72.5-103.3 38.72-105.76 39.68-1.08.42-1.55.2-1.91-.88-.63-1.9-1.34-3.76-2.09-5.62-.32-.79-.09-1.13.65-1.39.1 0 95.53-35.85 103-38.77-65.42-37.57-130.56-75-196-112.6l86.82 150.39-.28.33c-9.57-.9-10.46-1.6-11.8-3.94-1-1.69-73.5-127.71-82-142.16-9.1 14.67-83.56 146.21-85.37 146.32-2.93.17-5.88.08-9.25.08q43.25-74.74 86.18-149zm51.93 129.92a37.68 37.68 0 0 0 5.54-.85c1.69-.3 2.53.2 2.6 1.92 0 .11.07 19.06-.86 20.45s-1.88 1.22-2.6-.19c-5-9.69 6.22-9.66-39.12-12-.7 0-1 .23-1 .93 0 .13 3.72 122 3.73 122.11 0 .89.52 1.2 1.21 1.51a83.92 83.92 0 0 1 8.7 4.05c7.31 4.33 11.38 10.84 12.41 19.31 1.44 11.8-2.77 35.77-32.21 37.14-2.75.13-28.26 1.08-34.14-23.25-4.66-19.26 8.26-32.7 19.89-36.4a2.45 2.45 0 0 0 2-2.66c.1-5.63 3-107.1 3.71-121.35.05-1.08-.62-1.16-1.35-1.15-32.35.52-36.75-.34-40.22 8.52-2.42 6.18-4.14 1.32-3.95.23q1.59-9 3.31-18c.4-2.11 1.43-2.61 3.43-1.86 5.59 2.11 6.72 1.7 37.25 1.92 1.73 0 1.78-.08 1.82-1.85.68-27.49.58-22.59 1-29.55a2.69 2.69 0 0 0-1.63-2.8c-5.6-2.91-8.75-7.55-8.9-13.87-.35-14.81 17.72-21.67 27.38-11.51 6.84 7.19 5.8 18.91-2.45 24.15a4.35 4.35 0 0 0-2.22 4.34c0 .59-.11-4.31 1 30.05 0 .9.43 1.12 1.24 1.11.1 0 23-.09 34.47-.37zM68.27 141.7c19.84-4.51 32.68-.56 52.49 1.69 2.76.31 3.74 1.22 3.62 4-.21 5-1.16 22.33-1.24 23.15a2.65 2.65 0 0 1-1.63 2.34c-4.06 1.7-3.61-4.45-4-7.29-3.13-22.43-73.87-32.7-74.63 25.4-.31 23.92 17 53.63 54.08 50.88 27.24-2 19-20.19 24.84-20.47a2.72 2.72 0 0 1 3 3.36c-1.83 10.85-3.42 18.95-3.45 19.15-1.54 9.17-86.7 22.09-93.35-42.06-2.71-25.85 10.44-53.37 40.27-60.15zm80 87.67h-19.49a2.57 2.57 0 0 1-2.66-1.79c2.38-3.75 5.89.92 5.86-6.14-.08-25.75.21-38 .23-40.1 0-3.42-.53-4.65-3.32-4.94-7-.72-3.11-3.37-1.11-3.38 11.84-.1 22.62-.18 30.05.72 8.77 1.07 16.71 12.63 7.93 22.62-2 2.25-4 4.42-6.14 6.73.95 1.15 6.9 8.82 17.28 19.68 2.66 2.78 6.15 3.51 9.88 3.13a2.21 2.21 0 0 0 2.23-2.12c.3-3.42.26 4.73.45-40.58 0-5.65-.34-6.58-3.23-6.83-3.95-.35-4-2.26-.69-3.37l19.09-.09c.32 0 4.49.53 1 3.38 0 .05-.16 0-.24 0-3.61.26-3.94 1-4 4.62-.27 43.93.07 40.23.41 42.82.11.84.27 2.23 5.1 2.14 2.49 0 3.86 3.37 0 3.4-10.37.08-20.74 0-31.11.07-10.67 0-13.47-6.2-24.21-20.82-1.6-2.18-8.31-2.36-8.2-.37.88 16.47 0 17.78 4 17.67 4.75-.1 4.73 3.57.83 3.55zm275-10.15c-1.21 7.13.17 10.38-5.3 10.34-61.55-.42-47.82-.22-50.72-.31a18.4 18.4 0 0 1-3.63-.73c-2.53-.6 1.48-1.23-.38-5.6-1.43-3.37-2.78-6.78-4.11-10.19a1.94 1.94 0 0 0-2-1.44 138 138 0 0 0-14.58.07 2.23 2.23 0 0 0-1.62 1.06c-1.58 3.62-3.07 7.29-4.51 11-1.27 3.23 7.86 1.32 12.19 2.16 3 .57 4.53 3.72.66 3.73H322.9c-2.92 0-3.09-3.15-.74-3.21a6.3 6.3 0 0 0 5.92-3.47c1.5-3 2.8-6 4.11-9.09 18.18-42.14 17.06-40.17 18.42-41.61a1.83 1.83 0 0 1 3 0c2.93 3.34 18.4 44.71 23.62 51.92 2 2.7 5.74 2 6.36 2 3.61.13 4-1.11 4.13-4.29.09-1.87.08 1.17.07-41.24 0-4.46-2.36-3.74-5.55-4.27-.26 0-2.56-.63-.08-3.06.21-.2-.89-.24 21.7-.15 2.32 0 5.32 2.75-1.21 3.45a2.56 2.56 0 0 0-2.66 2.83c-.07 1.63-.19 38.89.29 41.21a3.06 3.06 0 0 0 3.23 2.43c13.25.43 14.92.44 16-3.41 1.67-5.78 4.13-2.52 3.73-.19zm-104.72 64.37c-4.24 0-4.42-3.39-.61-3.41 35.91-.16 28.11.38 37.19-.65 1.68-.19 2.38.24 2.25 1.89-.26 3.39-.64 6.78-1 10.16-.25 2.16-3.2 2.61-3.4-.15-.38-5.31-2.15-4.45-15.63-5.08-1.58-.07-1.64 0-1.64 1.52V304c0 1.65 0 1.6 1.62 1.47 3.12-.25 10.31.34 15.69-1.52.47-.16 3.3-1.79 3.07 1.76 0 .21-.76 10.35-1.18 11.39-.53 1.29-1.88 1.51-2.58.32-1.17-2 0-5.08-3.71-5.3-15.42-.9-12.91-2.55-12.91 6 0 12.25-.76 16.11 3.89 16.24 16.64.48 14.4 0 16.43-5.71.84-2.37 3.5-1.77 3.18.58-.44 3.21-.85 6.43-1.23 9.64 0 .36-.16 2.4-4.66 2.39-37.16-.08-34.54-.19-35.21-.31-2.72-.51-2.2-3 .22-3.45 1.1-.19 4 .54 4.16-2.56 2.44-56.22-.07-51.34-3.91-51.33zm-.41-109.52c2.46.61 3.13 1.76 2.95 4.65-.33 5.3-.34 9-.55 9.69-.66 2.23-3.15 2.12-3.34-.27-.38-4.81-3.05-7.82-7.57-9.15-26.28-7.73-32.81 15.46-27.17 30.22 5.88 15.41 22 15.92 28.86 13.78 5.92-1.85 5.88-6.5 6.91-7.58 1.23-1.3 2.25-1.84 3.12 1.1 0 .1.57 11.89-6 12.75-1.6.21-19.38 3.69-32.68-3.39-21-11.19-16.74-35.47-6.88-45.33 14-14.06 39.91-7.06 42.32-6.47zM289.8 280.14c3.28 0 3.66 3 .16 3.43-2.61.32-5-.42-5 5.46 0 2-.19 29.05.4 41.45.11 2.29 1.15 3.52 3.44 3.65 22 1.21 14.95-1.65 18.79-6.34 1.83-2.24 2.76.84 2.76 1.08.35 13.62-4 12.39-5.19 12.4l-38.16-.19c-1.93-.23-2.06-3-.42-3.38 2-.48 4.94.4 5.13-2.8 1-15.87.57-44.65.34-47.81-.27-3.77-2.8-3.27-5.68-3.71-2.47-.38-2-3.22.34-3.22 1.45-.02 17.97-.03 23.09-.02zm-31.63-57.79c.07 4.08 2.86 3.46 6 3.58 2.61.1 2.53 3.41-.07 3.43-6.48 0-13.7 0-21.61-.06-3.84 0-3.38-3.35 0-3.37 4.49 0 3.24 1.61 3.41-45.54 0-5.08-3.27-3.54-4.72-4.23-2.58-1.23-1.36-3.09.41-3.15 1.29 0 20.19-.41 21.17.21s1.87 1.65-.42 2.86c-1 .52-3.86-.28-4.15 2.47 0 .21-.82 1.63-.07 43.8zm-36.91 274.27a2.93 2.93 0 0 0 3.26 0c17-9.79 182-103.57 197.42-112.51-.14-.43 11.26-.18-181.52-.27-1.22 0-1.57.37-1.53 1.56 0 .1 1.25 44.51 1.22 50.38a28.33 28.33 0 0 1-1.36 7.71c-.55 1.83.38-.5-13.5 32.23-.73 1.72-1 2.21-2-.08-4.19-10.34-8.28-20.72-12.57-31a23.6 23.6 0 0 1-2-10.79c.16-2.46.8-16.12 1.51-48 0-1.95 0-2-2-2h-183c2.58 1.63 178.32 102.57 196 112.76zm-90.9-188.75c0 2.4.36 2.79 2.76 3 11.54 1.17 21 3.74 25.64-7.32 6-14.46 2.66-34.41-12.48-38.84-2-.59-16-2.76-15.94 1.51.05 8.04.01 11.61.02 41.65zm105.75-15.05c0 2.13 1.07 38.68 1.09 39.13.34 9.94-25.58 5.77-25.23-2.59.08-2 1.37-37.42 1.1-39.43-14.1 7.44-14.42 40.21 6.44 48.8a17.9 17.9 0 0 0 22.39-7.07c4.91-7.76 6.84-29.47-5.43-39a2.53 2.53 0 0 1-.36.12zm-12.28-198c-9.83 0-9.73 14.75-.07 14.87s10.1-14.88.07-14.91zm-80.15 103.83c0 1.8.41 2.4 2.17 2.58 13.62 1.39 12.51-11 12.16-13.36-1.69-11.22-14.38-10.2-14.35-7.81.05 4.5-.03 13.68.02 18.59zm212.32 6.4l-6.1-15.84c-2.16 5.48-4.16 10.57-6.23 15.84z"], + "css3": [512, 512, [], "f13c", "M480 32l-64 368-223.3 80L0 400l19.6-94.8h82l-8 40.6L210 390.2l134.1-44.4 18.8-97.1H29.5l16-82h333.7l10.5-52.7H56.3l16.3-82H480z"], + "css3-alt": [384, 512, [], "f38b", "M0 32l34.9 395.8L192 480l157.1-52.2L384 32H0zm313.1 80l-4.8 47.3L193 208.6l-.3.1h111.5l-12.8 146.6-98.2 28.7-98.8-29.2-6.4-73.9h48.9l3.2 38.3 52.6 13.3 54.7-15.4 3.7-61.6-166.3-.5v-.1l-.2.1-3.6-46.3L193.1 162l6.5-2.7H76.7L70.9 112h242.2z"], + "cuttlefish": [440, 512, [], "f38c", "M344 305.5c-17.5 31.6-57.4 54.5-96 54.5-56.6 0-104-47.4-104-104s47.4-104 104-104c38.6 0 78.5 22.9 96 54.5 13.7-50.9 41.7-93.3 87-117.8C385.7 39.1 320.5 8 248 8 111 8 0 119 0 256s111 248 248 248c72.5 0 137.7-31.1 183-80.7-45.3-24.5-73.3-66.9-87-117.8z"], + "d-and-d": [576, 512, [], "f38d", "M82.5 98.9c-.6-17.2 2-33.8 12.7-48.2.3 7.4 1.2 14.5 4.2 21.6 5.9-27.5 19.7-49.3 42.3-65.5-1.9 5.9-3.5 11.8-3 17.7 8.7-7.4 18.8-17.8 44.4-22.7 14.7-2.8 29.7-2 42.1 1 38.5 9.3 61 34.3 69.7 72.3 5.3 23.1.7 45-8.3 66.4-5.2 12.4-12 24.4-20.7 35.1-2-1.9-3.9-3.8-5.8-5.6-42.8-40.8-26.8-25.2-37.4-37.4-1.1-1.2-1-2.2-.1-3.6 8.3-13.5 11.8-28.2 10-44-1.1-9.8-4.3-18.9-11.3-26.2-14.5-15.3-39.2-15-53.5.6-11.4 12.5-14.1 27.4-10.9 43.6.2 1.3.4 2.7 0 3.9-3.4 13.7-4.6 27.6-2.5 41.6.1.5.1 1.1.1 1.6 0 .3-.1.5-.2 1.1-21.8-11-36-28.3-43.2-52.2-8.3 17.8-11.1 35.5-6.6 54.1-15.6-15.2-21.3-34.3-22-55.2zm469.6 123.2c-11.6-11.6-25-20.4-40.1-26.6-12.8-5.2-26-7.9-39.9-7.1-10 .6-19.6 3.1-29 6.4-2.5.9-5.1 1.6-7.7 2.2-4.9 1.2-7.3-3.1-4.7-6.8 3.2-4.6 3.4-4.2 15-12 .6-.4 1.2-.8 2.2-1.5h-2.5c-.6 0-1.2.2-1.9.3-19.3 3.3-30.7 15.5-48.9 29.6-10.4 8.1-13.8 3.8-12-.5 1.4-3.5 3.3-6.7 5.1-10 1-1.8 2.3-3.4 3.5-5.1-.2-.2-.5-.3-.7-.5-27 18.3-46.7 42.4-57.7 73.3.3.3.7.6 1 .9.3-.6.5-1.2.9-1.7 10.4-12.1 22.8-21.8 36.6-29.8 18.2-10.6 37.5-18.3 58.7-20.2 4.3-.4 8.7-.1 13.1-.1-1.8.7-3.5.9-5.3 1.1-18.5 2.4-35.5 9-51.5 18.5-30.2 17.9-54.5 42.2-75.1 70.4-.3.4-.4.9-.7 1.3 14.5 5.3 24 17.3 36.1 25.6.2-.1.3-.2.4-.4l1.2-2.7c12.2-26.9 27-52.3 46.7-74.5 16.7-18.8 38-25.3 62.5-20 5.9 1.3 11.4 4.4 17.2 6.8 2.3-1.4 5.1-3.2 8-4.7 8.4-4.3 17.4-7 26.7-9 14.7-3.1 29.5-4.9 44.5-1.3v-.5c-.5-.4-1.2-.8-1.7-1.4zM316.7 397.6c-39.4-33-22.8-19.5-42.7-35.6-.8.9 0-.2-1.9 3-11.2 19.1-25.5 35.3-44 47.6-10.3 6.8-21.5 11.8-34.1 11.8-21.6 0-38.2-9.5-49.4-27.8-12-19.5-13.3-40.7-8.2-62.6 7.8-33.8 30.1-55.2 38.6-64.3-18.7-6.2-33 1.7-46.4 13.9.8-13.9 4.3-26.2 11.8-37.3-24.3 10.6-45.9 25-64.8 43.9-.3-5.8 5.4-43.7 5.6-44.7.3-2.7-.6-5.3-3-7.4-24.2 24.7-44.5 51.8-56.1 84.6 7.4-5.9 14.9-11.4 23.6-16.2-8.3 22.3-19.6 52.8-7.8 101.1 4.6 19 11.9 36.8 24.1 52.3 2.9 3.7 6.3 6.9 9.5 10.3.2-.2.4-.3.6-.5-1.4-7-2.2-14.1-1.5-21.9 2.2 3.2 3.9 6 5.9 8.6 12.6 16 28.7 27.4 47.2 35.6 25 11.3 51.1 13.3 77.9 8.6 54.9-9.7 90.7-48.6 116-98.8 1-1.8.6-2.9-.9-4.2zm172-46.4c-9.5-3.1-22.2-4.2-28.7-2.9 9.9 4 14.1 6.6 18.8 12 12.6 14.4 10.4 34.7-5.4 45.6-11.7 8.1-24.9 10.5-38.9 9.1-1.2-.1-2.3-.4-3-.6 2.8-3.7 6-7 8.1-10.8 9.4-16.8 5.4-42.1-8.7-56.1-2.1-2.1-4.6-3.9-7-5.9-.3 1.3-.1 2.1.1 2.8 4.2 16.6-8.1 32.4-24.8 31.8-7.6-.3-13.9-3.8-19.6-8.5-19.5-16.1-39.1-32.1-58.5-48.3-5.9-4.9-12.5-8.1-20.1-8.7-4.6-.4-9.3-.6-13.9-.9-5.9-.4-8.8-2.8-10.4-8.4-.9-3.4-1.5-6.8-2.2-10.2-1.5-8.1-6.2-13-14.3-14.2-4.4-.7-8.9-1-13.3-1.5-13-1.4-19.8-7.4-22.6-20.3-5 11-1.6 22.4 7.3 29.9 4.5 3.8 9.3 7.3 13.8 11.2 4.6 3.8 7.4 8.7 7.9 14.8.4 4.7.8 9.5 1.8 14.1 2.2 10.6 8.9 18.4 17 25.1 16.5 13.7 33 27.3 49.5 41.1 17.9 15 13.9 32.8 13 56-.9 22.9 12.2 42.9 33.5 51.2 1 .4 2 .6 3.6 1.1-15.7-18.2-10.1-44.1.7-52.3.3 2.2.4 4.3.9 6.4 9.4 44.1 45.4 64.2 85 56.9 16-2.9 30.6-8.9 42.9-19.8 2-1.8 3.7-4.1 5.9-6.5-19.3 4.6-35.8.1-50.9-10.6.7-.3 1.3-.3 1.9-.3 21.3 1.8 40.6-3.4 57-17.4 19.5-16.6 26.6-42.9 17.4-66-8.3-20.1-23.6-32.3-43.8-38.9zM99.4 179.3c-5.3-9.2-13.2-15.6-22.1-21.3 13.7-.5 26.6.2 39.6 3.7-7-12.2-8.5-24.7-5-38.7 5.3 11.9 13.7 20.1 23.6 26.8 19.7 13.2 35.7 19.6 46.7 30.2 3.4 3.3 6.3 7.1 9.6 10.9-.8-2.1-1.4-4.1-2.2-6-5-10.6-13-18.6-22.6-25-1.8-1.2-2.8-2.5-3.4-4.5-3.3-12.5-3-25.1-.7-37.6 1-5.5 2.8-10.9 4.5-16.3.8-2.4 2.3-4.6 4-6.6.6 6.9 0 25.5 19.6 46 10.8 11.3 22.4 21.9 33.9 32.7 9 8.5 18.3 16.7 25.5 26.8 1.1 1.6 2.2 3.3 3.8 4.7-5-13-14.2-24.1-24.2-33.8-9.6-9.3-19.4-18.4-29.2-27.4-3.3-3-4.6-6.7-5.1-10.9-1.2-10.4 0-20.6 4.3-30.2.5-1 1.1-2 1.9-3.3.5 4.2.6 7.9 1.4 11.6 4.8 23.1 20.4 36.3 49.3 63.5 10 9.4 19.3 19.2 25.6 31.6 4.8 9.3 7.3 19 5.7 29.6-.1.6.5 1.7 1.1 2 6.2 2.6 10 6.9 9.7 14.3 7.7-2.6 12.5-8 16.4-14.5 4.2 20.2-9.1 50.3-27.2 58.7.4-4.5 5-23.4-16.5-27.7-6.8-1.3-12.8-1.3-22.9-2.1 4.7-9 10.4-20.6.5-22.4-24.9-4.6-52.8 1.9-57.8 4.6 8.2.4 16.3 1 23.5 3.3-2 6.5-4 12.7-5.8 18.9-1.9 6.5 2.1 14.6 9.3 9.6 1.2-.9 2.3-1.9 3.3-2.7-3.1 17.9-2.9 15.9-2.8 18.3.3 10.2 9.5 7.8 15.7 7.3-2.5 11.8-29.5 27.3-45.4 25.8 7-4.7 12.7-10.3 15.9-17.9-6.5.8-12.9 1.6-19.2 2.4l-.3-.9c4.7-3.4 8-7.8 10.2-13.1 8.7-21.1-3.6-38-25-39.9-9.1-.8-17.8.8-25.9 5.5 6.2-15.6 17.2-26.6 32.6-34.5-15.2-4.3-8.9-2.7-24.6-6.3 14.6-9.3 30.2-13.2 46.5-14.6-5.2-3.2-48.1-3.6-70.2 20.9 7.9 1.4 15.5 2.8 23.2 4.2-23.8 7-44 19.7-62.4 35.6 1.1-4.8 2.7-9.5 3.3-14.3.6-4.5.8-9.2.1-13.6-1.5-9.4-8.9-15.1-19.7-16.3-7.9-.9-15.6.1-23.3 1.3-.9.1-1.7.3-2.9 0 15.8-14.8 36-21.7 53.1-33.5 6-4.5 6.8-8.2 3-14.9zm128.4 26.8c3.3 16 12.6 25.5 23.8 24.3-4.6-11.3-12.1-19.5-23.8-24.3z"], + "d-and-d-beyond": [640, 512, [], "f6ca", "M313.8 241.5c13.8 0 21-10.1 24.8-17.9-1-1.1-5-4.2-7.4-6.6-2.4 4.3-8.2 10.7-13.9 10.7-10.2 0-15.4-14.7-3.2-26.6-.5-.2-4.3-1.8-8 2.4 0-3 1-5.1 2.1-6.6-3.5 1.3-9.8 5.6-11.4 7.9.2-5.8 1.6-7.5.6-9l-.2-.2s-8.5 5.6-9.3 14.7c0 0 1.1-1.6 2.1-1.9.6-.3 1.3 0 .6 1.9-.2.6-5.8 15.7 5.1 26-.6-1.6-1.9-7.6 2.4-1.9-.3.1 5.8 7.1 15.7 7.1zm52.4-21.1c0-4-4.9-4.4-5.6-4.5 2 3.9.9 7.5.2 9 2.5-.4 5.4-1.6 5.4-4.5zm10.3 5.2c0-6.4-6.2-11.4-13.5-10.7 8 1.3 5.6 13.8-5 11.4 3.7-2.6 3.2-9.9-1.3-12.5 1.4 4.2-3 8.2-7.4 4.6-2.4-1.9-8-6.6-10.6-8.6-2.4-2.1-5.5-1-6.6-1.8-1.3-1.1-.5-3.8-2.2-5-1.6-.8-3-.3-4.8-1-1.6-.6-2.7-1.9-2.6-3.5-2.5 4.4 3.4 6.3 4.5 8.5 1 1.9-.8 4.8 4 8.5 14.8 11.6 9.1 8 10.4 18.1.6 4.3 4.2 6.7 6.4 7.4-2.1-1.9-2.9-6.4 0-9.3 0 13.9 19.2 13.3 23.1 6.4-2.4 1.1-7-.2-9-1.9 7.7 1 14.2-4.1 14.6-10.6zm-39.4-18.4c2 .8 1.6.7 6.4 4.5 10.2-24.5 21.7-15.7 22-15.5 2.2-1.9 9.8-3.8 13.8-2.7-2.4-2.7-7.5-6.2-13.3-6.2-4.7 0-7.4 2.2-8 1.3-.8-1.4 3.2-3.4 3.2-3.4-5.4.2-9.6 6.7-11.2 5.9-1.1-.5 1.4-3.7 1.4-3.7-5.1 2.9-9.3 9.1-10.2 13 4.6-5.8 13.8-9.8 19.7-9-10.5.5-19.5 9.7-23.8 15.8zm242.5 51.9c-20.7 0-40 1.3-50.3 2.1l7.4 8.2v77.2l-7.4 8.2c10.4.8 30.9 2.1 51.6 2.1 42.1 0 59.1-20.7 59.1-48.9 0-29.3-23.2-48.9-60.4-48.9zm-15.1 75.6v-53.3c30.1-3.3 46.8 3.8 46.8 26.3 0 25.6-21.4 30.2-46.8 27zM301.6 181c-1-3.4-.2-6.9 1.1-9.4 1 3 2.6 6.4 7.5 9-.5-2.4-.2-5.6.5-8-1.4-5.4 2.1-9.9 6.4-9.9 6.9 0 8.5 8.8 4.7 14.4 2.1 3.2 5.5 5.6 7.7 7.8 3.2-3.7 5.5-9.5 5.5-13.8 0-8.2-5.5-15.9-16.7-16.5-20-.9-20.2 16.6-20 18.9.5 5.2 3.4 7.8 3.3 7.5zm-.4 6c-.5 1.8-7 3.7-10.2 6.9 4.8-1 7-.2 7.8 1.8.5 1.4-.2 3.4-.5 5.6 1.6-1.8 7-5.5 11-6.2-1-.3-3.4-.8-4.3-.8 2.9-3.4 9.3-4.5 12.8-3.7-2.2-.2-6.7 1.1-8.5 2.6 1.6.3 3 .6 4.3 1.1-2.1.8-4.8 3.4-5.8 6.1 7-5 13.1 5.2 7 8.2.8.2 2.7 0 3.5-.5-.3 1.1-1.9 3-3 3.4 2.9 0 7-1.9 8.2-4.6 0 0-1.8.6-2.6-.2s.3-4.3.3-4.3c-2.3 2.9-3.4-1.3-1.3-4.2-1-.3-3.5-.6-4.6-.5 3.2-1.1 10.4-1.8 11.2-.3.6 1.1-1 3.4-1 3.4 4-.5 8.3 1.1 6.7 5.1 2.9-1.4 5.5-5.9 4.8-10.4-.3 1-1.6 2.4-2.9 2.7.2-1.4-1-2.2-1.9-2.6 1.7-9.6-14.6-14.2-14.1-23.9-1 1.3-1.8 5-.8 7.1 2.7 3.2 8.7 6.7 10.1 12.2-2.6-6.4-15.1-11.4-14.6-20.2-1.6 1.6-2.6 7.8-1.3 11 2.4 1.4 4.5 3.8 4.8 6.1-2.2-5.1-11.4-6.1-13.9-12.2-.6 2.2-.3 5 1 6.7 0 0-2.2-.8-7-.6 1.7.6 5.1 3.5 4.8 5.2zm25.9 7.4c-2.7 0-3.5-2.1-4.2-4.3 3.3 1.3 4.2 4.3 4.2 4.3zm38.9 3.7l-1-.6c-1.1-1-2.9-1.4-4.7-1.4-2.9 0-5.8 1.3-7.5 3.4-.8.8-1.4 1.8-2.1 2.6v15.7c3.5 2.6 7.1-2.9 3-7.2 1.5.3 4.6 2.7 5.1 3.2 0 0 2.6-.5 5-.5 2.1 0 3.9.3 5.6 1.1V196c-1.1.5-2.2 1-2.7 1.4zM79.9 305.9c17.2-4.6 16.2-18 16.2-19.9 0-20.6-24.1-25-37-25H3l8.3 8.6v29.5H0l11.4 14.6V346L3 354.6c61.7 0 73.8 1.5 86.4-5.9 6.7-4 9.9-9.8 9.9-17.6 0-5.1 2.6-18.8-19.4-25.2zm-41.3-27.5c20 0 29.6-.8 29.6 9.1v3c0 12.1-19 8.8-29.6 8.8zm0 59.2V315c12.2 0 32.7-2.3 32.7 8.8v4.5h.2c0 11.2-12.5 9.3-32.9 9.3zm101.2-19.3l23.1.2v-.2l14.1-21.2h-37.2v-14.9h52.4l-14.1-21v-.2l-73.5.2 7.4 8.2v77.1l-7.4 8.2h81.2l14.1-21.2-60.1.2zm214.7-60.1c-73.9 0-77.5 99.3-.3 99.3 77.9 0 74.1-99.3.3-99.3zm-.3 77.5c-37.4 0-36.9-55.3.2-55.3 36.8.1 38.8 55.3-.2 55.3zm-91.3-8.3l44.1-66.2h-41.7l6.1 7.2-20.5 37.2h-.3l-21-37.2 6.4-7.2h-44.9l44.1 65.8.2 19.4-7.7 8.2h42.6l-7.2-8.2zm-28.4-151.3c1.6 1.3 2.9 2.4 2.9 6.6v38.8c0 4.2-.8 5.3-2.7 6.4-.1.1-7.5 4.5-7.9 4.6h35.1c10 0 17.4-1.5 26-8.6-.6-5 .2-9.5.8-12 0-.2-1.8 1.4-2.7 3.5 0-5.7 1.6-15.4 9.6-20.5-.1 0-3.7-.8-9 1.1 2-3.1 10-7.9 10.4-7.9-8.2-26-38-22.9-32.2-22.9-30.9 0-32.6.3-39.9-4 .1.8.5 8.2 9.6 14.9zm21.5 5.5c4.6 0 23.1-3.3 23.1 17.3 0 20.7-18.4 17.3-23.1 17.3zm228.9 79.6l7 8.3V312h-.3c-5.4-14.4-42.3-41.5-45.2-50.9h-31.6l7.4 8.5v76.9l-7.2 8.3h39l-7.4-8.2v-47.4h.3c3.7 10.6 44.5 42.9 48.5 55.6h21.3v-85.2l7.4-8.3zm-106.7-96.1c-32.2 0-32.8.2-39.9-4 .1.7.5 8.3 9.6 14.9 3.1 2 2.9 4.3 2.9 9.5 1.8-1.1 3.8-2.2 6.1-3-1.1 1.1-2.7 2.7-3.5 4.5 1-1.1 7.5-5.1 14.6-3.5-1.6.3-4 1.1-6.1 2.9.1 0 2.1-1.1 7.5-.3v-4.3c4.7 0 23.1-3.4 23.1 17.3 0 20.5-18.5 17.3-19.7 17.3 5.7 4.4 5.8 12 2.2 16.3h.3c33.4 0 36.7-27.3 36.7-34 0-3.8-1.1-32-33.8-33.6z"], + "dailymotion": [448, 512, [], "e052", "M298.93,267a48.4,48.4,0,0,0-24.36-6.21q-19.83,0-33.44,13.27t-13.61,33.42q0,21.16,13.28,34.6t33.43,13.44q20.5,0,34.11-13.78T322,307.47A47.13,47.13,0,0,0,315.9,284,44.13,44.13,0,0,0,298.93,267ZM0,32V480H448V32ZM374.71,405.26h-53.1V381.37h-.67q-15.79,26.2-55.78,26.2-27.56,0-48.89-13.1a88.29,88.29,0,0,1-32.94-35.77q-11.6-22.68-11.59-50.89,0-27.56,11.76-50.22a89.9,89.9,0,0,1,32.93-35.78q21.18-13.09,47.72-13.1a80.87,80.87,0,0,1,29.74,5.21q13.28,5.21,25,17V153l55.79-12.09Z"], + "dashcube": [448, 512, [], "f210", "M326.6 104H110.4c-51.1 0-91.2 43.3-91.2 93.5V427c0 50.5 40.1 85 91.2 85h227.2c51.1 0 91.2-34.5 91.2-85V0L326.6 104zM153.9 416.5c-17.7 0-32.4-15.1-32.4-32.8V240.8c0-17.7 14.7-32.5 32.4-32.5h140.7c17.7 0 32 14.8 32 32.5v123.5l51.1 52.3H153.9z"], + "deezer": [576, 512, [], "e077", "M451.46,244.71H576V172H451.46Zm0-173.89v72.67H576V70.82Zm0,275.06H576V273.2H451.46ZM0,447.09H124.54V374.42H0Zm150.47,0H275V374.42H150.47Zm150.52,0H425.53V374.42H301Zm150.47,0H576V374.42H451.46ZM301,345.88H425.53V273.2H301Zm-150.52,0H275V273.2H150.47Zm0-101.17H275V172H150.47Z"], + "delicious": [448, 512, [], "f1a5", "M446.5 68c-.4-1.5-.9-3-1.4-4.5-.9-2.5-2-4.8-3.3-7.1-1.4-2.4-3-4.8-4.7-6.9-2.1-2.5-4.4-4.8-6.9-6.8-1.1-.9-2.2-1.7-3.3-2.5-1.3-.9-2.6-1.7-4-2.4-1.8-1-3.6-1.8-5.5-2.5-1.7-.7-3.5-1.3-5.4-1.7-3.8-1-7.9-1.5-12-1.5H48C21.5 32 0 53.5 0 80v352c0 4.1.5 8.2 1.5 12 2 7.7 5.8 14.6 11 20.3 1 1.1 2.1 2.2 3.3 3.3 5.7 5.2 12.6 9 20.3 11 3.8 1 7.9 1.5 12 1.5h352c26.5 0 48-21.5 48-48V80c-.1-4.1-.6-8.2-1.6-12zM416 432c0 8.8-7.2 16-16 16H224V256H32V80c0-8.8 7.2-16 16-16h176v192h192z"], + "deploydog": [512, 512, [], "f38e", "M382.2 136h51.7v239.6h-51.7v-20.7c-19.8 24.8-52.8 24.1-73.8 14.7-26.2-11.7-44.3-38.1-44.3-71.8 0-29.8 14.8-57.9 43.3-70.8 20.2-9.1 52.7-10.6 74.8 12.9V136zm-64.7 161.8c0 18.2 13.6 33.5 33.2 33.5 19.8 0 33.2-16.4 33.2-32.9 0-17.1-13.7-33.2-33.2-33.2-19.6 0-33.2 16.4-33.2 32.6zM188.5 136h51.7v239.6h-51.7v-20.7c-19.8 24.8-52.8 24.1-73.8 14.7-26.2-11.7-44.3-38.1-44.3-71.8 0-29.8 14.8-57.9 43.3-70.8 20.2-9.1 52.7-10.6 74.8 12.9V136zm-64.7 161.8c0 18.2 13.6 33.5 33.2 33.5 19.8 0 33.2-16.4 33.2-32.9 0-17.1-13.7-33.2-33.2-33.2-19.7 0-33.2 16.4-33.2 32.6zM448 96c17.5 0 32 14.4 32 32v256c0 17.5-14.4 32-32 32H64c-17.5 0-32-14.4-32-32V128c0-17.5 14.4-32 32-32h384m0-32H64C28.8 64 0 92.8 0 128v256c0 35.2 28.8 64 64 64h384c35.2 0 64-28.8 64-64V128c0-35.2-28.8-64-64-64z"], + "deskpro": [480, 512, [], "f38f", "M205.9 512l31.1-38.4c12.3-.2 25.6-1.4 36.5-6.6 38.9-18.6 38.4-61.9 38.3-63.8-.1-5-.8-4.4-28.9-37.4H362c-.2 50.1-7.3 68.5-10.2 75.7-9.4 23.7-43.9 62.8-95.2 69.4-8.7 1.1-32.8 1.2-50.7 1.1zm200.4-167.7c38.6 0 58.5-13.6 73.7-30.9l-175.5-.3-17.4 31.3 119.2-.1zm-43.6-223.9v168.3h-73.5l-32.7 55.5H250c-52.3 0-58.1-56.5-58.3-58.9-1.2-13.2-21.3-11.6-20.1 1.8 1.4 15.8 8.8 40 26.4 57.1h-91c-25.5 0-110.8-26.8-107-114V16.9C0 .9 9.7.3 15 .1h82c.2 0 .3.1.5.1 4.3-.4 50.1-2.1 50.1 43.7 0 13.3 20.2 13.4 20.2 0 0-18.2-5.5-32.8-15.8-43.7h84.2c108.7-.4 126.5 79.4 126.5 120.2zm-132.5 56l64 29.3c13.3-45.5-42.2-71.7-64-29.3z"], + "dev": [448, 512, [], "f6cc", "M120.12 208.29c-3.88-2.9-7.77-4.35-11.65-4.35H91.03v104.47h17.45c3.88 0 7.77-1.45 11.65-4.35 3.88-2.9 5.82-7.25 5.82-13.06v-69.65c-.01-5.8-1.96-10.16-5.83-13.06zM404.1 32H43.9C19.7 32 .06 51.59 0 75.8v360.4C.06 460.41 19.7 480 43.9 480h360.2c24.21 0 43.84-19.59 43.9-43.8V75.8c-.06-24.21-19.7-43.8-43.9-43.8zM154.2 291.19c0 18.81-11.61 47.31-48.36 47.25h-46.4V172.98h47.38c35.44 0 47.36 28.46 47.37 47.28l.01 70.93zm100.68-88.66H201.6v38.42h32.57v29.57H201.6v38.41h53.29v29.57h-62.18c-11.16.29-20.44-8.53-20.72-19.69V193.7c-.27-11.15 8.56-20.41 19.71-20.69h63.19l-.01 29.52zm103.64 115.29c-13.2 30.75-36.85 24.63-47.44 0l-38.53-144.8h32.57l29.71 113.72 29.57-113.72h32.58l-38.46 144.8z"], + "deviantart": [320, 512, [], "f1bd", "M320 93.2l-98.2 179.1 7.4 9.5H320v127.7H159.1l-13.5 9.2-43.7 84c-.3 0-8.6 8.6-9.2 9.2H0v-93.2l93.2-179.4-7.4-9.2H0V102.5h156l13.5-9.2 43.7-84c.3 0 8.6-8.6 9.2-9.2H320v93.1z"], + "dhl": [640, 512, [], "f790", "M238 301.2h58.7L319 271h-58.7L238 301.2zM0 282.9v6.4h81.8l4.7-6.4H0zM172.9 271c-8.7 0-6-3.6-4.6-5.5 2.8-3.8 7.6-10.4 10.4-14.1 2.8-3.7 2.8-5.9-2.8-5.9h-51l-41.1 55.8h100.1c33.1 0 51.5-22.5 57.2-30.3h-68.2zm317.5-6.9l39.3-53.4h-62.2l-39.3 53.4h62.2zM95.3 271H0v6.4h90.6l4.7-6.4zm111-26.6c-2.8 3.8-7.5 10.4-10.3 14.2-1.4 2-4.1 5.5 4.6 5.5h45.6s7.3-10 13.5-18.4c8.4-11.4.7-35-29.2-35H112.6l-20.4 27.8h111.4c5.6 0 5.5 2.2 2.7 5.9zM0 301.2h73.1l4.7-6.4H0v6.4zm323 0h58.7L404 271h-58.7c-.1 0-22.3 30.2-22.3 30.2zm222 .1h95v-6.4h-90.3l-4.7 6.4zm22.3-30.3l-4.7 6.4H640V271h-72.7zm-13.5 18.3H640v-6.4h-81.5l-4.7 6.4zm-164.2-78.6l-22.5 30.6h-26.2l22.5-30.6h-58.7l-39.3 53.4H409l39.3-53.4h-58.7zm33.5 60.3s-4.3 5.9-6.4 8.7c-7.4 10-.9 21.6 23.2 21.6h94.3l22.3-30.3H423.1z"], + "diaspora": [512, 512, [], "f791", "M251.64 354.55c-1.4 0-88 119.9-88.7 119.9S76.34 414 76 413.25s86.6-125.7 86.6-127.4c0-2.2-129.6-44-137.6-47.1-1.3-.5 31.4-101.8 31.7-102.1.6-.7 144.4 47 145.5 47 .4 0 .9-.6 1-1.3.4-2 1-148.6 1.7-149.6.8-1.2 104.5-.7 105.1-.3 1.5 1 3.5 156.1 6.1 156.1 1.4 0 138.7-47 139.3-46.3.8.9 31.9 102.2 31.5 102.6-.9.9-140.2 47.1-140.6 48.8-.3 1.4 82.8 122.1 82.5 122.9s-85.5 63.5-86.3 63.5c-1-.2-89-125.5-90.9-125.5z"], + "digg": [512, 512, [], "f1a6", "M81.7 172.3H0v174.4h132.7V96h-51v76.3zm0 133.4H50.9v-92.3h30.8v92.3zm297.2-133.4v174.4h81.8v28.5h-81.8V416H512V172.3H378.9zm81.8 133.4h-30.8v-92.3h30.8v92.3zm-235.6 41h82.1v28.5h-82.1V416h133.3V172.3H225.1v174.4zm51.2-133.3h30.8v92.3h-30.8v-92.3zM153.3 96h51.3v51h-51.3V96zm0 76.3h51.3v174.4h-51.3V172.3z"], + "digital-ocean": [512, 512, [], "f391", "M87 481.8h73.7v-73.6H87zM25.4 346.6v61.6H87v-61.6zm466.2-169.7c-23-74.2-82.4-133.3-156.6-156.6C164.9-32.8 8 93.7 8 255.9h95.8c0-101.8 101-180.5 208.1-141.7 39.7 14.3 71.5 46.1 85.8 85.7 39.1 107-39.7 207.8-141.4 208v.3h-.3V504c162.6 0 288.8-156.8 235.6-327.1zm-235.3 231v-95.3h-95.6v95.6H256v-.3z"], + "discord": [448, 512, [], "f392", "M297.216 243.2c0 15.616-11.52 28.416-26.112 28.416-14.336 0-26.112-12.8-26.112-28.416s11.52-28.416 26.112-28.416c14.592 0 26.112 12.8 26.112 28.416zm-119.552-28.416c-14.592 0-26.112 12.8-26.112 28.416s11.776 28.416 26.112 28.416c14.592 0 26.112-12.8 26.112-28.416.256-15.616-11.52-28.416-26.112-28.416zM448 52.736V512c-64.494-56.994-43.868-38.128-118.784-107.776l13.568 47.36H52.48C23.552 451.584 0 428.032 0 398.848V52.736C0 23.552 23.552 0 52.48 0h343.04C424.448 0 448 23.552 448 52.736zm-72.96 242.688c0-82.432-36.864-149.248-36.864-149.248-36.864-27.648-71.936-26.88-71.936-26.88l-3.584 4.096c43.52 13.312 63.744 32.512 63.744 32.512-60.811-33.329-132.244-33.335-191.232-7.424-9.472 4.352-15.104 7.424-15.104 7.424s21.248-20.224 67.328-33.536l-2.56-3.072s-35.072-.768-71.936 26.88c0 0-36.864 66.816-36.864 149.248 0 0 21.504 37.12 78.08 38.912 0 0 9.472-11.52 17.152-21.248-32.512-9.728-44.8-30.208-44.8-30.208 3.766 2.636 9.976 6.053 10.496 6.4 43.21 24.198 104.588 32.126 159.744 8.96 8.96-3.328 18.944-8.192 29.44-15.104 0 0-12.8 20.992-46.336 30.464 7.68 9.728 16.896 20.736 16.896 20.736 56.576-1.792 78.336-38.912 78.336-38.912z"], + "discourse": [448, 512, [], "f393", "M225.9 32C103.3 32 0 130.5 0 252.1 0 256 .1 480 .1 480l225.8-.2c122.7 0 222.1-102.3 222.1-223.9C448 134.3 348.6 32 225.9 32zM224 384c-19.4 0-37.9-4.3-54.4-12.1L88.5 392l22.9-75c-9.8-18.1-15.4-38.9-15.4-61 0-70.7 57.3-128 128-128s128 57.3 128 128-57.3 128-128 128z"], + "dochub": [416, 512, [], "f394", "M397.9 160H256V19.6L397.9 160zM304 192v130c0 66.8-36.5 100.1-113.3 100.1H96V84.8h94.7c12 0 23.1.8 33.1 2.5v-84C212.9 1.1 201.4 0 189.2 0H0v512h189.2C329.7 512 400 447.4 400 318.1V192h-96z"], + "docker": [640, 512, [], "f395", "M349.9 236.3h-66.1v-59.4h66.1v59.4zm0-204.3h-66.1v60.7h66.1V32zm78.2 144.8H362v59.4h66.1v-59.4zm-156.3-72.1h-66.1v60.1h66.1v-60.1zm78.1 0h-66.1v60.1h66.1v-60.1zm276.8 100c-14.4-9.7-47.6-13.2-73.1-8.4-3.3-24-16.7-44.9-41.1-63.7l-14-9.3-9.3 14c-18.4 27.8-23.4 73.6-3.7 103.8-8.7 4.7-25.8 11.1-48.4 10.7H2.4c-8.7 50.8 5.8 116.8 44 162.1 37.1 43.9 92.7 66.2 165.4 66.2 157.4 0 273.9-72.5 328.4-204.2 21.4.4 67.6.1 91.3-45.2 1.5-2.5 6.6-13.2 8.5-17.1l-13.3-8.9zm-511.1-27.9h-66v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm-78.1-72.1h-66.1v60.1h66.1v-60.1z"], + "draft2digital": [480, 512, [], "f396", "M480 398.1l-144-82.2v64.7h-91.3c30.8-35 81.8-95.9 111.8-149.3 35.2-62.6 16.1-123.4-12.8-153.3-4.4-4.6-62.2-62.9-166-41.2-59.1 12.4-89.4 43.4-104.3 67.3-13.1 20.9-17 39.8-18.2 47.7-5.5 33 19.4 67.1 56.7 67.1 31.7 0 57.3-25.7 57.3-57.4 0-27.1-19.7-52.1-48-56.8 1.8-7.3 17.7-21.1 26.3-24.7 41.1-17.3 78 5.2 83.3 33.5 8.3 44.3-37.1 90.4-69.7 127.6C84.5 328.1 18.3 396.8 0 415.9l336-.1V480zM369.9 371l47.1 27.2-47.1 27.2zM134.2 161.4c0 12.4-10 22.4-22.4 22.4s-22.4-10-22.4-22.4 10-22.4 22.4-22.4 22.4 10.1 22.4 22.4zM82.5 380.5c25.6-27.4 97.7-104.7 150.8-169.9 35.1-43.1 40.3-82.4 28.4-112.7-7.4-18.8-17.5-30.2-24.3-35.7 45.3 2.1 68 23.4 82.2 38.3 0 0 42.4 48.2 5.8 113.3-37 65.9-110.9 147.5-128.5 166.7z"], + "dribbble": [512, 512, [], "f17d", "M256 8C119.252 8 8 119.252 8 256s111.252 248 248 248 248-111.252 248-248S392.748 8 256 8zm163.97 114.366c29.503 36.046 47.369 81.957 47.835 131.955-6.984-1.477-77.018-15.682-147.502-6.818-5.752-14.041-11.181-26.393-18.617-41.614 78.321-31.977 113.818-77.482 118.284-83.523zM396.421 97.87c-3.81 5.427-35.697 48.286-111.021 76.519-34.712-63.776-73.185-116.168-79.04-124.008 67.176-16.193 137.966 1.27 190.061 47.489zm-230.48-33.25c5.585 7.659 43.438 60.116 78.537 122.509-99.087 26.313-186.36 25.934-195.834 25.809C62.38 147.205 106.678 92.573 165.941 64.62zM44.17 256.323c0-2.166.043-4.322.108-6.473 9.268.19 111.92 1.513 217.706-30.146 6.064 11.868 11.857 23.915 17.174 35.949-76.599 21.575-146.194 83.527-180.531 142.306C64.794 360.405 44.17 310.73 44.17 256.323zm81.807 167.113c22.127-45.233 82.178-103.622 167.579-132.756 29.74 77.283 42.039 142.053 45.189 160.638-68.112 29.013-150.015 21.053-212.768-27.882zm248.38 8.489c-2.171-12.886-13.446-74.897-41.152-151.033 66.38-10.626 124.7 6.768 131.947 9.055-9.442 58.941-43.273 109.844-90.795 141.978z"], + "dribbble-square": [448, 512, [], "f397", "M90.2 228.2c8.9-42.4 37.4-77.7 75.7-95.7 3.6 4.9 28 38.8 50.7 79-64 17-120.3 16.8-126.4 16.7zM314.6 154c-33.6-29.8-79.3-41.1-122.6-30.6 3.8 5.1 28.6 38.9 51 80 48.6-18.3 69.1-45.9 71.6-49.4zM140.1 364c40.5 31.6 93.3 36.7 137.3 18-2-12-10-53.8-29.2-103.6-55.1 18.8-93.8 56.4-108.1 85.6zm98.8-108.2c-3.4-7.8-7.2-15.5-11.1-23.2C159.6 253 93.4 252.2 87.4 252c0 1.4-.1 2.8-.1 4.2 0 35.1 13.3 67.1 35.1 91.4 22.2-37.9 67.1-77.9 116.5-91.8zm34.9 16.3c17.9 49.1 25.1 89.1 26.5 97.4 30.7-20.7 52.5-53.6 58.6-91.6-4.6-1.5-42.3-12.7-85.1-5.8zm-20.3-48.4c4.8 9.8 8.3 17.8 12 26.8 45.5-5.7 90.7 3.4 95.2 4.4-.3-32.3-11.8-61.9-30.9-85.1-2.9 3.9-25.8 33.2-76.3 53.9zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-64 176c0-88.2-71.8-160-160-160S64 167.8 64 256s71.8 160 160 160 160-71.8 160-160z"], + "dropbox": [528, 512, [], "f16b", "M264.4 116.3l-132 84.3 132 84.3-132 84.3L0 284.1l132.3-84.3L0 116.3 132.3 32l132.1 84.3zM131.6 395.7l132-84.3 132 84.3-132 84.3-132-84.3zm132.8-111.6l132-84.3-132-83.6L395.7 32 528 116.3l-132.3 84.3L528 284.8l-132.3 84.3-131.3-85z"], + "drupal": [448, 512, [], "f1a9", "M319.5 114.7c-22.2-14-43.5-19.5-64.7-33.5-13-8.8-31.3-30-46.5-48.3-2.7 29.3-11.5 41.2-22 49.5-21.3 17-34.8 22.2-53.5 32.3C117 123 32 181.5 32 290.5 32 399.7 123.8 480 225.8 480 327.5 480 416 406 416 294c0-112.3-83-171-96.5-179.3zm2.5 325.6c-20.1 20.1-90.1 28.7-116.7 4.2-4.8-4.8.3-12 6.5-12 0 0 17 13.3 51.5 13.3 27 0 46-7.7 54.5-14 6.1-4.6 8.4 4.3 4.2 8.5zm-54.5-52.6c8.7-3.6 29-3.8 36.8 1.3 4.1 2.8 16.1 18.8 6.2 23.7-8.4 4.2-1.2-15.7-26.5-15.7-14.7 0-19.5 5.2-26.7 11-7 6-9.8 8-12.2 4.7-6-8.2 15.9-22.3 22.4-25zM360 405c-15.2-1-45.5-48.8-65-49.5-30.9-.9-104.1 80.7-161.3 42-38.8-26.6-14.6-104.8 51.8-105.2 49.5-.5 83.8 49 108.5 48.5 21.3-.3 61.8-41.8 81.8-41.8 48.7 0 23.3 109.3-15.8 106z"], + "dyalog": [416, 512, [], "f399", "M0 32v119.2h64V96h107.2C284.6 96 352 176.2 352 255.9 352 332 293.4 416 171.2 416H0v64h171.2C331.9 480 416 367.3 416 255.9c0-58.7-22.1-113.4-62.3-154.3C308.9 56 245.7 32 171.2 32H0z"], + "earlybirds": [480, 512, [], "f39a", "M313.2 47.5c1.2-13 21.3-14 36.6-8.7.9.3 26.2 9.7 19 15.2-27.9-7.4-56.4 18.2-55.6-6.5zm-201 6.9c30.7-8.1 62 20 61.1-7.1-1.3-14.2-23.4-15.3-40.2-9.6-1 .3-28.7 10.5-20.9 16.7zM319.4 160c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-159.7 0c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm318.5 163.2c-9.9 24-40.7 11-63.9-1.2-13.5 69.1-58.1 111.4-126.3 124.2.3.9-2-.1 24 1 33.6 1.4 63.8-3.1 97.4-8-19.8-13.8-11.4-37.1-9.8-38.1 1.4-.9 14.7 1.7 21.6 11.5 8.6-12.5 28.4-14.8 30.2-13.6 1.6 1.1 6.6 20.9-6.9 34.6 4.7-.9 8.2-1.6 9.8-2.1 2.6-.8 17.7 11.3 3.1 13.3-14.3 2.3-22.6 5.1-47.1 10.8-45.9 10.7-85.9 11.8-117.7 12.8l1 11.6c3.8 18.1-23.4 24.3-27.6 6.2.8 17.9-27.1 21.8-28.4-1l-.5 5.3c-.7 18.4-28.4 17.9-28.3-.6-7.5 13.5-28.1 6.8-26.4-8.5l1.2-12.4c-36.7.9-59.7 3.1-61.8 3.1-20.9 0-20.9-31.6 0-31.6 2.4 0 27.7 1.3 63.2 2.8-61.1-15.5-103.7-55-114.9-118.2-25 12.8-57.5 26.8-68.2.8-10.5-25.4 21.5-42.6 66.8-73.4.7-6.6 1.6-13.3 2.7-19.8-14.4-19.6-11.6-36.3-16.1-60.4-16.8 2.4-23.2-9.1-23.6-23.1.3-7.3 2.1-14.9 2.4-15.4 1.1-1.8 10.1-2 12.7-2.6 6-31.7 50.6-33.2 90.9-34.5 19.7-21.8 45.2-41.5 80.9-48.3C203.3 29 215.2 8.5 216.2 8c1.7-.8 21.2 4.3 26.3 23.2 5.2-8.8 18.3-11.4 19.6-10.7 1.1.6 6.4 15-4.9 25.9 40.3 3.5 72.2 24.7 96 50.7 36.1 1.5 71.8 5.9 77.1 34 2.7.6 11.6.8 12.7 2.6.3.5 2.1 8.1 2.4 15.4-.5 13.9-6.8 25.4-23.6 23.1-3.2 17.3-2.7 32.9-8.7 47.7 2.4 11.7 4 23.8 4.8 36.4 37 25.4 70.3 42.5 60.3 66.9zM207.4 159.9c.9-44-37.9-42.2-78.6-40.3-21.7 1-38.9 1.9-45.5 13.9-11.4 20.9 5.9 92.9 23.2 101.2 9.8 4.7 73.4 7.9 86.3-7.1 8.2-9.4 15-49.4 14.6-67.7zm52 58.3c-4.3-12.4-6-30.1-15.3-32.7-2-.5-9-.5-11 0-10 2.8-10.8 22.1-17 37.2 15.4 0 19.3 9.7 23.7 9.7 4.3 0 6.3-11.3 19.6-14.2zm135.7-84.7c-6.6-12.1-24.8-12.9-46.5-13.9-40.2-1.9-78.2-3.8-77.3 40.3-.5 18.3 5 58.3 13.2 67.8 13 14.9 76.6 11.8 86.3 7.1 15.8-7.6 36.5-78.9 24.3-101.3z"], + "ebay": [640, 512, [], "f4f4", "M606 189.5l-54.8 109.9-54.9-109.9h-37.5l10.9 20.6c-11.5-19-35.9-26-63.3-26-31.8 0-67.9 8.7-71.5 43.1h33.7c1.4-13.8 15.7-21.8 35-21.8 26 0 41 9.6 41 33v3.4c-12.7 0-28 .1-41.7.4-42.4.9-69.6 10-76.7 34.4 1-5.2 1.5-10.6 1.5-16.2 0-52.1-39.7-76.2-75.4-76.2-21.3 0-43 5.5-58.7 24.2v-80.6h-32.1v169.5c0 10.3-.6 22.9-1.1 33.1h31.5c.7-6.3 1.1-12.9 1.1-19.5 13.6 16.6 35.4 24.9 58.7 24.9 36.9 0 64.9-21.9 73.3-54.2-.5 2.8-.7 5.8-.7 9 0 24.1 21.1 45 60.6 45 26.6 0 45.8-5.7 61.9-25.5 0 6.6.3 13.3 1.1 20.2h29.8c-.7-8.2-1-17.5-1-26.8v-65.6c0-9.3-1.7-17.2-4.8-23.8l61.5 116.1-28.5 54.1h35.9L640 189.5zM243.7 313.8c-29.6 0-50.2-21.5-50.2-53.8 0-32.4 20.6-53.8 50.2-53.8 29.8 0 50.2 21.4 50.2 53.8 0 32.3-20.4 53.8-50.2 53.8zm200.9-47.3c0 30-17.9 48.4-51.6 48.4-25.1 0-35-13.4-35-25.8 0-19.1 18.1-24.4 47.2-25.3 13.1-.5 27.6-.6 39.4-.6zm-411.9 1.6h128.8v-8.5c0-51.7-33.1-75.4-78.4-75.4-56.8 0-83 30.8-83 77.6 0 42.5 25.3 74 82.5 74 31.4 0 68-11.7 74.4-46.1h-33.1c-12 35.8-87.7 36.7-91.2-21.6zm95-21.4H33.3c6.9-56.6 92.1-54.7 94.4 0z"], + "edge": [512, 512, [], "f282", "M481.92,134.48C440.87,54.18,352.26,8,255.91,8,137.05,8,37.51,91.68,13.47,203.66c26-46.49,86.22-79.14,149.46-79.14,79.27,0,121.09,48.93,122.25,50.18,22,23.8,33,50.39,33,83.1,0,10.4-5.31,25.82-15.11,38.57-1.57,2-6.39,4.84-6.39,11,0,5.06,3.29,9.92,9.14,14,27.86,19.37,80.37,16.81,80.51,16.81A115.39,115.39,0,0,0,444.94,322a118.92,118.92,0,0,0,58.95-102.44C504.39,176.13,488.39,147.26,481.92,134.48ZM212.77,475.67a154.88,154.88,0,0,1-46.64-45c-32.94-47.42-34.24-95.6-20.1-136A155.5,155.5,0,0,1,203,215.75c59-45.2,94.84-5.65,99.06-1a80,80,0,0,0-4.89-10.14c-9.24-15.93-24-36.41-56.56-53.51-33.72-17.69-70.59-18.59-77.64-18.59-38.71,0-77.9,13-107.53,35.69C35.68,183.3,12.77,208.72,8.6,243c-1.08,12.31-2.75,62.8,23,118.27a248,248,0,0,0,248.3,141.61C241.78,496.26,214.05,476.24,212.77,475.67Zm250.72-98.33a7.76,7.76,0,0,0-7.92-.23,181.66,181.66,0,0,1-20.41,9.12,197.54,197.54,0,0,1-69.55,12.52c-91.67,0-171.52-63.06-171.52-144A61.12,61.12,0,0,1,200.61,228,168.72,168.72,0,0,0,161.85,278c-14.92,29.37-33,88.13,13.33,151.66,6.51,8.91,23,30,56,47.67,23.57,12.65,49,19.61,71.7,19.61,35.14,0,115.43-33.44,163-108.87A7.75,7.75,0,0,0,463.49,377.34Z"], + "edge-legacy": [512, 512, [], "e078", "M25.71,228.16l.35-.48c0,.16,0,.32-.07.48Zm460.58,15.51c0-44-7.76-84.46-28.81-122.4C416.5,47.88,343.91,8,258.89,8,119,7.72,40.62,113.21,26.06,227.68c42.42-61.31,117.07-121.38,220.37-125,0,0,109.67,0,99.42,105H170c6.37-37.39,18.55-59,34.34-78.93-75.05,34.9-121.85,96.1-120.75,188.32.83,71.45,50.13,144.84,120.75,172,83.35,31.84,192.77,7.2,240.13-21.33V363.31C363.6,419.8,173.6,424.23,172.21,295.74H486.29V243.67Z"], + "elementor": [448, 512, [], "f430", "M425.6 32H22.4C10 32 0 42 0 54.4v403.2C0 470 10 480 22.4 480h403.2c12.4 0 22.4-10 22.4-22.4V54.4C448 42 438 32 425.6 32M164.3 355.5h-39.8v-199h39.8v199zm159.3 0H204.1v-39.8h119.5v39.8zm0-79.6H204.1v-39.8h119.5v39.8zm0-79.7H204.1v-39.8h119.5v39.8z"], + "ello": [496, 512, [], "f5f1", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm143.84 285.2C375.31 358.51 315.79 404.8 248 404.8s-127.31-46.29-143.84-111.6c-1.65-7.44 2.48-15.71 9.92-17.36 7.44-1.65 15.71 2.48 17.36 9.92 14.05 52.91 62 90.11 116.56 90.11s102.51-37.2 116.56-90.11c1.65-7.44 9.92-12.4 17.36-9.92 7.44 1.65 12.4 9.92 9.92 17.36z"], + "ember": [640, 512, [], "f423", "M639.9 254.6c-1.1-10.7-10.7-6.8-10.7-6.8s-15.6 12.1-29.3 10.7c-13.7-1.3-9.4-32-9.4-32s3-28.1-5.1-30.4c-8.1-2.4-18 7.3-18 7.3s-12.4 13.7-18.3 31.2l-1.6.5s1.9-30.6-.3-37.6c-1.6-3.5-16.4-3.2-18.8 3s-14.2 49.2-15 67.2c0 0-23.1 19.6-43.3 22.8s-25-9.4-25-9.4 54.8-15.3 52.9-59.1-44.2-27.6-49-24c-4.6 3.5-29.4 18.4-36.6 59.7-.2 1.4-.7 7.5-.7 7.5s-21.2 14.2-33 18c0 0 33-55.6-7.3-80.9-11.4-6.8-21.3-.5-27.2 5.3 13.6-17.3 46.4-64.2 36.9-105.2-5.8-24.4-18-27.1-29.2-23.1-17 6.7-23.5 16.7-23.5 16.7s-22 32-27.1 79.5-12.6 105.1-12.6 105.1-10.5 10.2-20.2 10.7-5.4-28.7-5.4-28.7 7.5-44.6 7-52.1-1.1-11.6-9.9-14.2c-8.9-2.7-18.5 8.6-18.5 8.6s-25.5 38.7-27.7 44.6l-1.3 2.4-1.3-1.6s18-52.7.8-53.5-28.5 18.8-28.5 18.8-19.6 32.8-20.4 36.5l-1.3-1.6s8.1-38.2 6.4-47.6c-1.6-9.4-10.5-7.5-10.5-7.5s-11.3-1.3-14.2 5.9-13.7 55.3-15 70.7c0 0-28.2 20.2-46.8 20.4-18.5.3-16.7-11.8-16.7-11.8s68-23.3 49.4-69.2c-8.3-11.8-18-15.5-31.7-15.3-13.7.3-30.3 8.6-41.3 33.3-5.3 11.8-6.8 23-7.8 31.5 0 0-12.3 2.4-18.8-2.9s-10 0-10 0-11.2 14-.1 18.3 28.1 6.1 28.1 6.1c1.6 7.5 6.2 19.5 19.6 29.7 20.2 15.3 58.8-1.3 58.8-1.3l15.9-8.8s.5 14.6 12.1 16.7 16.4 1 36.5-47.9c11.8-25 12.6-23.6 12.6-23.6l1.3-.3s-9.1 46.8-5.6 59.7C187.7 319.4 203 318 203 318s8.3 2.4 15-21.2 19.6-49.9 19.6-49.9h1.6s-5.6 48.1 3 63.7 30.9 5.3 30.9 5.3 15.6-7.8 18-10.2c0 0 18.5 15.8 44.6 12.9 58.3-11.5 79.1-25.9 79.1-25.9s10 24.4 41.1 26.7c35.5 2.7 54.8-18.6 54.8-18.6s-.3 13.5 12.1 18.6 20.7-22.8 20.7-22.8l20.7-57.2h1.9s1.1 37.3 21.5 43.2 47-13.7 47-13.7 6.4-3.5 5.3-14.3zm-578 5.3c.8-32 21.8-45.9 29-39 7.3 7 4.6 22-9.1 31.4-13.7 9.5-19.9 7.6-19.9 7.6zm272.8-123.8s19.1-49.7 23.6-25.5-40 96.2-40 96.2c.5-16.2 16.4-70.7 16.4-70.7zm22.8 138.4c-12.6 33-43.3 19.6-43.3 19.6s-3.5-11.8 6.4-44.9 33.3-20.2 33.3-20.2 16.2 12.4 3.6 45.5zm84.6-14.6s-3-10.5 8.1-30.6c11-20.2 19.6-9.1 19.6-9.1s9.4 10.2-1.3 25.5-26.4 14.2-26.4 14.2z"], + "empire": [496, 512, [], "f1d1", "M287.6 54.2c-10.8-2.2-22.1-3.3-33.5-3.6V32.4c78.1 2.2 146.1 44 184.6 106.6l-15.8 9.1c-6.1-9.7-12.7-18.8-20.2-27.1l-18 15.5c-26-29.6-61.4-50.7-101.9-58.4l4.8-23.9zM53.4 322.4l23-7.7c-6.4-18.3-10-38.2-10-58.7s3.3-40.4 9.7-58.7l-22.7-7.7c3.6-10.8 8.3-21.3 13.6-31l-15.8-9.1C34 181 24.1 217.5 24.1 256s10 75 27.1 106.6l15.8-9.1c-5.3-10-9.7-20.3-13.6-31.1zM213.1 434c-40.4-8-75.8-29.1-101.9-58.7l-18 15.8c-7.5-8.6-14.4-17.7-20.2-27.4l-16 9.4c38.5 62.3 106.8 104.3 184.9 106.6v-18.3c-11.3-.3-22.7-1.7-33.5-3.6l4.7-23.8zM93.3 120.9l18 15.5c26-29.6 61.4-50.7 101.9-58.4l-4.7-23.8c10.8-2.2 22.1-3.3 33.5-3.6V32.4C163.9 34.6 95.9 76.4 57.4 139l15.8 9.1c6-9.7 12.6-18.9 20.1-27.2zm309.4 270.2l-18-15.8c-26 29.6-61.4 50.7-101.9 58.7l4.7 23.8c-10.8 1.9-22.1 3.3-33.5 3.6v18.3c78.1-2.2 146.4-44.3 184.9-106.6l-16.1-9.4c-5.7 9.7-12.6 18.8-20.1 27.4zM496 256c0 137-111 248-248 248S0 393 0 256 111 8 248 8s248 111 248 248zm-12.2 0c0-130.1-105.7-235.8-235.8-235.8S12.2 125.9 12.2 256 117.9 491.8 248 491.8 483.8 386.1 483.8 256zm-39-106.6l-15.8 9.1c5.3 9.7 10 20.2 13.6 31l-22.7 7.7c6.4 18.3 9.7 38.2 9.7 58.7s-3.6 40.4-10 58.7l23 7.7c-3.9 10.8-8.3 21-13.6 31l15.8 9.1C462 331 471.9 294.5 471.9 256s-9.9-75-27.1-106.6zm-183 177.7c16.3-3.3 30.4-11.6 40.7-23.5l51.2 44.8c11.9-13.6 21.3-29.3 27.1-46.8l-64.2-22.1c2.5-7.5 3.9-15.2 3.9-23.5s-1.4-16.1-3.9-23.5l64.5-22.1c-6.1-17.4-15.5-33.2-27.4-46.8l-51.2 44.8c-10.2-11.9-24.4-20.5-40.7-23.8l13.3-66.4c-8.6-1.9-17.7-2.8-27.1-2.8-9.4 0-18.5.8-27.1 2.8l13.3 66.4c-16.3 3.3-30.4 11.9-40.7 23.8l-51.2-44.8c-11.9 13.6-21.3 29.3-27.4 46.8l64.5 22.1c-2.5 7.5-3.9 15.2-3.9 23.5s1.4 16.1 3.9 23.5l-64.2 22.1c5.8 17.4 15.2 33.2 27.1 46.8l51.2-44.8c10.2 11.9 24.4 20.2 40.7 23.5l-13.3 66.7c8.6 1.7 17.7 2.8 27.1 2.8 9.4 0 18.5-1.1 27.1-2.8l-13.3-66.7z"], + "envira": [448, 512, [], "f299", "M0 32c477.6 0 366.6 317.3 367.1 366.3L448 480h-26l-70.4-71.2c-39 4.2-124.4 34.5-214.4-37C47 300.3 52 214.7 0 32zm79.7 46c-49.7-23.5-5.2 9.2-5.2 9.2 45.2 31.2 66 73.7 90.2 119.9 31.5 60.2 79 139.7 144.2 167.7 65 28 34.2 12.5 6-8.5-28.2-21.2-68.2-87-91-130.2-31.7-60-61-118.6-144.2-158.1z"], + "erlang": [640, 512, [], "f39d", "M87.2 53.5H0v405h100.4c-49.7-52.6-78.8-125.3-78.7-212.1-.1-76.7 24-142.7 65.5-192.9zm238.2 9.7c-45.9.1-85.1 33.5-89.2 83.2h169.9c-1.1-49.7-34.5-83.1-80.7-83.2zm230.7-9.6h.3l-.1-.1zm.3 0c31.4 42.7 48.7 97.5 46.2 162.7.5 6 .5 11.7 0 24.1H230.2c-.2 109.7 38.9 194.9 138.6 195.3 68.5-.3 118-51 151.9-106.1l96.4 48.2c-17.4 30.9-36.5 57.8-57.9 80.8H640v-405z"], + "ethereum": [320, 512, [], "f42e", "M311.9 260.8L160 353.6 8 260.8 160 0l151.9 260.8zM160 383.4L8 290.6 160 512l152-221.4-152 92.8z"], + "etsy": [384, 512, [], "f2d7", "M384 348c-1.75 10.75-13.75 110-15.5 132-117.879-4.299-219.895-4.743-368.5 0v-25.5c45.457-8.948 60.627-8.019 61-35.25 1.793-72.322 3.524-244.143 0-322-1.029-28.46-12.13-26.765-61-36v-25.5c73.886 2.358 255.933 8.551 362.999-3.75-3.5 38.25-7.75 126.5-7.75 126.5H332C320.947 115.665 313.241 68 277.25 68h-137c-10.25 0-10.75 3.5-10.75 9.75V241.5c58 .5 88.5-2.5 88.5-2.5 29.77-.951 27.56-8.502 40.75-65.251h25.75c-4.407 101.351-3.91 61.829-1.75 160.25H257c-9.155-40.086-9.065-61.045-39.501-61.5 0 0-21.5-2-88-2v139c0 26 14.25 38.25 44.25 38.25H263c63.636 0 66.564-24.996 98.751-99.75H384z"], + "evernote": [384, 512, [], "f839", "M120.82 132.21c1.6 22.31-17.55 21.59-21.61 21.59-68.93 0-73.64-1-83.58 3.34-.56.22-.74 0-.37-.37L123.79 46.45c.38-.37.6-.22.38.37-4.35 9.99-3.35 15.09-3.35 85.39zm79 308c-14.68-37.08 13-76.93 52.52-76.62 17.49 0 22.6 23.21 7.95 31.42-6.19 3.3-24.95 1.74-25.14 19.2-.05 17.09 19.67 25 31.2 24.89A45.64 45.64 0 0 0 312 393.45v-.08c0-11.63-7.79-47.22-47.54-55.34-7.72-1.54-65-6.35-68.35-50.52-3.74 16.93-17.4 63.49-43.11 69.09-8.74 1.94-69.68 7.64-112.92-36.77 0 0-18.57-15.23-28.23-57.95-3.38-15.75-9.28-39.7-11.14-62 0-18 11.14-30.45 25.07-32.2 81 0 90 2.32 101-7.8 9.82-9.24 7.8-15.5 7.8-102.78 1-8.3 7.79-30.81 53.41-24.14 6 .86 31.91 4.18 37.48 30.64l64.26 11.15c20.43 3.71 70.94 7 80.6 57.94 22.66 121.09 8.91 238.46 7.8 238.46C362.15 485.53 267.06 480 267.06 480c-18.95-.23-54.25-9.4-67.27-39.83zm80.94-204.84c-1 1.92-2.2 6 .85 7 14.09 4.93 39.75 6.84 45.88 5.53 3.11-.25 3.05-4.43 2.48-6.65-3.53-21.85-40.83-26.5-49.24-5.92z"], + "expeditedssl": [496, 512, [], "f23e", "M248 43.4C130.6 43.4 35.4 138.6 35.4 256S130.6 468.6 248 468.6 460.6 373.4 460.6 256 365.4 43.4 248 43.4zm-97.4 132.9c0-53.7 43.7-97.4 97.4-97.4s97.4 43.7 97.4 97.4v26.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-26.6c0-82.1-124-82.1-124 0v26.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-26.6zM389.7 380c0 9.7-8 17.7-17.7 17.7H124c-9.7 0-17.7-8-17.7-17.7V238.3c0-9.7 8-17.7 17.7-17.7h248c9.7 0 17.7 8 17.7 17.7V380zm-248-137.3v132.9c0 2.5-1.9 4.4-4.4 4.4h-8.9c-2.5 0-4.4-1.9-4.4-4.4V242.7c0-2.5 1.9-4.4 4.4-4.4h8.9c2.5 0 4.4 1.9 4.4 4.4zm141.7 48.7c0 13-7.2 24.4-17.7 30.4v31.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-31.6c-10.5-6.1-17.7-17.4-17.7-30.4 0-19.7 15.8-35.4 35.4-35.4s35.5 15.8 35.5 35.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 478.3C121 486.3 17.7 383 17.7 256S121 25.7 248 25.7 478.3 129 478.3 256 375 486.3 248 486.3z"], + "facebook": [512, 512, [], "f09a", "M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.28c-30.8 0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z"], + "facebook-f": [320, 512, [], "f39e", "M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z"], + "facebook-messenger": [512, 512, [], "f39f", "M256.55 8C116.52 8 8 110.34 8 248.57c0 72.3 29.71 134.78 78.07 177.94 8.35 7.51 6.63 11.86 8.05 58.23A19.92 19.92 0 0 0 122 502.31c52.91-23.3 53.59-25.14 62.56-22.7C337.85 521.8 504 423.7 504 248.57 504 110.34 396.59 8 256.55 8zm149.24 185.13l-73 115.57a37.37 37.37 0 0 1-53.91 9.93l-58.08-43.47a15 15 0 0 0-18 0l-78.37 59.44c-10.46 7.93-24.16-4.6-17.11-15.67l73-115.57a37.36 37.36 0 0 1 53.91-9.93l58.06 43.46a15 15 0 0 0 18 0l78.41-59.38c10.44-7.98 24.14 4.54 17.09 15.62z"], + "facebook-square": [448, 512, [], "f082", "M400 32H48A48 48 0 0 0 0 80v352a48 48 0 0 0 48 48h137.25V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.27c-30.81 0-40.42 19.12-40.42 38.73V256h68.78l-11 71.69h-57.78V480H400a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48z"], + "fantasy-flight-games": [512, 512, [], "f6dc", "M256 32.86L32.86 256 256 479.14 479.14 256 256 32.86zM88.34 255.83c1.96-2 11.92-12.3 96.49-97.48 41.45-41.75 86.19-43.77 119.77-18.69 24.63 18.4 62.06 58.9 62.15 59 .68.74 1.07 2.86.58 3.38-11.27 11.84-22.68 23.54-33.5 34.69-34.21-32.31-40.52-38.24-48.51-43.95-17.77-12.69-41.4-10.13-56.98 5.1-2.17 2.13-1.79 3.43.12 5.35 2.94 2.95 28.1 28.33 35.09 35.78-11.95 11.6-23.66 22.97-35.69 34.66-12.02-12.54-24.48-25.53-36.54-38.11-21.39 21.09-41.69 41.11-61.85 60.99a42569.01 42569.01 0 0 1-41.13-40.72zm234.82 101.6c-35.49 35.43-78.09 38.14-106.99 20.47-22.08-13.5-39.38-32.08-72.93-66.84 12.05-12.37 23.79-24.42 35.37-36.31 33.02 31.91 37.06 36.01 44.68 42.09 18.48 14.74 42.52 13.67 59.32-1.8 3.68-3.39 3.69-3.64.14-7.24-10.59-10.73-21.19-21.44-31.77-32.18-1.32-1.34-3.03-2.48-.8-4.69 10.79-10.71 21.48-21.52 32.21-32.29.26-.26.65-.38 1.91-1.07 12.37 12.87 24.92 25.92 37.25 38.75 21.01-20.73 41.24-40.68 61.25-60.42 13.68 13.4 27.13 26.58 40.86 40.03-20.17 20.86-81.68 82.71-100.5 101.5zM256 0L0 256l256 256 256-256L256 0zM16 256L256 16l240 240-240 240L16 256z"], + "fedex": [640, 512, [], "f797", "M586 284.5l53.3-59.9h-62.4l-21.7 24.8-22.5-24.8H414v-16h56.1v-48.1H318.9V236h-.5c-9.6-11-21.5-14.8-35.4-14.8-28.4 0-49.8 19.4-57.3 44.9-18-59.4-97.4-57.6-121.9-14v-24.2H49v-26.2h60v-41.1H0V345h49v-77.5h48.9c-1.5 5.7-2.3 11.8-2.3 18.2 0 73.1 102.6 91.4 130.2 23.7h-42c-14.7 20.9-45.8 8.9-45.8-14.6h85.5c3.7 30.5 27.4 56.9 60.1 56.9 14.1 0 27-6.9 34.9-18.6h.5V345h212.2l22.1-25 22.3 25H640l-54-60.5zm-446.7-16.6c6.1-26.3 41.7-25.6 46.5 0h-46.5zm153.4 48.9c-34.6 0-34-62.8 0-62.8 32.6 0 34.5 62.8 0 62.8zm167.8 19.1h-94.4V169.4h95v30.2H405v33.9h55.5v28.1h-56.1v44.7h56.1v29.6zm-45.9-39.8v-24.4h56.1v-44l50.7 57-50.7 57v-45.6h-56.1zm138.6 10.3l-26.1 29.5H489l45.6-51.2-45.6-51.2h39.7l26.6 29.3 25.6-29.3h38.5l-45.4 51 46 51.4h-40.5l-26.3-29.5z"], + "fedora": [448, 512, [], "f798", "M225 32C101.3 31.7.8 131.7.4 255.4L0 425.7a53.6 53.6 0 0 0 53.6 53.9l170.2.4c123.7.3 224.3-99.7 224.6-223.4S348.7 32.3 225 32zm169.8 157.2L333 126.6c2.3-4.7 3.8-9.2 3.8-14.3v-1.6l55.2 56.1a101 101 0 0 1 2.8 22.4zM331 94.3a106.06 106.06 0 0 1 58.5 63.8l-54.3-54.6a26.48 26.48 0 0 0-4.2-9.2zM118.1 247.2a49.66 49.66 0 0 0-7.7 11.4l-8.5-8.5a85.78 85.78 0 0 1 16.2-2.9zM97 251.4l11.8 11.9-.9 8a34.74 34.74 0 0 0 2.4 12.5l-27-27.2a80.6 80.6 0 0 1 13.7-5.2zm-18.2 7.4l38.2 38.4a53.17 53.17 0 0 0-14.1 4.7L67.6 266a107 107 0 0 1 11.2-7.2zm-15.2 9.8l35.3 35.5a67.25 67.25 0 0 0-10.5 8.5L53.5 278a64.33 64.33 0 0 1 10.1-9.4zm-13.3 12.3l34.9 35a56.84 56.84 0 0 0-7.7 11.4l-35.8-35.9c2.8-3.8 5.7-7.2 8.6-10.5zm-11 14.3l36.4 36.6a48.29 48.29 0 0 0-3.6 15.2l-39.5-39.8a99.81 99.81 0 0 1 6.7-12zm-8.8 16.3l41.3 41.8a63.47 63.47 0 0 0 6.7 26.2L25.8 326c1.4-4.9 2.9-9.6 4.7-14.5zm-7.9 43l61.9 62.2a31.24 31.24 0 0 0-3.6 14.3v1.1l-55.4-55.7a88.27 88.27 0 0 1-2.9-21.9zm5.3 30.7l54.3 54.6a28.44 28.44 0 0 0 4.2 9.2 106.32 106.32 0 0 1-58.5-63.8zm-5.3-37a80.69 80.69 0 0 1 2.1-17l72.2 72.5a37.59 37.59 0 0 0-9.9 8.7zm253.3-51.8l-42.6-.1-.1 56c-.2 69.3-64.4 115.8-125.7 102.9-5.7 0-19.9-8.7-19.9-24.2a24.89 24.89 0 0 1 24.5-24.6c6.3 0 6.3 1.6 15.7 1.6a55.91 55.91 0 0 0 56.1-55.9l.1-47c0-4.5-4.5-9-8.9-9l-33.6-.1c-32.6-.1-32.5-49.4.1-49.3l42.6.1.1-56a105.18 105.18 0 0 1 105.6-105 86.35 86.35 0 0 1 20.2 2.3c11.2 1.8 19.9 11.9 19.9 24 0 15.5-14.9 27.8-30.3 23.9-27.4-5.9-65.9 14.4-66 54.9l-.1 47a8.94 8.94 0 0 0 8.9 9l33.6.1c32.5.2 32.4 49.5-.2 49.4zm23.5-.3a35.58 35.58 0 0 0 7.6-11.4l8.5 8.5a102 102 0 0 1-16.1 2.9zm21-4.2L308.6 280l.9-8.1a34.74 34.74 0 0 0-2.4-12.5l27 27.2a74.89 74.89 0 0 1-13.7 5.3zm18-7.4l-38-38.4c4.9-1.1 9.6-2.4 13.7-4.7l36.2 35.9c-3.8 2.5-7.9 5-11.9 7.2zm15.5-9.8l-35.3-35.5a61.06 61.06 0 0 0 10.5-8.5l34.9 35a124.56 124.56 0 0 1-10.1 9zm13.2-12.3l-34.9-35a63.18 63.18 0 0 0 7.7-11.4l35.8 35.9a130.28 130.28 0 0 1-8.6 10.5zm11-14.3l-36.4-36.6a48.29 48.29 0 0 0 3.6-15.2l39.5 39.8a87.72 87.72 0 0 1-6.7 12zm13.5-30.9a140.63 140.63 0 0 1-4.7 14.3L345.6 190a58.19 58.19 0 0 0-7.1-26.2zm1-5.6l-71.9-72.1a32 32 0 0 0 9.9-9.2l64.3 64.7a90.93 90.93 0 0 1-2.3 16.6z"], + "figma": [384, 512, [], "f799", "M277 170.7A85.35 85.35 0 0 0 277 0H106.3a85.3 85.3 0 0 0 0 170.6 85.35 85.35 0 0 0 0 170.7 85.35 85.35 0 1 0 85.3 85.4v-256zm0 0a85.3 85.3 0 1 0 85.3 85.3 85.31 85.31 0 0 0-85.3-85.3z"], + "firefox": [512, 512, [], "f269", "M503.52,241.48c-.12-1.56-.24-3.12-.24-4.68v-.12l-.36-4.68v-.12a245.86,245.86,0,0,0-7.32-41.15c0-.12,0-.12-.12-.24l-1.08-4c-.12-.24-.12-.48-.24-.6-.36-1.2-.72-2.52-1.08-3.72-.12-.24-.12-.6-.24-.84-.36-1.2-.72-2.4-1.08-3.48-.12-.36-.24-.6-.36-1-.36-1.2-.72-2.28-1.2-3.48l-.36-1.08c-.36-1.08-.84-2.28-1.2-3.36a8.27,8.27,0,0,0-.36-1c-.48-1.08-.84-2.28-1.32-3.36-.12-.24-.24-.6-.36-.84-.48-1.2-1-2.28-1.44-3.48,0-.12-.12-.24-.12-.36-1.56-3.84-3.24-7.68-5-11.4l-.36-.72c-.48-1-.84-1.8-1.32-2.64-.24-.48-.48-1.08-.72-1.56-.36-.84-.84-1.56-1.2-2.4-.36-.6-.6-1.2-1-1.8s-.84-1.44-1.2-2.28c-.36-.6-.72-1.32-1.08-1.92s-.84-1.44-1.2-2.16a18.07,18.07,0,0,0-1.2-2c-.36-.72-.84-1.32-1.2-2s-.84-1.32-1.2-2-.84-1.32-1.2-1.92-.84-1.44-1.32-2.16a15.63,15.63,0,0,0-1.2-1.8L463.2,119a15.63,15.63,0,0,0-1.2-1.8c-.48-.72-1.08-1.56-1.56-2.28-.36-.48-.72-1.08-1.08-1.56l-1.8-2.52c-.36-.48-.6-.84-1-1.32-1-1.32-1.8-2.52-2.76-3.72a248.76,248.76,0,0,0-23.51-26.64A186.82,186.82,0,0,0,412,62.46c-4-3.48-8.16-6.72-12.48-9.84a162.49,162.49,0,0,0-24.6-15.12c-2.4-1.32-4.8-2.52-7.2-3.72a254,254,0,0,0-55.43-19.56c-1.92-.36-3.84-.84-5.64-1.2h-.12c-1-.12-1.8-.36-2.76-.48a236.35,236.35,0,0,0-38-4H255.14a234.62,234.62,0,0,0-45.48,5c-33.59,7.08-63.23,21.24-82.91,39-1.08,1-1.92,1.68-2.4,2.16l-.48.48H124l-.12.12.12-.12a.12.12,0,0,0,.12-.12l-.12.12a.42.42,0,0,1,.24-.12c14.64-8.76,34.92-16,49.44-19.56l5.88-1.44c.36-.12.84-.12,1.2-.24,1.68-.36,3.36-.72,5.16-1.08.24,0,.6-.12.84-.12C250.94,20.94,319.34,40.14,367,85.61a171.49,171.49,0,0,1,26.88,32.76c30.36,49.2,27.48,111.11,3.84,147.59-34.44,53-111.35,71.27-159,24.84a84.19,84.19,0,0,1-25.56-59,74.05,74.05,0,0,1,6.24-31c1.68-3.84,13.08-25.67,18.24-24.59-13.08-2.76-37.55,2.64-54.71,28.19-15.36,22.92-14.52,58.2-5,83.28a132.85,132.85,0,0,1-12.12-39.24c-12.24-82.55,43.31-153,94.31-170.51-27.48-24-96.47-22.31-147.71,15.36-29.88,22-51.23,53.16-62.51,90.36,1.68-20.88,9.6-52.08,25.8-83.88-17.16,8.88-39,37-49.8,62.88-15.6,37.43-21,82.19-16.08,124.79.36,3.24.72,6.36,1.08,9.6,19.92,117.11,122,206.38,244.78,206.38C392.77,503.42,504,392.19,504,255,503.88,250.48,503.76,245.92,503.52,241.48Z"], + "firefox-browser": [512, 512, [], "e007", "M189.37,152.86Zm-58.74-29.37C130.79,123.5,130.71,123.5,130.63,123.49Zm351.42,45.35c-10.61-25.5-32.08-53-48.94-61.73,13.72,26.89,21.67,53.88,24.7,74,0,0,0,.14.05.41-27.58-68.75-74.35-96.47-112.55-156.83-1.93-3.05-3.86-6.11-5.74-9.33-1-1.65-1.86-3.34-2.69-5.05A44.88,44.88,0,0,1,333.24.69a.63.63,0,0,0-.55-.66.9.9,0,0,0-.46,0l-.12.07-.18.1.1-.14c-54.23,31.77-76.72,87.38-82.5,122.78a130,130,0,0,0-48.33,12.33,6.25,6.25,0,0,0-3.09,7.75,6.13,6.13,0,0,0,7.79,3.79l.52-.21a117.84,117.84,0,0,1,42.11-11l1.42-.1c2-.12,4-.2,6-.22A122.61,122.61,0,0,1,291,140c.67.2,1.32.42,2,.63,1.89.57,3.76,1.2,5.62,1.87,1.36.5,2.71,1,4.05,1.58,1.09.44,2.18.88,3.25,1.35q2.52,1.13,5,2.35c.75.37,1.5.74,2.25,1.13q2.4,1.26,4.74,2.63,1.51.87,3,1.8a124.89,124.89,0,0,1,42.66,44.13c-13-9.15-36.35-18.19-58.82-14.28,87.74,43.86,64.18,194.9-57.39,189.2a108.43,108.43,0,0,1-31.74-6.12c-2.42-.91-4.8-1.89-7.16-2.93-1.38-.63-2.76-1.27-4.12-2C174.5,346,149.9,316.92,146.83,281.59c0,0,11.25-41.95,80.62-41.95,7.5,0,28.93-20.92,29.33-27-.09-2-42.54-18.87-59.09-35.18-8.85-8.71-13.05-12.91-16.77-16.06a69.58,69.58,0,0,0-6.31-4.77A113.05,113.05,0,0,1,173.92,97c-25.06,11.41-44.55,29.45-58.71,45.37h-.12c-9.67-12.25-9-52.65-8.43-61.08-.12-.53-7.22,3.68-8.15,4.31a178.54,178.54,0,0,0-23.84,20.43A214,214,0,0,0,51.9,133.36l0,0a.08.08,0,0,1,0,0,205.84,205.84,0,0,0-32.73,73.9c-.06.27-2.33,10.21-4,22.48q-.42,2.87-.78,5.74c-.57,3.69-1,7.71-1.44,14,0,.24,0,.48-.05.72-.18,2.71-.34,5.41-.49,8.12,0,.41,0,.82,0,1.24,0,134.7,109.21,243.89,243.92,243.89,120.64,0,220.82-87.58,240.43-202.62.41-3.12.74-6.26,1.11-9.41,4.85-41.83-.54-85.79-15.82-122.55Z"], + "first-order": [448, 512, [], "f2b0", "M12.9 229.2c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4h-.2zM224 96.6c-7.1 0-14.6.6-21.4 1.7l3.7 67.4-22-64c-14.3 3.7-27.7 9.4-40 16.6l29.4 61.4-45.1-50.9c-11.4 8.9-21.7 19.1-30.6 30.9l50.6 45.4-61.1-29.7c-7.1 12.3-12.9 25.7-16.6 40l64.3 22.6-68-4c-.9 7.1-1.4 14.6-1.4 22s.6 14.6 1.4 21.7l67.7-4-64 22.6c3.7 14.3 9.4 27.7 16.6 40.3l61.1-29.7L97.7 352c8.9 11.7 19.1 22.3 30.9 30.9l44.9-50.9-29.5 61.4c12.3 7.4 25.7 13.1 40 16.9l22.3-64.6-4 68c7.1 1.1 14.6 1.7 21.7 1.7 7.4 0 14.6-.6 21.7-1.7l-4-68.6 22.6 65.1c14.3-4 27.7-9.4 40-16.9L274.9 332l44.9 50.9c11.7-8.9 22-19.1 30.6-30.9l-50.6-45.1 61.1 29.4c7.1-12.3 12.9-25.7 16.6-40.3l-64-22.3 67.4 4c1.1-7.1 1.4-14.3 1.4-21.7s-.3-14.9-1.4-22l-67.7 4 64-22.3c-3.7-14.3-9.1-28-16.6-40.3l-60.9 29.7 50.6-45.4c-8.9-11.7-19.1-22-30.6-30.9l-45.1 50.9 29.4-61.1c-12.3-7.4-25.7-13.1-40-16.9L241.7 166l4-67.7c-7.1-1.2-14.3-1.7-21.7-1.7zM443.4 128v256L224 512 4.6 384V128L224 0l219.4 128zm-17.1 10.3L224 20.9 21.7 138.3v235.1L224 491.1l202.3-117.7V138.3zM224 37.1l187.7 109.4v218.9L224 474.9 36.3 365.4V146.6L224 37.1zm0 50.9c-92.3 0-166.9 75.1-166.9 168 0 92.6 74.6 167.7 166.9 167.7 92 0 166.9-75.1 166.9-167.7 0-92.9-74.9-168-166.9-168z"], + "first-order-alt": [496, 512, [], "f50a", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 488.21C115.34 496.21 7.79 388.66 7.79 256S115.34 15.79 248 15.79 488.21 123.34 488.21 256 380.66 496.21 248 496.21zm0-459.92C126.66 36.29 28.29 134.66 28.29 256S126.66 475.71 248 475.71 467.71 377.34 467.71 256 369.34 36.29 248 36.29zm0 431.22c-116.81 0-211.51-94.69-211.51-211.51S131.19 44.49 248 44.49 459.51 139.19 459.51 256 364.81 467.51 248 467.51zm186.23-162.98a191.613 191.613 0 0 1-20.13 48.69l-74.13-35.88 61.48 54.82a193.515 193.515 0 0 1-37.2 37.29l-54.8-61.57 35.88 74.27a190.944 190.944 0 0 1-48.63 20.23l-27.29-78.47 4.79 82.93c-8.61 1.18-17.4 1.8-26.33 1.8s-17.72-.62-26.33-1.8l4.76-82.46-27.15 78.03a191.365 191.365 0 0 1-48.65-20.2l35.93-74.34-54.87 61.64a193.85 193.85 0 0 1-37.22-37.28l61.59-54.9-74.26 35.93a191.638 191.638 0 0 1-20.14-48.69l77.84-27.11-82.23 4.76c-1.16-8.57-1.78-17.32-1.78-26.21 0-9 .63-17.84 1.82-26.51l82.38 4.77-77.94-27.16a191.726 191.726 0 0 1 20.23-48.67l74.22 35.92-61.52-54.86a193.85 193.85 0 0 1 37.28-37.22l54.76 61.53-35.83-74.17a191.49 191.49 0 0 1 48.65-20.13l26.87 77.25-4.71-81.61c8.61-1.18 17.39-1.8 26.32-1.8s17.71.62 26.32 1.8l-4.74 82.16 27.05-77.76c17.27 4.5 33.6 11.35 48.63 20.17l-35.82 74.12 54.72-61.47a193.13 193.13 0 0 1 37.24 37.23l-61.45 54.77 74.12-35.86a191.515 191.515 0 0 1 20.2 48.65l-77.81 27.1 82.24-4.75c1.19 8.66 1.82 17.5 1.82 26.49 0 8.88-.61 17.63-1.78 26.19l-82.12-4.75 77.72 27.09z"], + "firstdraft": [384, 512, [], "f3a1", "M384 192h-64v128H192v128H0v-25.6h166.4v-128h128v-128H384V192zm-25.6 38.4v128h-128v128H64V512h192V384h128V230.4h-25.6zm25.6 192h-89.6V512H320v-64h64v-25.6zM0 0v384h128V256h128V128h128V0H0z"], + "flickr": [448, 512, [], "f16e", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM144.5 319c-35.1 0-63.5-28.4-63.5-63.5s28.4-63.5 63.5-63.5 63.5 28.4 63.5 63.5-28.4 63.5-63.5 63.5zm159 0c-35.1 0-63.5-28.4-63.5-63.5s28.4-63.5 63.5-63.5 63.5 28.4 63.5 63.5-28.4 63.5-63.5 63.5z"], + "flipboard": [448, 512, [], "f44d", "M0 32v448h448V32H0zm358.4 179.2h-89.6v89.6h-89.6v89.6H89.6V121.6h268.8v89.6z"], + "fly": [384, 512, [], "f417", "M197.8 427.8c12.9 11.7 33.7 33.3 33.2 50.7 0 .8-.1 1.6-.1 2.5-1.8 19.8-18.8 31.1-39.1 31-25-.1-39.9-16.8-38.7-35.8 1-16.2 20.5-36.7 32.4-47.6 2.3-2.1 2.7-2.7 5.6-3.6 3.4 0 3.9.3 6.7 2.8zM331.9 67.3c-16.3-25.7-38.6-40.6-63.3-52.1C243.1 4.5 214-.2 192 0c-44.1 0-71.2 13.2-81.1 17.3C57.3 45.2 26.5 87.2 28 158.6c7.1 82.2 97 176 155.8 233.8 1.7 1.6 4.5 4.5 6.2 5.1l3.3.1c2.1-.7 1.8-.5 3.5-2.1 52.3-49.2 140.7-145.8 155.9-215.7 7-39.2 3.1-72.5-20.8-112.5zM186.8 351.9c-28-51.1-65.2-130.7-69.3-189-3.4-47.5 11.4-131.2 69.3-136.7v325.7zM328.7 180c-16.4 56.8-77.3 128-118.9 170.3C237.6 298.4 275 217 277 158.4c1.6-45.9-9.8-105.8-48-131.4 88.8 18.3 115.5 98.1 99.7 153z"], + "font-awesome": [448, 512, [], "f2b4", "M397.8 32H50.2C22.7 32 0 54.7 0 82.2v347.6C0 457.3 22.7 480 50.2 480h347.6c27.5 0 50.2-22.7 50.2-50.2V82.2c0-27.5-22.7-50.2-50.2-50.2zm-45.4 284.3c0 4.2-3.6 6-7.8 7.8-16.7 7.2-34.6 13.7-53.8 13.7-26.9 0-39.4-16.7-71.7-16.7-23.3 0-47.8 8.4-67.5 17.3-1.2.6-2.4.6-3.6 1.2V385c0 1.8 0 3.6-.6 4.8v1.2c-2.4 8.4-10.2 14.3-19.1 14.3-11.3 0-20.3-9-20.3-20.3V166.4c-7.8-6-13.1-15.5-13.1-26.3 0-18.5 14.9-33.5 33.5-33.5 18.5 0 33.5 14.9 33.5 33.5 0 10.8-4.8 20.3-13.1 26.3v18.5c1.8-.6 3.6-1.2 5.4-2.4 18.5-7.8 40.6-14.3 61.5-14.3 22.7 0 40.6 6 60.9 13.7 4.2 1.8 8.4 2.4 13.1 2.4 22.7 0 47.8-16.1 53.8-16.1 4.8 0 9 3.6 9 7.8v140.3z"], + "font-awesome-alt": [448, 512, [], "f35c", "M339.3 171.2c-6 0-29.9 15.5-52.6 15.5-4.2 0-8.4-.6-12.5-2.4-19.7-7.8-37-13.7-59.1-13.7-20.3 0-41.8 6.6-59.7 13.7-1.8.6-3.6 1.2-4.8 1.8v-17.9c7.8-6 12.5-14.9 12.5-25.7 0-17.9-14.3-32.3-32.3-32.3s-32.3 14.3-32.3 32.3c0 10.2 4.8 19.7 12.5 25.7v212.1c0 10.8 9 19.7 19.7 19.7 9 0 16.1-6 18.5-13.7V385c.6-1.8.6-3 .6-4.8V336c1.2 0 2.4-.6 3-1.2 19.7-8.4 43-16.7 65.7-16.7 31.1 0 43 16.1 69.3 16.1 18.5 0 36.4-6.6 52-13.7 4.2-1.8 7.2-3.6 7.2-7.8V178.3c1.8-4.1-2.3-7.1-7.7-7.1zM397.8 32H50.2C22.7 32 0 54.7 0 82.2v347.6C0 457.3 22.7 480 50.2 480h347.6c27.5 0 50.2-22.7 50.2-50.2V82.2c0-27.5-22.7-50.2-50.2-50.2zm14.3 397.7c0 7.8-6.6 14.3-14.3 14.3H50.2c-7.8 0-14.3-6.6-14.3-14.3V82.2c0-7.8 6.6-14.3 14.3-14.3h347.6v-.1c7.8 0 14.3 6.6 14.3 14.3z"], + "font-awesome-flag": [448, 512, [], "f425", "M444.373 359.424c0 7.168-6.144 10.24-13.312 13.312-28.672 12.288-59.392 23.552-92.16 23.552-46.08 0-67.584-28.672-122.88-28.672-39.936 0-81.92 14.336-115.712 29.696-2.048 1.024-4.096 1.024-6.144 2.048v77.824c0 21.405-16.122 34.816-33.792 34.816-19.456 0-34.816-15.36-34.816-34.816V102.4C12.245 92.16 3.029 75.776 3.029 57.344 3.029 25.6 28.629 0 60.373 0s57.344 25.6 57.344 57.344c0 18.432-8.192 34.816-22.528 45.056v31.744c4.124-1.374 58.768-28.672 114.688-28.672 65.27 0 97.676 27.648 126.976 27.648 38.912 0 81.92-27.648 92.16-27.648 8.192 0 15.36 6.144 15.36 13.312v240.64z"], + "font-awesome-logo-full": [3992, 512, ["Font Awesome"], "f4e6", "M454.6 0H57.4C25.9 0 0 25.9 0 57.4v397.3C0 486.1 25.9 512 57.4 512h397.3c31.4 0 57.4-25.9 57.4-57.4V57.4C512 25.9 486.1 0 454.6 0zm-58.9 324.9c0 4.8-4.1 6.9-8.9 8.9-19.2 8.1-39.7 15.7-61.5 15.7-40.5 0-68.7-44.8-163.2 2.5v51.8c0 30.3-45.7 30.2-45.7 0v-250c-9-7-15-17.9-15-30.3 0-21 17.1-38.2 38.2-38.2 21 0 38.2 17.1 38.2 38.2 0 12.2-5.8 23.2-14.9 30.2v21c37.1-12 65.5-34.4 146.1-3.4 26.6 11.4 68.7-15.7 76.5-15.7 5.5 0 10.3 4.1 10.3 8.9v160.4zm432.9-174.2h-137v70.1H825c39.8 0 40.4 62.2 0 62.2H691.6v105.6c0 45.5-70.7 46.4-70.7 0V128.3c0-22 18-39.8 39.8-39.8h167.8c39.6 0 40.5 62.2.1 62.2zm191.1 23.4c-169.3 0-169.1 252.4 0 252.4 169.9 0 169.9-252.4 0-252.4zm0 196.1c-81.6 0-82.1-139.8 0-139.8 82.5 0 82.4 139.8 0 139.8zm372.4 53.4c-17.5 0-31.4-13.9-31.4-31.4v-117c0-62.4-72.6-52.5-99.1-16.4v133.4c0 41.5-63.3 41.8-63.3 0V208c0-40 63.1-41.6 63.1 0v3.4c43.3-51.6 162.4-60.4 162.4 39.3v141.5c.3 30.4-31.5 31.4-31.7 31.4zm179.7 2.9c-44.3 0-68.3-22.9-68.3-65.8V235.2H1488c-35.6 0-36.7-55.3 0-55.3h15.5v-37.3c0-41.3 63.8-42.1 63.8 0v37.5h24.9c35.4 0 35.7 55.3 0 55.3h-24.9v108.5c0 29.6 26.1 26.3 27.4 26.3 31.4 0 52.6 56.3-22.9 56.3zM1992 123c-19.5-50.2-95.5-50-114.5 0-107.3 275.7-99.5 252.7-99.5 262.8 0 42.8 58.3 51.2 72.1 14.4l13.5-35.9H2006l13 35.9c14.2 37.7 72.1 27.2 72.1-14.4 0-10.1 5.3 6.8-99.1-262.8zm-108.9 179.1l51.7-142.9 51.8 142.9h-103.5zm591.3-85.6l-53.7 176.3c-12.4 41.2-72 41-84 0l-42.3-135.9-42.3 135.9c-12.4 40.9-72 41.2-84.5 0l-54.2-176.3c-12.5-39.4 49.8-56.1 60.2-16.9L2213 342l45.3-139.5c10.9-32.7 59.6-34.7 71.2 0l45.3 139.5 39.3-142.4c10.3-38.3 72.6-23.8 60.3 16.9zm275.4 75.1c0-42.4-33.9-117.5-119.5-117.5-73.2 0-124.4 56.3-124.4 126 0 77.2 55.3 126.4 128.5 126.4 31.7 0 93-11.5 93-39.8 0-18.3-21.1-31.5-39.3-22.4-49.4 26.2-109 8.4-115.9-43.8h148.3c16.3 0 29.3-13.4 29.3-28.9zM2571 277.7c9.5-73.4 113.9-68.6 118.6 0H2571zm316.7 148.8c-31.4 0-81.6-10.5-96.6-31.9-12.4-17 2.5-39.8 21.8-39.8 16.3 0 36.8 22.9 77.7 22.9 27.4 0 40.4-11 40.4-25.8 0-39.8-142.9-7.4-142.9-102 0-40.4 35.3-75.7 98.6-75.7 31.4 0 74.1 9.9 87.6 29.4 10.8 14.8-1.4 36.2-20.9 36.2-15.1 0-26.7-17.3-66.2-17.3-22.9 0-37.8 10.5-37.8 23.8 0 35.9 142.4 6 142.4 103.1-.1 43.7-37.4 77.1-104.1 77.1zm266.8-252.4c-169.3 0-169.1 252.4 0 252.4 170.1 0 169.6-252.4 0-252.4zm0 196.1c-81.8 0-82-139.8 0-139.8 82.5 0 82.4 139.8 0 139.8zm476.9 22V268.7c0-53.8-61.4-45.8-85.7-10.5v134c0 41.3-63.8 42.1-63.8 0V268.7c0-52.1-59.5-47.4-85.7-10.1v133.6c0 41.5-63.3 41.8-63.3 0V208c0-40 63.1-41.6 63.1 0v3.4c9.9-14.4 41.8-37.3 78.6-37.3 35.3 0 57.7 16.4 66.7 43.8 13.9-21.8 45.8-43.8 82.6-43.8 44.3 0 70.7 23.4 70.7 72.7v145.3c.5 17.3-13.5 31.4-31.9 31.4 3.5.1-31.3 1.1-31.3-31.3zM3992 291.6c0-42.4-32.4-117.5-117.9-117.5-73.2 0-127.5 56.3-127.5 126 0 77.2 58.3 126.4 131.6 126.4 31.7 0 91.5-11.5 91.5-39.8 0-18.3-21.1-31.5-39.3-22.4-49.4 26.2-110.5 8.4-117.5-43.8h149.8c16.3 0 29.1-13.4 29.3-28.9zm-180.5-13.9c9.7-74.4 115.9-68.3 120.1 0h-120.1z"], + "fonticons": [448, 512, [], "f280", "M0 32v448h448V32zm187 140.9c-18.4 0-19 9.9-19 27.4v23.3c0 2.4-3.5 4.4-.6 4.4h67.4l-11.1 37.3H168v112.9c0 5.8-2 6.7 3.2 7.3l43.5 4.1v25.1H84V389l21.3-2c5.2-.6 6.7-2.3 6.7-7.9V267.7c0-2.3-2.9-2.3-5.8-2.3H84V228h28v-21c0-49.6 26.5-70 77.3-70 34.1 0 64.7 8.2 64.7 52.8l-50.7 6.1c.3-18.7-4.4-23-16.3-23zm74.3 241.8v-25.1l20.4-2.6c5.2-.6 7.6-1.7 7.6-7.3V271.8c0-4.1-2.9-6.7-6.7-7.9l-24.2-6.4 6.7-29.5h80.2v151.7c0 5.8-2.6 6.4 2.9 7.3l15.7 2.6v25.1zm80.8-255.5l9 33.2-7.3 7.3-31.2-16.6-31.2 16.6-7.3-7.3 9-33.2-21.8-24.2 3.5-9.6h27.7l15.5-28h9.3l15.5 28h27.7l3.5 9.6z"], + "fonticons-fi": [384, 512, [], "f3a2", "M114.4 224h92.4l-15.2 51.2h-76.4V433c0 8-2.8 9.2 4.4 10l59.6 5.6V483H0v-35.2l29.2-2.8c7.2-.8 9.2-3.2 9.2-10.8V278.4c0-3.2-4-3.2-8-3.2H0V224h38.4v-28.8c0-68 36.4-96 106-96 46.8 0 88.8 11.2 88.8 72.4l-69.6 8.4c.4-25.6-6-31.6-22.4-31.6-25.2 0-26 13.6-26 37.6v32c0 3.2-4.8 6-.8 6zM384 483H243.2v-34.4l28-3.6c7.2-.8 10.4-2.4 10.4-10V287c0-5.6-4-9.2-9.2-10.8l-33.2-8.8 9.2-40.4h110v208c0 8-3.6 8.8 4 10l21.6 3.6V483zm-30-347.2l12.4 45.6-10 10-42.8-22.8-42.8 22.8-10-10 12.4-45.6-30-36.4 4.8-10h38L307.2 51H320l21.2 38.4h38l4.8 13.2-30 33.2z"], + "fort-awesome": [512, 512, [], "f286", "M489.2 287.9h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6V146.2c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6v-32c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6v-32c0-6-8-4.6-11.7-4.6v-38c8.3-2 17.1-3.4 25.7-3.4 10.9 0 20.9 4.3 31.4 4.3 4.6 0 27.7-1.1 27.7-8v-60c0-2.6-2-4.6-4.6-4.6-5.1 0-15.1 4.3-24 4.3-9.7 0-20.9-4.3-32.6-4.3-8 0-16 1.1-23.7 2.9v-4.9c5.4-2.6 9.1-8.3 9.1-14.3 0-20.7-31.4-20.8-31.4 0 0 6 3.7 11.7 9.1 14.3v111.7c-3.7 0-11.7-1.4-11.7 4.6v32h-36.6v-32c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32H128v-32c0-2.6-2-4.6-4.6-4.6H96c-2.6 0-4.6 2-4.6 4.6v178.3H54.8v-32c0-2.6-2-4.6-4.6-4.6H22.8c-2.6 0-4.6 2-4.6 4.6V512h182.9v-96c0-72.6 109.7-72.6 109.7 0v96h182.9V292.5c.1-2.6-1.9-4.6-4.5-4.6zm-288.1-4.5c0 2.6-2 4.6-4.6 4.6h-27.4c-2.6 0-4.6-2-4.6-4.6v-64c0-2.6 2-4.6 4.6-4.6h27.4c2.6 0 4.6 2 4.6 4.6v64zm146.4 0c0 2.6-2 4.6-4.6 4.6h-27.4c-2.6 0-4.6-2-4.6-4.6v-64c0-2.6 2-4.6 4.6-4.6h27.4c2.6 0 4.6 2 4.6 4.6v64z"], + "fort-awesome-alt": [512, 512, [], "f3a3", "M208 237.4h-22.2c-2.1 0-3.7 1.6-3.7 3.7v51.7c0 2.1 1.6 3.7 3.7 3.7H208c2.1 0 3.7-1.6 3.7-3.7v-51.7c0-2.1-1.6-3.7-3.7-3.7zm118.2 0H304c-2.1 0-3.7 1.6-3.7 3.7v51.7c0 2.1 1.6 3.7 3.7 3.7h22.2c2.1 0 3.7-1.6 3.7-3.7v-51.7c-.1-2.1-1.7-3.7-3.7-3.7zm132-125.1c-2.3-3.2-4.6-6.4-7.1-9.5-9.8-12.5-20.8-24-32.8-34.4-4.5-3.9-9.1-7.6-13.9-11.2-1.6-1.2-3.2-2.3-4.8-3.5C372 34.1 340.3 20 306 13c-16.2-3.3-32.9-5-50-5s-33.9 1.7-50 5c-34.3 7.1-66 21.2-93.3 40.8-1.6 1.1-3.2 2.3-4.8 3.5-4.8 3.6-9.4 7.3-13.9 11.2-3 2.6-5.9 5.3-8.8 8s-5.7 5.5-8.4 8.4c-5.5 5.7-10.7 11.8-15.6 18-2.4 3.1-4.8 6.3-7.1 9.5C25.2 153 8.3 202.5 8.3 256c0 2 .1 4 .1 6 .1.7.1 1.3.1 2 .1 1.3.1 2.7.2 4 0 .8.1 1.5.1 2.3 0 1.3.1 2.5.2 3.7.1.8.1 1.6.2 2.4.1 1.1.2 2.3.3 3.5 0 .8.1 1.6.2 2.4.1 1.2.3 2.4.4 3.6.1.8.2 1.5.3 2.3.1 1.3.3 2.6.5 3.9.1.6.2 1.3.3 1.9l.9 5.7c.1.6.2 1.1.3 1.7.3 1.3.5 2.7.8 4 .2.8.3 1.6.5 2.4.2 1 .5 2.1.7 3.2.2.9.4 1.7.6 2.6.2 1 .4 2 .7 3 .2.9.5 1.8.7 2.7.3 1 .5 1.9.8 2.9.3.9.5 1.8.8 2.7.2.9.5 1.9.8 2.8s.5 1.8.8 2.7c.3 1 .6 1.9.9 2.8.6 1.6 1.1 3.3 1.7 4.9.4 1 .7 1.9 1 2.8.3 1 .7 2 1.1 3 .3.8.6 1.5.9 2.3l1.2 3c.3.7.6 1.5.9 2.2.4 1 .9 2 1.3 3l.9 2.1c.5 1 .9 2 1.4 3 .3.7.6 1.3.9 2 .5 1 1 2.1 1.5 3.1.2.6.5 1.1.8 1.7.6 1.1 1.1 2.2 1.7 3.3.1.2.2.3.3.5 2.2 4.1 4.4 8.2 6.8 12.2.2.4.5.8.7 1.2.7 1.1 1.3 2.2 2 3.3.3.5.6.9.9 1.4.6 1.1 1.3 2.1 2 3.2.3.5.6.9.9 1.4.7 1.1 1.4 2.1 2.1 3.2.2.4.5.8.8 1.2.7 1.1 1.5 2.2 2.3 3.3.2.2.3.5.5.7 37.5 51.7 94.4 88.5 160 99.4.9.1 1.7.3 2.6.4 1 .2 2.1.4 3.1.5s1.9.3 2.8.4c1 .2 2 .3 3 .4.9.1 1.9.2 2.9.3s1.9.2 2.9.3 2.1.2 3.1.3c.9.1 1.8.1 2.7.2 1.1.1 2.3.1 3.4.2.8 0 1.7.1 2.5.1 1.3 0 2.6.1 3.9.1.7.1 1.4.1 2.1.1 2 .1 4 .1 6 .1s4-.1 6-.1c.7 0 1.4-.1 2.1-.1 1.3 0 2.6 0 3.9-.1.8 0 1.7-.1 2.5-.1 1.1-.1 2.3-.1 3.4-.2.9 0 1.8-.1 2.7-.2 1-.1 2.1-.2 3.1-.3s1.9-.2 2.9-.3c.9-.1 1.9-.2 2.9-.3s2-.3 3-.4 1.9-.3 2.8-.4c1-.2 2.1-.3 3.1-.5.9-.1 1.7-.3 2.6-.4 65.6-11 122.5-47.7 160.1-102.4.2-.2.3-.5.5-.7.8-1.1 1.5-2.2 2.3-3.3.2-.4.5-.8.8-1.2.7-1.1 1.4-2.1 2.1-3.2.3-.5.6-.9.9-1.4.6-1.1 1.3-2.1 2-3.2.3-.5.6-.9.9-1.4.7-1.1 1.3-2.2 2-3.3.2-.4.5-.8.7-1.2 2.4-4 4.6-8.1 6.8-12.2.1-.2.2-.3.3-.5.6-1.1 1.1-2.2 1.7-3.3.2-.6.5-1.1.8-1.7.5-1 1-2.1 1.5-3.1.3-.7.6-1.3.9-2 .5-1 1-2 1.4-3l.9-2.1c.5-1 .9-2 1.3-3 .3-.7.6-1.5.9-2.2l1.2-3c.3-.8.6-1.5.9-2.3.4-1 .7-2 1.1-3s.7-1.9 1-2.8c.6-1.6 1.2-3.3 1.7-4.9.3-1 .6-1.9.9-2.8s.5-1.8.8-2.7c.2-.9.5-1.9.8-2.8s.6-1.8.8-2.7c.3-1 .5-1.9.8-2.9.2-.9.5-1.8.7-2.7.2-1 .5-2 .7-3 .2-.9.4-1.7.6-2.6.2-1 .5-2.1.7-3.2.2-.8.3-1.6.5-2.4.3-1.3.6-2.7.8-4 .1-.6.2-1.1.3-1.7l.9-5.7c.1-.6.2-1.3.3-1.9.1-1.3.3-2.6.5-3.9.1-.8.2-1.5.3-2.3.1-1.2.3-2.4.4-3.6 0-.8.1-1.6.2-2.4.1-1.1.2-2.3.3-3.5.1-.8.1-1.6.2-2.4.1 1.7.1.5.2-.7 0-.8.1-1.5.1-2.3.1-1.3.2-2.7.2-4 .1-.7.1-1.3.1-2 .1-2 .1-4 .1-6 0-53.5-16.9-103-45.8-143.7zM448 371.5c-9.4 15.5-20.6 29.9-33.6 42.9-20.6 20.6-44.5 36.7-71.2 48-13.9 5.8-28.2 10.3-42.9 13.2v-75.8c0-58.6-88.6-58.6-88.6 0v75.8c-14.7-2.9-29-7.3-42.9-13.2-26.7-11.3-50.6-27.4-71.2-48-13-13-24.2-27.4-33.6-42.9v-71.3c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7V326h29.6V182c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7H208c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-4.8 6.5-3.7 9.5-3.7V88.1c-4.4-2-7.4-6.7-7.4-11.5 0-16.8 25.4-16.8 25.4 0 0 4.8-3 9.4-7.4 11.5V92c6.3-1.4 12.7-2.3 19.2-2.3 9.4 0 18.4 3.5 26.3 3.5 7.2 0 15.2-3.5 19.4-3.5 2.1 0 3.7 1.6 3.7 3.7v48.4c0 5.6-18.7 6.5-22.4 6.5-8.6 0-16.6-3.5-25.4-3.5-7 0-14.1 1.2-20.8 2.8v30.7c3 0 9.5-1.1 9.5 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7h22.2c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7v144h29.5v-25.8c0-2.1 1.6-3.7 3.7-3.7h22.2c2.1 0 3.7 1.6 3.7 3.7z"], + "forumbee": [448, 512, [], "f211", "M5.8 309.7C2 292.7 0 275.5 0 258.3 0 135 99.8 35 223.1 35c16.6 0 33.3 2 49.3 5.5C149 87.5 51.9 186 5.8 309.7zm392.9-189.2C385 103 369 87.8 350.9 75.2c-149.6 44.3-266.3 162.1-309.7 312 12.5 18.1 28 35.6 45.2 49 43.1-151.3 161.2-271.7 312.3-315.7zm15.8 252.7c15.2-25.1 25.4-53.7 29.5-82.8-79.4 42.9-145 110.6-187.6 190.3 30-4.4 58.9-15.3 84.6-31.3 35 13.1 70.9 24.3 107 33.6-9.3-36.5-20.4-74.5-33.5-109.8zm29.7-145.5c-2.6-19.5-7.9-38.7-15.8-56.8C290.5 216.7 182 327.5 137.1 466c18.1 7.6 37 12.5 56.6 15.2C240 367.1 330.5 274.4 444.2 227.7z"], + "foursquare": [368, 512, [], "f180", "M323.1 3H49.9C12.4 3 0 31.3 0 49.1v433.8c0 20.3 12.1 27.7 18.2 30.1 6.2 2.5 22.8 4.6 32.9-7.1C180 356.5 182.2 354 182.2 354c3.1-3.4 3.4-3.1 6.8-3.1h83.4c35.1 0 40.6-25.2 44.3-39.7l48.6-243C373.8 25.8 363.1 3 323.1 3zm-16.3 73.8l-11.4 59.7c-1.2 6.5-9.5 13.2-16.9 13.2H172.1c-12 0-20.6 8.3-20.6 20.3v13c0 12 8.6 20.6 20.6 20.6h90.4c8.3 0 16.6 9.2 14.8 18.2-1.8 8.9-10.5 53.8-11.4 58.8-.9 4.9-6.8 13.5-16.9 13.5h-73.5c-13.5 0-17.2 1.8-26.5 12.6 0 0-8.9 11.4-89.5 108.3-.9.9-1.8.6-1.8-.3V75.9c0-7.7 6.8-16.6 16.6-16.6h219c8.2 0 15.6 7.7 13.5 17.5z"], + "free-code-camp": [576, 512, [], "f2c5", "M97.22,96.21c10.36-10.65,16-17.12,16-21.9,0-2.76-1.92-5.51-3.83-7.42A14.81,14.81,0,0,0,101,64.05c-8.48,0-20.92,8.79-35.84,25.69C23.68,137,2.51,182.81,3.37,250.34s17.47,117,54.06,161.87C76.22,435.86,90.62,448,100.9,448a13.55,13.55,0,0,0,8.37-3.84c1.91-2.76,3.81-5.63,3.81-8.38,0-5.63-3.86-12.2-13.2-20.55-44.45-42.33-67.32-97-67.48-165C32.25,188.8,54,137.83,97.22,96.21ZM239.47,420.07c.58.37.91.55.91.55Zm93.79.55.17-.13C333.24,420.62,333.17,420.67,333.26,420.62Zm3.13-158.18c-16.24-4.15,50.41-82.89-68.05-177.17,0,0,15.54,49.38-62.83,159.57-74.27,104.35,23.46,168.73,34,175.23-6.73-4.35-47.4-35.7,9.55-128.64,11-18.3,25.53-34.87,43.5-72.16,0,0,15.91,22.45,7.6,71.13C287.7,364,354,342.91,355,343.94c22.75,26.78-17.72,73.51-21.58,76.55,5.49-3.65,117.71-78,33-188.1C360.43,238.4,352.62,266.59,336.39,262.44ZM510.88,89.69C496,72.79,483.52,64,475,64a14.81,14.81,0,0,0-8.39,2.84c-1.91,1.91-3.83,4.66-3.83,7.42,0,4.78,5.6,11.26,16,21.9,43.23,41.61,65,92.59,64.82,154.06-.16,68-23,122.63-67.48,165-9.34,8.35-13.18,14.92-13.2,20.55,0,2.75,1.9,5.62,3.81,8.38A13.61,13.61,0,0,0,475.1,448c10.28,0,24.68-12.13,43.47-35.79,36.59-44.85,53.14-94.38,54.06-161.87S552.32,137,510.88,89.69Z"], + "freebsd": [448, 512, [], "f3a4", "M303.7 96.2c11.1-11.1 115.5-77 139.2-53.2 23.7 23.7-42.1 128.1-53.2 139.2-11.1 11.1-39.4.9-63.1-22.9-23.8-23.7-34.1-52-22.9-63.1zM109.9 68.1C73.6 47.5 22 24.6 5.6 41.1c-16.6 16.6 7.1 69.4 27.9 105.7 18.5-32.2 44.8-59.3 76.4-78.7zM406.7 174c3.3 11.3 2.7 20.7-2.7 26.1-20.3 20.3-87.5-27-109.3-70.1-18-32.3-11.1-53.4 14.9-48.7 5.7-3.6 12.3-7.6 19.6-11.6-29.8-15.5-63.6-24.3-99.5-24.3-119.1 0-215.6 96.5-215.6 215.6 0 119 96.5 215.6 215.6 215.6S445.3 380.1 445.3 261c0-38.4-10.1-74.5-27.7-105.8-3.9 7-7.6 13.3-10.9 18.8z"], + "fulcrum": [320, 512, [], "f50b", "M95.75 164.14l-35.38 43.55L25 164.14l35.38-43.55zM144.23 0l-20.54 198.18L72.72 256l51 57.82L144.23 512V300.89L103.15 256l41.08-44.89zm79.67 164.14l35.38 43.55 35.38-43.55-35.38-43.55zm-48.48 47L216.5 256l-41.08 44.89V512L196 313.82 247 256l-51-57.82L175.42 0z"], + "galactic-republic": [496, 512, [], "f50c", "M248 504C111.25 504 0 392.75 0 256S111.25 8 248 8s248 111.25 248 248-111.25 248-248 248zm0-479.47C120.37 24.53 16.53 128.37 16.53 256S120.37 487.47 248 487.47 479.47 383.63 479.47 256 375.63 24.53 248 24.53zm27.62 21.81v24.62a185.933 185.933 0 0 1 83.57 34.54l17.39-17.36c-28.75-22.06-63.3-36.89-100.96-41.8zm-55.37.07c-37.64 4.94-72.16 19.8-100.88 41.85l17.28 17.36h.08c24.07-17.84 52.55-30.06 83.52-34.67V46.41zm12.25 50.17v82.87c-10.04 2.03-19.42 5.94-27.67 11.42l-58.62-58.59-21.93 21.93 58.67 58.67c-5.47 8.23-9.45 17.59-11.47 27.62h-82.9v31h82.9c2.02 10.02 6.01 19.31 11.47 27.54l-58.67 58.69 21.93 21.93 58.62-58.62a77.873 77.873 0 0 0 27.67 11.47v82.9h31v-82.9c10.05-2.03 19.37-6.06 27.62-11.55l58.67 58.69 21.93-21.93-58.67-58.69c5.46-8.23 9.47-17.52 11.5-27.54h82.87v-31h-82.87c-2.02-10.02-6.03-19.38-11.5-27.62l58.67-58.67-21.93-21.93-58.67 58.67c-8.25-5.49-17.57-9.47-27.62-11.5V96.58h-31zm183.24 30.72l-17.36 17.36a186.337 186.337 0 0 1 34.67 83.67h24.62c-4.95-37.69-19.83-72.29-41.93-101.03zm-335.55.13c-22.06 28.72-36.91 63.26-41.85 100.91h24.65c4.6-30.96 16.76-59.45 34.59-83.52l-17.39-17.39zM38.34 283.67c4.92 37.64 19.75 72.18 41.8 100.9l17.36-17.39c-17.81-24.07-29.92-52.57-34.51-83.52H38.34zm394.7 0c-4.61 30.99-16.8 59.5-34.67 83.6l17.36 17.36c22.08-28.74 36.98-63.29 41.93-100.96h-24.62zM136.66 406.38l-17.36 17.36c28.73 22.09 63.3 36.98 100.96 41.93v-24.64c-30.99-4.63-59.53-16.79-83.6-34.65zm222.53.05c-24.09 17.84-52.58 30.08-83.57 34.67v24.57c37.67-4.92 72.21-19.79 100.96-41.85l-17.31-17.39h-.08z"], + "galactic-senate": [512, 512, [], "f50d", "M249.86 33.48v26.07C236.28 80.17 226 168.14 225.39 274.9c11.74-15.62 19.13-33.33 19.13-48.24v-16.88c-.03-5.32.75-10.53 2.19-15.65.65-2.14 1.39-4.08 2.62-5.82 1.23-1.75 3.43-3.79 6.68-3.79 3.24 0 5.45 2.05 6.68 3.79 1.23 1.75 1.97 3.68 2.62 5.82 1.44 5.12 2.22 10.33 2.19 15.65v16.88c0 14.91 7.39 32.62 19.13 48.24-.63-106.76-10.91-194.73-24.49-215.35V33.48h-12.28zm-26.34 147.77c-9.52 2.15-18.7 5.19-27.46 9.08 8.9 16.12 9.76 32.64 1.71 37.29-8 4.62-21.85-4.23-31.36-19.82-11.58 8.79-21.88 19.32-30.56 31.09 14.73 9.62 22.89 22.92 18.32 30.66-4.54 7.7-20.03 7.14-35.47-.96-5.78 13.25-9.75 27.51-11.65 42.42 9.68.18 18.67 2.38 26.18 6.04 17.78-.3 32.77-1.96 40.49-4.22 5.55-26.35 23.02-48.23 46.32-59.51.73-25.55 1.88-49.67 3.48-72.07zm64.96 0c1.59 22.4 2.75 46.52 3.47 72.07 23.29 11.28 40.77 33.16 46.32 59.51 7.72 2.26 22.71 3.92 40.49 4.22 7.51-3.66 16.5-5.85 26.18-6.04-1.9-14.91-5.86-29.17-11.65-42.42-15.44 8.1-30.93 8.66-35.47.96-4.57-7.74 3.6-21.05 18.32-30.66-8.68-11.77-18.98-22.3-30.56-31.09-9.51 15.59-23.36 24.44-31.36 19.82-8.05-4.65-7.19-21.16 1.71-37.29a147.49 147.49 0 0 0-27.45-9.08zm-32.48 8.6c-3.23 0-5.86 8.81-6.09 19.93h-.05v16.88c0 41.42-49.01 95.04-93.49 95.04-52 0-122.75-1.45-156.37 29.17v2.51c9.42 17.12 20.58 33.17 33.18 47.97C45.7 380.26 84.77 360.4 141.2 360c45.68 1.02 79.03 20.33 90.76 40.87.01.01-.01.04 0 .05 7.67 2.14 15.85 3.23 24.04 3.21 8.19.02 16.37-1.07 24.04-3.21.01-.01-.01-.04 0-.05 11.74-20.54 45.08-39.85 90.76-40.87 56.43.39 95.49 20.26 108.02 41.35 12.6-14.8 23.76-30.86 33.18-47.97v-2.51c-33.61-30.62-104.37-29.17-156.37-29.17-44.48 0-93.49-53.62-93.49-95.04v-16.88h-.05c-.23-11.12-2.86-19.93-6.09-19.93zm0 96.59c22.42 0 40.6 18.18 40.6 40.6s-18.18 40.65-40.6 40.65-40.6-18.23-40.6-40.65c0-22.42 18.18-40.6 40.6-40.6zm0 7.64c-18.19 0-32.96 14.77-32.96 32.96S237.81 360 256 360s32.96-14.77 32.96-32.96-14.77-32.96-32.96-32.96zm0 6.14c14.81 0 26.82 12.01 26.82 26.82s-12.01 26.82-26.82 26.82-26.82-12.01-26.82-26.82 12.01-26.82 26.82-26.82zm-114.8 66.67c-10.19.07-21.6.36-30.5 1.66.43 4.42 1.51 18.63 7.11 29.76 9.11-2.56 18.36-3.9 27.62-3.9 41.28.94 71.48 34.35 78.26 74.47l.11 4.7c10.4 1.91 21.19 2.94 32.21 2.94 11.03 0 21.81-1.02 32.21-2.94l.11-4.7c6.78-40.12 36.98-73.53 78.26-74.47 9.26 0 18.51 1.34 27.62 3.9 5.6-11.13 6.68-25.34 7.11-29.76-8.9-1.3-20.32-1.58-30.5-1.66-18.76.42-35.19 4.17-48.61 9.67-12.54 16.03-29.16 30.03-49.58 33.07-.09.02-.17.04-.27.05-.05.01-.11.04-.16.05-5.24 1.07-10.63 1.6-16.19 1.6-5.55 0-10.95-.53-16.19-1.6-.05-.01-.11-.04-.16-.05-.1-.02-.17-.04-.27-.05-20.42-3.03-37.03-17.04-49.58-33.07-13.42-5.49-29.86-9.25-48.61-9.67z"], + "get-pocket": [448, 512, [], "f265", "M407.6 64h-367C18.5 64 0 82.5 0 104.6v135.2C0 364.5 99.7 464 224.2 464c124 0 223.8-99.5 223.8-224.2V104.6c0-22.4-17.7-40.6-40.4-40.6zm-162 268.5c-12.4 11.8-31.4 11.1-42.4 0C89.5 223.6 88.3 227.4 88.3 209.3c0-16.9 13.8-30.7 30.7-30.7 17 0 16.1 3.8 105.2 89.3 90.6-86.9 88.6-89.3 105.5-89.3 16.9 0 30.7 13.8 30.7 30.7 0 17.8-2.9 15.7-114.8 123.2z"], + "gg": [512, 512, [], "f260", "M179.2 230.4l102.4 102.4-102.4 102.4L0 256 179.2 76.8l44.8 44.8-25.6 25.6-19.2-19.2-128 128 128 128 51.5-51.5-77.1-76.5 25.6-25.6zM332.8 76.8L230.4 179.2l102.4 102.4 25.6-25.6-77.1-76.5 51.5-51.5 128 128-128 128-19.2-19.2-25.6 25.6 44.8 44.8L512 256 332.8 76.8z"], + "gg-circle": [512, 512, [], "f261", "M257 8C120 8 9 119 9 256s111 248 248 248 248-111 248-248S394 8 257 8zm-49.5 374.8L81.8 257.1l125.7-125.7 35.2 35.4-24.2 24.2-11.1-11.1-77.2 77.2 77.2 77.2 26.6-26.6-53.1-52.9 24.4-24.4 77.2 77.2-75 75.2zm99-2.2l-35.2-35.2 24.1-24.4 11.1 11.1 77.2-77.2-77.2-77.2-26.5 26.5 53.1 52.9-24.4 24.4-77.2-77.2 75-75L432.2 255 306.5 380.6z"], + "git": [512, 512, [], "f1d3", "M216.29 158.39H137C97 147.9 6.51 150.63 6.51 233.18c0 30.09 15 51.23 35 61-25.1 23-37 33.85-37 49.21 0 11 4.47 21.14 17.89 26.81C8.13 383.61 0 393.35 0 411.65c0 32.11 28.05 50.82 101.63 50.82 70.75 0 111.79-26.42 111.79-73.18 0-58.66-45.16-56.5-151.63-63l13.43-21.55c27.27 7.58 118.7 10 118.7-67.89 0-18.7-7.73-31.71-15-41.07l37.41-2.84zm-63.42 241.9c0 32.06-104.89 32.1-104.89 2.43 0-8.14 5.27-15 10.57-21.54 77.71 5.3 94.32 3.37 94.32 19.11zm-50.81-134.58c-52.8 0-50.46-71.16 1.2-71.16 49.54 0 50.82 71.16-1.2 71.16zm133.3 100.51v-32.1c26.75-3.66 27.24-2 27.24-11V203.61c0-8.5-2.05-7.38-27.24-16.26l4.47-32.92H324v168.71c0 6.51.4 7.32 6.51 8.14l20.73 2.84v32.1zm52.45-244.31c-23.17 0-36.59-13.43-36.59-36.61s13.42-35.77 36.59-35.77c23.58 0 37 12.62 37 35.77s-13.42 36.61-37 36.61zM512 350.46c-17.49 8.53-43.1 16.26-66.28 16.26-48.38 0-66.67-19.5-66.67-65.46V194.75c0-5.42 1.05-4.06-31.71-4.06V154.5c35.78-4.07 50-22 54.47-66.27h38.63c0 65.83-1.34 61.81 3.26 61.81H501v40.65h-60.56v97.15c0 6.92-4.92 51.41 60.57 26.84z"], + "git-alt": [448, 512, [], "f841", "M439.55 236.05L244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"], + "git-square": [448, 512, [], "f1d2", "M100.59 334.24c48.57 3.31 58.95 2.11 58.95 11.94 0 20-65.55 20.06-65.55 1.52.01-5.09 3.29-9.4 6.6-13.46zm27.95-116.64c-32.29 0-33.75 44.47-.75 44.47 32.51 0 31.71-44.47.75-44.47zM448 80v352a48 48 0 0 1-48 48H48a48 48 0 0 1-48-48V80a48 48 0 0 1 48-48h352a48 48 0 0 1 48 48zm-227 69.31c0 14.49 8.38 22.88 22.86 22.88 14.74 0 23.13-8.39 23.13-22.88S258.62 127 243.88 127c-14.48 0-22.88 7.84-22.88 22.31zM199.18 195h-49.55c-25-6.55-81.56-4.85-81.56 46.75 0 18.8 9.4 32 21.85 38.11C74.23 294.23 66.8 301 66.8 310.6c0 6.87 2.79 13.22 11.18 16.76-8.9 8.4-14 14.48-14 25.92C64 373.35 81.53 385 127.52 385c44.22 0 69.87-16.51 69.87-45.73 0-36.67-28.23-35.32-94.77-39.38l8.38-13.43c17 4.74 74.19 6.23 74.19-42.43 0-11.69-4.83-19.82-9.4-25.67l23.38-1.78zm84.34 109.84l-13-1.78c-3.82-.51-4.07-1-4.07-5.09V192.52h-52.6l-2.79 20.57c15.75 5.55 17 4.86 17 10.17V298c0 5.62-.31 4.58-17 6.87v20.06h72.42zM384 315l-6.87-22.37c-40.93 15.37-37.85-12.41-37.85-16.73v-60.72h37.85v-25.41h-35.82c-2.87 0-2 2.52-2-38.63h-24.18c-2.79 27.7-11.68 38.88-34 41.42v22.62c20.47 0 19.82-.85 19.82 2.54v66.57c0 28.72 11.43 40.91 41.67 40.91 14.45 0 30.45-4.83 41.38-10.2z"], + "github": [496, 512, [], "f09b", "M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"], + "github-alt": [480, 512, [], "f113", "M186.1 328.7c0 20.9-10.9 55.1-36.7 55.1s-36.7-34.2-36.7-55.1 10.9-55.1 36.7-55.1 36.7 34.2 36.7 55.1zM480 278.2c0 31.9-3.2 65.7-17.5 95-37.9 76.6-142.1 74.8-216.7 74.8-75.8 0-186.2 2.7-225.6-74.8-14.6-29-20.2-63.1-20.2-95 0-41.9 13.9-81.5 41.5-113.6-5.2-15.8-7.7-32.4-7.7-48.8 0-21.5 4.9-32.3 14.6-51.8 45.3 0 74.3 9 108.8 36 29-6.9 58.8-10 88.7-10 27 0 54.2 2.9 80.4 9.2 34-26.7 63-35.2 107.8-35.2 9.8 19.5 14.6 30.3 14.6 51.8 0 16.4-2.6 32.7-7.7 48.2 27.5 32.4 39 72.3 39 114.2zm-64.3 50.5c0-43.9-26.7-82.6-73.5-82.6-18.9 0-37 3.4-56 6-14.9 2.3-29.8 3.2-45.1 3.2-15.2 0-30.1-.9-45.1-3.2-18.7-2.6-37-6-56-6-46.8 0-73.5 38.7-73.5 82.6 0 87.8 80.4 101.3 150.4 101.3h48.2c70.3 0 150.6-13.4 150.6-101.3zm-82.6-55.1c-25.8 0-36.7 34.2-36.7 55.1s10.9 55.1 36.7 55.1 36.7-34.2 36.7-55.1-10.9-55.1-36.7-55.1z"], + "github-square": [448, 512, [], "f092", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM277.3 415.7c-8.4 1.5-11.5-3.7-11.5-8 0-5.4.2-33 .2-55.3 0-15.6-5.2-25.5-11.3-30.7 37-4.1 76-9.2 76-73.1 0-18.2-6.5-27.3-17.1-39 1.7-4.3 7.4-22-1.7-45-13.9-4.3-45.7 17.9-45.7 17.9-13.2-3.7-27.5-5.6-41.6-5.6-14.1 0-28.4 1.9-41.6 5.6 0 0-31.8-22.2-45.7-17.9-9.1 22.9-3.5 40.6-1.7 45-10.6 11.7-15.6 20.8-15.6 39 0 63.6 37.3 69 74.3 73.1-4.8 4.3-9.1 11.7-10.6 22.3-9.5 4.3-33.8 11.7-48.3-13.9-9.1-15.8-25.5-17.1-25.5-17.1-16.2-.2-1.1 10.2-1.1 10.2 10.8 5 18.4 24.2 18.4 24.2 9.7 29.7 56.1 19.7 56.1 19.7 0 13.9.2 36.5.2 40.6 0 4.3-3 9.5-11.5 8-66-22.1-112.2-84.9-112.2-158.3 0-91.8 70.2-161.5 162-161.5S388 165.6 388 257.4c.1 73.4-44.7 136.3-110.7 158.3zm-98.1-61.1c-1.9.4-3.7-.4-3.9-1.7-.2-1.5 1.1-2.8 3-3.2 1.9-.2 3.7.6 3.9 1.9.3 1.3-1 2.6-3 3zm-9.5-.9c0 1.3-1.5 2.4-3.5 2.4-2.2.2-3.7-.9-3.7-2.4 0-1.3 1.5-2.4 3.5-2.4 1.9-.2 3.7.9 3.7 2.4zm-13.7-1.1c-.4 1.3-2.4 1.9-4.1 1.3-1.9-.4-3.2-1.9-2.8-3.2.4-1.3 2.4-1.9 4.1-1.5 2 .6 3.3 2.1 2.8 3.4zm-12.3-5.4c-.9 1.1-2.8.9-4.3-.6-1.5-1.3-1.9-3.2-.9-4.1.9-1.1 2.8-.9 4.3.6 1.3 1.3 1.8 3.3.9 4.1zm-9.1-9.1c-.9.6-2.6 0-3.7-1.5s-1.1-3.2 0-3.9c1.1-.9 2.8-.2 3.7 1.3 1.1 1.5 1.1 3.3 0 4.1zm-6.5-9.7c-.9.9-2.4.4-3.5-.6-1.1-1.3-1.3-2.8-.4-3.5.9-.9 2.4-.4 3.5.6 1.1 1.3 1.3 2.8.4 3.5zm-6.7-7.4c-.4.9-1.7 1.1-2.8.4-1.3-.6-1.9-1.7-1.5-2.6.4-.6 1.5-.9 2.8-.4 1.3.7 1.9 1.8 1.5 2.6z"], + "gitkraken": [592, 512, [], "f3a6", "M565.7 118.1c-2.3-6.1-9.3-9.2-15.3-6.6-5.7 2.4-8.5 8.9-6.3 14.6 10.9 29 16.9 60.5 16.9 93.3 0 134.6-100.3 245.7-230.2 262.7V358.4c7.9-1.5 15.5-3.6 23-6.2v104c106.7-25.9 185.9-122.1 185.9-236.8 0-91.8-50.8-171.8-125.8-213.3-5.7-3.2-13-.9-15.9 5-2.7 5.5-.6 12.2 4.7 15.1 67.9 37.6 113.9 110 113.9 193.2 0 93.3-57.9 173.1-139.8 205.4v-92.2c14.2-4.5 24.9-17.7 24.9-33.5 0-13.1-6.8-24.4-17.3-30.5 8.3-79.5 44.5-58.6 44.5-83.9V170c0-38-87.9-161.8-129-164.7-2.5-.2-5-.2-7.6 0C251.1 8.3 163.2 132 163.2 170v14.8c0 25.3 36.3 4.3 44.5 83.9-10.6 6.1-17.3 17.4-17.3 30.5 0 15.8 10.6 29 24.8 33.5v92.2c-81.9-32.2-139.8-112-139.8-205.4 0-83.1 46-155.5 113.9-193.2 5.4-3 7.4-9.6 4.7-15.1-2.9-5.9-10.1-8.2-15.9-5-75 41.5-125.8 121.5-125.8 213.3 0 114.7 79.2 210.8 185.9 236.8v-104c7.6 2.5 15.1 4.6 23 6.2v123.7C131.4 465.2 31 354.1 31 219.5c0-32.8 6-64.3 16.9-93.3 2.2-5.8-.6-12.2-6.3-14.6-6-2.6-13 .4-15.3 6.6C14.5 149.7 8 183.8 8 219.5c0 155.1 122.6 281.6 276.3 287.8V361.4c6.8.4 15 .5 23.4 0v145.8C461.4 501.1 584 374.6 584 219.5c0-35.7-6.5-69.8-18.3-101.4zM365.9 275.5c13 0 23.7 10.5 23.7 23.7 0 13.1-10.6 23.7-23.7 23.7-13 0-23.7-10.5-23.7-23.7 0-13.1 10.6-23.7 23.7-23.7zm-139.8 47.3c-13.2 0-23.7-10.7-23.7-23.7s10.5-23.7 23.7-23.7c13.1 0 23.7 10.6 23.7 23.7 0 13-10.5 23.7-23.7 23.7z"], + "gitlab": [512, 512, [], "f296", "M105.2 24.9c-3.1-8.9-15.7-8.9-18.9 0L29.8 199.7h132c-.1 0-56.6-174.8-56.6-174.8zM.9 287.7c-2.6 8 .3 16.9 7.1 22l247.9 184-226.2-294zm160.8-88l94.3 294 94.3-294zm349.4 88l-28.8-88-226.3 294 247.9-184c6.9-5.1 9.7-14 7.2-22zM425.7 24.9c-3.1-8.9-15.7-8.9-18.9 0l-56.6 174.8h132z"], + "gitter": [384, 512, [], "f426", "M66.4 322.5H16V0h50.4v322.5zM166.9 76.1h-50.4V512h50.4V76.1zm100.6 0h-50.4V512h50.4V76.1zM368 76h-50.4v247H368V76z"], + "glide": [448, 512, [], "f2a5", "M252.8 148.6c0 8.8-1.6 17.7-3.4 26.4-5.8 27.8-11.6 55.8-17.3 83.6-1.4 6.3-8.3 4.9-13.7 4.9-23.8 0-30.5-26-30.5-45.5 0-29.3 11.2-68.1 38.5-83.1 4.3-2.5 9.2-4.2 14.1-4.2 11.4 0 12.3 8.3 12.3 17.9zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-64 187c0-5.1-20.8-37.7-25.5-39.5-2.2-.9-7.2-2.3-9.6-2.3-23.1 0-38.7 10.5-58.2 21.5l-.5-.5c4.3-29.4 14.6-57.2 14.6-87.4 0-44.6-23.8-62.7-67.5-62.7-71.7 0-108 70.8-108 123.5 0 54.7 32 85 86.3 85 7.5 0 6.9-.6 6.9 2.3-10.5 80.3-56.5 82.9-56.5 58.9 0-24.4 28-36.5 28.3-38-.2-7.6-29.3-17.2-36.7-17.2-21.1 0-32.7 33-32.7 50.6 0 32.3 20.4 54.7 53.3 54.7 48.2 0 83.4-49.7 94.3-91.7 9.4-37.7 7-39.4 12.3-42.1 20-10.1 35.8-16.8 58.4-16.8 11.1 0 19 2.3 36.7 5.2 1.8.1 4.1-1.7 4.1-3.5z"], + "glide-g": [448, 512, [], "f2a6", "M407.1 211.2c-3.5-1.4-11.6-3.8-15.4-3.8-37.1 0-62.2 16.8-93.5 34.5l-.9-.9c7-47.3 23.5-91.9 23.5-140.4C320.8 29.1 282.6 0 212.4 0 97.3 0 39 113.7 39 198.4 39 286.3 90.3 335 177.6 335c12 0 11-1 11 3.8-16.9 128.9-90.8 133.1-90.8 94.6 0-39.2 45-58.6 45.5-61-.3-12.2-47-27.6-58.9-27.6-33.9.1-52.4 51.2-52.4 79.3C32 476 64.8 512 117.5 512c77.4 0 134-77.8 151.4-145.4 15.1-60.5 11.2-63.3 19.7-67.6 32.2-16.2 57.5-27 93.8-27 17.8 0 30.5 3.7 58.9 8.4 2.9 0 6.7-2.9 6.7-5.8 0-8-33.4-60.5-40.9-63.4zm-175.3-84.4c-9.3 44.7-18.6 89.6-27.8 134.3-2.3 10.2-13.3 7.8-22 7.8-38.3 0-49-41.8-49-73.1 0-47 18-109.3 61.8-133.4 7-4.1 14.8-6.7 22.6-6.7 18.6 0 20 13.3 20 28.7-.1 14.3-2.7 28.5-5.6 42.4z"], + "gofore": [400, 512, [], "f3a7", "M324 319.8h-13.2v34.7c-24.5 23.1-56.3 35.8-89.9 35.8-73.2 0-132.4-60.2-132.4-134.4 0-74.1 59.2-134.4 132.4-134.4 35.3 0 68.6 14 93.6 39.4l62.3-63.3C335 55.3 279.7 32 220.7 32 98 32 0 132.6 0 256c0 122.5 97 224 220.7 224 63.2 0 124.5-26.2 171-82.5-2-27.6-13.4-77.7-67.7-77.7zm-12.1-112.5H205.6v89H324c33.5 0 60.5 15.1 76 41.8v-30.6c0-65.2-40.4-100.2-88.1-100.2z"], + "goodreads": [448, 512, [], "f3a8", "M299.9 191.2c5.1 37.3-4.7 79-35.9 100.7-22.3 15.5-52.8 14.1-70.8 5.7-37.1-17.3-49.5-58.6-46.8-97.2 4.3-60.9 40.9-87.9 75.3-87.5 46.9-.2 71.8 31.8 78.2 78.3zM448 88v336c0 30.9-25.1 56-56 56H56c-30.9 0-56-25.1-56-56V88c0-30.9 25.1-56 56-56h336c30.9 0 56 25.1 56 56zM330 313.2s-.1-34-.1-217.3h-29v40.3c-.8.3-1.2-.5-1.6-1.2-9.6-20.7-35.9-46.3-76-46-51.9.4-87.2 31.2-100.6 77.8-4.3 14.9-5.8 30.1-5.5 45.6 1.7 77.9 45.1 117.8 112.4 115.2 28.9-1.1 54.5-17 69-45.2.5-1 1.1-1.9 1.7-2.9.2.1.4.1.6.2.3 3.8.2 30.7.1 34.5-.2 14.8-2 29.5-7.2 43.5-7.8 21-22.3 34.7-44.5 39.5-17.8 3.9-35.6 3.8-53.2-1.2-21.5-6.1-36.5-19-41.1-41.8-.3-1.6-1.3-1.3-2.3-1.3h-26.8c.8 10.6 3.2 20.3 8.5 29.2 24.2 40.5 82.7 48.5 128.2 37.4 49.9-12.3 67.3-54.9 67.4-106.3z"], + "goodreads-g": [384, 512, [], "f3a9", "M42.6 403.3h2.8c12.7 0 25.5 0 38.2.1 1.6 0 3.1-.4 3.6 2.1 7.1 34.9 30 54.6 62.9 63.9 26.9 7.6 54.1 7.8 81.3 1.8 33.8-7.4 56-28.3 68-60.4 8-21.5 10.7-43.8 11-66.5.1-5.8.3-47-.2-52.8l-.9-.3c-.8 1.5-1.7 2.9-2.5 4.4-22.1 43.1-61.3 67.4-105.4 69.1-103 4-169.4-57-172-176.2-.5-23.7 1.8-46.9 8.3-69.7C58.3 47.7 112.3.6 191.6 0c61.3-.4 101.5 38.7 116.2 70.3.5 1.1 1.3 2.3 2.4 1.9V10.6h44.3c0 280.3.1 332.2.1 332.2-.1 78.5-26.7 143.7-103 162.2-69.5 16.9-159 4.8-196-57.2-8-13.5-11.8-28.3-13-44.5zM188.9 36.5c-52.5-.5-108.5 40.7-115 133.8-4.1 59 14.8 122.2 71.5 148.6 27.6 12.9 74.3 15 108.3-8.7 47.6-33.2 62.7-97 54.8-154-9.7-71.1-47.8-120-119.6-119.7z"], + "google": [488, 512, [], "f1a0", "M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z"], + "google-drive": [512, 512, [], "f3aa", "M339 314.9L175.4 32h161.2l163.6 282.9H339zm-137.5 23.6L120.9 480h310.5L512 338.5H201.5zM154.1 67.4L0 338.5 80.6 480 237 208.8 154.1 67.4z"], + "google-pay": [640, 512, [], "e079", "M105.72,215v41.25h57.1a49.66,49.66,0,0,1-21.14,32.6c-9.54,6.55-21.72,10.28-36,10.28-27.6,0-50.93-18.91-59.3-44.22a65.61,65.61,0,0,1,0-41l0,0c8.37-25.46,31.7-44.37,59.3-44.37a56.43,56.43,0,0,1,40.51,16.08L176.47,155a101.24,101.24,0,0,0-70.75-27.84,105.55,105.55,0,0,0-94.38,59.11,107.64,107.64,0,0,0,0,96.18v.15a105.41,105.41,0,0,0,94.38,59c28.47,0,52.55-9.53,70-25.91,20-18.61,31.41-46.15,31.41-78.91A133.76,133.76,0,0,0,205.38,215Zm389.41-4c-10.13-9.38-23.93-14.14-41.39-14.14-22.46,0-39.34,8.34-50.5,24.86l20.85,13.26q11.45-17,31.26-17a34.05,34.05,0,0,1,22.75,8.79A28.14,28.14,0,0,1,487.79,248v5.51c-9.1-5.07-20.55-7.75-34.64-7.75-16.44,0-29.65,3.88-39.49,11.77s-14.82,18.31-14.82,31.56a39.74,39.74,0,0,0,13.94,31.27c9.25,8.34,21,12.51,34.79,12.51,16.29,0,29.21-7.3,39-21.89h1v17.72h22.61V250C510.25,233.45,505.26,220.34,495.13,211ZM475.9,300.3a37.32,37.32,0,0,1-26.57,11.16A28.61,28.61,0,0,1,431,305.21a19.41,19.41,0,0,1-7.77-15.63c0-7,3.22-12.81,9.54-17.42s14.53-7,24.07-7C470,265,480.3,268,487.64,273.94,487.64,284.07,483.68,292.85,475.9,300.3Zm-93.65-142A55.71,55.71,0,0,0,341.74,142H279.07V328.74H302.7V253.1h39c16,0,29.5-5.36,40.51-15.93.88-.89,1.76-1.79,2.65-2.68A54.45,54.45,0,0,0,382.25,158.26Zm-16.58,62.23a30.65,30.65,0,0,1-23.34,9.68H302.7V165h39.63a32,32,0,0,1,22.6,9.23A33.18,33.18,0,0,1,365.67,220.49ZM614.31,201,577.77,292.7h-.45L539.9,201H514.21L566,320.55l-29.35,64.32H561L640,201Z"], + "google-play": [512, 512, [], "f3ab", "M325.3 234.3L104.6 13l280.8 161.2-60.1 60.1zM47 0C34 6.8 25.3 19.2 25.3 35.3v441.3c0 16.1 8.7 28.5 21.7 35.3l256.6-256L47 0zm425.2 225.6l-58.9-34.1-65.7 64.5 65.7 64.5 60.1-34.1c18-14.3 18-46.5-1.2-60.8zM104.6 499l280.8-161.2-60.1-60.1L104.6 499z"], + "google-plus": [512, 512, [], "f2b3", "M256,8C119.1,8,8,119.1,8,256S119.1,504,256,504,504,392.9,504,256,392.9,8,256,8ZM185.3,380a124,124,0,0,1,0-248c31.3,0,60.1,11,83,32.3l-33.6,32.6c-13.2-12.9-31.3-19.1-49.4-19.1-42.9,0-77.2,35.5-77.2,78.1S142.3,334,185.3,334c32.6,0,64.9-19.1,70.1-53.3H185.3V238.1H302.2a109.2,109.2,0,0,1,1.9,20.7c0,70.8-47.5,121.2-118.8,121.2ZM415.5,273.8v35.5H380V273.8H344.5V238.3H380V202.8h35.5v35.5h35.2v35.5Z"], + "google-plus-g": [640, 512, [], "f0d5", "M386.061 228.496c1.834 9.692 3.143 19.384 3.143 31.956C389.204 370.205 315.599 448 204.8 448c-106.084 0-192-85.915-192-192s85.916-192 192-192c51.864 0 95.083 18.859 128.611 50.292l-52.126 50.03c-14.145-13.621-39.028-29.599-76.485-29.599-65.484 0-118.92 54.221-118.92 121.277 0 67.056 53.436 121.277 118.92 121.277 75.961 0 104.513-54.745 108.965-82.773H204.8v-66.009h181.261zm185.406 6.437V179.2h-56.001v55.733h-55.733v56.001h55.733v55.733h56.001v-55.733H627.2v-56.001h-55.733z"], + "google-plus-square": [448, 512, [], "f0d4", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM164 356c-55.3 0-100-44.7-100-100s44.7-100 100-100c27 0 49.5 9.8 67 26.2l-27.1 26.1c-7.4-7.1-20.3-15.4-39.8-15.4-34.1 0-61.9 28.2-61.9 63.2 0 34.9 27.8 63.2 61.9 63.2 39.6 0 54.4-28.5 56.8-43.1H164v-34.4h94.4c1 5 1.6 10.1 1.6 16.6 0 57.1-38.3 97.6-96 97.6zm220-81.8h-29v29h-29.2v-29h-29V245h29v-29H355v29h29v29.2z"], + "google-wallet": [448, 512, [], "f1ee", "M156.8 126.8c37.6 60.6 64.2 113.1 84.3 162.5-8.3 33.8-18.8 66.5-31.3 98.3-13.2-52.3-26.5-101.3-56-148.5 6.5-36.4 2.3-73.6 3-112.3zM109.3 200H16.1c-6.5 0-10.5 7.5-6.5 12.7C51.8 267 81.3 330.5 101.3 400h103.5c-16.2-69.7-38.7-133.7-82.5-193.5-3-4-8-6.5-13-6.5zm47.8-88c68.5 108 130 234.5 138.2 368H409c-12-138-68.4-265-143.2-368H157.1zm251.8-68.5c-1.8-6.8-8.2-11.5-15.2-11.5h-88.3c-5.3 0-9 5-7.8 10.3 13.2 46.5 22.3 95.5 26.5 146 48.2 86.2 79.7 178.3 90.6 270.8 15.8-60.5 25.3-133.5 25.3-203 0-73.6-12.1-145.1-31.1-212.6z"], + "gratipay": [496, 512, [], "f184", "M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm114.6 226.4l-113 152.7-112.7-152.7c-8.7-11.9-19.1-50.4 13.6-72 28.1-18.1 54.6-4.2 68.5 11.9 15.9 17.9 46.6 16.9 61.7 0 13.9-16.1 40.4-30 68.1-11.9 32.9 21.6 22.6 60 13.8 72z"], + "grav": [512, 512, [], "f2d6", "M301.1 212c4.4 4.4 4.4 11.9 0 16.3l-9.7 9.7c-4.4 4.7-11.9 4.7-16.6 0l-10.5-10.5c-4.4-4.7-4.4-11.9 0-16.6l9.7-9.7c4.4-4.4 11.9-4.4 16.6 0l10.5 10.8zm-30.2-19.7c3-3 3-7.8 0-10.5-2.8-3-7.5-3-10.5 0-2.8 2.8-2.8 7.5 0 10.5 3.1 2.8 7.8 2.8 10.5 0zm-26 5.3c-3 2.8-3 7.5 0 10.2 2.8 3 7.5 3 10.5 0 2.8-2.8 2.8-7.5 0-10.2-3-3-7.7-3-10.5 0zm72.5-13.3c-19.9-14.4-33.8-43.2-11.9-68.1 21.6-24.9 40.7-17.2 59.8.8 11.9 11.3 29.3 24.9 17.2 48.2-12.5 23.5-45.1 33.2-65.1 19.1zm47.7-44.5c-8.9-10-23.3 6.9-15.5 16.1 7.4 9 32.1 2.4 15.5-16.1zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-66.2 42.6c2.5-16.1-20.2-16.6-25.2-25.7-13.6-24.1-27.7-36.8-54.5-30.4 11.6-8 23.5-6.1 23.5-6.1.3-6.4 0-13-9.4-24.9 3.9-12.5.3-22.4.3-22.4 15.5-8.6 26.8-24.4 29.1-43.2 3.6-31-18.8-59.2-49.8-62.8-22.1-2.5-43.7 7.7-54.3 25.7-23.2 40.1 1.4 70.9 22.4 81.4-14.4-1.4-34.3-11.9-40.1-34.3-6.6-25.7 2.8-49.8 8.9-61.4 0 0-4.4-5.8-8-8.9 0 0-13.8 0-24.6 5.3 11.9-15.2 25.2-14.4 25.2-14.4 0-6.4-.6-14.9-3.6-21.6-5.4-11-23.8-12.9-31.7 2.8.1-.2.3-.4.4-.5-5 11.9-1.1 55.9 16.9 87.2-2.5 1.4-9.1 6.1-13 10-21.6 9.7-56.2 60.3-56.2 60.3-28.2 10.8-77.2 50.9-70.6 79.7.3 3 1.4 5.5 3 7.5-2.8 2.2-5.5 5-8.3 8.3-11.9 13.8-5.3 35.2 17.7 24.4 15.8-7.2 29.6-20.2 36.3-30.4 0 0-5.5-5-16.3-4.4 27.7-6.6 34.3-9.4 46.2-9.1 8 3.9 8-34.3 8-34.3 0-14.7-2.2-31-11.1-41.5 12.5 12.2 29.1 32.7 28 60.6-.8 18.3-15.2 23-15.2 23-9.1 16.6-43.2 65.9-30.4 106 0 0-9.7-14.9-10.2-22.1-17.4 19.4-46.5 52.3-24.6 64.5 26.6 14.7 108.8-88.6 126.2-142.3 34.6-20.8 55.4-47.3 63.9-65 22 43.5 95.3 94.5 101.1 59z"], + "gripfire": [384, 512, [], "f3ac", "M112.5 301.4c0-73.8 105.1-122.5 105.1-203 0-47.1-34-88-39.1-90.4.4 3.3.6 6.7.6 10C179.1 110.1 32 171.9 32 286.6c0 49.8 32.2 79.2 66.5 108.3 65.1 46.7 78.1 71.4 78.1 86.6 0 10.1-4.8 17-4.8 22.3 13.1-16.7 17.4-31.9 17.5-46.4 0-29.6-21.7-56.3-44.2-86.5-16-22.3-32.6-42.6-32.6-69.5zm205.3-39c-12.1-66.8-78-124.4-94.7-130.9l4 7.2c2.4 5.1 3.4 10.9 3.4 17.1 0 44.7-54.2 111.2-56.6 116.7-2.2 5.1-3.2 10.5-3.2 15.8 0 20.1 15.2 42.1 17.9 42.1 2.4 0 56.6-55.4 58.1-87.7 6.4 11.7 9.1 22.6 9.1 33.4 0 41.2-41.8 96.9-41.8 96.9 0 11.6 31.9 53.2 35.5 53.2 1 0 2.2-1.4 3.2-2.4 37.9-39.3 67.3-85 67.3-136.8 0-8-.7-16.2-2.2-24.6z"], + "grunt": [384, 512, [], "f3ad", "M61.3 189.3c-1.1 10 5.2 19.1 5.2 19.1.7-7.5 2.2-12.8 4-16.6.4 10.3 3.2 23.5 12.8 34.1 6.9 7.6 35.6 23.3 54.9 6.1 1 2.4 2.1 5.3 3 8.5 2.9 10.3-2.7 25.3-2.7 25.3s15.1-17.1 13.9-32.5c10.8-.5 21.4-8.4 21.1-19.5 0 0-18.9 10.4-35.5-8.8-9.7-11.2-40.9-42-83.1-31.8 4.3 1 8.9 2.4 13.5 4.1h-.1c-4.2 2-6.5 7.1-7 12zm28.3-1.8c19.5 11 37.4 25.7 44.9 37-5.7 3.3-21.7 10.4-38-1.7-10.3-7.6-9.8-26.2-6.9-35.3zm142.1 45.8c-1.2 15.5 13.9 32.5 13.9 32.5s-5.6-15-2.7-25.3c.9-3.2 2-6 3-8.5 19.3 17.3 48 1.5 54.8-6.1 9.6-10.6 12.3-23.8 12.8-34.1 1.8 3.8 3.4 9.1 4 16.6 0 0 6.4-9.1 5.2-19.1-.6-5-2.9-10-7-11.8h-.1c4.6-1.8 9.2-3.2 13.5-4.1-42.3-10.2-73.4 20.6-83.1 31.8-16.7 19.2-35.5 8.8-35.5 8.8-.2 10.9 10.4 18.9 21.2 19.3zm62.7-45.8c3 9.1 3.4 27.7-7 35.4-16.3 12.1-32.2 5-37.9 1.6 7.5-11.4 25.4-26 44.9-37zM160 418.5h-29.4c-5.5 0-8.2 1.6-9.5 2.9-1.9 2-2.2 4.7-.9 8.1 3.5 9.1 11.4 16.5 13.7 18.6 3.1 2.7 7.5 4.3 11.8 4.3 4.4 0 8.3-1.7 11-4.6 7.5-8.2 11.9-17.1 13-19.8.6-1.5 1.3-4.5-.9-6.8-1.8-1.8-4.7-2.7-8.8-2.7zm189.2-101.2c-2.4 17.9-13 33.8-24.6 43.7-3.1-22.7-3.7-55.5-3.7-62.4 0-14.7 9.5-24.5 12.2-26.1 2.5-1.5 5.4-3 8.3-4.6 18-9.6 40.4-21.6 40.4-43.7 0-16.2-9.3-23.2-15.4-27.8-.8-.6-1.5-1.1-2.2-1.7-2.1-1.7-3.7-3-4.3-4.4-4.4-9.8-3.6-34.2-1.7-37.6.6-.6 16.7-20.9 11.8-39.2-2-7.4-6.9-13.3-14.1-17-5.3-2.7-11.9-4.2-19.5-4.5-.1-2-.5-3.9-.9-5.9-.6-2.6-1.1-5.3-.9-8.1.4-4.7.8-9 2.2-11.3 8.4-13.3 28.8-17.6 29-17.6l12.3-2.4-8.1-9.5c-.1-.2-17.3-17.5-46.3-17.5-7.9 0-16 1.3-24.1 3.9-24.2 7.8-42.9 30.5-49.4 39.3-3.1-1-6.3-1.9-9.6-2.7-4.2-15.8 9-38.5 9-38.5s-13.6-3-33.7 15.2c-2.6-6.5-8.1-20.5-1.8-37.2C184.6 10.1 177.2 26 175 40.4c-7.6-5.4-6.7-23.1-7.2-27.6-7.5.9-29.2 21.9-28.2 48.3-2 .5-3.9 1.1-5.9 1.7-6.5-8.8-25.1-31.5-49.4-39.3-7.9-2.2-16-3.5-23.9-3.5-29 0-46.1 17.3-46.3 17.5L6 46.9l12.3 2.4c.2 0 20.6 4.3 29 17.6 1.4 2.2 1.8 6.6 2.2 11.3.2 2.8-.4 5.5-.9 8.1-.4 1.9-.8 3.9-.9 5.9-7.7.3-14.2 1.8-19.5 4.5-7.2 3.7-12.1 9.6-14.1 17-5 18.2 11.2 38.5 11.8 39.2 1.9 3.4 2.7 27.8-1.7 37.6-.6 1.4-2.2 2.7-4.3 4.4-.7.5-1.4 1.1-2.2 1.7-6.1 4.6-15.4 11.7-15.4 27.8 0 22.1 22.4 34.1 40.4 43.7 3 1.6 5.8 3.1 8.3 4.6 2.7 1.6 12.2 11.4 12.2 26.1 0 6.9-.6 39.7-3.7 62.4-11.6-9.9-22.2-25.9-24.6-43.8 0 0-29.2 22.6-20.6 70.8 5.2 29.5 23.2 46.1 47 54.7 8.8 19.1 29.4 45.7 67.3 49.6C143 504.3 163 512 192.2 512h.2c29.1 0 49.1-7.7 63.6-19.5 37.9-3.9 58.5-30.5 67.3-49.6 23.8-8.7 41.7-25.2 47-54.7 8.2-48.4-21.1-70.9-21.1-70.9zM305.7 37.7c5.6-1.8 11.6-2.7 17.7-2.7 11 0 19.9 3 24.7 5-3.1 1.4-6.4 3.2-9.7 5.3-2.4-.4-5.6-.8-9.2-.8-10.5 0-20.5 3.1-28.7 8.9-12.3 8.7-18 16.9-20.7 22.4-2.2-1.3-4.5-2.5-7.1-3.7-1.6-.8-3.1-1.5-4.7-2.2 6.1-9.1 19.9-26.5 37.7-32.2zm21 18.2c-.8 1-1.6 2.1-2.3 3.2-3.3 5.2-3.9 11.6-4.4 17.8-.5 6.4-1.1 12.5-4.4 17-4.2.8-8.1 1.7-11.5 2.7-2.3-3.1-5.6-7-10.5-11.2 1.4-4.8 5.5-16.1 13.5-22.5 5.6-4.3 12.2-6.7 19.6-7zM45.6 45.3c-3.3-2.2-6.6-4-9.7-5.3 4.8-2 13.7-5 24.7-5 6.1 0 12 .9 17.7 2.7 17.8 5.8 31.6 23.2 37.7 32.1-1.6.7-3.2 1.4-4.8 2.2-2.5 1.2-4.9 2.5-7.1 3.7-2.6-5.4-8.3-13.7-20.7-22.4-8.3-5.8-18.2-8.9-28.8-8.9-3.4.1-6.6.5-9 .9zm44.7 40.1c-4.9 4.2-8.3 8-10.5 11.2-3.4-.9-7.3-1.9-11.5-2.7C65 89.5 64.5 83.4 64 77c-.5-6.2-1.1-12.6-4.4-17.8-.7-1.1-1.5-2.2-2.3-3.2 7.4.3 14 2.6 19.5 7 8 6.3 12.1 17.6 13.5 22.4zM58.1 259.9c-2.7-1.6-5.6-3.1-8.4-4.6-14.9-8-30.2-16.3-30.2-30.5 0-11.1 4.3-14.6 8.9-18.2l.5-.4c.7-.6 1.4-1.2 2.2-1.8-.9 7.2-1.9 13.3-2.7 14.9 0 0 12.1-15 15.7-44.3 1.4-11.5-1.1-34.3-5.1-43 .2 4.9 0 9.8-.3 14.4-.4-.8-.8-1.6-1.3-2.2-3.2-4-11.8-17.5-9.4-26.6.9-3.5 3.1-6 6.7-7.8 3.8-1.9 8.8-2.9 15.1-2.9 12.3 0 25.9 3.7 32.9 6 25.1 8 55.4 30.9 64.1 37.7.2.2.4.3.4.3l5.6 3.9-3.5-5.8c-.2-.3-19.1-31.4-53.2-46.5 2-2.9 7.4-8.1 21.6-15.1 21.4-10.5 46.5-15.8 74.3-15.8 27.9 0 52.9 5.3 74.3 15.8 14.2 6.9 19.6 12.2 21.6 15.1-34 15.1-52.9 46.2-53.1 46.5l-3.5 5.8 5.6-3.9s.2-.1.4-.3c8.7-6.8 39-29.8 64.1-37.7 7-2.2 20.6-6 32.9-6 6.3 0 11.3 1 15.1 2.9 3.5 1.8 5.7 4.4 6.7 7.8 2.5 9.1-6.1 22.6-9.4 26.6-.5.6-.9 1.3-1.3 2.2-.3-4.6-.5-9.5-.3-14.4-4 8.8-6.5 31.5-5.1 43 3.6 29.3 15.7 44.3 15.7 44.3-.8-1.6-1.8-7.7-2.7-14.9.7.6 1.5 1.2 2.2 1.8l.5.4c4.6 3.7 8.9 7.1 8.9 18.2 0 14.2-15.4 22.5-30.2 30.5-2.9 1.5-5.7 3.1-8.4 4.6-8.7 5-18 16.7-19.1 34.2-.9 14.6.9 49.9 3.4 75.9-12.4 4.8-26.7 6.4-39.7 6.8-2-4.1-3.9-8.5-5.5-13.1-.7-2-19.6-51.1-26.4-62.2 5.5 39 17.5 73.7 23.5 89.6-3.5-.5-7.3-.7-11.7-.7h-117c-4.4 0-8.3.3-11.7.7 6-15.9 18.1-50.6 23.5-89.6-6.8 11.2-25.7 60.3-26.4 62.2-1.6 4.6-3.5 9-5.5 13.1-13-.4-27.2-2-39.7-6.8 2.5-26 4.3-61.2 3.4-75.9-.9-17.4-10.3-29.2-19-34.2zM34.8 404.6c-12.1-20-8.7-54.1-3.7-59.1 10.9 34.4 47.2 44.3 74.4 45.4-2.7 4.2-5.2 7.6-7 10l-1.4 1.4c-7.2 7.8-8.6 18.5-4.1 31.8-22.7-.1-46.3-9.8-58.2-29.5zm45.7 43.5c6 1.1 12.2 1.9 18.6 2.4 3.5 8 7.4 15.9 12.3 23.1-14.4-5.9-24.4-16-30.9-25.5zM192 498.2c-60.6-.1-78.3-45.8-84.9-64.7-3.7-10.5-3.4-18.2.9-23.1 2.9-3.3 9.5-7.2 24.6-7.2h118.8c15.1 0 21.8 3.9 24.6 7.2 4.2 4.8 4.5 12.6.9 23.1-6.6 18.8-24.3 64.6-84.9 64.7zm80.6-24.6c4.9-7.2 8.8-15.1 12.3-23.1 6.4-.5 12.6-1.3 18.6-2.4-6.5 9.5-16.5 19.6-30.9 25.5zm76.6-69c-12 19.7-35.6 29.3-58.1 29.7 4.5-13.3 3.1-24.1-4.1-31.8-.4-.5-.9-1-1.4-1.5-1.8-2.4-4.3-5.8-7-10 27.2-1.2 63.5-11 74.4-45.4 5 5 8.4 39.1-3.8 59zM191.9 187.7h.2c12.7-.1 27.2-17.8 27.2-17.8-9.9 6-18.8 8.1-27.3 8.3-8.5-.2-17.4-2.3-27.3-8.3 0 0 14.5 17.6 27.2 17.8zm61.7 230.7h-29.4c-4.2 0-7.2.9-8.9 2.7-2.2 2.3-1.5 5.2-.9 6.7 1 2.6 5.5 11.3 13 19.3 2.7 2.9 6.6 4.5 11 4.5s8.7-1.6 11.8-4.2c2.3-2 10.2-9.2 13.7-18.1 1.3-3.3 1-6-.9-7.9-1.3-1.3-4-2.9-9.4-3z"], + "guilded": [448, 512, [], "e07e", "M443.427,64H4.571c0,103.26,22.192,180.06,43.418,222.358C112.046,414.135,224,448,225.256,448a312.824,312.824,0,0,0,140.55-103.477c25.907-33.923,53.1-87.19,65.916-145.761H171.833c4.14,36.429,22.177,67.946,45.1,86.944h88.589c-17.012,28.213-48.186,54.4-80.456,69.482-31.232-13.259-69.09-46.544-96.548-98.362-26.726-53.833-27.092-105.883-27.092-105.883H437.573A625.91,625.91,0,0,0,443.427,64Z"], + "gulp": [256, 512, [], "f3ae", "M209.8 391.1l-14.1 24.6-4.6 80.2c0 8.9-28.3 16.1-63.1 16.1s-63.1-7.2-63.1-16.1l-5.8-79.4-14.9-25.4c41.2 17.3 126 16.7 165.6 0zm-196-253.3l13.6 125.5c5.9-20 20.8-47 40-55.2 6.3-2.7 12.7-2.7 18.7.9 5.2 3 9.6 9.3 10.1 11.8 1.2 6.5-2 9.1-4.5 9.1-3 0-5.3-4.6-6.8-7.3-4.1-7.3-10.3-7.6-16.9-2.8-6.9 5-12.9 13.4-17.1 20.7-5.1 8.8-9.4 18.5-12 28.2-1.5 5.6-2.9 14.6-.6 19.9 1 2.2 2.5 3.6 4.9 3.6 5 0 12.3-6.6 15.8-10.1 4.5-4.5 10.3-11.5 12.5-16l5.2-15.5c2.6-6.8 9.9-5.6 9.9 0 0 10.2-3.7 13.6-10 34.7-5.8 19.5-7.6 25.8-7.6 25.8-.7 2.8-3.4 7.5-6.3 7.5-1.2 0-2.1-.4-2.6-1.2-1-1.4-.9-5.3-.8-6.3.2-3.2 6.3-22.2 7.3-25.2-2 2.2-4.1 4.4-6.4 6.6-5.4 5.1-14.1 11.8-21.5 11.8-3.4 0-5.6-.9-7.7-2.4l7.6 79.6c2 5 39.2 17.1 88.2 17.1 49.1 0 86.3-12.2 88.2-17.1l10.9-94.6c-5.7 5.2-12.3 11.6-19.6 14.8-5.4 2.3-17.4 3.8-17.4-5.7 0-5.2 9.1-14.8 14.4-21.5 1.4-1.7 4.7-5.9 4.7-8.1 0-2.9-6-2.2-11.7 2.5-3.2 2.7-6.2 6.3-8.7 9.7-4.3 6-6.6 11.2-8.5 15.5-6.2 14.2-4.1 8.6-9.1 22-5 13.3-4.2 11.8-5.2 14-.9 1.9-2.2 3.5-4 4.5-1.9 1-4.5.9-6.1-.3-.9-.6-1.3-1.9-1.3-3.7 0-.9.1-1.8.3-2.7 1.5-6.1 7.8-18.1 15-34.3 1.6-3.7 1-2.6.8-2.3-6.2 6-10.9 8.9-14.4 10.5-5.8 2.6-13 2.6-14.5-4.1-.1-.4-.1-.8-.2-1.2-11.8 9.2-24.3 11.7-20-8.1-4.6 8.2-12.6 14.9-22.4 14.9-4.1 0-7.1-1.4-8.6-5.1-2.3-5.5 1.3-14.9 4.6-23.8 1.7-4.5 4-9.9 7.1-16.2 1.6-3.4 4.2-5.4 7.6-4.5.6.2 1.1.4 1.6.7 2.6 1.8 1.6 4.5.3 7.2-3.8 7.5-7.1 13-9.3 20.8-.9 3.3-2 9 1.5 9 2.4 0 4.7-.8 6.9-2.4 4.6-3.4 8.3-8.5 11.1-13.5 2-3.6 4.4-8.3 5.6-12.3.5-1.7 1.1-3.3 1.8-4.8 1.1-2.5 2.6-5.1 5.2-5.1 1.3 0 2.4.5 3.2 1.5 1.7 2.2 1.3 4.5.4 6.9-2 5.6-4.7 10.6-6.9 16.7-1.3 3.5-2.7 8-2.7 11.7 0 3.4 3.7 2.6 6.8 1.2 2.4-1.1 4.8-2.8 6.8-4.5 1.2-4.9.9-3.8 26.4-68.2 1.3-3.3 3.7-4.7 6.1-4.7 1.2 0 2.2.4 3.2 1.1 1.7 1.3 1.7 4.1 1 6.2-.7 1.9-.6 1.3-4.5 10.5-5.2 12.1-8.6 20.8-13.2 31.9-1.9 4.6-7.7 18.9-8.7 22.3-.6 2.2-1.3 5.8 1 5.8 5.4 0 19.3-13.1 23.1-17 .2-.3.5-.4.9-.6.6-1.9 1.2-3.7 1.7-5.5 1.4-3.8 2.7-8.2 5.3-11.3.8-1 1.7-1.6 2.7-1.6 2.8 0 4.2 1.2 4.2 4 0 1.1-.7 5.1-1.1 6.2 1.4-1.5 2.9-3 4.5-4.5 15-13.9 25.7-6.8 25.7.2 0 7.4-8.9 17.7-13.8 23.4-1.6 1.9-4.9 5.4-5 6.4 0 1.3.9 1.8 2.2 1.8 2 0 6.4-3.5 8-4.7 5-3.9 11.8-9.9 16.6-14.1l14.8-136.8c-30.5 17.1-197.6 17.2-228.3.2zm229.7-8.5c0 21-231.2 21-231.2 0 0-8.8 51.8-15.9 115.6-15.9 9 0 17.8.1 26.3.4l12.6-48.7L228.1.6c1.4-1.4 5.8-.2 9.9 3.5s6.6 7.9 5.3 9.3l-.1.1L185.9 74l-10 40.7c39.9 2.6 67.6 8.1 67.6 14.6zm-69.4 4.6c0-.8-.9-1.5-2.5-2.1l-.2.8c0 1.3-5 2.4-11.1 2.4s-11.1-1.1-11.1-2.4c0-.1 0-.2.1-.3l.2-.7c-1.8.6-3 1.4-3 2.3 0 2.1 6.2 3.7 13.7 3.7 7.7.1 13.9-1.6 13.9-3.7z"], + "hacker-news": [448, 512, [], "f1d4", "M0 32v448h448V32H0zm21.2 197.2H21c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z"], + "hacker-news-square": [448, 512, [], "f3af", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM21.2 229.2H21c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z"], + "hackerrank": [512, 512, [], "f5f7", "M477.5 128C463 103.05 285.13 0 256.16 0S49.25 102.79 34.84 128s-14.49 230.8 0 256 192.38 128 221.32 128S463 409.08 477.49 384s14.51-231 .01-256zM316.13 414.22c-4 0-40.91-35.77-38-38.69.87-.87 6.26-1.48 17.55-1.83 0-26.23.59-68.59.94-86.32 0-2-.44-3.43-.44-5.85h-79.93c0 7.1-.46 36.2 1.37 72.88.23 4.54-1.58 6-5.74 5.94-10.13 0-20.27-.11-30.41-.08-4.1 0-5.87-1.53-5.74-6.11.92-33.44 3-84-.15-212.67v-3.17c-9.67-.35-16.38-1-17.26-1.84-2.92-2.92 34.54-38.69 38.49-38.69s41.17 35.78 38.27 38.69c-.87.87-7.9 1.49-16.77 1.84v3.16c-2.42 25.75-2 79.59-2.63 105.39h80.26c0-4.55.39-34.74-1.2-83.64-.1-3.39.95-5.17 4.21-5.2 11.07-.08 22.15-.13 33.23-.06 3.46 0 4.57 1.72 4.5 5.38C333 354.64 336 341.29 336 373.69c8.87.35 16.82 1 17.69 1.84 2.88 2.91-33.62 38.69-37.58 38.69z"], + "hips": [640, 512, [], "f452", "M251.6 157.6c0-1.9-.9-2.8-2.8-2.8h-40.9c-1.6 0-2.7 1.4-2.7 2.8v201.8c0 1.4 1.1 2.8 2.7 2.8h40.9c1.9 0 2.8-.9 2.8-2.8zM156.5 168c-16.1-11.8-36.3-17.9-60.3-18-18.1-.1-34.6 3.7-49.8 11.4V80.2c0-1.8-.9-2.7-2.8-2.7H2.7c-1.8 0-2.7.9-2.7 2.7v279.2c0 1.9.9 2.8 2.7 2.8h41c1.9 0 2.8-.9 2.8-2.8V223.3c0-.8-2.8-27 45.8-27 48.5 0 45.8 26.1 45.8 27v122.6c0 9 7.3 16.3 16.4 16.3h27.3c1.8 0 2.7-.9 2.7-2.8V223.3c0-23.4-9.3-41.8-28-55.3zm478.4 110.1c-6.8-15.7-18.4-27-34.9-34.1l-57.6-25.3c-8.6-3.6-9.2-11.2-2.6-16.1 7.4-5.5 44.3-13.9 84 6.8 1.7 1 4-.3 4-2.4v-44.7c0-1.3-.6-2.1-1.9-2.6-17.7-6.6-36.1-9.9-55.1-9.9-26.5 0-45.3 5.8-58.5 15.4-.5.4-28.4 20-22.7 53.7 3.4 19.6 15.8 34.2 37.2 43.6l53.6 23.5c11.6 5.1 15.2 13.3 12.2 21.2-3.7 9.1-13.2 13.6-36.5 13.6-24.3 0-44.7-8.9-58.4-19.1-2.1-1.4-4.4.2-4.4 2.3v34.4c0 10.4 4.9 17.3 14.6 20.7 15.6 5.5 31.6 8.2 48.2 8.2 12.7 0 25.8-1.2 36.3-4.3.7-.3 36-8.9 45.6-45.8 3.5-13.5 2.4-26.5-3.1-39.1zM376.2 149.8c-31.7 0-104.2 20.1-104.2 103.5v183.5c0 .8.6 2.7 2.7 2.7h40.9c1.9 0 2.8-.9 2.8-2.7V348c16.5 12.7 35.8 19.1 57.7 19.1 60.5 0 108.7-48.5 108.7-108.7.1-60.3-48.2-108.6-108.6-108.6zm0 170.9c-17.2 0-31.9-6.1-44-18.2-12.2-12.2-18.2-26.8-18.2-44 0-34.5 27.6-62.2 62.2-62.2 34.5 0 62.2 27.6 62.2 62.2.1 34.3-27.3 62.2-62.2 62.2zM228.3 72.5c-15.9 0-28.8 12.9-28.9 28.9 0 15.6 12.7 28.9 28.9 28.9s28.9-13.1 28.9-28.9c0-16.2-13-28.9-28.9-28.9z"], + "hire-a-helper": [512, 512, [], "f3b0", "M443.1 0H71.9C67.9 37.3 37.4 67.8 0 71.7v371.5c37.4 4.9 66 32.4 71.9 68.8h372.2c3-36.4 32.5-65.8 67.9-69.8V71.7c-36.4-5.9-65-35.3-68.9-71.7zm-37 404.9c-36.3 0-18.8-2-55.1-2-35.8 0-21 2-56.1 2-5.9 0-4.9-8.2 0-9.8 22.8-7.6 22.9-10.2 24.6-12.8 10.4-15.6 5.9-83 5.9-113 0-5.3-6.4-12.8-13.8-12.8H200.4c-7.4 0-13.8 7.5-13.8 12.8 0 30-4.5 97.4 5.9 113 1.7 2.5 1.8 5.2 24.6 12.8 4.9 1.6 6 9.8 0 9.8-35.1 0-20.3-2-56.1-2-36.3 0-18.8 2-55.1 2-7.9 0-5.8-10.8 0-10.8 10.2-3.4 13.5-3.5 21.7-13.8 7.7-12.9 7.9-44.4 7.9-127.8V151.3c0-22.2-12.2-28.3-28.6-32.4-8.8-2.2-4-11.8 1-11.8 36.5 0 20.6 2 57.1 2 32.7 0 16.5-2 49.2-2 3.3 0 8.5 8.3 1 10.8-4.9 1.6-27.6 3.7-27.6 39.3 0 45.6-.2 55.8 1 68.8 0 1.3 2.3 12.8 12.8 12.8h109.2c10.5 0 12.8-11.5 12.8-12.8 1.2-13 1-23.2 1-68.8 0-35.6-22.7-37.7-27.6-39.3-7.5-2.5-2.3-10.8 1-10.8 32.7 0 16.5 2 49.2 2 36.5 0 20.6-2 57.1-2 4.9 0 9.9 9.6 1 11.8-16.4 4.1-28.6 10.3-28.6 32.4v101.2c0 83.4.1 114.9 7.9 127.8 8.2 10.2 11.4 10.4 21.7 13.8 5.8 0 7.8 10.8 0 10.8z"], + "hive": [512, 512, [], "e07f", "M260.353,254.878,131.538,33.1a2.208,2.208,0,0,0-3.829.009L.3,254.887A2.234,2.234,0,0,0,.3,257.122L129.116,478.9a2.208,2.208,0,0,0,3.83-.009L260.358,257.113A2.239,2.239,0,0,0,260.353,254.878Zm39.078-25.713a2.19,2.19,0,0,0,1.9,1.111h66.509a2.226,2.226,0,0,0,1.9-3.341L259.115,33.111a2.187,2.187,0,0,0-1.9-1.111H190.707a2.226,2.226,0,0,0-1.9,3.341ZM511.7,254.886,384.9,33.112A2.2,2.2,0,0,0,382.99,32h-66.6a2.226,2.226,0,0,0-1.906,3.34L440.652,256,314.481,476.66a2.226,2.226,0,0,0,1.906,3.34h66.6a2.2,2.2,0,0,0,1.906-1.112L511.7,257.114A2.243,2.243,0,0,0,511.7,254.886ZM366.016,284.917H299.508a2.187,2.187,0,0,0-1.9,1.111l-108.8,190.631a2.226,2.226,0,0,0,1.9,3.341h66.509a2.187,2.187,0,0,0,1.9-1.111l108.8-190.631A2.226,2.226,0,0,0,366.016,284.917Z"], + "hooli": [640, 512, [], "f427", "M144.5 352l38.3.8c-13.2-4.6-26-10.2-38.3-16.8zm57.7-5.3v5.3l-19.4.8c36.5 12.5 69.9 14.2 94.7 7.2-19.9.2-45.8-2.6-75.3-13.3zm408.9-115.2c15.9 0 28.9-12.9 28.9-28.9s-12.9-24.5-28.9-24.5c-15.9 0-28.9 8.6-28.9 24.5s12.9 28.9 28.9 28.9zm-29 120.5H640V241.5h-57.9zm-73.7 0h57.9V156.7L508.4 184zm-31-119.4c-18.2-18.2-50.4-17.1-50.4-17.1s-32.3-1.1-50.4 17.1c-18.2 18.2-16.8 33.9-16.8 52.6s-1.4 34.3 16.8 52.5 50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.8-33.8 16.8-52.5-.1-18.8 1.3-34.5-16.8-52.6zm-39.8 71.9c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9zm-106.2-71.9c-18.2-18.2-50.4-17.1-50.4-17.1s-32.2-1.1-50.4 17.1c-1.9 1.9-3.7 3.9-5.3 6-38.2-29.6-72.5-46.5-102.1-61.1v-20.7l-22.5 10.6c-54.4-22.1-89-18.2-97.3.1 0 0-24.9 32.8 61.8 110.8V352h57.9v-28.6c-6.5-4.2-13-8.7-19.4-13.6-14.8-11.2-27.4-21.6-38.4-31.4v-31c13.1 14.7 30.5 31.4 53.4 50.3l4.5 3.6v-29.8c0-6.9 1.7-18.2 10.8-18.2s10.6 6.9 10.6 15V317c18 12.2 37.3 22.1 57.7 29.6v-93.9c0-18.7-13.4-37.4-40.6-37.4-15.8-.1-30.5 8.2-38.5 21.9v-54.3c41.9 20.9 83.9 46.5 99.9 58.3-10.2 14.6-9.3 28.1-9.3 43.7 0 18.7-1.4 34.3 16.8 52.5s50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.7-33.8 16.7-52.5 0-18.5 1.5-34.2-16.7-52.3zM65.2 184v63.3c-48.7-54.5-38.9-76-35.2-79.1 13.5-11.4 37.5-8 64.4 2.1zm226.5 120.5c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9z"], + "hornbill": [512, 512, [], "f592", "M76.38 370.3a37.8 37.8 0 1 1-32.07-32.42c-78.28-111.35 52-190.53 52-190.53-5.86 43-8.24 91.16-8.24 91.16-67.31 41.49.93 64.06 39.81 72.87a140.38 140.38 0 0 0 131.66 91.94c1.92 0 3.77-.21 5.67-.28l.11 18.86c-99.22 1.39-158.7-29.14-188.94-51.6zm108-327.7A37.57 37.57 0 0 0 181 21.45a37.95 37.95 0 1 0-31.17 54.22c-22.55 29.91-53.83 89.57-52.42 190l21.84-.15c0-.9-.14-1.77-.14-2.68A140.42 140.42 0 0 1 207 132.71c8-37.71 30.7-114.3 73.8-44.29 0 0 48.14 2.38 91.18 8.24 0 0-77.84-128-187.59-54.06zm304.19 134.17a37.94 37.94 0 1 0-53.84-28.7C403 126.13 344.89 99 251.28 100.33l.14 22.5c2.7-.15 5.39-.41 8.14-.41a140.37 140.37 0 0 1 130.49 88.76c39.1 9 105.06 31.58 38.46 72.54 0 0-2.34 48.13-8.21 91.16 0 0 133.45-81.16 49-194.61a37.45 37.45 0 0 0 19.31-3.5zM374.06 436.24c21.43-32.46 46.42-89.69 45.14-179.66l-19.52.14c.08 2.06.3 4.07.3 6.15a140.34 140.34 0 0 1-91.39 131.45c-8.85 38.95-31.44 106.66-72.77 39.49 0 0-48.12-2.34-91.19-8.22 0 0 79.92 131.34 191.9 51a37.5 37.5 0 0 0 3.64 14 37.93 37.93 0 1 0 33.89-54.29z"], + "hotjar": [448, 512, [], "f3b1", "M414.9 161.5C340.2 29 121.1 0 121.1 0S222.2 110.4 93 197.7C11.3 252.8-21 324.4 14 402.6c26.8 59.9 83.5 84.3 144.6 93.4-29.2-55.1-6.6-122.4-4.1-129.6 57.1 86.4 165 0 110.8-93.9 71 15.4 81.6 138.6 27.1 215.5 80.5-25.3 134.1-88.9 148.8-145.6 15.5-59.3 3.7-127.9-26.3-180.9z"], + "houzz": [448, 512, [], "f27c", "M275.9 330.7H171.3V480H17V32h109.5v104.5l305.1 85.6V480H275.9z"], + "html5": [384, 512, [], "f13b", "M0 32l34.9 395.8L191.5 480l157.6-52.2L384 32H0zm308.2 127.9H124.4l4.1 49.4h175.6l-13.6 148.4-97.9 27v.3h-1.1l-98.7-27.3-6-75.8h47.7L138 320l53.5 14.5 53.7-14.5 6-62.2H84.3L71.5 112.2h241.1l-4.4 47.7z"], + "hubspot": [512, 512, [], "f3b2", "M267.4 211.6c-25.1 23.7-40.8 57.3-40.8 94.6 0 29.3 9.7 56.3 26 78L203.1 434c-4.4-1.6-9.1-2.5-14-2.5-10.8 0-20.9 4.2-28.5 11.8-7.6 7.6-11.8 17.8-11.8 28.6s4.2 20.9 11.8 28.5c7.6 7.6 17.8 11.6 28.5 11.6 10.8 0 20.9-3.9 28.6-11.6 7.6-7.6 11.8-17.8 11.8-28.5 0-4.2-.6-8.2-1.9-12.1l50-50.2c22 16.9 49.4 26.9 79.3 26.9 71.9 0 130-58.3 130-130.2 0-65.2-47.7-119.2-110.2-128.7V116c17.5-7.4 28.2-23.8 28.2-42.9 0-26.1-20.9-47.9-47-47.9S311.2 47 311.2 73.1c0 19.1 10.7 35.5 28.2 42.9v61.2c-15.2 2.1-29.6 6.7-42.7 13.6-27.6-20.9-117.5-85.7-168.9-124.8 1.2-4.4 2-9 2-13.8C129.8 23.4 106.3 0 77.4 0 48.6 0 25.2 23.4 25.2 52.2c0 28.9 23.4 52.3 52.2 52.3 9.8 0 18.9-2.9 26.8-7.6l163.2 114.7zm89.5 163.6c-38.1 0-69-30.9-69-69s30.9-69 69-69 69 30.9 69 69-30.9 69-69 69z"], + "ideal": [576, 512, [], "e013", "M125.61,165.48a49.07,49.07,0,1,0,49.06,49.06A49.08,49.08,0,0,0,125.61,165.48ZM86.15,425.84h78.94V285.32H86.15Zm151.46-211.6c0-20-10-22.53-18.74-22.53H204.82V237.5h14.05C228.62,237.5,237.61,234.69,237.61,214.24Zm201.69,46V168.93h22.75V237.5h33.69C486.5,113.08,388.61,86.19,299.67,86.19H204.84V169h14c25.6,0,41.5,17.35,41.5,45.26,0,28.81-15.52,46-41.5,46h-14V425.88h94.83c144.61,0,194.94-67.16,196.72-165.64Zm-109.75,0H273.3V169h54.43v22.73H296v10.58h30V225H296V237.5h33.51Zm74.66,0-5.16-17.67H369.31l-5.18,17.67H340.47L368,168.92h32.35l27.53,91.34ZM299.65,32H32V480H299.65c161.85,0,251-79.73,251-224.52C550.62,172,518,32,299.65,32Zm0,426.92H53.07V53.07H299.65c142.1,0,229.9,64.61,229.9,202.41C529.55,389.57,448.55,458.92,299.65,458.92Zm83.86-264.85L376,219.88H392.4l-7.52-25.81Z"], + "imdb": [448, 512, [], "f2d8", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM21.3 229.2H21c.1-.1.2-.3.3-.4zM97 319.8H64V192h33zm113.2 0h-28.7v-86.4l-11.6 86.4h-20.6l-12.2-84.5v84.5h-29V192h42.8c3.3 19.8 6 39.9 8.7 59.9l7.6-59.9h43zm11.4 0V192h24.6c17.6 0 44.7-1.6 49 20.9 1.7 7.6 1.4 16.3 1.4 24.4 0 88.5 11.1 82.6-75 82.5zm160.9-29.2c0 15.7-2.4 30.9-22.2 30.9-9 0-15.2-3-20.9-9.8l-1.9 8.1h-29.8V192h31.7v41.7c6-6.5 12-9.2 20.9-9.2 21.4 0 22.2 12.8 22.2 30.1zM265 229.9c0-9.7 1.6-16-10.3-16v83.7c12.2.3 10.3-8.7 10.3-18.4zm85.5 26.1c0-5.4 1.1-12.7-6.2-12.7-6 0-4.9 8.9-4.9 12.7 0 .6-1.1 39.6 1.1 44.7.8 1.6 2.2 2.4 3.8 2.4 7.8 0 6.2-9 6.2-14.4z"], + "innosoft": [448, 512, [], "e080", "M422.559,159.71a27.379,27.379,0,0,0-13.866-23.337,26.42,26.42,0,0,0-26.211.133L73.943,314.647V176.261a11.955,11.955,0,0,1,6.047-10.34L218.066,86.208a12.153,12.153,0,0,1,11.922.025l32.656,18.853L112.581,191.723v56L359.642,105.086,241.129,36.679c-10.992-6.129-22.3-6.255-33.8-.27l-164.6,95.026c-10.634,6.12-16.771,16.39-17.29,29.124l0,191.5c.17,10.135,5.08,18.672,13.474,23.428a27.037,27.037,0,0,0,26.736-.045L374.057,197.376V335.657a11.976,11.976,0,0,1-5.92,10.368L230.025,425.77a12.175,12.175,0,0,1-11.937.062l-32.723-18.9,150.051-86.627v-56L88.367,406.932l118.794,68.583a33.88,33.88,0,0,0,34.25-.327l164.527-94.995c10.746-6.631,16.649-17.118,16.624-29.528Z"], + "instagram": [448, 512, [], "f16d", "M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"], + "instagram-square": [448, 512, [], "e055", "M224,202.66A53.34,53.34,0,1,0,277.36,256,53.38,53.38,0,0,0,224,202.66Zm124.71-41a54,54,0,0,0-30.41-30.41c-21-8.29-71-6.43-94.3-6.43s-73.25-1.93-94.31,6.43a54,54,0,0,0-30.41,30.41c-8.28,21-6.43,71.05-6.43,94.33S91,329.26,99.32,350.33a54,54,0,0,0,30.41,30.41c21,8.29,71,6.43,94.31,6.43s73.24,1.93,94.3-6.43a54,54,0,0,0,30.41-30.41c8.35-21,6.43-71.05,6.43-94.33S357.1,182.74,348.75,161.67ZM224,338a82,82,0,1,1,82-82A81.9,81.9,0,0,1,224,338Zm85.38-148.3a19.14,19.14,0,1,1,19.13-19.14A19.1,19.1,0,0,1,309.42,189.74ZM400,32H48A48,48,0,0,0,0,80V432a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V80A48,48,0,0,0,400,32ZM382.88,322c-1.29,25.63-7.14,48.34-25.85,67s-41.4,24.63-67,25.85c-26.41,1.49-105.59,1.49-132,0-25.63-1.29-48.26-7.15-67-25.85s-24.63-41.42-25.85-67c-1.49-26.42-1.49-105.61,0-132,1.29-25.63,7.07-48.34,25.85-67s41.47-24.56,67-25.78c26.41-1.49,105.59-1.49,132,0,25.63,1.29,48.33,7.15,67,25.85s24.63,41.42,25.85,67.05C384.37,216.44,384.37,295.56,382.88,322Z"], + "instalod": [512, 512, [], "e081", "M153.384,480H387.113L502.554,275.765,204.229,333.211ZM504.726,240.078,387.113,32H155.669L360.23,267.9ZM124.386,48.809,7.274,256,123.236,461.154,225.627,165.561Z"], + "intercom": [448, 512, [], "f7af", "M392 32H56C25.1 32 0 57.1 0 88v336c0 30.9 25.1 56 56 56h336c30.9 0 56-25.1 56-56V88c0-30.9-25.1-56-56-56zm-108.3 82.1c0-19.8 29.9-19.8 29.9 0v199.5c0 19.8-29.9 19.8-29.9 0V114.1zm-74.6-7.5c0-19.8 29.9-19.8 29.9 0v216.5c0 19.8-29.9 19.8-29.9 0V106.6zm-74.7 7.5c0-19.8 29.9-19.8 29.9 0v199.5c0 19.8-29.9 19.8-29.9 0V114.1zM59.7 144c0-19.8 29.9-19.8 29.9 0v134.3c0 19.8-29.9 19.8-29.9 0V144zm323.4 227.8c-72.8 63-241.7 65.4-318.1 0-15-12.8 4.4-35.5 19.4-22.7 65.9 55.3 216.1 53.9 279.3 0 14.9-12.9 34.3 9.8 19.4 22.7zm5.2-93.5c0 19.8-29.9 19.8-29.9 0V144c0-19.8 29.9-19.8 29.9 0v134.3z"], + "internet-explorer": [512, 512, [], "f26b", "M483.049 159.706c10.855-24.575 21.424-60.438 21.424-87.871 0-72.722-79.641-98.371-209.673-38.577-107.632-7.181-211.221 73.67-237.098 186.457 30.852-34.862 78.271-82.298 121.977-101.158C125.404 166.85 79.128 228.002 43.992 291.725 23.246 329.651 0 390.94 0 436.747c0 98.575 92.854 86.5 180.251 42.006 31.423 15.43 66.559 15.573 101.695 15.573 97.124 0 184.249-54.294 216.814-146.022H377.927c-52.509 88.593-196.819 52.996-196.819-47.436H509.9c6.407-43.581-1.655-95.715-26.851-141.162zM64.559 346.877c17.711 51.15 53.703 95.871 100.266 123.304-88.741 48.94-173.267 29.096-100.266-123.304zm115.977-108.873c2-55.151 50.276-94.871 103.98-94.871 53.418 0 101.981 39.72 103.981 94.871H180.536zm184.536-187.6c21.425-10.287 48.563-22.003 72.558-22.003 31.422 0 54.274 21.717 54.274 53.722 0 20.003-7.427 49.007-14.569 67.867-26.28-42.292-65.986-81.584-112.263-99.586z"], + "invision": [448, 512, [], "f7b0", "M407.4 32H40.6C18.2 32 0 50.2 0 72.6v366.8C0 461.8 18.2 480 40.6 480h366.8c22.4 0 40.6-18.2 40.6-40.6V72.6c0-22.4-18.2-40.6-40.6-40.6zM176.1 145.6c.4 23.4-22.4 27.3-26.6 27.4-14.9 0-27.1-12-27.1-27 .1-35.2 53.1-35.5 53.7-.4zM332.8 377c-65.6 0-34.1-74-25-106.6 14.1-46.4-45.2-59-59.9.7l-25.8 103.3H177l8.1-32.5c-31.5 51.8-94.6 44.4-94.6-4.3.1-14.3.9-14 23-104.1H81.7l9.7-35.6h76.4c-33.6 133.7-32.6 126.9-32.9 138.2 0 20.9 40.9 13.5 57.4-23.2l19.8-79.4h-32.3l9.7-35.6h68.8l-8.9 40.5c40.5-75.5 127.9-47.8 101.8 38-14.2 51.1-14.6 50.7-14.9 58.8 0 15.5 17.5 22.6 31.8-16.9L386 325c-10.5 36.7-29.4 52-53.2 52z"], + "ioxhost": [640, 512, [], "f208", "M616 160h-67.3C511.2 70.7 422.9 8 320 8 183 8 72 119 72 256c0 16.4 1.6 32.5 4.7 48H24c-13.3 0-24 10.8-24 24 0 13.3 10.7 24 24 24h67.3c37.5 89.3 125.8 152 228.7 152 137 0 248-111 248-248 0-16.4-1.6-32.5-4.7-48H616c13.3 0 24-10.8 24-24 0-13.3-10.7-24-24-24zm-96 96c0 110.5-89.5 200-200 200-75.7 0-141.6-42-175.5-104H424c13.3 0 24-10.8 24-24 0-13.3-10.7-24-24-24H125.8c-3.8-15.4-5.8-31.4-5.8-48 0-110.5 89.5-200 200-200 75.7 0 141.6 42 175.5 104H216c-13.3 0-24 10.8-24 24 0 13.3 10.7 24 24 24h298.2c3.8 15.4 5.8 31.4 5.8 48zm-304-24h208c13.3 0 24 10.7 24 24 0 13.2-10.7 24-24 24H216c-13.3 0-24-10.7-24-24 0-13.2 10.7-24 24-24z"], + "itch-io": [512, 512, [], "f83a", "M71.92 34.77C50.2 47.67 7.4 96.84 7 109.73v21.34c0 27.06 25.29 50.84 48.25 50.84 27.57 0 50.54-22.85 50.54-50 0 27.12 22.18 50 49.76 50s49-22.85 49-50c0 27.12 23.59 50 51.16 50h.5c27.57 0 51.16-22.85 51.16-50 0 27.12 21.47 50 49 50s49.76-22.85 49.76-50c0 27.12 23 50 50.54 50 23 0 48.25-23.78 48.25-50.84v-21.34c-.4-12.9-43.2-62.07-64.92-75C372.56 32.4 325.76 32 256 32S91.14 33.1 71.92 34.77zm132.32 134.39c-22 38.4-77.9 38.71-99.85.25-13.17 23.14-43.17 32.07-56 27.66-3.87 40.15-13.67 237.13 17.73 269.15 80 18.67 302.08 18.12 379.76 0 31.65-32.27 21.32-232 17.75-269.15-12.92 4.44-42.88-4.6-56-27.66-22 38.52-77.85 38.1-99.85-.24-7.1 12.49-23.05 28.94-51.76 28.94a57.54 57.54 0 0 1-51.75-28.94zm-41.58 53.77c16.47 0 31.09 0 49.22 19.78a436.91 436.91 0 0 1 88.18 0C318.22 223 332.85 223 349.31 223c52.33 0 65.22 77.53 83.87 144.45 17.26 62.15-5.52 63.67-33.95 63.73-42.15-1.57-65.49-32.18-65.49-62.79-39.25 6.43-101.93 8.79-155.55 0 0 30.61-23.34 61.22-65.49 62.79-28.42-.06-51.2-1.58-33.94-63.73 18.67-67 31.56-144.45 83.88-144.45zM256 270.79s-44.38 40.77-52.35 55.21l29-1.17v25.32c0 1.55 21.34.16 23.33.16 11.65.54 23.31 1 23.31-.16v-25.28l29 1.17c-8-14.48-52.35-55.24-52.35-55.24z"], + "itunes": [448, 512, [], "f3b4", "M223.6 80.3C129 80.3 52.5 157 52.5 251.5S129 422.8 223.6 422.8s171.2-76.7 171.2-171.2c0-94.6-76.7-171.3-171.2-171.3zm79.4 240c-3.2 13.6-13.5 21.2-27.3 23.8-12.1 2.2-22.2 2.8-31.9-5-11.8-10-12-26.4-1.4-36.8 8.4-8 20.3-9.6 38-12.8 3-.5 5.6-1.2 7.7-3.7 3.2-3.6 2.2-2 2.2-80.8 0-5.6-2.7-7.1-8.4-6.1-4 .7-91.9 17.1-91.9 17.1-5 1.1-6.7 2.6-6.7 8.3 0 116.1.5 110.8-1.2 118.5-2.1 9-7.6 15.8-14.9 19.6-8.3 4.6-23.4 6.6-31.4 5.2-21.4-4-28.9-28.7-14.4-42.9 8.4-8 20.3-9.6 38-12.8 3-.5 5.6-1.2 7.7-3.7 5-5.7.9-127 2.6-133.7.4-2.6 1.5-4.8 3.5-6.4 2.1-1.7 5.8-2.7 6.7-2.7 101-19 113.3-21.4 115.1-21.4 5.7-.4 9 3 9 8.7-.1 170.6.4 161.4-1 167.6zM345.2 32H102.8C45.9 32 0 77.9 0 134.8v242.4C0 434.1 45.9 480 102.8 480h242.4c57 0 102.8-45.9 102.8-102.8V134.8C448 77.9 402.1 32 345.2 32zM223.6 444c-106.3 0-192.5-86.2-192.5-192.5S117.3 59 223.6 59s192.5 86.2 192.5 192.5S329.9 444 223.6 444z"], + "itunes-note": [384, 512, [], "f3b5", "M381.9 388.2c-6.4 27.4-27.2 42.8-55.1 48-24.5 4.5-44.9 5.6-64.5-10.2-23.9-20.1-24.2-53.4-2.7-74.4 17-16.2 40.9-19.5 76.8-25.8 6-1.1 11.2-2.5 15.6-7.4 6.4-7.2 4.4-4.1 4.4-163.2 0-11.2-5.5-14.3-17-12.3-8.2 1.4-185.7 34.6-185.7 34.6-10.2 2.2-13.4 5.2-13.4 16.7 0 234.7 1.1 223.9-2.5 239.5-4.2 18.2-15.4 31.9-30.2 39.5-16.8 9.3-47.2 13.4-63.4 10.4-43.2-8.1-58.4-58-29.1-86.6 17-16.2 40.9-19.5 76.8-25.8 6-1.1 11.2-2.5 15.6-7.4 10.1-11.5 1.8-256.6 5.2-270.2.8-5.2 3-9.6 7.1-12.9 4.2-3.5 11.8-5.5 13.4-5.5 204-38.2 228.9-43.1 232.4-43.1 11.5-.8 18.1 6 18.1 17.6.2 344.5 1.1 326-1.8 338.5z"], + "java": [384, 512, [], "f4e4", "M277.74 312.9c9.8-6.7 23.4-12.5 23.4-12.5s-38.7 7-77.2 10.2c-47.1 3.9-97.7 4.7-123.1 1.3-60.1-8 33-30.1 33-30.1s-36.1-2.4-80.6 19c-52.5 25.4 130 37 224.5 12.1zm-85.4-32.1c-19-42.7-83.1-80.2 0-145.8C296 53.2 242.84 0 242.84 0c21.5 84.5-75.6 110.1-110.7 162.6-23.9 35.9 11.7 74.4 60.2 118.2zm114.6-176.2c.1 0-175.2 43.8-91.5 140.2 24.7 28.4-6.5 54-6.5 54s62.7-32.4 33.9-72.9c-26.9-37.8-47.5-56.6 64.1-121.3zm-6.1 270.5a12.19 12.19 0 0 1-2 2.6c128.3-33.7 81.1-118.9 19.8-97.3a17.33 17.33 0 0 0-8.2 6.3 70.45 70.45 0 0 1 11-3c31-6.5 75.5 41.5-20.6 91.4zM348 437.4s14.5 11.9-15.9 21.2c-57.9 17.5-240.8 22.8-291.6.7-18.3-7.9 16-19 26.8-21.3 11.2-2.4 17.7-2 17.7-2-20.3-14.3-131.3 28.1-56.4 40.2C232.84 509.4 401 461.3 348 437.4zM124.44 396c-78.7 22 47.9 67.4 148.1 24.5a185.89 185.89 0 0 1-28.2-13.8c-44.7 8.5-65.4 9.1-106 4.5-33.5-3.8-13.9-15.2-13.9-15.2zm179.8 97.2c-78.7 14.8-175.8 13.1-233.3 3.6 0-.1 11.8 9.7 72.4 13.6 92.2 5.9 233.8-3.3 237.1-46.9 0 0-6.4 16.5-76.2 29.7zM260.64 353c-59.2 11.4-93.5 11.1-136.8 6.6-33.5-3.5-11.6-19.7-11.6-19.7-86.8 28.8 48.2 61.4 169.5 25.9a60.37 60.37 0 0 1-21.1-12.8z"], + "jedi-order": [448, 512, [], "f50e", "M398.5 373.6c95.9-122.1 17.2-233.1 17.2-233.1 45.4 85.8-41.4 170.5-41.4 170.5 105-171.5-60.5-271.5-60.5-271.5 96.9 72.7-10.1 190.7-10.1 190.7 85.8 158.4-68.6 230.1-68.6 230.1s-.4-16.9-2.2-85.7c4.3 4.5 34.5 36.2 34.5 36.2l-24.2-47.4 62.6-9.1-62.6-9.1 20.2-55.5-31.4 45.9c-2.2-87.7-7.8-305.1-7.9-306.9v-2.4 1-1 2.4c0 1-5.6 219-7.9 306.9l-31.4-45.9 20.2 55.5-62.6 9.1 62.6 9.1-24.2 47.4 34.5-36.2c-1.8 68.8-2.2 85.7-2.2 85.7s-154.4-71.7-68.6-230.1c0 0-107-118.1-10.1-190.7 0 0-165.5 99.9-60.5 271.5 0 0-86.8-84.8-41.4-170.5 0 0-78.7 111 17.2 233.1 0 0-26.2-16.1-49.4-77.7 0 0 16.9 183.3 222 185.7h4.1c205-2.4 222-185.7 222-185.7-23.6 61.5-49.9 77.7-49.9 77.7z"], + "jenkins": [512, 512, [], "f3b6", "M487.1 425c-1.4-11.2-19-23.1-28.2-31.9-5.1-5-29-23.1-30.4-29.9-1.4-6.6 9.7-21.5 13.3-28.9 5.1-10.7 8.8-23.7 11.3-32.6 18.8-66.1 20.7-156.9-6.2-211.2-10.2-20.6-38.6-49-56.4-62.5-42-31.7-119.6-35.3-170.1-16.6-14.1 5.2-27.8 9.8-40.1 17.1-33.1 19.4-68.3 32.5-78.1 71.6-24.2 10.8-31.5 41.8-30.3 77.8.2 7 4.1 15.8 2.7 22.4-.7 3.3-5.2 7.6-6.1 9.8-11.6 27.7-2.3 64 11.1 83.7 8.1 11.9 21.5 22.4 39.2 25.2.7 10.6 3.3 19.7 8.2 30.4 3.1 6.8 14.7 19 10.4 27.7-2.2 4.4-21 13.8-27.3 17.6C89 407.2 73.7 415 54.2 429c-12.6 9-32.3 10.2-29.2 31.1 2.1 14.1 10.1 31.6 14.7 45.8.7 2 1.4 4.1 2.1 6h422c4.9-15.3 9.7-30.9 14.6-47.2 3.4-11.4 10.2-27.8 8.7-39.7zM205.9 33.7c1.8-.5 3.4.7 4.9 2.4-.2 5.2-5.4 5.1-8.9 6.8-5.4 6.7-13.4 9.8-20 17.2-6.8 7.5-14.4 27.7-23.4 30-4.5 1.1-9.7-.8-13.6-.5-10.4.7-17.7 6-28.3 7.5 13.6-29.9 56.1-54 89.3-63.4zm-104.8 93.6c13.5-14.9 32.1-24.1 54.8-25.9 11.7 29.7-8.4 65-.9 97.6 2.3 9.9 10.2 25.4-2.4 25.7.3-28.3-34.8-46.3-61.3-29.6-1.8-21.5-4.9-51.7 9.8-67.8zm36.7 200.2c-1-4.1-2.7-12.9-2.3-15.1 1.6-8.7 17.1-12.5 11-24.7-11.3-.1-13.8 10.2-24.1 11.3-26.7 2.6-45.6-35.4-44.4-58.4 1-19.5 17.6-38.2 40.1-35.8 16 1.8 21.4 19.2 24.5 34.7 9.2.5 22.5-.4 26.9-7.6-.6-17.5-8.8-31.6-8.2-47.7 1-30.3 17.5-57.6 4.8-87.4 13.6-30.9 53.5-55.3 83.1-70 36.6-18.3 94.9-3.7 129.3 15.8 19.7 11.1 34.4 32.7 48.3 50.7-19.5-5.8-36.1 4.2-33.1 20.3 16.3-14.9 44.2-.2 52.5 16.4 7.9 15.8 7.8 39.3 9 62.8 2.9 57-10.4 115.9-39.1 157.1-7.7 11-14.1 23-24.9 30.6-26 18.2-65.4 34.7-99.2 23.4-44.7-15-65-44.8-89.5-78.8.7 18.7 13.8 34.1 26.8 48.4 11.3 12.5 25 26.6 39.7 32.4-12.3-2.9-31.1-3.8-36.2 7.2-28.6-1.9-55.1-4.8-68.7-24.2-10.6-15.4-21.4-41.4-26.3-61.4zm222 124.1c4.1-3 11.1-2.9 17.4-3.6-5.4-2.7-13-3.7-19.3-2.2-.1-4.2-2-6.8-3.2-10.2 10.6-3.8 35.5-28.5 49.6-20.3 6.7 3.9 9.5 26.2 10.1 37 .4 9-.8 18-4.5 22.8-18.8-.6-35.8-2.8-50.7-7 .9-6.1-1-12.1.6-16.5zm-17.2-20c-16.8.8-26-1.2-38.3-10.8.2-.8 1.4-.5 1.5-1.4 18 8 40.8-3.3 59-4.9-7.9 5.1-14.6 11.6-22.2 17.1zm-12.1 33.2c-1.6-9.4-3.5-12-2.8-20.2 25-16.6 29.7 28.6 2.8 20.2zM226 438.6c-11.6-.7-48.1-14-38.5-23.7 9.4 6.5 27.5 4.9 41.3 7.3.8 4.4-2.8 10.2-2.8 16.4zM57.7 497.1c-4.3-12.7-9.2-25.1-14.8-36.9 30.8-23.8 65.3-48.9 102.2-63.5 2.8-1.1 23.2 25.4 26.2 27.6 16.5 11.7 37 21 56.2 30.2 1.2 8.8 3.9 20.2 8.7 35.5.7 2.3 1.4 4.7 2.2 7.2H57.7zm240.6 5.7h-.8c.3-.2.5-.4.8-.5v.5zm7.5-5.7c2.1-1.4 4.3-2.8 6.4-4.3 1.1 1.4 2.2 2.8 3.2 4.3h-9.6zm15.1-24.7c-10.8 7.3-20.6 18.3-33.3 25.2-6 3.3-27 11.7-33.4 10.2-3.6-.8-3.9-5.3-5.4-9.5-3.1-9-10.1-23.4-10.8-37-.8-17.2-2.5-46 16-42.4 14.9 2.9 32.3 9.7 43.9 16.1 7.1 3.9 11.1 8.6 21.9 9.5-.1 1.4-.1 2.8-.2 4.3-5.9 3.9-15.3 3.8-21.8 7.1 9.5.4 17 2.7 23.5 5.9-.1 3.4-.3 7-.4 10.6zm53.4 24.7h-14c-.1-3.2-2.8-5.8-6.1-5.8s-5.9 2.6-6.1 5.8h-17.4c-2.8-4.4-5.7-8.6-8.9-12.5 2.1-2.2 4-4.7 6-6.9 9 3.7 14.8-4.9 21.7-4.2 7.9.8 14.2 11.7 25.4 11l-.6 12.6zm8.7 0c.2-4 .4-7.8.6-11.5 15.6-7.3 29 1.3 35.7 11.5H383zm83.4-37c-2.3 11.2-5.8 24-9.9 37.1-.2-.1-.4-.1-.6-.1H428c.6-1.1 1.2-2.2 1.9-3.3-2.6-6.1-9-8.7-10.9-15.5 12.1-22.7 6.5-93.4-24.2-78.5 4.3-6.3 15.6-11.5 20.8-19.3 13 10.4 20.8 20.3 33.2 31.4 6.8 6 20 13.3 21.4 23.1.8 5.5-2.6 18.9-3.8 25.1zM222.2 130.5c5.4-14.9 27.2-34.7 45-32 7.7 1.2 18 8.2 12.2 17.7-30.2-7-45.2 12.6-54.4 33.1-8.1-2-4.9-13.1-2.8-18.8zm184.1 63.1c8.2-3.6 22.4-.7 29.6-5.3-4.2-11.5-10.3-21.4-9.3-37.7.5 0 1 0 1.4.1 6.8 14.2 12.7 29.2 21.4 41.7-5.7 13.5-43.6 25.4-43.1 1.2zm20.4-43zm-117.2 45.7c-6.8-10.9-19-32.5-14.5-45.3 6.5 11.9 8.6 24.4 17.8 33.3 4.1 4 12.2 9 8.2 20.2-.9 2.7-7.8 8.6-11.7 9.7-14.4 4.3-47.9.9-36.6-17.1 11.9.7 27.9 7.8 36.8-.8zm27.3 70c3.8 6.6 1.4 18.7 12.1 20.6 20.2 3.4 43.6-12.3 58.1-17.8 9-15.2-.8-20.7-8.9-30.5-16.6-20-38.8-44.8-38-74.7 6.7-4.9 7.3 7.4 8.2 9.7 8.7 20.3 30.4 46.2 46.3 63.5 3.9 4.3 10.3 8.4 11 11.2 2.1 8.2-5.4 18-4.5 23.5-21.7 13.9-45.8 29.1-81.4 25.6-7.4-6.7-10.3-21.4-2.9-31.1zm-201.3-9.2c-6.8-3.9-8.4-21-16.4-21.4-11.4-.7-9.3 22.2-9.3 35.5-7.8-7.1-9.2-29.1-3.5-40.3-6.6-3.2-9.5 3.6-13.1 5.9 4.7-34.1 49.8-15.8 42.3 20.3zm299.6 28.8c-10.1 19.2-24.4 40.4-54 41-.6-6.2-1.1-15.6 0-19.4 22.7-2.2 36.6-13.7 54-21.6zm-141.9 12.4c18.9 9.9 53.6 11 79.3 10.2 1.4 5.6 1.3 12.6 1.4 19.4-33 1.8-72-6.4-80.7-29.6zm92.2 46.7c-1.7 4.3-5.3 9.3-9.8 11.1-12.1 4.9-45.6 8.7-62.4-.3-10.7-5.7-17.5-18.5-23.4-26-2.8-3.6-16.9-12.9-.2-12.9 13.1 32.7 58 29 95.8 28.1z"], + "jira": [496, 512, [], "f7b1", "M490 241.7C417.1 169 320.6 71.8 248.5 0 83 164.9 6 241.7 6 241.7c-7.9 7.9-7.9 20.7 0 28.7C138.8 402.7 67.8 331.9 248.5 512c379.4-378 15.7-16.7 241.5-241.7 8-7.9 8-20.7 0-28.6zm-241.5 90l-76-75.7 76-75.7 76 75.7-76 75.7z"], + "joget": [496, 512, [], "f3b7", "M378.1 45C337.6 19.9 292.6 8 248.2 8 165 8 83.8 49.9 36.9 125.9c-71.9 116.6-35.6 269.3 81 341.2s269.3 35.6 341.2-80.9c71.9-116.6 35.6-269.4-81-341.2zm51.8 323.2c-40.4 65.5-110.4 101.5-182 101.5-6.8 0-13.6-.4-20.4-1-9-13.6-19.9-33.3-23.7-42.4-5.7-13.7-27.2-45.6 31.2-67.1 51.7-19.1 176.7-16.5 208.8-17.6-4 9-8.6 17.9-13.9 26.6zm-200.8-86.3c-55.5-1.4-81.7-20.8-58.5-48.2s51.1-40.7 68.9-51.2c17.9-10.5 27.3-33.7-23.6-29.7C87.3 161.5 48.6 252.1 37.6 293c-8.8-49.7-.1-102.7 28.5-149.1C128 43.4 259.6 12.2 360.1 74.1c74.8 46.1 111.2 130.9 99.3 212.7-24.9-.5-179.3-3.6-230.3-4.9zm183.8-54.8c-22.7-6-57 11.3-86.7 27.2-29.7 15.8-31.1 8.2-31.1 8.2s40.2-28.1 50.7-34.5 31.9-14 13.4-24.6c-3.2-1.8-6.7-2.7-10.4-2.7-17.8 0-41.5 18.7-67.5 35.6-31.5 20.5-65.3 31.3-65.3 31.3l169.5-1.6 46.5-23.4s3.6-9.5-19.1-15.5z"], + "joomla": [448, 512, [], "f1aa", "M.6 92.1C.6 58.8 27.4 32 60.4 32c30 0 54.5 21.9 59.2 50.2 32.6-7.6 67.1.6 96.5 30l-44.3 44.3c-20.5-20.5-42.6-16.3-55.4-3.5-14.3 14.3-14.3 37.9 0 52.2l99.5 99.5-44 44.3c-87.7-87.2-49.7-49.7-99.8-99.7-26.8-26.5-35-64.8-24.8-98.9C20.4 144.6.6 120.7.6 92.1zm129.5 116.4l44.3 44.3c10-10 89.7-89.7 99.7-99.8 14.3-14.3 37.6-14.3 51.9 0 12.8 12.8 17 35-3.5 55.4l44 44.3c31.2-31.2 38.5-67.6 28.9-101.2 29.2-4.1 51.9-29.2 51.9-59.5 0-33.2-26.8-60.1-59.8-60.1-30.3 0-55.4 22.5-59.5 51.6-33.8-9.9-71.7-1.5-98.3 25.1-18.3 19.1-71.1 71.5-99.6 99.9zm266.3 152.2c8.2-32.7-.9-68.5-26.3-93.9-11.8-12.2 5 4.7-99.5-99.7l-44.3 44.3 99.7 99.7c14.3 14.3 14.3 37.6 0 51.9-12.8 12.8-35 17-55.4-3.5l-44 44.3c27.6 30.2 68 38.8 102.7 28 5.5 27.4 29.7 48.1 58.9 48.1 33 0 59.8-26.8 59.8-60.1 0-30.2-22.5-55-51.6-59.1zm-84.3-53.1l-44-44.3c-87 86.4-50.4 50.4-99.7 99.8-14.3 14.3-37.6 14.3-51.9 0-13.1-13.4-16.9-35.3 3.2-55.4l-44-44.3c-30.2 30.2-38 65.2-29.5 98.3-26.7 6-46.2 29.9-46.2 58.2C0 453.2 26.8 480 59.8 480c28.6 0 52.5-19.8 58.6-46.7 32.7 8.2 68.5-.6 94.2-26 32.1-32 12.2-12.4 99.5-99.7z"], + "js": [448, 512, [], "f3b8", "M0 32v448h448V32H0zm243.8 349.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z"], + "js-square": [448, 512, [], "f3b9", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM243.8 381.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z"], + "jsfiddle": [576, 512, [], "f1cc", "M510.634 237.462c-4.727-2.621-5.664-5.748-6.381-10.776-2.352-16.488-3.539-33.619-9.097-49.095-35.895-99.957-153.99-143.386-246.849-91.646-27.37 15.25-48.971 36.369-65.493 63.903-3.184-1.508-5.458-2.71-7.824-3.686-30.102-12.421-59.049-10.121-85.331 9.167-25.531 18.737-36.422 44.548-32.676 76.408.355 3.025-1.967 7.621-4.514 9.545-39.712 29.992-56.031 78.065-41.902 124.615 13.831 45.569 57.514 79.796 105.608 81.433 30.291 1.031 60.637.546 90.959.539 84.041-.021 168.09.531 252.12-.48 52.664-.634 96.108-36.873 108.212-87.293 11.54-48.074-11.144-97.3-56.832-122.634zm21.107 156.88c-18.23 22.432-42.343 35.253-71.28 35.65-56.874.781-113.767.23-170.652.23 0 .7-163.028.159-163.728.154-43.861-.332-76.739-19.766-95.175-59.995-18.902-41.245-4.004-90.848 34.186-116.106 9.182-6.073 12.505-11.566 10.096-23.136-5.49-26.361 4.453-47.956 26.42-62.981 22.987-15.723 47.422-16.146 72.034-3.083 10.269 5.45 14.607 11.564 22.198-2.527 14.222-26.399 34.557-46.727 60.671-61.294 97.46-54.366 228.37 7.568 230.24 132.697.122 8.15 2.412 12.428 9.848 15.894 57.56 26.829 74.456 96.122 35.142 144.497zm-87.789-80.499c-5.848 31.157-34.622 55.096-66.666 55.095-16.953-.001-32.058-6.545-44.079-17.705-27.697-25.713-71.141-74.98-95.937-93.387-20.056-14.888-41.99-12.333-60.272 3.782-49.996 44.071 15.859 121.775 67.063 77.188 4.548-3.96 7.84-9.543 12.744-12.844 8.184-5.509 20.766-.884 13.168 10.622-17.358 26.284-49.33 38.197-78.863 29.301-28.897-8.704-48.84-35.968-48.626-70.179 1.225-22.485 12.364-43.06 35.414-55.965 22.575-12.638 46.369-13.146 66.991 2.474C295.68 280.7 320.467 323.97 352.185 343.47c24.558 15.099 54.254 7.363 68.823-17.506 28.83-49.209-34.592-105.016-78.868-63.46-3.989 3.744-6.917 8.932-11.41 11.72-10.975 6.811-17.333-4.113-12.809-10.353 20.703-28.554 50.464-40.44 83.271-28.214 31.429 11.714 49.108 44.366 42.76 78.186z"], + "kaggle": [320, 512, [], "f5fa", "M304.2 501.5L158.4 320.3 298.2 185c2.6-2.7 1.7-10.5-5.3-10.5h-69.2c-3.5 0-7 1.8-10.5 5.3L80.9 313.5V7.5q0-7.5-7.5-7.5H21.5Q14 0 14 7.5v497q0 7.5 7.5 7.5h51.9q7.5 0 7.5-7.5v-109l30.8-29.3 110.5 140.6c3 3.5 6.5 5.3 10.5 5.3h66.9q5.25 0 6-3z"], + "keybase": [448, 512, [], "f4f5", "M286.17 419a18 18 0 1 0 18 18 18 18 0 0 0-18-18zm111.92-147.6c-9.5-14.62-39.37-52.45-87.26-73.71q-9.1-4.06-18.38-7.27a78.43 78.43 0 0 0-47.88-104.13c-12.41-4.1-23.33-6-32.41-5.77-.6-2-1.89-11 9.4-35L198.66 32l-5.48 7.56c-8.69 12.06-16.92 23.55-24.34 34.89a51 51 0 0 0-8.29-1.25c-41.53-2.45-39-2.33-41.06-2.33-50.61 0-50.75 52.12-50.75 45.88l-2.36 36.68c-1.61 27 19.75 50.21 47.63 51.85l8.93.54a214 214 0 0 0-46.29 35.54C14 304.66 14 374 14 429.77v33.64l23.32-29.8a148.6 148.6 0 0 0 14.56 37.56c5.78 10.13 14.87 9.45 19.64 7.33 4.21-1.87 10-6.92 3.75-20.11a178.29 178.29 0 0 1-15.76-53.13l46.82-59.83-24.66 74.11c58.23-42.4 157.38-61.76 236.25-38.59 34.2 10.05 67.45.69 84.74-23.84.72-1 1.2-2.16 1.85-3.22a156.09 156.09 0 0 1 2.8 28.43c0 23.3-3.69 52.93-14.88 81.64-2.52 6.46 1.76 14.5 8.6 15.74 7.42 1.57 15.33-3.1 18.37-11.15C429 443 434 414 434 382.32c0-38.58-13-77.46-35.91-110.92zM142.37 128.58l-15.7-.93-1.39 21.79 13.13.78a93 93 0 0 0 .32 19.57l-22.38-1.34a12.28 12.28 0 0 1-11.76-12.79L107 119c1-12.17 13.87-11.27 13.26-11.32l29.11 1.73a144.35 144.35 0 0 0-7 19.17zm148.42 172.18a10.51 10.51 0 0 1-14.35-1.39l-9.68-11.49-34.42 27a8.09 8.09 0 0 1-11.13-1.08l-15.78-18.64a7.38 7.38 0 0 1 1.34-10.34l34.57-27.18-14.14-16.74-17.09 13.45a7.75 7.75 0 0 1-10.59-1s-3.72-4.42-3.8-4.53a7.38 7.38 0 0 1 1.37-10.34L214 225.19s-18.51-22-18.6-22.14a9.56 9.56 0 0 1 1.74-13.42 10.38 10.38 0 0 1 14.3 1.37l81.09 96.32a9.58 9.58 0 0 1-1.74 13.44zM187.44 419a18 18 0 1 0 18 18 18 18 0 0 0-18-18z"], + "keycdn": [512, 512, [], "f3ba", "M63.8 409.3l60.5-59c32.1 42.8 71.1 66 126.6 67.4 30.5.7 60.3-7 86.4-22.4 5.1 5.3 18.5 19.5 20.9 22-32.2 20.7-69.6 31.1-108.1 30.2-43.3-1.1-84.6-16.7-117.7-44.4.3-.6-38.2 37.5-38.6 37.9 9.5 29.8-13.1 62.4-46.3 62.4C20.7 503.3 0 481.7 0 454.9c0-34.3 33.1-56.6 63.8-45.6zm354.9-252.4c19.1 31.3 29.6 67.4 28.7 104-1.1 44.8-19 87.5-48.6 121 .3.3 23.8 25.2 24.1 25.5 9.6-1.3 19.2 2 25.9 9.1 11.3 12 10.9 30.9-1.1 42.4-12 11.3-30.9 10.9-42.4-1.1-6.7-7-9.4-16.8-7.6-26.3-24.9-26.6-44.4-47.2-44.4-47.2 42.7-34.1 63.3-79.6 64.4-124.2.7-28.9-7.2-57.2-21.1-82.2l22.1-21zM104 53.1c6.7 7 9.4 16.8 7.6 26.3l45.9 48.1c-4.7 3.8-13.3 10.4-22.8 21.3-25.4 28.5-39.6 64.8-40.7 102.9-.7 28.9 6.1 57.2 20 82.4l-22 21.5C72.7 324 63.1 287.9 64.2 250.9c1-44.6 18.3-87.6 47.5-121.1l-25.3-26.4c-9.6 1.3-19.2-2-25.9-9.1-11.3-12-10.9-30.9 1.1-42.4C73.5 40.7 92.2 41 104 53.1zM464.9 8c26 0 47.1 22.4 47.1 48.3S490.9 104 464.9 104c-6.3.1-14-1.1-15.9-1.8l-62.9 59.7c-32.7-43.6-76.7-65.9-126.9-67.2-30.5-.7-60.3 6.8-86.2 22.4l-21.1-22C184.1 74.3 221.5 64 260 64.9c43.3 1.1 84.6 16.7 117.7 44.6l41.1-38.6c-1.5-4.7-2.2-9.6-2.2-14.5C416.5 29.7 438.9 8 464.9 8zM256.7 113.4c5.5 0 10.9.4 16.4 1.1 78.1 9.8 133.4 81.1 123.8 159.1-9.8 78.1-81.1 133.4-159.1 123.8-78.1-9.8-133.4-81.1-123.8-159.2 9.3-72.4 70.1-124.6 142.7-124.8zm-59 119.4c.6 22.7 12.2 41.8 32.4 52.2l-11 51.7h73.7l-11-51.7c20.1-10.9 32.1-29 32.4-52.2-.4-32.8-25.8-57.5-58.3-58.3-32.1.8-57.3 24.8-58.2 58.3zM256 160"], + "kickstarter": [448, 512, [], "f3bb", "M400 480H48c-26.4 0-48-21.6-48-48V80c0-26.4 21.6-48 48-48h352c26.4 0 48 21.6 48 48v352c0 26.4-21.6 48-48 48zM199.6 178.5c0-30.7-17.6-45.1-39.7-45.1-25.8 0-40 19.8-40 44.5v154.8c0 25.8 13.7 45.6 40.5 45.6 21.5 0 39.2-14 39.2-45.6v-41.8l60.6 75.7c12.3 14.9 39 16.8 55.8 0 14.6-15.1 14.8-36.8 4-50.4l-49.1-62.8 40.5-58.7c9.4-13.5 9.5-34.5-5.6-49.1-16.4-15.9-44.6-17.3-61.4 7l-44.8 64.7v-38.8z"], + "kickstarter-k": [384, 512, [], "f3bc", "M147.3 114.4c0-56.2-32.5-82.4-73.4-82.4C26.2 32 0 68.2 0 113.4v283c0 47.3 25.3 83.4 74.9 83.4 39.8 0 72.4-25.6 72.4-83.4v-76.5l112.1 138.3c22.7 27.2 72.1 30.7 103.2 0 27-27.6 27.3-67.4 7.4-92.2l-90.8-114.8 74.9-107.4c17.4-24.7 17.5-63.1-10.4-89.8-30.3-29-82.4-31.6-113.6 12.8L147.3 185v-70.6z"], + "korvue": [446, 512, [], "f42f", "M386.5 34h-327C26.8 34 0 60.8 0 93.5v327.1C0 453.2 26.8 480 59.5 480h327.1c33 0 59.5-26.8 59.5-59.5v-327C446 60.8 419.2 34 386.5 34zM87.1 120.8h96v116l61.8-116h110.9l-81.2 132H87.1v-132zm161.8 272.1l-65.7-113.6v113.6h-96V262.1h191.5l88.6 130.8H248.9z"], + "laravel": [512, 512, [], "f3bd", "M504.4,115.83a5.72,5.72,0,0,0-.28-.68,8.52,8.52,0,0,0-.53-1.25,6,6,0,0,0-.54-.71,9.36,9.36,0,0,0-.72-.94c-.23-.22-.52-.4-.77-.6a8.84,8.84,0,0,0-.9-.68L404.4,55.55a8,8,0,0,0-8,0L300.12,111h0a8.07,8.07,0,0,0-.88.69,7.68,7.68,0,0,0-.78.6,8.23,8.23,0,0,0-.72.93c-.17.24-.39.45-.54.71a9.7,9.7,0,0,0-.52,1.25c-.08.23-.21.44-.28.68a8.08,8.08,0,0,0-.28,2.08V223.18l-80.22,46.19V63.44a7.8,7.8,0,0,0-.28-2.09c-.06-.24-.2-.45-.28-.68a8.35,8.35,0,0,0-.52-1.24c-.14-.26-.37-.47-.54-.72a9.36,9.36,0,0,0-.72-.94,9.46,9.46,0,0,0-.78-.6,9.8,9.8,0,0,0-.88-.68h0L115.61,1.07a8,8,0,0,0-8,0L11.34,56.49h0a6.52,6.52,0,0,0-.88.69,7.81,7.81,0,0,0-.79.6,8.15,8.15,0,0,0-.71.93c-.18.25-.4.46-.55.72a7.88,7.88,0,0,0-.51,1.24,6.46,6.46,0,0,0-.29.67,8.18,8.18,0,0,0-.28,2.1v329.7a8,8,0,0,0,4,6.95l192.5,110.84a8.83,8.83,0,0,0,1.33.54c.21.08.41.2.63.26a7.92,7.92,0,0,0,4.1,0c.2-.05.37-.16.55-.22a8.6,8.6,0,0,0,1.4-.58L404.4,400.09a8,8,0,0,0,4-6.95V287.88l92.24-53.11a8,8,0,0,0,4-7V117.92A8.63,8.63,0,0,0,504.4,115.83ZM111.6,17.28h0l80.19,46.15-80.2,46.18L31.41,63.44Zm88.25,60V278.6l-46.53,26.79-33.69,19.4V123.5l46.53-26.79Zm0,412.78L23.37,388.5V77.32L57.06,96.7l46.52,26.8V338.68a6.94,6.94,0,0,0,.12.9,8,8,0,0,0,.16,1.18h0a5.92,5.92,0,0,0,.38.9,6.38,6.38,0,0,0,.42,1v0a8.54,8.54,0,0,0,.6.78,7.62,7.62,0,0,0,.66.84l0,0c.23.22.52.38.77.58a8.93,8.93,0,0,0,.86.66l0,0,0,0,92.19,52.18Zm8-106.17-80.06-45.32,84.09-48.41,92.26-53.11,80.13,46.13-58.8,33.56Zm184.52,4.57L215.88,490.11V397.8L346.6,323.2l45.77-26.15Zm0-119.13L358.68,250l-46.53-26.79V131.79l33.69,19.4L392.37,178Zm8-105.28-80.2-46.17,80.2-46.16,80.18,46.15Zm8,105.28V178L455,151.19l33.68-19.4v91.39h0Z"], + "lastfm": [512, 512, [], "f202", "M225.8 367.1l-18.8-51s-30.5 34-76.2 34c-40.5 0-69.2-35.2-69.2-91.5 0-72.1 36.4-97.9 72.1-97.9 66.5 0 74.8 53.3 100.9 134.9 18.8 56.9 54 102.6 155.4 102.6 72.7 0 122-22.3 122-80.9 0-72.9-62.7-80.6-115-92.1-25.8-5.9-33.4-16.4-33.4-34 0-19.9 15.8-31.7 41.6-31.7 28.2 0 43.4 10.6 45.7 35.8l58.6-7c-4.7-52.8-41.1-74.5-100.9-74.5-52.8 0-104.4 19.9-104.4 83.9 0 39.9 19.4 65.1 68 76.8 44.9 10.6 79.8 13.8 79.8 45.7 0 21.7-21.1 30.5-61 30.5-59.2 0-83.9-31.1-97.9-73.9-32-96.8-43.6-163-161.3-163C45.7 113.8 0 168.3 0 261c0 89.1 45.7 137.2 127.9 137.2 66.2 0 97.9-31.1 97.9-31.1z"], + "lastfm-square": [448, 512, [], "f203", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-92.2 312.9c-63.4 0-85.4-28.6-97.1-64.1-16.3-51-21.5-84.3-63-84.3-22.4 0-45.1 16.1-45.1 61.2 0 35.2 18 57.2 43.3 57.2 28.6 0 47.6-21.3 47.6-21.3l11.7 31.9s-19.8 19.4-61.2 19.4c-51.3 0-79.9-30.1-79.9-85.8 0-57.9 28.6-92 82.5-92 73.5 0 80.8 41.4 100.8 101.9 8.8 26.8 24.2 46.2 61.2 46.2 24.9 0 38.1-5.5 38.1-19.1 0-19.9-21.8-22-49.9-28.6-30.4-7.3-42.5-23.1-42.5-48 0-40 32.3-52.4 65.2-52.4 37.4 0 60.1 13.6 63 46.6l-36.7 4.4c-1.5-15.8-11-22.4-28.6-22.4-16.1 0-26 7.3-26 19.8 0 11 4.8 17.6 20.9 21.3 32.7 7.1 71.8 12 71.8 57.5.1 36.7-30.7 50.6-76.1 50.6z"], + "leanpub": [576, 512, [], "f212", "M386.539 111.485l15.096 248.955-10.979-.275c-36.232-.824-71.64 8.783-102.657 27.997-31.016-19.214-66.424-27.997-102.657-27.997-45.564 0-82.07 10.705-123.516 27.723L93.117 129.6c28.546-11.803 61.484-18.115 92.226-18.115 41.173 0 73.836 13.175 102.657 42.544 27.723-28.271 59.013-41.721 98.539-42.544zM569.07 448c-25.526 0-47.485-5.215-70.542-15.645-34.31-15.645-69.993-24.978-107.871-24.978-38.977 0-74.934 12.901-102.657 40.623-27.723-27.723-63.68-40.623-102.657-40.623-37.878 0-73.561 9.333-107.871 24.978C55.239 442.236 32.731 448 8.303 448H6.93L49.475 98.859C88.726 76.626 136.486 64 181.775 64 218.83 64 256.984 71.685 288 93.095 319.016 71.685 357.17 64 394.225 64c45.289 0 93.049 12.626 132.3 34.859L569.07 448zm-43.368-44.741l-34.036-280.246c-30.742-13.999-67.248-21.41-101.009-21.41-38.428 0-74.385 12.077-102.657 38.702-28.272-26.625-64.228-38.702-102.657-38.702-33.761 0-70.267 7.411-101.009 21.41L50.298 403.259c47.211-19.487 82.894-33.486 135.045-33.486 37.604 0 70.817 9.606 102.657 29.644 31.84-20.038 65.052-29.644 102.657-29.644 52.151 0 87.834 13.999 135.045 33.486z"], + "less": [640, 512, [], "f41d", "M612.7 219c0-20.5 3.2-32.6 3.2-54.6 0-34.2-12.6-45.2-40.5-45.2h-20.5v24.2h6.3c14.2 0 17.3 4.7 17.3 22.1 0 16.3-1.6 32.6-1.6 51.5 0 24.2 7.9 33.6 23.6 37.3v1.6c-15.8 3.7-23.6 13.1-23.6 37.3 0 18.9 1.6 34.2 1.6 51.5 0 17.9-3.7 22.6-17.3 22.6v.5h-6.3V393h20.5c27.8 0 40.5-11 40.5-45.2 0-22.6-3.2-34.2-3.2-54.6 0-11 6.8-22.6 27.3-23.6v-27.3c-20.5-.7-27.3-12.3-27.3-23.3zm-105.6 32c-15.8-6.3-30.5-10-30.5-20.5 0-7.9 6.3-12.6 17.9-12.6s22.1 4.7 33.6 13.1l21-27.8c-13.1-10-31-20.5-55.2-20.5-35.7 0-59.9 20.5-59.9 49.4 0 25.7 22.6 38.9 41.5 46.2 16.3 6.3 32.1 11.6 32.1 22.1 0 7.9-6.3 13.1-20.5 13.1-13.1 0-26.3-5.3-40.5-16.3l-21 30.5c15.8 13.1 39.9 22.1 59.9 22.1 42 0 64.6-22.1 64.6-51s-22.5-41-43-47.8zm-358.9 59.4c-3.7 0-8.4-3.2-8.4-13.1V119.1H65.2c-28.4 0-41 11-41 45.2 0 22.6 3.2 35.2 3.2 54.6 0 11-6.8 22.6-27.3 23.6v27.3c20.5.5 27.3 12.1 27.3 23.1 0 19.4-3.2 31-3.2 53.6 0 34.2 12.6 45.2 40.5 45.2h20.5v-24.2h-6.3c-13.1 0-17.3-5.3-17.3-22.6s1.6-32.1 1.6-51.5c0-24.2-7.9-33.6-23.6-37.3v-1.6c15.8-3.7 23.6-13.1 23.6-37.3 0-18.9-1.6-34.2-1.6-51.5s3.7-22.1 17.3-22.1H93v150.8c0 32.1 11 53.1 43.1 53.1 10 0 17.9-1.6 23.6-3.7l-5.3-34.2c-3.1.8-4.6.8-6.2.8zM379.9 251c-16.3-6.3-31-10-31-20.5 0-7.9 6.3-12.6 17.9-12.6 11.6 0 22.1 4.7 33.6 13.1l21-27.8c-13.1-10-31-20.5-55.2-20.5-35.7 0-59.9 20.5-59.9 49.4 0 25.7 22.6 38.9 41.5 46.2 16.3 6.3 32.1 11.6 32.1 22.1 0 7.9-6.3 13.1-20.5 13.1-13.1 0-26.3-5.3-40.5-16.3l-20.5 30.5c15.8 13.1 39.9 22.1 59.9 22.1 42 0 64.6-22.1 64.6-51 .1-28.9-22.5-41-43-47.8zm-155-68.8c-38.4 0-75.1 32.1-74.1 82.5 0 52 34.2 82.5 79.3 82.5 18.9 0 39.9-6.8 56.2-17.9l-15.8-27.8c-11.6 6.8-22.6 10-34.2 10-21 0-37.3-10-41.5-34.2H290c.5-3.7 1.6-11 1.6-19.4.6-42.6-22.6-75.7-66.7-75.7zm-30 66.2c3.2-21 15.8-31 30.5-31 18.9 0 26.3 13.1 26.3 31h-56.8z"], + "line": [448, 512, [], "f3c0", "M272.1 204.2v71.1c0 1.8-1.4 3.2-3.2 3.2h-11.4c-1.1 0-2.1-.6-2.6-1.3l-32.6-44v42.2c0 1.8-1.4 3.2-3.2 3.2h-11.4c-1.8 0-3.2-1.4-3.2-3.2v-71.1c0-1.8 1.4-3.2 3.2-3.2H219c1 0 2.1.5 2.6 1.4l32.6 44v-42.2c0-1.8 1.4-3.2 3.2-3.2h11.4c1.8-.1 3.3 1.4 3.3 3.1zm-82-3.2h-11.4c-1.8 0-3.2 1.4-3.2 3.2v71.1c0 1.8 1.4 3.2 3.2 3.2h11.4c1.8 0 3.2-1.4 3.2-3.2v-71.1c0-1.7-1.4-3.2-3.2-3.2zm-27.5 59.6h-31.1v-56.4c0-1.8-1.4-3.2-3.2-3.2h-11.4c-1.8 0-3.2 1.4-3.2 3.2v71.1c0 .9.3 1.6.9 2.2.6.5 1.3.9 2.2.9h45.7c1.8 0 3.2-1.4 3.2-3.2v-11.4c0-1.7-1.4-3.2-3.1-3.2zM332.1 201h-45.7c-1.7 0-3.2 1.4-3.2 3.2v71.1c0 1.7 1.4 3.2 3.2 3.2h45.7c1.8 0 3.2-1.4 3.2-3.2v-11.4c0-1.8-1.4-3.2-3.2-3.2H301v-12h31.1c1.8 0 3.2-1.4 3.2-3.2V234c0-1.8-1.4-3.2-3.2-3.2H301v-12h31.1c1.8 0 3.2-1.4 3.2-3.2v-11.4c-.1-1.7-1.5-3.2-3.2-3.2zM448 113.7V399c-.1 44.8-36.8 81.1-81.7 81H81c-44.8-.1-81.1-36.9-81-81.7V113c.1-44.8 36.9-81.1 81.7-81H367c44.8.1 81.1 36.8 81 81.7zm-61.6 122.6c0-73-73.2-132.4-163.1-132.4-89.9 0-163.1 59.4-163.1 132.4 0 65.4 58 120.2 136.4 130.6 19.1 4.1 16.9 11.1 12.6 36.8-.7 4.1-3.3 16.1 14.1 8.8 17.4-7.3 93.9-55.3 128.2-94.7 23.6-26 34.9-52.3 34.9-81.5z"], + "linkedin": [448, 512, [], "f08c", "M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"], + "linkedin-in": [448, 512, [], "f0e1", "M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z"], + "linode": [448, 512, [], "f2b8", "M437.4 226.3c-.3-.9-.9-1.4-1.4-2l-70-38.6c-.9-.6-2-.6-3.1 0l-58.9 36c-.9.6-1.4 1.7-1.4 2.6l-.9 31.4-24-16c-.9-.6-2.3-.6-3.1 0L240 260.9l-1.4-35.1c0-.9-.6-2-1.4-2.3l-36-24.3 33.7-17.4c1.1-.6 1.7-1.7 1.7-2.9l-5.7-132.3c0-.9-.9-2-1.7-2.6L138.6.3c-.9-.3-1.7-.3-2.3-.3L12.6 38.6c-1.4.6-2.3 2-2 3.7L38 175.4c.9 3.4 34 27.4 38.6 30.9l-26.9 12.9c-1.4.9-2 2.3-1.7 3.4l20.6 100.3c.6 2.9 23.7 23.1 27.1 26.3l-17.4 10.6c-.9.6-1.7 2-1.4 3.1 1.4 7.1 15.4 77.7 16.9 79.1l65.1 69.1c.6.6 1.4.6 2.3.9.6 0 1.1-.3 1.7-.6l83.7-66.9c.9-.6 1.1-1.4 1.1-2.3l-2-46 28 23.7c1.1.9 2.9.9 4 0l66.9-53.4c.9-.6 1.1-1.4 1.1-2.3l2.3-33.4 20.3 14c1.1.9 2.6.9 3.7 0l54.6-43.7c.6-.3 1.1-1.1 1.1-2 .9-6.5 10.3-70.8 9.7-72.8zm-204.8 4.8l4 92.6-90.6 61.2-14-96.6 100.6-57.2zm-7.7-180l5.4 126-106.6 55.4L104 97.7l120.9-46.6zM44 173.1L18 48l79.7 49.4 19.4 132.9L44 173.1zm30.6 147.8L55.7 230l70 58.3 13.7 93.4-64.8-60.8zm24.3 117.7l-13.7-67.1 61.7 60.9 9.7 67.4-57.7-61.2zm64.5 64.5l-10.6-70.9 85.7-61.4 3.1 70-78.2 62.3zm82-115.1c0-3.4.9-22.9-2-25.1l-24.3-20 22.3-14.9c2.3-1.7 1.1-5.7 1.1-8l29.4 22.6.6 68.3-27.1-22.9zm94.3-25.4l-60.9 48.6-.6-68.6 65.7-46.9-4.2 66.9zm27.7-25.7l-19.1-13.4 2-34c.3-.9-.3-2-1.1-2.6L308 259.7l.6-30 64.6 40.6-5.8 66.6zm54.6-39.8l-48.3 38.3 5.7-65.1 51.1-36.6-8.5 63.4z"], + "linux": [448, 512, [], "f17c", "M220.8 123.3c1 .5 1.8 1.7 3 1.7 1.1 0 2.8-.4 2.9-1.5.2-1.4-1.9-2.3-3.2-2.9-1.7-.7-3.9-1-5.5-.1-.4.2-.8.7-.6 1.1.3 1.3 2.3 1.1 3.4 1.7zm-21.9 1.7c1.2 0 2-1.2 3-1.7 1.1-.6 3.1-.4 3.5-1.6.2-.4-.2-.9-.6-1.1-1.6-.9-3.8-.6-5.5.1-1.3.6-3.4 1.5-3.2 2.9.1 1 1.8 1.5 2.8 1.4zM420 403.8c-3.6-4-5.3-11.6-7.2-19.7-1.8-8.1-3.9-16.8-10.5-22.4-1.3-1.1-2.6-2.1-4-2.9-1.3-.8-2.7-1.5-4.1-2 9.2-27.3 5.6-54.5-3.7-79.1-11.4-30.1-31.3-56.4-46.5-74.4-17.1-21.5-33.7-41.9-33.4-72C311.1 85.4 315.7.1 234.8 0 132.4-.2 158 103.4 156.9 135.2c-1.7 23.4-6.4 41.8-22.5 64.7-18.9 22.5-45.5 58.8-58.1 96.7-6 17.9-8.8 36.1-6.2 53.3-6.5 5.8-11.4 14.7-16.6 20.2-4.2 4.3-10.3 5.9-17 8.3s-14 6-18.5 14.5c-2.1 3.9-2.8 8.1-2.8 12.4 0 3.9.6 7.9 1.2 11.8 1.2 8.1 2.5 15.7.8 20.8-5.2 14.4-5.9 24.4-2.2 31.7 3.8 7.3 11.4 10.5 20.1 12.3 17.3 3.6 40.8 2.7 59.3 12.5 19.8 10.4 39.9 14.1 55.9 10.4 11.6-2.6 21.1-9.6 25.9-20.2 12.5-.1 26.3-5.4 48.3-6.6 14.9-1.2 33.6 5.3 55.1 4.1.6 2.3 1.4 4.6 2.5 6.7v.1c8.3 16.7 23.8 24.3 40.3 23 16.6-1.3 34.1-11 48.3-27.9 13.6-16.4 36-23.2 50.9-32.2 7.4-4.5 13.4-10.1 13.9-18.3.4-8.2-4.4-17.3-15.5-29.7zM223.7 87.3c9.8-22.2 34.2-21.8 44-.4 6.5 14.2 3.6 30.9-4.3 40.4-1.6-.8-5.9-2.6-12.6-4.9 1.1-1.2 3.1-2.7 3.9-4.6 4.8-11.8-.2-27-9.1-27.3-7.3-.5-13.9 10.8-11.8 23-4.1-2-9.4-3.5-13-4.4-1-6.9-.3-14.6 2.9-21.8zM183 75.8c10.1 0 20.8 14.2 19.1 33.5-3.5 1-7.1 2.5-10.2 4.6 1.2-8.9-3.3-20.1-9.6-19.6-8.4.7-9.8 21.2-1.8 28.1 1 .8 1.9-.2-5.9 5.5-15.6-14.6-10.5-52.1 8.4-52.1zm-13.6 60.7c6.2-4.6 13.6-10 14.1-10.5 4.7-4.4 13.5-14.2 27.9-14.2 7.1 0 15.6 2.3 25.9 8.9 6.3 4.1 11.3 4.4 22.6 9.3 8.4 3.5 13.7 9.7 10.5 18.2-2.6 7.1-11 14.4-22.7 18.1-11.1 3.6-19.8 16-38.2 14.9-3.9-.2-7-1-9.6-2.1-8-3.5-12.2-10.4-20-15-8.6-4.8-13.2-10.4-14.7-15.3-1.4-4.9 0-9 4.2-12.3zm3.3 334c-2.7 35.1-43.9 34.4-75.3 18-29.9-15.8-68.6-6.5-76.5-21.9-2.4-4.7-2.4-12.7 2.6-26.4v-.2c2.4-7.6.6-16-.6-23.9-1.2-7.8-1.8-15 .9-20 3.5-6.7 8.5-9.1 14.8-11.3 10.3-3.7 11.8-3.4 19.6-9.9 5.5-5.7 9.5-12.9 14.3-18 5.1-5.5 10-8.1 17.7-6.9 8.1 1.2 15.1 6.8 21.9 16l19.6 35.6c9.5 19.9 43.1 48.4 41 68.9zm-1.4-25.9c-4.1-6.6-9.6-13.6-14.4-19.6 7.1 0 14.2-2.2 16.7-8.9 2.3-6.2 0-14.9-7.4-24.9-13.5-18.2-38.3-32.5-38.3-32.5-13.5-8.4-21.1-18.7-24.6-29.9s-3-23.3-.3-35.2c5.2-22.9 18.6-45.2 27.2-59.2 2.3-1.7.8 3.2-8.7 20.8-8.5 16.1-24.4 53.3-2.6 82.4.6-20.7 5.5-41.8 13.8-61.5 12-27.4 37.3-74.9 39.3-112.7 1.1.8 4.6 3.2 6.2 4.1 4.6 2.7 8.1 6.7 12.6 10.3 12.4 10 28.5 9.2 42.4 1.2 6.2-3.5 11.2-7.5 15.9-9 9.9-3.1 17.8-8.6 22.3-15 7.7 30.4 25.7 74.3 37.2 95.7 6.1 11.4 18.3 35.5 23.6 64.6 3.3-.1 7 .4 10.9 1.4 13.8-35.7-11.7-74.2-23.3-84.9-4.7-4.6-4.9-6.6-2.6-6.5 12.6 11.2 29.2 33.7 35.2 59 2.8 11.6 3.3 23.7.4 35.7 16.4 6.8 35.9 17.9 30.7 34.8-2.2-.1-3.2 0-4.2 0 3.2-10.1-3.9-17.6-22.8-26.1-19.6-8.6-36-8.6-38.3 12.5-12.1 4.2-18.3 14.7-21.4 27.3-2.8 11.2-3.6 24.7-4.4 39.9-.5 7.7-3.6 18-6.8 29-32.1 22.9-76.7 32.9-114.3 7.2zm257.4-11.5c-.9 16.8-41.2 19.9-63.2 46.5-13.2 15.7-29.4 24.4-43.6 25.5s-26.5-4.8-33.7-19.3c-4.7-11.1-2.4-23.1 1.1-36.3 3.7-14.2 9.2-28.8 9.9-40.6.8-15.2 1.7-28.5 4.2-38.7 2.6-10.3 6.6-17.2 13.7-21.1.3-.2.7-.3 1-.5.8 13.2 7.3 26.6 18.8 29.5 12.6 3.3 30.7-7.5 38.4-16.3 9-.3 15.7-.9 22.6 5.1 9.9 8.5 7.1 30.3 17.1 41.6 10.6 11.6 14 19.5 13.7 24.6zM173.3 148.7c2 1.9 4.7 4.5 8 7.1 6.6 5.2 15.8 10.6 27.3 10.6 11.6 0 22.5-5.9 31.8-10.8 4.9-2.6 10.9-7 14.8-10.4s5.9-6.3 3.1-6.6-2.6 2.6-6 5.1c-4.4 3.2-9.7 7.4-13.9 9.8-7.4 4.2-19.5 10.2-29.9 10.2s-18.7-4.8-24.9-9.7c-3.1-2.5-5.7-5-7.7-6.9-1.5-1.4-1.9-4.6-4.3-4.9-1.4-.1-1.8 3.7 1.7 6.5z"], + "lyft": [512, 512, [], "f3c3", "M0 81.1h77.8v208.7c0 33.1 15 52.8 27.2 61-12.7 11.1-51.2 20.9-80.2-2.8C7.8 334 0 310.7 0 289V81.1zm485.9 173.5v-22h23.8v-76.8h-26.1c-10.1-46.3-51.2-80.7-100.3-80.7-56.6 0-102.7 46-102.7 102.7V357c16 2.3 35.4-.3 51.7-14 17.1-14 24.8-37.2 24.8-59v-6.7h38.8v-76.8h-38.8v-23.3c0-34.6 52.2-34.6 52.2 0v77.1c0 56.6 46 102.7 102.7 102.7v-76.5c-14.5 0-26.1-11.7-26.1-25.9zm-294.3-99v113c0 15.4-23.8 15.4-23.8 0v-113H91v132.7c0 23.8 8 54 45 63.9 37 9.8 58.2-10.6 58.2-10.6-2.1 13.4-14.5 23.3-34.9 25.3-15.5 1.6-35.2-3.6-45-7.8v70.3c25.1 7.5 51.5 9.8 77.6 4.7 47.1-9.1 76.8-48.4 76.8-100.8V155.1h-77.1v.5z"], + "magento": [448, 512, [], "f3c4", "M445.7 127.9V384l-63.4 36.5V164.7L223.8 73.1 65.2 164.7l.4 255.9L2.3 384V128.1L224.2 0l221.5 127.9zM255.6 420.5L224 438.9l-31.8-18.2v-256l-63.3 36.6.1 255.9 94.9 54.9 95.1-54.9v-256l-63.4-36.6v255.9z"], + "mailchimp": [448, 512, [], "f59e", "M330.61 243.52a36.15 36.15 0 0 1 9.3 0c1.66-3.83 1.95-10.43.45-17.61-2.23-10.67-5.25-17.14-11.48-16.13s-6.47 8.74-4.24 19.42c1.26 6 3.49 11.14 6 14.32zM277.05 252c4.47 2 7.2 3.26 8.28 2.13 1.89-1.94-3.48-9.39-12.12-13.09a31.44 31.44 0 0 0-30.61 3.68c-3 2.18-5.81 5.22-5.41 7.06.85 3.74 10-2.71 22.6-3.48 7-.44 12.8 1.75 17.26 3.71zm-9 5.13c-9.07 1.42-15 6.53-13.47 10.1.9.34 1.17.81 5.21-.81a37 37 0 0 1 18.72-1.95c2.92.34 4.31.52 4.94-.49 1.46-2.22-5.71-8-15.39-6.85zm54.17 17.1c3.38-6.87-10.9-13.93-14.3-7s10.92 13.88 14.32 6.97zm15.66-20.47c-7.66-.13-7.95 15.8-.26 15.93s7.98-15.81.28-15.96zm-218.79 78.9c-1.32.31-6 1.45-8.47-2.35-5.2-8 11.11-20.38 3-35.77-9.1-17.47-27.82-13.54-35.05-5.54-8.71 9.6-8.72 23.54-5 24.08 4.27.57 4.08-6.47 7.38-11.63a12.83 12.83 0 0 1 17.85-3.72c11.59 7.59 1.37 17.76 2.28 28.62 1.39 16.68 18.42 16.37 21.58 9a2.08 2.08 0 0 0-.2-2.33c.03.89.68-1.3-3.35-.39zm299.72-17.07c-3.35-11.73-2.57-9.22-6.78-20.52 2.45-3.67 15.29-24-3.07-43.25-10.4-10.92-33.9-16.54-41.1-18.54-1.5-11.39 4.65-58.7-21.52-83 20.79-21.55 33.76-45.29 33.73-65.65-.06-39.16-48.15-51-107.42-26.47l-12.55 5.33c-.06-.05-22.71-22.27-23.05-22.57C169.5-18-41.77 216.81 25.78 273.85l14.76 12.51a72.49 72.49 0 0 0-4.1 33.5c3.36 33.4 36 60.42 67.53 60.38 57.73 133.06 267.9 133.28 322.29 3 1.74-4.47 9.11-24.61 9.11-42.38s-10.09-25.27-16.53-25.27zm-316 48.16c-22.82-.61-47.46-21.15-49.91-45.51-6.17-61.31 74.26-75.27 84-12.33 4.54 29.64-4.67 58.49-34.12 57.81zM84.3 249.55C69.14 252.5 55.78 261.09 47.6 273c-4.88-4.07-14-12-15.59-15-13.01-24.85 14.24-73 33.3-100.21C112.42 90.56 186.19 39.68 220.36 48.91c5.55 1.57 23.94 22.89 23.94 22.89s-34.15 18.94-65.8 45.35c-42.66 32.85-74.89 80.59-94.2 132.4zM323.18 350.7s-35.74 5.3-69.51-7.07c6.21-20.16 27 6.1 96.4-13.81 15.29-4.38 35.37-13 51-25.35a102.85 102.85 0 0 1 7.12 24.28c3.66-.66 14.25-.52 11.44 18.1-3.29 19.87-11.73 36-25.93 50.84A106.86 106.86 0 0 1 362.55 421a132.45 132.45 0 0 1-20.34 8.58c-53.51 17.48-108.3-1.74-126-43a66.33 66.33 0 0 1-3.55-9.74c-7.53-27.2-1.14-59.83 18.84-80.37 1.23-1.31 2.48-2.85 2.48-4.79a8.45 8.45 0 0 0-1.92-4.54c-7-10.13-31.19-27.4-26.33-60.83 3.5-24 24.49-40.91 44.07-39.91l5 .29c8.48.5 15.89 1.59 22.88 1.88 11.69.5 22.2-1.19 34.64-11.56 4.2-3.5 7.57-6.54 13.26-7.51a17.45 17.45 0 0 1 13.6 2.24c10 6.64 11.4 22.73 11.92 34.49.29 6.72 1.1 23 1.38 27.63.63 10.67 3.43 12.17 9.11 14 3.19 1.05 6.15 1.83 10.51 3.06 13.21 3.71 21 7.48 26 12.31a16.38 16.38 0 0 1 4.74 9.29c1.56 11.37-8.82 25.4-36.31 38.16-46.71 21.68-93.68 14.45-100.48 13.68-20.15-2.71-31.63 23.32-19.55 41.15 22.64 33.41 122.4 20 151.37-21.35.69-1 .12-1.59-.73-1-41.77 28.58-97.06 38.21-128.46 26-4.77-1.85-14.73-6.44-15.94-16.67 43.6 13.49 71 .74 71 .74s2.03-2.79-.56-2.53zm-68.47-5.7zm-83.4-187.5c16.74-19.35 37.36-36.18 55.83-45.63a.73.73 0 0 1 1 1c-1.46 2.66-4.29 8.34-5.19 12.65a.75.75 0 0 0 1.16.79c11.49-7.83 31.48-16.22 49-17.3a.77.77 0 0 1 .52 1.38 41.86 41.86 0 0 0-7.71 7.74.75.75 0 0 0 .59 1.19c12.31.09 29.66 4.4 41 10.74.76.43.22 1.91-.64 1.72-69.55-15.94-123.08 18.53-134.5 26.83a.76.76 0 0 1-1-1.12z"], + "mandalorian": [448, 512, [], "f50f", "M232.27 511.89c-1-3.26-1.69-15.83-1.39-24.58.55-15.89 1-24.72 1.4-28.76.64-6.2 2.87-20.72 3.28-21.38.6-1 .4-27.87-.24-33.13-.31-2.58-.63-11.9-.69-20.73-.13-16.47-.53-20.12-2.73-24.76-1.1-2.32-1.23-3.84-1-11.43a92.38 92.38 0 0 0-.34-12.71c-2-13-3.46-27.7-3.25-33.9s.43-7.15 2.06-9.67c3.05-4.71 6.51-14 8.62-23.27 2.26-9.86 3.88-17.18 4.59-20.74a109.54 109.54 0 0 1 4.42-15.05c2.27-6.25 2.49-15.39.37-15.39-.3 0-1.38 1.22-2.41 2.71s-4.76 4.8-8.29 7.36c-8.37 6.08-11.7 9.39-12.66 12.58s-1 7.23-.16 7.76c.34.21 1.29 2.4 2.11 4.88a28.83 28.83 0 0 1 .72 15.36c-.39 1.77-1 5.47-1.46 8.23s-1 6.46-1.25 8.22a9.85 9.85 0 0 1-1.55 4.26c-1 1-1.14.91-2.05-.53a14.87 14.87 0 0 1-1.44-4.75c-.25-1.74-1.63-7.11-3.08-11.93-3.28-10.9-3.52-16.15-1-21a14.24 14.24 0 0 0 1.67-4.61c0-2.39-2.2-5.32-7.41-9.89-7-6.18-8.63-7.92-10.23-11.3-1.71-3.6-3.06-4.06-4.54-1.54-1.78 3-2.6 9.11-3 22l-.34 12.19 2 2.25c3.21 3.7 12.07 16.45 13.78 19.83 3.41 6.74 4.34 11.69 4.41 23.56s.95 22.75 2 24.71c.36.66.51 1.35.34 1.52s.41 2.09 1.29 4.27a38.14 38.14 0 0 1 2.06 9 91 91 0 0 0 1.71 10.37c2.23 9.56 2.77 14.08 2.39 20.14-.2 3.27-.53 11.07-.73 17.32-1.31 41.76-1.85 58-2 61.21-.12 2-.39 11.51-.6 21.07-.36 16.3-1.3 27.37-2.42 28.65-.64.73-8.07-4.91-12.52-9.49-3.75-3.87-4-4.79-2.83-9.95.7-3 2.26-18.29 3.33-32.62.36-4.78.81-10.5 1-12.71.83-9.37 1.66-20.35 2.61-34.78.56-8.46 1.33-16.44 1.72-17.73s.89-9.89 1.13-19.11l.43-16.77-2.26-4.3c-1.72-3.28-4.87-6.94-13.22-15.34-6-6.07-11.84-12.3-12.91-13.85l-1.95-2.81.75-10.9c1.09-15.71 1.1-48.57 0-59.06l-.89-8.7-3.28-4.52c-5.86-8.08-5.8-7.75-6.22-33.27-.1-6.07-.38-11.5-.63-12.06-.83-1.87-3.05-2.66-8.54-3.05-8.86-.62-11-1.9-23.85-14.55-6.15-6-12.34-12-13.75-13.19-2.81-2.42-2.79-2-.56-9.63l1.35-4.65-1.69-3a32.22 32.22 0 0 0-2.59-4.07c-1.33-1.51-5.5-10.89-6-13.49a4.24 4.24 0 0 1 .87-3.9c2.23-2.86 3.4-5.68 4.45-10.73 2.33-11.19 7.74-26.09 10.6-29.22 3.18-3.47 7.7-1 9.41 5 1.34 4.79 1.37 9.79.1 18.55a101.2 101.2 0 0 0-1 11.11c0 4 .19 4.69 2.25 7.39 3.33 4.37 7.73 7.41 15.2 10.52a18.67 18.67 0 0 1 4.72 2.85c11.17 10.72 18.62 16.18 22.95 16.85 5.18.8 8 4.54 10 13.39 1.31 5.65 4 11.14 5.46 11.14a9.38 9.38 0 0 0 3.33-1.39c2-1.22 2.25-1.73 2.25-4.18a132.88 132.88 0 0 0-2-17.84c-.37-1.66-.78-4.06-.93-5.35s-.61-3.85-1-5.69c-2.55-11.16-3.65-15.46-4.1-16-1.55-2-4.08-10.2-4.93-15.92-1.64-11.11-4-14.23-12.91-17.39A43.15 43.15 0 0 1 165.24 78c-1.15-1-4-3.22-6.35-5.06s-4.41-3.53-4.6-3.76a22.7 22.7 0 0 0-2.69-2c-6.24-4.22-8.84-7-11.26-12l-2.44-5-.22-13-.22-13 6.91-6.55c3.95-3.75 8.48-7.35 10.59-8.43 3.31-1.69 4.45-1.89 11.37-2 8.53-.19 10.12 0 11.66 1.56s1.36 6.4-.29 8.5a6.66 6.66 0 0 0-1.34 2.32c0 .58-2.61 4.91-5.42 9a30.39 30.39 0 0 0-2.37 6.82c20.44 13.39 21.55 3.77 14.07 29L194 66.92c3.11-8.66 6.47-17.26 8.61-26.22.29-7.63-12-4.19-15.4-8.68-2.33-5.93 3.13-14.18 6.06-19.2 1.6-2.34 6.62-4.7 8.82-4.15.88.22 4.16-.35 7.37-1.28a45.3 45.3 0 0 1 7.55-1.68 29.57 29.57 0 0 0 6-1.29c3.65-1.11 4.5-1.17 6.35-.4a29.54 29.54 0 0 0 5.82 1.36 18.18 18.18 0 0 1 6 1.91 22.67 22.67 0 0 0 5 2.17c2.51.68 3 .57 7.05-1.67l4.35-2.4L268.32 5c10.44-.4 10.81-.47 15.26-2.68L288.16 0l2.46 1.43c1.76 1 3.14 2.73 4.85 6 2.36 4.51 2.38 4.58 1.37 7.37-.88 2.44-.89 3.3-.1 6.39a35.76 35.76 0 0 0 2.1 5.91 13.55 13.55 0 0 1 1.31 4c.31 4.33 0 5.3-2.41 6.92-2.17 1.47-7 7.91-7 9.34a14.77 14.77 0 0 1-1.07 3c-5 11.51-6.76 13.56-14.26 17-9.2 4.2-12.3 5.19-16.21 5.19-3.1 0-4 .25-4.54 1.26a18.33 18.33 0 0 1-4.09 3.71 13.62 13.62 0 0 0-4.38 4.78 5.89 5.89 0 0 1-2.49 2.91 6.88 6.88 0 0 0-2.45 1.71 67.62 67.62 0 0 1-7 5.38c-3.33 2.34-6.87 5-7.87 6A7.27 7.27 0 0 1 224 100a5.76 5.76 0 0 0-2.13 1.65c-1.31 1.39-1.49 2.11-1.14 4.6a36.45 36.45 0 0 0 1.42 5.88c1.32 3.8 1.31 7.86 0 10.57s-.89 6.65 1.35 9.59c2 2.63 2.16 4.56.71 8.84a33.45 33.45 0 0 0-1.06 8.91c0 4.88.22 6.28 1.46 8.38s1.82 2.48 3.24 2.32c2-.23 2.3-1.05 4.71-12.12 2.18-10 3.71-11.92 13.76-17.08 2.94-1.51 7.46-4 10-5.44s6.79-3.69 9.37-4.91a40.09 40.09 0 0 0 15.22-11.67c7.11-8.79 10-16.22 12.85-33.3a18.37 18.37 0 0 1 2.86-7.73 20.39 20.39 0 0 0 2.89-7.31c1-5.3 2.85-9.08 5.58-11.51 4.7-4.18 6-1.09 4.59 10.87-.46 3.86-1.1 10.33-1.44 14.38l-.61 7.36 4.45 4.09 4.45 4.09.11 8.42c.06 4.63.47 9.53.92 10.89l.82 2.47-6.43 6.28c-8.54 8.33-12.88 13.93-16.76 21.61-1.77 3.49-3.74 7.11-4.38 8-2.18 3.11-6.46 13-8.76 20.26l-2.29 7.22-7 6.49c-3.83 3.57-8 7.25-9.17 8.17-3.05 2.32-4.26 5.15-4.26 10a14.62 14.62 0 0 0 1.59 7.26 42 42 0 0 1 2.09 4.83 9.28 9.28 0 0 0 1.57 2.89c1.4 1.59 1.92 16.12.83 23.22-.68 4.48-3.63 12-4.7 12-1.79 0-4.06 9.27-5.07 20.74-.18 2-.62 5.94-1 8.7s-1 10-1.35 16.05c-.77 12.22-.19 18.77 2 23.15 3.41 6.69.52 12.69-11 22.84l-4 3.49.07 5.19a40.81 40.81 0 0 0 1.14 8.87c4.61 16 4.73 16.92 4.38 37.13-.46 26.4-.26 40.27.63 44.15a61.31 61.31 0 0 1 1.08 7c.17 2 .66 5.33 1.08 7.36.47 2.26.78 11 .79 22.74v19.06l-1.81 2.63c-2.71 3.91-15.11 13.54-15.49 12.29zm29.53-45.11c-.18-.3-.33-6.87-.33-14.59 0-14.06-.89-27.54-2.26-34.45-.4-2-.81-9.7-.9-17.06-.15-11.93-1.4-24.37-2.64-26.38-.66-1.07-3-17.66-3-21.3 0-4.23 1-6 5.28-9.13s4.86-3.14 5.48-.72c.28 1.1 1.45 5.62 2.6 10 3.93 15.12 4.14 16.27 4.05 21.74-.1 5.78-.13 6.13-1.74 17.73-1 7.07-1.17 12.39-1 28.43.17 19.4-.64 35.73-2 41.27-.71 2.78-2.8 5.48-3.43 4.43zm-71-37.58a101 101 0 0 1-1.73-10.79 100.5 100.5 0 0 0-1.73-10.79 37.53 37.53 0 0 1-1-6.49c-.31-3.19-.91-7.46-1.33-9.48-1-4.79-3.35-19.35-3.42-21.07 0-.74-.34-4.05-.7-7.36-.67-6.21-.84-27.67-.22-28.29 1-1 6.63 2.76 11.33 7.43l5.28 5.25-.45 6.47c-.25 3.56-.6 10.23-.78 14.83s-.49 9.87-.67 11.71-.61 9.36-.94 16.72c-.79 17.41-1.94 31.29-2.65 32a.62.62 0 0 1-1-.14zm-87.18-266.59c21.07 12.79 17.84 14.15 28.49 17.66 13 4.29 18.87 7.13 23.15 16.87C111.6 233.28 86.25 255 78.55 268c-31 52-6 101.59 62.75 87.21-14.18 29.23-78 28.63-98.68-4.9-24.68-39.95-22.09-118.3 61-187.66zm210.79 179c56.66 6.88 82.32-37.74 46.54-89.23 0 0-26.87-29.34-64.28-68 3-15.45 9.49-32.12 30.57-53.82 89.2 63.51 92 141.61 92.46 149.36 4.3 70.64-78.7 91.18-105.29 61.71z"], + "markdown": [640, 512, [], "f60f", "M593.8 59.1H46.2C20.7 59.1 0 79.8 0 105.2v301.5c0 25.5 20.7 46.2 46.2 46.2h547.7c25.5 0 46.2-20.7 46.1-46.1V105.2c0-25.4-20.7-46.1-46.2-46.1zM338.5 360.6H277v-120l-61.5 76.9-61.5-76.9v120H92.3V151.4h61.5l61.5 76.9 61.5-76.9h61.5v209.2zm135.3 3.1L381.5 256H443V151.4h61.5V256H566z"], + "mastodon": [448, 512, [], "f4f6", "M433 179.11c0-97.2-63.71-125.7-63.71-125.7-62.52-28.7-228.56-28.4-290.48 0 0 0-63.72 28.5-63.72 125.7 0 115.7-6.6 259.4 105.63 289.1 40.51 10.7 75.32 13 103.33 11.4 50.81-2.8 79.32-18.1 79.32-18.1l-1.7-36.9s-36.31 11.4-77.12 10.1c-40.41-1.4-83-4.4-89.63-54a102.54 102.54 0 0 1-.9-13.9c85.63 20.9 158.65 9.1 178.75 6.7 56.12-6.7 105-41.3 111.23-72.9 9.8-49.8 9-121.5 9-121.5zm-75.12 125.2h-46.63v-114.2c0-49.7-64-51.6-64 6.9v62.5h-46.33V197c0-58.5-64-56.6-64-6.9v114.2H90.19c0-122.1-5.2-147.9 18.41-175 25.9-28.9 79.82-30.8 103.83 6.1l11.6 19.5 11.6-19.5c24.11-37.1 78.12-34.8 103.83-6.1 23.71 27.3 18.4 53 18.4 175z"], + "maxcdn": [512, 512, [], "f136", "M461.1 442.7h-97.4L415.6 200c2.3-10.2.9-19.5-4.4-25.7-5-6.1-13.7-9.6-24.2-9.6h-49.3l-59.5 278h-97.4l59.5-278h-83.4l-59.5 278H0l59.5-278-44.6-95.4H387c39.4 0 75.3 16.3 98.3 44.9 23.3 28.6 31.8 67.4 23.6 105.9l-47.8 222.6z"], + "mdb": [576, 512, [], "f8ca", "M17.37 160.41L7 352h43.91l5.59-79.83L84.43 352h44.71l25.54-77.43 4.79 77.43H205l-12.79-191.59H146.7L106 277.74 63.67 160.41zm281 0h-47.9V352h47.9s95 .8 94.2-95.79c-.78-94.21-94.18-95.78-94.18-95.78zm-1.2 146.46V204.78s46 4.27 46.8 50.57-46.78 51.54-46.78 51.54zm238.29-74.24a56.16 56.16 0 0 0 8-38.31c-5.34-35.76-55.08-34.32-55.08-34.32h-51.9v191.58H482s87 4.79 87-63.85c0-43.14-33.52-55.08-33.52-55.08zm-51.9-31.94s13.57-1.59 16 9.59c1.43 6.66-4 12-4 12h-12v-21.57zm-.1 109.46l.1-24.92V267h.08s41.58-4.73 41.19 22.43c-.33 25.65-41.35 20.74-41.35 20.74z"], + "medapps": [320, 512, [], "f3c6", "M118.3 238.4c3.5-12.5 6.9-33.6 13.2-33.6 8.3 1.8 9.6 23.4 18.6 36.6 4.6-23.5 5.3-85.1 14.1-86.7 9-.7 19.7 66.5 22 77.5 9.9 4.1 48.9 6.6 48.9 6.6 1.9 7.3-24 7.6-40 7.8-4.6 14.8-5.4 27.7-11.4 28-4.7.2-8.2-28.8-17.5-49.6l-9.4 65.5c-4.4 13-15.5-22.5-21.9-39.3-3.3-.1-62.4-1.6-47.6-7.8l31-5zM228 448c21.2 0 21.2-32 0-32H92c-21.2 0-21.2 32 0 32h136zm-24 64c21.2 0 21.2-32 0-32h-88c-21.2 0-21.2 32 0 32h88zm34.2-141.5c3.2-18.9 5.2-36.4 11.9-48.8 7.9-14.7 16.1-28.1 24-41 24.6-40.4 45.9-75.2 45.9-125.5C320 69.6 248.2 0 160 0S0 69.6 0 155.2c0 50.2 21.3 85.1 45.9 125.5 7.9 12.9 16 26.3 24 41 6.7 12.5 8.7 29.8 11.9 48.9 3.5 21 36.1 15.7 32.6-5.1-3.6-21.7-5.6-40.7-15.3-58.6C66.5 246.5 33 211.3 33 155.2 33 87.3 90 32 160 32s127 55.3 127 123.2c0 56.1-33.5 91.3-66.1 151.6-9.7 18-11.7 37.4-15.3 58.6-3.4 20.6 29 26.4 32.6 5.1z"], + "medium": [448, 512, [], "f23a", "M0 32v448h448V32H0zm372.2 106.1l-24 23c-2.1 1.6-3.1 4.2-2.7 6.7v169.3c-.4 2.6.6 5.2 2.7 6.7l23.5 23v5.1h-118V367l24.3-23.6c2.4-2.4 2.4-3.1 2.4-6.7V199.8l-67.6 171.6h-9.1L125 199.8v115c-.7 4.8 1 9.7 4.4 13.2l31.6 38.3v5.1H71.2v-5.1l31.6-38.3c3.4-3.5 4.9-8.4 4.1-13.2v-133c.4-3.7-1-7.3-3.8-9.8L75 138.1V133h87.3l67.4 148L289 133.1h83.2v5z"], + "medium-m": [512, 512, [], "f3c7", "M71.5 142.3c.6-5.9-1.7-11.8-6.1-15.8L20.3 72.1V64h140.2l108.4 237.7L364.2 64h133.7v8.1l-38.6 37c-3.3 2.5-5 6.7-4.3 10.8v272c-.7 4.1 1 8.3 4.3 10.8l37.7 37v8.1H307.3v-8.1l39.1-37.9c3.8-3.8 3.8-5 3.8-10.8V171.2L241.5 447.1h-14.7L100.4 171.2v184.9c-1.1 7.8 1.5 15.6 7 21.2l50.8 61.6v8.1h-144v-8L65 377.3c5.4-5.6 7.9-13.5 6.5-21.2V142.3z"], + "medrt": [544, 512, [], "f3c8", "M113.7 256c0 121.8 83.9 222.8 193.5 241.1-18.7 4.5-38.2 6.9-58.2 6.9C111.4 504 0 393 0 256S111.4 8 248.9 8c20.1 0 39.6 2.4 58.2 6.9C197.5 33.2 113.7 134.2 113.7 256m297.4 100.3c-77.7 55.4-179.6 47.5-240.4-14.6 5.5 14.1 12.7 27.7 21.7 40.5 61.6 88.2 182.4 109.3 269.7 47 87.3-62.3 108.1-184.3 46.5-272.6-9-12.9-19.3-24.3-30.5-34.2 37.4 78.8 10.7 178.5-67 233.9m-218.8-244c-1.4 1-2.7 2.1-4 3.1 64.3-17.8 135.9 4 178.9 60.5 35.7 47 42.9 106.6 24.4 158 56.7-56.2 67.6-142.1 22.3-201.8-50-65.5-149.1-74.4-221.6-19.8M296 224c-4.4 0-8-3.6-8-8v-40c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v40c0 4.4-3.6 8-8 8h-40c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h40c4.4 0 8 3.6 8 8v40c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-40c0-4.4 3.6-8 8-8h40c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8h-40z"], + "meetup": [512, 512, [], "f2e0", "M99 414.3c1.1 5.7-2.3 11.1-8 12.3-5.4 1.1-10.9-2.3-12-8-1.1-5.4 2.3-11.1 7.7-12.3 5.4-1.2 11.1 2.3 12.3 8zm143.1 71.4c-6.3 4.6-8 13.4-3.7 20 4.6 6.6 13.4 8.3 20 3.7 6.3-4.6 8-13.4 3.4-20-4.2-6.5-13.1-8.3-19.7-3.7zm-86-462.3c6.3-1.4 10.3-7.7 8.9-14-1.1-6.6-7.4-10.6-13.7-9.1-6.3 1.4-10.3 7.7-9.1 14 1.4 6.6 7.6 10.6 13.9 9.1zM34.4 226.3c-10-6.9-23.7-4.3-30.6 6-6.9 10-4.3 24 5.7 30.9 10 7.1 23.7 4.6 30.6-5.7 6.9-10.4 4.3-24.1-5.7-31.2zm272-170.9c10.6-6.3 13.7-20 7.7-30.3-6.3-10.6-19.7-14-30-7.7s-13.7 20-7.4 30.6c6 10.3 19.4 13.7 29.7 7.4zm-191.1 58c7.7-5.4 9.4-16 4.3-23.7s-15.7-9.4-23.1-4.3c-7.7 5.4-9.4 16-4.3 23.7 5.1 7.8 15.6 9.5 23.1 4.3zm372.3 156c-7.4 1.7-12.3 9.1-10.6 16.9 1.4 7.4 8.9 12.3 16.3 10.6 7.4-1.4 12.3-8.9 10.6-16.6-1.5-7.4-8.9-12.3-16.3-10.9zm39.7-56.8c-1.1-5.7-6.6-9.1-12-8-5.7 1.1-9.1 6.9-8 12.6 1.1 5.4 6.6 9.1 12.3 8 5.4-1.5 9.1-6.9 7.7-12.6zM447 138.9c-8.6 6-10.6 17.7-4.9 26.3 5.7 8.6 17.4 10.6 26 4.9 8.3-6 10.3-17.7 4.6-26.3-5.7-8.7-17.4-10.9-25.7-4.9zm-6.3 139.4c26.3 43.1 15.1 100-26.3 129.1-17.4 12.3-37.1 17.7-56.9 17.1-12 47.1-69.4 64.6-105.1 32.6-1.1.9-2.6 1.7-3.7 2.9-39.1 27.1-92.3 17.4-119.4-22.3-9.7-14.3-14.6-30.6-15.1-46.9-65.4-10.9-90-94-41.1-139.7-28.3-46.9.6-107.4 53.4-114.9C151.6 70 234.1 38.6 290.1 82c67.4-22.3 136.3 29.4 130.9 101.1 41.1 12.6 52.8 66.9 19.7 95.2zm-70 74.3c-3.1-20.6-40.9-4.6-43.1-27.1-3.1-32 43.7-101.1 40-128-3.4-24-19.4-29.1-33.4-29.4-13.4-.3-16.9 2-21.4 4.6-2.9 1.7-6.6 4.9-11.7-.3-6.3-6-11.1-11.7-19.4-12.9-12.3-2-17.7 2-26.6 9.7-3.4 2.9-12 12.9-20 9.1-3.4-1.7-15.4-7.7-24-11.4-16.3-7.1-40 4.6-48.6 20-12.9 22.9-38 113.1-41.7 125.1-8.6 26.6 10.9 48.6 36.9 47.1 11.1-.6 18.3-4.6 25.4-17.4 4-7.4 41.7-107.7 44.6-112.6 2-3.4 8.9-8 14.6-5.1 5.7 3.1 6.9 9.4 6 15.1-1.1 9.7-28 70.9-28.9 77.7-3.4 22.9 26.9 26.6 38.6 4 3.7-7.1 45.7-92.6 49.4-98.3 4.3-6.3 7.4-8.3 11.7-8 3.1 0 8.3.9 7.1 10.9-1.4 9.4-35.1 72.3-38.9 87.7-4.6 20.6 6.6 41.4 24.9 50.6 11.4 5.7 62.5 15.7 58.5-11.1zm5.7 92.3c-10.3 7.4-12.9 22-5.7 32.6 7.1 10.6 21.4 13.1 32 6 10.6-7.4 13.1-22 6-32.6-7.4-10.6-21.7-13.5-32.3-6z"], + "megaport": [496, 512, [], "f5a3", "M214.5 209.6v66.2l33.5 33.5 33.3-33.3v-66.4l-33.4-33.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm145.1 414.4L367 441.6l-26-19.2v-65.5l-33.4-33.4-33.4 33.4v65.5L248 441.6l-26.1-19.2v-65.5l-33.4-33.4-33.5 33.4v65.5l-26.1 19.2-26.1-19.2v-87l59.5-59.5V188l59.5-59.5V52.9l26.1-19.2L274 52.9v75.6l59.5 59.5v87.6l59.7 59.7v87.1z"], + "mendeley": [640, 512, [], "f7b3", "M624.6 325.2c-12.3-12.4-29.7-19.2-48.4-17.2-43.3-1-49.7-34.9-37.5-98.8 22.8-57.5-14.9-131.5-87.4-130.8-77.4.7-81.7 82-130.9 82-48.1 0-54-81.3-130.9-82-72.9-.8-110.1 73.3-87.4 130.8 12.2 63.9 5.8 97.8-37.5 98.8-21.2-2.3-37 6.5-53 22.5-19.9 19.7-19.3 94.8 42.6 102.6 47.1 5.9 81.6-42.9 61.2-87.8-47.3-103.7 185.9-106.1 146.5-8.2-.1.1-.2.2-.3.4-26.8 42.8 6.8 97.4 58.8 95.2 52.1 2.1 85.4-52.6 58.8-95.2-.1-.2-.2-.3-.3-.4-39.4-97.9 193.8-95.5 146.5 8.2-4.6 10-6.7 21.3-5.7 33 4.9 53.4 68.7 74.1 104.9 35.2 17.8-14.8 23.1-65.6 0-88.3zm-303.9-19.1h-.6c-43.4 0-62.8-37.5-62.8-62.8 0-34.7 28.2-62.8 62.8-62.8h.6c34.7 0 62.8 28.1 62.8 62.8 0 25-19.2 62.8-62.8 62.8z"], + "microblog": [448, 512, [], "e01a", "M399.36,362.23c29.49-34.69,47.1-78.34,47.1-125.79C446.46,123.49,346.86,32,224,32S1.54,123.49,1.54,236.44,101.14,440.87,224,440.87a239.28,239.28,0,0,0,79.44-13.44,7.18,7.18,0,0,1,8.12,2.56c18.58,25.09,47.61,42.74,79.89,49.92a4.42,4.42,0,0,0,5.22-3.43,4.37,4.37,0,0,0-.85-3.62,87,87,0,0,1,3.69-110.69ZM329.52,212.4l-57.3,43.49L293,324.75a6.5,6.5,0,0,1-9.94,7.22L224,290.92,164.94,332a6.51,6.51,0,0,1-9.95-7.22l20.79-68.86-57.3-43.49a6.5,6.5,0,0,1,3.8-11.68l71.88-1.51,23.66-67.92a6.5,6.5,0,0,1,12.28,0l23.66,67.92,71.88,1.51a6.5,6.5,0,0,1,3.88,11.68Z"], + "microsoft": [448, 512, [], "f3ca", "M0 32h214.6v214.6H0V32zm233.4 0H448v214.6H233.4V32zM0 265.4h214.6V480H0V265.4zm233.4 0H448V480H233.4V265.4z"], + "mix": [448, 512, [], "f3cb", "M0 64v348.9c0 56.2 88 58.1 88 0V174.3c7.9-52.9 88-50.4 88 6.5v175.3c0 57.9 96 58 96 0V240c5.3-54.7 88-52.5 88 4.3v23.8c0 59.9 88 56.6 88 0V64H0z"], + "mixcloud": [640, 512, [], "f289", "M424.43 219.729C416.124 134.727 344.135 68 256.919 68c-72.266 0-136.224 46.516-159.205 114.074-54.545 8.029-96.63 54.822-96.63 111.582 0 62.298 50.668 112.966 113.243 112.966h289.614c52.329 0 94.969-42.362 94.969-94.693 0-45.131-32.118-83.063-74.48-92.2zm-20.489 144.53H114.327c-39.04 0-70.881-31.564-70.881-70.604s31.841-70.604 70.881-70.604c18.827 0 36.548 7.475 49.838 20.766 19.963 19.963 50.133-10.227 30.18-30.18-14.675-14.398-32.672-24.365-52.053-29.349 19.935-44.3 64.79-73.926 114.628-73.926 69.496 0 125.979 56.483 125.979 125.702 0 13.568-2.215 26.857-6.369 39.594-8.943 27.517 32.133 38.939 40.147 13.29 2.769-8.306 4.984-16.889 6.369-25.472 19.381 7.476 33.502 26.303 33.502 48.453 0 28.795-23.535 52.33-52.607 52.33zm235.069-52.33c0 44.024-12.737 86.386-37.102 122.657-4.153 6.092-10.798 9.414-17.72 9.414-16.317 0-27.127-18.826-17.443-32.949 19.381-29.349 29.903-63.682 29.903-99.122s-10.521-69.773-29.903-98.845c-15.655-22.831 19.361-47.24 35.163-23.534 24.366 35.993 37.102 78.356 37.102 122.379zm-70.88 0c0 31.565-9.137 62.021-26.857 88.325-4.153 6.091-10.798 9.136-17.72 9.136-17.201 0-27.022-18.979-17.443-32.948 13.013-19.104 19.658-41.255 19.658-64.513 0-22.981-6.645-45.408-19.658-64.512-15.761-22.986 19.008-47.095 35.163-23.535 17.719 26.026 26.857 56.483 26.857 88.047z"], + "mixer": [512, 512, [], "e056", "M114.57,76.07a45.71,45.71,0,0,0-67.51-6.41c-17.58,16.18-19,43.52-4.75,62.77l91.78,123L41.76,379.58c-14.23,19.25-13.11,46.59,4.74,62.77A45.71,45.71,0,0,0,114,435.94L242.89,262.7a12.14,12.14,0,0,0,0-14.23ZM470.24,379.58,377.91,255.45l91.78-123c14.22-19.25,12.83-46.59-4.75-62.77a45.71,45.71,0,0,0-67.51,6.41l-128,172.12a12.14,12.14,0,0,0,0,14.23L398,435.94a45.71,45.71,0,0,0,67.51,6.41C483.35,426.17,484.47,398.83,470.24,379.58Z"], + "mizuni": [496, 512, [], "f3cc", "M248 8C111 8 0 119.1 0 256c0 137 111 248 248 248s248-111 248-248C496 119.1 385 8 248 8zm-80 351.9c-31.4 10.6-58.8 27.3-80 48.2V136c0-22.1 17.9-40 40-40s40 17.9 40 40v223.9zm120-9.9c-12.9-2-26.2-3.1-39.8-3.1-13.8 0-27.2 1.1-40.2 3.1V136c0-22.1 17.9-40 40-40s40 17.9 40 40v214zm120 57.7c-21.2-20.8-48.6-37.4-80-48V136c0-22.1 17.9-40 40-40s40 17.9 40 40v271.7z"], + "modx": [448, 512, [], "f285", "M356 241.8l36.7 23.7V480l-133-83.8L356 241.8zM440 75H226.3l-23 37.8 153.5 96.5L440 75zm-89 142.8L55.2 32v214.5l46 29L351 217.8zM97 294.2L8 437h213.7l125-200.5L97 294.2z"], + "monero": [496, 512, [], "f3d0", "M352 384h108.4C417 455.9 338.1 504 248 504S79 455.9 35.6 384H144V256.2L248 361l104-105v128zM88 336V128l159.4 159.4L408 128v208h74.8c8.5-25.1 13.2-52 13.2-80C496 119 385 8 248 8S0 119 0 256c0 28 4.6 54.9 13.2 80H88z"], + "napster": [496, 512, [], "f3d2", "M298.3 373.6c-14.2 13.6-31.3 24.1-50.4 30.5-19-6.4-36.2-16.9-50.3-30.5h100.7zm44-199.6c20-16.9 43.6-29.2 69.6-36.2V299c0 219.4-328 217.6-328 .3V137.7c25.9 6.9 49.6 19.6 69.5 36.4 56.8-40 132.5-39.9 188.9-.1zm-208.8-58.5c64.4-60 164.3-60.1 228.9-.2-7.1 3.5-13.9 7.3-20.6 11.5-58.7-30.5-129.2-30.4-187.9.1-6.3-4-13.9-8.2-20.4-11.4zM43.8 93.2v69.3c-58.4 36.5-58.4 121.1.1 158.3 26.4 245.1 381.7 240.3 407.6 1.5l.3-1.7c58.7-36.3 58.9-121.7.2-158.2V93.2c-17.3.5-34 3-50.1 7.4-82-91.5-225.5-91.5-307.5.1-16.3-4.4-33.1-7-50.6-7.5zM259.2 352s36-.3 61.3-1.5c10.2-.5 21.1-4 25.5-6.5 26.3-15.1 25.4-39.2 26.2-47.4-79.5-.6-99.9-3.9-113 55.4zm-135.5-55.3c.8 8.2-.1 32.3 26.2 47.4 4.4 2.5 15.2 6 25.5 6.5 25.3 1.1 61.3 1.5 61.3 1.5-13.2-59.4-33.7-56.1-113-55.4zm169.1 123.4c-3.2-5.3-6.9-7.3-6.9-7.3-24.8 7.3-52.2 6.9-75.9 0 0 0-2.9 1.5-6.4 6.6-2.8 4.1-3.7 9.6-3.7 9.6 29.1 17.6 67.1 17.6 96.2 0-.1-.1-.3-4-3.3-8.9z"], + "neos": [512, 512, [], "f612", "M415.44 512h-95.11L212.12 357.46v91.1L125.69 512H28V29.82L68.47 0h108.05l123.74 176.13V63.45L386.69 0h97.69v461.5zM38.77 35.27V496l72-52.88V194l215.5 307.64h84.79l52.35-38.17h-78.27L69 13zm82.54 466.61l80-58.78v-101l-79.76-114.4v220.94L49 501.89h72.34zM80.63 10.77l310.6 442.57h82.37V10.77h-79.75v317.56L170.91 10.77zM311 191.65l72 102.81V15.93l-72 53v122.72z"], + "nimblr": [384, 512, [], "f5a8", "M246.6 299.29c15.57 0 27.15 11.46 27.15 27s-11.62 27-27.15 27c-15.7 0-27.15-11.57-27.15-27s11.55-27 27.15-27zM113 326.25c0-15.61 11.68-27 27.15-27s27.15 11.46 27.15 27-11.47 27-27.15 27c-15.44 0-27.15-11.31-27.15-27M191.76 159C157 159 89.45 178.77 59.25 227L14 0v335.48C14 433.13 93.61 512 191.76 512s177.76-78.95 177.76-176.52S290.13 159 191.76 159zm0 308.12c-73.27 0-132.51-58.9-132.51-131.59s59.24-131.59 132.51-131.59 132.51 58.86 132.51 131.54S265 467.07 191.76 467.07z"], + "node": [640, 512, [], "f419", "M316.3 452c-2.1 0-4.2-.6-6.1-1.6L291 439c-2.9-1.6-1.5-2.2-.5-2.5 3.8-1.3 4.6-1.6 8.7-4 .4-.2 1-.1 1.4.1l14.8 8.8c.5.3 1.3.3 1.8 0L375 408c.5-.3.9-.9.9-1.6v-66.7c0-.7-.3-1.3-.9-1.6l-57.8-33.3c-.5-.3-1.2-.3-1.8 0l-57.8 33.3c-.6.3-.9 1-.9 1.6v66.7c0 .6.4 1.2.9 1.5l15.8 9.1c8.6 4.3 13.9-.8 13.9-5.8v-65.9c0-.9.7-1.7 1.7-1.7h7.3c.9 0 1.7.7 1.7 1.7v65.9c0 11.5-6.2 18-17.1 18-3.3 0-6 0-13.3-3.6l-15.2-8.7c-3.7-2.2-6.1-6.2-6.1-10.5v-66.7c0-4.3 2.3-8.4 6.1-10.5l57.8-33.4c3.7-2.1 8.5-2.1 12.1 0l57.8 33.4c3.7 2.2 6.1 6.2 6.1 10.5v66.7c0 4.3-2.3 8.4-6.1 10.5l-57.8 33.4c-1.7 1.1-3.8 1.7-6 1.7zm46.7-65.8c0-12.5-8.4-15.8-26.2-18.2-18-2.4-19.8-3.6-19.8-7.8 0-3.5 1.5-8.1 14.8-8.1 11.9 0 16.3 2.6 18.1 10.6.2.8.8 1.3 1.6 1.3h7.5c.5 0 .9-.2 1.2-.5.3-.4.5-.8.4-1.3-1.2-13.8-10.3-20.2-28.8-20.2-16.5 0-26.3 7-26.3 18.6 0 12.7 9.8 16.1 25.6 17.7 18.9 1.9 20.4 4.6 20.4 8.3 0 6.5-5.2 9.2-17.4 9.2-15.3 0-18.7-3.8-19.8-11.4-.1-.8-.8-1.4-1.7-1.4h-7.5c-.9 0-1.7.7-1.7 1.7 0 9.7 5.3 21.3 30.6 21.3 18.5 0 29-7.2 29-19.8zm54.5-50.1c0 6.1-5 11.1-11.1 11.1s-11.1-5-11.1-11.1c0-6.3 5.2-11.1 11.1-11.1 6-.1 11.1 4.8 11.1 11.1zm-1.8 0c0-5.2-4.2-9.3-9.4-9.3-5.1 0-9.3 4.1-9.3 9.3 0 5.2 4.2 9.4 9.3 9.4 5.2-.1 9.4-4.3 9.4-9.4zm-4.5 6.2h-2.6c-.1-.6-.5-3.8-.5-3.9-.2-.7-.4-1.1-1.3-1.1h-2.2v5h-2.4v-12.5h4.3c1.5 0 4.4 0 4.4 3.3 0 2.3-1.5 2.8-2.4 3.1 1.7.1 1.8 1.2 2.1 2.8.1 1 .3 2.7.6 3.3zm-2.8-8.8c0-1.7-1.2-1.7-1.8-1.7h-2v3.5h1.9c1.6 0 1.9-1.1 1.9-1.8zM137.3 191c0-2.7-1.4-5.1-3.7-6.4l-61.3-35.3c-1-.6-2.2-.9-3.4-1h-.6c-1.2 0-2.3.4-3.4 1L3.7 184.6C1.4 185.9 0 188.4 0 191l.1 95c0 1.3.7 2.5 1.8 3.2 1.1.7 2.5.7 3.7 0L42 268.3c2.3-1.4 3.7-3.8 3.7-6.4v-44.4c0-2.6 1.4-5.1 3.7-6.4l15.5-8.9c1.2-.7 2.4-1 3.7-1 1.3 0 2.6.3 3.7 1l15.5 8.9c2.3 1.3 3.7 3.8 3.7 6.4v44.4c0 2.6 1.4 5.1 3.7 6.4l36.4 20.9c1.1.7 2.6.7 3.7 0 1.1-.6 1.8-1.9 1.8-3.2l.2-95zM472.5 87.3v176.4c0 2.6-1.4 5.1-3.7 6.4l-61.3 35.4c-2.3 1.3-5.1 1.3-7.4 0l-61.3-35.4c-2.3-1.3-3.7-3.8-3.7-6.4v-70.8c0-2.6 1.4-5.1 3.7-6.4l61.3-35.4c2.3-1.3 5.1-1.3 7.4 0l15.3 8.8c1.7 1 3.9-.3 3.9-2.2v-94c0-2.8 3-4.6 5.5-3.2l36.5 20.4c2.3 1.2 3.8 3.7 3.8 6.4zm-46 128.9c0-.7-.4-1.3-.9-1.6l-21-12.2c-.6-.3-1.3-.3-1.9 0l-21 12.2c-.6.3-.9.9-.9 1.6v24.3c0 .7.4 1.3.9 1.6l21 12.1c.6.3 1.3.3 1.8 0l21-12.1c.6-.3.9-.9.9-1.6v-24.3zm209.8-.7c2.3-1.3 3.7-3.8 3.7-6.4V192c0-2.6-1.4-5.1-3.7-6.4l-60.9-35.4c-2.3-1.3-5.1-1.3-7.4 0l-61.3 35.4c-2.3 1.3-3.7 3.8-3.7 6.4v70.8c0 2.7 1.4 5.1 3.7 6.4l60.9 34.7c2.2 1.3 5 1.3 7.3 0l36.8-20.5c2.5-1.4 2.5-5 0-6.4L550 241.6c-1.2-.7-1.9-1.9-1.9-3.2v-22.2c0-1.3.7-2.5 1.9-3.2l19.2-11.1c1.1-.7 2.6-.7 3.7 0l19.2 11.1c1.1.7 1.9 1.9 1.9 3.2v17.4c0 2.8 3.1 4.6 5.6 3.2l36.7-21.3zM559 219c-.4.3-.7.7-.7 1.2v13.6c0 .5.3 1 .7 1.2l11.8 6.8c.4.3 1 .3 1.4 0L584 235c.4-.3.7-.7.7-1.2v-13.6c0-.5-.3-1-.7-1.2l-11.8-6.8c-.4-.3-1-.3-1.4 0L559 219zm-254.2 43.5v-70.4c0-2.6-1.6-5.1-3.9-6.4l-61.1-35.2c-2.1-1.2-5-1.4-7.4 0l-61.1 35.2c-2.3 1.3-3.9 3.7-3.9 6.4v70.4c0 2.8 1.9 5.2 4 6.4l61.2 35.2c2.4 1.4 5.2 1.3 7.4 0l61-35.2c1.8-1 3.1-2.7 3.6-4.7.1-.5.2-1.1.2-1.7zm-74.3-124.9l-.8.5h1.1l-.3-.5zm76.2 130.2l-.4-.7v.9l.4-.2z"], + "node-js": [448, 512, [], "f3d3", "M224 508c-6.7 0-13.5-1.8-19.4-5.2l-61.7-36.5c-9.2-5.2-4.7-7-1.7-8 12.3-4.3 14.8-5.2 27.9-12.7 1.4-.8 3.2-.5 4.6.4l47.4 28.1c1.7 1 4.1 1 5.7 0l184.7-106.6c1.7-1 2.8-3 2.8-5V149.3c0-2.1-1.1-4-2.9-5.1L226.8 37.7c-1.7-1-4-1-5.7 0L36.6 144.3c-1.8 1-2.9 3-2.9 5.1v213.1c0 2 1.1 4 2.9 4.9l50.6 29.2c27.5 13.7 44.3-2.4 44.3-18.7V167.5c0-3 2.4-5.3 5.4-5.3h23.4c2.9 0 5.4 2.3 5.4 5.3V378c0 36.6-20 57.6-54.7 57.6-10.7 0-19.1 0-42.5-11.6l-48.4-27.9C8.1 389.2.7 376.3.7 362.4V149.3c0-13.8 7.4-26.8 19.4-33.7L204.6 9c11.7-6.6 27.2-6.6 38.8 0l184.7 106.7c12 6.9 19.4 19.8 19.4 33.7v213.1c0 13.8-7.4 26.7-19.4 33.7L243.4 502.8c-5.9 3.4-12.6 5.2-19.4 5.2zm149.1-210.1c0-39.9-27-50.5-83.7-58-57.4-7.6-63.2-11.5-63.2-24.9 0-11.1 4.9-25.9 47.4-25.9 37.9 0 51.9 8.2 57.7 33.8.5 2.4 2.7 4.2 5.2 4.2h24c1.5 0 2.9-.6 3.9-1.7s1.5-2.6 1.4-4.1c-3.7-44.1-33-64.6-92.2-64.6-52.7 0-84.1 22.2-84.1 59.5 0 40.4 31.3 51.6 81.8 56.6 60.5 5.9 65.2 14.8 65.2 26.7 0 20.6-16.6 29.4-55.5 29.4-48.9 0-59.6-12.3-63.2-36.6-.4-2.6-2.6-4.5-5.3-4.5h-23.9c-3 0-5.3 2.4-5.3 5.3 0 31.1 16.9 68.2 97.8 68.2 58.4-.1 92-23.2 92-63.4z"], + "npm": [576, 512, [], "f3d4", "M288 288h-32v-64h32v64zm288-128v192H288v32H160v-32H0V160h576zm-416 32H32v128h64v-96h32v96h32V192zm160 0H192v160h64v-32h64V192zm224 0H352v128h64v-96h32v96h32v-96h32v96h32V192z"], + "ns8": [640, 512, [], "f3d5", "M104.324,269.172h26.067V242.994H104.324Zm52.466-26.178-.055-26.178v-.941a39.325,39.325,0,0,0-78.644.941v.166h26.4v-.166a12.98,12.98,0,0,1,25.956,0v26.178Zm52.356,25.846a91.1,91.1,0,0,1-91.1,91.1h-.609a91.1,91.1,0,0,1-91.1-91.1H0v.166A117.33,117.33,0,0,0,117.44,386.28h.775A117.331,117.331,0,0,0,235.49,268.84V242.828H209.146Zm-157.233,0a65.362,65.362,0,0,0,130.723,0H156.292a39.023,39.023,0,0,1-78.035,0V242.883H51.968v-26.62A65.42,65.42,0,0,1,182.8,217.48v25.293h26.344V217.48a91.761,91.761,0,0,0-183.522,0v25.4H51.913Zm418.4-71.173c13.67,0,24.573,6.642,30.052,18.264l.719,1.549,23.245-11.511-.609-1.439c-8.025-19.26-28.5-31.27-53.407-31.27-23.134,0-43.611,11.4-50.972,28.447-.123,26.876-.158,23.9,0,24.85,4.7,11.013,14.555,19.37,28.668,24.241a102.033,102.033,0,0,0,19.813,3.984c5.479.72,10.626,1.384,15.829,3.1,6.364,2.1,10.46,5.257,12.84,9.851v9.851c-3.708,7.527-13.781,12.342-25.791,12.342-14.334,0-25.956-6.918-31.933-19.039l-.72-1.494L415.026,280.9l.553,1.439c7.915,19.426,29.609,32.044,55.289,32.044,23.632,0,44.608-11.4,52.3-28.447l.166-25.9-.166-.664c-4.87-11.014-15.219-19.647-28.944-24.241-7.693-2.712-14.335-3.6-20.7-4.427a83.777,83.777,0,0,1-14.832-2.878c-6.31-1.937-10.4-5.092-12.619-9.63v-8.412C449.45,202.427,458.969,197.667,470.315,197.667ZM287.568,311.344h26.067v-68.4H287.568Zm352.266-53.3c-2.933-6.254-8.3-12.01-15.441-16.714A37.99,37.99,0,0,0,637.4,226l.166-25.347-.166-.664C630.038,184,610.667,173.26,589.25,173.26S548.461,184,541.1,199.992l-.166,25.347.166.664a39.643,39.643,0,0,0,13.006,15.331c-7.2,4.7-12.508,10.46-15.441,16.714l-.166,28.889.166.72c7.582,15.994,27.893,26.731,50.585,26.731s43.057-10.737,50.584-26.731l.166-28.89Zm-73.22-50.806c3.6-6.31,12.563-10.516,22.58-10.516s19.038,4.206,22.636,10.516v13.725c-3.542,6.2-12.563,10.349-22.636,10.349s-19.094-4.15-22.58-10.349Zm47.319,72.169c-3.764,6.641-13.338,10.9-24.683,10.9-11.125,0-20.976-4.372-24.684-10.9V263.25c3.708-6.309,13.5-10.515,24.684-10.515,11.345,0,20.919,4.15,24.683,10.515ZM376.4,265.962l-59.827-89.713h-29v40.623h26.51v.387l62.539,94.085H402.3V176.249H376.4Z"], + "nutritionix": [400, 512, [], "f3d6", "M88 8.1S221.4-.1 209 112.5c0 0 19.1-74.9 103-40.6 0 0-17.7 74-88 56 0 0 14.6-54.6 66.1-56.6 0 0-39.9-10.3-82.1 48.8 0 0-19.8-94.5-93.6-99.7 0 0 75.2 19.4 77.6 107.5 0 .1-106.4 7-104-119.8zm312 315.6c0 48.5-9.7 95.3-32 132.3-42.2 30.9-105 48-168 48-62.9 0-125.8-17.1-168-48C9.7 419 0 372.2 0 323.7 0 275.3 17.7 229 40 192c42.2-30.9 97.1-48.6 160-48.6 63 0 117.8 17.6 160 48.6 22.3 37 40 83.3 40 131.7zM120 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM192 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM264 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM336 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm24-39.6c-4.8-22.3-7.4-36.9-16-56-38.8-19.9-90.5-32-144-32S94.8 180.1 56 200c-8.8 19.5-11.2 33.9-16 56 42.2-7.9 98.7-14.8 160-14.8s117.8 6.9 160 14.8z"], + "octopus-deploy": [512, 512, [], "e082", "M455.6,349.2c-45.891-39.09-36.67-77.877-16.095-128.11C475.16,134.04,415.967,34.14,329.93,8.3,237.04-19.6,134.252,24.341,99.677,117.147a180.862,180.862,0,0,0-10.988,73.544c1.733,29.543,14.717,52.97,24.09,80.3,17.2,50.161-28.1,92.743-66.662,117.582-46.806,30.2-36.319,39.857-8.428,41.858,23.378,1.68,44.478-4.548,65.265-15.045,9.2-4.647,40.687-18.931,45.13-28.588C135.9,413.388,111.122,459.5,126.621,488.9c19.1,36.229,67.112-31.77,76.709-45.812,8.591-12.572,42.963-81.279,63.627-46.926,18.865,31.361,8.6,76.391,35.738,104.622,32.854,34.2,51.155-18.312,51.412-44.221.163-16.411-6.1-95.852,29.9-59.944C405.428,418,436.912,467.8,472.568,463.642c38.736-4.516-22.123-67.967-28.262-78.695,5.393,4.279,53.665,34.128,53.818,9.52C498.234,375.678,468.039,359.8,455.6,349.2Z"], + "odnoklassniki": [320, 512, [], "f263", "M275.1 334c-27.4 17.4-65.1 24.3-90 26.9l20.9 20.6 76.3 76.3c27.9 28.6-17.5 73.3-45.7 45.7-19.1-19.4-47.1-47.4-76.3-76.6L84 503.4c-28.2 27.5-73.6-17.6-45.4-45.7 19.4-19.4 47.1-47.4 76.3-76.3l20.6-20.6c-24.6-2.6-62.9-9.1-90.6-26.9-32.6-21-46.9-33.3-34.3-59 7.4-14.6 27.7-26.9 54.6-5.7 0 0 36.3 28.9 94.9 28.9s94.9-28.9 94.9-28.9c26.9-21.1 47.1-8.9 54.6 5.7 12.4 25.7-1.9 38-34.5 59.1zM30.3 129.7C30.3 58 88.6 0 160 0s129.7 58 129.7 129.7c0 71.4-58.3 129.4-129.7 129.4s-129.7-58-129.7-129.4zm66 0c0 35.1 28.6 63.7 63.7 63.7s63.7-28.6 63.7-63.7c0-35.4-28.6-64-63.7-64s-63.7 28.6-63.7 64z"], + "odnoklassniki-square": [448, 512, [], "f264", "M184.2 177.1c0-22.1 17.9-40 39.8-40s39.8 17.9 39.8 40c0 22-17.9 39.8-39.8 39.8s-39.8-17.9-39.8-39.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-305.1 97.1c0 44.6 36.4 80.9 81.1 80.9s81.1-36.2 81.1-80.9c0-44.8-36.4-81.1-81.1-81.1s-81.1 36.2-81.1 81.1zm174.5 90.7c-4.6-9.1-17.3-16.8-34.1-3.6 0 0-22.7 18-59.3 18s-59.3-18-59.3-18c-16.8-13.2-29.5-5.5-34.1 3.6-7.9 16.1 1.1 23.7 21.4 37 17.3 11.1 41.2 15.2 56.6 16.8l-12.9 12.9c-18.2 18-35.5 35.5-47.7 47.7-17.6 17.6 10.7 45.8 28.4 28.6l47.7-47.9c18.2 18.2 35.7 35.7 47.7 47.9 17.6 17.2 46-10.7 28.6-28.6l-47.7-47.7-13-12.9c15.5-1.6 39.1-5.9 56.2-16.8 20.4-13.3 29.3-21 21.5-37z"], + "old-republic": [496, 512, [], "f510", "M235.76 10.23c7.5-.31 15-.28 22.5-.09 3.61.14 7.2.4 10.79.73 4.92.27 9.79 1.03 14.67 1.62 2.93.43 5.83.98 8.75 1.46 7.9 1.33 15.67 3.28 23.39 5.4 12.24 3.47 24.19 7.92 35.76 13.21 26.56 12.24 50.94 29.21 71.63 49.88 20.03 20.09 36.72 43.55 48.89 69.19 1.13 2.59 2.44 5.1 3.47 7.74 2.81 6.43 5.39 12.97 7.58 19.63 4.14 12.33 7.34 24.99 9.42 37.83.57 3.14 1.04 6.3 1.4 9.47.55 3.83.94 7.69 1.18 11.56.83 8.34.84 16.73.77 25.1-.07 4.97-.26 9.94-.75 14.89-.24 3.38-.51 6.76-.98 10.12-.39 2.72-.63 5.46-1.11 8.17-.9 5.15-1.7 10.31-2.87 15.41-4.1 18.5-10.3 36.55-18.51 53.63-15.77 32.83-38.83 62.17-67.12 85.12a246.503 246.503 0 0 1-56.91 34.86c-6.21 2.68-12.46 5.25-18.87 7.41-3.51 1.16-7.01 2.38-10.57 3.39-6.62 1.88-13.29 3.64-20.04 5-4.66.91-9.34 1.73-14.03 2.48-5.25.66-10.5 1.44-15.79 1.74-6.69.66-13.41.84-20.12.81-6.82.03-13.65-.12-20.45-.79-3.29-.23-6.57-.5-9.83-.95-2.72-.39-5.46-.63-8.17-1.11-4.12-.72-8.25-1.37-12.35-2.22-4.25-.94-8.49-1.89-12.69-3.02-8.63-2.17-17.08-5.01-25.41-8.13-10.49-4.12-20.79-8.75-30.64-14.25-2.14-1.15-4.28-2.29-6.35-3.57-11.22-6.58-21.86-14.1-31.92-22.34-34.68-28.41-61.41-66.43-76.35-108.7-3.09-8.74-5.71-17.65-7.8-26.68-1.48-6.16-2.52-12.42-3.58-18.66-.4-2.35-.61-4.73-.95-7.09-.6-3.96-.75-7.96-1.17-11.94-.8-9.47-.71-18.99-.51-28.49.14-3.51.34-7.01.7-10.51.31-3.17.46-6.37.92-9.52.41-2.81.65-5.65 1.16-8.44.7-3.94 1.3-7.9 2.12-11.82 3.43-16.52 8.47-32.73 15.26-48.18 1.15-2.92 2.59-5.72 3.86-8.59 8.05-16.71 17.9-32.56 29.49-47.06 20-25.38 45.1-46.68 73.27-62.47 7.5-4.15 15.16-8.05 23.07-11.37 15.82-6.88 32.41-11.95 49.31-15.38 3.51-.67 7.04-1.24 10.56-1.85 2.62-.47 5.28-.7 7.91-1.08 3.53-.53 7.1-.68 10.65-1.04 2.46-.24 4.91-.36 7.36-.51m8.64 24.41c-9.23.1-18.43.99-27.57 2.23-7.3 1.08-14.53 2.6-21.71 4.3-13.91 3.5-27.48 8.34-40.46 14.42-10.46 4.99-20.59 10.7-30.18 17.22-4.18 2.92-8.4 5.8-12.34 9.03-5.08 3.97-9.98 8.17-14.68 12.59-2.51 2.24-4.81 4.7-7.22 7.06-28.22 28.79-48.44 65.39-57.5 104.69-2.04 8.44-3.54 17.02-4.44 25.65-1.1 8.89-1.44 17.85-1.41 26.8.11 7.14.38 14.28 1.22 21.37.62 7.12 1.87 14.16 3.2 21.18 1.07 4.65 2.03 9.32 3.33 13.91 6.29 23.38 16.5 45.7 30.07 65.75 8.64 12.98 18.78 24.93 29.98 35.77 16.28 15.82 35.05 29.04 55.34 39.22 7.28 3.52 14.66 6.87 22.27 9.63 5.04 1.76 10.06 3.57 15.22 4.98 11.26 3.23 22.77 5.6 34.39 7.06 2.91.29 5.81.61 8.72.9 13.82 1.08 27.74 1 41.54-.43 4.45-.6 8.92-.99 13.35-1.78 3.63-.67 7.28-1.25 10.87-2.1 4.13-.98 8.28-1.91 12.36-3.07 26.5-7.34 51.58-19.71 73.58-36.2 15.78-11.82 29.96-25.76 42.12-41.28 3.26-4.02 6.17-8.31 9.13-12.55 3.39-5.06 6.58-10.25 9.6-15.54 2.4-4.44 4.74-8.91 6.95-13.45 5.69-12.05 10.28-24.62 13.75-37.49 2.59-10.01 4.75-20.16 5.9-30.45 1.77-13.47 1.94-27.1 1.29-40.65-.29-3.89-.67-7.77-1-11.66-2.23-19.08-6.79-37.91-13.82-55.8-5.95-15.13-13.53-29.63-22.61-43.13-12.69-18.8-28.24-35.68-45.97-49.83-25.05-20-54.47-34.55-85.65-42.08-7.78-1.93-15.69-3.34-23.63-4.45-3.91-.59-7.85-.82-11.77-1.24-7.39-.57-14.81-.72-22.22-.58zM139.26 83.53c13.3-8.89 28.08-15.38 43.3-20.18-3.17 1.77-6.44 3.38-9.53 5.29-11.21 6.68-21.52 14.9-30.38 24.49-6.8 7.43-12.76 15.73-17.01 24.89-3.29 6.86-5.64 14.19-6.86 21.71-.93 4.85-1.3 9.81-1.17 14.75.13 13.66 4.44 27.08 11.29 38.82 5.92 10.22 13.63 19.33 22.36 27.26 4.85 4.36 10.24 8.09 14.95 12.6 2.26 2.19 4.49 4.42 6.43 6.91 2.62 3.31 4.89 6.99 5.99 11.1.9 3.02.66 6.2.69 9.31.02 4.1-.04 8.2.03 12.3.14 3.54-.02 7.09.11 10.63.08 2.38.02 4.76.05 7.14.16 5.77.06 11.53.15 17.3.11 2.91.02 5.82.13 8.74.03 1.63.13 3.28-.03 4.91-.91.12-1.82.18-2.73.16-10.99 0-21.88-2.63-31.95-6.93-6-2.7-11.81-5.89-17.09-9.83-5.75-4.19-11.09-8.96-15.79-14.31-6.53-7.24-11.98-15.39-16.62-23.95-1.07-2.03-2.24-4.02-3.18-6.12-1.16-2.64-2.62-5.14-3.67-7.82-4.05-9.68-6.57-19.94-8.08-30.31-.49-4.44-1.09-8.88-1.2-13.35-.7-15.73.84-31.55 4.67-46.82 2.12-8.15 4.77-16.18 8.31-23.83 6.32-14.2 15.34-27.18 26.3-38.19 6.28-6.2 13.13-11.84 20.53-16.67zm175.37-20.12c2.74.74 5.41 1.74 8.09 2.68 6.36 2.33 12.68 4.84 18.71 7.96 13.11 6.44 25.31 14.81 35.82 24.97 10.2 9.95 18.74 21.6 25.14 34.34 1.28 2.75 2.64 5.46 3.81 8.26 6.31 15.1 10 31.26 11.23 47.57.41 4.54.44 9.09.45 13.64.07 11.64-1.49 23.25-4.3 34.53-1.97 7.27-4.35 14.49-7.86 21.18-3.18 6.64-6.68 13.16-10.84 19.24-6.94 10.47-15.6 19.87-25.82 27.22-10.48 7.64-22.64 13.02-35.4 15.38-3.51.69-7.08 1.08-10.66 1.21-1.85.06-3.72.16-5.56-.1-.28-2.15 0-4.31-.01-6.46-.03-3.73.14-7.45.1-11.17.19-7.02.02-14.05.21-21.07.03-2.38-.03-4.76.03-7.14.17-5.07-.04-10.14.14-15.21.1-2.99-.24-6.04.51-8.96.66-2.5 1.78-4.86 3.09-7.08 4.46-7.31 11.06-12.96 17.68-18.26 5.38-4.18 10.47-8.77 15.02-13.84 7.68-8.37 14.17-17.88 18.78-28.27 2.5-5.93 4.52-12.1 5.55-18.46.86-4.37 1.06-8.83 1.01-13.27-.02-7.85-1.4-15.65-3.64-23.17-1.75-5.73-4.27-11.18-7.09-16.45-3.87-6.93-8.65-13.31-13.96-19.2-9.94-10.85-21.75-19.94-34.6-27.1-1.85-1.02-3.84-1.82-5.63-2.97zm-100.8 58.45c.98-1.18 1.99-2.33 3.12-3.38-.61.93-1.27 1.81-1.95 2.68-3.1 3.88-5.54 8.31-7.03 13.06-.87 3.27-1.68 6.6-1.73 10-.07 2.52-.08 5.07.32 7.57 1.13 7.63 4.33 14.85 8.77 21.12 2 2.7 4.25 5.27 6.92 7.33 1.62 1.27 3.53 2.09 5.34 3.05 3.11 1.68 6.32 3.23 9.07 5.48 2.67 2.09 4.55 5.33 4.4 8.79-.01 73.67 0 147.34-.01 221.02 0 1.35-.08 2.7.04 4.04.13 1.48.82 2.83 1.47 4.15.86 1.66 1.78 3.34 3.18 4.62.85.77 1.97 1.4 3.15 1.24 1.5-.2 2.66-1.35 3.45-2.57.96-1.51 1.68-3.16 2.28-4.85.76-2.13.44-4.42.54-6.63.14-4.03-.02-8.06.14-12.09.03-5.89.03-11.77.06-17.66.14-3.62.03-7.24.11-10.86.15-4.03-.02-8.06.14-12.09.03-5.99.03-11.98.07-17.97.14-3.62.02-7.24.11-10.86.14-3.93-.02-7.86.14-11.78.03-5.99.03-11.98.06-17.97.16-3.94-.01-7.88.19-11.82.29 1.44.13 2.92.22 4.38.19 3.61.42 7.23.76 10.84.32 3.44.44 6.89.86 10.32.37 3.1.51 6.22.95 9.31.57 4.09.87 8.21 1.54 12.29 1.46 9.04 2.83 18.11 5.09 26.99 1.13 4.82 2.4 9.61 4 14.3 2.54 7.9 5.72 15.67 10.31 22.62 1.73 2.64 3.87 4.98 6.1 7.21.27.25.55.51.88.71.6.25 1.31-.07 1.7-.57.71-.88 1.17-1.94 1.7-2.93 4.05-7.8 8.18-15.56 12.34-23.31.7-1.31 1.44-2.62 2.56-3.61 1.75-1.57 3.84-2.69 5.98-3.63 2.88-1.22 5.9-2.19 9.03-2.42 6.58-.62 13.11.75 19.56 1.85 3.69.58 7.4 1.17 11.13 1.41 3.74.1 7.48.05 11.21-.28 8.55-.92 16.99-2.96 24.94-6.25 5.3-2.24 10.46-4.83 15.31-7.93 11.46-7.21 21.46-16.57 30.04-27.01 1.17-1.42 2.25-2.9 3.46-4.28-1.2 3.24-2.67 6.37-4.16 9.48-1.25 2.9-2.84 5.61-4.27 8.42-5.16 9.63-11.02 18.91-17.75 27.52-4.03 5.21-8.53 10.05-13.33 14.57-6.64 6.05-14.07 11.37-22.43 14.76-8.21 3.37-17.31 4.63-26.09 3.29-3.56-.58-7.01-1.69-10.41-2.88-2.79-.97-5.39-2.38-8.03-3.69-3.43-1.71-6.64-3.81-9.71-6.08 2.71 3.06 5.69 5.86 8.7 8.61 4.27 3.76 8.74 7.31 13.63 10.23 3.98 2.45 8.29 4.4 12.84 5.51 1.46.37 2.96.46 4.45.6-1.25 1.1-2.63 2.04-3.99 2.98-9.61 6.54-20.01 11.86-30.69 16.43-20.86 8.7-43.17 13.97-65.74 15.34-4.66.24-9.32.36-13.98.36-4.98-.11-9.97-.13-14.92-.65-11.2-.76-22.29-2.73-33.17-5.43-10.35-2.71-20.55-6.12-30.3-10.55-8.71-3.86-17.12-8.42-24.99-13.79-1.83-1.31-3.74-2.53-5.37-4.08 6.6-1.19 13.03-3.39 18.99-6.48 5.74-2.86 10.99-6.66 15.63-11.07 2.24-2.19 4.29-4.59 6.19-7.09-3.43 2.13-6.93 4.15-10.62 5.78-4.41 2.16-9.07 3.77-13.81 5.02-5.73 1.52-11.74 1.73-17.61 1.14-8.13-.95-15.86-4.27-22.51-8.98-4.32-2.94-8.22-6.43-11.96-10.06-9.93-10.16-18.2-21.81-25.66-33.86-3.94-6.27-7.53-12.75-11.12-19.22-1.05-2.04-2.15-4.05-3.18-6.1 2.85 2.92 5.57 5.97 8.43 8.88 8.99 8.97 18.56 17.44 29.16 24.48 7.55 4.9 15.67 9.23 24.56 11.03 3.11.73 6.32.47 9.47.81 2.77.28 5.56.2 8.34.3 5.05.06 10.11.04 15.16-.16 3.65-.16 7.27-.66 10.89-1.09 2.07-.25 4.11-.71 6.14-1.2 3.88-.95 8.11-.96 11.83.61 4.76 1.85 8.44 5.64 11.38 9.71 2.16 3.02 4.06 6.22 5.66 9.58 1.16 2.43 2.46 4.79 3.55 7.26 1 2.24 2.15 4.42 3.42 6.52.67 1.02 1.4 2.15 2.62 2.55 1.06-.75 1.71-1.91 2.28-3.03 2.1-4.16 3.42-8.65 4.89-13.05 2.02-6.59 3.78-13.27 5.19-20.02 2.21-9.25 3.25-18.72 4.54-28.13.56-3.98.83-7.99 1.31-11.97.87-10.64 1.9-21.27 2.24-31.94.08-1.86.24-3.71.25-5.57.01-4.35.25-8.69.22-13.03-.01-2.38-.01-4.76 0-7.13.05-5.07-.2-10.14-.22-15.21-.2-6.61-.71-13.2-1.29-19.78-.73-5.88-1.55-11.78-3.12-17.51-2.05-7.75-5.59-15.03-9.8-21.82-3.16-5.07-6.79-9.88-11.09-14.03-3.88-3.86-8.58-7.08-13.94-8.45-1.5-.41-3.06-.45-4.59-.64.07-2.99.7-5.93 1.26-8.85 1.59-7.71 3.8-15.3 6.76-22.6 1.52-4.03 3.41-7.9 5.39-11.72 3.45-6.56 7.62-12.79 12.46-18.46zm31.27 1.7c.35-.06.71-.12 1.07-.19.19 1.79.09 3.58.1 5.37v38.13c-.01 1.74.13 3.49-.15 5.22-.36-.03-.71-.05-1.06-.05-.95-3.75-1.72-7.55-2.62-11.31-.38-1.53-.58-3.09-1.07-4.59-1.7-.24-3.43-.17-5.15-.2-5.06-.01-10.13 0-15.19-.01-1.66-.01-3.32.09-4.98-.03-.03-.39-.26-.91.16-1.18 1.28-.65 2.72-.88 4.06-1.35 3.43-1.14 6.88-2.16 10.31-3.31 1.39-.48 2.9-.72 4.16-1.54.04-.56.02-1.13-.05-1.68-1.23-.55-2.53-.87-3.81-1.28-3.13-1.03-6.29-1.96-9.41-3.02-1.79-.62-3.67-1-5.41-1.79-.03-.37-.07-.73-.11-1.09 5.09-.19 10.2.06 15.3-.12 3.36-.13 6.73.08 10.09-.07.12-.39.26-.77.37-1.16 1.08-4.94 2.33-9.83 3.39-14.75zm5.97-.2c.36.05.72.12 1.08.2.98 3.85 1.73 7.76 2.71 11.61.36 1.42.56 2.88 1.03 4.27 2.53.18 5.07-.01 7.61.05 5.16.12 10.33.12 15.49.07.76-.01 1.52.03 2.28.08-.04.36-.07.72-.1 1.08-1.82.83-3.78 1.25-5.67 1.89-3.73 1.23-7.48 2.39-11.22 3.57-.57.17-1.12.42-1.67.64-.15.55-.18 1.12-.12 1.69.87.48 1.82.81 2.77 1.09 4.88 1.52 9.73 3.14 14.63 4.6.38.13.78.27 1.13.49.4.27.23.79.15 1.18-1.66.13-3.31.03-4.97.04-5.17.01-10.33-.01-15.5.01-1.61.03-3.22-.02-4.82.21-.52 1.67-.72 3.42-1.17 5.11-.94 3.57-1.52 7.24-2.54 10.78-.36.01-.71.02-1.06.06-.29-1.73-.15-3.48-.15-5.22v-38.13c.02-1.78-.08-3.58.11-5.37zM65.05 168.33c1.12-2.15 2.08-4.4 3.37-6.46-1.82 7.56-2.91 15.27-3.62 23-.8 7.71-.85 15.49-.54 23.23 1.05 19.94 5.54 39.83 14.23 57.88 2.99 5.99 6.35 11.83 10.5 17.11 6.12 7.47 12.53 14.76 19.84 21.09 4.8 4.1 9.99 7.78 15.54 10.8 3.27 1.65 6.51 3.39 9.94 4.68 5.01 2.03 10.19 3.61 15.42 4.94 3.83.96 7.78 1.41 11.52 2.71 5 1.57 9.47 4.61 13.03 8.43 4.93 5.23 8.09 11.87 10.2 18.67.99 2.9 1.59 5.91 2.17 8.92.15.75.22 1.52.16 2.29-6.5 2.78-13.26 5.06-20.26 6.18-4.11.78-8.29.99-12.46 1.08-10.25.24-20.47-1.76-30.12-5.12-3.74-1.42-7.49-2.85-11.03-4.72-8.06-3.84-15.64-8.7-22.46-14.46-2.92-2.55-5.83-5.13-8.4-8.03-9.16-9.83-16.3-21.41-21.79-33.65-2.39-5.55-4.61-11.18-6.37-16.96-1.17-3.94-2.36-7.89-3.26-11.91-.75-2.94-1.22-5.95-1.87-8.92-.46-2.14-.69-4.32-1.03-6.48-.85-5.43-1.28-10.93-1.33-16.43.11-6.18.25-12.37 1.07-18.5.4-2.86.67-5.74 1.15-8.6.98-5.7 2.14-11.37 3.71-16.93 3.09-11.65 7.48-22.95 12.69-33.84zm363.73-6.44c1.1 1.66 1.91 3.48 2.78 5.26 2.1 4.45 4.24 8.9 6.02 13.49 7.61 18.76 12.3 38.79 13.04 59.05.02 1.76.07 3.52.11 5.29.13 9.57-1.27 19.09-3.18 28.45-.73 3.59-1.54 7.17-2.58 10.69-4.04 14.72-10 29-18.41 41.78-8.21 12.57-19.01 23.55-31.84 31.41-5.73 3.59-11.79 6.64-18.05 9.19-5.78 2.19-11.71 4.03-17.8 5.11-6.4 1.05-12.91 1.52-19.4 1.23-7.92-.48-15.78-2.07-23.21-4.85-1.94-.8-3.94-1.46-5.84-2.33-.21-1.51.25-2.99.53-4.46 1.16-5.74 3.03-11.36 5.7-16.58 2.37-4.51 5.52-8.65 9.46-11.9 2.43-2.05 5.24-3.61 8.16-4.83 3.58-1.5 7.47-1.97 11.24-2.83 7.23-1.71 14.37-3.93 21.15-7 10.35-4.65 19.71-11.38 27.65-19.46 1.59-1.61 3.23-3.18 4.74-4.87 3.37-3.76 6.71-7.57 9.85-11.53 7.48-10.07 12.82-21.59 16.71-33.48 1.58-5.3 3.21-10.6 4.21-16.05.63-2.87 1.04-5.78 1.52-8.68.87-6.09 1.59-12.22 1.68-18.38.12-6.65.14-13.32-.53-19.94-.73-7.99-1.87-15.96-3.71-23.78z"], + "opencart": [640, 512, [], "f23d", "M423.3 440.7c0 25.3-20.3 45.6-45.6 45.6s-45.8-20.3-45.8-45.6 20.6-45.8 45.8-45.8c25.4 0 45.6 20.5 45.6 45.8zm-253.9-45.8c-25.3 0-45.6 20.6-45.6 45.8s20.3 45.6 45.6 45.6 45.8-20.3 45.8-45.6-20.5-45.8-45.8-45.8zm291.7-270C158.9 124.9 81.9 112.1 0 25.7c34.4 51.7 53.3 148.9 373.1 144.2 333.3-5 130 86.1 70.8 188.9 186.7-166.7 319.4-233.9 17.2-233.9z"], + "openid": [448, 512, [], "f19b", "M271.5 432l-68 32C88.5 453.7 0 392.5 0 318.2c0-71.5 82.5-131 191.7-144.3v43c-71.5 12.5-124 53-124 101.3 0 51 58.5 93.3 135.7 103v-340l68-33.2v384zM448 291l-131.3-28.5 36.8-20.7c-19.5-11.5-43.5-20-70-24.8v-43c46.2 5.5 87.7 19.5 120.3 39.3l35-19.8L448 291z"], + "opera": [496, 512, [], "f26a", "M313.9 32.7c-170.2 0-252.6 223.8-147.5 355.1 36.5 45.4 88.6 75.6 147.5 75.6 36.3 0 70.3-11.1 99.4-30.4-43.8 39.2-101.9 63-165.3 63-3.9 0-8 0-11.9-.3C104.6 489.6 0 381.1 0 248 0 111 111 0 248 0h.8c63.1.3 120.7 24.1 164.4 63.1-29-19.4-63.1-30.4-99.3-30.4zm101.8 397.7c-40.9 24.7-90.7 23.6-132-5.8 56.2-20.5 97.7-91.6 97.7-176.6 0-84.7-41.2-155.8-97.4-176.6 41.8-29.2 91.2-30.3 132.9-5 105.9 98.7 105.5 265.7-1.2 364z"], + "optin-monster": [576, 512, [], "f23c", "M572.6 421.4c5.6-9.5 4.7-15.2-5.4-11.6-3-4.9-7-9.5-11.1-13.8 2.9-9.7-.7-14.2-10.8-9.2-4.6-3.2-10.3-6.5-15.9-9.2 0-15.1-11.6-11.6-17.6-5.7-10.4-1.5-18.7-.3-26.8 5.7.3-6.5.3-13 .3-19.7 12.6 0 40.2-11 45.9-36.2 1.4-6.8 1.6-13.8-.3-21.9-3-13.5-14.3-21.3-25.1-25.7-.8-5.9-7.6-14.3-14.9-15.9s-12.4 4.9-14.1 10.3c-8.5 0-19.2 2.8-21.1 8.4-5.4-.5-11.1-1.4-16.8-1.9 2.7-1.9 5.4-3.5 8.4-4.6 5.4-9.2 14.6-11.4 25.7-11.6V256c19.5-.5 43-5.9 53.8-18.1 12.7-13.8 14.6-37.3 12.4-55.1-2.4-17.3-9.7-37.6-24.6-48.1-8.4-5.9-21.6-.8-22.7 9.5-2.2 19.6 1.2 30-38.6 25.1-10.3-23.8-24.6-44.6-42.7-60C341 49.6 242.9 55.5 166.4 71.7c19.7 4.6 41.1 8.6 59.7 16.5-26.2 2.4-52.7 11.3-76.2 23.2-32.8 17-44 29.9-56.7 42.4 14.9-2.2 28.9-5.1 43.8-3.8-9.7 5.4-18.4 12.2-26.5 20-25.8.9-23.8-5.3-26.2-25.9-1.1-10.5-14.3-15.4-22.7-9.7-28.1 19.9-33.5 79.9-12.2 103.5 10.8 12.2 35.1 17.3 54.9 17.8-.3 1.1-.3 1.9-.3 2.7 10.8.5 19.5 2.7 24.6 11.6 3 1.1 5.7 2.7 8.1 4.6-5.4.5-11.1 1.4-16.5 1.9-3.3-6.6-13.7-8.1-21.1-8.1-1.6-5.7-6.5-12.2-14.1-10.3-6.8 1.9-14.1 10-14.9 15.9-22.5 9.5-30.1 26.8-25.1 47.6 5.3 24.8 33 36.2 45.9 36.2v19.7c-6.6-5-14.3-7.5-26.8-5.7-5.5-5.5-17.3-10.1-17.3 5.7-5.9 2.7-11.4 5.9-15.9 9.2-9.8-4.9-13.6-1.7-11.1 9.2-4.1 4.3-7.8 8.6-11.1 13.8-10.2-3.7-11 2.2-5.4 11.6-1.1 3.5-1.6 7-1.9 10.8-.5 31.6 44.6 64 73.5 65.1 17.3.5 34.6-8.4 43-23.5 113.2 4.9 226.7 4.1 340.2 0 8.1 15.1 25.4 24.3 42.7 23.5 29.2-1.1 74.3-33.5 73.5-65.1.2-3.7-.7-7.2-1.7-10.7zm-73.8-254c1.1-3 2.4-8.4 2.4-14.6 0-5.9 6.8-8.1 14.1-.8 11.1 11.6 14.9 40.5 13.8 51.1-4.1-13.6-13-29-30.3-35.7zm-4.6 6.7c19.5 6.2 28.6 27.6 29.7 48.9-1.1 2.7-3 5.4-4.9 7.6-5.7 5.9-15.4 10-26.2 12.2 4.3-21.3.3-47.3-12.7-63 4.9-.8 10.9-2.4 14.1-5.7zm-24.1 6.8c13.8 11.9 20 39.2 14.1 63.5-4.1.5-8.1.8-11.6.8-1.9-21.9-6.8-44-14.3-64.6 3.7.3 8.1.3 11.8.3zM47.5 203c-1.1-10.5 2.4-39.5 13.8-51.1 7-7.3 14.1-5.1 14.1.8 0 6.2 1.4 11.6 2.4 14.6-17.3 6.8-26.2 22.2-30.3 35.7zm9.7 27.6c-1.9-2.2-3.5-4.9-4.9-7.6 1.4-21.3 10.3-42.7 29.7-48.9 3.2 3.2 9.2 4.9 14.1 5.7-13 15.7-17 41.6-12.7 63-10.8-2.2-20.5-6-26.2-12.2zm47.9 14.6c-4.1 0-8.1-.3-12.7-.8-4.6-18.6-1.9-38.9 5.4-53v.3l12.2-5.1c4.9-1.9 9.7-3.8 14.9-4.9-10.7 19.7-17.4 41.3-19.8 63.5zm184-162.7c41.9 0 76.2 34 76.2 75.9 0 42.2-34.3 76.2-76.2 76.2s-76.2-34-76.2-76.2c0-41.8 34.3-75.9 76.2-75.9zm115.6 174.3c-.3 17.8-7 48.9-23 57-13.2 6.6-6.5-7.5-16.5-58.1 13.3.3 26.6.3 39.5 1.1zm-54-1.6c.8 4.9 3.8 40.3-1.6 41.9-11.6 3.5-40 4.3-51.1-1.1-4.1-3-4.6-35.9-4.3-41.1v.3c18.9-.3 38.1-.3 57 0zM278.3 309c-13 3.5-41.6 4.1-54.6-1.6-6.5-2.7-3.8-42.4-1.9-51.6 19.2-.5 38.4-.5 57.8-.8v.3c1.1 8.3 3.3 51.2-1.3 53.7zm-106.5-51.1c12.2-.8 24.6-1.4 36.8-1.6-2.4 15.4-3 43.5-4.9 52.2-1.1 6.8-4.3 6.8-9.7 4.3-21.9-9.8-27.6-35.2-22.2-54.9zm-35.4 31.3c7.8-1.1 15.7-1.9 23.5-2.7 1.6 6.2 3.8 11.9 7 17.6 10 17 44 35.7 45.1 7 6.2 14.9 40.8 12.2 54.9 10.8 15.7-1.4 23.8-1.4 26.8-14.3 12.4 4.3 30.8 4.1 44 3 11.3-.8 20.8-.5 24.6-8.9 1.1 5.1 1.9 11.6 4.6 16.8 10.8 21.3 37.3 1.4 46.8-31.6 8.6.8 17.6 1.9 26.5 2.7-.4 1.3-3.8 7.3 7.3 11.6-47.6 47-95.7 87.8-163.2 107-63.2-20.8-112.1-59.5-155.9-106.5 9.6-3.4 10.4-8.8 8-12.5zm-21.6 172.5c-3.8 17.8-21.9 29.7-39.7 28.9-19.2-.8-46.5-17-59.2-36.5-2.7-31.1 43.8-61.3 66.2-54.6 14.9 4.3 27.8 30.8 33.5 54 0 3-.3 5.7-.8 8.2zm-8.7-66c-.5-13.5-.5-27-.3-40.5h.3c2.7-1.6 5.7-3.8 7.8-6.5 6.5-1.6 13-5.1 15.1-9.2 3.3-7.1-7-7.5-5.4-12.4 2.7-1.1 5.7-2.2 7.8-3.5 29.2 29.2 58.6 56.5 97.3 77-36.8 11.3-72.4 27.6-105.9 47-1.2-18.6-7.7-35.9-16.7-51.9zm337.6 64.6c-103 3.5-206.2 4.1-309.4 0 0 .3 0 .3-.3.3v-.3h.3c35.1-21.6 72.2-39.2 112.4-50.8 11.6 5.1 23 9.5 34.9 13.2 2.2.8 2.2.8 4.3 0 14.3-4.1 28.4-9.2 42.2-15.4 41.5 11.7 78.8 31.7 115.6 53zm10.5-12.4c-35.9-19.5-73-35.9-111.9-47.6 38.1-20 71.9-47.3 103.5-76.7 2.2 1.4 4.6 2.4 7.6 3.2 0 .8.3 1.9.5 2.4-4.6 2.7-7.8 6.2-5.9 10.3 2.2 3.8 8.6 7.6 15.1 8.9 2.4 2.7 5.1 5.1 8.1 6.8 0 13.8-.3 27.6-.8 41.3l.3-.3c-9.3 15.9-15.5 37-16.5 51.7zm105.9 6.2c-12.7 19.5-40 35.7-59.2 36.5-19.3.9-40.5-13.2-40.5-37 5.7-23.2 18.9-49.7 33.5-54 22.7-6.9 69.2 23.4 66.2 54.5zM372.9 75.2c-3.8-72.1-100.8-79.7-126-23.5 44.6-24.3 90.3-15.7 126 23.5zM74.8 407.1c-15.7 1.6-49.5 25.4-49.5 43.2 0 11.6 15.7 19.5 32.2 14.9 12.2-3.2 31.1-17.6 35.9-27.3 6-11.6-3.7-32.7-18.6-30.8zm215.9-176.2c28.6 0 51.9-21.6 51.9-48.4 0-36.1-40.5-58.1-72.2-44.3 9.5 3 16.5 11.6 16.5 21.6 0 23.3-33.3 32-46.5 11.3-7.3 34.1 19.4 59.8 50.3 59.8zM68 474.1c.5 6.5 12.2 12.7 21.6 9.5 6.8-2.7 14.6-10.5 17.3-16.2 3-7-1.1-20-9.7-18.4-8.9 1.6-29.7 16.7-29.2 25.1zm433.2-67c-14.9-1.9-24.6 19.2-18.9 30.8 4.9 9.7 24.1 24.1 36.2 27.3 16.5 4.6 32.2-3.2 32.2-14.9 0-17.8-33.8-41.6-49.5-43.2zM478.8 449c-8.4-1.6-12.4 11.3-9.5 18.4 2.4 5.7 10.3 13.5 17.3 16.2 9.2 3.2 21.1-3 21.3-9.5.9-8.4-20.2-23.5-29.1-25.1z"], + "orcid": [512, 512, [], "f8d2", "M294.75 188.19h-45.92V342h47.47c67.62 0 83.12-51.34 83.12-76.91 0-41.64-26.54-76.9-84.67-76.9zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm-80.79 360.76h-29.84v-207.5h29.84zm-14.92-231.14a19.57 19.57 0 1 1 19.57-19.57 19.64 19.64 0 0 1-19.57 19.57zM300 369h-81V161.26h80.6c76.73 0 110.44 54.83 110.44 103.85C410 318.39 368.38 369 300 369z"], + "osi": [512, 512, [], "f41a", "M8 266.44C10.3 130.64 105.4 34 221.8 18.34c138.8-18.6 255.6 75.8 278 201.1 21.3 118.8-44 230-151.6 274-9.3 3.8-14.4 1.7-18-7.7q-26.7-69.45-53.4-139c-3.1-8.1-1-13.2 7-16.8 24.2-11 39.3-29.4 43.3-55.8a71.47 71.47 0 0 0-64.5-82.2c-39-3.4-71.8 23.7-77.5 59.7-5.2 33 11.1 63.7 41.9 77.7 9.6 4.4 11.5 8.6 7.8 18.4q-26.85 69.9-53.7 139.9c-2.6 6.9-8.3 9.3-15.5 6.5-52.6-20.3-101.4-61-130.8-119-24.9-49.2-25.2-87.7-26.8-108.7zm20.9-1.9c.4 6.6.6 14.3 1.3 22.1 6.3 71.9 49.6 143.5 131 183.1 3.2 1.5 4.4.8 5.6-2.3q22.35-58.65 45-117.3c1.3-3.3.6-4.8-2.4-6.7-31.6-19.9-47.3-48.5-45.6-86 1-21.6 9.3-40.5 23.8-56.3 30-32.7 77-39.8 115.5-17.6a91.64 91.64 0 0 1 45.2 90.4c-3.6 30.6-19.3 53.9-45.7 69.8-2.7 1.6-3.5 2.9-2.3 6q22.8 58.8 45.2 117.7c1.2 3.1 2.4 3.8 5.6 2.3 35.5-16.6 65.2-40.3 88.1-72 34.8-48.2 49.1-101.9 42.3-161-13.7-117.5-119.4-214.8-255.5-198-106.1 13-195.3 102.5-197.1 225.8z"], + "page4": [496, 512, [], "f3d7", "M248 504C111 504 0 393 0 256S111 8 248 8c20.9 0 41.3 2.6 60.7 7.5L42.3 392H248v112zm0-143.6V146.8L98.6 360.4H248zm96 31.6v92.7c45.7-19.2 84.5-51.7 111.4-92.7H344zm57.4-138.2l-21.2 8.4 21.2 8.3v-16.7zm-20.3 54.5c-6.7 0-8 6.3-8 12.9v7.7h16.2v-10c0-5.9-2.3-10.6-8.2-10.6zM496 256c0 37.3-8.2 72.7-23 104.4H344V27.3C433.3 64.8 496 153.1 496 256zM360.4 143.6h68.2V96h-13.9v32.6h-13.9V99h-13.9v29.6h-12.7V96h-13.9v47.6zm68.1 185.3H402v-11c0-15.4-5.6-25.2-20.9-25.2-15.4 0-20.7 10.6-20.7 25.9v25.3h68.2v-15zm0-103l-68.2 29.7V268l68.2 29.5v-16.6l-14.4-5.7v-26.5l14.4-5.9v-16.9zm-4.8-68.5h-35.6V184H402v-12.2h11c8.6 15.8 1.3 35.3-18.6 35.3-22.5 0-28.3-25.3-15.5-37.7l-11.6-10.6c-16.2 17.5-12.2 63.9 27.1 63.9 34 0 44.7-35.9 29.3-65.3z"], + "pagelines": [384, 512, [], "f18c", "M384 312.7c-55.1 136.7-187.1 54-187.1 54-40.5 81.8-107.4 134.4-184.6 134.7-16.1 0-16.6-24.4 0-24.4 64.4-.3 120.5-42.7 157.2-110.1-41.1 15.9-118.6 27.9-161.6-82.2 109-44.9 159.1 11.2 178.3 45.5 9.9-24.4 17-50.9 21.6-79.7 0 0-139.7 21.9-149.5-98.1 119.1-47.9 152.6 76.7 152.6 76.7 1.6-16.7 3.3-52.6 3.3-53.4 0 0-106.3-73.7-38.1-165.2 124.6 43 61.4 162.4 61.4 162.4.5 1.6.5 23.8 0 33.4 0 0 45.2-89 136.4-57.5-4.2 134-141.9 106.4-141.9 106.4-4.4 27.4-11.2 53.4-20 77.5 0 0 83-91.8 172-20z"], + "palfed": [576, 512, [], "f3d8", "M384.9 193.9c0-47.4-55.2-44.2-95.4-29.8-1.3 39.4-2.5 80.7-3 119.8.7 2.8 2.6 6.2 15.1 6.2 36.8 0 83.4-42.8 83.3-96.2zm-194.5 72.2c.2 0 6.5-2.7 11.2-2.7 26.6 0 20.7 44.1-14.4 44.1-21.5 0-37.1-18.1-37.1-43 0-42 42.9-95.6 100.7-126.5 1-12.4 3-22 10.5-28.2 11.2-9 26.6-3.5 29.5 11.1 72.2-22.2 135.2 1 135.2 72 0 77.9-79.3 152.6-140.1 138.2-.1 39.4.9 74.4 2.7 100v.2c.2 3.4.6 12.5-5.3 19.1-9.6 10.6-33.4 10-36.4-22.3-4.1-44.4.2-206.1 1.4-242.5-21.5 15-58.5 50.3-58.5 75.9.2 2.5.4 4 .6 4.6zM8 181.1s-.1 37.4 38.4 37.4h30l22.4 217.2s0 44.3 44.7 44.3h288.9s44.7-.4 44.7-44.3l22.4-217.2h30s38.4 1.2 38.4-37.4c0 0 .1-37.4-38.4-37.4h-30.1c-7.3-25.6-30.2-74.3-119.4-74.3h-28V50.3s-2.7-18.4-21.1-18.4h-85.8s-21.1 0-21.1 18.4v19.1h-28.1s-105 4.2-120.5 74.3h-29S8 142.5 8 181.1z"], + "patreon": [512, 512, [], "f3d9", "M512 194.8c0 101.3-82.4 183.8-183.8 183.8-101.7 0-184.4-82.4-184.4-183.8 0-101.6 82.7-184.3 184.4-184.3C429.6 10.5 512 93.2 512 194.8zM0 501.5h90v-491H0v491z"], + "paypal": [384, 512, [], "f1ed", "M111.4 295.9c-3.5 19.2-17.4 108.7-21.5 134-.3 1.8-1 2.5-3 2.5H12.3c-7.6 0-13.1-6.6-12.1-13.9L58.8 46.6c1.5-9.6 10.1-16.9 20-16.9 152.3 0 165.1-3.7 204 11.4 60.1 23.3 65.6 79.5 44 140.3-21.5 62.6-72.5 89.5-140.1 90.3-43.4.7-69.5-7-75.3 24.2zM357.1 152c-1.8-1.3-2.5-1.8-3 1.3-2 11.4-5.1 22.5-8.8 33.6-39.9 113.8-150.5 103.9-204.5 103.9-6.1 0-10.1 3.3-10.9 9.4-22.6 140.4-27.1 169.7-27.1 169.7-1 7.1 3.5 12.9 10.6 12.9h63.5c8.6 0 15.7-6.3 17.4-14.9.7-5.4-1.1 6.1 14.4-91.3 4.6-22 14.3-19.7 29.3-19.7 71 0 126.4-28.8 142.9-112.3 6.5-34.8 4.6-71.4-23.8-92.6z"], + "penny-arcade": [640, 512, [], "f704", "M421.91 164.27c-4.49 19.45-1.4 6.06-15.1 65.29l39.73-10.61c-22.34-49.61-17.29-38.41-24.63-54.68zm-206.09 51.11c-20.19 5.4-11.31 3.03-39.63 10.58l4.46 46.19c28.17-7.59 20.62-5.57 34.82-9.34 42.3-9.79 32.85-56.42.35-47.43zm326.16-26.19l-45.47-99.2c-5.69-12.37-19.46-18.84-32.62-15.33-70.27 18.75-38.72 10.32-135.59 36.23a27.618 27.618 0 0 0-18.89 17.41C144.26 113.27 0 153.75 0 226.67c0 33.5 30.67 67.11 80.9 95.37l1.74 17.88a27.891 27.891 0 0 0-17.77 28.67l4.3 44.48c1.39 14.31 13.43 25.21 27.8 25.2 5.18-.01-3.01 1.78 122.53-31.76 12.57-3.37 21.12-15.02 20.58-28.02 216.59 45.5 401.99-5.98 399.89-84.83.01-28.15-22.19-66.56-97.99-104.47zM255.14 298.3l-21.91 5.88-48.44 12.91 2.46 23.55 20.53-5.51 4.51 44.51-115.31 30.78-4.3-44.52 20.02-5.35-11.11-114.64-20.12 5.39-4.35-44.5c178.15-47.54 170.18-46.42 186.22-46.65 56.66-1.13 64.15 71.84 42.55 104.43a86.7 86.7 0 0 1-50.75 33.72zm199.18 16.62l-3.89-39.49 14.9-3.98-6.61-14.68-57.76 15.42-4.1 17.54 19.2-5.12 4.05 39.54-112.85 30.07-4.46-44.43 20.99-5.59 33.08-126.47-17.15 4.56-4.2-44.48c93.36-24.99 65.01-17.41 135.59-36.24l66.67 145.47 20.79-5.56 4.3 44.48-108.55 28.96z"], + "perbyte": [448, 512, [], "e083", "M305.314,284.578H246.6V383.3h58.711q24.423,0,38.193-13.77t13.77-36.11q0-21.826-14.032-35.335T305.314,284.578ZM149.435,128.7H90.724v98.723h58.711q24.42,0,38.19-13.773t13.77-36.107q0-21.826-14.029-35.338T149.435,128.7ZM366.647,32H81.353A81.445,81.445,0,0,0,0,113.352V398.647A81.445,81.445,0,0,0,81.353,480H366.647A81.445,81.445,0,0,0,448,398.647V113.352A81.445,81.445,0,0,0,366.647,32Zm63.635,366.647a63.706,63.706,0,0,1-63.635,63.635H81.353a63.706,63.706,0,0,1-63.635-63.635V113.352A63.706,63.706,0,0,1,81.353,49.718H366.647a63.706,63.706,0,0,1,63.635,63.634ZM305.314,128.7H246.6v98.723h58.711q24.423,0,38.193-13.773t13.77-36.107q0-21.826-14.032-35.338T305.314,128.7Z"], + "periscope": [448, 512, [], "f3da", "M370 63.6C331.4 22.6 280.5 0 226.6 0 111.9 0 18.5 96.2 18.5 214.4c0 75.1 57.8 159.8 82.7 192.7C137.8 455.5 192.6 512 226.6 512c41.6 0 112.9-94.2 120.9-105 24.6-33.1 82-118.3 82-192.6 0-56.5-21.1-110.1-59.5-150.8zM226.6 493.9c-42.5 0-190-167.3-190-279.4 0-107.4 83.9-196.3 190-196.3 100.8 0 184.7 89 184.7 196.3.1 112.1-147.4 279.4-184.7 279.4zM338 206.8c0 59.1-51.1 109.7-110.8 109.7-100.6 0-150.7-108.2-92.9-181.8v.4c0 24.5 20.1 44.4 44.8 44.4 24.7 0 44.8-19.9 44.8-44.4 0-18.2-11.1-33.8-26.9-40.7 76.6-19.2 141 39.3 141 112.4z"], + "phabricator": [496, 512, [], "f3db", "M323 262.1l-.1-13s21.7-19.8 21.1-21.2l-9.5-20c-.6-1.4-29.5-.5-29.5-.5l-9.4-9.3s.2-28.5-1.2-29.1l-20.1-9.2c-1.4-.6-20.7 21-20.7 21l-13.1-.2s-20.5-21.4-21.9-20.8l-20 8.3c-1.4.5.2 28.9.2 28.9l-9.1 9.1s-29.2-.9-29.7.4l-8.1 19.8c-.6 1.4 21 21 21 21l.1 12.9s-21.7 19.8-21.1 21.2l9.5 20c.6 1.4 29.5.5 29.5.5l9.4 9.3s-.2 31.8 1.2 32.3l20.1 8.3c1.4.6 20.7-23.5 20.7-23.5l13.1.2s20.5 23.8 21.8 23.3l20-7.5c1.4-.6-.2-32.1-.2-32.1l9.1-9.1s29.2.9 29.7-.5l8.1-19.8c.7-1.1-20.9-20.7-20.9-20.7zm-44.9-8.7c.7 17.1-12.8 31.6-30.1 32.4-17.3.8-32.1-12.5-32.8-29.6-.7-17.1 12.8-31.6 30.1-32.3 17.3-.8 32.1 12.5 32.8 29.5zm201.2-37.9l-97-97-.1.1c-75.1-73.3-195.4-72.8-269.8 1.6-50.9 51-27.8 27.9-95.7 95.3-22.3 22.3-22.3 58.7 0 81 69.9 69.4 46.4 46 97.4 97l.1-.1c75.1 73.3 195.4 72.9 269.8-1.6 51-50.9 27.9-27.9 95.3-95.3 22.3-22.3 22.3-58.7 0-81zM140.4 363.8c-59.6-59.5-59.6-156 0-215.5 59.5-59.6 156-59.5 215.6 0 59.5 59.5 59.6 156 0 215.6-59.6 59.5-156 59.4-215.6-.1z"], + "phoenix-framework": [640, 512, [], "f3dc", "M212.9 344.3c3.8-.1 22.8-1.4 25.6-2.2-2.4-2.6-43.6-1-68-49.6-4.3-8.6-7.5-17.6-6.4-27.6 2.9-25.5 32.9-30 52-18.5 36 21.6 63.3 91.3 113.7 97.5 37 4.5 84.6-17 108.2-45.4-.6-.1-.8-.2-1-.1-.4.1-.8.2-1.1.3-33.3 12.1-94.3 9.7-134.7-14.8-37.6-22.8-53.1-58.7-51.8-74.6 1.8-21.3 22.9-23.2 35.9-19.6 14.4 3.9 24.4 17.6 38.9 27.4 15.6 10.4 32.9 13.7 51.3 10.3 14.9-2.7 34.4-12.3 36.5-14.5-1.1-.1-1.8-.1-2.5-.2-6.2-.6-12.4-.8-18.5-1.7C279.8 194.5 262.1 47.4 138.5 37.9 94.2 34.5 39.1 46 2.2 72.9c-.8.6-1.5 1.2-2.2 1.8.1.2.1.3.2.5.8 0 1.6-.1 2.4-.2 6.3-1 12.5-.8 18.7.3 23.8 4.3 47.7 23.1 55.9 76.5 5.3 34.3-.7 50.8 8 86.1 19 77.1 91 107.6 127.7 106.4zM75.3 64.9c-.9-1-.9-1.2-1.3-2 12.1-2.6 24.2-4.1 36.6-4.8-1.1 14.7-22.2 21.3-35.3 6.8zm196.9 350.5c-42.8 1.2-92-26.7-123.5-61.4-4.6-5-16.8-20.2-18.6-23.4l.4-.4c6.6 4.1 25.7 18.6 54.8 27 24.2 7 48.1 6.3 71.6-3.3 22.7-9.3 41-.5 43.1 2.9-18.5 3.8-20.1 4.4-24 7.9-5.1 4.4-4.6 11.7 7 17.2 26.2 12.4 63-2.8 97.2 25.4 2.4 2 8.1 7.8 10.1 10.7-.1.2-.3.3-.4.5-4.8-1.5-16.4-7.5-40.2-9.3-24.7-2-46.3 5.3-77.5 6.2zm174.8-252c16.4-5.2 41.3-13.4 66.5-3.3 16.1 6.5 26.2 18.7 32.1 34.6 3.5 9.4 5.1 19.7 5.1 28.7-.2 0-.4 0-.6.1-.2-.4-.4-.9-.5-1.3-5-22-29.9-43.8-67.6-29.9-50.2 18.6-130.4 9.7-176.9-48-.7-.9-2.4-1.7-1.3-3.2.1-.2 2.1.6 3 1.3 18.1 13.4 38.3 21.9 60.3 26.2 30.5 6.1 54.6 2.9 79.9-5.2zm102.7 117.5c-32.4.2-33.8 50.1-103.6 64.4-18.2 3.7-38.7 4.6-44.9 4.2v-.4c2.8-1.5 14.7-2.6 29.7-16.6 7.9-7.3 15.3-15.1 22.8-22.9 19.5-20.2 41.4-42.2 81.9-39 23.1 1.8 29.3 8.2 36.1 12.7.3.2.4.5.7.9-.5 0-.7.1-.9 0-7-2.7-14.3-3.3-21.8-3.3zm-12.3-24.1c-.1.2-.1.4-.2.6-28.9-4.4-48-7.9-68.5 4-17 9.9-31.4 20.5-62 24.4-27.1 3.4-45.1 2.4-66.1-8-.3-.2-.6-.4-1-.6 0-.2.1-.3.1-.5 24.9 3.8 36.4 5.1 55.5-5.8 22.3-12.9 40.1-26.6 71.3-31 29.6-4.1 51.3 2.5 70.9 16.9zM268.6 97.3c-.6-.6-1.1-1.2-2.1-2.3 7.6 0 29.7-1.2 53.4 8.4 19.7 8 32.2 21 50.2 32.9 11.1 7.3 23.4 9.3 36.4 8.1 4.3-.4 8.5-1.2 12.8-1.7.4-.1.9 0 1.5.3-.6.4-1.2.9-1.8 1.2-8.1 4-16.7 6.3-25.6 7.1-26.1 2.6-50.3-3.7-73.4-15.4-19.3-9.9-36.4-22.9-51.4-38.6zM640 335.7c-3.5 3.1-22.7 11.6-42.7 5.3-12.3-3.9-19.5-14.9-31.6-24.1-10-7.6-20.9-7.9-28.1-8.4.6-.8.9-1.2 1.2-1.4 14.8-9.2 30.5-12.2 47.3-6.5 12.5 4.2 19.2 13.5 30.4 24.2 10.8 10.4 21 9.9 23.1 10.5.1-.1.2 0 .4.4zm-212.5 137c2.2 1.2 1.6 1.5 1.5 2-18.5-1.4-33.9-7.6-46.8-22.2-21.8-24.7-41.7-27.9-48.6-29.7.5-.2.8-.4 1.1-.4 13.1.1 26.1.7 38.9 3.9 25.3 6.4 35 25.4 41.6 35.3 3.2 4.8 7.3 8.3 12.3 11.1z"], + "phoenix-squadron": [512, 512, [], "f511", "M96 63.38C142.49 27.25 201.55 7.31 260.51 8.81c29.58-.38 59.11 5.37 86.91 15.33-24.13-4.63-49-6.34-73.38-2.45C231.17 27 191 48.84 162.21 80.87c5.67-1 10.78-3.67 16-5.86 18.14-7.87 37.49-13.26 57.23-14.83 19.74-2.13 39.64-.43 59.28 1.92-14.42 2.79-29.12 4.57-43 9.59-34.43 11.07-65.27 33.16-86.3 62.63-13.8 19.71-23.63 42.86-24.67 67.13-.35 16.49 5.22 34.81 19.83 44a53.27 53.27 0 0 0 37.52 6.74c15.45-2.46 30.07-8.64 43.6-16.33 11.52-6.82 22.67-14.55 32-24.25 3.79-3.22 2.53-8.45 2.62-12.79-2.12-.34-4.38-1.11-6.3.3a203 203 0 0 1-35.82 15.37c-20 6.17-42.16 8.46-62.1.78 12.79 1.73 26.06.31 37.74-5.44 20.23-9.72 36.81-25.2 54.44-38.77a526.57 526.57 0 0 1 88.9-55.31c25.71-12 52.94-22.78 81.57-24.12-15.63 13.72-32.15 26.52-46.78 41.38-14.51 14-27.46 29.5-40.11 45.18-3.52 4.6-8.95 6.94-13.58 10.16a150.7 150.7 0 0 0-51.89 60.1c-9.33 19.68-14.5 41.85-11.77 63.65 1.94 13.69 8.71 27.59 20.9 34.91 12.9 8 29.05 8.07 43.48 5.1 32.8-7.45 61.43-28.89 81-55.84 20.44-27.52 30.52-62.2 29.16-96.35-.52-7.5-1.57-15-1.66-22.49 8 19.48 14.82 39.71 16.65 60.83 2 14.28.75 28.76-1.62 42.9-1.91 11-5.67 21.51-7.78 32.43a165 165 0 0 0 39.34-81.07 183.64 183.64 0 0 0-14.21-104.64c20.78 32 32.34 69.58 35.71 107.48.49 12.73.49 25.51 0 38.23A243.21 243.21 0 0 1 482 371.34c-26.12 47.34-68 85.63-117.19 108-78.29 36.23-174.68 31.32-248-14.68A248.34 248.34 0 0 1 25.36 366 238.34 238.34 0 0 1 0 273.08v-31.34C3.93 172 40.87 105.82 96 63.38m222 80.33a79.13 79.13 0 0 0 16-4.48c5-1.77 9.24-5.94 10.32-11.22-8.96 4.99-17.98 9.92-26.32 15.7z"], + "php": [640, 512, [], "f457", "M320 104.5c171.4 0 303.2 72.2 303.2 151.5S491.3 407.5 320 407.5c-171.4 0-303.2-72.2-303.2-151.5S148.7 104.5 320 104.5m0-16.8C143.3 87.7 0 163 0 256s143.3 168.3 320 168.3S640 349 640 256 496.7 87.7 320 87.7zM218.2 242.5c-7.9 40.5-35.8 36.3-70.1 36.3l13.7-70.6c38 0 63.8-4.1 56.4 34.3zM97.4 350.3h36.7l8.7-44.8c41.1 0 66.6 3 90.2-19.1 26.1-24 32.9-66.7 14.3-88.1-9.7-11.2-25.3-16.7-46.5-16.7h-70.7L97.4 350.3zm185.7-213.6h36.5l-8.7 44.8c31.5 0 60.7-2.3 74.8 10.7 14.8 13.6 7.7 31-8.3 113.1h-37c15.4-79.4 18.3-86 12.7-92-5.4-5.8-17.7-4.6-47.4-4.6l-18.8 96.6h-36.5l32.7-168.6zM505 242.5c-8 41.1-36.7 36.3-70.1 36.3l13.7-70.6c38.2 0 63.8-4.1 56.4 34.3zM384.2 350.3H421l8.7-44.8c43.2 0 67.1 2.5 90.2-19.1 26.1-24 32.9-66.7 14.3-88.1-9.7-11.2-25.3-16.7-46.5-16.7H417l-32.8 168.7z"], + "pied-piper": [480, 512, [], "f2ae", "M455.93,23.2C429.23,30,387.79,51.69,341.35,90.66A206,206,0,0,0,240,64C125.13,64,32,157.12,32,272s93.13,208,208,208,208-93.13,208-208a207.25,207.25,0,0,0-58.75-144.81,155.35,155.35,0,0,0-17,27.4A176.16,176.16,0,0,1,417.1,272c0,97.66-79.44,177.11-177.09,177.11a175.81,175.81,0,0,1-87.63-23.4c82.94-107.33,150.79-37.77,184.31-226.65,5.79-32.62,28-94.26,126.23-160.18C471,33.45,465.35,20.8,455.93,23.2ZM125,406.4A176.66,176.66,0,0,1,62.9,272C62.9,174.34,142.35,94.9,240,94.9a174,174,0,0,1,76.63,17.75C250.64,174.76,189.77,265.52,125,406.4Z"], + "pied-piper-alt": [576, 512, [], "f1a8", "M244 246c-3.2-2-6.3-2.9-10.1-2.9-6.6 0-12.6 3.2-19.3 3.7l1.7 4.9zm135.9 197.9c-19 0-64.1 9.5-79.9 19.8l6.9 45.1c35.7 6.1 70.1 3.6 106-9.8-4.8-10-23.5-55.1-33-55.1zM340.8 177c6.6 2.8 11.5 9.2 22.7 22.1 2-1.4 7.5-5.2 7.5-8.6 0-4.9-11.8-13.2-13.2-23 11.2-5.7 25.2-6 37.6-8.9 68.1-16.4 116.3-52.9 146.8-116.7C548.3 29.3 554 16.1 554.6 2l-2 2.6c-28.4 50-33 63.2-81.3 100-31.9 24.4-69.2 40.2-106.6 54.6l-6.3-.3v-21.8c-19.6 1.6-19.7-14.6-31.6-23-18.7 20.6-31.6 40.8-58.9 51.1-12.7 4.8-19.6 10-25.9 21.8 34.9-16.4 91.2-13.5 98.8-10zM555.5 0l-.6 1.1-.3.9.6-.6zm-59.2 382.1c-33.9-56.9-75.3-118.4-150-115.5l-.3-6c-1.1-13.5 32.8 3.2 35.1-31l-14.4 7.2c-19.8-45.7-8.6-54.3-65.5-54.3-14.7 0-26.7 1.7-41.4 4.6 2.9 18.6 2.2 36.7-10.9 50.3l19.5 5.5c-1.7 3.2-2.9 6.3-2.9 9.8 0 21 42.8 2.9 42.8 33.6 0 18.4-36.8 60.1-54.9 60.1-8 0-53.7-50-53.4-60.1l.3-4.6 52.3-11.5c13-2.6 12.3-22.7-2.9-22.7-3.7 0-43.1 9.2-49.4 10.6-2-5.2-7.5-14.1-13.8-14.1-3.2 0-6.3 3.2-9.5 4-9.2 2.6-31 2.9-21.5 20.1L15.9 298.5c-5.5 1.1-8.9 6.3-8.9 11.8 0 6 5.5 10.9 11.5 10.9 8 0 131.3-28.4 147.4-32.2 2.6 3.2 4.6 6.3 7.8 8.6 20.1 14.4 59.8 85.9 76.4 85.9 24.1 0 58-22.4 71.3-41.9 3.2-4.3 6.9-7.5 12.4-6.9.6 13.8-31.6 34.2-33 43.7-1.4 10.2-1 35.2-.3 41.1 26.7 8.1 52-3.6 77.9-2.9 4.3-21 10.6-41.9 9.8-63.5l-.3-9.5c-1.4-34.2-10.9-38.5-34.8-58.6-1.1-1.1-2.6-2.6-3.7-4 2.2-1.4 1.1-1 4.6-1.7 88.5 0 56.3 183.6 111.5 229.9 33.1-15 72.5-27.9 103.5-47.2-29-25.6-52.6-45.7-72.7-79.9zm-196.2 46.1v27.2l11.8-3.4-2.9-23.8zm-68.7-150.4l24.1 61.2 21-13.8-31.3-50.9zm84.4 154.9l2 12.4c9-1.5 58.4-6.6 58.4-14.1 0-1.4-.6-3.2-.9-4.6-26.8 0-36.9 3.8-59.5 6.3z"], + "pied-piper-hat": [640, 512, [], "f4e5", "M640 24.9c-80.8 53.6-89.4 92.5-96.4 104.4-6.7 12.2-11.7 60.3-23.3 83.6-11.7 23.6-54.2 42.2-66.1 50-11.7 7.8-28.3 38.1-41.9 64.2-108.1-4.4-167.4 38.8-259.2 93.6 29.4-9.7 43.3-16.7 43.3-16.7 94.2-36 139.3-68.3 281.1-49.2 1.1 0 1.9.6 2.8.8 3.9 2.2 5.3 6.9 3.1 10.8l-53.9 95.8c-2.5 4.7-7.8 7.2-13.1 6.1-126.8-23.8-226.9 17.3-318.9 18.6C24.1 488 0 453.4 0 451.8c0-1.1.6-1.7 1.7-1.7 0 0 38.3 0 103.1-15.3C178.4 294.5 244 245.4 315.4 245.4c0 0 71.7 0 90.6 61.9 22.8-39.7 28.3-49.2 28.3-49.2 5.3-9.4 35-77.2 86.4-141.4 51.5-64 90.4-79.9 119.3-91.8z"], + "pied-piper-pp": [448, 512, [], "f1a7", "M205.3 174.6c0 21.1-14.2 38.1-31.7 38.1-7.1 0-12.8-1.2-17.2-3.7v-68c4.4-2.7 10.1-4.2 17.2-4.2 17.5 0 31.7 16.9 31.7 37.8zm52.6 67c-7.1 0-12.8 1.5-17.2 4.2v68c4.4 2.5 10.1 3.7 17.2 3.7 17.4 0 31.7-16.9 31.7-37.8 0-21.1-14.3-38.1-31.7-38.1zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM185 255.1c41 0 74.2-35.6 74.2-79.6 0-44-33.2-79.6-74.2-79.6-12 0-24.1 3.2-34.6 8.8h-45.7V311l51.8-10.1v-50.6c8.6 3.1 18.1 4.8 28.5 4.8zm158.4 25.3c0-44-33.2-79.6-73.9-79.6-3.2 0-6.4.2-9.6.7-3.7 12.5-10.1 23.8-19.2 33.4-13.8 15-32.2 23.8-51.8 24.8V416l51.8-10.1v-50.6c8.6 3.2 18.2 4.7 28.7 4.7 40.8 0 74-35.6 74-79.6z"], + "pied-piper-square": [448, 512, [], "e01e", "M32 419L0 479.2l.8-328C.8 85.3 54 32 120 32h327.2c-93 28.9-189.9 94.2-253.9 168.6C122.7 282 82.6 338 32 419M448 32S305.2 98.8 261.6 199.1c-23.2 53.6-28.9 118.1-71 158.6-28.9 27.8-69.8 38.2-105.3 56.3-23.2 12-66.4 40.5-84.9 66h328.4c66 0 119.3-53.3 119.3-119.2-.1 0-.1-328.8-.1-328.8z"], + "pinterest": [496, 512, [], "f0d2", "M496 256c0 137-111 248-248 248-25.6 0-50.2-3.9-73.4-11.1 10.1-16.5 25.2-43.5 30.8-65 3-11.6 15.4-59 15.4-59 8.1 15.4 31.7 28.5 56.8 28.5 74.8 0 128.7-68.8 128.7-154.3 0-81.9-66.9-143.2-152.9-143.2-107 0-163.9 71.8-163.9 150.1 0 36.4 19.4 81.7 50.3 96.1 4.7 2.2 7.2 1.2 8.3-3.3.8-3.4 5-20.3 6.9-28.1.6-2.5.3-4.7-1.7-7.1-10.1-12.5-18.3-35.3-18.3-56.6 0-54.7 41.4-107.6 112-107.6 60.9 0 103.6 41.5 103.6 100.9 0 67.1-33.9 113.6-78 113.6-24.3 0-42.6-20.1-36.7-44.8 7-29.5 20.5-61.3 20.5-82.6 0-19-10.2-34.9-31.4-34.9-24.9 0-44.9 25.7-44.9 60.2 0 22 7.4 36.8 7.4 36.8s-24.5 103.8-29 123.2c-5 21.4-3 51.6-.9 71.2C65.4 450.9 0 361.1 0 256 0 119 111 8 248 8s248 111 248 248z"], + "pinterest-p": [384, 512, [], "f231", "M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.6 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z"], + "pinterest-square": [448, 512, [], "f0d3", "M448 80v352c0 26.5-21.5 48-48 48H154.4c9.8-16.4 22.4-40 27.4-59.3 3-11.5 15.3-58.4 15.3-58.4 8 15.3 31.4 28.2 56.3 28.2 74.1 0 127.4-68.1 127.4-152.7 0-81.1-66.2-141.8-151.4-141.8-106 0-162.2 71.1-162.2 148.6 0 36 19.2 80.8 49.8 95.1 4.7 2.2 7.1 1.2 8.2-3.3.8-3.4 5-20.1 6.8-27.8.6-2.5.3-4.6-1.7-7-10.1-12.3-18.3-34.9-18.3-56 0-54.2 41-106.6 110.9-106.6 60.3 0 102.6 41.1 102.6 99.9 0 66.4-33.5 112.4-77.2 112.4-24.1 0-42.1-19.9-36.4-44.4 6.9-29.2 20.3-60.7 20.3-81.8 0-53-75.5-45.7-75.5 25 0 21.7 7.3 36.5 7.3 36.5-31.4 132.8-36.1 134.5-29.6 192.6l2.2.8H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48z"], + "playstation": [576, 512, [], "f3df", "M570.9 372.3c-11.3 14.2-38.8 24.3-38.8 24.3L327 470.2v-54.3l150.9-53.8c17.1-6.1 19.8-14.8 5.8-19.4-13.9-4.6-39.1-3.3-56.2 2.9L327 381.1v-56.4c23.2-7.8 47.1-13.6 75.7-16.8 40.9-4.5 90.9.6 130.2 15.5 44.2 14 49.2 34.7 38 48.9zm-224.4-92.5v-139c0-16.3-3-31.3-18.3-35.6-11.7-3.8-19 7.1-19 23.4v347.9l-93.8-29.8V32c39.9 7.4 98 24.9 129.2 35.4C424.1 94.7 451 128.7 451 205.2c0 74.5-46 102.8-104.5 74.6zM43.2 410.2c-45.4-12.8-53-39.5-32.3-54.8 19.1-14.2 51.7-24.9 51.7-24.9l134.5-47.8v54.5l-96.8 34.6c-17.1 6.1-19.7 14.8-5.8 19.4 13.9 4.6 39.1 3.3 56.2-2.9l46.4-16.9v48.8c-51.6 9.3-101.4 7.3-153.9-10z"], + "product-hunt": [512, 512, [], "f288", "M326.3 218.8c0 20.5-16.7 37.2-37.2 37.2h-70.3v-74.4h70.3c20.5 0 37.2 16.7 37.2 37.2zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-128.1-37.2c0-47.9-38.9-86.8-86.8-86.8H169.2v248h49.6v-74.4h70.3c47.9 0 86.8-38.9 86.8-86.8z"], + "pushed": [432, 512, [], "f3e1", "M407 111.9l-98.5-9 14-33.4c10.4-23.5-10.8-40.4-28.7-37L22.5 76.9c-15.1 2.7-26 18.3-21.4 36.6l105.1 348.3c6.5 21.3 36.7 24.2 47.7 7l35.3-80.8 235.2-231.3c16.4-16.8 4.3-42.9-17.4-44.8zM297.6 53.6c5.1-.7 7.5 2.5 5.2 7.4L286 100.9 108.6 84.6l189-31zM22.7 107.9c-3.1-5.1 1-10 6.1-9.1l248.7 22.7-96.9 230.7L22.7 107.9zM136 456.4c-2.6 4-7.9 3.1-9.4-1.2L43.5 179.7l127.7 197.6c-7 15-35.2 79.1-35.2 79.1zm272.8-314.5L210.1 337.3l89.7-213.7 106.4 9.7c4 1.1 5.7 5.3 2.6 8.6z"], + "python": [448, 512, [], "f3e2", "M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"], + "qq": [448, 512, [], "f1d6", "M433.754 420.445c-11.526 1.393-44.86-52.741-44.86-52.741 0 31.345-16.136 72.247-51.051 101.786 16.842 5.192 54.843 19.167 45.803 34.421-7.316 12.343-125.51 7.881-159.632 4.037-34.122 3.844-152.316 8.306-159.632-4.037-9.045-15.25 28.918-29.214 45.783-34.415-34.92-29.539-51.059-70.445-51.059-101.792 0 0-33.334 54.134-44.859 52.741-5.37-.65-12.424-29.644 9.347-99.704 10.261-33.024 21.995-60.478 40.144-105.779C60.683 98.063 108.982.006 224 0c113.737.006 163.156 96.133 160.264 214.963 18.118 45.223 29.912 72.85 40.144 105.778 21.768 70.06 14.716 99.053 9.346 99.704z"], + "quinscape": [512, 512, [], "f459", "M313.6 474.6h-1a158.1 158.1 0 0 1 0-316.2c94.9 0 168.2 83.1 157 176.6 4 5.1 8.2 9.6 11.2 15.3 13.4-30.3 20.3-62.4 20.3-97.7C501.1 117.5 391.6 8 256.5 8S12 117.5 12 252.6s109.5 244.6 244.5 244.6a237.36 237.36 0 0 0 70.4-10.1c-5.2-3.5-8.9-8.1-13.3-12.5zm-.1-.1l.4.1zm78.4-168.9a99.2 99.2 0 1 0 99.2 99.2 99.18 99.18 0 0 0-99.2-99.2z"], + "quora": [448, 512, [], "f2c4", "M440.5 386.7h-29.3c-1.5 13.5-10.5 30.8-33 30.8-20.5 0-35.3-14.2-49.5-35.8 44.2-34.2 74.7-87.5 74.7-153C403.5 111.2 306.8 32 205 32 105.3 32 7.3 111.7 7.3 228.7c0 134.1 131.3 221.6 249 189C276 451.3 302 480 351.5 480c81.8 0 90.8-75.3 89-93.3zM297 329.2C277.5 300 253.3 277 205.5 277c-30.5 0-54.3 10-69 22.8l12.2 24.3c6.2-3 13-4 19.8-4 35.5 0 53.7 30.8 69.2 61.3-10 3-20.7 4.2-32.7 4.2-75 0-107.5-53-107.5-156.7C97.5 124.5 130 71 205 71c76.2 0 108.7 53.5 108.7 157.7.1 41.8-5.4 75.6-16.7 100.5z"], + "r-project": [581, 512, [], "f4f7", "M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"], + "raspberry-pi": [407, 512, [], "f7bb", "M372 232.5l-3.7-6.5c.1-46.4-21.4-65.3-46.5-79.7 7.6-2 15.4-3.6 17.6-13.2 13.1-3.3 15.8-9.4 17.1-15.8 3.4-2.3 14.8-8.7 13.6-19.7 6.4-4.4 10-10.1 8.1-18.1 6.9-7.5 8.7-13.7 5.8-19.4 8.3-10.3 4.6-15.6 1.1-20.9 6.2-11.2.7-23.2-16.6-21.2-6.9-10.1-21.9-7.8-24.2-7.8-2.6-3.2-6-6-16.5-4.7-6.8-6.1-14.4-5-22.3-2.1-9.3-7.3-15.5-1.4-22.6.8C271.6.6 269 5.5 263.5 7.6c-12.3-2.6-16.1 3-22 8.9l-6.9-.1c-18.6 10.8-27.8 32.8-31.1 44.1-3.3-11.3-12.5-33.3-31.1-44.1l-6.9.1c-5.9-5.9-9.7-11.5-22-8.9-5.6-2-8.1-7-19.4-3.4-4.6-1.4-8.9-4.4-13.9-4.3-2.6.1-5.5 1-8.7 3.5-7.9-3-15.5-4-22.3 2.1-10.5-1.3-14 1.4-16.5 4.7-2.3 0-17.3-2.3-24.2 7.8C21.2 16 15.8 28 22 39.2c-3.5 5.4-7.2 10.7 1.1 20.9-2.9 5.7-1.1 11.9 5.8 19.4-1.8 8 1.8 13.7 8.1 18.1-1.2 11 10.2 17.4 13.6 19.7 1.3 6.4 4 12.4 17.1 15.8 2.2 9.5 10 11.2 17.6 13.2-25.1 14.4-46.6 33.3-46.5 79.7l-3.7 6.5c-28.8 17.2-54.7 72.7-14.2 117.7 2.6 14.1 7.1 24.2 11 35.4 5.9 45.2 44.5 66.3 54.6 68.8 14.9 11.2 30.8 21.8 52.2 29.2C159 504.2 181 512 203 512h1c22.1 0 44-7.8 64.2-28.4 21.5-7.4 37.3-18 52.2-29.2 10.2-2.5 48.7-23.6 54.6-68.8 3.9-11.2 8.4-21.3 11-35.4 40.6-45.1 14.7-100.5-14-117.7zm-22.2-8c-1.5 18.7-98.9-65.1-82.1-67.9 45.7-7.5 83.6 19.2 82.1 67.9zm-43 93.1c-24.5 15.8-59.8 5.6-78.8-22.8s-14.6-64.2 9.9-80c24.5-15.8 59.8-5.6 78.8 22.8s14.6 64.2-9.9 80zM238.9 29.3c.8 4.2 1.8 6.8 2.9 7.6 5.4-5.8 9.8-11.7 16.8-17.3 0 3.3-1.7 6.8 2.5 9.4 3.7-5 8.8-9.5 15.5-13.3-3.2 5.6-.6 7.3 1.2 9.6 5.1-4.4 10-8.8 19.4-12.3-2.6 3.1-6.2 6.2-2.4 9.8 5.3-3.3 10.6-6.6 23.1-8.9-2.8 3.1-8.7 6.3-5.1 9.4 6.6-2.5 14-4.4 22.1-5.4-3.9 3.2-7.1 6.3-3.9 8.8 7.1-2.2 16.9-5.1 26.4-2.6l-6 6.1c-.7.8 14.1.6 23.9.8-3.6 5-7.2 9.7-9.3 18.2 1 1 5.8.4 10.4 0-4.7 9.9-12.8 12.3-14.7 16.6 2.9 2.2 6.8 1.6 11.2.1-3.4 6.9-10.4 11.7-16 17.3 1.4 1 3.9 1.6 9.7.9-5.2 5.5-11.4 10.5-18.8 15 1.3 1.5 5.8 1.5 10 1.6-6.7 6.5-15.3 9.9-23.4 14.2 4 2.7 6.9 2.1 10 2.1-5.7 4.7-15.4 7.1-24.4 10 1.7 2.7 3.4 3.4 7.1 4.1-9.5 5.3-23.2 2.9-27 5.6.9 2.7 3.6 4.4 6.7 5.8-15.4.9-57.3-.6-65.4-32.3 15.7-17.3 44.4-37.5 93.7-62.6-38.4 12.8-73 30-102 53.5-34.3-15.9-10.8-55.9 5.8-71.8zm-34.4 114.6c24.2-.3 54.1 17.8 54 34.7-.1 15-21 27.1-53.8 26.9-32.1-.4-53.7-15.2-53.6-29.8 0-11.9 26.2-32.5 53.4-31.8zm-123-12.8c3.7-.7 5.4-1.5 7.1-4.1-9-2.8-18.7-5.3-24.4-10 3.1 0 6 .7 10-2.1-8.1-4.3-16.7-7.7-23.4-14.2 4.2-.1 8.7 0 10-1.6-7.4-4.5-13.6-9.5-18.8-15 5.8.7 8.3.1 9.7-.9-5.6-5.6-12.7-10.4-16-17.3 4.3 1.5 8.3 2 11.2-.1-1.9-4.2-10-6.7-14.7-16.6 4.6.4 9.4 1 10.4 0-2.1-8.5-5.8-13.3-9.3-18.2 9.8-.1 24.6 0 23.9-.8l-6-6.1c9.5-2.5 19.3.4 26.4 2.6 3.2-2.5-.1-5.6-3.9-8.8 8.1 1.1 15.4 2.9 22.1 5.4 3.5-3.1-2.3-6.3-5.1-9.4 12.5 2.3 17.8 5.6 23.1 8.9 3.8-3.6.2-6.7-2.4-9.8 9.4 3.4 14.3 7.9 19.4 12.3 1.7-2.3 4.4-4 1.2-9.6 6.7 3.8 11.8 8.3 15.5 13.3 4.1-2.6 2.5-6.2 2.5-9.4 7 5.6 11.4 11.5 16.8 17.3 1.1-.8 2-3.4 2.9-7.6 16.6 15.9 40.1 55.9 6 71.8-29-23.5-63.6-40.7-102-53.5 49.3 25 78 45.3 93.7 62.6-8 31.8-50 33.2-65.4 32.3 3.1-1.4 5.8-3.2 6.7-5.8-4-2.8-17.6-.4-27.2-5.6zm60.1 24.1c16.8 2.8-80.6 86.5-82.1 67.9-1.5-48.7 36.5-75.5 82.1-67.9zM38.2 342c-23.7-18.8-31.3-73.7 12.6-98.3 26.5-7 9 107.8-12.6 98.3zm91 98.2c-13.3 7.9-45.8 4.7-68.8-27.9-15.5-27.4-13.5-55.2-2.6-63.4 16.3-9.8 41.5 3.4 60.9 25.6 16.9 20 24.6 55.3 10.5 65.7zm-26.4-119.7c-24.5-15.8-28.9-51.6-9.9-80s54.3-38.6 78.8-22.8 28.9 51.6 9.9 80c-19.1 28.4-54.4 38.6-78.8 22.8zM205 496c-29.4 1.2-58.2-23.7-57.8-32.3-.4-12.7 35.8-22.6 59.3-22 23.7-1 55.6 7.5 55.7 18.9.5 11-28.8 35.9-57.2 35.4zm58.9-124.9c.2 29.7-26.2 53.8-58.8 54-32.6.2-59.2-23.8-59.4-53.4v-.6c-.2-29.7 26.2-53.8 58.8-54 32.6-.2 59.2 23.8 59.4 53.4v.6zm82.2 42.7c-25.3 34.6-59.6 35.9-72.3 26.3-13.3-12.4-3.2-50.9 15.1-72 20.9-23.3 43.3-38.5 58.9-26.6 10.5 10.3 16.7 49.1-1.7 72.3zm22.9-73.2c-21.5 9.4-39-105.3-12.6-98.3 43.9 24.7 36.3 79.6 12.6 98.3z"], + "ravelry": [512, 512, [], "f2d9", "M498.252,234.223c-1.208-10.34-1.7-20.826-3.746-31a310.306,310.306,0,0,0-9.622-36.6,184.068,184.068,0,0,0-30.874-57.5,251.154,251.154,0,0,0-18.818-21.689,237.362,237.362,0,0,0-47.113-36.116A240.8,240.8,0,0,0,331.356,26.65c-11.018-3.1-22.272-5.431-33.515-7.615-6.78-1.314-13.749-1.667-20.627-2.482-.316-.036-.6-.358-.9-.553q-16.143.009-32.288.006c-2.41.389-4.808.925-7.236,1.15a179.331,179.331,0,0,0-34.256,7.1,221.5,221.5,0,0,0-39.768,16.355,281.385,281.385,0,0,0-38.08,24.158c-6.167,4.61-12.268,9.36-17.974,14.518C96.539,88.494,86.34,97.72,76.785,107.555a243.878,243.878,0,0,0-33.648,43.95,206.488,206.488,0,0,0-20.494,44.6,198.2,198.2,0,0,0-7.691,34.759A201.13,201.13,0,0,0,13.4,266.385a299.716,299.716,0,0,0,4.425,40.24,226.865,226.865,0,0,0,16.73,53.3,210.543,210.543,0,0,0,24,39.528,213.589,213.589,0,0,0,26.358,28.416A251.313,251.313,0,0,0,126.7,458.455a287.831,287.831,0,0,0,55.9,25.277,269.5,269.5,0,0,0,40.641,9.835c6.071,1.01,12.275,1.253,18.412,1.873a4.149,4.149,0,0,1,1.19.56h32.289c2.507-.389,5-.937,7.527-1.143,16.336-1.332,32.107-5.335,47.489-10.717A219.992,219.992,0,0,0,379.1,460.322c9.749-6.447,19.395-13.077,28.737-20.1,5.785-4.348,10.988-9.5,16.3-14.457,3.964-3.7,7.764-7.578,11.51-11.5a232.162,232.162,0,0,0,31.427-41.639c9.542-16.045,17.355-32.905,22.3-50.926,2.859-10.413,4.947-21.045,7.017-31.652,1.032-5.279,1.251-10.723,1.87-16.087.036-.317.358-.6.552-.9V236.005A9.757,9.757,0,0,1,498.252,234.223Zm-161.117-1.15s-16.572-2.98-28.47-2.98c-27.2,0-33.57,14.9-33.57,37.04V360.8H201.582V170.062H275.1v31.931c8.924-26.822,26.771-36.189,62.04-36.189Z"], + "react": [512, 512, [], "f41b", "M418.2 177.2c-5.4-1.8-10.8-3.5-16.2-5.1.9-3.7 1.7-7.4 2.5-11.1 12.3-59.6 4.2-107.5-23.1-123.3-26.3-15.1-69.2.6-112.6 38.4-4.3 3.7-8.5 7.6-12.5 11.5-2.7-2.6-5.5-5.2-8.3-7.7-45.5-40.4-91.1-57.4-118.4-41.5-26.2 15.2-34 60.3-23 116.7 1.1 5.6 2.3 11.1 3.7 16.7-6.4 1.8-12.7 3.8-18.6 5.9C38.3 196.2 0 225.4 0 255.6c0 31.2 40.8 62.5 96.3 81.5 4.5 1.5 9 3 13.6 4.3-1.5 6-2.8 11.9-4 18-10.5 55.5-2.3 99.5 23.9 114.6 27 15.6 72.4-.4 116.6-39.1 3.5-3.1 7-6.3 10.5-9.7 4.4 4.3 9 8.4 13.6 12.4 42.8 36.8 85.1 51.7 111.2 36.6 27-15.6 35.8-62.9 24.4-120.5-.9-4.4-1.9-8.9-3-13.5 3.2-.9 6.3-1.9 9.4-2.9 57.7-19.1 99.5-50 99.5-81.7 0-30.3-39.4-59.7-93.8-78.4zM282.9 92.3c37.2-32.4 71.9-45.1 87.7-36 16.9 9.7 23.4 48.9 12.8 100.4-.7 3.4-1.4 6.7-2.3 10-22.2-5-44.7-8.6-67.3-10.6-13-18.6-27.2-36.4-42.6-53.1 3.9-3.7 7.7-7.2 11.7-10.7zM167.2 307.5c5.1 8.7 10.3 17.4 15.8 25.9-15.6-1.7-31.1-4.2-46.4-7.5 4.4-14.4 9.9-29.3 16.3-44.5 4.6 8.8 9.3 17.5 14.3 26.1zm-30.3-120.3c14.4-3.2 29.7-5.8 45.6-7.8-5.3 8.3-10.5 16.8-15.4 25.4-4.9 8.5-9.7 17.2-14.2 26-6.3-14.9-11.6-29.5-16-43.6zm27.4 68.9c6.6-13.8 13.8-27.3 21.4-40.6s15.8-26.2 24.4-38.9c15-1.1 30.3-1.7 45.9-1.7s31 .6 45.9 1.7c8.5 12.6 16.6 25.5 24.3 38.7s14.9 26.7 21.7 40.4c-6.7 13.8-13.9 27.4-21.6 40.8-7.6 13.3-15.7 26.2-24.2 39-14.9 1.1-30.4 1.6-46.1 1.6s-30.9-.5-45.6-1.4c-8.7-12.7-16.9-25.7-24.6-39s-14.8-26.8-21.5-40.6zm180.6 51.2c5.1-8.8 9.9-17.7 14.6-26.7 6.4 14.5 12 29.2 16.9 44.3-15.5 3.5-31.2 6.2-47 8 5.4-8.4 10.5-17 15.5-25.6zm14.4-76.5c-4.7-8.8-9.5-17.6-14.5-26.2-4.9-8.5-10-16.9-15.3-25.2 16.1 2 31.5 4.7 45.9 8-4.6 14.8-10 29.2-16.1 43.4zM256.2 118.3c10.5 11.4 20.4 23.4 29.6 35.8-19.8-.9-39.7-.9-59.5 0 9.8-12.9 19.9-24.9 29.9-35.8zM140.2 57c16.8-9.8 54.1 4.2 93.4 39 2.5 2.2 5 4.6 7.6 7-15.5 16.7-29.8 34.5-42.9 53.1-22.6 2-45 5.5-67.2 10.4-1.3-5.1-2.4-10.3-3.5-15.5-9.4-48.4-3.2-84.9 12.6-94zm-24.5 263.6c-4.2-1.2-8.3-2.5-12.4-3.9-21.3-6.7-45.5-17.3-63-31.2-10.1-7-16.9-17.8-18.8-29.9 0-18.3 31.6-41.7 77.2-57.6 5.7-2 11.5-3.8 17.3-5.5 6.8 21.7 15 43 24.5 63.6-9.6 20.9-17.9 42.5-24.8 64.5zm116.6 98c-16.5 15.1-35.6 27.1-56.4 35.3-11.1 5.3-23.9 5.8-35.3 1.3-15.9-9.2-22.5-44.5-13.5-92 1.1-5.6 2.3-11.2 3.7-16.7 22.4 4.8 45 8.1 67.9 9.8 13.2 18.7 27.7 36.6 43.2 53.4-3.2 3.1-6.4 6.1-9.6 8.9zm24.5-24.3c-10.2-11-20.4-23.2-30.3-36.3 9.6.4 19.5.6 29.5.6 10.3 0 20.4-.2 30.4-.7-9.2 12.7-19.1 24.8-29.6 36.4zm130.7 30c-.9 12.2-6.9 23.6-16.5 31.3-15.9 9.2-49.8-2.8-86.4-34.2-4.2-3.6-8.4-7.5-12.7-11.5 15.3-16.9 29.4-34.8 42.2-53.6 22.9-1.9 45.7-5.4 68.2-10.5 1 4.1 1.9 8.2 2.7 12.2 4.9 21.6 5.7 44.1 2.5 66.3zm18.2-107.5c-2.8.9-5.6 1.8-8.5 2.6-7-21.8-15.6-43.1-25.5-63.8 9.6-20.4 17.7-41.4 24.5-62.9 5.2 1.5 10.2 3.1 15 4.7 46.6 16 79.3 39.8 79.3 58 0 19.6-34.9 44.9-84.8 61.4zm-149.7-15c25.3 0 45.8-20.5 45.8-45.8s-20.5-45.8-45.8-45.8c-25.3 0-45.8 20.5-45.8 45.8s20.5 45.8 45.8 45.8z"], + "reacteurope": [576, 512, [], "f75d", "M250.6 211.74l5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.1-.1-2.3-6.8-2.3 6.8-7.2.1 5.7 4.3zm63.7 0l5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.2-.1-2.3-6.8-2.3 6.8-7.2.1 5.7 4.3zm-91.3 50.5h-3.4c-4.8 0-3.8 4-3.8 12.1 0 4.7-2.3 6.1-5.8 6.1s-5.8-1.4-5.8-6.1v-36.6c0-4.7 2.3-6.1 5.8-6.1s5.8 1.4 5.8 6.1c0 7.2-.7 10.5 3.8 10.5h3.4c4.7-.1 3.8-3.9 3.8-12.3 0-9.9-6.7-14.1-16.8-14.1h-.2c-10.1 0-16.8 4.2-16.8 14.1V276c0 10.4 6.7 14.1 16.8 14.1h.2c10.1 0 16.8-3.8 16.8-14.1 0-9.86 1.1-13.76-3.8-13.76zm-80.7 17.4h-14.7v-19.3H139c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-11.4v-18.3H142c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-21.7c-2.4-.1-3.7 1.3-3.7 3.8v59.1c0 2.5 1.3 3.8 3.8 3.8h21.9c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8zm-42-18.5c4.6-2 7.3-6 7.3-12.4v-11.9c0-10.1-6.7-14.1-16.8-14.1H77.4c-2.5 0-3.8 1.3-3.8 3.8v59.1c0 2.5 1.3 3.8 3.8 3.8h3.4c2.5 0 3.8-1.3 3.8-3.8v-22.9h5.6l7.4 23.5a4.1 4.1 0 0 0 4.3 3.2h3.3c2.8 0 4-1.8 3.2-4.4zm-3.8-14c0 4.8-2.5 6.1-6.1 6.1h-5.8v-20.9h5.8c3.6 0 6.1 1.3 6.1 6.1zM176 226a3.82 3.82 0 0 0-4.2-3.4h-6.9a3.68 3.68 0 0 0-4 3.4l-11 59.2c-.5 2.7.9 4.1 3.4 4.1h3a3.74 3.74 0 0 0 4.1-3.5l1.8-11.3h12.2l1.8 11.3a3.74 3.74 0 0 0 4.1 3.5h3.5c2.6 0 3.9-1.4 3.4-4.1zm-12.3 39.3l4.7-29.7 4.7 29.7zm89.3 20.2v-53.2h7.5c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-25.8c-2.5 0-3.8 1.3-3.8 3.8v2.1c0 2.5 1.3 3.8 3.8 3.8h7.3v53.2c0 2.5 1.3 3.8 3.8 3.8h3.4c2.5.04 3.8-1.3 3.8-3.76zm248-.8h-19.4V258h16.1a1.89 1.89 0 0 0 2-2v-.8a1.89 1.89 0 0 0-2-2h-16.1v-25.8h19.1a1.89 1.89 0 0 0 2-2v-.8a1.77 1.77 0 0 0-2-1.9h-22.2a1.62 1.62 0 0 0-2 1.8v63a1.81 1.81 0 0 0 2 1.9H501a1.81 1.81 0 0 0 2-1.9v-.8a1.84 1.84 0 0 0-2-1.96zm-93.1-62.9h-.8c-10.1 0-15.3 4.7-15.3 14.1V276c0 9.3 5.2 14.1 15.3 14.1h.8c10.1 0 15.3-4.8 15.3-14.1v-40.1c0-9.36-5.2-14.06-15.3-14.06zm10.2 52.4c-.1 8-3 11.1-10.5 11.1s-10.5-3.1-10.5-11.1v-36.6c0-7.9 3-11.1 10.5-11.1s10.5 3.2 10.5 11.1zm-46.5-14.5c6.1-1.6 9.2-6.1 9.2-13.3v-9.7c0-9.4-5.2-14.1-15.3-14.1h-13.7a1.81 1.81 0 0 0-2 1.9v63a1.81 1.81 0 0 0 2 1.9h1.2a1.74 1.74 0 0 0 1.9-1.9v-26.9h11.6l10.4 27.2a2.32 2.32 0 0 0 2.3 1.5h1.5c1.4 0 2-1 1.5-2.3zm-6.4-3.9H355v-28.5h10.2c7.5 0 10.5 3.1 10.5 11.1v6.4c0 7.84-3 11.04-10.5 11.04zm85.9-33.1h-13.7a1.62 1.62 0 0 0-2 1.8v63a1.81 1.81 0 0 0 2 1.9h1.2a1.74 1.74 0 0 0 1.9-1.9v-26.1h10.6c10.1 0 15.3-4.8 15.3-14.1v-10.5c0-9.4-5.2-14.1-15.3-14.1zm10.2 22.8c0 7.9-3 11.1-10.5 11.1h-10.2v-29.2h10.2c7.5-.1 10.5 3.1 10.5 11zM259.5 308l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm227.6-136.1a364.42 364.42 0 0 0-35.6-11.3c19.6-78 11.6-134.7-22.3-153.9C394.7-12.66 343.3 11 291 61.94q5.1 4.95 10.2 10.2c82.5-80 119.6-53.5 120.9-52.8 22.4 12.7 36 55.8 15.5 137.8a587.83 587.83 0 0 0-84.6-13C281.1 43.64 212.4 2 170.8 2 140 2 127 23 123.2 29.74c-18.1 32-13.3 84.2.1 133.8-70.5 20.3-120.7 54.1-120.3 95 .5 59.6 103.2 87.8 122.1 92.8-20.5 81.9-10.1 135.6 22.3 153.9 28 15.8 75.1 6 138.2-55.2q-5.1-4.95-10.2-10.2c-82.5 80-119.7 53.5-120.9 52.8-22.3-12.6-36-55.6-15.5-137.9 12.4 2.9 41.8 9.5 84.6 13 71.9 100.4 140.6 142 182.1 142 30.8 0 43.8-21 47.6-27.7 18-31.9 13.3-84.1-.1-133.8 152.3-43.8 156.2-130.2 33.9-176.3zM135.9 36.84c2.9-5.1 11.9-20.3 34.9-20.3 36.8 0 98.8 39.6 163.3 126.2a714 714 0 0 0-93.9.9 547.76 547.76 0 0 1 42.2-52.4Q277.3 86 272.2 81a598.25 598.25 0 0 0-50.7 64.2 569.69 569.69 0 0 0-84.4 14.6c-.2-1.4-24.3-82.2-1.2-123zm304.8 438.3c-2.9 5.1-11.8 20.3-34.9 20.3-36.7 0-98.7-39.4-163.3-126.2a695.38 695.38 0 0 0 93.9-.9 547.76 547.76 0 0 1-42.2 52.4q5.1 5.25 10.2 10.2a588.47 588.47 0 0 0 50.7-64.2c47.3-4.7 80.3-13.5 84.4-14.6 22.7 84.4 4.5 117 1.2 123zm9.1-138.6c-3.6-11.9-7.7-24.1-12.4-36.4a12.67 12.67 0 0 1-10.7-5.7l-.1.1a19.61 19.61 0 0 1-5.4 3.6c5.7 14.3 10.6 28.4 14.7 42.2a535.3 535.3 0 0 1-72 13c3.5-5.3 17.2-26.2 32.2-54.2a24.6 24.6 0 0 1-6-3.2c-1.1 1.2-3.6 4.2-10.9 4.2-6.2 11.2-17.4 30.9-33.9 55.2a711.91 711.91 0 0 1-112.4 1c-7.9-11.2-21.5-31.1-36.8-57.8a21 21 0 0 1-3-1.5c-1.9 1.6-3.9 3.2-12.6 3.2 6.3 11.2 17.5 30.7 33.8 54.6a548.81 548.81 0 0 1-72.2-11.7q5.85-21 14.1-42.9c-3.2 0-5.4.2-8.4-1a17.58 17.58 0 0 1-6.9 1c-4.9 13.4-9.1 26.5-12.7 39.4C-31.7 297-12.1 216 126.7 175.64c3.6 11.9 7.7 24.1 12.4 36.4 10.4 0 12.9 3.4 14.4 5.3a12 12 0 0 1 2.3-2.2c-5.8-14.7-10.9-29.2-15.2-43.3 7-1.8 32.4-8.4 72-13-15.9 24.3-26.7 43.9-32.8 55.3a14.22 14.22 0 0 1 6.4 8 23.42 23.42 0 0 1 10.2-8.4c6.5-11.7 17.9-31.9 34.8-56.9a711.72 711.72 0 0 1 112.4-1c31.5 44.6 28.9 48.1 42.5 64.5a21.42 21.42 0 0 1 10.4-7.4c-6.4-11.4-17.6-31-34.3-55.5 40.4 4.1 65 10 72.2 11.7-4 14.4-8.9 29.2-14.6 44.2a20.74 20.74 0 0 1 6.8 4.3l.1.1a12.72 12.72 0 0 1 8.9-5.6c4.9-13.4 9.2-26.6 12.8-39.5a359.71 359.71 0 0 1 34.5 11c106.1 39.9 74 87.9 72.6 90.4-19.8 35.1-80.1 55.2-105.7 62.5zm-114.4-114h-1.2a1.74 1.74 0 0 0-1.9 1.9v49.8c0 7.9-2.6 11.1-10.1 11.1s-10.1-3.1-10.1-11.1v-49.8a1.69 1.69 0 0 0-1.9-1.9H309a1.81 1.81 0 0 0-2 1.9v51.5c0 9.6 5 14.1 15.1 14.1h.4c10.1 0 15.1-4.6 15.1-14.1v-51.5a2 2 0 0 0-2.2-1.9zM321.7 308l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm-31.1 7.4l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm5.1-30.8h-19.4v-26.7h16.1a1.89 1.89 0 0 0 2-2v-.8a1.89 1.89 0 0 0-2-2h-16.1v-25.8h19.1a1.89 1.89 0 0 0 2-2v-.8a1.77 1.77 0 0 0-2-1.9h-22.2a1.81 1.81 0 0 0-2 1.9v63a1.81 1.81 0 0 0 2 1.9h22.5a1.77 1.77 0 0 0 2-1.9v-.8a1.83 1.83 0 0 0-2-2.06zm-7.4-99.4L286 192l-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.1-.1z"], + "readme": [576, 512, [], "f4d5", "M528.3 46.5H388.5c-48.1 0-89.9 33.3-100.4 80.3-10.6-47-52.3-80.3-100.4-80.3H48c-26.5 0-48 21.5-48 48v245.8c0 26.5 21.5 48 48 48h89.7c102.2 0 132.7 24.4 147.3 75 .7 2.8 5.2 2.8 6 0 14.7-50.6 45.2-75 147.3-75H528c26.5 0 48-21.5 48-48V94.6c0-26.4-21.3-47.9-47.7-48.1zM242 311.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5V289c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5V251zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm259.3 121.7c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5V228c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5v-22.8c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5V190z"], + "rebel": [512, 512, [], "f1d0", "M256.5 504C117.2 504 9 387.8 13.2 249.9 16 170.7 56.4 97.7 129.7 49.5c.3 0 1.9-.6 1.1.8-5.8 5.5-111.3 129.8-14.1 226.4 49.8 49.5 90 2.5 90 2.5 38.5-50.1-.6-125.9-.6-125.9-10-24.9-45.7-40.1-45.7-40.1l28.8-31.8c24.4 10.5 43.2 38.7 43.2 38.7.8-29.6-21.9-61.4-21.9-61.4L255.1 8l44.3 50.1c-20.5 28.8-21.9 62.6-21.9 62.6 13.8-23 43.5-39.3 43.5-39.3l28.5 31.8c-27.4 8.9-45.4 39.9-45.4 39.9-15.8 28.5-27.1 89.4.6 127.3 32.4 44.6 87.7-2.8 87.7-2.8 102.7-91.9-10.5-225-10.5-225-6.1-5.5.8-2.8.8-2.8 50.1 36.5 114.6 84.4 116.2 204.8C500.9 400.2 399 504 256.5 504z"], + "red-river": [448, 512, [], "f3e3", "M353.2 32H94.8C42.4 32 0 74.4 0 126.8v258.4C0 437.6 42.4 480 94.8 480h258.4c52.4 0 94.8-42.4 94.8-94.8V126.8c0-52.4-42.4-94.8-94.8-94.8zM144.9 200.9v56.3c0 27-21.9 48.9-48.9 48.9V151.9c0-13.2 10.7-23.9 23.9-23.9h154.2c0 27-21.9 48.9-48.9 48.9h-56.3c-12.3-.6-24.6 11.6-24 24zm176.3 72h-56.3c-12.3-.6-24.6 11.6-24 24v56.3c0 27-21.9 48.9-48.9 48.9V247.9c0-13.2 10.7-23.9 23.9-23.9h154.2c0 27-21.9 48.9-48.9 48.9z"], + "reddit": [512, 512, [], "f1a1", "M201.5 305.5c-13.8 0-24.9-11.1-24.9-24.6 0-13.8 11.1-24.9 24.9-24.9 13.6 0 24.6 11.1 24.6 24.9 0 13.6-11.1 24.6-24.6 24.6zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-132.3-41.2c-9.4 0-17.7 3.9-23.8 10-22.4-15.5-52.6-25.5-86.1-26.6l17.4-78.3 55.4 12.5c0 13.6 11.1 24.6 24.6 24.6 13.8 0 24.9-11.3 24.9-24.9s-11.1-24.9-24.9-24.9c-9.7 0-18 5.8-22.1 13.8l-61.2-13.6c-3-.8-6.1 1.4-6.9 4.4l-19.1 86.4c-33.2 1.4-63.1 11.3-85.5 26.8-6.1-6.4-14.7-10.2-24.1-10.2-34.9 0-46.3 46.9-14.4 62.8-1.1 5-1.7 10.2-1.7 15.5 0 52.6 59.2 95.2 132 95.2 73.1 0 132.3-42.6 132.3-95.2 0-5.3-.6-10.8-1.9-15.8 31.3-16 19.8-62.5-14.9-62.5zM302.8 331c-18.2 18.2-76.1 17.9-93.6 0-2.2-2.2-6.1-2.2-8.3 0-2.5 2.5-2.5 6.4 0 8.6 22.8 22.8 87.3 22.8 110.2 0 2.5-2.2 2.5-6.1 0-8.6-2.2-2.2-6.1-2.2-8.3 0zm7.7-75c-13.6 0-24.6 11.1-24.6 24.9 0 13.6 11.1 24.6 24.6 24.6 13.8 0 24.9-11.1 24.9-24.6 0-13.8-11-24.9-24.9-24.9z"], + "reddit-alien": [512, 512, [], "f281", "M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22 17.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z"], + "reddit-square": [448, 512, [], "f1a2", "M283.2 345.5c2.7 2.7 2.7 6.8 0 9.2-24.5 24.5-93.8 24.6-118.4 0-2.7-2.4-2.7-6.5 0-9.2 2.4-2.4 6.5-2.4 8.9 0 18.7 19.2 81 19.6 100.5 0 2.4-2.3 6.6-2.3 9 0zm-91.3-53.8c0-14.9-11.9-26.8-26.5-26.8-14.9 0-26.8 11.9-26.8 26.8 0 14.6 11.9 26.5 26.8 26.5 14.6 0 26.5-11.9 26.5-26.5zm90.7-26.8c-14.6 0-26.5 11.9-26.5 26.8 0 14.6 11.9 26.5 26.5 26.5 14.9 0 26.8-11.9 26.8-26.5 0-14.9-11.9-26.8-26.8-26.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-99.7 140.6c-10.1 0-19 4.2-25.6 10.7-24.1-16.7-56.5-27.4-92.5-28.6l18.7-84.2 59.5 13.4c0 14.6 11.9 26.5 26.5 26.5 14.9 0 26.8-12.2 26.8-26.8 0-14.6-11.9-26.8-26.8-26.8-10.4 0-19.3 6.2-23.8 14.9l-65.7-14.6c-3.3-.9-6.5 1.5-7.4 4.8l-20.5 92.8c-35.7 1.5-67.8 12.2-91.9 28.9-6.5-6.8-15.8-11-25.9-11-37.5 0-49.8 50.4-15.5 67.5-1.2 5.4-1.8 11-1.8 16.7 0 56.5 63.7 102.3 141.9 102.3 78.5 0 142.2-45.8 142.2-102.3 0-5.7-.6-11.6-2.1-17 33.6-17.2 21.2-67.2-16.1-67.2z"], + "redhat": [512, 512, [], "f7bc", "M341.52 285.56c33.65 0 82.34-6.94 82.34-47 .22-6.74.86-1.82-20.88-96.24-4.62-19.15-8.68-27.84-42.31-44.65-26.09-13.34-82.92-35.37-99.73-35.37-15.66 0-20.2 20.17-38.87 20.17-18 0-31.31-15.06-48.12-15.06-16.14 0-26.66 11-34.78 33.62-27.5 77.55-26.28 74.27-26.12 78.27 0 24.8 97.64 106.11 228.47 106.11M429 254.84c4.65 22 4.65 24.35 4.65 27.25 0 37.66-42.33 58.56-98 58.56-125.74.08-235.91-73.65-235.91-122.33a49.55 49.55 0 0 1 4.06-19.72C58.56 200.86 0 208.93 0 260.63c0 84.67 200.63 189 359.49 189 121.79 0 152.51-55.08 152.51-98.58 0-34.21-29.59-73.05-82.93-96.24"], + "renren": [512, 512, [], "f18b", "M214 169.1c0 110.4-61 205.4-147.6 247.4C30 373.2 8 317.7 8 256.6 8 133.9 97.1 32.2 214 12.5v156.6zM255 504c-42.9 0-83.3-11-118.5-30.4C193.7 437.5 239.9 382.9 255 319c15.5 63.9 61.7 118.5 118.8 154.7C338.7 493 298.3 504 255 504zm190.6-87.5C359 374.5 298 279.6 298 169.1V12.5c116.9 19.7 206 121.4 206 244.1 0 61.1-22 116.6-58.4 159.9z"], + "replyd": [448, 512, [], "f3e6", "M320 480H128C57.6 480 0 422.4 0 352V160C0 89.6 57.6 32 128 32h192c70.4 0 128 57.6 128 128v192c0 70.4-57.6 128-128 128zM193.4 273.2c-6.1-2-11.6-3.1-16.4-3.1-7.2 0-13.5 1.9-18.9 5.6-5.4 3.7-9.6 9-12.8 15.8h-1.1l-4.2-18.3h-28v138.9h36.1v-89.7c1.5-5.4 4.4-9.8 8.7-13.2 4.3-3.4 9.8-5.1 16.2-5.1 4.6 0 9.8 1 15.6 3.1l4.8-34zm115.2 103.4c-3.2 2.4-7.7 4.8-13.7 7.1-6 2.3-12.8 3.5-20.4 3.5-12.2 0-21.1-3-26.5-8.9-5.5-5.9-8.5-14.7-9-26.4h83.3c.9-4.8 1.6-9.4 2.1-13.9.5-4.4.7-8.6.7-12.5 0-10.7-1.6-19.7-4.7-26.9-3.2-7.2-7.3-13-12.5-17.2-5.2-4.3-11.1-7.3-17.8-9.2-6.7-1.8-13.5-2.8-20.6-2.8-21.1 0-37.5 6.1-49.2 18.3s-17.5 30.5-17.5 55c0 22.8 5.2 40.7 15.6 53.7 10.4 13.1 26.8 19.6 49.2 19.6 10.7 0 20.9-1.5 30.4-4.6 9.5-3.1 17.1-6.8 22.6-11.2l-12-23.6zm-21.8-70.3c3.8 5.4 5.3 13.1 4.6 23.1h-51.7c.9-9.4 3.7-17 8.2-22.6 4.5-5.6 11.5-8.5 21-8.5 8.2-.1 14.1 2.6 17.9 8zm79.9 2.5c4.1 3.9 9.4 5.8 16.1 5.8 7 0 12.6-1.9 16.7-5.8s6.1-9.1 6.1-15.6-2-11.6-6.1-15.4c-4.1-3.8-9.6-5.7-16.7-5.7-6.7 0-12 1.9-16.1 5.7-4.1 3.8-6.1 8.9-6.1 15.4s2 11.7 6.1 15.6zm0 100.5c4.1 3.9 9.4 5.8 16.1 5.8 7 0 12.6-1.9 16.7-5.8s6.1-9.1 6.1-15.6-2-11.6-6.1-15.4c-4.1-3.8-9.6-5.7-16.7-5.7-6.7 0-12 1.9-16.1 5.7-4.1 3.8-6.1 8.9-6.1 15.4 0 6.6 2 11.7 6.1 15.6z"], + "researchgate": [448, 512, [], "f4f8", "M0 32v448h448V32H0zm262.2 334.4c-6.6 3-33.2 6-50-14.2-9.2-10.6-25.3-33.3-42.2-63.6-8.9 0-14.7 0-21.4-.6v46.4c0 23.5 6 21.2 25.8 23.9v8.1c-6.9-.3-23.1-.8-35.6-.8-13.1 0-26.1.6-33.6.8v-8.1c15.5-2.9 22-1.3 22-23.9V225c0-22.6-6.4-21-22-23.9V193c25.8 1 53.1-.6 70.9-.6 31.7 0 55.9 14.4 55.9 45.6 0 21.1-16.7 42.2-39.2 47.5 13.6 24.2 30 45.6 42.2 58.9 7.2 7.8 17.2 14.7 27.2 14.7v7.3zm22.9-135c-23.3 0-32.2-15.7-32.2-32.2V167c0-12.2 8.8-30.4 34-30.4s30.4 17.9 30.4 17.9l-10.7 7.2s-5.5-12.5-19.7-12.5c-7.9 0-19.7 7.3-19.7 19.7v26.8c0 13.4 6.6 23.3 17.9 23.3 14.1 0 21.5-10.9 21.5-26.8h-17.9v-10.7h30.4c0 20.5 4.7 49.9-34 49.9zm-116.5 44.7c-9.4 0-13.6-.3-20-.8v-69.7c6.4-.6 15-.6 22.5-.6 23.3 0 37.2 12.2 37.2 34.5 0 21.9-15 36.6-39.7 36.6z"], + "resolving": [496, 512, [], "f3e7", "M281.2 278.2c46-13.3 49.6-23.5 44-43.4L314 195.5c-6.1-20.9-18.4-28.1-71.1-12.8L54.7 236.8l28.6 98.6 197.9-57.2zM248.5 8C131.4 8 33.2 88.7 7.2 197.5l221.9-63.9c34.8-10.2 54.2-11.7 79.3-8.2 36.3 6.1 52.7 25 61.4 55.2l10.7 37.8c8.2 28.1 1 50.6-23.5 73.6-19.4 17.4-31.2 24.5-61.4 33.2L203 351.8l220.4 27.1 9.7 34.2-48.1 13.3-286.8-37.3 23 80.2c36.8 22 80.3 34.7 126.3 34.7 137 0 248.5-111.4 248.5-248.3C497 119.4 385.5 8 248.5 8zM38.3 388.6L0 256.8c0 48.5 14.3 93.4 38.3 131.8z"], + "rev": [448, 512, [], "f5b2", "M289.67 274.89a65.57 65.57 0 1 1-65.56-65.56 65.64 65.64 0 0 1 65.56 65.56zm139.55-5.05h-.13a204.69 204.69 0 0 0-74.32-153l-45.38 26.2a157.07 157.07 0 0 1 71.81 131.84C381.2 361.5 310.73 432 224.11 432S67 361.5 67 274.88c0-81.88 63-149.27 143-156.43v39.12l108.77-62.79L210 32v38.32c-106.7 7.25-191 96-191 204.57 0 111.59 89.12 202.29 200.06 205v.11h210.16V269.84z"], + "rocketchat": [576, 512, [], "f3e8", "M284.046,224.8a34.114,34.114,0,1,0,34.317,34.113A34.217,34.217,0,0,0,284.046,224.8Zm-110.45,0a34.114,34.114,0,1,0,34.317,34.113A34.217,34.217,0,0,0,173.6,224.8Zm220.923,0a34.114,34.114,0,1,0,34.317,34.113A34.215,34.215,0,0,0,394.519,224.8Zm153.807-55.319c-15.535-24.172-37.31-45.57-64.681-63.618-52.886-34.817-122.374-54-195.666-54a405.975,405.975,0,0,0-72.032,6.357,238.524,238.524,0,0,0-49.51-36.588C99.684-11.7,40.859.711,11.135,11.421A14.291,14.291,0,0,0,5.58,34.782C26.542,56.458,61.222,99.3,52.7,138.252c-33.142,33.9-51.112,74.776-51.112,117.337,0,43.372,17.97,84.248,51.112,118.148,8.526,38.956-26.154,81.816-47.116,103.491a14.284,14.284,0,0,0,5.555,23.34c29.724,10.709,88.549,23.147,155.324-10.2a238.679,238.679,0,0,0,49.51-36.589A405.972,405.972,0,0,0,288,460.14c73.313,0,142.8-19.159,195.667-53.975,27.371-18.049,49.145-39.426,64.679-63.619,17.309-26.923,26.07-55.916,26.07-86.125C574.394,225.4,565.634,196.43,548.326,169.485ZM284.987,409.9a345.65,345.65,0,0,1-89.446-11.5l-20.129,19.393a184.366,184.366,0,0,1-37.138,27.585,145.767,145.767,0,0,1-52.522,14.87c.983-1.771,1.881-3.563,2.842-5.356q30.258-55.68,16.325-100.078c-32.992-25.962-52.778-59.2-52.778-95.4,0-83.1,104.254-150.469,232.846-150.469s232.867,67.373,232.867,150.469C517.854,342.525,413.6,409.9,284.987,409.9Z"], + "rockrms": [496, 512, [], "f3e9", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm157.4 419.5h-90l-112-131.3c-17.9-20.4-3.9-56.1 26.6-56.1h75.3l-84.6-99.3-84.3 98.9h-90L193.5 67.2c14.4-18.4 41.3-17.3 54.5 0l157.7 185.1c19 22.8 2 57.2-27.6 56.1-.6 0-74.2.2-74.2.2l101.5 118.9z"], + "rust": [512, 512, [], "e07a", "M508.52,249.75,486.7,236.24c-.17-2-.34-3.93-.55-5.88l18.72-17.5a7.35,7.35,0,0,0-2.44-12.25l-24-9c-.54-1.88-1.08-3.78-1.67-5.64l15-20.83a7.35,7.35,0,0,0-4.79-11.54l-25.42-4.15c-.9-1.73-1.79-3.45-2.73-5.15l10.68-23.42a7.35,7.35,0,0,0-6.95-10.39l-25.82.91q-1.79-2.22-3.61-4.4L439,81.84A7.36,7.36,0,0,0,430.16,73L405,78.93q-2.17-1.83-4.4-3.61l.91-25.82a7.35,7.35,0,0,0-10.39-7L367.7,53.23c-1.7-.94-3.43-1.84-5.15-2.73L358.4,25.08a7.35,7.35,0,0,0-11.54-4.79L326,35.26c-1.86-.59-3.75-1.13-5.64-1.67l-9-24a7.35,7.35,0,0,0-12.25-2.44l-17.5,18.72c-1.95-.21-3.91-.38-5.88-.55L262.25,3.48a7.35,7.35,0,0,0-12.5,0L236.24,25.3c-2,.17-3.93.34-5.88.55L212.86,7.13a7.35,7.35,0,0,0-12.25,2.44l-9,24c-1.89.55-3.79,1.08-5.66,1.68l-20.82-15a7.35,7.35,0,0,0-11.54,4.79l-4.15,25.41c-1.73.9-3.45,1.79-5.16,2.73L120.88,42.55a7.35,7.35,0,0,0-10.39,7l.92,25.81c-1.49,1.19-3,2.39-4.42,3.61L81.84,73A7.36,7.36,0,0,0,73,81.84L78.93,107c-1.23,1.45-2.43,2.93-3.62,4.41l-25.81-.91a7.42,7.42,0,0,0-6.37,3.26,7.35,7.35,0,0,0-.57,7.13l10.66,23.41c-.94,1.7-1.83,3.43-2.73,5.16L25.08,153.6a7.35,7.35,0,0,0-4.79,11.54l15,20.82c-.59,1.87-1.13,3.77-1.68,5.66l-24,9a7.35,7.35,0,0,0-2.44,12.25l18.72,17.5c-.21,1.95-.38,3.91-.55,5.88L3.48,249.75a7.35,7.35,0,0,0,0,12.5L25.3,275.76c.17,2,.34,3.92.55,5.87L7.13,299.13a7.35,7.35,0,0,0,2.44,12.25l24,9c.55,1.89,1.08,3.78,1.68,5.65l-15,20.83a7.35,7.35,0,0,0,4.79,11.54l25.42,4.15c.9,1.72,1.79,3.45,2.73,5.14L42.56,391.12a7.35,7.35,0,0,0,.57,7.13,7.13,7.13,0,0,0,6.37,3.26l25.83-.91q1.77,2.22,3.6,4.4L73,430.16A7.36,7.36,0,0,0,81.84,439L107,433.07q2.18,1.83,4.41,3.61l-.92,25.82a7.35,7.35,0,0,0,10.39,6.95l23.43-10.68c1.69.94,3.42,1.83,5.14,2.73l4.15,25.42a7.34,7.34,0,0,0,11.54,4.78l20.83-15c1.86.6,3.76,1.13,5.65,1.68l9,24a7.36,7.36,0,0,0,12.25,2.44l17.5-18.72c1.95.21,3.92.38,5.88.55l13.51,21.82a7.35,7.35,0,0,0,12.5,0l13.51-21.82c2-.17,3.93-.34,5.88-.56l17.5,18.73a7.36,7.36,0,0,0,12.25-2.44l9-24c1.89-.55,3.78-1.08,5.65-1.68l20.82,15a7.34,7.34,0,0,0,11.54-4.78l4.15-25.42c1.72-.9,3.45-1.79,5.15-2.73l23.42,10.68a7.35,7.35,0,0,0,10.39-6.95l-.91-25.82q2.22-1.79,4.4-3.61L430.16,439a7.36,7.36,0,0,0,8.84-8.84L433.07,405q1.83-2.17,3.61-4.4l25.82.91a7.23,7.23,0,0,0,6.37-3.26,7.35,7.35,0,0,0,.58-7.13L458.77,367.7c.94-1.7,1.83-3.43,2.73-5.15l25.42-4.15a7.35,7.35,0,0,0,4.79-11.54l-15-20.83c.59-1.87,1.13-3.76,1.67-5.65l24-9a7.35,7.35,0,0,0,2.44-12.25l-18.72-17.5c.21-1.95.38-3.91.55-5.87l21.82-13.51a7.35,7.35,0,0,0,0-12.5Zm-151,129.08A13.91,13.91,0,0,0,341,389.51l-7.64,35.67A187.51,187.51,0,0,1,177,424.44l-7.64-35.66a13.87,13.87,0,0,0-16.46-10.68l-31.51,6.76a187.38,187.38,0,0,1-16.26-19.21H258.3c1.72,0,2.89-.29,2.89-1.91V309.55c0-1.57-1.17-1.91-2.89-1.91H213.47l.05-34.35H262c4.41,0,23.66,1.28,29.79,25.87,1.91,7.55,6.17,32.14,9.06,40,2.89,8.82,14.6,26.46,27.1,26.46H407a187.3,187.3,0,0,1-17.34,20.09Zm25.77,34.49A15.24,15.24,0,1,1,368,398.08h.44A15.23,15.23,0,0,1,383.24,413.32Zm-225.62-.68a15.24,15.24,0,1,1-15.25-15.25h.45A15.25,15.25,0,0,1,157.62,412.64ZM69.57,234.15l32.83-14.6a13.88,13.88,0,0,0,7.06-18.33L102.69,186h26.56V305.73H75.65A187.65,187.65,0,0,1,69.57,234.15ZM58.31,198.09a15.24,15.24,0,0,1,15.23-15.25H74a15.24,15.24,0,1,1-15.67,15.24Zm155.16,24.49.05-35.32h63.26c3.28,0,23.07,3.77,23.07,18.62,0,12.29-15.19,16.7-27.68,16.7ZM399,306.71c-9.8,1.13-20.63-4.12-22-10.09-5.78-32.49-15.39-39.4-30.57-51.4,18.86-11.95,38.46-29.64,38.46-53.26,0-25.52-17.49-41.59-29.4-49.48-16.76-11-35.28-13.23-40.27-13.23H116.32A187.49,187.49,0,0,1,221.21,70.06l23.47,24.6a13.82,13.82,0,0,0,19.6.44l26.26-25a187.51,187.51,0,0,1,128.37,91.43l-18,40.57A14,14,0,0,0,408,220.43l34.59,15.33a187.12,187.12,0,0,1,.4,32.54H423.71c-1.91,0-2.69,1.27-2.69,3.13v8.82C421,301,409.31,305.58,399,306.71ZM240,60.21A15.24,15.24,0,0,1,255.21,45h.45A15.24,15.24,0,1,1,240,60.21ZM436.84,214a15.24,15.24,0,1,1,0-30.48h.44a15.24,15.24,0,0,1-.44,30.48Z"], + "safari": [512, 512, [], "f267", "M274.69,274.69l-37.38-37.38L166,346ZM256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8ZM411.85,182.79l14.78-6.13A8,8,0,0,1,437.08,181h0a8,8,0,0,1-4.33,10.46L418,197.57a8,8,0,0,1-10.45-4.33h0A8,8,0,0,1,411.85,182.79ZM314.43,94l6.12-14.78A8,8,0,0,1,331,74.92h0a8,8,0,0,1,4.33,10.45l-6.13,14.78a8,8,0,0,1-10.45,4.33h0A8,8,0,0,1,314.43,94ZM256,60h0a8,8,0,0,1,8,8V84a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V68A8,8,0,0,1,256,60ZM181,74.92a8,8,0,0,1,10.46,4.33L197.57,94a8,8,0,1,1-14.78,6.12l-6.13-14.78A8,8,0,0,1,181,74.92Zm-63.58,42.49h0a8,8,0,0,1,11.31,0L140,128.72A8,8,0,0,1,140,140h0a8,8,0,0,1-11.31,0l-11.31-11.31A8,8,0,0,1,117.41,117.41ZM60,256h0a8,8,0,0,1,8-8H84a8,8,0,0,1,8,8h0a8,8,0,0,1-8,8H68A8,8,0,0,1,60,256Zm40.15,73.21-14.78,6.13A8,8,0,0,1,74.92,331h0a8,8,0,0,1,4.33-10.46L94,314.43a8,8,0,0,1,10.45,4.33h0A8,8,0,0,1,100.15,329.21Zm4.33-136h0A8,8,0,0,1,94,197.57l-14.78-6.12A8,8,0,0,1,74.92,181h0a8,8,0,0,1,10.45-4.33l14.78,6.13A8,8,0,0,1,104.48,193.24ZM197.57,418l-6.12,14.78a8,8,0,0,1-14.79-6.12l6.13-14.78A8,8,0,1,1,197.57,418ZM264,444a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V428a8,8,0,0,1,8-8h0a8,8,0,0,1,8,8Zm67-6.92h0a8,8,0,0,1-10.46-4.33L314.43,418a8,8,0,0,1,4.33-10.45h0a8,8,0,0,1,10.45,4.33l6.13,14.78A8,8,0,0,1,331,437.08Zm63.58-42.49h0a8,8,0,0,1-11.31,0L372,383.28A8,8,0,0,1,372,372h0a8,8,0,0,1,11.31,0l11.31,11.31A8,8,0,0,1,394.59,394.59ZM286.25,286.25,110.34,401.66,225.75,225.75,401.66,110.34ZM437.08,331h0a8,8,0,0,1-10.45,4.33l-14.78-6.13a8,8,0,0,1-4.33-10.45h0A8,8,0,0,1,418,314.43l14.78,6.12A8,8,0,0,1,437.08,331ZM444,264H428a8,8,0,0,1-8-8h0a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8h0A8,8,0,0,1,444,264Z"], + "salesforce": [640, 512, [], "f83b", "M248.89 245.64h-26.35c.69-5.16 3.32-14.12 13.64-14.12 6.75 0 11.97 3.82 12.71 14.12zm136.66-13.88c-.47 0-14.11-1.77-14.11 20s13.63 20 14.11 20c13 0 14.11-13.54 14.11-20 0-21.76-13.66-20-14.11-20zm-243.22 23.76a8.63 8.63 0 0 0-3.29 7.29c0 4.78 2.08 6.05 3.29 7.05 4.7 3.7 15.07 2.12 20.93.95v-16.94c-5.32-1.07-16.73-1.96-20.93 1.65zM640 232c0 87.58-80 154.39-165.36 136.43-18.37 33-70.73 70.75-132.2 41.63-41.16 96.05-177.89 92.18-213.81-5.17C8.91 428.78-50.19 266.52 53.36 205.61 18.61 126.18 76 32 167.67 32a124.24 124.24 0 0 1 98.56 48.7c20.7-21.4 49.4-34.81 81.15-34.81 42.34 0 79 23.52 98.8 58.57C539 63.78 640 132.69 640 232zm-519.55 31.8c0-11.76-11.69-15.17-17.87-17.17-5.27-2.11-13.41-3.51-13.41-8.94 0-9.46 17-6.66 25.17-2.12 0 0 1.17.71 1.64-.47.24-.7 2.36-6.58 2.59-7.29a1.13 1.13 0 0 0-.7-1.41c-12.33-7.63-40.7-8.51-40.7 12.7 0 12.46 11.49 15.44 17.88 17.17 4.72 1.58 13.17 3 13.17 8.7 0 4-3.53 7.06-9.17 7.06a31.76 31.76 0 0 1-19-6.35c-.47-.23-1.42-.71-1.65.71l-2.4 7.47c-.47.94.23 1.18.23 1.41 1.75 1.4 10.3 6.59 22.82 6.59 13.17 0 21.4-7.06 21.4-18.11zm32-42.58c-10.13 0-18.66 3.17-21.4 5.18a1 1 0 0 0-.24 1.41l2.59 7.06a1 1 0 0 0 1.18.7c.65 0 6.8-4 16.93-4 4 0 7.06.71 9.18 2.36 3.6 2.8 3.06 8.29 3.06 10.58-4.79-.3-19.11-3.44-29.41 3.76a16.92 16.92 0 0 0-7.34 14.54c0 5.9 1.51 10.4 6.59 14.35 12.24 8.16 36.28 2 38.1 1.41 1.58-.32 3.53-.66 3.53-1.88v-33.88c.04-4.61.32-21.64-22.78-21.64zM199 200.24a1.11 1.11 0 0 0-1.18-1.18H188a1.11 1.11 0 0 0-1.17 1.18v79a1.11 1.11 0 0 0 1.17 1.18h9.88a1.11 1.11 0 0 0 1.18-1.18zm55.75 28.93c-2.1-2.31-6.79-7.53-17.65-7.53-3.51 0-14.16.23-20.7 8.94-6.35 7.63-6.58 18.11-6.58 21.41 0 3.12.15 14.26 7.06 21.17 2.64 2.91 9.06 8.23 22.81 8.23 10.82 0 16.47-2.35 18.58-3.76.47-.24.71-.71.24-1.88l-2.35-6.83a1.26 1.26 0 0 0-1.41-.7c-2.59.94-6.35 2.82-15.29 2.82-17.42 0-16.85-14.74-16.94-16.7h37.17a1.23 1.23 0 0 0 1.17-.94c-.29 0 2.07-14.7-6.09-24.23zm36.69 52.69c13.17 0 21.41-7.06 21.41-18.11 0-11.76-11.7-15.17-17.88-17.17-4.14-1.66-13.41-3.38-13.41-8.94 0-3.76 3.29-6.35 8.47-6.35a38.11 38.11 0 0 1 16.7 4.23s1.18.71 1.65-.47c.23-.7 2.35-6.58 2.58-7.29a1.13 1.13 0 0 0-.7-1.41c-7.91-4.9-16.74-4.94-20.23-4.94-12 0-20.46 7.29-20.46 17.64 0 12.46 11.48 15.44 17.87 17.17 6.11 2 13.17 3.26 13.17 8.7 0 4-3.52 7.06-9.17 7.06a31.8 31.8 0 0 1-19-6.35 1 1 0 0 0-1.65.71l-2.35 7.52c-.47.94.23 1.18.23 1.41 1.72 1.4 10.33 6.59 22.79 6.59zM357.09 224c0-.71-.24-1.18-1.18-1.18h-11.76c0-.14.94-8.94 4.47-12.47 4.16-4.15 11.76-1.64 12-1.64 1.17.47 1.41 0 1.64-.47l2.83-7.77c.7-.94 0-1.17-.24-1.41-5.09-2-17.35-2.87-24.46 4.24-5.48 5.48-7 13.92-8 19.52h-8.47a1.28 1.28 0 0 0-1.17 1.18l-1.42 7.76c0 .7.24 1.17 1.18 1.17h8.23c-8.51 47.9-8.75 50.21-10.35 55.52-1.08 3.62-3.29 6.9-5.88 7.76-.09 0-3.88 1.68-9.64-.24 0 0-.94-.47-1.41.71-.24.71-2.59 6.82-2.83 7.53s0 1.41.47 1.41c5.11 2 13 1.77 17.88 0 6.28-2.28 9.72-7.89 11.53-12.94 2.75-7.71 2.81-9.79 11.76-59.74h12.23a1.29 1.29 0 0 0 1.18-1.18zm53.39 16c-.56-1.68-5.1-18.11-25.17-18.11-15.25 0-23 10-25.16 18.11-1 3-3.18 14 0 23.52.09.3 4.41 18.12 25.16 18.12 14.95 0 22.9-9.61 25.17-18.12 3.21-9.61 1.01-20.52 0-23.52zm45.4-16.7c-5-1.65-16.62-1.9-22.11 5.41v-4.47a1.11 1.11 0 0 0-1.18-1.17h-9.4a1.11 1.11 0 0 0-1.18 1.17v55.28a1.12 1.12 0 0 0 1.18 1.18h9.64a1.12 1.12 0 0 0 1.18-1.18v-27.77c0-2.91.05-11.37 4.46-15.05 4.9-4.9 12-3.36 13.41-3.06a1.57 1.57 0 0 0 1.41-.94 74 74 0 0 0 3.06-8 1.16 1.16 0 0 0-.47-1.41zm46.81 54.1l-2.12-7.29c-.47-1.18-1.41-.71-1.41-.71-4.23 1.82-10.15 1.89-11.29 1.89-4.64 0-17.17-1.13-17.17-19.76 0-6.23 1.85-19.76 16.47-19.76a34.85 34.85 0 0 1 11.52 1.65s.94.47 1.18-.71c.94-2.59 1.64-4.47 2.59-7.53.23-.94-.47-1.17-.71-1.17-11.59-3.87-22.34-2.53-27.76 0-1.59.74-16.23 6.49-16.23 27.52 0 2.9-.58 30.11 28.94 30.11a44.45 44.45 0 0 0 15.52-2.83 1.3 1.3 0 0 0 .47-1.42zm53.87-39.52c-.8-3-5.37-16.23-22.35-16.23-16 0-23.52 10.11-25.64 18.59a38.58 38.58 0 0 0-1.65 11.76c0 25.87 18.84 29.4 29.88 29.4 10.82 0 16.46-2.35 18.58-3.76.47-.24.71-.71.24-1.88l-2.36-6.83a1.26 1.26 0 0 0-1.41-.7c-2.59.94-6.35 2.82-15.29 2.82-17.42 0-16.85-14.74-16.93-16.7h37.16a1.25 1.25 0 0 0 1.18-.94c-.24-.01.94-7.07-1.41-15.54zm-23.29-6.35c-10.33 0-13 9-13.64 14.12H546c-.88-11.92-7.62-14.13-12.73-14.13z"], + "sass": [640, 512, [], "f41e", "M301.84 378.92c-.3.6-.6 1.08 0 0zm249.13-87a131.16 131.16 0 0 0-58 13.5c-5.9-11.9-12-22.3-13-30.1-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.3-6.7-24 2.5-25.29 5.9a122.83 122.83 0 0 0-5.3 19.1c-2.3 11.7-25.79 53.5-39.09 75.3-4.4-8.5-8.1-16-8.9-22-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.29-6.7-24 2.5-25.3 5.9-2.7 11.4-5.3 19.1-33.89 77.3-42.08 95.4c-4.2 9.2-7.8 16.6-10.4 21.6-.4.8-.7 1.3-.9 1.7.3-.5.5-1 .5-.8-2.2 4.3-3.5 6.7-3.5 6.7v.1c-1.7 3.2-3.6 6.1-4.5 6.1-.6 0-1.9-8.4.3-19.9 4.7-24.2 15.8-61.8 15.7-63.1-.1-.7 2.1-7.2-7.3-10.7-9.1-3.3-12.4 2.2-13.2 2.2s-1.4 2-1.4 2 10.1-42.4-19.39-42.4c-18.4 0-44 20.2-56.58 38.5-7.9 4.3-25 13.6-43 23.5-6.9 3.8-14 7.7-20.7 11.4-.5-.5-.9-1-1.4-1.5-35.79-38.2-101.87-65.2-99.07-116.5 1-18.7 7.5-67.8 127.07-127.4 98-48.8 176.35-35.4 189.84-5.6 19.4 42.5-41.89 121.6-143.66 133-38.79 4.3-59.18-10.7-64.28-16.3-5.3-5.9-6.1-6.2-8.1-5.1-3.3 1.8-1.2 7 0 10.1 3 7.9 15.5 21.9 36.79 28.9 18.7 6.1 64.18 9.5 119.17-11.8 61.78-23.8 109.87-90.1 95.77-145.6C386.52 18.32 293-.18 204.57 31.22c-52.69 18.7-109.67 48.1-150.66 86.4-48.69 45.6-56.48 85.3-53.28 101.9 11.39 58.9 92.57 97.3 125.06 125.7-1.6.9-3.1 1.7-4.5 2.5-16.29 8.1-78.18 40.5-93.67 74.7-17.5 38.8 2.9 66.6 16.29 70.4 41.79 11.6 84.58-9.3 107.57-43.6s20.2-79.1 9.6-99.5c-.1-.3-.3-.5-.4-.8 4.2-2.5 8.5-5 12.8-7.5 8.29-4.9 16.39-9.4 23.49-13.3-4 10.8-6.9 23.8-8.4 42.6-1.8 22 7.3 50.5 19.1 61.7 5.2 4.9 11.49 5 15.39 5 13.8 0 20-11.4 26.89-25 8.5-16.6 16-35.9 16-35.9s-9.4 52.2 16.3 52.2c9.39 0 18.79-12.1 23-18.3v.1s.2-.4.7-1.2c1-1.5 1.5-2.4 1.5-2.4v-.3c3.8-6.5 12.1-21.4 24.59-46 16.2-31.8 31.69-71.5 31.69-71.5a201.24 201.24 0 0 0 6.2 25.8c2.8 9.5 8.7 19.9 13.4 30-3.8 5.2-6.1 8.2-6.1 8.2a.31.31 0 0 0 .1.2c-3 4-6.4 8.3-9.9 12.5-12.79 15.2-28 32.6-30 37.6-2.4 5.9-1.8 10.3 2.8 13.7 3.4 2.6 9.4 3 15.69 2.5 11.5-.8 19.6-3.6 23.5-5.4a82.2 82.2 0 0 0 20.19-10.6c12.5-9.2 20.1-22.4 19.4-39.8-.4-9.6-3.5-19.2-7.3-28.2 1.1-1.6 2.3-3.3 3.4-5C434.8 301.72 450.1 270 450.1 270a201.24 201.24 0 0 0 6.2 25.8c2.4 8.1 7.09 17 11.39 25.7-18.59 15.1-30.09 32.6-34.09 44.1-7.4 21.3-1.6 30.9 9.3 33.1 4.9 1 11.9-1.3 17.1-3.5a79.46 79.46 0 0 0 21.59-11.1c12.5-9.2 24.59-22.1 23.79-39.6-.3-7.9-2.5-15.8-5.4-23.4 15.7-6.6 36.09-10.2 62.09-7.2 55.68 6.5 66.58 41.3 64.48 55.8s-13.8 22.6-17.7 25-5.1 3.3-4.8 5.1c.5 2.6 2.3 2.5 5.6 1.9 4.6-.8 29.19-11.8 30.29-38.7 1.6-34-31.09-71.4-89-71.1zm-429.18 144.7c-18.39 20.1-44.19 27.7-55.28 21.3C54.61 451 59.31 421.42 82 400c13.8-13 31.59-25 43.39-32.4 2.7-1.6 6.6-4 11.4-6.9.8-.5 1.2-.7 1.2-.7.9-.6 1.9-1.1 2.9-1.7 8.29 30.4.3 57.2-19.1 78.3zm134.36-91.4c-6.4 15.7-19.89 55.7-28.09 53.6-7-1.8-11.3-32.3-1.4-62.3 5-15.1 15.6-33.1 21.9-40.1 10.09-11.3 21.19-14.9 23.79-10.4 3.5 5.9-12.2 49.4-16.2 59.2zm111 53c-2.7 1.4-5.2 2.3-6.4 1.6-.9-.5 1.1-2.4 1.1-2.4s13.9-14.9 19.4-21.7c3.2-4 6.9-8.7 10.89-13.9 0 .5.1 1 .1 1.6-.13 17.9-17.32 30-25.12 34.8zm85.58-19.5c-2-1.4-1.7-6.1 5-20.7 2.6-5.7 8.59-15.3 19-24.5a36.18 36.18 0 0 1 1.9 10.8c-.1 22.5-16.2 30.9-25.89 34.4z"], + "schlix": [448, 512, [], "f3ea", "M350.5 157.7l-54.2-46.1 73.4-39 78.3 44.2-97.5 40.9zM192 122.1l45.7-28.2 34.7 34.6-55.4 29-25-35.4zm-65.1 6.6l31.9-22.1L176 135l-36.7 22.5-12.4-28.8zm-23.3 88.2l-8.8-34.8 29.6-18.3 13.1 35.3-33.9 17.8zm-21.2-83.7l23.9-18.1 8.9 24-26.7 18.3-6.1-24.2zM59 206.5l-3.6-28.4 22.3-15.5 6.1 28.7L59 206.5zm-30.6 16.6l20.8-12.8 3.3 33.4-22.9 12-1.2-32.6zM1.4 268l19.2-10.2.4 38.2-21 8.8L1.4 268zm59.1 59.3l-28.3 8.3-1.6-46.8 25.1-10.7 4.8 49.2zM99 263.2l-31.1 13-5.2-40.8L90.1 221l8.9 42.2zM123.2 377l-41.6 5.9-8.1-63.5 35.2-10.8 14.5 68.4zm28.5-139.9l21.2 57.1-46.2 13.6-13.7-54.1 38.7-16.6zm85.7 230.5l-70.9-3.3-24.3-95.8 55.2-8.6 40 107.7zm-84.9-279.7l42.2-22.4 28 45.9-50.8 21.3-19.4-44.8zm41 94.9l61.3-18.7 52.8 86.6-79.8 11.3-34.3-79.2zm51.4-85.6l67.3-28.8 65.5 65.4-88.6 26.2-44.2-62.8z"], + "scribd": [384, 512, [], "f28a", "M42.3 252.7c-16.1-19-24.7-45.9-24.8-79.9 0-100.4 75.2-153.1 167.2-153.1 98.6-1.6 156.8 49 184.3 70.6l-50.5 72.1-37.3-24.6 26.9-38.6c-36.5-24-79.4-36.5-123-35.8-50.7-.8-111.7 27.2-111.7 76.2 0 18.7 11.2 20.7 28.6 15.6 23.3-5.3 41.9.6 55.8 14 26.4 24.3 23.2 67.6-.7 91.9-29.2 29.5-85.2 27.3-114.8-8.4zm317.7 5.9c-15.5-18.8-38.9-29.4-63.2-28.6-38.1-2-71.1 28-70.5 67.2-.7 16.8 6 33 18.4 44.3 14.1 13.9 33 19.7 56.3 14.4 17.4-5.1 28.6-3.1 28.6 15.6 0 4.3-.5 8.5-1.4 12.7-16.7 40.9-59.5 64.4-121.4 64.4-51.9.2-102.4-16.4-144.1-47.3l33.7-39.4-35.6-27.4L0 406.3l15.4 13.8c52.5 46.8 120.4 72.5 190.7 72.2 51.4 0 94.4-10.5 133.6-44.1 57.1-51.4 54.2-149.2 20.3-189.6z"], + "searchengin": [460, 512, [], "f3eb", "M220.6 130.3l-67.2 28.2V43.2L98.7 233.5l54.7-24.2v130.3l67.2-209.3zm-83.2-96.7l-1.3 4.7-15.2 52.9C80.6 106.7 52 145.8 52 191.5c0 52.3 34.3 95.9 83.4 105.5v53.6C57.5 340.1 0 272.4 0 191.6c0-80.5 59.8-147.2 137.4-158zm311.4 447.2c-11.2 11.2-23.1 12.3-28.6 10.5-5.4-1.8-27.1-19.9-60.4-44.4-33.3-24.6-33.6-35.7-43-56.7-9.4-20.9-30.4-42.6-57.5-52.4l-9.7-14.7c-24.7 16.9-53 26.9-81.3 28.7l2.1-6.6 15.9-49.5c46.5-11.9 80.9-54 80.9-104.2 0-54.5-38.4-102.1-96-107.1V32.3C254.4 37.4 320 106.8 320 191.6c0 33.6-11.2 64.7-29 90.4l14.6 9.6c9.8 27.1 31.5 48 52.4 57.4s32.2 9.7 56.8 43c24.6 33.2 42.7 54.9 44.5 60.3s.7 17.3-10.5 28.5zm-9.9-17.9c0-4.4-3.6-8-8-8s-8 3.6-8 8 3.6 8 8 8 8-3.6 8-8z"], + "sellcast": [448, 512, [], "f2da", "M353.4 32H94.7C42.6 32 0 74.6 0 126.6v258.7C0 437.4 42.6 480 94.7 480h258.7c52.1 0 94.7-42.6 94.7-94.6V126.6c0-52-42.6-94.6-94.7-94.6zm-50 316.4c-27.9 48.2-89.9 64.9-138.2 37.2-22.9 39.8-54.9 8.6-42.3-13.2l15.7-27.2c5.9-10.3 19.2-13.9 29.5-7.9 18.6 10.8-.1-.1 18.5 10.7 27.6 15.9 63.4 6.3 79.4-21.3 15.9-27.6 6.3-63.4-21.3-79.4-17.8-10.2-.6-.4-18.6-10.6-24.6-14.2-3.4-51.9 21.6-37.5 18.6 10.8-.1-.1 18.5 10.7 48.4 28 65.1 90.3 37.2 138.5zm21.8-208.8c-17 29.5-16.3 28.8-19 31.5-6.5 6.5-16.3 8.7-26.5 3.6-18.6-10.8.1.1-18.5-10.7-27.6-15.9-63.4-6.3-79.4 21.3s-6.3 63.4 21.3 79.4c0 0 18.5 10.6 18.6 10.6 24.6 14.2 3.4 51.9-21.6 37.5-18.6-10.8.1.1-18.5-10.7-48.2-27.8-64.9-90.1-37.1-138.4 27.9-48.2 89.9-64.9 138.2-37.2l4.8-8.4c14.3-24.9 52-3.3 37.7 21.5z"], + "sellsy": [640, 512, [], "f213", "M539.71 237.308c3.064-12.257 4.29-24.821 4.29-37.384C544 107.382 468.618 32 376.076 32c-77.22 0-144.634 53.012-163.02 127.781-15.322-13.176-34.934-20.53-55.157-20.53-46.271 0-83.962 37.69-83.962 83.961 0 7.354.92 15.015 3.065 22.369-42.9 20.225-70.785 63.738-70.785 111.234C6.216 424.843 61.68 480 129.401 480h381.198c67.72 0 123.184-55.157 123.184-123.184.001-56.384-38.916-106.025-94.073-119.508zM199.88 401.554c0 8.274-7.048 15.321-15.321 15.321H153.61c-8.274 0-15.321-7.048-15.321-15.321V290.626c0-8.273 7.048-15.321 15.321-15.321h30.949c8.274 0 15.321 7.048 15.321 15.321v110.928zm89.477 0c0 8.274-7.048 15.321-15.322 15.321h-30.949c-8.274 0-15.321-7.048-15.321-15.321V270.096c0-8.274 7.048-15.321 15.321-15.321h30.949c8.274 0 15.322 7.048 15.322 15.321v131.458zm89.477 0c0 8.274-7.047 15.321-15.321 15.321h-30.949c-8.274 0-15.322-7.048-15.322-15.321V238.84c0-8.274 7.048-15.321 15.322-15.321h30.949c8.274 0 15.321 7.048 15.321 15.321v162.714zm87.027 0c0 8.274-7.048 15.321-15.322 15.321h-28.497c-8.274 0-15.321-7.048-15.321-15.321V176.941c0-8.579 7.047-15.628 15.321-15.628h28.497c8.274 0 15.322 7.048 15.322 15.628v224.613z"], + "servicestack": [496, 512, [], "f3ec", "M88 216c81.7 10.2 273.7 102.3 304 232H0c99.5-8.1 184.5-137 88-232zm32-152c32.3 35.6 47.7 83.9 46.4 133.6C249.3 231.3 373.7 321.3 400 448h96C455.3 231.9 222.8 79.5 120 64z"], + "shirtsinbulk": [448, 512, [], "f214", "M100 410.3l30.6 13.4 4.4-9.9-30.6-13.4zm39.4 17.5l30.6 13.4 4.4-9.9-30.6-13.4zm172.1-14l4.4 9.9 30.6-13.4-4.4-9.9zM179.1 445l30.3 13.7 4.4-9.9-30.3-13.4zM60.4 392.8L91 406.2l4.4-9.6-30.6-13.7zm211.4 38.5l4.4 9.9 30.6-13.4-4.4-9.9zm-39.3 17.5l4.4 9.9 30.6-13.7-4.4-9.6zm118.4-52.2l4.4 9.6 30.6-13.4-4.4-9.9zM170 46.6h-33.5v10.5H170zm-47.2 0H89.2v10.5h33.5zm-47.3 0H42.3v10.5h33.3zm141.5 0h-33.2v10.5H217zm94.5 0H278v10.5h33.5zm47.3 0h-33.5v10.5h33.5zm-94.6 0H231v10.5h33.2zm141.5 0h-33.3v10.5h33.3zM52.8 351.1H42v33.5h10.8zm70-215.9H89.2v10.5h33.5zm-70 10.6h22.8v-10.5H42v33.5h10.8zm168.9 228.6c50.5 0 91.3-40.8 91.3-91.3 0-50.2-40.8-91.3-91.3-91.3-50.2 0-91.3 41.1-91.3 91.3 0 50.5 41.1 91.3 91.3 91.3zm-48.2-111.1c0-25.4 29.5-31.8 49.6-31.8 16.9 0 29.2 5.8 44.3 12l-8.8 16.9h-.9c-6.4-9.9-24.8-13.1-35.6-13.1-9 0-29.8 1.8-29.8 14.9 0 21.6 78.5-10.2 78.5 37.9 0 25.4-31.5 31.2-51 31.2-18.1 0-32.4-2.9-47.2-12.2l9-18.4h.9c6.1 12.2 23.6 14.9 35.9 14.9 8.7 0 32.7-1.2 32.7-14.3 0-26.1-77.6 6.3-77.6-38zM52.8 178.4H42V212h10.8zm342.4 206.2H406v-33.5h-10.8zM52.8 307.9H42v33.5h10.8zM0 3.7v406l221.7 98.6L448 409.7V3.7zm418.8 387.1L222 476.5 29.2 390.8V120.7h389.7v270.1zm0-299.3H29.2V32.9h389.7v58.6zm-366 130.1H42v33.5h10.8zm0 43.2H42v33.5h10.8zM170 135.2h-33.5v10.5H170zm225.2 163.1H406v-33.5h-10.8zm0-43.2H406v-33.5h-10.8zM217 135.2h-33.2v10.5H217zM395.2 212H406v-33.5h-10.8zm0 129.5H406V308h-10.8zm-131-206.3H231v10.5h33.2zm47.3 0H278v10.5h33.5zm83.7 33.6H406v-33.5h-33.5v10.5h22.8zm-36.4-33.6h-33.5v10.5h33.5z"], + "shopify": [448, 512, [], "e057", "M388.32,104.1a4.66,4.66,0,0,0-4.4-4c-2,0-37.23-.8-37.23-.8s-21.61-20.82-29.62-28.83V503.2L442.76,472S388.72,106.5,388.32,104.1ZM288.65,70.47a116.67,116.67,0,0,0-7.21-17.61C271,32.85,255.42,22,237,22a15,15,0,0,0-4,.4c-.4-.8-1.2-1.2-1.6-2C223.4,11.63,213,7.63,200.58,8c-24,.8-48,18-67.25,48.83-13.61,21.62-24,48.84-26.82,70.06-27.62,8.4-46.83,14.41-47.23,14.81-14,4.4-14.41,4.8-16,18-1.2,10-38,291.82-38,291.82L307.86,504V65.67a41.66,41.66,0,0,0-4.4.4S297.86,67.67,288.65,70.47ZM233.41,87.69c-16,4.8-33.63,10.4-50.84,15.61,4.8-18.82,14.41-37.63,25.62-50,4.4-4.4,10.41-9.61,17.21-12.81C232.21,54.86,233.81,74.48,233.41,87.69ZM200.58,24.44A27.49,27.49,0,0,1,215,28c-6.4,3.2-12.81,8.41-18.81,14.41-15.21,16.42-26.82,42-31.62,66.45-14.42,4.41-28.83,8.81-42,12.81C131.33,83.28,163.75,25.24,200.58,24.44ZM154.15,244.61c1.6,25.61,69.25,31.22,73.25,91.66,2.8,47.64-25.22,80.06-65.65,82.47-48.83,3.2-75.65-25.62-75.65-25.62l10.4-44s26.82,20.42,48.44,18.82c14-.8,19.22-12.41,18.81-20.42-2-33.62-57.24-31.62-60.84-86.86-3.2-46.44,27.22-93.27,94.47-97.68,26-1.6,39.23,4.81,39.23,4.81L221.4,225.39s-17.21-8-37.63-6.4C154.15,221,153.75,239.8,154.15,244.61ZM249.42,82.88c0-12-1.6-29.22-7.21-43.63,18.42,3.6,27.22,24,31.23,36.43Q262.63,78.68,249.42,82.88Z"], + "shopware": [512, 512, [], "f5b5", "M403.5 455.41A246.17 246.17 0 0 1 256 504C118.81 504 8 393 8 256 8 118.81 119 8 256 8a247.39 247.39 0 0 1 165.7 63.5 3.57 3.57 0 0 1-2.86 6.18A418.62 418.62 0 0 0 362.13 74c-129.36 0-222.4 53.47-222.4 155.35 0 109 92.13 145.88 176.83 178.73 33.64 13 65.4 25.36 87 41.59a3.58 3.58 0 0 1 0 5.72zM503 233.09a3.64 3.64 0 0 0-1.27-2.44c-51.76-43-93.62-60.48-144.48-60.48-84.13 0-80.25 52.17-80.25 53.63 0 42.6 52.06 62 112.34 84.49 31.07 11.59 63.19 23.57 92.68 39.93a3.57 3.57 0 0 0 5-1.82A249 249 0 0 0 503 233.09z"], + "simplybuilt": [512, 512, [], "f215", "M481.2 64h-106c-14.5 0-26.6 11.8-26.6 26.3v39.6H163.3V90.3c0-14.5-12-26.3-26.6-26.3h-106C16.1 64 4.3 75.8 4.3 90.3v331.4c0 14.5 11.8 26.3 26.6 26.3h450.4c14.8 0 26.6-11.8 26.6-26.3V90.3c-.2-14.5-12-26.3-26.7-26.3zM149.8 355.8c-36.6 0-66.4-29.7-66.4-66.4 0-36.9 29.7-66.6 66.4-66.6 36.9 0 66.6 29.7 66.6 66.6 0 36.7-29.7 66.4-66.6 66.4zm212.4 0c-36.9 0-66.6-29.7-66.6-66.6 0-36.6 29.7-66.4 66.6-66.4 36.6 0 66.4 29.7 66.4 66.4 0 36.9-29.8 66.6-66.4 66.6z"], + "sistrix": [448, 512, [], "f3ee", "M448 449L301.2 300.2c20-27.9 31.9-62.2 31.9-99.2 0-93.1-74.7-168.9-166.5-168.9C74.7 32 0 107.8 0 200.9s74.7 168.9 166.5 168.9c39.8 0 76.3-14.2 105-37.9l146 148.1 30.5-31zM166.5 330.8c-70.6 0-128.1-58.3-128.1-129.9S95.9 71 166.5 71s128.1 58.3 128.1 129.9-57.4 129.9-128.1 129.9z"], + "sith": [448, 512, [], "f512", "M0 32l69.71 118.75-58.86-11.52 69.84 91.03a146.741 146.741 0 0 0 0 51.45l-69.84 91.03 58.86-11.52L0 480l118.75-69.71-11.52 58.86 91.03-69.84c17.02 3.04 34.47 3.04 51.48 0l91.03 69.84-11.52-58.86L448 480l-69.71-118.78 58.86 11.52-69.84-91.03c3.03-17.01 3.04-34.44 0-51.45l69.84-91.03-58.86 11.52L448 32l-118.75 69.71 11.52-58.9-91.06 69.87c-8.5-1.52-17.1-2.29-25.71-2.29s-17.21.78-25.71 2.29l-91.06-69.87 11.52 58.9L0 32zm224 99.78c31.8 0 63.6 12.12 87.85 36.37 48.5 48.5 48.49 127.21 0 175.7s-127.2 48.46-175.7-.03c-48.5-48.5-48.49-127.21 0-175.7 24.24-24.25 56.05-36.34 87.85-36.34zm0 36.66c-22.42 0-44.83 8.52-61.92 25.61-34.18 34.18-34.19 89.68 0 123.87s89.65 34.18 123.84 0c34.18-34.18 34.19-89.68 0-123.87-17.09-17.09-39.5-25.61-61.92-25.61z"], + "sketch": [512, 512, [], "f7c6", "M27.5 162.2L9 187.1h90.5l6.9-130.7-78.9 105.8zM396.3 45.7L267.7 32l135.7 147.2-7.1-133.5zM112.2 218.3l-11.2-22H9.9L234.8 458zm2-31.2h284l-81.5-88.5L256.3 33zm297.3 9.1L277.6 458l224.8-261.7h-90.9zM415.4 69L406 56.4l.9 17.3 6.1 113.4h90.3zM113.5 93.5l-4.6 85.6L244.7 32 116.1 45.7zm287.7 102.7h-290l42.4 82.9L256.3 480l144.9-283.8z"], + "skyatlas": [640, 512, [], "f216", "M640 329.3c0 65.9-52.5 114.4-117.5 114.4-165.9 0-196.6-249.7-359.7-249.7-146.9 0-147.1 212.2 5.6 212.2 42.5 0 90.9-17.8 125.3-42.5 5.6-4.1 16.9-16.3 22.8-16.3s10.9 5 10.9 10.9c0 7.8-13.1 19.1-18.7 24.1-40.9 35.6-100.3 61.2-154.7 61.2-83.4.1-154-59-154-144.9s67.5-149.1 152.8-149.1c185.3 0 222.5 245.9 361.9 245.9 99.9 0 94.8-139.7 3.4-139.7-17.5 0-35 11.6-46.9 11.6-8.4 0-15.9-7.2-15.9-15.6 0-11.6 5.3-23.7 5.3-36.3 0-66.6-50.9-114.7-116.9-114.7-53.1 0-80 36.9-88.8 36.9-6.2 0-11.2-5-11.2-11.2 0-5.6 4.1-10.3 7.8-14.4 25.3-28.8 64.7-43.7 102.8-43.7 79.4 0 139.1 58.4 139.1 137.8 0 6.9-.3 13.7-1.2 20.6 11.9-3.1 24.1-4.7 35.9-4.7 60.7 0 111.9 45.3 111.9 107.2z"], + "skype": [448, 512, [], "f17e", "M424.7 299.8c2.9-14 4.7-28.9 4.7-43.8 0-113.5-91.9-205.3-205.3-205.3-14.9 0-29.7 1.7-43.8 4.7C161.3 40.7 137.7 32 112 32 50.2 32 0 82.2 0 144c0 25.7 8.7 49.3 23.3 68.2-2.9 14-4.7 28.9-4.7 43.8 0 113.5 91.9 205.3 205.3 205.3 14.9 0 29.7-1.7 43.8-4.7 19 14.6 42.6 23.3 68.2 23.3 61.8 0 112-50.2 112-112 .1-25.6-8.6-49.2-23.2-68.1zm-194.6 91.5c-65.6 0-120.5-29.2-120.5-65 0-16 9-30.6 29.5-30.6 31.2 0 34.1 44.9 88.1 44.9 25.7 0 42.3-11.4 42.3-26.3 0-18.7-16-21.6-42-28-62.5-15.4-117.8-22-117.8-87.2 0-59.2 58.6-81.1 109.1-81.1 55.1 0 110.8 21.9 110.8 55.4 0 16.9-11.4 31.8-30.3 31.8-28.3 0-29.2-33.5-75-33.5-25.7 0-42 7-42 22.5 0 19.8 20.8 21.8 69.1 33 41.4 9.3 90.7 26.8 90.7 77.6 0 59.1-57.1 86.5-112 86.5z"], + "slack": [448, 512, [], "f198", "M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z"], + "slack-hash": [448, 512, [], "f3ef", "M446.2 270.4c-6.2-19-26.9-29.1-46-22.9l-45.4 15.1-30.3-90 45.4-15.1c19.1-6.2 29.1-26.8 23-45.9-6.2-19-26.9-29.1-46-22.9l-45.4 15.1-15.7-47c-6.2-19-26.9-29.1-46-22.9-19.1 6.2-29.1 26.8-23 45.9l15.7 47-93.4 31.2-15.7-47c-6.2-19-26.9-29.1-46-22.9-19.1 6.2-29.1 26.8-23 45.9l15.7 47-45.3 15c-19.1 6.2-29.1 26.8-23 45.9 5 14.5 19.1 24 33.6 24.6 6.8 1 12-1.6 57.7-16.8l30.3 90L78 354.8c-19 6.2-29.1 26.9-23 45.9 5 14.5 19.1 24 33.6 24.6 6.8 1 12-1.6 57.7-16.8l15.7 47c5.9 16.9 24.7 29 46 22.9 19.1-6.2 29.1-26.8 23-45.9l-15.7-47 93.6-31.3 15.7 47c5.9 16.9 24.7 29 46 22.9 19.1-6.2 29.1-26.8 23-45.9l-15.7-47 45.4-15.1c19-6 29.1-26.7 22.9-45.7zm-254.1 47.2l-30.3-90.2 93.5-31.3 30.3 90.2-93.5 31.3z"], + "slideshare": [512, 512, [], "f1e7", "M187.7 153.7c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7s61.7-26 61.7-57.7c0-32-27.7-57.7-61.7-57.7zm143.4 0c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7 34.3 0 61.7-26 61.7-57.7.1-32-27.4-57.7-61.7-57.7zm156.6 90l-6 4.3V49.7c0-27.4-20.6-49.7-46-49.7H76.6c-25.4 0-46 22.3-46 49.7V248c-2-1.4-4.3-2.9-6.3-4.3-15.1-10.6-25.1 4-16 17.7 18.3 22.6 53.1 50.3 106.3 72C58.3 525.1 252 555.7 248.9 457.5c0-.7.3-56.6.3-96.6 5.1 1.1 9.4 2.3 13.7 3.1 0 39.7.3 92.8.3 93.5-3.1 98.3 190.6 67.7 134.3-124 53.1-21.7 88-49.4 106.3-72 9.1-13.8-.9-28.3-16.1-17.8zm-30.5 19.2c-68.9 37.4-128.3 31.1-160.6 29.7-23.7-.9-32.6 9.1-33.7 24.9-10.3-7.7-18.6-15.5-20.3-17.1-5.1-5.4-13.7-8-27.1-7.7-31.7 1.1-89.7 7.4-157.4-28V72.3c0-34.9 8.9-45.7 40.6-45.7h317.7c30.3 0 40.9 12.9 40.9 45.7v190.6z"], + "snapchat": [496, 512, [], "f2ab", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm169.5 338.9c-3.5 8.1-18.1 14-44.8 18.2-1.4 1.9-2.5 9.8-4.3 15.9-1.1 3.7-3.7 5.9-8.1 5.9h-.2c-6.2 0-12.8-2.9-25.8-2.9-17.6 0-23.7 4-37.4 13.7-14.5 10.3-28.4 19.1-49.2 18.2-21 1.6-38.6-11.2-48.5-18.2-13.8-9.7-19.8-13.7-37.4-13.7-12.5 0-20.4 3.1-25.8 3.1-5.4 0-7.5-3.3-8.3-6-1.8-6.1-2.9-14.1-4.3-16-13.8-2.1-44.8-7.5-45.5-21.4-.2-3.6 2.3-6.8 5.9-7.4 46.3-7.6 67.1-55.1 68-57.1 0-.1.1-.2.2-.3 2.5-5 3-9.2 1.6-12.5-3.4-7.9-17.9-10.7-24-13.2-15.8-6.2-18-13.4-17-18.3 1.6-8.5 14.4-13.8 21.9-10.3 5.9 2.8 11.2 4.2 15.7 4.2 3.3 0 5.5-.8 6.6-1.4-1.4-23.9-4.7-58 3.8-77.1C183.1 100 230.7 96 244.7 96c.6 0 6.1-.1 6.7-.1 34.7 0 68 17.8 84.3 54.3 8.5 19.1 5.2 53.1 3.8 77.1 1.1.6 2.9 1.3 5.7 1.4 4.3-.2 9.2-1.6 14.7-4.2 4-1.9 9.6-1.6 13.6 0 6.3 2.3 10.3 6.8 10.4 11.9.1 6.5-5.7 12.1-17.2 16.6-1.4.6-3.1 1.1-4.9 1.7-6.5 2.1-16.4 5.2-19 11.5-1.4 3.3-.8 7.5 1.6 12.5.1.1.1.2.2.3.9 2 21.7 49.5 68 57.1 4 1 7.1 5.5 4.9 10.8z"], + "snapchat-ghost": [512, 512, [], "f2ac", "M510.846 392.673c-5.211 12.157-27.239 21.089-67.36 27.318-2.064 2.786-3.775 14.686-6.507 23.956-1.625 5.566-5.623 8.869-12.128 8.869l-.297-.005c-9.395 0-19.203-4.323-38.852-4.323-26.521 0-35.662 6.043-56.254 20.588-21.832 15.438-42.771 28.764-74.027 27.399-31.646 2.334-58.025-16.908-72.871-27.404-20.714-14.643-29.828-20.582-56.241-20.582-18.864 0-30.736 4.72-38.852 4.72-8.073 0-11.213-4.922-12.422-9.04-2.703-9.189-4.404-21.263-6.523-24.13-20.679-3.209-67.31-11.344-68.498-32.15a10.627 10.627 0 0 1 8.877-11.069c69.583-11.455 100.924-82.901 102.227-85.934.074-.176.155-.344.237-.515 3.713-7.537 4.544-13.849 2.463-18.753-5.05-11.896-26.872-16.164-36.053-19.796-23.715-9.366-27.015-20.128-25.612-27.504 2.437-12.836 21.725-20.735 33.002-15.453 8.919 4.181 16.843 6.297 23.547 6.297 5.022 0 8.212-1.204 9.96-2.171-2.043-35.936-7.101-87.29 5.687-115.969C158.122 21.304 229.705 15.42 250.826 15.42c.944 0 9.141-.089 10.11-.089 52.148 0 102.254 26.78 126.723 81.643 12.777 28.65 7.749 79.792 5.695 116.009 1.582.872 4.357 1.942 8.599 2.139 6.397-.286 13.815-2.389 22.069-6.257 6.085-2.846 14.406-2.461 20.48.058l.029.01c9.476 3.385 15.439 10.215 15.589 17.87.184 9.747-8.522 18.165-25.878 25.018-2.118.835-4.694 1.655-7.434 2.525-9.797 3.106-24.6 7.805-28.616 17.271-2.079 4.904-1.256 11.211 2.46 18.748.087.168.166.342.239.515 1.301 3.03 32.615 74.46 102.23 85.934 6.427 1.058 11.163 7.877 7.725 15.859z"], + "snapchat-square": [448, 512, [], "f2ad", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-6.5 314.9c-3.5 8.1-18.1 14-44.8 18.2-1.4 1.9-2.5 9.8-4.3 15.9-1.1 3.7-3.7 5.9-8.1 5.9h-.2c-6.2 0-12.8-2.9-25.8-2.9-17.6 0-23.7 4-37.4 13.7-14.5 10.3-28.4 19.1-49.2 18.2-21 1.6-38.6-11.2-48.5-18.2-13.8-9.7-19.8-13.7-37.4-13.7-12.5 0-20.4 3.1-25.8 3.1-5.4 0-7.5-3.3-8.3-6-1.8-6.1-2.9-14.1-4.3-16-13.8-2.1-44.8-7.5-45.5-21.4-.2-3.6 2.3-6.8 5.9-7.4 46.3-7.6 67.1-55.1 68-57.1 0-.1.1-.2.2-.3 2.5-5 3-9.2 1.6-12.5-3.4-7.9-17.9-10.7-24-13.2-15.8-6.2-18-13.4-17-18.3 1.6-8.5 14.4-13.8 21.9-10.3 5.9 2.8 11.2 4.2 15.7 4.2 3.3 0 5.5-.8 6.6-1.4-1.4-23.9-4.7-58 3.8-77.1C159.1 100 206.7 96 220.7 96c.6 0 6.1-.1 6.7-.1 34.7 0 68 17.8 84.3 54.3 8.5 19.1 5.2 53.1 3.8 77.1 1.1.6 2.9 1.3 5.7 1.4 4.3-.2 9.2-1.6 14.7-4.2 4-1.9 9.6-1.6 13.6 0 6.3 2.3 10.3 6.8 10.4 11.9.1 6.5-5.7 12.1-17.2 16.6-1.4.6-3.1 1.1-4.9 1.7-6.5 2.1-16.4 5.2-19 11.5-1.4 3.3-.8 7.5 1.6 12.5.1.1.1.2.2.3.9 2 21.7 49.5 68 57.1 4 1 7.1 5.5 4.9 10.8z"], + "soundcloud": [640, 512, [], "f1be", "M111.4 256.3l5.8 65-5.8 68.3c-.3 2.5-2.2 4.4-4.4 4.4s-4.2-1.9-4.2-4.4l-5.6-68.3 5.6-65c0-2.2 1.9-4.2 4.2-4.2 2.2 0 4.1 2 4.4 4.2zm21.4-45.6c-2.8 0-4.7 2.2-5 5l-5 105.6 5 68.3c.3 2.8 2.2 5 5 5 2.5 0 4.7-2.2 4.7-5l5.8-68.3-5.8-105.6c0-2.8-2.2-5-4.7-5zm25.5-24.1c-3.1 0-5.3 2.2-5.6 5.3l-4.4 130 4.4 67.8c.3 3.1 2.5 5.3 5.6 5.3 2.8 0 5.3-2.2 5.3-5.3l5.3-67.8-5.3-130c0-3.1-2.5-5.3-5.3-5.3zM7.2 283.2c-1.4 0-2.2 1.1-2.5 2.5L0 321.3l4.7 35c.3 1.4 1.1 2.5 2.5 2.5s2.2-1.1 2.5-2.5l5.6-35-5.6-35.6c-.3-1.4-1.1-2.5-2.5-2.5zm23.6-21.9c-1.4 0-2.5 1.1-2.5 2.5l-6.4 57.5 6.4 56.1c0 1.7 1.1 2.8 2.5 2.8s2.5-1.1 2.8-2.5l7.2-56.4-7.2-57.5c-.3-1.4-1.4-2.5-2.8-2.5zm25.3-11.4c-1.7 0-3.1 1.4-3.3 3.3L47 321.3l5.8 65.8c.3 1.7 1.7 3.1 3.3 3.1 1.7 0 3.1-1.4 3.1-3.1l6.9-65.8-6.9-68.1c0-1.9-1.4-3.3-3.1-3.3zm25.3-2.2c-1.9 0-3.6 1.4-3.6 3.6l-5.8 70 5.8 67.8c0 2.2 1.7 3.6 3.6 3.6s3.6-1.4 3.9-3.6l6.4-67.8-6.4-70c-.3-2.2-2-3.6-3.9-3.6zm241.4-110.9c-1.1-.8-2.8-1.4-4.2-1.4-2.2 0-4.2.8-5.6 1.9-1.9 1.7-3.1 4.2-3.3 6.7v.8l-3.3 176.7 1.7 32.5 1.7 31.7c.3 4.7 4.2 8.6 8.9 8.6s8.6-3.9 8.6-8.6l3.9-64.2-3.9-177.5c-.4-3-2-5.8-4.5-7.2zm-26.7 15.3c-1.4-.8-2.8-1.4-4.4-1.4s-3.1.6-4.4 1.4c-2.2 1.4-3.6 3.9-3.6 6.7l-.3 1.7-2.8 160.8s0 .3 3.1 65.6v.3c0 1.7.6 3.3 1.7 4.7 1.7 1.9 3.9 3.1 6.4 3.1 2.2 0 4.2-1.1 5.6-2.5 1.7-1.4 2.5-3.3 2.5-5.6l.3-6.7 3.1-58.6-3.3-162.8c-.3-2.8-1.7-5.3-3.9-6.7zm-111.4 22.5c-3.1 0-5.8 2.8-5.8 6.1l-4.4 140.6 4.4 67.2c.3 3.3 2.8 5.8 5.8 5.8 3.3 0 5.8-2.5 6.1-5.8l5-67.2-5-140.6c-.2-3.3-2.7-6.1-6.1-6.1zm376.7 62.8c-10.8 0-21.1 2.2-30.6 6.1-6.4-70.8-65.8-126.4-138.3-126.4-17.8 0-35 3.3-50.3 9.4-6.1 2.2-7.8 4.4-7.8 9.2v249.7c0 5 3.9 8.6 8.6 9.2h218.3c43.3 0 78.6-35 78.6-78.3.1-43.6-35.2-78.9-78.5-78.9zm-296.7-60.3c-4.2 0-7.5 3.3-7.8 7.8l-3.3 136.7 3.3 65.6c.3 4.2 3.6 7.5 7.8 7.5 4.2 0 7.5-3.3 7.5-7.5l3.9-65.6-3.9-136.7c-.3-4.5-3.3-7.8-7.5-7.8zm-53.6-7.8c-3.3 0-6.4 3.1-6.4 6.7l-3.9 145.3 3.9 66.9c.3 3.6 3.1 6.4 6.4 6.4 3.6 0 6.4-2.8 6.7-6.4l4.4-66.9-4.4-145.3c-.3-3.6-3.1-6.7-6.7-6.7zm26.7 3.4c-3.9 0-6.9 3.1-6.9 6.9L227 321.3l3.9 66.4c.3 3.9 3.1 6.9 6.9 6.9s6.9-3.1 6.9-6.9l4.2-66.4-4.2-141.7c0-3.9-3-6.9-6.9-6.9z"], + "sourcetree": [448, 512, [], "f7d3", "M427.2 203c0-112.1-90.9-203-203-203C112.1-.2 21.2 90.6 21 202.6A202.86 202.86 0 0 0 161.5 396v101.7a14.3 14.3 0 0 0 14.3 14.3h96.4a14.3 14.3 0 0 0 14.3-14.3V396.1A203.18 203.18 0 0 0 427.2 203zm-271.6 0c0-90.8 137.3-90.8 137.3 0-.1 89.9-137.3 91-137.3 0z"], + "speakap": [448, 512, [], "f3f3", "M64 391.78C-15.41 303.59-8 167.42 80.64 87.64s224.8-73 304.21 15.24 72 224.36-16.64 304.14c-18.74 16.87 64 43.09 42 52.26-82.06 34.21-253.91 35-346.23-67.5zm213.31-211.6l38.5-40.86c-9.61-8.89-32-26.83-76.17-27.6-52.33-.91-95.86 28.3-96.77 80-.2 11.33.29 36.72 29.42 54.83 34.46 21.42 86.52 21.51 86 52.26-.37 21.28-26.42 25.81-38.59 25.6-3-.05-30.23-.46-47.61-24.62l-40 42.61c28.16 27 59 32.62 83.49 33.05 10.23.18 96.42.33 97.84-81 .28-15.81-2.07-39.72-28.86-56.59-34.36-21.64-85-19.45-84.43-49.75.41-23.25 31-25.37 37.53-25.26.43 0 26.62.26 39.62 17.37z"], + "speaker-deck": [512, 512, [], "f83c", "M213.86 296H100a100 100 0 0 1 0-200h132.84a40 40 0 0 1 0 80H98c-26.47 0-26.45 40 0 40h113.82a100 100 0 0 1 0 200H40a40 40 0 0 1 0-80h173.86c26.48 0 26.46-40 0-40zM298 416a120.21 120.21 0 0 0 51.11-80h64.55a19.83 19.83 0 0 0 19.66-20V196a19.83 19.83 0 0 0-19.66-20H296.42a60.77 60.77 0 0 0 0-80h136.93c43.44 0 78.65 35.82 78.65 80v160c0 44.18-35.21 80-78.65 80z"], + "spotify": [496, 512, [], "f1bc", "M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm100.7 364.9c-4.2 0-6.8-1.3-10.7-3.6-62.4-37.6-135-39.2-206.7-24.5-3.9 1-9 2.6-11.9 2.6-9.7 0-15.8-7.7-15.8-15.8 0-10.3 6.1-15.2 13.6-16.8 81.9-18.1 165.6-16.5 237 26.2 6.1 3.9 9.7 7.4 9.7 16.5s-7.1 15.4-15.2 15.4zm26.9-65.6c-5.2 0-8.7-2.3-12.3-4.2-62.5-37-155.7-51.9-238.6-29.4-4.8 1.3-7.4 2.6-11.9 2.6-10.7 0-19.4-8.7-19.4-19.4s5.2-17.8 15.5-20.7c27.8-7.8 56.2-13.6 97.8-13.6 64.9 0 127.6 16.1 177 45.5 8.1 4.8 11.3 11 11.3 19.7-.1 10.8-8.5 19.5-19.4 19.5zm31-76.2c-5.2 0-8.4-1.3-12.9-3.9-71.2-42.5-198.5-52.7-280.9-29.7-3.6 1-8.1 2.6-12.9 2.6-13.2 0-23.3-10.3-23.3-23.6 0-13.6 8.4-21.3 17.4-23.9 35.2-10.3 74.6-15.2 117.5-15.2 73 0 149.5 15.2 205.4 47.8 7.8 4.5 12.9 10.7 12.9 22.6 0 13.6-11 23.3-23.2 23.3z"], + "squarespace": [512, 512, [], "f5be", "M186.12 343.34c-9.65 9.65-9.65 25.29 0 34.94 9.65 9.65 25.29 9.65 34.94 0L378.24 221.1c19.29-19.29 50.57-19.29 69.86 0s19.29 50.57 0 69.86L293.95 445.1c19.27 19.29 50.53 19.31 69.82.04l.04-.04 119.25-119.24c38.59-38.59 38.59-101.14 0-139.72-38.59-38.59-101.15-38.59-139.72 0l-157.22 157.2zm244.53-104.8c-9.65-9.65-25.29-9.65-34.93 0l-157.2 157.18c-19.27 19.29-50.53 19.31-69.82.05l-.05-.05c-9.64-9.64-25.27-9.65-34.92-.01l-.01.01c-9.65 9.64-9.66 25.28-.02 34.93l.02.02c38.58 38.57 101.14 38.57 139.72 0l157.2-157.2c9.65-9.65 9.65-25.29.01-34.93zm-261.99 87.33l157.18-157.18c9.64-9.65 9.64-25.29 0-34.94-9.64-9.64-25.27-9.64-34.91 0L133.72 290.93c-19.28 19.29-50.56 19.3-69.85.01l-.01-.01c-19.29-19.28-19.31-50.54-.03-69.84l.03-.03L218.03 66.89c-19.28-19.29-50.55-19.3-69.85-.02l-.02.02L28.93 186.14c-38.58 38.59-38.58 101.14 0 139.72 38.6 38.59 101.13 38.59 139.73.01zm-87.33-52.4c9.64 9.64 25.27 9.64 34.91 0l157.21-157.19c19.28-19.29 50.55-19.3 69.84-.02l.02.02c9.65 9.65 25.29 9.65 34.93 0 9.65-9.65 9.65-25.29 0-34.93-38.59-38.59-101.13-38.59-139.72 0L81.33 238.54c-9.65 9.64-9.65 25.28-.01 34.93h.01z"], + "stack-exchange": [448, 512, [], "f18d", "M17.7 332.3h412.7v22c0 37.7-29.3 68-65.3 68h-19L259.3 512v-89.7H83c-36 0-65.3-30.3-65.3-68v-22zm0-23.6h412.7v-85H17.7v85zm0-109.4h412.7v-85H17.7v85zM365 0H83C47 0 17.7 30.3 17.7 67.7V90h412.7V67.7C430.3 30.3 401 0 365 0z"], + "stack-overflow": [384, 512, [], "f16c", "M290.7 311L95 269.7 86.8 309l195.7 41zm51-87L188.2 95.7l-25.5 30.8 153.5 128.3zm-31.2 39.7L129.2 179l-16.7 36.5L293.7 300zM262 32l-32 24 119.3 160.3 32-24zm20.5 328h-200v39.7h200zm39.7 80H42.7V320h-40v160h359.5V320h-40z"], + "stackpath": [448, 512, [], "f842", "M244.6 232.4c0 8.5-4.26 20.49-21.34 20.49h-19.61v-41.47h19.61c17.13 0 21.34 12.36 21.34 20.98zM448 32v448H0V32zM151.3 287.84c0-21.24-12.12-34.54-46.72-44.85-20.57-7.41-26-10.91-26-18.63s7-14.61 20.41-14.61c14.09 0 20.79 8.45 20.79 18.35h30.7l.19-.57c.5-19.57-15.06-41.65-51.12-41.65-23.37 0-52.55 10.75-52.55 38.29 0 19.4 9.25 31.29 50.74 44.37 17.26 6.15 21.91 10.4 21.91 19.48 0 15.2-19.13 14.23-19.47 14.23-20.4 0-25.65-9.1-25.65-21.9h-30.8l-.18.56c-.68 31.32 28.38 45.22 56.63 45.22 29.98 0 51.12-13.55 51.12-38.29zm125.38-55.63c0-25.3-18.43-45.46-53.42-45.46h-51.78v138.18h32.17v-47.36h19.61c30.25 0 53.42-15.95 53.42-45.36zM297.94 325L347 186.78h-31.09L268 325zm106.52-138.22h-31.09L325.46 325h29.94z"], + "staylinked": [440, 512, [], "f3f5", "M382.7 292.5l2.7 2.7-170-167.3c-3.5-3.5-9.7-3.7-13.8-.5L144.3 171c-4.2 3.2-4.6 8.7-1.1 12.2l68.1 64.3c3.6 3.5 9.9 3.7 14 .5l.1-.1c4.1-3.2 10.4-3 14 .5l84 81.3c3.6 3.5 3.2 9-.9 12.2l-93.2 74c-4.2 3.3-10.5 3.1-14.2-.4L63.2 268c-3.5-3.5-9.7-3.7-13.9-.5L3.5 302.4c-4.2 3.2-4.7 8.7-1.2 12.2L211 510.7s7.4 6.8 17.3-.8l198-163.9c4-3.2 4.4-8.7.7-12.2zm54.5-83.4L226.7 2.5c-1.5-1.2-8-5.5-16.3 1.1L3.6 165.7c-4.2 3.2-4.8 8.7-1.2 12.2l42.3 41.7 171.7 165.1c3.7 3.5 10.1 3.7 14.3.4l50.2-38.8-.3-.3 7.7-6c4.2-3.2 4.6-8.7.9-12.2l-57.1-54.4c-3.6-3.5-10-3.7-14.2-.5l-.1.1c-4.2 3.2-10.5 3.1-14.2-.4L109 180.8c-3.6-3.5-3.1-8.9 1.1-12.2l92.2-71.5c4.1-3.2 10.3-3 13.9.5l160.4 159c3.7 3.5 10 3.7 14.1.5l45.8-35.8c4.1-3.2 4.4-8.7.7-12.2z"], + "steam": [496, 512, [], "f1b6", "M496 256c0 137-111.2 248-248.4 248-113.8 0-209.6-76.3-239-180.4l95.2 39.3c6.4 32.1 34.9 56.4 68.9 56.4 39.2 0 71.9-32.4 70.2-73.5l84.5-60.2c52.1 1.3 95.8-40.9 95.8-93.5 0-51.6-42-93.5-93.7-93.5s-93.7 42-93.7 93.5v1.2L176.6 279c-15.5-.9-30.7 3.4-43.5 12.1L0 236.1C10.2 108.4 117.1 8 247.6 8 384.8 8 496 119 496 256zM155.7 384.3l-30.5-12.6a52.79 52.79 0 0 0 27.2 25.8c26.9 11.2 57.8-1.6 69-28.4 5.4-13 5.5-27.3.1-40.3-5.4-13-15.5-23.2-28.5-28.6-12.9-5.4-26.7-5.2-38.9-.6l31.5 13c19.8 8.2 29.2 30.9 20.9 50.7-8.3 19.9-31 29.2-50.8 21zm173.8-129.9c-34.4 0-62.4-28-62.4-62.3s28-62.3 62.4-62.3 62.4 28 62.4 62.3-27.9 62.3-62.4 62.3zm.1-15.6c25.9 0 46.9-21 46.9-46.8 0-25.9-21-46.8-46.9-46.8s-46.9 21-46.9 46.8c.1 25.8 21.1 46.8 46.9 46.8z"], + "steam-square": [448, 512, [], "f1b7", "M185.2 356.5c7.7-18.5-1-39.7-19.6-47.4l-29.5-12.2c11.4-4.3 24.3-4.5 36.4.5 12.2 5.1 21.6 14.6 26.7 26.7 5 12.2 5 25.6-.1 37.7-10.5 25.1-39.4 37-64.6 26.5-11.6-4.8-20.4-13.6-25.4-24.2l28.5 11.8c18.6 7.8 39.9-.9 47.6-19.4zM400 32H48C21.5 32 0 53.5 0 80v160.7l116.6 48.1c12-8.2 26.2-12.1 40.7-11.3l55.4-80.2v-1.1c0-48.2 39.3-87.5 87.6-87.5s87.6 39.3 87.6 87.5c0 49.2-40.9 88.7-89.6 87.5l-79 56.3c1.6 38.5-29.1 68.8-65.7 68.8-31.8 0-58.5-22.7-64.5-52.7L0 319.2V432c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-99.7 222.5c-32.2 0-58.4-26.1-58.4-58.3s26.2-58.3 58.4-58.3 58.4 26.2 58.4 58.3-26.2 58.3-58.4 58.3zm.1-14.6c24.2 0 43.9-19.6 43.9-43.8 0-24.2-19.6-43.8-43.9-43.8-24.2 0-43.9 19.6-43.9 43.8 0 24.2 19.7 43.8 43.9 43.8z"], + "steam-symbol": [448, 512, [], "f3f6", "M395.5 177.5c0 33.8-27.5 61-61 61-33.8 0-61-27.3-61-61s27.3-61 61-61c33.5 0 61 27.2 61 61zm52.5.2c0 63-51 113.8-113.7 113.8L225 371.3c-4 43-40.5 76.8-84.5 76.8-40.5 0-74.7-28.8-83-67L0 358V250.7L97.2 290c15.1-9.2 32.2-13.3 52-11.5l71-101.7c.5-62.3 51.5-112.8 114-112.8C397 64 448 115 448 177.7zM203 363c0-34.7-27.8-62.5-62.5-62.5-4.5 0-9 .5-13.5 1.5l26 10.5c25.5 10.2 38 39 27.7 64.5-10.2 25.5-39.2 38-64.7 27.5-10.2-4-20.5-8.3-30.7-12.2 10.5 19.7 31.2 33.2 55.2 33.2 34.7 0 62.5-27.8 62.5-62.5zm207.5-185.3c0-42-34.3-76.2-76.2-76.2-42.3 0-76.5 34.2-76.5 76.2 0 42.2 34.3 76.2 76.5 76.2 41.9.1 76.2-33.9 76.2-76.2z"], + "sticker-mule": [576, 512, [], "f3f7", "M561.7 199.6c-1.3.3.3 0 0 0zm-6.2-77.4c-7.7-22.3-5.1-7.2-13.4-36.9-1.6-6.5-3.6-14.5-6.2-20-4.4-8.7-4.6-7.5-4.6-9.5 0-5.3 30.7-45.3 19-46.9-5.7-.6-12.2 11.6-20.6 17-8.6 4.2-8 5-10.3 5-2.6 0-5.7-3-6.2-5-2-5.7 1.9-25.9-3.6-25.9-3.6 0-12.3 24.8-17 25.8-5.2 1.3-27.9-11.4-75.1 18-25.3 13.2-86.9 65.2-87 65.3-6.7 4.7-20 4.7-35.5 16-44.4 30.1-109.6 9.4-110.7 9-110.6-26.8-128-15.2-159 11.5-20.8 17.9-23.7 36.5-24.2 38.9-4.2 20.4 5.2 48.3 6.7 64.3 1.8 19.3-2.7 17.7 7.7 98.3.5 1 4.1 0 5.1 1.5 0 8.4-3.8 12.1-4.1 13-1.5 4.5-1.5 10.5 0 16 2.3 8.2 8.2 37.2 8.2 46.9 0 41.8.4 44 2.6 49.4 3.9 10 12.5 9.1 17 12 3.1 3.5-.5 8.5 1 12.5.5 2 3.6 4 6.2 5 9.2 3.6 27 .3 29.9-2.5 1.6-1.5.5-4.5 3.1-5 5.1 0 10.8-.5 14.4-2.5 5.1-2.5 4.1-6 1.5-10.5-.4-.8-7-13.3-9.8-16-2.1-2-5.1-3-7.2-4.5-5.8-4.9-10.3-19.4-10.3-19.5-4.6-19.4-10.3-46.3-4.1-66.8 4.6-17.2 39.5-87.7 39.6-87.8 4.1-6.5 17-11.5 27.3-7 6 1.9 19.3 22 65.4 30.9 47.9 8.7 97.4-2 112.2-2 2.8 2-1.9 13-.5 38.9 0 26.4-.4 13.7-4.1 29.9-2.2 9.7 3.4 23.2-1.5 46.9-1.4 9.8-9.9 32.7-8.2 43.4.5 1 1 2 1.5 3.5.5 4.5 1.5 8.5 4.6 10 7.3 3.6 12-3.5 9.8 11.5-.7 3.1-2.6 12 1.5 15 4.4 3.7 30.6 3.4 36.5.5 2.6-1.5 1.6-4.5 6.4-7.4 1.9-.9 11.3-.4 11.3-6.5.3-1.8-9.2-19.9-9.3-20-2.6-3.5-9.2-4.5-11.3-8-6.9-10.1-1.7-52.6.5-59.4 3-11 5.6-22.4 8.7-32.4 11-42.5 10.3-50.6 16.5-68.3.8-1.8 6.4-23.1 10.3-29.9 9.3-17 21.7-32.4 33.5-47.4 18-22.9 34-46.9 52-69.8 6.1-7 8.2-13.7 18-8 10.8 5.7 21.6 7 31.9 17 14.6 12.8 10.2 18.2 11.8 22.9 1.5 5 7.7 10.5 14.9 9.5 10.4-2 13-2.5 13.4-2.5 2.6-.5 5.7-5 7.2-8 3.1-5.5 7.2-9 7.2-16.5 0-7.7-.4-2.8-20.6-52.9z"], + "strava": [384, 512, [], "f428", "M158.4 0L7 292h89.2l62.2-116.1L220.1 292h88.5zm150.2 292l-43.9 88.2-44.6-88.2h-67.6l112.2 220 111.5-220z"], + "stripe": [640, 512, [], "f429", "M165 144.7l-43.3 9.2-.2 142.4c0 26.3 19.8 43.3 46.1 43.3 14.6 0 25.3-2.7 31.2-5.9v-33.8c-5.7 2.3-33.7 10.5-33.7-15.7V221h33.7v-37.8h-33.7zm89.1 51.6l-2.7-13.1H213v153.2h44.3V233.3c10.5-13.8 28.2-11.1 33.9-9.3v-40.8c-6-2.1-26.7-6-37.1 13.1zm92.3-72.3l-44.6 9.5v36.2l44.6-9.5zM44.9 228.3c0-6.9 5.8-9.6 15.1-9.7 13.5 0 30.7 4.1 44.2 11.4v-41.8c-14.7-5.8-29.4-8.1-44.1-8.1-36 0-60 18.8-60 50.2 0 49.2 67.5 41.2 67.5 62.4 0 8.2-7.1 10.9-17 10.9-14.7 0-33.7-6.1-48.6-14.2v40c16.5 7.1 33.2 10.1 48.5 10.1 36.9 0 62.3-15.8 62.3-47.8 0-52.9-67.9-43.4-67.9-63.4zM640 261.6c0-45.5-22-81.4-64.2-81.4s-67.9 35.9-67.9 81.1c0 53.5 30.3 78.2 73.5 78.2 21.2 0 37.1-4.8 49.2-11.5v-33.4c-12.1 6.1-26 9.8-43.6 9.8-17.3 0-32.5-6.1-34.5-26.9h86.9c.2-2.3.6-11.6.6-15.9zm-87.9-16.8c0-20 12.3-28.4 23.4-28.4 10.9 0 22.5 8.4 22.5 28.4zm-112.9-64.6c-17.4 0-28.6 8.2-34.8 13.9l-2.3-11H363v204.8l44.4-9.4.1-50.2c6.4 4.7 15.9 11.2 31.4 11.2 31.8 0 60.8-23.2 60.8-79.6.1-51.6-29.3-79.7-60.5-79.7zm-10.6 122.5c-10.4 0-16.6-3.8-20.9-8.4l-.3-66c4.6-5.1 11-8.8 21.2-8.8 16.2 0 27.4 18.2 27.4 41.4.1 23.9-10.9 41.8-27.4 41.8zm-126.7 33.7h44.6V183.2h-44.6z"], + "stripe-s": [384, 512, [], "f42a", "M155.3 154.6c0-22.3 18.6-30.9 48.4-30.9 43.4 0 98.5 13.3 141.9 36.7V26.1C298.3 7.2 251.1 0 203.8 0 88.1 0 11 60.4 11 161.4c0 157.9 216.8 132.3 216.8 200.4 0 26.4-22.9 34.9-54.7 34.9-47.2 0-108.2-19.5-156.1-45.5v128.5a396.09 396.09 0 0 0 156 32.4c118.6 0 200.3-51 200.3-153.6 0-170.2-218-139.7-218-203.9z"], + "studiovinari": [512, 512, [], "f3f8", "M480.3 187.7l4.2 28v28l-25.1 44.1-39.8 78.4-56.1 67.5-79.1 37.8-17.7 24.5-7.7 12-9.6 4s17.3-63.6 19.4-63.6c2.1 0 20.3.7 20.3.7l66.7-38.6-92.5 26.1-55.9 36.8-22.8 28-6.6 1.4 20.8-73.6 6.9-5.5 20.7 12.9 88.3-45.2 56.8-51.5 14.8-68.4-125.4 23.3 15.2-18.2-173.4-53.3 81.9-10.5-166-122.9L133.5 108 32.2 0l252.9 126.6-31.5-38L378 163 234.7 64l18.7 38.4-49.6-18.1L158.3 0l194.6 122L310 66.2l108 96.4 12-8.9-21-16.4 4.2-37.8L451 89.1l29.2 24.7 11.5 4.2-7 6.2 8.5 12-13.1 7.4-10.3 20.2 10.5 23.9z"], + "stumbleupon": [512, 512, [], "f1a4", "M502.9 266v69.7c0 62.1-50.3 112.4-112.4 112.4-61.8 0-112.4-49.8-112.4-111.3v-70.2l34.3 16 51.1-15.2V338c0 14.7 12 26.5 26.7 26.5S417 352.7 417 338v-72h85.9zm-224.7-58.2l34.3 16 51.1-15.2V173c0-60.5-51.1-109-112.1-109-60.8 0-112.1 48.2-112.1 108.2v162.4c0 14.9-12 26.7-26.7 26.7S86 349.5 86 334.6V266H0v69.7C0 397.7 50.3 448 112.4 448c61.6 0 112.4-49.5 112.4-110.8V176.9c0-14.7 12-26.7 26.7-26.7s26.7 12 26.7 26.7v30.9z"], + "stumbleupon-circle": [496, 512, [], "f1a3", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 177.5c-9.8 0-17.8 8-17.8 17.8v106.9c0 40.9-33.9 73.9-74.9 73.9-41.4 0-74.9-33.5-74.9-74.9v-46.5h57.3v45.8c0 10 8 17.8 17.8 17.8s17.8-7.9 17.8-17.8V200.1c0-40 34.2-72.1 74.7-72.1 40.7 0 74.7 32.3 74.7 72.6v23.7l-34.1 10.1-22.9-10.7v-20.6c.1-9.6-7.9-17.6-17.7-17.6zm167.6 123.6c0 41.4-33.5 74.9-74.9 74.9-41.2 0-74.9-33.2-74.9-74.2V263l22.9 10.7 34.1-10.1v47.1c0 9.8 8 17.6 17.8 17.6s17.8-7.9 17.8-17.6v-48h57.3c-.1 45.9-.1 46.4-.1 46.4z"], + "superpowers": [448, 512, [], "f2dd", "M448 32c-83.3 11-166.8 22-250 33-92 12.5-163.3 86.7-169 180-3.3 55.5 18 109.5 57.8 148.2L0 480c83.3-11 166.5-22 249.8-33 91.8-12.5 163.3-86.8 168.7-179.8 3.5-55.5-18-109.5-57.7-148.2L448 32zm-79.7 232.3c-4.2 79.5-74 139.2-152.8 134.5-79.5-4.7-140.7-71-136.3-151 4.5-79.2 74.3-139.3 153-134.5 79.3 4.7 140.5 71 136.1 151z"], + "supple": [640, 512, [], "f3f9", "M640 262.5c0 64.1-109 116.1-243.5 116.1-24.8 0-48.6-1.8-71.1-5 7.7.4 15.5.6 23.4.6 134.5 0 243.5-56.9 243.5-127.1 0-29.4-19.1-56.4-51.2-78 60 21.1 98.9 55.1 98.9 93.4zM47.7 227.9c-.1-70.2 108.8-127.3 243.3-127.6 7.9 0 15.6.2 23.3.5-22.5-3.2-46.3-4.9-71-4.9C108.8 96.3-.1 148.5 0 212.6c.1 38.3 39.1 72.3 99.3 93.3-32.3-21.5-51.5-48.6-51.6-78zm60.2 39.9s10.5 13.2 29.3 13.2c17.9 0 28.4-11.5 28.4-25.1 0-28-40.2-25.1-40.2-39.7 0-5.4 5.3-9.1 12.5-9.1 5.7 0 11.3 2.6 11.3 6.6v3.9h14.2v-7.9c0-12.1-15.4-16.8-25.4-16.8-16.5 0-28.5 10.2-28.5 24.1 0 26.6 40.2 25.4 40.2 39.9 0 6.6-5.8 10.1-12.3 10.1-11.9 0-20.7-10.1-20.7-10.1l-8.8 10.9zm120.8-73.6v54.4c0 11.3-7.1 17.8-17.8 17.8-10.7 0-17.8-6.5-17.8-17.7v-54.5h-15.8v55c0 18.9 13.4 31.9 33.7 31.9 20.1 0 33.4-13 33.4-31.9v-55h-15.7zm34.4 85.4h15.8v-29.5h15.5c16 0 27.2-11.5 27.2-28.1s-11.2-27.8-27.2-27.8h-39.1v13.4h7.8v72zm15.8-43v-29.1h12.9c8.7 0 13.7 5.7 13.7 14.4 0 8.9-5.1 14.7-14 14.7h-12.6zm57 43h15.8v-29.5h15.5c16 0 27.2-11.5 27.2-28.1s-11.2-27.8-27.2-27.8h-39.1v13.4h7.8v72zm15.7-43v-29.1h12.9c8.7 0 13.7 5.7 13.7 14.4 0 8.9-5 14.7-14 14.7h-12.6zm57.1 34.8c0 5.8 2.4 8.2 8.2 8.2h37.6c5.8 0 8.2-2.4 8.2-8.2v-13h-14.3v5.2c0 1.7-1 2.6-2.6 2.6h-18.6c-1.7 0-2.6-1-2.6-2.6v-61.2c0-5.7-2.4-8.2-8.2-8.2H401v13.4h5.2c1.7 0 2.6 1 2.6 2.6v61.2zm63.4 0c0 5.8 2.4 8.2 8.2 8.2H519c5.7 0 8.2-2.4 8.2-8.2v-13h-14.3v5.2c0 1.7-1 2.6-2.6 2.6h-19.7c-1.7 0-2.6-1-2.6-2.6v-20.3h27.7v-13.4H488v-22.4h19.2c1.7 0 2.6 1 2.6 2.6v5.2H524v-13c0-5.7-2.5-8.2-8.2-8.2h-51.6v13.4h7.8v63.9zm58.9-76v5.9h1.6v-5.9h2.7v-1.2h-7v1.2h2.7zm5.7-1.2v7.1h1.5v-5.7l2.3 5.7h1.3l2.3-5.7v5.7h1.5v-7.1h-2.3l-2.1 5.1-2.1-5.1h-2.4z"], + "suse": [640, 512, [], "f7d6", "M471.08 102.66s-.3 18.3-.3 20.3c-9.1-3-74.4-24.1-135.7-26.3-51.9-1.8-122.8-4.3-223 57.3-19.4 12.4-73.9 46.1-99.6 109.7C7 277-.12 307 7 335.06a111 111 0 0 0 16.5 35.7c17.4 25 46.6 41.6 78.1 44.4 44.4 3.9 78.1-16 90-53.3 8.2-25.8 0-63.6-31.5-82.9-25.6-15.7-53.3-12.1-69.2-1.6-13.9 9.2-21.8 23.5-21.6 39.2.3 27.8 24.3 42.6 41.5 42.6a49 49 0 0 0 15.8-2.7c6.5-1.8 13.3-6.5 13.3-14.9 0-12.1-11.6-14.8-16.8-13.9-2.9.5-4.5 2-11.8 2.4-2-.2-12-3.1-12-14V316c.2-12.3 13.2-18 25.5-16.9 32.3 2.8 47.7 40.7 28.5 65.7-18.3 23.7-76.6 23.2-99.7-20.4-26-49.2 12.7-111.2 87-98.4 33.2 5.7 83.6 35.5 102.4 104.3h45.9c-5.7-17.6-8.9-68.3 42.7-68.3 56.7 0 63.9 39.9 79.8 68.3H460c-12.8-18.3-21.7-38.7-18.9-55.8 5.6-33.8 39.7-18.4 82.4-17.4 66.5.4 102.1-27 103.1-28 3.7-3.1 6.5-15.8 7-17.7 1.3-5.1-3.2-2.4-3.2-2.4-8.7 5.2-30.5 15.2-50.9 15.6-25.3.5-76.2-25.4-81.6-28.2-.3-.4.1 1.2-11-25.5 88.4 58.3 118.3 40.5 145.2 21.7.8-.6 4.3-2.9 3.6-5.7-13.8-48.1-22.4-62.7-34.5-69.6-37-21.6-125-34.7-129.2-35.3.1-.1-.9-.3-.9.7zm60.4 72.8a37.54 37.54 0 0 1 38.9-36.3c33.4 1.2 48.8 42.3 24.4 65.2-24.2 22.7-64.4 4.6-63.3-28.9zm38.6-25.3a26.27 26.27 0 1 0 25.4 27.2 26.19 26.19 0 0 0-25.4-27.2zm4.3 28.8c-15.4 0-15.4-15.6 0-15.6s15.4 15.64 0 15.64z"], + "swift": [448, 512, [], "f8e1", "M448 156.09c0-4.51-.08-9-.2-13.52a196.31 196.31 0 0 0-2.58-29.42 99.62 99.62 0 0 0-9.22-28A94.08 94.08 0 0 0 394.84 44a99.17 99.17 0 0 0-28-9.22 195 195 0 0 0-29.43-2.59c-4.51-.12-9-.17-13.52-.2H124.14c-4.51 0-9 .08-13.52.2-2.45.07-4.91.15-7.37.27a171.68 171.68 0 0 0-22.06 2.32 103.06 103.06 0 0 0-21.21 6.1q-3.46 1.45-6.81 3.12a94.66 94.66 0 0 0-18.39 12.32c-1.88 1.61-3.69 3.28-5.43 5A93.86 93.86 0 0 0 12 85.17a99.45 99.45 0 0 0-9.22 28 196.31 196.31 0 0 0-2.54 29.4c-.13 4.51-.18 9-.21 13.52v199.83c0 4.51.08 9 .21 13.51a196.08 196.08 0 0 0 2.58 29.42 99.3 99.3 0 0 0 9.22 28A94.31 94.31 0 0 0 53.17 468a99.47 99.47 0 0 0 28 9.21 195 195 0 0 0 29.43 2.59c4.5.12 9 .17 13.52.2H323.91c4.51 0 9-.08 13.52-.2a196.59 196.59 0 0 0 29.44-2.59 99.57 99.57 0 0 0 28-9.21A94.22 94.22 0 0 0 436 426.84a99.3 99.3 0 0 0 9.22-28 194.79 194.79 0 0 0 2.59-29.42c.12-4.5.17-9 .2-13.51V172.14c-.01-5.35-.01-10.7-.01-16.05zm-69.88 241c-20-38.93-57.23-29.27-76.31-19.47-1.72 1-3.48 2-5.25 3l-.42.25c-39.5 21-92.53 22.54-145.85-.38A234.64 234.64 0 0 1 45 290.12a230.63 230.63 0 0 0 39.17 23.37c56.36 26.4 113 24.49 153 0-57-43.85-104.6-101-141.09-147.22a197.09 197.09 0 0 1-18.78-25.9c43.7 40 112.7 90.22 137.48 104.12-52.57-55.49-98.89-123.94-96.72-121.74 82.79 83.42 159.18 130.59 159.18 130.59 2.88 1.58 5 2.85 6.73 4a127.44 127.44 0 0 0 4.16-12.47c13.22-48.33-1.66-103.58-35.31-149.2C329.61 141.75 375 229.34 356.4 303.42c-.44 1.73-.95 3.4-1.44 5.09 38.52 47.4 28.04 98.17 23.13 88.59z"], + "symfony": [512, 512, [], "f83d", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm133.74 143.54c-11.47.41-19.4-6.45-19.77-16.87-.27-9.18 6.68-13.44 6.53-18.85-.23-6.55-10.16-6.82-12.87-6.67-39.78 1.29-48.59 57-58.89 113.85 21.43 3.15 36.65-.72 45.14-6.22 12-7.75-3.34-15.72-1.42-24.56 4-18.16 32.55-19 32 5.3-.36 17.86-25.92 41.81-77.6 35.7-10.76 59.52-18.35 115-58.2 161.72-29 34.46-58.4 39.82-71.58 40.26-24.65.85-41-12.31-41.58-29.84-.56-17 14.45-26.26 24.31-26.59 21.89-.75 30.12 25.67 14.88 34-12.09 9.71.11 12.61 2.05 12.55 10.42-.36 17.34-5.51 22.18-9 24-20 33.24-54.86 45.35-118.35 8.19-49.66 17-78 18.23-82-16.93-12.75-27.08-28.55-49.85-34.72-15.61-4.23-25.12-.63-31.81 7.83-7.92 10-5.29 23 2.37 30.7l12.63 14c15.51 17.93 24 31.87 20.8 50.62-5.06 29.93-40.72 52.9-82.88 39.94-36-11.11-42.7-36.56-38.38-50.62 7.51-24.15 42.36-11.72 34.62 13.6-2.79 8.6-4.92 8.68-6.28 13.07-4.56 14.77 41.85 28.4 51-1.39 4.47-14.52-5.3-21.71-22.25-39.85-28.47-31.75-16-65.49 2.95-79.67C204.23 140.13 251.94 197 262 205.29c37.17-109 100.53-105.46 102.43-105.53 25.16-.81 44.19 10.59 44.83 28.65.25 7.69-4.17 22.59-19.52 23.13z"], + "teamspeak": [512, 512, [], "f4f9", "M244.2 346.79c2.4-12.3-12-30-32.4-48.7-20.9-19.2-48.2-39.1-63.4-46.6-21.7-12-41.7-1.8-46.3 22.7-5 26.2 0 51.4 14.5 73.9 10.2 15.5 25.4 22.7 43.4 24 11.6.6 52.5 2.2 61.7-1 11.9-4.3 20.1-11.8 22.5-24.3zm205 20.8a5.22 5.22 0 0 0-8.3 2.4c-8 25.4-44.7 112.5-172.1 121.5-149.7 10.5 80.3 43.6 145.4-6.4 22.7-17.4 47.6-35 46.6-85.4-.4-10.1-4.9-26.69-11.6-32.1zm62-122.4c-.3-18.9-8.6-33.4-26-42.2-2.9-1.3-5-2.7-5.9-6.4A222.64 222.64 0 0 0 438.9 103c-1.1-1.5-3.5-3.2-2.2-5 8.5-11.5-.3-18-7-24.4Q321.4-31.11 177.4 13.09c-40.1 12.3-73.9 35.6-102 67.4-4 4.3-6.7 9.1-3 14.5 3 4 1.3 6.2-1 9.3C51.6 132 38.2 162.59 32.1 196c-.7 4.3-2.9 6-6.4 7.8-14.2 7-22.5 18.5-24.9 34L0 264.29v20.9c0 30.8 21 50.4 51.8 49 7.7-.3 11.7-4.3 12-11.5 2-77.5-2.4-95.4 3.7-125.8C92.1 72.39 234.3 5 345.3 65.39 411.4 102 445.7 159 447.6 234.79c.8 28.2 0 56.5 0 84.6 0 7 2.2 12.5 9.4 14.2 24.1 5 49.2-12 53.2-36.7 2.9-17.1 1-34.5 1-51.7zm-159.6 131.5c36.5 2.8 59.3-28.5 58.4-60.5-2.1-45.2-66.2-16.5-87.8-8-73.2 28.1-45 54.9-22.2 60.8z"], + "telegram": [496, 512, [], "f2c6", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm121.8 169.9l-40.7 191.8c-3 13.6-11.1 16.9-22.4 10.5l-62-45.7-29.9 28.8c-3.3 3.3-6.1 6.1-12.5 6.1l4.4-63.1 114.9-103.8c5-4.4-1.1-6.9-7.7-2.5l-142 89.4-61.2-19.1c-13.3-4.2-13.6-13.3 2.8-19.7l239.1-92.2c11.1-4 20.8 2.7 17.2 19.5z"], + "telegram-plane": [448, 512, [], "f3fe", "M446.7 98.6l-67.6 318.8c-5.1 22.5-18.4 28.1-37.3 17.5l-103-75.9-49.7 47.8c-5.5 5.5-10.1 10.1-20.7 10.1l7.4-104.9 190.9-172.5c8.3-7.4-1.8-11.5-12.9-4.1L117.8 284 16.2 252.2c-22.1-6.9-22.5-22.1 4.6-32.7L418.2 66.4c18.4-6.9 34.5 4.1 28.5 32.2z"], + "tencent-weibo": [384, 512, [], "f1d5", "M72.3 495.8c1.4 19.9-27.6 22.2-29.7 2.9C31 368.8 73.7 259.2 144 185.5c-15.6-34 9.2-77.1 50.6-77.1 30.3 0 55.1 24.6 55.1 55.1 0 44-49.5 70.8-86.9 45.1-65.7 71.3-101.4 169.8-90.5 287.2zM192 .1C66.1.1-12.3 134.3 43.7 242.4 52.4 259.8 79 246.9 70 229 23.7 136.4 91 29.8 192 29.8c75.4 0 136.9 61.4 136.9 136.9 0 90.8-86.9 153.9-167.7 133.1-19.1-4.1-25.6 24.4-6.6 29.1 110.7 23.2 204-60 204-162.3C358.6 74.7 284 .1 192 .1z"], + "the-red-yeti": [512, 512, [], "f69d", "M488.23 241.7l20.7 7.1c-9.6-23.9-23.9-37-31.7-44.8l7.1-18.2c.2 0 12.3-27.8-2.5-30.7-.6-11.3-6.6-27-18.4-27-7.6-10.6-17.7-12.3-30.7-5.9a122.2 122.2 0 0 0-25.3 16.5c-5.3-6.4-3 .4-3-29.8-37.1-24.3-45.4-11.7-74.8 3l.5.5a239.36 239.36 0 0 0-68.4-13.3c-5.5-8.7-18.6-19.1-25.1-25.1l24.8 7.1c-5.5-5.5-26.8-12.9-34.2-15.2 18.2-4.1 29.8-20.8 42.5-33-34.9-10.1-67.9-5.9-97.9 11.8l12-44.2L182 0c-31.6 24.2-33 41.9-33.7 45.5-.9-2.4-6.3-19.6-15.2-27a35.12 35.12 0 0 0-.5 25.3c3 8.4 5.9 14.8 8.4 18.9-16-3.3-28.3-4.9-49.2 0h-3.7l33 14.3a194.26 194.26 0 0 0-46.7 67.4l-1.7 8.4 1.7 1.7 7.6-4.7c-3.3 11.6-5.3 19.4-6.6 25.8a200.18 200.18 0 0 0-27.8 40.3c-15 1-31.8 10.8-40.3 14.3l3 3.4 28.8 1c-.5 1-.7 2.2-1.2 3.2-7.3 6.4-39.8 37.7-33 80.7l20.2-22.4c.5 1.7.7 3.4 1.2 5.2 0 25.5.4 89.6 64.9 150.5 43.6 40 96 60.2 157.5 60.2 121.7 0 223-87.3 223-211.5 6.8-9.7-1.2 3 16.7-25.1l13 14.3 2.5-.5A181.84 181.84 0 0 0 495 255a44.74 44.74 0 0 0-6.8-13.3zM398 111.2l-.5 21.9c5.5 18.1 16.9 17.2 22.4 17.2l-3.4-4.7 22.4-5.4a242.44 242.44 0 0 1-27 0c12.8-2.1 33.3-29 43-11.3 3.4 7.6 6.4 17.2 9.3 27.8l1.7-5.9a56.38 56.38 0 0 1-1.7-15.2c5.4.5 8.8 3.4 9.3 10.1.5 6.4 1.7 14.8 3.4 25.3l4.7-11.3c4.6 0 4.5-3.6-2.5 20.7-20.9-8.7-35.1-8.4-46.5-8.4l18.2-16c-25.3 8.2-33 10.8-54.8 20.9-1.1-5.4-5-13.5-16-19.9-3.2 3.8-2.8.9-.7 14.8h-2.5a62.32 62.32 0 0 0-8.4-23.1l4.2-3.4c8.4-7.1 11.8-14.3 10.6-21.9-.5-6.4-5.4-13.5-13.5-20.7 5.6-3.4 15.2-.4 28.3 8.5zm-39.6-10.1c2.7 1.9 11.4 5.4 18.9 17.2 4.2 8.4 4 9.8 3.4 11.1-.5 2.4-.5 4.3-3 7.1-1.7 2.5-5.4 4.7-11.8 7.6-7.6-13-16.5-23.6-27.8-31.2zM91 143.1l1.2-1.7c1.2-2.9 4.2-7.6 9.3-15.2l2.5-3.4-13 12.3 5.4-4.7-10.1 9.3-4.2 1.2c12.3-24.1 23.1-41.3 32.5-50.2 9.3-9.3 16-16 20.2-19.4l-6.4 1.2c-11.3-4.2-19.4-7.1-24.8-8.4 2.5-.5 3.7-.5 3.2-.5 10.3 0 17.5.5 20.9 1.2a52.35 52.35 0 0 0 16 2.5l.5-1.7-8.4-35.8 13.5 29a42.89 42.89 0 0 0 5.9-14.3c1.7-6.4 5.4-13 10.1-19.4s7.6-10.6 9.3-11.3a234.68 234.68 0 0 0-6.4 25.3l-1.7 7.1-.5 4.7 2.5 2.5C190.4 39.9 214 34 239.8 34.5l21.1.5c-11.8 13.5-27.8 21.9-48.5 24.8a201.26 201.26 0 0 1-23.4 2.9l-.2-.5-2.5-1.2a20.75 20.75 0 0 0-14 2c-2.5-.2-4.9-.5-7.1-.7l-2.5 1.7.5 1.2c2 .2 3.9.5 6.2.7l-2 3.4 3.4-.5-10.6 11.3c-4.2 3-5.4 6.4-4.2 9.3l5.4-3.4h1.2a39.4 39.4 0 0 1 25.3-15.2v-3c6.4.5 13 1 19.4 1.2 6.4 0 8.4.5 5.4 1.2a189.6 189.6 0 0 1 20.7 13.5c13.5 10.1 23.6 21.9 30 35.4 8.8 18.2 13.5 37.1 13.5 56.6a141.13 141.13 0 0 1-3 28.3 209.91 209.91 0 0 1-16 46l2.5.5c18.2-19.7 41.9-16 49.2-16l-6.4 5.9 22.4 17.7-1.7 30.7c-5.4-12.3-16.5-21.1-33-27.8 16.5 14.8 23.6 21.1 21.9 20.2-4.8-2.8-3.5-1.9-10.8-3.7 4.1 4.1 17.5 18.8 18.2 20.7l.2.2-.2.2c0 1.8 1.6-1.2-14 22.9-75.2-15.3-106.27-42.7-141.2-63.2l11.8 1.2c-11.8-18.5-15.6-17.7-38.4-26.1L149 225c-8.8-3-18.2-3-28.3.5l7.6-10.6-1.2-1.7c-14.9 4.3-19.8 9.2-22.6 11.3-1.1-5.5-2.8-12.4-12.3-28.8l-1.2 27-13.2-5c1.5-25.2 5.4-50.5 13.2-74.6zm276.5 330c-49.9 25-56.1 22.4-59 23.9-29.8-11.8-50.9-31.7-63.5-58.8l30 16.5c-9.8-9.3-18.3-16.5-38.4-44.3l11.8 23.1-17.7-7.6c14.2 21.1 23.5 51.7 66.6 73.5-120.8 24.2-199-72.1-200.9-74.3a262.57 262.57 0 0 0 35.4 24.8c3.4 1.7 7.1 2.5 10.1 1.2l-16-20.7c9.2 4.2 9.5 4.5 69.1 29-42.5-20.7-73.8-40.8-93.2-60.2-.5 6.4-1.2 10.1-1.2 10.1a80.25 80.25 0 0 1 20.7 26.6c-39-18.9-57.6-47.6-71.3-82.6 49.9 55.1 118.9 37.5 120.5 37.1 34.8 16.4 69.9 23.6 113.9 10.6 3.3 0 20.3 17 25.3 39.1l4.2-3-2.5-23.6c9 9 24.9 22.6 34.4 13-15.6-5.3-23.5-9.5-29.5-31.7 4.6 4.2 7.6 9 27.8 15l1.2-1.2-10.5-14.2c11.7-4.8-3.5 1 32-10.8 4.3 34.3 9 49.2.7 89.5zm115.3-214.4l-2.5.5 3 9.3c-3.5 5.9-23.7 44.3-71.6 79.7-39.5 29.8-76.6 39.1-80.9 40.3l-7.6-7.1-1.2 3 14.3 16-7.1-4.7 3.4 4.2h-1.2l-21.9-13.5 9.3 26.6-19-27.9-1.2 2.5 7.6 29c-6.1-8.2-21-32.6-56.8-39.6l32.5 21.2a214.82 214.82 0 0 1-93.2-6.4c-4.2-1.2-8.9-2.5-13.5-4.2l1.2-3-44.8-22.4 26.1 22.4c-57.7 9.1-113-25.4-126.4-83.4l-2.5-16.4-22.27 22.3c19.5-57.5 25.6-57.9 51.4-70.1-9.1-5.3-1.6-3.3-38.4-9.3 15.8-5.8 33-15.4 73 5.2a18.5 18.5 0 0 1 3.7-1.7c.6-3.2.4-.8 1-11.8 3.9 10 3.6 8.7 3 9.3l1.7.5c12.7-6.5 8.9-4.5 17-8.9l-5.4 13.5 22.3-5.8-8.4 8.4 2.5 2.5c4.5-1.8 30.3 3.4 40.8 16l-23.6-2.5c39.4 23 51.5 54 55.8 69.6l1.7-1.2c-2.8-22.3-12.4-33.9-16-40.1 4.2 5 39.2 34.6 110.4 46-11.3-.5-23.1 5.4-34.9 18.9l46.7-20.2-9.3 21.9c7.6-10.1 14.8-23.6 21.2-39.6v-.5l1.2-3-1.2 16c13.5-41.8 25.3-78.5 35.4-109.7l13.5-27.8v-2l-5.4-4.2h10.1l5.9 4.2 2.5-1.2-3.4-16 12.3 18.9 41.8-20.2-14.8 13 .5 2.9 17.7-.5a184 184 0 0 1 33 4.2l-23.6 2.5-1.2 3 26.6 23.1a254.21 254.21 0 0 1 27 32c-11.2-3.3-10.3-3.4-21.2-3.4l12.3 32.5zm-6.1-71.3l-3.9 13-14.3-11.8zm-254.8 7.1c1.7 10.6 4.7 17.7 8.8 21.9-9.3 6.6-27.5 13.9-46.5 16l.5 1.2a50.22 50.22 0 0 0 24.8-2.5l-7.1 13c4.2-1.7 10.1-7.1 17.7-14.8 11.9-5.5 12.7-5.1 20.2-16-12.7-6.4-15.7-13.7-18.4-18.8zm3.7-102.3c-6.4-3.4-10.6 3-12.3 18.9s2.5 29.5 11.8 39.6 18.2 10.6 26.1 3 3.4-23.6-11.3-47.7a39.57 39.57 0 0 0-14.27-13.8zm-4.7 46.3c5.4 2.2 10.5 1.9 12.3-10.6v-4.7l-1.2.5c-4.3-3.1-2.5-4.5-1.7-6.2l.5-.5c-.9-1.2-5-8.1-12.5 4.7-.5-13.5.5-21.9 3-24.8 1.2-2.5 4.7-1.2 11.3 4.2 6.4 5.4 11.3 16 15.2 32.5 6.5 28-19.8 26.2-26.9 4.9zm-45-5.5c1.6.3 9.3-1.1 9.3-14.8h-.5c-5.4-1.1-2.2-5.5-.7-5.9-1.7-3-3.4-4.2-5.4-4.7-8.1 0-11.6 12.7-8.1 21.2a7.51 7.51 0 0 0 5.43 4.2zM216 82.9l-2.5.5.5 3a48.94 48.94 0 0 1 26.1 5.9c-2.5-5.5-10-14.3-28.3-14.3l.5 2.5zm-71.8 49.4c21.7 16.8 16.5 21.4 46.5 23.6l-2.9-4.7a42.67 42.67 0 0 0 14.8-28.3c1.7-16-1.2-29.5-8.8-41.3l13-7.6a2.26 2.26 0 0 0-.5-1.7 14.21 14.21 0 0 0-13.5 1.7c-12.7 6.7-28 20.9-29 22.4-1.7 1.7-3.4 5.9-5.4 13.5a99.61 99.61 0 0 0-2.9 23.6c-4.7-8-10.5-6.4-19.9-5.9l7.1 7.6c-16.5 0-23.3 15.4-23.6 16 6.8 0 4.6-7.6 30-12.3-4.3-6.3-3.3-5-4.9-6.6zm18.7-18.7c1.2-7.6 3.4-13 6.4-17.2 5.4-6.4 10.6-10.1 16-11.8 4.2-1.7 7.1 1.2 10.1 9.3a72.14 72.14 0 0 1 3 25.3c-.5 9.3-3.4 17.2-8.4 23.1-2.9 3.4-5.4 5.9-6.4 7.6a39.21 39.21 0 0 1-11.3-.5l-7.1-3.4-5.4-6.4c.8-10 1.3-18.8 3.1-26zm42 56.1c-34.8 14.4-34.7 14-36.1 14.3-20.8 4.7-19-24.4-18.9-24.8l5.9-1.2-.5-2.5c-20.2-2.6-31 4.2-32.5 4.9.5.5 3 3.4 5.9 9.3 4.2-6.4 8.8-10.1 15.2-10.6a83.47 83.47 0 0 0 1.7 33.7c.1.5 2.6 17.4 27.5 24.1 11.3 3 27 1.2 48.9-5.4l-9.2.5c-4.2-14.8-6.4-24.8-5.9-29.5 11.3-8.8 21.9-11.3 30.7-7.6h2.5l-11.8-7.6-7.1.5c-5.9 1.2-12.3 4.2-19.4 8.4z"], + "themeco": [448, 512, [], "f5c6", "M202.9 8.43c9.9-5.73 26-5.82 35.95-.21L430 115.85c10 5.6 18 19.44 18 30.86V364c0 11.44-8.06 25.29-18 31L238.81 503.74c-9.93 5.66-26 5.57-35.85-.21L17.86 395.12C8 389.34 0 375.38 0 364V146.71c0-11.44 8-25.36 17.91-31.08zm-77.4 199.83c-15.94 0-31.89.14-47.83.14v101.45H96.8V280h28.7c49.71 0 49.56-71.74 0-71.74zm140.14 100.29l-30.73-34.64c37-7.51 34.8-65.23-10.87-65.51-16.09 0-32.17-.14-48.26-.14v101.59h19.13v-33.91h18.41l29.56 33.91h22.76zm-41.59-82.32c23.34 0 23.26 32.46 0 32.46h-29.13v-32.46zm-95.56-1.6c21.18 0 21.11 38.85 0 38.85H96.18v-38.84zm192.65-18.25c-68.46 0-71 105.8 0 105.8 69.48-.01 69.41-105.8 0-105.8zm0 17.39c44.12 0 44.8 70.86 0 70.86s-44.43-70.86 0-70.86z"], + "themeisle": [512, 512, [], "f2b2", "M208 88.286c0-10 6.286-21.714 17.715-21.714 11.142 0 17.714 11.714 17.714 21.714 0 10.285-6.572 21.714-17.714 21.714C214.286 110 208 98.571 208 88.286zm304 160c0 36.001-11.429 102.286-36.286 129.714-22.858 24.858-87.428 61.143-120.857 70.572l-1.143.286v32.571c0 16.286-12.572 30.571-29.143 30.571-10 0-19.429-5.714-24.572-14.286-5.427 8.572-14.856 14.286-24.856 14.286-10 0-19.429-5.714-24.858-14.286-5.142 8.572-14.571 14.286-24.57 14.286-10.286 0-19.429-5.714-24.858-14.286-5.143 8.572-14.571 14.286-24.571 14.286-18.857 0-29.429-15.714-29.429-32.857-16.286 12.285-35.715 19.428-56.571 19.428-22 0-43.429-8.285-60.286-22.857 10.285-.286 20.571-2.286 30.285-5.714-20.857-5.714-39.428-18.857-52-36.286 21.37 4.645 46.209 1.673 67.143-11.143-22-22-56.571-58.857-68.572-87.428C1.143 321.714 0 303.714 0 289.429c0-49.714 20.286-160 86.286-160 10.571 0 18.857 4.858 23.143 14.857a158.792 158.792 0 0 1 12-15.428c2-2.572 5.714-5.429 7.143-8.286 7.999-12.571 11.714-21.142 21.714-34C182.571 45.428 232 17.143 285.143 17.143c6 0 12 .285 17.714 1.143C313.714 6.571 328.857 0 344.572 0c14.571 0 29.714 6 40 16.286.857.858 1.428 2.286 1.428 3.428 0 3.714-10.285 13.429-12.857 16.286 4.286 1.429 15.714 6.858 15.714 12 0 2.857-2.857 5.143-4.571 7.143 31.429 27.714 49.429 67.143 56.286 108 4.286-5.143 10.285-8.572 17.143-8.572 10.571 0 20.857 7.144 28.571 14.001C507.143 187.143 512 221.714 512 248.286zM188 89.428c0 18.286 12.571 37.143 32.286 37.143 19.714 0 32.285-18.857 32.285-37.143 0-18-12.571-36.857-32.285-36.857-19.715 0-32.286 18.858-32.286 36.857zM237.714 194c0-19.714 3.714-39.143 8.571-58.286-52.039 79.534-13.531 184.571 68.858 184.571 21.428 0 42.571-7.714 60-20 2-7.429 3.714-14.857 3.714-22.572 0-14.286-6.286-21.428-20.572-21.428-4.571 0-9.143.857-13.429 1.714-63.343 12.668-107.142 3.669-107.142-63.999zm-41.142 254.858c0-11.143-8.858-20.857-20.286-20.857-11.429 0-20 9.715-20 20.857v32.571c0 11.143 8.571 21.142 20 21.142 11.428 0 20.286-9.715 20.286-21.142v-32.571zm49.143 0c0-11.143-8.572-20.857-20-20.857-11.429 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.857 21.142 20.286 21.142 11.428 0 20-10 20-21.142v-32.571zm49.713 0c0-11.143-8.857-20.857-20.285-20.857-11.429 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.857 21.142 20.286 21.142 11.428 0 20.285-9.715 20.285-21.142v-32.571zm49.715 0c0-11.143-8.857-20.857-20.286-20.857-11.428 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.858 21.142 20.286 21.142 11.429 0 20.286-10 20.286-21.142v-32.571zM421.714 286c-30.857 59.142-90.285 102.572-158.571 102.572-96.571 0-160.571-84.572-160.571-176.572 0-16.857 2-33.429 6-49.714-20 33.715-29.714 72.572-29.714 111.429 0 60.286 24.857 121.715 71.429 160.857 5.143-9.714 14.857-16.286 26-16.286 10 0 19.428 5.714 24.571 14.286 5.429-8.571 14.571-14.286 24.858-14.286 10 0 19.428 5.714 24.571 14.286 5.429-8.571 14.857-14.286 24.858-14.286 10 0 19.428 5.714 24.857 14.286 5.143-8.571 14.571-14.286 24.572-14.286 10.857 0 20.857 6.572 25.714 16 43.427-36.286 68.569-92 71.426-148.286zm10.572-99.714c0-53.714-34.571-105.714-92.572-105.714-30.285 0-58.571 15.143-78.857 36.857C240.862 183.812 233.41 254 302.286 254c28.805 0 97.357-28.538 84.286 36.857 28.857-26 45.714-65.714 45.714-104.571z"], + "think-peaks": [576, 512, [], "f731", "M465.4 409.4l87.1-150.2-32-.3-55.1 95L259.2 0 23 407.4l32 .3L259.2 55.6zm-355.3-44.1h32.1l117.4-202.5L463 511.9l32.5.1-235.8-404.6z"], + "tiktok": [448, 512, [], "e07b", "M448,209.91a210.06,210.06,0,0,1-122.77-39.25V349.38A162.55,162.55,0,1,1,185,188.31V278.2a74.62,74.62,0,1,0,52.23,71.18V0l88,0a121.18,121.18,0,0,0,1.86,22.17h0A122.18,122.18,0,0,0,381,102.39a121.43,121.43,0,0,0,67,20.14Z"], + "trade-federation": [496, 512, [], "f513", "M248 8.8c-137 0-248 111-248 248s111 248 248 248 248-111 248-248-111-248-248-248zm0 482.8c-129.7 0-234.8-105.1-234.8-234.8S118.3 22 248 22s234.8 105.1 234.8 234.8S377.7 491.6 248 491.6zm155.1-328.5v-46.8H209.3V198H54.2l36.7 46h117.7v196.8h48.8V245h83.3v-47h-83.3v-34.8h145.7zm-73.3 45.1v23.9h-82.9v197.4h-26.8V232.1H96.3l-20.1-23.9h143.9v-80.6h171.8V152h-145v56.2zm-161.3-69l-12.4-20.7 2.1 23.8-23.5 5.4 23.3 5.4-2.1 24 12.3-20.5 22.2 9.5-15.7-18.1 15.8-18.1zm-29.6-19.7l9.3-11.5-12.7 5.9-8-12.4 1.7 13.9-14.3 3.8 13.7 2.7-.8 14.7 6.8-12.2 13.8 5.3zm165.4 145.2l-13.1 5.6-7.3-12.2 1.3 14.2-13.9 3.2 13.9 3.2-1.2 14.2 7.3-12.2 13.1 5.5-9.4-10.7zm106.9-77.2l-20.9 9.1-12-19.6 2.2 22.7-22.3 5.4 22.2 4.9-1.8 22.9 11.5-19.6 21.2 8.8-15.1-17zM248 29.9c-125.3 0-226.9 101.6-226.9 226.9S122.7 483.7 248 483.7s226.9-101.6 226.9-226.9S373.3 29.9 248 29.9zM342.6 196v51h-83.3v195.7h-52.7V245.9H89.9l-40-49.9h157.4v-81.6h197.8v50.7H259.4V196zM248 43.2c60.3 0 114.8 25 153.6 65.2H202.5V190H45.1C73.1 104.8 153.4 43.2 248 43.2zm0 427.1c-117.9 0-213.6-95.6-213.6-213.5 0-21.2 3.1-41.8 8.9-61.1L87.1 252h114.7v196.8h64.6V253h83.3v-62.7h-83.2v-19.2h145.6v-50.8c30.8 37 49.3 84.6 49.3 136.5.1 117.9-95.5 213.5-213.4 213.5zM178.8 275l-11-21.4 1.7 24.5-23.7 3.9 23.8 5.9-3.7 23.8 13-20.9 21.5 10.8-15.8-18.8 16.9-17.1z"], + "trello": [448, 512, [], "f181", "M392.3 32H56.1C25.1 32 0 57.1 0 88c-.1 0 0-4 0 336 0 30.9 25.1 56 56 56h336.2c30.8-.2 55.7-25.2 55.7-56V88c.1-30.8-24.8-55.8-55.6-56zM197 371.3c-.2 14.7-12.1 26.6-26.9 26.6H87.4c-14.8.1-26.9-11.8-27-26.6V117.1c0-14.8 12-26.9 26.9-26.9h82.9c14.8 0 26.9 12 26.9 26.9v254.2zm193.1-112c0 14.8-12 26.9-26.9 26.9h-81c-14.8 0-26.9-12-26.9-26.9V117.2c0-14.8 12-26.9 26.8-26.9h81.1c14.8 0 26.9 12 26.9 26.9v142.1z"], + "tripadvisor": [576, 512, [], "f262", "M528.91,178.82,576,127.58H471.66a326.11,326.11,0,0,0-367,0H0l47.09,51.24A143.911,143.911,0,0,0,241.86,390.73L288,440.93l46.11-50.17A143.94,143.94,0,0,0,575.88,285.18h-.03A143.56,143.56,0,0,0,528.91,178.82ZM144.06,382.57a97.39,97.39,0,1,1,97.39-97.39A97.39,97.39,0,0,1,144.06,382.57ZM288,282.37c0-64.09-46.62-119.08-108.09-142.59a281,281,0,0,1,216.17,0C334.61,163.3,288,218.29,288,282.37Zm143.88,100.2h-.01a97.405,97.405,0,1,1,.01,0ZM144.06,234.12h-.01a51.06,51.06,0,1,0,51.06,51.06v-.11A51,51,0,0,0,144.06,234.12Zm287.82,0a51.06,51.06,0,1,0,51.06,51.06A51.06,51.06,0,0,0,431.88,234.12Z"], + "tumblr": [320, 512, [], "f173", "M309.8 480.3c-13.6 14.5-50 31.7-97.4 31.7-120.8 0-147-88.8-147-140.6v-144H17.9c-5.5 0-10-4.5-10-10v-68c0-7.2 4.5-13.6 11.3-16 62-21.8 81.5-76 84.3-117.1.8-11 6.5-16.3 16.1-16.3h70.9c5.5 0 10 4.5 10 10v115.2h83c5.5 0 10 4.4 10 9.9v81.7c0 5.5-4.5 10-10 10h-83.4V360c0 34.2 23.7 53.6 68 35.8 4.8-1.9 9-3.2 12.7-2.2 3.5.9 5.8 3.4 7.4 7.9l22 64.3c1.8 5 3.3 10.6-.4 14.5z"], + "tumblr-square": [448, 512, [], "f174", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-82.3 364.2c-8.5 9.1-31.2 19.8-60.9 19.8-75.5 0-91.9-55.5-91.9-87.9v-90h-29.7c-3.4 0-6.2-2.8-6.2-6.2v-42.5c0-4.5 2.8-8.5 7.1-10 38.8-13.7 50.9-47.5 52.7-73.2.5-6.9 4.1-10.2 10-10.2h44.3c3.4 0 6.2 2.8 6.2 6.2v72h51.9c3.4 0 6.2 2.8 6.2 6.2v51.1c0 3.4-2.8 6.2-6.2 6.2h-52.1V321c0 21.4 14.8 33.5 42.5 22.4 3-1.2 5.6-2 8-1.4 2.2.5 3.6 2.1 4.6 4.9l13.8 40.2c1 3.2 2 6.7-.3 9.1z"], + "twitch": [512, 512, [], "f1e8", "M391.17,103.47H352.54v109.7h38.63ZM285,103H246.37V212.75H285ZM120.83,0,24.31,91.42V420.58H140.14V512l96.53-91.42h77.25L487.69,256V0ZM449.07,237.75l-77.22,73.12H294.61l-67.6,64v-64H140.14V36.58H449.07Z"], + "twitter": [512, 512, [], "f099", "M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"], + "twitter-square": [448, 512, [], "f081", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-48.9 158.8c.2 2.8.2 5.7.2 8.5 0 86.7-66 186.6-186.6 186.6-37.2 0-71.7-10.8-100.7-29.4 5.3.6 10.4.8 15.8.8 30.7 0 58.9-10.4 81.4-28-28.8-.6-53-19.5-61.3-45.5 10.1 1.5 19.2 1.5 29.6-1.2-30-6.1-52.5-32.5-52.5-64.4v-.8c8.7 4.9 18.9 7.9 29.6 8.3a65.447 65.447 0 0 1-29.2-54.6c0-12.2 3.2-23.4 8.9-33.1 32.3 39.8 80.8 65.8 135.2 68.6-9.3-44.5 24-80.6 64-80.6 18.9 0 35.9 7.9 47.9 20.7 14.8-2.8 29-8.3 41.6-15.8-4.9 15.2-15.2 28-28.8 36.1 13.2-1.4 26-5.1 37.8-10.2-8.9 13.1-20.1 24.7-32.9 34z"], + "typo3": [448, 512, [], "f42b", "M178.7 78.4c0-24.7 5.4-32.4 13.9-39.4-69.5 8.5-149.3 34-176.3 66.4-5.4 7.7-9.3 20.8-9.3 37.1C7 246 113.8 480 191.1 480c36.3 0 97.3-59.5 146.7-139-7 2.3-11.6 2.3-18.5 2.3-57.2 0-140.6-198.5-140.6-264.9zM301.5 32c-30.1 0-41.7 5.4-41.7 36.3 0 66.4 53.8 198.5 101.7 198.5 26.3 0 78.8-99.7 78.8-182.3 0-40.9-67-52.5-138.8-52.5z"], + "uber": [448, 512, [], "f402", "M414.1 32H33.9C15.2 32 0 47.2 0 65.9V446c0 18.8 15.2 34 33.9 34H414c18.7 0 33.9-15.2 33.9-33.9V65.9C448 47.2 432.8 32 414.1 32zM237.6 391.1C163 398.6 96.4 344.2 88.9 269.6h94.4V290c0 3.7 3 6.8 6.8 6.8H258c3.7 0 6.8-3 6.8-6.8v-67.9c0-3.7-3-6.8-6.8-6.8h-67.9c-3.7 0-6.8 3-6.8 6.8v20.4H88.9c7-69.4 65.4-122.2 135.1-122.2 69.7 0 128.1 52.8 135.1 122.2 7.5 74.5-46.9 141.1-121.5 148.6z"], + "ubuntu": [496, 512, [], "f7df", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm52.7 93c8.8-15.2 28.3-20.5 43.5-11.7 15.3 8.8 20.5 28.3 11.7 43.6-8.8 15.2-28.3 20.5-43.5 11.7-15.3-8.9-20.5-28.4-11.7-43.6zM87.4 287.9c-17.6 0-31.9-14.3-31.9-31.9 0-17.6 14.3-31.9 31.9-31.9 17.6 0 31.9 14.3 31.9 31.9 0 17.6-14.3 31.9-31.9 31.9zm28.1 3.1c22.3-17.9 22.4-51.9 0-69.9 8.6-32.8 29.1-60.7 56.5-79.1l23.7 39.6c-51.5 36.3-51.5 112.5 0 148.8L172 370c-27.4-18.3-47.8-46.3-56.5-79zm228.7 131.7c-15.3 8.8-34.7 3.6-43.5-11.7-8.8-15.3-3.6-34.8 11.7-43.6 15.2-8.8 34.7-3.6 43.5 11.7 8.8 15.3 3.6 34.8-11.7 43.6zm.3-69.5c-26.7-10.3-56.1 6.6-60.5 35-5.2 1.4-48.9 14.3-96.7-9.4l22.5-40.3c57 26.5 123.4-11.7 128.9-74.4l46.1.7c-2.3 34.5-17.3 65.5-40.3 88.4zm-5.9-105.3c-5.4-62-71.3-101.2-128.9-74.4l-22.5-40.3c47.9-23.7 91.5-10.8 96.7-9.4 4.4 28.3 33.8 45.3 60.5 35 23.1 22.9 38 53.9 40.2 88.5l-46 .6z"], + "uikit": [448, 512, [], "f403", "M443.9 128v256L218 512 0 384V169.7l87.6 45.1v117l133.5 75.5 135.8-75.5v-151l-101.1-57.6 87.6-53.1L443.9 128zM308.6 49.1L223.8 0l-88.6 54.8 86 47.3 87.4-53z"], + "umbraco": [510, 512, [], "f8e8", "M255.35 8C118.36 7.83 7.14 118.72 7 255.68c-.07 137 111 248.2 248 248.27 136.85 0 247.82-110.7 248-247.67S392.34 8.17 255.35 8zm145 266q-1.14 40.68-14 65t-43.51 35q-30.61 10.7-85.45 10.47h-4.6q-54.78.22-85.44-10.47t-43.52-35q-12.85-24.36-14-65a224.81 224.81 0 0 1 0-30.71 418.37 418.37 0 0 1 3.6-43.88c1.88-13.39 3.57-22.58 5.4-32 1-4.88 1.28-6.42 1.82-8.45a5.09 5.09 0 0 1 4.9-3.89h.69l32 5a5.07 5.07 0 0 1 4.16 5 5 5 0 0 1 0 .77l-1.7 8.78q-2.41 13.25-4.84 33.68a380.62 380.62 0 0 0-2.64 42.15q-.28 40.43 8.13 59.83a43.87 43.87 0 0 0 31.31 25.18A243 243 0 0 0 250 340.6h10.25a242.64 242.64 0 0 0 57.27-5.16 43.86 43.86 0 0 0 31.15-25.23q8.53-19.42 8.13-59.78a388 388 0 0 0-2.6-42.15q-2.48-20.38-4.89-33.68l-1.69-8.78a5 5 0 0 1 0-.77 5 5 0 0 1 4.2-5l32-5h.82a5 5 0 0 1 4.9 3.89c.55 2.05.81 3.57 1.83 8.45 1.82 9.62 3.52 18.78 5.39 32a415.71 415.71 0 0 1 3.61 43.88 228.06 228.06 0 0 1-.04 30.73z"], + "uncharted": [448, 512, [], "e084", "M171.73,232.813A5.381,5.381,0,0,0,176.7,229.5,48.081,48.081,0,0,1,191.6,204.244c1.243-.828,1.657-2.484,1.657-4.141a4.22,4.22,0,0,0-2.071-3.312L74.429,128.473,148.958,85a9.941,9.941,0,0,0,4.968-8.281,9.108,9.108,0,0,0-4.968-8.281L126.6,55.6a9.748,9.748,0,0,0-9.523,0l-100.2,57.966a9.943,9.943,0,0,0-4.969,8.281V236.954a9.109,9.109,0,0,0,4.969,8.281L39.235,258.07a8.829,8.829,0,0,0,4.968,1.242,9.4,9.4,0,0,0,6.625-2.484,10.8,10.8,0,0,0,2.9-7.039V164.5L169.66,232.4A4.5,4.5,0,0,0,171.73,232.813ZM323.272,377.73a12.478,12.478,0,0,0-4.969,1.242l-74.528,43.062V287.882c0-2.9-2.9-5.8-6.211-4.555a53.036,53.036,0,0,1-28.984.414,4.86,4.86,0,0,0-6.21,4.555V421.619l-74.529-43.061a8.83,8.83,0,0,0-4.969-1.242,9.631,9.631,0,0,0-9.523,9.523v26.085a9.107,9.107,0,0,0,4.969,8.281l100.2,57.553A8.829,8.829,0,0,0,223.486,480a11.027,11.027,0,0,0,4.969-1.242l100.2-57.553a9.941,9.941,0,0,0,4.968-8.281V386.839C332.8,382.285,328.24,377.73,323.272,377.73ZM286.007,78a23,23,0,1,0-23-23A23,23,0,0,0,286.007,78Zm63.627-10.086a23,23,0,1,0,23,23A23,23,0,0,0,349.634,67.914ZM412.816,151.6a23,23,0,1,0-23-23A23,23,0,0,0,412.816,151.6Zm-63.182-9.2a23,23,0,1,0,23,23A23,23,0,0,0,349.634,142.4Zm-63.627,83.244a23,23,0,1,0-23-23A23,23,0,0,0,286.007,225.648Zm-62.074,36.358a23,23,0,1,0-23-23A23,23,0,0,0,223.933,262.006Zm188.883-82.358a23,23,0,1,0,23,23A23,23,0,0,0,412.816,179.648Zm0,72.272a23,23,0,1,0,23,23A23,23,0,0,0,412.816,251.92Z"], + "uniregistry": [384, 512, [], "f404", "M192 480c39.5 0 76.2-11.8 106.8-32.2H85.3C115.8 468.2 152.5 480 192 480zm-89.1-193.1v-12.4H0v12.4c0 2.5 0 5 .1 7.4h103.1c-.2-2.4-.3-4.9-.3-7.4zm20.5 57H8.5c2.6 8.5 5.8 16.8 9.6 24.8h138.3c-12.9-5.7-24.1-14.2-33-24.8zm-17.7-34.7H1.3c.9 7.6 2.2 15 3.9 22.3h109.7c-4-6.9-7.2-14.4-9.2-22.3zm-2.8-69.3H0v17.3h102.9zm0-173.2H0v4.9h102.9zm0-34.7H0v2.5h102.9zm0 69.3H0v7.4h102.9zm0 104H0v14.8h102.9zm0-69.3H0v9.9h102.9zm0 34.6H0V183h102.9zm166.2 160.9h109.7c1.8-7.3 3.1-14.7 3.9-22.3H278.3c-2.1 7.9-5.2 15.4-9.2 22.3zm12-185.7H384V136H281.1zm0 37.2H384v-12.4H281.1zm0-74.3H384v-7.4H281.1zm0-76.7v2.5H384V32zm-203 410.9h227.7c11.8-8.7 22.7-18.6 32.2-29.7H44.9c9.6 11 21.4 21 33.2 29.7zm203-371.3H384v-4.9H281.1zm0 148.5H384v-14.8H281.1zM38.8 405.7h305.3c6.7-8.5 12.6-17.6 17.8-27.2H23c5.2 9.6 9.2 18.7 15.8 27.2zm188.8-37.1H367c3.7-8 5.8-16.2 8.5-24.8h-115c-8.8 10.7-20.1 19.2-32.9 24.8zm53.5-81.7c0 2.5-.1 5-.4 7.4h103.1c.1-2.5.2-4.9.2-7.4v-12.4H281.1zm0-29.7H384v-17.3H281.1z"], + "unity": [576, 512, [], "e049", "M498.11,206.4,445.31,14.72,248.2,66.08,219,116.14l-59.2-.43L15.54,256,159.82,396.32l59.17-.43,29.24,50,197.08,51.36,52.8-191.62-30-49.63ZM223.77,124.2,374.55,86.51,288,232.33H114.87Zm0,263.63L114.87,279.71H288l86.55,145.81Zm193,14L330.17,256l86.58-145.84L458.56,256Z"], + "unsplash": [448, 512, [], "e07c", "M448,230.17V480H0V230.17H141.13V355.09H306.87V230.17ZM306.87,32H141.13V156.91H306.87Z"], + "untappd": [640, 512, [], "f405", "M401.3 49.9c-79.8 160.1-84.6 152.5-87.9 173.2l-5.2 32.8c-1.9 12-6.6 23.5-13.7 33.4L145.6 497.1c-7.6 10.6-20.4 16.2-33.4 14.6-40.3-5-77.8-32.2-95.3-68.5-5.7-11.8-4.5-25.8 3.1-36.4l148.9-207.9c7.1-9.9 16.4-18 27.2-23.7l29.3-15.5c18.5-9.8 9.7-11.9 135.6-138.9 1-4.8 1-7.3 3.6-8 3-.7 6.6-1 6.3-4.6l-.4-4.6c-.2-1.9 1.3-3.6 3.2-3.6 4.5-.1 13.2 1.2 25.6 10 12.3 8.9 16.4 16.8 17.7 21.1.6 1.8-.6 3.7-2.4 4.2l-4.5 1.1c-3.4.9-2.5 4.4-2.3 7.4.1 2.8-2.3 3.6-6.5 6.1zM230.1 36.4c3.4.9 2.5 4.4 2.3 7.4-.2 2.7 2.1 3.5 6.4 6 7.9 15.9 15.3 30.5 22.2 44 .7 1.3 2.3 1.5 3.3.5 11.2-12 24.6-26.2 40.5-42.6 1.3-1.4 1.4-3.5.1-4.9-8-8.2-16.5-16.9-25.6-26.1-1-4.7-1-7.3-3.6-8-3-.8-6.6-1-6.3-4.6.3-3.3 1.4-8.1-2.8-8.2-4.5-.1-13.2 1.1-25.6 10-12.3 8.9-16.4 16.8-17.7 21.1-1.4 4.2 3.6 4.6 6.8 5.4zM620 406.7L471.2 198.8c-13.2-18.5-26.6-23.4-56.4-39.1-11.2-5.9-14.2-10.9-30.5-28.9-1-1.1-2.9-.9-3.6.5-46.3 88.8-47.1 82.8-49 94.8-1.7 10.7-1.3 20 .3 29.8 1.9 12 6.6 23.5 13.7 33.4l148.9 207.9c7.6 10.6 20.2 16.2 33.1 14.7 40.3-4.9 78-32 95.7-68.6 5.4-11.9 4.3-25.9-3.4-36.6z"], + "ups": [384, 512, [], "f7e0", "M103.2 303c-5.2 3.6-32.6 13.1-32.6-19V180H37.9v102.6c0 74.9 80.2 51.1 97.9 39V180h-32.6zM4 74.82v220.9c0 103.7 74.9 135.2 187.7 184.1 112.4-48.9 187.7-80.2 187.7-184.1V74.82c-116.3-61.6-281.8-49.6-375.4 0zm358.1 220.9c0 86.6-53.2 113.6-170.4 165.3-117.5-51.8-170.5-78.7-170.5-165.3v-126.4c102.3-93.8 231.6-100 340.9-89.8zm-209.6-107.4v212.8h32.7v-68.7c24.4 7.3 71.7-2.6 71.7-78.5 0-97.4-80.7-80.92-104.4-65.6zm32.7 117.3v-100.3c8.4-4.2 38.4-12.7 38.4 49.3 0 67.9-36.4 51.8-38.4 51zm79.1-86.4c.1 47.3 51.6 42.5 52.2 70.4.6 23.5-30.4 23-50.8 4.9v30.1c36.2 21.5 81.9 8.1 83.2-33.5 1.7-51.5-54.1-46.6-53.4-73.2.6-20.3 30.6-20.5 48.5-2.2v-28.4c-28.5-22-79.9-9.2-79.7 31.9z"], + "usb": [640, 512, [], "f287", "M641.5 256c0 3.1-1.7 6.1-4.5 7.5L547.9 317c-1.4.8-2.8 1.4-4.5 1.4-1.4 0-3.1-.3-4.5-1.1-2.8-1.7-4.5-4.5-4.5-7.8v-35.6H295.7c25.3 39.6 40.5 106.9 69.6 106.9H392V354c0-5 3.9-8.9 8.9-8.9H490c5 0 8.9 3.9 8.9 8.9v89.1c0 5-3.9 8.9-8.9 8.9h-89.1c-5 0-8.9-3.9-8.9-8.9v-26.7h-26.7c-75.4 0-81.1-142.5-124.7-142.5H140.3c-8.1 30.6-35.9 53.5-69 53.5C32 327.3 0 295.3 0 256s32-71.3 71.3-71.3c33.1 0 61 22.8 69 53.5 39.1 0 43.9 9.5 74.6-60.4C255 88.7 273 95.7 323.8 95.7c7.5-20.9 27-35.6 50.4-35.6 29.5 0 53.5 23.9 53.5 53.5s-23.9 53.5-53.5 53.5c-23.4 0-42.9-14.8-50.4-35.6H294c-29.1 0-44.3 67.4-69.6 106.9h310.1v-35.6c0-3.3 1.7-6.1 4.5-7.8 2.8-1.7 6.4-1.4 8.9.3l89.1 53.5c2.8 1.1 4.5 4.1 4.5 7.2z"], + "usps": [576, 512, [], "f7e1", "M460.3 241.7c25.8-41.3 15.2-48.8-11.7-48.8h-27c-.1 0-1.5-1.4-10.9 8-11.2 5.6-37.9 6.3-37.9 8.7 0 4.5 70.3-3.1 88.1 0 9.5 1.5-1.5 20.4-4.4 32-.5 4.5 2.4 2.3 3.8.1zm-112.1 22.6c64-21.3 97.3-23.9 102-26.2 4.4-2.9-4.4-6.6-26.2-5.8-51.7 2.2-137.6 37.1-172.6 53.9l-30.7-93.3h196.6c-2.7-28.2-152.9-22.6-337.9-22.6L27 415.8c196.4-97.3 258.9-130.3 321.2-151.5zM94.7 96c253.3 53.7 330 65.7 332.1 85.2 36.4 0 45.9 0 52.4 6.6 21.1 19.7-14.6 67.7-14.6 67.7-4.4 2.9-406.4 160.2-406.4 160.2h423.1L549 96z"], + "ussunnah": [512, 512, [], "f407", "M156.8 285.1l5.7 14.4h-8.2c-1.3-3.2-3.1-7.7-3.8-9.5-2.5-6.3-1.1-8.4 0-10 1.9-2.7 3.2-4.4 3.6-5.2 0 2.2.8 5.7 2.7 10.3zm297.3 18.8c-2.1 13.8-5.7 27.1-10.5 39.7l43 23.4-44.8-18.8c-5.3 13.2-12 25.6-19.9 37.2l34.2 30.2-36.8-26.4c-8.4 11.8-18 22.6-28.7 32.3l24.9 34.7-28.1-31.8c-11 9.6-23.1 18-36.1 25.1l15.7 37.2-19.3-35.3c-13.1 6.8-27 12.1-41.6 15.9l6.7 38.4-10.5-37.4c-14.3 3.4-29.2 5.3-44.5 5.4L256 512l-1.9-38.4c-15.3-.1-30.2-2-44.5-5.3L199 505.6l6.7-38.2c-14.6-3.7-28.6-9.1-41.7-15.8l-19.2 35.1 15.6-37c-13-7-25.2-15.4-36.2-25.1l-27.9 31.6 24.7-34.4c-10.7-9.7-20.4-20.5-28.8-32.3l-36.5 26.2 33.9-29.9c-7.9-11.6-14.6-24.1-20-37.3l-44.4 18.7L67.8 344c-4.8-12.7-8.4-26.1-10.5-39.9l-51 9 50.3-14.2c-1.1-8.5-1.7-17.1-1.7-25.9 0-4.7.2-9.4.5-14.1L0 256l56-2.8c1.3-13.1 3.8-25.8 7.5-38.1L6.4 199l58.9 10.4c4-12 9.1-23.5 15.2-34.4l-55.1-30 58.3 24.6C90 159 97.2 149.2 105.3 140L55.8 96.4l53.9 38.7c8.1-8.6 17-16.5 26.6-23.6l-40-55.6 45.6 51.6c9.5-6.6 19.7-12.3 30.3-17.2l-27.3-64.9 33.8 62.1c10.5-4.4 21.4-7.9 32.7-10.4L199 6.4l19.5 69.2c11-2.1 22.3-3.2 33.8-3.4L256 0l3.6 72.2c11.5.2 22.8 1.4 33.8 3.5L313 6.4l-12.4 70.7c11.3 2.6 22.2 6.1 32.6 10.5l33.9-62.2-27.4 65.1c10.6 4.9 20.7 10.7 30.2 17.2l45.8-51.8-40.1 55.9c9.5 7.1 18.4 15 26.5 23.6l54.2-38.9-49.7 43.9c8 9.1 15.2 18.9 21.5 29.4l58.7-24.7-55.5 30.2c6.1 10.9 11.1 22.3 15.1 34.3l59.3-10.4-57.5 16.2c3.7 12.2 6.2 24.9 7.5 37.9L512 256l-56 2.8c.3 4.6.5 9.3.5 14.1 0 8.7-.6 17.3-1.6 25.8l50.7 14.3-51.5-9.1zm-21.8-31c0-97.5-79-176.5-176.5-176.5s-176.5 79-176.5 176.5 79 176.5 176.5 176.5 176.5-79 176.5-176.5zm-24 0c0 84.3-68.3 152.6-152.6 152.6s-152.6-68.3-152.6-152.6 68.3-152.6 152.6-152.6 152.6 68.3 152.6 152.6zM195 241c0 2.1 1.3 3.8 3.6 5.1 3.3 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.5 6.8-9.6 10.9-9.6 12.6zm-40.7-19c0 2.1 1.3 3.8 3.6 5.1 3.5 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.5 6.8-9.6 10.9-9.6 12.6zm-19 0c0 2.1 1.3 3.8 3.6 5.1 3.3 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.4 6.8-9.6 10.9-9.6 12.6zm204.9 87.9c-8.4-3-8.7-6.8-8.7-15.6V182c-8.2 12.5-14.2 18.6-18 18.6 6.3 14.4 9.5 23.9 9.5 28.3v64.3c0 2.2-2.2 6.5-4.7 6.5h-18c-2.8-7.5-10.2-26.9-15.3-40.3-2 2.5-7.2 9.2-10.7 13.7 2.4 1.6 4.1 3.6 5.2 6.3 2.6 6.7 6.4 16.5 7.9 20.2h-9.2c-3.9-10.4-9.6-25.4-11.8-31.1-2 2.5-7.2 9.2-10.7 13.7 2.4 1.6 4.1 3.6 5.2 6.3.8 2 2.8 7.3 4.3 10.9H256c-1.5-4.1-5.6-14.6-8.4-22-2 2.5-7.2 9.2-10.7 13.7 2.5 1.6 4.3 3.6 5.2 6.3.2.6.5 1.4.6 1.7H225c-4.6-13.9-11.4-27.7-11.4-34.1 0-2.2.3-5.1 1.1-8.2-8.8 10.8-14 15.9-14 25 0 7.5 10.4 28.3 10.4 33.3 0 1.7-.5 3.3-1.4 4.9-9.6-12.7-15.5-20.7-18.8-20.7h-12l-11.2-28c-3.8-9.6-5.7-16-5.7-18.8 0-3.8.5-7.7 1.7-12.2-1 1.3-3.7 4.7-5.5 7.1-.8-2.1-3.1-7.7-4.6-11.5-2.1 2.5-7.5 9.1-11.2 13.6.9 2.3 3.3 8.1 4.9 12.2-2.5 3.3-9.1 11.8-13.6 17.7-4 5.3-5.8 13.3-2.7 21.8 2.5 6.7 2 7.9-1.7 14.1H191c5.5 0 14.3 14 15.5 22 13.2-16 15.4-19.6 16.8-21.6h107c3.9 0 7.2-1.9 9.9-5.8zm20.1-26.6V181.7c-9 12.5-15.9 18.6-20.7 18.6 7.1 14.4 10.7 23.9 10.7 28.3v66.3c0 17.5 8.6 20.4 24 20.4 8.1 0 12.5-.8 13.7-2.7-4.3-1.6-7.6-2.5-9.9-3.3-8.1-3.2-17.8-7.4-17.8-26z"], + "vaadin": [448, 512, [], "f408", "M224.5 140.7c1.5-17.6 4.9-52.7 49.8-52.7h98.6c20.7 0 32.1-7.8 32.1-21.6V54.1c0-12.2 9.3-22.1 21.5-22.1S448 41.9 448 54.1v36.5c0 42.9-21.5 62-66.8 62H280.7c-30.1 0-33 14.7-33 27.1 0 1.3-.1 2.5-.2 3.7-.7 12.3-10.9 22.2-23.4 22.2s-22.7-9.8-23.4-22.2c-.1-1.2-.2-2.4-.2-3.7 0-12.3-3-27.1-33-27.1H66.8c-45.3 0-66.8-19.1-66.8-62V54.1C0 41.9 9.4 32 21.6 32s21.5 9.9 21.5 22.1v12.3C43.1 80.2 54.5 88 75.2 88h98.6c44.8 0 48.3 35.1 49.8 52.7h.9zM224 456c11.5 0 21.4-7 25.7-16.3 1.1-1.8 97.1-169.6 98.2-171.4 11.9-19.6-3.2-44.3-27.2-44.3-13.9 0-23.3 6.4-29.8 20.3L224 362l-66.9-117.7c-6.4-13.9-15.9-20.3-29.8-20.3-24 0-39.1 24.6-27.2 44.3 1.1 1.9 97.1 169.6 98.2 171.4 4.3 9.3 14.2 16.3 25.7 16.3z"], + "viacoin": [384, 512, [], "f237", "M384 32h-64l-80.7 192h-94.5L64 32H0l48 112H0v48h68.5l13.8 32H0v48h102.8L192 480l89.2-208H384v-48h-82.3l13.8-32H384v-48h-48l48-112zM192 336l-27-64h54l-27 64z"], + "viadeo": [448, 512, [], "f2a9", "M276.2 150.5v.7C258.3 98.6 233.6 47.8 205.4 0c43.3 29.2 67 100 70.8 150.5zm32.7 121.7c7.6 18.2 11 37.5 11 57 0 77.7-57.8 141-137.8 139.4l3.8-.3c74.2-46.7 109.3-118.6 109.3-205.1 0-38.1-6.5-75.9-18.9-112 1 11.7 1 23.7 1 35.4 0 91.8-18.1 241.6-116.6 280C95 455.2 49.4 398 49.4 329.2c0-75.6 57.4-142.3 135.4-142.3 16.8 0 33.7 3.1 49.1 9.6 1.7-15.1 6.5-29.9 13.4-43.3-19.9-7.2-41.2-10.7-62.5-10.7-161.5 0-238.7 195.9-129.9 313.7 67.9 74.6 192 73.9 259.8 0 56.6-61.3 60.9-142.4 36.4-201-12.7 8-27.1 13.9-42.2 17zM418.1 11.7c-31 66.5-81.3 47.2-115.8 80.1-12.4 12-20.6 34-20.6 50.5 0 14.1 4.5 27.1 12 38.8 47.4-11 98.3-46 118.2-90.7-.7 5.5-4.8 14.4-7.2 19.2-20.3 35.7-64.6 65.6-99.7 84.9 14.8 14.4 33.7 25.8 55 25.8 79 0 110.1-134.6 58.1-208.6z"], + "viadeo-square": [448, 512, [], "f2aa", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM280.7 381.2c-42.4 46.2-120 46.6-162.4 0-68-73.6-19.8-196.1 81.2-196.1 13.3 0 26.6 2.1 39.1 6.7-4.3 8.4-7.3 17.6-8.4 27.1-9.7-4.1-20.2-6-30.7-6-48.8 0-84.6 41.7-84.6 88.9 0 43 28.5 78.7 69.5 85.9 61.5-24 72.9-117.6 72.9-175 0-7.3 0-14.8-.6-22.1-11.2-32.9-26.6-64.6-44.2-94.5 27.1 18.3 41.9 62.5 44.2 94.1v.4c7.7 22.5 11.8 46.2 11.8 70 0 54.1-21.9 99-68.3 128.2l-2.4.2c50 1 86.2-38.6 86.2-87.2 0-12.2-2.1-24.3-6.9-35.7 9.5-1.9 18.5-5.6 26.4-10.5 15.3 36.6 12.6 87.3-22.8 125.6zM309 233.7c-13.3 0-25.1-7.1-34.4-16.1 21.9-12 49.6-30.7 62.3-53 1.5-3 4.1-8.6 4.5-12-12.5 27.9-44.2 49.8-73.9 56.7-4.7-7.3-7.5-15.5-7.5-24.3 0-10.3 5.2-24.1 12.9-31.6 21.6-20.5 53-8.5 72.4-50 32.5 46.2 13.1 130.3-36.3 130.3z"], + "viber": [512, 512, [], "f409", "M444 49.9C431.3 38.2 379.9.9 265.3.4c0 0-135.1-8.1-200.9 52.3C27.8 89.3 14.9 143 13.5 209.5c-1.4 66.5-3.1 191.1 117 224.9h.1l-.1 51.6s-.8 20.9 13 25.1c16.6 5.2 26.4-10.7 42.3-27.8 8.7-9.4 20.7-23.2 29.8-33.7 82.2 6.9 145.3-8.9 152.5-11.2 16.6-5.4 110.5-17.4 125.7-142 15.8-128.6-7.6-209.8-49.8-246.5zM457.9 287c-12.9 104-89 110.6-103 115.1-6 1.9-61.5 15.7-131.2 11.2 0 0-52 62.7-68.2 79-5.3 5.3-11.1 4.8-11-5.7 0-6.9.4-85.7.4-85.7-.1 0-.1 0 0 0-101.8-28.2-95.8-134.3-94.7-189.8 1.1-55.5 11.6-101 42.6-131.6 55.7-50.5 170.4-43 170.4-43 96.9.4 143.3 29.6 154.1 39.4 35.7 30.6 53.9 103.8 40.6 211.1zm-139-80.8c.4 8.6-12.5 9.2-12.9.6-1.1-22-11.4-32.7-32.6-33.9-8.6-.5-7.8-13.4.7-12.9 27.9 1.5 43.4 17.5 44.8 46.2zm20.3 11.3c1-42.4-25.5-75.6-75.8-79.3-8.5-.6-7.6-13.5.9-12.9 58 4.2 88.9 44.1 87.8 92.5-.1 8.6-13.1 8.2-12.9-.3zm47 13.4c.1 8.6-12.9 8.7-12.9.1-.6-81.5-54.9-125.9-120.8-126.4-8.5-.1-8.5-12.9 0-12.9 73.7.5 133 51.4 133.7 139.2zM374.9 329v.2c-10.8 19-31 40-51.8 33.3l-.2-.3c-21.1-5.9-70.8-31.5-102.2-56.5-16.2-12.8-31-27.9-42.4-42.4-10.3-12.9-20.7-28.2-30.8-46.6-21.3-38.5-26-55.7-26-55.7-6.7-20.8 14.2-41 33.3-51.8h.2c9.2-4.8 18-3.2 23.9 3.9 0 0 12.4 14.8 17.7 22.1 5 6.8 11.7 17.7 15.2 23.8 6.1 10.9 2.3 22-3.7 26.6l-12 9.6c-6.1 4.9-5.3 14-5.3 14s17.8 67.3 84.3 84.3c0 0 9.1.8 14-5.3l9.6-12c4.6-6 15.7-9.8 26.6-3.7 14.7 8.3 33.4 21.2 45.8 32.9 7 5.7 8.6 14.4 3.8 23.6z"], + "vimeo": [448, 512, [], "f40a", "M403.2 32H44.8C20.1 32 0 52.1 0 76.8v358.4C0 459.9 20.1 480 44.8 480h358.4c24.7 0 44.8-20.1 44.8-44.8V76.8c0-24.7-20.1-44.8-44.8-44.8zM377 180.8c-1.4 31.5-23.4 74.7-66 129.4-44 57.2-81.3 85.8-111.7 85.8-18.9 0-34.8-17.4-47.9-52.3-25.5-93.3-36.4-148-57.4-148-2.4 0-10.9 5.1-25.4 15.2l-15.2-19.6c37.3-32.8 72.9-69.2 95.2-71.2 25.2-2.4 40.7 14.8 46.5 51.7 20.7 131.2 29.9 151 67.6 91.6 13.5-21.4 20.8-37.7 21.8-48.9 3.5-33.2-25.9-30.9-45.8-22.4 15.9-52.1 46.3-77.4 91.2-76 33.3.9 49 22.5 47.1 64.7z"], + "vimeo-square": [448, 512, [], "f194", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-16.2 149.6c-1.4 31.1-23.2 73.8-65.3 127.9-43.5 56.5-80.3 84.8-110.4 84.8-18.7 0-34.4-17.2-47.3-51.6-25.2-92.3-35.9-146.4-56.7-146.4-2.4 0-10.8 5-25.1 15.1L64 192c36.9-32.4 72.1-68.4 94.1-70.4 24.9-2.4 40.2 14.6 46 51.1 20.5 129.6 29.6 149.2 66.8 90.5 13.4-21.2 20.6-37.2 21.5-48.3 3.4-32.8-25.6-30.6-45.2-22.2 15.7-51.5 45.8-76.5 90.1-75.1 32.9 1 48.4 22.4 46.5 64z"], + "vimeo-v": [448, 512, [], "f27d", "M447.8 153.6c-2 43.6-32.4 103.3-91.4 179.1-60.9 79.2-112.4 118.8-154.6 118.8-26.1 0-48.2-24.1-66.3-72.3C100.3 250 85.3 174.3 56.2 174.3c-3.4 0-15.1 7.1-35.2 21.1L0 168.2c51.6-45.3 100.9-95.7 131.8-98.5 34.9-3.4 56.3 20.5 64.4 71.5 28.7 181.5 41.4 208.9 93.6 126.7 18.7-29.6 28.8-52.1 30.2-67.6 4.8-45.9-35.8-42.8-63.3-31 22-72.1 64.1-107.1 126.2-105.1 45.8 1.2 67.5 31.1 64.9 89.4z"], + "vine": [384, 512, [], "f1ca", "M384 254.7v52.1c-18.4 4.2-36.9 6.1-52.1 6.1-36.9 77.4-103 143.8-125.1 156.2-14 7.9-27.1 8.4-42.7-.8C137 452 34.2 367.7 0 102.7h74.5C93.2 261.8 139 343.4 189.3 404.5c27.9-27.9 54.8-65.1 75.6-106.9-49.8-25.3-80.1-80.9-80.1-145.6 0-65.6 37.7-115.1 102.2-115.1 114.9 0 106.2 127.9 81.6 181.5 0 0-46.4 9.2-63.5-20.5 3.4-11.3 8.2-30.8 8.2-48.5 0-31.3-11.3-46.6-28.4-46.6-18.2 0-30.8 17.1-30.8 50 .1 79.2 59.4 118.7 129.9 101.9z"], + "vk": [576, 512, [], "f189", "M545 117.7c3.7-12.5 0-21.7-17.8-21.7h-58.9c-15 0-21.9 7.9-25.6 16.7 0 0-30 73.1-72.4 120.5-13.7 13.7-20 18.1-27.5 18.1-3.7 0-9.4-4.4-9.4-16.9V117.7c0-15-4.2-21.7-16.6-21.7h-92.6c-9.4 0-15 7-15 13.5 0 14.2 21.2 17.5 23.4 57.5v86.8c0 19-3.4 22.5-10.9 22.5-20 0-68.6-73.4-97.4-157.4-5.8-16.3-11.5-22.9-26.6-22.9H38.8c-16.8 0-20.2 7.9-20.2 16.7 0 15.6 20 93.1 93.1 195.5C160.4 378.1 229 416 291.4 416c37.5 0 42.1-8.4 42.1-22.9 0-66.8-3.4-73.1 15.4-73.1 8.7 0 23.7 4.4 58.7 38.1 40 40 46.6 57.9 69 57.9h58.9c16.8 0 25.3-8.4 20.4-25-11.2-34.9-86.9-106.7-90.3-111.5-8.7-11.2-6.2-16.2 0-26.2.1-.1 72-101.3 79.4-135.6z"], + "vnv": [640, 512, [], "f40b", "M104.9 352c-34.1 0-46.4-30.4-46.4-30.4L2.6 210.1S-7.8 192 13 192h32.8c10.4 0 13.2 8.7 18.8 18.1l36.7 74.5s5.2 13.1 21.1 13.1 21.1-13.1 21.1-13.1l36.7-74.5c5.6-9.5 8.4-18.1 18.8-18.1h32.8c20.8 0 10.4 18.1 10.4 18.1l-55.8 111.5S174.2 352 140 352h-35.1zm395 0c-34.1 0-46.4-30.4-46.4-30.4l-55.9-111.5S387.2 192 408 192h32.8c10.4 0 13.2 8.7 18.8 18.1l36.7 74.5s5.2 13.1 21.1 13.1 21.1-13.1 21.1-13.1l36.8-74.5c5.6-9.5 8.4-18.1 18.8-18.1H627c20.8 0 10.4 18.1 10.4 18.1l-55.9 111.5S569.3 352 535.1 352h-35.2zM337.6 192c34.1 0 46.4 30.4 46.4 30.4l55.9 111.5s10.4 18.1-10.4 18.1h-32.8c-10.4 0-13.2-8.7-18.8-18.1l-36.7-74.5s-5.2-13.1-21.1-13.1c-15.9 0-21.1 13.1-21.1 13.1l-36.7 74.5c-5.6 9.4-8.4 18.1-18.8 18.1h-32.9c-20.8 0-10.4-18.1-10.4-18.1l55.9-111.5s12.2-30.4 46.4-30.4h35.1z"], + "vuejs": [448, 512, [], "f41f", "M356.9 64.3H280l-56 88.6-48-88.6H0L224 448 448 64.3h-91.1zm-301.2 32h53.8L224 294.5 338.4 96.3h53.8L224 384.5 55.7 96.3z"], + "watchman-monitoring": [512, 512, [], "e087", "M256,16C123.452,16,16,123.452,16,256S123.452,496,256,496,496,388.548,496,256,388.548,16,256,16ZM121.69,429.122C70.056,388.972,36.741,326.322,36.741,256a218.519,218.519,0,0,1,9.587-64.122l102.9-17.895-.121,10.967-13.943,2.013s-.144,12.5-.144,19.549a12.778,12.778,0,0,0,4.887,10.349l9.468,7.4Zm105.692-283.27,8.48-7.618s6.934-5.38-.143-9.344c-7.188-4.024-39.53-34.5-39.53-34.5-5.348-5.477-8.257-7.347-15.46,0,0,0-32.342,30.474-39.529,34.5-7.078,3.964-.144,9.344-.144,9.344l8.481,7.618-.048,4.369L75.982,131.045c39.644-56.938,105.532-94.3,180.018-94.3A218.754,218.754,0,0,1,420.934,111.77l-193.512,37.7Zm34.063,329.269-33.9-250.857,9.467-7.4a12.778,12.778,0,0,0,4.888-10.349c0-7.044-.144-19.549-.144-19.549l-13.943-2.013-.116-10.474,241.711,31.391A218.872,218.872,0,0,1,475.259,256C475.259,375.074,379.831,472.212,261.445,475.121Z"], + "waze": [512, 512, [], "f83f", "M502.17 201.67C516.69 287.53 471.23 369.59 389 409.8c13 34.1-12.4 70.2-48.32 70.2a51.68 51.68 0 0 1-51.57-49c-6.44.19-64.2 0-76.33-.64A51.69 51.69 0 0 1 159 479.92c-33.86-1.36-57.95-34.84-47-67.92-37.21-13.11-72.54-34.87-99.62-70.8-13-17.28-.48-41.8 20.84-41.8 46.31 0 32.22-54.17 43.15-110.26C94.8 95.2 193.12 32 288.09 32c102.48 0 197.15 70.67 214.08 169.67zM373.51 388.28c42-19.18 81.33-56.71 96.29-102.14 40.48-123.09-64.15-228-181.71-228-83.45 0-170.32 55.42-186.07 136-9.53 48.91 5 131.35-68.75 131.35C58.21 358.6 91.6 378.11 127 389.54c24.66-21.8 63.87-15.47 79.83 14.34 14.22 1 79.19 1.18 87.9.82a51.69 51.69 0 0 1 78.78-16.42zM205.12 187.13c0-34.74 50.84-34.75 50.84 0s-50.84 34.74-50.84 0zm116.57 0c0-34.74 50.86-34.75 50.86 0s-50.86 34.75-50.86 0zm-122.61 70.69c-3.44-16.94 22.18-22.18 25.62-5.21l.06.28c4.14 21.42 29.85 44 64.12 43.07 35.68-.94 59.25-22.21 64.11-42.77 4.46-16.05 28.6-10.36 25.47 6-5.23 22.18-31.21 62-91.46 62.9-42.55 0-80.88-27.84-87.9-64.25z"], + "weebly": [512, 512, [], "f5cc", "M425.09 65.83c-39.88 0-73.28 25.73-83.66 64.33-18.16-58.06-65.5-64.33-84.95-64.33-19.78 0-66.8 6.28-85.28 64.33-10.38-38.6-43.45-64.33-83.66-64.33C38.59 65.83 0 99.72 0 143.03c0 28.96 4.18 33.27 77.17 233.48 22.37 60.57 67.77 69.35 92.74 69.35 39.23 0 70.04-19.46 85.93-53.98 15.89 34.83 46.69 54.29 85.93 54.29 24.97 0 70.36-9.1 92.74-69.67 76.55-208.65 77.5-205.58 77.5-227.2.63-48.32-36.01-83.47-86.92-83.47zm26.34 114.81l-65.57 176.44c-7.92 21.49-21.22 37.22-46.24 37.22-23.44 0-37.38-12.41-44.03-33.9l-39.28-117.42h-.95L216.08 360.4c-6.96 21.5-20.9 33.6-44.02 33.6-25.02 0-38.33-15.74-46.24-37.22L60.88 181.55c-5.38-14.83-7.92-23.91-7.92-34.5 0-16.34 15.84-29.36 38.33-29.36 18.69 0 31.99 11.8 36.11 29.05l44.03 139.82h.95l44.66-136.79c6.02-19.67 16.47-32.08 38.96-32.08s32.94 12.11 38.96 32.08l44.66 136.79h.95l44.03-139.82c4.12-17.25 17.42-29.05 36.11-29.05 22.17 0 38.33 13.32 38.33 35.71-.32 7.87-4.12 16.04-7.61 27.24z"], + "weibo": [512, 512, [], "f18a", "M407 177.6c7.6-24-13.4-46.8-37.4-41.7-22 4.8-28.8-28.1-7.1-32.8 50.1-10.9 92.3 37.1 76.5 84.8-6.8 21.2-38.8 10.8-32-10.3zM214.8 446.7C108.5 446.7 0 395.3 0 310.4c0-44.3 28-95.4 76.3-143.7C176 67 279.5 65.8 249.9 161c-4 13.1 12.3 5.7 12.3 6 79.5-33.6 140.5-16.8 114 51.4-3.7 9.4 1.1 10.9 8.3 13.1 135.7 42.3 34.8 215.2-169.7 215.2zm143.7-146.3c-5.4-55.7-78.5-94-163.4-85.7-84.8 8.6-148.8 60.3-143.4 116s78.5 94 163.4 85.7c84.8-8.6 148.8-60.3 143.4-116zM347.9 35.1c-25.9 5.6-16.8 43.7 8.3 38.3 72.3-15.2 134.8 52.8 111.7 124-7.4 24.2 29.1 37 37.4 12 31.9-99.8-55.1-195.9-157.4-174.3zm-78.5 311c-17.1 38.8-66.8 60-109.1 46.3-40.8-13.1-58-53.4-40.3-89.7 17.7-35.4 63.1-55.4 103.4-45.1 42 10.8 63.1 50.2 46 88.5zm-86.3-30c-12.9-5.4-30 .3-38 12.9-8.3 12.9-4.3 28 8.6 34 13.1 6 30.8.3 39.1-12.9 8-13.1 3.7-28.3-9.7-34zm32.6-13.4c-5.1-1.7-11.4.6-14.3 5.4-2.9 5.1-1.4 10.6 3.7 12.9 5.1 2 11.7-.3 14.6-5.4 2.8-5.2 1.1-10.9-4-12.9z"], + "weixin": [576, 512, [], "f1d7", "M385.2 167.6c6.4 0 12.6.3 18.8 1.1C387.4 90.3 303.3 32 207.7 32 100.5 32 13 104.8 13 197.4c0 53.4 29.3 97.5 77.9 131.6l-19.3 58.6 68-34.1c24.4 4.8 43.8 9.7 68.2 9.7 6.2 0 12.1-.3 18.3-.8-4-12.9-6.2-26.6-6.2-40.8-.1-84.9 72.9-154 165.3-154zm-104.5-52.9c14.5 0 24.2 9.7 24.2 24.4 0 14.5-9.7 24.2-24.2 24.2-14.8 0-29.3-9.7-29.3-24.2.1-14.7 14.6-24.4 29.3-24.4zm-136.4 48.6c-14.5 0-29.3-9.7-29.3-24.2 0-14.8 14.8-24.4 29.3-24.4 14.8 0 24.4 9.7 24.4 24.4 0 14.6-9.6 24.2-24.4 24.2zM563 319.4c0-77.9-77.9-141.3-165.4-141.3-92.7 0-165.4 63.4-165.4 141.3S305 460.7 397.6 460.7c19.3 0 38.9-5.1 58.6-9.9l53.4 29.3-14.8-48.6C534 402.1 563 363.2 563 319.4zm-219.1-24.5c-9.7 0-19.3-9.7-19.3-19.6 0-9.7 9.7-19.3 19.3-19.3 14.8 0 24.4 9.7 24.4 19.3 0 10-9.7 19.6-24.4 19.6zm107.1 0c-9.7 0-19.3-9.7-19.3-19.6 0-9.7 9.7-19.3 19.3-19.3 14.5 0 24.4 9.7 24.4 19.3.1 10-9.9 19.6-24.4 19.6z"], + "whatsapp": [448, 512, [], "f232", "M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z"], + "whatsapp-square": [448, 512, [], "f40c", "M224 122.8c-72.7 0-131.8 59.1-131.9 131.8 0 24.9 7 49.2 20.2 70.1l3.1 5-13.3 48.6 49.9-13.1 4.8 2.9c20.2 12 43.4 18.4 67.1 18.4h.1c72.6 0 133.3-59.1 133.3-131.8 0-35.2-15.2-68.3-40.1-93.2-25-25-58-38.7-93.2-38.7zm77.5 188.4c-3.3 9.3-19.1 17.7-26.7 18.8-12.6 1.9-22.4.9-47.5-9.9-39.7-17.2-65.7-57.2-67.7-59.8-2-2.6-16.2-21.5-16.2-41s10.2-29.1 13.9-33.1c3.6-4 7.9-5 10.6-5 2.6 0 5.3 0 7.6.1 2.4.1 5.7-.9 8.9 6.8 3.3 7.9 11.2 27.4 12.2 29.4s1.7 4.3.3 6.9c-7.6 15.2-15.7 14.6-11.6 21.6 15.3 26.3 30.6 35.4 53.9 47.1 4 2 6.3 1.7 8.6-1 2.3-2.6 9.9-11.6 12.5-15.5 2.6-4 5.3-3.3 8.9-2 3.6 1.3 23.1 10.9 27.1 12.9s6.6 3 7.6 4.6c.9 1.9.9 9.9-2.4 19.1zM400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM223.9 413.2c-26.6 0-52.7-6.7-75.8-19.3L64 416l22.5-82.2c-13.9-24-21.2-51.3-21.2-79.3C65.4 167.1 136.5 96 223.9 96c42.4 0 82.2 16.5 112.2 46.5 29.9 30 47.9 69.8 47.9 112.2 0 87.4-72.7 158.5-160.1 158.5z"], + "whmcs": [448, 512, [], "f40d", "M448 161v-21.3l-28.5-8.8-2.2-10.4 20.1-20.7L427 80.4l-29 7.5-7.2-7.5 7.5-28.2-19.1-11.6-21.3 21-10.7-3.2-7-26.4h-22.6l-6.2 26.4-12.1 3.2-19.7-21-19.4 11 8.1 27.7-8.1 8.4-28.5-7.5-11 19.1 20.7 21-2.9 10.4-28.5 7.8-.3 21.7 28.8 7.5 2.4 12.1-20.1 19.9 10.4 18.5 29.6-7.5 7.2 8.6-8.1 26.9 19.9 11.6 19.4-20.4 11.6 2.9 6.7 28.5 22.6.3 6.7-28.8 11.6-3.5 20.7 21.6 20.4-12.1-8.8-28 7.8-8.1 28.8 8.8 10.3-20.1-20.9-18.8 2.2-12.1 29.1-7zm-119.2 45.2c-31.3 0-56.8-25.4-56.8-56.8s25.4-56.8 56.8-56.8 56.8 25.4 56.8 56.8c0 31.5-25.4 56.8-56.8 56.8zm72.3 16.4l46.9 14.5V277l-55.1 13.4-4.1 22.7 38.9 35.3-19.2 37.9-54-16.7-14.6 15.2 16.7 52.5-38.3 22.7-38.9-40.5-21.7 6.6-12.6 54-42.4-.5-12.6-53.6-21.7-5.6-36.4 38.4-37.4-21.7 15.2-50.5-13.7-16.1-55.5 14.1-19.7-34.8 37.9-37.4-4.8-22.8-54-14.1.5-40.9L54 219.9l5.7-19.7-38.9-39.4L41.5 125l53.6 14.1 15.2-15.7-15.2-52 36.4-20.7 36.8 39.4L191 84l11.6-52H245l11.6 45.9L234 72l-6.3-1.7-3.3 5.7-11 19.1-3.3 5.6 4.6 4.6 17.2 17.4-.3 1-23.8 6.5-6.2 1.7-.1 6.4-.2 12.9C153.8 161.6 118 204 118 254.7c0 58.3 47.3 105.7 105.7 105.7 50.5 0 92.7-35.4 103.2-82.8l13.2.2 6.9.1 1.6-6.7 5.6-24 1.9-.6 17.1 17.8 4.7 4.9 5.8-3.4 20.4-12.1 5.8-3.5-2-6.5-6.8-21.2z"], + "wikipedia-w": [640, 512, [], "f266", "M640 51.2l-.3 12.2c-28.1.8-45 15.8-55.8 40.3-25 57.8-103.3 240-155.3 358.6H415l-81.9-193.1c-32.5 63.6-68.3 130-99.2 193.1-.3.3-15 0-15-.3C172 352.3 122.8 243.4 75.8 133.4 64.4 106.7 26.4 63.4.2 63.7c0-3.1-.3-10-.3-14.2h161.9v13.9c-19.2 1.1-52.8 13.3-43.3 34.2 21.9 49.7 103.6 240.3 125.6 288.6 15-29.7 57.8-109.2 75.3-142.8-13.9-28.3-58.6-133.9-72.8-160-9.7-17.8-36.1-19.4-55.8-19.7V49.8l142.5.3v13.1c-19.4.6-38.1 7.8-29.4 26.1 18.9 40 30.6 68.1 48.1 104.7 5.6-10.8 34.7-69.4 48.1-100.8 8.9-20.6-3.9-28.6-38.6-29.4.3-3.6 0-10.3.3-13.6 44.4-.3 111.1-.3 123.1-.6v13.6c-22.5.8-45.8 12.8-58.1 31.7l-59.2 122.8c6.4 16.1 63.3 142.8 69.2 156.7L559.2 91.8c-8.6-23.1-36.4-28.1-47.2-28.3V49.6l127.8 1.1.2.5z"], + "windows": [448, 512, [], "f17a", "M0 93.7l183.6-25.3v177.4H0V93.7zm0 324.6l183.6 25.3V268.4H0v149.9zm203.8 28L448 480V268.4H203.8v177.9zm0-380.6v180.1H448V32L203.8 65.7z"], + "wix": [640, 512, [], "f5cf", "M393.38 131.69c0 13.03 2.08 32.69-28.68 43.83-9.52 3.45-15.95 9.66-15.95 9.66 0-31 4.72-42.22 17.4-48.86 9.75-5.11 27.23-4.63 27.23-4.63zm-115.8 35.54l-34.24 132.66-28.48-108.57c-7.69-31.99-20.81-48.53-48.43-48.53-27.37 0-40.66 16.18-48.43 48.53L89.52 299.89 55.28 167.23C49.73 140.51 23.86 128.96 0 131.96l65.57 247.93s21.63 1.56 32.46-3.96c14.22-7.25 20.98-12.84 29.59-46.57 7.67-30.07 29.11-118.41 31.12-124.7 4.76-14.94 11.09-13.81 15.4 0 1.97 6.3 23.45 94.63 31.12 124.7 8.6 33.73 15.37 39.32 29.59 46.57 10.82 5.52 32.46 3.96 32.46 3.96l65.57-247.93c-24.42-3.07-49.82 8.93-55.3 35.27zm115.78 5.21s-4.1 6.34-13.46 11.57c-6.01 3.36-11.78 5.64-17.97 8.61-15.14 7.26-13.18 13.95-13.18 35.2v152.07s16.55 2.09 27.37-3.43c13.93-7.1 17.13-13.95 17.26-44.78V181.41l-.02.01v-8.98zm163.44 84.08L640 132.78s-35.11-5.98-52.5 9.85c-13.3 12.1-24.41 29.55-54.18 72.47-.47.73-6.25 10.54-13.07 0-29.29-42.23-40.8-60.29-54.18-72.47-17.39-15.83-52.5-9.85-52.5-9.85l83.2 123.74-82.97 123.36s36.57 4.62 53.95-11.21c11.49-10.46 17.58-20.37 52.51-70.72 6.81-10.52 12.57-.77 13.07 0 29.4 42.38 39.23 58.06 53.14 70.72 17.39 15.83 53.32 11.21 53.32 11.21L556.8 256.52z"], + "wizards-of-the-coast": [640, 512, [], "f730", "M219.19 345.69c-1.9 1.38-11.07 8.44-.26 23.57 4.64 6.42 14.11 12.79 21.73 6.55 6.5-4.88 7.35-12.92.26-23.04-5.47-7.76-14.28-12.88-21.73-7.08zm336.75 75.94c-.34 1.7-.55 1.67.79 0 2.09-4.19 4.19-10.21 4.98-19.9 3.14-38.49-40.33-71.49-101.34-78.03-54.73-6.02-124.38 9.17-188.8 60.49l-.26 1.57c2.62 4.98 4.98 10.74 3.4 21.21l.79.26c63.89-58.4 131.19-77.25 184.35-73.85 58.4 3.67 100.03 34.04 100.03 68.08-.01 9.96-2.63 15.72-3.94 20.17zM392.28 240.42c.79 7.07 4.19 10.21 9.17 10.47 5.5.26 9.43-2.62 10.47-6.55.79-3.4 2.09-29.85 2.09-29.85s-11.26 6.55-14.93 10.47c-3.66 3.68-7.33 8.39-6.8 15.46zm-50.02-151.1C137.75 89.32 13.1 226.8.79 241.2c-1.05.52-1.31.79.79 1.31 60.49 16.5 155.81 81.18 196.13 202.16l1.05.26c55.25-69.92 140.88-128.05 236.99-128.05 80.92 0 130.15 42.16 130.15 80.39 0 18.33-6.55 33.52-22.26 46.35 0 .96-.2.79.79.79 14.66-10.74 27.5-28.8 27.5-48.18 0-22.78-12.05-38.23-12.05-38.23 7.07 7.07 10.74 16.24 10.74 16.24 5.76-40.85 26.97-62.32 26.97-62.32-2.36-9.69-6.81-17.81-6.81-17.81 7.59 8.12 14.4 27.5 14.4 41.37 0 10.47-3.4 22.78-12.57 31.95l.26.52c8.12-4.98 16.5-16.76 16.5-37.97 0-15.71-4.71-25.92-4.71-25.92 5.76-5.24 11.26-9.17 15.97-11.78.79 3.4 2.09 9.69 2.36 14.93 0 1.05.79 1.83 1.05 0 .79-5.76-.26-16.24-.26-16.5 6.02-3.14 9.69-4.45 9.69-4.45C617.74 176 489.43 89.32 342.26 89.32zm-99.24 289.62c-11.06 8.99-24.2 4.08-30.64-4.19-7.45-9.58-6.76-24.09 4.19-32.47 14.85-11.35 27.08-.49 31.16 5.5.28.39 12.13 16.57-4.71 31.16zm2.09-136.43l9.43-17.81 11.78 70.96-12.57 6.02-24.62-28.8 14.14-26.71 3.67 4.45-1.83-8.11zm18.59 117.58l-.26-.26c2.05-4.1-2.5-6.61-17.54-31.69-1.31-2.36-3.14-2.88-4.45-2.62l-.26-.52c7.86-5.76 15.45-10.21 25.4-15.71l.52.26c1.31 1.83 2.09 2.88 3.4 4.71l-.26.52c-1.05-.26-2.36-.79-5.24.26-2.09.79-7.86 3.67-12.31 7.59v1.31c1.57 2.36 3.93 6.55 5.76 9.69h.26c10.05-6.28 7.56-4.55 11.52-7.86h.26c.52 1.83.52 1.83 1.83 5.5l-.26.26c-3.06.61-4.65.34-11.52 5.5v.26c9.46 17.02 11.01 16.75 12.57 15.97l.26.26c-2.34 1.59-6.27 4.21-9.68 6.57zm55.26-32.47c-3.14 1.57-6.02 2.88-9.95 4.98l-.26-.26c1.29-2.59 1.16-2.71-11.78-32.47l-.26-.26c-.15 0-8.9 3.65-9.95 7.33h-.52l-1.05-5.76.26-.52c7.29-4.56 25.53-11.64 27.76-12.57l.52.26 3.14 4.98-.26.52c-3.53-1.76-7.35.76-12.31 2.62v.26c12.31 32.01 12.67 30.64 14.66 30.64v.25zm44.77-16.5c-4.19 1.05-5.24 1.31-9.69 2.88l-.26-.26.52-4.45c-1.05-3.4-3.14-11.52-3.67-13.62l-.26-.26c-3.4.79-8.9 2.62-12.83 3.93l-.26.26c.79 2.62 3.14 9.95 4.19 13.88.79 2.36 1.83 2.88 2.88 3.14v.52c-3.67 1.05-7.07 2.62-10.21 3.93l-.26-.26c1.05-1.31 1.05-2.88.26-4.98-1.05-3.14-8.12-23.83-9.17-27.23-.52-1.83-1.57-3.14-2.62-3.14v-.52c3.14-1.05 6.02-2.09 10.74-3.4l.26.26-.26 4.71c1.31 3.93 2.36 7.59 3.14 9.69h.26c3.93-1.31 9.43-2.88 12.83-3.93l.26-.26-2.62-9.43c-.52-1.83-1.05-3.4-2.62-3.93v-.26c4.45-1.05 7.33-1.83 10.74-2.36l.26.26c-1.05 1.31-1.05 2.88-.52 4.45 1.57 6.28 4.71 20.43 6.28 26.45.54 2.62 1.85 3.41 2.63 3.93zm32.21-6.81l-.26.26c-4.71.52-14.14 2.36-22.52 4.19l-.26-.26.79-4.19c-1.57-7.86-3.4-18.59-4.98-26.19-.26-1.83-.79-2.88-2.62-3.67l.79-.52c9.17-1.57 20.16-2.36 24.88-2.62l.26.26c.52 2.36.79 3.14 1.57 5.5l-.26.26c-1.14-1.14-3.34-3.2-16.24-.79l-.26.26c.26 1.57 1.05 6.55 1.57 9.95l.26.26c9.52-1.68 4.76-.06 10.74-2.36h.26c0 1.57-.26 1.83-.26 5.24h-.26c-4.81-1.03-2.15-.9-10.21 0l-.26.26c.26 2.09 1.57 9.43 2.09 12.57l.26.26c1.15.38 14.21-.65 16.24-4.71h.26c-.53 2.38-1.05 4.21-1.58 6.04zm10.74-44.51c-4.45 2.36-8.12 2.88-11 2.88-.25.02-11.41 1.09-17.54-9.95-6.74-10.79-.98-25.2 5.5-31.69 8.8-8.12 23.35-10.1 28.54-17.02 8.03-10.33-13.04-22.31-29.59-5.76l-2.62-2.88 5.24-16.24c25.59-1.57 45.2-3.04 50.02 16.24.79 3.14 0 9.43-.26 12.05 0 2.62-1.83 18.85-2.09 23.04-.52 4.19-.79 18.33-.79 20.69.26 2.36.52 4.19 1.57 5.5 1.57 1.83 5.76 1.83 5.76 1.83l-.79 4.71c-11.82-1.07-10.28-.59-20.43-1.05-3.22-5.15-2.23-3.28-4.19-7.86 0 .01-4.19 3.94-7.33 5.51zm37.18 21.21c-6.35-10.58-19.82-7.16-21.73 5.5-2.63 17.08 14.3 19.79 20.69 10.21l.26.26c-.52 1.83-1.83 6.02-1.83 6.28l-.52.52c-10.3 6.87-28.5-2.5-25.66-18.59 1.94-10.87 14.44-18.93 28.8-9.95l.26.52c0 1.06-.27 3.41-.27 5.25zm5.77-87.73v-6.55c.69 0 19.65 3.28 27.76 7.33l-1.57 17.54s10.21-9.43 15.45-10.74c5.24-1.57 14.93 7.33 14.93 7.33l-11.26 11.26c-12.07-6.35-19.59-.08-20.69.79-5.29 38.72-8.6 42.17 4.45 46.09l-.52 4.71c-17.55-4.29-18.53-4.5-36.92-7.33l.79-4.71c7.25 0 7.48-5.32 7.59-6.81 0 0 4.98-53.16 4.98-55.25-.02-2.87-4.99-3.66-4.99-3.66zm10.99 114.44c-8.12-2.09-14.14-11-10.74-20.69 3.14-9.43 12.31-12.31 18.85-10.21 9.17 2.62 12.83 11.78 10.74 19.38-2.61 8.9-9.42 13.87-18.85 11.52zm42.16 9.69c-2.36-.52-7.07-2.36-8.64-2.88v-.26l1.57-1.83c.59-8.24.59-7.27.26-7.59-4.82-1.81-6.66-2.36-7.07-2.36-1.31 1.83-2.88 4.45-3.67 5.5l-.79 3.4v.26c-1.31-.26-3.93-1.31-6.02-1.57v-.26l2.62-1.83c3.4-4.71 9.95-14.14 13.88-20.16v-2.09l.52-.26c2.09.79 5.5 2.09 7.59 2.88.48.48.18-1.87-1.05 25.14-.24 1.81.02 2.6.8 3.91zm-4.71-89.82c11.25-18.27 30.76-16.19 34.04-3.4L539.7 198c2.34-6.25-2.82-9.9-4.45-11.26l1.83-3.67c12.22 10.37 16.38 13.97 22.52 20.43-25.91 73.07-30.76 80.81-24.62 84.32l-1.83 4.45c-6.37-3.35-8.9-4.42-17.81-8.64l2.09-6.81c-.26-.26-3.93 3.93-9.69 3.67-19.06-1.3-22.89-31.75-9.67-52.9zm29.33 79.34c0-5.71-6.34-7.89-7.86-5.24-1.31 2.09 1.05 4.98 2.88 8.38 1.57 2.62 2.62 6.28 1.05 9.43-2.64 6.34-12.4 5.31-15.45-.79 0-.7-.27.09 1.83-4.71l.79-.26c-.57 5.66 6.06 9.61 8.38 4.98 1.05-2.09-.52-5.5-2.09-8.38-1.57-2.62-3.67-6.28-1.83-9.69 2.72-5.06 11.25-4.47 14.66 2.36v.52l-2.36 3.4zm21.21 13.36c-1.96-3.27-.91-2.14-4.45-4.71h-.26c-2.36 4.19-5.76 10.47-8.64 16.24-1.31 2.36-1.05 3.4-.79 3.93l-.26.26-5.76-4.45.26-.26 2.09-1.31c3.14-5.76 6.55-12.05 9.17-17.02v-.26c-2.64-1.98-1.22-1.51-6.02-1.83v-.26l3.14-3.4h.26c3.67 2.36 9.95 6.81 12.31 8.9l.26.26-1.31 3.91zm27.23-44.26l-2.88-2.88c.79-2.36 1.83-4.98 2.09-7.59.75-9.74-11.52-11.84-11.52-4.98 0 4.98 7.86 19.38 7.86 27.76 0 10.21-5.76 15.71-13.88 16.5-8.38.79-20.16-10.47-20.16-10.47l4.98-14.4 2.88 2.09c-2.97 17.8 17.68 20.37 13.35 5.24-1.06-4.02-18.75-34.2 2.09-38.23 13.62-2.36 23.04 16.5 23.04 16.5l-7.85 10.46zm35.62-10.21c-11-30.38-60.49-127.53-191.95-129.62-53.42-1.05-94.27 15.45-132.76 37.97l85.63-9.17-91.39 20.69 25.14 19.64-3.93-16.5c7.5-1.71 39.15-8.45 66.77-8.9l-22.26 80.39c13.61-.7 18.97-8.98 19.64-22.78l4.98-1.05.26 26.71c-22.46 3.21-37.3 6.69-49.49 9.95l13.09-43.21-61.54-36.66 2.36 8.12 10.21 4.98c6.28 18.59 19.38 56.56 20.43 58.66 1.95 4.28 3.16 5.78 12.05 4.45l1.05 4.98c-16.08 4.86-23.66 7.61-39.02 14.4l-2.36-4.71c4.4-2.94 8.73-3.94 5.5-12.83-23.7-62.5-21.48-58.14-22.78-59.44l2.36-4.45 33.52 67.3c-3.84-11.87 1.68 1.69-32.99-78.82l-41.9 88.51 4.71-13.88-35.88-42.16 27.76 93.48-11.78 8.38C95 228.58 101.05 231.87 93.23 231.52c-5.5-.26-13.62 5.5-13.62 5.5L74.63 231c30.56-23.53 31.62-24.33 58.4-42.68l4.19 7.07s-5.76 4.19-7.86 7.07c-5.9 9.28 1.67 13.28 61.8 75.68l-18.85-58.92 39.8-10.21 25.66 30.64 4.45-12.31-4.98-24.62 13.09-3.4.52 3.14 3.67-10.47-94.27 29.33 11.26-4.98-13.62-42.42 17.28-9.17 30.11 36.14 28.54-13.09c-1.41-7.47-2.47-14.5-4.71-19.64l17.28 13.88 4.71-2.09-59.18-42.68 23.08 11.5c18.98-6.07 25.23-7.47 32.21-9.69l2.62 11c-12.55 12.55 1.43 16.82 6.55 19.38l-13.62-61.01 12.05 28.28c4.19-1.31 7.33-2.09 7.33-2.09l2.62 8.64s-3.14 1.05-6.28 2.09l8.9 20.95 33.78-65.73-20.69 61.01c42.42-24.09 81.44-36.66 131.98-35.88 67.04 1.05 167.33 40.85 199.8 139.83.78 2.1-.01 2.63-.79.27zM203.48 152.43s1.83-.52 4.19-1.31l9.43 7.59c-.4 0-3.44-.25-11.26 2.36l-2.36-8.64zm143.76 38.5c-1.57-.6-26.46-4.81-33.26 20.69l21.73 17.02 11.53-37.71zM318.43 67.07c-58.4 0-106.05 12.05-114.96 14.4v.79c8.38 2.09 14.4 4.19 21.21 11.78l1.57.26c6.55-1.83 48.97-13.88 110.24-13.88 180.16 0 301.67 116.79 301.67 223.37v9.95c0 1.31.79 2.62 1.05.52.52-2.09.79-8.64.79-19.64.26-83.79-96.63-227.55-321.57-227.55zm211.06 169.68c1.31-5.76 0-12.31-7.33-13.09-9.62-1.13-16.14 23.79-17.02 33.52-.79 5.5-1.31 14.93 6.02 14.93 4.68-.01 9.72-.91 18.33-35.36zm-61.53 42.95c-2.62-.79-9.43-.79-12.57 10.47-1.83 6.81.52 13.35 6.02 14.66 3.67 1.05 8.9.52 11.78-10.74 2.62-9.94-1.83-13.61-5.23-14.39zM491 300.65c1.83.52 3.14 1.05 5.76 1.83 0-1.83.52-8.38.79-12.05-1.05 1.31-5.5 8.12-6.55 9.95v.27z"], + "wodu": [640, 512, [], "e088", "M178.414 339.706H141.1L112.166 223.475h-.478L83.228 339.706H45.2L0 168.946H37.548L64.574 285.177h.478L94.707 168.946h35.157l29.178 117.667h.479L187.5 168.946h36.831zM271.4 212.713c38.984 0 64.1 25.828 64.1 65.291 0 39.222-25.111 65.05-64.1 65.05-38.743 0-63.855-25.828-63.855-65.05C207.547 238.541 232.659 212.713 271.4 212.713zm0 104.753c23.2 0 30.133-19.852 30.133-39.462 0-19.852-6.934-39.7-30.133-39.7-27.7 0-29.894 19.85-29.894 39.7C241.508 297.614 248.443 317.466 271.4 317.466zM435.084 323.922h-.478c-7.893 13.392-21.765 19.132-37.548 19.132-37.31 0-55.485-32.045-55.485-66.246 0-33.243 18.415-64.095 54.767-64.095 14.589 0 28.938 6.218 36.831 18.416h.24V168.946h33.96v170.76H435.084zM405.428 238.3c-22.24 0-29.894 19.134-29.894 39.463 0 19.371 8.848 39.7 29.894 39.7 22.482 0 29.178-19.613 29.178-39.94C434.606 257.436 427.432 238.3 405.428 238.3zM592.96 339.706H560.673V322.487h-.718c-8.609 13.87-23.436 20.567-37.786 20.567-36.113 0-45.2-20.328-45.2-50.941V216.061h33.959V285.9c0 20.329 5.979 30.372 21.765 30.372 18.415 0 26.306-10.283 26.306-35.393V216.061H592.96zM602.453 302.876H640v36.83H602.453z"], + "wolf-pack-battalion": [512, 512, [], "f514", "M267.73 471.53l10.56 15.84 5.28-12.32 5.28 7V512c21.06-7.92 21.11-66.86 25.51-97.21 4.62-31.89-.88-92.81 81.37-149.11-8.88-23.61-12-49.43-2.64-80.05C421 189 447 196.21 456.43 239.73l-30.35 8.36c11.15 23 17 46.76 13.2 72.14L412 313.18l-6.16 33.43-18.47-7-8.8 33.39-19.35-7 26.39 21.11 8.8-28.15L419 364.2l7-35.63 26.39 14.52c.25-20 7-58.06-8.8-84.45l26.39 5.28c4-22.07-2.38-39.21-7.92-56.74l22.43 9.68c-.44-25.07-29.94-56.79-61.58-58.5-20.22-1.09-56.74-25.17-54.1-51.9 2-19.87 17.45-42.62 43.11-49.7-44 36.51-9.68 67.3 5.28 73.46 4.4-11.44 17.54-69.08 0-130.2-40.39 22.87-89.65 65.1-93.2 147.79l-58 38.71-3.52 93.25L369.78 220l7 7-17.59 3.52-44 38.71-15.84-5.28-28.1 49.25-3.52 119.64 21.11 15.84-32.55 15.84-32.55-15.84 21.11-15.84-3.52-119.64-28.15-49.26-15.84 5.28-44-38.71-17.58-3.51 7-7 107.33 59.82-3.52-93.25-58.06-38.71C185 65.1 135.77 22.87 95.3 0c-17.54 61.12-4.4 118.76 0 130.2 15-6.16 49.26-36.95 5.28-73.46 25.66 7.08 41.15 29.83 43.11 49.7 2.63 26.74-33.88 50.81-54.1 51.9-31.65 1.72-61.15 33.44-61.59 58.51l22.43-9.68c-5.54 17.53-11.91 34.67-7.92 56.74l26.39-5.28c-15.76 26.39-9.05 64.43-8.8 84.45l26.39-14.52 7 35.63 24.63-5.28 8.8 28.15L153.35 366 134 373l-8.8-33.43-18.47 7-6.16-33.43-27.27 7c-3.82-25.38 2-49.1 13.2-72.14l-30.35-8.36c9.4-43.52 35.47-50.77 63.34-54.1 9.36 30.62 6.24 56.45-2.64 80.05 82.25 56.3 76.75 117.23 81.37 149.11 4.4 30.35 4.45 89.29 25.51 97.21v-29.83l5.28-7 5.28 12.32 10.56-15.84 11.44 21.11 11.43-21.1zm79.17-95L331.06 366c7.47-4.36 13.76-8.42 19.35-12.32-.6 7.22-.27 13.84-3.51 22.84zm28.15-49.26c-.4 10.94-.9 21.66-1.76 31.67-7.85-1.86-15.57-3.8-21.11-7 8.24-7.94 15.55-16.32 22.87-24.68zm24.63 5.28c0-13.43-2.05-24.21-5.28-33.43a235 235 0 0 1-18.47 27.27zm3.52-80.94c19.44 12.81 27.8 33.66 29.91 56.3-12.32-4.53-24.63-9.31-36.95-10.56 5.06-12 6.65-28.14 7-45.74zm-1.76-45.74c.81 14.3 1.84 28.82 1.76 42.23 19.22-8.11 29.78-9.72 44-14.08-10.61-18.96-27.2-25.53-45.76-28.16zM165.68 376.52L181.52 366c-7.47-4.36-13.76-8.42-19.35-12.32.6 7.26.27 13.88 3.51 22.88zm-28.15-49.26c.4 10.94.9 21.66 1.76 31.67 7.85-1.86 15.57-3.8 21.11-7-8.24-7.93-15.55-16.31-22.87-24.67zm-24.64 5.28c0-13.43 2-24.21 5.28-33.43a235 235 0 0 0 18.47 27.27zm-3.52-80.94c-19.44 12.81-27.8 33.66-29.91 56.3 12.32-4.53 24.63-9.31 37-10.56-5-12-6.65-28.14-7-45.74zm1.76-45.74c-.81 14.3-1.84 28.82-1.76 42.23-19.22-8.11-29.78-9.72-44-14.08 10.63-18.95 27.23-25.52 45.76-28.15z"], + "wordpress": [512, 512, [], "f19a", "M61.7 169.4l101.5 278C92.2 413 43.3 340.2 43.3 256c0-30.9 6.6-60.1 18.4-86.6zm337.9 75.9c0-26.3-9.4-44.5-17.5-58.7-10.8-17.5-20.9-32.4-20.9-49.9 0-19.6 14.8-37.8 35.7-37.8.9 0 1.8.1 2.8.2-37.9-34.7-88.3-55.9-143.7-55.9-74.3 0-139.7 38.1-177.8 95.9 5 .2 9.7.3 13.7.3 22.2 0 56.7-2.7 56.7-2.7 11.5-.7 12.8 16.2 1.4 17.5 0 0-11.5 1.3-24.3 2l77.5 230.4L249.8 247l-33.1-90.8c-11.5-.7-22.3-2-22.3-2-11.5-.7-10.1-18.2 1.3-17.5 0 0 35.1 2.7 56 2.7 22.2 0 56.7-2.7 56.7-2.7 11.5-.7 12.8 16.2 1.4 17.5 0 0-11.5 1.3-24.3 2l76.9 228.7 21.2-70.9c9-29.4 16-50.5 16-68.7zm-139.9 29.3l-63.8 185.5c19.1 5.6 39.2 8.7 60.1 8.7 24.8 0 48.5-4.3 70.6-12.1-.6-.9-1.1-1.9-1.5-2.9l-65.4-179.2zm183-120.7c.9 6.8 1.4 14 1.4 21.9 0 21.6-4 45.8-16.2 76.2l-65 187.9C426.2 403 468.7 334.5 468.7 256c0-37-9.4-71.8-26-102.1zM504 256c0 136.8-111.3 248-248 248C119.2 504 8 392.7 8 256 8 119.2 119.2 8 256 8c136.7 0 248 111.2 248 248zm-11.4 0c0-130.5-106.2-236.6-236.6-236.6C125.5 19.4 19.4 125.5 19.4 256S125.6 492.6 256 492.6c130.5 0 236.6-106.1 236.6-236.6z"], + "wordpress-simple": [512, 512, [], "f411", "M256 8C119.3 8 8 119.2 8 256c0 136.7 111.3 248 248 248s248-111.3 248-248C504 119.2 392.7 8 256 8zM33 256c0-32.3 6.9-63 19.3-90.7l106.4 291.4C84.3 420.5 33 344.2 33 256zm223 223c-21.9 0-43-3.2-63-9.1l66.9-194.4 68.5 187.8c.5 1.1 1 2.1 1.6 3.1-23.1 8.1-48 12.6-74 12.6zm30.7-327.5c13.4-.7 25.5-2.1 25.5-2.1 12-1.4 10.6-19.1-1.4-18.4 0 0-36.1 2.8-59.4 2.8-21.9 0-58.7-2.8-58.7-2.8-12-.7-13.4 17.7-1.4 18.4 0 0 11.4 1.4 23.4 2.1l34.7 95.2L200.6 393l-81.2-241.5c13.4-.7 25.5-2.1 25.5-2.1 12-1.4 10.6-19.1-1.4-18.4 0 0-36.1 2.8-59.4 2.8-4.2 0-9.1-.1-14.4-.3C109.6 73 178.1 33 256 33c58 0 110.9 22.2 150.6 58.5-1-.1-1.9-.2-2.9-.2-21.9 0-37.4 19.1-37.4 39.6 0 18.4 10.6 33.9 21.9 52.3 8.5 14.8 18.4 33.9 18.4 61.5 0 19.1-7.3 41.2-17 72.1l-22.2 74.3-80.7-239.6zm81.4 297.2l68.1-196.9c12.7-31.8 17-57.2 17-79.9 0-8.2-.5-15.8-1.5-22.9 17.4 31.8 27.3 68.2 27.3 107 0 82.3-44.6 154.1-110.9 192.7z"], + "wpbeginner": [512, 512, [], "f297", "M462.799 322.374C519.01 386.682 466.961 480 370.944 480c-39.602 0-78.824-17.687-100.142-50.04-6.887.356-22.702.356-29.59 0C219.848 462.381 180.588 480 141.069 480c-95.49 0-148.348-92.996-91.855-157.626C-29.925 190.523 80.479 32 256.006 32c175.632 0 285.87 158.626 206.793 290.374zm-339.647-82.972h41.529v-58.075h-41.529v58.075zm217.18 86.072v-23.839c-60.506 20.915-132.355 9.198-187.589-33.971l.246 24.897c51.101 46.367 131.746 57.875 187.343 32.913zm-150.753-86.072h166.058v-58.075H189.579v58.075z"], + "wpexplorer": [512, 512, [], "f2de", "M512 256c0 141.2-114.7 256-256 256C114.8 512 0 397.3 0 256S114.7 0 256 0s256 114.7 256 256zm-32 0c0-123.2-100.3-224-224-224C132.5 32 32 132.5 32 256s100.5 224 224 224 224-100.5 224-224zM160.9 124.6l86.9 37.1-37.1 86.9-86.9-37.1 37.1-86.9zm110 169.1l46.6 94h-14.6l-50-100-48.9 100h-14l51.1-106.9-22.3-9.4 6-14 68.6 29.1-6 14.3-16.5-7.1zm-11.8-116.3l68.6 29.4-29.4 68.3L230 246l29.1-68.6zm80.3 42.9l54.6 23.1-23.4 54.3-54.3-23.1 23.1-54.3z"], + "wpforms": [448, 512, [], "f298", "M448 75.2v361.7c0 24.3-19 43.2-43.2 43.2H43.2C19.3 480 0 461.4 0 436.8V75.2C0 51.1 18.8 32 43.2 32h361.7c24 0 43.1 18.8 43.1 43.2zm-37.3 361.6V75.2c0-3-2.6-5.8-5.8-5.8h-9.3L285.3 144 224 94.1 162.8 144 52.5 69.3h-9.3c-3.2 0-5.8 2.8-5.8 5.8v361.7c0 3 2.6 5.8 5.8 5.8h361.7c3.2.1 5.8-2.7 5.8-5.8zM150.2 186v37H76.7v-37h73.5zm0 74.4v37.3H76.7v-37.3h73.5zm11.1-147.3l54-43.7H96.8l64.5 43.7zm210 72.9v37h-196v-37h196zm0 74.4v37.3h-196v-37.3h196zm-84.6-147.3l64.5-43.7H232.8l53.9 43.7zM371.3 335v37.3h-99.4V335h99.4z"], + "wpressr": [496, 512, [], "f3e4", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm171.33 158.6c-15.18 34.51-30.37 69.02-45.63 103.5-2.44 5.51-6.89 8.24-12.97 8.24-23.02-.01-46.03.06-69.05-.05-5.12-.03-8.25 1.89-10.34 6.72-10.19 23.56-20.63 47-30.95 70.5-1.54 3.51-4.06 5.29-7.92 5.29-45.94-.01-91.87-.02-137.81 0-3.13 0-5.63-1.15-7.72-3.45-11.21-12.33-22.46-24.63-33.68-36.94-2.69-2.95-2.79-6.18-1.21-9.73 8.66-19.54 17.27-39.1 25.89-58.66 12.93-29.35 25.89-58.69 38.75-88.08 1.7-3.88 4.28-5.68 8.54-5.65 14.24.1 28.48.02 42.72.05 6.24.01 9.2 4.84 6.66 10.59-13.6 30.77-27.17 61.55-40.74 92.33-5.72 12.99-11.42 25.99-17.09 39-3.91 8.95 7.08 11.97 10.95 5.6.23-.37-1.42 4.18 30.01-67.69 1.36-3.1 3.41-4.4 6.77-4.39 15.21.08 30.43.02 45.64.04 5.56.01 7.91 3.64 5.66 8.75-8.33 18.96-16.71 37.9-24.98 56.89-4.98 11.43 8.08 12.49 11.28 5.33.04-.08 27.89-63.33 32.19-73.16 2.02-4.61 5.44-6.51 10.35-6.5 26.43.05 52.86 0 79.29.05 12.44.02 13.93-13.65 3.9-13.64-25.26.03-50.52.02-75.78.02-6.27 0-7.84-2.47-5.27-8.27 5.78-13.06 11.59-26.11 17.3-39.21 1.73-3.96 4.52-5.79 8.84-5.78 23.09.06 25.98.02 130.78.03 6.08-.01 8.03 2.79 5.62 8.27z"], + "xbox": [512, 512, [], "f412", "M369.9 318.2c44.3 54.3 64.7 98.8 54.4 118.7-7.9 15.1-56.7 44.6-92.6 55.9-29.6 9.3-68.4 13.3-100.4 10.2-38.2-3.7-76.9-17.4-110.1-39C93.3 445.8 87 438.3 87 423.4c0-29.9 32.9-82.3 89.2-142.1 32-33.9 76.5-73.7 81.4-72.6 9.4 2.1 84.3 75.1 112.3 109.5zM188.6 143.8c-29.7-26.9-58.1-53.9-86.4-63.4-15.2-5.1-16.3-4.8-28.7 8.1-29.2 30.4-53.5 79.7-60.3 122.4-5.4 34.2-6.1 43.8-4.2 60.5 5.6 50.5 17.3 85.4 40.5 120.9 9.5 14.6 12.1 17.3 9.3 9.9-4.2-11-.3-37.5 9.5-64 14.3-39 53.9-112.9 120.3-194.4zm311.6 63.5C483.3 127.3 432.7 77 425.6 77c-7.3 0-24.2 6.5-36 13.9-23.3 14.5-41 31.4-64.3 52.8C367.7 197 427.5 283.1 448.2 346c6.8 20.7 9.7 41.1 7.4 52.3-1.7 8.5-1.7 8.5 1.4 4.6 6.1-7.7 19.9-31.3 25.4-43.5 7.4-16.2 15-40.2 18.6-58.7 4.3-22.5 3.9-70.8-.8-93.4zM141.3 43C189 40.5 251 77.5 255.6 78.4c.7.1 10.4-4.2 21.6-9.7 63.9-31.1 94-25.8 107.4-25.2-63.9-39.3-152.7-50-233.9-11.7-23.4 11.1-24 11.9-9.4 11.2z"], + "xing": [384, 512, [], "f168", "M162.7 210c-1.8 3.3-25.2 44.4-70.1 123.5-4.9 8.3-10.8 12.5-17.7 12.5H9.8c-7.7 0-12.1-7.5-8.5-14.4l69-121.3c.2 0 .2-.1 0-.3l-43.9-75.6c-4.3-7.8.3-14.1 8.5-14.1H100c7.3 0 13.3 4.1 18 12.2l44.7 77.5zM382.6 46.1l-144 253v.3L330.2 466c3.9 7.1.2 14.1-8.5 14.1h-65.2c-7.6 0-13.6-4-18-12.2l-92.4-168.5c3.3-5.8 51.5-90.8 144.8-255.2 4.6-8.1 10.4-12.2 17.5-12.2h65.7c8 0 12.3 6.7 8.5 14.1z"], + "xing-square": [448, 512, [], "f169", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM140.4 320.2H93.8c-5.5 0-8.7-5.3-6-10.3l49.3-86.7c.1 0 .1-.1 0-.2l-31.4-54c-3-5.6.2-10.1 6-10.1h46.6c5.2 0 9.5 2.9 12.9 8.7l31.9 55.3c-1.3 2.3-18 31.7-50.1 88.2-3.5 6.2-7.7 9.1-12.6 9.1zm219.7-214.1L257.3 286.8v.2l65.5 119c2.8 5.1.1 10.1-6 10.1h-46.6c-5.5 0-9.7-2.9-12.9-8.7l-66-120.3c2.3-4.1 36.8-64.9 103.4-182.3 3.3-5.8 7.4-8.7 12.5-8.7h46.9c5.7-.1 8.8 4.7 6 10z"], + "y-combinator": [448, 512, [], "f23b", "M448 32v448H0V32h448zM236 287.5L313.5 142h-32.7L235 233c-4.7 9.3-9 18.3-12.8 26.8L210 233l-45.2-91h-35l76.7 143.8v94.5H236v-92.8z"], + "yahoo": [512, 512, [], "f19e", "M223.69,141.06,167,284.23,111,141.06H14.93L120.76,390.19,82.19,480h94.17L317.27,141.06Zm105.4,135.79a58.22,58.22,0,1,0,58.22,58.22A58.22,58.22,0,0,0,329.09,276.85ZM394.65,32l-93,223.47H406.44L499.07,32Z"], + "yammer": [512, 512, [], "f840", "M421.78 152.17A23.06 23.06 0 0 0 400.9 112c-.83.43-1.71.9-2.63 1.4-15.25 8.4-118.33 80.62-106.69 88.77s82.04-23.61 130.2-50zm0 217.17c-48.16-26.38-118.64-58.1-130.2-50s91.42 80.35 106.69 88.74c.92.51 1.8 1 2.63 1.41a23.07 23.07 0 0 0 20.88-40.15zM464.21 237c-.95 0-1.95-.06-3-.06-17.4 0-142.52 13.76-136.24 26.51s83.3 18.74 138.21 18.76a23 23 0 0 0 1-45.21zM31 96.65a24.88 24.88 0 0 1 46.14-18.4l81 205.06h1.21l77-203.53a23.52 23.52 0 0 1 44.45 15.27L171.2 368.44C152.65 415.66 134.08 448 77.91 448a139.67 139.67 0 0 1-23.81-1.95 21.31 21.31 0 0 1 6.9-41.77c.66.06 10.91.66 13.86.66 30.47 0 43.74-18.94 58.07-59.41z"], + "yandex": [256, 512, [], "f413", "M153.1 315.8L65.7 512H2l96-209.8c-45.1-22.9-75.2-64.4-75.2-141.1C22.7 53.7 90.8 0 171.7 0H254v512h-55.1V315.8h-45.8zm45.8-269.3h-29.4c-44.4 0-87.4 29.4-87.4 114.6 0 82.3 39.4 108.8 87.4 108.8h29.4V46.5z"], + "yandex-international": [320, 512, [], "f414", "M129.5 512V345.9L18.5 48h55.8l81.8 229.7L250.2 0h51.3L180.8 347.8V512h-51.3z"], + "yarn": [496, 512, [], "f7e3", "M393.9 345.2c-39 9.3-48.4 32.1-104 47.4 0 0-2.7 4-10.4 5.8-13.4 3.3-63.9 6-68.5 6.1-12.4.1-19.9-3.2-22-8.2-6.4-15.3 9.2-22 9.2-22-8.1-5-9-9.9-9.8-8.1-2.4 5.8-3.6 20.1-10.1 26.5-8.8 8.9-25.5 5.9-35.3.8-10.8-5.7.8-19.2.8-19.2s-5.8 3.4-10.5-3.6c-6-9.3-17.1-37.3 11.5-62-1.3-10.1-4.6-53.7 40.6-85.6 0 0-20.6-22.8-12.9-43.3 5-13.4 7-13.3 8.6-13.9 5.7-2.2 11.3-4.6 15.4-9.1 20.6-22.2 46.8-18 46.8-18s12.4-37.8 23.9-30.4c3.5 2.3 16.3 30.6 16.3 30.6s13.6-7.9 15.1-5c8.2 16 9.2 46.5 5.6 65.1-6.1 30.6-21.4 47.1-27.6 57.5-1.4 2.4 16.5 10 27.8 41.3 10.4 28.6 1.1 52.7 2.8 55.3.8 1.4 13.7.8 36.4-13.2 12.8-7.9 28.1-16.9 45.4-17 16.7-.5 17.6 19.2 4.9 22.2zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-79.3 75.2c-1.7-13.6-13.2-23-28-22.8-22 .3-40.5 11.7-52.8 19.2-4.8 3-8.9 5.2-12.4 6.8 3.1-44.5-22.5-73.1-28.7-79.4 7.8-11.3 18.4-27.8 23.4-53.2 4.3-21.7 3-55.5-6.9-74.5-1.6-3.1-7.4-11.2-21-7.4-9.7-20-13-22.1-15.6-23.8-1.1-.7-23.6-16.4-41.4 28-12.2.9-31.3 5.3-47.5 22.8-2 2.2-5.9 3.8-10.1 5.4h.1c-8.4 3-12.3 9.9-16.9 22.3-6.5 17.4.2 34.6 6.8 45.7-17.8 15.9-37 39.8-35.7 82.5-34 36-11.8 73-5.6 79.6-1.6 11.1 3.7 19.4 12 23.8 12.6 6.7 30.3 9.6 43.9 2.8 4.9 5.2 13.8 10.1 30 10.1 6.8 0 58-2.9 72.6-6.5 6.8-1.6 11.5-4.5 14.6-7.1 9.8-3.1 36.8-12.3 62.2-28.7 18-11.7 24.2-14.2 37.6-17.4 12.9-3.2 21-15.1 19.4-28.2z"], + "yelp": [384, 512, [], "f1e9", "M42.9 240.32l99.62 48.61c19.2 9.4 16.2 37.51-4.5 42.71L30.5 358.45a22.79 22.79 0 0 1-28.21-19.6 197.16 197.16 0 0 1 9-85.32 22.8 22.8 0 0 1 31.61-13.21zm44 239.25a199.45 199.45 0 0 0 79.42 32.11A22.78 22.78 0 0 0 192.94 490l3.9-110.82c.7-21.3-25.5-31.91-39.81-16.1l-74.21 82.4a22.82 22.82 0 0 0 4.09 34.09zm145.34-109.92l58.81 94a22.93 22.93 0 0 0 34 5.5 198.36 198.36 0 0 0 52.71-67.61A23 23 0 0 0 364.17 370l-105.42-34.26c-20.31-6.5-37.81 15.8-26.51 33.91zm148.33-132.23a197.44 197.44 0 0 0-50.41-69.31 22.85 22.85 0 0 0-34 4.4l-62 91.92c-11.9 17.7 4.7 40.61 25.2 34.71L366 268.63a23 23 0 0 0 14.61-31.21zM62.11 30.18a22.86 22.86 0 0 0-9.9 32l104.12 180.44c11.7 20.2 42.61 11.9 42.61-11.4V22.88a22.67 22.67 0 0 0-24.5-22.8 320.37 320.37 0 0 0-112.33 30.1z"], + "yoast": [448, 512, [], "f2b1", "M91.3 76h186l-7 18.9h-179c-39.7 0-71.9 31.6-71.9 70.3v205.4c0 35.4 24.9 70.3 84 70.3V460H91.3C41.2 460 0 419.8 0 370.5V165.2C0 115.9 40.7 76 91.3 76zm229.1-56h66.5C243.1 398.1 241.2 418.9 202.2 459.3c-20.8 21.6-49.3 31.7-78.3 32.7v-51.1c49.2-7.7 64.6-49.9 64.6-75.3 0-20.1.6-12.6-82.1-223.2h61.4L218.2 299 320.4 20zM448 161.5V460H234c6.6-9.6 10.7-16.3 12.1-19.4h182.5V161.5c0-32.5-17.1-51.9-48.2-62.9l6.7-17.6c41.7 13.6 60.9 43.1 60.9 80.5z"], + "youtube": [576, 512, [], "f167", "M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"], + "youtube-square": [448, 512, [], "f431", "M186.8 202.1l95.2 54.1-95.2 54.1V202.1zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-42 176.3s0-59.6-7.6-88.2c-4.2-15.8-16.5-28.2-32.2-32.4C337.9 128 224 128 224 128s-113.9 0-142.2 7.7c-15.7 4.2-28 16.6-32.2 32.4-7.6 28.5-7.6 88.2-7.6 88.2s0 59.6 7.6 88.2c4.2 15.8 16.5 27.7 32.2 31.9C110.1 384 224 384 224 384s113.9 0 142.2-7.7c15.7-4.2 28-16.1 32.2-31.9 7.6-28.5 7.6-88.1 7.6-88.1z"], + "zhihu": [640, 512, [], "f63f", "M170.54 148.13v217.54l23.43.01 7.71 26.37 42.01-26.37h49.53V148.13H170.54zm97.75 193.93h-27.94l-27.9 17.51-5.08-17.47-11.9-.04V171.75h72.82v170.31zm-118.46-94.39H97.5c1.74-27.1 2.2-51.59 2.2-73.46h51.16s1.97-22.56-8.58-22.31h-88.5c3.49-13.12 7.87-26.66 13.12-40.67 0 0-24.07 0-32.27 21.57-3.39 8.9-13.21 43.14-30.7 78.12 5.89-.64 25.37-1.18 36.84-22.21 2.11-5.89 2.51-6.66 5.14-14.53h28.87c0 10.5-1.2 66.88-1.68 73.44H20.83c-11.74 0-15.56 23.62-15.56 23.62h65.58C66.45 321.1 42.83 363.12 0 396.34c20.49 5.85 40.91-.93 51-9.9 0 0 22.98-20.9 35.59-69.25l53.96 64.94s7.91-26.89-1.24-39.99c-7.58-8.92-28.06-33.06-36.79-41.81L87.9 311.95c4.36-13.98 6.99-27.55 7.87-40.67h61.65s-.09-23.62-7.59-23.62v.01zm412.02-1.6c20.83-25.64 44.98-58.57 44.98-58.57s-18.65-14.8-27.38-4.06c-6 8.15-36.83 48.2-36.83 48.2l19.23 14.43zm-150.09-59.09c-9.01-8.25-25.91 2.13-25.91 2.13s39.52 55.04 41.12 57.45l19.46-13.73s-25.67-37.61-34.66-45.86h-.01zM640 258.35c-19.78 0-130.91.93-131.06.93v-101c4.81 0 12.42-.4 22.85-1.2 40.88-2.41 70.13-4 87.77-4.81 0 0 12.22-27.19-.59-33.44-3.07-1.18-23.17 4.58-23.17 4.58s-165.22 16.49-232.36 18.05c1.6 8.82 7.62 17.08 15.78 19.55 13.31 3.48 22.69 1.7 49.15.89 24.83-1.6 43.68-2.43 56.51-2.43v99.81H351.41s2.82 22.31 25.51 22.85h107.94v70.92c0 13.97-11.19 21.99-24.48 21.12-14.08.11-26.08-1.15-41.69-1.81 1.99 3.97 6.33 14.39 19.31 21.84 9.88 4.81 16.17 6.57 26.02 6.57 29.56 0 45.67-17.28 44.89-45.31v-73.32h122.36c9.68 0 8.7-23.78 8.7-23.78l.03-.01z"] + }; + + bunker(function () { + defineIcons('fab', icons); + }); + +}()); diff --git a/admin/css/vendor/fontawesome-free/js/brands.min.js b/admin/css/vendor/fontawesome-free/js/brands.min.js new file mode 100644 index 0000000..c79d704 --- /dev/null +++ b/admin/css/vendor/fontawesome-free/js/brands.min.js @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +!function(){"use strict";var c={},l={};try{"undefined"!=typeof window&&(c=window),"undefined"!=typeof document&&(l=document)}catch(c){}var z=(c.navigator||{}).userAgent,h=void 0===z?"":z,m=c,v=l,a=(m.document,!!v.documentElement&&!!v.head&&"function"==typeof v.addEventListener&&v.createElement,~h.indexOf("MSIE")||h.indexOf("Trident/"),"___FONT_AWESOME___"),M=function(){try{return!0}catch(c){return!1}}();var s=m||{};s[a]||(s[a]={}),s[a].styles||(s[a].styles={}),s[a].hooks||(s[a].hooks={}),s[a].shims||(s[a].shims=[]);var H=s[a];function V(c,h){var l=(2 0) { + console.info("%cConflict".concat(conflictsCount > 1 ? 's' : '', " found:"), 'color: darkred; font-size: large'); + var data = {}; + + for (var _key in nodesTested.conflict) { + var item = nodesTested.conflict[_key]; + data[_key] = { + 'tagName': item.tagName, + 'src/href': item.src || item.href || 'n/a', + 'innerText excerpt': item.innerText && item.innerText !== '' ? item.innerText.slice(0, 200) + '...' : '(empty)' + }; + } + + console.table(data); + } + + var noConflictsCount = Object.keys(nodesTested.noConflict).length; + + if (noConflictsCount > 0) { + console.info("%cNo conflict".concat(noConflictsCount > 1 ? 's' : '', " found with ").concat(noConflictsCount == 1 ? 'this' : 'these', ":"), 'color: green; font-size: large'); + var _data = {}; + + for (var _key2 in nodesTested.noConflict) { + var _item = nodesTested.noConflict[_key2]; + _data[_key2] = { + 'tagName': _item.tagName, + 'src/href': _item.src || _item.href || 'n/a', + 'innerText excerpt': _item.innerText && _item.innerText !== '' ? _item.innerText.slice(0, 200) + '...' : '(empty)' + }; + } + + console.table(_data); + } + + var timeOutCount = Object.keys(timedOutTests).length; + + if (timeOutCount > 0) { + console.info("%cLeftovers--we timed out before collecting test results for ".concat(timeOutCount == 1 ? 'this' : 'these', ":"), 'color: blue; font-size: large'); + var _data2 = {}; + + for (var _key3 in timedOutTests) { + var _item2 = timedOutTests[_key3]; + _data2[_key3] = { + 'tagName': _item2.tagName, + 'src/href': _item2.src || _item2.href || 'n/a', + 'innerText excerpt': _item2.innerText && _item2.innerText !== '' ? _item2.innerText.slice(0, 200) + '...' : '(empty)' + }; + } + + console.table(_data2); + } + } + + var commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {}; + + function createCommonjsModule(fn, module) { + return module = { exports: {} }, fn(module, module.exports), module.exports; + } + + var md5 = createCommonjsModule(function (module) { + + (function ($) { + /** + * Add integers, wrapping at 2^32. + * This uses 16-bit operations internally to work around bugs in interpreters. + * + * @param {number} x First integer + * @param {number} y Second integer + * @returns {number} Sum + */ + + function safeAdd(x, y) { + var lsw = (x & 0xffff) + (y & 0xffff); + var msw = (x >> 16) + (y >> 16) + (lsw >> 16); + return msw << 16 | lsw & 0xffff; + } + /** + * Bitwise rotate a 32-bit number to the left. + * + * @param {number} num 32-bit number + * @param {number} cnt Rotation count + * @returns {number} Rotated number + */ + + + function bitRotateLeft(num, cnt) { + return num << cnt | num >>> 32 - cnt; + } + /** + * Basic operation the algorithm uses. + * + * @param {number} q q + * @param {number} a a + * @param {number} b b + * @param {number} x x + * @param {number} s s + * @param {number} t t + * @returns {number} Result + */ + + + function md5cmn(q, a, b, x, s, t) { + return safeAdd(bitRotateLeft(safeAdd(safeAdd(a, q), safeAdd(x, t)), s), b); + } + /** + * Basic operation the algorithm uses. + * + * @param {number} a a + * @param {number} b b + * @param {number} c c + * @param {number} d d + * @param {number} x x + * @param {number} s s + * @param {number} t t + * @returns {number} Result + */ + + + function md5ff(a, b, c, d, x, s, t) { + return md5cmn(b & c | ~b & d, a, b, x, s, t); + } + /** + * Basic operation the algorithm uses. + * + * @param {number} a a + * @param {number} b b + * @param {number} c c + * @param {number} d d + * @param {number} x x + * @param {number} s s + * @param {number} t t + * @returns {number} Result + */ + + + function md5gg(a, b, c, d, x, s, t) { + return md5cmn(b & d | c & ~d, a, b, x, s, t); + } + /** + * Basic operation the algorithm uses. + * + * @param {number} a a + * @param {number} b b + * @param {number} c c + * @param {number} d d + * @param {number} x x + * @param {number} s s + * @param {number} t t + * @returns {number} Result + */ + + + function md5hh(a, b, c, d, x, s, t) { + return md5cmn(b ^ c ^ d, a, b, x, s, t); + } + /** + * Basic operation the algorithm uses. + * + * @param {number} a a + * @param {number} b b + * @param {number} c c + * @param {number} d d + * @param {number} x x + * @param {number} s s + * @param {number} t t + * @returns {number} Result + */ + + + function md5ii(a, b, c, d, x, s, t) { + return md5cmn(c ^ (b | ~d), a, b, x, s, t); + } + /** + * Calculate the MD5 of an array of little-endian words, and a bit length. + * + * @param {Array} x Array of little-endian words + * @param {number} len Bit length + * @returns {Array} MD5 Array + */ + + + function binlMD5(x, len) { + /* append padding */ + x[len >> 5] |= 0x80 << len % 32; + x[(len + 64 >>> 9 << 4) + 14] = len; + var i; + var olda; + var oldb; + var oldc; + var oldd; + var a = 1732584193; + var b = -271733879; + var c = -1732584194; + var d = 271733878; + + for (i = 0; i < x.length; i += 16) { + olda = a; + oldb = b; + oldc = c; + oldd = d; + a = md5ff(a, b, c, d, x[i], 7, -680876936); + d = md5ff(d, a, b, c, x[i + 1], 12, -389564586); + c = md5ff(c, d, a, b, x[i + 2], 17, 606105819); + b = md5ff(b, c, d, a, x[i + 3], 22, -1044525330); + a = md5ff(a, b, c, d, x[i + 4], 7, -176418897); + d = md5ff(d, a, b, c, x[i + 5], 12, 1200080426); + c = md5ff(c, d, a, b, x[i + 6], 17, -1473231341); + b = md5ff(b, c, d, a, x[i + 7], 22, -45705983); + a = md5ff(a, b, c, d, x[i + 8], 7, 1770035416); + d = md5ff(d, a, b, c, x[i + 9], 12, -1958414417); + c = md5ff(c, d, a, b, x[i + 10], 17, -42063); + b = md5ff(b, c, d, a, x[i + 11], 22, -1990404162); + a = md5ff(a, b, c, d, x[i + 12], 7, 1804603682); + d = md5ff(d, a, b, c, x[i + 13], 12, -40341101); + c = md5ff(c, d, a, b, x[i + 14], 17, -1502002290); + b = md5ff(b, c, d, a, x[i + 15], 22, 1236535329); + a = md5gg(a, b, c, d, x[i + 1], 5, -165796510); + d = md5gg(d, a, b, c, x[i + 6], 9, -1069501632); + c = md5gg(c, d, a, b, x[i + 11], 14, 643717713); + b = md5gg(b, c, d, a, x[i], 20, -373897302); + a = md5gg(a, b, c, d, x[i + 5], 5, -701558691); + d = md5gg(d, a, b, c, x[i + 10], 9, 38016083); + c = md5gg(c, d, a, b, x[i + 15], 14, -660478335); + b = md5gg(b, c, d, a, x[i + 4], 20, -405537848); + a = md5gg(a, b, c, d, x[i + 9], 5, 568446438); + d = md5gg(d, a, b, c, x[i + 14], 9, -1019803690); + c = md5gg(c, d, a, b, x[i + 3], 14, -187363961); + b = md5gg(b, c, d, a, x[i + 8], 20, 1163531501); + a = md5gg(a, b, c, d, x[i + 13], 5, -1444681467); + d = md5gg(d, a, b, c, x[i + 2], 9, -51403784); + c = md5gg(c, d, a, b, x[i + 7], 14, 1735328473); + b = md5gg(b, c, d, a, x[i + 12], 20, -1926607734); + a = md5hh(a, b, c, d, x[i + 5], 4, -378558); + d = md5hh(d, a, b, c, x[i + 8], 11, -2022574463); + c = md5hh(c, d, a, b, x[i + 11], 16, 1839030562); + b = md5hh(b, c, d, a, x[i + 14], 23, -35309556); + a = md5hh(a, b, c, d, x[i + 1], 4, -1530992060); + d = md5hh(d, a, b, c, x[i + 4], 11, 1272893353); + c = md5hh(c, d, a, b, x[i + 7], 16, -155497632); + b = md5hh(b, c, d, a, x[i + 10], 23, -1094730640); + a = md5hh(a, b, c, d, x[i + 13], 4, 681279174); + d = md5hh(d, a, b, c, x[i], 11, -358537222); + c = md5hh(c, d, a, b, x[i + 3], 16, -722521979); + b = md5hh(b, c, d, a, x[i + 6], 23, 76029189); + a = md5hh(a, b, c, d, x[i + 9], 4, -640364487); + d = md5hh(d, a, b, c, x[i + 12], 11, -421815835); + c = md5hh(c, d, a, b, x[i + 15], 16, 530742520); + b = md5hh(b, c, d, a, x[i + 2], 23, -995338651); + a = md5ii(a, b, c, d, x[i], 6, -198630844); + d = md5ii(d, a, b, c, x[i + 7], 10, 1126891415); + c = md5ii(c, d, a, b, x[i + 14], 15, -1416354905); + b = md5ii(b, c, d, a, x[i + 5], 21, -57434055); + a = md5ii(a, b, c, d, x[i + 12], 6, 1700485571); + d = md5ii(d, a, b, c, x[i + 3], 10, -1894986606); + c = md5ii(c, d, a, b, x[i + 10], 15, -1051523); + b = md5ii(b, c, d, a, x[i + 1], 21, -2054922799); + a = md5ii(a, b, c, d, x[i + 8], 6, 1873313359); + d = md5ii(d, a, b, c, x[i + 15], 10, -30611744); + c = md5ii(c, d, a, b, x[i + 6], 15, -1560198380); + b = md5ii(b, c, d, a, x[i + 13], 21, 1309151649); + a = md5ii(a, b, c, d, x[i + 4], 6, -145523070); + d = md5ii(d, a, b, c, x[i + 11], 10, -1120210379); + c = md5ii(c, d, a, b, x[i + 2], 15, 718787259); + b = md5ii(b, c, d, a, x[i + 9], 21, -343485551); + a = safeAdd(a, olda); + b = safeAdd(b, oldb); + c = safeAdd(c, oldc); + d = safeAdd(d, oldd); + } + + return [a, b, c, d]; + } + /** + * Convert an array of little-endian words to a string + * + * @param {Array} input MD5 Array + * @returns {string} MD5 string + */ + + + function binl2rstr(input) { + var i; + var output = ''; + var length32 = input.length * 32; + + for (i = 0; i < length32; i += 8) { + output += String.fromCharCode(input[i >> 5] >>> i % 32 & 0xff); + } + + return output; + } + /** + * Convert a raw string to an array of little-endian words + * Characters >255 have their high-byte silently ignored. + * + * @param {string} input Raw input string + * @returns {Array} Array of little-endian words + */ + + + function rstr2binl(input) { + var i; + var output = []; + output[(input.length >> 2) - 1] = undefined; + + for (i = 0; i < output.length; i += 1) { + output[i] = 0; + } + + var length8 = input.length * 8; + + for (i = 0; i < length8; i += 8) { + output[i >> 5] |= (input.charCodeAt(i / 8) & 0xff) << i % 32; + } + + return output; + } + /** + * Calculate the MD5 of a raw string + * + * @param {string} s Input string + * @returns {string} Raw MD5 string + */ + + + function rstrMD5(s) { + return binl2rstr(binlMD5(rstr2binl(s), s.length * 8)); + } + /** + * Calculates the HMAC-MD5 of a key and some data (raw strings) + * + * @param {string} key HMAC key + * @param {string} data Raw input string + * @returns {string} Raw MD5 string + */ + + + function rstrHMACMD5(key, data) { + var i; + var bkey = rstr2binl(key); + var ipad = []; + var opad = []; + var hash; + ipad[15] = opad[15] = undefined; + + if (bkey.length > 16) { + bkey = binlMD5(bkey, key.length * 8); + } + + for (i = 0; i < 16; i += 1) { + ipad[i] = bkey[i] ^ 0x36363636; + opad[i] = bkey[i] ^ 0x5c5c5c5c; + } + + hash = binlMD5(ipad.concat(rstr2binl(data)), 512 + data.length * 8); + return binl2rstr(binlMD5(opad.concat(hash), 512 + 128)); + } + /** + * Convert a raw string to a hex string + * + * @param {string} input Raw input string + * @returns {string} Hex encoded string + */ + + + function rstr2hex(input) { + var hexTab = '0123456789abcdef'; + var output = ''; + var x; + var i; + + for (i = 0; i < input.length; i += 1) { + x = input.charCodeAt(i); + output += hexTab.charAt(x >>> 4 & 0x0f) + hexTab.charAt(x & 0x0f); + } + + return output; + } + /** + * Encode a string as UTF-8 + * + * @param {string} input Input string + * @returns {string} UTF8 string + */ + + + function str2rstrUTF8(input) { + return unescape(encodeURIComponent(input)); + } + /** + * Encodes input string as raw MD5 string + * + * @param {string} s Input string + * @returns {string} Raw MD5 string + */ + + + function rawMD5(s) { + return rstrMD5(str2rstrUTF8(s)); + } + /** + * Encodes input string as Hex encoded string + * + * @param {string} s Input string + * @returns {string} Hex encoded string + */ + + + function hexMD5(s) { + return rstr2hex(rawMD5(s)); + } + /** + * Calculates the raw HMAC-MD5 for the given key and data + * + * @param {string} k HMAC key + * @param {string} d Input string + * @returns {string} Raw MD5 string + */ + + + function rawHMACMD5(k, d) { + return rstrHMACMD5(str2rstrUTF8(k), str2rstrUTF8(d)); + } + /** + * Calculates the Hex encoded HMAC-MD5 for the given key and data + * + * @param {string} k HMAC key + * @param {string} d Input string + * @returns {string} Raw MD5 string + */ + + + function hexHMACMD5(k, d) { + return rstr2hex(rawHMACMD5(k, d)); + } + /** + * Calculates MD5 value for a given string. + * If a key is provided, calculates the HMAC-MD5 value. + * Returns a Hex encoded string unless the raw argument is given. + * + * @param {string} string Input string + * @param {string} [key] HMAC key + * @param {boolean} raw Raw oytput switch + * @returns {string} MD5 output + */ + + + function md5(string, key, raw) { + if (!key) { + if (!raw) { + return hexMD5(string); + } + + return rawMD5(string); + } + + if (!raw) { + return hexHMACMD5(key, string); + } + + return rawHMACMD5(key, string); + } + + if (module.exports) { + module.exports = md5; + } else { + $.md5 = md5; + } + })(commonjsGlobal); + }); + + function md5ForNode(node) { + if (null === node || 'object' !== _typeof(node)) return undefined; + + if (node.src) { + return md5(node.src); + } else if (node.href) { + return md5(node.href); + } else if (node.innerText && '' !== node.innerText) { + // eslint-disable-line yoda + return md5(node.innerText); + } else { + return undefined; + } + } + + var diagScriptId = 'fa-kits-diag'; + var nodeUnderTestId = 'fa-kits-node-under-test'; + var md5Attr = 'data-md5'; + var detectionIgnoreAttr = 'data-fa-detection-ignore'; + var timeoutAttr = 'data-fa-detection-timeout'; + var resultsCollectionMaxWaitAttr = 'data-fa-detection-results-collection-max-wait'; + + var silenceErrors = function silenceErrors(e) { + e.preventDefault(); + e.stopPropagation(); + }; + + function pollUntil(_ref) { + var _ref$fn = _ref.fn, + fn = _ref$fn === void 0 ? function () { + return true; + } : _ref$fn, + _ref$initialDuration = _ref.initialDuration, + initialDuration = _ref$initialDuration === void 0 ? 1 : _ref$initialDuration, + _ref$maxDuration = _ref.maxDuration, + maxDuration = _ref$maxDuration === void 0 ? WINDOW.FontAwesomeDetection.timeout : _ref$maxDuration, + _ref$showProgress = _ref.showProgress, + showProgress = _ref$showProgress === void 0 ? false : _ref$showProgress, + progressIndicator = _ref.progressIndicator; + return new Promise(function (resolve, reject) { + // eslint-disable-line compat/compat + function poll(duration, cumulativeDuration) { + setTimeout(function () { + var result = fn(); + + if (showProgress) { + console.info(progressIndicator); + } + + if (!!result) { + // eslint-disable-line no-extra-boolean-cast + resolve(result); + } else { + var nextDuration = 250; + var nextCumulativeDuration = nextDuration + cumulativeDuration; + + if (nextCumulativeDuration <= maxDuration) { + poll(nextDuration, nextCumulativeDuration); + } else { + reject('timeout'); // eslint-disable-line prefer-promise-reject-errors + } + } + }, duration); + } + + poll(initialDuration, 0); + }); + } + + function detectWebfontConflicts() { + var linkTags = Array.from(DOCUMENT.getElementsByTagName('link')).filter(function (t) { + return !t.hasAttribute(detectionIgnoreAttr); + }); + var styleTags = Array.from(DOCUMENT.getElementsByTagName('style')).filter(function (t) { + if (t.hasAttribute(detectionIgnoreAttr)) { + return false; + } // If the browser has loaded the FA5 CSS, let's not test that + + + + + + \ No newline at end of file diff --git a/home/css/gaya.css b/home/css/gaya.css new file mode 100644 index 0000000..c340bcc --- /dev/null +++ b/home/css/gaya.css @@ -0,0 +1,11531 @@ +:root { + --bs-blue: #0d6efd; + --bs-indigo: #6610f2; + --bs-purple: #6f42c1; + --bs-pink: #d63384; + --bs-red: #dc3545; + --bs-orange: #fd7e14; + --bs-yellow: #ffc107; + --bs-green: #198754; + --bs-teal: #20c997; + --bs-cyan: #0dcaf0; + --bs-white: #fff; + --bs-gray: #6c757d; + --bs-gray-dark: #343a40; + --bs-primary: #5B8C51; + --bs-secondary: #EDDD5E; + --bs-success: #198754; + --bs-info: #0dcaf0; + --bs-warning: #ffc107; + --bs-danger: #dc3545; + --bs-light: #F7F7F7; + --bs-dark: #404A3D; + --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)) +} + +*, +*::before, +*::after { + box-sizing: border-box +} + +@media (prefers-reduced-motion: no-preference) { + :root { + scroll-behavior: smooth + } +} + +body { + margin: 0; + font-family: "Open Sans", sans-serif; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #777; + background-color: #fff; + -webkit-text-size-adjust: 100%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0) +} + +hr { + margin: 1rem 0; + color: inherit; + background-color: currentColor; + border: 0; + opacity: .25 +} + +hr:not([size]) { + height: 1px +} + +h1, +.h1, +h2, +.h2, +h3, +.h3, +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 0; + margin-bottom: .5rem; + font-family: "Libre Baskerville", serif; + font-weight: 700; + line-height: 1.2; + color: #404A3D +} + +h1, +.h1 { + font-size: calc(1.375rem + 1.5vw) +} + +@media (min-width: 1200px) { + + h1, + .h1 { + font-size: 2.5rem + } +} + +h2, +.h2 { + font-size: calc(1.325rem + .9vw) +} + +@media (min-width: 1200px) { + + h2, + .h2 { + font-size: 2rem + } +} + +h3, +.h3 { + font-size: calc(1.3rem + .6vw) +} + +@media (min-width: 1200px) { + + h3, + .h3 { + font-size: 1.75rem + } +} + +h4, +.h4 { + font-size: calc(1.275rem + .3vw) +} + +@media (min-width: 1200px) { + + h4, + .h4 { + font-size: 1.5rem + } +} + +h5, +.h5 { + font-size: 1.25rem +} + +h6, +.h6 { + font-size: 1rem +} + +p { + margin-top: 0; + margin-bottom: 1rem +} + +abbr[title], +abbr[data-bs-original-title] { + text-decoration: underline dotted; + cursor: help; + text-decoration-skip-ink: none +} + +address { + margin-bottom: 1rem; + font-style: normal; + line-height: inherit +} + +ol, +ul { + padding-left: 2rem +} + +ol, +ul, +dl { + margin-top: 0; + margin-bottom: 1rem +} + +ol ol, +ul ul, +ol ul, +ul ol { + margin-bottom: 0 +} + +dt { + font-weight: 700 +} + +dd { + margin-bottom: .5rem; + margin-left: 0 +} + +blockquote { + margin: 0 0 1rem +} + +b, +strong { + font-weight: bolder +} + +small, +.small { + font-size: .875em +} + +mark, +.mark { + padding: .2em; + background-color: #fcf8e3 +} + +sub, +sup { + position: relative; + font-size: .75em; + line-height: 0; + vertical-align: baseline +} + +sub { + bottom: -.25em +} + +sup { + top: -.5em +} + +a { + color: #5B8C51; + text-decoration: none +} + +a:hover { + color: #497041 +} + +a:not([href]):not([class]), +a:not([href]):not([class]):hover { + color: inherit; + text-decoration: none +} + +pre, +code, +kbd, +samp { + font-family: var(--bs-font-monospace); + font-size: 1em; + direction: ltr + /* rtl:ignore */ + ; + unicode-bidi: bidi-override +} + +pre { + display: block; + margin-top: 0; + margin-bottom: 1rem; + overflow: auto; + font-size: .875em +} + +pre code { + font-size: inherit; + color: inherit; + word-break: normal +} + +code { + font-size: .875em; + color: #d63384; + word-wrap: break-word +} + +a>code { + color: inherit +} + +kbd { + padding: .2rem .4rem; + font-size: .875em; + color: #fff; + background-color: #212529; + border-radius: 8px +} + +kbd kbd { + padding: 0; + font-size: 1em; + font-weight: 700 +} + +figure { + margin: 0 0 1rem +} + +img, +svg { + vertical-align: middle +} + +table { + caption-side: bottom; + border-collapse: collapse +} + +caption { + padding-top: .5rem; + padding-bottom: .5rem; + color: #6c757d; + text-align: left +} + +th { + text-align: inherit; + text-align: -webkit-match-parent +} + +thead, +tbody, +tfoot, +tr, +td, +th { + border-color: inherit; + border-style: solid; + border-width: 0 +} + +label { + display: inline-block +} + +button { + border-radius: 0 +} + +button:focus:not(:focus-visible) { + outline: 0 +} + +input, +button, +select, +optgroup, +textarea { + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit +} + +button, +select { + text-transform: none +} + +[role="button"] { + cursor: pointer +} + +select { + word-wrap: normal +} + +select:disabled { + opacity: 1 +} + +[list]::-webkit-calendar-picker-indicator { + display: none +} + +button, +[type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button +} + +button:not(:disabled), +[type="button"]:not(:disabled), +[type="reset"]:not(:disabled), +[type="submit"]:not(:disabled) { + cursor: pointer +} + +::-moz-focus-inner { + padding: 0; + border-style: none +} + +textarea { + resize: vertical +} + +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0 +} + +::-webkit-datetime-edit-fields-wrapper, +::-webkit-datetime-edit-text, +::-webkit-datetime-edit-minute, +::-webkit-datetime-edit-hour-field, +::-webkit-datetime-edit-day-field, +::-webkit-datetime-edit-month-field, +::-webkit-datetime-edit-year-field { + padding: 0 +} + +::-webkit-inner-spin-button { + height: auto +} + +[type="search"] { + outline-offset: -2px; + -webkit-appearance: textfield +} + +::-webkit-search-decoration { + -webkit-appearance: none +} + +::-webkit-color-swatch-wrapper { + padding: 0 +} + +::file-selector-button { + font: inherit +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button +} + +output { + display: inline-block +} + +iframe { + border: 0 +} + +summary { + display: list-item; + cursor: pointer +} + +progress { + vertical-align: baseline +} + +[hidden] { + display: none !important +} + +.lead { + font-size: 1.25rem; + font-weight: 300 +} + +.display-1 { + font-size: calc(1.625rem + 4.5vw); + font-weight: 700; + line-height: 1.2 +} + +@media (min-width: 1200px) { + .display-1 { + font-size: 5rem + } +} + +.display-2 { + font-size: calc(1.575rem + 3.9vw); + font-weight: 700; + line-height: 1.2 +} + +@media (min-width: 1200px) { + .display-2 { + font-size: 4.5rem + } +} + +.tampilan-3 { + font-size: calc(1.525rem + 3.3vw); + font-weight: 700; + line-height: 1.2 +} + +@media (min-width: 1200px) { + .tampilan-3 { + font-size: 4rem + } +} + +.tampilan-4 { + font-size: calc(1.475rem + 2.7vw); + font-weight: 700; + line-height: 1.2 +} + +@media (min-width: 1200px) { + .tampilan-4 { + font-size: 3.5rem + } +} + +.tampilan-5 { + font-size: calc(1.425rem + 2.1vw); + font-weight: 700; + line-height: 1.2 +} + +@media (min-width: 1200px) { + .tampilan-5 { + font-size: 3rem + } +} + +.tampilan-6 { + font-size: calc(1.375rem + 1.5vw); + font-weight: 700; + line-height: 1.2 +} + +@media (min-width: 1200px) { + .tampilan-6 { + font-size: 2.5rem + } +} + +.list-unstyled { + padding-left: 0; + list-style: none +} + +.list-inline { + padding-left: 0; + list-style: none +} + +.list-inline-item { + display: inline-block +} + +.list-inline-item:not(:last-child) { + margin-right: .5rem +} + +.initialism { + font-size: .875em; + text-transform: uppercase +} + +.gambar-besar { + max-width: 100%; + height: auto +} + +.gambar-kecil { + padding: .25rem; + background-color: #fff; + border: 1px solid #dee2e6; + border-radius: 8px; + max-width: 100%; + height: auto +} + +.kontainer, +.kontainer-besar, +.kontainer-sm, +.kontainer-md, +.kontainer-lg, +.kontainer-xl, +.kontainer-xxl { + width: 100%; + padding-right: var(--bs-gutter-x, .75rem); + padding-left: var(--bs-gutter-x, .75rem); + margin-right: auto; + margin-left: auto +} + +@media (min-width: 576px) { + + .kontainer, + .kontainer-sm { + max-width: 540px + } +} + +@media (min-width: 768px) { + + .kontainer, + .kontainer-sm, + .kontainer-md { + max-width: 720px + } +} + +@media (min-width: 992px) { + + .kontainer, + .kontainer-sm, + .kontainer-md, + .kontainer-lg { + max-width: 960px + } +} + +@media (min-width: 1200px) { + + .kontainer, + .kontainer-sm, + .kontainer-md, + .kontainer-lg, + .kontainer-xl { + max-width: 1140px + } +} + +@media (min-width: 1400px) { + + .kontainer, + .kontainer-sm, + .kontainer-md, + .kontainer-lg, + .kontainer-xl, + .kontainer-xxl { + max-width: 1320px + } +} + +.row { + --bs-gutter-x: 1.5rem; + --bs-gutter-y: 0; + display: flex; + flex-wrap: wrap; + margin-top: calc(var(--bs-gutter-y) * -1); + margin-right: calc(var(--bs-gutter-x) / -2); + margin-left: calc(var(--bs-gutter-x) / -2) +} + +.row>* { + flex-shrink: 0; + width: 100%; + max-width: 100%; + padding-right: calc(var(--bs-gutter-x) / 2); + padding-left: calc(var(--bs-gutter-x) / 2); + margin-top: var(--bs-gutter-y) +} + +.col { + flex: 1 0 0% +} + +.row-cols-auto>* { + flex: 0 0 auto; + width: auto +} + +.row-cols-1>* { + flex: 0 0 auto; + width: 100% +} + +.row-cols-2>* { + flex: 0 0 auto; + width: 50% +} + +.row-cols-3>* { + flex: 0 0 auto; + width: 33.33333% +} + +.row-cols-4>* { + flex: 0 0 auto; + width: 25% +} + +.row-cols-5>* { + flex: 0 0 auto; + width: 20% +} + +.row-cols-6>* { + flex: 0 0 auto; + width: 16.66667% +} + +.col-auto { + flex: 0 0 auto; + width: auto +} + +.col-1 { + flex: 0 0 auto; + width: 8.33333% +} + +.col-2 { + flex: 0 0 auto; + width: 16.66667% +} + +.col-3 { + flex: 0 0 auto; + width: 25% +} + +.col-4 { + flex: 0 0 auto; + width: 33.33333% +} + +.col-5 { + flex: 0 0 auto; + width: 41.66667% +} + +.col-6 { + flex: 0 0 auto; + width: 50% +} + +.col-7 { + flex: 0 0 auto; + width: 58.33333% +} + +.col-8 { + flex: 0 0 auto; + width: 66.66667% +} + +.col-9 { + flex: 0 0 auto; + width: 75% +} + +.col-10 { + flex: 0 0 auto; + width: 83.33333% +} + +.col-11 { + flex: 0 0 auto; + width: 91.66667% +} + +.col-12 { + flex: 0 0 auto; + width: 100% +} + + + +.g-0, +.gx-0 { + --bs-gutter-x: 0 +} + +.g-0, +.gy-0 { + --bs-gutter-y: 0 +} + +.g-1, +.gx-1 { + --bs-gutter-x: .25rem +} + +.g-1, +.gy-1 { + --bs-gutter-y: .25rem +} + +.g-2, +.gx-2 { + --bs-gutter-x: .5rem +} + +.g-2, +.gy-2 { + --bs-gutter-y: .5rem +} + +.g-3, +.gx-3 { + --bs-gutter-x: 1rem +} + +.g-3, +.gy-3 { + --bs-gutter-y: 1rem +} + +.g-4, +.gx-4 { + --bs-gutter-x: 1.5rem +} + +.g-4, +.gy-4 { + --bs-gutter-y: 1.5rem +} + +.g-5, +.gx-5 { + --bs-gutter-x: 3rem +} + +.g-5, +.gy-5 { + --bs-gutter-y: 3rem +} + +@media (min-width: 576px) { + .col-sm { + flex: 1 0 0% + } + + .row-cols-sm-auto>* { + flex: 0 0 auto; + width: auto + } + + .row-cols-sm-1>* { + flex: 0 0 auto; + width: 100% + } + + .row-cols-sm-2>* { + flex: 0 0 auto; + width: 50% + } + + .row-cols-sm-3>* { + flex: 0 0 auto; + width: 33.33333% + } + + .row-cols-sm-4>* { + flex: 0 0 auto; + width: 25% + } + + .row-cols-sm-5>* { + flex: 0 0 auto; + width: 20% + } + + .row-cols-sm-6>* { + flex: 0 0 auto; + width: 16.66667% + } + + .col-sm-auto { + flex: 0 0 auto; + width: auto + } + + .col-sm-1 { + flex: 0 0 auto; + width: 8.33333% + } + + .col-sm-2 { + flex: 0 0 auto; + width: 16.66667% + } + + .col-sm-3 { + flex: 0 0 auto; + width: 25% + } + + .col-sm-4 { + flex: 0 0 auto; + width: 33.33333% + } + + .col-sm-5 { + flex: 0 0 auto; + width: 41.66667% + } + + .col-sm-6 { + flex: 0 0 auto; + width: 50% + } + + .col-sm-7 { + flex: 0 0 auto; + width: 58.33333% + } + + .col-sm-8 { + flex: 0 0 auto; + width: 66.66667% + } + + .col-sm-9 { + flex: 0 0 auto; + width: 75% + } + + .col-sm-10 { + flex: 0 0 auto; + width: 83.33333% + } + + .col-sm-11 { + flex: 0 0 auto; + width: 91.66667% + } + + .col-sm-12 { + flex: 0 0 auto; + width: 100% + } + + .offset-sm-0 { + margin-left: 0 + } + + .offset-sm-1 { + margin-left: 8.33333% + } + + .offset-sm-2 { + margin-left: 16.66667% + } + + .offset-sm-3 { + margin-left: 25% + } + + .offset-sm-4 { + margin-left: 33.33333% + } + + .offset-sm-5 { + margin-left: 41.66667% + } + + .offset-sm-6 { + margin-left: 50% + } + + .offset-sm-7 { + margin-left: 58.33333% + } + + .offset-sm-8 { + margin-left: 66.66667% + } + + .offset-sm-9 { + margin-left: 75% + } + + .offset-sm-10 { + margin-left: 83.33333% + } + + .offset-sm-11 { + margin-left: 91.66667% + } + + .g-sm-0, + .gx-sm-0 { + --bs-gutter-x: 0 + } + + .g-sm-0, + .gy-sm-0 { + --bs-gutter-y: 0 + } + + .g-sm-1, + .gx-sm-1 { + --bs-gutter-x: .25rem + } + + .g-sm-1, + .gy-sm-1 { + --bs-gutter-y: .25rem + } + + .g-sm-2, + .gx-sm-2 { + --bs-gutter-x: .5rem + } + + .g-sm-2, + .gy-sm-2 { + --bs-gutter-y: .5rem + } + + .g-sm-3, + .gx-sm-3 { + --bs-gutter-x: 1rem + } + + .g-sm-3, + .gy-sm-3 { + --bs-gutter-y: 1rem + } + + .g-sm-4, + .gx-sm-4 { + --bs-gutter-x: 1.5rem + } + + .g-sm-4, + .gy-sm-4 { + --bs-gutter-y: 1.5rem + } + + .g-sm-5, + .gx-sm-5 { + --bs-gutter-x: 3rem + } + + .g-sm-5, + .gy-sm-5 { + --bs-gutter-y: 3rem + } +} + +@media (min-width: 768px) { + .kolom-sedang { + flex: 1 0 0% + } + + .row-cols-md-auto>* { + flex: 0 0 auto; + width: auto + } + + .row-cols-md-1>* { + flex: 0 0 auto; + width: 100% + } + + .row-cols-md-2>* { + flex: 0 0 auto; + width: 50% + } + + .row-cols-md-3>* { + flex: 0 0 auto; + width: 33.33333% + } + + .row-cols-md-4>* { + flex: 0 0 auto; + width: 25% + } + + .row-cols-md-5>* { + flex: 0 0 auto; + width: 20% + } + + .row-cols-md-6>* { + flex: 0 0 auto; + width: 16.66667% + } + + .kolom-sedang-auto { + flex: 0 0 auto; + width: auto + } + + .kolom-sedang-1 { + flex: 0 0 auto; + width: 8.33333% + } + + .kolom-sedang-2 { + flex: 0 0 auto; + width: 16.66667% + } + + .kolom-sedang-3 { + flex: 0 0 auto; + width: 25% + } + + .kolom-sedang-4 { + flex: 0 0 auto; + width: 33.33333% + } + + .kolom-sedang-5 { + flex: 0 0 auto; + width: 41.66667% + } + + .kolom-sedang-6 { + flex: 0 0 auto; + width: 50% + } + + .kolom-sedang-7 { + flex: 0 0 auto; + width: 58.33333% + } + + .kolom-sedang-8 { + flex: 0 0 auto; + width: 66.66667% + } + + .kolom-sedang-9 { + flex: 0 0 auto; + width: 75% + } + + .kolom-sedang-10 { + flex: 0 0 auto; + width: 83.33333% + } + + .kolom-sedang-11 { + flex: 0 0 auto; + width: 91.66667% + } + + .kolom-sedang-12 { + flex: 0 0 auto; + width: 100% + } + + .offset-md-0 { + margin-left: 0 + } + + .offset-md-1 { + margin-left: 8.33333% + } + + .offset-md-2 { + margin-left: 16.66667% + } + + .offset-md-3 { + margin-left: 25% + } + + .offset-md-4 { + margin-left: 33.33333% + } + + .offset-md-5 { + margin-left: 41.66667% + } + + .offset-md-6 { + margin-left: 50% + } + + .offset-md-7 { + margin-left: 58.33333% + } + + .offset-md-8 { + margin-left: 66.66667% + } + + .offset-md-9 { + margin-left: 75% + } + + .offset-md-10 { + margin-left: 83.33333% + } + + .offset-md-11 { + margin-left: 91.66667% + } + + .g-md-0, + .gx-md-0 { + --bs-gutter-x: 0 + } + + .g-md-0, + .gy-md-0 { + --bs-gutter-y: 0 + } + + .g-md-1, + .gx-md-1 { + --bs-gutter-x: .25rem + } + + .g-md-1, + .gy-md-1 { + --bs-gutter-y: .25rem + } + + .g-md-2, + .gx-md-2 { + --bs-gutter-x: .5rem + } + + .g-md-2, + .gy-md-2 { + --bs-gutter-y: .5rem + } + + .g-md-3, + .gx-md-3 { + --bs-gutter-x: 1rem + } + + .g-md-3, + .gy-md-3 { + --bs-gutter-y: 1rem + } + + .g-md-4, + .gx-md-4 { + --bs-gutter-x: 1.5rem + } + + .g-md-4, + .gy-md-4 { + --bs-gutter-y: 1.5rem + } + + .g-md-5, + .gx-md-5 { + --bs-gutter-x: 3rem + } + + .g-md-5, + .gy-md-5 { + --bs-gutter-y: 3rem + } +} + +@media (min-width: 992px) { + .kolom-besar { + flex: 1 0 0% + } + + .row-cols-lg-auto>* { + flex: 0 0 auto; + width: auto + } + + .row-cols-lg-1>* { + flex: 0 0 auto; + width: 100% + } + + .row-cols-lg-2>* { + flex: 0 0 auto; + width: 50% + } + + .row-cols-lg-3>* { + flex: 0 0 auto; + width: 33.33333% + } + + .row-cols-lg-4>* { + flex: 0 0 auto; + width: 25% + } + + .row-cols-lg-5>* { + flex: 0 0 auto; + width: 20% + } + + .row-cols-lg-6>* { + flex: 0 0 auto; + width: 16.66667% + } + + .kolom-besar-auto { + flex: 0 0 auto; + width: auto + } + + .kolom-besar-1 { + flex: 0 0 auto; + width: 8.33333% + } + + .kolom-besar-2 { + flex: 0 0 auto; + width: 16.66667% + } + + .kolom-besar-3 { + flex: 0 0 auto; + width: 25% + } + + .kolom-besar-4 { + flex: 0 0 auto; + width: 33.33333% + } + + .kolom-besar-5 { + flex: 0 0 auto; + width: 41.66667% + } + + .kolom-besar-6 { + flex: 0 0 auto; + width: 50% + } + + .kolom-besar-7 { + flex: 0 0 auto; + width: 58.33333% + } + + .kolom-besar-8 { + flex: 0 0 auto; + width: 66.66667% + } + + .kolom-besar-9 { + flex: 0 0 auto; + width: 75% + } + + .kolom-besar-10 { + flex: 0 0 auto; + width: 83.33333% + } + + .kolom-besar-11 { + flex: 0 0 auto; + width: 91.66667% + } + + .kolom-besar-12 { + flex: 0 0 auto; + width: 100% + } + + .offset-lg-0 { + margin-left: 0 + } + + .offset-lg-1 { + margin-left: 8.33333% + } + + .offset-lg-2 { + margin-left: 16.66667% + } + + .offset-lg-3 { + margin-left: 25% + } + + .offset-lg-4 { + margin-left: 33.33333% + } + + .offset-lg-5 { + margin-left: 41.66667% + } + + .offset-lg-6 { + margin-left: 50% + } + + .offset-lg-7 { + margin-left: 58.33333% + } + + .offset-lg-8 { + margin-left: 66.66667% + } + + .offset-lg-9 { + margin-left: 75% + } + + .offset-lg-10 { + margin-left: 83.33333% + } + + .offset-lg-11 { + margin-left: 91.66667% + } + + .g-lg-0, + .gx-lg-0 { + --bs-gutter-x: 0 + } + + .g-lg-0, + .gy-lg-0 { + --bs-gutter-y: 0 + } + + .g-lg-1, + .gx-lg-1 { + --bs-gutter-x: .25rem + } + + .g-lg-1, + .gy-lg-1 { + --bs-gutter-y: .25rem + } + + .g-lg-2, + .gx-lg-2 { + --bs-gutter-x: .5rem + } + + .g-lg-2, + .gy-lg-2 { + --bs-gutter-y: .5rem + } + + .g-lg-3, + .gx-lg-3 { + --bs-gutter-x: 1rem + } + + .g-lg-3, + .gy-lg-3 { + --bs-gutter-y: 1rem + } + + .g-lg-4, + .gx-lg-4 { + --bs-gutter-x: 1.5rem + } + + .g-lg-4, + .gy-lg-4 { + --bs-gutter-y: 1.5rem + } + + .g-lg-5, + .gx-lg-5 { + --bs-gutter-x: 3rem + } + + .g-lg-5, + .gy-lg-5 { + --bs-gutter-y: 3rem + } +} + +@media (min-width: 1200px) { + .col-xl { + flex: 1 0 0% + } + + .row-cols-xl-auto>* { + flex: 0 0 auto; + width: auto + } + + .row-cols-xl-1>* { + flex: 0 0 auto; + width: 100% + } + + .row-cols-xl-2>* { + flex: 0 0 auto; + width: 50% + } + + .row-cols-xl-3>* { + flex: 0 0 auto; + width: 33.33333% + } + + .row-cols-xl-4>* { + flex: 0 0 auto; + width: 25% + } + + .row-cols-xl-5>* { + flex: 0 0 auto; + width: 20% + } + + .row-cols-xl-6>* { + flex: 0 0 auto; + width: 16.66667% + } + + .col-xl-auto { + flex: 0 0 auto; + width: auto + } + + .col-xl-1 { + flex: 0 0 auto; + width: 8.33333% + } + + .col-xl-2 { + flex: 0 0 auto; + width: 16.66667% + } + + .col-xl-3 { + flex: 0 0 auto; + width: 25% + } + + .col-xl-4 { + flex: 0 0 auto; + width: 33.33333% + } + + .col-xl-5 { + flex: 0 0 auto; + width: 41.66667% + } + + .col-xl-6 { + flex: 0 0 auto; + width: 50% + } + + .col-xl-7 { + flex: 0 0 auto; + width: 58.33333% + } + + .col-xl-8 { + flex: 0 0 auto; + width: 66.66667% + } + + .col-xl-9 { + flex: 0 0 auto; + width: 75% + } + + .col-xl-10 { + flex: 0 0 auto; + width: 83.33333% + } + + .col-xl-11 { + flex: 0 0 auto; + width: 91.66667% + } + + .col-xl-12 { + flex: 0 0 auto; + width: 100% + } + + .offset-xl-0 { + margin-left: 0 + } + + .offset-xl-1 { + margin-left: 8.33333% + } + + .offset-xl-2 { + margin-left: 16.66667% + } + + .offset-xl-3 { + margin-left: 25% + } + + .offset-xl-4 { + margin-left: 33.33333% + } + + .offset-xl-5 { + margin-left: 41.66667% + } + + .offset-xl-6 { + margin-left: 50% + } + + .offset-xl-7 { + margin-left: 58.33333% + } + + .offset-xl-8 { + margin-left: 66.66667% + } + + .offset-xl-9 { + margin-left: 75% + } + + .offset-xl-10 { + margin-left: 83.33333% + } + + .offset-xl-11 { + margin-left: 91.66667% + } + + .g-xl-0, + .gx-xl-0 { + --bs-gutter-x: 0 + } + + .g-xl-0, + .gy-xl-0 { + --bs-gutter-y: 0 + } + + .g-xl-1, + .gx-xl-1 { + --bs-gutter-x: .25rem + } + + .g-xl-1, + .gy-xl-1 { + --bs-gutter-y: .25rem + } + + .g-xl-2, + .gx-xl-2 { + --bs-gutter-x: .5rem + } + + .g-xl-2, + .gy-xl-2 { + --bs-gutter-y: .5rem + } + + .g-xl-3, + .gx-xl-3 { + --bs-gutter-x: 1rem + } + + .g-xl-3, + .gy-xl-3 { + --bs-gutter-y: 1rem + } + + .g-xl-4, + .gx-xl-4 { + --bs-gutter-x: 1.5rem + } + + .g-xl-4, + .gy-xl-4 { + --bs-gutter-y: 1.5rem + } + + .g-xl-5, + .gx-xl-5 { + --bs-gutter-x: 3rem + } + + .g-xl-5, + .gy-xl-5 { + --bs-gutter-y: 3rem + } +} + +@media (min-width: 1400px) { + .col-xxl { + flex: 1 0 0% + } + + .row-cols-xxl-auto>* { + flex: 0 0 auto; + width: auto + } + + .row-cols-xxl-1>* { + flex: 0 0 auto; + width: 100% + } + + .row-cols-xxl-2>* { + flex: 0 0 auto; + width: 50% + } + + .row-cols-xxl-3>* { + flex: 0 0 auto; + width: 33.33333% + } + + .row-cols-xxl-4>* { + flex: 0 0 auto; + width: 25% + } + + .row-cols-xxl-5>* { + flex: 0 0 auto; + width: 20% + } + + .row-cols-xxl-6>* { + flex: 0 0 auto; + width: 16.66667% + } + + .col-xxl-auto { + flex: 0 0 auto; + width: auto + } + + .col-xxl-1 { + flex: 0 0 auto; + width: 8.33333% + } + + .col-xxl-2 { + flex: 0 0 auto; + width: 16.66667% + } + + .col-xxl-3 { + flex: 0 0 auto; + width: 25% + } + + .col-xxl-4 { + flex: 0 0 auto; + width: 33.33333% + } + + .col-xxl-5 { + flex: 0 0 auto; + width: 41.66667% + } + + .col-xxl-6 { + flex: 0 0 auto; + width: 50% + } + + .col-xxl-7 { + flex: 0 0 auto; + width: 58.33333% + } + + .col-xxl-8 { + flex: 0 0 auto; + width: 66.66667% + } + + .col-xxl-9 { + flex: 0 0 auto; + width: 75% + } + + .col-xxl-10 { + flex: 0 0 auto; + width: 83.33333% + } + + .col-xxl-11 { + flex: 0 0 auto; + width: 91.66667% + } + + .col-xxl-12 { + flex: 0 0 auto; + width: 100% + } + + .offset-xxl-0 { + margin-left: 0 + } + + .offset-xxl-1 { + margin-left: 8.33333% + } + + .offset-xxl-2 { + margin-left: 16.66667% + } + + .offset-xxl-3 { + margin-left: 25% + } + + .offset-xxl-4 { + margin-left: 33.33333% + } + + .offset-xxl-5 { + margin-left: 41.66667% + } + + .offset-xxl-6 { + margin-left: 50% + } + + .offset-xxl-7 { + margin-left: 58.33333% + } + + .offset-xxl-8 { + margin-left: 66.66667% + } + + .offset-xxl-9 { + margin-left: 75% + } + + .offset-xxl-10 { + margin-left: 83.33333% + } + + .offset-xxl-11 { + margin-left: 91.66667% + } + + .g-xxl-0, + .gx-xxl-0 { + --bs-gutter-x: 0 + } + + .g-xxl-0, + .gy-xxl-0 { + --bs-gutter-y: 0 + } + + .g-xxl-1, + .gx-xxl-1 { + --bs-gutter-x: .25rem + } + + .g-xxl-1, + .gy-xxl-1 { + --bs-gutter-y: .25rem + } + + .g-xxl-2, + .gx-xxl-2 { + --bs-gutter-x: .5rem + } + + .g-xxl-2, + .gy-xxl-2 { + --bs-gutter-y: .5rem + } + + .g-xxl-3, + .gx-xxl-3 { + --bs-gutter-x: 1rem + } + + .g-xxl-3, + .gy-xxl-3 { + --bs-gutter-y: 1rem + } + + .g-xxl-4, + .gx-xxl-4 { + --bs-gutter-x: 1.5rem + } + + .g-xxl-4, + .gy-xxl-4 { + --bs-gutter-y: 1.5rem + } + + .g-xxl-5, + .gx-xxl-5 { + --bs-gutter-x: 3rem + } + + .g-xxl-5, + .gy-xxl-5 { + --bs-gutter-y: 3rem + } +} + +.table { + --bs-table-bg: rgba(0, 0, 0, 0); + --bs-table-striped-color: #777; + --bs-table-striped-bg: rgba(0, 0, 0, 0.05); + --bs-table-active-color: #777; + --bs-table-active-bg: rgba(0, 0, 0, 0.1); + --bs-table-hover-color: #777; + --bs-table-hover-bg: rgba(0, 0, 0, 0.075); + width: 100%; + margin-bottom: 1rem; + color: #777; + vertical-align: top; + border-color: #dee2e6 +} + +.table>:not(caption)>*>* { + padding: .5rem .5rem; + background-color: var(--bs-table-bg); + border-bottom-width: 1px; + box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg) +} + +.table>tbody { + vertical-align: inherit +} + +.table>thead { + vertical-align: bottom +} + +.table>:not(:last-child)>:last-child>* { + border-bottom-color: currentColor +} + +.caption-top { + caption-side: top +} + +.table-sm>:not(caption)>*>* { + padding: .25rem .25rem +} + +.table-bordered>:not(caption)>* { + border-width: 1px 0 +} + +.table-bordered>:not(caption)>*>* { + border-width: 0 1px +} + +.table-borderless>:not(caption)>*>* { + border-bottom-width: 0 +} + +.table-striped>tbody>tr:nth-of-type(odd) { + --bs-table-accent-bg: var(--bs-table-striped-bg); + color: var(--bs-table-striped-color) +} + +.table-active { + --bs-table-accent-bg: var(--bs-table-active-bg); + color: var(--bs-table-active-color) +} + +.table-hover>tbody>tr:hover { + --bs-table-accent-bg: var(--bs-table-hover-bg); + color: var(--bs-table-hover-color) +} + +.table-primary { + --bs-table-bg: #dee8dc; + --bs-table-striped-bg: #d3dcd1; + --bs-table-striped-color: #000; + --bs-table-active-bg: #c8d1c6; + --bs-table-active-color: #000; + --bs-table-hover-bg: #cdd7cc; + --bs-table-hover-color: #000; + color: #000; + border-color: #c8d1c6 +} + +.table-secondary { + --bs-table-bg: #fbf8df; + --bs-table-striped-bg: #eeecd4; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e2dfc9; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e8e5ce; + --bs-table-hover-color: #000; + color: #000; + border-color: #e2dfc9 +} + +.table-success { + --bs-table-bg: #d1e7dd; + --bs-table-striped-bg: #c7dbd2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #bcd0c7; + --bs-table-active-color: #000; + --bs-table-hover-bg: #c1d6cc; + --bs-table-hover-color: #000; + color: #000; + border-color: #bcd0c7 +} + +.table-info { + --bs-table-bg: #cff4fc; + --bs-table-striped-bg: #c5e8ef; + --bs-table-striped-color: #000; + --bs-table-active-bg: #badce3; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bfe2e9; + --bs-table-hover-color: #000; + color: #000; + border-color: #badce3 +} + +.table-warning { + --bs-table-bg: #fff3cd; + --bs-table-striped-bg: #f2e7c3; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e6dbb9; + --bs-table-active-color: #000; + --bs-table-hover-bg: #ece1be; + --bs-table-hover-color: #000; + color: #000; + border-color: #e6dbb9 +} + +.table-danger { + --bs-table-bg: #f8d7da; + --bs-table-striped-bg: #eccccf; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfc2c4; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5c7ca; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfc2c4 +} + +.table-light { + --bs-table-bg: #F7F7F7; + --bs-table-striped-bg: #ebebeb; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dedede; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e4e4e4; + --bs-table-hover-color: #000; + color: #000; + border-color: #dedede +} + +.table-dark { + --bs-table-bg: #404A3D; + --bs-table-striped-bg: #4a5347; + --bs-table-striped-color: #fff; + --bs-table-active-bg: #535c50; + --bs-table-active-color: #fff; + --bs-table-hover-bg: #4e584c; + --bs-table-hover-color: #fff; + color: #fff; + border-color: #535c50 +} + +.table-responsive { + overflow-x: auto; + -webkit-overflow-scrolling: touch +} + +@media (max-width: 575.98px) { + .table-responsive-sm { + overflow-x: auto; + -webkit-overflow-scrolling: touch + } +} + +@media (max-width: 767.98px) { + .table-responsive-md { + overflow-x: auto; + -webkit-overflow-scrolling: touch + } +} + +@media (max-width: 991.98px) { + .table-responsive-lg { + overflow-x: auto; + -webkit-overflow-scrolling: touch + } +} + +@media (max-width: 1199.98px) { + .table-responsive-xl { + overflow-x: auto; + -webkit-overflow-scrolling: touch + } +} + +@media (max-width: 1399.98px) { + .table-responsive-xxl { + overflow-x: auto; + -webkit-overflow-scrolling: touch + } +} + +.form-label { + margin-bottom: .5rem +} + +.col-form-label { + padding-top: calc(.375rem + 1px); + padding-bottom: calc(.375rem + 1px); + margin-bottom: 0; + font-size: inherit; + line-height: 1.5 +} + +.col-form-label-lg { + padding-top: calc(.5rem + 1px); + padding-bottom: calc(.5rem + 1px); + font-size: 1.25rem +} + +.col-form-label-sm { + padding-top: calc(.25rem + 1px); + padding-bottom: calc(.25rem + 1px); + font-size: .875rem +} + +.form-text { + margin-top: .25rem; + font-size: .875em; + color: #6c757d +} + +.gaya-formulir { + display: block; + width: 100%; + padding: .375rem .75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #777; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ced4da; + appearance: none; + border-radius: 8px; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out +} + +@media (prefers-reduced-motion: reduce) { + .gaya-formulir { + transition: none + } +} + +.gaya-formulir[type="file"] { + overflow: hidden +} + +.gaya-formulir[type="file"]:not(:disabled):not(:read-only) { + cursor: pointer +} + +.gaya-formulir:focus { + color: #777; + background-color: #fff; + border-color: #adc6a8; + outline: 0; + box-shadow: 0 0 0 .25rem rgba(91, 140, 81, 0.25) +} + +.gaya-formulir::-webkit-date-and-time-value { + height: 1.5em +} + +.gaya-formulir::placeholder { + color: #6c757d; + opacity: 1 +} + +.gaya-formulir:disabled, +.gaya-formulir:read-only { + background-color: #e9ecef; + opacity: 1 +} + +.gaya-formulir::file-selector-button { + padding: .375rem .75rem; + margin: -.375rem -.75rem; + margin-inline-end: .75rem; + color: #777; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out +} + +@media (prefers-reduced-motion: reduce) { + .gaya-formulir::file-selector-button { + transition: none + } +} + +.gaya-formulir:hover:not(:disabled):not(:read-only)::file-selector-button { + background-color: #dde0e3 +} + +.gaya-formulir::-webkit-file-upload-button { + padding: .375rem .75rem; + margin: -.375rem -.75rem; + margin-inline-end: .75rem; + color: #777; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out +} + +@media (prefers-reduced-motion: reduce) { + .gaya-formulir::-webkit-file-upload-button { + transition: none + } +} + +.gaya-formulir:hover:not(:disabled):not(:read-only)::-webkit-file-upload-button { + background-color: #dde0e3 +} + +.gaya-formulir-plaintext { + display: block; + width: 100%; + padding: .375rem 0; + margin-bottom: 0; + line-height: 1.5; + color: #777; + background-color: transparent; + border: solid transparent; + border-width: 1px 0 +} + +.gaya-formulir-plaintext.gaya-formulir-sm, +.gaya-formulir-plaintext.gaya-formulir-lg { + padding-right: 0; + padding-left: 0 +} + +.gaya-formulir-sm { + min-height: calc(1.5em + .5rem + 2px); + padding: .25rem .5rem; + font-size: .875rem; + border-radius: 8px +} + +.gaya-formulir-sm::file-selector-button { + padding: .25rem .5rem; + margin: -.25rem -.5rem; + margin-inline-end: .5rem +} + +.gaya-formulir-sm::-webkit-file-upload-button { + padding: .25rem .5rem; + margin: -.25rem -.5rem; + margin-inline-end: .5rem +} + +.gaya-formulir-lg { + min-height: calc(1.5em + 1rem + 2px); + padding: .5rem 1rem; + font-size: 1.25rem; + border-radius: 8px +} + +.gaya-formulir-lg::file-selector-button { + padding: .5rem 1rem; + margin: -.5rem -1rem; + margin-inline-end: 1rem +} + +.gaya-formulir-lg::-webkit-file-upload-button { + padding: .5rem 1rem; + margin: -.5rem -1rem; + margin-inline-end: 1rem +} + +textarea.gaya-formulir { + min-height: calc(1.5em + .75rem + 2px) +} + +textarea.gaya-formulir-sm { + min-height: calc(1.5em + .5rem + 2px) +} + +textarea.gaya-formulir-lg { + min-height: calc(1.5em + 1rem + 2px) +} + +.gaya-formulir-color { + max-width: 3rem; + height: auto; + padding: .375rem +} + +.gaya-formulir-color:not(:disabled):not(:read-only) { + cursor: pointer +} + +.gaya-formulir-color::-moz-color-swatch { + height: 1.5em; + border-radius: 8px +} + +.gaya-formulir-color::-webkit-color-swatch { + height: 1.5em; + border-radius: 8px +} + +.input-group { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: stretch; + width: 100% +} + +.input-group>.gaya-formulir, +.input-group>.form-select { + position: relative; + flex: 1 1 auto; + width: 1%; + min-width: 0 +} + +.input-group>.gaya-formulir:focus, +.input-group>.form-select:focus { + z-index: 3 +} + +.input-group .tombol { + position: relative; + z-index: 2 +} + +.input-group .tombol:focus { + z-index: 3 +} + +.input-group-text { + display: flex; + align-items: center; + padding: .375rem .75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #777; + text-align: center; + white-space: nowrap; + background-color: #e9ecef; + border: 1px solid #ced4da; + border-radius: 8px +} + +.input-group-lg>.gaya-formulir, +.input-group-lg>.form-select, +.input-group-lg>.input-group-text, +.input-group-lg>.tombol { + padding: .5rem 1rem; + font-size: 1.25rem; + border-radius: 8px +} + +.input-group-sm>.gaya-formulir, +.input-group-sm>.form-select, +.input-group-sm>.input-group-text, +.input-group-sm>.tombol { + padding: .25rem .5rem; + font-size: .875rem; + border-radius: 8px +} + +.input-group-lg>.form-select, +.input-group-sm>.form-select { + padding-right: 3rem +} + +.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), +.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3) { + border-top-right-radius: 0; + border-bottom-right-radius: 0 +} + +.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), +.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4) { + border-top-right-radius: 0; + border-bottom-right-radius: 0 +} + +.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) { + margin-left: -1px; + border-top-left-radius: 0; + border-bottom-left-radius: 0 +} + +.was-validated .gaya-formulir:valid, +.gaya-formulir.is-valid { + border-color: #198754; + padding-right: calc(1.5em + .75rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(.375em + .1875rem) center; + background-size: calc(.75em + .375rem) calc(.75em + .375rem) +} + +.was-validated .gaya-formulir:valid:focus, +.gaya-formulir.is-valid:focus { + border-color: #198754; + box-shadow: 0 0 0 .25rem rgba(25, 135, 84, 0.25) +} + +.was-validated textarea.gaya-formulir:valid, +textarea.gaya-formulir.is-valid { + padding-right: calc(1.5em + .75rem); + background-position: top calc(.375em + .1875rem) right calc(.375em + .1875rem) +} + +.was-validated .form-select:valid, +.form-select.is-valid { + border-color: #198754 +} + +.was-validated .form-select:valid:not([multiple]):not([size]), +.was-validated .form-select:valid:not([multiple])[size="1"], +.form-select.is-valid:not([multiple]):not([size]), +.form-select.is-valid:not([multiple])[size="1"] { + padding-right: 4.125rem; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-position: right .75rem center, center right 2.25rem; + background-size: 16px 12px, calc(.75em + .375rem) calc(.75em + .375rem) +} + +.was-validated .form-select:valid:focus, +.form-select.is-valid:focus { + border-color: #198754; + box-shadow: 0 0 0 .25rem rgba(25, 135, 84, 0.25) +} + +.was-validated .form-check-input:valid, +.form-check-input.is-valid { + border-color: #198754 +} + +.was-validated .form-check-input:valid:checked, +.form-check-input.is-valid:checked { + background-color: #198754 +} + +.was-validated .form-check-input:valid:focus, +.form-check-input.is-valid:focus { + box-shadow: 0 0 0 .25rem rgba(25, 135, 84, 0.25) +} + +.was-validated .form-check-input:valid~.form-check-label, +.form-check-input.is-valid~.form-check-label { + color: #198754 +} + +.form-check-inline .form-check-input~.valid-feedback { + margin-left: .5em +} + +.was-validated .input-group .gaya-formulir:valid, +.input-group .gaya-formulir.is-valid, +.was-validated .input-group .form-select:valid, +.input-group .form-select.is-valid { + z-index: 3 +} + +.was-validated .gaya-formulir:invalid, +.gaya-formulir.is-invalid { + border-color: #dc3545; + padding-right: calc(1.5em + .75rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(.375em + .1875rem) center; + background-size: calc(.75em + .375rem) calc(.75em + .375rem) +} + +.was-validated .gaya-formulir:invalid:focus, +.gaya-formulir.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 .25rem rgba(220, 53, 69, 0.25) +} + +.was-validated textarea.gaya-formulir:invalid, +textarea.gaya-formulir.is-invalid { + padding-right: calc(1.5em + .75rem); + background-position: top calc(.375em + .1875rem) right calc(.375em + .1875rem) +} + +.was-validated .form-select:invalid, +.form-select.is-invalid { + border-color: #dc3545 +} + +.was-validated .form-select:invalid:not([multiple]):not([size]), +.was-validated .form-select:invalid:not([multiple])[size="1"], +.form-select.is-invalid:not([multiple]):not([size]), +.form-select.is-invalid:not([multiple])[size="1"] { + padding-right: 4.125rem; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); + background-position: right .75rem center, center right 2.25rem; + background-size: 16px 12px, calc(.75em + .375rem) calc(.75em + .375rem) +} + +.was-validated .form-select:invalid:focus, +.form-select.is-invalid:focus { + border-color: #dc3545; + box-shadow: 0 0 0 .25rem rgba(220, 53, 69, 0.25) +} + +.was-validated .form-check-input:invalid, +.form-check-input.is-invalid { + border-color: #dc3545 +} + +.was-validated .form-check-input:invalid:checked, +.form-check-input.is-invalid:checked { + background-color: #dc3545 +} + +.was-validated .form-check-input:invalid:focus, +.form-check-input.is-invalid:focus { + box-shadow: 0 0 0 .25rem rgba(220, 53, 69, 0.25) +} + +.was-validated .form-check-input:invalid~.form-check-label, +.form-check-input.is-invalid~.form-check-label { + color: #dc3545 +} + +.form-check-inline .form-check-input~.invalid-feedback { + margin-left: .5em +} + +.was-validated .input-group .gaya-formulir:invalid, +.input-group .gaya-formulir.is-invalid, +.was-validated .input-group .form-select:invalid, +.input-group .form-select.is-invalid { + z-index: 3 +} + +.tombol { + display: inline-block; + font-weight: 400; + line-height: 1.5; + color: #777; + text-align: center; + vertical-align: middle; + cursor: pointer; + user-select: none; + background-color: transparent; + border: 1px solid transparent; + padding: .375rem .75rem; + font-size: 1rem; + border-radius: 8px; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out +} + +@media (prefers-reduced-motion: reduce) { + .tombol { + transition: none + } +} + +.tombol:hover { + color: #777 +} + +.tombol-check:focus+.tombol, +.tombol:focus { + outline: 0; + box-shadow: 0 0 0 .25rem rgba(91, 140, 81, 0.25) +} + +.tombol:disabled, +.tombol.disabled, +fieldset:disabled .tombol { + pointer-events: none; + opacity: .65 +} + +.tombol-utama { + color: #000; + background-color: #5B8C51; + border-color: #5B8C51 +} + +.tombol-utama:hover { + color: #000; + background-color: #749d6b; + border-color: #6b9862 +} + +.tombol-check:focus+.tombol-utama, +.tombol-utama:focus { + color: #000; + background-color: #749d6b; + border-color: #6b9862; + box-shadow: 0 0 0 .25rem rgba(77, 119, 69, 0.5) +} + +.tombol-check:checked+.tombol-utama, +.tombol-check:active+.tombol-utama, +.tombol-utama:active, +.tombol-utama.active, +.show>.tombol-utama.dropdown-toggle { + color: #000; + background-color: #7ca374; + border-color: #6b9862 +} + +.tombol-check:checked+.tombol-utama:focus, +.tombol-check:active+.tombol-utama:focus, +.tombol-utama:active:focus, +.tombol-utama.active:focus, +.show>.tombol-utama.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(77, 119, 69, 0.5) +} + +.tombol-utama:disabled, +.tombol-utama.disabled { + color: #000; + background-color: #5B8C51; + border-color: #5B8C51 +} + +.tombol-kedua { + color: #000; + background-color: #EDDD5E; + border-color: #EDDD5E +} + +.tombol-kedua:hover { + color: #000; + background-color: #f0e276; + border-color: #efe06e +} + +.tombol-check:focus+.tombol-kedua, +.tombol-kedua:focus { + color: #000; + background-color: #f0e276; + border-color: #efe06e; + box-shadow: 0 0 0 .25rem rgba(201, 188, 80, 0.5) +} + +.tombol-check:checked+.tombol-kedua, +.tombol-check:active+.tombol-kedua, +.tombol-kedua:active, +.tombol-kedua.active, +.show>.tombol-kedua.dropdown-toggle { + color: #000; + background-color: #f1e47e; + border-color: #efe06e +} + +.tombol-check:checked+.tombol-kedua:focus, +.tombol-check:active+.tombol-kedua:focus, +.tombol-kedua:active:focus, +.tombol-kedua.active:focus, +.show>.tombol-kedua.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(201, 188, 80, 0.5) +} + +.tombol-kedua:disabled, +.tombol-kedua.disabled { + color: #000; + background-color: #EDDD5E; + border-color: #EDDD5E +} + +.tombol-hijau { + color: #fff; + background-color: #198754; + border-color: #198754 +} + +.tombol-hijau:hover { + color: #fff; + background-color: #157347; + border-color: #146c43 +} + +.tombol-check:focus+.tombol-hijau, +.tombol-hijau:focus { + color: #fff; + background-color: #157347; + border-color: #146c43; + box-shadow: 0 0 0 .25rem rgba(60, 153, 110, 0.5) +} + +.tombol-check:checked+.tombol-hijau, +.tombol-check:active+.tombol-hijau, +.tombol-hijau:active, +.tombol-hijau.active, +.show>.tombol-hijau.dropdown-toggle { + color: #fff; + background-color: #146c43; + border-color: #13653f +} + +.tombol-check:checked+.tombol-hijau:focus, +.tombol-check:active+.tombol-hijau:focus, +.tombol-hijau:active:focus, +.tombol-hijau.active:focus, +.show>.tombol-hijau.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(60, 153, 110, 0.5) +} + +.tombol-hijau:disabled, +.tombol-hijau.disabled { + color: #fff; + background-color: #198754; + border-color: #198754 +} + +.tombol-biru { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0 +} + +.tombol-biru:hover { + color: #000; + background-color: #31d2f2; + border-color: #25cff2 +} + +.tombol-check:focus+.tombol-biru, +.tombol-biru:focus { + color: #000; + background-color: #31d2f2; + border-color: #25cff2; + box-shadow: 0 0 0 .25rem rgba(11, 172, 204, 0.5) +} + +.tombol-check:checked+.tombol-biru, +.tombol-check:active+.tombol-biru, +.tombol-biru:active, +.tombol-biru.active, +.show>.tombol-biru.dropdown-toggle { + color: #000; + background-color: #3dd5f3; + border-color: #25cff2 +} + +.tombol-check:checked+.tombol-biru:focus, +.tombol-check:active+.tombol-biru:focus, +.tombol-biru:active:focus, +.tombol-biru.active:focus, +.show>.tombol-biru.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(11, 172, 204, 0.5) +} + +.tombol-biru:disabled, +.tombol-biru.disabled { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0 +} + +.tombol-kuning { + color: #000; + background-color: #ffc107; + border-color: #ffc107 +} + +.tombol-kuning:hover { + color: #000; + background-color: #ffca2c; + border-color: #ffc720 +} + +.tombol-check:focus+.tombol-kuning, +.tombol-kuning:focus { + color: #000; + background-color: #ffca2c; + border-color: #ffc720; + box-shadow: 0 0 0 .25rem rgba(217, 164, 6, 0.5) +} + +.tombol-check:checked+.tombol-kuning, +.tombol-check:active+.tombol-kuning, +.tombol-kuning:active, +.tombol-kuning.active, +.show>.tombol-kuning.dropdown-toggle { + color: #000; + background-color: #ffcd39; + border-color: #ffc720 +} + +.tombol-check:checked+.tombol-kuning:focus, +.tombol-check:active+.tombol-kuning:focus, +.tombol-kuning:active:focus, +.tombol-kuning.active:focus, +.show>.tombol-kuning.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(217, 164, 6, 0.5) +} + +.tombol-kuning:disabled, +.tombol-kuning.disabled { + color: #000; + background-color: #ffc107; + border-color: #ffc107 +} + +.tombol-merah { + color: #fff; + background-color: #dc3545; + border-color: #dc3545 +} + +.tombol-merah:hover { + color: #fff; + background-color: #bb2d3b; + border-color: #b02a37 +} + +.tombol-check:focus+.tombol-merah, +.tombol-merah:focus { + color: #fff; + background-color: #bb2d3b; + border-color: #b02a37; + box-shadow: 0 0 0 .25rem rgba(225, 83, 97, 0.5) +} + +.tombol-check:checked+.tombol-merah, +.tombol-check:active+.tombol-merah, +.tombol-merah:active, +.tombol-merah.active, +.show>.tombol-merah.dropdown-toggle { + color: #fff; + background-color: #b02a37; + border-color: #a52834 +} + +.tombol-check:checked+.tombol-merah:focus, +.tombol-check:active+.tombol-merah:focus, +.tombol-merah:active:focus, +.tombol-merah.active:focus, +.show>.tombol-merah.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(225, 83, 97, 0.5) +} + +.tombol-merah:disabled, +.tombol-merah.disabled { + color: #fff; + background-color: #dc3545; + border-color: #dc3545 +} + +.tombol-putih { + color: #000; + background-color: #F7F7F7; + border-color: #F7F7F7 +} + +.tombol-putih:hover { + color: #000; + background-color: #f8f8f8; + border-color: #f8f8f8 +} + +.tombol-check:focus+.tombol-putih, +.tombol-putih:focus { + color: #000; + background-color: #f8f8f8; + border-color: #f8f8f8; + box-shadow: 0 0 0 .25rem rgba(210, 210, 210, 0.5) +} + +.tombol-check:checked+.tombol-putih, +.tombol-check:active+.tombol-putih, +.tombol-putih:active, +.tombol-putih.active, +.show>.tombol-putih.dropdown-toggle { + color: #000; + background-color: #f9f9f9; + border-color: #f8f8f8 +} + +.tombol-check:checked+.tombol-putih:focus, +.tombol-check:active+.tombol-putih:focus, +.tombol-putih:active:focus, +.tombol-putih.active:focus, +.show>.tombol-putih.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(210, 210, 210, 0.5) +} + +.tombol-putih:disabled, +.tombol-putih.disabled { + color: #000; + background-color: #F7F7F7; + border-color: #F7F7F7 +} + +.tombol-hitam { + color: #fff; + background-color: #404A3D; + border-color: #404A3D +} + +.tombol-hitam:hover { + color: #fff; + background-color: #363f34; + border-color: #333b31 +} + +.tombol-check:focus+.tombol-hitam, +.tombol-hitam:focus { + color: #fff; + background-color: #363f34; + border-color: #333b31; + box-shadow: 0 0 0 .25rem rgba(93, 101, 90, 0.5) +} + +.tombol-check:checked+.tombol-hitam, +.tombol-check:active+.tombol-hitam, +.tombol-hitam:active, +.tombol-hitam.active, +.show>.tombol-hitam.dropdown-toggle { + color: #fff; + background-color: #333b31; + border-color: #30382e +} + +.tombol-check:checked+.tombol-hitam:focus, +.tombol-check:active+.tombol-hitam:focus, +.tombol-hitam:active:focus, +.tombol-hitam.active:focus, +.show>.tombol-hitam.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(93, 101, 90, 0.5) +} + +.tombol-hitam:disabled, +.tombol-hitam.disabled { + color: #fff; + background-color: #404A3D; + border-color: #404A3D +} + +.tombol-besar, +.tombol-grup-besar>.tombol { + padding: .5rem 1rem; + font-size: 1.25rem; + border-radius: 8px +} + +.tombol-kecil, +.tombol-grup-kecil>.tombol { + padding: .25rem .5rem; + font-size: .875rem; + border-radius: 8px +} + +.fade { + transition: opacity 0.15s linear +} + +@media (prefers-reduced-motion: reduce) { + .fade { + transition: none + } +} + +.fade:not(.show) { + opacity: 0 +} + +.collapse:not(.show) { + display: none +} + +.collapsing { + height: 0; + overflow: hidden; + transition: height 0.35s ease +} + +@media (prefers-reduced-motion: reduce) { + .collapsing { + transition: none + } +} + +.dropup, +.dropend, +.dropdown, +.dropstart { + position: relative +} + +.dropdown-toggle { + white-space: nowrap +} + +.dropdown-toggle::after { + display: inline-block; + margin-left: .255em; + vertical-align: .255em; + content: ""; + border-top: .3em solid; + border-right: .3em solid transparent; + border-bottom: 0; + border-left: .3em solid transparent +} + +.dropdown-toggle:empty::after { + margin-left: 0 +} + +.dropdown-menu { + position: absolute; + z-index: 1000; + display: none; + min-width: 10rem; + padding: .5rem 0; + margin: 0; + font-size: 1rem; + color: #777; + text-align: left; + list-style: none; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 8px +} + +.dropdown-menu[data-bs-popper] { + top: 100%; + left: 0; + margin-top: .125rem +} + +.dropdown-menu-start { + --bs-position: start +} + +.dropdown-menu-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ +} + +.dropdown-menu-end { + --bs-position: end +} + +.dropdown-menu-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ +} + +@media (min-width: 576px) { + .dropdown-menu-sm-start { + --bs-position: start + } + + .dropdown-menu-sm-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + } + + .dropdown-menu-sm-end { + --bs-position: end + } + + .dropdown-menu-sm-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + } +} + +@media (min-width: 768px) { + .dropdown-menu-md-start { + --bs-position: start + } + + .dropdown-menu-md-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + } + + .dropdown-menu-md-end { + --bs-position: end + } + + .dropdown-menu-md-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + } +} + +@media (min-width: 992px) { + .dropdown-menu-lg-start { + --bs-position: start + } + + .dropdown-menu-lg-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + } + + .dropdown-menu-lg-end { + --bs-position: end + } + + .dropdown-menu-lg-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + } +} + +@media (min-width: 1200px) { + .dropdown-menu-xl-start { + --bs-position: start + } + + .dropdown-menu-xl-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + } + + .dropdown-menu-xl-end { + --bs-position: end + } + + .dropdown-menu-xl-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + } +} + +@media (min-width: 1400px) { + .dropdown-menu-xxl-start { + --bs-position: start + } + + .dropdown-menu-xxl-start[data-bs-popper] { + right: auto + /* rtl:ignore */ + ; + left: 0 + /* rtl:ignore */ + } + + .dropdown-menu-xxl-end { + --bs-position: end + } + + .dropdown-menu-xxl-end[data-bs-popper] { + right: 0 + /* rtl:ignore */ + ; + left: auto + /* rtl:ignore */ + } +} + +.dropup .dropdown-menu[data-bs-popper] { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: .125rem +} + +.dropup .dropdown-toggle::after { + display: inline-block; + margin-left: .255em; + vertical-align: .255em; + content: ""; + border-top: 0; + border-right: .3em solid transparent; + border-bottom: .3em solid; + border-left: .3em solid transparent +} + +.dropup .dropdown-toggle:empty::after { + margin-left: 0 +} + +.dropend .dropdown-menu[data-bs-popper] { + top: 0; + right: auto; + left: 100%; + margin-top: 0; + margin-left: .125rem +} + +.dropend .dropdown-toggle::after { + display: inline-block; + margin-left: .255em; + vertical-align: .255em; + content: ""; + border-top: .3em solid transparent; + border-right: 0; + border-bottom: .3em solid transparent; + border-left: .3em solid +} + +.dropend .dropdown-toggle:empty::after { + margin-left: 0 +} + +.dropend .dropdown-toggle::after { + vertical-align: 0 +} + +.dropstart .dropdown-menu[data-bs-popper] { + top: 0; + right: 100%; + left: auto; + margin-top: 0; + margin-right: .125rem +} + +.dropstart .dropdown-toggle::after { + display: inline-block; + margin-left: .255em; + vertical-align: .255em; + content: "" +} + +.dropstart .dropdown-toggle::after { + display: none +} + +.dropstart .dropdown-toggle::before { + display: inline-block; + margin-right: .255em; + vertical-align: .255em; + content: ""; + border-top: .3em solid transparent; + border-right: .3em solid; + border-bottom: .3em solid transparent +} + +.dropstart .dropdown-toggle:empty::after { + margin-left: 0 +} + +.dropstart .dropdown-toggle::before { + vertical-align: 0 +} + +.dropdown-divider { + height: 0; + margin: .5rem 0; + overflow: hidden; + border-top: 1px solid rgba(0, 0, 0, 0.15) +} + +.dropdown-item { + display: block; + width: 100%; + padding: .25rem 1rem; + clear: both; + font-weight: 400; + color: #212529; + text-align: inherit; + white-space: nowrap; + background-color: transparent; + border: 0 +} + +.dropdown-item:hover, +.dropdown-item:focus { + color: #1e2125; + background-color: #e9ecef +} + +.dropdown-item.active, +.dropdown-item:active { + color: #fff; + text-decoration: none; + background-color: #5B8C51 +} + +.dropdown-item.disabled, +.dropdown-item:disabled { + color: #adb5bd; + pointer-events: none; + background-color: transparent +} + +.dropdown-menu.show { + display: block +} + +.dropdown-header { + display: block; + padding: .5rem 1rem; + margin-bottom: 0; + font-size: .875rem; + color: #6c757d; + white-space: nowrap +} + +.dropdown-item-text { + display: block; + padding: .25rem 1rem; + color: #212529 +} + +.dropdown-menu-dark { + color: #dee2e6; + background-color: #343a40; + border-color: rgba(0, 0, 0, 0.15) +} + +.dropdown-menu-dark .dropdown-item { + color: #dee2e6 +} + +.dropdown-menu-dark .dropdown-item:hover, +.dropdown-menu-dark .dropdown-item:focus { + color: #fff; + background-color: rgba(255, 255, 255, 0.15) +} + +.dropdown-menu-dark .dropdown-item.active, +.dropdown-menu-dark .dropdown-item:active { + color: #fff; + background-color: #5B8C51 +} + +.dropdown-menu-dark .dropdown-item.disabled, +.dropdown-menu-dark .dropdown-item:disabled { + color: #adb5bd +} + +.dropdown-menu-dark .dropdown-divider { + border-color: rgba(0, 0, 0, 0.15) +} + +.dropdown-menu-dark .dropdown-item-text { + color: #dee2e6 +} + +.dropdown-menu-dark .dropdown-header { + color: #adb5bd +} + +.dropdown-toggle-split { + padding-right: .5625rem; + padding-left: .5625rem +} + +.dropdown-toggle-split::after, +.dropup .dropdown-toggle-split::after, +.dropend .dropdown-toggle-split::after { + margin-left: 0 +} + +.dropstart .dropdown-toggle-split::before { + margin-right: 0 +} + +.tombol-kecil+.dropdown-toggle-split, +.tombol-grup-kecil>.tombol+.dropdown-toggle-split { + padding-right: .375rem; + padding-left: .375rem +} + +.tombol-besar+.dropdown-toggle-split, +.tombol-grup-besar>.tombol+.dropdown-toggle-split { + padding-right: .75rem; + padding-left: .75rem +} + +.nav { + display: flex; + flex-wrap: wrap; + padding-left: 0; + margin-bottom: 0; + list-style: none +} + +.nav-link { + display: block; + padding: .5rem 1rem; + color: #5B8C51; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out +} + +@media (prefers-reduced-motion: reduce) { + .nav-link { + transition: none + } +} + +.nav-link:hover, +.nav-link:focus { + color: #497041 +} + +.nav-link.disabled { + color: #6c757d; + pointer-events: none; + cursor: default +} + +.nav-tabs { + border-bottom: 1px solid #dee2e6 +} + +.nav-tabs .nav-link { + margin-bottom: -1px; + background: none; + border: 1px solid transparent; + border-top-left-radius: 8px; + border-top-right-radius: 8px +} + +.nav-tabs .nav-link:hover, +.nav-tabs .nav-link:focus { + border-color: #e9ecef #e9ecef #dee2e6; + isolation: isolate +} + +.nav-tabs .nav-link.disabled { + color: #6c757d; + background-color: transparent; + border-color: transparent +} + +.nav-tabs .nav-link.active, +.nav-tabs .nav-item.show .nav-link { + color: #495057; + background-color: #fff; + border-color: #dee2e6 #dee2e6 #fff +} + +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0 +} + +.nav-pills .nav-link { + background: none; + border: 0; + border-radius: 8px +} + +.nav-pills .nav-link.active, +.nav-pills .show>.nav-link { + color: #fff; + background-color: #5B8C51 +} + +.nav-fill>.nav-link, +.nav-fill .nav-item { + flex: 1 1 auto; + text-align: center +} + +.nav-justified>.nav-link, +.nav-justified .nav-item { + flex-basis: 0; + flex-grow: 1; + text-align: center +} + +.nav-fill .nav-item .nav-link, +.nav-justified .nav-item .nav-link { + width: 100% +} + +.tab-content>.tab-pane { + display: none +} + +.tab-content>.active { + display: block +} + +.navbar { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: space-between; + padding-top: .5rem; + padding-bottom: .5rem +} + +.navbar>.kontainer, +.navbar>.kontainer-besar, +.navbar>.kontainer-sm, +.navbar>.kontainer-md, +.navbar>.kontainer-lg, +.navbar>.kontainer-xl, +.navbar>.kontainer-xxl { + display: flex; + flex-wrap: inherit; + align-items: center; + justify-content: space-between +} + +.navbar-brand { + padding-top: .3125rem; + padding-bottom: .3125rem; + margin-right: 1rem; + font-size: 1.25rem; + white-space: nowrap +} + +.navbar-nav { + display: flex; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + list-style: none +} + +.navbar-nav .nav-link { + padding-right: 0; + padding-left: 0 +} + +.navbar-nav .dropdown-menu { + position: static +} + +.navbar-text { + padding-top: .5rem; + padding-bottom: .5rem +} + +.navbar-collapse { + flex-basis: 100%; + flex-grow: 1; + align-items: center +} + +.navbar-toggler { + padding: .25rem .75rem; + font-size: 1.25rem; + line-height: 1; + background-color: transparent; + border: 1px solid transparent; + border-radius: 8px; + transition: box-shadow 0.15s ease-in-out +} + +@media (prefers-reduced-motion: reduce) { + .navbar-toggler { + transition: none + } +} + +.navbar-toggler:hover { + text-decoration: none +} + +.navbar-toggler:focus { + text-decoration: none; + outline: 0; + box-shadow: 0 0 0 .25rem +} + +.navbar-toggler-icon { + display: inline-block; + width: 1.5em; + height: 1.5em; + vertical-align: middle; + background-repeat: no-repeat; + background-position: center; + background-size: 100% +} + +.navbar-nav-scroll { + max-height: var(--bs-scroll-height, 75vh); + overflow-y: auto +} + +@media (min-width: 576px) { + .navbar-expand-sm { + flex-wrap: nowrap; + justify-content: flex-start + } + + .navbar-expand-sm .navbar-nav { + flex-direction: row + } + + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute + } + + .navbar-expand-sm .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem + } + + .navbar-expand-sm .navbar-nav-scroll { + overflow: visible + } + + .navbar-expand-sm .navbar-collapse { + display: flex !important; + flex-basis: auto + } + + .navbar-expand-sm .navbar-toggler { + display: none + } +} + +@media (min-width: 768px) { + .navbar-expand-md { + flex-wrap: nowrap; + justify-content: flex-start + } + + .navbar-expand-md .navbar-nav { + flex-direction: row + } + + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute + } + + .navbar-expand-md .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem + } + + .navbar-expand-md .navbar-nav-scroll { + overflow: visible + } + + .navbar-expand-md .navbar-collapse { + display: flex !important; + flex-basis: auto + } + + .navbar-expand-md .navbar-toggler { + display: none + } +} + +@media (min-width: 992px) { + .navbar-expand-lg { + flex-wrap: nowrap; + justify-content: flex-start + } + + .navbar-expand-lg .navbar-nav { + flex-direction: row + } + + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute + } + + .navbar-expand-lg .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem + } + + .navbar-expand-lg .navbar-nav-scroll { + overflow: visible + } + + .navbar-expand-lg .navbar-collapse { + display: flex !important; + flex-basis: auto + } + + .navbar-expand-lg .navbar-toggler { + display: none + } +} + +@media (min-width: 1200px) { + .navbar-expand-xl { + flex-wrap: nowrap; + justify-content: flex-start + } + + .navbar-expand-xl .navbar-nav { + flex-direction: row + } + + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute + } + + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem + } + + .navbar-expand-xl .navbar-nav-scroll { + overflow: visible + } + + .navbar-expand-xl .navbar-collapse { + display: flex !important; + flex-basis: auto + } + + .navbar-expand-xl .navbar-toggler { + display: none + } +} + +@media (min-width: 1400px) { + .navbar-expand-xxl { + flex-wrap: nowrap; + justify-content: flex-start + } + + .navbar-expand-xxl .navbar-nav { + flex-direction: row + } + + .navbar-expand-xxl .navbar-nav .dropdown-menu { + position: absolute + } + + .navbar-expand-xxl .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem + } + + .navbar-expand-xxl .navbar-nav-scroll { + overflow: visible + } + + .navbar-expand-xxl .navbar-collapse { + display: flex !important; + flex-basis: auto + } + + .navbar-expand-xxl .navbar-toggler { + display: none + } +} + +.navbar-expand { + flex-wrap: nowrap; + justify-content: flex-start +} + +.navbar-expand .navbar-nav { + flex-direction: row +} + +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute +} + +.navbar-expand .navbar-nav .nav-link { + padding-right: .5rem; + padding-left: .5rem +} + +.navbar-expand .navbar-nav-scroll { + overflow: visible +} + +.navbar-expand .navbar-collapse { + display: flex !important; + flex-basis: auto +} + +.navbar-expand .navbar-toggler { + display: none +} + +.navbar-light .navbar-brand { + color: rgba(0, 0, 0, 0.9) +} + +.navbar-light .navbar-brand:hover, +.navbar-light .navbar-brand:focus { + color: rgba(0, 0, 0, 0.9) +} + +.navbar-light .navbar-nav .nav-link { + color: rgba(0, 0, 0, 0.55) +} + +.navbar-light .navbar-nav .nav-link:hover, +.navbar-light .navbar-nav .nav-link:focus { + color: rgba(0, 0, 0, 0.7) +} + +.navbar-light .navbar-nav .nav-link.disabled { + color: rgba(0, 0, 0, 0.3) +} + +.navbar-light .navbar-nav .show>.nav-link, +.navbar-light .navbar-nav .nav-link.active { + color: rgba(0, 0, 0, 0.9) +} + +.navbar-light .navbar-toggler { + color: rgba(0, 0, 0, 0.55); + border-color: rgba(0, 0, 0, 0.1) +} + +.navbar-light .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280,0,0,0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") +} + +.navbar-light .navbar-text { + color: rgba(0, 0, 0, 0.55) +} + +.navbar-light .navbar-text a, +.navbar-light .navbar-text a:hover, +.navbar-light .navbar-text a:focus { + color: rgba(0, 0, 0, 0.9) +} + +.navbar-dark .navbar-brand { + color: #fff +} + +.navbar-dark .navbar-brand:hover, +.navbar-dark .navbar-brand:focus { + color: #fff +} + +.navbar-dark .navbar-nav .nav-link { + color: rgba(255, 255, 255, 0.55) +} + +.navbar-dark .navbar-nav .nav-link:hover, +.navbar-dark .navbar-nav .nav-link:focus { + color: rgba(255, 255, 255, 0.75) +} + +.navbar-dark .navbar-nav .nav-link.disabled { + color: rgba(255, 255, 255, 0.25) +} + +.navbar-dark .navbar-nav .show>.nav-link, +.navbar-dark .navbar-nav .nav-link.active { + color: #fff +} + +.navbar-dark .navbar-toggler { + color: rgba(255, 255, 255, 0.55); + border-color: rgba(255, 255, 255, 0.1) +} + +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") +} + +.navbar-dark .navbar-text { + color: rgba(255, 255, 255, 0.55) +} + +.navbar-dark .navbar-text a, +.navbar-dark .navbar-text a:hover, +.navbar-dark .navbar-text a:focus { + color: #fff +} + +.kartu { + position: relative; + display: flex; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + background-color: #fff; + background-clip: border-box; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 8px +} + +.kartu>hr { + margin-right: 0; + margin-left: 0 +} + +.kartu>.list-group { + border-top: inherit; + border-bottom: inherit +} + +.kartu>.list-group:first-child { + border-top-width: 0; + border-top-left-radius: 7px; + border-top-right-radius: 7px +} + +.kartu>.list-group:last-child { + border-bottom-width: 0; + border-bottom-right-radius: 7px; + border-bottom-left-radius: 7px +} + +.kartu>.kartu-header+.list-group, +.kartu>.list-group+.kartu-footer { + border-top: 0 +} + +.kartu-bodi { + flex: 1 1 auto; + padding: 1rem 1rem +} + +.kartu-title { + margin-bottom: .5rem +} + +.kartu-subtitle { + margin-top: -.25rem; + margin-bottom: 0 +} + +.kartu-text:last-child { + margin-bottom: 0 +} + +.kartu-link:hover { + text-decoration: none +} + +.kartu-link+.kartu-link { + margin-left: 1rem +} + +.kartu-header { + padding: .5rem 1rem; + margin-bottom: 0; + background-color: rgba(0, 0, 0, 0.03); + border-bottom: 1px solid rgba(0, 0, 0, 0.125) +} + +.kartu-header:first-child { + border-radius: 7px 7px 0 0 +} + +.kartu-footer { + padding: .5rem 1rem; + background-color: rgba(0, 0, 0, 0.03); + border-top: 1px solid rgba(0, 0, 0, 0.125) +} + +.kartu-footer:last-child { + border-radius: 0 0 7px 7px +} + +.kartu-header-tabs { + margin-right: -.5rem; + margin-bottom: -.5rem; + margin-left: -.5rem; + border-bottom: 0 +} + +.kartu-header-pills { + margin-right: -.5rem; + margin-left: -.5rem +} + +.kartu-img-overlay { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: 1rem; + border-radius: 7px +} + +.kartu-img, +.kartu-img-top, +.kartu-img-bottom { + width: 100% +} + +.kartu-img, +.kartu-img-top { + border-top-left-radius: 7px; + border-top-right-radius: 7px +} + +.kartu-img, +.kartu-img-bottom { + border-bottom-right-radius: 7px; + border-bottom-left-radius: 7px +} + +.kartu-group>.kartu { + margin-bottom: .75rem +} + +@media (min-width: 576px) { + .kartu-group { + display: flex; + flex-flow: row wrap + } + + .kartu-group>.kartu { + flex: 1 0 0%; + margin-bottom: 0 + } + + .kartu-group>.kartu+.kartu { + margin-left: 0; + border-left: 0 + } + + .kartu-group>.kartu:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0 + } + + .kartu-group>.kartu:not(:last-child) .kartu-img-top, + .kartu-group>.kartu:not(:last-child) .kartu-header { + border-top-right-radius: 0 + } + + .kartu-group>.kartu:not(:last-child) .kartu-img-bottom, + .kartu-group>.kartu:not(:last-child) .kartu-footer { + border-bottom-right-radius: 0 + } + + .kartu-group>.kartu:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0 + } + + .kartu-group>.kartu:not(:first-child) .kartu-img-top, + .kartu-group>.kartu:not(:first-child) .kartu-header { + border-top-left-radius: 0 + } + + .kartu-group>.kartu:not(:first-child) .kartu-img-bottom, + .kartu-group>.kartu:not(:first-child) .kartu-footer { + border-bottom-left-radius: 0 + } +} + +.accordion-button { + position: relative; + display: flex; + align-items: center; + width: 100%; + padding: 1rem 1.25rem; + font-size: 1rem; + color: #777; + text-align: left; + background-color: #fff; + border: 0; + border-radius: 0; + overflow-anchor: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease +} + +@media (prefers-reduced-motion: reduce) { + .accordion-button { + transition: none + } +} + +.accordion-button:not(.collapsed) { + color: #527e49; + background-color: #eff4ee; + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125) +} + +.accordion-button:not(.collapsed)::after { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23527e49'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + transform: rotate(-180deg) +} + +.accordion-button::after { + flex-shrink: 0; + width: 1.25rem; + height: 1.25rem; + margin-left: auto; + content: ""; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23777'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-size: 1.25rem; + transition: transform 0.2s ease-in-out +} + +@media (prefers-reduced-motion: reduce) { + .accordion-button::after { + transition: none + } +} + +.accordion-button:hover { + z-index: 2 +} + +.accordion-button:focus { + z-index: 3; + border-color: #adc6a8; + outline: 0; + box-shadow: 0 0 0 .25rem rgba(91, 140, 81, 0.25) +} + +.accordion-header { + margin-bottom: 0 +} + +.accordion-item { + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125) +} + +.accordion-item:first-of-type { + border-top-left-radius: 8px; + border-top-right-radius: 8px +} + +.accordion-item:first-of-type .accordion-button { + border-top-left-radius: 7px; + border-top-right-radius: 7px +} + +.accordion-item:not(:first-of-type) { + border-top: 0 +} + +.accordion-item:last-of-type { + border-bottom-right-radius: 8px; + border-bottom-left-radius: 8px +} + +.accordion-item:last-of-type .accordion-button.collapsed { + border-bottom-right-radius: 7px; + border-bottom-left-radius: 7px +} + +.accordion-item:last-of-type .accordion-collapse { + border-bottom-right-radius: 8px; + border-bottom-left-radius: 8px +} + +.accordion-body { + padding: 1rem 1.25rem +} + +.accordion-flush .accordion-collapse { + border-width: 0 +} + +.accordion-flush .accordion-item { + border-right: 0; + border-left: 0; + border-radius: 0 +} + +.accordion-flush .accordion-item:first-child { + border-top: 0 +} + +.accordion-flush .accordion-item:last-child { + border-bottom: 0 +} + +.accordion-flush .accordion-item .accordion-button { + border-radius: 0 +} + +.bagian-atas { + display: flex; + flex-wrap: wrap; + padding: 0 0; + margin-bottom: 1rem; + list-style: none +} + +.bagian-atas-item+.bagian-atas-item { + padding-left: .5rem +} + +.bagian-atas-item+.bagian-atas-item::before { + float: left; + padding-right: .5rem; + color: #6c757d; + content: var(--bs-bagian-atas-divider, "/") + /* rtl: var(--bs-bagian-atas-divider, "/") */ +} + +.bagian-atas-item.active { + color: #6c757d +} + +.pagination { + display: flex; + padding-left: 0; + list-style: none +} + +.page-link { + position: relative; + display: block; + color: #5B8C51; + background-color: #fff; + border: 1px solid #dee2e6; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out +} + +@media (prefers-reduced-motion: reduce) { + .page-link { + transition: none + } +} + +.page-link:hover { + z-index: 2; + color: #497041; + background-color: #e9ecef; + border-color: #dee2e6 +} + +.page-link:focus { + z-index: 3; + color: #497041; + background-color: #e9ecef; + outline: 0; + box-shadow: 0 0 0 .25rem rgba(91, 140, 81, 0.25) +} + +.page-item:not(:first-child) .page-link { + margin-left: -1px +} + +.page-item.active .page-link { + z-index: 3; + color: #fff; + background-color: #5B8C51; + border-color: #5B8C51 +} + +.page-item.disabled .page-link { + color: #6c757d; + pointer-events: none; + background-color: #fff; + border-color: #dee2e6 +} + +.page-link { + padding: .375rem .75rem +} + +.page-item:first-child .page-link { + border-top-left-radius: 8px; + border-bottom-left-radius: 8px +} + +.page-item:last-child .page-link { + border-top-right-radius: 8px; + border-bottom-right-radius: 8px +} + +.pagination-lg .page-link { + padding: .75rem 1.5rem; + font-size: 1.25rem +} + +.pagination-lg .page-item:first-child .page-link { + border-top-left-radius: 8px; + border-bottom-left-radius: 8px +} + +.pagination-lg .page-item:last-child .page-link { + border-top-right-radius: 8px; + border-bottom-right-radius: 8px +} + +.pagination-sm .page-link { + padding: .25rem .5rem; + font-size: .875rem +} + +.pagination-sm .page-item:first-child .page-link { + border-top-left-radius: 8px; + border-bottom-left-radius: 8px +} + +.pagination-sm .page-item:last-child .page-link { + border-top-right-radius: 8px; + border-bottom-right-radius: 8px +} + +.badge { + display: inline-block; + padding: .35em .65em; + font-size: .75em; + font-weight: 700; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 8px +} + +.badge:empty { + display: none +} + +.tombol .badge { + position: relative; + top: -1px +} + +.alert { + position: relative; + padding: 1rem 1rem; + margin-bottom: 1rem; + border: 1px solid transparent; + border-radius: 8px +} + +.alert-heading { + color: inherit +} + +.alert-link { + font-weight: 700 +} + +.alert-dismissible { + padding-right: 3rem +} + +.alert-dismissible .tombol-tutup { + position: absolute; + top: 0; + right: 0; + z-index: 2; + padding: 1.25rem 1rem +} + +.alert-primary { + color: #375431; + background-color: #dee8dc; + border-color: #ceddcb +} + +.alert-primary .alert-link { + color: #2c4327 +} + +.alert-secondary { + color: #5f5826; + background-color: #fbf8df; + border-color: #faf5cf +} + +.alert-secondary .alert-link { + color: #4c461e +} + +.alert-success { + color: #0f5132; + background-color: #d1e7dd; + border-color: #badbcc +} + +.alert-success .alert-link { + color: #0c4128 +} + +.alert-info { + color: #055160; + background-color: #cff4fc; + border-color: #b6effb +} + +.alert-info .alert-link { + color: #04414d +} + +.alert-warning { + color: #664d03; + background-color: #fff3cd; + border-color: #ffecb5 +} + +.alert-warning .alert-link { + color: #523e02 +} + +.alert-danger { + color: #842029; + background-color: #f8d7da; + border-color: #f5c2c7 +} + +.alert-danger .alert-link { + color: #6a1a21 +} + +.alert-light { + color: #636363; + background-color: #fdfdfd; + border-color: #fdfdfd +} + +.alert-light .alert-link { + color: #4f4f4f +} + +.alert-dark { + color: #262c25; + background-color: #d9dbd8; + border-color: #c6c9c5 +} + +.alert-dark .alert-link { + color: #1e231e +} + +@keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem + } +} + +.progress { + display: flex; + height: 1rem; + overflow: hidden; + font-size: .75rem; + background-color: #e9ecef; + border-radius: 8px +} + +.progress-bar { + display: flex; + flex-direction: column; + justify-content: center; + overflow: hidden; + color: #fff; + text-align: center; + white-space: nowrap; + background-color: #5B8C51; + transition: width 0.6s ease +} + +@media (prefers-reduced-motion: reduce) { + .progress-bar { + transition: none + } +} + +.progress-bar-striped { + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 1rem 1rem +} + +.progress-bar-animated { + animation: 1s linear infinite progress-bar-stripes +} + +@media (prefers-reduced-motion: reduce) { + .progress-bar-animated { + animation: none + } +} + +.list-group { + display: flex; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + border-radius: 8px +} + +.list-group-numbered { + list-style-type: none; + counter-reset: section +} + +.list-group-numbered>li::before { + content: counters(section, ".") ". "; + counter-increment: section +} + +.list-group-item-action { + width: 100%; + color: #495057; + text-align: inherit +} + +.list-group-item-action:hover, +.list-group-item-action:focus { + z-index: 1; + color: #495057; + text-decoration: none; + background-color: #f8f9fa +} + +.list-group-item-action:active { + color: #777; + background-color: #e9ecef +} + +.list-group-item { + position: relative; + display: block; + padding: .5rem 1rem; + color: #212529; + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125) +} + +.list-group-item:first-child { + border-top-left-radius: inherit; + border-top-right-radius: inherit +} + +.list-group-item:last-child { + border-bottom-right-radius: inherit; + border-bottom-left-radius: inherit +} + +.list-group-item.disabled, +.list-group-item:disabled { + color: #6c757d; + pointer-events: none; + background-color: #fff +} + +.list-group-item.active { + z-index: 2; + color: #fff; + background-color: #5B8C51; + border-color: #5B8C51 +} + +.list-group-item+.list-group-item { + border-top-width: 0 +} + +.list-group-item+.list-group-item.active { + margin-top: -1px; + border-top-width: 1px +} + +.list-group-horizontal { + flex-direction: row +} + +.list-group-horizontal>.list-group-item:first-child { + border-bottom-left-radius: 8px; + border-top-right-radius: 0 +} + +.list-group-horizontal>.list-group-item:last-child { + border-top-right-radius: 8px; + border-bottom-left-radius: 0 +} + +.list-group-horizontal>.list-group-item.active { + margin-top: 0 +} + +.list-group-horizontal>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0 +} + +.list-group-horizontal>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px +} + +@media (min-width: 576px) { + .list-group-horizontal-sm { + flex-direction: row + } + + .list-group-horizontal-sm>.list-group-item:first-child { + border-bottom-left-radius: 8px; + border-top-right-radius: 0 + } + + .list-group-horizontal-sm>.list-group-item:last-child { + border-top-right-radius: 8px; + border-bottom-left-radius: 0 + } + + .list-group-horizontal-sm>.list-group-item.active { + margin-top: 0 + } + + .list-group-horizontal-sm>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0 + } + + .list-group-horizontal-sm>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px + } +} + +@media (min-width: 768px) { + .list-group-horizontal-md { + flex-direction: row + } + + .list-group-horizontal-md>.list-group-item:first-child { + border-bottom-left-radius: 8px; + border-top-right-radius: 0 + } + + .list-group-horizontal-md>.list-group-item:last-child { + border-top-right-radius: 8px; + border-bottom-left-radius: 0 + } + + .list-group-horizontal-md>.list-group-item.active { + margin-top: 0 + } + + .list-group-horizontal-md>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0 + } + + .list-group-horizontal-md>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px + } +} + +@media (min-width: 992px) { + .list-group-horizontal-lg { + flex-direction: row + } + + .list-group-horizontal-lg>.list-group-item:first-child { + border-bottom-left-radius: 8px; + border-top-right-radius: 0 + } + + .list-group-horizontal-lg>.list-group-item:last-child { + border-top-right-radius: 8px; + border-bottom-left-radius: 0 + } + + .list-group-horizontal-lg>.list-group-item.active { + margin-top: 0 + } + + .list-group-horizontal-lg>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0 + } + + .list-group-horizontal-lg>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px + } +} + +@media (min-width: 1200px) { + .list-group-horizontal-xl { + flex-direction: row + } + + .list-group-horizontal-xl>.list-group-item:first-child { + border-bottom-left-radius: 8px; + border-top-right-radius: 0 + } + + .list-group-horizontal-xl>.list-group-item:last-child { + border-top-right-radius: 8px; + border-bottom-left-radius: 0 + } + + .list-group-horizontal-xl>.list-group-item.active { + margin-top: 0 + } + + .list-group-horizontal-xl>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0 + } + + .list-group-horizontal-xl>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px + } +} + +@media (min-width: 1400px) { + .list-group-horizontal-xxl { + flex-direction: row + } + + .list-group-horizontal-xxl>.list-group-item:first-child { + border-bottom-left-radius: 8px; + border-top-right-radius: 0 + } + + .list-group-horizontal-xxl>.list-group-item:last-child { + border-top-right-radius: 8px; + border-bottom-left-radius: 0 + } + + .list-group-horizontal-xxl>.list-group-item.active { + margin-top: 0 + } + + .list-group-horizontal-xxl>.list-group-item+.list-group-item { + border-top-width: 1px; + border-left-width: 0 + } + + .list-group-horizontal-xxl>.list-group-item+.list-group-item.active { + margin-left: -1px; + border-left-width: 1px + } +} + +.list-group-flush { + border-radius: 0 +} + +.list-group-flush>.list-group-item { + border-width: 0 0 1px +} + +.list-group-flush>.list-group-item:last-child { + border-bottom-width: 0 +} + +.list-group-item-primary { + color: #375431; + background-color: #dee8dc +} + +.list-group-item-primary.list-group-item-action:hover, +.list-group-item-primary.list-group-item-action:focus { + color: #375431; + background-color: #c8d1c6 +} + +.list-group-item-primary.list-group-item-action.active { + color: #fff; + background-color: #375431; + border-color: #375431 +} + +.list-group-item-secondary { + color: #5f5826; + background-color: #fbf8df +} + +.list-group-item-secondary.list-group-item-action:hover, +.list-group-item-secondary.list-group-item-action:focus { + color: #5f5826; + background-color: #e2dfc9 +} + +.list-group-item-secondary.list-group-item-action.active { + color: #fff; + background-color: #5f5826; + border-color: #5f5826 +} + +.list-group-item-success { + color: #0f5132; + background-color: #d1e7dd +} + +.list-group-item-success.list-group-item-action:hover, +.list-group-item-success.list-group-item-action:focus { + color: #0f5132; + background-color: #bcd0c7 +} + +.list-group-item-success.list-group-item-action.active { + color: #fff; + background-color: #0f5132; + border-color: #0f5132 +} + +.list-group-item-info { + color: #055160; + background-color: #cff4fc +} + +.list-group-item-info.list-group-item-action:hover, +.list-group-item-info.list-group-item-action:focus { + color: #055160; + background-color: #badce3 +} + +.list-group-item-info.list-group-item-action.active { + color: #fff; + background-color: #055160; + border-color: #055160 +} + +.list-group-item-warning { + color: #664d03; + background-color: #fff3cd +} + +.list-group-item-warning.list-group-item-action:hover, +.list-group-item-warning.list-group-item-action:focus { + color: #664d03; + background-color: #e6dbb9 +} + +.list-group-item-warning.list-group-item-action.active { + color: #fff; + background-color: #664d03; + border-color: #664d03 +} + +.list-group-item-danger { + color: #842029; + background-color: #f8d7da +} + +.list-group-item-danger.list-group-item-action:hover, +.list-group-item-danger.list-group-item-action:focus { + color: #842029; + background-color: #dfc2c4 +} + +.list-group-item-danger.list-group-item-action.active { + color: #fff; + background-color: #842029; + border-color: #842029 +} + +.list-group-item-light { + color: #636363; + background-color: #fdfdfd +} + +.list-group-item-light.list-group-item-action:hover, +.list-group-item-light.list-group-item-action:focus { + color: #636363; + background-color: #e4e4e4 +} + +.list-group-item-light.list-group-item-action.active { + color: #fff; + background-color: #636363; + border-color: #636363 +} + +.list-group-item-dark { + color: #262c25; + background-color: #d9dbd8 +} + +.list-group-item-dark.list-group-item-action:hover, +.list-group-item-dark.list-group-item-action:focus { + color: #262c25; + background-color: #c3c5c2 +} + +.list-group-item-dark.list-group-item-action.active { + color: #fff; + background-color: #262c25; + border-color: #262c25 +} + +.toast { + width: 350px; + max-width: 100%; + font-size: .875rem; + pointer-events: auto; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.1); + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); + border-radius: 8px +} + +.modal-open { + overflow: hidden +} + +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto +} + +.modal { + position: fixed; + top: 0; + left: 0; + z-index: 1060; + display: none; + width: 100%; + height: 100%; + overflow: hidden; + outline: 0 +} + +.modal-dialog { + position: relative; + width: auto; + margin: .5rem; + pointer-events: none +} + +.modal.fade .modal-dialog { + transition: transform 0.3s ease-out; + transform: translate(0, -50px) +} + +@media (prefers-reduced-motion: reduce) { + .modal.fade .modal-dialog { + transition: none + } +} + +.modal.show .modal-dialog { + transform: none +} + +.modal.modal-static .modal-dialog { + transform: scale(1.02) +} + +.modal-dialog-scrollable { + height: calc(100% - 1rem) +} + +.modal-dialog-scrollable .modal-content { + max-height: 100%; + overflow: hidden +} + +.modal-dialog-scrollable .modal-body { + overflow-y: auto +} + +.modal-dialog-centered { + display: flex; + align-items: center; + min-height: calc(100% - 1rem) +} + +.modal-content { + position: relative; + display: flex; + flex-direction: column; + width: 100%; + pointer-events: auto; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 8px; + outline: 0 +} + +.modal-backdrop { + position: fixed; + top: 0; + left: 0; + z-index: 1040; + width: 100vw; + height: 100vh; + background-color: #000 +} + +.modal-backdrop.fade { + opacity: 0 +} + +.modal-backdrop.show { + opacity: .5 +} + +.modal-header { + display: flex; + flex-shrink: 0; + align-items: center; + justify-content: space-between; + padding: 1rem 1rem; + border-bottom: 1px solid #dee2e6; + border-top-left-radius: 7px; + border-top-right-radius: 7px +} + +.modal-header .tombol-tutup { + padding: .5rem .5rem; + margin: -.5rem -.5rem -.5rem auto +} + +.modal-title { + margin-bottom: 0; + line-height: 1.5 +} + +.modal-body { + position: relative; + flex: 1 1 auto; + padding: 1rem +} + +.modal-footer { + display: flex; + flex-wrap: wrap; + flex-shrink: 0; + align-items: center; + justify-content: flex-end; + padding: .75rem; + border-top: 1px solid #dee2e6; + border-bottom-right-radius: 7px; + border-bottom-left-radius: 7px +} + +.modal-footer>* { + margin: .25rem +} + +@media (min-width: 576px) { + .modal-dialog { + max-width: 500px; + margin: 1.75rem auto + } + + .modal-dialog-scrollable { + height: calc(100% - 3.5rem) + } + + .modal-dialog-centered { + min-height: calc(100% - 3.5rem) + } + + .modal-sm { + max-width: 300px + } +} + +@media (min-width: 992px) { + + .modal-lg, + .modal-xl { + max-width: 800px + } +} + +@media (min-width: 1200px) { + .modal-xl { + max-width: 1140px + } +} + +.modal-fullscreen { + width: 100vw; + max-width: none; + height: 100%; + margin: 0 +} + +.modal-fullscreen .modal-content { + height: 100%; + border: 0; + border-radius: 0 +} + +.modal-fullscreen .modal-header { + border-radius: 0 +} + +.modal-fullscreen .modal-body { + overflow-y: auto +} + +.modal-fullscreen .modal-footer { + border-radius: 0 +} + +@media (max-width: 575.98px) { + .modal-fullscreen-sm-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0 + } + + .modal-fullscreen-sm-down .modal-content { + height: 100%; + border: 0; + border-radius: 0 + } + + .modal-fullscreen-sm-down .modal-header { + border-radius: 0 + } + + .modal-fullscreen-sm-down .modal-body { + overflow-y: auto + } + + .modal-fullscreen-sm-down .modal-footer { + border-radius: 0 + } +} + +@media (max-width: 767.98px) { + .modal-fullscreen-md-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0 + } + + .modal-fullscreen-md-down .modal-content { + height: 100%; + border: 0; + border-radius: 0 + } + + .modal-fullscreen-md-down .modal-header { + border-radius: 0 + } + + .modal-fullscreen-md-down .modal-body { + overflow-y: auto + } + + .modal-fullscreen-md-down .modal-footer { + border-radius: 0 + } +} + +@media (max-width: 991.98px) { + .modal-fullscreen-lg-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0 + } + + .modal-fullscreen-lg-down .modal-content { + height: 100%; + border: 0; + border-radius: 0 + } + + .modal-fullscreen-lg-down .modal-header { + border-radius: 0 + } + + .modal-fullscreen-lg-down .modal-body { + overflow-y: auto + } + + .modal-fullscreen-lg-down .modal-footer { + border-radius: 0 + } +} + +@media (max-width: 1199.98px) { + .modal-fullscreen-xl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0 + } + + .modal-fullscreen-xl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0 + } + + .modal-fullscreen-xl-down .modal-header { + border-radius: 0 + } + + .modal-fullscreen-xl-down .modal-body { + overflow-y: auto + } + + .modal-fullscreen-xl-down .modal-footer { + border-radius: 0 + } +} + +@media (max-width: 1399.98px) { + .modal-fullscreen-xxl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0 + } + + .modal-fullscreen-xxl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0 + } + + .modal-fullscreen-xxl-down .modal-header { + border-radius: 0 + } + + .modal-fullscreen-xxl-down .modal-body { + overflow-y: auto + } + + .modal-fullscreen-xxl-down .modal-footer { + border-radius: 0 + } +} + +.tooltip { + position: absolute; + z-index: 1080; + display: block; + margin: 0; + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: .875rem; + word-wrap: break-word; + opacity: 0 +} + +.tooltip.show { + opacity: .9 +} + +.tooltip .tooltip-arrow { + position: absolute; + display: block; + width: .8rem; + height: .4rem +} + +.tooltip .tooltip-arrow::before { + position: absolute; + content: ""; + border-color: transparent; + border-style: solid +} + +.bs-tooltip-top, +.bs-tooltip-auto[data-popper-placement^="top"] { + padding: .4rem 0 +} + +.bs-tooltip-top .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow { + bottom: 0 +} + +.bs-tooltip-top .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before { + top: -1px; + border-width: .4rem .4rem 0; + border-top-color: #000 +} + +.bs-tooltip-end, +.bs-tooltip-auto[data-popper-placement^="right"] { + padding: 0 .4rem +} + +.bs-tooltip-end .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow { + left: 0; + width: .4rem; + height: .8rem +} + +.bs-tooltip-end .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow::before { + right: -1px; + border-width: .4rem .4rem .4rem 0; + border-right-color: #000 +} + +.bs-tooltip-bottom, +.bs-tooltip-auto[data-popper-placement^="bottom"] { + padding: .4rem 0 +} + +.bs-tooltip-bottom .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow { + top: 0 +} + +.bs-tooltip-bottom .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow::before { + bottom: -1px; + border-width: 0 .4rem .4rem; + border-bottom-color: #000 +} + +.bs-tooltip-start, +.bs-tooltip-auto[data-popper-placement^="left"] { + padding: 0 .4rem +} + +.bs-tooltip-start .tooltip-arrow, +.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow { + right: 0; + width: .4rem; + height: .8rem +} + +.bs-tooltip-start .tooltip-arrow::before, +.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow::before { + left: -1px; + border-width: .4rem 0 .4rem .4rem; + border-left-color: #000 +} + +.tooltip-inner { + max-width: 200px; + padding: .25rem .5rem; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 8px +} + +.popover { + position: absolute; + top: 0; + left: 0 + /* rtl:ignore */ + ; + z-index: 1070; + display: block; + max-width: 276px; + font-family: "Open Sans", sans-serif; + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: .875rem; + word-wrap: break-word; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 8px +} + +.popover .popover-arrow { + position: absolute; + display: block; + width: 1rem; + height: .5rem +} + +.popover .popover-arrow::before, +.popover .popover-arrow::after { + position: absolute; + display: block; + content: ""; + border-color: transparent; + border-style: solid +} + +.bs-popover-top>.popover-arrow, +.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow { + bottom: calc(-.5rem - 1px) +} + +.bs-popover-top>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before { + bottom: 0; + border-width: .5rem .5rem 0; + border-top-color: rgba(0, 0, 0, 0.25) +} + +.bs-popover-top>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after { + bottom: 1px; + border-width: .5rem .5rem 0; + border-top-color: #fff +} + +.bs-popover-end>.popover-arrow, +.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow { + left: calc(-.5rem - 1px); + width: .5rem; + height: 1rem +} + +.bs-popover-end>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before { + left: 0; + border-width: .5rem .5rem .5rem 0; + border-right-color: rgba(0, 0, 0, 0.25) +} + +.bs-popover-end>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after { + left: 1px; + border-width: .5rem .5rem .5rem 0; + border-right-color: #fff +} + +.bs-popover-bottom>.popover-arrow, +.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow { + top: calc(-.5rem - 1px) +} + +.bs-popover-bottom>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before { + top: 0; + border-width: 0 .5rem .5rem .5rem; + border-bottom-color: rgba(0, 0, 0, 0.25) +} + +.bs-popover-bottom>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after { + top: 1px; + border-width: 0 .5rem .5rem .5rem; + border-bottom-color: #fff +} + +.bs-popover-bottom .popover-header::before, +.bs-popover-auto[data-popper-placement^="bottom"] .popover-header::before { + position: absolute; + top: 0; + left: 50%; + display: block; + width: 1rem; + margin-left: -.5rem; + content: ""; + border-bottom: 1px solid #f0f0f0 +} + +.bs-popover-start>.popover-arrow, +.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow { + right: calc(-.5rem - 1px); + width: .5rem; + height: 1rem +} + +.bs-popover-start>.popover-arrow::before, +.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before { + right: 0; + border-width: .5rem 0 .5rem .5rem; + border-left-color: rgba(0, 0, 0, 0.25) +} + +.bs-popover-start>.popover-arrow::after, +.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after { + right: 1px; + border-width: .5rem 0 .5rem .5rem; + border-left-color: #fff +} + +.popover-header { + padding: .5rem 1rem; + margin-bottom: 0; + font-size: 1rem; + color: #404A3D; + background-color: #f0f0f0; + border-bottom: 1px solid #d8d8d8; + border-top-left-radius: 7px; + border-top-right-radius: 7px +} + +.popover-header:empty { + display: none +} + +.popover-body { + padding: 1rem 1rem; + color: #777 +} + +.carousel { + position: relative +} + +.carousel.pointer-event { + touch-action: pan-y +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden +} + +.carousel-inner::after { + display: block; + clear: both; + content: "" +} + +.carousel-item { + position: relative; + display: none; + float: left; + width: 100%; + margin-right: -100%; + backface-visibility: hidden; + transition: transform .6s ease-in-out +} + +@media (prefers-reduced-motion: reduce) { + .carousel-item { + transition: none + } +} + +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block +} + +.carousel-item-next:not(.carousel-item-start), +.active.carousel-item-end { + transform: translateX(100%) +} + +.carousel-item-prev:not(.carousel-item-end), +.active.carousel-item-start { + transform: translateX(-100%) +} + +.carousel-fade .carousel-item { + opacity: 0; + transition-property: opacity; + transform: none +} + +.carousel-fade .carousel-item.active, +.carousel-fade .carousel-item-next.carousel-item-start, +.carousel-fade .carousel-item-prev.carousel-item-end { + z-index: 1; + opacity: 1 +} + +.carousel-fade .active.carousel-item-start, +.carousel-fade .active.carousel-item-end { + z-index: 0; + opacity: 0; + transition: opacity 0s .6s +} + +@media (prefers-reduced-motion: reduce) { + + .carousel-fade .active.carousel-item-start, + .carousel-fade .active.carousel-item-end { + transition: none + } +} + +.carousel-control-prev, +.carousel-control-next { + position: absolute; + top: 0; + bottom: 0; + z-index: 1; + display: flex; + align-items: center; + justify-content: center; + width: 15%; + padding: 0; + color: #fff; + text-align: center; + background: none; + border: 0; + opacity: .5; + transition: opacity 0.15s ease +} + +@media (prefers-reduced-motion: reduce) { + + .carousel-control-prev, + .carousel-control-next { + transition: none + } +} + +.carousel-control-prev:hover, +.carousel-control-prev:focus, +.carousel-control-next:hover, +.carousel-control-next:focus { + color: #fff; + text-decoration: none; + outline: 0; + opacity: .9 +} + +.carousel-control-prev { + left: 0 +} + +.carousel-control-next { + right: 0 +} + +.carousel-control-prev-icon, +.carousel-control-next-icon { + display: inline-block; + width: 2rem; + height: 2rem; + background-repeat: no-repeat; + background-position: 50%; + background-size: 100% 100% +} + +.carousel-control-prev-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e") +} + +.carousel-control-next-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") +} + +.carousel-indicators { + position: absolute; + right: 0; + bottom: 0; + left: 0; + z-index: 2; + display: flex; + justify-content: center; + padding: 0; + margin-right: 15%; + margin-bottom: 1rem; + margin-left: 15%; + list-style: none +} + +.carousel-indicators [data-bs-target] { + box-sizing: content-box; + flex: 0 1 auto; + width: 30px; + height: 3px; + padding: 0; + margin-right: 3px; + margin-left: 3px; + text-indent: -999px; + cursor: pointer; + background-color: #fff; + background-clip: padding-box; + border: 0; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + opacity: .5; + transition: opacity 0.6s ease +} + +@media (prefers-reduced-motion: reduce) { + .carousel-indicators [data-bs-target] { + transition: none + } +} + +.carousel-indicators .active { + opacity: 1 +} + +.carousel-caption { + position: absolute; + right: 15%; + bottom: 1.25rem; + left: 15%; + padding-top: 1.25rem; + padding-bottom: 1.25rem; + color: #fff; + text-align: center +} + +.carousel-dark .carousel-control-prev-icon, +.carousel-dark .carousel-control-next-icon { + filter: invert(1) grayscale(100) +} + +.carousel-dark .carousel-indicators [data-bs-target] { + background-color: #000 +} + +.carousel-dark .carousel-caption { + color: #000 +} + +@keyframes spinner-border { + to { + transform: rotate(360deg) + /* rtl:ignore */ + } +} + +.spinner-border { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: -.125em; + border: .25em solid currentColor; + border-right-color: transparent; + border-radius: 50%; + animation: .75s linear infinite spinner-border +} + +.spinner-border-sm { + width: 1rem; + height: 1rem; + border-width: .2em +} + +@keyframes spinner-grow { + 0% { + transform: scale(0) + } + + 50% { + opacity: 1; + transform: none + } +} + +.spinner-grow { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: -.125em; + background-color: currentColor; + border-radius: 50%; + opacity: 0; + animation: .75s linear infinite spinner-grow +} + +.spinner-grow-sm { + width: 1rem; + height: 1rem +} + +@media (prefers-reduced-motion: reduce) { + + .spinner-border, + .spinner-grow { + animation-duration: 1.5s + } +} + +.offcanvas { + position: fixed; + bottom: 0; + z-index: 1050; + display: flex; + flex-direction: column; + max-width: 100%; + visibility: hidden; + background-color: #fff; + background-clip: padding-box; + outline: 0; + transition: transform .3s ease-in-out +} + +@media (prefers-reduced-motion: reduce) { + .offcanvas { + transition: none + } +} + +.offcanvas-header { + display: flex; + align-items: center; + justify-content: space-between; + padding: 1rem 1rem +} + +.offcanvas-header .tombol-tutup { + padding: .5rem .5rem; + margin: -.5rem -.5rem -.5rem auto +} + +.offcanvas-title { + margin-bottom: 0; + line-height: 1.5 +} + +.offcanvas-body { + flex-grow: 1; + padding: 1rem 1rem; + overflow-y: auto +} + +.offcanvas-start { + top: 0; + left: 0; + width: 400px; + border-right: 1px solid rgba(0, 0, 0, 0.2); + transform: translateX(-100%) +} + +.offcanvas-end { + top: 0; + right: 0; + width: 400px; + border-left: 1px solid rgba(0, 0, 0, 0.2); + transform: translateX(100%) +} + +.offcanvas-top { + top: 0; + right: 0; + left: 0; + height: 30vh; + max-height: 100%; + border-bottom: 1px solid rgba(0, 0, 0, 0.2); + transform: translateY(-100%) +} + +.offcanvas-bottom { + right: 0; + left: 0; + height: 30vh; + max-height: 100%; + border-top: 1px solid rgba(0, 0, 0, 0.2); + transform: translateY(100%) +} + +.offcanvas.show { + transform: none +} + +.clearfix::after { + display: block; + clear: both; + content: "" +} + +.link-primary { + color: #5B8C51 +} + +.link-primary:hover, +.link-primary:focus { + color: #7ca374 +} + +.link-secondary { + color: #EDDD5E +} + +.link-secondary:hover, +.link-secondary:focus { + color: #f1e47e +} + +.link-success { + color: #198754 +} + +.link-success:hover, +.link-success:focus { + color: #146c43 +} + +.link-info { + color: #0dcaf0 +} + +.link-info:hover, +.link-info:focus { + color: #3dd5f3 +} + +.link-warning { + color: #ffc107 +} + +.link-warning:hover, +.link-warning:focus { + color: #ffcd39 +} + +.link-danger { + color: #dc3545 +} + +.link-danger:hover, +.link-danger:focus { + color: #b02a37 +} + +.link-light { + color: #F7F7F7 +} + +.link-light:hover, +.link-light:focus { + color: #f9f9f9 +} + +.link-dark { + color: #404A3D +} + +.link-dark:hover, +.link-dark:focus { + color: #333b31 +} + +.ratio { + position: relative; + width: 100% +} + +.ratio::before { + display: block; + padding-top: var(--bs-aspect-ratio); + content: "" +} + +.ratio>* { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100% +} + +.ratio-1x1 { + --bs-aspect-ratio: 100% +} + +.ratio-4x3 { + --bs-aspect-ratio: calc(3 / 4 * 100%) +} + +.ratio-16x9 { + --bs-aspect-ratio: calc(9 / 16 * 100%) +} + +.ratio-21x9 { + --bs-aspect-ratio: calc(9 / 21 * 100%) +} + +.fixed-top { + position: fixed; + top: 0; + right: 0; + left: 0; + z-index: 1030 +} + +.fixed-bottom { + position: fixed; + right: 0; + bottom: 0; + left: 0; + z-index: 1030 +} + +.sticky-top { + position: sticky; + top: 0; + z-index: 1020 +} + +@media (min-width: 576px) { + .sticky-sm-top { + position: sticky; + top: 0; + z-index: 1020 + } +} + +@media (min-width: 768px) { + .sticky-md-top { + position: sticky; + top: 0; + z-index: 1020 + } +} + +@media (min-width: 992px) { + .sticky-lg-top { + position: sticky; + top: 0; + z-index: 1020 + } +} + +@media (min-width: 1200px) { + .sticky-xl-top { + position: sticky; + top: 0; + z-index: 1020 + } +} + +@media (min-width: 1400px) { + .sticky-xxl-top { + position: sticky; + top: 0; + z-index: 1020 + } +} + +.visually-hidden, +.visually-hidden-focusable:not(:focus):not(:focus-within) { + position: absolute !important; + width: 1px !important; + height: 1px !important; + padding: 0 !important; + margin: -1px !important; + overflow: hidden !important; + clip: rect(0, 0, 0, 0) !important; + white-space: nowrap !important; + border: 0 !important +} + +.stretched-link::after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1; + content: "" +} + +.text-truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap +} + +.align-baseline { + vertical-align: baseline !important +} + +.align-top { + vertical-align: top !important +} + +.align-middle { + vertical-align: middle !important +} + +.align-bottom { + vertical-align: bottom !important +} + +.align-text-bottom { + vertical-align: text-bottom !important +} + +.align-text-top { + vertical-align: text-top !important +} + +.float-start { + float: left !important +} + +.float-end { + float: right !important +} + +.float-none { + float: none !important +} + +.overflow-auto { + overflow: auto !important +} + +.overflow-hidden { + overflow: hidden !important +} + +.overflow-visible { + overflow: visible !important +} + +.overflow-scroll { + overflow: scroll !important +} + +.d-inline { + display: inline !important +} + +.d-inline-block { + display: inline-block !important +} + +.d-block { + display: block !important +} + +.d-grid { + display: grid !important +} + +.d-table { + display: table !important +} + +.d-table-row { + display: table-row !important +} + +.d-table-cell { + display: table-cell !important +} + +.d-flex { + display: flex !important +} + +.d-inline-flex { + display: inline-flex !important +} + +.d-none { + display: none !important +} + +.shadow { + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important +} + +.shadow-sm { + box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important +} + +.shadow-lg { + box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important +} + +.shadow-none { + box-shadow: none !important +} + +.position-static { + position: static !important +} + +.position-relative { + position: relative !important +} + +.position-absolute { + position: absolute !important +} + +.position-fixed { + position: fixed !important +} + +.position-sticky { + position: sticky !important +} + +.top-0 { + top: 0 !important +} + +.top-50 { + top: 50% !important +} + +.top-100 { + top: 100% !important +} + +.bottom-0 { + bottom: 0 !important +} + +.bottom-50 { + bottom: 50% !important +} + +.bottom-100 { + bottom: 100% !important +} + +.start-0 { + left: 0 !important +} + +.start-50 { + left: 50% !important +} + +.start-100 { + left: 100% !important +} + +.end-0 { + right: 0 !important +} + +.end-50 { + right: 50% !important +} + +.end-100 { + right: 100% !important +} + +.translate-middle { + transform: translate(-50%, -50%) !important +} + +.translate-middle-x { + transform: translateX(-50%) !important +} + +.translate-middle-y { + transform: translateY(-50%) !important +} + +.border { + border: 1px solid #dee2e6 !important +} + +.border-0 { + border: 0 !important +} + +.border-top { + border-top: 1px solid #dee2e6 !important +} + +.border-top-0 { + border-top: 0 !important +} + +.border-end { + border-right: 1px solid #dee2e6 !important +} + +.border-end-0 { + border-right: 0 !important +} + +.border-bottom { + border-bottom: 1px solid #dee2e6 !important +} + +.border-bottom-0 { + border-bottom: 0 !important +} + +.border-start { + border-left: 1px solid #dee2e6 !important +} + +.border-start-0 { + border-left: 0 !important +} + +.border-primary { + border-color: #5B8C51 !important +} + +.border-secondary { + border-color: #EDDD5E !important +} + +.border-success { + border-color: #198754 !important +} + +.border-info { + border-color: #0dcaf0 !important +} + +.border-warning { + border-color: #ffc107 !important +} + +.border-danger { + border-color: #dc3545 !important +} + +.border-light { + border-color: #F7F7F7 !important +} + +.border-dark { + border-color: #404A3D !important +} + +.border-white { + border-color: #fff !important +} + +.border-1 { + border-width: 1px !important +} + +.border-2 { + border-width: 2px !important +} + +.border-3 { + border-width: 3px !important +} + +.border-4 { + border-width: 4px !important +} + +.border-5 { + border-width: 5px !important +} + +.w-25 { + width: 25% !important +} + +.w-50 { + width: 50% !important +} + +.w-75 { + width: 75% !important +} + +.w-100 { + width: 100% !important +} + +.w-auto { + width: auto !important +} + +.mw-100 { + max-width: 100% !important +} + +.vw-100 { + width: 100vw !important +} + +.min-vw-100 { + min-width: 100vw !important +} + +.h-25 { + height: 25% !important +} + +.h-50 { + height: 50% !important +} + +.h-75 { + height: 75% !important +} + +.h-100 { + height: 100% !important +} + +.h-auto { + height: auto !important +} + +.mh-100 { + max-height: 100% !important +} + +.vh-100 { + height: 100vh !important +} + +.min-vh-100 { + min-height: 100vh !important +} + +.flex-fill { + flex: 1 1 auto !important +} + +.flex-row { + flex-direction: row !important +} + +.flex-column { + flex-direction: column !important +} + +.flex-row-reverse { + flex-direction: row-reverse !important +} + +.flex-column-reverse { + flex-direction: column-reverse !important +} + +.flex-grow-0 { + flex-grow: 0 !important +} + +.flex-grow-1 { + flex-grow: 1 !important +} + +.flex-shrink-0 { + flex-shrink: 0 !important +} + +.flex-shrink-1 { + flex-shrink: 1 !important +} + +.flex-wrap { + flex-wrap: wrap !important +} + +.flex-nowrap { + flex-wrap: nowrap !important +} + +.flex-wrap-reverse { + flex-wrap: wrap-reverse !important +} + +.gap-0 { + gap: 0 !important +} + +.gap-1 { + gap: .25rem !important +} + +.gap-2 { + gap: .5rem !important +} + +.gap-3 { + gap: 1rem !important +} + +.gap-4 { + gap: 1.5rem !important +} + +.gap-5 { + gap: 3rem !important +} + +.justify-content-start { + justify-content: flex-start !important +} + +.justify-content-end { + justify-content: flex-end !important +} + +.konten-tengah { + justify-content: center !important +} + +.justify-content-between { + justify-content: space-between !important +} + +.justify-content-around { + justify-content: space-around !important +} + +.justify-content-evenly { + justify-content: space-evenly !important +} + +.align-items-start { + align-items: flex-start !important +} + +.align-items-end { + align-items: flex-end !important +} + +.jarak-tengah { + align-items: center !important +} + +.align-items-baseline { + align-items: baseline !important +} + +.align-items-stretch { + align-items: stretch !important +} + +.align-content-start { + align-content: flex-start !important +} + +.align-content-end { + align-content: flex-end !important +} + +.align-content-center { + align-content: center !important +} + +.align-content-between { + align-content: space-between !important +} + +.align-content-around { + align-content: space-around !important +} + +.align-content-stretch { + align-content: stretch !important +} + +.align-self-auto { + align-self: auto !important +} + +.align-self-start { + align-self: flex-start !important +} + +.align-self-end { + align-self: flex-end !important +} + +.align-self-center { + align-self: center !important +} + +.align-self-baseline { + align-self: baseline !important +} + +.align-self-stretch { + align-self: stretch !important +} + +.order-first { + order: -1 !important +} + +.order-0 { + order: 0 !important +} + +.order-1 { + order: 1 !important +} + +.order-2 { + order: 2 !important +} + +.order-3 { + order: 3 !important +} + +.order-4 { + order: 4 !important +} + +.order-5 { + order: 5 !important +} + +.order-last { + order: 6 !important +} + +.m-0 { + margin: 0 !important +} + +.m-1 { + margin: .25rem !important +} + +.m-2 { + margin: .5rem !important +} + +.m-3 { + margin: 1rem !important +} + +.m-4 { + margin: 1.5rem !important +} + +.m-5 { + margin: 3rem !important +} + +.m-auto { + margin: auto !important +} + +.mx-0 { + margin-right: 0 !important; + margin-left: 0 !important +} + +.mx-1 { + margin-right: .25rem !important; + margin-left: .25rem !important +} + +.mx-2 { + margin-right: .5rem !important; + margin-left: .5rem !important +} + +.mx-3 { + margin-right: 1rem !important; + margin-left: 1rem !important +} + +.mx-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important +} + +.mx-5 { + margin-right: 3rem !important; + margin-left: 3rem !important +} + +.mx-auto { + margin-right: auto !important; + margin-left: auto !important +} + +.my-0 { + margin-top: 0 !important; + margin-bottom: 0 !important +} + +.my-1 { + margin-top: .25rem !important; + margin-bottom: .25rem !important +} + +.my-2 { + margin-top: .5rem !important; + margin-bottom: .5rem !important +} + +.my-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important +} + +.my-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important +} + +.my-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important +} + +.my-auto { + margin-top: auto !important; + margin-bottom: auto !important +} + +.mt-0 { + margin-top: 0 !important +} + +.mt-1 { + margin-top: .25rem !important +} + +.mt-2 { + margin-top: .5rem !important +} + +.mt-3 { + margin-top: 1rem !important +} + +.mt-4 { + margin-top: 1.5rem !important +} + +.mt-5 { + margin-top: 3rem !important +} + +.mt-auto { + margin-top: auto !important +} + +.me-0 { + margin-right: 0 !important +} + +.me-1 { + margin-right: .25rem !important +} + +.me-2 { + margin-right: .5rem !important +} + +.me-3 { + margin-right: 1rem !important +} + +.me-4 { + margin-right: 1.5rem !important +} + +.me-5 { + margin-right: 3rem !important +} + +.me-auto { + margin-right: auto !important +} + +.mb-0 { + margin-bottom: 0 !important +} + +.mb-1 { + margin-bottom: .25rem !important +} + +.mb-2 { + margin-bottom: .5rem !important +} + +.mb-3 { + margin-bottom: 1rem !important +} + +.jarakbawah-4 { + margin-bottom: 1.5rem !important +} + +.mb-5 { + margin-bottom: 3rem !important +} + +.mb-auto { + margin-bottom: auto !important +} + +.ms-0 { + margin-left: 0 !important +} + +.ms-1 { + margin-left: .25rem !important +} + +.ms-2 { + margin-left: .5rem !important +} + +.ms-3 { + margin-left: 1rem !important +} + +.ms-4 { + margin-left: 1.5rem !important +} + +.ms-5 { + margin-left: 3rem !important +} + +.ms-auto { + margin-left: auto !important +} + +.m-n1 { + margin: -.25rem !important +} + +.m-n2 { + margin: -.5rem !important +} + +.m-n3 { + margin: -1rem !important +} + +.m-n4 { + margin: -1.5rem !important +} + +.m-n5 { + margin: -3rem !important +} + +.mx-n1 { + margin-right: -.25rem !important; + margin-left: -.25rem !important +} + +.mx-n2 { + margin-right: -.5rem !important; + margin-left: -.5rem !important +} + +.mx-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important +} + +.mx-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important +} + +.mx-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important +} + +.my-n1 { + margin-top: -.25rem !important; + margin-bottom: -.25rem !important +} + +.my-n2 { + margin-top: -.5rem !important; + margin-bottom: -.5rem !important +} + +.my-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important +} + +.my-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important +} + +.my-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important +} + +.mt-n1 { + margin-top: -.25rem !important +} + +.mt-n2 { + margin-top: -.5rem !important +} + +.mt-n3 { + margin-top: -1rem !important +} + +.mt-n4 { + margin-top: -1.5rem !important +} + +.mt-n5 { + margin-top: -3rem !important +} + +.me-n1 { + margin-right: -.25rem !important +} + +.me-n2 { + margin-right: -.5rem !important +} + +.me-n3 { + margin-right: -1rem !important +} + +.me-n4 { + margin-right: -1.5rem !important +} + +.me-n5 { + margin-right: -3rem !important +} + +.mb-n1 { + margin-bottom: -.25rem !important +} + +.mb-n2 { + margin-bottom: -.5rem !important +} + +.mb-n3 { + margin-bottom: -1rem !important +} + +.mb-n4 { + margin-bottom: -1.5rem !important +} + +.mb-n5 { + margin-bottom: -3rem !important +} + +.ms-n1 { + margin-left: -.25rem !important +} + +.ms-n2 { + margin-left: -.5rem !important +} + +.ms-n3 { + margin-left: -1rem !important +} + +.ms-n4 { + margin-left: -1.5rem !important +} + +.ms-n5 { + margin-left: -3rem !important +} + +.p-0 { + padding: 0 !important +} + +.p-1 { + padding: .25rem !important +} + +.p-2 { + padding: .5rem !important +} + +.p-3 { + padding: 1rem !important +} + +.p-4 { + padding: 1.5rem !important +} + +.p-5 { + padding: 3rem !important +} + +.jarakkirikanan-0 { + padding-right: 0 !important; + padding-left: 0 !important +} + +.jarakkirikanan-1 { + padding-right: .25rem !important; + padding-left: .25rem !important +} + +.jarakkirikanan-2 { + padding-right: .5rem !important; + padding-left: .5rem !important +} + +.jarakkirikanan-3 { + padding-right: 1rem !important; + padding-left: 1rem !important +} + +.jarakkirikanan-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important +} + +.jarakkirikanan-5 { + padding-right: 3rem !important; + padding-left: 3rem !important +} + +.jarakbawahatas-0 { + padding-top: 0 !important; + padding-bottom: 0 !important +} + +.jarakbawahatas-1 { + padding-top: .25rem !important; + padding-bottom: .25rem !important +} + +.jarakbawahatas-2 { + padding-top: .5rem !important; + padding-bottom: .5rem !important +} + +.jarakbawahatas-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important +} + +.jarakbawahatas-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important +} + +.jarakbawahatas-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important +} + +.pt-0 { + padding-top: 0 !important +} + +.pt-1 { + padding-top: .25rem !important +} + +.pt-2 { + padding-top: .5rem !important +} + +.pt-3 { + padding-top: 1rem !important +} + +.pt-4 { + padding-top: 1.5rem !important +} + +.pt-5 { + padding-top: 3rem !important +} + +.pe-0 { + padding-right: 0 !important +} + +.pe-1 { + padding-right: .25rem !important +} + +.pe-2 { + padding-right: .5rem !important +} + +.pe-3 { + padding-right: 1rem !important +} + +.pe-4 { + padding-right: 1.5rem !important +} + +.pe-5 { + padding-right: 3rem !important +} + +.pb-0 { + padding-bottom: 0 !important +} + +.pb-1 { + padding-bottom: .25rem !important +} + +.pb-2 { + padding-bottom: .5rem !important +} + +.pb-3 { + padding-bottom: 1rem !important +} + +.pb-4 { + padding-bottom: 1.5rem !important +} + +.pb-5 { + padding-bottom: 3rem !important +} + +.ps-0 { + padding-left: 0 !important +} + +.ps-1 { + padding-left: .25rem !important +} + +.ps-2 { + padding-left: .5rem !important +} + +.ps-3 { + padding-left: 1rem !important +} + +.ps-4 { + padding-left: 1.5rem !important +} + +.ps-5 { + padding-left: 3rem !important +} + +.font-monospace { + font-family: var(--bs-font-monospace) !important +} + +.fs-1 { + font-size: calc(1.375rem + 1.5vw) !important +} + +.fs-2 { + font-size: calc(1.325rem + .9vw) !important +} + +.fs-3 { + font-size: calc(1.3rem + .6vw) !important +} + +.fs-4 { + font-size: calc(1.275rem + .3vw) !important +} + +.fs-5 { + font-size: 1.25rem !important +} + +.fs-6 { + font-size: 1rem !important +} + +.fst-italic { + font-style: italic !important +} + +.fst-normal { + font-style: normal !important +} + +.fw-light { + font-weight: 300 !important +} + +.fw-lighter { + font-weight: lighter !important +} + +.fw-normal { + font-weight: 400 !important +} + +.fw-bold { + font-weight: 700 !important +} + +.fw-bolder { + font-weight: bolder !important +} + +.lh-1 { + line-height: 1 !important +} + +.lh-sm { + line-height: 1.25 !important +} + +.lh-base { + line-height: 1.5 !important +} + +.lh-lg { + line-height: 2 !important +} + +.text-start { + text-align: left !important +} + +.text-end { + text-align: right !important +} + +.teks-tengah { + text-align: center !important +} + +.text-decoration-none { + text-decoration: none !important +} + +.text-decoration-underline { + text-decoration: underline !important +} + +.text-decoration-line-through { + text-decoration: line-through !important +} + +.text-lowercase { + text-transform: lowercase !important +} + +.text-uppercase { + text-transform: uppercase !important +} + +.text-capitalize { + text-transform: capitalize !important +} + +.text-wrap { + white-space: normal !important +} + +.text-nowrap { + white-space: nowrap !important +} + +.text-break { + word-wrap: break-word !important; + word-break: break-word !important +} + +.warnateks-utama { + color: #5B8C51 !important +} + +.text-secondary { + color: #EDDD5E !important +} + +.text-success { + color: #198754 !important +} + +.text-info { + color: #0dcaf0 !important +} + +.text-warning { + color: #ffc107 !important +} + +.text-danger { + color: #dc3545 !important +} + +.text-light { + color: #F7F7F7 !important +} + +.teks-hitam { + color: #404A3D !important +} + +.teks-putih { + color: #fff !important +} + +.text-body { + color: #777 !important +} + +.text-muted { + color: #6c757d !important +} + +.text-black-50 { + color: rgba(0, 0, 0, 0.5) !important +} + +.teks-putih-50 { + color: rgba(255, 255, 255, 0.5) !important +} + +.text-reset { + color: inherit !important +} + +.background-utama { + background-color: #5B8C51 !important +} + +.background-kedua { + background-color: #EDDD5E !important +} + +.background-hijau { + background-color: #198754 !important +} + +.background-biru { + background-color: #0dcaf0 !important +} + +.background-kuning { + background-color: #ffc107 !important +} + +.background-merah { + background-color: #dc3545 !important +} + +.background-putih { + background-color: #F7F7F7 !important +} + +.background-hitam { + background-color: #404A3D !important +} + +.background-putih { + background-color: #fff !important +} + +.background-transparan { + background-color: rgba(0, 0, 0, 0) !important +} + +.background-gradasi { + background-image: var(--bs-gradient) !important +} + +.pe-none { + pointer-events: none !important +} + +.pe-auto { + pointer-events: auto !important +} + +.lingkaran { + border-radius: 8px !important +} + +.lingkaran-0 { + border-radius: 0 !important +} + +.lingkaran-1 { + border-radius: 8px !important +} + +.lingkaran-2 { + border-radius: 8px !important +} + +.lingkaran-3 { + border-radius: 8px !important +} + +.lingkaran-circle { + border-radius: 50% !important +} + +.lingkaran-pill { + border-radius: 50rem !important +} + +.lingkaran-top { + border-top-left-radius: 8px !important; + border-top-right-radius: 8px !important +} + +.lingkaran-end { + border-top-right-radius: 8px !important; + border-bottom-right-radius: 8px !important +} + +.lingkaran-bottom { + border-bottom-right-radius: 8px !important; + border-bottom-left-radius: 8px !important +} + +.lingkaran-start { + border-bottom-left-radius: 8px !important; + border-top-left-radius: 8px !important +} + +.visible { + visibility: visible !important +} + +@media (min-width: 576px) { + .float-sm-start { + float: left !important + } + + .float-sm-end { + float: right !important + } + + .float-sm-none { + float: none !important + } + + .d-sm-inline { + display: inline !important + } + + .d-sm-inline-block { + display: inline-block !important + } + + .d-sm-block { + display: block !important + } + + .d-sm-grid { + display: grid !important + } + + .d-sm-table { + display: table !important + } + + .d-sm-table-row { + display: table-row !important + } + + .d-sm-table-cell { + display: table-cell !important + } + + .d-sm-flex { + display: flex !important + } + + .d-sm-inline-flex { + display: inline-flex !important + } + + .d-sm-none { + display: none !important + } + + .flex-sm-fill { + flex: 1 1 auto !important + } + + .flex-sm-row { + flex-direction: row !important + } + + .flex-sm-column { + flex-direction: column !important + } + + .flex-sm-row-reverse { + flex-direction: row-reverse !important + } + + .flex-sm-column-reverse { + flex-direction: column-reverse !important + } + + .flex-sm-grow-0 { + flex-grow: 0 !important + } + + .flex-sm-grow-1 { + flex-grow: 1 !important + } + + .flex-sm-shrink-0 { + flex-shrink: 0 !important + } + + .flex-sm-shrink-1 { + flex-shrink: 1 !important + } + + .flex-sm-wrap { + flex-wrap: wrap !important + } + + .flex-sm-nowrap { + flex-wrap: nowrap !important + } + + .flex-sm-wrap-reverse { + flex-wrap: wrap-reverse !important + } + + .gap-sm-0 { + gap: 0 !important + } + + .gap-sm-1 { + gap: .25rem !important + } + + .gap-sm-2 { + gap: .5rem !important + } + + .gap-sm-3 { + gap: 1rem !important + } + + .gap-sm-4 { + gap: 1.5rem !important + } + + .gap-sm-5 { + gap: 3rem !important + } + + .justify-content-sm-start { + justify-content: flex-start !important + } + + .justify-content-sm-end { + justify-content: flex-end !important + } + + .justify-content-sm-center { + justify-content: center !important + } + + .justify-content-sm-between { + justify-content: space-between !important + } + + .justify-content-sm-around { + justify-content: space-around !important + } + + .justify-content-sm-evenly { + justify-content: space-evenly !important + } + + .align-items-sm-start { + align-items: flex-start !important + } + + .align-items-sm-end { + align-items: flex-end !important + } + + .align-items-sm-center { + align-items: center !important + } + + .align-items-sm-baseline { + align-items: baseline !important + } + + .align-items-sm-stretch { + align-items: stretch !important + } + + .align-content-sm-start { + align-content: flex-start !important + } + + .align-content-sm-end { + align-content: flex-end !important + } + + .align-content-sm-center { + align-content: center !important + } + + .align-content-sm-between { + align-content: space-between !important + } + + .align-content-sm-around { + align-content: space-around !important + } + + .align-content-sm-stretch { + align-content: stretch !important + } + + .align-self-sm-auto { + align-self: auto !important + } + + .align-self-sm-start { + align-self: flex-start !important + } + + .align-self-sm-end { + align-self: flex-end !important + } + + .align-self-sm-center { + align-self: center !important + } + + .align-self-sm-baseline { + align-self: baseline !important + } + + .align-self-sm-stretch { + align-self: stretch !important + } + + .order-sm-first { + order: -1 !important + } + + .order-sm-0 { + order: 0 !important + } + + .order-sm-1 { + order: 1 !important + } + + .order-sm-2 { + order: 2 !important + } + + .order-sm-3 { + order: 3 !important + } + + .order-sm-4 { + order: 4 !important + } + + .order-sm-5 { + order: 5 !important + } + + .order-sm-last { + order: 6 !important + } + + .m-sm-0 { + margin: 0 !important + } + + .m-sm-1 { + margin: .25rem !important + } + + .m-sm-2 { + margin: .5rem !important + } + + .m-sm-3 { + margin: 1rem !important + } + + .m-sm-4 { + margin: 1.5rem !important + } + + .m-sm-5 { + margin: 3rem !important + } + + .m-sm-auto { + margin: auto !important + } + + .mx-sm-0 { + margin-right: 0 !important; + margin-left: 0 !important + } + + .mx-sm-1 { + margin-right: .25rem !important; + margin-left: .25rem !important + } + + .mx-sm-2 { + margin-right: .5rem !important; + margin-left: .5rem !important + } + + .mx-sm-3 { + margin-right: 1rem !important; + margin-left: 1rem !important + } + + .mx-sm-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important + } + + .mx-sm-5 { + margin-right: 3rem !important; + margin-left: 3rem !important + } + + .mx-sm-auto { + margin-right: auto !important; + margin-left: auto !important + } + + .my-sm-0 { + margin-top: 0 !important; + margin-bottom: 0 !important + } + + .my-sm-1 { + margin-top: .25rem !important; + margin-bottom: .25rem !important + } + + .my-sm-2 { + margin-top: .5rem !important; + margin-bottom: .5rem !important + } + + .my-sm-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important + } + + .my-sm-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important + } + + .my-sm-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important + } + + .my-sm-auto { + margin-top: auto !important; + margin-bottom: auto !important + } + + .mt-sm-0 { + margin-top: 0 !important + } + + .mt-sm-1 { + margin-top: .25rem !important + } + + .mt-sm-2 { + margin-top: .5rem !important + } + + .mt-sm-3 { + margin-top: 1rem !important + } + + .mt-sm-4 { + margin-top: 1.5rem !important + } + + .mt-sm-5 { + margin-top: 3rem !important + } + + .mt-sm-auto { + margin-top: auto !important + } + + .me-sm-0 { + margin-right: 0 !important + } + + .me-sm-1 { + margin-right: .25rem !important + } + + .me-sm-2 { + margin-right: .5rem !important + } + + .me-sm-3 { + margin-right: 1rem !important + } + + .me-sm-4 { + margin-right: 1.5rem !important + } + + .me-sm-5 { + margin-right: 3rem !important + } + + .me-sm-auto { + margin-right: auto !important + } + + .mb-sm-0 { + margin-bottom: 0 !important + } + + .mb-sm-1 { + margin-bottom: .25rem !important + } + + .mb-sm-2 { + margin-bottom: .5rem !important + } + + .mb-sm-3 { + margin-bottom: 1rem !important + } + + .mb-sm-4 { + margin-bottom: 1.5rem !important + } + + .mb-sm-5 { + margin-bottom: 3rem !important + } + + .mb-sm-auto { + margin-bottom: auto !important + } + + .ms-sm-0 { + margin-left: 0 !important + } + + .ms-sm-1 { + margin-left: .25rem !important + } + + .ms-sm-2 { + margin-left: .5rem !important + } + + .ms-sm-3 { + margin-left: 1rem !important + } + + .ms-sm-4 { + margin-left: 1.5rem !important + } + + .ms-sm-5 { + margin-left: 3rem !important + } + + .ms-sm-auto { + margin-left: auto !important + } + + .m-sm-n1 { + margin: -.25rem !important + } + + .m-sm-n2 { + margin: -.5rem !important + } + + .m-sm-n3 { + margin: -1rem !important + } + + .m-sm-n4 { + margin: -1.5rem !important + } + + .m-sm-n5 { + margin: -3rem !important + } + + .mx-sm-n1 { + margin-right: -.25rem !important; + margin-left: -.25rem !important + } + + .mx-sm-n2 { + margin-right: -.5rem !important; + margin-left: -.5rem !important + } + + .mx-sm-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important + } + + .mx-sm-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important + } + + .mx-sm-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important + } + + .my-sm-n1 { + margin-top: -.25rem !important; + margin-bottom: -.25rem !important + } + + .my-sm-n2 { + margin-top: -.5rem !important; + margin-bottom: -.5rem !important + } + + .my-sm-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important + } + + .my-sm-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important + } + + .my-sm-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important + } + + .mt-sm-n1 { + margin-top: -.25rem !important + } + + .mt-sm-n2 { + margin-top: -.5rem !important + } + + .mt-sm-n3 { + margin-top: -1rem !important + } + + .mt-sm-n4 { + margin-top: -1.5rem !important + } + + .mt-sm-n5 { + margin-top: -3rem !important + } + + .me-sm-n1 { + margin-right: -.25rem !important + } + + .me-sm-n2 { + margin-right: -.5rem !important + } + + .me-sm-n3 { + margin-right: -1rem !important + } + + .me-sm-n4 { + margin-right: -1.5rem !important + } + + .me-sm-n5 { + margin-right: -3rem !important + } + + .mb-sm-n1 { + margin-bottom: -.25rem !important + } + + .mb-sm-n2 { + margin-bottom: -.5rem !important + } + + .mb-sm-n3 { + margin-bottom: -1rem !important + } + + .mb-sm-n4 { + margin-bottom: -1.5rem !important + } + + .mb-sm-n5 { + margin-bottom: -3rem !important + } + + .ms-sm-n1 { + margin-left: -.25rem !important + } + + .ms-sm-n2 { + margin-left: -.5rem !important + } + + .ms-sm-n3 { + margin-left: -1rem !important + } + + .ms-sm-n4 { + margin-left: -1.5rem !important + } + + .ms-sm-n5 { + margin-left: -3rem !important + } + + .p-sm-0 { + padding: 0 !important + } + + .p-sm-1 { + padding: .25rem !important + } + + .p-sm-2 { + padding: .5rem !important + } + + .p-sm-3 { + padding: 1rem !important + } + + .p-sm-4 { + padding: 1.5rem !important + } + + .p-sm-5 { + padding: 3rem !important + } + + .px-sm-0 { + padding-right: 0 !important; + padding-left: 0 !important + } + + .px-sm-1 { + padding-right: .25rem !important; + padding-left: .25rem !important + } + + .px-sm-2 { + padding-right: .5rem !important; + padding-left: .5rem !important + } + + .px-sm-3 { + padding-right: 1rem !important; + padding-left: 1rem !important + } + + .px-sm-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important + } + + .px-sm-5 { + padding-right: 3rem !important; + padding-left: 3rem !important + } + + .py-sm-0 { + padding-top: 0 !important; + padding-bottom: 0 !important + } + + .py-sm-1 { + padding-top: .25rem !important; + padding-bottom: .25rem !important + } + + .py-sm-2 { + padding-top: .5rem !important; + padding-bottom: .5rem !important + } + + .py-sm-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important + } + + .py-sm-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important + } + + .py-sm-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important + } + + .pt-sm-0 { + padding-top: 0 !important + } + + .pt-sm-1 { + padding-top: .25rem !important + } + + .pt-sm-2 { + padding-top: .5rem !important + } + + .pt-sm-3 { + padding-top: 1rem !important + } + + .pt-sm-4 { + padding-top: 1.5rem !important + } + + .pt-sm-5 { + padding-top: 3rem !important + } + + .pe-sm-0 { + padding-right: 0 !important + } + + .pe-sm-1 { + padding-right: .25rem !important + } + + .pe-sm-2 { + padding-right: .5rem !important + } + + .pe-sm-3 { + padding-right: 1rem !important + } + + .pe-sm-4 { + padding-right: 1.5rem !important + } + + .pe-sm-5 { + padding-right: 3rem !important + } + + .pb-sm-0 { + padding-bottom: 0 !important + } + + .pb-sm-1 { + padding-bottom: .25rem !important + } + + .pb-sm-2 { + padding-bottom: .5rem !important + } + + .pb-sm-3 { + padding-bottom: 1rem !important + } + + .pb-sm-4 { + padding-bottom: 1.5rem !important + } + + .pb-sm-5 { + padding-bottom: 3rem !important + } + + .ps-sm-0 { + padding-left: 0 !important + } + + .ps-sm-1 { + padding-left: .25rem !important + } + + .ps-sm-2 { + padding-left: .5rem !important + } + + .ps-sm-3 { + padding-left: 1rem !important + } + + .ps-sm-4 { + padding-left: 1.5rem !important + } + + .ps-sm-5 { + padding-left: 3rem !important + } + + .text-sm-start { + text-align: left !important + } + + .text-sm-end { + text-align: right !important + } + + .text-sm-center { + text-align: center !important + } +} + +@media (min-width: 768px) { + .float-md-start { + float: left !important + } + + .float-md-end { + float: right !important + } + + .float-md-none { + float: none !important + } + + .d-md-inline { + display: inline !important + } + + .d-md-inline-block { + display: inline-block !important + } + + .d-md-block { + display: block !important + } + + .d-md-grid { + display: grid !important + } + + .d-md-table { + display: table !important + } + + .d-md-table-row { + display: table-row !important + } + + .d-md-table-cell { + display: table-cell !important + } + + .d-md-flex { + display: flex !important + } + + .d-md-inline-flex { + display: inline-flex !important + } + + .d-md-none { + display: none !important + } + + .flex-md-fill { + flex: 1 1 auto !important + } + + .flex-md-row { + flex-direction: row !important + } + + .flex-md-column { + flex-direction: column !important + } + + .flex-md-row-reverse { + flex-direction: row-reverse !important + } + + .flex-md-column-reverse { + flex-direction: column-reverse !important + } + + .flex-md-grow-0 { + flex-grow: 0 !important + } + + .flex-md-grow-1 { + flex-grow: 1 !important + } + + .flex-md-shrink-0 { + flex-shrink: 0 !important + } + + .flex-md-shrink-1 { + flex-shrink: 1 !important + } + + .flex-md-wrap { + flex-wrap: wrap !important + } + + .flex-md-nowrap { + flex-wrap: nowrap !important + } + + .flex-md-wrap-reverse { + flex-wrap: wrap-reverse !important + } + + .gap-md-0 { + gap: 0 !important + } + + .gap-md-1 { + gap: .25rem !important + } + + .gap-md-2 { + gap: .5rem !important + } + + .gap-md-3 { + gap: 1rem !important + } + + .gap-md-4 { + gap: 1.5rem !important + } + + .gap-md-5 { + gap: 3rem !important + } + + .justify-content-md-start { + justify-content: flex-start !important + } + + .justify-content-md-end { + justify-content: flex-end !important + } + + .justify-content-md-center { + justify-content: center !important + } + + .justify-content-md-between { + justify-content: space-between !important + } + + .justify-content-md-around { + justify-content: space-around !important + } + + .justify-content-md-evenly { + justify-content: space-evenly !important + } + + .align-items-md-start { + align-items: flex-start !important + } + + .align-items-md-end { + align-items: flex-end !important + } + + .align-items-md-center { + align-items: center !important + } + + .align-items-md-baseline { + align-items: baseline !important + } + + .align-items-md-stretch { + align-items: stretch !important + } + + .align-content-md-start { + align-content: flex-start !important + } + + .align-content-md-end { + align-content: flex-end !important + } + + .align-content-md-center { + align-content: center !important + } + + .align-content-md-between { + align-content: space-between !important + } + + .align-content-md-around { + align-content: space-around !important + } + + .align-content-md-stretch { + align-content: stretch !important + } + + .align-self-md-auto { + align-self: auto !important + } + + .align-self-md-start { + align-self: flex-start !important + } + + .align-self-md-end { + align-self: flex-end !important + } + + .align-self-md-center { + align-self: center !important + } + + .align-self-md-baseline { + align-self: baseline !important + } + + .align-self-md-stretch { + align-self: stretch !important + } + + .order-md-first { + order: -1 !important + } + + .order-md-0 { + order: 0 !important + } + + .order-md-1 { + order: 1 !important + } + + .order-md-2 { + order: 2 !important + } + + .order-md-3 { + order: 3 !important + } + + .order-md-4 { + order: 4 !important + } + + .order-md-5 { + order: 5 !important + } + + .order-md-last { + order: 6 !important + } + + .m-md-0 { + margin: 0 !important + } + + .m-md-1 { + margin: .25rem !important + } + + .m-md-2 { + margin: .5rem !important + } + + .m-md-3 { + margin: 1rem !important + } + + .m-md-4 { + margin: 1.5rem !important + } + + .m-md-5 { + margin: 3rem !important + } + + .m-md-auto { + margin: auto !important + } + + .mx-md-0 { + margin-right: 0 !important; + margin-left: 0 !important + } + + .mx-md-1 { + margin-right: .25rem !important; + margin-left: .25rem !important + } + + .mx-md-2 { + margin-right: .5rem !important; + margin-left: .5rem !important + } + + .mx-md-3 { + margin-right: 1rem !important; + margin-left: 1rem !important + } + + .mx-md-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important + } + + .mx-md-5 { + margin-right: 3rem !important; + margin-left: 3rem !important + } + + .mx-md-auto { + margin-right: auto !important; + margin-left: auto !important + } + + .my-md-0 { + margin-top: 0 !important; + margin-bottom: 0 !important + } + + .my-md-1 { + margin-top: .25rem !important; + margin-bottom: .25rem !important + } + + .my-md-2 { + margin-top: .5rem !important; + margin-bottom: .5rem !important + } + + .my-md-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important + } + + .my-md-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important + } + + .my-md-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important + } + + .my-md-auto { + margin-top: auto !important; + margin-bottom: auto !important + } + + .mt-md-0 { + margin-top: 0 !important + } + + .mt-md-1 { + margin-top: .25rem !important + } + + .mt-md-2 { + margin-top: .5rem !important + } + + .mt-md-3 { + margin-top: 1rem !important + } + + .mt-md-4 { + margin-top: 1.5rem !important + } + + .mt-md-5 { + margin-top: 3rem !important + } + + .mt-md-auto { + margin-top: auto !important + } + + .me-md-0 { + margin-right: 0 !important + } + + .me-md-1 { + margin-right: .25rem !important + } + + .me-md-2 { + margin-right: .5rem !important + } + + .me-md-3 { + margin-right: 1rem !important + } + + .me-md-4 { + margin-right: 1.5rem !important + } + + .me-md-5 { + margin-right: 3rem !important + } + + .me-md-auto { + margin-right: auto !important + } + + .mb-md-0 { + margin-bottom: 0 !important + } + + .mb-md-1 { + margin-bottom: .25rem !important + } + + .mb-md-2 { + margin-bottom: .5rem !important + } + + .mb-md-3 { + margin-bottom: 1rem !important + } + + .mb-md-4 { + margin-bottom: 1.5rem !important + } + + .mb-md-5 { + margin-bottom: 3rem !important + } + + .mb-md-auto { + margin-bottom: auto !important + } + + .ms-md-0 { + margin-left: 0 !important + } + + .ms-md-1 { + margin-left: .25rem !important + } + + .ms-md-2 { + margin-left: .5rem !important + } + + .ms-md-3 { + margin-left: 1rem !important + } + + .ms-md-4 { + margin-left: 1.5rem !important + } + + .ms-md-5 { + margin-left: 3rem !important + } + + .ms-md-auto { + margin-left: auto !important + } + + .m-md-n1 { + margin: -.25rem !important + } + + .m-md-n2 { + margin: -.5rem !important + } + + .m-md-n3 { + margin: -1rem !important + } + + .m-md-n4 { + margin: -1.5rem !important + } + + .m-md-n5 { + margin: -3rem !important + } + + .mx-md-n1 { + margin-right: -.25rem !important; + margin-left: -.25rem !important + } + + .mx-md-n2 { + margin-right: -.5rem !important; + margin-left: -.5rem !important + } + + .mx-md-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important + } + + .mx-md-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important + } + + .mx-md-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important + } + + .my-md-n1 { + margin-top: -.25rem !important; + margin-bottom: -.25rem !important + } + + .my-md-n2 { + margin-top: -.5rem !important; + margin-bottom: -.5rem !important + } + + .my-md-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important + } + + .my-md-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important + } + + .my-md-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important + } + + .mt-md-n1 { + margin-top: -.25rem !important + } + + .mt-md-n2 { + margin-top: -.5rem !important + } + + .mt-md-n3 { + margin-top: -1rem !important + } + + .mt-md-n4 { + margin-top: -1.5rem !important + } + + .mt-md-n5 { + margin-top: -3rem !important + } + + .me-md-n1 { + margin-right: -.25rem !important + } + + .me-md-n2 { + margin-right: -.5rem !important + } + + .me-md-n3 { + margin-right: -1rem !important + } + + .me-md-n4 { + margin-right: -1.5rem !important + } + + .me-md-n5 { + margin-right: -3rem !important + } + + .mb-md-n1 { + margin-bottom: -.25rem !important + } + + .mb-md-n2 { + margin-bottom: -.5rem !important + } + + .mb-md-n3 { + margin-bottom: -1rem !important + } + + .mb-md-n4 { + margin-bottom: -1.5rem !important + } + + .mb-md-n5 { + margin-bottom: -3rem !important + } + + .ms-md-n1 { + margin-left: -.25rem !important + } + + .ms-md-n2 { + margin-left: -.5rem !important + } + + .ms-md-n3 { + margin-left: -1rem !important + } + + .ms-md-n4 { + margin-left: -1.5rem !important + } + + .ms-md-n5 { + margin-left: -3rem !important + } + + .p-md-0 { + padding: 0 !important + } + + .p-md-1 { + padding: .25rem !important + } + + .p-md-2 { + padding: .5rem !important + } + + .p-md-3 { + padding: 1rem !important + } + + .p-md-4 { + padding: 1.5rem !important + } + + .p-md-5 { + padding: 3rem !important + } + + .px-md-0 { + padding-right: 0 !important; + padding-left: 0 !important + } + + .px-md-1 { + padding-right: .25rem !important; + padding-left: .25rem !important + } + + .px-md-2 { + padding-right: .5rem !important; + padding-left: .5rem !important + } + + .px-md-3 { + padding-right: 1rem !important; + padding-left: 1rem !important + } + + .px-md-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important + } + + .px-md-5 { + padding-right: 3rem !important; + padding-left: 3rem !important + } + + .py-md-0 { + padding-top: 0 !important; + padding-bottom: 0 !important + } + + .py-md-1 { + padding-top: .25rem !important; + padding-bottom: .25rem !important + } + + .py-md-2 { + padding-top: .5rem !important; + padding-bottom: .5rem !important + } + + .py-md-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important + } + + .py-md-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important + } + + .py-md-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important + } + + .pt-md-0 { + padding-top: 0 !important + } + + .pt-md-1 { + padding-top: .25rem !important + } + + .pt-md-2 { + padding-top: .5rem !important + } + + .pt-md-3 { + padding-top: 1rem !important + } + + .pt-md-4 { + padding-top: 1.5rem !important + } + + .pt-md-5 { + padding-top: 3rem !important + } + + .pe-md-0 { + padding-right: 0 !important + } + + .pe-md-1 { + padding-right: .25rem !important + } + + .pe-md-2 { + padding-right: .5rem !important + } + + .pe-md-3 { + padding-right: 1rem !important + } + + .pe-md-4 { + padding-right: 1.5rem !important + } + + .pe-md-5 { + padding-right: 3rem !important + } + + .pb-md-0 { + padding-bottom: 0 !important + } + + .pb-md-1 { + padding-bottom: .25rem !important + } + + .pb-md-2 { + padding-bottom: .5rem !important + } + + .pb-md-3 { + padding-bottom: 1rem !important + } + + .pb-md-4 { + padding-bottom: 1.5rem !important + } + + .pb-md-5 { + padding-bottom: 3rem !important + } + + .ps-md-0 { + padding-left: 0 !important + } + + .ps-md-1 { + padding-left: .25rem !important + } + + .ps-md-2 { + padding-left: .5rem !important + } + + .ps-md-3 { + padding-left: 1rem !important + } + + .ps-md-4 { + padding-left: 1.5rem !important + } + + .ps-md-5 { + padding-left: 3rem !important + } + + .text-md-start { + text-align: left !important + } + + .text-md-end { + text-align: right !important + } + + .text-md-center { + text-align: center !important + } +} + +@media (min-width: 992px) { + .float-lg-start { + float: left !important + } + + .float-lg-end { + float: right !important + } + + .float-lg-none { + float: none !important + } + + .d-lg-inline { + display: inline !important + } + + .d-lg-inline-block { + display: inline-block !important + } + + .d-lg-block { + display: block !important + } + + .d-lg-grid { + display: grid !important + } + + .d-lg-table { + display: table !important + } + + .d-lg-table-row { + display: table-row !important + } + + .d-lg-table-cell { + display: table-cell !important + } + + .d-lg-flex { + display: flex !important + } + + .d-lg-inline-flex { + display: inline-flex !important + } + + .d-lg-none { + display: none !important + } + + .flex-lg-fill { + flex: 1 1 auto !important + } + + .flex-lg-row { + flex-direction: row !important + } + + .flex-lg-column { + flex-direction: column !important + } + + .flex-lg-row-reverse { + flex-direction: row-reverse !important + } + + .flex-lg-column-reverse { + flex-direction: column-reverse !important + } + + .flex-lg-grow-0 { + flex-grow: 0 !important + } + + .flex-lg-grow-1 { + flex-grow: 1 !important + } + + .flex-lg-shrink-0 { + flex-shrink: 0 !important + } + + .flex-lg-shrink-1 { + flex-shrink: 1 !important + } + + .flex-lg-wrap { + flex-wrap: wrap !important + } + + .flex-lg-nowrap { + flex-wrap: nowrap !important + } + + .flex-lg-wrap-reverse { + flex-wrap: wrap-reverse !important + } + + .gap-lg-0 { + gap: 0 !important + } + + .gap-lg-1 { + gap: .25rem !important + } + + .gap-lg-2 { + gap: .5rem !important + } + + .gap-lg-3 { + gap: 1rem !important + } + + .gap-lg-4 { + gap: 1.5rem !important + } + + .gap-lg-5 { + gap: 3rem !important + } + + .justify-content-lg-start { + justify-content: flex-start !important + } + + .justify-content-lg-end { + justify-content: flex-end !important + } + + .justify-content-lg-center { + justify-content: center !important + } + + .justify-content-lg-between { + justify-content: space-between !important + } + + .justify-content-lg-around { + justify-content: space-around !important + } + + .justify-content-lg-evenly { + justify-content: space-evenly !important + } + + .align-items-lg-start { + align-items: flex-start !important + } + + .align-items-lg-end { + align-items: flex-end !important + } + + .align-items-lg-center { + align-items: center !important + } + + .align-items-lg-baseline { + align-items: baseline !important + } + + .align-items-lg-stretch { + align-items: stretch !important + } + + .align-content-lg-start { + align-content: flex-start !important + } + + .align-content-lg-end { + align-content: flex-end !important + } + + .align-content-lg-center { + align-content: center !important + } + + .align-content-lg-between { + align-content: space-between !important + } + + .align-content-lg-around { + align-content: space-around !important + } + + .align-content-lg-stretch { + align-content: stretch !important + } + + .align-self-lg-auto { + align-self: auto !important + } + + .align-self-lg-start { + align-self: flex-start !important + } + + .align-self-lg-end { + align-self: flex-end !important + } + + .align-self-lg-center { + align-self: center !important + } + + .align-self-lg-baseline { + align-self: baseline !important + } + + .align-self-lg-stretch { + align-self: stretch !important + } + + .order-lg-first { + order: -1 !important + } + + .order-lg-0 { + order: 0 !important + } + + .order-lg-1 { + order: 1 !important + } + + .order-lg-2 { + order: 2 !important + } + + .order-lg-3 { + order: 3 !important + } + + .order-lg-4 { + order: 4 !important + } + + .order-lg-5 { + order: 5 !important + } + + .order-lg-last { + order: 6 !important + } + + .m-lg-0 { + margin: 0 !important + } + + .m-lg-1 { + margin: .25rem !important + } + + .m-lg-2 { + margin: .5rem !important + } + + .m-lg-3 { + margin: 1rem !important + } + + .m-lg-4 { + margin: 1.5rem !important + } + + .m-lg-5 { + margin: 3rem !important + } + + .m-lg-auto { + margin: auto !important + } + + .mx-lg-0 { + margin-right: 0 !important; + margin-left: 0 !important + } + + .mx-lg-1 { + margin-right: .25rem !important; + margin-left: .25rem !important + } + + .mx-lg-2 { + margin-right: .5rem !important; + margin-left: .5rem !important + } + + .mx-lg-3 { + margin-right: 1rem !important; + margin-left: 1rem !important + } + + .mx-lg-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important + } + + .mx-lg-5 { + margin-right: 3rem !important; + margin-left: 3rem !important + } + + .mx-lg-auto { + margin-right: auto !important; + margin-left: auto !important + } + + .my-lg-0 { + margin-top: 0 !important; + margin-bottom: 0 !important + } + + .my-lg-1 { + margin-top: .25rem !important; + margin-bottom: .25rem !important + } + + .my-lg-2 { + margin-top: .5rem !important; + margin-bottom: .5rem !important + } + + .my-lg-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important + } + + .my-lg-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important + } + + .my-lg-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important + } + + .my-lg-auto { + margin-top: auto !important; + margin-bottom: auto !important + } + + .mt-lg-0 { + margin-top: 0 !important + } + + .mt-lg-1 { + margin-top: .25rem !important + } + + .mt-lg-2 { + margin-top: .5rem !important + } + + .mt-lg-3 { + margin-top: 1rem !important + } + + .mt-lg-4 { + margin-top: 1.5rem !important + } + + .mt-lg-5 { + margin-top: 3rem !important + } + + .mt-lg-auto { + margin-top: auto !important + } + + .me-lg-0 { + margin-right: 0 !important + } + + .me-lg-1 { + margin-right: .25rem !important + } + + .me-lg-2 { + margin-right: .5rem !important + } + + .me-lg-3 { + margin-right: 1rem !important + } + + .me-lg-4 { + margin-right: 1.5rem !important + } + + .me-lg-5 { + margin-right: 3rem !important + } + + .me-lg-auto { + margin-right: auto !important + } + + .mb-lg-0 { + margin-bottom: 0 !important + } + + .mb-lg-1 { + margin-bottom: .25rem !important + } + + .mb-lg-2 { + margin-bottom: .5rem !important + } + + .mb-lg-3 { + margin-bottom: 1rem !important + } + + .mb-lg-4 { + margin-bottom: 1.5rem !important + } + + .mb-lg-5 { + margin-bottom: 3rem !important + } + + .mb-lg-auto { + margin-bottom: auto !important + } + + .ms-lg-0 { + margin-left: 0 !important + } + + .ms-lg-1 { + margin-left: .25rem !important + } + + .ms-lg-2 { + margin-left: .5rem !important + } + + .ms-lg-3 { + margin-left: 1rem !important + } + + .ms-lg-4 { + margin-left: 1.5rem !important + } + + .ms-lg-5 { + margin-left: 3rem !important + } + + .ms-lg-auto { + margin-left: auto !important + } + + .m-lg-n1 { + margin: -.25rem !important + } + + .m-lg-n2 { + margin: -.5rem !important + } + + .m-lg-n3 { + margin: -1rem !important + } + + .m-lg-n4 { + margin: -1.5rem !important + } + + .m-lg-n5 { + margin: -3rem !important + } + + .mx-lg-n1 { + margin-right: -.25rem !important; + margin-left: -.25rem !important + } + + .mx-lg-n2 { + margin-right: -.5rem !important; + margin-left: -.5rem !important + } + + .mx-lg-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important + } + + .mx-lg-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important + } + + .mx-lg-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important + } + + .my-lg-n1 { + margin-top: -.25rem !important; + margin-bottom: -.25rem !important + } + + .my-lg-n2 { + margin-top: -.5rem !important; + margin-bottom: -.5rem !important + } + + .my-lg-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important + } + + .my-lg-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important + } + + .my-lg-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important + } + + .mt-lg-n1 { + margin-top: -.25rem !important + } + + .mt-lg-n2 { + margin-top: -.5rem !important + } + + .mt-lg-n3 { + margin-top: -1rem !important + } + + .mt-lg-n4 { + margin-top: -1.5rem !important + } + + .mt-lg-n5 { + margin-top: -3rem !important + } + + .me-lg-n1 { + margin-right: -.25rem !important + } + + .me-lg-n2 { + margin-right: -.5rem !important + } + + .me-lg-n3 { + margin-right: -1rem !important + } + + .me-lg-n4 { + margin-right: -1.5rem !important + } + + .me-lg-n5 { + margin-right: -3rem !important + } + + .mb-lg-n1 { + margin-bottom: -.25rem !important + } + + .mb-lg-n2 { + margin-bottom: -.5rem !important + } + + .mb-lg-n3 { + margin-bottom: -1rem !important + } + + .mb-lg-n4 { + margin-bottom: -1.5rem !important + } + + .mb-lg-n5 { + margin-bottom: -3rem !important + } + + .ms-lg-n1 { + margin-left: -.25rem !important + } + + .ms-lg-n2 { + margin-left: -.5rem !important + } + + .ms-lg-n3 { + margin-left: -1rem !important + } + + .ms-lg-n4 { + margin-left: -1.5rem !important + } + + .ms-lg-n5 { + margin-left: -3rem !important + } + + .p-lg-0 { + padding: 0 !important + } + + .p-lg-1 { + padding: .25rem !important + } + + .p-lg-2 { + padding: .5rem !important + } + + .p-lg-3 { + padding: 1rem !important + } + + .p-lg-4 { + padding: 1.5rem !important + } + + .p-lg-5 { + padding: 3rem !important + } + + .px-lg-0 { + padding-right: 0 !important; + padding-left: 0 !important + } + + .px-lg-1 { + padding-right: .25rem !important; + padding-left: .25rem !important + } + + .px-lg-2 { + padding-right: .5rem !important; + padding-left: .5rem !important + } + + .px-lg-3 { + padding-right: 1rem !important; + padding-left: 1rem !important + } + + .px-lg-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important + } + + .px-lg-5 { + padding-right: 3rem !important; + padding-left: 3rem !important + } + + .py-lg-0 { + padding-top: 0 !important; + padding-bottom: 0 !important + } + + .py-lg-1 { + padding-top: .25rem !important; + padding-bottom: .25rem !important + } + + .py-lg-2 { + padding-top: .5rem !important; + padding-bottom: .5rem !important + } + + .py-lg-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important + } + + .py-lg-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important + } + + .py-lg-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important + } + + .pt-lg-0 { + padding-top: 0 !important + } + + .pt-lg-1 { + padding-top: .25rem !important + } + + .pt-lg-2 { + padding-top: .5rem !important + } + + .pt-lg-3 { + padding-top: 1rem !important + } + + .pt-lg-4 { + padding-top: 1.5rem !important + } + + .pt-lg-5 { + padding-top: 3rem !important + } + + .pe-lg-0 { + padding-right: 0 !important + } + + .pe-lg-1 { + padding-right: .25rem !important + } + + .pe-lg-2 { + padding-right: .5rem !important + } + + .pe-lg-3 { + padding-right: 1rem !important + } + + .pe-lg-4 { + padding-right: 1.5rem !important + } + + .pe-lg-5 { + padding-right: 3rem !important + } + + .pb-lg-0 { + padding-bottom: 0 !important + } + + .pb-lg-1 { + padding-bottom: .25rem !important + } + + .pb-lg-2 { + padding-bottom: .5rem !important + } + + .pb-lg-3 { + padding-bottom: 1rem !important + } + + .pb-lg-4 { + padding-bottom: 1.5rem !important + } + + .pb-lg-5 { + padding-bottom: 3rem !important + } + + .ps-lg-0 { + padding-left: 0 !important + } + + .ps-lg-1 { + padding-left: .25rem !important + } + + .ps-lg-2 { + padding-left: .5rem !important + } + + .ps-lg-3 { + padding-left: 1rem !important + } + + .ps-lg-4 { + padding-left: 1.5rem !important + } + + .ps-lg-5 { + padding-left: 3rem !important + } + + .text-lg-start { + text-align: left !important + } + + .text-lg-end { + text-align: right !important + } + + .text-lg-center { + text-align: center !important + } +} + +@media (min-width: 1200px) { + .float-xl-start { + float: left !important + } + + .float-xl-end { + float: right !important + } + + .float-xl-none { + float: none !important + } + + .d-xl-inline { + display: inline !important + } + + .d-xl-inline-block { + display: inline-block !important + } + + .d-xl-block { + display: block !important + } + + .d-xl-grid { + display: grid !important + } + + .d-xl-table { + display: table !important + } + + .d-xl-table-row { + display: table-row !important + } + + .d-xl-table-cell { + display: table-cell !important + } + + .d-xl-flex { + display: flex !important + } + + .d-xl-inline-flex { + display: inline-flex !important + } + + .d-xl-none { + display: none !important + } + + .flex-xl-fill { + flex: 1 1 auto !important + } + + .flex-xl-row { + flex-direction: row !important + } + + .flex-xl-column { + flex-direction: column !important + } + + .flex-xl-row-reverse { + flex-direction: row-reverse !important + } + + .flex-xl-column-reverse { + flex-direction: column-reverse !important + } + + .flex-xl-grow-0 { + flex-grow: 0 !important + } + + .flex-xl-grow-1 { + flex-grow: 1 !important + } + + .flex-xl-shrink-0 { + flex-shrink: 0 !important + } + + .flex-xl-shrink-1 { + flex-shrink: 1 !important + } + + .flex-xl-wrap { + flex-wrap: wrap !important + } + + .flex-xl-nowrap { + flex-wrap: nowrap !important + } + + .flex-xl-wrap-reverse { + flex-wrap: wrap-reverse !important + } + + .gap-xl-0 { + gap: 0 !important + } + + .gap-xl-1 { + gap: .25rem !important + } + + .gap-xl-2 { + gap: .5rem !important + } + + .gap-xl-3 { + gap: 1rem !important + } + + .gap-xl-4 { + gap: 1.5rem !important + } + + .gap-xl-5 { + gap: 3rem !important + } + + .justify-content-xl-start { + justify-content: flex-start !important + } + + .justify-content-xl-end { + justify-content: flex-end !important + } + + .justify-content-xl-center { + justify-content: center !important + } + + .justify-content-xl-between { + justify-content: space-between !important + } + + .justify-content-xl-around { + justify-content: space-around !important + } + + .justify-content-xl-evenly { + justify-content: space-evenly !important + } + + .align-items-xl-start { + align-items: flex-start !important + } + + .align-items-xl-end { + align-items: flex-end !important + } + + .align-items-xl-center { + align-items: center !important + } + + .align-items-xl-baseline { + align-items: baseline !important + } + + .align-items-xl-stretch { + align-items: stretch !important + } + + .align-content-xl-start { + align-content: flex-start !important + } + + .align-content-xl-end { + align-content: flex-end !important + } + + .align-content-xl-center { + align-content: center !important + } + + .align-content-xl-between { + align-content: space-between !important + } + + .align-content-xl-around { + align-content: space-around !important + } + + .align-content-xl-stretch { + align-content: stretch !important + } + + .align-self-xl-auto { + align-self: auto !important + } + + .align-self-xl-start { + align-self: flex-start !important + } + + .align-self-xl-end { + align-self: flex-end !important + } + + .align-self-xl-center { + align-self: center !important + } + + .align-self-xl-baseline { + align-self: baseline !important + } + + .align-self-xl-stretch { + align-self: stretch !important + } + + .order-xl-first { + order: -1 !important + } + + .order-xl-0 { + order: 0 !important + } + + .order-xl-1 { + order: 1 !important + } + + .order-xl-2 { + order: 2 !important + } + + .order-xl-3 { + order: 3 !important + } + + .order-xl-4 { + order: 4 !important + } + + .order-xl-5 { + order: 5 !important + } + + .order-xl-last { + order: 6 !important + } + + .m-xl-0 { + margin: 0 !important + } + + .m-xl-1 { + margin: .25rem !important + } + + .m-xl-2 { + margin: .5rem !important + } + + .m-xl-3 { + margin: 1rem !important + } + + .m-xl-4 { + margin: 1.5rem !important + } + + .m-xl-5 { + margin: 3rem !important + } + + .m-xl-auto { + margin: auto !important + } + + .mx-xl-0 { + margin-right: 0 !important; + margin-left: 0 !important + } + + .mx-xl-1 { + margin-right: .25rem !important; + margin-left: .25rem !important + } + + .mx-xl-2 { + margin-right: .5rem !important; + margin-left: .5rem !important + } + + .mx-xl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important + } + + .mx-xl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important + } + + .mx-xl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important + } + + .mx-xl-auto { + margin-right: auto !important; + margin-left: auto !important + } + + .my-xl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important + } + + .my-xl-1 { + margin-top: .25rem !important; + margin-bottom: .25rem !important + } + + .my-xl-2 { + margin-top: .5rem !important; + margin-bottom: .5rem !important + } + + .my-xl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important + } + + .my-xl-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important + } + + .my-xl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important + } + + .my-xl-auto { + margin-top: auto !important; + margin-bottom: auto !important + } + + .mt-xl-0 { + margin-top: 0 !important + } + + .mt-xl-1 { + margin-top: .25rem !important + } + + .mt-xl-2 { + margin-top: .5rem !important + } + + .mt-xl-3 { + margin-top: 1rem !important + } + + .mt-xl-4 { + margin-top: 1.5rem !important + } + + .mt-xl-5 { + margin-top: 3rem !important + } + + .mt-xl-auto { + margin-top: auto !important + } + + .me-xl-0 { + margin-right: 0 !important + } + + .me-xl-1 { + margin-right: .25rem !important + } + + .me-xl-2 { + margin-right: .5rem !important + } + + .me-xl-3 { + margin-right: 1rem !important + } + + .me-xl-4 { + margin-right: 1.5rem !important + } + + .me-xl-5 { + margin-right: 3rem !important + } + + .me-xl-auto { + margin-right: auto !important + } + + .mb-xl-0 { + margin-bottom: 0 !important + } + + .mb-xl-1 { + margin-bottom: .25rem !important + } + + .mb-xl-2 { + margin-bottom: .5rem !important + } + + .mb-xl-3 { + margin-bottom: 1rem !important + } + + .mb-xl-4 { + margin-bottom: 1.5rem !important + } + + .mb-xl-5 { + margin-bottom: 3rem !important + } + + .mb-xl-auto { + margin-bottom: auto !important + } + + .ms-xl-0 { + margin-left: 0 !important + } + + .ms-xl-1 { + margin-left: .25rem !important + } + + .ms-xl-2 { + margin-left: .5rem !important + } + + .ms-xl-3 { + margin-left: 1rem !important + } + + .ms-xl-4 { + margin-left: 1.5rem !important + } + + .ms-xl-5 { + margin-left: 3rem !important + } + + .ms-xl-auto { + margin-left: auto !important + } + + .m-xl-n1 { + margin: -.25rem !important + } + + .m-xl-n2 { + margin: -.5rem !important + } + + .m-xl-n3 { + margin: -1rem !important + } + + .m-xl-n4 { + margin: -1.5rem !important + } + + .m-xl-n5 { + margin: -3rem !important + } + + .mx-xl-n1 { + margin-right: -.25rem !important; + margin-left: -.25rem !important + } + + .mx-xl-n2 { + margin-right: -.5rem !important; + margin-left: -.5rem !important + } + + .mx-xl-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important + } + + .mx-xl-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important + } + + .mx-xl-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important + } + + .my-xl-n1 { + margin-top: -.25rem !important; + margin-bottom: -.25rem !important + } + + .my-xl-n2 { + margin-top: -.5rem !important; + margin-bottom: -.5rem !important + } + + .my-xl-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important + } + + .my-xl-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important + } + + .my-xl-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important + } + + .mt-xl-n1 { + margin-top: -.25rem !important + } + + .mt-xl-n2 { + margin-top: -.5rem !important + } + + .mt-xl-n3 { + margin-top: -1rem !important + } + + .mt-xl-n4 { + margin-top: -1.5rem !important + } + + .mt-xl-n5 { + margin-top: -3rem !important + } + + .me-xl-n1 { + margin-right: -.25rem !important + } + + .me-xl-n2 { + margin-right: -.5rem !important + } + + .me-xl-n3 { + margin-right: -1rem !important + } + + .me-xl-n4 { + margin-right: -1.5rem !important + } + + .me-xl-n5 { + margin-right: -3rem !important + } + + .mb-xl-n1 { + margin-bottom: -.25rem !important + } + + .mb-xl-n2 { + margin-bottom: -.5rem !important + } + + .mb-xl-n3 { + margin-bottom: -1rem !important + } + + .mb-xl-n4 { + margin-bottom: -1.5rem !important + } + + .mb-xl-n5 { + margin-bottom: -3rem !important + } + + .ms-xl-n1 { + margin-left: -.25rem !important + } + + .ms-xl-n2 { + margin-left: -.5rem !important + } + + .ms-xl-n3 { + margin-left: -1rem !important + } + + .ms-xl-n4 { + margin-left: -1.5rem !important + } + + .ms-xl-n5 { + margin-left: -3rem !important + } + + .p-xl-0 { + padding: 0 !important + } + + .p-xl-1 { + padding: .25rem !important + } + + .p-xl-2 { + padding: .5rem !important + } + + .p-xl-3 { + padding: 1rem !important + } + + .p-xl-4 { + padding: 1.5rem !important + } + + .p-xl-5 { + padding: 3rem !important + } + + .px-xl-0 { + padding-right: 0 !important; + padding-left: 0 !important + } + + .px-xl-1 { + padding-right: .25rem !important; + padding-left: .25rem !important + } + + .px-xl-2 { + padding-right: .5rem !important; + padding-left: .5rem !important + } + + .px-xl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important + } + + .px-xl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important + } + + .px-xl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important + } + + .py-xl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important + } + + .py-xl-1 { + padding-top: .25rem !important; + padding-bottom: .25rem !important + } + + .py-xl-2 { + padding-top: .5rem !important; + padding-bottom: .5rem !important + } + + .py-xl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important + } + + .py-xl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important + } + + .py-xl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important + } + + .pt-xl-0 { + padding-top: 0 !important + } + + .pt-xl-1 { + padding-top: .25rem !important + } + + .pt-xl-2 { + padding-top: .5rem !important + } + + .pt-xl-3 { + padding-top: 1rem !important + } + + .pt-xl-4 { + padding-top: 1.5rem !important + } + + .pt-xl-5 { + padding-top: 3rem !important + } + + .pe-xl-0 { + padding-right: 0 !important + } + + .pe-xl-1 { + padding-right: .25rem !important + } + + .pe-xl-2 { + padding-right: .5rem !important + } + + .pe-xl-3 { + padding-right: 1rem !important + } + + .pe-xl-4 { + padding-right: 1.5rem !important + } + + .pe-xl-5 { + padding-right: 3rem !important + } + + .pb-xl-0 { + padding-bottom: 0 !important + } + + .pb-xl-1 { + padding-bottom: .25rem !important + } + + .pb-xl-2 { + padding-bottom: .5rem !important + } + + .pb-xl-3 { + padding-bottom: 1rem !important + } + + .pb-xl-4 { + padding-bottom: 1.5rem !important + } + + .pb-xl-5 { + padding-bottom: 3rem !important + } + + .ps-xl-0 { + padding-left: 0 !important + } + + .ps-xl-1 { + padding-left: .25rem !important + } + + .ps-xl-2 { + padding-left: .5rem !important + } + + .ps-xl-3 { + padding-left: 1rem !important + } + + .ps-xl-4 { + padding-left: 1.5rem !important + } + + .ps-xl-5 { + padding-left: 3rem !important + } + + .text-xl-start { + text-align: left !important + } + + .text-xl-end { + text-align: right !important + } + + .text-xl-center { + text-align: center !important + } +} + +@media (min-width: 1400px) { + .float-xxl-start { + float: left !important + } + + .float-xxl-end { + float: right !important + } + + .float-xxl-none { + float: none !important + } + + .d-xxl-inline { + display: inline !important + } + + .d-xxl-inline-block { + display: inline-block !important + } + + .d-xxl-block { + display: block !important + } + + .d-xxl-grid { + display: grid !important + } + + .d-xxl-table { + display: table !important + } + + .d-xxl-table-row { + display: table-row !important + } + + .d-xxl-table-cell { + display: table-cell !important + } + + .d-xxl-flex { + display: flex !important + } + + .d-xxl-inline-flex { + display: inline-flex !important + } + + .d-xxl-none { + display: none !important + } + + .flex-xxl-fill { + flex: 1 1 auto !important + } + + .flex-xxl-row { + flex-direction: row !important + } + + .flex-xxl-column { + flex-direction: column !important + } + + .flex-xxl-row-reverse { + flex-direction: row-reverse !important + } + + .flex-xxl-column-reverse { + flex-direction: column-reverse !important + } + + .flex-xxl-grow-0 { + flex-grow: 0 !important + } + + .flex-xxl-grow-1 { + flex-grow: 1 !important + } + + .flex-xxl-shrink-0 { + flex-shrink: 0 !important + } + + .flex-xxl-shrink-1 { + flex-shrink: 1 !important + } + + .flex-xxl-wrap { + flex-wrap: wrap !important + } + + .flex-xxl-nowrap { + flex-wrap: nowrap !important + } + + .flex-xxl-wrap-reverse { + flex-wrap: wrap-reverse !important + } + + .gap-xxl-0 { + gap: 0 !important + } + + .gap-xxl-1 { + gap: .25rem !important + } + + .gap-xxl-2 { + gap: .5rem !important + } + + .gap-xxl-3 { + gap: 1rem !important + } + + .gap-xxl-4 { + gap: 1.5rem !important + } + + .gap-xxl-5 { + gap: 3rem !important + } + + .justify-content-xxl-start { + justify-content: flex-start !important + } + + .justify-content-xxl-end { + justify-content: flex-end !important + } + + .justify-content-xxl-center { + justify-content: center !important + } + + .justify-content-xxl-between { + justify-content: space-between !important + } + + .justify-content-xxl-around { + justify-content: space-around !important + } + + .justify-content-xxl-evenly { + justify-content: space-evenly !important + } + + .align-items-xxl-start { + align-items: flex-start !important + } + + .align-items-xxl-end { + align-items: flex-end !important + } + + .align-items-xxl-center { + align-items: center !important + } + + .align-items-xxl-baseline { + align-items: baseline !important + } + + .align-items-xxl-stretch { + align-items: stretch !important + } + + .align-content-xxl-start { + align-content: flex-start !important + } + + .align-content-xxl-end { + align-content: flex-end !important + } + + .align-content-xxl-center { + align-content: center !important + } + + .align-content-xxl-between { + align-content: space-between !important + } + + .align-content-xxl-around { + align-content: space-around !important + } + + .align-content-xxl-stretch { + align-content: stretch !important + } + + .align-self-xxl-auto { + align-self: auto !important + } + + .align-self-xxl-start { + align-self: flex-start !important + } + + .align-self-xxl-end { + align-self: flex-end !important + } + + .align-self-xxl-center { + align-self: center !important + } + + .align-self-xxl-baseline { + align-self: baseline !important + } + + .align-self-xxl-stretch { + align-self: stretch !important + } + + .order-xxl-first { + order: -1 !important + } + + .order-xxl-0 { + order: 0 !important + } + + .order-xxl-1 { + order: 1 !important + } + + .order-xxl-2 { + order: 2 !important + } + + .order-xxl-3 { + order: 3 !important + } + + .order-xxl-4 { + order: 4 !important + } + + .order-xxl-5 { + order: 5 !important + } + + .order-xxl-last { + order: 6 !important + } + + .m-xxl-0 { + margin: 0 !important + } + + .m-xxl-1 { + margin: .25rem !important + } + + .m-xxl-2 { + margin: .5rem !important + } + + .m-xxl-3 { + margin: 1rem !important + } + + .m-xxl-4 { + margin: 1.5rem !important + } + + .m-xxl-5 { + margin: 3rem !important + } + + .m-xxl-auto { + margin: auto !important + } + + .mx-xxl-0 { + margin-right: 0 !important; + margin-left: 0 !important + } + + .mx-xxl-1 { + margin-right: .25rem !important; + margin-left: .25rem !important + } + + .mx-xxl-2 { + margin-right: .5rem !important; + margin-left: .5rem !important + } + + .mx-xxl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important + } + + .mx-xxl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important + } + + .mx-xxl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important + } + + .mx-xxl-auto { + margin-right: auto !important; + margin-left: auto !important + } + + .my-xxl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important + } + + .my-xxl-1 { + margin-top: .25rem !important; + margin-bottom: .25rem !important + } + + .my-xxl-2 { + margin-top: .5rem !important; + margin-bottom: .5rem !important + } + + .my-xxl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important + } + + .my-xxl-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important + } + + .my-xxl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important + } + + .my-xxl-auto { + margin-top: auto !important; + margin-bottom: auto !important + } + + .mt-xxl-0 { + margin-top: 0 !important + } + + .mt-xxl-1 { + margin-top: .25rem !important + } + + .mt-xxl-2 { + margin-top: .5rem !important + } + + .mt-xxl-3 { + margin-top: 1rem !important + } + + .mt-xxl-4 { + margin-top: 1.5rem !important + } + + .mt-xxl-5 { + margin-top: 3rem !important + } + + .mt-xxl-auto { + margin-top: auto !important + } + + .me-xxl-0 { + margin-right: 0 !important + } + + .me-xxl-1 { + margin-right: .25rem !important + } + + .me-xxl-2 { + margin-right: .5rem !important + } + + .me-xxl-3 { + margin-right: 1rem !important + } + + .me-xxl-4 { + margin-right: 1.5rem !important + } + + .me-xxl-5 { + margin-right: 3rem !important + } + + .me-xxl-auto { + margin-right: auto !important + } + + .mb-xxl-0 { + margin-bottom: 0 !important + } + + .mb-xxl-1 { + margin-bottom: .25rem !important + } + + .mb-xxl-2 { + margin-bottom: .5rem !important + } + + .mb-xxl-3 { + margin-bottom: 1rem !important + } + + .mb-xxl-4 { + margin-bottom: 1.5rem !important + } + + .mb-xxl-5 { + margin-bottom: 3rem !important + } + + .mb-xxl-auto { + margin-bottom: auto !important + } + + .ms-xxl-0 { + margin-left: 0 !important + } + + .ms-xxl-1 { + margin-left: .25rem !important + } + + .ms-xxl-2 { + margin-left: .5rem !important + } + + .ms-xxl-3 { + margin-left: 1rem !important + } + + .ms-xxl-4 { + margin-left: 1.5rem !important + } + + .ms-xxl-5 { + margin-left: 3rem !important + } + + .ms-xxl-auto { + margin-left: auto !important + } + + .m-xxl-n1 { + margin: -.25rem !important + } + + .m-xxl-n2 { + margin: -.5rem !important + } + + .m-xxl-n3 { + margin: -1rem !important + } + + .m-xxl-n4 { + margin: -1.5rem !important + } + + .m-xxl-n5 { + margin: -3rem !important + } + + .mx-xxl-n1 { + margin-right: -.25rem !important; + margin-left: -.25rem !important + } + + .mx-xxl-n2 { + margin-right: -.5rem !important; + margin-left: -.5rem !important + } + + .mx-xxl-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important + } + + .mx-xxl-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important + } + + .mx-xxl-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important + } + + .my-xxl-n1 { + margin-top: -.25rem !important; + margin-bottom: -.25rem !important + } + + .my-xxl-n2 { + margin-top: -.5rem !important; + margin-bottom: -.5rem !important + } + + .my-xxl-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important + } + + .my-xxl-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important + } + + .my-xxl-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important + } + + .mt-xxl-n1 { + margin-top: -.25rem !important + } + + .mt-xxl-n2 { + margin-top: -.5rem !important + } + + .mt-xxl-n3 { + margin-top: -1rem !important + } + + .mt-xxl-n4 { + margin-top: -1.5rem !important + } + + .mt-xxl-n5 { + margin-top: -3rem !important + } + + .me-xxl-n1 { + margin-right: -.25rem !important + } + + .me-xxl-n2 { + margin-right: -.5rem !important + } + + .me-xxl-n3 { + margin-right: -1rem !important + } + + .me-xxl-n4 { + margin-right: -1.5rem !important + } + + .me-xxl-n5 { + margin-right: -3rem !important + } + + .mb-xxl-n1 { + margin-bottom: -.25rem !important + } + + .mb-xxl-n2 { + margin-bottom: -.5rem !important + } + + .mb-xxl-n3 { + margin-bottom: -1rem !important + } + + .mb-xxl-n4 { + margin-bottom: -1.5rem !important + } + + .mb-xxl-n5 { + margin-bottom: -3rem !important + } + + .ms-xxl-n1 { + margin-left: -.25rem !important + } + + .ms-xxl-n2 { + margin-left: -.5rem !important + } + + .ms-xxl-n3 { + margin-left: -1rem !important + } + + .ms-xxl-n4 { + margin-left: -1.5rem !important + } + + .ms-xxl-n5 { + margin-left: -3rem !important + } + + .p-xxl-0 { + padding: 0 !important + } + + .p-xxl-1 { + padding: .25rem !important + } + + .p-xxl-2 { + padding: .5rem !important + } + + .p-xxl-3 { + padding: 1rem !important + } + + .p-xxl-4 { + padding: 1.5rem !important + } + + .p-xxl-5 { + padding: 3rem !important + } + + .px-xxl-0 { + padding-right: 0 !important; + padding-left: 0 !important + } + + .px-xxl-1 { + padding-right: .25rem !important; + padding-left: .25rem !important + } + + .px-xxl-2 { + padding-right: .5rem !important; + padding-left: .5rem !important + } + + .px-xxl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important + } + + .px-xxl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important + } + + .px-xxl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important + } + + .py-xxl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important + } + + .py-xxl-1 { + padding-top: .25rem !important; + padding-bottom: .25rem !important + } + + .py-xxl-2 { + padding-top: .5rem !important; + padding-bottom: .5rem !important + } + + .py-xxl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important + } + + .py-xxl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important + } + + .py-xxl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important + } + + .pt-xxl-0 { + padding-top: 0 !important + } + + .pt-xxl-1 { + padding-top: .25rem !important + } + + .pt-xxl-2 { + padding-top: .5rem !important + } + + .pt-xxl-3 { + padding-top: 1rem !important + } + + .pt-xxl-4 { + padding-top: 1.5rem !important + } + + .pt-xxl-5 { + padding-top: 3rem !important + } + + .pe-xxl-0 { + padding-right: 0 !important + } + + .pe-xxl-1 { + padding-right: .25rem !important + } + + .pe-xxl-2 { + padding-right: .5rem !important + } + + .pe-xxl-3 { + padding-right: 1rem !important + } + + .pe-xxl-4 { + padding-right: 1.5rem !important + } + + .pe-xxl-5 { + padding-right: 3rem !important + } + + .pb-xxl-0 { + padding-bottom: 0 !important + } + + .pb-xxl-1 { + padding-bottom: .25rem !important + } + + .pb-xxl-2 { + padding-bottom: .5rem !important + } + + .pb-xxl-3 { + padding-bottom: 1rem !important + } + + .pb-xxl-4 { + padding-bottom: 1.5rem !important + } + + .pb-xxl-5 { + padding-bottom: 3rem !important + } + + .ps-xxl-0 { + padding-left: 0 !important + } + + .ps-xxl-1 { + padding-left: .25rem !important + } + + .ps-xxl-2 { + padding-left: .5rem !important + } + + .ps-xxl-3 { + padding-left: 1rem !important + } + + .ps-xxl-4 { + padding-left: 1.5rem !important + } + + .ps-xxl-5 { + padding-left: 3rem !important + } + + .text-xxl-start { + text-align: left !important + } + + .text-xxl-end { + text-align: right !important + } + + .text-xxl-center { + text-align: center !important + } +} + +@media (min-width: 1200px) { + .fs-1 { + font-size: 2.5rem !important + } + + .fs-2 { + font-size: 2rem !important + } + + .fs-3 { + font-size: 1.75rem !important + } + + .fs-4 { + font-size: 1.5rem !important + } +} + +@media print { + .d-print-inline { + display: inline !important + } + + .d-print-inline-block { + display: inline-block !important + } + + .d-print-block { + display: block !important + } + + .d-print-grid { + display: grid !important + } + + .d-print-table { + display: table !important + } + + .d-print-table-row { + display: table-row !important + } + + .d-print-table-cell { + display: table-cell !important + } + + .d-print-flex { + display: flex !important + } + + .d-print-inline-flex { + display: inline-flex !important + } + + .d-print-none { + display: none !important + } +} \ No newline at end of file diff --git a/home/css/style.css b/home/css/style.css new file mode 100644 index 0000000..1bd4ff4 --- /dev/null +++ b/home/css/style.css @@ -0,0 +1,217 @@ +:root { + --primary: #5B8C51; + --secondary: #EDDD5E; + --light: #F7F7F7; + --dark: #404A3D; +} + +.back-to-top { + position: fixed; + display: none; + right: 30px; + bottom: 30px; + z-index: 99; +} + +.fw-bold { + font-weight: 700 !important; +} + +.fw-medium { + font-weight: 600 !important; +} + +.fw-semi-bold { + font-weight: 500 !important; +} + + +/*** Button ***/ + +.btn { + transition: .5s; + font-weight: 500; +} + +.tombol-utama, +.tombol-garis-utama:hover { + color: var(--light); +} + +.tombol-kedua, +.tombol-garis-kedua:hover { + color: var(--dark); +} + +.tombol-kotak { + width: 38px; + height: 38px; +} + +.tombol-kotak-kecil { + width: 32px; + height: 32px; +} + +.tombol-besar-square { + width: 48px; + height: 48px; +} + +.tombol-kotak, +.tombol-kotak-kecil, +.tombol-besar-square { + padding: 0; + display: flex; + align-items: center; + justify-content: center; + font-weight: normal; +} + + +/*** Navbar ***/ + +.navbar.sticky-top { + top: -100px; + transition: .5s; +} + +.navbar .navbar-nav .nav-link { + margin-right: 35px; + padding: 25px 0; + color: var(--dark); + font-size: 16px; + font-weight: 500; + outline: none; +} + +.navbar .navbar-nav .nav-link:hover, +.navbar .navbar-nav .nav-link.active { + color: var(--primary); +} + +.navbar .dropdown-toggle::after { + border: none; + content: "\f107"; + font-family: "Font Awesome 5 Free"; + font-weight: 900; + vertical-align: middle; + margin-left: 8px; +} + +@media (max-width: 991.98px) { + .navbar .navbar-nav .nav-link { + margin-right: 0; + padding: 10px 0; + } + .navbar .navbar-nav { + border-top: 1px solid #EEEEEE; + } +} + +@media (min-width: 992px) { + .navbar .nav-item .dropdown-menu { + display: block; + border: none; + margin-top: 0; + top: 150%; + opacity: 0; + visibility: hidden; + transition: .5s; + } + .navbar .nav-item:hover .dropdown-menu { + top: 100%; + visibility: visible; + transition: .5s; + opacity: 1; + } +} + +.halaman-atas { + background: url(../../foto/tembakau1.jpg) center center no-repeat; + background-size: cover; +} + +.halaman-atas .bagian-atas-item+.bagian-atas-item::before { + color: var(--light); +} + +.halaman-atas .bagian-atas-item, +.halaman-atas .bagian-atas-item a { + font-size: 18px; + color: var(--light); +} + + +/*** Section Title ***/ + +.judul { + position: relative; + display: inline-block; + text-transform: uppercase; + font-weight: 600; +} + +.judul::before { + position: absolute; + content: ""; + width: calc(100% + 80px); + height: 2px; + top: 5px; + left: -40px; + background: var(--primary); + z-index: -1; +} + +.judul::after { + position: absolute; + content: ""; + width: calc(100% + 120px); + height: 2px; + bottom: 6px; + left: -60px; + background: var(--primary); + z-index: -1; +} + +.judul.text-start::before { + width: calc(100% + 40px); + left: 0; +} + +.judul.text-start::after { + width: calc(100% + 60px); + left: 0; +} + + +/*** Footer ***/ + +.footer { + color: #B0B9AE; +} + +.footer .btn.btn-link { + display: block; + margin-bottom: 5px; + padding: 0; + text-align: left; + color: #B0B9AE; + font-weight: normal; + text-transform: capitalize; + transition: .3s; +} + +.footer .btn.btn-link::before { + position: relative; + content: "\f105"; + font-family: "Font Awesome 5 Free"; + font-weight: 900; + margin-right: 10px; +} + +.footer .btn.btn-link:hover { + color: var(--light); + letter-spacing: 1px; + box-shadow: none; +} \ No newline at end of file diff --git a/home/img/banner1.jpg b/home/img/banner1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..231491c1865a1d5ef80ff08260ef6cfa60a1d1ee GIT binary patch literal 1296877 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ν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

F! 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ℑ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�Pk`)cx6RtNhhZ*vp)#v1w=1j62dz7{{oJb4 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 z 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℘9rxtB~tBu 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%0AI}7oiAX)-wIon=mlK4 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%0DeJ$L{JGNY_A?$7@z<>7;ty~%=$dl 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⋘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

eK@Y9z68evpp{K8q2-P} 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%0AucxG*La5xw*H& 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�lqY3Z2yU%%Lg{sQ`& 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ν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

F! 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ℑOs3&7qth^hz13__K+&P;2lf#w4Y4^~l>2n*kMr;Jtxl_k89^UwndVR;+fKx?S}7)EE+x z5R8`3^o$cS4^uSEqYw~JQm9&a^w6|o=T7Bx%O%NZ)E&SlX+E5&L>AD|PaVYJTvJo2 z@@3tnhB#3m0~_&9EKM-41rXur@Eyy%#q}K86N`#~!JdA2=yU<>_Z{SjupYeyt+D_M z02Dvj0wgj4Rr9tjqQf`$zMOb+@*ZGSy7|Md*5K@ zRnJhLCxmeGH_Vd?+nUg3li;ya**#$f7+%K8+*5HCqo=b|=->uFzB?tN-YzsvJU=29 zImf(fofw(r_8>GRKCw3yOXfK>zNFy6G_f!%MIidlii>uBJ5Ei6n<|-( z<1b$=IX6xd%(N;wyU4&OuW6-xn%W%AehQBy@M$ z_=7Ih1cVMN{KI%ZW&cfF5!)B!h{G}Wfr$h0*;2}+P0QAM8=Dkgdv-8 z0>xXW{nogKji0Ou@(fPY5#8vz(QF#aXJD*U9sP3il=E=w5kI^_IwF~56@i)3w;{hv zs}VCy{rwpn^J!4yDW1`}a9*2-su$fs5-cw2(n3&C8|}M%>#_3Rh-O49d!}O1iWD>B zqnV8XJ)P1e<_xcgB-@zQs=DJ#^rHc7DvIHvbs2d6;+L}Iz?5sz4kv}4+smHAoFTk=nPM({hD)wc`ATvLQ zD25}%RGg(_1F^ZQHMN4m1ilPH?M9zZyR0I)~cIz6-xVg|uZQ;O1xLaWO@t#4}x>bI`w&5HYUo1TN9Q93Ht$Zgg4xBzdg zqDBNHi+7Jp6we^wr>Dn|uzM?AZ3`##ZcE9?O$9FKimVRX(t%l2N7@`9R{qGd=-H|UUoSQcmyD~`X^F=!Fi8#ZSR@! zw%W>A#lEy*E9nWGYAsQwcWNRk<5*RdeVI~7aqzpv^ps_{5>#q7jrbAgM1p=0V~u%{ zedZHst})_AA6+)_LUuH_)x%#2RlcwEHEW^w#fmz(G++W|=@z4pE7b$FMgr`@AB>Dj zl;Rs1s8Qk=03N`>@43tlF5Di;ef=a4VM@<3J{na(R_-GN0BYJ2Y2dnFt4EZx!SpG@ zO&{tw%D1sb8QuZCFBRQ7C2>LJOY{+I>`((elUm$F8>%bE0P}c)m&V5Ro<&=M!Ydvu~YG?fcq+(sOQUQq%*>FX^ml8C~x}mVk*L!7;l?-82nI{^ppG zjQ6*qmKH$ds1}vzn+`USzDBY4Z$NMog0bJm-In|ZjJ3kUodw_W`8!k^{9!13)dF6f0#(E!^6 zacSLSe}-!R@)m;8e;$ym4Rrje2?sRtp0iWF{`cUZ!2M_2Un*F#g?GO`_wS!}ecM!u zR{QSRrN_j2^FFoqz`*l-S38c|wAeiV_YD6`-2pKV{ma4TDu8{%FB$y|u4{v{%s3Tm zR%h~%#Aim)H8r%6!uVI3sFs%MkX1F?GzZ+=#Y2@fq*iPL$KTnq00n3p9T1b6000La z#{j_l^I&5+=o81Z550TFBkmyTjJOQqaLc)c{!WU4U&lN*>Zl0QWZg%mu!K z$G~k3kO)|U0RRS4&9)6YSuQPM#D>ZBkw8nXq|AJ(+@ogzi>9Jq=T4oG9|x9He|UYo zyn(7axwNmz=AEAtBjdmdM_?D=mv26KSUaf`zU>X=3Cyw=AdV5v2VkETC)IRW@RqpQ z*S<7KFHyQn71G);j<+T(iR-FJc2d>@7lGj(hrj?5R%z`1C#y7N3+M8b4!9ycylbh2 z6_mu6Q5mQoszlTuqlyR!yKm%|+K}aQMoN4}3w1yA6s4iww|iFJfF=6Kh)IEO;t9YO zb`so~`(iFYO0?gA&!W${PCf@9R|?h=B?E@SkVnlO~sF5!{o(l z5RSr;L{xQN1j4jxijyU z**gPwy-`|#54{NEZ~Aaqqs+x7*mpeB6{SxIX`7>HUWT0jw&A>%`4eD&h@(QcBlCN} z(Fi>$Aq5!NzO!F#G!$@g{k73>12C0xysf|@B9*q~iksllLKGF&!Y*_I%QQEGmmn37$`YwP{+(tLYlFdRK} ze4fu>n6WfL71<*ZzD60J#cj5Q7dPILY&LB+?^@Cdsx2>Uq1imU6Yn8Y@oFwP1n-4E zaS*6s3X@&>6_*Tf$Qk({wN;xkjoU=yF{-hF+Glk|Pxh%_p)Lm_Uj7s!(qUJF6-Q^F~_G`s2`;zT=<9QmBHN^qR~c zC)C^1HczeCuRd_ZOA8DHd3QVDKW}_qBv_NjWtV1R9bYSryRQg`RoeC8LIqwKD@`TG z%$99mi!*XJ5uudDG-zr^W!ZSwAGc3?y`L`ep7r|3WV9MJ+QzUsaGYPZea~2CQ%*Q7 zD7fD$qZL<3DQi_fHEYCMOYoec9E%PdM=LZRcWf4>PHog^ANPJ&*L!9<$ly-1PhW|> zQKDXju~`FPmTF;I;V9m^Rzsel&zhVIM+?Y-y~Bnkyu$YO^6D*K>OhKGOcCHRn3E;! zrxS_4e%{U#I?A8;kX$I#n+pmO;Rh?Cv)E+kobF>dTfAprl zbVc^ji0d^cGjSGT%_-%V6xzjdJcx1Nq9T(ROC5=U= zl6jlrd`#$>ildY6D|!~k7zpPgw+8>B$Z7I1R|$i0e9o-^-$i7F{Ug-%{<3SRX;Xsm zxnyq%LJCcP(wJMkFf&Z~vvs|4TLjBngZ|ARX<30s8;Mp9(x{HHf1V!!VjPqr26?ze zA$ne*6@CS(7=n)$u(?GxvP(p?x8S`*b z-YzOO?Ky|3O#dL_Se0cg{84WfXT1sTh2 zEa9FujyEeU?Iy%}4&8d&tYe^8!poz9EsP-?2vQMm?Ut+6wQZzcxd~VAc%be(4d+9u z`|^>IQEp#?O@W5k9@nUxqmY^}hjaZh9o7RLUw~i~z)`?y4&W$wjz4F6hCm#nal|1( z?z_&4vgCy%v1=7R9n?`jq(vD5<$KMrZmx0xl|WEl2tp(7wBmQk^)XkxC;G93RQlK` zbD*@_^ud*cmNvU7IEV)tH=`Juk>QGbre->1Gh|9qoa3(2$jF$Rze3&@-?7>71$2Hm zWWM9bw-5mS^#?GdM-G|*{0m_&D2@jP1xDS27*N3jCJ%y52P!LXEl=xdg0P)od*Dzo z?KJjI!PT2uhGpxa74i4j0s{Pwu1uj)pTHv<{(6E1NOQl5ezeIr%70|6*)tDB)&iu( z7N7ydbufrVOz$3K%mh;fEV`UX6SmH;u;v8ORQNi=K$T$B5Z78;Vc`9{)ci=)2!>+X zPI;J?TE{Cd4shm2L2p%}!x>-~{U7x8zPOw~!LBd}7XoC-IkqxEA3*hA4hWO8-wWt$ zB>}!!PRiD2&dZLAhb>Kh-VrGi@!N;5PW;yo&J~r#JsL^h#ezs2|5#^Hwd)WSsfmD& zj?WqI+8cZRYsRln>;`l4F9$${CqOc{eLBK2`c=cxLHnoKHk}inCq`w5XD`(@R8A3e z!0*^2gGuaBPpcv%0a5AO!vh0)zU%`Coc(nGYaaUm)|@}z?g&IvrMtS94jTiN19zZu z@VQt|F*+xcRB1HjmUXGa!LiM7?e2P}p9C&tlwnhZQgEBHVz@=1)*MbpU{XG&IbM#- zdt8AyvL?p$?hx?p0LtN(F;}r%b(2!5IA=smyNbpotYUOhUG+v_dmT3B1H8XA2&LxSI-fyB=+wehBz`Ch}?s+T;t>pHrjN=zYM z*a5|nlVcz)d$U7CBoJ`P+)e!{w<@h9(EIfAzrFQCNS7KfuJJbme{{H8WGew{(ib1 z5S@l_!^0!}RK(k4Q#vatehz^-7{p7l=wjrEHO3Vk8)`2PXC=6!kt{hmS~#$+lZ(?c1U%ky!l>Uf9NbGM^TQx2fyE&zQ>oy-gG?ukM{vs+rB&WK-3P3OyE z*00%ZlpEst+WS&`4OL%(Xim&XgNHr>J>?Ii z6<)eT(xg-=KXZwKudn9o<|?NOi!W@n^+{z8S~pKCSx{ub?s-8 z-6YbBq><9tX2IeQ8w&T)@x(!(hhs5N{8T?Qay+g)^K<5*S^m3lS7LUd=bC2pLO%%Z zHmgcHU_sNajo+&uzT7nDRp^Im?RKq+<`FKeOxrkB-74-I*GT?l;lS=J<~b1Z8-?a= zKYnUPTfkEuix966TeDEWofi$`(<&d$IH!&nQ^5ha-yZl98u!GyvrcN{)aW{&rzdgQgwi*g?y@v(t>ih`Ns)ND&%Qxgg z6C3E?1IwCy5rD1gUGa`9y8)Jd0mUzac#$aL%ZEu94%y>`cQ4ZCt!K!!!tXX(!=*^F zw_5t%q-I)(YPxD$iCHq{ss|d*27RiV@U4#=qlI3bu{hF8Kqj_Dy&{ueYg7zp-&f!G*UbF@lpvMUpIi#GIrGP9TQ2h;mK6_wr zy1bg{UMNq~sU2@iQ$w^j_B3`4-~)XxS=7ykB$7U`D1lntBHHf4hW%A4Wvt_h>8Pw< zYXq)Gj^z}!%NhkPElk(v1;*`v)|>MRZ!>Pe3dJk&o4#^_>3iorUf_*V8;0RTxRwpp74A(e~ z(I|P_>d?|pkc=e|{LbtB*lOWM5f11QwxAnS6~w-mTY|5qryjEq$Gw^aoFzggP2Wv1 zdN33o1K02m@&iRcS{rW&H}2_WQ6DW?cAcv|+L#eEJ3?b84oKWT*_rqA(9-!a?RR4g}&JM_$1YySyAlP>g2#f`L zlp`0QXXt;zv&M_KA9W!{cMxA)GBrlEqp2;93#2p)eID`eD(|0lCQP{@2MYB)Yyx_d z@O_zxov!UJda<69a`Sr2)^^4kuGp;O_L`R4a{{9`Gfkoc>OM4*(?a=c1s2IT`sTB{JsJ{N46Fo{G|? zzp|uAL4093n!@geebJ=cqm1s^)ZSOL=~i{+hD$Gjd~|nrhIFDEvc(Ny2jrvM;!th8 zq~q4rJZb&d60{dSr*~>P+6O{BoRPVGZ=cfzHUsC*gbODuf3UpB-go^LQZt53Re&QF zJmLNXT+($djWKR~7IXAR<&3QR=n56=t^*FsPI~GnwL~Q{FYxiD;i6npGap6NiF<}WQUphv4WX({?wXk&t~2100CuODX-rkwaWorJ0mk7A z;Nc7*xVYO&C)oNu96KApjR5sQ2UIO=ui)E%MPG;i2Cue#&oSG<#8Q+Z*jb^>Q0{*m z;8#NLsw7~AzjYt-4gWtJyW-)t6bc91#-W`~`FQh63=rAOFGb$Yv>DGVN4emSy1APWRW%YRdAv$xC6Y7uv zYPiXJAAO%NT8_T=Kf*8=c@N=V^ z&BOuWgL)u*uq&$)=?+)E_JZ-bpNSxuxuBSZ7PovZSnu(;M_{p-AR9iTv(qLPU14fW092f&O2nEmZJSdF|`~y-eVEUvWhQ1T`z-N#E8>)0q@0=*JkjiS%!a2TljM3Dr7@{edxhA*FACW3X-p1Qpn-mu6(^`0g!6&*U z#^+XL5;LP}thD6{cOn~{>|#yxnf`h~r0bDcB%{bh<79I5fLd(cZjGd`5ZguYa|5h! zX3!=uXTKEKED8z&;K~Eo_2l!P-il^_BlTQUZ@HqY3)P#!sxat@m9frBMiLH_ z$LXJ^oREO#!9?V?TRA2)BhC(AdWRxd@=~iuB;DPnvAr4G3h?!+=8BdDs;zg2P>K9q z15@`5F&!N(d0Rh4e&>7;6A3(hcn4e4V&mP4!+$l>wZD>z)Pgq=XD8x*m?ieMjLNlI zpYzdr|F-lgr_K+O)U5+r_(+1lMa`5d@7 z^R`{z(nd=c6#W_t?&LmkdP$9q}B*tgU?^;m*}nm1;k zDN9=-Ow2Kq1Z1;;svsihxGh>cut@3dFEfj!5;&o96bWe5^Irt*+@z z%Hrs7>s2Qcem^GH7S~k6K$53Ck0=WP?c%JsDAA|R>3 zRgs$k4Mo01M^*xMQk1z1c-FaD%m6*53EW7vm4zDNoNupC*j>ot>(koMM{Jj<3&loms68J8f>h z(32&hafgMh(eu=j)#q(82}OHn=Z)Z$8wlqy!ke~w-4_o9e6t7E^a7Bm07E+XAO*lM zm*{rmQ}+|T1)jX-lA@OZW&Nr9kU#jvh<)(ZXD466Ae|iJBJH2&k6EK`)h-v8obd>d z%BEG+ycQS92|fM_Nmig9T9;7pmi4=<+@WQel4Vw7?C%j&TEkH7T5vJ!ibo{7YUy_S zF!i4VG~B8Z_me*FR-!Y}^&87?=aAX#zETxOJ6z6_JSrp3C1}~ObXz%%3-+S^`u98SK>e|8rS?qzB9lTf@Lrg6 zOsVYZi0g|ph_mwMcR;7ne_7lE78p@3khsQGmpGGyzqJf4^YHLIl;V)Pun`hy`<8W0 zdZ=1+Kyz6QT_jBMdLgwI5C^xTX`fRK@C^**O`IBINZ8uN2aWbi4WUV6#X9RsMwx*% z;}mjq==Ls6mYSbIlyY6qM7$$!6TWwN6oiLH)|J?zg)-dm9n7VYnWFs+CTg+ay&fTu z)V<~zk~=DL1=*2#je`lE5+p8PgIVN-*GN#zAnBQtuA#*$$c5c;IX{A7Df+=N!;WS4SWV$0+jlx^NS?GFc67 zFv;6-{4DQfcJkh9Z%FQ;DIEihWaw4ecdjJOk%zgr3Imiue zyA*ilWmjYlCNlZym1^B(6FrQ{EcF`a*w6Ia^M0(W3$Ec=uN=Lb2x{Y{tMqx*6247- zx9*s(6LER`)^Io)2qrsd%AL-z#W`}h0*)h)6$ZX9&%q1WfZhIXKi6O7fi$+>5A+I( z2ZOB?@#oGcK=dF9N`1Kf9{UaZ!GS0#?f7JOak-gb7vxx@r1div8)PjLuog^<_TM^Hw! z>zpOoO?kg)x;{{JjB=n=qfeYshpIv7v>VLiCMv|dAQXNMq$=jk6&FrweGJgw6I>vT zj&n0(1jI?)*fODkEz}+C_I|Ob0nrjL=WK)rp14xbxt}hB1S!~?=P+141Ova|LKwFx z(X#V&jRA7dd;VHxtF@3!Ur`;m(Ucl@$fK|xtB?7Mj2ZlEwNn(L(V=dqX(kzKqtS5u z#dhg~9CI7YC+z55yY5zXbXw?BVRfQ{kdhC4tz=ar7JHzkQvE5;SEC^Ud3<5%(`0Oj zV70OSCG1oX+S=TgpMJgAKL4qX4_Q;8N3chb64xDbZYp5<7&;?&3_sHrIkv1$vQzFJ zDip0ZG+Utd<;>{^;Ny;Y@Aq1o(^Oh{D$l#@IuY;I^E;DeH)v*E{PeIL{?R%2z(j*Z zy()=TIZ|(KbD*=5`l_9Da*NSn3Kr0K)qGf*Z=^o1+cMn&i5D2ej?^1ua-9 zFtvQ7X=K5cAR3_DZl+eXdGbzzJxak_DrY%Cw`M9mZr#)Rvm3U3>NdUp`sEB2xA)0h zOBMVv!Pks7o;vhPgvQn!LEpxde{>~U)Z-kKX@X+yojsntF|_eiJk$7>k#+t0oCq6C zx_@0o0IFp&%Pb(kZeV8FVL1c0oDrp560X^DITLQ1GHd}TMG?iF!^cQXK~lbL)$u`& zg9rG!doxb~B34O*>ba3bBh zSV5~k%U+a#69Y2Ian8$5I&FP%c0x}xC}UV>;@EO^B}dJU$55#j?CMHJ(74qVqsO4< zxvQC(+0TG;TnCcgX3uVo=H`iM-t-~qB?sTqvYs5_h%u_sB5*u3R{ZQ4t)3)`qU6pq z4?3&ce5!A99XIl|cBeha(rGc0oshi$u%Qh@UOpW-ZvhCi>yqEO=3^u!J>Nbw@K}>7MU7OD9d|tE&^c_VExw?S zx1X$a(Jby>(h_R-AfJ;$D`3>lYh>Lujt}!J7jZ%=z8)UL>jqQqWR1r1whK-duY?Q> zXvm@yJk;DRUX6AXuE{n8;^aC6I&2jRyjMy#K(Nfw!IJcB@%S2nigPS0ZLXC#Rl|ww zX+_s^^5fK~9J7Y(;EeeEFv}_xz;gDWyp9lE-A2`xC>{B2v!~_ea()9QB;IdxcxGct zMeb(vBdu6wnOMbCrYxX#ju4mZQ915+Rw*?@ZLuuqp_`hC`BOEY7PtL&z&pR$g@6{U z7%m(yM?{>}(ASMlP!2B1CgfAeN8cB>OI#t|1PB#&B4P*b>Nbu0k07tSLjc5btc^{@ z7Y}_8@U0A(FpgW^qlZamJ3{mPC8$}g@wM&TEa}(F>sDHE>ve_oqUS9z&n)P1yggWJ z#`@m#F(~CbWa08qgIO$BA5PInFS5hJsBvy0Gx)r1&>OAqSm}N-ccK>F^p2)mlx7~b zp?)eNgMhsy^$dH7p6>p5l2MlUXV>7#I#kTy`$(b3%39H_AeX9 zK-Bv#4A8s*XFzF_mV{q{g$2k8`OIChbb&~Afo1T?9Kr&|8*)TtbDMRYLt3Rz#_=bi(;JmYimD4x&tRn ze(a=9D%1}2X)m7c)B6BO-lTqd!?xUYOYVVek7~>)6&y+v$5?aLoc;sWanp1&qoJOR zOBtFTIZGOv()&P`)fXHxNoY3oTBft9dqNR!6ujnC_BE?^I=GL}Y@%E`eLHd3n3m1! z$poV9xv?}XSfm;|v<9TV>M%;fWf}KeTgar8UGGM%-`OkZQf!oH0oJbdIBc^#Zwg5T zpGJ3^THS{}c1@`pYo>3*$ddkCZd(ta7F$OWh(oIW31ffyZ!k6?>R$F6@RW+$o^uM4 z1Ah)ItAJa9O$2#)=tGH-ZW;qlo<-mSf$yn%o1A**5KYmbA{Ka1!GTXITrt5 znq4T)IrW`g!`;Rum5@ZBbKoB!HI}@8O(jQI-{VvevapLHS3gz;42@CQKOY1n#TS1C zK4^SfJHK}UZnWfLvk!oM)+druGHM6@fZd-a+ReJ7Wp1^!A26emg+uSw8!c_98kGmQ zOD9edJR17&ALoM4mj{6@DP+-)3(Ey93l?NyKVcN$Dm*UOE22_q;bfjqAv66@h2y{) zr+aVPO~7h-VdvTBZ0EIaE(5CeCs5(aIagE)R*vgK^W?kem%OL~-r zFxWUXEqpc5sof!Vyy2EwKo9HLpa6|pTmXL>7;Uzmzlg=DIrRYKP=^D*wD804i6(%g z5ECT^^f*t)i`gp13@s>;57!_3DDBm_4RA7oZC7Xub_e892sFI(?rm-TZb@DO3Gz4x zC71%Tnx?kU&UHHG$BGx>4{5%cx@lTAt0{0fYad2{j9@KfyyS2fK!!m8V;_7EV;dQ_ zb08?2yBNBJ4Uk{_&C?H}NrX;-JO{T>Ec9XT_IJ;rSD4K9Z1yX-J!0-{z5DA0IJLw1 z*bIq!Fj%o@?Vqg0e_isAcURD2*FmK5j+T~5nO;-X=MiG4iH|;$S04Kqfi0&09rAQbW+|6?OPeC3Lg0De+f)?&va@9<>Ym1wO(at{jc%D0 zshwJ9d;Dfkb6-}a{H;MhcKJJiLLvJN=ii@P%Eo`W&ZLj&FrQS}X3Q{l#fxHN23q{wKq@WdU zwILE&{GtE-@5zs-Un;ooVLuoLEJw&;f?Bhn}o%Pf+5G@?}h2x7(@)KCb-gc>kkP zZ)AaOlsK^N`bNe&*q-Z_;N#mVdJlI01h97%`A7TYxWB{2jo8#A^I4a==XIi$KIW&4 zM?|9LP~wc>-^jBu3r+=tkCovuI)Prn(fYpxuPVV+YbOQ8&tKL`9E@EWy{mXX)rR`i zHFGhY+*aY30jDagTG=d_ORkK6TFT&#f`_V0KaDlP1vqA9YE1u5)dXKzfUdc=KL@X% z6@U){OqcEz;E@Ie;+SnaX=VcUsdvJ`y$r+}El-;H${$&YLTRW;HhlD+SB?pBw9HOf zp|qgf-o6;@(wenXTz0fCrdM66*UEAgjo-Wq`rKa9yK-tW`K+8p;D)blCDIw6EDikT zQh^X&AtnWLCidW}6Hx6m16nVN1gE;b$CfYNMq;CC%SV-}TYuj_*KZ`!TPBI=*W**P zjl?KLCyf#mwa0bZg=?<0dIcAd?cD^ht@6LFT#GVAQBf)HaAHU4SP=t*aoS|a5i5&g z$e$CKmUv90#!fgvv&>#W?WUc02Q~?_FF)D78(L)4&L>>}j;~vr$NK=W@xOw`pP%t` zR9O>eVqdq~^4OU*VA8_0e<>YY(iU75wvVU#T4FIpW`S$yZ_5JwC{>!TL;4;V^kNM% z(9$(Usv82q9jjLRXq%lRfnTOqjILE)Coki`lXWi8ZuZliH@a53PEF}(e5?`Qx~7RATH)P(?MdC_XKLYyV;`ZFrL2o8GEp=%qX+^)&1bnj zbtVdCj)$5k-3$s}ha#WOFt334skQJKRz078x;rs8U3(MNlbzB?5EYdJBE&=4*4C*I>f24ROlgPPl^_~e?{N|}g+eFwq#lykt8X@nwCHBfi6p4uUcAzA1fewM<=WDBz zof+o%sBtRyV<5%iEDLuXaWph}SR?LinR8rTLbz}3Y~klh+lsSy*R2x_T69giGzKn} z*-#DO3Xc`=2{Sfzd8J64XdX_~Ss~W+@#pcNmQG%FS(pmp!2~Ws?AuWQfkA;9=c2YL9tJBn5FS-u z3fB-7RlD{6kh7>la^w1?l?SMF%FrF#4`q6Sy5u1Lz**@5LeZhIUV2I`cW`s)fBI{auwSAz3Wt2NbM`y9tRN-Kc>C+N} zn}_vHo2Yg3$r1ttDpg@LJT{exm=1NQ7}2rvTd|8I6! z2*BQhtaegoe{em2GHUNONCgwP@Cn4}L_O%3E?;wbs^ghuJ{5MWG63*X>?=)WX~$_4 zT{|>YN+92V$~@voQtK_7p!QI-{Jvj2UeeMJbUmJd2*~rb3|L;{g?o?q9MkrLA67{m zKtPP7KGSM2bLwQu5*J+1mSj)lJh$ zig6pZ$oW~n_4UAmVbYSl|dW^nQSuK1wW>TrY*u1!@ zLIMPt$=ddqx_c()Hjhfy=q+l`1h}iHWxs*U+WWI%3O{^tb_9%I2NQWN04#bKvMPgD z5Y)uRfdCduN$#V-l}wePI6ZJ9YVPHUVk<8aMy8itaW3_1>RwI6Sl29L31m!_e!r`{ z*B*>#j*g}uiDqckrrR3UnXG~^KBpr7`luVuR9SZQ~r@8iHwLYPK#tLRFzjx2Dybd$(CYSs6K&|59_)J1LSCoy_8@~nU z20$LLmud+fk9>ewXzz9;MRe0Y`Bm~S4I?ajRi@t7tf*pe;R(D1HD;@aO`05(Wj~!QghPyp|#>wn*<$I zDWYP2-9XU-{bMuNO_Bz|N}g(5znD`h9+BkJn-cJf!dDBd{D+28-nR3`NJ)KVJN|;I zx7|1a78_pg}8z$jku+Ll>e~Cmwv`zx0%{bLT8W0=IAfaJR7;DC$*a z-Wip67tJ4TcnE(CeEz0i^Vh|T_p5@gK$kPy&E$5IB-q#d3gsQIfj+1hu0mH;cr=2N z_LD=6L3a1_xmI|q$*&2!l^vRjfx&R3c9KWa^KHApGceEpx8pB9@2{`F7y*6ObPusB ztx(Iczn1w)Eg+wKaB~|f}nyFknylMY% z>NyjRya;8=0ht_k_v1z$K;`L!^6C#PTAVyNtrGTqeDe%C=Hw`D1=ZbP`hx0Wx2oF}gnzJlph=1S49&Pz|s55>Q#P77`Dp?imPv|*N{@kDCCxY@5nVjzI3Wmxr z3f(H723kxDTJ{OGe-w1oXw~ARqB@${*RdMP`{F@0ym8;g_|{1-=%h%X-9{hOFfMf{ zBj?=1sS`}7hTOm9+tr_3;|C4cy8~ZkGh%&J2;-|lO1~?9Wm`oa@-9VQ z(heM8H^uJV(d7x^30CLw^cXbk7YCr}vL2{}Chz91P|#bFN9Z&(T@QuUz_2WmID>T1 z56ag42aKJsZ#YqXG5F`Kpsfy8A<>)Q;-wn)#eV)Y^^M@4XU`(1oeYImq8wsSVnA)lS_2dK$(KS`qC7)~nwtbyavv)P5+*#SaWQ93FGu%LOh7k6YI zXC)4DZ)=&<=nV=q9mw=W&Z)Yg<63c^F?QE>fuA(6I)V<-=O@^&?2iCQwg4X}&SLV5 zi^}E8;EJewiW+af{pW%a5L(SB76e&`tT|H4>eU@{TU`rIb+&Z(V~380czz=@~>F$>%)~6;bUE+MAcp6)&Ucd zN|jcItYfqM-l4sfUFd-%QO(dY3%|6JzZvlAo(VXb>gRd(4y}vaZHc#xq$xBx_)JFL zME2TXT+oC&uN?|VABaZfC}aBF_fsjLv`upELeqJts*Tp55o|j{8(qfz((w;i8B3om zNqf4i%zToi4QR1?wHo6$2N)s-IZ4L7)Xl5Go8;92PnNhgE9_MbNHpbKS(-XqJy^6k z&c60qPLgGNBy;`Q>PG(hY{0A7D9Siv2m!V@dbEfpAudckc(Gdm> z#Fg3p;Ux_ZP@79=q6g?mln19H%fyiQP`Eg#^69eOR!bPoTOCXfE*aJK9n}JJ^(jll-QKYt8t7zp zA@#x6Q=suMT?N}hTW#bN~PTLp1@n#*7hXzJ; zpjFFp8O5&DaqR(dBbpz&N!VAvUk+ubYv-wFeJ&2`*~l3`vgtA}QaLXI?h-fU(C^#< zNS%hN{n)UpY~DE4v2GQrw=`?w$oP_sJs6xCeUP5A(Z}xXk6{Owjf)-Dq&ITLmOx1- zS85bFz0&E^de81v2ZP2x5hf5ZdG|h-EuV^`cnGsHRYPL;1)#v z`K%}LP^Z`@pib#Qoz)I-4!x?e`7w;A%=pC+^p(}|bOX(N66}<^Dml-(zM12`)tuCg zBcNhu?W%e0Q^H|x`Aq9Jqt(=7sb(GSxVv=~vOUyFLxqBwP7u`i`j}1W`9KwyfK7>7 zg4bSBuD@Q)nOI}}oL6HvcJ6EOGUw$E8Vtt0Sl%E^!TX|^WanxEW8g>Mg^E;G(2`W# zoxoSGGxn@^wRPi@^5RcfX?k=ZXX9U9&VxMoK+tC5!L!eyUs#Cw5oUaPC!l=%7C6ka z=^-KJNXRw=cvm3nn6eM>>(7QZS%5cK-e1mOr+%M4_IhdkT9<_?SZwBi#pVyR5?9EK zj8AVNCzmR>wQEcT|FqGQ$}cxiX%R~6O2gw{+r>pWq(sF2uuAJmw86RJZAjF|sP>SS zW#FLsU6V-620@XYa6qkCq|o48bwePW>F$i38^h?p@@$03IbGxm6N69fPDa2}6WH zRC!o#y>{u4|HI*wqTGd0{-aKJ7u5G+m^GsQK)37<*b%0mG@f+itb{TQt?eW&XZkjKJQK(}usGy)asGuph zat+YNSuPI@`U^+by#BP=T`~_JUDEVp#iKW*!$y~i7UM%U`R|WavJecswz8dv!ymBn z)%K5Nn;vd)VaNRX5P+$Tows?3l9g7ZQe3Cq8$%zr23&2gHeWJp-py$8huzsIMbPoB zQ{WVneX3Mq_UYH<-qh|5=9~lBJpRfy3bGk5i=AIH2Nf~23(}c0RouD*J=%A#uj1x| zxR*t?P8m;%v)1Lm>F`@>?=cT`t?GZj(a;u}STi5=-_Km%EZ%D2-LQX_r(F>A->VW{ z{YO>xU#j}=XO3*;p)U2Y2THs54riQ7wF|82UwYNW=@tK0udb{+4EO-Ly%cDALVMV= zBQh=Ly-*0q>$=+)qeC{2L9^q=a&K?7NdH^|oy%hnez8Z*`!nppFGE11sNHKrA2-?b zaM`#yp#AtppxkEHR;H|J@h_QPFth%V$$*{7HOx|_eK1AquU1H~!ZSA1w4pgUPM>KJ zVb94{>$%Ub`Glo+|1D4NR?CIG7slAFd*J~p3W077;#TW42F5!!JzR~4cdlXq+2q>= z+l|scPs*@Qx@l83=2x7#vzd${Ml*Cf-rO8?1`MR}V3sE~m)8|{vFAUDGym^eH_;-a zOW4J*pv_|tdmy+qwobj}oXVnXFhP0i;C^!7x}SEbaN2HBR zrOGnxyEF zd$8s71B{?seV)sE;qb%V1ToPl#Bg_N+=e18zG-4~ZZ@S<$*9j(U1*ap3on+My{Il> ztf}tEC|z?`A*JO-<)GewbhKOx3VSt!?p$uPFstqnG(N2m@1{Q*@8(6iGf?-Ux_W@2 zkWt8dLdbU#ye7T&D)jbJRtR*arp0_2U0HJhaO3u9gD;CpvQ~uwwZ2U7zQrK2$*nuFG*=VCEe|17@t*a*bW=IG$08m+4xryun zu=q2>KgRNZ&%mi6H~G`ctugLwUANvl32+@yi%;~uvM5tD(XpD-J%SDF0y;~hpTq1u zmYyJ~puM?{ky~AQG*+xVMYwU5j@Uf;<`O&l<9~~>F`B>oNiA;dH(F9eKjg< zh+SCRf98<=uQ|%0>YrBH{{4p0`m1*J(!URjO+pnzK>rUI+H(`!fD)+6IXFdnQION2 zkoi|(eDBu)B=vKv0e4x5KIgtH@KD#Ewb3pD>mg1C!L1V&+!0lVrL_QfgCdRm-%G@v^qS_hKsiTw%&)y z!rgI-T7K?$6;XvW1kNf=z9%&zDt|Kk)6#lt@;8S%HPs1%tqO%rBvOr4K3)6RbCUaF z6Q;1KB6s?1Y7EA%*M$EzeI>`r;VTM5kVpMxubGo3ikp1{)3m2U07W;QclD~EH- zUG6^@Kg7-e&0l7|<g_H}vlrQlRMr8EBdLVi7dX_n>;EJ1oipx~ajv15ViI zIelp@b_FA`)mj8-EhoKm^ZzpgRezQqamVDf)!UwV+5RFeVoX$l4TdCZBIuHeK^QHx z1eD(OH!{j6DpL*W1&U*f6ov@$I!;5Bv>|6A`C;w4LW#ayytsVK@-O3_!NW(g^Uhc% zGQYo3PNIja1TKXP@JgkPrYqW5H)FH$aHB-G5&8jwpFDq|p*qUvb=7h0^BNR>Q6I-g z_Jin9>bONj$n%}Q{Qw2l-_#Y$V0%zQF>v1>hR1mVho0=83U+J;+F{dCJpNdf3v|^@( zYtd7!0zd-w+6+!QTD8#wlqN7X<<}KsL(}L(#(NXGHd@?!`g1d_mYo1}t@JT4(5ao| ztv^NZ81e$1+rZsh#v4ePgLo~oAGaSi0WIhNt|Gt;4moE4!fiyI5?RkgLcR zaP95bL3K6aN#<8&$ponpPX*Q0q^bSBTxDEp#V+3BWRZu*Xk58vGiX>5Xc)>Dd9{ue zrsVsU>7V6V3Yu?Pf`4MvKLA=9)GyIp7`ztB`~Q_fB@Kn(sGKI9N@mxl$pqt79iqJ( zv|D1U{yLW7KkKh?`MUm3P7WKGt&&crFR=%z!2VS?=m~oSdU~KC4*Xk5OJ7|if%wv0 z%}IX7xvv_aIeDCM1WF-VoJ5zh2dTj06*NfVG@B==PEKWirI4U&21B-T?Qw@UO56nl z`SNUWb%z_BJd>UX#&HsiV-d+QBpYh9iquFVqj0^WGpJLgTNWBdB;krWSQqSCns%PmIWr=VaBckL>)TD#vZ3YL+_(_dCeGTr1>r7SftSXxyhRS{V zI%hPlq~B|^!-L-Nj@=ghRv|>y@J9APd;FipcAf={%wZmMedrQt{=C(kg5`{`fu7Y4 zsJZfYIe9iW2il-KKQsPuflw)EN#=Y!ixsA(1sZ<|s(>u{WKoj9IAhob04*Xyo&Y4~*}Rrl-k3D=_t8qPDIlHfnDVjXTTY_wC@SEDJoxj8 z?CsDimR|{YkW(hClo@C6sfonrdLz8ksBD@yDUd z&uON5!09+C$0qr={DQ~_PzS)t^$#Br7r^;~%3m&`|3Co)BD4T@$qj&L0~IlW9!J#7!_{dIId zPoZ#txfQBnKvl}%T4EQtxEZ<{m6(F@cn8>A(?DHFwI1(G1Tmua| z7s2&~pf7zp&_y~0v{XfdUZKnGgUe=0z>!Z6sC(}sM0wYzaM-TPl|PcEjgo6egdt_W zR1^RXc^$21?4Lh0!CtbK;eYV!%JT>R@v1EVHNVN#;NJF@nxxGRk6UTc03+d-g=V`O zutSsW2+mq1%oUjrATQv{T-kI?A0>0G#{v&0^desXBfh^{%(Su#vb6RTaCR&P3iqLU zYQ3Tjr$#p>SJmG$iO~}RnBJDP&iP>9ZV$mWMSW7{QsL<4T=9rC#Q&wuD<-Rr z-(pV{9T}&_#B4W0_KLn(D@H>?GI&Ou&?xHK*w(Pk zU|9Q&`7MDMK%jS;LH!zU?G^S;P;oRtb zfvz@*S)$Gbll@)pPJvUM;M54}< z%#~Q8_Gxu5!?m%M@;-98Oi$*EH7ppcX>*P+qDKc38f~(g{mUuk7w+ioR;cw_cOX1A zI1rj~f8vxueIQMLn!%D|POx54zcgoK9g-smNz^{IgitR>r))4>8@(myYU7xtxw&8< zM>Jg^M_Kp#sn}=HMr&EhGN@p7Za`B|@1k^J_lcHGWp$rIszqEVKb*!v+yhUBw% zzo7mAUmHhQyZ+B)6*lN2Fg-r|Gfa>jWFi0}rtI;k#3A^oTOWx#Cpj%I-Pl9H zp1_Zqy<7~a@osI3n$WbFa^GM^=!E8ZtKw4|SI3voAKS`9X$uBx+B9+c9QyyYvQTYz z5&j$OJbpZLF=0G*cBO;zcnsA8`sKdx^=R)3nm)jkGGX<(>3P*-DV(^tQ8;Rn4ojDlJ>ZUtE> z=|5&I4Q6(`wq?N{n!+zzQ+VvSoE8jC0bHv1z4D>mUzJKhRLp{SZeQ$|{YqdCsS{uh zuUFqef~7%oSUNVpNtsas;@St{)z7A>+p~mF$1DbiwX^O71Kf#stYt(~*VL<^4l>8* zW>+X(o|~^0{3&A_XqLDw3%)A>45m`>FMi}n%D@78Fpf0|%OERd-mh`OxvG})o9UgK zr>ww@7d8R69sSOJ zYZtwQbJY|2g7ut&x$xu2MM@rRc4eb>a!Zn!v1;@nZ9^xhYr{53U!C}5vL2G~{buUT zO)0C-wM_I)bSz~`-PQo=oH0L0nQ_?6Qg>QyTu%>nTRR^^LpMyTW4MDOOcrF;?Aq*x z0V7Q3i=ezsD?j}KGGMm&S_EV)F24nJbM>nYOBgiOU%fhaHF2YG!f@7iqcPZKTXy-v z^;?karbAGD)v`3JfBmtdEg`$l=2PkzOEMdAtd%L%4qfD1Jkag4+2($xk8n)ND%rnu zrZt;-lP;BYU4b`Q;Z23LrB&4Zq=EK~Nbd|JPwKfbFN|*vpfAp|=~NMYV(c0!KW-mm zBE)!ao{N?8Yr)4`|I|9DVBH%|ocAKA2{q`hFO)PL6A%lAO3RCIIUml;`p@5hz%GO8Y=fgB* z7uf-32aiXEn_K=(v=pbNdeWEa_HuVD(bi_+0J*H0ChM-DZKTr9k+h;bbJzv%GUGDA zW%&Ai*N}9z)ob03ww#rX(K)q;AMlzz`2t-^uCiD6K&-m8Px%KgcJ)sHGN=XN zmPps3rQinY=1*(McxrUH+h(`fhVOa-_*cm2D5ZRZp+UM&0%l#yia5S;VPfeVV3d;D ze7|Y>4Q8-$tY%Z)d!4L4C_d#-uBWuou-VnkYWxcQA;5L@H`bt5J+z=yueC(VV%yf3 z;`3Jgn=eV5mgt$oJqyse*o}7tKuV(?ul_k$bEbTJe>r_<{qmBk6-F>YT{-jGFX^3BJcLea%NF^ zJGw!5Ts@PgzjkYmmzU(WMl9YM@#+T8_X!FUvC!Y$y=l8k2e2HJED5Ge=r`Jdh9Yh3OGpAft>19qE)OZCTtM4 zWYPHs({d}1=>Zf=!h>hGmb-S%l_kx)&B&o(VItIQ`v!0Ksfw9*G6QaJJal{A zg9*UaZ5e#VUw^diFG(7Y0iCwK%XdW56CNg7#3%;y7!2IRyXJN|-3Qb=SPN*C`tLr|_(Q1odvx zw(#CScnVl2k?(h!HfKjVtkVDyOqNZ8w$NE z{lBSmpCV54pETSYckT~YZwt#LuZRiTf1R&k29(t1ub9+6Gu}w*d~D$-v!JFi?}~n~ z^GdX<_s5NDN{aeU!ByWobsg=q6oaWw;S%DU-4~=BwPFAF8av{g_!r$(-`kUpD|XpS zPBDc&E3ses=Vw3s;|hf_`ojV|J^gj0Q&ez|`AXqe4hxkxv9{&$ekn@wF6IdO6Z}oksUux8}r=$ZqmpOvcO>MY= zG&zC&qD#lroYwb%j>%EMXBMO`tndLZH8csaQs3JVa_fbk`$@w=gN!EhuRz4dTa);k zJSYXVo8ykXv+8ahBa}Z}sSO86lAAZjRsYsAM3eZr{cpX5SU_V5ZHv4Uh@;F0+IX1N zew?CwGH0y9zsg`seeb-u2^It+{=H@NcPZIpg1?KMyETu;-(WrMb9eir5rASUJ+q^4 zqY2y^HnKo2cP^MG9=X-v2eST|^OK+^dl7)?0g3BCgIM$x)i>lt7YBsR>0`}e)} zEI?lBu#|5T^REXD8xg%r#oWY=kOOxmxQe3L;{vy;Nw?emA6;6L?hndI#papF@KNn(>4ETu#<3AsL*YYbatKD_VJQ7O&(>1V@)oLK|0LL0 zHK<;lJg@EnWMbV^Ad}qG5=%(RA1U**gVBf=R-cptY}Y#Jqs! zmV@^$hdK@d3v2im|J*NLW_ojk(e$Dp6K72Wrrt8(+naI;=mdS(KsMs*JWC4z2$D7O zDQ>WSS!Cc*{k~O<1GjG0pG%HG0$KH}wg-VW9Nq?4hJ~hsmlU@45(fGVN0g3I%QcN0 z8^|2OT?H~qVOjR=JjWvd89=_umw2Ozpxmk~`h}9uz29K|fDwnGozGcQ9`{9BN7pbU z&&s=igL^EzXnQAwDpoB7H61gtKOOBeuDOW z_PwzVb&K%~A>sm4JEvQJNl7unM^CCoYjHuj5T|M4A*+MuM0a;i{=I@}hl>;`t((Cm9WZy0m^*@V}!H(#PXFHGw_ zF}%N!xXR^sQYOT#@Z)E*?PCL-*|V(r6E(+BzT8qh8$XhdCRS9#KelgI^SV%e;+}F8 zdTkk|bGtWPTil&7iWq%S!!t$uNUr||`x&p1STRKrSvn0h9ZCvu16{h8f68qUJLf_X zHP8(H-6X@1$AFcj6~! z1-HleKvIeFKE3h7yx2Jk%J&%2YE=IvB(uPa7E3fY{%4&ET_7|V82vNy2a?Jo11lh= z%;RvoXE;{BKm?M?6X^Vp~Z zJ4oQ??ZA1kB+zuV0{5IFv6}PFL(M^tEn7X3K?JQ<;17|~93L5Adhk(Xr1WIkb`zI6 zFpS+N_+l@p_Y7a(VI?s_NZFb8sQt?i2SM4hZatD}op)?&< z!tH-aL^#u^0RZno&g(;jA;J*eN)P?emQ-_#pdFO2BpUgu`9L;?*SA^xE{yHYMPP*4 zt+^ZgX8D~SUA^(Qv<6Viy&D3N1?9$*eDdaE`RVjDy?hE;T3!b*;*f%;C1xuSIrrKR z1G7&TU=0Um?yX{Ucl+SSGusEypC7|tvOfKl;tP^OST%qD_1g}Kj{q_XaQA6}6yKc^ zP)hWFFJf|0Cj__*Wml9sHA-yH+1%JG#py{&=4m9Jdi^o-kN@8IZ)dlXRR31NI^1>S z2>82KupaUT((3*ENH;YG&NyaCMxGqSTuBN|vsS$Rw(Xjvz{<|fA*8PGRd-d_Sbf9a zN@rRQEkr1n+L<-Ek&Z)M?KlOcN`5Z@b#D6*LRbNXtum;ZmwTi)P{lqyXTnC)P-k$6 zrrw@|bdS1eZmIXL7K% z)#GZE-AAU4eU@8V*^@U39K^%&G{JhGb%&CM@SGY8lIK+A7Q4CzOMq?eIM^=88n>0T zs|mezLMI_cZx{<~8M5C!y>t<_%lJ5K2P<3~24Uwx+)D;S!<`X}*i5=MpLkIkmrFzV z0(tem*H~CsVqz=uQDyOGo!g82ftz#>+nfc*A^n849uxZ-8PqJ{ep+YO(xJlJl3U^6 z^Q1*?dE4ILKFJ8nX&sS6E~wFhDDQMg&BVo(DG?Y}a35b%Op?{s+_6_Bb_G zzb7fto&*Ky8a9i+&A+f}(HQUIzA*IGt5UzlM_1tI<|*vZ6y?OMr#|`X8D{xe=a2Yf z@=eBP%@{hfi4!26zWcD5!-9f+UzXdG`nj9eiH@-@!*|Zj$R?c5e+U;qL{>6`c66UB zSS;yrHaRvs=aseKXFoXzEI!`C-Kwr@^T!h{JP3W zxJ+*NW#JdruG)7ZBST+g3+?78;v@uy{U_W_=y4WX9w$T#xP^~si+lVlL>+kv!Yl!t z>wAnYYFb0^N~-cJB^$ku5k`7R#}+cGy!3S~@1fj_{ehR<%&giYt*fyyaI8hBUz8qO z8#$9S(yzi%vTWuYj>Wr^^naAg%^{@}uAF#Oe{R!7!#y2WZ3QKbg@Ep}#$-VPwept!_smYS8Wo&6&M|`a zukuNdBBD|Xu-O%U$llR_y7#`Xj_lC zQcb41pU%}s%24x~3uwbM@)yP27nYNQGFkZnJ<|t=%6JpXV^ga=NEYQJb$R#_z+v!b0OF(!o7xiF*m8LU(K(FB2tObSfo*4 zal^Ebz!%Q@k!4e)ID0JK$U}>AhWVkJZ|QfoIO}}??Fq1s?3#Ug2Qo(O0>tRo&L7{G z4UA}}_4}>>sLDDmPLSHZYZur6kK#GEQD`0p_!e07E#6!*3!*CQD0j8)@xaNpmLiLh zk*Lav0C5Fg|NdjWxf-kJ)BwYZaf*%FzM4{TKgAVfF6D3&m4oBe*F?r)r{xZqvif8B z)7_iXF;UzjdDrC(z10|+@)NLSTST4^rz+-gyOOS90DE zcvjC7250AhD`~g^0AaEF0p;F3;%<#NI$W)yKPN_bv{oOT;vZksX%NzjKUn1vI5OE7 z*wG>=v=s3;%tKkMO|Hyaye)U$KH5X=in|4odo20&hxi5>fI#K9GOaBHlykrjGSywA zW2k|;OffN{!QnW|&8AXkDkl~DQ*(7aK(gy`*JQi>6GZvu%(?f<%t)O#s_R~Plxvp_ zlcrlQ5fgS{1~QYqznq!7+-?$kCBJz)@GAd!C@P?5=*xK@wFWEN7} zO*DeM_gKFdJ!BI6ldS{Z|E{0K?=3D504C-RfTp+$yq-a;e)NAIVthi=$<*0dk2FIGXhh^M(k(^U&=%;of?n>Ys!Y1nRO)&8e|36SIsg9<>I z2g86Oak;9FpdzjP9CMPRpc0jaXRrSP03G#I`Dp#=MzgbTa45xmL(H+nL64$+;osAB zfnpo^fYqL*MQoUS-W z_gj(lvd{%?a;gsUzOF?mo=Ed$YtOf(I{6sdv0da5V$xSu5zbnp}_Bn_Z*_j{pQ!7l9-@ zjMJ4?i7$06a7jjlcZ}avMQl2*5D|)j&gr zv57xD_wulAiRqNdv78v=GA`d>a%YjT%tMRhqDRwO?RcOPC$dOREUu&qKH;0UD&ktt z9xz9h#!*R9MY$>SgAD6o7G4h9rvMA$ge)`Of&SXpP%vN&Gq=j`B8UW-q;!?b=~V7h zW4Sb;GR&*5i|zdJPP$!Q)itf84TOFjhO!ae=Kc+4qZQ@ec0V%4mo%eYsh6~%-HjyE z2J+*v8N`av^lV&7jJ9u1By&=2>GyHF-{@j)J#&?lcw45B-#a=Y zFf|insoQ^Wz|en)n349ZVahj1VQ^o4V^?7ox$rI8X;p>t(8gwXq@Ng@5cEDZqATcbg-~o;j9M(<`2fsTN5?%e z@oJ>!wW>xvnfyiJy+Ix*hGwKm5+*!E()pF z6`0^H!i}&Upxf&_yxGs!^1d+WWAWoYe-8S@?VLPeI)hwr-*)yvq{$-x-kj2cd2y2n4 zQ(K;^RetzKcYkkpOoHCC`a3P+b1n@Z|L|1w?w1Wfm1@t?rr8l zlI8xe5e6LP5JTb<&FuU7#!cGJ=2mr4^YAJyC`zW;uI`W-L8KRMRN84yz8UdMQ#qie zeziA(duFn`z(Ki~X~@|k_;juaA*a*G4E&K+>fFLZt+WzeLJHd*uiHf zM^&yD8kRA6FQ|xYrc;j+R}}1*%hF|3pEHLGRr^?sUB6eobxSFL=p)sg4>z_un-{v% zQ{L&4im}PkW>{H}qVJiQIGIqwBJurYCC#%5E~6wSaINYub$eR)35m-L)oo0Fra_G( zR_T`7rO6|s)Rob(+Ob2txVDjD2Ml$}KZx!5q%$fmaGcDqw6LJOJ{SMGoNa{!7^2Gk zrV0uN+i{1eM%A6sh+#lPZa7%$f_MJI-69ItiYJ=@te)xi&&%b}CGGx=Oa2~T&DtrJ z{S8Zg-U(mZE4UTjN2XCcYa_aCPw3_vJGPTh3kJ1K8hT|n9}NX)IT>;@o4NGTLzmKj z{L18=h_fo!lh0{kSHfb0sY1R_+C;xje0bNpSWsvPZ_(%@%TBcSCeQm$=i7d*3~myt zE#F81#@VUbb=nXRYn>>2sc+jP%iSd~jspUhm9?%_o8;1TyqZ7G zHq53QYxb-+tSFoc$B$TG>7Ffm&*aQ=El!0p6Fy0`aF2!~jkJINN?LMgw7?SAXgbZ& zH`AiqJ-)70qXxq;&RO#&m@2Yk2-yu`AQh;BJgpva_ynP7`FfaP2=`3wb8Mi;Vb|i# zW7EEJRZ|L+%;F#;jWx&gds+VF5VFuhGV)6p)-SVr#OZv{4^2Jj2?VG12wFZyndvWI z_v@Ph!^ecKDFdOR?jkoF-9pYp_5AEg9?ds=DHrWA+M^uO`SDhSapt~mWm{i6=BLGG zQrTyj`1?Bmry)y=ePz2N{5VbZ#D4%3QWSk5BWP9C9YY$b;ljQn#|mG?XqKVV8d|4^ zou(0FrOeirnfDAk*FucNtyR^{_KP8%!-G~oe{JiX>Yyf}&{_2{hL)b)qw{m~a=hK$ zG?$v}d2;aXx<%u)Yelrtr8U8H!97!aydeHmLEv{z5Wf!LmA|{eY0|u|`Q?Cf^MY@R zP1m{eI7h^UoJLb_oWA}cS$)fAYFZ5O>hU6ef~cR$4AW;*Wfjj zY1!YaW2_eMR=}N8H?2v`%EpPkOi8Q@Ef(`G*=$5aO?Xq%~6^XNpq-$S0#u#%3Aph5yCU`cvlVGt{%ruJzU{jj1 z)NUy{LQ^Jk+^5@9w>~4W{j96;hf+Y_gVemWo{dXWKU0~{+hCsm=xbi19)FpS?{XQ> zM_hKUG*kZGSVqjPoXPeVK_&+qH)NKO$6RW6iL?OyjdnHEJkq{vG|phoFB z!A?a*?Q+fV{88sySu`14nMaqCB0&5gpzbjOlz`S-Seh>(+Qu^?5@&$#2H-`$*azS| zVc`7@wwpyq!^OEPvHj6Z7y~wc(@fUHs6EQa0I!U2pSwo*Y#z~O$QP@n=R<96G6Rw(bLnPZ=kH`A{g?Fos z$7^!0VEgm6o%Gc;N|Tb$rHwQ^>8nYr>sWFrwBC8|?*@ASS^ts+^9i1A<2)#Lz@9Ny}Y3uzC)`vth8&|47b z1hSE{Woz7E(H6m2y@ARtwr+5+d*A(jJW=aeGfv3XQ|o*M)AaI(tR!4^R=PVq=|fv+ z&3$)&a(~O*!~yRCw2fhWq&>s@>-eMO6<(@c9KC9bgY@?*M(7`VerLb<>z#|BPpCj( zN36nnG2T9gNkRbop!`>!?uSR9_;>Kaxa(QuQ)oH_`fy3l zA17uJ7g>EDVTV@!d-=Cl8Q9K0>XKcS@@aw-9vr#`?RW(#KH1WQk<-g|hKv=TxS_i= zq^?(*v%Uqqu9)C1i8=P7+}gRPcih_|W73~|fu=_|Q>#|8Ii>4jjgIh-8!Pb&-ZMP$ zq!<8Efx-sNmr!AGYJZ23nnY25|b{%l;KfUo)}^il(` zS73m8_c6?xUh2| z2lE0&yJ!=`2thfDy0$pFv5)DP)LAfHg3>!*Y#mj~c+C{_4%p#)Efc8ahhm5DM=4K= z^JTE1JsxXqAmR5@XpALee1Z?vC~tmNyieMGtpMNAGBYLKlNX>Kl+WJOpr(I)P8ET$ zK$utl&mKPG>-v~spEQ=` zTW!$IQQcrW*@ZhDb$^_3{+(?;!hwv??h1%$R_riYoNQRW$+>hEX(CJOrgCZDt>y8* zZemZ;K=8eudEa*HeNk6_dxkyw-HKNkV?cLYAq^LfL*QJ*;@=MXHja(AuePjs`C9%I zHz|E@tuRY9UHh}oVUB6yy=2S~22cskuDYS@G)tjPb>yn1M!LoU*89N;>@~2BzC(XP z??eYEa_p@417I|V0eF4Dh7Q2=k5>WaPd4#qJ0*{c6tL}r?KPQ^ADUX8dF+sX)<(Nk z$J1L0I9Y^4%ud7gnjh# zqBqxyyOQySd{Yc>(cImv69Z#Fn>#mbEX2*2NraHcF_=neEH~ zn=v8TKh^r_vLC;`_HWizTqz!r&vPhh1rPwi<^iD-S!yPkbvc8+%LRILb-#dq=P1UW z0gt5IcR00u-(a${p6&~3YY_AspT_;rC(r$}#8b1!`Yy}}_;}nU`O)0?Lu`xXSN*Js zF}Ft2jI@QNpS5=0&r9$lv#XEc5&mFHs-@QrI_e10g}dgdl+2vYNz?nvak$c*dsfl!j2Wapcg{8^yiM3i z63GAnBmdCb0o(}0>;w$yEEdWCn<1TT_4hAmi(nZ*l^Ae&dS!mHgEkRXOv7nZeZ_4i z>o-OVSy*{}Nm6T$Zex*0tqDJUkE|wDPfY`M9Y;p)W}3x?!e!@y>G$4zgn(qZ%5KS+ zI~?`zqdnI@4$)hD`aIqeI;pt)K%s9i2Os4}OA#A`CCd^tiY281kJ;Pbr@C+hkP-bJ zS@?h(!r)84a z!$;0;y(C?%SZUGa;T56@+}&lkXSv;>?bLX5Xv_)K-MMZqiCIEB;X%1eVx`6JdlOvK zD&-@*v_IWim=)jP8J(l-6|!Bj1B8Lf=5X;omn!|^D%syj^omQIr%zJ%>KIzf5f(%u>+dx|RkjpV7 zF7h5)6A|QkJwKhiELz|3RR^;%UMkwIh9kH;T1G;u8F0ZMqVGk)c5(q-4B)AQHzG~8 zJM3VG9RWJq-Io_3mY##)`FVyF{gC|noWfI`#DACefNY znD<(6a!RjLiaJP|T^A4<6T<0&t2yDBKiEsP%Obe6YEgx#h{bG@#)Ph0Ucf;cqbB$x zGFRy!c%*mHwVVsU;~)57Sjr;o5oD}~SdqZsKZ7_D80;d1I4OA^q_#=buhHxUa@-Ah zl$IoGOrdaV#+g(%p7-OY00q2~Vu`IADkqX(>mth}55;nT2QcecZeRE=z~u=(vCo6^6-K(P&~d#R23t zKK)P+An8G8TiEhYKUk<&sQg`5+>rs+50r!7)jcpAB+Ea_iI?FJT_u?0309QXKTiJt ze}FW~e=h(4`#5m9w%b~?S<~PZ7urFrfI}KC%euVskbs$G>qwzczJOgr%K;qX(YZpc z`MJy8rOjUfHR1nIxf~=}xu*;B`TR`fd4tRQ>5IMsJm;+N=^xKat@&Wgiscpq3tF2a zNQEJFZk7$G7t_vB`i2e*#?mb)bgT*zIH4#A<(7x9ZHK#ac~JGIv*?^X8D3c>Z6`r! z)P2`6tRht%6``1v1|^2LD?K9#GA0Fp$y@S8b!+8XDB0R>qmA8Lbc%l0f2u>z|1W-lx{ytuR~*hJ6g3 z7Td>rT&VLtbG-!|R4bj8-$Q~nnaa;_UPK@6>p^8*`9|YoOKOj(s`p_W^#~p?*C6D~ z;)F3{(7a>X5$THdEYR2RS4_kOEQ~L{m#nq1PQOWQp9&yVDH6+5a-X9^RFc=1OUl$Y?Cyhe*d14%uhhmA>-*GZf}gPhYl+5C27;K*6_iKG{MdUxvW;nx zI-X{6mVdCBx66PxSyWd^@*C_>-K?LI;ND8JCNnXHqeu?gi#&hx#oU5ekbIgag}Yxl zK4Ni1z9!LE?O>IiXks{HsyVz=F(A4BWezrZEUVO3GAlbQD|?88qyEm&$hkllF)^7a z-5(mpA_>UCN_XJu*4XHvs!>jl z%RrCdSK9kR@1>83?$&gB3)J!-jv8FlII@@T0mM0e1r`(Mga3n*j_`Kt$j<6rEy8a0 z*C#Vln~3S`s;TdzHZMm^-O=nd6YrXRZ}I>Yt8nIC+Pm3#e>pWpzotq5qKglF=k-Wi(6z>3*p&n5aa{sHuBm}P)yBt_!Ve9Qr#y{FZ3eMwDR z*0({@N`zW|cR{znSXQ8_g|oDOgrO^+^H^@eU4P4nkgt+c0~SoqS!eWJ-;J}y9R+rL zP45HzjXDc$6SHVo(QEdhboRqC2t&XO5ZTaapebv}N#)T{G>8qy=441>u^GwsVSq`X zRYWwkF;D9hoSml`LqE&69D-+`_QrSP0xOT1@dpYDeoU7eYd4>nwg0@jcYocInGDAg zMrTbW=C|dP2nt72lbbpfqp2!T-h|KG*Rg6cU=@-nEW`+%Wp2nD>E@S8#zZ)XUz>?E{PfH#6=%m;3^^AI9^2m;YJxW@6|Nyq^D9>XXmKy5&>rk`g%CkK~DAeWzJW)4@XyOZHZ> z4*t!&u~Ti<;?sIbi@rj=?M~e6cYc2gC?o+{JoDtoUL4%$JFC)IW!&ic!ScYC z(i+v(wG!pXYEq#}Hh$P-EKU5azaZ}P3ueBnb|0ptn6H2Tj3pzf2Y8p}^<^i~Msxb` z`JErt-U9M*O&GAsv0|_RZ{%;GfEXN#wJ^GYc<=!6;MXmH{LJHA+%Qw{!+>>jL24SX z7lGhsU>t=MD1%EE?KuHs5P072jNV9g?ZVN_vC$kf)uZ*{1Uqg8=jwXfB+rTX@gfW3 zi73eo&qSvTx5zt;i7fl1FyA#7{WoMzgu1r(mE5;}EJi_(%A#0uCk?O|+k5iA`FEo! z5D;ikclH@vWT{TiVXAvW6%Kn=FLIB!ZW`&zV3h8y7&7RG`t+JNOq;VEN{U?z2t;8& zyjDN*)op8&v^Yn;C}g=B*(y`VBfgFKk)T663y*7PT6?D9Jg=7HK;w4qE^5YzryW6T%9Pr*Qsf+I#XqGbq{ALwtRUGJ^$WdomK4`4 z=P}+hAkQA+r%B_pi zd!4{_!1l?4UxymOxWE{!!rC)ihX6?j+CZS(W9cm5fD>rs|17&Mu^EAJ!6c7pLc;wo z7nV)#-}>AE=wM(lHxO8rPcxrek!e4ZgW>(~xE|QVUoYh5;;ECQ3+5j+ZS_uxe-PCa=hqXm+P;mXfjE9vMCOLrN$pbb(Z00zFhfMEdV9rSh4Pl&GDm=caGs{rCcC>CNwvM(@*d z#jmD1FdnV8m8%4yj*YJC)m&Tpf)?#l%6|&RIPnr13HE2)#ED11ECeO-pLld03ptg+ zhpoVgeUK6I_-~OP!5he5w32`+2k1Hw&+!g`l2lbwpdz*_vAX@dQ&U8d!K`nK>isDL z<9WGb`BR98^3qKy?|PyQDzYb{qj+UY~Jkx|5P5R_=JCK22(Y#@jr=;!8%;eC`D5=h@Q_;kUBxcg!T*B$( z@nnqSsQekKZD>Z?4aV&ekg5yWCwIyrI1LeA_p?Hiu>QwcR%ffI>0aE%1Yt_As1Jvo zNbkbj3_Qw0Q;mt}#W`Xf(mY;Q)IET-)02;H!(i&h%UbKh%XUbT(NdO-1OZOj=+F5E z>v%7I1mi7Z?y>4wR`g-Yb(pFDwaV)rN?i9X3&Q{fM?eevPC>-> z99EJ2gUIz`QZ1-n6t0DLtC52^;FGelYs59mRhFOJ!`t-W z2X%BhlNJ*b#OY?a3F(UZ&nDe{L(5$xy9uvng=8ujClgcr<)|tJQ=eD0A1svzROC98 zTM{p@=Z7T?A<_-z?4HDGB}CYGpJs|0O^hv(6CV4ZogLrcf+XcUs8h6-hoc8Cw>|g| zInOX25Uj}x&xMr6q>&7WtMfs46%?F)b@h9%a9?xo1u2jSu(^O%{A>$;Kd(#=Ry4OV{C*{(%JBR;OgLvr0l@w(mezI{&EN89xn#%O6$+E+p@_NjM z3!8HZ`oaMpTT2InTcSix&1sSIrR_rd$}{Zt4L`}K`h9w8_ zAtIk|cK1q=r}c9A<3;{5kv=!nxLgEWjVeDG5Fxv6KTDBdCS*}YK)kJEn!l2j+?N1J z+{u)z#=u@L{gX2IPJ!7CJKLr_NBM$Dvk2oe2D&8qoB>X%jy=23m4HQTR!&kH{Ol)g zCe@?QGk z2f%hIQ32xVk3Wc{)!mNgg0aXht(x^Kg%A5Hd#hZI)5fDDiwGL?hV`U$-vuP4ZOufm z8L1kjEK9+vy4LsYA5ebR>{3EiIyKs@W??|52L>{PHb8_ej4$MTGt5*I*q&~8!DJ)< zFwo$`y!r=SC9t@0?&kX9;``aT!`t1V)gg4MGb0G$Q7=#|rQ0=_V5poNS(JkdNIM(X z?oKK~py(EB31SYo90pv))@(U6v_fc4=?F0yV@?teDW3MNUm`&SLtYq5g!$;a$Gp;HN<%Z6%O&P9;W2lyVbz1RkTJ((&TNB=63Hc2)^xce{_S>6hi5PIRj5LQ0i{@ z5ED@f2h1bSBr7kTzn3g+*a^`D52WSBnPDX{<`+D8{ovf=1alTw)OnX~uZ_(6_1&}T zeaQA#CRxuc;5EsaZ;=r_^l3xC9uvLxYL6AAx8CE0mZf$$dHr}{kFQ$aU`x$3-IRr; z!o>}#yN=D+Ak843DDh$;lW-g5{Uw0YQO9opB&{Eqv0RG>yIDzAU&RUSs-j$JJpX{j z$^NIAlk3jD-TyIS_{Ruf(E}Xd51hY~1Ib1{a8Nw{65w%3ynG3P3PQXwH+F-s3Vu@% zDjTI_=v~($-Db%ch$pGr@$|=>{zP&{zGDI=IPir(;ohEW;^cYVDyVOA?z;C2a+krQ zi6;g3Nl#xEGy&r^Fr^w?*#`wM1F*w;;DK6kB;(iZNZE)4i9#0=K{DLAI}6;v(a@21 zR5`sPHKl{$wmG!JaSR4PEb$gAV>cReK(}NlUJkbX4824@ZW^(ZK{=wuFOz({U6;(Q ze2IDqvl(J?E3%&2=oFJQa=G!OL(FyR{Q!)OYY+%V%4ELo=oK3PdKL&Q_!U^#lSMDW zsxJaXo$V5&G@EMN0E!*ZuXrVnfEP0uu)%)%JJBV0DH)<8sj=21x%# zRI~KywhShRPN`8f%0(BRe@u$T2n%z1r=v1Cq%lw|*sx#he4c>^y*Aff2^&(%@jZaZ5K!7TpIaSGP_jV?(2# z+wBUiu?ztIZ*7VDBpDt_$?)&?$Lx=w^>?@X@t;^4r@?Kg?oYQnTk?4LsbtKHGg@aL zn`Rzh>PyC?HlPm(>bRv^)-(aSZ;f^PA;XZr=V5^t8j)YOSb?CvuwXz|fo|rXrFHAW z&Yyt_#VQ$p{QWej+5s@$e|rE4yWF?%#R@c|i|gJ3rGc7UPzXgDn** zWa*~T`%kns{HY-y-S2d@*)k0((m7X5dvlR0WS;e37WE+Qo%1eqD`5YO4c^K*1J&O{ zgD;$If8~u#otr(MAzcRR5C^$Zuk zEP;5CscUYMk9zTC+(51iCnlFg^70cC+~7EP0;w}sSv+Kg5otPxO#O;g!esHSj`gPU zcbkaNWu#Hk7l9(mk_!ghmtfa|a`b1`y901`{lEIyVS68^AiHn1B`z>$FxxElfVZR{ zqgCQ}%sJQJxoopQUNT*#rl0Y|azWW*@-?OM?7ac+i0~cN!MCz#XTV&*#oF!UB4Wg^wix+i7jiJM=b{Y_m( z_$W0FEn6Woka~+!3bI4rU>vtrgWG&8MU5A&iH!Msfp!lKh|i0JD`PCtX5cL|5jc|{ zz;;}F#lp1tGvQ1m11vn)SO=c&;ktPB=q17HHT>dz-8Lp?TKbwQ+UQY=H2sE5iU6{x zV1S6L8R1y6vnpb&Yga0dSn(l;z`J%$$C`5h(y5tL#6a2s8kYC9_?wsvtleWHO8f;? zsWk(?unbh0^Yf!VR%+SBry3w*@;I2I{>fjT z0t@aDYc@$pFZeZ%h0vpNut6!R{OFYCEnNe_Zdv_$obToMrW~Tt<=nI;Ez8gCN{gOl zK%<;$w`hpdMf6~|pU0NJiHMwg@+&R}XPeV5T|1CZ>T?gAqAPV)Cnn1Qh@Tj3^~u(+O7kZFk~ z{JwHHpm$cGsU7Z7H(;sjA#2udnh`pn$vzw{95?TjWtmFOCg@RAX3JG)^nS7ohFh#I z(3C`<%WFSZ#eWKZlFq*tV~aU0*6;1sE0RJOL`HFcgAH`g>lJn@d8&BxHZMhx-feVw zYO634+TRO*@DDKwD%pJ91aA@!L7UGt^9ycd`*rU67rP-qMf&e%LqOO154)ida;USa zz>Z(2=TOHUl3hSp)uWpZ_Fb#B(*h|}rz08u{?Hr)l`WI2Q<9E3n-&R9BshfMi|#}@ zVo!x7(GJ?=LYb`?^D@%IC$4+BL9UjJi>gEUwH$_;uWvU&jBaRD_G?@NHG#mXMY-Pi zguf8vj8$Gf4xGwEFGL<>R6taREMF+(VSc8xQrSqqK--UT|J^_L^LQ zk>Fo^R^(iK~fzEL-5T!Z%>}B6ol3MUVP6W;x1gacO7_XZ`oNHmoT1;HF!()5nL9qgY?{Y z)u<`M8sJ!H69Xz4H^k}fRmn6m(eS99`kr_~^0fK;t%n%1t zb}@#?2*?OK?2XX>bAt8O*52Ox```EDCpkGWCnqO|ywCYQ-!XDmbX`nP=z+J#9vjFF zu?%;G%Nm*+9;{(_H-((SzilJgV|avJvZ>hKNl3r%a5f5M=LK_nE@%pKm8 z#D-@_f*kMC&$$s*>Ni~}U9ozmd_C_#+L6;_NNB6?7)fi&a+gbx z67M)NxRgWmO*Eyp?kqTifNUVRJNwnyzQA80Xpt94f@hF)^Bvs0pyP+RR{J#cR{c4+ z5!Ce)LlOWP0Ep=Y2^I$vibWFd!4=*Dp)Rkn?6B$9ocW%baa`RC-0MJ+Tb>6k8&K0~ zzm6Hz@!^YOv+jemBfZT9?~z=})f$O&!xQ+RKw&_phl}Y>-kbWg-9bt?Pe| z720n_UIF7TSRv3(3T$eyd$u1p z|LM&TK|hQ&XlXsLjS$|LAovwpA0=m~gw_0UNUujR&nbNQyqnJM)2Uw@qe4sQJWtkq zr@S&8#>hG*4hpB8Dx%p9qi3^sy~=E8DfLLf1UOdDDo_ZhX^%oLiGlm3X&s?n{9d}` zs0+%ES_BTZ15$WzbswUTm~0s9e*Rel?x3^t^KEE_uU3Jp&I4=Ue?Sv4b{%{IEo;CU zf5#SKK4sJD*5Ucv1Z&3dF*8S8!m9@ZoET@zOk?wkOr%Mchqt4(jOluVXqm?{F%_@$ zQF=XFsvVdLnN-(Aw9c-f#2B}s)QztSk_)pEF1!x?RmXTjn>ixg^EJ&%H5%7aY>($@+ zih{PCw>(@L%3tR2G3v-#Bo!4ZF}H=k-6IR!28w9hA@PT;Gv@3I42p^S7FR0bJ(~~p zw1%@Xcu`I?HDf9_w_u>pA{*gwT{^(4#akgw64{a}vO|LdklDXVpn?P05-5&i8oSV7 z9A|Vf( z>_(;Ls}}#p(Y;94n0vt1E8Rqh20&9}i~IlFbAB1T_dDT#+jACDoY>Mc7K^oI0Lh?^ zYKTVrq<{F8adBi66*?Rp*1gcsF*@Rl%*S`@<0g-^<$~xIA;RliAw#T7>q89kJA5P4x~%+hby>q-%PeUm4YJa?w{5E8bGJm zmFSwhW+S4n0%7{RM|V=-@}pWmfr_G`^P?T@#MpjQ6=V{mW^Y@=sQXt&?uPdp2 z>f!UG>&gDD9CF`YN&x9HM+X0^XB_ss{gVUb48Iro4u0&@UVlB2z7S-xW zhFuNIW4mZ0UUJLw`}OO@6W!0p z&ZIA&gFJ-XG{!PqxB8VRl3{FCc3#;rM+6N|V33TKz#@!po_FUvAvf)-rpq>dm@RUA^BL$YF<#Dmx>Istxz8J9sFY^H0u77pcgp zQ6Im1{Kx2u4MyJ~hY@7fH^m+xb%3f*JK0k)+SSRmKrr+8BQSZGtW`1TV;box$|wb2 zF^d~|x1iQm;F?Xx_11eh(;p8~WmF#yhzBMoh#0F1)C`f$Y09>jrkCTL!^oRLP(u1x z`s<|W)Rg+_WP}c0Wm}cs)ndSM5N}hqOKnF4Q3%c>AqEEkDlct+PQc%;`>%o1F4_M{ zAOgQZqw*N^3XM59kR*`Ln0KZA-@u^_=fXiF|$s%6!s4UQeVL=%a(pX0RyFx(cRT4_iX47b{jmm>(OM4r=n%GxBSu| z6JnA!Mr+}}B$2Q$inm8f9fG5ut@&?iBk0QZ=O)`R4L6-b?W)~0#0ba?j3Wvw*3~AV zQn^DZkBWt%?KIFgT-S4ChIh1bGrQaZ8?=9<->v-)4j_!p!t6WvNFf{#J}$1_K}QBr zwEz&6CJat%t1JJPx1YM4pKX*=`1FP~dgYpRibI--*c%u6|RrnRCb7!N_&Ni{s@~fx}$+?Y#q{y{4}8Fv^tQ=1BR;E%&^*P zCVxxQ9&-hUcM~mzmhL2#d$WzZUC@eTW7JIrv6>UxPE_C+3Ym1L!sfW1?=R_}H4wMp zHrLZlW8|UZquR22jFhi=U(h#e3emFQ(L!w-iP^0_VXH#Tto6(ErJ(xVMw`g0_0P|b z*&7h9PMI6L1axF|F92ZhN0vUhFRl6Rl*9vo{g9Qy63FdOd;Q_@-wM+~v!UpEsA36i zq`E*=`vFd9yPezHyr^%kb$LL~iLZlD-{4_~}|p`z+cp0}HN$9o=NmgXBe# z$tt-dOIGt0OLYUS60@DIQieDN$(EElr4tp!tM9IvVXUqb8--OkIIG_> zGfK-M7&UQ2o2Nk2NDsx8)F*}Z>!q6%`R*)RaxT1}Whzb;6+JyV+#u3R?OSP%SAf2o zcAEDVp2*SJoFs}#?98c7 zCq-zw*V#YDE1NlSCxq-&a9GOoderZuQzj~B=NC9XFje_(ri!vqF(M>~v}k{M@|c5j zHmQtjGg^<UHE~Yfku59nZ3jM}`GRLBZ zL3eN3!t57pJ);2vX*g}7z=s(sRZb(${b#iRSJBdhQWdJ(-Fv^4@V~qNI;WK3b4Qao zLjH;XUaLBMMXnm;sPnlCsW~k*eFrOEXJkLj>Wf6S~#W zmd-5P)BE11r-yE52luN`9*c~jlhs@oQg9PThP!;p-(|Rv4f*oG2`M8AVNjoAGpMKA zxkRCsS*1|B0EHU7xAyFZi<3JCc;S$`AS^G~F9ZY<)@9u;-(Y$G z&d2vT;oyhmBaZJDJTm4xE;9vw9zXY?z0axMTTbWHnCdsTP-U+7S|TV}=}eOQj6?Wk z+)n+%6Z^UM?>GLQxwq8+*y9u1PM$fTx%J;`ClH3GZI(-mKo$=xmAu z==S9tqF+zOl4H%@GE%gR8(US2A1z+H(k?w`{;fqBpL<@UCYrm!J`s&ld)AO6wb8HM z1QRDg=PK;Q-m@K{;=|C|YWz991g;;ua4*3rh|TLm^rjgbG$g8^jm2qn!ekAn$(nVm z`C_5|#%BTU;Iv6t`){QVYy81+R21DVP3ibhFa0Rvd7c2_>brAA6hjrA_}mtHigAgq zsYI@8$UTE7BjvKYBoODB%MZsLJSeXc7XPd>Ppeh^uuFDi7GF(zoZUwJH|`Z~6-IgW z{O@YzVcO+I^MVZfB<~MUCPLY9Xx}C=#50mB$urt@E+Mci&m`Z))_c*F)Nhy){ivY& zTze|sz42kMXEQdhsD(;OG9ai(k|PHO6KeTwf6eO zrPE92^H3S7j1k{Wd>)yg`i5WS&y)|~Dfva=11F+|{+y}C!GVXUx3+V$(>ia?hO0fB zUQ{CQ_KwdDkbIbw^TJ>n6LIQI_eFGwUr0`+$St=Ss%lpYg22(vQsgs&32)-kv*IvB zcR&wghl4P-NAb$G2c>UmYy5Ku&~V2xzR^`lN8!L$2uG?4uP>cqHMJ8(h@Rk+SkaoC zu&?^tbGjOP;qa}t;t-_-z$x%y|Bk-Ksgp^;wwji8Q%j@eWV^NyYUUm_hB*_eCx56c zde@t4K#$!bYRv|b9F&BiB`St&5yqyp2kiTg@Yly>kcG3CWCK60*mUSm1(on>&ktIi z*8yAn-;ckqwbqu_kr}BiI?9E#Ue~r%OtxQ%$oc?ldR`IlhnODYStU%y26t8yMNzHs z2zTke<}2%9@BSkws>0nvJa%wk5;)0dP%ZaYdeug~#hy!{nBu)q%a0wR!I>z*(k!e2 z$Ut|$B~c6p!#b0XiA9|6+_YprJf*Tjvh=DO_P$Hlz`GemFP<=b+=}LSkwE0Q(x?$- zm$C^!w>CL#!q(OYMb9QmAGzVd6ZpR^vNlB+6`p-#y)0dtwS579pwS^S{I*jw4~6S& zzZ)X}dKv|JJjVqS;W@_XLB{>&`uasLhD?P@#IquUPKWFt-d3FB5s-63_4Tz}Jk+&k zssL3#QP($PWJ@q2;=K^kv{e_Qpc5-RQ{!G$5ktx%Wh}_9cwz0NoQ!T_qER<`m%Pa| z-&VH;+^IoFkye;NKS51kg);FQ2j7YiEz*L~c_CM@H4{_UmfqEw7{{uzGIyJH=^yZP z-oXegz`0#X!cXa`-XfBiY4FEr|y zeP8aGC!c(|K#^AaRBa6P%16c0+L}3E8m^z`EkezWnp?uLS_`x?i~*)1S%=^T!^8ng z`wobU++5-^GKviazYY?`0|P^a`R<*A8Vmu0{vw>%4w&vAgcBRqC8sdeRa<-stqKWv z_3-J6l6T?3EBcn6UB^2*#}k^RTMX(A*LOePO*Xc@9LAHJMTlh5Ai6wt+-U|Nu3d8^ zfViv~^>(+me+Y)?j>zSP#%;B@{J9j1D4<(ky@*_u-Z)iZ`gv;EP&O5iSd z&ls_Xf+~D9w0-R+|Gn1%@7W*>CA^Gk^E#t7CqBk@e9>Dc3a!sevjBWo6SNWFo#?6w z6T7v@?zan;!vvGASg?E&vJ=b-Gmr|u&p<+5U)STI5%h-`gWfXv_5z$vfo?tVQy^twg&*65{ z&qxgWUxc=`l^*4FNlG4`V)3SE3q^j2+qMs~i4!3Z92 zNxyNC{EgX+?@&ooZtHwisAr>ZJz)6L`NXFw>Ls{N}Z|7WLg1r z@Mq1R?-;Q?oN96a%sTPaRt;bjBL13ZfN&}SA`g%++lcMkCnjuoU>6W2*J$43jw?E} zt@HsGjceWF@FdT`Sa2E$GasxyQ+e(sxB_lMu$Zs!#B36~VLW|T)_;>2kf5Cszn9#+ z_sO9(#n*!8j@#HmXU9tSj==Dg0I!=)qS+B48@xxqv4dBK8ljzdh??a-?cJ&F*n!$f zMMTbtLM4n;z0ktoR7rTrH3wlAeJJl)KKb&*dqK-TM03{5jDv z)WFhZpOlJr(c(T82a)$heHqS{&kJJbu`ia0m%NYY*Go^OQi5bu#VOnq*DOV-+|AuR z=kym<&bwDWkHF@PL90f6i{ea?&2yW*^;BRR@-Xwe@UO#efs6i7uUu+lvTD@<0* z@y-3D3)K#knw+b)hi0E$D6mNzl$PN^u30ySoVv}|(dke}&XBUKID{?)K%w+87d4ZcbuT8RnZyl7Fpt{Pyv$zLY%+h zYmmzhaUjSI#`epopYv*qMmn>U70U|1f_aAmqP8fgiXq}eV8y|i^BAjnnPXQPfOQ;V z5`ap6vmqG1Ykv-olmkHL*Wf_FO1SoaiFDXDL1BlK4xDuYx>qaa%!AVd7bTW4s1{n^ zmBXel3{@I!M{ww_r|xRR#;8o05c7%D=Dgm)fUj*ky92xfIx7`KU(bc7T>i(#oh{S1 z#uks?A+nA1B;ZD4NE8jG;d5h#&|o`DJECjcqgYbF^W@3?{|=n;Tu@NC=V8-hx*UF5 zywY4D1Bg8)1MyK6($ofT{yc-N!$#1{n!N++EPi1n<s=mmgElr1F|+S4Q|-sejE0t979AT!R5f<{@rjK~g194zcVcb5qit%9eH@R!3Gz7Bvea^otgIwz z+V(KB@oGXoR=>t=vNC9H!NrHJG9E1~5!>d0@eof6aXuK7Y*ULCVEJLNm1 zY#Vi_fe%8ljZG7{LuRoo4bLAg3+@*x5OR%8BnZ;wk~UZ-t?1sX(v}%~HLV}{(od*G zB6(SH#?IELGU0J-@KP>apPO3`XAn1=w>weXZzc3<_;*Xz)3HKaOxN7)n$GB2lf*RI zaKDFk5qZ@y{68(XD(lK~2_e_GgcD~Hf)57wq(oHHhCEm9Z6}g z7W!RZQu6IC{@6J`EAd8RfE3%KZ^R6jvaz1FNR|xC{<+^Zis_7Y$aGQjiDU*q${NL& zl}~k=@g1ojO4Q299afuCdr~x~CJoy#dCHpy z*m~8ym*9I`2j(o$&IefL#8&_>v6U0HUTOc(IFg4 zx!mB(Qm_l9cR{ctmaaM`;Z?i-^15w+e}R<@ zc+9VrDCY*xKi(5azZMCH0}b$(?EkV4#3q6)K6lJqqLp;8pB$97;L&Z(sT}wKzBIbpD zJl5j;!-=|*jG|bDr`ZMtQs|Dv*8_o*I_rO7gVlS4R9^UH(82qoj#3aX+gO54pS?F6 z7V*eqF?HI0sVhk&M+nh04zg5^q zPfuL{$EeF|A!cr;s-d{vSnli;>&y??jg{VQvJxWS?q*I@Y#^Yq0YQySJ1LxfOO~>b z{d@Bt6mOfvCk4x*g(?IYS4RvYul~z0+vvo1CwW)luH@^F*RA=B%Lm|M@1TZ(AN%07 z-@QhZnoz`C58eb_BRT$`&v1Ojac28&G3D9eu=XstVmIj>w7O*B=Yf^N?qb}}P_e^# z^kCj<*6Bf2$8T*BeNuG&)mPy0Axod^x%HYAaVwLo-TS`t(irZUO#!CPMd{_2SXLm9 zMEXDtcld2Dg70kB&#S*&88nb;Dd)AI%ztuLrby7F|EG)Nsreb^1L0v$M;$RuhoGzX*S;fg zvcFip{n0ENrfX0?aI6nW3K=^)gAy7Oo5?hEHYE^1%I2PHqH_Ld8y`WNQ8Us`WXdqI z+J^W8)gX=^*1i8E+2q>7 z@?9)+4d2>JJbKkUW4BAWK8l;48Mz_UvNX;*4w`~j>$+Lx7l8Qw^6syoTwt^4p#b@U z;m7akE?~b0UwI@#AleY_5UHq!uIXc9ji)EWtE@#fxM4EzE?!Vb-1A69YCegfN{e{e z3%g1J_QbB{i+}Dght@($1{es?_G#F!KHz+az(~k2`tgrXL-hkE7cw*ulez!>_{2^B zeA9p`;77>Cw2^L4RAshgB16T(Y^Fz1It25=3h#GVsI@?%bXQBt?h5cNyNbMYn-}!# zkg;Jy8vB0rhFvrvi%4O_v3`5&(z8MSq28L9id!{L0&e!YC+Y{Qn=go8FdxCTredmp zWPiH85>{G>diU;m-{f+v$M$=aS0`TtBi^BiE`#fCM*@V#h2~@y0NCBlqHeI0~6xpY4t9<$-04g;_wkjaw9yO+WpR|2rWA9skIe79R3oPE;a|Mj`&s$# z$>s+@uapORB}@p8MU`tWG9CoU9Y#imwl#-G<|gKXg^QL98g)}UHkz5eeT+6A;Q6{f zD5j!d`mB6^GEGL=fZ&czlI$4&@XMu4Efx1h-7fQM!HwMYXzX}pu+6+pTNd65_2Jm~ zT+s#7=NH?kqE}PN0Xz-y+^P`xXw$^q{Hse{-?DF%aylKnnP03M_baXI%ZLbuS_xJA zf!Y_y^fh|uUBEvT#qp;#B!zm|%FIDwjMn3w9d5>SMZTD19_qU$z_?f86@g4Yv3_;t7KInAn7UGpu;0 zu!64{v4OL+#f9xU`q-wv-l^DlMkZE8Uj0VdQyextYe16ll&%a!|K#S+|(#3V} z!uoELSEUdI7^XAO+HS43W7Ke^ZXq$^x-E3jX;i_&nVIKaJqA1(3Yu6ju0Cuv*?8xz z56_F`YO>MJ;nDYY_I6U1#uGC~z_muO-fW9_riHdPc<_;coFCK3 zrjTiD#q-KP)*>K%`!`BFF?o=oX+T5l44<|JQhb084LH$!T1b$GKhkGOt3FYMqbX#X zI=l!mw_hGfC)p=l2y@c{U++BXXe+6{hGjaDMiA|~l8$&I^$#asCfO4rq@1efyeB#c zhs|d&BST3t!OMHzP8Cf?la;53q8%~uFTVsb0T*egL#%z7zT+qh{pdsC8;TOuIhD$` zVs@r|v|=8+1Xj#r=z+PRVYjgCHI!QUW;x{wo?*Bk)#q-wCMzF3T0uIP8uyxsbhyLJ z@IpW4Ifa-E09c#MD7KCh4>y8NOTR>HY^9Y3I7kS`&^9MO{!*a=fYaYFr2Z_=gCpn| zT>N}2WW=drQDk7uFtf$V@KI-Ndq=1epZY!<*UWjEdQ|JN<*1gbEWhySMMBgyyzSwh zU6WE=FN#chhmv%2ix0Q{Jw+T$K{Pn{6*5MtzhKj&q(i=my1>Q#dblKm*QaQ(OLtSh zO(IRj@>E#ent!ZEezy(-luQ^}o?H_Bk}k}2Frmnz49zNDF`JE=n142r@!rnj?5SYd zo;R}wbT`@=1b+97Xo3&u@g+p4$8Qn*Y%wXm5OBY}1V1 zK77Y1C?hpWy0s?GC0YRSkw|}o$q3*hC9!bs%G{x~ZLJ01bS{#TFjJdp+;jLAaK5%^ zAM%IIffv*2=i>MbTUz%3c@i1yiX`@pT%u8(;8*S*L$Lz`0f)4=WTI`vwPY-e^t_n1 zSH;1;q8~90b`AI@kB=89FyEsgV34lB?`-4!LJva7q`_5U6kH|1)K3QIAyFx(8;^NC zN>iLM%&^+yXBjh<^FmwMJXZ3ZK`&*P)N=jw>YM*hNKc#m)wlu`Hk6i<7(CMpMzUrj zsZ8`hG)C0Uuf)z+&c{sQT`MDkViIxXg*rXQicD^8%jx!xmBTpnD-t`EiPvZW*`YLP z(2OTWS4(!e(_=$q9Y}75`yGdTtDN(k9rMC$_!3!<9jt@JhXebwuax8s5l8B1SypFi z%u*%wWsUg6Lj|4&Cl}ji#Wu%*OT|f>uV>?u(<giH*hb|8~5%H+3;Y)UYN`|)&+^}h2)7_XAmyT0Z^Aiylh-LNtomi6r7$YEv?%9 z9XmyZV0gnb!Y;$EJ?kCu_&D7!a$ENFK`$@+L@u+tb+fbGkfu^o*vOS|-`YNctZWa> z6bFxpHDl_Xf|L~D>_?SB+1qUW(@TW&aklBf_CX|4>S=4Gy4n{qH?+8A6i*EW1lend_U*vri}J>;OT_Ja1P|9A z!w!!1>8lRrWN*3#wE|Cb=eTO(vTx@36jQ^Z_a7W9mi8D$CHqNC)9MXHrwrpnqb55y zUD@t=!!sv9S~|pe5Syi=RcsfEp&O6iUiujIMN+oh=|3LZtweHM*+n%5;kmcFS7%yU za)_~!6GK`HaRV~q{zX&Mo}2sKIOLy%K4uG`DO#YZlqtcnbVkroO_3yzHBunA{ zh^5?U2Ii28)Asf-o7Tqk2)${#Duus&!CNiUWsiKZ`6-3nW++RB(VK?ubKkef0va zKTOW6CkfMW3CkT*u)VTVx2xSSfPSYA4Smzp`|^MovJyEa)_1g-7F{&$XlN5YOp{T? zWxQFRGW2wG8$q;C96(aU&jB zTW_tJU8Oz9;N-~QT(e3i($xKnSQ0X6@UH%7f7eNk6c_1QGrNucMcSptEzc$IJ! zbl6w_z!ti3`2iy20@8G0c1J;&Eo+J9fw@Kx9>vYayw!HEjR@pUZK(*mKJ&&} zN)(n*J!8MjXLHZ%;Q;G=h+DoEz3;Y&>Np8E#(zPA@wx9CKH}4fvU9<$0i1| z>;}bVoT{$4Ewm2j&q?6F&0J{?#j(78?Z#aIKmyTw{n0;F0=^-(;VF+ac$}uhsBRh> zqsie_!!L&loF`S91bfeDsV52Ry?;gxeLvMLEG(>~Bg*qk*#A?r>?LdfSnJ4kkgxl# zuox%O*8?|LXoVmHi0cnHDrykRh5@F)<7Daka%l1{iaD6r)lI}bYD{m6t+Z^Qfu(?s z-b6;tdy-2uj-m3T*ShYj4G0wSxj`0Uc(6K>{XZ_i-S3gSvU@+S1h@{_qd$+m{<3WD z)1TM>e?R^*tiri2I^#8&CHY4Eu&PKGxbtmrlQN~KHeAv58Ew3q)Og4Vol|WcQ9hM$ zcDJ>@(Cf0df5@*Z+ZA-R_Ige_IMSDJRA;$0&?pan8`gWS;|5(AQz8^j7+`(Cyq|_Fh`|z^!GF>8e+-fRr0M6lXUwtQY(l$n z?s=Pq{2*Owr&(bxRVFo4XIO{X#CUD%y(iAyAZYekJ2t?huB052YpKH#QmN}JuI5TP zF5H(nWQdzpb1~MjvXE(!F11W#6&7hyl^;zV%C`phdnco;*d?84)by6G9SK!jLh|Lq zPRrcJI(mlsGHpDsddAMjqw8g|gv@JfFW0paS$stGrd}^61?&H$iUGOSR`|C5;$j+M zQEZ3$DZq7(%U&ILIK*`3Kwn=D=2`aU@I-I9-QFk@20`jR4GqJ+4ldFG)u77MKM#D> zMS^QKce29m{NFen{jh8k+ec}Maf=^*9q4y9Y0p^Es2~jeK~GuICg-jV(WS8enniiDK9F^LT}V5^if>4`O>pW z^|2$VOf~A&*NnMuGpi)L=}$A_h)NaGHE}jiW8Ul=8#za;F9dh9`6J#+SS7y<+Azsw zR_Ctl@l&26Wlc{;ruBzZ$hZBXbLILCxqj#zDxYA*dX9=GjO}y-8k$a)&+`EK2dPr^ zq^Pigl}C7ozTVX8!B~%jc>^#1f65tlG?WlYaN`WUSG1{fJLsLi==Pox`Fknx^q0HrkpApp@}Yz{v^{`)FESEGy5u6=t`i4u9XCYFRWGJK4B1j_m4$mNTF? zxi*XEIEkeis}i@o-0~gsTMaOw`Q+1C{fFcv#HLdt+`8<$*N`lv?md6&iEn?tFB5e6 zWD6Oz5&v*bL*cSjn4n*N&y9W+$@nPWR*H&Rgh=-&Psh{cJno6MDQZE6xtEvK?sp3D zZ99g;3ePu_92-4^-};czJ`UGZag-z2!@EOJnhVNS3SFwFOK#i7za0v5snr{fuv6!H z8`HAG_3^pts-m4&tdisJJLyQIljMRtl?UP^;_NibM(;Z{;RCaRDq};fy&lz7)ckW< z1BtcJm-{zmO%VJ5f=Rm3UH?No+{XHH+BslH*RuaIgCl;oEi04HYE;-PTpGWf-9fQD`};zFWgH8Xr~dZgbs*hcAfM zHoHIx|B)FDAlAnqr0u_cFe{oPrC!N1-Q<=nVUtaeUAcA&Q#RtK1OXpH4L#DfiQvSV zoj#Ua|m&17p8nY6ZBZyg1eF+PU#&;s$(&;{B}DOhK1Vrsb-%mxU`g| zsgIgARWo~T5HzJUX4aWXpw?K8WI!khIYBP_6jD~eKK!mfgZ3MkG{H;*d?F4(xy9)j zk<=cUWcflTT27A=KbLa7K&yMAyP`t^M8tP(F#$K6v)m81A{g3PWEKOyJ1nkB^0yfS z7zhv8oh-O#OY+xeRTp(;lZAFfu&_-ATL(L`cfWdU<~u~5;umK!bs-2YSUSPd`&KK2 z6aBXZ$|2XUG~s=a!H#xXUHs#%2Jgi`KK!38f0@p+wz9gYJ%!9Oj4o9T9Z21M6$JT5 z@k@}2)g3t4*B@Idpe){zAlLy7wP2f@Ivd=HE?0z)hO&=8Fkk-J@qHuONKYU2tEP3N zqPCQk4CpFA9H^YD*Z{OEkD;C##TvBYu>yl*AQ5}bW|U@p>(9Y49Z!^x+|66HsnC3K zS~u6466SR7y;TbjH{>B)hZG zhboUe(<|@UQe{12S)l)VaK4GAc7$L&+OU}d`3NppY1h4hz~woBNXh_7fpXp$Spa9& zjfh<5Z!4IeII1}=7_S41oQ+5?Y2wB1k&dpUvF6Lvo$9vf)F=fnnxLOcKi*(>EK7_* za9ae4xzy&-Ir4d%uIze~4vMd{)XSwt@h7If#9Ntq%~9?dBX;SqcYo(N^sg}czc^&3^ey#ujkRF) zi}R|gnnNs5$0f2=+@o?^sHx^99z6B4b61fVPP&w7gmoW!>FjKZS+v6_b-eLTqlJs6 zUhP9$nkgn&oGz7a-D6f>l^5ZlrfWQyZ9ZMMaOq)@Io+5hg|)7izZ@)1+rl=}LNw!* zAT8q*{$nf;Qt+~cU7&Ke3smbr*ijLNHQR;VDMJ*!WooN-{+fv>RV@Pba?<P`hV zp>`^J%hZhdq;$&AK{eN45>_yzI)B66%PEqa;Dmd;^I=h2J6+Ln=&aGcx zNFuv_%cwRe-DOC8PI8H(vjz4^!I=Ww`M!qH3fY^v9?t7tnKdD`XQPHYfRHFEW~Hg8p6D`tOzEZ4R*;H)F_s+xPk0gYMJN8`7n&TKnR)4AeScE7&9rOzFU^FA%hR=Vpv zZ*_GKs?74N%EVMtw-Bv6yKgsweSqPeQHJ*GueNLL-KPc9pCkM}oCWJZ!7WUJvr`!* z$}&>6@_yQ~M1ObL{fcz5IciJ3hum%q%6vho-==pv+FRlSZ8hv{x*m-_o@f~^ES4H4 zq#j2iTgnjA6N{poXTzQo3N|&X+AG-6UzoemRhRh_y`{bLvg~ZDo_8&LS9>m4emF5H zKOpz2N@mr5F!uZ?vO0@Qf1J-WzLtO{$0sxJO~U>F9f*;{*${#}{8T?d^7Q~G14%P1 zfEWB$?jMT9v*OaSRNm5gpkz8--t{O938gPqw^Tb@Fq~@&wnu2X-sJr^4DX4M`p!K0 zj5v#k%eAx3zG2wu`y$`5Qd63$-_)5g5^%cCKfickFftr*s$H1{?*{L)2JuN$KsY|1 zij1!vNa93?#9M(C65xfH9UDiq^{R~%Py!2-192)dF3^j)53ZEG$Sl@= zrytonu`UY!Hehh_BIe`251`n6Tx912PB@!Bp0l}!oy;ZjD@eS1-xMFRp5PSDlon7s zBA#FoCtk|V0D{RUV=stS*mPaVF#9aosGw4p(?~FpyKXZn7e_{80SPsC(|y5~y1TYF z8JAOLzt+jmW02g7Ft;q&kuM6Da%&i!sT=8BN~J9JZfr=~z`p-i_&S2LvFnjl5Alr% zECQn7FNLqiew-O6CZ9U8IS%TNNbb}uys+xi1_lqbsuZ0&i1loaLrKWovF!F2uHJMh z^y7sEO)n*dX%sKOoDaL47$g?fcsRNVXYr!_=peE1%`!{!MT;8mLfn=5(KpX8<3Wc# zI{PGvqHNdF>+NCjiyVr5J;SV3BZMCt+m zb|}WT_5vflLw;CEx!fvcU@|Q{W4=#6FpcRZ{%JFYY^&du4+j8@^w4Ykx{`Y|#EIfU0OnS+Y* zC|qJQSY1ABC44=z4$vyZg86hPm^4Csd+?gQ{?PG3)If;;4&s6s{-WD)vg6gWi*^Q) zcce$gGYxCV#`x!#`_+DC^}6Q9l6kMR{rcABxwzq$8k)z11EMOoINu*96f2e@=~9=> z5Ex0QYb(|+amZrU6xGevQQp?er&SqidOe)jWM33Z=H5lKz%pZFXJ4GTvPX>&;!x3+ zX^%GPq1?f#TeKF^O;c~;R0Xjz0N0r>C=0oEsVXN5-6z&7_n1%8l>1xiZ?qTJ|C|P) z=375^=UL51L8MOp!cfkDP#-+swKO2Hz4FY-lV>y&PalQu;fB2;a&CwAKY1X6NXtw9 zR$6`$v6ji>ujYd}7l7mK=E?OL(N1VyvjQHpyP;TMnC*8&hlG7$=nCF?^yNSw54U#7 z_FU&n=*KAIxhqY_4+b)Y2!n^tg&1o|5$tlYu@t$6%!FS%nhNMe{pTygtUIe-nES+u zB&FUvXgv+e@*%sjr;%|K-Yax9uAC;V9cc)kA^31PN=v#%SW#28y{@iDDj7r!+}tES zZ3F&<$5&M3E?(+AUy-9z^#WgfIaxIiExolS#NAX8#UoQ!Sv;65O|ljtya7=huMg)9 zw6W!c_5rLxal`Rz!iw(tahRYf`TO%b@Vz!WQfqJGuVRk4w1-hVY^p;SrR{c3n2j$T zu_w}lat7jx^oKnj>m)k05%(6olzEHEQ~y3_S}!N1eD|gqi-<#dcx!>q^)795D(VyY z{Whb!rb?xHERtD5%0V%hBQ05PN9lT0)yQ3VGhNe6M%a)R4(Ix{jEuU0P_sA%lM|F}uWPnJrpX1@JE4~mS+w{5A(k+GB7(u>wE0be7} z@~Yk#Z_GUuE{Nz>Ue>eQn|`byx!4V@*Tam+kMT=u@i5!d+!9h`GoC6OhAGI()p98< z7Oj?A8(T}W?rl;L!gUob%Cz8}jYw&5F&2B&m0cW(T}KY^YM*N%B52Ogw>|-b#zX|j=-JnhRv=yMl-He{ zBJJtn=-?i&j*e00aa@urYgV;$BP+3a#w@JWFT8xtr5leKOp?7e^S-Bh=Xlubw#=6I zN{1K84td&HNgi#e0ezKbB+mQ91xQVS#u2B{j{vzq!43K@c7Np~Mfh~!17U!OB!V@d z?Z&Yge(w)`iUeev2Z34ox-)_qxbnFW!REkbR+z1d{a{4H$fZ%IhCK(G8qc!CDuL$N z-I>9+yfb}4W*9~1X%J|;=d8V1EhN{ekR;H}aBEMFzX$CKZrR3*dDvYB+oqp=3>o_w zKsjJ{Aa7l@A7&WH=Yau+++Cg7=SHg}ycW#woyx{Nwp+hm-bwUHfsSiTcw+Ro4aZnb z1|v$liV)O?j}s}Q08fJP$8eVeU{{5#Lx|2W5O|0epFvl9ggt&x@rQn5!oH>=%juHG zW_Zo^m>yN}$)iOkRdT^c!6D7yB?rfYP4J?%XSSvJBfH2RX|F#n>{!F8@o^Esq>S0i zU-=tx2g=JNkZRfM>@8@$W ziSFo|ijGYbsmt#@G*@4{4SivC;rkzu`Th5S@IqDxTrP8lM9m?ZcqAm;Wb3$jR&HWF zUnAa2M@n+jBP3-<{03MlgOVkdjV$3AwL-0Cvu~@i9n_p!uN5`gmWZx5RKnm119UFk zFh7?ul&cbiX7)U4$$}7-%v_J$?41sPoCuTb&O3xzdqX7PtCFBfX|{4*z zGG-2j$1Rrp+S>bgv=aWiJo*~zNyEud^i zk@=WarN;=F^$Rq^RMw-;*60k*b@?_;9d`QFBo1&u^VczTbxk+f*M!@ToiA>Ne6B?Yc?V%7#Jc4 z2Sb@q^MC_Nh3o6se4DKrpeKeGoDhU^eCC^468W1rVL6_Ev|VQ6J}W%{gaDe ze@q}mW<4_``6Px~IeK|efAHFR4Bq>rR2*u+KdY0V<+e8viYlnWO;5h`4+b;D@^!{P z^Lt=m?i@8WMrjqsWsvZYadO_;_Udg2qbaW&3aItqugRUvx(GA1>S5IJgE7p_Gw~2% z8xU0ACo1g<*8eA2g>rVxwj90+A-)--CQa=8wwaEG1ieHP>`q}qJYL8kIoPpDAACle zG__=@{K+EsWU-13$7Y{V0jP7heG6D>YmkcLhZNAa`wRc#4+nIM9Go@)vOzjIlC76A z6&+r%&@qS4Jey4^U{TSJ9hK0gwb_l*zu-=_j6Y7gfY}Xsq)Eo=3f+l^J9EvR8BPx% zJa8Yf(!&<8HdIyX%tFNBGmdkaj!n`HS?Kl%(TWI_lq#7R9UDWv#T5Em#=PW>9+~(o zIU8QL6$y$Fv)4DOFG)v(4L-5!<^7XCU(ncXvNuThG-ArlKFHA7L)1u5j)4o~-=!L_ zW9N1x{hXxZgFf-m{JDnH1PK_1CE!AXO2c>dH{L6i30t znMO%B87kXPOhmcR5dGq+Y(z4T}sNQ zJylln6_Bdi(-^3by|uT&a;B))Ng*$m=xi#Z&o>n;7ABsoA|4n}RD0Ep*TKbXx*k{FiX z$Jxq-S6}VOahg#n5D!kdYqRq}{M;cL#VMWWWqs8zY+S16k-K?rzULe9QTn4D1#QL^ z%7(vjI2Y*Ir!E>-ZHXE5Y>@0a8yGj)dH)(S$#{m6y>Y_4XUCLP-0{8$bNAzVZADHq zWDiGkA`9`C&T5iI%b~!gnTP-2K|x`*#WbZ}PRl6NKFC!^_7WgqfQY5smAL*nz33Zw z0$4}a5zFj(scypnO4-#^d}WHBMNN8WOt`TX^;{A?T;0O5;JTg4X%&e)YDNlU#3!TD zM}*utCaY6s`P|_*jv+cVBx1a${J4jcoTHM0Y+3tIgpG`<*o&H^B!1OmDZc92{H4?G z)PXtgv-1iebC~6hqWL2Zec5(>H0q79i3UNfndpys%VIahG7uA;ue81bcnZ)mS2)Qw zJprRV!1{hSf7}#$k1zath=|h&UK8q%MCRQ=E+-Lj+!=V)*}fYAl7b2Ga&3t|1BvP3 zdMr9wu`s(e|M zUIOh=V9jA?yl8Q!$?+|_yLJMwDJXb;+-GDNP_B~7D3tS7epXZ6+;QC8FUs=rhhh~k z6#;hsR(6OTJAW&adpJonb$#8@38%i^mI|cDYH~--h>ApTv1;!)#gcHUCYBYZqguSf z(JeXBAm}>>|H~{FBXOm>k-Q&sEXE|;S@OTT0UnU6lbGr>Q3sk zGxv($qW}}h?HdX5)WYM=pqw`~oodiTM^t_d+!#I_efSr`~~(eYmpU_#)JU z8`ui0kCdQ)Nw5wH%K~)>Hns|t!4ED;vZ4m;c#5DQ)%Y3^HD&Xih^!u$Szptg818Op zb3eUQ0FSh!T7iosa#KgloiXq$QhstgfX&E3^uj-tT0bHNnlS!VYXRuWUh}7$HLH~B zKdt@$eh5v3FKq)T$k2$NMiN&taMJiVB8Ft^Sy!9GC$Kx=(#YesSvO6ebVytw(!Shu>BPjJ|Qk2ch+t3SbE010q-nqm+i&VAK-KMvDPj+JXd8g0Wl-Cd!UzOoh4 z+-yC4TIfEFKa^fd<3GD!sk`PuK}%0a^f-Admo&^2&pk}3J3lg9X7i5aB`{UO3}F~ul@fK_a0D9?CaNXupf^N0SgEyC?X1o^sYyWg(5cul&a(aLMYOu%2AJW z5Ebb~kN^RKNQof^6e&`35JN9gL+>5L_nDxl+kDMuW2OpV0z$-8IxmAGf(+sVr=L%t`qax z+wFPpj!y@9P#vfE1T#%s43|0F$=ZwgN3IID8X?*Ao+W#xd1kSBNNkjI1^E3?+X=WA zLpKnh2uBWg2uxaL!|Dei^Z-`;2mJ-s%G-|eCGAP=wOJo$|6-6C;-Mcd*1*layj*yg zOQwEpnRAb1Y^l7E>u@4Ab*S}i-;m*f?uqN+#?{UrKYq%Lne|_m$Y0KEpTEWVVsyy_ zom&w6btIog;2CbRIsYG!3?MBN{2*z%NPHbjMbe&tzV3bAw0wF{m=h(DtkPESayq%Y zCMWOVFn3-{`<>uKdp8eIID1i!4S4C7Q=S_-20-=(YaN#*{m5+Xl0{vCX&32?F@^Vc z{n3@HF*tUeBi013$MZMh!11KcDR-ue>v4`^6dpFvm{Dt;xj4@wa3Xk@k(YvjVuF$+ zs~w&DS*5lS?dtmuGNu|&D5#l;_M#s4bZ$>Ri;pVhxw>5l#bmzDt3(`UMVyrW3I_f= z@pb($VpJVr_HV(!|Fu%L_0hR%cFaQvO+f5bB!YhfJ3qZ2-9lBpmV*ZE)1m{NONCZV zr-lhc5IdOHSby#yoC+ZpFK*5)2o@q}HNVSV* z#6MoiqfuvPK`+}YJYFO;^{6Ub>h)xMAn7f|DOGR0nX}O>dMGB@h2W7N8ttjP>&|V; zH`Kf|R>iwzAi-3i-Ys-m`cN#~muOo%)4CEa_0NnC`k*}-_fgw7aGCCT-WT__DYM#* zFGsDjb~y@ANm9f?nos}em?%a;7^f`IKjlA^Sv|de;tME6YYoE!mF65PMKwI+cxpZz z0U_yOT;3F|GvP9Hrf6TCk8|?+Iwu23z3CwI{#%Lh+HV{;kEw2j6+mVn>i6y0oeOWh z8Ftm}j@Y5sw?CZ@b;f|)UEa*>1TC@z6BKSN*VEX0m{Yt^D9?nDLU7f7VjAI;d(QRk zSn!!ZizYqps$}X(d~^>+oUYJovQDqI*Wo}DZcPQ#gQBm}4RTa<>v@*uKFmcv@VcPw zFXbss#PEC#N{t(l^PE0%dPe_q?4%e~0%)FtHS^%%Q&ufyjBG(8fI@8VTkvxnHC?rJujA#5XhfaqtF#5jD4N5n_{Zi zD_d1(5>u$=KeRaNCi;`DPieVf$cQuLDR(=o;(?WKD1&?ahGn9Y7&2#y>D7iiyPgkl z7Z{At8z$%EpBl`ahb)cD>>Pg*Tc{0W6}&-gp*}I4i@pMEuM=N<;lD!qKHGUKl2i~ikZL!3OVQ}`dsS_L1YllA6uHN|zy#p-Wpe5v3+{C>;|Eaae2c;E7%9siE^s=C*% z0XNHko>@Ts8F+!ecWS?S@C#h!uxL{{vI2!l#i#-ee#bxLSO2o;QZWzfQE>ftsyB`b zKGs0U9xflt&GwX&ObpRKyjIT%;`dBlyAK~7$md~GCL+APEqr4J7JP5Ag1PI=9x0eX zCiwJVIDzQ^%a3X#i`seSl7D;HxsQ3c|F-o1^GjwE(7*3x?`8pp2eIEVEis}_RmRFi zR6qDjR1*jX7!e9@Q(bN)<*A7W(e6-=e&4W`;LDsl{-e=|`D)XZ@2gQy0)1t2^gGio zG4vPC;l*w_W*zGxbGt=Ygz%RrFrJ2HIDyY(e9&WfKV;fk#t@JV_wJSE?K)Gd;(dar zpyWY)KM4fz%dy6(3KJx|qHH7lfPzr6i=Qj@(EBuK4sr+yZMGPf&Tc>=KtwWz{eB_1 zS#F!@bTAe>3!U@Go_~;C=aIc5B^0xNM_~6a!IuvuNCa~v0~kB%i@X(HZI(nxn@vjg zRL1Ipxp7r9PeuNXk%XeR<4t-rq_cFo@mQeqo>k`9C)&u`Vjg}OwXmI36C?6OwBi!F zH+@6-MCa+QeD*SFS!bAx%UHR+COL$(wk+&9XoG0L`Gt_KEfmTZdFI=J`bmLF$^Gv@ z)%D}L=goDu>|+JzVj%s_bDys8R4)0lIv*oh{VpITS(c8A*BN9C+bmgF=H)oLXr~T( zUHw2QPiTr-N=MpHO$`SPr5H|D9cL_bvKloO?c2j5?Q%kR6XXqR>-?#9R*5ICmQ9U~ z-;kf{2rQ0m9+uV?P%Ne^-z z8KJlZqZPy16diU??wR_!)}e}?YN(N8BrAWJ@xoOc*5VbnOB^u@2`4C*>(%>LxSMVP zH}J!6ab%3H*}#p~+>xFGxx#2kt9D0*PqrskJ-cQJchXu(FeWX*TgNYZwstaPDb&no zXL5%lnx`l?A&dJLM#!4EEAgv|P-n77dM#DO;}qdoZrbky{Ofey=ZYbcMxOo{nR+t@ zgP^#7;ZRAyx_o5T z5bl-#4&%I(Xy%gT^h9U%c;DSj+aOkjlTPoOtU}wy=-@qv&lpQhqTSUp6Ud@o2lmV) zW1%u)?5^qJHUYD^&O`S&l!{#DHRhBrjIV}n8~3wRwyi0M_4AP|2)Bl2y3x=hcsVn7 z1@BSGR^n|U_z+(mYW1qis(V95R@2YU9Tb zLop-%etXR3ZY1O4!y@}l$lNXYnxKfr z>|k4=922yDRqFc~$gpE28m}LGHcrGsH75V!kg$AHG88j`n7y*&X|*n>-XN^*F*GtT zy@fUm!vlSxw(HPE#qrd21kIOIqyz~A?N6&?tU@d-t9E7Jt)u*#&xjb|JH?IB4^^<@ zb$e^p`Md1w+Y7b4J<2l@22W%xAIMnB9Y}C$7j=7515tcBoC|Zs+!c32j4n!ITIqzS ze!QfoWrF#9_lJ_bUpq-!qv7_HNHUtuT0o`&8?P*%_*6ZvPqw~^VW~y%R$~0&#arrG z5Zd)-X_Q{4MXSq6+1_A|_dLAiPe$@3fbwnZED<+>g9Z-{o*2 zyNfKyfmn^2ae1{)wblnX&UgVv1(bFPjKq{@3KeE^okZ&qZ+^f2zS9AI$h z%Df5B3T-ZVJIUI>jApI528~)YcY#*;&k;5CX5%0Q(JhnBll8A@BMca11VqlJIdq&O z8LidPq!PF@ZOMeo-zQ|ZC;{-OL~l2tp<>tw!Nv(ThD9oJ&V z`?ZUfVYFTtKPlg@V0yAs9Mc|hy^os>FIS*c{yvX7d0Mrq`4L+q=gAzyqJofgDB9{& zaa;hH3j_~ha}IS)A)pa=emaMEbRw4Ls8`Fpy>5Qgf>@uUU|aEK`T%JMUba1fU4JF7 z)Kg-_Lu6}QXF^3b8ZYPifzc)XWpz%?&cBgUXsA_56J6)W&*<7Uy=Cd1d!Fln(;-=p z8??0KQ_(%9Big(IRNG3ns>N7w*2NSJPlX)*o?=l2c}Wh8@>T<(p@DT{??V;MBZs1* z0$>U;!>0D|+6Po>2oji`=>Ty4JF*4LhPl8DZ__!i`)d*c`VMT`at)GZ0@H;RkB7jo z57@*%!L8XqkzG5n(;-{3;z@OMsly}5Mh=y-ap%zmLN4?I%_h6gSE>~1VyK5c&^nTB z=@K;`-$SnYv@Wfod88w>zC`@zeEY`wff|#s(aK*(U0eD%KNxlYf?(&P8==t%so3ac zT;y4-DDM(e94jPQA~s_??~`9>Bv-*q=n|Fh-L+_`j@2qEnDguuH*Y6&ijQNbgCxN3 zVk4sK41K6TrM@#v_JgC-MzaCWSMAr0niA;0${8TkQ&IR_FK0eyZFVY{AN`9je7nc5 z>27EfH?iJ2&%x}!JC_7$&%o?mN)k*ub2J%2gqwnPZZzOQ)(Zl2k#;dw7(tQRqn+$g zKHp6bvLid6f;7RQ|C@(ZROKHVLRgC4Y{ZcV*I8E>t5l#_pFu=9 ziI?wf`@y~_psO$afdYvEV2{oB=e^rJb0HPiQp2o| ztjGGG%u#Mqq?}XT$DJn1A4+Z+Gf3MFdbDR-*;P?nL(Mk$!}A-RcBLCW1^{z@-XU?6 zxkDy(2|M07b#7u*%vx5Rv!ighZPYXe8^qb1pL1g=-yyNKy6DxT1Gl>pEDKyZ;Yj|E zaQ2$-27pE0hPr-$gZYf|{VQ$n*Nr9r_J~+){m)PT4b5&2oQHlwT6F^ZYrGiZp>S)| zOn{KgA6!djTtqT+vYDZ1e=s9+Bql0$`hGtyaRvH$<}52nu>YDs9LJoXMy$*1+Pk)Q zTM?ds_ug|onAitB z>Arwz9Cka?9DI{*DQrila;9eI@sk~GFiP3903hU3N5q2lPrA9fS?W?}(}BxI;HWS1 z#H0>^RRq!r122IIf;Rrkz-_`GxC{>vJO-C12ZEpWAq!yviY2CK$Kh)z9>06EMGezi zcFrY`4`WpyBWFpgYOlW0oq3qPTc4xORc{e%Y!X5Ye-L2eiplbjabp;afE+lkFw#!7 z$if6C92vXF=iff${R_S5OnWlD$TJ^O#*-61-X;*NicvJ7}0n-tC=`{I8hsWDj2(cx1=Tqc2AWmv^K;HFBPc0 z8m_%1BQ;0oP&*6%<(_;}x=}bq?bwtAzm%iCpr3@ZVHO~f&POOjs;ch)I>4-mOzuD?-(XkY}AfkXB8QnRB70p}y$os;)Myb6Pek zrOy=K>V?hdn&@ZM^hcbh3CimR-cJ1kJ~&VPns+Q8-1=X?bU3H(GG!X-c5ka?g&Mch zJ$tIIcTYjHvbskCT8u_9QWr|0W!=HaB;Uu*4v<%wIoa8MjB~I$dG$?z- zKOIZBJXhg2vHPie``U$qUb|KEp%TAnb&pOXd~_&>jxKZ;O+|T8B%kL9JK8oM(oh-? zry10@;^#9eVp7K0Xj~=@?Azz%zB-c-C_Ef`jlnTeDZlP^-Y>xS7cnTs}5jB*VR_Kv!Fl2Hxy@TvL3o{?5O{yB&esu^@?vCcoCRygQ{L?dz%GS@naKr?7=NyJHR3PbCDW1`yypLKB_( zo{H<%L6{N-osH2x93A=6|NU$<2wROu-^ZF3P@J5oT7_dYrvoSP#W8OiK)dmg?jXOU z)^FQ1&%^z35+gkl!kR4SN_#q&w>iYgefDioHRU=u=@a>0zcBOE2aaweS8SIZ-}2-%!(T^@KrMuW+GtQ?Npf zEPEq;^1xv9H`IbCOCOicLEGjUHf}UTI}MrqOcA#pI1-^UU-?zE!Jcy=37p^6`7qb6 zLHGTJ;rf{^J2Ig+>ok~Kf z6>n}q9@y;|pIP1Uf#Ebt!<8WxadMOtF^`5W^9DAc<-`= zd#L2oF{10UuWeMNuio}4OX9(9StV{nA9)Y*Q0uab^Uam3R~GII{RVQx{{VfE;Pwk5 zSNu27M?b~qyAvrO>tME~y<|oj!^fa=X$NHCBz;0DYK;bs3xg?Ca{&*@R=HzrVB(gH zR`W$gOQg++$IsBsz|W%XH8nd2YqYXZEDCQK8Wir4nIXw?wa-n|znN3aBThcvm+UW? z1c(Vnp*!Zkwtc9iMtFD@W}zi9?R3_5@zTSF$q;-U;@Df_5i6nTV(ssxFD)|Rg8`jm zb`2eurt6I6x%6djA-lZDEUIO>&{7Pu`qVMoN%^+-)eoMgop0Fbj`8PS=acW5IPeN2 zO8Dsc$=@r0h_TO$3S9i1S$)bL+2SK%CsSMEr68Qv`WY0Ck=SI!@8Q~3X5IKNb`uMIi_~6|OTYK+fjk3oAqD0L23UmLgl7+cN=gIu4owfk#qxiLLk=}rwcDO6rSIi$?e?j;no2J z_qC|e2s}7Z(7}m9os%$1$e638$i;Jui#k|z7$lz>X6P;y(J{f4IW*;v?4dl^9~1uq z=DhjoDD%%Ci$D^L{6(1l;lci51AC%aYdKXmR>Q_{Vf^QWe9rB8Z%+iqD#MU56B z>Jtwnu#<bxEz zR?StT*V`$!_h3wk^aNzn4#6Sq9f$nr$%CgpEoi7z8i8-NkF6^hVH@TWxYpSs#SP|BJW0|l9<)*y<9>xQh`KeWm*VZ`)7zPG%xq)`YL1VGCY#N*0`trUkmcy6XR%$ zj2?YX1*#TT{1=!}XfwM1jt7s!mAyj@emV(E1tpR!m*mT2a%b70stk#DaNZyQ z{gVLQv;hdWc<{2?N=&S})JT+h*5$k`%ls;{taK&i0qJS2t2CdhR$*rFou&HgG1y79 z7zpSoN@OkYSl@$*3qni17R#JOXIZ7{(oTg{ot@`EYgSvF)GfBO9&i;=bq0BbH^Y{e zNAAH6wl0w}nh0`M1R0FR@`?V*R>Ytpci!f?T^v2e4o#|)zr}bHp9EKistVMU9|sG< zR|5Tk$T@6gtG|Id`eYNR8p0BN1nv@YcHT8TeUh_ya3E1>xR9nP*~}(s6gGbnH5V_5S&i`-wS+icKWl<@G$A8~KyV>s^off% zie{+XTsi`G#wgU0gGv(ahd+f%0=axb`_20HrPtIPubdC=`j#Eib=Kv0cb!O$J5eJ* zS-X0gMLwTa-y2luX^rhoF+TuQ6Eo8<0U2YzVPDDRV&YLD{zbo?uZw)#58tA^{9_j?iI=VG~J;t-6c|6*%`t* zK2uETS?4&SEX-c()$zU9bnM~FO8HZ z=X??QDmDs2hfj&Ka)QIN5dDj+h&`;emD9`25{Oqu7{W~yGy9GY8F`-u#Bq9e$;4xQUrJup%WOspJZ zJZOCBZquvjY_nD*n7kY^trA)jM1{d}HiO_&GaT&+uJX{~b!S$SQ=6^E}3auiSs9j`s@OtXDcA`anPdw=eeOX1R47gge^q)uVPe;*+a&)R#M z;!TcC`0A)|hN=*fUNFTP4%MvZq196l1ht%MHxczCqztp@>R(v9Fg4jNuX^L|oEvF3 zQHX-O)Ms4mCOF>1S!rYSseQ_eam&p$hoToIQsu6E@Q%;dh;hNN5yQqKbL)chl?t~C zrs|%$eFT#-;~L%&J)xDW9>W|B3PO0VSMxWrsM6zgY@|=irn_j(k89B$Ay4tLSR40S zD>-{bDtrW#?1X(9d4)Qqh4ou?aTRhWv%f%sMkiX+pl30w&@8x|VAmkisEgfus)7N> z3;f_%DE^32vtMwoKw;V`?MriAeKgsigQ9@X>9dNu3m`FYt?^L7kb8%j_m}U z#&CjIGxyo*BDa)nQg)g}$?0yVLDmsyrz6*BgxlYwaZBdvAC0;g*0UY_f;uYfO#3$! zO3A7BYjayyiVd*WW7_uwu=wIYuLcl8KXCf+dP!|<{PT3zG1_GFfm3u&%e1Fe3!kUF zgbO^^?IC2z$VN7h5CC4&0*N#cqjhXvimPNz_PZIy-i5EGp!66EGaRYg+zDLXX5G1$ zfjdDQ0i+lhX!r_&8(ZL}EAJpx05FmSLZ03)-O1$25YYyLTQ&^t{|N*y^Cg4NYT%q< z{YfAH>SRTnmq?|tBHN(r>t-0Aa59LOhhzl_|E@YtBM=u2AD3ZntD=&n#W;244(>H+ zRcN}kpwsMoRGl!kp{)1Sx!(b1BAs`1#Z&z74Ip52bNR=de)Z>RCs+&Kdt`@kd>p0z z9wYy3dWr53xf>l!DID(fJAL3LD)}88s1)p7??eSPI_8lhJ%ncNSvyc*;vqhVkNerhA@j@XX3$TCzvREJZe!8m};VQNTNNz^5r{-pZz%YpQYX&F_Ofhr|A0&K z9oI9S4IXsKxfz07>Stnn>-&NNC!aW@+9MhIzx+w=Az*G-@Oc1pS2rI;8X|vUnx-O+ zkzxqFw+}g)Eq}3l`!r_X7g?am*HbjSsy@xB3)#&k#vkz(y;wRcKWC@) zX3jHVd)Zt0TuM8dcelYZVR3X6``)vXJgC*_lPxxjSA0ejvUd!NuleJxws48s8ZJzo z9QNpqAJ#25bD}vj2K-0Un!4QQ5ETDku-dNgw4VBaXl4ATw_*FnV|6h~mA0h|dC=o- z`;p+;p-fMXES^gB$Cv9%(e-#PE!GyRetln8=T0~?mK^6*p#A#TlwYP7{DnJ4OAY;& zS7bheW+6g$YG(4Lg_$K5)A6yCYWFp8C6lBJXcB+Om~>DuMu;vZrlhAQim@1wKGm#I zR;i(Nc0J^lxncc>vbuux(Q|basKC<68W`RuriUp=(tZ7#=+Lxb&x2<3MYs@*infv2 z%puu5MwSoNWw+P6c}@D%5D1or2MUsFT`DzATt`K5d1(nI^8OYS&pa`t&A}_@=Yu?h z#;bQ1AoaS@BprOQE|=0>WgCGyRr#l`k>?wK>aeL$siHdAk+ys%7;`=AA5;Uv-vEJjkpGT%vZFJ zH1lC2^p`b!Uf!7*nK$A()!NX8A!dV_NUg%Ha!=2ONH7zToP}6NEn=LJsbBl{F0O|Y z(d@VY5{3 z_fH&lI^%Ah%c6p^Q=VS5Y`Baf3{w2;ZUbuZ$Q^GB!df6{vR>xCTj5FOot%m3|>lZ#R`m?!3y_Qfs zc<1%gd2Ux$udLQnq2ug<&c_H{_J7o0LFjp@c3a<*oxs>2gZHdkn3wz_&orjP)4Q|8 zp=m)Xyfm=bxJ05pw^bBZ>J;DG#I~5xpp*fvtzNuuEbs*W6_?>qt9I?DmJ$^Go_qe3 zf{v*Pj8C@rXuAzf)o8*nOtd0Q{zawZ-7=H3WN-Ayi2d8$6=$QXn&nO&PFc6UHyCz$ z++JkG`a9*;;dtTv0S+Xbd4oz6MCym%X*X5yWC2wph^j4zFh^Jc?2{vu5v}E2iOnqQsz^5hfo~S65Arx1lFAg>d$v2^ViReCV>3 zmDA|cS2)>JFaUzl5ewmUL7SO_C0mwxmOtAvT}_}MxpOmpk}HDCWNSzCCp#|thx91CcP2NE5v(qoaNNB7?o$ zjd+VlNF$mr#An)*3U9WSrCcUNZKSA8r_HKkYb``I+XgedPxC)ZJ8dCc8JXbvmCRFK zIsrK2|BSPQ5Wez$r3CwVq;U`;lfbtIC_34rNr-F~Zsvc12V^f$q6I&)YdSXwQG{rS zf(F}#WDm0q8|=u-brpcF#=XKq?1)8{Ppzz}D-P~&>!J&c8uPH-HmyEQpZl7Xs8RFs zR_hG3xcyHRQiX9!>+|wYiHdt&_T-uGgfThgD2j#P@h>&_I^Zv{1darrib+d(Qf5{` zAYl&@k=s#*LdQg0y$FuojnL#HeC9OdM_Yr}NkXsdJJi+#TVSi)KkLCLaJ$`#f)V-` zmh&tZUNX-Q#dMiPp&%d8JD$qtZM}qE9*Ae}6FE(vsFbHS02+zmkE_WQe<nFcm=+cuN-}jQj=gXW!oJRkgVBFZ40>k#td(d2E(O-#IZZ(tj#2*Cm-}oe3 zBd}L4(DPZDhY?zaBGLFz0Q<0T@0db5Nkcnb|1qEf^)oTOqMaB zW4f`IhIpK)8a4!}yLPk_ZcQwVh2e0mbmhx9zvl@7F7`SPdt1##CL14)`sLoC+(ZdJ z*oW-*PtnFUj`OHZ8#3a5K(l>^;YtTn@AH3xIHbW1w`p@lZ8ga+%#DvB#7|EHQHBn~ z(yjx^ZxKJ3T*qcK=2bmj6MZm~VpQj5kI7o7otJ)AhCZa0ez$FuFn|`vo6l+HY&$C^ zND`Z)BgSi|hGreDCOgN4DzQ!duRDK#6OxxbW`y|aJ~{4-Ldg)@@#96=^y+j5UC|~Z z?&LvkXH{?w8gRzg5z+|~V76xbG456d{Os;TKK=b(tMLR~DYc%%Ra@oF1Ugvu^`f-U zhhGs(|5W3jcU1c_3)05};H%oqzwf(+DwL;xsBXm-%Gp6pd>)856zi4)`&E&g-Xtgv z{si0{)Ua4Nc(ySf;2b}c{O;Lnl6EN*99BXk)t?v@!u8Ob-ZE-=E`QJ#W0#HQM!)t7 z`>nsP`+YSf#6zHS&3Z54=$wtQii*Y8EJ&XXL1)Y*>@AZY0Fmz8?aZ{u>cxo^>y5JQChcQ~kr2Br z-&2JS!?go0xan&*mdYi+p_C`Nhy3xvy{n3H*v|3U*^w1Xzq1n(&NRH~?rEa3E;;Ok z@;B5OC8Mslk5Q;EEzH&+YhN^r49r@o- zi*ENS_3@@DcTavpjY7xzH&k`lH`H_P@J}{f51?vqbI+9|XHpdq(3l(=Jv-w%^PEKJ zioZs8Flx3`>&IpOF%*(lP08_lr5F-jOXj`oBT>NCpl%wURd3uC-$LJewe%e2nd?&` zm;iSMx)iJHpgqz}JVk(cPEp4kT5(3gZ_vCDo~2D`$i( z!#-hnxwHt_Aj;$F#h_fRkBy4ErMY{+iNK%ZHlB;l!k0J5H!d z;2JULddrzwYN|^klpLH@F7_>)>8R}tJOwNKp8K?!;$6Lo6*Lmoc4^HjS3Ac^Q=o_u zg3*3%!X@sLxhOzxTeaNtvEfOsW{i|t@r`yR{nvLW2u$?f579{=`2`&}C`g!YK|gAz z2qm0^oQH3O^O;@#g7;C7UXEfF`cXM8H){Rm>d~J>|LU~!{e-9t*$?c$@k{c3g5Vw% z7?=135#_I*?1S5=z7n4%$yoA1!h}JdMzbR^{gE!SKK)$UuF)=lm{H0n=B4dOBaO^$B-D3W&0cJ5DL9ZGcxzT+!aA$2jff%DaUC15@iaFi_E?vdt?pEMDv&;u zET@oHRT)##(jZR4CjQ=UDeZG=O$_g$xRPjzkGYMHfp+#7Grkz?Llt#FznJLqxhQ}C zQb}oTiHJun>3hp~gM5A>_h|3ygji0o+(``m-nJqvy} z<8s;Q%G{hM6Qs0BiK(-^`|ea#o5o~>-KUDx$zxmV{#cg(L*j3!&drqN?!}W8KF7-2 zg&Q$4Qg~52vQBkppk-6v3dYO8^X^OlPKLyq#&3p8q!OYA5`V=#Z+v*CEw8z^!@JW( z`?#m2uJXO>xj4?cI2%vr*4!{vsj)V^1U?3|$9R4MA1^;}fnc+EZsjX`IV*dGzn}a; zs4M*q0$R)Rr9+vP0741=vmi7O+;>I@MG)M3u{R{J+uzkI`0zwyIP3TwJNk@WBTr6@ zyY{aX_gx(W#Bxtb?Tgx#cQFcAPh)b*iP8N8NtclXD<4CWo2YFaen4@|rh}`kA~#jn zh@^iiU?j@33Ll$)ix?dyQOu!QLpID6n*v{Ov-CvVyrrL8ru=$i5c$TZ7$Ul}s(_bo zT$v|PTcnO>vus3ML2I&C+;r|@@!qnbUReWsG;};;IQzihr?V(KdZS1STS&bX zC_1JJd1EYCM>NaZ(W5lz?+xNJG?d~(Wn9PSaX5DE5bqBEzX*-!p3zA@G9MAo_7P5x! z%yn5`G}uX4ZFv*ZfYSn96JZvz|6Y6?SQQeBcU)fNqAkX@=hHrD z`7`2QFDmVBqs%uKb*0fs*@wavB^?Pl(kBfAEY613D`bcHos+5UCP>~+YgQtX8VoFR z5g2m-Ffs6qNGIJ!2i{9nmJ>HGsBVSUC64n@4h_A%QOW#^j0=DPgXIPMpLz@-k${o5UdU0bT1zA#p_E!j3v1`$P(cP9V89 zzlRt=;+SLFs!={f=Cn=69T8&_2mdyAaR(K%1*xIHQ-R(hKgAiho$3re;t%=*NU8cK zP=uC41iY~@qY`cRZTPA%?MyaV@Ch()#8at`b{#QAvS{v5x$lp+V6bfW-hd`=Rp-k5IRHx^d`h9&QwK;0g zZygZ1wy_n<3CzX}6Holu(*`RBueNhnuRg1tqwO$f@`2=x#+sfgF=NxSv zT}f75@s6`b`r>W+WX_Da)tIS;?S&<>k^F{tXH$#YzM;tCk#1O5$?B;%;#cpNBO%60 z3^(hp5CmoIKaWBkW*wFOnX}9kFH`w*f>wZ2TP8L&hP3ozByJ+8tH*SqkW!#k(B7kO z<9s#KG44cOO$XD)PXND<0aq*1Ty=Rr%xqITirS?6>KqEGvff8Rjewsc_yV%Le+4eB zO-JvSUP{(J3Tl%>zV~+`r?$&qNL=9~uflXO?VxZ2r6r}gAocCX&=_~Le(bYvC?}`V zSs86hCG{uM(tEn_;_MYs4f<+TGu9*hE?~0T?QADCp|2N3<}|DhC0It7GGiJKca+%L z?`YI138+G?UCm9jDoty~4OTLax10p%BfS3)3ZIKWgeQ9HUpD4zYu zgm$Xx{fU*vg;}QTy>_fx&q*4bir%svdAbd{?in$>zf5J1ujMxs#=LDzYYgfu>DZOk zUf<|s?yPPs{&1OO%Ie_;UmTAjE#yq!zs@G>zN)}ywUWargp z>p=7sLZF$2%P&YKBU&pux|FwpO4<`ov29;i5fBL8g}Xji>-dSzs&Wt8Cq3ax5+b_R z(u_*34%ny$Nf?IcHnP$WDa4Wl^B_-AXrcl96Eemgu{R<C6{$Lca)H@&xzVM@{6vMG z#Jxc(i2So9!6aJo;?)9!9HS$Owzn!(%CxghN45JK#@^WJzaky_I^3v4y7`0 z5*OE4V;_PM0Ze8)mmFR#3X)5HZ5Y+>Dj=1CQI)=tyU!W-wh77D3Qr*qh+rnAOu6kW zJt=8q70Zr^8zK%Etmgw;V=@3`Cm$=V5svEkz1UG&JFPR zy=e}Rai7^{4kz=U&iEcLL9(c6%q;578@a~UFPnooLwXX}*QWOeC;jN2+ss%$*Xbib zw;&oA)ke)VYBT1f)}%$hp&Y%!PWCFSXR^~2P15J*<$kuCv43^f-g-69KCKOn*VBqT zC)YP;HLE^AXNZ$So2Z;A=%G01R5s z{m5j(Pt^qbc8Fjm>qW(u6D-McGx&ao2~4Z_%Q=nW7o|&eabM*m^b4b#`v=1Ei?QW0 zl4BtT&JC|~?2mtaF+13k&QhZ;Dt{O&%qMUEaP466QjJ`kX4(Po-#Jt)?43%L2Y+Pu^9^^36RFSx80SunbK=eYb8|{ zP#nz$dlHSTj8}`SB(-(bg{+1`J1u-n%icuP&UdcN+dxJ=F7oq|3D`+HbGR~OS zUPWnDAHQ-=+rNGcp1m6dSU@y7=QoJL{`=qg!+%445Fv$xT0k*2iLfs{6Y*+9im@9; z!P{Ek_S%oHT=oF2K)*Un&m%4QMuW*%Zz*J?Xf%o>8gm#D38zDZlAQ?(Aipf!p*GjgLJ?QsL3c)L zI1n;sF1mY+f$?K}80*s-Of*Ha$b}XoRWrWSvXE;7Q5)K>^cb^1{?~G=<^xO~DBf|! zC04gB8A3GF_8xl>g&?5ogHI&B*Jw9^Dk9}5blwGSx(rstFqAO4!{2snz(PTQEeIUb z`51l;8uSjs5cQw15H-R@JV`N~Y~VDYX6r6!Ye-3n*rOk{+!k+=mzxgx*UW-Z@i;ob zXr*AK=`B@^;V@|1H+?bjQFo~u_`MLHI&P?h&o~{o1-zzno~7KictAl(V(O7@#ktY} z!&g&B>SL=aQ*KPs)OQ-W)K@A(>lld(K~zv<2mB?$_uCIf6NW+pg1vrbLBV0)_T5wp z!#%S#54E|pmePqAR+oE2?{|bO=$t6>!<$oM1`8y<#HUBB6Dm)*+}cAek{+0FzvB|S z^)L*&Fl}UYLlOH&NG9x!`4^Ctf=S5Z#`LH0F<8QUUj*Fef18jV$^Yr;zjWXoA{*&w z&=rrQ6qrHdArgW0Yb{-FHaZfEP9>UD(|PLs)6(M6ZAbu?W1!oukL6K2#J(TbpC&Iz zYuBIChG7c4HADjDd=7h9CEe6y>md z$$hV|JEKylolgJ-AQKbx9nU!G4`2w0HuwhsX%jpm%}FqPCSN)S-+mxMZ8G1A_@QiO zt5eVH%uCt6pOBG=Cy(3+ZDlA~BE3=i;;D(X3kL?VMnhpF@uV9CP6G1>Y%4tm+VVkj zhd1;f1Y!@j%sd~bJEr3$Ylg4C`D})5t0Ya^R>aKHG?oWmBIf~m7t5Ax`cs!{O{`Xr=YFb%f5LnqW56&mNIAySBuCgsREGoF7-qWopJbl$$aKoI zRIpifEDrn9+1-67ZPUC#|CcgVHieOb>gcZ~CXXTm%va?W`*c@KDnGL=RP7!CMB#(1_NtXeHtBFh2q{? zn@JKV9#$UyGmYHi{Be!@y6<`_AGWCl@o{sqhpTpG^^D269`S^ab-HSj?Mo>M%Iq#y z;0fp>;w?P&2a2Vyc{(-DT8;fm(SbvsS0=yEe#dot>EK*S?2SnuX0y3OOeWlz4F@wmNFaq+s9_8VfSS;24{1@GEUfP-Tnjjy@TPalC%2l@mI@k zbRXQ-X^i>RYP}Ar^0y&Xewkw2`e(?qQMAjbdv!bUeCw2V%>ns_)YUe9509dZS;@n( z)KsHC=Dp-kw-`1qrfID5v^Kl7CRiW+!4m@AhUgCdR;(3#2RAgpjS{ZDxI62;O0r!o zF88po(~+o;8_KIDf3*+d@xix09FRARoh2k{w_mNkn-jQbRDxAmb6L)4S28yC3VUor z(d?XbsC-wDg?998J;>h=Ru|UAdzw?~EcnXFM6Y+`Fl{z?A@B0j$s{2Sljy6Tc75Pj&@tq-4HOHU$z3ohya>odV0 zsgHNL61=IToeRcwCtE9?4>3apVm3krh;EWvdY?PuW5|qOl}>rg*9MV9I|(?7YX+p7 z;w^(3H|&skCCHAMpr5vi{xsIb-bP)O?jkl4rP#}j+%Zo5m9cR}3Kzv%8z`KNKRTz5 z_}RPV6O=f;X7kz*i<$mS1={B>*#`Qioa7#raA-V?UkOp@DQnP=_W`z@!W+#3eanbKJ(P5%**opVX@PcHmhWjZ()R>1x zVql&g_U9=5BP%C!+V{^!(|$I$w<3kG)#2r+PxnR*d_yh0U3wBY_r6=IBlceEz4q&g zsuITQO*7rWjs0b#73T#fs(^>S`#xI`F32-*16dtbJ2Ra zz<|UXVR!d~u-^w&Cxs<-;`PQaYqhj;W7Z=r5XYq2qRgToO=?#CIw`ll>KJmevsbaL zjAkoA$2iUQq}DBw#2n8SXy_a%@$gQt=sVSOgi5X$M;py}w=67o+rEES+76C$<1Nqc zIGm|?o|~m}U?{ChQ*7VtLAz$x3<5bix?RpBxh_T++%Q>Lx%e;Eg0F||Vc%qbN$tx* z>4Ho^r+yr>6VVrQB3aEvban z1c@l`o#i9;?SaGevuoc_@l{4uro_5?9?>6Km9BsK%KgQZ_1;;V&z>Hu?V;PAJGn6Q z_x_79s^TynaJTsMlZobh@3#C(qC$dS>s#RprIcqO!|SP>LX7^*8lJn6F4kQ!%-E2P zntCA85C}Zv1%RrE?io=&^AVU~6R@WA444!m?%`m-2aLEb2Acm7^n$Daz$#S+jNVqi z~?Hm-&pys+lgGWF$9N9OFVmyvfZs`q81s1cQEfv6ri!VKSQNDFnHQ zY&-$W66&JbvL3+&{&_0srsYJ|`g*&$X1N0Oi$gqn+o+BEohH$EH5>K30EQ;fVV1nY z8Ok5k&1{btRZx69X6ss@Uam*9_Fh?uugdn2WLgY@WpxND@DDgO7{C$53~dG9*ViY3lWqGLz6=viW z0?JupMgt+Fl8pYDHTX*ez_pr&W}^-QVT7Se(K&R{5X>ce7h0OA5pS9lJ>Jl#IQx%?F$7WrW?)W&ufES9PlB(~nXi8S{{yi86`%39 zBjPFH17DmmFN1ppbx^xTXkX3>Qr043i<4nAW+;J`dCLH~FIcf`OuMQ#PGQrP9{>?q z&cb))`}#dx^kME6hQeBKh97tJE5AnrE(yjl5}|Xm2`1{?|6-7|IE`wJe3|dwv401G zo?!kGf-4nlD6HWY1SKN}l4400;*RsizHR)}2V6E9qc<9uLMH|^DZHAf#qL&sTflKY zt6bOEg>nJ_Xj6GWh~k>%uLgs(j6i!5XY#RFr4 zf=VbmG^4{E4PVkxCZt87ena@mzG(j@gt6B3nslv;8zW@meI9jZSjfv+)^`kyyE@Ol z4ZSDc-ccc`=D+GhW%%9ke1?g4RK&$Jnw?Beh@LHqu6a{GCKbnj`k`wc37sz|+yedl zOhVN6K5A;##?#Pv1lvrikjLVW6poY{+musB5L(u*#$X}p;A(@Eb%MlnO4a8cidOTz z({8+vOv*tD#oWRDOGzkZ)Oy`j1c)PJJRCcsj@f{9@MpwO*Wttvt*}3mb$WCYsyde? zdN6r&#uDlFYNdT#ki=-@12$t$Cqh_+HY04(M#jhTb)UkB^IicRaJ;iW2x zij&XBqZeIkM-LaisUuK5l&=JUpV`2pm9J40l}33J-V-sIr#)hyjm=iHcz5&iHDQ8o zNC{20m1yYO5v$xcvKWn&Qmx0OZwC%HvK{&W(Y1%+Ka~B+tP#Mu0b7MMbs`qbOod2t z(*CvRrR*hJH}k5G(>zsSl4E2^&Dsu}L*@PfbcJ)+l8d%z!$6JtA2Qpyg67I&^QJ2@ zmQ&h?z1+&X4rZP*8njWLOViZhy??J!$=2YNm+Xki4xlr=te-n%9MYM5E8COZT<)0~ zl4+GIEz%KhZ<2YPWYMiz6XC4lW1>?|uV>hr3)j^=O`(Zb?Ewdx9=D~Cp*#z*=w|s- zp*IGq}=P{Y096998=C zjQVj$rR7o?43R4mUrvo-*kWv>S8oR&n{aYW|4=~*H{}_#QdNYk3YTm{u%L0BmF}%0 z6Ma4{XSYXml8xJ+b`kr*HqC~lTc&br?_py!Sjdh>l3O5d^JIHRnxRZ1TjjIn1|B=R zLc56p88x!a8x#EkGF2{Pj#8sH_fAaVGgFz3T}r;E&24f^_Wv{mK#p_48ybb?MjkJP&V z1iFazs~-lO$=tV31=5Ov1>Y89CDj`wnHs zy?*%XPy0=g_|=W@GiH>3 zW1qRVuk%KZ4Rs;TGg``ta}XXDSHZcyS;o*RBBM$??3yL74!a*ol{FNzlfp6L zbFh21JF*z0MIV=f1Ti27k&>W9x>7L-BRC!g(j@D zosy6QhNdk#LyNHtpUK&=biZWJq|9=JMm=};3mS=AijW|lW-MNz$SwR0#adNiQQKH3 zQK?P+vZh$hcr^IGNP7>crqXwNI3PN9M8JZ82r39F(mPlv7K#V~q$(&#A|SmZV;MS# ziu5u;2_ym{QbLG~(v&L35V}%AFH!+oSY#nnf91P{Es+s~RwR|=yDa8v@#%SIuG2`D=A{*0FlCC#f297L2pQQsUMylPLu7X#1Z6) zypC?mTE0dCJON1ovtVgn*LkbqwM>V8qrtI0-5(4o+eE4|X1HC@rntoL>kpbrUavFF zRei!?M4Ip?N?XZjk@}{f$zElj&qS($+FLh)$z>xAFWF`t(YX0+05ynw|7<8@$1LYF z&8s*b^cs4*dlpRFQJ}=)fWVGx>n?_79DE=goGFB2gU)X#zdN$Zt~^kHhME>1^g;vk z#d9qK#l8c$JEWFc(0C9L(?J>qTWiU4{Rt07i(qb0ZqNJSbQSUwQlxXeLDfz0e{gD@ zE`DC&Rne8_QRIIfGoBXa5Y)qjX?MH!pC|`wZh{ph-{lX)1dt8sxPl4v?cJJpBrta7 z9~~NSGu&rsiUC{aGo5nR`QuESm%N;x;FIX)u%?jr3e`3Ng zJ8hQf=Q`kTYSqnl#f%Ht9BO?q%glxEo)+o=vMFRhOc3iDD#ZVEAcQEJ4A%M`fA@MI z?CgISzoRn#!`lDTs?|#Azc#_LdC}pFQay5A*Y3DVoO31JNEb?N{ESAKyEy<^=O0rc z+n`qLmTuo<)zv++k-;1+w1aGAFJ!hOgX2FZb*$RF->=#Yiw8>YYQ-IupKf19vTkBA>?AXipR1lLG{#o7M}lWl;b#dUGV znhgxND#Ith^7Aa^evDU%#)U`RJ>!{p>ie!b^B$s~=NY4FceT`gv3dDA6xyv5qm6YX zwsPSPQ5|JD(QZ>cq;_hAPF#KCQY@<=*rFvroE0uY*5cx!>UwCpIcB+n{q_;?)eNO= z6A=azoK;4V<0R@ATtmUQb3>J1+%�Pk`)cx6RtNhhZ*vp)#v1w=1j62dz7{{oJb4 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 z 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℘9rxtB~tBu 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%0AI}7oiAX)-wIon=mlK4 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%0DeJ$L{JGNY_A?$7@z<>7;ty~%=$dl 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⋘((9;5jIImBM>#N99h}ZgVBpYhw!1p&RcskEx=Xg1)*a%P0utTH z^U?YGx@=9^CQhCvS>M|N5-8@?RG!_yKrg z#HVoVD1p*5^pknj;vgB~)SijYWJreipDGS_4R&v9Z?>W*KQNCq^&BZPU6Y;CQvCGi zAe07fX43u&O0got3J9RUcpnHQfR$lFHZX`m9N(<^y?9M)tVYDA!#<8g$r9yKzSf&| zr0t+fXj#$>Co%SkkxEuXg=?+Etd`2GLUlS;T@f;x_CeQEWgyq`OH)jhqkTr|iI87j zUIZm?@C)(E;hOU2lF08mfzV)<+45l-zb+GJOqs|q`+Wt5k z;WDuhh0eLq zAL_u?pP&2Z{(qP8!4?26e{DaY27wsH8WQh7rmgBf9*|{o4nYba(ZD-n>}43i15F;# z5DLo_gG8b<)L?}L*^7umppb|Oe3SMdu}!!FQv}Qj7edmv96A~7qKg>}qoqndlciC( zO0acxP+&@s7B5eh4o(#4_9e})Uslb3;Cf}BF%~aha_>Rg&3?1gN+L;Lt1^r{{Llqc zA}>FQ{MZ!d)w`dJNxWPba+chEIPIhyBcYGgjM z4L9hwR!+bSUekaC*dFor;HUM{`JboSNR@39hCGJ$E{XMG`M_xiQOa+3hHs*4dErEi z?@~Db$k&N%gCPg(O551tlIWnrtWnt4P=!9@7I}U$v=Lc1GNKMq>db)-U^zIts6Z{|AtFBp|ZY> zobsjN(u4@W+l<;jKWo3Xd6|J|f#zzkP-2m|5 zYsRxwupHFjCaA;R_o!(waX;Rk-X*hU*MP6aWTB0 zr;AqM$CZI#IjQXSTzf^jIPImcN20K^DOw%!;Qe;S#0f_o+bC*|V^%M|t-5f=4wG8q zOqCvZ7BqlFC`(d;Wm=O&(y&So_hDI~P*3d$7eWpC{ouu&{Sdbc3UB-uDvTggnrFA% z#ntYh8(%WmY3R_^mr+YT2ve(wewNYeM2}if-^TB7yUb=z^U| zTBcEREakY-!2Ywndfa-J6`cXg!y%s5?E*zhB@z#d5{zzCT#i{j8LuGPs*@Z|e`w(@E&HQ25i}|$j9-t5fZ2{g8Vu18oP-%!QkNaAV=If3E)x=te@d0rQP-3{i9_q)6@&z1lw6m`oJ+lK zOq*!1W27}YS0@ze%{R(AO@vgNiAoX8OMEBGa_*bdeFwF*SReG)S#PZh>5wM;oR=_N zqQPkGq3_5OXKAOplEf(YjX{moQL@RRJ256fpqUmchM}mdYaO}n;T2^|Hdt_$R+`%T zvCoNG!&S>|%{p12e_+a&uO_7aiBoBz`B%m7HQ9fZoYipA%cJv0su#DuN{Fuq?ru=> z1ktrRqNR3_G%yN&^c5TVv!&QuTV~R>-zMX)&xmm@W_68Ma;-dVh;HT3-w`;a-$YYp zm3}#|bJPEB?|1HO2{xxHS#*IayBEH3#7pl`?=Fct>!MC(x? zs)AQn@m;4|g}PT|>B~xz=gEM9Y@A8LD*{y1vgO*ESG+;T=E{5*q4KLNm8XI#IruiG z5-ovBcfX=qJ}RU7P-E(`<2&8ESth?%ZFu2UzXuChzBM8QC&+xy^EE$-sg!E}vKT>< zomU1zw>|ERO#)jcs7@??UA?Ei2+-x(+22I&A{1%}eFi{Wgu%-KPpjld#Jdm#6+M}C ztFXL437unUC+C&dN!HIRD>YnKoOevhKCZr~L+MadH27mdPS~JjAhgupAUpJC&8;wl zOlgt}RVh+4V?qCnM5VKyeN&=LGLPA(P-}WpSiszz^<0!Y z5dkQ%Om zyIm_-w^sh?T^Z|ZQ%6Ek_s$(=!a~=IK=ZAeSnx;Il8E{(2r_0O@Voo(tR>J@ z$G#tF^PO)W4R#re3eBpsCvS+}zN~tZ{J72yH$qcr3zK~`<#v3>@(5L+Xm<6ccldts z#cjBFigZdlBsSTobhcK>55wZdNH;|^SE;oWt?fu1Q0O&xDXYy-491IBjM;BUVzqSi zPXtZ`ew(G+)fcD6(D!Ft%Vi%FqdFyE1ntwFerVa$W)er zfOsq>)B^weonw-o+69BOPoT}BZ=xvEaGGwYIsUCb$IZ?psQCB;bW0>AM67tp>JTL` zFd({*t;W>y1At7pEVRmxtD&|%*I@byJCVlP`g1Sjd0AqUVl9bj7obAGYmelyn~X)28#wRzJ~93eW0}kV`cAb5(=&@B6{>{MGDzqEXZSU;YX!Zl1P1 z^oc`>zVBIT>Z9lod67&vN3ZkI(Sc!-N-1>r%_t%A z@%}lnv-~s4_!E8o^C(y|0fe|mjVaOs%AJvxfk4<_1acPC9t_||wf{PavEd&{OAzQn z|JPwZu^+NyQ^0|72w;sL#dAM(#862)0DmCUj~HV*GZd8ps5;EpCIpK=SXV#oWe)p6 zG7x|boPmTG50}9@5{le`@TK zF{Z!q5WA*?wFaw(q>hVol$jN``-wES({|hni#-t&_G=0t`%qr1EH&8*st?5a&hE?| zw0)+9f+Z&1MCHr!=yqjaOS!SK(^gONL#Fhq-@5W5#l#1YhW`B$NQ*FW9ATs^k>W5U zzR1M#^dex^rw0ymAKoMC2P9;GXYj00Nf-jC=+7YFPLwW; zB;TK`#Z|mnYiiRhqJN$*;>H9<=sK%v8D_dE9#5;AFe@z8wh>J_3IYb?gyDq71Te z8Gl{_ptv2|G2_#0F&yV2gJqx?4Is=;q4PkwLt>9C z5l1cpI%Z+FOxlKJ1VOoo7P2u3Lc&Hd!VUAUS;0F1f2dS zHCRU?!Vr4|w6P1PQ9{r6GkEFiE~}WH3E+c6m6^4$+TqW2TQx3T29YPao^+XTe9*e{ za{h9hSA~cBy7HTTT>-(0Y|0Z)uz#G2x=xUm=9{2Oj#leejZ%lZ1im>wOO-GUABCPqt->v77m9FVDcS5}-hpstl6-JopdY5VQ1_6MP^vvHEiGg`-Iw6e1!C*-#uik;4J zbNS9aFqmkFnSWAQa`WEJ^XV$MKHcO_r;LtqbV|sl=5;Mm`-Sg$j@ol-17abUK^m%GVss-LeWh7_v zsr{Nye0sBlR>l)`@3^OPbNccgI<&xCC+pVS7xQ|8@gcP6Z2OFnHES<_qi&{8`bQ!k zAUrD|GKHNNg`N|Y1%+)tS?|!Ru25&9$_P~(*&J7lS5F0|R!!(C9}u-xKQD>Qx_R zW9Re~1+xVed|qoXz1Va|-E=rb|H%RDC7_T2G)#hAT)!HWATcAvv2A^iL{Y#XN05{3 zPGHUuch z_R38rn3DLPP93_LNa3++9q^GN@Cn~{IrqDSWitxWZp=Z9hvIvTgbUD*?=V5$cpx$8 zooHzA)wOKS!MJA&x(2=0gflZMCfT*BoJw<_yO(eKF9mm|n7f55jfWe5SO%ZG4b|f< z#)+e*RjTD$y@?W?;itxZU8WlLlZ8Qi*BYF_o)cVo`<9@^v#EAIMawYsn}*+jkRnk-;THK|Lgh!NVH>9P=j% zgia#ZSst@oWWNd}W$=C=FCOsxIfR246^j67ck_LCiDH^{;G9tDOPF%Ypz8-8-$AZ}sgh=Giw&44bYtdI?x1 z4e9tILyF+QYfBm3p^n)vTBqp;#>e6~^n&t0I*{7D>UDkzdW0VtToh#IQB1!gkOj~R zlpAWGwg*PpwxPSjL$w4?xsb(Z_lqQ&O1Nf~ubxe5^3qW(8MUNgs(={Icj!dhFf{Ef)KTTmrtoj7cO(WOD(j$Af8REW5-Yf%Q}T zxx3_wFzJ^rA-@b@_*(+5h*xOt6+X;32KmFFuzA*g-AHg2Ja(&jDAmzlZ$R=aM0>Nr6oZ@Uw3+&iQXdh5AR{mdW*h1jByZjVXrk057HXx>-boEB4{ZbPF4p z9hS-n8s#F2A7-o_dl6*Abq7k;f1L6^W=S>xXZ}3}9rpY8%I4B0R@z+tD@hBhkU09O z?)vj22AQ34Bm*-+PIrsc4k8?Sfw2){3dkIehMG3m18p1R2P->}tvikYG}+UL-U819 z%Re^XJq+Z?GCz5Tj!ATRAFhlW%~cyV;PrZeD^7@a9 zoK_Uo-<=-_61*FXu@2hVF_cznqj-r;r=dN>VM9%ZCvl27!59rTlZtbBZSZf;r9G{e z%5&}owoktBDVkkf{Y>RmfKb08CdhlGAZ3G|FivMgQkiXUyq<)jq@=udo1Kwa&3FsRC26V>sps>q ze2eF5nY!vQNuwyFHII{mZ`QrqK zOI`|=mroJQ96EyB?1p{BW33By&kP5o1_=qp;-9KJT~Bq4zcvoNg^(~-BPOn0-qPG|7+00v*(dO%GuGZE4B8i62N+nuL7e$wo%xz$7=)ON~w+aqu1nY2pU zvU@qY;7VtlS5$!ITTjtc7h;H~g>t^5GMgk8BVZKWKmU%arzxh+EmEsolMq|rdd!oH=2`@^tZ0NHgV6R^8G2a)E`2fw2 z+5c$fMo53ItZ^$z;kaS$$JOvX4Vw0qa%V;f(Q6iyVzz&NIVf|lyyNt%NqP6_sp<^R z1jSC7MtP#rlge64q)Ih3Y)^w(+~QzRzV^43TZOORIP{vQQQRt>H5~f~BwHn`1W279 z$vQZml)21B$eK496h*z8CQU6__UKabtpj6HC~dQ;*-s2(t-|pciM5LbGod$IZ{ApP zFS)mE^Wx7rY%J_gk-O*OzS7a;iv1niJ6J2*MEhFJg=Ueqsm*Z$p(?K$o@ z_LStF>CUgL&&OqcaT&on2M$LQB$e%r<%qc;EK(G2>fL3~WkWL{Y0A*J^xHqL|Ju9v z$;om`m0MF3Pe%n=Qlnlb_}Ne>NA)$dq(sKmIqaYv24WP039r{TDrPzQojF>vO{KG+ zozZ_Ln4!9R-Eh77byIMpduj3bjBW^New8jZGH>YR8qn;8H;cO0*P&Y6-Ic1cE3aB+ zBD|oQ{#Llk>-!%fq}v$|>T}gSnKY%DhE=@!!gCQK3!=El&~F9$KM)&Pa6c*#flqgb zxeNgdNddCIBNY(O5dz-(-KcgbnnNM|H5SKVeZ(4=NLx9Yy>*Mcw4Z*vocSd`#fXhx z)&(~#e!rmW2r&nOq}uUYa!vyogH+hZp9-97T46X!&2g%W?E|`ihy{+&1o=5d0O^U^U4TU9v9X;HqT>S3EqfgYQxw=KI*#x)J(~ez| z=9~?N(V5tdmKE!8ia?k5wN;7fL>?+9oHBX)<(H$uZ-qA$vl@QdOcHrgHfn z6wFW*{wkQsz3s5P{br4OaKwgoPWbZmb;*G>>iXO8SLKb`!w8aS7GcoXfG~*SV2lVL zVDSL7Ew)??cz)zA z(ZPhr%MV=4%0Cf_O`1udq3U}mEih=L+C+Ph17jK-trwJ$sH8%BWA8Fq#QDZG zphO?WF)oID>(mATTUmS#$+|UXzJWU-q%+{hD8?O14jJ+XAcX-bPZ-3&NBK*v3byt?|IO(0QYAWbrj+AY{QUMW2@wm|ameA^INvy?)vy*xfr zZd>O_L9Y6Pkq4Jg3Sg}N*wRNfbR+N$JrTuog1f_vQIQ!g`l}*!@Cr6JDS_m+Pwj6> zQUveu8D_0rI40bu#bbn#*A5#{{Jii5`ce)pdFMKdQP3qSN#W3NsYKV9dW7(|S#edq zyt;WiK<583?P3=F`?mkqrTTF^v(E6#TG9W<*n2=Vk%!&G0o@flNKp_Fu~1YHX;Q_N zVnHGc0hOYHf&>ZDd$Fw25e4bRpag;h5dk3t6d@>eA%;ko-g__V|Cs=;`|kUG=bPgp zlPSq$GUj*ZKKHrz{TmA*=7RlcLIJCN467Ub_u+rwJYVsZU4PwhO^JsrTZL-O)zEAw zRFTS@U4eCglYhD}oEAb>fLp*8qVEcM26ze38%)T?Yc8q?X@&qln2?p*WMM`fh%BTh zfT`3wb5T=Y!7jnqot(3Dw%1)jPawqIoXv44-Tlv2P7_^i$Ek#}=#m{VE`$x)etv!_ z3R)s2Egx7dgb!Lc`t=D7DH!$%&tR7QI@Fz&X8T(o#C&V3f9b4}&>Y%=x1|f_c#2N? zc-#d?)@{8y4IC6D(>jKWE?mwmVesXng#fm(a6JNciXABl^M+}FKP=O37K|8}osGWt z*x66QMhL;CkCZlcfh0xF|8uF)E=qv8h|4L;ABy#tg@a(fL0YmUIVGd0%#RZ=C#K{EQmG3 zP;-%_b1I1bFVCAyPNU;nDqE=XH&ScAl(=-^@}BzxvEdliBSA9?%=_9+#ROmz=fW5B z_T^>PFieu|A!hA}M^3T;*;ISV?!zlzrtUxBF<(wNr(wR0OjUJ8JD)$X-6gq+ z##fy`GB1fK0wjFqvtsqX=)t1~FY-);@G%j*(ks-Z* zHE-lIA*XGAEB3~4Q%-%)pg9@aZsQ_eALBVWXfZW=?9G@7aUV^EBcr9_x@7NQYmRm; zUeQu-*07_zqekS;E0QtAKB#q0F)C=d$;{)8UWr$5hU=V}`K9P!Y=S3#UvG8bOZ6T zsC`Tau3`bz@Ok%l72Mov+@KyqnmLKU95ih&JrTUS+9)$5dsxH4K(!Xv#_iYdpOWyc zM!;*aSGhLL)$$0By?#wo3N}&Q?b%n?k?%BFsn_v>?MmGv({K8HQHO6wZIJ#Qey^t^ zA;N$NemYU+GVL%Ktlo=r&BK$pJDphH&L9To4Vp*A@!r3s>#$9#I z#F=o*R_lrSqIuflv#$wtNblmdJ6$%(O-;$pS?Kype#sL1QbGaSxuPw>!ptpBBs;z! z!4?cE2F+#^yTG-3LA5DS%GUJEEP5mE2g=Q6!ffVp&(~62hf7_UJqI(ZPqa-LYaMAc zrplgcy{$dxnoTxrBY*-f(%QN?B{_QEKSuw2YRnSi9|4;;`ECWEl*%5s38ktsU)*tm z;!Jc|Rx%m>mJmIcN{FvAb@DP^Y}1*lcXjY{miOQzbfg=~ntn4uZ|(Bl+IGt&)^4Ji zQLFV$aZ$>X^L^2NN{7i06sJQn#Xzp8{C4&pi82R)ep-t8U%JigGll2_yp^1`xVHmK zH$A)V*j;{$!^PIkIbrzU)D&gd)oyQgog41CnEfQwKDOZ)sOe+hOavfd)#jBu7Q7tK zbDx*qrLFo6+aoU;Fc4>EzANEkCp4-FQG`X5Y6Z=!%8 z4nTSkv#P+5f*1AbJ}cnE7GW?PLnR@c8r+FIU*QB@m7Y2&c^_z=dd`@*MN^TjmHeyP z;&TgeFTKVhSrUtF&VDi3G(_xiGA5-F3wp7nv_5HN3!^VV``BFFi7_b_PL;1+ZEfd* z{Hw@1xpsv9PIsK6yF$UG=H@q})ck3A<=tXUhD{h^yoqX`4_5FMs8Qhu4pG|SAHkK% zbgV#nMZJBNEhjAP168?7$U`lo?QP;IZhAHJw8>?+&>8o(;t$Fvc;m`+tI^QJVf)C( z!Sf`Ue6_$5a>T>P0bLOyQ)?}bEirZxg$~E$P_YiF5|an{eb-t?>2kybZaYFn zXTA=@Qqq+39@ta7L+Qh?3LoFSo1h<1N_RcOyT*R`1NcPQM&2-6a2wW zsYyww@nc8kuw&)o`3uIMbtE#HZpRt&^*NKeC(|RtNperEOK!W>?7Yc*4<^sJGWYZE z1r7wu{G4`P&_#yh|4hFhbTZ&P#8H2i_LDT^xUf=3{?E3n3;t!C1>gV)J z<0ky-vqY>M*m|{<4Zw?Wb<34~bk~Cn4!$Fn1I)$$2;>lhhv@aN<`;n+3w*H_CnI3X ze|K3}xV={25ctI5^r)6%{sM2^Zew|3$x&Ac%S*#jBXeS7&}Xs4FI#hLM&Vxlgkr9NAjCkEMhmAYiN6&1? z=@|%B+CnchcjsT0`_9=|)2dU^pC<&xUv~EW@b=6D_?;IJu8`k~$PGy^;$}yV0-8g) zfC@tz9#HTIZc#zV=zR8h((%#elo_Zv@zIQ}4k6YQTM(} zG-BEoxK%#wZPn8rc00~%I^umWZBZ#9qqbVrQeenqdMf{Q9$9>PFdj#*4K!^>UK`#a zpcFBHK!F->m+u{6JOXl|=i<+k0!pR%-v$W3w~Q0cW>z^(`As?8dM)R}zaZ!nWRaCn zpNZ5tDv`LQVwNG5NJcm9o#u%i;x#}CJ@y4) zf#}?Ph0d};qlK`qzwkNnvO(PNZtkU`w(pg9+?RE-+`)w@osmEpAQ+m(wGNuIky1mV zodzo|5$$5cqWd4d&cn6Fh~;2gB-3>2yW@PO zu>G=br*d?9@yMJuIm}Q%hB)KEXZ`omiS5Y_M{o&e#imd7DpcfUGL&=BFBm;dX$(yv z6sj*oYRfJtoxl9P@p^S=sS5G4cB#e1ifquJXatN-O#MCeT_o9Kukqx0={~=iyaa(v z7bR``((>3ndUKn5GLuo=YQN)*@H6D6BpP=!S-Z~OzelFZO6m}d)j`&0(*g!!EVa*d zC^a;i(%zbureDg-^bzb{PIt0TlouOuFU**y;KYXpJjYIi$7KxQoo@BZ+0^vX-d?IC zT*8awhv8H)1w~*KG{S7ULmQrXR9#~*ZOE59^w8NEpzmsJpx}~R&dBa zr9eE`3}Vc+&u~f|e=o(Y$(c4^T;9f$UQ#6Vu{2NnTWcgqv+;_6N`xLY*fPbxqr2Yy z%J~l7`I?IXgfY#40yodhd-G53)o!h>=9m+wp|wON2M6ObGrhOEX0}a8Al(M}yJV_I zNW^@)g(V|z@rh#j^;zXU|F_;fy53QBisA!}s^I;RJ1)XIVpF5jJwP~rqN7>x%oJLB zH1pu1Ff?VJu7dDnBunc1>*#2Lx4;V=8AY`RqKtzqq@*79@3d#(>BU6XH_>6nVMzM zt1;w!M9aOW2_Iu#F^u%FAM3xIhpE8FI8_e5bym|6UCL?-r*c2J9YQqjfrOM^@hm%td^6}K~7TWZ% z#JBA+L!;DeOy!e`s8ETp?P<+98i97_6~$7NA?`4`sS((~=s!?9v5rQ6qX5w{tC^^OTX~&? zBVX6h(=^H$+1JUKC@gO4Wtw3`C2uV2EUnUp1hSsPtu6&w&JxY=KL8^@qUd)V2`-pR z-YLCP2=xaO!mPNLeT4D&8Q1!~aJrDPDLngW>9rv+I&4=1mZ+*?n(=mIXi7RybNa3H zP7g)9roqp8Ce7h>=nN=AyWMDu_InV6SRl$)zP*@pK2YC?&|S_uln`w_nC@9MLf#Z6gahW6$JQ%l)wsP**=49Cs3gx>k%M-Qw~Tv5G=8JW z-fdRB=H$Mz3nF@BiRnjv$_S53I}T$B?nmA8{ZrEXJ7g-eGU}sBOe^TMR_bW&+vycw ziAN*t1M;4IEL-h(MNsJfm{R=Nq+ zbEzSvMW(~)3fm@}1pmjGp6o2Y3;V8=LO=RKh)={W-56qkRSY4VW7l&qQm51P8TycC z`Ni*jJ<%@C_^Hj(*{&;rXuij3CA`f9chj*2wNI^cKObRz?p6XQY#=c~s^ zHI^A4DW&`wJ|mzP=-x!2);}Jl>}HT*ChA*}$|fYV1MXH>HwppzS%*-zP>4$|tD+Lb z%bW>u6M2Rh-HJ=inf5P@c>|@K{a@6}kg989Brd1da_(sA2O|vIjd;?Thb|vJ5e^9k zW|fc(#RiEAIfge|(lVk>4Fyn-DvDwWAr{nLsHfgTW%<`h<3tb>RonhHjl{$IYpa>BWR zC?yR*BkU(NvA~UiTdTOT@^ZoLEYg+qpz_U*Gj#C4umBH?y^LxL;j(<9XS`&LacuO? z0-PzufRcmJUp~@(P21sAxz0>QzJ+D2B!1+J1$^$(~ zo+D*S&eMehc1k-cz++tv%+YqZtrLf$Cq$A$UM7Y~T?XNkK(hE@FZ8_ZxNuTyM-mk6 zp+Ni?;S5oar6LFCYTM1c6}`m9Ct3M4uQID&e;@uCpL6=V^ZWNIs%jbaufF z8V6YVjS%b26jSzCbmWZn*kCF(RQ)_Fm2^fHyXFb?Lyt%GhxWnOZeLgVk$SQ6v@dG0 z{cDI!`|=;nxH6UglJW|Q{zL~SHvRJW57cOko!c0fAvuhwV6m?@G_7!aWOrkQ<>P~% zU);geSi)-;(s{am^R|r6*2FQDBHK&J#)YD>Pp9GMSv;|J+Yi+Cs#(LM@qf}L;v!vh zDCjnVwxi8Ms*}6n1Fuu>mdbN-OzXTeO{>mVok@sM#i&|!?P;mA)6V5=(rg6-$K}x( zX|oKw6h*o6uxXz7fw-^==rFtkIDl)zetWp4!BhfCKLk$XF6IJQHNwpO2uE}&dQ*9T z=LvUuj8bz#J4v%y-ysICV(oplQ)aTi`8IBEt7K_yYr6W9XF`yvL+SFK!AoZX%ooE4 z2n3rG)dTMrc4Awy@){JHN~Yo&SNddfz%uY@ph_%_NhuHH_2oq$aGtzh|cG)AS?G z=}y-EOX!Hj%@6xB`fllZw-J*C{hI}(6b0!Fm&;tg-G?O2@?)BR!%sdqWGFlj_61B7 zunFodfP=v8dM^^?h*MxqLRuPO%{txc1DBbg=z{MBZeCIFXV*XpKJjVss@!%n&mfvt zvCftxwt(@rv=)PQ8eaNVOYRzHo>!q11HYNd-Vqv=T>L=p`v^B~r`1e)L(t6xzXgoj zf~?!nmzr)j)5NzG;U_B7{xllW+dhHgo(K};#+NS6-v#JI{1B$w#*0ivmfp4{V< zMeH^pn#yg_NKhcECDYys{i4qkVw0>*GETUMswlbV%oMr3!5PXG4kaHnMUmC(Cp}LnDHzq+%i8ooGlpS{jY*z+E4hIfFw&ZGD9_kFDyrc?4>)GT zi5LyMG32Ik>m7$o0AXnuz2Sc_f^C4S0@U#@tvn3tf#DeSNg|KPMsti(-F=Fzel_=b zS%;7v!|I(4%-TgF-`MMX4(UO|lFaJE)`VU5jhW7F2^|cVcdHoVAHUM8h|fQ~8x!2D z3fWnp+1KgTaH4DRil6oml=4FB5EwI@i>5RgR&PInrPhlaeA}gb#7*%=nRju?$n^|w zg-Mkb#f*D@pf;t#%dJ)oVMaVa2zibyVbv~^l2%#Id0bf`IyyQb@=&I9pz{D!toiHH z-bY9U6%uwwq4@lNQ)gDaSN38ena=CYP(BtsyXL*YgY!_FU%vcSzao{&?>yKV2{F#T ztJ^cd+v@z<1D?1x$9&|wJNRE)(PYlDi`qHtL3o6NS(!A{xc)0~UtPDJjzJ1%zf3Ub z{qk&e_Sa?q!Y*Lsbz@bq4`U;9;yTH)I>%gs6v23zoDm0eG1EL9kbn@JN~kscOqB6u zLsqlFS%+~4j-7=Aa1GR_5Qaky#^Z?l8iL!-S6k-uCwI94T4b2ccnBT}dpGNxv7{)h zXbHX>1YQ?Wf-?jls>pTuQ1maRxav`hC7I^5e3yrNS}dLUj~}0K9`jC}IWm#Z*#E%L zy5y)`kBu!oXz*dNWAg>(TOwHCXZa3klZ09%v_`V+fZCW4JYhq90?vvXFasL`CV?$D zE6(|G7aZ-GjqAZQL%_kkbd=8PsI`e=)Z_$}vet^0AqVZNF*%Z%=>r~GB6mF!K z6MF%HJ^MKj=MTiI3t^(5y%j|9P)6(b=yjo7UpnNF5$9zU(o|qMCD*v>=s2HXnUhZj zN5>I2!9DM0Be6C4e05llTw$McDV|l*k*|V3PUg>R8oHAjoHR+1x2;Y80uW@jP8bNF z1LxR2B0P{E;>!wfeM>qQSfXFiL1>E?X$0xYI%ioHy@s|5oof0xCw_w(WN%QMyPl?L0S1zEn zCC()3jOSt{uXo13(Jp^t?0$PvS!7REW3NRtv(P%i0s8C(#=oQ?Q^DtSPT!rn7YRD8A^Uefl6##q_~K45)yF)Mo+jBv#^P z{!a#vK)}rb#+`f`-ulbNpKdP}YS4yO9QfuFyeH%H+;@Ra0Sc)i z4awxoPB+x+N|629N|S1?+w)tktcQ=>+sR4gvG=t+Uak4Y<83#pkIr2t&vPoLe)6M{ z8$qQ$S?ct*@Z5(bBQFZrLHTsdxl1{FZl!u`rbXnR*y`gFQ-tmfRn|H*JyoKbiwD>D zO+mi)LU2c~2DBO`$(@f_PX$0G(1 zjBLw4Y`$Pdd7ZNc8pNU-M(ieUhS=wk$_gy>M4rZ#ePPBPHRA&f`txv6DS>ueb=r>V zw;$X^Lh1^EgN#a%J$1AC50Jk94O|8b(+c8M5>!tfL9OSvho_b`CT^&5j*lz{$_vNS zl#Fdi2~nif8IlzpcYMJykm+eUWW~GVWuqhO9d@QxHpL9qojimr%3r-CQi|ptnc@oPC~IJAsR98tva0q4Ux!A zI(&EFJ0dKD+MM8e1K!w$A;d+)9PqN9|O}!k*JYWDj23z&ljC4xDpjgRy1$yp1wNby{VNvJJe*0 z8ES6mJxGxO%X*oK=>mSVN_UTf#Y7W21r@z0F;tsTBnNDBJ z6*Ss#{QoB><6d1W@}+53zqa1ALnVBA(YQgBYS-;J6`3d28f-s(u|fPJMI*I?lbSZ@ z*C#=D!cmXd#5&lgKD14VxtS6p7A%$`<2Q_$ZO3T znto}tT(q|)%Fa-U|8SIYh1e*KgI3=aUAAfhu@)n!I5>`>aZEkb{^X1ly#pLfFWGS(-n%=nr_H4#GdPHliQ$(+^%@oO)JJc=Tc?q8?> z@G@JfrVmRI|J;W;{oqUX&n>x5u9gOWE?JxTjT4dL{4#+(gW4}oS7+D%x{RqFT3f-s zJ{l}Kk!Ne943s_KYW!u%niIsz228wybfF=8{5L1&G3;2H>Wk=?l2(OGfHOo(l0!!9 zaQ^9p2&tww)MM0wJoB9|qZ^zO9IC%KCTPkQ&6q6opd}B1JBPwcT2SXyi%w$g1m9q?Tk(-;%A9)&d9o%Mro zKPUu(W31XPGA^)TD96}Z!|r(r(lGX66O*meFHqHp$r>}XD00+^nJHIaXud2CT&i1o zF0(Wb;+q${UM!|T(IsrVhU6)5mX6>C|qV6${4jVJktb$seKD4nh`~BGV-v#e}AUZY* z`R$n5UE`A9S*45kKgt!X_&??p8^m8=Oz<0#phO%Sg`$~Y@m#JW1d-ymB!n8Ro=-rIdoa=DoSv=9Sje$&}kS3c>`>B zn8GCKYF!r4MFHhx8RLftlYA>)0RoG83Z+1(5U#f%{dNB-7XWf*?;|4m<~7*fusu?gM;&RCg?mX>g?l~ifko_@Wu`kxqXL=Mnl@h*jPFi`}5Bem<2#FROo_l%-BV-HTNqmM4g63Gu2kbdnR z@w4Y50@(!(w(%JBL+H~%C(lhnukhtB$cy##Cj2>k!?rp$ z%%GaGEt0)L6I)f6XY5$SY2WHhGQ{>sBTad-b;_NfT8m6aJmsb;(qb&koIa3U54p~1 z7vxsbt<2>zZfQ@Zj2$^~`M8^-_3;!V@A!F!V5o!7JBQZznu-hz7C8LkFN<{LHh0sS z-DXLmh|L*PiGbt)s{k+`ElE<#NMa2@QieIIz;|47$MEsC1C0*3LGfZiF{*cGW2(t- zCh%`3(W-A71PViNFEa*ldf8W$Z61&V#s`l-xJ>3A3FiD{@M&o3rnhiqS#{&w?k{-* z={ry0ie(I+56Bqj8E#DR%zAll&|p;8y9L8%MO3bz|7}R#J~Absh_62(Ei~8PyJB3@ zzklM&!wHAM7<0wizj4mV4 zl7)EKeOLMviFe45@(&80g;Jk!!pEDEx7}Za}D^Gs8eydAqDqF91 zqN;a9C0McViWa4Q?;AI;9{A7<|MfJ6!UufBg^4)}GM-V(lQc_7Tl#(M!`B_Ws?>(* zZ;(PM@IXMWjYS`^ns~ek8M|4LYEQtrn`|gn3`Rx|<3xwl7j1@#-g9*=h3Jbxj(?nA zu@Le9f#Og$Gz?VM2z!FfkI&u=NGrrYPkSPtVB%2z>A9oov-fX(94gDC=LqLbloQa_ zlXF4Kr<5&E0MwdJoxj;1?BpXe&|e~_N}d<%*yCJA?kpU-e5ESjrHu@I4^Nd&q=a`N zHLQ`dPEw&WWM8rVjsAF!6jFRx_Y&4?_tKS)wu+XC%~=ze@#bE_1ZJ6rSHL^#FD-p6 zDni^=)#Lz&i2lLEPR#bZ70)nWCPa~jNyLful@JspQL9d@?7GO<$bwY<06nqwZiQh- zWsjd+YHRM&(=@-i*b`?04HtDMeJ&qYx^(Vau6xX7Y3Ft@``4XO*~Wjxvmsoo}BrJV^gYQt(V2x|>SfbO=)TCLzcil&7wx z1=T@1;&2VZSb##kN`h1MN*L)^lwoBe%$4Qh$B?zZV@a`&bQ1@}=S@|^k9zwIV)6a? zwIn7Cw8EZgGv-9ay|3_4*T9qQaTwWi?IUm7sI_m1s*mUP98h5&G|hCs-EDL1sf!rZ zsqzct=OC##Z2yRqkT*eb>8@g}->uWh+O_CEO3j`auut%Z?35)sB}`9-Xk(u`YBIo# z8#Yc#4S;SDWVe+mH7RqCaJzTHv?qY5c+UH8Nwgrd@eGCx7~ER+}(eIbx;4dku88a)2CbFCh?wovxB&j6qPnYf;EQ$K6^)$Cn+9a!~$ zFh>Bc^!|;mz+wvlKL2xCac^H;%EA55Y8butbFA=2KevI*la&p?9UdkquP~)XNHGSc z|AjVU_67nigRExqM)x+soL?&Z0Z4%4+@K!63QC<}jJgbUOjvbn!|r2qlAs5@wMqd~ z_YnIE%ilS6)oi!ckV2dkjvushu?pJvTlgjSEzRGX#+;*Pj*Js>-EXwyXb#IN#Ks~D z;@Z564Hn;YOO6{&P9y%j_T5Z>-Vfl2K$0mik zc!o>uhW>hX_Kg~9pf_Sh;DO{Aey5n+(mI;$u7n0gp{^h$YG%pmd!OYIhmEcA87}Nu z6rE-3&{L$2>-4}djrJ!M-4H|E+MGK#@Sa$S|W!m!mCXo$7gE!GW9qn#ryQN%K9eUyw-h) zbC%HK^`K2aTD|j>~rTtvRS@wEOdZR+T&!PS*tDoz;O0I-Bj}g! z46nJdwEM|!In{?Bq_bkOxzTOGoU}3L4d=5UXze1~Z;+IG69ElD&z?cqZ1?>OJgiKg zfI2mAuVstzge>c_D1&)gYZjTN?GR!>s{LO2J^hQTrJr>rU3q%3i_x$^2$`3Y;%&D3 z#Qg(RX}Fx-?Kw5hDD$cKE|fPWuM}%A&|2Q&)T6a0nY{Q!*{3cV=i0s<%!Hg(6&=e- z%0+R4<|T!e1C4Ln5(gOL^y*KBk3DIUU&a^GM{hIZhEqWl1X7>>RTKp3Ctx?a)tJ>l zL={B*69b49iXnHHvY^{NH;g_|$xmE5FB41@Er5J_ddUcHO%w|z@s};$YK|GCZ-3I= zZCp|8B0N20KVmXiETeT@1w<8GrJCinW2Q(z=_+^xm!Q^GhslB#M%E26F=)P4&o z!p&J~2HSrbk0ZE}gT6I6))Mz<-)#E=hl(dc9{N5-N5!BZ>f3ms8>S# zy=|khAv5Y!b(*qG=gSDjRQIw5F?tNhl7FB8f$3QF9@ z@$Ps9OUqohME-Hcy38QU)Joc%6GJ&%Gk>6we`$eq-q8iIt;5zZF|v*&b-fXFOeVbfAUcY&_36 z(NX*KsVtRoAZAuMkMk9CTlgc&>bo}k&m%Z={PTo4hm^=*9A2HODzc)5S@*7W%OOiy z{h0OBwJla2S^ZPf{^u*90?ZJe;Xf0CGS((mM0>L~!P_$3=HdC;jz4?cR+m8Q5!1|I z_33_m60$RLywH;WpOBmVaFU`C3r?2xz=XmOjhHqe%X&Wvsw~A<$b<$PvfWTOmr#nh zw%xSX$<#uYB8)>Tbes#x|1x|z*}Bp$KY_>Q2g=-<3>kjM^%@0^_2g(y7c|C_!#ntT z29AI$WrYo`CasSyfTLp&R(c^)Xk6U^^qfB zhq{;UBQUkX>|YPEU}m+9==*pF8^}ohKdWU(?-{(pj*Jyb_vjzzo?CX-NNDJ*dkL84 zqzxy8N?Tj>A{O!3@*AeR%`0LyG`Cqmq#}smIlvWb<9l!e`-t{6VNQx z1u--t++GhxP{4_B=&onI0Ou>Z7tacMVgO+J;p-D1-B`9udj^uG93kZ4ZRTaLjXO3FQHSBCYv{hvuPW1R21f&_z#6)CY1O$#8#hzx z+-s6!p1UL1=?~oQJu;@L9MY>f+hdeX^pdESxaS}Q*TxpKEXcQY)zsO6AcTZrL`6Mh zDpWITki4yBaW2^?TY$^St#vs5rKP*GOpB2$8Ewgj+yXP4tHf$5@Sn@;^oC5+zwPRu znsl*k9UdsR)_q)gekn|+nzH@b0Fpgpg(Q%v%hZ~1Jn%bt1`rGAr$ETe0!apHAR+_k z1D`Pox$gGkLGQ!z7sns!;SdeIVfTJDZXo$!37F-=cHDt8_xftHiuub$>U+j#PF}r; zbn-x1=r_b(@bO)|?`M0pr~tebQP?V~-poyV-4qy-7Oxx6yF7+V;3Ty*#v50=5bKG0{!vP;HwT^V{KU8|}{wI!51i|f~}gg(zQ zrb*Z7I|L-ZHVj-Wijj!;}H;9T>G^z;k^PkW8{_^{I z6VF+r+`MFCtjk*+7qV%P_i%rr?UTQk!gaDZ8zwW85T__{U(s!vLf}QYCP)fVCni1H zgpfD7pSVwUS#)&ac10goc#5BuFe%8mlB1jwlYGV!J7PeD#;=1SyX>xHX)HMzk)%>m zOUz@g_$ljlEGKTUbt7wP=4b?vzvT7G%;sXda1f8dzeu>~h29%Skhh2php=g-YYR(( z<4yDMWpm%6E5E5pTe6|$_`JSZoXfXg57kY88G z6v(GOUw0G6>cgmYr#~V-1vh1Uw{Ny@k#dgPLa9{jdtF+RgBgMko~&*CTuZxFG$h*o zOEzY(Gr*iTxsQSxU!A7Sy(%dHu*IkwsN=Loru{jPi1Cj@7FoTKMO>-eW~z0gHJP_~6i z(}khd_9xO^HWB8nmSqgQ} zHil;1bp`=xk&T`w3aBG_Mr61@X@o>jpZd^<#k#USX=f$A@kYf&%?^e6>MuW=4O|Cv zeUXSCro6hvPVHBRcmz-i31*8kvh!bho}Dj`d{M1&@xwFs;KuUnh3?oG@qo1WgV7DV zRc4+3C3X+VdB(>0n64BBFfllHgPH2b3zshnrp=q+x(q}#>#x8(4>?T;c!gyMq}#Af zW6^Gy;Y?EbGGk71-y6X-rnBu(o^Y$Qet{Rp&^e#z1YZB;xi_->{2n~8u#R)C%)Qn{ zl?}ML;6Ux3t$o*Toat_dm=cQLZqDg>+v*E2F^mgg4PpAJU0O8--5}6J&U)_fRR6=K zJ~mg9*5;4dI$>=I3EJY3M>uk7m@F1#7l3yw+^r!mz?@j|Z%3PF!?hjD`8;2y#T^KC z96QxeS}m(yzA?pkvGsV|fe}%pKRqM?S4iD4N;8-?t7md_%)NhMqE=rIj!O-RpZ@ps z+vlw(5gY;oe{|iSHzKY!DXjlx3%J2&S>c-276O5F9>Gulo;cJ1PW^ZK*M|SD5rQfS z5DZMKBo*k-)?y6TXsiECxs5`YE)YI5yWwEi1sJuTdH78I5yFcyxiZ*_1$mi`-KkyC ze*V!N95wpx%@Ng3)uw(>Y`wNE-pN+yK*7NtJ9LW2#yFvr_<{Gscwu4Ts+-3^d!TY5tjkVl9)LP%2p(+V|b3<*Jyzkp8 znp%Sg7?M{zoZp??4=4M7@vRaQ-3tZ||I`WZAet!5g_Y(skZl2y&`?jk6M@u1*8}7M z40cf~v&BwjNYE^5(a1X|vsTbWHa0fGK{1~!kijQQCFte=oh(XLA28v3>A5vnzfAZ3 z8yQ397^y@F{Cp)xV^H;o9Vy<#t{0mQV#5OiM_K~I%XD)pg8l~dwwhWPu>byDA&7=V zv}RB${1fTx0+G^qEj@pMP{T0I%Quwvh@dpp5sa@0G&OL_KF$80BP2IiGi&^c#l5O>5O1%C;%**PwdeTjI?>!O2M+TN? zDPEzL$}QU_p*jkEdFoK#KI;bxcA(VQcf7b0h7Sahhc-)2|b{x7jovJWvxCzo-9v#gTn}_E?6Y`N8VKz@7WfJ;l+u z>-3?9re2!CO;_*I?oh78Na1a4u$~{K>BAt1~j+H+c(`=~s>HB>F`~r`S)*Bz&rW8)@c= zPF(1kEYJGDzfNSb)_BPz&}La-T$P5A?Qpf+bSSygxLCa#BanqzAeniX99p(i@X#>C zPI{^a38WiK9&y7sN<&7~wJLHLi`fgZHm;_Y&ZHVA9a5r4?Zk4Zm6nZ8fzz}HWqWwu82{3q zd-9<^@8%BCtt0MmXlqXq8K0oTZc4eGv(njVOp{2Fw0)P|nnS9|q@WYzoUnr~a#@t$ zRvWT5`5qQ!%|(uaXXBd4>ak{+nrGsKb%~ERI0bbApf)-nYbeDrWK8X|PiQ1`X(eX# zd#aQwQATUh02E=eGYt**QC(^GT&nVH)qVbKONfyJ)tZ~zl{n8so&2F&Y@>`Q!Pt~) zlPa>*57droV+q}!s4jtmb4_+z;uXlUM)3vtgzH6MP#N#3Bzu0***fI1rLl*?xcAo& zmF2ai)ap|5&aBrXH0QD=H;jheOZ2nJ%BO>Q`ZV~ykDr_7hX0>==PN|`z)m;8%Iz?J zI%`QXViJ{_#14#$0y_lo3Na%Ak#gZrlPF-Iz%u}l8fda^;sO7x@KGwJ6K^$J|FWOf z_P~DAc6T34NR*dXyV7;1I7AjjNU{i$~rE^&!oARF+IqE|A8Z0 zd4KVM^$^op%Ce9*kqww_Byr=_)`mc79nA@hbWM?S2Kupz)i+Z@-gxo05)mn5>pG?p zK!A^_W_BzQYxKPG3}m zhp>CI&WTcw7r{-IUFi@H-MD1qW{aA48O-k|b(>=wxG}XS9wZ(fNVpl*^eucLd722N zOr#bFK|#O@UHA(i5{SeUlKw`eep2&Am?Ge@pt(T(!j97%YRFxAD#CXi7Q!Qd0*nB_ znhW8<;Dh!H$~JjS>yj@L8uDHgehi6m(=&_>Ux>x=MwNIdOez!nUA?7v1I)E=rYB!t zEQmMy5S!O(^cOe7AS$1adDGEjI9S_FZ?EZD!pc|&pWpd=?cBKu={anjYP(4C&L%T6 zvx6cR6Qqt#p`Vv_B46{WFTm%=GQdq8hLa3`MPVUg$t306Vv;9=R&}h!LZ6p}E@hXB zOeyrZSxJ>#`vL)sZmupK5lae*21TZZ0u^>a#Yu3jq!*#FYL; zpzs7N9ihXR5+Ob9Y>7T%qWaLeY?6(c9GMes@Rl{c@xi!Df?ja@q0-KM^ilcgl*4+;*sd#2(rPV&Nl$U39OUim zc*^t0TvhJj6C@AFV6cuD{g7tX@a^I)XF=n=^){aYB>*he6hg5eR_&1M$u!CYz0~Q{ zB)~tya1?$*tR<)Mr;icAhH*Wfd3AS+na!&$WW;22RLkpkl$@EzR*USeD= z_;e@g8wMX{Gw1!TEnxNS?@yPA53_jbk<*mkUAu88#Q#=*y1SIy5L2s_fAqB_-#6LX z(sX*hKw=AZWcT#f$|D}HGX-Kz3Jx9=Hgodt+QE?j$||jlFj}BXLL8hxAbxT`2d(f_ z{D_3!LtN&cpNBkjVhZ+EHFl3&+fB>qo6og$_c%`HTlA{kZT=n-8g1?4Z*^6nuQTcd zakr*iT*RQw^xlITWTRLbG4WiXELyw7S6ZA3Vay1``gcaN1}M@a%-DR{9=}4|Oxc9? z$sXPTG}lWtxXhr;2z71?%zfW)R~M#+ZK)I0(|I47)qW3qBz~VYhyU-JC@WsyRFK?O zg*|7vZ1xezaV*?tLay9uFz_bPjTjlmd3{4|82X^H1#x5@Qu}o{gP`_)zlghd1Y@&1 zxW!B4iy`EZ&D2SkC}&leW{O3PWRw{>7kQMvc8H+J3?s6d+rvx2t?8;YH!>_6Ya(xc z6BqeQf05VXR@vaeXuIoEm>Z%(+z=t?%kr4IN9n`#yu1e2}X ziz?*smK1S=7-bVD!99667&0L`Q!21@cQ=jmajz>LeShkrD z?Km@@=O;l6wI%0_nhXaQn5kSgvt;D#8PpyhuA3%pE>&vvD<7lbz4UsfJLfF}T;*vF z4qWBaLo~GfkrS2u@24~0`|!B*Q#zEJizr32nspexngkacttVaOLryXY2Rr7qEyO~w z6urSg_hOcbI5T@g5p8oBpKA1S-EvFl-;#ohy39akW<%a4UvVa<2sX}Y+=yly`xrh7 zP-lp5hYP)S;KUGqc z8H%^vTIN9MoDC)G_|4Qt{yh`*cJA2Z;jT-;I8!M4*W@Sew{vJAiKbxVLm~oYO-Z5z zSl>izRX_5Fd#2 zm4%#E>gG8uQ8UAG@RT}FA`_-q*NK( z&i2VLI@9=OiYm5mw4CIIzcG&;sT%3CBlS3#T6E=iTdT;nP@GA+0uIveXD(ae%L?~t z$dv1!nxr_j)mj`(qozlSPtq}ZLy;rx>*viF_m@>3=FnQx#m$>>hG`3K+@&t_(`AYp zQjOc6PH0c}Nmf_KBqxu&SPU##-juLC3}5Os;#7OYA@kE7X9c`K7RenN@_?1Oi=1pg z5=co5ewBZR=Dur8oB_ev&`U21QU;J|LzeJLj~Y-kOt%-!vrKXG)|1E&w3IWQJWIMn z);7eBNNZGxgwv!}8GgcFZi&3qK8xD`V4AZ8)tjGcE4XLF6z+X9?bbv;um1y25?(?v5>M=o}+RWV0PLx zCG_Fjhql(QiQeMM)5C-G&!a~i>JZ$+v?E$~6Av<*H45c!5a^^rP~*}zR#MJU9mKnicu>DcyUruz+lGgrqpw^(hFH!m_eK)OY$Rg8O|0Y8*{xZE_%oyLwk0m)ibWaN~ z=Xo4(umHc$m>eIg|0PF*sCtAWh2mw;z!*$-PRsQNhy|FNhXo!*pv?bSa@+9RV3D?4 zBW;^vpZT3w{~jX(87=5gU9R8Ri$D5sAJ5g*QrTAZyLi+lIM}smBSy+ZT6;R|IOp!V zdtiT#_`fA^SmukHB{IrMW0bLPTt%whcB z3xVa^L44EEkhSq}>5$@<+xE9L&$9ly36$WFYAZ~lG4E26up3i#hf z-(Q~oy8y?EdLsUEW%bXkQkjSXc44+nA;qc{C(6~QOz{wknZ>f^Cl2l3P?I|?guD%M zZTlkMzA)l64&aKZGTIa(J{TYtLwFXhDW>1Ci*f^UTIkAsu?hP&=veZWRhqSXQ!G1a z)QgPcr<5GK5Mm|H1*Zr8;o?2oN2G$jQVTl$s3y3A!F&@8ok}Day6H3N71kAO0Q4s{@leuMEb;sW$$u_I&> zpalqR`6!&qCI!F>cqY(PYy9B`f*;gsKO2kk{cCE1a+m=7TMUcL2*H;~)ysLPCC*qr zL!-$e+L4$>s{WLcVU>@|5P5y=jeo$iK5>8iOA%wG2R!;W%xMli<&fxN-eHYvhTi(5 z%C?c4{>?eP$6NY^;lzQ=C>6v_8%5zS7>Yx5O8__;F{4`$fi-mZGo8kTd|^XG$sOPe z9+c~Xfw@t0&tU9sY6QSke9U3AE|0=lD9x8{T1V=<(3o z%Sa#E=_&jzxi+&AR|k8iILun;d6wt;vd&k|nML{MJC7JE_7Y#@Q^i7Vx+x#*xo907 zS$8z+<_Bt?S%S2-wTX!nTEU9c5;GX>-jd^&jS~xfQ<&D>_2nkqVHW4xSS&=W{a8`>DIFYk5)9?3D{#0^1=$`N$*$Cz9!#gN!zpCUJ8Z% z{ep0+n)tn&D5i@053WC1z+!P%<#8B*eo=R`aTp+?TSQ_D`C{>jV>Sh8IXd}KF)h@g z^oJQ*L+b91F0XkLsJ&p_&_ti`40X#+9@9%vvFn*G64Rb=cXQ?Sl81ix^2RYnrBRfg zYE1v~MBmMMlF|2WH?K@g$M7tf8?B=H7W!iz)vNr;boYT)rN5c*;{tM%Cl|napGow? zQLqmrD34PF4~>7<;pU>vJvc!di4-|qKO!~Z)F04APeh-(QQ|Q5q?jAs8qe+Mk@Ln> zxPzngb%ar9F(1+teXBp-)GL%af60w3*A*HaDr;_O!{{tfs(VheZDe0pA56ye;u za|D?El+>wn9Zw}&DxeF#pX6VTH;-g&Z&BrMxAQ!ceRXvH35O15&pB%oi`FJrL-il1 z^b?zVqFY}4Kfb;LtcmPEf*d8F97+Kdyk>tGRdUooR&WD%i9oL_UAi)XHAGyM`Z5P7*10;s8X`F?Zeg*Zf zFA!*Ob08rMh;L+`M&8o6-t5R+j+rwnBE80dHBK5wWd3<33rv$t0NS8}BcLX*jRswJA(u7A?eVud>$Y)W$nH zxOZ1bie~+i2*9GG-_w3c3I%RO;J;x2p@(BIz(=7g^fUJ5z1~yJgud=6D}z(o`YGlK zI+M!0gvByoqc~G*4|wVVX|f)bCnUH~mhP>r{iK(}X1`0om}E~0sP9~@7p&9v_Rr$% z4)%*$tN*af+sEcnNA7>!={8_BCzkilV$f(M#CZ6bKjv3ze5HEXInd|b zHa0<;^F0sg&Yrl9w&lBx%Chbjn|cr-s<}2lULrTL9RT3)4}pvO!_R0MqWOkG0Rrjw zBqVAF&uc^%CIi)UdIu1P`+(7Ro#rijab(vq+C&im*cRartTR5nzdL#Az`iQD)Aa;J zn^UFIR9}UVL2MW<4W^|wPz548E%aFGjqg*sA ze5J3T7|q`(Qd4%@-tmqNkg3P44BV3&5AgzapqmW5{#0Ygb=PtzDFB#(0G$bH8?B7I>T5wTXd5~T@1K_OyyBVJqimdD;Mq}r z4Y6^YKdCf_K2VgRNtTcloLu7#6`rx^(=DlZXZyq{qdOi$a_rpool419HtW-0jTm?g zrM;|GP^lfIt56jHFGI#V z7L9hT34h=H&YfZ@^CC#|ArHq%S2ghqH1rbEMD(a{;!Q8(1KNx0cvQ2VFfDuOLo}is3lk&an zi0e&UD5eL9^MeuoFuiB;P2B4E_updP^S|LvOL_4i?OdY8x3m5DVY@}jY2P1reJ%a4 z8{Y4~ZQD_&_X#Dl`_OiLtp%=^tsOKo0ala;1-v%j*&U~m>NFGLi!>Z$I3b=8WcQIP za3`I7wp$D42XFJJo%`U)egyHA9CeGJ8=vKOP9?FV4-eXFFdMlO%p_!7f-t`h^L44; zvGye@Xg1el2p_Zt_`8oyRvc2eJx_kTxnYZrUbws5V>0PD#gf{HL=<`Hofj+eXNW&T04c4*!XklF=%;Y*4b&*?M2^S}e_87)POeJ|fp z9#lyhKxI!O7;MN@|D8Qai{`6A9{Y*FGyR$!8jr8lbMn38z{U2)cngyvNXvI{{S5Lf zuEu1m>ZNlz{+_OS8&WJw1AUOh?T9|d zzB32Xd_a2)mJZx4(L-;9kS8lx6Th;npJhZ0qxctRKiSU|cC0tk%{#8PtYeMQ6%-&j z%srVQ8}4!stM-#PF54*}*FMSBu~J1C2b9{j1_(amMc4VR6zV&E4XI{B%Y#-L;OzcW z!%&w_knk}uD*VV%h0yQOJn#6YVy9e%Rp~QhnVM~In3ODOs|W%~4Qn^Ya#^_3utaXc zVzFT3;ZHX+#6I5-GS5C$kdjr~S8udVH|UhFW1!L<@4HCWOzaT`&6=ZU-h%()$Ud#- z+reH#rpf*l$Fuu3B*%ja%h4n*Pz>A)qPp?-LO~=LoIKYxTL>Ozxu|7# z+bUlgUKyU#H2y+BNnC;q=_A{2oqZ13oHT?gg6r`?6djHMT?(BE%S>>?l2hN5llf%- zaBV9cOB!i59n_sB-He%|sdu}vwj(ZH;?E}dr<&Og8k=`g9SiOSkZ zJP5czzZVQT`0mrNF_4n&(K{nu-q>ez*f5o8%HFx#y=~1a?3I>M!WHKQb{Fqg7rO8B zpX!;anD;m~nxKVbqniYKT%M16R8If6Gpbpc&x7L4XR*os^fNXDQ!}%h`Y`vFvOA~T zgvRk&mGWbA_;Wly zdxL0yQ1WD92`*DJ<(x55a31KAaWX)c{PN?Fw7$rAkWJi7JzKZUfQrX)^AJN<*+U=x z%Iv+8b+=eo*7{cMszvf#CAPWW)q5>;(5gVROmuK8-p$i?eBAS7s{0X|iv_&mdv~|N zkLP|z+b&pYS`aD{2}Z_w4!W>sVqNtoZ)=M5qPS9HA=Yn zuCjw;@JnO(L(f!JHXHxjLL}FsW1TF^z(<-$8lv7A8Dw9mZs*!u^Kk%wp=sh~2IGg% z`Cae-Y5Ieq^3QJ6et!1--xX;eCC1}Ju5p=Z<)~Q7{&7`7GAid^H7+VDegQ@Q>i|-` zc&r?r;s3R5J@UUE`94bu0Z)9*LZ@LyXq6N%UfinuB~R+uSHfkQ>97SIL2cWP#0HLB z-+lWC*q;bRGtGv8KVVa!OkL7^khn$S7B(5Ncy|0w^{hs_VIK311{yk2$bcYr=uwg_ z#1spbNV@6)Gr*#GFX{cbEAoAFos`*mun^7q}b=+oX-?3E7xd8T=RnP3_o|a zN$8$-kQ-UlBYFXYmpV%z8n2tqIcKWA8;W*P%@F8pThwl7YVR9NP4X6g6-6ZLNS`Hs z?4@#bWA85pliz`_=ztIeGJyJz7EwX`CjP!#rVeBUA-)uVkRW5(eUg3K&xi#CA)vZz zJ5D3{UotWiHm=zsWu9kQ2_!0r16t{lG&7@fIvSsJ2PX@r9*U2;r+?BNo61Sn8qk&D z8L+HrW_30Yw3)el>yN@mlaP!)9G24YCJ_lXeW!rt<~c0hZ3|MDuO@=bQ}NuR3AGc0 znFxo`6SD7+JFj~--stiP)`E=135|Nv0uGYU@8NZk6m)shT1Y{E`e&woQr)}r20>gz zI#t1TBxOf4u+R!pO3DRsEWTBK0GIx6ObGHWLY4wdEEWr}PJZ6Pnb1(i zfk{9O?Unt_g8}qkFBx_{Ms%^n;Vlo6Fh1@My=WnM27#3T1VigK4Osl(77a9O`|&t% zpKa3!Yq4RrD(ti=er*3ME`RDK-b?l4a?bRk>e~WUtS*tK4eX2 z@F91l*0#*Z5Y3g43_C}FY6SJvXOVSdJXhZ({Pr}?-FMfP)dU6#MxU!7iO?G-!5#DfT6LVT_xYHxJQl$I1MnRnq|e* z=~s8g5-qw@L>oY?tdIORYPqaCFyQ$;W45H%`j~63CtEp-4K3@fI-9sxnigHX_b5$@ zTbqAQk+siCpR4U%+U}gfryta#pQ^ILp=(GMe0eJ^^q_$ezwcY5eii-Z$_}I#|M!2uWH%o2To)B+H#_m7~j)o5f?6 zffd>GzKkiI07f{OR<`;+I@9==LXGh;2OY{_g68yM=aSbkZ9A-xodbTcU^FC5Jw~4Q za$IqTZnBna@181WcZr6c43*VnDq*TysSOFETm;!$u(~bw!5baiQb_EGk?hnRpetaE zkJY)?EZR-d8dVi(W~v1=F$hw{q_B%t8$zyfoi@Up&~WDR^i+t9rhR$Q&(&S*7JoE{JNaqHCG;;_R2r{Ftq>E&@K2 z6XfPUR}&T+N((y$B*(L7x&pa|k|S4!*Rxr&NCnAb@Y@{t9H{;-(fGZ=D+7@duqAeU zn%rb>7h~4y?q1@R&@i;L?zR`UOAEGFeP?QsQFo}qgwtJ6!XO3H*qYu{Kf{-IRj|-d zb2Q#JNchuO1V~{Vcbj^Ptsabu_D!MIoG|rk&Ev+(Ol}zN5mzxIheR;B$rzR5G7hc; zyQbWqmmXq8pYxJEsV6D+b_QROH`NX(Uyqp#O}lQLv2NTsPVC4%6QWxbz8f+W^Eeq@ zRao95FR1>B+XH>{6z-xJ(-6J1Er%2US^0k2ju;&@=n6tz1db^_S*0~XGudj%HeYef zD~t(%I+Cub&&ekZHiB$*>N35LeXOu6Lx?8U7Ua0C2iIl%tu=%(985#mjSxAWjZBI1 zA1wvpwCB1;v7v%V@HM}+bUx!g@!fB2wZxaIADgIjvz8%2>aPZ;+GDlrgjSy@i>q1G ziE~&NnRgyG?Q`DwGnj$2fDjNI_`^!WGSjRWL~~+?MukYc?A;JmuhzFDk@e^S_0YDI z*SE6BN)vz8WrSJ0vkVTlZT(3w5X7n5%O^*15dKeb1gn(tD~}lm`L-nio^1D zpSy4tSbR-h|5~9hF0F~$tB?OU^7QJ0dvo2vdbI|Ok}%%5yoBllXF)t#NMI4}8e~I? z$hO^|J=+dXmCdPouEb}NvDd{~c}F}&#=W_*>hX=wNn!<04qZp;ZNXS}?E;!3Se&oh zo?UC6tD>-$jCU0J_@#3P4)69K@=r<|v8y#5*VLg8=x7$yQq-t+l{k07ImtEDT z?~pP7?1WFdXg2?MyN+UhrCf%(r@ue&LtqQSBw?q&q`G~HTS5J#yt8DAncK6l3gYtC~vEg{!z2!Yh$FZAHQQD{)7oD(<^8nfsgjn>|NT z>`gBOG94cg7Fe?^;QW*fqPj+82kTPZC{nSmaCPT|eX*94!TM~;f&ojrfww=Rsdf?a z-7bP>=L^Eu2MNQ`sEZJ0<{dnV5Kltla)>C0(8ZH~C|*|p(-4^x0+HGG`2gHg5Wd?B z7VpkkI>4puI;s$v-kmK=NU&0|w5zp5VoQ?blkTxOPpTY*7sW?-ucJ!tyYW~6yU{0jNjWpC2PhZ> z^9=ukw#lmpC?HYZc?k*2!MV4fIXgqo?2Ny90gT0M>{q#v7!V+a5$dJiQRC8hfwyGp zNXU(e)$VX__u@zrystG4zn-KZ5TOMJLL3GInp0jP!*=9uQ(@p4cAsSkgj-X8mnom-Q5)2csx}^p-z)> zB%87R0Ho_940)c|a2>R2P4jC_ne)xE$11t3&l_~5?s-<*8`}z*IS$fdRgWk5+{cci-D z9|_`YKX~B1miDff|A2fDtO;`TH04atX|N2EelM~d@Jt|UOPBk5>dzBn=~z<3MORkT zqse`)ao(wN>Son04>=x{ue$Ld0!ecpqk(9%$t+MsT!4S==@Vy{?!^vXk`BqGL%%vW zIx6`1X0Df!v4L#Fg!NsD)UA0|dhC>rDP~H^Z*j#asLARg7z1D$!|#{*7FCe4puxpm z#}NfBjwlGE`JY}^9uR*7nB-Rf`F#t%u_=IIt_-6rT^-FMHfe8GH*0lcGCV#k!fZL3G-re!Da1Veo~>>F(lU2Ex05l z#on!1GK6(dXFHeOG%sWJb1$E&;8L=xEO5UBPB$>dGspVl5=JT0l*XF%oYZ8-j*SLIhp(kkyU=MB~3Si(EL0FGa$()0|f1?M7XsW^hPX+|J5?6kta+M5lq!@Vj%E6!+YU99e;9 zw(Esr!bI*=9l!BFPl0#KCgR4Jr~3FpVLHJTw5d$v;bf7zWd!(r5nMiC_=1}YiKO{Z zxOouCUexs5-1)yujjKu3U2eIX;hNPPHT>7ah6XiMq*e;*B;7UbGUHu8d;Gqz7A=nN zE!1_RcBJ6OsFBG)@2lpch=ezbIz+E7B2Dj8jc(nbt3leZV#AlMrd!4QF z3WOg!lcUL+RPp`k!%BQ=q3Roh8mZ4XGsg-9OUVXdUTMqbluZHW)EBe8lNew3JYylT z)BzG>Yn?LZTtf_J_;kZ|7k$7gT@E0ssQlKx>RCTwIo6hBrf+KYyjAYCtK*1U(fNeH zaKEe>HGenHj$YpB)NNoursphk^y9ssh&fPjQnqayRcOd#ptj{GioNbg;UZW^HN}_% z>7eh3@6&1=&LR$DSbU>1Db}G}q=Js_k@6YfH9HMPFWA5kFa;iNc)spZq#?Q-6HYAq z_dZ@^sq4U*4vyP0Oixg%$&~3N&d9yPvZ4G_hpOtW=MCD4FER#Xu1a|6WPqrhg7SII zj7|_3v5Y36C)-_5b_T1u-gG_gj5o$RMvsBa5BM~Ho{x3n%2Cl!xOHSX7$Xdpr?nvt zo!%-m6P<6=@WEK1b~DPC#x68h;e!W{@hd|EzF1b(6YG@Fg6!r1|voGv_#bQ zvWEfZS_woc4-1#(>GQ{L@$-JNQI>9&KIqOUxL^t#ad@r0pT+jpKs z$grg4s-b>|UbpNx&<)igD4nM-Nzk8)Op>YZG4Ab;NcA+_DRiand&2;X{K)V`Pr7XB>NW zX`Asi(`%I}U#pEme;_Qq5TVTv=V??1e$okN+I| z^68ESybb=(Ueq>}<}olG{(D36n*Q1T?JV4hIHX}ioKm#y8>bTDzk&@OtlMZPcDUf?GOA1A;)b9t-wyLolrPK8vueJ+UC~}t~k^~I>ZEn50{Rx=;EC@eqC;=k18*> zD{OO7)4jQ^QuuYo5r&wQX#eC#9|Zl&YSk_*9z&?$mE&228Ks|tG;@Jr=VpDcUG&1_ z{aNK}&nOc0{4C{l9rrs0G|-=VNUC(r^=`?p+Hjd|1e<-a6}6YDG@LSFeG7GXdOCa zF?L>bJXm?6JF8ZcP0_xExH3@Nev?$JF5Q6PbJ8B6NX1uTs#`c2NCT{dEKU_K=iTVu z{--uid)MhdySHlOq7YujBor8zzaIsK3>0Me198$8JvXAGfvV0%{jX-orK6V+{%k~a z?3AXwkR9IH9Lv`z_tLS!Fi*^CQdwFtrq+o7Y*XW1^%?XC1*CEBy}DS(3fZcb?y9D) z%^=N{SFOdCj1{8fcD@S0jHf$^U&#kP@-zOzG7rL0j+txXWR+W;3HpURg@TkuR%dr^ zOE!OfWA5k@X^GCv(ZyPMk1EKU9kE(%P0h)upXeo%)TND{)hxDNz-nantlSU2{;BZd zKA;Ui-O&SbC|GBRL7sW!kFX?h?e+ha{nuxRU&pK`mLnDHlAL z?K>x_uI-Gv`4n{4jUxZ_co7P#o?GXMBr2VjmB+AnM23Kq6(y&E`D{(@)JbuO3s+(AcX(scN>y&9YId{^$RE+w(pEEK=;t&Z z6iaKa8dqo-bR2l17ZmU6%rihDB^1(qeu@nkC~ToLY$K7%n{YAP7%#u8Vc1~s1s)CORN2i*K3wC3m+9? z(W$pll;ZiEpv(J4Dk!E>1fgRBLdjpiO7-dB`e_>tKXW&cZ|7b-U!c3BlR*FH&Xh$t zRY=*-(d9|QivY=YSxyouDGe80Vy1F|WF4DZcf3NR_LgAH(RJm4!v}k(@f* zxz_FTz*?Sd*kG5%XZ~`rtSGtEK07Y^1c!0@5VqJ_`Mt#O{){I>xEv`$Go735f_ni)#@clJl`u$X$h}^4HkOBoX*Ri2lkK3}3T_GFSiB!t zEDP_f5$tC=gIMP8t-pJB!83d)e)=C#H3~N^%Q>lN*YZ>!OWlCQhnd~I78y%~*50=n&jTIR>Um_i3&-X<8eUGI+$%r zUMMHq3TxHV9oc;3!cp2=U38*-Q3{umvFzkngOAsAqiWhshBeb^YtpqX!+GnS3+kMm zR7OUE=!QJ!9^T*Vdrma75=>2TXoxo=WZiqOb^XS68fn$QA3TVY6$!0wuM`2C{$JM2 zDXi@l{C5nS!1Ly85id&l9DK-9jF&8N1GJr6-sTP%u87sV8gv06(I`M2qJ#bMmPRIF zzlKz|clPC0_QV-m|BdpU)Ru2fVV9h5=*%2XE@y6Vzgd-HHt&gL@Jih%qeGo$e)rVW63(RXy2sTI*nrrm2Q|6mxgmXcAxa4W1RAH;;v3wM5Pp52v*J{ zT9b)j-9_UEL3WNi*j~8g=LRj{92;p=Xw}kWLOaM66aLa5-s-4Gy@KZ`bjx4SZjfAW zko219##?xv;6SJjl0>P)k-$l0;h&TV7Z|a%5!9Mb2Ru#SHV%v@x^&x$$>xYV)n}0c z9$Hu%j%TO`sLB%5LQmm6@{9}0tF0RGcbfVo*KQstbPdRPETSX~#MjY{EK|drf$~TB zCYkF8@_VMNnV;Ng$B~`JR(Wl!V{Hw`OQJwM_v~WusShcXn7biQqC)uQ`s&vkVhJ(* zD=~Ar!%miQZXCB2>=f<>nk4>>I!G*RC|NsryuQ=V(ykjF7x*{I@;JpvWOUw%;6J*Y zE#qPz?J_AIL5wY4N_E20Wz zcIEkEl0pM>+k$24nD&~wtn=?9%RJ+Yh4Ch3Gs2HMWU?m`EJyVum)#>|CH2HdKj!Ej zT9D~?!+|~7e*S!?Xh()qT8VM2Korp{Xw5!QrjkAi5E_UfO?T^(SrpBDgVlr>YJYFg zjQfhWd5rgxOP5?^Lgk`1=utVx$CfNREzC}?4s^}1O7~3Wt%%Rh_er?*Mvq{5LKF&f zi}Yt1xej-+9uElZ3prHY?fKFw3cKOhYGS4?>*m%g(9qYze=EZ+OQmS8L~v5awza+a zZ`5pQuT+pPWX+gyT|}rcx22r{r_3$} zR(|VKaqHKXod*n@M`O@#rmkg`_tY7j@T%{U(pnE4s5g!)$7ND*X4Fs1YUr~Q2gu8j z17xRi&vxoq)I`+4VQuTrhKQg&yvvolx`!KN7^-)em`t}&nen{}T^WW2R_8xgs%!>% zXR<}=Vj(+`IYv}1_0MI2BU4TsY=vrm3+j>00ohVP?-8dQV)!1cJhl@Cs0d~O;#j4T zV=?<(8hcB1=A9~YBWzx=@62FyumKLk*#dpEc@&QGieJmwxY7G%eG&!HwS_V%+_TE1 z8Hegwa-wio?FE!2{R^_E>8%-rk6*4OL@U}KYdux{Zk5H+Aj-Zm%0E}_X%vVv!uH>O z*2ByK>~RLiyAy({{UP~Ph1yswAz{-KprxvY9q-OcAxHAe)z;=ov9r3X+Sdq8N<_^B zm(H}l& z|BY%4k;(CA(R2no z8r-@|;}JPmyO5E@nDezI^7nf$?)UrQ$i+{F3g7&+yDhLBc{)e$l+(Q)sd^a0@oQrM zV#5Awqq}nH7)tbiu!GxB6qQRy{#Ey%;+DPqwfrsSj_d%lXUm8NYx!#jkZpf)tMb31 z@?Q+^FP1t||7(WhE(KZvX|?kxyesbB5<*58Cce5~A2{I`s>u?{(RC_!9r@KnCE71s zO?|MpBoQS!p?l1Et@)LdrSNAnEz==_4rBj<_+;I9xUQ@`gVc*QM3%3KWW3(L7^NeN zE!xl+?;7|V{M4B0Qh#VjzlSP8jg0Gey7;|sRR`>Q8hrrF1pH~?*WopQ7GzfdoY=0T zmte<5g+GuL2G=T(Dx8ISU&HXgeQ*ZM>1}-&GbL^Rw2-Cet1ZLCjQT->@u1#2Qig0M zqgC6Oh^|q_^Hy~b5Nwfo(^jjf@$izWrlMX&zO#(`{O6lVR2E#YAVu~^wugzTw| zP=qhEmc{47$1h~5Fv5M{06czV+m|%J*L#svOEA4rr$IZf{hug2;Ol*mmxCQ8UHof& z*K$~RaMGc}!z(O#<`rp2dPL)e}i_-vZli?mSE&!yG!pw+Udherywf5_#jO$o3*I^p^QfYPGJzL9P)@@xUN zCS38tU$wTD4Cm_{Rr(IccF*uLD2`3)YFFcpGHy2c4a*+sZVtsqm0T!c6)O@&4{8bv z2hPbo$h*^bs~?i6HZmKG=a<|t$+gYBL?cIgS@bnQi@N+EiTY@e6JA0Fm+wxnZvAxL zKEb_jp>Kl5NJssDZ$vQ|uZR%;N6wJ?}s-J<>zDApq zvqhWdFRk(#OGRu(-XfDoqlQlny^KbV>y$}K>L)Av1vZacj$7R`8*W^Yt~f!f_;LnH z%KucnH@9$RNPe_~XZ zHUp@sFtt@P(_99Q-SC`y+-g!MO)y7#xgy=d5I4S((QPT0Y?+WAQuN0AYH>_qOYUlT zyjSwnYqlo1W-U2mIUrYaSEE+q$XFdbz#!TjF1Ds>w;VQ6nziUajk<;+$TgmgE zW0Xlk_A2&=b2z!KMq#J+m;}Kb$8Rq1%4}R&YB`L|<4Z}pXRD;IPLK4ugq#EVNzjB+ zg6ChG;jrL@)K3$0upBOIuvF5S<_pp?u&Q558045ls^|L_Pm4`U{!x8THDs_W4`_qc zp_SCukP>Aw{N)U-X+Eu^SG10uN~xeR)_r=c^64 zo5N$K&RvIL?XnzRuf9TNNh@KSa*&$OoT01W_# zFMGb75MRF@Im|1ch^`Zch-MPdC#l*Wt038SlT_cKajAQsmWkK(3@s!WYipG=q=#UF zY*M)VqJuDa#}?yM-pGJspm^J~vP4&3Z#~f}#i8XO3&9qj9nZRJBCIu>DE8KaB>yyg zbQ3sM%U&UDHe;YHtWs9icVSKW@%km^dXbKgQ9-3laxqbTy{XT2={Aac<|Nk>Zs`av zVW>e^EPmRTAlME81j#eF-vPEeB=7G< zziHZLQCCjv=@z?-+ms6(HzcGGtrn+)=bb9B=ciEpr#d#Nn$xXGuBo?I zk~^4Koz;%3vscvbzaKerF9jV~hqLaCGsg*r@YdN%(_k4|*Y`3Uqj?8-xOV=upLf_G zt54a77#K4rl*h#P*(e%Ebs_Sbm21ij-6d*^jLW)-pY)Q)W~))f1%qAu=ISF8>Rb$- zqIr99pA;I-)XCkAW1T83+B;2rEKRxRuK4=e5(n9yKOILM4USrjJcmo-#BnMcNR|sr zHf-t-nT2UNUM80=^K1SLJag9UuHcgykW*D_Y0V3&JOkPX2uO6-u}f)?|NDhN?ih$V z)OFeu2&URzg*+tPj1bFt+%m_jy2xyCT#2ZagUb`QxL4_T$BE#ZYnC1%ocx=2#%6`A zRciu)ebG}*OmRf4V6q>i#u+?xtsPFc`wlu8dtjh60)7xF8A9KPm>gH(t zf>cGetnKjAQ`PM6(9s>kHNCjHk9f!lU+hi5*p?H+&@S2~gQtLhe>4&c0$fft|W zw9r=N4lAyyp}@T#4k+(m!Qld?`5V6NX+X%Pd>XOKA#F&{3+6l%x2}Spw8|>oh-Eh? zJnSy+|7mgfN-RYwZ$hDRq*;p6DdixS{Fn8n9>9f5|GZM8uftkWV z$AG|~^{sq_e4R{g5#6#upG~oNwKGeG5j6*mizSq6jCB>)cc0RHx!U}>`PJC+qBps{ zE5(Z^*FmX$L8jtrrMa;%jxED@+sH-tji>I_?Ls3}*;*8fbbq_-g#~MkQ>=O;k?P{% zDI3x`S+{4UyX57KZwxI+UXr%vYKHxwGEOHKabuj^@L-)e zy1%f#C2uVGZaGQSAlPu6PNZyHY$QGg7osed z#r-!bLUOn+bM277c~Z<>5ETPhcT!Xz9bE}Kn`CsQN)bgxL5VIs7brZzQbKUg8GD0J zkX`i~LXUDBxuthQb`=AdSGxd}grJQ%d=TJwQX2m0fKhU18w4fPn+BBac{m0QS|6Ka z$cKIGn69m$8pVxajRbi6joCUhPK*YLjKl|k?cBnDn}`h+;_G7cCj<3pT?o$0ukbpP}yTuidQ1rYQ#&CxT;Vd){W>K7!Q zfDD??{?bc$N4tc?RKRJz4GFF=oM9#N|BdqU43}q!UPvX>SjUOH)15R+VxcY=K19!qNbo_6t?Eq}0 zDbIdu4++u#H;4sl{fJ|M{NAl|(b_|n&UOT%f^5E9e^CGAP0_4+z^?%MRR{-15hEWd z?xp=X4PEc$^7)wfWfvqK!3J4Bz&;>@NPQhKh2fv}fy3;m!$!Il88!SapGLLuH?`1r z6hPWweAZ4brbkw|;U;+mq#?K(1G1ck%a2ut*92fXjRsg>fn2r>Ftd;kOmy~UL{DLr zY7s#Ucu!M04W54J9EN%tKpPO3+V%q(9wM4`n@$VP0YE<_QF~(? z)Iu36%08NOWjKM5Z##DPCT=>-qqz-Ldf;!nmb3|3RB`I5V2Z)I# z?GWV?Oh4|AC^Z~8z?hZ9aDe5W52AvODmU7B=53n4kRX6VUY|Vz%MLcT@Hy{uZ|5IK4s`&Py<*kbpHqNZS zUzHv}iGu|7zu1lcILHoZMwc$pa-#q!fB+dlv`7f7E#%|HH;Ma^pT(}R*MFJ))+psZ zScRL!is&~vB%IfzAF|3<%^VvdwU4{@(xJ}Ux1)B5MC($G(ly z$+}MZb2xIIdrt$qn=IDj9Hy$Fb{xaEn3sYjOBozuj-Ficx5VnFCV90L6|dK1d(-EP zCOjCH4xfrJ?j0kUe0q{xMrKG@uWv~4+BvCPbW<)feB)P>A=Q9oY=X-AzOF2fx1I*P ztAAwof7!Liu5h-B1=&?x8+&3#S}uC|(4hNZ_-dZ+!s*T1ZN+}=^9}Evd3*U1bgDOB zihesOa?YEc2HdNEcneLKlufK+{z7)CXWWs$ad^mR>x4+})f*;IskoN>Pw!!4?dqQ% zhaCOV?#joWmD{UDnhQT?eQmfk(*J0<0u49sd^fDONW;@V>`KtB_Ik%Pp6_?vUaf!$c}GJO#>rE7niE;)g}{Wd%d?#QXoiM2Q%gb@?5Lg;va0TkDb|5# zTzthc^58kg;40q{&l3;2$x+$ITIq|`{DyUHW=c z_|R^-oUn~wzg0SgEHw*;^Se8M9v192()&NFgVf?|dF%b-65jD5gl*`nf4wJYx9Y;{ zgt4aHuM53(k3%gzlmDsp;p?a#Aor#2_)U4rk9SUjew9}y=Ny0OKbO&q@N7e0cO~-H zCO2|RblG^kE&f*P26D0Ukz2Lp+JgDF6Vh%~sI`go_0KHFSJ^e=y- z1Sb;8UVr(n>5fav!?(e-UEWV0zNFZCXJ}b>qa!)7zUIv{6jKJoVt>()FJYGugZY`?fnvBVPyF1&?wv=@%=6d)WT# zx7qu`L~)sw8+_%l$X9+)9_j4PCWj@mXwX@9`D{Y^PwOAvf_@qSexZB2g{=l2P-A6?-M^b;*Pq z8>dz|HhAP16F#=sGP^V%x0B_3YR^pMAxfnP&Q_BDT%}iA7z1Q@mmQ+)a&b#gg{5i> zv9(8YhUiCiQ7>JIePz_~HbpkL8=V#Dl^;KRC@S>|&i&^%eXb|#O#<9S8OD=z_w!(i zWj59+Lh^0@lym1|_)Ut9=u%fj4WqE`j?Nha(bdWOvg%kXQbP7mckoo42LRzIO}R+d z%F4>J92+)<@`8Kr8r=j_ilE}LN{CJ>h&r}v+Xra|Ht>2{Qy515@A~=%X)yg<|KVej z&;G>!P|gF73gl({li#Taug1HRA!rNlAaxEJcK+0^6yBskVO0lpZiE9)rECCLl(baT zq9RL)b@;;6`-MS*!e~zqi{U{HnSz;W@DzCoXdJidSn;O+Sg*F;m}BVRnJYc@P~6+C zJj1F`hd4c8Krb^!psePURwZkey&g08(y}w?OH*KtY3~-+5{c}fpu8W< zOC-d`13@>5DcuRGu8E5BVZP}nS`|Vig9f>^g?ws7y05tgAg_$y`1vfW7Grx7posCEKSyy#5SG$)d^jsqIe*45} zsm?vc;O)A50-Gt5vGpkn_E9G`XAibZUv*Wt*=nj;?d~pL@X$%EDPFU)o!0O3*(_qt z+DFxP>41}2 znxw**Udg295mxWR(EoE+QAg|O2bj&)!F^;-IMTeb$_jR@-#ie_B(1IKl%K+>Las~C zMt3u$;n*P>Wy#}@i@P(L7Q>ao9dx}H8C9jz&8g<19zNPo;unfGv zOoKrDI*tF&t_-Tx=5yw^HqF)UP-`D;W<}81B{KA%3SC^ct}2Epepl<&?upp>+4z=_ zriV_dtFHQsdBFGr>*^(`Zf-N5*d692soT-H!6kmjc_7^L6&uvYuiM2p(dsV`%F_14 z&Q!Z!mA`thU3}pA;&U%#2$kGaE@*YTH(0YngLd9MxyiKtP9Wvjx8&(BP5%1Q;=`8) z55Lq0`g-mdhZM)wSe{#t9hI0^g~j)RyEciSXw;G9$t@VbgW2a=f8sXW_s9ln>Byg5 zyFud8XZ^B)OV=XDK-(c|)l{s4q%G8v1#22;Y z)qr{YenY-d|L2xyLCXx@alAoUzeJl)!BR>nLXeT9Cro?s|FM~(0+eZ#HCy{d9}9}o zANwTuW33-c-vWwTyA{4lPSc8)P&7qEvm6PtC2G6bCb^~c zS8mv~6zQqoFI|)6?bNMyHZb9%fA}k{ojcN$yOyd=p6a&}VRu!{g zU)QTHjAa5`q*o6>PDRwQ~tFxvj$Dyf_QsMJqm(4N#*Pv&&U+ z2jp{_O7pV9>m*@pocXsl;=`aMotYJ}?>&r~)5?Uq+sfn3z!FliCNJyxWL}Y;Z0X^N zc`U&r6{cD${NU-L+o6sk9pP}o?1v?<6YZnM9YtD`5k-1eI;V>ouE4~@p2M1W0;U|P zNIN7qRk9|#2kHI1$D0J_KF|1s>OzouMT)eF-rUH7T{Gbml=fmMUMpk^cehwk8?_vK zv_}4E;?pTOy91n0+UZ1lnzRKhG@MVJ{HCbx612lMwbtzEZZko@_|oW!*JR0>DBE*t z#-Q4;<>14~34xsJaIvuUtu+VgyB}t4Qh!-QiVZdUmYfdLx>Os+3_ik=_e^{eurlFM zQ~P$vZAFvRzVh1|a_Cf{N2-0!Y^l8SZyPa>spEsUx+d1&cy>Qrv^dmLgw(smY5ieM zbdSwe7kj$%<gVdot#xrW=Hf084YQ0jLp={S4I(ey%nYtIar3MMN^ABAXm$Ym&uG4H>Y^uQ7 zJ{`1l9Hd6)wyIEqVjsBcjo<5vT=g!cGF3n+!S(X zR~3PcohrkdI#-DfNx<0UM36<)!{SfjFpTb%8u|}*9@D#SbV&nIc7_q7cHDnfAFgN- z-Q@8yBl>rI;%7g~Ngg1{tB-hc?P$PJ5DECyu-A;QU;B6(#Bcf3ekX~VR$WSiXe~iq zB>V{|uH_>6TRqDbxB<74N!u1nzu@{o{Y_~d)%y059#iJJ9|&R83^j#@8{3%+zxa4ZUc zFX8N%U8v>ZXdZvJoy{t%Zc}FFFh#gokyJr>ZJrwMecbqFBTFMaVP>ktX0NuAHO5z% zdjA92p8j4^+OS=8jJ4s0NdT)?>Wi5@bQQii3gf=fBkin3DN~O-142(Y-SY(dm+;`0 z(lz>*Wr=H;z7|=X#khhm@74)G6baMK!$y2IDmIQTofx`w7BEwo9IGLFmLifiZX`X59jV9Y3ww~8! zDjp7_!Crc6Rvxi7bz~x1uQo@nForNWug#JYJzKdavCsne^6Fb3RHH3wj8X=r`n?BO zb-S~LGSLG!tFv|8D68!6IBObZv#SQJHAJ*U>hnF-1-xPxM@eewfyUQ@Y7s;07kHNQ zoe5(1fv5t^1PS%*g_w_wN}Xrm=&DA>vmWAZv&llOYuH9BU$~$C1SdSaW+KeQh!EW$ zD4rmNBoW^i`+-Cz`7}!71};4bk>o-ogmLk{zjGXm_6@u>6Nl~$z zpR=0igcQZFx}kFmRT=2|r+3;ecm_q+kl3zxi4f@kHSS0nKx^y2?CqA|sO+bc?c1Pn1+l8oM@YuoTax3Mv3J{%-*k4W;e8_{^(TFk1 zV4v3`R>XR&f)`4dXn}33(4Q!`x65p6TO?caX};2T%Ue-5GV;P0Z&W&SqdC+$Url0l z-fzWuXmq+jn-7Efl5mWA36T(B`G=?#?DRdo;|xeRX@f0zdcO}CfC$Si#9WZ56MGW; zDM{RW6!IVtC2-kuQvp3GLU)5jrpcd2B5lswPuCbEWCz+*hL2yc!!WFC3j;A7(F5y+ zk?jy49d>w2B=gL)OLb=%xhxQ<%X`oG{EnEp@Pmp_&}@Zwgx-L3(|U z*p;J~Sm&%hL`78OJdQoI+7_T1R$Ej<{oetvmu*4=o9a_{1$T_-`&=@hd=?NR|` z`m8b=XX1NEb9s5^CpGKmB)clD?3L0!Eygl1gzDV+IG~f;-kOo(E&Nd2dAgKTGTY{T z!z1|P2oVvVq)Bi>DiLBLgD~Zdi}1?vgAjN1`)VJACwMo{Q1#K9CeVz{Yy%OWMd5F)JkX0>=y;(4y{+%K1i-+av^f(*H2z9*%eU z8+8abGi{$9WLoEVll(a=NO;t5o+!gUbX;4RKQeaalwS-NiJ5cXY|$;1(eo1pVWIHz zbQqKKm)ao7^p=9U)56Ea9F~6H0mD^x!;`Uv;iQbv&X0p@fKeF@f%$ z)v9Ht!#LxiF?Y7k72_-8dedsLDxD;e`J9)SidpD}12+zQw^`akxBfq` z;96NvlHY#yZ3{H2Xk*ZEsjfwxwh)sr)#c>DkqE>6wEcMw=-ot8%^`-4`(1La`dnk6(!zsg%8H*eKd~Oj#i7Pt>=E zPe2X1+oWbc`)kW$+4#5X*JG>7&x=xSV$8%8k@@`9`>dz$9Nfj+558^HGq@H%k((A& z+WZ4}_N3stIeSOBeY>+qSeuow%2L*^FFdxjeA-akVKck+XHNu$!-pvsH|h1O zv#s?{)Y|TPNXy}B>l^=xIy{l`yVtmSp&AK!z4F#BP=bheNYCXjRmkpA9(H2L2O#db z@7<}VU;D?53X9@=+hOm^>t*m>M@>4UEwsRs+Wu9yO&yMM-se1WkPg;n39MZskv-uN zN46rp?T|h;IQ8^l@?qq#toNuS@}m^=0b zxhM{^ZUP0*p?>W<1V7j;@{<@+CgtG;``WFh<$b-|gM6*Ry5Va@iyBDI|N3(qT)Zjd z+W#~K2l0b%qC;HYPD)sg($Th{MXwiH1gp#zB00=EH|u(2iTsU9x3aov@6hYg4)jGU znFy06WqSjs>I3CqJWIaxIL+fQx$lIPs*Z^ZNYOsAU|)^TUp+I#)0ceNaaGmQu0(Dk zU1fH%V(#UACZr?YGLupRFTcEdV?CU({6DHkr_!_Z$Usd;ypRKf?7pON=!({69`?8u3&4yPE zM(mtW^gZ1DjNq*hn{#YHtE1hHCtI6$QvbT_G;?6Ft+PwfM9vH-%L%7HcJ8}t))!ZF zqGi5W$$F494asbbEW0`F5S7FDD``9n&G;C0=OLrJyA8h8#D z7W#fMHsIsnL!+BG8cdBG=(cg>?2ALSgX1Np7)|_%FNgC#8n-X3nr>IQQJH#V%6SUc zKql3qPfWW{*0&E8wtsdolGZbCJ~`UV@h9rQ%-v(^zK}3ajLFa0 zYn@sWrJtpEh;LK9F2LHrfP zi`cA43GjU%Qsi=lwQ4dWS9G?rXHSQE5g8|pxQC`qVD#`KEH;K4#+d=Qx zJkOD`3%aI7@4b7EfqF;isXh-yP4_Osr5z3+?Oe=F*e`nJ`#qNv3Sss^L- zgE9E?D^HR$=aL>L-4!dkJeG2<{aowMUjJQGJc=B%M6&fgYh}U=Eo^Q35;6R_$!H?! zJ?$|G=3W+&-V+`WWb^m8P@#=bS@F1C0TdY^Gm=MrWJ zvdKt^V>KKmpVD&b9S~XvIhquAg67pE)I7|HMl{HHW5UbK5g57+yC4Azx{%I zO?Yxt;8pAsnWqasRqq+HtlNlj+Qji%WR#@p-tWDN3x{#D8kpsxk_8XM~Yf!s38U+~ICinudw0zgr zvvG?+GvmetuWLX<*MNZQa=srkK2o~mW_wj{)kwSz!)odCXK_~@l~@h!dv&Wmv$ZO> z@UwdKKH~lbH)nyCihv~_NQkq> ztx(8*dpmHf9w(zj9{CHwGL*9i2O*+vu&)RTx$JvA*ojj5vJ>o1B;NX|p4}p%r_XxChjOGR7yL7Li(l?W=B%e~FKb zP2c7$FJ``H!K1@00nOc+VsGl)BAc$#ux+Z|Son0I^riSS^HTVvoilm-+{Sdqq;gi?HK-;3o2UHlYg=b<79B00Bc8#~O|AgXMMHzZIHEq2B(sfu97j(CY?>0c)k9Q5dME}Wt%#z8Gz z?;;F~h!Uil`Dkf6F_0Y7i1sv|VTcBo^dHLEb+~3+LU7w|iidL9Jad8MRGWUIwmOaK zP&ZrP;F>JMQ1VQ653&{-m^2`(%q(>7zE>aYW&CxnGH@W`Cbi6PPGXHP{+FwdS%mR> z$+vGKv0khiH1pFFd(EfutGgGYyTUB{bnXwKc_K^NH} zd(aIr5V$d;t~$LVsxI1+Dz7$=4$v2w)3FH{S1;4&@k1~9b}7nxt-NG(Rdvdx7{8*A zOn!Z>&EFc+=rO!|GG>^dw(Ug~MI|{@z~)m5@8|HJg$lnu;guL3$f_L;^5Io{k#i9- zKN0UgYCr?zL0EWwu$Q*2(VM<`CYTG3k2RSZ@DtBBCP{F#GjmC=-A z;SEMItqc-&+)g29_f+(=2pTUf*{IsVq|j=RKxsNTX%d%SBoQVms&sh7hAa_^HyCaP zU%al|8O|MVe*2^TqVwfEcOfQ~=SD(|Ln9$rIQ_Z=LI!7`Y&cekHPFGI_`J~g5|e+G zZYf416iy8oF-)tpuQ>-K0V!N_e;$6sRQd3M3mCmNx~lZe@t1ox02@2R`kzU$qtXPq zaHsHbz_+q|3xL?NVlBDi7z{s6ng~<7l;L`wPsyq#8lO8i3sCv zX(jyE86TU8$=B{d9ubc2x#_;Va4*s`*Fp{J~?R#K6A|I3Bkv?cqA)gG@jw*|=- z`)kI9mS2h-K@pGc+zd3;nsYiA>J6}Tg~}iwp`s%c(fG9eF}3ayW#pCl?lwnyXR_L$ zua&6sk(}^izY9Lm{WACV;cNM;9yTo5I>kTL3qLonUyx0o^w2IRkSCk-&B(-&c)JK) zxeIuGj@rh)d(o7g3F)^chU?V|^51;o`4VO7RZsQu$%!(n=_9|GNDoS>P0Mi)xtyvd z5bWDY8L}vAONg8$eMWsp%u2V6Hj%?)DKln&9%>oNx>2oIW#+hQ$NfX%b1ig zW!`11iMP=a>)B?Y)2wiMdyG&Q8av_YRbYoutxi)4Tl{2Cx&qbeo>{lfgeYADiW$|u ze9_cn>P(CSk)f=VR>$Z@ST%hjbK5W^({ZmKIA6d~facI2`9X3*HlF>Cb9IA`7Dh(p zv8ap(jxMVgITRzMcPt;$;ne18> z8)kSc;l!f6_09*Q!#4>J@w~k)(^I$zV#tfxbdM@i*D{)!4E74WeN9RygOc#j0CKD1 z`;CEBOXsS>g(i3iKuhQGMGnj+5v2A5pi(UK_z~z8Ludd=ngJX1&YefB*61Jp<*vpa zBw7IHWr@`|%+kBj($490_PLwPL_ev0ePkj$&gF6%(ew8Y_1zOAAR$aWLX2ljRU48NHa;g0AyG6Y$OC)tB5Mnh74yNhN+?^D!7Z^^QLEDa0 zQEPU*8K_@1WVjxB9XylMNi(WRF-#`oAD&zQdCs?kIo%2Q^*=L})dZ;hE5`j73i?F7 zj*LV!j958L;Xq1d{KuGyk?tgy5ij@4JsR97Cy*`5eaHb%5QrE*xuXF^r}lt=<9#5I zSf|$iQRSD)cL4B$%YAMjE$kvNvca`EhtM9N&h4*}5czc*>dTGgagZ|3Nmt`d69ngn z#P$uP&~G9l_To}PrJ?>dTw8!2diz$X-y!AOCcn_POpE=G_|>CvXd-c;1CD4 zOU;qM7OS&Cai!bH!IoBTr$17MM$M;Qb=M|YGRiAceRYdGiJrABgEzGjob?E&oZvmzPVZYYEZB4qC`f7b0SeJsdko2 z)6>$&@m+6Wxm43q?g&BZ)6M3#l~=AKi_0meT2}=^UK$-xbfYIk=|wskyQX%|m+LDs zqf_L{$<%`{Mj}*b(z`zrW@bxFr*K07PIe~ET!^g%6!#lmhWc;53k*7lUf(03(%V(X zZ4fB)l}i`BFHA?4`gz#5tX>GPGp#2l5BbQ>=I~ly%KAEKZ6VTV@WI0_kl-#_VUU__ z(YN^7d}EdA!GgR4RHtc7Dut-%7wt_~i3svISg}v#NZ$^#Qmf3j)VYI687*EdcCjt4 z;VwF#n~>~R56VyIXwirYUOcHM^P`Gt#qd3=QRT*B|yxYva8TwdfLADL0h&2qZOOdSi4lBDv$N831+-t(Q2I#!wd^qi$W>1S9vXtbi zgmL8_y01I&WQv8OWa@Pf3qmE?DnusALD9(8(t4;Na`~W%=L&8-QOO*f*Bk1MlQ?LH zy6YV+77d5x+|{P4r?j=7XMJ>W5And$_#8;L>hJ;9M%cWl0;`V|90uvas|YY*vSTk!>dW-9GuRHG9P*?-%*2nTXf^81vi_yF=~226VbRPZn|tkrc)aY z7vERpR$korYmA*bPXjI|h?wL>lTk?*tCp4{bas$!k|G{oci|d3T2bSs-|<6qzsqg^ z3;>pZuo@OX>NubzI;epX*tlvt?MSt3`;^YzB|W4izi120acx2KM;lT|;D^w3y}2B&G>Adzk^tF@;b{yMZ2@Vwx_c7ti$v{Ai&FKL;iGpl(sb4I$XWE-xpkptgv zo@#xwlrHR=lWI>_IXccT{WN2zx?8)_BfzD$9Qq(*>NLLt*8La^tZT6-;spJzE1%K3Hdnt$@ zI>5*R8KaFi9({v`pg=gArLhR1Xap94F#l|k0OkYO;t}iC3!xAIIm=vwNHriy0KZUu zYF7H7J%7XCL0Yitg(8!>z>%ydInREeR`YT%L+`J$R?`lemfzh)MsrmLH5utu&y0bZ z;)f-D_Z6y|R9BXcX&rfVKM)D*t=+Npe`2K?IRvINVsaa*oV%6sOFOdwNVp-g;iR*Qwd%e*GDXAuo1> z4D`M5LxrS_P_BzVu2~6SW}-GDxR_JFqxRh8Lh)I6)-J>d^T55=E07({%Bq{Xp51%! z{rl;IE6omPG8pgs+GSK}f1>P7eYnHbjEjWp>!U4)Ca%7`bWO^UK~qY5&#d?IhFSp| z0xlPrSZC&Mvj@curw0=li;(7=cJ6M_TTvl%RYTi|knz(BnH498@!>ZpYC50y?Y~M@ zxzl8NCQqmQROrFyrMaHbSyKj&XP;DIuS}R^?RU<#LLrKbYtz4CN_Jb^cPum_svWgx zA4+u!Fl6r6JBl}b?-f~-6Eb+d-%e8Q>hHq}N&ay1Yv}3q%79vFt(D)F|Mq)}q11To zM4(f%LcXT!=e^f$0))_i+u+**K!^XYdcJM8?nC=)5hDEmnFj>&zZqCur@k3j>(&_< zR0nVxupeSltvlJi!9%z-5Qh8zA~TIkzP$yG#D>^nNG*F107~+Azc{s@JbS`va_X(5t@ zslX-*&NbBWcW!3DOgdGMt&FBjr#&ZLeU|4!O!l}j8||euXB!jsV$cR1V)`k?m=Tk% zt{j2L2BrMyr#G<7|AlT3DaWjfbX9``gJLBjTcvKoutbKDD+EU2n;HZ)oq;F|u~d<< zU~ix}f}!`f1>L*Y7VBI~89e$9{#a&|ud_7H*;iUZm@FKLcL-~Jn_A-jf_%NqvV5Q? z{e$zeOEX7(l-s01$ib88gP2`iy0T5WvIe{cIyO3l(`M)pKMoEM0IQJzs}5LZ&kgL# zDIW4RRd#6x+Oc|pq@Eg+Rf7SWSIPLVogfEkSGM>xHoo8FB+V{~h8cFTIyPyLW?B?? zsKnkJxJkQ=3(_{7`}q{mt8N2&)lKKN0%Ax5U^?H}NgL(%Xhw-}uti;g%XP0V3?_UqaBgn53VAseW&@N8=YqmxV~uU&t@kr_*riIQ1K&ze zlXL~Y;wM_;HjiH=9fNHX5BBK4G)uCkSrsM;Umlii%u>@OT3qbCywq?h7#J>ZB&YZm zyjeY6Dt6CmEPqK%7me5_Kd<Y#Yoot!L8z^Q&ICKoco(2s#1&>c;BfX^I! zeW475ZGB^#3`?fHzNkt+^56_3ELb0L_LY#OH)@N`G{)oaFS2`H_SyW14FY?=0X9^2 z!#0FR5WEM9dq9a&1JoYBV_dm%iS5ck%SYllm#NGTlOFO;q_c(76Gp1sRnq!LTn48= zp&>iLj9)l1v^g%#;nnEM4R7Zni2^giq=76$vtEv_(ucoOP7~45!S7DO>Cn-f6uyE| zFB0`y!{+uEc`-_Daf7;zE10rB7*5*{eweC!HK+Oms*zx%ERm1PS~dR@g&#dC*_QE0 zLQ4EGO9oow5)T`e8w~E>BzEhUOkGOmZ$}q|LS1(qY=h)T|JiarCyGq&=_;g)iz+luPkRPy;pr#YZcAmNEiCW zyDrJm;IRn9Zkl0#K+NS)?~X91UCXg?5meqI3(GzcO<#9@ z8>5v3>iEU^M=*$h=qo}<4&%d3jmpR7=`q@TT+Q@(noi>`v>ut>ndp>zRB}hbGqDBG3mXE#&CavoS*{zREtOzz>CY^Ip=M^D)`kbQN{J$hBMxA;l78HL)$lzcQjO}kW@ zxis3OGX31Q!|eAz9Fg;2y9%dxY3v*?%>QML?7>9d`_h{4V7qKk8q2({t56$0==HE~ zE)tDKtAGOX^Oo10lB#30Y|L2Gw0B8of1x2SUn1?bHPO83&E!kO#j=J5T@PV{<@E-^ zC2uTis0q~}PI?#4+iRN{d{R7W(v$Ur1==q+)!L!ze0uzpX)xY+(ljf;wC<&gjE>3x zP+{{9nGNsbPc-4WOo||=5{t%?otrxmmPb3D)MgGHm3zBxz)gTNVNuSn8yAOVpn9$e&!gO&(;4Q>+~?N0=9*+xYf;EHpeZb*X@=ukxC7Fct~O!3{sf@|Z;Z0?pAn$Hulr5NX!N z6XJ*o@gMgNqL9N<4@AMK0$wy~4-x{rjq*nvPUlzwy+9F&A;Hr5H#HIa(EK2p=on?n zY{Zr+yG`Ok0%Yv+Q?GsyvdecCl}jBgdOdx-?MAHUQe|*qZ>LNSJ<=*9x4{GS><;y2 zQ^MNbj!1QdJgm4ld}ZJv%LoB^77d`01p5cFyMl%g9b+(bpwZ{q#YdYJ4R<X^W z`OX=q+QytFlc!AM$t~0v+ZN)`^@6})eB2;8j`Gx6rfYy@S&f5$9+YR z8y^dd>B7f(IIe222-7QKL9}ig65rW!|2K&@8Xyt^p&stu;i0yUXESKWhUf`{?$}YX zrvt8IL&A;faGXA zD3|!o8)e0hF{FKZRa2(SYT_w$3O|3$3AsV+YP`zqAuk~_y&vNy>_-?%wCn)(YWIZJ z=0zL2TE@yvpJK(bTGjsh!9ec(bkiCl7f?E9F8%@GfSpw$7r9`#im=rQWr%A8!yt6I zr_TaLmT{}<&QI;kzI515U9 zj?@i~3Uh7PAd0RlVQl*s` zh^EY?k*Za?UF7i3b9N>OX!gdn)?W@TK@2vpP9(Oz^(V@~TeZi~X0LvInJ$qIB{hYQ^wo6KaiqFxMoplblLM0M?$}?i` zt;u$Vy^c3_e3;b5^aew(OS0X4yCUXkTZ(~b;IiRxO0r^^V|?zujCjJtsOPbL$v|S3 zW0g6wV&n6^%hfa$(x(uL00~h4;}#;OleBvu?nu2~D!Bg5Fy9YeRA=tvN#yCd~z z6ARyQIq`ZP=nWme*A$6S-6{-cxo&T4-v+ag41+?+3i;m-9!*HMpk323P-@G|KDk01 zZfLtyPzb%qq`OQzBMocowKI~_%y~TAm~K7WICN{s!FNAl$v$Ewa)2POTfp+tKxktv z^MsXd&3i}dn?HlK*2yf5rkC5Gcq0AQRWpUMGH0bJ(Rx22qT+G#p_Z}Mnf;3YYExK# zZ&dUSbO5as|M|p+dR6B0%BF_L+$G=p9yL82D{3USx`ZTg>f#4QkC zdHQ<=I^;p%d%5v*(XM4T-u-RQ^@U9jH}m{k`9I4v|53ofwdwm3a94<)V#%sNDdJIJ zP5OiVM zB0{KdE(*ka*u3W_7O(RjO{87lTonE=QWt^4v$)IHf?yRAusDpg$CE55coxDkknAFe zLeFqe-b9c%b`-N|k|9sKm zsL%3ge9!u;%{#NUHXo}QDG>BO&yH}meLxPdX}`b3`3?F2ngS2ThKopx*?`9j=`(@g z3>*kB&==hM_z@Tk3OQ!!^+l7onm~qLaV3^cQ&5;hRF0MT&JWg5Iw7W!jca(`N(b4P zKa5Nn*gB@CfTSmyySLA-E8Jbpu+hda>Ec9qh%1;}c79$jm?^y9)KDk7zvu2k}qr&0>cM@2(YNJ|C->2 z^C%(qjp3fpH88^y6W6b_VS zAzgCYql`x<{kQM9{t$A~f;Zkr@o+p8CvRX;-|`5EO&8BjDPoxfiI&Pki_b;Xa9xVN zPxYUSD43f7v4dL!CBo~S)5MgG#dSTh+uTYLPq1X684r^#$8gR_4;D_WYq-Csy$*yQ z{y>7!X9|7Bue4{hEp#XpY4&7|p2!MMh;r#~J_KZ=ojx2ps~7(Bf*y40&Y#bdQL^G2ByPVIJ_~&)F!#QBwi>mR*Q@@@ zy{&Wls5^l+Nv1S$Rb@E}C)FqmxlL(DTPmsrfUH%w)PkFS#hLKfHnp6k;-md~+dK2j z@;SaJ#}g%1F@p^LOJVvxOEP_pF7?!2?~Wq;aI-w2hCHad6lRz9Tr#jl8J|xFhjve@ zG##|^jI^aAoBn9?*d0bN5)*Uw<$Xb~Hw04KWW}EJ?gR5tY&=|S5H&cZp>=nS`xS8p zZAL_`*R-;v-nyP>v3n&C0sqWrS9B|q1d0;RY@ z!`L=nlXu~PV_Eg;_unSwwl}4j+Pc3w<5koh3T&DwAb1ioe*a63%I6(mlAO3`3(WFh zsc>=s1X_2x(~H3wpHc#xT{6fiuTS`WS}`kp?*>_~_DUHM#y)&UQ`mcF6HB=CyTasL zz2;RKLp(kdIts*d9c;6-WUJx@;+@;P+9oPaW-L*R3^^LnN<-eWYDSY0J8vo!^S0e0c%KbQ zbN@FvC^;xrUS56tSJ=TC2NHBDd5};ZE z^tZPIAqdf7+~rkvG zq(>-`a$&%uhT8lKFN&W;s9W^*yRJD(_?pZ2aIQ8*+L8E_a5^oej^OH0 zS?CsON_?Kvk*8miVob>xjUg5-3iCXu$fTMY>{@i_I+>B$#qoqoQwtR2v2}I*(ikln zV42OZKfuc3g`**~L@==wB4h&*%3)*?(S=6s-o@l=&kx5rI~ypxk|b?)DzDSgak-}> zbj$NYGq#OwR1WTuT&?SQWA+i@te>o%&<6+%2L7fW(Vdqf&6I(;gDMg~e>2V_j zA*X=zWOwTyk|JD6&O}aU4iDU7?7xs_`}8W{R-m4B1PrUrwLj}37T=X1vpbAb`J)2y z*jybu)g(zNOBoj#=YMRnwkYV2*m3`#X@lTDHu$@yFXA{5sR<2U+vtBgB4CKW&WFnG z&)PN+o?4g${bBSk5{!C>EM_8o^I9G38y=xhkxJk!NAMmnkBq!QNfosb@kQ)XE)Z%4 z*F!jlA*rj-u;Z8!bwBOUVpf(#7|vicjxaA*WMw{9|0>@>d~_JQP?V1geR*=EGxQL` zQi~i8{yYNDf&R}xJBnh@6ciLJher$oAKY9>-~--Al%>BEKr4X46}A+D27v8=0E#FD`VEpl_duWm@nNumalte9@-KqqH-`Om|v3fCqqdUo=W8Q%!5U>=k(wr1C_Y_Yruq z&YoY70kMhT#WU8zLB21%rx(Qft?2^0*R)(Sq_zVW>KX+qiw*VhMP3ALBJxxMm{EU& zF+La1=DVyuy-ETWhPTA`u9=aX9F)B*0vg3-@XmnZu* zSF_@svgR#))Xt;@54qb+^qY>45O-~S(3A5r3k$OMYLwZjD;r&B&Rt@$v~z9g1!EQw z+0ED^C9(Zb1$5824QoCX2sGS&^HcD~9AN%_^;Ntzj}Y?Nz^vVC$$j`M-)Ds;3(}nh z9crSwqT$c;^1@cd9vusVb{>rFX+hU*a}5jWoYh#{6vva&V-qT249 zsv6#Jm2%%VFnn=WVAdtF^5L1UNA4#kEf=s@tr3Z3vaL z!p(Oz0GXX}j+YIF&j(P??yMz2V@{m~oFW)3;hMqzkV=IRzN5fj1fi2hO70}X zw)62mA-Q2(F}5)wQY$65(0tA|CF=KlcK?`ihn7U`K3bnY-W8m?K(r0V&QJ*|C41FP zveTxuIV$neIvV3V69$S!r@xh2SG6fdr&L*p#Ir4X7bjhYGI+aC~oiu!-e<0GvDo68_&YB-0C13I|@g@3?Rv zS_}lWf>V_&J$2C?oNosmIuhJ;(YfM>EOxW@Vm;qbhOyI>} z6Sa(uPj>}1sGqEVNToSDbdn1P5f!0!a4=8?z2+^OLtF?0n5KrziSs1(>$YLbZ>NM{ z5!+18y9Ye5g_5!f;~Bq<55I5U^7^uRbWF_k^kdW#&6s}h~r zgg#+g`;IdADX3RV6KshljTnNk5VjRYHZ}D_oU-VzgylqpSIt_^wou^ z7MII8=O!DE3=ZP4ibtF81w8C`ftw`0Rs~e{tuvR~yDgCAuYt0SmG26=NhOCyhX<@R zKlV}eWJ1adOgktNBctI}hcTf_b2zF34fKCCtM(`B{Xh`oMw<0sm{tI!!eIIz(+2Ca zA4E+#!DZ2@XN*6~9L1j)2t@o||1xoWvwQw!-M6Am8sFyDe_3Q2-<1JKLlk#;z2Gl@ z#ecS9c^Y6fj7&Lj@XH20Crs-gSQgIp8>1E#@u? zaMF`27m`|248!>^j}ng3?-I|+?%1`5v1ef(HwHZf9VN3MgZAx~xS*^P83 zFS9&>64M^Cs)@Ha6TA!KJvr=eyQ?o(x|8r-O4$gt$0H#)BM2X%(T}wcM2X&V^{J9@ zo{^x4jf_HQ@tW&$hY7IlmD$x>O)Vf97abF?l4`^xUd>Z(<+thUEO*^(uCpc_T{?sB{K*c9)sco*R?9EzK|6jSWvSlDg=XU-%aQd!MV{PR< zHNBf_O2Eqj=OsaH^@#7Nq(^}y)VK~&mY8_YB)0&d>vA3;bTIyEi4my(@;9L+5tpUIf^Mza*x9%WvSvM`)>TlTjyw zH-O0i9crgD#Jv&V1#|=t)fIhZJ@ng5^ZM!}jWI-2hD=V96d#Sd@EVz9V190phBO zyWD3}n$@!PfFRe{;In*k1Eci1=Q$4j4BAW(t2ro35?aPe4)p~|=2)(UW z;z0+udg_S=Gn#dwl4;spMoQR@srHZ;x+nUot;n@zA@}nvRP24?E5#^S(yL-B0>1qFBF*8z)=?qe$<_?47hQ|>N3 zN64M^=yBu9LFeLz#fk`ZgC-A`0QZotCzwx7!&%mb#T28)l2^VzP99L3a`4L{h^m)q z_oYa8MMzbWh8o$I+=VNY7kC=+#^N+1zhkR@rFq)C<8!yd+X4#u6lw-3);ifvVhPHi}Ln0&LpofIXD;ngJmIOA0y zQHW(=`_T%u^CwND9i?p(4Ewj)1O|qm4bwmTYb>0QKNk+X7N;QECkR~*sKTcDuY-_5 zlw=K70j@nHjsb(HO<PDL6rd}&gH zjb8lL16^ZZZmd$&#A3QhzH*ht0qXZ&1z0=Z#3@NMf0gzlJ()jqcd{4S_AmH}A1Dp9 z$6E2$DZGE8WC2Z=|DmpP_4qu+T6fY(YDJP*N1UHd5z|y!l&Ca0$g_B4IEDq#MeQsf zyX_BjOBpDbSVqLQj7Q)tI7J(>(N%~Z4l~AiRW}JFb<}jM{!E`%spM#@iW+;_sqghJ zT_Pg2VBBoRRXeGb=Hi^}ep)PsnMEhdQD5Kc{iB&C%d!o`k&5AcfJ)a7kSi`L2%ZXL z8HG3~RO~+3s4k5THN@TOB-#Cv5H!@0Q=+4LzQy{|sdYx&e_hEc-1y(p@+>gqcYAIW?i{hS4^HnS|#j zE=u#_4`Gq+Z6--#jGVjb+m&7Wk4ZA*ZH9^Q;t5f7EtRntOKbLuKhopKw*p?L$AZQY zDM}_S3mw|m2L7izhz73U1GtAQITq;R1>qTb{0~Oiy+~6zHleQhqXmN>0nz|@$ZoUx z>mA7L2N*&i*m--wy~2ubAlAYT{gWE(dm)I=fz{EmMj8qM#N)9g5)f6%2( zeIwq1_Sxx%3lCN4Q(G=`;c1SIW5D+nbP?HAkDKvyy(SM)0ZI#N)>T1MCVM5>93oXji1meqAWG?M}R2 zoEn%K8;HFIM%4omIM;}CuLoBoF=3jY7t zdos;@z^M?jlk2;v=7S3Po_1*BE0Pt%9fFVW?|nS}yrq&5Z)T!-w2;v8+dus+;=v;L zf-D{~1UeuDvT25ekT`JvFgGG2uP?{(ljcK|<{pIPi{rOV2wDX2A*tZKLWO3rB0U?< zO90WA2M~SbjYb3@ie>*N)t5gH2f!x~%*0P8{Bi!ja9`oOP^sM5)!|okIY;O9QoIm8 z>EtrbDCMD_3%<;`E8B}sRy``s+pxe>aAc*~GtDt~n)Jkj)V#VgZ)FFuz;4dx7}nj% z(pR@QzQov1ENXa(Vojtp$ek&Up?p+4TBB^6kAzN2@^@=O<|;_mze5NZv4Y&EUII7? zuo{0r|H_te7`GXQ=4&kZ@S}C{(t*=uorG00#ztxT`U0kti#^Wji@-=TuN`NTOoLc< zwbi_#UGOM_GgQIlvMu@~IUh+wF7?hS^A&0Zm2;XE^MDiD{BZqIGx}Motw)oyvIMEA zdR`~mHnBP0!JwdC`Ra0i@Tc*(9rXlBhR#Uxr8c!o3+g|ATIBN4GE9tfHIc6Bqe0#*FuS`E;?2;t?5dEcq#V1GJsb#$e$U%NBS~v9qK#0UsQEPI7;;^Tcnq;zdpRU ztK#5Gv*O9oVguc_;Iy#UzJ!s9_+r`RwBLJQYn6LdOg6+V-Dsj4w$1xhEHpBw0=}k1 zPVE!^TyQJpQ_~W@c9B$lP{7=?>JRu_fl~sZ{)AWtEC5lC1Vr>VI#t6Ma?RZUUH+bn zU?HtXIW{BshyUe~z^=)i8S>zNZBOS%iA{^62r;@E3 zcfXua&Q>n&u@k-&GUvmOPMsV94~%dif< z{$N3%kVFs^;5Sex!(*l)t~k>it~R$`JtWV%bnk*WE1YM1R<@VfEceDhnKyl?lO?@lflV>^5?) zdo3k`f(Au6_rK=NjJL8R9%@o3%G-azaC{Qirt&_cB8vN}v|RZF>@J>)bW5xWF-(xD z=-0FUEGq@@oRTeHo^T3CD7>$UE4^e&BJvl-#oGpjbM76At@sdBYW_Yrwa7AK^p?(* zNxGp-$k|7%8d%5>*4$rz{>jX;0jH$BuqRSML9sC^A*_+(@r}3Dh==E2rvHE7BlgjM z?ItA7{(ad7lpqRCCa)I>{k4jPrerOx2SdPvjXuGSYzRFwG6iO^egyrIC`2%%R%`<| zPM{zdc54R^dIbGBr&0#27rYJgzrdCo*kOs~kN|SjxMYq)1N_lndhDESmt{(0CkPoN z0`GYKRD-nqE(RfvDpQ#gGT>yE#kZ@{yqn|otf}4`s9geuLY??`w}i%TNWulnEpg|* zCgP`HW8p4Pdp2=!?>)Q5rNZ)DtaGUZiueQA0&-B!L)1f%T_iQ_ZKn*aue=`eYkl+i zXtxIQ%qM1*+Okxi@XD1vy-dX=yf91a$0&_57`wiJtn9BB912r2$b6N}HI62!gPagB zdDa53c7+RnU`&m4bnGD>2T3LX2nE0f0uTM3G!$@%WW?}+-WdQDfWSa)(jYRcgj?Ge zTpQn;^$w6g0OLk?q9>oqAhYIH7yyOF^%kjC>V%*YEV21h+H zw8yW0>;~c%uwpcSi{a~dc)7r=efYe1nAK%g68pCC;3M%QtkN;9&ojq5X%>|fH#%AA z$Cs&rKvWY)b#}nX=`pO^r&T-nCCIW=uk%?5x)Z%mer)L8)M5Pdv;z!jtB>v%H8i(! z@7aHGQxslY2pl^SsQL@+{{G8FbtARWhsXoYh*NuVUogTrJa zK++%hpM3z(OTbs`#b7=+%~rMcgk1$c1>{sff+V054*Zmw@ed_ok>_`{0DpAw4i|ti z&uBP?V0+8yi)A zzvn0eTHq!G*Sy~4bM@xIC+(60y0e?KiXd$_HWflYvY11uLXaB}85fs$eU2AN4{U}Z z3Qmiy`q1y(7a=o2gB7yL*ih;(2_PthSwjNG{p1Z&;!-YK?n8h8qBfA;azIUS>20q% zZ6VlwLfLropd9BEhmKQW2qjgfF_+W(L?lpTkh2x}pK%ZkBr_HuCVz!NP|McA zCrg~_7Zb3fVR2}z4dgCjJ(tUTek*CmP?dUn6^68*0TFyxR=u)M$tSn*eH46mfp5K8 z?MvI>5wemfUrlCks-@cnj4jh}EI2b!RBT`S$%%2VaK1#Ux9Ve`!vbkoZ(Hy8vqssv zPi@mxw;{^!|4eoa9ROT!$K(P9K&r5D;1@8m>&`M3N6pI?Hr^Pu4;axdJ=4-PWKIA3c-qA#nlU>~% zxOicjroP!&tXWO}jCB6#y5bllR)gRmHlE)KHCdx~f7_N>*=ofbWNO61!P9CTgak#^U0%~()dIYC|LO`yF9|R`k z)IQSA<=OYy&|X}4)`S2Cm~gBcwd^?O3LFP_Vw7-O7%NX zH1Bm9>y6S{Vz9Q8A;r=cB|4;J=a^q1d0{RIok&-H-hReSNF5_x9uCA1IIwD>txR?O z=Wk$6F@dwfzqhUY+xGmswjc9(|9HUI=jEq&``ZZsOz_6}eogycAZblJ0IA>*Jv09u zR4@c+g?)x}@fCPM&j%2^Lv)=J;D~+#US3B43jd|4xF7DAgVFWr!WAQqqJg1?XalCZ z`Dy0hChCE)A-Zy8(C$gs_qRtK?7L^il+W`-I@Js2Z!5PK{O}(FGzKWpAwd8f6TRUO zzP`S`@D;vufge%<3|WRUIkWfl8SgFY;}BWr4niol7loiPnSO^m1nl|*6y2afudOm= z3nDqdsE62}3SG_}5eN`&>teH4$H>$lw^rr|IBr|rqf?yh%&x6sn_NP4zcSxEIb9MR zXyos~$E!TcOqFqvn@VW%s=Bxy1>ykcJ$${;h?al=^@4UM&g(?k9smx|KkLeXM+F?~ zp7SOM(LRacD*9?4&pt7PQ!PPhkkU%-o*qw-jwi5h6KM5kJJ!J4qj}8F$W}yCr7TdQ zM(d1i?&rcZi`S&h=H9+WU_$i%c$i{sbizdIG?2f6L1&MOZriIRnzAtSVC|4Ti1$-6 zjk->5pzmX!ukLm>IN0bjw!bsGOIO>TNN((ZD7+N;y5o%=t56;iI-E0&Z2cbQ?)jY~ zlbcu&FHnem3wJ=_6oeK!qJ@|$oRjWwKi=X6&ZDP+VdEu3@VawU@99<>&{Py|{1XV& zPv?69fjWRQ8M|rgzR3v<1<&Axhu|Id{_@8)AXq@$8yHf7IN~99trxDQv*d_Xyw=+KoJMSHq@1StNS7~()u}k!}$gC&wU2AB>tD%4k0cM2=4`~{{c{{BC7o7I*`zW zK!FTv<-K&GgrPaicGstShp$Zg5(8(5Ur@?fJ;yEfC(vxPq{D|_oFa)?xkc5bO+>yS z>*Uy0f%EKBVuVG43z*zL)@fl66em`ZHL%$U5w9^aD)$}L?JDMEGR%U)(JVvdk-*h9pgTts9>?Yj1PKl7S*U4ll_B9Io zvp^Xy2Fv?m`-`^%@00&tV6&`gkM*Ul3N+TLC4s#%TO#O!%86U>sR9cU+~nK0ZQNi9 zasXW%0B{XBCnI#e^z}W2OuiNcu7Q96*uAk;c3UtP6p(LVNSXjd@nK#KfAPyP>>*U`{3GI#+ z)p_?FgVIU54yz%|#Sw4EXS79>nz)nP66Kzd1YAg1OIi*4(V5*_tht=7x~2}!RDAGG zFmVP=F0Hpmp{;g;BhQo$WodPC^`7&S2~jVhV~dmLa$NPM;Z2BqdpFn=A-W1M`K{~f zZks*XYuts+4>~3-P^^a|TWMBLN8|`!zxesu<$4pkP21U}MN;td=#A8_iHl8A`hTI2 z5b^7by~L4k4&$3npA~{PWrJ;{zpOdQXYtC4F1lGx-c%yeb>>>yr)m=!cBheOwIK7> zin*JaijHJ`(z(eR%$pF5=7G1ZEUM)M9=&&e1OzDy`{DU}6m4Rt15XLrz0_g@VpURx zq9!}XFh}Z^ICxGFp$>&?zQ{gfL=aBqC+T9GtkFU=j(=9c>_^d;x+qQ)r!jMGEEd3Y zh)DDDaziMR=&&d)DEyr%7IoinNyxnWU?-|}lA)(iT! zX8k}gkFef{TNqaJu+ga};2$ag1Bu4ENAOPvP%x|~8`r^?{4^ccZ~&f)El0dSNdYp< zI?<$jf2?gQ7h9IkAk8TJshFNJ)yP(;5Hr_lA9!U#zf7$@N+MUu0c)F0B1Qi`TzKt( z#0+5abIB5v8`l0VGd85Z9fnA(jw!V{>N3%HL5zg10khTtXyHU0JXOdt8TJWV5YNza zAUVJRg9!{0K>ncXHxStbkbsE7Voj%k1n2;aCMYsCf(yxY@RisCmj8`T3nv9i)3MY( z*_$!RfxlP#&YAAtJEUP7{^C>bu?&OYREg$TS-MdPpn+~btRaa^9Z zh)QVsz9e6RiF zEg82`on-ve^tS7om=&%(C( z#=V3j1{@>B?#L|^xMxr{*tZCcII*&3W)(%aUywE@J85E^Z&Vmnwt-(Mc}KNTR4$c_ zcQK58^~&1hxZUnZKayG=IlGN=Rhb%@B$?K>V%f?HPdhf=zV}#YiPTH}1ojg{+UpKX8vtGa} zayXf%K9hpADX4fpeX@m1p=GSFrZsx6t6NM%6i6+Be8C{K3~Ekj*1-x<{N_MDUg7Yq z$Uu`aYNwS>h-y^TyJ@}nTu$*CHuFG;8FOvgV)ka9)lHJB#MzE;46QPH(W;g}X0(H5+@MM|ySZL-fuLQy#vaS|6UyoSj@ z$$NILP;#&`FCyHpOvfMRAvkN|Vnd&0f@|q&)WX4wg_k*aMd~f^imWfJh#Kmh3y6?VcnnMc;;hLwmt)kT_U>|E;(nj3pc~dN6FdYnzMvkq_ZKy-HamH~?d6lf%Wt>4FFOMl zOvt(S6j!pr);Z99Wp%?l4G1XcG6x8O>)<7*d;tJ11d!H$I|m;>xZjcQE`%OK-938< z97o~pe2tEyg)aaTJ&M{dN|zAKkK#In-ydNnWjPJ@7UaDR2jEK+SUdJve#Io(_N9?Y z>M5E_r zvYUwid&DYzpV166<}GelHSI~RYH1@S=Hv?1&?(KOO^F0?1ok%NU~pDhJ!o`_Y^qk3 z7+ShxMi(bQ#b7aA%m)fW{NN2wN2Fc@Z5~KmEU1G);L}VMsHAQxID&8S55F{H4%QDNm?QbWS zDGuK@h_|>?Rb#4WF=2WiGw6S<#45GXm2blvqzJODC!*r$J3sv#f94IMA8hMN56V`j zlca7}cJ>gWc?`kO@xmkgOqeF6P$QMDXf+~wLji6JJZ_o;hi1_FWV~-W>h6?@$15gdqi}=j-)UjpU~`jkPH3Q1srsD z*g)Oi$tixlp$zpat@{TZ7CcV~V3PIFj#BQVEr+-_B2*Mx4;|tLK7@^M>483r=`?EH zk$X45jbY=jr_VsQ5jRleI|pu{UWdG--?&%cY|V+EZhLPxhQ zzv!Uqo0v!Ql)sc+=FHEL(6k!S9}<(ckR4d<+u4lP4yzySN!L{D(59SyrC3;qQA?A3 z@zH7>m;>l;6F07&K7;U`!o)z(vEG-!rjE!&2x_7W$T(3<1s)?Og|W7jU=AL#%i$35 zF|}PXz}#M0LB#1}X;=p}2;*D%hUtLvPEM?dSN^fja3XOq;Dm zbd!UNL3pD@_eVwNW`_!G(Il#ioIWo%r8a!P#vs8waSPrS@G_+l(YdKEhxVM`_z%X> z3*O3FAPoZJsI$-xZx~di{|z`qT~oY-uzzh_S0a1k8%eyn1mb{-QU?E1WEU9t5vKT9 zV-In6;qm%MPk^kO0mlIF<9a&h!P_mT$dX8nwJt zf2@IhlWCJ#IjJSFcXB$HYkLLW-nyDPE$hivjn9;k_85_mb3D;+Y4h;4+85Y5&SAetlVtVc*ecGT!x4Fs zqpF(S{jSSTwMFX*-VK>AM)gfC!QUIqI2=iY?d#tQdhzc%X9UAQ5em+g0>{))-dvU8M3%*B{7DPwFXeaqIzDefKBhnt&* ziA$fH2O4RlYRYIGZK2OXsWlGVgT6V<; zeI7QtvChZ7b|TKmxG!nG9;K<&8si{{&+Ma;#)juM9TO%JgS1|!*!4NV0rSy=r|=~h zm$o^t`2vx`!C_)xb#G~SvEUcfj>#$Y;Qe(Gd=!Q!&|#3hMAuycv5X!SNnjma7DG5@ z;e!e2*fp}QI8;Yznl)n~pK6eBlPq&IWN#I4By^Ox&?Ij{gaGv2F7^j|Tl0?39&MAj zLZVRsQQ(g~sN-TGY1D((lDCMgz&_16IoQ}2@OTO@T#c_>ax{-!mTQkMOI%?cm{Q-r z&%DG!nH?{qcTA?$T1j)xRB_sNf$OS|FF`QDh-e;QWbBW*SS|0z3}4Mlen6k!v|Fi@ zi)qB*K=V+GqosGcxt#9F6%&loXfHyEv;1*HvS9oFG!usro#Cts>4M( z%B9U(lbY~p!)-A+a{~?YpMpe5lTbhD zJyY{+Qtj|cZB>PTyLM1Ny_Rg4 zgBOluE?83ARdZkM>4{V&CW8o72Rm|hjycif#-v-DNlH}{8A~<=50b&ay#=>!52v!a z8sfbR67ZE%l>?z~9GXG+xB{9+1Z%+{^0@ctIefwCJ~exR*5fMO5`ze>@Ntg&Q5zIT zg5XZ;FF**WxHWpxHP>9a%?X4wruPVo$0dzFx7OVAo)7iG$7VYU_JdKVd&qJBD_*C% z#q}r9Hr$-byf(J*qyS_u<}0DFn6K8#NbzH{r&C^=ou%z5G}ZCX#Qd8LqBW))?+Usnu#dIM}{ zb`==RW@)>=cD)i`PwAXhnaetk_5XVeIKJ8IGQhF-1&FMB=+S<=5T|C;8bSkzVDl@h z)9xx_@eV|akJYJ)$E`%N+CxKh1fkGa`<;qzPUj9{uX{)~a7R#5LonUiY5B!7`2hiwh))PJ-`Vjtj z^%q6xyXly&o!n6J2QiSYs)H2N_9Ssost}_@A2ohzlX6rs@ti7zA%KhY=hY#Jyd%Zn>%^q(iN77a8_rnV$>Td2#2*;GlLN+t^; zq-KomUz8;DX^cUDF8dICCB zW-~*wT&wTv-v+@C*Y>eo|9be3e>NXv^8UT~dU^enh~QwpLu(LY&e{gXqP1-;5k!Fv zqC_u9Ts!k4wq||Yj?zPMpl3-r4YwSur9d*G^UL$vZ-Sd}-5wY$U8{BGD4aSUqO!9o z=jjmfRN?K(R|)8+64fk~xje5M0LN|mP>*Jjqrhz+#B-My$M zuuo?kT&*=76@phGu16SAVU`XRuDc4(C?S^s&p}sdA!aD0-_G2JM!_@&up5*S7W`E} zblV7$9LUYR1b#0N-4KS62|Fv*6pIWMIhnM+zq>QkB+lLyGZ>+UVlCMYaX8r3C11O& zF={h+LHKf}RnJ~5mMPIiyoV!?hh$)2V)G!s9?wtUHnKnUZa!@ZtOtDgB{|sgn!MUF zzV>|z4u;+HY9ly-_WtfCOPwX7q~+LcbLLddK^EKd;FZvdTaagl?2e14j`BIJm3K6! z{_b?2<8iE;&I-*lxWixsC+PlL;CcCl?-|sSG|G-EytDKe%qttG;7K9!&s2_lEg+Mj zm-val`>|srS2ktRjSo+H5_4GPNaFYY{AYbaD^tdEI0e4^+$OTNf=2vfb)^12#sFs6 zP90h5Eg2FDpLg9~rMc)uSfe!AHmJOE6* z1pU}vHmw|KPyJmAV>ClBo%G|i(GB4QV01_MT+)_EvB4cW<&6BMYyI0hnz1(AZ{_Lv zW53sTj4N3K`lHS0uLJ4HVhG1$wVAcqtS4*59921zUESB|Z$73PaZ4{ks5%(k`q6w~ zpuc-erxeQ+h<@>+dZNNkdswl9ldbKIAQx|`l%yn-Dv!E46?GOa-^Eyx8h@41KcIMy9*K$y{J7y(j+`y69Lj#sGa zP+o+K&oL8URDmC9P<1H53r353$G9aXN3)vw5^fZ@dTU~tSqi&E&ODb1xP5FgKnm>&;h$uawcznXVZD4+NXFV8S5g+qSSZ{9dJV#a`Q(C7P zerB-TI^-R9XveWVzx{Rz31bb~%#A+$-0E92ij&q0u1EB}U6ht`1f1S;M&ro6 z&>>t+>~;FGga$zl&VYRHe;V;czkrH6br`h|VZs3gA>d~B{d)N~P^Xn5ApiiKJ+ykX zjmNavN{^7_|2E*3k!D?6SQl=vgzGHzQ3ZbPM6?EFq`Kcms1KhZ#^qwKl36+rOc#}v zLt@1y2B{qm@BIE&jcn4RIOVA%o13(;sH^G`DOKgNE2@(FDmyr%Zq-k_Z9nQiOS7y! zNOeCS=km1cPeE{51x+4%;^PYi=KznyABUiAz*Kpz>hvGiF7bq=!U2RMKrFS-fEEW% zRBrCfg;;ODyTZNkMO!@giTOlTec2e5 z_p%p@Ejlk}6H6BDD~p(_D(bYUbJDsdQ|~3LdhjH|2yrmewp9b0^Q5v!i^iOS!Pxlt z&`rLg3CRgYMz_N}DwicEl-gP5t*VvvZ47$u>UH+fD)O*sW>pu@7ntJQ?02TclT1%4 zRmE2t>kif&S%`HRPdq^KxlSPVEk3Cp(OVAg36d9yli01c;Sz(?S7<#*d6HXTRfU*v zfkj!P5~M`1q5Hwt8*!&YDBMt-7mHjCbB&4}hz@xVxy~m_r%uI2)_nYYdub`eN-cT% z?H3eR>1_Sd6^|L|g@HMXA-8Jw5}${4vV7UD)k1$8kaXuCO=~I$wyRY2^qWcD4=B&< z(pofV_A<@Ubq@jkE@@eQ%s4ZHqDb(<>hJ3(_LLKRg$rr=cG8N9HsRsiNYoD?U%*s$ z>{*uUGGys-N_Q)($+2~>reUu%P0Saa99CR>%h!XgP97QtUS27K-=dGmRQ-i_2A57@9-LVH?j;*R>Mn?aQKt%=Gb+B?Qd~?L-|a_M$TIJ4!06aAf`ij zJumMm%ms*u1FMt5^i1F#RIOyz|MW(04n1@xiuvWb_8eJ=2R?L;~mZ!MSZ+uY%_XSnPEZ(rn-`wNlGntdF zJw3Q530a?`wxJM)p!GnTV+7w$h|mO}6FONT9D%g{8weSI{kj7I1`xmyfSv?_dD=Vf z$e-Lm^0=l#g@pB9kdY1#^8%<6f?44w9`juRc%=1p{g@FF3)Z%KMiXOkOjS&)P?>7e zO5Fz}oHQmed6oBb!X-Qo6*=LLpd{vbI^a=7T8ne7R(yL~hpB;gZe^ zb`+d(B-2u{HOIXJy@3(Hm)kr4pz=%;8G!Gpg=NJAs%0y=sQh>{DMz0CCqX z1?x^jRI8&*alqhAPlwf;Nj9KB4!5%315Ed5h)3*zE#dx!D#8QT%X^3G{agwQ3 z3LiskLnL^*=uIz-j2zkcj|0XGp63mFLDVK@$KNS5768{I5uBI=h9;I$BPpxA>q#|# z(o4Ucnp(j4%+bM%zQKI2bM{FkmPyMtjP~Jpw;E!qWNd=R5#jUS+qSLPD~e@%Fde(O z^qtagccQj4qov=cNy!FUa=ia{cGUWF#TpvVP5$EysP%ad9s17`+rr|!em(&b^AE7I zL*LG>F#;o**AhXf-BAh9u5St4g2-7E;usG`OTq?Z>bT<$!7OfpWMuz4U>)(Gr&qLv z8+HmOt_QMDNL;2e(J1kLf_xXZrv->kS63K-$RLx~`V~H;A6IH7VMv4VaTu@W)6Ln`Cg}(hgIv+U~ zk|+)3l#PP3^m>g)qsZBEV&fuCFI?|ee?8*tM9!&a+h+Gq*Syc|d@7gUhn`cz=^qTA z-!*Z*<+$CEkyHBk6|r&7&L>g#tFJG`A0xLXcx-t45t=~HDdY6>Fw2{vpZiaRuC>6Z zlQ9H^b!`GN_p41zZ&nOt4#fW9S|o64JB)$VonB|}6DSuRohYKlXaebs>8Ss^9FOq% z{ck@y{+N}~QPIVbMbp0xrY`*J-1#QPIhiV?iLyCmLweVoUj)^S+Hu+6m}!O)I!34` zw!nD5RpTy?jAAY8^F{Y+6TX`j4bd>D?QLfAv3B9|{q&xDjfuyqQ!9gCf34?tCwG{Q zSP^o2H4LjtV0tO4q-9}kSiu8xr(*Wu+ry2DG!>g?GZx>hnDsSOJgYFD*^5o&;MA-C zeI%Q22Rd5q+1w_#iSP`CRD}&U+WGsO+g}*;4!K4r7F>R$*WEJfqLKf}F)0rk? zc%s!`_c+%FtFAn4HVK*CYpqGU_dabOXgKv4@0NS2d7*Bcvo{zH!@l>8519bFo|&&F z=a9Vbay+Fyei;)-$8b7^%lE+`rxO2`soGpep8B5m9&)n4)v_$jij*3aKYP6#EA*sPGd8PaKR$@zYekNrr*@S`_Uk(7;GP3S+fYg;h z$F$oy2)<&2=;`u%K0>5Ddk|_zgj4|>B!Kf#YaPp<|K?QqMyYUK=fFC^Iv_p{>W6@l zO2_N*%VNV+Lpk@5`P%8sf^+-WlmO_4h>tIYfP)D>-RIZ569n&SJ@?)A_$5Srf|wSM zmH#{+mcW}F<{b#3+t&r|e&7`96y0S@we?MGMbBjTsH@=l0t{1S-FIU_?%g*YZI@uc zV&$AQuPraP_&Q>`ULZk=rnPXmhR&lM9r)%-5pGn8WyIr7 zVNv@10AuEZF+EW(+`a;n_BEDMp?^~8jvZ9@O;yBO8Z4T`gJ%OuKmCft&wvjlO}6at z8$qBaMwG~O+dg=20(6`%iL4PVe6m%#bm@=1Ae~%eJzF>LJJNiRtKC|sq4{$2Bq{y* zfZX6MtoTGsgXvKW)}uu&nJ9N+z~;hWynqYQp=dA0ezaozx}CeZVPsFK|LJwTomRSm z8*vBNAE>eDhebXz8o_ra2VR*ok*LG%t=Ko}zG&oPbo6stWUleS>g?na17>u;b8Mx@ z;Z?b;FQ|x|B{lgTotX)wNuIu5$K&SGhLEwJKjOzOkDjdzj}YBHawKLb_SolHw69r!g%5Q)|ut zXwCCVU*FmQ{@GeP3}A3JL*0A%?6RxP7nFqK>|;GzQ>YvTI&i?P_48GqK(A*php>82~t+~7(o6Cjf zGRl_A;OZgs+5S43an*|zpfB{3p5MmjIvf1;PW!(reZ6`erW2X6v8HcRHkC)APg%IE z65~4jJcbsy4C=k=OrFSn{e1{|I*hI$Rqp>smGxr(Rb}Xkw5O2k?i5o`1NuE7>f|?% z+!J#noE0LA_NzLxTx)e^WXqoKINuTbrE1 z#bVc)Q4g2@yhqbwR$OCa)}9E)oPK>GQcUw0{XrhGwf?Lscu7y3MNQmYHk>&n!D##>l?B^ zdy{TXvtMbl>3?V^5<%{f>XMqyvXNDJ*Ku99H0`aahCXw3l;5Kib*Xy6fg5&5O|oxC z2n;?n5@}6T-Altv7FMcJrPuI*Z#jRebn3#()-^jd&U}Wl4-4D@;y0EswA38yu)=`7&A0l z!VG;vS*=hFtt2&lmTmqGo@l~5Q|8maKI3YTT3zpj+Wk?%E7Yo5(kG=-{Uu>k*k0|e z%#6}!(!vH_1H z1YXSJbb<26fomHLM9=m0Ju2TlMY7cb?FGGV2(Gk5r! z$XU>onwCFJP31J|Md#&;muM;#IpxlWWvG@@O))brt&U^*b@NYg4Y=`~=(dIm&P#Q3 z%Qb_zg~X<@Nd4B5{cN!o(T}i0?=q@qntF|iG44CDi?=9y^{TBY27@xpfTp4yKCYS-o`Q3o3=wp;jJvZcv7XOo~oT)mkDw z>k|_SjJ(2NC33ccKJw@gjz^zra`hJmheGCt+us;2mcL_u75`W|aK^EZL{|6sskm!Z zJJf0TEs@@k0X-+KJ>8?xb4YNW(KtP$xmdbKgDa$IA~l8=n~xzE?_KW-c@8>HZ#uV^ zo|b3ANK3q-a>PNzIcKUyFU8cv{d+#g$UO0x3WKHa*_?K`VDz$#w8v2`WdU-7bGwnN z9&8?S?glF(??U)2sa+l}xwP|P*P`|ammXs=krCWGcf+lXb!FSzjxX0W2)p(gHc{Lb z-?0o2bl)4>?_mbhP??uuurTAsXR3Y#>595uiph-?;#>_(Y<0{zoyyjQMDi6Rmp!Nta2_crQ&bb-(mnT<^15}c9Q1*a$+OaA%uDjJ1%% z`#?>>-1`YaZ~94+h$kWvcZF`}W4DneB=M66USh@WqGgkFv^2Xv@-5v+sVXVyc2V0a zcGB(DoE7OhyqmWCB_(QWd9AChyo|apMJK@`$JSZ#tRN7x_!{eFjkYGx#Pl`qDQ6aD zwsVZ?hBQCDeH@qhcVVSQOUy`97n#`QZ$aY<84zs|ZOtmqm2i&Xkt?xkCz@r-yq>a% z37=7k{y0R=2~l;RNi^Wth(w3*sS0BzrsM>~2YB>N-mli|s`fO$aDDCgE~D0Pa!Uyg zZ~E}5c<7Z?HCq3Cy!!D5$76+*p1!|HDn|x_GS7~JG(F+CtbWT}?x|8Lj|iLTWkPZf zS`ICJJ2axI$Gn1eZ?I9sreOX)Yq?}RXq>v|GoQ9GYcZB1bAPshj**QuYko9 zj6;qQH^T{v#$;D@b@=B_sv6Meg^<+z~6*;mOO`$j2cMr0mcT9KgP!9 z^NS)lLv9WVSsj%z54hZ1-^&KFT-0%BMPNE%PflGqeJ|`x zu56-5-pAPU_t<|(BDGVd6F*+tG)-ZgJ3gJ!MuL!q6*}@ic4O?4vb<0SBK-VH<2wts+SVmMhdcV8+dA%xf<@QBq3oY0=!!HW zuYV`gQ^F7x(~lcic7L!>e^r}74#F0OLJW2fdC^PIb!m45;b8rtwFE{MhLi_1YEC?3!LV(I|Ca8NtaC zB8)G`#5@oGV3q*u{?S{t`}z~Sdv>K%i}_tsl}Wn`p7clvQE<`(jomh=6kzw2s4>Q@4*IrcWj|leKT*<%=J!wvi)~q2) z-w4546(5(eS9MT4o6Z1%7+)|8I9wZEY-2T$AmD%awYE9LyaIqFQ$&A4wjd#?KBCho zX*k3u-^Lh=*21VYs8tqHeQa+Md2hzfIZE@&?<=R3k`FqH8IiEpq~FL&9wTqsQ$oKGFGQ&6uUCtxAn`}<(cM~QKOrt8 z2fP46@4fX1otWy-V=wS?L12+4icho;9rA)uBuW4U1y9riq)2|{(*S&AL`*H+=8X_j zv4;HdCrlUX^`gbbsgg#+0IrK};+r0UBPj4hLa0zS<*WQJHvna%7ZNGdZ`*c=VT3aC zgD75fa;m$}of@3yg!r3>aS3Yn7`?jalg{eZJp;F-OmtsUJRHDl<)ckX-wo^ZM16xG zkHk^~pYB-wapkH}Cp)TPBF2Bv;{jjvNoq-TUw3VvQ-Y~SZYk|xtX;!x3t8Pg0 zQc(5S@5F48(^1+oH$o`3QXartb!rA%2}THMayIdDll2Gc$)9UGvgY>Xum)5}R07#s zhm3nucDw$#<3l0r8`}JZbq+t5QNhu#|K|fL(R)CJ--$6Vw4J=9ozW@)sVSx zEo)ri?(`Sbw1w58ulyzjY}IP2zHMx#l=W(EUd8t1AefCs`ne5*)I1spe$7#mUr+|^ zJ$DzlK0vwp))^MJ%``ht5>D^`Qw%rT$7t~Cs>-FzqF7Jn|2RB(Qsl~& z>>f|6+wCi^o=i)m!Zv zD(~HKl8YG*WlPo%Jds(>`=KN1#NIC`Z4il@-Ne?W>z`eTeUoL%nB;)J$9|e)+-$=R z`qjBgzoue8T~mvn8pD4db@xgJql#4`+ z;Dh-0ZMz`2ZEbYUApiWYPV~F$$x8aa>ijzYjUBP{`4^d#yqh;bFSYyIsAYc~b#?2i zLD1Tr7qXHL*ZKQQVn*6~`scqERInV+LoPSt!qLmEU4S0XwNs2cLB?^x<@*q1Md)+P zcm%{UJww0V3EkgXGwe3p^aWM-V>#Sx&Gv88Z11_4{!_uUwQgF|@1bhsHs9gFxG5DZ zZ|AL8e7z~@6a95kK6iL7*27KtpOeA?-MoT4ImoR*uW{|cp^OCX|AI>W@9XnFOU1sC zGF;8btJtmn&V$`a<@S53QtYm)8o?F==)r_4@ybfOM4iAeyzN_S39GjzJvwT+$74M6 z!?z7rUP)Jyu<+;E;r!b6-Ff+)ynJMyT&^K`n@-sl z!z!yfX?}m%9QPQNe$SDb`@(5*Vg-1eO5qh^f%V*4yi?$0OGd>{91V-{#<~j+*YB1(9d|0U4J(t<}6UN`|Hu2AuOJ$N!3ojNQXzYHNx#VZE z${I9tduWaX>-0BV7t2?pL<=S1ch&HgN*Ky!u0A!6be$@N@c3rBh(Xm^3-BpEJd2FavDRU-!e&2 zZn-K&I^bkH6n6V@mUhYQNY2BX?i?_-<9SMma+P+8Hp;zwovM#J)|6&WrjB8?niDUF zPsxBqhUp$o?v}6~51$qU`nHL=>HJxq_45#QKc89AXj8P2dx!#i{IeoQITxOt3q$Z& zGxJGUMi#9}S=k z?~}jI+1Xdchj@Y}s{g)Ho3V1Ir1I`tJs7%&Aq<`8X4C2iWKhT5KBg5wuA_1n=ad^~ zw{wZ^0xd-Fz=G#vs46=BYgNalm-EVCYSq5y$-1$6!6hggU-MFD;ZH}uSn=orkx9)@ zdG;f**V3jABPtJVQC6tu#Zuy}rJb?ih&JQG96Q%hIh9sj>(7?UrAQvNF5~XN_|eqN z;gcSWUfZNis{Fn}d$aPOhSBHIlk(>Vc`TZZzo6cxKq*jxL>HHoajLE~WV-v-R6dZ) zt%<;8eO};6_84k@S7h4zp}A$@IlY+t|D7=0yviuj0~QIW!`QNUwZsDIXs9^GD#Haz zsn$r(&m(T1)!N=&Hs~=$y4#vJjDKgznd|n-QAXj20~a3Dp2itdS4W1RlEwv|q@_&j zB~D7@W@|&C=<1p>PLemb)w zEyVCyheAaR_OEiknIa7_=>z&@SBO5oX5LZa(tEXNN}8$~;xx z`23|@t1UGiC|0|^pr74JwzH!#L(9w{dgxIzj#IWJ!jCrAAUfkLqaTu#;P7^CJK{x{ z#w~wsJ~*qvs(M$0RkE*jWqYajfUoHVo-%TJ?}MScjXn{i=!nBTZWqJD5+XG+F^jR> z)@^69qBWu}_zt%*wOBM~4hs^J{VrpRB^F(HBZHq?bd%28r_UPog!cph1^kxED*r06 zSEgGhm)f5hs7{{%%nmdRkZcBohY_XI2UIF+5h>ScLHIIWz9;vJMK%#lA`#mDxX}4T7SNtYXq=NpH1L$DeQ@c%7`ak$bJ}PyUR#4t?9ciR?@q{tGx}e&-toon3 z4SMKhO6X-UHyp3d+I#pPD9hn^m>xfUwOIA@*IG-sm*|zW-lftjed)-LG=ks7sNh2j zBfHEKdhyM+Nd1ymM>UZ4hB?cT_Wx(mM0!gyPgaqZH{)Y#?=s`}=csEPhq!(v#b=K~z)oW#W?FKAB?9T02?2iJOaMxc*9(D0rk zkn{8z$c@Af;RS$SSUq3VIgHVSc|oSu5T;5ls-tZGjSpB~Q%$D(%I`Al&@_(y8Bfun zfw&N*Y~kW3n$M+rO&qAn2?C#*M1hV28leYF|JCK`rqkb?Qc=J<#fk+-Pr65e;vTRV zAu(F_oCeQR=l~MJO!4t1Mu#AXIcohGpy)oMh&sJT5jtpe87Rk5J4ky_5R~LN1osi7 z>J6werKBi}-9v+eBJT~Fh(2+qd=!wPJv7cepX=0yuh#03A$C`2T4qL_KGB@2ucb$n z2n!JR?!S!<%eOaoyjfbLRan_^-25bor4p39cIi*hQAN5OPrCU7>_lh56_SQl$~N*f zCUA&}iTUT)*Rm8d?c_PM$7mf;T!MB92*VJ!4utnA|9gD(^7o}cj45Z;^=NoxNzk-` zI*}u=Iwu!_j?x$E8EJAf*2~@g2COrH56>JS23_eZLRi5s(z>KhQZMSh9#f;b?%)0f zp(S6V+32ELwE|JnlOlU{Q2R(=%pUBm-CGRKb+neow88L5hX(8PC=UaLkQ&yAc-?rz zT?7YAL2+JsosutLkBOsoY;~9cCTTlUWfPNB=_s6(y%IB8OmrG=)nGKT|K|KBwQPr( zf=ti}T@!Z53ARcio|Jh(deWAu)WmniBH$VcaYPD@CuEVsh!PiXmNFeZ4|HB@5zvm% zeMIQdYUvTsKD|722Vulu*#jY2{4tToX!S13weO@ckNv_`MP#mShu32>ld^48p(TdUs=CNp6S- zxhIlE)lqObkX)~&Awgp)rrNYnRkKZq8E2-;?K1zGJ;>g~=hTw=naI~_xx%Y&*soI7Ku-R1a_4-_5+aNuj0EVU?DrH^6lJ5TMVy%)c!N709q+#WJ%mZx@c7gbBH)GA zgE6(m_ROVUF8yN0ir}$-2#e-*3%Cx>{06bGl&vejpaPbjHhS7Mq7xkPi*z7{7;~9QWnu*ld2d0Yl7O|S$?JXQM-?8QljABcIydag^K@)`Q ziY^^jtFBn9l}e5sQ58;2YDyLRNL1B#v)PWlVbKyF?P&v6?U`0a$A~dTo2X!_`$hr%(e z5xG*j8Ty)4m?f^8dcxPOHVJ-(8rlZxn52%;SO6l5N(>M7K<*D zRZ$zR4UIDK+|Q??Ak*&T`MyE2a}<9fK|+JVHE}I|*R7n}&5I`^%m@)?pgN5(;*Ky9 z_xA2#+Pz=QZ!nFC>7F=nRne(b!0P-9P#ak7xpYVeS-P-j{DQc~LZFp?(V0qV6o6Zd1zBD~roi#11ez0^_()EhRh=FSgD7*ZW;UF1ErrwS9Ab>W=K9#x$xr ztDmENSHj!GC=cbndlSBs64#_}M%$FtaNQDN@66lM)TO0lU#Z~|R;yhW^ptFMzTu#0 zuWFlJ#Ufdj>)v4^U>7>$r(FwsGeI{9B zHMW@nS-!+OCaDd!G_6`GELuuk=J@`wjL<4ws!PD40FjsIY&?>#H5k3SU8-@P=)~|1 zqn3o(ld9QPU9E|oG$or2KwP&z(WOD!}`Vn{7pykCh9;E!t8?Db_b}^ z*5?CNF=AnXg{~m1YZd$HRmbxcyP1ag1i!_pNn{(nbuntg_AfZ{M5!;njR}6xOpG+# z*Q&oeaz1c{L{0YPQAOXY5n9TSZcV}Dyy=}u(ap51lWWXT+6&H;+G%VSMc{~qmckSZ zOXTc7mgo{;V*Hf*_K>qqvq4WNT1|fEQuZW~KV~cjC_+l~m+UPdsQW9)G4&5hn%y%% z4^z;#C+gx8lhH@2j{VV=orQDB2`+*FK`&9XH5ZFg@sPYV*yFOw)G=C|l;gRTD53f4 zRNqs#>eWwjH{sKdjP8^AZ|9QYE=Ss3Eutlbq#W&gIH}bzgt!Tr5`GbO6ilo=27}d{j|6j zG(&(Na6VMYzQxjO;ZgkLy4jH8xbJfA?;|>uRyU(n@s5Z0zZ0~_4mjw3W_`+QG%8VU zzo5ZZk|6QWBl0ztcts{$_q9cWo{hZk#4n6m1C*yk^e@(t= zeq-5tnY@C=W<^WH28)$b!~$o;u*`e<%32cq(j?5M?cUw_B&Q>Y^hRECKEyn$_2kkN z#kN-@J&|pS??W=hI#uT?YA^s#+Ec zK*x*l@FLsZGX*Yz(~j}c3ZKivuh~W!@AvL@Xw#3F2^^jZG*IEZ)R(D^z8jA4%fR-F zh9dnR+5H;Bj%B|VtT|kAGBmN}@Y#{*YiQ~NB5$>9g85(3O|Khrq}2s#Z7@g8GWGS6 zV+B<;wzFV{o!?k09n8=(?+2<{gX2XxuGyx#rB{2tR!;x_MX8YGrv&6+T?v+LBIqpt z)4iIdU14E;+qyo8$Gl)C7zuXOl^qR{ZmHymL-MVE!28Vm_#tGMu_2rx|1?(`0pj1t z>uZkx_!l&~^Uu^jyaD=8Oxm)Re#q-<2H@H{^mTu&6p+;)DTSD~&>cqppGar#Y&&w7 z+v|UV|LJ+@emOd&Oh%H=Qe6TlX0O{vo?y|~lnnMu7Kp5lYLz>GMBEoXOaG6t|A1>E{l3TXfaoGt zq(}!r1pz^%N_VALD6&ZasVfKw2uN>IR#ZAHDpCUoN(oIwN{GlxRjL>RQe8lLliuCm zodjKX-~0LhzmG4&%w%TL=bq=@bI+kD#Qk7?Crh6uN+$#n36$2cJLwrQ%$IqhYm=76 z@0CKCLgYe(o$~G03hkznn`LU=HmMkAkLOn|78~T0>3ouMh&vZHCoJc0L|ppH*3MP@ zT(NlM{iYH{&Qz8nXR6{{CEfYNUb>fHK%c2t{N&t($8@_zFPZ}&^1ID7pQYZu@q)sz zic!#_Narnn`O|=}KhsBvo5Gn1ZB>gKxQ|2ql_t)af|)|m`btXT33E3#N5xwL?n$BB zXFE0;g1yvkHb0daoo!9bTFtUivx}-MnCOs&S3|c41VKKl(y$;JU{qB+ikl4$1L9^w z4>A@YVgV|;EYPl~iu&np`BmfIQ?nMP!yc)>6t?4)PwIV+JDF7MSPo4v{YJ?xIc4Bq zKNVN+^pP0pGov)&8+U^&)v0?!=_HG~9uvpY1^ZHbiAlSDc`|oU4QE!lje2;AZDfLk zy3u@Q)dPc(I9(;n7a44w`xelE-g?1@tk&S+Osi%J?=)5G=s!z*6-C3$r zT`x~dS1z9aCTTY^U6Qvj4+}WBdBWh%=D7gS?Og%gUQW}u!&4KfM*Wp;x(ALwc)uRJ zYmj@s7OUbTg(Wo&`(K|6ph;m&!G~F{yKiFL9J1DIG&Pt?mOi~UXWeK$`H8{0uj4B- z*4GxFGlWgR*_REc+ZawIjDgOXZcUkRM4d#s8vZQ^<3|#@F3lG5uh-IM!*}N_KU~O!(jd`~038q>MA3#LjLvVa1b-{X9{gs32clri zhC6AVsM8$%4L%BH6f-b7VUD6kqYg9i@A_;M3%s#gn#B6H(%wp~hDx(_#ft&&<5#;u zrNZ=Oig_vF-kT1xbCdwP2ouI{yj@pU{DJYH*T_05(~3B3dL<)*TZ5w(j{dWveJ8Dxjga9?9KOh z6(bd~sO59gA5BPjH{BB88}DDSVenrB$(7i(uN5L?rus8Tcd-`9v?Aj|Xq2;rIMUi$ zGwP0(YGq>6I-Ol4zlSMk!XNcztFcgHE!OdRiR1BP2H+at@sY=?j;f9G_O{QN^j_^k z7djP9Y^v0Z*iBDHGOl>9eKNjoRu1n10%#D6A1YL!pdBz|{w5v=+_AeZQNyMW-Zp6s zPIl@XYC$Lr+aYa{e&7GU7yjkAgY1MPh+6U4-}e6->p+euaC_@EazTaBqVDg-BU`t33!xsz z2Z#g`cOiQb950N(A>^zu!U7T05+n?ZA$)1n!zkjmlIa-?u#vJWat;K_&}uD$02&-b zOGP%>fz$>?KsDcVX{jBGlnp=X(t-*I{PHOtwg0L4u_NgCrezoY^TM#2d-J@Fx&kRE zZ0Svzj#%NONns{_GF7pexX#a^Ev>6alu?RrC{`~YZ6!=5xY_6WI6F@DOpS-Qg1}&7 z8oUbV;$mv~29mzfr0CKDA=P%2sx;4n@^NSqxDw9XMnB}baIV-QGT+f-_RnaM55$wc zMFSs~SuKt$`K)$+@y2nM%wBSRRMJIi6F(6YzY8SwDcbrJQyaaZVN22j3nIGJtK9&r z*LbC;(8c-Yr;@|h6HR3-hz3$a>P_z6gI9~&Pc0NPshd35|0y(vUFHOVOL*8t9v|i4 z&?qbXdhGNH(TLv+9oY<8{{J97DTYwEP8SYc-c1#hmE^xDf^?&$*zpJ6r@*v=8;_46 z45x#t>^T&*fA-j`e3E)QgaMcC7TIgX!keF}=$EkC$a^WS#)y^{zOX`XC_3|j_ki&P ztRm?47dgkr!gBW4m?tzw7SM&}(=zH>_F{UCy-X@GI|{sThD}nz3&%3`q=l17nC0~T zQYT4vU$n`Zyg7>KGo!vyHfta&){nO*m@JYplc$#!N$?Z13l1tE04Q{CBCLv7uWZf+ zRB4o#GcjrD3KuM7su(1%CAJDCOpWzMx{f)l%IKC5sto$FNHZN9oGq2U=ijjWOh*wa zLs|>|5N?qBNq_~?HHP#%F`TO4Rf7DmV75qx3|ZQ@UISQ9&sI6{Rcy6*7B?cJrGT3z zUMsLAO114tFv(5*uv*m9Kk2ul=B3KBl5R3Di@%+RJAg5#`d<6W5#LItFUB~-3SXS61H5Lis}D~1m-}j)HnZi%dP{PwynHn1KHuyv_wrJ$f{5Q;$vJG{rt)8? zbH#s}?dj=H?t8O(edFbKjnizNeM=+nkn|D_7!pOD7orD6iHJbRNg~#V&`}5Q40Q0% z3Lx?l!ie2XTDQ>cKU9TKsIgb#-5Vd;E3RZk%In23k{c7Nq}GzmxC6fSuJIUyO00!A zsaTz2yt2b_UN_&%$!()ySE3lUKws?9tbJ?tnzZ-O{L5vJ1}n43U)B%oZ1YT#!>X{z z3zAhF3Tns8P_p!>v4D^i=Bzq@o+^u$@?5t+ItA==GwnmbGJxzN=k1nquP4ZP|ET|Q z|EaOup3loK3nS#{oNq;9(7fb~!Hg^il@<>9o4Du(U$fz)qM7)lN8D%|S*OawLY=`J zURZ5CvP7PiyYd777WQygbt79mFYff2Cc@sj!}((cp$$DuB)oTOMd`jtrdkD!{d0Hq zOI;o6&>9sjEDa1}DcyFVpex{Q^t=$n? zTff;!kNM?H&~;#y3PHR4cbNpCx2oGR34!p2Qpg4fIZ6{kH}nunB{o1n*9*6;2$dtzz7@!f$WG5OdS@TAKhaD%p{+N>qn$AEmjeie{v2`UOArVKweK8D9h@>^>!NnN5@Y5*b_LPT# zxDfQ-$;)gmdX`zE%z5a_bVjCPZ(m-1U-vWIFCBBDWwsiN_R;6?16J7J7{@I|i-h+T zKI17jXH7HwlQ|Si){0HAyx0Bqhm8}|Wrb3fSZcMUHMK73Nl3_D>Hud3MhU!;I_4TY zfytz{yQR1p>k;jo;@HfXIBScCK6!=0}y$op-q&*24EJ+VN$ETw%F$Hmq*YoU&?eJ!`Uy~%g zy?c42OuykiqUC@LhV&5X0^CxF_sE)7odn_re=6bi#3VshBrz-Np@#w^+quW4#-#Ap zhO*v_N)?W(shgepr>CxD(ARx_=8D>b1nYl}{}RC+BIq_QJ`Z*7gX-7z`1^Izrc-N$$Q|2Ai0~AY18SiJE1ZKvXMW3J>=%1i~H2L;NV1k2G=%L1m31Mn?Oi zPY;m10s0_v_}1RH;e{h017yTmK+PqRtUKi?qju0Z+@FWe) zZ9tYmUG*3p)JiYV9MeFo`=Ew-mWCR$HTSEJ71`xJXq7{AyS{4-^UV5*yC=pm+0+7` z3IDQ;@HlJJ)d&vxOl#*j9He#}eJ^HwC|R=`qhQ?bMx*{*ANOYf+vrcy#( z%*!fu73EHQZpeSZ{WAT_nC!Orla=8cehPlt+a`TS6?AH^sUCXzTMT#$u|vl@AEb|J zj-VJpla|>T&vz(Ch>zkJ{BK3tT~|)gP|I`?mPzB$_euky5DMPvlumM3qzJ}C`9+$( zkwzZ`z5_wm{@&?U6vptDdA)IGzd|rL1Dj~=24~<{&ofwqq=x~%B=A(Ra`JH}k9mES zNSX#$j}_a+X?GL*!!Ctg^+lR5D*emT`y@z`@-i%)%xGzyY`f_m{IH(3{O~%HZBM>~ zA=|2c`G&AN!Btyfsf`1_(9~cpu01i5axF&@38hs)o3=)5O=iCRYM;Ly*6Ja88=>{ zk%&)LS^%+7g2%~JreC{ndPE4j72S0d3LBA1oJfIIBnPZk^DAspGdTg&?n;`sGTv|IWSCA4Vit6F>jIXE}@EAMlF+%Cv zSA7v-^r3bfb}+888%}yr=P^T)GSFJA{SpgORnCz&>nlJFounTh|9UQxL_5-x zLT%En>V3MuXr**`kw*xgSEkKMxUoOUwb(%MhU<->~elK3VRd?%6PaMMwrGyv zaSRc|_t)FJ`X#P+quJ@B2a)KpV$!mjDQDa`YU2OWr@f~i(BUo3vXYNv6&4NxMIrc$ z`HXn*#v}X6p6KyDoMNZUSEowS%lUv^FHKjh$Ib68IF1LsH0Xbg&lzwM(dJi~<(HbT zbqD_9{%MEh#fCbaS3Z9I5hkB{q7QnS)P63|eeL1TW1qTI9~GY!yN>(Q++!yg1akm3 zMBoc3oguxmAC4l|LJDnCSZEKT@C0UXY1G8Tk9w?Bcb;uJr4W>!exy^P@NkX~?r_DE z*NrSIy!krvRh^HOO>LczF2{{|e1LJ>(-#8?j_)hipbil~CwpjS*_Xp+u&_m^ztYqx zeu`+?^2xdAu11kMy8jJ<_jsQQM}U+^nRn8hbuU?2CoW_lfuk6{Z5*X-M;$g?s#Lp5 zoOsAY*6ZOOc_c&y8Y)3C2L!NaOmi#2&xKs!Kw?I-sc9S>*5re$If6ov?@FiR;f;sz zz#YJH5ZLG~&8c^Gmo&H;`LTORPrl~am{R|~Xd9<)EDv;K|31-|%l^8k$+$1V#^mKF z(+d;>6!j_Rfv+h<3TdWyL8_>~?Rs`Rb}Tm=jm4ljt`H}$%)2!tloq-Ar+7YUvm$aP zO6$b?`US}v<}!Sq%QDKdCzE(_9WC9Pmp|UjYnA9~i|N80|IC79D-acYMhu*oQksF# zPf1}=S9k7I1DQMIQ2{cTNl!?nEV|^T#=g}mcSPTd+pF^+SCC6_LUl8_@ z=6o7uXB3_mK3MAbriQxWkqV`=F&U&WcZl1 z9{Xbk(Mmz^U@}gRd_TXTgY7&8WfcfU z+eUwBeA{6kslOnCOTw^$Y9@??d?ZmptA#%ecTvCr@}r^jc1cRUd&URLX@CIWp&3Hx zg1|s0kPkTtfCbT`VSI?P68*P4#r?25LGbMXG{Bz@e-M#FBtTPHNYF$?fddrN`vIHJ zzI!B@+uoZD=w5ScdPL?VHBVX>%%C$&Dz=iaW(4&LZ?fWgMy6>a9)Low$4Eu`k?!m1 zN&4euYPQ-EPvn{8T2J?*wa|5!AXDHoRUbsKP%x9WVh9Qa7l@9yXMNOmgdrX9lYT#+k<&l@eEvNq1JMmrs5ZU4x};xek6a}`7vapy1_^j$yCU4 z#i)Wnj&MPe8`;!domr0w>rSSs8ODYrBp*4RohgCSt?O5r(>4>C+ofTOAD!vdc3y52 zG+dXriS*Icc5Qh3#7#M=`ZRZIEn3CLjZAv``4(sGOAD_QNBd}kPMFV`fFyGb#-gR! z*QvWV3XXkZ9_c0t$RBU*)Yhv{l2EQ}JL$@ydCmP&>uOSn6Pfh{jxnQK{-T zIdLmT*EoT}Ty?Gw)2U(wA)|i%JQo(PBc+V%sO+?Z|8%>#AaEW9+C?Y?7YyvA1z&r_ zNG_1|OnNDZ2ElJO&nwG*WlG$;M28^fEUl&~pTC*C;2P|EB!FtZ@??m>)8D!!F^3+F zeAU^+IU3|AP|cZDR;1tKQ~0zYYFV*O`&Inb6!$gWS3=)$MdiVCUILP^s0Sq7TK z>6|{JhD<(A)t@rv#A?C^P2&`7nwD%EGsc{3^LmK793s(2*DZreVp_mku8t`aVsT;u^ zw>XRaddf7g6H-lWAqDx~B&W~lwb6}~fKY2+R)3 zkjdgjq%R#TBB7;32vz4!atx!|mFf$yzZS-yh_LFI>BUbs79iZr4>M@6>rirUK}Qh2 zOl{b=GtHeCGXJA`*znx_y2^C|F7kr|Fsdol7#axKG)Msos z(eNS=m!s`L%~9;KM{LYfqAoE;6yftf)=gwu<1=j{$YS+b8aC{{3Nl+bMqXjB4}apF z<2?E}pMADyIqSYt?K_$ zYl4t`7KOM0?z*OjFfS1G1K6@{ha*8ls}5;Iy5A2Tv=C|rt<~>RjJij_^8TL|e5liT zs-PrK%>GG{6SD);qf?H;d z0hOIqW|Bdb4@wZ5YO{Lpa?=lVdUQ0q_!y`R;)}vm&=e>k8iS%*|5C}dw8Dy7JzwiT z)at%Bs7`GYyM%GNR2WYr=qgrB5%U!*3wkVZ>lx2KjmDX6`EqaK3LBI)%iNRb^!X%3 zcJM(2zD>(_K06RpB=6HNDHMp8luVCBn|<)<10h@2;yA*cfyObLyjgT5$I!b)!vv;C z|D>WhZv$?(Hd(u2&bgo~7PD3+m>Fg=3z`KjPr}%1HE3NjmI!*MR$G7SK?|1V*e{nY zcJMEq^xp5Rq%HJ3P?ZuzYX&Wp5A$c`DdZSk}p&-1m0$SzN2}76)t=}&@r2$ z+`Regy5&HA1Ni*zyh{{W4;J!ODQo46`e!NKX_B#pAPp zh|8W}$rv%PN0O1P=}-S7eG~njA_NIZwnaalW84_EFR7vnaRqOO2kXkS9Q)&f+eWe^ zJnXvg@;ox_rG0&6dvA#tHN3z%_D093IpYh@Db}qPtC7VNGtFEN^M~||`3E%=*|XN= z*)yxdH5X<`^8E4dd6X+gDl&6A#l0Ov(&IC6mq+iNZhey)M7lK$@O)$8Oo1EM*)di7Jp%8e?Ibbp1Itiz_ zGb|g}nt><=kGVmf6K>luqV3%Z|uxNu)PBISpSM?rD9&*?hiGGgMb z#HOUfgY6YfI-_rM>5*Mn2HrAL@VRABkxQ>hrY$bt-)Ku;4DEt*7B3kXHfpIajPhOWSbA6o62jcnz<d`Hdc(;Uv1QS!9?up=L^QZjIJ1@hp;00X6fEGhVrJrx7K@7qR zQP8NU`_V|akPH2cq#aNwC`wVt9dIdx4Sxvj;}_a}lpX*?8j^s3uibk-24vC-sR>9u zqju;i(M895t@w0Y?{c0T;4o>8pBzvX_?R zNAHw6Rjvrz5jA}e?72jcpU3-a^LR%o#fXg_Y+jaGw8xos#MSi5zOt6UD>F#7sT}q8 zV|z6+-y(m>^1%_ezF^jdXC=&S z4Y`r7J>(I0kz5~RdzqCJHTF%RW6lID0DY zT!%fOx6s91H>-a}+x}f3#qe(5wxut;f$%V>f5`9%3G)Y1UKQLiH;evTgJ*{KMQbBK#&Y|#9`f6wkzgWW80d!G}n-+@l^rX(v*(ObkRqJo2IuJV4DHEQ$iV5}EZQ zPyx9ImUc)YIR^S1J}Tou81+9Chksh{g2x@D@&LJni*Sm+QwPA%gj_!W2pT#{=3rt) zG-{gBB4H_a$o!hScV9TOrCi08rgDub2cKpw?>Cj&l5+x)Z>ONqr*Y*fsfa?HY^fHw zW6Rjcy=yoYrLIQx(>?lI>_JeN1wRJlsUMx!yNj?vk;kC3*59S7mk=M4knmn0;>`m& z`4R2$Di8cut()lz+!H7IA~@_jeJ>V$94fZUU9m0G)jcy2m0$#k3Pa;ES>bB#M~N0; zw(0S}_dFl0VZ%BS4@E=u-&MKnKyEsXpPrUpsCk~x3LZ`^MNu%qt@=qtl!w%iIX?a` zl&3+yqp$qSmdMx9b*Hq(FUU!a^%O zPRj5}3fG@KxZVGg$4`p_Ih#O`)(HU&0C4gw(yPTzkGdZSNt>aR({Cx(c2waTD6Bxr z3W%zC^pFtRAsT;M@|QohZm#tJck@7|G6(r+B;StnU=_!LOv4d*7g5v)*RyFfPplz> z`Wx5l7brJzu36>ja2>KmrTB=Z?{Uk|-JNlhT0YVaUi!v91@GN83Q}FQ>s^x`dSE7V z%{43M4IX>jblqYp_WShPY-bKhxoa|K^^FW*N4;V=HQnz>S@lp@B0FX%6P9zV?Os+ca{TPjNSDNo0_%E?JyNj%+w zC%W9sjITEjzICp0*el$twQqj(Qi7*+dVfV7(YZQI;CZ6OktM|x{p1q70|~FVP->nk zmwK>JCB9(GX98yu^IY-wtqZHB11iHU_mcB+O!kmWH^(KwWGE4J4Y?<L!uot3nLA% z&h4Y0r>vZov9(j(W6p{Xt*2TzEw$V>mXyz6rS-5FER!|{>@nKp;zti$U{W;tn{*mB;FOIP*!0MUUN{l`7n87+`7bH|$I0v&@iaSZznIIPu38%7!AvN>P7ucIv8&my?<^7F_0ahF$giY<0rr-xVnojW0nXjecp%s#l@ z15AQjfS^HwJQ2BvMNL*q>SL79?aI~|11X(TLzQ-7?NY6sZDKuyXb&Q`!DATzB30C_ z##vhrV|hTpl*Jfti@Q0iV13Qnf@IS6zGulv^M>16H*tAIc!X+{7xl4YS?utQof@iO zl13{<&66Ok5E!(Gy9W&L2Z5Wva|*j9@@y5KYTh-KR7dj!i|UA#=-nxCd^N47#C<{{ zT-dJK%t={H@K@weWc<)Eg7l)$)cK4Sr@O6^svluU5#=)m!~@3Kl3=sqoZ#C0=Y*Q2 zoKim65!XpHa(gG6PS{qTLg*3{5+=Oi&QugdIq~-!7WchsG^*cMt+Qt}QtpOYN`wbJ zT&|I2dK20qeO2swGV-zgFxWb=mcjz(n}68!UyC%1THnyYk9X7TfViltjs5<7ke24{ z0dno%SH2+$NcpRRtqlw{>Rvzi@&b=gj|M>+R0m!Z^Iw)G0B{U@j5<eX!xpuz!(Pbg$h$z)bvnLI)E6-7+!Xw#4$J4B~$wAaAva2F6mBYwdRVFrdU$~ zwy~USGVu{fnVob8hg;%)R+VSP91ZUc>Z@9KY%WgwzV9BMc0{*{A2&RQL%}>8(i=!o z075>sHyP|BPJc7j-7UnoUmC?6m)9%4A`~vwmT%6nnc6>!V9Sgo;vL8O&Zi!UoiG0= zg1+U88J&cBg%e}$;sz0ab`3i?k|HMKQU*NQFEhd{KMfK%=kEh(Le(zNT?RW_79LiA z*_R*VL)I@U+54LnDm)_l#=6R{~N=%G%*SBmp6DtUtZI(_Ngm#`z*L%YXb$v*SadG2D-pzT% zjP7c1uYy<$;>c{&yYS}w>PSmbsm0IRZD@xX^Sh%uiBv4svuS|zt zNmgR6O}B=S%ykE{-WJ?Sj(Us$iV>ytzV%=Mx_;K|u@>d#h;+ylEY~R%9DB7qT13Kr472PYM7Iue7wh2078)+STlEZC@$JK*zjS7#d+6pY{Dqo1 z5d8J=gIU(0^+)M8n;3tgdB3sw`p%I6hSgxf>Wz{8bCLOa76mid5S&teV!28Bt)eC~ z^pi!UhJ$YbY+x%&CsHnS0Zt41!Xx2&*G8zh{kgx;T25*uPwRzh4;A;T)|QTPUR|r6 z7RzE*cqhxgD1bWlht|}4uto*f@u%XGkFCd@Oejkz(e81LlvdNym3sMTzx#L2<#%hU zJ8)Tp4q6%pAt+JkeYh_KL6ZU*P$*551B#M1=PQ@yLY&?-B5d`jCMV7$G} zYQFr1vRX+_T)7b@T@ij;t@~i%PNj^EzIbjT1DSmE)$e6xg|9g zJ?FBfq;%lf%b~GfDX<1S`yS4dpr|*ll9489%OMk4Iqq&Yk{F=L-o*Ro+m&nKJ z{N8FqUsnTuSp)mu+V#oglN?hp4a$T`w~1sM)M-@{wK$Iwa1~ zl;bGGLMY?Fpiy_P+}Km8edf_nN5(}bHMa(}HC*r0US)RM)dFL-X#wl9r`-!S2aYG= zQy&v1`lDK_Ky|u*OL5vmQ{rQ9y}M4C|7g8j?fj#s6RH%i)19G=X{fX6aPDn#!ngJd zidM`IL`G-Rj7puN)<>Auy<+GHM6`2$sx!~iCfUWAyuYrZ=-ueApOL4C3>w4@_uF8m zF)LVVvo&dZ8^ugyCf$*j73q(A5bkt7=|QX4FGB?V2Bk!qmt~yElmjlCp4Eew|IY~j z?No-AVwyS^oS@mO8|fzQ)q465vefdb(Q;?v&!~Re8To6SGiG?fnuYU@;a%h< z{@;T}LR|uhxBoi;GwgEzE|LP~sDJMQ9g^Qy07Os*=%7+1Rp_W2C`bVAQAN%U{hQX; zkXHaTY-APwBg=4OeT^O2Olk0hOb3b%$!}QOVAWtNX`aBD&)PYB6s0C>p}+N}spmS^ETIEX?Wy`ai`Rd2i40J(sRr%-Y;CYgOKCb@Ue z9AG4y%w~W=vo+Wrw- zr`$wt=;izk>MWpXi$Z`0|9NWdAuxnCZGV2nkgrI8cl^2nso{A+>ZPhULd4ZKB%2$K z*h-G9_x0T$>>0Eux40yp(coc)%IvHg<0+}GpX8$^ z(r=esJpT^$UJ}TNlo*Lr6ZCUN&i8D$Qy7j=%Lx&WAH&T2?{dO!ZqK?`{6zzP;gTMe zPd!gI6jv8Xex2V6IFu@=wX8-=Ryd~bxFj>A-}O1N%2B^C()ps7hkh>EK9afNBpR>e z+Hz=94||39YCu{yK+?JQxin6$(_^W-s?;v-1HVwQ)BQwC{E;tbk_fpU$MF>t^DS82 z0`n3@?g64Q%SUIK3Wbtuw$rYV5S{I0>`y&<%Wx{V+3S&qYuw1^2{Kpv^81ZW+5ya$ z-h3I$S$n*<9nSyFNbq(0p1Uky&iUlpj+?iCqpeN@jPt?eY}!G{E}T_6qE7QBaGSYE z>AFB=@UgJMr58TMuxunb%OI*~(tGL3$Fezb%^V+`^myo4{Jbu!M}c-ldiKXZn}^4n zjq!a(naZTkw~R$NW_Z-6jOY4@7CD)PEfQT4b>q{WEF>07u2q6hE4)z*98y zS2Gymt!>*KAmVjzlxRFNt&rs_;21xw$@`>a{ehxNd%U0QZ*x3r7P47GS#WIAc->lA zeLqqU@DzZ0fbf}Db^(vv1NPR8^WIK5Ig9qKzEbAZ-v6d+Bxh{3(?RoVuYd7{!6@!r z2`yLbM5+P0JK)CV*$CYOMEN58r%ZgnNc4z*uvh0tXx;=k2(uVSAf#9SZx`sneaIUJ zDQw|Dm=<4zrSw3CG)fGGAH~o7U@i!R5D0&ebO!`?R*gcIW2R(+pktBvsh4Q#YL_qR z0`^wiQjVx|Qd!H{5Rk)2#EVVr#1r7B0b8j`t^6ueL z=zMM;W}7g~Es0rHbB@cYbOB(E#`B(Pw3=)&%_MV7q`p{_uF`}KBbi>&TU=i6JCqo; zB}tO4b}3ycr|04dTDnJ|`1aiD^b4zev|S{oq5D=v|1F(@!@nXi8Ht>LMtE33^TN`e zsI|T#hwkD&{kcr%^yG*m!ukRwCbClfC$RWj(qtcSdP@?koG6t!b15Lqto@IfK-9k4 z35w|^fFYzkg*s#3!$tE1iGy%zWLzA}9A?oo@ysqbE*v@@YM3l|2r-RxzcfntSaS7q zZ?SxfM17yBTiXeTX_HS`haa>UCdnR8DG0XtxZqbA?OEXesMe=qvAuol^VmqfBRRtE z(d0dA-;1(>CO$k%n+J-i48z7JRU{p{A(xE_r+T)Ma9rE%a8 znaQO*DDEWKWjQP2cMwAt8t?K!@kxsqI5|?)-qvskfitw-bK*yVLY?EmhEh z=D2j^vA=sV<+&Eg{ZSuBs;@!==|9BNcK^9wMoVAd%C3*kzn$ej{?bYB)l*gdk2{dy zilULm{(a{+G=S{P^25sZBHiVK|BVtTNrwL$CFrPD2f|eUUj>SPQ5%n@1p?m@DYSr$ z1wFC`^7~-B4#!bD9ryzG{=VxPBZlrE<2Ew^bq#EnA#$VWcK>G&rXeF_^BI9pK{T|-xgOm8<}wzejldhqAQ)@qa(n5Eat175VP#6}sQO$Xv;C>smo6?&QI+BjcAOY`}te$9dm&<;B z$s3m>b@gd}OJBX`)k*I!Q7)ryeL<{k->P`sNG&fIID3D zK_)be2jkak3QH5~;qCsOZ87|Gxh=0mCzNIeFUNLCNn>44Npvp&2~)|DE;t99!XQkD3z z9TO=~z{L`p)1)M6^e{XbxB9ZXmM6R1ZDno7=CV^`T?)fTqFkniT^9U5ql=x+<>H#_ z%|3LN*o7QogyV6P(Jga-?wJGjryH!A+@(s}>ty*oNLt9N~&Md?>yqcb4<{#`K- zY4hmlb5S6Ul_vCzKX6$6pdl*_T+OM%7%1A(h`^n9&sxUk^MNDw&mc{I;B8gdE0K-A zP<}Wf>!`1NmmQv*6J;PiPc*-w*5IL-xcKVsz*pYByjf_(^zjk6=JOZo&(*33uQtCH z4~*{O^jMTn74tew)Xam-m{#&~U!7C{M_|S1?x7@raq+;JwYQ(b{zB~?%gyM^AKAqIku$i)k+1m|>gX+u?wm$z zSc$G#!{C%wUSE<+QCu|Eka(}hUnIlu{dIz4fdt0e@5S})(&5VNW3TYRx;iyIp3M~9n~w}f0m!Eq8`1ON+|iX%c>@1f&a6+R7sA;Q8yEZz4r zA7zpbqyU=TSWLS%wiAO^X9URnB_w3@w3=l)1L$MGET&EQSUI*yK7rl+5#1s2-izD?4vwD~M4-MdOgyv2TyLMe^#aHHza_Dt)Z*Qv^RG*`D6fNlSk=X^IGYoP0&5CzHp*O8c^13Q~1&rEebS+RLIKmQERRXR~~uF0A32lBKj zIwk;(sm4S)wU(tj(m{v+A&gDC5_%mIo~b(`k! zjSd0aH_CaD`8N#;LvxfJd7Y5{r$7|Ag^h4)VS|MoP-@6B`5L{!&q~%D#iMk zt^??r=arE!ZA`YFdG9}wG(B^b*8|5m8TYuRt`heE@%>$z3L6X)$cWZj);!}WW)kk! zg2r=9>f?zfdO8IE+da=jr{fJ*^#wi@={zvd#_Dq5Q$^>zCRZ}2T}`Ha^D4t`^n{%t zACTudH1%^B5E^9Z|1LBj_5J^sLIcY}bZr~(t3;<*dg=+ieV&fX%KINo>gl9j@LaNR zi|V>J`P-MTD*+rCe`aZ|XEcp@N3+aDXAK`0N}VuBPjNJQnRI4^H@1{JRlJt7U_U9C z<5M$%S=+~+8QoejF$JQOW`Ch%6S7X)<;L2DY-q;LwerRgQkv1${S{ewnYQ~lwI)xbbc2ljzf!$g_qT-xl;hrx6b)Q^j(M2PsGtYodBERvMnszp zQa9Nbpk7L&4t*z(+Cq>+7=$3m-{T>Jf0^PvL7NRR5z-Toiwj9Z)v4@K@!d>G6t*Su3YL5$zfMb7Bn%mFY~l`%7VC6glJ%tT3kDsCl~=Eert&=}qRmFxr=mjK zAqP;JU~l|zNPc)!4i^irmnJ*qP7GYScT(aZiz>tcy|b#QUFnw*$8Q$s?(WFtF>~d`)g+ayKJFQ~ zlDgsgd0F9HdS4)wlOV+pjVf?v3Pypy2uwj%5h)JZ+v!3;fkM{job;ZoWISA$C!C1e z*XU8sUY_D!L0qg|TrAH#_;8nrJsKKEza{wxL$jG)o(41xPtukWx1k! z--}DB;kxXr><0P=>&cw&m!pW~l$;CoVA_d2c>X|mH{t((4~AVLc(y=>xrwN$@iCi2 z1M#olI_6vI#9z4Qb}1(O)c1o9*__8*)w7Ly7<;c>_50Qz7HIaJV@Cf_Liph>Wbq(U zkYKt@2$yxyP@X+;Y%RZe0X#uvwh#)2%AQPnJ zLoEf8HGGu9gfz-xSgKPSgXJJ$Y%$*Yg8M{8Lhz^J^xhQfD@{ye+m-W{8q`WL*h;pS zTayTJ+-$|+?Q(}74!!uO+}n06?w2jj;%E`u2bEPiOa(lz|CkO$`XTtN02D!i2hp&H znoG>FSV*KGJPg1_@Ej5=9_2E+!)kxOs=7^C zc*U!IOAK@(KLe~Y)H{p0%=LRMP!})&`^vhnx*IfGlHGnExLt`urDk0p7$7}e$# zD^wfb7rd`=xl;mnxnoZ2lcf{=2H7vuoXIEdcR%Ald{v5z&F1`5%@(y^%B6%!FX0#3 z=)bO{46Y^H6h|iZKe#68({f61-8*g7ni=mCnPwwcli2@@ek zwuzbi(v1eDQfO%`s7p(V*M60qlWt>~T{Dg<(crF1>v7QCKOJ`5w^*VR(@a)2<-I)M z&Gzu(^p!>IATna^vECvv1oEg zq`S`s^lRCF4w>}UJv6t!W7JY>EX#bgvOgIh#%nIlXT@jmLxY7g3wnQ{3^Mi`^zfL@ zLPdocq#z7!*-@b2u1alfczpCa9Wu?;1CdIKHWVy>mmWtQL6YR(d63KoCUY{KD^YuU zp?%UYvD0419X+43=p5`R0PT}7pOfW$ed66`qv*2pG8W|z@B3k65m#0!ClSK}R!*;BP=T({Sy_^ZqtWfvCtytI2?P|vr zkD?2d9SG_6AsyH8a_y!{FUX9iriLY@tqMpkkSvq5qsL|R5TXI9wU8OPX4DCy=7&$h>x9X>%~IXB-CaLn^a zLP1>%OS_!!@iSQ_t|}J(Twc!=4F)D<3wy)Lw5zoI-lrts1;~UftTV@&`^2rD$eUkB z{VkM-jck{_m7?3t_6^O|%}Zd>TSm$p>mJz6_N*+nkF(R~I`Be!xYZ*000lfl2#>Vc z2lo}h1r1n@6g4Pl)quD}Ng{v;%pX7-fh<3ga0b;-$Z6R!s$Sqj2&=Gx1!=y4nko_< zX*6^XE1a$e1-GOJ1|Id&Os1}+nunS<+UQ-3fIA&#+bQ1@KwL;$qKonM^o=XfILTNvXENgfCAw+B3l#KtVBwis3^zI$Lm+Y?oqV$)@HUIUS~NA_R7&AbCME9qwoc z4~6y#z50Uw?5i&MA6>1coyb`jg&o=5ft1MItCLNi_5=5kq8o*h<@%AiFyP4caAe59 z{*D1p3BCd!WtO62EGsKq*V$qizC3~>%9}DI78nwlINCkPMhzxdtx^&r##OOI5?ety zer%CT5$`H7{VD4XnZrOAtJlim`%s(Z*QEsCcApSD4;tp-cmzm1WB7kU6hAamD(()= zv=&T0bF~8kIW$w6cG`4wrXRGZ{@=BkFEkL`o@YE6p9gV0P6tLp!p<_ID*nI1^{ zKX-iJK+gs-cy~5PV1M6)3i*4HDgn8@&bNIYia--T9@)xIy^B69kg`B&y8PzciwdiS zjoW~Q0v{6IQHYHc-x#C}LSZ-@cl)ob!(BKOf)#==0D2r!|B(P`c!62f3WK_U@DGs( zfJ_6>0g$J#UEVnQCIYw&LbuP;(@VhdSAVD7&4+3%LhZK3r^hG$f0VrkSQBa2KOF2` zSwNAd3o3{TONk)em9nlBc_4sP1px_y(jgRC8y)P_Ac9g72qIDf0v3u=MU0^%CG^mH zaldm1+;yLFz5j2xuIV$(Op>|Jea^3th=NgHtSu$1q;6V?<@pVF6yiQG6b^$%wa29t z_h0NNbSy2T<-F01`|>m0p;ktd&Z$hoE8C6Nj@Y}$ftm=ILRF`4+5|)pAUYseB3vfY zfPk0@vi<*5WZ1b??oZ5%oVH|N?>M0sa@JLNpeR?jwWe&Mi=Rr$r=6c^@eLEaLgT}C zYTQpYv!@MTmVER)Y`|M)ZT=e3-vn6=HIjD#R4I~4SjX)jyapi)*dAI=7e127&0!u6 zb2RQ|q&%y$ENXi9@Kf!%juZm+UA<8W#1&$IFMjD(p(*dyP{fUOr_>ZAUT8T?iWz{{ ztua2#F8+gk@-H7d^z?DuZxa(y@j`VS+u04OY@$Yc0W!)KZ6JvfE89eZe>#8+k7fHp zU#MbOs^SO=0mTbU<#V z(L)3amL6m9TK%VCm>Z{#i?!w1v{ljVL)v2et_OW%y zn8cQMUz5zRY%i*|cbRZ#7`Ljc^)@d#5*f0)i&#i7KXM{EuIvNZruN3g=8-GBVWD!^ z5EsRzkh^H#lt~S{m}<2U7em9-_p7umdvtknr<7IBi@yZQ2KeU zqO0!e>%7jmBL&uuu8UgbB-=3VaRrg#m|jKp=4mCK&gEymMY@SZGlgOuol~#pxf=m<{|goxwU*36lgaLwJ|-H=N9<*2VxpS#@A28j#_MYq}q6)8^!@^k$p z-4B(N$sHb;wfD5xc{RH0T!BMfYZz8%th_dw*4Ma9c5K^yDGyKMY{|h#CAJknpbS!f zf`TVhPxW#^G+Ue3ei+?ts32eUIZT3JDo6wUO~(L2DM)Q?B4JpS5A0?k6$s5B^9~@< zo17?#0Zroh_5KdQtQ5RRf|72RS?0*nKp~ze;ew^K$EA@Odh?wn?>m?xZ{6O#9)A_# zUR0#%gS88{YuTw0ao1z_a(XP*!?6kUn7pkrE17gvL(K-cXXI=G8C&K$6jU}7x2?tG z_QAM9i``7Q8bxVZgXa9fUa{s_H!Z2GsaMH1ab>CCYdPtnFy|z{UqmH%PNrMuX3^+R z^x)?i_IGcv+qxykyBS4Ki+Np&{^Tu863BbUr{PSkqRR?CqnK{S!4kfc@P}eAunEhSo+=6JzErNy?N5zM9*CJu= z&gF^HhJ6I-hK3IepV7Ap1WzSG>_eTY!8w43Zu=${W2>Vsk+X;gxkD{%y*`M0bLpB% zfw(s}7#@%rlN=m3OSIr8$SxsU`ZDwhlsn*6f^rnB01pJ^Q4$~3mlFN6_W!8x^y@zn z6k9iiVGx1>1tidS$6=6+_8$Vcp>7afBLTF@77p9qaN zFAB4oX%shC=VG^Rfg>fR)|ZH!1LTy8URcoi(D-9UxhPMz5=2=|T+6CrCMbP!hnHgN zW(yVcu#GKk5k-bc_9mTvTpd#U&z#0|lfC*b68hQ~8$J}jfGgjwI<-P6fzI^K)A<)Y zh5!vtc61}>W{$XDuD@ydrFW!TJ}c|1s+JyP@ar}O93k_VMetM`^F+g*?9?fwlAiyNr6XF(@x5i;;(MbOOC^LaU za?~r{8cWO@ZNDdgO9u)r;F1ocZ-d}s&1Ml8L!xb2@Ti`G zZCIVKs{HOt&HcS2-?%-Ez}})UXzsx{02ir_hJ`zdLQJMz>hcdb z$#oCd)Is-}rSPI0_x zA!b$2>EQ}{L5|`lQ`iwd?8{$g+|d^yb-|{nzwc7Efw$ZgK9ZPoaV!qs7nxx{S$3ksq(itggDtWkZ0 z3*4rIWzjQ{&SP|M;+l0Orp4dmg&fdyG`_BWhwbS_DF2fAJ^~$5U4_gBvye82T85HG zcTr!{xg^^xi%%AT)MyEX)Ol&IzR(#j6AH(}a_`eLo)|Hy*tV1xDW*gHJw6oP+1P;Q zrG44HO?m2SgVNP?fm9cB*ZPUWO9gea3MD^P&*aHi;gszN-?$zOJB;eIlj~pb7iBnr zSmABSN={v%!oT+id;}NpatYjx%c}!q{S?ffc+f=cwn-rlJhK1WkVY70Z1RZJ1(Vo^(=>&&WO;maU^rdLMBKoValD@{H8bdz-Bjfz&t*=XwF~vV z+aQ&=FTjJ?BIVcSB4b)vIDdi;y8g1jo{BjJMm2LG z({Pp)=X;l*J#k-#^7dDU1@??BXLu^YCp>zF; z3i6hlE5Q)tgrR*><$(`tJy11`pvC&j2TkPp+AofaZoKi^Tk$VLVm#6fl@H}J1{h+O ziw1H`abE_Uw#C_`*KlN-x}52Dt2Zkc%5#oRWPky4f4md8ahpFnbVwqgW-!?iGtTMeWgqgihJAuXbNpzgmZT$LqCpd-FA}MVsif$)R+_RS&52A7H7DRJ zlvW(o&iCURPq}@?Q}0@J^U#-c2jAQdziVAa6x%{2qfd76jgd4@8-mm$!5({>Lc`3b zrIIf5%@&(#>6U&Y1-6fZXf%>nmqo(04NGRTx%Gwt*YNvIc&WrA$%8l(8RdHzvOFvU z49GP=-AI4;!3}p-I`BA9EP`i_Nx-a0WPwt*{Rh?(!xP(b z3~d29{3wmajKAb}HKpBSTjs;NkpMGQ`tKz3-^gJEs!jvg25F;$8_oG_f5JvHt4*U;GkXveSC)*4XHM{ zntKo@psWD~HScEyj^pOC@T710V~O(T>b0lxue1#hRM=;%6mk`8%*tbI_q=RL_aMj8 zG{_oT6iQmZg1;Du;N*plo@pznfhWbvP5=oL3Og7PR>O;WuGjxl1afWga*X8B)@)~N zVvn67QLoopOHZ?Vn^;T8gBmH4g+htVD|RoC;lnNe;w zPL~fumglYt>l7%MS{*p|oCRyt{|$;@6AiP{Ik{OPq=KRNyry*GFwx55%x34(E_7pP zSQ~D8PG1mv$63%H19uH~i$?$Vz^duvp?&^q*9{{3|C)z~^*s%N)?HuS0GuJE0-XS%4N_S_0UQb~`qs^Yfe=;z^KnHYf>qHd9fv217#I+*uDc8U z_rIl{9;s}?fQsa%b@`OmWLg0QR~gmG@AA1a2FW^Cb_Ls5e;Fi^AJ*WUNYpQ8jiEoM zkZjV*M#nFEZ`IXYBIMH*i_C4c877~a8}q2zyyj;%O8)-(JtjC117($9f2kvDAija> z1ImhQt9)Gvm%466@i|DBZAfP8g5GYsc&tgPK&-Q`u4qNBQ-Wm7SqoFO6gGMPvDajCnDe`|#<(%fQqm?R%Up zIcjTdQT?7=%;BoN@;fM;JJ%w}q1e8GLdg z5DzH#7ggNOzhOrJhB?s zqa~l{-kw=m%-lZ%dhRv84_$TiOUI&yeByyr(i-bl z&cShG`nbl4D<>>NW>R?U1EUt5%hUS2MuZ)7fBU)}USo^SPtuJU>wp?LQ?lH7^*#j)-SGm(y0 zsM5at(XmGC61BxRdT%&;OQv30dA6s9wRW4-u*0jpZ}UiTZBB{OdJVZgF$GRNzIS^& zeuMr$2rq*)6I?AQj1N)smWu{PYIFNLHTohQLB+6P6haqyH@Xkx)wD;%)+x~TllqGPb=nXB$tkbGmc(`+pL#SMv&d4LZM zvyrP={__xD_kB^@4O|T?^vuij3E}E)FnAqooZvp8@?*3BLA^@!Cu}@B-)Dk1T`}VW zIT3sX!fT{EcigI+P1zG2WM8QBGTzO{LMWJF)bG*=<`TWKM0hH!;fGVPtw=;-uzLVt z^Ir!i(-a2boa%GR@oY6?os0K3Ykuvs>{;2BEhgp3`A6%VRqZw(+45hH{vRt@$p#RT z_V@p52UdgqeF->ue{cCKX!w7P6p)Ab_ecR+6qv7Or3BV&LV?A8I5X%KgFQ!o>RU9w zAHFQC7$OknRx=ZVPyJbr6KfJN5E%Tisu>NC1WA>>cht`AvIM1Lf6SV70Dcfm)Vu-b zWkm#V*6Q)^y3z;^x+)F@giVcSbtOzOZ&BONd37j(mfnC8Xp}43!}uF(D*Q_9^$EG( z#2qYJ!PD$@CB&Trw4JVlxhl{`gS7JgQZ}fWK;L}D78EKc8-!zjhTsIGCQwSiDYdNS zL319ilB&lSt;b!v&7Oi3RVjwJ%0UVRi<7G=VrP*vX|h!x-eoZ$mfi_ zixs!`%aD6AN>s0h6SDo&zY~<_!7LQm5ck01;^Fx`wR3Ri%vK45%b{)`H z0TFBi2t$BNv0AE-gxtbeK&JA!l%EsCurQ)1Qn&-@6>$En0U!!QMXNfHP^*wkU3Q&s z7_KWDO)lQO_P1)JC%6?!4k1B=(}Jt2&4>u_$Ak{=sM2(#Hr=x5@&$l>al9qJdbw=W z$)NS;8<;r9e{!p(M0i(^`+QmUjl+jQvR*yUu`s6|-zH^N^-%42f4CG@bAVmI;ERo* z#H08ao3yvss?ow74eB+yO{HOnrWWQ6g&5#J6?5X$dz(oPzaCn)?WvZFFX|(6IGHV< zX0^%rEVbVZ32?Lmt1F}xg_0v{ShIi)0FI7xV&KuO79Q#U*h#IDjjHOOm{-9f$Hck4-hRay)-qk_aX6}n8eXVuO|~P8l{{%lr%j9+ay|>mP__%$1MDFd_ z@Nr{LM+0(62u`9(e-T@EYCJ3!u}B?j@-xN3?xRe4NRH;rY^GM%nbz&~Jx)r^y0W)k zOM#+BPrebza%oJ!fV0wpn6|M3$a?ky(1JsK}6K2w*D1pZ1B> z^@-NBlX{r68eSo0&Mbxf-KEZX{N;vh(+QefUsKJE=LK3%MOeDssCt6r#S!vW|14OH z{tKZzQ33^8(^N2Gg`~0nEwqr|vt>n}GSPqSJ$6-=K(p@ojT;QG>DAti^rRxkX(=s> z7^__2kRxt2U@%JIGaPOpwALG>1(anwiG5|5mlg>W#k`~^S|z4VRP0I4aTe3#Qm5Cr zoFKfI6$K}(Mavn#eQip^b%~_G2A*$^Cae;H&$IBNv(|`tsh)zBe=BJZ9v(f%k&-j^*{6wC zFI@Y5h5elbrmfu5=KAXu#$WigSP*@@Am&N7wPEDHrM2S2f5$KBFLcLT4b$$PJKWV_ zX=T-qnN9j{)0`{lt@a~0T913B!@_mE=05LH^fENfyvWc+mJ9=aP zCzypA3cOn(J@OAX3=Di^-*vC$EW%|*skx-|#>~RU`S$kvv>{VCG^skk|DtK^Rmv5Q zy^Ajg9_uU6gJtuasvPT;KWD1CfDf03LNV`4X5OstyFFJbI$Z>dL^HK4gRR1FIu|we zq*a@TNNc%dP1NqYmnrWTD{W6ABwe2WdBJ7t4uFY7+zQihF2}Mvwkh6iP|U717eM;e zSRBQ|sgjXeWt>c7za?GHJ~IXS2vCGe3`9kh>j@CMWo}d!YBHX2t;_TXxW}q3+wL*M zdN{`knHH^mNmKmNW>u)!K~lue={E8Ec^FT7_FsPC4%Ox6neaWHC}{deIR#j^Ka^82 z4(ri&v=e3>DGKCrQiIb-(j?*JgO*oM2S&ZMP_8SDJ4zZ}3Yt!*(KVO&V(krO2Fe&N z28U`sq}bF3ST$z*W~7x-l~3DX^I9}!<-Ev7+EWe=b2hew_*%DeN3 z1hIpY0?e=iO_;DD&?yWn#^gLf5DB4+5#Vo@&#~tt0p&DbOz&oX7sz0rc>6r)O&?Uy zG&Nlj7}V0~HpH*2lc6)ffZG@l=~1X@64Y&2K5^n$LwMx+g|Scp{#d^+J$m(g`1p!r zxC=YBx?a)V>BRojj!*D}Trfbdx7=VYf3LQP#L^wjkoU{qQs} zXv7MFP^@!baf>7deuStZva;cxs0gb*k^u1xSZM4|{HN6?P#7c>P@!y9(JGq#7KmaX z04a)fpdcW^s=D|qTqd`df3Ef+Le^9B zvy0PH!rh8dS@;+wL%F`321>?2 zS#Hi1=QzGAgoF?cs?2V3h5jSJMQLfpYY@sqHR>Pb)(l%N@Wz+zaxd~El9Ddp8vCiG(t|nr$ zw=7+5fwy-1gLZNbSsyS;O$hNpU;IesZeo5_At0XIYg12t;7IqzNn z9n8+1yL&F5J3j90i1V;3GKh50&K^#-?XIV_@GBW)2aYYcaE|IF=1)$Zv3utkc8-vT zZ&015b}sP5q)|XADwPzRcqk^(EhvZ~Axk96-lTcahdGu20=iFu@uSuf7Ba2}rT*?S}qa^50(9SQgTrK6SFb3+AE*ooHze??yE zY!^_g3p%BU$C9)ka|`7WQcoM)Vf7MqRa{5+IQWf+@rK3t#qO3aNs-H#{+9kty(++> zjSLFN;5UBi4)YikM9Q>F#ukgXi!Zk+m?|Z8D$?7>6>F!BdoGl!Nhu8GRSMTseXMud zR?IM|C;5uIy_QMTs|qq6Y}HESbP*CBKJ{9Y1~iY;`b<}%S_k0gHGg3{YlLd_67s@y8H%x zkFh-dY#}51E%(fGdxKpy z`$!x8uPFn9pj_}p2+S^bLv z^6Gff)xc02uP5`drQS5}8RlK0Tv^~_+W<#DEs~#jyjR`jqT(~h_Im4Tw-t#8I>ies zoRY$Iydy>RBxBu%;=Ozg$0je#^6}*P1WQ-89&QjgB->yW=QH2kQ=ibixA;?WEmjYB zu(RzuIu+aNJSj?|(=K}8u~QtnPs7f<25t^zFxJSzPaLxur>nN2Xp>%9YI$FRJ+z=^ zvB8gND4fz&q3)By=stROS z8C`CW5nxrrM4(r$tGEg1J{U+^LF>bc4n<%wOAh_h@0pxwlj1!^-J110?O7QH3w;!Y zk#h49hOyh3q*BSY9B?o&%xZ9YaiqM+ak(VS(XD|ZXI0x|sEXr0Q+KZL_+W67sZxN= z^xoYW?Rj$b&e(_>)eSVw2Jkg)LFw!yeX3FRDsqG^6{wr6)|oYePjfZmS+Ne=eGt-Y z5bPZ;cQ0I3WqGQz33>AyMtei;PSb}Td~>()jQboE5@=&`G+Jokm(;d!k2`NF z(X&_`SOneGc~Ar25(x9G82bAT-={m|9}MwKA3ejUV+@z8~;^O}P{NVHZH9Zu()*ReZ?Gntx<>{;C6sT!-X~AnOB0DH=2crmjr= z(WwCcaPMzx^Y4WqRxl$aMMC!nO*m#{{eQ0nAqWVdI3TuxhIg9^{P51MVX1E+*=-Df zNVa0YQ*;vvwyE5OaO>m&pwj4{zGJO|LM$M#VlaE7f6VSca}CH0RI51OqaL``(SsF~xt?Q8P_jQ}`)GQkhCFHEp+(t%r{<@((6Y>%I-=^dhv% zkl&rkd5{Ao)Kkv8pCiojF^CSqub%K8hB9{mr23L(gZeeV2q1X3AYAflpW7P7X zm0)1E&enMCAot6Lw{Mro+j4hA9Qk5-QCo4)#_yo1n1-!Ibe(fpzw5-Tw_H}^aO+%! z@X5lnklIpR7tgBmtd%^FhzdENje(*wq_mZG{t?uDfY-7{=iomnEN9sd+nU1On&{gD8JXL)2cl03XQXLO4TJM z<%Lj4HeuK}5l=ij*p!27?h1CRn%cdAALKl_J*Q?t&Xco&uIQqetzg|vX^nlTrAIMu z2Qd^~PCb%{)Kd-vn0ri*3q7RLCr$#hNW=f zH)7K$PWkv@Li}d@;cTo!^px*2hAg9rG^O`Ks80Ek52L^i$H}>|zhjN9A+a-E+)i;Q z>b`+At;x|>M@?$ic$~p!lWN@UHbuYLoK6{=Uh_EjOM|oWA*M~x@sIL5?3q1(&60ej zjM~;FL&9eR0wSkSfzmqMso2OQ5_m_}zFVweE+lm(>1Yl|m@c;Klr33Nt-a-h7b2xK zu*$){x((qKy;rsmpHn)}4$h+HTo>t6bi%RblrXotdx}zTMx>|(&bfH1L7l>IKqa78 zL18?xhSyeeLcM9?)a-_i8)3N@ESYoeU0=lbNe)Iyq!=p@Z&Q?MrADq3794o#1onNBk%5_+eVFnYb)9L!G=_2mdudHPL?|wVKq^sU!a;T6<+qpR*-iWzqw6cL;F@V9tm`Y`Fxe7YN67~|Wd<=N z?_MZm_lA4aE(vGRN*rgL29tejD?arZe!Hnt1{|8sc>-_v&oLu2$?mm*1G5Sq0dxA} z+dk_mJ4@5*KQL%?`F+n;7=?#}FC_~eMugjN-Cg5)vc*m8oaO9ka6iz;0D($2O9E)g zVgyp0-+vMki0&)z>kY81;WgXF?06$!2wdBKcLiR7^3PhjQ<1W?CfW{S^XxM!Dy3^v z;fs0^nhw+rMwp8YU2e##i<1RrMGx^LLh;s{TOk5JR9LynsaZMrAGwzA92qb)zrBBD`w!!t0;walME-4E=sM20xw<)9 z{Zbj!*rR?Pb~;dd2Qn>b;rD)XKzI26Fs$X=1$(Xg%z;Cn%3lK#;rx5hFZ-TdLF*u4 z!5WYT$Le9Ds}}q)!^eGhbZOZ{!5tiw81g0p$GMRDPelF9fZNQP%~cFD*!MBy(pwM!~XPC zid2XLRD@E~Bmoi&NftO`!sh*`sIqBYfxj0pcjqZ^Dlj7oe@?o! zZ)=_-vC&?WKbORS_UD1?`?o+c>9fi@LSY#VcrksZR2LDi<92H z&}SS~%ctjh*W`q$H8iz(cCb6`XdkuKT$1)0Y@v}ermn3Y^BamB<*KM~mUhw2p0w|OGu;>G zjRO`a%HOb^->(L_^#4#G{~5e8K=T!J!k};mbs%WuI8UOQ5GoG&!#mgUC)^62PgjMo zkKN&#*H_%|0R0HBNz`P6@-v-ySxm$1o9^quKI-BuUGO) z>saD17{D?;NS$)@AgKY;d*QXLba&d0VY|DM6 zHRMp!oSixoMg5XYYa9skEYoe#9FS0S^eI{xHce*mbb-hAJny;TA}{Z(Fl;#oGu)FX z0c~r^WvZV*+hnd!vunvM=S!mlPYpHXj-&55F0B>dv%Kc*b0M7|qrALrQeHir7m_*GWsT%yI9OYNW60|psI8kqI!zhfXD zbqTs?ps5Af4@i>)ZMX}q7<@43{fpmqRv*Y5MrYwg3Q0qCm7{{vn9cC!3iU_(APn;p z_OFhy;Ytm84962v&(e(#rKOl1N@HkAwCE4)Vr1EnX=R*4k$TF+Bwqs7HoykU<|T;Go+&RmA1#!n$}p5rU`hG)2tWv)Re}J zT<*r)5LdG#&EXnxo9fA+sOd|~MoR^+uKZLp8&aS&d@16}!x@Y1V~{(@#1661X8$zT8sBXp!AxI6IyY3 zSAc(82>(`;)uI0w3`T#j#2TR~g7Bh&wKX9XE-*C>9PKzN^`pwZLe@o!<0B)ej289Q zIM2eF@}U!Ww3WfnBV)SU(NW*QG?0-W1{pQiiDdb6dfJk28QxhTpGt9N#xA6^sp>+x zm}Mz(aKtuFj1fwTo36^h8Py&O<8&-XVb9+pWax|-PBstvc12bU^Ivc=8|=fZ za!(xn9mkz7=t?9+%O+m+VwWp_{-%Zl!A)7v+0xz}2>tVa4;*JpcfnpLayg4;{u)&O znu8fOFah~{8OkjygPO{BE0g~oxvcu6L6!rKW?T2yK~P#EumM5|v+Ly9)eR@n9=a=X zVVM2!l@W!_EW!=AsiJvkv02#@$aDk;L*L#X-7Bnl{u^XWNJy&#(laa<6Oas%1aJnb zHL(;!q$E@Q;dB6$+3$~GQ{Y7W5@c;w1Gd;SoZd5FjUHhS;UNWvTGPc%W9gz)LmiR9 z@BsH1P|izcxR@Cgl>@5vO38OrYleHebw`y++X||67z6yE;Qjur00!tO-{s3u8p3EV z6m!7dLuHrc+Mkl%)D*2oOY=g{SizD71WTykdZ6%_Yfz0+L zns};DF}?R}%|)nOe+g8JLRc6m53OQnAzu`(&+<40PczZq*XZmg3@=@Cur1QGcc$}r zTP5?&*tbO*Vr~86tV|WR$L5?XRIBuAP_UxNU1%W@``?iAOzZVE<+ZpPoP+I?-I7zk z9Q+vd_Ue_xB+<|dFZDMA=I89Xf1Uj4*K-CK&;d!`_W!Ru1o9w{<-pN|Iz@l`;4C0c zey9)KyvuSR?Jn{Af(@bW845nym}pNmol=uXe*vI#%P9I$JaQZ+o?TjgP@J{IX zNY)*bk{;VPTBobUI%)bo>zXv|UH(Av`#AAR@g@D0qq|dnS+L)IvHbo# zzV0f8C$~K$b|0%Tad)Lkp0leq4R&|v_gx4U$y3|SY~a*YRg>1`6BLwHRaNjo>PXh? z?A)h*eHr?P0c6Jg0V#7^vKD$$XZZp#P)m}8i~u4gZ{31HPV9tx->uj`DY$eF#eV5f zS3k(Vv|LhTR_IjApw4~PxU$^}1VgXB>M^3;vT)Co&M`F^JUI9U=(*EI7#(VO3LMV?6o(OqkK+b zl|qMA2Z-3I%PCb9ujdS(%(2 zJNhhbl&1PqT6(6wPAKtq?$fPN!)m*5 z3yC}^00NQtrywK+on_pb^|$ZdL0b3VTelvmmZU@iNz^a z0eid4Dl7fr^=dxZWhRFCy^A!GYk74vIY89WCv|cXF7f9mrbrvnsozsc`OdJ|%!7(| zhB5AoX85w9sM(B;9Q}G{nywj_hHAwgcM!^sBL3@Bb0LnDNOCLfT6AoBe8u@~cI1`c zV!F?~)c8PAl2#~Ml)_V!Ei^ya4AdAW_c+jNa8HE?JfyMkyLyq!NAZE9&TV#tSu>4vRj%oncDzUY1p|UVaZABZR7Q_s>4=-Ccc2 zk@L1Xs&zu0<{QS<>Na}@a5#StYL@-Kw=k9my^QlR?SWcxJUvD=2AslBB z)lj%_S1CF^CG9I!u~ObR2jSuv0>``gbNVamSHR`>=dJ3b-j83~sh~WY%$R+o#y@=Q zMJkEtWq6IqzEHyBQ>!fzH=Hq|0erlfk3)0vH)dZ|Tru_8y)=D!kglX{*uU|vuOGBW zNUjAgj)ni-_@vcY@mZa<=E5T?(sX3GSEMuA2J@`+6}Er?(BWh(DeaR`u4#j;++7Z- zoAOGilppI^iL4*VBt6Tmbo}oYOvGywU*Fu=x}H%dFr<59-I zYiL4QY~z!vX92_npA>5Z(^bsxO0H)8dKx<*T)5s4!mNt;x*y*qN_JDVB|^%aWd+P) z7VF#MT|tIEJk_Oz%>AbN&3ichd)T!0v$fewq;$}Q^iXe{hfxS3@g#gwTC5{jVcSQ_^ z#SL0>Q5_g6oGJjug>!AN(N}}BpJYF~kyKYyStHeAfl`a|W_+}|cRP81s>>}*uSnD2 zDUp_<8Vt*(n}98f!1U+K{s%zp9I!wr8v^)S2$&$`+7FQ!07O2l(u)tAUZ>&&(i)mH z{Q=JM?4yYir{je7x((57rYp(u@wznr9SrG_^6j|F-hwO>q&IwNUZR{j3?esM-Dd~i zjCKhM3JU!e&b}kop8Yy14z1{sK;a3XF1vK2_k-Z8|MA>P@HV8ryAi5ApJ) za8fO0Y`aqKHyyKaxn)wVJ>`RSUc4~5*m2vN$yIIq{$0_P9(o5Qda|_s-KSQ)^5JT` zpzut49mBOn9Ep~GZ9CUIUK%3iq~(&4}*%8^$0z=-S7(S08o z*{{jqx)vDjAWm}N6>EE8wV2ysc}&mXzWeYv)!8bURB$ajEuq@R(E{)>Gp9aUPvlNa zjnoS?d0)CJzw47E0R;94Wn(k-#KK;k`U@?idXB=U0oR!r$Rwo&x;uLrXUo{-X;UYi ztDcp*e7^W%+B_2{L6;Y*0=3p~KbvW)wc}nlt);fNQ?1nG>K+H zRIg49DT>EAh5m{0DZy&Ag>gQgPJ z3{qbYecx`=T(KHbSE`#!)9)?@Hmv|OmOnUd@&%-@oXeWMBOP$krpbgu!lwy%Jb;F< zXL>!3(EzHQ`WAdP?8f4UM$Q%Yxo1dZ+X!MATDAIhkM9FoVG((ZPszlsRcK2%ieCXEBXg{!$dM8IQqP&zY!mWmFw71LU8jSB`Z%_7NY_eah$hAi#Nb0A zgm8X0z9+)xh|62^pFg}#7LD8bCuS~;GQ32_Ru5>_nQ>%D_0XS9i*Y;-Wdvr9s|OeO zE_6gK8NMccogYLB^L$JCI%Bo9F>X5Q@)izDd&WIVn6nBJu^y&HFQTb=IQ{WV0oySC zY)9LA#R%~(NB*YPkg4+EoIf!kks!_DE3@d(wPW1US;n?IkGsB3LwKSt#_H~@;eB7t z^+ElRJ_BrwKbx@{ODLWVmRLz3DF6LaEJZaT0hmsZ9zq!m_$_=A@egG@TP3o__ywk+CGk^gVgjy<{v4u=B^ku6p~* zlv3&9HQZmE^Nv<|&LpOXzG}(R;;GHXxz(MBW`d+}dqG-`YIT2Lz&oZfH3po|#tluU ztCwGv=nb2wg+(PTapN-dqawd3L^z0(slN^ z-9u7-shv7o{mi4UnrB*-+=HTi-Q5v0n^F`v{f`P1NXMXnZ~aP81rt_)g<-33r|n@H z;(P4X-pAl0j)>x8Y`HHuLv=D43~0QJrn@?*mc_0*n}@=KfE{g!I7kl{^&p;hmk+Or z9W|;~bIBOu(KCP5D|axXx|#LfKlLtKG2@l6sp30IBmAT91nGo?{j97GYXs|8MPV^3 z(FgV?XjQiyc|+B3P74p}=>dK;CGOy1k{#)g+-@t*lC6+M@n&IA%p< zZEaa);V^U7(icAmYFnm{2Fguk$Zg?Xgeq69%7H{VuR5#vw6_wj{m68t(k>YOIyuYl z3|4nFLGJ9=1au}*WYY7)utjYD4@(#ko)uX)MBD0m68QHf00uu1=#n;vzS=fi;$Mlb$8;J?pFXq{R~)M)8zslm7Xhhf`Ul^>Qc>)9k& z#i!ME>oBWZ*TeBPVEuyDtFCVRN3{yYAtn>xA))+GKrEO=FNWzE~)64#0*K*9y6*_bt(_ha5)Pt=^+C7A$qF^DPlBh41l zerWVzk3d+`Sr4HN$j*b=YNlC;!61d8bkwbmmFnd4IMSN3$AV~2vT-AkQW_*j@V7}e z_{idl?A;D}8kOK3}v?>lx^K_lp zG}PA-9q|eFY3*BV{w5p^J-+gSqV17eD?yeeWu#%Caq(2OqTbbeBD+}RW*o}(ueS>U zH#USwz61s#>y0+CgSjpwt8r?;-@d>Fm%HLPb08Sr?%RKr3Sf+u@8nt@DA4U(k|z%H zCsO0ml08i;8%{&5Xv9g*%O>U3Sl`ZJhZ&kinE?gw`>o=`l3lrc*<2OksLl`liAgck zKI*s2Q*YFvJ!4U_J)alrG%~J0v9`-lHWYX{GizAtb1EyRu|b)OFrPL%IHUt5qRDHo z4EL?4*4LTWRb{4Z9JKwz_tJ)Xm9qeEfSznW>Kh;SDBl*hwqPwNYsQf?WWR0R$(v@Bvj zwq9+mSf)-WLA?0oC1ivjWbx1z(q2{N`i}x+$s(T3W=8luXuf;s>jhIwb7Q9@T zYxAb?f@34jL-M&;nQMar2|Q#Ct@W!*i^F27>Z5aT1v$8Vb`#2qW9>hC1oU32HmS#P zMCcsVkuH}IZz~iV4Ju}On&fWxUAjD^>l|KS`%oX(qNOXLn0deV#WZ7t=2+yU?3g#` zx3~0|)3%(wA$m}?Qsm207?%?!GWk7xHhjdOPPIM@mx335asXals}}eFmi}OW4c{tO zmIQ(dun~s56+0(}I~6GgV75R#WM_@QiSeBsEoDxY#WNj$WW*_+z*W$x3k`ho(%z0- z_eW-4E)Tw}BkkiD*Wq5cjkk>cM&vo%#{h74>_(TRU&dw^>vl187Yy7RAFEZ}{S%Wd z;GP%Wr##%ypp-g2ttk9QzS1kkdq%KwFZr9%H`}ImyD5LRFmbY{{bwb09?FuM?x`?|aw7GwaM_lMvrcu(Siif?j2w;nb z?-H;pOTfai-12>vHQkyjmVk%w1PzuyBt^QYI+ar|f-aak*aW|f|In)`k$lx9%h|t7 zuYLe}u|`z8u%AP-Z?TU1U!(7BKO1%}PXF_+f9}S?`OoDaooWA0d|&{pg0aS4BDBS_QX&A4D4XmuiU!F0$V1HI@fl5B#E$lJ-VO|uDW3|_s{oCMS zqxPGHUE#v8vLAO?AX!kE$E=#z`$JD14nt8w>RR+5QF9M#Gy|d8ydH>IY5c1z10j#G z=|Ez_POWI~X44TprDw$g=LSH&6Y-xNui$RtZ;xG`B|!#ji>w~wOwI*v$;y^;k7rCX z4<8IliaY=fRq%J;{FRjv0KhH$uj`1cg8;K?Dr^9s?QSpJol5GNat^2V+iJ;z$FU)& zUPvYm>ZibcMitbN((^RUZrQ5JciBua4^qUxI`%T-1D)E)n_L*oQC#R?K!KYHBzM@M z*m4rFnpSP+knRinK}ft@Q27ZLngHS@Yk&_VnYu<)QJ^oPjU)~vXrCh!)AMa)uI?up zwZ?Bfp1k|x?y%#m=;Nfqx8A~u=ggA`5>D2RBe_1oERo#1it0b*-Va;{jrYIo z>9>hMF^Ns^jA$v#Di>&1k{|qm3cU+#f;Xt|q(=~yJ}sFpxOD!CV3PX{Ky7>z08=nv z1iKkXKXZR#!aN>ds}0@CH5BrP6j!w~X;d_2+Dn5tAZu=to#f|6>-VA@iD4dT4bxxn zttHyjREOjapG$N!E7I3>4D5qvrh42B$5~oEc>4vAodd(1m)Tx0AI*dnlyen{k^)C9 zsQbhiE22<-_@#C#R_Fec;fZL^EJu+D@iWbGBbDDN&YPYms2um-y3P85NTO&kIJP1u z-S-G>(X$2Gcu1r;#y`CW`XXTLo^aIV_ zA|eIHK12|D2Bv76flX{XQXW%qLZKi=XP48Z&L(4WLdHG6-x3u#& zj{BU*{>tROoAK&*X{v|TA;yPpGna2KtLtoqt6ZW<*@l39?U244(C+E@YiPK6tTa9u zJ5k#-QPnONKDYg(Xey){Hj%cj3lsEDO*jg*sth5(3G)DW1W`S1oQF>CiX+{3T~;KQ zf?@~|rh~}gC}! zJU>V2zTx6nT@vIG+D!hOIh7VKP3sFt$#xg3=Q`DUt~%qKeU1s)HvagTnnsTk{~u%T z0T9L6g$pm(vC+PLj>$4JJF^w$J@0d#(y=hrO)zcKf=K(VM~kb(f^59xt@E8( z?S0x~)%t!()AhciD>5|@11hgki&Iuh$10rhbxr}nhp%tIZLl(9y6JIcLvJ>?OLC;A zEv%?We-)?2btYJ|M?vzL^$@e$-GwC?-@YDDzb!kcqRf|&@$n%K_pLrB&#~3|Im=5g z@g|;c4f=xxdx8bIySMf_6?NH7e>S){9Z?jj?s$)o(sxBpAzk5^|5J8JqfH*2@(szH zctP;9r)2IaTsGazo!fQW1(1clOl5ZRR4^1N3g=Xt5AIy|*{`66u1vhIF#K2JXy7j- zjuW=tqfZk=I48e|aL`N{L^w}n26}R%t~`L&n?Bv$QL@bYDJ0TNh(%CM_i%wUMw*vb8>LIEG!>|pNP4RZ|JmG zGC6%N;H<^rh-Ud>Hw*jDY@}#2J4jPDw`I40?mvNNXP0?P}43)Sfi6&HIM<0-bH@Jme{ijj~H*b$5$9?D_> zIZuY0ljTZEN*0XuG#?zL#LKD)KEd&sE!ol`jl=gRA<&j1^GtNjvgqlHDoMp{cCL#! zV7gj(U`ZO{t5$y&6Y3A4&(@;X zBklG1djqY-neRSM>mCPv+~1i0bhz*%bzQ0OHVdf>{bBZHLmR;Da5M`e7TR z1p0k|(;lEB5%&_Vg{TIAEyNl5mDdaW-Y8aQ@Iaj4^v-lG=D|)4_#335N^u~(1|STW z)g!*_9yO%JMfd^I6<2qS$&lR6eAb3|VO`N_OZEE2W;Gl@KrxWg1`&cSO(^E2w^2?f zKI+Vnl7t;p%ITC!Il#-rC2afO*|mTYpzvA@!vpjx_5d{n+}bHm3p(83YtLOfw7Qb| zJ2zfWb|met$gJ(^dBLqAC6;I&k;ttbLw`Wm+9Ce5>8_G&^Ru0aKBExqSd)U&Y4W$Q z46L@c%`(};iveFVV4kZYUjV3%nB`BZOWnh{G-;c36bQ!}%f>lQ-HD*5MTQ}YRW ziaC}wW?@C8D$&;SLsbWAC@mN6BM1zE=Y&{IFQBa$X59Pj)Grjogh6vB28>rug6li# z^+5CN+KE#~glLcqi3ugvmFmmbt}D*jjWs-m*$SHIewngEsLT$Hqd&B|DHmU9$ZORr z%&B?T(sI^8sfw*sQ*71V(N^5DXPA*7Qu8vlc9~@^&@Nu4tKo@-Fbb?)h;+&S)&2M% z&qX~7SNs=U@|N-+Gd5}Qr7qY8OJ1wU7E>@jW?n>l!+YSW?Dy@L z+rY%6wqGcLx)0TAp%0Fxg*$HcaSkHU4FN;g{}yCJw@({#nV4`vEN6@wjqt;{s(v27 zqzcK+&M*OG9sS-6nNAL7b;gPArcLocw|ufF`^dED0&U9K`O=u7-Y%lE*Kw(P=VW}}FUUNDh^ z3Ejm9KSSjNRw*Nv+(15wIA)g@iPTZICTqQCjg?;sNHVf(9U%oK55dPq#Ga> znW^G%YeZUh7Uw&BOVKT({-g$#o^*Gs@bWQ<{06!;??;ZR&Xv(6 zQ@47`1Mk%?5L!1Q`vx0->%S;!-W#Ys<{Es^bX~_i@YWc4>$qdWE^CXJKrkogaINs* zsGL)&c%D6ICa*O%V`vcZC&s}g=;FkJ>Ym9Kj-KPusb^fCKh4$!+q3oi=3*grU)+k`!ePgZuzc z^Gx`9=o2lMuWvMIige{`h4Cf2|8FzvlP6=xoT>MmC~uU}1)pWf&?pc2H7?0639bxg zg*zn%6}F5ar6@Y@*pzCM4C}zNIk!O8QuezU;(UP~*IL;>PVcv9gur7o)X@1OxCT7W z0eXUqRvCQQFzkSW7k$8LV0R~r!Tb|cxG8rRfeNS%5!d(reYSV7r{L+qTUAx@so@!_ zydc#z4rNkykQbQ<=a^{L279IvIy2u$@M2Y+V_9e1d?V7nf+O1^72Cex@TXhx2btY$-?^trKy&PjEETf znNRs|BljI`V~bRitTZ$7o26LatS9Q^XUIrKx$w5PX1Kiw{yiu2E@b3U z@d89d2x7m6CJUvcNR1c5LKzcWyDauDQLdsHIU){1S1x z6++uSg?$8OP?^3-_xpTE=jvOOvRJ&+mhaJ9L1Y^vOA8H$#T1@~P}{<~wjw#)QT@xi z;EVcFRb&Bs7~nee%xJKJ<*Sn`9Dp{l1g?izb!K%T8Drl!K*sx2tE5!E02cQtbtWX9 zYeQ$vz0VcC3J>eI^FoKiix=hhx5w$uC;bM2JPeRlQZYJCAdE*P1>zL*=^tTpVO%0r zN@p5da(Q5N%^gxxkK8+_R-`H!{qPs+Bf#wrCMMaxHYh7M%HbFAyJbi7{vRCVu&B91 zS<0JrZ)RWvU2flgtmf|*l@qP4bl&&Pd)%%0!O9cwFZc!B3_Rg4cH`^e-~8OCextlu z2!>e7vb}jfG$ycLH~%^gnh}4kQ&yl2@$H_k#0&&GU_dRafexZ}I^a*|UjW7FAJ8jj zrW`;$ikfO`Vj6b@UL?(SD$4@l7jm$9+J%|A8%{!JZigHdC^j2@{No*bcRo~23=|tD z{owBvSg4#ZmpGV{q|NmA|kCU++H@HPVXUaYg|$l*ZT^cz6Bw zu1GXP87SFm96{Yo({FJu;MiU~c~rW?WC~)Gm{!@f%-g1n)BBEoT<8+`fT4P{`EYJe zL4hj>5cvX9)K&)&;8pn{da9HXDqd<;Gqpe~yLpj$WF8j+5geZj##lxE~|QQ8E%nuU+rQku<>WM4Vc6TrdG3L;+oIm2{{ZIpCS zh#jNP?%yA9UP$}l&`F992{a>4#ytqa$^rI5ts{^P$!=(appr%oXs@?X932;Og`xNCX~ll#&zPn(3{y<2FnFtmRhL^Pv?2~ zGsG?$dR&ZlP-RU6Q~K3!zjAg5=UNxpgE~c)ysX;$2)tb%!8i7dEbxR9CQDWG*P&E0+#G zRImOl8~1)*;q2tPt<3#0vHQB0g_WZmR3c-p8|khk#O|7^Rnm1ktLrAEqh@*(n5SvC zl0rq)*wl~txD^gjT&Toq>o2U6{E>zs{(NFY8F$n%#a+C7aoeo@Xdh99wAYiNy5l8m zr!GRYO(6Q&T_WjAw4bkyf@|@&46gW03APITmdC^wZR8xb=m!A?;ZGx?3wQd_fVh zXRU2}a#_zrnOdYgt0jj6`O%@Ob62O(>vP5f?eDX-T*%{w1fH5k=~wehjUqUa`U3Zh z72{TF%uR&b^%d3dDl_XZ1;#K;YnfIQXm09+sL0GI3sq@y!`BEM(+Y(B5zI~*Au+-?uUW0sPLv z=lr>$Kh{?|nq@=W->$WYsi$k)cSuzdKTtl68Tl2sR6ggoMXUNA9lGK+JWvt6J@Q9HbcvL_L;E3X@ zWKYxfLMLD_OWOHGWKd+169$|;iEX(m^!^Ev#DKn|`y}<&Ad+mnu_g~8+yeT6W0iR6 z?2H-edDPo~&^2M_-sFEIGhYm3pIE`{*%qdwg->&RN_kLYyEimSUsGpNDUSIco{kb#V@Spp5cf+Ll z?}Zb7ttkuYBJ8V$p%@m*7)bdEJJCWt>H!_+$#GnU!K_x<+cEiCG`T_XJ!`VN> z1Uw!dskWZr0}qF419%;DFovJ>^71R+^)TAC2(Te{^DWVk^{%{>N*f0|t@D9x9ZM}B zs(q@eAd!?+r>FC3tRufv^PoF&tU*O@VA>UUOejl$KEV0Kv#j9`(eGj&T;<%&nSg{hVC{Z`9?4VoRcHMo z2LcjcR=#|62Ywuqi}3aJ9bl~A9#PR^J6SK?k-REg={p(j(yi0zuk6uks(JL-Tg%d( z_9bi8~N!UPib-hp{`mo0Rc5n!yD67%5deLpXVPJ@|v z)c&|RyKI}hNvRhbHCd*t4Bc8*T`>?qXWBqMpr}bG(p6J35*EAcx4Cu}@;U9m{!w_) zgL_V3Go)X6Le%knORQ6-lB=*pMG+Xf_{=NF5L*n?-VL3pZcpq6M~V7&Hy%G5x`kE0 zOkAG5!pVEVdEJ5^V;_Ua)!Qhr21KrQJt>J(HX1hhM$v_mryXWgqa=>;l(Szh*6&L6 zU=y*gZ(mX%EgjrF8#EF&Wf2@S9OH*q$Z&5UT$Wuz6&bX`e+8}TZ?d4RfqXa^ULL?S z7u<89iG-nq+jD}>hAWxUhuBL^yuWb*6d#Ao!7>4a1UI~Z;L7$W)Qn<(fYb;sdg~T} zO|(OWMj$md9TQ60e@5v+A5>s4UM7<9!n{{8gepqg?7znvcJKH?opz7#>I)?b27f4)=CsaRm|%|%{qsp zUu|Spepaq$eV%#FPER=A*(?^4WX7WpHpf2d5!fZaN0+H=1ATf&E5$8keVE>{~5@^T3gowbTYu zA3IGBT#&xHZ-95i-*NZg^00Hj4=(k{upI%Y2q2=aAui;*9gnVf(VUXQz-S5SzD`wb zd1<7E(}reM38PaJzjqO(c;ltAXN!*L=4$&twTv#gJ7iIiNuU3Ap4*syANeaBkDF^{0!Sk8P^P_=5cz$x7B6B*8u9+0ny`Lf9-OkIEb zI+YYGSr3QPn82y0s}DKOzDbBe!M0WRE0^=#(?JSL#FHCGt$Q+ezv+74-ka*;a5+oj z{wvJct0M5gR2YH}eS~OO0?)9kaQXjR6blt_9Qd-L8(4(_^{60QK(T8W|EkS6nJiST z-I;MW^{{nsHfu7JrX#tHKUmm66q3|~01<+8aooIz( z5Wl0D#Xce;M!k;VHd4iERB7>?RS`&6dz4B3QR>pVg&dm{=G!~oJK=<5}z1n{#U!=+k?!hu43QrqNDw*>Y(hV zlm}=HY7kmlzBsh{)pm@U9RoY42mL>nAgHWCUSb%EQ#`ftkqn!Z#>T$daa2e6(NZ^| z68Szx)%41=7p?4cjz&^?DR7}T9WJr4#owWtZd zGhq3q&i0-@;8Q4$sq(_2DF1WFcGevax8>gbhLDj$unEtr$ev7}5SnPM%&a>=s?G}c zs33JX4^cQXl(4$L%*C!j%r1gykScbZDvJeL1;}DsNA#x~CsSf?l?D#l-AX!A(E|RO z0o)eNlIL7IZ);DhP4NZaD$)C8qC54-n^&N^4S*EgD#lk(wQ>F53{%xGRBi*pV#*1a zUm5r~0sS~Tajd6#?D#dSz~eFOd8ysu2ErCONmmLS)^TL>LQ8civuM5Qgu`zL@hS1i z5qJy7GemjOGtq|0EgVMzcy^9Q^(R*zm8W>c1ENyq^BXvn09lgR&UnvRFL*7;=wqK3 zkXEl}J)_h=;1+xB<~690=s-*J2vse|GqK+F24)`o-c2uO!zy4Xym{ou_%Hdepke$} z{XW+_(3Njfuk#{r)I`j?(V%u?OW%y-L~PB`aIS7)jdAah%^I2Ik?5z-T?cwnZ<$de zzX!cvWtp5)W4clmSn6V>g{^PRneAzmtQ@i=+t>EDeH_*^7_H*-yyYY&+#XZbRo~t` z{B8(*S5cc}x)FJ@l&b@)OU~NI$64A+znPm?1Bbc6{)-n1uRBGd90G0PdKn6`V@5GD zJD>gnWag||#GQnA6WlH?-Ut35_d?e39v&OUa|Y{~bhmYfx=V|d+$J=W{=`^%YUNIB zVBanc^97l^+l^1SjZ}6SXsY-QM*WEyO4>4;mpIs$`S?;~{<_1Rj+rSP1N@dpRywx6 zRKeV{C1RkRp>wX}ME6-Y;W=`=wB6uh@yg@R3Z8Xxa;%?}{W8(Bt6UPe=PlHCT3ixB;aH6cPo454@o7;YW7@im);|%qxU5 z@V?@V>%e@)8TPW%|v0EUn>GW_!^d{Ll zRQ=ZHcKH`bXUnO2t4T>`>o%Gu^XBAr|wlUYXAnp%((xjBdjN>l?$PpRXsp05SONH0gMFe=w zpGO7`J}OylPjG*m-_wPcIGx(4WJC0?FZdHv^trLU$Hid(+_AD1V~q_gn0B?MrYyux z3wp0ltCMts$8QBnEiZ2wkQ$3OCLqU;;f|BKM_G5eGEO_*J;vS7baTpYSaNaI#VGH@ zq#N+C1tvTgPj}$waSEZOwN!A$*alHHWNWk-qQiP&yN(etw!W?EnmbH zTDBFb@+D_r6OC#ZR+X#y@->N~qZp-fc z0M`g6HoH2hvEpVhIr;;k& zyf|)wn;g`wU-R=|5x@IO1D8yNQUmpYW8wquGs4~J4R5Rrq+LA)GNMNW`y8Ka&32jh zUPzzt%_S$ERppx(Y2jJoa+n{j3L0^hbPtsnZ*81eCQ9vj<65^`ryKmBYjh-YE81Q7 z;D;IZbv6pL@{toDd^E^UJP%UMBTbIQCgi@Yk-jjkoq!iI7Y@%KFT-B`BR(oMBZ@cB zoM7)WPc*Ui){KZs+Kr!d6=}-_V#bP5OAK)={KvxlB$h35LB5ilc!W6810Yg86Vn~| zMWl!uc;jGh&hYRm{Gg+wJSpX#2VTIGh!cSyFu8>riON4QkIPCiGszv=n3vrtd;*`ANjNf26RH+;^jso_A-W#P82CW1pzr^XTm4Z`pu zQUUE>*>luF2A+{FnHHV}7Ag~BThNsBxI+-=M-7|A#4^+a3?agHSEvces7Puc{Arbj zcse=ATapzpKsaaH$HAWEd>&OWtn^?t_p^SIho+w~D$FsCgdjKGjrp=E9rjfVPY{#- zG35o~2{`Akh0hD2K;JI{@%`WL__DPPtNLS^B3*@Vf~wA9IE%0fn@)T>kFwKsrE?dC zTW%8f-`OwQ%zERG=JVJ?vWHU6_~FY*6lnxnr}iX3SITe)ktJ#1QP99iJq$V=nC&}F{d{1P z5kX(KWII15h%12`>l9D_Tl;VNJFH`SA2rz)HnFV zNqWBtXlCi@az(U&5A7R10;I{bX6Qc8MI}g#%9PNfpU7IeU_~3k){sY}zr+%QT|L~Y zIVqfN52d@;;(2{q&qBbNXp7H!1> zl}S=fT3ehV-yhH|in)$_(jY01GrcYgi2xKCt+PoRnOW&4jZGkt+E7Xx2+7d;ybfBLePI8Ja@ zU(0%1lltCtL7G%+q+#yT^+e}Y{v&WJT^`2sT+;+t-$3MkSSg?j7mm1O;$DkDZy`9Zsy{6tpu5+)=qcW!x}nRe4rj(j zhRhqVPbWrmomgDsjjt<66j4`l{%y7>U%P@JZsm?&l5_YFVxI#woQOgl-+T zrq>2crH0d|<-1&)S0Km!ZiZB_s=S(>kPyK@h-99Mtz)+EebX)_ROtG|Ub{#$f*8W2 z+Zu}9h$)F)qcT8BV`^ZN)0O*kLr66kLv06^F}VEPqfO-&YMXKCR^*D=shdf&=bh)>Q?f? zAacX#51vP+&`#b8^g$9?l{pI5n7y{`H5DXDVfY41!T5X|s;D&;#_eI6l zDe|#DG2!WfB|$M8Rcss26pjl#{n$2J9PUD*zl0ZQ$gW<9;T=#bn+I%V^Lh!JgtKRu z$YS47gYZ}9U$5MMdvq7u>1qA@ZSlU5v4I+M@czogYf0qJoOUo_k&}~Qd{*6EZ;(i4 zv&gWX=#+`{AhqMu+(YiY?G!Q^&ARJnQUWDBwpBV;skX#1vKHqt*p;eVDnDC)-0DPF zd<99PN_Q&u?3kaVz>v5;Qv?v z&i`%?CA^Nh2bvaMQQvnvsLcy>H>wOk5&4xLP*QE-cWJn5q1~75shq zRQpEuRkF10I9YSCzr8a7f>WUJ1=DMIbf6b9Jv+4X)VBe3rYS!eBh=v(YIqz=m08Y) z)LQz=Qb9S2B+~>*GFv4RSDaeh0}FgVFWIDia#m|E-11OVsp!cB=5h=5nlu=W8ooxTT zdHsdf4k>==twJ*C_Nwu>dm7JwR1s;Al4QY-mYPRxY4Hu@eniU5f^55-Bvz4EwiL4p zkY^&d^xZ-obp#5X~0|GcfpJZa$@fb$f`29bCm?YjSIWApY>e>mIi2Kp~ zhRLk<^w;NKpKuLKV3={WZ095RC5r35AF|D8gN%pR^qCFmx9fYQU#iV%4JVoEmn6L} zHmE3SG0KYf*z4hv*ASxN?5y8A>st1-z>-x;G15v``E|x{ud-TMv2PI8v%7rFL?YUg z!RA1HP+4S?CS;0iatKsC_^farZ-=XTd&SRrd}zx+sfv5C=B-S8{2zO1-(CeT@c$o1 zB}IASW+E{brdzLfk3k*;rfOC zOA4V_XQFCkULP@lCp(t={pXMq0rG1`ntmkp@o{@P(}z}qCm7axpX93+TN`#)=T?`0 z^e#D-|aJ}aJfsWR4wqTb5a%(T!x-Sla=s=Hk?qJ!o&)IKV=hD>} ziG34Kb6cf0UkX+BkZ@H81wuY_T3epznyFAZKt{DW|UK9TLjCqRgoa?4`TX?h3!7EBni{@K@ayiEw-35FQQUn$C_pv z8}l-UqoogDsrvXQhR#iN@}BP8F+GyNpu8r&!#vpEN{^p-d_u{LBWfwYbm@L#xJVG(9_lqQpLXS zNjOg~F`b}yj#G^gb|UWI{nBZ&tsWbd*&R>5#OH1{9u#>C9GU-D2U-sG1KsjWjmjbr z%%@~_sI_)LEPoOBNze@i^KMiifJr$eKj#07DS-jUUgS8Al4mFa&t1Rw%#sFvz`|FQbiW1Cz*o@19Dx4y2?s54}$#QTHJqF!Rc~GS7+#cDe779BkaK<-QSCM2{xbuq@IU)zhBflzH3a|mp%J&$Q zJNE+(+yjT9X2gx1rybyZ0|G)xKmo5TFHSnIZ@nEDkc?tm(@@WHxMY^hOLp#>kCUBA zyDetAdQ$iQGE|nERtIh@)(JIDXD!KDF}HgA!(UrVdi?{803yRSF7&{t^4X`#a@A`) z0x7^L{EKabb5%tU(O6ls>EYhcX{7E1J|Rxm#8ewvB0C8tCN|;W-lnAnIkEm$;r9xr z$&Y@TG)|vU5hfh#(ZiP^4kL&=4}sc&K^}?-=(|v`2`@@r@rAR%>9d`1orbe44$(?> zBi;f%lS^P_WeDq7keh&q8UAc*R%TtthT4!*o7QGvH(xX_u?$kIZ1oac*u`CoLe0p6 zF5?$}dh{sH>-;;}?a0r|rs2pP9}H+XIlWL+9WOL0QjcuEwv!3m(D(4~;Z38gLiDY+ zCg=HtrHK*2+)FHA=E6 zg)$60JC@gV^bg1|#|W9n>X&}ZZ~{jG{YyfqhoRD%UDNI_B2S++sViX8=7lsMFl#}c zj}#Nm-%(T>m|-C`h96xsgNWCDZcZRgqWDx8)Z}ikXI0Y6vFz}=!LfIawL-1W^I&&I zMg8Pm7+Pu6*G{|&#wvHmAY0@5*r$s=pm7#K9Tx< z?9D3A-H!Q{x`u-mWr>!?rh0z7V@>*4EiGe+!!;Up_Jhzbqs5v1+ek*b5-B*LQxmDAH1!UOI(UIDWXa8!Qi^YjEc9}P=F~G|V(}$;o}HeD9F=MZr&SlH z8{XF0Z6!B0F_mh{c&xwwo*}^k-VbKffpG`&S~Nd}n&>wke{l*w1%BX^1U0xEQmjgU zm!~;NZ@|ByHYeKcs(Y_3U!XzW2>}c-n@5~J@~#|E6zxii;s zi40~>gXVWxfWM9<*}tDwW8saxHNv)j zW^2W;;&8pd6PM*l%Sz&+#Cl$H(dqWU$#mCS31fm+vf5P@UN({Rg}u4$e$6JTEKY=H zTT22|hKB8CRarjx0Y2++iD!Zv3Ize+A6l4)#-Re3QU!mJXGrfBfgSK`kHL((X0Q^6 zRPi!TR?^K~3I}RC+KNh5rKCz+&$V?m5*%EQb>6OP;VUCbUPvuvI^o!1>K7|GBzNO^D_{?x2xXy7B#fn!hUv7?5R^VX%hf zuf5wTHNn?C(BSyu|M0E40)}mLKxE8g)Q6y+@mH1b#Q}nfHK1P#s)AEk8WBIfQCBbk z*zofggNHr5oIplG7EqLQ5IDz+Y5@hPI@+MHD?_BWa|5VP2iOThFSb!rOE`b^3qH!X z@;d)_)l7rk8}s$uVl_`T>wvT{e!o$aKhbAIOEC*XoTHF{Cnh~4Qo&RKaV1J-2h!@# zMGJu|G$1)&nGH~(Am2^^FsRUp*U4lUw>dG0(#idCm|BdavrA=voVo?Y$O5Zq(*9rO z&OlxwSjk2uUG+X$f8elhWZA!|F!5&sj>=;gZXkN4u=L(-oTxnk1WUjocE2MjkYFwlmz=Gq{fr;}_7XjBUa(U&$e}DVue;U5~}{A z+6(;6{}~C(Ky7PKB&A%yvNYUXr$`ID7tF6h&ot2M+jLv4`O?<_F9C2Ry2=7y zM1InXEn=P#9UIWhn~irNY8ea%OUhSdUs_J684uQRFT2p@sp%F&T#|YAQS=X#U{3`R z;;`4Re%LJ{3=%p>7`=*VVzH(zJ4>4kmJqwEQOW~#6pf=z;5?e>!T?_0JB|qJ+3Um? zh4cBHgLKP`LYNUifUjwm;c3&|MmXSCO8oY@v?_)-vqGQqU2S~Idg)PJ_t#ysAIZWp zIaPXgmF^q|6K7vMx-%&+ypp7>Co@vv^e2Wn=0sG~!1NVA7jd`3jn3nS8%Jl8h<$o< zGWXLjIMSK4v@5Gs`qRtgx;ZP`u_@fa7x(%)J=wG|jBHei92=Z>aXD7=<^|8|d~w1+ zf2zDx^Hi*0!pjxj;rU>E2Mp{G9e)?Sow!g9%-tK?akOA@1wMb!9^TI__9Z_aMU_$f zqEMKKKjy3*c=AA;6DpTjP9iP`nkK_UIg0=8-#Em04_^oAPt2~K`|25*Ov?6S^#mE* zr5KKlCq~(sc;GQqz2@kz-@N1!EiIHMZ55_2QFTxB#5sb7%ULlw@pg{5_n6k&?ZwvoyznNisJx}F#d7d)~@n;rd4RpEX^Pxi-<^&Pd8qMnBkk*vX zT9@{U8h5?6zL1i7T+)(saoW+u&@98Z4<}q^Kjynol4&xrzo76Z zljFc73a+L|e}RS{)cxQC;Vq>^^TY7@(Ux(`ZY!^^tLn6#x0|1KmAa?sphq%T6R9lb zPBe`_a*G-qSo`Tyok{x8Ju-f5R7I)=XsK;B4yY(uCZMEXyuy#Puy( zyP|$hMZZ}m$utIEvtY{F?ca9!>vV<=wnO?wa6i=i5s*_i~2sbWTs}A>pc6(yXJ@?BHM_yc% z32Ks#gW>w`wni3y=;D2V5I;t7Yu_?D@+J@_0=4y3YDM_eR{kP`$_$6kCtf8+x4jve z*20ppitpZ3uK3R}9#>FEw_8w%e%!HgyDl`l1M+Jm72|r4Hv}pNkcT#0@sSn;0BtY0 z@q^7Q2~LUy)C07E8bn_RmU3|)U>#8`XGPD7)m3J6d6JS^vM-G(C`8wp3=iF$bg+x` z=;^BL4)V1u3KM9ujlN4XPd9pfJ2%2FVOKbX7uI?(uK!MBxMBC2xYn^;X?6C#B%)lS zCc{#gpnL~ca>x8laj$Pm3??QpTEwBJ{a1y7_Ryd%o$nZz^|inBoxP@LzP*^?TjQ_g+-A}s1QT{$(_w*ASV%{0= zJN-ZLN8<4!frqo9XOt0bq#toJ40}aDEc*1RklioX=c@cE8rQF9{rji+;Rl9Z|K1II zfUURtyF0)F`^z?1LSyzMLw^-5Fq%^qS}w0IYm`0E%a&Lf1orXfZG6* zd-Skh?IT{x!5LI$B2@6y9C_eKqKXCTogWZ*0eyU6Y9LE(*Z@C>noJDJ<^J(3gD!L>LzZ_Nr+5? zw}RgG7o-9SH8Hy%fIme^bys zLEV|%+X7{2PBBs66X;qve?<=n7FRUTV1V@0@2Hf*{LsaDfLSVf9BihLn<#DJhSZ)| zr1q5RP9NYXj07KAb*AfpV4Ppu zpK0^hImSlI7=7mvL7itc75+9Totpbat@3(^W?l3Fj)eO~MW$_K`Dya+Tb3F=#LHj} zc3GUQ`r1lb4bG9-G^|UrxR^EB$aE`P4xFoij`{J}kA;aTk`GG!%|u+ zCantIuclY*@?Bip?Ud#cSa_}lufGqJdaB;!Waqt{FKM38m!u`FKcjN+$iT64ZQ21O z#yPFbsMxh!d&AGF52dh<6*|kO+d0N<%wq2s^dt@5j5i`xWuzNMOofB(-st0{|V?Q9FSx-?gov0TFnrp|2hh>uZsfoBmBlZwsW>Ql|^)fyEBL(57M@09@gLf40C_uFtCz~Ee3&{}3!Cd|ZAfk6~P|7oK znSeX#sKgTr7ZVPFcsp52Rf4FSVsYqh!~wu`*~n9D5MXWwG}L)P`YBI`X+~V3eR)kw z5r;-YbyD4>r=zd6)^%JQ-j2MmIMHq8b_u+#CxUr?8=t$7(RZi4I$J_FTLY(RrK@_U zYL|31SD{HH`JAQxrlx>=wL^JH>*H_>NtSxO$Ti94m3Rq=!*DfplB(#m1Iui@OmtYS zdIS&{9hBS?-pzMe{z1pfzc4dk@W?$qRsURB?qV3%^P}bJO$rscc(;)829s#j+kGC~ zkLvY_t%>jO2&gX`IK-rPgIPkPS9(mDBo4_b%{xnL}q zSS2q~yA}>qx*tsqcwEy<2HXI#hzKrKiE_6YTKqKIvv+RSN8v`C-6r1_+iHTbLCvM1 zo*|EBUvT+`1?wB6elVg`QEniSg-1>kjeN+V1l4*spHX5vfani6E4Yb*?vq-Epjr4o zWuQ=pfLTM_=i~h&ev++cKN}qwNwqX9Evyr+&%jTqh772VFG*W@+p?YBRI5|XaM!bX z>S^P&g}rj6c{G48GikQzPmIW)7(wpjE%wi*tKP2h%km{#?Rkz?#umrY9VQm>8w+d= zcN9x2v%5R$=~oDi$B52?+m;v=4hvO>E_s!@=vO1nOflDkk32P$3| zw-%3PXn7P=#k=1U>zZG3jxJ)leK}}Uaj+Tx|iqWBeVqA?vivld`t75^?vO0f2V`6M2>$S=H-mMwkO%}N| zQs|(1ivC z-5ZMz;(s>fRNEyeKz1LukFj5{As?1x!Uc%m%+|Z%@}j2a-gAwjutG!ayM_7kA&9X3&*cVo zpR#;8e0DIuoeG7Zjtf5x#!I;GGY&o9aRJV-CbOyDnWqGMnEQ?{GVWC(qDtbw7kI4y z>|{`mX2ODLrR;Yn(omB=DEk0&*uK441HMvtG4PpEmcLsX6p#bl9F%`}Dhqf07hHi- z*TLml18!uu!wu?bp!jtJfS|HqI}JQIg%XK5JRApQ2QQV^0Q3JnT=8gd{zB4(md5w- zs@o6yK|vx5J}-V>J-4M+w@g%@!(YE; zP;TSqfY#F*(1A|eO7KV`4vyz>VzzzdLI6Zy==4pIut(|{@CObdkboZ5Ax?63Pmcw2 zO?GFPj}9r}CGFK8Ve>6|Q&~Au?eK+ngJSH+d*L_bC6krPL1!g-;LMoOv&l(hi{+^u zz5=h?i?Z`irWebewBPRb1SC$eiLcT5gh4$RiH7jTqQiIw2k zMJGl+M1%Mo7!&8@cXU3O3uzdWtKgBT$$2sj!ruXR04^uzNnhSH+1qlvCPwNF%#qw8 zcK72QL1x^BFpz*3Vn7&8qm)gtYl*ZZ&To+v$}t%k9Ac%*9Q4D;JP@I-btTR{M!*7dP^Og6TGu*g${#iYx?-mtFlp$xij7LmCRCrg*fQ076iI zfo=0hi|%8&gvyt)pjjdx=QKtcDo?AqGvK>(Ag0|UEWL}5wi6Q*7LU5n z0b>Cc{K6oaWvPWXUQA66udXB~^YU4ZdRVSmd_yRB zBu8h8d!&*l2rdbCoKLKU&sLSi*0}CJa^&KAQN|2YZ%ylf+Lc%Zt2&tYH5k3I={eDp z*{8I@G#aeCnJ1Il=fT)z+eubf;)hG~Yw6}+- zxUWJxVlPnnQLH*7N5#SA^^4mDOx<9%3!w{0P6CiDKoEye#tLnK7di;6lmE7v($Gro zS*~`}-CMAxkeAe2NpRs0(l;9tsMLheB3+fbbWg_jS1ijL^L6dlmt@3+phw5tB+@EZ zhi#JTH+ob~IxRNlT}MbXi}YJUA7kJ9Ynwzf}y^< zI-Sg{E~cb%zQ6V+&>d2>xY^8oeS>aBGi(U;&m6epq~%f9AvmE|gmYEmUtn|9VV;XG zt&`3=zm|WXzUf7l^1Jz}lT+)qm(G2D_)x3NE_Z0Wi9RuMH6>boJjN-)yaA#Wi0c3=XefGuYk)|UuKlz)DZE&eV z=ma0Y5?;VNPX?n`uSI>H-mDGL*Ta_iIfPW`Z{2IyP$XN&$EqHgBzL?U;;Ym5r%-;) z3T9Xn9^aX$)yfc2KaN#jF#_MMQVv~WWZ_6Fo|q|k$)+@IjE!tN)j^bVsBPf+XqMc=IKGD1DGrso;UP`Y}B=vOia{G$WkbVX?sfrN8 zRCPzjt~@*BISD&S=73&PvqgoVwZbaj=&l zt!TiQmpSb))B5PAnZdLf97!VKA&@RGM;IULwp* zx0)AxEOIcrwC~~~nfc23c`e@O4$8tA9K9B`E4Ak41dk}tph~*%)RTMjiCV%R2eUbH zi%oScTzU2uzzamLg`()d><4Q;YJEX@aj^gI`T~w)WUCCR{^3)rs%=W}_*T5 z_*YVT7PMS(utnip?)HMU5NWyqbpHeRpK2h5EFzF&1Sfnzpk<(J0@m<%P8d)sp&tH{ zi$UiF#7#Jgk5K|j0`!~|XKYmz<_TI*z%oz;6WMqLg2N!r!XMkpGK%D$dnszqqQfyF_kst%5RhALSacxq#kihS1V$lMvRneAm~J<3DL6huWMJ+e}SfX>0KuAZw_OiX>u(bJ~ zn3EDKe3jOYlc4j&*VI5J2Icfa6c=g)sc>!g^VtUmR|p3A+ryGZ?$8$xOF$}qeRTnK zN-jV(05KWTq!gdeixkO*sbzY*b#H#Ds^kYXJq!&*a|$JE;LFeHw?QTb-~tWT4YmN zE0^%t_2V`{Nue(9z(x7aHtS#cDCSFuY5-&M?E)5p=`=(C0@eV^gL?D1ebtv-FmUOUO9syA06K?*w&V;Mf- zSl_FEb2nIn$^z(c6Lp$+i8eG)(1=3i8xPB8=JuKQFz?zcWVBkr6dTm4x{;Y?=Pw4H_clCH0aH^Ecx zxRBB0zDG+J!aG7Hx4M@$WMDHig2d(2TBPpfsm@zO=?;jw53r%Qh) z*)i+shfmSOhcMlV!v1$>x17KfT&P(f{mo~DL+$Y{DvBA3{}^W z{D@yGhj;M3yey)PO$~a~Vsaf3)I^*&Ys=;mmGz%%|AWH<6iNQ$!h!Eg`dq%BE-Gc- zlPnq9WO2F^Aw@%>w(>c?9BL@vulIwRp;r7JjbrC}&AT`57T*Yx>Gk5^nz;D=j~yz- zJ5>H1Iq@GZw^?-u+m-NrkxKFI^;HfYfH-cVv%^K-IW1Jy{V#0L1So8A9AEWXsHv#H zp~z4R%O-ZND1Zl*Wbon)tO89+1Sc7hG7xX)Xxx19ngpB_ zk>hDzMo%(|i6LeiF#5Z@vm89rt@2#s!1sX|BCEs(~)9v(> z(s28rL`*x_JkKaDiz08@)OZ(s6^L0B*jvuE%6p9@f%3pz?JpNOIhd9U%8|K z;vOLCiX@ak$OW}^sIi)G$M+PHzX8(M>PMfvfR7>MZaj4#@|c=d<&#C#X* zhfLOieQM)nh+Q1vz3>iYaOrwt3P23iAzx#UKJNh(gfS2fC+h=Xu(L@m;2Zc0&sNiM zw}4@HGxJJ@y_*eH!%N{1FRqwoN-g((Qtc&Z(#H22S;qHFX<9*T4zs*r-1nH)#WQ+M zjil%v0CZW!3IyTCDepTbCS`V(ub?6+QR(#MEZq-rV>gn1i?tyAG>#s$v}cm?i4_tO zLs3kzZSGEGkKUiwB(+7DB`ZQ;c?A{dOO>DY5PFJLRkA2{&WfYT2`DF70Loc-O%PEvdDpacr<5n@6m78ti)yYVF_Q>^s; zs174$Ah1808Q9sK?PLcNy0R@+Vp`@5{XzQKx%XO9tqMV3a=Na)7m2lD4n_}0cTUxV zJ|gd>RPQozbMiis9Q|BEj#2BJv+H7(Qgj~Vh{_q!GEOWXEU263yE|f*opdR;zUkgw z;KrtoLtq(E+465Rb)Axe=Oa7ztM9obt+A+yoB&ZwkZs<(5$bRV?egbXVY8Rn0)rZ3 z!_htxzc}*GT67XZ9QW?-~b< zvT8vgzy^Rytd+1~5a`X95Tjvr#N7(+pyt2*a!GPNTFc=zJC=i$1S%FfCTsb!1(}D8>k=7B_Z=@KYU4v@95hcDPVTj zz`jjnZ zWQ6yHjBYOzo58loa{8gCe}QoaUJ)ee1pzdI&*jK^UIwIUaINQit_zaa{Hu_?Pr#-L zP~(INKjH`2CKSrdw{Iaa%uYR>MjMIPFrFD;R5AOnrM2SI=#uE|sR>F}SmFIPmd9iM z7!}X(vem|vhw_%$l1=2_Hs8pjX~_dayvR1-#t2mSN&O(=Xn-7$J%1yR*rUH{JV5Ma zmFMzoB1#CdHqh^A32ht46_td)+`VN&QW`J%T-u|K_Kof^`z^Ptr$J7@ymNlnSN`Mq zmPdVF^yrwyS`cf*U>~PuvDF_CKm63<2otn5+R7V_Pc1~hLzm}a#3Y@gtWHM7%?ifH zdGdKzo1bopeLp+Fet^$-9C&JDUA-Cu7vkOOkF` zT&I*)(VE`M46&f_J$dcy!|6B1Vp{p8%#qn~3*4A@c!@FQgQeRE!u=4g8hI-^-+m@G z;}6<)uTsr+o?fGd>Z5ckTbR1*HHDnYTga4CzgweY)@k|^MdS8ByhL(($djH$TRVjV zg>FO7=#C&KKE)&)Pfzgg@5B521b&EhRWSp#$B$JY2(pO`A(9lfE*XAb(Qj!Fuuy@&^XUA^0d{2$002~+z-Qj_UTbkZ6-%(E9xB7 zxHd3dtG4K@0WeKa-?)?I3F;ddEl}UkR~Xlm$Z6zkW$hi`A`>{Hz}F>k)k-kr+}+}# z;ZdE!9)9bdrk5Y|2%qRrse1YEZTdofTfXvpF7?By@FWTK&Jghlx`3zLwDV2TqQiX0 z8Smhm1xR3E1XJTMzitg{ppnVJ4qFvJxcnTb8ezf>!@+4Szt3MGnj1tO>=QN0vhQih zE}`hBA}@do-a1(-CT1|e&>A?M8cOpA5@SfIg@WQS-Tqx>humXnJflsrQ&rlJtoo%} zoQtkWY79v5xoTyjqqO`#&zW927bzH4B4+g(g*pH_MOYgfB)jNjESZj?FAm^Z z5;z#cTG(!HH%Xl;b+JiwtWd;Ev`1831eeN{BXHC3$>-h719`7V_9HO-+Qjq+2#Oy! z7dqgw1o@;ilcu?Xlu(jIxP^TPAT&oAaoLs8(bKou6I<_vy3*+y&Y~E~{>U?$&7DzB z$+6b(FXUvhWWZp6t)-(wr=ZX_1elCC3ZN&eLhJq`t(5J(Fn75C-k$FmxYs-vcF2&# z!Fyp)CRog~G`2s)!JvWU(kEWGtJH9$$3QF9<@{r#?3`d*|LY|mGxjc1rkoSq%Zy!$ zEI?oU*|EN1lQ=yfU70$CxkI%Ndf#UViANgqhIo+G`N6aK6n+4oq?@<@EnI|c5CPpj z{QQm?lLuKx7G1jDIweKp`381Wb7}*39laN=EBc+`3 zFgZ<)!78RVzR7uo;~z~^jKALBE7F$mxc%6r9y!;Fmi&=9Fhy2HzY#p^`jU%`qW`{} z*#93BM9vQ-geG4vOueaH#r5(|>5byG(`@7|Lt~_`7p6GY$)RUnX9oUJT~dDJ-%t79 ztwGS^mjIOC-;2MCd%!Fmg*yHmzgkUp!~)rS+mZEpv#pM8sQZ4vczpsXN!bQ}Hz0pt z0UHI$WC55V{2y@S`C1A1?qPNWloW}unZ2){2>e=22w9W#T21DF^Kl@y2WmB}frLJe z;*UTa2B!6>6gXxTl8HtfC*TB8gFeR*6R)=$Mrz2r1TO;$Rb2hrk1h7aHRxpTWjKc> zBP?X*_wL4h51VmJAiG!55=$6@voNSBYE1x|HLM$;|5~WtJS{}c@-E*^fRF8RF z(NIY&q73_5Xsd;o!+}!M+D13+>uWv=KZHi=Ion6UR>#^6ehH4iZ&*x(scMbZat(_K z8J&pv;u&99oo|*bdoN@1T9##6XrxVhr@w!o*B3@$%=D=av!Y%nW1{Eby`uJdm9y1J zmI!TzWokcY$f~RYFWFjLY|Q7z?f+oU4oIo|6+9+F)02p?5n{SwTw%__H_Mmle8}ED zdND$gOSOjVtd%bu7H%-$8wu9NthqUmE{9n~eOU@GoTN5PX)HI@DzyvEZ06PZChfQ% z2xj-p7nE}1G~NgM+3~9U7Z0Ym;6}mnP@bMW-Ls>^*1q%^iQI$fOW^u4tssBqOG~Nm z)XPm1Blc*-APg^Gp2LAF} zq<>xd6$y+0Kf_rzij(vZ>n`*Y+e z=}caOqR&3IF4j{~IDO&E%xL?$eVn71agx$@mm1}xKJOL!0&_E*D(vf&`84fdV3+j#Euhf-&hH+NzG}`IM8%$4zHtVu)vK$PqRHE2xJaW@kQjlYxq; z>fm5PN{iBE-_GWlR=|!Rv(Xv%T>aE+%Y>MKK8Z#N1xwHNQ#4=l?C~DMUPqszQ;|t$ zY~pk;@zm{CZ$Y$VTzPm^0GJx^Jn?r>3_XT2(B&{vS#y3o)Z5I#vzb@rmzytd!EAgp zct#K{(ch#YXpDM;fHbA}R6~xyphH~p(HxtbG^9B+Lvjy?+f3Fdd!t|&f-6ewxo>p@>QLiz3Mezhn5ph zbQytr(y;Ch9P)J7bxZzQe71ICyjkb0rg~56dju~7zO zml?LBT?v-QY37-P^0i26*m5blqRIT2l+KthlO z)w^~FUV~)T4qe2f27rna8CNJhZq~sz!VTn*rs4iD`Ru5iu#z+OzAUahe#~=hY>st{ zxX+`|W$jlLtv17<0WJ=W)bn>APYMGs&4EU-+q<^fy?`(ioD5+cMH~VkCyGQ=z7ckV zvkq2^pMT3IVLMQOocTBR6zMRe#}{6=Gud=xS~Wl_n>@+V4*iZ)0x>Q)5a1~oNL&|G*koO( zbzW{LK_NTv@5OdKdT;P7co;9vRNn^TUOIFQ^#chXoeZ;0nhK*!jrUFN9oC^5cW^!% zF$<_m)3r0u7C-#Ev5*|$PyCJXm2*M2N#0q*VYaF5<52;lm6anB zHVODM+GCWn}reqDb)zDWO*3U8cvXYK@I@uogQd>fY`jo9z@1wvvmRkLVhSvx^S% zm}yAFFSZ{)NosVGO8AmsLVnh9z#wV6V{$6};i9ACSO%Bl_ViJVxJhnf@XhnXh1Nwi z+~oM#kg##iTMSZSwMI2PM*qp)Q4P&}A}Q{fP~Gl{yaaA+L-bryoS9C4o&eYFNp2qc zm|hL}lTxd|HJ~ihK%=i|ia)5=(O<=)a=2blg(eke+k4Qouy8mcZT#;Ghl-z8=1Cd`4>+=7){0B%Y za?B=_%GX1=bataSq}F3ZFygN*To5{9FRL7*5DWtJE1O}2>-ugeK+F_aAb13Suf&7S zCamm6+iC6-?`*NaHC=Ypg`m0~lbIaJ!08hm z=)NdR#`%jcJgEb{?zNhFjhZ}@F`o}dckItiO$Hj?{G4^Y)-3QhMId^u(!sxixd{4k zTaF=4C*Tl+M%bV5GagvY!SF-KJ0wI(FMt*ato^n{kL?F~irTNs!2`M{5X^G8d?ALcI)=~(vYqWP3gPZ#BBg7S%;Q%Lz6FNITWpWCy@T}B;z znScI8(c%uui=t5XYvp>R3*Xvv{et@8aa|RJ?u)H`f<%!l^&a~D256X5yZ7kt(KY~k z`UtR+e-&-_g9O|jh2D*tQWI{!Z4m?=DX@oQO?H83DH5^5~aN|B39GF^a(f9YsIp= zN=I!qyrn!yvqM9kzMJEjb~CO%gFgIB6Lh*l*PkemH`~53)xF4LF~|Oyt<*pafm`h$ z`rw^;SKm9V-lE4n6r;F0lA@?TSLKW@cyGt8Qap0#-alq}ost@v9azu^h!q#~Jki)d zo+duTdYIyZEZqQ%3vsOv9XIX@y^D8Fow^i}hwyO%fcD1?zl)Sf0+#mqZ3IvH;GQ4C zU48^~-BUmU?r$t12owZi32|(r+VWSm2F;$#wk+W_reae+!}L{(Wa*jslQrn<2GpI4 zXynn6(mSte9o0!YFc&$B&l#qcr;@}^5-f6VkRgf2$CS_2+nO0wH)nb299A$SzmLd# zF>WtWOseU%$(wW4IsCLN$9U>P-<)y>nj&4kbTP(3gV7c`a#-*1osvca0%Y-cKjA#t zsq|BG>#+6WyP-ZZW1wWj`=>(6kBXhSb7XoIdf9N{tPe@pz{CHYE;z>^8VC?t#GC>b z7#N%dj?9ZL)2%=ItB6MF#xs+ctmoDQW+#vQ-eZPIZn* zsv!<|gf~P4Ka_B^nKk}LEE95mk7qa4#cNNbPEKJdd8d{m+_h4zbK5RbZz%-nA9%qtqC5B>Sl@5QHwsqSP`+JAtXQ|uibxt9U%6BHR zmvsCMI}g}Q%vyA$pY4wiKRhmXa}Mp^oF#pxPR6Dx(XQublQ`EY)q&F3fnkzl^stZF zndl^Oo4BWg(Y`l2Wq&MCmM{s*e59+z|0&cuM7(nO!JJ*^mvJ-yG|UrcYCeiwQm?XimuTl|x{(>prCKV6@YV>3u<2c1>}~c0QHHr*xc# z#~NIEG;E0niI+ngMNLaEBRcl+&Z30fHHII1hG^J($pNK4PiiC*WqalbUW|!ZW}}R2 zWxPXgYb@nS=?P*4k4_Wlv2&)}cADy8!m-){))O?baV;UYfL_~5<3)P4BG+4?SRqwq z9p6K9M)S5eb4=Af^bX{^IrQ1`XLAv2o0km|6tl!OmrgDZvUqBWv;wAUqW)a$yYIgB z^Mtlk=|20Ldd8U(b=@J}lVXXIHMh2Jyo}$l;l%dSU=eNKb!s*>(}t2gktpk0qk2ZN zO6S3kY}tbR+bt2Mc_z($fONV27V>-x`LX%Ed9g&>>J~?8=aQbTtxaQ^+1;s&_-QWy zGTj=Ui5Q^o`qD4+97*y)pqmJeb~_T2sn<#YqYQQ86SOf0;<4dChAPC+MON4;I&7l} z0A4WI8N_qEM8>>Lm_S0HmZcQd>Jbk3h4s{h&yeFH%!hhks|`78G2%rZa66TJiEd!D z=y`OeM7F4DSBahC*5h^3kZ0}HlZ~Dktt+&8RPIR%y;pCNlc&##iKOjI!6z}r&Xo4S z`Pm>CB$pn3n;>=tVueE|K(37}yhwb{wVlh||Ip2nQTnUaidylYkPO*nk^EGDhm%jq z;uuNWNJ_x?_H$1y9%%xRWyRr|ifw48i}6g|?E=&R>kuCz}oNC%tys=me&rg^sUUa~#o z^Kng>>39dTj~NwGfD-hGdReQc@Pw04J>5KS6EhU!V{6~cylGc|Q$v-m>-P3kXl&oJ z`Fwut^n9MP7x~4glZVJ%gCHLtv1?d{zCFgC7NR<^JW?eQY~GJitv!FOpS68_M61HH zx;@{REOaN`9B)f7EbvVwCR>L_Pq}Il0`KKJ6gOVNFDtE}-cf}&bxrr!1i4uq^7Zs- zWf+GqNHZ$j(rU4EM<;r-IoS;qI7pUKfq_hq9|8jlT|b0tYU`?&Mn~5EiZrVzFv%hj zyywWu>VlZ;|5%=z=l^?_^G19s#P6P-jkz3RrKT=<=}FSQBYta#N$A@0y~#Xn6Kt$4 zr}a8oHLue(#2^ouDEyBL$3<;%m473AU)z1hb(L=is%fZv%S=LT`dY$HG(vV;HPyg2 zTjg5=yw3mHfcsvm77UiPKpw|&-COV*a6fDd4uPNW0`3d6TP?heJ8t zsSCK@4vbt3d!G?eX5xxb93Ie0$v;7??f zGxd0D<@9z{7Hhr#fbRubptjj3HO=Tmr7eo_3c-sd)fmOsgNZH_F7XBJsz>@s7LmdA zEa9x=6p|px${^uie?|Yn2n-DVndI(q`GzA2YUKwQ`zXT2KiHKuhmKN6|Ebb95z zf@)Lo^uVG>$+DQ1%;LARecMk3dq{bjkYuw*hVG=x=h%J8cA9QZ3_>C<7=^^>5KH}7 z%hZ4nr&3@jFLhPgO0|!Y@hJs*+Y)ZYRxjrXySj0U$r{_np1W#6jv5}GrWgrdV3$LO zzW~oXwcRl@P%G2cl%?qid)CyIbIU{r?d?sY$YD;II~e1!cKtpJbPCq4){-u+M%FFa z+aIcpDCHHykY~Bz$zUNJa2bJS9njL9fOJ{#2VPiLFYzw7F44*eNe zZ%dw`Qr>Le_yn~VNdp6`t?Y;{|8aZYT`lIX(~3l^_bLh;oE{uVBplDyaC9=vGHK4a z6ByI$Xj*BMsWn}m7~K=|N3D}G?-Ey-b5m)bv(QyaHpZr;DOuh%*1}-IrbWABsYg3> zgim58Uk&frg7D7ygaCroi^wLgHD~ilFN;4)YBe9kWl zVrKZ9C2x@d0%e>;*WI({McR50$*ffxgwCQg#T|HL}K=?56{_9P^ z*Ha8}PagdzzoJO@%fulej2CjnK*9&4gttAHL^8{Oz~_R>US0qO1K;_cOMWl{?`0GG zB&7l>4ZeXuzmgaLKAu(1{)ZdcJ-=;WGX&(kg~o}6N{f$dOU~D6`WbEtj>EjB88$FlO<9& z`vS1k@KXK*<2z=hL;3_nM$ebV#JPDljHpSWUu0C>Yb`a>EI%$3W$aq|c=qvJkpDQ} z0k3+xLM&-1`z9u)DSmH15|#tQYWu|CC+6%l440+4~&7@zJ0&jwh1DBFLWg-g;Wx`{{2bi_t|H$sP%`v5dlYoP%TT?dDOt zxYKpmZax0AiX~=k3m4JTI~FY?BTzHzCI7Uh#56RZMJZ!W4%fokIDNR!&Pn-|?GFi8 zNlTD(U!};!owh)o?CU=Z1jr9T>F?+-;3P)uP-@GmW|Lq~;reVPnw?qe2tqVcp-G@o z^}B7tuGQCZ>jI5KmhJ!-pM+>}zWDy?-6IC>wL#`_I1%^OgnVM0i4%3cq~B@AoX*8g zpa*!~^#HKXBlI+R=q9deJUU=x>%3G|*Qk7bN$w{kmh3t(?)F%4_D%fakIiWGdm@EC zK0U(1I1J1Oi?@#_v_wPg^jwr$W zspcK&YZ^}(dWo{>S#@ID6g&<+yJ?@hC%{Ed{wsja*(W8$M-6N_| zk~UYH&gUx-8zj|%VMN_r9CaAAX4=$E0rl!~Y`#zPhfD2)`r?hfQSlb11ddB(dd9^& za+fM(R+Z@Gr#9}YqD&btW(9rxxd-aNo-J%fq!>^rTR^ezW^Y)XO28)2V&v%T?Y+@5 zeon$km|}G>F#SVb-BW;{Y_qa&Z6!gTP$$hZPEym=CcxL3A#*yUMUI8lG;GBBT$MYK zsB}hh=3?WQEX`QKSTp%5OPfmL*uh36d#j|1*0XOcj0<8<50%Fd485P0W-0kwGDssn zUrN$xaoOg|sk-V!vQa%wYM9CzEx>Rs)>xSmnliev@*%BK9t_U(9>*e2&sTNc>Xf>? z9vuh%4>QLlt!>i9+ep4rhUmmYhZD@+62Zx?Sd#nD(*CCE63<{?Pt?1y&?cs+UY;qj zK09rHt)kQvy*E^VrM_=><;_D+a*QayI~mb62eU5)4D?L+WGmgTqgvFDxHA?6m&J#S zI?U`8eXYz(+_iQ^+Bb+(5Ag>!+nPBoogG)ioFs7e8aLbtBs-8&2fHMF-C46ST{liE zlhIMlvkCh;!*$&}`<9f-n)w}>?B+&o$wr*N;8p*&XghxU{p}aq|9gGSy^69-{VX{U z@mNCixQ6jlb@Yp45ocTWs;uw5>tNTF;YdeOxungBY3I>Lqfb6NG+NgXeXi|sqPfR* zLBI7K|M~y+4F?~efULcLE*rLdotZ!(-h3Mh1^P@#9|uq!(#6@!H#Q`Qe!~KYzYR7! z*u^Pp8&-Gx_vrhE=WLT7`Qr!W;UdAviT&Uj>@fW{h|i-?AmeZXHsJl%g(lh2_ahLR ze-5$z)#y8rGXXQ<8U-{2#7f_-439|HoHv$B*p)Dcx;AcSZsqk+x zsTQ}FRX_NwVW4@?^3<0xlJw!e2;+iu`KSFQHRc7vTi@KH_@OGxA@;tm z9)&1Rf1^RV8USk>M9vRU>|1S3wE46@XKGX@^I~|0-04;E+FRaUunA1aA}BbKx||UGI6m zZ4cgWof=^`LW4lC_T_DJ3s&^EtzbBlVjag%G+2j%17Iu}Z;_rFFZ7p>(W%G`aqOAe zbl)!@HpW!yn720Sr}&<%`IICfBPQCWxIc2j0fP-T@~qn1nV)PP>)Ib;rk$l)tEwXr z%JoqymM(mx_}2K#v<6aTT#~G-^GZL=s>KctGIy2sr;RPh$0wYr&$t%iWn%)1#`! zmC^l4-L-uQ63fh*A1W*qUk=yTjcb&0HI*_PqGXstOkb|14?``9(}VJPG0nyl?&?@y zHU3bE7BR76XT|JFAzei=&I+vlc)Sxc#QDQ#367NR-y}C}l7#GrUw8f&*oCXY6zhUl z+W~v%_u~(zUqE`=t&L#Jqb^>q+|0pi5v?c_kTWc{(@xgty-Q_F=0U?ObScFtBT!8- zOHq-lr0LV`Q&lEGE_RdZr;>`DXC|aYD5fb*74kpL^%W-^XDDdrVhDMrv5Chm4(*L0 z+_nsym(*F#s`fOy`stQk&zTWzAlLIW76_O>l_U-d|H%%}v zbQ<5+-FTQdiMAk!dD>xk%4pL1Ty zO(w%6!s9e!y4SR;((^y5e}dnzZppb*lTxH4P*Gl!rFE;PPG4HO-R#tKYqI$r@-m-P zEJfZ(l=rv1I2upw`J2gB;XA1cVX~c}QWlT8ZS$~#Y5lS0F-y+kB#$?Xt*wwiQga}t zPOFSA5cP5kvo+7MXP+HLkMbT+2Cd1Kkn$OCZf+5*aaE5?_oiHoj&Ut;Qamh;j&9tu zY&3_N3v?^i)heMf@Uy|5@^djd2es5l77h4!9qmM7`uWK~?-f+o*qsWrt&P$TjRL0^ zg)0}!{FZKF_Jj_^K6B97Ux%sDuq~TQsyPVsRi7t0Ux6PM2*LqK`h4RZ_>65$ozSB~9^CAHFkTKXy!8 z*^dk+OIA*L-R@J+?mXnZ@1%^CX8Aj9^cmx&+H}wNG=Y(p4_(wg(^fZy*on6p=rj}K z)KI*2sBW=~s!~`~MN363k5RCoK-`=^7mYxb$)HPNlGN*8~HHb z_B~z>*-v?VOs`u_dj-`liBYg6OaV%K#+rDo*gfi)iHy9rW3mg*KQ7UAs&f%HQx{^8 zAtrlTFz#t3opnB@P8n29aQ-`_J7)SKeKe4X;0rDl4!j@e#sHD#r(h#q45*!E=+|Rw z&@rEELKfb*X30=Q#9K1!k}WNP$Ui~iOi)c%5aaF~b)oNg?zG)lP7B5?rlAt^(7xz) z(eS9&(s2E7X!t#7#hrqv=SzKa5uMLoFV_iKlu@K-7#~s+mwBoanx`B|HbZ!;hw8>Q z(@Xn=G%1c)i%xPC|7_I~y2O_1c~|GWwpJi8X(=9jGx5Q&O(Cwo-QV}br)C*%leg1@ zitd{gV7U1zR~W)dL)CE2Zmn`a~HNK2du&h8)b>OrPp&rSHT5{3A8Hvz3wdMPx7e9 zw%ALS(&26W7?_L~PFfa|$c)U9(hC!MQS8i9>wtBsGP`SXEXyOCm*RFR+eE4br0ZfD zVw0X7E!MbsI)!BY%)*Fb7x&PzCD!({Sj*h_;bi5j2PrdNvbCuL=WcvxdnP;zxUF~h z+M z-KE}OWG zN^T{&QLaf?0!=P2DeB9-NlT7cYx?xyU>>%6$i!7E>s*_ThR*&=ME~@BGRcPI7~}Z% z=gg`D7YA7fT2J3*&Wtl__ojE$@t9;ECX#X|re@yVXwgw~uTJ$!-x-_8j7}8#fv8%R zQ89p((agCL5FH)eApG$6@csGerV3qc0JK)Plkmxn*+||0t}$)K_2-_JtPH!n+@>$n zZuVWq$vxbx*Mp_gDHK)kBqSJ#>jgb+B^qCw*}Kc+_0nmLA&Iot6_Tbo-RaRJ{wYV;gx(-`_!mrd_t7KeI0v0Aa%N3=|uGxBG zt(pq#y~heND&c=sHb)oYlLv7wSicg_djQ@9_IX#a5UUUew!p|&iPX)ir~`V4yO|4G z4IJc<>aydb;CHDme)qS3OLYOG9+5^%*{}&o8eyYVogmxx!ci1IQD}ME*I^iYqQ0?h zaiXI(E^HH*B=^>18ME(KPz_z{%?RW>^`c?PCaFtulk!%2lTXbhOASVy zA<#JQ4Zi;wQjidSQmNgWuc&OgZQzFpqzeLa^$pv14N%e)zstXsXL3AZ=gBV2PZFC6 z6=tPrr9B09;WmkBXS$6k;ZF`u&S+~&;+XY|jgN*^=_a3=9;!!~B??3rsAJ7RN;$Vi zKjYfu2___<}w+bH>DP`=O{ zZtz}f$E1mlZey|sb)@RA(ULsI>VUw^-%t>?}mlGvnzZV+iOMGb^Z}uoaZr3Tm3h>gd4%#R}9xY*~E-w`2xsoG)1* z7(QjTf-+h`jc_*8=5ZA(DD6eU3TodxZNO|OYVFu1*+m^VZXP#i#t@jJRjr_|uAq!* z3t}s%v=vlGO*4UgjOOt=%YX?MCx(Yxh}1$X15yMX_Ej1C>M2Qu|cKG~9LK z3TmO9b$B@yik4{80u<%d+Q4aQaY$`;`PQ%AMHqv?zTUO)g>QvrGsLyqpx{;y?D`J} z(*CEm0~99GcIf}m>dJ1o&J~o*vhZ}xKWZul$E`OGZoP5(nCK-M)GlSY9a;nKk(abV;-RECG0s>Rr%P)R5lw zt%n$lhq23Ojc8U7Zix2X1;9E?q$lIDB{7^(3GScufm&>xhbt>8{xTcIu!EK-3H%wkj1y*^*uIbY@J(Z!#lt2B8Z}+G=9VHD(o!2bB~aOy-gq<&BnX`GX%8(f=+;v z{~tq8eFnr-j>DM2e+fDn<{bRbnbz{hRIf~R^>CkvLkL{ za}Vw|CuTfv8C!l=o3UgxUE^g&PfT#|>bS|=7S-WiTTgTxSc?Qjbft>1vs?)9d1TRZ$c?OXK+ z)~kn}T`$gB_-E^d{XZ&Y*L&@ee|<1*-#-}WG}l%;4Lq4iTofy5`F~#y4`v0myyx4K zX@{XI6~`F;+VU_wbFu<)@NI@M(x2skSV1^S`wHrZ6;wAoF~SP!y1?JhkOKDU3W^0! z{1Xi4X5XFT)-oIrhuAJ)5v-sJar4T{R&dI#@OWv+;}>64h9MS=IAsR1!|L;ICa$1L zH-?6HC`zrMpjV7_&#iS5vsv8QL&_1Go`g?54tfHMFKq4gK`KI9uZMC5;aewMeZBtw zF8{tMTUbcY!YR# zN#xew|43yD?d!A1UiSQU0_#=dQiJyWYu31SyzCYamll81w}`*jS0d# z+N$lkf`YI7dh0u_piGq)POTahUs$j^Vr_@bI;=gvY~;SDFn=G8zx&FhS&X+Q&HsIm zWbNf<=$vNk4^>*mP|lj!Cg;0$i5MJ38K}?Jx@)7uy1_?SwS~Vg{b1YWaL{x-!Tz|W z0nY79VU~27xtEzO-ykU_{llzNSV*C)i;TC}<4czUiF^YwWrxpB*b?3qsN)sTW_(mN z=Sw}3IuCV1XJVdNIu^!z3h9?!wd4O8#YgzVE24^6BER=GFQfxeuo=*YZKz7seT!1p zl8T4bhO^79ezU4Lc#}F-ihWJs&cq6j7o+EF=4>Xf&9wAn)FY~h&m{w%9})Bm*OP<^ zCIEb@Q{#^W6vrkC9dOqhiPqI9%O0)t4c1_pY8hl254)18n~C)=VbeBR0BbRqv4fm!r_=TYPZrwTh<{eST&ZdGebuVNGq+YUAdBoZ!V&EI}k zq4S8Vdh+nq-syqfKc^i<-7XzVIiPZ?vao{8DHu0Z*B%gvPifRN_j1ooZ)qoPwK(H@ zw~>0#baXz5-5VuX6=|*WOH~9q?Lp0mS+Cd5G+Ym^1-TO~*HGalC7jbT92T*Ha)84;8V7MjeX|0-P^HzKOkIJ@ zdw#jBoi=X<6M*6P#%Jse6|;RT%rb59B*UX7m3QFn& zXzd{A>d4K1w~xz082d_Q^A7AQwZ!`-vFiuJP2_6*@@m!(!>yh7Bd+NV*~_@P z+FRCxAU-Y==yiHpe^J5BT*&OSgOl?IiF|v#k-VI9gGo(l+M3c#HwvTKI@EB0Pp(Ed zG1KylcK%pi>u~Q#)u&)tAyZD%URTs+tl5vi9!h_$$FP?qs|Axm}kh{E9|oP(uhbVJVvN$hk{B;D)nP_LasU6Qd}U4A`H%lB}v zm&10usaEohvbguz2`PEH#U6<_JLjkc5>hvFI4=&c4$-K;B??=L_eHtS)MK;b-nLZGWxUp?cl5cYs68$x@_I7^Sa`^Bgi{$)TJ|+R~`lakzxHM`dqsr z@#ZfDR94aEHu>epTgKam&&q_ZpkSNZ;*OnNv@bt9@Ued!|rEgLNs=EAwKzk?CSBNvV~quB z6PtvR?WqUyB|wW#-C z3tZ|*>LH{mZUPho;;4tJ0D&|L_?`4rk)uJ-dlTFZq#h#L;1`blbz56p*Em$C&^z7M zITL!&Gt)y6jTcZJ=j%1~X7f+58hERB_hxBHgb97g<@^0W#BRvYLtQ~2-+ONT5`nsP zVV$U9H962SKQY#Z5I<^LQYSkT zvzxN@#UGf&ByG>^ao18e;SJ!F+0|O*>|{YtdWgQef^xN8w-*W=Q2v_nFs&+ z+0EWwO8qlNJWbl%;&EmjM%UBGUZ9AA3#Cy8W@VmtV!)^tltA2Cfep4$C7`!9Ym%F)baB%ghlW!bCNqJO$pM$9xl4x3gcM*{bzkPcJ=K5>MHwZ)$Gx_Um4yNhku@7if#U0cb-)hgD_wTaOi8d(F`Kx2HKcDHrDi-cJa&Ij_tl7;*lhV+Lk zLl0)EY7*pLvI6aCrQ=HJS+klMzj^+(oaNjXnrhY`Ike==JvfAB@A_yt6WOYqXp}Kt zX-0;iv2AxkuJT=DIIVH!oN)dCILqN2@0M$k0*gh%(Hg#g;Z$eMy4-0PLtl0^1hW4R zW$yvkMAp3l2fOHs2#6HH1qB5a5fJIPQdSKhLI_elXu9F=)ZN7p-V%hp;~@ma2Vv>9RVNN0(4or`Ed=HfEj+oeCf9$ zjx(5g%$`gQAG38yJXbF=^p5gNT<9JkAq9gp+tEy&8xjG$tB_=XA@%Sq<#+4@4Ww&Rhki)=j-fg;$hu$!=d(8%$tEPwj)sFCRug-@XnOBLL$Ig z&2?}a0m<&{yUw~NnG6)s_5fk_|KWEcLkJuOAGC(mSh*_wEQUPTrnG| zdGs?E>{D}fp$7V7ZeFg0gp!$++#jefy-qk>b{@`N{sAU5zf;KmSD1*7#D&?}>Idfo zgVqK797}B?rt#z8&2Ku1{~`d5!If#*ei|!vE-35LR;HyyOefDjaN)JJ?QX279aO7w z?L7HRODoiNERh1}O7(j}CMew60FXc8ZR^{2CAHVyHE4o2CJs%M(y2TUj{Fh8$eJ2M zAoOe)*~lq?r3j&x@^YBzXade0O%Q37{l_`LGS9mQ0RmS*YQs-L*A_7KZVlBM2dG|- zy{_i{6>GU_g-DHSv4gR;y?*u*xT>HM**-O%X@AA=g7zjSPe0dn+SJ6P|2((<>!Bm5 zrOsjnM6_98fJ1uGx^>_JIa>9aXF+-{GdVB{IDLGx$9hXeZkcSpLFfeZu;TPGaPX?0oeVYgU_sWjb#2pFHkAlsJ>n{!|nN5&uq-l0NzJZf74+X*p!go z;lXuyyp&rGr6@H)8IQN;Le>U5WHcjq2eLlKg_2J4xy&@ZV}^p&o1?C1$=-$45RCZX zrTH0QTcRaj*FqjXD=Md;?g-^njqyz^ZIzC5LQr_>wwBG;9;Ri>(E5(dJZ}=K8F$YVI2vn}%u3 zK=5#Ti24d^dbJIHQ_5LiTDp$Q$`mbO<2&M4m`L3QF`V5Xv`nCwngf0eugq^jf<%d~ z;6eO$`;$G{3Ox6o_mLN7HNbBTy$t+J>}Lyq8TucK|E*7%|4WxcKo?Pw4H<-FOzZLqI?zJF8wTC^Xe<^>v-NhP{r|zFu<~6oKzXdz}N^agt z`wHuZW`W%T|7{jNPLLUA!KCeUT=17dgkokCnB-r8&$j8yHtw%UzUcB5W&_O|k-V^_ zf%|LTb~^ZL2;aIErT-r-{;Ns{*>m?zB{E&&Ti5A3UC*&E*^O^wlVHsf7+VqR3V*bR z#+JDK3v{Ef#!$t+QT`7>7R%dvP#YdYuU4ivq+=u-lEA}rIJ6f|-EIIT!-tT*HHIXm zU&9xA)II_r0dm%xyuhN_KR}KL&%?S^JJyqBr+(b$de$-$fIquL*BJA! zavm~Yw1v(ZQlv$H76LaUc*tRh7r-cLn;6OL2F1&ge%or{E5HERQRo46rV~7H|E2g( zpiilFv9582=+EXA3;mEFw&i(syK4fvmk|T3t1h&?J37nh*H63 zUHo#Xqsk2BBpt*oZh~0mvLUZ~cJcZ>ZEh_`M;U9} z?5J_&y@WUp&7ijA?$x;&4Fg%4)^@yp9Ns}#{7LCBF{Pu8<}0aJX$(M`0D-F3Z67Ya zHAU0{BHas}-_X$%i4{_g_-vCpIshoKN&3~^)Nrk(2bYC)s$WcX!Dk+)M}IN5&`B9w zbBRR+Vv|JAVQNoq_D&1M?dhg6$0)wiUB$%NWpGE4m~S1ph$iX=F7LP7TjxVIE-j8y z!i!d94z5YMeJN8I%pIGUL*~y7wBb{*M1!e5?A^I0>yvgl9Sh1!Mvrl}4rR18-CbpM zBMv8NlWsVrlbuDVKOo>u7E}V8?F~AF5DCBwHw&L2@`I2j2n%IHCx8)x_i-q2kQF?7 z8@69-&{eOfc6s`xqBkC+>ZFl$rmO`KdvtM2C$_Jv<0Y+sE~-Ae{*7FKsejpob#4O> zZ)<%kMK$~TCeJa$6D=4Sdp9JJ%VUcaO6Ltc^LhTsyY3LF;xzts^lIq?oB?079~P~7!tMDT}@w?RPG>3NTLEJ<@h zLykF}l0k9W8DP3ibN;SsLLd;Qjk1*T>=&+0&9Gw-w06jX&Byr`EYa|LMB>M5#UkR-U7_Rp4wRuzVZz?@Y#i80mjrs@;K zO&U-)WlSA|Jg*?6HZ){3^=zK|9jO*?>M|FNslkG20MiZ5ih5fxSJWd_>ODmb3X-_0 zE}}OuTA3qCTv$rWp;he;&@!P~_xpaS@rQHiP(w-oIPEz;&$p|3|MA@QN(5-fI>+j< z5s%o!P0l+l-{@-+TNNZ2RN>JK&_lK7$ws`FWD_Y~p(8g3#Ob04v#n*R~fayhAYo*?{cvrU$)? z`HE339$}@S&@iDrgrLnexk!KdS zF+y-ga6{ymwr-;Svg#EtX_Gs%eFgS|$Vk4Kj)w{R4d|+@4b)8N`ID%tXYz~X46evA7HeL8Aa%o(bFE*mMrSqpy zW7TfRkF=*vh}?(6wVKX(D2;d+dh7+?U+`t-XA#x%Ln}0YZ5-P5e|`Svhuyzj#T8hK zpMA`8^>rTXkf4j;;tf+TSx?w58t_P-vVoo51y#Q)A)or#edL)jY;TnPi&WDXGltja zl-C0)3DkWOv{lK%dhqeH4Jz~fjI3oBLCs!bx<9Lw$9vA;Ze*1oblNocr}_cQGqQ^M zvnlCV?*>KvX>bOv*HvYMN;{FBoB8|C&wp~f2>Z$Lgy2Ew;|ali`+jD9*!AZ=*iSou zoc~mw^?BdfQ~xO2C1nGS(tZJKHmogW=RY`z$YU3QRM9Z#6Uc@O`{gU)fIAIrP{1)Orww)^>yZE`0FG1kF>pR=L;g!v z1{_T5D963ih8!Sc^;*P%UC*J6I~JkNfPlGj@8Z8gh@6?x<1O~@w*S>Bw5JG%!-SCcZW9tV9GnWc?+c1BxT z3w?@jZbWIx<<_@XV1U03ZUlEaI-J_jmz$D%>G6|04w`nFEZRO+#4!l=g)+(@z}#d0 zXKSB>nNWR@|FI#YN_X7Te6wAs>&vZADo1_+JUJ1EFKdcWkNA|zZYaP*?^mt*5D5Wm zRz|VyPy*hMVt{h+AfW7!<=CaI1)`ew{H6(|%H;t+EC5CO`Rpl(o$nQdp?g4#LzUx^ zCby>6lQW4n5YERLKm^2{HkCUrr|nUAv;NOUoK0S>6>g5N+2Pa1%~0tQz3xoZqt-IR zf?G`t{<5wf#8gtyLi5NhZY(*$g_Dqp+IY6ybc++;*rXuflo==zBHyJg3jiB*&$_pc z%xP)q05X=RP@uM)^zKtrn2AL~|gwTnMC^(qmQ}5z$QEpJy z+EC~bA3E1|0wdwX@ci??1&hx>>Ea!7*{ ztfqNNzi(X7S+OZNv9`qT8>2kp1d?d+lrF8H0koeB|V_gcuzxiq$MwQWniXzh!^e^fex=3Y3MpbGX0kP!~*$;<6+Y4b>4Lmt3x_?WLhHws{m9|*5s6>S1>1f%y6E^d8Z6)ML1 zSt~D(I~J6u;O&c4OSp_2Y6a4!8>{kj0~9t%7Zlo6>{Dw~QkPUDACXT4pBZ_OZXQex za_Dyhd5et?jP&@Wvy3}^({eKbTQcHB$Mqb{mqC|vaB4Qr)>TE>wkNtQafIR4K0lBZ z>O$*K@6FScdgus)VE6%?fMDE@XV0H5l)4Ove9V447C91vk#ufJ z&FOWrQdpaGrYo;XM@)BFN+@Tx#(5UL>?Rl_DcL?L9tl>DS&1wI#C`8o&a6#_bo*%> zne6Xdg$I-d#@Y|O8`bVr_$XZgKq<+JhKmi*8utHhML~s z#oHgVeyf(4wBSZmde(LP3QcO12R*y$m???zi#0lVyT?5vKDf0D<>QhS!JsX^*$Rqe zsz_Q+ZT5ooZC)CUIu@!iKSW9hWaw-67T>>*M6|3HWIE%kux2=r*&ru_H-sBD9fgpK-j5qxeYg1h(g>0!~fnQ09RrwvvU0*Jq$pz z=o*UuxGV3u)KN~rKw)^c=oBk)4gk90q$fl!_v1*Z`U5CJ^wknR%UmUdXC8GC#Mrq6 z)jiObcWWmst7=3nm0AuqN@^=_gmljMa7vnX<(DLL?GdAGf^$l8kOla%Gd%T7L?A(}nOc(vxpPAY^&FxC>i5 z&PGVMn?|PADv%A)yl4^Y9`6N-b^8Z%evWCrvr=VIh30s9T-9iHRkn9mw$ehD2v@zZ zefn3}hq9|(f|E%B;%Tbe7{c2Aw<}|z+Z75YEK=6a^=au73f6Mv@4Z%-&J^_ye-@(s z0z57m z2VYISYfNWOWlyNW8;qK5b1^^nv{?q1|H*ZvEEmD?f@HOs??B z`~v#_hLeYYk`n5&aj(imC8L|#!EINud2`V|(^guN-|ukF1ww;q_4ESWlsJxBrIhF2W| zv4Qbq5&toUI>M5#7hm9aHr?-RYSa`?J|$%;C5a&+AshY(mzwLIQhQG&m&mo95{waqLz zBWuvl-aGxd2+@;#rLcjwJ#ipYVRqWeZC>^~zGfF%v}&vRQF3OoQC59FX=Z-2oX?*uJ?1$Nkt-|j=M3SfV0g8jDu2e9l9 zEb!D1Cs_ZFLZUSHuy&f@F4JKr`hjo*mYKeTa15$LS%DzWjRT50fROS85Ul6~$P02* zb8i?}+~0!$%lV)RtE+3=h9EEk5`GP)3B3U9Q^LU@@&{PhLm(T%z5sSF$DU^(1^`sD zaRA`J07{s}BxN6XfLm*i$th47dfkwfg7W+hG>vaK6nl8>e}s@WxX;|! z1FYF&h%@_6ft?c;mheGYmu%#E%+`gpQCSROMbF zZTbE1v3-6~h4-BFPR>A_2WXl1ksnp;l`${ZxWWtV=SLBudzBrmvVPorfOdP2^kteN zjOQ9F#@fnPBdVPU^v%5iWn)2E#052`^5!z4qf|Ekt-iC`DroOO-`YIb`+tW{C2P;$I9X-QG&+)Eu(~y&;z|0 zo25Y>y#PB-kA^kFgXcYXcwoVr)SJ}ll+@sY`T$PP)cpRKb2!DE^dx1bj9aao5xS`X zFCQdoL{F1m)34G9#v69kyUN4aX9B7r%&&-$(xMV6`$_v8tX;lvD z-IP{b!Ri;k$R%{O_ZyDD2V{Sp>wpJc3Yf{_dWXDPk1&uoC_nRo%pLk&IWyj|l=$E{ zzM=Z&CNZ;W1~=Bm*Q%{3Ze`gstn9E@Oet=-oohyzH>B#yDb4S5VOLgAk9B>-6HB!b zOMmbXDqk$Oua>99B`3Z6QYEKo6A>#EDC$=HW$8YC45@G8gR{-Vp*jZuen@}Ec!1-m zV)multb7JZksh4Uj;ms}ca_W%{lW{f83VDpB*Pb7>F6{!%g8t*Jw*Mg1Jm;4;m^(! z_LuP9o;ndrE{heyis9YEE84z}5jYSQgfRAo*AI`q?bk@DD6T*(IWm(f2tDgo4`&3( zS%Ep-JKHT~n^!xtVt%8-9p$;{}SITWnS zxk8Ac}6ejd>80QTBg9hCSWP(xFWreC3JU{+4_$oJ;hnUgN-@pfto&K z8}?8AX_s*aVWb>OCVFn@0ZZg(YBL$py0tXHkQpLY^hvG1+1l@2wuk{`+l~xH{mrV@ z(D_7{?IMlc0?lS)cEUz10o0-NVs>SpvUg--P&xkI>KvWX%$g5ZPf<_=WQzWyAF&X2 z(~wPK$ZOUVnOj7!z&pUS*&5c&ky-jk0&yh`avH4JSgm4L%=|ng#x!6n9x{h)NmHwV0=98DG;`7Z(uT4vgJhk#B=$T%=XezeJOVAdPB9K^y`Jfd!mekStb1B{ZX7y$hL*`8nP% z=ePOQZMSQy<-?3LNb#M5>xM*>s1u}j&sRQs+*`{cR~h6#XdAD;>}jzqmbu!O8n0`TTN*L`VBtiaoEGxE9CwU2 zLX=mrEY1wbWB_0fUL$`KGBW1?h4;F>AkwL7IO)U3n`Y_6#8B+PGO~K!&-Jr z_X}zMu>NshO5iL#fP2<0=tdMRd&@<(a9UV8&a&jf{N9d6x4`HpLY>%LwT?3*p=5t8P#d{YSlE;EU{ESblEk~}I_6nneevXcw7S#ORghwo zBkS@e7ZZh1b&WU2ysbG!s4G1gLwQ6@z&@4gLE-`@jaC!~Q^EQmMq6X|TVGyJ_4h-? z!GjOy;b2j@15Bw3rxHKe3QYZKZfLIqm_SfR22FzIZ>LJw?Ab9ZX3)g4XrKc#Hv~-j zJ>BmiA&+ysJ2tg8*fadh0hB!2?9ia|K=%reS~Cc4L#S^@&^Jf7;XA*+A;sS-0fL&w zYUHx+A5Gx8sLNe*)g^qb8+h0n{5_&>4MrfNJKcl0m zqSIy_bQ~uUIzUwpkPr(k>uhbRANWEmsgQjy^I)c&?Hky0>O+{C)lBt0`f-~Hy^xv2 zuP{Orc9g1-reeXkykeDcZpKG0pfAAL1Lr*(`+B`GG}_Oi3Kz{UzOQvLo7&h_P8cmt z&>8vs!+_v&OPl@GhRuX8?XzA%p?@wX5KwY*a+m};)d>{!3sEhWoTQv7&}NBgLRwVM zS|6Q1k-($l)AFWC#Sh!7)r2f6Y)Wmixx$+O)Qnpfv)(&HdDJp3gpF4#zWm_riNG=Vj zQ&~Pnlatdvm5*Z3R~O6CA|1nWHbqrVD^0~k%M!oOg!#}vlRVF1t#}QERUD!THtNTV zm9A35<%aylZ3==0XM=94ber-B2qbjM!Z)6w-!$bQk&*VqLq?AYouViQzn{k>6;fhs zhq3UDoEG&5*100G%OAiZyS=38@Fni6igXnEDXQ+my0w$_w9qT!Vi1Vh{BhtR+JJTJ z*1T!<6?Q}Mp5J)L%g`67+WGf%X{PuA#TSgk?I*tqePmUy{cc(foV~YiIqM_&6;(q=B%ktNai(%pgjOiTNH%b6Qht=~zB<9zk$!}?T8@lv-i|v!z0RA zzU)l@4lz5Y7_&K}Ua%heI9p8Vhl`xwYW|=9|8?;a2Jm;l;-K>ZTo|k6E^xH7o%-eZ zw~vtX0IVRwo*$+ifWDKvvJXHd5MDmCK?I$Ec!`bMd4R>E$?`XVbwyAf(@GPA8nJ{# zg@NiUm`?+CF2-$;mH~M!0B)z9F>tILg@95aV50kBryoi^-vvO9ehC9V0H**?0IYri zoCHn|7MZ{?hvz!Lap`mV?9w2JkK+0`OD2q)vhMoDndmv67De& z>U*uoT$)XqP0Bdj>Bx)r3o$y}zeE8cPY>*l)#NzC%K;o8KjuNKNKYYR&eoNqm!BUl zII4A!l@{Xg`#k|xs>y8_aC+Ric2vORR0J$imG>U-(*RG6u$OYnX-xn-^%vdJ4TyL9 zAy}N{{Pnk6=Tl(yOSktN)YcR@!6|15V3B@-JuS4`gZ?9UoYA!2zknYa8RDB?4|+yV zG>X*PJXzj4R7x|=b|BXEx~J91Gg=r9he(OTqq_Atd$ku`#ZS-81Y~J6x!TYB1tDyC z!Fs3jYLNc-fv8SBV`jURwL}Fa+b1Gm;-w}G=DL5XsH%SC&wI9Trz_{pD~x@+;9Av| zwAC3L{%$h9RG-eQd(tbD|2jY z5r=Wmt0M7rUfRGsF7EOY*V3u-h@5Halo4pW&?XR>+V^XX>5zh^#!uTY*VGd=eEo`t zKD8ZRg->UgViL8}Y$9K-GT%hc4|2&$fPpo2lqkqZ2uS0>WsjOm!`bMvPM z!NMGib@Nv{fcyS$aGVfaC%1{xL&vM09<%ngLk;iC^k#$8eay(tc!Z&ald(b4nM^*4 zwjm30@t)^^;<+@b7#rJzaSkK#{QkaQVUJe(+i;VC1@awl-ja}8xAs)H|UDEq4k8nV) zP&BIQk&xbVf}l_I(OQ?(+PJs&G4iuKEkw#%IO$0QOoi)LhI!Wa3lc4*=2+5vkI6Kt z>m|;C)$rYO?e_GZ_y%L!PCP!Zfhiblw{aGVV9(0} zi>F|<5O9}+L1h~P(0<6FstwZ)mUJ(@+S8LHAEhkSRvx@#7t9-gtT zy1Z$kDpwN{zU^Avr?P@cZ&PoGJIE?G+rB%b-tZN6nM%i^OP2z$-7Qn89SI!q)@wpJ(;Jl|8X-pr-y&RdJ^SeYP0ehxSnU=h3?Kj_$9p33KL)`SO6^ zu35X~2Se{C<6W#k){8}t(oa}@}6&C|Wd#Q_z1$J#Gm2tea{OdUGv~|@5y7f4H zbT*VVstca$FE(^s#+I7OZ0k1b4Ynu2WDn6LgUebb5_hV5hC(1(_y5-BmduNZ8UxiJ zgK_52Eaq=H`jDJA+tvfy?^#k#E>dOE4E{&mve4w!(AS}@6`MB(>5wKY31yYtivK8m znf%d9Lo!RPVD$){VZa`{FEsWWZNXql3LmIc^k}eV7Ah^NErlu~^zo7ja;DwG=Qn*a`UaecIx z>@kP2`wBzF_d=yNmRp-Zd#6>A>7BmJ$Coki*5Dd{2IfE2bY?bHg+M*+2$hqCg!Vs3 z$M%Hws(f$0l`nBG!zW~f)sq90<~~(OFT5Bx74?=+U@t&3i;K|Pw-A-kL=2ooLB{|TNvqjrx^Kcy#xiZX)7Yg^UjIGywRNquMp5CzvW)TAOH9O?PvzuV`cGwunGj}+YnQ0| z=c*t;Mw{>JQ($c+94qfIl>sT}U1?!)anCwAb8xXh#{6I$v9OvMuRL7zGfEZ*Rs$}Dsc4-^-`f@|^1xQ|xi zBb}SS)W>8SBOQD4(mb4Tw#;!a*|CU-ZK|%^)lb0B;a(Aco>YqOhCR=F4ql#LJ#6S` zEvp!@ZY3?8H!Aj30&&wRiyiyV6hMUKS1RTBr&$j)_3ty&pH$u-XntQz@*G>7%2hrW z_b$-IWV!-wbnER98L=@@Ro2oFX+IiisA*+k`)kv=YbzMec?FbdneBb#U`u^OBrbre zdlnaD`|ORo~B=ljyI??0|Dx3#SLjC#_0tCtXW z`lfP~ejlrmPV{VTnL2Ue+3={L{Z+~WoS3 zV@Cw=vXE@|e$w6x+rtV~hwW_u)-7!R`)b!==V^jpU|*4*$(%uuhDgLHe7Qd&E^^%p zBeD8;GTY_?RgH(nP{jxhd+{h1HAZfB&M;PLtOlz8;JQnse?p}wdSHJfEG*1m5-dEI z7n848E%)N3X1psO-;p!1kF6Sgxj=I!MLyxvDSs`C517WKZgp{8m*wkflfh_FoU45h z@D;dvOW7PR%GAU&@1qn>o}?9=HadE}eW>ipOq$)YY8*=LN;W_XrU#wPw79r@i%NMj zG1vDpM)i9Jsnw(MKJI9B|cu%VIk-IU^K*4ekDePdb8 zlT+KKiqHEKdip`FgQP=*JDbX1VY-WNNr#Bivjsa%vzp1BTd&-%5hPz1FNdBN`hdEz zb57`KkQBQfZQPyKOAAmB!S zL0;o`?^P0gPW<;K7iWusFdkp1iNq`x2#JJ?Nr-0O~uE2r2bH<^2DsZWmPMa{~0_Oq0Eo6u^4%rwD(%duQC{9rzBgHjcE( zAL&`Qjwb3KIS}ihU#@>P#!5@)$%{)~T0cGCsq=sR+vR+MNU|7sUZ^o=rW{+K!8O4jn)xQeel5 zfrcH1(?BUK8w5*3I{gJH0XzxdFyhp%TFz5|z3~6VJrc+PeyV`)LHmX#a6ACMYfS)k z3`JxBw*-d{FBIGXV57kS>_nCn46sxKuY}n1!yR`ZxP*Gx8OZ+uVk7Ldphh4rq`{Y> z=rl)}$V#!(GdiL?6_s-^kXX5TVW!Zq{R(w5EUIJbrW`23ih*DHsmT04ey69)ysbWq}vwCQMwae*f(LcIyYBCsetHaa#st z+hHnv^RY(P98&yoQa&cS*wU+3O^vI|0;wi&i^n)*y7Q#^rhwcgf9SS&4XR43E0P%A)GwPh&X&xSDGH4_xguo)-h6nt7!^Tm%2 z5NuX>P;^{wdJ=7tM_59nN-8Q_Lg7{m1>SX4|IJYt%-4;Rj+hI28HwwsM1~t%HW%lF z3pz2K;&t%xM_aWEyjqmM?|;{wULpQezGcqs?D7bUx+2WvIbcP05&)4GyQ(zest=a? zPr6n_CtHjF`vyVpOXO`pnB($3I^iVsSNPmNE5sQ#lntwzO>z-P`e_apo}23f=jU$5 zP)_Ja#@^W?5VjAkZMu;VL?JuU=T`k^b~e@(0~iVc!PnFl)FLAJu0O^egd|HyQepxI zZ6^1(b}EaXm`GV6$~+?PQk?BCKvo-B3h4}K&G;RsG+!L+kME4kA!*C11-3GjmA=A` zn`WoRkQL5w96^mTj2&+k^T3MF7~6eVYh{#*k!TWm@vRO2pFO{%xvE6)eb|%{nQIn zIMB>tya&`cdsf|cEoazZ;=3rX5V4V3G8cVE_#i=*LQy(1H5x%8-w zX`Di=ZMJQ$=mnB<0iuo1C9>AqwPh%q2|^*Sb{X4pDb!DL;2eHG{kRkOq&Saq=3NN` z>D-*XmjMabDU%Nz+PA@CiZiz{@1EPdh+TUhKl$yurqjFtw2b#QYxpde31`%w%?(ZM z4ex4O%JjA@h=`u|CCCQ+fQLKG4ac3(~5ve#_u6IO4oSfV_Iqnnf zxyD@za4j74FMt3;ep9@o_z8pSfIrHUcQtx}X_liE{Ol_X=ey`U9?~$LHLT5{{WA=ZRUU$Z zKOh>5CSJsjUxs5zL%=n$w*~82q1BcV5#>e^l^BeKFB-YcX5g#78AaT=? zz@IITD8>#QdD^SmVyNt)qwkpMUjhr}S}>^3T1|ATTT4~|Jlhr>DeK5LD~?Q444k3n z2YZh)Qp8b}tJLOY8@r)zy1Tqp6?M)(pESrZ%RFM!uNo*Iwoj~dXz5Vt`&%(V0CoXH zuxGQF0!?8c#a|QL6_UU21{45+ET9a^HxLCRB}MfvZu5b8~`^ z%yX}oD!D7Aj9>)!z}I&aSRe7yYES4i{mxp?Y}WaP}3a=_e@YH2hlps^Ox-tY05VziL0Je4W6l_{g!@R~cLM80V- zR<>(Cc&Ikm*Iy?vJpp7-BkL?e57Vb}y;mBkv(3`kAv~n+R83e zwaXNW$@0i@c~JudLf9Oq2?HsxAS%~eLwH>8io5%C7QZu&{_ZR6j@Y@cu->Gu$A-DM z>Ug!LxnVtd&uLolaAknI$#XjZ;{FNe3XjkFIkPcOl#$*9z=p+6GZ2nGdilv189Bz!$X zsU<~cRz+C)0!i%!E!OhlAhqI8AXVxt*ny3`__>R{7ODW^B@di^4wbV~0(MVYo%$l8 z?ur<_jf8i7cK$DogB9hQE)E5?FC5ve*ONB8CHKB`U}`G3 zSi`yBmzdz9acn|$<^{qyFfp{i*o9{zX_2yVu~EKV=0ZyIK*?2$Tw8ie{!D*6aneer zmzmhBC@nvY+FHGAqbxmD&>_n7FW*w%mL;etsD_Kan?vyDQvV4-uSaJopvg*y6pUTs8Ixo=Cm2LUW4ag3Q_;{yYgWN{Yd)4hup zsGp#z1YTj*#^H0#hg%aYDYKTx*=6h#9=GfNdDvv(y_hC>_t0kCzs3fXhQc z?(A)WmbE<7`Jw&$2IG;j3jK`0b=g!0Emu$RQ{QU*&;Pr5{{>DB)ZJqY`Ui+=pIEE% zpn&^t0e{CQ?*t-i?&0N7*vA?Z2&e@WfyK$L&W2S>&E!agN{>RnOYAmBwZJD3In2u2 zWFxIz11H&QarSo5*?-S0+yiw1G7Eota(mx>ZsR>ifn5tqK+fSF?H|}AD1gU=<3D1n z1s>l6;)J2JKPX5UV&nrc#9BZa5W(WfX64C2Yl>jyZfAY&R9M6j&LZ=ISd;10na&Kv zrAEhGUv7JfYEjpe;!Cjs*^)Q+L4yPNr@}yl@G(P(5D%6Y2CWi8aye3e10lpR(q9d?g z{qpbnC390#RxWJ6Fu)>vD%(RzL#gpZ{fL#0Dt)(mszM`! zWpn_RV@!RTD~eaQsF)K~?-@zU%3o$Yc&)Tv`h}8PT?gaTTXiPF3VfwRyL+K3JOl)B5U(%Ee>~w?WWfpDc)C<)I{h!K9g&o@ov(1 zAXXtYYmnz;{Du1LN|MT;e)!AbC9U4rA(>m{3Ugn;bNY{0dGFXExltfrtKak5ZPVj? z0>FXv>2xgYJMl{(+Xlp!9zW4?*6OXIgHVTecPW zrWFrQixlzAEGLmo9870ZLim4PII?2Pi5Am8w?FL z@7#aSLL2S0*Za;up-XE?DsgeG}Uu zvM*2pK0)RSbp|HhQI1qB5iT#Vt&rB<$VYjk`XpPebUZaMi+{K^`AFuBu`ROAB#rcB zEW+>eOESj~9GW045uipnK>@@ExPeV$s_nW1W3>MvffA`dlx*T7YjxTj;|gDH($Ym$ z6D`Wc^6`oaBecofPo{X(bk27gC@X!xI>{TUALZjBvSf_cy_aBP*@0?@?W`U)sL(}3 zdKTrp=f{!DrpE(aNX7JD#pJlXlW9v42?f zi0vBkUTyFBX+(?nCcJM!bl#2nf{IMYRuK~w9Z~8nO{Ni)%XLpb*z_dd@DF;}S?g(R zH%%3E#-tH8yJ&Ha5xz+6D#L4A8FuC!lCQqVn1Geh)DoJ)ro&I=jHH2qD-7qNNj!WGS-JdPea2#>mI~7rFpz z1o-L#LZCh#ylAwl-7vA{_|R)cZ#J&P8RJ@ERWRO-cOW+5v*bG-sAKBnO43XC=oB># zSD99Ii9ZwFW9Yt;b2Hfij+s`bo24CGRp_H@1@mgJ$$+VL-ocf(eniixvD(!eK;aTo zyWY!JVWlW5{U^~qep6NW%Ow7$#>q@lcFuUJTXY{))}qtTO0kv!ZBd8 zCy=hsr<*t`=YC%Ns zHRjzDXw|43X;iU3k8@=tJu1hVj;cfs;FJa(;+vYZmH^cDj9|H&ic|#Whj;s5_e`f% zxV{!szyy}6JK`lQ1R}Q+EsxRf=Lju_MybgVRO<$z3^foa4>HuWegS*dA#nVJeKV^J z)eb=R7hs_TCs~#jU@_#}{b^ola57p}YZ|@%rgtV{x}bH|uE>poH3r0wa@~EMt5{^& zM_G@VW-_Xwas{uSwxSDPPro@6B`y#^Jf2JUfV+l>HKfVX%}Y`8+5Juib(2mmIOhzz z*$d{;-VL%i5iR{fVU`^Mb& zkcVeHQp{ey76C_`(8p$zheNr>TH6M2_3)*1k1Jnc42fjt3_8sRp^mwgzK*EN5H>dF(gFFQ+X7kh5Lsz9aLU#Zto z3moV=@)cHICfHG|%So0mt2j3RR(NH+&{_Tg4}|CUkyMrj#>Qjy%S>&5PlRi6SbQ=| ztL)%3Z8Me2jj^%-47kE#!YFrOdqW%B{|w9O`!ezu*6T-*ay>=X}rV%*=VV z&*$@KA&wZcg5ox4TdbpSez%rB@fI(@vaqsv49NMOVcxB~whx2f@uOrtHs2+0*Ex^mtU#+5S(Irr;a^p3}Br_VFG>yb2>@3L)q za9;#k1Fv@xK4TDiRe}h_A3Wn`O>oG-%YioZo3uV`-h2m&g9^ex1UhbuNF|V&`5=R} zGp+CR4ueVc@`&6z?R`$wxgDAKDX}K*Om6?Q-o`7r2gK#1E>4=%Yd6g`Qzzs0tNR|q zmsVy(eIv^iCcju{uJ7zhx{>G6*&2{ zUErAcSVdLfa9nDD4|O8XAG@OV`m$Y%1S##)yu-`t6`4;H8DSb6-g=e`u>$Y6{L>Z*@L3Z3A%V2{=H=&CFv1C0d}v=J z^p9qT9>I{8J3tdzm(Ndd_ z1dst2XiZLSj)bI|+>Yl%?t%7EWjy*FD76D~E3N<(OvwaSK{_~;D1`7n2`t`dH6`gN==}$FkYxVl@7qLW;oEoAFPpV|5j=+;Wj;Dw0cK34=2Sr7r zH|@hbq4xbM-=tVJNu3ZY@L({Gbof;x@h7SLdZQ>_{HmNVNY4=f^d_3 z>hd+W(gV=HFzQG~C&8r~r(KI(NS&&R9Q5z^G5YNKG;`P3f=tPQ)stNB$+nHcLvid) za^c$IyWC@HwWD(Ig*mFeWnN*oZo~;X-Wy1%>u6OS=?}@0!#-Pfyw+*&>Rrm}SXMy8 zI@)Tx)Ei4{oPzK3S8U6o^D^#IfdoE7aO;Rss7s4WLGbAXYXUYjzzt8!*Au*y#n!kaF0pp*OMeixs@33Scy#G+61MshzGcya z8Dx^Ll;mjaORM*7$%Kz%`f;N^o>?!_N^(jX@~35V?XFWAS}c#c;D@Nvaa=JuZAD7$ zf)`R^311u#58z_DT>wFY7b`967$^0%axO}LeTh)ZBa(9*M77zKTSfN5N0Pvo zf=Mh43(j47J(vF;5_1EaO_~YGZFN?rNp}`w*SK6A23X17$5i&!*4N53WyH#Z)U>wr z#g7-?t4c*;84z}bde4{dOs^%6)RE==wnW8xjAjTN2~&REI=R0nciyGe@h^vIW7_KD zCG%O`yQ2z7R&6t4vEkPSuNXG8TdWdd+)?_0^7oECEy z$0ICDaEW97fVvC5wr8S`nyrDy)>7*8v#)0-Z@phXAh7x&&7#52{PS_|kf_=Mjb_u3 zV>V4Hrm@ZST~)3Gf@9h1j>mJ4GMt?}y89OEJajZ-|(+#FZ(C##sEXKna6fj)}jl&k!Nw*$sE%UjvOx+ z5H+yWr`CL|*ux$P2y>v=@loXb7+_Rkbfl3jv;kj|D|eO9k*~ka{ib4LbK)Q1VrPad2{w zWERsyB2-U>&++cWVHh4G{CJFxf|*+ih7ZApgZlz*$`uy0*n55pu=N#~nUOBM^dQoI z;^j|`eg(jki|foBJ@hJp@uh;o{q;lpGXxw>W9Epn=7nPT_Sa^N4;5;NCsOFoRcUG7 zzYG~Qdi>!B{@XQhJg<6Ad1ozz&u;z8007NLnc6Y(zJ0Or9hZ_^vy}6&y+XDA!+BHI ztCzlho02>rB3>l-bR^dJm?>-RxQf+&93ZOSTz|75WVlV)(jW;V91{LEmip@t^3 zqwHJ)U-?;HcJ?!bNN`)QPj1jBzJp<=-xyyd@&3pjU0X4mNG=%Yn3U%##^y04w)CrE z%Yr7k)4ilc{F^-qtAe=`J9mi{54_?Zhk}}N9E}pck|3q`U?KdAJ_X0bqH5igL>h$(VrDq1= zb%qbqj1&H~S7Gvp_p2t0(<2|5vZT*RailN_f&GFCA3KC0oOdjlFk~VuX@ZC)co0M@ z@FLDY;wVK~lj+qCP?;ejX|oGV^icJJ9T7zz;ANjc5-VDY>xmV%D#+(>AAZbXHhQ3lPq zt3apKp~{TNdnb(?b}!aw*0cDOJn5s{Xg^3Bl^k0${47#lQPkO$7fG&? zbn&)vdDBemuIKa2>X4q1?A+w%nzl?;`Aa!!F!sTyn=co%%^_VObrr0ocUpz&Cr{!> zLfxwgQ`Pt8R5Mw|_4l6?{4FYiPt=&ApJ#Wf)xi@$ZNB_HmX138*QhS(4_ajoPGqo@ zjoHgm_j!7Z#Cko*^?LB#ht}cp-8gv@>$Sh~zGodz*S41W%0Gkv`hK9%S9&BIFl^4>NLA?ncM}35X)k&N6BZ0jJEo_#>nJo zRH_FIhCCXH_ndAF^Ey4#Ic{Tj`i1Mhu&-&8+M}UX<%BnDJKZurUooD@wQYP>6P;;` z$IBimVo9&H&m2~?;mVS;^9ykEnZ-tuB&q@nPilZuS+dr?a63E0VXvi$?vxbZIqlR&x7cO;VI=nR67bBO>y5B|mN(BX> zy{SK9ZTbB6TNUTwF&D2)O9%V3_&>gn+If&irVHDG+^S|y%F3_N3?Gr5or=VtcLCXk zi761nfNB7;YwK9y#j6Aa6V)zagTBf0PxRAX)7%4KRf5Vh>TsGm>xb@0tAPW-`oy{Yb{!FgSG2=|?5yJ#A_RMzxSTHr z&W_k>hp4yc9WyaYZ|85@m2Dg29Fn=S`*5gSj{)t&ps`~^s(bA`iDuY5w`i0j-p_-G|r(Ts@@8Gc6a(}NN81=4YWFrV&2oDl=Q)%t{4I9t+?Vg9aeZgmu|k*=~_I_vSa zvct1bHG|;GX=#z+mz@~5s>L03L-otJHb-rPKO|T+dtG$Ej-sX#P5_f;1)5=ik|h-Y zj4%L38}+o%wLf2WC{;RdS3nmJh;yn3N2;<&t3TU4U{<%W$pJm#MfoRM+eKo7o7A)0 z7;3aR3O*P7-2cDL{8#q?esm0ARS^#X|HBpdmxlnQp&!$_ZvnOaTl$_ySSv zP{%>cIxK?r&YcH}4EL2ZnH3;)0VA-6g&hHOA;$sxu84RA;h@xbMiB$%AI^0?9Ff0a z*ihI32~WtQK&}L!XkeTHOop)55Re%lptfu5IfuFh82arB7Us$dT7VF{PX{>_RIL(m z9-vc^vgLgw6$5~^O{|rQ3=a-NyB$6Nq=7=DCU`pxEOdvJf60{`szF6N4<+0R#VKOW zBL{&-LTDZa=>v3V0_s%kblVOdexj-X;yd&Vi3!_-H}6B_G12xsw*aZNZ`bFr7!aMj zuyp%N8hu$Jv0eB!t|M`_=!qSLy`w;t;t!@}({ zLwMq3^l)Zk9nqE_nxkx{E%MVcpDoc-J6vgo#n$;5)ONEX=jtP*l$OJNBP1)3)7^y! z_yK|Q#rxnpY=8U!+w9p44Um_Ew z*7sknzeJ{bK(pU9wd)mz4V3UKyQm`FE3OX5GwNA&ZUiR9;;Nxp)bXWIL#(&-J-5}YS~3$`HIt-eyOgry{G0XN_?vp ze4R>VN*&U%qhW$cTd8lQDm~{6B$NA+l#Euw-Mvqh+@i=a?z~{>_u%klL=F+EF$3_2 zf~R#4ELjh5#Q7M zr2D5stL>Iwk`x^q+Lo_*95u2jh}vWSQoFmzCxzrsi;Mam8e!dUuOzNBaxYWN zB5jtU#5r)on{vG@C-3s-^6bf@l;>0m-e`pEm0j6?-8d$vUOQ)2m1OWVhipqB^JhNs z%J2#f;&>v~f2E7mAdf4|=qc72R+G@;r0O*4C}I->GEzv9RhEiUcHN2f?0QCD)v)5? zGJLq&iNWBNi=LI9YZjxX9#7rl&GSB|t#Jhkcs}Tl50QJll)U|Ym3oC?h{s@@PdiWK zTa~J`-nRDf#xAO=gEnX3Y@=-H8K0eQ7so;pGnp+6#>VzjS;n$tX}ylgqk=7Q4dXV| zZV~=-t)85gUz1GbOlZc}(|zq0wmQ}{*nRW;rjL9f z0S1ITV?e_a!H6-&(&h4Q*f1j4i%#_v`gOyLlq9mGH=P58B%z%-z2iGSPbybN^v%3{JYF731RX3Fi zU0JQH%VSTL-*l7Z;+&&>zxE{Zmuft8uf9?~V5D+b>LN&MUKPL+&M`;m3tw$ z^0X&j>w}R^n31EZjQI0z3@_>ef4aa&+?n&%Y+2^PBSnu0%Zm@V*qs-<>WbZ}zQ5`G zy^3ZyNp_womQbZ&vC^vQS=g5ExTaH9evV}yg45VK7wtzn!)B7c+SoM}= zHP5Ebz6g_mp$EIpq^hJPL1n>WpI1ypZVNWnI}Ht|%<)Fq?0A7N07B15=wddv4KdZJ;D`SA(?3 zv}bqu-ggU7=zTpkW^Oel>D=NlUR6%iLG&a!d<{C-X>@K5!IR zt(`yB>XL3DU6?3)zpF`6OI1LxpBG%npRBTVxh)S*N>Pd^{ zPV?(8+V9~rGaOH7FC1F{H$e;3S&<2;mLU^T&V*}TUo7-bNB|lrGJ>wyrB`SWGba#u zx?6ix<(jj5=bUg?+CHc3PuH97*f`7R31>S5J)R~xPtBcV*DmIe0Ahl0fS+q+v`vm0 z5cmQ(7iBn$q6N2-vau4CMwy3iKZXOd|44VhJl$EO(t%FKn#O?W!C-LP(cIC-=+8Gg zwX;YHWQ#SV3HR*2T=C)d!+@a~>=UQjs|n~v+jQm$rf0T^->x2%dtF~KbtHse28C*^m$2hR6uB>sa+i!okQ#@DEm<7e%^nM-C;lF5ZpM__v)9 z7J_XU5wbl!(B7Gd;=F+gyhK2~z`zE9z5(%-dFc@lIxzPAYY=ulJ9 z5WWSh(kb+C@NGf}c1HC!;KbKgK#4_MjtTM&a3*+ReDsb3psJJTD8xuaJfqYh{lg&B zt;vj_bC7HXh6Mz&PrNz-a_aOK%J(TL#zDq|54sLs6t38E7`z?@29OS{d$~Pj)qk;w z7FLm&BF_W{f6KGO2AG4?x5nAt!+C0>60X_D&Fn7u58_XYhC$qw@i%5?-JIm{*gu8` zr&iNBs`9 zg(XR(zXO)|xf;3+-DdhAOd8`!;%}RTbnyQMM~5Z?H`ywPcMr>->|l-cl|Z{42~BTm z(oJeq@i2L=Z7$t?*`QVIT5>@?06{akE$=%1jp-clW|h;>0w8Ex>u0>QFm+8-LoE44 z@5<$}B15gHM0sJKc{$nA+MzhhD%l;qo^k9wliAS7c?-zs+PNf!=2}O#q=Xg=KZ{<#JHJHSpOO;a}63qguM0s3EqtD*?8Qp)?yjGN&}Xe}K8O!R%oBM^!P z(wna7Amh{(e9>x0UVRLHI3gx}&znIt9^p(CM%M)&)11tG)E#?ydbwJvXyTL9M5&}} zOYz(uk_|i;Cv+*_X|07l$*o1{91rB!R>*Hxl9t=m1tY6GPqn4fRK zxn6~(z2mgAt@6J?2eG!witMjO`wLC${fi5!s*|KTjnwP21Gu>NBdMca*z&xQr|@_XN1UPttTWY2~LxkN4J?NSYC zE(x<#oyY@zL-~i7Gjco}y<80yR2~l}ZA$GoujMk?Ep82w86=m_P zWypFbMqf>gObp~Zk{AfFW~dhPqE~~o`4R|KMwUq^;#d+PlV42P3y8l=>=jSWHlQDP zwmF(`SJF%(@!Rl{R+*=nbT_5k=&VOnmdIQ4n%ud4$Mv)D=P zWYWp%3_02^;@dNjGBJ0!k>ko3cfooE=aC$3AFI(47FT+f2p9|y9N2U&aHmL1YN>S* ze#M|qLr^CjXV-94)G%;3+S2BEcMd)#ydAWp1DbvIAT3fk+|wSbv8#z^4cHc#&>pbp z3|o(H=RyEg6WdISV{gYNbNRG31JzgV0jrkRL*h)30l z%}j7caOsg(n2@J7e7KN8fT;y~5c95MR6tDmur^yo-3$xI^9JS#0gKeAIEMjelD)^# zm-1s8Z~T{pSFQfW7^XGQ42ved=A;!zlnuxnro9rIw~oPSFy%M(k2sHO<@D5ambseK zx?H`G6VSoa3wd9kek2X(6sRoDn~^cB76iioWjcUYe$;mK*`1+tQK7w_SnZzpR35W2<0ghBd63 zY6^ITjZJ=34v?-V%FOZ|4bx6?i~i1_eD|BKS>dVRiNlu z1_Z-FCxA!9de=)6DA*Nk6^!ACq9Xf&Ap;u+o3UdK{Y%967t95H0%E$+<{RQ48GkIm z&e(cQb(aD+2&hT_GB zE^h)v^*_=GS5R4Aj1FBuIP-4B$GV6tFQ8l-af)ab0TZWCmH-C)+{2nIu)cy1gM~1B z;CgHdwY+r2AG6-HLhd5kwc;Tb@UK+~$l!?&L^uS}@0j61aAKkcFLbb2SN%QyUcslr zt7`*vLHDP=4#I;G0u2$KJ(Di=^A>%QFPli*PW8104y4iumE>R-ITf(Kxf8KBroGOJ zwdn<0M;Mpa6yJShDZ-u6KgwR|gzw;DZIgY`RbVHoEzywbv>`O=bF0Jg`lVy^t* zCFf`lEAlD4>f+(P%(fVOy?EB>(XOC3N?P#qdkV$=|0k9edSn80V)v!rL2ds%qECwm z($EtFv+DLMY!PkG^P$#CrjTf9pX&G8QUSY%Q+~wC+90qengsaI8{yjQP|y!n&+F~k z?`AQ0*Y$gP>G`KJ@fx{ZadM-$x?xs1r^YmSHB&{{aQ_w`82vC+=zywd`m4q=UA_$OI=t_FH6 znF{w_8p)0r_%=di`LJKESfDYtwQ%rrMKXvM75n5bp6u(>7zm{RtGfy3?3B6VgSx}& z$v)kJfsm4hh)$Y8o<&#D$<)AO1|*?8MF)TX=7as#fUC1K9C@sz##Sj&#lm@TRFXEz zTE498G8v=$@*O#cvc#idtn#=POB6>nJ~9`LtAGQn?S((b9a8J|>Np zqJ!D&Jq4t~L7por64s%X-%ppvGiiU-*rlKC;h*f(Na1%%BZ)-L+O9oUk2AJ>F>Qyd zkm+BHTz)f@+|fVt=jyI6Ynu)T@~h!gW^ESIhTAlzszRSy+LY$((ueYq5O|B=Hwlq% zvL>8_r^QbMYNtI?bwzUuz*vFW(s?jUbYP;;inX1f4n_xz{LKQ|=c1CHs9cLC1kHfA zo|VJ0))2^MZWXfy*G$Ou?+euPpBk&qT>vnH3$Q`-I5cvl`ivY)cV90$spmI;tt;t- ze9X>o6!vOBQAp@<0e)31)m&U+z*gHKR(mdT>h!TmyM3X#ubyA9 z>@6KoyBD-iQl=w=!uGkY#oOkw)r_mJ0snbgz^I$3RQYoHidERHbZmVsk8N1-!u|># zoexTT1($LsNEw&H%JrT|Xvk`a4ADf|iQpbWT`eIcaF@zkv-zRmX#SSGvT<8E)&UoX z*{?F`mdshf*Q@I7@@a3zT64@jJ-HhST4-^s9U6*-dud}0GKWjv_t1pOoXgwuxhCMT zz8P42N|-GV{-^0b^Bf+}>i`85lz`q#x|CQ*T4&^`s($_6(#KNt;TMVxsn%MYi;JP_4Ke@qcvIRbuOR9c01RylNE}d+}$l z*4>cn+@a#CHV&E1WcS+hF5f!I=HFkp@Kxp~$~RAama1Sw>iwGoK5`Bqp22#z1$h5A zOGq>kz9GCDVXUknbyV(i|ACc^3zy3sURrMbO>qDFOm2~^lY>tu14f>(n6L&#r)lB$ zXP$kbJJRfJFchy?o|nN{EYT<{vqf&G*gASmPq;6Kk`deXS5A(j&r_rCM##A_2qYGL zM_-sY&?|y@`kQ3F5p)e_P+-D8Tl|=#$8(mIsh+xY+%BLm+2EqE`TKQgJFKzsXIi*F z0k41d9xlq?QuI{w6yc85r#?poQC>4^=msY6EFcADGM@Q!-1LX#BgoRm@D^S(#vf<+ zZ|~d4kzh#C7#;0Rfo{VY5ctcsNWuNbA`&S zjJ(@x{CS}U@gr6rSa($z!!>pZ|0Rlp^TKs(5e!6>|LIS>R6v^o=<*(Vc_=aK5H#7^ zt@XR&6FdS+Ks*<7{d3!E-qjFKUmk&QJ+gFnNx}kOpu$-sXZ=w4R@qTG^~Ic~x3;ZW z!p)*9UN(=W?6hksHO5af%&r*)=GqS37`Uc1A`q7m@t3G!fknSd21UX+N2kdlV31u~ zTJ>V9who@7Dmk1i5LM<})ObrW-l;Y=ch!S1sPVCGiZm{?*!i{)C#!d?RC&cFOr_xU z*Mg9mJVBi$@9~VcqaT^?2qj1a-!!=MAOT!~D-eKW)q|}5bI^oiW=d$sK;I%Q1uM`^ zJEXb!UgT>iy8TmlU_p9tCu|yw4=`b0GyiOp$=T!S)Lzs&;S^?&PZ>Vu^F}$VgSm4; z{b1MiuX>$nic85KhTQ+g?7oq)`Xq`ZFD*f7tksC1Ft4O#jV*d^q1`RI+z>I5p#-)o zaJb)?wGA(h74wb$6}}e!%`v=ROxq>IsnPVPJK^ly8l|9jT*hwC@Lf~iy(d2z<;Y<( zr7eMRt{>N0E51iK%OMSP<-ALeL??+`$Gq`wPvXf_PW9aS+bgR0$MZX~5Dqf}DD{VY z2K}4h$8?v`&P-?+sXub)m&m^2_Ej)U&~Qd__bnm<+y`+u;6d!bFa;CoA+FK_YV32U z!$Tkg6^9*({z7LH7CKz#bW_@|>Ak3(WbdzY(wefGZrryv*K@ajGOpRh+FguwlBYf8=))110l}gUwdTus3uc+nQq#(=pqjNfqm8Q|L#U6#7JRRM1J&wjB-+a|S4Gm^m z_AgT!i)vQ?T$~;U`2k`(Mu-tCIttg7V?Z7(32^TaBY#xgUji1_X(j8WfdqKmBN-GJ z{!tp(6|yGgrUwL%Fy>yvR>`Z0R&}JvK9iG$b$?^J>gpB+Od`sko_$^LnL2Mxt=B81 z+#ZPUw4>{O-Sjk%hbv{F0JvsN(jEfIlyv>VT(=mDAq67@|`zj+OqpV=>d(C?^&UY4&0&}XXTY`+W<#6sD!RhHW zPNNZzdZjYj2Uz9_ik>E|<&o0$ms*c})Oh-*&@IXYd^Zw&-WSF2?1o9VeO#kHH*>-5{MLZB-o}Bp)!Ucv7c(Jpu@8QleRo1JH z^0Zf7s^~@Q1hUr2#nMX$9_(aF-sjMfe6E$GUsoXH$G_*#jWhf|-vZ6HAtn_gkPuBI z6Mt;}(-b2EkUjn}j=71Z#4$)a%T3bo0@DwXS`2Z0D?s+a44CgS3s@VajF|L?}T z2DuJ|;egt55P|_N1*FWGkYN~l^$^f}jATfKgIz~$KV-_cJHkCfbzc+^IKmkS#-Vn< zA$4nJsjGk-VT19yy>3Q`xGq%-*YvAYEhY(0asfFm<1I`@4HCe^1^cH!2L88AyfA$0 z91J9#K!^{>Rr73mlh1c}EXmCyKaH;^PSEP}UwMEb1KwL;1Y zfVx2Ni$q9apu~)d6yi3alubt?Z$T>{dU`l268=NeO5n609e9vVm72RvU&TuTwlE5? zg+LX&V~)Wwq(K$_gjaU8jAT}^^0-;-v2Utc5iAGNDAcssM2WZ_5#O?GnWnaeeCo%h zN!b$CcI7U+n@V_XEM6SsFh)Uz!HhuK9}sL1`IN_XVqkoKRfpZIHutpU(A4nX7=&d$55F2&d|45R@Fr27X=VnWD`!9E!t+-t`*MbH z&u;@=6rPh7b8UF-vY00B;u1Ob3P5_bipB%dYZZQ=6i(rxHhI7<626Ryw6#hZ3@RBw zqHfRUsU;87=O%||hzGJN+0G~t!5DLfg0>1E*q|%oM@XIjhTQ7J6vkHxh)}CS;HKXJ z2>|HA{N7tcsNx3`f8jh}fX0g;Iv{M~LsIn$XcNWt^l-S{hn&$075Rsp-pmM^Zug4#6xX*y20??KrKoN?IN`Gu=ty|Kk?qjBk(RUB?nMGgIgUEIPS z8auC7vbmBhtP336>b3i0ElkxQb+Kn46}X}UeuLYKg9dMFP6VF60*x{9jpA>N*_E@9DtEPYMVxy75LL05*ixCi!qf?nLzd<&7Oyn z)|=>i&&7!%ExT-bd4+3I$KtZlM1y(Hih2*Lt8H|0h>L)?HGghEEaA0Bs(a(^8>=c}fv&`^BtlZ3Y#+t+H0L>F&~(DRmtynjI6P z3)PnLDkaYQ@obQS`OzU)GO4P_*@yr;?9C!l~2sD(D}ox}1fFmQJ6Tjh%lY^38vM zpw5LM{zkZ^>i|Ib;9&`-^&~x$5NgYRO94O*BT`M@wT0%rlMl+s8=dx&#OJ_T12bHK! z#O05=TBUhlt!)yoK0Q2kJagI5xIMWwugsH>Xl(Q5tLU1^!0IXWeD_evKhZ0KoAWPA zPv^Y-CuVT-CY`-n>u$g&?B+_;>Tm1>4nky$gjPBB`Ot@|Hy}^b{4nd3RAe@+wl_-i zbIptqzI@j)t6E8J`1`Q=iL%HllZzog5QIOE@!x0oB5#=?YZ$jALKbZa!=hdsb-!L&)7w+0#h|F-pypt23y|1|bc0Dr`nNCdAV zaKqXsK+60CYU~-2PaKKi6Smjg`Y{h@+wKS*xxwzw;eblagUdpHK?wE%1|(XlfVf`= zO6hlj4jFul7ty$9nApOOQG%$R0T7CSPh{S51v=+JwH^xR3Bb_gUjo+v(jr~QQ9=NK=Wyhj@N2>{r>ZvWuk5yG|4w$)LtdTpBnDQLye};&S z9sLaeZNWtA-AE^83;H|sFE{-J1^(J<8I9SSPizLc@U4e?&FhHN0?yp&s-8R%<4QMgsqe+Q$wtEg-^e(PyqLYc zHAD67l1$LCx4iRY$C8H953toxw3uPFF;2zkV(;|c6RkJm?-g2-%}ldbxOy+jANg!A zDJ^j1J*CZV58<0>B7ZUW`4-{O4_>taSCWtT*fylwH_d%qKE1V9XK?CMSBM8W^g@zp zuGEWmt}RW!3X~;uFmK+20k*3UJ#<-y@bY)SJ`%G&odcx{AUrZ*K)oJu4B+_)k{!L8 zn(L%~@ZP|?NI;Oo(6Ei|jF}UpIuHR21+70fZ&^$%(e6|0>wcYdElU@O1cuWG$VJqp ztn%74-|`b3kH;Gdz!ZD^jj32s$tn1(eR_xV;>f&*y;GW#oEsn#5=!phe2^ z9n6mM4>lhVB3T2@y{=?5i{@mz-}~uR{}{^Xw^knEZ`0E%LheS?#bO6*2=Qip*zX6& z`sd{t%`E50y{%JJts7=(Ft(_&+}g)eQMyMX(Ce&={g|4kdRupON22^O1C31A*@06o zit0z$`w{pjHY@JJ@%mBoBt^C)of>$qGtZ zI$T>PS<8CrmN&O!X&{eRWE4{9VI3J}(mGn<;bgmT(znnwAihX9U{>Q%Q_%Z`MxwVN zKUUFKH!LvJ$G|sQc5>H;4&~v9*LH56BrfB+r~9)U{Nq@#2ZR$dYLfKhsy{mJIZ|gx z?lK_p#4Wh^jGYx%Hv9Ay&l;917)?-|K5cicBUf}W=c`>l-X<)@PJ|>FD_%nurjg9d zOhxPZM`}A^-(J&HH%sQ6iW8qKj(NBDafj;1xyA0D3*G95gpQD;=2X;l=Ay86WzG+U zB^JM=w8!(dvn_GWJg4Cq0Qe{C=(u?p3Kh zSBq7I`+}V{RB_=Hi3Z?He+Ry_pUhrfN=YX*yySa5iq8AbbW|EQ-2L-0yiap`B%$I4H<{GJxYZo^hLY#p^IQ7v@+ zXh)FKmr3`x6+H#G#z)UO-pbt^Tj-v3h!wk1^=7o`dJ?5Rqrtd4%>}3OV(65*UUrg? zGj(Xbh?UeKlmHjQh!7F}VFUaRX8=Q{M^|FziECGNXp+VVbaj{GtF9a%|{ zjH#De&s_(fPT9B09GFXOM|273zF1xw?|=pm>DS|JPj?O=)Wfu>JfI%td(?SSENHlD zQM`(gQ^9Dm$8jf`QD@p-Ga#P|2eb&_0-R#po;sxG)}XJU(1ig0+9) zEh4(sT2z=GomqdWw5JT4Z@2d2%yQ6{u8LJPe|qt10_KslV%?0e>X%89bFAfyn0uCc z<=Ey4x$du`94H)TufG4~0RPMEW>(D#W^|p}8Qi9y)BpsCh*kJ?ABIZA=i8X*;D?1w z0R2}`L-GIM2d=ALAqjGHLXzpw4%b`}c~eA5g-Es>12uc(HA=@^0p8KgQ9i*sNdOT2 z$Xdu~qkU;W(BS+7P?l1_oMC~@VT|q}F!;zs2+7e-Hz-?B3t(;Q$AU!suN;B%KtZ5) zTZh&KqT%~Gv<_sdHlTGwNc0{Eb|1buyxYVRgM~2+2?%Bns`VP|Xn9`&B?+Yd`AgSb zw7icv0Z`sYRaV!_`*l#5fMacV19a@h}S;+OTRZ%PlMsix0va3I&*+S4C?&1jKqUH7y!HAw@A6!*Qm}5W7harQ# zpI7$2^<3MP-<@gnlF>ie#Mz))JeA(uBB^Vay%j+cn%aH=5T= z=oVe&KFmrnnpr#&D%zke*3s$TmXp@I^81NP?wOP7fgaxNJv+(dG&1yb1qp*Fa%!vv z@at-+ikF{F)sT>iddY&|)w%hRuIo)R`V@)Yij}lS4Vl!i+HcmUNR}>f4Y-C9zn2rG zJ7^*ZJ}#DRW@-^+d{f_uc`OR{4hH%3eqI}{DC+8*FSO1}7aujO?sq6TK*|i__DN2h z7~eU*x9CFB*Q7?>_p`IIyTTTr18t3~r{n6yEFft0#*1}@iSbXH-u04u)EhGWn`L!N z^mS@?Z7I*hOG;J0&(;1`>9ZY^+xw+1;*4UW3kI*qW8dW~HHbV-5>swlNbV=e&n!z# z_>EnYl?6Kg{;j(|U8*e4QG4pCRTC`~!Y9YPsMZl~M7AN@M?E!P@;w%jBxW6>+s9-D z5~=6>9{yFAh$8CrAxuXy!yAI1V7Z~{uCNZ~-vdYs`0;B!gxD7X;2jksM0mtQ+>gY1 zTY16ff{$xaZ<0_}>TuoEv)6EpR@8;p(@_y|mmSk?WB0l`JuCM&#&5yzx@9)mM_3l^ z*R!y7ek;*+`=EOs52Z-_^w-Qum1*yxH9M6zE8LT&`GcJkE#~!DNnz4J4HV>Vh2&6GT5Ex>==RFUBE{xmZ8aS{s#qn?uA)*x|&Jf z)tWgy@4JpOuF2HzX-Ul^1IPL}rcN5kuk{0$&|9=&D9;)RiV>iGA`u`AM5q+OT|(6# z;O5cg$07mduVR}UId|})z@oEha%oh=__+k$IEEk9dvS@Ci={~;KIZbn?BMan2Z??A z-txarwkstxU0Yy{k5I!Y=N|KzAIwga9c!@|x73i$@j5Ni(OKrK9JTCN@_;3o@heLW zr(PCP@P|nW&2S?hDx?cGQvS%yX5^Z{eM2|ejPT|dK(184^6`<-U0VuCg`|uUb^Ty2 z19FwU!I5z)OB3Z#!*6P*Y8(2?qz{NT6ET?4HeI>9ZT<`4_KBX-ZyWjx=bxnlYcRty zHm|2epi;XkP6Co0l^!7(Eq{z*i^Q&eaaBOhiB5FRN)_k@{TSH%PjrsKAozFO=Ji#Z zG%L_V2(q+wd)1?)QxvA!`w<-c}f-mdk_$_kQcea^M^LuiIaw zSv@iUgm`2v1M&h3@G9T|R63YhH__{B!FWRU9Od;RWIfa%BZ+E+q6ejL#2^Fyj!sjH zE?g6H#vcP#6M@MC>5dg(>FDt{TE+c418-po5(20K0D5l3y zqHtcY>D%8!l#M{&Q~yMg0(6HN1n&s-0!HUCQa?BU^9q3ZcH@H+0%UJONnhdjbLY(; zp~ofy^bX6u`yABLnHjsd86tO0_nZjo3A{u@zDJ=*U@z#b$KF1U+At|*y361-K=k?bkPaiG)joJGpdhB<~vU`Qy|4Hq6Kj)M65S;c$Gldh)v(kFtjJA@QXREAa^xG)RvrXl9YTQ>8XZd z^{KeLV=>fA86wF>>Y@j#OoA&5(_1+xI+w*NOb)i4cq{YPg0{~-z3yVPVG-$pL+4~- z{&(`JHI+{e?qtW4sRimi5;VVx{CgMP#xA{V%@E8usS&<(d!n?`x6W|KsRBKjWl|&C z=MT})?%t3xG&VQN@_eqUSZrH$zOQpBB3Wq#l9jts+z5g5ow+o}$)-g2J`gaElj^y6 zwL84f^4a0bNCo^~65@NpAovck>!1PuHM+baqpUf9Nm1k!j8(&fK_OLVc;terhUKG<>bt0tWR}q z{y58cR6tk!tyqwX6ieFrvLj2(PD+2lh2Jo5B+$$wiIn=?zjv_M;g~i~J;i1!%41s6 zDo4E_{>>tfPg!~P%>csAO1TbQp+GAjHbv2*`o#DVs1gv1mRj`0luf87ho~%b@xlWZ z1lmHBRGX_=gXm#$<`v^OohC&a@u6E?g&BA@ZH~GI=2~oIl9*juo*Do^JKs+*7c(-+aURrQXwGM2Qg#h}nh&!>7) zCT7Li6V>ef!ge!*|R1eyP%91ieF(o{%bhod@5*daub`P9K@FW0OX)?$&cv0gKjQMRFdC1P-4gr36WDR}JnLtLO1Ea`MbMebLP{RJ(FY z!eqsMqV+(ya_OPfq2Y2uZq7IaG=M{g$IEX2kJ8=K0bS%1DPg*$x?{1dP4cde#~gX? z8QAd?w$b=&X6&UkbgGZISa80NaC}!Y|I))cYUzTU;e(FWL4?Jp-E4k+?hPRq_qLVw zHQZMW6Iw99NcgV<+knY{5E}l?>0hUtp{aCmBM?YD{q5@7nmoS{SAoIGJkClv$0lxf zOFM)Vdf-yfOj{nVp}Kb5q~MW9|L7xJSFvt(f1LkyE0Rz!zmBY0ZMZS|y%lY`2@Qd? zbi8qmCM$D|Dp905W14U^q4mm%;_gq1qp{+11D-0I-h#^lRt4#S2yYPf4=ru`3_{rhEZz$d8FJAEA-{GClMEWi1-q-%QyUp+k^$qQbEGCLDm0e%p4u z_sU;|f=M4A)gkC6R;+1Og(-#gQ$!b;Xg7-#*%1c- zdHW@@2e2IK8T`-4egjem5xoNV3h)W0U?7f1G54?pl)2v+g@_M-DdnSVxD8s~kIgnv z`@0oTBEZk4vq)AQgMkD(VDlN)6@n6==#N&{5kF$LxiX^92+qryL(E&GQixDmxCJah zBKAZgTnPO(NF&?|uDcC2edLb7C`xYw5(2m+h~xku?sxyvJeCNofbDk>>KinU0mj^U z5L?tI-sHV=J49jgIw1}!`EdM0FOl;7H%KxF^X@+M`lSLWFfu&G?9;`Fi)<1G%pu4G zNqXl%DSz)@z!Lw19-?~50}pf%cD-{Z8+0)9w9Q!-cCM>v89O@DIIOkQwCLpedS6`C zK&*D6cSfA2SchR#22TFatk{Vq)0?hgVcDjc83SyMq{7p(?(Oo&K=ZSR+f-*MCT=fe z)br$3n!hI6JyW84euZgWPns8;g3zlci8~Z(5E#m@O+{|~Cv7g#ABPb7=>r$$d&lp} z&$e6jyrPZ9XKTq%vos8dNta}JU;REVC+K&|kKmd`_TkKN#E(-yO>v8UHSTS^uIQy> zGnl*<>&;Q}+m~^c?up!0zk;T8{iWrj%h;*!df1+@qh42Oe(AlJgz7)XIA$6-t-g`v z+1iW0A}-MtVn7Zxu!Q`3PtN3cTTPaw2xq@!)|3#57WAp%4OPiL9j7>}da-{Nae=5D zs#hc0fl3Gc6vTs739R*^SHD!oJoq1F{U74gDq6zu^!ul-4=&NKb$x&#zC&YwAj+jE z2<=D!!X0D~AgaRc-oXpN=x6joJ7fFg2FF%*IcDodxlc+=#7P+R<4t_D21l;tTNu8{ z^l;W5hJvoWD2AC{d~E4xjdG@!FBSoQpF|Uvesr;Oe{@|HxX3xAgP;4{Z+NT#J^XAe7Fc1w&#*`=V z;x+ssY1;h@(@UA=UqiWq8_ZG$l3V37@;;m{ko9E@zMI;5SMPLx@|x9}Uj5&g9bSU+ zM<#cqywAhg8d|#Y+s6gIiBHN|nm*vkXP6;XA@c&y4y6&~-m$#f zk36Y_KmALV0lu_%Bq{Z~7eSqd?_sp06 z#>5PYHGKj6aRS1I)AXJgm*?o_W+e{`NZa|k3UnN{bcr2qmG^tn zx38qRq#;&kbaMw7|P@c!+usp1#j&qtCeV{hW+c$(ek5O=T|l!6`(sePrnI;{+XQ>tFgmA5ripCu zuCz0=4KJVG7}TaWACXdpHA?Rkba5%JC4VMvQ18%Fg2KkX?V0GmOfH6gWJ^jASV7|Y z)_`2#$R~#g*3@uZl)fkG78ywm-QH^==j@vNT1wpi237Y&SN@{OJ={fUew(PE`#<*j z^_>o<4Jq?astOf9M(J>yfDQLke0Y8MlPY2sf0)-`n2hkk_Ym@^8@teWc>fc54P zkRMmr*bQP`m@FXKjJ*G9Xql17{r|(zf_d6dBt~%UXln=<+Cv9G^)u`WXCR2*3>%=K zIAj3m)|2Q!FN5FjzlC^2wb^`yhzoY2)1os)Q~>X zcO4S`ESf0#9T8vN!i#ij|JfztKg;M)WnY)kLF}~!N}eME8V<}QN{CMi(Sm#cMB+#s zkB02ZCjtX_p+?V_u)9_O1J}mOm#~c=Wvas{?;-Mq?O=D6Al|22-ZAakVH$8GZdXd} zm-`50m{-w5wgQPD|XL z{{73+^Ps$EtjE3DX*2iwC{@BZ+eptYWhgTC@~aI041p-B=v`pIvU2_(%H9MXs{Q{1 z9@=-ZMaZQh6$z2Oo271+T!zYaqX;28W6AB_%C60B5I4)nsH|hXSC;HoW9&-^*~z}u z^ZA}px7+Xc`#;ZfUS4x%&YYQZ%y2&2d+A*mPj<-8e`hw>{#O1EOBdfI$;yi4x6?}j zAkULzoFPgOX=FRwmdE`L=H`K64A4+ly%-O{zo;hyPg+FzrF@XS1GC}sAIDnc?J>ZZoG3($i>8y~uDAiX&C@bjo>;UOkzoKlK z?y9x80-)+7)JJ(9)Aq>r86TkNnj}eR`scdN*2xfi}wi62bRgSTwMp% zH!C*o-Ur&PyQPjw=c`{z9zK~C9N;uF(;##;rdB1uQLl?AQn~ewrmGmMHxH?DF4N&{LeVF1x zX8#a!Y-R*z1Q(9zSwtQ# zA9wM=MFtFKSubvcJ_~f7;iB_(4Bv-2av2|XVLvr+KlIl~TT#=&DbIDkVzxx;-|nnrfbl&bl_LU(k{s&~C|b9ADwz zU&Fnee924gP;|1SdGwR5f+u3%T-9N3tC(h&9~lEgfRXE}l`dg=zJUlzBKeP|Motq)>=)EnzL|GtMzHobr3G z?3Hc-GXin3h4=m?*DGpP?G8oRaaVQM4n_2KXsIPWHi^hBkp7t4sqkq{Hj^yB$96Oa zqHsLc$!GLu*ebyXB2y@dO7OvE+srb6uz>|qD%grLCoFx!A-U&x++1|Ar_G{sr{A)5 z>@#qm_=(`z*%eqsep`6T#>wrTbwPV%hm62@?NU*+zJr~%m2cEUcN*ZuEs_jKB!4qb z+8!QTe{u_JMP#Jcg+1)u?2^wtJku+=N`4|(G#uYm^Vmp7x2VFn>{2ePYUPuDM|2YO zqye%7bYGIC`8Oq4|3jTye|lY*Z(3BpJFS2_^;64nvEM*H(PGO^Yx2YT%hE5($Bt83 zb(pEtfm^kG<2ssSr1Muo z?5Xt|A+C5U{*lcua9GOmn5*IrBGs9bR*Ew;E-(jhkzSvbsK{h`RRQojUDX(FTW41K zD|c#~MJWTY>eugVVEXobp?cnM38fHC-x2#6#2Eg)9|M!vH$!-O(GCBFxNjQ&INfrT z8>|o3(H)TZN4IoWDICnQ;SoK@z+9+6#*c>iEYqg}*v=Tsjgf9Ch2l4+wFkkNArk(D zfy{L^MMRRbx0)m%HS|x%ni^J(6dJ^N81Dl-c__b`OgBhs{aAVduz<+_ z6$b6=MSJbsv7J8r0J=wbJj@r%_bH}xV-bO1e3*_-D4GH=A3Tro?T7k=EkZ))j(F|{ zMBX|!Z@K29o%plA=%_hGb7%jy^o(N4ZKn^=e9_yqe!R zSge#}70mJnm>M=MA6j8GKVHXX>HqYjI@!E1eZ;mAoH!4-hU=Et-Snssff>oWiABfs zzz%y8M zgZI=KC2b|!L!00_y!k07hQw=f-V0)U!ajh+JLS*#`_^~~A&jDcFpF@d5{mx=I?NZD zuPVWZ^#kM{WgzDw46uD*h50mToe?;POXS0OQY)jIAF9@cm~drLh+?#Qe?_^a=wcSs zVo}gCEY$K}jAiDu5{%8zB`n8@*%|XJC~h0;aT?E}xe&$0B`6OwWX!bmLL|VGEVPd^ zwtX;2JFR^=?*5{kV+}~s@LaKoek2zgWAyZIJCi4h`{axkD&{mR?>iRd-gK^$N{Z}t zJR0h_{BWew&VBa4uBnOA25VhU{8DOLOGfHc#>5`pNeX$?_I9$B(@ab5$F*+aP~4(q zuOjg8R?kP;A^zROPCU2BwOZ?LIAy<<8nLF{X;CI1;ITH8>lGsco?%Z1nW5W}C5Ccf z6J^nTbl}q^Dpl;w+PNvMJm|}#i>B}~Axzd6b9ew!_7@#Buwqq#;Vsf=folu`g`p7( zqcrd&;PQ|7i8!cYJ|KnWl#EB-$K7-$iLp{K7mUU$uP0fNj|5AJQChU@9Q)Pc(mxc+ zm&xuZ3e}lv8BDVgY_%@2h8TzurH{J8E$y zy(5hhX)35?X<=pz9Ksd0rxeVOw-yD3+D7MyP^(EtgG|lpM8gep@%c$niQ9tquAMhs;~1wpboOh2 z?@tX&>U%K<9~9L9v%EQp-_+FXQY_2XimPvDrY$)5N&E`I8CRO-wbUYCWh3%jw^ikJ z(5CPBbL*c!k|BU#06U=(I=TVpOr3B}T~DfeCjcByl2V8_ zFEwj8x;fA-HX~F&?r~~t zQOIAsdel1uCxV;FzH>FXk_}39X*`S(30QCRwKA4{*hP<)@QJK1c_=2p^a5DxyJfQ% zj*Q1LRY#QHb-uc1Q}sw;0IRk9(g1gazASe$fb3#yotspe;Isj$IkK>WtIQUmfWp!AbxQEh&XgETQsua7<5ttFI+;5j%%H^!|AWh%8-V6X; zTO}Nz>6FmcuW-6ADF6gBv>CeS|DNGv6MjrB2d5oLR8~QIL1+e$g%aFgksAlxa36TU zA5Uk%1Nx0o-QOSLHB|1f-Iouy^TEc=c+}0t4g)822IBE)^aX-p5fu9Xq`A7TmxD>} z(1mv)69Dlz*vZrak5j=W>hSvW$nO$fk7fe!toB_{>{UWpgy{xx;gi6k127!_OAJ2` z?T0hITlWg{oj`y)XvClU@AG@{rhg6a%?a#aa1OA5i)Ylh5&#E)#pXZXAjA0YOd~;! z_p58Fv_#nO9OLTg>(2MOG9{OUs zFmMq?1^z}ZPCz)vD}kmRFz4XH3oNtqthjp*BVce>2_BHF7Y~HpW?wzJpfJ6^`%v*j zPZ3_y$Tyh%Bc1RU+L+Y9G{@t= zty5G}8`hUQlH4G2vnaC2PVY zKM@_)iWJW~b0Zo0k}cA;^(V)@ceWLO?DQI$;~A6N=0D;$fNyvReD+D}#aN41xdmJ! zvr?b9dW%Lrt!YnbCnvc8Z+J3W?)5PF{$fyH-c<5^yPlVZI{6l(LD^I)TP>kQVk80d z{e#1L?o54J^5*v*m$906_u5xj8IU)2>vBd*45!KY1y&?;6QO!@tJ*Ho_?1BdMc~ca>C#2#;sarc zqIP((7Fl!mK_}EjT@U5Blq$qIcmQy2pdCOg|H{Q?(7uW&alyC_^j{2cdH~^K_TYt+}Qnsb&Pnr|qRoz>b? zAY;arKI<*)8Ap(@dha#-KF$y>P*@jF1fmr@?E*RYHxSM3B1VH_!9_r5bj_)v^}1& zEIxrgFozii4vl58FbIc3)j8HThxg{Fu&>5i*?CU}w_kVqe?)*nNjyAq4(tFuCI#?ai-cOO` zJ;Z9Q_qh5r#oS5yNHV88MwIIdHx=9>&i)Hm_2yTb_|_>+KTogIe=X!HdFF)ZT1 z97k)q;w=4H5Sxc3rM5mEOQY_fM_BCUgRlwgHqf+(6?EO{$YL150lc5 zKVH@oZOw>Q=wAJC`SCj&ou)@GTA{%YbzTCn(BeTj=HjjQX6-dEJ-F87SEN2fiRiQ) zOCjGN2?yP($mh>DkEDtIIuY&Fl_4vzeStGuKhqBm?u4xvX=_VwLF7g_$k>Up}t+2?xzWRX`56AsxI^lv5W46j;?JGr+AcsK%&=8GT zg2rtMY`H4+U*^Q5v;66!RWBwWO;IS&ckB|o2GFzT zP@RI799GJ9GQu2k*85=V%R;qG3mZ-u9Zm_aUER^Hmi;RB?_<5}|7x!?AF1w68jzKn z&fyU`^e|D@G)>Ybh^0zaFnuvvltap*)2`3N|7B**3RT6cEh5U+AeKdaDcjFWwX0gR zV;$4PT4XhNWvo%pKQ&HH(adds+59U0g_#9jSJgQrzH?k{m#7YNx;78KGMzX0ew`cn zM+euzkk>M1iCwAlB3sJ(eXl1B^#!pxt;{Xu$OdXYYR=uQDvUI0{5RaX1HS?|6g@>0 zY>=PDD{W#^Qn`!Uufp)-#*196jF`zl*%$m*`*y}-LQsHjL=t%5EC|8@N-#724M}AS zWdtquxG#)-=or%{i}Z-I4OgdilHzCs!vsx^u(1z4L}$VQ>1nmS06*ix;Ah?GMz)dW zb+rM_&o3v~8Wrhk+xiYk;$@UiIpaagbL4(hwryIdibRFD`0t8m#tMvz5^XC>bN`?z zyJmETggayeDMrciDvEpC8Ac^n{SEWsoo}d*UTUPYw7#&^ zc*+GDED~*ga}(Z$6%X5Z@NzwVi@|H!;R)+ziPXOrKI1xKH?$eV%)MD8HL6L&7t$+<6VIHb`2_VoViRcqs76@Ia#{`(1p{hG{iF~miZ z_t=NnU=x8_w*sHaeQ#*Cai4zj78YDgv{2DbOy1VI>h)`Mbf&HJQY%$Y!KH_AG_i<< zMZ-yp%PN@n{Qbs>_JlP`Lb?QPPhFcjZ7kR{I?GeCQBRDz|F9gDS8cp!kDXgFf7_I+ zrzZQy@lm66=V(`fyG~j*lFF3>p1G$((~i5OIp3VAsPayJ*ZFe~OSN`nE-8h|{WvG? z;EM5Z^UXi8f*Q}d$xqqYrh}!`c)m%kv4`jx>a^@$u;dZlc(3(_+ufjQG!Qg?1;8=9 zWTSk0N<@@J4)@Hyirt}-8sdT0_g%{0Bp)v4u8&B4Q)pm8eD$A2kUR)8O<5HLLrPBb-1KPrKP=Mk1|g! z-PcJzPDP^h!gY0&=y2D=#rlFxiL;i$+8^x3uYl|EiK)ovh+J3SbGF#c!)`(STnUit z29)tKNYv>7F}2>fCv7Wjk9O%vVo=dAWF)6#Hzaky2?$}S3_ViwA+Q1t*Q9l27px%C zkgyfptb+oiMLXXjW?kIFP^SI@W9Hw=9P%emmUF3jyVGjk^pTCCb$h|e2J`&I(up&@ z7MJI9R%R_Wn140A}Ox12LiEu>c7l-G#Pv>K2)@?nU_{_Pk|bM}`H$ZF|oYbt_R zgH(3nrSPB3Hg_LBEOzgq5_TT=FK2_+3><7&_VevF9HQRaf4hZ2m~_N1@&muv`50dA z+S*a7i2ml>hpeual+z2f15P;MBUkrJ+VC^-Ur=*(2Q2FU~+djzJm=v2l}ALzF5BnHOt{SU%1(vFHH9p zMv)qp{||Wsg4p@Mt{{R}x*b>hhCgL1ADZdIaUnSX_*#R~$$0btQV!S;9tHwk4hH^M z<^ah8$rs}M7ndD6yWSUJ`CtGq{x|B(qm%&tI@YOm@Itzp4)p4wSVtzuAXkUjbh?25 zX8=|_DB7OK=Kip8^Yu$__~F=TyY!I% zdMjYt(G4g?!Gv=WhmH*gIDX|v&@u>B!o+w_z>ajKJU!S5Hh;p8wyyavWsXmliKZ%S zR@=6PAMm6J4}e<7koVp{9*N^^0ZHxK=azku2w)l3{)E4Tb z-J-dfH?gXPH^i|h`*_MO0Y1HWkeh+R`Nc6t67)*{tY(8bH=>L)Uw!&uyMMeI6#ne{ zYJ{}Uz(uow^cyM`wZ;haC#w_sYlit>$j_>&YHmL0j2ElOpam-!@pJ|oK|@15o87Dy{1;Z`N!?lfqvNhS zz_M?5ISbFy#|EMC2#?)@v4KQCip-pv+?Z$b>rSrXqcI6(UR};whr}}4xIeB{hJ={0 z@K%UOl5Y0*8zj*JBr2XXsxUv3D05amJK)?RNt47&*A9mddz?ziR@PR&sv*YAT*XY{ zt~Csx>(s+Pp%5bmtB;4KHKbwjDe=e7Nx)`+gj}{fZQBs%vGhOv^?T%eBnqmR9cy;jR zBlA+Ns^>Y@LLF!I^W23$gl}5$Xbf(3eZ>Lz9w=3f(lf$VmFSTfYj}WkkPazk8jYWaDx&{PxbG zH1Z_|Y9_G7T| zK|89)3MTCQuU*jl|${h;RKlm~;sa+eTh|NmTovAzNOB);40yQw+M!poTGyCBBg zSNPqRjyt`3j&{Hl=YgsIHzxW58|cGx=w`!x(3gSRZA3Q2bXy;{(`V~+o*dZMD#3OY zXr-h5F}J&oc$n31WJV{6V0hq!YkrMccOw%MIuV3VXW00i-yJUU?|r%u7vVWXki!9x z9W}l;>Yl+)6BEJ*&N~vM!2u=iOT2{+yO?;|52!i67qRD+BQc3Nco#Onzk^aN4hHBb z(nA2n>S*7+FhHNyW;lq2RRoW(t)?U6g>ax>cZAP(XBv|d8kI9Eo&VyDyBCW16i5Y- zRUUkL$R`F#{y=a4&{Z(bgVWiVfcf2_(7Tc0(533F8-gA{=mncyrEePV4EYwwT`is& z`j5YZRjwmj77Bnb{}^TA0wCL#*M%CH^^Fw6TooD9Yu2uN3H*_<5}%$=eY`PunY+Qx zj%%DR^dMgG|nvv~C>Qsl?VEv9oR1<1LE$*!4}bPyJDZVG-M`p#aB@CC zo&!8MjF**!@4%(g;mnz27N^gDwhOP_44{51N_{^P# z>#<7-2jlx$ePQ#`W3 z{eq-1MOsH)z2R|7RsHJmzT-1T%cARDro+WKPEM$IWRqXocHTSx^c)kCYfFLWZqttt7FVj8OvBzZ9X zZKf61vvkL{QJ=nZ`;23r)L*cSyA#CRAPaFJckzJFnv@`ih}xWOuXvqSZ*q&=%)QE{ zD;znv&3)QP6b1_fAbNL+j+cZjc!ZvOpbJmnF0ug`l=b3nrFKRX^HDpS4|D%H7ytdR zzDVIS?p5F7{Tub|C;Km44jYWJwS3+|mTok3q3S9ZoR*_qw$1|6M)#$wo~`zaeM?-{q}!=luT2&cr=9Rz1pA=i30l!P_*DTm z2Ppo(?W7A|eF!Gmsm*H*x_oR=+?lm{fj-Imaa{7m#C}`-!v0EvcUViBV=l>a+Heq38lwMeJ=hw$oWStu> zv`HKN33)S?HYl+v!KvV|ns|K>fc`PjHUKN46oy$x6mC7QcS)M>VP z5pz}vw~xs_-uD{MBGDlGvaNt4o$3%9YfqCG3Dupb-&K^~mv0YmhkZD30{;T`!$T3_ zuM+pz34Xm1!c^$_;&B@|geRySa$y4OlA27@riab>PuDzr%^Xmh#2?`se4n*m#4V6j zmn0edcJI~Fs^6Tn)Sey+J^5Z$>FZm4e}@5DH~08VeZJq0J>KSz!QB3Nj$VAjV^o`e zE!`RUeSFY9|MdIUNp`gj7g040gm(UJr#h z!$~@C4(eh!2xc|+9Sjep0WeWV%>%4%N8NcJK+Ew#z0c=^W2jPP#S#%DK8yMFswx3d zpFaKnP83i4Z%h>rwe}y;13ly#OgLcWN5HoJf_@ZBc-=nkKvnZnH#kLe8~TE7aVvHbDqG_#WKH8e?& zm)c4Kd;0_*=$E$(xOLcGNf79MzIOPK$*`Kt?JLryVU9HP}aGR~P+a3?AkUiIyp4aOh zBbZ6dkNf$?{y%}gm;U3qzY%so#pi$V>VkiHi^Onaz^fXNR1Yp*VrS!oLE*V&^77e441bk7p>F*PyNz@ zW|Qm$(667R=Ez0$*Ho_#_1ZCAbF=U$?Rt(3yAA&^4!8u12;b^KA3bX!o==N+?wFfXfdCA3m7)A3gU5cS)DQKxq@O7htk~ zkP9{Zq0I?2hlJ;vAj1xALz2)gwV&Y=LxL>;4%qQ#zY@F%ViVL_JOULREtFo>4%4EO zj;V3hV)fB-$wOLu4yR}AsGe*okx8UZxZAPXi2|ao)v&JmVxn z?%-!!MF#tdL9?geT~`B_!_g~+RH|`QN4CPb*xC8vrupK1y{*cF!a;;1a}82VqB_3Q1EzVRRNIU zN{k7`dlsvDwd_n={9mN6iAd;}xqyN_oI{k=d54EN=&jOyfG?B;d0VTq?s& zOpd-U>1^0D|3r-`o6E8^YN>yU_I@R^PVChIkyZI=4P*A6vF;+{Xmjs~6{0+|azmQq zoM6b~OT%_~6=#cDBSMO}%-RNK-%T0s>YphUZ=&e}Aid;XaZu>(W5XXRPL*7v>f)L4 z;^2F4t)X3U_|VMxzykoSGuw9qB{T5bapLNnbR7KCTezr(>UbVdK?OnHd=TUX7s<<~ zge!`SNX6>QnJqkf+qCs&O=mdLHAsVzj=v0O9$&V-{W^_S!1H)YtUz^5`t-@%72!S? z8&_!rUO+N!_j0a&=(E>5<^wtJSAK#e6V`&qA?aH<0Z<4=N<^?=U_1JAIQ{z7^LZ=X z`UM7Q2Kye1$vBXPs^g>%4;`{_!1#9$`cKz44-P20#A)`Jy_u@$8qdJTxe#so>%&Y5 z)}u3Lcg~Hsb_O{NzN2U?7hK6!CC51yXN&%f1N1yt6u{9?jsXjX?gxy&5ZvDZw9|NO zBlZ-!$JiHN?p)4VXY6|^@Mlu483!5lzlP*G>z~w%c(A&XCbfibX9wy07Dkh<7nLj< z^ZCl%!{z(Van5^WmydWK_Y@ujLeNcG;4dxa=~rbNvt#yu0=Hd~*M+!8gdJJ^`;x8< zj$hJD^~k;a3gCL^$Y?Qyyz<*c#po;(gVMKK{<*)!&&X?}K;ZEsfi0WxW+Da>tEt29 zD^e|#Z5&@ZV9{MfIPrW-`V+A*=Y4(1%Fgt?-`D=eKkvhUVd|O0{>NcpN2Vq*Fr5E( zVc3Ax@8~&(O*jUS+MzcM)+KXr8+W3hh%M_4fG>!=VFW4LhccxIm<@z4zAr?)rh_357dy-sLi_V))_ZF zt>Y21I^i9j*y|qqHVA8&pDBB_5;|FtI=j*(LhA^#1^fEcgmF>=*w;&wBAX9ok|Idp zFWXGjrAk-i_PA)g?VilNRGWN`BG&mP_rT!+MJ`1-7rA@ZqNhYO|hn2vXKY!V{ zt;L0X^Tm`j(5y$O0Wfp}Um1Fp3$bf(S3JzFB( z6DwR-{DMr~|5W7l7Fg6@GP_-{Z+?)N;V^m4X667p(V``L`LUer;REO16~fgq(4s#X z{Ag;1%b_>SJVox0B(^RJQ?ogxCo(nrDfiaS)N(*^QcyKJHx@N47HXv;TL1_oFTg!s8)j zo3EvOCDv+Z#nWf+m_KYhV=1`CmTv-R9<)I*<{c;kpn4wW!o~`E_?TnXOYUs0$NGVB zm-b4gz~X6W{^9(Dh!&Bf3&2B53$15n4lI$M@CX{GDhkLfR21oDHD+wL3(2WxWmY2oT^~ol2z>PVh{0F10XB? z(D^P##*yNiKM`4dwMKyoD&$RxYy&nYXL)^v&LSPIULruJAV-Bsr^*-4jfF ztutiZI<3g58RGVxA0=a>CX5U8=WA<5>{&16-XmECr`#W`CKbh$1oq>rM?Ti!wa6wp zavZ(U3anF~cw5w5o=1k*q4$r zwnxzGA9vO|u9K0b>!>ViX4nI@5PUh?gaO|W50`z6OZNxLm%iB6fK(9_v+%4C3DM<2 zD+j8F?LtWZ9W-73(ZGYYK8hlL-|^Ya9b?TI(K3B9o$7JmaF zeLUNjK2%%6T7G(Gpd|^+hfSR>Oe+R>%HA$r88oN4LUa{uziN{9>5%^?FuL~}_wzb? z-@>x4E#P6sO$W`Efd=MVR~A)W3X86oN>CLg#YtW|4SUzNES~QxDLzHWF)S!TP=Ed= znw+hfL&EK!y)KVU%oV!&=H0&Pnw_M;wMw%YZE0RPFh5$xvvQ=%R%`CKYOsfgqG(sF zO}Bnatn=(G_@!Yc4rsO1u9sffadyhq4zFNt){k4ObrYG#KPuP+m`)h0 zJh#^FrV!Hk3HgJb56kl@hT7^hSzcL?VWO2YlT8fEDsu0KSaUTI!cyM~k_qOXuVz|~ zMvX)zTlchPYDDq-JD+{?%K-f5R)XnR5<*wlr}z243<6q|Kz^Sd$y6X)qA$E`qr{P{ zV92wq!y^7_E-)7V4L~WT0)Y*OHKhZMEBsCUO(Q-GiEzdkwOe+9+&#REL8Xiy)Avzq zqqFd~Wc*oSi*4l~a-jWt{4;&X zi@{M2so^1ab?!fLeCud{_1xvld7*WH|2;lNpKrI&?{DxQC#bocZkRur#O+MGcYl+_ z0?BtaGxD!W=D@;wLxHDdLz^%?e5mQ`e$xdt{3A#A4w%;d=R5t+EeyEw4Op-Kn?0af zr7s&a*+5^Gi zAqT(`1OVQ{ewb1o1EeOLd|R>l9*xSOJ%C2^^kF(YLeM)tjO1^DaQ7R$$;QYJ zkcD7gb)HF!gc~GF;;pf6rf%=CPBY#)!qp*l14@Rl^%9%6k>CoE_fXilO+QyJ z2++q?7YgbYzx_D*6Tks#zf9hJkpEmfbo@66G3zoY*`kDCT?!Wp13~&DK@x1`F_&Irn)*p1$kmV=F;{1uS}}T)Ng#Q8kVg!Xd{jPb_QHIGN;1)JIu` zNE9oYkJo0ml8J0O3T`Ww-W^keOF@0|(K}qrdo?uK%Y%_m0(nJ@h-{@OwarQ zj&oqoxe1bsBX2NqT+|HkJM#kReM0@u$GUlmE}O&Xvt$<{MP75d**dqJGfRmEMv{!s zjANX*SE)m*nze%3y=jxZ-4Qj~G6EV#vH~qlOIgabWgul&%D+E1(6@Y{WXH|vOq;Or z&SdpMqR2o4UZ*;Q7R+m8d_ggCe8P+?QCT7F&qX_jnli1PG!5eh!DNo>P6qei+m*+$ zuYJZ9*SGn(7G;lx;;lNV3h6bgWc?22WEZ)|Vs*17du~mPTX?4|rcoRB3$!Q<{pIOg z>HRc%%%)*>+>A%k`^cPHm`lN)cO}0UO`crvceJq%`Bk^A9pD7|gYq76sVslEG#JVl z3--xAQ8kXF%2<79<2A|2=~;39)59P$mU3Vhm(WleVgd-ny2m9M^UMQH4%`EP8UM9! zj|A)iW{0c+lo$Z-C=4O~PCO35q*DNEPQppmK~;kgVKA71o2-jaAVX|G?OaUT^~}tk za>ebRaVKu-#Q9kl<=SfxpwGr^_OY;S5c>Veo zI6I%6PLni9vx{=M&|An7VA$)PFMbMOk;5TTkt>Y@!KrW8D8CYeD7~f=`}FzeMXp0b ziNYg6PUh^Y< zq*ULeh-Pzl@dd7#L=$%6P7JtY*hn2c8;tQxJ%WscTD{ zs_^}=P@r`;r{}skkn9xC6J&Gv2|~kha-VT?eIG0)&14^D8hHHq(c{TH&6;S$`x%#$ zYiAw%D;AYaFIu9ov+jS3raK7yfECy%E!cz})6ogA=GIS}(0SdDF9liqn&1J07gOBz ziPe>f0}YSDc^qH1W@@&C^}Ap%!Lb@DV{b<2Dy<|$6sg-M-}Tl6A%q+m_cXVPSvhWl z?us$I;$AY_lFVwo^^?i7>E?q2m&RQ7#mUKNB#dl_Ahj8hAFu^1Xnof2epzi!$xAV% zljgr{g7r3WW)|`4jgf!#(sXIMwX+n{6V8M7;g79i$7LE$U)80g1pe@*JOYHEg7b!F zU)^H^m%AF!8+idPcW~+X=AHhpyBjyK?t~cl?}bV1Ype$yA6DGPrY{maxJ~L8>3c&^ zTwmx_Jp%~hV4F75`Sk0N9ckx&$GiLg)CB;ITX-Qv>rH2rH-_p$a)B6f5XzCvE-S{M z!!QLf+Xuf{zyLrzM@a(00Bj?&0!j|Fd)6s-;Bf=GxCjIQ0h~^vr|aRtn}JpBy6_#O zAE3n#Fa)|95A@}MLhlbMJxrT0nO&ggflb}NI|1t)dZumfb^=ZR96yxrOxw=jt}0(- zMsWTA^q)n|fR_)HBT-|5VH;oAz90L zADm2_zc84QTf(G}w8+Gi5`P*X5x@ik1VGclG$lZ{!D!iYsM0{u+g~bxmC!t!8_i7B z61JXkh!b}%b(Ge+uArLee|4k!ZvO30-*)Xlg;Bx>-Lj&);zOwarjk&2pUjlyyhTwfZ zJGLF&9_XWcQ7_>Pg6J`(Y(+$9G#g(Enf|Rb&ec}eEo66hgh9GdXKRwQ_T!|Y$(1)j zo-gI?9DD13Xzv)ait{IerApC01&h8iZ@Ogbsy;CJ^s2%g3vws% z<)_Ro?iP}DwMHw`!LxumEGeL0w7UJlPlib&!Y&{a6^FrY6SH4+0{C0DJD zHvv^dl)bwwS>7>t*f*jVKjBmfm`ceQ9r3nC3efQ61@B4QxfONb5A5P4J*6Kg)W zAK;wsNxGIK6gSdY5#?TNRrqiy!ds(t-m`?swpCV@)%qdPMQF0tnpLMhe`G8vA~O8% z%*#w;*6c zzU0@4k|=Zmha?FBAwk|A5-Nne&;_g~T=M}34*h<}v7F%V4uhXnHmXZ=iOT4;@DJ^WSDuI8R#@-#xP^*;hR7>UkvEk(N<(`vxg>KyIQv zM6@EL*$U`))4pGtPII?A6q&Ayzn-Wsw8|YO#VsW+#XXHZJ+Fcy7F45bDsBe%j$QAk zDXYEJ9=#IV`eBB0tg|zX!$8t3J8@S5&&k84=8-{%PnXS}(mH)&VMRgTfl^NPy0X|F zn>rjKn~JPf&R&0=(JT8nSLcNqS|LEV^LYy^ zq%H`z(CZ?(B|0p4y8V@{7yc^IAd`pvGj7~rHivV^ewtl<%50XLqikEpSZa%2amej# z>iqNVx!fI>rk@*x7_VtJDm%`8yy?gRv^|$G_py6FJ4%@bMGZZjixNueVr^6b0-myt zidZ#>J)Lc+?U%0U!L*)8Fz!O%5BlEXnU&y+0~Z}wFgzu6&e2zn!2Re8N890_53Mu} z&x}s!_mC_SpSW|+Rxk~>02hz7&RIq5t@^ts)FNs5KxJiRHKF&tuBIn+>2C?|jfL@z z^roZP`Mc)>jXd~k+Y0bJ+#h1|T!oNLooz>F+Lp{eOL`JPTrayMphIgxT2%Y@zKH=_ zJJqo<_X!S5XJ%(OEv5~KctBq^l`DO@`(?e+Q2%1tzajO!@*~B{?rqfFM?-I#(s)Ml zJ_cLszN_%J4-e~i^nn*{?TvWrWL|oXD7ff6W!Fr!cN$ehkSXi%zaEOPHWEio10r{Z{8V5lU z-9ofnFQ;L56iBfe9ukV{C}e*lf&U+Zde9W0_Xp6R9YX>_)r#ROhrA==n-WRWA|<`~M-TxAhLLKeG8UKaL-@6p#l!7~1(AOJhPtbud#n ze+j(o9=|~-eWiovA!dWqEu0N9s^9C5gaLj0eh|W>ZN00$HufQgSVev~f9d8%C<37* z+`$b+3On-?A((R8UCw=I1)8lYHTtPhBHD7GuyOuQR8pj0(5+A%koFo0|1+2PYOpcS zq%`AlQsm?%ilT6r3Hxn{`6BNttH!x(YT?fY9NEq59M#vJ*1WXMhGIA-ulZ&}YN)LO zKA*DGA9L7Flw-V3*2Rgex7tQwyV>#gN>{-XqlAE*5&!YdB;i~`d%q;JOA#Lne=jTR z71d{9+4uSp^Akj|@4IscK?j8100qht2LpX%Jm1NO+78g?zj)~&Y&5Nfj{lck-+&HX z3L;T6jO5nEvD|LYbctzq&WyCZF**Fa(M0BGa!yoMgv&`v)Tx2bNq{Xz%ltrojq@QolF{FQfjpW9p#7CvjUn4Jr&8x(!0|+cFI0wnZI@0B(J_ z{$R)?!Fzw$So)-9e$k$&#SlN&w3R0ff2jsXb||DQ4B%Gi22R5UqgPg2)vv;d~{8CCf-azCq)Qq(>PQqR zhF^d)_T2qGEpE4@A^+90p?RaazjQ3`%BfwAW>p^+=V8$u)m?J>;H7r=nt-6G(CU?; zH}{OJ-Qw{ zn3)_@GpKe8_nps`-EPqfS_(zoF(yBK>b@m1Y3dj*&`;T?Q>P|6qZK6(IzJTV^#lBY z0ayb5%AP>x1{W-dB{1IKh>ZbW@cnlPzt)f2eW1^W(e#+$KTz-~dL@R(gbNzGppqqy z2TV}7vis8SAGM9}tw|it8Kr)-Yh>x_r|DXQY5UdJ;?&0_Y-2Qe-f=s{KJP7B9B*1I zrYp;pKjOIxACuglExxTA>q@+pOK58G%d=_eBUywZv&AQ6bL#f@-;N{&G*1yFXgv0! zwew`-Dii+MGwcMB{O54)b`;eS^ltk|M}^?4 z0!~)7#_l+iR~eJ8uNK4t1FAa4zs(4WHr2YT^dDo;F3JA@vKpT@F;Yy`_zSClmZ7qOn;z5Af`VI_TZoZs$e9+ z`rin@4fh53n~w)jIFbu&>%{Ro?>~eb6&8vb@eOk5FCs+iYB*cnf8%&^!s5Ddb-^^5 z_FN4DxbMfajRv{w!~SMwLv7J>CKO2;*+g~fQ^&+UZKGscIFpS9s4|0R*Twcpbx>2u_88>;pdbTjL@6LB8{2>t7yhO)StNxYO2xg@-t-Xws@8F1sNa0pc9CY~nzm zb+^bc`Sf(l5aS*$53?lhoV2cR6EQn)B3JKlx*>^HZL3osInc7ZPPc!bWg9ZtJ0^Mz?Sp`R2|NnnxO8+Dect7G9Gk{FNdNZkbcX0maRz)2RqUi zb5cT-xz`Sm+5=U5LvzBQA-Om=T1CFyREA)vBVE8+0fa5I>t?GUGvjCX#CIQ7=YFE4 zro(BWo)hRpf0O@xd-fts1(cM&-+@8$8$iInX9G9}9afYfz*q3aXa{~N>@)kn`UQ*@ zDyrBowGq8|BLn&j)=>gre}mrb+f>8+8ba{@lWSbvgs}#o+{a$YfVu)~m;w*H60mqE z(cElK0GPoUP}iZu5#TYHDuMDo=06M1A9e;cAIx(HfC7Gf@rc5=G2RC;^?<#9Y$pj4 z0ciB!ImZW*10Zq%D1Ve4)V@Ky{&@baj2r!Z!59zFn%c|7B~n!eH5 z3R$UcSll|?6nv$XbDnGQ+)hpW>x=qfxabIvdIOH(iz#Nc}KFOlfoV9sc}&9u{y}5 zwE5wK?Z+5>-kSn}53&h>X^oucf-K?}VGy_lJi)ihu^jGzj&kn(>5%Q?LV+~q zBqE#B%{ajX_qfATTl|Hma($0o>mr-kf{L$WVqzOj?kJV)*Z;m*#`u1~d)Y2OaAmU$ zj@3F^HMRQ)X#L_99n#sH9F`>KO3WLLBvm9Ebzw5hqMyms)!-z&$|H6t8e zUV{rRjHc~{zG*FN3Qhp^WMD`kxIbhAfDO<^42dS>t%rg7Bmr>72MBY-9zgy%ICeHR zTH)owHEIq`gOpWU+uW@XGaM3X5+z7IF*&uGYvZVy(lT}E9n z+TUJ$V6m>Rr(k}?o3j*Dmxr~oIst#)7{pQAFWPJ5Q4H`=(H%Kn{f%d+kFl@l5pUDMJ-BKFxTY-vn!^AQR0yh zk)l01<(bouUrK&D(x|0XU@*kX`7X2EF{?d}a)8ZoRV*_JlyfV`J5G(aWdjL?zbj3m z90XjrR3xZe%F52l3I@7$I)S6%A4Y`ykN8^#@=GY6zVr$jGw35#x@g0?o&~IH?r!!$ z?E_F-LKXyA)W>x78B=g57(gueA7}so2jceBnFJcMEgV}hKJ+>_Nu*!Q&ORxkS5;Xp z&1AQKpS)Q6{HOhWJkMB6Q>mKdU@g#Zp8AZN(8rC5RuDQpIVAM!jH^D~_>7ad&C=w} z>XtDfKRWTefY_BwAVm{s3h9NxdZYc-!i$-MBQA1hUayqLz6CnpOhxP5XIwe?Q}^O; z!%Ov(4!57VZXHZ2d97elpm4r*&2VXDcAqd@gfNhP@0*vJD$!xq1BSO^Q$K|1f~nPs z((ycsI#t$)cOZYPlT5RJ<}!5N=12rd?0yv4FTp&rWzY5O>nlZzNtCy=NxkAKI;pQ= zcl}SFao3GmNJd2&c7HMhh!Pdt-{|Qfm^_B@`_GR57Nu$Pp&p86hk3@&&7tpWooF8| zXB=(vyaENhJwuLEW){#?qQK{FxNXmd*B*8ygDRt0qal9JoJXrk#TtsShHV{P#C@t1 zXSY*Yh2UE|K?OOfv%}*oh*3`u)a$-FI1s%?+vp*DonW8;VV5#!QKIee&xEVPtAHv` zHM;<7WT_ZogcL=JN{*oRiH zcmU}8jPe&qZ)AV_kjBYI3(by`MEbsyy4gkU&+l#f9XoCVoA!ezw>T@eln={g3HxHYG4bi!ufk*<2kJT!xBzK@0KSC8??B9r(_K^99;%cGi zj{8H92M7R~*MwjU-iSv04A2Gyi1VI0wCcQ%*aR@NJJpUJjzk>*Na6hxyirvdRqqi3 zk^gRB2IHwRNFa@A#U;Q$60zyl{b7Wu={9fT`?Z9xH#=z}v6_^voyKihC^p-#xlB@MQo5B1 zD13W&qEk-$N7=E`i!SP!Z)ZJaqaPm~v$UXfQO%!`h~3YKuflhZcNOkF7-ywhR6y1$ zO37&1{(294fd{98ZwE^@byiKAOH5Is!4AJ6yx7KGABE+0==1iA>DolcZ<9u&_ET1j zYoM+|Pl!c9^#KGR=R<-X*zsf_4ST>L&2zX6@a(&ULhnNZv{gBRupU5#e?>yp?p$Yk z;92noXPe~#nORq#gP>WZTmB@4l9EA+ePN*~MhE7oSH)(&?(rnyp)4Z$`O$S{U_QQtI$< z?-ZNL9%XiRD|S{=d)7xV4L5o8QM$K|Lh^sp)6*uD7d@PRrpx8kUaRr^&)X_O44UmN zT2qAEa#g|JXDBV^4YyL!03{X@^ZK)N+fxM7js%AO@_tgD%wLs1FwsU^5PNK|RsDH{ zsN2MquUW2P8!a52CFUIOY8$)cCbxWC(UC8j{H5(hoW;HiuC+tq9zA}O9yRX@jk`Le z$n)xMZDf)~s19dl3bERp_m??4vS~sw$-ariH?E{VK;%oJB-QHs4|bEBhCT!i1U7DO z*>}^QWkr8#F7s7kXIJ5w3H835%G6tp?O#q1m4`J;JgQ`F`IO4%P3fd4y7bTfzEpbc z+3q(p+NJwwlxafUOw)31&ZjgpHEYvcFiJq`3P2BR4zNKbrUDlZI+6h1`T%Al?k3;~ zC70lN7+Zip03Gu)0bh;%z;fmX0s+=&$hgbOo#)l=Bwd#yZC#gM9F}Nf-y&8YJE-M4 z+N4>o=}wtx3x2Y25cRSOjZ(`$`H_FQmm}(~#L>4c{A9RiqFBTBa`}>$=v;@`cs+Z? z+DDu7)O0vW;jS(Ci`rsGKHoF_!XDz zvoJ9@ zUXdo>#LOjf^7Z>LQK^_l-^MC$pxy#3r&0}8Dz3*|e&ST9I_vh}Nt$u!xd3d- zzit9h8XxHXm>B=HVf7(w3i!HZQwBmDHm*

eK@Y9z68evpp{K8q2-P} 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%0AucxG*La5xw*H& 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�lqY3Z2yU%%Lg{sQ`& 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 300) { + $(".sticky-top").addClass("shadow-sm").css("top", "0px"); + } else { + $(".sticky-top").removeClass("shadow-sm").css("top", "-100px"); + } + }); + + // Facts counter + $('[data-toggle="counter-up"]').counterUp({ + delay: 10, + time: 2000, + }); + + // Testimonials carousel + $(".testimonial-carousel").owlCarousel({ + autoplay: true, + smartSpeed: 1000, + items: 1, + dots: false, + loop: true, + nav: true, + navText: [ + '', + '', + ], + }); +})(jQuery); diff --git a/home/lib/animate/animate.css b/home/lib/animate/animate.css new file mode 100644 index 0000000..1e79e03 --- /dev/null +++ b/home/lib/animate/animate.css @@ -0,0 +1,1579 @@ +@charset "UTF-8"; + +/*! + * animate.css -http://daneden.me/animate + * Version - 3.5.2 + * Licensed under the MIT license - http://opensource.org/licenses/MIT + * + * Copyright (c) 2017 Daniel Eden + */ + +.animated { + animation-duration: 1s; + animation-fill-mode: both; +} + +.animated.infinite { + animation-iteration-count: infinite; +} + +.animated.hinge { + animation-duration: 2s; +} + +.animated.flipOutX, +.animated.flipOutY, +.animated.bounceIn, +.animated.bounceOut { + animation-duration: .75s; +} + +@keyframes bounce { + from, 20%, 53%, 80%, to { + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + transform: translate3d(0,0,0); + } + + 40%, 43% { + animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060); + transform: translate3d(0, -30px, 0); + } + + 70% { + animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060); + transform: translate3d(0, -15px, 0); + } + + 90% { + transform: translate3d(0,-4px,0); + } +} + +.bounce { + animation-name: bounce; + transform-origin: center bottom; +} + +@keyframes flash { + from, 50%, to { + opacity: 1; + } + + 25%, 75% { + opacity: 0; + } +} + +.flash { + animation-name: flash; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@keyframes pulse { + from { + transform: scale3d(1, 1, 1); + } + + 50% { + transform: scale3d(1.05, 1.05, 1.05); + } + + to { + transform: scale3d(1, 1, 1); + } +} + +.pulse { + animation-name: pulse; +} + +@keyframes rubberBand { + from { + transform: scale3d(1, 1, 1); + } + + 30% { + transform: scale3d(1.25, 0.75, 1); + } + + 40% { + transform: scale3d(0.75, 1.25, 1); + } + + 50% { + transform: scale3d(1.15, 0.85, 1); + } + + 65% { + transform: scale3d(.95, 1.05, 1); + } + + 75% { + transform: scale3d(1.05, .95, 1); + } + + to { + transform: scale3d(1, 1, 1); + } +} + +.rubberBand { + animation-name: rubberBand; +} + +@keyframes shake { + from, to { + transform: translate3d(0, 0, 0); + } + + 10%, 30%, 50%, 70%, 90% { + transform: translate3d(-10px, 0, 0); + } + + 20%, 40%, 60%, 80% { + transform: translate3d(10px, 0, 0); + } +} + +.shake { + animation-name: shake; +} + +@keyframes headShake { + 0% { + transform: translateX(0); + } + + 6.5% { + transform: translateX(-6px) rotateY(-9deg); + } + + 18.5% { + transform: translateX(5px) rotateY(7deg); + } + + 31.5% { + transform: translateX(-3px) rotateY(-5deg); + } + + 43.5% { + transform: translateX(2px) rotateY(3deg); + } + + 50% { + transform: translateX(0); + } +} + +.headShake { + animation-timing-function: ease-in-out; + animation-name: headShake; +} + +@keyframes swing { + 20% { + transform: rotate3d(0, 0, 1, 15deg); + } + + 40% { + transform: rotate3d(0, 0, 1, -10deg); + } + + 60% { + transform: rotate3d(0, 0, 1, 5deg); + } + + 80% { + transform: rotate3d(0, 0, 1, -5deg); + } + + to { + transform: rotate3d(0, 0, 1, 0deg); + } +} + +.swing { + transform-origin: top center; + animation-name: swing; +} + +@keyframes tada { + from { + transform: scale3d(1, 1, 1); + } + + 10%, 20% { + transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg); + } + + 30%, 50%, 70%, 90% { + transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); + } + + 40%, 60%, 80% { + transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); + } + + to { + transform: scale3d(1, 1, 1); + } +} + +.tada { + animation-name: tada; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@keyframes wobble { + from { + transform: none; + } + + 15% { + transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); + } + + 30% { + transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); + } + + 45% { + transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); + } + + 60% { + transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); + } + + 75% { + transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); + } + + to { + transform: none; + } +} + +.wobble { + animation-name: wobble; +} + +@keyframes jello { + from, 11.1%, to { + transform: none; + } + + 22.2% { + transform: skewX(-12.5deg) skewY(-12.5deg); + } + + 33.3% { + transform: skewX(6.25deg) skewY(6.25deg); + } + + 44.4% { + transform: skewX(-3.125deg) skewY(-3.125deg); + } + + 55.5% { + transform: skewX(1.5625deg) skewY(1.5625deg); + } + + 66.6% { + transform: skewX(-0.78125deg) skewY(-0.78125deg); + } + + 77.7% { + transform: skewX(0.390625deg) skewY(0.390625deg); + } + + 88.8% { + transform: skewX(-0.1953125deg) skewY(-0.1953125deg); + } +} + +.jello { + animation-name: jello; + transform-origin: center; +} + +@keyframes bounceIn { + from, 20%, 40%, 60%, 80%, to { + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + 0% { + opacity: 0; + transform: scale3d(.3, .3, .3); + } + + 20% { + transform: scale3d(1.1, 1.1, 1.1); + } + + 40% { + transform: scale3d(.9, .9, .9); + } + + 60% { + opacity: 1; + transform: scale3d(1.03, 1.03, 1.03); + } + + 80% { + transform: scale3d(.97, .97, .97); + } + + to { + opacity: 1; + transform: scale3d(1, 1, 1); + } +} + +.bounceIn { + animation-name: bounceIn; +} + +@keyframes bounceInDown { + from, 60%, 75%, 90%, to { + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + 0% { + opacity: 0; + transform: translate3d(0, -3000px, 0); + } + + 60% { + opacity: 1; + transform: translate3d(0, 25px, 0); + } + + 75% { + transform: translate3d(0, -10px, 0); + } + + 90% { + transform: translate3d(0, 5px, 0); + } + + to { + transform: none; + } +} + +.bounceInDown { + animation-name: bounceInDown; +} + +@keyframes bounceInLeft { + from, 60%, 75%, 90%, to { + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + 0% { + opacity: 0; + transform: translate3d(-3000px, 0, 0); + } + + 60% { + opacity: 1; + transform: translate3d(25px, 0, 0); + } + + 75% { + transform: translate3d(-10px, 0, 0); + } + + 90% { + transform: translate3d(5px, 0, 0); + } + + to { + transform: none; + } +} + +.bounceInLeft { + animation-name: bounceInLeft; +} + +@keyframes bounceInRight { + from, 60%, 75%, 90%, to { + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + from { + opacity: 0; + transform: translate3d(3000px, 0, 0); + } + + 60% { + opacity: 1; + transform: translate3d(-25px, 0, 0); + } + + 75% { + transform: translate3d(10px, 0, 0); + } + + 90% { + transform: translate3d(-5px, 0, 0); + } + + to { + transform: none; + } +} + +.bounceInRight { + animation-name: bounceInRight; +} + +@keyframes bounceInUp { + from, 60%, 75%, 90%, to { + animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); + } + + from { + opacity: 0; + transform: translate3d(0, 3000px, 0); + } + + 60% { + opacity: 1; + transform: translate3d(0, -20px, 0); + } + + 75% { + transform: translate3d(0, 10px, 0); + } + + 90% { + transform: translate3d(0, -5px, 0); + } + + to { + transform: translate3d(0, 0, 0); + } +} + +.bounceInUp { + animation-name: bounceInUp; +} + +@keyframes bounceOut { + 20% { + transform: scale3d(.9, .9, .9); + } + + 50%, 55% { + opacity: 1; + transform: scale3d(1.1, 1.1, 1.1); + } + + to { + opacity: 0; + transform: scale3d(.3, .3, .3); + } +} + +.bounceOut { + animation-name: bounceOut; +} + +@keyframes bounceOutDown { + 20% { + transform: translate3d(0, 10px, 0); + } + + 40%, 45% { + opacity: 1; + transform: translate3d(0, -20px, 0); + } + + to { + opacity: 0; + transform: translate3d(0, 2000px, 0); + } +} + +.bounceOutDown { + animation-name: bounceOutDown; +} + +@keyframes bounceOutLeft { + 20% { + opacity: 1; + transform: translate3d(20px, 0, 0); + } + + to { + opacity: 0; + transform: translate3d(-2000px, 0, 0); + } +} + +.bounceOutLeft { + animation-name: bounceOutLeft; +} + +@keyframes bounceOutRight { + 20% { + opacity: 1; + transform: translate3d(-20px, 0, 0); + } + + to { + opacity: 0; + transform: translate3d(2000px, 0, 0); + } +} + +.bounceOutRight { + animation-name: bounceOutRight; +} + +@keyframes bounceOutUp { + 20% { + transform: translate3d(0, -10px, 0); + } + + 40%, 45% { + opacity: 1; + transform: translate3d(0, 20px, 0); + } + + to { + opacity: 0; + transform: translate3d(0, -2000px, 0); + } +} + +.bounceOutUp { + animation-name: bounceOutUp; +} + +@keyframes fadeIn { + from { + opacity: 0; + } + + to { + opacity: 1; + } +} + +.fadeIn { + animation-name: fadeIn; +} + +@keyframes fadeInDown { + from { + opacity: 0; + transform: translate3d(0, -100%, 0); + } + + to { + opacity: 1; + transform: none; + } +} + +.fadeInDown { + animation-name: fadeInDown; +} + +@keyframes fadeInDownBig { + from { + opacity: 0; + transform: translate3d(0, -2000px, 0); + } + + to { + opacity: 1; + transform: none; + } +} + +.fadeInDownBig { + animation-name: fadeInDownBig; +} + +@keyframes fadeInLeft { + from { + opacity: 0; + transform: translate3d(-100%, 0, 0); + } + + to { + opacity: 1; + transform: none; + } +} + +.fadeInLeft { + animation-name: fadeInLeft; +} + +@keyframes fadeInLeftBig { + from { + opacity: 0; + transform: translate3d(-2000px, 0, 0); + } + + to { + opacity: 1; + transform: none; + } +} + +.fadeInLeftBig { + animation-name: fadeInLeftBig; +} + +@keyframes fadeInRight { + from { + opacity: 0; + transform: translate3d(100%, 0, 0); + } + + to { + opacity: 1; + transform: none; + } +} + +.fadeInRight { + animation-name: fadeInRight; +} + +@keyframes fadeInRightBig { + from { + opacity: 0; + transform: translate3d(2000px, 0, 0); + } + + to { + opacity: 1; + transform: none; + } +} + +.fadeInRightBig { + animation-name: fadeInRightBig; +} + +@keyframes fadeInUp { + from { + opacity: 0; + transform: translate3d(0, 100%, 0); + } + + to { + opacity: 1; + transform: none; + } +} + +.fadeInUp { + animation-name: fadeInUp; +} + +@keyframes fadeInUpBig { + from { + opacity: 0; + transform: translate3d(0, 2000px, 0); + } + + to { + opacity: 1; + transform: none; + } +} + +.fadeInUpBig { + animation-name: fadeInUpBig; +} + +@keyframes fadeOut { + from { + opacity: 1; + } + + to { + opacity: 0; + } +} + +.fadeOut { + animation-name: fadeOut; +} + +@keyframes fadeOutDown { + from { + opacity: 1; + } + + to { + opacity: 0; + transform: translate3d(0, 100%, 0); + } +} + +.fadeOutDown { + animation-name: fadeOutDown; +} + +@keyframes fadeOutDownBig { + from { + opacity: 1; + } + + to { + opacity: 0; + transform: translate3d(0, 2000px, 0); + } +} + +.fadeOutDownBig { + animation-name: fadeOutDownBig; +} + +@keyframes fadeOutLeft { + from { + opacity: 1; + } + + to { + opacity: 0; + transform: translate3d(-100%, 0, 0); + } +} + +.fadeOutLeft { + animation-name: fadeOutLeft; +} + +@keyframes fadeOutLeftBig { + from { + opacity: 1; + } + + to { + opacity: 0; + transform: translate3d(-2000px, 0, 0); + } +} + +.fadeOutLeftBig { + animation-name: fadeOutLeftBig; +} + +@keyframes fadeOutRight { + from { + opacity: 1; + } + + to { + opacity: 0; + transform: translate3d(100%, 0, 0); + } +} + +.fadeOutRight { + animation-name: fadeOutRight; +} + +@keyframes fadeOutRightBig { + from { + opacity: 1; + } + + to { + opacity: 0; + transform: translate3d(2000px, 0, 0); + } +} + +.fadeOutRightBig { + animation-name: fadeOutRightBig; +} + +@keyframes fadeOutUp { + from { + opacity: 1; + } + + to { + opacity: 0; + transform: translate3d(0, -100%, 0); + } +} + +.fadeOutUp { + animation-name: fadeOutUp; +} + +@keyframes fadeOutUpBig { + from { + opacity: 1; + } + + to { + opacity: 0; + transform: translate3d(0, -2000px, 0); + } +} + +.fadeOutUpBig { + animation-name: fadeOutUpBig; +} + +@keyframes flip { + from { + transform: perspective(400px) rotate3d(0, 1, 0, -360deg); + animation-timing-function: ease-out; + } + + 40% { + transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg); + animation-timing-function: ease-out; + } + + 50% { + transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg); + animation-timing-function: ease-in; + } + + 80% { + transform: perspective(400px) scale3d(.95, .95, .95); + animation-timing-function: ease-in; + } + + to { + transform: perspective(400px); + animation-timing-function: ease-in; + } +} + +.animated.flip { + -webkit-backface-visibility: visible; + backface-visibility: visible; + animation-name: flip; +} + +@keyframes flipInX { + from { + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + animation-timing-function: ease-in; + opacity: 0; + } + + 40% { + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + animation-timing-function: ease-in; + } + + 60% { + transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + opacity: 1; + } + + 80% { + transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + } + + to { + transform: perspective(400px); + } +} + +.flipInX { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + animation-name: flipInX; +} + +@keyframes flipInY { + from { + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + animation-timing-function: ease-in; + opacity: 0; + } + + 40% { + transform: perspective(400px) rotate3d(0, 1, 0, -20deg); + animation-timing-function: ease-in; + } + + 60% { + transform: perspective(400px) rotate3d(0, 1, 0, 10deg); + opacity: 1; + } + + 80% { + transform: perspective(400px) rotate3d(0, 1, 0, -5deg); + } + + to { + transform: perspective(400px); + } +} + +.flipInY { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + animation-name: flipInY; +} + +@keyframes flipOutX { + from { + transform: perspective(400px); + } + + 30% { + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + opacity: 1; + } + + to { + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + opacity: 0; + } +} + +.flipOutX { + animation-name: flipOutX; + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; +} + +@keyframes flipOutY { + from { + transform: perspective(400px); + } + + 30% { + transform: perspective(400px) rotate3d(0, 1, 0, -15deg); + opacity: 1; + } + + to { + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + opacity: 0; + } +} + +.flipOutY { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + animation-name: flipOutY; +} + +@keyframes lightSpeedIn { + from { + transform: translate3d(100%, 0, 0) skewX(-30deg); + opacity: 0; + } + + 60% { + transform: skewX(20deg); + opacity: 1; + } + + 80% { + transform: skewX(-5deg); + opacity: 1; + } + + to { + transform: none; + opacity: 1; + } +} + +.lightSpeedIn { + animation-name: lightSpeedIn; + animation-timing-function: ease-out; +} + +@keyframes lightSpeedOut { + from { + opacity: 1; + } + + to { + transform: translate3d(100%, 0, 0) skewX(30deg); + opacity: 0; + } +} + +.lightSpeedOut { + animation-name: lightSpeedOut; + animation-timing-function: ease-in; +} + +@keyframes rotateIn { + from { + transform-origin: center; + transform: rotate3d(0, 0, 1, -200deg); + opacity: 0; + } + + to { + transform-origin: center; + transform: none; + opacity: 1; + } +} + +.rotateIn { + animation-name: rotateIn; +} + +@keyframes rotateInDownLeft { + from { + transform-origin: left bottom; + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } + + to { + transform-origin: left bottom; + transform: none; + opacity: 1; + } +} + +.rotateInDownLeft { + animation-name: rotateInDownLeft; +} + +@keyframes rotateInDownRight { + from { + transform-origin: right bottom; + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } + + to { + transform-origin: right bottom; + transform: none; + opacity: 1; + } +} + +.rotateInDownRight { + animation-name: rotateInDownRight; +} + +@keyframes rotateInUpLeft { + from { + transform-origin: left bottom; + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } + + to { + transform-origin: left bottom; + transform: none; + opacity: 1; + } +} + +.rotateInUpLeft { + animation-name: rotateInUpLeft; +} + +@keyframes rotateInUpRight { + from { + transform-origin: right bottom; + transform: rotate3d(0, 0, 1, -90deg); + opacity: 0; + } + + to { + transform-origin: right bottom; + transform: none; + opacity: 1; + } +} + +.rotateInUpRight { + animation-name: rotateInUpRight; +} + +@keyframes rotateOut { + from { + transform-origin: center; + opacity: 1; + } + + to { + transform-origin: center; + transform: rotate3d(0, 0, 1, 200deg); + opacity: 0; + } +} + +.rotateOut { + animation-name: rotateOut; +} + +@keyframes rotateOutDownLeft { + from { + transform-origin: left bottom; + opacity: 1; + } + + to { + transform-origin: left bottom; + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } +} + +.rotateOutDownLeft { + animation-name: rotateOutDownLeft; +} + +@keyframes rotateOutDownRight { + from { + transform-origin: right bottom; + opacity: 1; + } + + to { + transform-origin: right bottom; + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } +} + +.rotateOutDownRight { + animation-name: rotateOutDownRight; +} + +@keyframes rotateOutUpLeft { + from { + transform-origin: left bottom; + opacity: 1; + } + + to { + transform-origin: left bottom; + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } +} + +.rotateOutUpLeft { + animation-name: rotateOutUpLeft; +} + +@keyframes rotateOutUpRight { + from { + transform-origin: right bottom; + opacity: 1; + } + + to { + transform-origin: right bottom; + transform: rotate3d(0, 0, 1, 90deg); + opacity: 0; + } +} + +.rotateOutUpRight { + animation-name: rotateOutUpRight; +} + +@keyframes hinge { + 0% { + transform-origin: top left; + animation-timing-function: ease-in-out; + } + + 20%, 60% { + transform: rotate3d(0, 0, 1, 80deg); + transform-origin: top left; + animation-timing-function: ease-in-out; + } + + 40%, 80% { + transform: rotate3d(0, 0, 1, 60deg); + transform-origin: top left; + animation-timing-function: ease-in-out; + opacity: 1; + } + + to { + transform: translate3d(0, 700px, 0); + opacity: 0; + } +} + +.hinge { + animation-name: hinge; +} + +@keyframes jackInTheBox { + from { + opacity: 0; + transform: scale(0.1) rotate(30deg); + transform-origin: center bottom; + } + + 50% { + transform: rotate(-10deg); + } + + 70% { + transform: rotate(3deg); + } + + to { + opacity: 1; + transform: scale(1); + } +} + +.jackInTheBox { + animation-name: jackInTheBox; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@keyframes rollIn { + from { + opacity: 0; + transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); + } + + to { + opacity: 1; + transform: none; + } +} + +.rollIn { + animation-name: rollIn; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@keyframes rollOut { + from { + opacity: 1; + } + + to { + opacity: 0; + transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); + } +} + +.rollOut { + animation-name: rollOut; +} + +@keyframes zoomIn { + from { + opacity: 0; + transform: scale3d(.3, .3, .3); + } + + 50% { + opacity: 1; + } +} + +.zoomIn { + animation-name: zoomIn; +} + +@keyframes zoomInDown { + from { + opacity: 0; + transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomInDown { + animation-name: zoomInDown; +} + +@keyframes zoomInLeft { + from { + opacity: 0; + transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomInLeft { + animation-name: zoomInLeft; +} + +@keyframes zoomInRight { + from { + opacity: 0; + transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomInRight { + animation-name: zoomInRight; +} + +@keyframes zoomInUp { + from { + opacity: 0; + transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + 60% { + opacity: 1; + transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomInUp { + animation-name: zoomInUp; +} + +@keyframes zoomOut { + from { + opacity: 1; + } + + 50% { + opacity: 0; + transform: scale3d(.3, .3, .3); + } + + to { + opacity: 0; + } +} + +.zoomOut { + animation-name: zoomOut; +} + +@keyframes zoomOutDown { + 40% { + opacity: 1; + transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + to { + opacity: 0; + transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0); + transform-origin: center bottom; + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomOutDown { + animation-name: zoomOutDown; +} + +@keyframes zoomOutLeft { + 40% { + opacity: 1; + transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0); + } + + to { + opacity: 0; + transform: scale(.1) translate3d(-2000px, 0, 0); + transform-origin: left center; + } +} + +.zoomOutLeft { + animation-name: zoomOutLeft; +} + +@keyframes zoomOutRight { + 40% { + opacity: 1; + transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0); + } + + to { + opacity: 0; + transform: scale(.1) translate3d(2000px, 0, 0); + transform-origin: right center; + } +} + +.zoomOutRight { + animation-name: zoomOutRight; +} + +@keyframes zoomOutUp { + 40% { + opacity: 1; + transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0); + animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190); + } + + to { + opacity: 0; + transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0); + transform-origin: center bottom; + animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); + } +} + +.zoomOutUp { + animation-name: zoomOutUp; +} + +@keyframes slideInDown { + from { + transform: translate3d(0, -100%, 0); + visibility: visible; + } + + to { + transform: translate3d(0, 0, 0); + } +} + +.slideInDown { + animation-name: slideInDown; +} + +@keyframes slideInLeft { + from { + transform: translate3d(-100%, 0, 0); + visibility: visible; + } + + to { + transform: translate3d(0, 0, 0); + } +} + +.slideInLeft { + animation-name: slideInLeft; +} + +@keyframes slideInRight { + from { + transform: translate3d(100%, 0, 0); + visibility: visible; + } + + to { + transform: translate3d(0, 0, 0); + } +} + +.slideInRight { + animation-name: slideInRight; +} + +@keyframes slideInUp { + from { + transform: translate3d(0, 100%, 0); + visibility: visible; + } + + to { + transform: translate3d(0, 0, 0); + } +} + +.slideInUp { + animation-name: slideInUp; +} + +@keyframes slideOutDown { + from { + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + transform: translate3d(0, 100%, 0); + } +} + +.slideOutDown { + animation-name: slideOutDown; +} + +@keyframes slideOutLeft { + from { + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + transform: translate3d(-100%, 0, 0); + } +} + +.slideOutLeft { + animation-name: slideOutLeft; +} + +@keyframes slideOutRight { + from { + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + transform: translate3d(100%, 0, 0); + } +} + +.slideOutRight { + animation-name: slideOutRight; +} + +@keyframes slideOutUp { + from { + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + transform: translate3d(0, -100%, 0); + } +} + +.slideOutUp { + animation-name: slideOutUp; +} diff --git a/home/lib/animate/animate.min.css b/home/lib/animate/animate.min.css new file mode 100644 index 0000000..511b52a --- /dev/null +++ b/home/lib/animate/animate.min.css @@ -0,0 +1,11 @@ +@charset "UTF-8"; + +/*! + * animate.css -http://daneden.me/animate + * Version - 3.5.2 + * Licensed under the MIT license - http://opensource.org/licenses/MIT + * + * Copyright (c) 2017 Daniel Eden + */ + +.animated{animation-duration:1s;animation-fill-mode:both}.animated.infinite{animation-iteration-count:infinite}.animated.hinge{animation-duration:2s}.animated.bounceIn,.animated.bounceOut,.animated.flipOutX,.animated.flipOutY{animation-duration:.75s}@keyframes bounce{0%,20%,53%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translateZ(0)}40%,43%{animation-timing-function:cubic-bezier(.755,.05,.855,.06);transform:translate3d(0,-30px,0)}70%{animation-timing-function:cubic-bezier(.755,.05,.855,.06);transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}.bounce{animation-name:bounce;transform-origin:center bottom}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}.flash{animation-name:flash}@keyframes pulse{0%{transform:scaleX(1)}50%{transform:scale3d(1.05,1.05,1.05)}to{transform:scaleX(1)}}.pulse{animation-name:pulse}@keyframes rubberBand{0%{transform:scaleX(1)}30%{transform:scale3d(1.25,.75,1)}40%{transform:scale3d(.75,1.25,1)}50%{transform:scale3d(1.15,.85,1)}65%{transform:scale3d(.95,1.05,1)}75%{transform:scale3d(1.05,.95,1)}to{transform:scaleX(1)}}.rubberBand{animation-name:rubberBand}@keyframes shake{0%,to{transform:translateZ(0)}10%,30%,50%,70%,90%{transform:translate3d(-10px,0,0)}20%,40%,60%,80%{transform:translate3d(10px,0,0)}}.shake{animation-name:shake}@keyframes headShake{0%{transform:translateX(0)}6.5%{transform:translateX(-6px) rotateY(-9deg)}18.5%{transform:translateX(5px) rotateY(7deg)}31.5%{transform:translateX(-3px) rotateY(-5deg)}43.5%{transform:translateX(2px) rotateY(3deg)}50%{transform:translateX(0)}}.headShake{animation-timing-function:ease-in-out;animation-name:headShake}@keyframes swing{20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}to{transform:rotate(0deg)}}.swing{transform-origin:top center;animation-name:swing}@keyframes tada{0%{transform:scaleX(1)}10%,20%{transform:scale3d(.9,.9,.9) rotate(-3deg)}30%,50%,70%,90%{transform:scale3d(1.1,1.1,1.1) rotate(3deg)}40%,60%,80%{transform:scale3d(1.1,1.1,1.1) rotate(-3deg)}to{transform:scaleX(1)}}.tada{animation-name:tada}@keyframes wobble{0%{transform:none}15%{transform:translate3d(-25%,0,0) rotate(-5deg)}30%{transform:translate3d(20%,0,0) rotate(3deg)}45%{transform:translate3d(-15%,0,0) rotate(-3deg)}60%{transform:translate3d(10%,0,0) rotate(2deg)}75%{transform:translate3d(-5%,0,0) rotate(-1deg)}to{transform:none}}.wobble{animation-name:wobble}@keyframes jello{0%,11.1%,to{transform:none}22.2%{transform:skewX(-12.5deg) skewY(-12.5deg)}33.3%{transform:skewX(6.25deg) skewY(6.25deg)}44.4%{transform:skewX(-3.125deg) skewY(-3.125deg)}55.5%{transform:skewX(1.5625deg) skewY(1.5625deg)}66.6%{transform:skewX(-.78125deg) skewY(-.78125deg)}77.7%{transform:skewX(.390625deg) skewY(.390625deg)}88.8%{transform:skewX(-.1953125deg) skewY(-.1953125deg)}}.jello{animation-name:jello;transform-origin:center}@keyframes bounceIn{0%,20%,40%,60%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{opacity:1;transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scaleX(1)}}.bounceIn{animation-name:bounceIn}@keyframes bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}.bounceInDown{animation-name:bounceInDown}@keyframes bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}.bounceInLeft{animation-name:bounceInLeft}@keyframes bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}.bounceInRight{animation-name:bounceInRight}@keyframes bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}.bounceInUp{animation-name:bounceInUp}@keyframes bounceOut{20%{transform:scale3d(.9,.9,.9)}50%,55%{opacity:1;transform:scale3d(1.1,1.1,1.1)}to{opacity:0;transform:scale3d(.3,.3,.3)}}.bounceOut{animation-name:bounceOut}@keyframes bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.bounceOutDown{animation-name:bounceOutDown}@keyframes bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}.bounceOutLeft{animation-name:bounceOutLeft}@keyframes bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}.bounceOutRight{animation-name:bounceOutRight}@keyframes bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}.bounceOutUp{animation-name:bounceOutUp}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fadeIn{animation-name:fadeIn}@keyframes fadeInDown{0%{opacity:0;transform:translate3d(0,-100%,0)}to{opacity:1;transform:none}}.fadeInDown{animation-name:fadeInDown}@keyframes fadeInDownBig{0%{opacity:0;transform:translate3d(0,-2000px,0)}to{opacity:1;transform:none}}.fadeInDownBig{animation-name:fadeInDownBig}@keyframes fadeInLeft{0%{opacity:0;transform:translate3d(-100%,0,0)}to{opacity:1;transform:none}}.fadeInLeft{animation-name:fadeInLeft}@keyframes fadeInLeftBig{0%{opacity:0;transform:translate3d(-2000px,0,0)}to{opacity:1;transform:none}}.fadeInLeftBig{animation-name:fadeInLeftBig}@keyframes fadeInRight{0%{opacity:0;transform:translate3d(100%,0,0)}to{opacity:1;transform:none}}.fadeInRight{animation-name:fadeInRight}@keyframes fadeInRightBig{0%{opacity:0;transform:translate3d(2000px,0,0)}to{opacity:1;transform:none}}.fadeInRightBig{animation-name:fadeInRightBig}@keyframes fadeInUp{0%{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}.fadeInUp{animation-name:fadeInUp}@keyframes fadeInUpBig{0%{opacity:0;transform:translate3d(0,2000px,0)}to{opacity:1;transform:none}}.fadeInUpBig{animation-name:fadeInUpBig}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.fadeOut{animation-name:fadeOut}@keyframes fadeOutDown{0%{opacity:1}to{opacity:0;transform:translate3d(0,100%,0)}}.fadeOutDown{animation-name:fadeOutDown}@keyframes fadeOutDownBig{0%{opacity:1}to{opacity:0;transform:translate3d(0,2000px,0)}}.fadeOutDownBig{animation-name:fadeOutDownBig}@keyframes fadeOutLeft{0%{opacity:1}to{opacity:0;transform:translate3d(-100%,0,0)}}.fadeOutLeft{animation-name:fadeOutLeft}@keyframes fadeOutLeftBig{0%{opacity:1}to{opacity:0;transform:translate3d(-2000px,0,0)}}.fadeOutLeftBig{animation-name:fadeOutLeftBig}@keyframes fadeOutRight{0%{opacity:1}to{opacity:0;transform:translate3d(100%,0,0)}}.fadeOutRight{animation-name:fadeOutRight}@keyframes fadeOutRightBig{0%{opacity:1}to{opacity:0;transform:translate3d(2000px,0,0)}}.fadeOutRightBig{animation-name:fadeOutRightBig}@keyframes fadeOutUp{0%{opacity:1}to{opacity:0;transform:translate3d(0,-100%,0)}}.fadeOutUp{animation-name:fadeOutUp}@keyframes fadeOutUpBig{0%{opacity:1}to{opacity:0;transform:translate3d(0,-2000px,0)}}.fadeOutUpBig{animation-name:fadeOutUpBig}@keyframes flip{0%{transform:perspective(400px) rotateY(-1turn);animation-timing-function:ease-out}40%{transform:perspective(400px) translateZ(150px) rotateY(-190deg);animation-timing-function:ease-out}50%{transform:perspective(400px) translateZ(150px) rotateY(-170deg);animation-timing-function:ease-in}80%{transform:perspective(400px) scale3d(.95,.95,.95);animation-timing-function:ease-in}to{transform:perspective(400px);animation-timing-function:ease-in}}.animated.flip{-webkit-backface-visibility:visible;backface-visibility:visible;animation-name:flip}@keyframes flipInX{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}.flipInX{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;animation-name:flipInX}@keyframes flipInY{0%{transform:perspective(400px) rotateY(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateY(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateY(10deg);opacity:1}80%{transform:perspective(400px) rotateY(-5deg)}to{transform:perspective(400px)}}.flipInY{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;animation-name:flipInY}@keyframes flipOutX{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateX(-20deg);opacity:1}to{transform:perspective(400px) rotateX(90deg);opacity:0}}.flipOutX{animation-name:flipOutX;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}@keyframes flipOutY{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateY(-15deg);opacity:1}to{transform:perspective(400px) rotateY(90deg);opacity:0}}.flipOutY{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;animation-name:flipOutY}@keyframes lightSpeedIn{0%{transform:translate3d(100%,0,0) skewX(-30deg);opacity:0}60%{transform:skewX(20deg);opacity:1}80%{transform:skewX(-5deg);opacity:1}to{transform:none;opacity:1}}.lightSpeedIn{animation-name:lightSpeedIn;animation-timing-function:ease-out}@keyframes lightSpeedOut{0%{opacity:1}to{transform:translate3d(100%,0,0) skewX(30deg);opacity:0}}.lightSpeedOut{animation-name:lightSpeedOut;animation-timing-function:ease-in}@keyframes rotateIn{0%{transform-origin:center;transform:rotate(-200deg);opacity:0}to{transform-origin:center;transform:none;opacity:1}}.rotateIn{animation-name:rotateIn}@keyframes rotateInDownLeft{0%{transform-origin:left bottom;transform:rotate(-45deg);opacity:0}to{transform-origin:left bottom;transform:none;opacity:1}}.rotateInDownLeft{animation-name:rotateInDownLeft}@keyframes rotateInDownRight{0%{transform-origin:right bottom;transform:rotate(45deg);opacity:0}to{transform-origin:right bottom;transform:none;opacity:1}}.rotateInDownRight{animation-name:rotateInDownRight}@keyframes rotateInUpLeft{0%{transform-origin:left bottom;transform:rotate(45deg);opacity:0}to{transform-origin:left bottom;transform:none;opacity:1}}.rotateInUpLeft{animation-name:rotateInUpLeft}@keyframes rotateInUpRight{0%{transform-origin:right bottom;transform:rotate(-90deg);opacity:0}to{transform-origin:right bottom;transform:none;opacity:1}}.rotateInUpRight{animation-name:rotateInUpRight}@keyframes rotateOut{0%{transform-origin:center;opacity:1}to{transform-origin:center;transform:rotate(200deg);opacity:0}}.rotateOut{animation-name:rotateOut}@keyframes rotateOutDownLeft{0%{transform-origin:left bottom;opacity:1}to{transform-origin:left bottom;transform:rotate(45deg);opacity:0}}.rotateOutDownLeft{animation-name:rotateOutDownLeft}@keyframes rotateOutDownRight{0%{transform-origin:right bottom;opacity:1}to{transform-origin:right bottom;transform:rotate(-45deg);opacity:0}}.rotateOutDownRight{animation-name:rotateOutDownRight}@keyframes rotateOutUpLeft{0%{transform-origin:left bottom;opacity:1}to{transform-origin:left bottom;transform:rotate(-45deg);opacity:0}}.rotateOutUpLeft{animation-name:rotateOutUpLeft}@keyframes rotateOutUpRight{0%{transform-origin:right bottom;opacity:1}to{transform-origin:right bottom;transform:rotate(90deg);opacity:0}}.rotateOutUpRight{animation-name:rotateOutUpRight}@keyframes hinge{0%{transform-origin:top left;animation-timing-function:ease-in-out}20%,60%{transform:rotate(80deg);transform-origin:top left;animation-timing-function:ease-in-out}40%,80%{transform:rotate(60deg);transform-origin:top left;animation-timing-function:ease-in-out;opacity:1}to{transform:translate3d(0,700px,0);opacity:0}}.hinge{animation-name:hinge}@keyframes jackInTheBox{0%{opacity:0;transform:scale(.1) rotate(30deg);transform-origin:center bottom}50%{transform:rotate(-10deg)}70%{transform:rotate(3deg)}to{opacity:1;transform:scale(1)}}.jackInTheBox{animation-name:jackInTheBox}@keyframes rollIn{0%{opacity:0;transform:translate3d(-100%,0,0) rotate(-120deg)}to{opacity:1;transform:none}}.rollIn{animation-name:rollIn}@keyframes rollOut{0%{opacity:1}to{opacity:0;transform:translate3d(100%,0,0) rotate(120deg)}}.rollOut{animation-name:rollOut}@keyframes zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}.zoomIn{animation-name:zoomIn}@keyframes zoomInDown{0%{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,60px,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInDown{animation-name:zoomInDown}@keyframes zoomInLeft{0%{opacity:0;transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(10px,0,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInLeft{animation-name:zoomInLeft}@keyframes zoomInRight{0%{opacity:0;transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInRight{animation-name:zoomInRight}@keyframes zoomInUp{0%{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInUp{animation-name:zoomInUp}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.zoomOut{animation-name:zoomOut}@keyframes zoomOutDown{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform-origin:center bottom;animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomOutDown{animation-name:zoomOutDown}@keyframes zoomOutLeft{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}to{opacity:0;transform:scale(.1) translate3d(-2000px,0,0);transform-origin:left center}}.zoomOutLeft{animation-name:zoomOutLeft}@keyframes zoomOutRight{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}to{opacity:0;transform:scale(.1) translate3d(2000px,0,0);transform-origin:right center}}.zoomOutRight{animation-name:zoomOutRight}@keyframes zoomOutUp{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,60px,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform-origin:center bottom;animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomOutUp{animation-name:zoomOutUp}@keyframes slideInDown{0%{transform:translate3d(0,-100%,0);visibility:visible}to{transform:translateZ(0)}}.slideInDown{animation-name:slideInDown}@keyframes slideInLeft{0%{transform:translate3d(-100%,0,0);visibility:visible}to{transform:translateZ(0)}}.slideInLeft{animation-name:slideInLeft}@keyframes slideInRight{0%{transform:translate3d(100%,0,0);visibility:visible}to{transform:translateZ(0)}}.slideInRight{animation-name:slideInRight}@keyframes slideInUp{0%{transform:translate3d(0,100%,0);visibility:visible}to{transform:translateZ(0)}}.slideInUp{animation-name:slideInUp}@keyframes slideOutDown{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,100%,0)}}.slideOutDown{animation-name:slideOutDown}@keyframes slideOutLeft{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(-100%,0,0)}}.slideOutLeft{animation-name:slideOutLeft}@keyframes slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(100%,0,0)}}.slideOutRight{animation-name:slideOutRight}@keyframes slideOutUp{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,-100%,0)}}.slideOutUp{animation-name:slideOutUp} diff --git a/home/lib/counterup/counterup.min.js b/home/lib/counterup/counterup.min.js new file mode 100644 index 0000000..3531cbb --- /dev/null +++ b/home/lib/counterup/counterup.min.js @@ -0,0 +1,11 @@ +/*! + * jquery.counterup.js 2.1.0 + * + * Copyright 2013, Benjamin Intal http://gambit.ph @bfintal + * Released under the GPL v2 License + * + * Amended by Jeremy Paris, Ciro Mattia Gonano and others + * + * Date: Feb 24, 2017 + */ + (function($){"use strict";$.fn.counterUp=function(options){var settings=$.extend({time:400,delay:10,offset:100,beginAt:0,formatter:false,context:"window",callback:function(){}},options),s;return this.each(function(){var $this=$(this),counter={time:$(this).data("counterup-time")||settings.time,delay:$(this).data("counterup-delay")||settings.delay,offset:$(this).data("counterup-offset")||settings.offset,beginAt:$(this).data("counterup-beginat")||settings.beginAt,context:$(this).data("counterup-context")||settings.context};var counterUpper=function(){var nums=[];var divisions=counter.time/counter.delay;var num=$(this).attr("data-num")?$(this).attr("data-num"):$this.text();var isComma=/[0-9]+,[0-9]+/.test(num);num=num.replace(/,/g,"");var decimalPlaces=(num.split(".")[1]||[]).length;if(counter.beginAt>num)counter.beginAt=num;var isTime=/[0-9]+:[0-9]+:[0-9]+/.test(num);if(isTime){var times=num.split(":"),m=1;s=0;while(times.length>0){s+=m*parseInt(times.pop(),10);m*=60}}for(var i=divisions;i>=counter.beginAt/num*divisions;i--){var newNum=parseFloat(num/divisions*i).toFixed(decimalPlaces);if(isTime){newNum=parseInt(s/divisions*i);var hours=parseInt(newNum/3600)%24;var minutes=parseInt(newNum/60)%60;var seconds=parseInt(newNum%60,10);newNum=(hours<10?"0"+hours:hours)+":"+(minutes<10?"0"+minutes:minutes)+":"+(seconds<10?"0"+seconds:seconds)}if(isComma){while(/(\d+)(\d{3})/.test(newNum.toString())){newNum=newNum.toString().replace(/(\d+)(\d{3})/,"$1"+","+"$2")}}if(settings.formatter){newNum=settings.formatter.call(this,newNum)}nums.unshift(newNum)}$this.data("counterup-nums",nums);$this.text(counter.beginAt);var f=function(){if(!$this.data("counterup-nums")){settings.callback.call(this);return}$this.html($this.data("counterup-nums").shift());if($this.data("counterup-nums").length){setTimeout($this.data("counterup-func"),counter.delay)}else{$this.data("counterup-nums",null);$this.data("counterup-func",null);settings.callback.call(this)}};$this.data("counterup-func",f);setTimeout($this.data("counterup-func"),counter.delay)};$this.waypoint(function(direction){counterUpper();this.destroy()},{offset:counter.offset+"%",context:counter.context})})}})(jQuery); diff --git a/home/lib/easing/easing.js b/home/lib/easing/easing.js new file mode 100644 index 0000000..3b9c776 --- /dev/null +++ b/home/lib/easing/easing.js @@ -0,0 +1,168 @@ +/* + * jQuery Easing v1.4.1 - http://gsgd.co.uk/sandbox/jquery/easing/ + * Open source under the BSD License. + * Copyright © 2008 George McGinley Smith + * All rights reserved. + * https://raw.github.com/gdsmith/jquery-easing/master/LICENSE +*/ + +(function (factory) { + if (typeof define === "function" && define.amd) { + define(['jquery'], function ($) { + return factory($); + }); + } else if (typeof module === "object" && typeof module.exports === "object") { + exports = factory(require('jquery')); + } else { + factory(jQuery); + } +})(function($){ + +// Preserve the original jQuery "swing" easing as "jswing" +if (typeof $.easing !== 'undefined') { + $.easing['jswing'] = $.easing['swing']; +} + +var pow = Math.pow, + sqrt = Math.sqrt, + sin = Math.sin, + cos = Math.cos, + PI = Math.PI, + c1 = 1.70158, + c2 = c1 * 1.525, + c3 = c1 + 1, + c4 = ( 2 * PI ) / 3, + c5 = ( 2 * PI ) / 4.5; + +// x is the fraction of animation progress, in the range 0..1 +function bounceOut(x) { + var n1 = 7.5625, + d1 = 2.75; + if ( x < 1/d1 ) { + return n1*x*x; + } else if ( x < 2/d1 ) { + return n1*(x-=(1.5/d1))*x + .75; + } else if ( x < 2.5/d1 ) { + return n1*(x-=(2.25/d1))*x + .9375; + } else { + return n1*(x-=(2.625/d1))*x + .984375; + } +} + +$.extend( $.easing, +{ + def: 'easeOutQuad', + swing: function (x) { + return $.easing[$.easing.def](x); + }, + easeInQuad: function (x) { + return x * x; + }, + easeOutQuad: function (x) { + return 1 - ( 1 - x ) * ( 1 - x ); + }, + easeInOutQuad: function (x) { + return x < 0.5 ? + 2 * x * x : + 1 - pow( -2 * x + 2, 2 ) / 2; + }, + easeInCubic: function (x) { + return x * x * x; + }, + easeOutCubic: function (x) { + return 1 - pow( 1 - x, 3 ); + }, + easeInOutCubic: function (x) { + return x < 0.5 ? + 4 * x * x * x : + 1 - pow( -2 * x + 2, 3 ) / 2; + }, + easeInQuart: function (x) { + return x * x * x * x; + }, + easeOutQuart: function (x) { + return 1 - pow( 1 - x, 4 ); + }, + easeInOutQuart: function (x) { + return x < 0.5 ? + 8 * x * x * x * x : + 1 - pow( -2 * x + 2, 4 ) / 2; + }, + easeInQuint: function (x) { + return x * x * x * x * x; + }, + easeOutQuint: function (x) { + return 1 - pow( 1 - x, 5 ); + }, + easeInOutQuint: function (x) { + return x < 0.5 ? + 16 * x * x * x * x * x : + 1 - pow( -2 * x + 2, 5 ) / 2; + }, + easeInSine: function (x) { + return 1 - cos( x * PI/2 ); + }, + easeOutSine: function (x) { + return sin( x * PI/2 ); + }, + easeInOutSine: function (x) { + return -( cos( PI * x ) - 1 ) / 2; + }, + easeInExpo: function (x) { + return x === 0 ? 0 : pow( 2, 10 * x - 10 ); + }, + easeOutExpo: function (x) { + return x === 1 ? 1 : 1 - pow( 2, -10 * x ); + }, + easeInOutExpo: function (x) { + return x === 0 ? 0 : x === 1 ? 1 : x < 0.5 ? + pow( 2, 20 * x - 10 ) / 2 : + ( 2 - pow( 2, -20 * x + 10 ) ) / 2; + }, + easeInCirc: function (x) { + return 1 - sqrt( 1 - pow( x, 2 ) ); + }, + easeOutCirc: function (x) { + return sqrt( 1 - pow( x - 1, 2 ) ); + }, + easeInOutCirc: function (x) { + return x < 0.5 ? + ( 1 - sqrt( 1 - pow( 2 * x, 2 ) ) ) / 2 : + ( sqrt( 1 - pow( -2 * x + 2, 2 ) ) + 1 ) / 2; + }, + easeInElastic: function (x) { + return x === 0 ? 0 : x === 1 ? 1 : + -pow( 2, 10 * x - 10 ) * sin( ( x * 10 - 10.75 ) * c4 ); + }, + easeOutElastic: function (x) { + return x === 0 ? 0 : x === 1 ? 1 : + pow( 2, -10 * x ) * sin( ( x * 10 - 0.75 ) * c4 ) + 1; + }, + easeInOutElastic: function (x) { + return x === 0 ? 0 : x === 1 ? 1 : x < 0.5 ? + -( pow( 2, 20 * x - 10 ) * sin( ( 20 * x - 11.125 ) * c5 )) / 2 : + pow( 2, -20 * x + 10 ) * sin( ( 20 * x - 11.125 ) * c5 ) / 2 + 1; + }, + easeInBack: function (x) { + return c3 * x * x * x - c1 * x * x; + }, + easeOutBack: function (x) { + return 1 + c3 * pow( x - 1, 3 ) + c1 * pow( x - 1, 2 ); + }, + easeInOutBack: function (x) { + return x < 0.5 ? + ( pow( 2 * x, 2 ) * ( ( c2 + 1 ) * 2 * x - c2 ) ) / 2 : + ( pow( 2 * x - 2, 2 ) *( ( c2 + 1 ) * ( x * 2 - 2 ) + c2 ) + 2 ) / 2; + }, + easeInBounce: function (x) { + return 1 - bounceOut( 1 - x ); + }, + easeOutBounce: bounceOut, + easeInOutBounce: function (x) { + return x < 0.5 ? + ( 1 - bounceOut( 1 - 2 * x ) ) / 2 : + ( 1 + bounceOut( 2 * x - 1 ) ) / 2; + } +}); + +}); diff --git a/home/lib/easing/easing.min.js b/home/lib/easing/easing.min.js new file mode 100644 index 0000000..fc7dae4 --- /dev/null +++ b/home/lib/easing/easing.min.js @@ -0,0 +1 @@ +!function(n){"function"==typeof define&&define.amd?define(["jquery"],function(e){return n(e)}):"object"==typeof module&&"object"==typeof module.exports?exports=n(require("jquery")):n(jQuery)}(function(n){function e(n){var e=7.5625,t=2.75;return n<1/t?e*n*n:n<2/t?e*(n-=1.5/t)*n+.75:n<2.5/t?e*(n-=2.25/t)*n+.9375:e*(n-=2.625/t)*n+.984375}void 0!==n.easing&&(n.easing.jswing=n.easing.swing);var t=Math.pow,u=Math.sqrt,r=Math.sin,i=Math.cos,a=Math.PI,c=1.70158,o=1.525*c,s=2*a/3,f=2*a/4.5;n.extend(n.easing,{def:"easeOutQuad",swing:function(e){return n.easing[n.easing.def](e)},easeInQuad:function(n){return n*n},easeOutQuad:function(n){return 1-(1-n)*(1-n)},easeInOutQuad:function(n){return n<.5?2*n*n:1-t(-2*n+2,2)/2},easeInCubic:function(n){return n*n*n},easeOutCubic:function(n){return 1-t(1-n,3)},easeInOutCubic:function(n){return n<.5?4*n*n*n:1-t(-2*n+2,3)/2},easeInQuart:function(n){return n*n*n*n},easeOutQuart:function(n){return 1-t(1-n,4)},easeInOutQuart:function(n){return n<.5?8*n*n*n*n:1-t(-2*n+2,4)/2},easeInQuint:function(n){return n*n*n*n*n},easeOutQuint:function(n){return 1-t(1-n,5)},easeInOutQuint:function(n){return n<.5?16*n*n*n*n*n:1-t(-2*n+2,5)/2},easeInSine:function(n){return 1-i(n*a/2)},easeOutSine:function(n){return r(n*a/2)},easeInOutSine:function(n){return-(i(a*n)-1)/2},easeInExpo:function(n){return 0===n?0:t(2,10*n-10)},easeOutExpo:function(n){return 1===n?1:1-t(2,-10*n)},easeInOutExpo:function(n){return 0===n?0:1===n?1:n<.5?t(2,20*n-10)/2:(2-t(2,-20*n+10))/2},easeInCirc:function(n){return 1-u(1-t(n,2))},easeOutCirc:function(n){return u(1-t(n-1,2))},easeInOutCirc:function(n){return n<.5?(1-u(1-t(2*n,2)))/2:(u(1-t(-2*n+2,2))+1)/2},easeInElastic:function(n){return 0===n?0:1===n?1:-t(2,10*n-10)*r((10*n-10.75)*s)},easeOutElastic:function(n){return 0===n?0:1===n?1:t(2,-10*n)*r((10*n-.75)*s)+1},easeInOutElastic:function(n){return 0===n?0:1===n?1:n<.5?-(t(2,20*n-10)*r((20*n-11.125)*f))/2:t(2,-20*n+10)*r((20*n-11.125)*f)/2+1},easeInBack:function(n){return(c+1)*n*n*n-c*n*n},easeOutBack:function(n){return 1+(c+1)*t(n-1,3)+c*t(n-1,2)},easeInOutBack:function(n){return n<.5?t(2*n,2)*(7.189819*n-o)/2:(t(2*n-2,2)*((o+1)*(2*n-2)+o)+2)/2},easeInBounce:function(n){return 1-e(1-n)},easeOutBounce:e,easeInOutBounce:function(n){return n<.5?(1-e(1-2*n))/2:(1+e(2*n-1))/2}})}); diff --git a/home/lib/lightbox/css/lightbox.css b/home/lib/lightbox/css/lightbox.css new file mode 100644 index 0000000..a95d45a --- /dev/null +++ b/home/lib/lightbox/css/lightbox.css @@ -0,0 +1,207 @@ +html.lb-disable-scrolling { + overflow: hidden; + /* Position fixed required for iOS. Just putting overflow: hidden; on the body is not enough. */ + position: fixed; + height: 100vh; + width: 100vw; +} + +.lightboxOverlay { + position: absolute; + top: 0; + left: 0; + z-index: 9999; + background-color: black; + filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80); + opacity: 0.8; + display: none; +} + +.lightbox { + position: absolute; + left: 0; + width: 100%; + z-index: 10000; + text-align: center; + line-height: 0; + font-weight: normal; +} + +.lightbox .lb-image { + display: block; + height: auto; + max-width: inherit; + max-height: none; + border-radius: 3px; + + /* Image border */ + border: 4px solid white; +} + +.lightbox a img { + border: none; +} + +.lb-outerContainer { + position: relative; + *zoom: 1; + width: 250px; + height: 250px; + margin: 0 auto; + border-radius: 4px; + + /* Background color behind image. + This is visible during transitions. */ + background-color: white; +} + +.lb-outerContainer:after { + content: ""; + display: table; + clear: both; +} + +.lb-loader { + position: absolute; + top: 43%; + left: 0; + height: 25%; + width: 100%; + text-align: center; + line-height: 0; +} + +.lb-cancel { + display: block; + width: 32px; + height: 32px; + margin: 0 auto; + background: url(../images/loading.gif) no-repeat; +} + +.lb-nav { + position: absolute; + top: 0; + left: 0; + height: 100%; + width: 100%; + z-index: 10; +} + +.lb-container > .nav { + left: 0; +} + +.lb-nav a { + outline: none; + background-image: url('data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='); +} + +.lb-prev, .lb-next { + height: 100%; + cursor: pointer; + display: block; +} + +.lb-nav a.lb-prev { + width: 34%; + left: 0; + float: left; + background: url(../images/prev.png) left 48% no-repeat; + filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); + opacity: 0; + -webkit-transition: opacity 0.6s; + -moz-transition: opacity 0.6s; + -o-transition: opacity 0.6s; + transition: opacity 0.6s; +} + +.lb-nav a.lb-prev:hover { + filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100); + opacity: 1; +} + +.lb-nav a.lb-next { + width: 64%; + right: 0; + float: right; + background: url(../images/next.png) right 48% no-repeat; + filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); + opacity: 0; + -webkit-transition: opacity 0.6s; + -moz-transition: opacity 0.6s; + -o-transition: opacity 0.6s; + transition: opacity 0.6s; +} + +.lb-nav a.lb-next:hover { + filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100); + opacity: 1; +} + +.lb-dataContainer { + margin: 0 auto; + padding-top: 5px; + *zoom: 1; + width: 100%; + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; +} + +.lb-dataContainer:after { + content: ""; + display: table; + clear: both; +} + +.lb-data { + padding: 0 4px; + color: #ccc; +} + +.lb-data .lb-details { + width: 85%; + float: left; + text-align: left; + line-height: 1.1em; +} + +.lb-data .lb-caption { + font-size: 13px; + font-weight: bold; + line-height: 1em; +} + +.lb-data .lb-caption a { + color: #4ae; +} + +.lb-data .lb-number { + display: block; + clear: left; + padding-bottom: 1em; + font-size: 12px; + color: #999999; +} + +.lb-data .lb-close { + display: block; + float: right; + width: 30px; + height: 30px; + background: url(../images/close.png) top right no-repeat; + text-align: right; + outline: none; + filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); + opacity: 0.7; + -webkit-transition: opacity 0.2s; + -moz-transition: opacity 0.2s; + -o-transition: opacity 0.2s; + transition: opacity 0.2s; +} + +.lb-data .lb-close:hover { + cursor: pointer; + filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100); + opacity: 1; +} diff --git a/home/lib/lightbox/css/lightbox.min.css b/home/lib/lightbox/css/lightbox.min.css new file mode 100644 index 0000000..73f6a7c --- /dev/null +++ b/home/lib/lightbox/css/lightbox.min.css @@ -0,0 +1 @@ +.lb-loader,.lightbox{text-align:center;line-height:0}.lb-dataContainer:after,.lb-outerContainer:after{content:"";clear:both}html.lb-disable-scrolling{overflow:hidden;position:fixed;height:100vh;width:100vw}.lightboxOverlay{position:absolute;top:0;left:0;z-index:9999;background-color:#000;filter:alpha(Opacity=80);opacity:.8;display:none}.lightbox{position:absolute;left:0;width:100%;z-index:10000;font-weight:400}.lightbox .lb-image{display:block;height:auto;max-width:inherit;max-height:none;border-radius:3px;border:4px solid #fff}.lightbox a img{border:none}.lb-outerContainer{position:relative;width:250px;height:250px;margin:0 auto;border-radius:4px;background-color:#fff}.lb-loader,.lb-nav{position:absolute;left:0}.lb-outerContainer:after{display:table}.lb-loader{top:43%;height:25%;width:100%}.lb-cancel{display:block;width:32px;height:32px;margin:0 auto;background:url(../images/loading.gif) no-repeat}.lb-nav{top:0;height:100%;width:100%;z-index:10}.lb-container>.nav{left:0}.lb-nav a{outline:0;background-image:url(data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==)}.lb-next,.lb-prev{height:100%;cursor:pointer;display:block}.lb-nav a.lb-prev{width:34%;left:0;float:left;background:url(../images/prev.png) left 48% no-repeat;filter:alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;-moz-transition:opacity .6s;-o-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-prev:hover{filter:alpha(Opacity=100);opacity:1}.lb-nav a.lb-next{width:64%;right:0;float:right;background:url(../images/next.png) right 48% no-repeat;filter:alpha(Opacity=0);opacity:0;-webkit-transition:opacity .6s;-moz-transition:opacity .6s;-o-transition:opacity .6s;transition:opacity .6s}.lb-nav a.lb-next:hover{filter:alpha(Opacity=100);opacity:1}.lb-dataContainer{margin:0 auto;padding-top:5px;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.lb-dataContainer:after{display:table}.lb-data{padding:0 4px;color:#ccc}.lb-data .lb-details{width:85%;float:left;text-align:left;line-height:1.1em}.lb-data .lb-caption{font-size:13px;font-weight:700;line-height:1em}.lb-data .lb-caption a{color:#4ae}.lb-data .lb-number{display:block;clear:left;padding-bottom:1em;font-size:12px;color:#999}.lb-data .lb-close{display:block;float:right;width:30px;height:30px;background:url(../images/close.png) top right no-repeat;text-align:right;outline:0;filter:alpha(Opacity=70);opacity:.7;-webkit-transition:opacity .2s;-moz-transition:opacity .2s;-o-transition:opacity .2s;transition:opacity .2s}.lb-data .lb-close:hover{cursor:pointer;filter:alpha(Opacity=100);opacity:1} \ No newline at end of file diff --git a/home/lib/lightbox/images/close.png b/home/lib/lightbox/images/close.png new file mode 100644 index 0000000000000000000000000000000000000000..20baa1db5fdf9e22655a0f851c4401d36b9e7ef9 GIT binary patch literal 280 zcmeAS@N?(olHy`uVBq!ia0vp^(jd&i3?z4Pv7`ejn*g5>*Z=?j1DSvS{%vY%YG`Nx zvLV3R+Z)1I1qQoz?eg;S^6>Bg3hv&$d*{xbK#iaC4$A=f!X-g|!3vbDHnnh5Xg#OL;K8su!;fw4MC7hH<+BPou~5EnOggc)I$z JtaD0e0ssdsYEA$E literal 0 HcmV?d00001 diff --git a/home/lib/lightbox/images/loading.gif b/home/lib/lightbox/images/loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..5087c2a644223a95984baefdb74f39a287fdfd9a GIT binary patch literal 8476 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 S-YhKu0000 0) { + return; + } + + var self = this; + $('

').appendTo($('body')); + + // Cache jQuery objects + this.$lightbox = $('#lightbox'); + this.$overlay = $('#lightboxOverlay'); + this.$outerContainer = this.$lightbox.find('.lb-outerContainer'); + this.$container = this.$lightbox.find('.lb-container'); + this.$image = this.$lightbox.find('.lb-image'); + this.$nav = this.$lightbox.find('.lb-nav'); + + // Store css values for future lookup + this.containerPadding = { + top: parseInt(this.$container.css('padding-top'), 10), + right: parseInt(this.$container.css('padding-right'), 10), + bottom: parseInt(this.$container.css('padding-bottom'), 10), + left: parseInt(this.$container.css('padding-left'), 10) + }; + + this.imageBorderWidth = { + top: parseInt(this.$image.css('border-top-width'), 10), + right: parseInt(this.$image.css('border-right-width'), 10), + bottom: parseInt(this.$image.css('border-bottom-width'), 10), + left: parseInt(this.$image.css('border-left-width'), 10) + }; + + // Attach event handlers to the newly minted DOM elements + this.$overlay.hide().on('click', function() { + self.end(); + return false; + }); + + this.$lightbox.hide().on('click', function(event) { + if ($(event.target).attr('id') === 'lightbox') { + self.end(); + } + return false; + }); + + this.$outerContainer.on('click', function(event) { + if ($(event.target).attr('id') === 'lightbox') { + self.end(); + } + return false; + }); + + this.$lightbox.find('.lb-prev').on('click', function() { + if (self.currentImageIndex === 0) { + self.changeImage(self.album.length - 1); + } else { + self.changeImage(self.currentImageIndex - 1); + } + return false; + }); + + this.$lightbox.find('.lb-next').on('click', function() { + if (self.currentImageIndex === self.album.length - 1) { + self.changeImage(0); + } else { + self.changeImage(self.currentImageIndex + 1); + } + return false; + }); + + /* + Show context menu for image on right-click + + There is a div containing the navigation that spans the entire image and lives above of it. If + you right-click, you are right clicking this div and not the image. This prevents users from + saving the image or using other context menu actions with the image. + + To fix this, when we detect the right mouse button is pressed down, but not yet clicked, we + set pointer-events to none on the nav div. This is so that the upcoming right-click event on + the next mouseup will bubble down to the image. Once the right-click/contextmenu event occurs + we set the pointer events back to auto for the nav div so it can capture hover and left-click + events as usual. + */ + this.$nav.on('mousedown', function(event) { + if (event.which === 3) { + self.$nav.css('pointer-events', 'none'); + + self.$lightbox.one('contextmenu', function() { + setTimeout(function() { + this.$nav.css('pointer-events', 'auto'); + }.bind(self), 0); + }); + } + }); + + + this.$lightbox.find('.lb-loader, .lb-close').on('click', function() { + self.end(); + return false; + }); + }; + + // Show overlay and lightbox. If the image is part of a set, add siblings to album array. + Lightbox.prototype.start = function($link) { + var self = this; + var $window = $(window); + + $window.on('resize', $.proxy(this.sizeOverlay, this)); + + $('select, object, embed').css({ + visibility: 'hidden' + }); + + this.sizeOverlay(); + + this.album = []; + var imageNumber = 0; + + function addToAlbum($link) { + self.album.push({ + alt: $link.attr('data-alt'), + link: $link.attr('href'), + title: $link.attr('data-title') || $link.attr('title') + }); + } + + // Support both data-lightbox attribute and rel attribute implementations + var dataLightboxValue = $link.attr('data-lightbox'); + var $links; + + if (dataLightboxValue) { + $links = $($link.prop('tagName') + '[data-lightbox="' + dataLightboxValue + '"]'); + for (var i = 0; i < $links.length; i = ++i) { + addToAlbum($($links[i])); + if ($links[i] === $link[0]) { + imageNumber = i; + } + } + } else { + if ($link.attr('rel') === 'lightbox') { + // If image is not part of a set + addToAlbum($link); + } else { + // If image is part of a set + $links = $($link.prop('tagName') + '[rel="' + $link.attr('rel') + '"]'); + for (var j = 0; j < $links.length; j = ++j) { + addToAlbum($($links[j])); + if ($links[j] === $link[0]) { + imageNumber = j; + } + } + } + } + + // Position Lightbox + var top = $window.scrollTop() + this.options.positionFromTop; + var left = $window.scrollLeft(); + this.$lightbox.css({ + top: top + 'px', + left: left + 'px' + }).fadeIn(this.options.fadeDuration); + + // Disable scrolling of the page while open + if (this.options.disableScrolling) { + $('html').addClass('lb-disable-scrolling'); + } + + this.changeImage(imageNumber); + }; + + // Hide most UI elements in preparation for the animated resizing of the lightbox. + Lightbox.prototype.changeImage = function(imageNumber) { + var self = this; + + this.disableKeyboardNav(); + var $image = this.$lightbox.find('.lb-image'); + + this.$overlay.fadeIn(this.options.fadeDuration); + + $('.lb-loader').fadeIn('slow'); + this.$lightbox.find('.lb-image, .lb-nav, .lb-prev, .lb-next, .lb-dataContainer, .lb-numbers, .lb-caption').hide(); + + this.$outerContainer.addClass('animating'); + + // When image to show is preloaded, we send the width and height to sizeContainer() + var preloader = new Image(); + preloader.onload = function() { + var $preloader; + var imageHeight; + var imageWidth; + var maxImageHeight; + var maxImageWidth; + var windowHeight; + var windowWidth; + + $image.attr({ + 'alt': self.album[imageNumber].alt, + 'src': self.album[imageNumber].link + }); + + $preloader = $(preloader); + + $image.width(preloader.width); + $image.height(preloader.height); + + if (self.options.fitImagesInViewport) { + // Fit image inside the viewport. + // Take into account the border around the image and an additional 10px gutter on each side. + + windowWidth = $(window).width(); + windowHeight = $(window).height(); + maxImageWidth = windowWidth - self.containerPadding.left - self.containerPadding.right - self.imageBorderWidth.left - self.imageBorderWidth.right - 20; + maxImageHeight = windowHeight - self.containerPadding.top - self.containerPadding.bottom - self.imageBorderWidth.top - self.imageBorderWidth.bottom - 120; + + // Check if image size is larger then maxWidth|maxHeight in settings + if (self.options.maxWidth && self.options.maxWidth < maxImageWidth) { + maxImageWidth = self.options.maxWidth; + } + if (self.options.maxHeight && self.options.maxHeight < maxImageWidth) { + maxImageHeight = self.options.maxHeight; + } + + // Is the current image's width or height is greater than the maxImageWidth or maxImageHeight + // option than we need to size down while maintaining the aspect ratio. + if ((preloader.width > maxImageWidth) || (preloader.height > maxImageHeight)) { + if ((preloader.width / maxImageWidth) > (preloader.height / maxImageHeight)) { + imageWidth = maxImageWidth; + imageHeight = parseInt(preloader.height / (preloader.width / imageWidth), 10); + $image.width(imageWidth); + $image.height(imageHeight); + } else { + imageHeight = maxImageHeight; + imageWidth = parseInt(preloader.width / (preloader.height / imageHeight), 10); + $image.width(imageWidth); + $image.height(imageHeight); + } + } + } + self.sizeContainer($image.width(), $image.height()); + }; + + preloader.src = this.album[imageNumber].link; + this.currentImageIndex = imageNumber; + }; + + // Stretch overlay to fit the viewport + Lightbox.prototype.sizeOverlay = function() { + this.$overlay + .width($(document).width()) + .height($(document).height()); + }; + + // Animate the size of the lightbox to fit the image we are showing + Lightbox.prototype.sizeContainer = function(imageWidth, imageHeight) { + var self = this; + + var oldWidth = this.$outerContainer.outerWidth(); + var oldHeight = this.$outerContainer.outerHeight(); + var newWidth = imageWidth + this.containerPadding.left + this.containerPadding.right + this.imageBorderWidth.left + this.imageBorderWidth.right; + var newHeight = imageHeight + this.containerPadding.top + this.containerPadding.bottom + this.imageBorderWidth.top + this.imageBorderWidth.bottom; + + function postResize() { + self.$lightbox.find('.lb-dataContainer').width(newWidth); + self.$lightbox.find('.lb-prevLink').height(newHeight); + self.$lightbox.find('.lb-nextLink').height(newHeight); + self.showImage(); + } + + if (oldWidth !== newWidth || oldHeight !== newHeight) { + this.$outerContainer.animate({ + width: newWidth, + height: newHeight + }, this.options.resizeDuration, 'swing', function() { + postResize(); + }); + } else { + postResize(); + } + }; + + // Display the image and its details and begin preload neighboring images. + Lightbox.prototype.showImage = function() { + this.$lightbox.find('.lb-loader').stop(true).hide(); + this.$lightbox.find('.lb-image').fadeIn(this.options.imageFadeDuration); + + this.updateNav(); + this.updateDetails(); + this.preloadNeighboringImages(); + this.enableKeyboardNav(); + }; + + // Display previous and next navigation if appropriate. + Lightbox.prototype.updateNav = function() { + // Check to see if the browser supports touch events. If so, we take the conservative approach + // and assume that mouse hover events are not supported and always show prev/next navigation + // arrows in image sets. + var alwaysShowNav = false; + try { + document.createEvent('TouchEvent'); + alwaysShowNav = (this.options.alwaysShowNavOnTouchDevices) ? true : false; + } catch (e) {} + + this.$lightbox.find('.lb-nav').show(); + + if (this.album.length > 1) { + if (this.options.wrapAround) { + if (alwaysShowNav) { + this.$lightbox.find('.lb-prev, .lb-next').css('opacity', '1'); + } + this.$lightbox.find('.lb-prev, .lb-next').show(); + } else { + if (this.currentImageIndex > 0) { + this.$lightbox.find('.lb-prev').show(); + if (alwaysShowNav) { + this.$lightbox.find('.lb-prev').css('opacity', '1'); + } + } + if (this.currentImageIndex < this.album.length - 1) { + this.$lightbox.find('.lb-next').show(); + if (alwaysShowNav) { + this.$lightbox.find('.lb-next').css('opacity', '1'); + } + } + } + } + }; + + // Display caption, image number, and closing button. + Lightbox.prototype.updateDetails = function() { + var self = this; + + // Enable anchor clicks in the injected caption html. + // Thanks Nate Wright for the fix. @https://github.com/NateWr + if (typeof this.album[this.currentImageIndex].title !== 'undefined' && + this.album[this.currentImageIndex].title !== '') { + var $caption = this.$lightbox.find('.lb-caption'); + if (this.options.sanitizeTitle) { + $caption.text(this.album[this.currentImageIndex].title); + } else { + $caption.html(this.album[this.currentImageIndex].title); + } + $caption.fadeIn('fast') + .find('a').on('click', function(event) { + if ($(this).attr('target') !== undefined) { + window.open($(this).attr('href'), $(this).attr('target')); + } else { + location.href = $(this).attr('href'); + } + }); + } + + if (this.album.length > 1 && this.options.showImageNumberLabel) { + var labelText = this.imageCountLabel(this.currentImageIndex + 1, this.album.length); + this.$lightbox.find('.lb-number').text(labelText).fadeIn('fast'); + } else { + this.$lightbox.find('.lb-number').hide(); + } + + this.$outerContainer.removeClass('animating'); + + this.$lightbox.find('.lb-dataContainer').fadeIn(this.options.resizeDuration, function() { + return self.sizeOverlay(); + }); + }; + + // Preload previous and next images in set. + Lightbox.prototype.preloadNeighboringImages = function() { + if (this.album.length > this.currentImageIndex + 1) { + var preloadNext = new Image(); + preloadNext.src = this.album[this.currentImageIndex + 1].link; + } + if (this.currentImageIndex > 0) { + var preloadPrev = new Image(); + preloadPrev.src = this.album[this.currentImageIndex - 1].link; + } + }; + + Lightbox.prototype.enableKeyboardNav = function() { + $(document).on('keyup.keyboard', $.proxy(this.keyboardAction, this)); + }; + + Lightbox.prototype.disableKeyboardNav = function() { + $(document).off('.keyboard'); + }; + + Lightbox.prototype.keyboardAction = function(event) { + var KEYCODE_ESC = 27; + var KEYCODE_LEFTARROW = 37; + var KEYCODE_RIGHTARROW = 39; + + var keycode = event.keyCode; + var key = String.fromCharCode(keycode).toLowerCase(); + if (keycode === KEYCODE_ESC || key.match(/x|o|c/)) { + this.end(); + } else if (key === 'p' || keycode === KEYCODE_LEFTARROW) { + if (this.currentImageIndex !== 0) { + this.changeImage(this.currentImageIndex - 1); + } else if (this.options.wrapAround && this.album.length > 1) { + this.changeImage(this.album.length - 1); + } + } else if (key === 'n' || keycode === KEYCODE_RIGHTARROW) { + if (this.currentImageIndex !== this.album.length - 1) { + this.changeImage(this.currentImageIndex + 1); + } else if (this.options.wrapAround && this.album.length > 1) { + this.changeImage(0); + } + } + }; + + // Closing time. :-( + Lightbox.prototype.end = function() { + this.disableKeyboardNav(); + $(window).off('resize', this.sizeOverlay); + this.$lightbox.fadeOut(this.options.fadeDuration); + this.$overlay.fadeOut(this.options.fadeDuration); + $('select, object, embed').css({ + visibility: 'visible' + }); + if (this.options.disableScrolling) { + $('html').removeClass('lb-disable-scrolling'); + } + }; + + return new Lightbox(); +})); diff --git a/home/lib/lightbox/js/lightbox.min.js b/home/lib/lightbox/js/lightbox.min.js new file mode 100644 index 0000000..9f608e1 --- /dev/null +++ b/home/lib/lightbox/js/lightbox.min.js @@ -0,0 +1,15 @@ +/*! + * Lightbox v2.10.0 + * by Lokesh Dhakar + * + * More info: + * http://lokeshdhakar.com/projects/lightbox2/ + * + * Copyright 2007, 2018 Lokesh Dhakar + * Released under the MIT license + * https://github.com/lokesh/lightbox2/blob/master/LICENSE + * + * @preserve + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],b):"object"==typeof exports?module.exports=b(require("jquery")):a.lightbox=b(a.jQuery)}(this,function(a){function b(b){this.album=[],this.currentImageIndex=void 0,this.init(),this.options=a.extend({},this.constructor.defaults),this.option(b)}return b.defaults={albumLabel:"Image %1 of %2",alwaysShowNavOnTouchDevices:!1,fadeDuration:600,fitImagesInViewport:!0,imageFadeDuration:600,positionFromTop:50,resizeDuration:700,showImageNumberLabel:!0,wrapAround:!1,disableScrolling:!1,sanitizeTitle:!1},b.prototype.option=function(b){a.extend(this.options,b)},b.prototype.imageCountLabel=function(a,b){return this.options.albumLabel.replace(/%1/g,a).replace(/%2/g,b)},b.prototype.init=function(){var b=this;a(document).ready(function(){b.enable(),b.build()})},b.prototype.enable=function(){var b=this;a("body").on("click","a[rel^=lightbox], area[rel^=lightbox], a[data-lightbox], area[data-lightbox]",function(c){return b.start(a(c.currentTarget)),!1})},b.prototype.build=function(){if(!(a("#lightbox").length>0)){var b=this;a('
').appendTo(a("body")),this.$lightbox=a("#lightbox"),this.$overlay=a("#lightboxOverlay"),this.$outerContainer=this.$lightbox.find(".lb-outerContainer"),this.$container=this.$lightbox.find(".lb-container"),this.$image=this.$lightbox.find(".lb-image"),this.$nav=this.$lightbox.find(".lb-nav"),this.containerPadding={top:parseInt(this.$container.css("padding-top"),10),right:parseInt(this.$container.css("padding-right"),10),bottom:parseInt(this.$container.css("padding-bottom"),10),left:parseInt(this.$container.css("padding-left"),10)},this.imageBorderWidth={top:parseInt(this.$image.css("border-top-width"),10),right:parseInt(this.$image.css("border-right-width"),10),bottom:parseInt(this.$image.css("border-bottom-width"),10),left:parseInt(this.$image.css("border-left-width"),10)},this.$overlay.hide().on("click",function(){return b.end(),!1}),this.$lightbox.hide().on("click",function(c){return"lightbox"===a(c.target).attr("id")&&b.end(),!1}),this.$outerContainer.on("click",function(c){return"lightbox"===a(c.target).attr("id")&&b.end(),!1}),this.$lightbox.find(".lb-prev").on("click",function(){return 0===b.currentImageIndex?b.changeImage(b.album.length-1):b.changeImage(b.currentImageIndex-1),!1}),this.$lightbox.find(".lb-next").on("click",function(){return b.currentImageIndex===b.album.length-1?b.changeImage(0):b.changeImage(b.currentImageIndex+1),!1}),this.$nav.on("mousedown",function(a){3===a.which&&(b.$nav.css("pointer-events","none"),b.$lightbox.one("contextmenu",function(){setTimeout(function(){this.$nav.css("pointer-events","auto")}.bind(b),0)}))}),this.$lightbox.find(".lb-loader, .lb-close").on("click",function(){return b.end(),!1})}},b.prototype.start=function(b){function c(a){d.album.push({alt:a.attr("data-alt"),link:a.attr("href"),title:a.attr("data-title")||a.attr("title")})}var d=this,e=a(window);e.on("resize",a.proxy(this.sizeOverlay,this)),a("select, object, embed").css({visibility:"hidden"}),this.sizeOverlay(),this.album=[];var f,g=0,h=b.attr("data-lightbox");if(h){f=a(b.prop("tagName")+'[data-lightbox="'+h+'"]');for(var i=0;ii||e.height>h)&&(e.width/i>e.height/h?(g=i,f=parseInt(e.height/(e.width/g),10),d.width(g),d.height(f)):(f=h,g=parseInt(e.width/(e.height/f),10),d.width(g),d.height(f)))),c.sizeContainer(d.width(),d.height())},e.src=this.album[b].link,this.currentImageIndex=b},b.prototype.sizeOverlay=function(){this.$overlay.width(a(document).width()).height(a(document).height())},b.prototype.sizeContainer=function(a,b){function c(){d.$lightbox.find(".lb-dataContainer").width(g),d.$lightbox.find(".lb-prevLink").height(h),d.$lightbox.find(".lb-nextLink").height(h),d.showImage()}var d=this,e=this.$outerContainer.outerWidth(),f=this.$outerContainer.outerHeight(),g=a+this.containerPadding.left+this.containerPadding.right+this.imageBorderWidth.left+this.imageBorderWidth.right,h=b+this.containerPadding.top+this.containerPadding.bottom+this.imageBorderWidth.top+this.imageBorderWidth.bottom;e!==g||f!==h?this.$outerContainer.animate({width:g,height:h},this.options.resizeDuration,"swing",function(){c()}):c()},b.prototype.showImage=function(){this.$lightbox.find(".lb-loader").stop(!0).hide(),this.$lightbox.find(".lb-image").fadeIn(this.options.imageFadeDuration),this.updateNav(),this.updateDetails(),this.preloadNeighboringImages(),this.enableKeyboardNav()},b.prototype.updateNav=function(){var a=!1;try{document.createEvent("TouchEvent"),a=!!this.options.alwaysShowNavOnTouchDevices}catch(a){}this.$lightbox.find(".lb-nav").show(),this.album.length>1&&(this.options.wrapAround?(a&&this.$lightbox.find(".lb-prev, .lb-next").css("opacity","1"),this.$lightbox.find(".lb-prev, .lb-next").show()):(this.currentImageIndex>0&&(this.$lightbox.find(".lb-prev").show(),a&&this.$lightbox.find(".lb-prev").css("opacity","1")),this.currentImageIndex1&&this.options.showImageNumberLabel){var d=this.imageCountLabel(this.currentImageIndex+1,this.album.length);this.$lightbox.find(".lb-number").text(d).fadeIn("fast")}else this.$lightbox.find(".lb-number").hide();this.$outerContainer.removeClass("animating"),this.$lightbox.find(".lb-dataContainer").fadeIn(this.options.resizeDuration,function(){return b.sizeOverlay()})},b.prototype.preloadNeighboringImages=function(){if(this.album.length>this.currentImageIndex+1){(new Image).src=this.album[this.currentImageIndex+1].link}if(this.currentImageIndex>0){(new Image).src=this.album[this.currentImageIndex-1].link}},b.prototype.enableKeyboardNav=function(){a(document).on("keyup.keyboard",a.proxy(this.keyboardAction,this))},b.prototype.disableKeyboardNav=function(){a(document).off(".keyboard")},b.prototype.keyboardAction=function(a){var b=a.keyCode,c=String.fromCharCode(b).toLowerCase();27===b||c.match(/x|o|c/)?this.end():"p"===c||37===b?0!==this.currentImageIndex?this.changeImage(this.currentImageIndex-1):this.options.wrapAround&&this.album.length>1&&this.changeImage(this.album.length-1):"n"!==c&&39!==b||(this.currentImageIndex!==this.album.length-1?this.changeImage(this.currentImageIndex+1):this.options.wrapAround&&this.album.length>1&&this.changeImage(0))},b.prototype.end=function(){this.disableKeyboardNav(),a(window).off("resize",this.sizeOverlay),this.$lightbox.fadeOut(this.options.fadeDuration),this.$overlay.fadeOut(this.options.fadeDuration),a("select, object, embed").css({visibility:"visible"}),this.options.disableScrolling&&a("html").removeClass("lb-disable-scrolling")},new b}); +//# sourceMappingURL=lightbox.min.map \ No newline at end of file diff --git a/home/lib/lightbox/links.php b/home/lib/lightbox/links.php new file mode 100644 index 0000000..ed48fdf --- /dev/null +++ b/home/lib/lightbox/links.php @@ -0,0 +1,6 @@ + 'lib/lightbox/css/lightbox.min.css', + 'js' => 'lib/lightbox/js/lightbox.min.js' + ); +?> diff --git a/home/lib/owlcarousel/LICENSE b/home/lib/owlcarousel/LICENSE new file mode 100644 index 0000000..699398c --- /dev/null +++ b/home/lib/owlcarousel/LICENSE @@ -0,0 +1,23 @@ +Copyright (c) 2014 Owl +Modified work Copyright 2016 David Deutsch + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. diff --git a/home/lib/owlcarousel/assets/ajax-loader.gif b/home/lib/owlcarousel/assets/ajax-loader.gif new file mode 100644 index 0000000000000000000000000000000000000000..d3962f969930b0a5cb13fa079f273167082abf68 GIT binary patch literal 3208 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%0A;2lG!!z>8L*~z#POx} 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 literal 0 HcmV?d00001 diff --git a/home/lib/owlcarousel/owl.carousel.js b/home/lib/owlcarousel/owl.carousel.js new file mode 100644 index 0000000..c1d3ea7 --- /dev/null +++ b/home/lib/owlcarousel/owl.carousel.js @@ -0,0 +1,3275 @@ +/** + * Owl Carousel v2.2.1 + * Copyright 2013-2017 David Deutsch + * Licensed under () + */ +/** + * Owl carousel + * @version 2.1.6 + * @author Bartosz Wojciechowski + * @author David Deutsch + * @license The MIT License (MIT) + * @todo Lazy Load Icon + * @todo prevent animationend bubling + * @todo itemsScaleUp + * @todo Test Zepto + * @todo stagePadding calculate wrong active classes + */ +;(function($, window, document, undefined) { + + /** + * Creates a carousel. + * @class The Owl Carousel. + * @public + * @param {HTMLElement|jQuery} element - The element to create the carousel for. + * @param {Object} [options] - The options + */ + function Owl(element, options) { + + /** + * Current settings for the carousel. + * @public + */ + this.settings = null; + + /** + * Current options set by the caller including defaults. + * @public + */ + this.options = $.extend({}, Owl.Defaults, options); + + /** + * Plugin element. + * @public + */ + this.$element = $(element); + + /** + * Proxied event handlers. + * @protected + */ + this._handlers = {}; + + /** + * References to the running plugins of this carousel. + * @protected + */ + this._plugins = {}; + + /** + * Currently suppressed events to prevent them from beeing retriggered. + * @protected + */ + this._supress = {}; + + /** + * Absolute current position. + * @protected + */ + this._current = null; + + /** + * Animation speed in milliseconds. + * @protected + */ + this._speed = null; + + /** + * Coordinates of all items in pixel. + * @todo The name of this member is missleading. + * @protected + */ + this._coordinates = []; + + /** + * Current breakpoint. + * @todo Real media queries would be nice. + * @protected + */ + this._breakpoint = null; + + /** + * Current width of the plugin element. + */ + this._width = null; + + /** + * All real items. + * @protected + */ + this._items = []; + + /** + * All cloned items. + * @protected + */ + this._clones = []; + + /** + * Merge values of all items. + * @todo Maybe this could be part of a plugin. + * @protected + */ + this._mergers = []; + + /** + * Widths of all items. + */ + this._widths = []; + + /** + * Invalidated parts within the update process. + * @protected + */ + this._invalidated = {}; + + /** + * Ordered list of workers for the update process. + * @protected + */ + this._pipe = []; + + /** + * Current state information for the drag operation. + * @todo #261 + * @protected + */ + this._drag = { + time: null, + target: null, + pointer: null, + stage: { + start: null, + current: null + }, + direction: null + }; + + /** + * Current state information and their tags. + * @type {Object} + * @protected + */ + this._states = { + current: {}, + tags: { + 'initializing': [ 'busy' ], + 'animating': [ 'busy' ], + 'dragging': [ 'interacting' ] + } + }; + + $.each([ 'onResize', 'onThrottledResize' ], $.proxy(function(i, handler) { + this._handlers[handler] = $.proxy(this[handler], this); + }, this)); + + $.each(Owl.Plugins, $.proxy(function(key, plugin) { + this._plugins[key.charAt(0).toLowerCase() + key.slice(1)] + = new plugin(this); + }, this)); + + $.each(Owl.Workers, $.proxy(function(priority, worker) { + this._pipe.push({ + 'filter': worker.filter, + 'run': $.proxy(worker.run, this) + }); + }, this)); + + this.setup(); + this.initialize(); + } + + /** + * Default options for the carousel. + * @public + */ + Owl.Defaults = { + items: 3, + loop: false, + center: false, + rewind: false, + + mouseDrag: true, + touchDrag: true, + pullDrag: true, + freeDrag: false, + + margin: 0, + stagePadding: 0, + + merge: false, + mergeFit: true, + autoWidth: false, + + startPosition: 0, + rtl: false, + + smartSpeed: 250, + fluidSpeed: false, + dragEndSpeed: false, + + responsive: {}, + responsiveRefreshRate: 200, + responsiveBaseElement: window, + + fallbackEasing: 'swing', + + info: false, + + nestedItemSelector: false, + itemElement: 'div', + stageElement: 'div', + + refreshClass: 'owl-refresh', + loadedClass: 'owl-loaded', + loadingClass: 'owl-loading', + rtlClass: 'owl-rtl', + responsiveClass: 'owl-responsive', + dragClass: 'owl-drag', + itemClass: 'owl-item', + stageClass: 'owl-stage', + stageOuterClass: 'owl-stage-outer', + grabClass: 'owl-grab' + }; + + /** + * Enumeration for width. + * @public + * @readonly + * @enum {String} + */ + Owl.Width = { + Default: 'default', + Inner: 'inner', + Outer: 'outer' + }; + + /** + * Enumeration for types. + * @public + * @readonly + * @enum {String} + */ + Owl.Type = { + Event: 'event', + State: 'state' + }; + + /** + * Contains all registered plugins. + * @public + */ + Owl.Plugins = {}; + + /** + * List of workers involved in the update process. + */ + Owl.Workers = [ { + filter: [ 'width', 'settings' ], + run: function() { + this._width = this.$element.width(); + } + }, { + filter: [ 'width', 'items', 'settings' ], + run: function(cache) { + cache.current = this._items && this._items[this.relative(this._current)]; + } + }, { + filter: [ 'items', 'settings' ], + run: function() { + this.$stage.children('.cloned').remove(); + } + }, { + filter: [ 'width', 'items', 'settings' ], + run: function(cache) { + var margin = this.settings.margin || '', + grid = !this.settings.autoWidth, + rtl = this.settings.rtl, + css = { + 'width': 'auto', + 'margin-left': rtl ? margin : '', + 'margin-right': rtl ? '' : margin + }; + + !grid && this.$stage.children().css(css); + + cache.css = css; + } + }, { + filter: [ 'width', 'items', 'settings' ], + run: function(cache) { + var width = (this.width() / this.settings.items).toFixed(3) - this.settings.margin, + merge = null, + iterator = this._items.length, + grid = !this.settings.autoWidth, + widths = []; + + cache.items = { + merge: false, + width: width + }; + + while (iterator--) { + merge = this._mergers[iterator]; + merge = this.settings.mergeFit && Math.min(merge, this.settings.items) || merge; + + cache.items.merge = merge > 1 || cache.items.merge; + + widths[iterator] = !grid ? this._items[iterator].width() : width * merge; + } + + this._widths = widths; + } + }, { + filter: [ 'items', 'settings' ], + run: function() { + var clones = [], + items = this._items, + settings = this.settings, + // TODO: Should be computed from number of min width items in stage + view = Math.max(settings.items * 2, 4), + size = Math.ceil(items.length / 2) * 2, + repeat = settings.loop && items.length ? settings.rewind ? view : Math.max(view, size) : 0, + append = '', + prepend = ''; + + repeat /= 2; + + while (repeat--) { + // Switch to only using appended clones + clones.push(this.normalize(clones.length / 2, true)); + append = append + items[clones[clones.length - 1]][0].outerHTML; + clones.push(this.normalize(items.length - 1 - (clones.length - 1) / 2, true)); + prepend = items[clones[clones.length - 1]][0].outerHTML + prepend; + } + + this._clones = clones; + + $(append).addClass('cloned').appendTo(this.$stage); + $(prepend).addClass('cloned').prependTo(this.$stage); + } + }, { + filter: [ 'width', 'items', 'settings' ], + run: function() { + var rtl = this.settings.rtl ? 1 : -1, + size = this._clones.length + this._items.length, + iterator = -1, + previous = 0, + current = 0, + coordinates = []; + + while (++iterator < size) { + previous = coordinates[iterator - 1] || 0; + current = this._widths[this.relative(iterator)] + this.settings.margin; + coordinates.push(previous + current * rtl); + } + + this._coordinates = coordinates; + } + }, { + filter: [ 'width', 'items', 'settings' ], + run: function() { + var padding = this.settings.stagePadding, + coordinates = this._coordinates, + css = { + 'width': Math.ceil(Math.abs(coordinates[coordinates.length - 1])) + padding * 2, + 'padding-left': padding || '', + 'padding-right': padding || '' + }; + + this.$stage.css(css); + } + }, { + filter: [ 'width', 'items', 'settings' ], + run: function(cache) { + var iterator = this._coordinates.length, + grid = !this.settings.autoWidth, + items = this.$stage.children(); + + if (grid && cache.items.merge) { + while (iterator--) { + cache.css.width = this._widths[this.relative(iterator)]; + items.eq(iterator).css(cache.css); + } + } else if (grid) { + cache.css.width = cache.items.width; + items.css(cache.css); + } + } + }, { + filter: [ 'items' ], + run: function() { + this._coordinates.length < 1 && this.$stage.removeAttr('style'); + } + }, { + filter: [ 'width', 'items', 'settings' ], + run: function(cache) { + cache.current = cache.current ? this.$stage.children().index(cache.current) : 0; + cache.current = Math.max(this.minimum(), Math.min(this.maximum(), cache.current)); + this.reset(cache.current); + } + }, { + filter: [ 'position' ], + run: function() { + this.animate(this.coordinates(this._current)); + } + }, { + filter: [ 'width', 'position', 'items', 'settings' ], + run: function() { + var rtl = this.settings.rtl ? 1 : -1, + padding = this.settings.stagePadding * 2, + begin = this.coordinates(this.current()) + padding, + end = begin + this.width() * rtl, + inner, outer, matches = [], i, n; + + for (i = 0, n = this._coordinates.length; i < n; i++) { + inner = this._coordinates[i - 1] || 0; + outer = Math.abs(this._coordinates[i]) + padding * rtl; + + if ((this.op(inner, '<=', begin) && (this.op(inner, '>', end))) + || (this.op(outer, '<', begin) && this.op(outer, '>', end))) { + matches.push(i); + } + } + + this.$stage.children('.active').removeClass('active'); + this.$stage.children(':eq(' + matches.join('), :eq(') + ')').addClass('active'); + + if (this.settings.center) { + this.$stage.children('.center').removeClass('center'); + this.$stage.children().eq(this.current()).addClass('center'); + } + } + } ]; + + /** + * Initializes the carousel. + * @protected + */ + Owl.prototype.initialize = function() { + this.enter('initializing'); + this.trigger('initialize'); + + this.$element.toggleClass(this.settings.rtlClass, this.settings.rtl); + + if (this.settings.autoWidth && !this.is('pre-loading')) { + var imgs, nestedSelector, width; + imgs = this.$element.find('img'); + nestedSelector = this.settings.nestedItemSelector ? '.' + this.settings.nestedItemSelector : undefined; + width = this.$element.children(nestedSelector).width(); + + if (imgs.length && width <= 0) { + this.preloadAutoWidthImages(imgs); + } + } + + this.$element.addClass(this.options.loadingClass); + + // create stage + this.$stage = $('<' + this.settings.stageElement + ' class="' + this.settings.stageClass + '"/>') + .wrap('
'); + + // append stage + this.$element.append(this.$stage.parent()); + + // append content + this.replace(this.$element.children().not(this.$stage.parent())); + + // check visibility + if (this.$element.is(':visible')) { + // update view + this.refresh(); + } else { + // invalidate width + this.invalidate('width'); + } + + this.$element + .removeClass(this.options.loadingClass) + .addClass(this.options.loadedClass); + + // register event handlers + this.registerEventHandlers(); + + this.leave('initializing'); + this.trigger('initialized'); + }; + + /** + * Setups the current settings. + * @todo Remove responsive classes. Why should adaptive designs be brought into IE8? + * @todo Support for media queries by using `matchMedia` would be nice. + * @public + */ + Owl.prototype.setup = function() { + var viewport = this.viewport(), + overwrites = this.options.responsive, + match = -1, + settings = null; + + if (!overwrites) { + settings = $.extend({}, this.options); + } else { + $.each(overwrites, function(breakpoint) { + if (breakpoint <= viewport && breakpoint > match) { + match = Number(breakpoint); + } + }); + + settings = $.extend({}, this.options, overwrites[match]); + if (typeof settings.stagePadding === 'function') { + settings.stagePadding = settings.stagePadding(); + } + delete settings.responsive; + + // responsive class + if (settings.responsiveClass) { + this.$element.attr('class', + this.$element.attr('class').replace(new RegExp('(' + this.options.responsiveClass + '-)\\S+\\s', 'g'), '$1' + match) + ); + } + } + + this.trigger('change', { property: { name: 'settings', value: settings } }); + this._breakpoint = match; + this.settings = settings; + this.invalidate('settings'); + this.trigger('changed', { property: { name: 'settings', value: this.settings } }); + }; + + /** + * Updates option logic if necessery. + * @protected + */ + Owl.prototype.optionsLogic = function() { + if (this.settings.autoWidth) { + this.settings.stagePadding = false; + this.settings.merge = false; + } + }; + + /** + * Prepares an item before add. + * @todo Rename event parameter `content` to `item`. + * @protected + * @returns {jQuery|HTMLElement} - The item container. + */ + Owl.prototype.prepare = function(item) { + var event = this.trigger('prepare', { content: item }); + + if (!event.data) { + event.data = $('<' + this.settings.itemElement + '/>') + .addClass(this.options.itemClass).append(item) + } + + this.trigger('prepared', { content: event.data }); + + return event.data; + }; + + /** + * Updates the view. + * @public + */ + Owl.prototype.update = function() { + var i = 0, + n = this._pipe.length, + filter = $.proxy(function(p) { return this[p] }, this._invalidated), + cache = {}; + + while (i < n) { + if (this._invalidated.all || $.grep(this._pipe[i].filter, filter).length > 0) { + this._pipe[i].run(cache); + } + i++; + } + + this._invalidated = {}; + + !this.is('valid') && this.enter('valid'); + }; + + /** + * Gets the width of the view. + * @public + * @param {Owl.Width} [dimension=Owl.Width.Default] - The dimension to return. + * @returns {Number} - The width of the view in pixel. + */ + Owl.prototype.width = function(dimension) { + dimension = dimension || Owl.Width.Default; + switch (dimension) { + case Owl.Width.Inner: + case Owl.Width.Outer: + return this._width; + default: + return this._width - this.settings.stagePadding * 2 + this.settings.margin; + } + }; + + /** + * Refreshes the carousel primarily for adaptive purposes. + * @public + */ + Owl.prototype.refresh = function() { + this.enter('refreshing'); + this.trigger('refresh'); + + this.setup(); + + this.optionsLogic(); + + this.$element.addClass(this.options.refreshClass); + + this.update(); + + this.$element.removeClass(this.options.refreshClass); + + this.leave('refreshing'); + this.trigger('refreshed'); + }; + + /** + * Checks window `resize` event. + * @protected + */ + Owl.prototype.onThrottledResize = function() { + window.clearTimeout(this.resizeTimer); + this.resizeTimer = window.setTimeout(this._handlers.onResize, this.settings.responsiveRefreshRate); + }; + + /** + * Checks window `resize` event. + * @protected + */ + Owl.prototype.onResize = function() { + if (!this._items.length) { + return false; + } + + if (this._width === this.$element.width()) { + return false; + } + + if (!this.$element.is(':visible')) { + return false; + } + + this.enter('resizing'); + + if (this.trigger('resize').isDefaultPrevented()) { + this.leave('resizing'); + return false; + } + + this.invalidate('width'); + + this.refresh(); + + this.leave('resizing'); + this.trigger('resized'); + }; + + /** + * Registers event handlers. + * @todo Check `msPointerEnabled` + * @todo #261 + * @protected + */ + Owl.prototype.registerEventHandlers = function() { + if ($.support.transition) { + this.$stage.on($.support.transition.end + '.owl.core', $.proxy(this.onTransitionEnd, this)); + } + + if (this.settings.responsive !== false) { + this.on(window, 'resize', this._handlers.onThrottledResize); + } + + if (this.settings.mouseDrag) { + this.$element.addClass(this.options.dragClass); + this.$stage.on('mousedown.owl.core', $.proxy(this.onDragStart, this)); + this.$stage.on('dragstart.owl.core selectstart.owl.core', function() { return false }); + } + + if (this.settings.touchDrag){ + this.$stage.on('touchstart.owl.core', $.proxy(this.onDragStart, this)); + this.$stage.on('touchcancel.owl.core', $.proxy(this.onDragEnd, this)); + } + }; + + /** + * Handles `touchstart` and `mousedown` events. + * @todo Horizontal swipe threshold as option + * @todo #261 + * @protected + * @param {Event} event - The event arguments. + */ + Owl.prototype.onDragStart = function(event) { + var stage = null; + + if (event.which === 3) { + return; + } + + if ($.support.transform) { + stage = this.$stage.css('transform').replace(/.*\(|\)| /g, '').split(','); + stage = { + x: stage[stage.length === 16 ? 12 : 4], + y: stage[stage.length === 16 ? 13 : 5] + }; + } else { + stage = this.$stage.position(); + stage = { + x: this.settings.rtl ? + stage.left + this.$stage.width() - this.width() + this.settings.margin : + stage.left, + y: stage.top + }; + } + + if (this.is('animating')) { + $.support.transform ? this.animate(stage.x) : this.$stage.stop() + this.invalidate('position'); + } + + this.$element.toggleClass(this.options.grabClass, event.type === 'mousedown'); + + this.speed(0); + + this._drag.time = new Date().getTime(); + this._drag.target = $(event.target); + this._drag.stage.start = stage; + this._drag.stage.current = stage; + this._drag.pointer = this.pointer(event); + + $(document).on('mouseup.owl.core touchend.owl.core', $.proxy(this.onDragEnd, this)); + + $(document).one('mousemove.owl.core touchmove.owl.core', $.proxy(function(event) { + var delta = this.difference(this._drag.pointer, this.pointer(event)); + + $(document).on('mousemove.owl.core touchmove.owl.core', $.proxy(this.onDragMove, this)); + + if (Math.abs(delta.x) < Math.abs(delta.y) && this.is('valid')) { + return; + } + + event.preventDefault(); + + this.enter('dragging'); + this.trigger('drag'); + }, this)); + }; + + /** + * Handles the `touchmove` and `mousemove` events. + * @todo #261 + * @protected + * @param {Event} event - The event arguments. + */ + Owl.prototype.onDragMove = function(event) { + var minimum = null, + maximum = null, + pull = null, + delta = this.difference(this._drag.pointer, this.pointer(event)), + stage = this.difference(this._drag.stage.start, delta); + + if (!this.is('dragging')) { + return; + } + + event.preventDefault(); + + if (this.settings.loop) { + minimum = this.coordinates(this.minimum()); + maximum = this.coordinates(this.maximum() + 1) - minimum; + stage.x = (((stage.x - minimum) % maximum + maximum) % maximum) + minimum; + } else { + minimum = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum()); + maximum = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum()); + pull = this.settings.pullDrag ? -1 * delta.x / 5 : 0; + stage.x = Math.max(Math.min(stage.x, minimum + pull), maximum + pull); + } + + this._drag.stage.current = stage; + + this.animate(stage.x); + }; + + /** + * Handles the `touchend` and `mouseup` events. + * @todo #261 + * @todo Threshold for click event + * @protected + * @param {Event} event - The event arguments. + */ + Owl.prototype.onDragEnd = function(event) { + var delta = this.difference(this._drag.pointer, this.pointer(event)), + stage = this._drag.stage.current, + direction = delta.x > 0 ^ this.settings.rtl ? 'left' : 'right'; + + $(document).off('.owl.core'); + + this.$element.removeClass(this.options.grabClass); + + if (delta.x !== 0 && this.is('dragging') || !this.is('valid')) { + this.speed(this.settings.dragEndSpeed || this.settings.smartSpeed); + this.current(this.closest(stage.x, delta.x !== 0 ? direction : this._drag.direction)); + this.invalidate('position'); + this.update(); + + this._drag.direction = direction; + + if (Math.abs(delta.x) > 3 || new Date().getTime() - this._drag.time > 300) { + this._drag.target.one('click.owl.core', function() { return false; }); + } + } + + if (!this.is('dragging')) { + return; + } + + this.leave('dragging'); + this.trigger('dragged'); + }; + + /** + * Gets absolute position of the closest item for a coordinate. + * @todo Setting `freeDrag` makes `closest` not reusable. See #165. + * @protected + * @param {Number} coordinate - The coordinate in pixel. + * @param {String} direction - The direction to check for the closest item. Ether `left` or `right`. + * @return {Number} - The absolute position of the closest item. + */ + Owl.prototype.closest = function(coordinate, direction) { + var position = -1, + pull = 30, + width = this.width(), + coordinates = this.coordinates(); + + if (!this.settings.freeDrag) { + // check closest item + $.each(coordinates, $.proxy(function(index, value) { + // on a left pull, check on current index + if (direction === 'left' && coordinate > value - pull && coordinate < value + pull) { + position = index; + // on a right pull, check on previous index + // to do so, subtract width from value and set position = index + 1 + } else if (direction === 'right' && coordinate > value - width - pull && coordinate < value - width + pull) { + position = index + 1; + } else if (this.op(coordinate, '<', value) + && this.op(coordinate, '>', coordinates[index + 1] || value - width)) { + position = direction === 'left' ? index + 1 : index; + } + return position === -1; + }, this)); + } + + if (!this.settings.loop) { + // non loop boundries + if (this.op(coordinate, '>', coordinates[this.minimum()])) { + position = coordinate = this.minimum(); + } else if (this.op(coordinate, '<', coordinates[this.maximum()])) { + position = coordinate = this.maximum(); + } + } + + return position; + }; + + /** + * Animates the stage. + * @todo #270 + * @public + * @param {Number} coordinate - The coordinate in pixels. + */ + Owl.prototype.animate = function(coordinate) { + var animate = this.speed() > 0; + + this.is('animating') && this.onTransitionEnd(); + + if (animate) { + this.enter('animating'); + this.trigger('translate'); + } + + if ($.support.transform3d && $.support.transition) { + this.$stage.css({ + transform: 'translate3d(' + coordinate + 'px,0px,0px)', + transition: (this.speed() / 1000) + 's' + }); + } else if (animate) { + this.$stage.animate({ + left: coordinate + 'px' + }, this.speed(), this.settings.fallbackEasing, $.proxy(this.onTransitionEnd, this)); + } else { + this.$stage.css({ + left: coordinate + 'px' + }); + } + }; + + /** + * Checks whether the carousel is in a specific state or not. + * @param {String} state - The state to check. + * @returns {Boolean} - The flag which indicates if the carousel is busy. + */ + Owl.prototype.is = function(state) { + return this._states.current[state] && this._states.current[state] > 0; + }; + + /** + * Sets the absolute position of the current item. + * @public + * @param {Number} [position] - The new absolute position or nothing to leave it unchanged. + * @returns {Number} - The absolute position of the current item. + */ + Owl.prototype.current = function(position) { + if (position === undefined) { + return this._current; + } + + if (this._items.length === 0) { + return undefined; + } + + position = this.normalize(position); + + if (this._current !== position) { + var event = this.trigger('change', { property: { name: 'position', value: position } }); + + if (event.data !== undefined) { + position = this.normalize(event.data); + } + + this._current = position; + + this.invalidate('position'); + + this.trigger('changed', { property: { name: 'position', value: this._current } }); + } + + return this._current; + }; + + /** + * Invalidates the given part of the update routine. + * @param {String} [part] - The part to invalidate. + * @returns {Array.} - The invalidated parts. + */ + Owl.prototype.invalidate = function(part) { + if ($.type(part) === 'string') { + this._invalidated[part] = true; + this.is('valid') && this.leave('valid'); + } + return $.map(this._invalidated, function(v, i) { return i }); + }; + + /** + * Resets the absolute position of the current item. + * @public + * @param {Number} position - The absolute position of the new item. + */ + Owl.prototype.reset = function(position) { + position = this.normalize(position); + + if (position === undefined) { + return; + } + + this._speed = 0; + this._current = position; + + this.suppress([ 'translate', 'translated' ]); + + this.animate(this.coordinates(position)); + + this.release([ 'translate', 'translated' ]); + }; + + /** + * Normalizes an absolute or a relative position of an item. + * @public + * @param {Number} position - The absolute or relative position to normalize. + * @param {Boolean} [relative=false] - Whether the given position is relative or not. + * @returns {Number} - The normalized position. + */ + Owl.prototype.normalize = function(position, relative) { + var n = this._items.length, + m = relative ? 0 : this._clones.length; + + if (!this.isNumeric(position) || n < 1) { + position = undefined; + } else if (position < 0 || position >= n + m) { + position = ((position - m / 2) % n + n) % n + m / 2; + } + + return position; + }; + + /** + * Converts an absolute position of an item into a relative one. + * @public + * @param {Number} position - The absolute position to convert. + * @returns {Number} - The converted position. + */ + Owl.prototype.relative = function(position) { + position -= this._clones.length / 2; + return this.normalize(position, true); + }; + + /** + * Gets the maximum position for the current item. + * @public + * @param {Boolean} [relative=false] - Whether to return an absolute position or a relative position. + * @returns {Number} + */ + Owl.prototype.maximum = function(relative) { + var settings = this.settings, + maximum = this._coordinates.length, + iterator, + reciprocalItemsWidth, + elementWidth; + + if (settings.loop) { + maximum = this._clones.length / 2 + this._items.length - 1; + } else if (settings.autoWidth || settings.merge) { + iterator = this._items.length; + reciprocalItemsWidth = this._items[--iterator].width(); + elementWidth = this.$element.width(); + while (iterator--) { + reciprocalItemsWidth += this._items[iterator].width() + this.settings.margin; + if (reciprocalItemsWidth > elementWidth) { + break; + } + } + maximum = iterator + 1; + } else if (settings.center) { + maximum = this._items.length - 1; + } else { + maximum = this._items.length - settings.items; + } + + if (relative) { + maximum -= this._clones.length / 2; + } + + return Math.max(maximum, 0); + }; + + /** + * Gets the minimum position for the current item. + * @public + * @param {Boolean} [relative=false] - Whether to return an absolute position or a relative position. + * @returns {Number} + */ + Owl.prototype.minimum = function(relative) { + return relative ? 0 : this._clones.length / 2; + }; + + /** + * Gets an item at the specified relative position. + * @public + * @param {Number} [position] - The relative position of the item. + * @return {jQuery|Array.} - The item at the given position or all items if no position was given. + */ + Owl.prototype.items = function(position) { + if (position === undefined) { + return this._items.slice(); + } + + position = this.normalize(position, true); + return this._items[position]; + }; + + /** + * Gets an item at the specified relative position. + * @public + * @param {Number} [position] - The relative position of the item. + * @return {jQuery|Array.} - The item at the given position or all items if no position was given. + */ + Owl.prototype.mergers = function(position) { + if (position === undefined) { + return this._mergers.slice(); + } + + position = this.normalize(position, true); + return this._mergers[position]; + }; + + /** + * Gets the absolute positions of clones for an item. + * @public + * @param {Number} [position] - The relative position of the item. + * @returns {Array.} - The absolute positions of clones for the item or all if no position was given. + */ + Owl.prototype.clones = function(position) { + var odd = this._clones.length / 2, + even = odd + this._items.length, + map = function(index) { return index % 2 === 0 ? even + index / 2 : odd - (index + 1) / 2 }; + + if (position === undefined) { + return $.map(this._clones, function(v, i) { return map(i) }); + } + + return $.map(this._clones, function(v, i) { return v === position ? map(i) : null }); + }; + + /** + * Sets the current animation speed. + * @public + * @param {Number} [speed] - The animation speed in milliseconds or nothing to leave it unchanged. + * @returns {Number} - The current animation speed in milliseconds. + */ + Owl.prototype.speed = function(speed) { + if (speed !== undefined) { + this._speed = speed; + } + + return this._speed; + }; + + /** + * Gets the coordinate of an item. + * @todo The name of this method is missleanding. + * @public + * @param {Number} position - The absolute position of the item within `minimum()` and `maximum()`. + * @returns {Number|Array.} - The coordinate of the item in pixel or all coordinates. + */ + Owl.prototype.coordinates = function(position) { + var multiplier = 1, + newPosition = position - 1, + coordinate; + + if (position === undefined) { + return $.map(this._coordinates, $.proxy(function(coordinate, index) { + return this.coordinates(index); + }, this)); + } + + if (this.settings.center) { + if (this.settings.rtl) { + multiplier = -1; + newPosition = position + 1; + } + + coordinate = this._coordinates[position]; + coordinate += (this.width() - coordinate + (this._coordinates[newPosition] || 0)) / 2 * multiplier; + } else { + coordinate = this._coordinates[newPosition] || 0; + } + + coordinate = Math.ceil(coordinate); + + return coordinate; + }; + + /** + * Calculates the speed for a translation. + * @protected + * @param {Number} from - The absolute position of the start item. + * @param {Number} to - The absolute position of the target item. + * @param {Number} [factor=undefined] - The time factor in milliseconds. + * @returns {Number} - The time in milliseconds for the translation. + */ + Owl.prototype.duration = function(from, to, factor) { + if (factor === 0) { + return 0; + } + + return Math.min(Math.max(Math.abs(to - from), 1), 6) * Math.abs((factor || this.settings.smartSpeed)); + }; + + /** + * Slides to the specified item. + * @public + * @param {Number} position - The position of the item. + * @param {Number} [speed] - The time in milliseconds for the transition. + */ + Owl.prototype.to = function(position, speed) { + var current = this.current(), + revert = null, + distance = position - this.relative(current), + direction = (distance > 0) - (distance < 0), + items = this._items.length, + minimum = this.minimum(), + maximum = this.maximum(); + + if (this.settings.loop) { + if (!this.settings.rewind && Math.abs(distance) > items / 2) { + distance += direction * -1 * items; + } + + position = current + distance; + revert = ((position - minimum) % items + items) % items + minimum; + + if (revert !== position && revert - distance <= maximum && revert - distance > 0) { + current = revert - distance; + position = revert; + this.reset(current); + } + } else if (this.settings.rewind) { + maximum += 1; + position = (position % maximum + maximum) % maximum; + } else { + position = Math.max(minimum, Math.min(maximum, position)); + } + + this.speed(this.duration(current, position, speed)); + this.current(position); + + if (this.$element.is(':visible')) { + this.update(); + } + }; + + /** + * Slides to the next item. + * @public + * @param {Number} [speed] - The time in milliseconds for the transition. + */ + Owl.prototype.next = function(speed) { + speed = speed || false; + this.to(this.relative(this.current()) + 1, speed); + }; + + /** + * Slides to the previous item. + * @public + * @param {Number} [speed] - The time in milliseconds for the transition. + */ + Owl.prototype.prev = function(speed) { + speed = speed || false; + this.to(this.relative(this.current()) - 1, speed); + }; + + /** + * Handles the end of an animation. + * @protected + * @param {Event} event - The event arguments. + */ + Owl.prototype.onTransitionEnd = function(event) { + + // if css2 animation then event object is undefined + if (event !== undefined) { + event.stopPropagation(); + + // Catch only owl-stage transitionEnd event + if ((event.target || event.srcElement || event.originalTarget) !== this.$stage.get(0)) { + return false; + } + } + + this.leave('animating'); + this.trigger('translated'); + }; + + /** + * Gets viewport width. + * @protected + * @return {Number} - The width in pixel. + */ + Owl.prototype.viewport = function() { + var width; + if (this.options.responsiveBaseElement !== window) { + width = $(this.options.responsiveBaseElement).width(); + } else if (window.innerWidth) { + width = window.innerWidth; + } else if (document.documentElement && document.documentElement.clientWidth) { + width = document.documentElement.clientWidth; + } else { + console.warn('Can not detect viewport width.'); + } + return width; + }; + + /** + * Replaces the current content. + * @public + * @param {HTMLElement|jQuery|String} content - The new content. + */ + Owl.prototype.replace = function(content) { + this.$stage.empty(); + this._items = []; + + if (content) { + content = (content instanceof jQuery) ? content : $(content); + } + + if (this.settings.nestedItemSelector) { + content = content.find('.' + this.settings.nestedItemSelector); + } + + content.filter(function() { + return this.nodeType === 1; + }).each($.proxy(function(index, item) { + item = this.prepare(item); + this.$stage.append(item); + this._items.push(item); + this._mergers.push(item.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1); + }, this)); + + this.reset(this.isNumeric(this.settings.startPosition) ? this.settings.startPosition : 0); + + this.invalidate('items'); + }; + + /** + * Adds an item. + * @todo Use `item` instead of `content` for the event arguments. + * @public + * @param {HTMLElement|jQuery|String} content - The item content to add. + * @param {Number} [position] - The relative position at which to insert the item otherwise the item will be added to the end. + */ + Owl.prototype.add = function(content, position) { + var current = this.relative(this._current); + + position = position === undefined ? this._items.length : this.normalize(position, true); + content = content instanceof jQuery ? content : $(content); + + this.trigger('add', { content: content, position: position }); + + content = this.prepare(content); + + if (this._items.length === 0 || position === this._items.length) { + this._items.length === 0 && this.$stage.append(content); + this._items.length !== 0 && this._items[position - 1].after(content); + this._items.push(content); + this._mergers.push(content.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1); + } else { + this._items[position].before(content); + this._items.splice(position, 0, content); + this._mergers.splice(position, 0, content.find('[data-merge]').addBack('[data-merge]').attr('data-merge') * 1 || 1); + } + + this._items[current] && this.reset(this._items[current].index()); + + this.invalidate('items'); + + this.trigger('added', { content: content, position: position }); + }; + + /** + * Removes an item by its position. + * @todo Use `item` instead of `content` for the event arguments. + * @public + * @param {Number} position - The relative position of the item to remove. + */ + Owl.prototype.remove = function(position) { + position = this.normalize(position, true); + + if (position === undefined) { + return; + } + + this.trigger('remove', { content: this._items[position], position: position }); + + this._items[position].remove(); + this._items.splice(position, 1); + this._mergers.splice(position, 1); + + this.invalidate('items'); + + this.trigger('removed', { content: null, position: position }); + }; + + /** + * Preloads images with auto width. + * @todo Replace by a more generic approach + * @protected + */ + Owl.prototype.preloadAutoWidthImages = function(images) { + images.each($.proxy(function(i, element) { + this.enter('pre-loading'); + element = $(element); + $(new Image()).one('load', $.proxy(function(e) { + element.attr('src', e.target.src); + element.css('opacity', 1); + this.leave('pre-loading'); + !this.is('pre-loading') && !this.is('initializing') && this.refresh(); + }, this)).attr('src', element.attr('src') || element.attr('data-src') || element.attr('data-src-retina')); + }, this)); + }; + + /** + * Destroys the carousel. + * @public + */ + Owl.prototype.destroy = function() { + + this.$element.off('.owl.core'); + this.$stage.off('.owl.core'); + $(document).off('.owl.core'); + + if (this.settings.responsive !== false) { + window.clearTimeout(this.resizeTimer); + this.off(window, 'resize', this._handlers.onThrottledResize); + } + + for (var i in this._plugins) { + this._plugins[i].destroy(); + } + + this.$stage.children('.cloned').remove(); + + this.$stage.unwrap(); + this.$stage.children().contents().unwrap(); + this.$stage.children().unwrap(); + + this.$element + .removeClass(this.options.refreshClass) + .removeClass(this.options.loadingClass) + .removeClass(this.options.loadedClass) + .removeClass(this.options.rtlClass) + .removeClass(this.options.dragClass) + .removeClass(this.options.grabClass) + .attr('class', this.$element.attr('class').replace(new RegExp(this.options.responsiveClass + '-\\S+\\s', 'g'), '')) + .removeData('owl.carousel'); + }; + + /** + * Operators to calculate right-to-left and left-to-right. + * @protected + * @param {Number} [a] - The left side operand. + * @param {String} [o] - The operator. + * @param {Number} [b] - The right side operand. + */ + Owl.prototype.op = function(a, o, b) { + var rtl = this.settings.rtl; + switch (o) { + case '<': + return rtl ? a > b : a < b; + case '>': + return rtl ? a < b : a > b; + case '>=': + return rtl ? a <= b : a >= b; + case '<=': + return rtl ? a >= b : a <= b; + default: + break; + } + }; + + /** + * Attaches to an internal event. + * @protected + * @param {HTMLElement} element - The event source. + * @param {String} event - The event name. + * @param {Function} listener - The event handler to attach. + * @param {Boolean} capture - Wether the event should be handled at the capturing phase or not. + */ + Owl.prototype.on = function(element, event, listener, capture) { + if (element.addEventListener) { + element.addEventListener(event, listener, capture); + } else if (element.attachEvent) { + element.attachEvent('on' + event, listener); + } + }; + + /** + * Detaches from an internal event. + * @protected + * @param {HTMLElement} element - The event source. + * @param {String} event - The event name. + * @param {Function} listener - The attached event handler to detach. + * @param {Boolean} capture - Wether the attached event handler was registered as a capturing listener or not. + */ + Owl.prototype.off = function(element, event, listener, capture) { + if (element.removeEventListener) { + element.removeEventListener(event, listener, capture); + } else if (element.detachEvent) { + element.detachEvent('on' + event, listener); + } + }; + + /** + * Triggers a public event. + * @todo Remove `status`, `relatedTarget` should be used instead. + * @protected + * @param {String} name - The event name. + * @param {*} [data=null] - The event data. + * @param {String} [namespace=carousel] - The event namespace. + * @param {String} [state] - The state which is associated with the event. + * @param {Boolean} [enter=false] - Indicates if the call enters the specified state or not. + * @returns {Event} - The event arguments. + */ + Owl.prototype.trigger = function(name, data, namespace, state, enter) { + var status = { + item: { count: this._items.length, index: this.current() } + }, handler = $.camelCase( + $.grep([ 'on', name, namespace ], function(v) { return v }) + .join('-').toLowerCase() + ), event = $.Event( + [ name, 'owl', namespace || 'carousel' ].join('.').toLowerCase(), + $.extend({ relatedTarget: this }, status, data) + ); + + if (!this._supress[name]) { + $.each(this._plugins, function(name, plugin) { + if (plugin.onTrigger) { + plugin.onTrigger(event); + } + }); + + this.register({ type: Owl.Type.Event, name: name }); + this.$element.trigger(event); + + if (this.settings && typeof this.settings[handler] === 'function') { + this.settings[handler].call(this, event); + } + } + + return event; + }; + + /** + * Enters a state. + * @param name - The state name. + */ + Owl.prototype.enter = function(name) { + $.each([ name ].concat(this._states.tags[name] || []), $.proxy(function(i, name) { + if (this._states.current[name] === undefined) { + this._states.current[name] = 0; + } + + this._states.current[name]++; + }, this)); + }; + + /** + * Leaves a state. + * @param name - The state name. + */ + Owl.prototype.leave = function(name) { + $.each([ name ].concat(this._states.tags[name] || []), $.proxy(function(i, name) { + this._states.current[name]--; + }, this)); + }; + + /** + * Registers an event or state. + * @public + * @param {Object} object - The event or state to register. + */ + Owl.prototype.register = function(object) { + if (object.type === Owl.Type.Event) { + if (!$.event.special[object.name]) { + $.event.special[object.name] = {}; + } + + if (!$.event.special[object.name].owl) { + var _default = $.event.special[object.name]._default; + $.event.special[object.name]._default = function(e) { + if (_default && _default.apply && (!e.namespace || e.namespace.indexOf('owl') === -1)) { + return _default.apply(this, arguments); + } + return e.namespace && e.namespace.indexOf('owl') > -1; + }; + $.event.special[object.name].owl = true; + } + } else if (object.type === Owl.Type.State) { + if (!this._states.tags[object.name]) { + this._states.tags[object.name] = object.tags; + } else { + this._states.tags[object.name] = this._states.tags[object.name].concat(object.tags); + } + + this._states.tags[object.name] = $.grep(this._states.tags[object.name], $.proxy(function(tag, i) { + return $.inArray(tag, this._states.tags[object.name]) === i; + }, this)); + } + }; + + /** + * Suppresses events. + * @protected + * @param {Array.} events - The events to suppress. + */ + Owl.prototype.suppress = function(events) { + $.each(events, $.proxy(function(index, event) { + this._supress[event] = true; + }, this)); + }; + + /** + * Releases suppressed events. + * @protected + * @param {Array.} events - The events to release. + */ + Owl.prototype.release = function(events) { + $.each(events, $.proxy(function(index, event) { + delete this._supress[event]; + }, this)); + }; + + /** + * Gets unified pointer coordinates from event. + * @todo #261 + * @protected + * @param {Event} - The `mousedown` or `touchstart` event. + * @returns {Object} - Contains `x` and `y` coordinates of current pointer position. + */ + Owl.prototype.pointer = function(event) { + var result = { x: null, y: null }; + + event = event.originalEvent || event || window.event; + + event = event.touches && event.touches.length ? + event.touches[0] : event.changedTouches && event.changedTouches.length ? + event.changedTouches[0] : event; + + if (event.pageX) { + result.x = event.pageX; + result.y = event.pageY; + } else { + result.x = event.clientX; + result.y = event.clientY; + } + + return result; + }; + + /** + * Determines if the input is a Number or something that can be coerced to a Number + * @protected + * @param {Number|String|Object|Array|Boolean|RegExp|Function|Symbol} - The input to be tested + * @returns {Boolean} - An indication if the input is a Number or can be coerced to a Number + */ + Owl.prototype.isNumeric = function(number) { + return !isNaN(parseFloat(number)); + }; + + /** + * Gets the difference of two vectors. + * @todo #261 + * @protected + * @param {Object} - The first vector. + * @param {Object} - The second vector. + * @returns {Object} - The difference. + */ + Owl.prototype.difference = function(first, second) { + return { + x: first.x - second.x, + y: first.y - second.y + }; + }; + + /** + * The jQuery Plugin for the Owl Carousel + * @todo Navigation plugin `next` and `prev` + * @public + */ + $.fn.owlCarousel = function(option) { + var args = Array.prototype.slice.call(arguments, 1); + + return this.each(function() { + var $this = $(this), + data = $this.data('owl.carousel'); + + if (!data) { + data = new Owl(this, typeof option == 'object' && option); + $this.data('owl.carousel', data); + + $.each([ + 'next', 'prev', 'to', 'destroy', 'refresh', 'replace', 'add', 'remove' + ], function(i, event) { + data.register({ type: Owl.Type.Event, name: event }); + data.$element.on(event + '.owl.carousel.core', $.proxy(function(e) { + if (e.namespace && e.relatedTarget !== this) { + this.suppress([ event ]); + data[event].apply(this, [].slice.call(arguments, 1)); + this.release([ event ]); + } + }, data)); + }); + } + + if (typeof option == 'string' && option.charAt(0) !== '_') { + data[option].apply(data, args); + } + }); + }; + + /** + * The constructor for the jQuery Plugin + * @public + */ + $.fn.owlCarousel.Constructor = Owl; + +})(window.Zepto || window.jQuery, window, document); + +/** + * AutoRefresh Plugin + * @version 2.1.0 + * @author Artus Kolanowski + * @author David Deutsch + * @license The MIT License (MIT) + */ +;(function($, window, document, undefined) { + + /** + * Creates the auto refresh plugin. + * @class The Auto Refresh Plugin + * @param {Owl} carousel - The Owl Carousel + */ + var AutoRefresh = function(carousel) { + /** + * Reference to the core. + * @protected + * @type {Owl} + */ + this._core = carousel; + + /** + * Refresh interval. + * @protected + * @type {number} + */ + this._interval = null; + + /** + * Whether the element is currently visible or not. + * @protected + * @type {Boolean} + */ + this._visible = null; + + /** + * All event handlers. + * @protected + * @type {Object} + */ + this._handlers = { + 'initialized.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._core.settings.autoRefresh) { + this.watch(); + } + }, this) + }; + + // set default options + this._core.options = $.extend({}, AutoRefresh.Defaults, this._core.options); + + // register event handlers + this._core.$element.on(this._handlers); + }; + + /** + * Default options. + * @public + */ + AutoRefresh.Defaults = { + autoRefresh: true, + autoRefreshInterval: 500 + }; + + /** + * Watches the element. + */ + AutoRefresh.prototype.watch = function() { + if (this._interval) { + return; + } + + this._visible = this._core.$element.is(':visible'); + this._interval = window.setInterval($.proxy(this.refresh, this), this._core.settings.autoRefreshInterval); + }; + + /** + * Refreshes the element. + */ + AutoRefresh.prototype.refresh = function() { + if (this._core.$element.is(':visible') === this._visible) { + return; + } + + this._visible = !this._visible; + + this._core.$element.toggleClass('owl-hidden', !this._visible); + + this._visible && (this._core.invalidate('width') && this._core.refresh()); + }; + + /** + * Destroys the plugin. + */ + AutoRefresh.prototype.destroy = function() { + var handler, property; + + window.clearInterval(this._interval); + + for (handler in this._handlers) { + this._core.$element.off(handler, this._handlers[handler]); + } + for (property in Object.getOwnPropertyNames(this)) { + typeof this[property] != 'function' && (this[property] = null); + } + }; + + $.fn.owlCarousel.Constructor.Plugins.AutoRefresh = AutoRefresh; + +})(window.Zepto || window.jQuery, window, document); + +/** + * Lazy Plugin + * @version 2.1.0 + * @author Bartosz Wojciechowski + * @author David Deutsch + * @license The MIT License (MIT) + */ +;(function($, window, document, undefined) { + + /** + * Creates the lazy plugin. + * @class The Lazy Plugin + * @param {Owl} carousel - The Owl Carousel + */ + var Lazy = function(carousel) { + + /** + * Reference to the core. + * @protected + * @type {Owl} + */ + this._core = carousel; + + /** + * Already loaded items. + * @protected + * @type {Array.} + */ + this._loaded = []; + + /** + * Event handlers. + * @protected + * @type {Object} + */ + this._handlers = { + 'initialized.owl.carousel change.owl.carousel resized.owl.carousel': $.proxy(function(e) { + if (!e.namespace) { + return; + } + + if (!this._core.settings || !this._core.settings.lazyLoad) { + return; + } + + if ((e.property && e.property.name == 'position') || e.type == 'initialized') { + var settings = this._core.settings, + n = (settings.center && Math.ceil(settings.items / 2) || settings.items), + i = ((settings.center && n * -1) || 0), + position = (e.property && e.property.value !== undefined ? e.property.value : this._core.current()) + i, + clones = this._core.clones().length, + load = $.proxy(function(i, v) { this.load(v) }, this); + + while (i++ < n) { + this.load(clones / 2 + this._core.relative(position)); + clones && $.each(this._core.clones(this._core.relative(position)), load); + position++; + } + } + }, this) + }; + + // set the default options + this._core.options = $.extend({}, Lazy.Defaults, this._core.options); + + // register event handler + this._core.$element.on(this._handlers); + }; + + /** + * Default options. + * @public + */ + Lazy.Defaults = { + lazyLoad: false + }; + + /** + * Loads all resources of an item at the specified position. + * @param {Number} position - The absolute position of the item. + * @protected + */ + Lazy.prototype.load = function(position) { + var $item = this._core.$stage.children().eq(position), + $elements = $item && $item.find('.owl-lazy'); + + if (!$elements || $.inArray($item.get(0), this._loaded) > -1) { + return; + } + + $elements.each($.proxy(function(index, element) { + var $element = $(element), image, + url = (window.devicePixelRatio > 1 && $element.attr('data-src-retina')) || $element.attr('data-src'); + + this._core.trigger('load', { element: $element, url: url }, 'lazy'); + + if ($element.is('img')) { + $element.one('load.owl.lazy', $.proxy(function() { + $element.css('opacity', 1); + this._core.trigger('loaded', { element: $element, url: url }, 'lazy'); + }, this)).attr('src', url); + } else { + image = new Image(); + image.onload = $.proxy(function() { + $element.css({ + 'background-image': 'url("' + url + '")', + 'opacity': '1' + }); + this._core.trigger('loaded', { element: $element, url: url }, 'lazy'); + }, this); + image.src = url; + } + }, this)); + + this._loaded.push($item.get(0)); + }; + + /** + * Destroys the plugin. + * @public + */ + Lazy.prototype.destroy = function() { + var handler, property; + + for (handler in this.handlers) { + this._core.$element.off(handler, this.handlers[handler]); + } + for (property in Object.getOwnPropertyNames(this)) { + typeof this[property] != 'function' && (this[property] = null); + } + }; + + $.fn.owlCarousel.Constructor.Plugins.Lazy = Lazy; + +})(window.Zepto || window.jQuery, window, document); + +/** + * AutoHeight Plugin + * @version 2.1.0 + * @author Bartosz Wojciechowski + * @author David Deutsch + * @license The MIT License (MIT) + */ +;(function($, window, document, undefined) { + + /** + * Creates the auto height plugin. + * @class The Auto Height Plugin + * @param {Owl} carousel - The Owl Carousel + */ + var AutoHeight = function(carousel) { + /** + * Reference to the core. + * @protected + * @type {Owl} + */ + this._core = carousel; + + /** + * All event handlers. + * @protected + * @type {Object} + */ + this._handlers = { + 'initialized.owl.carousel refreshed.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._core.settings.autoHeight) { + this.update(); + } + }, this), + 'changed.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._core.settings.autoHeight && e.property.name == 'position'){ + this.update(); + } + }, this), + 'loaded.owl.lazy': $.proxy(function(e) { + if (e.namespace && this._core.settings.autoHeight + && e.element.closest('.' + this._core.settings.itemClass).index() === this._core.current()) { + this.update(); + } + }, this) + }; + + // set default options + this._core.options = $.extend({}, AutoHeight.Defaults, this._core.options); + + // register event handlers + this._core.$element.on(this._handlers); + }; + + /** + * Default options. + * @public + */ + AutoHeight.Defaults = { + autoHeight: false, + autoHeightClass: 'owl-height' + }; + + /** + * Updates the view. + */ + AutoHeight.prototype.update = function() { + var start = this._core._current, + end = start + this._core.settings.items, + visible = this._core.$stage.children().toArray().slice(start, end), + heights = [], + maxheight = 0; + + $.each(visible, function(index, item) { + heights.push($(item).height()); + }); + + maxheight = Math.max.apply(null, heights); + + this._core.$stage.parent() + .height(maxheight) + .addClass(this._core.settings.autoHeightClass); + }; + + AutoHeight.prototype.destroy = function() { + var handler, property; + + for (handler in this._handlers) { + this._core.$element.off(handler, this._handlers[handler]); + } + for (property in Object.getOwnPropertyNames(this)) { + typeof this[property] != 'function' && (this[property] = null); + } + }; + + $.fn.owlCarousel.Constructor.Plugins.AutoHeight = AutoHeight; + +})(window.Zepto || window.jQuery, window, document); + +/** + * Video Plugin + * @version 2.1.0 + * @author Bartosz Wojciechowski + * @author David Deutsch + * @license The MIT License (MIT) + */ +;(function($, window, document, undefined) { + + /** + * Creates the video plugin. + * @class The Video Plugin + * @param {Owl} carousel - The Owl Carousel + */ + var Video = function(carousel) { + /** + * Reference to the core. + * @protected + * @type {Owl} + */ + this._core = carousel; + + /** + * Cache all video URLs. + * @protected + * @type {Object} + */ + this._videos = {}; + + /** + * Current playing item. + * @protected + * @type {jQuery} + */ + this._playing = null; + + /** + * All event handlers. + * @todo The cloned content removale is too late + * @protected + * @type {Object} + */ + this._handlers = { + 'initialized.owl.carousel': $.proxy(function(e) { + if (e.namespace) { + this._core.register({ type: 'state', name: 'playing', tags: [ 'interacting' ] }); + } + }, this), + 'resize.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._core.settings.video && this.isInFullScreen()) { + e.preventDefault(); + } + }, this), + 'refreshed.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._core.is('resizing')) { + this._core.$stage.find('.cloned .owl-video-frame').remove(); + } + }, this), + 'changed.owl.carousel': $.proxy(function(e) { + if (e.namespace && e.property.name === 'position' && this._playing) { + this.stop(); + } + }, this), + 'prepared.owl.carousel': $.proxy(function(e) { + if (!e.namespace) { + return; + } + + var $element = $(e.content).find('.owl-video'); + + if ($element.length) { + $element.css('display', 'none'); + this.fetch($element, $(e.content)); + } + }, this) + }; + + // set default options + this._core.options = $.extend({}, Video.Defaults, this._core.options); + + // register event handlers + this._core.$element.on(this._handlers); + + this._core.$element.on('click.owl.video', '.owl-video-play-icon', $.proxy(function(e) { + this.play(e); + }, this)); + }; + + /** + * Default options. + * @public + */ + Video.Defaults = { + video: false, + videoHeight: false, + videoWidth: false + }; + + /** + * Gets the video ID and the type (YouTube/Vimeo/vzaar only). + * @protected + * @param {jQuery} target - The target containing the video data. + * @param {jQuery} item - The item containing the video. + */ + Video.prototype.fetch = function(target, item) { + var type = (function() { + if (target.attr('data-vimeo-id')) { + return 'vimeo'; + } else if (target.attr('data-vzaar-id')) { + return 'vzaar' + } else { + return 'youtube'; + } + })(), + id = target.attr('data-vimeo-id') || target.attr('data-youtube-id') || target.attr('data-vzaar-id'), + width = target.attr('data-width') || this._core.settings.videoWidth, + height = target.attr('data-height') || this._core.settings.videoHeight, + url = target.attr('href'); + + if (url) { + + /* + Parses the id's out of the following urls (and probably more): + https://www.youtube.com/watch?v=:id + https://youtu.be/:id + https://vimeo.com/:id + https://vimeo.com/channels/:channel/:id + https://vimeo.com/groups/:group/videos/:id + https://app.vzaar.com/videos/:id + + Visual example: https://regexper.com/#(http%3A%7Chttps%3A%7C)%5C%2F%5C%2F(player.%7Cwww.%7Capp.)%3F(vimeo%5C.com%7Cyoutu(be%5C.com%7C%5C.be%7Cbe%5C.googleapis%5C.com)%7Cvzaar%5C.com)%5C%2F(video%5C%2F%7Cvideos%5C%2F%7Cembed%5C%2F%7Cchannels%5C%2F.%2B%5C%2F%7Cgroups%5C%2F.%2B%5C%2F%7Cwatch%5C%3Fv%3D%7Cv%5C%2F)%3F(%5BA-Za-z0-9._%25-%5D*)(%5C%26%5CS%2B)%3F + */ + + id = url.match(/(http:|https:|)\/\/(player.|www.|app.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com)|vzaar\.com)\/(video\/|videos\/|embed\/|channels\/.+\/|groups\/.+\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/); + + if (id[3].indexOf('youtu') > -1) { + type = 'youtube'; + } else if (id[3].indexOf('vimeo') > -1) { + type = 'vimeo'; + } else if (id[3].indexOf('vzaar') > -1) { + type = 'vzaar'; + } else { + throw new Error('Video URL not supported.'); + } + id = id[6]; + } else { + throw new Error('Missing video URL.'); + } + + this._videos[url] = { + type: type, + id: id, + width: width, + height: height + }; + + item.attr('data-video', url); + + this.thumbnail(target, this._videos[url]); + }; + + /** + * Creates video thumbnail. + * @protected + * @param {jQuery} target - The target containing the video data. + * @param {Object} info - The video info object. + * @see `fetch` + */ + Video.prototype.thumbnail = function(target, video) { + var tnLink, + icon, + path, + dimensions = video.width && video.height ? 'style="width:' + video.width + 'px;height:' + video.height + 'px;"' : '', + customTn = target.find('img'), + srcType = 'src', + lazyClass = '', + settings = this._core.settings, + create = function(path) { + icon = '
'; + + if (settings.lazyLoad) { + tnLink = '
'; + } else { + tnLink = '
'; + } + target.after(tnLink); + target.after(icon); + }; + + // wrap video content into owl-video-wrapper div + target.wrap('
'); + + if (this._core.settings.lazyLoad) { + srcType = 'data-src'; + lazyClass = 'owl-lazy'; + } + + // custom thumbnail + if (customTn.length) { + create(customTn.attr(srcType)); + customTn.remove(); + return false; + } + + if (video.type === 'youtube') { + path = "//img.youtube.com/vi/" + video.id + "/hqdefault.jpg"; + create(path); + } else if (video.type === 'vimeo') { + $.ajax({ + type: 'GET', + url: '//vimeo.com/api/v2/video/' + video.id + '.json', + jsonp: 'callback', + dataType: 'jsonp', + success: function(data) { + path = data[0].thumbnail_large; + create(path); + } + }); + } else if (video.type === 'vzaar') { + $.ajax({ + type: 'GET', + url: '//vzaar.com/api/videos/' + video.id + '.json', + jsonp: 'callback', + dataType: 'jsonp', + success: function(data) { + path = data.framegrab_url; + create(path); + } + }); + } + }; + + /** + * Stops the current video. + * @public + */ + Video.prototype.stop = function() { + this._core.trigger('stop', null, 'video'); + this._playing.find('.owl-video-frame').remove(); + this._playing.removeClass('owl-video-playing'); + this._playing = null; + this._core.leave('playing'); + this._core.trigger('stopped', null, 'video'); + }; + + /** + * Starts the current video. + * @public + * @param {Event} event - The event arguments. + */ + Video.prototype.play = function(event) { + var target = $(event.target), + item = target.closest('.' + this._core.settings.itemClass), + video = this._videos[item.attr('data-video')], + width = video.width || '100%', + height = video.height || this._core.$stage.height(), + html; + + if (this._playing) { + return; + } + + this._core.enter('playing'); + this._core.trigger('play', null, 'video'); + + item = this._core.items(this._core.relative(item.index())); + + this._core.reset(item.index()); + + if (video.type === 'youtube') { + html = ''; + } else if (video.type === 'vimeo') { + html = ''; + } else if (video.type === 'vzaar') { + html = ''; + } + + $('
' + html + '
').insertAfter(item.find('.owl-video')); + + this._playing = item.addClass('owl-video-playing'); + }; + + /** + * Checks whether an video is currently in full screen mode or not. + * @todo Bad style because looks like a readonly method but changes members. + * @protected + * @returns {Boolean} + */ + Video.prototype.isInFullScreen = function() { + var element = document.fullscreenElement || document.mozFullScreenElement || + document.webkitFullscreenElement; + + return element && $(element).parent().hasClass('owl-video-frame'); + }; + + /** + * Destroys the plugin. + */ + Video.prototype.destroy = function() { + var handler, property; + + this._core.$element.off('click.owl.video'); + + for (handler in this._handlers) { + this._core.$element.off(handler, this._handlers[handler]); + } + for (property in Object.getOwnPropertyNames(this)) { + typeof this[property] != 'function' && (this[property] = null); + } + }; + + $.fn.owlCarousel.Constructor.Plugins.Video = Video; + +})(window.Zepto || window.jQuery, window, document); + +/** + * Animate Plugin + * @version 2.1.0 + * @author Bartosz Wojciechowski + * @author David Deutsch + * @license The MIT License (MIT) + */ +;(function($, window, document, undefined) { + + /** + * Creates the animate plugin. + * @class The Navigation Plugin + * @param {Owl} scope - The Owl Carousel + */ + var Animate = function(scope) { + this.core = scope; + this.core.options = $.extend({}, Animate.Defaults, this.core.options); + this.swapping = true; + this.previous = undefined; + this.next = undefined; + + this.handlers = { + 'change.owl.carousel': $.proxy(function(e) { + if (e.namespace && e.property.name == 'position') { + this.previous = this.core.current(); + this.next = e.property.value; + } + }, this), + 'drag.owl.carousel dragged.owl.carousel translated.owl.carousel': $.proxy(function(e) { + if (e.namespace) { + this.swapping = e.type == 'translated'; + } + }, this), + 'translate.owl.carousel': $.proxy(function(e) { + if (e.namespace && this.swapping && (this.core.options.animateOut || this.core.options.animateIn)) { + this.swap(); + } + }, this) + }; + + this.core.$element.on(this.handlers); + }; + + /** + * Default options. + * @public + */ + Animate.Defaults = { + animateOut: false, + animateIn: false + }; + + /** + * Toggles the animation classes whenever an translations starts. + * @protected + * @returns {Boolean|undefined} + */ + Animate.prototype.swap = function() { + + if (this.core.settings.items !== 1) { + return; + } + + if (!$.support.animation || !$.support.transition) { + return; + } + + this.core.speed(0); + + var left, + clear = $.proxy(this.clear, this), + previous = this.core.$stage.children().eq(this.previous), + next = this.core.$stage.children().eq(this.next), + incoming = this.core.settings.animateIn, + outgoing = this.core.settings.animateOut; + + if (this.core.current() === this.previous) { + return; + } + + if (outgoing) { + left = this.core.coordinates(this.previous) - this.core.coordinates(this.next); + previous.one($.support.animation.end, clear) + .css( { 'left': left + 'px' } ) + .addClass('animated owl-animated-out') + .addClass(outgoing); + } + + if (incoming) { + next.one($.support.animation.end, clear) + .addClass('animated owl-animated-in') + .addClass(incoming); + } + }; + + Animate.prototype.clear = function(e) { + $(e.target).css( { 'left': '' } ) + .removeClass('animated owl-animated-out owl-animated-in') + .removeClass(this.core.settings.animateIn) + .removeClass(this.core.settings.animateOut); + this.core.onTransitionEnd(); + }; + + /** + * Destroys the plugin. + * @public + */ + Animate.prototype.destroy = function() { + var handler, property; + + for (handler in this.handlers) { + this.core.$element.off(handler, this.handlers[handler]); + } + for (property in Object.getOwnPropertyNames(this)) { + typeof this[property] != 'function' && (this[property] = null); + } + }; + + $.fn.owlCarousel.Constructor.Plugins.Animate = Animate; + +})(window.Zepto || window.jQuery, window, document); + +/** + * Autoplay Plugin + * @version 2.1.0 + * @author Bartosz Wojciechowski + * @author Artus Kolanowski + * @author David Deutsch + * @license The MIT License (MIT) + */ +;(function($, window, document, undefined) { + + /** + * Creates the autoplay plugin. + * @class The Autoplay Plugin + * @param {Owl} scope - The Owl Carousel + */ + var Autoplay = function(carousel) { + /** + * Reference to the core. + * @protected + * @type {Owl} + */ + this._core = carousel; + + /** + * The autoplay timeout. + * @type {Timeout} + */ + this._timeout = null; + + /** + * Indicates whenever the autoplay is paused. + * @type {Boolean} + */ + this._paused = false; + + /** + * All event handlers. + * @protected + * @type {Object} + */ + this._handlers = { + 'changed.owl.carousel': $.proxy(function(e) { + if (e.namespace && e.property.name === 'settings') { + if (this._core.settings.autoplay) { + this.play(); + } else { + this.stop(); + } + } else if (e.namespace && e.property.name === 'position') { + //console.log('play?', e); + if (this._core.settings.autoplay) { + this._setAutoPlayInterval(); + } + } + }, this), + 'initialized.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._core.settings.autoplay) { + this.play(); + } + }, this), + 'play.owl.autoplay': $.proxy(function(e, t, s) { + if (e.namespace) { + this.play(t, s); + } + }, this), + 'stop.owl.autoplay': $.proxy(function(e) { + if (e.namespace) { + this.stop(); + } + }, this), + 'mouseover.owl.autoplay': $.proxy(function() { + if (this._core.settings.autoplayHoverPause && this._core.is('rotating')) { + this.pause(); + } + }, this), + 'mouseleave.owl.autoplay': $.proxy(function() { + if (this._core.settings.autoplayHoverPause && this._core.is('rotating')) { + this.play(); + } + }, this), + 'touchstart.owl.core': $.proxy(function() { + if (this._core.settings.autoplayHoverPause && this._core.is('rotating')) { + this.pause(); + } + }, this), + 'touchend.owl.core': $.proxy(function() { + if (this._core.settings.autoplayHoverPause) { + this.play(); + } + }, this) + }; + + // register event handlers + this._core.$element.on(this._handlers); + + // set default options + this._core.options = $.extend({}, Autoplay.Defaults, this._core.options); + }; + + /** + * Default options. + * @public + */ + Autoplay.Defaults = { + autoplay: false, + autoplayTimeout: 5000, + autoplayHoverPause: false, + autoplaySpeed: false + }; + + /** + * Starts the autoplay. + * @public + * @param {Number} [timeout] - The interval before the next animation starts. + * @param {Number} [speed] - The animation speed for the animations. + */ + Autoplay.prototype.play = function(timeout, speed) { + this._paused = false; + + if (this._core.is('rotating')) { + return; + } + + this._core.enter('rotating'); + + this._setAutoPlayInterval(); + }; + + /** + * Gets a new timeout + * @private + * @param {Number} [timeout] - The interval before the next animation starts. + * @param {Number} [speed] - The animation speed for the animations. + * @return {Timeout} + */ + Autoplay.prototype._getNextTimeout = function(timeout, speed) { + if ( this._timeout ) { + window.clearTimeout(this._timeout); + } + return window.setTimeout($.proxy(function() { + if (this._paused || this._core.is('busy') || this._core.is('interacting') || document.hidden) { + return; + } + this._core.next(speed || this._core.settings.autoplaySpeed); + }, this), timeout || this._core.settings.autoplayTimeout); + }; + + /** + * Sets autoplay in motion. + * @private + */ + Autoplay.prototype._setAutoPlayInterval = function() { + this._timeout = this._getNextTimeout(); + }; + + /** + * Stops the autoplay. + * @public + */ + Autoplay.prototype.stop = function() { + if (!this._core.is('rotating')) { + return; + } + + window.clearTimeout(this._timeout); + this._core.leave('rotating'); + }; + + /** + * Stops the autoplay. + * @public + */ + Autoplay.prototype.pause = function() { + if (!this._core.is('rotating')) { + return; + } + + this._paused = true; + }; + + /** + * Destroys the plugin. + */ + Autoplay.prototype.destroy = function() { + var handler, property; + + this.stop(); + + for (handler in this._handlers) { + this._core.$element.off(handler, this._handlers[handler]); + } + for (property in Object.getOwnPropertyNames(this)) { + typeof this[property] != 'function' && (this[property] = null); + } + }; + + $.fn.owlCarousel.Constructor.Plugins.autoplay = Autoplay; + +})(window.Zepto || window.jQuery, window, document); + +/** + * Navigation Plugin + * @version 2.1.0 + * @author Artus Kolanowski + * @author David Deutsch + * @license The MIT License (MIT) + */ +;(function($, window, document, undefined) { + 'use strict'; + + /** + * Creates the navigation plugin. + * @class The Navigation Plugin + * @param {Owl} carousel - The Owl Carousel. + */ + var Navigation = function(carousel) { + /** + * Reference to the core. + * @protected + * @type {Owl} + */ + this._core = carousel; + + /** + * Indicates whether the plugin is initialized or not. + * @protected + * @type {Boolean} + */ + this._initialized = false; + + /** + * The current paging indexes. + * @protected + * @type {Array} + */ + this._pages = []; + + /** + * All DOM elements of the user interface. + * @protected + * @type {Object} + */ + this._controls = {}; + + /** + * Markup for an indicator. + * @protected + * @type {Array.} + */ + this._templates = []; + + /** + * The carousel element. + * @type {jQuery} + */ + this.$element = this._core.$element; + + /** + * Overridden methods of the carousel. + * @protected + * @type {Object} + */ + this._overrides = { + next: this._core.next, + prev: this._core.prev, + to: this._core.to + }; + + /** + * All event handlers. + * @protected + * @type {Object} + */ + this._handlers = { + 'prepared.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._core.settings.dotsData) { + this._templates.push('
' + + $(e.content).find('[data-dot]').addBack('[data-dot]').attr('data-dot') + '
'); + } + }, this), + 'added.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._core.settings.dotsData) { + this._templates.splice(e.position, 0, this._templates.pop()); + } + }, this), + 'remove.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._core.settings.dotsData) { + this._templates.splice(e.position, 1); + } + }, this), + 'changed.owl.carousel': $.proxy(function(e) { + if (e.namespace && e.property.name == 'position') { + this.draw(); + } + }, this), + 'initialized.owl.carousel': $.proxy(function(e) { + if (e.namespace && !this._initialized) { + this._core.trigger('initialize', null, 'navigation'); + this.initialize(); + this.update(); + this.draw(); + this._initialized = true; + this._core.trigger('initialized', null, 'navigation'); + } + }, this), + 'refreshed.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._initialized) { + this._core.trigger('refresh', null, 'navigation'); + this.update(); + this.draw(); + this._core.trigger('refreshed', null, 'navigation'); + } + }, this) + }; + + // set default options + this._core.options = $.extend({}, Navigation.Defaults, this._core.options); + + // register event handlers + this.$element.on(this._handlers); + }; + + /** + * Default options. + * @public + * @todo Rename `slideBy` to `navBy` + */ + Navigation.Defaults = { + nav: false, + navText: [ 'prev', 'next' ], + navSpeed: false, + navElement: 'div', + navContainer: false, + navContainerClass: 'owl-nav', + navClass: [ 'owl-prev', 'owl-next' ], + slideBy: 1, + dotClass: 'owl-dot', + dotsClass: 'owl-dots', + dots: true, + dotsEach: false, + dotsData: false, + dotsSpeed: false, + dotsContainer: false + }; + + /** + * Initializes the layout of the plugin and extends the carousel. + * @protected + */ + Navigation.prototype.initialize = function() { + var override, + settings = this._core.settings; + + // create DOM structure for relative navigation + this._controls.$relative = (settings.navContainer ? $(settings.navContainer) + : $('
').addClass(settings.navContainerClass).appendTo(this.$element)).addClass('disabled'); + + this._controls.$previous = $('<' + settings.navElement + '>') + .addClass(settings.navClass[0]) + .html(settings.navText[0]) + .prependTo(this._controls.$relative) + .on('click', $.proxy(function(e) { + this.prev(settings.navSpeed); + }, this)); + this._controls.$next = $('<' + settings.navElement + '>') + .addClass(settings.navClass[1]) + .html(settings.navText[1]) + .appendTo(this._controls.$relative) + .on('click', $.proxy(function(e) { + this.next(settings.navSpeed); + }, this)); + + // create DOM structure for absolute navigation + if (!settings.dotsData) { + this._templates = [ $('
') + .addClass(settings.dotClass) + .append($('')) + .prop('outerHTML') ]; + } + + this._controls.$absolute = (settings.dotsContainer ? $(settings.dotsContainer) + : $('
').addClass(settings.dotsClass).appendTo(this.$element)).addClass('disabled'); + + this._controls.$absolute.on('click', 'div', $.proxy(function(e) { + var index = $(e.target).parent().is(this._controls.$absolute) + ? $(e.target).index() : $(e.target).parent().index(); + + e.preventDefault(); + + this.to(index, settings.dotsSpeed); + }, this)); + + // override public methods of the carousel + for (override in this._overrides) { + this._core[override] = $.proxy(this[override], this); + } + }; + + /** + * Destroys the plugin. + * @protected + */ + Navigation.prototype.destroy = function() { + var handler, control, property, override; + + for (handler in this._handlers) { + this.$element.off(handler, this._handlers[handler]); + } + for (control in this._controls) { + this._controls[control].remove(); + } + for (override in this.overides) { + this._core[override] = this._overrides[override]; + } + for (property in Object.getOwnPropertyNames(this)) { + typeof this[property] != 'function' && (this[property] = null); + } + }; + + /** + * Updates the internal state. + * @protected + */ + Navigation.prototype.update = function() { + var i, j, k, + lower = this._core.clones().length / 2, + upper = lower + this._core.items().length, + maximum = this._core.maximum(true), + settings = this._core.settings, + size = settings.center || settings.autoWidth || settings.dotsData + ? 1 : settings.dotsEach || settings.items; + + if (settings.slideBy !== 'page') { + settings.slideBy = Math.min(settings.slideBy, settings.items); + } + + if (settings.dots || settings.slideBy == 'page') { + this._pages = []; + + for (i = lower, j = 0, k = 0; i < upper; i++) { + if (j >= size || j === 0) { + this._pages.push({ + start: Math.min(maximum, i - lower), + end: i - lower + size - 1 + }); + if (Math.min(maximum, i - lower) === maximum) { + break; + } + j = 0, ++k; + } + j += this._core.mergers(this._core.relative(i)); + } + } + }; + + /** + * Draws the user interface. + * @todo The option `dotsData` wont work. + * @protected + */ + Navigation.prototype.draw = function() { + var difference, + settings = this._core.settings, + disabled = this._core.items().length <= settings.items, + index = this._core.relative(this._core.current()), + loop = settings.loop || settings.rewind; + + this._controls.$relative.toggleClass('disabled', !settings.nav || disabled); + + if (settings.nav) { + this._controls.$previous.toggleClass('disabled', !loop && index <= this._core.minimum(true)); + this._controls.$next.toggleClass('disabled', !loop && index >= this._core.maximum(true)); + } + + this._controls.$absolute.toggleClass('disabled', !settings.dots || disabled); + + if (settings.dots) { + difference = this._pages.length - this._controls.$absolute.children().length; + + if (settings.dotsData && difference !== 0) { + this._controls.$absolute.html(this._templates.join('')); + } else if (difference > 0) { + this._controls.$absolute.append(new Array(difference + 1).join(this._templates[0])); + } else if (difference < 0) { + this._controls.$absolute.children().slice(difference).remove(); + } + + this._controls.$absolute.find('.active').removeClass('active'); + this._controls.$absolute.children().eq($.inArray(this.current(), this._pages)).addClass('active'); + } + }; + + /** + * Extends event data. + * @protected + * @param {Event} event - The event object which gets thrown. + */ + Navigation.prototype.onTrigger = function(event) { + var settings = this._core.settings; + + event.page = { + index: $.inArray(this.current(), this._pages), + count: this._pages.length, + size: settings && (settings.center || settings.autoWidth || settings.dotsData + ? 1 : settings.dotsEach || settings.items) + }; + }; + + /** + * Gets the current page position of the carousel. + * @protected + * @returns {Number} + */ + Navigation.prototype.current = function() { + var current = this._core.relative(this._core.current()); + return $.grep(this._pages, $.proxy(function(page, index) { + return page.start <= current && page.end >= current; + }, this)).pop(); + }; + + /** + * Gets the current succesor/predecessor position. + * @protected + * @returns {Number} + */ + Navigation.prototype.getPosition = function(successor) { + var position, length, + settings = this._core.settings; + + if (settings.slideBy == 'page') { + position = $.inArray(this.current(), this._pages); + length = this._pages.length; + successor ? ++position : --position; + position = this._pages[((position % length) + length) % length].start; + } else { + position = this._core.relative(this._core.current()); + length = this._core.items().length; + successor ? position += settings.slideBy : position -= settings.slideBy; + } + + return position; + }; + + /** + * Slides to the next item or page. + * @public + * @param {Number} [speed=false] - The time in milliseconds for the transition. + */ + Navigation.prototype.next = function(speed) { + $.proxy(this._overrides.to, this._core)(this.getPosition(true), speed); + }; + + /** + * Slides to the previous item or page. + * @public + * @param {Number} [speed=false] - The time in milliseconds for the transition. + */ + Navigation.prototype.prev = function(speed) { + $.proxy(this._overrides.to, this._core)(this.getPosition(false), speed); + }; + + /** + * Slides to the specified item or page. + * @public + * @param {Number} position - The position of the item or page. + * @param {Number} [speed] - The time in milliseconds for the transition. + * @param {Boolean} [standard=false] - Whether to use the standard behaviour or not. + */ + Navigation.prototype.to = function(position, speed, standard) { + var length; + + if (!standard && this._pages.length) { + length = this._pages.length; + $.proxy(this._overrides.to, this._core)(this._pages[((position % length) + length) % length].start, speed); + } else { + $.proxy(this._overrides.to, this._core)(position, speed); + } + }; + + $.fn.owlCarousel.Constructor.Plugins.Navigation = Navigation; + +})(window.Zepto || window.jQuery, window, document); + +/** + * Hash Plugin + * @version 2.1.0 + * @author Artus Kolanowski + * @author David Deutsch + * @license The MIT License (MIT) + */ +;(function($, window, document, undefined) { + 'use strict'; + + /** + * Creates the hash plugin. + * @class The Hash Plugin + * @param {Owl} carousel - The Owl Carousel + */ + var Hash = function(carousel) { + /** + * Reference to the core. + * @protected + * @type {Owl} + */ + this._core = carousel; + + /** + * Hash index for the items. + * @protected + * @type {Object} + */ + this._hashes = {}; + + /** + * The carousel element. + * @type {jQuery} + */ + this.$element = this._core.$element; + + /** + * All event handlers. + * @protected + * @type {Object} + */ + this._handlers = { + 'initialized.owl.carousel': $.proxy(function(e) { + if (e.namespace && this._core.settings.startPosition === 'URLHash') { + $(window).trigger('hashchange.owl.navigation'); + } + }, this), + 'prepared.owl.carousel': $.proxy(function(e) { + if (e.namespace) { + var hash = $(e.content).find('[data-hash]').addBack('[data-hash]').attr('data-hash'); + + if (!hash) { + return; + } + + this._hashes[hash] = e.content; + } + }, this), + 'changed.owl.carousel': $.proxy(function(e) { + if (e.namespace && e.property.name === 'position') { + var current = this._core.items(this._core.relative(this._core.current())), + hash = $.map(this._hashes, function(item, hash) { + return item === current ? hash : null; + }).join(); + + if (!hash || window.location.hash.slice(1) === hash) { + return; + } + + window.location.hash = hash; + } + }, this) + }; + + // set default options + this._core.options = $.extend({}, Hash.Defaults, this._core.options); + + // register the event handlers + this.$element.on(this._handlers); + + // register event listener for hash navigation + $(window).on('hashchange.owl.navigation', $.proxy(function(e) { + var hash = window.location.hash.substring(1), + items = this._core.$stage.children(), + position = this._hashes[hash] && items.index(this._hashes[hash]); + + if (position === undefined || position === this._core.current()) { + return; + } + + this._core.to(this._core.relative(position), false, true); + }, this)); + }; + + /** + * Default options. + * @public + */ + Hash.Defaults = { + URLhashListener: false + }; + + /** + * Destroys the plugin. + * @public + */ + Hash.prototype.destroy = function() { + var handler, property; + + $(window).off('hashchange.owl.navigation'); + + for (handler in this._handlers) { + this._core.$element.off(handler, this._handlers[handler]); + } + for (property in Object.getOwnPropertyNames(this)) { + typeof this[property] != 'function' && (this[property] = null); + } + }; + + $.fn.owlCarousel.Constructor.Plugins.Hash = Hash; + +})(window.Zepto || window.jQuery, window, document); + +/** + * Support Plugin + * + * @version 2.1.0 + * @author Vivid Planet Software GmbH + * @author Artus Kolanowski + * @author David Deutsch + * @license The MIT License (MIT) + */ +;(function($, window, document, undefined) { + + var style = $('').get(0).style, + prefixes = 'Webkit Moz O ms'.split(' '), + events = { + transition: { + end: { + WebkitTransition: 'webkitTransitionEnd', + MozTransition: 'transitionend', + OTransition: 'oTransitionEnd', + transition: 'transitionend' + } + }, + animation: { + end: { + WebkitAnimation: 'webkitAnimationEnd', + MozAnimation: 'animationend', + OAnimation: 'oAnimationEnd', + animation: 'animationend' + } + } + }, + tests = { + csstransforms: function() { + return !!test('transform'); + }, + csstransforms3d: function() { + return !!test('perspective'); + }, + csstransitions: function() { + return !!test('transition'); + }, + cssanimations: function() { + return !!test('animation'); + } + }; + + function test(property, prefixed) { + var result = false, + upper = property.charAt(0).toUpperCase() + property.slice(1); + + $.each((property + ' ' + prefixes.join(upper + ' ') + upper).split(' '), function(i, property) { + if (style[property] !== undefined) { + result = prefixed ? property : true; + return false; + } + }); + + return result; + } + + function prefixed(property) { + return test(property, true); + } + + if (tests.csstransitions()) { + /* jshint -W053 */ + $.support.transition = new String(prefixed('transition')) + $.support.transition.end = events.transition.end[ $.support.transition ]; + } + + if (tests.cssanimations()) { + /* jshint -W053 */ + $.support.animation = new String(prefixed('animation')) + $.support.animation.end = events.animation.end[ $.support.animation ]; + } + + if (tests.csstransforms()) { + /* jshint -W053 */ + $.support.transform = new String(prefixed('transform')); + $.support.transform3d = tests.csstransforms3d(); + } + +})(window.Zepto || window.jQuery, window, document); diff --git a/home/lib/owlcarousel/owl.carousel.min.js b/home/lib/owlcarousel/owl.carousel.min.js new file mode 100644 index 0000000..9b9566f --- /dev/null +++ b/home/lib/owlcarousel/owl.carousel.min.js @@ -0,0 +1,7 @@ +/** + * Owl Carousel v2.2.1 + * Copyright 2013-2017 David Deutsch + * Licensed under () + */ +!function(a,b,c,d){function e(b,c){this.settings=null,this.options=a.extend({},e.Defaults,c),this.$element=a(b),this._handlers={},this._plugins={},this._supress={},this._current=null,this._speed=null,this._coordinates=[],this._breakpoint=null,this._width=null,this._items=[],this._clones=[],this._mergers=[],this._widths=[],this._invalidated={},this._pipe=[],this._drag={time:null,target:null,pointer:null,stage:{start:null,current:null},direction:null},this._states={current:{},tags:{initializing:["busy"],animating:["busy"],dragging:["interacting"]}},a.each(["onResize","onThrottledResize"],a.proxy(function(b,c){this._handlers[c]=a.proxy(this[c],this)},this)),a.each(e.Plugins,a.proxy(function(a,b){this._plugins[a.charAt(0).toLowerCase()+a.slice(1)]=new b(this)},this)),a.each(e.Workers,a.proxy(function(b,c){this._pipe.push({filter:c.filter,run:a.proxy(c.run,this)})},this)),this.setup(),this.initialize()}e.Defaults={items:3,loop:!1,center:!1,rewind:!1,mouseDrag:!0,touchDrag:!0,pullDrag:!0,freeDrag:!1,margin:0,stagePadding:0,merge:!1,mergeFit:!0,autoWidth:!1,startPosition:0,rtl:!1,smartSpeed:250,fluidSpeed:!1,dragEndSpeed:!1,responsive:{},responsiveRefreshRate:200,responsiveBaseElement:b,fallbackEasing:"swing",info:!1,nestedItemSelector:!1,itemElement:"div",stageElement:"div",refreshClass:"owl-refresh",loadedClass:"owl-loaded",loadingClass:"owl-loading",rtlClass:"owl-rtl",responsiveClass:"owl-responsive",dragClass:"owl-drag",itemClass:"owl-item",stageClass:"owl-stage",stageOuterClass:"owl-stage-outer",grabClass:"owl-grab"},e.Width={Default:"default",Inner:"inner",Outer:"outer"},e.Type={Event:"event",State:"state"},e.Plugins={},e.Workers=[{filter:["width","settings"],run:function(){this._width=this.$element.width()}},{filter:["width","items","settings"],run:function(a){a.current=this._items&&this._items[this.relative(this._current)]}},{filter:["items","settings"],run:function(){this.$stage.children(".cloned").remove()}},{filter:["width","items","settings"],run:function(a){var b=this.settings.margin||"",c=!this.settings.autoWidth,d=this.settings.rtl,e={width:"auto","margin-left":d?b:"","margin-right":d?"":b};!c&&this.$stage.children().css(e),a.css=e}},{filter:["width","items","settings"],run:function(a){var b=(this.width()/this.settings.items).toFixed(3)-this.settings.margin,c=null,d=this._items.length,e=!this.settings.autoWidth,f=[];for(a.items={merge:!1,width:b};d--;)c=this._mergers[d],c=this.settings.mergeFit&&Math.min(c,this.settings.items)||c,a.items.merge=c>1||a.items.merge,f[d]=e?b*c:this._items[d].width();this._widths=f}},{filter:["items","settings"],run:function(){var b=[],c=this._items,d=this.settings,e=Math.max(2*d.items,4),f=2*Math.ceil(c.length/2),g=d.loop&&c.length?d.rewind?e:Math.max(e,f):0,h="",i="";for(g/=2;g--;)b.push(this.normalize(b.length/2,!0)),h+=c[b[b.length-1]][0].outerHTML,b.push(this.normalize(c.length-1-(b.length-1)/2,!0)),i=c[b[b.length-1]][0].outerHTML+i;this._clones=b,a(h).addClass("cloned").appendTo(this.$stage),a(i).addClass("cloned").prependTo(this.$stage)}},{filter:["width","items","settings"],run:function(){for(var a=this.settings.rtl?1:-1,b=this._clones.length+this._items.length,c=-1,d=0,e=0,f=[];++c",h)||this.op(b,"<",g)&&this.op(b,">",h))&&i.push(c);this.$stage.children(".active").removeClass("active"),this.$stage.children(":eq("+i.join("), :eq(")+")").addClass("active"),this.settings.center&&(this.$stage.children(".center").removeClass("center"),this.$stage.children().eq(this.current()).addClass("center"))}}],e.prototype.initialize=function(){if(this.enter("initializing"),this.trigger("initialize"),this.$element.toggleClass(this.settings.rtlClass,this.settings.rtl),this.settings.autoWidth&&!this.is("pre-loading")){var b,c,e;b=this.$element.find("img"),c=this.settings.nestedItemSelector?"."+this.settings.nestedItemSelector:d,e=this.$element.children(c).width(),b.length&&e<=0&&this.preloadAutoWidthImages(b)}this.$element.addClass(this.options.loadingClass),this.$stage=a("<"+this.settings.stageElement+' class="'+this.settings.stageClass+'"/>').wrap('
'),this.$element.append(this.$stage.parent()),this.replace(this.$element.children().not(this.$stage.parent())),this.$element.is(":visible")?this.refresh():this.invalidate("width"),this.$element.removeClass(this.options.loadingClass).addClass(this.options.loadedClass),this.registerEventHandlers(),this.leave("initializing"),this.trigger("initialized")},e.prototype.setup=function(){var b=this.viewport(),c=this.options.responsive,d=-1,e=null;c?(a.each(c,function(a){a<=b&&a>d&&(d=Number(a))}),e=a.extend({},this.options,c[d]),"function"==typeof e.stagePadding&&(e.stagePadding=e.stagePadding()),delete e.responsive,e.responsiveClass&&this.$element.attr("class",this.$element.attr("class").replace(new RegExp("("+this.options.responsiveClass+"-)\\S+\\s","g"),"$1"+d))):e=a.extend({},this.options),this.trigger("change",{property:{name:"settings",value:e}}),this._breakpoint=d,this.settings=e,this.invalidate("settings"),this.trigger("changed",{property:{name:"settings",value:this.settings}})},e.prototype.optionsLogic=function(){this.settings.autoWidth&&(this.settings.stagePadding=!1,this.settings.merge=!1)},e.prototype.prepare=function(b){var c=this.trigger("prepare",{content:b});return c.data||(c.data=a("<"+this.settings.itemElement+"/>").addClass(this.options.itemClass).append(b)),this.trigger("prepared",{content:c.data}),c.data},e.prototype.update=function(){for(var b=0,c=this._pipe.length,d=a.proxy(function(a){return this[a]},this._invalidated),e={};b0)&&this._pipe[b].run(e),b++;this._invalidated={},!this.is("valid")&&this.enter("valid")},e.prototype.width=function(a){switch(a=a||e.Width.Default){case e.Width.Inner:case e.Width.Outer:return this._width;default:return this._width-2*this.settings.stagePadding+this.settings.margin}},e.prototype.refresh=function(){this.enter("refreshing"),this.trigger("refresh"),this.setup(),this.optionsLogic(),this.$element.addClass(this.options.refreshClass),this.update(),this.$element.removeClass(this.options.refreshClass),this.leave("refreshing"),this.trigger("refreshed")},e.prototype.onThrottledResize=function(){b.clearTimeout(this.resizeTimer),this.resizeTimer=b.setTimeout(this._handlers.onResize,this.settings.responsiveRefreshRate)},e.prototype.onResize=function(){return!!this._items.length&&(this._width!==this.$element.width()&&(!!this.$element.is(":visible")&&(this.enter("resizing"),this.trigger("resize").isDefaultPrevented()?(this.leave("resizing"),!1):(this.invalidate("width"),this.refresh(),this.leave("resizing"),void this.trigger("resized")))))},e.prototype.registerEventHandlers=function(){a.support.transition&&this.$stage.on(a.support.transition.end+".owl.core",a.proxy(this.onTransitionEnd,this)),this.settings.responsive!==!1&&this.on(b,"resize",this._handlers.onThrottledResize),this.settings.mouseDrag&&(this.$element.addClass(this.options.dragClass),this.$stage.on("mousedown.owl.core",a.proxy(this.onDragStart,this)),this.$stage.on("dragstart.owl.core selectstart.owl.core",function(){return!1})),this.settings.touchDrag&&(this.$stage.on("touchstart.owl.core",a.proxy(this.onDragStart,this)),this.$stage.on("touchcancel.owl.core",a.proxy(this.onDragEnd,this)))},e.prototype.onDragStart=function(b){var d=null;3!==b.which&&(a.support.transform?(d=this.$stage.css("transform").replace(/.*\(|\)| /g,"").split(","),d={x:d[16===d.length?12:4],y:d[16===d.length?13:5]}):(d=this.$stage.position(),d={x:this.settings.rtl?d.left+this.$stage.width()-this.width()+this.settings.margin:d.left,y:d.top}),this.is("animating")&&(a.support.transform?this.animate(d.x):this.$stage.stop(),this.invalidate("position")),this.$element.toggleClass(this.options.grabClass,"mousedown"===b.type),this.speed(0),this._drag.time=(new Date).getTime(),this._drag.target=a(b.target),this._drag.stage.start=d,this._drag.stage.current=d,this._drag.pointer=this.pointer(b),a(c).on("mouseup.owl.core touchend.owl.core",a.proxy(this.onDragEnd,this)),a(c).one("mousemove.owl.core touchmove.owl.core",a.proxy(function(b){var d=this.difference(this._drag.pointer,this.pointer(b));a(c).on("mousemove.owl.core touchmove.owl.core",a.proxy(this.onDragMove,this)),Math.abs(d.x)0^this.settings.rtl?"left":"right";a(c).off(".owl.core"),this.$element.removeClass(this.options.grabClass),(0!==d.x&&this.is("dragging")||!this.is("valid"))&&(this.speed(this.settings.dragEndSpeed||this.settings.smartSpeed),this.current(this.closest(e.x,0!==d.x?f:this._drag.direction)),this.invalidate("position"),this.update(),this._drag.direction=f,(Math.abs(d.x)>3||(new Date).getTime()-this._drag.time>300)&&this._drag.target.one("click.owl.core",function(){return!1})),this.is("dragging")&&(this.leave("dragging"),this.trigger("dragged"))},e.prototype.closest=function(b,c){var d=-1,e=30,f=this.width(),g=this.coordinates();return this.settings.freeDrag||a.each(g,a.proxy(function(a,h){return"left"===c&&b>h-e&&bh-f-e&&b",g[a+1]||h-f)&&(d="left"===c?a+1:a),d===-1},this)),this.settings.loop||(this.op(b,">",g[this.minimum()])?d=b=this.minimum():this.op(b,"<",g[this.maximum()])&&(d=b=this.maximum())),d},e.prototype.animate=function(b){var c=this.speed()>0;this.is("animating")&&this.onTransitionEnd(),c&&(this.enter("animating"),this.trigger("translate")),a.support.transform3d&&a.support.transition?this.$stage.css({transform:"translate3d("+b+"px,0px,0px)",transition:this.speed()/1e3+"s"}):c?this.$stage.animate({left:b+"px"},this.speed(),this.settings.fallbackEasing,a.proxy(this.onTransitionEnd,this)):this.$stage.css({left:b+"px"})},e.prototype.is=function(a){return this._states.current[a]&&this._states.current[a]>0},e.prototype.current=function(a){if(a===d)return this._current;if(0===this._items.length)return d;if(a=this.normalize(a),this._current!==a){var b=this.trigger("change",{property:{name:"position",value:a}});b.data!==d&&(a=this.normalize(b.data)),this._current=a,this.invalidate("position"),this.trigger("changed",{property:{name:"position",value:this._current}})}return this._current},e.prototype.invalidate=function(b){return"string"===a.type(b)&&(this._invalidated[b]=!0,this.is("valid")&&this.leave("valid")),a.map(this._invalidated,function(a,b){return b})},e.prototype.reset=function(a){a=this.normalize(a),a!==d&&(this._speed=0,this._current=a,this.suppress(["translate","translated"]),this.animate(this.coordinates(a)),this.release(["translate","translated"]))},e.prototype.normalize=function(a,b){var c=this._items.length,e=b?0:this._clones.length;return!this.isNumeric(a)||c<1?a=d:(a<0||a>=c+e)&&(a=((a-e/2)%c+c)%c+e/2),a},e.prototype.relative=function(a){return a-=this._clones.length/2,this.normalize(a,!0)},e.prototype.maximum=function(a){var b,c,d,e=this.settings,f=this._coordinates.length;if(e.loop)f=this._clones.length/2+this._items.length-1;else if(e.autoWidth||e.merge){for(b=this._items.length,c=this._items[--b].width(),d=this.$element.width();b--&&(c+=this._items[b].width()+this.settings.margin,!(c>d)););f=b+1}else f=e.center?this._items.length-1:this._items.length-e.items;return a&&(f-=this._clones.length/2),Math.max(f,0)},e.prototype.minimum=function(a){return a?0:this._clones.length/2},e.prototype.items=function(a){return a===d?this._items.slice():(a=this.normalize(a,!0),this._items[a])},e.prototype.mergers=function(a){return a===d?this._mergers.slice():(a=this.normalize(a,!0),this._mergers[a])},e.prototype.clones=function(b){var c=this._clones.length/2,e=c+this._items.length,f=function(a){return a%2===0?e+a/2:c-(a+1)/2};return b===d?a.map(this._clones,function(a,b){return f(b)}):a.map(this._clones,function(a,c){return a===b?f(c):null})},e.prototype.speed=function(a){return a!==d&&(this._speed=a),this._speed},e.prototype.coordinates=function(b){var c,e=1,f=b-1;return b===d?a.map(this._coordinates,a.proxy(function(a,b){return this.coordinates(b)},this)):(this.settings.center?(this.settings.rtl&&(e=-1,f=b+1),c=this._coordinates[b],c+=(this.width()-c+(this._coordinates[f]||0))/2*e):c=this._coordinates[f]||0,c=Math.ceil(c))},e.prototype.duration=function(a,b,c){return 0===c?0:Math.min(Math.max(Math.abs(b-a),1),6)*Math.abs(c||this.settings.smartSpeed)},e.prototype.to=function(a,b){var c=this.current(),d=null,e=a-this.relative(c),f=(e>0)-(e<0),g=this._items.length,h=this.minimum(),i=this.maximum();this.settings.loop?(!this.settings.rewind&&Math.abs(e)>g/2&&(e+=f*-1*g),a=c+e,d=((a-h)%g+g)%g+h,d!==a&&d-e<=i&&d-e>0&&(c=d-e,a=d,this.reset(c))):this.settings.rewind?(i+=1,a=(a%i+i)%i):a=Math.max(h,Math.min(i,a)),this.speed(this.duration(c,a,b)),this.current(a),this.$element.is(":visible")&&this.update()},e.prototype.next=function(a){a=a||!1,this.to(this.relative(this.current())+1,a)},e.prototype.prev=function(a){a=a||!1,this.to(this.relative(this.current())-1,a)},e.prototype.onTransitionEnd=function(a){if(a!==d&&(a.stopPropagation(),(a.target||a.srcElement||a.originalTarget)!==this.$stage.get(0)))return!1;this.leave("animating"),this.trigger("translated")},e.prototype.viewport=function(){var d;return this.options.responsiveBaseElement!==b?d=a(this.options.responsiveBaseElement).width():b.innerWidth?d=b.innerWidth:c.documentElement&&c.documentElement.clientWidth?d=c.documentElement.clientWidth:console.warn("Can not detect viewport width."),d},e.prototype.replace=function(b){this.$stage.empty(),this._items=[],b&&(b=b instanceof jQuery?b:a(b)),this.settings.nestedItemSelector&&(b=b.find("."+this.settings.nestedItemSelector)),b.filter(function(){return 1===this.nodeType}).each(a.proxy(function(a,b){b=this.prepare(b),this.$stage.append(b),this._items.push(b),this._mergers.push(1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)},this)),this.reset(this.isNumeric(this.settings.startPosition)?this.settings.startPosition:0),this.invalidate("items")},e.prototype.add=function(b,c){var e=this.relative(this._current);c=c===d?this._items.length:this.normalize(c,!0),b=b instanceof jQuery?b:a(b),this.trigger("add",{content:b,position:c}),b=this.prepare(b),0===this._items.length||c===this._items.length?(0===this._items.length&&this.$stage.append(b),0!==this._items.length&&this._items[c-1].after(b),this._items.push(b),this._mergers.push(1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)):(this._items[c].before(b),this._items.splice(c,0,b),this._mergers.splice(c,0,1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)),this._items[e]&&this.reset(this._items[e].index()),this.invalidate("items"),this.trigger("added",{content:b,position:c})},e.prototype.remove=function(a){a=this.normalize(a,!0),a!==d&&(this.trigger("remove",{content:this._items[a],position:a}),this._items[a].remove(),this._items.splice(a,1),this._mergers.splice(a,1),this.invalidate("items"),this.trigger("removed",{content:null,position:a}))},e.prototype.preloadAutoWidthImages=function(b){b.each(a.proxy(function(b,c){this.enter("pre-loading"),c=a(c),a(new Image).one("load",a.proxy(function(a){c.attr("src",a.target.src),c.css("opacity",1),this.leave("pre-loading"),!this.is("pre-loading")&&!this.is("initializing")&&this.refresh()},this)).attr("src",c.attr("src")||c.attr("data-src")||c.attr("data-src-retina"))},this))},e.prototype.destroy=function(){this.$element.off(".owl.core"),this.$stage.off(".owl.core"),a(c).off(".owl.core"),this.settings.responsive!==!1&&(b.clearTimeout(this.resizeTimer),this.off(b,"resize",this._handlers.onThrottledResize));for(var d in this._plugins)this._plugins[d].destroy();this.$stage.children(".cloned").remove(),this.$stage.unwrap(),this.$stage.children().contents().unwrap(),this.$stage.children().unwrap(),this.$element.removeClass(this.options.refreshClass).removeClass(this.options.loadingClass).removeClass(this.options.loadedClass).removeClass(this.options.rtlClass).removeClass(this.options.dragClass).removeClass(this.options.grabClass).attr("class",this.$element.attr("class").replace(new RegExp(this.options.responsiveClass+"-\\S+\\s","g"),"")).removeData("owl.carousel")},e.prototype.op=function(a,b,c){var d=this.settings.rtl;switch(b){case"<":return d?a>c:a":return d?ac;case">=":return d?a<=c:a>=c;case"<=":return d?a>=c:a<=c}},e.prototype.on=function(a,b,c,d){a.addEventListener?a.addEventListener(b,c,d):a.attachEvent&&a.attachEvent("on"+b,c)},e.prototype.off=function(a,b,c,d){a.removeEventListener?a.removeEventListener(b,c,d):a.detachEvent&&a.detachEvent("on"+b,c)},e.prototype.trigger=function(b,c,d,f,g){var h={item:{count:this._items.length,index:this.current()}},i=a.camelCase(a.grep(["on",b,d],function(a){return a}).join("-").toLowerCase()),j=a.Event([b,"owl",d||"carousel"].join(".").toLowerCase(),a.extend({relatedTarget:this},h,c));return this._supress[b]||(a.each(this._plugins,function(a,b){b.onTrigger&&b.onTrigger(j)}),this.register({type:e.Type.Event,name:b}),this.$element.trigger(j),this.settings&&"function"==typeof this.settings[i]&&this.settings[i].call(this,j)),j},e.prototype.enter=function(b){a.each([b].concat(this._states.tags[b]||[]),a.proxy(function(a,b){this._states.current[b]===d&&(this._states.current[b]=0),this._states.current[b]++},this))},e.prototype.leave=function(b){a.each([b].concat(this._states.tags[b]||[]),a.proxy(function(a,b){this._states.current[b]--},this))},e.prototype.register=function(b){if(b.type===e.Type.Event){if(a.event.special[b.name]||(a.event.special[b.name]={}),!a.event.special[b.name].owl){var c=a.event.special[b.name]._default;a.event.special[b.name]._default=function(a){return!c||!c.apply||a.namespace&&a.namespace.indexOf("owl")!==-1?a.namespace&&a.namespace.indexOf("owl")>-1:c.apply(this,arguments)},a.event.special[b.name].owl=!0}}else b.type===e.Type.State&&(this._states.tags[b.name]?this._states.tags[b.name]=this._states.tags[b.name].concat(b.tags):this._states.tags[b.name]=b.tags,this._states.tags[b.name]=a.grep(this._states.tags[b.name],a.proxy(function(c,d){return a.inArray(c,this._states.tags[b.name])===d},this)))},e.prototype.suppress=function(b){a.each(b,a.proxy(function(a,b){this._supress[b]=!0},this))},e.prototype.release=function(b){a.each(b,a.proxy(function(a,b){delete this._supress[b]},this))},e.prototype.pointer=function(a){var c={x:null,y:null};return a=a.originalEvent||a||b.event,a=a.touches&&a.touches.length?a.touches[0]:a.changedTouches&&a.changedTouches.length?a.changedTouches[0]:a,a.pageX?(c.x=a.pageX,c.y=a.pageY):(c.x=a.clientX,c.y=a.clientY),c},e.prototype.isNumeric=function(a){return!isNaN(parseFloat(a))},e.prototype.difference=function(a,b){return{x:a.x-b.x,y:a.y-b.y}},a.fn.owlCarousel=function(b){var c=Array.prototype.slice.call(arguments,1);return this.each(function(){var d=a(this),f=d.data("owl.carousel");f||(f=new e(this,"object"==typeof b&&b),d.data("owl.carousel",f),a.each(["next","prev","to","destroy","refresh","replace","add","remove"],function(b,c){f.register({type:e.Type.Event,name:c}),f.$element.on(c+".owl.carousel.core",a.proxy(function(a){a.namespace&&a.relatedTarget!==this&&(this.suppress([c]),f[c].apply(this,[].slice.call(arguments,1)),this.release([c]))},f))})),"string"==typeof b&&"_"!==b.charAt(0)&&f[b].apply(f,c)})},a.fn.owlCarousel.Constructor=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._interval=null,this._visible=null,this._handlers={"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoRefresh&&this.watch()},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers)};e.Defaults={autoRefresh:!0,autoRefreshInterval:500},e.prototype.watch=function(){this._interval||(this._visible=this._core.$element.is(":visible"),this._interval=b.setInterval(a.proxy(this.refresh,this),this._core.settings.autoRefreshInterval))},e.prototype.refresh=function(){this._core.$element.is(":visible")!==this._visible&&(this._visible=!this._visible,this._core.$element.toggleClass("owl-hidden",!this._visible),this._visible&&this._core.invalidate("width")&&this._core.refresh())},e.prototype.destroy=function(){var a,c;b.clearInterval(this._interval);for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(c in Object.getOwnPropertyNames(this))"function"!=typeof this[c]&&(this[c]=null)},a.fn.owlCarousel.Constructor.Plugins.AutoRefresh=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._loaded=[],this._handlers={"initialized.owl.carousel change.owl.carousel resized.owl.carousel":a.proxy(function(b){if(b.namespace&&this._core.settings&&this._core.settings.lazyLoad&&(b.property&&"position"==b.property.name||"initialized"==b.type))for(var c=this._core.settings,e=c.center&&Math.ceil(c.items/2)||c.items,f=c.center&&e*-1||0,g=(b.property&&b.property.value!==d?b.property.value:this._core.current())+f,h=this._core.clones().length,i=a.proxy(function(a,b){this.load(b)},this);f++-1||(e.each(a.proxy(function(c,d){var e,f=a(d),g=b.devicePixelRatio>1&&f.attr("data-src-retina")||f.attr("data-src");this._core.trigger("load",{element:f,url:g},"lazy"),f.is("img")?f.one("load.owl.lazy",a.proxy(function(){f.css("opacity",1),this._core.trigger("loaded",{element:f,url:g},"lazy")},this)).attr("src",g):(e=new Image,e.onload=a.proxy(function(){f.css({"background-image":'url("'+g+'")',opacity:"1"}),this._core.trigger("loaded",{element:f,url:g},"lazy")},this),e.src=g)},this)),this._loaded.push(d.get(0)))},e.prototype.destroy=function(){var a,b;for(a in this.handlers)this._core.$element.off(a,this.handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.Lazy=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._handlers={"initialized.owl.carousel refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&this.update()},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&"position"==a.property.name&&this.update()},this),"loaded.owl.lazy":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&a.element.closest("."+this._core.settings.itemClass).index()===this._core.current()&&this.update()},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers)};e.Defaults={autoHeight:!1,autoHeightClass:"owl-height"},e.prototype.update=function(){var b=this._core._current,c=b+this._core.settings.items,d=this._core.$stage.children().toArray().slice(b,c),e=[],f=0;a.each(d,function(b,c){e.push(a(c).height())}),f=Math.max.apply(null,e),this._core.$stage.parent().height(f).addClass(this._core.settings.autoHeightClass)},e.prototype.destroy=function(){var a,b;for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.AutoHeight=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._videos={},this._playing=null,this._handlers={"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.register({type:"state",name:"playing",tags:["interacting"]})},this),"resize.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.video&&this.isInFullScreen()&&a.preventDefault()},this),"refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.is("resizing")&&this._core.$stage.find(".cloned .owl-video-frame").remove()},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&"position"===a.property.name&&this._playing&&this.stop()},this),"prepared.owl.carousel":a.proxy(function(b){if(b.namespace){var c=a(b.content).find(".owl-video");c.length&&(c.css("display","none"),this.fetch(c,a(b.content)))}},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers),this._core.$element.on("click.owl.video",".owl-video-play-icon",a.proxy(function(a){this.play(a)},this))};e.Defaults={video:!1,videoHeight:!1,videoWidth:!1},e.prototype.fetch=function(a,b){var c=function(){return a.attr("data-vimeo-id")?"vimeo":a.attr("data-vzaar-id")?"vzaar":"youtube"}(),d=a.attr("data-vimeo-id")||a.attr("data-youtube-id")||a.attr("data-vzaar-id"),e=a.attr("data-width")||this._core.settings.videoWidth,f=a.attr("data-height")||this._core.settings.videoHeight,g=a.attr("href");if(!g)throw new Error("Missing video URL.");if(d=g.match(/(http:|https:|)\/\/(player.|www.|app.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com)|vzaar\.com)\/(video\/|videos\/|embed\/|channels\/.+\/|groups\/.+\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/),d[3].indexOf("youtu")>-1)c="youtube";else if(d[3].indexOf("vimeo")>-1)c="vimeo";else{if(!(d[3].indexOf("vzaar")>-1))throw new Error("Video URL not supported.");c="vzaar"}d=d[6],this._videos[g]={type:c,id:d,width:e,height:f},b.attr("data-video",g),this.thumbnail(a,this._videos[g])},e.prototype.thumbnail=function(b,c){var d,e,f,g=c.width&&c.height?'style="width:'+c.width+"px;height:"+c.height+'px;"':"",h=b.find("img"),i="src",j="",k=this._core.settings,l=function(a){e='
',d=k.lazyLoad?'
':'
',b.after(d),b.after(e)};if(b.wrap('
"),this._core.settings.lazyLoad&&(i="data-src",j="owl-lazy"),h.length)return l(h.attr(i)),h.remove(),!1;"youtube"===c.type?(f="//img.youtube.com/vi/"+c.id+"/hqdefault.jpg",l(f)):"vimeo"===c.type?a.ajax({type:"GET",url:"//vimeo.com/api/v2/video/"+c.id+".json",jsonp:"callback",dataType:"jsonp",success:function(a){f=a[0].thumbnail_large,l(f)}}):"vzaar"===c.type&&a.ajax({type:"GET",url:"//vzaar.com/api/videos/"+c.id+".json",jsonp:"callback",dataType:"jsonp",success:function(a){f=a.framegrab_url,l(f)}})},e.prototype.stop=function(){this._core.trigger("stop",null,"video"),this._playing.find(".owl-video-frame").remove(),this._playing.removeClass("owl-video-playing"),this._playing=null,this._core.leave("playing"),this._core.trigger("stopped",null,"video")},e.prototype.play=function(b){var c,d=a(b.target),e=d.closest("."+this._core.settings.itemClass),f=this._videos[e.attr("data-video")],g=f.width||"100%",h=f.height||this._core.$stage.height();this._playing||(this._core.enter("playing"),this._core.trigger("play",null,"video"),e=this._core.items(this._core.relative(e.index())),this._core.reset(e.index()),"youtube"===f.type?c='':"vimeo"===f.type?c='':"vzaar"===f.type&&(c=''),a('
'+c+"
").insertAfter(e.find(".owl-video")),this._playing=e.addClass("owl-video-playing"))},e.prototype.isInFullScreen=function(){var b=c.fullscreenElement||c.mozFullScreenElement||c.webkitFullscreenElement;return b&&a(b).parent().hasClass("owl-video-frame")},e.prototype.destroy=function(){var a,b;this._core.$element.off("click.owl.video");for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.Video=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this.core=b,this.core.options=a.extend({},e.Defaults,this.core.options),this.swapping=!0,this.previous=d,this.next=d,this.handlers={"change.owl.carousel":a.proxy(function(a){a.namespace&&"position"==a.property.name&&(this.previous=this.core.current(),this.next=a.property.value)},this),"drag.owl.carousel dragged.owl.carousel translated.owl.carousel":a.proxy(function(a){a.namespace&&(this.swapping="translated"==a.type)},this),"translate.owl.carousel":a.proxy(function(a){a.namespace&&this.swapping&&(this.core.options.animateOut||this.core.options.animateIn)&&this.swap()},this)},this.core.$element.on(this.handlers)};e.Defaults={animateOut:!1,animateIn:!1},e.prototype.swap=function(){if(1===this.core.settings.items&&a.support.animation&&a.support.transition){this.core.speed(0);var b,c=a.proxy(this.clear,this),d=this.core.$stage.children().eq(this.previous),e=this.core.$stage.children().eq(this.next),f=this.core.settings.animateIn,g=this.core.settings.animateOut;this.core.current()!==this.previous&&(g&&(b=this.core.coordinates(this.previous)-this.core.coordinates(this.next),d.one(a.support.animation.end,c).css({left:b+"px"}).addClass("animated owl-animated-out").addClass(g)),f&&e.one(a.support.animation.end,c).addClass("animated owl-animated-in").addClass(f))}},e.prototype.clear=function(b){a(b.target).css({left:""}).removeClass("animated owl-animated-out owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut),this.core.onTransitionEnd()},e.prototype.destroy=function(){var a,b;for(a in this.handlers)this.core.$element.off(a,this.handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)}, +a.fn.owlCarousel.Constructor.Plugins.Animate=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._timeout=null,this._paused=!1,this._handlers={"changed.owl.carousel":a.proxy(function(a){a.namespace&&"settings"===a.property.name?this._core.settings.autoplay?this.play():this.stop():a.namespace&&"position"===a.property.name&&this._core.settings.autoplay&&this._setAutoPlayInterval()},this),"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoplay&&this.play()},this),"play.owl.autoplay":a.proxy(function(a,b,c){a.namespace&&this.play(b,c)},this),"stop.owl.autoplay":a.proxy(function(a){a.namespace&&this.stop()},this),"mouseover.owl.autoplay":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.pause()},this),"mouseleave.owl.autoplay":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.play()},this),"touchstart.owl.core":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.pause()},this),"touchend.owl.core":a.proxy(function(){this._core.settings.autoplayHoverPause&&this.play()},this)},this._core.$element.on(this._handlers),this._core.options=a.extend({},e.Defaults,this._core.options)};e.Defaults={autoplay:!1,autoplayTimeout:5e3,autoplayHoverPause:!1,autoplaySpeed:!1},e.prototype.play=function(a,b){this._paused=!1,this._core.is("rotating")||(this._core.enter("rotating"),this._setAutoPlayInterval())},e.prototype._getNextTimeout=function(d,e){return this._timeout&&b.clearTimeout(this._timeout),b.setTimeout(a.proxy(function(){this._paused||this._core.is("busy")||this._core.is("interacting")||c.hidden||this._core.next(e||this._core.settings.autoplaySpeed)},this),d||this._core.settings.autoplayTimeout)},e.prototype._setAutoPlayInterval=function(){this._timeout=this._getNextTimeout()},e.prototype.stop=function(){this._core.is("rotating")&&(b.clearTimeout(this._timeout),this._core.leave("rotating"))},e.prototype.pause=function(){this._core.is("rotating")&&(this._paused=!0)},e.prototype.destroy=function(){var a,b;this.stop();for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.autoplay=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){"use strict";var e=function(b){this._core=b,this._initialized=!1,this._pages=[],this._controls={},this._templates=[],this.$element=this._core.$element,this._overrides={next:this._core.next,prev:this._core.prev,to:this._core.to},this._handlers={"prepared.owl.carousel":a.proxy(function(b){b.namespace&&this._core.settings.dotsData&&this._templates.push('
'+a(b.content).find("[data-dot]").addBack("[data-dot]").attr("data-dot")+"
")},this),"added.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.dotsData&&this._templates.splice(a.position,0,this._templates.pop())},this),"remove.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.dotsData&&this._templates.splice(a.position,1)},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&"position"==a.property.name&&this.draw()},this),"initialized.owl.carousel":a.proxy(function(a){a.namespace&&!this._initialized&&(this._core.trigger("initialize",null,"navigation"),this.initialize(),this.update(),this.draw(),this._initialized=!0,this._core.trigger("initialized",null,"navigation"))},this),"refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._initialized&&(this._core.trigger("refresh",null,"navigation"),this.update(),this.draw(),this._core.trigger("refreshed",null,"navigation"))},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this.$element.on(this._handlers)};e.Defaults={nav:!1,navText:["prev","next"],navSpeed:!1,navElement:"div",navContainer:!1,navContainerClass:"owl-nav",navClass:["owl-prev","owl-next"],slideBy:1,dotClass:"owl-dot",dotsClass:"owl-dots",dots:!0,dotsEach:!1,dotsData:!1,dotsSpeed:!1,dotsContainer:!1},e.prototype.initialize=function(){var b,c=this._core.settings;this._controls.$relative=(c.navContainer?a(c.navContainer):a("
").addClass(c.navContainerClass).appendTo(this.$element)).addClass("disabled"),this._controls.$previous=a("<"+c.navElement+">").addClass(c.navClass[0]).html(c.navText[0]).prependTo(this._controls.$relative).on("click",a.proxy(function(a){this.prev(c.navSpeed)},this)),this._controls.$next=a("<"+c.navElement+">").addClass(c.navClass[1]).html(c.navText[1]).appendTo(this._controls.$relative).on("click",a.proxy(function(a){this.next(c.navSpeed)},this)),c.dotsData||(this._templates=[a("
").addClass(c.dotClass).append(a("")).prop("outerHTML")]),this._controls.$absolute=(c.dotsContainer?a(c.dotsContainer):a("
").addClass(c.dotsClass).appendTo(this.$element)).addClass("disabled"),this._controls.$absolute.on("click","div",a.proxy(function(b){var d=a(b.target).parent().is(this._controls.$absolute)?a(b.target).index():a(b.target).parent().index();b.preventDefault(),this.to(d,c.dotsSpeed)},this));for(b in this._overrides)this._core[b]=a.proxy(this[b],this)},e.prototype.destroy=function(){var a,b,c,d;for(a in this._handlers)this.$element.off(a,this._handlers[a]);for(b in this._controls)this._controls[b].remove();for(d in this.overides)this._core[d]=this._overrides[d];for(c in Object.getOwnPropertyNames(this))"function"!=typeof this[c]&&(this[c]=null)},e.prototype.update=function(){var a,b,c,d=this._core.clones().length/2,e=d+this._core.items().length,f=this._core.maximum(!0),g=this._core.settings,h=g.center||g.autoWidth||g.dotsData?1:g.dotsEach||g.items;if("page"!==g.slideBy&&(g.slideBy=Math.min(g.slideBy,g.items)),g.dots||"page"==g.slideBy)for(this._pages=[],a=d,b=0,c=0;a=h||0===b){if(this._pages.push({start:Math.min(f,a-d),end:a-d+h-1}),Math.min(f,a-d)===f)break;b=0,++c}b+=this._core.mergers(this._core.relative(a))}},e.prototype.draw=function(){var b,c=this._core.settings,d=this._core.items().length<=c.items,e=this._core.relative(this._core.current()),f=c.loop||c.rewind;this._controls.$relative.toggleClass("disabled",!c.nav||d),c.nav&&(this._controls.$previous.toggleClass("disabled",!f&&e<=this._core.minimum(!0)),this._controls.$next.toggleClass("disabled",!f&&e>=this._core.maximum(!0))),this._controls.$absolute.toggleClass("disabled",!c.dots||d),c.dots&&(b=this._pages.length-this._controls.$absolute.children().length,c.dotsData&&0!==b?this._controls.$absolute.html(this._templates.join("")):b>0?this._controls.$absolute.append(new Array(b+1).join(this._templates[0])):b<0&&this._controls.$absolute.children().slice(b).remove(),this._controls.$absolute.find(".active").removeClass("active"),this._controls.$absolute.children().eq(a.inArray(this.current(),this._pages)).addClass("active"))},e.prototype.onTrigger=function(b){var c=this._core.settings;b.page={index:a.inArray(this.current(),this._pages),count:this._pages.length,size:c&&(c.center||c.autoWidth||c.dotsData?1:c.dotsEach||c.items)}},e.prototype.current=function(){var b=this._core.relative(this._core.current());return a.grep(this._pages,a.proxy(function(a,c){return a.start<=b&&a.end>=b},this)).pop()},e.prototype.getPosition=function(b){var c,d,e=this._core.settings;return"page"==e.slideBy?(c=a.inArray(this.current(),this._pages),d=this._pages.length,b?++c:--c,c=this._pages[(c%d+d)%d].start):(c=this._core.relative(this._core.current()),d=this._core.items().length,b?c+=e.slideBy:c-=e.slideBy),c},e.prototype.next=function(b){a.proxy(this._overrides.to,this._core)(this.getPosition(!0),b)},e.prototype.prev=function(b){a.proxy(this._overrides.to,this._core)(this.getPosition(!1),b)},e.prototype.to=function(b,c,d){var e;!d&&this._pages.length?(e=this._pages.length,a.proxy(this._overrides.to,this._core)(this._pages[(b%e+e)%e].start,c)):a.proxy(this._overrides.to,this._core)(b,c)},a.fn.owlCarousel.Constructor.Plugins.Navigation=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){"use strict";var e=function(c){this._core=c,this._hashes={},this.$element=this._core.$element,this._handlers={"initialized.owl.carousel":a.proxy(function(c){c.namespace&&"URLHash"===this._core.settings.startPosition&&a(b).trigger("hashchange.owl.navigation")},this),"prepared.owl.carousel":a.proxy(function(b){if(b.namespace){var c=a(b.content).find("[data-hash]").addBack("[data-hash]").attr("data-hash");if(!c)return;this._hashes[c]=b.content}},this),"changed.owl.carousel":a.proxy(function(c){if(c.namespace&&"position"===c.property.name){var d=this._core.items(this._core.relative(this._core.current())),e=a.map(this._hashes,function(a,b){return a===d?b:null}).join();if(!e||b.location.hash.slice(1)===e)return;b.location.hash=e}},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this.$element.on(this._handlers),a(b).on("hashchange.owl.navigation",a.proxy(function(a){var c=b.location.hash.substring(1),e=this._core.$stage.children(),f=this._hashes[c]&&e.index(this._hashes[c]);f!==d&&f!==this._core.current()&&this._core.to(this._core.relative(f),!1,!0)},this))};e.Defaults={URLhashListener:!1},e.prototype.destroy=function(){var c,d;a(b).off("hashchange.owl.navigation");for(c in this._handlers)this._core.$element.off(c,this._handlers[c]);for(d in Object.getOwnPropertyNames(this))"function"!=typeof this[d]&&(this[d]=null)},a.fn.owlCarousel.Constructor.Plugins.Hash=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){function e(b,c){var e=!1,f=b.charAt(0).toUpperCase()+b.slice(1);return a.each((b+" "+h.join(f+" ")+f).split(" "),function(a,b){if(g[b]!==d)return e=!c||b,!1}),e}function f(a){return e(a,!0)}var g=a("").get(0).style,h="Webkit Moz O ms".split(" "),i={transition:{end:{WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",transition:"transitionend"}},animation:{end:{WebkitAnimation:"webkitAnimationEnd",MozAnimation:"animationend",OAnimation:"oAnimationEnd",animation:"animationend"}}},j={csstransforms:function(){return!!e("transform")},csstransforms3d:function(){return!!e("perspective")},csstransitions:function(){return!!e("transition")},cssanimations:function(){return!!e("animation")}};j.csstransitions()&&(a.support.transition=new String(f("transition")),a.support.transition.end=i.transition.end[a.support.transition]),j.cssanimations()&&(a.support.animation=new String(f("animation")),a.support.animation.end=i.animation.end[a.support.animation]),j.csstransforms()&&(a.support.transform=new String(f("transform")),a.support.transform3d=j.csstransforms3d())}(window.Zepto||window.jQuery,window,document); \ No newline at end of file diff --git a/home/lib/parallax/parallax.min.js b/home/lib/parallax/parallax.min.js new file mode 100644 index 0000000..8d85c99 --- /dev/null +++ b/home/lib/parallax/parallax.min.js @@ -0,0 +1,6 @@ +/*! + * parallax.js v1.5.0 (http://pixelcog.github.io/parallax.js/) + * @copyright 2016 PixelCog, Inc. + * @license MIT (https://github.com/pixelcog/parallax.js/blob/master/LICENSE) + */ +!function(t,i,e,s){function o(i,e){var h=this;"object"==typeof e&&(delete e.refresh,delete e.render,t.extend(this,e)),this.$element=t(i),!this.imageSrc&&this.$element.is("img")&&(this.imageSrc=this.$element.attr("src"));var r=(this.position+"").toLowerCase().match(/\S+/g)||[];if(r.length<1&&r.push("center"),1==r.length&&r.push(r[0]),"top"!=r[0]&&"bottom"!=r[0]&&"left"!=r[1]&&"right"!=r[1]||(r=[r[1],r[0]]),this.positionX!==s&&(r[0]=this.positionX.toLowerCase()),this.positionY!==s&&(r[1]=this.positionY.toLowerCase()),h.positionX=r[0],h.positionY=r[1],"left"!=this.positionX&&"right"!=this.positionX&&(isNaN(parseInt(this.positionX))?this.positionX="center":this.positionX=parseInt(this.positionX)),"top"!=this.positionY&&"bottom"!=this.positionY&&(isNaN(parseInt(this.positionY))?this.positionY="center":this.positionY=parseInt(this.positionY)),this.position=this.positionX+(isNaN(this.positionX)?"":"px")+" "+this.positionY+(isNaN(this.positionY)?"":"px"),navigator.userAgent.match(/(iPod|iPhone|iPad)/))return this.imageSrc&&this.iosFix&&!this.$element.is("img")&&this.$element.css({backgroundImage:"url("+this.imageSrc+")",backgroundSize:"cover",backgroundPosition:this.position}),this;if(navigator.userAgent.match(/(Android)/))return this.imageSrc&&this.androidFix&&!this.$element.is("img")&&this.$element.css({backgroundImage:"url("+this.imageSrc+")",backgroundSize:"cover",backgroundPosition:this.position}),this;this.$mirror=t("
").prependTo(this.mirrorContainer);var a=this.$element.find(">.parallax-slider"),n=!1;0==a.length?this.$slider=t("").prependTo(this.$mirror):(this.$slider=a.prependTo(this.$mirror),n=!0),this.$mirror.addClass("parallax-mirror").css({visibility:"hidden",zIndex:this.zIndex,position:"fixed",top:0,left:0,overflow:"hidden"}),this.$slider.addClass("parallax-slider").one("load",function(){h.naturalHeight&&h.naturalWidth||(h.naturalHeight=this.naturalHeight||this.height||1,h.naturalWidth=this.naturalWidth||this.width||1),h.aspectRatio=h.naturalWidth/h.naturalHeight,o.isSetup||o.setup(),o.sliders.push(h),o.isFresh=!1,o.requestRender()}),n||(this.$slider[0].src=this.imageSrc),(this.naturalHeight&&this.naturalWidth||this.$slider[0].complete||a.length>0)&&this.$slider.trigger("load")}!function(){for(var t=0,e=["ms","moz","webkit","o"],s=0;s=this.boxWidth?(this.imageWidth=r*this.aspectRatio|0,this.imageHeight=r,this.offsetBaseTop=a,t=this.imageWidth-this.boxWidth,"left"==this.positionX?this.offsetLeft=0:"right"==this.positionX?this.offsetLeft=-t:isNaN(this.positionX)?this.offsetLeft=-t/2|0:this.offsetLeft=Math.max(this.positionX,-t)):(this.imageWidth=this.boxWidth,this.imageHeight=this.boxWidth/this.aspectRatio|0,this.offsetLeft=0,t=this.imageHeight-r,"top"==this.positionY?this.offsetBaseTop=a:"bottom"==this.positionY?this.offsetBaseTop=a-t:isNaN(this.positionY)?this.offsetBaseTop=a-t/2|0:this.offsetBaseTop=a+Math.max(this.positionY,-t))},render:function(){var t=o.scrollTop,i=o.scrollLeft,e=this.overScrollFix?o.overScroll:0,s=t+o.winHeight;this.boxOffsetBottom>t&&this.boxOffsetTop<=s?(this.visibility="visible",this.mirrorTop=this.boxOffsetTop-t,this.mirrorLeft=this.boxOffsetLeft-i,this.offsetTop=this.offsetBaseTop-this.mirrorTop*(1-this.speed)):this.visibility="hidden",this.$mirror.css({transform:"translate3d("+this.mirrorLeft+"px, "+(this.mirrorTop-e)+"px, 0px)",visibility:this.visibility,height:this.boxHeight,width:this.boxWidth}),this.$slider.css({transform:"translate3d("+this.offsetLeft+"px, "+this.offsetTop+"px, 0px)",position:"absolute",height:this.imageHeight,width:this.imageWidth,maxWidth:"none"})}}),t.extend(o,{scrollTop:0,scrollLeft:0,winHeight:0,winWidth:0,docHeight:1<<30,docWidth:1<<30,sliders:[],isReady:!1,isFresh:!1,isBusy:!1,setup:function(){function s(){if(p==i.pageYOffset)return i.requestAnimationFrame(s),!1;p=i.pageYOffset,h.render(),i.requestAnimationFrame(s)}if(!this.isReady){var h=this,r=t(e),a=t(i),n=function(){o.winHeight=a.height(),o.winWidth=a.width(),o.docHeight=r.height(),o.docWidth=r.width()},l=function(){var t=a.scrollTop(),i=o.docHeight-o.winHeight,e=o.docWidth-o.winWidth;o.scrollTop=Math.max(0,Math.min(i,t)),o.scrollLeft=Math.max(0,Math.min(e,a.scrollLeft())),o.overScroll=Math.max(t-i,Math.min(t,0))};a.on("resize.px.parallax load.px.parallax",function(){n(),h.refresh(),o.isFresh=!1,o.requestRender()}).on("scroll.px.parallax load.px.parallax",function(){l(),o.requestRender()}),n(),l(),this.isReady=!0;var p=-1;s()}},configure:function(i){"object"==typeof i&&(delete i.refresh,delete i.render,t.extend(this.prototype,i))},refresh:function(){t.each(this.sliders,function(){this.refresh()}),this.isFresh=!0},render:function(){this.isFresh||this.refresh(),t.each(this.sliders,function(){this.render()})},requestRender:function(){var t=this;t.render(),t.isBusy=!1},destroy:function(e){var s,h=t(e).data("px.parallax");for(h.$mirror.remove(),s=0;s 'lib/waypoints/waypoints.min.js' + ); +?> diff --git a/home/lib/waypoints/waypoints.min.js b/home/lib/waypoints/waypoints.min.js new file mode 100644 index 0000000..609ece0 --- /dev/null +++ b/home/lib/waypoints/waypoints.min.js @@ -0,0 +1,7 @@ +/*! +Waypoints - 4.0.1 +Copyright © 2011-2016 Caleb Troughton +Licensed under the MIT license. +https://github.com/imakewebthings/waypoints/blob/master/licenses.txt +*/ +!function(){"use strict";function t(o){if(!o)throw new Error("No options passed to Waypoint constructor");if(!o.element)throw new Error("No element option passed to Waypoint constructor");if(!o.handler)throw new Error("No handler option passed to Waypoint constructor");this.key="waypoint-"+e,this.options=t.Adapter.extend({},t.defaults,o),this.element=this.options.element,this.adapter=new t.Adapter(this.element),this.callback=o.handler,this.axis=this.options.horizontal?"horizontal":"vertical",this.enabled=this.options.enabled,this.triggerPoint=null,this.group=t.Group.findOrCreate({name:this.options.group,axis:this.axis}),this.context=t.Context.findOrCreateByElement(this.options.context),t.offsetAliases[this.options.offset]&&(this.options.offset=t.offsetAliases[this.options.offset]),this.group.add(this),this.context.add(this),i[this.key]=this,e+=1}var e=0,i={};t.prototype.queueTrigger=function(t){this.group.queueTrigger(this,t)},t.prototype.trigger=function(t){this.enabled&&this.callback&&this.callback.apply(this,t)},t.prototype.destroy=function(){this.context.remove(this),this.group.remove(this),delete i[this.key]},t.prototype.disable=function(){return this.enabled=!1,this},t.prototype.enable=function(){return this.context.refresh(),this.enabled=!0,this},t.prototype.next=function(){return this.group.next(this)},t.prototype.previous=function(){return this.group.previous(this)},t.invokeAll=function(t){var e=[];for(var o in i)e.push(i[o]);for(var n=0,r=e.length;r>n;n++)e[n][t]()},t.destroyAll=function(){t.invokeAll("destroy")},t.disableAll=function(){t.invokeAll("disable")},t.enableAll=function(){t.Context.refreshAll();for(var e in i)i[e].enabled=!0;return this},t.refreshAll=function(){t.Context.refreshAll()},t.viewportHeight=function(){return window.innerHeight||document.documentElement.clientHeight},t.viewportWidth=function(){return document.documentElement.clientWidth},t.adapters=[],t.defaults={context:window,continuous:!0,enabled:!0,group:"default",horizontal:!1,offset:0},t.offsetAliases={"bottom-in-view":function(){return this.context.innerHeight()-this.adapter.outerHeight()},"right-in-view":function(){return this.context.innerWidth()-this.adapter.outerWidth()}},window.Waypoint=t}(),function(){"use strict";function t(t){window.setTimeout(t,1e3/60)}function e(t){this.element=t,this.Adapter=n.Adapter,this.adapter=new this.Adapter(t),this.key="waypoint-context-"+i,this.didScroll=!1,this.didResize=!1,this.oldScroll={x:this.adapter.scrollLeft(),y:this.adapter.scrollTop()},this.waypoints={vertical:{},horizontal:{}},t.waypointContextKey=this.key,o[t.waypointContextKey]=this,i+=1,n.windowContext||(n.windowContext=!0,n.windowContext=new e(window)),this.createThrottledScrollHandler(),this.createThrottledResizeHandler()}var i=0,o={},n=window.Waypoint,r=window.onload;e.prototype.add=function(t){var e=t.options.horizontal?"horizontal":"vertical";this.waypoints[e][t.key]=t,this.refresh()},e.prototype.checkEmpty=function(){var t=this.Adapter.isEmptyObject(this.waypoints.horizontal),e=this.Adapter.isEmptyObject(this.waypoints.vertical),i=this.element==this.element.window;t&&e&&!i&&(this.adapter.off(".waypoints"),delete o[this.key])},e.prototype.createThrottledResizeHandler=function(){function t(){e.handleResize(),e.didResize=!1}var e=this;this.adapter.on("resize.waypoints",function(){e.didResize||(e.didResize=!0,n.requestAnimationFrame(t))})},e.prototype.createThrottledScrollHandler=function(){function t(){e.handleScroll(),e.didScroll=!1}var e=this;this.adapter.on("scroll.waypoints",function(){(!e.didScroll||n.isTouch)&&(e.didScroll=!0,n.requestAnimationFrame(t))})},e.prototype.handleResize=function(){n.Context.refreshAll()},e.prototype.handleScroll=function(){var t={},e={horizontal:{newScroll:this.adapter.scrollLeft(),oldScroll:this.oldScroll.x,forward:"right",backward:"left"},vertical:{newScroll:this.adapter.scrollTop(),oldScroll:this.oldScroll.y,forward:"down",backward:"up"}};for(var i in e){var o=e[i],n=o.newScroll>o.oldScroll,r=n?o.forward:o.backward;for(var s in this.waypoints[i]){var a=this.waypoints[i][s];if(null!==a.triggerPoint){var l=o.oldScroll=a.triggerPoint,p=l&&h,u=!l&&!h;(p||u)&&(a.queueTrigger(r),t[a.group.id]=a.group)}}}for(var c in t)t[c].flushTriggers();this.oldScroll={x:e.horizontal.newScroll,y:e.vertical.newScroll}},e.prototype.innerHeight=function(){return this.element==this.element.window?n.viewportHeight():this.adapter.innerHeight()},e.prototype.remove=function(t){delete this.waypoints[t.axis][t.key],this.checkEmpty()},e.prototype.innerWidth=function(){return this.element==this.element.window?n.viewportWidth():this.adapter.innerWidth()},e.prototype.destroy=function(){var t=[];for(var e in this.waypoints)for(var i in this.waypoints[e])t.push(this.waypoints[e][i]);for(var o=0,n=t.length;n>o;o++)t[o].destroy()},e.prototype.refresh=function(){var t,e=this.element==this.element.window,i=e?void 0:this.adapter.offset(),o={};this.handleScroll(),t={horizontal:{contextOffset:e?0:i.left,contextScroll:e?0:this.oldScroll.x,contextDimension:this.innerWidth(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{contextOffset:e?0:i.top,contextScroll:e?0:this.oldScroll.y,contextDimension:this.innerHeight(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}};for(var r in t){var s=t[r];for(var a in this.waypoints[r]){var l,h,p,u,c,d=this.waypoints[r][a],f=d.options.offset,w=d.triggerPoint,y=0,g=null==w;d.element!==d.element.window&&(y=d.adapter.offset()[s.offsetProp]),"function"==typeof f?f=f.apply(d):"string"==typeof f&&(f=parseFloat(f),d.options.offset.indexOf("%")>-1&&(f=Math.ceil(s.contextDimension*f/100))),l=s.contextScroll-s.contextOffset,d.triggerPoint=Math.floor(y+l-f),h=w=s.oldScroll,u=h&&p,c=!h&&!p,!g&&u?(d.queueTrigger(s.backward),o[d.group.id]=d.group):!g&&c?(d.queueTrigger(s.forward),o[d.group.id]=d.group):g&&s.oldScroll>=d.triggerPoint&&(d.queueTrigger(s.forward),o[d.group.id]=d.group)}}return n.requestAnimationFrame(function(){for(var t in o)o[t].flushTriggers()}),this},e.findOrCreateByElement=function(t){return e.findByElement(t)||new e(t)},e.refreshAll=function(){for(var t in o)o[t].refresh()},e.findByElement=function(t){return o[t.waypointContextKey]},window.onload=function(){r&&r(),e.refreshAll()},n.requestAnimationFrame=function(e){var i=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||t;i.call(window,e)},n.Context=e}(),function(){"use strict";function t(t,e){return t.triggerPoint-e.triggerPoint}function e(t,e){return e.triggerPoint-t.triggerPoint}function i(t){this.name=t.name,this.axis=t.axis,this.id=this.name+"-"+this.axis,this.waypoints=[],this.clearTriggerQueues(),o[this.axis][this.name]=this}var o={vertical:{},horizontal:{}},n=window.Waypoint;i.prototype.add=function(t){this.waypoints.push(t)},i.prototype.clearTriggerQueues=function(){this.triggerQueues={up:[],down:[],left:[],right:[]}},i.prototype.flushTriggers=function(){for(var i in this.triggerQueues){var o=this.triggerQueues[i],n="up"===i||"left"===i;o.sort(n?e:t);for(var r=0,s=o.length;s>r;r+=1){var a=o[r];(a.options.continuous||r===o.length-1)&&a.trigger([i])}}this.clearTriggerQueues()},i.prototype.next=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints),o=i===this.waypoints.length-1;return o?null:this.waypoints[i+1]},i.prototype.previous=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints);return i?this.waypoints[i-1]:null},i.prototype.queueTrigger=function(t,e){this.triggerQueues[e].push(t)},i.prototype.remove=function(t){var e=n.Adapter.inArray(t,this.waypoints);e>-1&&this.waypoints.splice(e,1)},i.prototype.first=function(){return this.waypoints[0]},i.prototype.last=function(){return this.waypoints[this.waypoints.length-1]},i.findOrCreate=function(t){return o[t.axis][t.name]||new i(t)},n.Group=i}(),function(){"use strict";function t(t){this.$element=e(t)}var e=window.jQuery,i=window.Waypoint;e.each(["innerHeight","innerWidth","off","offset","on","outerHeight","outerWidth","scrollLeft","scrollTop"],function(e,i){t.prototype[i]=function(){var t=Array.prototype.slice.call(arguments);return this.$element[i].apply(this.$element,t)}}),e.each(["extend","inArray","isEmptyObject"],function(i,o){t[o]=e[o]}),i.adapters.push({name:"jquery",Adapter:t}),i.Adapter=t}(),function(){"use strict";function t(t){return function(){var i=[],o=arguments[0];return t.isFunction(arguments[0])&&(o=t.extend({},arguments[1]),o.handler=arguments[0]),this.each(function(){var n=t.extend({},o,{element:this});"string"==typeof n.context&&(n.context=t(this).closest(n.context)[0]),i.push(new e(n))}),i}}var e=window.Waypoint;window.jQuery&&(window.jQuery.fn.waypoint=t(window.jQuery)),window.Zepto&&(window.Zepto.fn.waypoint=t(window.Zepto))}(); \ No newline at end of file diff --git a/home/lib/wow/wow.js b/home/lib/wow/wow.js new file mode 100644 index 0000000..42dabed --- /dev/null +++ b/home/lib/wow/wow.js @@ -0,0 +1,542 @@ +/* +* WOW wow.js - v1.3.0 - 2016-10-04 +* https://wowjs.uk +* Copyright (c) 2016 Thomas Grainger; Licensed MIT +*/ + +(function (global, factory) { + if (typeof define === "function" && define.amd) { + define(['module', 'exports'], factory); + } else if (typeof exports !== "undefined") { + factory(module, exports); + } else { + var mod = { + exports: {} + }; + factory(mod, mod.exports); + global.WOW = mod.exports; + } +})(this, function (module, exports) { + 'use strict'; + + Object.defineProperty(exports, "__esModule", { + value: true + }); + + var _class, _temp; + + function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + + var _createClass = function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; + }(); + + function isIn(needle, haystack) { + return haystack.indexOf(needle) >= 0; + } + + function extend(custom, defaults) { + for (var key in defaults) { + if (custom[key] == null) { + var value = defaults[key]; + custom[key] = value; + } + } + return custom; + } + + function isMobile(agent) { + return (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(agent) + ); + } + + function createEvent(event) { + var bubble = arguments.length <= 1 || arguments[1] === undefined ? false : arguments[1]; + var cancel = arguments.length <= 2 || arguments[2] === undefined ? false : arguments[2]; + var detail = arguments.length <= 3 || arguments[3] === undefined ? null : arguments[3]; + + var customEvent = void 0; + if (document.createEvent != null) { + // W3C DOM + customEvent = document.createEvent('CustomEvent'); + customEvent.initCustomEvent(event, bubble, cancel, detail); + } else if (document.createEventObject != null) { + // IE DOM < 9 + customEvent = document.createEventObject(); + customEvent.eventType = event; + } else { + customEvent.eventName = event; + } + + return customEvent; + } + + function emitEvent(elem, event) { + if (elem.dispatchEvent != null) { + // W3C DOM + elem.dispatchEvent(event); + } else if (event in (elem != null)) { + elem[event](); + } else if ('on' + event in (elem != null)) { + elem['on' + event](); + } + } + + function addEvent(elem, event, fn) { + if (elem.addEventListener != null) { + // W3C DOM + elem.addEventListener(event, fn, false); + } else if (elem.attachEvent != null) { + // IE DOM + elem.attachEvent('on' + event, fn); + } else { + // fallback + elem[event] = fn; + } + } + + function removeEvent(elem, event, fn) { + if (elem.removeEventListener != null) { + // W3C DOM + elem.removeEventListener(event, fn, false); + } else if (elem.detachEvent != null) { + // IE DOM + elem.detachEvent('on' + event, fn); + } else { + // fallback + delete elem[event]; + } + } + + function getInnerHeight() { + if ('innerHeight' in window) { + return window.innerHeight; + } + + return document.documentElement.clientHeight; + } + + // Minimalistic WeakMap shim, just in case. + var WeakMap = window.WeakMap || window.MozWeakMap || function () { + function WeakMap() { + _classCallCheck(this, WeakMap); + + this.keys = []; + this.values = []; + } + + _createClass(WeakMap, [{ + key: 'get', + value: function get(key) { + for (var i = 0; i < this.keys.length; i++) { + var item = this.keys[i]; + if (item === key) { + return this.values[i]; + } + } + return undefined; + } + }, { + key: 'set', + value: function set(key, value) { + for (var i = 0; i < this.keys.length; i++) { + var item = this.keys[i]; + if (item === key) { + this.values[i] = value; + return this; + } + } + this.keys.push(key); + this.values.push(value); + return this; + } + }]); + + return WeakMap; + }(); + + // Dummy MutationObserver, to avoid raising exceptions. + var MutationObserver = window.MutationObserver || window.WebkitMutationObserver || window.MozMutationObserver || (_temp = _class = function () { + function MutationObserver() { + _classCallCheck(this, MutationObserver); + + if (typeof console !== 'undefined' && console !== null) { + console.warn('MutationObserver is not supported by your browser.'); + console.warn('WOW.js cannot detect dom mutations, please call .sync() after loading new content.'); + } + } + + _createClass(MutationObserver, [{ + key: 'observe', + value: function observe() {} + }]); + + return MutationObserver; + }(), _class.notSupported = true, _temp); + + // getComputedStyle shim, from http://stackoverflow.com/a/21797294 + var getComputedStyle = window.getComputedStyle || function getComputedStyle(el) { + var getComputedStyleRX = /(\-([a-z]){1})/g; + return { + getPropertyValue: function getPropertyValue(prop) { + if (prop === 'float') { + prop = 'styleFloat'; + } + if (getComputedStyleRX.test(prop)) { + prop.replace(getComputedStyleRX, function (_, _char) { + return _char.toUpperCase(); + }); + } + var currentStyle = el.currentStyle; + + return (currentStyle != null ? currentStyle[prop] : void 0) || null; + } + }; + }; + + var WOW = function () { + function WOW() { + var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; + + _classCallCheck(this, WOW); + + this.defaults = { + boxClass: 'wow', + animateClass: 'animated', + offset: 0, + mobile: true, + live: true, + callback: null, + scrollContainer: null, + resetAnimation: true + }; + + this.animate = function animateFactory() { + if ('requestAnimationFrame' in window) { + return function (callback) { + return window.requestAnimationFrame(callback); + }; + } + return function (callback) { + return callback(); + }; + }(); + + this.vendors = ['moz', 'webkit']; + + this.start = this.start.bind(this); + this.resetAnimation = this.resetAnimation.bind(this); + this.scrollHandler = this.scrollHandler.bind(this); + this.scrollCallback = this.scrollCallback.bind(this); + this.scrolled = true; + this.config = extend(options, this.defaults); + if (options.scrollContainer != null) { + this.config.scrollContainer = document.querySelector(options.scrollContainer); + } + // Map of elements to animation names: + this.animationNameCache = new WeakMap(); + this.wowEvent = createEvent(this.config.boxClass); + } + + _createClass(WOW, [{ + key: 'init', + value: function init() { + this.element = window.document.documentElement; + if (isIn(document.readyState, ['interactive', 'complete'])) { + this.start(); + } else { + addEvent(document, 'DOMContentLoaded', this.start); + } + this.finished = []; + } + }, { + key: 'start', + value: function start() { + var _this = this; + + this.stopped = false; + this.boxes = [].slice.call(this.element.querySelectorAll('.' + this.config.boxClass)); + this.all = this.boxes.slice(0); + if (this.boxes.length) { + if (this.disabled()) { + this.resetStyle(); + } else { + for (var i = 0; i < this.boxes.length; i++) { + var box = this.boxes[i]; + this.applyStyle(box, true); + } + } + } + if (!this.disabled()) { + addEvent(this.config.scrollContainer || window, 'scroll', this.scrollHandler); + addEvent(window, 'resize', this.scrollHandler); + this.interval = setInterval(this.scrollCallback, 50); + } + if (this.config.live) { + var mut = new MutationObserver(function (records) { + for (var j = 0; j < records.length; j++) { + var record = records[j]; + for (var k = 0; k < record.addedNodes.length; k++) { + var node = record.addedNodes[k]; + _this.doSync(node); + } + } + return undefined; + }); + mut.observe(document.body, { + childList: true, + subtree: true + }); + } + } + }, { + key: 'stop', + value: function stop() { + this.stopped = true; + removeEvent(this.config.scrollContainer || window, 'scroll', this.scrollHandler); + removeEvent(window, 'resize', this.scrollHandler); + if (this.interval != null) { + clearInterval(this.interval); + } + } + }, { + key: 'sync', + value: function sync() { + if (MutationObserver.notSupported) { + this.doSync(this.element); + } + } + }, { + key: 'doSync', + value: function doSync(element) { + if (typeof element === 'undefined' || element === null) { + element = this.element; + } + if (element.nodeType !== 1) { + return; + } + element = element.parentNode || element; + var iterable = element.querySelectorAll('.' + this.config.boxClass); + for (var i = 0; i < iterable.length; i++) { + var box = iterable[i]; + if (!isIn(box, this.all)) { + this.boxes.push(box); + this.all.push(box); + if (this.stopped || this.disabled()) { + this.resetStyle(); + } else { + this.applyStyle(box, true); + } + this.scrolled = true; + } + } + } + }, { + key: 'show', + value: function show(box) { + this.applyStyle(box); + box.className = box.className + ' ' + this.config.animateClass; + if (this.config.callback != null) { + this.config.callback(box); + } + emitEvent(box, this.wowEvent); + + if (this.config.resetAnimation) { + addEvent(box, 'animationend', this.resetAnimation); + addEvent(box, 'oanimationend', this.resetAnimation); + addEvent(box, 'webkitAnimationEnd', this.resetAnimation); + addEvent(box, 'MSAnimationEnd', this.resetAnimation); + } + + return box; + } + }, { + key: 'applyStyle', + value: function applyStyle(box, hidden) { + var _this2 = this; + + var duration = box.getAttribute('data-wow-duration'); + var delay = box.getAttribute('data-wow-delay'); + var iteration = box.getAttribute('data-wow-iteration'); + + return this.animate(function () { + return _this2.customStyle(box, hidden, duration, delay, iteration); + }); + } + }, { + key: 'resetStyle', + value: function resetStyle() { + for (var i = 0; i < this.boxes.length; i++) { + var box = this.boxes[i]; + box.style.visibility = 'visible'; + } + return undefined; + } + }, { + key: 'resetAnimation', + value: function resetAnimation(event) { + if (event.type.toLowerCase().indexOf('animationend') >= 0) { + var target = event.target || event.srcElement; + target.className = target.className.replace(this.config.animateClass, '').trim(); + } + } + }, { + key: 'customStyle', + value: function customStyle(box, hidden, duration, delay, iteration) { + if (hidden) { + this.cacheAnimationName(box); + } + box.style.visibility = hidden ? 'hidden' : 'visible'; + + if (duration) { + this.vendorSet(box.style, { animationDuration: duration }); + } + if (delay) { + this.vendorSet(box.style, { animationDelay: delay }); + } + if (iteration) { + this.vendorSet(box.style, { animationIterationCount: iteration }); + } + this.vendorSet(box.style, { animationName: hidden ? 'none' : this.cachedAnimationName(box) }); + + return box; + } + }, { + key: 'vendorSet', + value: function vendorSet(elem, properties) { + for (var name in properties) { + if (properties.hasOwnProperty(name)) { + var value = properties[name]; + elem['' + name] = value; + for (var i = 0; i < this.vendors.length; i++) { + var vendor = this.vendors[i]; + elem['' + vendor + name.charAt(0).toUpperCase() + name.substr(1)] = value; + } + } + } + } + }, { + key: 'vendorCSS', + value: function vendorCSS(elem, property) { + var style = getComputedStyle(elem); + var result = style.getPropertyCSSValue(property); + for (var i = 0; i < this.vendors.length; i++) { + var vendor = this.vendors[i]; + result = result || style.getPropertyCSSValue('-' + vendor + '-' + property); + } + return result; + } + }, { + key: 'animationName', + value: function animationName(box) { + var aName = void 0; + try { + aName = this.vendorCSS(box, 'animation-name').cssText; + } catch (error) { + // Opera, fall back to plain property value + aName = getComputedStyle(box).getPropertyValue('animation-name'); + } + + if (aName === 'none') { + return ''; // SVG/Firefox, unable to get animation name? + } + + return aName; + } + }, { + key: 'cacheAnimationName', + value: function cacheAnimationName(box) { + // https://bugzilla.mozilla.org/show_bug.cgi?id=921834 + // box.dataset is not supported for SVG elements in Firefox + return this.animationNameCache.set(box, this.animationName(box)); + } + }, { + key: 'cachedAnimationName', + value: function cachedAnimationName(box) { + return this.animationNameCache.get(box); + } + }, { + key: 'scrollHandler', + value: function scrollHandler() { + this.scrolled = true; + } + }, { + key: 'scrollCallback', + value: function scrollCallback() { + if (this.scrolled) { + this.scrolled = false; + var results = []; + for (var i = 0; i < this.boxes.length; i++) { + var box = this.boxes[i]; + if (box) { + if (this.isVisible(box)) { + this.show(box); + continue; + } + results.push(box); + } + } + this.boxes = results; + if (!this.boxes.length && !this.config.live) { + this.stop(); + } + } + } + }, { + key: 'offsetTop', + value: function offsetTop(element) { + // SVG elements don't have an offsetTop in Firefox. + // This will use their nearest parent that has an offsetTop. + // Also, using ('offsetTop' of element) causes an exception in Firefox. + while (element.offsetTop === undefined) { + element = element.parentNode; + } + var top = element.offsetTop; + while (element.offsetParent) { + element = element.offsetParent; + top += element.offsetTop; + } + return top; + } + }, { + key: 'isVisible', + value: function isVisible(box) { + var offset = box.getAttribute('data-wow-offset') || this.config.offset; + var viewTop = this.config.scrollContainer && this.config.scrollContainer.scrollTop || window.pageYOffset; + var viewBottom = viewTop + Math.min(this.element.clientHeight, getInnerHeight()) - offset; + var top = this.offsetTop(box); + var bottom = top + box.clientHeight; + + return top <= viewBottom && bottom >= viewTop; + } + }, { + key: 'disabled', + value: function disabled() { + return !this.config.mobile && isMobile(navigator.userAgent); + } + }]); + + return WOW; + }(); + + exports.default = WOW; + module.exports = exports['default']; +}); diff --git a/home/lib/wow/wow.min.js b/home/lib/wow/wow.min.js new file mode 100644 index 0000000..2a9cc46 --- /dev/null +++ b/home/lib/wow/wow.min.js @@ -0,0 +1,3 @@ +/*! WOW wow.js - v1.3.0 - 2016-10-04 +* https://wowjs.uk +* Copyright (c) 2016 Thomas Grainger; Licensed MIT */!function(a,b){if("function"==typeof define&&define.amd)define(["module","exports"],b);else if("undefined"!=typeof exports)b(module,exports);else{var c={exports:{}};b(c,c.exports),a.WOW=c.exports}}(this,function(a,b){"use strict";function c(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}function d(a,b){return b.indexOf(a)>=0}function e(a,b){for(var c in b)if(null==a[c]){var d=b[c];a[c]=d}return a}function f(a){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(a)}function g(a){var b=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],c=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],d=arguments.length<=3||void 0===arguments[3]?null:arguments[3],e=void 0;return null!=document.createEvent?(e=document.createEvent("CustomEvent"),e.initCustomEvent(a,b,c,d)):null!=document.createEventObject?(e=document.createEventObject(),e.eventType=a):e.eventName=a,e}function h(a,b){null!=a.dispatchEvent?a.dispatchEvent(b):b in(null!=a)?a[b]():"on"+b in(null!=a)&&a["on"+b]()}function i(a,b,c){null!=a.addEventListener?a.addEventListener(b,c,!1):null!=a.attachEvent?a.attachEvent("on"+b,c):a[b]=c}function j(a,b,c){null!=a.removeEventListener?a.removeEventListener(b,c,!1):null!=a.detachEvent?a.detachEvent("on"+b,c):delete a[b]}function k(){return"innerHeight"in window?window.innerHeight:document.documentElement.clientHeight}Object.defineProperty(b,"__esModule",{value:!0});var l,m,n=function(){function a(a,b){for(var c=0;c=0){var b=a.target||a.srcElement;b.className=b.className.replace(this.config.animateClass,"").trim()}}},{key:"customStyle",value:function(a,b,c,d,e){return b&&this.cacheAnimationName(a),a.style.visibility=b?"hidden":"visible",c&&this.vendorSet(a.style,{animationDuration:c}),d&&this.vendorSet(a.style,{animationDelay:d}),e&&this.vendorSet(a.style,{animationIterationCount:e}),this.vendorSet(a.style,{animationName:b?"none":this.cachedAnimationName(a)}),a}},{key:"vendorSet",value:function(a,b){for(var c in b)if(b.hasOwnProperty(c)){var d=b[c];a[""+c]=d;for(var e=0;e=e&&f>=c}},{key:"disabled",value:function(){return!this.config.mobile&&f(navigator.userAgent)}}]),a}();b["default"]=r,a.exports=b["default"]}); diff --git a/home/scss/bootstrap.scss b/home/scss/bootstrap.scss new file mode 100644 index 0000000..e55b533 --- /dev/null +++ b/home/scss/bootstrap.scss @@ -0,0 +1,32 @@ +/******* Customized Bootstrap ********/ + +$primary: #5B8C51; +$secondary: #EDDD5E; +$light: #F7F7F7; +$dark: #404A3D; + +$font-family-base: 'Open Sans', sans-serif; + +$headings-font-family: 'Libre Baskerville', serif; + +$body-color: #777777; + +$headings-color: $dark; + +$headings-font-weight: 700; + +$display-font-weight: 700; + +$enable-responsive-font-sizes: true; + +$border-radius: 8px; + +$border-radius-sm: $border-radius; + +$border-radius-lg: $border-radius; + +$link-decoration: none; + +$enable-negative-margins: true; + +@import "bootstrap/scss/bootstrap"; \ No newline at end of file diff --git a/home/scss/bootstrap/scss/_accordion.scss b/home/scss/bootstrap/scss/_accordion.scss new file mode 100644 index 0000000..fc62ceb --- /dev/null +++ b/home/scss/bootstrap/scss/_accordion.scss @@ -0,0 +1,118 @@ +// +// Base styles +// + +.accordion-button { + position: relative; + display: flex; + align-items: center; + width: 100%; + padding: $accordion-button-padding-y $accordion-button-padding-x; + @include font-size($font-size-base); + color: $accordion-button-color; + text-align: left; // Reset button style + background-color: $accordion-button-bg; + border: 0; + @include border-radius(0); + overflow-anchor: none; + @include transition($accordion-transition); + + &:not(.collapsed) { + color: $accordion-button-active-color; + background-color: $accordion-button-active-bg; + box-shadow: inset 0 ($accordion-border-width * -1) 0 $accordion-border-color; + + &::after { + background-image: escape-svg($accordion-button-active-icon); + transform: $accordion-icon-transform; + } + } + + // Accordion icon + &::after { + flex-shrink: 0; + width: $accordion-icon-width; + height: $accordion-icon-width; + margin-left: auto; + content: ""; + background-image: escape-svg($accordion-button-icon); + background-repeat: no-repeat; + background-size: $accordion-icon-width; + @include transition($accordion-icon-transition); + } + + &:hover { + z-index: 2; + } + + &:focus { + z-index: 3; + border-color: $accordion-button-focus-border-color; + outline: 0; + box-shadow: $accordion-button-focus-box-shadow; + } +} + +.accordion-header { + margin-bottom: 0; +} + +.accordion-item { + background-color: $accordion-bg; + border: $accordion-border-width solid $accordion-border-color; + + &:first-of-type { + @include border-top-radius($accordion-border-radius); + + .accordion-button { + @include border-top-radius($accordion-inner-border-radius); + } + } + + &:not(:first-of-type) { + border-top: 0; + } + + // Only set a border-radius on the last item if the accordion is collapsed + &:last-of-type { + @include border-bottom-radius($accordion-border-radius); + + .accordion-button { + &.collapsed { + @include border-bottom-radius($accordion-inner-border-radius); + } + } + + .accordion-collapse { + @include border-bottom-radius($accordion-border-radius); + } + } +} + +.accordion-body { + padding: $accordion-body-padding-y $accordion-body-padding-x; +} + + +// Flush accordion items +// +// Remove borders and border-radius to keep accordion items edge-to-edge. + +.accordion-flush { + .accordion-collapse { + border-width: 0; + } + + .accordion-item { + border-right: 0; + border-left: 0; + @include border-radius(0); + + &:first-child { border-top: 0; } + &:last-child { border-bottom: 0; } + + .accordion-button { + @include border-radius(0); + } + } +} diff --git a/home/scss/bootstrap/scss/_alert.scss b/home/scss/bootstrap/scss/_alert.scss new file mode 100644 index 0000000..ca262cf --- /dev/null +++ b/home/scss/bootstrap/scss/_alert.scss @@ -0,0 +1,57 @@ +// +// Base styles +// + +.alert { + position: relative; + padding: $alert-padding-y $alert-padding-x; + margin-bottom: $alert-margin-bottom; + border: $alert-border-width solid transparent; + @include border-radius($alert-border-radius); +} + +// Headings for larger alerts +.alert-heading { + // Specified to prevent conflicts of changing $headings-color + color: inherit; +} + +// Provide class for links that match alerts +.alert-link { + font-weight: $alert-link-font-weight; +} + + +// Dismissible alerts +// +// Expand the right padding and account for the close button's positioning. + +.alert-dismissible { + padding-right: $alert-dismissible-padding-r; + + // Adjust close link position + .tombol-tutup { + position: absolute; + top: 0; + right: 0; + z-index: $stretched-link-z-index + 1; + padding: $alert-padding-y * 1.25 $alert-padding-x; + } +} + + +// scss-docs-start alert-modifiers +// Generate contextual modifier classes for colorizing the alert. + +@each $state, $value in $theme-colors { + $alert-background: shift-color($value, $alert-bg-scale); + $alert-border: shift-color($value, $alert-border-scale); + $alert-color: shift-color($value, $alert-color-scale); + @if (contrast-ratio($alert-background, $alert-color) < $min-contrast-ratio) { + $alert-color: mix($value, color-contrast($alert-background), abs($alert-color-scale)); + } + .alert-#{$state} { + @include alert-variant($alert-background, $alert-border, $alert-color); + } +} +// scss-docs-end alert-modifiers diff --git a/home/scss/bootstrap/scss/_badge.scss b/home/scss/bootstrap/scss/_badge.scss new file mode 100644 index 0000000..08df1b8 --- /dev/null +++ b/home/scss/bootstrap/scss/_badge.scss @@ -0,0 +1,29 @@ +// Base class +// +// Requires one of the contextual, color modifier classes for `color` and +// `background-color`. + +.badge { + display: inline-block; + padding: $badge-padding-y $badge-padding-x; + @include font-size($badge-font-size); + font-weight: $badge-font-weight; + line-height: 1; + color: $badge-color; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + @include border-radius($badge-border-radius); + @include gradient-bg(); + + // Empty badges collapse automatically + &:empty { + display: none; + } +} + +// Quick fix for badges in buttons +.btn .badge { + position: relative; + top: -1px; +} diff --git a/home/scss/bootstrap/scss/_breadcrumb.scss b/home/scss/bootstrap/scss/_breadcrumb.scss new file mode 100644 index 0000000..966e7cf --- /dev/null +++ b/home/scss/bootstrap/scss/_breadcrumb.scss @@ -0,0 +1,28 @@ +.bagian-atas { + display: flex; + flex-wrap: wrap; + padding: $bagian-atas-padding-y $bagian-atas-padding-x; + margin-bottom: $bagian-atas-margin-bottom; + @include font-size($bagian-atas-font-size); + list-style: none; + background-color: $bagian-atas-bg; + @include border-radius($bagian-atas-border-radius); +} + +.bagian-atas-item { + // The separator between bagian-atass (by default, a forward-slash: "/") + + .bagian-atas-item { + padding-left: $bagian-atas-item-padding-x; + + &::before { + float: left; // Suppress inline spacings and underlining of the separator + padding-right: $bagian-atas-item-padding-x; + color: $bagian-atas-divider-color; + content: var(--#{$variable-prefix}bagian-atas-divider, escape-svg($bagian-atas-divider)) #{"/* rtl:"} var(--#{$variable-prefix}bagian-atas-divider, escape-svg($bagian-atas-divider-flipped)) #{"*/"}; + } + } + + &.active { + color: $bagian-atas-active-color; + } +} diff --git a/home/scss/bootstrap/scss/_button-group.scss b/home/scss/bootstrap/scss/_button-group.scss new file mode 100644 index 0000000..3e9b548 --- /dev/null +++ b/home/scss/bootstrap/scss/_button-group.scss @@ -0,0 +1,139 @@ +// Make the div behave like a button +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-flex; + vertical-align: middle; // match .btn alignment given font-size hack above + + > .btn { + position: relative; + flex: 1 1 auto; + } + + // Bring the hover, focused, and "active" buttons to the front to overlay + // the borders properly + > .tombol-check:checked + .btn, + > .tombol-check:focus + .btn, + > .btn:hover, + > .btn:focus, + > .btn:active, + > .btn.active { + z-index: 1; + } +} + +// Optional: Group multiple button groups together for a toolbar +.btn-toolbar { + display: flex; + flex-wrap: wrap; + justify-content: flex-start; + + .input-group { + width: auto; + } +} + +.btn-group { + // Prevent double borders when buttons are next to each other + > .btn:not(:first-child), + > .btn-group:not(:first-child) { + margin-left: -$btn-border-width; + } + + // Reset lingkaran corners + > .btn:not(:last-child):not(.dropdown-toggle), + > .btn-group:not(:last-child) > .btn { + @include border-end-radius(0); + } + + // The left radius should be 0 if the button is: + // - the "third or more" child + // - the second child and the previous element isn't `.tombol-check` (making it the first child visually) + // - part of a btn-group which isn't the first child + > .btn:nth-child(n + 3), + > :not(.tombol-check) + .btn, + > .btn-group:not(:first-child) > .btn { + @include border-start-radius(0); + } +} + +// Sizing +// +// Remix the default button sizing classes into new ones for easier manipulation. + +.tombol-grup-kecil > .btn { @extend .btn-sm; } +.tombol-grup-besar > .btn { @extend .tombol-besar; } + + +// +// Split button dropdowns +// + +.dropdown-toggle-split { + padding-right: $btn-padding-x * .75; + padding-left: $btn-padding-x * .75; + + &::after, + .dropup &::after, + .dropend &::after { + margin-left: 0; + } + + .dropstart &::before { + margin-right: 0; + } +} + +.btn-sm + .dropdown-toggle-split { + padding-right: $btn-padding-x-sm * .75; + padding-left: $btn-padding-x-sm * .75; +} + +.tombol-besar + .dropdown-toggle-split { + padding-right: $btn-padding-x-lg * .75; + padding-left: $btn-padding-x-lg * .75; +} + + +// The clickable button for toggling the menu +// Set the same inset shadow as the :active state +.btn-group.show .dropdown-toggle { + @include box-shadow($btn-active-box-shadow); + + // Show no shadow for `.btn-link` since it has no other button styles. + &.btn-link { + @include box-shadow(none); + } +} + + +// +// Vertical button groups +// + +.btn-group-vertical { + flex-direction: column; + align-items: flex-start; + justify-content: center; + + > .btn, + > .btn-group { + width: 100%; + } + + > .btn:not(:first-child), + > .btn-group:not(:first-child) { + margin-top: -$btn-border-width; + } + + // Reset lingkaran corners + > .btn:not(:last-child):not(.dropdown-toggle), + > .btn-group:not(:last-child) > .btn { + @include border-bottom-radius(0); + } + + > .btn ~ .btn, + > .btn-group:not(:first-child) > .btn { + @include border-top-radius(0); + } +} diff --git a/home/scss/bootstrap/scss/_buttons.scss b/home/scss/bootstrap/scss/_buttons.scss new file mode 100644 index 0000000..d5c5d9a --- /dev/null +++ b/home/scss/bootstrap/scss/_buttons.scss @@ -0,0 +1,111 @@ +// +// Base styles +// + +.btn { + display: inline-block; + font-family: $btn-font-family; + font-weight: $btn-font-weight; + line-height: $btn-line-height; + color: $body-color; + text-align: center; + text-decoration: if($link-decoration == none, null, none); + white-space: $btn-white-space; + vertical-align: middle; + cursor: if($enable-button-pointers, pointer, null); + user-select: none; + background-color: transparent; + border: $btn-border-width solid transparent; + @include button-size($btn-padding-y, $btn-padding-x, $btn-font-size, $btn-border-radius); + @include transition($btn-transition); + + &:hover { + color: $body-color; + text-decoration: if($link-hover-decoration == underline, none, null); + } + + .tombol-check:focus + &, + &:focus { + outline: 0; + box-shadow: $btn-focus-box-shadow; + } + + .tombol-check:checked + &, + .tombol-check:active + &, + &:active, + &.active { + @include box-shadow($btn-active-box-shadow); + + &:focus { + @include box-shadow($btn-focus-box-shadow, $btn-active-box-shadow); + } + } + + &:disabled, + &.disabled, + fieldset:disabled & { + pointer-events: none; + opacity: $btn-disabled-opacity; + @include box-shadow(none); + } +} + + +// +// Alternate buttons +// + +// scss-docs-start btn-variant-loops +@each $color, $value in $theme-colors { + .btn-#{$color} { + @include button-variant($value, $value); + } +} + +@each $color, $value in $theme-colors { + .btn-outline-#{$color} { + @include button-outline-variant($value); + } +} +// scss-docs-end btn-variant-loops + + +// +// Link buttons +// + +// Make a button look and behave like a link +.btn-link { + font-weight: $font-weight-normal; + color: $btn-link-color; + text-decoration: $link-decoration; + + &:hover { + color: $btn-link-hover-color; + text-decoration: $link-hover-decoration; + } + + &:focus { + text-decoration: $link-hover-decoration; + } + + &:disabled, + &.disabled { + color: $btn-link-disabled-color; + } + + // No need for an active state here +} + + +// +// Button Sizes +// + +.tombol-besar { + @include button-size($btn-padding-y-lg, $btn-padding-x-lg, $btn-font-size-lg, $btn-border-radius-lg); +} + +.btn-sm { + @include button-size($btn-padding-y-sm, $btn-padding-x-sm, $btn-font-size-sm, $btn-border-radius-sm); +} diff --git a/home/scss/bootstrap/scss/_card.scss b/home/scss/bootstrap/scss/_card.scss new file mode 100644 index 0000000..6f1384e --- /dev/null +++ b/home/scss/bootstrap/scss/_card.scss @@ -0,0 +1,215 @@ +// +// Base styles +// + +.card { + position: relative; + display: flex; + flex-direction: column; + min-width: 0; // See https://github.com/twbs/bootstrap/pull/22740#issuecomment-305868106 + height: $card-height; + word-wrap: break-word; + background-color: $card-bg; + background-clip: border-box; + border: $card-border-width solid $card-border-color; + @include border-radius($card-border-radius); + + > hr { + margin-right: 0; + margin-left: 0; + } + + > .list-group { + border-top: inherit; + border-bottom: inherit; + + &:first-child { + border-top-width: 0; + @include border-top-radius($card-inner-border-radius); + } + + &:last-child { + border-bottom-width: 0; + @include border-bottom-radius($card-inner-border-radius); + } + } + + // Due to specificity of the above selector (`.card > .list-group`), we must + // use a child selector here to prevent double borders. + > .card-header + .list-group, + > .list-group + .card-footer { + border-top: 0; + } +} + +.kartu-bodi { + // Enable `flex-grow: 1` for decks and groups so that card blocks take up + // as much space as possible, ensuring footers are aligned to the bottom. + flex: 1 1 auto; + padding: $card-spacer-y $card-spacer-x; + color: $card-color; +} + +.card-title { + margin-bottom: $card-title-spacer-y; +} + +.card-subtitle { + margin-top: -$card-title-spacer-y / 2; + margin-bottom: 0; +} + +.card-text:last-child { + margin-bottom: 0; +} + +.card-link { + &:hover { + text-decoration: none; + } + + + .card-link { + margin-left: $card-spacer-x; + } +} + +// +// Optional textual caps +// + +.card-header { + padding: $card-cap-padding-y $card-cap-padding-x; + margin-bottom: 0; // Removes the default margin-bottom of + color: $card-cap-color; + background-color: $card-cap-bg; + border-bottom: $card-border-width solid $card-border-color; + + &:first-child { + @include border-radius($card-inner-border-radius $card-inner-border-radius 0 0); + } +} + +.card-footer { + padding: $card-cap-padding-y $card-cap-padding-x; + color: $card-cap-color; + background-color: $card-cap-bg; + border-top: $card-border-width solid $card-border-color; + + &:last-child { + @include border-radius(0 0 $card-inner-border-radius $card-inner-border-radius); + } +} + + +// +// Header navs +// + +.card-header-tabs { + margin-right: -$card-cap-padding-x / 2; + margin-bottom: -$card-cap-padding-y; + margin-left: -$card-cap-padding-x / 2; + border-bottom: 0; + + @if $nav-tabs-link-active-bg != $card-bg { + .nav-link.active { + background-color: $card-bg; + border-bottom-color: $card-bg; + } + } +} + +.card-header-pills { + margin-right: -$card-cap-padding-x / 2; + margin-left: -$card-cap-padding-x / 2; +} + +// Card image +.card-img-overlay { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: $card-img-overlay-padding; + @include border-radius($card-inner-border-radius); +} + +.card-img, +.card-img-top, +.card-img-bottom { + width: 100%; // Required because we use flexbox and this inherently applies align-self: stretch +} + +.card-img, +.card-img-top { + @include border-top-radius($card-inner-border-radius); +} + +.card-img, +.card-img-bottom { + @include border-bottom-radius($card-inner-border-radius); +} + + +// +// Card groups +// + +.card-group { + // The child selector allows nested `.card` within `.card-group` + // to display properly. + > .card { + margin-bottom: $card-group-margin; + } + + @include media-breakpoint-up(sm) { + display: flex; + flex-flow: row wrap; + // The child selector allows nested `.card` within `.card-group` + // to display properly. + > .card { + // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4 + flex: 1 0 0%; + margin-bottom: 0; + + + .card { + margin-left: 0; + border-left: 0; + } + + // Handle lingkaran corners + @if $enable-lingkaran { + &:not(:last-child) { + @include border-end-radius(0); + + .card-img-top, + .card-header { + // stylelint-disable-next-line property-disallowed-list + border-top-right-radius: 0; + } + .card-img-bottom, + .card-footer { + // stylelint-disable-next-line property-disallowed-list + border-bottom-right-radius: 0; + } + } + + &:not(:first-child) { + @include border-start-radius(0); + + .card-img-top, + .card-header { + // stylelint-disable-next-line property-disallowed-list + border-top-left-radius: 0; + } + .card-img-bottom, + .card-footer { + // stylelint-disable-next-line property-disallowed-list + border-bottom-left-radius: 0; + } + } + } + } + } +} diff --git a/home/scss/bootstrap/scss/_carousel.scss b/home/scss/bootstrap/scss/_carousel.scss new file mode 100644 index 0000000..d389c30 --- /dev/null +++ b/home/scss/bootstrap/scss/_carousel.scss @@ -0,0 +1,229 @@ +// Notes on the classes: +// +// 1. .carousel.pointer-event should ideally be pan-y (to allow for users to scroll vertically) +// even when their scroll action started on a carousel, but for compatibility (with Firefox) +// we're preventing all actions instead +// 2. The .carousel-item-start and .carousel-item-end is used to indicate where +// the active slide is heading. +// 3. .active.carousel-item is the current slide. +// 4. .active.carousel-item-start and .active.carousel-item-end is the current +// slide in its in-transition state. Only one of these occurs at a time. +// 5. .carousel-item-next.carousel-item-start and .carousel-item-prev.carousel-item-end +// is the upcoming slide in transition. + +.carousel { + position: relative; +} + +.carousel.pointer-event { + touch-action: pan-y; +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; + @include clearfix(); +} + +.carousel-item { + position: relative; + display: none; + float: left; + width: 100%; + margin-right: -100%; + backface-visibility: hidden; + @include transition($carousel-transition); +} + +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block; +} + +/* rtl:begin:ignore */ +.carousel-item-next:not(.carousel-item-start), +.active.carousel-item-end { + transform: translateX(100%); +} + +.carousel-item-prev:not(.carousel-item-end), +.active.carousel-item-start { + transform: translateX(-100%); +} + +/* rtl:end:ignore */ + + +// +// Alternate transitions +// + +.carousel-fade { + .carousel-item { + opacity: 0; + transition-property: opacity; + transform: none; + } + + .carousel-item.active, + .carousel-item-next.carousel-item-start, + .carousel-item-prev.carousel-item-end { + z-index: 1; + opacity: 1; + } + + .active.carousel-item-start, + .active.carousel-item-end { + z-index: 0; + opacity: 0; + @include transition(opacity 0s $carousel-transition-duration); + } +} + + +// +// Left/right controls for nav +// + +.carousel-control-prev, +.carousel-control-next { + position: absolute; + top: 0; + bottom: 0; + z-index: 1; + // Use flex for alignment (1-3) + display: flex; // 1. allow flex styles + align-items: center; // 2. vertically center contents + justify-content: center; // 3. horizontally center contents + width: $carousel-control-width; + padding: 0; + color: $carousel-control-color; + text-align: center; + background: none; + border: 0; + opacity: $carousel-control-opacity; + @include transition($carousel-control-transition); + + // Hover/focus state + &:hover, + &:focus { + color: $carousel-control-color; + text-decoration: none; + outline: 0; + opacity: $carousel-control-hover-opacity; + } +} +.carousel-control-prev { + left: 0; + background-image: if($enable-gradients, linear-gradient(90deg, rgba($black, .25), rgba($black, .001)), null); +} +.carousel-control-next { + right: 0; + background-image: if($enable-gradients, linear-gradient(270deg, rgba($black, .25), rgba($black, .001)), null); +} + +// Icons for within +.carousel-control-prev-icon, +.carousel-control-next-icon { + display: inline-block; + width: $carousel-control-icon-width; + height: $carousel-control-icon-width; + background-repeat: no-repeat; + background-position: 50%; + background-size: 100% 100%; +} + +/* rtl:options: { + "autoRename": true, + "stringMap":[ { + "name" : "prev-next", + "search" : "prev", + "replace" : "next" + } ] +} */ +.carousel-control-prev-icon { + background-image: escape-svg($carousel-control-prev-icon-bg); +} +.carousel-control-next-icon { + background-image: escape-svg($carousel-control-next-icon-bg); +} + +// Optional indicator pips/controls +// +// Add a container (such as a list) with the following class and add an item (ideally a focusable control, +// like a button) with data-bs-target for each slide your carousel holds. + +.carousel-indicators { + position: absolute; + right: 0; + bottom: 0; + left: 0; + z-index: 2; + display: flex; + justify-content: center; + padding: 0; + // Use the .carousel-control's width as margin so we don't overlay those + margin-right: $carousel-control-width; + margin-bottom: 1rem; + margin-left: $carousel-control-width; + list-style: none; + + [data-bs-target] { + box-sizing: content-box; + flex: 0 1 auto; + width: $carousel-indicator-width; + height: $carousel-indicator-height; + padding: 0; + margin-right: $carousel-indicator-spacer; + margin-left: $carousel-indicator-spacer; + text-indent: -999px; + cursor: pointer; + background-color: $carousel-indicator-active-bg; + background-clip: padding-box; + border: 0; + // Use transparent borders to increase the hit area by 10px on top and bottom. + border-top: $carousel-indicator-hit-area-height solid transparent; + border-bottom: $carousel-indicator-hit-area-height solid transparent; + opacity: $carousel-indicator-opacity; + @include transition($carousel-indicator-transition); + } + + .active { + opacity: $carousel-indicator-active-opacity; + } +} + + +// Optional captions +// +// + +.carousel-caption { + position: absolute; + right: (100% - $carousel-caption-width) / 2; + bottom: $carousel-caption-spacer; + left: (100% - $carousel-caption-width) / 2; + padding-top: $carousel-caption-padding-y; + padding-bottom: $carousel-caption-padding-y; + color: $carousel-caption-color; + text-align: center; +} + +// Dark mode carousel + +.carousel-dark { + .carousel-control-prev-icon, + .carousel-control-next-icon { + filter: $carousel-dark-control-icon-filter; + } + + .carousel-indicators [data-bs-target] { + background-color: $carousel-dark-indicator-active-bg; + } + + .carousel-caption { + color: $carousel-dark-caption-color; + } +} diff --git a/home/scss/bootstrap/scss/_close.scss b/home/scss/bootstrap/scss/_close.scss new file mode 100644 index 0000000..7fbff22 --- /dev/null +++ b/home/scss/bootstrap/scss/_close.scss @@ -0,0 +1,40 @@ +// transparent background and border properties included for button version. +// iOS requires the button element instead of an anchor tag. +// If you want the anchor version, it requires `href="#"`. +// See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile + +.tombol-tutup { + box-sizing: content-box; + width: $tombol-tutup-width; + height: $tombol-tutup-height; + padding: $tombol-tutup-padding-y $tombol-tutup-padding-x; + color: $tombol-tutup-color; + background: transparent escape-svg($tombol-tutup-bg) center / $tombol-tutup-width auto no-repeat; // include transparent for button elements + border: 0; // for button elements + @include border-radius(); + opacity: $tombol-tutup-opacity; + + // Override 's hover style + &:hover { + color: $tombol-tutup-color; + text-decoration: none; + opacity: $tombol-tutup-hover-opacity; + } + + &:focus { + outline: 0; + box-shadow: $tombol-tutup-focus-shadow; + opacity: $tombol-tutup-focus-opacity; + } + + &:disabled, + &.disabled { + pointer-events: none; + user-select: none; + opacity: $tombol-tutup-disabled-opacity; + } +} + +.tombol-tutup-white { + filter: $tombol-tutup-white-filter; +} diff --git a/home/scss/bootstrap/scss/_containers.scss b/home/scss/bootstrap/scss/_containers.scss new file mode 100644 index 0000000..558cb7e --- /dev/null +++ b/home/scss/bootstrap/scss/_containers.scss @@ -0,0 +1,41 @@ +// Container widths +// +// Set the container width, and override it for fixed navbars in media queries. + +@if $enable-grid-classes { + // Single container class with breakpoint max-widths + .container, + // 100% wide container at all breakpoints + .kontainer-besar { + @include make-container(); + } + + // Responsive containers that are 100% wide until a breakpoint + @each $breakpoint, $container-max-width in $container-max-widths { + .container-#{$breakpoint} { + @extend .kontainer-besar; + } + + @include media-breakpoint-up($breakpoint, $grid-breakpoints) { + %responsive-container-#{$breakpoint} { + max-width: $container-max-width; + } + + // Extend each breakpoint which is smaller or equal to the current breakpoint + $extend-breakpoint: true; + + @each $name, $width in $grid-breakpoints { + @if ($extend-breakpoint) { + .container#{breakpoint-infix($name, $grid-breakpoints)} { + @extend %responsive-container-#{$breakpoint}; + } + + // Once the current breakpoint is reached, stop extending + @if ($breakpoint == $name) { + $extend-breakpoint: false; + } + } + } + } + } +} diff --git a/home/scss/bootstrap/scss/_dropdown.scss b/home/scss/bootstrap/scss/_dropdown.scss new file mode 100644 index 0000000..06e70f7 --- /dev/null +++ b/home/scss/bootstrap/scss/_dropdown.scss @@ -0,0 +1,240 @@ +// The dropdown wrapper (`
`) +.dropup, +.dropend, +.dropdown, +.dropstart { + position: relative; +} + +.dropdown-toggle { + white-space: nowrap; + + // Generate the caret automatically + @include caret(); +} + +// The dropdown menu +.dropdown-menu { + position: absolute; + z-index: $zindex-dropdown; + display: none; // none by default, but block on "open" of the menu + min-width: $dropdown-min-width; + padding: $dropdown-padding-y $dropdown-padding-x; + margin: 0; // Override default margin of ul + @include font-size($dropdown-font-size); + color: $dropdown-color; + text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer) + list-style: none; + background-color: $dropdown-bg; + background-clip: padding-box; + border: $dropdown-border-width solid $dropdown-border-color; + @include border-radius($dropdown-border-radius); + @include box-shadow($dropdown-box-shadow); + + &[data-bs-popper] { + top: 100%; + left: 0; + margin-top: $dropdown-spacer; + } +} + +// scss-docs-start responsive-breakpoints +// We deliberately hardcode the `bs-` prefix because we check +// this custom property in JS to determine Popper's positioning + +@each $breakpoint in map-keys($grid-breakpoints) { + @include media-breakpoint-up($breakpoint) { + $infix: breakpoint-infix($breakpoint, $grid-breakpoints); + + .dropdown-menu#{$infix}-start { + --bs-position: start; + + &[data-bs-popper] { + right: auto #{"/* rtl:ignore */"}; + left: 0 #{"/* rtl:ignore */"}; + } + } + + .dropdown-menu#{$infix}-end { + --bs-position: end; + + &[data-bs-popper] { + right: 0 #{"/* rtl:ignore */"}; + left: auto #{"/* rtl:ignore */"}; + } + } + } +} +// scss-docs-end responsive-breakpoints + +// Allow for dropdowns to go bottom up (aka, dropup-menu) +// Just add .dropup after the standard .dropdown class and you're set. +.dropup { + .dropdown-menu[data-bs-popper] { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: $dropdown-spacer; + } + + .dropdown-toggle { + @include caret(up); + } +} + +.dropend { + .dropdown-menu[data-bs-popper] { + top: 0; + right: auto; + left: 100%; + margin-top: 0; + margin-left: $dropdown-spacer; + } + + .dropdown-toggle { + @include caret(end); + &::after { + vertical-align: 0; + } + } +} + +.dropstart { + .dropdown-menu[data-bs-popper] { + top: 0; + right: 100%; + left: auto; + margin-top: 0; + margin-right: $dropdown-spacer; + } + + .dropdown-toggle { + @include caret(start); + &::before { + vertical-align: 0; + } + } +} + + +// Dividers (basically an `
`) within the dropdown +.dropdown-divider { + height: 0; + margin: $dropdown-divider-margin-y 0; + overflow: hidden; + border-top: 1px solid $dropdown-divider-bg; +} + +// Links, buttons, and more within the dropdown menu +// +// `
+
+
+ +
+
+
+
+query("SELECT * FROM admin WHERE username='$username' AND password='$password' LIMIT 1"); + $akunyangcocok = $ambil->num_rows; + + if ($akunyangcocok == 1) { + $akun = $ambil->fetch_assoc(); + $_SESSION['admin'] = $akun; + echo ""; + echo ""; + } else { + echo ""; + echo ""; + } +} +?> + + \ No newline at end of file diff --git a/logout.php b/logout.php new file mode 100644 index 0000000..0f2360d --- /dev/null +++ b/logout.php @@ -0,0 +1,6 @@ +alert('Anda Telah Keluar');"; +echo ""; +?> \ No newline at end of file diff --git a/penyakit.php b/penyakit.php new file mode 100644 index 0000000..b234938 --- /dev/null +++ b/penyakit.php @@ -0,0 +1,132 @@ + + + + + +
+
+

Penyakit

+
+
+ +
+
+
+ + +
+ data_seek(0); // Reset pointer to the beginning of the result set + $first = true; + while ($row = $result->fetch_assoc()) { + $id = $row['idpenyakit']; + $namapenyakit = htmlspecialchars($row['namapenyakit']); + $penjelasan = htmlspecialchars($row['penjelasan']); + $solusi = htmlspecialchars($row['solusi']); + ?> +
+ + <?= $namapenyakit ?> + +

Penjelasan

+

+

Penanganan

+

+
+ +
+
+
+
+ + + + \ No newline at end of file