From dcf3f106aeeb5bfc3df3bcfa7a82d2a95f3abf46 Mon Sep 17 00:00:00 2001 From: wes Date: Sun, 11 Jun 2017 20:18:36 -0400 Subject: [PATCH] many improvements --- .../17-43-43/protected-dirt/0bf747ec-HEAD.csv | 1 + .../2017-04-08/17-44-29/cache-stats.txt | 4 + .../2017-04-08/17-44-29/deleted-files.txt | 1 + .../17-44-29/object-id-map.old-new.txt | 3 + .../2017-04-08/17-47-25/cache-stats.txt | 4 + .../2017-04-08/17-47-25/deleted-files.txt | 1 + .../17-47-25/object-id-map.old-new.txt | 26 +++++ .../2017-04-08/17-47-28/cache-stats.txt | 4 + .../2017-04-08/17-47-28/deleted-files.txt | 1 + .../17-47-28/object-id-map.old-new.txt | 12 +++ .gitignore | 1 + build/comment.py | 18 ---- build/posts.py | 8 +- build/requirements.txt | 34 +++++- build/scripts/riotblog.min.js | 18 +++- build/styles/riotblog.min.css | 70 ++++++------ build/styles/spectre.min.css | 2 +- build/templates/index.html | 42 +++----- build/website.py | 51 +++++---- errors | Bin 0 -> 5513 bytes nohup.out | 2 + requirements.txt | 34 +++++- riotblog.min.js | 7 ++ src/scripts/app.tag | 7 +- src/scripts/post.tag | 102 +++++++++--------- src/scripts/postcontrols.tag | 21 ++++ src/scripts/postsview.tag | 2 +- src/scripts/projects.tag | 44 ++++---- src/styles/riotblog.scss | 15 ++- src/templates/index.html | 9 +- src/templates/projects.html | 11 +- 31 files changed, 344 insertions(+), 211 deletions(-) create mode 100644 .git.bfg-report/2017-04-08/17-43-43/protected-dirt/0bf747ec-HEAD.csv create mode 100644 .git.bfg-report/2017-04-08/17-44-29/cache-stats.txt create mode 100644 .git.bfg-report/2017-04-08/17-44-29/deleted-files.txt create mode 100644 .git.bfg-report/2017-04-08/17-44-29/object-id-map.old-new.txt create mode 100644 .git.bfg-report/2017-04-08/17-47-25/cache-stats.txt create mode 100644 .git.bfg-report/2017-04-08/17-47-25/deleted-files.txt create mode 100644 .git.bfg-report/2017-04-08/17-47-25/object-id-map.old-new.txt create mode 100644 .git.bfg-report/2017-04-08/17-47-28/cache-stats.txt create mode 100644 .git.bfg-report/2017-04-08/17-47-28/deleted-files.txt create mode 100644 .git.bfg-report/2017-04-08/17-47-28/object-id-map.old-new.txt delete mode 100644 build/comment.py create mode 100644 errors create mode 100644 nohup.out create mode 100644 riotblog.min.js create mode 100644 src/scripts/postcontrols.tag diff --git a/.git.bfg-report/2017-04-08/17-43-43/protected-dirt/0bf747ec-HEAD.csv b/.git.bfg-report/2017-04-08/17-43-43/protected-dirt/0bf747ec-HEAD.csv new file mode 100644 index 0000000..93cd2b8 --- /dev/null +++ b/.git.bfg-report/2017-04-08/17-43-43/protected-dirt/0bf747ec-HEAD.csv @@ -0,0 +1 @@ +a49feb182cf447c0aaed14a9a3fe38e461f25be6,DELETE,executable,deploy.sh,35, \ No newline at end of file diff --git a/.git.bfg-report/2017-04-08/17-44-29/cache-stats.txt b/.git.bfg-report/2017-04-08/17-44-29/cache-stats.txt new file mode 100644 index 0000000..41b7219 --- /dev/null +++ b/.git.bfg-report/2017-04-08/17-44-29/cache-stats.txt @@ -0,0 +1,4 @@ +(apply,CacheStats{hitCount=79, missCount=47, loadSuccessCount=47, loadExceptionCount=0, totalLoadTime=125067817, evictionCount=0}) +(tree,CacheStats{hitCount=82, missCount=102, loadSuccessCount=96, loadExceptionCount=0, totalLoadTime=125634641, evictionCount=0}) +(commit,CacheStats{hitCount=23, missCount=24, loadSuccessCount=24, loadExceptionCount=0, totalLoadTime=73256468, evictionCount=0}) +(tag,CacheStats{hitCount=0, missCount=0, loadSuccessCount=0, loadExceptionCount=0, totalLoadTime=0, evictionCount=0}) \ No newline at end of file diff --git a/.git.bfg-report/2017-04-08/17-44-29/deleted-files.txt b/.git.bfg-report/2017-04-08/17-44-29/deleted-files.txt new file mode 100644 index 0000000..7d71231 --- /dev/null +++ b/.git.bfg-report/2017-04-08/17-44-29/deleted-files.txt @@ -0,0 +1 @@ +a49feb182cf447c0aaed14a9a3fe38e461f25be6 35 deploy.sh \ No newline at end of file diff --git a/.git.bfg-report/2017-04-08/17-44-29/object-id-map.old-new.txt b/.git.bfg-report/2017-04-08/17-44-29/object-id-map.old-new.txt new file mode 100644 index 0000000..a497470 --- /dev/null +++ b/.git.bfg-report/2017-04-08/17-44-29/object-id-map.old-new.txt @@ -0,0 +1,3 @@ +0ab7b9398887662372f25b8bc918b537ff51e9f5 da43e3bc0804ea2aee5b71873153b65cf0057fce +0bf747ec9fc2f8477018ec96a119151aa650f0d6 aa5e90a577f0dd0220602dc1b3c93e3cb6982d6b +f89e623d33a30bf670ef0278b5722b89941386b1 b089146d8b92335cf40906187937a033fdfc76e4 \ No newline at end of file diff --git a/.git.bfg-report/2017-04-08/17-47-25/cache-stats.txt b/.git.bfg-report/2017-04-08/17-47-25/cache-stats.txt new file mode 100644 index 0000000..d15178f --- /dev/null +++ b/.git.bfg-report/2017-04-08/17-47-25/cache-stats.txt @@ -0,0 +1,4 @@ +(apply,CacheStats{hitCount=59, missCount=48, loadSuccessCount=48, loadExceptionCount=0, totalLoadTime=193677952, evictionCount=0}) +(tree,CacheStats{hitCount=86, missCount=99, loadSuccessCount=96, loadExceptionCount=0, totalLoadTime=189119312, evictionCount=0}) +(commit,CacheStats{hitCount=24, missCount=25, loadSuccessCount=25, loadExceptionCount=0, totalLoadTime=86157648, evictionCount=0}) +(tag,CacheStats{hitCount=0, missCount=0, loadSuccessCount=0, loadExceptionCount=0, totalLoadTime=0, evictionCount=0}) \ No newline at end of file diff --git a/.git.bfg-report/2017-04-08/17-47-25/deleted-files.txt b/.git.bfg-report/2017-04-08/17-47-25/deleted-files.txt new file mode 100644 index 0000000..5044f3d --- /dev/null +++ b/.git.bfg-report/2017-04-08/17-47-25/deleted-files.txt @@ -0,0 +1 @@ +89da2a8331786b0a6b180070918b5dca09d36a77 112 watch.sh \ No newline at end of file diff --git a/.git.bfg-report/2017-04-08/17-47-25/object-id-map.old-new.txt b/.git.bfg-report/2017-04-08/17-47-25/object-id-map.old-new.txt new file mode 100644 index 0000000..0a483c0 --- /dev/null +++ b/.git.bfg-report/2017-04-08/17-47-25/object-id-map.old-new.txt @@ -0,0 +1,26 @@ +09b347fd00f4c6b867a972a12373de2d8a93891a b2f8535a8158a7bf606849549c2ae5aeb15515c9 +24b8f03d49d2bb4acb7adcb2ea4e31d213004405 250886fc69a28476db8974f09db9cb9ba61d4686 +2bc63e4c8712986bfb7d85f94f20cf804b755b54 736c5d259e6cfa92f934732d1ffeb0a76e0bdca5 +4945c9d40ed8c6050f17ee1ef541786309991d77 feeef725087d815387ac56bc3af5b74ae9a17a82 +50acc3a3dbfb4b65467816c1fae5ed17c3fda9f1 3e4df6610caf25620ef149d8b9c36767791393e4 +55b79516acc306e3274a41421f99919e64f2ad98 307fa7a8b1f22ddcade6283f528a9955004e0413 +643ec05004f981bbbce701c2856bdf894d52d735 a08474118cf911d10b224b7478ea971f8b0290fb +74202848d2a86fdff729e0bc05c7d554599a8f85 93106add00dab60bdb68f5cefdf8c6c93ce7fd32 +756fdf96e8371f0949524d3a5784c4b215bfb5d5 c0f0efbb0c8df6610991c5b332ec4eb28f486bc2 +77d4f678c3337b2dc7104f4de6a16f3844c110b7 e378cf8bf29c713b889ef9c02802968fc51cdded +7920797640c21e5aaeb858d0223e54dec5f07742 3cefe785b2a6bd8d2f5c274808cb618b35ad1c41 +7e3b9708863af7a5d0d51372562aa5d350c5fb7a 8a9cb180443eddc4d0be389c1f2a1e0cd5c2b120 +87db97c176f1a40288d5d518f40bfac58d6c06b6 32bfd586a91115b4e41b651d8ffe6c7ab021bbf7 +892a9fb9b6c6cd4cf5865866cec7453f2bca9ae7 de2ea04be1cf53d1030e1de412a4c9658b13f245 +94e316c5f23bd112b206051a8fc705182f8993fa ae2733aaddafd710df7a110f0a509db0a0934ccb +97eae0f9863514e13321d386a94fe04635529caf 0b8a5e21ad60919763a2f438af38df303328e4d9 +a0f53cf20930362a93039b41ef88dcbb83c2f092 9e14161239a4ee61cd0de1ea48f1f92783656837 +aa5e90a577f0dd0220602dc1b3c93e3cb6982d6b 3132d597ac0199d97cd6cb2204eeec6ad54bc5d7 +aeba33b8effec6b44903db87ac385d9cf58b8ee8 0083705e188bd858664a28241e828df054232604 +b089146d8b92335cf40906187937a033fdfc76e4 425748b432f1ab07f715ffb65614b6fcc0ccc5b3 +b63ad98c993e0d33b58f369c082efc3f1acf2324 506f797b7d40e68c07a673d159148d0950271068 +c60bcfc7bdc44218b0a50ec3cf357c8c30f7158c 1132fac75c039eb42521f0abfbd6cdbeafe50d08 +d8c067ff11302b868cade6e89525e392d52dc7da 8409b4f71fce497003dfdb9a68c8d64769f073c8 +da43e3bc0804ea2aee5b71873153b65cf0057fce c5dc1098c5fd6a3b173b893bf919c1a141316f6a +f7a657f45daea751be4539485f07b9bc43551b5d ce086dfcbeefcee41e5cadfd9c80cbabd0b34113 +fee2bea6eb4afcb94885927029d070082dcc14a7 ca1fa7a5d1aada654624d92dcc066cea7c794872 \ No newline at end of file diff --git a/.git.bfg-report/2017-04-08/17-47-28/cache-stats.txt b/.git.bfg-report/2017-04-08/17-47-28/cache-stats.txt new file mode 100644 index 0000000..a9531c7 --- /dev/null +++ b/.git.bfg-report/2017-04-08/17-47-28/cache-stats.txt @@ -0,0 +1,4 @@ +(apply,CacheStats{hitCount=72, missCount=49, loadSuccessCount=48, loadExceptionCount=0, totalLoadTime=144333850, evictionCount=0}) +(tree,CacheStats{hitCount=85, missCount=100, loadSuccessCount=96, loadExceptionCount=0, totalLoadTime=154391122, evictionCount=0}) +(commit,CacheStats{hitCount=24, missCount=25, loadSuccessCount=25, loadExceptionCount=0, totalLoadTime=63369618, evictionCount=0}) +(tag,CacheStats{hitCount=0, missCount=0, loadSuccessCount=0, loadExceptionCount=0, totalLoadTime=0, evictionCount=0}) \ No newline at end of file diff --git a/.git.bfg-report/2017-04-08/17-47-28/deleted-files.txt b/.git.bfg-report/2017-04-08/17-47-28/deleted-files.txt new file mode 100644 index 0000000..e8df4e2 --- /dev/null +++ b/.git.bfg-report/2017-04-08/17-47-28/deleted-files.txt @@ -0,0 +1 @@ +ea38b50e5df93397eeb21fdc2d21616bb4ab9571 61 local.sh \ No newline at end of file diff --git a/.git.bfg-report/2017-04-08/17-47-28/object-id-map.old-new.txt b/.git.bfg-report/2017-04-08/17-47-28/object-id-map.old-new.txt new file mode 100644 index 0000000..08be1c1 --- /dev/null +++ b/.git.bfg-report/2017-04-08/17-47-28/object-id-map.old-new.txt @@ -0,0 +1,12 @@ +0083705e188bd858664a28241e828df054232604 d75b19edfb41c96ba7c5282a572c5f1738de461e +250886fc69a28476db8974f09db9cb9ba61d4686 338b5a3edfd11633b764c9c17a51e1476a981b0a +307fa7a8b1f22ddcade6283f528a9955004e0413 e05c5e812166552da1e75db3ccc5d780f2850b6b +3132d597ac0199d97cd6cb2204eeec6ad54bc5d7 73f4485773686d787c610ebdf425752bde290dba +3cefe785b2a6bd8d2f5c274808cb618b35ad1c41 620a7eeef462527b568acf2171a0f577fc9468e5 +425748b432f1ab07f715ffb65614b6fcc0ccc5b3 ac81eeeef91aedcd70e8597b72a844071bf21147 +a08474118cf911d10b224b7478ea971f8b0290fb 94bd5b457103128e9255ff0fe2369096e0c85bbb +ae2733aaddafd710df7a110f0a509db0a0934ccb ed15a8b100e19187d5e88aac2547447a22d799ee +c5dc1098c5fd6a3b173b893bf919c1a141316f6a 3a3a2dea91aaa9bfb8a374fbc4acf1a84813fdb5 +ce086dfcbeefcee41e5cadfd9c80cbabd0b34113 7333e5fa8d3a953b6b8a644941222227e6c1e4cb +de2ea04be1cf53d1030e1de412a4c9658b13f245 a6b0a13239cf964b3af12648986e0e3fcaa9dd9d +e378cf8bf29c713b889ef9c02802968fc51cdded ae779c5c6c08269a42059327e996d450467cd1bd \ No newline at end of file diff --git a/.gitignore b/.gitignore index 2c57fc7..f595e2c 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ build node_modules .sass_cache/* deploy.sh +tags diff --git a/build/comment.py b/build/comment.py deleted file mode 100644 index 9ea817d..0000000 --- a/build/comment.py +++ /dev/null @@ -1,18 +0,0 @@ -from json import dumps - -def comment(author, title, text): - return { - "title" : title, - "author" : author, - "text" : text - } - - -testcomments = { - 1 : dumps( - [ - comment("Anonymous Coward 0", "Some comment?", "super duper awesome comment here"), - comment("Anonymous Coward 1", "Something? IDEK", "super duper worse comment here"), - comment("Anonymous Coward 2", "Some other comment?", "super duper dang terrible comment here") - ]) - } diff --git a/build/posts.py b/build/posts.py index 10e2160..9cfa349 100644 --- a/build/posts.py +++ b/build/posts.py @@ -23,8 +23,6 @@ class Posts: } return jsonify(self.db.save(doc)) - def getposts(self, start, end): - return jsonify([]) - - def getcomments(self, postID): - return jsonify([]) + def getposts(self, limit, start): + result = self.db.iterview("blogPosts/blog-posts", 10, include_docs=True, limit=limit, skip=start) + return jsonify(list(result)) diff --git a/build/requirements.txt b/build/requirements.txt index 09283b3..453eb76 100644 --- a/build/requirements.txt +++ b/build/requirements.txt @@ -1,15 +1,41 @@ -appdirs==1.4.0 +appdirs==1.4.3 +cffi==1.9.1 click==6.7 CouchDB==1.1 +cryptography==1.7.2 +dominate==2.3.1 +elasticsearch==5.1.0 +elasticsearch-dsl==5.1.0 +Fabric==1.13.1 Flask==0.12 flask-appconfig==0.11.1 +Flask-Bootstrap==3.3.7.1 flask-marshmallow==0.7.0 +greenlet==0.4.12 +idna==2.2 itsdangerous==0.24 -Jinja2==2.9.5 +Jinja2==2.9.4 +lxml==3.7.2 MarkupSafe==0.23 -marshmallow==2.13.0 +marshmallow==2.13.5 packaging==16.8 -pyparsing==2.1.10 +paramiko==2.1.1 +pbr==1.10.0 +pyasn1==0.2.1 +pycparser==2.17 +pyparsing==2.2.0 +PySocks==1.6.6 +python-dateutil==2.6.0 python-memcached==1.58 +pyxdg==0.25 +requests==2.13.0 six==1.10.0 +stevedore==1.20.0 +urllib3==1.19.1 +uWSGI==2.0.14 +virtualenv==15.1.0 +virtualenv-clone==0.2.6 +virtualenvwrapper==4.7.2 +visitor==0.1.3 Werkzeug==0.11.15 +youtube-dl==2017.1.28 diff --git a/build/scripts/riotblog.min.js b/build/scripts/riotblog.min.js index ad24fdc..64ae922 100644 --- a/build/scripts/riotblog.min.js +++ b/build/scripts/riotblog.min.js @@ -1,6 +1,14 @@ -(function(){"use strict";var __TAGS_CACHE=[];var __TAG_IMPL={};var GLOBAL_MIXIN="__global_mixin";var ATTRS_PREFIX="riot-";var REF_DIRECTIVES=["ref","data-ref"];var IS_DIRECTIVE="data-is";var CONDITIONAL_DIRECTIVE="if";var LOOP_DIRECTIVE="each";var LOOP_NO_REORDER_DIRECTIVE="no-reorder";var SHOW_DIRECTIVE="show";var HIDE_DIRECTIVE="hide";var T_STRING="string";var T_OBJECT="object";var T_UNDEF="undefined";var T_FUNCTION="function";var XLINK_NS="http://www.w3.org/1999/xlink";var XLINK_REGEX=/^xlink:(\w+)/;var WIN=typeof window===T_UNDEF?undefined:window;var RE_SPECIAL_TAGS=/^(?:t(?:body|head|foot|[rhd])|caption|col(?:group)?|opt(?:ion|group))$/;var RE_SPECIAL_TAGS_NO_OPTION=/^(?:t(?:body|head|foot|[rhd])|caption|col(?:group)?)$/;var RE_RESERVED_NAMES=/^(?:_(?:item|id|parent)|update|root|(?:un)?mount|mixin|is(?:Mounted|Loop)|tags|refs|parent|opts|trigger|o(?:n|ff|ne))$/;var RE_SVG_TAGS=/^(altGlyph|animate(?:Color)?|circle|clipPath|defs|ellipse|fe(?:Blend|ColorMatrix|ComponentTransfer|Composite|ConvolveMatrix|DiffuseLighting|DisplacementMap|Flood|GaussianBlur|Image|Merge|Morphology|Offset|SpecularLighting|Tile|Turbulence)|filter|font|foreignObject|g(?:lyph)?(?:Ref)?|image|line(?:arGradient)?|ma(?:rker|sk)|missing-glyph|path|pattern|poly(?:gon|line)|radialGradient|rect|stop|svg|switch|symbol|text(?:Path)?|tref|tspan|use)$/;var RE_HTML_ATTRS=/([-\w]+) ?= ?(?:"([^"]*)|'([^']*)|({[^}]*}))/g;var CASE_SENSITIVE_ATTRIBUTES={viewbox:"viewBox"};var RE_BOOL_ATTRS=/^(?:disabled|checked|readonly|required|allowfullscreen|auto(?:focus|play)|compact|controls|default|formnovalidate|hidden|ismap|itemscope|loop|multiple|muted|no(?:resize|shade|validate|wrap)?|open|reversed|seamless|selected|sortable|truespeed|typemustmatch)$/;var IE_VERSION=(WIN&&WIN.document||{}).documentMode|0;function isSVGTag(name){return RE_SVG_TAGS.test(name)}function isBoolAttr(value){return RE_BOOL_ATTRS.test(value)}function isFunction(value){return typeof value===T_FUNCTION}function isObject(value){return value&&typeof value===T_OBJECT}function isUndefined(value){return typeof value===T_UNDEF}function isString(value){return typeof value===T_STRING}function isBlank(value){return isUndefined(value)||value===null||value===""}function isArray(value){return Array.isArray(value)||value instanceof Array}function isWritable(obj,key){var descriptor=Object.getOwnPropertyDescriptor(obj,key);return isUndefined(obj[key])||descriptor&&descriptor.writable}function isReservedName(value){return RE_RESERVED_NAMES.test(value)}var check=Object.freeze({isSVGTag:isSVGTag,isBoolAttr:isBoolAttr,isFunction:isFunction,isObject:isObject,isUndefined:isUndefined,isString:isString,isBlank:isBlank,isArray:isArray,isWritable:isWritable,isReservedName:isReservedName});function $$(selector,ctx){return(ctx||document).querySelectorAll(selector)}function $(selector,ctx){return(ctx||document).querySelector(selector)}function createFrag(){return document.createDocumentFragment()}function createDOMPlaceholder(){return document.createTextNode("")}function mkEl(name,isSvg){return isSvg?document.createElementNS("http://www.w3.org/2000/svg","svg"):document.createElement(name)}function getOuterHTML(el){if(el.outerHTML){return el.outerHTML}else{var container=mkEl("div");container.appendChild(el.cloneNode(true));return container.innerHTML}}function setInnerHTML(container,html){if(!isUndefined(container.innerHTML)){container.innerHTML=html}else{var doc=(new DOMParser).parseFromString(html,"application/xml");var node=container.ownerDocument.importNode(doc.documentElement,true);container.appendChild(node)}}function remAttr(dom,name){dom.removeAttribute(name)}function getAttr(dom,name){return dom.getAttribute(name)}function setAttr(dom,name,val){var xlink=XLINK_REGEX.exec(name);if(xlink&&xlink[1]){dom.setAttributeNS(XLINK_NS,xlink[1],val)}else{dom.setAttribute(name,val)}}function safeInsert(root,curr,next){root.insertBefore(curr,next.parentNode&&next)}function walkAttrs(html,fn){if(!html){return}var m;while(m=RE_HTML_ATTRS.exec(html)){fn(m[1].toLowerCase(),m[2]||m[3]||m[4])}}function walkNodes(dom,fn,context){if(dom){var res=fn(dom,context);var next;if(res===false){return}dom=dom.firstChild;while(dom){next=dom.nextSibling;walkNodes(dom,fn,res);dom=next}}}var dom=Object.freeze({$$:$$,$:$,createFrag:createFrag,createDOMPlaceholder:createDOMPlaceholder,mkEl:mkEl,getOuterHTML:getOuterHTML,setInnerHTML:setInnerHTML,remAttr:remAttr,getAttr:getAttr,setAttr:setAttr,safeInsert:safeInsert,walkAttrs:walkAttrs,walkNodes:walkNodes});var styleNode;var cssTextProp;var byName={};var remainder=[];var needsInject=false;if(WIN){styleNode=function(){var newNode=mkEl("style");setAttr(newNode,"type","text/css");var userNode=$("style[type=riot]");if(userNode){if(userNode.id){newNode.id=userNode.id}userNode.parentNode.replaceChild(newNode,userNode)}else{document.getElementsByTagName("head")[0].appendChild(newNode)}return newNode}();cssTextProp=styleNode.styleSheet}var styleManager={styleNode:styleNode,add:function add(css,name){if(name){byName[name]=css}else{remainder.push(css)}needsInject=true},inject:function inject(){if(!WIN||!needsInject){return}needsInject=false;var style=Object.keys(byName).map(function(k){return byName[k]}).concat(remainder).join("\n");if(cssTextProp){cssTextProp.cssText=style}else{styleNode.innerHTML=style}}};var brackets=function(UNDEF){var REGLOB="g",R_MLCOMMS=/\/\*[^*]*\*+(?:[^*\/][^*]*\*+)*\//g,R_STRINGS=/"[^"\\]*(?:\\[\S\s][^"\\]*)*"|'[^'\\]*(?:\\[\S\s][^'\\]*)*'/g,S_QBLOCKS=R_STRINGS.source+"|"+/(?:\breturn\s+|(?:[$\w\)\]]|\+\+|--)\s*(\/)(?![*\/]))/.source+"|"+/\/(?=[^*\/])[^[\/\\]*(?:(?:\[(?:\\.|[^\]\\]*)*\]|\\.)[^[\/\\]*)*?(\/)[gim]*/.source,UNSUPPORTED=RegExp("[\\"+"x00-\\x1F<>a-zA-Z0-9'\",;\\\\]"),NEED_ESCAPE=/(?=[[\]()*+?.^$|])/g,FINDBRACES={"(":RegExp("([()])|"+S_QBLOCKS,REGLOB),"[":RegExp("([[\\]])|"+S_QBLOCKS,REGLOB),"{":RegExp("([{}])|"+S_QBLOCKS,REGLOB)},DEFAULT="{ }";var _pairs=["{","}","{","}",/{[^}]*}/,/\\([{}])/g,/\\({)|{/g,RegExp("\\\\(})|([[({])|(})|"+S_QBLOCKS,REGLOB),DEFAULT,/^\s*{\^?\s*([$\w]+)(?:\s*,\s*(\S+))?\s+in\s+(\S.*)\s*}/,/(^|[^\\]){=[\S\s]*?}/];var cachedBrackets=UNDEF,_regex,_cache=[],_settings;function _loopback(re){return re}function _rewrite(re,bp){if(!bp){bp=_cache}return new RegExp(re.source.replace(/{/g,bp[2]).replace(/}/g,bp[3]),re.global?REGLOB:"")}function _create(pair){if(pair===DEFAULT){return _pairs}var arr=pair.split(" ");if(arr.length!==2||UNSUPPORTED.test(pair)){throw new Error('Unsupported brackets "'+pair+'"')}arr=arr.concat(pair.replace(NEED_ESCAPE,"\\").split(" "));arr[4]=_rewrite(arr[1].length>1?/{[\S\s]*?}/:_pairs[4],arr);arr[5]=_rewrite(pair.length>3?/\\({|})/g:_pairs[5],arr);arr[6]=_rewrite(_pairs[6],arr);arr[7]=RegExp("\\\\("+arr[3]+")|([[({])|("+arr[3]+")|"+S_QBLOCKS,REGLOB);arr[8]=pair;return arr}function _brackets(reOrIdx){return reOrIdx instanceof RegExp?_regex(reOrIdx):_cache[reOrIdx]}_brackets.split=function split(str,tmpl,_bp){if(!_bp){_bp=_cache}var parts=[],match,isexpr,start,pos,re=_bp[6];isexpr=start=re.lastIndex=0;while(match=re.exec(str)){pos=match.index;if(isexpr){if(match[2]){re.lastIndex=skipBraces(str,match[2],re.lastIndex);continue}if(!match[3]){continue}}if(!match[1]){unescapeStr(str.slice(start,pos));start=re.lastIndex;re=_bp[6+(isexpr^=1)];re.lastIndex=start}}if(str&&start tag",err.riotData.tagName)}console.error(err)}}function _create(str){var expr=_getTmpl(str);if(expr.slice(0,11)!=="try{return "){expr="return "+expr}return new Function("E",expr+";")}var CH_IDEXPR=String.fromCharCode(8279),RE_CSNAME=/^(?:(-?[_A-Za-z\xA0-\xFF][-\w\xA0-\xFF]*)|\u2057(\d+)~):/,RE_QBLOCK=RegExp(brackets.S_QBLOCKS,"g"),RE_DQUOTE=/\u2057/g,RE_QBMARK=/\u2057(\d+)~/g;function _getTmpl(str){var qstr=[],expr,parts=brackets.split(str.replace(RE_DQUOTE,'"'),1);if(parts.length>2||parts[0]){var i,j,list=[];for(i=j=0;i2&&!div?CH_IDEXPR+(qstr.push(s)-1)+"~":s}).replace(/\s+/g," ").trim().replace(/\ ?([[\({},?\.:])\ ?/g,"$1");if(expr){var list=[],cnt=0,match;while(expr&&(match=expr.match(RE_CSNAME))&&!match.index){var key,jsb,re=/,|([[{(])|$/g;expr=RegExp.rightContext;key=match[2]?qstr[match[2]].slice(1,-1).trim().replace(/\s+/g," "):match[1];while(jsb=(match=re.exec(expr))[1]){skipBraces(jsb,re)}jsb=expr.slice(0,match.index);expr=RegExp.rightContext;list[cnt++]=_wrapExpr(jsb,1,key)}expr=!cnt?_wrapExpr(expr,asText):cnt>1?"["+list.join(",")+'].join(" ").trim()':list[0]}return expr;function skipBraces(ch,re){var mm,lv=1,ir=RE_BREND[ch];ir.lastIndex=re.lastIndex;while(mm=ir.exec(expr)){if(mm[0]===ch){++lv}else if(!--lv){break}}re.lastIndex=lv?expr.length:ir.lastIndex}}var JS_CONTEXT='"in this?this:'+(typeof window!=="object"?"global":"window")+").",JS_VARNAME=/[,{][\$\w]+(?=:)|(^ *|[^$\w\.{])(?!(?:typeof|true|false|null|undefined|in|instanceof|is(?:Finite|NaN)|void|NaN|new|Date|RegExp|Math)(?![$\w]))([$_A-Za-z][$\w]*)/g,JS_NOPROPS=/^(?=(\.[$\w]+))\1(?:[^.[(]|$)/;function _wrapExpr(expr,asText,key){var tb;expr=expr.replace(JS_VARNAME,function(match,p,mvar,pos,s){if(mvar){pos=tb?0:pos+match.length;if(mvar!=="this"&&mvar!=="global"&&mvar!=="window"){match=p+'("'+mvar+JS_CONTEXT+mvar;if(pos){tb=(s=s[pos])==="."||s==="("||s==="["}}else if(pos){tb=!JS_NOPROPS.test(s.slice(pos))}}return match});if(tb){expr="try{return "+expr+"}catch(e){E(e,this)}"}if(key){expr=(tb?"function(){"+expr+"}.call(this)":"("+expr+")")+'?"'+key+'":""'}else if(asText){expr="function(v){"+(tb?expr.replace("return ","v="):"v=("+expr+")")+';return v||v===0?v:""}.call(this)'}return expr}_tmpl.version=brackets.version="v3.0.2";return _tmpl}();var observable$1=function(el){el=el||{};var callbacks={},slice=Array.prototype.slice;Object.defineProperties(el,{on:{value:function(event,fn){if(typeof fn=="function"){(callbacks[event]=callbacks[event]||[]).push(fn)}return el},enumerable:false,writable:false,configurable:false},off:{value:function(event,fn){if(event=="*"&&!fn){callbacks={}}else{if(fn){var arr=callbacks[event];for(var i=0,cb;cb=arr&&arr[i];++i){if(cb==fn){arr.splice(i--,1)}}}else{delete callbacks[event]}}return el},enumerable:false,writable:false,configurable:false},one:{value:function(event,fn){function on(){el.off(event,on);fn.apply(el,arguments)}return el.on(event,on)},enumerable:false,writable:false,configurable:false},trigger:{value:function(event){var arguments$1=arguments;var arglen=arguments.length-1,args=new Array(arglen),fns,fn,i;for(i=0;ij){i--;remove.apply(tags[i],[tags,i])}}function remove(tags,i){tags.splice(i,1);this.unmount();arrayishRemove(this.parent,this,this.__.tagName,true)}function moveNestedTags(i){var this$1=this;each(Object.keys(this.tags),function(tagName){var tag=this$1.tags[tagName];if(isArray(tag)){each(tag,function(t){moveChildTag.apply(t,[tagName,i])})}else{moveChildTag.apply(tag,[tagName,i])}})}function move(root,nextTag,isVirtual){if(isVirtual){moveVirtual.apply(this,[root,nextTag])}else{safeInsert(root,this.root,nextTag.root)}}function insert(root,nextTag,isVirtual){if(isVirtual){makeVirtual.apply(this,[root,nextTag])}else{safeInsert(root,this.root,nextTag.root)}}function append(root,isVirtual){if(isVirtual){makeVirtual.call(this,root)}else{root.appendChild(this.root)}}function _each(dom,parent,expr){remAttr(dom,LOOP_DIRECTIVE);var mustReorder=typeof getAttr(dom,LOOP_NO_REORDER_DIRECTIVE)!==T_STRING||remAttr(dom,LOOP_NO_REORDER_DIRECTIVE),tagName=getTagName(dom),impl=__TAG_IMPL[tagName],parentNode=dom.parentNode,placeholder=createDOMPlaceholder(),child=getTag(dom),ifExpr=getAttr(dom,CONDITIONAL_DIRECTIVE),tags=[],oldItems=[],hasKeys,isLoop=true,isAnonymous=!__TAG_IMPL[tagName],isVirtual=dom.tagName==="VIRTUAL";expr=tmpl.loopKeys(expr);expr.isLoop=true;if(ifExpr){remAttr(dom,CONDITIONAL_DIRECTIVE)}parentNode.insertBefore(placeholder,dom);parentNode.removeChild(dom);expr.update=function updateEach(){var items=tmpl(expr.val,parent),frag=createFrag(),isObject$$1=!isArray(items)&&!isString(items),root=placeholder.parentNode;if(isObject$$1){hasKeys=items||false;items=hasKeys?Object.keys(items).map(function(key){return mkitem(expr,items[key],key)}):[]}else{hasKeys=false}if(ifExpr){items=items.filter(function(item,i){if(expr.key&&!isObject$$1){return!!tmpl(ifExpr,mkitem(expr,item,i,parent))}return!!tmpl(ifExpr,extend(Object.create(parent),item))})}each(items,function(item,i){var doReorder=mustReorder&&typeof item===T_OBJECT&&!hasKeys,oldPos=oldItems.indexOf(item),isNew=oldPos===-1,pos=!isNew&&doReorder?oldPos:i,tag=tags[pos],mustAppend=i>=oldItems.length,mustCreate=doReorder&&isNew||!doReorder&&!tag;item=!hasKeys&&expr.key?mkitem(expr,item,i):item;if(mustCreate){tag=new Tag$1(impl,{parent:parent,isLoop:isLoop,isAnonymous:isAnonymous,tagName:tagName,root:dom.cloneNode(isAnonymous),item:item,index:i},dom.innerHTML);tag.mount();if(mustAppend){append.apply(tag,[frag||root,isVirtual])}else{insert.apply(tag,[root,tags[i],isVirtual])}if(!mustAppend){oldItems.splice(i,0,item)}tags.splice(i,0,tag);if(child){arrayishAdd(parent.tags,tagName,tag,true)}}else if(pos!==i&&doReorder){if(contains(items,oldItems[pos])){move.apply(tag,[root,tags[i],isVirtual]);tags.splice(i,0,tags.splice(pos,1)[0]);oldItems.splice(i,0,oldItems.splice(pos,1)[0])}else{remove.apply(tags[i],[tags,i]);oldItems.splice(i,1)}if(expr.pos){tag[expr.pos]=i}if(!child&&tag.tags){moveNestedTags.call(tag,i)}}tag.__.item=item;tag.__.index=i;tag.__.parent=parent;if(!mustCreate){tag.update(item)}});unmountRedundant(items,tags);oldItems=items.slice();root.insertBefore(frag,placeholder)};expr.unmount=function(){each(tags,function(t){t.unmount()})};return expr}function parseExpressions(root,expressions,mustIncludeRoot){var this$1=this;var tree={parent:{children:expressions}};walkNodes(root,function(dom,ctx){var type=dom.nodeType,parent=ctx.parent,attr,expr,tagImpl;if(!mustIncludeRoot&&dom===root){return{parent:parent}}if(type===3&&dom.parentNode.tagName!=="STYLE"&&tmpl.hasExpr(dom.nodeValue)){parent.children.push({dom:dom,expr:dom.nodeValue})}if(type!==1){return ctx}var isVirtual=dom.tagName==="VIRTUAL";if(attr=getAttr(dom,LOOP_DIRECTIVE)){if(isVirtual){setAttr(dom,"loopVirtual",true)}parent.children.push(_each(dom,this$1,attr));return false}if(attr=getAttr(dom,CONDITIONAL_DIRECTIVE)){parent.children.push(Object.create(IfExpr).init(dom,this$1,attr));return false}if(expr=getAttr(dom,IS_DIRECTIVE)){if(tmpl.hasExpr(expr)){parent.children.push({isRtag:true,expr:expr,dom:dom,attrs:[].slice.call(dom.attributes)});return false}}tagImpl=getTag(dom);if(isVirtual){if(getAttr(dom,"virtualized")){dom.parentElement.removeChild(dom)}if(!tagImpl&&!getAttr(dom,"virtualized")&&!getAttr(dom,"loopVirtual")){tagImpl={tmpl:dom.outerHTML}}}if(tagImpl&&(dom!==root||mustIncludeRoot)){if(isVirtual&&!getAttr(dom,IS_DIRECTIVE)){setAttr(dom,"virtualized",true);var tag=new Tag$1({tmpl:dom.outerHTML},{root:dom,parent:this$1},dom.innerHTML);parent.children.push(tag)}else{var conf={root:dom,parent:this$1,hasImpl:true};parent.children.push(initChildTag(tagImpl,conf,dom.innerHTML,this$1));return false}}parseAttributes.apply(this$1,[dom,dom.attributes,function(attr,expr){if(!expr){return}parent.children.push(expr)}]);return{parent:parent}},tree);return{tree:tree,root:root}}function parseAttributes(dom,attrs,fn){var this$1=this;each(attrs,function(attr){var name=attr.name,bool=isBoolAttr(name),expr;if(contains(REF_DIRECTIVES,name)){expr=Object.create(RefExpr).init(dom,this$1,name,attr.value)}else if(tmpl.hasExpr(attr.value)){expr={dom:dom,expr:attr.value,attr:attr.name,bool:bool}}fn(attr,expr)})}var reHasYield=/|>([\S\s]*?)<\/yield\s*>|>)/gi;var reYieldSrc=/]*)['"]\s*>([\S\s]*?)<\/yield\s*>/gi;var reYieldDest=/|>([\S\s]*?)<\/yield\s*>)/gi;var rootEls={tr:"tbody",th:"tr",td:"tr",col:"colgroup"};var tblTags=IE_VERSION&&IE_VERSION<10?RE_SPECIAL_TAGS:RE_SPECIAL_TAGS_NO_OPTION;var GENERIC="div";function specialTags(el,tmpl,tagName){var select=tagName[0]==="o",parent=select?"select>":"table>";el.innerHTML="<"+parent+tmpl.trim()+"%*/";var beforeReWords=["case","default","do","else","in","instanceof","prefix","return","typeof","void","yield"];var beforeWordChars=beforeReWords.reduce(function(s,w){return s+w.slice(-1)},"");var RE_REGEX=/^\/(?=[^*>\/])[^[\/\\]*(?:\\.|(?:\[(?:\\.|[^\]\\]*)*\])[^[\\\/]*)*?\/[gimuy]*/;var RE_VARCHAR=/[$\w]/;function prev(code,pos){while(--pos>=0&&/\s/.test(code[pos])){}return pos}function _skipRegex(code,start){var re=/.*/g;var pos=re.lastIndex=start++;var match=re.exec(code)[0].match(RE_REGEX);if(match){var next=pos+match[0].length;pos=prev(code,pos);var c=code[pos];if(pos<0||~beforeReChars.indexOf(c)){return next}if(c==="."){if(code[pos-1]==="."){start=next}}else if(c==="+"||c==="-"){if(code[--pos]!==c||(pos=prev(code,pos))<0||!RE_VARCHAR.test(code[pos])){start=next}}else if(~beforeWordChars.indexOf(c)){++pos;for(var i=0;i=0&&code.slice(nn,pos)===kw&&!RE_VARCHAR.test(code[nn-1])){start=next;break}}}}return start}return _skipRegex}();var brackets=function(UNDEF){var REGLOB="g",R_MLCOMMS=/\/\*[^*]*\*+(?:[^*\/][^*]*\*+)*\//g,R_STRINGS=/"[^"\\]*(?:\\[\S\s][^"\\]*)*"|'[^'\\]*(?:\\[\S\s][^'\\]*)*'|`[^`\\]*(?:\\[\S\s][^`\\]*)*`/g,S_QBLOCKS=R_STRINGS.source+"|"+/(?:\breturn\s+|(?:[$\w\)\]]|\+\+|--)\s*(\/)(?![*\/]))/.source+"|"+/\/(?=[^*\/])[^[\/\\]*(?:(?:\[(?:\\.|[^\]\\]*)*\]|\\.)[^[\/\\]*)*?([^<]\/)[gim]*/.source,S_QBLOCK2=R_STRINGS.source+"|"+/(\/)(?![*\/])/.source,UNSUPPORTED=RegExp("[\\"+"x00-\\x1F<>a-zA-Z0-9'\",;\\\\]"),NEED_ESCAPE=/(?=[[\]()*+?.^$|])/g,FINDBRACES={"(":RegExp("([()])|"+S_QBLOCK2,REGLOB),"[":RegExp("([[\\]])|"+S_QBLOCK2,REGLOB),"{":RegExp("([{}])|"+S_QBLOCK2,REGLOB)},DEFAULT="{ }";var _pairs=["{","}","{","}",/{[^}]*}/,/\\([{}])/g,/\\({)|{/g,RegExp("\\\\(})|([[({])|(})|"+S_QBLOCK2,REGLOB),DEFAULT,/^\s*{\^?\s*([$\w]+)(?:\s*,\s*(\S+))?\s+in\s+(\S.*)\s*}/,/(^|[^\\]){=[\S\s]*?}/];var cachedBrackets=UNDEF,_regex,_cache=[],_settings;function _loopback(re){return re}function _rewrite(re,bp){if(!bp){bp=_cache}return new RegExp(re.source.replace(/{/g,bp[2]).replace(/}/g,bp[3]),re.global?REGLOB:"")}function _create(pair){if(pair===DEFAULT){return _pairs}var arr=pair.split(" ");if(arr.length!==2||UNSUPPORTED.test(pair)){throw new Error('Unsupported brackets "'+pair+'"')}arr=arr.concat(pair.replace(NEED_ESCAPE,"\\").split(" "));arr[4]=_rewrite(arr[1].length>1?/{[\S\s]*?}/:_pairs[4],arr);arr[5]=_rewrite(pair.length>3?/\\({|})/g:_pairs[5],arr);arr[6]=_rewrite(_pairs[6],arr);arr[7]=RegExp("\\\\("+arr[3]+")|([[({])|("+arr[3]+")|"+S_QBLOCK2,REGLOB);arr[8]=pair;return arr}function _brackets(reOrIdx){return reOrIdx instanceof RegExp?_regex(reOrIdx):_cache[reOrIdx]}_brackets.split=function split(str,tmpl,_bp){if(!_bp){_bp=_cache}var parts=[],match,isexpr,start,pos,re=_bp[6];var qblocks=[];var prevStr="";var mark,lastIndex;isexpr=start=re.lastIndex=0;while(match=re.exec(str)){lastIndex=re.lastIndex;pos=match.index;if(isexpr){if(match[2]){var ch=match[2];var rech=FINDBRACES[ch];var ix=1;rech.lastIndex=lastIndex;while(match=rech.exec(str)){if(match[1]){if(match[1]===ch){++ix}else if(!--ix){break}}else{rech.lastIndex=pushQBlock(match.index,rech.lastIndex,match[2])}}re.lastIndex=ix?str.length:rech.lastIndex;continue}if(!match[3]){re.lastIndex=pushQBlock(pos,lastIndex,match[4]);continue}}if(!match[1]){unescapeStr(str.slice(start,pos));start=re.lastIndex;re=_bp[6+(isexpr^=1)];re.lastIndex=start}}if(str&&start_pos+2){mark="⁗"+qblocks.length+"~";qblocks.push(str.slice(_pos,_lastIndex));prevStr+=str.slice(start,_pos)+mark;start=_lastIndex}return _lastIndex}};_brackets.hasExpr=function hasExpr(str){return _cache[4].test(str)};_brackets.loopKeys=function loopKeys(expr){var m=expr.match(_cache[9]);return m?{key:m[1],pos:m[2],val:_cache[0]+m[3].trim()+_cache[1]}:{val:expr.trim()}};_brackets.array=function array(pair){return pair?_create(pair):_cache};function _reset(pair){if((pair||(pair=DEFAULT))!==_cache[8]){_cache=_create(pair);_regex=pair===DEFAULT?_loopback:_rewrite;_cache[9]=_regex(_pairs[9])}cachedBrackets=pair}function _setSettings(o){var b;o=o||{};b=o.brackets;Object.defineProperty(o,"brackets",{set:_reset,get:function(){return cachedBrackets},enumerable:true});_settings=o;_reset(b)}Object.defineProperty(_brackets,"settings",{set:_setSettings,get:function(){return _settings}});_brackets.settings=typeof riot!=="undefined"&&riot.settings||{};_brackets.set=_reset;_brackets.R_STRINGS=R_STRINGS;_brackets.R_MLCOMMS=R_MLCOMMS;_brackets.S_QBLOCKS=S_QBLOCKS;_brackets.S_QBLOCK2=S_QBLOCK2;return _brackets}();var tmpl=function(){var _cache={};function _tmpl(str,data){if(!str){return str}return(_cache[str]||(_cache[str]=_create(str))).call(data,_logErr.bind({data:data,tmpl:str}))}_tmpl.hasExpr=brackets.hasExpr;_tmpl.loopKeys=brackets.loopKeys;_tmpl.clearCache=function(){_cache={}};_tmpl.errorHandler=null;function _logErr(err,ctx){err.riotData={tagName:ctx&&ctx.__&&ctx.__.tagName,_riot_id:ctx&&ctx._riot_id};if(_tmpl.errorHandler){_tmpl.errorHandler(err)}else if(typeof console!=="undefined"&&typeof console.error==="function"){console.error(err.message);console.log("<%s> %s",err.riotData.tagName||"Unknown tag",this.tmpl);console.log(this.data)}}function _create(str){var expr=_getTmpl(str);if(expr.slice(0,11)!=="try{return "){expr="return "+expr}return new Function("E",expr+";")}var RE_DQUOTE=/\u2057/g;var RE_QBMARK=/\u2057(\d+)~/g;function _getTmpl(str){var parts=brackets.split(str.replace(RE_DQUOTE,'"'),1);var qstr=parts.qblocks;var expr;if(parts.length>2||parts[0]){var i,j,list=[];for(i=j=0;i1?"["+list.join(",")+'].join(" ").trim()':list[0]}return expr;function skipBraces(ch,re){var mm,lv=1,ir=RE_BREND[ch];ir.lastIndex=re.lastIndex;while(mm=ir.exec(expr)){if(mm[0]===ch){++lv}else if(!--lv){break}}re.lastIndex=lv?expr.length:ir.lastIndex}}var JS_CONTEXT='"in this?this:'+(typeof window!=="object"?"global":"window")+").",JS_VARNAME=/[,{][\$\w]+(?=:)|(^ *|[^$\w\.{])(?!(?:typeof|true|false|null|undefined|in|instanceof|is(?:Finite|NaN)|void|NaN|new|Date|RegExp|Math)(?![$\w]))([$_A-Za-z][$\w]*)/g,JS_NOPROPS=/^(?=(\.[$\w]+))\1(?:[^.[(]|$)/;function _wrapExpr(expr,asText,key){var tb;expr=expr.replace(JS_VARNAME,function(match,p,mvar,pos,s){if(mvar){pos=tb?0:pos+match.length;if(mvar!=="this"&&mvar!=="global"&&mvar!=="window"){match=p+'("'+mvar+JS_CONTEXT+mvar;if(pos){tb=(s=s[pos])==="."||s==="("||s==="["}}else if(pos){tb=!JS_NOPROPS.test(s.slice(pos))}}return match});if(tb){expr="try{return "+expr+"}catch(e){E(e,this)}"}if(key){expr=(tb?"function(){"+expr+"}.call(this)":"("+expr+")")+'?"'+key+'":""'}else if(asText){expr="function(v){"+(tb?expr.replace("return ","v="):"v=("+expr+")")+';return v||v===0?v:""}.call(this)'}return expr}_tmpl.version=brackets.version="v3.0.7";return _tmpl}();var observable$1=function(el){el=el||{};var callbacks={},slice=Array.prototype.slice;Object.defineProperties(el,{on:{value:function(event,fn){if(typeof fn=="function"){(callbacks[event]=callbacks[event]||[]).push(fn)}return el},enumerable:false,writable:false,configurable:false},off:{value:function(event,fn){if(event=="*"&&!fn){callbacks={}}else{if(fn){var arr=callbacks[event];for(var i=0,cb;cb=arr&&arr[i];++i){if(cb==fn){arr.splice(i--,1)}}}else{delete callbacks[event]}}return el},enumerable:false,writable:false,configurable:false},one:{value:function(event,fn){function on(){el.off(event,on);fn.apply(el,arguments)}return el.on(event,on)},enumerable:false,writable:false,configurable:false},trigger:{value:function(event){var arguments$1=arguments;var arglen=arguments.length-1,args=new Array(arglen),fns,fn,i;for(i=0;ij){i--;remove.apply(tags[i],[tags,i])}}function remove(tags,i){tags.splice(i,1);this.unmount();arrayishRemove(this.parent,this,this.__.tagName,true)}function moveNestedTags(i){var this$1=this;each(Object.keys(this.tags),function(tagName){moveChildTag.apply(this$1.tags[tagName],[tagName,i])})}function move(root,nextTag,isVirtual){if(isVirtual){moveVirtual.apply(this,[root,nextTag])}else{safeInsert(root,this.root,nextTag.root)}}function insert(root,nextTag,isVirtual){if(isVirtual){makeVirtual.apply(this,[root,nextTag])}else{safeInsert(root,this.root,nextTag.root)}}function append(root,isVirtual){if(isVirtual){makeVirtual.call(this,root)}else{root.appendChild(this.root)}}function _each(dom,parent,expr){remAttr(dom,LOOP_DIRECTIVE);var mustReorder=typeof getAttr(dom,LOOP_NO_REORDER_DIRECTIVE)!==T_STRING||remAttr(dom,LOOP_NO_REORDER_DIRECTIVE),tagName=getTagName(dom),impl=__TAG_IMPL[tagName],parentNode=dom.parentNode,placeholder=createDOMPlaceholder(),child=getTag(dom),ifExpr=getAttr(dom,CONDITIONAL_DIRECTIVE),tags=[],oldItems=[],hasKeys,isLoop=true,isAnonymous=!__TAG_IMPL[tagName],isVirtual=dom.tagName==="VIRTUAL";expr=tmpl.loopKeys(expr);expr.isLoop=true;if(ifExpr){remAttr(dom,CONDITIONAL_DIRECTIVE)}parentNode.insertBefore(placeholder,dom);parentNode.removeChild(dom);expr.update=function updateEach(){expr.value=tmpl(expr.val,parent);var frag=createFrag(),items=expr.value,isObject$$1=!isArray(items)&&!isString(items),root=placeholder.parentNode;if(!root){return}if(isObject$$1){hasKeys=items||false;items=hasKeys?Object.keys(items).map(function(key){return mkitem(expr,items[key],key)}):[]}else{hasKeys=false}if(ifExpr){items=items.filter(function(item,i){if(expr.key&&!isObject$$1){return!!tmpl(ifExpr,mkitem(expr,item,i,parent))}return!!tmpl(ifExpr,extend(Object.create(parent),item))})}each(items,function(item,i){var doReorder=mustReorder&&typeof item===T_OBJECT&&!hasKeys,oldPos=oldItems.indexOf(item),isNew=oldPos===-1,pos=!isNew&&doReorder?oldPos:i,tag=tags[pos],mustAppend=i>=oldItems.length,mustCreate=doReorder&&isNew||!doReorder&&!tag;item=!hasKeys&&expr.key?mkitem(expr,item,i):item;if(mustCreate){tag=new Tag$1(impl,{parent:parent,isLoop:isLoop,isAnonymous:isAnonymous,tagName:tagName,root:dom.cloneNode(isAnonymous),item:item,index:i},dom.innerHTML);tag.mount();if(mustAppend){append.apply(tag,[frag||root,isVirtual])}else{insert.apply(tag,[root,tags[i],isVirtual])}if(!mustAppend){oldItems.splice(i,0,item)}tags.splice(i,0,tag);if(child){arrayishAdd(parent.tags,tagName,tag,true)}}else if(pos!==i&&doReorder){if(contains(items,oldItems[pos])){move.apply(tag,[root,tags[i],isVirtual]);tags.splice(i,0,tags.splice(pos,1)[0]);oldItems.splice(i,0,oldItems.splice(pos,1)[0])}if(expr.pos){tag[expr.pos]=i}if(!child&&tag.tags){moveNestedTags.call(tag,i)}}tag.__.item=item;tag.__.index=i;tag.__.parent=parent;if(!mustCreate){tag.update(item)}});unmountRedundant(items,tags);oldItems=items.slice();root.insertBefore(frag,placeholder)};expr.unmount=function(){each(tags,function(t){t.unmount()})};return expr}function parseExpressions(root,expressions,mustIncludeRoot){var this$1=this;var tree={parent:{children:expressions}};walkNodes(root,function(dom,ctx){var type=dom.nodeType,parent=ctx.parent,attr,expr,tagImpl;if(!mustIncludeRoot&&dom===root){return{parent:parent}}if(type===3&&dom.parentNode.tagName!=="STYLE"&&tmpl.hasExpr(dom.nodeValue)){parent.children.push({dom:dom,expr:dom.nodeValue})}if(type!==1){return ctx}var isVirtual=dom.tagName==="VIRTUAL";if(attr=getAttr(dom,LOOP_DIRECTIVE)){if(isVirtual){setAttr(dom,"loopVirtual",true)}parent.children.push(_each(dom,this$1,attr));return false}if(attr=getAttr(dom,CONDITIONAL_DIRECTIVE)){parent.children.push(Object.create(IfExpr).init(dom,this$1,attr));return false}if(expr=getAttr(dom,IS_DIRECTIVE)){if(tmpl.hasExpr(expr)){parent.children.push({isRtag:true,expr:expr,dom:dom,attrs:[].slice.call(dom.attributes)});return false}}tagImpl=getTag(dom);if(isVirtual){if(getAttr(dom,"virtualized")){dom.parentElement.removeChild(dom)}if(!tagImpl&&!getAttr(dom,"virtualized")&&!getAttr(dom,"loopVirtual")){tagImpl={tmpl:dom.outerHTML}}}if(tagImpl&&(dom!==root||mustIncludeRoot)){if(isVirtual&&!getAttr(dom,IS_DIRECTIVE)){setAttr(dom,"virtualized",true);var tag=new Tag$1({tmpl:dom.outerHTML},{root:dom,parent:this$1},dom.innerHTML);parent.children.push(tag)}else{var conf={root:dom,parent:this$1,hasImpl:true};parent.children.push(initChildTag(tagImpl,conf,dom.innerHTML,this$1));return false}}parseAttributes.apply(this$1,[dom,dom.attributes,function(attr,expr){if(!expr){return}parent.children.push(expr)}]);return{parent:parent}},tree)}function parseAttributes(dom,attrs,fn){var this$1=this;each(attrs,function(attr){if(!attr){return false}var name=attr.name,bool=isBoolAttr(name),expr;if(contains(REF_DIRECTIVES,name)){expr=Object.create(RefExpr).init(dom,this$1,name,attr.value)}else if(tmpl.hasExpr(attr.value)){expr={dom:dom,expr:attr.value,attr:name,bool:bool}}fn(attr,expr)})}var reHasYield=/|>([\S\s]*?)<\/yield\s*>|>)/gi;var reYieldSrc=/]*)['"]\s*>([\S\s]*?)<\/yield\s*>/gi;var reYieldDest=/|>([\S\s]*?)<\/yield\s*>)/gi;var rootEls={tr:"tbody",th:"tr",td:"tr",col:"colgroup"};var tblTags=IE_VERSION&&IE_VERSION<10?RE_SPECIAL_TAGS:RE_SPECIAL_TAGS_NO_OPTION;var GENERIC="div";var SVG="svg";function specialTags(el,tmpl,tagName){var select=tagName[0]==="o",parent=select?"select>":"table>";el.innerHTML="<"+parent+tmpl.trim()+"-1}}function normalizeName(name){if(typeof name!=="string"){name=String(name)}if(/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(name)){throw new TypeError("Invalid character in header field name")}return name.toLowerCase()}function normalizeValue(value){if(typeof value!=="string"){value=String(value)}return value}function iteratorFor(items){var iterator={next:function(){var value=items.shift();return{done:value===undefined,value:value}}};if(support.iterable){iterator[Symbol.iterator]=function(){return iterator}}return iterator}function Headers(headers){this.map={};if(headers instanceof Headers){headers.forEach(function(value,name){this.append(name,value)},this)}else if(headers){Object.getOwnPropertyNames(headers).forEach(function(name){this.append(name,headers[name])},this)}}Headers.prototype.append=function(name,value){name=normalizeName(name);value=normalizeValue(value);var oldValue=this.map[name];this.map[name]=oldValue?oldValue+","+value:value};Headers.prototype["delete"]=function(name){delete this.map[normalizeName(name)]};Headers.prototype.get=function(name){name=normalizeName(name);return this.has(name)?this.map[name]:null};Headers.prototype.has=function(name){return this.map.hasOwnProperty(normalizeName(name))};Headers.prototype.set=function(name,value){this.map[normalizeName(name)]=normalizeValue(value)};Headers.prototype.forEach=function(callback,thisArg){var this$1=this;for(var name in this$1.map){if(this$1.map.hasOwnProperty(name)){callback.call(thisArg,this$1.map[name],name,this$1)}}};Headers.prototype.keys=function(){var items=[];this.forEach(function(value,name){items.push(name)});return iteratorFor(items)};Headers.prototype.values=function(){var items=[];this.forEach(function(value){items.push(value)});return iteratorFor(items)};Headers.prototype.entries=function(){var items=[];this.forEach(function(value,name){items.push([name,value])});return iteratorFor(items)};if(support.iterable){Headers.prototype[Symbol.iterator]=Headers.prototype.entries}function consumed(body){if(body.bodyUsed){return Promise.reject(new TypeError("Already read"))}body.bodyUsed=true}function fileReaderReady(reader){return new Promise(function(resolve,reject){reader.onload=function(){resolve(reader.result)};reader.onerror=function(){reject(reader.error)}})}function readBlobAsArrayBuffer(blob){var reader=new FileReader;var promise=fileReaderReady(reader);reader.readAsArrayBuffer(blob);return promise}function readBlobAsText(blob){var reader=new FileReader;var promise=fileReaderReady(reader);reader.readAsText(blob);return promise}function readArrayBufferAsText(buf){var view=new Uint8Array(buf);var chars=new Array(view.length);for(var i=0;i-1?upcased:method}function Request(input,options){options=options||{};var body=options.body;if(input instanceof Request){if(input.bodyUsed){throw new TypeError("Already read")}this.url=input.url;this.credentials=input.credentials;if(!options.headers){this.headers=new Headers(input.headers)}this.method=input.method;this.mode=input.mode;if(!body&&input._bodyInit!=null){body=input._bodyInit;input.bodyUsed=true}}else{this.url=String(input)}this.credentials=options.credentials||this.credentials||"omit";if(options.headers||!this.headers){this.headers=new Headers(options.headers)}this.method=normalizeMethod(options.method||this.method||"GET");this.mode=options.mode||this.mode||null;this.referrer=null;if((this.method==="GET"||this.method==="HEAD")&&body){throw new TypeError("Body not allowed for GET or HEAD requests")}this._initBody(body)}Request.prototype.clone=function(){return new Request(this,{body:this._bodyInit})};function decode(body){var form=new FormData;body.trim().split("&").forEach(function(bytes){if(bytes){var split=bytes.split("=");var name=split.shift().replace(/\+/g," ");var value=split.join("=").replace(/\+/g," ");form.append(decodeURIComponent(name),decodeURIComponent(value))}});return form}function parseHeaders(rawHeaders){var headers=new Headers;rawHeaders.split(/\r?\n/).forEach(function(line){var parts=line.split(":");var key=parts.shift().trim();if(key){var value=parts.join(":").trim();headers.append(key,value)}});return headers}Body.call(Request.prototype);function Response(bodyInit,options){if(!options){options={}}this.type="default";this.status="status"in options?options.status:200;this.ok=this.status>=200&&this.status<300;this.statusText="statusText"in options?options.statusText:"OK";this.headers=new Headers(options.headers);this.url=options.url||"";this._initBody(bodyInit)}Body.call(Response.prototype);Response.prototype.clone=function(){return new Response(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Headers(this.headers),url:this.url})};Response.error=function(){var response=new Response(null,{status:0,statusText:""});response.type="error";return response};var redirectStatuses=[301,302,303,307,308];Response.redirect=function(url,status){if(redirectStatuses.indexOf(status)===-1){throw new RangeError("Invalid status code")}return new Response(null,{status:status,headers:{location:url}})};self.Headers=Headers;self.Request=Request;self.Response=Response;self.fetch=function(input,init){return new Promise(function(resolve,reject){var request=new Request(input,init);var xhr=new XMLHttpRequest;xhr.onload=function(){var options={status:xhr.status,statusText:xhr.statusText,headers:parseHeaders(xhr.getAllResponseHeaders()||"")};options.url="responseURL"in xhr?xhr.responseURL:options.headers.get("X-Request-URL");var body="response"in xhr?xhr.response:xhr.responseText;resolve(new Response(body,options))};xhr.onerror=function(){reject(new TypeError("Network request failed"))};xhr.ontimeout=function(){reject(new TypeError("Network request failed"))};xhr.open(request.method,request.url,true);if(request.credentials==="include"){xhr.withCredentials=true}if("responseType"in xhr&&support.blob){xhr.responseType="blob"}request.headers.forEach(function(value,name){xhr.setRequestHeader(name,value)});xhr.send(typeof request._bodyInit==="undefined"?null:request._bodyInit)})};self.fetch.polyfill=true})(typeof self!=="undefined"?self:undefined);riot$1.tag2("comments",'
Your comment is too long!
',"","",function(opts){this.comments=[];this.maxlength=700;this.placeholder="Comment here!";this.focused=false;this.maxed="";this.warn=false;this.disabled="";this.loading=true;this.clearplaceholder=function(){if(!this.focused){this.update({placeholder:"",focused:true})}}.bind(this);this.checkplaceholder=function(){if(this.refs.textarea.value.trim().length==0){this.update({placeholder:"Comment here!",focused:false})}}.bind(this);this.closewarning=function(){this.update({warn:false})}.bind(this);this.echo=function(ev){if(this.refs.textarea.value.length>=maxlength){this.update({maxed:"maxinput",warn:true})}else{this.update({maxed:"",warn:false});window.setTimeout(this.closewarning,5e3)}}.bind(this);var self=this;this.getComments=function(pid){fetch("/blog/comments/"+pid).then(function(resp){return resp.text()}).then(function(body){self.update({comments:JSON.parse(body),loading:false})})}.bind(this);this.on("mount",function(){this.getComments(self.opts.pid)})});var _isPlaceholder$1=function _isPlaceholder(a){return a!=null&&typeof a==="object"&&a["@@functional/placeholder"]===true};var _isPlaceholder=_isPlaceholder$1;var _curry1$1=function _curry1(fn){return function f1(a){if(arguments.length===0||_isPlaceholder(a)){return f1}else{return fn.apply(this,arguments)}}};var _curry1=_curry1$1;var always$1=_curry1(function always(val){return function(){return val}});var always=always$1;var F=always(false);var always$3=always$1;var T=always$3(true);var __={"@@functional/placeholder":true};var _curry1$3=_curry1$1;var _isPlaceholder$3=_isPlaceholder$1;var _curry2$1=function _curry2(fn){return function f2(a,b){switch(arguments.length){case 0:return f2;case 1:return _isPlaceholder$3(a)?f2:_curry1$3(function(_b){return fn(a,_b)});default:return _isPlaceholder$3(a)&&_isPlaceholder$3(b)?f2:_isPlaceholder$3(a)?_curry1$3(function(_a){return fn(_a,b)}):_isPlaceholder$3(b)?_curry1$3(function(_b){return fn(a,_b)}):fn(a,b)}}};var _curry2=_curry2$1;var add=_curry2(function add(a,b){return Number(a)+Number(b)});var _concat$1=function _concat(set1,set2){set1=set1||[];set2=set2||[];var idx;var len1=set1.length;var len2=set2.length;var result=[];idx=0;while(idx=arguments$1.length)){result=received[combinedIdx]}else{result=arguments$1[argsIdx];argsIdx+=1}combined[combinedIdx]=result;if(!_isPlaceholder$4(result)){left-=1}combinedIdx+=1}return left<=0?fn.apply(this,combined):_arity$3(left,_curryN(length,combined,fn))}};var _arity=_arity$1;var _curry1$5=_curry1$1;var _curry2$3=_curry2$1;var _curryN=_curryN$1;var curryN$1=_curry2$3(function curryN(length,fn){if(length===1){return _curry1$5(fn)}return _arity(length,_curryN(length,[],fn))});var _concat=_concat$1;var _curry1$4=_curry1$1;var curryN=curryN$1;var addIndex=_curry1$4(function addIndex(fn){return curryN(fn.length,function(){var idx=0;var origFn=arguments[0];var list=arguments[arguments.length-1];var args=Array.prototype.slice.call(arguments,0);args[0]=function(){var result=origFn.apply(this,_concat(arguments,[idx,list]));idx+=1;return result};return fn.apply(this,args)})});var _curry1$6=_curry1$1;var _curry2$4=_curry2$1;var _isPlaceholder$5=_isPlaceholder$1;var _curry3$1=function _curry3(fn){return function f3(a,b,c){switch(arguments.length){case 0:return f3;case 1:return _isPlaceholder$5(a)?f3:_curry2$4(function(_b,_c){return fn(a,_b,_c)});case 2:return _isPlaceholder$5(a)&&_isPlaceholder$5(b)?f3:_isPlaceholder$5(a)?_curry2$4(function(_a,_c){return fn(_a,b,_c)}):_isPlaceholder$5(b)?_curry2$4(function(_b,_c){return fn(a,_b,_c)}):_curry1$6(function(_c){return fn(a,b,_c)});default:return _isPlaceholder$5(a)&&_isPlaceholder$5(b)&&_isPlaceholder$5(c)?f3:_isPlaceholder$5(a)&&_isPlaceholder$5(b)?_curry2$4(function(_a,_b){return fn(_a,_b,c)}):_isPlaceholder$5(a)&&_isPlaceholder$5(c)?_curry2$4(function(_a,_c){return fn(_a,b,_c)}):_isPlaceholder$5(b)&&_isPlaceholder$5(c)?_curry2$4(function(_b,_c){return fn(a,_b,_c)}):_isPlaceholder$5(a)?_curry1$6(function(_a){return fn(_a,b,c)}):_isPlaceholder$5(b)?_curry1$6(function(_b){return fn(a,_b,c)}):_isPlaceholder$5(c)?_curry1$6(function(_c){return fn(a,b,_c)}):fn(a,b,c)}}};var _concat$3=_concat$1;var _curry3=_curry3$1;var adjust=_curry3(function adjust(fn,idx,list){if(idx>=list.length||idx<-list.length){return list}var start=idx<0?list.length:0;var _idx=start+idx;var _list=_concat$3(list);_list[_idx]=fn(list[_idx]);return _list});var _isArray$1=Array.isArray||function _isArray(val){return val!=null&&val.length>=0&&Object.prototype.toString.call(val)==="[object Array]"};var _isTransformer$1=function _isTransformer(obj){return typeof obj["@@transducer/step"]==="function"};var _isArray=_isArray$1;var _isTransformer=_isTransformer$1;var _dispatchable$1=function _dispatchable(methodNames,xf,fn){return function(){if(arguments.length===0){return fn()}var args=Array.prototype.slice.call(arguments,0);var obj=args.pop();if(!_isArray(obj)){var idx=0;while(idxa?b:a});var _map$1=function _map(fn,functor){var idx=0;var len=functor.length;var result=Array(len);while(idx0){return x.hasOwnProperty(0)&&x.hasOwnProperty(x.length-1)}return false});var _xwrap=_xwrap$1;var bind=bind$1;var isArrayLike=isArrayLike$1;var _reduce$1=function(){function _arrayReduce(xf,acc,list){var idx=0;var len=list.length;while(idx=0){prop=nonEnumerableProps[nIdx];if(_has(prop,obj)&&!contains(ks,prop)){ks[ks.length]=prop}nIdx-=1}}return ks})}();var _curry2$9=_curry2$1;var _dispatchable$3=_dispatchable$1;var _map=_map$1;var _reduce=_reduce$1;var _xmap=_xmap$1;var curryN$4=curryN$1;var keys=keys$1;var map$1=_curry2$9(_dispatchable$3(["map"],_xmap,function map(fn,functor){switch(Object.prototype.toString.call(functor)){case"[object Function]":return curryN$4(functor.length,function(){return fn.call(this,functor.apply(this,arguments))});case"[object Object]":return _reduce(function(acc,key){acc[key]=fn(functor[key]);return acc},{},keys(functor));default:return _map(fn,functor)}}));var _curry2$12=_curry2$1;var prop$1=_curry2$12(function prop(p,obj){return obj[p]});var _curry2$8=_curry2$1;var map=map$1;var prop=prop$1;var pluck$1=_curry2$8(function pluck(p,list){return map(prop(p),list)});var _curry3$3=_curry3$1;var _reduce$3=_reduce$1;var reduce$1=_curry3$3(_reduce$3);var _curry1$7=_curry1$1;var curryN$3=curryN$1;var max=max$1;var pluck=pluck$1;var reduce=reduce$1;var allPass=_curry1$7(function allPass(preds){return curryN$3(reduce(max,0,pluck("length",preds)),function(){var arguments$1=arguments;var this$1=this;var idx=0;var len=preds.length;while(idx=0?limit:0);while(idxbb?1:0});var _curry3$5=_curry3$1;var assoc=_curry3$5(function assoc(prop,val,obj){var result={};for(var p in obj){result[p]=obj[p]}result[prop]=val;return result});var _isInteger$1=Number.isInteger||function _isInteger(n){return n<<0===n};var _curry3$6=_curry3$1;var _has$4=_has$1;var _isArray$4=_isArray$1;var _isInteger=_isInteger$1;var assoc$2=assoc;var assocPath=_curry3$6(function assocPath(path,val,obj){if(path.length===0){return val}var idx=path[0];if(path.length>1){var nextObj=_has$4(idx,obj)?obj[idx]:_isInteger(path[1])?[]:{};val=assocPath(Array.prototype.slice.call(path,1),val,nextObj)}if(_isInteger(idx)&&_isArray$4(obj)){var arr=[].concat(obj);arr[idx]=val;return arr}else{return assoc$2(idx,val,obj)}});var _curry2$21=_curry2$1;var nAry$1=_curry2$21(function nAry(n,fn){switch(n){case 0:return function(){return fn.call(this)};case 1:return function(a0){return fn.call(this,a0)};case 2:return function(a0,a1){return fn.call(this,a0,a1)};case 3:return function(a0,a1,a2){return fn.call(this,a0,a1,a2)};case 4:return function(a0,a1,a2,a3){return fn.call(this,a0,a1,a2,a3)};case 5:return function(a0,a1,a2,a3,a4){return fn.call(this,a0,a1,a2,a3,a4)};case 6:return function(a0,a1,a2,a3,a4,a5){return fn.call(this,a0,a1,a2,a3,a4,a5)};case 7:return function(a0,a1,a2,a3,a4,a5,a6){return fn.call(this,a0,a1,a2,a3,a4,a5,a6)};case 8:return function(a0,a1,a2,a3,a4,a5,a6,a7){return fn.call(this,a0,a1,a2,a3,a4,a5,a6,a7)};case 9:return function(a0,a1,a2,a3,a4,a5,a6,a7,a8){return fn.call(this,a0,a1,a2,a3,a4,a5,a6,a7,a8)};case 10:return function(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9){return fn.call(this,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9)};default:throw new Error("First argument to nAry must be a non-negative integer no greater than ten")}});var _curry1$13=_curry1$1;var nAry=nAry$1;var binary=_curry1$13(function binary(fn){return nAry(2,fn)});var _isFunction$1=function _isFunction(x){return Object.prototype.toString.call(x)==="[object Function]"};var _curry2$23=_curry2$1;var _reduce$5=_reduce$1;var ap$2=ap;var curryN$7=curryN$1;var map$5=map$1;var liftN$1=_curry2$23(function liftN(arity,fn){var lifted=curryN$7(arity,fn);return curryN$7(arity,function(){return _reduce$5(ap$2,map$5(lifted,arguments[0]),Array.prototype.slice.call(arguments,1))})});var _curry1$14=_curry1$1;var liftN=liftN$1;var lift$1=_curry1$14(function lift(fn){return liftN(fn.length,fn)});var _curry2$22=_curry2$1;var _isFunction=_isFunction$1;var and$2=and;var lift=lift$1;var both=_curry2$22(function both(f,g){return _isFunction(f)?function _both(){return f.apply(this,arguments)&&g.apply(this,arguments)}:lift(and$2)(f,g)});var _curry1$15=_curry1$1;var curryN$8=curryN$1;var curry$1=_curry1$15(function curry(fn){return curryN$8(fn.length,fn)});var curry=curry$1;var call=curry(function call(fn){return fn.apply(this,Array.prototype.slice.call(arguments,1))});var isArrayLike$3=isArrayLike$1;var _makeFlat$1=function _makeFlat(recursive){return function flatt(list){var value,jlen,j;var result=[];var idx=0;var ilen=list.length;while(idxmax){throw new Error("min must not be greater than max in clamp(min, max, value)")}return valuemax?max:value});var _cloneRegExp$1=function _cloneRegExp(pattern){return new RegExp(pattern.source,(pattern.global?"g":"")+(pattern.ignoreCase?"i":"")+(pattern.multiline?"m":"")+(pattern.sticky?"y":"")+(pattern.unicode?"u":""))};var _curry1$17=_curry1$1;var type$1=_curry1$17(function type(val){return val===null?"Null":val===undefined?"Undefined":Object.prototype.toString.call(val).slice(8,-1)});var _cloneRegExp=_cloneRegExp$1;var type=type$1;var _clone$1=function _clone(value,refFrom,refTo,deep){var copy=function copy(copiedValue){var len=refFrom.length;var idx=0;while(idx=0){if(stackA[idx]===a){return stackB[idx]===b}idx-=1}stackA.push(a);stackB.push(b);idx=keysA.length-1;while(idx>=0){var key=keysA[idx];if(!(_has$5(key,b)&&_equals(b[key],a[key],stackA,stackB))){return false}idx-=1}stackA.pop();stackB.pop();return true};var _curry2$27=_curry2$1;var _equals=_equals$1;var equals$1=_curry2$27(function equals(a,b){return _equals(a,b,[],[])});var equals=equals$1;var _indexOf$1=function _indexOf(list,a,idx){var inf,item;if(typeof list.indexOf==="function"){switch(typeof a){case"number":if(a===0){inf=1/a;while(idx=0};var _quote$1=function _quote(s){var escaped=s.replace(/\\/g,"\\\\").replace(/[\b]/g,"\\b").replace(/\f/g,"\\f").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/\0/g,"\\0");return'"'+escaped.replace(/"/g,'\\"')+'"'};var _toISOString$1=function(){var pad=function pad(n){return(n<10?"0":"")+n};return typeof Date.prototype.toISOString==="function"?function _toISOString(d){return d.toISOString()}:function _toISOString(d){return d.getUTCFullYear()+"-"+pad(d.getUTCMonth()+1)+"-"+pad(d.getUTCDate())+"T"+pad(d.getUTCHours())+":"+pad(d.getUTCMinutes())+":"+pad(d.getUTCSeconds())+"."+(d.getUTCMilliseconds()/1e3).toFixed(3).slice(2,5)+"Z"}}();var _complement$1=function _complement(f){return function(){return!f.apply(this,arguments)}};var _filter$1=function _filter(fn,list){var idx=0;var len=list.length;var result=[];while(idx":_toString(y,xs)};var mapPairs=function(obj,keys){return _map$3(function(k){return _quote(k)+": "+recur(obj[k])},keys.slice().sort())};switch(Object.prototype.toString.call(x)){case"[object Arguments]":return"(function() { return arguments; }("+_map$3(recur,x).join(", ")+"))";case"[object Array]":return"["+_map$3(recur,x).concat(mapPairs(x,reject(function(k){return/^\d+$/.test(k)},keys$4(x)))).join(", ")+"]";case"[object Boolean]":return typeof x==="object"?"new Boolean("+recur(x.valueOf())+")":x.toString();case"[object Date]":return"new Date("+(isNaN(x.valueOf())?recur(NaN):_quote(_toISOString(x)))+")";case"[object Null]":return"null";case"[object Number]":return typeof x==="object"?"new Number("+recur(x.valueOf())+")":1/x===-Infinity?"-0":x.toString(10);case"[object String]":return typeof x==="object"?"new String("+recur(x.valueOf())+")":_quote(x);case"[object Undefined]":return"undefined";default:if(typeof x.toString==="function"){var repr=x.toString();if(repr!=="[object Object]"){return repr}}return"{"+mapPairs(x,keys$4(x)).join(", ")+"}"}};var _curry1$22=_curry1$1;var _toString=_toString$1;var toString_1=_curry1$22(function toString(val){return _toString(val,[])});var _curry2$26=_curry2$1;var _isArray$6=_isArray$1;var _isFunction$3=_isFunction$1;var toString=toString_1;var concat=_curry2$26(function concat(a,b){if(a==null||!_isFunction$3(a.concat)){throw new TypeError(toString(a)+' does not have a method named "concat"')}if(_isArray$6(a)&&!_isArray$6(b)){throw new TypeError(toString(b)+" is not an array")}return a.concat(b)});var _arity$7=_arity$1;var _curry1$23=_curry1$1;var map$9=map$1;var max$5=max$1;var reduce$7=reduce$1;var cond=_curry1$23(function cond(pairs){var arity=reduce$7(max$5,0,map$9(function(pair){return pair[0].length},pairs));return _arity$7(arity,function(){var arguments$1=arguments;var this$1=this;var idx=0;while(idx10){throw new Error("Constructor with greater than ten arguments")}if(n===0){return function(){return new Fn}}return curry$3(nAry$3(n,function($0,$1,$2,$3,$4,$5,$6,$7,$8,$9){switch(arguments.length){case 1:return new Fn($0);case 2:return new Fn($0,$1);case 3:return new Fn($0,$1,$2);case 4:return new Fn($0,$1,$2,$3);case 5:return new Fn($0,$1,$2,$3,$4);case 6:return new Fn($0,$1,$2,$3,$4,$5);case 7:return new Fn($0,$1,$2,$3,$4,$5,$6);case 8:return new Fn($0,$1,$2,$3,$4,$5,$6,$7);case 9:return new Fn($0,$1,$2,$3,$4,$5,$6,$7,$8);case 10:return new Fn($0,$1,$2,$3,$4,$5,$6,$7,$8,$9)}}))});var _curry1$24=_curry1$1;var constructN=constructN$1;var construct=_curry1$24(function construct(Fn){return constructN(Fn.length,Fn)});var _contains$3=_contains$1;var _curry2$33=_curry2$1;var contains$1=_curry2$33(_contains$3);var _curry2$34=_curry2$1;var _map$4=_map$1;var curryN$9=curryN$1;var max$6=max$1;var pluck$5=pluck$1;var reduce$8=reduce$1;var converge=_curry2$34(function converge(after,fns){return curryN$9(reduce$8(max$6,0,pluck$5("length",fns)),function(){var args=arguments;var context=this;return after.apply(context,_map$4(function(fn){return fn.apply(context,args)},fns))})});var _curryN$4=_curryN$1;var _has$7=_has$1;var _xfBase$8=_xfBase$1;var _xreduceBy$1=function(){function XReduceBy(valueFn,valueAcc,keyFn,xf){this.valueFn=valueFn;this.valueAcc=valueAcc;this.keyFn=keyFn;this.xf=xf;this.inputs={}}XReduceBy.prototype["@@transducer/init"]=_xfBase$8.init;XReduceBy.prototype["@@transducer/result"]=function(result){var this$1=this;var key;for(key in this$1.inputs){if(_has$7(key,this$1.inputs)){result=this$1.xf["@@transducer/step"](result,this$1.inputs[key]);if(result["@@transducer/reduced"]){result=result["@@transducer/value"];break}}}this.inputs=null;return this.xf["@@transducer/result"](result)};XReduceBy.prototype["@@transducer/step"]=function(result,input){var key=this.keyFn(input);this.inputs[key]=this.inputs[key]||[key,this.valueAcc];this.inputs[key][1]=this.valueFn(this.inputs[key][1],input);return result};return _curryN$4(4,[],function _xreduceBy(valueFn,valueAcc,keyFn,xf){return new XReduceBy(valueFn,valueAcc,keyFn,xf)})}();var _curryN$3=_curryN$1;var _dispatchable$8=_dispatchable$1;var _has$6=_has$1;var _reduce$8=_reduce$1;var _xreduceBy=_xreduceBy$1;var reduceBy$1=_curryN$3(4,[],_dispatchable$8([],_xreduceBy,function reduceBy(valueFn,valueAcc,keyFn,list){return _reduce$8(function(acc,elt){var key=keyFn(elt);acc[key]=valueFn(_has$6(key,acc)?acc[key]:valueAcc,elt);return acc},{},list)}));var reduceBy=reduceBy$1;var countBy=reduceBy(function(acc,elem){return acc+1},0);var add$2=add;var dec=add$2(-1);var _curry3$9=_curry3$1;var descend=_curry3$9(function descend(fn,a,b){var aa=fn(a);var bb=fn(b);return aa>bb?-1:aa0){this.n-=1;return result}return this.xf["@@transducer/step"](result,input)};return _curry2$41(function _xdrop(n,xf){return new XDrop(n,xf)})}();var _curry2$40=_curry2$1;var _dispatchable$9=_dispatchable$1;var _xdrop=_xdrop$1;var slice$3=slice$1;var drop=_curry2$40(_dispatchable$9(["drop"],_xdrop,function drop(n,xs){return slice$3(Math.max(0,n),Infinity,xs)}));var _curry2$44=_curry2$1;var _reduced$4=_reduced$1;var _xfBase$10=_xfBase$1;var _xtake$1=function(){function XTake(n,xf){this.xf=xf;this.n=n;this.i=0}XTake.prototype["@@transducer/init"]=_xfBase$10.init;XTake.prototype["@@transducer/result"]=_xfBase$10.result;XTake.prototype["@@transducer/step"]=function(result,input){this.i+=1;var ret=this.n===0?result:this.xf["@@transducer/step"](result,input);return this.i>=this.n?_reduced$4(ret):ret};return _curry2$44(function _xtake(n,xf){return new XTake(n,xf)})}();var _curry2$43=_curry2$1;var _dispatchable$11=_dispatchable$1;var _xtake=_xtake$1;var slice$4=slice$1;var take$1=_curry2$43(_dispatchable$11(["take"],_xtake,function take(n,xs){return slice$4(0,n<0?Infinity:n,xs)}));var take=take$1;var _dropLast$1=function dropLast(n,xs){return take(n=0&&pred(list[idx])){idx-=1}return Array.prototype.slice.call(list,0,idx+1)};var _curry2$47=_curry2$1;var _reduce$9=_reduce$1;var _xfBase$12=_xfBase$1;var _xdropLastWhile$1=function(){function XDropLastWhile(fn,xf){this.f=fn;this.retained=[];this.xf=xf}XDropLastWhile.prototype["@@transducer/init"]=_xfBase$12.init;XDropLastWhile.prototype["@@transducer/result"]=function(result){this.retained=null;return this.xf["@@transducer/result"](result)};XDropLastWhile.prototype["@@transducer/step"]=function(result,input){return this.f(input)?this.retain(result,input):this.flush(result,input)};XDropLastWhile.prototype.flush=function(result,input){result=_reduce$9(this.xf["@@transducer/step"],result,this.retained);this.retained=[];return this.xf["@@transducer/step"](result,input)};XDropLastWhile.prototype.retain=function(result,input){this.retained.push(input);return result};return _curry2$47(function _xdropLastWhile(fn,xf){return new XDropLastWhile(fn,xf)})}();var _curry2$46=_curry2$1;var _dispatchable$12=_dispatchable$1;var _dropLastWhile=_dropLastWhile$1;var _xdropLastWhile=_xdropLastWhile$1;var dropLastWhile=_curry2$46(_dispatchable$12([],_xdropLastWhile,_dropLastWhile));var _curry2$48=_curry2$1;var _xfBase$13=_xfBase$1;var _xdropRepeatsWith$1=function(){function XDropRepeatsWith(pred,xf){this.xf=xf;this.pred=pred;this.lastValue=undefined;this.seenFirstValue=false}XDropRepeatsWith.prototype["@@transducer/init"]=_xfBase$13.init;XDropRepeatsWith.prototype["@@transducer/result"]=_xfBase$13.result;XDropRepeatsWith.prototype["@@transducer/step"]=function(result,input){var sameAsLast=false;if(!this.seenFirstValue){this.seenFirstValue=true}else if(this.pred(this.lastValue,input)){sameAsLast=true}this.lastValue=input;return sameAsLast?result:this.xf["@@transducer/step"](result,input)};return _curry2$48(function _xdropRepeatsWith(pred,xf){return new XDropRepeatsWith(pred,xf)})}();var _curry2$50=_curry2$1;var _isString$4=_isString$1;var nth$1=_curry2$50(function nth(offset,list){var idx=offset<0?list.length+offset:offset;return _isString$4(list)?list.charAt(idx):list[idx]});var nth=nth$1;var last$1=nth(-1);var _curry2$49=_curry2$1;var _dispatchable$14=_dispatchable$1;var _xdropRepeatsWith$3=_xdropRepeatsWith$1;var last=last$1;var dropRepeatsWith$1=_curry2$49(_dispatchable$14([],_xdropRepeatsWith$3,function dropRepeatsWith(pred,list){var result=[];var idx=1;var len=list.length;if(len!==0){result[0]=list[0];while(idx=0){if(fn(list[idx])){return list[idx]}idx-=1}}));var _curry2$63=_curry2$1;var _xfBase$18=_xfBase$1;var _xfindLastIndex$1=function(){function XFindLastIndex(f,xf){this.xf=xf;this.f=f;this.idx=-1;this.lastIdx=-1}XFindLastIndex.prototype["@@transducer/init"]=_xfBase$18.init;XFindLastIndex.prototype["@@transducer/result"]=function(result){return this.xf["@@transducer/result"](this.xf["@@transducer/step"](result,this.lastIdx))};XFindLastIndex.prototype["@@transducer/step"]=function(result,input){this.idx+=1;if(this.f(input)){ -this.lastIdx=this.idx}return result};return _curry2$63(function _xfindLastIndex(f,xf){return new XFindLastIndex(f,xf)})}();var _curry2$62=_curry2$1;var _dispatchable$19=_dispatchable$1;var _xfindLastIndex=_xfindLastIndex$1;var findLastIndex=_curry2$62(_dispatchable$19([],_xfindLastIndex,function findLastIndex(fn,list){var idx=list.length-1;while(idx>=0){if(fn(list[idx])){return idx}idx-=1}return-1}));var _curry1$27=_curry1$1;var _makeFlat$3=_makeFlat$1;var flatten=_curry1$27(_makeFlat$3(true));var _curry1$28=_curry1$1;var curry$4=curry$1;var flip=_curry1$28(function flip(fn){return curry$4(function(a,b){var args=Array.prototype.slice.call(arguments,0);args[0]=b;args[1]=a;return fn.apply(this,args)})});var _checkForMethod$4=_checkForMethod$1;var _curry2$64=_curry2$1;var forEach=_curry2$64(_checkForMethod$4("forEach",function forEach(fn,list){var len=list.length;var idx=0;while(idxb});var _curry2$69=_curry2$1;var gte=_curry2$69(function gte(a,b){return a>=b});var _curry2$70=_curry2$1;var _has$8=_has$1;var has=_curry2$70(_has$8);var _curry2$71=_curry2$1;var hasIn=_curry2$71(function hasIn(prop,obj){return prop in obj});var nth$3=nth$1;var head=nth$3(0);var _identity$1=function _identity(x){return x};var _curry1$30=_curry1$1;var _identity=_identity$1;var identity=_curry1$30(_identity);var _curry3$13=_curry3$1;var curryN$10=curryN$1;var ifElse=_curry3$13(function ifElse(condition,onTrue,onFalse){return curryN$10(Math.max(condition.length,onTrue.length,onFalse.length),function _ifElse(){return condition.apply(this,arguments)?onTrue.apply(this,arguments):onFalse.apply(this,arguments)})});var add$3=add;var inc=add$3(1);var reduceBy$4=reduceBy$1;var indexBy=reduceBy$4(function(acc,elem){return elem},null);var _curry2$72=_curry2$1;var _indexOf$3=_indexOf$1;var _isArray$8=_isArray$1;var indexOf=_curry2$72(function indexOf(target,xs){return typeof xs.indexOf==="function"&&!_isArray$8(xs)?xs.indexOf(target):_indexOf$3(xs,target,0)});var slice$5=slice$1;var init=slice$5(0,-1);var _curry3$14=_curry3$1;var insert$1=_curry3$14(function insert(idx,elt,list){idx=idx=0?idx:list.length;var result=Array.prototype.slice.call(list,0);result.splice(idx,0,elt);return result});var _curry3$15=_curry3$1;var insertAll=_curry3$15(function insertAll(idx,elts,list){idx=idx=0?idx:list.length;return[].concat(Array.prototype.slice.call(list,0,idx),elts,Array.prototype.slice.call(list,idx))});var _contains$6=_contains$1;var _Set$1=function(){function _Set(){this._nativeSet=typeof Set==="function"?new Set:null;this._items={}}_Set.prototype.add=function(item){return!hasOrAdd(item,true,this)};_Set.prototype.has=function(item){return hasOrAdd(item,false,this)};function hasOrAdd(item,shouldAdd,set){var type=typeof item;var prevSize,newSize;switch(type){case"string":case"number":if(item===0&&1/item===-Infinity){if(set._items["-0"]){return true}else{if(shouldAdd){set._items["-0"]=true}return false}}if(set._nativeSet!==null){if(shouldAdd){prevSize=set._nativeSet.size;set._nativeSet.add(item);newSize=set._nativeSet.size;return newSize===prevSize}else{return set._nativeSet.has(item)}}else{if(!(type in set._items)){if(shouldAdd){set._items[type]={};set._items[type][item]=true}return false}else if(item in set._items[type]){return true}else{if(shouldAdd){set._items[type][item]=true}return false}}case"boolean":if(type in set._items){var bIdx=item?1:0;if(set._items[type][bIdx]){return true}else{if(shouldAdd){set._items[type][bIdx]=true}return false}}else{if(shouldAdd){set._items[type]=item?[false,true]:[true,false]}return false}case"function":if(set._nativeSet!==null){if(shouldAdd){prevSize=set._nativeSet.size;set._nativeSet.add(item);newSize=set._nativeSet.size;return newSize===prevSize}else{return set._nativeSet.has(item)}}else{if(!(type in set._items)){if(shouldAdd){set._items[type]=[item]}return false}if(!_contains$6(item,set._items[type])){if(shouldAdd){set._items[type].push(item)}return false}return true}case"undefined":if(set._items[type]){return true}else{if(shouldAdd){set._items[type]=true}return false}case"object":if(item===null){if(!set._items["null"]){if(shouldAdd){set._items["null"]=true}return false}return true}default:type=Object.prototype.toString.call(item);if(!(type in set._items)){if(shouldAdd){set._items[type]=[item]}return false}if(!_contains$6(item,set._items[type])){if(shouldAdd){set._items[type].push(item)}return false}return true}}return _Set}();var _Set=_Set$1;var _curry2$74=_curry2$1;var uniqBy$1=_curry2$74(function uniqBy(fn,list){var set=new _Set;var result=[];var idx=0;var appliedItem,item;while(idxlist2.length){lookupList=list1;filteredList=list2}else{lookupList=list2;filteredList=list1}return uniq(_filter$3(flip$2(_contains$5)(lookupList),filteredList))});var _containsWith$4=_containsWith$1;var _curry2$75=_curry2$1;var uniqWith$1=_curry2$75(function uniqWith(pred,list){var idx=0;var len=list.length;var result=[];var item;while(idxlist2.length){lookupList=list1;filteredList=list2}else{lookupList=list2;filteredList=list1}var results=[];var idx=0;while(idx=0){if(equals$7(xs[idx],target)){return idx}idx-=1}return-1}});var _isNumber$1=function _isNumber(x){return Object.prototype.toString.call(x)==="[object Number]"};var _curry1$37=_curry1$1;var _isNumber=_isNumber$1;var length=_curry1$37(function length(list){return list!=null&&_isNumber(list.length)?list.length:NaN});var _curry2$81=_curry2$1;var map$10=map$1;var lens=_curry2$81(function lens(getter,setter){return function(toFunctorFn){return function(target){return map$10(function(focus){return setter(focus,target)},toFunctorFn(getter(target)))}}});var _curry3$18=_curry3$1;var adjust$2=adjust;var always$4=always$1;var update$3=_curry3$18(function update(idx,x,list){return adjust$2(always$4(x),idx,list)});var _curry1$38=_curry1$1;var lens$2=lens;var nth$4=nth$1;var update$2=update$3;var lensIndex=_curry1$38(function lensIndex(n){return lens$2(nth$4(n),update$2(n))});var _curry2$82=_curry2$1;var path$1=_curry2$82(function path(paths,obj){var val=obj;var idx=0;while(idx=0){tuple=fn(list[idx],tuple[0]);result[idx]=tuple[1];idx-=1}return[result,tuple[0]]});var _curry2$85=_curry2$1;var _reduce$11=_reduce$1;var keys$10=keys$1;var mapObjIndexed=_curry2$85(function mapObjIndexed(fn,obj){return _reduce$11(function(acc,key){acc[key]=fn(obj[key],key,obj);return acc},{},keys$10(obj))});var _curry2$86=_curry2$1;var match=_curry2$86(function match(rx,str){return str.match(rx)||[]});var _curry2$87=_curry2$1;var _isInteger$3=_isInteger$1;var mathMod=_curry2$87(function mathMod(m,p){if(!_isInteger$3(m)){return NaN}if(!_isInteger$3(p)||p<1){return NaN}return(m%p+p)%p});var _curry3$21=_curry3$1;var maxBy=_curry3$21(function maxBy(f,a,b){return f(b)>f(a)?b:a});var add$4=add;var reduce$9=reduce$1;var sum$1=reduce$9(add$4,0);var _curry1$41=_curry1$1;var sum=sum$1;var mean=_curry1$41(function mean(list){return sum(list)/list.length});var _curry1$42=_curry1$1;var mean$2=mean;var median=_curry1$42(function median(list){var len=list.length;if(len===0){return NaN}var width=2-len%2;var idx=(len-width)/2;return mean$2(Array.prototype.slice.call(list,0).sort(function(a,b){return ab?1:0}).slice(idx,idx+width))});var _arity$8=_arity$1;var _curry1$43=_curry1$1;var _has$11=_has$1;var toString$2=toString_1;var memoize=_curry1$43(function memoize(fn){var cache={};return _arity$8(fn.length,function(){var key=toString$2(arguments);if(!_has$11(key,cache)){cache[key]=fn.apply(this,arguments)}return cache[key]})});var _assign$3=_assign$1;var _curry2$88=_curry2$1;var merge=_curry2$88(function merge(l,r){return _assign$3({},l,r)});var _assign$4=_assign$1;var _curry1$44=_curry1$1;var mergeAll=_curry1$44(function mergeAll(list){return _assign$4.apply(null,[{}].concat(list))});var _curry3$23=_curry3$1;var _has$12=_has$1;var mergeWithKey$1=_curry3$23(function mergeWithKey(fn,l,r){var result={};var k;for(k in l){if(_has$12(k,l)){result[k]=_has$12(k,r)?fn(k,l[k],r[k]):l[k]}}for(k in r){if(_has$12(k,r)&&!_has$12(k,result)){result[k]=r[k]}}return result});var _curry3$22=_curry3$1;var mergeWithKey=mergeWithKey$1;var mergeWith=_curry3$22(function mergeWith(fn,l,r){return mergeWithKey(function(_,_l,_r){return fn(_l,_r)},l,r)});var _curry2$89=_curry2$1;var min=_curry2$89(function min(a,b){return b0&&pred(path$5(propPath,obj))});var _curry2$96=_curry2$1;var pick=_curry2$96(function pick(names,obj){var result={};var idx=0;while(idx=0){acc=fn(list[idx],acc);idx-=1}return acc});var _curryN$5=_curryN$1;var _reduce$12=_reduce$1;var _reduced$7=_reduced$1;var reduceWhile=_curryN$5(4,[],function _reduceWhile(pred,fn,a,list){return _reduce$12(function(acc,x){return pred(acc,x)?fn(acc,x):_reduced$7(acc)},a,list)});var _curry1$49=_curry1$1;var _reduced$8=_reduced$1;var reduced=_curry1$49(_reduced$8);var _curry3$34=_curry3$1;var remove$1=_curry3$34(function remove(start,count,list){var result=Array.prototype.slice.call(list,0);result.splice(start,count);return result});var _curry2$104=_curry2$1;var times$1=_curry2$104(function times(fn,n){var len=Number(n);var idx=0;var list;if(len<0||isNaN(len)){throw new RangeError("n must be a non-negative number")}list=new Array(len);while(idxbb?1:0})});var _curry2$108=_curry2$1;var sortWith=_curry2$108(function sortWith(fns,list){return Array.prototype.slice.call(list,0).sort(function(a,b){var result=0;var i=0;while(result===0&&i=0?xs.length-n:0,xs)});var _curry2$115=_curry2$1;var takeLastWhile=_curry2$115(function takeLastWhile(fn,list){var idx=list.length-1;while(idx>=0&&fn(list[idx])){idx-=1}return Array.prototype.slice.call(list,idx+1)});var _curry2$117=_curry2$1;var _reduced$9=_reduced$1;var _xfBase$19=_xfBase$1;var _xtakeWhile$1=function(){function XTakeWhile(f,xf){this.xf=xf;this.f=f}XTakeWhile.prototype["@@transducer/init"]=_xfBase$19.init;XTakeWhile.prototype["@@transducer/result"]=_xfBase$19.result;XTakeWhile.prototype["@@transducer/step"]=function(result,input){return this.f(input)?this.xf["@@transducer/step"](result,input):_reduced$9(result)};return _curry2$117(function _xtakeWhile(f,xf){return new XTakeWhile(f,xf)})}();var _curry2$116=_curry2$1;var _dispatchable$21=_dispatchable$1;var _xtakeWhile=_xtakeWhile$1;var takeWhile=_curry2$116(_dispatchable$21(["takeWhile"],_xtakeWhile,function takeWhile(fn,list){var idx=0;var len=list.length;while(idx

{title} by {author}

{R.join(⁗ ⁗)(R.repeat(text, 20))}
',"","",function(opts){this.R=index});riot$1.tag2("bbutton",'',"","",function(opts){});var RE_ORIGIN=/^.+?\/\/+[^\/]+/;var EVENT_LISTENER="EventListener";var REMOVE_EVENT_LISTENER="remove"+EVENT_LISTENER;var ADD_EVENT_LISTENER="add"+EVENT_LISTENER;var HAS_ATTRIBUTE="hasAttribute";var POPSTATE="popstate";var HASHCHANGE="hashchange";var TRIGGER="trigger";var MAX_EMIT_STACK_LEVEL=3;var win=typeof window!="undefined"&&window;var doc=typeof document!="undefined"&&document;var hist=win&&history;var loc=win&&(hist.location||win.location);var prot=Router.prototype;var clickEvent=doc&&doc.ontouchstart?"touchstart":"click";var central=observable$1();var started=false;var routeFound=false;var debouncedEmit;var base;var current;var parser;var secondParser;var emitStack=[];var emitStackLevel=0;function DEFAULT_PARSER(path){return path.split(/[\/?#]/)}function DEFAULT_SECOND_PARSER(path,filter){var f=filter.replace(/\?/g,"\\?").replace(/\*/g,"([^/?#]+?)").replace(/\.\./,".*");var re=new RegExp("^"+f+"$");var args=path.match(re);if(args){return args.slice(1)}}function debounce(fn,delay){var t;return function(){clearTimeout(t);t=setTimeout(fn,delay)}}function start(autoExec){debouncedEmit=debounce(emit,1);win[ADD_EVENT_LISTENER](POPSTATE,debouncedEmit);win[ADD_EVENT_LISTENER](HASHCHANGE,debouncedEmit);doc[ADD_EVENT_LISTENER](clickEvent,click);if(autoExec){emit(true)}}function Router(){this.$=[];observable$1(this);central.on("stop",this.s.bind(this));central.on("emit",this.e.bind(this))}function normalize(path){return path.replace(/^\/|\/$/,"")}function isString$1(str){return typeof str=="string"}function getPathFromRoot(href){return(href||loc.href).replace(RE_ORIGIN,"")}function getPathFromBase(href){return base[0]==="#"?(href||loc.href||"").split(base)[1]||"":(loc?getPathFromRoot(href):href||"").replace(base,"")}function emit(force){var isRoot=emitStackLevel===0;if(MAX_EMIT_STACK_LEVEL<=emitStackLevel){return}emitStackLevel++;emitStack.push(function(){var path=getPathFromBase();if(force||path!==current){central[TRIGGER]("emit",path);current=path}});if(isRoot){var first;while(first=emitStack.shift()){first()}emitStackLevel=0}}function click(e){if(e.which!==1||e.metaKey||e.ctrlKey||e.shiftKey||e.defaultPrevented){return}var el=e.target;while(el&&el.nodeName!=="A"){el=el.parentNode}if(!el||el.nodeName!=="A"||el[HAS_ATTRIBUTE]("download")||!el[HAS_ATTRIBUTE]("href")||el.target&&el.target!=="_self"||el.href.indexOf(loc.href.match(RE_ORIGIN)[0])===-1){return}if(el.href!==loc.href&&(el.href.split("#")[0]===loc.href.split("#")[0]||base[0]!=="#"&&getPathFromRoot(el.href).indexOf(base)!==0||base[0]==="#"&&el.href.split(base)[0]!==loc.href.split(base)[0]||!go(getPathFromBase(el.href),el.title||doc.title))){return}e.preventDefault()}function go(path,title,shouldReplace){if(!hist){return central[TRIGGER]("emit",getPathFromBase(path))}path=base+normalize(path);title=title||doc.title;shouldReplace?hist.replaceState(null,title,path):hist.pushState(null,title,path);doc.title=title;routeFound=false;emit();return routeFound}prot.m=function(first,second,third){if(isString$1(first)&&(!second||isString$1(second))){go(first,second,third||false)}else if(second){this.r(first,second)}else{this.r("@",first)}};prot.s=function(){this.off("*");this.$=[]};prot.e=function(path){this.$.concat("@").some(function(filter){var args=(filter==="@"?parser:secondParser)(normalize(path),normalize(filter));if(typeof args!="undefined"){this[TRIGGER].apply(null,[filter].concat(args));return routeFound=true}},this)};prot.r=function(filter,action){if(filter!=="@"){filter="/"+normalize(filter);this.$.push(filter)}this.on(filter,action)};var mainRouter=new Router;var route=mainRouter.m.bind(mainRouter);route.create=function(){var newSubRouter=new Router;var router=newSubRouter.m.bind(newSubRouter);router.stop=newSubRouter.s.bind(newSubRouter);return router};route.base=function(arg){base=arg||"#";current=getPathFromBase()};route.exec=function(){emit(true)};route.parser=function(fn,fn2){if(!fn&&!fn2){parser=DEFAULT_PARSER;secondParser=DEFAULT_SECOND_PARSER}if(fn){parser=fn}if(fn2){secondParser=fn2}};route.query=function(){var q={};var href=loc.href||current;href.replace(/[?&](.+?)=([^&]*)/g,function(_,k,v){q[k]=v});return q};route.stop=function(){if(started){if(win){win[REMOVE_EVENT_LISTENER](POPSTATE,debouncedEmit);win[REMOVE_EVENT_LISTENER](HASHCHANGE,debouncedEmit);doc[REMOVE_EVENT_LISTENER](clickEvent,click)}central[TRIGGER]("stop");started=false}};route.start=function(autoExec){if(!started){if(win){if(document.readyState==="complete"){start(autoExec)}else{win[ADD_EVENT_LISTENER]("load",function(){setTimeout(function(){start(autoExec)},1)})}}started=true}};route.base();route.parser();riot$1.tag2("post",'

No More Posts!

{opts.title}

By {opts.creator}

{content}

',"","",function(opts){var self=this;this.loading=false;this.prevloading="";this.nextloading="";this.nomore=false;this.pid=1;content="";this.prev=function(){if(self.prevloading||self.nextloading){return}self.prevloading=" loading";if(self.nomore){self.nomore=false}if(self.pid>1){self.pid--;self.setPost(self.pid);self.update()}}.bind(this);this.next=function(){if(self.nextloading||self.prevloading){return}self.nextloading=" loading";console.log(self.pid);console.log(self.nomore);if(!self.nomore){self.pid++;self.setPost(self.pid);self.update()}}.bind(this);this.setPost=function(pid){self.update();self.loading=true;fetch("/blog/switchpost/"+pid).then(function(resp){return resp.text()}).then(function(body){if(body==="false"){self.nomore=true;route("/");self.update()}else{self.content=index.join(" ")(index.repeat(body,20));route("/"+pid)}self.loading=false;self.prevloading="";self.nextloading="";self.update()})};this.on("mount",function(){this.setPost(self.pid)})});riot$1.tag2("posts","","","",function(opts){});riot$1.mount("post",{creator:"wes",title:"A cool post here"});riot$1.mount("comments");riot$1.mount("bbutton")})(); \ No newline at end of file +each(props,function(key){if(!contains(propsBlacklist,key)){var descriptor=Object.getOwnPropertyDescriptor(instance,key)||Object.getOwnPropertyDescriptor(proto,key);var hasGetterSetter=descriptor&&(descriptor.get||descriptor.set);if(!this$1.hasOwnProperty(key)&&hasGetterSetter){Object.defineProperty(this$1,key,descriptor)}else{this$1[key]=isFunction(instance[key])?instance[key].bind(this$1):instance[key]}}});if(instance.init){instance.init.bind(this$1)()}});return this}.bind(this));defineProperty(this,"mount",function tagMount(){var this$1=this;root._tag=this;parseAttributes.apply(parent,[root,root.attributes,function(attr,expr){if(!isAnonymous&&RefExpr.isPrototypeOf(expr)){expr.tag=this$1}attr.expr=expr;instAttrs.push(attr)}]);implAttrs=[];walkAttrs(impl.attrs,function(k,v){implAttrs.push({name:k,value:v})});parseAttributes.apply(this,[root,implAttrs,function(attr,expr){if(expr){expressions.push(expr)}else{setAttr(root,attr.name,attr.value)}}]);updateOpts.apply(this,[isLoop,parent,isAnonymous,opts,instAttrs]);var globalMixin=mixin$1(GLOBAL_MIXIN);if(globalMixin&&!skipAnonymous){for(var i in globalMixin){if(globalMixin.hasOwnProperty(i)){this$1.mixin(globalMixin[i])}}}if(impl.fn){impl.fn.call(this,opts)}if(!skipAnonymous){this.trigger("before-mount")}parseExpressions.apply(this,[dom,expressions,isAnonymous]);this.update(item);if(!isAnonymous&&!isInline){while(dom.firstChild){root.appendChild(dom.firstChild)}}defineProperty(this,"root",root);defineProperty(this,"isMounted",true);if(skipAnonymous){return}if(!this.parent){this.trigger("mount")}else{var p=getImmediateCustomParentTag(this.parent);p.one(!p.isMounted?"mount":"updated",function(){this$1.trigger("mount")})}return this}.bind(this));defineProperty(this,"unmount",function tagUnmount(mustKeepRoot){var this$1=this;var el=this.root,p=el.parentNode,ptag,tagIndex=__TAGS_CACHE.indexOf(this);if(!skipAnonymous){this.trigger("before-unmount")}walkAttrs(impl.attrs,function(name){if(startsWith(name,ATTRS_PREFIX)){name=name.slice(ATTRS_PREFIX.length)}remAttr(root,name)});this.__.listeners.forEach(function(dom){Object.keys(dom[RIOT_EVENTS_KEY]).forEach(function(eventName){dom.removeEventListener(eventName,dom[RIOT_EVENTS_KEY][eventName])})});if(tagIndex!==-1){__TAGS_CACHE.splice(tagIndex,1)}if(p||isVirtual){if(parent){ptag=getImmediateCustomParentTag(parent);if(isVirtual){Object.keys(this.tags).forEach(function(tagName){arrayishRemove(ptag.tags,tagName,this$1.tags[tagName])})}else{arrayishRemove(ptag.tags,tagName,this);if(parent!==ptag){arrayishRemove(parent.tags,tagName,this)}}}else{setInnerHTML(el,"")}if(p&&!mustKeepRoot){p.removeChild(el)}}if(this.__.virts){each(this.__.virts,function(v){if(v.parentNode){v.parentNode.removeChild(v)}})}unmountAll(expressions);each(instAttrs,function(a){return a.expr&&a.expr.unmount&&a.expr.unmount()});if(this.__.onUnmount){this.__.onUnmount()}if(!skipAnonymous){this.trigger("unmount");this.off("*")}defineProperty(this,"isMounted",false);delete this.root._tag;return this}.bind(this))}function getTag(dom){return dom.tagName&&__TAG_IMPL[getAttr(dom,IS_DIRECTIVE)||getAttr(dom,IS_DIRECTIVE)||dom.tagName.toLowerCase()]}function inheritFrom(target,propsInSyncWithParent){var this$1=this;each(Object.keys(target),function(k){var mustSync=!isReservedName(k)&&contains(propsInSyncWithParent,k);if(isUndefined(this$1[k])||mustSync){if(!mustSync){propsInSyncWithParent.push(k)}this$1[k]=target[k]}})}function moveChildTag(tagName,newPos){var parent=this.parent,tags;if(!parent){return}tags=parent.tags[tagName];if(isArray(tags)){tags.splice(newPos,0,tags.splice(tags.indexOf(this),1)[0])}else{arrayishAdd(parent.tags,tagName,this)}}function initChildTag(child,opts,innerHTML,parent){var tag=new Tag$1(child,opts,innerHTML),tagName=opts.tagName||getTagName(opts.root,true),ptag=getImmediateCustomParentTag(parent);defineProperty(tag,"parent",ptag);tag.__.parent=parent;arrayishAdd(ptag.tags,tagName,tag);if(ptag!==parent){arrayishAdd(parent.tags,tagName,tag)}opts.root.innerHTML="";return tag}function getImmediateCustomParentTag(tag){var ptag=tag;while(ptag.__.isAnonymous){if(!ptag.parent){break}ptag=ptag.parent}return ptag}function unmountAll(expressions){each(expressions,function(expr){if(expr instanceof Tag$1){expr.unmount(true)}else if(expr.tagName){expr.tag.unmount(true)}else if(expr.unmount){expr.unmount()}})}function getTagName(dom,skipDataIs){var child=getTag(dom),namedTag=!skipDataIs&&getAttr(dom,IS_DIRECTIVE);return namedTag&&!tmpl.hasExpr(namedTag)?namedTag:child?child.name:dom.tagName.toLowerCase()}function cleanUpData(data){if(!(data instanceof Tag$1)&&!(data&&isFunction(data.trigger))){return data}var o={};for(var key in data){if(!RE_RESERVED_NAMES.test(key)){o[key]=data[key]}}return o}function arrayishAdd(obj,key,value,ensureArray,index){var dest=obj[key];var isArr=isArray(dest);var hasIndex=!isUndefined(index);if(dest&&dest===value){return}if(!dest&&ensureArray){obj[key]=[value]}else if(!dest){obj[key]=value}else{if(isArr){var oldIndex=dest.indexOf(value);if(oldIndex===index){return}if(oldIndex!==-1){dest.splice(oldIndex,1)}if(hasIndex){dest.splice(index,0,value)}else{dest.push(value)}}else{obj[key]=[dest,value]}}}function arrayishRemove(obj,key,value,ensureArray){if(isArray(obj[key])){var index=obj[key].indexOf(value);if(index!==-1){obj[key].splice(index,1)}if(!obj[key].length){delete obj[key]}else if(obj[key].length===1&&!ensureArray){obj[key]=obj[key][0]}}else{delete obj[key]}}function mountTo(root,tagName,opts,ctx){var impl=__TAG_IMPL[tagName],implClass=__TAG_IMPL[tagName].class,tag=ctx||(implClass?Object.create(implClass.prototype):{}),innerHTML=root._innerHTML=root._innerHTML||root.innerHTML;var conf=extend({root:root,opts:opts},{parent:opts?opts.parent:null});if(impl&&root){Tag$1.apply(tag,[impl,conf,innerHTML])}if(tag&&tag.mount){tag.mount(true);if(!contains(__TAGS_CACHE,tag)){__TAGS_CACHE.push(tag)}}return tag}function makeReplaceVirtual(tag,ref){var frag=createFrag();makeVirtual.call(tag,frag);ref.parentNode.replaceChild(frag,ref)}function makeVirtual(src,target){var this$1=this;var head=createDOMPlaceholder(),tail=createDOMPlaceholder(),frag=createFrag(),sib,el;this.root.insertBefore(head,this.root.firstChild);this.root.appendChild(tail);this.__.head=el=head;this.__.tail=tail;while(el){sib=el.nextSibling;frag.appendChild(el);this$1.__.virts.push(el);el=sib}if(target){src.insertBefore(frag,target.__.head)}else{src.appendChild(frag)}}function moveVirtual(src,target){var this$1=this;var el=this.__.head,frag=createFrag(),sib;while(el){sib=el.nextSibling;frag.appendChild(el);el=sib;if(el===this$1.__.tail){frag.appendChild(el);src.insertBefore(frag,target.__.head);break}}}function selectTags(tags){if(!tags){var keys=Object.keys(__TAG_IMPL);return keys+selectTags(keys)}return tags.filter(function(t){return!/[^-\w]/.test(t)}).reduce(function(list,t){var name=t.trim().toLowerCase();return list+",["+IS_DIRECTIVE+'="'+name+'"]'},"")}var tags=Object.freeze({getTag:getTag,inheritFrom:inheritFrom,moveChildTag:moveChildTag,initChildTag:initChildTag,getImmediateCustomParentTag:getImmediateCustomParentTag,unmountAll:unmountAll,getTagName:getTagName,cleanUpData:cleanUpData,arrayishAdd:arrayishAdd,arrayishRemove:arrayishRemove,mountTo:mountTo,makeReplaceVirtual:makeReplaceVirtual,makeVirtual:makeVirtual,moveVirtual:moveVirtual,selectTags:selectTags});var settings=settings$1;var util={tmpl:tmpl,brackets:brackets,styleManager:styleManager,vdom:__TAGS_CACHE,styleNode:styleManager.styleNode,dom:dom,check:check,misc:misc,tags:tags};var riot$1=extend({},core,{observable:observable$1,settings:settings,util:util});riot$1.tag2("bbutton",'',"","",function(opts){});(function(self){"use strict";if(self.fetch){return}var support={searchParams:"URLSearchParams"in self,iterable:"Symbol"in self&&"iterator"in Symbol,blob:"FileReader"in self&&"Blob"in self&&function(){try{new Blob;return true}catch(e){return false}}(),formData:"FormData"in self,arrayBuffer:"ArrayBuffer"in self};if(support.arrayBuffer){var viewClasses=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"];var isDataView=function(obj){return obj&&DataView.prototype.isPrototypeOf(obj)};var isArrayBufferView=ArrayBuffer.isView||function(obj){return obj&&viewClasses.indexOf(Object.prototype.toString.call(obj))>-1}}function normalizeName(name){if(typeof name!=="string"){name=String(name)}if(/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(name)){throw new TypeError("Invalid character in header field name")}return name.toLowerCase()}function normalizeValue(value){if(typeof value!=="string"){value=String(value)}return value}function iteratorFor(items){var iterator={next:function(){var value=items.shift();return{done:value===undefined,value:value}}};if(support.iterable){iterator[Symbol.iterator]=function(){return iterator}}return iterator}function Headers(headers){this.map={};if(headers instanceof Headers){headers.forEach(function(value,name){this.append(name,value)},this)}else if(Array.isArray(headers)){headers.forEach(function(header){this.append(header[0],header[1])},this)}else if(headers){Object.getOwnPropertyNames(headers).forEach(function(name){this.append(name,headers[name])},this)}}Headers.prototype.append=function(name,value){name=normalizeName(name);value=normalizeValue(value);var oldValue=this.map[name];this.map[name]=oldValue?oldValue+","+value:value};Headers.prototype["delete"]=function(name){delete this.map[normalizeName(name)]};Headers.prototype.get=function(name){name=normalizeName(name);return this.has(name)?this.map[name]:null};Headers.prototype.has=function(name){return this.map.hasOwnProperty(normalizeName(name))};Headers.prototype.set=function(name,value){this.map[normalizeName(name)]=normalizeValue(value)};Headers.prototype.forEach=function(callback,thisArg){var this$1=this;for(var name in this$1.map){if(this$1.map.hasOwnProperty(name)){callback.call(thisArg,this$1.map[name],name,this$1)}}};Headers.prototype.keys=function(){var items=[];this.forEach(function(value,name){items.push(name)});return iteratorFor(items)};Headers.prototype.values=function(){var items=[];this.forEach(function(value){items.push(value)});return iteratorFor(items)};Headers.prototype.entries=function(){var items=[];this.forEach(function(value,name){items.push([name,value])});return iteratorFor(items)};if(support.iterable){Headers.prototype[Symbol.iterator]=Headers.prototype.entries}function consumed(body){if(body.bodyUsed){return Promise.reject(new TypeError("Already read"))}body.bodyUsed=true}function fileReaderReady(reader){return new Promise(function(resolve,reject){reader.onload=function(){resolve(reader.result)};reader.onerror=function(){reject(reader.error)}})}function readBlobAsArrayBuffer(blob){var reader=new FileReader;var promise=fileReaderReady(reader);reader.readAsArrayBuffer(blob);return promise}function readBlobAsText(blob){var reader=new FileReader;var promise=fileReaderReady(reader);reader.readAsText(blob);return promise}function readArrayBufferAsText(buf){var view=new Uint8Array(buf);var chars=new Array(view.length);for(var i=0;i-1?upcased:method}function Request(input,options){options=options||{};var body=options.body;if(input instanceof Request){if(input.bodyUsed){throw new TypeError("Already read")}this.url=input.url;this.credentials=input.credentials;if(!options.headers){this.headers=new Headers(input.headers)}this.method=input.method;this.mode=input.mode;if(!body&&input._bodyInit!=null){body=input._bodyInit;input.bodyUsed=true}}else{this.url=String(input)}this.credentials=options.credentials||this.credentials||"omit";if(options.headers||!this.headers){this.headers=new Headers(options.headers)}this.method=normalizeMethod(options.method||this.method||"GET");this.mode=options.mode||this.mode||null;this.referrer=null;if((this.method==="GET"||this.method==="HEAD")&&body){throw new TypeError("Body not allowed for GET or HEAD requests")}this._initBody(body)}Request.prototype.clone=function(){return new Request(this,{body:this._bodyInit})};function decode(body){var form=new FormData;body.trim().split("&").forEach(function(bytes){if(bytes){var split=bytes.split("=");var name=split.shift().replace(/\+/g," ");var value=split.join("=").replace(/\+/g," ");form.append(decodeURIComponent(name),decodeURIComponent(value))}});return form}function parseHeaders(rawHeaders){var headers=new Headers;rawHeaders.split(/\r?\n/).forEach(function(line){var parts=line.split(":");var key=parts.shift().trim();if(key){var value=parts.join(":").trim();headers.append(key,value)}});return headers}Body.call(Request.prototype);function Response(bodyInit,options){if(!options){options={}}this.type="default";this.status="status"in options?options.status:200;this.ok=this.status>=200&&this.status<300;this.statusText="statusText"in options?options.statusText:"OK";this.headers=new Headers(options.headers);this.url=options.url||"";this._initBody(bodyInit)}Body.call(Response.prototype);Response.prototype.clone=function(){return new Response(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Headers(this.headers),url:this.url})};Response.error=function(){var response=new Response(null,{status:0,statusText:""});response.type="error";return response};var redirectStatuses=[301,302,303,307,308];Response.redirect=function(url,status){if(redirectStatuses.indexOf(status)===-1){throw new RangeError("Invalid status code")}return new Response(null,{status:status,headers:{location:url}})};self.Headers=Headers;self.Request=Request;self.Response=Response;self.fetch=function(input,init){return new Promise(function(resolve,reject){var request=new Request(input,init);var xhr=new XMLHttpRequest;xhr.onload=function(){var options={status:xhr.status,statusText:xhr.statusText,headers:parseHeaders(xhr.getAllResponseHeaders()||"")};options.url="responseURL"in xhr?xhr.responseURL:options.headers.get("X-Request-URL");var body="response"in xhr?xhr.response:xhr.responseText;resolve(new Response(body,options))};xhr.onerror=function(){reject(new TypeError("Network request failed"))};xhr.ontimeout=function(){reject(new TypeError("Network request failed"))};xhr.open(request.method,request.url,true);if(request.credentials==="include"){xhr.withCredentials=true}if("responseType"in xhr&&support.blob){xhr.responseType="blob"}request.headers.forEach(function(value,name){xhr.setRequestHeader(name,value)});xhr.send(typeof request._bodyInit==="undefined"?null:request._bodyInit)})};self.fetch.polyfill=true})(typeof self!=="undefined"?self:undefined);var _isPlaceholder=function _isPlaceholder(a){return a!=null&&typeof a==="object"&&a["@@functional/placeholder"]===true};var _curry1=function _curry1(fn){return function f1(a){if(arguments.length===0||_isPlaceholder(a)){return f1}else{return fn.apply(this,arguments)}}};var always=_curry1(function always(val){return function(){return val}});var F=always(false);var T=always(true);var __={"@@functional/placeholder":true};var _curry2=function _curry2(fn){return function f2(a,b){switch(arguments.length){case 0:return f2;case 1:return _isPlaceholder(a)?f2:_curry1(function(_b){return fn(a,_b)});default:return _isPlaceholder(a)&&_isPlaceholder(b)?f2:_isPlaceholder(a)?_curry1(function(_a){return fn(_a,b)}):_isPlaceholder(b)?_curry1(function(_b){return fn(a,_b)}):fn(a,b)}}};var add=_curry2(function add(a,b){return Number(a)+Number(b)});var _concat=function _concat(set1,set2){set1=set1||[];set2=set2||[];var idx;var len1=set1.length;var len2=set2.length;var result=[];idx=0;while(idx=arguments$1.length)){result=received[combinedIdx]}else{result=arguments$1[argsIdx];argsIdx+=1}combined[combinedIdx]=result;if(!_isPlaceholder(result)){left-=1}combinedIdx+=1}return left<=0?fn.apply(this,combined):_arity(left,_curryN(length,combined,fn))}};var curryN=_curry2(function curryN(length,fn){if(length===1){return _curry1(fn)}return _arity(length,_curryN(length,[],fn))});var addIndex=_curry1(function addIndex(fn){return curryN(fn.length,function(){var idx=0;var origFn=arguments[0];var list=arguments[arguments.length-1];var args=Array.prototype.slice.call(arguments,0);args[0]=function(){var result=origFn.apply(this,_concat(arguments,[idx,list]));idx+=1;return result};return fn.apply(this,args)})});var _curry3=function _curry3(fn){return function f3(a,b,c){switch(arguments.length){case 0:return f3;case 1:return _isPlaceholder(a)?f3:_curry2(function(_b,_c){return fn(a,_b,_c)});case 2:return _isPlaceholder(a)&&_isPlaceholder(b)?f3:_isPlaceholder(a)?_curry2(function(_a,_c){return fn(_a,b,_c)}):_isPlaceholder(b)?_curry2(function(_b,_c){return fn(a,_b,_c)}):_curry1(function(_c){return fn(a,b,_c)});default:return _isPlaceholder(a)&&_isPlaceholder(b)&&_isPlaceholder(c)?f3:_isPlaceholder(a)&&_isPlaceholder(b)?_curry2(function(_a,_b){return fn(_a,_b,c)}):_isPlaceholder(a)&&_isPlaceholder(c)?_curry2(function(_a,_c){return fn(_a,b,_c)}):_isPlaceholder(b)&&_isPlaceholder(c)?_curry2(function(_b,_c){return fn(a,_b,_c)}):_isPlaceholder(a)?_curry1(function(_a){return fn(_a,b,c)}):_isPlaceholder(b)?_curry1(function(_b){return fn(a,_b,c)}):_isPlaceholder(c)?_curry1(function(_c){return fn(a,b,_c)}):fn(a,b,c)}}};var adjust=_curry3(function adjust(fn,idx,list){if(idx>=list.length||idx<-list.length){return list}var start=idx<0?list.length:0;var _idx=start+idx;var _list=_concat(list);_list[_idx]=fn(list[_idx]);return _list});var _isArray=Array.isArray||function _isArray(val){return val!=null&&val.length>=0&&Object.prototype.toString.call(val)==="[object Array]"};var _isTransformer=function _isTransformer(obj){return typeof obj["@@transducer/step"]==="function"};var _dispatchable=function _dispatchable(methodNames,xf,fn){return function(){if(arguments.length===0){return fn()}var args=Array.prototype.slice.call(arguments,0);var obj=args.pop();if(!_isArray(obj)){var idx=0;while(idxa?b:a});var _map=function _map(fn,functor){var idx=0;var len=functor.length;var result=Array(len);while(idx0){return x.hasOwnProperty(0)&&x.hasOwnProperty(x.length-1)}return false});var _reduce=function(){function _arrayReduce(xf,acc,list){var idx=0;var len=list.length;while(idx=0){prop=nonEnumerableProps[nIdx];if(_has(prop,obj)&&!contains(ks,prop)){ks[ks.length]=prop}nIdx-=1}}return ks})}();var map=_curry2(_dispatchable(["map"],_xmap,function map(fn,functor){switch(Object.prototype.toString.call(functor)){case"[object Function]":return curryN(functor.length,function(){return fn.call(this,functor.apply(this,arguments))});case"[object Object]":return _reduce(function(acc,key){acc[key]=fn(functor[key]);return acc},{},keys(functor));default:return _map(fn,functor)}}));var prop=_curry2(function prop(p,obj){return obj[p]});var pluck=_curry2(function pluck(p,list){return map(prop(p),list)});var reduce=_curry3(_reduce);var allPass=_curry1(function allPass(preds){return curryN(reduce(max,0,pluck("length",preds)),function(){var arguments$1=arguments;var this$1=this;var idx=0;var len=preds.length;while(idx=0?limit:0);while(idxbb?1:0});var assoc=_curry3(function assoc(prop,val,obj){var result={};for(var p in obj){result[p]=obj[p]}result[prop]=val;return result});var _isInteger=Number.isInteger||function _isInteger(n){return n<<0===n};var assocPath=_curry3(function assocPath(path,val,obj){if(path.length===0){return val}var idx=path[0];if(path.length>1){var nextObj=_has(idx,obj)?obj[idx]:_isInteger(path[1])?[]:{};val=assocPath(Array.prototype.slice.call(path,1),val,nextObj)}if(_isInteger(idx)&&_isArray(obj)){var arr=[].concat(obj);arr[idx]=val;return arr}else{return assoc(idx,val,obj)}});var nAry=_curry2(function nAry(n,fn){switch(n){case 0:return function(){return fn.call(this)};case 1:return function(a0){return fn.call(this,a0)};case 2:return function(a0,a1){return fn.call(this,a0,a1)};case 3:return function(a0,a1,a2){return fn.call(this,a0,a1,a2)};case 4:return function(a0,a1,a2,a3){return fn.call(this,a0,a1,a2,a3)};case 5:return function(a0,a1,a2,a3,a4){return fn.call(this,a0,a1,a2,a3,a4)};case 6:return function(a0,a1,a2,a3,a4,a5){return fn.call(this,a0,a1,a2,a3,a4,a5)};case 7:return function(a0,a1,a2,a3,a4,a5,a6){return fn.call(this,a0,a1,a2,a3,a4,a5,a6)};case 8:return function(a0,a1,a2,a3,a4,a5,a6,a7){return fn.call(this,a0,a1,a2,a3,a4,a5,a6,a7); + +};case 9:return function(a0,a1,a2,a3,a4,a5,a6,a7,a8){return fn.call(this,a0,a1,a2,a3,a4,a5,a6,a7,a8)};case 10:return function(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9){return fn.call(this,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9)};default:throw new Error("First argument to nAry must be a non-negative integer no greater than ten")}});var binary=_curry1(function binary(fn){return nAry(2,fn)});var _isFunction=function _isFunction(x){return Object.prototype.toString.call(x)==="[object Function]"};var liftN=_curry2(function liftN(arity,fn){var lifted=curryN(arity,fn);return curryN(arity,function(){return _reduce(ap,map(lifted,arguments[0]),Array.prototype.slice.call(arguments,1))})});var lift=_curry1(function lift(fn){return liftN(fn.length,fn)});var both=_curry2(function both(f,g){return _isFunction(f)?function _both(){return f.apply(this,arguments)&&g.apply(this,arguments)}:lift(and)(f,g)});var curry=_curry1(function curry(fn){return curryN(fn.length,fn)});var call=curry(function call(fn){return fn.apply(this,Array.prototype.slice.call(arguments,1))});var _makeFlat=function _makeFlat(recursive){return function flatt(list){var value,jlen,j;var result=[];var idx=0;var ilen=list.length;while(idxmax){throw new Error("min must not be greater than max in clamp(min, max, value)")}return valuemax?max:value});var _cloneRegExp=function _cloneRegExp(pattern){return new RegExp(pattern.source,(pattern.global?"g":"")+(pattern.ignoreCase?"i":"")+(pattern.multiline?"m":"")+(pattern.sticky?"y":"")+(pattern.unicode?"u":""))};var type=_curry1(function type(val){return val===null?"Null":val===undefined?"Undefined":Object.prototype.toString.call(val).slice(8,-1)});var _clone=function _clone(value,refFrom,refTo,deep){var copy=function copy(copiedValue){var len=refFrom.length;var idx=0;while(idx=0){if(stackA[idx]===a){return stackB[idx]===b}idx-=1}stackA.push(a);stackB.push(b);idx=keysA.length-1;while(idx>=0){var key=keysA[idx];if(!(_has(key,b)&&_equals(b[key],a[key],stackA,stackB))){return false}idx-=1}stackA.pop();stackB.pop();return true};var equals=_curry2(function equals(a,b){return _equals(a,b,[],[])});var _indexOf=function _indexOf(list,a,idx){var inf,item;if(typeof list.indexOf==="function"){switch(typeof a){case"number":if(a===0){inf=1/a;while(idx=0};var _quote=function _quote(s){var escaped=s.replace(/\\/g,"\\\\").replace(/[\b]/g,"\\b").replace(/\f/g,"\\f").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/\0/g,"\\0");return'"'+escaped.replace(/"/g,'\\"')+'"'};var _toISOString=function(){var pad=function pad(n){return(n<10?"0":"")+n};return typeof Date.prototype.toISOString==="function"?function _toISOString(d){return d.toISOString()}:function _toISOString(d){return d.getUTCFullYear()+"-"+pad(d.getUTCMonth()+1)+"-"+pad(d.getUTCDate())+"T"+pad(d.getUTCHours())+":"+pad(d.getUTCMinutes())+":"+pad(d.getUTCSeconds())+"."+(d.getUTCMilliseconds()/1e3).toFixed(3).slice(2,5)+"Z"}}();var _complement=function _complement(f){return function(){return!f.apply(this,arguments)}};var _filter=function _filter(fn,list){var idx=0;var len=list.length;var result=[];while(idx":_toString(y,xs)};var mapPairs=function(obj,keys$$1){return _map(function(k){return _quote(k)+": "+recur(obj[k])},keys$$1.slice().sort())};switch(Object.prototype.toString.call(x)){case"[object Arguments]":return"(function() { return arguments; }("+_map(recur,x).join(", ")+"))";case"[object Array]":return"["+_map(recur,x).concat(mapPairs(x,reject(function(k){return/^\d+$/.test(k)},keys(x)))).join(", ")+"]";case"[object Boolean]":return typeof x==="object"?"new Boolean("+recur(x.valueOf())+")":x.toString();case"[object Date]":return"new Date("+(isNaN(x.valueOf())?recur(NaN):_quote(_toISOString(x)))+")";case"[object Null]":return"null";case"[object Number]":return typeof x==="object"?"new Number("+recur(x.valueOf())+")":1/x===-Infinity?"-0":x.toString(10);case"[object String]":return typeof x==="object"?"new String("+recur(x.valueOf())+")":_quote(x);case"[object Undefined]":return"undefined";default:if(typeof x.toString==="function"){var repr=x.toString();if(repr!=="[object Object]"){return repr}}return"{"+mapPairs(x,keys(x)).join(", ")+"}"}};var toString_1=_curry1(function toString(val){return _toString(val,[])});var concat=_curry2(function concat(a,b){if(a==null||!_isFunction(a.concat)){throw new TypeError(toString_1(a)+' does not have a method named "concat"')}if(_isArray(a)&&!_isArray(b)){throw new TypeError(toString_1(b)+" is not an array")}return a.concat(b)});var cond=_curry1(function cond(pairs){var arity=reduce(max,0,map(function(pair){return pair[0].length},pairs));return _arity(arity,function(){var arguments$1=arguments;var this$1=this;var idx=0;while(idx10){throw new Error("Constructor with greater than ten arguments")}if(n===0){return function(){return new Fn}}return curry(nAry(n,function($0,$1,$2,$3,$4,$5,$6,$7,$8,$9){switch(arguments.length){case 1:return new Fn($0);case 2:return new Fn($0,$1);case 3:return new Fn($0,$1,$2);case 4:return new Fn($0,$1,$2,$3);case 5:return new Fn($0,$1,$2,$3,$4);case 6:return new Fn($0,$1,$2,$3,$4,$5);case 7:return new Fn($0,$1,$2,$3,$4,$5,$6);case 8:return new Fn($0,$1,$2,$3,$4,$5,$6,$7);case 9:return new Fn($0,$1,$2,$3,$4,$5,$6,$7,$8);case 10:return new Fn($0,$1,$2,$3,$4,$5,$6,$7,$8,$9)}}))});var construct=_curry1(function construct(Fn){return constructN(Fn.length,Fn)});var contains$1=_curry2(_contains);var converge=_curry2(function converge(after,fns){return curryN(reduce(max,0,pluck("length",fns)),function(){var args=arguments;var context=this;return after.apply(context,_map(function(fn){return fn.apply(context,args)},fns))})});var _xreduceBy=function(){function XReduceBy(valueFn,valueAcc,keyFn,xf){this.valueFn=valueFn;this.valueAcc=valueAcc;this.keyFn=keyFn;this.xf=xf;this.inputs={}}XReduceBy.prototype["@@transducer/init"]=_xfBase.init;XReduceBy.prototype["@@transducer/result"]=function(result){var this$1=this;var key;for(key in this$1.inputs){if(_has(key,this$1.inputs)){result=this$1.xf["@@transducer/step"](result,this$1.inputs[key]);if(result["@@transducer/reduced"]){result=result["@@transducer/value"];break}}}this.inputs=null;return this.xf["@@transducer/result"](result)};XReduceBy.prototype["@@transducer/step"]=function(result,input){var key=this.keyFn(input);this.inputs[key]=this.inputs[key]||[key,this.valueAcc];this.inputs[key][1]=this.valueFn(this.inputs[key][1],input);return result};return _curryN(4,[],function _xreduceBy(valueFn,valueAcc,keyFn,xf){return new XReduceBy(valueFn,valueAcc,keyFn,xf)})}();var reduceBy=_curryN(4,[],_dispatchable([],_xreduceBy,function reduceBy(valueFn,valueAcc,keyFn,list){return _reduce(function(acc,elt){var key=keyFn(elt);acc[key]=valueFn(_has(key,acc)?acc[key]:valueAcc,elt);return acc},{},list)}));var countBy=reduceBy(function(acc,elem){return acc+1},0);var dec=add(-1);var descend=_curry3(function descend(fn,a,b){var aa=fn(a);var bb=fn(b);return aa>bb?-1:aa0){this.n-=1;return result}return this.xf["@@transducer/step"](result,input)};return _curry2(function _xdrop(n,xf){return new XDrop(n,xf)})}();var drop=_curry2(_dispatchable(["drop"],_xdrop,function drop(n,xs){return slice(Math.max(0,n),Infinity,xs)}));var _xtake=function(){function XTake(n,xf){this.xf=xf;this.n=n;this.i=0}XTake.prototype["@@transducer/init"]=_xfBase.init;XTake.prototype["@@transducer/result"]=_xfBase.result;XTake.prototype["@@transducer/step"]=function(result,input){this.i+=1;var ret=this.n===0?result:this.xf["@@transducer/step"](result,input);return this.i>=this.n?_reduced(ret):ret};return _curry2(function _xtake(n,xf){return new XTake(n,xf)})}();var take=_curry2(_dispatchable(["take"],_xtake,function take(n,xs){return slice(0,n<0?Infinity:n,xs)}));var _dropLast=function dropLast(n,xs){return take(n=0&&pred(list[idx])){idx-=1}return Array.prototype.slice.call(list,0,idx+1)};var _xdropLastWhile=function(){function XDropLastWhile(fn,xf){this.f=fn;this.retained=[];this.xf=xf}XDropLastWhile.prototype["@@transducer/init"]=_xfBase.init;XDropLastWhile.prototype["@@transducer/result"]=function(result){this.retained=null;return this.xf["@@transducer/result"](result)};XDropLastWhile.prototype["@@transducer/step"]=function(result,input){return this.f(input)?this.retain(result,input):this.flush(result,input)};XDropLastWhile.prototype.flush=function(result,input){result=_reduce(this.xf["@@transducer/step"],result,this.retained);this.retained=[];return this.xf["@@transducer/step"](result,input)};XDropLastWhile.prototype.retain=function(result,input){this.retained.push(input);return result};return _curry2(function _xdropLastWhile(fn,xf){return new XDropLastWhile(fn,xf)})}();var dropLastWhile=_curry2(_dispatchable([],_xdropLastWhile,_dropLastWhile));var _xdropRepeatsWith=function(){function XDropRepeatsWith(pred,xf){this.xf=xf;this.pred=pred;this.lastValue=undefined;this.seenFirstValue=false}XDropRepeatsWith.prototype["@@transducer/init"]=_xfBase.init;XDropRepeatsWith.prototype["@@transducer/result"]=_xfBase.result;XDropRepeatsWith.prototype["@@transducer/step"]=function(result,input){var sameAsLast=false;if(!this.seenFirstValue){this.seenFirstValue=true}else if(this.pred(this.lastValue,input)){sameAsLast=true}this.lastValue=input;return sameAsLast?result:this.xf["@@transducer/step"](result,input)};return _curry2(function _xdropRepeatsWith(pred,xf){return new XDropRepeatsWith(pred,xf)})}();var nth=_curry2(function nth(offset,list){var idx=offset<0?list.length+offset:offset;return _isString(list)?list.charAt(idx):list[idx]});var last=nth(-1);var dropRepeatsWith=_curry2(_dispatchable([],_xdropRepeatsWith,function dropRepeatsWith(pred,list){var result=[];var idx=1;var len=list.length;if(len!==0){result[0]=list[0];while(idx=0){if(fn(list[idx])){return list[idx]}idx-=1}}));var _xfindLastIndex=function(){function XFindLastIndex(f,xf){this.xf=xf;this.f=f;this.idx=-1;this.lastIdx=-1}XFindLastIndex.prototype["@@transducer/init"]=_xfBase.init;XFindLastIndex.prototype["@@transducer/result"]=function(result){return this.xf["@@transducer/result"](this.xf["@@transducer/step"](result,this.lastIdx))};XFindLastIndex.prototype["@@transducer/step"]=function(result,input){this.idx+=1;if(this.f(input)){this.lastIdx=this.idx}return result};return _curry2(function _xfindLastIndex(f,xf){return new XFindLastIndex(f,xf)})}();var findLastIndex=_curry2(_dispatchable([],_xfindLastIndex,function findLastIndex(fn,list){var idx=list.length-1;while(idx>=0){if(fn(list[idx])){return idx}idx-=1}return-1}));var flatten=_curry1(_makeFlat(true));var flip=_curry1(function flip(fn){return curry(function(a,b){var args=Array.prototype.slice.call(arguments,0);args[0]=b;args[1]=a;return fn.apply(this,args)})});var forEach=_curry2(_checkForMethod("forEach",function forEach(fn,list){var len=list.length;var idx=0;while(idxb});var gte=_curry2(function gte(a,b){return a>=b});var has=_curry2(_has);var hasIn=_curry2(function hasIn(prop,obj){return prop in obj});var head=nth(0);var _identity=function _identity(x){return x};var identity=_curry1(_identity);var ifElse=_curry3(function ifElse(condition,onTrue,onFalse){return curryN(Math.max(condition.length,onTrue.length,onFalse.length),function _ifElse(){return condition.apply(this,arguments)?onTrue.apply(this,arguments):onFalse.apply(this,arguments)})});var inc=add(1);var indexBy=reduceBy(function(acc,elem){return elem},null);var indexOf=_curry2(function indexOf(target,xs){return typeof xs.indexOf==="function"&&!_isArray(xs)?xs.indexOf(target):_indexOf(xs,target,0)});var init=slice(0,-1);var insert$1=_curry3(function insert(idx,elt,list){idx=idx=0?idx:list.length;var result=Array.prototype.slice.call(list,0);result.splice(idx,0,elt);return result});var insertAll=_curry3(function insertAll(idx,elts,list){idx=idx=0?idx:list.length;return[].concat(Array.prototype.slice.call(list,0,idx),elts,Array.prototype.slice.call(list,idx))});var _Set=function(){function _Set(){this._nativeSet=typeof Set==="function"?new Set:null;this._items={}}_Set.prototype.add=function(item){return!hasOrAdd(item,true,this)};_Set.prototype.has=function(item){return hasOrAdd(item,false,this)};function hasOrAdd(item,shouldAdd,set){var type=typeof item;var prevSize,newSize;switch(type){case"string":case"number":if(item===0&&1/item===-Infinity){if(set._items["-0"]){return true}else{if(shouldAdd){set._items["-0"]=true}return false}}if(set._nativeSet!==null){if(shouldAdd){prevSize=set._nativeSet.size;set._nativeSet.add(item);newSize=set._nativeSet.size;return newSize===prevSize}else{return set._nativeSet.has(item)}}else{if(!(type in set._items)){if(shouldAdd){set._items[type]={};set._items[type][item]=true}return false}else if(item in set._items[type]){return true}else{if(shouldAdd){set._items[type][item]=true}return false}}case"boolean":if(type in set._items){var bIdx=item?1:0;if(set._items[type][bIdx]){return true}else{if(shouldAdd){set._items[type][bIdx]=true}return false}}else{if(shouldAdd){set._items[type]=item?[false,true]:[true,false]}return false}case"function":if(set._nativeSet!==null){if(shouldAdd){prevSize=set._nativeSet.size;set._nativeSet.add(item);newSize=set._nativeSet.size;return newSize===prevSize}else{return set._nativeSet.has(item)}}else{if(!(type in set._items)){if(shouldAdd){set._items[type]=[item]}return false}if(!_contains(item,set._items[type])){if(shouldAdd){set._items[type].push(item)}return false}return true}case"undefined":if(set._items[type]){return true}else{if(shouldAdd){set._items[type]=true}return false}case"object":if(item===null){if(!set._items["null"]){if(shouldAdd){set._items["null"]=true}return false}return true}default:type=Object.prototype.toString.call(item);if(!(type in set._items)){if(shouldAdd){set._items[type]=[item]}return false}if(!_contains(item,set._items[type])){if(shouldAdd){set._items[type].push(item)}return false}return true}}return _Set}();var uniqBy=_curry2(function uniqBy(fn,list){var set=new _Set;var result=[];var idx=0;var appliedItem,item;while(idxlist2.length){lookupList=list1;filteredList=list2}else{lookupList=list2;filteredList=list1}return uniq(_filter(flip(_contains)(lookupList),filteredList))});var uniqWith=_curry2(function uniqWith(pred,list){var idx=0;var len=list.length;var result=[];var item;while(idxlist2.length){lookupList=list1;filteredList=list2}else{lookupList=list2;filteredList=list1}var results=[];var idx=0;while(idx=0){if(equals(xs[idx],target)){return idx}idx-=1}return-1}});var _isNumber=function _isNumber(x){return Object.prototype.toString.call(x)==="[object Number]"};var length=_curry1(function length(list){return list!=null&&_isNumber(list.length)?list.length:NaN});var lens=_curry2(function lens(getter,setter){return function(toFunctorFn){return function(target){return map(function(focus){return setter(focus,target)},toFunctorFn(getter(target)))}}});var update$2=_curry3(function update(idx,x,list){return adjust(always(x),idx,list)});var lensIndex=_curry1(function lensIndex(n){return lens(nth(n),update$2(n))});var path=_curry2(function path(paths,obj){var val=obj;var idx=0;while(idx=0){tuple=fn(list[idx],tuple[0]);result[idx]=tuple[1];idx-=1}return[result,tuple[0]]});var mapObjIndexed=_curry2(function mapObjIndexed(fn,obj){return _reduce(function(acc,key){acc[key]=fn(obj[key],key,obj);return acc},{},keys(obj))});var match=_curry2(function match(rx,str){return str.match(rx)||[]});var mathMod=_curry2(function mathMod(m,p){if(!_isInteger(m)){return NaN}if(!_isInteger(p)||p<1){return NaN}return(m%p+p)%p});var maxBy=_curry3(function maxBy(f,a,b){return f(b)>f(a)?b:a});var sum=reduce(add,0);var mean=_curry1(function mean(list){return sum(list)/list.length});var median=_curry1(function median(list){var len=list.length;if(len===0){return NaN}var width=2-len%2;var idx=(len-width)/2;return mean(Array.prototype.slice.call(list,0).sort(function(a,b){return ab?1:0}).slice(idx,idx+width))});var memoize=_curry1(function memoize(fn){var cache={};return _arity(fn.length,function(){var key=toString_1(arguments);if(!_has(key,cache)){cache[key]=fn.apply(this,arguments)}return cache[key]})});var merge=_curry2(function merge(l,r){return _assign({},l,r)});var mergeAll=_curry1(function mergeAll(list){return _assign.apply(null,[{}].concat(list))});var mergeWithKey=_curry3(function mergeWithKey(fn,l,r){var result={};var k;for(k in l){if(_has(k,l)){result[k]=_has(k,r)?fn(k,l[k],r[k]):l[k]}}for(k in r){if(_has(k,r)&&!_has(k,result)){result[k]=r[k]}}return result});var mergeWith=_curry3(function mergeWith(fn,l,r){return mergeWithKey(function(_,_l,_r){return fn(_l,_r)},l,r)});var min=_curry2(function min(a,b){return b0&&pred(path(propPath,obj))});var pick=_curry2(function pick(names,obj){var result={};var idx=0;while(idx=0){acc=fn(list[idx],acc);idx-=1}return acc});var reduceWhile=_curryN(4,[],function _reduceWhile(pred,fn,a,list){return _reduce(function(acc,x){return pred(acc,x)?fn(acc,x):_reduced(acc)},a,list)});var reduced=_curry1(_reduced);var remove$1=_curry3(function remove(start,count,list){var result=Array.prototype.slice.call(list,0);result.splice(start,count);return result});var times=_curry2(function times(fn,n){var len=Number(n);var idx=0;var list;if(len<0||isNaN(len)){throw new RangeError("n must be a non-negative number")}list=new Array(len);while(idxbb?1:0})});var sortWith=_curry2(function sortWith(fns,list){return Array.prototype.slice.call(list,0).sort(function(a,b){var result=0;var i=0;while(result===0&&i=0?xs.length-n:0,xs)});var takeLastWhile=_curry2(function takeLastWhile(fn,list){var idx=list.length-1;while(idx>=0&&fn(list[idx])){idx-=1}return Array.prototype.slice.call(list,idx+1)});var _xtakeWhile=function(){function XTakeWhile(f,xf){this.xf=xf;this.f=f}XTakeWhile.prototype["@@transducer/init"]=_xfBase.init;XTakeWhile.prototype["@@transducer/result"]=_xfBase.result;XTakeWhile.prototype["@@transducer/step"]=function(result,input){return this.f(input)?this.xf["@@transducer/step"](result,input):_reduced(result)};return _curry2(function _xtakeWhile(f,xf){return new XTakeWhile(f,xf)})}();var takeWhile=_curry2(_dispatchable(["takeWhile"],_xtakeWhile,function takeWhile(fn,list){var idx=0;var len=list.length;while(idx
',"","",function(opts){});riot$1.tag2("post",'

No more posts!

{this.title}

Posted by {this.author}

{this.content}

',"","",function(opts){var self=this;self.author="";self.title="";self.content="";self.prevloading="";self.nextloading="";self.transition="";self.nomore=false;self.content="";self.swipe=true;this.prev=function(ev){ev.preventDefault();if(self.prevloading||self.nextloading){return}self.prevloading=" loading";if(self.opts.state.pid>1){self.opts.state.pid--;self.update()}self.update({swipe:false});self.setPost(self.opts.state.pid,"fadeInLeft")}.bind(this);this.next=function(ev){ev.preventDefault();if(self.nextloading||self.prevloading){return}self.nextloading=" loading";if(!self.nomore){self.opts.state.pid++;self.update()}self.update({swipe:false});self.setPost(self.opts.state.pid,"fadeInRight")}.bind(this);this.setPost=function(pid,transition){this.opts.state.pid=pid;fetch("/blog/switchpost/"+(this.opts.state.pid-1)).then(function(resp){return resp.text()}).then(function(body){if(body==="false"){self.nomore=true;self.prevloading="";self.nextloading="";self.swipe=true;self.transition=transition;self.update();return}else{var postcontent=JSON.parse(body);if(postcontent.length==0){self.prevloading="";self.nextloading="";self.nomore=true;self.swipe=true;self.transition=transition;self.update();return}self.author=postcontent[0].doc.author[0];self.content=postcontent[0].doc.content[0];self.title=postcontent[0].doc.title[0];self.transition=transition;self.swipe=true;self.nomore=false;self.update()}self.prevloading="";self.nextloading="";self.update()})}.bind(this);this.setPost(this.opts.state.pid)});riot$1.tag2("posts","","","",function(opts){});riot$1.tag2("raw","","","",function(opts){this.updateContent=function(){this.root.innerHTML=opts.content}.bind(this);this.on("update",function(){this.updateContent()});this.updateContent()});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 showdown=createCommonjsModule(function(module){(function(){function getDefaultOpts(simple){"use strict";var defaultOptions={omitExtraWLInCodeBlocks:{defaultValue:false,describe:"Omit the default extra whiteline added to code blocks",type:"boolean"},noHeaderId:{defaultValue:false,describe:"Turn on/off generated header id",type:"boolean"},prefixHeaderId:{defaultValue:false,describe:"Specify a prefix to generated header ids",type:"string"},ghCompatibleHeaderId:{defaultValue:false,describe:"Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)",type:"boolean"},headerLevelStart:{defaultValue:false,describe:"The header blocks level start",type:"integer"},parseImgDimensions:{defaultValue:false,describe:"Turn on/off image dimension parsing",type:"boolean"},simplifiedAutoLink:{defaultValue:false,describe:"Turn on/off GFM autolink style",type:"boolean"},excludeTrailingPunctuationFromURLs:{defaultValue:false,describe:"Excludes trailing punctuation from links generated with autoLinking",type:"boolean"},literalMidWordUnderscores:{defaultValue:false,describe:"Parse midword underscores as literal underscores",type:"boolean"},literalMidWordAsterisks:{defaultValue:false,describe:"Parse midword asterisks as literal asterisks",type:"boolean"},strikethrough:{defaultValue:false,describe:"Turn on/off strikethrough support",type:"boolean"},tables:{defaultValue:false,describe:"Turn on/off tables support",type:"boolean"},tablesHeaderId:{defaultValue:false,describe:"Add an id to table headers",type:"boolean"},ghCodeBlocks:{defaultValue:true,describe:"Turn on/off GFM fenced code blocks support",type:"boolean"},tasklists:{defaultValue:false,describe:"Turn on/off GFM tasklist support",type:"boolean"},smoothLivePreview:{defaultValue:false,describe:"Prevents weird effects in live previews due to incomplete input",type:"boolean"},smartIndentationFix:{defaultValue:false,description:"Tries to smartly fix indentation in es6 strings",type:"boolean"},disableForced4SpacesIndentedSublists:{defaultValue:false,description:"Disables the requirement of indenting nested sublists by 4 spaces",type:"boolean"},simpleLineBreaks:{defaultValue:false,description:"Parses simple line breaks as
(GFM Style)",type:"boolean"},requireSpaceBeforeHeadingText:{defaultValue:false,description:"Makes adding a space between `#` and the header text mandatory (GFM Style)",type:"boolean"},ghMentions:{defaultValue:false,description:"Enables github @mentions",type:"boolean"},ghMentionsLink:{defaultValue:"https://github.com/{u}",description:"Changes the link generated by @mentions. Only applies if ghMentions option is enabled.",type:"string"},encodeEmails:{defaultValue:true,description:"Encode e-mail addresses through the use of Character Entities, transforming ASCII e-mail addresses into its equivalent decimal entities",type:"boolean"},openLinksInNewWindow:{defaultValue:false,description:"Open all links in new windows",type:"boolean"}};if(simple===false){return JSON.parse(JSON.stringify(defaultOptions))}var ret={};for(var opt in defaultOptions){if(defaultOptions.hasOwnProperty(opt)){ret[opt]=defaultOptions[opt].defaultValue}}return ret}function allOptionsOn(){"use strict";var options=getDefaultOpts(true),ret={};for(var opt in options){if(options.hasOwnProperty(opt)){ret[opt]=true}}return ret}var showdown={},parsers={},extensions={},globalOptions=getDefaultOpts(true),setFlavor="vanilla",flavor={github:{omitExtraWLInCodeBlocks:true,simplifiedAutoLink:true,excludeTrailingPunctuationFromURLs:true,literalMidWordUnderscores:true,strikethrough:true,tables:true,tablesHeaderId:true,ghCodeBlocks:true,tasklists:true,disableForced4SpacesIndentedSublists:true,simpleLineBreaks:true,requireSpaceBeforeHeadingText:true,ghCompatibleHeaderId:true,ghMentions:true},original:{noHeaderId:true,ghCodeBlocks:false},ghost:{omitExtraWLInCodeBlocks:true,parseImgDimensions:true,simplifiedAutoLink:true,excludeTrailingPunctuationFromURLs:true,literalMidWordUnderscores:true,strikethrough:true,tables:true,tablesHeaderId:true,ghCodeBlocks:true,tasklists:true,smoothLivePreview:true,simpleLineBreaks:true,requireSpaceBeforeHeadingText:true,ghMentions:false,encodeEmails:true},vanilla:getDefaultOpts(true),allOn:allOptionsOn()};showdown.helper={};showdown.extensions={};showdown.setOption=function(key,value){"use strict";globalOptions[key]=value;return this};showdown.getOption=function(key){"use strict";return globalOptions[key]};showdown.getOptions=function(){"use strict";return globalOptions};showdown.resetOptions=function(){"use strict";globalOptions=getDefaultOpts(true)};showdown.setFlavor=function(name){"use strict";if(!flavor.hasOwnProperty(name)){throw Error(name+" flavor was not found")}showdown.resetOptions();var preset=flavor[name];setFlavor=name;for(var option in preset){if(preset.hasOwnProperty(option)){globalOptions[option]=preset[option]}}};showdown.getFlavor=function(){"use strict";return setFlavor};showdown.getFlavorOptions=function(name){"use strict";if(flavor.hasOwnProperty(name)){return flavor[name]}};showdown.getDefaultOptions=function(simple){"use strict";return getDefaultOpts(simple)};showdown.subParser=function(name,func){"use strict";if(showdown.helper.isString(name)){if(typeof func!=="undefined"){parsers[name]=func}else{if(parsers.hasOwnProperty(name)){return parsers[name]}else{throw Error("SubParser named "+name+" not registered!")}}}};showdown.extension=function(name,ext){"use strict";if(!showdown.helper.isString(name)){throw Error("Extension 'name' must be a string")}name=showdown.helper.stdExtName(name);if(showdown.helper.isUndefined(ext)){if(!extensions.hasOwnProperty(name)){throw Error("Extension named "+name+" is not registered!")}return extensions[name]}else{if(typeof ext==="function"){ext=ext()}if(!showdown.helper.isArray(ext)){ext=[ext]}var validExtension=validate(ext,name);if(validExtension.valid){extensions[name]=ext}else{throw Error(validExtension.error)}}};showdown.getAllExtensions=function(){"use strict";return extensions};showdown.removeExtension=function(name){"use strict";delete extensions[name]};showdown.resetExtensions=function(){"use strict";extensions={}};function validate(extension,name){"use strict";var errMsg=name?"Error in "+name+" extension->":"Error in unnamed extension",ret={valid:true,error:""};if(!showdown.helper.isArray(extension)){extension=[extension]}for(var i=0;i-1,x=new RegExp(left+"|"+right,"g"+f.replace(/g/g,"")),l=new RegExp(left,f.replace(/g/g,"")),pos=[],t,s,m,start,end;do{t=0;while(m=x.exec(str)){if(l.test(m[0])){if(!t++){s=x.lastIndex;start=s-m[0].length}}else if(t){if(!--t){end=m.index+m[0].length;var obj={left:{start:start,end:s},match:{start:s,end:m.index},right:{start:m.index,end:end},wholeMatch:{start:start,end:end}};pos.push(obj);if(!g){return pos}}}}}while(t&&(x.lastIndex=s));return pos};showdown.helper.matchRecursiveRegExp=function(str,left,right,flags){"use strict";var matchPos=rgxFindMatchPos(str,left,right,flags),results=[];for(var i=0;i0){var bits=[];if(matchPos[0].wholeMatch.start!==0){bits.push(str.slice(0,matchPos[0].wholeMatch.start))}for(var i=0;i=0?indexOf+(fromIndex||0):indexOf};showdown.helper.splitAtIndex=function(str,index){"use strict";if(!showdown.helper.isString(str)){throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string"}return[str.substring(0,index),str.substring(index)]};showdown.helper.encodeEmailAddress=function(mail){"use strict";var encode=[function(ch){return"&#"+ch.charCodeAt(0)+";"},function(ch){return"&#x"+ch.charCodeAt(0).toString(16)+";"},function(ch){return ch}];mail=mail.replace(/./g,function(ch){if(ch==="@"){ch=encode[Math.floor(Math.random()*2)](ch)}else{var r=Math.random();ch=r>.9?encode[2](ch):r>.45?encode[1](ch):encode[0](ch)}return ch});return mail};if(typeof console==="undefined"){console={warn:function(msg){"use strict";alert(msg)},log:function(msg){"use strict";alert(msg)},error:function(msg){"use strict";throw msg}}}showdown.helper.regexes={asteriskAndDash:/([*_])/g};showdown.Converter=function(converterOptions){"use strict";var options={},langExtensions=[],outputModifiers=[],listeners={},setConvFlavor=setFlavor;_constructor();function _constructor(){converterOptions=converterOptions||{};for(var gOpt in globalOptions){if(globalOptions.hasOwnProperty(gOpt)){options[gOpt]=globalOptions[gOpt]}}if(typeof converterOptions==="object"){for(var opt in converterOptions){if(converterOptions.hasOwnProperty(opt)){options[opt]=converterOptions[opt]}}}else{throw Error("Converter expects the passed parameter to be an object, but "+typeof converterOptions+" was passed instead.")}if(options.extensions){showdown.helper.forEach(options.extensions,_parseExtension)}}function _parseExtension(ext,name){name=name||null;if(showdown.helper.isString(ext)){ext=showdown.helper.stdExtName(ext);name=ext;if(showdown.extensions[ext]){console.warn("DEPRECATION WARNING: "+ext+" is an old extension that uses a deprecated loading method."+"Please inform the developer that the extension should be updated!");legacyExtensionLoading(showdown.extensions[ext],ext);return}else if(!showdown.helper.isUndefined(extensions[ext])){ext=extensions[ext]}else{throw Error('Extension "'+ext+'" could not be loaded. It was either not found or is not a valid extension.')}}if(typeof ext==="function"){ext=ext()}if(!showdown.helper.isArray(ext)){ext=[ext]}var validExt=validate(ext,name);if(!validExt.valid){throw Error(validExt.error)}for(var i=0;i? ?(['"].*['"])?\)$/m)>-1){url=""}else if(!url){if(!linkId){linkId=linkText.toLowerCase().replace(/ ?\n/g," ")}url="#"+linkId;if(!showdown.helper.isUndefined(globals.gUrls[linkId])){url=globals.gUrls[linkId];if(!showdown.helper.isUndefined(globals.gTitles[linkId])){title=globals.gTitles[linkId]}}else{return wholeMatch}}url=url.replace(showdown.helper.regexes.asteriskAndDash,showdown.helper.escapeCharactersCallback);var result='";return result};text=text.replace(/\[((?:\[[^\]]*]|[^\[\]])*)] ?(?:\n *)?\[(.*?)]()()()()/g,writeAnchorTag);text=text.replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]?<([^>]*)>(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,writeAnchorTag);text=text.replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]??(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,writeAnchorTag);text=text.replace(/\[([^\[\]]+)]()()()()()/g,writeAnchorTag);if(options.ghMentions){text=text.replace(/(^|\s)(\\)?(@([a-z\d\-]+))(?=[.!?;,[\]()]|\s|$)/gim,function(wm,st,escape,mentions,username){if(escape==="\\"){return st+mentions}if(!showdown.helper.isString(options.ghMentionsLink)){throw new Error("ghMentionsLink option must be a string")}var lnk=options.ghMentionsLink.replace(/\{u}/g,username);return st+''+mentions+""})}text=globals.converter._dispatch("anchors.after",text,options,globals);return text});var simpleURLRegex=/\b(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+)()(?=\s|$)(?!["<>])/gi,simpleURLRegex2=/\b(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+?)([.!?,()\[\]]?)(?=\s|$)(?!["<>])/gi,delimUrlRegex=/<(((https?|ftp|dict):\/\/|www\.)[^'">\s]+)()>/gi,simpleMailRegex=/(^|\s)(?:mailto:)?([A-Za-z0-9!#$%&'*+-\/=?^_`{|}~.]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)(?=$|\s)/gim,delimMailRegex=/<()(?:mailto:)?([-.\w]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,replaceLink=function(options){"use strict";return function(wm,link,m2,m3,trailingPunctuation){var lnkTxt=link,append="",target="";if(/^www\./i.test(link)){link=link.replace(/^www\./i,"http://www.")}if(options.excludeTrailingPunctuationFromURLs&&trailingPunctuation){append=trailingPunctuation}if(options.openLinksInNewWindow){target=' target="¨E95Eblank"'}return'"+lnkTxt+""+append}},replaceMail=function(options,globals){"use strict";return function(wholeMatch,b,mail){var href="mailto:";b=b||"";mail=showdown.subParser("unescapeSpecialChars")(mail,options,globals);if(options.encodeEmails){href=showdown.helper.encodeEmailAddress(href+mail);mail=showdown.helper.encodeEmailAddress(mail)}else{href=href+mail}return b+''+mail+""}};showdown.subParser("autoLinks",function(text,options,globals){"use strict";text=globals.converter._dispatch("autoLinks.before",text,options,globals);text=text.replace(delimUrlRegex,replaceLink(options));text=text.replace(delimMailRegex,replaceMail(options,globals));text=globals.converter._dispatch("autoLinks.after",text,options,globals);return text});showdown.subParser("simplifiedAutoLinks",function(text,options,globals){"use strict";if(!options.simplifiedAutoLink){return text}text=globals.converter._dispatch("simplifiedAutoLinks.before",text,options,globals);if(options.excludeTrailingPunctuationFromURLs){text=text.replace(simpleURLRegex2,replaceLink(options))}else{text=text.replace(simpleURLRegex,replaceLink(options))}text=text.replace(simpleMailRegex,replaceMail(options,globals));text=globals.converter._dispatch("simplifiedAutoLinks.after",text,options,globals);return text});showdown.subParser("blockGamut",function(text,options,globals){"use strict";text=globals.converter._dispatch("blockGamut.before",text,options,globals);text=showdown.subParser("blockQuotes")(text,options,globals);text=showdown.subParser("headers")(text,options,globals);text=showdown.subParser("horizontalRule")(text,options,globals);text=showdown.subParser("lists")(text,options,globals);text=showdown.subParser("codeBlocks")(text,options,globals);text=showdown.subParser("tables")(text,options,globals);text=showdown.subParser("hashHTMLBlocks")(text,options,globals);text=showdown.subParser("paragraphs")(text,options,globals);text=globals.converter._dispatch("blockGamut.after",text,options,globals);return text});showdown.subParser("blockQuotes",function(text,options,globals){"use strict";text=globals.converter._dispatch("blockQuotes.before",text,options,globals);text=text.replace(/((^ {0,3}>[ \t]?.+\n(.+\n)*\n*)+)/gm,function(wholeMatch,m1){var bq=m1;bq=bq.replace(/^[ \t]*>[ \t]?/gm,"¨0");bq=bq.replace(/¨0/g,"");bq=bq.replace(/^[ \t]+$/gm,"");bq=showdown.subParser("githubCodeBlocks")(bq,options,globals);bq=showdown.subParser("blockGamut")(bq,options,globals);bq=bq.replace(/(^|\n)/g,"$1 ");bq=bq.replace(/(\s*
[^\r]+?<\/pre>)/gm,function(wholeMatch,m1){var pre=m1;pre=pre.replace(/^  /gm,"¨0");pre=pre.replace(/¨0/g,"");return pre});return showdown.subParser("hashBlock")("
\n"+bq+"\n
",options,globals)});text=globals.converter._dispatch("blockQuotes.after",text,options,globals);return text});showdown.subParser("codeBlocks",function(text,options,globals){"use strict";text=globals.converter._dispatch("codeBlocks.before",text,options,globals);text+="¨0";var pattern=/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=¨0))/g;text=text.replace(pattern,function(wholeMatch,m1,m2){var codeblock=m1,nextChar=m2,end="\n";codeblock=showdown.subParser("outdent")(codeblock,options,globals);codeblock=showdown.subParser("encodeCode")(codeblock,options,globals);codeblock=showdown.subParser("detab")(codeblock,options,globals);codeblock=codeblock.replace(/^\n+/g,"");codeblock=codeblock.replace(/\n+$/g,"");if(options.omitExtraWLInCodeBlocks){end=""}codeblock="
"+codeblock+end+"
";return showdown.subParser("hashBlock")(codeblock,options,globals)+nextChar});text=text.replace(/¨0/,"");text=globals.converter._dispatch("codeBlocks.after",text,options,globals);return text});showdown.subParser("codeSpans",function(text,options,globals){"use strict";text=globals.converter._dispatch("codeSpans.before",text,options,globals);if(typeof text==="undefined"){text=""}text=text.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,function(wholeMatch,m1,m2,m3){var c=m3;c=c.replace(/^([ \t]*)/g,"");c=c.replace(/[ \t]*$/g,"");c=showdown.subParser("encodeCode")(c,options,globals);return m1+""+c+""});text=globals.converter._dispatch("codeSpans.after",text,options,globals);return text});showdown.subParser("detab",function(text,options,globals){"use strict";text=globals.converter._dispatch("detab.before",text,options,globals);text=text.replace(/\t(?=\t)/g," ");text=text.replace(/\t/g,"¨A¨B");text=text.replace(/¨B(.+?)¨A/g,function(wholeMatch,m1){var leadingText=m1,numSpaces=4-leadingText.length%4;for(var i=0;i/g,">");text=globals.converter._dispatch("encodeAmpsAndAngles.after",text,options,globals);return text});showdown.subParser("encodeBackslashEscapes",function(text,options,globals){"use strict";text=globals.converter._dispatch("encodeBackslashEscapes.before",text,options,globals);text=text.replace(/\\(\\)/g,showdown.helper.escapeCharactersCallback);text=text.replace(/\\([`*_{}\[\]()>#+.!~=|-])/g,showdown.helper.escapeCharactersCallback);text=globals.converter._dispatch("encodeBackslashEscapes.after",text,options,globals);return text});showdown.subParser("encodeCode",function(text,options,globals){"use strict";text=globals.converter._dispatch("encodeCode.before",text,options,globals);text=text.replace(/&/g,"&").replace(//g,">").replace(/([*_{}\[\]\\=~-])/g,showdown.helper.escapeCharactersCallback);text=globals.converter._dispatch("encodeCode.after",text,options,globals);return text});showdown.subParser("escapeSpecialCharsWithinTagAttributes",function(text,options,globals){"use strict";text=globals.converter._dispatch("escapeSpecialCharsWithinTagAttributes.before",text,options,globals);var regex=/(<[a-z\/!$]("[^"]*"|'[^']*'|[^'">])*>|)/gi;text=text.replace(regex,function(wholeMatch){return wholeMatch.replace(/(.)<\/?code>(?=.)/g,"$1`").replace(/([\\`*_~=|])/g,showdown.helper.escapeCharactersCallback)});text=globals.converter._dispatch("escapeSpecialCharsWithinTagAttributes.after",text,options,globals);return text});showdown.subParser("githubCodeBlocks",function(text,options,globals){"use strict";if(!options.ghCodeBlocks){return text}text=globals.converter._dispatch("githubCodeBlocks.before",text,options,globals);text+="¨0";text=text.replace(/(?:^|\n)```(.*)\n([\s\S]*?)\n```/g,function(wholeMatch,language,codeblock){var end=options.omitExtraWLInCodeBlocks?"":"\n";codeblock=showdown.subParser("encodeCode")(codeblock,options,globals);codeblock=showdown.subParser("detab")(codeblock,options,globals);codeblock=codeblock.replace(/^\n+/g,"");codeblock=codeblock.replace(/\n+$/g,"");codeblock="
"+codeblock+end+"
";codeblock=showdown.subParser("hashBlock")(codeblock,options,globals);return"\n\n¨G"+(globals.ghCodeBlocks.push({text:wholeMatch,codeblock:codeblock})-1)+"G\n\n"});text=text.replace(/¨0/,"");return globals.converter._dispatch("githubCodeBlocks.after",text,options,globals)});showdown.subParser("hashBlock",function(text,options,globals){"use strict";text=globals.converter._dispatch("hashBlock.before",text,options,globals);text=text.replace(/(^\n+|\n+$)/g,"");text="\n\n¨K"+(globals.gHtmlBlocks.push(text)-1)+"K\n\n";text=globals.converter._dispatch("hashBlock.after",text,options,globals);return text});showdown.subParser("hashCodeTags",function(text,options,globals){"use strict";text=globals.converter._dispatch("hashCodeTags.before",text,options,globals);var repFunc=function(wholeMatch,match,left,right){var codeblock=left+showdown.subParser("encodeCode")(match,options,globals)+right;return"¨C"+(globals.gHtmlSpans.push(codeblock)-1)+"C"};text=showdown.helper.replaceRecursiveRegExp(text,repFunc,"]*>","","gim");text=globals.converter._dispatch("hashCodeTags.after",text,options,globals);return text});showdown.subParser("hashElement",function(text,options,globals){"use strict";return function(wholeMatch,m1){var blockText=m1;blockText=blockText.replace(/\n\n/g,"\n");blockText=blockText.replace(/^\n/,"");blockText=blockText.replace(/\n+$/g,"");blockText="\n\n¨K"+(globals.gHtmlBlocks.push(blockText)-1)+"K\n\n";return blockText}});showdown.subParser("hashHTMLBlocks",function(text,options,globals){"use strict";text=globals.converter._dispatch("hashHTMLBlocks.before",text,options,globals);var blockTags=["pre","div","h1","h2","h3","h4","h5","h6","blockquote","table","dl","ol","ul","script","noscript","form","fieldset","iframe","math","style","section","header","footer","nav","article","aside","address","audio","canvas","figure","hgroup","output","video","p"],repFunc=function(wholeMatch,match,left,right){var txt=wholeMatch;if(left.search(/\bmarkdown\b/)!==-1){txt=left+globals.converter.makeHtml(match)+right}return"\n\n¨K"+(globals.gHtmlBlocks.push(txt)-1)+"K\n\n"};for(var i=0;i]*>","im"),patLeft="<"+blockTags[i]+"\\b[^>]*>",patRight="";while((opTagPos=showdown.helper.regexIndexOf(text,rgx1))!==-1){var subTexts=showdown.helper.splitAtIndex(text,opTagPos),newSubText1=showdown.helper.replaceRecursiveRegExp(subTexts[1],repFunc,patLeft,patRight,"im");if(newSubText1===subTexts[1]){break}text=subTexts[0].concat(newSubText1)}}text=text.replace(/(\n {0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,showdown.subParser("hashElement")(text,options,globals));text=showdown.helper.replaceRecursiveRegExp(text,function(txt){return"\n\n¨K"+(globals.gHtmlBlocks.push(txt)-1)+"K\n\n"},"^ {0,3}","gm");text=text.replace(/(?:\n\n)( {0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,showdown.subParser("hashElement")(text,options,globals));text=globals.converter._dispatch("hashHTMLBlocks.after",text,options,globals);return text});showdown.subParser("hashHTMLSpans",function(text,options,globals){"use strict";text=globals.converter._dispatch("hashHTMLSpans.before",text,options,globals);function hashHTMLSpan(html){return"¨C"+(globals.gHtmlSpans.push(html)-1)+"C"}text=text.replace(/<[^>]+?\/>/gi,function(wm){return hashHTMLSpan(wm)});text=text.replace(/<([^>]+?)>[\s\S]*?<\/\1>/g,function(wm){return hashHTMLSpan(wm)});text=text.replace(/<([^>]+?)\s[^>]+?>[\s\S]*?<\/\1>/g,function(wm){return hashHTMLSpan(wm)});text=text.replace(/<[^>]+?>/gi,function(wm){return hashHTMLSpan(wm)});text=globals.converter._dispatch("hashHTMLSpans.after",text,options,globals);return text});showdown.subParser("unhashHTMLSpans",function(text,options,globals){"use strict";text=globals.converter._dispatch("unhashHTMLSpans.before",text,options,globals);for(var i=0;i]*>\\s*]*>","^ {0,3}\\s*
","gim");text=globals.converter._dispatch("hashPreCodeTags.after",text,options,globals);return text});showdown.subParser("headers",function(text,options,globals){"use strict";text=globals.converter._dispatch("headers.before",text,options,globals);var headerLevelStart=isNaN(parseInt(options.headerLevelStart))?1:parseInt(options.headerLevelStart),ghHeaderId=options.ghCompatibleHeaderId,setextRegexH1=options.smoothLivePreview?/^(.+)[ \t]*\n={2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n=+[ \t]*\n+/gm,setextRegexH2=options.smoothLivePreview?/^(.+)[ \t]*\n-{2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n-+[ \t]*\n+/gm;text=text.replace(setextRegexH1,function(wholeMatch,m1){var spanGamut=showdown.subParser("spanGamut")(m1,options,globals),hID=options.noHeaderId?"":' id="'+headerId(m1)+'"',hLevel=headerLevelStart,hashBlock=""+spanGamut+"";return showdown.subParser("hashBlock")(hashBlock,options,globals)});text=text.replace(setextRegexH2,function(matchFound,m1){var spanGamut=showdown.subParser("spanGamut")(m1,options,globals),hID=options.noHeaderId?"":' id="'+headerId(m1)+'"',hLevel=headerLevelStart+1,hashBlock=""+spanGamut+"";return showdown.subParser("hashBlock")(hashBlock,options,globals)});var atxStyle=options.requireSpaceBeforeHeadingText?/^(#{1,6})[ \t]+(.+?)[ \t]*#*\n+/gm:/^(#{1,6})[ \t]*(.+?)[ \t]*#*\n+/gm;text=text.replace(atxStyle,function(wholeMatch,m1,m2){var hText=m2;if(options.customizedHeaderId){hText=m2.replace(/\s?\{([^{]+?)}\s*$/,"")}var span=showdown.subParser("spanGamut")(hText,options,globals),hID=options.noHeaderId?"":' id="'+headerId(m2)+'"',hLevel=headerLevelStart-1+m1.length,header=""+span+"";return showdown.subParser("hashBlock")(header,options,globals)});function headerId(m){var title;if(options.customizedHeaderId){var match=m.match(/\{([^{]+?)}\s*$/);if(match&&match[1]){m=match[1]}}if(showdown.helper.isString(options.prefixHeaderId)){title=options.prefixHeaderId+m}else if(options.prefixHeaderId===true){title="section "+m}else{title=m}if(ghHeaderId){title=title.replace(/ /g,"-").replace(/&/g,"").replace(/¨T/g,"").replace(/¨D/g,"").replace(/[&+$,\/:;=?@"#{}|^¨~\[\]`\\*)(%.!'<>]/g,"").toLowerCase()}else{title=title.replace(/[^\w]/g,"").toLowerCase()}if(globals.hashLinkCounts[title]){title=title+"-"+globals.hashLinkCounts[title]++}else{globals.hashLinkCounts[title]=1}return title}text=globals.converter._dispatch("headers.after",text,options,globals);return text});showdown.subParser("horizontalRule",function(text,options,globals){"use strict";text=globals.converter._dispatch("horizontalRule.before",text,options,globals);var key=showdown.subParser("hashBlock")("
",options,globals);text=text.replace(/^ {0,2}( ?-){3,}[ \t]*$/gm,key);text=text.replace(/^ {0,2}( ?\*){3,}[ \t]*$/gm,key);text=text.replace(/^ {0,2}( ?_){3,}[ \t]*$/gm,key);text=globals.converter._dispatch("horizontalRule.after",text,options,globals);return text});showdown.subParser("images",function(text,options,globals){"use strict";text=globals.converter._dispatch("images.before",text,options,globals);var inlineRegExp=/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,crazyRegExp=/!\[([^\]]*?)][ \t]*()\([ \t]?<([^>]*)>(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(?:(["'])([^"]*?)\6))?[ \t]?\)/g,referenceRegExp=/!\[([^\]]*?)] ?(?:\n *)?\[(.*?)]()()()()()/g,refShortcutRegExp=/!\[([^\[\]]+)]()()()()()/g;function writeImageTag(wholeMatch,altText,linkId,url,width,height,m5,title){var gUrls=globals.gUrls,gTitles=globals.gTitles,gDims=globals.gDimensions;linkId=linkId.toLowerCase();if(!title){title=""}if(wholeMatch.search(/\(? ?(['"].*['"])?\)$/m)>-1){url=""}else if(url===""||url===null){if(linkId===""||linkId===null){linkId=altText.toLowerCase().replace(/ ?\n/g," ")}url="#"+linkId;if(!showdown.helper.isUndefined(gUrls[linkId])){url=gUrls[linkId];if(!showdown.helper.isUndefined(gTitles[linkId])){title=gTitles[linkId]}if(!showdown.helper.isUndefined(gDims[linkId])){width=gDims[linkId].width;height=gDims[linkId].height}}else{return wholeMatch}}altText=altText.replace(/"/g,""").replace(showdown.helper.regexes.asteriskAndDash,showdown.helper.escapeCharactersCallback);url=url.replace(showdown.helper.regexes.asteriskAndDash,showdown.helper.escapeCharactersCallback);var result=''+altText+'","")});text=text.replace(/\b__(\S[\s\S]*)__\b/g,function(wm,txt){return parseInside(txt,"","")});text=text.replace(/\b_(\S[\s\S]*?)_\b/g,function(wm,txt){return parseInside(txt,"","")})}else{text=text.replace(/___(\S[\s\S]*?)___/g,function(wm,m){return/\S$/.test(m)?parseInside(m,"",""):wm});text=text.replace(/__(\S[\s\S]*?)__/g,function(wm,m){return/\S$/.test(m)?parseInside(m,"",""):wm});text=text.replace(/_([^\s_][\s\S]*?)_/g,function(wm,m){return/\S$/.test(m)?parseInside(m,"",""):wm})}if(options.literalMidWordAsterisks){text=text.trim().replace(/(?:^| +)\*{3}(\S[\s\S]*?)\*{3}(?: +|$)/g,function(wm,txt){return parseInside(txt," "," ")});text=text.trim().replace(/(?:^| +)\*{2}(\S[\s\S]*?)\*{2}(?: +|$)/g,function(wm,txt){return parseInside(txt," "," ")});text=text.trim().replace(/(?:^| +)\*{1}(\S[\s\S]*?)\*{1}(?: +|$)/g,function(wm,txt){return parseInside(txt," ",""+(wm.slice(-1)===" "?" ":""))})}else{text=text.replace(/\*\*\*(\S[\s\S]*?)\*\*\*/g,function(wm,m){return/\S$/.test(m)?parseInside(m,"",""):wm});text=text.replace(/\*\*(\S[\s\S]*?)\*\*/g,function(wm,m){return/\S$/.test(m)?parseInside(m,"",""):wm});text=text.replace(/\*([^\s*][\s\S]*?)\*/g,function(wm,m){return/\S$/.test(m)?parseInside(m,"",""):wm})}text=globals.converter._dispatch("italicsAndBold.after",text,options,globals);return text});showdown.subParser("lists",function(text,options,globals){"use strict";text=globals.converter._dispatch("lists.before",text,options,globals);function processListItems(listStr,trimTrailing){globals.gListLevel++;listStr=listStr.replace(/\n{2,}$/,"\n");listStr+="¨0";var rgx=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0| {0,3}([*+-]|\d+[.])[ \t]+))/gm,isParagraphed=/\n[ \t]*\n(?!¨0)/.test(listStr);if(options.disableForced4SpacesIndentedSublists){rgx=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0|\2([*+-]|\d+[.])[ \t]+))/gm}listStr=listStr.replace(rgx,function(wholeMatch,m1,m2,m3,m4,taskbtn,checked){checked=checked&&checked.trim()!=="";var item=showdown.subParser("outdent")(m4,options,globals),bulletStyle="";if(taskbtn&&options.tasklists){bulletStyle=' class="task-list-item" style="list-style-type: none;"';item=item.replace(/^[ \t]*\[(x|X| )?]/m,function(){var otp='-1){item=showdown.subParser("githubCodeBlocks")(item,options,globals);item=showdown.subParser("blockGamut")(item,options,globals)}else{item=showdown.subParser("lists")(item,options,globals); + +item=item.replace(/\n$/,"");item=showdown.subParser("hashHTMLBlocks")(item,options,globals);item=item.replace(/\n\n+/g,"\n\n");item=item.replace(/\n\n/g,"¨B");if(isParagraphed){item=showdown.subParser("paragraphs")(item,options,globals)}else{item=showdown.subParser("spanGamut")(item,options,globals)}item=item.replace(/¨B/g,"\n\n")}item=item.replace("¨A","");item=""+item+"\n";return item});listStr=listStr.replace(/¨0/g,"");globals.gListLevel--;if(trimTrailing){listStr=listStr.replace(/\s+$/,"")}return listStr}function parseConsecutiveLists(list,listType,trimTrailing){var olRgx=options.disableForced4SpacesIndentedSublists?/^ ?\d+\.[ \t]/gm:/^ {0,3}\d+\.[ \t]/gm,ulRgx=options.disableForced4SpacesIndentedSublists?/^ ?[*+-][ \t]/gm:/^ {0,3}[*+-][ \t]/gm,counterRxg=listType==="ul"?olRgx:ulRgx,result="";if(list.search(counterRxg)!==-1){(function parseCL(txt){var pos=txt.search(counterRxg);if(pos!==-1){result+="\n<"+listType+">\n"+processListItems(txt.slice(0,pos),!!trimTrailing)+"\n";listType=listType==="ul"?"ol":"ul";counterRxg=listType==="ul"?olRgx:ulRgx;parseCL(txt.slice(pos))}else{result+="\n<"+listType+">\n"+processListItems(txt,!!trimTrailing)+"\n"}})(list)}else{result="\n<"+listType+">\n"+processListItems(list,!!trimTrailing)+"\n"}return result}text+="¨0";if(globals.gListLevel){text=text.replace(/^(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,function(wholeMatch,list,m2){var listType=m2.search(/[*+-]/g)>-1?"ul":"ol";return parseConsecutiveLists(list,listType,true)})}else{text=text.replace(/(\n\n|^\n?)(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,function(wholeMatch,m1,list,m3){var listType=m3.search(/[*+-]/g)>-1?"ul":"ol";return parseConsecutiveLists(list,listType,false)})}text=text.replace(/¨0/,"");text=globals.converter._dispatch("lists.after",text,options,globals);return text});showdown.subParser("outdent",function(text,options,globals){"use strict";text=globals.converter._dispatch("outdent.before",text,options,globals);text=text.replace(/^(\t|[ ]{1,4})/gm,"¨0");text=text.replace(/¨0/g,"");text=globals.converter._dispatch("outdent.after",text,options,globals);return text});showdown.subParser("paragraphs",function(text,options,globals){"use strict";text=globals.converter._dispatch("paragraphs.before",text,options,globals);text=text.replace(/^\n+/g,"");text=text.replace(/\n+$/g,"");var grafs=text.split(/\n{2,}/g),grafsOut=[],end=grafs.length;for(var i=0;i=0){grafsOut.push(str)}else if(str.search(/\S/)>=0){str=showdown.subParser("spanGamut")(str,options,globals);str=str.replace(/^([ \t]*)/g,"

");str+="

";grafsOut.push(str)}}end=grafsOut.length;for(i=0;i]*>\s*]*>/.test(grafsOutIt)){codeFlag=true}}grafsOut[i]=grafsOutIt}text=grafsOut.join("\n");text=text.replace(/^\n+/g,"");text=text.replace(/\n+$/g,"");return globals.converter._dispatch("paragraphs.after",text,options,globals)});showdown.subParser("runExtension",function(ext,text,options,globals){"use strict";if(ext.filter){text=ext.filter(text,globals.converter,options)}else if(ext.regex){var re=ext.regex;if(!(re instanceof RegExp)){re=new RegExp(re,"g")}text=text.replace(re,ext.replace)}return text});showdown.subParser("spanGamut",function(text,options,globals){"use strict";text=globals.converter._dispatch("spanGamut.before",text,options,globals);text=showdown.subParser("codeSpans")(text,options,globals);text=showdown.subParser("escapeSpecialCharsWithinTagAttributes")(text,options,globals);text=showdown.subParser("encodeBackslashEscapes")(text,options,globals);text=showdown.subParser("images")(text,options,globals);text=showdown.subParser("anchors")(text,options,globals);text=showdown.subParser("autoLinks")(text,options,globals);text=showdown.subParser("italicsAndBold")(text,options,globals);text=showdown.subParser("strikethrough")(text,options,globals);text=showdown.subParser("simplifiedAutoLinks")(text,options,globals);text=showdown.subParser("hashHTMLSpans")(text,options,globals);text=showdown.subParser("encodeAmpsAndAngles")(text,options,globals);if(options.simpleLineBreaks){text=text.replace(/\n/g,"
\n")}else{text=text.replace(/ +\n/g,"
\n")}text=globals.converter._dispatch("spanGamut.after",text,options,globals);return text});showdown.subParser("strikethrough",function(text,options,globals){"use strict";function parseInside(txt){if(options.simplifiedAutoLink){txt=showdown.subParser("simplifiedAutoLinks")(txt,options,globals)}return""+txt+""}if(options.strikethrough){text=globals.converter._dispatch("strikethrough.before",text,options,globals);text=text.replace(/(?:~){2}([\s\S]+?)(?:~){2}/g,function(wm,txt){return parseInside(txt)});text=globals.converter._dispatch("strikethrough.after",text,options,globals)}return text});showdown.subParser("stripLinkDefinitions",function(text,options,globals){"use strict";var regex=/^ {0,3}\[(.+)]:[ \t]*\n?[ \t]*\s]+)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n+|(?=¨0))/gm;text+="¨0";text=text.replace(regex,function(wholeMatch,linkId,url,width,height,blankLines,title){linkId=linkId.toLowerCase();globals.gUrls[linkId]=showdown.subParser("encodeAmpsAndAngles")(url,options,globals);if(blankLines){return blankLines+title}else{if(title){globals.gTitles[linkId]=title.replace(/"|'/g,""")}if(options.parseImgDimensions&&width&&height){globals.gDimensions[linkId]={width:width,height:height}}}return""});text=text.replace(/¨0/,"");return text});showdown.subParser("tables",function(text,options,globals){"use strict";if(!options.tables){return text}var tableRgx=/^ {0,3}\|?.+\|.+\n[ \t]{0,3}\|?[ \t]*:?[ \t]*(?:-|=){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:-|=){2,}[\s\S]+?(?:\n\n|¨0)/gm;function parseStyles(sLine){if(/^:[ \t]*--*$/.test(sLine)){return' style="text-align:left;"'}else if(/^--*[ \t]*:[ \t]*$/.test(sLine)){return' style="text-align:right;"'}else if(/^:[ \t]*--*[ \t]*:$/.test(sLine)){return' style="text-align:center;"'}else{return""}}function parseHeaders(header,style){var id="";header=header.trim();if(options.tableHeaderId){id=' id="'+header.replace(/ /g,"_").toLowerCase()+'"'}header=showdown.subParser("spanGamut")(header,options,globals);return""+header+"\n"}function parseCells(cell,style){var subText=showdown.subParser("spanGamut")(cell,options,globals);return""+subText+"\n"}function buildTable(headers,cells){var tb="\n\n\n",tblLgn=headers.length;for(var i=0;i\n\n\n";for(i=0;i\n";for(var ii=0;ii\n"}tb+="\n
\n";return tb}text=globals.converter._dispatch("tables.before",text,options,globals);text=text.replace(/\\(\|)/g,showdown.helper.escapeCharactersCallback);text=text.replace(tableRgx,function(rawTable){var i,tableLines=rawTable.split("\n");for(i=0;i
',"","",function(opts){this.R=index;this.converter=new showdown.Converter;this.converted="

Nothing here yet

";this.placeholderText="Write a post!";this.placeholder=this.placeholderText;this.focused=false;this.clearplaceholder=function(){if(!this.focused){this.update({placeholder:"",focused:true})}}.bind(this);this.checkplaceholder=function(){if(this.refs.textarea.value.trim().length==0){this.update({placeholder:this.placeholderText,focused:false})}}.bind(this);this.echo=function(ev){this.update({converted:this.converter.makeHtml(this.refs.textarea.value.trim())})}.bind(this);var self=this;this.submit=function(){var post={author:"name",text:this.refs.textarea.value};console.log("Submitting the post");console.log(post)}.bind(this)});var immutable=createCommonjsModule(function(module,exports){(function(global,factory){module.exports=factory()})(commonjsGlobal,function(){"use strict";var SLICE$0=Array.prototype.slice;function createClass(ctor,superClass){if(superClass){ctor.prototype=Object.create(superClass.prototype)}ctor.prototype.constructor=ctor}function Iterable(value){return isIterable(value)?value:Seq(value)}createClass(KeyedIterable,Iterable);function KeyedIterable(value){return isKeyed(value)?value:KeyedSeq(value)}createClass(IndexedIterable,Iterable);function IndexedIterable(value){return isIndexed(value)?value:IndexedSeq(value)}createClass(SetIterable,Iterable);function SetIterable(value){return isIterable(value)&&!isAssociative(value)?value:SetSeq(value)}function isIterable(maybeIterable){return!!(maybeIterable&&maybeIterable[IS_ITERABLE_SENTINEL])}function isKeyed(maybeKeyed){return!!(maybeKeyed&&maybeKeyed[IS_KEYED_SENTINEL])}function isIndexed(maybeIndexed){return!!(maybeIndexed&&maybeIndexed[IS_INDEXED_SENTINEL])}function isAssociative(maybeAssociative){return isKeyed(maybeAssociative)||isIndexed(maybeAssociative)}function isOrdered(maybeOrdered){return!!(maybeOrdered&&maybeOrdered[IS_ORDERED_SENTINEL])}Iterable.isIterable=isIterable;Iterable.isKeyed=isKeyed;Iterable.isIndexed=isIndexed;Iterable.isAssociative=isAssociative;Iterable.isOrdered=isOrdered;Iterable.Keyed=KeyedIterable;Iterable.Indexed=IndexedIterable;Iterable.Set=SetIterable;var IS_ITERABLE_SENTINEL="@@__IMMUTABLE_ITERABLE__@@";var IS_KEYED_SENTINEL="@@__IMMUTABLE_KEYED__@@";var IS_INDEXED_SENTINEL="@@__IMMUTABLE_INDEXED__@@";var IS_ORDERED_SENTINEL="@@__IMMUTABLE_ORDERED__@@";var DELETE="delete";var SHIFT=5;var SIZE=1<>>0;if(""+uint32Index!==index||uint32Index===4294967295){return NaN}index=uint32Index}return index<0?ensureSize(iter)+index:index}function returnTrue(){return true}function wholeSlice(begin,end,size){return(begin===0||size!==undefined&&begin<=-size)&&(end===undefined||size!==undefined&&end>=size)}function resolveBegin(begin,size){return resolveIndex(begin,size,0)}function resolveEnd(end,size){return resolveIndex(end,size,size)}function resolveIndex(index,size,defaultIndex){return index===undefined?defaultIndex:index<0?Math.max(0,size+index):size===undefined?index:Math.min(size,index)}var ITERATE_KEYS=0;var ITERATE_VALUES=1;var ITERATE_ENTRIES=2;var REAL_ITERATOR_SYMBOL=typeof Symbol==="function"&&Symbol.iterator;var FAUX_ITERATOR_SYMBOL="@@iterator";var ITERATOR_SYMBOL=REAL_ITERATOR_SYMBOL||FAUX_ITERATOR_SYMBOL;function Iterator(next){this.next=next}Iterator.prototype.toString=function(){return"[Iterator]"};Iterator.KEYS=ITERATE_KEYS;Iterator.VALUES=ITERATE_VALUES;Iterator.ENTRIES=ITERATE_ENTRIES;Iterator.prototype.inspect=Iterator.prototype.toSource=function(){return this.toString()};Iterator.prototype[ITERATOR_SYMBOL]=function(){return this};function iteratorValue(type,k,v,iteratorResult){var value=type===0?k:type===1?v:[k,v];iteratorResult?iteratorResult.value=value:iteratorResult={value:value,done:false};return iteratorResult}function iteratorDone(){return{value:undefined,done:true}}function hasIterator(maybeIterable){return!!getIteratorFn(maybeIterable)}function isIterator(maybeIterator){return maybeIterator&&typeof maybeIterator.next==="function"}function getIterator(iterable){var iteratorFn=getIteratorFn(iterable);return iteratorFn&&iteratorFn.call(iterable)}function getIteratorFn(iterable){var iteratorFn=iterable&&(REAL_ITERATOR_SYMBOL&&iterable[REAL_ITERATOR_SYMBOL]||iterable[FAUX_ITERATOR_SYMBOL]);if(typeof iteratorFn==="function"){return iteratorFn}}function isArrayLike(value){return value&&typeof value.length==="number"}createClass(Seq,Iterable);function Seq(value){return value===null||value===undefined?emptySequence():isIterable(value)?value.toSeq():seqFromValue(value)}Seq.of=function(){return Seq(arguments)};Seq.prototype.toSeq=function(){return this};Seq.prototype.toString=function(){return this.__toString("Seq {","}")};Seq.prototype.cacheResult=function(){if(!this._cache&&this.__iterateUncached){this._cache=this.entrySeq().toArray();this.size=this._cache.length}return this};Seq.prototype.__iterate=function(fn,reverse){return seqIterate(this,fn,reverse,true)};Seq.prototype.__iterator=function(type,reverse){return seqIterator(this,type,reverse,true)};createClass(KeyedSeq,Seq);function KeyedSeq(value){return value===null||value===undefined?emptySequence().toKeyedSeq():isIterable(value)?isKeyed(value)?value.toSeq():value.fromEntrySeq():keyedSeqFromValue(value)}KeyedSeq.prototype.toKeyedSeq=function(){return this};createClass(IndexedSeq,Seq);function IndexedSeq(value){return value===null||value===undefined?emptySequence():!isIterable(value)?indexedSeqFromValue(value):isKeyed(value)?value.entrySeq():value.toIndexedSeq()}IndexedSeq.of=function(){return IndexedSeq(arguments)};IndexedSeq.prototype.toIndexedSeq=function(){return this};IndexedSeq.prototype.toString=function(){return this.__toString("Seq [","]")};IndexedSeq.prototype.__iterate=function(fn,reverse){return seqIterate(this,fn,reverse,false)};IndexedSeq.prototype.__iterator=function(type,reverse){return seqIterator(this,type,reverse,false)};createClass(SetSeq,Seq);function SetSeq(value){return(value===null||value===undefined?emptySequence():!isIterable(value)?indexedSeqFromValue(value):isKeyed(value)?value.entrySeq():value).toSetSeq()}SetSeq.of=function(){return SetSeq(arguments)};SetSeq.prototype.toSetSeq=function(){return this};Seq.isSeq=isSeq;Seq.Keyed=KeyedSeq;Seq.Set=SetSeq;Seq.Indexed=IndexedSeq;var IS_SEQ_SENTINEL="@@__IMMUTABLE_SEQ__@@";Seq.prototype[IS_SEQ_SENTINEL]=true;createClass(ArraySeq,IndexedSeq);function ArraySeq(array){this._array=array;this.size=array.length}ArraySeq.prototype.get=function(index,notSetValue){return this.has(index)?this._array[wrapIndex(this,index)]:notSetValue};ArraySeq.prototype.__iterate=function(fn,reverse){var this$1=this;var array=this._array;var maxIndex=array.length-1;for(var ii=0;ii<=maxIndex;ii++){if(fn(array[reverse?maxIndex-ii:ii],ii,this$1)===false){return ii+1}}return ii};ArraySeq.prototype.__iterator=function(type,reverse){var array=this._array;var maxIndex=array.length-1;var ii=0;return new Iterator(function(){return ii>maxIndex?iteratorDone():iteratorValue(type,ii,array[reverse?maxIndex-ii++:ii++])})};createClass(ObjectSeq,KeyedSeq);function ObjectSeq(object){var keys=Object.keys(object);this._object=object;this._keys=keys;this.size=keys.length}ObjectSeq.prototype.get=function(key,notSetValue){if(notSetValue!==undefined&&!this.has(key)){return notSetValue}return this._object[key]};ObjectSeq.prototype.has=function(key){return this._object.hasOwnProperty(key)};ObjectSeq.prototype.__iterate=function(fn,reverse){var this$1=this;var object=this._object;var keys=this._keys;var maxIndex=keys.length-1;for(var ii=0;ii<=maxIndex;ii++){var key=keys[reverse?maxIndex-ii:ii];if(fn(object[key],key,this$1)===false){return ii+1}}return ii};ObjectSeq.prototype.__iterator=function(type,reverse){var object=this._object;var keys=this._keys;var maxIndex=keys.length-1;var ii=0;return new Iterator(function(){var key=keys[reverse?maxIndex-ii:ii];return ii++>maxIndex?iteratorDone():iteratorValue(type,key,object[key])})};ObjectSeq.prototype[IS_ORDERED_SENTINEL]=true;createClass(IterableSeq,IndexedSeq);function IterableSeq(iterable){this._iterable=iterable;this.size=iterable.length||iterable.size}IterableSeq.prototype.__iterateUncached=function(fn,reverse){var this$1=this;if(reverse){return this.cacheResult().__iterate(fn,reverse)}var iterable=this._iterable;var iterator=getIterator(iterable);var iterations=0;if(isIterator(iterator)){var step;while(!(step=iterator.next()).done){if(fn(step.value,iterations++,this$1)===false){break}}}return iterations};IterableSeq.prototype.__iteratorUncached=function(type,reverse){if(reverse){return this.cacheResult().__iterator(type,reverse)}var iterable=this._iterable;var iterator=getIterator(iterable);if(!isIterator(iterator)){return new Iterator(iteratorDone)}var iterations=0;return new Iterator(function(){var step=iterator.next();return step.done?step:iteratorValue(type,iterations++,step.value)})};createClass(IteratorSeq,IndexedSeq);function IteratorSeq(iterator){this._iterator=iterator;this._iteratorCache=[]}IteratorSeq.prototype.__iterateUncached=function(fn,reverse){var this$1=this;if(reverse){return this.cacheResult().__iterate(fn,reverse)}var iterator=this._iterator;var cache=this._iteratorCache;var iterations=0;while(iterations=cache.length){var step=iterator.next();if(step.done){return step}cache[iterations]=step.value}return iteratorValue(type,iterations,cache[iterations++])})};function isSeq(maybeSeq){return!!(maybeSeq&&maybeSeq[IS_SEQ_SENTINEL])}var EMPTY_SEQ;function emptySequence(){return EMPTY_SEQ||(EMPTY_SEQ=new ArraySeq([]))}function keyedSeqFromValue(value){var seq=Array.isArray(value)?new ArraySeq(value).fromEntrySeq():isIterator(value)?new IteratorSeq(value).fromEntrySeq():hasIterator(value)?new IterableSeq(value).fromEntrySeq():typeof value==="object"?new ObjectSeq(value):undefined;if(!seq){throw new TypeError("Expected Array or iterable object of [k, v] entries, "+"or keyed object: "+value)}return seq}function indexedSeqFromValue(value){var seq=maybeIndexedSeqFromValue(value);if(!seq){throw new TypeError("Expected Array or iterable object of values: "+value)}return seq}function seqFromValue(value){var seq=maybeIndexedSeqFromValue(value)||typeof value==="object"&&new ObjectSeq(value);if(!seq){throw new TypeError("Expected Array or iterable object of values, or keyed object: "+value)}return seq}function maybeIndexedSeqFromValue(value){return isArrayLike(value)?new ArraySeq(value):isIterator(value)?new IteratorSeq(value):hasIterator(value)?new IterableSeq(value):undefined}function seqIterate(seq,fn,reverse,useKeys){var cache=seq._cache;if(cache){var maxIndex=cache.length-1;for(var ii=0;ii<=maxIndex;ii++){var entry=cache[reverse?maxIndex-ii:ii];if(fn(entry[1],useKeys?entry[0]:ii,seq)===false){return ii+1}}return ii}return seq.__iterateUncached(fn,reverse)}function seqIterator(seq,type,reverse,useKeys){var cache=seq._cache;if(cache){var maxIndex=cache.length-1;var ii=0;return new Iterator(function(){var entry=cache[reverse?maxIndex-ii:ii];return ii++>maxIndex?iteratorDone():iteratorValue(type,useKeys?entry[0]:ii-1,entry[1])})}return seq.__iteratorUncached(type,reverse)}function fromJS(json,converter){return converter?fromJSWith(converter,json,"",{"":json}):fromJSDefault(json)}function fromJSWith(converter,json,key,parentJSON){if(Array.isArray(json)){return converter.call(parentJSON,key,IndexedSeq(json).map(function(v,k){return fromJSWith(converter,v,k,json)}))}if(isPlainObj(json)){return converter.call(parentJSON,key,KeyedSeq(json).map(function(v,k){return fromJSWith(converter,v,k,json)}))}return json}function fromJSDefault(json){if(Array.isArray(json)){return IndexedSeq(json).map(fromJSDefault).toList()}if(isPlainObj(json)){return KeyedSeq(json).map(fromJSDefault).toMap()}return json}function isPlainObj(value){return value&&(value.constructor===Object||value.constructor===undefined)}function is(valueA,valueB){if(valueA===valueB||valueA!==valueA&&valueB!==valueB){return true}if(!valueA||!valueB){return false}if(typeof valueA.valueOf==="function"&&typeof valueB.valueOf==="function"){valueA=valueA.valueOf();valueB=valueB.valueOf();if(valueA===valueB||valueA!==valueA&&valueB!==valueB){return true}if(!valueA||!valueB){return false}}if(typeof valueA.equals==="function"&&typeof valueB.equals==="function"&&valueA.equals(valueB)){return true}return false}function deepEqual(a,b){if(a===b){return true}if(!isIterable(b)||a.size!==undefined&&b.size!==undefined&&a.size!==b.size||a.__hash!==undefined&&b.__hash!==undefined&&a.__hash!==b.__hash||isKeyed(a)!==isKeyed(b)||isIndexed(a)!==isIndexed(b)||isOrdered(a)!==isOrdered(b)){return false}if(a.size===0&&b.size===0){return true}var notAssociative=!isAssociative(a);if(isOrdered(a)){var entries=a.entries();return b.every(function(v,k){var entry=entries.next().value;return entry&&is(entry[1],v)&&(notAssociative||is(entry[0],k))})&&entries.next().done}var flipped=false;if(a.size===undefined){if(b.size===undefined){if(typeof a.cacheResult==="function"){a.cacheResult()}}else{flipped=true;var _=a;a=b;b=_}}var allEqual=true;var bSize=b.__iterate(function(v,k){if(notAssociative?!a.has(v):flipped?!is(v,a.get(k,NOT_SET)):!is(a.get(k,NOT_SET),v)){allEqual=false;return false}});return allEqual&&a.size===bSize}createClass(Repeat,IndexedSeq);function Repeat(value,times){if(!(this instanceof Repeat)){return new Repeat(value,times)}this._value=value;this.size=times===undefined?Infinity:Math.max(0,times);if(this.size===0){if(EMPTY_REPEAT){return EMPTY_REPEAT}EMPTY_REPEAT=this}}Repeat.prototype.toString=function(){if(this.size===0){return"Repeat []"}return"Repeat [ "+this._value+" "+this.size+" times ]"};Repeat.prototype.get=function(index,notSetValue){return this.has(index)?this._value:notSetValue};Repeat.prototype.includes=function(searchValue){return is(this._value,searchValue)};Repeat.prototype.slice=function(begin,end){var size=this.size;return wholeSlice(begin,end,size)?this:new Repeat(this._value,resolveEnd(end,size)-resolveBegin(begin,size))};Repeat.prototype.reverse=function(){return this};Repeat.prototype.indexOf=function(searchValue){if(is(this._value,searchValue)){return 0}return-1};Repeat.prototype.lastIndexOf=function(searchValue){if(is(this._value,searchValue)){return this.size}return-1};Repeat.prototype.__iterate=function(fn,reverse){var this$1=this;for(var ii=0;ii=0&&possibleIndex=0&&indexmaxIndex?iteratorDone():iteratorValue(type,ii++,v)})};Range.prototype.equals=function(other){return other instanceof Range?this._start===other._start&&this._end===other._end&&this._step===other._step:deepEqual(this,other)};var EMPTY_RANGE;createClass(Collection,Iterable);function Collection(){throw TypeError("Abstract")}createClass(KeyedCollection,Collection);function KeyedCollection(){}createClass(IndexedCollection,Collection);function IndexedCollection(){}createClass(SetCollection,Collection);function SetCollection(){}Collection.Keyed=KeyedCollection;Collection.Indexed=IndexedCollection;Collection.Set=SetCollection;var imul=typeof Math.imul==="function"&&Math.imul(4294967295,2)===-2?Math.imul:function imul(a,b){a=a|0;b=b|0;var c=a&65535;var d=b&65535;return c*d+((a>>>16)*d+c*(b>>>16)<<16>>>0)|0};function smi(i32){return i32>>>1&1073741824|i32&3221225471}function hash(o){if(o===false||o===null||o===undefined){return 0}if(typeof o.valueOf==="function"){o=o.valueOf();if(o===false||o===null||o===undefined){return 0}}if(o===true){return 1}var type=typeof o;if(type==="number"){if(o!==o||o===Infinity){return 0}var h=o|0;if(h!==o){h^=o*4294967295}while(o>4294967295){o/=4294967295;h^=o}return smi(h)}if(type==="string"){return o.length>STRING_HASH_CACHE_MIN_STRLEN?cachedHashString(o):hashString(o)}if(typeof o.hashCode==="function"){return o.hashCode()}if(type==="object"){return hashJSObj(o)}if(typeof o.toString==="function"){return hashString(o.toString())}throw new Error("Value type "+type+" cannot be hashed.")}function cachedHashString(string){var hash=stringHashCache[string];if(hash===undefined){hash=hashString(string);if(STRING_HASH_CACHE_SIZE===STRING_HASH_CACHE_MAX_SIZE){STRING_HASH_CACHE_SIZE=0;stringHashCache={}}STRING_HASH_CACHE_SIZE++;stringHashCache[string]=hash}return hash}function hashString(string){var hash=0;for(var ii=0;ii0){switch(node.nodeType){case 1:return node.uniqueID;case 9:return node.documentElement&&node.documentElement.uniqueID}}}var usingWeakMap=typeof WeakMap==="function";var weakMap;if(usingWeakMap){weakMap=new WeakMap}var objHashUID=0;var UID_HASH_KEY="__immutablehash__";if(typeof Symbol==="function"){UID_HASH_KEY=Symbol(UID_HASH_KEY)}var STRING_HASH_CACHE_MIN_STRLEN=16;var STRING_HASH_CACHE_MAX_SIZE=255;var STRING_HASH_CACHE_SIZE=0;var stringHashCache={};function assertNotInfinite(size){invariant(size!==Infinity,"Cannot perform this action with an infinite size.")}createClass(Map,KeyedCollection);function Map(value){return value===null||value===undefined?emptyMap():isMap(value)&&!isOrdered(value)?value:emptyMap().withMutations(function(map){var iter=KeyedIterable(value);assertNotInfinite(iter.size);iter.forEach(function(v,k){return map.set(k,v)})})}Map.of=function(){var keyValues=SLICE$0.call(arguments,0);return emptyMap().withMutations(function(map){for(var i=0;i=keyValues.length){ +throw new Error("Missing value for key: "+keyValues[i])}map.set(keyValues[i],keyValues[i+1])}})};Map.prototype.toString=function(){return this.__toString("Map {","}")};Map.prototype.get=function(k,notSetValue){return this._root?this._root.get(0,undefined,k,notSetValue):notSetValue};Map.prototype.set=function(k,v){return updateMap(this,k,v)};Map.prototype.setIn=function(keyPath,v){return this.updateIn(keyPath,NOT_SET,function(){return v})};Map.prototype.remove=function(k){return updateMap(this,k,NOT_SET)};Map.prototype.deleteIn=function(keyPath){return this.updateIn(keyPath,function(){return NOT_SET})};Map.prototype.update=function(k,notSetValue,updater){return arguments.length===1?k(this):this.updateIn([k],notSetValue,updater)};Map.prototype.updateIn=function(keyPath,notSetValue,updater){if(!updater){updater=notSetValue;notSetValue=undefined}var updatedValue=updateInDeepMap(this,forceIterator(keyPath),notSetValue,updater);return updatedValue===NOT_SET?undefined:updatedValue};Map.prototype.clear=function(){if(this.size===0){return this}if(this.__ownerID){this.size=0;this._root=null;this.__hash=undefined;this.__altered=true;return this}return emptyMap()};Map.prototype.merge=function(){return mergeIntoMapWith(this,undefined,arguments)};Map.prototype.mergeWith=function(merger){var iters=SLICE$0.call(arguments,1);return mergeIntoMapWith(this,merger,iters)};Map.prototype.mergeIn=function(keyPath){var iters=SLICE$0.call(arguments,1);return this.updateIn(keyPath,emptyMap(),function(m){return typeof m.merge==="function"?m.merge.apply(m,iters):iters[iters.length-1]})};Map.prototype.mergeDeep=function(){return mergeIntoMapWith(this,deepMerger,arguments)};Map.prototype.mergeDeepWith=function(merger){var iters=SLICE$0.call(arguments,1);return mergeIntoMapWith(this,deepMergerWith(merger),iters)};Map.prototype.mergeDeepIn=function(keyPath){var iters=SLICE$0.call(arguments,1);return this.updateIn(keyPath,emptyMap(),function(m){return typeof m.mergeDeep==="function"?m.mergeDeep.apply(m,iters):iters[iters.length-1]})};Map.prototype.sort=function(comparator){return OrderedMap(sortFactory(this,comparator))};Map.prototype.sortBy=function(mapper,comparator){return OrderedMap(sortFactory(this,comparator,mapper))};Map.prototype.withMutations=function(fn){var mutable=this.asMutable();fn(mutable);return mutable.wasAltered()?mutable.__ensureOwner(this.__ownerID):this};Map.prototype.asMutable=function(){return this.__ownerID?this:this.__ensureOwner(new OwnerID)};Map.prototype.asImmutable=function(){return this.__ensureOwner()};Map.prototype.wasAltered=function(){return this.__altered};Map.prototype.__iterator=function(type,reverse){return new MapIterator(this,type,reverse)};Map.prototype.__iterate=function(fn,reverse){var this$0=this;var iterations=0;this._root&&this._root.iterate(function(entry){iterations++;return fn(entry[1],entry[0],this$0)},reverse);return iterations};Map.prototype.__ensureOwner=function(ownerID){if(ownerID===this.__ownerID){return this}if(!ownerID){this.__ownerID=ownerID;this.__altered=false;return this}return makeMap(this.size,this._root,ownerID,this.__hash)};function isMap(maybeMap){return!!(maybeMap&&maybeMap[IS_MAP_SENTINEL])}Map.isMap=isMap;var IS_MAP_SENTINEL="@@__IMMUTABLE_MAP__@@";var MapPrototype=Map.prototype;MapPrototype[IS_MAP_SENTINEL]=true;MapPrototype[DELETE]=MapPrototype.remove;MapPrototype.removeIn=MapPrototype.deleteIn;function ArrayMapNode(ownerID,entries){this.ownerID=ownerID;this.entries=entries}ArrayMapNode.prototype.get=function(shift,keyHash,key,notSetValue){var entries=this.entries;for(var ii=0,len=entries.length;ii=MAX_ARRAY_MAP_SIZE){return createNodes(ownerID,entries,key,value)}var isEditable=ownerID&&ownerID===this.ownerID;var newEntries=isEditable?entries:arrCopy(entries);if(exists){if(removed){idx===len-1?newEntries.pop():newEntries[idx]=newEntries.pop()}else{newEntries[idx]=[key,value]}}else{newEntries.push([key,value])}if(isEditable){this.entries=newEntries;return this}return new ArrayMapNode(ownerID,newEntries)};function BitmapIndexedNode(ownerID,bitmap,nodes){this.ownerID=ownerID;this.bitmap=bitmap;this.nodes=nodes}BitmapIndexedNode.prototype.get=function(shift,keyHash,key,notSetValue){if(keyHash===undefined){keyHash=hash(key)}var bit=1<<((shift===0?keyHash:keyHash>>>shift)&MASK);var bitmap=this.bitmap;return(bitmap&bit)===0?notSetValue:this.nodes[popCount(bitmap&bit-1)].get(shift+SHIFT,keyHash,key,notSetValue)};BitmapIndexedNode.prototype.update=function(ownerID,shift,keyHash,key,value,didChangeSize,didAlter){if(keyHash===undefined){keyHash=hash(key)}var keyHashFrag=(shift===0?keyHash:keyHash>>>shift)&MASK;var bit=1<=MAX_BITMAP_INDEXED_SIZE){return expandNodes(ownerID,nodes,bitmap,keyHashFrag,newNode)}if(exists&&!newNode&&nodes.length===2&&isLeafNode(nodes[idx^1])){return nodes[idx^1]}if(exists&&newNode&&nodes.length===1&&isLeafNode(newNode)){return newNode}var isEditable=ownerID&&ownerID===this.ownerID;var newBitmap=exists?newNode?bitmap:bitmap^bit:bitmap|bit;var newNodes=exists?newNode?setIn(nodes,idx,newNode,isEditable):spliceOut(nodes,idx,isEditable):spliceIn(nodes,idx,newNode,isEditable);if(isEditable){this.bitmap=newBitmap;this.nodes=newNodes;return this}return new BitmapIndexedNode(ownerID,newBitmap,newNodes)};function HashArrayMapNode(ownerID,count,nodes){this.ownerID=ownerID;this.count=count;this.nodes=nodes}HashArrayMapNode.prototype.get=function(shift,keyHash,key,notSetValue){if(keyHash===undefined){keyHash=hash(key)}var idx=(shift===0?keyHash:keyHash>>>shift)&MASK;var node=this.nodes[idx];return node?node.get(shift+SHIFT,keyHash,key,notSetValue):notSetValue};HashArrayMapNode.prototype.update=function(ownerID,shift,keyHash,key,value,didChangeSize,didAlter){if(keyHash===undefined){keyHash=hash(key)}var idx=(shift===0?keyHash:keyHash>>>shift)&MASK;var removed=value===NOT_SET;var nodes=this.nodes;var node=nodes[idx];if(removed&&!node){return this}var newNode=updateNode(node,ownerID,shift+SHIFT,keyHash,key,value,didChangeSize,didAlter);if(newNode===node){return this}var newCount=this.count;if(!node){newCount++}else if(!newNode){newCount--;if(newCount>>shift)&MASK;var idx2=(shift===0?keyHash:keyHash>>>shift)&MASK;var newNode;var nodes=idx1===idx2?[mergeIntoNode(node,ownerID,shift+SHIFT,keyHash,entry)]:(newNode=new ValueNode(ownerID,keyHash,entry),idx1>>=1){expandedNodes[ii]=bitmap&1?nodes[count++]:undefined}expandedNodes[including]=node;return new HashArrayMapNode(ownerID,count+1,expandedNodes)}function mergeIntoMapWith(map,merger,iterables){var iters=[];for(var ii=0;ii>1&1431655765);x=(x&858993459)+(x>>2&858993459);x=x+(x>>4)&252645135;x=x+(x>>8);x=x+(x>>16);return x&127}function setIn(array,idx,val,canEdit){var newArray=canEdit?array:arrCopy(array);newArray[idx]=val;return newArray}function spliceIn(array,idx,val,canEdit){var newLen=array.length+1;if(canEdit&&idx+1===newLen){array[idx]=val;return array}var newArray=new Array(newLen);var after=0;for(var ii=0;ii0&&size=0&&index>>level&MASK;if(originIndex>=this.array.length){return new VNode([],ownerID)}var removingFirst=originIndex===0;var newChild;if(level>0){var oldChild=this.array[originIndex];newChild=oldChild&&oldChild.removeBefore(ownerID,level-SHIFT,index);if(newChild===oldChild&&removingFirst){return this}}if(removingFirst&&!newChild){return this}var editable=editableVNode(this,ownerID);if(!removingFirst){for(var ii=0;ii>>level&MASK;if(sizeIndex>=this.array.length){return this}var newChild;if(level>0){var oldChild=this.array[sizeIndex];newChild=oldChild&&oldChild.removeAfter(ownerID,level-SHIFT,index);if(newChild===oldChild&&sizeIndex===this.array.length-1){return this}}var editable=editableVNode(this,ownerID);editable.array.splice(sizeIndex+1);if(newChild){editable.array[sizeIndex]=newChild}return editable};var DONE={};function iterateList(list,reverse){var left=list._origin;var right=list._capacity;var tailPos=getTailOffset(right);var tail=list._tail;return iterateNodeOrLeaf(list._root,list._level,0);function iterateNodeOrLeaf(node,level,offset){return level===0?iterateLeaf(node,offset):iterateNode(node,level,offset)}function iterateLeaf(node,offset){var array=offset===tailPos?tail&&tail.array:node&&node.array;var from=offset>left?0:left-offset;var to=right-offset;if(to>SIZE){to=SIZE}return function(){if(from===to){return DONE}var idx=reverse?--to:from++;return array&&array[idx]}}function iterateNode(node,level,offset){var values;var array=node&&node.array;var from=offset>left?0:left-offset>>level;var to=(right-offset>>level)+1;if(to>SIZE){to=SIZE}return function(){do{if(values){var value=values();if(value!==DONE){return value}values=null}if(from===to){return DONE}var idx=reverse?--to:from++;values=iterateNodeOrLeaf(array&&array[idx],level-SHIFT,offset+(idx<=list.size||index<0){return list.withMutations(function(list){index<0?setListBounds(list,index).set(0,value):setListBounds(list,0,index+1).set(index,value)})}index+=list._origin;var newTail=list._tail;var newRoot=list._root;var didAlter=MakeRef(DID_ALTER);if(index>=getTailOffset(list._capacity)){newTail=updateVNode(newTail,list.__ownerID,0,index,value,didAlter)}else{newRoot=updateVNode(newRoot,list.__ownerID,list._level,index,value,didAlter)}if(!didAlter.value){return list}if(list.__ownerID){list._root=newRoot;list._tail=newTail;list.__hash=undefined;list.__altered=true;return list}return makeList(list._origin,list._capacity,list._level,newRoot,newTail)}function updateVNode(node,ownerID,level,index,value,didAlter){var idx=index>>>level&MASK;var nodeHas=node&&idx0){var lowerNode=node&&node.array[idx];var newLowerNode=updateVNode(lowerNode,ownerID,level-SHIFT,index,value,didAlter);if(newLowerNode===lowerNode){return node}newNode=editableVNode(node,ownerID);newNode.array[idx]=newLowerNode;return newNode}if(nodeHas&&node.array[idx]===value){return node}SetRef(didAlter);newNode=editableVNode(node,ownerID);if(value===undefined&&idx===newNode.array.length-1){newNode.array.pop()}else{newNode.array[idx]=value}return newNode}function editableVNode(node,ownerID){if(ownerID&&node&&ownerID===node.ownerID){return node}return new VNode(node?node.array.slice():[],ownerID)}function listNodeFor(list,rawIndex){if(rawIndex>=getTailOffset(list._capacity)){return list._tail}if(rawIndex<1<0){node=node.array[rawIndex>>>level&MASK];level-=SHIFT}return node}}function setListBounds(list,begin,end){if(begin!==undefined){begin=begin|0}if(end!==undefined){end=end|0}var owner=list.__ownerID||new OwnerID;var oldOrigin=list._origin;var oldCapacity=list._capacity;var newOrigin=oldOrigin+begin;var newCapacity=end===undefined?oldCapacity:end<0?oldCapacity+end:oldOrigin+end;if(newOrigin===oldOrigin&&newCapacity===oldCapacity){return list}if(newOrigin>=newCapacity){return list.clear()}var newLevel=list._level;var newRoot=list._root;var offsetShift=0;while(newOrigin+offsetShift<0){newRoot=new VNode(newRoot&&newRoot.array.length?[undefined,newRoot]:[],owner);newLevel+=SHIFT;offsetShift+=1<=1<oldTailOffset?new VNode([],owner):oldTail;if(oldTail&&newTailOffset>oldTailOffset&&newOriginSHIFT;level-=SHIFT){var idx=oldTailOffset>>>level&MASK;node=node.array[idx]=editableVNode(node.array[idx],owner)}node.array[oldTailOffset>>>SHIFT&MASK]=oldTail}if(newCapacity=newTailOffset){newOrigin-=newTailOffset;newCapacity-=newTailOffset;newLevel=SHIFT;newRoot=null;newTail=newTail&&newTail.removeBefore(owner,0,newOrigin)}else if(newOrigin>oldOrigin||newTailOffset>>newLevel&MASK;if(beginIndex!==newTailOffset>>>newLevel&MASK){break}if(beginIndex){offsetShift+=(1<oldOrigin){newRoot=newRoot.removeBefore(owner,newLevel,newOrigin-offsetShift)}if(newRoot&&newTailOffsetmaxSize){maxSize=iter.size}if(!isIterable(value)){iter=iter.map(function(v){return fromJS(v)})}iters.push(iter)}if(maxSize>list.size){list=list.setSize(maxSize)}return mergeIntoCollectionWith(list,merger,iters)}function getTailOffset(size){return size>>SHIFT<=SIZE&&list.size>=map.size*2){newList=list.filter(function(entry,idx){return entry!==undefined&&i!==idx});newMap=newList.toKeyedSeq().map(function(entry){return entry[0]}).flip().toMap();if(omap.__ownerID){newMap.__ownerID=newList.__ownerID=omap.__ownerID}}else{newMap=map.remove(k);newList=i===list.size-1?list.pop():list.set(i,undefined)}}else{if(has){if(v===list.get(i)[1]){return omap}newMap=map;newList=list.set(i,[k,v])}else{newMap=map.set(k,list.size);newList=list.set(list.size,[k,v])}}if(omap.__ownerID){omap.size=newMap.size;omap._map=newMap;omap._list=newList;omap.__hash=undefined;return omap}return makeOrderedMap(newMap,newList)}createClass(ToKeyedSequence,KeyedSeq);function ToKeyedSequence(indexed,useKeys){this._iter=indexed;this._useKeys=useKeys;this.size=indexed.size}ToKeyedSequence.prototype.get=function(key,notSetValue){return this._iter.get(key,notSetValue)};ToKeyedSequence.prototype.has=function(key){return this._iter.has(key)};ToKeyedSequence.prototype.valueSeq=function(){return this._iter.valueSeq()};ToKeyedSequence.prototype.reverse=function(){var this$0=this;var reversedSequence=reverseFactory(this,true);if(!this._useKeys){reversedSequence.valueSeq=function(){return this$0._iter.toSeq().reverse()}}return reversedSequence};ToKeyedSequence.prototype.map=function(mapper,context){var this$0=this;var mappedSequence=mapFactory(this,mapper,context);if(!this._useKeys){mappedSequence.valueSeq=function(){return this$0._iter.toSeq().map(mapper,context)}}return mappedSequence};ToKeyedSequence.prototype.__iterate=function(fn,reverse){var this$0=this;var ii;return this._iter.__iterate(this._useKeys?function(v,k){return fn(v,k,this$0)}:(ii=reverse?resolveSize(this):0,function(v){return fn(v,reverse?--ii:ii++,this$0)}),reverse)};ToKeyedSequence.prototype.__iterator=function(type,reverse){if(this._useKeys){return this._iter.__iterator(type,reverse)}var iterator=this._iter.__iterator(ITERATE_VALUES,reverse); + +var ii=reverse?resolveSize(this):0;return new Iterator(function(){var step=iterator.next();return step.done?step:iteratorValue(type,reverse?--ii:ii++,step.value,step)})};ToKeyedSequence.prototype[IS_ORDERED_SENTINEL]=true;createClass(ToIndexedSequence,IndexedSeq);function ToIndexedSequence(iter){this._iter=iter;this.size=iter.size}ToIndexedSequence.prototype.includes=function(value){return this._iter.includes(value)};ToIndexedSequence.prototype.__iterate=function(fn,reverse){var this$0=this;var iterations=0;return this._iter.__iterate(function(v){return fn(v,iterations++,this$0)},reverse)};ToIndexedSequence.prototype.__iterator=function(type,reverse){var iterator=this._iter.__iterator(ITERATE_VALUES,reverse);var iterations=0;return new Iterator(function(){var step=iterator.next();return step.done?step:iteratorValue(type,iterations++,step.value,step)})};createClass(ToSetSequence,SetSeq);function ToSetSequence(iter){this._iter=iter;this.size=iter.size}ToSetSequence.prototype.has=function(key){return this._iter.includes(key)};ToSetSequence.prototype.__iterate=function(fn,reverse){var this$0=this;return this._iter.__iterate(function(v){return fn(v,v,this$0)},reverse)};ToSetSequence.prototype.__iterator=function(type,reverse){var iterator=this._iter.__iterator(ITERATE_VALUES,reverse);return new Iterator(function(){var step=iterator.next();return step.done?step:iteratorValue(type,step.value,step.value,step)})};createClass(FromEntriesSequence,KeyedSeq);function FromEntriesSequence(entries){this._iter=entries;this.size=entries.size}FromEntriesSequence.prototype.entrySeq=function(){return this._iter.toSeq()};FromEntriesSequence.prototype.__iterate=function(fn,reverse){var this$0=this;return this._iter.__iterate(function(entry){if(entry){validateEntry(entry);var indexedIterable=isIterable(entry);return fn(indexedIterable?entry.get(1):entry[1],indexedIterable?entry.get(0):entry[0],this$0)}},reverse)};FromEntriesSequence.prototype.__iterator=function(type,reverse){var iterator=this._iter.__iterator(ITERATE_VALUES,reverse);return new Iterator(function(){while(true){var step=iterator.next();if(step.done){return step}var entry=step.value;if(entry){validateEntry(entry);var indexedIterable=isIterable(entry);return iteratorValue(type,indexedIterable?entry.get(0):entry[0],indexedIterable?entry.get(1):entry[1],step)}}})};ToIndexedSequence.prototype.cacheResult=ToKeyedSequence.prototype.cacheResult=ToSetSequence.prototype.cacheResult=FromEntriesSequence.prototype.cacheResult=cacheResultThrough;function flipFactory(iterable){var flipSequence=makeSequence(iterable);flipSequence._iter=iterable;flipSequence.size=iterable.size;flipSequence.flip=function(){return iterable};flipSequence.reverse=function(){var reversedSequence=iterable.reverse.apply(this);reversedSequence.flip=function(){return iterable.reverse()};return reversedSequence};flipSequence.has=function(key){return iterable.includes(key)};flipSequence.includes=function(key){return iterable.has(key)};flipSequence.cacheResult=cacheResultThrough;flipSequence.__iterateUncached=function(fn,reverse){var this$0=this;return iterable.__iterate(function(v,k){return fn(k,v,this$0)!==false},reverse)};flipSequence.__iteratorUncached=function(type,reverse){if(type===ITERATE_ENTRIES){var iterator=iterable.__iterator(type,reverse);return new Iterator(function(){var step=iterator.next();if(!step.done){var k=step.value[0];step.value[0]=step.value[1];step.value[1]=k}return step})}return iterable.__iterator(type===ITERATE_VALUES?ITERATE_KEYS:ITERATE_VALUES,reverse)};return flipSequence}function mapFactory(iterable,mapper,context){var mappedSequence=makeSequence(iterable);mappedSequence.size=iterable.size;mappedSequence.has=function(key){return iterable.has(key)};mappedSequence.get=function(key,notSetValue){var v=iterable.get(key,NOT_SET);return v===NOT_SET?notSetValue:mapper.call(context,v,key,iterable)};mappedSequence.__iterateUncached=function(fn,reverse){var this$0=this;return iterable.__iterate(function(v,k,c){return fn(mapper.call(context,v,k,c),k,this$0)!==false},reverse)};mappedSequence.__iteratorUncached=function(type,reverse){var iterator=iterable.__iterator(ITERATE_ENTRIES,reverse);return new Iterator(function(){var step=iterator.next();if(step.done){return step}var entry=step.value;var key=entry[0];return iteratorValue(type,key,mapper.call(context,entry[1],key,iterable),step)})};return mappedSequence}function reverseFactory(iterable,useKeys){var reversedSequence=makeSequence(iterable);reversedSequence._iter=iterable;reversedSequence.size=iterable.size;reversedSequence.reverse=function(){return iterable};if(iterable.flip){reversedSequence.flip=function(){var flipSequence=flipFactory(iterable);flipSequence.reverse=function(){return iterable.flip()};return flipSequence}}reversedSequence.get=function(key,notSetValue){return iterable.get(useKeys?key:-1-key,notSetValue)};reversedSequence.has=function(key){return iterable.has(useKeys?key:-1-key)};reversedSequence.includes=function(value){return iterable.includes(value)};reversedSequence.cacheResult=cacheResultThrough;reversedSequence.__iterate=function(fn,reverse){var this$0=this;return iterable.__iterate(function(v,k){return fn(v,k,this$0)},!reverse)};reversedSequence.__iterator=function(type,reverse){return iterable.__iterator(type,!reverse)};return reversedSequence}function filterFactory(iterable,predicate,context,useKeys){var filterSequence=makeSequence(iterable);if(useKeys){filterSequence.has=function(key){var v=iterable.get(key,NOT_SET);return v!==NOT_SET&&!!predicate.call(context,v,key,iterable)};filterSequence.get=function(key,notSetValue){var v=iterable.get(key,NOT_SET);return v!==NOT_SET&&predicate.call(context,v,key,iterable)?v:notSetValue}}filterSequence.__iterateUncached=function(fn,reverse){var this$0=this;var iterations=0;iterable.__iterate(function(v,k,c){if(predicate.call(context,v,k,c)){iterations++;return fn(v,useKeys?k:iterations-1,this$0)}},reverse);return iterations};filterSequence.__iteratorUncached=function(type,reverse){var iterator=iterable.__iterator(ITERATE_ENTRIES,reverse);var iterations=0;return new Iterator(function(){while(true){var step=iterator.next();if(step.done){return step}var entry=step.value;var key=entry[0];var value=entry[1];if(predicate.call(context,value,key,iterable)){return iteratorValue(type,useKeys?key:iterations++,value,step)}}})};return filterSequence}function countByFactory(iterable,grouper,context){var groups=Map().asMutable();iterable.__iterate(function(v,k){groups.update(grouper.call(context,v,k,iterable),0,function(a){return a+1})});return groups.asImmutable()}function groupByFactory(iterable,grouper,context){var isKeyedIter=isKeyed(iterable);var groups=(isOrdered(iterable)?OrderedMap():Map()).asMutable();iterable.__iterate(function(v,k){groups.update(grouper.call(context,v,k,iterable),function(a){return a=a||[],a.push(isKeyedIter?[k,v]:v),a})});var coerce=iterableClass(iterable);return groups.map(function(arr){return reify(iterable,coerce(arr))})}function sliceFactory(iterable,begin,end,useKeys){var originalSize=iterable.size;if(begin!==undefined){begin=begin|0}if(end!==undefined){if(end===Infinity){end=originalSize}else{end=end|0}}if(wholeSlice(begin,end,originalSize)){return iterable}var resolvedBegin=resolveBegin(begin,originalSize);var resolvedEnd=resolveEnd(end,originalSize);if(resolvedBegin!==resolvedBegin||resolvedEnd!==resolvedEnd){return sliceFactory(iterable.toSeq().cacheResult(),begin,end,useKeys)}var resolvedSize=resolvedEnd-resolvedBegin;var sliceSize;if(resolvedSize===resolvedSize){sliceSize=resolvedSize<0?0:resolvedSize}var sliceSeq=makeSequence(iterable);sliceSeq.size=sliceSize===0?sliceSize:iterable.size&&sliceSize||undefined;if(!useKeys&&isSeq(iterable)&&sliceSize>=0){sliceSeq.get=function(index,notSetValue){index=wrapIndex(this,index);return index>=0&&indexsliceSize){return iteratorDone()}var step=iterator.next();if(useKeys||type===ITERATE_VALUES){return step}else if(type===ITERATE_KEYS){return iteratorValue(type,iterations-1,undefined,step)}else{return iteratorValue(type,iterations-1,step.value[1],step)}})};return sliceSeq}function takeWhileFactory(iterable,predicate,context){var takeSequence=makeSequence(iterable);takeSequence.__iterateUncached=function(fn,reverse){var this$0=this;if(reverse){return this.cacheResult().__iterate(fn,reverse)}var iterations=0;iterable.__iterate(function(v,k,c){return predicate.call(context,v,k,c)&&++iterations&&fn(v,k,this$0)});return iterations};takeSequence.__iteratorUncached=function(type,reverse){var this$0=this;if(reverse){return this.cacheResult().__iterator(type,reverse)}var iterator=iterable.__iterator(ITERATE_ENTRIES,reverse);var iterating=true;return new Iterator(function(){if(!iterating){return iteratorDone()}var step=iterator.next();if(step.done){return step}var entry=step.value;var k=entry[0];var v=entry[1];if(!predicate.call(context,v,k,this$0)){iterating=false;return iteratorDone()}return type===ITERATE_ENTRIES?step:iteratorValue(type,k,v,step)})};return takeSequence}function skipWhileFactory(iterable,predicate,context,useKeys){var skipSequence=makeSequence(iterable);skipSequence.__iterateUncached=function(fn,reverse){var this$0=this;if(reverse){return this.cacheResult().__iterate(fn,reverse)}var isSkipping=true;var iterations=0;iterable.__iterate(function(v,k,c){if(!(isSkipping&&(isSkipping=predicate.call(context,v,k,c)))){iterations++;return fn(v,useKeys?k:iterations-1,this$0)}});return iterations};skipSequence.__iteratorUncached=function(type,reverse){var this$0=this;if(reverse){return this.cacheResult().__iterator(type,reverse)}var iterator=iterable.__iterator(ITERATE_ENTRIES,reverse);var skipping=true;var iterations=0;return new Iterator(function(){var step,k,v;do{step=iterator.next();if(step.done){if(useKeys||type===ITERATE_VALUES){return step}else if(type===ITERATE_KEYS){return iteratorValue(type,iterations++,undefined,step)}else{return iteratorValue(type,iterations++,step.value[1],step)}}var entry=step.value;k=entry[0];v=entry[1];skipping&&(skipping=predicate.call(context,v,k,this$0))}while(skipping);return type===ITERATE_ENTRIES?step:iteratorValue(type,k,v,step)})};return skipSequence}function concatFactory(iterable,values){var isKeyedIterable=isKeyed(iterable);var iters=[iterable].concat(values).map(function(v){if(!isIterable(v)){v=isKeyedIterable?keyedSeqFromValue(v):indexedSeqFromValue(Array.isArray(v)?v:[v])}else if(isKeyedIterable){v=KeyedIterable(v)}return v}).filter(function(v){return v.size!==0});if(iters.length===0){return iterable}if(iters.length===1){var singleton=iters[0];if(singleton===iterable||isKeyedIterable&&isKeyed(singleton)||isIndexed(iterable)&&isIndexed(singleton)){return singleton}}var concatSeq=new ArraySeq(iters);if(isKeyedIterable){concatSeq=concatSeq.toKeyedSeq()}else if(!isIndexed(iterable)){concatSeq=concatSeq.toSetSeq()}concatSeq=concatSeq.flatten(true);concatSeq.size=iters.reduce(function(sum,seq){if(sum!==undefined){var size=seq.size;if(size!==undefined){return sum+size}}},0);return concatSeq}function flattenFactory(iterable,depth,useKeys){var flatSequence=makeSequence(iterable);flatSequence.__iterateUncached=function(fn,reverse){var iterations=0;var stopped=false;function flatDeep(iter,currentDepth){var this$0=this;iter.__iterate(function(v,k){if((!depth||currentDepth0}function zipWithFactory(keyIter,zipper,iters){var zipSequence=makeSequence(keyIter);zipSequence.size=new ArraySeq(iters).map(function(i){return i.size}).min();zipSequence.__iterate=function(fn,reverse){var this$1=this;var iterator=this.__iterator(ITERATE_VALUES,reverse);var step;var iterations=0;while(!(step=iterator.next()).done){if(fn(step.value,iterations++,this$1)===false){break}}return iterations};zipSequence.__iteratorUncached=function(type,reverse){var iterators=iters.map(function(i){return i=Iterable(i),getIterator(reverse?i.reverse():i)});var iterations=0;var isDone=false;return new Iterator(function(){var steps;if(!isDone){steps=iterators.map(function(i){return i.next()});isDone=steps.some(function(s){return s.done})}if(isDone){return iteratorDone()}return iteratorValue(type,iterations++,zipper.apply(null,steps.map(function(s){return s.value})))})};return zipSequence}function reify(iter,seq){return isSeq(iter)?seq:iter.constructor(seq)}function validateEntry(entry){if(entry!==Object(entry)){throw new TypeError("Expected [K, V] tuple: "+entry)}}function resolveSize(iter){assertNotInfinite(iter.size);return ensureSize(iter)}function iterableClass(iterable){return isKeyed(iterable)?KeyedIterable:isIndexed(iterable)?IndexedIterable:SetIterable}function makeSequence(iterable){return Object.create((isKeyed(iterable)?KeyedSeq:isIndexed(iterable)?IndexedSeq:SetSeq).prototype)}function cacheResultThrough(){if(this._iter.cacheResult){this._iter.cacheResult();this.size=this._iter.size;return this}else{return Seq.prototype.cacheResult.call(this)}}function defaultComparator(a,b){return a>b?1:a=0;ii--){head={value:arguments$1[ii],next:head}}if(this.__ownerID){this.size=newSize;this._head=head;this.__hash=undefined;this.__altered=true;return this}return makeStack(newSize,head)};Stack.prototype.pushAll=function(iter){iter=IndexedIterable(iter);if(iter.size===0){return this}assertNotInfinite(iter.size);var newSize=this.size;var head=this._head;iter.reverse().forEach(function(value){newSize++;head={value:value,next:head}});if(this.__ownerID){this.size=newSize;this._head=head;this.__hash=undefined;this.__altered=true;return this}return makeStack(newSize,head)};Stack.prototype.pop=function(){return this.slice(1)};Stack.prototype.unshift=function(){return this.push.apply(this,arguments)};Stack.prototype.unshiftAll=function(iter){return this.pushAll(iter)};Stack.prototype.shift=function(){return this.pop.apply(this,arguments)};Stack.prototype.clear=function(){if(this.size===0){return this}if(this.__ownerID){this.size=0;this._head=undefined;this.__hash=undefined;this.__altered=true;return this}return emptyStack()};Stack.prototype.slice=function(begin,end){if(wholeSlice(begin,end,this.size)){return this}var resolvedBegin=resolveBegin(begin,this.size);var resolvedEnd=resolveEnd(end,this.size);if(resolvedEnd!==this.size){return IndexedCollection.prototype.slice.call(this,begin,end)}var newSize=this.size-resolvedBegin;var head=this._head;while(resolvedBegin--){head=head.next}if(this.__ownerID){this.size=newSize;this._head=head;this.__hash=undefined;this.__altered=true;return this}return makeStack(newSize,head)};Stack.prototype.__ensureOwner=function(ownerID){if(ownerID===this.__ownerID){return this}if(!ownerID){this.__ownerID=ownerID;this.__altered=false;return this}return makeStack(this.size,this._head,ownerID,this.__hash)};Stack.prototype.__iterate=function(fn,reverse){var this$1=this;if(reverse){return this.reverse().__iterate(fn)}var iterations=0;var node=this._head;while(node){if(fn(node.value,iterations++,this$1)===false){break}node=node.next}return iterations};Stack.prototype.__iterator=function(type,reverse){if(reverse){return this.reverse().__iterator(type)}var iterations=0;var node=this._head;return new Iterator(function(){if(node){var value=node.value;node=node.next;return iteratorValue(type,iterations++,value)}return iteratorDone()})};function isStack(maybeStack){return!!(maybeStack&&maybeStack[IS_STACK_SENTINEL])}Stack.isStack=isStack;var IS_STACK_SENTINEL="@@__IMMUTABLE_STACK__@@";var StackPrototype=Stack.prototype;StackPrototype[IS_STACK_SENTINEL]=true;StackPrototype.withMutations=MapPrototype.withMutations;StackPrototype.asMutable=MapPrototype.asMutable;StackPrototype.asImmutable=MapPrototype.asImmutable;StackPrototype.wasAltered=MapPrototype.wasAltered;function makeStack(size,head,ownerID,hash){var map=Object.create(StackPrototype);map.size=size;map._head=head;map.__ownerID=ownerID;map.__hash=hash;map.__altered=false;return map}var EMPTY_STACK;function emptyStack(){return EMPTY_STACK||(EMPTY_STACK=makeStack(0))}function mixin(ctor,methods){var keyCopier=function(key){ctor.prototype[key]=methods[key]};Object.keys(methods).forEach(keyCopier);Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(methods).forEach(keyCopier);return ctor}Iterable.Iterator=Iterator;mixin(Iterable,{toArray:function(){assertNotInfinite(this.size);var array=new Array(this.size||0);this.valueSeq().__iterate(function(v,i){array[i]=v});return array},toIndexedSeq:function(){return new ToIndexedSequence(this)},toJS:function(){return this.toSeq().map(function(value){return value&&typeof value.toJS==="function"?value.toJS():value}).__toJS()},toJSON:function(){return this.toSeq().map(function(value){return value&&typeof value.toJSON==="function"?value.toJSON():value}).__toJS()},toKeyedSeq:function(){return new ToKeyedSequence(this,true)},toMap:function(){return Map(this.toKeyedSeq())},toObject:function(){assertNotInfinite(this.size);var object={};this.__iterate(function(v,k){object[k]=v});return object},toOrderedMap:function(){return OrderedMap(this.toKeyedSeq())},toOrderedSet:function(){return OrderedSet(isKeyed(this)?this.valueSeq():this)},toSet:function(){return Set(isKeyed(this)?this.valueSeq():this)},toSetSeq:function(){return new ToSetSequence(this)},toSeq:function(){return isIndexed(this)?this.toIndexedSeq():isKeyed(this)?this.toKeyedSeq():this.toSetSeq()},toStack:function(){return Stack(isKeyed(this)?this.valueSeq():this)},toList:function(){return List(isKeyed(this)?this.valueSeq():this)},toString:function(){return"[Iterable]"},__toString:function(head,tail){if(this.size===0){return head+tail}return head+" "+this.toSeq().map(this.__toStringMapper).join(", ")+" "+tail},concat:function(){var values=SLICE$0.call(arguments,0);return reify(this,concatFactory(this,values))},includes:function(searchValue){return this.some(function(value){return is(value,searchValue)})},entries:function(){return this.__iterator(ITERATE_ENTRIES)},every:function(predicate,context){assertNotInfinite(this.size);var returnValue=true;this.__iterate(function(v,k,c){if(!predicate.call(context,v,k,c)){returnValue=false;return false}});return returnValue},filter:function(predicate,context){return reify(this,filterFactory(this,predicate,context,true))},find:function(predicate,context,notSetValue){var entry=this.findEntry(predicate,context);return entry?entry[1]:notSetValue},forEach:function(sideEffect,context){assertNotInfinite(this.size);return this.__iterate(context?sideEffect.bind(context):sideEffect)},join:function(separator){assertNotInfinite(this.size);separator=separator!==undefined?""+separator:",";var joined="";var isFirst=true;this.__iterate(function(v){isFirst?isFirst=false:joined+=separator;joined+=v!==null&&v!==undefined?v.toString():""});return joined},keys:function(){return this.__iterator(ITERATE_KEYS)},map:function(mapper,context){return reify(this,mapFactory(this,mapper,context))},reduce:function(reducer,initialReduction,context){assertNotInfinite(this.size);var reduction;var useFirst;if(arguments.length<2){useFirst=true}else{reduction=initialReduction}this.__iterate(function(v,k,c){if(useFirst){useFirst=false;reduction=v}else{reduction=reducer.call(context,reduction,v,k,c)} +});return reduction},reduceRight:function(reducer,initialReduction,context){var reversed=this.toKeyedSeq().reverse();return reversed.reduce.apply(reversed,arguments)},reverse:function(){return reify(this,reverseFactory(this,true))},slice:function(begin,end){return reify(this,sliceFactory(this,begin,end,true))},some:function(predicate,context){return!this.every(not(predicate),context)},sort:function(comparator){return reify(this,sortFactory(this,comparator))},values:function(){return this.__iterator(ITERATE_VALUES)},butLast:function(){return this.slice(0,-1)},isEmpty:function(){return this.size!==undefined?this.size===0:!this.some(function(){return true})},count:function(predicate,context){return ensureSize(predicate?this.toSeq().filter(predicate,context):this)},countBy:function(grouper,context){return countByFactory(this,grouper,context)},equals:function(other){return deepEqual(this,other)},entrySeq:function(){var iterable=this;if(iterable._cache){return new ArraySeq(iterable._cache)}var entriesSequence=iterable.toSeq().map(entryMapper).toIndexedSeq();entriesSequence.fromEntrySeq=function(){return iterable.toSeq()};return entriesSequence},filterNot:function(predicate,context){return this.filter(not(predicate),context)},findEntry:function(predicate,context,notSetValue){var found=notSetValue;this.__iterate(function(v,k,c){if(predicate.call(context,v,k,c)){found=[k,v];return false}});return found},findKey:function(predicate,context){var entry=this.findEntry(predicate,context);return entry&&entry[0]},findLast:function(predicate,context,notSetValue){return this.toKeyedSeq().reverse().find(predicate,context,notSetValue)},findLastEntry:function(predicate,context,notSetValue){return this.toKeyedSeq().reverse().findEntry(predicate,context,notSetValue)},findLastKey:function(predicate,context){return this.toKeyedSeq().reverse().findKey(predicate,context)},first:function(){return this.find(returnTrue)},flatMap:function(mapper,context){return reify(this,flatMapFactory(this,mapper,context))},flatten:function(depth){return reify(this,flattenFactory(this,depth,true))},fromEntrySeq:function(){return new FromEntriesSequence(this)},get:function(searchKey,notSetValue){return this.find(function(_,key){return is(key,searchKey)},undefined,notSetValue)},getIn:function(searchKeyPath,notSetValue){var nested=this;var iter=forceIterator(searchKeyPath);var step;while(!(step=iter.next()).done){var key=step.value;nested=nested&&nested.get?nested.get(key,NOT_SET):NOT_SET;if(nested===NOT_SET){return notSetValue}}return nested},groupBy:function(grouper,context){return groupByFactory(this,grouper,context)},has:function(searchKey){return this.get(searchKey,NOT_SET)!==NOT_SET},hasIn:function(searchKeyPath){return this.getIn(searchKeyPath,NOT_SET)!==NOT_SET},isSubset:function(iter){iter=typeof iter.includes==="function"?iter:Iterable(iter);return this.every(function(value){return iter.includes(value)})},isSuperset:function(iter){iter=typeof iter.isSubset==="function"?iter:Iterable(iter);return iter.isSubset(this)},keyOf:function(searchValue){return this.findKey(function(value){return is(value,searchValue)})},keySeq:function(){return this.toSeq().map(keyMapper).toIndexedSeq()},last:function(){return this.toSeq().reverse().first()},lastKeyOf:function(searchValue){return this.toKeyedSeq().reverse().keyOf(searchValue)},max:function(comparator){return maxFactory(this,comparator)},maxBy:function(mapper,comparator){return maxFactory(this,comparator,mapper)},min:function(comparator){return maxFactory(this,comparator?neg(comparator):defaultNegComparator)},minBy:function(mapper,comparator){return maxFactory(this,comparator?neg(comparator):defaultNegComparator,mapper)},rest:function(){return this.slice(1)},skip:function(amount){return this.slice(Math.max(0,amount))},skipLast:function(amount){return reify(this,this.toSeq().reverse().skip(amount).reverse())},skipWhile:function(predicate,context){return reify(this,skipWhileFactory(this,predicate,context,true))},skipUntil:function(predicate,context){return this.skipWhile(not(predicate),context)},sortBy:function(mapper,comparator){return reify(this,sortFactory(this,comparator,mapper))},take:function(amount){return this.slice(0,Math.max(0,amount))},takeLast:function(amount){return reify(this,this.toSeq().reverse().take(amount).reverse())},takeWhile:function(predicate,context){return reify(this,takeWhileFactory(this,predicate,context))},takeUntil:function(predicate,context){return this.takeWhile(not(predicate),context)},valueSeq:function(){return this.toIndexedSeq()},hashCode:function(){return this.__hash||(this.__hash=hashIterable(this))}});var IterablePrototype=Iterable.prototype;IterablePrototype[IS_ITERABLE_SENTINEL]=true;IterablePrototype[ITERATOR_SYMBOL]=IterablePrototype.values;IterablePrototype.__toJS=IterablePrototype.toArray;IterablePrototype.__toStringMapper=quoteString;IterablePrototype.inspect=IterablePrototype.toSource=function(){return this.toString()};IterablePrototype.chain=IterablePrototype.flatMap;IterablePrototype.contains=IterablePrototype.includes;mixin(KeyedIterable,{flip:function(){return reify(this,flipFactory(this))},mapEntries:function(mapper,context){var this$0=this;var iterations=0;return reify(this,this.toSeq().map(function(v,k){return mapper.call(context,[k,v],iterations++,this$0)}).fromEntrySeq())},mapKeys:function(mapper,context){var this$0=this;return reify(this,this.toSeq().flip().map(function(k,v){return mapper.call(context,k,v,this$0)}).flip())}});var KeyedIterablePrototype=KeyedIterable.prototype;KeyedIterablePrototype[IS_KEYED_SENTINEL]=true;KeyedIterablePrototype[ITERATOR_SYMBOL]=IterablePrototype.entries;KeyedIterablePrototype.__toJS=IterablePrototype.toObject;KeyedIterablePrototype.__toStringMapper=function(v,k){return JSON.stringify(k)+": "+quoteString(v)};mixin(IndexedIterable,{toKeyedSeq:function(){return new ToKeyedSequence(this,false)},filter:function(predicate,context){return reify(this,filterFactory(this,predicate,context,false))},findIndex:function(predicate,context){var entry=this.findEntry(predicate,context);return entry?entry[0]:-1},indexOf:function(searchValue){var key=this.keyOf(searchValue);return key===undefined?-1:key},lastIndexOf:function(searchValue){var key=this.lastKeyOf(searchValue);return key===undefined?-1:key},reverse:function(){return reify(this,reverseFactory(this,false))},slice:function(begin,end){return reify(this,sliceFactory(this,begin,end,false))},splice:function(index,removeNum){var numArgs=arguments.length;removeNum=Math.max(removeNum|0,0);if(numArgs===0||numArgs===2&&!removeNum){return this}index=resolveBegin(index,index<0?this.count():this.size);var spliced=this.slice(0,index);return reify(this,numArgs===1?spliced:spliced.concat(arrCopy(arguments,2),this.slice(index+removeNum)))},findLastIndex:function(predicate,context){var entry=this.findLastEntry(predicate,context);return entry?entry[0]:-1},first:function(){return this.get(0)},flatten:function(depth){return reify(this,flattenFactory(this,depth,false))},get:function(index,notSetValue){index=wrapIndex(this,index);return index<0||(this.size===Infinity||this.size!==undefined&&index>this.size)?notSetValue:this.find(function(_,key){return key===index},undefined,notSetValue)},has:function(index){index=wrapIndex(this,index);return index>=0&&(this.size!==undefined?this.size===Infinity||indexb?-1:0}function hashIterable(iterable){if(iterable.size===Infinity){return 0}var ordered=isOrdered(iterable);var keyed=isKeyed(iterable);var h=ordered?1:0;var size=iterable.__iterate(keyed?ordered?function(v,k){h=31*h+hashMerge(hash(v),hash(k))|0}:function(v,k){h=h+hashMerge(hash(v),hash(k))|0}:ordered?function(v){h=31*h+hash(v)|0}:function(v){h=h+hash(v)|0});return murmurHashOfSize(size,h)}function murmurHashOfSize(size,h){h=imul(h,3432918353);h=imul(h<<15|h>>>-15,461845907);h=imul(h<<13|h>>>-13,5);h=(h+3864292196|0)^size;h=imul(h^h>>>16,2246822507);h=imul(h^h>>>13,3266489909);h=smi(h^h>>>16);return h}function hashMerge(a,b){return a^b+2654435769+(a<<6)+(a>>2)|0}var Immutable={Iterable:Iterable,Seq:Seq,Collection:Collection,Map:Map,OrderedMap:OrderedMap,List:List,Stack:Stack,Set:Set,OrderedSet:OrderedSet,Record:Record,Range:Range,Repeat:Repeat,is:is,fromJS:fromJS};return Immutable})});function Zipper(left,right){return{left:left,right:right}}function fromList(xs){return Zipper(immutable.Stack(),immutable.Stack(xs))}function focus(z,def_val){var head=z.right.first();if(head){return head}return def_val}function reset(z){return Zipper(immutable.Stack(),z.left.reverse().concat(z.right))}function swap(z){return Zipper(immutable.Stack(z.right.reverse().shift()),immutable.Stack([z.right.last()]))}function goRight(z){if(z.right.size==1){return reset(z)}return Zipper(z.left.unshift(z.right.first()),z.right.shift())}function goLeft(z){if(z.left.size==0){return swap(z)}return Zipper(z.left.shift(),z.right.unshift(z.left.first()))}var empty$3=fromList([]);var Z={Zipper:fromList,focus:focus,goRight:goRight,goLeft:goLeft,empty:empty$3,fromList:fromList};riot$1.tag2("projects",'

Projects for {this.username}

{this.project().name}

See on github

{this.project().description}

{this.project().language}

',"","",function(opts){var cycle_timeout=12;this.username="Wes";var self=this;self.transition="";self.swipe=true;var empty_project={name:"",html_url:"",description:"",language:""};this.project=function(){return Z.focus(self.opts.state.projects,empty_project)}.bind(this);this.next=function(){self.update({swipe:false});self.opts.state.projects=Z.goRight(self.opts.state.projects);self.update({transition:"fadeInRight",swipe:true})}.bind(this);this.prev=function(){self.update({swipe:false});self.opts.state.projects=Z.goLeft(self.opts.state.projects);self.update({transition:"fadeInLeft",swipe:true})}.bind(this)});riot$1.tag2("projectsview",'',"","",function(opts){});riot$1.tag2("postsview",' ',"","",function(opts){});riot$1.tag2("loading",'
',"","",function(opts){});var RE_ORIGIN=/^.+?\/\/+[^\/]+/;var EVENT_LISTENER="EventListener";var REMOVE_EVENT_LISTENER="remove"+EVENT_LISTENER;var ADD_EVENT_LISTENER="add"+EVENT_LISTENER;var HAS_ATTRIBUTE="hasAttribute";var POPSTATE="popstate";var HASHCHANGE="hashchange";var TRIGGER="trigger";var MAX_EMIT_STACK_LEVEL=3;var win=typeof window!="undefined"&&window;var doc=typeof document!="undefined"&&document;var hist=win&&history;var loc=win&&(hist.location||win.location);var prot=Router.prototype;var clickEvent=doc&&doc.ontouchstart?"touchstart":"click";var central=observable$1();var started=false;var routeFound=false;var debouncedEmit;var base;var current;var parser;var secondParser;var emitStack=[];var emitStackLevel=0;function DEFAULT_PARSER(path){return path.split(/[\/?#]/)}function DEFAULT_SECOND_PARSER(path,filter){var f=filter.replace(/\?/g,"\\?").replace(/\*/g,"([^/?#]+?)").replace(/\.\./,".*");var re=new RegExp("^"+f+"$");var args=path.match(re);if(args){return args.slice(1)}}function debounce(fn,delay){var t;return function(){clearTimeout(t);t=setTimeout(fn,delay)}}function start(autoExec){debouncedEmit=debounce(emit,1);win[ADD_EVENT_LISTENER](POPSTATE,debouncedEmit);win[ADD_EVENT_LISTENER](HASHCHANGE,debouncedEmit);doc[ADD_EVENT_LISTENER](clickEvent,click);if(autoExec){emit(true)}}function Router(){this.$=[];observable$1(this);central.on("stop",this.s.bind(this));central.on("emit",this.e.bind(this))}function normalize(path){return path.replace(/^\/|\/$/,"")}function isString$1(str){return typeof str=="string"}function getPathFromRoot(href){return(href||loc.href).replace(RE_ORIGIN,"")}function getPathFromBase(href){return base[0]==="#"?(href||loc.href||"").split(base)[1]||"":(loc?getPathFromRoot(href):href||"").replace(base,"")}function emit(force){var isRoot=emitStackLevel===0;if(MAX_EMIT_STACK_LEVEL<=emitStackLevel){return}emitStackLevel++;emitStack.push(function(){var path=getPathFromBase();if(force||path!==current){central[TRIGGER]("emit",path);current=path}});if(isRoot){var first;while(first=emitStack.shift()){first()}emitStackLevel=0}}function click(e){if(e.which!==1||e.metaKey||e.ctrlKey||e.shiftKey||e.defaultPrevented){return}var el=e.target;while(el&&el.nodeName!=="A"){el=el.parentNode}if(!el||el.nodeName!=="A"||el[HAS_ATTRIBUTE]("download")||!el[HAS_ATTRIBUTE]("href")||el.target&&el.target!=="_self"||el.href.indexOf(loc.href.match(RE_ORIGIN)[0])===-1){return}if(el.href!==loc.href&&(el.href.split("#")[0]===loc.href.split("#")[0]||base[0]!=="#"&&getPathFromRoot(el.href).indexOf(base)!==0||base[0]==="#"&&el.href.split(base)[0]!==loc.href.split(base)[0]||!go(getPathFromBase(el.href),el.title||doc.title))){return}e.preventDefault()}function go(path,title,shouldReplace){if(!hist){return central[TRIGGER]("emit",getPathFromBase(path))}path=base+normalize(path);title=title||doc.title;shouldReplace?hist.replaceState(null,title,path):hist.pushState(null,title,path);doc.title=title;routeFound=false;emit();return routeFound}prot.m=function(first,second,third){if(isString$1(first)&&(!second||isString$1(second))){go(first,second,third||false)}else if(second){this.r(first,second)}else{this.r("@",first)}};prot.s=function(){this.off("*");this.$=[]};prot.e=function(path){this.$.concat("@").some(function(filter){var args=(filter==="@"?parser:secondParser)(normalize(path),normalize(filter));if(typeof args!="undefined"){this[TRIGGER].apply(null,[filter].concat(args));return routeFound=true}},this)};prot.r=function(filter,action){if(filter!=="@"){filter="/"+normalize(filter);this.$.push(filter)}this.on(filter,action)};var mainRouter=new Router;var route=mainRouter.m.bind(mainRouter);route.create=function(){var newSubRouter=new Router;var router=newSubRouter.m.bind(newSubRouter);router.stop=newSubRouter.s.bind(newSubRouter);return router};route.base=function(arg){base=arg||"#";current=getPathFromBase()};route.exec=function(){emit(true)};route.parser=function(fn,fn2){if(!fn&&!fn2){parser=DEFAULT_PARSER;secondParser=DEFAULT_SECOND_PARSER}if(fn){parser=fn}if(fn2){secondParser=fn2}};route.query=function(){var q={};var href=loc.href||current;href.replace(/[?&](.+?)=([^&]*)/g,function(_,k,v){q[k]=v});return q};route.stop=function(){if(started){if(win){win[REMOVE_EVENT_LISTENER](POPSTATE,debouncedEmit);win[REMOVE_EVENT_LISTENER](HASHCHANGE,debouncedEmit);doc[REMOVE_EVENT_LISTENER](clickEvent,click)}central[TRIGGER]("stop");started=false}};route.start=function(autoExec){if(!started){if(win){if(document.readyState==="interactive"||document.readyState==="complete"){start(autoExec)}else{document.onreadystatechange=function(){if(document.readyState==="interactive"){setTimeout(function(){start(autoExec)},1)}}}}started=true}};route.base();route.parser();riot$1.tag2("app",'
',"","",function(opts){this.route=route;this.riot=riot$1;this.state={pid:1,projects:Z.empty,loaded:false};this.active={projects:false,posts:false};var self=this;this.route("posts",function(){self.active.posts=true;self.active.projects=false;self.update()});this.route("projects",function(){self.active.projects=true;self.active.posts=false;self.update()});this.to=function(name){return function(e){e.preventDefault();this.route(name);return}.bind(this)}.bind(this);this.on("mount",function(){route.start(true)});function loaduser(){axios.get("/blog/projects").then(function(resp){self.state.projects=Z.fromList(resp.data);self.state.loaded=true;if(!self.active.posts){self.active.projects=true}self.update()})}this.on("mount",loaduser)});riot$1.tag2("grid",'
',"","",function(opts){});riot$1.tag2("row",'
',"","",function(opts){});riot$1.tag2("column",'
',"","",function(opts){});riot$1.mount("app");riot$1.mount("editor");riot$1.mount("post",{creator:"author"});riot$1.mount("decision");riot$1.mount("bbutton");riot$1.mount("projects")})(); \ No newline at end of file diff --git a/build/styles/riotblog.min.css b/build/styles/riotblog.min.css index c5408ce..9644735 100644 --- a/build/styles/riotblog.min.css +++ b/build/styles/riotblog.min.css @@ -1,6 +1,38 @@ -.post-text, .blog-title, .post, .postnav { +.post-text, .ltb-title, .post, .postnav { text-align: center; } +.navigate { + width: 70%; + margin: auto; } + +.content-box, .projects-box, .posts-box { + display: flex; + /* defines flexbox */ + flex-direction: column; + /* top to bottom */ + justify-content: space-between; + /* first item at start, last at end */ + position: relative; } + +.projects-box { + height: 350px !important; } + +.posts-box { + height: 250px !important; } + +.content { + margin: auto; + max-width: 40%; } + @media (max-width: 1000px) { + .content { + max-width: 60%; } } + @media (max-width: 800px) { + .content { + max-width: 70%; } } + @media (max-width: 400px) { + .content { + max-width: 80%; } } + .post-content { max-width: 50%; text-align: justify; @@ -14,39 +46,6 @@ .post-content { max-width: 90%; } } -.comment-block, .comments, .maxwarn { - max-width: 30%; } - -@media (max-width: 700px) { - .comment-block, .comments, .maxwarn { - max-width: 50%; } } - -@media (max-width: 500px) { - .comment-block, .comments, .maxwarn { - max-width: 70%; } } - -.comments { - margin-top: 5%; } - -.comment { - margin-top: 2%; - max-width: 40%; } - -@media (max-width: 700px) { - .comment { - max-width: 65%; } } - -@media (max-width: 500px) { - .comment { - max-width: 85%; } } - -.comments-loader { - margin-top: 2%; } - -.comment-body { - margin-left: 10px; - margin-right: 10px; } - .rounded-button { border-radius: 13px; } @@ -58,3 +57,6 @@ .footer { margin-top: 10%; } + +.editor { + height: 100% !important; } diff --git a/build/styles/spectre.min.css b/build/styles/spectre.min.css index f27040a..5b9550a 100644 --- a/build/styles/spectre.min.css +++ b/build/styles/spectre.min.css @@ -1 +1 @@ -/*! normalize.css v4.2.0 | MIT License | github.com/necolas/normalize.css */progress,sub,sup{vertical-align:baseline}button,hr,input{overflow:visible}html,legend{box-sizing:border-box}pre,textarea{overflow:auto}blockquote p:last-child,pre code{margin-bottom:0}.btn,.menu .menu-item{-webkit-user-select:none}.btn-group .btn.active,.btn-group .btn:active,.btn-group .btn:focus,.btn-group .btn:hover,.input-group .form-input:focus,.input-group .input-group-addon:focus,.input-group .input-group-btn:focus{z-index:99}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects;color:#5764c6;text-decoration:underline}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline dotted;text-decoration:underline}.breadcrumb .breadcrumb-item a,.btn,.chip-sm,.menu .menu-item,.menu .menu-item a,.tab .tab-item a{text-decoration:none}b,strong{font-weight:bolder}dfn{font-style:italic}h1{margin:.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}button,input,optgroup,select,textarea{font:inherit;margin:0}optgroup{font-weight:700}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{color:inherit;display:table;max-width:100%;padding:0;white-space:normal}.btn,.chip .chip-content,.chip-sm .chip-name,.label,code{white-space:nowrap}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}*,::after,::before{box-sizing:inherit}html{font-size:10px;line-height:1.42857143;-webkit-tap-highlight-color:transparent}body{margin:0;background:#fff;color:#333;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Ubuntu,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Hiragino Kaku Gothic Pro",Meiryo,"Malgun Gothic","Helvetica Neue",sans-serif;font-size:1.4rem;overflow-x:hidden}a:focus,a:hover{color:#283176}.disabled,[disabled]{cursor:default;opacity:.75;pointer-events:none}.btn,.form-switch,.hand{cursor:pointer}.btn .icon,.menu .icon,.toast .icon{font-size:1.3333em;line-height:.8em;margin-right:.2rem;vertical-align:-20%}pre,pre code{line-height:1.8rem}h1,h2,h3,h4,h5,h6{color:inherit;font-weight:300;line-height:1.1;margin-bottom:1.5rem;margin-top:2.5rem}h1{font-size:5rem}h2{font-size:4rem}h3{font-size:3rem}h4{font-size:2.4rem}h5{font-size:2rem}h6{font-size:1.6rem}p{margin:0 0 1rem}blockquote{border-left:.2rem solid #ddd;margin-left:0;padding:1rem 2rem}blockquote cite{color:#b3b3b3}ol,ul{margin:2rem 0 2rem 2rem;padding:0}ol ol,ol ul,ul ol,ul ul{margin:1.5rem 0 1.5rem 2rem}ol li,ul li{margin-top:1rem}ul{list-style:disc inside}ul ul{list-style-type:circle}ol{list-style:decimal inside}ol ol{list-style-type:lower-alpha}dl dt{font-weight:700}dl dd{margin:.5rem 0 1.5rem}.lead{font-size:120%}.highlight,code,mark{border-radius:.2rem;display:inline;font-size:1em;padding:.1em .3em;vertical-align:baseline}.highlight,mark{background:#ffe5a3}pre{background:#f9f9f9;border-left:.2rem solid #e2e2e2;margin-bottom:1em;margin-top:1em;padding:1.5rem 2.5rem}code{background:#efefef}.btn,.form-select{vertical-align:middle}pre code{background:0 0;border-left:0;margin-top:0}.btn,.form-input{line-height:1.6rem;-webkit-appearance:none;outline:0}.table{border-collapse:collapse;border-spacing:0;width:100%}.table.table-striped tbody tr:nth-of-type(odd){background:#fcfcfc}.table.table-hover tbody tr:hover{background:#f4f4f4}.table.table-hover tbody tr.selected{background:#f2f2f2}.table td,.table th{border-bottom:.1rem solid #efefef;padding:1.5rem 1rem;text-align:left}.btn,.empty{text-align:center}.table th{border-color:#c9c9c9}.btn{background:#fff;border:.1rem solid #5764c6;border-radius:.3rem;color:#5764c6;display:inline-block;font-size:1.4rem;height:3.2rem;padding:.7rem 1.5rem;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn:focus{background:#f3f4fb}.btn:hover{background:#5764c6;border-color:#4452c0;color:#fff}.btn.active,.btn:active{background:#4452c0;border-color:#3b49af;color:#fff}.btn.btn-primary{background:#5764c6;border-color:#4452c0;color:#fff}.btn.btn-primary:focus{background:#4856c1;border-color:#3b49af;color:#fff}.btn.btn-primary:hover{background:#404fbe;border-color:#35419c;color:#fff}.btn.btn-primary.active,.btn.btn-primary:active{background:#3e4cb6;border-color:#35419c;color:#fff}.btn.btn-primary.loading::after{border-color:transparent transparent #fff #fff}.btn.btn-link{background:0 0;border-color:transparent;color:#5764c6}.btn.btn-link:focus,.btn.btn-link:hover{background:#f4f4f4;color:#35419c}.btn.btn-link.active,.btn.btn-link:active{background:#efefef;color:#283176}.btn.btn-sm{border-radius:.2rem;font-size:1.2rem;height:2.4rem;line-height:1.4rem;padding:.4rem 1rem}.btn.btn-lg{border-radius:.4rem;font-size:1.8rem;height:4.2rem;line-height:2rem;padding:1rem 1.8rem}.btn.btn-block{display:block;width:100%}.btn.btn-clear{background:0 0;border:0;color:#666;height:2rem;margin-left:.3rem;opacity:.45;padding:0}.btn.btn-clear:hover{opacity:.85}.btn.btn-clear::before{content:"\00d7";font-size:2rem}.btn-group{display:inline-flex;display:-ms-inline-flexbox;display:-webkit-inline-flex;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;max-width:100%;overflow-x:auto}.btn-group .btn{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto}.btn-group .btn:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group .btn:not(:first-child):not(:last-child){border-radius:0;margin-left:-.1rem}.btn-group .btn:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-.1rem}.btn-group.btn-group-block{display:flex;display:-ms-flexbox;display:-webkit-flex}.form-group:not(:last-child){margin-bottom:1rem}.form-input{background:#fff;border:.1rem solid #c5c5c5;border-radius:.3rem;color:#333;display:block;font-size:1.4rem;height:3.2rem;max-width:100%;padding:.7rem .8rem;position:relative;width:100%}.form-input:focus{border-color:#5764c6}.form-input[disabled]{background:#eeeff2}.form-input.input-sm{border-radius:.2rem;font-size:1.2rem;height:2.4rem;padding:.3rem .6rem}.form-input.input-lg{border-radius:.4rem;font-size:1.6rem;height:4.2rem;line-height:2rem;padding:1rem .8rem}.form-input.input-inline{display:inline-block;vertical-align:middle;width:auto}textarea.form-input{height:auto;line-height:2rem}.form-input.is-success,.has-success .form-input{border-color:#32b643}.form-input.is-danger,.has-danger .form-input{border-color:#e85600}.form-input-hint{color:#888;display:inline-block;margin-top:.4rem}.has-success .form-input-hint,.is-success+.form-input-hint{color:#32b643}.has-danger .form-input-hint,.is-danger+.form-input-hint{color:#e85600}.form-label{display:block;line-height:1.6rem;margin-bottom:.5rem}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:.1rem solid #c5c5c5;border-radius:.3rem;font-size:1.4rem;line-height:1.6rem;outline:0;padding:.5rem .8rem}.form-select:not([multiple]){background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAUCAMAAACzvE1FAAAADFBMVEUzMzMzMzMzMzMzMzMKAG/3AAAAA3RSTlMAf4C/aSLHAAAAPElEQVR42q3NMQ4AIAgEQTn//2cLdRKppSGzBYwzVXvznNWs8C58CiussPJj8h6NwgorrKRdTvuV9v16Afn0AYFOB7aYAAAAAElFTkSuQmCC) right .75rem center/.8rem 1rem no-repeat #fff;height:3.2rem;padding-right:2.4rem}.form-select:focus{border-color:#5764c6}.form-select::-ms-expand{display:none}.form-select.select-sm{border-radius:.2rem;font-size:1.2rem;height:2.4rem;padding:.4rem 2rem .4rem .6rem}.form-select.select-lg{font-size:1.6rem;height:4.2rem;line-height:2rem;padding:1rem 2.4rem 1rem .8rem}.form-checkbox input,.form-radio input,.form-switch input{clip:rect(0,0,0,0);height:.1rem;margin:-.1rem;overflow:hidden;position:absolute;width:.1rem}.form-checkbox,.form-radio{cursor:pointer;display:inline-block;line-height:1.8rem;padding:.3rem 2rem;position:relative}.form-checkbox .form-icon,.form-radio .form-icon{border:.1rem solid #c5c5c5;display:inline-block;font-size:1.4rem;height:1.4rem;left:0;line-height:2.4rem;outline:0;padding:0;position:absolute;top:.5rem;transition:all .15s ease;vertical-align:top;width:1.4rem}.form-checkbox input:checked+.form-icon::after,.form-checkbox input:indeterminate+.form-icon::after,.form-radio input:checked+.form-icon::after{left:50%;position:absolute;top:50%;content:""}.form-checkbox:hover .form-icon,.form-radio:hover .form-icon{border-color:#929292}.form-checkbox input:focus+.form-icon,.form-radio input:focus+.form-icon{border-color:#5764c6}.form-checkbox input:checked+.form-icon,.form-radio input:checked+.form-icon{background:#5764c6;border-color:#5764c6}.form-checkbox input:active+.form-icon,.form-radio input:active+.form-icon{background:#efefef}.form-checkbox .form-icon{border-radius:.2rem}.form-checkbox input:checked+.form-icon::after{background-clip:padding-box;border:.2rem solid #fff;border-left-width:0;border-top-width:0;height:1rem;margin-left:-.3rem;margin-top:-.6rem;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);width:.6rem}.form-checkbox input:indeterminate+.form-icon{background:#5764c6;border-color:#5764c6}.form-checkbox input:indeterminate+.form-icon::after{background:#fff;height:.2rem;margin-left:-.4rem;margin-top:-.1rem;width:.8rem}.form-radio .form-icon{border-radius:.7rem}.form-radio input:checked+.form-icon::after{background:#fff;border-radius:.2rem;height:.4rem;margin-left:-.2rem;margin-top:-.2rem;width:.4rem}.form-switch{display:inline-block;line-height:2rem;padding:.3rem 2rem .3rem 3.6rem;position:relative}.form-switch .form-icon{background:#c5c5c5;background-clip:padding-box;border:.1rem solid #c5c5c5;border-radius:.9rem;display:inline-block;height:1.8rem;left:0;line-height:2.6rem;outline:0;padding:0;position:absolute;top:.4rem;vertical-align:top;width:3rem}.form-switch .form-icon::after{background:#fff;border-radius:.8rem;content:"";display:block;height:1.6rem;left:0;position:absolute;top:0;transition:left .15s ease;width:1.6rem}.form-switch input:checked+.form-icon{background:#5764c6;border-color:#5764c6}.form-switch input:checked+.form-icon::after{left:1.2rem}.form-switch input:active+.form-icon::after{background:#efefef}.input-group{display:flex;display:-ms-flexbox;display:-webkit-flex}.input-group .input-group-addon{background:#f9f9f9;border:.1rem solid #c5c5c5;border-radius:.3rem;line-height:1.6rem;padding:.7rem .8rem}.input-group .input-group-addon.addon-sm{font-size:1.2rem;padding:.3rem .6rem}.input-group .input-group-addon.addon-lg{font-size:1.6rem;line-height:2rem;padding:1rem .8rem}.input-group .input-group-addon,.input-group .input-group-btn{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto}.input-group .form-input:first-child:not(:last-child),.input-group .input-group-addon:first-child:not(:last-child),.input-group .input-group-btn:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.input-group .form-input:not(:first-child):not(:last-child),.input-group .input-group-addon:not(:first-child):not(:last-child),.input-group .input-group-btn:not(:first-child):not(:last-child){border-radius:0;margin-left:-.1rem}.input-group .form-input:last-child:not(:first-child),.input-group .input-group-addon:last-child:not(:first-child),.input-group .input-group-btn:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-.1rem}.label{background:#efefef;border-radius:.2rem;color:#666;display:inline;font-size:1em;padding:.1em .3em;vertical-align:baseline}.avatar,.chip-sm{vertical-align:middle}.label.label-primary{background:#5764c6;border-color:#4f5dc3;color:#fff}.label.label-primary a{color:#fff}.label.label-primary a:active,.label.label-primary a:focus,.label.label-primary a:hover{opacity:.75}.img-responsive{display:block;height:auto;max-width:100%}.video-responsive{height:0;overflow:hidden;padding-bottom:56.25%;padding-top:3rem;position:relative}.video-responsive embed,.video-responsive iframe,.video-responsive object{height:100%;left:0;position:absolute;top:0;width:100%}.video-responsive video{height:auto;max-width:100%;width:100%}.video-responsive-4-3{padding-bottom:75%}.container{margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem;width:100%}@media screen and (min-width:980px){.grid-960{width:98rem}}@media screen and (min-width:500px){.grid-480{width:50rem}}.columns{display:flex;display:-ms-flexbox;display:-webkit-flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.columns.col-gapless{margin-left:0;margin-right:0}.columns.col-gapless .column{padding-left:0;padding-right:0}.column,.form-horizontal{padding:1rem}.columns.col-oneline{-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow-x:auto}.chip .chip-content,.chip-sm .chip-name,.tooltip::after{overflow:hidden;text-overflow:ellipsis}.column{-webkit-flex:1;-ms-flex:1;flex:1}.column.col-1,.column.col-10,.column.col-11,.column.col-12,.column.col-2,.column.col-3,.column.col-4,.column.col-5,.column.col-6,.column.col-7,.column.col-8,.column.col-9{-webkit-flex:none;-ms-flex:none;flex:none}.col-12{width:100%}.col-11{width:91.66666667%}.col-10{width:83.33333333%}.col-9{width:75%}.col-8{width:66.66666667%}.col-7{width:58.33333333%}.col-6{width:50%}.col-5{width:41.66666667%}.col-4{width:33.33333333%}.col-3{width:25%}.col-2{width:16.66666667%}.col-1{width:8.33333333%}@media screen and (max-width:960px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{-webkit-flex:none;-ms-flex:none;flex:none}.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%}}@media screen and (max-width:840px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{-webkit-flex:none;-ms-flex:none;flex:none}.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%}}@media screen and (max-width:600px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{-webkit-flex:none;-ms-flex:none;flex:none}.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%}}.form-horizontal .form-group{display:flex;display:-ms-flexbox;display:-webkit-flex}.form-horizontal .form-label{margin-bottom:0;padding:.8rem .4rem}.form-horizontal .form-checkbox,.form-horizontal .form-radio{margin:.5rem 0}@media screen and (max-width:480px){.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{-webkit-flex:none;-ms-flex:none;flex:none}.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%}.hide-xs{display:none!important}}@media screen and (max-width:600px){.hide-sm{display:none!important}}@media screen and (max-width:840px){.hide-md{display:none!important}}@media screen and (max-width:960px){.hide-lg{display:none!important}}@media screen and (max-width:1280px){.hide-xl{display:none!important}}.empty{background:#f8f8f8;border-radius:.3rem;padding:4rem}.avatar,.avatar img{border-radius:50%;position:relative}.empty .empty-title{font-size:1.8rem;margin:1.5rem 0 .5rem}.empty .empty-meta{color:#888}.empty .empty-action{margin-top:1.5rem}.avatar{display:inline-block;font-size:1.4rem;font-weight:300;height:3.2rem;line-height:1;margin:0;width:3.2rem}.avatar.avatar-xs{font-size:.8rem;height:1.6rem;width:1.6rem}.avatar.avatar-sm{font-size:1rem;height:2.4rem;width:2.4rem}.avatar.avatar-lg{font-size:2rem;height:4.8rem;width:4.8rem}.avatar.avatar-xl{font-size:2.6rem;height:6.4rem;width:6.4rem}.avatar img{height:100%;width:100%;z-index:99}.avatar .avatar-icon{background:#fff;bottom:-.2em;height:50%;padding:5%;position:absolute;right:-.2em;width:50%}.avatar[data-initial]::after{color:#fff;content:attr(data-initial);left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:0}.chip{-webkit-align-content:space-around;align-content:space-around;-webkit-align-items:center;align-items:center;border:.1rem solid transparent;border-radius:.3rem;display:flex;display:-ms-flexbox;display:-webkit-flex;-ms-flex-align:center;-ms-flex-line-pack:distribute;list-style:none;margin:0;padding:.5rem 0}.chip .chip-icon{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.chip .chip-content{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;padding:0 1rem}.chip .chip-action{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.chip .chip-title{font-size:1.4rem}.chip .chip-meta{color:#b3b3b3;font-size:1.2rem}.chip-sm{-webkit-align-items:center;align-items:center;background:#eff1fa;border-radius:.3rem;color:#666;display:-ms-inline-flexbox;display:inline-flex;display:-webkit-inline-flex;-ms-flex-align:center;font-size:1.2rem;height:2.4rem;max-width:100%;padding:.3rem .6rem}.chip-sm:focus,.chip-sm:hover{background:#e8eaf7}.chip-sm .btn-clear{margin-top:-.2rem}.chip-sm .btn-clear::before{color:#3b49af;font-size:1.6rem}.chip-sm.selected{background:#5764c6;color:#fff}.chip-sm.selected .btn-clear::before{color:#eff1fa}.chip-sm .chip-name{margin-left:.4rem}.chip-sm .avatar{font-size:.8rem;height:1.6rem;width:1.6rem}.form-autocomplete{position:relative}.form-autocomplete .form-autocomplete-input{background:#fff;border:.1rem solid #c5c5c5;border-radius:.3rem;color:#333;display:block;font-size:1.4rem;line-height:1.6rem;max-width:100%;min-height:3.2rem;outline:0;padding:.3rem .3rem 0;width:100%}.form-autocomplete .form-autocomplete-input .chip-sm{margin-bottom:.3rem}.form-autocomplete .form-autocomplete-input .form-input{background:#fff;border-color:transparent;display:inline-block;height:2.4rem;margin-bottom:.3rem;padding:.3rem;vertical-align:top;width:auto}.form-autocomplete .form-autocomplete-list{background:#fff;border:.1rem solid #d2d2d2;border-radius:.3rem;box-shadow:0 .1rem .2rem rgba(0,0,0,.15);display:block;height:auto;left:0;margin:.3rem 0 0;padding:.5rem;position:absolute;top:100%;width:100%;z-index:1988}.menu,.modal-container,.shadow{box-shadow:0 .1rem .4rem rgba(0,0,0,.3)}.form-autocomplete .form-autocomplete-item{border-radius:.3rem;display:block;margin-top:.1rem;padding:.2rem 1rem}.form-autocomplete .form-autocomplete-item:focus,.form-autocomplete .form-autocomplete-item:hover{background:#fff}.form-autocomplete .form-autocomplete-item.active{background:#eff1fa}.tooltip{position:relative}.tooltip::after{background:rgba(51,51,51,.9);border-radius:.3rem;bottom:100%;color:#fff;content:attr(data-tooltip);display:block;font-size:1.2rem;left:50%;line-height:1.6rem;max-width:32rem;opacity:0;padding:.6rem 1rem;pointer-events:none;position:absolute;-webkit-transform:translate(-50%,0);-ms-transform:translate(-50%,0);transform:translate(-50%,0);transition:all .216s ease;z-index:99}.tooltip:focus::after,.tooltip:hover::after{opacity:1;-webkit-transform:translate(-50%,-.5rem);-ms-transform:translate(-50%,-.5rem);transform:translate(-50%,-.5rem)}.toast.toast-danger a:active,.toast.toast-danger a:focus,.toast.toast-danger a:hover,.toast.toast-primary a:active,.toast.toast-primary a:focus,.toast.toast-primary a:hover,.toast.toast-success a:active,.toast.toast-success a:focus,.toast.toast-success a:hover{opacity:.75}.tooltip.disabled,.tooltip[disabled]{pointer-events:auto}.tooltip.tooltip-right::after{bottom:50%;left:100%;-webkit-transform:translate(0,50%);-ms-transform:translate(0,50%);transform:translate(0,50%)}.tooltip.tooltip-right:focus::after,.tooltip.tooltip-right:hover::after{-webkit-transform:translate(.5rem,50%);-ms-transform:translate(.5rem,50%);transform:translate(.5rem,50%)}.tooltip.tooltip-bottom::after{bottom:auto;top:100%;-webkit-transform:translate(-50%,0);-ms-transform:translate(-50%,0);transform:translate(-50%,0)}.tooltip.tooltip-bottom:focus::after,.tooltip.tooltip-bottom:hover::after{-webkit-transform:translate(-50%,.5rem);-ms-transform:translate(-50%,.5rem);transform:translate(-50%,.5rem)}.tooltip.tooltip-left::after{bottom:50%;left:auto;right:100%;-webkit-transform:translate(0,50%);-ms-transform:translate(0,50%);transform:translate(0,50%)}.tooltip.tooltip-left:focus::after,.tooltip.tooltip-left:hover::after{-webkit-transform:translate(-.5rem,50%);-ms-transform:translate(-.5rem,50%);transform:translate(-.5rem,50%)}.badge{position:relative}.badge[data-badge]::after{background:#5764c6;background-clip:padding-box;border:.1rem solid #fff;border-radius:1rem;color:#fff;content:attr(data-badge);display:inline-block;font-size:1.1rem;height:1.8rem;line-height:1.2rem;min-width:1.8rem;padding:.2rem .5rem;text-align:center;-webkit-transform:translate(-.2rem,-.8rem);-ms-transform:translate(-.2rem,-.8rem);transform:translate(-.2rem,-.8rem);white-space:nowrap}.menu,.toast{display:block}.toast{background:#efefef;border:.1rem solid #eaeaea;border-radius:.3rem;color:#666;padding:1.4rem;width:100%}.menu,.menu .menu-item,.menu .menu-item a,.modal-container{border-radius:.3rem}.toast.toast-danger,.toast.toast-danger .btn-clear,.toast.toast-danger a,.toast.toast-primary .btn-clear,.toast.toast-primary a,.toast.toast-success,.toast.toast-success .btn-clear,.toast.toast-success a{color:#fff}.toast.toast-primary{background:#5764c6;border-color:#4f5dc3;color:#fff}.toast.toast-success{background:#32b643;border-color:#30ae40}.toast.toast-danger{background:#e85600;border-color:#de5200}.menu{background:#fff;margin:0;padding:.5rem;text-align:left;z-index:999}.menu .menu-header,.menu .menu-item,.menu .menu-item a{display:block;padding:.2rem 1rem}.menu .menu-item{color:#333;line-height:2.4rem;margin-top:.1rem;-moz-user-select:none;-ms-user-select:none;user-select:none}.menu .menu-item a{color:inherit;margin:-.2rem -1rem}.menu .menu-item a:focus,.menu .menu-item a:hover{color:#5764c6}.menu .menu-item a.active,.menu .menu-item a:active{background:#eff1fa;color:#4452c0}.menu .menu-header{color:#ccc;font-size:1.2rem;line-height:1.8rem;margin-top:0}.menu .menu-header .menu-header-text{background:#fff;display:inline-block;margin-left:-.6rem;padding:0 .6rem;position:relative;z-index:99}.menu .menu-header::after{border-bottom:.1rem solid #efefef;content:"";display:block;height:.1rem;-webkit-transform:translateY(-1rem);-ms-transform:translateY(-1rem);transform:translateY(-1rem);width:100%}.breadcrumb,.pagination,.tab{list-style:none;margin:.5rem 0}.breadcrumb{padding:1.2rem}.breadcrumb .breadcrumb-item{display:inline-block;margin:0}.breadcrumb .breadcrumb-item:last-child,.breadcrumb .breadcrumb-item:last-child a{color:#666;pointer-events:none}.breadcrumb .breadcrumb-item:not(:last-child)::after{color:#c5c5c5;content:"/";padding:0 .4rem}.tab{display:flex;display:-ms-flexbox;display:-webkit-flex;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;max-width:100%;overflow-x:auto}.tab .tab-item{border-bottom:.1rem solid #c5c5c5;margin-top:0}.tab .tab-item a{border-bottom:.2rem solid transparent;color:#333;display:block;margin-bottom:-.1rem;margin-top:0;padding:.8rem 1.4rem}.pagination,.pagination .page-item,.pagination .page-item a{display:inline-block}.tab .tab-item a:focus,.tab .tab-item a:hover{color:#5764c6}.tab .tab-item a.active,.tab .tab-item.active a{border-bottom-color:#3b49af;color:#3b49af}.tab .tab-item .badge[data-badge]::after{position:absolute;right:-1.4rem;top:1rem;-webkit-transform:translate(-50%,-1rem);-ms-transform:translate(-50%,-1rem);transform:translate(-50%,-1rem)}.tab.tab-block .tab-item{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;text-align:center}.pagination{padding:1.2rem}.pagination .page-item span{display:inline-block;padding:.6rem .5rem}.pagination .page-item a{border-radius:.3rem;margin:0 .1rem;padding:.6rem 1.2rem;text-decoration:none}.pagination .page-item a:focus,.pagination .page-item a:hover{background:#eff1fa}.pagination .page-item.active a{background:#5764c6;color:#fff}.modal{-webkit-align-items:center;align-items:center;bottom:0;display:none;-ms-flex-align:center;-ms-flex-pack:center;-ms-grid-row-align:center;-webkit-justify-content:center;justify-content:center;left:0;opacity:0;overflow:hidden;position:fixed;right:0;top:0}.modal.active{display:flex;display:-ms-flexbox;display:-webkit-flex;opacity:1;z-index:1988}.modal.active .modal-overlay{background:rgba(0,0,0,.75);bottom:0;display:block;left:0;position:absolute;right:0;top:0}.card,.modal-container{background:#fff;display:block}.modal.active .modal-container{-webkit-animation:slide-down .216s;animation:slide-down .216s}.modal-container{-webkit-animation:slide-up .216s;animation:slide-up .216s;margin:0 auto;padding:0;text-align:left;z-index:1988}.modal-container .modal-header{padding:1.5rem}.modal-container .modal-header .modal-title{font-size:1.5rem;margin:0}.modal-container .modal-body{max-height:50vh;overflow-y:auto;padding:1.5rem;position:relative}.text-clip,.text-ellipsis{overflow:hidden;white-space:nowrap}.modal-container .modal-footer{padding:1.5rem;text-align:right}.card,.text-left{text-align:left}@media screen and (min-width:640px){.modal-container{width:64rem}}@media screen and (min-width:320px){.modal-sm .modal-container{width:32rem}}.card{border:.1rem solid #efefef;border-radius:.3rem;margin:0;padding:0;z-index:999}.card .card-body,.card .card-footer,.card .card-header{padding:1.5rem 1.5rem 0}.card .card-body:last-child,.card .card-footer:last-child,.card .card-header:last-child{padding-bottom:1.5rem}.card .card-image{padding-top:1.5rem}.card .card-image:first-child{padding-top:0}.card .card-image:first-child img{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.card .card-image:last-child img{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.card .card-title{font-size:1.4em;line-height:1;margin-bottom:.5rem;margin-top:0}.card .card-meta{color:#b3b3b3;font-size:1em;margin-bottom:0;margin-top:0}@-webkit-keyframes loading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes slide-down{0%{margin-top:-3rem;opacity:0}100%{margin-top:0;opacity:1}}@keyframes slide-down{0%{margin-top:-3rem;opacity:0}100%{margin-top:0;opacity:1}}.clearfix::after,.container::after{clear:both;content:"";display:table}.block,.centered{display:block}.float-left{float:left!important}.float-right{float:right!important}.rel{position:relative}.abs{position:absolute}.fixed{position:fixed}.centered{float:none;margin-left:auto;margin-right:auto}.mt-10{margin-top:1rem}.mr-10{margin-right:1rem}.mb-10{margin-bottom:1rem}.ml-10{margin-left:1rem}.mt-5{margin-top:.5rem}.mr-5{margin-right:.5rem}.mb-5{margin-bottom:.5rem}.ml-5{margin-left:.5rem}.pt-10{padding-top:1rem}.pr-10{padding-right:1rem}.pb-10{padding-bottom:1rem}.pl-10{padding-left:1rem}.pt-5{padding-top:.5rem}.pr-5{padding-right:.5rem}.pb-5{padding-bottom:.5rem}.pl-5{padding-left:.5rem}.inline{display:inline}.inline-block{display:inline-block}.flex{display:flex;display:-ms-flexbox;display:-webkit-flex}.inline-flex{display:inline-flex;display:-ms-inline-flexbox;display:-webkit-inline-flex}.hide{display:none!important}.visible{visibility:visible}.invisible{visibility:hidden}.text-hide{background:0 0;border:0;color:transparent;font:0/0 a;text-shadow:none}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-normal{font-weight:400}.text-bold{font-weight:700}.text-italic{font-style:italic}.text-ellipsis{text-overflow:ellipsis}.text-clip{text-overflow:clip}.text-break{-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;word-break:break-word;word-wrap:break-word}.light-shadow{box-shadow:0 .1rem .2rem rgba(0,0,0,.15)}.rounded{border-radius:.3rem}.circle{border-radius:50%}.divider{border-bottom:.1rem solid #efefef;display:block;margin:.5rem}.loading{color:transparent!important;min-height:1.6rem;pointer-events:none;position:relative}.loading::after{-webkit-animation:loading .5s infinite linear;animation:loading .5s infinite linear;border:.2rem solid #5764c6;border-radius:.8rem;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1.6rem;left:50%;margin-left:-.8rem;margin-top:-.8rem;position:absolute;top:50%;width:1.6rem} \ No newline at end of file +/*! Spectre.css | MIT License | github.com/picturepan2/spectre */html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}hr{box-sizing:content-box;height:0;overflow:visible}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}fieldset{border:0;margin:0;padding:0}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}*,::after,::before{box-sizing:inherit}html{box-sizing:border-box;font-size:10px;line-height:1.42857143;-webkit-tap-highlight-color:transparent}body{background:#fff;color:#50596c;font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;font-size:1.4rem;overflow-x:hidden;text-rendering:optimizeLegibility}a{color:#5764c6;outline:0;text-decoration:none}a:focus{box-shadow:0 0 0 .2rem rgba(87,100,198,.15)}a.active,a:active,a:focus,a:hover{color:#3b49af;text-decoration:underline}h1,h2,h3,h4,h5,h6{color:inherit;font-weight:300;line-height:1.2;margin-bottom:1.5rem;margin-top:0}h1{font-size:5rem}h2{font-size:4rem}h3{font-size:3rem}h4{font-size:2.4rem}h5{font-size:2rem}h6{font-size:1.6rem}p{line-height:2.4rem;margin:0 0 1rem}a,ins,u{-webkit-text-decoration-skip:ink edges;text-decoration-skip:ink edges}blockquote{border-left:.2rem solid #f0f1f4;margin-left:0;padding:1rem 2rem}blockquote p:last-child{margin-bottom:0}blockquote cite{color:#acb3c2}ol,ul{margin:2rem 0 2rem 2rem;padding:0}ol ol,ol ul,ul ol,ul ul{margin:1.5rem 0 1.5rem 2rem}ol li,ul li{margin-top:1rem}ul{list-style:disc inside}ul ul{list-style-type:circle}ol{list-style:decimal inside}ol ol{list-style-type:lower-alpha}dl dt{font-weight:700}dl dd{margin:.5rem 0 1.5rem 0}mark{background:#ffe9b3;border-radius:.2rem;color:#50596c;display:inline-block;line-height:1;padding:.3rem .4rem;vertical-align:baseline}kbd{background:#454d5d;border-radius:.2rem;color:#fff;display:inline-block;line-height:1;padding:.3rem .4rem;vertical-align:baseline}abbr[title]{border-bottom:.1rem dotted;cursor:help;text-decoration:none}.cjk,:lang(ja),:lang(ko),:lang(zh){font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Hiragino Kaku Gothic Pro",Meiryo,"Malgun Gothic","Helvetica Neue",sans-serif}.cjk ins,.cjk u,:lang(ja) ins,:lang(ja) u,:lang(zh) ins,:lang(zh) u{border-bottom:.1rem solid;text-decoration:none}.cjk del+del,.cjk del+s,.cjk ins+ins,.cjk ins+u,.cjk s+del,.cjk s+s,.cjk u+ins,.cjk u+u,:lang(ja) del+del,:lang(ja) del+s,:lang(ja) ins+ins,:lang(ja) ins+u,:lang(ja) s+del,:lang(ja) s+s,:lang(ja) u+ins,:lang(ja) u+u,:lang(zh) del+del,:lang(zh) del+s,:lang(zh) ins+ins,:lang(zh) ins+u,:lang(zh) s+del,:lang(zh) s+s,:lang(zh) u+ins,:lang(zh) u+u{margin-left:.125em}.table{border-collapse:collapse;border-spacing:0;text-align:left;width:100%}.table.table-striped tbody tr:nth-of-type(odd){background:#f8f9fa}.table.table-hover tbody tr:hover{background:#f0f1f4}.table tbody tr.active,.table.table-striped tbody tr.active{background:#f0f1f4}.table td{border-bottom:.1rem solid #f0f1f4;padding:1.5rem 1rem}.table th{border-bottom:.1rem solid #727e96;padding:1.5rem 1rem}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:.1rem solid #5764c6;border-radius:.2rem;color:#5764c6;cursor:pointer;display:inline-block;font-size:1.4rem;height:3.2rem;line-height:2rem;outline:0;padding:.5rem .8rem;text-align:center;text-decoration:none;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.btn:focus{background:#fbfbfe;box-shadow:0 0 0 .2rem rgba(87,100,198,.15);text-decoration:none}.btn:hover{background:#5764c6;border-color:#4c59c2;color:#fff;text-decoration:none}.btn.active,.btn:active{background:#4c59c2;border-color:#3e4cb6;color:#fff;text-decoration:none}.btn.disabled,.btn:disabled,.btn[disabled]{cursor:default;opacity:.5;pointer-events:none}.btn.btn-primary{background:#5764c6;border-color:#4c59c2;color:#fff}.btn.btn-primary:focus,.btn.btn-primary:hover{background:#4452c0;border-color:#3e4cb6;color:#fff}.btn.btn-primary.active,.btn.btn-primary:active{background:#3f4eba;border-color:#3b49af;color:#fff}.btn.btn-primary.loading::after{border-bottom-color:#fff;border-left-color:#fff}.btn.btn-link{background:0 0;border-color:transparent;color:#5764c6}.btn.btn-link.active,.btn.btn-link:active,.btn.btn-link:focus,.btn.btn-link:hover{color:#3b49af}.btn.btn-sm{font-size:1.2rem;height:2.4rem;padding:.1rem .8rem}.btn.btn-lg{font-size:1.6rem;height:4rem;padding:.9rem .8rem}.btn.btn-block{display:block;width:100%}.btn.btn-action{padding-left:0;padding-right:0;width:3.2rem}.btn.btn-action.btn-sm{width:2.4rem}.btn.btn-action.btn-lg{width:4rem}.btn.btn-clear{background:0 0;border:0;color:currentColor;height:1.6rem;line-height:1.6rem;margin-left:.4rem;margin-right:-.2rem;opacity:.45;padding:0 .2rem;text-decoration:none;width:1.6rem}.btn.btn-clear:hover{opacity:.85}.btn.btn-clear::before{content:"\2715"}.btn-group{display:inline-flex;display:-ms-inline-flexbox;display:-webkit-inline-flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.btn-group .btn{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto}.btn-group .btn:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group .btn:not(:first-child):not(:last-child){border-radius:0;margin-left:-.1rem}.btn-group .btn:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-.1rem}.btn-group .btn.active,.btn-group .btn:active,.btn-group .btn:focus,.btn-group .btn:hover{z-index:1}.btn-group.btn-group-block{display:flex;display:-ms-flexbox;display:-webkit-flex}.btn-group.btn-group-block .btn{-webkit-flex:1 0 0;-ms-flex:1 0 0;flex:1 0 0}.form-group:not(:last-child){margin-bottom:1rem}.form-label{display:block;padding:.6rem 0}.form-label.label-sm{padding:.2rem 0}.form-label.label-lg{padding:1rem 0}.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;background-image:none;border:.1rem solid #c4c9d3;border-radius:.2rem;color:#50596c;display:block;font-size:1.4rem;height:3.2rem;line-height:2rem;max-width:100%;outline:0;padding:.5rem .8rem;position:relative;transition:all .2s ease;width:100%}.form-input:focus{border-color:#5764c6;box-shadow:0 0 0 .2rem rgba(87,100,198,.15)}.form-input::-webkit-input-placeholder{color:#acb3c2}.form-input::-moz-placeholder{color:#acb3c2}.form-input:-ms-input-placeholder{color:#acb3c2}.form-input::placeholder{color:#acb3c2}.form-input.input-sm{font-size:1.2rem;height:2.4rem;padding:.1rem .8rem}.form-input.input-lg{font-size:1.6rem;height:4rem;padding:.9rem .8rem}.form-input.input-inline{display:inline-block;vertical-align:middle;width:auto}textarea.form-input{height:auto}.form-input[type=file]{height:auto}.form-input-hint{color:#acb3c2;margin-top:.4rem}.has-success .form-input-hint,.is-success+.form-input-hint{color:#32b643}.has-error .form-input-hint,.is-error+.form-input-hint{color:#e85600}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:.1rem solid #c4c9d3;border-radius:.2rem;color:inherit;font-size:1.4rem;line-height:2rem;outline:0;padding:.5rem .8rem;vertical-align:middle;width:100%}.form-select[multiple] option{padding:.2rem .4rem}.form-select:not([multiple]){background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23667189' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right .75rem center/.8rem 1rem;height:3.2rem;padding-right:2.4rem}.form-select:focus{border-color:#5764c6;box-shadow:0 0 0 .2rem rgba(87,100,198,.15)}.form-select::-ms-expand{display:none}.form-select.select-sm{font-size:1.2rem;height:2.4rem;padding:.1rem 2rem .1rem .6rem}.form-select.select-lg{font-size:1.6rem;height:4rem;padding:.9rem 2.4rem .9rem .8rem}.form-input.is-success,.form-select.is-success,.has-success .form-input,.has-success .form-select{border-color:#32b643}.form-input.is-success:focus,.form-select.is-success:focus,.has-success .form-input:focus,.has-success .form-select:focus{box-shadow:0 0 0 .2rem rgba(50,182,67,.15)}.form-input.is-error,.form-select.is-error,.has-error .form-input,.has-error .form-select{border-color:#e85600}.form-input.is-error:focus,.form-select.is-error:focus,.has-error .form-input:focus,.has-error .form-select:focus{box-shadow:0 0 0 .2rem rgba(232,86,0,.15)}.form-input:not(:placeholder-shown):invalid{border-color:#e85600}.form-input:not(:placeholder-shown):invalid:focus{box-shadow:0 0 0 .2rem rgba(232,86,0,.15)}.form-input:not(:placeholder-shown):invalid+.form-input-hint{color:#e85600}.has-icon-left,.has-icon-right{position:relative}.has-icon-left .form-icon,.has-icon-right .form-icon{margin:0 .8rem;min-width:1.4rem;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.has-icon-left .form-icon{left:0}.has-icon-left .form-input{padding-left:3rem}.has-icon-right .form-icon{right:0}.has-icon-right .form-input{padding-right:3rem}.form-checkbox,.form-radio,.form-switch{display:inline-block;line-height:2rem;position:relative}.form-checkbox input,.form-radio input,.form-switch input{clip:rect(0,0,0,0);height:.1rem;margin:-.1rem;overflow:hidden;position:absolute;width:.1rem}.form-checkbox input:focus+.form-icon,.form-radio input:focus+.form-icon,.form-switch input:focus+.form-icon{border-color:#5764c6;box-shadow:0 0 0 .2rem rgba(87,100,198,.15)}.form-checkbox input:checked+.form-icon,.form-radio input:checked+.form-icon,.form-switch input:checked+.form-icon{background:#5764c6;border-color:#5764c6}.form-checkbox .form-icon,.form-radio .form-icon,.form-switch .form-icon{border:.1rem solid #c4c9d3;cursor:pointer;display:inline-block;position:absolute;transition:all .2s ease}.form-checkbox,.form-radio{padding:.2rem 2rem}.form-checkbox .form-icon,.form-radio .form-icon{background:#fff;height:1.4rem;left:0;top:.5rem;width:1.4rem}.form-checkbox input:active+.form-icon,.form-radio input:active+.form-icon{background:#f0f1f4}.form-checkbox .form-icon{border-radius:.2rem}.form-checkbox input:checked+.form-icon::before{background-clip:padding-box;border:.2rem solid #fff;border-left-width:0;border-top-width:0;content:"";height:1rem;left:50%;margin-left:-.3rem;margin-top:-.6rem;position:absolute;top:50%;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);width:.6rem}.form-checkbox input:indeterminate+.form-icon{background:#5764c6;border-color:#5764c6}.form-checkbox input:indeterminate+.form-icon::before{background:#fff;content:"";height:.2rem;left:50%;margin-left:-.5rem;margin-top:-.1rem;position:absolute;top:50%;width:1rem}.form-radio .form-icon{border-radius:.7rem}.form-radio input:checked+.form-icon::before{background:#fff;border-radius:.2rem;content:"";height:.4rem;left:50%;margin-left:-.2rem;margin-top:-.2rem;position:absolute;top:50%;width:.4rem}.form-switch{padding:.2rem 2rem .2rem 3.6rem}.form-switch .form-icon{background:#e7e9ed;background-clip:padding-box;border-radius:.9rem;height:1.8rem;left:0;top:.3rem;width:3rem}.form-switch .form-icon::before{background:#fff;border-radius:.8rem;content:"";display:block;height:1.6rem;left:0;position:absolute;top:0;transition:all .2s ease;width:1.6rem}.form-switch input:checked+.form-icon::before{left:1.2rem}.form-switch input:active+.form-icon::before{background:#f8f9fa}.input-group{display:flex;display:-ms-flexbox;display:-webkit-flex}.input-group .input-group-addon{background:#f8f9fa;border:.1rem solid #c4c9d3;border-radius:.2rem;line-height:2rem;padding:.5rem .8rem}.input-group .input-group-addon.addon-sm{font-size:1.2rem;padding:.1rem .8rem}.input-group .input-group-addon.addon-lg{font-size:1.6rem;padding:.9rem .8rem}.input-group .input-group-addon,.input-group .input-group-btn{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto}.input-group .form-input:first-child:not(:last-child),.input-group .form-select:first-child:not(:last-child),.input-group .input-group-addon:first-child:not(:last-child),.input-group .input-group-btn:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.input-group .form-input:not(:first-child):not(:last-child),.input-group .form-select:not(:first-child):not(:last-child),.input-group .input-group-addon:not(:first-child):not(:last-child),.input-group .input-group-btn:not(:first-child):not(:last-child){border-radius:0;margin-left:-.1rem}.input-group .form-input:last-child:not(:first-child),.input-group .form-select:last-child:not(:first-child),.input-group .input-group-addon:last-child:not(:first-child),.input-group .input-group-btn:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-.1rem}.input-group .form-input:focus,.input-group .form-select:focus,.input-group .input-group-addon:focus,.input-group .input-group-btn:focus{z-index:1}.input-group .form-select{width:auto}.input-group.input-inline{display:inline-flex;display:-ms-inline-flexbox;display:-webkit-inline-flex}.form-input.disabled,.form-input:disabled,.form-select.disabled,.form-select:disabled{background-color:#f0f1f4;cursor:not-allowed;opacity:.5}.form-input[readonly]{background-color:#f8f9fa}input.disabled+.form-icon,input:disabled+.form-icon{background:#f0f1f4;cursor:not-allowed;opacity:.5}.form-switch input.disabled+.form-icon::before,.form-switch input:disabled+.form-icon::before{background:#fff}.form-horizontal{padding:1rem}.form-horizontal .form-group{display:flex;display:-ms-flexbox;display:-webkit-flex}.form-horizontal .form-checkbox,.form-horizontal .form-radio,.form-horizontal .form-switch{margin:.4rem 0}.label{background:#f8f9fa;border-radius:.2rem;color:#5b657a;display:inline-block;line-height:1;padding:.3rem .4rem;vertical-align:baseline}.label.label-primary{background:#5764c6;color:#fff}.label.label-success{background:#32b643;color:#fff}.label.label-warning{background:#ffb700;color:#fff}.label.label-error{background:#e85600;color:#fff}code{background:#fdf4f4;border-radius:.2rem;color:#e06870;display:inline-block;line-height:1;padding:.3rem .4rem;vertical-align:baseline}.code{border-radius:.2rem;color:#50596c;line-height:2rem;position:relative}.code::before{color:#acb3c2;content:attr(data-lang);font-size:1.2rem;position:absolute;right:1rem;top:.2rem}.code code{background:#f8f9fa;color:inherit;display:block;line-height:inherit;overflow-x:auto;padding:2rem;width:100%}.img-responsive{display:block;height:auto;max-width:100%}.img-fit-cover{object-fit:cover}.img-fit-contain{object-fit:contain}.video-responsive{display:block;overflow:hidden;padding:0;position:relative;width:100%}.video-responsive::before{content:"";display:block;padding-bottom:56.25%}.video-responsive embed,.video-responsive iframe,.video-responsive object{bottom:0;height:100%;left:0;position:absolute;right:0;top:0;width:100%}.video-responsive video{height:auto;max-width:100%;width:100%}.video-responsive-4-3::before{padding-bottom:75%}.video-responsive-1-1::before{padding-bottom:100%}.figure{margin:0 0 1rem 0}.figure .figure-caption{color:#727e96;margin-top:1rem}.container{margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem;width:100%}.container.grid-1280{max-width:130rem}.container.grid-960{max-width:98rem}.container.grid-480{max-width:50rem}.columns{display:flex;display:-ms-flexbox;display:-webkit-flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.columns.col-gapless{margin-left:0;margin-right:0}.columns.col-gapless .column{padding-left:0;padding-right:0}.columns.col-oneline{-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;overflow-x:auto}.column{-webkit-flex:1;-ms-flex:1;flex:1;max-width:100%;padding:1rem}.column.col-1,.column.col-10,.column.col-11,.column.col-12,.column.col-2,.column.col-3,.column.col-4,.column.col-5,.column.col-6,.column.col-7,.column.col-8,.column.col-9{-webkit-flex:none;-ms-flex:none;flex:none}.col-12{width:100%}.col-11{width:91.66666667%}.col-10{width:83.33333333%}.col-9{width:75%}.col-8{width:66.66666667%}.col-7{width:58.33333333%}.col-6{width:50%}.col-5{width:41.66666667%}.col-4{width:33.33333333%}.col-3{width:25%}.col-2{width:16.66666667%}.col-1{width:8.33333333%}@media screen and (max-width:1280px){.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9{-webkit-flex:none;-ms-flex:none;flex:none}.col-xl-12{width:100%}.col-xl-11{width:91.66666667%}.col-xl-10{width:83.33333333%}.col-xl-9{width:75%}.col-xl-8{width:66.66666667%}.col-xl-7{width:58.33333333%}.col-xl-6{width:50%}.col-xl-5{width:41.66666667%}.col-xl-4{width:33.33333333%}.col-xl-3{width:25%}.col-xl-2{width:16.66666667%}.col-xl-1{width:8.33333333%}}@media screen and (max-width:960px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{-webkit-flex:none;-ms-flex:none;flex:none}.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%}}@media screen and (max-width:840px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{-webkit-flex:none;-ms-flex:none;flex:none}.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%}}@media screen and (max-width:600px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{-webkit-flex:none;-ms-flex:none;flex:none}.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%}}@media screen and (max-width:480px){.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{-webkit-flex:none;-ms-flex:none;flex:none}.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%}}.show-lg,.show-md,.show-sm,.show-xl,.show-xs{display:none!important}@media screen and (max-width:480px){.hide-xs{display:none!important}.show-xs{display:block!important}}@media screen and (max-width:600px){.hide-sm{display:none!important}.show-sm{display:block!important}}@media screen and (max-width:840px){.hide-md{display:none!important}.show-md{display:block!important}}@media screen and (max-width:960px){.hide-lg{display:none!important}.show-lg{display:block!important}}@media screen and (max-width:1280px){.hide-xl{display:none!important}.show-xl{display:block!important}}.navbar{-webkit-align-items:stretch;align-items:stretch;display:flex;display:-ms-flexbox;display:-webkit-flex;-ms-flex-align:stretch;-ms-flex-pack:justify;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-justify-content:space-between;justify-content:space-between}.navbar .navbar-section{-webkit-align-items:center;align-items:center;display:flex;display:-ms-flexbox;display:-webkit-flex;-webkit-flex:1 0 0;-ms-flex:1 0 0;flex:1 0 0;-ms-flex-align:center}.navbar .navbar-section:last-child{-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end}.navbar .navbar-center{-webkit-align-items:center;align-items:center;display:flex;display:-ms-flexbox;display:-webkit-flex;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-align:center}.navbar .navbar-brand{font-size:1.6rem;font-weight:500;text-decoration:none}.panel{border:.1rem solid #f0f1f4;border-radius:.2rem;display:flex;display:-ms-flexbox;display:-webkit-flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.panel .panel-footer,.panel .panel-header{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;padding:1.5rem}.panel .panel-nav{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.panel .panel-body{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;overflow-y:auto;padding:0 1.5rem}.panel .panel-title{font-size:2rem}.panel .panel-subtitle{color:#bbc1cd}.empty{background:#f8f9fa;border-radius:.2rem;color:#727e96;padding:4rem;text-align:center}.empty .empty-subtitle,.empty .empty-title{margin:1rem auto}.empty .empty-subtitle{color:#bbc1cd}.empty .empty-action{margin-top:1.5rem}.form-autocomplete{position:relative}.form-autocomplete .form-autocomplete-input{-webkit-align-content:flex-start;align-content:flex-start;display:flex;display:-ms-flexbox;display:-webkit-flex;-ms-flex-line-pack:start;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;height:auto;min-height:3.2rem;padding:.1rem 0 0 .1rem}.form-autocomplete .form-autocomplete-input.is-focused{border-color:#5764c6;box-shadow:0 0 0 .2rem rgba(87,100,198,.15)}.form-autocomplete .form-autocomplete-input .form-input{border-color:transparent;box-shadow:none;display:inline-block;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;height:2.8rem;padding:.3rem .8rem;width:auto}.form-autocomplete mark{font-size:1;padding:.1em 0}.form-autocomplete .menu{left:0;position:absolute;top:100%;width:100%}.avatar{background:#5764c6;border-radius:50%;color:rgba(255,255,255,.85);display:inline-block;font-size:1.4rem;font-weight:300;height:3.2rem;line-height:1;margin:0;position:relative;vertical-align:middle;width:3.2rem}.avatar.avatar-xs{font-size:.8rem;height:1.6rem;width:1.6rem}.avatar.avatar-sm{font-size:1rem;height:2.4rem;width:2.4rem}.avatar.avatar-lg{font-size:2rem;height:4.8rem;width:4.8rem}.avatar.avatar-xl{font-size:2.6rem;height:6.4rem;width:6.4rem}.avatar img{border-radius:50%;height:100%;position:relative;width:100%;z-index:100}.avatar .avatar-icon{background:#fff;bottom:14.64%;height:50%;padding:.2rem;position:absolute;right:14.64%;-webkit-transform:translate(50%,50%);-ms-transform:translate(50%,50%);transform:translate(50%,50%);width:50%}.avatar[data-initial]::before{color:currentColor;content:attr(data-initial);left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);z-index:1}.badge{position:relative;white-space:nowrap}.badge:not([data-badge])::after,.badge[data-badge]::after{background:#5764c6;background-clip:padding-box;border-radius:1rem;box-shadow:0 0 0 .2rem #fff;color:#fff;content:attr(data-badge);display:inline-block;-webkit-transform:translate(-.2rem,-1rem);-ms-transform:translate(-.2rem,-1rem);transform:translate(-.2rem,-1rem)}.badge[data-badge]::after{font-size:1.2rem;height:1.8rem;line-height:1;min-width:1.8rem;padding:.3rem .5rem;text-align:center;white-space:nowrap}.badge:not([data-badge])::after,.badge[data-badge=""]::after{height:.6rem;min-width:.6rem;padding:0;width:.6rem}.badge.btn::after{position:absolute;right:0;top:0;-webkit-transform:translate(50%,-50%);-ms-transform:translate(50%,-50%);transform:translate(50%,-50%)}.badge.avatar::after{position:absolute;right:14.64%;top:14.64%;-webkit-transform:translate(50%,-50%);-ms-transform:translate(50%,-50%);transform:translate(50%,-50%);z-index:100}.badge.avatar-xs::after{content:"";height:.8rem;min-width:.8rem;padding:0;width:.8rem}.bar{background:#f0f1f4;border-radius:.2rem;display:flex;display:-ms-flexbox;display:-webkit-flex;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;height:1.6rem;width:100%}.bar.bar-sm{height:.4rem}.bar .bar-item{background:#5764c6;color:#fff;display:block;-ms-flex-negative:0;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.2rem;height:100%;line-height:1;padding:.2rem 0;position:relative;text-align:center;width:0}.bar .bar-item:first-child{border-bottom-left-radius:.2rem;border-top-left-radius:.2rem}.bar .bar-item:last-child{border-bottom-right-radius:.2rem;border-top-right-radius:.2rem;-ms-flex-negative:1;-webkit-flex-shrink:1;flex-shrink:1}.bar-slider{height:.2rem;margin:1rem 0;position:relative}.bar-slider .bar-item{left:0;padding:0;position:absolute}.bar-slider .bar-item:not(:last-child):first-child{background:#f0f1f4;z-index:1}.bar-slider .bar-slider-btn{background:#5764c6;border:0;border-radius:50%;height:1.2rem;padding:0;position:absolute;right:0;top:50%;-webkit-transform:translate(50%,-50%);-ms-transform:translate(50%,-50%);transform:translate(50%,-50%);width:1.2rem}.bar-slider .bar-slider-btn:active{box-shadow:0 0 0 .2rem #5764c6}.card{background:#fff;border:.1rem solid #f0f1f4;border-radius:.2rem;display:block}.card .card-body,.card .card-footer,.card .card-header{padding:1.5rem;padding-bottom:0}.card .card-body:last-child,.card .card-footer:last-child,.card .card-header:last-child{padding-bottom:1.5rem}.card .card-image{padding-top:1.5rem}.card .card-image:first-child{padding-top:0}.card .card-image:first-child img{border-top-left-radius:.2rem;border-top-right-radius:.2rem}.card .card-image:last-child img{border-bottom-left-radius:.2rem;border-bottom-right-radius:.2rem}.card .card-title{font-size:2rem}.card .card-subtitle{color:#bbc1cd;font-size:1.2rem}.chip{-webkit-align-items:center;align-items:center;background:#f0f1f4;border-radius:.2rem;color:#727e96;display:-ms-inline-flexbox;display:inline-flex;display:-webkit-inline-flex;-ms-flex-align:center;height:2.8rem;margin:0 .1rem .1rem 0;max-width:100%;padding:.1rem .8rem;text-decoration:none;vertical-align:middle}.chip.active{background:#5764c6;color:#fff}.chip .avatar{margin-left:-.4rem;margin-right:.4rem}.dropdown{display:inline-block;position:relative}.dropdown .menu{-webkit-animation:slide-down .2s ease 1;animation:slide-down .2s ease 1;display:none;left:0;position:absolute;top:100%}.dropdown.dropdown-right .menu{left:auto;right:0}.dropdown .dropdown-toggle:focus+.menu,.dropdown .menu:hover,.dropdown.active .menu{display:block}.dropdown .btn-group .dropdown-toggle:nth-last-child(2){border-bottom-right-radius:.2rem;border-top-right-radius:.2rem}.menu{background:#fff;border-radius:.2rem;box-shadow:0 .1rem .4rem rgba(69,77,93,.3);list-style:none;margin:0;min-width:18rem;padding:1rem;-webkit-transform:translateY(.5rem);-ms-transform:translateY(.5rem);transform:translateY(.5rem);z-index:100}.menu .menu-item{margin-top:0;padding:0 .8rem;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.menu .menu-item>a{border-radius:.2rem;color:inherit;display:block;margin:0 -.8rem;padding:.6rem .8rem;text-decoration:none}.menu .menu-item>a:focus,.menu .menu-item>a:hover{color:#5764c6}.menu .menu-item>a.active,.menu .menu-item>a:active{background:#fbfbfe;color:#5764c6}.menu .menu-badge{float:right;padding:.6rem 0}.menu .menu-badge .btn{margin-top:-.2rem}.modal{-webkit-align-items:center;align-items:center;bottom:0;display:none;-ms-flex-align:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;left:0;opacity:0;overflow:hidden;padding:1rem;position:fixed;right:0;top:0}.modal.active,.modal:target{display:flex;display:-ms-flexbox;display:-webkit-flex;opacity:1;z-index:400}.modal.active .modal-overlay,.modal:target .modal-overlay{background:rgba(69,77,93,.5);bottom:0;cursor:default;display:block;left:0;position:absolute;right:0;top:0}.modal.active .modal-container,.modal:target .modal-container{-webkit-animation:slide-down .2s ease 1;animation:slide-down .2s ease 1;max-width:64rem;z-index:1}.modal.modal-sm .modal-container{max-width:32rem}.modal-container{background:#fff;border-radius:.2rem;box-shadow:0 .4rem 1rem rgba(69,77,93,.3);display:block;padding:0;text-align:left}.modal-container .modal-header{padding:1.5rem}.modal-container .modal-header .modal-title{font-size:1.6rem;margin:0}.modal-container .modal-body{max-height:50vh;overflow-y:auto;padding:1.5rem;position:relative}.modal-container .modal-footer{padding:1.5rem;text-align:right}.breadcrumb,.nav,.pagination,.tab{list-style:none;margin:.5rem 0}.breadcrumb{padding:1.2rem}.breadcrumb .breadcrumb-item{display:inline-block;margin:0}.breadcrumb .breadcrumb-item:last-child{color:#acb3c2}.breadcrumb .breadcrumb-item:not(:first-child)::before{color:#e7e9ed;content:"/";padding:0 .4rem}.tab{-webkit-align-items:center;align-items:center;display:flex;display:-ms-flexbox;display:-webkit-flex;-ms-flex-align:center;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.tab .tab-item{margin-top:0}.tab .tab-item.tab-action{-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;text-align:right}.tab .tab-item a{border-bottom:.2rem solid transparent;color:inherit;display:block;margin-top:0;padding:.6rem 1.2rem .4rem 1.2rem;text-decoration:none}.tab .tab-item a:focus,.tab .tab-item a:hover{color:#5764c6}.tab .tab-item a.active,.tab .tab-item.active a{border-bottom-color:#5764c6;color:#5764c6}.tab.tab-block .tab-item{-webkit-flex:1 0 0;-ms-flex:1 0 0;flex:1 0 0;text-align:center}.tab.tab-block .tab-item .badge[data-badge]::after{position:absolute;right:-.4rem;top:-.4rem;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.tab:not(.tab-block) .badge{padding-right:.2rem}.pagination{display:flex;display:-ms-flexbox;display:-webkit-flex}.pagination .page-item{margin:1rem .1rem}.pagination .page-item span{display:inline-block;padding:.6rem .4rem}.pagination .page-item a{border-radius:.2rem;color:#727e96;display:inline-block;padding:.6rem .8rem;text-decoration:none}.pagination .page-item a:focus,.pagination .page-item a:hover{color:#5764c6}.pagination .page-item a.disabled,.pagination .page-item a[disabled]{cursor:default;opacity:.5;pointer-events:none}.pagination .page-item.active a{background:#5764c6;color:#fff}.pagination .page-item.page-next,.pagination .page-item.page-prev{-webkit-flex:1 0 50%;-ms-flex:1 0 50%;flex:1 0 50%}.pagination .page-item.page-next{text-align:right}.pagination .page-item .page-item-title{margin:0}.pagination .page-item .page-item-subtitle{margin:0;opacity:.5}.nav{display:flex;display:-ms-flexbox;display:-webkit-flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.nav .nav-item a{color:#727e96;padding:.6rem .8rem;text-decoration:none}.nav .nav-item a:focus,.nav .nav-item a:hover{color:#5764c6}.nav .nav-item.active>a{font-weight:700}.nav .nav-item.active>a:focus,.nav .nav-item.active>a:hover{color:#5764c6}.nav .nav{margin-bottom:1rem;margin-left:2rem}.nav .nav a{color:#acb3c2}.popover{display:inline-block;position:relative}.popover .popover-container{content:attr(data-tooltip);left:50%;opacity:0;padding:1rem;position:absolute;top:0;-webkit-transform:translate(-50%,-50%) scale(0);-ms-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);transition:transform .2s ease,-webkit-transform .2s ease;transition:transform .2s ease;transition:-webkit-transform .2s ease;width:32rem;z-index:400}.popover .popover-container:hover,.popover :focus+.popover-container,.popover:hover .popover-container{display:block;opacity:1;-webkit-transform:translate(-50%,-100%) scale(1);-ms-transform:translate(-50%,-100%) scale(1);transform:translate(-50%,-100%) scale(1)}.popover.popover-right .popover-container{left:100%;top:50%}.popover.popover-right .popover-container:hover,.popover.popover-right :focus+.popover-container,.popover.popover-right:hover .popover-container{-webkit-transform:translate(0,-50%) scale(1);-ms-transform:translate(0,-50%) scale(1);transform:translate(0,-50%) scale(1)}.popover.popover-bottom .popover-container{left:50%;top:100%}.popover.popover-bottom .popover-container:hover,.popover.popover-bottom :focus+.popover-container,.popover.popover-bottom:hover .popover-container{-webkit-transform:translate(-50%,0) scale(1);-ms-transform:translate(-50%,0) scale(1);transform:translate(-50%,0) scale(1)}.popover.popover-left .popover-container{left:0;top:50%}.popover.popover-left .popover-container:hover,.popover.popover-left :focus+.popover-container,.popover.popover-left:hover .popover-container{-webkit-transform:translate(-100%,-50%) scale(1);-ms-transform:translate(-100%,-50%) scale(1);transform:translate(-100%,-50%) scale(1)}.popover .card{border:0;box-shadow:0 .4rem 1rem rgba(69,77,93,.3)}.step{display:flex;display:-ms-flexbox;display:-webkit-flex;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;list-style:none;margin:.5rem 0;width:100%}.step .step-item{-webkit-flex:1 1 0;-ms-flex:1 1 0;flex:1 1 0;margin-top:0;min-height:2rem;position:relative;text-align:center}.step .step-item:not(:first-child)::before{background:#5764c6;content:"";height:.2rem;left:-50%;position:absolute;top:.9rem;width:100%}.step .step-item a{color:#acb3c2;display:inline-block;padding:2rem 1rem 0;text-decoration:none}.step .step-item a::before{background:#5764c6;border:.2rem solid #fff;border-radius:50%;content:"";display:block;height:1.2rem;left:50%;position:absolute;top:.4rem;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);width:1.2rem;z-index:1}.step .step-item.active a::before{background:#fff;border:.2rem solid #5764c6}.step .step-item.active~.step-item::before{background:#f0f1f4}.step .step-item.active~.step-item a::before{background:#e7e9ed}.tile{-webkit-align-content:space-between;align-content:space-between;-webkit-align-items:flex-start;align-items:flex-start;display:flex;display:-ms-flexbox;display:-webkit-flex;-ms-flex-align:start;-ms-flex-line-pack:justify}.tile .tile-action,.tile .tile-icon{-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}.tile .tile-content{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto}.tile .tile-content:not(:first-child){padding-left:1rem}.tile .tile-content:not(:last-child){padding-right:1rem}.tile .tile-title{line-height:2rem}.tile .tile-subtitle{color:#bbc1cd;line-height:2rem}.tile.tile-centered{-webkit-align-items:center;align-items:center;-ms-flex-align:center}.tile.tile-centered .tile-content{overflow:hidden}.tile.tile-centered .tile-subtitle,.tile.tile-centered .tile-title{margin-bottom:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast{background:rgba(69,77,93,.9);border:.1rem solid #454d5d;border-color:#454d5d;border-radius:.2rem;color:#fff;display:block;padding:1rem;width:100%}.toast.toast-primary{background:rgba(87,100,198,.9);border-color:#5764c6}.toast.toast-success{background:rgba(50,182,67,.9);border-color:#32b643}.toast.toast-warning{background:rgba(255,183,0,.9);border-color:#ffb700}.toast.toast-error{background:rgba(232,86,0,.9);border-color:#e85600}.toast a{color:#fff;text-decoration:underline}.toast a.active,.toast a:active,.toast a:focus,.toast a:hover{opacity:.75}.tooltip{position:relative}.tooltip::after{background:rgba(69,77,93,.9);border-radius:.2rem;bottom:100%;color:#fff;content:attr(data-tooltip);display:block;font-size:1.2rem;left:50%;max-width:32rem;opacity:0;overflow:hidden;padding:.4rem .8rem;pointer-events:none;position:absolute;text-overflow:ellipsis;-webkit-transform:translate(-50%,1rem);-ms-transform:translate(-50%,1rem);transform:translate(-50%,1rem);transition:all .2s ease;white-space:nowrap;z-index:200}.tooltip:focus::after,.tooltip:hover::after{opacity:1;-webkit-transform:translate(-50%,-.5rem);-ms-transform:translate(-50%,-.5rem);transform:translate(-50%,-.5rem)}.tooltip.disabled,.tooltip[disabled]{pointer-events:auto}.tooltip.tooltip-right::after{bottom:50%;left:100%;-webkit-transform:translate(-1rem,50%);-ms-transform:translate(-1rem,50%);transform:translate(-1rem,50%)}.tooltip.tooltip-right:focus::after,.tooltip.tooltip-right:hover::after{-webkit-transform:translate(.5rem,50%);-ms-transform:translate(.5rem,50%);transform:translate(.5rem,50%)}.tooltip.tooltip-bottom::after{bottom:auto;top:100%;-webkit-transform:translate(-50%,-1rem);-ms-transform:translate(-50%,-1rem);transform:translate(-50%,-1rem)}.tooltip.tooltip-bottom:focus::after,.tooltip.tooltip-bottom:hover::after{-webkit-transform:translate(-50%,.5rem);-ms-transform:translate(-50%,.5rem);transform:translate(-50%,.5rem)}.tooltip.tooltip-left::after{bottom:50%;left:auto;right:100%;-webkit-transform:translate(1rem,50%);-ms-transform:translate(1rem,50%);transform:translate(1rem,50%)}.tooltip.tooltip-left:focus::after,.tooltip.tooltip-left:hover::after{-webkit-transform:translate(-.5rem,50%);-ms-transform:translate(-.5rem,50%);transform:translate(-.5rem,50%)}@-webkit-keyframes loading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes loading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes slide-down{0%{opacity:0;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;-webkit-transform:translateY(-3rem);transform:translateY(-3rem)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}.divider,.divider-vert{display:block;position:relative}.divider-vert[data-content]::after,.divider[data-content]::after{background:#fff;color:#e7e9ed;content:attr(data-content);display:inline-block;font-size:1.2rem;padding:0 .8rem;-webkit-transform:translateY(-1.1rem);-ms-transform:translateY(-1.1rem);transform:translateY(-1.1rem)}.divider{border-top:.1rem solid #f0f1f4;height:.1rem;margin:1rem 0}.divider-vert{display:block;padding:1rem}.divider-vert::before{border-left:.1rem solid #f0f1f4;bottom:1rem;content:"";display:block;left:50%;position:absolute;top:1rem;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.divider-vert[data-content]::after{left:50%;padding:.4rem 0;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.loading{color:transparent!important;min-height:1.6rem;pointer-events:none;position:relative}.loading::after{-webkit-animation:loading .5s infinite linear;animation:loading .5s infinite linear;border:.2rem solid #5764c6;border-radius:.8rem;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1.6rem;left:50%;margin-left:-.8rem;margin-top:-.8rem;position:absolute;top:50%;width:1.6rem;z-index:1}.clearfix::after,.container::after{clear:both;content:"";display:table}.float-left{float:left!important}.float-right{float:right!important}.rel{position:relative}.abs{position:absolute}.fixed{position:fixed}.centered{display:block;float:none;margin-left:auto;margin-right:auto}.mt-10{margin-top:1rem}.mr-10{margin-right:1rem}.mb-10{margin-bottom:1rem}.ml-10{margin-left:1rem}.mt-5{margin-top:.5rem}.mr-5{margin-right:.5rem}.mb-5{margin-bottom:.5rem}.ml-5{margin-left:.5rem}.pt-10{padding-top:1rem}.pr-10{padding-right:1rem}.pb-10{padding-bottom:1rem}.pl-10{padding-left:1rem}.pt-5{padding-top:.5rem}.pr-5{padding-right:.5rem}.pb-5{padding-bottom:.5rem}.pl-5{padding-left:.5rem}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.flex{display:flex;display:-ms-flexbox;display:-webkit-flex}.inline-flex{display:inline-flex;display:-ms-inline-flexbox;display:-webkit-inline-flex}.hide{display:none!important}.visible{visibility:visible}.invisible{visibility:hidden}.text-hide{background:0 0;border:0;color:transparent;font-size:0;line-height:0;text-shadow:none}.text-assistive{border:0;clip:rect(0,0,0,0);height:.1rem;margin:-.1rem;overflow:hidden;padding:0;position:absolute;width:.1rem}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-normal{font-weight:400}.text-bold{font-weight:700}.text-italic{font-style:italic}.text-large{font-size:1.2em}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-clip{overflow:hidden;text-overflow:clip;white-space:nowrap}.text-break{-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;word-break:break-word;word-wrap:break-word}.hand{cursor:pointer}.shadow-0{box-shadow:0 0 .2rem rgba(69,77,93,.3)}.shadow-1{box-shadow:0 .1rem .4rem rgba(69,77,93,.3)}.shadow-2{box-shadow:0 .2rem .6rem rgba(69,77,93,.3)}.shadow-3{box-shadow:0 .3rem .8rem rgba(69,77,93,.3)}.shadow-4{box-shadow:0 .4rem 1rem rgba(69,77,93,.3)}.rounded{border-radius:.2rem}.circle{border-radius:50%} \ No newline at end of file diff --git a/build/templates/index.html b/build/templates/index.html index dbd15ed..cda3d33 100644 --- a/build/templates/index.html +++ b/build/templates/index.html @@ -1,37 +1,23 @@ -{% block head %} + + + + + + + - -{% endblock %} - + - {% block content %} - - - - - - - - {% endblock %} - + +
-{% block styles %} - - - - -{% endblock %} - -{% block scripts %} + -{% endblock %} - diff --git a/build/website.py b/build/website.py index 5f6ef5b..0839315 100755 --- a/build/website.py +++ b/build/website.py @@ -1,7 +1,7 @@ #! /usr/bin/python3 from functools import partial -from flask import abort, Flask, render_template, flash, request, send_from_directory +from flask import abort, Flask, render_template, flash, request, send_from_directory, jsonify from werkzeug.local import Local, LocalProxy, LocalManager from flask_appconfig import AppConfig @@ -9,13 +9,13 @@ from urllib.parse import unquote from urllib.parse import quote, unquote from json import dumps, loads -from comment import testcomments - from werkzeug.contrib.cache import MemcachedCache cache = MemcachedCache(['127.0.0.1:11211']) import os + from posts import Posts +from projects import getProjects posts = Posts() @@ -34,7 +34,6 @@ def cacheit(key, thunk): return cached def NeverWhere(configfile=None): - app = Flask(__name__) app.config["TEMPLATES_AUTO_RELOAD"] = True app.config["COUCHDB_SERVER"] = "http://localhost:5984" @@ -43,11 +42,28 @@ def NeverWhere(configfile=None): #return send_from_directory("/srv/http/goal/favicon.ico", #'favicon.ico', mimetype='image/vnd.microsoft.icon') + @app.route("/blog/projects", methods=("GET",)) + def projects(): + return jsonify(cacheit("projects", getProjects)) + + @app.route("/blog/stuff", methods=("GET",)) + def stuff(): + return render_template("projects.html") + + @app.route("/blog/decision/", methods=("GET", "POST")) + def decision(): + print("matched decision") + return render_template("decisions.html") + @app.route("/blog/", methods=("GET", "POST")) def index(): print("matched index") return render_template("index.html") + @app.route("/blog/editor/", methods=("GET", "POST")) + def editor(): + return render_template("write.html") + @app.route("/blog/scripts/", methods=("GET", "POST")) def send_script(filename): print("matched scripts route") @@ -57,30 +73,21 @@ def NeverWhere(configfile=None): def send_style(filename): return send_from_directory("/srv/http/riotblog/styles", filename) - @app.route("/blog/switchpost/") - def switchPost(pid): - posts = { - "1" : "Post one is now changed as before! ", - "2" : "Post two here and it's changed again and again! " - } - return posts.get(pid, "false") - - - @app.route("/blog/comments/") - def comments(pid): - try: - return testcomments.get(int(pid), dumps([])) - except ValueError as e: - print(e) - return dumps([]) - @app.route("/blog/insert/") def insert(): return posts.savepost(**request.args) + @app.route("/blog/switchpost/") + def getposts(pid): + try: + index = int(pid) + except ValueError: + index = 0 + return posts.getposts(index+1, index) + @app.route("/") def page_not_found(path): - return "Custom failure message" + return "Oops, couldn't find that :/" return app diff --git a/errors b/errors new file mode 100644 index 0000000000000000000000000000000000000000..9700e8d546a9852d66230ec33ef0379e60f15e50 GIT binary patch literal 5513 zcmd^@QE$^Q5XX7Wr#Qqz8fj@5nkfOV zvCBd58SX-61cjHV!1N$AoP2<#>Ab={KI&i)4jM!a7FSjhq0R=P(bZM8kTm#a-kN1) zjZ%KR{aeWkS)E$r8-;E#hWPnjgeNQcd-nvHHXVMR?&Yf0AZWEHd!%-#u7Bs}4rYf( z2le60B0D_VuL0nS8?Qpcq3Y+8*=W?JmrB7gkoCwG2Q^$3Gun*ENWl`GA0OXie>8;+Z?%P9b*aOLgb z(~NL|Q} z%bh?a+C0wLVdEE-vuzdDp5zjdC%Gl#CJxwdSveEO)3{|7Nt`b>|DJK-yEOXzSK(B% zSz0w+blye4f?ZlJzKMWAiM6#b#+mD^_qvxY#T$t_KS22-;+s7G1Qaj<5y0 z^vM2Ru^&K7EQdT$Hb>wl%d{dF%Op=yj`_-p(&KxAw1uY=YmKd8)&vz1M&%b$7w}Qz zdSu0g6*4jxEKAN_)vt@}PE@=(&a(G{SSG`15M^4SW(BZbX1rzzjk^amEnJ0}Mea-zA-Z0-9'\",;\\\\]"),NEED_ESCAPE=/(?=[[\]()*+?.^$|])/g,FINDBRACES={"(":RegExp("([()])|"+S_QBLOCKS,REGLOB),"[":RegExp("([[\\]])|"+S_QBLOCKS,REGLOB),"{":RegExp("([{}])|"+S_QBLOCKS,REGLOB)},DEFAULT="{ }";var _pairs=["{","}","{","}",/{[^}]*}/,/\\([{}])/g,/\\({)|{/g,RegExp("\\\\(})|([[({])|(})|"+S_QBLOCKS,REGLOB),DEFAULT,/^\s*{\^?\s*([$\w]+)(?:\s*,\s*(\S+))?\s+in\s+(\S.*)\s*}/,/(^|[^\\]){=[\S\s]*?}/];var cachedBrackets=UNDEF,_regex,_cache=[],_settings;function _loopback(re){return re}function _rewrite(re,bp){if(!bp){bp=_cache}return new RegExp(re.source.replace(/{/g,bp[2]).replace(/}/g,bp[3]),re.global?REGLOB:"")}function _create(pair){if(pair===DEFAULT){return _pairs}var arr=pair.split(" ");if(arr.length!==2||UNSUPPORTED.test(pair)){throw new Error('Unsupported brackets "'+pair+'"')}arr=arr.concat(pair.replace(NEED_ESCAPE,"\\").split(" "));arr[4]=_rewrite(arr[1].length>1?/{[\S\s]*?}/:_pairs[4],arr);arr[5]=_rewrite(pair.length>3?/\\({|})/g:_pairs[5],arr);arr[6]=_rewrite(_pairs[6],arr);arr[7]=RegExp("\\\\("+arr[3]+")|([[({])|("+arr[3]+")|"+S_QBLOCKS,REGLOB);arr[8]=pair;return arr}function _brackets(reOrIdx){return reOrIdx instanceof RegExp?_regex(reOrIdx):_cache[reOrIdx]}_brackets.split=function split(str,tmpl,_bp){if(!_bp){_bp=_cache}var parts=[],match,isexpr,start,pos,re=_bp[6];isexpr=start=re.lastIndex=0;while(match=re.exec(str)){pos=match.index;if(isexpr){if(match[2]){re.lastIndex=skipBraces(str,match[2],re.lastIndex);continue}if(!match[3]){continue}}if(!match[1]){unescapeStr(str.slice(start,pos));start=re.lastIndex;re=_bp[6+(isexpr^=1)];re.lastIndex=start}}if(str&&start tag",err.riotData.tagName)}console.error(err)}}function _create(str){var expr=_getTmpl(str);if(expr.slice(0,11)!=="try{return "){expr="return "+expr}return new Function("E",expr+";")}var CH_IDEXPR=String.fromCharCode(8279),RE_CSNAME=/^(?:(-?[_A-Za-z\xA0-\xFF][-\w\xA0-\xFF]*)|\u2057(\d+)~):/,RE_QBLOCK=RegExp(brackets.S_QBLOCKS,"g"),RE_DQUOTE=/\u2057/g,RE_QBMARK=/\u2057(\d+)~/g;function _getTmpl(str){var qstr=[],expr,parts=brackets.split(str.replace(RE_DQUOTE,'"'),1);if(parts.length>2||parts[0]){var i,j,list=[];for(i=j=0;i2&&!div?CH_IDEXPR+(qstr.push(s)-1)+"~":s}).replace(/\s+/g," ").trim().replace(/\ ?([[\({},?\.:])\ ?/g,"$1");if(expr){var list=[],cnt=0,match;while(expr&&(match=expr.match(RE_CSNAME))&&!match.index){var key,jsb,re=/,|([[{(])|$/g;expr=RegExp.rightContext;key=match[2]?qstr[match[2]].slice(1,-1).trim().replace(/\s+/g," "):match[1];while(jsb=(match=re.exec(expr))[1]){skipBraces(jsb,re)}jsb=expr.slice(0,match.index);expr=RegExp.rightContext;list[cnt++]=_wrapExpr(jsb,1,key)}expr=!cnt?_wrapExpr(expr,asText):cnt>1?"["+list.join(",")+'].join(" ").trim()':list[0]}return expr;function skipBraces(ch,re){var mm,lv=1,ir=RE_BREND[ch];ir.lastIndex=re.lastIndex;while(mm=ir.exec(expr)){if(mm[0]===ch){++lv}else if(!--lv){break}}re.lastIndex=lv?expr.length:ir.lastIndex}}var JS_CONTEXT='"in this?this:'+(typeof window!=="object"?"global":"window")+").",JS_VARNAME=/[,{][\$\w]+(?=:)|(^ *|[^$\w\.{])(?!(?:typeof|true|false|null|undefined|in|instanceof|is(?:Finite|NaN)|void|NaN|new|Date|RegExp|Math)(?![$\w]))([$_A-Za-z][$\w]*)/g,JS_NOPROPS=/^(?=(\.[$\w]+))\1(?:[^.[(]|$)/;function _wrapExpr(expr,asText,key){var tb;expr=expr.replace(JS_VARNAME,function(match,p,mvar,pos,s){if(mvar){pos=tb?0:pos+match.length;if(mvar!=="this"&&mvar!=="global"&&mvar!=="window"){match=p+'("'+mvar+JS_CONTEXT+mvar;if(pos){tb=(s=s[pos])==="."||s==="("||s==="["}}else if(pos){tb=!JS_NOPROPS.test(s.slice(pos))}}return match});if(tb){expr="try{return "+expr+"}catch(e){E(e,this)}"}if(key){expr=(tb?"function(){"+expr+"}.call(this)":"("+expr+")")+'?"'+key+'":""'}else if(asText){expr="function(v){"+(tb?expr.replace("return ","v="):"v=("+expr+")")+';return v||v===0?v:""}.call(this)'}return expr}_tmpl.version=brackets.version="v3.0.2";return _tmpl}();var observable$1=function(el){el=el||{};var callbacks={},slice=Array.prototype.slice;Object.defineProperties(el,{on:{value:function(event,fn){if(typeof fn=="function"){(callbacks[event]=callbacks[event]||[]).push(fn)}return el},enumerable:false,writable:false,configurable:false},off:{value:function(event,fn){if(event=="*"&&!fn){callbacks={}}else{if(fn){var arr=callbacks[event];for(var i=0,cb;cb=arr&&arr[i];++i){if(cb==fn){arr.splice(i--,1)}}}else{delete callbacks[event]}}return el},enumerable:false,writable:false,configurable:false},one:{value:function(event,fn){function on(){el.off(event,on);fn.apply(el,arguments)}return el.on(event,on)},enumerable:false,writable:false,configurable:false},trigger:{value:function(event){var arguments$1=arguments;var arglen=arguments.length-1,args=new Array(arglen),fns,fn,i;for(i=0;ij){i--;remove.apply(tags[i],[tags,i])}}function remove(tags,i){tags.splice(i,1);this.unmount();arrayishRemove(this.parent,this,this.__.tagName,true)}function moveNestedTags(i){var this$1=this;each(Object.keys(this.tags),function(tagName){var tag=this$1.tags[tagName];if(isArray(tag)){each(tag,function(t){moveChildTag.apply(t,[tagName,i])})}else{moveChildTag.apply(tag,[tagName,i])}})}function move(root,nextTag,isVirtual){if(isVirtual){moveVirtual.apply(this,[root,nextTag])}else{safeInsert(root,this.root,nextTag.root)}}function insert(root,nextTag,isVirtual){if(isVirtual){makeVirtual.apply(this,[root,nextTag])}else{safeInsert(root,this.root,nextTag.root)}}function append(root,isVirtual){if(isVirtual){makeVirtual.call(this,root)}else{root.appendChild(this.root)}}function _each(dom,parent,expr){remAttr(dom,LOOP_DIRECTIVE);var mustReorder=typeof getAttr(dom,LOOP_NO_REORDER_DIRECTIVE)!==T_STRING||remAttr(dom,LOOP_NO_REORDER_DIRECTIVE),tagName=getTagName(dom),impl=__TAG_IMPL[tagName],parentNode=dom.parentNode,placeholder=createDOMPlaceholder(),child=getTag(dom),ifExpr=getAttr(dom,CONDITIONAL_DIRECTIVE),tags=[],oldItems=[],hasKeys,isLoop=true,isAnonymous=!__TAG_IMPL[tagName],isVirtual=dom.tagName==="VIRTUAL";expr=tmpl.loopKeys(expr);expr.isLoop=true;if(ifExpr){remAttr(dom,CONDITIONAL_DIRECTIVE)}parentNode.insertBefore(placeholder,dom);parentNode.removeChild(dom);expr.update=function updateEach(){var items=tmpl(expr.val,parent),frag=createFrag(),isObject$$1=!isArray(items)&&!isString(items),root=placeholder.parentNode;if(isObject$$1){hasKeys=items||false;items=hasKeys?Object.keys(items).map(function(key){return mkitem(expr,items[key],key)}):[]}else{hasKeys=false}if(ifExpr){items=items.filter(function(item,i){if(expr.key&&!isObject$$1){return!!tmpl(ifExpr,mkitem(expr,item,i,parent))}return!!tmpl(ifExpr,extend(Object.create(parent),item))})}each(items,function(item,i){var doReorder=mustReorder&&typeof item===T_OBJECT&&!hasKeys,oldPos=oldItems.indexOf(item),isNew=oldPos===-1,pos=!isNew&&doReorder?oldPos:i,tag=tags[pos],mustAppend=i>=oldItems.length,mustCreate=doReorder&&isNew||!doReorder&&!tag;item=!hasKeys&&expr.key?mkitem(expr,item,i):item;if(mustCreate){tag=new Tag$1(impl,{parent:parent,isLoop:isLoop,isAnonymous:isAnonymous,tagName:tagName,root:dom.cloneNode(isAnonymous),item:item,index:i},dom.innerHTML);tag.mount();if(mustAppend){append.apply(tag,[frag||root,isVirtual])}else{insert.apply(tag,[root,tags[i],isVirtual])}if(!mustAppend){oldItems.splice(i,0,item)}tags.splice(i,0,tag);if(child){arrayishAdd(parent.tags,tagName,tag,true)}}else if(pos!==i&&doReorder){if(contains(items,oldItems[pos])){move.apply(tag,[root,tags[i],isVirtual]);tags.splice(i,0,tags.splice(pos,1)[0]);oldItems.splice(i,0,oldItems.splice(pos,1)[0])}else{remove.apply(tags[i],[tags,i]);oldItems.splice(i,1)}if(expr.pos){tag[expr.pos]=i}if(!child&&tag.tags){moveNestedTags.call(tag,i)}}tag.__.item=item;tag.__.index=i;tag.__.parent=parent;if(!mustCreate){tag.update(item)}});unmountRedundant(items,tags);oldItems=items.slice();root.insertBefore(frag,placeholder)};expr.unmount=function(){each(tags,function(t){t.unmount()})};return expr}function parseExpressions(root,expressions,mustIncludeRoot){var this$1=this;var tree={parent:{children:expressions}};walkNodes(root,function(dom,ctx){var type=dom.nodeType,parent=ctx.parent,attr,expr,tagImpl;if(!mustIncludeRoot&&dom===root){return{parent:parent}}if(type===3&&dom.parentNode.tagName!=="STYLE"&&tmpl.hasExpr(dom.nodeValue)){parent.children.push({dom:dom,expr:dom.nodeValue})}if(type!==1){return ctx}var isVirtual=dom.tagName==="VIRTUAL";if(attr=getAttr(dom,LOOP_DIRECTIVE)){if(isVirtual){setAttr(dom,"loopVirtual",true)}parent.children.push(_each(dom,this$1,attr));return false}if(attr=getAttr(dom,CONDITIONAL_DIRECTIVE)){parent.children.push(Object.create(IfExpr).init(dom,this$1,attr));return false}if(expr=getAttr(dom,IS_DIRECTIVE)){if(tmpl.hasExpr(expr)){parent.children.push({isRtag:true,expr:expr,dom:dom,attrs:[].slice.call(dom.attributes)});return false}}tagImpl=getTag(dom);if(isVirtual){if(getAttr(dom,"virtualized")){dom.parentElement.removeChild(dom)}if(!tagImpl&&!getAttr(dom,"virtualized")&&!getAttr(dom,"loopVirtual")){tagImpl={tmpl:dom.outerHTML}}}if(tagImpl&&(dom!==root||mustIncludeRoot)){if(isVirtual&&!getAttr(dom,IS_DIRECTIVE)){setAttr(dom,"virtualized",true);var tag=new Tag$1({tmpl:dom.outerHTML},{root:dom,parent:this$1},dom.innerHTML);parent.children.push(tag)}else{var conf={root:dom,parent:this$1,hasImpl:true};parent.children.push(initChildTag(tagImpl,conf,dom.innerHTML,this$1));return false}}parseAttributes.apply(this$1,[dom,dom.attributes,function(attr,expr){if(!expr){return}parent.children.push(expr)}]);return{parent:parent}},tree);return{tree:tree,root:root}}function parseAttributes(dom,attrs,fn){var this$1=this;each(attrs,function(attr){var name=attr.name,bool=isBoolAttr(name),expr;if(contains(REF_DIRECTIVES,name)){expr=Object.create(RefExpr).init(dom,this$1,name,attr.value)}else if(tmpl.hasExpr(attr.value)){expr={dom:dom,expr:attr.value,attr:attr.name,bool:bool}}fn(attr,expr)})}var reHasYield=/|>([\S\s]*?)<\/yield\s*>|>)/gi;var reYieldSrc=/]*)['"]\s*>([\S\s]*?)<\/yield\s*>/gi;var reYieldDest=/|>([\S\s]*?)<\/yield\s*>)/gi;var rootEls={tr:"tbody",th:"tr",td:"tr",col:"colgroup"};var tblTags=IE_VERSION&&IE_VERSION<10?RE_SPECIAL_TAGS:RE_SPECIAL_TAGS_NO_OPTION;var GENERIC="div";function specialTags(el,tmpl,tagName){var select=tagName[0]==="o",parent=select?"select>":"table>";el.innerHTML="<"+parent+tmpl.trim()+"-1}}function normalizeName(name){if(typeof name!=="string"){name=String(name)}if(/[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(name)){throw new TypeError("Invalid character in header field name")}return name.toLowerCase()}function normalizeValue(value){if(typeof value!=="string"){value=String(value)}return value}function iteratorFor(items){var iterator={next:function(){var value=items.shift();return{done:value===undefined,value:value}}};if(support.iterable){iterator[Symbol.iterator]=function(){return iterator}}return iterator}function Headers(headers){this.map={};if(headers instanceof Headers){headers.forEach(function(value,name){this.append(name,value)},this)}else if(headers){Object.getOwnPropertyNames(headers).forEach(function(name){this.append(name,headers[name])},this)}}Headers.prototype.append=function(name,value){name=normalizeName(name);value=normalizeValue(value);var oldValue=this.map[name];this.map[name]=oldValue?oldValue+","+value:value};Headers.prototype["delete"]=function(name){delete this.map[normalizeName(name)]};Headers.prototype.get=function(name){name=normalizeName(name);return this.has(name)?this.map[name]:null};Headers.prototype.has=function(name){return this.map.hasOwnProperty(normalizeName(name))};Headers.prototype.set=function(name,value){this.map[normalizeName(name)]=normalizeValue(value)};Headers.prototype.forEach=function(callback,thisArg){var this$1=this;for(var name in this$1.map){if(this$1.map.hasOwnProperty(name)){callback.call(thisArg,this$1.map[name],name,this$1)}}};Headers.prototype.keys=function(){var items=[];this.forEach(function(value,name){items.push(name)});return iteratorFor(items)};Headers.prototype.values=function(){var items=[];this.forEach(function(value){items.push(value)});return iteratorFor(items)};Headers.prototype.entries=function(){var items=[];this.forEach(function(value,name){items.push([name,value])});return iteratorFor(items)};if(support.iterable){Headers.prototype[Symbol.iterator]=Headers.prototype.entries}function consumed(body){if(body.bodyUsed){return Promise.reject(new TypeError("Already read"))}body.bodyUsed=true}function fileReaderReady(reader){return new Promise(function(resolve,reject){reader.onload=function(){resolve(reader.result)};reader.onerror=function(){reject(reader.error)}})}function readBlobAsArrayBuffer(blob){var reader=new FileReader;var promise=fileReaderReady(reader);reader.readAsArrayBuffer(blob);return promise}function readBlobAsText(blob){var reader=new FileReader;var promise=fileReaderReady(reader);reader.readAsText(blob);return promise}function readArrayBufferAsText(buf){var view=new Uint8Array(buf);var chars=new Array(view.length);for(var i=0;i-1?upcased:method}function Request(input,options){options=options||{};var body=options.body;if(input instanceof Request){if(input.bodyUsed){throw new TypeError("Already read")}this.url=input.url;this.credentials=input.credentials;if(!options.headers){this.headers=new Headers(input.headers)}this.method=input.method;this.mode=input.mode;if(!body&&input._bodyInit!=null){body=input._bodyInit;input.bodyUsed=true}}else{this.url=String(input)}this.credentials=options.credentials||this.credentials||"omit";if(options.headers||!this.headers){this.headers=new Headers(options.headers)}this.method=normalizeMethod(options.method||this.method||"GET");this.mode=options.mode||this.mode||null;this.referrer=null;if((this.method==="GET"||this.method==="HEAD")&&body){throw new TypeError("Body not allowed for GET or HEAD requests")}this._initBody(body)}Request.prototype.clone=function(){return new Request(this,{body:this._bodyInit})};function decode(body){var form=new FormData;body.trim().split("&").forEach(function(bytes){if(bytes){var split=bytes.split("=");var name=split.shift().replace(/\+/g," ");var value=split.join("=").replace(/\+/g," ");form.append(decodeURIComponent(name),decodeURIComponent(value))}});return form}function parseHeaders(rawHeaders){var headers=new Headers;rawHeaders.split(/\r?\n/).forEach(function(line){var parts=line.split(":");var key=parts.shift().trim();if(key){var value=parts.join(":").trim();headers.append(key,value)}});return headers}Body.call(Request.prototype);function Response(bodyInit,options){if(!options){options={}}this.type="default";this.status="status"in options?options.status:200;this.ok=this.status>=200&&this.status<300;this.statusText="statusText"in options?options.statusText:"OK";this.headers=new Headers(options.headers);this.url=options.url||"";this._initBody(bodyInit)}Body.call(Response.prototype);Response.prototype.clone=function(){return new Response(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Headers(this.headers),url:this.url})};Response.error=function(){var response=new Response(null,{status:0,statusText:""});response.type="error";return response};var redirectStatuses=[301,302,303,307,308];Response.redirect=function(url,status){if(redirectStatuses.indexOf(status)===-1){throw new RangeError("Invalid status code")}return new Response(null,{status:status,headers:{location:url}})};self.Headers=Headers;self.Request=Request;self.Response=Response;self.fetch=function(input,init){return new Promise(function(resolve,reject){var request=new Request(input,init);var xhr=new XMLHttpRequest;xhr.onload=function(){var options={status:xhr.status,statusText:xhr.statusText,headers:parseHeaders(xhr.getAllResponseHeaders()||"")};options.url="responseURL"in xhr?xhr.responseURL:options.headers.get("X-Request-URL");var body="response"in xhr?xhr.response:xhr.responseText;resolve(new Response(body,options))};xhr.onerror=function(){reject(new TypeError("Network request failed"))};xhr.ontimeout=function(){reject(new TypeError("Network request failed"))};xhr.open(request.method,request.url,true);if(request.credentials==="include"){xhr.withCredentials=true}if("responseType"in xhr&&support.blob){xhr.responseType="blob"}request.headers.forEach(function(value,name){xhr.setRequestHeader(name,value)});xhr.send(typeof request._bodyInit==="undefined"?null:request._bodyInit)})};self.fetch.polyfill=true})(typeof self!=="undefined"?self:undefined);riot$1.tag2("comments",'
Your comment is too long!
',"","",function(opts){this.comments=[];this.maxlength=700;this.placeholder="Comment here!";this.focused=false;this.maxed="";this.warn=false;this.disabled="";this.loading=true;this.clearplaceholder=function(){if(!this.focused){this.update({placeholder:"",focused:true})}}.bind(this);this.checkplaceholder=function(){if(this.refs.textarea.value.trim().length==0){this.update({placeholder:"Comment here!",focused:false})}}.bind(this);this.closewarning=function(){this.update({warn:false})}.bind(this);this.echo=function(ev){if(this.refs.textarea.value.length>=this.maxlength){this.update({maxed:"maxinput",warn:true})}else{this.update({maxed:"",warn:false});window.setTimeout(this.closewarning,15e3)}}.bind(this);var self=this;this.getComments=function(pid){fetch("/blog/comments/"+pid).then(function(resp){return resp.text()}).then(function(body){self.update({comments:JSON.parse(body),loading:false})})}.bind(this);this.on("mount",function(){this.getComments(self.opts.pid)})});var _isPlaceholder$1=function _isPlaceholder(a){return a!=null&&typeof a==="object"&&a["@@functional/placeholder"]===true};var _isPlaceholder=_isPlaceholder$1;var _curry1$1=function _curry1(fn){return function f1(a){if(arguments.length===0||_isPlaceholder(a)){return f1}else{return fn.apply(this,arguments)}}};var _curry1=_curry1$1;var always$1=_curry1(function always(val){return function(){return val}});var always=always$1;var F=always(false);var always$3=always$1;var T=always$3(true);var __={"@@functional/placeholder":true};var _curry1$3=_curry1$1;var _isPlaceholder$3=_isPlaceholder$1;var _curry2$1=function _curry2(fn){return function f2(a,b){switch(arguments.length){case 0:return f2;case 1:return _isPlaceholder$3(a)?f2:_curry1$3(function(_b){return fn(a,_b)});default:return _isPlaceholder$3(a)&&_isPlaceholder$3(b)?f2:_isPlaceholder$3(a)?_curry1$3(function(_a){return fn(_a,b)}):_isPlaceholder$3(b)?_curry1$3(function(_b){return fn(a,_b)}):fn(a,b)}}};var _curry2=_curry2$1;var add=_curry2(function add(a,b){return Number(a)+Number(b)});var _concat$1=function _concat(set1,set2){set1=set1||[];set2=set2||[];var idx;var len1=set1.length;var len2=set2.length;var result=[];idx=0;while(idx=arguments$1.length)){result=received[combinedIdx]}else{result=arguments$1[argsIdx];argsIdx+=1}combined[combinedIdx]=result;if(!_isPlaceholder$4(result)){left-=1}combinedIdx+=1}return left<=0?fn.apply(this,combined):_arity$3(left,_curryN(length,combined,fn))}};var _arity=_arity$1;var _curry1$5=_curry1$1;var _curry2$3=_curry2$1;var _curryN=_curryN$1;var curryN$1=_curry2$3(function curryN(length,fn){if(length===1){return _curry1$5(fn)}return _arity(length,_curryN(length,[],fn))});var _concat=_concat$1;var _curry1$4=_curry1$1;var curryN=curryN$1;var addIndex=_curry1$4(function addIndex(fn){return curryN(fn.length,function(){var idx=0;var origFn=arguments[0];var list=arguments[arguments.length-1];var args=Array.prototype.slice.call(arguments,0);args[0]=function(){var result=origFn.apply(this,_concat(arguments,[idx,list]));idx+=1;return result};return fn.apply(this,args)})});var _curry1$6=_curry1$1;var _curry2$4=_curry2$1;var _isPlaceholder$5=_isPlaceholder$1;var _curry3$1=function _curry3(fn){return function f3(a,b,c){switch(arguments.length){case 0:return f3;case 1:return _isPlaceholder$5(a)?f3:_curry2$4(function(_b,_c){return fn(a,_b,_c)});case 2:return _isPlaceholder$5(a)&&_isPlaceholder$5(b)?f3:_isPlaceholder$5(a)?_curry2$4(function(_a,_c){return fn(_a,b,_c)}):_isPlaceholder$5(b)?_curry2$4(function(_b,_c){return fn(a,_b,_c)}):_curry1$6(function(_c){return fn(a,b,_c)});default:return _isPlaceholder$5(a)&&_isPlaceholder$5(b)&&_isPlaceholder$5(c)?f3:_isPlaceholder$5(a)&&_isPlaceholder$5(b)?_curry2$4(function(_a,_b){return fn(_a,_b,c)}):_isPlaceholder$5(a)&&_isPlaceholder$5(c)?_curry2$4(function(_a,_c){return fn(_a,b,_c)}):_isPlaceholder$5(b)&&_isPlaceholder$5(c)?_curry2$4(function(_b,_c){return fn(a,_b,_c)}):_isPlaceholder$5(a)?_curry1$6(function(_a){return fn(_a,b,c)}):_isPlaceholder$5(b)?_curry1$6(function(_b){return fn(a,_b,c)}):_isPlaceholder$5(c)?_curry1$6(function(_c){return fn(a,b,_c)}):fn(a,b,c)}}};var _concat$3=_concat$1;var _curry3=_curry3$1;var adjust=_curry3(function adjust(fn,idx,list){if(idx>=list.length||idx<-list.length){return list}var start=idx<0?list.length:0;var _idx=start+idx;var _list=_concat$3(list);_list[_idx]=fn(list[_idx]);return _list});var _isArray$1=Array.isArray||function _isArray(val){return val!=null&&val.length>=0&&Object.prototype.toString.call(val)==="[object Array]"};var _isTransformer$1=function _isTransformer(obj){return typeof obj["@@transducer/step"]==="function"};var _isArray=_isArray$1;var _isTransformer=_isTransformer$1;var _dispatchable$1=function _dispatchable(methodNames,xf,fn){return function(){if(arguments.length===0){return fn()}var args=Array.prototype.slice.call(arguments,0);var obj=args.pop();if(!_isArray(obj)){var idx=0;while(idxa?b:a});var _map$1=function _map(fn,functor){var idx=0;var len=functor.length;var result=Array(len);while(idx0){return x.hasOwnProperty(0)&&x.hasOwnProperty(x.length-1)}return false});var _xwrap=_xwrap$1;var bind=bind$1;var isArrayLike=isArrayLike$1;var _reduce$1=function(){function _arrayReduce(xf,acc,list){var idx=0;var len=list.length;while(idx=0){prop=nonEnumerableProps[nIdx];if(_has(prop,obj)&&!contains(ks,prop)){ks[ks.length]=prop}nIdx-=1}}return ks})}();var _curry2$9=_curry2$1;var _dispatchable$3=_dispatchable$1;var _map=_map$1;var _reduce=_reduce$1;var _xmap=_xmap$1;var curryN$4=curryN$1;var keys=keys$1;var map$1=_curry2$9(_dispatchable$3(["map"],_xmap,function map(fn,functor){switch(Object.prototype.toString.call(functor)){case"[object Function]":return curryN$4(functor.length,function(){return fn.call(this,functor.apply(this,arguments))});case"[object Object]":return _reduce(function(acc,key){acc[key]=fn(functor[key]);return acc},{},keys(functor));default:return _map(fn,functor)}}));var _curry2$12=_curry2$1;var prop$1=_curry2$12(function prop(p,obj){return obj[p]});var _curry2$8=_curry2$1;var map=map$1;var prop=prop$1;var pluck$1=_curry2$8(function pluck(p,list){return map(prop(p),list)});var _curry3$3=_curry3$1;var _reduce$3=_reduce$1;var reduce$1=_curry3$3(_reduce$3);var _curry1$7=_curry1$1;var curryN$3=curryN$1;var max=max$1;var pluck=pluck$1;var reduce=reduce$1;var allPass=_curry1$7(function allPass(preds){return curryN$3(reduce(max,0,pluck("length",preds)),function(){var arguments$1=arguments;var this$1=this;var idx=0;var len=preds.length;while(idx=0?limit:0);while(idxbb?1:0});var _curry3$5=_curry3$1;var assoc=_curry3$5(function assoc(prop,val,obj){var result={};for(var p in obj){result[p]=obj[p]}result[prop]=val;return result});var _isInteger$1=Number.isInteger||function _isInteger(n){return n<<0===n};var _curry3$6=_curry3$1;var _has$4=_has$1;var _isArray$4=_isArray$1;var _isInteger=_isInteger$1;var assoc$2=assoc;var assocPath=_curry3$6(function assocPath(path,val,obj){if(path.length===0){return val}var idx=path[0];if(path.length>1){var nextObj=_has$4(idx,obj)?obj[idx]:_isInteger(path[1])?[]:{};val=assocPath(Array.prototype.slice.call(path,1),val,nextObj)}if(_isInteger(idx)&&_isArray$4(obj)){var arr=[].concat(obj);arr[idx]=val;return arr}else{return assoc$2(idx,val,obj)}});var _curry2$21=_curry2$1;var nAry$1=_curry2$21(function nAry(n,fn){switch(n){case 0:return function(){return fn.call(this)};case 1:return function(a0){return fn.call(this,a0)};case 2:return function(a0,a1){return fn.call(this,a0,a1)};case 3:return function(a0,a1,a2){return fn.call(this,a0,a1,a2)};case 4:return function(a0,a1,a2,a3){return fn.call(this,a0,a1,a2,a3)};case 5:return function(a0,a1,a2,a3,a4){return fn.call(this,a0,a1,a2,a3,a4)};case 6:return function(a0,a1,a2,a3,a4,a5){return fn.call(this,a0,a1,a2,a3,a4,a5)};case 7:return function(a0,a1,a2,a3,a4,a5,a6){return fn.call(this,a0,a1,a2,a3,a4,a5,a6)};case 8:return function(a0,a1,a2,a3,a4,a5,a6,a7){return fn.call(this,a0,a1,a2,a3,a4,a5,a6,a7)};case 9:return function(a0,a1,a2,a3,a4,a5,a6,a7,a8){return fn.call(this,a0,a1,a2,a3,a4,a5,a6,a7,a8)};case 10:return function(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9){return fn.call(this,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9)};default:throw new Error("First argument to nAry must be a non-negative integer no greater than ten")}});var _curry1$13=_curry1$1;var nAry=nAry$1;var binary=_curry1$13(function binary(fn){return nAry(2,fn)});var _isFunction$1=function _isFunction(x){return Object.prototype.toString.call(x)==="[object Function]"};var _curry2$23=_curry2$1;var _reduce$5=_reduce$1;var ap$2=ap;var curryN$7=curryN$1;var map$5=map$1;var liftN$1=_curry2$23(function liftN(arity,fn){var lifted=curryN$7(arity,fn);return curryN$7(arity,function(){return _reduce$5(ap$2,map$5(lifted,arguments[0]),Array.prototype.slice.call(arguments,1))})});var _curry1$14=_curry1$1;var liftN=liftN$1;var lift$1=_curry1$14(function lift(fn){return liftN(fn.length,fn)});var _curry2$22=_curry2$1;var _isFunction=_isFunction$1;var and$2=and;var lift=lift$1;var both=_curry2$22(function both(f,g){return _isFunction(f)?function _both(){return f.apply(this,arguments)&&g.apply(this,arguments)}:lift(and$2)(f,g)});var _curry1$15=_curry1$1;var curryN$8=curryN$1;var curry$1=_curry1$15(function curry(fn){return curryN$8(fn.length,fn)});var curry=curry$1;var call=curry(function call(fn){return fn.apply(this,Array.prototype.slice.call(arguments,1))});var isArrayLike$3=isArrayLike$1;var _makeFlat$1=function _makeFlat(recursive){return function flatt(list){var value,jlen,j;var result=[];var idx=0;var ilen=list.length;while(idxmax){throw new Error("min must not be greater than max in clamp(min, max, value)")}return valuemax?max:value});var _cloneRegExp$1=function _cloneRegExp(pattern){return new RegExp(pattern.source,(pattern.global?"g":"")+(pattern.ignoreCase?"i":"")+(pattern.multiline?"m":"")+(pattern.sticky?"y":"")+(pattern.unicode?"u":""))};var _curry1$17=_curry1$1;var type$1=_curry1$17(function type(val){return val===null?"Null":val===undefined?"Undefined":Object.prototype.toString.call(val).slice(8,-1)});var _cloneRegExp=_cloneRegExp$1;var type=type$1;var _clone$1=function _clone(value,refFrom,refTo,deep){var copy=function copy(copiedValue){var len=refFrom.length;var idx=0;while(idx=0){if(stackA[idx]===a){return stackB[idx]===b}idx-=1}stackA.push(a);stackB.push(b);idx=keysA.length-1;while(idx>=0){var key=keysA[idx];if(!(_has$5(key,b)&&_equals(b[key],a[key],stackA,stackB))){return false}idx-=1}stackA.pop();stackB.pop();return true};var _curry2$27=_curry2$1;var _equals=_equals$1;var equals$1=_curry2$27(function equals(a,b){return _equals(a,b,[],[])});var equals=equals$1;var _indexOf$1=function _indexOf(list,a,idx){var inf,item;if(typeof list.indexOf==="function"){switch(typeof a){case"number":if(a===0){inf=1/a;while(idx=0};var _quote$1=function _quote(s){var escaped=s.replace(/\\/g,"\\\\").replace(/[\b]/g,"\\b").replace(/\f/g,"\\f").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/\v/g,"\\v").replace(/\0/g,"\\0");return'"'+escaped.replace(/"/g,'\\"')+'"'};var _toISOString$1=function(){var pad=function pad(n){return(n<10?"0":"")+n};return typeof Date.prototype.toISOString==="function"?function _toISOString(d){return d.toISOString()}:function _toISOString(d){return d.getUTCFullYear()+"-"+pad(d.getUTCMonth()+1)+"-"+pad(d.getUTCDate())+"T"+pad(d.getUTCHours())+":"+pad(d.getUTCMinutes())+":"+pad(d.getUTCSeconds())+"."+(d.getUTCMilliseconds()/1e3).toFixed(3).slice(2,5)+"Z"}}();var _complement$1=function _complement(f){return function(){return!f.apply(this,arguments)}};var _filter$1=function _filter(fn,list){var idx=0;var len=list.length;var result=[];while(idx":_toString(y,xs)};var mapPairs=function(obj,keys){return _map$3(function(k){return _quote(k)+": "+recur(obj[k])},keys.slice().sort())};switch(Object.prototype.toString.call(x)){case"[object Arguments]":return"(function() { return arguments; }("+_map$3(recur,x).join(", ")+"))";case"[object Array]":return"["+_map$3(recur,x).concat(mapPairs(x,reject(function(k){return/^\d+$/.test(k)},keys$4(x)))).join(", ")+"]";case"[object Boolean]":return typeof x==="object"?"new Boolean("+recur(x.valueOf())+")":x.toString();case"[object Date]":return"new Date("+(isNaN(x.valueOf())?recur(NaN):_quote(_toISOString(x)))+")";case"[object Null]":return"null";case"[object Number]":return typeof x==="object"?"new Number("+recur(x.valueOf())+")":1/x===-Infinity?"-0":x.toString(10);case"[object String]":return typeof x==="object"?"new String("+recur(x.valueOf())+")":_quote(x);case"[object Undefined]":return"undefined";default:if(typeof x.toString==="function"){var repr=x.toString();if(repr!=="[object Object]"){return repr}}return"{"+mapPairs(x,keys$4(x)).join(", ")+"}"}};var _curry1$22=_curry1$1;var _toString=_toString$1;var toString_1=_curry1$22(function toString(val){return _toString(val,[])});var _curry2$26=_curry2$1;var _isArray$6=_isArray$1;var _isFunction$3=_isFunction$1;var toString=toString_1;var concat=_curry2$26(function concat(a,b){if(a==null||!_isFunction$3(a.concat)){throw new TypeError(toString(a)+' does not have a method named "concat"')}if(_isArray$6(a)&&!_isArray$6(b)){throw new TypeError(toString(b)+" is not an array")}return a.concat(b)});var _arity$7=_arity$1;var _curry1$23=_curry1$1;var map$9=map$1;var max$5=max$1;var reduce$7=reduce$1;var cond=_curry1$23(function cond(pairs){var arity=reduce$7(max$5,0,map$9(function(pair){return pair[0].length},pairs));return _arity$7(arity,function(){var arguments$1=arguments;var this$1=this;var idx=0;while(idx10){throw new Error("Constructor with greater than ten arguments")}if(n===0){return function(){return new Fn}}return curry$3(nAry$3(n,function($0,$1,$2,$3,$4,$5,$6,$7,$8,$9){switch(arguments.length){case 1:return new Fn($0);case 2:return new Fn($0,$1);case 3:return new Fn($0,$1,$2);case 4:return new Fn($0,$1,$2,$3);case 5:return new Fn($0,$1,$2,$3,$4);case 6:return new Fn($0,$1,$2,$3,$4,$5);case 7:return new Fn($0,$1,$2,$3,$4,$5,$6);case 8:return new Fn($0,$1,$2,$3,$4,$5,$6,$7);case 9:return new Fn($0,$1,$2,$3,$4,$5,$6,$7,$8);case 10:return new Fn($0,$1,$2,$3,$4,$5,$6,$7,$8,$9)}}))});var _curry1$24=_curry1$1;var constructN=constructN$1;var construct=_curry1$24(function construct(Fn){return constructN(Fn.length,Fn)});var _contains$3=_contains$1;var _curry2$33=_curry2$1;var contains$1=_curry2$33(_contains$3);var _curry2$34=_curry2$1;var _map$4=_map$1;var curryN$9=curryN$1;var max$6=max$1;var pluck$5=pluck$1;var reduce$8=reduce$1;var converge=_curry2$34(function converge(after,fns){return curryN$9(reduce$8(max$6,0,pluck$5("length",fns)),function(){var args=arguments;var context=this;return after.apply(context,_map$4(function(fn){return fn.apply(context,args)},fns))})});var _curryN$4=_curryN$1;var _has$7=_has$1;var _xfBase$8=_xfBase$1;var _xreduceBy$1=function(){function XReduceBy(valueFn,valueAcc,keyFn,xf){this.valueFn=valueFn;this.valueAcc=valueAcc;this.keyFn=keyFn;this.xf=xf;this.inputs={}}XReduceBy.prototype["@@transducer/init"]=_xfBase$8.init;XReduceBy.prototype["@@transducer/result"]=function(result){var this$1=this;var key;for(key in this$1.inputs){if(_has$7(key,this$1.inputs)){result=this$1.xf["@@transducer/step"](result,this$1.inputs[key]);if(result["@@transducer/reduced"]){result=result["@@transducer/value"];break}}}this.inputs=null;return this.xf["@@transducer/result"](result)};XReduceBy.prototype["@@transducer/step"]=function(result,input){var key=this.keyFn(input);this.inputs[key]=this.inputs[key]||[key,this.valueAcc];this.inputs[key][1]=this.valueFn(this.inputs[key][1],input);return result};return _curryN$4(4,[],function _xreduceBy(valueFn,valueAcc,keyFn,xf){return new XReduceBy(valueFn,valueAcc,keyFn,xf)})}();var _curryN$3=_curryN$1;var _dispatchable$8=_dispatchable$1;var _has$6=_has$1;var _reduce$8=_reduce$1;var _xreduceBy=_xreduceBy$1;var reduceBy$1=_curryN$3(4,[],_dispatchable$8([],_xreduceBy,function reduceBy(valueFn,valueAcc,keyFn,list){return _reduce$8(function(acc,elt){var key=keyFn(elt);acc[key]=valueFn(_has$6(key,acc)?acc[key]:valueAcc,elt);return acc},{},list)}));var reduceBy=reduceBy$1;var countBy=reduceBy(function(acc,elem){return acc+1},0);var add$2=add;var dec=add$2(-1);var _curry3$9=_curry3$1;var descend=_curry3$9(function descend(fn,a,b){var aa=fn(a);var bb=fn(b);return aa>bb?-1:aa0){this.n-=1;return result}return this.xf["@@transducer/step"](result,input)};return _curry2$41(function _xdrop(n,xf){return new XDrop(n,xf)})}();var _curry2$40=_curry2$1;var _dispatchable$9=_dispatchable$1;var _xdrop=_xdrop$1;var slice$3=slice$1;var drop=_curry2$40(_dispatchable$9(["drop"],_xdrop,function drop(n,xs){return slice$3(Math.max(0,n),Infinity,xs)}));var _curry2$44=_curry2$1;var _reduced$4=_reduced$1;var _xfBase$10=_xfBase$1;var _xtake$1=function(){function XTake(n,xf){this.xf=xf;this.n=n;this.i=0}XTake.prototype["@@transducer/init"]=_xfBase$10.init;XTake.prototype["@@transducer/result"]=_xfBase$10.result;XTake.prototype["@@transducer/step"]=function(result,input){this.i+=1;var ret=this.n===0?result:this.xf["@@transducer/step"](result,input);return this.i>=this.n?_reduced$4(ret):ret};return _curry2$44(function _xtake(n,xf){return new XTake(n,xf)})}();var _curry2$43=_curry2$1;var _dispatchable$11=_dispatchable$1;var _xtake=_xtake$1;var slice$4=slice$1;var take$1=_curry2$43(_dispatchable$11(["take"],_xtake,function take(n,xs){return slice$4(0,n<0?Infinity:n,xs)}));var take=take$1;var _dropLast$1=function dropLast(n,xs){return take(n=0&&pred(list[idx])){idx-=1}return Array.prototype.slice.call(list,0,idx+1)};var _curry2$47=_curry2$1;var _reduce$9=_reduce$1;var _xfBase$12=_xfBase$1;var _xdropLastWhile$1=function(){function XDropLastWhile(fn,xf){this.f=fn;this.retained=[];this.xf=xf}XDropLastWhile.prototype["@@transducer/init"]=_xfBase$12.init;XDropLastWhile.prototype["@@transducer/result"]=function(result){this.retained=null;return this.xf["@@transducer/result"](result)};XDropLastWhile.prototype["@@transducer/step"]=function(result,input){return this.f(input)?this.retain(result,input):this.flush(result,input)};XDropLastWhile.prototype.flush=function(result,input){result=_reduce$9(this.xf["@@transducer/step"],result,this.retained);this.retained=[];return this.xf["@@transducer/step"](result,input)};XDropLastWhile.prototype.retain=function(result,input){this.retained.push(input);return result};return _curry2$47(function _xdropLastWhile(fn,xf){return new XDropLastWhile(fn,xf)})}();var _curry2$46=_curry2$1;var _dispatchable$12=_dispatchable$1;var _dropLastWhile=_dropLastWhile$1;var _xdropLastWhile=_xdropLastWhile$1;var dropLastWhile=_curry2$46(_dispatchable$12([],_xdropLastWhile,_dropLastWhile));var _curry2$48=_curry2$1;var _xfBase$13=_xfBase$1;var _xdropRepeatsWith$1=function(){function XDropRepeatsWith(pred,xf){this.xf=xf;this.pred=pred;this.lastValue=undefined;this.seenFirstValue=false}XDropRepeatsWith.prototype["@@transducer/init"]=_xfBase$13.init;XDropRepeatsWith.prototype["@@transducer/result"]=_xfBase$13.result;XDropRepeatsWith.prototype["@@transducer/step"]=function(result,input){var sameAsLast=false;if(!this.seenFirstValue){this.seenFirstValue=true}else if(this.pred(this.lastValue,input)){sameAsLast=true}this.lastValue=input;return sameAsLast?result:this.xf["@@transducer/step"](result,input)};return _curry2$48(function _xdropRepeatsWith(pred,xf){return new XDropRepeatsWith(pred,xf)})}();var _curry2$50=_curry2$1;var _isString$4=_isString$1;var nth$1=_curry2$50(function nth(offset,list){var idx=offset<0?list.length+offset:offset;return _isString$4(list)?list.charAt(idx):list[idx]});var nth=nth$1;var last$1=nth(-1);var _curry2$49=_curry2$1;var _dispatchable$14=_dispatchable$1;var _xdropRepeatsWith$3=_xdropRepeatsWith$1;var last=last$1;var dropRepeatsWith$1=_curry2$49(_dispatchable$14([],_xdropRepeatsWith$3,function dropRepeatsWith(pred,list){var result=[];var idx=1;var len=list.length;if(len!==0){result[0]=list[0];while(idx=0){if(fn(list[idx])){return list[idx]}idx-=1}}));var _curry2$63=_curry2$1;var _xfBase$18=_xfBase$1;var _xfindLastIndex$1=function(){function XFindLastIndex(f,xf){this.xf=xf;this.f=f;this.idx=-1;this.lastIdx=-1}XFindLastIndex.prototype["@@transducer/init"]=_xfBase$18.init;XFindLastIndex.prototype["@@transducer/result"]=function(result){return this.xf["@@transducer/result"](this.xf["@@transducer/step"](result,this.lastIdx))};XFindLastIndex.prototype["@@transducer/step"]=function(result,input){ +this.idx+=1;if(this.f(input)){this.lastIdx=this.idx}return result};return _curry2$63(function _xfindLastIndex(f,xf){return new XFindLastIndex(f,xf)})}();var _curry2$62=_curry2$1;var _dispatchable$19=_dispatchable$1;var _xfindLastIndex=_xfindLastIndex$1;var findLastIndex=_curry2$62(_dispatchable$19([],_xfindLastIndex,function findLastIndex(fn,list){var idx=list.length-1;while(idx>=0){if(fn(list[idx])){return idx}idx-=1}return-1}));var _curry1$27=_curry1$1;var _makeFlat$3=_makeFlat$1;var flatten=_curry1$27(_makeFlat$3(true));var _curry1$28=_curry1$1;var curry$4=curry$1;var flip=_curry1$28(function flip(fn){return curry$4(function(a,b){var args=Array.prototype.slice.call(arguments,0);args[0]=b;args[1]=a;return fn.apply(this,args)})});var _checkForMethod$4=_checkForMethod$1;var _curry2$64=_curry2$1;var forEach=_curry2$64(_checkForMethod$4("forEach",function forEach(fn,list){var len=list.length;var idx=0;while(idxb});var _curry2$69=_curry2$1;var gte=_curry2$69(function gte(a,b){return a>=b});var _curry2$70=_curry2$1;var _has$8=_has$1;var has=_curry2$70(_has$8);var _curry2$71=_curry2$1;var hasIn=_curry2$71(function hasIn(prop,obj){return prop in obj});var nth$3=nth$1;var head=nth$3(0);var _identity$1=function _identity(x){return x};var _curry1$30=_curry1$1;var _identity=_identity$1;var identity=_curry1$30(_identity);var _curry3$13=_curry3$1;var curryN$10=curryN$1;var ifElse=_curry3$13(function ifElse(condition,onTrue,onFalse){return curryN$10(Math.max(condition.length,onTrue.length,onFalse.length),function _ifElse(){return condition.apply(this,arguments)?onTrue.apply(this,arguments):onFalse.apply(this,arguments)})});var add$3=add;var inc=add$3(1);var reduceBy$4=reduceBy$1;var indexBy=reduceBy$4(function(acc,elem){return elem},null);var _curry2$72=_curry2$1;var _indexOf$3=_indexOf$1;var _isArray$8=_isArray$1;var indexOf=_curry2$72(function indexOf(target,xs){return typeof xs.indexOf==="function"&&!_isArray$8(xs)?xs.indexOf(target):_indexOf$3(xs,target,0)});var slice$5=slice$1;var init=slice$5(0,-1);var _curry3$14=_curry3$1;var insert$1=_curry3$14(function insert(idx,elt,list){idx=idx=0?idx:list.length;var result=Array.prototype.slice.call(list,0);result.splice(idx,0,elt);return result});var _curry3$15=_curry3$1;var insertAll=_curry3$15(function insertAll(idx,elts,list){idx=idx=0?idx:list.length;return[].concat(Array.prototype.slice.call(list,0,idx),elts,Array.prototype.slice.call(list,idx))});var _contains$6=_contains$1;var _Set$1=function(){function _Set(){this._nativeSet=typeof Set==="function"?new Set:null;this._items={}}_Set.prototype.add=function(item){return!hasOrAdd(item,true,this)};_Set.prototype.has=function(item){return hasOrAdd(item,false,this)};function hasOrAdd(item,shouldAdd,set){var type=typeof item;var prevSize,newSize;switch(type){case"string":case"number":if(item===0&&1/item===-Infinity){if(set._items["-0"]){return true}else{if(shouldAdd){set._items["-0"]=true}return false}}if(set._nativeSet!==null){if(shouldAdd){prevSize=set._nativeSet.size;set._nativeSet.add(item);newSize=set._nativeSet.size;return newSize===prevSize}else{return set._nativeSet.has(item)}}else{if(!(type in set._items)){if(shouldAdd){set._items[type]={};set._items[type][item]=true}return false}else if(item in set._items[type]){return true}else{if(shouldAdd){set._items[type][item]=true}return false}}case"boolean":if(type in set._items){var bIdx=item?1:0;if(set._items[type][bIdx]){return true}else{if(shouldAdd){set._items[type][bIdx]=true}return false}}else{if(shouldAdd){set._items[type]=item?[false,true]:[true,false]}return false}case"function":if(set._nativeSet!==null){if(shouldAdd){prevSize=set._nativeSet.size;set._nativeSet.add(item);newSize=set._nativeSet.size;return newSize===prevSize}else{return set._nativeSet.has(item)}}else{if(!(type in set._items)){if(shouldAdd){set._items[type]=[item]}return false}if(!_contains$6(item,set._items[type])){if(shouldAdd){set._items[type].push(item)}return false}return true}case"undefined":if(set._items[type]){return true}else{if(shouldAdd){set._items[type]=true}return false}case"object":if(item===null){if(!set._items["null"]){if(shouldAdd){set._items["null"]=true}return false}return true}default:type=Object.prototype.toString.call(item);if(!(type in set._items)){if(shouldAdd){set._items[type]=[item]}return false}if(!_contains$6(item,set._items[type])){if(shouldAdd){set._items[type].push(item)}return false}return true}}return _Set}();var _Set=_Set$1;var _curry2$74=_curry2$1;var uniqBy$1=_curry2$74(function uniqBy(fn,list){var set=new _Set;var result=[];var idx=0;var appliedItem,item;while(idxlist2.length){lookupList=list1;filteredList=list2}else{lookupList=list2;filteredList=list1}return uniq(_filter$3(flip$2(_contains$5)(lookupList),filteredList))});var _containsWith$4=_containsWith$1;var _curry2$75=_curry2$1;var uniqWith$1=_curry2$75(function uniqWith(pred,list){var idx=0;var len=list.length;var result=[];var item;while(idxlist2.length){lookupList=list1;filteredList=list2}else{lookupList=list2;filteredList=list1}var results=[];var idx=0;while(idx=0){if(equals$7(xs[idx],target)){return idx}idx-=1}return-1}});var _isNumber$1=function _isNumber(x){return Object.prototype.toString.call(x)==="[object Number]"};var _curry1$37=_curry1$1;var _isNumber=_isNumber$1;var length=_curry1$37(function length(list){return list!=null&&_isNumber(list.length)?list.length:NaN});var _curry2$81=_curry2$1;var map$10=map$1;var lens=_curry2$81(function lens(getter,setter){return function(toFunctorFn){return function(target){return map$10(function(focus){return setter(focus,target)},toFunctorFn(getter(target)))}}});var _curry3$18=_curry3$1;var adjust$2=adjust;var always$4=always$1;var update$3=_curry3$18(function update(idx,x,list){return adjust$2(always$4(x),idx,list)});var _curry1$38=_curry1$1;var lens$2=lens;var nth$4=nth$1;var update$2=update$3;var lensIndex=_curry1$38(function lensIndex(n){return lens$2(nth$4(n),update$2(n))});var _curry2$82=_curry2$1;var path$1=_curry2$82(function path(paths,obj){var val=obj;var idx=0;while(idx=0){tuple=fn(list[idx],tuple[0]);result[idx]=tuple[1];idx-=1}return[result,tuple[0]]});var _curry2$85=_curry2$1;var _reduce$11=_reduce$1;var keys$10=keys$1;var mapObjIndexed=_curry2$85(function mapObjIndexed(fn,obj){return _reduce$11(function(acc,key){acc[key]=fn(obj[key],key,obj);return acc},{},keys$10(obj))});var _curry2$86=_curry2$1;var match=_curry2$86(function match(rx,str){return str.match(rx)||[]});var _curry2$87=_curry2$1;var _isInteger$3=_isInteger$1;var mathMod=_curry2$87(function mathMod(m,p){if(!_isInteger$3(m)){return NaN}if(!_isInteger$3(p)||p<1){return NaN}return(m%p+p)%p});var _curry3$21=_curry3$1;var maxBy=_curry3$21(function maxBy(f,a,b){return f(b)>f(a)?b:a});var add$4=add;var reduce$9=reduce$1;var sum$1=reduce$9(add$4,0);var _curry1$41=_curry1$1;var sum=sum$1;var mean=_curry1$41(function mean(list){return sum(list)/list.length});var _curry1$42=_curry1$1;var mean$2=mean;var median=_curry1$42(function median(list){var len=list.length;if(len===0){return NaN}var width=2-len%2;var idx=(len-width)/2;return mean$2(Array.prototype.slice.call(list,0).sort(function(a,b){return ab?1:0}).slice(idx,idx+width))});var _arity$8=_arity$1;var _curry1$43=_curry1$1;var _has$11=_has$1;var toString$2=toString_1;var memoize=_curry1$43(function memoize(fn){var cache={};return _arity$8(fn.length,function(){var key=toString$2(arguments);if(!_has$11(key,cache)){cache[key]=fn.apply(this,arguments)}return cache[key]})});var _assign$3=_assign$1;var _curry2$88=_curry2$1;var merge=_curry2$88(function merge(l,r){return _assign$3({},l,r)});var _assign$4=_assign$1;var _curry1$44=_curry1$1;var mergeAll=_curry1$44(function mergeAll(list){return _assign$4.apply(null,[{}].concat(list))});var _curry3$23=_curry3$1;var _has$12=_has$1;var mergeWithKey$1=_curry3$23(function mergeWithKey(fn,l,r){var result={};var k;for(k in l){if(_has$12(k,l)){result[k]=_has$12(k,r)?fn(k,l[k],r[k]):l[k]}}for(k in r){if(_has$12(k,r)&&!_has$12(k,result)){result[k]=r[k]}}return result});var _curry3$22=_curry3$1;var mergeWithKey=mergeWithKey$1;var mergeWith=_curry3$22(function mergeWith(fn,l,r){return mergeWithKey(function(_,_l,_r){return fn(_l,_r)},l,r)});var _curry2$89=_curry2$1;var min=_curry2$89(function min(a,b){return b0&&pred(path$5(propPath,obj))});var _curry2$96=_curry2$1;var pick=_curry2$96(function pick(names,obj){var result={};var idx=0;while(idx=0){acc=fn(list[idx],acc);idx-=1}return acc});var _curryN$5=_curryN$1;var _reduce$12=_reduce$1;var _reduced$7=_reduced$1;var reduceWhile=_curryN$5(4,[],function _reduceWhile(pred,fn,a,list){return _reduce$12(function(acc,x){return pred(acc,x)?fn(acc,x):_reduced$7(acc)},a,list)});var _curry1$49=_curry1$1;var _reduced$8=_reduced$1;var reduced=_curry1$49(_reduced$8);var _curry3$34=_curry3$1;var remove$1=_curry3$34(function remove(start,count,list){var result=Array.prototype.slice.call(list,0);result.splice(start,count);return result});var _curry2$104=_curry2$1;var times$1=_curry2$104(function times(fn,n){var len=Number(n);var idx=0;var list;if(len<0||isNaN(len)){throw new RangeError("n must be a non-negative number")}list=new Array(len);while(idxbb?1:0})});var _curry2$108=_curry2$1;var sortWith=_curry2$108(function sortWith(fns,list){return Array.prototype.slice.call(list,0).sort(function(a,b){var result=0;var i=0;while(result===0&&i=0?xs.length-n:0,xs)});var _curry2$115=_curry2$1;var takeLastWhile=_curry2$115(function takeLastWhile(fn,list){var idx=list.length-1;while(idx>=0&&fn(list[idx])){idx-=1}return Array.prototype.slice.call(list,idx+1)});var _curry2$117=_curry2$1;var _reduced$9=_reduced$1;var _xfBase$19=_xfBase$1;var _xtakeWhile$1=function(){function XTakeWhile(f,xf){this.xf=xf;this.f=f}XTakeWhile.prototype["@@transducer/init"]=_xfBase$19.init;XTakeWhile.prototype["@@transducer/result"]=_xfBase$19.result;XTakeWhile.prototype["@@transducer/step"]=function(result,input){return this.f(input)?this.xf["@@transducer/step"](result,input):_reduced$9(result)};return _curry2$117(function _xtakeWhile(f,xf){return new XTakeWhile(f,xf)})}();var _curry2$116=_curry2$1;var _dispatchable$21=_dispatchable$1;var _xtakeWhile=_xtakeWhile$1;var takeWhile=_curry2$116(_dispatchable$21(["takeWhile"],_xtakeWhile,function takeWhile(fn,list){var idx=0;var len=list.length;while(idx

{title} by {author}

{R.join(⁗ ⁗)(R.repeat(text, 20))}
',"","",function(opts){this.R=index});riot$1.tag2("bbutton",'',"","",function(opts){});var RE_ORIGIN=/^.+?\/\/+[^\/]+/;var EVENT_LISTENER="EventListener";var REMOVE_EVENT_LISTENER="remove"+EVENT_LISTENER;var ADD_EVENT_LISTENER="add"+EVENT_LISTENER;var HAS_ATTRIBUTE="hasAttribute";var POPSTATE="popstate";var HASHCHANGE="hashchange";var TRIGGER="trigger";var MAX_EMIT_STACK_LEVEL=3;var win=typeof window!="undefined"&&window;var doc=typeof document!="undefined"&&document;var hist=win&&history;var loc=win&&(hist.location||win.location);var prot=Router.prototype;var clickEvent=doc&&doc.ontouchstart?"touchstart":"click";var central=observable$1();var started=false;var routeFound=false;var debouncedEmit;var base;var current;var parser;var secondParser;var emitStack=[];var emitStackLevel=0;function DEFAULT_PARSER(path){return path.split(/[\/?#]/)}function DEFAULT_SECOND_PARSER(path,filter){var f=filter.replace(/\?/g,"\\?").replace(/\*/g,"([^/?#]+?)").replace(/\.\./,".*");var re=new RegExp("^"+f+"$");var args=path.match(re);if(args){return args.slice(1)}}function debounce(fn,delay){var t;return function(){clearTimeout(t);t=setTimeout(fn,delay)}}function start(autoExec){debouncedEmit=debounce(emit,1);win[ADD_EVENT_LISTENER](POPSTATE,debouncedEmit);win[ADD_EVENT_LISTENER](HASHCHANGE,debouncedEmit);doc[ADD_EVENT_LISTENER](clickEvent,click);if(autoExec){emit(true)}}function Router(){this.$=[];observable$1(this);central.on("stop",this.s.bind(this));central.on("emit",this.e.bind(this))}function normalize(path){return path.replace(/^\/|\/$/,"")}function isString$1(str){return typeof str=="string"}function getPathFromRoot(href){return(href||loc.href).replace(RE_ORIGIN,"")}function getPathFromBase(href){return base[0]==="#"?(href||loc.href||"").split(base)[1]||"":(loc?getPathFromRoot(href):href||"").replace(base,"")}function emit(force){var isRoot=emitStackLevel===0;if(MAX_EMIT_STACK_LEVEL<=emitStackLevel){return}emitStackLevel++;emitStack.push(function(){var path=getPathFromBase();if(force||path!==current){central[TRIGGER]("emit",path);current=path}});if(isRoot){var first;while(first=emitStack.shift()){first()}emitStackLevel=0}}function click(e){if(e.which!==1||e.metaKey||e.ctrlKey||e.shiftKey||e.defaultPrevented){return}var el=e.target;while(el&&el.nodeName!=="A"){el=el.parentNode}if(!el||el.nodeName!=="A"||el[HAS_ATTRIBUTE]("download")||!el[HAS_ATTRIBUTE]("href")||el.target&&el.target!=="_self"||el.href.indexOf(loc.href.match(RE_ORIGIN)[0])===-1){return}if(el.href!==loc.href&&(el.href.split("#")[0]===loc.href.split("#")[0]||base[0]!=="#"&&getPathFromRoot(el.href).indexOf(base)!==0||base[0]==="#"&&el.href.split(base)[0]!==loc.href.split(base)[0]||!go(getPathFromBase(el.href),el.title||doc.title))){return}e.preventDefault()}function go(path,title,shouldReplace){if(!hist){return central[TRIGGER]("emit",getPathFromBase(path))}path=base+normalize(path);title=title||doc.title;shouldReplace?hist.replaceState(null,title,path):hist.pushState(null,title,path);doc.title=title;routeFound=false;emit();return routeFound}prot.m=function(first,second,third){if(isString$1(first)&&(!second||isString$1(second))){go(first,second,third||false)}else if(second){this.r(first,second)}else{this.r("@",first)}};prot.s=function(){this.off("*");this.$=[]};prot.e=function(path){this.$.concat("@").some(function(filter){var args=(filter==="@"?parser:secondParser)(normalize(path),normalize(filter));if(typeof args!="undefined"){this[TRIGGER].apply(null,[filter].concat(args));return routeFound=true}},this)};prot.r=function(filter,action){if(filter!=="@"){filter="/"+normalize(filter);this.$.push(filter)}this.on(filter,action)};var mainRouter=new Router;var route=mainRouter.m.bind(mainRouter);route.create=function(){var newSubRouter=new Router;var router=newSubRouter.m.bind(newSubRouter);router.stop=newSubRouter.s.bind(newSubRouter);return router};route.base=function(arg){base=arg||"#";current=getPathFromBase()};route.exec=function(){emit(true)};route.parser=function(fn,fn2){if(!fn&&!fn2){parser=DEFAULT_PARSER;secondParser=DEFAULT_SECOND_PARSER}if(fn){parser=fn}if(fn2){secondParser=fn2}};route.query=function(){var q={};var href=loc.href||current;href.replace(/[?&](.+?)=([^&]*)/g,function(_,k,v){q[k]=v});return q};route.stop=function(){if(started){if(win){win[REMOVE_EVENT_LISTENER](POPSTATE,debouncedEmit);win[REMOVE_EVENT_LISTENER](HASHCHANGE,debouncedEmit);doc[REMOVE_EVENT_LISTENER](clickEvent,click)}central[TRIGGER]("stop");started=false}};route.start=function(autoExec){if(!started){if(win){if(document.readyState==="complete"){start(autoExec)}else{win[ADD_EVENT_LISTENER]("load",function(){setTimeout(function(){start(autoExec)},1)})}}started=true}};route.base();route.parser();riot$1.tag2("post",'

No More Posts!

{opts.title}

By {opts.creator}

{this.content}

',"","",function(opts){var self=this;this.loading=false;this.prevloading="";this.nextloading="";this.nomore=false;this.pid=1;this.content="";this.prev=function(ev){ev.preventDefault();if(self.prevloading||self.nextloading){return}self.prevloading=" loading";if(self.nomore){self.nomore=false}if(self.pid>1){self.pid--;self.setPost(self.pid);self.update()}}.bind(this);this.next=function(ev){console.log("next event fired");ev.preventDefault();if(self.nextloading||self.prevloading){return}self.nextloading=" loading";console.log(self.pid);console.log(self.nomore);if(!self.nomore){self.pid++;self.setPost(self.pid);self.update()}}.bind(this);this.setPost=function(pid){console.log("trying to change the post");console.log(fetch);this.update();console.log("updated");this.loading=true;fetch("/blog/switchpost/"+pid).then(function(resp){console.log("got a response");return resp.text()}).then(function(body){if(body==="false"){self.nomore=true;route("/");self.update()}else{self.content=index.join(" ")(index.repeat(body,20));route("/"+pid)}self.loading=false;self.prevloading="";self.nextloading="";self.update()})};this.on("mount",function(){this.setPost(self.pid)})});riot$1.tag2("posts","","","",function(opts){});riot$1.mount("post",{creator:"wes",title:"A cool post here"});riot$1.mount("bbutton")})(); \ No newline at end of file diff --git a/src/scripts/app.tag b/src/scripts/app.tag index d8cdeed..9b3c70a 100644 --- a/src/scripts/app.tag +++ b/src/scripts/app.tag @@ -10,12 +10,14 @@
@@ -32,6 +34,7 @@ this.route = route; this.riot = riot; this.state = { + "pid" : 1, "projects" : Z.empty, "loaded" : false }; @@ -66,8 +69,6 @@ to(name) { } this.on("mount", () => { - route("/", () => { route("/post/1") }); - route("/post/*", this.setPost); route.start(true); }); diff --git a/src/scripts/post.tag b/src/scripts/post.tag index dd0571e..d0f50f7 100644 --- a/src/scripts/post.tag +++ b/src/scripts/post.tag @@ -1,53 +1,52 @@ -

- No More Posts! -

-
-

{ this.title }

-
Posted by { this.author }
-

- { this.content } -

-
-
-
-
-
- -
-
- +
+

{ this.title }

+
Posted by { this.author }
+

+ { this.content } +

+
+
+
+
diff --git a/src/scripts/postcontrols.tag b/src/scripts/postcontrols.tag new file mode 100644 index 0000000..27ea03a --- /dev/null +++ b/src/scripts/postcontrols.tag @@ -0,0 +1,21 @@ + +
+
+
+ +
+
+ +
+
+
+
diff --git a/src/scripts/postsview.tag b/src/scripts/postsview.tag index 0ef1c19..159d969 100644 --- a/src/scripts/postsview.tag +++ b/src/scripts/postsview.tag @@ -1,5 +1,5 @@ - + diff --git a/src/scripts/projects.tag b/src/scripts/projects.tag index 22072f1..87df505 100644 --- a/src/scripts/projects.tag +++ b/src/scripts/projects.tag @@ -1,9 +1,7 @@ -
+

Projects for { this.username }

-
+

{ this.project().name }

@@ -19,28 +17,28 @@
-
-
-
-
- -
-
- +
+
+
+ +
+
+ +
-
+