diff --git a/public/config.codekit b/public/config.codekit
index 8fe93fef18..eb1258669d 100644
--- a/public/config.codekit
+++ b/public/config.codekit
@@ -1,6 +1,6 @@
{
"CodeKitInfo": "This is a CodeKit 2.x project configuration file. It is designed to sync project settings across multiple machines. MODIFYING THE CONTENTS OF THIS FILE IS A POOR LIFE DECISION. If you do so, you will likely cause CodeKit to crash. This file is not useful unless accompanied by the project that created it in CodeKit 2. This file is not backwards-compatible with CodeKit 1.x. For more information, see: http:\/\/incident57.com\/codekit",
-"creatorBuild": "18493",
+"creatorBuild": "19051",
"files": {
"\/css\/dropzone-4.0.1.css": {
"fileType": 16,
@@ -83,6 +83,17 @@
"outputPathIsOutsideProject": 0,
"outputPathIsSetByUser": 0
},
+ "\/css\/themes\/default\/assets\/images\/flags.png": {
+ "fileType": 32768,
+ "ignore": 0,
+ "ignoreWasSetByUser": 0,
+ "initialSize": 28123,
+ "inputAbbreviatedPath": "\/css\/themes\/default\/assets\/images\/flags.png",
+ "outputAbbreviatedPath": "\/css\/themes\/default\/assets\/images\/flags.png",
+ "outputPathIsOutsideProject": 0,
+ "outputPathIsSetByUser": 0,
+ "processed": 0
+ },
"\/img\/404.png": {
"fileType": 32768,
"ignore": 0,
@@ -169,7 +180,7 @@
"outputPathIsOutsideProject": 0,
"outputPathIsSetByUser": 0,
"outputStyle": 1,
- "syntaxCheckerStyle": 1
+ "syntaxCheckerStyle": 0
},
"\/js\/jquery-1.11.3.min.js": {
"fileType": 64,
@@ -193,6 +204,17 @@
"outputStyle": 1,
"syntaxCheckerStyle": 1
},
+ "\/js\/libs\/emojify-1.1.0.min.js": {
+ "fileType": 64,
+ "ignore": 0,
+ "ignoreWasSetByUser": 0,
+ "inputAbbreviatedPath": "\/js\/libs\/emojify-1.1.0.min.js",
+ "outputAbbreviatedPath": "\/js\/libs\/min\/emojify-1.1.0.min-min.js",
+ "outputPathIsOutsideProject": 0,
+ "outputPathIsSetByUser": 0,
+ "outputStyle": 1,
+ "syntaxCheckerStyle": 1
+ },
"\/js\/libs\/highlight-8.7.pack.js": {
"fileType": 64,
"ignore": 0,
@@ -308,6 +330,26 @@
"strictMath": 0,
"strictUnits": 0
},
+ "\/less\/_emojify.less": {
+ "allowInsecureImports": 0,
+ "createSourceMap": 0,
+ "disableJavascript": 0,
+ "fileType": 1,
+ "ieCompatibility": 1,
+ "ignore": 1,
+ "ignoreWasSetByUser": 0,
+ "inputAbbreviatedPath": "\/less\/_emojify.less",
+ "outputAbbreviatedPath": "\/css\/_emojify.css",
+ "outputPathIsOutsideProject": 0,
+ "outputPathIsSetByUser": 0,
+ "outputStyle": 0,
+ "relativeURLS": 0,
+ "shouldRunAutoprefixer": 0,
+ "shouldRunBless": 0,
+ "strictImports": 0,
+ "strictMath": 0,
+ "strictUnits": 0
+ },
"\/less\/_explore.less": {
"allowInsecureImports": 0,
"createSourceMap": 0,
@@ -500,7 +542,7 @@
"outputAbbreviatedPath": "\/css\/gogs.min.css",
"outputPathIsOutsideProject": 0,
"outputPathIsSetByUser": 1,
- "outputStyle": 2,
+ "outputStyle": 1,
"relativeURLS": 0,
"shouldRunAutoprefixer": 0,
"shouldRunBless": 0,
@@ -1415,6 +1457,10 @@
"active": 0,
"flagValue": -1
},
+ "futurehostile": {
+ "active": 0,
+ "flagValue": -1
+ },
"globalstrict": {
"active": 0,
"flagValue": -1
@@ -1503,6 +1549,10 @@
"active": 1,
"flagValue": -1
},
+ "nocomma": {
+ "active": 0,
+ "flagValue": -1
+ },
"node": {
"active": 0,
"flagValue": -1
@@ -1603,6 +1653,10 @@
"active": 1,
"flagValue": -1
},
+ "varstmt": {
+ "active": 0,
+ "flagValue": -1
+ },
"withstmt": {
"active": 0,
"flagValue": -1
@@ -1621,10 +1675,6 @@
}
},
"jsLintFlags2": {
- "ass": {
- "active": 0,
- "flagValue": -1
- },
"bitwise": {
"active": 0,
"flagValue": -1
@@ -1633,15 +1683,7 @@
"active": 1,
"flagValue": -1
},
- "closure": {
- "active": 0,
- "flagValue": -1
- },
- "continue": {
- "active": 0,
- "flagValue": -1
- },
- "debug": {
+ "couch": {
"active": 0,
"flagValue": -1
},
@@ -1649,75 +1691,27 @@
"active": 0,
"flagValue": -1
},
- "eqeq": {
+ "es6": {
"active": 0,
"flagValue": -1
},
- "evil": {
+ "eval": {
"active": 0,
"flagValue": -1
},
- "forin": {
+ "for": {
"active": 0,
"flagValue": -1
},
- "indent": {
- "active": 0,
- "flagValue": 4
- },
"maxlen": {
"active": 0,
"flagValue": 150
},
- "newcap": {
- "active": 0,
- "flagValue": -1
- },
"node": {
"active": 0,
"flagValue": -1
},
- "nomen": {
- "active": 0,
- "flagValue": -1
- },
- "plusplus": {
- "active": 0,
- "flagValue": -1
- },
- "properties": {
- "active": 0,
- "flagValue": -1
- },
- "regexp": {
- "active": 0,
- "flagValue": -1
- },
- "rhino": {
- "active": 0,
- "flagValue": -1
- },
- "sloppy": {
- "active": 0,
- "flagValue": -1
- },
- "stupid": {
- "active": 0,
- "flagValue": -1
- },
- "sub": {
- "active": 0,
- "flagValue": -1
- },
- "todo": {
- "active": 0,
- "flagValue": -1
- },
- "unparam": {
- "active": 0,
- "flagValue": -1
- },
- "vars": {
+ "this": {
"active": 0,
"flagValue": -1
},
@@ -1726,6 +1720,14 @@
"flagValue": -1
}
},
+ "jsonAutoOutputPathEnabled": 0,
+ "jsonAutoOutputPathFilenamePattern": "*-min.json",
+ "jsonAutoOutputPathRelativePath": "",
+ "jsonAutoOutputPathReplace1": "",
+ "jsonAutoOutputPathReplace2": "",
+ "jsonAutoOutputPathStyle": 0,
+ "jsonOrderOutput": 0,
+ "jsonOutputStyle": 1,
"kitAutoOutputPathEnabled": 1,
"kitAutoOutputPathFilenamePattern": "*.html",
"kitAutoOutputPathRelativePath": "",
@@ -1753,9 +1755,18 @@
"markdownAutoOutputPathReplace1": "",
"markdownAutoOutputPathReplace2": "",
"markdownAutoOutputPathStyle": 0,
+ "markdownCriticStyle": 0,
"markdownEnableFootnotes": 0,
- "markdownEnableSmartyPants": 1,
- "markdownExpandTabs": 1,
+ "markdownEnableLabels": 1,
+ "markdownEnableSmartQuotes": 1,
+ "markdownEscapeLineBreaks": 0,
+ "markdownMaskEmailAddresses": 1,
+ "markdownOutputFormat": 0,
+ "markdownOutputStyle": 0,
+ "markdownParseMetadata": 1,
+ "markdownProcessHTML": 0,
+ "markdownRandomFootnoteNumbers": 0,
+ "markdownUseCompatibilityMode": 0,
"reloadFileURLs": 0,
"sassAutoOutputPathEnabled": 1,
"sassAutoOutputPathFilenamePattern": "*.css",
@@ -1770,7 +1781,7 @@
"sassUseLibsass": 0,
"shouldRunAutoprefixer": 0,
"shouldRunBless": 0,
- "skippedItemsString": ".svn, .git, .hg, log, _logs, _cache, cache, logs, node_modules",
+ "skippedItemsString": "_cache, logs, _logs, cache, \/img\/emoji, .git, log, node_modules, .svn, .hg",
"slimAutoOutputPathEnabled": 1,
"slimAutoOutputPathFilenamePattern": "*.html",
"slimAutoOutputPathRelativePath": "",
@@ -1814,6 +1825,10 @@
"active": 0,
"flagValue": -1
},
+ "bare-returns": {
+ "active": 0,
+ "flagValue": -1
+ },
"booleans": {
"active": 1,
"flagValue": -1
@@ -1894,6 +1909,10 @@
"active": 0,
"flagValue": -1
},
+ "keep_fnames": {
+ "active": 0,
+ "flagValue": -1
+ },
"loops": {
"active": 1,
"flagValue": -1
diff --git a/public/css/gogs.min.css b/public/css/gogs.min.css
index 3e067311e9..7a78f313c2 100644
--- a/public/css/gogs.min.css
+++ b/public/css/gogs.min.css
@@ -1 +1 @@
-@font-face{font-family:octicons;src:url(../fonts/octicons.eot?#iefix&v=396334ee3da78f4302d25c758ae3e3ce5dc3c97d) format('embedded-opentype'),url(../fonts/octicons.woff?v=396334ee3da78f4302d25c758ae3e3ce5dc3c97d) format('woff'),url(../fonts/octicons.ttf?v=396334ee3da78f4302d25c758ae3e3ce5dc3c97d) format('truetype'),url(../fonts/octicons.svg?v=396334ee3da78f4302d25c758ae3e3ce5dc3c97d#octicons) format('svg');font-weight:400;font-style:normal}.mega-octicon,.octicon{font:normal normal normal 16px/1 octicons;display:inline-block;text-decoration:none;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mega-octicon{font-size:32px}.octicon-alert:before{content:'\f02d'}.octicon-arrow-down:before{content:'\f03f'}.octicon-arrow-left:before{content:'\f040'}.octicon-arrow-right:before{content:'\f03e'}.octicon-arrow-small-down:before{content:'\f0a0'}.octicon-arrow-small-left:before{content:'\f0a1'}.octicon-arrow-small-right:before{content:'\f071'}.octicon-arrow-small-up:before{content:'\f09f'}.octicon-arrow-up:before{content:'\f03d'}.octicon-beaker:before,.octicon-microscope:before{content:'\f0dd'}.octicon-bell:before{content:'\f0de'}.octicon-book:before{content:'\f007'}.octicon-bookmark:before{content:'\f07b'}.octicon-briefcase:before{content:'\f0d3'}.octicon-broadcast:before{content:'\f048'}.octicon-browser:before{content:'\f0c5'}.octicon-bug:before{content:'\f091'}.octicon-calendar:before{content:'\f068'}.octicon-check:before{content:'\f03a'}.octicon-checklist:before{content:'\f076'}.octicon-chevron-down:before{content:'\f0a3'}.octicon-chevron-left:before{content:'\f0a4'}.octicon-chevron-right:before{content:'\f078'}.octicon-chevron-up:before{content:'\f0a2'}.octicon-circle-slash:before{content:'\f084'}.octicon-circuit-board:before{content:'\f0d6'}.octicon-clippy:before{content:'\f035'}.octicon-clock:before{content:'\f046'}.octicon-cloud-download:before{content:'\f00b'}.octicon-cloud-upload:before{content:'\f00c'}.octicon-code:before{content:'\f05f'}.octicon-color-mode:before{content:'\f065'}.octicon-comment-add:before,.octicon-comment:before{content:'\f02b'}.octicon-comment-discussion:before{content:'\f04f'}.octicon-credit-card:before{content:'\f045'}.octicon-dash:before{content:'\f0ca'}.octicon-dashboard:before{content:'\f07d'}.octicon-database:before{content:'\f096'}.octicon-clone:before,.octicon-desktop-download:before{content:'\f0dc'}.octicon-device-camera:before{content:'\f056'}.octicon-device-camera-video:before{content:'\f057'}.octicon-device-desktop:before{content:'\f27c'}.octicon-device-mobile:before{content:'\f038'}.octicon-diff:before{content:'\f04d'}.octicon-diff-added:before{content:'\f06b'}.octicon-diff-ignored:before{content:'\f099'}.octicon-diff-modified:before{content:'\f06d'}.octicon-diff-removed:before{content:'\f06c'}.octicon-diff-renamed:before{content:'\f06e'}.octicon-ellipsis:before{content:'\f09a'}.octicon-eye-unwatch:before,.octicon-eye-watch:before,.octicon-eye:before{content:'\f04e'}.octicon-file-binary:before{content:'\f094'}.octicon-file-code:before{content:'\f010'}.octicon-file-directory:before{content:'\f016'}.octicon-file-media:before{content:'\f012'}.octicon-file-pdf:before{content:'\f014'}.octicon-file-submodule:before{content:'\f017'}.octicon-file-symlink-directory:before{content:'\f0b1'}.octicon-file-symlink-file:before{content:'\f0b0'}.octicon-file-text:before{content:'\f011'}.octicon-file-zip:before{content:'\f013'}.octicon-flame:before{content:'\f0d2'}.octicon-fold:before{content:'\f0cc'}.octicon-gear:before{content:'\f02f'}.octicon-gift:before{content:'\f042'}.octicon-gist:before{content:'\f00e'}.octicon-gist-secret:before{content:'\f08c'}.octicon-git-branch-create:before,.octicon-git-branch-delete:before,.octicon-git-branch:before{content:'\f020'}.octicon-git-commit:before{content:'\f01f'}.octicon-git-compare:before{content:'\f0ac'}.octicon-git-merge:before{content:'\f023'}.octicon-git-pull-request-abandoned:before,.octicon-git-pull-request:before{content:'\f009'}.octicon-globe:before{content:'\f0b6'}.octicon-graph:before{content:'\f043'}.octicon-heart:before{content:'\2665'}.octicon-history:before{content:'\f07e'}.octicon-home:before{content:'\f08d'}.octicon-horizontal-rule:before{content:'\f070'}.octicon-hubot:before{content:'\f09d'}.octicon-inbox:before{content:'\f0cf'}.octicon-info:before{content:'\f059'}.octicon-issue-closed:before{content:'\f028'}.octicon-issue-opened:before{content:'\f026'}.octicon-issue-reopened:before{content:'\f027'}.octicon-jersey:before{content:'\f019'}.octicon-key:before{content:'\f049'}.octicon-keyboard:before{content:'\f00d'}.octicon-law:before{content:'\f0d8'}.octicon-light-bulb:before{content:'\f000'}.octicon-link:before{content:'\f05c'}.octicon-link-external:before{content:'\f07f'}.octicon-list-ordered:before{content:'\f062'}.octicon-list-unordered:before{content:'\f061'}.octicon-location:before{content:'\f060'}.octicon-gist-private:before,.octicon-git-fork-private:before,.octicon-lock:before,.octicon-mirror-private:before{content:'\f06a'}.octicon-logo-github:before{content:'\f092'}.octicon-mail:before{content:'\f03b'}.octicon-mail-read:before{content:'\f03c'}.octicon-mail-reply:before{content:'\f051'}.octicon-mark-github:before{content:'\f00a'}.octicon-markdown:before{content:'\f0c9'}.octicon-megaphone:before{content:'\f077'}.octicon-mention:before{content:'\f0be'}.octicon-milestone:before{content:'\f075'}.octicon-mirror-public:before,.octicon-mirror:before{content:'\f024'}.octicon-mortar-board:before{content:'\f0d7'}.octicon-mute:before{content:'\f080'}.octicon-no-newline:before{content:'\f09c'}.octicon-octoface:before{content:'\f008'}.octicon-organization:before{content:'\f037'}.octicon-package:before{content:'\f0c4'}.octicon-paintcan:before{content:'\f0d1'}.octicon-pencil:before{content:'\f058'}.octicon-person-add:before,.octicon-person-follow:before,.octicon-person:before{content:'\f018'}.octicon-pin:before{content:'\f041'}.octicon-plug:before{content:'\f0d4'}.octicon-file-add:before,.octicon-file-directory-create:before,.octicon-gist-new:before,.octicon-plus:before,.octicon-repo-create:before{content:'\f05d'}.octicon-primitive-dot:before{content:'\f052'}.octicon-primitive-square:before{content:'\f053'}.octicon-pulse:before{content:'\f085'}.octicon-question:before{content:'\f02c'}.octicon-quote:before{content:'\f063'}.octicon-radio-tower:before{content:'\f030'}.octicon-repo-delete:before,.octicon-repo:before{content:'\f001'}.octicon-repo-clone:before{content:'\f04c'}.octicon-repo-force-push:before{content:'\f04a'}.octicon-gist-fork:before,.octicon-repo-forked:before{content:'\f002'}.octicon-repo-pull:before{content:'\f006'}.octicon-repo-push:before{content:'\f005'}.octicon-rocket:before{content:'\f033'}.octicon-rss:before{content:'\f034'}.octicon-ruby:before{content:'\f047'}.octicon-screen-full:before{content:'\f066'}.octicon-screen-normal:before{content:'\f067'}.octicon-search-save:before,.octicon-search:before{content:'\f02e'}.octicon-server:before{content:'\f097'}.octicon-settings:before{content:'\f07c'}.octicon-shield:before{content:'\f0e1'}.octicon-log-in:before,.octicon-sign-in:before{content:'\f036'}.octicon-log-out:before,.octicon-sign-out:before{content:'\f032'}.octicon-squirrel:before{content:'\f0b2'}.octicon-star-add:before,.octicon-star-delete:before,.octicon-star:before{content:'\f02a'}.octicon-stop:before{content:'\f08f'}.octicon-repo-sync:before,.octicon-sync:before{content:'\f087'}.octicon-tag-add:before,.octicon-tag-remove:before,.octicon-tag:before{content:'\f015'}.octicon-telescope:before{content:'\f088'}.octicon-terminal:before{content:'\f0c8'}.octicon-three-bars:before{content:'\f05e'}.octicon-thumbsdown:before{content:'\f0db'}.octicon-thumbsup:before{content:'\f0da'}.octicon-tools:before{content:'\f031'}.octicon-trashcan:before{content:'\f0d0'}.octicon-triangle-down:before{content:'\f05b'}.octicon-triangle-left:before{content:'\f044'}.octicon-triangle-right:before{content:'\f05a'}.octicon-triangle-up:before{content:'\f0aa'}.octicon-unfold:before{content:'\f039'}.octicon-unmute:before{content:'\f0ba'}.octicon-versions:before{content:'\f064'}.octicon-watch:before{content:'\f0e0'}.octicon-remove-close:before,.octicon-x:before{content:'\f081'}.octicon-zap:before{content:'\26A1'}body{font-family:'Helvetica Neue',Arial,Helvetica,sans-serif,'微软雅黑';background-color:#FAFAFA}img{border-radius:3px}pre{font:12px Consolas,"Liberation Mono",Menlo,Courier,monospace}pre.raw{padding:7px 12px;margin:10px 0;background-color:#f8f8f8;border:1px solid #ddd;border-radius:3px;font-size:13px;line-height:1.5;overflow:auto}.full.height{padding:0;margin:0 0 -80px 0;min-height:100%}.following.bar{z-index:900;left:0;width:100%}.following.bar.light{background-color:#fff;border-bottom:1px solid #DDD;box-shadow:0 2px 3px rgba(0,0,0,.04)}.following.bar .column .menu{margin-top:0}.following.bar .top.menu a.item.brand{padding-left:0}.following.bar .brand .ui.mini.image{width:30px}.following.bar .top.menu .dropdown.item.active,.following.bar .top.menu .dropdown.item:hover,.following.bar .top.menu a.item:hover{background-color:transparent}.following.bar .top.menu a.item:hover{color:rgba(0,0,0,.45)}.following.bar .top.menu .menu{z-index:900}.following.bar .head.link.item{padding-right:0!important}.following.bar .head.link.item .dropdown.icon,.following.bar .head.link.item .menu .octicon{margin-right:5px}.following.bar .avatar>.ui.image{margin-right:0}.following.bar .searchbox{background-color:#f4f4f4!important}.following.bar .searchbox:focus{background-color:#e9e9e9!important}.following.bar .octicon{width:16px;text-align:center}.ui.left{float:left}.ui.right{float:right}.ui .text.red{color:#d95c5c!important}.ui .text.red a{color:#d95c5c!important}.ui .text.red a:hover{color:#E67777!important}.ui .text.blue{color:#428bca!important}.ui .text.blue a{color:#15c!important}.ui .text.blue a:hover{color:#428bca!important}.ui .text.grey{color:#767676!important}.ui .text.grey a{color:#444!important}.ui .text.grey a:hover{color:#000!important}.ui .text.green{color:#6cc644!important}.ui .text.purple{color:#6e5494!important}.ui .text.left{text-align:left!important}.ui .text.right{text-align:right!important}.ui .text.small{font-size:.75em}.ui .text.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.ui .text.thin{font-weight:400}.ui .text.middle{vertical-align:middle}.ui .message{text-align:center}.ui .header>i+.content{padding-left:.75rem;vertical-align:middle}.ui .warning.header{background-color:#F9EDBE!important;border-color:#F0C36D}.ui .warning.segment{border-color:#F0C36D}.ui .info.header{background-color:#d9edf7!important;border-color:#85c5e5}.ui .info.segment{border-color:#85c5e5}.ui .normal.header{font-weight:400}.ui .avatar.image{border-radius:3px}.ui .form .fake{display:none!important}.overflow.menu .items{max-height:300px;overflow-y:auto}.overflow.menu .items .item{position:relative;cursor:pointer;display:block;border:none;height:auto;border-top:none;line-height:1em;color:rgba(0,0,0,.8);padding:.71428571em 1.14285714em!important;font-size:1rem;text-transform:none;font-weight:400;box-shadow:none;-webkit-touch-callout:none}.overflow.menu .items .item.active{font-weight:700}.overflow.menu .items .item:hover{background:rgba(0,0,0,.05);color:rgba(0,0,0,.8);z-index:13}.scrolling.menu .item.selected{font-weight:700!important}footer{margin-top:54px!important;height:40px;background-color:#fff;border-top:1px solid #d6d6d6;clear:both;width:100%;color:#888}footer .container{padding-top:10px}footer .container .fa{width:16px;text-align:center;color:#428bca}footer .container .ui.language.dropdown{z-index:10000}footer .container .links>*{border-left:1px solid #d6d6d6;padding-left:8px;margin-left:5px}footer .container .links>:first-child{border-left:none}.hide{display:none}.center{text-align:center}.img-1{width:2px!important;height:2px!important}.img-2{width:4px!important;height:4px!important}.img-3{width:6px!important;height:6px!important}.img-4{width:8px!important;height:8px!important}.img-5{width:10px!important;height:10px!important}.img-6{width:12px!important;height:12px!important}.img-7{width:14px!important;height:14px!important}.img-8{width:16px!important;height:16px!important}.img-9{width:18px!important;height:18px!important}.img-10{width:20px!important;height:20px!important}.img-11{width:22px!important;height:22px!important}.img-12{width:24px!important;height:24px!important}.img-13{width:26px!important;height:26px!important}.img-14{width:28px!important;height:28px!important}.img-15{width:30px!important;height:30px!important}.img-16{width:32px!important;height:32px!important}.mega-octicon.icon,.octicon.icon{font-family:octicons;opacity:1!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}@media only screen and (max-width:991px) and (min-width:768px){.ui.container{width:95%}}.markdown{overflow:hidden;font-family:"Helvetica Neue",Helvetica,"Segoe UI",Arial,freesans,sans-serif;font-size:16px;line-height:1.6;word-wrap:break-word}.markdown>:first-child{margin-top:0!important}.markdown>:last-child{margin-bottom:0!important}.markdown a:not([href]){color:inherit;text-decoration:none}.markdown .absent{color:#c00}.markdown .anchor{position:absolute;top:0;left:0;display:block;padding-right:6px;padding-left:30px;margin-left:-30px}.markdown .anchor:focus{outline:0}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{position:relative;margin-top:1em;margin-bottom:16px;font-weight:700;line-height:1.4}.markdown h1 .octicon-link,.markdown h2 .octicon-link,.markdown h3 .octicon-link,.markdown h4 .octicon-link,.markdown h5 .octicon-link,.markdown h6 .octicon-link{display:none;color:#000;vertical-align:middle}.markdown h1:hover .anchor,.markdown h2:hover .anchor,.markdown h3:hover .anchor,.markdown h4:hover .anchor,.markdown h5:hover .anchor,.markdown h6:hover .anchor{padding-left:8px;margin-left:-30px;text-decoration:none}.markdown h1:hover .anchor .octicon-link,.markdown h2:hover .anchor .octicon-link,.markdown h3:hover .anchor .octicon-link,.markdown h4:hover .anchor .octicon-link,.markdown h5:hover .anchor .octicon-link,.markdown h6:hover .anchor .octicon-link{display:inline-block}.markdown h1 code,.markdown h1 tt,.markdown h2 code,.markdown h2 tt,.markdown h3 code,.markdown h3 tt,.markdown h4 code,.markdown h4 tt,.markdown h5 code,.markdown h5 tt,.markdown h6 code,.markdown h6 tt{font-size:inherit}.markdown h1{padding-bottom:.3em;font-size:2.25em;line-height:1.2;border-bottom:1px solid #eee}.markdown h1 .anchor{line-height:1}.markdown h2{padding-bottom:.3em;font-size:1.75em;line-height:1.225;border-bottom:1px solid #eee}.markdown h2 .anchor{line-height:1}.markdown h3{font-size:1.5em;line-height:1.43}.markdown h3 .anchor{line-height:1.2}.markdown h4{font-size:1.25em}.markdown h4 .anchor{line-height:1.2}.markdown h5{font-size:1em}.markdown h5 .anchor{line-height:1.1}.markdown h6{font-size:1em;color:#777}.markdown h6 .anchor{line-height:1.1}.markdown blockquote,.markdown dl,.markdown ol,.markdown p,.markdown pre,.markdown table,.markdown ul{margin-top:0;margin-bottom:16px}.markdown hr{height:4px;padding:0;margin:16px 0;background-color:#e7e7e7;border:0 none}.markdown ol,.markdown ul{padding-left:2em}.markdown ol.no-list,.markdown ul.no-list{padding:0;list-style-type:none}.markdown ol ol,.markdown ol ul,.markdown ul ol,.markdown ul ul{margin-top:0;margin-bottom:0}.markdown ol ol,.markdown ul ol{list-style-type:lower-roman}.markdown li>p{margin-top:16px}.markdown dl{padding:0}.markdown dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:700}.markdown dl dd{padding:0 16px;margin-bottom:16px}.markdown blockquote{padding:0 15px;color:#777;border-left:4px solid #ddd}.markdown blockquote>:first-child{margin-top:0}.markdown blockquote>:last-child{margin-bottom:0}.markdown table{display:block;width:100%;overflow:auto;word-break:normal;word-break:keep-all}.markdown table th{font-weight:700}.markdown table td,.markdown table th{padding:6px 13px!important;border:1px solid #ddd}.markdown table tr{background-color:#fff;border-top:1px solid #ccc}.markdown table tr:nth-child(2n){background-color:#f8f8f8}.markdown img{max-width:100%;box-sizing:border-box}.markdown .emoji{max-width:none}.markdown span.frame{display:block;overflow:hidden}.markdown span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid #ddd}.markdown span.frame span img{display:block;float:left}.markdown span.frame span span{display:block;padding:5px 0 0;clear:both;color:#333}.markdown span.align-center{display:block;overflow:hidden;clear:both}.markdown span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.markdown span.align-center span img{margin:0 auto;text-align:center}.markdown span.align-right{display:block;overflow:hidden;clear:both}.markdown span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.markdown span.align-right span img{margin:0;text-align:right}.markdown span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.markdown span.float-left span{margin:13px 0 0}.markdown span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.markdown span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.markdown code,.markdown tt{padding:0;padding-top:.2em;padding-bottom:.2em;margin:0;font-size:85%;background-color:rgba(0,0,0,.04);border-radius:3px}.markdown code:after,.markdown code:before,.markdown tt:after,.markdown tt:before{letter-spacing:-.2em;content:"\00a0"}.markdown code br,.markdown tt br{display:none}.markdown del code{text-decoration:inherit}.markdown pre>code{padding:0;margin:0;font-size:100%;word-break:normal;white-space:pre;background:0 0;border:0}.markdown .highlight{margin-bottom:16px}.markdown .highlight pre,.markdown pre{padding:16px;overflow:auto;font-size:85%;line-height:1.45;background-color:#f7f7f7;border-radius:3px}.markdown .highlight pre{margin-bottom:0;word-break:normal}.markdown pre{word-wrap:normal}.markdown pre code,.markdown pre tt{display:inline;max-width:initial;padding:0;margin:0;overflow:initial;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.markdown pre code:after,.markdown pre code:before,.markdown pre tt:after,.markdown pre tt:before{content:normal}.markdown kbd{display:inline-block;padding:3px 5px;font-size:11px;line-height:10px;color:#555;vertical-align:middle;background-color:#fcfcfc;border:solid 1px #ccc;border-bottom-color:#bbb;border-radius:3px;box-shadow:inset 0 -1px 0 #bbb}.markdown .csv-data td,.markdown .csv-data th{padding:5px;overflow:hidden;font-size:12px;line-height:1;text-align:left;white-space:nowrap}.markdown .csv-data .blob-num{padding:10px 8px 9px;text-align:right;background:#fff;border:0}.markdown .csv-data tr{border-top:0}.markdown .csv-data th{font-weight:700;background:#f8f8f8;border-top:0}.pln{color:#333}@media screen{.str{color:#d14}.kwd{color:#333}.com{color:#998;font-style:italic}.typ{color:#458}.lit{color:#458}.pun{color:#333}.opn{color:#333}.clo{color:#333}.tag{color:navy}.atn{color:teal}.atv{color:#d14}.dec{color:#333}.var{color:teal}.fun{color:#900}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:700}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:700}.lit{color:#044}.clo,.opn,.pun{color:#440}.tag{color:#006;font-weight:700}.atn{color:#404}.atv{color:#060}}ol.linenums{margin-top:0;margin-bottom:0}.home{padding-bottom:80px}.home .logo{max-width:250px}.home .hero h1,.home .hero h2{font-family:'PT Sans Narrow',sans-serif}.home .hero h1{font-size:7em}.home .hero h2{font-size:4em}.home .hero .octicon{color:#d9453d;font-size:60px;margin-right:10px}.home .hero.header{font-size:24px}.home p.large{font-size:20px}.home .stackable{padding-top:30px}.home a{color:#d9453d}.install{padding-top:45px;padding-bottom:80px}.install form label{text-align:right;width:320px!important}.install form input{width:35%!important}.install form .field{text-align:left}.install form .field .help{margin-left:335px!important}.install form .field.optional .title{margin-left:38%}.install .ui .checkbox{margin-left:40%!important}.install .ui .checkbox label{width:auto!important}.form .help{color:#999;padding-top:.6em;padding-bottom:.6em;display:inline-block}.ui.attached.header{background:#f0f0f0}.ui.attached.header .right{margin-top:-5px}.ui.attached.header .right .button{padding:8px 10px;font-weight:400}.repository.new.fork form,.repository.new.migrate form,.repository.new.repo form{margin:auto;width:800px!important}.repository.new.fork form .ui.message,.repository.new.migrate form .ui.message,.repository.new.repo form .ui.message{text-align:center}.repository.new.fork form .header,.repository.new.migrate form .header,.repository.new.repo form .header{padding-left:280px!important}.repository.new.fork form .inline.field>label,.repository.new.migrate form .inline.field>label,.repository.new.repo form .inline.field>label{text-align:right;width:250px!important;word-wrap:break-word}.repository.new.fork form .help,.repository.new.migrate form .help,.repository.new.repo form .help{margin-left:265px!important}.repository.new.fork form .dropdown .dropdown.icon,.repository.new.migrate form .dropdown .dropdown.icon,.repository.new.repo form .dropdown .dropdown.icon{margin-top:-7px!important}.repository.new.fork form .dropdown .text,.repository.new.migrate form .dropdown .text,.repository.new.repo form .dropdown .text{margin-right:0!important}.repository.new.fork form .dropdown .text i,.repository.new.migrate form .dropdown .text i,.repository.new.repo form .dropdown .text i{margin-right:0!important}.repository.new.fork form .optional .title,.repository.new.migrate form .optional .title,.repository.new.repo form .optional .title{margin-left:250px!important}.repository.new.fork form input,.repository.new.fork form textarea,.repository.new.migrate form input,.repository.new.migrate form textarea,.repository.new.repo form input,.repository.new.repo form textarea{width:50%!important}.repository.new.repo .ui.form .selection.dropdown:not(.owner){width:50%!important}.repository.new.repo .ui.form #auto-init{margin-left:265px!important}.new.webhook form .help{margin-left:25px}.new.webhook .events.fields .column{padding-left:40px}.repository{padding-top:15px;padding-bottom:80px}.repository .head .column{padding-top:5px!important;padding-bottom:5px!important}.repository .head .ui.compact.menu{margin-left:1rem}.repository .head .ui.header{margin-top:0}.repository .head .mega-octicon{width:30px;font-size:30px}.repository .head .ui.huge.breadcrumb{font-weight:300;font-size:1.7rem}.repository .head .fork-flag{margin-left:38px;display:block;font-size:12px;line-height:10px;white-space:nowrap}.repository .metas .menu{max-height:300px;overflow-x:auto}.repository .metas .ui.list .hide{display:none!important}.repository .metas .ui.list .label.color{padding:0 8px;margin-right:5px}.repository .metas .ui.list a{padding-top:5px;padding-right:10px}.repository .metas .ui.list a .text{color:#444}.repository .metas .ui.list a .text:hover{color:#000}.repository .filter.menu .label.color{margin-left:15px;padding:0 8px}.repository .filter.menu .octicon{float:left;margin-left:-5px;margin-right:-7px}.repository .filter.menu .menu{max-height:300px;overflow-x:auto;right:0!important;left:auto!important}.repository .filter.menu .dropdown.item{margin:1px;padding-right:0}.repository.options input{width:50%!important;min-width:300px}.repository.options #interval{width:100px!important;min-width:100px}.repository.options .danger .item{padding:20px 15px}.repository.options .danger .ui.divider{margin:0}.repository.new.issue .comment.form .comment .avatar{width:3em}.repository.new.issue .comment.form .content{margin-left:4em}.repository.new.issue .comment.form .content .markdown{font-size:14px}.repository.new.issue .comment.form .metas{min-width:220px}.repository.new.issue .comment.form .metas .filter.menu{max-height:300px;overflow-x:auto}.repository.view.issue .title{padding-bottom:0!important}.repository.view.issue .title h1{font-weight:300;font-size:3rem;margin-bottom:5px}.repository.view.issue .title h1 .ui.input{font-size:.5em;vertical-align:top;width:50%;min-width:600px}.repository.view.issue .title h1 .ui.input input{font-size:1.5em;padding:6px 10px}.repository.view.issue .title .index{font-weight:300;color:#aaa;letter-spacing:-1px}.repository.view.issue .title .label{margin-right:10px}.repository.view.issue .title .edit-zone{margin-top:10px}.repository.view.issue .pull-desc code{color:#0166E6}.repository.view.issue .pull.tabular.menu{margin-bottom:10px}.repository.view.issue .pull.tabular.menu .octicon{margin-right:5px}.repository.view.issue .pull.tab.segment{border:none;padding:0;padding-top:10px;box-shadow:none;background-color:inherit}.repository.view.issue .pull .merge.box .avatar{margin-left:10px;margin-top:10px}.repository.view.issue .comment-list:before{display:block;content:"";position:absolute;margin-top:12px;margin-bottom:14px;top:0;bottom:0;left:96px;width:2px;background-color:#f3f3f3;z-index:-1}.repository.view.issue .comment-list .comment .avatar{width:3em}.repository.view.issue .comment-list .comment .tag{color:#767676;margin-top:3px;padding:2px 5px;font-size:12px;border:1px solid rgba(0,0,0,.1);border-radius:3px}.repository.view.issue .comment-list .comment .actions .item{float:left}.repository.view.issue .comment-list .comment .actions a.item{margin-top:6px;margin-left:10px}.repository.view.issue .comment-list .comment .content{margin-left:4em}.repository.view.issue .comment-list .comment .content .header{font-weight:400;padding:auto 15px;color:#767676;background-color:#f7f7f7;border-bottom:1px solid #eee;border-top-left-radius:3px;border-top-right-radius:3px}.repository.view.issue .comment-list .comment .content .header .text{max-width:78%;padding-top:10px;padding-bottom:10px}.repository.view.issue .comment-list .comment .content .markdown{font-size:14px}.repository.view.issue .comment-list .comment .content .no-content{color:#767676;font-style:italic}.repository.view.issue .comment-list .comment .content>.bottom.segment{background:#f3f4f5}.repository.view.issue .comment-list .comment .content>.bottom.segment .ui.image{max-height:150px}.repository.view.issue .comment-list .comment .ui.form .field:first-child{clear:none}.repository.view.issue .comment-list .comment .ui.form .tab.segment{border:none;padding:0;padding-top:10px}.repository.view.issue .comment-list .comment .ui.form textarea{height:200px}.repository.view.issue .comment-list .comment .edit.buttons{margin-top:10px}.repository.view.issue .comment-list .event{position:relative;margin:15px 0 15px 79px;padding-left:25px}.repository.view.issue .comment-list .event .octicon{width:30px;float:left;margin-left:-36px;text-align:center}.repository.view.issue .comment-list .event .octicon.octicon-circle-slash{margin-top:5px;font-size:20px;color:#bd2c00}.repository.view.issue .comment-list .event .octicon.octicon-primitive-dot{font-size:30px;color:#6cc644}.repository.view.issue .comment-list .event .octicon.octicon-bookmark{margin-top:3px;font-size:25px}.repository.view.issue .comment-list .event .detail{font-size:.9rem;margin-top:5px;margin-left:35px}.repository.view.issue .comment-list .event .detail .octicon.octicon-git-commit{margin-top:2px}.repository.view.issue .ui.segment.metas{margin-top:-3px}.repository .comment.form .ui.comments{margin-top:-12px;max-width:100%}.repository .comment.form .content .field:first-child{clear:none}.repository .comment.form .content .tab.segment{border:none;padding:0;padding-top:10px}.repository .comment.form .content textarea{height:200px}.repository .label.list{list-style:none;padding-top:15px}.repository .label.list .item{padding-top:10px;padding-bottom:10px;border-bottom:1px dashed #AAA}.repository .label.list .item a{font-size:15px;padding-top:5px;padding-right:10px;color:#666}.repository .label.list .item a:hover{color:#000}.repository .label.list .item a.open-issues{margin-right:30px}.repository .milestone.list{list-style:none;padding-top:15px}.repository .milestone.list>.item{padding-top:10px;padding-bottom:10px;border-bottom:1px dashed #AAA}.repository .milestone.list>.item>a{padding-top:5px;padding-right:10px;color:#000}.repository .milestone.list>.item>a:hover{color:#4078c0}.repository .milestone.list>.item .ui.progress{width:40%;padding:0;border:0;margin:0}.repository .milestone.list>.item .ui.progress .bar{height:20px}.repository .milestone.list>.item .meta{color:#999;padding-top:5px}.repository .milestone.list>.item .meta .issue-stats .octicon{padding-left:5px}.repository .milestone.list>.item .meta .overdue{color:red}.repository .milestone.list>.item .operate{margin-top:-15px}.repository .milestone.list>.item .operate>a{font-size:15px;padding-top:5px;padding-right:10px;color:#666}.repository .milestone.list>.item .operate>a:hover{color:#000}.repository .milestone.list>.item .content{padding-top:10px}.repository.new.milestone textarea{height:200px}.repository.new.milestone #deadline{width:150px}.repository.compare.pull .choose.branch .octicon{padding-right:10px}.repository .filter.dropdown .menu{margin-top:1px!important}.repository.commits .header .ui.right .search input{font-weight:400;padding:5px 10px}.repository.commits .header .ui.right .button{float:right;margin-left:5px;margin-top:1px}.repository .commits.table{font-size:13px}.repository .commits.table td:first-child,.repository .commits.table th:first-child{padding-left:15px}.repository .commits.table td{line-height:15px}.repository .commits.table .author{min-width:180px}.repository .commits.table .message span{max-width:500px}.repository .commits.table .date{width:120px}.repository .sha.label{font-family:Consolas,Menlo,Monaco,"Lucida Console",monospace;font-size:14px;padding:6px 10px 4px 10px;font-weight:400}.repository .diff-detail-box{margin:15px 0;line-height:30px}.repository .diff-detail-box ol{clear:both;padding-left:0;margin-top:5px;margin-bottom:28px}.repository .diff-detail-box ol li{list-style:none;padding-bottom:4px;margin-bottom:4px;border-bottom:1px dashed #DDD;padding-left:6px}.repository .diff-detail-box span.status{display:inline-block;width:12px;height:12px;margin-right:8px;vertical-align:middle}.repository .diff-detail-box span.status.modify{background-color:#f0db88}.repository .diff-detail-box span.status.add{background-color:#b4e2b4}.repository .diff-detail-box span.status.del{background-color:#e9aeae}.repository .diff-detail-box span.status.rename{background-color:#dad8ff}.repository .diff-box .count{margin-right:12px}.repository .diff-box .count .bar{background-color:#e75316;height:12px;width:40px;display:inline-block;margin:2px 4px 0 4px;vertical-align:text-top}.repository .diff-box .count .bar .add{background-color:#77c64a;height:12px}.repository .diff-box .file{color:#888}.repository .diff-file-box .header{border-bottom:1px solid #d4d4d5!important}.repository .diff-file-box .file-body.file-code .lines-num{text-align:right;color:#999;background:#fafafa;width:1%}.repository .diff-file-box .file-body.file-code .lines-num-old{border-right:1px solid #DDD}.repository .diff-file-box .code-diff{font-size:13px}.repository .diff-file-box .code-diff td{padding:0;border-top:none}.repository .diff-file-box .code-diff pre{margin:0}.repository .diff-file-box .code-diff .lines-num{border-right:1px solid #d4d4d5;padding:0 5px}.repository .diff-file-box .code-diff tbody tr.tag-code pre,.repository .diff-file-box .code-diff tbody tr.tag-code td{background-color:#E0E0E0!important;border-color:#ADADAD!important}.repository .diff-file-box .code-diff tbody tr.del-code pre,.repository .diff-file-box .code-diff tbody tr.del-code td{background-color:#ffe2dd!important;border-color:#e9aeae!important}.repository .diff-file-box .code-diff tbody tr.add-code pre,.repository .diff-file-box .code-diff tbody tr.add-code td{background-color:#d1ffd6!important;border-color:#b4e2b4!important}.repository .diff-file-box .code-diff tbody tr:hover td{background-color:#FFF8D2!important;border-color:#F0DB88!important}.repository .diff-file-box .code-diff tbody tr:hover pre{background-color:transparent!important}.repository .code-view{overflow:auto;overflow-x:auto;overflow-y:hidden}.issue.list{list-style:none;padding-top:15px}.issue.list>.item{padding-top:15px;padding-bottom:10px;border-bottom:1px dashed #AAA}.issue.list>.item .title{color:#444;font-size:15px;font-weight:700;margin:0 6px}.issue.list>.item .title:hover{color:#000}.issue.list>.item .comment{padding-right:10px;color:#666}.issue.list>.item .desc{padding-top:5px;color:#999}.issue.list>.item .desc a.milestone{padding-left:5px;color:#999!important}.issue.list>.item .desc a.milestone:hover{color:#000!important}.issue.list>.item .desc .assignee{margin-top:-5px;margin-right:5px}.page.buttons{padding-top:15px}.ui.comments .dropzone{width:100%;margin-bottom:10px;border:2px dashed #0087F7;box-shadow:none!important}.ui.comments .dropzone .dz-error-message{top:140px}.settings .content{margin-top:2px}.settings .content .header,.settings .content .segment{box-shadow:0 1px 2px 0 rgba(34,36,38,.15)}.settings .key.list .item:not(:first-child){border-top:1px solid #eaeaea}.settings .key.list .ssh-key-state-indicator{float:left;color:gray;padding-left:10px;padding-top:10px}.settings .key.list .ssh-key-state-indicator.active{color:#6cc644}.settings .key.list .meta{padding-top:5px}.settings .key.list .print{color:#767676}.settings .key.list .activity{color:#666}.settings .hook.list>.item:not(:first-child){border-top:1px solid #eaeaea}.settings .hook.list .item{padding:10px 20px}.settings .hook.list .item .fa,.settings .hook.list .item .octicon{width:20px;text-align:center}.settings .hook.history.list .item{padding-left:13px}.settings .hook.history.list .item .meta .ui.right{margin-top:5px}.settings .hook.history.list .item .meta .ui.right .time{font-size:12px}.settings .hook.history.list .item .info{margin-top:10px}.settings .hook.history.list .item .info .tabular.menu .item{font-weight:500}.settings .hook.history.list .item .info .tab.segment{border:none;padding:0;padding-top:10px;box-shadow:none}.settings .hook.history.list .item .info .tab.segment>*{color:#666}.settings .hook.history.list .item .info .tab.segment pre{word-wrap:break-word}.settings .hook.history.list .item .info .tab.segment pre .hljs{padding:0;background-color:inherit}.ui.vertical.menu .header.item{font-size:1.1em;background:#f0f0f0}.edit-label.modal .form .column,.new-label.segment .form .column{padding-right:0}.edit-label.modal .form .buttons,.new-label.segment .form .buttons{margin-left:auto;padding-top:15px}.edit-label.modal .form .color.picker.column,.new-label.segment .form .color.picker.column{width:auto}.edit-label.modal .form .color.picker.column .color-picker,.new-label.segment .form .color.picker.column .color-picker{height:35px;width:auto;padding-left:30px}.edit-label.modal .form .minicolors-swatch.minicolors-sprite,.new-label.segment .form .minicolors-swatch.minicolors-sprite{top:10px;left:10px;width:15px;height:15px}.edit-label.modal .form .precolors,.new-label.segment .form .precolors{padding-left:0;padding-right:0;margin:3px 10px auto 10px;width:120px}.edit-label.modal .form .precolors .color,.new-label.segment .form .precolors .color{float:left;width:15px;height:15px}#delete-repo-modal .ui.message,#transfer-repo-modal .ui.message{width:100%!important}.organization{padding-top:15px;padding-bottom:80px}.organization .head .ui.header .text{vertical-align:middle;font-size:1.6rem;margin-left:15px}.organization .head .ui.header .ui.right{margin-top:5px}.user{padding-top:15px;padding-bottom:80px}.user.settings .key.list .item.ui.grid{margin-top:15px}.dashboard{padding-top:15px;padding-bottom:80px}.dashboard.issues .context.user.menu{min-width:200px}.dashboard.issues .context.user.menu .ui.header{font-size:1rem;text-transform:none}.dashboard.issues .filter.menu .item{text-align:left}.dashboard.issues .filter.menu .item .floating.label{top:7px;left:95%}.dashboard.issues .filter.menu .item.active{background-color:#4183c4;color:#FFF}.dashboard.issues .filter.menu .item .text{width:90%}.dashboard.issues .ui.right .head.menu{margin-top:-5px}.dashboard.issues .ui.right .head.menu .item.active{color:#d9453d}.admin{padding-top:15px;padding-bottom:80px}.admin .table.segment{padding:0;font-size:13px}.admin .table.segment th{padding-top:5px;padding-bottom:5px}.admin .table.segment td:first-child,.admin .table.segment th:first-child{padding-left:15px}.explore{padding-top:15px;padding-bottom:80px}.explore.repositories .ui.repository.list .item{border-top:1px solid #eee;padding-top:25px;padding-bottom:25px}.explore.repositories .ui.repository.list .item .ui.header{font-size:1.5rem;padding-bottom:10px}.explore.repositories .ui.repository.list .item .ui.header .metas{color:#888;font-size:13px;font-weight:400}.explore.repositories .ui.repository.list .item .ui.header .metas span:not(:last-child){margin-right:5px}.explore.repositories .ui.repository.list .item .time{font-size:12px;color:grey}
\ No newline at end of file
+@font-face{font-family:octicons;src:url(../fonts/octicons.eot?#iefix&v=396334ee3da78f4302d25c758ae3e3ce5dc3c97d) format('embedded-opentype'),url(../fonts/octicons.woff?v=396334ee3da78f4302d25c758ae3e3ce5dc3c97d) format('woff'),url(../fonts/octicons.ttf?v=396334ee3da78f4302d25c758ae3e3ce5dc3c97d) format('truetype'),url(../fonts/octicons.svg?v=396334ee3da78f4302d25c758ae3e3ce5dc3c97d#octicons) format('svg');font-weight:400;font-style:normal}.mega-octicon,.octicon{font:normal normal normal 16px/1 octicons;display:inline-block;text-decoration:none;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mega-octicon{font-size:32px}.octicon-alert:before{content:'\f02d'}.octicon-arrow-down:before{content:'\f03f'}.octicon-arrow-left:before{content:'\f040'}.octicon-arrow-right:before{content:'\f03e'}.octicon-arrow-small-down:before{content:'\f0a0'}.octicon-arrow-small-left:before{content:'\f0a1'}.octicon-arrow-small-right:before{content:'\f071'}.octicon-arrow-small-up:before{content:'\f09f'}.octicon-arrow-up:before{content:'\f03d'}.octicon-beaker:before,.octicon-microscope:before{content:'\f0dd'}.octicon-bell:before{content:'\f0de'}.octicon-book:before{content:'\f007'}.octicon-bookmark:before{content:'\f07b'}.octicon-briefcase:before{content:'\f0d3'}.octicon-broadcast:before{content:'\f048'}.octicon-browser:before{content:'\f0c5'}.octicon-bug:before{content:'\f091'}.octicon-calendar:before{content:'\f068'}.octicon-check:before{content:'\f03a'}.octicon-checklist:before{content:'\f076'}.octicon-chevron-down:before{content:'\f0a3'}.octicon-chevron-left:before{content:'\f0a4'}.octicon-chevron-right:before{content:'\f078'}.octicon-chevron-up:before{content:'\f0a2'}.octicon-circle-slash:before{content:'\f084'}.octicon-circuit-board:before{content:'\f0d6'}.octicon-clippy:before{content:'\f035'}.octicon-clock:before{content:'\f046'}.octicon-cloud-download:before{content:'\f00b'}.octicon-cloud-upload:before{content:'\f00c'}.octicon-code:before{content:'\f05f'}.octicon-color-mode:before{content:'\f065'}.octicon-comment-add:before,.octicon-comment:before{content:'\f02b'}.octicon-comment-discussion:before{content:'\f04f'}.octicon-credit-card:before{content:'\f045'}.octicon-dash:before{content:'\f0ca'}.octicon-dashboard:before{content:'\f07d'}.octicon-database:before{content:'\f096'}.octicon-clone:before,.octicon-desktop-download:before{content:'\f0dc'}.octicon-device-camera:before{content:'\f056'}.octicon-device-camera-video:before{content:'\f057'}.octicon-device-desktop:before{content:'\f27c'}.octicon-device-mobile:before{content:'\f038'}.octicon-diff:before{content:'\f04d'}.octicon-diff-added:before{content:'\f06b'}.octicon-diff-ignored:before{content:'\f099'}.octicon-diff-modified:before{content:'\f06d'}.octicon-diff-removed:before{content:'\f06c'}.octicon-diff-renamed:before{content:'\f06e'}.octicon-ellipsis:before{content:'\f09a'}.octicon-eye-unwatch:before,.octicon-eye-watch:before,.octicon-eye:before{content:'\f04e'}.octicon-file-binary:before{content:'\f094'}.octicon-file-code:before{content:'\f010'}.octicon-file-directory:before{content:'\f016'}.octicon-file-media:before{content:'\f012'}.octicon-file-pdf:before{content:'\f014'}.octicon-file-submodule:before{content:'\f017'}.octicon-file-symlink-directory:before{content:'\f0b1'}.octicon-file-symlink-file:before{content:'\f0b0'}.octicon-file-text:before{content:'\f011'}.octicon-file-zip:before{content:'\f013'}.octicon-flame:before{content:'\f0d2'}.octicon-fold:before{content:'\f0cc'}.octicon-gear:before{content:'\f02f'}.octicon-gift:before{content:'\f042'}.octicon-gist:before{content:'\f00e'}.octicon-gist-secret:before{content:'\f08c'}.octicon-git-branch-create:before,.octicon-git-branch-delete:before,.octicon-git-branch:before{content:'\f020'}.octicon-git-commit:before{content:'\f01f'}.octicon-git-compare:before{content:'\f0ac'}.octicon-git-merge:before{content:'\f023'}.octicon-git-pull-request-abandoned:before,.octicon-git-pull-request:before{content:'\f009'}.octicon-globe:before{content:'\f0b6'}.octicon-graph:before{content:'\f043'}.octicon-heart:before{content:'\2665'}.octicon-history:before{content:'\f07e'}.octicon-home:before{content:'\f08d'}.octicon-horizontal-rule:before{content:'\f070'}.octicon-hubot:before{content:'\f09d'}.octicon-inbox:before{content:'\f0cf'}.octicon-info:before{content:'\f059'}.octicon-issue-closed:before{content:'\f028'}.octicon-issue-opened:before{content:'\f026'}.octicon-issue-reopened:before{content:'\f027'}.octicon-jersey:before{content:'\f019'}.octicon-key:before{content:'\f049'}.octicon-keyboard:before{content:'\f00d'}.octicon-law:before{content:'\f0d8'}.octicon-light-bulb:before{content:'\f000'}.octicon-link:before{content:'\f05c'}.octicon-link-external:before{content:'\f07f'}.octicon-list-ordered:before{content:'\f062'}.octicon-list-unordered:before{content:'\f061'}.octicon-location:before{content:'\f060'}.octicon-gist-private:before,.octicon-git-fork-private:before,.octicon-lock:before,.octicon-mirror-private:before{content:'\f06a'}.octicon-logo-github:before{content:'\f092'}.octicon-mail:before{content:'\f03b'}.octicon-mail-read:before{content:'\f03c'}.octicon-mail-reply:before{content:'\f051'}.octicon-mark-github:before{content:'\f00a'}.octicon-markdown:before{content:'\f0c9'}.octicon-megaphone:before{content:'\f077'}.octicon-mention:before{content:'\f0be'}.octicon-milestone:before{content:'\f075'}.octicon-mirror-public:before,.octicon-mirror:before{content:'\f024'}.octicon-mortar-board:before{content:'\f0d7'}.octicon-mute:before{content:'\f080'}.octicon-no-newline:before{content:'\f09c'}.octicon-octoface:before{content:'\f008'}.octicon-organization:before{content:'\f037'}.octicon-package:before{content:'\f0c4'}.octicon-paintcan:before{content:'\f0d1'}.octicon-pencil:before{content:'\f058'}.octicon-person-add:before,.octicon-person-follow:before,.octicon-person:before{content:'\f018'}.octicon-pin:before{content:'\f041'}.octicon-plug:before{content:'\f0d4'}.octicon-file-add:before,.octicon-file-directory-create:before,.octicon-gist-new:before,.octicon-plus:before,.octicon-repo-create:before{content:'\f05d'}.octicon-primitive-dot:before{content:'\f052'}.octicon-primitive-square:before{content:'\f053'}.octicon-pulse:before{content:'\f085'}.octicon-question:before{content:'\f02c'}.octicon-quote:before{content:'\f063'}.octicon-radio-tower:before{content:'\f030'}.octicon-repo-delete:before,.octicon-repo:before{content:'\f001'}.octicon-repo-clone:before{content:'\f04c'}.octicon-repo-force-push:before{content:'\f04a'}.octicon-gist-fork:before,.octicon-repo-forked:before{content:'\f002'}.octicon-repo-pull:before{content:'\f006'}.octicon-repo-push:before{content:'\f005'}.octicon-rocket:before{content:'\f033'}.octicon-rss:before{content:'\f034'}.octicon-ruby:before{content:'\f047'}.octicon-screen-full:before{content:'\f066'}.octicon-screen-normal:before{content:'\f067'}.octicon-search-save:before,.octicon-search:before{content:'\f02e'}.octicon-server:before{content:'\f097'}.octicon-settings:before{content:'\f07c'}.octicon-shield:before{content:'\f0e1'}.octicon-log-in:before,.octicon-sign-in:before{content:'\f036'}.octicon-log-out:before,.octicon-sign-out:before{content:'\f032'}.octicon-squirrel:before{content:'\f0b2'}.octicon-star-add:before,.octicon-star-delete:before,.octicon-star:before{content:'\f02a'}.octicon-stop:before{content:'\f08f'}.octicon-repo-sync:before,.octicon-sync:before{content:'\f087'}.octicon-tag-add:before,.octicon-tag-remove:before,.octicon-tag:before{content:'\f015'}.octicon-telescope:before{content:'\f088'}.octicon-terminal:before{content:'\f0c8'}.octicon-three-bars:before{content:'\f05e'}.octicon-thumbsdown:before{content:'\f0db'}.octicon-thumbsup:before{content:'\f0da'}.octicon-tools:before{content:'\f031'}.octicon-trashcan:before{content:'\f0d0'}.octicon-triangle-down:before{content:'\f05b'}.octicon-triangle-left:before{content:'\f044'}.octicon-triangle-right:before{content:'\f05a'}.octicon-triangle-up:before{content:'\f0aa'}.octicon-unfold:before{content:'\f039'}.octicon-unmute:before{content:'\f0ba'}.octicon-versions:before{content:'\f064'}.octicon-watch:before{content:'\f0e0'}.octicon-remove-close:before,.octicon-x:before{content:'\f081'}.octicon-zap:before{content:'\26A1'}.emoji{width:1.5em;height:1.5em;display:inline-block;background-size:contain}body{font-family:'Helvetica Neue',Arial,Helvetica,sans-serif,'微软雅黑';background-color:#FAFAFA}img{border-radius:3px}pre{font:12px Consolas,"Liberation Mono",Menlo,Courier,monospace}pre.raw{padding:7px 12px;margin:10px 0;background-color:#f8f8f8;border:1px solid #ddd;border-radius:3px;font-size:13px;line-height:1.5;overflow:auto}.full.height{padding:0;margin:0 0 -80px 0;min-height:100%}.following.bar{z-index:900;left:0;width:100%}.following.bar.light{background-color:#fff;border-bottom:1px solid #DDD;box-shadow:0 2px 3px rgba(0,0,0,.04)}.following.bar .column .menu{margin-top:0}.following.bar .top.menu a.item.brand{padding-left:0}.following.bar .brand .ui.mini.image{width:30px}.following.bar .top.menu .dropdown.item.active,.following.bar .top.menu .dropdown.item:hover,.following.bar .top.menu a.item:hover{background-color:transparent}.following.bar .top.menu a.item:hover{color:rgba(0,0,0,.45)}.following.bar .top.menu .menu{z-index:900}.following.bar .head.link.item{padding-right:0!important}.following.bar .head.link.item .dropdown.icon,.following.bar .head.link.item .menu .octicon{margin-right:5px}.following.bar .avatar>.ui.image{margin-right:0}.following.bar .searchbox{background-color:#f4f4f4!important}.following.bar .searchbox:focus{background-color:#e9e9e9!important}.following.bar .octicon{width:16px;text-align:center}.ui.left{float:left}.ui.right{float:right}.ui .text.red{color:#d95c5c!important}.ui .text.red a{color:#d95c5c!important}.ui .text.red a:hover{color:#E67777!important}.ui .text.blue{color:#428bca!important}.ui .text.blue a{color:#15c!important}.ui .text.blue a:hover{color:#428bca!important}.ui .text.grey{color:#767676!important}.ui .text.grey a{color:#444!important}.ui .text.grey a:hover{color:#000!important}.ui .text.green{color:#6cc644!important}.ui .text.purple{color:#6e5494!important}.ui .text.left{text-align:left!important}.ui .text.right{text-align:right!important}.ui .text.small{font-size:.75em}.ui .text.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.ui .text.thin{font-weight:400}.ui .text.middle{vertical-align:middle}.ui .message{text-align:center}.ui .header>i+.content{padding-left:.75rem;vertical-align:middle}.ui .warning.header{background-color:#F9EDBE!important;border-color:#F0C36D}.ui .warning.segment{border-color:#F0C36D}.ui .info.header{background-color:#d9edf7!important;border-color:#85c5e5}.ui .info.segment{border-color:#85c5e5}.ui .normal.header{font-weight:400}.ui .avatar.image{border-radius:3px}.ui .form .fake{display:none!important}.overflow.menu .items{max-height:300px;overflow-y:auto}.overflow.menu .items .item{position:relative;cursor:pointer;display:block;border:none;height:auto;border-top:none;line-height:1em;color:rgba(0,0,0,.8);padding:.71428571em 1.14285714em!important;font-size:1rem;text-transform:none;font-weight:400;box-shadow:none;-webkit-touch-callout:none}.overflow.menu .items .item.active{font-weight:700}.overflow.menu .items .item:hover{background:rgba(0,0,0,.05);color:rgba(0,0,0,.8);z-index:13}.scrolling.menu .item.selected{font-weight:700!important}footer{margin-top:54px!important;height:40px;background-color:#fff;border-top:1px solid #d6d6d6;clear:both;width:100%;color:#888}footer .container{padding-top:10px}footer .container .fa{width:16px;text-align:center;color:#428bca}footer .container .ui.language.dropdown{z-index:10000}footer .container .links>*{border-left:1px solid #d6d6d6;padding-left:8px;margin-left:5px}footer .container .links>:first-child{border-left:none}.hide{display:none}.center{text-align:center}.img-1{width:2px!important;height:2px!important}.img-2{width:4px!important;height:4px!important}.img-3{width:6px!important;height:6px!important}.img-4{width:8px!important;height:8px!important}.img-5{width:10px!important;height:10px!important}.img-6{width:12px!important;height:12px!important}.img-7{width:14px!important;height:14px!important}.img-8{width:16px!important;height:16px!important}.img-9{width:18px!important;height:18px!important}.img-10{width:20px!important;height:20px!important}.img-11{width:22px!important;height:22px!important}.img-12{width:24px!important;height:24px!important}.img-13{width:26px!important;height:26px!important}.img-14{width:28px!important;height:28px!important}.img-15{width:30px!important;height:30px!important}.img-16{width:32px!important;height:32px!important}.mega-octicon.icon,.octicon.icon{font-family:octicons;opacity:1!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}@media only screen and (max-width:991px) and (min-width:768px){.ui.container{width:95%}}.markdown{overflow:hidden;font-family:"Helvetica Neue",Helvetica,"Segoe UI",Arial,freesans,sans-serif;font-size:16px;line-height:1.6;word-wrap:break-word}.markdown>:first-child{margin-top:0!important}.markdown>:last-child{margin-bottom:0!important}.markdown a:not([href]){color:inherit;text-decoration:none}.markdown .absent{color:#c00}.markdown .anchor{position:absolute;top:0;left:0;display:block;padding-right:6px;padding-left:30px;margin-left:-30px}.markdown .anchor:focus{outline:0}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{position:relative;margin-top:1em;margin-bottom:16px;font-weight:700;line-height:1.4}.markdown h1 .octicon-link,.markdown h2 .octicon-link,.markdown h3 .octicon-link,.markdown h4 .octicon-link,.markdown h5 .octicon-link,.markdown h6 .octicon-link{display:none;color:#000;vertical-align:middle}.markdown h1:hover .anchor,.markdown h2:hover .anchor,.markdown h3:hover .anchor,.markdown h4:hover .anchor,.markdown h5:hover .anchor,.markdown h6:hover .anchor{padding-left:8px;margin-left:-30px;text-decoration:none}.markdown h1:hover .anchor .octicon-link,.markdown h2:hover .anchor .octicon-link,.markdown h3:hover .anchor .octicon-link,.markdown h4:hover .anchor .octicon-link,.markdown h5:hover .anchor .octicon-link,.markdown h6:hover .anchor .octicon-link{display:inline-block}.markdown h1 code,.markdown h1 tt,.markdown h2 code,.markdown h2 tt,.markdown h3 code,.markdown h3 tt,.markdown h4 code,.markdown h4 tt,.markdown h5 code,.markdown h5 tt,.markdown h6 code,.markdown h6 tt{font-size:inherit}.markdown h1{padding-bottom:.3em;font-size:2.25em;line-height:1.2;border-bottom:1px solid #eee}.markdown h1 .anchor{line-height:1}.markdown h2{padding-bottom:.3em;font-size:1.75em;line-height:1.225;border-bottom:1px solid #eee}.markdown h2 .anchor{line-height:1}.markdown h3{font-size:1.5em;line-height:1.43}.markdown h3 .anchor{line-height:1.2}.markdown h4{font-size:1.25em}.markdown h4 .anchor{line-height:1.2}.markdown h5{font-size:1em}.markdown h5 .anchor{line-height:1.1}.markdown h6{font-size:1em;color:#777}.markdown h6 .anchor{line-height:1.1}.markdown blockquote,.markdown dl,.markdown ol,.markdown p,.markdown pre,.markdown table,.markdown ul{margin-top:0;margin-bottom:16px}.markdown hr{height:4px;padding:0;margin:16px 0;background-color:#e7e7e7;border:0 none}.markdown ol,.markdown ul{padding-left:2em}.markdown ol.no-list,.markdown ul.no-list{padding:0;list-style-type:none}.markdown ol ol,.markdown ol ul,.markdown ul ol,.markdown ul ul{margin-top:0;margin-bottom:0}.markdown ol ol,.markdown ul ol{list-style-type:lower-roman}.markdown li>p{margin-top:16px}.markdown dl{padding:0}.markdown dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:700}.markdown dl dd{padding:0 16px;margin-bottom:16px}.markdown blockquote{padding:0 15px;color:#777;border-left:4px solid #ddd}.markdown blockquote>:first-child{margin-top:0}.markdown blockquote>:last-child{margin-bottom:0}.markdown table{display:block;width:100%;overflow:auto;word-break:normal;word-break:keep-all}.markdown table th{font-weight:700}.markdown table td,.markdown table th{padding:6px 13px!important;border:1px solid #ddd}.markdown table tr{background-color:#fff;border-top:1px solid #ccc}.markdown table tr:nth-child(2n){background-color:#f8f8f8}.markdown img{max-width:100%;box-sizing:border-box}.markdown .emoji{max-width:none}.markdown span.frame{display:block;overflow:hidden}.markdown span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid #ddd}.markdown span.frame span img{display:block;float:left}.markdown span.frame span span{display:block;padding:5px 0 0;clear:both;color:#333}.markdown span.align-center{display:block;overflow:hidden;clear:both}.markdown span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.markdown span.align-center span img{margin:0 auto;text-align:center}.markdown span.align-right{display:block;overflow:hidden;clear:both}.markdown span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.markdown span.align-right span img{margin:0;text-align:right}.markdown span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.markdown span.float-left span{margin:13px 0 0}.markdown span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.markdown span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.markdown code,.markdown tt{padding:0;padding-top:.2em;padding-bottom:.2em;margin:0;font-size:85%;background-color:rgba(0,0,0,.04);border-radius:3px}.markdown code:after,.markdown code:before,.markdown tt:after,.markdown tt:before{letter-spacing:-.2em;content:"\00a0"}.markdown code br,.markdown tt br{display:none}.markdown del code{text-decoration:inherit}.markdown pre>code{padding:0;margin:0;font-size:100%;word-break:normal;white-space:pre;background:0 0;border:0}.markdown .highlight{margin-bottom:16px}.markdown .highlight pre,.markdown pre{padding:16px;overflow:auto;font-size:85%;line-height:1.45;background-color:#f7f7f7;border-radius:3px}.markdown .highlight pre{margin-bottom:0;word-break:normal}.markdown pre{word-wrap:normal}.markdown pre code,.markdown pre tt{display:inline;max-width:initial;padding:0;margin:0;overflow:initial;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.markdown pre code:after,.markdown pre code:before,.markdown pre tt:after,.markdown pre tt:before{content:normal}.markdown kbd{display:inline-block;padding:3px 5px;font-size:11px;line-height:10px;color:#555;vertical-align:middle;background-color:#fcfcfc;border:solid 1px #ccc;border-bottom-color:#bbb;border-radius:3px;box-shadow:inset 0 -1px 0 #bbb}.markdown .csv-data td,.markdown .csv-data th{padding:5px;overflow:hidden;font-size:12px;line-height:1;text-align:left;white-space:nowrap}.markdown .csv-data .blob-num{padding:10px 8px 9px;text-align:right;background:#fff;border:0}.markdown .csv-data tr{border-top:0}.markdown .csv-data th{font-weight:700;background:#f8f8f8;border-top:0}.pln{color:#333}@media screen{.str{color:#d14}.kwd{color:#333}.com{color:#998;font-style:italic}.typ{color:#458}.lit{color:#458}.pun{color:#333}.opn{color:#333}.clo{color:#333}.tag{color:navy}.atn{color:teal}.atv{color:#d14}.dec{color:#333}.var{color:teal}.fun{color:#900}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:700}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:700}.lit{color:#044}.clo,.opn,.pun{color:#440}.tag{color:#006;font-weight:700}.atn{color:#404}.atv{color:#060}}ol.linenums{margin-top:0;margin-bottom:0}.home{padding-bottom:80px}.home .logo{max-width:250px}.home .hero h1,.home .hero h2{font-family:'PT Sans Narrow',sans-serif}.home .hero h1{font-size:7em}.home .hero h2{font-size:4em}.home .hero .octicon{color:#d9453d;font-size:60px;margin-right:10px}.home .hero.header{font-size:24px}.home p.large{font-size:20px}.home .stackable{padding-top:30px}.home a{color:#d9453d}.install{padding-top:45px;padding-bottom:80px}.install form label{text-align:right;width:320px!important}.install form input{width:35%!important}.install form .field{text-align:left}.install form .field .help{margin-left:335px!important}.install form .field.optional .title{margin-left:38%}.install .ui .checkbox{margin-left:40%!important}.install .ui .checkbox label{width:auto!important}.form .help{color:#999;padding-top:.6em;padding-bottom:.6em;display:inline-block}.ui.attached.header{background:#f0f0f0}.ui.attached.header .right{margin-top:-5px}.ui.attached.header .right .button{padding:8px 10px;font-weight:400}.repository.new.fork form,.repository.new.migrate form,.repository.new.repo form{margin:auto;width:800px!important}.repository.new.fork form .ui.message,.repository.new.migrate form .ui.message,.repository.new.repo form .ui.message{text-align:center}.repository.new.fork form .header,.repository.new.migrate form .header,.repository.new.repo form .header{padding-left:280px!important}.repository.new.fork form .inline.field>label,.repository.new.migrate form .inline.field>label,.repository.new.repo form .inline.field>label{text-align:right;width:250px!important;word-wrap:break-word}.repository.new.fork form .help,.repository.new.migrate form .help,.repository.new.repo form .help{margin-left:265px!important}.repository.new.fork form .dropdown .dropdown.icon,.repository.new.migrate form .dropdown .dropdown.icon,.repository.new.repo form .dropdown .dropdown.icon{margin-top:-7px!important}.repository.new.fork form .dropdown .text,.repository.new.migrate form .dropdown .text,.repository.new.repo form .dropdown .text{margin-right:0!important}.repository.new.fork form .dropdown .text i,.repository.new.migrate form .dropdown .text i,.repository.new.repo form .dropdown .text i{margin-right:0!important}.repository.new.fork form .optional .title,.repository.new.migrate form .optional .title,.repository.new.repo form .optional .title{margin-left:250px!important}.repository.new.fork form input,.repository.new.fork form textarea,.repository.new.migrate form input,.repository.new.migrate form textarea,.repository.new.repo form input,.repository.new.repo form textarea{width:50%!important}.repository.new.repo .ui.form .selection.dropdown:not(.owner){width:50%!important}.repository.new.repo .ui.form #auto-init{margin-left:265px!important}.new.webhook form .help{margin-left:25px}.new.webhook .events.fields .column{padding-left:40px}.repository{padding-top:15px;padding-bottom:80px}.repository .head .column{padding-top:5px!important;padding-bottom:5px!important}.repository .head .ui.compact.menu{margin-left:1rem}.repository .head .ui.header{margin-top:0}.repository .head .mega-octicon{width:30px;font-size:30px}.repository .head .ui.huge.breadcrumb{font-weight:300;font-size:1.7rem}.repository .head .fork-flag{margin-left:38px;display:block;font-size:12px;line-height:10px;white-space:nowrap}.repository .metas .menu{max-height:300px;overflow-x:auto}.repository .metas .ui.list .hide{display:none!important}.repository .metas .ui.list .label.color{padding:0 8px;margin-right:5px}.repository .metas .ui.list a{padding-top:5px;padding-right:10px}.repository .metas .ui.list a .text{color:#444}.repository .metas .ui.list a .text:hover{color:#000}.repository .filter.menu .label.color{margin-left:15px;padding:0 8px}.repository .filter.menu .octicon{float:left;margin-left:-5px;margin-right:-7px}.repository .filter.menu .menu{max-height:300px;overflow-x:auto;right:0!important;left:auto!important}.repository .filter.menu .dropdown.item{margin:1px;padding-right:0}.repository.options input{width:50%!important;min-width:300px}.repository.options #interval{width:100px!important;min-width:100px}.repository.options .danger .item{padding:20px 15px}.repository.options .danger .ui.divider{margin:0}.repository.new.issue .comment.form .comment .avatar{width:3em}.repository.new.issue .comment.form .content{margin-left:4em}.repository.new.issue .comment.form .content .markdown{font-size:14px}.repository.new.issue .comment.form .metas{min-width:220px}.repository.new.issue .comment.form .metas .filter.menu{max-height:300px;overflow-x:auto}.repository.view.issue .title{padding-bottom:0!important}.repository.view.issue .title h1{font-weight:300;font-size:3rem;margin-bottom:5px}.repository.view.issue .title h1 .ui.input{font-size:.5em;vertical-align:top;width:50%;min-width:600px}.repository.view.issue .title h1 .ui.input input{font-size:1.5em;padding:6px 10px}.repository.view.issue .title .index{font-weight:300;color:#aaa;letter-spacing:-1px}.repository.view.issue .title .label{margin-right:10px}.repository.view.issue .title .edit-zone{margin-top:10px}.repository.view.issue .pull-desc code{color:#0166E6}.repository.view.issue .pull.tabular.menu{margin-bottom:10px}.repository.view.issue .pull.tabular.menu .octicon{margin-right:5px}.repository.view.issue .pull.tab.segment{border:none;padding:0;padding-top:10px;box-shadow:none;background-color:inherit}.repository.view.issue .pull .merge.box .avatar{margin-left:10px;margin-top:10px}.repository.view.issue .comment-list:before{display:block;content:"";position:absolute;margin-top:12px;margin-bottom:14px;top:0;bottom:0;left:96px;width:2px;background-color:#f3f3f3;z-index:-1}.repository.view.issue .comment-list .comment .avatar{width:3em}.repository.view.issue .comment-list .comment .tag{color:#767676;margin-top:3px;padding:2px 5px;font-size:12px;border:1px solid rgba(0,0,0,.1);border-radius:3px}.repository.view.issue .comment-list .comment .actions .item{float:left}.repository.view.issue .comment-list .comment .actions a.item{margin-top:6px;margin-left:10px}.repository.view.issue .comment-list .comment .content{margin-left:4em}.repository.view.issue .comment-list .comment .content .header{font-weight:400;padding:auto 15px;color:#767676;background-color:#f7f7f7;border-bottom:1px solid #eee;border-top-left-radius:3px;border-top-right-radius:3px}.repository.view.issue .comment-list .comment .content .header .text{max-width:78%;padding-top:10px;padding-bottom:10px}.repository.view.issue .comment-list .comment .content .markdown{font-size:14px}.repository.view.issue .comment-list .comment .content .no-content{color:#767676;font-style:italic}.repository.view.issue .comment-list .comment .content>.bottom.segment{background:#f3f4f5}.repository.view.issue .comment-list .comment .content>.bottom.segment .ui.image{max-height:150px}.repository.view.issue .comment-list .comment .ui.form .field:first-child{clear:none}.repository.view.issue .comment-list .comment .ui.form .tab.segment{border:none;padding:0;padding-top:10px}.repository.view.issue .comment-list .comment .ui.form textarea{height:200px}.repository.view.issue .comment-list .comment .edit.buttons{margin-top:10px}.repository.view.issue .comment-list .event{position:relative;margin:15px 0 15px 79px;padding-left:25px}.repository.view.issue .comment-list .event .octicon{width:30px;float:left;margin-left:-36px;text-align:center}.repository.view.issue .comment-list .event .octicon.octicon-circle-slash{margin-top:5px;font-size:20px;color:#bd2c00}.repository.view.issue .comment-list .event .octicon.octicon-primitive-dot{font-size:30px;color:#6cc644}.repository.view.issue .comment-list .event .octicon.octicon-bookmark{margin-top:3px;font-size:25px}.repository.view.issue .comment-list .event .detail{font-size:.9rem;margin-top:5px;margin-left:35px}.repository.view.issue .comment-list .event .detail .octicon.octicon-git-commit{margin-top:2px}.repository.view.issue .ui.segment.metas{margin-top:-3px}.repository .comment.form .ui.comments{margin-top:-12px;max-width:100%}.repository .comment.form .content .field:first-child{clear:none}.repository .comment.form .content .tab.segment{border:none;padding:0;padding-top:10px}.repository .comment.form .content textarea{height:200px}.repository .label.list{list-style:none;padding-top:15px}.repository .label.list .item{padding-top:10px;padding-bottom:10px;border-bottom:1px dashed #AAA}.repository .label.list .item a{font-size:15px;padding-top:5px;padding-right:10px;color:#666}.repository .label.list .item a:hover{color:#000}.repository .label.list .item a.open-issues{margin-right:30px}.repository .milestone.list{list-style:none;padding-top:15px}.repository .milestone.list>.item{padding-top:10px;padding-bottom:10px;border-bottom:1px dashed #AAA}.repository .milestone.list>.item>a{padding-top:5px;padding-right:10px;color:#000}.repository .milestone.list>.item>a:hover{color:#4078c0}.repository .milestone.list>.item .ui.progress{width:40%;padding:0;border:0;margin:0}.repository .milestone.list>.item .ui.progress .bar{height:20px}.repository .milestone.list>.item .meta{color:#999;padding-top:5px}.repository .milestone.list>.item .meta .issue-stats .octicon{padding-left:5px}.repository .milestone.list>.item .meta .overdue{color:red}.repository .milestone.list>.item .operate{margin-top:-15px}.repository .milestone.list>.item .operate>a{font-size:15px;padding-top:5px;padding-right:10px;color:#666}.repository .milestone.list>.item .operate>a:hover{color:#000}.repository .milestone.list>.item .content{padding-top:10px}.repository.new.milestone textarea{height:200px}.repository.new.milestone #deadline{width:150px}.repository.compare.pull .choose.branch .octicon{padding-right:10px}.repository .filter.dropdown .menu{margin-top:1px!important}.repository.commits .header .ui.right .search input{font-weight:400;padding:5px 10px}.repository.commits .header .ui.right .button{float:right;margin-left:5px;margin-top:1px}.repository .commits.table{font-size:13px}.repository .commits.table td:first-child,.repository .commits.table th:first-child{padding-left:15px}.repository .commits.table td{line-height:15px}.repository .commits.table .author{min-width:180px}.repository .commits.table .message span{max-width:500px}.repository .commits.table .date{width:120px}.repository .sha.label{font-family:Consolas,Menlo,Monaco,"Lucida Console",monospace;font-size:14px;padding:6px 10px 4px 10px;font-weight:400}.repository .diff-detail-box{margin:15px 0;line-height:30px}.repository .diff-detail-box ol{clear:both;padding-left:0;margin-top:5px;margin-bottom:28px}.repository .diff-detail-box ol li{list-style:none;padding-bottom:4px;margin-bottom:4px;border-bottom:1px dashed #DDD;padding-left:6px}.repository .diff-detail-box span.status{display:inline-block;width:12px;height:12px;margin-right:8px;vertical-align:middle}.repository .diff-detail-box span.status.modify{background-color:#f0db88}.repository .diff-detail-box span.status.add{background-color:#b4e2b4}.repository .diff-detail-box span.status.del{background-color:#e9aeae}.repository .diff-detail-box span.status.rename{background-color:#dad8ff}.repository .diff-box .count{margin-right:12px}.repository .diff-box .count .bar{background-color:#e75316;height:12px;width:40px;display:inline-block;margin:2px 4px 0 4px;vertical-align:text-top}.repository .diff-box .count .bar .add{background-color:#77c64a;height:12px}.repository .diff-box .file{color:#888}.repository .diff-file-box .header{border-bottom:1px solid #d4d4d5!important}.repository .diff-file-box .file-body.file-code .lines-num{text-align:right;color:#999;background:#fafafa;width:1%}.repository .diff-file-box .file-body.file-code .lines-num-old{border-right:1px solid #DDD}.repository .diff-file-box .code-diff{font-size:13px}.repository .diff-file-box .code-diff td{padding:0;border-top:none}.repository .diff-file-box .code-diff pre{margin:0}.repository .diff-file-box .code-diff .lines-num{border-right:1px solid #d4d4d5;padding:0 5px}.repository .diff-file-box .code-diff tbody tr.tag-code pre,.repository .diff-file-box .code-diff tbody tr.tag-code td{background-color:#E0E0E0!important;border-color:#ADADAD!important}.repository .diff-file-box .code-diff tbody tr.del-code pre,.repository .diff-file-box .code-diff tbody tr.del-code td{background-color:#ffe2dd!important;border-color:#e9aeae!important}.repository .diff-file-box .code-diff tbody tr.add-code pre,.repository .diff-file-box .code-diff tbody tr.add-code td{background-color:#d1ffd6!important;border-color:#b4e2b4!important}.repository .diff-file-box .code-diff tbody tr:hover td{background-color:#FFF8D2!important;border-color:#F0DB88!important}.repository .diff-file-box .code-diff tbody tr:hover pre{background-color:transparent!important}.repository .code-view{overflow:auto;overflow-x:auto;overflow-y:hidden}.issue.list{list-style:none;padding-top:15px}.issue.list>.item{padding-top:15px;padding-bottom:10px;border-bottom:1px dashed #AAA}.issue.list>.item .title{color:#444;font-size:15px;font-weight:700;margin:0 6px}.issue.list>.item .title:hover{color:#000}.issue.list>.item .comment{padding-right:10px;color:#666}.issue.list>.item .desc{padding-top:5px;color:#999}.issue.list>.item .desc a.milestone{padding-left:5px;color:#999!important}.issue.list>.item .desc a.milestone:hover{color:#000!important}.issue.list>.item .desc .assignee{margin-top:-5px;margin-right:5px}.page.buttons{padding-top:15px}.ui.comments .dropzone{width:100%;margin-bottom:10px;border:2px dashed #0087F7;box-shadow:none!important}.ui.comments .dropzone .dz-error-message{top:140px}.settings .content{margin-top:2px}.settings .content .header,.settings .content .segment{box-shadow:0 1px 2px 0 rgba(34,36,38,.15)}.settings .key.list .item:not(:first-child){border-top:1px solid #eaeaea}.settings .key.list .ssh-key-state-indicator{float:left;color:gray;padding-left:10px;padding-top:10px}.settings .key.list .ssh-key-state-indicator.active{color:#6cc644}.settings .key.list .meta{padding-top:5px}.settings .key.list .print{color:#767676}.settings .key.list .activity{color:#666}.settings .hook.list>.item:not(:first-child){border-top:1px solid #eaeaea}.settings .hook.list .item{padding:10px 20px}.settings .hook.list .item .fa,.settings .hook.list .item .octicon{width:20px;text-align:center}.settings .hook.history.list .item{padding-left:13px}.settings .hook.history.list .item .meta .ui.right{margin-top:5px}.settings .hook.history.list .item .meta .ui.right .time{font-size:12px}.settings .hook.history.list .item .info{margin-top:10px}.settings .hook.history.list .item .info .tabular.menu .item{font-weight:500}.settings .hook.history.list .item .info .tab.segment{border:none;padding:0;padding-top:10px;box-shadow:none}.settings .hook.history.list .item .info .tab.segment>*{color:#666}.settings .hook.history.list .item .info .tab.segment pre{word-wrap:break-word}.settings .hook.history.list .item .info .tab.segment pre .hljs{padding:0;background-color:inherit}.ui.vertical.menu .header.item{font-size:1.1em;background:#f0f0f0}.edit-label.modal .form .column,.new-label.segment .form .column{padding-right:0}.edit-label.modal .form .buttons,.new-label.segment .form .buttons{margin-left:auto;padding-top:15px}.edit-label.modal .form .color.picker.column,.new-label.segment .form .color.picker.column{width:auto}.edit-label.modal .form .color.picker.column .color-picker,.new-label.segment .form .color.picker.column .color-picker{height:35px;width:auto;padding-left:30px}.edit-label.modal .form .minicolors-swatch.minicolors-sprite,.new-label.segment .form .minicolors-swatch.minicolors-sprite{top:10px;left:10px;width:15px;height:15px}.edit-label.modal .form .precolors,.new-label.segment .form .precolors{padding-left:0;padding-right:0;margin:3px 10px auto 10px;width:120px}.edit-label.modal .form .precolors .color,.new-label.segment .form .precolors .color{float:left;width:15px;height:15px}#delete-repo-modal .ui.message,#transfer-repo-modal .ui.message{width:100%!important}.organization{padding-top:15px;padding-bottom:80px}.organization .head .ui.header .text{vertical-align:middle;font-size:1.6rem;margin-left:15px}.organization .head .ui.header .ui.right{margin-top:5px}.user{padding-top:15px;padding-bottom:80px}.user.settings .key.list .item.ui.grid{margin-top:15px}.dashboard{padding-top:15px;padding-bottom:80px}.dashboard.issues .context.user.menu{min-width:200px}.dashboard.issues .context.user.menu .ui.header{font-size:1rem;text-transform:none}.dashboard.issues .filter.menu .item{text-align:left}.dashboard.issues .filter.menu .item .floating.label{top:7px;left:95%}.dashboard.issues .filter.menu .item.active{background-color:#4183c4;color:#FFF}.dashboard.issues .filter.menu .item .text{width:90%}.dashboard.issues .ui.right .head.menu{margin-top:-5px}.dashboard.issues .ui.right .head.menu .item.active{color:#d9453d}.admin{padding-top:15px;padding-bottom:80px}.admin .table.segment{padding:0;font-size:13px}.admin .table.segment th{padding-top:5px;padding-bottom:5px}.admin .table.segment td:first-child,.admin .table.segment th:first-child{padding-left:15px}.explore{padding-top:15px;padding-bottom:80px}.explore.repositories .ui.repository.list .item{border-top:1px solid #eee;padding-top:25px;padding-bottom:25px}.explore.repositories .ui.repository.list .item .ui.header{font-size:1.5rem;padding-bottom:10px}.explore.repositories .ui.repository.list .item .ui.header .metas{color:#888;font-size:13px;font-weight:400}.explore.repositories .ui.repository.list .item .ui.header .metas span:not(:last-child){margin-right:5px}.explore.repositories .ui.repository.list .item .time{font-size:12px;color:grey}
\ No newline at end of file
diff --git a/public/img/emoji/+1.png b/public/img/emoji/+1.png
new file mode 100755
index 0000000000..81786c1d8f
Binary files /dev/null and b/public/img/emoji/+1.png differ
diff --git a/public/img/emoji/-1.png b/public/img/emoji/-1.png
new file mode 100755
index 0000000000..41c6b825d6
Binary files /dev/null and b/public/img/emoji/-1.png differ
diff --git a/public/img/emoji/100.png b/public/img/emoji/100.png
new file mode 100755
index 0000000000..ca3bb9bcf6
Binary files /dev/null and b/public/img/emoji/100.png differ
diff --git a/public/img/emoji/1234.png b/public/img/emoji/1234.png
new file mode 100755
index 0000000000..c47c2e1f9f
Binary files /dev/null and b/public/img/emoji/1234.png differ
diff --git a/public/img/emoji/8ball.png b/public/img/emoji/8ball.png
new file mode 100755
index 0000000000..c2c710d450
Binary files /dev/null and b/public/img/emoji/8ball.png differ
diff --git a/public/img/emoji/a.png b/public/img/emoji/a.png
new file mode 100755
index 0000000000..09ff6d6f18
Binary files /dev/null and b/public/img/emoji/a.png differ
diff --git a/public/img/emoji/ab.png b/public/img/emoji/ab.png
new file mode 100755
index 0000000000..2a52220476
Binary files /dev/null and b/public/img/emoji/ab.png differ
diff --git a/public/img/emoji/abc.png b/public/img/emoji/abc.png
new file mode 100755
index 0000000000..505d40a155
Binary files /dev/null and b/public/img/emoji/abc.png differ
diff --git a/public/img/emoji/abcd.png b/public/img/emoji/abcd.png
new file mode 100755
index 0000000000..5218470b63
Binary files /dev/null and b/public/img/emoji/abcd.png differ
diff --git a/public/img/emoji/accept.png b/public/img/emoji/accept.png
new file mode 100755
index 0000000000..2d20090318
Binary files /dev/null and b/public/img/emoji/accept.png differ
diff --git a/public/img/emoji/aerial_tramway.png b/public/img/emoji/aerial_tramway.png
new file mode 100755
index 0000000000..38f6dfe233
Binary files /dev/null and b/public/img/emoji/aerial_tramway.png differ
diff --git a/public/img/emoji/airplane.png b/public/img/emoji/airplane.png
new file mode 100755
index 0000000000..8407cb6757
Binary files /dev/null and b/public/img/emoji/airplane.png differ
diff --git a/public/img/emoji/alarm_clock.png b/public/img/emoji/alarm_clock.png
new file mode 100755
index 0000000000..86ca8c8ed4
Binary files /dev/null and b/public/img/emoji/alarm_clock.png differ
diff --git a/public/img/emoji/alien.png b/public/img/emoji/alien.png
new file mode 100755
index 0000000000..416de47be4
Binary files /dev/null and b/public/img/emoji/alien.png differ
diff --git a/public/img/emoji/ambulance.png b/public/img/emoji/ambulance.png
new file mode 100755
index 0000000000..b740f45dba
Binary files /dev/null and b/public/img/emoji/ambulance.png differ
diff --git a/public/img/emoji/anchor.png b/public/img/emoji/anchor.png
new file mode 100755
index 0000000000..0c5192e647
Binary files /dev/null and b/public/img/emoji/anchor.png differ
diff --git a/public/img/emoji/angel.png b/public/img/emoji/angel.png
new file mode 100755
index 0000000000..da52c310c6
Binary files /dev/null and b/public/img/emoji/angel.png differ
diff --git a/public/img/emoji/anger.png b/public/img/emoji/anger.png
new file mode 100755
index 0000000000..6fb4dca185
Binary files /dev/null and b/public/img/emoji/anger.png differ
diff --git a/public/img/emoji/angry.png b/public/img/emoji/angry.png
new file mode 100755
index 0000000000..f95bfa897e
Binary files /dev/null and b/public/img/emoji/angry.png differ
diff --git a/public/img/emoji/anguished.png b/public/img/emoji/anguished.png
new file mode 100755
index 0000000000..c62594726d
Binary files /dev/null and b/public/img/emoji/anguished.png differ
diff --git a/public/img/emoji/ant.png b/public/img/emoji/ant.png
new file mode 100755
index 0000000000..b92d1cc14b
Binary files /dev/null and b/public/img/emoji/ant.png differ
diff --git a/public/img/emoji/apple.png b/public/img/emoji/apple.png
new file mode 100755
index 0000000000..08aa17b951
Binary files /dev/null and b/public/img/emoji/apple.png differ
diff --git a/public/img/emoji/aquarius.png b/public/img/emoji/aquarius.png
new file mode 100755
index 0000000000..cbff66edcf
Binary files /dev/null and b/public/img/emoji/aquarius.png differ
diff --git a/public/img/emoji/aries.png b/public/img/emoji/aries.png
new file mode 100755
index 0000000000..aab5e8809f
Binary files /dev/null and b/public/img/emoji/aries.png differ
diff --git a/public/img/emoji/arrow_backward.png b/public/img/emoji/arrow_backward.png
new file mode 100755
index 0000000000..088621834f
Binary files /dev/null and b/public/img/emoji/arrow_backward.png differ
diff --git a/public/img/emoji/arrow_double_down.png b/public/img/emoji/arrow_double_down.png
new file mode 100755
index 0000000000..2ecbebcda1
Binary files /dev/null and b/public/img/emoji/arrow_double_down.png differ
diff --git a/public/img/emoji/arrow_double_up.png b/public/img/emoji/arrow_double_up.png
new file mode 100755
index 0000000000..2bd6659b14
Binary files /dev/null and b/public/img/emoji/arrow_double_up.png differ
diff --git a/public/img/emoji/arrow_down.png b/public/img/emoji/arrow_down.png
new file mode 100755
index 0000000000..e6702f02ba
Binary files /dev/null and b/public/img/emoji/arrow_down.png differ
diff --git a/public/img/emoji/arrow_down_small.png b/public/img/emoji/arrow_down_small.png
new file mode 100755
index 0000000000..22d383a920
Binary files /dev/null and b/public/img/emoji/arrow_down_small.png differ
diff --git a/public/img/emoji/arrow_forward.png b/public/img/emoji/arrow_forward.png
new file mode 100755
index 0000000000..fbfe711b64
Binary files /dev/null and b/public/img/emoji/arrow_forward.png differ
diff --git a/public/img/emoji/arrow_heading_down.png b/public/img/emoji/arrow_heading_down.png
new file mode 100755
index 0000000000..56dd3b9d3c
Binary files /dev/null and b/public/img/emoji/arrow_heading_down.png differ
diff --git a/public/img/emoji/arrow_heading_up.png b/public/img/emoji/arrow_heading_up.png
new file mode 100755
index 0000000000..c8f670a1ef
Binary files /dev/null and b/public/img/emoji/arrow_heading_up.png differ
diff --git a/public/img/emoji/arrow_left.png b/public/img/emoji/arrow_left.png
new file mode 100755
index 0000000000..d64ac619c9
Binary files /dev/null and b/public/img/emoji/arrow_left.png differ
diff --git a/public/img/emoji/arrow_lower_left.png b/public/img/emoji/arrow_lower_left.png
new file mode 100755
index 0000000000..55fb03c412
Binary files /dev/null and b/public/img/emoji/arrow_lower_left.png differ
diff --git a/public/img/emoji/arrow_lower_right.png b/public/img/emoji/arrow_lower_right.png
new file mode 100755
index 0000000000..da8fb8294d
Binary files /dev/null and b/public/img/emoji/arrow_lower_right.png differ
diff --git a/public/img/emoji/arrow_right.png b/public/img/emoji/arrow_right.png
new file mode 100755
index 0000000000..6d483b5144
Binary files /dev/null and b/public/img/emoji/arrow_right.png differ
diff --git a/public/img/emoji/arrow_right_hook.png b/public/img/emoji/arrow_right_hook.png
new file mode 100755
index 0000000000..8b4ea6e172
Binary files /dev/null and b/public/img/emoji/arrow_right_hook.png differ
diff --git a/public/img/emoji/arrow_up.png b/public/img/emoji/arrow_up.png
new file mode 100755
index 0000000000..b5b0688d3c
Binary files /dev/null and b/public/img/emoji/arrow_up.png differ
diff --git a/public/img/emoji/arrow_up_down.png b/public/img/emoji/arrow_up_down.png
new file mode 100755
index 0000000000..be423de780
Binary files /dev/null and b/public/img/emoji/arrow_up_down.png differ
diff --git a/public/img/emoji/arrow_up_small.png b/public/img/emoji/arrow_up_small.png
new file mode 100755
index 0000000000..3f40bfb89b
Binary files /dev/null and b/public/img/emoji/arrow_up_small.png differ
diff --git a/public/img/emoji/arrow_upper_left.png b/public/img/emoji/arrow_upper_left.png
new file mode 100755
index 0000000000..2950ae2f98
Binary files /dev/null and b/public/img/emoji/arrow_upper_left.png differ
diff --git a/public/img/emoji/arrow_upper_right.png b/public/img/emoji/arrow_upper_right.png
new file mode 100755
index 0000000000..e23790ba18
Binary files /dev/null and b/public/img/emoji/arrow_upper_right.png differ
diff --git a/public/img/emoji/arrows_clockwise.png b/public/img/emoji/arrows_clockwise.png
new file mode 100755
index 0000000000..5f84d7e72b
Binary files /dev/null and b/public/img/emoji/arrows_clockwise.png differ
diff --git a/public/img/emoji/arrows_counterclockwise.png b/public/img/emoji/arrows_counterclockwise.png
new file mode 100755
index 0000000000..3e06f5b3ce
Binary files /dev/null and b/public/img/emoji/arrows_counterclockwise.png differ
diff --git a/public/img/emoji/art.png b/public/img/emoji/art.png
new file mode 100755
index 0000000000..d45212b034
Binary files /dev/null and b/public/img/emoji/art.png differ
diff --git a/public/img/emoji/articulated_lorry.png b/public/img/emoji/articulated_lorry.png
new file mode 100755
index 0000000000..81ec1f9174
Binary files /dev/null and b/public/img/emoji/articulated_lorry.png differ
diff --git a/public/img/emoji/astonished.png b/public/img/emoji/astonished.png
new file mode 100755
index 0000000000..858a83484a
Binary files /dev/null and b/public/img/emoji/astonished.png differ
diff --git a/public/img/emoji/atm.png b/public/img/emoji/atm.png
new file mode 100755
index 0000000000..c2846e7921
Binary files /dev/null and b/public/img/emoji/atm.png differ
diff --git a/public/img/emoji/b.png b/public/img/emoji/b.png
new file mode 100755
index 0000000000..8742b3d2e3
Binary files /dev/null and b/public/img/emoji/b.png differ
diff --git a/public/img/emoji/baby.png b/public/img/emoji/baby.png
new file mode 100755
index 0000000000..3b29da40b6
Binary files /dev/null and b/public/img/emoji/baby.png differ
diff --git a/public/img/emoji/baby_bottle.png b/public/img/emoji/baby_bottle.png
new file mode 100755
index 0000000000..1b2cfe5e30
Binary files /dev/null and b/public/img/emoji/baby_bottle.png differ
diff --git a/public/img/emoji/baby_chick.png b/public/img/emoji/baby_chick.png
new file mode 100755
index 0000000000..9be8d29300
Binary files /dev/null and b/public/img/emoji/baby_chick.png differ
diff --git a/public/img/emoji/baby_symbol.png b/public/img/emoji/baby_symbol.png
new file mode 100755
index 0000000000..2e58725cf5
Binary files /dev/null and b/public/img/emoji/baby_symbol.png differ
diff --git a/public/img/emoji/back.png b/public/img/emoji/back.png
new file mode 100755
index 0000000000..0cde628762
Binary files /dev/null and b/public/img/emoji/back.png differ
diff --git a/public/img/emoji/baggage_claim.png b/public/img/emoji/baggage_claim.png
new file mode 100755
index 0000000000..59ae044a45
Binary files /dev/null and b/public/img/emoji/baggage_claim.png differ
diff --git a/public/img/emoji/balloon.png b/public/img/emoji/balloon.png
new file mode 100755
index 0000000000..0344897025
Binary files /dev/null and b/public/img/emoji/balloon.png differ
diff --git a/public/img/emoji/ballot_box_with_check.png b/public/img/emoji/ballot_box_with_check.png
new file mode 100755
index 0000000000..f07a466c77
Binary files /dev/null and b/public/img/emoji/ballot_box_with_check.png differ
diff --git a/public/img/emoji/bamboo.png b/public/img/emoji/bamboo.png
new file mode 100755
index 0000000000..fc858d0fc2
Binary files /dev/null and b/public/img/emoji/bamboo.png differ
diff --git a/public/img/emoji/banana.png b/public/img/emoji/banana.png
new file mode 100755
index 0000000000..a0563afb95
Binary files /dev/null and b/public/img/emoji/banana.png differ
diff --git a/public/img/emoji/bangbang.png b/public/img/emoji/bangbang.png
new file mode 100755
index 0000000000..7270f0afe6
Binary files /dev/null and b/public/img/emoji/bangbang.png differ
diff --git a/public/img/emoji/bank.png b/public/img/emoji/bank.png
new file mode 100755
index 0000000000..1faa8777e4
Binary files /dev/null and b/public/img/emoji/bank.png differ
diff --git a/public/img/emoji/bar_chart.png b/public/img/emoji/bar_chart.png
new file mode 100755
index 0000000000..09d7301c4d
Binary files /dev/null and b/public/img/emoji/bar_chart.png differ
diff --git a/public/img/emoji/barber.png b/public/img/emoji/barber.png
new file mode 100755
index 0000000000..a10cb23228
Binary files /dev/null and b/public/img/emoji/barber.png differ
diff --git a/public/img/emoji/baseball.png b/public/img/emoji/baseball.png
new file mode 100755
index 0000000000..da004e2ead
Binary files /dev/null and b/public/img/emoji/baseball.png differ
diff --git a/public/img/emoji/basketball.png b/public/img/emoji/basketball.png
new file mode 100755
index 0000000000..ef694bec4c
Binary files /dev/null and b/public/img/emoji/basketball.png differ
diff --git a/public/img/emoji/bath.png b/public/img/emoji/bath.png
new file mode 100755
index 0000000000..8f75d1d249
Binary files /dev/null and b/public/img/emoji/bath.png differ
diff --git a/public/img/emoji/bathtub.png b/public/img/emoji/bathtub.png
new file mode 100755
index 0000000000..1c3f844ab2
Binary files /dev/null and b/public/img/emoji/bathtub.png differ
diff --git a/public/img/emoji/battery.png b/public/img/emoji/battery.png
new file mode 100755
index 0000000000..aa7eedce4b
Binary files /dev/null and b/public/img/emoji/battery.png differ
diff --git a/public/img/emoji/bear.png b/public/img/emoji/bear.png
new file mode 100755
index 0000000000..f5afe920e8
Binary files /dev/null and b/public/img/emoji/bear.png differ
diff --git a/public/img/emoji/bee.png b/public/img/emoji/bee.png
new file mode 100755
index 0000000000..f53733953a
Binary files /dev/null and b/public/img/emoji/bee.png differ
diff --git a/public/img/emoji/beer.png b/public/img/emoji/beer.png
new file mode 100755
index 0000000000..cd78bed744
Binary files /dev/null and b/public/img/emoji/beer.png differ
diff --git a/public/img/emoji/beers.png b/public/img/emoji/beers.png
new file mode 100755
index 0000000000..cc5e4ab5aa
Binary files /dev/null and b/public/img/emoji/beers.png differ
diff --git a/public/img/emoji/beetle.png b/public/img/emoji/beetle.png
new file mode 100755
index 0000000000..222577ca7e
Binary files /dev/null and b/public/img/emoji/beetle.png differ
diff --git a/public/img/emoji/beginner.png b/public/img/emoji/beginner.png
new file mode 100755
index 0000000000..1f022d175d
Binary files /dev/null and b/public/img/emoji/beginner.png differ
diff --git a/public/img/emoji/bell.png b/public/img/emoji/bell.png
new file mode 100755
index 0000000000..69acceb286
Binary files /dev/null and b/public/img/emoji/bell.png differ
diff --git a/public/img/emoji/bento.png b/public/img/emoji/bento.png
new file mode 100755
index 0000000000..d6801124a4
Binary files /dev/null and b/public/img/emoji/bento.png differ
diff --git a/public/img/emoji/bicyclist.png b/public/img/emoji/bicyclist.png
new file mode 100755
index 0000000000..cbbd7c3863
Binary files /dev/null and b/public/img/emoji/bicyclist.png differ
diff --git a/public/img/emoji/bike.png b/public/img/emoji/bike.png
new file mode 100755
index 0000000000..6573860272
Binary files /dev/null and b/public/img/emoji/bike.png differ
diff --git a/public/img/emoji/bikini.png b/public/img/emoji/bikini.png
new file mode 100755
index 0000000000..4ff63b40f8
Binary files /dev/null and b/public/img/emoji/bikini.png differ
diff --git a/public/img/emoji/bird.png b/public/img/emoji/bird.png
new file mode 100755
index 0000000000..e6be8c0278
Binary files /dev/null and b/public/img/emoji/bird.png differ
diff --git a/public/img/emoji/birthday.png b/public/img/emoji/birthday.png
new file mode 100755
index 0000000000..36e8edcbec
Binary files /dev/null and b/public/img/emoji/birthday.png differ
diff --git a/public/img/emoji/black_circle.png b/public/img/emoji/black_circle.png
new file mode 100755
index 0000000000..e46f9df615
Binary files /dev/null and b/public/img/emoji/black_circle.png differ
diff --git a/public/img/emoji/black_joker.png b/public/img/emoji/black_joker.png
new file mode 100755
index 0000000000..4c78f3614d
Binary files /dev/null and b/public/img/emoji/black_joker.png differ
diff --git a/public/img/emoji/black_medium_small_square.png b/public/img/emoji/black_medium_small_square.png
new file mode 100755
index 0000000000..25bfe9c453
Binary files /dev/null and b/public/img/emoji/black_medium_small_square.png differ
diff --git a/public/img/emoji/black_medium_square.png b/public/img/emoji/black_medium_square.png
new file mode 100755
index 0000000000..204cce12c2
Binary files /dev/null and b/public/img/emoji/black_medium_square.png differ
diff --git a/public/img/emoji/black_nib.png b/public/img/emoji/black_nib.png
new file mode 100755
index 0000000000..29f6994c11
Binary files /dev/null and b/public/img/emoji/black_nib.png differ
diff --git a/public/img/emoji/black_small_square.png b/public/img/emoji/black_small_square.png
new file mode 100755
index 0000000000..a247751ece
Binary files /dev/null and b/public/img/emoji/black_small_square.png differ
diff --git a/public/img/emoji/black_square.png b/public/img/emoji/black_square.png
new file mode 100755
index 0000000000..71da10de81
Binary files /dev/null and b/public/img/emoji/black_square.png differ
diff --git a/public/img/emoji/black_square_button.png b/public/img/emoji/black_square_button.png
new file mode 100755
index 0000000000..f2597e9566
Binary files /dev/null and b/public/img/emoji/black_square_button.png differ
diff --git a/public/img/emoji/blossom.png b/public/img/emoji/blossom.png
new file mode 100755
index 0000000000..55a97353b4
Binary files /dev/null and b/public/img/emoji/blossom.png differ
diff --git a/public/img/emoji/blowfish.png b/public/img/emoji/blowfish.png
new file mode 100755
index 0000000000..d3ad465851
Binary files /dev/null and b/public/img/emoji/blowfish.png differ
diff --git a/public/img/emoji/blue_book.png b/public/img/emoji/blue_book.png
new file mode 100755
index 0000000000..e2b9e8c797
Binary files /dev/null and b/public/img/emoji/blue_book.png differ
diff --git a/public/img/emoji/blue_car.png b/public/img/emoji/blue_car.png
new file mode 100755
index 0000000000..978291e087
Binary files /dev/null and b/public/img/emoji/blue_car.png differ
diff --git a/public/img/emoji/blue_heart.png b/public/img/emoji/blue_heart.png
new file mode 100755
index 0000000000..baa29b31bc
Binary files /dev/null and b/public/img/emoji/blue_heart.png differ
diff --git a/public/img/emoji/blush.png b/public/img/emoji/blush.png
new file mode 100755
index 0000000000..3a95eb61a3
Binary files /dev/null and b/public/img/emoji/blush.png differ
diff --git a/public/img/emoji/boar.png b/public/img/emoji/boar.png
new file mode 100755
index 0000000000..8196ad4a14
Binary files /dev/null and b/public/img/emoji/boar.png differ
diff --git a/public/img/emoji/boat.png b/public/img/emoji/boat.png
new file mode 100755
index 0000000000..ff656dc62b
Binary files /dev/null and b/public/img/emoji/boat.png differ
diff --git a/public/img/emoji/bomb.png b/public/img/emoji/bomb.png
new file mode 100755
index 0000000000..3289787dcf
Binary files /dev/null and b/public/img/emoji/bomb.png differ
diff --git a/public/img/emoji/book.png b/public/img/emoji/book.png
new file mode 100755
index 0000000000..8b698415c3
Binary files /dev/null and b/public/img/emoji/book.png differ
diff --git a/public/img/emoji/bookmark.png b/public/img/emoji/bookmark.png
new file mode 100755
index 0000000000..6fc4ed9023
Binary files /dev/null and b/public/img/emoji/bookmark.png differ
diff --git a/public/img/emoji/bookmark_tabs.png b/public/img/emoji/bookmark_tabs.png
new file mode 100755
index 0000000000..83782ff0c6
Binary files /dev/null and b/public/img/emoji/bookmark_tabs.png differ
diff --git a/public/img/emoji/books.png b/public/img/emoji/books.png
new file mode 100755
index 0000000000..dca06a1ad9
Binary files /dev/null and b/public/img/emoji/books.png differ
diff --git a/public/img/emoji/boom.png b/public/img/emoji/boom.png
new file mode 100755
index 0000000000..9d5bd04014
Binary files /dev/null and b/public/img/emoji/boom.png differ
diff --git a/public/img/emoji/boot.png b/public/img/emoji/boot.png
new file mode 100755
index 0000000000..58d0fdbcd0
Binary files /dev/null and b/public/img/emoji/boot.png differ
diff --git a/public/img/emoji/bouquet.png b/public/img/emoji/bouquet.png
new file mode 100755
index 0000000000..ce637832e1
Binary files /dev/null and b/public/img/emoji/bouquet.png differ
diff --git a/public/img/emoji/bow.png b/public/img/emoji/bow.png
new file mode 100755
index 0000000000..024cb61049
Binary files /dev/null and b/public/img/emoji/bow.png differ
diff --git a/public/img/emoji/bowling.png b/public/img/emoji/bowling.png
new file mode 100755
index 0000000000..13d8ece2ee
Binary files /dev/null and b/public/img/emoji/bowling.png differ
diff --git a/public/img/emoji/bowtie.png b/public/img/emoji/bowtie.png
new file mode 100755
index 0000000000..28ff0c787d
Binary files /dev/null and b/public/img/emoji/bowtie.png differ
diff --git a/public/img/emoji/boy.png b/public/img/emoji/boy.png
new file mode 100755
index 0000000000..f79f1f2980
Binary files /dev/null and b/public/img/emoji/boy.png differ
diff --git a/public/img/emoji/bread.png b/public/img/emoji/bread.png
new file mode 100755
index 0000000000..7e7c63753d
Binary files /dev/null and b/public/img/emoji/bread.png differ
diff --git a/public/img/emoji/bride_with_veil.png b/public/img/emoji/bride_with_veil.png
new file mode 100755
index 0000000000..dd0b0cfdad
Binary files /dev/null and b/public/img/emoji/bride_with_veil.png differ
diff --git a/public/img/emoji/bridge_at_night.png b/public/img/emoji/bridge_at_night.png
new file mode 100755
index 0000000000..495b06c3df
Binary files /dev/null and b/public/img/emoji/bridge_at_night.png differ
diff --git a/public/img/emoji/briefcase.png b/public/img/emoji/briefcase.png
new file mode 100755
index 0000000000..46e82b0010
Binary files /dev/null and b/public/img/emoji/briefcase.png differ
diff --git a/public/img/emoji/broken_heart.png b/public/img/emoji/broken_heart.png
new file mode 100755
index 0000000000..a1bc850ecb
Binary files /dev/null and b/public/img/emoji/broken_heart.png differ
diff --git a/public/img/emoji/bug.png b/public/img/emoji/bug.png
new file mode 100755
index 0000000000..c2eaf7a708
Binary files /dev/null and b/public/img/emoji/bug.png differ
diff --git a/public/img/emoji/bulb.png b/public/img/emoji/bulb.png
new file mode 100755
index 0000000000..23afca1c73
Binary files /dev/null and b/public/img/emoji/bulb.png differ
diff --git a/public/img/emoji/bullettrain_front.png b/public/img/emoji/bullettrain_front.png
new file mode 100755
index 0000000000..16651acff8
Binary files /dev/null and b/public/img/emoji/bullettrain_front.png differ
diff --git a/public/img/emoji/bullettrain_side.png b/public/img/emoji/bullettrain_side.png
new file mode 100755
index 0000000000..8eca368458
Binary files /dev/null and b/public/img/emoji/bullettrain_side.png differ
diff --git a/public/img/emoji/bus.png b/public/img/emoji/bus.png
new file mode 100755
index 0000000000..823aa39e49
Binary files /dev/null and b/public/img/emoji/bus.png differ
diff --git a/public/img/emoji/busstop.png b/public/img/emoji/busstop.png
new file mode 100755
index 0000000000..94894847b5
Binary files /dev/null and b/public/img/emoji/busstop.png differ
diff --git a/public/img/emoji/bust_in_silhouette.png b/public/img/emoji/bust_in_silhouette.png
new file mode 100755
index 0000000000..dd7defe286
Binary files /dev/null and b/public/img/emoji/bust_in_silhouette.png differ
diff --git a/public/img/emoji/busts_in_silhouette.png b/public/img/emoji/busts_in_silhouette.png
new file mode 100755
index 0000000000..1f3aabcff6
Binary files /dev/null and b/public/img/emoji/busts_in_silhouette.png differ
diff --git a/public/img/emoji/cactus.png b/public/img/emoji/cactus.png
new file mode 100755
index 0000000000..5a2c3cc725
Binary files /dev/null and b/public/img/emoji/cactus.png differ
diff --git a/public/img/emoji/cake.png b/public/img/emoji/cake.png
new file mode 100755
index 0000000000..efeb9b4b21
Binary files /dev/null and b/public/img/emoji/cake.png differ
diff --git a/public/img/emoji/calendar.png b/public/img/emoji/calendar.png
new file mode 100755
index 0000000000..900b868bb9
Binary files /dev/null and b/public/img/emoji/calendar.png differ
diff --git a/public/img/emoji/calling.png b/public/img/emoji/calling.png
new file mode 100755
index 0000000000..837897f261
Binary files /dev/null and b/public/img/emoji/calling.png differ
diff --git a/public/img/emoji/camel.png b/public/img/emoji/camel.png
new file mode 100755
index 0000000000..496c186ae6
Binary files /dev/null and b/public/img/emoji/camel.png differ
diff --git a/public/img/emoji/camera.png b/public/img/emoji/camera.png
new file mode 100755
index 0000000000..397d03b393
Binary files /dev/null and b/public/img/emoji/camera.png differ
diff --git a/public/img/emoji/cancer.png b/public/img/emoji/cancer.png
new file mode 100755
index 0000000000..ea43a4a2a0
Binary files /dev/null and b/public/img/emoji/cancer.png differ
diff --git a/public/img/emoji/candy.png b/public/img/emoji/candy.png
new file mode 100755
index 0000000000..33722f236e
Binary files /dev/null and b/public/img/emoji/candy.png differ
diff --git a/public/img/emoji/capital_abcd.png b/public/img/emoji/capital_abcd.png
new file mode 100755
index 0000000000..ffc0cba4b4
Binary files /dev/null and b/public/img/emoji/capital_abcd.png differ
diff --git a/public/img/emoji/capricorn.png b/public/img/emoji/capricorn.png
new file mode 100755
index 0000000000..f2044e7893
Binary files /dev/null and b/public/img/emoji/capricorn.png differ
diff --git a/public/img/emoji/car.png b/public/img/emoji/car.png
new file mode 100755
index 0000000000..d70a2f0626
Binary files /dev/null and b/public/img/emoji/car.png differ
diff --git a/public/img/emoji/card_index.png b/public/img/emoji/card_index.png
new file mode 100755
index 0000000000..374e94e9e8
Binary files /dev/null and b/public/img/emoji/card_index.png differ
diff --git a/public/img/emoji/carousel_horse.png b/public/img/emoji/carousel_horse.png
new file mode 100755
index 0000000000..765d2c0a8b
Binary files /dev/null and b/public/img/emoji/carousel_horse.png differ
diff --git a/public/img/emoji/cat.png b/public/img/emoji/cat.png
new file mode 100755
index 0000000000..09b9ef79a7
Binary files /dev/null and b/public/img/emoji/cat.png differ
diff --git a/public/img/emoji/cat2.png b/public/img/emoji/cat2.png
new file mode 100755
index 0000000000..6dbc4c71e4
Binary files /dev/null and b/public/img/emoji/cat2.png differ
diff --git a/public/img/emoji/cd.png b/public/img/emoji/cd.png
new file mode 100755
index 0000000000..baff835c48
Binary files /dev/null and b/public/img/emoji/cd.png differ
diff --git a/public/img/emoji/chart.png b/public/img/emoji/chart.png
new file mode 100755
index 0000000000..ac2c4bb093
Binary files /dev/null and b/public/img/emoji/chart.png differ
diff --git a/public/img/emoji/chart_with_downwards_trend.png b/public/img/emoji/chart_with_downwards_trend.png
new file mode 100755
index 0000000000..cb0d2a113c
Binary files /dev/null and b/public/img/emoji/chart_with_downwards_trend.png differ
diff --git a/public/img/emoji/chart_with_upwards_trend.png b/public/img/emoji/chart_with_upwards_trend.png
new file mode 100755
index 0000000000..7c66745c98
Binary files /dev/null and b/public/img/emoji/chart_with_upwards_trend.png differ
diff --git a/public/img/emoji/checkered_flag.png b/public/img/emoji/checkered_flag.png
new file mode 100755
index 0000000000..ead4a68dd3
Binary files /dev/null and b/public/img/emoji/checkered_flag.png differ
diff --git a/public/img/emoji/cherries.png b/public/img/emoji/cherries.png
new file mode 100755
index 0000000000..8d3e044f2f
Binary files /dev/null and b/public/img/emoji/cherries.png differ
diff --git a/public/img/emoji/cherry_blossom.png b/public/img/emoji/cherry_blossom.png
new file mode 100755
index 0000000000..e031554999
Binary files /dev/null and b/public/img/emoji/cherry_blossom.png differ
diff --git a/public/img/emoji/chestnut.png b/public/img/emoji/chestnut.png
new file mode 100755
index 0000000000..066fb6bf6d
Binary files /dev/null and b/public/img/emoji/chestnut.png differ
diff --git a/public/img/emoji/chicken.png b/public/img/emoji/chicken.png
new file mode 100755
index 0000000000..6d25c0ef4a
Binary files /dev/null and b/public/img/emoji/chicken.png differ
diff --git a/public/img/emoji/children_crossing.png b/public/img/emoji/children_crossing.png
new file mode 100755
index 0000000000..b0302ae625
Binary files /dev/null and b/public/img/emoji/children_crossing.png differ
diff --git a/public/img/emoji/chocolate_bar.png b/public/img/emoji/chocolate_bar.png
new file mode 100755
index 0000000000..c7ec19d079
Binary files /dev/null and b/public/img/emoji/chocolate_bar.png differ
diff --git a/public/img/emoji/christmas_tree.png b/public/img/emoji/christmas_tree.png
new file mode 100755
index 0000000000..d813b9593d
Binary files /dev/null and b/public/img/emoji/christmas_tree.png differ
diff --git a/public/img/emoji/church.png b/public/img/emoji/church.png
new file mode 100755
index 0000000000..4c07c6b9ea
Binary files /dev/null and b/public/img/emoji/church.png differ
diff --git a/public/img/emoji/cinema.png b/public/img/emoji/cinema.png
new file mode 100755
index 0000000000..a990ccf99c
Binary files /dev/null and b/public/img/emoji/cinema.png differ
diff --git a/public/img/emoji/circus_tent.png b/public/img/emoji/circus_tent.png
new file mode 100755
index 0000000000..4af8719aa0
Binary files /dev/null and b/public/img/emoji/circus_tent.png differ
diff --git a/public/img/emoji/city_sunrise.png b/public/img/emoji/city_sunrise.png
new file mode 100755
index 0000000000..91ca2a40b6
Binary files /dev/null and b/public/img/emoji/city_sunrise.png differ
diff --git a/public/img/emoji/city_sunset.png b/public/img/emoji/city_sunset.png
new file mode 100755
index 0000000000..7cb178a2cc
Binary files /dev/null and b/public/img/emoji/city_sunset.png differ
diff --git a/public/img/emoji/cl.png b/public/img/emoji/cl.png
new file mode 100755
index 0000000000..15ac67525a
Binary files /dev/null and b/public/img/emoji/cl.png differ
diff --git a/public/img/emoji/clap.png b/public/img/emoji/clap.png
new file mode 100755
index 0000000000..d01c982a75
Binary files /dev/null and b/public/img/emoji/clap.png differ
diff --git a/public/img/emoji/clapper.png b/public/img/emoji/clapper.png
new file mode 100755
index 0000000000..4e1dc111d7
Binary files /dev/null and b/public/img/emoji/clapper.png differ
diff --git a/public/img/emoji/clipboard.png b/public/img/emoji/clipboard.png
new file mode 100755
index 0000000000..e2c74e6df8
Binary files /dev/null and b/public/img/emoji/clipboard.png differ
diff --git a/public/img/emoji/clock1.png b/public/img/emoji/clock1.png
new file mode 100755
index 0000000000..9174d4e0bc
Binary files /dev/null and b/public/img/emoji/clock1.png differ
diff --git a/public/img/emoji/clock10.png b/public/img/emoji/clock10.png
new file mode 100755
index 0000000000..39f590d694
Binary files /dev/null and b/public/img/emoji/clock10.png differ
diff --git a/public/img/emoji/clock1030.png b/public/img/emoji/clock1030.png
new file mode 100755
index 0000000000..0483b30594
Binary files /dev/null and b/public/img/emoji/clock1030.png differ
diff --git a/public/img/emoji/clock11.png b/public/img/emoji/clock11.png
new file mode 100755
index 0000000000..ddb53fadad
Binary files /dev/null and b/public/img/emoji/clock11.png differ
diff --git a/public/img/emoji/clock1130.png b/public/img/emoji/clock1130.png
new file mode 100755
index 0000000000..415999ec83
Binary files /dev/null and b/public/img/emoji/clock1130.png differ
diff --git a/public/img/emoji/clock12.png b/public/img/emoji/clock12.png
new file mode 100755
index 0000000000..87b132878b
Binary files /dev/null and b/public/img/emoji/clock12.png differ
diff --git a/public/img/emoji/clock1230.png b/public/img/emoji/clock1230.png
new file mode 100755
index 0000000000..a6527154d1
Binary files /dev/null and b/public/img/emoji/clock1230.png differ
diff --git a/public/img/emoji/clock130.png b/public/img/emoji/clock130.png
new file mode 100755
index 0000000000..90ea5b9144
Binary files /dev/null and b/public/img/emoji/clock130.png differ
diff --git a/public/img/emoji/clock2.png b/public/img/emoji/clock2.png
new file mode 100755
index 0000000000..65b3b3af0e
Binary files /dev/null and b/public/img/emoji/clock2.png differ
diff --git a/public/img/emoji/clock230.png b/public/img/emoji/clock230.png
new file mode 100755
index 0000000000..f12c6912af
Binary files /dev/null and b/public/img/emoji/clock230.png differ
diff --git a/public/img/emoji/clock3.png b/public/img/emoji/clock3.png
new file mode 100755
index 0000000000..3e44d64e2f
Binary files /dev/null and b/public/img/emoji/clock3.png differ
diff --git a/public/img/emoji/clock330.png b/public/img/emoji/clock330.png
new file mode 100755
index 0000000000..1dc9628ea2
Binary files /dev/null and b/public/img/emoji/clock330.png differ
diff --git a/public/img/emoji/clock4.png b/public/img/emoji/clock4.png
new file mode 100755
index 0000000000..948ed1a380
Binary files /dev/null and b/public/img/emoji/clock4.png differ
diff --git a/public/img/emoji/clock430.png b/public/img/emoji/clock430.png
new file mode 100755
index 0000000000..5d6b16a2d9
Binary files /dev/null and b/public/img/emoji/clock430.png differ
diff --git a/public/img/emoji/clock5.png b/public/img/emoji/clock5.png
new file mode 100755
index 0000000000..b010b4f8aa
Binary files /dev/null and b/public/img/emoji/clock5.png differ
diff --git a/public/img/emoji/clock530.png b/public/img/emoji/clock530.png
new file mode 100755
index 0000000000..e08d4ad2ba
Binary files /dev/null and b/public/img/emoji/clock530.png differ
diff --git a/public/img/emoji/clock6.png b/public/img/emoji/clock6.png
new file mode 100755
index 0000000000..76bf8cf185
Binary files /dev/null and b/public/img/emoji/clock6.png differ
diff --git a/public/img/emoji/clock630.png b/public/img/emoji/clock630.png
new file mode 100755
index 0000000000..46f0681f1c
Binary files /dev/null and b/public/img/emoji/clock630.png differ
diff --git a/public/img/emoji/clock7.png b/public/img/emoji/clock7.png
new file mode 100755
index 0000000000..d48f645d83
Binary files /dev/null and b/public/img/emoji/clock7.png differ
diff --git a/public/img/emoji/clock730.png b/public/img/emoji/clock730.png
new file mode 100755
index 0000000000..f2807de2f2
Binary files /dev/null and b/public/img/emoji/clock730.png differ
diff --git a/public/img/emoji/clock8.png b/public/img/emoji/clock8.png
new file mode 100755
index 0000000000..74c770d891
Binary files /dev/null and b/public/img/emoji/clock8.png differ
diff --git a/public/img/emoji/clock830.png b/public/img/emoji/clock830.png
new file mode 100755
index 0000000000..f58f3dadda
Binary files /dev/null and b/public/img/emoji/clock830.png differ
diff --git a/public/img/emoji/clock9.png b/public/img/emoji/clock9.png
new file mode 100755
index 0000000000..f009d14ac1
Binary files /dev/null and b/public/img/emoji/clock9.png differ
diff --git a/public/img/emoji/clock930.png b/public/img/emoji/clock930.png
new file mode 100755
index 0000000000..fd35221428
Binary files /dev/null and b/public/img/emoji/clock930.png differ
diff --git a/public/img/emoji/closed_book.png b/public/img/emoji/closed_book.png
new file mode 100755
index 0000000000..484029c5eb
Binary files /dev/null and b/public/img/emoji/closed_book.png differ
diff --git a/public/img/emoji/closed_lock_with_key.png b/public/img/emoji/closed_lock_with_key.png
new file mode 100755
index 0000000000..e6fdf6cb20
Binary files /dev/null and b/public/img/emoji/closed_lock_with_key.png differ
diff --git a/public/img/emoji/closed_umbrella.png b/public/img/emoji/closed_umbrella.png
new file mode 100755
index 0000000000..0b719f086b
Binary files /dev/null and b/public/img/emoji/closed_umbrella.png differ
diff --git a/public/img/emoji/cloud.png b/public/img/emoji/cloud.png
new file mode 100755
index 0000000000..b31c08c0b8
Binary files /dev/null and b/public/img/emoji/cloud.png differ
diff --git a/public/img/emoji/clubs.png b/public/img/emoji/clubs.png
new file mode 100755
index 0000000000..bfab536569
Binary files /dev/null and b/public/img/emoji/clubs.png differ
diff --git a/public/img/emoji/cn.png b/public/img/emoji/cn.png
new file mode 100755
index 0000000000..b30dcc53df
Binary files /dev/null and b/public/img/emoji/cn.png differ
diff --git a/public/img/emoji/cocktail.png b/public/img/emoji/cocktail.png
new file mode 100755
index 0000000000..28b45ea514
Binary files /dev/null and b/public/img/emoji/cocktail.png differ
diff --git a/public/img/emoji/coffee.png b/public/img/emoji/coffee.png
new file mode 100755
index 0000000000..57e1adcb04
Binary files /dev/null and b/public/img/emoji/coffee.png differ
diff --git a/public/img/emoji/cold_sweat.png b/public/img/emoji/cold_sweat.png
new file mode 100755
index 0000000000..b9e39bc60f
Binary files /dev/null and b/public/img/emoji/cold_sweat.png differ
diff --git a/public/img/emoji/collision.png b/public/img/emoji/collision.png
new file mode 100755
index 0000000000..9d5bd04014
Binary files /dev/null and b/public/img/emoji/collision.png differ
diff --git a/public/img/emoji/computer.png b/public/img/emoji/computer.png
new file mode 100755
index 0000000000..d4d2687627
Binary files /dev/null and b/public/img/emoji/computer.png differ
diff --git a/public/img/emoji/confetti_ball.png b/public/img/emoji/confetti_ball.png
new file mode 100755
index 0000000000..bd293e3d87
Binary files /dev/null and b/public/img/emoji/confetti_ball.png differ
diff --git a/public/img/emoji/confounded.png b/public/img/emoji/confounded.png
new file mode 100755
index 0000000000..762c3766ab
Binary files /dev/null and b/public/img/emoji/confounded.png differ
diff --git a/public/img/emoji/confused.png b/public/img/emoji/confused.png
new file mode 100755
index 0000000000..8dc494db08
Binary files /dev/null and b/public/img/emoji/confused.png differ
diff --git a/public/img/emoji/congratulations.png b/public/img/emoji/congratulations.png
new file mode 100755
index 0000000000..85814e33c3
Binary files /dev/null and b/public/img/emoji/congratulations.png differ
diff --git a/public/img/emoji/construction.png b/public/img/emoji/construction.png
new file mode 100755
index 0000000000..523e9f10bf
Binary files /dev/null and b/public/img/emoji/construction.png differ
diff --git a/public/img/emoji/construction_worker.png b/public/img/emoji/construction_worker.png
new file mode 100755
index 0000000000..4d64860478
Binary files /dev/null and b/public/img/emoji/construction_worker.png differ
diff --git a/public/img/emoji/convenience_store.png b/public/img/emoji/convenience_store.png
new file mode 100755
index 0000000000..671696c2df
Binary files /dev/null and b/public/img/emoji/convenience_store.png differ
diff --git a/public/img/emoji/cookie.png b/public/img/emoji/cookie.png
new file mode 100755
index 0000000000..653edb258c
Binary files /dev/null and b/public/img/emoji/cookie.png differ
diff --git a/public/img/emoji/cool.png b/public/img/emoji/cool.png
new file mode 100755
index 0000000000..937dcd7921
Binary files /dev/null and b/public/img/emoji/cool.png differ
diff --git a/public/img/emoji/cop.png b/public/img/emoji/cop.png
new file mode 100755
index 0000000000..43a5a84f82
Binary files /dev/null and b/public/img/emoji/cop.png differ
diff --git a/public/img/emoji/copyright.png b/public/img/emoji/copyright.png
new file mode 100755
index 0000000000..38493c33fc
Binary files /dev/null and b/public/img/emoji/copyright.png differ
diff --git a/public/img/emoji/corn.png b/public/img/emoji/corn.png
new file mode 100755
index 0000000000..fe5d8b1287
Binary files /dev/null and b/public/img/emoji/corn.png differ
diff --git a/public/img/emoji/couple.png b/public/img/emoji/couple.png
new file mode 100755
index 0000000000..9e51f40e16
Binary files /dev/null and b/public/img/emoji/couple.png differ
diff --git a/public/img/emoji/couple_with_heart.png b/public/img/emoji/couple_with_heart.png
new file mode 100755
index 0000000000..c503f40a93
Binary files /dev/null and b/public/img/emoji/couple_with_heart.png differ
diff --git a/public/img/emoji/couplekiss.png b/public/img/emoji/couplekiss.png
new file mode 100755
index 0000000000..d02790822e
Binary files /dev/null and b/public/img/emoji/couplekiss.png differ
diff --git a/public/img/emoji/cow.png b/public/img/emoji/cow.png
new file mode 100755
index 0000000000..12e1ab6c0b
Binary files /dev/null and b/public/img/emoji/cow.png differ
diff --git a/public/img/emoji/cow2.png b/public/img/emoji/cow2.png
new file mode 100755
index 0000000000..594c92155b
Binary files /dev/null and b/public/img/emoji/cow2.png differ
diff --git a/public/img/emoji/credit_card.png b/public/img/emoji/credit_card.png
new file mode 100755
index 0000000000..be1c1dd306
Binary files /dev/null and b/public/img/emoji/credit_card.png differ
diff --git a/public/img/emoji/crescent_moon.png b/public/img/emoji/crescent_moon.png
new file mode 100755
index 0000000000..afdb450d1d
Binary files /dev/null and b/public/img/emoji/crescent_moon.png differ
diff --git a/public/img/emoji/crocodile.png b/public/img/emoji/crocodile.png
new file mode 100755
index 0000000000..7435d5ab3c
Binary files /dev/null and b/public/img/emoji/crocodile.png differ
diff --git a/public/img/emoji/crossed_flags.png b/public/img/emoji/crossed_flags.png
new file mode 100755
index 0000000000..2397bcd0fc
Binary files /dev/null and b/public/img/emoji/crossed_flags.png differ
diff --git a/public/img/emoji/crown.png b/public/img/emoji/crown.png
new file mode 100755
index 0000000000..39da1d5287
Binary files /dev/null and b/public/img/emoji/crown.png differ
diff --git a/public/img/emoji/cry.png b/public/img/emoji/cry.png
new file mode 100755
index 0000000000..6d0d9afd28
Binary files /dev/null and b/public/img/emoji/cry.png differ
diff --git a/public/img/emoji/crying_cat_face.png b/public/img/emoji/crying_cat_face.png
new file mode 100755
index 0000000000..42d4c27cab
Binary files /dev/null and b/public/img/emoji/crying_cat_face.png differ
diff --git a/public/img/emoji/crystal_ball.png b/public/img/emoji/crystal_ball.png
new file mode 100755
index 0000000000..6d2c6c42d4
Binary files /dev/null and b/public/img/emoji/crystal_ball.png differ
diff --git a/public/img/emoji/cupid.png b/public/img/emoji/cupid.png
new file mode 100755
index 0000000000..4987284767
Binary files /dev/null and b/public/img/emoji/cupid.png differ
diff --git a/public/img/emoji/curly_loop.png b/public/img/emoji/curly_loop.png
new file mode 100755
index 0000000000..7dd841d006
Binary files /dev/null and b/public/img/emoji/curly_loop.png differ
diff --git a/public/img/emoji/currency_exchange.png b/public/img/emoji/currency_exchange.png
new file mode 100755
index 0000000000..6ebebe70af
Binary files /dev/null and b/public/img/emoji/currency_exchange.png differ
diff --git a/public/img/emoji/curry.png b/public/img/emoji/curry.png
new file mode 100755
index 0000000000..7983c706a4
Binary files /dev/null and b/public/img/emoji/curry.png differ
diff --git a/public/img/emoji/custard.png b/public/img/emoji/custard.png
new file mode 100755
index 0000000000..9f843b4c13
Binary files /dev/null and b/public/img/emoji/custard.png differ
diff --git a/public/img/emoji/customs.png b/public/img/emoji/customs.png
new file mode 100755
index 0000000000..92691e3117
Binary files /dev/null and b/public/img/emoji/customs.png differ
diff --git a/public/img/emoji/cyclone.png b/public/img/emoji/cyclone.png
new file mode 100755
index 0000000000..5fd2e4512f
Binary files /dev/null and b/public/img/emoji/cyclone.png differ
diff --git a/public/img/emoji/dancer.png b/public/img/emoji/dancer.png
new file mode 100755
index 0000000000..7a7bf59f17
Binary files /dev/null and b/public/img/emoji/dancer.png differ
diff --git a/public/img/emoji/dancers.png b/public/img/emoji/dancers.png
new file mode 100755
index 0000000000..2dfb451a73
Binary files /dev/null and b/public/img/emoji/dancers.png differ
diff --git a/public/img/emoji/dango.png b/public/img/emoji/dango.png
new file mode 100755
index 0000000000..2d042aebeb
Binary files /dev/null and b/public/img/emoji/dango.png differ
diff --git a/public/img/emoji/dart.png b/public/img/emoji/dart.png
new file mode 100755
index 0000000000..5f16864cbe
Binary files /dev/null and b/public/img/emoji/dart.png differ
diff --git a/public/img/emoji/dash.png b/public/img/emoji/dash.png
new file mode 100755
index 0000000000..dc2c0a8f46
Binary files /dev/null and b/public/img/emoji/dash.png differ
diff --git a/public/img/emoji/date.png b/public/img/emoji/date.png
new file mode 100755
index 0000000000..6ad2efa5fd
Binary files /dev/null and b/public/img/emoji/date.png differ
diff --git a/public/img/emoji/de.png b/public/img/emoji/de.png
new file mode 100755
index 0000000000..16a28548c9
Binary files /dev/null and b/public/img/emoji/de.png differ
diff --git a/public/img/emoji/deciduous_tree.png b/public/img/emoji/deciduous_tree.png
new file mode 100755
index 0000000000..3fdf8c0070
Binary files /dev/null and b/public/img/emoji/deciduous_tree.png differ
diff --git a/public/img/emoji/department_store.png b/public/img/emoji/department_store.png
new file mode 100755
index 0000000000..68d959c507
Binary files /dev/null and b/public/img/emoji/department_store.png differ
diff --git a/public/img/emoji/diamond_shape_with_a_dot_inside.png b/public/img/emoji/diamond_shape_with_a_dot_inside.png
new file mode 100755
index 0000000000..dfd1098b39
Binary files /dev/null and b/public/img/emoji/diamond_shape_with_a_dot_inside.png differ
diff --git a/public/img/emoji/diamonds.png b/public/img/emoji/diamonds.png
new file mode 100755
index 0000000000..fe0827758b
Binary files /dev/null and b/public/img/emoji/diamonds.png differ
diff --git a/public/img/emoji/disappointed.png b/public/img/emoji/disappointed.png
new file mode 100755
index 0000000000..8255200871
Binary files /dev/null and b/public/img/emoji/disappointed.png differ
diff --git a/public/img/emoji/disappointed_relieved.png b/public/img/emoji/disappointed_relieved.png
new file mode 100755
index 0000000000..fa5f9e7f9f
Binary files /dev/null and b/public/img/emoji/disappointed_relieved.png differ
diff --git a/public/img/emoji/dizzy.png b/public/img/emoji/dizzy.png
new file mode 100755
index 0000000000..3702b6131c
Binary files /dev/null and b/public/img/emoji/dizzy.png differ
diff --git a/public/img/emoji/dizzy_face.png b/public/img/emoji/dizzy_face.png
new file mode 100755
index 0000000000..8001d6ff8f
Binary files /dev/null and b/public/img/emoji/dizzy_face.png differ
diff --git a/public/img/emoji/do_not_litter.png b/public/img/emoji/do_not_litter.png
new file mode 100755
index 0000000000..38c7ae7af2
Binary files /dev/null and b/public/img/emoji/do_not_litter.png differ
diff --git a/public/img/emoji/dog.png b/public/img/emoji/dog.png
new file mode 100755
index 0000000000..389a02bf28
Binary files /dev/null and b/public/img/emoji/dog.png differ
diff --git a/public/img/emoji/dog2.png b/public/img/emoji/dog2.png
new file mode 100755
index 0000000000..c7f6a24ac8
Binary files /dev/null and b/public/img/emoji/dog2.png differ
diff --git a/public/img/emoji/dollar.png b/public/img/emoji/dollar.png
new file mode 100755
index 0000000000..63de884951
Binary files /dev/null and b/public/img/emoji/dollar.png differ
diff --git a/public/img/emoji/dolls.png b/public/img/emoji/dolls.png
new file mode 100755
index 0000000000..47ce33900c
Binary files /dev/null and b/public/img/emoji/dolls.png differ
diff --git a/public/img/emoji/dolphin.png b/public/img/emoji/dolphin.png
new file mode 100755
index 0000000000..9326077a92
Binary files /dev/null and b/public/img/emoji/dolphin.png differ
diff --git a/public/img/emoji/donut.png b/public/img/emoji/donut.png
new file mode 100755
index 0000000000..ccf8691296
Binary files /dev/null and b/public/img/emoji/donut.png differ
diff --git a/public/img/emoji/door.png b/public/img/emoji/door.png
new file mode 100755
index 0000000000..83c819ae46
Binary files /dev/null and b/public/img/emoji/door.png differ
diff --git a/public/img/emoji/doughnut.png b/public/img/emoji/doughnut.png
new file mode 100755
index 0000000000..ccf8691296
Binary files /dev/null and b/public/img/emoji/doughnut.png differ
diff --git a/public/img/emoji/dragon.png b/public/img/emoji/dragon.png
new file mode 100755
index 0000000000..88d4784b8b
Binary files /dev/null and b/public/img/emoji/dragon.png differ
diff --git a/public/img/emoji/dragon_face.png b/public/img/emoji/dragon_face.png
new file mode 100755
index 0000000000..e5e556bd10
Binary files /dev/null and b/public/img/emoji/dragon_face.png differ
diff --git a/public/img/emoji/dress.png b/public/img/emoji/dress.png
new file mode 100755
index 0000000000..6434e2e2f3
Binary files /dev/null and b/public/img/emoji/dress.png differ
diff --git a/public/img/emoji/dromedary_camel.png b/public/img/emoji/dromedary_camel.png
new file mode 100755
index 0000000000..c8c7b9ffa0
Binary files /dev/null and b/public/img/emoji/dromedary_camel.png differ
diff --git a/public/img/emoji/droplet.png b/public/img/emoji/droplet.png
new file mode 100755
index 0000000000..cae7f4951a
Binary files /dev/null and b/public/img/emoji/droplet.png differ
diff --git a/public/img/emoji/dvd.png b/public/img/emoji/dvd.png
new file mode 100755
index 0000000000..363c83d01c
Binary files /dev/null and b/public/img/emoji/dvd.png differ
diff --git a/public/img/emoji/e-mail.png b/public/img/emoji/e-mail.png
new file mode 100755
index 0000000000..176a8e1e82
Binary files /dev/null and b/public/img/emoji/e-mail.png differ
diff --git a/public/img/emoji/ear.png b/public/img/emoji/ear.png
new file mode 100755
index 0000000000..2bbbf10c9e
Binary files /dev/null and b/public/img/emoji/ear.png differ
diff --git a/public/img/emoji/ear_of_rice.png b/public/img/emoji/ear_of_rice.png
new file mode 100755
index 0000000000..a9bba5c2c1
Binary files /dev/null and b/public/img/emoji/ear_of_rice.png differ
diff --git a/public/img/emoji/earth_africa.png b/public/img/emoji/earth_africa.png
new file mode 100755
index 0000000000..44ce5ecb62
Binary files /dev/null and b/public/img/emoji/earth_africa.png differ
diff --git a/public/img/emoji/earth_americas.png b/public/img/emoji/earth_americas.png
new file mode 100755
index 0000000000..97d7176713
Binary files /dev/null and b/public/img/emoji/earth_americas.png differ
diff --git a/public/img/emoji/earth_asia.png b/public/img/emoji/earth_asia.png
new file mode 100755
index 0000000000..95ec357ca8
Binary files /dev/null and b/public/img/emoji/earth_asia.png differ
diff --git a/public/img/emoji/egg.png b/public/img/emoji/egg.png
new file mode 100755
index 0000000000..c3de6ae4ea
Binary files /dev/null and b/public/img/emoji/egg.png differ
diff --git a/public/img/emoji/eggplant.png b/public/img/emoji/eggplant.png
new file mode 100755
index 0000000000..66f25fce44
Binary files /dev/null and b/public/img/emoji/eggplant.png differ
diff --git a/public/img/emoji/eight.png b/public/img/emoji/eight.png
new file mode 100755
index 0000000000..7bdb422327
Binary files /dev/null and b/public/img/emoji/eight.png differ
diff --git a/public/img/emoji/eight_pointed_black_star.png b/public/img/emoji/eight_pointed_black_star.png
new file mode 100755
index 0000000000..2420a7768e
Binary files /dev/null and b/public/img/emoji/eight_pointed_black_star.png differ
diff --git a/public/img/emoji/eight_spoked_asterisk.png b/public/img/emoji/eight_spoked_asterisk.png
new file mode 100755
index 0000000000..946a20333a
Binary files /dev/null and b/public/img/emoji/eight_spoked_asterisk.png differ
diff --git a/public/img/emoji/electric_plug.png b/public/img/emoji/electric_plug.png
new file mode 100755
index 0000000000..2837bab4f0
Binary files /dev/null and b/public/img/emoji/electric_plug.png differ
diff --git a/public/img/emoji/elephant.png b/public/img/emoji/elephant.png
new file mode 100755
index 0000000000..5ca04570e2
Binary files /dev/null and b/public/img/emoji/elephant.png differ
diff --git a/public/img/emoji/email.png b/public/img/emoji/email.png
new file mode 100755
index 0000000000..0e01fd5f05
Binary files /dev/null and b/public/img/emoji/email.png differ
diff --git a/public/img/emoji/end.png b/public/img/emoji/end.png
new file mode 100755
index 0000000000..61a4399ad8
Binary files /dev/null and b/public/img/emoji/end.png differ
diff --git a/public/img/emoji/envelope.png b/public/img/emoji/envelope.png
new file mode 100755
index 0000000000..3631861bbf
Binary files /dev/null and b/public/img/emoji/envelope.png differ
diff --git a/public/img/emoji/es.png b/public/img/emoji/es.png
new file mode 100755
index 0000000000..71b30bff35
Binary files /dev/null and b/public/img/emoji/es.png differ
diff --git a/public/img/emoji/euro.png b/public/img/emoji/euro.png
new file mode 100755
index 0000000000..1c5904b714
Binary files /dev/null and b/public/img/emoji/euro.png differ
diff --git a/public/img/emoji/european_castle.png b/public/img/emoji/european_castle.png
new file mode 100755
index 0000000000..8229b8a8a9
Binary files /dev/null and b/public/img/emoji/european_castle.png differ
diff --git a/public/img/emoji/european_post_office.png b/public/img/emoji/european_post_office.png
new file mode 100755
index 0000000000..0f65b14530
Binary files /dev/null and b/public/img/emoji/european_post_office.png differ
diff --git a/public/img/emoji/evergreen_tree.png b/public/img/emoji/evergreen_tree.png
new file mode 100755
index 0000000000..ae8ad10376
Binary files /dev/null and b/public/img/emoji/evergreen_tree.png differ
diff --git a/public/img/emoji/exclamation.png b/public/img/emoji/exclamation.png
new file mode 100755
index 0000000000..77bbdeabcf
Binary files /dev/null and b/public/img/emoji/exclamation.png differ
diff --git a/public/img/emoji/expressionless.png b/public/img/emoji/expressionless.png
new file mode 100755
index 0000000000..913ff4e2fa
Binary files /dev/null and b/public/img/emoji/expressionless.png differ
diff --git a/public/img/emoji/eyeglasses.png b/public/img/emoji/eyeglasses.png
new file mode 100755
index 0000000000..a3cf75a27a
Binary files /dev/null and b/public/img/emoji/eyeglasses.png differ
diff --git a/public/img/emoji/eyes.png b/public/img/emoji/eyes.png
new file mode 100755
index 0000000000..1ac24a615b
Binary files /dev/null and b/public/img/emoji/eyes.png differ
diff --git a/public/img/emoji/facepunch.png b/public/img/emoji/facepunch.png
new file mode 100755
index 0000000000..277047b7c4
Binary files /dev/null and b/public/img/emoji/facepunch.png differ
diff --git a/public/img/emoji/factory.png b/public/img/emoji/factory.png
new file mode 100755
index 0000000000..6404634793
Binary files /dev/null and b/public/img/emoji/factory.png differ
diff --git a/public/img/emoji/fallen_leaf.png b/public/img/emoji/fallen_leaf.png
new file mode 100755
index 0000000000..d49f9c1757
Binary files /dev/null and b/public/img/emoji/fallen_leaf.png differ
diff --git a/public/img/emoji/family.png b/public/img/emoji/family.png
new file mode 100755
index 0000000000..b4b365f3a5
Binary files /dev/null and b/public/img/emoji/family.png differ
diff --git a/public/img/emoji/fast_forward.png b/public/img/emoji/fast_forward.png
new file mode 100755
index 0000000000..8830e146e5
Binary files /dev/null and b/public/img/emoji/fast_forward.png differ
diff --git a/public/img/emoji/fax.png b/public/img/emoji/fax.png
new file mode 100755
index 0000000000..62be2c958f
Binary files /dev/null and b/public/img/emoji/fax.png differ
diff --git a/public/img/emoji/fearful.png b/public/img/emoji/fearful.png
new file mode 100755
index 0000000000..513fce47b6
Binary files /dev/null and b/public/img/emoji/fearful.png differ
diff --git a/public/img/emoji/feelsgood.png b/public/img/emoji/feelsgood.png
new file mode 100755
index 0000000000..361f969bc1
Binary files /dev/null and b/public/img/emoji/feelsgood.png differ
diff --git a/public/img/emoji/feet.png b/public/img/emoji/feet.png
new file mode 100755
index 0000000000..1b0147b1d2
Binary files /dev/null and b/public/img/emoji/feet.png differ
diff --git a/public/img/emoji/ferris_wheel.png b/public/img/emoji/ferris_wheel.png
new file mode 100755
index 0000000000..54a1dcfa1e
Binary files /dev/null and b/public/img/emoji/ferris_wheel.png differ
diff --git a/public/img/emoji/file_folder.png b/public/img/emoji/file_folder.png
new file mode 100755
index 0000000000..4d8bebf8a9
Binary files /dev/null and b/public/img/emoji/file_folder.png differ
diff --git a/public/img/emoji/finnadie.png b/public/img/emoji/finnadie.png
new file mode 100755
index 0000000000..bfc5a0d93d
Binary files /dev/null and b/public/img/emoji/finnadie.png differ
diff --git a/public/img/emoji/fire.png b/public/img/emoji/fire.png
new file mode 100755
index 0000000000..f2a3149bbf
Binary files /dev/null and b/public/img/emoji/fire.png differ
diff --git a/public/img/emoji/fire_engine.png b/public/img/emoji/fire_engine.png
new file mode 100755
index 0000000000..9e6c59c997
Binary files /dev/null and b/public/img/emoji/fire_engine.png differ
diff --git a/public/img/emoji/fireworks.png b/public/img/emoji/fireworks.png
new file mode 100755
index 0000000000..b4eccd5775
Binary files /dev/null and b/public/img/emoji/fireworks.png differ
diff --git a/public/img/emoji/first_quarter_moon.png b/public/img/emoji/first_quarter_moon.png
new file mode 100755
index 0000000000..f38c236937
Binary files /dev/null and b/public/img/emoji/first_quarter_moon.png differ
diff --git a/public/img/emoji/first_quarter_moon_with_face.png b/public/img/emoji/first_quarter_moon_with_face.png
new file mode 100755
index 0000000000..85ae2ce72d
Binary files /dev/null and b/public/img/emoji/first_quarter_moon_with_face.png differ
diff --git a/public/img/emoji/fish.png b/public/img/emoji/fish.png
new file mode 100755
index 0000000000..90bdda2c92
Binary files /dev/null and b/public/img/emoji/fish.png differ
diff --git a/public/img/emoji/fish_cake.png b/public/img/emoji/fish_cake.png
new file mode 100755
index 0000000000..a8f22614d6
Binary files /dev/null and b/public/img/emoji/fish_cake.png differ
diff --git a/public/img/emoji/fishing_pole_and_fish.png b/public/img/emoji/fishing_pole_and_fish.png
new file mode 100755
index 0000000000..d84609c3b7
Binary files /dev/null and b/public/img/emoji/fishing_pole_and_fish.png differ
diff --git a/public/img/emoji/fist.png b/public/img/emoji/fist.png
new file mode 100755
index 0000000000..ecc8874c2f
Binary files /dev/null and b/public/img/emoji/fist.png differ
diff --git a/public/img/emoji/five.png b/public/img/emoji/five.png
new file mode 100755
index 0000000000..794321aa22
Binary files /dev/null and b/public/img/emoji/five.png differ
diff --git a/public/img/emoji/flags.png b/public/img/emoji/flags.png
new file mode 100755
index 0000000000..540164e84e
Binary files /dev/null and b/public/img/emoji/flags.png differ
diff --git a/public/img/emoji/flashlight.png b/public/img/emoji/flashlight.png
new file mode 100755
index 0000000000..215940aa8f
Binary files /dev/null and b/public/img/emoji/flashlight.png differ
diff --git a/public/img/emoji/floppy_disk.png b/public/img/emoji/floppy_disk.png
new file mode 100755
index 0000000000..4ad56315ae
Binary files /dev/null and b/public/img/emoji/floppy_disk.png differ
diff --git a/public/img/emoji/flower_playing_cards.png b/public/img/emoji/flower_playing_cards.png
new file mode 100755
index 0000000000..cc46a6a1fa
Binary files /dev/null and b/public/img/emoji/flower_playing_cards.png differ
diff --git a/public/img/emoji/flushed.png b/public/img/emoji/flushed.png
new file mode 100755
index 0000000000..74b78c9c07
Binary files /dev/null and b/public/img/emoji/flushed.png differ
diff --git a/public/img/emoji/foggy.png b/public/img/emoji/foggy.png
new file mode 100755
index 0000000000..3c7b8b04b9
Binary files /dev/null and b/public/img/emoji/foggy.png differ
diff --git a/public/img/emoji/football.png b/public/img/emoji/football.png
new file mode 100755
index 0000000000..0e4e168fa8
Binary files /dev/null and b/public/img/emoji/football.png differ
diff --git a/public/img/emoji/fork_and_knife.png b/public/img/emoji/fork_and_knife.png
new file mode 100755
index 0000000000..8ba4bc6535
Binary files /dev/null and b/public/img/emoji/fork_and_knife.png differ
diff --git a/public/img/emoji/fountain.png b/public/img/emoji/fountain.png
new file mode 100755
index 0000000000..da126e6486
Binary files /dev/null and b/public/img/emoji/fountain.png differ
diff --git a/public/img/emoji/four.png b/public/img/emoji/four.png
new file mode 100755
index 0000000000..14782ba23b
Binary files /dev/null and b/public/img/emoji/four.png differ
diff --git a/public/img/emoji/four_leaf_clover.png b/public/img/emoji/four_leaf_clover.png
new file mode 100755
index 0000000000..f2014bea44
Binary files /dev/null and b/public/img/emoji/four_leaf_clover.png differ
diff --git a/public/img/emoji/fr.png b/public/img/emoji/fr.png
new file mode 100755
index 0000000000..6311c91159
Binary files /dev/null and b/public/img/emoji/fr.png differ
diff --git a/public/img/emoji/free.png b/public/img/emoji/free.png
new file mode 100755
index 0000000000..c886cf2494
Binary files /dev/null and b/public/img/emoji/free.png differ
diff --git a/public/img/emoji/fried_shrimp.png b/public/img/emoji/fried_shrimp.png
new file mode 100755
index 0000000000..c8c284bf14
Binary files /dev/null and b/public/img/emoji/fried_shrimp.png differ
diff --git a/public/img/emoji/fries.png b/public/img/emoji/fries.png
new file mode 100755
index 0000000000..cfef66966a
Binary files /dev/null and b/public/img/emoji/fries.png differ
diff --git a/public/img/emoji/frog.png b/public/img/emoji/frog.png
new file mode 100755
index 0000000000..cfe11b18ff
Binary files /dev/null and b/public/img/emoji/frog.png differ
diff --git a/public/img/emoji/frowning.png b/public/img/emoji/frowning.png
new file mode 100755
index 0000000000..487b770160
Binary files /dev/null and b/public/img/emoji/frowning.png differ
diff --git a/public/img/emoji/fu.png b/public/img/emoji/fu.png
new file mode 100755
index 0000000000..61a3fee8d7
Binary files /dev/null and b/public/img/emoji/fu.png differ
diff --git a/public/img/emoji/fuelpump.png b/public/img/emoji/fuelpump.png
new file mode 100755
index 0000000000..54c29aeb1d
Binary files /dev/null and b/public/img/emoji/fuelpump.png differ
diff --git a/public/img/emoji/full_moon.png b/public/img/emoji/full_moon.png
new file mode 100755
index 0000000000..8ff657a259
Binary files /dev/null and b/public/img/emoji/full_moon.png differ
diff --git a/public/img/emoji/full_moon_with_face.png b/public/img/emoji/full_moon_with_face.png
new file mode 100755
index 0000000000..d42b3f0fbe
Binary files /dev/null and b/public/img/emoji/full_moon_with_face.png differ
diff --git a/public/img/emoji/game_die.png b/public/img/emoji/game_die.png
new file mode 100755
index 0000000000..cff2bd8b77
Binary files /dev/null and b/public/img/emoji/game_die.png differ
diff --git a/public/img/emoji/gb.png b/public/img/emoji/gb.png
new file mode 100755
index 0000000000..2a62c7a081
Binary files /dev/null and b/public/img/emoji/gb.png differ
diff --git a/public/img/emoji/gem.png b/public/img/emoji/gem.png
new file mode 100755
index 0000000000..8a5d8dad5c
Binary files /dev/null and b/public/img/emoji/gem.png differ
diff --git a/public/img/emoji/gemini.png b/public/img/emoji/gemini.png
new file mode 100755
index 0000000000..d926f6e88e
Binary files /dev/null and b/public/img/emoji/gemini.png differ
diff --git a/public/img/emoji/ghost.png b/public/img/emoji/ghost.png
new file mode 100755
index 0000000000..671dd0c9e2
Binary files /dev/null and b/public/img/emoji/ghost.png differ
diff --git a/public/img/emoji/gift.png b/public/img/emoji/gift.png
new file mode 100755
index 0000000000..552cfdc2b9
Binary files /dev/null and b/public/img/emoji/gift.png differ
diff --git a/public/img/emoji/gift_heart.png b/public/img/emoji/gift_heart.png
new file mode 100755
index 0000000000..f31c26a3fc
Binary files /dev/null and b/public/img/emoji/gift_heart.png differ
diff --git a/public/img/emoji/girl.png b/public/img/emoji/girl.png
new file mode 100755
index 0000000000..ea4126941f
Binary files /dev/null and b/public/img/emoji/girl.png differ
diff --git a/public/img/emoji/globe_with_meridians.png b/public/img/emoji/globe_with_meridians.png
new file mode 100755
index 0000000000..b198646670
Binary files /dev/null and b/public/img/emoji/globe_with_meridians.png differ
diff --git a/public/img/emoji/goat.png b/public/img/emoji/goat.png
new file mode 100755
index 0000000000..4be9cf3040
Binary files /dev/null and b/public/img/emoji/goat.png differ
diff --git a/public/img/emoji/goberserk.png b/public/img/emoji/goberserk.png
new file mode 100755
index 0000000000..59a742aaaa
Binary files /dev/null and b/public/img/emoji/goberserk.png differ
diff --git a/public/img/emoji/godmode.png b/public/img/emoji/godmode.png
new file mode 100755
index 0000000000..7e75ab2081
Binary files /dev/null and b/public/img/emoji/godmode.png differ
diff --git a/public/img/emoji/golf.png b/public/img/emoji/golf.png
new file mode 100755
index 0000000000..cba2116a7e
Binary files /dev/null and b/public/img/emoji/golf.png differ
diff --git a/public/img/emoji/grapes.png b/public/img/emoji/grapes.png
new file mode 100755
index 0000000000..0f9f007a12
Binary files /dev/null and b/public/img/emoji/grapes.png differ
diff --git a/public/img/emoji/green_apple.png b/public/img/emoji/green_apple.png
new file mode 100755
index 0000000000..337205cd12
Binary files /dev/null and b/public/img/emoji/green_apple.png differ
diff --git a/public/img/emoji/green_book.png b/public/img/emoji/green_book.png
new file mode 100755
index 0000000000..e86651e5c5
Binary files /dev/null and b/public/img/emoji/green_book.png differ
diff --git a/public/img/emoji/green_heart.png b/public/img/emoji/green_heart.png
new file mode 100755
index 0000000000..7289cb8147
Binary files /dev/null and b/public/img/emoji/green_heart.png differ
diff --git a/public/img/emoji/grey_exclamation.png b/public/img/emoji/grey_exclamation.png
new file mode 100755
index 0000000000..cf027dda5d
Binary files /dev/null and b/public/img/emoji/grey_exclamation.png differ
diff --git a/public/img/emoji/grey_question.png b/public/img/emoji/grey_question.png
new file mode 100755
index 0000000000..fb97ba752f
Binary files /dev/null and b/public/img/emoji/grey_question.png differ
diff --git a/public/img/emoji/grimacing.png b/public/img/emoji/grimacing.png
new file mode 100755
index 0000000000..1219ba7d3c
Binary files /dev/null and b/public/img/emoji/grimacing.png differ
diff --git a/public/img/emoji/grin.png b/public/img/emoji/grin.png
new file mode 100755
index 0000000000..591cfcef8b
Binary files /dev/null and b/public/img/emoji/grin.png differ
diff --git a/public/img/emoji/grinning.png b/public/img/emoji/grinning.png
new file mode 100755
index 0000000000..7e812b7ed4
Binary files /dev/null and b/public/img/emoji/grinning.png differ
diff --git a/public/img/emoji/guardsman.png b/public/img/emoji/guardsman.png
new file mode 100755
index 0000000000..b67b335d68
Binary files /dev/null and b/public/img/emoji/guardsman.png differ
diff --git a/public/img/emoji/guitar.png b/public/img/emoji/guitar.png
new file mode 100755
index 0000000000..2b7fa43c94
Binary files /dev/null and b/public/img/emoji/guitar.png differ
diff --git a/public/img/emoji/gun.png b/public/img/emoji/gun.png
new file mode 100755
index 0000000000..c49dc52c6c
Binary files /dev/null and b/public/img/emoji/gun.png differ
diff --git a/public/img/emoji/haircut.png b/public/img/emoji/haircut.png
new file mode 100755
index 0000000000..902d273f6c
Binary files /dev/null and b/public/img/emoji/haircut.png differ
diff --git a/public/img/emoji/hamburger.png b/public/img/emoji/hamburger.png
new file mode 100755
index 0000000000..9f1a3fdff6
Binary files /dev/null and b/public/img/emoji/hamburger.png differ
diff --git a/public/img/emoji/hammer.png b/public/img/emoji/hammer.png
new file mode 100755
index 0000000000..482b1c747d
Binary files /dev/null and b/public/img/emoji/hammer.png differ
diff --git a/public/img/emoji/hamster.png b/public/img/emoji/hamster.png
new file mode 100755
index 0000000000..addfd2e6b0
Binary files /dev/null and b/public/img/emoji/hamster.png differ
diff --git a/public/img/emoji/hand.png b/public/img/emoji/hand.png
new file mode 100755
index 0000000000..5e45c25a56
Binary files /dev/null and b/public/img/emoji/hand.png differ
diff --git a/public/img/emoji/handbag.png b/public/img/emoji/handbag.png
new file mode 100755
index 0000000000..d7adf04ddf
Binary files /dev/null and b/public/img/emoji/handbag.png differ
diff --git a/public/img/emoji/hankey.png b/public/img/emoji/hankey.png
new file mode 100755
index 0000000000..73a4dc8400
Binary files /dev/null and b/public/img/emoji/hankey.png differ
diff --git a/public/img/emoji/hash.png b/public/img/emoji/hash.png
new file mode 100755
index 0000000000..6765d7d3c2
Binary files /dev/null and b/public/img/emoji/hash.png differ
diff --git a/public/img/emoji/hatched_chick.png b/public/img/emoji/hatched_chick.png
new file mode 100755
index 0000000000..39c25bc7cc
Binary files /dev/null and b/public/img/emoji/hatched_chick.png differ
diff --git a/public/img/emoji/hatching_chick.png b/public/img/emoji/hatching_chick.png
new file mode 100755
index 0000000000..005a55519f
Binary files /dev/null and b/public/img/emoji/hatching_chick.png differ
diff --git a/public/img/emoji/headphones.png b/public/img/emoji/headphones.png
new file mode 100755
index 0000000000..ad83000e68
Binary files /dev/null and b/public/img/emoji/headphones.png differ
diff --git a/public/img/emoji/hear_no_evil.png b/public/img/emoji/hear_no_evil.png
new file mode 100755
index 0000000000..f97a1f9a09
Binary files /dev/null and b/public/img/emoji/hear_no_evil.png differ
diff --git a/public/img/emoji/heart.png b/public/img/emoji/heart.png
new file mode 100755
index 0000000000..7d7790ce4d
Binary files /dev/null and b/public/img/emoji/heart.png differ
diff --git a/public/img/emoji/heart_decoration.png b/public/img/emoji/heart_decoration.png
new file mode 100755
index 0000000000..b8be44db34
Binary files /dev/null and b/public/img/emoji/heart_decoration.png differ
diff --git a/public/img/emoji/heart_eyes.png b/public/img/emoji/heart_eyes.png
new file mode 100755
index 0000000000..0e5794270e
Binary files /dev/null and b/public/img/emoji/heart_eyes.png differ
diff --git a/public/img/emoji/heart_eyes_cat.png b/public/img/emoji/heart_eyes_cat.png
new file mode 100755
index 0000000000..eeba240e53
Binary files /dev/null and b/public/img/emoji/heart_eyes_cat.png differ
diff --git a/public/img/emoji/heartbeat.png b/public/img/emoji/heartbeat.png
new file mode 100755
index 0000000000..b6628f6fa7
Binary files /dev/null and b/public/img/emoji/heartbeat.png differ
diff --git a/public/img/emoji/heartpulse.png b/public/img/emoji/heartpulse.png
new file mode 100755
index 0000000000..a7491cbeae
Binary files /dev/null and b/public/img/emoji/heartpulse.png differ
diff --git a/public/img/emoji/hearts.png b/public/img/emoji/hearts.png
new file mode 100755
index 0000000000..e894715385
Binary files /dev/null and b/public/img/emoji/hearts.png differ
diff --git a/public/img/emoji/heavy_check_mark.png b/public/img/emoji/heavy_check_mark.png
new file mode 100755
index 0000000000..d0f010b4a0
Binary files /dev/null and b/public/img/emoji/heavy_check_mark.png differ
diff --git a/public/img/emoji/heavy_division_sign.png b/public/img/emoji/heavy_division_sign.png
new file mode 100755
index 0000000000..e193fd252f
Binary files /dev/null and b/public/img/emoji/heavy_division_sign.png differ
diff --git a/public/img/emoji/heavy_dollar_sign.png b/public/img/emoji/heavy_dollar_sign.png
new file mode 100755
index 0000000000..5eddfc52b2
Binary files /dev/null and b/public/img/emoji/heavy_dollar_sign.png differ
diff --git a/public/img/emoji/heavy_exclamation_mark.png b/public/img/emoji/heavy_exclamation_mark.png
new file mode 100755
index 0000000000..4c560f5e3f
Binary files /dev/null and b/public/img/emoji/heavy_exclamation_mark.png differ
diff --git a/public/img/emoji/heavy_minus_sign.png b/public/img/emoji/heavy_minus_sign.png
new file mode 100755
index 0000000000..4a33f905ab
Binary files /dev/null and b/public/img/emoji/heavy_minus_sign.png differ
diff --git a/public/img/emoji/heavy_multiplication_x.png b/public/img/emoji/heavy_multiplication_x.png
new file mode 100755
index 0000000000..13d6660786
Binary files /dev/null and b/public/img/emoji/heavy_multiplication_x.png differ
diff --git a/public/img/emoji/heavy_plus_sign.png b/public/img/emoji/heavy_plus_sign.png
new file mode 100755
index 0000000000..ade3c3a858
Binary files /dev/null and b/public/img/emoji/heavy_plus_sign.png differ
diff --git a/public/img/emoji/helicopter.png b/public/img/emoji/helicopter.png
new file mode 100755
index 0000000000..8e82a0d587
Binary files /dev/null and b/public/img/emoji/helicopter.png differ
diff --git a/public/img/emoji/herb.png b/public/img/emoji/herb.png
new file mode 100755
index 0000000000..de1ff1b73b
Binary files /dev/null and b/public/img/emoji/herb.png differ
diff --git a/public/img/emoji/hibiscus.png b/public/img/emoji/hibiscus.png
new file mode 100755
index 0000000000..9365ae2169
Binary files /dev/null and b/public/img/emoji/hibiscus.png differ
diff --git a/public/img/emoji/high_brightness.png b/public/img/emoji/high_brightness.png
new file mode 100755
index 0000000000..ba9de7d409
Binary files /dev/null and b/public/img/emoji/high_brightness.png differ
diff --git a/public/img/emoji/high_heel.png b/public/img/emoji/high_heel.png
new file mode 100755
index 0000000000..525b6a0dd6
Binary files /dev/null and b/public/img/emoji/high_heel.png differ
diff --git a/public/img/emoji/hocho.png b/public/img/emoji/hocho.png
new file mode 100755
index 0000000000..3f05193c72
Binary files /dev/null and b/public/img/emoji/hocho.png differ
diff --git a/public/img/emoji/honey_pot.png b/public/img/emoji/honey_pot.png
new file mode 100755
index 0000000000..73278898a4
Binary files /dev/null and b/public/img/emoji/honey_pot.png differ
diff --git a/public/img/emoji/honeybee.png b/public/img/emoji/honeybee.png
new file mode 100755
index 0000000000..f53733953a
Binary files /dev/null and b/public/img/emoji/honeybee.png differ
diff --git a/public/img/emoji/horse.png b/public/img/emoji/horse.png
new file mode 100755
index 0000000000..78d580ad3e
Binary files /dev/null and b/public/img/emoji/horse.png differ
diff --git a/public/img/emoji/horse_racing.png b/public/img/emoji/horse_racing.png
new file mode 100755
index 0000000000..e3bbaec1d6
Binary files /dev/null and b/public/img/emoji/horse_racing.png differ
diff --git a/public/img/emoji/hospital.png b/public/img/emoji/hospital.png
new file mode 100755
index 0000000000..c05c49377f
Binary files /dev/null and b/public/img/emoji/hospital.png differ
diff --git a/public/img/emoji/hotel.png b/public/img/emoji/hotel.png
new file mode 100755
index 0000000000..d29f276a18
Binary files /dev/null and b/public/img/emoji/hotel.png differ
diff --git a/public/img/emoji/hotsprings.png b/public/img/emoji/hotsprings.png
new file mode 100755
index 0000000000..a0bc9d75f2
Binary files /dev/null and b/public/img/emoji/hotsprings.png differ
diff --git a/public/img/emoji/hourglass.png b/public/img/emoji/hourglass.png
new file mode 100755
index 0000000000..405aab41be
Binary files /dev/null and b/public/img/emoji/hourglass.png differ
diff --git a/public/img/emoji/hourglass_flowing_sand.png b/public/img/emoji/hourglass_flowing_sand.png
new file mode 100755
index 0000000000..b68eb69578
Binary files /dev/null and b/public/img/emoji/hourglass_flowing_sand.png differ
diff --git a/public/img/emoji/house.png b/public/img/emoji/house.png
new file mode 100755
index 0000000000..95b9ee0948
Binary files /dev/null and b/public/img/emoji/house.png differ
diff --git a/public/img/emoji/house_with_garden.png b/public/img/emoji/house_with_garden.png
new file mode 100755
index 0000000000..3338fb717b
Binary files /dev/null and b/public/img/emoji/house_with_garden.png differ
diff --git a/public/img/emoji/hurtrealbad.png b/public/img/emoji/hurtrealbad.png
new file mode 100755
index 0000000000..146ef1a6a8
Binary files /dev/null and b/public/img/emoji/hurtrealbad.png differ
diff --git a/public/img/emoji/hushed.png b/public/img/emoji/hushed.png
new file mode 100755
index 0000000000..bbd2cd4bc0
Binary files /dev/null and b/public/img/emoji/hushed.png differ
diff --git a/public/img/emoji/ice_cream.png b/public/img/emoji/ice_cream.png
new file mode 100755
index 0000000000..190be01650
Binary files /dev/null and b/public/img/emoji/ice_cream.png differ
diff --git a/public/img/emoji/icecream.png b/public/img/emoji/icecream.png
new file mode 100755
index 0000000000..871ce09768
Binary files /dev/null and b/public/img/emoji/icecream.png differ
diff --git a/public/img/emoji/id.png b/public/img/emoji/id.png
new file mode 100755
index 0000000000..47437a76d3
Binary files /dev/null and b/public/img/emoji/id.png differ
diff --git a/public/img/emoji/ideograph_advantage.png b/public/img/emoji/ideograph_advantage.png
new file mode 100755
index 0000000000..3c1334d164
Binary files /dev/null and b/public/img/emoji/ideograph_advantage.png differ
diff --git a/public/img/emoji/imp.png b/public/img/emoji/imp.png
new file mode 100755
index 0000000000..fa7d9dc10a
Binary files /dev/null and b/public/img/emoji/imp.png differ
diff --git a/public/img/emoji/inbox_tray.png b/public/img/emoji/inbox_tray.png
new file mode 100755
index 0000000000..e2df0f8970
Binary files /dev/null and b/public/img/emoji/inbox_tray.png differ
diff --git a/public/img/emoji/incoming_envelope.png b/public/img/emoji/incoming_envelope.png
new file mode 100755
index 0000000000..afc8271251
Binary files /dev/null and b/public/img/emoji/incoming_envelope.png differ
diff --git a/public/img/emoji/information_desk_person.png b/public/img/emoji/information_desk_person.png
new file mode 100755
index 0000000000..52c0a50a3f
Binary files /dev/null and b/public/img/emoji/information_desk_person.png differ
diff --git a/public/img/emoji/information_source.png b/public/img/emoji/information_source.png
new file mode 100755
index 0000000000..9cb8b09b24
Binary files /dev/null and b/public/img/emoji/information_source.png differ
diff --git a/public/img/emoji/innocent.png b/public/img/emoji/innocent.png
new file mode 100755
index 0000000000..503b614f8d
Binary files /dev/null and b/public/img/emoji/innocent.png differ
diff --git a/public/img/emoji/interrobang.png b/public/img/emoji/interrobang.png
new file mode 100755
index 0000000000..64304b9f5f
Binary files /dev/null and b/public/img/emoji/interrobang.png differ
diff --git a/public/img/emoji/iphone.png b/public/img/emoji/iphone.png
new file mode 100755
index 0000000000..df007103b0
Binary files /dev/null and b/public/img/emoji/iphone.png differ
diff --git a/public/img/emoji/it.png b/public/img/emoji/it.png
new file mode 100755
index 0000000000..70bc9f3246
Binary files /dev/null and b/public/img/emoji/it.png differ
diff --git a/public/img/emoji/izakaya_lantern.png b/public/img/emoji/izakaya_lantern.png
new file mode 100755
index 0000000000..18730ad559
Binary files /dev/null and b/public/img/emoji/izakaya_lantern.png differ
diff --git a/public/img/emoji/jack_o_lantern.png b/public/img/emoji/jack_o_lantern.png
new file mode 100755
index 0000000000..1f7667ea45
Binary files /dev/null and b/public/img/emoji/jack_o_lantern.png differ
diff --git a/public/img/emoji/japan.png b/public/img/emoji/japan.png
new file mode 100755
index 0000000000..4593280359
Binary files /dev/null and b/public/img/emoji/japan.png differ
diff --git a/public/img/emoji/japanese_castle.png b/public/img/emoji/japanese_castle.png
new file mode 100755
index 0000000000..f225ab217c
Binary files /dev/null and b/public/img/emoji/japanese_castle.png differ
diff --git a/public/img/emoji/japanese_goblin.png b/public/img/emoji/japanese_goblin.png
new file mode 100755
index 0000000000..bd21b18757
Binary files /dev/null and b/public/img/emoji/japanese_goblin.png differ
diff --git a/public/img/emoji/japanese_ogre.png b/public/img/emoji/japanese_ogre.png
new file mode 100755
index 0000000000..e9f5471c9a
Binary files /dev/null and b/public/img/emoji/japanese_ogre.png differ
diff --git a/public/img/emoji/jeans.png b/public/img/emoji/jeans.png
new file mode 100755
index 0000000000..d721cea54c
Binary files /dev/null and b/public/img/emoji/jeans.png differ
diff --git a/public/img/emoji/joy.png b/public/img/emoji/joy.png
new file mode 100755
index 0000000000..47df693d42
Binary files /dev/null and b/public/img/emoji/joy.png differ
diff --git a/public/img/emoji/joy_cat.png b/public/img/emoji/joy_cat.png
new file mode 100755
index 0000000000..6c60cb0efc
Binary files /dev/null and b/public/img/emoji/joy_cat.png differ
diff --git a/public/img/emoji/jp.png b/public/img/emoji/jp.png
new file mode 100755
index 0000000000..b786efbbd8
Binary files /dev/null and b/public/img/emoji/jp.png differ
diff --git a/public/img/emoji/key.png b/public/img/emoji/key.png
new file mode 100755
index 0000000000..34673213f6
Binary files /dev/null and b/public/img/emoji/key.png differ
diff --git a/public/img/emoji/keycap_ten.png b/public/img/emoji/keycap_ten.png
new file mode 100755
index 0000000000..71dac1c1cc
Binary files /dev/null and b/public/img/emoji/keycap_ten.png differ
diff --git a/public/img/emoji/kimono.png b/public/img/emoji/kimono.png
new file mode 100755
index 0000000000..34ffe137dc
Binary files /dev/null and b/public/img/emoji/kimono.png differ
diff --git a/public/img/emoji/kiss.png b/public/img/emoji/kiss.png
new file mode 100755
index 0000000000..14fd9918d5
Binary files /dev/null and b/public/img/emoji/kiss.png differ
diff --git a/public/img/emoji/kissing.png b/public/img/emoji/kissing.png
new file mode 100755
index 0000000000..f3c8dcd783
Binary files /dev/null and b/public/img/emoji/kissing.png differ
diff --git a/public/img/emoji/kissing_cat.png b/public/img/emoji/kissing_cat.png
new file mode 100755
index 0000000000..adc62fbe3c
Binary files /dev/null and b/public/img/emoji/kissing_cat.png differ
diff --git a/public/img/emoji/kissing_closed_eyes.png b/public/img/emoji/kissing_closed_eyes.png
new file mode 100755
index 0000000000..449de19704
Binary files /dev/null and b/public/img/emoji/kissing_closed_eyes.png differ
diff --git a/public/img/emoji/kissing_face.png b/public/img/emoji/kissing_face.png
new file mode 100755
index 0000000000..449de19704
Binary files /dev/null and b/public/img/emoji/kissing_face.png differ
diff --git a/public/img/emoji/kissing_heart.png b/public/img/emoji/kissing_heart.png
new file mode 100755
index 0000000000..af9a80b7f0
Binary files /dev/null and b/public/img/emoji/kissing_heart.png differ
diff --git a/public/img/emoji/kissing_smiling_eyes.png b/public/img/emoji/kissing_smiling_eyes.png
new file mode 100755
index 0000000000..57f7b49356
Binary files /dev/null and b/public/img/emoji/kissing_smiling_eyes.png differ
diff --git a/public/img/emoji/koala.png b/public/img/emoji/koala.png
new file mode 100755
index 0000000000..e17bd3cf53
Binary files /dev/null and b/public/img/emoji/koala.png differ
diff --git a/public/img/emoji/koko.png b/public/img/emoji/koko.png
new file mode 100755
index 0000000000..3bef28c9fd
Binary files /dev/null and b/public/img/emoji/koko.png differ
diff --git a/public/img/emoji/kr.png b/public/img/emoji/kr.png
new file mode 100755
index 0000000000..b4c0c1b673
Binary files /dev/null and b/public/img/emoji/kr.png differ
diff --git a/public/img/emoji/large_blue_circle.png b/public/img/emoji/large_blue_circle.png
new file mode 100755
index 0000000000..a5b4ad4aaa
Binary files /dev/null and b/public/img/emoji/large_blue_circle.png differ
diff --git a/public/img/emoji/large_blue_diamond.png b/public/img/emoji/large_blue_diamond.png
new file mode 100755
index 0000000000..f4598ec0f2
Binary files /dev/null and b/public/img/emoji/large_blue_diamond.png differ
diff --git a/public/img/emoji/large_orange_diamond.png b/public/img/emoji/large_orange_diamond.png
new file mode 100755
index 0000000000..803725aad7
Binary files /dev/null and b/public/img/emoji/large_orange_diamond.png differ
diff --git a/public/img/emoji/last_quarter_moon.png b/public/img/emoji/last_quarter_moon.png
new file mode 100755
index 0000000000..6ae30d6c2c
Binary files /dev/null and b/public/img/emoji/last_quarter_moon.png differ
diff --git a/public/img/emoji/last_quarter_moon_with_face.png b/public/img/emoji/last_quarter_moon_with_face.png
new file mode 100755
index 0000000000..9ece82dfec
Binary files /dev/null and b/public/img/emoji/last_quarter_moon_with_face.png differ
diff --git a/public/img/emoji/laughing.png b/public/img/emoji/laughing.png
new file mode 100755
index 0000000000..11c91eb22e
Binary files /dev/null and b/public/img/emoji/laughing.png differ
diff --git a/public/img/emoji/leaves.png b/public/img/emoji/leaves.png
new file mode 100755
index 0000000000..5229e06bdd
Binary files /dev/null and b/public/img/emoji/leaves.png differ
diff --git a/public/img/emoji/ledger.png b/public/img/emoji/ledger.png
new file mode 100755
index 0000000000..e4f72aceac
Binary files /dev/null and b/public/img/emoji/ledger.png differ
diff --git a/public/img/emoji/left_luggage.png b/public/img/emoji/left_luggage.png
new file mode 100755
index 0000000000..1c08b464db
Binary files /dev/null and b/public/img/emoji/left_luggage.png differ
diff --git a/public/img/emoji/left_right_arrow.png b/public/img/emoji/left_right_arrow.png
new file mode 100755
index 0000000000..b9fd11c515
Binary files /dev/null and b/public/img/emoji/left_right_arrow.png differ
diff --git a/public/img/emoji/leftwards_arrow_with_hook.png b/public/img/emoji/leftwards_arrow_with_hook.png
new file mode 100755
index 0000000000..bc45dfefd4
Binary files /dev/null and b/public/img/emoji/leftwards_arrow_with_hook.png differ
diff --git a/public/img/emoji/lemon.png b/public/img/emoji/lemon.png
new file mode 100755
index 0000000000..9814dc9598
Binary files /dev/null and b/public/img/emoji/lemon.png differ
diff --git a/public/img/emoji/leo.png b/public/img/emoji/leo.png
new file mode 100755
index 0000000000..e025933b2f
Binary files /dev/null and b/public/img/emoji/leo.png differ
diff --git a/public/img/emoji/leopard.png b/public/img/emoji/leopard.png
new file mode 100755
index 0000000000..3e738d2d3c
Binary files /dev/null and b/public/img/emoji/leopard.png differ
diff --git a/public/img/emoji/libra.png b/public/img/emoji/libra.png
new file mode 100755
index 0000000000..6f4a927cd0
Binary files /dev/null and b/public/img/emoji/libra.png differ
diff --git a/public/img/emoji/light_rail.png b/public/img/emoji/light_rail.png
new file mode 100755
index 0000000000..bcfe801eec
Binary files /dev/null and b/public/img/emoji/light_rail.png differ
diff --git a/public/img/emoji/link.png b/public/img/emoji/link.png
new file mode 100755
index 0000000000..0239e48e4f
Binary files /dev/null and b/public/img/emoji/link.png differ
diff --git a/public/img/emoji/lips.png b/public/img/emoji/lips.png
new file mode 100755
index 0000000000..826ed1102d
Binary files /dev/null and b/public/img/emoji/lips.png differ
diff --git a/public/img/emoji/lipstick.png b/public/img/emoji/lipstick.png
new file mode 100755
index 0000000000..82f990c567
Binary files /dev/null and b/public/img/emoji/lipstick.png differ
diff --git a/public/img/emoji/lock.png b/public/img/emoji/lock.png
new file mode 100755
index 0000000000..4892b02355
Binary files /dev/null and b/public/img/emoji/lock.png differ
diff --git a/public/img/emoji/lock_with_ink_pen.png b/public/img/emoji/lock_with_ink_pen.png
new file mode 100755
index 0000000000..375e67e825
Binary files /dev/null and b/public/img/emoji/lock_with_ink_pen.png differ
diff --git a/public/img/emoji/lollipop.png b/public/img/emoji/lollipop.png
new file mode 100755
index 0000000000..ba55e7093f
Binary files /dev/null and b/public/img/emoji/lollipop.png differ
diff --git a/public/img/emoji/loop.png b/public/img/emoji/loop.png
new file mode 100755
index 0000000000..ef34df3a40
Binary files /dev/null and b/public/img/emoji/loop.png differ
diff --git a/public/img/emoji/loudspeaker.png b/public/img/emoji/loudspeaker.png
new file mode 100755
index 0000000000..752385e523
Binary files /dev/null and b/public/img/emoji/loudspeaker.png differ
diff --git a/public/img/emoji/love_hotel.png b/public/img/emoji/love_hotel.png
new file mode 100755
index 0000000000..44d7db828a
Binary files /dev/null and b/public/img/emoji/love_hotel.png differ
diff --git a/public/img/emoji/love_letter.png b/public/img/emoji/love_letter.png
new file mode 100755
index 0000000000..e29981f445
Binary files /dev/null and b/public/img/emoji/love_letter.png differ
diff --git a/public/img/emoji/low_brightness.png b/public/img/emoji/low_brightness.png
new file mode 100755
index 0000000000..ea15bde4f0
Binary files /dev/null and b/public/img/emoji/low_brightness.png differ
diff --git a/public/img/emoji/m.png b/public/img/emoji/m.png
new file mode 100755
index 0000000000..7e3a3bffb6
Binary files /dev/null and b/public/img/emoji/m.png differ
diff --git a/public/img/emoji/mag.png b/public/img/emoji/mag.png
new file mode 100755
index 0000000000..aa5b1d7c46
Binary files /dev/null and b/public/img/emoji/mag.png differ
diff --git a/public/img/emoji/mag_right.png b/public/img/emoji/mag_right.png
new file mode 100755
index 0000000000..6e6cf11e6d
Binary files /dev/null and b/public/img/emoji/mag_right.png differ
diff --git a/public/img/emoji/mahjong.png b/public/img/emoji/mahjong.png
new file mode 100755
index 0000000000..f51ce65fdd
Binary files /dev/null and b/public/img/emoji/mahjong.png differ
diff --git a/public/img/emoji/mailbox.png b/public/img/emoji/mailbox.png
new file mode 100755
index 0000000000..8351e70760
Binary files /dev/null and b/public/img/emoji/mailbox.png differ
diff --git a/public/img/emoji/mailbox_closed.png b/public/img/emoji/mailbox_closed.png
new file mode 100755
index 0000000000..a5982b69bb
Binary files /dev/null and b/public/img/emoji/mailbox_closed.png differ
diff --git a/public/img/emoji/mailbox_with_mail.png b/public/img/emoji/mailbox_with_mail.png
new file mode 100755
index 0000000000..dae3459436
Binary files /dev/null and b/public/img/emoji/mailbox_with_mail.png differ
diff --git a/public/img/emoji/mailbox_with_no_mail.png b/public/img/emoji/mailbox_with_no_mail.png
new file mode 100755
index 0000000000..59f15c5d7d
Binary files /dev/null and b/public/img/emoji/mailbox_with_no_mail.png differ
diff --git a/public/img/emoji/man.png b/public/img/emoji/man.png
new file mode 100755
index 0000000000..d9bfa26a67
Binary files /dev/null and b/public/img/emoji/man.png differ
diff --git a/public/img/emoji/man_with_gua_pi_mao.png b/public/img/emoji/man_with_gua_pi_mao.png
new file mode 100755
index 0000000000..7aad74b55e
Binary files /dev/null and b/public/img/emoji/man_with_gua_pi_mao.png differ
diff --git a/public/img/emoji/man_with_turban.png b/public/img/emoji/man_with_turban.png
new file mode 100755
index 0000000000..036604caf2
Binary files /dev/null and b/public/img/emoji/man_with_turban.png differ
diff --git a/public/img/emoji/mans_shoe.png b/public/img/emoji/mans_shoe.png
new file mode 100755
index 0000000000..ecba9ba7d0
Binary files /dev/null and b/public/img/emoji/mans_shoe.png differ
diff --git a/public/img/emoji/maple_leaf.png b/public/img/emoji/maple_leaf.png
new file mode 100755
index 0000000000..4e9b47207d
Binary files /dev/null and b/public/img/emoji/maple_leaf.png differ
diff --git a/public/img/emoji/mask.png b/public/img/emoji/mask.png
new file mode 100755
index 0000000000..05887e99c6
Binary files /dev/null and b/public/img/emoji/mask.png differ
diff --git a/public/img/emoji/massage.png b/public/img/emoji/massage.png
new file mode 100755
index 0000000000..dd30d15975
Binary files /dev/null and b/public/img/emoji/massage.png differ
diff --git a/public/img/emoji/meat_on_bone.png b/public/img/emoji/meat_on_bone.png
new file mode 100755
index 0000000000..5b79a660c6
Binary files /dev/null and b/public/img/emoji/meat_on_bone.png differ
diff --git a/public/img/emoji/mega.png b/public/img/emoji/mega.png
new file mode 100755
index 0000000000..022df2f8d6
Binary files /dev/null and b/public/img/emoji/mega.png differ
diff --git a/public/img/emoji/melon.png b/public/img/emoji/melon.png
new file mode 100755
index 0000000000..11c13cbbd4
Binary files /dev/null and b/public/img/emoji/melon.png differ
diff --git a/public/img/emoji/memo.png b/public/img/emoji/memo.png
new file mode 100755
index 0000000000..fc97ddbc92
Binary files /dev/null and b/public/img/emoji/memo.png differ
diff --git a/public/img/emoji/mens.png b/public/img/emoji/mens.png
new file mode 100755
index 0000000000..abccfc9f2c
Binary files /dev/null and b/public/img/emoji/mens.png differ
diff --git a/public/img/emoji/metal.png b/public/img/emoji/metal.png
new file mode 100755
index 0000000000..94f1fda224
Binary files /dev/null and b/public/img/emoji/metal.png differ
diff --git a/public/img/emoji/metro.png b/public/img/emoji/metro.png
new file mode 100755
index 0000000000..4acf5ab3e2
Binary files /dev/null and b/public/img/emoji/metro.png differ
diff --git a/public/img/emoji/microphone.png b/public/img/emoji/microphone.png
new file mode 100755
index 0000000000..68c74adada
Binary files /dev/null and b/public/img/emoji/microphone.png differ
diff --git a/public/img/emoji/microscope.png b/public/img/emoji/microscope.png
new file mode 100755
index 0000000000..8b7a5e4e67
Binary files /dev/null and b/public/img/emoji/microscope.png differ
diff --git a/public/img/emoji/milky_way.png b/public/img/emoji/milky_way.png
new file mode 100755
index 0000000000..901090a126
Binary files /dev/null and b/public/img/emoji/milky_way.png differ
diff --git a/public/img/emoji/minibus.png b/public/img/emoji/minibus.png
new file mode 100755
index 0000000000..c52cef2340
Binary files /dev/null and b/public/img/emoji/minibus.png differ
diff --git a/public/img/emoji/minidisc.png b/public/img/emoji/minidisc.png
new file mode 100755
index 0000000000..e19cc5d015
Binary files /dev/null and b/public/img/emoji/minidisc.png differ
diff --git a/public/img/emoji/mobile_phone_off.png b/public/img/emoji/mobile_phone_off.png
new file mode 100755
index 0000000000..fa16c763c9
Binary files /dev/null and b/public/img/emoji/mobile_phone_off.png differ
diff --git a/public/img/emoji/money_with_wings.png b/public/img/emoji/money_with_wings.png
new file mode 100755
index 0000000000..581a824490
Binary files /dev/null and b/public/img/emoji/money_with_wings.png differ
diff --git a/public/img/emoji/moneybag.png b/public/img/emoji/moneybag.png
new file mode 100755
index 0000000000..5546c04bad
Binary files /dev/null and b/public/img/emoji/moneybag.png differ
diff --git a/public/img/emoji/monkey.png b/public/img/emoji/monkey.png
new file mode 100755
index 0000000000..6407035977
Binary files /dev/null and b/public/img/emoji/monkey.png differ
diff --git a/public/img/emoji/monkey_face.png b/public/img/emoji/monkey_face.png
new file mode 100755
index 0000000000..6964cf4d51
Binary files /dev/null and b/public/img/emoji/monkey_face.png differ
diff --git a/public/img/emoji/monorail.png b/public/img/emoji/monorail.png
new file mode 100755
index 0000000000..913d300246
Binary files /dev/null and b/public/img/emoji/monorail.png differ
diff --git a/public/img/emoji/mortar_board.png b/public/img/emoji/mortar_board.png
new file mode 100755
index 0000000000..84513f6bac
Binary files /dev/null and b/public/img/emoji/mortar_board.png differ
diff --git a/public/img/emoji/mount_fuji.png b/public/img/emoji/mount_fuji.png
new file mode 100755
index 0000000000..4c313e583f
Binary files /dev/null and b/public/img/emoji/mount_fuji.png differ
diff --git a/public/img/emoji/mountain_bicyclist.png b/public/img/emoji/mountain_bicyclist.png
new file mode 100755
index 0000000000..b698897566
Binary files /dev/null and b/public/img/emoji/mountain_bicyclist.png differ
diff --git a/public/img/emoji/mountain_cableway.png b/public/img/emoji/mountain_cableway.png
new file mode 100755
index 0000000000..5688bb239a
Binary files /dev/null and b/public/img/emoji/mountain_cableway.png differ
diff --git a/public/img/emoji/mountain_railway.png b/public/img/emoji/mountain_railway.png
new file mode 100755
index 0000000000..1f3d1aab56
Binary files /dev/null and b/public/img/emoji/mountain_railway.png differ
diff --git a/public/img/emoji/mouse.png b/public/img/emoji/mouse.png
new file mode 100755
index 0000000000..8ff162e2db
Binary files /dev/null and b/public/img/emoji/mouse.png differ
diff --git a/public/img/emoji/mouse2.png b/public/img/emoji/mouse2.png
new file mode 100755
index 0000000000..2d777e5e1a
Binary files /dev/null and b/public/img/emoji/mouse2.png differ
diff --git a/public/img/emoji/movie_camera.png b/public/img/emoji/movie_camera.png
new file mode 100755
index 0000000000..9c14384092
Binary files /dev/null and b/public/img/emoji/movie_camera.png differ
diff --git a/public/img/emoji/moyai.png b/public/img/emoji/moyai.png
new file mode 100755
index 0000000000..61a1a9c21a
Binary files /dev/null and b/public/img/emoji/moyai.png differ
diff --git a/public/img/emoji/muscle.png b/public/img/emoji/muscle.png
new file mode 100755
index 0000000000..19f92efb66
Binary files /dev/null and b/public/img/emoji/muscle.png differ
diff --git a/public/img/emoji/mushroom.png b/public/img/emoji/mushroom.png
new file mode 100755
index 0000000000..5eeed8e790
Binary files /dev/null and b/public/img/emoji/mushroom.png differ
diff --git a/public/img/emoji/musical_keyboard.png b/public/img/emoji/musical_keyboard.png
new file mode 100755
index 0000000000..93647a4a32
Binary files /dev/null and b/public/img/emoji/musical_keyboard.png differ
diff --git a/public/img/emoji/musical_note.png b/public/img/emoji/musical_note.png
new file mode 100755
index 0000000000..68b261bcba
Binary files /dev/null and b/public/img/emoji/musical_note.png differ
diff --git a/public/img/emoji/musical_score.png b/public/img/emoji/musical_score.png
new file mode 100755
index 0000000000..c99e3381f1
Binary files /dev/null and b/public/img/emoji/musical_score.png differ
diff --git a/public/img/emoji/mute.png b/public/img/emoji/mute.png
new file mode 100755
index 0000000000..4cf67c367d
Binary files /dev/null and b/public/img/emoji/mute.png differ
diff --git a/public/img/emoji/nail_care.png b/public/img/emoji/nail_care.png
new file mode 100755
index 0000000000..6a66e63d2a
Binary files /dev/null and b/public/img/emoji/nail_care.png differ
diff --git a/public/img/emoji/name_badge.png b/public/img/emoji/name_badge.png
new file mode 100755
index 0000000000..2b712dcd55
Binary files /dev/null and b/public/img/emoji/name_badge.png differ
diff --git a/public/img/emoji/neckbeard.png b/public/img/emoji/neckbeard.png
new file mode 100755
index 0000000000..6e31d16528
Binary files /dev/null and b/public/img/emoji/neckbeard.png differ
diff --git a/public/img/emoji/necktie.png b/public/img/emoji/necktie.png
new file mode 100755
index 0000000000..80461c66f3
Binary files /dev/null and b/public/img/emoji/necktie.png differ
diff --git a/public/img/emoji/negative_squared_cross_mark.png b/public/img/emoji/negative_squared_cross_mark.png
new file mode 100755
index 0000000000..b47a0cece5
Binary files /dev/null and b/public/img/emoji/negative_squared_cross_mark.png differ
diff --git a/public/img/emoji/neutral_face.png b/public/img/emoji/neutral_face.png
new file mode 100755
index 0000000000..682a1ba066
Binary files /dev/null and b/public/img/emoji/neutral_face.png differ
diff --git a/public/img/emoji/new.png b/public/img/emoji/new.png
new file mode 100755
index 0000000000..28d1570e0a
Binary files /dev/null and b/public/img/emoji/new.png differ
diff --git a/public/img/emoji/new_moon.png b/public/img/emoji/new_moon.png
new file mode 100755
index 0000000000..72492cb903
Binary files /dev/null and b/public/img/emoji/new_moon.png differ
diff --git a/public/img/emoji/new_moon_with_face.png b/public/img/emoji/new_moon_with_face.png
new file mode 100755
index 0000000000..21a696eb99
Binary files /dev/null and b/public/img/emoji/new_moon_with_face.png differ
diff --git a/public/img/emoji/newspaper.png b/public/img/emoji/newspaper.png
new file mode 100755
index 0000000000..60c3394dc4
Binary files /dev/null and b/public/img/emoji/newspaper.png differ
diff --git a/public/img/emoji/ng.png b/public/img/emoji/ng.png
new file mode 100755
index 0000000000..2ca180ae39
Binary files /dev/null and b/public/img/emoji/ng.png differ
diff --git a/public/img/emoji/nine.png b/public/img/emoji/nine.png
new file mode 100755
index 0000000000..8006cc909f
Binary files /dev/null and b/public/img/emoji/nine.png differ
diff --git a/public/img/emoji/no_bell.png b/public/img/emoji/no_bell.png
new file mode 100755
index 0000000000..613b81cd21
Binary files /dev/null and b/public/img/emoji/no_bell.png differ
diff --git a/public/img/emoji/no_bicycles.png b/public/img/emoji/no_bicycles.png
new file mode 100755
index 0000000000..4b26216645
Binary files /dev/null and b/public/img/emoji/no_bicycles.png differ
diff --git a/public/img/emoji/no_entry.png b/public/img/emoji/no_entry.png
new file mode 100755
index 0000000000..cf2086a8e7
Binary files /dev/null and b/public/img/emoji/no_entry.png differ
diff --git a/public/img/emoji/no_entry_sign.png b/public/img/emoji/no_entry_sign.png
new file mode 100755
index 0000000000..b3231f66d4
Binary files /dev/null and b/public/img/emoji/no_entry_sign.png differ
diff --git a/public/img/emoji/no_good.png b/public/img/emoji/no_good.png
new file mode 100755
index 0000000000..d459a35bc1
Binary files /dev/null and b/public/img/emoji/no_good.png differ
diff --git a/public/img/emoji/no_mobile_phones.png b/public/img/emoji/no_mobile_phones.png
new file mode 100755
index 0000000000..41df57cf82
Binary files /dev/null and b/public/img/emoji/no_mobile_phones.png differ
diff --git a/public/img/emoji/no_mouth.png b/public/img/emoji/no_mouth.png
new file mode 100755
index 0000000000..e67802046a
Binary files /dev/null and b/public/img/emoji/no_mouth.png differ
diff --git a/public/img/emoji/no_pedestrians.png b/public/img/emoji/no_pedestrians.png
new file mode 100755
index 0000000000..53ee0f9275
Binary files /dev/null and b/public/img/emoji/no_pedestrians.png differ
diff --git a/public/img/emoji/no_smoking.png b/public/img/emoji/no_smoking.png
new file mode 100755
index 0000000000..5880ddfd18
Binary files /dev/null and b/public/img/emoji/no_smoking.png differ
diff --git a/public/img/emoji/non-potable_water.png b/public/img/emoji/non-potable_water.png
new file mode 100755
index 0000000000..1b29d35b98
Binary files /dev/null and b/public/img/emoji/non-potable_water.png differ
diff --git a/public/img/emoji/nose.png b/public/img/emoji/nose.png
new file mode 100755
index 0000000000..ad17c16c29
Binary files /dev/null and b/public/img/emoji/nose.png differ
diff --git a/public/img/emoji/notebook.png b/public/img/emoji/notebook.png
new file mode 100755
index 0000000000..5f0a5f6a25
Binary files /dev/null and b/public/img/emoji/notebook.png differ
diff --git a/public/img/emoji/notebook_with_decorative_cover.png b/public/img/emoji/notebook_with_decorative_cover.png
new file mode 100755
index 0000000000..4f3b14c85f
Binary files /dev/null and b/public/img/emoji/notebook_with_decorative_cover.png differ
diff --git a/public/img/emoji/notes.png b/public/img/emoji/notes.png
new file mode 100755
index 0000000000..0956d6ab2a
Binary files /dev/null and b/public/img/emoji/notes.png differ
diff --git a/public/img/emoji/nut_and_bolt.png b/public/img/emoji/nut_and_bolt.png
new file mode 100755
index 0000000000..bddfa72a7d
Binary files /dev/null and b/public/img/emoji/nut_and_bolt.png differ
diff --git a/public/img/emoji/o.png b/public/img/emoji/o.png
new file mode 100755
index 0000000000..1ff846c191
Binary files /dev/null and b/public/img/emoji/o.png differ
diff --git a/public/img/emoji/o2.png b/public/img/emoji/o2.png
new file mode 100755
index 0000000000..d85f9fb98c
Binary files /dev/null and b/public/img/emoji/o2.png differ
diff --git a/public/img/emoji/ocean.png b/public/img/emoji/ocean.png
new file mode 100755
index 0000000000..f8d520cd49
Binary files /dev/null and b/public/img/emoji/ocean.png differ
diff --git a/public/img/emoji/octocat.png b/public/img/emoji/octocat.png
new file mode 100755
index 0000000000..d296f25fe0
Binary files /dev/null and b/public/img/emoji/octocat.png differ
diff --git a/public/img/emoji/octopus.png b/public/img/emoji/octopus.png
new file mode 100755
index 0000000000..52ce64b468
Binary files /dev/null and b/public/img/emoji/octopus.png differ
diff --git a/public/img/emoji/oden.png b/public/img/emoji/oden.png
new file mode 100755
index 0000000000..73add1c73c
Binary files /dev/null and b/public/img/emoji/oden.png differ
diff --git a/public/img/emoji/office.png b/public/img/emoji/office.png
new file mode 100755
index 0000000000..53c3ef8d12
Binary files /dev/null and b/public/img/emoji/office.png differ
diff --git a/public/img/emoji/ok.png b/public/img/emoji/ok.png
new file mode 100755
index 0000000000..6433d1a90a
Binary files /dev/null and b/public/img/emoji/ok.png differ
diff --git a/public/img/emoji/ok_hand.png b/public/img/emoji/ok_hand.png
new file mode 100755
index 0000000000..80c5aebb68
Binary files /dev/null and b/public/img/emoji/ok_hand.png differ
diff --git a/public/img/emoji/ok_woman.png b/public/img/emoji/ok_woman.png
new file mode 100755
index 0000000000..e8b98194ed
Binary files /dev/null and b/public/img/emoji/ok_woman.png differ
diff --git a/public/img/emoji/older_man.png b/public/img/emoji/older_man.png
new file mode 100755
index 0000000000..149f0cfb8e
Binary files /dev/null and b/public/img/emoji/older_man.png differ
diff --git a/public/img/emoji/older_woman.png b/public/img/emoji/older_woman.png
new file mode 100755
index 0000000000..f839565f47
Binary files /dev/null and b/public/img/emoji/older_woman.png differ
diff --git a/public/img/emoji/on.png b/public/img/emoji/on.png
new file mode 100755
index 0000000000..4cd69a15de
Binary files /dev/null and b/public/img/emoji/on.png differ
diff --git a/public/img/emoji/oncoming_automobile.png b/public/img/emoji/oncoming_automobile.png
new file mode 100755
index 0000000000..cb46de22cb
Binary files /dev/null and b/public/img/emoji/oncoming_automobile.png differ
diff --git a/public/img/emoji/oncoming_bus.png b/public/img/emoji/oncoming_bus.png
new file mode 100755
index 0000000000..3695f76235
Binary files /dev/null and b/public/img/emoji/oncoming_bus.png differ
diff --git a/public/img/emoji/oncoming_police_car.png b/public/img/emoji/oncoming_police_car.png
new file mode 100755
index 0000000000..af20e7eff0
Binary files /dev/null and b/public/img/emoji/oncoming_police_car.png differ
diff --git a/public/img/emoji/oncoming_taxi.png b/public/img/emoji/oncoming_taxi.png
new file mode 100755
index 0000000000..f78cf3103b
Binary files /dev/null and b/public/img/emoji/oncoming_taxi.png differ
diff --git a/public/img/emoji/one.png b/public/img/emoji/one.png
new file mode 100755
index 0000000000..2d1f9f8c49
Binary files /dev/null and b/public/img/emoji/one.png differ
diff --git a/public/img/emoji/open_file_folder.png b/public/img/emoji/open_file_folder.png
new file mode 100755
index 0000000000..2bbbbf5e7c
Binary files /dev/null and b/public/img/emoji/open_file_folder.png differ
diff --git a/public/img/emoji/open_hands.png b/public/img/emoji/open_hands.png
new file mode 100755
index 0000000000..cef9f428bc
Binary files /dev/null and b/public/img/emoji/open_hands.png differ
diff --git a/public/img/emoji/open_mouth.png b/public/img/emoji/open_mouth.png
new file mode 100755
index 0000000000..daf914274a
Binary files /dev/null and b/public/img/emoji/open_mouth.png differ
diff --git a/public/img/emoji/ophiuchus.png b/public/img/emoji/ophiuchus.png
new file mode 100755
index 0000000000..4eef715bc2
Binary files /dev/null and b/public/img/emoji/ophiuchus.png differ
diff --git a/public/img/emoji/orange_book.png b/public/img/emoji/orange_book.png
new file mode 100755
index 0000000000..49650d59e5
Binary files /dev/null and b/public/img/emoji/orange_book.png differ
diff --git a/public/img/emoji/outbox_tray.png b/public/img/emoji/outbox_tray.png
new file mode 100755
index 0000000000..7ad15e649d
Binary files /dev/null and b/public/img/emoji/outbox_tray.png differ
diff --git a/public/img/emoji/ox.png b/public/img/emoji/ox.png
new file mode 100755
index 0000000000..8d98194625
Binary files /dev/null and b/public/img/emoji/ox.png differ
diff --git a/public/img/emoji/package.png b/public/img/emoji/package.png
new file mode 100755
index 0000000000..26602af9d8
Binary files /dev/null and b/public/img/emoji/package.png differ
diff --git a/public/img/emoji/page_facing_up.png b/public/img/emoji/page_facing_up.png
new file mode 100755
index 0000000000..804c0d739f
Binary files /dev/null and b/public/img/emoji/page_facing_up.png differ
diff --git a/public/img/emoji/page_with_curl.png b/public/img/emoji/page_with_curl.png
new file mode 100755
index 0000000000..37cb4de50c
Binary files /dev/null and b/public/img/emoji/page_with_curl.png differ
diff --git a/public/img/emoji/pager.png b/public/img/emoji/pager.png
new file mode 100755
index 0000000000..e3e1fc44ee
Binary files /dev/null and b/public/img/emoji/pager.png differ
diff --git a/public/img/emoji/palm_tree.png b/public/img/emoji/palm_tree.png
new file mode 100755
index 0000000000..d13b7c6206
Binary files /dev/null and b/public/img/emoji/palm_tree.png differ
diff --git a/public/img/emoji/panda_face.png b/public/img/emoji/panda_face.png
new file mode 100755
index 0000000000..a794fb17f6
Binary files /dev/null and b/public/img/emoji/panda_face.png differ
diff --git a/public/img/emoji/paperclip.png b/public/img/emoji/paperclip.png
new file mode 100755
index 0000000000..677669a83d
Binary files /dev/null and b/public/img/emoji/paperclip.png differ
diff --git a/public/img/emoji/parking.png b/public/img/emoji/parking.png
new file mode 100755
index 0000000000..c24af81ccf
Binary files /dev/null and b/public/img/emoji/parking.png differ
diff --git a/public/img/emoji/part_alternation_mark.png b/public/img/emoji/part_alternation_mark.png
new file mode 100755
index 0000000000..1e5855f8d5
Binary files /dev/null and b/public/img/emoji/part_alternation_mark.png differ
diff --git a/public/img/emoji/partly_sunny.png b/public/img/emoji/partly_sunny.png
new file mode 100755
index 0000000000..b3f5bcfdd0
Binary files /dev/null and b/public/img/emoji/partly_sunny.png differ
diff --git a/public/img/emoji/passport_control.png b/public/img/emoji/passport_control.png
new file mode 100755
index 0000000000..675b76d378
Binary files /dev/null and b/public/img/emoji/passport_control.png differ
diff --git a/public/img/emoji/paw_prints.png b/public/img/emoji/paw_prints.png
new file mode 100755
index 0000000000..89b9fec9ef
Binary files /dev/null and b/public/img/emoji/paw_prints.png differ
diff --git a/public/img/emoji/peach.png b/public/img/emoji/peach.png
new file mode 100755
index 0000000000..ee2139ecb8
Binary files /dev/null and b/public/img/emoji/peach.png differ
diff --git a/public/img/emoji/pear.png b/public/img/emoji/pear.png
new file mode 100755
index 0000000000..f24aca8c0a
Binary files /dev/null and b/public/img/emoji/pear.png differ
diff --git a/public/img/emoji/pencil.png b/public/img/emoji/pencil.png
new file mode 100755
index 0000000000..fc97ddbc92
Binary files /dev/null and b/public/img/emoji/pencil.png differ
diff --git a/public/img/emoji/pencil2.png b/public/img/emoji/pencil2.png
new file mode 100755
index 0000000000..64c2d9b79b
Binary files /dev/null and b/public/img/emoji/pencil2.png differ
diff --git a/public/img/emoji/penguin.png b/public/img/emoji/penguin.png
new file mode 100755
index 0000000000..d8edbcb8fa
Binary files /dev/null and b/public/img/emoji/penguin.png differ
diff --git a/public/img/emoji/pensive.png b/public/img/emoji/pensive.png
new file mode 100755
index 0000000000..4159f3c42f
Binary files /dev/null and b/public/img/emoji/pensive.png differ
diff --git a/public/img/emoji/performing_arts.png b/public/img/emoji/performing_arts.png
new file mode 100755
index 0000000000..899fbe5a79
Binary files /dev/null and b/public/img/emoji/performing_arts.png differ
diff --git a/public/img/emoji/persevere.png b/public/img/emoji/persevere.png
new file mode 100755
index 0000000000..f99f6da47c
Binary files /dev/null and b/public/img/emoji/persevere.png differ
diff --git a/public/img/emoji/person_frowning.png b/public/img/emoji/person_frowning.png
new file mode 100755
index 0000000000..6f34d5e159
Binary files /dev/null and b/public/img/emoji/person_frowning.png differ
diff --git a/public/img/emoji/person_with_blond_hair.png b/public/img/emoji/person_with_blond_hair.png
new file mode 100755
index 0000000000..c144301cbb
Binary files /dev/null and b/public/img/emoji/person_with_blond_hair.png differ
diff --git a/public/img/emoji/person_with_pouting_face.png b/public/img/emoji/person_with_pouting_face.png
new file mode 100755
index 0000000000..c4a95c3b2a
Binary files /dev/null and b/public/img/emoji/person_with_pouting_face.png differ
diff --git a/public/img/emoji/phone.png b/public/img/emoji/phone.png
new file mode 100755
index 0000000000..87d2559b55
Binary files /dev/null and b/public/img/emoji/phone.png differ
diff --git a/public/img/emoji/pig.png b/public/img/emoji/pig.png
new file mode 100755
index 0000000000..f7f273c733
Binary files /dev/null and b/public/img/emoji/pig.png differ
diff --git a/public/img/emoji/pig2.png b/public/img/emoji/pig2.png
new file mode 100755
index 0000000000..fec3374d70
Binary files /dev/null and b/public/img/emoji/pig2.png differ
diff --git a/public/img/emoji/pig_nose.png b/public/img/emoji/pig_nose.png
new file mode 100755
index 0000000000..38d612446e
Binary files /dev/null and b/public/img/emoji/pig_nose.png differ
diff --git a/public/img/emoji/pill.png b/public/img/emoji/pill.png
new file mode 100755
index 0000000000..cd84a78ff7
Binary files /dev/null and b/public/img/emoji/pill.png differ
diff --git a/public/img/emoji/pineapple.png b/public/img/emoji/pineapple.png
new file mode 100755
index 0000000000..d6f8e28769
Binary files /dev/null and b/public/img/emoji/pineapple.png differ
diff --git a/public/img/emoji/pisces.png b/public/img/emoji/pisces.png
new file mode 100755
index 0000000000..6db2c3d504
Binary files /dev/null and b/public/img/emoji/pisces.png differ
diff --git a/public/img/emoji/pizza.png b/public/img/emoji/pizza.png
new file mode 100755
index 0000000000..460367d02c
Binary files /dev/null and b/public/img/emoji/pizza.png differ
diff --git a/public/img/emoji/plus1.png b/public/img/emoji/plus1.png
new file mode 100755
index 0000000000..81786c1d8f
Binary files /dev/null and b/public/img/emoji/plus1.png differ
diff --git a/public/img/emoji/point_down.png b/public/img/emoji/point_down.png
new file mode 100755
index 0000000000..658c6d9187
Binary files /dev/null and b/public/img/emoji/point_down.png differ
diff --git a/public/img/emoji/point_left.png b/public/img/emoji/point_left.png
new file mode 100755
index 0000000000..38a99b43f7
Binary files /dev/null and b/public/img/emoji/point_left.png differ
diff --git a/public/img/emoji/point_right.png b/public/img/emoji/point_right.png
new file mode 100755
index 0000000000..6f9f029a42
Binary files /dev/null and b/public/img/emoji/point_right.png differ
diff --git a/public/img/emoji/point_up.png b/public/img/emoji/point_up.png
new file mode 100755
index 0000000000..01896e214a
Binary files /dev/null and b/public/img/emoji/point_up.png differ
diff --git a/public/img/emoji/point_up_2.png b/public/img/emoji/point_up_2.png
new file mode 100755
index 0000000000..1cfe73672c
Binary files /dev/null and b/public/img/emoji/point_up_2.png differ
diff --git a/public/img/emoji/police_car.png b/public/img/emoji/police_car.png
new file mode 100755
index 0000000000..b8f17275ee
Binary files /dev/null and b/public/img/emoji/police_car.png differ
diff --git a/public/img/emoji/poodle.png b/public/img/emoji/poodle.png
new file mode 100755
index 0000000000..adac80bd97
Binary files /dev/null and b/public/img/emoji/poodle.png differ
diff --git a/public/img/emoji/poop.png b/public/img/emoji/poop.png
new file mode 100755
index 0000000000..73a4dc8400
Binary files /dev/null and b/public/img/emoji/poop.png differ
diff --git a/public/img/emoji/post_office.png b/public/img/emoji/post_office.png
new file mode 100755
index 0000000000..43b59e30ec
Binary files /dev/null and b/public/img/emoji/post_office.png differ
diff --git a/public/img/emoji/postal_horn.png b/public/img/emoji/postal_horn.png
new file mode 100755
index 0000000000..13a151418f
Binary files /dev/null and b/public/img/emoji/postal_horn.png differ
diff --git a/public/img/emoji/postbox.png b/public/img/emoji/postbox.png
new file mode 100755
index 0000000000..ce04b7008b
Binary files /dev/null and b/public/img/emoji/postbox.png differ
diff --git a/public/img/emoji/potable_water.png b/public/img/emoji/potable_water.png
new file mode 100755
index 0000000000..e9fd56079c
Binary files /dev/null and b/public/img/emoji/potable_water.png differ
diff --git a/public/img/emoji/pouch.png b/public/img/emoji/pouch.png
new file mode 100755
index 0000000000..dc35ae8e5f
Binary files /dev/null and b/public/img/emoji/pouch.png differ
diff --git a/public/img/emoji/poultry_leg.png b/public/img/emoji/poultry_leg.png
new file mode 100755
index 0000000000..43ad859651
Binary files /dev/null and b/public/img/emoji/poultry_leg.png differ
diff --git a/public/img/emoji/pound.png b/public/img/emoji/pound.png
new file mode 100755
index 0000000000..f8be91d7a4
Binary files /dev/null and b/public/img/emoji/pound.png differ
diff --git a/public/img/emoji/pouting_cat.png b/public/img/emoji/pouting_cat.png
new file mode 100755
index 0000000000..4325fd48dd
Binary files /dev/null and b/public/img/emoji/pouting_cat.png differ
diff --git a/public/img/emoji/pray.png b/public/img/emoji/pray.png
new file mode 100755
index 0000000000..f86c992d5a
Binary files /dev/null and b/public/img/emoji/pray.png differ
diff --git a/public/img/emoji/princess.png b/public/img/emoji/princess.png
new file mode 100755
index 0000000000..1ebb2ce9b1
Binary files /dev/null and b/public/img/emoji/princess.png differ
diff --git a/public/img/emoji/punch.png b/public/img/emoji/punch.png
new file mode 100755
index 0000000000..277047b7c4
Binary files /dev/null and b/public/img/emoji/punch.png differ
diff --git a/public/img/emoji/purple_heart.png b/public/img/emoji/purple_heart.png
new file mode 100755
index 0000000000..d5f875043f
Binary files /dev/null and b/public/img/emoji/purple_heart.png differ
diff --git a/public/img/emoji/purse.png b/public/img/emoji/purse.png
new file mode 100755
index 0000000000..8f06a2b932
Binary files /dev/null and b/public/img/emoji/purse.png differ
diff --git a/public/img/emoji/pushpin.png b/public/img/emoji/pushpin.png
new file mode 100755
index 0000000000..540c4ecb88
Binary files /dev/null and b/public/img/emoji/pushpin.png differ
diff --git a/public/img/emoji/put_litter_in_its_place.png b/public/img/emoji/put_litter_in_its_place.png
new file mode 100755
index 0000000000..c2e350c2dc
Binary files /dev/null and b/public/img/emoji/put_litter_in_its_place.png differ
diff --git a/public/img/emoji/question.png b/public/img/emoji/question.png
new file mode 100755
index 0000000000..38cedf560f
Binary files /dev/null and b/public/img/emoji/question.png differ
diff --git a/public/img/emoji/rabbit.png b/public/img/emoji/rabbit.png
new file mode 100755
index 0000000000..5cb3ef6f0c
Binary files /dev/null and b/public/img/emoji/rabbit.png differ
diff --git a/public/img/emoji/rabbit2.png b/public/img/emoji/rabbit2.png
new file mode 100755
index 0000000000..a9fd24dc14
Binary files /dev/null and b/public/img/emoji/rabbit2.png differ
diff --git a/public/img/emoji/racehorse.png b/public/img/emoji/racehorse.png
new file mode 100755
index 0000000000..4d09c64de7
Binary files /dev/null and b/public/img/emoji/racehorse.png differ
diff --git a/public/img/emoji/radio.png b/public/img/emoji/radio.png
new file mode 100755
index 0000000000..ea589efe32
Binary files /dev/null and b/public/img/emoji/radio.png differ
diff --git a/public/img/emoji/radio_button.png b/public/img/emoji/radio_button.png
new file mode 100755
index 0000000000..63755eec25
Binary files /dev/null and b/public/img/emoji/radio_button.png differ
diff --git a/public/img/emoji/rage.png b/public/img/emoji/rage.png
new file mode 100755
index 0000000000..c65ddff552
Binary files /dev/null and b/public/img/emoji/rage.png differ
diff --git a/public/img/emoji/rage1.png b/public/img/emoji/rage1.png
new file mode 100755
index 0000000000..1506ba4032
Binary files /dev/null and b/public/img/emoji/rage1.png differ
diff --git a/public/img/emoji/rage2.png b/public/img/emoji/rage2.png
new file mode 100755
index 0000000000..f792e063b4
Binary files /dev/null and b/public/img/emoji/rage2.png differ
diff --git a/public/img/emoji/rage3.png b/public/img/emoji/rage3.png
new file mode 100755
index 0000000000..58764cbcb3
Binary files /dev/null and b/public/img/emoji/rage3.png differ
diff --git a/public/img/emoji/rage4.png b/public/img/emoji/rage4.png
new file mode 100755
index 0000000000..c726c94a29
Binary files /dev/null and b/public/img/emoji/rage4.png differ
diff --git a/public/img/emoji/railway_car.png b/public/img/emoji/railway_car.png
new file mode 100755
index 0000000000..22361158fb
Binary files /dev/null and b/public/img/emoji/railway_car.png differ
diff --git a/public/img/emoji/rainbow.png b/public/img/emoji/rainbow.png
new file mode 100755
index 0000000000..6b1faa0379
Binary files /dev/null and b/public/img/emoji/rainbow.png differ
diff --git a/public/img/emoji/raised_hand.png b/public/img/emoji/raised_hand.png
new file mode 100755
index 0000000000..5e45c25a56
Binary files /dev/null and b/public/img/emoji/raised_hand.png differ
diff --git a/public/img/emoji/raised_hands.png b/public/img/emoji/raised_hands.png
new file mode 100755
index 0000000000..e03142bdce
Binary files /dev/null and b/public/img/emoji/raised_hands.png differ
diff --git a/public/img/emoji/raising_hand.png b/public/img/emoji/raising_hand.png
new file mode 100755
index 0000000000..e1741a40e7
Binary files /dev/null and b/public/img/emoji/raising_hand.png differ
diff --git a/public/img/emoji/ram.png b/public/img/emoji/ram.png
new file mode 100755
index 0000000000..5ea7bfbc0d
Binary files /dev/null and b/public/img/emoji/ram.png differ
diff --git a/public/img/emoji/ramen.png b/public/img/emoji/ramen.png
new file mode 100755
index 0000000000..78dc7d537f
Binary files /dev/null and b/public/img/emoji/ramen.png differ
diff --git a/public/img/emoji/rat.png b/public/img/emoji/rat.png
new file mode 100755
index 0000000000..fa7dd401c5
Binary files /dev/null and b/public/img/emoji/rat.png differ
diff --git a/public/img/emoji/recycle.png b/public/img/emoji/recycle.png
new file mode 100755
index 0000000000..99104c0e9c
Binary files /dev/null and b/public/img/emoji/recycle.png differ
diff --git a/public/img/emoji/red_car.png b/public/img/emoji/red_car.png
new file mode 100755
index 0000000000..d70a2f0626
Binary files /dev/null and b/public/img/emoji/red_car.png differ
diff --git a/public/img/emoji/red_circle.png b/public/img/emoji/red_circle.png
new file mode 100755
index 0000000000..b391289b20
Binary files /dev/null and b/public/img/emoji/red_circle.png differ
diff --git a/public/img/emoji/registered.png b/public/img/emoji/registered.png
new file mode 100755
index 0000000000..31c68a80b0
Binary files /dev/null and b/public/img/emoji/registered.png differ
diff --git a/public/img/emoji/relaxed.png b/public/img/emoji/relaxed.png
new file mode 100755
index 0000000000..bbab82d3bb
Binary files /dev/null and b/public/img/emoji/relaxed.png differ
diff --git a/public/img/emoji/relieved.png b/public/img/emoji/relieved.png
new file mode 100755
index 0000000000..fe5629f431
Binary files /dev/null and b/public/img/emoji/relieved.png differ
diff --git a/public/img/emoji/repeat.png b/public/img/emoji/repeat.png
new file mode 100755
index 0000000000..80113b6929
Binary files /dev/null and b/public/img/emoji/repeat.png differ
diff --git a/public/img/emoji/repeat_one.png b/public/img/emoji/repeat_one.png
new file mode 100755
index 0000000000..3c47bcc1f3
Binary files /dev/null and b/public/img/emoji/repeat_one.png differ
diff --git a/public/img/emoji/restroom.png b/public/img/emoji/restroom.png
new file mode 100755
index 0000000000..d6c111b29b
Binary files /dev/null and b/public/img/emoji/restroom.png differ
diff --git a/public/img/emoji/revolving_hearts.png b/public/img/emoji/revolving_hearts.png
new file mode 100755
index 0000000000..ea3317c47f
Binary files /dev/null and b/public/img/emoji/revolving_hearts.png differ
diff --git a/public/img/emoji/rewind.png b/public/img/emoji/rewind.png
new file mode 100755
index 0000000000..26289dc3d2
Binary files /dev/null and b/public/img/emoji/rewind.png differ
diff --git a/public/img/emoji/ribbon.png b/public/img/emoji/ribbon.png
new file mode 100755
index 0000000000..63ee5ba5af
Binary files /dev/null and b/public/img/emoji/ribbon.png differ
diff --git a/public/img/emoji/rice.png b/public/img/emoji/rice.png
new file mode 100755
index 0000000000..1fd22027bc
Binary files /dev/null and b/public/img/emoji/rice.png differ
diff --git a/public/img/emoji/rice_ball.png b/public/img/emoji/rice_ball.png
new file mode 100755
index 0000000000..ade7c45d3b
Binary files /dev/null and b/public/img/emoji/rice_ball.png differ
diff --git a/public/img/emoji/rice_cracker.png b/public/img/emoji/rice_cracker.png
new file mode 100755
index 0000000000..954c901e93
Binary files /dev/null and b/public/img/emoji/rice_cracker.png differ
diff --git a/public/img/emoji/rice_scene.png b/public/img/emoji/rice_scene.png
new file mode 100755
index 0000000000..14361988db
Binary files /dev/null and b/public/img/emoji/rice_scene.png differ
diff --git a/public/img/emoji/ring.png b/public/img/emoji/ring.png
new file mode 100755
index 0000000000..8a57fd68ba
Binary files /dev/null and b/public/img/emoji/ring.png differ
diff --git a/public/img/emoji/rocket.png b/public/img/emoji/rocket.png
new file mode 100755
index 0000000000..783078d379
Binary files /dev/null and b/public/img/emoji/rocket.png differ
diff --git a/public/img/emoji/roller_coaster.png b/public/img/emoji/roller_coaster.png
new file mode 100755
index 0000000000..9180b9861d
Binary files /dev/null and b/public/img/emoji/roller_coaster.png differ
diff --git a/public/img/emoji/rooster.png b/public/img/emoji/rooster.png
new file mode 100755
index 0000000000..fab23ad362
Binary files /dev/null and b/public/img/emoji/rooster.png differ
diff --git a/public/img/emoji/rose.png b/public/img/emoji/rose.png
new file mode 100755
index 0000000000..3479fbcbbd
Binary files /dev/null and b/public/img/emoji/rose.png differ
diff --git a/public/img/emoji/rotating_light.png b/public/img/emoji/rotating_light.png
new file mode 100755
index 0000000000..6cf4a775e0
Binary files /dev/null and b/public/img/emoji/rotating_light.png differ
diff --git a/public/img/emoji/round_pushpin.png b/public/img/emoji/round_pushpin.png
new file mode 100755
index 0000000000..e498e92cf6
Binary files /dev/null and b/public/img/emoji/round_pushpin.png differ
diff --git a/public/img/emoji/rowboat.png b/public/img/emoji/rowboat.png
new file mode 100755
index 0000000000..e370d0fb1d
Binary files /dev/null and b/public/img/emoji/rowboat.png differ
diff --git a/public/img/emoji/ru.png b/public/img/emoji/ru.png
new file mode 100755
index 0000000000..55fcf3549e
Binary files /dev/null and b/public/img/emoji/ru.png differ
diff --git a/public/img/emoji/rugby_football.png b/public/img/emoji/rugby_football.png
new file mode 100755
index 0000000000..f8db67d701
Binary files /dev/null and b/public/img/emoji/rugby_football.png differ
diff --git a/public/img/emoji/runner.png b/public/img/emoji/runner.png
new file mode 100755
index 0000000000..cb00429623
Binary files /dev/null and b/public/img/emoji/runner.png differ
diff --git a/public/img/emoji/running.png b/public/img/emoji/running.png
new file mode 100755
index 0000000000..cb00429623
Binary files /dev/null and b/public/img/emoji/running.png differ
diff --git a/public/img/emoji/running_shirt_with_sash.png b/public/img/emoji/running_shirt_with_sash.png
new file mode 100755
index 0000000000..0d68bba091
Binary files /dev/null and b/public/img/emoji/running_shirt_with_sash.png differ
diff --git a/public/img/emoji/sa.png b/public/img/emoji/sa.png
new file mode 100755
index 0000000000..387f098b99
Binary files /dev/null and b/public/img/emoji/sa.png differ
diff --git a/public/img/emoji/sagittarius.png b/public/img/emoji/sagittarius.png
new file mode 100755
index 0000000000..8b5435baaa
Binary files /dev/null and b/public/img/emoji/sagittarius.png differ
diff --git a/public/img/emoji/sailboat.png b/public/img/emoji/sailboat.png
new file mode 100755
index 0000000000..ff656dc62b
Binary files /dev/null and b/public/img/emoji/sailboat.png differ
diff --git a/public/img/emoji/sake.png b/public/img/emoji/sake.png
new file mode 100755
index 0000000000..1f69907e58
Binary files /dev/null and b/public/img/emoji/sake.png differ
diff --git a/public/img/emoji/sandal.png b/public/img/emoji/sandal.png
new file mode 100755
index 0000000000..0bb3f663f5
Binary files /dev/null and b/public/img/emoji/sandal.png differ
diff --git a/public/img/emoji/santa.png b/public/img/emoji/santa.png
new file mode 100755
index 0000000000..a2240c07e7
Binary files /dev/null and b/public/img/emoji/santa.png differ
diff --git a/public/img/emoji/satellite.png b/public/img/emoji/satellite.png
new file mode 100755
index 0000000000..3481cc2ef4
Binary files /dev/null and b/public/img/emoji/satellite.png differ
diff --git a/public/img/emoji/satisfied.png b/public/img/emoji/satisfied.png
new file mode 100755
index 0000000000..11c91eb22e
Binary files /dev/null and b/public/img/emoji/satisfied.png differ
diff --git a/public/img/emoji/saxophone.png b/public/img/emoji/saxophone.png
new file mode 100755
index 0000000000..011559a767
Binary files /dev/null and b/public/img/emoji/saxophone.png differ
diff --git a/public/img/emoji/school.png b/public/img/emoji/school.png
new file mode 100755
index 0000000000..afd922bf13
Binary files /dev/null and b/public/img/emoji/school.png differ
diff --git a/public/img/emoji/school_satchel.png b/public/img/emoji/school_satchel.png
new file mode 100755
index 0000000000..edfb19aec9
Binary files /dev/null and b/public/img/emoji/school_satchel.png differ
diff --git a/public/img/emoji/scissors.png b/public/img/emoji/scissors.png
new file mode 100755
index 0000000000..d99b8aea06
Binary files /dev/null and b/public/img/emoji/scissors.png differ
diff --git a/public/img/emoji/scorpius.png b/public/img/emoji/scorpius.png
new file mode 100755
index 0000000000..67fcea1658
Binary files /dev/null and b/public/img/emoji/scorpius.png differ
diff --git a/public/img/emoji/scream.png b/public/img/emoji/scream.png
new file mode 100755
index 0000000000..9e93c885db
Binary files /dev/null and b/public/img/emoji/scream.png differ
diff --git a/public/img/emoji/scream_cat.png b/public/img/emoji/scream_cat.png
new file mode 100755
index 0000000000..d94cd34ff5
Binary files /dev/null and b/public/img/emoji/scream_cat.png differ
diff --git a/public/img/emoji/scroll.png b/public/img/emoji/scroll.png
new file mode 100755
index 0000000000..c5a10e6b8f
Binary files /dev/null and b/public/img/emoji/scroll.png differ
diff --git a/public/img/emoji/seat.png b/public/img/emoji/seat.png
new file mode 100755
index 0000000000..d1cb864b4b
Binary files /dev/null and b/public/img/emoji/seat.png differ
diff --git a/public/img/emoji/secret.png b/public/img/emoji/secret.png
new file mode 100755
index 0000000000..82e383a60d
Binary files /dev/null and b/public/img/emoji/secret.png differ
diff --git a/public/img/emoji/see_no_evil.png b/public/img/emoji/see_no_evil.png
new file mode 100755
index 0000000000..0890a62227
Binary files /dev/null and b/public/img/emoji/see_no_evil.png differ
diff --git a/public/img/emoji/seedling.png b/public/img/emoji/seedling.png
new file mode 100755
index 0000000000..2ab0793105
Binary files /dev/null and b/public/img/emoji/seedling.png differ
diff --git a/public/img/emoji/seven.png b/public/img/emoji/seven.png
new file mode 100755
index 0000000000..354e89ae75
Binary files /dev/null and b/public/img/emoji/seven.png differ
diff --git a/public/img/emoji/shaved_ice.png b/public/img/emoji/shaved_ice.png
new file mode 100755
index 0000000000..0d0b382c22
Binary files /dev/null and b/public/img/emoji/shaved_ice.png differ
diff --git a/public/img/emoji/sheep.png b/public/img/emoji/sheep.png
new file mode 100755
index 0000000000..c7277d2898
Binary files /dev/null and b/public/img/emoji/sheep.png differ
diff --git a/public/img/emoji/shell.png b/public/img/emoji/shell.png
new file mode 100755
index 0000000000..3145b56496
Binary files /dev/null and b/public/img/emoji/shell.png differ
diff --git a/public/img/emoji/ship.png b/public/img/emoji/ship.png
new file mode 100755
index 0000000000..5d2d8b602b
Binary files /dev/null and b/public/img/emoji/ship.png differ
diff --git a/public/img/emoji/shipit.png b/public/img/emoji/shipit.png
new file mode 100755
index 0000000000..a58a47f62f
Binary files /dev/null and b/public/img/emoji/shipit.png differ
diff --git a/public/img/emoji/shirt.png b/public/img/emoji/shirt.png
new file mode 100755
index 0000000000..297a6d63ed
Binary files /dev/null and b/public/img/emoji/shirt.png differ
diff --git a/public/img/emoji/shit.png b/public/img/emoji/shit.png
new file mode 100755
index 0000000000..73a4dc8400
Binary files /dev/null and b/public/img/emoji/shit.png differ
diff --git a/public/img/emoji/shoe.png b/public/img/emoji/shoe.png
new file mode 100755
index 0000000000..45b82e61cf
Binary files /dev/null and b/public/img/emoji/shoe.png differ
diff --git a/public/img/emoji/shower.png b/public/img/emoji/shower.png
new file mode 100755
index 0000000000..0d72ab86ba
Binary files /dev/null and b/public/img/emoji/shower.png differ
diff --git a/public/img/emoji/signal_strength.png b/public/img/emoji/signal_strength.png
new file mode 100755
index 0000000000..a4bd23ebf7
Binary files /dev/null and b/public/img/emoji/signal_strength.png differ
diff --git a/public/img/emoji/six.png b/public/img/emoji/six.png
new file mode 100755
index 0000000000..5688055657
Binary files /dev/null and b/public/img/emoji/six.png differ
diff --git a/public/img/emoji/six_pointed_star.png b/public/img/emoji/six_pointed_star.png
new file mode 100755
index 0000000000..c11af14c80
Binary files /dev/null and b/public/img/emoji/six_pointed_star.png differ
diff --git a/public/img/emoji/ski.png b/public/img/emoji/ski.png
new file mode 100755
index 0000000000..98f5cb0f46
Binary files /dev/null and b/public/img/emoji/ski.png differ
diff --git a/public/img/emoji/skull.png b/public/img/emoji/skull.png
new file mode 100755
index 0000000000..bd4ee38297
Binary files /dev/null and b/public/img/emoji/skull.png differ
diff --git a/public/img/emoji/sleeping.png b/public/img/emoji/sleeping.png
new file mode 100755
index 0000000000..093b852365
Binary files /dev/null and b/public/img/emoji/sleeping.png differ
diff --git a/public/img/emoji/sleepy.png b/public/img/emoji/sleepy.png
new file mode 100755
index 0000000000..df4f55efd9
Binary files /dev/null and b/public/img/emoji/sleepy.png differ
diff --git a/public/img/emoji/slot_machine.png b/public/img/emoji/slot_machine.png
new file mode 100755
index 0000000000..26f114830b
Binary files /dev/null and b/public/img/emoji/slot_machine.png differ
diff --git a/public/img/emoji/small_blue_diamond.png b/public/img/emoji/small_blue_diamond.png
new file mode 100755
index 0000000000..8cd49205fd
Binary files /dev/null and b/public/img/emoji/small_blue_diamond.png differ
diff --git a/public/img/emoji/small_orange_diamond.png b/public/img/emoji/small_orange_diamond.png
new file mode 100755
index 0000000000..04941d37b6
Binary files /dev/null and b/public/img/emoji/small_orange_diamond.png differ
diff --git a/public/img/emoji/small_red_triangle.png b/public/img/emoji/small_red_triangle.png
new file mode 100755
index 0000000000..8c4428da8f
Binary files /dev/null and b/public/img/emoji/small_red_triangle.png differ
diff --git a/public/img/emoji/small_red_triangle_down.png b/public/img/emoji/small_red_triangle_down.png
new file mode 100755
index 0000000000..94832f060c
Binary files /dev/null and b/public/img/emoji/small_red_triangle_down.png differ
diff --git a/public/img/emoji/smile.png b/public/img/emoji/smile.png
new file mode 100755
index 0000000000..81a8396899
Binary files /dev/null and b/public/img/emoji/smile.png differ
diff --git a/public/img/emoji/smile_cat.png b/public/img/emoji/smile_cat.png
new file mode 100755
index 0000000000..ad333ba3b6
Binary files /dev/null and b/public/img/emoji/smile_cat.png differ
diff --git a/public/img/emoji/smiley.png b/public/img/emoji/smiley.png
new file mode 100755
index 0000000000..77b581d68f
Binary files /dev/null and b/public/img/emoji/smiley.png differ
diff --git a/public/img/emoji/smiley_cat.png b/public/img/emoji/smiley_cat.png
new file mode 100755
index 0000000000..dbf1b0276a
Binary files /dev/null and b/public/img/emoji/smiley_cat.png differ
diff --git a/public/img/emoji/smiling_imp.png b/public/img/emoji/smiling_imp.png
new file mode 100755
index 0000000000..d904049309
Binary files /dev/null and b/public/img/emoji/smiling_imp.png differ
diff --git a/public/img/emoji/smirk.png b/public/img/emoji/smirk.png
new file mode 100755
index 0000000000..bc6e5082c8
Binary files /dev/null and b/public/img/emoji/smirk.png differ
diff --git a/public/img/emoji/smirk_cat.png b/public/img/emoji/smirk_cat.png
new file mode 100755
index 0000000000..351565e246
Binary files /dev/null and b/public/img/emoji/smirk_cat.png differ
diff --git a/public/img/emoji/smoking.png b/public/img/emoji/smoking.png
new file mode 100755
index 0000000000..4aad6cbd7c
Binary files /dev/null and b/public/img/emoji/smoking.png differ
diff --git a/public/img/emoji/snail.png b/public/img/emoji/snail.png
new file mode 100755
index 0000000000..e75e69a84d
Binary files /dev/null and b/public/img/emoji/snail.png differ
diff --git a/public/img/emoji/snake.png b/public/img/emoji/snake.png
new file mode 100755
index 0000000000..ef58933e2b
Binary files /dev/null and b/public/img/emoji/snake.png differ
diff --git a/public/img/emoji/snowboarder.png b/public/img/emoji/snowboarder.png
new file mode 100755
index 0000000000..aeda5c8d87
Binary files /dev/null and b/public/img/emoji/snowboarder.png differ
diff --git a/public/img/emoji/snowflake.png b/public/img/emoji/snowflake.png
new file mode 100755
index 0000000000..54b68ff4f1
Binary files /dev/null and b/public/img/emoji/snowflake.png differ
diff --git a/public/img/emoji/snowman.png b/public/img/emoji/snowman.png
new file mode 100755
index 0000000000..a97902e530
Binary files /dev/null and b/public/img/emoji/snowman.png differ
diff --git a/public/img/emoji/sob.png b/public/img/emoji/sob.png
new file mode 100755
index 0000000000..1561df92ee
Binary files /dev/null and b/public/img/emoji/sob.png differ
diff --git a/public/img/emoji/soccer.png b/public/img/emoji/soccer.png
new file mode 100755
index 0000000000..1e118b5b18
Binary files /dev/null and b/public/img/emoji/soccer.png differ
diff --git a/public/img/emoji/soon.png b/public/img/emoji/soon.png
new file mode 100755
index 0000000000..2cf46df254
Binary files /dev/null and b/public/img/emoji/soon.png differ
diff --git a/public/img/emoji/sos.png b/public/img/emoji/sos.png
new file mode 100755
index 0000000000..e3e16ef73f
Binary files /dev/null and b/public/img/emoji/sos.png differ
diff --git a/public/img/emoji/sound.png b/public/img/emoji/sound.png
new file mode 100755
index 0000000000..6aa4dbff4c
Binary files /dev/null and b/public/img/emoji/sound.png differ
diff --git a/public/img/emoji/space_invader.png b/public/img/emoji/space_invader.png
new file mode 100755
index 0000000000..3840491674
Binary files /dev/null and b/public/img/emoji/space_invader.png differ
diff --git a/public/img/emoji/spades.png b/public/img/emoji/spades.png
new file mode 100755
index 0000000000..133a1aba8a
Binary files /dev/null and b/public/img/emoji/spades.png differ
diff --git a/public/img/emoji/spaghetti.png b/public/img/emoji/spaghetti.png
new file mode 100755
index 0000000000..08de243f55
Binary files /dev/null and b/public/img/emoji/spaghetti.png differ
diff --git a/public/img/emoji/sparkle.png b/public/img/emoji/sparkle.png
new file mode 100755
index 0000000000..23a68ceb20
Binary files /dev/null and b/public/img/emoji/sparkle.png differ
diff --git a/public/img/emoji/sparkler.png b/public/img/emoji/sparkler.png
new file mode 100755
index 0000000000..4aabd7e0ed
Binary files /dev/null and b/public/img/emoji/sparkler.png differ
diff --git a/public/img/emoji/sparkles.png b/public/img/emoji/sparkles.png
new file mode 100755
index 0000000000..51307bcfc2
Binary files /dev/null and b/public/img/emoji/sparkles.png differ
diff --git a/public/img/emoji/sparkling_heart.png b/public/img/emoji/sparkling_heart.png
new file mode 100755
index 0000000000..64ac06663d
Binary files /dev/null and b/public/img/emoji/sparkling_heart.png differ
diff --git a/public/img/emoji/speak_no_evil.png b/public/img/emoji/speak_no_evil.png
new file mode 100755
index 0000000000..87944c4de5
Binary files /dev/null and b/public/img/emoji/speak_no_evil.png differ
diff --git a/public/img/emoji/speaker.png b/public/img/emoji/speaker.png
new file mode 100755
index 0000000000..470476e182
Binary files /dev/null and b/public/img/emoji/speaker.png differ
diff --git a/public/img/emoji/speech_balloon.png b/public/img/emoji/speech_balloon.png
new file mode 100755
index 0000000000..2896c27888
Binary files /dev/null and b/public/img/emoji/speech_balloon.png differ
diff --git a/public/img/emoji/speedboat.png b/public/img/emoji/speedboat.png
new file mode 100755
index 0000000000..da6689b3be
Binary files /dev/null and b/public/img/emoji/speedboat.png differ
diff --git a/public/img/emoji/squirrel.png b/public/img/emoji/squirrel.png
new file mode 100755
index 0000000000..a58a47f62f
Binary files /dev/null and b/public/img/emoji/squirrel.png differ
diff --git a/public/img/emoji/star.png b/public/img/emoji/star.png
new file mode 100755
index 0000000000..1bfddc8625
Binary files /dev/null and b/public/img/emoji/star.png differ
diff --git a/public/img/emoji/star2.png b/public/img/emoji/star2.png
new file mode 100755
index 0000000000..8b40ff4c8c
Binary files /dev/null and b/public/img/emoji/star2.png differ
diff --git a/public/img/emoji/stars.png b/public/img/emoji/stars.png
new file mode 100755
index 0000000000..097a84241c
Binary files /dev/null and b/public/img/emoji/stars.png differ
diff --git a/public/img/emoji/station.png b/public/img/emoji/station.png
new file mode 100755
index 0000000000..e77daa8a75
Binary files /dev/null and b/public/img/emoji/station.png differ
diff --git a/public/img/emoji/statue_of_liberty.png b/public/img/emoji/statue_of_liberty.png
new file mode 100755
index 0000000000..9ad9028068
Binary files /dev/null and b/public/img/emoji/statue_of_liberty.png differ
diff --git a/public/img/emoji/steam_locomotive.png b/public/img/emoji/steam_locomotive.png
new file mode 100755
index 0000000000..5495077667
Binary files /dev/null and b/public/img/emoji/steam_locomotive.png differ
diff --git a/public/img/emoji/stew.png b/public/img/emoji/stew.png
new file mode 100755
index 0000000000..e9687f9ec2
Binary files /dev/null and b/public/img/emoji/stew.png differ
diff --git a/public/img/emoji/straight_ruler.png b/public/img/emoji/straight_ruler.png
new file mode 100755
index 0000000000..d96658ea1e
Binary files /dev/null and b/public/img/emoji/straight_ruler.png differ
diff --git a/public/img/emoji/strawberry.png b/public/img/emoji/strawberry.png
new file mode 100755
index 0000000000..13eb827ab8
Binary files /dev/null and b/public/img/emoji/strawberry.png differ
diff --git a/public/img/emoji/stuck_out_tongue.png b/public/img/emoji/stuck_out_tongue.png
new file mode 100755
index 0000000000..fa7b58e231
Binary files /dev/null and b/public/img/emoji/stuck_out_tongue.png differ
diff --git a/public/img/emoji/stuck_out_tongue_closed_eyes.png b/public/img/emoji/stuck_out_tongue_closed_eyes.png
new file mode 100755
index 0000000000..333716ee1f
Binary files /dev/null and b/public/img/emoji/stuck_out_tongue_closed_eyes.png differ
diff --git a/public/img/emoji/stuck_out_tongue_winking_eye.png b/public/img/emoji/stuck_out_tongue_winking_eye.png
new file mode 100755
index 0000000000..6ae9d497d3
Binary files /dev/null and b/public/img/emoji/stuck_out_tongue_winking_eye.png differ
diff --git a/public/img/emoji/sun_with_face.png b/public/img/emoji/sun_with_face.png
new file mode 100755
index 0000000000..ee276636fa
Binary files /dev/null and b/public/img/emoji/sun_with_face.png differ
diff --git a/public/img/emoji/sunflower.png b/public/img/emoji/sunflower.png
new file mode 100755
index 0000000000..d9bad194a2
Binary files /dev/null and b/public/img/emoji/sunflower.png differ
diff --git a/public/img/emoji/sunglasses.png b/public/img/emoji/sunglasses.png
new file mode 100755
index 0000000000..f2e524787c
Binary files /dev/null and b/public/img/emoji/sunglasses.png differ
diff --git a/public/img/emoji/sunny.png b/public/img/emoji/sunny.png
new file mode 100755
index 0000000000..d23c095e08
Binary files /dev/null and b/public/img/emoji/sunny.png differ
diff --git a/public/img/emoji/sunrise.png b/public/img/emoji/sunrise.png
new file mode 100755
index 0000000000..ec58dcc94f
Binary files /dev/null and b/public/img/emoji/sunrise.png differ
diff --git a/public/img/emoji/sunrise_over_mountains.png b/public/img/emoji/sunrise_over_mountains.png
new file mode 100755
index 0000000000..ebc3db1468
Binary files /dev/null and b/public/img/emoji/sunrise_over_mountains.png differ
diff --git a/public/img/emoji/surfer.png b/public/img/emoji/surfer.png
new file mode 100755
index 0000000000..b067e8cb32
Binary files /dev/null and b/public/img/emoji/surfer.png differ
diff --git a/public/img/emoji/sushi.png b/public/img/emoji/sushi.png
new file mode 100755
index 0000000000..0d179bd975
Binary files /dev/null and b/public/img/emoji/sushi.png differ
diff --git a/public/img/emoji/suspect.png b/public/img/emoji/suspect.png
new file mode 100755
index 0000000000..58e8921c0a
Binary files /dev/null and b/public/img/emoji/suspect.png differ
diff --git a/public/img/emoji/suspension_railway.png b/public/img/emoji/suspension_railway.png
new file mode 100755
index 0000000000..aaa45f61f1
Binary files /dev/null and b/public/img/emoji/suspension_railway.png differ
diff --git a/public/img/emoji/sweat.png b/public/img/emoji/sweat.png
new file mode 100755
index 0000000000..e894b76996
Binary files /dev/null and b/public/img/emoji/sweat.png differ
diff --git a/public/img/emoji/sweat_drops.png b/public/img/emoji/sweat_drops.png
new file mode 100755
index 0000000000..a83b3e960c
Binary files /dev/null and b/public/img/emoji/sweat_drops.png differ
diff --git a/public/img/emoji/sweat_smile.png b/public/img/emoji/sweat_smile.png
new file mode 100755
index 0000000000..3903f717f3
Binary files /dev/null and b/public/img/emoji/sweat_smile.png differ
diff --git a/public/img/emoji/sweet_potato.png b/public/img/emoji/sweet_potato.png
new file mode 100755
index 0000000000..cde7880a14
Binary files /dev/null and b/public/img/emoji/sweet_potato.png differ
diff --git a/public/img/emoji/swimmer.png b/public/img/emoji/swimmer.png
new file mode 100755
index 0000000000..d3878a0652
Binary files /dev/null and b/public/img/emoji/swimmer.png differ
diff --git a/public/img/emoji/symbols.png b/public/img/emoji/symbols.png
new file mode 100755
index 0000000000..16bc1da921
Binary files /dev/null and b/public/img/emoji/symbols.png differ
diff --git a/public/img/emoji/syringe.png b/public/img/emoji/syringe.png
new file mode 100755
index 0000000000..36aa8fed54
Binary files /dev/null and b/public/img/emoji/syringe.png differ
diff --git a/public/img/emoji/tada.png b/public/img/emoji/tada.png
new file mode 100755
index 0000000000..7411b5266a
Binary files /dev/null and b/public/img/emoji/tada.png differ
diff --git a/public/img/emoji/tanabata_tree.png b/public/img/emoji/tanabata_tree.png
new file mode 100755
index 0000000000..6dea4b2d42
Binary files /dev/null and b/public/img/emoji/tanabata_tree.png differ
diff --git a/public/img/emoji/tangerine.png b/public/img/emoji/tangerine.png
new file mode 100755
index 0000000000..fc9d4f82ad
Binary files /dev/null and b/public/img/emoji/tangerine.png differ
diff --git a/public/img/emoji/taurus.png b/public/img/emoji/taurus.png
new file mode 100755
index 0000000000..6af582f69d
Binary files /dev/null and b/public/img/emoji/taurus.png differ
diff --git a/public/img/emoji/taxi.png b/public/img/emoji/taxi.png
new file mode 100755
index 0000000000..60a50d365a
Binary files /dev/null and b/public/img/emoji/taxi.png differ
diff --git a/public/img/emoji/tea.png b/public/img/emoji/tea.png
new file mode 100755
index 0000000000..3ece0b708a
Binary files /dev/null and b/public/img/emoji/tea.png differ
diff --git a/public/img/emoji/telephone.png b/public/img/emoji/telephone.png
new file mode 100755
index 0000000000..87d2559b55
Binary files /dev/null and b/public/img/emoji/telephone.png differ
diff --git a/public/img/emoji/telephone_receiver.png b/public/img/emoji/telephone_receiver.png
new file mode 100755
index 0000000000..36e21e0123
Binary files /dev/null and b/public/img/emoji/telephone_receiver.png differ
diff --git a/public/img/emoji/telescope.png b/public/img/emoji/telescope.png
new file mode 100755
index 0000000000..98e57558ac
Binary files /dev/null and b/public/img/emoji/telescope.png differ
diff --git a/public/img/emoji/tennis.png b/public/img/emoji/tennis.png
new file mode 100755
index 0000000000..278d904ee2
Binary files /dev/null and b/public/img/emoji/tennis.png differ
diff --git a/public/img/emoji/tent.png b/public/img/emoji/tent.png
new file mode 100755
index 0000000000..5c0d20e48b
Binary files /dev/null and b/public/img/emoji/tent.png differ
diff --git a/public/img/emoji/thought_balloon.png b/public/img/emoji/thought_balloon.png
new file mode 100755
index 0000000000..febe30d059
Binary files /dev/null and b/public/img/emoji/thought_balloon.png differ
diff --git a/public/img/emoji/three.png b/public/img/emoji/three.png
new file mode 100755
index 0000000000..55644c9900
Binary files /dev/null and b/public/img/emoji/three.png differ
diff --git a/public/img/emoji/thumbsdown.png b/public/img/emoji/thumbsdown.png
new file mode 100755
index 0000000000..41c6b825d6
Binary files /dev/null and b/public/img/emoji/thumbsdown.png differ
diff --git a/public/img/emoji/thumbsup.png b/public/img/emoji/thumbsup.png
new file mode 100755
index 0000000000..81786c1d8f
Binary files /dev/null and b/public/img/emoji/thumbsup.png differ
diff --git a/public/img/emoji/ticket.png b/public/img/emoji/ticket.png
new file mode 100755
index 0000000000..cdacf1a70b
Binary files /dev/null and b/public/img/emoji/ticket.png differ
diff --git a/public/img/emoji/tiger.png b/public/img/emoji/tiger.png
new file mode 100755
index 0000000000..d6cc84a3ba
Binary files /dev/null and b/public/img/emoji/tiger.png differ
diff --git a/public/img/emoji/tiger2.png b/public/img/emoji/tiger2.png
new file mode 100755
index 0000000000..b0c7d8dc3e
Binary files /dev/null and b/public/img/emoji/tiger2.png differ
diff --git a/public/img/emoji/tired_face.png b/public/img/emoji/tired_face.png
new file mode 100755
index 0000000000..77b783453e
Binary files /dev/null and b/public/img/emoji/tired_face.png differ
diff --git a/public/img/emoji/tm.png b/public/img/emoji/tm.png
new file mode 100755
index 0000000000..c7dec75a33
Binary files /dev/null and b/public/img/emoji/tm.png differ
diff --git a/public/img/emoji/toilet.png b/public/img/emoji/toilet.png
new file mode 100755
index 0000000000..e5cc4119a1
Binary files /dev/null and b/public/img/emoji/toilet.png differ
diff --git a/public/img/emoji/tokyo_tower.png b/public/img/emoji/tokyo_tower.png
new file mode 100755
index 0000000000..e1cbd7a3c5
Binary files /dev/null and b/public/img/emoji/tokyo_tower.png differ
diff --git a/public/img/emoji/tomato.png b/public/img/emoji/tomato.png
new file mode 100755
index 0000000000..a129700bbb
Binary files /dev/null and b/public/img/emoji/tomato.png differ
diff --git a/public/img/emoji/tongue.png b/public/img/emoji/tongue.png
new file mode 100755
index 0000000000..b0bab12078
Binary files /dev/null and b/public/img/emoji/tongue.png differ
diff --git a/public/img/emoji/top.png b/public/img/emoji/top.png
new file mode 100755
index 0000000000..5aa4dd442d
Binary files /dev/null and b/public/img/emoji/top.png differ
diff --git a/public/img/emoji/tophat.png b/public/img/emoji/tophat.png
new file mode 100755
index 0000000000..7d27134d6a
Binary files /dev/null and b/public/img/emoji/tophat.png differ
diff --git a/public/img/emoji/tractor.png b/public/img/emoji/tractor.png
new file mode 100755
index 0000000000..058fd3eda5
Binary files /dev/null and b/public/img/emoji/tractor.png differ
diff --git a/public/img/emoji/traffic_light.png b/public/img/emoji/traffic_light.png
new file mode 100755
index 0000000000..1facb276c4
Binary files /dev/null and b/public/img/emoji/traffic_light.png differ
diff --git a/public/img/emoji/train.png b/public/img/emoji/train.png
new file mode 100755
index 0000000000..3202d80ea9
Binary files /dev/null and b/public/img/emoji/train.png differ
diff --git a/public/img/emoji/train2.png b/public/img/emoji/train2.png
new file mode 100755
index 0000000000..9c0d3ab640
Binary files /dev/null and b/public/img/emoji/train2.png differ
diff --git a/public/img/emoji/tram.png b/public/img/emoji/tram.png
new file mode 100755
index 0000000000..5eb29fb71c
Binary files /dev/null and b/public/img/emoji/tram.png differ
diff --git a/public/img/emoji/triangular_flag_on_post.png b/public/img/emoji/triangular_flag_on_post.png
new file mode 100755
index 0000000000..f9a3f32d71
Binary files /dev/null and b/public/img/emoji/triangular_flag_on_post.png differ
diff --git a/public/img/emoji/triangular_ruler.png b/public/img/emoji/triangular_ruler.png
new file mode 100755
index 0000000000..383677cb74
Binary files /dev/null and b/public/img/emoji/triangular_ruler.png differ
diff --git a/public/img/emoji/trident.png b/public/img/emoji/trident.png
new file mode 100755
index 0000000000..d79a7b4cce
Binary files /dev/null and b/public/img/emoji/trident.png differ
diff --git a/public/img/emoji/triumph.png b/public/img/emoji/triumph.png
new file mode 100755
index 0000000000..92f93bd102
Binary files /dev/null and b/public/img/emoji/triumph.png differ
diff --git a/public/img/emoji/trolleybus.png b/public/img/emoji/trolleybus.png
new file mode 100755
index 0000000000..b9740a53f8
Binary files /dev/null and b/public/img/emoji/trolleybus.png differ
diff --git a/public/img/emoji/trollface.png b/public/img/emoji/trollface.png
new file mode 100755
index 0000000000..119d77e73a
Binary files /dev/null and b/public/img/emoji/trollface.png differ
diff --git a/public/img/emoji/trophy.png b/public/img/emoji/trophy.png
new file mode 100755
index 0000000000..95d3b63f52
Binary files /dev/null and b/public/img/emoji/trophy.png differ
diff --git a/public/img/emoji/tropical_drink.png b/public/img/emoji/tropical_drink.png
new file mode 100755
index 0000000000..55ca9eeda7
Binary files /dev/null and b/public/img/emoji/tropical_drink.png differ
diff --git a/public/img/emoji/tropical_fish.png b/public/img/emoji/tropical_fish.png
new file mode 100755
index 0000000000..a6d734987b
Binary files /dev/null and b/public/img/emoji/tropical_fish.png differ
diff --git a/public/img/emoji/truck.png b/public/img/emoji/truck.png
new file mode 100755
index 0000000000..3f25ba1f92
Binary files /dev/null and b/public/img/emoji/truck.png differ
diff --git a/public/img/emoji/trumpet.png b/public/img/emoji/trumpet.png
new file mode 100755
index 0000000000..c84cfb13e1
Binary files /dev/null and b/public/img/emoji/trumpet.png differ
diff --git a/public/img/emoji/tshirt.png b/public/img/emoji/tshirt.png
new file mode 100755
index 0000000000..297a6d63ed
Binary files /dev/null and b/public/img/emoji/tshirt.png differ
diff --git a/public/img/emoji/tulip.png b/public/img/emoji/tulip.png
new file mode 100755
index 0000000000..b3ee1102a5
Binary files /dev/null and b/public/img/emoji/tulip.png differ
diff --git a/public/img/emoji/turtle.png b/public/img/emoji/turtle.png
new file mode 100755
index 0000000000..04d1d96847
Binary files /dev/null and b/public/img/emoji/turtle.png differ
diff --git a/public/img/emoji/tv.png b/public/img/emoji/tv.png
new file mode 100755
index 0000000000..803dc3d412
Binary files /dev/null and b/public/img/emoji/tv.png differ
diff --git a/public/img/emoji/twisted_rightwards_arrows.png b/public/img/emoji/twisted_rightwards_arrows.png
new file mode 100755
index 0000000000..25cde18b25
Binary files /dev/null and b/public/img/emoji/twisted_rightwards_arrows.png differ
diff --git a/public/img/emoji/two.png b/public/img/emoji/two.png
new file mode 100755
index 0000000000..c191f8a322
Binary files /dev/null and b/public/img/emoji/two.png differ
diff --git a/public/img/emoji/two_hearts.png b/public/img/emoji/two_hearts.png
new file mode 100755
index 0000000000..b189e9aea8
Binary files /dev/null and b/public/img/emoji/two_hearts.png differ
diff --git a/public/img/emoji/two_men_holding_hands.png b/public/img/emoji/two_men_holding_hands.png
new file mode 100755
index 0000000000..d1099f21ff
Binary files /dev/null and b/public/img/emoji/two_men_holding_hands.png differ
diff --git a/public/img/emoji/two_women_holding_hands.png b/public/img/emoji/two_women_holding_hands.png
new file mode 100755
index 0000000000..619646c4e0
Binary files /dev/null and b/public/img/emoji/two_women_holding_hands.png differ
diff --git a/public/img/emoji/u5272.png b/public/img/emoji/u5272.png
new file mode 100755
index 0000000000..2148253fc1
Binary files /dev/null and b/public/img/emoji/u5272.png differ
diff --git a/public/img/emoji/u5408.png b/public/img/emoji/u5408.png
new file mode 100755
index 0000000000..03ab0d8746
Binary files /dev/null and b/public/img/emoji/u5408.png differ
diff --git a/public/img/emoji/u55b6.png b/public/img/emoji/u55b6.png
new file mode 100755
index 0000000000..ba946d3f33
Binary files /dev/null and b/public/img/emoji/u55b6.png differ
diff --git a/public/img/emoji/u6307.png b/public/img/emoji/u6307.png
new file mode 100755
index 0000000000..6557f5672f
Binary files /dev/null and b/public/img/emoji/u6307.png differ
diff --git a/public/img/emoji/u6708.png b/public/img/emoji/u6708.png
new file mode 100755
index 0000000000..e4dfe5aa76
Binary files /dev/null and b/public/img/emoji/u6708.png differ
diff --git a/public/img/emoji/u6709.png b/public/img/emoji/u6709.png
new file mode 100755
index 0000000000..cd8fb3f62a
Binary files /dev/null and b/public/img/emoji/u6709.png differ
diff --git a/public/img/emoji/u6e80.png b/public/img/emoji/u6e80.png
new file mode 100755
index 0000000000..5df1cb878f
Binary files /dev/null and b/public/img/emoji/u6e80.png differ
diff --git a/public/img/emoji/u7121.png b/public/img/emoji/u7121.png
new file mode 100755
index 0000000000..25f694ed3f
Binary files /dev/null and b/public/img/emoji/u7121.png differ
diff --git a/public/img/emoji/u7533.png b/public/img/emoji/u7533.png
new file mode 100755
index 0000000000..fc4a9901b4
Binary files /dev/null and b/public/img/emoji/u7533.png differ
diff --git a/public/img/emoji/u7981.png b/public/img/emoji/u7981.png
new file mode 100755
index 0000000000..f550a573da
Binary files /dev/null and b/public/img/emoji/u7981.png differ
diff --git a/public/img/emoji/u7a7a.png b/public/img/emoji/u7a7a.png
new file mode 100755
index 0000000000..c05f5cff73
Binary files /dev/null and b/public/img/emoji/u7a7a.png differ
diff --git a/public/img/emoji/uk.png b/public/img/emoji/uk.png
new file mode 100755
index 0000000000..2a62c7a081
Binary files /dev/null and b/public/img/emoji/uk.png differ
diff --git a/public/img/emoji/umbrella.png b/public/img/emoji/umbrella.png
new file mode 100755
index 0000000000..1db722fa66
Binary files /dev/null and b/public/img/emoji/umbrella.png differ
diff --git a/public/img/emoji/unamused.png b/public/img/emoji/unamused.png
new file mode 100755
index 0000000000..3722e6f575
Binary files /dev/null and b/public/img/emoji/unamused.png differ
diff --git a/public/img/emoji/underage.png b/public/img/emoji/underage.png
new file mode 100755
index 0000000000..a789b3c620
Binary files /dev/null and b/public/img/emoji/underage.png differ
diff --git a/public/img/emoji/unlock.png b/public/img/emoji/unlock.png
new file mode 100755
index 0000000000..22b429cd02
Binary files /dev/null and b/public/img/emoji/unlock.png differ
diff --git a/public/img/emoji/up.png b/public/img/emoji/up.png
new file mode 100755
index 0000000000..829219a868
Binary files /dev/null and b/public/img/emoji/up.png differ
diff --git a/public/img/emoji/us.png b/public/img/emoji/us.png
new file mode 100755
index 0000000000..38137669aa
Binary files /dev/null and b/public/img/emoji/us.png differ
diff --git a/public/img/emoji/v.png b/public/img/emoji/v.png
new file mode 100755
index 0000000000..f61267c281
Binary files /dev/null and b/public/img/emoji/v.png differ
diff --git a/public/img/emoji/vertical_traffic_light.png b/public/img/emoji/vertical_traffic_light.png
new file mode 100755
index 0000000000..7a5ba35f09
Binary files /dev/null and b/public/img/emoji/vertical_traffic_light.png differ
diff --git a/public/img/emoji/vhs.png b/public/img/emoji/vhs.png
new file mode 100755
index 0000000000..881081c177
Binary files /dev/null and b/public/img/emoji/vhs.png differ
diff --git a/public/img/emoji/vibration_mode.png b/public/img/emoji/vibration_mode.png
new file mode 100755
index 0000000000..a716e96c63
Binary files /dev/null and b/public/img/emoji/vibration_mode.png differ
diff --git a/public/img/emoji/video_camera.png b/public/img/emoji/video_camera.png
new file mode 100755
index 0000000000..274cecdd6d
Binary files /dev/null and b/public/img/emoji/video_camera.png differ
diff --git a/public/img/emoji/video_game.png b/public/img/emoji/video_game.png
new file mode 100755
index 0000000000..e265a3bd8c
Binary files /dev/null and b/public/img/emoji/video_game.png differ
diff --git a/public/img/emoji/violin.png b/public/img/emoji/violin.png
new file mode 100755
index 0000000000..69347b5458
Binary files /dev/null and b/public/img/emoji/violin.png differ
diff --git a/public/img/emoji/virgo.png b/public/img/emoji/virgo.png
new file mode 100755
index 0000000000..72e1763f57
Binary files /dev/null and b/public/img/emoji/virgo.png differ
diff --git a/public/img/emoji/volcano.png b/public/img/emoji/volcano.png
new file mode 100755
index 0000000000..9b434539b0
Binary files /dev/null and b/public/img/emoji/volcano.png differ
diff --git a/public/img/emoji/vs.png b/public/img/emoji/vs.png
new file mode 100755
index 0000000000..863638850e
Binary files /dev/null and b/public/img/emoji/vs.png differ
diff --git a/public/img/emoji/walking.png b/public/img/emoji/walking.png
new file mode 100755
index 0000000000..52bc0381c7
Binary files /dev/null and b/public/img/emoji/walking.png differ
diff --git a/public/img/emoji/waning_crescent_moon.png b/public/img/emoji/waning_crescent_moon.png
new file mode 100755
index 0000000000..30387780fe
Binary files /dev/null and b/public/img/emoji/waning_crescent_moon.png differ
diff --git a/public/img/emoji/waning_gibbous_moon.png b/public/img/emoji/waning_gibbous_moon.png
new file mode 100755
index 0000000000..5100990707
Binary files /dev/null and b/public/img/emoji/waning_gibbous_moon.png differ
diff --git a/public/img/emoji/warning.png b/public/img/emoji/warning.png
new file mode 100755
index 0000000000..db6f96f02b
Binary files /dev/null and b/public/img/emoji/warning.png differ
diff --git a/public/img/emoji/watch.png b/public/img/emoji/watch.png
new file mode 100755
index 0000000000..d503bb87c2
Binary files /dev/null and b/public/img/emoji/watch.png differ
diff --git a/public/img/emoji/water_buffalo.png b/public/img/emoji/water_buffalo.png
new file mode 100755
index 0000000000..3bcde3edd9
Binary files /dev/null and b/public/img/emoji/water_buffalo.png differ
diff --git a/public/img/emoji/watermelon.png b/public/img/emoji/watermelon.png
new file mode 100755
index 0000000000..fc212be784
Binary files /dev/null and b/public/img/emoji/watermelon.png differ
diff --git a/public/img/emoji/wave.png b/public/img/emoji/wave.png
new file mode 100755
index 0000000000..56e6e822b1
Binary files /dev/null and b/public/img/emoji/wave.png differ
diff --git a/public/img/emoji/wavy_dash.png b/public/img/emoji/wavy_dash.png
new file mode 100755
index 0000000000..5a74e5c7ae
Binary files /dev/null and b/public/img/emoji/wavy_dash.png differ
diff --git a/public/img/emoji/waxing_crescent_moon.png b/public/img/emoji/waxing_crescent_moon.png
new file mode 100755
index 0000000000..c8f13dd31c
Binary files /dev/null and b/public/img/emoji/waxing_crescent_moon.png differ
diff --git a/public/img/emoji/waxing_gibbous_moon.png b/public/img/emoji/waxing_gibbous_moon.png
new file mode 100755
index 0000000000..54e7ec6711
Binary files /dev/null and b/public/img/emoji/waxing_gibbous_moon.png differ
diff --git a/public/img/emoji/wc.png b/public/img/emoji/wc.png
new file mode 100755
index 0000000000..dfe84d2a73
Binary files /dev/null and b/public/img/emoji/wc.png differ
diff --git a/public/img/emoji/weary.png b/public/img/emoji/weary.png
new file mode 100755
index 0000000000..0c5475411c
Binary files /dev/null and b/public/img/emoji/weary.png differ
diff --git a/public/img/emoji/wedding.png b/public/img/emoji/wedding.png
new file mode 100755
index 0000000000..ead19d52cf
Binary files /dev/null and b/public/img/emoji/wedding.png differ
diff --git a/public/img/emoji/whale.png b/public/img/emoji/whale.png
new file mode 100755
index 0000000000..5bb113e428
Binary files /dev/null and b/public/img/emoji/whale.png differ
diff --git a/public/img/emoji/whale2.png b/public/img/emoji/whale2.png
new file mode 100755
index 0000000000..0ef4ea94f6
Binary files /dev/null and b/public/img/emoji/whale2.png differ
diff --git a/public/img/emoji/wheelchair.png b/public/img/emoji/wheelchair.png
new file mode 100755
index 0000000000..eddcdd7977
Binary files /dev/null and b/public/img/emoji/wheelchair.png differ
diff --git a/public/img/emoji/white_check_mark.png b/public/img/emoji/white_check_mark.png
new file mode 100755
index 0000000000..61dc0583cf
Binary files /dev/null and b/public/img/emoji/white_check_mark.png differ
diff --git a/public/img/emoji/white_circle.png b/public/img/emoji/white_circle.png
new file mode 100755
index 0000000000..3f648d1bd1
Binary files /dev/null and b/public/img/emoji/white_circle.png differ
diff --git a/public/img/emoji/white_flower.png b/public/img/emoji/white_flower.png
new file mode 100755
index 0000000000..c0929d0dd9
Binary files /dev/null and b/public/img/emoji/white_flower.png differ
diff --git a/public/img/emoji/white_large_square.png b/public/img/emoji/white_large_square.png
new file mode 100755
index 0000000000..60cb19a137
Binary files /dev/null and b/public/img/emoji/white_large_square.png differ
diff --git a/public/img/emoji/white_medium_small_square.png b/public/img/emoji/white_medium_small_square.png
new file mode 100755
index 0000000000..a115cdc49e
Binary files /dev/null and b/public/img/emoji/white_medium_small_square.png differ
diff --git a/public/img/emoji/white_medium_square.png b/public/img/emoji/white_medium_square.png
new file mode 100755
index 0000000000..199808bcf2
Binary files /dev/null and b/public/img/emoji/white_medium_square.png differ
diff --git a/public/img/emoji/white_small_square.png b/public/img/emoji/white_small_square.png
new file mode 100755
index 0000000000..24ba879f46
Binary files /dev/null and b/public/img/emoji/white_small_square.png differ
diff --git a/public/img/emoji/white_square_button.png b/public/img/emoji/white_square_button.png
new file mode 100755
index 0000000000..ad54d55c0c
Binary files /dev/null and b/public/img/emoji/white_square_button.png differ
diff --git a/public/img/emoji/wind_chime.png b/public/img/emoji/wind_chime.png
new file mode 100755
index 0000000000..efacf5dd4b
Binary files /dev/null and b/public/img/emoji/wind_chime.png differ
diff --git a/public/img/emoji/wine_glass.png b/public/img/emoji/wine_glass.png
new file mode 100755
index 0000000000..82b0f00057
Binary files /dev/null and b/public/img/emoji/wine_glass.png differ
diff --git a/public/img/emoji/wink.png b/public/img/emoji/wink.png
new file mode 100755
index 0000000000..756766dd3e
Binary files /dev/null and b/public/img/emoji/wink.png differ
diff --git a/public/img/emoji/wolf.png b/public/img/emoji/wolf.png
new file mode 100755
index 0000000000..c60c96895f
Binary files /dev/null and b/public/img/emoji/wolf.png differ
diff --git a/public/img/emoji/woman.png b/public/img/emoji/woman.png
new file mode 100755
index 0000000000..6bf0d2b129
Binary files /dev/null and b/public/img/emoji/woman.png differ
diff --git a/public/img/emoji/womans_clothes.png b/public/img/emoji/womans_clothes.png
new file mode 100755
index 0000000000..aa297c7b65
Binary files /dev/null and b/public/img/emoji/womans_clothes.png differ
diff --git a/public/img/emoji/womans_hat.png b/public/img/emoji/womans_hat.png
new file mode 100755
index 0000000000..4cb2e6a693
Binary files /dev/null and b/public/img/emoji/womans_hat.png differ
diff --git a/public/img/emoji/womens.png b/public/img/emoji/womens.png
new file mode 100755
index 0000000000..2fab296600
Binary files /dev/null and b/public/img/emoji/womens.png differ
diff --git a/public/img/emoji/worried.png b/public/img/emoji/worried.png
new file mode 100755
index 0000000000..bfa1856c01
Binary files /dev/null and b/public/img/emoji/worried.png differ
diff --git a/public/img/emoji/wrench.png b/public/img/emoji/wrench.png
new file mode 100755
index 0000000000..a87072ad13
Binary files /dev/null and b/public/img/emoji/wrench.png differ
diff --git a/public/img/emoji/x.png b/public/img/emoji/x.png
new file mode 100755
index 0000000000..dff9efa8b4
Binary files /dev/null and b/public/img/emoji/x.png differ
diff --git a/public/img/emoji/yellow_heart.png b/public/img/emoji/yellow_heart.png
new file mode 100755
index 0000000000..fa41ce78ac
Binary files /dev/null and b/public/img/emoji/yellow_heart.png differ
diff --git a/public/img/emoji/yen.png b/public/img/emoji/yen.png
new file mode 100755
index 0000000000..139bc936e0
Binary files /dev/null and b/public/img/emoji/yen.png differ
diff --git a/public/img/emoji/yum.png b/public/img/emoji/yum.png
new file mode 100755
index 0000000000..fc39637ecd
Binary files /dev/null and b/public/img/emoji/yum.png differ
diff --git a/public/img/emoji/zap.png b/public/img/emoji/zap.png
new file mode 100755
index 0000000000..260c531b9e
Binary files /dev/null and b/public/img/emoji/zap.png differ
diff --git a/public/img/emoji/zero.png b/public/img/emoji/zero.png
new file mode 100755
index 0000000000..6e57b3343a
Binary files /dev/null and b/public/img/emoji/zero.png differ
diff --git a/public/img/emoji/zzz.png b/public/img/emoji/zzz.png
new file mode 100755
index 0000000000..30be04655a
Binary files /dev/null and b/public/img/emoji/zzz.png differ
diff --git a/public/js/gogs.js b/public/js/gogs.js
index 89e5ef89d7..cf9dade5fb 100644
--- a/public/js/gogs.js
+++ b/public/js/gogs.js
@@ -14,7 +14,9 @@ function initCommentPreviewTab($form) {
"text": $form.find('.tab.segment[data-tab="' + $tab_menu.data('write') + '"] textarea').val()
},
function (data) {
- $form.find('.tab.segment[data-tab="' + $tab_menu.data('preview') + '"]').html(data);
+ var $preview_tab = $form.find('.tab.segment[data-tab="' + $tab_menu.data('preview') + '"]');
+ $preview_tab.html(data);
+ emojify.run($preview_tab[0]);
}
);
});
@@ -43,14 +45,14 @@ function initCommentForm() {
$label_menu.find('.item:not(.no-select)').click(function () {
if ($(this).hasClass('checked')) {
- $(this).removeClass('checked')
- $(this).find('.octicon').removeClass('octicon-check')
+ $(this).removeClass('checked');
+ $(this).find('.octicon').removeClass('octicon-check');
if (has_label_update_action) {
updateIssueMeta($label_menu.data('update-url'), "detach", $(this).data('id'));
}
} else {
- $(this).addClass('checked')
- $(this).find('.octicon').addClass('octicon-check')
+ $(this).addClass('checked');
+ $(this).find('.octicon').addClass('octicon-check');
if (has_label_update_action) {
updateIssueMeta($label_menu.data('update-url'), "attach", $(this).data('id'));
}
@@ -92,7 +94,7 @@ function initCommentForm() {
function selectItem(select_id, input_id) {
var $menu = $(select_id + ' .menu');
- var $list = $('.ui' + select_id + '.list')
+ var $list = $('.ui' + select_id + '.list');
var has_update_action = $menu.data('action') == 'update';
$menu.find('.item:not(.no-select)').click(function () {
@@ -175,7 +177,7 @@ function initInstall() {
$('#disable-gravatar').checkbox('check');
}
});
-};
+}
function initRepository() {
if ($('.repository').length == 0) {
@@ -209,7 +211,7 @@ function initRepository() {
$(this).minicolors();
});
$('.precolors .color').click(function () {
- var color_hex = $(this).data('color-hex')
+ var color_hex = $(this).data('color-hex');
$('.color-picker').val(color_hex);
$('.minicolors-swatch-color').css("background-color", color_hex);
});
@@ -231,7 +233,7 @@ function initRepository() {
}
if ($('.repository.new.milestone').length > 0) {
- var $datepicker = $('.milestone.datepicker')
+ var $datepicker = $('.milestone.datepicker');
$datepicker.datetimepicker({
lang: $datepicker.data('lang'),
inline: true,
@@ -260,7 +262,7 @@ function initRepository() {
$('.in-edit').toggle();
$edit_input.focus();
return false;
- }
+ };
$('#edit-title').click(editTitleToggle);
$('#cancel-edit-title').click(editTitleToggle);
$('#save-edit-title').click(editTitleToggle).
@@ -374,7 +376,7 @@ function initRepository() {
// Pull request
if ($('.repository.compare.pull').length > 0) {
- var $branch_dropdown = $('.choose.branch .dropdown')
+ var $branch_dropdown = $('.choose.branch .dropdown');
$branch_dropdown.dropdown({
fullTextSearch: true,
onChange: function (text, value, $choice) {
@@ -383,7 +385,7 @@ function initRepository() {
message: {noResults: $branch_dropdown.data('no-results')}
});
}
-};
+}
function initWebhook() {
if ($('.new.webhook').length == 0) {
@@ -470,7 +472,7 @@ $(document).ready(function () {
this.on("success", function (file, data) {
filenameDict[file.name] = data.uuid;
$('.attachments').append('');
- })
+ });
this.on("removedfile", function (file) {
if (file.name in filenameDict) {
$('#' + filenameDict[file.name]).remove();
@@ -480,6 +482,14 @@ $(document).ready(function () {
});
}
+ // Emojify
+ emojify.setConfig({
+ img_dir:'/img/emoji'
+ });
+ $('.markdown').each(function(){
+ emojify.run($(this)[0]);
+ });
+
// Helpers.
$('.delete-button').click(function () {
var $this = $(this);
diff --git a/public/js/libs/emojify-1.1.0.min.js b/public/js/libs/emojify-1.1.0.min.js
new file mode 100755
index 0000000000..4fedf32052
--- /dev/null
+++ b/public/js/libs/emojify-1.1.0.min.js
@@ -0,0 +1,4 @@
+/*! emojify.js - v1.0.5 -
+ * Copyright (c) Hassan Khan 2015
+ */
+!function(e,a){"use strict";"function"==typeof define&&define.amd?define([],a):"object"==typeof exports?module.exports=a():e.emojify=a()}(this,function(){"use strict";var e=function(){function e(){var e={named:/:([a-z0-9A-Z_-]+):/,smile:/:-?\)/g,open_mouth:/:o/gi,scream:/:-o/gi,smirk:/[:;]-?]/g,grinning:/[:;]-?d/gi,stuck_out_tongue_closed_eyes:/x-d/gi,stuck_out_tongue_winking_eye:/[:;]-?p/gi,rage:/:-?[\[@]/g,frowning:/:-?\(/g,sob:/:['’]-?\(|:'\(/g,kissing_heart:/:-?\*/g,wink:/;-?\)/g,pensive:/:-?\//g,confounded:/:-?s/gi,flushed:/:-?\|/g,relaxed:/:-?\$/g,mask:/:-x/gi,heart:/<3|<3/g,broken_heart:/<\/3|</3/g,thumbsup:/:\+1:/g,thumbsdown:/:\-1:/g};return d.ignore_emoticons&&(e={named:/:([a-z0-9A-Z_-]+):/,thumbsup:/:\+1:/g,thumbsdown:/:\-1:/g}),Object.keys(e).map(function(a){return[e[a],a]})}function a(){var e=_.map(function(e){var a=e[0],o=a.source||a;return o=o.replace(/(^|[^\[])\^/g,"$1"),"("+o+")"}).join("|");return new RegExp(e,"gi")}function o(e){return" "===e||" "===e||"\r"===e||"\n"===e||""===e||e===String.fromCharCode(160)}function r(e){var a=null;if(e.replacer)a=e.replacer.apply({config:d},[":"+e.emojiName+":",e.emojiName]);else{var o=d.tag_type||h[d.mode];a=e.win.document.createElement(o),"img"!==o?a.setAttribute("class","emoji emoji-"+e.emojiName):(a.setAttribute("align","absmiddle"),a.setAttribute("alt",":"+e.emojiName+":"),a.setAttribute("class","emoji"),a.setAttribute("src",d.img_dir+"/"+e.emojiName+".png")),a.setAttribute("title",":"+e.emojiName+":")}e.node.splitText(e.match.index),e.node.nextSibling.nodeValue=e.node.nextSibling.nodeValue.substr(e.match[0].length,e.node.nextSibling.nodeValue.length),a.appendChild(e.node.splitText(e.match.index)),e.node.parentNode.insertBefore(a,e.node.nextSibling)}function t(e){if(e[1]&&e[2]){var a=e[2];if(m[a])return a}else for(var o=3;o"+o+">":""}function n(){this.lastEmojiTerminatedAt=-1}function s(o,r){if(!o)return o;r||(r=i),_=e(),c=a();var t=new n;return o.replace(c,function(){var e=Array.prototype.slice.call(arguments,0,-2),a=arguments[arguments.length-2],o=arguments[arguments.length-1],i=t.validate(e,a,o);return i?r.apply({config:d},[arguments[0],i]):arguments[0]})}function l(o,i){"undefined"==typeof o&&(o=d.only_crawl_id?document.getElementById(d.only_crawl_id):document.body);var s=o.ownerDocument,l=s.defaultView||s.parentWindow,u=function(e,a){var o;if(e.hasChildNodes())for(o=e.firstChild;o;)a(o)&&u(o,a),o=o.nextSibling},g=function(e){for(var a,o=[],s=new n;null!==(a=c.exec(e.data));)s.validate(a,a.index,a.input)&&o.push(a);for(var _=o.length;_-->0;){var u=t(o[_]);r({node:e,match:o[_],emojiName:u,replacer:i,win:l})}};_=e(),c=a();var m=[],h=new RegExp(d.blacklist.elements.join("|"),"i"),p=new RegExp(d.blacklist.classes.join("|"),"i");if("undefined"!=typeof l.document.createTreeWalker)for(var b,f=l.document.createTreeWalker(o,l.NodeFilter.SHOW_TEXT|l.NodeFilter.SHOW_ELEMENT,function(e){return 1!==e.nodeType?l.NodeFilter.FILTER_ACCEPT:e.tagName.match(h)||"svg"===e.tagName||e.className.match(p)?l.NodeFilter.FILTER_REJECT:l.NodeFilter.FILTER_SKIP},!1);null!==(b=f.nextNode());)m.push(b);else u(o,function(e){return"undefined"!=typeof e.tagName&&e.tagName.match(h)||"undefined"!=typeof e.className&&e.className.match(p)?!1:1===e.nodeType?!0:(m.push(e),!0)});m.forEach(g)}var _,c,u="+1,-1,100,1234,8ball,a,ab,abc,abcd,accept,aerial_tramway,airplane,alarm_clock,alien,ambulance,anchor,angel,anger,angry,anguished,ant,apple,aquarius,aries,arrow_backward,arrow_double_down,arrow_double_up,arrow_down,arrow_down_small,arrow_forward,arrow_heading_down,arrow_heading_up,arrow_left,arrow_lower_left,arrow_lower_right,arrow_right,arrow_right_hook,arrow_up,arrow_up_down,arrow_up_small,arrow_upper_left,arrow_upper_right,arrows_clockwise,arrows_counterclockwise,art,articulated_lorry,astonished,atm,b,baby,baby_bottle,baby_chick,baby_symbol,back,baggage_claim,balloon,ballot_box_with_check,bamboo,banana,bangbang,bank,bar_chart,barber,baseball,basketball,bath,bathtub,battery,bear,bee,beer,beers,beetle,beginner,bell,bento,bicyclist,bike,bikini,bird,birthday,black_circle,black_joker,black_medium_small_square,black_medium_square,black_nib,black_small_square,black_square,black_square_button,blossom,blowfish,blue_book,blue_car,blue_heart,blush,boar,boat,bomb,book,bookmark,bookmark_tabs,books,boom,boot,bouquet,bow,bowling,bowtie,boy,bread,bride_with_veil,bridge_at_night,briefcase,broken_heart,bug,bulb,bullettrain_front,bullettrain_side,bus,busstop,bust_in_silhouette,busts_in_silhouette,cactus,cake,calendar,calling,camel,camera,cancer,candy,capital_abcd,capricorn,car,card_index,carousel_horse,cat,cat2,cd,chart,chart_with_downwards_trend,chart_with_upwards_trend,checkered_flag,cherries,cherry_blossom,chestnut,chicken,children_crossing,chocolate_bar,christmas_tree,church,cinema,circus_tent,city_sunrise,city_sunset,cl,clap,clapper,clipboard,clock1,clock10,clock1030,clock11,clock1130,clock12,clock1230,clock130,clock2,clock230,clock3,clock330,clock4,clock430,clock5,clock530,clock6,clock630,clock7,clock730,clock8,clock830,clock9,clock930,closed_book,closed_lock_with_key,closed_umbrella,cloud,clubs,cn,cocktail,coffee,cold_sweat,collision,computer,confetti_ball,confounded,confused,congratulations,construction,construction_worker,convenience_store,cookie,cool,cop,copyright,corn,couple,couple_with_heart,couplekiss,cow,cow2,credit_card,crescent_moon,crocodile,crossed_flags,crown,cry,crying_cat_face,crystal_ball,cupid,curly_loop,currency_exchange,curry,custard,customs,cyclone,dancer,dancers,dango,dart,dash,date,de,deciduous_tree,department_store,diamond_shape_with_a_dot_inside,diamonds,disappointed,disappointed_relieved,dizzy,dizzy_face,do_not_litter,dog,dog2,dollar,dolls,dolphin,donut,door,doughnut,dragon,dragon_face,dress,dromedary_camel,droplet,dvd,e-mail,ear,ear_of_rice,earth_africa,earth_americas,earth_asia,egg,eggplant,eight,eight_pointed_black_star,eight_spoked_asterisk,electric_plug,elephant,email,end,envelope,es,euro,european_castle,european_post_office,evergreen_tree,exclamation,expressionless,eyeglasses,eyes,facepunch,factory,fallen_leaf,family,fast_forward,fax,fearful,feelsgood,feet,ferris_wheel,file_folder,finnadie,fire,fire_engine,fireworks,first_quarter_moon,first_quarter_moon_with_face,fish,fish_cake,fishing_pole_and_fish,fist,five,flags,flashlight,floppy_disk,flower_playing_cards,flushed,foggy,football,fork_and_knife,fountain,four,four_leaf_clover,fr,free,fried_shrimp,fries,frog,frowning,fu,fuelpump,full_moon,full_moon_with_face,game_die,gb,gem,gemini,ghost,gift,gift_heart,girl,globe_with_meridians,goat,goberserk,godmode,golf,grapes,green_apple,green_book,green_heart,grey_exclamation,grey_question,grimacing,grin,grinning,guardsman,guitar,gun,haircut,hamburger,hammer,hamster,hand,handbag,hankey,hash,hatched_chick,hatching_chick,headphones,hear_no_evil,heart,heart_decoration,heart_eyes,heart_eyes_cat,heartbeat,heartpulse,hearts,heavy_check_mark,heavy_division_sign,heavy_dollar_sign,heavy_exclamation_mark,heavy_minus_sign,heavy_multiplication_x,heavy_plus_sign,helicopter,herb,hibiscus,high_brightness,high_heel,hocho,honey_pot,honeybee,horse,horse_racing,hospital,hotel,hotsprings,hourglass,hourglass_flowing_sand,house,house_with_garden,hurtrealbad,hushed,ice_cream,icecream,id,ideograph_advantage,imp,inbox_tray,incoming_envelope,information_desk_person,information_source,innocent,interrobang,iphone,it,izakaya_lantern,jack_o_lantern,japan,japanese_castle,japanese_goblin,japanese_ogre,jeans,joy,joy_cat,jp,key,keycap_ten,kimono,kiss,kissing,kissing_cat,kissing_closed_eyes,kissing_face,kissing_heart,kissing_smiling_eyes,koala,koko,kr,large_blue_circle,large_blue_diamond,large_orange_diamond,last_quarter_moon,last_quarter_moon_with_face,laughing,leaves,ledger,left_luggage,left_right_arrow,leftwards_arrow_with_hook,lemon,leo,leopard,libra,light_rail,link,lips,lipstick,lock,lock_with_ink_pen,lollipop,loop,loudspeaker,love_hotel,love_letter,low_brightness,m,mag,mag_right,mahjong,mailbox,mailbox_closed,mailbox_with_mail,mailbox_with_no_mail,man,man_with_gua_pi_mao,man_with_turban,mans_shoe,maple_leaf,mask,massage,meat_on_bone,mega,melon,memo,mens,metal,metro,microphone,microscope,milky_way,minibus,minidisc,mobile_phone_off,money_with_wings,moneybag,monkey,monkey_face,monorail,mortar_board,mount_fuji,mountain_bicyclist,mountain_cableway,mountain_railway,mouse,mouse2,movie_camera,moyai,muscle,mushroom,musical_keyboard,musical_note,musical_score,mute,nail_care,name_badge,neckbeard,necktie,negative_squared_cross_mark,neutral_face,new,new_moon,new_moon_with_face,newspaper,ng,nine,no_bell,no_bicycles,no_entry,no_entry_sign,no_good,no_mobile_phones,no_mouth,no_pedestrians,no_smoking,non-potable_water,nose,notebook,notebook_with_decorative_cover,notes,nut_and_bolt,o,o2,ocean,octocat,octopus,oden,office,ok,ok_hand,ok_woman,older_man,older_woman,on,oncoming_automobile,oncoming_bus,oncoming_police_car,oncoming_taxi,one,open_file_folder,open_hands,open_mouth,ophiuchus,orange_book,outbox_tray,ox,package,page_facing_up,page_with_curl,pager,palm_tree,panda_face,paperclip,parking,part_alternation_mark,partly_sunny,passport_control,paw_prints,peach,pear,pencil,pencil2,penguin,pensive,performing_arts,persevere,person_frowning,person_with_blond_hair,person_with_pouting_face,phone,pig,pig2,pig_nose,pill,pineapple,pisces,pizza,plus1,point_down,point_left,point_right,point_up,point_up_2,police_car,poodle,poop,post_office,postal_horn,postbox,potable_water,pouch,poultry_leg,pound,pouting_cat,pray,princess,punch,purple_heart,purse,pushpin,put_litter_in_its_place,question,rabbit,rabbit2,racehorse,radio,radio_button,rage,rage1,rage2,rage3,rage4,railway_car,rainbow,raised_hand,raised_hands,raising_hand,ram,ramen,rat,recycle,red_car,red_circle,registered,relaxed,relieved,repeat,repeat_one,restroom,revolving_hearts,rewind,ribbon,rice,rice_ball,rice_cracker,rice_scene,ring,rocket,roller_coaster,rooster,rose,rotating_light,round_pushpin,rowboat,ru,rugby_football,runner,running,running_shirt_with_sash,sa,sagittarius,sailboat,sake,sandal,santa,satellite,satisfied,saxophone,school,school_satchel,scissors,scorpius,scream,scream_cat,scroll,seat,secret,see_no_evil,seedling,seven,shaved_ice,sheep,shell,ship,shipit,shirt,shit,shoe,shower,signal_strength,six,six_pointed_star,ski,skull,sleeping,sleepy,slot_machine,small_blue_diamond,small_orange_diamond,small_red_triangle,small_red_triangle_down,smile,smile_cat,smiley,smiley_cat,smiling_imp,smirk,smirk_cat,smoking,snail,snake,snowboarder,snowflake,snowman,sob,soccer,soon,sos,sound,space_invader,spades,spaghetti,sparkle,sparkler,sparkles,sparkling_heart,speak_no_evil,speaker,speech_balloon,speedboat,squirrel,star,star2,stars,station,statue_of_liberty,steam_locomotive,stew,straight_ruler,strawberry,stuck_out_tongue,stuck_out_tongue_closed_eyes,stuck_out_tongue_winking_eye,sun_with_face,sunflower,sunglasses,sunny,sunrise,sunrise_over_mountains,surfer,sushi,suspect,suspension_railway,sweat,sweat_drops,sweat_smile,sweet_potato,swimmer,symbols,syringe,tada,tanabata_tree,tangerine,taurus,taxi,tea,telephone,telephone_receiver,telescope,tennis,tent,thought_balloon,three,thumbsdown,thumbsup,ticket,tiger,tiger2,tired_face,tm,toilet,tokyo_tower,tomato,tongue,top,tophat,tractor,traffic_light,train,train2,tram,triangular_flag_on_post,triangular_ruler,trident,triumph,trolleybus,trollface,trophy,tropical_drink,tropical_fish,truck,trumpet,tshirt,tulip,turtle,tv,twisted_rightwards_arrows,two,two_hearts,two_men_holding_hands,two_women_holding_hands,u5272,u5408,u55b6,u6307,u6708,u6709,u6e80,u7121,u7533,u7981,u7a7a,uk,umbrella,unamused,underage,unlock,up,us,v,vertical_traffic_light,vhs,vibration_mode,video_camera,video_game,violin,virgo,volcano,vs,walking,waning_crescent_moon,waning_gibbous_moon,warning,watch,water_buffalo,watermelon,wave,wavy_dash,waxing_crescent_moon,waxing_gibbous_moon,wc,weary,wedding,whale,whale2,wheelchair,white_check_mark,white_circle,white_flower,white_large_square,white_medium_small_square,white_medium_square,white_small_square,white_square_button,wind_chime,wine_glass,wink,wolf,woman,womans_clothes,womans_hat,womens,worried,wrench,x,yellow_heart,yen,yum,zap,zero,zzz",g=u.split(/,/),m=g.reduce(function(e,a){return e[a]=!0,e},{}),d={blacklist:{ids:[],classes:["no-emojify"],elements:["script","textarea","a","pre","code"]},tag_type:null,only_crawl_id:null,img_dir:"images/emoji",ignore_emoticons:!1,mode:"img"},h={img:"img",sprite:"span","data-uri":"span"};return n.prototype={validate:function(e,a,r){function i(){return n.lastEmojiTerminatedAt=_+a,s}var n=this,s=t(e);if(s){var l=e[0],_=l.length;if(0===a)return i();if(r.length===l.length+a)return i();var c=this.lastEmojiTerminatedAt===a;if(c)return i();if(o(r.charAt(a-1)))return i();var u=o(r.charAt(l.length+a));return u&&c?i():void 0}}},{defaultConfig:d,emojiNames:g,setConfig:function(e){Object.keys(d).forEach(function(a){a in e&&(d[a]=e[a])})},replace:s,run:l}}();return e});
\ No newline at end of file
diff --git a/public/less/_emojify.less b/public/less/_emojify.less
new file mode 100755
index 0000000000..62fdaa6455
--- /dev/null
+++ b/public/less/_emojify.less
@@ -0,0 +1,6 @@
+.emoji {
+ width: 1.5em;
+ height: 1.5em;
+ display: inline-block;
+ background-size: contain;
+}
diff --git a/public/less/gogs.less b/public/less/gogs.less
index 9ef2f734bd..d690e3aee4 100644
--- a/public/less/gogs.less
+++ b/public/less/gogs.less
@@ -1,4 +1,5 @@
@import "_octicons";
+@import "_emojify";
@import "_base";
@import "_markdown";
@import "_home";
diff --git a/templates/base/footer.tmpl b/templates/base/footer.tmpl
index a8176b50de..ef973e5c36 100644
--- a/templates/base/footer.tmpl
+++ b/templates/base/footer.tmpl
@@ -44,4 +44,6 @@
{{end}}
+
+