bookmark_page 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 8088612c86801a4ca6fab88cc1606ab0f323b131
4
+ data.tar.gz: 3d9f672d6638979a5903feffa3ff5b24cf3265ea
5
+ SHA512:
6
+ metadata.gz: 8bb927201075e7913b7d42d4a45be9d64551a804cde540ba570fd12e8e0f096a2904849309bbcc8600f0b8798011cff466a38959fe11221ef8b0c3d3464615e0
7
+ data.tar.gz: 78cb39c96b77dd6073555fe7bddd5c45c06c38c14f9e7ccc27a5451c1b75898c853ccd5123fd762627ccc93a533ad0ef636219eb5db4186070f158c10a415b8c
File without changes
@@ -0,0 +1,64 @@
1
+ require_relative 'bookmark_parse'
2
+ require 'erb'
3
+
4
+ # :nodoc:
5
+ class BookmarkPage
6
+ include BookmarkParse
7
+ attr_accessor :data, :css, :js, :bookmarks
8
+
9
+ def initialize(params = {})
10
+ params.each { |key, value| instance_variable_set("@#{key}", value) }
11
+ if params[:file]
12
+ read params[:file]
13
+ else
14
+ read 'bookmarks.html'
15
+ end
16
+ if params[:assets_dir]
17
+ load_assets params[:assets_dir]
18
+ else
19
+ load_assets '.'
20
+ end
21
+ @bookmarks = []
22
+ @folder_class ||= 'folder'
23
+ @folder_head_class ||= 'folder-head'
24
+ @link_class ||= 'link'
25
+ end
26
+
27
+ def read(filename)
28
+ raise "File not found: #{filename}" unless File.exist?(filename)
29
+ f = File.open(filename, 'rb')
30
+ @data = f.read
31
+ @data_lines = @data.split("\n")
32
+ end
33
+
34
+ def load_assets(assets_dir)
35
+ raise "Dir not found: #{assets_dir}" unless File.directory? assets_dir
36
+ @css = Dir.glob "#{assets_dir}/**/*.css"
37
+ @js = Dir.glob "#{assets_dir}/**/*.js"
38
+ end
39
+
40
+ def parse
41
+ depth = 0
42
+ @data_lines.each do |l|
43
+ if l.include?('<DT>')
44
+ if l.include? 'HREF'
45
+ @bookmarks << [get_link_href(l), get_tag_content(l), get_icon_data(l)]
46
+ else
47
+ @bookmarks << ['HEADING', depth, get_tag_content(l)]
48
+ end
49
+ end
50
+ if l.include?('<DL>')
51
+ @bookmarks << 'UL'
52
+ depth += 1
53
+ end
54
+ if l.include?('</DL>')
55
+ @bookmarks << '/UL'
56
+ depth -= 1
57
+ end
58
+ end
59
+ template_file = File.open('lib/out.html.erb', 'rb')
60
+ template = template_file.read
61
+ renderer = ERB.new(template)
62
+ renderer.result(binding)
63
+ end
64
+ end
@@ -0,0 +1,18 @@
1
+ # :nodoc:
2
+ module BookmarkParse
3
+ def get_tag_content(str)
4
+ str[%r{>([^<]*|(<\w*>[^<]*</\w*>))*<\/}][1..-3]
5
+ end
6
+
7
+ def get_link_href(str)
8
+ str[/href=("|')[^("|')]*/i][6..-1]
9
+ end
10
+
11
+ def get_icon_data(str)
12
+ if str.include? 'ICON='
13
+ str[/icon=("|')[^("|')]*/i][6..-1]
14
+ else
15
+ ''
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,29 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta charset="UTF-8">
6
+ <% @css.each do |c| %>
7
+ <link rel="stylesheet" href="<%= c %>">
8
+ <% end %>
9
+ </head>
10
+ <body>
11
+ <% @bookmarks.each do |b| %>
12
+ <% if b == 'UL' then %>
13
+ <ul class="<%= @folder_class %>">
14
+ <% elsif b == '/UL' then %>
15
+ </ul>
16
+ <% elsif b[0] == "HEADING" %>
17
+ <h<%= b[1] %> class="<%= @folder_head_class %>"><%= b[2] %></h<%= b[1] %>>
18
+ <% else %>
19
+ <li class="<%= @link_class %>">
20
+ <img src="<%= b[2] %>">
21
+ <a href="<%= b[0] %>"><%= b[1] %></a>
22
+ </li>
23
+ <% end %>
24
+ <% end %>
25
+ <% @js.each do |j| %>
26
+ <script type="text/javascript" src="<%= j %>"></script>
27
+ <% end %>
28
+ </body>
29
+ </html
@@ -0,0 +1,162 @@
1
+ require 'bookmark_page'
2
+
3
+ RSpec::Matchers.define :precede do |expected, ary|
4
+ match do |actual|
5
+ ary.index(expected) > ary.index(actual)
6
+ end
7
+ end
8
+
9
+ RSpec.describe 'BookmarkPage' do
10
+ context '#new' do
11
+ before :each do
12
+ @fname = 'testdata/one.html'
13
+ end
14
+
15
+ it 'exists' do
16
+ expect(@b = BookmarkPage.new)
17
+ end
18
+
19
+ it 'loads a file if given' do
20
+ expect(BookmarkPage.new(file: @fname).data[0..4]).to eq 'hello'
21
+ end
22
+
23
+ it 'loads assets if given' do
24
+ @b = BookmarkPage.new(assets_dir: './testdata/assets')
25
+ expect(@b.css.sort).to eq ['./testdata/assets/css/style1.css',
26
+ './testdata/assets/style2.css']
27
+ expect(@b.js.sort).to eq ['./testdata/assets/js/jquery.js',
28
+ './testdata/assets/js/script2.js',
29
+ './testdata/assets/script1.js'
30
+ ]
31
+ end
32
+ end
33
+
34
+ context '#read' do
35
+ before :each do
36
+ @b = BookmarkPage.new
37
+ end
38
+
39
+ it 'exists' do
40
+ expect(@b.read('./testdata/one.html'))
41
+ end
42
+
43
+ it 'updates data' do
44
+ @b.read './testdata/one.html'
45
+ expect(@b.data[0..4]).to eq('hello')
46
+ end
47
+
48
+ it 'raises "File not found: {filename}" if no such file' do
49
+ expect { @b.read('nofile') }.to raise_error('File not found: nofile')
50
+ end
51
+ end
52
+
53
+ context '#load_assets' do
54
+ before :each do
55
+ @b = BookmarkPage.new
56
+ end
57
+
58
+ it 'exists' do
59
+ expect(@b.load_assets('./testdata/assets'))
60
+ end
61
+
62
+ it 'loads assets' do
63
+ @b.load_assets './testdata/assets'
64
+ expect(@b.css.sort).to eq(['./testdata/assets/css/style1.css',
65
+ './testdata/assets/style2.css'])
66
+ expect(@b.js.sort).to eq(['./testdata/assets/js/jquery.js',
67
+ './testdata/assets/js/script2.js',
68
+ './testdata/assets/script1.js',
69
+ ])
70
+ end
71
+
72
+ it 'raises "Dir not found: {assets_dir}" if no such dir' do
73
+ expect { @b.load_assets('nodir') }.to raise_error('Dir not found: nodir')
74
+ end
75
+ end
76
+
77
+ context '#parse' do
78
+ before :all do
79
+ @b = BookmarkPage.new(file: './testdata/bookmarks.html',
80
+ assets_dir: './testdata/assets')
81
+ @subject = @b.parse
82
+ @subject_lines = @subject.split("\n").map(&:strip)
83
+ @link_1 = %(<link rel="stylesheet" href="./testdata/assets/css/style1.css">)
84
+ @link_2 = %(<link rel="stylesheet" href="./testdata/assets/style2.css">)
85
+ @script_1 = %(<script type="text/javascript" src="./testdata/assets/script1.js"></script>)
86
+ @script_2 = %(<script type="text/javascript" src="./testdata/assets/js/script2.js"></script>)
87
+ end
88
+
89
+ it 'exists' do
90
+ expect(@b.parse)
91
+ end
92
+
93
+ it 'writes a doctype tag' do
94
+ expect(@subject_lines[0]).to eq('<!DOCTYPE html>')
95
+ end
96
+
97
+ it 'writes a head element' do
98
+ expect(@subject_lines).to include('<head>')
99
+ expect(@subject_lines).to include('</head>')
100
+ expect('<head>').to precede('</head>', @subject_lines)
101
+ end
102
+
103
+ it 'links stylesheets' do
104
+ expect(@subject_lines).to include(@link_1)
105
+ expect(@subject_lines).to include(@link_2)
106
+ expect('<head>').to precede(@link_1, @subject_lines)
107
+ expect(@link_1).to precede('</head>', @subject_lines)
108
+ end
109
+
110
+ it 'adds scripts' do
111
+ expect(@subject_lines).to include(@script_1)
112
+ expect(@subject_lines).to include(@script_2)
113
+ expect('<body>').to precede(@script_1, @subject_lines)
114
+ expect(@script_1).to precede('</body>', @subject_lines)
115
+ end
116
+
117
+ it 'creates <ul> from folders' do
118
+ expect(@subject_lines.select { |l| l.include?('<ul') }.count).to eq(26)
119
+ end
120
+
121
+ it 'creates links from bookmarks' do
122
+ expect(@subject_lines.select { |l| l.include?('<a') }.count).to eq(134)
123
+ end
124
+
125
+ it 'adds correct href to links' do
126
+ example = @subject_lines.select { |l| l.include?('<a') } [0]
127
+ expect(example).to include(%(href="https://www.airpair.com/ruby-on-rails/posts/a-week-with-a-rails-security-strategy?utm_content=buffer2c657&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer"))
128
+ end
129
+
130
+ it 'adds correct link text' do
131
+ example = @subject_lines.select { |l| l.include?('<a') } [2]
132
+ expect(example).to include(%(>Nitrous<))
133
+ end
134
+
135
+ it 'gives proper headers to folders' do
136
+ expect(@subject_lines).to include('<h1 class="folder-head">Bookmarks Bar</h1>')
137
+ expect(@subject_lines).to include('<h2 class="folder-head">Back End</h2>')
138
+ expect(@subject_lines).to include('<h3 class="folder-head">Typography</h3>')
139
+ end
140
+
141
+ it 'adds user defined classes' do
142
+ @b = BookmarkPage.new(file: './testdata/bookmarks.html',
143
+ assets_dir: './testdata/assets',
144
+ folder_class: '_folder',
145
+ folder_head_class: '_folder-head',
146
+ link_class: '_link')
147
+ @subject = @b.parse
148
+ @subject_lines = @subject.split("\n").map(&:strip)
149
+ link_line = @subject_lines.select { |l| l.include?('<li ') }[0]
150
+ expect(@subject_lines).to include('<ul class="_folder">')
151
+ expect(@subject_lines).to include('<h1 class="_folder-head">Bookmarks Bar</h1>')
152
+ expect(link_line).to include('<li class="_link">')
153
+ end
154
+
155
+ it 'adds default classes' do
156
+ link_line = @subject_lines.select { |l| l.include?('<li ') }[0]
157
+ expect(@subject_lines).to include('<ul class="folder">')
158
+ expect(@subject_lines).to include('<h1 class="folder-head">Bookmarks Bar</h1>')
159
+ expect(link_line).to include('<li class="link">')
160
+ end
161
+ end
162
+ end
@@ -0,0 +1,38 @@
1
+ require 'bookmark_parse'
2
+
3
+ RSpec.describe 'BookmarkParse' do
4
+ let(:d) { Class.new { include BookmarkParse } }
5
+ context '#get_tag_content' do
6
+ subject { d.new }
7
+ it 'gets the content of a flat tag' do
8
+ expect(subject.get_tag_content('<tag>text</tag>')).to eq('text')
9
+ end
10
+
11
+ it 'gets the content of a tag with nesting' do
12
+ expect(subject.get_tag_content('<a>HI<s>BYE!</s></a>')).to eq('HI<s>BYE!</s>')
13
+ end
14
+
15
+ it 'ignores trailing tags' do
16
+ expect(subject.get_tag_content('<a>HI<s>BYE!</s></a><a></a>')).to eq('HI<s>BYE!</s>')
17
+ end
18
+
19
+ it 'it chains predictably' do
20
+ str = subject.get_tag_content('<a>HI<s>BYE!</s></a><a></a>')
21
+ expect(subject.get_tag_content(str)).to eq('BYE!')
22
+ end
23
+ end
24
+
25
+ context 'get_link_href' do
26
+ subject { d.new }
27
+
28
+ it 'exists' do
29
+ expect(subject.get_link_href(%(<a href='address'>af</a>)))
30
+ end
31
+
32
+ it 'returns the address of a link' do
33
+ expect(subject.get_link_href(%(<a href="address">af</a>))).to eq('address')
34
+ expect(subject.get_link_href(%(<a href='address'>af</a>))).to eq('address')
35
+ expect(subject.get_link_href(%(<a hReF='address'>af</a>))).to eq('address')
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,14 @@
1
+ .folder-head {
2
+ font-family: Lato, Arial;
3
+ font-weight: 400;
4
+ }
5
+
6
+ .link {
7
+ font-family: Lato, Arial;
8
+ font-weight: 300;
9
+ }
10
+
11
+ .folder {
12
+ list-style: none;
13
+ }
14
+
@@ -0,0 +1,4 @@
1
+ /*! jQuery v2.2.3 | (c) jQuery Foundation | jquery.org/license */
2
+ !function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=a.document,e=c.slice,f=c.concat,g=c.push,h=c.indexOf,i={},j=i.toString,k=i.hasOwnProperty,l={},m="2.2.3",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return e.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:e.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a){return n.each(this,a)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(e.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor()},push:g,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(n.isPlainObject(d)||(e=n.isArray(d)))?(e?(e=!1,f=c&&n.isArray(c)?c:[]):f=c&&n.isPlainObject(c)?c:{},g[b]=n.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){var b=a&&a.toString();return!n.isArray(a)&&b-parseFloat(b)+1>=0},isPlainObject:function(a){var b;if("object"!==n.type(a)||a.nodeType||n.isWindow(a))return!1;if(a.constructor&&!k.call(a,"constructor")&&!k.call(a.constructor.prototype||{},"isPrototypeOf"))return!1;for(b in a);return void 0===b||k.call(a,b)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?i[j.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=n.trim(a),a&&(1===a.indexOf("use strict")?(b=d.createElement("script"),b.text=a,d.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b){var c,d=0;if(s(a)){for(c=a.length;c>d;d++)if(b.call(a[d],d,a[d])===!1)break}else for(d in a)if(b.call(a[d],d,a[d])===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):g.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:h.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,e,g=0,h=[];if(s(a))for(d=a.length;d>g;g++)e=b(a[g],g,c),null!=e&&h.push(e);else for(g in a)e=b(a[g],g,c),null!=e&&h.push(e);return f.apply([],h)},guid:1,proxy:function(a,b){var c,d,f;return"string"==typeof b&&(c=a[b],b=a,a=c),n.isFunction(a)?(d=e.call(arguments,2),f=function(){return a.apply(b||this,d.concat(e.call(arguments)))},f.guid=a.guid=a.guid||n.guid++,f):void 0},now:Date.now,support:l}),"function"==typeof Symbol&&(n.fn[Symbol.iterator]=c[Symbol.iterator]),n.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(a,b){i["[object "+b+"]"]=b.toLowerCase()});function s(a){var b=!!a&&"length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ga(),z=ga(),A=ga(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+M+"))|)"+L+"*\\]",O=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+N+")*)|.*)\\)|)",P=new RegExp(L+"+","g"),Q=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),R=new RegExp("^"+L+"*,"+L+"*"),S=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),T=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),U=new RegExp(O),V=new RegExp("^"+M+"$"),W={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M+"|[*])"),ATTR:new RegExp("^"+N),PSEUDO:new RegExp("^"+O),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},X=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,$=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,_=/[+~]/,aa=/'|\\/g,ba=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),ca=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},da=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(ea){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function fa(a,b,d,e){var f,h,j,k,l,o,r,s,w=b&&b.ownerDocument,x=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==x&&9!==x&&11!==x)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==x&&(o=$.exec(a)))if(f=o[1]){if(9===x){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(w&&(j=w.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(o[2])return H.apply(d,b.getElementsByTagName(a)),d;if((f=o[3])&&c.getElementsByClassName&&b.getElementsByClassName)return H.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==x)w=b,s=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(aa,"\\$&"):b.setAttribute("id",k=u),r=g(a),h=r.length,l=V.test(k)?"#"+k:"[id='"+k+"']";while(h--)r[h]=l+" "+qa(r[h]);s=r.join(","),w=_.test(a)&&oa(b.parentNode)||b}if(s)try{return H.apply(d,w.querySelectorAll(s)),d}catch(y){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(Q,"$1"),b,d,e)}function ga(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ha(a){return a[u]=!0,a}function ia(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ja(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function ka(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function la(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function na(a){return ha(function(b){return b=+b,ha(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function oa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=fa.support={},f=fa.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=fa.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ia(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ia(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Z.test(n.getElementsByClassName),c.getById=ia(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}},d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return"undefined"!=typeof b.getElementsByClassName&&p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=Z.test(n.querySelectorAll))&&(ia(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\r\\' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ia(function(a){var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Z.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ia(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",O)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Z.test(o.compareDocumentPosition),t=b||Z.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return ka(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?ka(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},fa.matches=function(a,b){return fa(a,null,null,b)},fa.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(T,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return fa(b,n,null,[a]).length>0},fa.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},fa.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},fa.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},fa.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=fa.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=fa.selectors={cacheLength:50,createPseudo:ha,match:W,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ba,ca),a[3]=(a[3]||a[4]||a[5]||"").replace(ba,ca),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||fa.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&fa.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return W.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&U.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ba,ca).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=fa.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(P," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||fa.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ha(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ha(function(a){var b=[],c=[],d=h(a.replace(Q,"$1"));return d[u]?ha(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ha(function(a){return function(b){return fa(a,b).length>0}}),contains:ha(function(a){return a=a.replace(ba,ca),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ha(function(a){return V.test(a||"")||fa.error("unsupported lang: "+a),a=a.replace(ba,ca).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Y.test(a.nodeName)},input:function(a){return X.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:na(function(){return[0]}),last:na(function(a,b){return[b-1]}),eq:na(function(a,b,c){return[0>c?c+b:c]}),even:na(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:na(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:na(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:na(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=la(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=ma(b);function pa(){}pa.prototype=d.filters=d.pseudos,d.setFilters=new pa,g=fa.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){c&&!(e=R.exec(h))||(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=S.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(Q," ")}),h=h.slice(c.length));for(g in d.filter)!(e=W[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?fa.error(a):z(a,i).slice(0)};function qa(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function ra(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j,k=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(j=b[u]||(b[u]={}),i=j[b.uniqueID]||(j[b.uniqueID]={}),(h=i[d])&&h[0]===w&&h[1]===f)return k[2]=h[2];if(i[d]=k,k[2]=a(b,c,g))return!0}}}function sa(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ta(a,b,c){for(var d=0,e=b.length;e>d;d++)fa(a,b[d],c);return c}function ua(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(c&&!c(f,d,e)||(g.push(f),j&&b.push(h)));return g}function va(a,b,c,d,e,f){return d&&!d[u]&&(d=va(d)),e&&!e[u]&&(e=va(e,f)),ha(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ta(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:ua(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=ua(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=ua(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function wa(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ra(function(a){return a===b},h,!0),l=ra(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[ra(sa(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return va(i>1&&sa(m),i>1&&qa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(Q,"$1"),c,e>i&&wa(a.slice(i,e)),f>e&&wa(a=a.slice(e)),f>e&&qa(a))}m.push(c)}return sa(m)}function xa(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=F.call(i));u=ua(u)}H.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&fa.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ha(f):f}return h=fa.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=wa(b[c]),f[u]?d.push(f):e.push(f);f=A(a,xa(e,d)),f.selector=a}return f},i=fa.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(ba,ca),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=W.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(ba,ca),_.test(j[0].type)&&oa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&qa(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,!b||_.test(a)&&oa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ia(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ia(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||ja("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ia(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ja("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ia(function(a){return null==a.getAttribute("disabled")})||ja(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),fa}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.uniqueSort=n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},v=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},w=n.expr.match.needsContext,x=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,y=/^.[^:#\[\.,]*$/;function z(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(y.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return h.call(b,a)>-1!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;c>b;b++)if(n.contains(e[b],this))return!0}));for(b=0;c>b;b++)n.find(a,e[b],d);return d=this.pushStack(c>1?n.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(z(this,a||[],!1))},not:function(a){return this.pushStack(z(this,a||[],!0))},is:function(a){return!!z(this,"string"==typeof a&&w.test(a)?n(a):a||[],!1).length}});var A,B=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,C=n.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||A,"string"==typeof a){if(e="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:B.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),x.test(e[1])&&n.isPlainObject(b))for(e in b)n.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}return f=d.getElementById(e[2]),f&&f.parentNode&&(this.length=1,this[0]=f),this.context=d,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?void 0!==c.ready?c.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};C.prototype=n.fn,A=n(d);var D=/^(?:parents|prev(?:Until|All))/,E={children:!0,contents:!0,next:!0,prev:!0};n.fn.extend({has:function(a){var b=n(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(n.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=w.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?h.call(n(a),this[0]):h.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.uniqueSort(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function F(a,b){while((a=a[b])&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return u(a,"parentNode")},parentsUntil:function(a,b,c){return u(a,"parentNode",c)},next:function(a){return F(a,"nextSibling")},prev:function(a){return F(a,"previousSibling")},nextAll:function(a){return u(a,"nextSibling")},prevAll:function(a){return u(a,"previousSibling")},nextUntil:function(a,b,c){return u(a,"nextSibling",c)},prevUntil:function(a,b,c){return u(a,"previousSibling",c)},siblings:function(a){return v((a.parentNode||{}).firstChild,a)},children:function(a){return v(a.firstChild)},contents:function(a){return a.contentDocument||n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(E[a]||n.uniqueSort(e),D.test(a)&&e.reverse()),this.pushStack(e)}});var G=/\S+/g;function H(a){var b={};return n.each(a.match(G)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?H(a):n.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h<f.length)f[h].apply(c[0],c[1])===!1&&a.stopOnFalse&&(h=f.length,c=!1)}a.memory||(c=!1),b=!1,e&&(f=c?[]:"")},j={add:function(){return f&&(c&&!b&&(h=f.length-1,g.push(c)),function d(b){n.each(b,function(b,c){n.isFunction(c)?a.unique&&j.has(c)||f.push(c):c&&c.length&&"string"!==n.type(c)&&d(c)})}(arguments),c&&!b&&i()),this},remove:function(){return n.each(arguments,function(a,b){var c;while((c=n.inArray(b,f,c))>-1)f.splice(c,1),h>=c&&h--}),this},has:function(a){return a?n.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=g=[],c||(f=c=""),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().progress(c.notify).done(c.resolve).fail(c.reject):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=e.call(arguments),d=c.length,f=1!==d||a&&n.isFunction(a.promise)?d:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?e.call(arguments):d,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(d>1)for(i=new Array(d),j=new Array(d),k=new Array(d);d>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().progress(h(b,j,i)).done(h(b,k,c)).fail(g.reject):--f;return f||g.resolveWith(k,c),g.promise()}});var I;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(I.resolveWith(d,[n]),n.fn.triggerHandler&&(n(d).triggerHandler("ready"),n(d).off("ready"))))}});function J(){d.removeEventListener("DOMContentLoaded",J),a.removeEventListener("load",J),n.ready()}n.ready.promise=function(b){return I||(I=n.Deferred(),"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll?a.setTimeout(n.ready):(d.addEventListener("DOMContentLoaded",J),a.addEventListener("load",J))),I.promise(b)},n.ready.promise();var K=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===n.type(c)){e=!0;for(h in c)K(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,n.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(n(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},L=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function M(){this.expando=n.expando+M.uid++}M.uid=1,M.prototype={register:function(a,b){var c=b||{};return a.nodeType?a[this.expando]=c:Object.defineProperty(a,this.expando,{value:c,writable:!0,configurable:!0}),a[this.expando]},cache:function(a){if(!L(a))return{};var b=a[this.expando];return b||(b={},L(a)&&(a.nodeType?a[this.expando]=b:Object.defineProperty(a,this.expando,{value:b,configurable:!0}))),b},set:function(a,b,c){var d,e=this.cache(a);if("string"==typeof b)e[b]=c;else for(d in b)e[d]=b[d];return e},get:function(a,b){return void 0===b?this.cache(a):a[this.expando]&&a[this.expando][b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,n.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=a[this.expando];if(void 0!==f){if(void 0===b)this.register(a);else{n.isArray(b)?d=b.concat(b.map(n.camelCase)):(e=n.camelCase(b),b in f?d=[b,e]:(d=e,d=d in f?[d]:d.match(G)||[])),c=d.length;while(c--)delete f[d[c]]}(void 0===b||n.isEmptyObject(f))&&(a.nodeType?a[this.expando]=void 0:delete a[this.expando])}},hasData:function(a){var b=a[this.expando];return void 0!==b&&!n.isEmptyObject(b)}};var N=new M,O=new M,P=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Q=/[A-Z]/g;function R(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(Q,"-$&").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:P.test(c)?n.parseJSON(c):c;
3
+ }catch(e){}O.set(a,b,c)}else c=void 0;return c}n.extend({hasData:function(a){return O.hasData(a)||N.hasData(a)},data:function(a,b,c){return O.access(a,b,c)},removeData:function(a,b){O.remove(a,b)},_data:function(a,b,c){return N.access(a,b,c)},_removeData:function(a,b){N.remove(a,b)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=O.get(f),1===f.nodeType&&!N.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),R(f,d,e[d])));N.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){O.set(this,a)}):K(this,function(b){var c,d;if(f&&void 0===b){if(c=O.get(f,a)||O.get(f,a.replace(Q,"-$&").toLowerCase()),void 0!==c)return c;if(d=n.camelCase(a),c=O.get(f,d),void 0!==c)return c;if(c=R(f,d,void 0),void 0!==c)return c}else d=n.camelCase(a),this.each(function(){var c=O.get(this,d);O.set(this,d,b),a.indexOf("-")>-1&&void 0!==c&&O.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){O.remove(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=N.get(a,b),c&&(!d||n.isArray(c)?d=N.access(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return N.get(a,c)||N.access(a,c,{empty:n.Callbacks("once memory").add(function(){N.remove(a,[b+"queue",c])})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?n.queue(this[0],a):void 0===b?this:this.each(function(){var c=n.queue(this,a,b);n._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&n.dequeue(this,a)})},dequeue:function(a){return this.each(function(){n.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=n.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=N.get(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var S=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=new RegExp("^(?:([+-])=|)("+S+")([a-z%]*)$","i"),U=["Top","Right","Bottom","Left"],V=function(a,b){return a=b||a,"none"===n.css(a,"display")||!n.contains(a.ownerDocument,a)};function W(a,b,c,d){var e,f=1,g=20,h=d?function(){return d.cur()}:function(){return n.css(a,b,"")},i=h(),j=c&&c[3]||(n.cssNumber[b]?"":"px"),k=(n.cssNumber[b]||"px"!==j&&+i)&&T.exec(n.css(a,b));if(k&&k[3]!==j){j=j||k[3],c=c||[],k=+i||1;do f=f||".5",k/=f,n.style(a,b,k+j);while(f!==(f=h()/i)&&1!==f&&--g)}return c&&(k=+k||+i||0,e=c[1]?k+(c[1]+1)*c[2]:+c[2],d&&(d.unit=j,d.start=k,d.end=e)),e}var X=/^(?:checkbox|radio)$/i,Y=/<([\w:-]+)/,Z=/^$|\/(?:java|ecma)script/i,$={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};$.optgroup=$.option,$.tbody=$.tfoot=$.colgroup=$.caption=$.thead,$.th=$.td;function _(a,b){var c="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function aa(a,b){for(var c=0,d=a.length;d>c;c++)N.set(a[c],"globalEval",!b||N.get(b[c],"globalEval"))}var ba=/<|&#?\w+;/;function ca(a,b,c,d,e){for(var f,g,h,i,j,k,l=b.createDocumentFragment(),m=[],o=0,p=a.length;p>o;o++)if(f=a[o],f||0===f)if("object"===n.type(f))n.merge(m,f.nodeType?[f]:f);else if(ba.test(f)){g=g||l.appendChild(b.createElement("div")),h=(Y.exec(f)||["",""])[1].toLowerCase(),i=$[h]||$._default,g.innerHTML=i[1]+n.htmlPrefilter(f)+i[2],k=i[0];while(k--)g=g.lastChild;n.merge(m,g.childNodes),g=l.firstChild,g.textContent=""}else m.push(b.createTextNode(f));l.textContent="",o=0;while(f=m[o++])if(d&&n.inArray(f,d)>-1)e&&e.push(f);else if(j=n.contains(f.ownerDocument,f),g=_(l.appendChild(f),"script"),j&&aa(g),c){k=0;while(f=g[k++])Z.test(f.type||"")&&c.push(f)}return l}!function(){var a=d.createDocumentFragment(),b=a.appendChild(d.createElement("div")),c=d.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),l.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="<textarea>x</textarea>",l.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var da=/^key/,ea=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,fa=/^([^.]*)(?:\.(.+)|)/;function ga(){return!0}function ha(){return!1}function ia(){try{return d.activeElement}catch(a){}}function ja(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)ja(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=ha;else if(!e)return a;return 1===f&&(g=e,e=function(a){return n().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=n.guid++)),a.each(function(){n.event.add(this,b,e,d,c)})}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=N.get(a);if(r){c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=n.guid++),(i=r.events)||(i=r.events={}),(g=r.handle)||(g=r.handle=function(b){return"undefined"!=typeof n&&n.event.triggered!==b.type?n.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(G)||[""],j=b.length;while(j--)h=fa.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o&&(l=n.event.special[o]||{},o=(e?l.delegateType:l.bindType)||o,l=n.event.special[o]||{},k=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},f),(m=i[o])||(m=i[o]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,p,g)!==!1||a.addEventListener&&a.addEventListener(o,g)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),n.event.global[o]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=N.hasData(a)&&N.get(a);if(r&&(i=r.events)){b=(b||"").match(G)||[""],j=b.length;while(j--)if(h=fa.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=i[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&q!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete i[o])}else for(o in i)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(i)&&N.remove(a,"handle events")}},dispatch:function(a){a=n.event.fix(a);var b,c,d,f,g,h=[],i=e.call(arguments),j=(N.get(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())a.rnamespace&&!a.rnamespace.test(g.namespace)||(a.handleObj=g,a.data=g.data,d=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==d&&(a.result=d)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&("click"!==a.type||isNaN(a.button)||a.button<1))for(;i!==this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>-1:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},props:"altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,e,f,g=b.button;return null==a.pageX&&null!=b.clientX&&(c=a.target.ownerDocument||d,e=c.documentElement,f=c.body,a.pageX=b.clientX+(e&&e.scrollLeft||f&&f.scrollLeft||0)-(e&&e.clientLeft||f&&f.clientLeft||0),a.pageY=b.clientY+(e&&e.scrollTop||f&&f.scrollTop||0)-(e&&e.clientTop||f&&f.clientTop||0)),a.which||void 0===g||(a.which=1&g?1:2&g?3:4&g?2:0),a}},fix:function(a){if(a[n.expando])return a;var b,c,e,f=a.type,g=a,h=this.fixHooks[f];h||(this.fixHooks[f]=h=ea.test(f)?this.mouseHooks:da.test(f)?this.keyHooks:{}),e=h.props?this.props.concat(h.props):this.props,a=new n.Event(g),b=e.length;while(b--)c=e[b],a[c]=g[c];return a.target||(a.target=d),3===a.target.nodeType&&(a.target=a.target.parentNode),h.filter?h.filter(a,g):a},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==ia()&&this.focus?(this.focus(),!1):void 0},delegateType:"focusin"},blur:{trigger:function(){return this===ia()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&n.nodeName(this,"input")?(this.click(),!1):void 0},_default:function(a){return n.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}}},n.removeEvent=function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c)},n.Event=function(a,b){return this instanceof n.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?ga:ha):this.type=a,b&&n.extend(this,b),this.timeStamp=a&&a.timeStamp||n.now(),void(this[n.expando]=!0)):new n.Event(a,b)},n.Event.prototype={constructor:n.Event,isDefaultPrevented:ha,isPropagationStopped:ha,isImmediatePropagationStopped:ha,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=ga,a&&a.preventDefault()},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=ga,a&&a.stopPropagation()},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=ga,a&&a.stopImmediatePropagation(),this.stopPropagation()}},n.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){n.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return e&&(e===d||n.contains(d,e))||(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),n.fn.extend({on:function(a,b,c,d){return ja(this,a,b,c,d)},one:function(a,b,c,d){return ja(this,a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,n(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return b!==!1&&"function"!=typeof b||(c=b,b=void 0),c===!1&&(c=ha),this.each(function(){n.event.remove(this,a,c,b)})}});var ka=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,la=/<script|<style|<link/i,ma=/checked\s*(?:[^=]|=\s*.checked.)/i,na=/^true\/(.*)/,oa=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function pa(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function qa(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function ra(a){var b=na.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function sa(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(N.hasData(a)&&(f=N.access(a),g=N.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)n.event.add(b,e,j[e][c])}O.hasData(a)&&(h=O.access(a),i=n.extend({},h),O.set(b,i))}}function ta(a,b){var c=b.nodeName.toLowerCase();"input"===c&&X.test(a.type)?b.checked=a.checked:"input"!==c&&"textarea"!==c||(b.defaultValue=a.defaultValue)}function ua(a,b,c,d){b=f.apply([],b);var e,g,h,i,j,k,m=0,o=a.length,p=o-1,q=b[0],r=n.isFunction(q);if(r||o>1&&"string"==typeof q&&!l.checkClone&&ma.test(q))return a.each(function(e){var f=a.eq(e);r&&(b[0]=q.call(this,e,f.html())),ua(f,b,c,d)});if(o&&(e=ca(b,a[0].ownerDocument,!1,a,d),g=e.firstChild,1===e.childNodes.length&&(e=g),g||d)){for(h=n.map(_(e,"script"),qa),i=h.length;o>m;m++)j=e,m!==p&&(j=n.clone(j,!0,!0),i&&n.merge(h,_(j,"script"))),c.call(a[m],j,m);if(i)for(k=h[h.length-1].ownerDocument,n.map(h,ra),m=0;i>m;m++)j=h[m],Z.test(j.type||"")&&!N.access(j,"globalEval")&&n.contains(k,j)&&(j.src?n._evalUrl&&n._evalUrl(j.src):n.globalEval(j.textContent.replace(oa,"")))}return a}function va(a,b,c){for(var d,e=b?n.filter(b,a):a,f=0;null!=(d=e[f]);f++)c||1!==d.nodeType||n.cleanData(_(d)),d.parentNode&&(c&&n.contains(d.ownerDocument,d)&&aa(_(d,"script")),d.parentNode.removeChild(d));return a}n.extend({htmlPrefilter:function(a){return a.replace(ka,"<$1></$2>")},clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=n.contains(a.ownerDocument,a);if(!(l.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(g=_(h),f=_(a),d=0,e=f.length;e>d;d++)ta(f[d],g[d]);if(b)if(c)for(f=f||_(a),g=g||_(h),d=0,e=f.length;e>d;d++)sa(f[d],g[d]);else sa(a,h);return g=_(h,"script"),g.length>0&&aa(g,!i&&_(a,"script")),h},cleanData:function(a){for(var b,c,d,e=n.event.special,f=0;void 0!==(c=a[f]);f++)if(L(c)){if(b=c[N.expando]){if(b.events)for(d in b.events)e[d]?n.event.remove(c,d):n.removeEvent(c,d,b.handle);c[N.expando]=void 0}c[O.expando]&&(c[O.expando]=void 0)}}}),n.fn.extend({domManip:ua,detach:function(a){return va(this,a,!0)},remove:function(a){return va(this,a)},text:function(a){return K(this,function(a){return void 0===a?n.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=a)})},null,a,arguments.length)},append:function(){return ua(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=pa(this,a);b.appendChild(a)}})},prepend:function(){return ua(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=pa(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return ua(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return ua(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(n.cleanData(_(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return K(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!la.test(a)&&!$[(Y.exec(a)||["",""])[1].toLowerCase()]){a=n.htmlPrefilter(a);try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(_(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=[];return ua(this,arguments,function(b){var c=this.parentNode;n.inArray(this,a)<0&&(n.cleanData(_(this)),c&&c.replaceChild(b,this))},a)}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=[],e=n(a),f=e.length-1,h=0;f>=h;h++)c=h===f?this:this.clone(!0),n(e[h])[b](c),g.apply(d,c.get());return this.pushStack(d)}});var wa,xa={HTML:"block",BODY:"block"};function ya(a,b){var c=n(b.createElement(a)).appendTo(b.body),d=n.css(c[0],"display");return c.detach(),d}function za(a){var b=d,c=xa[a];return c||(c=ya(a,b),"none"!==c&&c||(wa=(wa||n("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement),b=wa[0].contentDocument,b.write(),b.close(),c=ya(a,b),wa.detach()),xa[a]=c),c}var Aa=/^margin/,Ba=new RegExp("^("+S+")(?!px)[a-z%]+$","i"),Ca=function(b){var c=b.ownerDocument.defaultView;return c&&c.opener||(c=a),c.getComputedStyle(b)},Da=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e},Ea=d.documentElement;!function(){var b,c,e,f,g=d.createElement("div"),h=d.createElement("div");if(h.style){h.style.backgroundClip="content-box",h.cloneNode(!0).style.backgroundClip="",l.clearCloneStyle="content-box"===h.style.backgroundClip,g.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",g.appendChild(h);function i(){h.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",h.innerHTML="",Ea.appendChild(g);var d=a.getComputedStyle(h);b="1%"!==d.top,f="2px"===d.marginLeft,c="4px"===d.width,h.style.marginRight="50%",e="4px"===d.marginRight,Ea.removeChild(g)}n.extend(l,{pixelPosition:function(){return i(),b},boxSizingReliable:function(){return null==c&&i(),c},pixelMarginRight:function(){return null==c&&i(),e},reliableMarginLeft:function(){return null==c&&i(),f},reliableMarginRight:function(){var b,c=h.appendChild(d.createElement("div"));return c.style.cssText=h.style.cssText="-webkit-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",c.style.marginRight=c.style.width="0",h.style.width="1px",Ea.appendChild(g),b=!parseFloat(a.getComputedStyle(c).marginRight),Ea.removeChild(g),h.removeChild(c),b}})}}();function Fa(a,b,c){var d,e,f,g,h=a.style;return c=c||Ca(a),g=c?c.getPropertyValue(b)||c[b]:void 0,""!==g&&void 0!==g||n.contains(a.ownerDocument,a)||(g=n.style(a,b)),c&&!l.pixelMarginRight()&&Ba.test(g)&&Aa.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f),void 0!==g?g+"":g}function Ga(a,b){return{get:function(){return a()?void delete this.get:(this.get=b).apply(this,arguments)}}}var Ha=/^(none|table(?!-c[ea]).+)/,Ia={position:"absolute",visibility:"hidden",display:"block"},Ja={letterSpacing:"0",fontWeight:"400"},Ka=["Webkit","O","Moz","ms"],La=d.createElement("div").style;function Ma(a){if(a in La)return a;var b=a[0].toUpperCase()+a.slice(1),c=Ka.length;while(c--)if(a=Ka[c]+b,a in La)return a}function Na(a,b,c){var d=T.exec(b);return d?Math.max(0,d[2]-(c||0))+(d[3]||"px"):b}function Oa(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=n.css(a,c+U[f],!0,e)),d?("content"===c&&(g-=n.css(a,"padding"+U[f],!0,e)),"margin"!==c&&(g-=n.css(a,"border"+U[f]+"Width",!0,e))):(g+=n.css(a,"padding"+U[f],!0,e),"padding"!==c&&(g+=n.css(a,"border"+U[f]+"Width",!0,e)));return g}function Pa(b,c,e){var f=!0,g="width"===c?b.offsetWidth:b.offsetHeight,h=Ca(b),i="border-box"===n.css(b,"boxSizing",!1,h);if(d.msFullscreenElement&&a.top!==a&&b.getClientRects().length&&(g=Math.round(100*b.getBoundingClientRect()[c])),0>=g||null==g){if(g=Fa(b,c,h),(0>g||null==g)&&(g=b.style[c]),Ba.test(g))return g;f=i&&(l.boxSizingReliable()||g===b.style[c]),g=parseFloat(g)||0}return g+Oa(b,c,e||(i?"border":"content"),f,h)+"px"}function Qa(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=N.get(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&V(d)&&(f[g]=N.access(d,"olddisplay",za(d.nodeName)))):(e=V(d),"none"===c&&e||N.set(d,"olddisplay",e?c:n.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}n.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=Fa(a,"opacity");return""===c?"1":c}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=n.camelCase(b),i=a.style;return b=n.cssProps[h]||(n.cssProps[h]=Ma(h)||h),g=n.cssHooks[b]||n.cssHooks[h],void 0===c?g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b]:(f=typeof c,"string"===f&&(e=T.exec(c))&&e[1]&&(c=W(a,b,e),f="number"),null!=c&&c===c&&("number"===f&&(c+=e&&e[3]||(n.cssNumber[h]?"":"px")),l.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),g&&"set"in g&&void 0===(c=g.set(a,c,d))||(i[b]=c)),void 0)}},css:function(a,b,c,d){var e,f,g,h=n.camelCase(b);return b=n.cssProps[h]||(n.cssProps[h]=Ma(h)||h),g=n.cssHooks[b]||n.cssHooks[h],g&&"get"in g&&(e=g.get(a,!0,c)),void 0===e&&(e=Fa(a,b,d)),"normal"===e&&b in Ja&&(e=Ja[b]),""===c||c?(f=parseFloat(e),c===!0||isFinite(f)?f||0:e):e}}),n.each(["height","width"],function(a,b){n.cssHooks[b]={get:function(a,c,d){return c?Ha.test(n.css(a,"display"))&&0===a.offsetWidth?Da(a,Ia,function(){return Pa(a,b,d)}):Pa(a,b,d):void 0},set:function(a,c,d){var e,f=d&&Ca(a),g=d&&Oa(a,b,d,"border-box"===n.css(a,"boxSizing",!1,f),f);return g&&(e=T.exec(c))&&"px"!==(e[3]||"px")&&(a.style[b]=c,c=n.css(a,b)),Na(a,c,g)}}}),n.cssHooks.marginLeft=Ga(l.reliableMarginLeft,function(a,b){return b?(parseFloat(Fa(a,"marginLeft"))||a.getBoundingClientRect().left-Da(a,{marginLeft:0},function(){return a.getBoundingClientRect().left}))+"px":void 0}),n.cssHooks.marginRight=Ga(l.reliableMarginRight,function(a,b){return b?Da(a,{display:"inline-block"},Fa,[a,"marginRight"]):void 0}),n.each({margin:"",padding:"",border:"Width"},function(a,b){n.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+U[d]+b]=f[d]||f[d-2]||f[0];return e}},Aa.test(a)||(n.cssHooks[a+b].set=Na)}),n.fn.extend({css:function(a,b){return K(this,function(a,b,c){var d,e,f={},g=0;if(n.isArray(b)){for(d=Ca(a),e=b.length;e>g;g++)f[b[g]]=n.css(a,b[g],!1,d);return f}return void 0!==c?n.style(a,b,c):n.css(a,b)},a,b,arguments.length>1)},show:function(){return Qa(this,!0)},hide:function(){return Qa(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){V(this)?n(this).show():n(this).hide()})}});function Ra(a,b,c,d,e){return new Ra.prototype.init(a,b,c,d,e)}n.Tween=Ra,Ra.prototype={constructor:Ra,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||n.easing._default,this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(n.cssNumber[c]?"":"px")},cur:function(){var a=Ra.propHooks[this.prop];return a&&a.get?a.get(this):Ra.propHooks._default.get(this)},run:function(a){var b,c=Ra.propHooks[this.prop];return this.options.duration?this.pos=b=n.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):Ra.propHooks._default.set(this),this}},Ra.prototype.init.prototype=Ra.prototype,Ra.propHooks={_default:{get:function(a){var b;return 1!==a.elem.nodeType||null!=a.elem[a.prop]&&null==a.elem.style[a.prop]?a.elem[a.prop]:(b=n.css(a.elem,a.prop,""),b&&"auto"!==b?b:0)},set:function(a){n.fx.step[a.prop]?n.fx.step[a.prop](a):1!==a.elem.nodeType||null==a.elem.style[n.cssProps[a.prop]]&&!n.cssHooks[a.prop]?a.elem[a.prop]=a.now:n.style(a.elem,a.prop,a.now+a.unit)}}},Ra.propHooks.scrollTop=Ra.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},n.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2},_default:"swing"},n.fx=Ra.prototype.init,n.fx.step={};var Sa,Ta,Ua=/^(?:toggle|show|hide)$/,Va=/queueHooks$/;function Wa(){return a.setTimeout(function(){Sa=void 0}),Sa=n.now()}function Xa(a,b){var c,d=0,e={height:a};for(b=b?1:0;4>d;d+=2-b)c=U[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function Ya(a,b,c){for(var d,e=(_a.tweeners[b]||[]).concat(_a.tweeners["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function Za(a,b,c){var d,e,f,g,h,i,j,k,l=this,m={},o=a.style,p=a.nodeType&&V(a),q=N.get(a,"fxshow");c.queue||(h=n._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,l.always(function(){l.always(function(){h.unqueued--,n.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[o.overflow,o.overflowX,o.overflowY],j=n.css(a,"display"),k="none"===j?N.get(a,"olddisplay")||za(a.nodeName):j,"inline"===k&&"none"===n.css(a,"float")&&(o.display="inline-block")),c.overflow&&(o.overflow="hidden",l.always(function(){o.overflow=c.overflow[0],o.overflowX=c.overflow[1],o.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],Ua.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(p?"hide":"show")){if("show"!==e||!q||void 0===q[d])continue;p=!0}m[d]=q&&q[d]||n.style(a,d)}else j=void 0;if(n.isEmptyObject(m))"inline"===("none"===j?za(a.nodeName):j)&&(o.display=j);else{q?"hidden"in q&&(p=q.hidden):q=N.access(a,"fxshow",{}),f&&(q.hidden=!p),p?n(a).show():l.done(function(){n(a).hide()}),l.done(function(){var b;N.remove(a,"fxshow");for(b in m)n.style(a,b,m[b])});for(d in m)g=Ya(p?q[d]:0,d,l),d in q||(q[d]=g.start,p&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function $a(a,b){var c,d,e,f,g;for(c in a)if(d=n.camelCase(c),e=b[d],f=a[c],n.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=n.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function _a(a,b,c){var d,e,f=0,g=_a.prefilters.length,h=n.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=Sa||Wa(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:n.extend({},b),opts:n.extend(!0,{specialEasing:{},easing:n.easing._default},c),originalProperties:b,originalOptions:c,startTime:Sa||Wa(),duration:c.duration,tweens:[],createTween:function(b,c){var d=n.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?(h.notifyWith(a,[j,1,0]),h.resolveWith(a,[j,b])):h.rejectWith(a,[j,b]),this}}),k=j.props;for($a(k,j.opts.specialEasing);g>f;f++)if(d=_a.prefilters[f].call(j,a,k,j.opts))return n.isFunction(d.stop)&&(n._queueHooks(j.elem,j.opts.queue).stop=n.proxy(d.stop,d)),d;return n.map(k,Ya,j),n.isFunction(j.opts.start)&&j.opts.start.call(a,j),n.fx.timer(n.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}n.Animation=n.extend(_a,{tweeners:{"*":[function(a,b){var c=this.createTween(a,b);return W(c.elem,a,T.exec(b),c),c}]},tweener:function(a,b){n.isFunction(a)?(b=a,a=["*"]):a=a.match(G);for(var c,d=0,e=a.length;e>d;d++)c=a[d],_a.tweeners[c]=_a.tweeners[c]||[],_a.tweeners[c].unshift(b)},prefilters:[Za],prefilter:function(a,b){b?_a.prefilters.unshift(a):_a.prefilters.push(a)}}),n.speed=function(a,b,c){var d=a&&"object"==typeof a?n.extend({},a):{complete:c||!c&&b||n.isFunction(a)&&a,duration:a,easing:c&&b||b&&!n.isFunction(b)&&b};return d.duration=n.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in n.fx.speeds?n.fx.speeds[d.duration]:n.fx.speeds._default,null!=d.queue&&d.queue!==!0||(d.queue="fx"),d.old=d.complete,d.complete=function(){n.isFunction(d.old)&&d.old.call(this),d.queue&&n.dequeue(this,d.queue)},d},n.fn.extend({fadeTo:function(a,b,c,d){return this.filter(V).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=n.isEmptyObject(a),f=n.speed(b,c,d),g=function(){var b=_a(this,n.extend({},a),f);(e||N.get(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=n.timers,g=N.get(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&Va.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));!b&&c||n.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=N.get(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=n.timers,g=d?d.length:0;for(c.finish=!0,n.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),n.each(["toggle","show","hide"],function(a,b){var c=n.fn[b];n.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(Xa(b,!0),a,d,e)}}),n.each({slideDown:Xa("show"),slideUp:Xa("hide"),slideToggle:Xa("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){n.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),n.timers=[],n.fx.tick=function(){var a,b=0,c=n.timers;for(Sa=n.now();b<c.length;b++)a=c[b],a()||c[b]!==a||c.splice(b--,1);c.length||n.fx.stop(),Sa=void 0},n.fx.timer=function(a){n.timers.push(a),a()?n.fx.start():n.timers.pop()},n.fx.interval=13,n.fx.start=function(){Ta||(Ta=a.setInterval(n.fx.tick,n.fx.interval))},n.fx.stop=function(){a.clearInterval(Ta),Ta=null},n.fx.speeds={slow:600,fast:200,_default:400},n.fn.delay=function(b,c){return b=n.fx?n.fx.speeds[b]||b:b,c=c||"fx",this.queue(c,function(c,d){var e=a.setTimeout(c,b);d.stop=function(){a.clearTimeout(e)}})},function(){var a=d.createElement("input"),b=d.createElement("select"),c=b.appendChild(d.createElement("option"));a.type="checkbox",l.checkOn=""!==a.value,l.optSelected=c.selected,b.disabled=!0,l.optDisabled=!c.disabled,a=d.createElement("input"),a.value="t",a.type="radio",l.radioValue="t"===a.value}();var ab,bb=n.expr.attrHandle;n.fn.extend({attr:function(a,b){return K(this,n.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){n.removeAttr(this,a)})}}),n.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return"undefined"==typeof a.getAttribute?n.prop(a,b,c):(1===f&&n.isXMLDoc(a)||(b=b.toLowerCase(),e=n.attrHooks[b]||(n.expr.match.bool.test(b)?ab:void 0)),void 0!==c?null===c?void n.removeAttr(a,b):e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:(a.setAttribute(b,c+""),c):e&&"get"in e&&null!==(d=e.get(a,b))?d:(d=n.find.attr(a,b),null==d?void 0:d))},attrHooks:{type:{set:function(a,b){if(!l.radioValue&&"radio"===b&&n.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(G);if(f&&1===a.nodeType)while(c=f[e++])d=n.propFix[c]||c,n.expr.match.bool.test(c)&&(a[d]=!1),a.removeAttribute(c)}}),ab={set:function(a,b,c){return b===!1?n.removeAttr(a,c):a.setAttribute(c,c),c}},n.each(n.expr.match.bool.source.match(/\w+/g),function(a,b){var c=bb[b]||n.find.attr;bb[b]=function(a,b,d){var e,f;return d||(f=bb[b],bb[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,bb[b]=f),e}});var cb=/^(?:input|select|textarea|button)$/i,db=/^(?:a|area)$/i;n.fn.extend({prop:function(a,b){return K(this,n.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[n.propFix[a]||a]})}}),n.extend({prop:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return 1===f&&n.isXMLDoc(a)||(b=n.propFix[b]||b,
4
+ e=n.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=n.find.attr(a,"tabindex");return b?parseInt(b,10):cb.test(a.nodeName)||db.test(a.nodeName)&&a.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),l.optSelected||(n.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null},set:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}}),n.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){n.propFix[this.toLowerCase()]=this});var eb=/[\t\r\n\f]/g;function fb(a){return a.getAttribute&&a.getAttribute("class")||""}n.fn.extend({addClass:function(a){var b,c,d,e,f,g,h,i=0;if(n.isFunction(a))return this.each(function(b){n(this).addClass(a.call(this,b,fb(this)))});if("string"==typeof a&&a){b=a.match(G)||[];while(c=this[i++])if(e=fb(c),d=1===c.nodeType&&(" "+e+" ").replace(eb," ")){g=0;while(f=b[g++])d.indexOf(" "+f+" ")<0&&(d+=f+" ");h=n.trim(d),e!==h&&c.setAttribute("class",h)}}return this},removeClass:function(a){var b,c,d,e,f,g,h,i=0;if(n.isFunction(a))return this.each(function(b){n(this).removeClass(a.call(this,b,fb(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof a&&a){b=a.match(G)||[];while(c=this[i++])if(e=fb(c),d=1===c.nodeType&&(" "+e+" ").replace(eb," ")){g=0;while(f=b[g++])while(d.indexOf(" "+f+" ")>-1)d=d.replace(" "+f+" "," ");h=n.trim(d),e!==h&&c.setAttribute("class",h)}}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):n.isFunction(a)?this.each(function(c){n(this).toggleClass(a.call(this,c,fb(this),b),b)}):this.each(function(){var b,d,e,f;if("string"===c){d=0,e=n(this),f=a.match(G)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else void 0!==a&&"boolean"!==c||(b=fb(this),b&&N.set(this,"__className__",b),this.setAttribute&&this.setAttribute("class",b||a===!1?"":N.get(this,"__className__")||""))})},hasClass:function(a){var b,c,d=0;b=" "+a+" ";while(c=this[d++])if(1===c.nodeType&&(" "+fb(c)+" ").replace(eb," ").indexOf(b)>-1)return!0;return!1}});var gb=/\r/g,hb=/[\x20\t\r\n\f]+/g;n.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=n.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,n(this).val()):a,null==e?e="":"number"==typeof e?e+="":n.isArray(e)&&(e=n.map(e,function(a){return null==a?"":a+""})),b=n.valHooks[this.type]||n.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=n.valHooks[e.type]||n.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(gb,""):null==c?"":c)}}}),n.extend({valHooks:{option:{get:function(a){var b=n.find.attr(a,"value");return null!=b?b:n.trim(n.text(a)).replace(hb," ")}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],(c.selected||i===e)&&(l.optDisabled?!c.disabled:null===c.getAttribute("disabled"))&&(!c.parentNode.disabled||!n.nodeName(c.parentNode,"optgroup"))){if(b=n(c).val(),f)return b;g.push(b)}return g},set:function(a,b){var c,d,e=a.options,f=n.makeArray(b),g=e.length;while(g--)d=e[g],(d.selected=n.inArray(n.valHooks.option.get(d),f)>-1)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),n.each(["radio","checkbox"],function(){n.valHooks[this]={set:function(a,b){return n.isArray(b)?a.checked=n.inArray(n(a).val(),b)>-1:void 0}},l.checkOn||(n.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var ib=/^(?:focusinfocus|focusoutblur)$/;n.extend(n.event,{trigger:function(b,c,e,f){var g,h,i,j,l,m,o,p=[e||d],q=k.call(b,"type")?b.type:b,r=k.call(b,"namespace")?b.namespace.split("."):[];if(h=i=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!ib.test(q+n.event.triggered)&&(q.indexOf(".")>-1&&(r=q.split("."),q=r.shift(),r.sort()),l=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=r.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:n.makeArray(c,[b]),o=n.event.special[q]||{},f||!o.trigger||o.trigger.apply(e,c)!==!1)){if(!f&&!o.noBubble&&!n.isWindow(e)){for(j=o.delegateType||q,ib.test(j+q)||(h=h.parentNode);h;h=h.parentNode)p.push(h),i=h;i===(e.ownerDocument||d)&&p.push(i.defaultView||i.parentWindow||a)}g=0;while((h=p[g++])&&!b.isPropagationStopped())b.type=g>1?j:o.bindType||q,m=(N.get(h,"events")||{})[b.type]&&N.get(h,"handle"),m&&m.apply(h,c),m=l&&h[l],m&&m.apply&&L(h)&&(b.result=m.apply(h,c),b.result===!1&&b.preventDefault());return b.type=q,f||b.isDefaultPrevented()||o._default&&o._default.apply(p.pop(),c)!==!1||!L(e)||l&&n.isFunction(e[q])&&!n.isWindow(e)&&(i=e[l],i&&(e[l]=null),n.event.triggered=q,e[q](),n.event.triggered=void 0,i&&(e[l]=i)),b.result}},simulate:function(a,b,c){var d=n.extend(new n.Event,c,{type:a,isSimulated:!0});n.event.trigger(d,null,b),d.isDefaultPrevented()&&c.preventDefault()}}),n.fn.extend({trigger:function(a,b){return this.each(function(){n.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];return c?n.event.trigger(a,b,c,!0):void 0}}),n.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){n.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),n.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),l.focusin="onfocusin"in a,l.focusin||n.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){n.event.simulate(b,a.target,n.event.fix(a))};n.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=N.access(d,b);e||d.addEventListener(a,c,!0),N.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=N.access(d,b)-1;e?N.access(d,b,e):(d.removeEventListener(a,c,!0),N.remove(d,b))}}});var jb=a.location,kb=n.now(),lb=/\?/;n.parseJSON=function(a){return JSON.parse(a+"")},n.parseXML=function(b){var c;if(!b||"string"!=typeof b)return null;try{c=(new a.DOMParser).parseFromString(b,"text/xml")}catch(d){c=void 0}return c&&!c.getElementsByTagName("parsererror").length||n.error("Invalid XML: "+b),c};var mb=/#.*$/,nb=/([?&])_=[^&]*/,ob=/^(.*?):[ \t]*([^\r\n]*)$/gm,pb=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,qb=/^(?:GET|HEAD)$/,rb=/^\/\//,sb={},tb={},ub="*/".concat("*"),vb=d.createElement("a");vb.href=jb.href;function wb(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(G)||[];if(n.isFunction(c))while(d=f[e++])"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function xb(a,b,c,d){var e={},f=a===tb;function g(h){var i;return e[h]=!0,n.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function yb(a,b){var c,d,e=n.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&n.extend(!0,a,d),a}function zb(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function Ab(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}n.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:jb.href,type:"GET",isLocal:pb.test(jb.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":ub,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":n.parseJSON,"text xml":n.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?yb(yb(a,n.ajaxSettings),b):yb(n.ajaxSettings,a)},ajaxPrefilter:wb(sb),ajaxTransport:wb(tb),ajax:function(b,c){"object"==typeof b&&(c=b,b=void 0),c=c||{};var e,f,g,h,i,j,k,l,m=n.ajaxSetup({},c),o=m.context||m,p=m.context&&(o.nodeType||o.jquery)?n(o):n.event,q=n.Deferred(),r=n.Callbacks("once memory"),s=m.statusCode||{},t={},u={},v=0,w="canceled",x={readyState:0,getResponseHeader:function(a){var b;if(2===v){if(!h){h={};while(b=ob.exec(g))h[b[1].toLowerCase()]=b[2]}b=h[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===v?g:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return v||(a=u[c]=u[c]||a,t[a]=b),this},overrideMimeType:function(a){return v||(m.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>v)for(b in a)s[b]=[s[b],a[b]];else x.always(a[x.status]);return this},abort:function(a){var b=a||w;return e&&e.abort(b),z(0,b),this}};if(q.promise(x).complete=r.add,x.success=x.done,x.error=x.fail,m.url=((b||m.url||jb.href)+"").replace(mb,"").replace(rb,jb.protocol+"//"),m.type=c.method||c.type||m.method||m.type,m.dataTypes=n.trim(m.dataType||"*").toLowerCase().match(G)||[""],null==m.crossDomain){j=d.createElement("a");try{j.href=m.url,j.href=j.href,m.crossDomain=vb.protocol+"//"+vb.host!=j.protocol+"//"+j.host}catch(y){m.crossDomain=!0}}if(m.data&&m.processData&&"string"!=typeof m.data&&(m.data=n.param(m.data,m.traditional)),xb(sb,m,c,x),2===v)return x;k=n.event&&m.global,k&&0===n.active++&&n.event.trigger("ajaxStart"),m.type=m.type.toUpperCase(),m.hasContent=!qb.test(m.type),f=m.url,m.hasContent||(m.data&&(f=m.url+=(lb.test(f)?"&":"?")+m.data,delete m.data),m.cache===!1&&(m.url=nb.test(f)?f.replace(nb,"$1_="+kb++):f+(lb.test(f)?"&":"?")+"_="+kb++)),m.ifModified&&(n.lastModified[f]&&x.setRequestHeader("If-Modified-Since",n.lastModified[f]),n.etag[f]&&x.setRequestHeader("If-None-Match",n.etag[f])),(m.data&&m.hasContent&&m.contentType!==!1||c.contentType)&&x.setRequestHeader("Content-Type",m.contentType),x.setRequestHeader("Accept",m.dataTypes[0]&&m.accepts[m.dataTypes[0]]?m.accepts[m.dataTypes[0]]+("*"!==m.dataTypes[0]?", "+ub+"; q=0.01":""):m.accepts["*"]);for(l in m.headers)x.setRequestHeader(l,m.headers[l]);if(m.beforeSend&&(m.beforeSend.call(o,x,m)===!1||2===v))return x.abort();w="abort";for(l in{success:1,error:1,complete:1})x[l](m[l]);if(e=xb(tb,m,c,x)){if(x.readyState=1,k&&p.trigger("ajaxSend",[x,m]),2===v)return x;m.async&&m.timeout>0&&(i=a.setTimeout(function(){x.abort("timeout")},m.timeout));try{v=1,e.send(t,z)}catch(y){if(!(2>v))throw y;z(-1,y)}}else z(-1,"No Transport");function z(b,c,d,h){var j,l,t,u,w,y=c;2!==v&&(v=2,i&&a.clearTimeout(i),e=void 0,g=h||"",x.readyState=b>0?4:0,j=b>=200&&300>b||304===b,d&&(u=zb(m,x,d)),u=Ab(m,u,x,j),j?(m.ifModified&&(w=x.getResponseHeader("Last-Modified"),w&&(n.lastModified[f]=w),w=x.getResponseHeader("etag"),w&&(n.etag[f]=w)),204===b||"HEAD"===m.type?y="nocontent":304===b?y="notmodified":(y=u.state,l=u.data,t=u.error,j=!t)):(t=y,!b&&y||(y="error",0>b&&(b=0))),x.status=b,x.statusText=(c||y)+"",j?q.resolveWith(o,[l,y,x]):q.rejectWith(o,[x,y,t]),x.statusCode(s),s=void 0,k&&p.trigger(j?"ajaxSuccess":"ajaxError",[x,m,j?l:t]),r.fireWith(o,[x,y]),k&&(p.trigger("ajaxComplete",[x,m]),--n.active||n.event.trigger("ajaxStop")))}return x},getJSON:function(a,b,c){return n.get(a,b,c,"json")},getScript:function(a,b){return n.get(a,void 0,b,"script")}}),n.each(["get","post"],function(a,b){n[b]=function(a,c,d,e){return n.isFunction(c)&&(e=e||d,d=c,c=void 0),n.ajax(n.extend({url:a,type:b,dataType:e,data:c,success:d},n.isPlainObject(a)&&a))}}),n._evalUrl=function(a){return n.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},n.fn.extend({wrapAll:function(a){var b;return n.isFunction(a)?this.each(function(b){n(this).wrapAll(a.call(this,b))}):(this[0]&&(b=n(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this)},wrapInner:function(a){return n.isFunction(a)?this.each(function(b){n(this).wrapInner(a.call(this,b))}):this.each(function(){var b=n(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=n.isFunction(a);return this.each(function(c){n(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){n.nodeName(this,"body")||n(this).replaceWith(this.childNodes)}).end()}}),n.expr.filters.hidden=function(a){return!n.expr.filters.visible(a)},n.expr.filters.visible=function(a){return a.offsetWidth>0||a.offsetHeight>0||a.getClientRects().length>0};var Bb=/%20/g,Cb=/\[\]$/,Db=/\r?\n/g,Eb=/^(?:submit|button|image|reset|file)$/i,Fb=/^(?:input|select|textarea|keygen)/i;function Gb(a,b,c,d){var e;if(n.isArray(b))n.each(b,function(b,e){c||Cb.test(a)?d(a,e):Gb(a+"["+("object"==typeof e&&null!=e?b:"")+"]",e,c,d)});else if(c||"object"!==n.type(b))d(a,b);else for(e in b)Gb(a+"["+e+"]",b[e],c,d)}n.param=function(a,b){var c,d=[],e=function(a,b){b=n.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=n.ajaxSettings&&n.ajaxSettings.traditional),n.isArray(a)||a.jquery&&!n.isPlainObject(a))n.each(a,function(){e(this.name,this.value)});else for(c in a)Gb(c,a[c],b,e);return d.join("&").replace(Bb,"+")},n.fn.extend({serialize:function(){return n.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=n.prop(this,"elements");return a?n.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!n(this).is(":disabled")&&Fb.test(this.nodeName)&&!Eb.test(a)&&(this.checked||!X.test(a))}).map(function(a,b){var c=n(this).val();return null==c?null:n.isArray(c)?n.map(c,function(a){return{name:b.name,value:a.replace(Db,"\r\n")}}):{name:b.name,value:c.replace(Db,"\r\n")}}).get()}}),n.ajaxSettings.xhr=function(){try{return new a.XMLHttpRequest}catch(b){}};var Hb={0:200,1223:204},Ib=n.ajaxSettings.xhr();l.cors=!!Ib&&"withCredentials"in Ib,l.ajax=Ib=!!Ib,n.ajaxTransport(function(b){var c,d;return l.cors||Ib&&!b.crossDomain?{send:function(e,f){var g,h=b.xhr();if(h.open(b.type,b.url,b.async,b.username,b.password),b.xhrFields)for(g in b.xhrFields)h[g]=b.xhrFields[g];b.mimeType&&h.overrideMimeType&&h.overrideMimeType(b.mimeType),b.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest");for(g in e)h.setRequestHeader(g,e[g]);c=function(a){return function(){c&&(c=d=h.onload=h.onerror=h.onabort=h.onreadystatechange=null,"abort"===a?h.abort():"error"===a?"number"!=typeof h.status?f(0,"error"):f(h.status,h.statusText):f(Hb[h.status]||h.status,h.statusText,"text"!==(h.responseType||"text")||"string"!=typeof h.responseText?{binary:h.response}:{text:h.responseText},h.getAllResponseHeaders()))}},h.onload=c(),d=h.onerror=c("error"),void 0!==h.onabort?h.onabort=d:h.onreadystatechange=function(){4===h.readyState&&a.setTimeout(function(){c&&d()})},c=c("abort");try{h.send(b.hasContent&&b.data||null)}catch(i){if(c)throw i}},abort:function(){c&&c()}}:void 0}),n.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(a){return n.globalEval(a),a}}}),n.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),n.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(e,f){b=n("<script>").prop({charset:a.scriptCharset,src:a.url}).on("load error",c=function(a){b.remove(),c=null,a&&f("error"===a.type?404:200,a.type)}),d.head.appendChild(b[0])},abort:function(){c&&c()}}}});var Jb=[],Kb=/(=)\?(?=&|$)|\?\?/;n.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Jb.pop()||n.expando+"_"+kb++;return this[a]=!0,a}}),n.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(Kb.test(b.url)?"url":"string"==typeof b.data&&0===(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&Kb.test(b.data)&&"data");return h||"jsonp"===b.dataTypes[0]?(e=b.jsonpCallback=n.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(Kb,"$1"+e):b.jsonp!==!1&&(b.url+=(lb.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||n.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){void 0===f?n(a).removeProp(e):a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,Jb.push(e)),g&&n.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),n.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||d;var e=x.exec(a),f=!c&&[];return e?[b.createElement(e[1])]:(e=ca([a],b,f),f&&f.length&&n(f).remove(),n.merge([],e.childNodes))};var Lb=n.fn.load;n.fn.load=function(a,b,c){if("string"!=typeof a&&Lb)return Lb.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>-1&&(d=n.trim(a.slice(h)),a=a.slice(0,h)),n.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(e="POST"),g.length>0&&n.ajax({url:a,type:e||"GET",dataType:"html",data:b}).done(function(a){f=arguments,g.html(d?n("<div>").append(n.parseHTML(a)).find(d):a)}).always(c&&function(a,b){g.each(function(){c.apply(this,f||[a.responseText,b,a])})}),this},n.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){n.fn[b]=function(a){return this.on(b,a)}}),n.expr.filters.animated=function(a){return n.grep(n.timers,function(b){return a===b.elem}).length};function Mb(a){return n.isWindow(a)?a:9===a.nodeType&&a.defaultView}n.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=n.css(a,"position"),l=n(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=n.css(a,"top"),i=n.css(a,"left"),j=("absolute"===k||"fixed"===k)&&(f+i).indexOf("auto")>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),n.isFunction(b)&&(b=b.call(a,c,n.extend({},h))),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},n.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){n.offset.setOffset(this,a,b)});var b,c,d=this[0],e={top:0,left:0},f=d&&d.ownerDocument;if(f)return b=f.documentElement,n.contains(b,d)?(e=d.getBoundingClientRect(),c=Mb(f),{top:e.top+c.pageYOffset-b.clientTop,left:e.left+c.pageXOffset-b.clientLeft}):e},position:function(){if(this[0]){var a,b,c=this[0],d={top:0,left:0};return"fixed"===n.css(c,"position")?b=c.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),n.nodeName(a[0],"html")||(d=a.offset()),d.top+=n.css(a[0],"borderTopWidth",!0),d.left+=n.css(a[0],"borderLeftWidth",!0)),{top:b.top-d.top-n.css(c,"marginTop",!0),left:b.left-d.left-n.css(c,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent;while(a&&"static"===n.css(a,"position"))a=a.offsetParent;return a||Ea})}}),n.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c="pageYOffset"===b;n.fn[a]=function(d){return K(this,function(a,d,e){var f=Mb(a);return void 0===e?f?f[b]:a[d]:void(f?f.scrollTo(c?f.pageXOffset:e,c?e:f.pageYOffset):a[d]=e)},a,d,arguments.length)}}),n.each(["top","left"],function(a,b){n.cssHooks[b]=Ga(l.pixelPosition,function(a,c){return c?(c=Fa(a,b),Ba.test(c)?n(a).position()[b]+"px":c):void 0})}),n.each({Height:"height",Width:"width"},function(a,b){n.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){n.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return K(this,function(b,c,d){var e;return n.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?n.css(b,c,g):n.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),n.fn.extend({bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)},size:function(){return this.length}}),n.fn.andSelf=n.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return n});var Nb=a.jQuery,Ob=a.$;return n.noConflict=function(b){return a.$===n&&(a.$=Ob),b&&a.jQuery===n&&(a.jQuery=Nb),n},b||(a.jQuery=a.$=n),n});
@@ -0,0 +1,3 @@
1
+ $('.folder-head').on('click', function() {
2
+ $(this).next().toggle(200);
3
+ });
File without changes
File without changes
@@ -0,0 +1,218 @@
1
+ <!DOCTYPE NETSCAPE-Bookmark-file-1>
2
+ <!-- This is an automatically generated file.
3
+ It will be read and overwritten.
4
+ DO NOT EDIT! -->
5
+ <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
6
+ <TITLE>Bookmarks</TITLE>
7
+ <H1>Bookmarks</H1>
8
+ <DL><p>
9
+ <DT><H3 ADD_DATE="1440415516" LAST_MODIFIED="1462470580" PERSONAL_TOOLBAR_FOLDER="true">Bookmarks Bar</H3>
10
+ <DL><p>
11
+ <DT><H3 ADD_DATE="1462469072" LAST_MODIFIED="1462469715">Back End</H3>
12
+ <DL><p>
13
+ <DT><A HREF="https://www.airpair.com/ruby-on-rails/posts/a-week-with-a-rails-security-strategy?utm_content=buffer2c657&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer" ADD_DATE="1439416512" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABDElEQVQ4jWP4jwO82r3q/2F74f+H7YX/P1k1DZey/4z/////z4AEjjiIMOADNgfeoPCZSNEMU/P/3z84H+4CmGarnY8ZmNg5UQxEthVdjAndZnTNuFwGE2PCkMEBfn98i1Wc6deb58SagQEezGhgYDxsLwyPBZi/brdnMbzcuQpFMTMPH4PllnsMDAxoXmZkYcUwmUfDEEOMmY0TqysYf3/5+P+EtxJcAOYK9IAz33iTgZVfGEVcIbWGgYmFmw+HDwkDmegC4mOBlV8YqzgTAwNqQvly4xwDuhh68kUWQ8kLxCRlBgYGBuv9rxkYGRkRLsBnEzabYZoZGBgYGHBl0x8vH8Oz86erp3BmZwCXscjdDoIyyQAAAABJRU5ErkJggg==">A week with a Rails Security Strategy: More security, new habits</A>
14
+ <DT><A HREF="http://carlos.bueno.org/2014/11/cache.html" ADD_DATE="1444819207" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACWklEQVQ4jZXQz0/TYBgH8G+7tlvbtd0vhwdgZWAmYcnCcHNoQgDRf4IEF0w4kHBdPHlVriRI4sXEi/FiTExMMEo84QERjAcT8MBO6GSD8WNr37bv60nC4lR8Tu/3zZNPvnk4tJnc3UcTlLH4r8xzXGXtwcybdrttJ1tamjy23O/Ln7692D2wtrOlpck/7fJtfynjKGXu5k59wyJeA5Rx/wUwxnEAoMm8fDafHwDjAUBXJOVsPhcwMLsYTMTCEQAIKZIKAIlYODIwuxg8F8CLLFscG5wAAC3gU08st14cG5zgRZb9J5AqzWtmh5G/1m+mAUCRBJl41MkkO5Nmh5FPlea1vwJcU85OjQ6N147IPgD4RT4AAHuHdnVqdGica8q/tTgFUtPzWm/cKGTMrh7iUgcAfD5eBADiUidjdvX0xI1Carq1hXD6Uvhc8UZ+tHJoVZfZ60zuKCnf33wWLZcrcIMOnl99+KE4fmXs3tNXawBWWhr0zS3oZjxWyF9KmJ/Jlm7B5h1KPVVQHF1SHU1QnJeNlQuDye6EGYsV+uYW9BaAWnZ+5lZ+ZP/E3vvibcX8zE8Y45ywqNlRf8iOSCF7Q9yM7h1a1Ts3cyPUsvOtgGenr1/u7d6yygoA5odkM8aIIQTtUEC3w2LI1qGR9+yjMZxKJqhnp8/eQCeE+Ne3dypDXb2RAdWsSqIghFVRGk5nG04/ZbbrcZ5LAQ5Y/1quEEL8AAwAdQGAXnn7ePW260phVZE6YyHlYlRTdTkgC4Lgc13XO2hazR+148Zu7aBRPWqQ2rsnqwB0APWfBQDwOoBO+EEAAAAASUVORK5CYII=">Cache is the new RAM</A>
15
+ <DT><A HREF="https://www.nitrous.io/" ADD_DATE="1452035535" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB4UlEQVQ4jY2TPWgTYRjHf8/LXUIqFCF+NClqbRtMq0sypJ5TRBAK6iCCKG4KXcShVCJ20EkQK1gQUcjUoa3aFrFDJzGTMUsi2tqldhE/ksFKM10vzevQXAjJBfts9/94+P/fhxPaTH//sN/X+fcQwNbm3u9ra0u2l06agcGYdQZhDDgN+GuwDbxHM/G1kH3nuSCZTBqlTfspMNIuVW1eHOj038xkMhUAw0VLZfs5cP0/ZoCRUtk2gBv1BMfjJ89r5O0uzA3R9YWV/MdFBVBF7rjE7FSapTevWJybpufI4boh/WyS2al0/dv1qGgiERSwXKI7HCIc6qL3aA9PHj0gEAgAEAp10R0ONyTAiiYSQSUVM0LTNX78/MXM6wUifb3cH0+1bSEVM2JorUVajgkPH08yGD3GueGzfPr8xXOD1lqU4dte9yIdx2E0Nc6fjQ1So7fYvy/YojF82+tqOZcrAnmvJb+LJW7fvYdSij0dHc10fjmXK+6cMWZd0cI0gGmagMZxKnWlaRoIgq4lAxDN1ZVCdsZtLwNxa07gomfZ5u6wsJrPXgK0crGyn2ug53dhn9/RoqH1Z5KB2KnLShjT6HgDrwXJVzUTq4UPL12z14L6nBgaOoit+gDwV7/VHrtl/gH6F5fqq+OdmgAAAABJRU5ErkJggg==">Nitrous</A>
16
+ <DT><A HREF="https://www.youtube.com/watch?v=bSbla50tqZE" ADD_DATE="1449839670" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB/klEQVQ4ja2Tu2qVURCFv7X/SxJJMBaCgZgIigQhD5BSsbDxPYKiz5BnUGNeQKOk1dLW2xtY2ATMpTBihJxwzr/3LIv/xESxERwYhtnMZc+aWQAYkqEa27TWW53V8Vs6G8v/EAFsL127q5RWEj6XpKmACdtNkhJA2CGpSzAM+zjQwBHvFz99fqXtG1cfTKh61EoYUF8TJYHB+LTd2Bcwshm6PKwjtNrJHjg6jzsCMBhKdQNtY5eC+vy+uB2N1IS1Wmd7roQx1BaSjW3a60t5tPNFcXBQVzMzNoAtJGRHYCzmUg6mO6MclsPOSPlowIV79zX//GW0N2+NusFxlOGIMC7FzmH1OUynEm5ymGLIYRXjEnYZjdLU8nK78GyzvbT5InvhSpdHHYVfsZRwU+fw6ToAY7nYNC0AZXs7D96+U/5+mAKh8hus1CXcAQ02Sf10kZKGu7vd/vpT7z9Zr7q9vaaamYaqguIeTgmg08fLi98SzLrfz8kuoaqiHP5IaXJSaaK1yxg2ehAlFPC9juK9SprNONskATZQOml6poSDGGV8MmN/B9FYTdh7dYnYQOlxK7XYSONIJShxerDjwe3++51N59gQwJuL83faipVin09m0qIFNaCaCJRUsLKJocQAOOoKH25/3Xn9r9z5uxjS1piia2f0TzqfUHrrDJ1/AqtRUJ+QQfrIAAAAAElFTkSuQmCC">RailsConf 2015 - Amelia Bedelia Learns to Code - YouTube</A>
17
+ <DT><A HREF="http://rubyonrails.org/doctrine#beautiful-code" ADD_DATE="1453229666" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABzklEQVQ4jX3RzUtUYRQG8N+9d2YcxynKjVBEtKjUPohKcFO0CdoVEkobCcogaN+iAhfStn1/gIEEtYvAkGiTkRUK4sY2oRVEpenk3Dve22I0JlPP8rzn+Xifh21mkDAj3LjPiDKi7bAbASFMs3+Ka41vuS0wAbJJBkK6Am7AMjsKdLzjboE9MTP/EGR1oF7CI2Q1lvJEU/RGXFnhXI5igRcrPE55HmxnfYKOJoZSesqoMF/lVonmkJeHmQsblSe5OMvoG/a95VKJ8YCeDAu8/0nXKZ4k/PhFyoaEU9pqlEP6mhn+TTkhCZiNuNPK/RHKx3l2ms//EGQEJ3j4jevN3I4p1oibyCc8iBmtMreTwmAdF6yn/XfGKLYylqO7QhxSCPgec6Cbxc1yCmGcQyNEu+kv1sEJoiIKvEppn+Zso/L6RBN0tDBT5guuhuxN6ldpmXCJpy3UIgYu8+g/BxWqGIrYVeBkhTSoK2UpQUZ6lOFP9G/6hTN87OReyLGIvDpBthZslrEK51nYMoPXtGVcSAgi8hFhQL6JICCd4uYH+tbbaiTIQZnOVbIqXyOs1o9qy5RyFGrMp7Ru5iCgXl+Jlpg0WtstIiFsJz64RYXwB12NjNhq0EGwAAAAAElFTkSuQmCC">Ruby on Rails: Doctrine</A>
18
+ <DT><A HREF="http://www.codeproject.com/Articles/575551/User-Authentication-in-Ruby-on-Rails#CreatingtheUserModel26" ADD_DATE="1438887496" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABeElEQVQ4jY2RoUtDURTGf5OFNd2UWWThIQysx4EYh2XD4B+g9S4YDUsvLS0YF3aD0SKCaWnBtOQJFmEgYhDlPRjjwZLlGa6bm17HTrnnnnu/j+/7Diyp8dMgbTab6bI/a8vAcnzKOOjT7Zp/SbJpF+/j/tkh+SNBBFSVB0MqsqKChoUo2sEYdxcBiwftI1CFq8cs9XCbl5sj+u0AtQCCVY+F3wOrUCqVAKjVagyHQ8rlMoPBgI/PVRT8akajEQBJkqxmwQjEcQwCnU6H181brocXjIM+x+8rWDACqhN6rYh66AKcevNtIeNbowIH51lyuRzFYpHJZELUir0W/igAsNadl/dlR2jzWBvP1jpfswzUqUQVugYKhYKbKyBgjOutzgU9TyDf/qfVO4lpnUSogugPJLwrLjB4LYALL+QN4W0Wngj0iBfCzPjA1Wo1TXYT1p/XSZLEAXsRYVin0bALGK+CSqVCEIx5yedpt9sZY0wqAlsbe3/+fgEZ+4xZHn0tcAAAAABJRU5ErkJggg==">User Authentication in Ruby on Rails - CodeProject</A>
19
+ <DT><A HREF="http://www.ebpml.org/blog15/2015/12/why-i-no-longer-use-mvc-frameworks/" ADD_DATE="1450220622" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAEklEQVQ4jWNgGAWjYBSMAggAAAQQAAF/TXiOAAAAAElFTkSuQmCC">Why I no longer use MVC Frameworks? – Platform Strategy &amp; Architecture</A>
20
+ <DT><A HREF="http://www.yes-www.org/why-use-www/" ADD_DATE="1454204543">Why use www? – www. is not deprecated</A>
21
+ </DL><p>
22
+ <DT><H3 ADD_DATE="1462469507" LAST_MODIFIED="1462469751">Business</H3>
23
+ <DL><p>
24
+ <DT><A HREF="https://www.docracy.com/3884/contract-of-works-for-web-design" ADD_DATE="1441147144" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA/ElEQVQ4jWNkQAJO6y/9Z8ANDv77zexzIEz7C7IgEx4N6MCeme3vCXRBFmwqt7iqHEDmn3j9RaDlwguD//8ZtIkygIuHyxGZ/+XLF30GBoYL2NQS5QUeHp6LuORICYNRA3AArNFIIEVS1wWMyJxvX77th7Gvf/jOvfHRR+lwJYHHijwc32Hi6IkMxQveu++UMDAwGDMwMDCwMjGW//n3X+rE669vfv/7Pw+q5Cy6C1AMYGJkOPL/PwMH1IAfXjJ8D/Y9/6z859//mVD5jwwMDAI4Dfj/n4EjSEHgXpKqyKP///9/+M/4f32qhogv439GkZUP3kktvv1ODd0FAKI1VHyg9kzSAAAAAElFTkSuQmCC">Contract of Works for Web Design</A>
25
+ <DT><A HREF="http://gitmoney.io/" ADD_DATE="1454365162" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACaUlEQVQ4jV2TzUuUURTGf+e+d74ccRzFsA9SrCTMXe0qQnBRSIsWLaJ/IAhatmgx+4ratYgIAiFaRlT7XGhhEIT0IW5kUFDUcWZ0Pt6Ze0+L930Vu3A259xzznOecx4ZmHuiqoqIAKCqIIIBDHLE74kMJfKrYpNkVSV5AULbd2m4Dk597BVyxpIN7JFG9v9kAXbCBsfTeWYGzjDRM0RgDOutGl9ra6y0djExqgMEB6mq1F3Ig5OXKI1dI2tSrLeqdNRxKlNgsb7OzM935GwaBUQViyoYQ6BQ6bYojV6ldGaKV+XvPC3PsxHu41AGbY6CzWKNgbipAhYRAqDuQi72DlMam+JleZF7vz+QT/eQCSwpharvUGm3SRmLxkQigk0YbfsOd4Yn8XielxfoSefIBykavkPLOYxIZF4IRNCEg2h0xSBM5IdYa1bZ7OyTMZam6zKS6WMkV6TjHYryp7FFzYVYMXgUK0TVBMFgoo8K1hiqvsWNwbM8PH0ZhzKc6WX6xyxzu2UKKYt6j1GiO/AoG+EeJ3IF+myG0Dv6bZbZjSXGv73g/vJnNN6/iEY8Cph4GESEj1vLZIMUt4cmqIV1jEThmgtp+G68bYkyJdqEVVG8Cn1Blk87KyxUVnk2fp3tTpO3m0t4wHeb+KSAaoRCBQ45UAIjhA7u/nrP6/M3eTN5i0d7V1hubAPKhd5jBycvIqgoeJBETIoSYGj5LqrKdHGUmcFzjGT7cXj+NraZq6wyX1+jrQ6DQfFI8ctjTVAQK9Cj1F2bro+FFBNmTUDepA61ALGYUIQInpdopUWbI1ZszF0Ud0mreJR/kOtFlTNf+YsAAAAASUVORK5CYII=">git money - Work from anywhere</A>
26
+ <DT><A HREF="http://blog.teamtreehouse.com/calculate-hourly-freelance-rates-web-design-development-work" ADD_DATE="1439600117" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADDUlEQVQ4jV2TT2xUVRjFz/fde9+bP50WEpDEBljIomFn+JumISZlpyZuOibqRqkDpRFKqxA28CJs1NimCeoQjQtiIjILFrppYkJIDRRoXAJ1US2xISbSKtN57bvv3vuxqNOoZ31+yVn8DqEdASVIKKEkAMDQnbHXWHAWzPAunKv3fjrV7gEACAIADABIEgZBEkrC4MyJPUMzY9cJdF2Y9utY7wdkHAkYAgJBQBAk6yy1B9R+OrlDsT4NQs0UjbGpDRCyUTkq2DS7VO8dfw8A3r55fLt3cbjSP7G4seDY7ZE3o2J8z5SiYRHRNrUeAEzJFPJVu+Sy/CMAGJwZ21Mslmc7u8zPx26fqgIAvTpbK3VnHb+ZYrTVZXlOzEZCCMQEVvSrS+1w/dDk1Es3Et0TPZ025fggfECe5YsPs6VdutPFmojYOx/AJM77qhe6G6vQ/fTvdOFKf30RAPUUmq+bODqYp9YqzRog3o2S1k3XkgpFwgIGIEpxyrnrC442l7duelCbrZnl+eWAgBd1rJCnVgAwRNC0TeGKLhMIHEQAQQzBt8K0L2R8de2vll6eX9aNasN767/JVmxKhiMJAiKitahC3HQtASDMgEjInXeHLvdOjMD4t2IVnWlUG6u16ZHzVEl/8bl9h5ksmCAiUrBNWfeAREQAYmYlfKA2feqNzm1dExLCzaO3Rvu7nt+USFred7lv8jufuTkdK4DIA4Cu6DIhkBGBFwnMhutRwaD1ZOXG0uPfpzZ3b78gQZxWfHHo1uicEPV4GxwBUSWqEJd1tgqEhUJnQSHABxcyAkKw7utGtWE1YSVfs4o09+lSdARBVNQRaxF59BzurxEAHJ0Z262IPibFL68bDuetewjgKhEdYcM7vfU5GxUTEySE78XmH3zRNzm3oTIADN8ZfQVQ51Ws9gIAMcG2LEgRTGzgMncP4j/87MD4D22GNh72z7sGrg2oLTt3vMtE75PiF4gZPvfzIuGTPxcefdmoNvy/mf8sGLg2oNqFwR9PbjMd+jgA5Cvu868OT/7x/w4APAOCr3nH7qFnOAAAAABJRU5ErkJggg==">How to Calculate Hourly Freelance Rates for Web Design, Development Work - Treehouse Blog</A>
27
+ <DT><A HREF="http://careersherpa.net/how-to-prepare-for-an-interview/?utm_content=buffere03d8&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer#.ViiVDMOfKIc.buffer" ADD_DATE="1445517416" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACPklEQVQ4ja2TS0hUcRTGf+d/nzPjm4Y0EAmiyEiEoheYPRa6kGgp2aJltAhqL0SLqEWbWrZsVxs3IdQmgqgYV2ZlKYaYLXTMRzPOHe+9/9NiDAXb2YGzOB+cj8N3vk/6hmeVXZTZzfJ/IXC3DyK1RkFEUFWsbuHCFraDwBgh2rDEieIYoRqn+J4hFwpxrESxYi14rpAJBNW/BAqOEUrrKR1thpMHPTKBw556j7fjZd5PpbTmhfNHQ9qafN5NlCjMKL5XIzHGKKUo4Vinx82BRr58jxktrONnHa72NhP4ljtDeb5ORyxXYbCngThOEJHaBWkKuazh1qUWHj9f5MMM1PkOj0ZWON7h0L7X5fC+DIFrePJimf7ukMB3sZtCmEoVjuz3qHMN334kNNcLmQBsLLz5HDO3aHn18Tf3r7dz7WyO0bEKjrNNRIuSC4Rc4OC6AqkiRnAEAs8lSSx3ny4ydSHixkArHfklHoys4ftOTQPPGOaXEvzA5cyhkIXlmHJFWatYQj+lpyugryvDw2cr3BtZoLe7gZYwJUlrb3XDUJieSxgdX+X2YCtNjYt8mo851RlSLG6wnhqGLjYyNhXRlBUKk2WK64YwFFBF+odnNVWwpFw+neXEgZDiakxhssrriQ3a8g5XztVRjWJ+/kp5ORYRWRfXKIogfcOzWjOfUKokqFoEA8ZQnzEkiVKuJoSekKRCGDg4ouh2J9YGpSG3zdmqWFVcF5o9D6sQiqJ2a3lHFqzdmWxVSDd9q/8I/h8mOfO3kCoKywAAAABJRU5ErkJggg==">How to Prepare for an Interview -</A>
28
+ <DT><A HREF="https://www.jrdevjobs.com/" ADD_DATE="1444789054" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC40lEQVQ4jV1Sz2tcZRQ99773vR9kGkrXWoiOJqAN1iipdGFAStOKYwzWhd0o3Yktgm6UDL4Qwfpj1a6VbrqpizjR1N9akGICHYUgJE0npuYPkJJJO+973/vuddF5pc3ZnMXl3HvPuZf001RdqR3xOpk07YZmYMqgALTRaAwbY74QkUPMvOScO7WwsHAdAAFQAGBb6IZJqU4BWr25ZIgyyCWAAXAQBOfCMDwMwIdheDgIgnO4W7sHhurR4o78HdX4CWa9nGd45DXAnz45XlPVQ2VZOgDc5/HR0dG0mg4AnDTthjh6yXZlLarxCEyyeGsmfvT8xeXtMMCfxhgDgPt8zRhTjI2NmWoT1gycZvnNWOi43ZG1uEYjcUKLvRkMdW4nb/rS/gpguyiKnwC81W63XbvddgAE/TDQD056c8kQsV6OB3ikuK1r0XZ+lD7B1htTE3svfH3lFgA0Go1JZh5X1aVWq/UDVV52Nfk+rvHjtqs3FDiSzuT/AsD09PS7YRh+TkTw3qMsyw/uJUoZRDNw2sw3xdkXbFf+ilN6jAhXdA7DgDJB3/Peq3MuFxElovcfOEkFKeCIqOxnHVWBqSoRkT5whd0W9KP0YTOQ/BzV6Nk8101b6PPUxCpAAuLPiIiNMSkzk6p+HOwWF5DFaA8fKHa0E2t+JPnQ//PO1MTepbWb+erq6h/1en1ZRDre+7OtVusCVeL/snT/QCTfRgN8wHZ1Ay6ffO731119X+/L0uMgEV1T1bfn5+fX77dLAHAnSx9iI9/FNX6y2NGOLfTFwVm7/uorU7+ZJJ3I81ziOGZr7S9bW1vHAKDdbnsAwno23R8Y+Sbec1eskh8fnLXrp0+OD5aKp4uicADEOecAPOOci+5/JLal/Bil/JTr6nUt8mNJEzf0BILzF5d3iGgpDEMDQPq8vLKy0qs2BwCOIxp2uW6K6MvJLDqXTiCgryAAxHt/pizLqwDCsiyveu/PVJMr/A8uYIpkeIWjGwAAAABJRU5ErkJggg==">One Stop for All Junior Developer Jobs | Jr.DevJobs</A>
29
+ <DT><A HREF="http://playbook.thoughtbot.com/" ADD_DATE="1438007214" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACG0lEQVQ4jXWRP0jVcRTFP+f7/SVlGkkkiARB4ZCm0KBpggiBRhENDbk0JARBc2NTQ9DQ0F60RBCtkkhQQ76CKHq9nhhB/6gpIvBpKv6+p6H37JfZHe8995x7zhWFmj1waL9jfgYzRmAPJgNArJH4jJhWHu8OVV+8a+wIYHZwcBu1pbM25xBfkWZEmk+wKEcF2J7kLttHZToNt0Jr8+2hUunnb4Xacr/xhNDVnPQpJo0inRfsgiSLHzavkK8j2oN1kdryHPA4A1hQ/rwlpUkTTwWFywlXA3po8s8hhOSkjiAP27ohaQryC01N2ad1CwCzfX2dTlwxuhfMD8uHgb318QfLszEPMQ+e0Fq4dmTu5ce/CAwqdXe3OWSXjI4J3iDe1oddhm7hB15dvjI8P7/Q2MsKaXpqZWVxZ3OsxpTfGahUXgvcIH/W03MwJ/a1ZdlK8XPrFzzp6dnnGDuUQg4QkkOeWQBxTU5BCcAhxdz+MlIuv18nmO7t3d6SdB8xIsgNaqgXLQpsiIZHi/LpsXJ5MQNoCmEL9m5gq2ENWDK0Fi5MQM3QDGSC9qYQtvyVwR8hbkquJmtcMF43OkXyjIJ6bSaLC2FDHguSq3YYAEp1wgR6ChoEVYBaMbsigYEdyRqxUkVwog4MOB03LtuMAi0U8tloAcEprJNALHQHJfrBYSP+H4K6atykv1nvt4XWGFeNv28G+E99a41xFeAXclDmv4C+2V4AAAAASUVORK5CYII=">playbook</A>
30
+ <DT><A HREF="https://weworkremotely.com/" ADD_DATE="1438122481" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACfklEQVQ4jXWTzWocRxSFv1tVI7WnR45kkIkIiJESIglkg40VBZKFyc8rZBP8HlbeINjZyskuJBsjsFfxNvIbGNsLm1gioJHjwbYkwkia6e6qe7Po1s8mVYtLQZ3D4ZxzxcxMVVFTnAgiAtTTzJr3/58AUJZDjo4HeB8QEQTBh9CQOrwLiKtJRRxOBJoZAJImVA2zSJaN4VxgNBrRarVwXhAxUoqUVYkgYAbiyPOLNYGqAkaWZWxtbTMYDFhZucHOTo+jwyO890xMdJicmsT7FlEjgiEmBDMDDFUjz3M2Nx+z2+vx5Rc3WV//mUd/PGK2O0vevsDa7TWuXb9GdVwRvEMcBBHB1DBTzIyUEtPT04gI/X6fxaUFNjbuE6tIURQURVEbKyAiODNDG7Cqohopy5IXL5+hqrx7+467d3/iwcOHKGepnKQVADAQBE2KKfz62+/8ufmYvJMzNjZOrCL/vH5NOSrIxscxU0BOYjxT4L3j6bPnXF2+wtx8l3v3fuHWre9Z++E2AKPhkJQStYhaTag9NJxzHA9HfL66wmerq3TynN3eLq9ebfHVza+Z/+Rj7tz5kXa7TYwREV8XLcZoe3tvmtY5siwjaULEIQJ7799TVIkUK2ZmPsQ5h6qSty+SZW2CYYTWGKYJEIqiwIUWw/0+g+0nBFE6l7t80F2mihUp1Z05rbJ3nqmpy3AuCecDh2/+5qD3FxOdCQ4rR2f2CtmFHE0J1YTzviY4XRZxgOGbzg/2+gjG23+HfHpjhanJS5gqnC5co6BuIk2atbNFMeJgd4tSA4vffMdMdwFVPQOeQAScnGOUpg9H+31CecjC6rd8NLeENIiTf9ZcgP8AfdZAN7czJtQAAAAASUVORK5CYII=">Remote Jobs: Design, Programming, Rails, Executive, and more.</A>
31
+ <DT><A HREF="http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html" ADD_DATE="1440698765" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3klEQVQ4jWNkgIJ/aUz/GUgATLP+MTIwMDAwkqMZ2RBGcjXDAAuGSEQPA4NFAgMDhwBC7MIGBoYlKQwMXz5gugJDs0MBqmYGBgYGgwAGhow1WF2AaoBFAoK9IAGCf0BtVXFgYJAxIOAFmM1rChgYTixBiCcsQLiEgYGB4ckFuBRqIM74g9WZGCADYS8THmVEAcxYYGCAeGHPFFQxlxwGhpAJBAz48QESDiETMKMMpvkHqjiqAScWQKKRgQERcOjgBKo4qgErSiA0ekKC2XxiAUINFFCclCnPTDAOudkZAEkvQ+XgMBz1AAAAAElFTkSuQmCC">Stevey&#39;s Blog Rants: Get that job at Google</A>
32
+ <DT><A HREF="http://blog.thefirehoseproject.com/posts/the-ultimate-guide-to-jobs-in-web-development/" ADD_DATE="1438210476" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACrUlEQVQ4jX2TS2hcZRiGn/c//zln5sSZzOTSyYwaSdK0KaaYQaUuhIpoQEEQF0VcuZKKFLzQleBOXGTRlaJupWt37sTLSpfWG02lUq0ommScZMpk5pzzf12kxSjFb/+838N3Ef9f4twnCXk5w1MPLrHauh/HI+COY3xKnw1/Z+6lmCcePsrKsXWZnaYYrNl319rM1z2N7DpwgQEf0dXf/wl4zNN8aIWs8oKG4xc16LcEKJjs2k5RfnX1M06tnKcbX0KyA8XDXVv1pxWnbxP74zbXFq2GXBZD5HDSMOTFO+FS2OD7M+Pb1IFB49UGaeXlKHZvSmRlXDGiDO3kCv3CyBxWjYP5qKCybYedPXwQs+zOEPLXwmCvwngUqDclJ8jSoEYmJRHUqol16ms8f2qOZ/n1n4AHKguk0TO4StPm2iSrHcKJSSu2xnK9sVQg5wBIFMfPlXNJnd92X6dT20Qyz6TeoF57lOVjio7ew/S8RBu25j35MIcf+xa+7eF6OeqNYy731lmYv8igOI/ZF+Kt60Mmmwm1Ko3JEbPTBXjYbYrtpSrFhBNgXOmjH3aNXwZYd1qcbF7G65x434Y40iQp7N7OPrE3Z8JCkPXanp3FlJDqYFtmkAer7ozwtZQ96RsH1ncu2JGZ0S1YFhClF/FuSfJnDqUdTF6SSyIeb2V0E0cCUx7xe20in01To3AuDBOxlzluZDFl4kCCAVDDEKwKFgSFF1fzUPeVqfKKn7KT282YwV2RisSDDh2YAXsYwHQNOwGKBRVRnq64P/z+fbYxaqZVi7WOiP99nbcCDEU3CAsRHJnABFslXEicLgozsUmHlLOIV4Dmnd5rJqF8coq/Zn34uHTu3Rw2P5TyQ6oW8xPLUC6RRHPA3RiLwBJica3Gl90a7/3s+fpzaf82dhPxd/XP4ugdHQAAAABJRU5ErkJggg==">The Ultimate Guide to Jobs in Web Development | Firehose</A>
33
+ <DT><A HREF="http://www.astuteo.com/estimator/" ADD_DATE="1447935782" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADAklEQVQ4jX1Ty09Udxg9v8d93zsMzBSxBePEYUiwNSgpKomGBIxJaQzGWhZNuuiqi/4DrV101UXTpP0Lumpjm/SRNK0kLjATEAlSbQQKhYCIU0XFMjDve3+PLiYiaNKz/XLO9zjfIVprjhexnj8FUXUQ91fh+4sv1XdhL3nl3vuYmv4AYyNvPF2Z8+aIRZy2lIinO/KxdPtK0Pn6725Hx5cAxDMK0VpzrK69h+y1jzB1PVOcHfenlxfpXEEilIBLCTxuwDYtuPFG2AdSOvPpZ7+2nu57pz7Bd9+OYTx7uLa24NxemuG3nmyhxmwkuInAMuB5PgzGwABQoSGmb5HSjalenO6rryBGR47MT1x1Jx5tYFMZSFgxvMoo9vUOyJa33126N3Kl3bydZYxREELA/QAkEuzZCnTJdckvixvYIjYC0wSFRiVUOPTxpW9SwxcHthwPUoUwmA1GDTBmQpVrO7fjzqHMZmDCsRiDQSgoNGyDY3vy5tmN0fGhv/7Ism4RoYFoKA0QUYXK540dgVe6jo01eeZwUUkYnCJhe0gwA2s//tA2b7sIqnm4VEGERWipgQMpnbhwfnRHwOvo/L4hmRwWT7fQ4jUiMDioEqD3F8g+ESJJCRzTh5IhJLfAT/RX3IOp7B4b/7z4VvWf6zdZLIiDQ4BCg4KASgklQ2huQkNAaYWouA27t0/2/HzFByA4AHS2thVbncmGxzqPTdgAGKAVdBCDaGzW8uFdQioF6HpL4N8cLc9PXmKe9ZgCgHHs+N8cESoSdTIoIsIQ/+SLO9vnP9zIhRGisIRSqYBCoQpB6yawWPMsB4Coq/vqMo/1VJUBgwBaK9RkiDu//XT4iRKEo4aK5cDpPqr2nx1cf21w6Gs31f7V81cuFjPz5wZm8st3qSQUxfI2SlEZ1uA52TLQn2tK7H8UTySXm468+Tl8f+HlMPn+onu0p3x/ZtYn7Wnd0HUmSp88tZo8fvKy39w6yh0nB8t6sDtEe8MEoLK+PlTKrfX76cxlOx6f+L8I78Z/Z2A3+8gJLOsAAAAASUVORK5CYII=">Web Development Project Estimator</A>
34
+ <DT><A HREF="https://medium.com/bad-words/why-twitter-s-dying-and-what-you-can-learn-from-it-9ed233e37974" ADD_DATE="1445360988" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jc2QyytEYRjGn/e7nHMmZk5ukaKUHYrIwsLC34CFslZGGsLCJXYs1EhTs7GxNTvFX2ArCxsryaUUjRkhzHfOazFuM+fITp7d1/O8v/d5P+BfSO/HE7iYivzkMzPFbuaSNfmF3nKPAACZCZYahUjU266ttmfPujZy30OVV4k4+0iBwMJSp9LR07nY6m4J4COsbJhYg7fRIjrnD3vGCu71TIsx3jGYK76tZWmry/u69WZRXsm8QJHnz5wXjuaYmTzjbZUMAwCDREQ1AYAKu7lYixfd04RkiwbKfekoKEcDAAINQODiEjjyvrAUsIlgufbnOwhgYgDnACCfPSUfTYmtXRsQX2NBAABUinHfEg8AoPMG5Bf/WDgKMqJLoiEA5tuO9F62Ox31o3qaFd3qnAGIXi3XCaTfAXQQViTbnkpmu9N1pGjYqrB3SJIXDhjc7IegIRCdgIgDoLZU5q5qbVQJ2UokUkT0FHo6eEciM9kXbn6pkVdq683yyG+5v9EbKVp4zoYta9gAAAAASUVORK5CYII=">Why Twitter’s Dying (And What You Can Learn From It) — Bad Words — Medium</A>
35
+ <DT><A HREF="http://www.frankwiles.com/posts/2015/day-i-did-something/" ADD_DATE="1448823910">Working for yourself: The day I did something</A>
36
+ </DL><p>
37
+ <DT><H3 ADD_DATE="1462469479" LAST_MODIFIED="1462469490">Community</H3>
38
+ <DL><p>
39
+ <DT><A HREF="http://everydayfeminism.com/2015/08/10-ways-well-meaning-white-teachers-bring-racism-into-our-schools/" ADD_DATE="1440860964" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB20lEQVQ4jXXTO2hUQRTG8d/cu0k2WR8hWMUuJIJBK/GRaBNEEMFOSBrbNAFbLVTSWEQsLbSwtLdVUCNY+EILlaAgQVCxEIuEvDbZOxaze3cTdZphDuf5nf+EOC3634kIzTvLCBmxQRFLe+WfATuDA+oF6wU96G7bs9K5M+CvYAwe4sI1ho+mdwjNDjqdIc/TIwZCTJUHR7n8lN37uPeNhdf0pHEq2yoVWGm0R6g1qx84lYJvnuX9Q3YFiuRXKSsXyKqcn2FojF+LPLnN0leynFhwYpKl7/z4QFcgxqaIWWA1cnGOM5dYX6K6h+GTXB9Pygscn2T+Lo22kJmARqSac2yKT8+Z3MvjO4yM0d9LYzOJNjfBl5f0hrRKZKXqeZ4cawNMXWFkPI2WVYnNOTc3mvOGHWsMzbXU19h/MK2rNsDiO4p6AkgLJilhCVJL/VjQ18/CPLfOMXSYlWV+r5B3pe7iDmhDa4Q8sLbF4htGJ7jxkauvOD3DBnpqKUlWabYeSm7y2SNmkyHy+Vm6izpvH/DiPqs/ySOrSyw8or5MFssOQpwWS5C2sN4BVbfEfl3qpE9LtTLBdpQrgT1ZG81YpHX1BKpZoq/zw9GBcovfRmNbhdRNlOix/d8E/gCSlrm0ug0ZZAAAAABJRU5ErkJggg==">10 Ways Well-Meaning White Teachers Bring Racism Into Our Schools — Everyday Feminism</A>
40
+ <DT><A HREF="http://www.wired.com/2016/01/nascent-objects-an-ambitious-plan-to-stop-us-from-wasting-our-gadgets/#slide-x" ADD_DATE="1452621903" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACSklEQVQ4jYWTMUsrTxTFf3N3NjKmcAWNGkI0bCLGRpCIYJPPYGWpvR/ANoWfyMbaTtsYWBHBxmVhIzFujKtGd17xJ/nHh++9A7eYO2fOPcy9VwGWv0BEsNZi7c80mT4opVBKAeB5Hvv7+2RZ9i3/E+x0iIgFbD6ftxcXF/bk5MQCVik1ufvGn1bK5/OTSlmWMRwOOTo64vT0FNd1ybIMkW9PcJRSLcdxsNZycHBAs9nk5uaGNE0Jw5Dt7W22trZYW1vj6uqKt7e3yb8AOEBrnGg0GhwfHyMiJElCGIYEQUCtVmNpaYnNzU2ur68ZDAYTEadWq7UGgwFfX18sLy/TbDbxfR+tNWEY8vr6ShRFWGvJ5XLs7u5yf39Pr9dDRHAODw9blUqFXC7H5eUlcRzTaDSoVqu4rkun0yGOYx4eHuh2u4xGI3Z2duj1esRxjLO3t9cyxlAqlajX6wRBQBRFlEolPM+jWCxye3tLkiSkacrj4yP9fp/19XU+Pz9xrLUtYwwzMzNorSmXy7y8vBBFEUmSMDs7S7Va5e7ujufnZ1zXZTgc0u/3KRQKKMBqralUKtTrdQqFwoT08fGBiOB5Ho7jcHZ2xtPTEysrKxhj0FqjRMRmWTbp6+LiIhsbG6yurmKM4f39nTRNcV0XrTXn5+d0u13m5uaYn5//z8FPM2+Mwfd9fN/H8zxGoxEiQrvdpt1uo5TCWoseVx67GE9imqZ0Oh2CIKBYLOL7PuVy+dveAP87+B1jwvQWLiwsICLEcTxx8EeBf4mN8QsVcQtdDnsbWwAAAABJRU5ErkJggg==">Nascent Objects: An Ambitious Plan to Stop Us From Wasting Our Gadgets | WIRED</A>
41
+ <DT><A HREF="http://www.inspiracy.com/black/abolition/abolitionofwork.html" ADD_DATE="1454586366" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABJ0lEQVQ4jcVTIXLDMBBcd/qBMukJMnNZDBWmMgUGKj8oFE1/4MA8wYFmCZR/IDMX2iz9wRZkrKZNC9J0pjsjIu3u7aykjCRxA+5uEf+9Qdt2WK1ekOcLSPmELHtEni+w2ex+diDJGHtq7QgUaSllqbWjEIZAQe8rfgeEEBNJCEPvK8bYJ8IwHNO5UpZCGNb1/sNgmiyEYQjxYoL3FYGCzq2plE0JJy7OI4cQGWPPECKrqk4CpSxJsq73Say1I0neG6PRNAd03SvKcgkhJMZxSB0JIbHdrgEAUsq0P5sVp3JJ0pjnTwV+TXUOrR2VshyGI72vmE0vcbc7oGlaDMMRUj7AmBms1Re31rYdynIJ7x3G8e2U4FqcJ04JrsV8vgIA/Npgwv9/pncFQzoCK4IeiQAAAABJRU5ErkJggg==">The Abolition of Work by Bob Black</A>
42
+ <DT><A HREF="http://www.ashedryden.com/blog/the-ethics-of-unpaid-labor-and-the-oss-community" ADD_DATE="1440434122" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABdElEQVQ4jWP8////fwYKAAu6wPFnnxlOv/7G0HDnA4q4rxAHg78sL0OQihCKOCOyCxZce8NQdP0tXhsL5HgZ6kylMA24/OYbg/3BxygKdQQ5GBgYGBhar79juP/rL1zurIsCgyI/O6oX1t9HOHmOviiKU4NUhBi8d95jOP7lNwMDAwPDi6+/MA2wFOOG2+guL4Dh9FBZPobjUO99+f0PLg43wFWeH0XD8WefGZ5/g9h45OU3hgUvvmINExZ0TS2XX8OdSgxggjHW3XnH4H38GU7Nljys+F3Qev0dXLBBRYBBhpsVJSAnXXzJcBwtbcANePXtNzyafIU4GPL0xVEUvfr2m2Hho8+4vcDNygwX2PzuB8Puhx/h/HV33jF47n2Ikg4+/0awWSAGMDEkSHDDQzr8zAsGhjMvsNrIwMDA8OkXIhrhgVhhKI4zoHyFOBhWmkjA+ftfIqKUET037n74EcWJqgIcDLoiXHDvwAAsgDEMIBUAAOrmmBH9ElF2AAAAAElFTkSuQmCC">The Ethics of Unpaid Labor and the OSS Community | ashe dryden</A>
43
+ </DL><p>
44
+ <DT><H3 ADD_DATE="1462468970" LAST_MODIFIED="1462468976">Databases</H3>
45
+ <DL><p>
46
+ <DT><A HREF="https://learngraphql.com/" ADD_DATE="1444791973">Let&#39;s Learn GraphQL | Learn GraphQL</A>
47
+ </DL><p>
48
+ <DT><H3 ADD_DATE="1462468673" LAST_MODIFIED="1462643343">Design</H3>
49
+ <DL><p>
50
+ <DT><A HREF="http://www.miraclesalad.com/whatthecolor.php" ADD_DATE="1443115348" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAArklEQVQ4jbWT3Q2DMAyEzxFPdAn26QgZgXk8AiOwD0uQ1+sDieoEt/xUPckSsnwf5wQAgLmsvN5XWcMlczDPAoDUTNENQgVLHQEAAGmI71jZlIaINER4kK7aQ4HkgM6ucEvd8chOdg2pEsgI6ZfJdfXLBBm3MVMMmSh2eJ0jHk8f1EhCa7aQUwSvSQXtLeT4ZbY6gzuHaF/Kn6/xo6jgOsf2E979dP9LUFJ4bVN4Ae5/RiIsg4ulAAAAAElFTkSuQmCC">What the Color?</A>
51
+ <DT><H3 ADD_DATE="1462461084" LAST_MODIFIED="1462469694">Typography</H3>
52
+ <DL><p>
53
+ <DT><A HREF="https://www.viget.com/articles/css-typography-kerning-ligatures-swashes-small-caps" ADD_DATE="1459530436" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABhUlEQVQ4ja2TPSxDURTH//f2vaaI0iZ0EBWbxCIEg8XC0viIxNJuFhIJA4nVxGCQMJAwGCQmC5FgEGLDQkhIDBgaGhL10ee9+3EMjTZ49RFOcu7wv+f87vnf3Av8Mdhviq2l+jEGigDMA8KwL7q//mPAy2LtLBjvpWcBsnVa9PNG46cArp1e9egBWTKjUUK3vwNU7JzGCNQDIADAALH5q+aqKQAwRVKIpwIT4NkGrXnGQnjr5BpASDsS2pEAUXrDazhx0x+ms+om575sWTIza8sRRQYAlG8eHZPSIZFMAZrez25Lb4DJC9Zv5dFkqk4+FHYBjKd8NF4yev7IQhuHpSZwI5MWSGlX/wQgYeQPoLtm+tPdcKGjWihoW4Ckck1IhWLb6nCDG0xpSbYApPvpb+GFU+IKAKlLLRRIqC8BIOy6yTze2bAKIOf4mSS54ApIryz2DWDmtq/1wA2QeQfBue0WPDyvATA/FAzeDUWmcjn79BeKJlYqTcmDxMlzN9K2l6vx3+IVreTdQoO2AJsAAAAASUVORK5CYII=">CSS Typography: Kerning, Ligatures, Swashes &amp; Small-Caps | Viget</A>
54
+ <DT><A HREF="http://dev.w3.org/html5/html-author/charref" ADD_DATE="1449077702">Character Entity Reference Chart</A>
55
+ <DT><A HREF="http://typedia.com/learn/only/anatomy-of-a-typeface/" ADD_DATE="1440983727" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABYElEQVQ4jZ1STUsCURQ9ir8gsV31A2YWM4uZH1DhJoj6G31gXwtBKIyiNoKEBFJYVJCUWC0qHcQ0N2lBm3bhJqkgZ9q4ydVtEW/wzWvEOpv37nn3HHj3XNA/kdpJEhGRxzJNqtefEV6aR6vVQq8IBPpxaRThM/LX2NtN/knc5/fj8PgUAOAzclfIFysAAF2VAQC1xyeuzhXKggGDh4iom5jVbvACQKVccm1uNj+6G3xaFhbnZjjyoVa172PBYeiqjIXQ9O8Ot6Ub0hSJNEUiIiLLNIX6PJshTZFoJRIW4gRrZgLnyXBxliVNkehgP8Xx3q4f7MD4xCQAIHOS5mfQi5glElmO4v3tlTeIxRMckSuUbYGuytBVGUfpDACg3f4S3Z1DY3DjNtdX+SESEbEk7qt3ruLkdoI0RaJG40U06BQ5hVvxmM1vrEWFGO1VBn420rlUADAyGsTUbAgDg0PC2zeJLYru/3GL4AAAAABJRU5ErkJggg==">Typedia: Learn: Anatomy of a Typeface</A>
56
+ <DT><A HREF="http://practicaltypography.com/" ADD_DATE="1437501132" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABU0lEQVQ4jaWTTSuEURiGrzPv+5aMP2DM5DtfWduxs6UsLKTYWFqwkRRKoUYUCYspC2oWsrPxHywsJMlCL2FhzJAp5sxtIcwwaaa561mcc57neu7uOkaSKEOBcoYBXIBs1pLJ2O9LYwyu62KMwVqLtfbPYMBxcB0HJCm2taJwOPxdkUhEA4NjSr6+aX1xOu/tq6aXNiRJAYBUMoHv+zylnvE8l/u7Gw7iO+wfHmMCDp7n8ZJK4vs+L69pPM/73A6fDtaWZwRodHJRUlZz48MCtBDd1ZeisxMCNL+6qVz9ClGAIRisKDrEPIDNvJNOp7l7eCoa4OYe4ttLHO2tk0g8AlBdFykNUBmsIhSqpiZUQ1d3L0N9PaUB+kcmiEWnijD+owIhlqZ8gDH/tBaGG0m6vb7k5PScxtYO2prqCzZeXZxxdnFFS3snzQ21+YCSfeeo7N/4Afo2oyB44/spAAAAAElFTkSuQmCC">Butterick’s Practical Typography</A>
57
+ <DT><A HREF="http://www.typewolf.com/" ADD_DATE="1437500071" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB1ElEQVQ4ja2TwXXaQBCGv5EUwnvORS2IEuQjB+Ms4AZwCaYEUQIqIZSAG7BgLfnAMWpBLXCxnzFGOz6ACNi5JXOamd3553///gv/GPK50esNYs+XKUgEWr1Rj1fWVgBdY6KWBFNUK4DcZpPgdPjKDI0IU0VS3bnK8727lvhz4BLgkEfbzUsnaF/EP83NrzMAT5hutb5tNvbMoBQkPl5QLKIGYEdd+QTmCNA1JhKVshkGoKZ0PpOmzG12zHtmMAKt/jDYbNa0f5zpURSLstvthtf9m5GqCwFEJBTFqEjsdq4vzfbvBImKxqIS1uj4yWb2uj9MQBJR1giRwlqUNWjlap0UxaL09sr6c1e7Wb7MLlV0BnDdHyYo4fb1ufNoHzpvuusA1tXu9tFm/aJYlABeS/yRqIRNI19m6ZPNLEi83bykrfZFcmWGZmVttX19HkvgJefCq0SfvbBXXKugfRGLSOIjI4DVarUW1fAMQEUrhKhnBnenB7nNJh4YVO0bu7TR6vMeObjr96Ee58uH+78ROgi9dLi0sIvZEQD2DvRE5gKhwr2qs+84C9CSIN4/GyPQNF9m6RmDJjn+ARHzRQ60VNXZ6eYvAKdUv+EdQd5x9syd/zs+AIk34bks/1xZAAAAAElFTkSuQmCC">Typography Inspiration for the Modern Web → Typewolf</A>
58
+ <DT><A HREF="http://www.typegenius.com/" ADD_DATE="1437500041" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABu0lEQVQ4jX2TTW4TQRCFv+oej38myF54ZQWFlbGEBIsgBXbhGICAAyCEgLACLhTIUQABspKYhAWRN1iyZFsjeZC7mgWZ9nhs6E2rpl69elOvWm7dvOEBvPeICN57yif/LiJruahcLCIYYwJAVf9LEpWTqkqapuTE1VqVyEaB5J8K8m71eoO9vTs456hUKpydfWc0GmGt3agmEFhrybKMVqvJi5cH9Ho9RqNfvD54xf0HDxkMTnl/eEir1UJVgxqTM6oqcRwzHA55/uwp4/GYd2/f8OnzR/b377G7e5tGoxGKc9VRkUDEoKpkv+cAzGYzdnau0el0qFTusr19lYuLn8RxvBz4Zhcs3nuSJOHb1y/0+32Ojj4wGJxSrVZXBmqKQX5771cGq6qoU7zXNTuXhv8tXY0KwNyB8jFFsPdLdmvtZTeIoogkaSBi1jY2EIgIIvkyeabTKaoO7z0/zs959PgJ3W6X+XweGgJI8S0EWcbQbreZTCakaUqz2aTbvc7JyTFpmoZVF5ElQdmNxWKBtRZjDM45smxOrVbHGLN5iGUr4zgOYGstW1tXVopXFimXU0yGf7yMnXNrOIA/yTkPhy/RLd0AAAAASUVORK5CYII=">Type Genius</A>
59
+ <DT><A HREF="http://www.fontsquirrel.com/" ADD_DATE="1437500185" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAClElEQVQ4jV2TzWueRRTFf/femedpUj9Auks33UQS3ChBTKMpXQi6cOEiG8EWxIVKN1a3/gnFlRTcFXX1glhwKfgRrMUaujEtVlyEYqXYLELV5Hlm5l4Xb1JjLwzMwD1n7plzRgDZX378seUnjs8deVMlXgmREwAq/lvz+Pjqje8+Y1oCBIcOAsTywuoZE73Qdf2x5kHEtEdEMFV2h+HDH25+ff5hAgM4uXjqfN/PXASdLbWMLWoQEREe7l7dG13OJ489PnftzvbWr0ACHECfnV95IafuQmuF5qWoSWdqKQgNQtWki6Ah0Cd9bf9iP5hAc+7fFxW8xaiq2d0jPNrBkO4eIaHhIBEnDhEIgBK+6B6IYN48ApqqmZrKf0qnm1AdeagUIRMBRBERz9al6vXP8BjUVFRVJNRFhWjxzT4uHbAq6K0ud5h1R1LubCzD53W3Pt+IP1QMbzGmlLpSxrvD0fsfTfFrD2ZLe8Pe2+AfEESp7fKPt9a/AGxl8XQXEahJB0Ip9a2NzY17U9ikTd9gTeVhTQDLC6tncu4veatN1Ky14fUrN9Y/BViaP/Vyl3n1yua354BRpjLWBCYGjEsLKy9my5ezpJnWaojIGMGXjbqVSAScRdgO96/2Sv1EANZYswmT9vSTK0uPdDPXBKjemhCqmsTM9s2YJnRs9fc+d3PjOGwqwISJAPSa3jAz3OueqRiAtxqlDKXUYdfdaa3+rRE3x3Hvvb92dl9K//NUY9tEKWDhXgIEAVPNZimP47gpyKP/3N85e/329TsP/sJBWvqWN7rZ2WeydfOWzFRUkyVtrd0dSjknY1xC+Dn3/VO37239BKTDLuh+RHlu4fS7KrEqEkdB5kF2Wq3vXP1l/ftD/QLEv+umStUjaCJWAAAAAElFTkSuQmCC">Handpicked free fonts for graphic designers with commercial-use licenses. | Font Squirrel</A>
60
+ <DT><A HREF="https://www.google.com/fonts" ADD_DATE="1437500177" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACpklEQVQ4jaWTTWgcdRjGf+/M7PfubAymtdWGuKGI1oKNuXhQqhexaEHwIl6kN0+CINJjqfhx6KF3EQQpeDSgqZ56y8GQ1EualpjS0CpJzXZn4u5kZmf+Tw+bJuhBBN/Te3jfH+/H88D/DHuU6DTBSvpSWK8kDmAnL4x2e7+w1Q/UA8qV1HsuXYjtGvk+4PbpqWpQO/aTg1O5c6mHLHdYsZugvECAQG44lFcKKhaUlkp/LL1+fI00AAjSRr2oajYwqzuspWyIFTn1JyexZoNiN6VIBnitEO3EDO7dnU2emKyztjEC/JmU3Fiofi5qeTZ0ftgmfOddS8fGcUB7+jh+4Gvr+jIb313xmsNhMlHtCDYIAPxm16Saj/lGnhG+974tzn1vg1urCJi98Bm/Xr5EtLqioNGwbqnsba2vGzACtIJxFQ6ZCSezPMts+s2ztvXLYZpPHaP/+z22lxZpPt2BLGWYF9qJYwF4jy7u5EwGRbpL9O3XKOpReXyCyTNv0ZrqMHX2bbI4RjLMsCSU7QOIImRGHkc0X36VI19cJtrcJHvwAOfE9Uuf01u7hRcESA7pQAceQDHdkesPVH3mWcY//JiFLz9l8eJFxk88z50f5ri/vMxutwtmSEJCtdgOVvCPHLXhX7G1X3mNnc1N3b36o2bOn1erM62b33yl+uFDMs8kJEmA/r5CcWNFfr3ptn+eVzVs8cbcVR2aeVELn3wkVzgJJOdGzSOCS/cmGL1xu2s8NlHL79y2tQ/O+fdbIb2bq3hBQFCp4Ip8pHsZnkHuXLUSyujtAWpJeTBsuUVXKs/U0yRtbHctrtYMQZHne0I2AFc4V/ZLlRu1zqmEjWv/NNOJMKuU3AtjY1z5bd2iKAIODFXzYhV50zt68mT/zPx8+t89+y/xEAMeXeZdGxf/AAAAAElFTkSuQmCC">Google Fonts</A>
61
+ <DT><A HREF="http://freefaces.simonfosterdesign.com/index.html" ADD_DATE="1437500220" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAvUlEQVQ4jY1TQQ6EMAgcNvtgX2DiC/iB+sSm9zoeNjRUwZWksTHMMDBUSBJJ7PuOUgqmacpSACaxrisBEABVNUtjJziOYwCLSCcQkYHE594UXMEZSUjgZUckUTvwYANlCiIleAN+agfbtv0FZEdV+Sml5B4HISL9Xmv97YGqvpLuz7Is4xA9STZE+2/gm42q+jg4Az8u0rUdf/eVjSRc5WgmvnJrrWPSx+TbiSrb95vZZU+41op5ngcbSXY7T9ZUDpQpfUarAAAAAElFTkSuQmCC">Free Faces</A>
62
+ <DT><A HREF="http://www.dafont.com/" ADD_DATE="1437500257" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWklEQVQ4jY2SsUoDQRCGv5m7y50XLxFEsBGbFAFBQUGsg52ttW9i4RP4AFY+hG9hLyKxCQYbixDQi7d3a2HcuDm8ON3uzHz7/z8r92BpqM2LC7pnZ+QPD4yvrsD647IKsD8eE25tgbU8n58zubvDlqXrh03La3t7BFmGhN9jkiQg4s3UAHGvR3p4SHp0ROf0FE3ThdxWqxmg7Ta7Nzck/T5Bp+MtA2gc1wD6+9A+OSE9OCDa3kbTlLfbW4rX18Xw+jqi+jcg3Nig+vgAoHh5YXx5yWw4/L+CKs9dwrYoKCcTqum0MQMPYIsCa8xcTogkCdX7uw9YKh9gDMwViCraavmAVRasMQsFqsgSQFdZoCwdQFSRKKpZkMYQZzNnAVUkjusZNCowhirPHQDgczRy7SDL3P1P+V9ZxL0QdLvsXF8jUeRbaALkT0/kj4+0j4+RICAbDFiu35YAvgD53Xc4JV4hzQAAAABJRU5ErkJggg==">dafont.com - Download fonts</A>
63
+ <DT><A HREF="http://type-scale.com/" ADD_DATE="1437500137" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACoElEQVQ4jXWTz2tUdxTFP/f7vt83M28mMxMz/sAQGxemIiRaRFGqtoVu3LUbDUUEceXSnQt3Xbn2D2i7K2ihSLsrtP7WUhAqg3ZRojGt1KYmZjLvTea97/e6eFG6MGdz4S4O555zrpz4qqvOCEsDz4HxGhc/6XDpxn/cX8hoOMErb2GknAro+t4CLA0877Udpz9ooQpBlRAUr4ICkYBXyHJFAWsgjoSgYFXh4511Tu1r0YgNQ69UIqFqhYoVCq/0cyVxwq5OTNUKi33P372CqhVk4Z9F3d509AaePJQyg4KqEkfCxZ/+pV01nNnfZrzpGHrFCPy6kBFHgr32aJV21XD8/QYCWCNcn+sz/ypHFcablnMHR6k6w5WHK/wy12d6W5Wz+9uIgLnaXeHOs4xIhAA4U7J/1+3x/aMehyZq1JzhxWrBj3/0WEw9Pzzu8c2DZSqRYFpVQ92V9sq6w4kzjMSGrQ3L1oYlKwLtWsSRyYRBoYzWIu7NZ9x6mmJCKG/+P4KWRIM80M8DVoRhoZza1+aLvS3eJHf57hKGDSBAEeDnP1NiW8aZe+XkdJMvP93C4YmEImjZg3chKDQqhtvzKZvrESdnWhRBWc4825uW8x9u4uaTdGMCKKMEuNpd4elyzuxMk8nRmNW1gAJHJ5ONCRTFiGGq43jeK/jtr4zuizWOTzX4bM8IAvRzfbcHRsquV6xw4ViHqbEYY4RI4NvfV7h89yVBy4obXTdM1iVHRkicYc0rgyIw9MpHO+sMcsUrdOoRN56kPHg+IHEGYw28zDxZEbCRkHvlyGTCRMuxa6yCETg0UWN2pglAlgd2tBzbGhYfFJn9uqtprpyYbvL5nhGyvHymNA+4SFCFueUhuzsVnr3KWUw9O1qOsSSitxZ4DQbRJavcayobAAAAAElFTkSuQmCC">Type Scale - A Visual Calculator</A>
64
+ <DT><A HREF="http://www.modularscale.com/" ADD_DATE="1437500157" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAJ0lEQVQ4jWPMzOz6xkABYKJE86gBEMDIwCAiObAuGE0Ho7HAwMAAABvfB2yxqfjMAAAAAElFTkSuQmCC">Modularscale</A>
65
+ <DT><A HREF="http://fortawesome.github.io/Font-Awesome/" ADD_DATE="1437500811" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABa0lEQVQ4jcVTMYrCUBB9McFmQYJ+EP6CpZXhIwiLW6TzBh5B1lh5hj2DFmEx17Cziait7AlsEiQoKkJElJktFhfFuOg2+2CaGebxZt6MNh6PXxuNxkcYhhIPQEoZ9nq9N1iW9QmA/xKWZX3qRPQex/FTpVLB4XBAHMd3qyCiFIQQUblcZiJi3/d/2HVd53w+z4Zh3FQghIhSADCbzRAEAUajEUqlEjzPw2KxwHw+x2q1gud5KBaLAAAhBNrtNmq1Gk6JCAAPBgNutVq83+85CUTEm82GiYiZmZvNJgshIuN8JtM0kU6nE+fVNA2ZTOYqn7p7YzfwfwRElEyw3W7R7XZh2zaklKhWq+h0OtjtdgAAZsZwOES/3/9uOHehXq+zaZqJnudyObZtmwuFwsUdXLhwPB6xXq8TJS+XS/i+f104KVBKcTabfegXhBARlFLTR5rOQyk11SaTyYvjOG4Yhs+/LP0KUsrAdV3nC/Q+7J06fyzBAAAAAElFTkSuQmCC">Font Awesome, the iconic font and CSS toolkit</A>
66
+ </DL><p>
67
+ <DT><A HREF="http://www.designingfortheweb.co.uk/" ADD_DATE="1437501120">Designing for the Web – Contents</A>
68
+ <DT><A HREF="http://www.elliotjaystocks.com/blog/a-better-photoshop-grid-for-responsive-web-design/" ADD_DATE="1437500329" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABhklEQVQ4jaWTMa/iMBCEP9uJEgmDaBAI0SEhwb+gQ9QU/Lm0FFTv71DSgkgAQTAJjq84OQcPTifd29La2ZmdWYs8zx0/KPkTMEDgnEMIgXP/JyTw4H8N8T1CiL8rEEKglEJKibW2brLWEscxZVlSVdX7AAAhBGVZkmUZxhharRbWWqSUNJtNNpsNnU4HrfWL0noFKSVFUZAkCZPJBKUUh8OBKIqI4xgAYwyLxYKqqmrVEkBKyePxoN1uo7Wm0Wgwm83o9Xr0+33SNCVNU6bTac3s/XiJ0SvRWtcrFUXBcrlkMBiQJMmb4dIDlVKcz2eyLON4PPL19YUQgjzPWa/XlGXJcDh8S0dcLhfnoymKgtPphDEGrTWr1Yr5fE6322W73TIej+uEPEZcr1f3HGMQBIRhyH6/Z7fbMRqNsNYSRRG32+3FA+ccIs9z58He3aqqUEoRhiHGmD9sT4dUE34/JAClFM457vc7SqkXwPPdOOd+34F/eDHnA9szie8Jvsf46U98Avv6BSt05O25LbYHAAAAAElFTkSuQmCC">A better Photoshop grid for responsive web design » Elliot Jay Stocks</A>
69
+ <DT><A HREF="http://www.smashingmagazine.com/2011/11/establishing-your-grid-in-photoshop/" ADD_DATE="1437500279" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB2UlEQVQ4jZWSPYhTQRSFvzt5SUyEZEUFCSgoKoiLpRsRXRBEG0FwBdHGRiEWFqKNhYWtirBgtyCClQjbWIhiIeK2WizbiD8Es7gmhVk2SJI3cyxeDIE8A144zGVmzse9M9daN48o2rmH8vWn/E80azPQD0Rk+Ke58+wyvvUN9QKutJvNF+ZxxTL9+grmDJkRmbNU88bj41imgMvnkHlCu0774RnCRhd1+mB5MIhw6SW6XBYwkJA3LDNQNgubMug3gOFQOqAwt5gkGlEYHP5dEY4gOot3xwCWL1G89BKb2oe8EgWBF0igAAKnAN2Pr5LNlCiefUTp2hsKp26jfg8FIQ8KIv7exVo3qrKcYYUMW+68S+9nJPr1Zdr3r+J/dPHNHk6xoT6Edc/auSrrC/cmArK7ptk2v4RvdkFgP2uHFX+OsZwDZ+AMc1A4PUfpyq2JsNXZaWz1xCElxgwWJQAMsGQ+snsPsPXBk1TA2vmTWGN2WuYMnEtMQw1uBSGJyusPY4DQ/pV8Y/JNHkYVD+QD5j3N2sUxgCtPEREETqjnIYqGpWMwHDKJ+Mun1DYcGATYvvCcyttl8jPHIIRkYIKSXLDjxfsxc1z/ijWOHhQhUFlamfTgqdGo7ucPrTzTAAid5mIAAAAASUVORK5CYII=">Establishing Your Grid In Photoshop – Smashing Magazine</A>
70
+ <DT><A HREF="http://www.lukew.com/ff/entry.asp?1514" ADD_DATE="1437500488" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAuUlEQVQ4jcWSMQ7CMBAEJ4gH0OYJtJR5AqXblPCUPIOWMulCmdJ00KVN6dY/MAW2BYkPAkJiJcvS3t5qfWf4N7IXNTdHJxVc21cYqwHYFydRu5CaN/mWfFUAsKvW40QRyxRprObi73dIJYgmAOduoKuNaCDOwMemqw3D1Yra1BNcaEzwE5NsJOCg78NrmmMsKFVirA7beOoLM3BtXwHEyStVxvPIe50bG3yNiYG0Oon/fYJPIf7EubgBruVClq2WPS0AAAAASUVORK5CYII=">LukeW | Multi-Device Layout Patterns</A>
71
+ <DT><A HREF="http://www.responsinator.com/" ADD_DATE="1437500411" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABRElEQVQ4jZ2RP0gCYRjGf98pgtYcUYnYwSXETWLg0pLQYkhLREstttQSCK0tDYHQ1NTUckTQIDhJLi4JNSQ5BeUgOQhZVCCc5dfQH7QuT+/Zvvf9nh/PwysW1jd225KUQHgYQBJpKoK0uy3FtgDXIGYAgfC0pUwpTsydEHfnQNdUYtFI16fXZpNKtcbZ+YUlxKWFZ3a+H/WHR+qNBhOjIxwYpxRLZZ6eX5gKBohFIxRL5T8AxS7mXbWGkc0R9I9Z7m0B8FmtUq1Z7txWQ11T2VpdZsjn/Upxj5HN9Q+4vrnl8CRDYm4WgEy+8G+6nhUy+QK6pqJrqjMAwP7RMSvx+Z86v9V1Rl1TWVuMEwoGmPSPUyyVabXeGPZ5SS4lCE+HKFxedQFEPLkp7VL0Ul9n7AmQ8O7ULJGmogi5J5GmA3dLEaQ/AGzCX1D7h4KkAAAAAElFTkSuQmCC">Responsinator</A>
72
+ <DT><A HREF="http://www.gridlover.net/app/" ADD_DATE="1437500170" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACGUlEQVQ4jY3Tz0tUURTA8e95M+/Om3mTDoEtlMzFhPQDWraVCI0ikRCK2vQPCAqSkIaPpBZu3AvWqogICkeyGLBNtXMR0T/QIqEoyPn15s1777RQZ8YcqQN3cbj3czhwz4FDQj2sfTnI3ukMdi905mK3zo/m24v8jdrz5gMB1dsDDibzhIS817tXzopHrB5JAdWZkTN6f6ygk0MDArpXRJp4Ip8id+oZicQYYQgJ+UosN2Vh9YPOXRrEMmuYZJ564xNwSxYKX9TDsvZhOzFGPQwIY5+06cfims5ePoFl1oE8Zb+KmzqHMAwgHrHoxPkuuntWMPY4tSAAwDWGIFyhXF3kiLuGcpIg9Mk6Dn40R1TfIO141OpTSXI9SzhmnJJfR0RwjaERPaJUe0h39jWx7uKUQxjN49cLuGadlN1LEE5bRLqE3/iMSaRI24YgfMx29QFdmTfEOtjC8Tzl8itcU8Qke9muvaTyc3r36672k7Y2iOOPVCr3yGaLrbbbsVvETh7DD9b4vnVdljeromAJxHpntBcr6MOY56gOEEY+rrPTdjuuBQXsrRvibVYVZAd7WLK4+g2xS6gqAGnjEDYO4h8tLKDNiVIPSzxinR0+jskUiaIXVKpPybrv9uHlFoYOIyqgOjVyFBOdxskUSCZy+I2OuDnKeyGg6mHJ0ttfYH4TU8IPi4fhQ6O5WFMX+nRyKNdpof67yL/iDwd3Fm1Dge4lAAAAAElFTkSuQmCC">Gridlover</A>
73
+ <DT><A HREF="https://color.adobe.com/create/color-wheel/?base=2&rule=Analogous&selected=2&name=My%20Color%20Theme&mode=rgb&rgbvalues=1,0.9555070058193551,0.6447850295752304,0.91,0.884216251374201,0.1599383704412183,0.8486080054413381,1,0.22575645103430586,0.5774176054045238,0.91,0.2579108643818549,0.32039752992137116,1,0.17575645103430582&swatchOrder=0,1,2,3,4" ADD_DATE="1437499948" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABL0lEQVQ4jcWQMU/CQBzF311CSAhpe18A+wVI+AAM7CwdBRK4uGiI0a+ik27iII5gAq7GuBsTp8aBNIbARlvqIEbOQW3652wZfckt/3f/3717wH+LuUyozeHO4z3ylTKZhb0+5nuHGoBvDvKVsrYMAIZsImeXtgPE0X5qXKPdyAZwy0TRqacD5BaA2WmAW2YqIGeXYHQohACs4wNiRsMxFidnNEUaoFCraiVFN7fwT8/JrFCrkpJjgNHeJRfXfoBoOMaH94r3p2fiJYvm8d9kU4u/DkIAQHh5TbyiU4+74t+v6+0GiaWg1ycet0yYv124TKjVxFNJrSaecpkgZzkY/XkHU6elsjSTXeUyoWayq3lTp6XwdveQCVgORnGKz4Wvecjc/tGLsJXLhAourjTvCw4YFasTd6ZYAAAAAElFTkSuQmCC">Color wheel | Color schemes - Adobe Color CC</A>
74
+ <DT><A HREF="http://coolors.co/app/eff1ea-97d5a4-a898b3-bbaa9c-e0ed8e" ADD_DATE="1437500018" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADCUlEQVQ4jW2TTWxUZRSG3/N93/2Z2870FyJq7JQ2TVNESQAbu2JKEI0SSsKoiBATF3ajTYwETApe14aw0BghwYQNxFakcaEljZaQEkRATBMNklqh0BkpjS0znbk/c+c7LoaS0vAuT855c07e8wDL5LosltcWxQzBAC2t0eMau9b3t9S/s3ZLsMpb44ii2vDUyOTdazOjX/ReuPLAiIjAAKCWzVrpfT+58VhTb+kZr3ahbR4JeFjdchUrm63ymdSbA3eO//UR0bXM4sADAyaA7J7ufScbVrT3hL5GqXDPD+8vICCPivMhlyXMdW11u7r61j2vW6pe6XtvbAoAicoZxFuee6u/WiZ6/CAfICpFMhazlW3aSikrljBsQOt79z1/5ZOJjpdSTZ8DkMyVDbg9uSnp2LXvh1GgpdZSOo4qT/9zwdcTX0qv4M1aQbo6ae0STIAOdX29/WJnJ6qIkFMAkGxs2myrWDzSUWBYcTP0sxf/PLB56zhQAIDvgDOf/rZzqrOjdj9IIpv1Tl26hBwzSAFAVKZWImICaWJNxVzm2DhQSLsDJjoGy2vSg/wJfXtg7c87fpwlYaRSp0cBgAiVzFmXBTOBADA0ZJk8MNNkZo4HXx/UgAsAGP76+o3hoes3AJQfScG01G2AiaEFCZONRMNuEH1zFSgBgEsufzD8Wu+ejY2H25RhbX+7/eOujac/e3jC7H+ZUbuuKlRWjSr5OW07T29748jZE//i3Ffq5nzh5d1zO6ubZb+0iRKOgdXJmg9bW3GUCDkBgC5PnP3DK+VPmjImmTiK/JI2m1ftjXd2ja1Ipy4/8axzkESE0GcfkCgUosmJCfjMlT8AAMpkx/b7nP/dtmssEkKXigWPpdIwpPIXQj9iRA31lp2fD2bOnc/2AQgBQACVnx6/+/fMpH/r1fzczSEBUma8JqaqYspwHOHUWXa1YxpT08Vffxm5s/XdvSNXgAoPS2GiRbNtewa66QWxI2rn1rgMxIbG76e92YXhQ90/DAEIl8K0XATmxxK6KNfFI7j/D5ihRRpBJSBMAAAAAElFTkSuQmCC">Coolors - The super fast color schemes generator!</A>
75
+ <DT><A HREF="http://www.pictaculous.com/" ADD_DATE="1437845558">Pictaculous - A Color Palette Generator (courtesy of MailChimp)</A>
76
+ <DT><H3 ADD_DATE="1443226869" LAST_MODIFIED="0">inspiration</H3>
77
+ <DL><p>
78
+ <DT><A HREF="http://www.awwwards.com/" ADD_DATE="1437500973" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAHUlEQVQ4jWOUWDL9PwMFgIkSzaMGjBowasBgMgAAq5YCckHmSSsAAAAASUVORK5CYII=">Awwwards - Website Awards - Best Web Design Trends</A>
79
+ <DT><A HREF="http://bestwebgallery.com/" ADD_DATE="1437500984" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC00lEQVQ4jZWTwU8iBxTGfwyKiAcVmqEQjONChkkMcJB2Q8LGk/ayoQa9rCbbi0euPfa/4Nhj15Mh6caL9VBFSBSnxYWugSxLJnJylIluQWcUtIetRjfpod/p5eV7X773Xj4bXyCbzb40DGNVkqQ5p3NoGMA0rStN07bcbvfPmUxm4zHfdl/kcjlPvV5fi8Vi8w7HILVaDV3Xubu7QxS9KEqYm5selcrhpiwrK+l0uv0gkMvlPB8/NgrJ5Avl7dtfMQzjS2MAuN1uFhYWyOfztWAwlEyn020BoF6vryWTL5Q3b375z2GAqalnxOPf8Pr1D0q9Xl8DsGez2ZexWPSnUChIJBLF4XBgGAZLS0vMz39HIpFgbGycRuMD8XiccDjMyMgInc7fwUQi8YdgGMaqx/MVPp+fUChEqVSi0+mwvr7OxMQEsixTLpcByOd3sCwLAJdrBMMwVgVJkuaKxQLNZhOHw0EkEgXg+vqacvlPAOLxOAAXFxcUi0W63S7VagVJkuYEp3No+OTkhP39vSdkAFVVAZiZmXnoHR8fc3R0hK7rOJ1DwwKAzWZDVVV6vR7T09M4nU4AvN6v6Xa7+Hw+fD4/AGNjoxwcHDwICqZpXYmil8vLS6rVCoODg0Sjn9fweDzs7uafOJuaesb7938hiiKmaV0JmqZtKUoYgL29/QfL4+PjtNvtJz2Xy8WnTxf0+30URUHTtC374uJiZ3R0dFnXT2m1jpmdncXv92NZFqXSPmdnZ0QiUQKBAGCjWq1ye3tLIDCBaZo/CplMZuPdu8PNVCqF3W5HVVUGBgYIhYKcn5//6+zzgZ8//5Zms0kq9T2VyuFmJpPZEABkWVkpFHZry8srNBofACiXDx9944B+v0+r1eLVq2UKhd2aLCsrAAJAOp1uB4Oh5Pb29m+BQADLsuj1bvB6vYiiyOTkJKenp+i6zs7O75v3OYBHabzH/43zP/o6QSzmN6SJAAAAAElFTkSuQmCC">Best Web Gallery</A>
80
+ <DT><A HREF="http://bestwebsite.gallery/" ADD_DATE="1437501013" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAPklEQVQ4jWP8z2D7n4ECwESJZgYGBgYWOOv/IdJ0MtpR2wVoJuMEaC6l2AWjBgwGAzDTAYkpkmIXMA54bgQA2TQKXF3UbeMAAAAASUVORK5CYII=">Best Website Gallery – Web Design Trends – hand picked by @davidhellmann | The Best Website Gallery for your daily Inspiration!</A>
81
+ <DT><A HREF="http://www.craftedbylove.com/#/" ADD_DATE="1437500895" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABNUlEQVQ4jZWSz0oCcRSFvzOjGRi6kDaG0KZtC3sA6S1a9mxJRO9QhNu0WWcuArUWYxCm5jj+uS0EYZoZy7O6XO75fr97Obq8u743OBeIHWRgggfHjNquZgCBzKg5Eu6u5g1EuM6WLybWvxUDGJBzMxSyuU2vkM2x52YSQZmI2YzyQZGLkyql/Tye3wNB9bDCx3TCbcfjfTJEUgoAODuscFoqA1A+LgAgiaN8kc5wwNvrMHLxCABgPJ9hGEKRl8yM8Xy2/QaSaPk9PL8fG/QGfZ78XgQaBwCjMKDebtH0u5t+0+9Sb7cYhUEsMLEVJPE5+6bebrJYrQDj5sVjGAY4iuctBgBwJL7CgKvnRwCmy3miORWwXkdMl4tNnaZUwNr4txwzlv+YS5QZS0eiYdvjnmwGk2j8ANuhb9hrvwGBAAAAAElFTkSuQmCC">Crafted by Love.</A>
82
+ <DT><A HREF="http://flatdsgn.com/" ADD_DATE="1437500995" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABxUlEQVQ4jaWTTU8TURSGnzOdCu10KBRSKynGlGh0CUt2Ji7wB7h340p/ke6MbnTvXiAsdUVIIDSBJqTNIIVO0+kwM/e4mPTLFjHxbG5yT+6b877nufJu74PyH2UDqKYaf1OSwSkycW+rKiKCm53HtuxbZIQoifGjAKOKNSZiA9iS4VVti9pCBaNmpkAQhxy0G+w2D/nV94ci9r/4tATKuSKrTonHxQd8Pt7hvNfGEkkFYk34crKPbWVm+rZEqBZW2K5u8Mgts722wafjHSIT3z5BbBL8KBgm0gqu6UZ93jx9wbOlKpX8ImddbyyD9S1q7n0UxRKLeqfJx6PvRCZGRBAszroezeCK9YUKq/kSp76HBSACbjbH4pwzZeOumrCQqOHryT51v0ViDJGJUVJOjBqqzjLlXJFeHHLeu0Tkzy0odKIe1zc9ivfylOYLoCk8VWeZl2ubuNkcPy/qtIIrBJkOURUeFlZ4/eT5ECxBcOw5shmbU9/jW+MHYRKP1qgKfhTQDrvEmsz06vU7HLQb7DUPuRgDSd7uvtchypLBjwIACtkcI2JHKCtMoiwiqCqdm7Q5aF2G3YkJxqGa2sLgh8mMB3fVb3Jeu3RA882kAAAAAElFTkSuQmCC">FlatDSGN - Freebies and Inspiration Resources in the Flat Design</A>
83
+ <DT><A HREF="http://patterntap.com/patterntap" ADD_DATE="1437500919" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABMUlEQVQ4jc2SPU/CYBSFn1fKhxRIq9D4kWiMiQ4kDk5O6s6ig6Nx8K/4S1wd2U1QF52MymBIGEwcDMFCKbUC5ToQh0KZGPRMd7jnSc7JUbePG8IMmpvF/D8A2u8hIswn1tHTRVTEoyC4XhW/94ZSahIAsJw/ZdU6nzTLqOeh9HiuneD6L9GAj88r2t2HkDkZX8LI7mNk9ojFdDLpnWiAUoqu/8rXd52svouZPcTMHaCntgEFDLGdCo1WOboDRNBTWxQ3L0loFgCDwKbRKmM7FezODf1BM5R/LIKiYB6T0CwGgUPbvaPjPSESENcWsMwjANruPV2/OgkQBNu5ZqVwhhbLkTdK5I3SeJ3U3y9CABWaskBcWySVXGOaPL9GMHSjIoy66gdN+l5zKmBcfz/lmQE/cLpuQj5RhYEAAAAASUVORK5CYII=">PatternTap | ZURB Library</A>
84
+ <DT><A HREF="http://pttrns.com/" ADD_DATE="1437500962" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABKUlEQVQ4jaWSzyuDcRzHX4+J0mR+ZAgpSRS7rbaTommHJcpJOXNwkquTxD+g5GgXqd1Xq90kjlrtYHtiz5qJUlgOHo/DZ8rX02PfeNenz/v97durT9/P13AmFh3+oSbXib9NCgO6AxAah/5eT0Czknw+uEiKT59BLAKGIdmqwvouFEoNJvjSfBReapArwLsNg0E43qlPpwPImzC3BstbsLQpsEA7rCY0AYcpeH4Vf30LpxnxkWlNgFn+kS3pQ0FNQFeHmns6pT88aQJW4kB9A60tsDAjPm8q19Q1ftdsGE72IFeEaAiG+2QbRylNQNGCqTEpgNobbB/ATUUTsLEPIwMwOQrWHZxfQfXRdc0b8OFA9lLqF3k/oqbUCWxbfh1A+f4PAHCtqZE+AUjtSaO6DkKGAAAAAElFTkSuQmCC">Pttrns | Mobile design patterns, resources and inspiration</A>
85
+ <DT><A HREF="http://subtlepatterns.com/" ADD_DATE="1437501106">Subtle Patterns | Free textures for your next web project.</A>
86
+ <DT><A HREF="https://www.thebestdesigns.com/" ADD_DATE="1437500909" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABcElEQVQ4jZ2SvS9DURiHn/tRt3VLqY+Ir6IkhIHBRyISk83/YLUYbRYGi8Rg9kdIzBYiEQaiIcRXUlUNVUVdTW/vMRAJ54jGbzrve548Oe/Jq6XnZoQWrOQ/EbkcphawqZ5d+Jcgu7KIiWFIF6d3D1zcPyAQ1Ng2Q62NaoOmY6r667FjfIZBdcDPwXWS2E2SqaEBdF2XWKXAZ+hM9vXQFg4BsLSxxW48wXCkRWJl5Wcc1/0619nlpF8cJferIF9weckXiCVTJLLP9Dc3KDnlCEVPsHZ4RNAqI/74hN9nYBpKVC0wdI3J3m6i9WEAdi7jrG7vMT02SFUgUNoI5VYZIcsiZFlMdHfSVFXB5vmVxP0q8IT3ra4P2mRe30oX+E3ft3o/cUu0Nixxyj/Iu0U2zy44TVXguAVOUvc0VAYZ7YiUJhiLRji7S5NxPp483tXOSJu8RB8Cz5Oaw5EW5dZJEQJTODmyy/N/wz+jaRSzj7wDJ1VuQTSSutEAAAAASUVORK5CYII=">The Best Designs - The Best of Web Design - Web Design Inspiration</A>
87
+ <DT><A HREF="http://themeforest.net/" ADD_DATE="1437501029" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACvklEQVQ4jS3H22pcVQCA4X+d9nFOmcmhsdVWQSgBwYs+h8/iAypSFKIVQSQpgahNk0YybdJMZmbvtfdeJy/05oNPPHr2RUJEhEhoLcmyAik1bdPTbHvmpaRLElOPEXHAb24ZZYIHG5D5BDGCBP+RAAEoIPz/CKRMMjt8hoiJ3VoTBkvjAjZKxLfffJZG44rRqMQYg/ceawfWDy1N0/Ln0vLzHw+0wGx+wLDdsJhVVDtT7tsW/dWnTxAiEdOAGzpCCIxNxsHugrTY5ennAm3ecnyy5MXXL/jx5Q+U9RjvPUoLZEqOhCOlgFKQ54YslyACzvVob3n6eJe+T5yenuJCIISEtZYyL9BOWxCRKAIxekDifWDbdGw3lo+rnpPrjgSstisOH39CUeQUMqfpLNp3O0gpEDIgUyBGCL3DWcvQGtbdkn+WkWRgsrdgPp1hVx+pixwZFLooOiAS4oD3HiGgKg1lkbOYG2bxCWt9zeWvF9zcLsm0YFJmNFuLkTnaR4kIEREgQ0GIDN6RZMSYkmw04d3lK3IPrvMMw4AVGqQCF9BJKkyegTf0tkVoRV5VDD6xsQNnl39xs3QIAYudOfPZDkoEhtgx9B7tfE8MkhQ8KUWEzGltx/mbS16f3bEcoPWwv3/AZP+AptuyebijNDV1PUbnOJRUaCXpe2j7BmUqjo6O+PK54OXrO26PT1lttgRzT1ErptMpMmrW6w16kkmsbXEhoFTOuKxovOTtxRXnb6745Sqw7mBvd0pd14TU0LYNRhf4GNGDVwhVoZTEo5DZmMX+HuX+c6pH7/n+7++QWqGzkhACIXkgIoQAKdCxPkRKTT2aILOK+9ZzdnPP8W+/89OrMwYBWVYhlcE7R4gO53ti0tguoddxxIflHR9ur7i4XnJy/o73W/DSgKooR4ZROUMIQdd1SO1QSiGlJOD5F1Hyd+aPA+85AAAAAElFTkSuQmCC">Website Templates | WordPress Themes | ThemeForest</A>
88
+ </DL><p>
89
+ </DL><p>
90
+ <DT><H3 ADD_DATE="1462460849" LAST_MODIFIED="1462465530">Documentaries</H3>
91
+ <DL><p>
92
+ <DT><A HREF="http://documentaryheaven.com/bastards-of-the-party/" ADD_DATE="1453859842" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACIUlEQVQ4jZWTz0sVURTHP2dmyEyLfKIiEhZZWgQqLbSFL6ld0cb+BAkJF1IJ/gW10nAhVISLkNpHQRupsKBVZLp4j1IhTDDMrOj55t2Zd0+Leb9Gc9HdzOXw/d5zvt/vGQGovnJnNAjCQUdoAAQRNMiC2aZ4FADBU6PkcxuuK9OZuYfj0j08fXNhaXXCcZwIKQJBFjUZQCgfwVWDY3OAYFU5c6z5lrte1/3Yc926/yFHUGHt+6+T3r5/kKWCrNHYONbserRK8nUOYPfqHCcTI5PPoYFvHS0YZk2G1xNDpGfGSM+M8f7+CB31Vby8e52BnnYUGOhpZ3ZyBA19bOBHDSo7H6ypZvLRC+7NLnLhRD1Pbl8DIHGopvCtpfbAfjQse+FhtmOaATw1vE1/4dPKV65eSnK5/yxdHUdpaUoUhJXx3g5xiOZLmn//ifZgbX2Tj6llsAHNjYkKsOAo0ZIoEt00pFjr7+1kMb3CfGqJB8/fMJ9aKZhbwAd+cYIoZ9DSuP29nTydfcfFc51gw10RSuijoY94529semoSjjX0nWyho7UJgFcflln6tkFfWyNzqdUSNXm6lbnFzxBkAfkhVcnhLdeaw3vkHO8sAkEOQr9Y+emEJrNV9iHSVplzzKPAR8NsqWbCcMvpajsyZVVLfxuhH8t5p+Zi3aql69TxKQGoSQ6N5vN20LGmQQNf4klHcgiy0QaIqrWy4bnudGbh2fhfp/QhpH0Y9o0AAAAASUVORK5CYII=">Bastards of the Party | Documentary Heaven</A>
93
+ <DT><A HREF="https://www.youtube.com/watch?v=XzmHgxA0jOA" ADD_DATE="1439436501" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB/klEQVQ4ja2Tu2qVURCFv7X/SxJJMBaCgZgIigQhD5BSsbDxPYKiz5BnUGNeQKOk1dLW2xtY2ATMpTBihJxwzr/3LIv/xESxERwYhtnMZc+aWQAYkqEa27TWW53V8Vs6G8v/EAFsL127q5RWEj6XpKmACdtNkhJA2CGpSzAM+zjQwBHvFz99fqXtG1cfTKh61EoYUF8TJYHB+LTd2Bcwshm6PKwjtNrJHjg6jzsCMBhKdQNtY5eC+vy+uB2N1IS1Wmd7roQx1BaSjW3a60t5tPNFcXBQVzMzNoAtJGRHYCzmUg6mO6MclsPOSPlowIV79zX//GW0N2+NusFxlOGIMC7FzmH1OUynEm5ymGLIYRXjEnYZjdLU8nK78GyzvbT5InvhSpdHHYVfsZRwU+fw6ToAY7nYNC0AZXs7D96+U/5+mAKh8hus1CXcAQ02Sf10kZKGu7vd/vpT7z9Zr7q9vaaamYaqguIeTgmg08fLi98SzLrfz8kuoaqiHP5IaXJSaaK1yxg2ehAlFPC9juK9SprNONskATZQOml6poSDGGV8MmN/B9FYTdh7dYnYQOlxK7XYSONIJShxerDjwe3++51N59gQwJuL83faipVin09m0qIFNaCaCJRUsLKJocQAOOoKH25/3Xn9r9z5uxjS1piia2f0TzqfUHrrDJ1/AqtRUJ+QQfrIAAAAAElFTkSuQmCC">From Star Wars to Jedi - YouTube</A>
94
+ </DL><p>
95
+ <DT><H3 ADD_DATE="1462468687" LAST_MODIFIED="1462469593">Engineering</H3>
96
+ <DL><p>
97
+ <DT><A HREF="https://www.codeeval.com/" ADD_DATE="1458079675" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACP0lEQVQ4jZ2TT0sbYRDGf/snJgsJEvaiCIldNxC8FE96ESIIC/kGyblsv0IOOXiRpD14b8FTQQu9SMAlqOSQayCIoIekTeuCCKXRhqQ2ysa3B8mrASm0A3OYeWeemXfmGaVUKr3d3d11B4PBNP8g0Wi0l8vl3iuLi4v94XAYHT9omkYqlSKbzZJIJBiNRrTbbTzPw/f9CZBIJDJQLMsSY8fc3ByFQoH19XWmpqYACIIAXde5u7vD8zy2tra4uLh4RLEsS1iWJTKZjKjVauKptFot0Wg0JnyHh4didXVVjPPUcduFQoG1tTUJXK/XcV2XTqdDt9uVurS0RC6Xk3GKZVkinU5TqVTQNA2Ay8tL8vk8vu9j2zamacoEHfg5GHB6eiptHMeRyWdnZxSLRTmwH5+/EOt8kwAv1RCfguEEIIlEAoBut0uxWOTk5EQGvFA1XumGtAMh+K2F+TB6AFGfruXq6orr62uEEPxNDEV5qAxo8Xh8I51Os7KygmmaLCws0Gw26fV6AAyF4KsY0bwPaN4HTCsKH4Mhv54O0bZtKpUK4XAYgHa7jeu6+L7PzMwMsVhMVo8C329uHrkw3uf+/v7EvqvVqlheXhbb29ui1WpNaKlUkjwYf4VyuYxhGJILjuNgGAa6rpNKpWQHR0dHeJ4nbS0ej28A9Pt9jo+PmZ2dZX5+HlVVSSaTmKZJKBTi9vaWg4MDNjc3J6j87DHZto3jOCSTSQDOz8/Z29t7/pjK5fKbnZ2d1/9zzvl8/t0fXDcoOVK7mecAAAAASUVORK5CYII="></A>
98
+ <DT><A HREF="https://adriann.github.io/programming_problems.html" ADD_DATE="1456842587">Simple Programming Problems</A>
99
+ <DT><A HREF="https://www.codingame.com/hub/back-to-the-code/21009766de2b6ae011fa1dd20ac8209f3e86ac4" ADD_DATE="1443112348" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABQElEQVQ4jaWTvUtCYRTGf69eqytX+8AIDCr8JAg014SgvT+gloiGpiCoPWhtCRpagqaIoM0xIogm6YuGImsR+sAsB1HvLdHbENi1e4Mrnuk9h/f58TwHjtBv0GmjHO2IWwKkzrwk5iNMLIY4Snsac2Engq5DfC5CsewEoNdb43I3Y9+BEKDI9UbvMbxtOQC4fpDZ2OsHYGUmTyKq/g84v3Ozdejj6c1FdFhjdTZPwP9l7e4vIFeQmFoKUtF+0/l9VU63H3FaBDaN0rfuJjHAy7uLUsVp6cAEuMrIpk9DA1W6lZolQDI299lODo57fsgCkrEyk+MlppNFSzGAlCtIvH64OLlQ2En1UdEcjAU0NpefCQ5aL85YYiQ82rTEeFhlfz1LV4e9EzHtYG0hZ1tsAjgExEKqbbEJUNdB/WztQL8BUMZho1xhF6UAAAAASUVORK5CYII=">CodinGame - Programming is fun</A>
100
+ <DT><A HREF="https://github.com/open-source-society/computer-science-and-engineering" ADD_DATE="1443969395" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">open-source-society/computer-science-and-engineering</A>
101
+ <DT><A HREF="http://adit.io/posts/2013-04-17-functors,_applicatives,_and_monads_in_pictures.html" ADD_DATE="1443043086">Functors, Applicatives, And Monads In Pictures - adit.io</A>
102
+ <DT><A HREF="http://www.vikingcodeschool.com/software-engineering-basics/basic-principles-of-software-engineering" ADD_DATE="1453918448" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADeUlEQVQ4jVXTzU/TdwDH8ffv+3uggPTXdoxhLU+lPAwcA2W6gWYoRIlxYhw0JIsXY7L7Ltthf8Cy4y7Llp3MTmQmzmQc3OYyQUTGfGDgaqECglhrSwu2tPwe+ttlLu59+9w+l5fkOI4EEA6HRTSVr0aST8uyfFaWRIckSX7HcRJ2sTjtOMVLqOqN0B42x8bGivyb5DiO1HTqlFZuqD2aqn2pV1R01/iraQrW4/PoZLa2iS6v8Hh9g8x27he7aH7hyqpTU1NjBQBpZGREXsqYfaWa67uujrb6MyeO4/W4uTP3gFQ6g9fjpr2liWw2x+WfrjEfWVzftYyLSvqN67Oz31hKNJWv1lTXV10dbfUXRj9k5t4cl7++RjKVfvkSn1fn/PAQ50eG+P6Hq4H7f0c/sfVkBHgsZEk96/PqbacH+ngYW8aruwnV1fJqofo6Sl0lbL/Icubkcap83hOSZA92d3+sCEkWF1tCQVRVZWJ6loGjPfT1HkYIAUCJpnH8yLsc6z3MbzdvU1bqojbgRyjqqPnaiiZkITr3t4S4NXuX9adxIkuPqN23l71VrwPQWF9LsC7A/YWHxFbXeBCN0VCzD02VO9WirghJkvDqOvFEkuRmmonbf1Kzby8H324HoKOtmYbaADN353iWSLKZ3kJ3VyCE7AEQDg47+Txej5t8YZfY6mNUReHNpka8upsafzW53A5rG3EM06S8rJR8oYDjONsAomg7G4uPVjnYsR+AxPMU85EowboAJ48doTXUyOz9eVbW1lEVhdamIE/iCSzLnjPFliWsojX2VyRKVaWP97o7iT9PMjlzh7JSF+90voWmqdxbiJBMpXm/5xCyLIitrGLa5tUdWbYUgfRtPJEcHv/1RuCjcx9gGCY3bv3B8uoalm0jhOB5cpPeQwcYPHaUn3+/ydNEcsk2rfEufY8ll7c0vFBMKbvxLNFv2bYyNNhPc2M9qXSGfGEXf3UVQ4P9HOho5/rkNFOz9zbyucKn2RJjauLKFUtyHEc6PHDOZ8BoqUv9rMbvD7SGgrSEGvDobjJb28RW1liILrL25OlSIW98nitY45HJH7P/YQLo6Qm7Ci6rGUVcKFHkYa1E88uywLaLGIa5smtaVyXLvrTt2p1fHB83/qfx5QiHw2J9Hc0oR6NoVpqOUylLcnxn19r0FUusQADjVcoA/wAB7IWRnr7oAgAAAABJRU5ErkJggg==">Basic Principles of Software Engineering | Viking Code School</A>
103
+ <DT><H3 ADD_DATE="1462469395" LAST_MODIFIED="1462470532">TDD</H3>
104
+ <DL><p>
105
+ <DT><A HREF="http://www.elabs.se/blog/15-you-re-cuking-it-wrong" ADD_DATE="1438443781" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACW0lEQVQ4jXWTP09UQRTFf0tonS/AJJLYuO8DuJNoYsO+RFAL9xUQGiBhwcJoIkhhMBGx8E/Cn8Zo4kKhgWQf9O7a7zwLE0140HPXfscPcC1gXyDgSaaY5Jx7z5y5t6Sqyn9wmOe0Wy0AKs5Rce4CZ/DsRUTYT1OuGMMPn1GOylScI/OeyfEJfv7+hTHmXIFS30EIgfujY5SjiHarxfMXyxzlh4gIAJn31JKEEAIjcZVakpwvsLSwyEhcZbuxRQih6PD2/TsmxycwxvAgqVFxjv10D4A3798x0CeGEBARRuIqURThnMNay+rKK56/WCaEwJC1hXgvTRGRkwy2Gg0A/kgXEUFE+Lq7c+69R/kh240trLVk3gNgjKGUNpu6tLBYEGtJwtTMNOUoupB45j2b6xsYY7DWcsNVGOyK8OHTR7632kXVy8QAQ9YSQqArwtTMNNuNLQaunNrM85ypmWnyPL9U3Icxhi+7O3xvtTHGMFBLEvbTPaZmprk3Okb0n+4A9tTB0sIieZ6Tec/AieVyka73vgj1LEIITI5P0BUhhEDmPUPWgqrqxtqaXrs6rPOzdfWdjs7P1jVtNlVV1Xc62uv19NnTBW19+6Z374zq8fGxrr5cUVXVwX441TimHJXZXN/g8DSH1yuvqMYxmV8sJtAYQ+Y916PyiTU9xerLFZ2frWt+cKBps6nXrg5r2mxq4/NnvX3zVnF8p6N374xqr9dTVdXS2W3sL1O71aYrQsU5brgKzjke1ucQEYwxfN3dKb66dNk6Z97zsD5HNY4REay1PHrymL8hXJiRf0XsSCS4HnRBAAAAAElFTkSuQmCC">You&#39;re Cuking It Wrong — Elabs</A>
106
+ <DT><A HREF="https://gist.github.com/zhengjia/428105" ADD_DATE="1438347791" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">capybara cheat sheet</A>
107
+ <DT><A HREF="http://mochajs.org/#installation" ADD_DATE="1447033327" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABnUlEQVQ4jWNkQAP///9nuXXhqNujWxcdP795If+f4R8Dn4jUQzk1nf1qBna7GRkZfyOrZ0TmXDmxO/jg6lk9Xz+8U0A3mIGBgYFbUOihfUhKiY6F+xoMA3Ytm9h5Ye/GUgYGRkZsmpHdqO/g2+seW1jKwMDAwMTAwMBwbNuSAuI0MzAwMDAyXjywpeTotiXFDAwMDIxv3z6VnV+VePPfn7+chDUjABML8/ek+gUazG7GKhXPbl91JEUzAwMDw/9//1kZWBh/M9triXV///xRklQDGBgYGH7++MLD9OH1MyVyNDMwMDB8ePVMmen///9EBBxuwCQgInWPXM38IhL3mBR0TXaSa4CittlOJiPboGlMLMw/SNXMxMz8w9jRexqTkJTUI0v/uBpSDbDwjawTlFR8wMTAwMBg7RXTq+fg1cfAwPCfsNb///XsvSbY+CZ2MzCgZabLR7aFH1o/t/vrhw+y2LRy8Qs8tg1OKdO39lwBE8OIwv///7PeOHfQ48mNi44f372UZ2BgYOAVFnskr6q3X93EcQcjI+MvZPUAKeSH/PUNNy0AAAAASUVORK5CYII=">Mocha - the fun, simple, flexible JavaScript test framework</A>
108
+ </DL><p>
109
+ <DT><A HREF="http://langpop.corger.nl/" ADD_DATE="1438401548" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABJUlEQVQ4jWNgGJ4geer+/6yhM/4zMDAwNB/88F+089H/un3v/2NTy4QuIJW84P+iAzcxFE4//ZnBZs5zDENQDDApXf3/9acfDHZakgy/V2cwMjAwMBx5+AMuf/Ptb4b4da//YzUgZ/ah/xcfvGWw1pBg2Nvoz8jAwMAg2vno/7nnv1Bs3Hb7OwqfUSp5wf/XnxC21IQYM9SHmzKKdj7C6mdkoCjIghkGX378JqQP1QXIXpi56xqDhAAXw+PZcXAvYNP0ulwOrg/ugimpdoz6CsIMLz58Y3Cu3/gfpjBajxtFs5cqJwofxQtnukMZRfk4GA5de84ASwfCXMxweXVhVoaFQaKMOA1gYGBgeDY3gTHOQR1FjIOFkSHTlJfhSIokI7r6YQAAm75jhkLK/ikAAAAASUVORK5CYII=">Programming Language Popularity Index</A>
110
+ </DL><p>
111
+ <DT><H3 ADD_DATE="1462468820" LAST_MODIFIED="1462470543">Front End</H3>
112
+ <DL><p>
113
+ <DT><A HREF="https://frontendmasters.gitbooks.io/front-end-handbook/content/index.html" ADD_DATE="1445371844" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAC1UlEQVQ4jXVSv0t0VxA9c+fu+7FvRVxU0IRECEIIErFbwQ+3EEQkiyDbWFoI4n8QSBCClnY2FsFmZUEFUwlW+TClWAQWiwUJIcgaV1DX9za+d++dFN9qSOGBYZhhfh4OLSwsfMXM/4Rh+Aige3h4aPEfuOffcpubm6rRaOSfnp76RCSgSqXSERFnrU2I6E/P835XSv1mrf3l5OTkAQAWFxcHwjD8LsuyGWPMtyLyBTNHAIgqlYoQEYIggLUWSZIgTVP4vv8XEf3onPOI6Ic0TT/zfR9BEEBrjSRJAADaGCN9fX2yu7sL55y0Wi25vLyk8/Pzz+/u7n5WSqFYLKJUKtmJiQk3NjamoihyGxsb6cPDQ14DIBGhgYEBxHEsrVYLKysrWFpasqurq845x1tbWzI6OsqvnFj7iRIiIiUiICLpdrtSq9Xo+flZ9vf3USgUoLUWIqLh4WFqNpuyvb0tp6encM6htxiKiCAipJSiKIpwe3tLURSRtZZE5M3Ozs5oZmYGV1dXuL+/Ry6Xw9sA5xyCIMD09DTq9TpKpRI8z0PvOhhjMDc3h4ODA4yMjGBoaAhZloGI8PoCnHNgZgwODr7FrwjDkPr7+3F9fY2pqSkws3LOgYig3xTDnzRjjPlfMxHJ0dGR1Ot1NTk5ifHxcRhjLDOLiEADEBFBt9uFcw5KKQnDkJRSiplNkiRUq9UwPz+PtbU1ISJ0Oh2ICACI1lpTmqZYX19HPp931lpzcXHBs7OzEBF4nic7Ozvu8fERe3t7rtlscrvd1nEc61wuB6pUKk89QXlExL7vI01TFItFdDqdTESoWCxyq9UiYwyYGURkmDkFYLS19sssywqFQmFIRMbSNP2GmT+02+1Z3/d9IsLNzU3med6vYRh+tNY2APwRx/HfIhIT3sHy8vLXLy8v3xOR53neT8fHx433aqlnqlqtcrlc1u8VlstlXa1WGYB67fsXNjxy8R1L2VcAAAAASUVORK5CYII=">Introduction | Front-end Handbook</A>
114
+ <DT><H3 ADD_DATE="1462468657" LAST_MODIFIED="1462470538">JavaScript</H3>
115
+ <DL><p>
116
+ <DT><A HREF="https://www.youtube.com/watch?v=MT0LKcVh6Rw&t=1m55s" ADD_DATE="1442794562" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB/klEQVQ4ja2Tu2qVURCFv7X/SxJJMBaCgZgIigQhD5BSsbDxPYKiz5BnUGNeQKOk1dLW2xtY2ATMpTBihJxwzr/3LIv/xESxERwYhtnMZc+aWQAYkqEa27TWW53V8Vs6G8v/EAFsL127q5RWEj6XpKmACdtNkhJA2CGpSzAM+zjQwBHvFz99fqXtG1cfTKh61EoYUF8TJYHB+LTd2Bcwshm6PKwjtNrJHjg6jzsCMBhKdQNtY5eC+vy+uB2N1IS1Wmd7roQx1BaSjW3a60t5tPNFcXBQVzMzNoAtJGRHYCzmUg6mO6MclsPOSPlowIV79zX//GW0N2+NusFxlOGIMC7FzmH1OUynEm5ymGLIYRXjEnYZjdLU8nK78GyzvbT5InvhSpdHHYVfsZRwU+fw6ToAY7nYNC0AZXs7D96+U/5+mAKh8hus1CXcAQ02Sf10kZKGu7vd/vpT7z9Zr7q9vaaamYaqguIeTgmg08fLi98SzLrfz8kuoaqiHP5IaXJSaaK1yxg2ehAlFPC9juK9SprNONskATZQOml6poSDGGV8MmN/B9FYTdh7dYnYQOlxK7XYSONIJShxerDjwe3++51N59gQwJuL83faipVin09m0qIFNaCaCJRUsLKJocQAOOoKH25/3Xn9r9z5uxjS1piia2f0TzqfUHrrDJ1/AqtRUJ+QQfrIAAAAAElFTkSuQmCC">Deploying a Location-Aware EmberJS Application - YouTube</A>
117
+ <DT><A HREF="https://reactforbeginners.com/" ADD_DATE="1446561586" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADEUlEQVQ4jS3RS2hcVRzH8e85c+bOKzNJE2PTaaNSU+ortPWBTRWLC6tgN+KDggsVFMSlj6ULEboUQUWpK0EFN4JNpZAiikiqjVrbSinYtMbmNUlmMs975957zvm7SBe/5e8DP37qk/kPxTshiT1xuJVOx+PilCQGG3uU9fT7IM6SUXmSvsUmFnFgkr7DJkIceqKu0G55dL/HaiOPdhbvHGFoGMp1aHdzaHp4L4gTvFeYOHT0e0IcOhp1zcNDl9k5vEhrxPDdhUn6keb5+39jsNBiYW2U6bmHyBqHdxoRMN22JeoIYUvIxSHbRxp89vMUuyqrHDvwCyaTcPqve7h4/RFeOzLDtsImK/UyWWPxKHS74ejWLWHdEbUc680iKzXDhfkqaRIgTnP+apXFjYDVRhmfpljrsanFJgmmtyFEbU9jE8byMRPDbZ7d9w+H75qn3jP0+lk+ePlbTv6+h8nbF5m9dAfNTo5tAw5RCnXs+LvSanme2rPMWKnHYD5EiFlo5Jk+X0WjeOzeq+ytruNVSr1TYr1V4pufDpDPe3RtTXi0ukFBEo5/fydfnh1npOQ5OXcbH790ls9fP8OZPyYoFmOmf53k/a+O4MVz9ODfW6+EHYdYSxRnaHUhTcGgSVPIGUXOKKwHhUZEiBJFFAcExuFFoQ6/+paEseLFg6uUAkc5sJRzCZdX8py+NExGZZjau8T+3Ssk3tPoGqwYvph5EJ1xmKjv8QKf/jDGZDXk7ScXmb1W5on71pjY3qOXOvbtrnHqzx0cuvs/Tp3bz7kru6gMRKDAeA9KFKWMsN4OmLs+yEczO/h69lbeefoalYLljROHmF8dQimh0SmQzyUoFHjQ4hTiBOfBaBgZSCkEnlsqKYUACjkYraQUgoTRcoxWbJUBRGHEAUqRNUKtZbhRD3jvmRvETjjx4zidSPPK4wu8MLXA8maRf9fK5I1FZAtRDzz3pqABAQEsmp1DCUvNAAQ0ntRpxodDas0CaAEFCgEE4xUoEZTaErMZYakZkDP+pqoIjGd5s0jWeLwCuTlCUPwP9dOijlBFTsUAAAAASUVORK5CYII=">React For Beginners — Learn with Video Tutorials</A>
118
+ <DT><A HREF="http://reactkungfu.com/2015/07/the-hitchhikers-guide-to-modern-javascript-tooling/" ADD_DATE="1438008360" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB+ElEQVQ4jXWSy2sTURTGf3cyeZh2JmkyiTYhFS1ViqKoKEJFUAiIKOhKXAldufT/ce9adGFdCS5UsOrClTSKUqJJ0+bZMZPndXGiMzF64HLPPfee833n3E8BmqBF4+DkwW1BqwYhE0Yj0GP+ZebU6cA8XLkLoyHE5sFagPaeFNt6B82avNuvw1gKKkATt2FpFU5egvIWvH4iyRdvwuZzsNNwtijs3Ca4bXj1GDwXRSSmKd6D5g4MeoLUqIJSEIlBr+u3phT0PbhwXWJvngKJjObGfU3I1JN5+Eup2Zgw1tx+oLFS2qDflU7MiFRVyp9JpgDhQFwZ4mcLYKdgNMTAc2HYBysll/ljQhfASoPtTAZsQTonvu1AuQQ/2xhoLd/l5P2fyBbE73YgmfUZJTOyuy3wXACEU/0HpA7JZeWLj9rZm6AqGfDvNuMWePuBArtlWDgIhgGdhohmLilI4agkDAcQm4P0IhRWofI1UKBRFZTMkiD0PVg+LWIJR+H4eVg8CifW4PIdqH6D76WAkACOnIJzRfj4EnIrIqrPHyB7GHLLUK/As4ew/QnGoz9j8QsAXFsXFi8eQWsXEo60dOYqqJDE/zJj6vR2QwbarIlkx2NYuyU4mxszybMMQDSfyAjNQQ9K72Fne+ZZ0KZlakY0+RWNnf6/lAPrF1JQu5annWAYAAAAAElFTkSuQmCC">The Hitchhiker&#39;s Guide to Modern JavaScript Tooling - React Kung Fu</A>
119
+ <DT><A HREF="http://fitvidsjs.com/" ADD_DATE="1437500471">FitVids.JS - A lightweight, easy-to-use jQuery plugin for fluid width video embeds.</A>
120
+ <DT><A HREF="https://zyan.scripts.mit.edu/blog/backdooring-js/" ADD_DATE="1440942229">backdooring your javascript using minifier bugs | discrete blogarithm</A>
121
+ <DT><A HREF="https://medium.com/javascript-scene/must-see-javascript-dev-tools-that-put-other-dev-tools-to-shame-aca6d3e3d925#.9ngp8amix" ADD_DATE="1448804891" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jc2QyytEYRjGn/e7nHMmZk5ukaKUHYrIwsLC34CFslZGGsLCJXYs1EhTs7GxNTvFX2ArCxsryaUUjRkhzHfOazFuM+fITp7d1/O8v/d5P+BfSO/HE7iYivzkMzPFbuaSNfmF3nKPAACZCZYahUjU266ttmfPujZy30OVV4k4+0iBwMJSp9LR07nY6m4J4COsbJhYg7fRIjrnD3vGCu71TIsx3jGYK76tZWmry/u69WZRXsm8QJHnz5wXjuaYmTzjbZUMAwCDREQ1AYAKu7lYixfd04RkiwbKfekoKEcDAAINQODiEjjyvrAUsIlgufbnOwhgYgDnACCfPSUfTYmtXRsQX2NBAABUinHfEg8AoPMG5Bf/WDgKMqJLoiEA5tuO9F62Ox31o3qaFd3qnAGIXi3XCaTfAXQQViTbnkpmu9N1pGjYqrB3SJIXDhjc7IegIRCdgIgDoLZU5q5qbVQJ2UokUkT0FHo6eEciM9kXbn6pkVdq683yyG+5v9EbKVp4zoYta9gAAAAASUVORK5CYII=">Must See JavaScript Dev Tools That Put Other Dev Tools to Shame — JavaScript Scene — Medium</A>
122
+ </DL><p>
123
+ <DT><H3 ADD_DATE="1462468636" LAST_MODIFIED="1462469829">CSS</H3>
124
+ <DL><p>
125
+ <DT><A HREF="https://github.com/sezgi/CSS-Best-Practices" ADD_DATE="1445016655" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">sezgi/CSS-Best-Practices</A>
126
+ <DT><A HREF="http://sachagreif.com/sass-color-variables/" ADD_DATE="1445016873" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABz0lEQVQ4ja2TP2hTURTGf+e8R/5VqNBkKgh1ERQla2OhUBECiqJYHIS2mOLkIBWcHCtCh4IIBgtVKQiCgrgFBCGo3YJCURQHISBIW8GKTWzNvccl6HtJig5+43fP7+OeA5/QobXzh/fh7QLGKJBv268Rqqgs5O68fB+dlxg8UZhBmAXSncFtNTGu5paW52MBNn4gsZ7Z/QSsuAPYIalkG19PysM32wrwpa9/7t9hACuu9/VfB5DPU8MHA5NXQNB+rakGE43vrY/ptJYAmk2/mNkVDg3cff52bbJg7TmnGhzSEClFYEyY9uZKqYx88GovWuqrqYy88+ZKHd8IvLmSmif29WRgdYwxYFCNM+p1P7AH40T3JlZUhKGo97MlZ83ZuMA1g3yY+lERs9OB6ZHuW8igdoXCLQll1pusBMmtc24red9URpz6uR7XDBSod5g1jFMi9sBtJ46B1TBmMI5281ZXwyoxS5gWoQx8crDihEcIVYHy6lQhH50VkafqhQXA/TaN26ZSzjY29oYmI6HXUdtMHDf0sRpLEd61sEUBWJ0cvinIxR477igRbmTvLV9SgFzj22WQyt+gCF4Z2Ny4Av+rTLGQP3UeI17nZ73q/AseirYwI+Ri0gAAAABJRU5ErkJggg==">SASS &amp; Color Variables | SachaGreif.com</A>
127
+ <DT><A HREF="http://www.flexbox.io/#/" ADD_DATE="1447709150" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACvUlEQVQ4jU2TS0+cZRTHf//nPc87VzpgC+WqxURCa1y0MTW6cK0bV9WF8YMYv4sfwIVd6s6FNTFtExdtAiWGNoSLMMB0BgaYmZf3OS4GoouzOflfT3L00fc/lxFhSYqSR5eiC1PAXEQHUyAiootcuAHmQZWQDS0ijDHAriaTMIfINRmic4WB6CLzMcZikgwRcUUXGa7c+Z+oExmLGAlLGRkiCplLZpLngixlmOSWNI575WZ+TR7v8iC/rhiRW3TJXJi7zEUOMnzsgjCBARWJLEFWCkrHU6lYifrvBnJyhXEvH5MpEiCEGI0uqedGzMTUZJXJVk5n7xyzq6gUUHoiIBBIMD/TJCudSsx4+GCOy9GIVMDK6hSdg1N+3zrFQhKRwNxMzSdrkVywMDPBe7N1Jho57b0ufzxpM32rwtZmn48/WaK4HHBjMtKoZdijz5dZmq57s6oQsyxlko47ZyzO1VlbOyIk6LXPOGqfYRIbL3qkIpLHSKNexd72Bnz7xfva3u351k5X01N1bk9X6Z+KkFr0e10a8RZrz8+guGCiuUbrxha59cmK+9jL9ROePOvR7Ryz+XoAqYMuA8PzNyzMbtPeeZevvvmFNBKtqX3e7i3Qutll4YOnPP3pB6wauvz5/LEfHbbChysvUj32dHt6lwznzvI6vc483cNZKnngzuozTv/5jr1X9zjcvEejcYI9+vJHb1YPtLH+mS8tbqu9M++Liwcc789wcf4OzYkj0qgKLjb+egjl0H0gBof3sZBcv/72dRnDCVxGRTOP2Yn6JzfJXJAi+2/uMuisELMBw+4qzUbNazmMjkeyMg5t8+8HGvUjkzfOKS4yXfRnOT+ex4ctLEUqQeRKKDeW7xoB17BTuEJBVCnbfPVpGeXsvq6pouDVkFS1grxSkGs0/joC5iP2Xwor5aZA1YKisvJfD7Ie+B1QM7UAAAAASUVORK5CYII=">What The FlexBox?! - A free 20 video course to learn CSS Flexbox</A>
128
+ <DT><A HREF="http://learnlayout.com/" ADD_DATE="1437500266" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB9ElEQVQ4jYWSv28ScRjGP987iuV+sFCaGLGamFSDg04y3FLa2ckL6dKkk0Ea/wGZGxMXo0mhkzVdmghuLl3aDtJNF8XqQv3RobVpAtxx/KjcOVwgoiDP9j7v8zx58+QVjMDcXNJr2DYAqqaxt7crhukCfxOZUvHHL8+Lyc/f8JCLADzVK8y+LXgBIY5yhnl5aEBm95VGULJ68+eT79x3vvgib5JZn45lSkWPjqvnkikbQAJY2t5UCUpW96zOYb4AQPxGjI1HQV4+S3HzmgbAYb5At2pBULKWtjfVfoCuKXa92aT8ZIOZtDmqFmbSJuXHL7BaTXRN8S9IlwpbAK7nEtJUZDG0KwBkIZhUFLquC0C6VNiSJMQiQDik0KjVR5p7sGs1wiEF/3yxKPUWB9k1Lt25PTYglrjFQXatP/cDItlljt99GBtw/P4TkezyvwHTijrWDIDnDWglF3cB4NSqo09FxvrD0SlOLb8rF3dBWjdSOwBRPYxTrdHeL480t/c/4lRrRPUwAOtGakcCyBmmkIQgvrrCecL/OafZodEOYLe6OK0uAOeJ68RXV5CEIGeYYqCDHqHJEwSEoPL1BPXqXVQlQOWoSUAINHliQAsw9GselIpt+dvP4D3lDIDXToTulelO3jAvjC3pTyST814yOe/9T/Mba2an3a+5tQwAAAAASUVORK5CYII=">Learn CSS Layout</A>
129
+ <DT><A HREF="https://github.com/clef/frontend-styleguide" ADD_DATE="1445017171" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">clef/frontend-styleguide</A>
130
+ <DT><A HREF="http://cognition.happycog.com/article/hover-crafting" ADD_DATE="1445016658" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACKElEQVQ4jaWSz25UZwzFf/7+zJ07RBlKk01EIA1QBLRPwKJvxQpVfS3UDQJBKGGTlgVIwGLorJoJEpnJvXe+a7uLJBOxKUL1xgvbx+fYR/6eTJz/Eelbmt39ixxjJJnZVwdFBHfHHVKK5JwxM5qmITn/rUAQzpfknDg6+sT045R/Dg/5dDQj8RUChuHu5Jx59uw5fx285vL6mOGwZn1tTDK/QDjfJCKIyEpvSonZbMb+H/vcuvEja2uXzupCcnPMjBAC9bBGglBKoSzLSjsO8+M59XBENRjQNi1BBHMnaa/Uo5qu63ix94L5Ys7uD7tsX99m2S1XLFSVZbekLwVVRc4Bqrriz4MDHj36nfnnYzY3Nnnz+i33f7nPTz/fo2ka1JSqqui6lsV8ASLEEFBTYpUHvz15/ITx2pid6zuM18fkQebDu/eEGNja2qKUUzkvX+5TD2t6VVSVUgppOply++ZtqqpisVjgbgzygBwTe0/3GNU1d+7e4eNkwvH8+PT3KWLmhCDIrw8eet/3AAQJqBYcocoD2q4l5kSuMvuvXrH5/QbXrl7DzFaHTyfzBWpGShEAVSMEQc9AS9MynU7Z3d6hHo1oThpCiPSlEGMgNe0JIoFSBDe78IAIqj0xRr5bv4y60Z40iAi9KgKEGEhN05Jyxu30VUEE5MJM2is4hBhXRlv2HTkmvAjpcHbIxpUNHDBVSAlTI0g4A+KUmQXcHTNHJODm9Kb8C9+OMgqxdqLFAAAAAElFTkSuQmCC">Hover-crafting - Cognition: The blog of web design &amp; development firm Happy Cog</A>
131
+ <DT><A HREF="https://medium.com/@Heydon/things-to-avoid-when-writing-css-1a222c43c28f#.q5wil5rb5" ADD_DATE="1445870909" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jc2QyytEYRjGn/e7nHMmZk5ukaKUHYrIwsLC34CFslZGGsLCJXYs1EhTs7GxNTvFX2ArCxsryaUUjRkhzHfOazFuM+fITp7d1/O8v/d5P+BfSO/HE7iYivzkMzPFbuaSNfmF3nKPAACZCZYahUjU266ttmfPujZy30OVV4k4+0iBwMJSp9LR07nY6m4J4COsbJhYg7fRIjrnD3vGCu71TIsx3jGYK76tZWmry/u69WZRXsm8QJHnz5wXjuaYmTzjbZUMAwCDREQ1AYAKu7lYixfd04RkiwbKfekoKEcDAAINQODiEjjyvrAUsIlgufbnOwhgYgDnACCfPSUfTYmtXRsQX2NBAABUinHfEg8AoPMG5Bf/WDgKMqJLoiEA5tuO9F62Ox31o3qaFd3qnAGIXi3XCaTfAXQQViTbnkpmu9N1pGjYqrB3SJIXDhjc7IegIRCdgIgDoLZU5q5qbVQJ2UokUkT0FHo6eEciM9kXbn6pkVdq683yyG+5v9EbKVp4zoYta9gAAAAASUVORK5CYII=">Things To Avoid When Writing CSS — Medium</A>
132
+ <DT><A HREF="https://github.com/stubbornella/oocss/wiki" ADD_DATE="1445016780" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">Home · stubbornella/oocss Wiki</A>
133
+ <DT><A HREF="https://css-tricks.com/" ADD_DATE="1446824873" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACmklEQVQ4jXWTzWtVZxCHn/c978m5596bm3hNpAGNH7SppTSo0EYtuqkRcaGCCLqtG/sHdCX9C7rosotCF+2uVBC6aLGuSilVglilmoRqSY1o4o3xJvfjfL0zXZyIYNrZzcyPYXh+M0ZFEiDi9RBP+uQOoAyMTWKs2yQBUqM+101lE5D+c5PWD5+CKiOnPicanwL1m6QOFTAGjAVVXuZFexHfWQagaD8mQjZ6ttSrgCpOVfCri/TmruG27ibefQQTVrDxECYIAbDxMKiiRUby96/kKw+IJ6ZxW8Zx6nPav39F54/vsZUG9cmzDE59jI2bGBdtDGhSdJZZv/E1nTtXkKRN/nyBLcc/w6GKjQYxgUPTddZnviV7Nk/t3dOYMAYgX3nIi1++IF24AeoxQYiNBkEU43urKska/fmf6c7+RL48i2Q9gvoomvdLpmGM7zzDDlQJt+2luvcE1Ylj2MoQxndaWkI0SLJGuniL7t2rJI9ulqAAjKWy4wNq750h2n4AW2lsAFecqgctXVBfoOKBzc6CouI3NAKULphi7alK0qY3d43+/HXy1l9IkRBUt6JFUi7gKvjeCtZVCEfeJJ74iOrEcWw8jEMK1me+oXP7u3ItY6mMT1F75yTt374EYOjwJbr3fyR9NEP29E+ypXv4tSWGPvwEi3gk7aLiMVGN+r5zNKcv44a3o3kfzfu44R00py9T33cOE9VQ8UjWAfE4jGFw/3lcY4ywuYto/H2Mi8iWZlGfgSq+2yIcfYvG1EWisUny1QXiPUfBGJyIxzbeoL7/QglKBcTj+6uozwHw/RclQAzRzoNEuw6hKoj48pBQRZFXvEUIaiPYahODIahvK8mroq89lMlaD/73nbPlOTAwMPo22OA/rCX9F7TzTHPPoc9GAAAAAElFTkSuQmCC">CSS-Tricks</A>
134
+ <DT><A HREF="http://gridpak.com/" ADD_DATE="1437500392" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAN0lEQVQ4jWP8duXKfwYo+HrkCINIejoDAwMDw5uZMxm4bWzwijMwMDAwMVAIRg0YNWDUgMFiAAArLA+9ZQCfZAAAAABJRU5ErkJggg==">Gridpak - The Responsive grid generator</A>
135
+ <DT><A HREF="http://getskeleton.com/" ADD_DATE="1437500348" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACqklEQVQ4jaVTTWhcZRQ9596ZN0nHZIIgaoeJPkRoUBdikUIhlWpjsS78KUrdaGmbTVdWEbpRxEUhoAvFv4WgC7WKukpBd01AFGpX0lJBfZASRV04sZMmfe/d77iYVKO488BdXc7hcs65xBAEIADodrs7ms3mUwCmAUxu7JcALFZV9e7y8vLXmznE38jyPD8B4KiZtSRhM0gipXQFwOtFURwHUF5V4Qb5U3ffFxGiWRCyuqopAOYNNd1SHeHmzhRxqiiKRwGUDgB5ns+5+5MRUYK0VJe+XtYYGx9HK8uQ6nX+fumyZ1kmKFVmNjUxMbGl3+9/wV6vt73ZbH4pyUESURpGbtTxF1/igYdn0LYK5789gw/eeUMn5xeYvJUoiWRUVbXT3P0wyQyg3Iwrg1L7Z5/lkcfvx3dfncLH86dx25078ch9O7h+eU1GI0mRzNz9cAPAdEpJAI0I1myjd9M2KK7g7MI85t77HG++djMu/fYTbGSMVCCSjKQATBvJyaGRYoJpxNZx9sxphLcw+/xb+P7CObxw7Chu6W6FFBBNJDkMhpPM83wAoC1JNANTzdWywu3bd+HBmd3Y+8A+bMu3YvXiN9i1ez9+rU1NAhoKDEzSEgCRlFP8Yy3hyHMncOihu3Hy7Tk89sQszv2yhvYNPVw3Ooo6EjfOV0rpYgPAoplNSYqI4OjYNbhnZi/vnboeBw4+jZQAM+DCwmf4YWVFrcYoBCQza0TE4j9jBAiFjVzb1Z6ZPbxj6lZ0Wg38/ON5fPTh+1rq18yaniT8FSM3ivSymx+LFCWARorKBoNVyRxOIurAlvEOM2eSVLt7FhGvFEXxzH9XmRbuZpCood1KESlJ7u6Mf1cZQPT7/U86nU4bwF1mzFIaFu7qkDRJpaRXi6KY3fxM/+ud/wSNqmLGBujKVgAAAABJRU5ErkJggg==">Skeleton: Responsive CSS Boilerplate</A>
136
+ </DL><p>
137
+ <DT><A HREF="http://www.nateberkopec.com/2015/10/07/frontend-performance-chrome-timeline.html" ADD_DATE="1444229928" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABPUlEQVQ4jZWTr04DQRDGv7tC2gsHpgZBgsAUg0CcIbg6REkVqQLJE/R4A14AtSQVJUWQVCEIkhoEktDUYDZVpKr0ZrYJtwiOy/0/+JIVO7u/2W8ms0COpJQWMWti9qWUVt69TBHRLICja9JwnHoxqFQvA4wtT6lulDEBQAjRImYNrU/L3BlaXxKzFkK0AMAAAGLW/6oxkFWrGSvJoBoMMR8MM4H1ThvVTjvuKOqA3qf4OjopfLVyfwtrZyt0EEvwuXv4J+v2eBQmMKMHC/eiFF64bn4JADB/foVxdp4J+9dX2DjYC/epEn61nH5g2Yw3a/XhDtXtzVgsNwEA+KTg7Td/Lr48orKWnuawBzf9/nHy0LSqsMcj2G9PmXAWA0+pbtkok1K9FBhVw3HqxDxJgUSzQjCp4Dv7xKyLvvM36KXr4ixoTrcAAAAASUVORK5CYII=">Ludicrously Fast Page Loads - A Guide for Full-Stack Devs</A>
138
+ <DT><A HREF="http://www.20thingsilearned.com/en-US/credits" ADD_DATE="1445476273" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVQ4jWO83j/x/7N58xnIAVJJiQyMe3UN/pOlGwqYKNFMGwM06moYnC6dZ7A7cpCBU0YGg0/QAKmQYIbP164zsPDxMYi5uWLwYeDf///YDXg4bz7Dq127UcTQ+QwMDAxMjIzYDbg7YRIDr5YmTo0EvSBkYc4g5ubK8GzNWobvT56QboBcUiIDAwMDw8N5CwhqxukCBgYGBsttmxnkkxIZ/nz6xKBckIfTABZ0gYfz5jOw8vExMDAwMHy+do3hfFoGg3RIMMP3J08ZHmJJ8sMhKYvFxZKtWSwulgEAIPNI+ynQDfYAAAAASUVORK5CYII=">20 Things I Learned About Browsers and the Web</A>
139
+ <DT><A HREF="https://analyticsacademy.withgoogle.com/course01/unit?unit=3&lesson=1" ADD_DATE="1445624929" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB70lEQVQ4jZWSP2sUURTFf/e9N+vM7B8WEk1INrhijJX4HUSChaAo+wEEC1vByt7aWuy0cyGIZSAfQMFOJLJqGqMEY5JlkoyTnXnXYpYkxk2Ip3q8d+5959xzBUBVpdvtGv4DnU7Hi4iKqprFxaUH4K8DxenKRUTsi/n5a2/c9nZ6d2Ly3OPNjY3pKIpG0xFEDKAUviBNU2ZmWld2s8w54+zN8bGxaWctc3OXEJG/SwXWd7/zI1mhYkNatcv0lr9SORPO5YP8lpMhyxghCIL9Us1zNEsxxvHp1zte954xHk1x/+oTRISd3R0QxB3nMn3/ls2Xz3H1Jnu3L1Kop9AcUEBQVX5nGfsNBGEzyeh9S7CBo7W2Trb8Ad8cQ7MWSMk6ioMGBr6sJjx99ZE4rvBwMqNmLRh7Yh772ctQnKqiWp5Pg3+WRw9cDi/0yOsxFgZ5wdTZCvdutHHOMh41CRqPMJWQ2fYUd4pZQhsTaIT3xaEG6gmcI0m2SdMeE5Xy79UM/MxsKfMn1GkD8HlthUGeUzOleOdR4mqV8xfa9Pt99JDk/tYWzgVUazX0kHwjgrEWLRWoFxEa9QbWWJIkwasHIAwjrLVYNzoJwXgnsKBKKIKNqzF7+YA0TQGo1mvHzB5EtbCGBSkHrYZRW3IyVET8H7b4utY4SVq4AAAAAElFTkSuQmCC">Digital Analytics Fundamentals: Understanding and using Google Analytics data - How Google Analytics works</A>
140
+ <DT><A HREF="http://www.smashingmagazine.com/2015/11/modern-static-website-generators-next-big-thing/" ADD_DATE="1446560694" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACvklEQVQ4jT2SS2hcZRTHf+d8dx55TJy2qeMYUgl2ExVCoFg3FQQRBUURFxUVixJURLGge125Epfd+FgVRApKwV3QjUYQxC6sio1iiUmnyYSkM8nMvXPvd46LO/XAWZzN/3X+dFYWvfflBx7d3YrczcxjjOXt7mbm5uXYePPdjt98+2G/8fySJ9qYoLr8OAI4Am6IKNbbIvvlInFvEyygEy20/QDVpScY/b6G7d9Eppsk2mgSZu8BQFTAwd3JfvyIYn0VdAbLcuxwhPUzkrVLWH+I1OqAkSACIuAO/6uIkO6gU01cG6iOQCIEo7h+BcsEqdRhFFEf3ML2O4Dj7ggGmlBZXoFQxw+7eMwBwAyqE0hSA3ccUE8HjK6ugihYHKsxkhNnmHjqEyqLz0KoY709PB2CC8RSLe7I9runXWow8+oFKgvLeJGDhtKMhpK41yG7ukr202Xy9d+ASfBAsTFAts8/5BIK9OgM02c/pLrwIA4l0Dif20Cep6RrX3Hw9QWKv7rYfoJsv3XapabE3gjvweRjLzD1zEuEI7NjoKJ0hSMSEFVG16+xe36FYmsT6bxyymM3wkghgGd9QnueyUeepP7o01TmF0r2OM4nFmilSvrrFbqvnSW80zz6PpmDgoigtUm83yf7+QfSb78hdraonlwkTDdwMyQkeCxI7pojbv2LbJy5zyUIaEBEAYegEAIUBXZrj+TEvRz7+HOSufnylQCqDL//DsUdj+BpiqWD8p1FxNMRFBE9cpz82h8cfPEZiODuuAgASauNiglkKaE1R2jNUdzYxIZDiBEzx/Mcj0bc2S6ZRZDbrXVHUcUOBzRefp07P71E49ybhNbdeDR8MMQPDkja80w992JZnHGBECH/Zx3ZOHXSQ6vN8YuXCXc0ESD2++R//4l1d5BKhcr9SyTHZjEzZGwDM3bfe4P/ACNBge4xbdhcAAAAAElFTkSuQmCC">Why Static Website Generators Are The Next Big Thing – Smashing Magazine</A>
141
+ <DT><A HREF="https://www.staticgen.com/" ADD_DATE="1441300655">Top Open-Source Static Site Generators - StaticGen</A>
142
+ <DT><A HREF="http://briefbox.me/design-brief/e-commerce-page-design/" ADD_DATE="1443190192">E-commerce page design | Briefbox</A>
143
+ <DT><H3 ADD_DATE="1462469578" LAST_MODIFIED="1462470559">Assets</H3>
144
+ <DL><p>
145
+ <DT><A HREF="http://unstoppablerobotninja.com/entry/fluid-images/" ADD_DATE="1437500440" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAXklEQVQ4jWNsaWn5z0ABYFzDx02RAUyUaGZgYGBggTGCP36BC67l58GqGJsaJnQJbHx8aij2AnUMQPcztjDApWYQROONskqKDKBtLFRXVzNUV1cTbwAhDdjkBz4hAQCR+yKioXnSzgAAAABJRU5ErkJggg==">Fluid Images — Unstoppable Robot Ninja</A>
146
+ <DT><A HREF="http://www.pexels.com/" ADD_DATE="1437500691" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABoklEQVQ4jY2SP2taURjGn+d4vF5ikVIkOAWxmwSpei0hQ8iHyCfIHDJkCCFDyZAhs2Pndrn4ATq0WwZRuYSSWULIICV0uEKQ4z3nzaLBptfoA2d5zvN73/f8Ya1Wy3ue1xaRAwAFrKeYZMcYc6xn8OGaoAFwB8AXkUPP86BmndeSUqpTqVSq0+m0CiARkQO1Ymw3Wy8Kw9Dl8/m5V2Cz2ZQUcKSUujLG/MxmswmAfRE5B7BJ8lZENgBUAUClwA/OuZ1er9fO5XIja+3ffr//VWv9GcC9iARzOLUAydMoiu6DILiw1o6UUqNWq9Xudrt/SB79l391hMT3/Q/GmC3n3O/FBkqp/XK5fD0cDh8BvF82QTKZTCZJkpRS9kphGDoAT4vm65BPcns8Hl8DuF3w75xzPxqNxhaA0lsF4Jy7qNfriTFmj+QJgDOt9c5gMIgzmcwXEfmHSX1Gkt+stSdRFD0CQBAEBZKXIrLyEhf1JCI3JB2ATwDepYU0gBjpv3GD5O6S4nPFimRnRWipSHYyxWLxl9a6BOAjgNyabEzyuzHm+BnDUKqc7NVSYwAAAABJRU5ErkJggg==">Free stock photos · Pexels</A>
147
+ <DT><A HREF="http://www.stockvault.net/" ADD_DATE="1437500711" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADcElEQVQ4jW2T209bdQCAv/PrOT2lF2Atl0ELCBMYMAVcmiEjZMkMMTEmJovE+OBe1PiwGJ3zVWPcP+DDlj355hIvacQXzRY6IenkMhgMsumQSyNt6aHtSQttT2/n+GBMZuL3/n1vn8T/oOt6l67rQUmy+YRiw4at6HI5Hu3s7PTni8WeJm9LZHCwbx5Aflbc29sbXVxc+jJ8b/5iIOB3tLa0kIglqFarxGJxc25uzvIHArZkIh7VNO1MS0vLsfhXDofDb4dCM/NeX/NrQ0MDjoGB0whPE/7eQdraTrK8cF/U1TlsQpJIalrH1tbWOIAAiEQiU3fuzH49PDLiDvjb+OnHGbRsgf10gQfRLIspG7FUlobGRgA6AgERiUQuAQhN09y3btz86tzYmFoo5FlYWCA4cYF0RSb98wNal3ZIJrLs7O7icrowLQuXy83aw7XLB+n0mKxp2juXpqf7Xgi+TCxbYddI4DrZSXbzL862ebHXIP3HBqVsCsWuoMg29HKJF4dH1JWF5Y9kh8NxcWTiFbGdPCZ9e57eapnimQB/lqoc/rLEwEAnlrMAkoXb7cEmJPLHx6iqg+NC4XVx68bNVrNaQdJ1hoMBzn36BpvJI2KqSurVXh41aTx0ZKiZEna7HUVRcLtd1DnrsNvtTnl/PyYlots0HydRvQ2UhcX4cw2sJQSRqJcNo45kLoVTElQqFZwOlXw+j1KpAiB8vhPxlcXfMDt7qDgsMobFyuo6sbvfcIEol3udDDbXIySJarWKCWQyOqZp/hMIjo39em92lqKpsEwHNQuQVTY3N9l6/Ji1mdt4hYSwyRjFIrvb25TKZX5/8oRyuXwopqamvtX1zMHG4jxIEpWahWV3Ut94gnZ/G0Y+R+SwyJHLS6FQQFbsyLLMUS5ndncFPhDt7e2pd99/77PQ99+Zg84islXFUNzUhMLi8n1SBwmOshkqXj+5oxy1Wg3DMOg51T0TDAZnbAChUGj12tVrXP/i88mhkbMihYua6sLjaaArOMFLz3fRLQxK+iEeTz3RaLR09ZOP3/L5fEnp2ZnCd8PTphDX84Zxan93W8TjcbaePiWtZ8mkDhkeHa309vUrnnrXDx9eufImwH8CAJZlOZeXVyfX11fHo3t7AaNgiIbG+szp/sG185Pn51RVrXm93kNJkkoAfwPks4pTlti36QAAAABJRU5ErkJggg==">Free Stock Photos | Stockvault.net - Free Photos - Free Images</A>
148
+ <DT><A HREF="http://www.shutterstock.com/" ADD_DATE="1437500721" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABCElEQVQ4ja2TvUoDQRSFvzs77BIVfwpJG5eAhSiEVL6AWPkMqWwsfQhLK2sRO0ErsdAXsFFZIa8ghmgkjaC7s9diZbQRZllvdbjD+eaey4xM+l2lQVmvFEwnxW70wFbtz8sLyPMAgEIy2KW1t48Y4w/zmys0BGBWUm9W58C5ehHses+bp1ub6PQtGFDN+50Z52qZfwANSib9rspym6iTQqkUd7e1ABZAxyOK8SjIEK2ugY0on5/Q15f6EeaOjpk/OSfe3gH+YQf1AEmCxHGlyxL4/ZT/vMKwcF0tVuIYmZlFVSmGj4EAwCwuea2qfJydUmT3iIQAVHk/PPBjF8MMlz0gUrWk6Xf+AiUAWFshvmkcAAAAAElFTkSuQmCC">Stock Photos, Royalty-Free Images and Vectors - Shutterstock</A>
149
+ <DT><A HREF="http://www.vecteezy.com/" ADD_DATE="1437500732" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACRUlEQVQ4jW2TzW5cVRCEv6o+987YGQdMIoFEjAARsUQROyR2PARrHoIHYM2D8AwsWMACCyERFoAEQUqsjLFkMonHHnvu3J9mcT32hpbOpk91d3XVOXr61X5mJnZNOlC/Bs+o7n9If3lKf3EEmQiTJGMkQiCwFNiFVIfrO3h2QHnjXSbvfALNAmzSBUqNqxocKAIiwEGRDQIIdj/4jL1Pv4TJjOb0OZ4fUqqa8C7d8oj26gRYAYIESRQX6GVKNYMyJV4/QBK8tct57NC++p17X/yAJdZnxyy++Ry6BUiAKEz2qaoZCDbHh7BZkZO7RFWjvfeYHTwi7twHoD85IvszHHGjhrM/Z2j+YWhOYHNB9+JPRCIH7folrgooScTFX99RauFiIgLbOGxkY1dkf0Yz/5HMJDOp9h9Svf0xDIK+o51/D/JI30JhTIwN5AEHbI5/ou9bhq4l3vwI331I27dcns4pmyPkwFFwBLIpCo+qkkAyLH6D1QuGssfOg0ews4M2LVfPDilakWG2AsjC43QhGSzolqz/fULXrom6Ztj0tM2a9d/fkhI3+BBIFIVuOyoQSXfyMzl7/9praFdLOPsV1yBE5vgKBdcMwiiELLAZFo8ZmjXdZk3XNFw8fcykXNzcKwzXZ2RAjjpIZEJePqG7WkJMGCQ280NmU42o1BYNsF1BoFFEY7J7RXv+jH76ALoNevkL3BPg648E272Lbf4v8o+vaa8GnA2v7a+5xekWk0lha4vGhCTIgWm9ZFpvS26tuynWmP8Pd0Ps1c7GarUAAAAASUVORK5CYII=">Download Free Vector Art, Stock Graphics &amp; Images</A>
150
+ <DT><A HREF="http://www.vectorstock.com/" ADD_DATE="1437500742" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAnElEQVQ4jWNkmXvmPwMS+JNswsiAB6CrZ2SZe+b/x1hdBgYGBgb+xZfx6YUDZPUsuCRxAXRLWEixGZchDCxzz/z/+usnSRgWFiheEBUQhLNff3jPQIwcE7IidE3YALoaJhzqUGxEZqMDDAPwuQKbHEY04nIF0S7AZRMul+EMA2IBI3raJjUlMsE0EdKIbglMPUYgkpqsMbxAanYGAG0Lc1rRYv+wAAAAAElFTkSuQmCC">VectorStock | Vector Art, Images, Graphics &amp; Clipart</A>
151
+ <DT><A HREF="http://www.1001freedownloads.com/" ADD_DATE="1437500751" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABRElEQVQ4je2QvU4CURSE59y7P/7BBlhZKxKjJvQUFpQ+gQWFPgS18QV4DjsTeztLC0KosKBQCxMLgiBLCHh3995jgSgLvoFOOZkzme8A/6JB9TzyXNceqVnDv7++fKrUPI5DN460LnfvhgDQLZ/kbUdKnoYfR4/N8bB61si47sVYRbFYNDGxBICsI+vFXNAr+kGreXicea/UskU/aAW5oOft7dcBQIMtnt+QWJ0kBW1lbAfGsL/rlSgcxGQMCjuOC4tpOzWfidcKEoY2xgDEyoQvPAJAxIq1RsKULGd/XSAE8ar3Y5j0A5nYWkoRALDRm8KyIZTyCl6JnMgmwcYjywbRbGOeZVqcfRdICA0AUpmrvhm3tNCTVzxPKw7Qp4PTt0mY1REeAICFTNYKEmYDAPn2TQdAJw3Rvk1hMhv6YljF/Yv6BPVIh1cHJJExAAAAAElFTkSuQmCC">Download Free Vectors, Photos, Icons, PSDs and more - 1001FreeDownloads.com</A>
152
+ <DT><A HREF="http://iconmonstr.com/page/2/" ADD_DATE="1437500784" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABMklEQVQ4ja3SsUtbURTH8U+iBALSB0JBKAi6CE2chA6lk4M4CU4BJ8HJVQh0DRQ6Cf4VLk4GioNjoVNXJwVxsiiIGJISiV6HnIQghpfBH/yGe8473/u7h8c7aw8ZZrE1Ul/HMY6wPG74Mzr4G+5gHivo4Qo3uMfcOMgmUrgWtQa6mMFS9IbppkeGM9TxP851nOISpTh/jN7FW7eXcYLV8G/9XUzF2wfJfoyLn6dPAXxTJezrLynl+DpSTI0Cfk4w+NrfRwHXUdzJeUY5vulF2qHuA7CdAxioof+fDHXwKl4HXxbvZNW28+W2FO5VHnzT39keFAJQCmoNC1G7xddKS6lY8EdBBin5l55UzjJ3E6al8mCj2tYdJKm27A56xUkAZx80C8/WUvJLcvjY1Zz49jy9AJ6BaQ7rOROaAAAAAElFTkSuQmCC">iconmonstr - Free simple icons for your next project</A>
153
+ <DT><A HREF="https://icomoon.io/app/#/select" ADD_DATE="1437500794" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACvklEQVQ4jY2TMUgrWRSGvztzZ2QiDGxiNDAiEiVFAgYUtDCC2qbRfp+FsJam8ZXCooXsPla2sNbiYSn2KgoiNhGNQqogiYigkWyCEZLJJHO3EPN2u3eqU5zzwfk/jkgkEmYkEvkmhPgVCPJzVVVKfX9+fv6qJxKJv3RdzwAWgFIK13XxfR8pJZqm0Wg08DwPKSVCCABLCDFlWZYppZRfPrHtdpt2u838/DzT09PE43E8z+Pp6Ynj42POz89RSmGaJkoppJS/6dFo9I/PZdu22djYYHBwkP39ffr6+picnGRoaIi5uTni8Ti5XI63tzd0XQew9Gg0+jtAq9Vic3OTcDjM2toa5XKZy8tLEokEjuMA4DgOIyMjnJycIIRACIEG0Gw2mZmZYWpqiq2tLZrNJkIIOp0OOzs7FAoF3t/fAZiYmCCdTtNoNAA+AEopFhcXyefz5PN5bNsmFoth2zb39/ccHR2Ry+UoFAoApNNpenp6fgACgQDDw8Pc3t7SarVYWlpid3eXlZUVlFJUKhU0TaNYLFIqlXAcB9u2AZAAUkpqtRqPj49IKQkEAgBYloUQAt/3EUJgGAalUqmruAtoNBrUajXC4TC6rrO3t8fZ2RkPDw8opRgYGMD3fQB0XSeXy1Gv13+c4Ps+h4eHpFIpYrEYr6+vXF1dUS6XGR0dJZVK4bouAIZhkM1m/x+iaZpcXFxQrVbJZDIIIT49s7y8TCQSodPpYFkWxWKR6+trTNP8AHQ6nY9G09je3kZKyfr6OsFgkNXVVWZnZ6nX693lg4MDXNftahZjY2OV/v7+oBAC13WRUrKwsEAymWR8fBzP8zg9PSWbzXJzc0Or1eoG+PLy8o8IhUJ/J5PJjKZpfObRbDbp7e3t2qjX63ieh2EY/Hfu7u7uTwGYoVDoG/BFCPHLz/yyUqoKfK9UKl//BQ5/LIvMuaUWAAAAAElFTkSuQmCC">IcoMoon App - Icon Font, SVG, PDF &amp; PNG Generator</A>
154
+ <DT><A HREF="https://www.iconfinder.com/" ADD_DATE="1437500802" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABXklEQVQ4jYXTvUuWYRQG8F8lEiINIZLbKxTW0qaz0pKKCiFBhDbUP1BLiLP+ASoEBZWDg5OL+FVLiURj1CAoLa9EUJEKKYj6OtzngVvy9b3hhnPOc52v67ofzj8teITGGrj/ziU8xx4q+IG+s4B1Z8TqMYNBlLGC33iAXXyo1X06uv7FGr5gGU9xpVbyYCRXuz9xt1ryRWzUKFDBIYaKpAtZgTt4H/YmFvBNIrQO7ehBEw7QiU/5BGP4g/sxDZQkJT7jGhowGlN8zXBgFk8yvws3sR+jv8q+vY1YfyFjQ9z6DLSAy5lfyuwC9xBaMY5JvMtAL50mbzjijfglybxFIq+MgQA+zro8w2tJXhLpb2KtpcDrDeMFPuIYE9J/kJ/bsVZFIryQ3C38C2c1s4+xLilQzlZZxL2wt4rq1zGHI9Uf0DZG0IbvmMLV/CEVhHajA82RWI7J5rGDG0HiNpwA/I1tIARXAqQAAAAASUVORK5CYII=">Iconfinder - 550,000+ free and premium icons</A>
155
+ <DT><A HREF="https://thenounproject.com/" ADD_DATE="1437500825" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA/ElEQVQ4jaWSUUvDQBCEv71eA8GYCP4AU6wV/f//Rmtb+qCCPlTykrOX9SHNkStNDXTgYI8ddmaHFUC5AHYscV7Oor+I8LJ6awfMyxmq540M9c1YB0MIK3jvERGMMUFRRKLae0/TNK3ygWcBqqriOs9xdY1zjjRNqesa731LmkzYfrzzvHjEWtum3ltJW5EWgBZXWai7Xp/T55rjgFQV9+sQEVQ1WuUUTobYNONPwwCRwtPDgiLPg3LnZAhy2JPb4gaALMtIkoSf3Q47nYLC3u/5/P46P2AI93clAMvNOtSd69f1Kj7lPmFo0DEuvsRowHKzDsGNeTAig//wBzh9hZafuFzvAAAAAElFTkSuQmCC">NounProject</A>
156
+ <DT><A HREF="http://lorempixel.com/" ADD_DATE="1437500867" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAANElEQVQ4jWOUbD/xnwENPK+0YEQXw6WOCV2QVDAMDMAILAYG3AFGExcMAwMYR1Mi5QZQDAC9lBQc938v7gAAAABJRU5ErkJggg==">lorempixel - placeholder images for every case</A>
157
+ <DT><A HREF="http://www.sitebuilderreport.com/stock-up" ADD_DATE="1437500698" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACxElEQVQ4jWWTTWhcZRSGn3O++zNDnUlyJ81vrWiNKSWpJIq1CxVERMGlIIguXBUKhW7ciUJXLnRRwYU7QZcuxeKi/lGMorFIoEWr0cSmbbCZDjPt3Mnc+33HxaQx0LN94X3hPe8j7NzDx16sN7KMrSaQQQPIsuyuTLPZ3NVoNvnjx3NtAAFYfOG1d5xEp4IFAHGqBAv0iwIzQ1WJXQSAYabiCPgPls99ckbGn3993wHlmrqoHoLHqZL3+qRJzORYgzRNuN3N2Wq2MBtYiDqCL9tXA1NRzQUH2rfgTQTrdnNZmJ/l1BuvsDA3SxQ5yXvb9tnn53nvo0+J49gIXoCi5oKLWu2ODdWGRFSlX/RtenJM3n/7NPsbI6xt3GB17Srzhw8JAkVRkiaJAWJmtNodi4brNRFEVIU835ZjC3Psb4ywfm2TV0++xc1mi4PT45TeU0kTQggiKoiIDNdrouw5Uch7PQCyoRovv/QsUxOjrG1scqvVIYoizAwbdA+Ay2aOphX0NFCNnGPjxr8yP3uIhx6Y5vhj8zz31BM0Rupc+n2V7aJAVRFBgLyHnd01MKgK0C8K+e6Hi5TeMz6acWByjMcfPcLEWIOvLvw0MEDvNQCqAKoqd7o5S8srfPnNEmUZOHpkhkcePMi3S79wffMmcRILZnkPO7vbgYgQgpGmCfdPjZMmMX//c50vzl/Alx5VIUkSjN39AXD3jeac43ava08/uSBn3jzBxZXfaLU7LM4dJk0TLl1Z5crqOmmaGGZiZtbq7LwRMHZ2FseRqQjPHF/cjfn518v27ocfc6ebk1YSzIIBDNdrEnW8+iElwUTu21eVr79fZuXyn0xNjFJJE7ZutflrfUO2+wXVagUfgqg6zJdxx6u/ByYBKXxJWXpCMFykVOIEVcEPgk1F/4dpL87s4DuTZWQAWYNmc2uA8t7F7cH5P5jGQS+vGUQZAAAAAElFTkSuQmCC">Free Stock Photos - Search 24 Sites With Stock Up</A>
158
+ <DT><A HREF="http://adaptive-images.com/" ADD_DATE="1437500447" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA2UlEQVQ4jaWTwQ2EMAwExwnixxNBEYgXnVEPb0qAIhAdUAmPvccpHByB04mVIlnOemOvHAPEA7gnxbcCdV0jCUmUZXkpYHyNIB0nkoSZfQp28amDNE3fSecwM8xsi733ALRte+pCgOZ5VsD74SP2uaqqFOo2gT1xXdctDncxHqCoiUmSbPMHT5qmiVFJotkLw2KIdjBNEwDjOAJQFMWtiAB1XXeYbxiGSxOXZTmbCCjPc0mS935PECDv/cG8cH4u0jduFykQzIy+7z8k58iyLGrqqYN/8fg3vgB+/LRHgtghXAAAAABJRU5ErkJggg==">Adaptive Images in HTML</A>
159
+ </DL><p>
160
+ <DT><H3 ADD_DATE="1462469723" LAST_MODIFIED="1462643351">HTML</H3>
161
+ <DL><p>
162
+ <DT><A HREF="http://html5please.com/" ADD_DATE="1454519773" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABd0lEQVQ4jaWSO0vDUBSAv5vURtGWQit08IGLg4uDkz9A6FKc/QPVRUScHZzcnbQIBVEcBBEUJx+DoIivRUF8gIMiqKBUxTbJTRzShqSJFvHAHc7rO68L/xQB8JDtnrFh9C+Jtm2PtW9cz0QATKw5FSUUEEurAdvHk8QQxgKAAtDReHPpQf/+AEtC19rdG0AEQKwg77NOvlbY91WLp1I+vZjr8emR0AEbosidVQCM1ljALUQ9gFAwC9MAfIXsoE4HAvQS2tIpAPFYs89bHK43QjIJX+UfK4oaPQAoZzqdqGijUzGtAoJ4/gIsWT2EK0otIDq7hbZ4AorX5WTJ2zOk7icEOrDOD1H7M2jze6CqxBMJd+3G0SZGyQ/wlvkAMPNT6BOD0NQC0nST38f70XeXMR2A+/G8HRwAAwgF+/WF8lAvCOHsoDq4EFgmoLIdAEiLEVXh1tdf5ft+PkssWWEoIKU2WQ2pvQoAx7m+hvTju+61ta1fhcZ+A0WFhilOMqz3AAAAAElFTkSuQmCC">HTML5 Please - Use the new and shiny responsibly</A>
163
+ <DT><A HREF="http://www.tablesgenerator.com/markdown_tables" ADD_DATE="1439310888" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMklEQVQ4jWN0a9ryn4ECwESJ5sFhwMADRrkJ/3HGwqMCRkYGBgYGfGoGPhBHDRgWBgAAnc0JQu2Z83UAAAAASUVORK5CYII=">Markdown Tables generator - TablesGenerator.com</A>
164
+ <DT><A HREF="https://github.com/joshbuchea/HEAD" ADD_DATE="1462643343" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">joshbuchea/HEAD: A list of everything that goes in the &lt;head&gt; of your document</A>
165
+ </DL><p>
166
+ <DT><A HREF="http://www.meshtag.com/" ADD_DATE="1438013533" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACfElEQVQ4jZWSzUuUURTGf/edd5yREMqPsQgZkxgD08FFH4pB5Ue0SMMI2ripTds2tRDatai/oDZuBKlFVpahQdBEwWBfA6PhB0VJymgm6VTOzL1zT4tXJyQqOnA3P85z7znPc9Xx3Q8DweJAJ6J6FaoOcPl7GUEmUHIls5YdcoPFqlMk368gIP9QrpcLREXoDxapHjdv870KWxB3n62htDLI8kLGAwoQCmyw7/0GD1hFrwumbkO8I7yFnDbksprbfVObnj13cS/GGLaHi5j/+B0lIFDnWDGuxWAxtJ+q4sHANK+fp2hsKcOKxxsPlTMWm+P+wDTtp6qQ9X4R4zqCxoom2lRG8kUKbXK8ic9Rf6AM5RqUz1C/v5REfJ6czpF8uUC0qQwrGovGsWiUz9DYHGLs6SyCRtAM35qkvTtMR3eY4VuT2HU+FvtIY3MI5TMIGtei6eiK8DmVJnqwYtPeDftCCDA3+5XKncUFvrSYprWrmtHBaVwRg88P6dU10is/Nl2QyWhE5DeeXgni+BQixptg6GaC85daeHRvfD0hxa5IKclXn0BBzmT5ML0MXqIcOVHDjavPAHBENIIhNjJFS3s1IgYrmtbOCKN3kowOJmnrjHimieZQRzWxkSkvITE4gkZEM5GYZU9DCH9QaG6rJv5kpiCKP5mhqTWMPyhE6isYT8wWTFWHa69olPf/y0MlHDtZT8nWYq5fe+zNq7y9z188yreVDCN3x1lKrW7YYVxBT4gQBVhcWMbnB6UsZ87t32ScUsLaWpbF1JdfDCZUS+3l0wrbDwT4v8oKTo+vblvDu6zjvhXJRwRbLlhHsPzxKGtEbBIlF0ryq0M/Acr8Udz9n3v4AAAAAElFTkSuQmCC">Meshtag: Drawable Web Links</A>
167
+ </DL><p>
168
+ <DT><H3 ADD_DATE="1462460682" LAST_MODIFIED="1462465414">Fun</H3>
169
+ <DL><p>
170
+ <DT><A HREF="http://gizmodo.com/do-not-start-playing-this-html5-drum-machine-if-you-hav-1749281908?utm_campaign=socialflow_gizmodo_facebook&utm_source=gizmodo_facebook&utm_medium=socialflow" ADD_DATE="1450875716" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZ0lEQVQ4jXWTP0sDSxTFfzOZRNaYFQQRIog2FhEEwT/ERm0EGxs/gYWddn4DP4VksbaxtBYU0ghiwEobFQmGGFDIbrKTzN5XhN2nPN5Ul+GeO+ece0YFQSAiAoBSChEhSRKUUhhj0FrjnMM5h4igtc76AExaACRJAkCxWGQwGPD9/Y21Fs/z8H0fYwy9Xi97AMCk4HR6Lpfj9vaWer3O6+srvV6PUqnEwsICa2trrK+v/+lXQRBIOlFEqNVq3N/f839nc3OTo6MjrLVorUcSkiTB8zyCIMjAS0tLbG1t4fs+7Xabx8dHHh4eCMPwz0CTgp+fn7m7uwNgY2OD4+PjzJeVlRV2dnZ4e3tjcnIS5xxKqZHRIkI+n6fRaACQz+fZ399nOBwSxzFaa1qtFkopSqUShUIhMxDAKKVwztHpdACYnp5mamqKwWCAMYbz83MajQbGGKy1lMtlTk9PKRaLOOfQv7fwe5Vp3Wq1sNYSRRHD4ZD393e+vr7I5XKIyEiC1pqZmRkA2u02zWaTxcVFwjDk5OSEz89Pfn5+uLi4GIGMyYKnlVJYa1ldXc1Sd3l5Sbfbxfd9Zmdn2d7eplKp/GGWBUlrTRzHzM/Ps7e3x/X1NS8vL5ydnVGtVpmYmKDT6fD09JTJ01ojIiM26UW/3+fg4IAoiri5uaHZbHJ1dfWfIO3u7lIul/8NUqpFRHDOcXh4yPLyMvV6nY+PD6y1+L7P3Nwc1WqVSqVCHMeZB6pWq2W/KaU1Pj6OiBCGIc45xsbG8DwP5xz9fj8LUZYDEckulFJEUZSFqlAokCQJ3W535LrW/Gb9D8VgSlJ7/yUmAAAAAElFTkSuQmCC">Do Not Start Playing This HTML5 Drum Machine If You Have Anything to Accomplish Today</A>
171
+ <DT><A HREF="http://www.comicshuffle.com/" ADD_DATE="1439257330" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACbUlEQVQ4jZ2Tz29MURTHP+e+N/OmozNTpRmGIhURqhtlVQm18KNsJIK1xH+gsZCInXQhkVAlYtGdxEZshIWIhFASkiZ+NSQUrU5NO2a0nTfv3WPxZtrGj427uSfn3PMj534/0jnwThFA+a/jikhkyYKzbv5e8299XFWdjwggAn5YC5roNgKq4NvIdmShkKm3ihKVUsWS8YSMZwhCi6DMVC2zgWVpwpBwBT+0UZqCi4IYoVJ7cKY7y861SwC4M1Ki9+4YHdkEZ7uzbGrxKFUsA88KDL6YIpUwGAxYqxhR+g+uYuMyj3MPJ3g0OsP7go/nCJcO5PhU9Dn/eJLxcsDHab+2KMF1EKYqAYfbM2zJNrBv8APD+TluvioyFyjbcg1kU3EePJ7k+osC154XaPQMybjBqmJAsShda5KMFn2+lqusTsdocA0Zz+HDlM/w+Ax9e3M8PL6eQ5vThLb+U4KxCA7CkrghZqINo4JVKPmWcsVy4vYXLg/lWdEYo29PjmMdGcoVixEwBiVU+FyssiIVZ11TnNGij2+VI+0ZmpMOSddw9v4E26+O8Do/y+62RkK1NR0gJGLCrTc/ONrRxIWeHFeGCuzfkKKtOY5roHdHCzeGp/k4XaU1Hefik0kEQVCkc+CdGoFSJaRnQ5qTO5azMhXjTb7CqXtjVEPl9K4sXa1JZgPL4Msp+p9+x3MExCBbB95qVA3Kfkgm4ZD2HMZL1UhtAtZCLuUyFyj5nwGNnpkXvFtPViDlOfghfCsHxF0TSbgm2YkZi0HJJBxCXaDCFRF0ESiOAddEvsXgeA4ogq3xMj+B6p80/43sf9H+CyI1/JpnY/huAAAAAElFTkSuQmCC">Comic Shuffle</A>
172
+ </DL><p>
173
+ <DT><H3 ADD_DATE="1462469650" LAST_MODIFIED="1462469675">Graphics</H3>
174
+ <DL><p>
175
+ <DT><A HREF="http://www.piskelapp.com/" ADD_DATE="1441732297" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAe0lEQVQ4jWNgoBAwMjAwMMjU/f+PLPikiZFRNOEQitjrBXaM/K5dKGIfd5cxMlHqgoE3gGLAyMDAwMDygAUlcP4o/GFkXs2MIvY39C8jUxMTiti/un+jgcgADcSvmgwogcN9nYFxvwKqmOMDBsYecVSxkpcMo4HIwMAAAGtbIRY/woNeAAAAAElFTkSuQmCC">Piskel - Free online sprite editor</A>
176
+ <DT><A HREF="http://www.aseprite.org/" ADD_DATE="1454073443" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAgklEQVQ4jWNkgIK6iXMbnh85Us9ABJC0sWlsyk9ugAvUTZzbkBqa+J9YkBqa+L9u4lyEAaRoRjaEgYGBgYkYJ+MDWA2omzyfKDHauYCuBjAwMAzGWCDLAFzRhA0gq2XBJUGSCyRtbBpfHD5MtKYXhw8zSNrYNDIwMDAwwm2nJDdSAgBaxbf12nvscQAAAABJRU5ErkJggg==">Aseprite - Animated sprite editor &amp; pixel art tool</A>
177
+ <DT><A HREF="http://www.openprocessing.org/" ADD_DATE="1454624108" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABpElEQVQ4jZ2TP08UQRjGf+/MLuwux+U4DIFLaCz4EBbG1oKeChODIbHx20hUCtQGCyu/gN/C0sJ4HByKOc5j/9zMWOze7qwJJvhUb+bZ9/kzmxEqjN4+ctwBm08+C4AAuFfcaXkBOUTk+8c9N7g85SKLwS0kYe40g2jKMO0QiCkPPT7WhlnnAYGejgDoPvvZsMDXo20GTJnNNdtPv+Ciey3+8vUGeSEEAOl+yvhonUDKJuMsYufFEN5F9MIURDF508eYUiCzms3nY769f1wKiMCNCdnp/mr6VWZSuRojbCUzAM5mScmLoBYL9l/X6NqkYMsjXyDSxt+op8woyK9aAqqqirWlgHOgVbMUKlubKvH6VJgXjVlQq3quWmwzUwCKzMDZtQYgDi3GWLBFI+D3LKwiruaV0OJW79M7GLVS5McdumsPPYFbIi7w4+U6yVKTLAq8CmmW46ypI94UQprlRFWaZRxriaEf25boORDg+NT70N3lYFITMeBOehDD79SyTPsSfdSPaTjRGCcEylEY6CeOzpLl4rr5eGP1r+VD7//873P+AzjFo0qtuccUAAAAAElFTkSuQmCC">OpenProcessing - Share your sketches!</A>
178
+ </DL><p>
179
+ <DT><H3 ADD_DATE="1462468727" LAST_MODIFIED="1462469467">Haskell (and other functional stuff)</H3>
180
+ <DL><p>
181
+ <DT><A HREF="https://www.youtube.com/watch?v=RqvCNb7fKsg" ADD_DATE="1450195722" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB/klEQVQ4ja2Tu2qVURCFv7X/SxJJMBaCgZgIigQhD5BSsbDxPYKiz5BnUGNeQKOk1dLW2xtY2ATMpTBihJxwzr/3LIv/xESxERwYhtnMZc+aWQAYkqEa27TWW53V8Vs6G8v/EAFsL127q5RWEj6XpKmACdtNkhJA2CGpSzAM+zjQwBHvFz99fqXtG1cfTKh61EoYUF8TJYHB+LTd2Bcwshm6PKwjtNrJHjg6jzsCMBhKdQNtY5eC+vy+uB2N1IS1Wmd7roQx1BaSjW3a60t5tPNFcXBQVzMzNoAtJGRHYCzmUg6mO6MclsPOSPlowIV79zX//GW0N2+NusFxlOGIMC7FzmH1OUynEm5ymGLIYRXjEnYZjdLU8nK78GyzvbT5InvhSpdHHYVfsZRwU+fw6ToAY7nYNC0AZXs7D96+U/5+mAKh8hus1CXcAQ02Sf10kZKGu7vd/vpT7z9Zr7q9vaaamYaqguIeTgmg08fLi98SzLrfz8kuoaqiHP5IaXJSaaK1yxg2ehAlFPC9juK9SprNONskATZQOml6poSDGGV8MmN/B9FYTdh7dYnYQOlxK7XYSONIJShxerDjwe3++51N59gQwJuL83faipVin09m0qIFNaCaCJRUsLKJocQAOOoKH25/3Xn9r9z5uxjS1piia2f0TzqfUHrrDJ1/AqtRUJ+QQfrIAAAAAElFTkSuQmCC">Programming - Why Haskell is Great - 10 minutes - YouTube</A>
182
+ <DT><A HREF="http://bitemyapp.com/posts/2014-12-31-functional-education.html" ADD_DATE="1450405748" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADMklEQVQ4jUXSzU8idwDG8e+PmR0Yxg1FZQDlLYyukWi3uqsbsrGJ9LJ78NLEyJ57q+mhCX/AJl568k/osTG9Nd2QmjSeDYdtWml8wVboIr4AojQIAzNMDzbZ5/zkc/qKbDbr7OzsIEkSj0dGEDi07toIwOFhigAbge04xGIx0uk0tVqNtbU15P8/2LbN0otlXr/5iu9//AXD22VudhrLJWN6g5wcl6B5ihGL8fO7d5TLZebn55GHwyEAr1+9YvbTp9j2kG++/pa7k3180Scsf/6S737Y52/TJvN0ghHzkmAoRLlcptlsIs3MzLwFePb8OZfn5yiDDl9+8RlCDPnz/T/822hx9f43yvsF3AOYfvIJuh4ms7qKpmnIvV6P5eVlxsfHMQyDhcVFKrU6bo/CoHvJUaGFedvH3TGJhSQ8Xo1h/ZZoLMrc3Bwux3GoVqusr6/j9/u5urzEGdo8euRm8VkIx/oV2fyJldXHjE96+eP3A8y+ycHBAWdnZ0iGYbwFaDab5HI5isUi8XicRCJOf+AiMTPDy8wLgjED2xIUCgV6vR4jIyMYhoFLVVWKxSLtdhtd1zk8PGRra4tSqYSmqdTO77m9DWB2XdzcNGm1WlQqFVRVZTgcPgAXFxcMBgM2NjZQFIVms8nm5ib5fB5dH+PDhxJnZ39h2zaSJOF2u5FlGdu2kW3bBiAcDiOEIBKJAOB2u9ne3iYWixEOh7m7a3N1dYUsy4RCIVRVxXGcjyFJksT09DS5XA6Px4NpmlQqFaampjg5OSEQCFCr1YhGowSDQWRZfgBcLhcAkUiEiYkJfD4fiqLg8/lYWVlhd3eXTqeDaZrouk4ymeTm5obT01NSqdRHYG9vD1mWKRQK2LbN/f099Xqd0dFR4vE4mqYhhKDVauHxeFhYWCCZTCILIQCo1+ukUiksyyKfz1MqlVhaWiISiTA2NkYqlaLRaKAoCoFAgH6/D/BQoqZpZDIZTNNkdnaWRCKBZVl0u12ur6/RdR3Lsuh0OgghcLlcHB8fo+s6cr/fJ5vNoqoq7XYbv99PtVpFCEEoFGIwGHB0dIRlWXi9XiYnJ2k0GtRqNdLpNP8BOXxYCEwTeRYAAAAASUVORK5CYII=">bitemyapp - Functional Education</A>
183
+ <DT><A HREF="http://www.brunton-spall.co.uk/post/2011/12/02/map-map-and-flatmap-in-scala/" ADD_DATE="1444697563" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABXElEQVQ4jaWTsYrCQBRFz2Yeghb5BsEqjUUgvxArv2NsbFLlP2z8hPyCpVjYpRCnFLQJBEtBJyHDbrFE0AQW1guvmMedw+XC+5rP5998IAFYrVb/+rxcLn8BzrnPErwDTqcT6/Waw+EAwHQ6ZbFYMJlMOgAPoGma5xRFQZqmGGNQSqGUwhhDmqYURfHi7QVkWUZVVYgIWmu01ogIVVWRZVkHIC2gVZ7niAjj8ZjZbAbAdrvlfD6T5/mLt5PgdrtR1zUiQhRFWGux1hJFESJCXdf9CdoSnXOICC203TdN89y/F/6SYDAY4Ps+IoIx5rk3xiAi+L7/dwdhGLLf7ynLkt1uB0BZliilCMOw00EHEMcxx+ORx+PBZrP5NYkwHA6J47i/ROfcczzPI0kSgiBARBARgiAgSRI8z3vx9iZou9BaMxqNALjf71yvV6y1vKsDaN+Xy6Vj7tPXp+f8A41y/M2KjWNrAAAAAElFTkSuQmCC">Map, map and flatMap in Scala - Michael Brunton-Spall</A>
184
+ </DL><p>
185
+ <DT><H3 ADD_DATE="1462468919" LAST_MODIFIED="1462468959">Lifehacks</H3>
186
+ <DL><p>
187
+ <DT><A HREF="https://www.reddit.com/r/NonZeroDay/wiki/the_four_pillars" ADD_DATE="1443637228" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACaklEQVQ4jaWT3UsTYBSHH7e5Zpu5+cVGH6ZTE8QYQSIqyzIpJWgRYYYGoViZyPRCCyK6STOIoMg/ICLICd4EgVLYh0hJojE3sylZ2YxNNtzaZDrfLkaz/LiofnAuDuf3Ppz3PeeNsXmF4D8kA/DMB//psCYpLgLYSFKpjGDAz70bbSSlatHvyWby/SiSJT/arH2Un6wBQLIZIBxe5t3QAPEJao6ajmG32lnxzdF19zYjr/uivnUAmSyWrUoFAFMTVo4cr0K7I4/65quo0/Korm3g8ImaVf9awJzzK44P47i/Oxnoe8K2xFT8gSA5uXs5da4JmVzBcmgx6o951P9GPH38AE2KjphYBT/cM2Trd7M9NZkEtQaXy4Xj8xc+zXwjeWc2YmkRj8tJeeVZDPvzodHcKqYdk8JYXCg6O9qFL+AXKysr68IX8IvOjnZhLC4U045J0WhuFTavENKDpWXXhwZfUnn6DLV1dch7LGA0QnER7EqDwVdgMCDX6ym6cBG1JhGLxUKcchuGohIkupwCbPYJTCZT5FIqFWSkg1IZyZXKSK5SAWAymbDZJ9DlFETqNq8QTeaWDdveLJrMLWJwKiBsXiEkWxSCWbePsZHh6Mt2W3qwWq0sLCxgtVrptvREa2Mjw8y6fb+NUUDV+RbarrVxufkSJaVl6DPS6e3tJRwOI5VKqaioAGDgWT8379yn/krn6hhtXiE880HcLicPu26REh9L2aEDZGZmIpfLCYVCOBwO+p+/wOVborqhleQUHRD5C1HAL01/nGB89C0e1xzLoUVkcgWaFC25hnwysnL+WLooYO02/o1+AscvMnKl2CfkAAAAAElFTkSuQmCC">the_four_pillars - NonZeroDay</A>
188
+ <DT><A HREF="http://mashable.com/2015/10/08/five-hour-workday/?utm_cid=mash-com-fb-main-link#hhWzlT440qq6" ADD_DATE="1444677850" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA90lEQVQ4je2TsUoDQRCGv9nLoqdiaXNJZWflwyTiG/kG9taipWXyCiJECyvFgHApYtaQmNvdsbkiEfYIXOvAMAzM/PPPz4xwP1NamGnT/A+wC4DWnsqBTqr3ZE/oFxbnlduPiqOOMCgsc6/cTSpWsQlAoZcbrs72UeDVRU4PDdfnOY+zwMOnZxW1mQFApZAJXHYtRW749vp3gzSAAOuoDMvARdfiPIxKTy/flq1RRCPCqPRM18p4Hnh2kUx2ZLAIytNX4MUFbt4q3peRYyuMXSRs7CGpZ8oEDjJhGRQjEGs9rBEWG1okGQQF5+uyOniFn7g9r/Ul/gLP7WlOqjUo+QAAAABJRU5ErkJggg==">How to adopt a 5-hour workday and make time for extraordinary living</A>
189
+ </DL><p>
190
+ <DT><H3 ADD_DATE="1462469026" LAST_MODIFIED="1462469499">Node</H3>
191
+ <DL><p>
192
+ <DT><A HREF="http://www.nodebeginner.org/" ADD_DATE="1437568610" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAZklEQVQ4jaXRyw3AMAgDUMPSmSFTt6dWETWOo3IM5IkP8DNiANf6MIFghbXuBVjSRSYQoZIKefLJilTLNVrARSTgIB+Aza4Q2sEJ0o7gInIH3SltwEG2wA5JwLt3h2T9rDBnJ8dxA1OdHQYeeJzvAAAAAElFTkSuQmCC">The Node Beginner Book » A comprehensive Node.js tutorial</A>
193
+ <DT><A HREF="http://howtonode.org/prototypical-inheritance" ADD_DATE="1437570233" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB10lEQVQ4jeWSv2tTURzFP+/l3fysISUaqAmV/tAq2uIgDUgprrooSsHJsZOz/g0dpFBc4+7WTekQURwMlQqNgzVNHkFLpCQkNUmbl5e8r8Mjz4T4H3imcy733Hu/9xxERPi/oQ2LTLYgObNJNGRwezpIoWpRafZYnYkwfyFA/bTPZNjH0sIlbeyATLYg9Q6sLSdpntls7RR5tJwkGQvyNn/MZ7NBajLAz7rFyuwET+9ec73vv5RkYzsv65k9qTYtGaDbc0b41x8nIiLSbrdlPbMnuW8VATA+ldvcnEvw7H4CANu2AVBKjfDrqajLAyEAds0GAHql2SMZC46YB3ygLcvytPJpbD5eoCMGmWxB9NWZCFs7RWqt7ohxYLZtm36/P7IeDodZW06SM5sY8YhBNGQQDSmUT/OMjuOMRabrusd/VU9IxfwY7a5DUOkon/Z3RqeHZVljZqUUSile5474ftTgViroxrixnZdizeZ3p8/LJ0vEJ/wj4yilQDe8S168OWQ2KjxcuaJ5Pdg/KMuH0ikAd25cJFc4Jn054f3+q3eHmDX3VeeU8PzBojbWxP2DspyJn12zwcdSi+nzbmSNVpe5uGJxytX30vPjTRzGoCTDSF+d+ufeP9Js9txUYi+xAAAAAElFTkSuQmCC">Prototypal Inheritance - How To Node - NodeJS</A>
194
+ <DT><A HREF="https://medium.com/@c2c/nodejs-a-quick-optimization-advice-7353b820c92e" ADD_DATE="1444677114" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgklEQVQ4jc2QyytEYRjGn/e7nHMmZk5ukaKUHYrIwsLC34CFslZGGsLCJXYs1EhTs7GxNTvFX2ArCxsryaUUjRkhzHfOazFuM+fITp7d1/O8v/d5P+BfSO/HE7iYivzkMzPFbuaSNfmF3nKPAACZCZYahUjU266ttmfPujZy30OVV4k4+0iBwMJSp9LR07nY6m4J4COsbJhYg7fRIjrnD3vGCu71TIsx3jGYK76tZWmry/u69WZRXsm8QJHnz5wXjuaYmTzjbZUMAwCDREQ1AYAKu7lYixfd04RkiwbKfekoKEcDAAINQODiEjjyvrAUsIlgufbnOwhgYgDnACCfPSUfTYmtXRsQX2NBAABUinHfEg8AoPMG5Bf/WDgKMqJLoiEA5tuO9F62Ox31o3qaFd3qnAGIXi3XCaTfAXQQViTbnkpmu9N1pGjYqrB3SJIXDhjc7IegIRCdgIgDoLZU5q5qbVQJ2UokUkT0FHo6eEciM9kXbn6pkVdq683yyG+5v9EbKVp4zoYta9gAAAAASUVORK5CYII=">#NodeJS : A quick optimization advice — Medium</A>
195
+ <DT><A HREF="http://fredkschott.com/post/2014/05/nodejs-testing-essentials/" ADD_DATE="1446821501" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABEElEQVQ4jaVTMW6EMBAco4PuJEQBonBBCRUdoqPgEzyAP8EP+AIdUFNQIb+DClF4U5zkGBySSzKSJe/aOx7P2oyICP/A46vktm3Ytu22yPd9OI7zCuiC4zgoiiICcDvatlX7DYJ1XcmyrNtixhgty6L2G1eYpglSSgBAkiTI8/y07nke4jj+TFwVVFWlTmua5rps4KSAiDAMg4qllOj7XsVpmiIIgrNknU0I8a15XdcZCiydTD/9Ctu2DT+AyzsYx1HN67pGlmUqdl0XnHOTWe8/51zJFUL8aCCR9g70/odhSFLKtwiUB3r/i6IAY+zWDx2KYJ5nlSzL8q1iAGBEr994HAf2fQdjDM/n8/cEf8UHIrJWPuYzxGEAAAAASUVORK5CYII=">Node.js Handbook - Testing Essentials | FredKSchott</A>
196
+ <DT><A HREF="http://thenodeway.io/posts/testing-essentials/?utm_source=fredkschott.com&utm_medium=referral" ADD_DATE="1447033323" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAsklEQVQ4jWPcb6nzn4ECwIRPkl/PkEG1pBqvAYy4XOBw7DIK/4CVLnEGoGtEB+gGwb3ALi6B1VZ0DQ7HLjPwaSHE4AZYrt8NF3x7/AiKxgNWugwP5s+A843mLMM0ABlcLs7EEHsweyo2pfhjgRgwSA3Qbu7BENNq7sZqADwdsAkKMVhtPYgiCYsJ9Og9GebN8P3JI1QDYIDUhET9pIwMlDLyGT5dv8Lw5uBenC7CawAxAAATaERzEnh2kQAAAABJRU5ErkJggg==">The Node Way - Testing Essentials</A>
197
+ <DT><A HREF="http://expressjs.com/starter/hello-world.html" ADD_DATE="1447033331">Express &quot;Hello World&quot; example</A>
198
+ </DL><p>
199
+ <DT><H3 ADD_DATE="1462468879" LAST_MODIFIED="1462470546">OS</H3>
200
+ <DL><p>
201
+ <DT><A HREF="http://www.bash.academy/" ADD_DATE="1450202568">The Bash Academy</A>
202
+ <DT><A HREF="https://github.com/robbyrussell/oh-my-zsh" ADD_DATE="1438013991" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJElEQVQ4jY1TMWsUQRT+5r3d3Cbe7t3u3hEDdoJgIVieGo1YBixsBIsUtvkHNpaCnaJFUMEihSlEbGxFE8XCRrDWIAqJyd3t3JGcuduZeRa5DUtAk6968/i+733zhlE4hHq9foWZbwG4pkRmAECU2gDw1lr7Qmu9WuarUs2NOH7Onrdw2LQMa8xyO8tuA7BlA07TdM0juvA/cQHj3KdOp3MZgGUAaMTxssc8nxuzOsrzm90s2yDmU6TUtoh0BKhut9t3Rnl+1/O8Mz7z7GSlcnqwt/cKURS1pptNmW42JUmSpfGQKoCp0tBqkTZJkqWCH0VRiyaYFw/uZ+2zcbkDYFAy2AEgAOCcWymaE8yLBOZZALDOjQB0jrGCdevccH9zPEsYPxWU2uz1eutHqbXWP6DUbwCAyAwV0QDUANAxEhBE6uNaSICfAMBK1dI0vX6UOo7jeSaKsD/5F5FSa04EW+22dca8jMPw0r/ESRheZKKnxVlE3lFuzOPRMIeIWN3v93u7ux+IaBBFUasgBkFwlYi2/SD4yEQnSwaPSGv9xa/4T6abzYm6789Vq9WFMAw/K6W2CmKlUtmJoqhRTmNFHmRZ9vXgLyRx/J6IzlnnzotIX2utS/ywkaabTDQFANaY1+0su7G/0TG6WTYHpVaY6LvH/A3ATMngRCE2xtwrxADA5ViDweDNZBDsQamG7/vLw+HwDwDUajVfiZx1wMNOt3u/rPkLJe7aBdfH1TYAAAAASUVORK5CYII=">robbyrussell/oh-my-zsh</A>
203
+ </DL><p>
204
+ <DT><H3 ADD_DATE="1462468949" LAST_MODIFIED="1462468955">Projects</H3>
205
+ <DL><p>
206
+ <DT><A HREF="http://up-for-grabs.net/#/" ADD_DATE="1444055898" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADqklEQVQ4jU2TXUybZRiG7+f9vvYr7QptKQxahjDKsLUwBCI0mwsb7ucAXYwBN40xsgEHJIu6uMRIljc7IBgPxLgYN53KZH9dXJw6Jz9uapiTIRsCE4Q5/ixhrLQfkg5KaV8P7Iz38X1yJddFiE8IwYgoBgAtracLHDl5jqB/PoVkKUGnXzP8dzB4v+a5XTcBgAvBePwrA0CV1ysRUfRj70WH7ZH11ZNT0yVXu3vCIyMjIUFCuF2uTRnpadHvfh0ZPfF28wecaJZzzjjnMXAhGADc8qnbz3Vdb3vpwJsnYUh/AUAqgAQACoAUmLJ21xw8fPKTL9tPdY/NlgEA54JBCMGajh7f0Pr1lVPlz+9rAZBYUVGxqyg/vxgAysshC8FZnDSlYm99y9nOn1u/unLjMSEEMSKKFRQ9sedSRyf9cO5EkxBi0efz+WKSklFQUFzq97tzibjZZDKZhBDz35851vzNt5cNTKds37p1q8Q+/PzCxrvjE+4Lnx17XwD3iUgYDAZ/UpLhgRB4oKpqBIBKRIlElABgtu3dd977a8ZXsbO6NpNl5+amTs/MamFz7U4pq6wHAEVRopIk6QYH+wZtNpvb6XQ6g8FgUG+1JiV7KhtY7sanxyemlstKi1xMDcxnDdweVphW2R8JL2UCQDgcjgUCAQYAS0uRexqNUmyx25MsKyvL0fBKjqTV7xsZu2Ocn/cbmUwswmSJiCAY0QwA9PX1BZaXI/rCwkLT4OCt3oGB/ladLGeadFENGE2BEGOMCa2i1bM11uR7+Y/mhaKh0I1YdDUDADwejyLLcri/vz8EgJWWlrrSkpONQ3OhICIrmWJpqbfA7VrW6nSj8lDPtT8z7enS6uRwy8LqQicAUlXVlJhoWQQQsVgsiRqN7imtVnsGwIr629XXjWvXV1rN5hfvjv4xBwB0uWfotZcPHTkPwCY4Z06nc0uWw1H2UHOr1ZZntVqNcR/W7W9s/qK99/c3AIBxIWjaN3upcueOxWdqDhwhzs2ObEfatpKSKSFA3qoqKdWkl/1+/yIRtz1b9+rhbVs2B37sbm/zeoX0n8pjC6LM23X909q3mk6bs/MbAOQA0ADQAXBp0/Kq6xubzp/t6P6oa2DMEw+QZE4U45yz3CT6ZW9d3Z3ahkOvFLrdm/yB4JPjkxMgMMqw21fX2dMNqWtTOoaGbl/cs2Ozj3POiChGDzn/n2jT0eMbHi/22FTVn8MghY1m89zNaz8NNx5smP43oniJAP4BUlWGiIt+lvIAAAAASUVORK5CYII=">Up For Grabs</A>
207
+ </DL><p>
208
+ <DT><H3 ADD_DATE="1443381860" LAST_MODIFIED="1462464151">recipes</H3>
209
+ <DL><p>
210
+ <DT><A HREF="http://www.chowhound.com/recipes/basic-vegetarian-chili-29192" ADD_DATE="1443381846" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACoUlEQVQ4jVWTW4hNYRTHf+vb++xz9hln3Bk1Ti65Prg9MGrkYRjmRUjNi1sUMeRJeVH7TR5ldFJMyURJOSZReJFJMpEo1EQYdzMuc4Zz3d/y8I1iPa1W6/df/+9rLQFQEKJIJIqsdmxsQaUD1VXAJFwMInKXmJycvnJLo8gQRSqgoiACqgfb6qklTwFbnSbC//G31o1f7pCTN4ZHWdBdGzIk5SbGawLiUcAAMoopYFEFVQ/0PmVtla6egg9A0usEmvg1UgEC9yjz73DBWg8/AalUBUsTSdMJ7BDdt7ENuE61YlnZYli+GurHwe08JAII6yBdB9Oy8HEArp4Hz7eIGOK4zcf4uygWoH2P0roZyiX49hW2HYBEEq5fghlzYOFSeP8GqlUIUkq5CIlgt6E40szMebB2k/Pc3QmH2qH/mXPfdxfimsuzs+DYWTh6wjB9FpRLzT616lQWLAER4dM7eHQPJkyG7lMQph08f7ETqFUhmYJxE4VpWXj5fKqbmhnrGgZewfBP8DzX+PIFZGe7v3jdDxdyrq4W3vRDIsBH9TPfBhsAZcIUIVMPi5bD3iNw7aKDAXpvOidhHTztUz4OCKnwsyGV7qXvDnx4a5k9H05edvD3IXjywIkBPH8MjTNd3tBoyYyFSq3XJwzPUhjewvHDwuIV0NAIP4bgYS8UfzsXtSoMfXEu4hi+fxUqZfDkjNvE/ZvPYWvbKRYr2DhADIQhGM+JiEAq7YRKvyt4fkCYPie5/E63iaXaAVLeXMZkmhCJUUCtQVWoG+PuwFpLIgHB+AC4R7F6EMAoiHT1FPBK67C2mzj2sLGDAawFawUwqHrY+DzF6nrp6ikoiBFQBWHiihHJ5bdhpRWRPDD4zzEMIpLHsEZy+e1kl/3SKDIC+geHiw52JbXOBQAAAABJRU5ErkJggg==">Basic Vegetarian Chili Recipe - Chowhound</A>
211
+ </DL><p>
212
+ <DT><H3 ADD_DATE="1462468643" LAST_MODIFIED="1462469759">Ruby</H3>
213
+ <DL><p>
214
+ <DT><A HREF="http://rubyconf.org/program" ADD_DATE="1442437850" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB4klEQVQ4jcVSPWhTYRQ9576XCOIS0CFIfJKYtG9TXLR2af1FRASFSocWJyGbgovg6iCK4ODmIFIQxB+KP0GI8ZdWKLroEI1ptGLt1EVJfO999zqEilYruuiZLpd7Dufee4D/DS5u3M2HxVU+ivOqK8TJPACop5mMyKfZdlzfPdN4s6TAvULPFl95WwRvI7UbShwDAB885RP7AFsTOd012Hr9dIEjC0U16O1TtdMqerDtbCohxkVxTdSuKzHecW4KxCgpZ2tr1236QaCWL/V7YpdIOZdo+hkF7eWGCaNVKLyVMpsEmXy2ZNIB50lvrJYv9XfdATDFkbQgZ6Y7DfEIYV5ERjQOK2AxEBEspNS/CNhcisx1gKMAHvsAoEyXI0QZgI8Gp+sXAKCaL15x9I+n1GKDntnaerUfAO7new59MQ3E0uVvK2ybfjHniQ4pcbhW6B1F9/SNtOl69XSDI5vdI4cjiXPlZaJDA62XH3/6QiUIs2lPbwI8acSsmO01mIrhjhOshOKES7hnx0z9w5I5qJZKqzWWqz7tsho2AyBpE85kyPeSAwONxvvfBgkAHhQKOTV/TIiNBBArnivj4e3N5rvFs78UAICHQZilZ0+MKp2Ifd/b/mNUgjBbCcLsXxP/Kb4C/SPTuPT6kN8AAAAASUVORK5CYII=">RubyConf | 2015</A>
215
+ <DT><A HREF="http://devdocs.io/ruby/" ADD_DATE="1446203467" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABlElEQVQ4jZ2Tv6riQBSHvwkakRWigg9gsFpjGMHFbtEuCFYWt/BJ9iFub79ob5MHCHa7EPAfkUBAQQsbsbiFFjO3WWVF5e7dX3d+zPnmzDlzxGAw+C6EeAUafE6/KpXKz5QQ4rXRaDRs20YI8U+ZWmuSJPkWx/FXA/hUMoAQAtu2OR6PX1IX4yKlFGEYEgQBhmHQarVwXffugkuc+ttUSuH7PpvNBiklWmsmkwnb7RbP8zAM466aG0AYhqzXa/r9Pvl8HgApJcPhkOl0ipTyDnCDDIKAWq12TQYoFovU63WiKHrYjxuAEAKl1N0h0zTRWn8MaLfbzGYzDofD1TudTsznc2zbfgi46YHruux2O0ajEa7rkk6nWS6X7Pd7CoUC5/MZ0zSfA4QQeJ7HYrEgiiKUUlSrVXK5HKvVCqUUnU6HbDb7GHCBOI6D4zhXT0rJeDwmjmN836fX6z3uwTNlMhm63S7lcplms3n/BK31h185m83y8vJyjS9TMYDfSZI8HdMj/VkmLMt6E/+7zpZlvZVKpR/vZtmTrwbMUQ8AAAAASUVORK5CYII=">DevDocs - Ruby documentation</A>
216
+ </DL><p>
217
+ </DL><p>
218
+ </DL><p>
@@ -0,0 +1 @@
1
+ hello
metadata ADDED
@@ -0,0 +1,57 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: bookmark_page
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Chris Caragianis
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-05-13 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description:
14
+ email: chriscaragianis@gmail.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - bookmarks.html
20
+ - lib/bookmark_page.rb
21
+ - lib/bookmark_parse.rb
22
+ - lib/out.html.erb
23
+ - spec/bookmark_page_spec.rb
24
+ - spec/bookmark_parse_spec.rb
25
+ - testdata/assets/css/style1.css
26
+ - testdata/assets/js/jquery.js
27
+ - testdata/assets/js/script2.js
28
+ - testdata/assets/script1.js
29
+ - testdata/assets/style2.css
30
+ - testdata/bookmarks.html
31
+ - testdata/one.html
32
+ homepage: https://github.com/chriscaragianis/bookmark_page
33
+ licenses:
34
+ - MIT
35
+ metadata: {}
36
+ post_install_message:
37
+ rdoc_options: []
38
+ require_paths:
39
+ - lib
40
+ required_ruby_version: !ruby/object:Gem::Requirement
41
+ requirements:
42
+ - - ">="
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
45
+ required_rubygems_version: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '0'
50
+ requirements: []
51
+ rubyforge_project:
52
+ rubygems_version: 2.4.5
53
+ signing_key:
54
+ specification_version: 4
55
+ summary: BookmarkPage creates nice looking web pages from bookmarks exported from
56
+ your browser
57
+ test_files: []