Full Code of Tmeister/wppb-gen-site for AI

master 0f9fc0a285e5 cached
23 files
98.0 KB
36.5k tokens
5 symbols
1 requests
Download .txt
Repository: Tmeister/wppb-gen-site
Branch: master
Commit: 0f9fc0a285e5
Files: 23
Total size: 98.0 KB

Directory structure:
gitextract_nhld34y9/

├── .github/
│   └── FUNDING.yml
├── .gitignore
├── .vscode/
│   └── launch.json
├── Procfile
├── README.md
├── app.json
├── package.json
├── public/
│   ├── css/
│   │   ├── ie/
│   │   │   ├── PIE.htc
│   │   │   ├── backgroundsize.min.htc
│   │   │   ├── html5shiv.js
│   │   │   └── v8.css
│   │   ├── skel.css
│   │   ├── style-mobile.css
│   │   ├── style-mobilep.css
│   │   ├── style-narrow.css
│   │   ├── style-narrower.css
│   │   ├── style-normal.css
│   │   ├── style-wide.css
│   │   └── style.css
│   ├── fonts/
│   │   └── FontAwesome.otf
│   └── js/
│       └── init.js
├── server.js
└── views/
    └── index.ejs

================================================
FILE CONTENTS
================================================

================================================
FILE: .github/FUNDING.yml
================================================
# These are supported funding model platforms

patreon: tcoding


================================================
FILE: .gitignore
================================================
node_modules
tmp
source
npm-debug.log
.idea


================================================
FILE: .vscode/launch.json
================================================
{
  // Use IntelliSense to learn about possible attributes.
  // Hover to view descriptions of existing attributes.
  // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
  "version": "0.2.0",
  "configurations": [
    {
      "type": "node",
      "request": "launch",
      "name": "Launch Program",
      "program": "${workspaceFolder}/server.js"
    }
  ]
}


================================================
FILE: Procfile
================================================
web: node server.js


================================================
FILE: README.md
================================================
# IMPORTANT - This version is not used and maintained anymore

The new generator site repo can be found at https://github.com/Tmeister/wppb-generator


# WordPress Plugin Boilerplate Generator

A Node.js small application to generate a custom zip file based on the WPPB by Tom McFarlin ( [wppb.io](http://wppb.io) ).

This app will find and replace plugin-name, Plugin_Name, plugin_name and author information from the original code and will send a zip file with the new code, ready to use.

## Running Locally

Make sure you have [Node.js](http://nodejs.org/) installed.

```sh
$ git clone git@github.com:Tmeister/wppb-gen-site.git # or clone your own fork
$ cd wppb-gen-site
$ npm install
$ node server
```

Your app should now be running on [localhost:3000](http://localhost:3000/).

Comments and requests at [@tmeister](https://twitter.com/tmeister) or noone at tmeister dot net




================================================
FILE: app.json
================================================
{
  "name": "Wppb Online Generator",
  "description": "A wppb online generator",
  "repository": "https://github.com/tmeister/wppb-gen",
  "logo": "http://node-js-sample.herokuapp.com/node.svg",
  "keywords": ["node", "express", "static"]
}


================================================
FILE: package.json
================================================
{
  "name": "wppb-gen",
  "version": "0.1.0",
  "description": "wppb-gen",
  "main": "index.js",
  "scripts": {
    "start": "node index.js"
  },
  "dependencies": {
    "body-parser": "^1.12.4",
    "cron": "^1.0.9",
    "easy-zip": "0.0.4",
    "ejs": "^2.3.1",
    "express": "4.16.4",
    "fs-extra": "7.0.1",
    "github-download": "0.5.0",
    "mime": "^2.4.0",
    "replace": "^1.1.0",
    "rimraf": "^2.4.0",
    "universal-analytics": "^0.4.20"
  },
  "engines": {
    "node": "10.15.x"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/tmeister/wppb-gen"
  },
  "keywords": [
    "node",
    "heroku",
    "express"
  ],
  "license": "MIT"
}


================================================
FILE: public/css/ie/PIE.htc
================================================
<!--
PIE: CSS3 rendering for IE
Version 1.0.0
http://css3pie.com
Dual-licensed for use under the Apache License Version 2.0 or the General Public License (GPL) Version 2.
-->
<PUBLIC:COMPONENT lightWeight="true">
<!-- saved from url=(0014)about:internet -->
<PUBLIC:ATTACH EVENT="oncontentready" FOR="element" ONEVENT="init()" />
<PUBLIC:ATTACH EVENT="ondocumentready" FOR="element" ONEVENT="init()" />
<PUBLIC:ATTACH EVENT="ondetach" FOR="element" ONEVENT="cleanup()" />

<script type="text/javascript">
var doc = element.document;var f=window.PIE;
if(!f){f=window.PIE={F:"-pie-",nb:"Pie",La:"pie_",Ac:{TD:1,TH:1},cc:{TABLE:1,THEAD:1,TBODY:1,TFOOT:1,TR:1,INPUT:1,TEXTAREA:1,SELECT:1,OPTION:1,IMG:1,HR:1},fc:{A:1,INPUT:1,TEXTAREA:1,SELECT:1,BUTTON:1},Gd:{submit:1,button:1,reset:1},aa:function(){}};try{doc.execCommand("BackgroundImageCache",false,true)}catch(aa){}for(var ba=4,Z=doc.createElement("div"),ca=Z.getElementsByTagName("i"),ga;Z.innerHTML="<!--[if gt IE "+ ++ba+"]><i></i><![endif]--\>",ca[0];);f.O=ba;if(ba===6)f.F=f.F.replace(/^-/,"");f.ja=
doc.documentMode||f.O;Z.innerHTML='<v:shape adj="1"/>';ga=Z.firstChild;ga.style.behavior="url(#default#VML)";f.zc=typeof ga.adj==="object";(function(){var a,b=0,c={};f.p={Za:function(d){if(!a){a=doc.createDocumentFragment();a.namespaces.add("css3vml","urn:schemas-microsoft-com:vml")}return a.createElement("css3vml:"+d)},Ba:function(d){return d&&d._pieId||(d._pieId="_"+ ++b)},Eb:function(d){var e,g,j,i,h=arguments;e=1;for(g=h.length;e<g;e++){i=h[e];for(j in i)if(i.hasOwnProperty(j))d[j]=i[j]}return d},
Rb:function(d,e,g){var j=c[d],i,h;if(j)Object.prototype.toString.call(j)==="[object Array]"?j.push([e,g]):e.call(g,j);else{h=c[d]=[[e,g]];i=new Image;i.onload=function(){j=c[d]={h:i.width,f:i.height};for(var k=0,n=h.length;k<n;k++)h[k][0].call(h[k][1],j);i.onload=null};i.src=d}}}})();f.Na={gc:function(a,b,c,d){function e(){k=j>=90&&j<270?b:0;n=j<180?c:0;m=b-k;p=c-n}function g(){for(;j<0;)j+=360;j%=360}var j=d.sa;d=d.zb;var i,h,k,n,m,p,r,t;if(d){d=d.coords(a,b,c);i=d.x;h=d.y}if(j){j=j.jd();g();e();
if(!d){i=k;h=n}d=f.Na.tc(i,h,j,m,p);a=d[0];d=d[1]}else if(d){a=b-i;d=c-h}else{i=h=a=0;d=c}r=a-i;t=d-h;if(j===void 0){j=!r?t<0?90:270:!t?r<0?180:0:-Math.atan2(t,r)/Math.PI*180;g();e()}return{sa:j,xc:i,yc:h,td:a,ud:d,Wd:k,Xd:n,rd:m,sd:p,kd:r,ld:t,rc:f.Na.dc(i,h,a,d)}},tc:function(a,b,c,d,e){if(c===0||c===180)return[d,b];else if(c===90||c===270)return[a,e];else{c=Math.tan(-c*Math.PI/180);a=c*a-b;b=-1/c;d=b*d-e;e=b-c;return[(d-a)/e,(c*d-b*a)/e]}},dc:function(a,b,c,d){a=c-a;b=d-b;return Math.abs(a===0?
b:b===0?a:Math.sqrt(a*a+b*b))}};f.ea=function(){this.Gb=[];this.oc={}};f.ea.prototype={ba:function(a){var b=f.p.Ba(a),c=this.oc,d=this.Gb;if(!(b in c)){c[b]=d.length;d.push(a)}},Ha:function(a){a=f.p.Ba(a);var b=this.oc;if(a&&a in b){delete this.Gb[b[a]];delete b[a]}},xa:function(){for(var a=this.Gb,b=a.length;b--;)a[b]&&a[b]()}};f.Oa=new f.ea;f.Oa.Rd=function(){var a=this,b;if(!a.Sd){b=doc.documentElement.currentStyle.getAttribute(f.F+"poll-interval")||250;(function c(){a.xa();setTimeout(c,b)})();
a.Sd=1}};(function(){function a(){f.L.xa();window.detachEvent("onunload",a);window.PIE=null}f.L=new f.ea;window.attachEvent("onunload",a);f.L.ta=function(b,c,d){b.attachEvent(c,d);this.ba(function(){b.detachEvent(c,d)})}})();f.Qa=new f.ea;f.L.ta(window,"onresize",function(){f.Qa.xa()});(function(){function a(){f.mb.xa()}f.mb=new f.ea;f.L.ta(window,"onscroll",a);f.Qa.ba(a)})();(function(){function a(){c=f.kb.md()}function b(){if(c){for(var d=0,e=c.length;d<e;d++)f.attach(c[d]);c=0}}var c;if(f.ja<9){f.L.ta(window,
"onbeforeprint",a);f.L.ta(window,"onafterprint",b)}})();f.lb=new f.ea;f.L.ta(doc,"onmouseup",function(){f.lb.xa()});f.he=function(){function a(h){this.Y=h}var b=doc.createElement("length-calc"),c=doc.body||doc.documentElement,d=b.style,e={},g=["mm","cm","in","pt","pc"],j=g.length,i={};d.position="absolute";d.top=d.left="-9999px";for(c.appendChild(b);j--;){d.width="100"+g[j];e[g[j]]=b.offsetWidth/100}c.removeChild(b);d.width="1em";a.prototype={Kb:/(px|em|ex|mm|cm|in|pt|pc|%)$/,ic:function(){var h=
this.Jd;if(h===void 0)h=this.Jd=parseFloat(this.Y);return h},yb:function(){var h=this.ae;if(!h)h=this.ae=(h=this.Y.match(this.Kb))&&h[0]||"px";return h},a:function(h,k){var n=this.ic(),m=this.yb();switch(m){case "px":return n;case "%":return n*(typeof k==="function"?k():k)/100;case "em":return n*this.xb(h);case "ex":return n*this.xb(h)/2;default:return n*e[m]}},xb:function(h){var k=h.currentStyle.fontSize,n,m;if(k.indexOf("px")>0)return parseFloat(k);else if(h.tagName in f.cc){m=this;n=h.parentNode;
return f.n(k).a(n,function(){return m.xb(n)})}else{h.appendChild(b);k=b.offsetWidth;b.parentNode===h&&h.removeChild(b);return k}}};f.n=function(h){return i[h]||(i[h]=new a(h))};return a}();f.Ja=function(){function a(e){this.X=e}var b=f.n("50%"),c={top:1,center:1,bottom:1},d={left:1,center:1,right:1};a.prototype={zd:function(){if(!this.ac){var e=this.X,g=e.length,j=f.v,i=j.qa,h=f.n("0");i=i.na;h=["left",h,"top",h];if(g===1){e.push(new j.ob(i,"center"));g++}if(g===2){i&(e[0].k|e[1].k)&&e[0].d in c&&
e[1].d in d&&e.push(e.shift());if(e[0].k&i)if(e[0].d==="center")h[1]=b;else h[0]=e[0].d;else if(e[0].W())h[1]=f.n(e[0].d);if(e[1].k&i)if(e[1].d==="center")h[3]=b;else h[2]=e[1].d;else if(e[1].W())h[3]=f.n(e[1].d)}this.ac=h}return this.ac},coords:function(e,g,j){var i=this.zd(),h=i[1].a(e,g);e=i[3].a(e,j);return{x:i[0]==="right"?g-h:h,y:i[2]==="bottom"?j-e:e}}};return a}();f.Ka=function(){function a(b,c){this.h=b;this.f=c}a.prototype={a:function(b,c,d,e,g){var j=this.h,i=this.f,h=c/d;e=e/g;if(j===
"contain"){j=e>h?c:d*e;i=e>h?c/e:d}else if(j==="cover"){j=e<h?c:d*e;i=e<h?c/e:d}else if(j==="auto"){i=i==="auto"?g:i.a(b,d);j=i*e}else{j=j.a(b,c);i=i==="auto"?j/e:i.a(b,d)}return{h:j,f:i}}};a.Kc=new a("auto","auto");return a}();f.Ec=function(){function a(b){this.Y=b}a.prototype={Kb:/[a-z]+$/i,yb:function(){return this.ad||(this.ad=this.Y.match(this.Kb)[0].toLowerCase())},jd:function(){var b=this.Vc,c;if(b===undefined){b=this.yb();c=parseFloat(this.Y,10);b=this.Vc=b==="deg"?c:b==="rad"?c/Math.PI*180:
b==="grad"?c/400*360:b==="turn"?c*360:0}return b}};return a}();f.Jc=function(){function a(c){this.Y=c}var b={};a.Qd=/\s*rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d+|\d*\.\d+)\s*\)\s*/;a.Fb={aliceblue:"F0F8FF",antiquewhite:"FAEBD7",aqua:"0FF",aquamarine:"7FFFD4",azure:"F0FFFF",beige:"F5F5DC",bisque:"FFE4C4",black:"000",blanchedalmond:"FFEBCD",blue:"00F",blueviolet:"8A2BE2",brown:"A52A2A",burlywood:"DEB887",cadetblue:"5F9EA0",chartreuse:"7FFF00",chocolate:"D2691E",coral:"FF7F50",cornflowerblue:"6495ED",
cornsilk:"FFF8DC",crimson:"DC143C",cyan:"0FF",darkblue:"00008B",darkcyan:"008B8B",darkgoldenrod:"B8860B",darkgray:"A9A9A9",darkgreen:"006400",darkkhaki:"BDB76B",darkmagenta:"8B008B",darkolivegreen:"556B2F",darkorange:"FF8C00",darkorchid:"9932CC",darkred:"8B0000",darksalmon:"E9967A",darkseagreen:"8FBC8F",darkslateblue:"483D8B",darkslategray:"2F4F4F",darkturquoise:"00CED1",darkviolet:"9400D3",deeppink:"FF1493",deepskyblue:"00BFFF",dimgray:"696969",dodgerblue:"1E90FF",firebrick:"B22222",floralwhite:"FFFAF0",
forestgreen:"228B22",fuchsia:"F0F",gainsboro:"DCDCDC",ghostwhite:"F8F8FF",gold:"FFD700",goldenrod:"DAA520",gray:"808080",green:"008000",greenyellow:"ADFF2F",honeydew:"F0FFF0",hotpink:"FF69B4",indianred:"CD5C5C",indigo:"4B0082",ivory:"FFFFF0",khaki:"F0E68C",lavender:"E6E6FA",lavenderblush:"FFF0F5",lawngreen:"7CFC00",lemonchiffon:"FFFACD",lightblue:"ADD8E6",lightcoral:"F08080",lightcyan:"E0FFFF",lightgoldenrodyellow:"FAFAD2",lightgreen:"90EE90",lightgrey:"D3D3D3",lightpink:"FFB6C1",lightsalmon:"FFA07A",
lightseagreen:"20B2AA",lightskyblue:"87CEFA",lightslategray:"789",lightsteelblue:"B0C4DE",lightyellow:"FFFFE0",lime:"0F0",limegreen:"32CD32",linen:"FAF0E6",magenta:"F0F",maroon:"800000",mediumauqamarine:"66CDAA",mediumblue:"0000CD",mediumorchid:"BA55D3",mediumpurple:"9370D8",mediumseagreen:"3CB371",mediumslateblue:"7B68EE",mediumspringgreen:"00FA9A",mediumturquoise:"48D1CC",mediumvioletred:"C71585",midnightblue:"191970",mintcream:"F5FFFA",mistyrose:"FFE4E1",moccasin:"FFE4B5",navajowhite:"FFDEAD",
navy:"000080",oldlace:"FDF5E6",olive:"808000",olivedrab:"688E23",orange:"FFA500",orangered:"FF4500",orchid:"DA70D6",palegoldenrod:"EEE8AA",palegreen:"98FB98",paleturquoise:"AFEEEE",palevioletred:"D87093",papayawhip:"FFEFD5",peachpuff:"FFDAB9",peru:"CD853F",pink:"FFC0CB",plum:"DDA0DD",powderblue:"B0E0E6",purple:"800080",red:"F00",rosybrown:"BC8F8F",royalblue:"4169E1",saddlebrown:"8B4513",salmon:"FA8072",sandybrown:"F4A460",seagreen:"2E8B57",seashell:"FFF5EE",sienna:"A0522D",silver:"C0C0C0",skyblue:"87CEEB",
slateblue:"6A5ACD",slategray:"708090",snow:"FFFAFA",springgreen:"00FF7F",steelblue:"4682B4",tan:"D2B48C",teal:"008080",thistle:"D8BFD8",tomato:"FF6347",turquoise:"40E0D0",violet:"EE82EE",wheat:"F5DEB3",white:"FFF",whitesmoke:"F5F5F5",yellow:"FF0",yellowgreen:"9ACD32"};a.prototype={parse:function(){if(!this.Ua){var c=this.Y,d;if(d=c.match(a.Qd)){this.Ua="rgb("+d[1]+","+d[2]+","+d[3]+")";this.Yb=parseFloat(d[4])}else{if((d=c.toLowerCase())in a.Fb)c="#"+a.Fb[d];this.Ua=c;this.Yb=c==="transparent"?0:
1}}},U:function(c){this.parse();return this.Ua==="currentColor"?c.currentStyle.color:this.Ua},fa:function(){this.parse();return this.Yb}};f.ha=function(c){return b[c]||(b[c]=new a(c))};return a}();f.v=function(){function a(c){this.$a=c;this.ch=0;this.X=[];this.Ga=0}var b=a.qa={Ia:1,Wb:2,z:4,Lc:8,Xb:16,na:32,K:64,oa:128,pa:256,Ra:512,Tc:1024,URL:2048};a.ob=function(c,d){this.k=c;this.d=d};a.ob.prototype={Ca:function(){return this.k&b.K||this.k&b.oa&&this.d==="0"},W:function(){return this.Ca()||this.k&
b.Ra}};a.prototype={de:/\s/,Kd:/^[\+\-]?(\d*\.)?\d+/,url:/^url\(\s*("([^"]*)"|'([^']*)'|([!#$%&*-~]*))\s*\)/i,nc:/^\-?[_a-z][\w-]*/i,Yd:/^("([^"]*)"|'([^']*)')/,Bd:/^#([\da-f]{6}|[\da-f]{3})/i,be:{px:b.K,em:b.K,ex:b.K,mm:b.K,cm:b.K,"in":b.K,pt:b.K,pc:b.K,deg:b.Ia,rad:b.Ia,grad:b.Ia},fd:{rgb:1,rgba:1,hsl:1,hsla:1},next:function(c){function d(p,r){p=new a.ob(p,r);if(!c){k.X.push(p);k.Ga++}return p}function e(){k.Ga++;return null}var g,j,i,h,k=this;if(this.Ga<this.X.length)return this.X[this.Ga++];for(;this.de.test(this.$a.charAt(this.ch));)this.ch++;
if(this.ch>=this.$a.length)return e();j=this.ch;g=this.$a.substring(this.ch);i=g.charAt(0);switch(i){case "#":if(h=g.match(this.Bd)){this.ch+=h[0].length;return d(b.z,h[0])}break;case '"':case "'":if(h=g.match(this.Yd)){this.ch+=h[0].length;return d(b.Tc,h[2]||h[3]||"")}break;case "/":case ",":this.ch++;return d(b.pa,i);case "u":if(h=g.match(this.url)){this.ch+=h[0].length;return d(b.URL,h[2]||h[3]||h[4]||"")}}if(h=g.match(this.Kd)){i=h[0];this.ch+=i.length;if(g.charAt(i.length)==="%"){this.ch++;
return d(b.Ra,i+"%")}if(h=g.substring(i.length).match(this.nc)){i+=h[0];this.ch+=h[0].length;return d(this.be[h[0].toLowerCase()]||b.Lc,i)}return d(b.oa,i)}if(h=g.match(this.nc)){i=h[0];this.ch+=i.length;if(i.toLowerCase()in f.Jc.Fb||i==="currentColor"||i==="transparent")return d(b.z,i);if(g.charAt(i.length)==="("){this.ch++;if(i.toLowerCase()in this.fd){g=function(p){return p&&p.k&b.oa};h=function(p){return p&&p.k&(b.oa|b.Ra)};var n=function(p,r){return p&&p.d===r},m=function(){return k.next(1)};
if((i.charAt(0)==="r"?h(m()):g(m()))&&n(m(),",")&&h(m())&&n(m(),",")&&h(m())&&(i==="rgb"||i==="hsa"||n(m(),",")&&g(m()))&&n(m(),")"))return d(b.z,this.$a.substring(j,this.ch));return e()}return d(b.Xb,i)}return d(b.na,i)}this.ch++;return d(b.Wb,i)},D:function(){return this.X[this.Ga-- -2]},all:function(){for(;this.next(););return this.X},ma:function(c,d){for(var e=[],g,j;g=this.next();){if(c(g)){j=true;this.D();break}e.push(g)}return d&&!j?null:e}};return a}();var ha=function(a){this.e=a};ha.prototype=
{Z:0,Od:function(){var a=this.qb,b;return!a||(b=this.o())&&(a.x!==b.x||a.y!==b.y)},Td:function(){var a=this.qb,b;return!a||(b=this.o())&&(a.h!==b.h||a.f!==b.f)},hc:function(){var a=this.e,b=a.getBoundingClientRect(),c=f.ja===9,d=f.O===7,e=b.right-b.left;return{x:b.left,y:b.top,h:c||d?a.offsetWidth:e,f:c||d?a.offsetHeight:b.bottom-b.top,Hd:d&&e?a.offsetWidth/e:1}},o:function(){return this.Z?this.Va||(this.Va=this.hc()):this.hc()},Ad:function(){return!!this.qb},cb:function(){++this.Z},hb:function(){if(!--this.Z){if(this.Va)this.qb=
this.Va;this.Va=null}}};(function(){function a(b){var c=f.p.Ba(b);return function(){if(this.Z){var d=this.$b||(this.$b={});return c in d?d[c]:(d[c]=b.call(this))}else return b.call(this)}}f.B={Z:0,ka:function(b){function c(d){this.e=d;this.Zb=this.ia()}f.p.Eb(c.prototype,f.B,b);c.$c={};return c},j:function(){var b=this.ia(),c=this.constructor.$c;return b?b in c?c[b]:(c[b]=this.la(b)):null},ia:a(function(){var b=this.e,c=this.constructor,d=b.style;b=b.currentStyle;var e=this.wa,g=this.Fa,j=c.Yc||(c.Yc=
f.F+e);c=c.Zc||(c.Zc=f.nb+g.charAt(0).toUpperCase()+g.substring(1));return d[c]||b.getAttribute(j)||d[g]||b.getAttribute(e)}),i:a(function(){return!!this.j()}),H:a(function(){var b=this.ia(),c=b!==this.Zb;this.Zb=b;return c}),va:a,cb:function(){++this.Z},hb:function(){--this.Z||delete this.$b}}})();f.Sb=f.B.ka({wa:f.F+"background",Fa:f.nb+"Background",cd:{scroll:1,fixed:1,local:1},fb:{"repeat-x":1,"repeat-y":1,repeat:1,"no-repeat":1},sc:{"padding-box":1,"border-box":1,"content-box":1},Pd:{top:1,right:1,
bottom:1,left:1,center:1},Ud:{contain:1,cover:1},eb:{Ma:"backgroundClip",z:"backgroundColor",da:"backgroundImage",Pa:"backgroundOrigin",S:"backgroundPosition",T:"backgroundRepeat",Sa:"backgroundSize"},la:function(a){function b(s){return s&&s.W()||s.k&k&&s.d in t}function c(s){return s&&(s.W()&&f.n(s.d)||s.d==="auto"&&"auto")}var d=this.e.currentStyle,e,g,j,i=f.v.qa,h=i.pa,k=i.na,n=i.z,m,p,r=0,t=this.Pd,v,l,q={M:[]};if(this.wb()){e=new f.v(a);for(j={};g=e.next();){m=g.k;p=g.d;if(!j.P&&m&i.Xb&&p===
"linear-gradient"){v={ca:[],P:p};for(l={};g=e.next();){m=g.k;p=g.d;if(m&i.Wb&&p===")"){l.color&&v.ca.push(l);v.ca.length>1&&f.p.Eb(j,v);break}if(m&n){if(v.sa||v.zb){g=e.D();if(g.k!==h)break;e.next()}l={color:f.ha(p)};g=e.next();if(g.W())l.db=f.n(g.d);else e.D()}else if(m&i.Ia&&!v.sa&&!l.color&&!v.ca.length)v.sa=new f.Ec(g.d);else if(b(g)&&!v.zb&&!l.color&&!v.ca.length){e.D();v.zb=new f.Ja(e.ma(function(s){return!b(s)},false))}else if(m&h&&p===","){if(l.color){v.ca.push(l);l={}}}else break}}else if(!j.P&&
m&i.URL){j.Ab=p;j.P="image"}else if(b(g)&&!j.$){e.D();j.$=new f.Ja(e.ma(function(s){return!b(s)},false))}else if(m&k)if(p in this.fb&&!j.bb)j.bb=p;else if(p in this.sc&&!j.Wa){j.Wa=p;if((g=e.next())&&g.k&k&&g.d in this.sc)j.ub=g.d;else{j.ub=p;e.D()}}else if(p in this.cd&&!j.bc)j.bc=p;else return null;else if(m&n&&!q.color)q.color=f.ha(p);else if(m&h&&p==="/"&&!j.Xa&&j.$){g=e.next();if(g.k&k&&g.d in this.Ud)j.Xa=new f.Ka(g.d);else if(g=c(g)){m=c(e.next());if(!m){m=g;e.D()}j.Xa=new f.Ka(g,m)}else return null}else if(m&
h&&p===","&&j.P){j.Hb=a.substring(r,e.ch-1);r=e.ch;q.M.push(j);j={}}else return null}if(j.P){j.Hb=a.substring(r);q.M.push(j)}}else this.Bc(f.ja<9?function(){var s=this.eb,o=d[s.S+"X"],u=d[s.S+"Y"],x=d[s.da],y=d[s.z];if(y!=="transparent")q.color=f.ha(y);if(x!=="none")q.M=[{P:"image",Ab:(new f.v(x)).next().d,bb:d[s.T],$:new f.Ja((new f.v(o+" "+u)).all())}]}:function(){var s=this.eb,o=/\s*,\s*/,u=d[s.da].split(o),x=d[s.z],y,z,B,E,D,C;if(x!=="transparent")q.color=f.ha(x);if((E=u.length)&&u[0]!=="none"){x=
d[s.T].split(o);y=d[s.S].split(o);z=d[s.Pa].split(o);B=d[s.Ma].split(o);s=d[s.Sa].split(o);q.M=[];for(o=0;o<E;o++)if((D=u[o])&&D!=="none"){C=s[o].split(" ");q.M.push({Hb:D+" "+x[o]+" "+y[o]+" / "+s[o]+" "+z[o]+" "+B[o],P:"image",Ab:(new f.v(D)).next().d,bb:x[o],$:new f.Ja((new f.v(y[o])).all()),Wa:z[o],ub:B[o],Xa:new f.Ka(C[0],C[1])})}}});return q.color||q.M[0]?q:null},Bc:function(a){var b=f.ja>8,c=this.eb,d=this.e.runtimeStyle,e=d[c.da],g=d[c.z],j=d[c.T],i,h,k,n;if(e)d[c.da]="";if(g)d[c.z]="";if(j)d[c.T]=
"";if(b){i=d[c.Ma];h=d[c.Pa];n=d[c.S];k=d[c.Sa];if(i)d[c.Ma]="";if(h)d[c.Pa]="";if(n)d[c.S]="";if(k)d[c.Sa]=""}a=a.call(this);if(e)d[c.da]=e;if(g)d[c.z]=g;if(j)d[c.T]=j;if(b){if(i)d[c.Ma]=i;if(h)d[c.Pa]=h;if(n)d[c.S]=n;if(k)d[c.Sa]=k}return a},ia:f.B.va(function(){return this.wb()||this.Bc(function(){var a=this.e.currentStyle,b=this.eb;return a[b.z]+" "+a[b.da]+" "+a[b.T]+" "+a[b.S+"X"]+" "+a[b.S+"Y"]})}),wb:f.B.va(function(){var a=this.e;return a.style[this.Fa]||a.currentStyle.getAttribute(this.wa)}),
qc:function(){var a=0;if(f.O<7){a=this.e;a=""+(a.style[f.nb+"PngFix"]||a.currentStyle.getAttribute(f.F+"png-fix"))==="true"}return a},i:f.B.va(function(){return(this.wb()||this.qc())&&!!this.j()})});f.Vb=f.B.ka({wc:["Top","Right","Bottom","Left"],Id:{thin:"1px",medium:"3px",thick:"5px"},la:function(){var a={},b={},c={},d=false,e=true,g=true,j=true;this.Cc(function(){for(var i=this.e.currentStyle,h=0,k,n,m,p,r,t,v;h<4;h++){m=this.wc[h];v=m.charAt(0).toLowerCase();k=b[v]=i["border"+m+"Style"];n=i["border"+
m+"Color"];m=i["border"+m+"Width"];if(h>0){if(k!==p)g=false;if(n!==r)e=false;if(m!==t)j=false}p=k;r=n;t=m;c[v]=f.ha(n);m=a[v]=f.n(b[v]==="none"?"0":this.Id[m]||m);if(m.a(this.e)>0)d=true}});return d?{J:a,Zd:b,gd:c,ee:j,hd:e,$d:g}:null},ia:f.B.va(function(){var a=this.e,b=a.currentStyle,c;a.tagName in f.Ac&&a.offsetParent.currentStyle.borderCollapse==="collapse"||this.Cc(function(){c=b.borderWidth+"|"+b.borderStyle+"|"+b.borderColor});return c}),Cc:function(a){var b=this.e.runtimeStyle,c=b.borderWidth,
d=b.borderColor;if(c)b.borderWidth="";if(d)b.borderColor="";a=a.call(this);if(c)b.borderWidth=c;if(d)b.borderColor=d;return a}});(function(){f.jb=f.B.ka({wa:"border-radius",Fa:"borderRadius",la:function(b){var c=null,d,e,g,j,i=false;if(b){e=new f.v(b);var h=function(){for(var k=[],n;(g=e.next())&&g.W();){j=f.n(g.d);n=j.ic();if(n<0)return null;if(n>0)i=true;k.push(j)}return k.length>0&&k.length<5?{tl:k[0],tr:k[1]||k[0],br:k[2]||k[0],bl:k[3]||k[1]||k[0]}:null};if(b=h()){if(g){if(g.k&f.v.qa.pa&&g.d===
"/")d=h()}else d=b;if(i&&b&&d)c={x:b,y:d}}}return c}});var a=f.n("0");a={tl:a,tr:a,br:a,bl:a};f.jb.Dc={x:a,y:a}})();f.Ub=f.B.ka({wa:"border-image",Fa:"borderImage",fb:{stretch:1,round:1,repeat:1,space:1},la:function(a){var b=null,c,d,e,g,j,i,h=0,k=f.v.qa,n=k.na,m=k.oa,p=k.Ra;if(a){c=new f.v(a);b={};for(var r=function(l){return l&&l.k&k.pa&&l.d==="/"},t=function(l){return l&&l.k&n&&l.d==="fill"},v=function(){g=c.ma(function(l){return!(l.k&(m|p))});if(t(c.next())&&!b.fill)b.fill=true;else c.D();if(r(c.next())){h++;
j=c.ma(function(l){return!l.W()&&!(l.k&n&&l.d==="auto")});if(r(c.next())){h++;i=c.ma(function(l){return!l.Ca()})}}else c.D()};a=c.next();){d=a.k;e=a.d;if(d&(m|p)&&!g){c.D();v()}else if(t(a)&&!b.fill){b.fill=true;v()}else if(d&n&&this.fb[e]&&!b.repeat){b.repeat={f:e};if(a=c.next())if(a.k&n&&this.fb[a.d])b.repeat.Ob=a.d;else c.D()}else if(d&k.URL&&!b.src)b.src=e;else return null}if(!b.src||!g||g.length<1||g.length>4||j&&j.length>4||h===1&&j.length<1||i&&i.length>4||h===2&&i.length<1)return null;if(!b.repeat)b.repeat=
{f:"stretch"};if(!b.repeat.Ob)b.repeat.Ob=b.repeat.f;a=function(l,q){return{t:q(l[0]),r:q(l[1]||l[0]),b:q(l[2]||l[0]),l:q(l[3]||l[1]||l[0])}};b.slice=a(g,function(l){return f.n(l.k&m?l.d+"px":l.d)});if(j&&j[0])b.J=a(j,function(l){return l.W()?f.n(l.d):l.d});if(i&&i[0])b.Da=a(i,function(l){return l.Ca()?f.n(l.d):l.d})}return b}});f.Ic=f.B.ka({wa:"box-shadow",Fa:"boxShadow",la:function(a){var b,c=f.n,d=f.v.qa,e;if(a){e=new f.v(a);b={Da:[],Bb:[]};for(a=function(){for(var g,j,i,h,k,n;g=e.next();){i=g.d;
j=g.k;if(j&d.pa&&i===",")break;else if(g.Ca()&&!k){e.D();k=e.ma(function(m){return!m.Ca()})}else if(j&d.z&&!h)h=i;else if(j&d.na&&i==="inset"&&!n)n=true;else return false}g=k&&k.length;if(g>1&&g<5){(n?b.Bb:b.Da).push({fe:c(k[0].d),ge:c(k[1].d),blur:c(k[2]?k[2].d:"0"),Vd:c(k[3]?k[3].d:"0"),color:f.ha(h||"currentColor")});return true}return false};a(););}return b&&(b.Bb.length||b.Da.length)?b:null}});f.Uc=f.B.ka({ia:f.B.va(function(){var a=this.e.currentStyle;return a.visibility+"|"+a.display}),la:function(){var a=
this.e,b=a.runtimeStyle;a=a.currentStyle;var c=b.visibility,d;b.visibility="";d=a.visibility;b.visibility=c;return{ce:d!=="hidden",nd:a.display!=="none"}},i:function(){return false}});f.u={R:function(a){function b(c,d,e,g){this.e=c;this.s=d;this.g=e;this.parent=g}f.p.Eb(b.prototype,f.u,a);return b},Cb:false,Q:function(){return false},Ea:f.aa,Lb:function(){this.m();this.i()&&this.V()},ib:function(){this.Cb=true},Mb:function(){this.i()?this.V():this.m()},sb:function(a,b){this.vc(a);for(var c=this.ra||
(this.ra=[]),d=a+1,e=c.length,g;d<e;d++)if(g=c[d])break;c[a]=b;this.I().insertBefore(b,g||null)},za:function(a){var b=this.ra;return b&&b[a]||null},vc:function(a){var b=this.za(a),c=this.Ta;if(b&&c){c.removeChild(b);this.ra[a]=null}},Aa:function(a,b,c,d){var e=this.rb||(this.rb={}),g=e[a];if(!g){g=e[a]=f.p.Za("shape");if(b)g.appendChild(g[b]=f.p.Za(b));if(d){c=this.za(d);if(!c){this.sb(d,doc.createElement("group"+d));c=this.za(d)}}c.appendChild(g);a=g.style;a.position="absolute";a.left=a.top=0;a.behavior=
"url(#default#VML)"}return g},vb:function(a){var b=this.rb,c=b&&b[a];if(c){c.parentNode.removeChild(c);delete b[a]}return!!c},kc:function(a){var b=this.e,c=this.s.o(),d=c.h,e=c.f,g,j,i,h,k,n;c=a.x.tl.a(b,d);g=a.y.tl.a(b,e);j=a.x.tr.a(b,d);i=a.y.tr.a(b,e);h=a.x.br.a(b,d);k=a.y.br.a(b,e);n=a.x.bl.a(b,d);a=a.y.bl.a(b,e);d=Math.min(d/(c+j),e/(i+k),d/(n+h),e/(g+a));if(d<1){c*=d;g*=d;j*=d;i*=d;h*=d;k*=d;n*=d;a*=d}return{x:{tl:c,tr:j,br:h,bl:n},y:{tl:g,tr:i,br:k,bl:a}}},ya:function(a,b,c){b=b||1;var d,e,
g=this.s.o();e=g.h*b;g=g.f*b;var j=this.g.G,i=Math.floor,h=Math.ceil,k=a?a.Jb*b:0,n=a?a.Ib*b:0,m=a?a.tb*b:0;a=a?a.Db*b:0;var p,r,t,v,l;if(c||j.i()){d=this.kc(c||j.j());c=d.x.tl*b;j=d.y.tl*b;p=d.x.tr*b;r=d.y.tr*b;t=d.x.br*b;v=d.y.br*b;l=d.x.bl*b;b=d.y.bl*b;e="m"+i(a)+","+i(j)+"qy"+i(c)+","+i(k)+"l"+h(e-p)+","+i(k)+"qx"+h(e-n)+","+i(r)+"l"+h(e-n)+","+h(g-v)+"qy"+h(e-t)+","+h(g-m)+"l"+i(l)+","+h(g-m)+"qx"+i(a)+","+h(g-b)+" x e"}else e="m"+i(a)+","+i(k)+"l"+h(e-n)+","+i(k)+"l"+h(e-n)+","+h(g-m)+"l"+i(a)+
","+h(g-m)+"xe";return e},I:function(){var a=this.parent.za(this.N),b;if(!a){a=doc.createElement(this.Ya);b=a.style;b.position="absolute";b.top=b.left=0;this.parent.sb(this.N,a)}return a},mc:function(){var a=this.e,b=a.currentStyle,c=a.runtimeStyle,d=a.tagName,e=f.O===6,g;if(e&&(d in f.cc||d==="FIELDSET")||d==="BUTTON"||d==="INPUT"&&a.type in f.Gd){c.borderWidth="";d=this.g.w.wc;for(g=d.length;g--;){e=d[g];c["padding"+e]="";c["padding"+e]=f.n(b["padding"+e]).a(a)+f.n(b["border"+e+"Width"]).a(a)+(f.O!==
8&&g%2?1:0)}c.borderWidth=0}else if(e){if(a.childNodes.length!==1||a.firstChild.tagName!=="ie6-mask"){b=doc.createElement("ie6-mask");d=b.style;d.visibility="visible";for(d.zoom=1;d=a.firstChild;)b.appendChild(d);a.appendChild(b);c.visibility="hidden"}}else c.borderColor="transparent"},ie:function(){},m:function(){this.parent.vc(this.N);delete this.rb;delete this.ra}};f.Rc=f.u.R({i:function(){var a=this.ed;for(var b in a)if(a.hasOwnProperty(b)&&a[b].i())return true;return false},Q:function(){return this.g.Pb.H()},
ib:function(){if(this.i()){var a=this.jc(),b=a,c;a=a.currentStyle;var d=a.position,e=this.I().style,g=0,j=0;j=this.s.o();var i=j.Hd;if(d==="fixed"&&f.O>6){g=j.x*i;j=j.y*i;b=d}else{do b=b.offsetParent;while(b&&b.currentStyle.position==="static");if(b){c=b.getBoundingClientRect();b=b.currentStyle;g=(j.x-c.left)*i-(parseFloat(b.borderLeftWidth)||0);j=(j.y-c.top)*i-(parseFloat(b.borderTopWidth)||0)}else{b=doc.documentElement;g=(j.x+b.scrollLeft-b.clientLeft)*i;j=(j.y+b.scrollTop-b.clientTop)*i}b="absolute"}e.position=
b;e.left=g;e.top=j;e.zIndex=d==="static"?-1:a.zIndex;this.Cb=true}},Mb:f.aa,Nb:function(){var a=this.g.Pb.j();this.I().style.display=a.ce&&a.nd?"":"none"},Lb:function(){this.i()?this.Nb():this.m()},jc:function(){var a=this.e;return a.tagName in f.Ac?a.offsetParent:a},I:function(){var a=this.Ta,b;if(!a){b=this.jc();a=this.Ta=doc.createElement("css3-container");a.style.direction="ltr";this.Nb();b.parentNode.insertBefore(a,b)}return a},ab:f.aa,m:function(){var a=this.Ta,b;if(a&&(b=a.parentNode))b.removeChild(a);
delete this.Ta;delete this.ra}});f.Fc=f.u.R({N:2,Ya:"background",Q:function(){var a=this.g;return a.C.H()||a.G.H()},i:function(){var a=this.g;return a.q.i()||a.G.i()||a.C.i()||a.ga.i()&&a.ga.j().Bb},V:function(){var a=this.s.o();if(a.h&&a.f){this.od();this.pd()}},od:function(){var a=this.g.C.j(),b=this.s.o(),c=this.e,d=a&&a.color,e,g;if(d&&d.fa()>0){this.lc();a=this.Aa("bgColor","fill",this.I(),1);e=b.h;b=b.f;a.stroked=false;a.coordsize=e*2+","+b*2;a.coordorigin="1,1";a.path=this.ya(null,2);g=a.style;
g.width=e;g.height=b;a.fill.color=d.U(c);c=d.fa();if(c<1)a.fill.opacity=c}else this.vb("bgColor")},pd:function(){var a=this.g.C.j(),b=this.s.o();a=a&&a.M;var c,d,e,g,j;if(a){this.lc();d=b.h;e=b.f;for(j=a.length;j--;){b=a[j];c=this.Aa("bgImage"+j,"fill",this.I(),2);c.stroked=false;c.fill.type="tile";c.fillcolor="none";c.coordsize=d*2+","+e*2;c.coordorigin="1,1";c.path=this.ya(0,2);g=c.style;g.width=d;g.height=e;if(b.P==="linear-gradient")this.bd(c,b);else{c.fill.src=b.Ab;this.Nd(c,j)}}}for(j=a?a.length:
0;this.vb("bgImage"+j++););},Nd:function(a,b){var c=this;f.p.Rb(a.fill.src,function(d){var e=c.e,g=c.s.o(),j=g.h;g=g.f;if(j&&g){var i=a.fill,h=c.g,k=h.w.j(),n=k&&k.J;k=n?n.t.a(e):0;var m=n?n.r.a(e):0,p=n?n.b.a(e):0;n=n?n.l.a(e):0;h=h.C.j().M[b];e=h.$?h.$.coords(e,j-d.h-n-m,g-d.f-k-p):{x:0,y:0};h=h.bb;p=m=0;var r=j+1,t=g+1,v=f.O===8?0:1;n=Math.round(e.x)+n+0.5;k=Math.round(e.y)+k+0.5;i.position=n/j+","+k/g;i.size.x=1;i.size=d.h+"px,"+d.f+"px";if(h&&h!=="repeat"){if(h==="repeat-x"||h==="no-repeat"){m=
k+1;t=k+d.f+v}if(h==="repeat-y"||h==="no-repeat"){p=n+1;r=n+d.h+v}a.style.clip="rect("+m+"px,"+r+"px,"+t+"px,"+p+"px)"}}})},bd:function(a,b){var c=this.e,d=this.s.o(),e=d.h,g=d.f;a=a.fill;d=b.ca;var j=d.length,i=Math.PI,h=f.Na,k=h.tc,n=h.dc;b=h.gc(c,e,g,b);h=b.sa;var m=b.xc,p=b.yc,r=b.Wd,t=b.Xd,v=b.rd,l=b.sd,q=b.kd,s=b.ld;b=b.rc;e=h%90?Math.atan2(q*e/g,s)/i*180:h+90;e+=180;e%=360;v=k(r,t,h,v,l);g=n(r,t,v[0],v[1]);i=[];v=k(m,p,h,r,t);n=n(m,p,v[0],v[1])/g*100;k=[];for(h=0;h<j;h++)k.push(d[h].db?d[h].db.a(c,
b):h===0?0:h===j-1?b:null);for(h=1;h<j;h++){if(k[h]===null){m=k[h-1];b=h;do p=k[++b];while(p===null);k[h]=m+(p-m)/(b-h+1)}k[h]=Math.max(k[h],k[h-1])}for(h=0;h<j;h++)i.push(n+k[h]/g*100+"% "+d[h].color.U(c));a.angle=e;a.type="gradient";a.method="sigma";a.color=d[0].color.U(c);a.color2=d[j-1].color.U(c);if(a.colors)a.colors.value=i.join(",");else a.colors=i.join(",")},lc:function(){var a=this.e.runtimeStyle;a.backgroundImage="url(about:blank)";a.backgroundColor="transparent"},m:function(){f.u.m.call(this);
var a=this.e.runtimeStyle;a.backgroundImage=a.backgroundColor=""}});f.Gc=f.u.R({N:4,Ya:"border",Q:function(){var a=this.g;return a.w.H()||a.G.H()},i:function(){var a=this.g;return a.G.i()&&!a.q.i()&&a.w.i()},V:function(){var a=this.e,b=this.g.w.j(),c=this.s.o(),d=c.h;c=c.f;var e,g,j,i,h;if(b){this.mc();b=this.wd(2);i=0;for(h=b.length;i<h;i++){j=b[i];e=this.Aa("borderPiece"+i,j.stroke?"stroke":"fill",this.I());e.coordsize=d*2+","+c*2;e.coordorigin="1,1";e.path=j.path;g=e.style;g.width=d;g.height=c;
e.filled=!!j.fill;e.stroked=!!j.stroke;if(j.stroke){e=e.stroke;e.weight=j.Qb+"px";e.color=j.color.U(a);e.dashstyle=j.stroke==="dashed"?"2 2":j.stroke==="dotted"?"1 1":"solid";e.linestyle=j.stroke==="double"&&j.Qb>2?"ThinThin":"Single"}else e.fill.color=j.fill.U(a)}for(;this.vb("borderPiece"+i++););}},wd:function(a){var b=this.e,c,d,e,g=this.g.w,j=[],i,h,k,n,m=Math.round,p,r,t;if(g.i()){c=g.j();g=c.J;r=c.Zd;t=c.gd;if(c.ee&&c.$d&&c.hd){if(t.t.fa()>0){c=g.t.a(b);k=c/2;j.push({path:this.ya({Jb:k,Ib:k,
tb:k,Db:k},a),stroke:r.t,color:t.t,Qb:c})}}else{a=a||1;c=this.s.o();d=c.h;e=c.f;c=m(g.t.a(b));k=m(g.r.a(b));n=m(g.b.a(b));b=m(g.l.a(b));var v={t:c,r:k,b:n,l:b};b=this.g.G;if(b.i())p=this.kc(b.j());i=Math.floor;h=Math.ceil;var l=function(o,u){return p?p[o][u]:0},q=function(o,u,x,y,z,B){var E=l("x",o),D=l("y",o),C=o.charAt(1)==="r";o=o.charAt(0)==="b";return E>0&&D>0?(B?"al":"ae")+(C?h(d-E):i(E))*a+","+(o?h(e-D):i(D))*a+","+(i(E)-u)*a+","+(i(D)-x)*a+","+y*65535+","+2949075*(z?1:-1):(B?"m":"l")+(C?d-
u:u)*a+","+(o?e-x:x)*a},s=function(o,u,x,y){var z=o==="t"?i(l("x","tl"))*a+","+h(u)*a:o==="r"?h(d-u)*a+","+i(l("y","tr"))*a:o==="b"?h(d-l("x","br"))*a+","+i(e-u)*a:i(u)*a+","+h(e-l("y","bl"))*a;o=o==="t"?h(d-l("x","tr"))*a+","+h(u)*a:o==="r"?h(d-u)*a+","+h(e-l("y","br"))*a:o==="b"?i(l("x","bl"))*a+","+i(e-u)*a:i(u)*a+","+i(l("y","tl"))*a;return x?(y?"m"+o:"")+"l"+z:(y?"m"+z:"")+"l"+o};b=function(o,u,x,y,z,B){var E=o==="l"||o==="r",D=v[o],C,F;if(D>0&&r[o]!=="none"&&t[o].fa()>0){C=v[E?o:u];u=v[E?u:
o];F=v[E?o:x];x=v[E?x:o];if(r[o]==="dashed"||r[o]==="dotted"){j.push({path:q(y,C,u,B+45,0,1)+q(y,0,0,B,1,0),fill:t[o]});j.push({path:s(o,D/2,0,1),stroke:r[o],Qb:D,color:t[o]});j.push({path:q(z,F,x,B,0,1)+q(z,0,0,B-45,1,0),fill:t[o]})}else j.push({path:q(y,C,u,B+45,0,1)+s(o,D,0,0)+q(z,F,x,B,0,0)+(r[o]==="double"&&D>2?q(z,F-i(F/3),x-i(x/3),B-45,1,0)+s(o,h(D/3*2),1,0)+q(y,C-i(C/3),u-i(u/3),B,1,0)+"x "+q(y,i(C/3),i(u/3),B+45,0,1)+s(o,i(D/3),1,0)+q(z,i(F/3),i(x/3),B,0,0):"")+q(z,0,0,B-45,1,0)+s(o,0,1,
0)+q(y,0,0,B,1,0),fill:t[o]})}};b("t","l","r","tl","tr",90);b("r","t","b","tr","br",0);b("b","r","l","br","bl",-90);b("l","b","t","bl","tl",-180)}}return j},m:function(){if(this.ec||!this.g.q.i())this.e.runtimeStyle.borderColor="";f.u.m.call(this)}});f.Tb=f.u.R({N:5,Md:["t","tr","r","br","b","bl","l","tl","c"],Q:function(){return this.g.q.H()},i:function(){return this.g.q.i()},V:function(){this.I();var a=this.g.q.j(),b=this.g.w.j(),c=this.s.o(),d=this.e,e=this.uc;f.p.Rb(a.src,function(g){function j(s,
o,u,x,y){s=e[s].style;var z=Math.max;s.width=z(o,0);s.height=z(u,0);s.left=x;s.top=y}function i(s,o,u){for(var x=0,y=s.length;x<y;x++)e[s[x]].imagedata[o]=u}var h=c.h,k=c.f,n=f.n("0"),m=a.J||(b?b.J:{t:n,r:n,b:n,l:n});n=m.t.a(d);var p=m.r.a(d),r=m.b.a(d);m=m.l.a(d);var t=a.slice,v=t.t.a(d),l=t.r.a(d),q=t.b.a(d);t=t.l.a(d);j("tl",m,n,0,0);j("t",h-m-p,n,m,0);j("tr",p,n,h-p,0);j("r",p,k-n-r,h-p,n);j("br",p,r,h-p,k-r);j("b",h-m-p,r,m,k-r);j("bl",m,r,0,k-r);j("l",m,k-n-r,0,n);j("c",h-m-p,k-n-r,m,n);i(["tl",
"t","tr"],"cropBottom",(g.f-v)/g.f);i(["tl","l","bl"],"cropRight",(g.h-t)/g.h);i(["bl","b","br"],"cropTop",(g.f-q)/g.f);i(["tr","r","br"],"cropLeft",(g.h-l)/g.h);i(["l","r","c"],"cropTop",v/g.f);i(["l","r","c"],"cropBottom",q/g.f);i(["t","b","c"],"cropLeft",t/g.h);i(["t","b","c"],"cropRight",l/g.h);e.c.style.display=a.fill?"":"none"},this)},I:function(){var a=this.parent.za(this.N),b,c,d,e=this.Md,g=e.length;if(!a){a=doc.createElement("border-image");b=a.style;b.position="absolute";this.uc={};for(d=
0;d<g;d++){c=this.uc[e[d]]=f.p.Za("rect");c.appendChild(f.p.Za("imagedata"));b=c.style;b.behavior="url(#default#VML)";b.position="absolute";b.top=b.left=0;c.imagedata.src=this.g.q.j().src;c.stroked=false;c.filled=false;a.appendChild(c)}this.parent.sb(this.N,a)}return a},Ea:function(){if(this.i()){var a=this.e,b=a.runtimeStyle,c=this.g.q.j().J;b.borderStyle="solid";if(c){b.borderTopWidth=c.t.a(a)+"px";b.borderRightWidth=c.r.a(a)+"px";b.borderBottomWidth=c.b.a(a)+"px";b.borderLeftWidth=c.l.a(a)+"px"}this.mc()}},
m:function(){var a=this.e.runtimeStyle;a.borderStyle="";if(this.ec||!this.g.w.i())a.borderColor=a.borderWidth="";f.u.m.call(this)}});f.Hc=f.u.R({N:1,Ya:"outset-box-shadow",Q:function(){var a=this.g;return a.ga.H()||a.G.H()},i:function(){var a=this.g.ga;return a.i()&&a.j().Da[0]},V:function(){function a(C,F,O,H,M,P,I){C=b.Aa("shadow"+C+F,"fill",d,j-C);F=C.fill;C.coordsize=n*2+","+m*2;C.coordorigin="1,1";C.stroked=false;C.filled=true;F.color=M.U(c);if(P){F.type="gradienttitle";F.color2=F.color;F.opacity=
0}C.path=I;l=C.style;l.left=O;l.top=H;l.width=n;l.height=m;return C}var b=this,c=this.e,d=this.I(),e=this.g,g=e.ga.j().Da;e=e.G.j();var j=g.length,i=j,h,k=this.s.o(),n=k.h,m=k.f;k=f.O===8?1:0;for(var p=["tl","tr","br","bl"],r,t,v,l,q,s,o,u,x,y,z,B,E,D;i--;){t=g[i];q=t.fe.a(c);s=t.ge.a(c);h=t.Vd.a(c);o=t.blur.a(c);t=t.color;u=-h-o;if(!e&&o)e=f.jb.Dc;u=this.ya({Jb:u,Ib:u,tb:u,Db:u},2,e);if(o){x=(h+o)*2+n;y=(h+o)*2+m;z=x?o*2/x:0;B=y?o*2/y:0;if(o-h>n/2||o-h>m/2)for(h=4;h--;){r=p[h];E=r.charAt(0)==="b";
D=r.charAt(1)==="r";r=a(i,r,q,s,t,o,u);v=r.fill;v.focusposition=(D?1-z:z)+","+(E?1-B:B);v.focussize="0,0";r.style.clip="rect("+((E?y/2:0)+k)+"px,"+(D?x:x/2)+"px,"+(E?y:y/2)+"px,"+((D?x/2:0)+k)+"px)"}else{r=a(i,"",q,s,t,o,u);v=r.fill;v.focusposition=z+","+B;v.focussize=1-z*2+","+(1-B*2)}}else{r=a(i,"",q,s,t,o,u);q=t.fa();if(q<1)r.fill.opacity=q}}}});f.Pc=f.u.R({N:6,Ya:"imgEl",Q:function(){var a=this.g;return this.e.src!==this.Xc||a.G.H()},i:function(){var a=this.g;return a.G.i()||a.C.qc()},V:function(){this.Xc=
j;this.Cd();var a=this.Aa("img","fill",this.I()),b=a.fill,c=this.s.o(),d=c.h;c=c.f;var e=this.g.w.j(),g=e&&e.J;e=this.e;var j=e.src,i=Math.round,h=e.currentStyle,k=f.n;if(!g||f.O<7){g=f.n("0");g={t:g,r:g,b:g,l:g}}a.stroked=false;b.type="frame";b.src=j;b.position=(d?0.5/d:0)+","+(c?0.5/c:0);a.coordsize=d*2+","+c*2;a.coordorigin="1,1";a.path=this.ya({Jb:i(g.t.a(e)+k(h.paddingTop).a(e)),Ib:i(g.r.a(e)+k(h.paddingRight).a(e)),tb:i(g.b.a(e)+k(h.paddingBottom).a(e)),Db:i(g.l.a(e)+k(h.paddingLeft).a(e))},
2);a=a.style;a.width=d;a.height=c},Cd:function(){this.e.runtimeStyle.filter="alpha(opacity=0)"},m:function(){f.u.m.call(this);this.e.runtimeStyle.filter=""}});f.Oc=f.u.R({ib:f.aa,Mb:f.aa,Nb:f.aa,Lb:f.aa,Ld:/^,+|,+$/g,Fd:/,+/g,gb:function(a,b){(this.pb||(this.pb=[]))[a]=b||void 0},ab:function(){var a=this.pb,b;if(a&&(b=a.join(",").replace(this.Ld,"").replace(this.Fd,","))!==this.Wc)this.Wc=this.e.runtimeStyle.background=b},m:function(){this.e.runtimeStyle.background="";delete this.pb}});f.Mc=f.u.R({ua:1,
Q:function(){return this.g.C.H()},i:function(){var a=this.g;return a.C.i()||a.q.i()},V:function(){var a=this.g.C.j(),b,c,d=0,e,g;if(a){b=[];if(c=a.M)for(;e=c[d++];)if(e.P==="linear-gradient"){g=this.vd(e.Wa);g=(e.Xa||f.Ka.Kc).a(this.e,g.h,g.f,g.h,g.f);b.push("url(data:image/svg+xml,"+escape(this.xd(e,g.h,g.f))+") "+this.dd(e.$)+" / "+g.h+"px "+g.f+"px "+(e.bc||"")+" "+(e.Wa||"")+" "+(e.ub||""))}else b.push(e.Hb);a.color&&b.push(a.color.Y);this.parent.gb(this.ua,b.join(","))}},dd:function(a){return a?
a.X.map(function(b){return b.d}).join(" "):"0 0"},vd:function(a){var b=this.e,c=this.s.o(),d=c.h;c=c.f;var e;if(a!=="border-box")if((e=this.g.w.j())&&(e=e.J)){d-=e.l.a(b)+e.l.a(b);c-=e.t.a(b)+e.b.a(b)}if(a==="content-box"){a=f.n;e=b.currentStyle;d-=a(e.paddingLeft).a(b)+a(e.paddingRight).a(b);c-=a(e.paddingTop).a(b)+a(e.paddingBottom).a(b)}return{h:d,f:c}},xd:function(a,b,c){var d=this.e,e=a.ca,g=e.length,j=f.Na.gc(d,b,c,a);a=j.xc;var i=j.yc,h=j.td,k=j.ud;j=j.rc;var n,m,p,r,t;n=[];for(m=0;m<g;m++)n.push(e[m].db?
e[m].db.a(d,j):m===0?0:m===g-1?j:null);for(m=1;m<g;m++)if(n[m]===null){r=n[m-1];p=m;do t=n[++p];while(t===null);n[m]=r+(t-r)/(p-m+1)}b=['<svg width="'+b+'" height="'+c+'" xmlns="http://www.w3.org/2000/svg"><defs><linearGradient id="g" gradientUnits="userSpaceOnUse" x1="'+a/b*100+'%" y1="'+i/c*100+'%" x2="'+h/b*100+'%" y2="'+k/c*100+'%">'];for(m=0;m<g;m++)b.push('<stop offset="'+n[m]/j+'" stop-color="'+e[m].color.U(d)+'" stop-opacity="'+e[m].color.fa()+'"/>');b.push('</linearGradient></defs><rect width="100%" height="100%" fill="url(#g)"/></svg>');
return b.join("")},m:function(){this.parent.gb(this.ua)}});f.Nc=f.u.R({T:"repeat",Sc:"stretch",Qc:"round",ua:0,Q:function(){return this.g.q.H()},i:function(){return this.g.q.i()},V:function(){var a=this,b=a.g.q.j(),c=a.g.w.j(),d=a.s.o(),e=b.repeat,g=e.f,j=e.Ob,i=a.e,h=0;f.p.Rb(b.src,function(k){function n(Q,R,U,V,W,Y,X,S,w,A){K.push('<pattern patternUnits="userSpaceOnUse" id="pattern'+G+'" x="'+(g===l?Q+U/2-w/2:Q)+'" y="'+(j===l?R+V/2-A/2:R)+'" width="'+w+'" height="'+A+'"><svg width="'+w+'" height="'+
A+'" viewBox="'+W+" "+Y+" "+X+" "+S+'" preserveAspectRatio="none"><image xlink:href="'+v+'" x="0" y="0" width="'+r+'" height="'+t+'" /></svg></pattern>');J.push('<rect x="'+Q+'" y="'+R+'" width="'+U+'" height="'+V+'" fill="url(#pattern'+G+')" />');G++}var m=d.h,p=d.f,r=k.h,t=k.f,v=a.Dd(b.src,r,t),l=a.T,q=a.Sc;k=a.Qc;var s=Math.ceil,o=f.n("0"),u=b.J||(c?c.J:{t:o,r:o,b:o,l:o});o=u.t.a(i);var x=u.r.a(i),y=u.b.a(i);u=u.l.a(i);var z=b.slice,B=z.t.a(i),E=z.r.a(i),D=z.b.a(i);z=z.l.a(i);var C=m-u-x,F=p-o-
y,O=r-z-E,H=t-B-D,M=g===q?C:O*o/B,P=j===q?F:H*x/E,I=g===q?C:O*y/D;q=j===q?F:H*u/z;var K=[],J=[],G=0;if(g===k){M-=(M-(C%M||M))/s(C/M);I-=(I-(C%I||I))/s(C/I)}if(j===k){P-=(P-(F%P||P))/s(F/P);q-=(q-(F%q||q))/s(F/q)}k=['<svg width="'+m+'" height="'+p+'" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">'];n(0,0,u,o,0,0,z,B,u,o);n(u,0,C,o,z,0,O,B,M,o);n(m-x,0,x,o,r-E,0,E,B,x,o);n(0,o,u,F,0,B,z,H,u,q);if(b.fill)n(u,o,C,F,z,B,O,H,M||I||O,q||P||H);n(m-x,o,x,F,r-E,B,E,H,x,P);n(0,
p-y,u,y,0,t-D,z,D,u,y);n(u,p-y,C,y,z,t-D,O,D,I,y);n(m-x,p-y,x,y,r-E,t-D,E,D,x,y);k.push("<defs>"+K.join("\n")+"</defs>"+J.join("\n")+"</svg>");a.parent.gb(a.ua,"url(data:image/svg+xml,"+escape(k.join(""))+") no-repeat border-box border-box");h&&a.parent.ab()},a);h=1},Dd:function(){var a={};return function(b,c,d){var e=a[b],g;if(!e){e=new Image;g=doc.createElement("canvas");e.src=b;g.width=c;g.height=d;g.getContext("2d").drawImage(e,0,0);e=a[b]=g.toDataURL()}return e}}(),Ea:f.Tb.prototype.Ea,m:function(){var a=
this.e.runtimeStyle;this.parent.gb(this.ua);a.borderColor=a.borderStyle=a.borderWidth=""}});f.kb=function(){function a(l,q){l.className+=" "+q}function b(l){var q=v.slice.call(arguments,1),s=q.length;setTimeout(function(){if(l)for(;s--;)a(l,q[s])},0)}function c(l){var q=v.slice.call(arguments,1),s=q.length;setTimeout(function(){if(l)for(;s--;){var o=q[s];o=t[o]||(t[o]=new RegExp("\\b"+o+"\\b","g"));l.className=l.className.replace(o,"")}},0)}function d(l){function q(){if(!U){var w,A,L=f.ja,T=l.currentStyle,
N=T.getAttribute(g)==="true",da=T.getAttribute(i)!=="false",ea=T.getAttribute(h)!=="false";S=T.getAttribute(j);S=L>7?S!=="false":S==="true";if(!R){R=1;l.runtimeStyle.zoom=1;T=l;for(var fa=1;T=T.previousSibling;)if(T.nodeType===1){fa=0;break}fa&&a(l,p)}J.cb();if(N&&(A=J.o())&&(w=doc.documentElement||doc.body)&&(A.y>w.clientHeight||A.x>w.clientWidth||A.y+A.f<0||A.x+A.h<0)){if(!Y){Y=1;f.mb.ba(q)}}else{U=1;Y=R=0;f.mb.Ha(q);if(L===9){G={C:new f.Sb(l),q:new f.Ub(l),w:new f.Vb(l)};Q=[G.C,G.q];K=new f.Oc(l,
J,G);w=[new f.Mc(l,J,G,K),new f.Nc(l,J,G,K)]}else{G={C:new f.Sb(l),w:new f.Vb(l),q:new f.Ub(l),G:new f.jb(l),ga:new f.Ic(l),Pb:new f.Uc(l)};Q=[G.C,G.w,G.q,G.G,G.ga,G.Pb];K=new f.Rc(l,J,G);w=[new f.Hc(l,J,G,K),new f.Fc(l,J,G,K),new f.Gc(l,J,G,K),new f.Tb(l,J,G,K)];l.tagName==="IMG"&&w.push(new f.Pc(l,J,G,K));K.ed=w}I=[K].concat(w);if(w=l.currentStyle.getAttribute(f.F+"watch-ancestors")){w=parseInt(w,10);A=0;for(N=l.parentNode;N&&(w==="NaN"||A++<w);){H(N,"onpropertychange",C);H(N,"onmouseenter",x);
H(N,"onmouseleave",y);H(N,"onmousedown",z);if(N.tagName in f.fc){H(N,"onfocus",E);H(N,"onblur",D)}N=N.parentNode}}if(S){f.Oa.ba(o);f.Oa.Rd()}o(1)}if(!V){V=1;L<9&&H(l,"onmove",s);H(l,"onresize",s);H(l,"onpropertychange",u);ea&&H(l,"onmouseenter",x);if(ea||da)H(l,"onmouseleave",y);da&&H(l,"onmousedown",z);if(l.tagName in f.fc){H(l,"onfocus",E);H(l,"onblur",D)}f.Qa.ba(s);f.L.ba(M)}J.hb()}}function s(){J&&J.Ad()&&o()}function o(w){if(!X)if(U){var A,L=I.length;F();for(A=0;A<L;A++)I[A].Ea();if(w||J.Od())for(A=
0;A<L;A++)I[A].ib();if(w||J.Td())for(A=0;A<L;A++)I[A].Mb();K.ab();O()}else R||q()}function u(){var w,A=I.length,L;w=event;if(!X&&!(w&&w.propertyName in r))if(U){F();for(w=0;w<A;w++)I[w].Ea();for(w=0;w<A;w++){L=I[w];L.Cb||L.ib();L.Q()&&L.Lb()}K.ab();O()}else R||q()}function x(){b(l,k)}function y(){c(l,k,n)}function z(){b(l,n);f.lb.ba(B)}function B(){c(l,n);f.lb.Ha(B)}function E(){b(l,m)}function D(){c(l,m)}function C(){var w=event.propertyName;if(w==="className"||w==="id")u()}function F(){J.cb();for(var w=
Q.length;w--;)Q[w].cb()}function O(){for(var w=Q.length;w--;)Q[w].hb();J.hb()}function H(w,A,L){w.attachEvent(A,L);W.push([w,A,L])}function M(){if(V){for(var w=W.length,A;w--;){A=W[w];A[0].detachEvent(A[1],A[2])}f.L.Ha(M);V=0;W=[]}}function P(){if(!X){var w,A;M();X=1;if(I){w=0;for(A=I.length;w<A;w++){I[w].ec=1;I[w].m()}}S&&f.Oa.Ha(o);f.Qa.Ha(o);I=J=G=Q=l=null}}var I,K,J=new ha(l),G,Q,R,U,V,W=[],Y,X,S;this.Ed=q;this.update=o;this.m=P;this.qd=l}var e={},g=f.F+"lazy-init",j=f.F+"poll",i=f.F+"track-active",
h=f.F+"track-hover",k=f.La+"hover",n=f.La+"active",m=f.La+"focus",p=f.La+"first-child",r={background:1,bgColor:1,display:1},t={},v=[];d.yd=function(l){var q=f.p.Ba(l);return e[q]||(e[q]=new d(l))};d.m=function(l){l=f.p.Ba(l);var q=e[l];if(q){q.m();delete e[l]}};d.md=function(){var l=[],q;if(e){for(var s in e)if(e.hasOwnProperty(s)){q=e[s];l.push(q.qd);q.m()}e={}}return l};return d}();f.supportsVML=f.zc;f.attach=function(a){f.ja<10&&f.zc&&f.kb.yd(a).Ed()};f.detach=function(a){f.kb.m(a)}};
var $=element;function init(){if(doc.media!=="print"){var a=window.PIE;a&&a.attach($)}}function cleanup(){if(doc.media!=="print"){var a=window.PIE;if(a){a.detach($);$=0}}}$.readyState==="complete"&&init();
</script>
</PUBLIC:COMPONENT>


================================================
FILE: public/css/ie/backgroundsize.min.htc
================================================
<component lightWeight="true">
<attach event="onpropertychange" onevent="handlePropertychange()" />
<attach event="ondetach" onevent="restore()" />
<attach event="onresize" for="window" onevent="handleResize()" />
<script type="text/javascript">
var rsrc=/url\(["']?(.*?)["']?\)/,positions={top:0,left:0,bottom:1,right:1,center:0.5},doc=element.document;init(); function init(){var b=doc.createElement("div"),a=doc.createElement("img"),c,d;b.style.position="absolute";b.style.zIndex=-1;b.style.top=0;b.style.right=0;b.style.left=0;b.style.bottom=0;b.style.overflow="hidden";a.style.position="absolute";a.style.width=a.style.width="auto";b.appendChild(a);element.insertBefore(b,element.firstChild);d=[element.currentStyle.backgroundPositionX,element.currentStyle.backgroundPositionY];element.bgsExpando=c={wrapper:b,img:a,backgroundSize:element.currentStyle["background-size"], backgroundPositionX:positions[d[0]]||parseFloat(d[0])/100,backgroundPositionY:positions[d[1]]||parseFloat(d[1])/100};"auto"==element.currentStyle.zIndex&&(element.style.zIndex=0);"static"==element.currentStyle.position&&(element.style.position="relative");refreshDisplay(element,c)&&(refreshDimensions(element,c),refreshBackgroundImage(element,c,function(){updateBackground(element,c)}))} function refreshDisplay(b,a){var c=b.currentStyle.display;c!=a.display&&(a.display=c,a.somethingChanged=!0);return"none"!=c}function refreshDimensions(b,a){var c=b.offsetWidth-(parseFloat(b.currentStyle.borderLeftWidth)||0)-(parseFloat(b.currentStyle.borderRightWidth)||0),d=b.offsetHeight-(parseFloat(b.currentStyle.borderTopWidth)||0)-(parseFloat(b.currentStyle.borderBottomWidth)||0);if(c!=a.innerWidth||d!=a.innerHeight)a.innerWidth=c,a.innerHeight=d,a.somethingChanged=!0} function refreshBackgroundImage(b,a,c){var d=a.img,e=(rsrc.exec(b.currentStyle.backgroundImage)||[])[1];if(e&&e!=a.backgroundSrc){a.backgroundSrc=e;a.somethingChanged=!0;d.onload=function(){var b=d.width,e=d.height;1==b&&1==e||(a.imgWidth=b,a.imgHeight=e,a.constrain=!1,c(),d.style.visibility="visible",d.onload=null)};d.style.visibility="hidden";d.src=a.backgroundSrc;if(d.readyState||d.complete)d.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==",d.src=a.backgroundSrc;a.ignoreNextPropertyChange= !0;b.style.backgroundImage="none"}else c()} function updateBackground(b,a){if(a.somethingChanged){var c=a.img,d=a.innerWidth/a.innerHeight,e=a.imgWidth/a.imgHeight,f=a.constrain;"contain"==a.backgroundSize?e>d?(a.constrain=d="width",e=Math.floor((a.innerHeight-a.innerWidth/e)*a.backgroundPositionY),c.style.top=e+"px",d!=f&&(c.style.width="100%",c.style.height="auto",c.style.left=0)):(a.constrain=d="height",e=Math.floor((a.innerWidth-a.innerHeight*e)*a.backgroundPositionX),c.style.left=e+"px",d!=f&&(c.style.width="auto",c.style.height="100%", c.style.top=0)):"cover"==a.backgroundSize&&(e>d?(a.constrain=d="height",e=Math.floor((a.innerHeight*e-a.innerWidth)*a.backgroundPositionX),c.style.left=-e+"px",d!=f&&(c.style.width="auto",c.style.height="100%",c.style.top=0)):(a.constrain=d="width",e=Math.floor((a.innerWidth/e-a.innerHeight)*a.backgroundPositionY),c.style.top=-e+"px",d!=f&&(c.style.width="100%",c.style.height="auto",c.style.left=0)));a.somethingChanged=!1}} function handlePropertychange(){var b=element.bgsExpando;b.ignoreNextPropertyChange?b.ignoreNextPropertyChange=!1:refreshDisplay(element,b)&&(refreshDimensions(element,b),refreshBackgroundImage(element,b,function(){updateBackground(element,b)}))}function handleResize(){var b=element.bgsExpando;"none"!=b.display&&(refreshDimensions(element,b),updateBackground(element,b))} function restore(){var b=element.bgsExpando;try{element.style.backgroundImage="url('"+b.backgroundSrc+"')",element.removeChild(b.wrapper),element.bgsExpando=null}catch(a){}};
</script>

================================================
FILE: public/css/ie/html5shiv.js
================================================
/*
 HTML5 Shiv v3.6.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
*/
(function(l,f){function m(){var a=e.elements;return"string"==typeof a?a.split(" "):a}function i(a){var b=n[a[o]];b||(b={},h++,a[o]=h,n[h]=b);return b}function p(a,b,c){b||(b=f);if(g)return b.createElement(a);c||(c=i(b));b=c.cache[a]?c.cache[a].cloneNode():r.test(a)?(c.cache[a]=c.createElem(a)).cloneNode():c.createElem(a);return b.canHaveChildren&&!s.test(a)?c.frag.appendChild(b):b}function t(a,b){if(!b.cache)b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag();
a.createElement=function(c){return!e.shivMethods?b.createElem(c):p(c,a,b)};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/\w+/g,function(a){b.createElem(a);b.frag.createElement(a);return'c("'+a+'")'})+");return n}")(e,b.frag)}function q(a){a||(a=f);var b=i(a);if(e.shivCSS&&!j&&!b.hasCSS){var c,d=a;c=d.createElement("p");d=d.getElementsByTagName("head")[0]||d.documentElement;c.innerHTML="x<style>article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}</style>";
c=d.insertBefore(c.lastChild,d.firstChild);b.hasCSS=!!c}g||t(a,b);return a}var k=l.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,r=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,j,o="_html5shiv",h=0,n={},g;(function(){try{var a=f.createElement("a");a.innerHTML="<xyz></xyz>";j="hidden"in a;var b;if(!(b=1==a.childNodes.length)){f.createElement("a");var c=f.createDocumentFragment();b="undefined"==typeof c.cloneNode||
"undefined"==typeof c.createDocumentFragment||"undefined"==typeof c.createElement}g=b}catch(d){g=j=!0}})();var e={elements:k.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup main mark meter nav output progress section summary time video",version:"3.6.2",shivCSS:!1!==k.shivCSS,supportsUnknownElements:g,shivMethods:!1!==k.shivMethods,type:"default",shivDocument:q,createElement:p,createDocumentFragment:function(a,b){a||(a=f);if(g)return a.createDocumentFragment();
for(var b=b||i(a),c=b.frag.cloneNode(),d=0,e=m(),h=e.length;d<h;d++)c.createElement(e[d]);return c}};l.html5=e;q(f)})(this,document);


================================================
FILE: public/css/ie/v8.css
================================================
/*
	Directive by HTML5 UP
	html5up.net | @n33co
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

/* Basic */

	hr {
		border-top: solid 1px #cccccc;
	}

	blockquote {
		border-left: solid 0.5em #cccccc;
	}

/* Section/Article */

	header.major {
		border-color: #cccccc;
	}

		header.major p {
			border-top: solid 1px #cccccc;
		}

	footer.major {
		border-color: #cccccc;
	}

/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	.button {
		position: relative;
		-ms-behavior: url("css/ie/PIE.htc");
	}

		input[type="submit"].alt,
		input[type="reset"].alt,
		input[type="button"].alt,
		.button.alt {
			border: solid 1px #cccccc;
		}

/* Form */

	input[type="text"],
	input[type="password"],
	input[type="email"],
	select,
	textarea {
		position: relative;
		border: solid 1px #cccccc;
		-ms-behavior: url("css/ie/PIE.htc");
	}

/* Image */

	.image {
		border: 0;
		display: inline-block;
		position: relative;
	}

		.image:after {
			display: none;
		}

/* Box */

	.box {
		border: solid 1px #cccccc;
	}

/* Header */

	#header {
		background-image: url("../../images/header.jpg") !important;
		background-size: cover !important;
		background-position: scroll !important;
		-ms-behavior: url("css/ie/backgroundsize.min.htc");
		padding: 8em 0 !important;
		color: white;
	}

		#header a {
			color: inherit;
		}

		#header:before {
			content: '';
			background-image: url("../images/overlay.png");
			position: absolute;
			left: 0;
			top: 0;
			width: 100%;
			height: 100%;
			display: block;
			z-index: 0;
		}

		#header > * {
			position: relative;
			z-index: 1;
		}

		#header .logo {
			-ms-behavior: url("css/ie/PIE.htc");
		}

/* Footer */

	#footer {
		background-image: none !important;
		margin-top: 0 !important;
		padding: 4em 0 !important;
		color: white;
	}

/* Main */

	#main {
		padding: 4em 0;
	}

================================================
FILE: public/css/skel.css
================================================
/* Resets (http://meyerweb.com/eric/tools/css/reset/ | v2.0 | 20110126 | License: none (public domain)) */

	html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}body{line-height:1;}ol,ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}table{border-collapse:collapse;border-spacing:0;}body{-webkit-text-size-adjust:none}

/* Box Model */

	*, *:before, *:after {
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

/* Container */

	body {
		/* min-width: (containers) */
		min-width: 51em;
	}

	.container {
		margin-left: auto;
		margin-right: auto;
		
		/* width: (containers) */
		width: 51em;
	}

	/* Modifiers */

		/* 125% */
			.container.\31 25\25 {
				width: 100%;
				
				/* max-width: (containers * 1.25) */
				max-width: 63.75em;

				/* min-width: (containers) */
				min-width: 51em;
			}

		/* 75% */
			.container.\37 5\25 {
				
				/* width: (containers * 0.75) */
				width: 38.25em;

			}

		/* 50% */
			.container.\35 0\25 {
				
				/* width: (containers * 0.50) */
				width: 25.5em;

			}

		/* 25% */
			.container.\32 5\25 {
				
				/* width: (containers * 0.25) */
				width: 12.75em;

			}

/* Grid */

	.row {
		border-bottom: solid 1px transparent;
	}
	
	.row > * {
		float: left;
	}
	
	.row:after, .row:before {
		content: '';
		display: block;
		clear: both;
		height: 0;
	}
	
	.row.uniform > * > :first-child {
		margin-top: 0;
	}
	
	.row.uniform > * > :last-child {
		margin-bottom: 0;
	}

	/* Gutters */

		/* Normal */
		
			.row > * {
				/* padding: (gutters.horizontal) 0 0 (gutters.vertical) */
				padding: 30px 0 0 30px;
			}

			.row {
				/* margin: -(gutters.horizontal) 0 0 -(gutters.vertical) */
				margin: -30px 0 0 -30px;
			}
			
			.row.uniform > * {
				/* padding: (gutters.vertical) 0 0 (gutters.vertical) */
				padding: 30px 0 0 30px;
			}

			.row.uniform {
				/* margin: -(gutters.vertical) 0 0 -(gutters.vertical) */
				margin: -30px 0 0 -30px;
			}
			
		/* 200% */
		
			.row.\32 00\25 > * {
				/* padding: (gutters.horizontal) 0 0 (gutters.vertical) */
				padding: 60px 0 0 60px;
			}

			.row.\32 00\25 {
				/* margin: -(gutters.horizontal) 0 0 -(gutters.vertical) */
				margin: -60px 0 0 -60px;
			}

			.row.uniform.\32 00\25 > * {
				/* padding: (gutters.vertical) 0 0 (gutters.vertical) */
				padding: 60px 0 0 60px;
			}

			.row.uniform.\32 00\25 {
				/* margin: -(gutters.vertical) 0 0 -(gutters.vertical) */
				margin: -60px 0 0 -60px;
			}

		/* 150% */
		
			.row.\31 50\25 > * {
				/* padding: (gutters.horizontal) 0 0 (gutters.vertical) */
				padding: 45px 0 0 45px;
			}

			.row.\31 50\25 {
				/* margin: -(gutters.horizontal) 0 0 -(gutters.vertical) */
				margin: -45px 0 0 -45px;
			}

			.row.uniform.\31 50\25 > * {
				/* padding: (gutters.vertical) 0 0 (gutters.vertical) */
				padding: 45px 0 0 45px;
			}

			.row.uniform.\31 50\25 {
				/* margin: -(gutters.vertical) 0 0 -(gutters.vertical) */
				margin: -45px 0 0 -45px;
			}

		/* 50% */
		
			.row.\35 0\25 > * {
				/* padding: (gutters.horizontal) 0 0 (gutters.vertical) */
				padding: 15px 0 0 15px;
			}

			.row.\35 0\25 {
				/* margin: -(gutters.horizontal) 0 0 -(gutters.vertical) */
				margin: -15px 0 0 -15px;
			}

			.row.uniform.\35 0\25 > * {
				/* padding: (gutters.vertical) 0 0 (gutters.vertical) */
				padding: 15px 0 0 15px;
			}

			.row.uniform.\35 0\25 {
				/* margin: -(gutters.vertical) 0 0 -(gutters.vertical) */
				margin: -15px 0 0 -15px;
			}

		/* 25% */
		
			.row.\32 5\25 > * {
				/* padding: (gutters.horizontal) 0 0 (gutters.vertical) */
				padding: 7.5px 0 0 7.5px;
			}

			.row.\32 5\25 {
				/* margin: -(gutters.horizontal) 0 0 -(gutters.vertical) */
				margin: -7.5px 0 0 -7.5px;
			}

			.row.uniform.\32 5\25 > * {
				/* padding: (gutters.vertical) 0 0 (gutters.vertical) */
				padding: 7.5px 0 0 7.5px;
			}

			.row.uniform.\32 5\25 {
				/* margin: -(gutters.vertical) 0 0 -(gutters.vertical) */
				margin: -7.5px 0 0 -7.5px;
			}

		/* 0% */
		
			.row.\30 \25 > * {
				/* padding: (gutters.horizontal) 0 0 (gutters.vertical) */
				padding: 0;
			}

			.row.\30 \25 {
				/* margin: -(gutters.horizontal) 0 0 -(gutters.vertical) */
				margin: 0;
			}

	/* Cells */

		.\31 2u, .\31 2u\24, .\31 2u\28 1\29, .\31 2u\24\28 1\29 { width: 100%; clear: none; }
		.\31 1u, .\31 1u\24, .\31 1u\28 1\29, .\31 1u\24\28 1\29 { width: 91.6666666667%; clear: none; }
		.\31 0u, .\31 0u\24, .\31 0u\28 1\29, .\31 0u\24\28 1\29 { width: 83.3333333333%; clear: none; }
		.\39 u, .\39 u\24, .\39 u\28 1\29, .\39 u\24\28 1\29 { width: 75%; clear: none; }
		.\38 u, .\38 u\24, .\38 u\28 1\29, .\38 u\24\28 1\29 { width: 66.6666666667%; clear: none; }
		.\37 u, .\37 u\24, .\37 u\28 1\29, .\37 u\24\28 1\29 { width: 58.3333333333%; clear: none; }
		.\36 u, .\36 u\24, .\36 u\28 1\29, .\36 u\24\28 1\29 { width: 50%; clear: none; }
		.\35 u, .\35 u\24, .\35 u\28 1\29, .\35 u\24\28 1\29 { width: 41.6666666667%; clear: none; }
		.\34 u, .\34 u\24, .\34 u\28 1\29, .\34 u\24\28 1\29 { width: 33.3333333333%; clear: none; }
		.\33 u, .\33 u\24, .\33 u\28 1\29, .\33 u\24\28 1\29 { width: 25%; clear: none; }
		.\32 u, .\32 u\24, .\32 u\28 1\29, .\32 u\24\28 1\29 { width: 16.6666666667%; clear: none; }
		.\31 u, .\31 u\24, .\31 u\28 1\29, .\31 u\24\28 1\29 { width: 8.3333333333%; clear: none; }

		.\31 2u\24 + *, .\31 2u\24\28 1\29 + *,
		.\31 1u\24 + *, .\31 1u\24\28 1\29 + *,
		.\31 0u\24 + *, .\31 0u\24\28 1\29 + *,
		.\39 u\24 + *, .\39 u\24\28 1\29 + *,
		.\38 u\24 + *, .\38 u\24\28 1\29 + *,
		.\37 u\24 + *, .\37 u\24\28 1\29 + *,
		.\36 u\24 + *, .\36 u\24\28 1\29 + *,
		.\35 u\24 + *, .\35 u\24\28 1\29 + *,
		.\34 u\24 + *, .\34 u\24\28 1\29 + *,
		.\33 u\24 + *, .\33 u\24\28 1\29 + *,
		.\32 u\24 + *, .\32 u\24\28 1\29 + *,
		.\31 u\24  + *,  .\31 u\24\28 1\29 + * {
			clear: left;
		}
			
		.\-11u { margin-left: 91.6666666667% }
		.\-10u { margin-left: 83.3333333333% }
		.\-9u { margin-left: 75% }
		.\-8u { margin-left: 66.6666666667% }
		.\-7u { margin-left: 58.3333333333% }
		.\-6u { margin-left: 50% }
		.\-5u { margin-left: 41.6666666667% }
		.\-4u { margin-left: 33.3333333333% }
		.\-3u { margin-left: 25% }
		.\-2u { margin-left: 16.6666666667% }
		.\-1u { margin-left: 8.3333333333% }

================================================
FILE: public/css/style-mobile.css
================================================
/*
	Directive by HTML5 UP
	html5up.net | @n33co
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

/* Basic */

	h2 {
		font-size: 1em;
	}

	h3 {
		font-size: 1em;
	}

/* Section/Article */

	header p {
		font-size: 0.8em;
	}

	header.major {
		margin-bottom: 2em;
	}

		header.major br {
			display: none;
		}

		header.major p {
			font-size: 0.8em;
		}

	footer.major {
		margin-top: 2em;
	}

		footer.major br {
			display: none;
		}

/* List */

	ul.actions li {
		padding: 0 0 0 15px;
	}

	ul.actions.vertical li {
		padding: 15px 0 0 0;
	}

/* Box */

	.box {
		padding: 2em;
		margin-bottom: 2em;
	}

/* Feature */

	.feature {
		background: white;
		display: block;
		height: auto;
		margin-bottom: 2em;
	}

		.feature:last-child {
			margin-bottom: 0;
		}

		.feature:before, .feature:after {
			display: none;
		}

		.feature .image {
			float: none;
			height: 15em;
			width: 100%;
		}

		.feature .content {
			border: solid 1px rgba(224, 224, 224, 0.75);
			padding: 2em !important;
			text-align: center;
			width: 100%;
		}

/* Header */

	#header {
		background-image: url("images/top-1280.svg"), url("images/overlay.png"), url("../images/header.jpg");
		background-size: 1280px 184px,						auto,							cover;
		padding: 3em 0 7em 0;
	}

		#header:before {
			height: calc(100% - 20px);
		}

		#header:after {
			height: 20px;
		}

		#header .logo {
			font-size: 1.5em;
		}

		#header h1 {
			font-size: 1.25em;
		}

		#header p {
			font-size: 1em;
		}

/* Footer */

	#footer {
		background-image: url("images/bottom-1280.svg");
		background-size: 1280px 184px;
		margin-top: -75px;
		padding: calc(184px + 2em) 0 2em 0;
	}

		#footer:before {
			height: calc(184px + 2em);
		}

		#footer form {
			padding-bottom: 0;
		}

/* Main */

	#main {
		padding: 2em 0 2em 0;
	}

================================================
FILE: public/css/style-mobilep.css
================================================
/*
	Directive by HTML5 UP
	html5up.net | @n33co
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

/* Section/Article */

	header.major {
		padding-left: 1em;
		padding-right: 1em;
	}

	footer.major {
		padding-left: 1em;
		padding-right: 1em;
	}

/* List */

	ul.icons li {
		padding: 0.2em;
	}

	ul.actions li {
		display: block;
		padding: 15px 0 0 0;
	}

		ul.actions li:first-child {
			padding: 0;
		}

/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	.button {
		display: block;
		width: 100%;
	}

/* Box */

	.box {
		padding: 2em 1em;
	}

/* Feature */

	.feature {
		margin-bottom: 1em;
	}

		.feature .content {
			padding: 2em 1em !important;
		}

/* Main */

	#main {
		padding-left: 1em;
		padding-right: 1em;
	}

/* Footer */

	#footer {
		margin-top: -100px;
		padding-left: 1em;
		padding-right: 1em;
	}

		#footer .copyright li {
			border: 0;
			display: block;
			margin: 0;
			padding: 0.75em 0 0 0;
		}

/* Header */

	#header {
		padding-left: 2em;
		padding-right: 2em;
	}

		#header br {
			display: none;
		}

================================================
FILE: public/css/style-narrow.css
================================================
/*
	Directive by HTML5 UP
	html5up.net | @n33co
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

/* Basic */

	body, input, select, textarea {
		font-size: 12pt;
	}

================================================
FILE: public/css/style-narrower.css
================================================
/*
	Directive by HTML5 UP
	html5up.net | @n33co
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

/* Section/Article */

	header.major {
		padding-left: 2em;
		padding-right: 2em;
	}

	footer.major {
		padding-left: 2em;
		padding-right: 2em;
	}

================================================
FILE: public/css/style-normal.css
================================================
/*
	Directive by HTML5 UP
	html5up.net | @n33co
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

/* Basic */

	body, input, select, textarea {
		font-size: 13pt;
	}

	h2 {
		font-size: 1.35em;
	}

	h3 {
		font-size: 1.15em;
	}

/* Section/Article */

	header.major {
		margin-bottom: 4em;
		padding: 3em 0;
	}

		header.major p {
			font-size: 1.15em;
		}

	footer.major {
		margin-top: 4em;
		padding: 3em 0;
	}

/* Box */

	.box {
		padding: 2.5em;
		margin-bottom: 4em;
	}

/* Feature */

	.feature {
		height: 18em;
	}

		.feature .content {
			padding: 2.5em;
		}

/* Header */

	#header {
		background-attachment: scroll,							scroll,							scroll;
		background-image: url("images/top-1600.svg"), url("images/overlay.png"), url("../images/header.jpg");
		background-size: 1600px 230px,					auto,							cover;
		padding: 6em 0 12em 0;
	}

		#header:before {
			height: calc(100% - 25px);
		}

		#header:after {
			height: 25px;
		}

		#header h1 {
			font-size: 2em;
		}

		#header p {
			font-size: 1.15em;
		}

/* Footer */

	#footer {
		background-image: url("images/bottom-1600.svg");
		background-size: 1600px 230px;
		margin-top: -100px;
		padding: calc(230px + 4em) 0 6em 0;
	}

		#footer:before {
			height: calc(230px + 4em);
		}

/* Main */

	#main {
		padding: 4em 0 3em 0;
	}

================================================
FILE: public/css/style-wide.css
================================================
/*
	Directive by HTML5 UP
	html5up.net | @n33co
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

/* Basic */

	body, input, select, textarea {
		font-size: 14pt;
	}

	h2 {
		font-size: 1.5em;
	}

	h3 {
		font-size: 1.25em;
	}

/* Section/Article */

	header.major p {
		font-size: 1.25em;
	}

/* Header */

	#header {
		padding: 8em 0 16em 0;
	}

		#header h1 {
			font-size: 2.25em;
		}

		#header p {
			font-size: 1.25em;
			line-height: 1.65em;
		}

================================================
FILE: public/css/style.css
================================================
@import url("font-awesome.min.css");
@import url("http://fonts.googleapis.com/css?family=Source+Sans+Pro:300,300italic,400,400italic,600,600italic,700,700italic");

/*
	Directive by HTML5 UP
	html5up.net | @n33co
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

/* Basic */

	html, body {
		height: 100%;
	}

	body {
		background: white;
	}

		body.is-loading * {
			-moz-transition: none !important;
			-webkit-transition: none !important;
			-o-transition: none !important;
			-ms-transition: none !important;
			transition: none !important;
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-o-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
		}

	body, input, select, textarea {
		color: #6e6e6e;
		font-family: 'Source Sans Pro', sans-serif;
		font-size: 16pt;
		font-weight: 400;
		line-height: 1.75em;
	}

	a {
		-moz-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		-webkit-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		-o-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		-ms-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		border-bottom: dotted 1px;
		color: #4eb980;
		text-decoration: none;
	}

		a:hover {
			border-bottom-color: transparent;
		}

	strong, b {
		font-weight: 600;
		color: #5b5b5b;
	}

	em, i {
		font-style: italic;
	}

	p, ul, ol, dl, table, blockquote, form {
		margin: 0 0 2em 0;
	}

	h1, h2, h3, h4, h5, h6 {
		color: #5b5b5b;
		font-weight: 700;
		letter-spacing: 0.125em;
		line-height: 1.75em;
		margin-bottom: 1em;
		text-transform: uppercase;
		text-align: center;
	}

		h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
			color: inherit;
			text-decoration: none;
		}

	h2 {
		font-size: 1.75em;
	}

	h3 {
		font-size: 1.5em;
	}

	sub {
		font-size: 0.8em;
		position: relative;
		top: 0.5em;
	}

	sup {
		font-size: 0.8em;
		position: relative;
		top: -0.5em;
	}

	hr {
		border: 0;
		border-top: solid 1px rgba(224, 224, 224, 0.75);
		margin-bottom: 1.5em;
	}

	blockquote {
		border-left: solid 0.5em rgba(224, 224, 224, 0.75);
		font-style: italic;
		padding: 1em 0 1em 2em;
	}

/* Section/Article */

	section.special, article.special {
		text-align: center;
	}

	header {
		text-align: center;
	}

		header p {
			position: relative;
			top: -1em;
			color: #888888;
			text-transform: uppercase;
			letter-spacing: 0.075em;
		}

		header.major {
			border-bottom-width: 1px;
			border-color: rgba(224, 224, 224, 0.75);
			border-style: solid;
			border-top-width: 1px;
			margin-bottom: 6em;
			padding: 4em 0;
			position: relative;
		}

			header.major:before, header.major:after {
				background: rgba(224, 224, 224, 0.75);
				content: '';
				display: block;
				height: 1px;
				left: 0;
				position: absolute;
				width: 100%;
			}

			header.major:before {
				top: 10px;
			}

			header.major:after {
				bottom: 10px;
			}

			header.major h2 {
				margin: 0;
			}

			header.major p {
				top: 0;
				margin: 1.5em 0 0 0;
				padding: 1.5em 1.5em 0 1.5em;
				font-size: 1.5em;
				line-height: 1.75em;
				border-top: solid 1px rgba(224, 224, 224, 0.75);
				display: inline-block;
			}

			header.major.last {
				border-bottom: 0;
				margin-bottom: 0;
				padding-bottom: 0;
			}

				header.major.last:after {
					display: none;
				}

				header.major.last h2 {
					margin-bottom: 1em;
				}

	footer {
		text-align: center;
	}

		footer.major {
			border-bottom-width: 1px;
			border-color: rgba(224, 224, 224, 0.75);
			border-style: solid;
			border-top-width: 1px;
			margin-top: 6em;
			padding: 4em 0;
			position: relative;
		}

			footer.major:before, footer.major:after {
				background: rgba(224, 224, 224, 0.75);
				content: '';
				display: block;
				height: 1px;
				left: 0;
				position: absolute;
				width: 100%;
			}

			footer.major:before {
				top: 10px;
			}

			footer.major:after {
				bottom: 10px;
			}

/* Form */

	label {
		display: block;
		color: #5b5b5b;
		font-size: 0.8em;
		font-weight: 700;
		letter-spacing: 0.125em;
		line-height: 1.75em;
		text-transform: uppercase;
		margin: 0 0 0.5em 0;
	}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	select,
	textarea {
		-moz-appearance: none;
		-webkit-appearance: none;
		-o-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: background-color 0.2s ease-in-out;
		-webkit-transition: background-color 0.2s ease-in-out;
		-o-transition: background-color 0.2s ease-in-out;
		-ms-transition: background-color 0.2s ease-in-out;
		transition: background-color 0.2s ease-in-out;
		background: none;
		border-radius: 4px;
		border: 0;
		border: solid 1px rgba(224, 224, 224, 0.75);
		color: inherit;
		display: block;
		outline: 0;
		padding: 0.75em;
		text-decoration: none;
		width: 100%;
		opacity: 1;
	}

		input[type="text"]:focus,
		input[type="password"]:focus,
		input[type="email"]:focus,
		select:focus,
		textarea:focus {
			background: rgba(224, 224, 224, 0.15);
			border-color: #4eb980;
		}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	select {
		line-height: 1em;
	}

	textarea {
		padding: 0.5em 0.75em;
	}

	::-webkit-input-placeholder {
		color: inherit;
		opacity: 0.5;
		position: relative;
		top: 3px;
	}

	:-moz-placeholder {
		color: inherit;
		opacity: 0.5;
	}

	::-moz-placeholder {
		color: inherit;
		opacity: 0.5;
	}

	:-ms-input-placeholder {
		color: inherit;
		opacity: 0.5;
	}

	.formerize-placeholder {
		color: rgba(110, 110, 110, 0.5) !important;
	}

	.form-error{
		color:red;
	}

/* Image */

	.image {
		border: 0;
		display: inline-block;
		position: relative;
	}

		.image:after {
			-moz-transition: opacity 0.25s ease-in-out;
			-webkit-transition: opacity 0.25s ease-in-out;
			-o-transition: opacity 0.25s ease-in-out;
			-ms-transition: opacity 0.25s ease-in-out;
			transition: opacity 0.25s ease-in-out;
			background-image: url("images/overlay.png");
			content: '';
			display: block;
			height: 100%;
			left: 0;
			opacity: 0.2;
			position: absolute;
			top: 0;
			width: 100%;
		}

		.image img {
			display: block;
		}

		.image.fit {
			display: block;
		}

			.image.fit img {
				display: block;
				width: 100%;
			}

		.image.feature {
			display: block;
			margin: 0 0 2em 0;
		}

			.image.feature img {
				display: block;
				width: 100%;
			}

		.image.icon {
			-moz-perspective: 500px;
			-webkit-perspective: 500px;
			-o-perspective: 500px;
			-ms-perspective: 500px;
			perspective: 500px;
		}

			.image.icon:before {
				-moz-transition: transform 0.1s ease-in-out, font-size 0.1s ease-in-out;
				-webkit-transition: transform 0.1s ease-in-out, font-size 0.1s ease-in-out;
				-o-transition: transform 0.1s ease-in-out, font-size 0.1s ease-in-out;
				-ms-transition: transform 0.1s ease-in-out, font-size 0.1s ease-in-out;
				transition: transform 0.1s ease-in-out, font-size 0.1s ease-in-out;
				color: #fff;
				font-size: 6em;
				height: 1em;
				left: 50%;
				line-height: 1em;
				margin: -0.5em 0 0 -0.5em;
				position: absolute;
				text-align: center;
				top: 50%;
				width: 1em;
				z-index: 1;
			}

			.image.icon:hover:before {
				-moz-transform: translateZ(1em);
				-webkit-transform: translateZ(1em);
				-o-transform: translateZ(1em);
				-ms-transform: translateZ(1em);
				transform: translateZ(1em);
			}

			.image.icon:hover:after {
				opacity: 1;
			}

	span.image.icon {
		cursor: default;
	}

/* Icon */

	.icon {
		text-decoration: none;
		border-bottom: none;
		position: relative;
	}

		.icon:before {
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			font-family: FontAwesome;
			font-style: normal;
			font-weight: normal;
			text-transform: none !important;
		}

		.icon > .label {
			display: none;
		}

/* List */

	ol.default {
		list-style: decimal;
		padding-left: 1.25em;
	}

		ol.default li {
			padding-left: 0.25em;
		}

	ul.default {
		list-style: disc;
		padding-left: 1em;
	}

		ul.default li {
			padding-left: 0.5em;
		}

	ul.icons {
		cursor: default;
	}

		ul.icons li {
			display: inline-block;
			font-size: 1.25em;
			line-height: 1em;
			padding-left: 0.5em;
		}

			ul.icons li:first-child {
				padding-left: 0;
			}

			ul.icons li a, ul.icons li span {
				-moz-transition: background-color 0.2s ease-in-out;
				-webkit-transition: background-color 0.2s ease-in-out;
				-o-transition: background-color 0.2s ease-in-out;
				-ms-transition: background-color 0.2s ease-in-out;
				transition: background-color 0.2s ease-in-out;
				border-radius: 100%;
				border: solid 1px rgba(224, 224, 224, 0.75);
				display: inline-block;
				height: 2em;
				line-height: 2em;
				text-align: center;
				width: 2em;
			}

				ul.icons li a:hover, ul.icons li span:hover {
					background: rgba(224, 224, 224, 0.15);
				}

	ul.actions {
		cursor: default;
		text-align: center;
	}

		ul.actions:last-child {
			margin-bottom: 0;
		}

		ul.actions li {
			display: inline-block;
			padding: 0 0 0 1.5em;
		}

			ul.actions li:first-child {
				padding: 0;
			}

		ul.actions.vertical li {
			display: block;
			padding: 1.5em 0 0 0;
		}

			ul.actions.vertical li:first-child {
				padding: 0;
			}

/* Table */

	.table-wrapper {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	table {
		width: 100%;
	}

		table.default {
			width: 100%;
		}

			table.default tbody tr {
				border-bottom: solid 1px rgba(224, 224, 224, 0.75);
			}

				table.default tbody tr:nth-child(2n - 1) {
					background: rgba(224, 224, 224, 0.15);
				}

			table.default td {
				padding: 0.5em 1em 0.5em 1em;
			}

			table.default th {
				color: #5b5b5b;
				font-size: 0.8em;
				font-weight: 700;
				letter-spacing: 0.125em;
				line-height: 1.75em;
				padding: 0.5em 1em 0.5em 1em;
				text-align: left;
				text-transform: uppercase;
			}

			table.default thead {
				border-bottom: solid 1px rgba(224, 224, 224, 0.75);
			}

/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	.button {
		-moz-appearance: none;
		-webkit-appearance: none;
		-o-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
		-webkit-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
		-o-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
		-ms-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
		transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
		background: #544d55;
		border-radius: 4px;
		border: 0;
		color: white;
		cursor: pointer;
		display: inline-block;
		font-size: 0.9em;
		font-weight: 700;
		letter-spacing: 0.125em;
		line-height: 3.25em;
		min-width: 15em;
		padding: 0 1.5em;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
	}

		input[type="submit"]:hover,
		input[type="reset"]:hover,
		input[type="button"]:hover,
		.button:hover {
			background: #6e6570;
		}

		input[type="submit"]:active,
		input[type="reset"]:active,
		input[type="button"]:active,
		.button:active {
			background: #474148;
		}

		input[type="submit"].alt,
		input[type="reset"].alt,
		input[type="button"].alt,
		.button.alt {
			background: none;
			box-shadow: inset 0 0 0 1px rgba(224, 224, 224, 0.75);
			color: #544d55;
		}

			input[type="submit"].alt:hover,
			input[type="reset"].alt:hover,
			input[type="button"].alt:hover,
			.button.alt:hover {
				background: rgba(224, 224, 224, 0.15);
			}

			input[type="submit"].alt:active,
			input[type="reset"].alt:active,
			input[type="button"].alt:active,
			.button.alt:active {
				background: rgba(224, 224, 224, 0.35);
			}

		input[type="submit"].fit,
		input[type="reset"].fit,
		input[type="button"].fit,
		.button.fit {
			width: 100%;
		}

		input[type="submit"].small,
		input[type="reset"].small,
		input[type="button"].small,
		.button.small {
			font-size: 0.8em;
		}

/* Box */

	.box {
		background: white;
		border: solid 1px rgba(224, 224, 224, 0.75);
		margin-bottom: 6em;
		padding: 3.5em;
	}

		.box.alt {
			background: none;
			border: none;
			padding: 0;
		}

/* Feature */

	.feature {
		position: relative;
		height: 20em;
	}

		.feature:after {
			clear: both;
			content: '';
			display: block;
		}

		.feature h3, .feature h4, .feature h5, .feature h6 {
			text-align: inherit;
		}

		.feature .image {
			display: inline-block;
			height: 100%;
			overflow: hidden;
			position: relative;
			width: 50%;
		}

			.feature .image img {
				display: block;
				min-height: 100%;
				min-width: 100%;
				position: absolute;
			}

		.feature:before {
			background: blue;
			content: '';
			display: inline-block;
			height: 100%;
			vertical-align: middle;
		}

		.feature .content {
			display: inline-block;
			padding: 3.5em;
			vertical-align: middle;
			width: 48%;
		}

			.feature .content h3 {
				margin-bottom: 0.5em;
			}

			.feature .content :last-child {
				margin: 0;
			}

		.feature.left {
			text-align: left;
		}

			.feature.left .image {
				float: left;
			}

				.feature.left .image img {
					right: 0;
					top: 0;
				}

			.feature.left .content {
				padding-right: 0;
			}

		.feature.right {
			text-align: right;
		}

			.feature.right .image {
				float: right;
			}

				.feature.right .image img {
					left: 0;
					top: 0;
				}

			.feature.right .content {
				padding-left: 0;
			}

		.feature.long .content {
			padding-top: 0;
		}

/* Header */

	#header {
		background-attachment: scroll,							scroll,					fixed;
		background-image: url("images/top-3200.svg"), url("images/overlay.png"), url("../images/header.jpg");
		background-position: bottom center,					top left,				center center;
		background-repeat: repeat-x,						repeat,					no-repeat;
		background-size: 3200px 460px,					auto,					cover;
		color: rgba(255, 255, 255, 0.8);
		padding: 10em 0 20em 0;
		position: relative;
		text-align: center;
	}

		#header:before, #header:after {
			background: rgba(224, 224, 224, 0.75);
			content: '';
			left: 50%;
			position: absolute;
			width: 1px;
			z-index: 0;
		}

		#header:before {
			height: calc(100% - 50px);
			opacity: 0.15;
			top: 0;
		}

		#header:after {
			bottom: 0;
			height: 50px;
		}

		#header a {
			border-bottom-color: rgba(255, 255, 255, 0.35);
			color: rgba(255, 255, 255, 0.8);
		}

			#header a:hover {
				border-bottom-color: transparent;
				color: #4eb980;
			}

		#header strong, #header b {
			color: white;
		}

		#header h1, #header h2, #header h3, #header h4, #header h5, #header h6 {
			color: white;
		}

		#header input[type="submit"],
		#header input[type="reset"],
		#header input[type="button"],
		#header .button {
			background: white;
			color: #544d55;
		}

		#header .logo {
			background: #4eb980;
			border-radius: 100%;
			color: white;
			cursor: default;
			display: inline-block;
			font-size: 2.25em;
			height: 2.35em;
			line-height: 2.35em;
			margin: 0 0 0.75em 0;
			text-align: center;
			width: 2.35em;
		}

			#header .logo.fa-paper-plane-o:before {
				left: -0.075em;
				position: relative;
			}

		#header h1 {
			font-size: 2.5em;
			margin: 0;
		}

		#header p {
			font-size: 1.5em;
			line-height: 1.5em;
			margin: 0.25em 0 0 0;
		}

/* Footer */

	#footer {
		background-attachment: scroll;
		background-color: #4eb980;
		background-image: url("images/bottom-3200.svg");
		background-position: top center;
		background-repeat: repeat-x;
		background-size: 3200px 460px;
		color: rgba(255, 255, 255, 0.8);
		/*
		Since the SVG background occupies a lot of vertical space, we'll
		add additional top padding (to move our content out of its way)
		and a negative margin (to move everything up a bit).
		*/
		margin-top: -260px;
		padding: calc(460px + 6em) 0 10em 0;
		position: relative;
		text-align: center;
	}

		#footer:before {
			background: rgba(224, 224, 224, 0.75);
			content: '';
			height: calc(460px + 6em);
			left: 50%;
			position: absolute;
			top: 0;
			width: 1px;
			z-index: 0;
		}

		#footer a {
			color: white;
		}

		#footer strong, #footer b {
			color: white;
		}

		#footer h1, #footer h2, #footer h3, #footer h4, #footer h5, #footer h6 {
			color: white;
		}

		#footer header p {
			color: rgba(255, 255, 255, 0.5);
		}

		#footer input[type="submit"],
		#footer input[type="reset"],
		#footer input[type="button"],
		#footer .button {
			background: white;
			box-shadow: inset 0 0 0 1px white;
			color: #4eb980;
		}

			#footer input[type="submit"]:hover,
			#footer input[type="reset"]:hover,
			#footer input[type="button"]:hover,
			#footer .button:hover {
				background: rgba(224, 224, 224, 0.15);
				color: white;
			}

		#footer input[type="text"]:focus,
		#footer input[type="password"]:focus,
		#footer input[type="email"]:focus,
		#footer select:focus,
		#footer textarea:focus {
			border-color: white;
		}

		#footer .formerize-placeholder {
			color: rgba(255, 255, 255, 0.3) !important;
		}

		#footer form {
			margin: 3em 0;
		}

		#footer .copyright {
			color: rgba(255, 255, 255, 0.5);
			font-size: 0.8em;
			line-height: 1em;
			margin: 3em 0 0 0;
		}

			#footer .copyright li {
				border-left: dotted 1px;
				display: inline-block;
				margin-left: 1em;
				padding-left: 1em;
			}

				#footer .copyright li:first-child {
					padding: 0;
					margin: 0;
					border: 0;
				}

				#footer .copyright li a, #footer .copyright li span {
					color: inherit;
				}

					#footer .copyright li a:hover, #footer .copyright li span:hover {
						color: white;
					}

/* Main */

	#main {
		padding: 6em 0 5em 0;
		position: relative;
		z-index: 1;
	}

		#main:before {
			background: rgba(224, 224, 224, 0.75);
			content: '';
			height: 100%;
			left: 50%;
			position: absolute;
			top: 0;
			width: 1px;
			z-index: -1;
		}

		#main header.major,
		#main footer.major {
			background: white;
		}

================================================
FILE: public/js/init.js
================================================
/*
	Directive by HTML5 UP
	html5up.net | @n33co
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

(function($) {

	skel.init({
		reset: 'full',
		breakpoints: {
			global:		{ range: '*', href: 'css/style.css', containers: '51em', grid: { gutters: 30 } },
			wide:		{ range: '-1680', href: 'css/style-wide.css' },
			normal:		{ range: '-1280', href: 'css/style-normal.css', containers: '48em' },
			narrow:		{ range: '-980', href: 'css/style-narrow.css', containers: '95%', grid: { gutters: 30 } },
			narrower:	{ range: '-840', href: 'css/style-narrower.css', containers: '95%!', grid: { zoom: 2, gutters: 20 } },
			mobile:		{ range: '-736', href: 'css/style-mobile.css', containers: '90%!', grid: { gutters: 20 }, viewport: { scalable: false } },
			mobilep:	{ range: '-480', href: 'css/style-mobilep.css', containers: '100%!', grid: { zoom: 3 } }
		}
	});

	$(function() {

		var	$window = $(window),
			$body = $('body');

		// Disable animations/transitions until the page has loaded.
			$body.addClass('is-loading');

			$window.on('load', function() {
				$body.removeClass('is-loading');
			});

		// Forms (IE<10).
			var $form = $('form');
			if ($form.length > 0) {

				$form.find('.form-button-submit')
					.on('click', function() {
						$(this).parents('form').submit();
						return false;
					});

				if (skel.vars.IEVersion < 10) {
					$.fn.n33_formerize=function(){var _fakes=new Array(),_form = $(this);_form.find('input[type=text],textarea').each(function() { var e = $(this); if (e.val() == '' || e.val() == e.attr('placeholder')) { e.addClass('formerize-placeholder'); e.val(e.attr('placeholder')); } }).blur(function() { var e = $(this); if (e.attr('name').match(/_fakeformerizefield$/)) return; if (e.val() == '') { e.addClass('formerize-placeholder'); e.val(e.attr('placeholder')); } }).focus(function() { var e = $(this); if (e.attr('name').match(/_fakeformerizefield$/)) return; if (e.val() == e.attr('placeholder')) { e.removeClass('formerize-placeholder'); e.val(''); } }); _form.find('input[type=password]').each(function() { var e = $(this); var x = $($('<div>').append(e.clone()).remove().html().replace(/type="password"/i, 'type="text"').replace(/type=password/i, 'type=text')); if (e.attr('id') != '') x.attr('id', e.attr('id') + '_fakeformerizefield'); if (e.attr('name') != '') x.attr('name', e.attr('name') + '_fakeformerizefield'); x.addClass('formerize-placeholder').val(x.attr('placeholder')).insertAfter(e); if (e.val() == '') e.hide(); else x.hide(); e.blur(function(event) { event.preventDefault(); var e = $(this); var x = e.parent().find('input[name=' + e.attr('name') + '_fakeformerizefield]'); if (e.val() == '') { e.hide(); x.show(); } }); x.focus(function(event) { event.preventDefault(); var x = $(this); var e = x.parent().find('input[name=' + x.attr('name').replace('_fakeformerizefield', '') + ']'); x.hide(); e.show().focus(); }); x.keypress(function(event) { event.preventDefault(); x.val(''); }); });  _form.submit(function() { $(this).find('input[type=text],input[type=password],textarea').each(function(event) { var e = $(this); if (e.attr('name').match(/_fakeformerizefield$/)) e.attr('name', ''); if (e.val() == e.attr('placeholder')) { e.removeClass('formerize-placeholder'); e.val(''); } }); }).bind("reset", function(event) { event.preventDefault(); $(this).find('select').val($('option:first').val()); $(this).find('input,textarea').each(function() { var e = $(this); var x; e.removeClass('formerize-placeholder'); switch (this.type) { case 'submit': case 'reset': break; case 'password': e.val(e.attr('defaultValue')); x = e.parent().find('input[name=' + e.attr('name') + '_fakeformerizefield]'); if (e.val() == '') { e.hide(); x.show(); } else { e.show(); x.hide(); } break; case 'checkbox': case 'radio': e.attr('checked', e.attr('defaultValue')); break; case 'text': case 'textarea': e.val(e.attr('defaultValue')); if (e.val() == '') { e.addClass('formerize-placeholder'); e.val(e.attr('placeholder')); } break; default: e.val(e.attr('defaultValue')); break; } }); window.setTimeout(function() { for (x in _fakes) _fakes[x].trigger('formerize_sync'); }, 10); }); return _form; };
					$form.n33_formerize();
				}

			}

		// Validate Form
			$.validate({
					form : '#wppb-form'
			});

	});

})(jQuery);

================================================
FILE: server.js
================================================
/**
 *	WPPB GENERATOR SITE
 *	Author: Enrique Chavez
 *	Author URI: http://enriquechavez.co
 */

var express = require('express');
var app = express();
var port = process.env.PORT || 3000;
var path = require('path');
var ghdownload = require('github-download');
var rimraf = require('rimraf');
var fs = require('fs-extra');
var mime = require('mime');
var replace = require('replace');
var bodyParser = require('body-parser');
var EasyZip = require('easy-zip').EasyZip;
var CronJob = require('cron').CronJob;
var ua = require('universal-analytics');

app.set('port', port);
app.set('view engine', 'ejs');
app.set('views', path.join(__dirname, 'views'));

app.use(express.static(__dirname + '/public'));
app.use(bodyParser.urlencoded({ extended: true }));

app
  .route(
    '/.well-known/acme-challenge/miU-q9A8ox1btoayRB8tM6wcWPisl42aR4wnixiK2UU'
  )
  .get(function(req, res) {
    res.send(
      'miU-q9A8ox1btoayRB8tM6wcWPisl42aR4wnixiK2UU.9s9UoMhX5iRzhJpZG6oAd-7PRFIBTPxbwd7nVTPfGcM'
    );
  });

app
  .route('/')
  //GET REQUEST DRAW THE HOME PAGE
  .get(function(req, res) {
    res.send('Please visit <a href="https://wppb.me">https://wppb.me</a>');
    //res.redirect('https://wppb.me');
  }) // END GET ROUTE

  .post(function(req, res) {
    var origin = process.cwd() + '/source/';
    var pluginSlug = '';
    var pluginName = '';
    var pluginURI = '';
    var pluginAuthor = '';
    var pluginAuthorURI = '';
    var pluginDescription = '';
    var pluginNamePackage = '';
    var pluginNameInstance = '';
    var pluginAuthorEmail = '';
    var pluginAuthorFull = '';
    var pluginNameVersion = '';
    var destination = '';
    var data = req.body;
    var visitor = ua('UA-56742268-1');

    //Track Event
    visitor.event('build', 'click', 'download', 1).send();
    // ALL FIELDS REQUIRED IF EMPTY SET DEFAULT VALUES
    pluginSlug = String(data.slug).length
      ? String(data.slug).toLowerCase()
      : 'amazing-plugin';
    pluginName = String(data.name).length ? data.name : 'Amazing Plugin';
    pluginURI = String(data.uri).length
      ? data.uri
      : 'http://example.com/amazing-plugin-uri/';
    pluginAuthor = String(data.author.name).length
      ? data.author.name
      : 'Plugin Author';
    pluginAuthorURI = String(data.author.uri).length
      ? data.author.uri
      : 'http://mydomain.tld';
    pluginAuthorEmail = String(data.author.email).length
      ? data.author.email
      : 'my@email.tld';
    pluginNamePackage = capitalize(pluginSlug);
    pluginNameInstance = pluginSlug.replace(/-/gi, '_');
    pluginNameVersion = (pluginNameInstance + '_VERSION').toUpperCase();
    pluginAuthorFull = pluginAuthor + ' <' + pluginAuthorEmail + '>';

    destination =
      process.cwd() + '/tmp/' + pluginSlug + '-' + new Date().getTime();

    fs.copy(origin, destination, function(err) {
      if (err) {
        console.error(err);

        return;
      }

      //RENAME THE MAIN PLUGIN DIRECTORY
      fs.renameSync(
        destination + '/plugin-name',
        destination + '/' + pluginSlug
      );

      //FIND AND REPLACE FILES NAMES
      walker(destination + '/' + pluginSlug, function(err, files) {
        if (err) {
          console.error(err);

          return;
        }

        files.forEach(function(file) {
          var newName;
          var re = /plugin-name/gi;
          newName = file.replace(re, pluginSlug);
          fs.renameSync(file, newName);
        });

        // Plugin URI
        replace({
          regex: 'http://example.com/plugin-name-uri/',
          replacement: pluginURI,
          paths: [destination + '/' + pluginSlug + '/' + pluginSlug + '.php'],
          recursive: false,
          silent: true
        });

        // Plugin Name
        replace({
          regex: 'WordPress Plugin Boilerplate',
          replacement: pluginName,
          paths: [destination + '/' + pluginSlug + '/' + pluginSlug + '.php'],
          recursive: true,
          silent: true
        });

        //Plugin URI
        replace({
          regex: 'http://example.com/plugin-name-uri/',
          replacement: pluginURI,
          paths: [destination + '/' + pluginSlug + '/' + pluginSlug + '.php'],
          recursive: true,
          silent: true
        });

        //find Plugin Author
        replace({
          regex: 'Your Name or Your Company',
          replacement: pluginAuthor,
          paths: [destination + '/' + pluginSlug + '/' + pluginSlug + '.php'],
          recursive: true,
          silent: true
        });

        //find Plugin Author Full
        replace({
          regex: 'Your Name <email@example.com>',
          replacement: pluginAuthorFull,
          paths: [destination + '/' + pluginSlug],
          recursive: true,
          silent: true
        });

        //find Plugin_Name
        replace({
          regex: 'Plugin_Name',
          replacement: pluginNamePackage,
          paths: [destination + '/' + pluginSlug],
          recursive: true,
          silent: true
        });

        //find Plugin slug
        replace({
          regex: 'plugin-name',
          replacement: pluginSlug,
          paths: [destination + '/' + pluginSlug],
          recursive: true,
          silent: true
        });

        //find Author URI
        replace({
          regex: 'http://example.com/?',
          replacement: pluginAuthorURI,
          paths: [destination + '/' + pluginSlug],
          recursive: true,
          silent: true
        });

        //find Plugin Version
        replace({
          regex: 'PLUGIN_NAME_VERSION',
          replacement: pluginNameVersion,
          paths: [destination + '/' + pluginSlug],
          recursive: true,
          silent: true
        });
        //find Author URI
        replace({
          regex: 'plugin_name',
          replacement: pluginNameInstance,
          paths: [destination + '/' + pluginSlug + '/' + pluginSlug + '.php'],
          recursive: true,
          silent: true
        });

        //Replace done ZIP it

        var zip = new EasyZip();

        zip.zipFolder(destination + '/' + pluginSlug, function() {
          zip.writeToResponse(res, pluginSlug);
        });
      });
    });
  }); //END ROUTE

/**
 * CRON JOB TO GET NEW CODE FROM GITHUB EVERY DAY AT 1:30AM
 */
var job = new CronJob(
  '30 1 * * *',
  function() {
    //GET FRESH CODE
    getSourceCode();
  },
  true,
  'America/Los_Angeles'
);

job.start();

/**
 * CRON JOB TO CLEAN THE TMP FOLDER EVERY HOUR
 */

var clean = new CronJob(
  '0 * * * *',
  function() {
    var destination = process.cwd() + '/tmp/';
    rimraf(destination, function() {});
  },
  true,
  'America/Los_Angeles'
);

clean.start();

/**
 * GET PLUGIN CODE FROM GITHUB
 */
var getSourceCode = function() {
  var repo = {
    user: 'DevinVinson',
    repo: 'WordPress-Plugin-Boilerplate',
    ref: 'master'
  };

  var destination = process.cwd() + '/source/';

  //DELETE OLD CODE
  rimraf(destination, function() {});

  //GET THE NEW CODE FORM THE REPO
  ghdownload(repo, destination)
    .on('zip', function(zipUrl) {
      console.log('zip: ' + zipUrl);
    })

    .on('error', function(err) {
      console.error('error ' + err);
    })

    .on('end', function() {
      console.log('Finish Github Download ');
    });
};

/**
 * RECURSIVE WALKER TO GET ALL THE FILES IN DIRECTORY
 */
var walker = function(dir, done) {
  var results = [];

  fs.readdir(dir, function(err, list) {
    if (err) return done(err);

    var i = 0;

    (function next() {
      var file = list[i++];

      if (!file) return done(null, results);

      file = dir + '/' + file;

      fs.stat(file, function(err, stat) {
        if (stat && stat.isDirectory()) {
          walker(file, function(err, res) {
            results = results.concat(res);

            next();
          });
        } else {
          results.push(file);

          next();
        }
      });
    })();
  });
};

var capitalize = function(name) {
  var newName = '';
  name = name.replace(/-/gi, ' ');
  pieces = name.split(' ');
  pieces.forEach(function(word) {
    newName += word.charAt(0).toUpperCase() + word.slice(1) + ' ';
  });

  return newName.trim().replace(/ /gi, '_');
};

// On Init get initial code
getSourceCode();

//Start web app.
app.listen(app.get('port'), function() {
  console.log('Node app is running at localhost:' + app.get('port'));
});


================================================
FILE: views/index.ejs
================================================
<!DOCTYPE HTML>
<!--
	Directive by HTML5 UP
	html5up.net | @n33co
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
	<head>
		<title>WordPress Plugin Boilerplate Generator | Ready to use WordPress Plugin Boilerplate</title>
		<meta http-equiv="content-type" content="text/html; charset=utf-8" />
		<meta name="description" content="WordPress Plugin Boilerplate Generator, Stop wasting time searching and replacing text strings manually" />
		<meta name="keywords" content="WordPress Plugin Boilerplate Generator" />
		<meta name="google-site-verification" content="dQh-6Zo1qY9Zbe2vgxl-JcwIwjJoOmjZRadd9Sit1ZE" />
		<meta property="og:url" content="http://wppb.me" />
		<meta property="og:title" content="WordPress Plugin Boilerplate Generator | Ready to use WordPress Plugin Boilerplate" />
		<meta property="og:image" content="http://wppb.me/images/wppb-share.jpg" />
		<!--[if lte IE 8]><script src="css/ie/html5shiv.js"></script><![endif]-->
		<script src="js/jquery.min.js"></script>
		<script src="//cdnjs.cloudflare.com/ajax/libs/jquery-form-validator/2.1.47/jquery.form-validator.min.js"></script>
		<script src="js/skel.min.js"></script>
		<script src="js/init.js"></script>
		<noscript>
			<link rel="stylesheet" href="css/skel.css" />
			<link rel="stylesheet" href="css/style.css" />
			<link rel="stylesheet" href="css/style-wide.css" />
		</noscript>
		<!--[if lte IE 8]><link rel="stylesheet" href="css/ie/v8.css" /><![endif]-->
	</head>
	<body>

		<!-- Header -->
			<div id="header">
				<span class="logo icon fa-plug"></span>
				<h1>WordPress Plugin Boilerplate<br> Generator</h1>
				<h2>Based on the <a href="http://wppb.io/" title="WordPress Plugin Boilerplate by Tom McFarlin">WPPB by Tom McFarlin</a></h2>
				<h3>Now maintained by <a href="https://twitter.com/devinvinson">Devin Vinson</a></h3>
				<p>Stop wasting time searching and replacing text strings manually.</p>

			</div>

		<!-- Main -->
			<div id="main">

				<header class="major container 75%">
					<h2>You only need to type your plugin
					<br />
					details in the form below
					<br />
					and a zip file will be generated</h2>
				</header>

				<div class="box container">
					<header>
						<h2>Create your amazing wppb based plugin</h2>
					</header>
					<section>
						<form method="POST" action="/" id="wppb-form">
							<div class="row">
								<div class="6u 12u(3)">
									<label for="name">Plugin Name</label>
									<input class="text" type="text" name="name" id="name" value="" placeholder="Your amazing plugin" data-validation="required" />
								</div>
								<div class="6u 12u(3)">
									<label for="slug">Plugin Slug</label>
									<input class="text" type="text" name="slug" id="slug" value="" placeholder="your-amazing-plugin" data-validation="required" />
								</div>
							</div>
							<div class="row">
								<div class="12u">
									<label for="uri">Plugin URI</label>
									<input class="text" type="text" name="uri" id="uri" value="" placeholder="Your Plugin URI" data-validation="required" data-validation="url" />
								</div>
							</div>
							<div class="row">
								<div class="6u 12u(3)">
									<label for="author-name">Author Name</label>
									<input class="text" type="text" name="author[name]" id="author-name" value="" placeholder="Your name" data-validation="required" />
								</div>
								<div class="6u 12u(3)">
									<label for="author-email">Author Email</label>
									<input class="text" type="email" name="author[email]" id="author-email" value="" placeholder="your@email.tld" data-validation="required"  data-validation="email"/>
								</div>
							</div>
							<div class="row">
								<div class="12u">
									<label for="author-uri">Author URI</label>
									<input class="text" type="text" name="author[uri]" id="author-uri" value="" placeholder="http://yoursite.tld" data-validation="required" data-validation="url" />
								</div>
							</div>
							<div class="row">
								<div class="12u">
									<ul class="actions">
										<li><input type="submit" value="Build" /></li>
										<li><input type="reset" value="Reset" class="alt" /></li>
									</ul>
								</div>
							</div>
						</form>
					</section>
				</div>
				<div class="box container">
					<section>
						<div id="impactful-tutorial"></div>
						<script src="//client.stepify.co/embed/tutorize.js"></script>
						<script>tutorizeInit("id", "56eb25864780f81200ee8f7d");</script>
					</section>
				</div>
			</div>

		<!-- Footer -->
			<div id="footer">
				<div class="container 75%">
					<ul class="icons">
						<li><a href="https://twitter.com/tmeister" class="icon fa-twitter" title="Follow me"><span class="label">Twitter</span></a></li>
						<li><a href="https://github.com/Tmeister/wppb-gen-site" class="icon fa-github" title="Fork this site"><span class="label">Github</span></a></li>
						<li><a href="https://www.facebook.com/ecdevelopment" class="icon fa-facebook" title="Find me in Facebook"><span class="label">Facebook</span></a></li>
					</ul>
					<ul class="copyright">
						<li>&copy; <%= new Date().getFullYear()  %> <a href="http://enriquechavez.co">Enrique Chavez</a>.</li><li>Design: <a href="http://html5up.net">HTML5 UP</a></li>
					</ul>
				</div>
			</div>
			<script>
			  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
			  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
			  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
			  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

			  ga('create', 'UA-56742268-1', 'auto');
			  ga('require', 'displayfeatures');
			  ga('send', 'pageview');
			</script>
			<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=tmeister" async="async"></script>

	</body>
</html>
Download .txt
gitextract_nhld34y9/

├── .github/
│   └── FUNDING.yml
├── .gitignore
├── .vscode/
│   └── launch.json
├── Procfile
├── README.md
├── app.json
├── package.json
├── public/
│   ├── css/
│   │   ├── ie/
│   │   │   ├── PIE.htc
│   │   │   ├── backgroundsize.min.htc
│   │   │   ├── html5shiv.js
│   │   │   └── v8.css
│   │   ├── skel.css
│   │   ├── style-mobile.css
│   │   ├── style-mobilep.css
│   │   ├── style-narrow.css
│   │   ├── style-narrower.css
│   │   ├── style-normal.css
│   │   ├── style-wide.css
│   │   └── style.css
│   ├── fonts/
│   │   └── FontAwesome.otf
│   └── js/
│       └── init.js
├── server.js
└── views/
    └── index.ejs
Download .txt
SYMBOL INDEX (5 symbols across 1 files)

FILE: public/css/ie/html5shiv.js
  function m (line 4) | function m(){var a=e.elements;return"string"==typeof a?a.split(" "):a}
  function i (line 4) | function i(a){var b=n[a[o]];b||(b={},h++,a[o]=h,n[h]=b);return b}
  function p (line 4) | function p(a,b,c){b||(b=f);if(g)return b.createElement(a);c||(c=i(b));b=...
  function t (line 4) | function t(a,b){if(!b.cache)b.cache={},b.createElem=a.createElement,b.cr...
  function q (line 5) | function q(a){a||(a=f);var b=i(a);if(e.shivCSS&&!j&&!b.hasCSS){var c,d=a...
Condensed preview — 23 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (110K chars).
[
  {
    "path": ".github/FUNDING.yml",
    "chars": 64,
    "preview": "# These are supported funding model platforms\n\npatreon: tcoding\n"
  },
  {
    "path": ".gitignore",
    "chars": 44,
    "preview": "node_modules\ntmp\nsource\nnpm-debug.log\n.idea\n"
  },
  {
    "path": ".vscode/launch.json",
    "chars": 388,
    "preview": "{\n  // Use IntelliSense to learn about possible attributes.\n  // Hover to view descriptions of existing attributes.\n  //"
  },
  {
    "path": "Procfile",
    "chars": 20,
    "preview": "web: node server.js\n"
  },
  {
    "path": "README.md",
    "chars": 885,
    "preview": "# IMPORTANT - This version is not used and maintained anymore\n\nThe new generator site repo can be found at https://githu"
  },
  {
    "path": "app.json",
    "chars": 241,
    "preview": "{\n  \"name\": \"Wppb Online Generator\",\n  \"description\": \"A wppb online generator\",\n  \"repository\": \"https://github.com/tme"
  },
  {
    "path": "package.json",
    "chars": 675,
    "preview": "{\n  \"name\": \"wppb-gen\",\n  \"version\": \"0.1.0\",\n  \"description\": \"wppb-gen\",\n  \"main\": \"index.js\",\n  \"scripts\": {\n    \"sta"
  },
  {
    "path": "public/css/ie/PIE.htc",
    "chars": 41041,
    "preview": "<!--\nPIE: CSS3 rendering for IE\nVersion 1.0.0\nhttp://css3pie.com\nDual-licensed for use under the Apache License Version "
  },
  {
    "path": "public/css/ie/backgroundsize.min.htc",
    "chars": 3810,
    "preview": "<component lightWeight=\"true\">\r\n<attach event=\"onpropertychange\" onevent=\"handlePropertychange()\" />\r\n<attach event=\"ond"
  },
  {
    "path": "public/css/ie/html5shiv.js",
    "chars": 2380,
    "preview": "/*\n HTML5 Shiv v3.6.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed\n*/\n(function(l,f){function m(){var a=e.elem"
  },
  {
    "path": "public/css/ie/v8.css",
    "chars": 1899,
    "preview": "/*\n\tDirective by HTML5 UP\n\thtml5up.net | @n33co\n\tFree for personal and commercial use under the CCA 3.0 license (html5up"
  },
  {
    "path": "public/css/skel.css",
    "chars": 6866,
    "preview": "/* Resets (http://meyerweb.com/eric/tools/css/reset/ | v2.0 | 20110126 | License: none (public domain)) */\n\n\thtml,body,d"
  },
  {
    "path": "public/css/style-mobile.css",
    "chars": 1830,
    "preview": "/*\n\tDirective by HTML5 UP\n\thtml5up.net | @n33co\n\tFree for personal and commercial use under the CCA 3.0 license (html5up"
  },
  {
    "path": "public/css/style-mobilep.css",
    "chars": 1107,
    "preview": "/*\n\tDirective by HTML5 UP\n\thtml5up.net | @n33co\n\tFree for personal and commercial use under the CCA 3.0 license (html5up"
  },
  {
    "path": "public/css/style-narrow.css",
    "chars": 205,
    "preview": "/*\n\tDirective by HTML5 UP\n\thtml5up.net | @n33co\n\tFree for personal and commercial use under the CCA 3.0 license (html5up"
  },
  {
    "path": "public/css/style-narrower.css",
    "chars": 285,
    "preview": "/*\n\tDirective by HTML5 UP\n\thtml5up.net | @n33co\n\tFree for personal and commercial use under the CCA 3.0 license (html5up"
  },
  {
    "path": "public/css/style-normal.css",
    "chars": 1334,
    "preview": "/*\n\tDirective by HTML5 UP\n\thtml5up.net | @n33co\n\tFree for personal and commercial use under the CCA 3.0 license (html5up"
  },
  {
    "path": "public/css/style-wide.css",
    "chars": 493,
    "preview": "/*\n\tDirective by HTML5 UP\n\thtml5up.net | @n33co\n\tFree for personal and commercial use under the CCA 3.0 license (html5up"
  },
  {
    "path": "public/css/style.css",
    "chars": 18034,
    "preview": "@import url(\"font-awesome.min.css\");\n@import url(\"http://fonts.googleapis.com/css?family=Source+Sans+Pro:300,300italic,4"
  },
  {
    "path": "public/js/init.js",
    "chars": 4376,
    "preview": "/*\r\n\tDirective by HTML5 UP\r\n\thtml5up.net | @n33co\r\n\tFree for personal and commercial use under the CCA 3.0 license (html"
  },
  {
    "path": "server.js",
    "chars": 8384,
    "preview": "/**\n *\tWPPB GENERATOR SITE\n *\tAuthor: Enrique Chavez\n *\tAuthor URI: http://enriquechavez.co\n */\n\nvar express = require('"
  },
  {
    "path": "views/index.ejs",
    "chars": 5948,
    "preview": "<!DOCTYPE HTML>\n<!--\n\tDirective by HTML5 UP\n\thtml5up.net | @n33co\n\tFree for personal and commercial use under the CCA 3."
  }
]

// ... and 1 more files (download for full content)

About this extraction

This page contains the full source code of the Tmeister/wppb-gen-site GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 23 files (98.0 KB), approximately 36.5k tokens, and a symbol index with 5 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!