diff --git a/public/config.codekit b/public/config.codekit
index 8fe93fef183..eb1258669d5 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 3e067311e96..7a78f313c22 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 00000000000..81786c1d8f5
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 00000000000..41c6b825d6a
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 00000000000..ca3bb9bcf63
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 00000000000..c47c2e1f9f0
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 00000000000..c2c710d4501
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 00000000000..09ff6d6f184
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 00000000000..2a522204767
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 00000000000..505d40a1557
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 00000000000..5218470b63c
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 00000000000..2d200903188
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 00000000000..38f6dfe2334
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 00000000000..8407cb67575
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 00000000000..86ca8c8ed45
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 00000000000..416de47be46
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 00000000000..b740f45dba2
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 00000000000..0c5192e6473
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 00000000000..da52c310c64
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 00000000000..6fb4dca1854
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 00000000000..f95bfa897ed
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 00000000000..c62594726df
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 00000000000..b92d1cc14bd
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 00000000000..08aa17b9513
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 00000000000..cbff66edcf3
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 00000000000..aab5e8809f5
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 00000000000..088621834f7
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 00000000000..2ecbebcda13
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 00000000000..2bd6659b142
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 00000000000..e6702f02bae
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 00000000000..22d383a9205
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 00000000000..fbfe711b64d
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 00000000000..56dd3b9d3c8
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 00000000000..c8f670a1ef0
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 00000000000..d64ac619c9d
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 00000000000..55fb03c4121
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 00000000000..da8fb8294d9
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 00000000000..6d483b5144f
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 00000000000..8b4ea6e1720
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 00000000000..b5b0688d3c6
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 00000000000..be423de7802
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 00000000000..3f40bfb89b2
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 00000000000..2950ae2f986
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 00000000000..e23790ba18d
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 00000000000..5f84d7e72b7
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 00000000000..3e06f5b3cec
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 00000000000..d45212b0340
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 00000000000..81ec1f91741
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 00000000000..858a83484a8
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 00000000000..c2846e79218
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 00000000000..8742b3d2e3e
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 00000000000..3b29da40b60
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 00000000000..1b2cfe5e301
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 00000000000..9be8d293006
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 00000000000..2e58725cf56
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 00000000000..0cde6287629
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 00000000000..59ae044a45e
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 00000000000..03448970256
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 00000000000..f07a466c778
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 00000000000..fc858d0fc2c
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 00000000000..a0563afb958
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 00000000000..7270f0afe6e
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 00000000000..1faa8777e42
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 00000000000..09d7301c4d8
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 00000000000..a10cb232286
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 00000000000..da004e2ead0
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 00000000000..ef694bec4c9
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 00000000000..8f75d1d2499
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 00000000000..1c3f844ab26
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 00000000000..aa7eedce4bb
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 00000000000..f5afe920e8e
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 00000000000..f53733953af
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 00000000000..cd78bed7440
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 00000000000..cc5e4ab5aa9
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 00000000000..222577ca7ea
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 00000000000..1f022d175da
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 00000000000..69acceb286e
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 00000000000..d6801124a46
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 00000000000..cbbd7c38637
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 00000000000..65738602722
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 00000000000..4ff63b40f88
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 00000000000..e6be8c02786
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 00000000000..36e8edcbec4
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 00000000000..e46f9df615f
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 00000000000..4c78f3614d7
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 00000000000..25bfe9c4534
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 00000000000..204cce12c27
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 00000000000..29f6994c11a
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 00000000000..a247751ece7
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 00000000000..71da10de81c
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 00000000000..f2597e95661
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 00000000000..55a97353b47
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 00000000000..d3ad4658519
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 00000000000..e2b9e8c797a
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 00000000000..978291e087d
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 00000000000..baa29b31bcd
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 00000000000..3a95eb61a3a
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 00000000000..8196ad4a14b
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 00000000000..ff656dc62bb
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 00000000000..3289787dcf9
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 00000000000..8b698415c3d
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 00000000000..6fc4ed90230
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 00000000000..83782ff0c60
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 00000000000..dca06a1ad99
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 00000000000..9d5bd040140
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 00000000000..58d0fdbcd0c
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 00000000000..ce637832e17
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 00000000000..024cb610492
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 00000000000..13d8ece2ee5
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 00000000000..28ff0c787d5
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 00000000000..f79f1f29807
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 00000000000..7e7c63753d3
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 00000000000..dd0b0cfdad1
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 00000000000..495b06c3dfe
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 00000000000..46e82b0010c
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 00000000000..a1bc850ecb4
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 00000000000..c2eaf7a708d
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 00000000000..23afca1c73f
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 00000000000..16651acff8e
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 00000000000..8eca368458a
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 00000000000..823aa39e49d
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 00000000000..94894847b54
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 00000000000..dd7defe2865
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 00000000000..1f3aabcff60
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 00000000000..5a2c3cc725e
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 00000000000..efeb9b4b214
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 00000000000..900b868bb94
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 00000000000..837897f261b
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 00000000000..496c186ae6c
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 00000000000..397d03b3935
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 00000000000..ea43a4a2a04
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 00000000000..33722f236e9
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 00000000000..ffc0cba4b43
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 00000000000..f2044e78935
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 00000000000..d70a2f06263
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 00000000000..374e94e9e84
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 00000000000..765d2c0a8bd
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 00000000000..09b9ef79a7d
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 00000000000..6dbc4c71e4b
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 00000000000..baff835c489
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 00000000000..ac2c4bb093e
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 00000000000..cb0d2a113c7
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 00000000000..7c66745c987
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 00000000000..ead4a68dd37
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 00000000000..8d3e044f2f5
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 00000000000..e0315549990
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 00000000000..066fb6bf6df
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 00000000000..6d25c0ef4ad
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 00000000000..b0302ae6258
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 00000000000..c7ec19d0796
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 00000000000..d813b9593dc
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 00000000000..4c07c6b9ea5
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 00000000000..a990ccf99c2
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 00000000000..4af8719aa03
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 00000000000..91ca2a40b69
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 00000000000..7cb178a2cc6
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 00000000000..15ac67525aa
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 00000000000..d01c982a75a
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 00000000000..4e1dc111d76
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 00000000000..e2c74e6df82
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 00000000000..9174d4e0bc0
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 00000000000..39f590d6945
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 00000000000..0483b305946
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 00000000000..ddb53fadad6
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 00000000000..415999ec838
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 00000000000..87b132878b7
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 00000000000..a6527154d1f
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 00000000000..90ea5b91449
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 00000000000..65b3b3af0e1
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 00000000000..f12c6912af7
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 00000000000..3e44d64e2fb
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 00000000000..1dc9628ea24
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 00000000000..948ed1a380c
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 00000000000..5d6b16a2d9c
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 00000000000..b010b4f8aaf
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 00000000000..e08d4ad2bac
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 00000000000..76bf8cf1854
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 00000000000..46f0681f1c4
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 00000000000..d48f645d835
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 00000000000..f2807de2f27
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 00000000000..74c770d891c
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 00000000000..f58f3dadda0
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 00000000000..f009d14ac11
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 00000000000..fd35221428f
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 00000000000..484029c5ebc
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 00000000000..e6fdf6cb204
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 00000000000..0b719f086b1
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 00000000000..b31c08c0b88
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 00000000000..bfab5365695
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 00000000000..b30dcc53df9
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 00000000000..28b45ea5145
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 00000000000..57e1adcb04a
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 00000000000..b9e39bc60fb
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 00000000000..9d5bd040140
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 00000000000..d4d2687627e
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 00000000000..bd293e3d874
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 00000000000..762c3766abc
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 00000000000..8dc494db083
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 00000000000..85814e33c3c
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 00000000000..523e9f10bf6
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 00000000000..4d648604786
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 00000000000..671696c2dfd
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 00000000000..653edb258c6
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 00000000000..937dcd79210
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 00000000000..43a5a84f821
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 00000000000..38493c33fca
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 00000000000..fe5d8b1287e
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 00000000000..9e51f40e16e
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 00000000000..c503f40a931
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 00000000000..d02790822ea
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 00000000000..12e1ab6c0bd
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 00000000000..594c92155bc
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 00000000000..be1c1dd3063
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 00000000000..afdb450d1df
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 00000000000..7435d5ab3c4
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 00000000000..2397bcd0fc9
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 00000000000..39da1d52873
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 00000000000..6d0d9afd284
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 00000000000..42d4c27cabf
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 00000000000..6d2c6c42d44
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 00000000000..4987284767c
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 00000000000..7dd841d006a
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 00000000000..6ebebe70afb
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 00000000000..7983c706a40
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 00000000000..9f843b4c130
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 00000000000..92691e3117c
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 00000000000..5fd2e4512f9
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 00000000000..7a7bf59f179
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 00000000000..2dfb451a73a
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 00000000000..2d042aebeb5
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 00000000000..5f16864cbed
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 00000000000..dc2c0a8f468
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 00000000000..6ad2efa5fdc
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 00000000000..16a28548c9e
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 00000000000..3fdf8c00707
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 00000000000..68d959c507d
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 00000000000..dfd1098b394
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 00000000000..fe0827758b1
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 00000000000..82552008719
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 00000000000..fa5f9e7f9f9
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 00000000000..3702b6131c0
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 00000000000..8001d6ff8f0
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 00000000000..38c7ae7af23
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 00000000000..389a02bf282
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 00000000000..c7f6a24ac80
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 00000000000..63de8849519
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 00000000000..47ce33900ca
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 00000000000..9326077a927
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 00000000000..ccf86912960
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 00000000000..83c819ae466
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 00000000000..ccf86912960
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 00000000000..88d4784b8bb
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 00000000000..e5e556bd105
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 00000000000..6434e2e2f39
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 00000000000..c8c7b9ffa0f
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 00000000000..cae7f4951ad
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 00000000000..363c83d01c5
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 00000000000..176a8e1e825
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 00000000000..2bbbf10c9ef
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 00000000000..a9bba5c2c14
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 00000000000..44ce5ecb621
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 00000000000..97d71767136
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 00000000000..95ec357ca87
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 00000000000..c3de6ae4ea0
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 00000000000..66f25fce447
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 00000000000..7bdb422327c
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 00000000000..2420a7768e3
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 00000000000..946a20333a2
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 00000000000..2837bab4f00
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 00000000000..5ca04570e24
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 00000000000..0e01fd5f052
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 00000000000..61a4399ad83
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 00000000000..3631861bbfd
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 00000000000..71b30bff352
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 00000000000..1c5904b7144
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 00000000000..8229b8a8a94
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 00000000000..0f65b145305
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 00000000000..ae8ad103763
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 00000000000..77bbdeabcf4
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 00000000000..913ff4e2fa7
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 00000000000..a3cf75a27a1
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 00000000000..1ac24a615b2
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 00000000000..277047b7c46
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 00000000000..6404634793e
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 00000000000..d49f9c1757d
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 00000000000..b4b365f3a5c
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 00000000000..8830e146e59
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 00000000000..62be2c958f4
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 00000000000..513fce47b68
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 00000000000..361f969bc1b
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 00000000000..1b0147b1d23
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 00000000000..54a1dcfa1ef
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 00000000000..4d8bebf8a90
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 00000000000..bfc5a0d93de
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 00000000000..f2a3149bbfd
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 00000000000..9e6c59c9976
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 00000000000..b4eccd5775b
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 00000000000..f38c236937f
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 00000000000..85ae2ce72dc
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 00000000000..90bdda2c920
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 00000000000..a8f22614d62
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 00000000000..d84609c3b7b
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 00000000000..ecc8874c2fd
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 00000000000..794321aa22a
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 00000000000..540164e84e4
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 00000000000..215940aa8f1
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 00000000000..4ad56315ae6
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 00000000000..cc46a6a1fa2
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 00000000000..74b78c9c07a
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 00000000000..3c7b8b04b95
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 00000000000..0e4e168fa8f
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 00000000000..8ba4bc6535e
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 00000000000..da126e6486e
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 00000000000..14782ba23b9
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 00000000000..f2014bea44f
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 00000000000..6311c91159e
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 00000000000..c886cf2494c
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 00000000000..c8c284bf14a
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 00000000000..cfef66966a7
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 00000000000..cfe11b18ff0
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 00000000000..487b7701603
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 00000000000..61a3fee8d76
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 00000000000..54c29aeb1db
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 00000000000..8ff657a2593
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 00000000000..d42b3f0fbe5
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 00000000000..cff2bd8b776
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 00000000000..2a62c7a0810
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 00000000000..8a5d8dad5c3
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 00000000000..d926f6e88e9
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 00000000000..671dd0c9e2e
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 00000000000..552cfdc2b98
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 00000000000..f31c26a3fcc
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 00000000000..ea4126941f7
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 00000000000..b198646670c
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 00000000000..4be9cf30404
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 00000000000..59a742aaaa5
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 00000000000..7e75ab2081b
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 00000000000..cba2116a7e2
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 00000000000..0f9f007a12f
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 00000000000..337205cd125
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 00000000000..e86651e5c5c
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 00000000000..7289cb8147c
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 00000000000..cf027dda5d1
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 00000000000..fb97ba752fd
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 00000000000..1219ba7d3c1
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 00000000000..591cfcef8bb
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 00000000000..7e812b7ed45
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 00000000000..b67b335d687
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 00000000000..2b7fa43c941
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 00000000000..c49dc52c6cb
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 00000000000..902d273f6c4
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 00000000000..9f1a3fdff6e
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 00000000000..482b1c747d1
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 00000000000..addfd2e6b03
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 00000000000..5e45c25a56c
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 00000000000..d7adf04ddf2
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 00000000000..73a4dc84008
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 00000000000..6765d7d3c2e
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 00000000000..39c25bc7ccd
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 00000000000..005a55519f1
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 00000000000..ad83000e687
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 00000000000..f97a1f9a090
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 00000000000..7d7790ce4df
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 00000000000..b8be44db343
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 00000000000..0e5794270ea
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 00000000000..eeba240e533
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 00000000000..b6628f6fa70
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 00000000000..a7491cbeae6
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 00000000000..e8947153857
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 00000000000..d0f010b4a0a
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 00000000000..e193fd252fa
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 00000000000..5eddfc52b24
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 00000000000..4c560f5e3f4
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 00000000000..4a33f905ab5
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 00000000000..13d66607865
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 00000000000..ade3c3a858b
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 00000000000..8e82a0d5876
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 00000000000..de1ff1b73bf
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 00000000000..9365ae2169f
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 00000000000..ba9de7d409c
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 00000000000..525b6a0dd69
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 00000000000..3f05193c723
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 00000000000..73278898a4c
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 00000000000..f53733953af
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 00000000000..78d580ad3e9
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 00000000000..e3bbaec1d6c
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 00000000000..c05c49377fe
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 00000000000..d29f276a180
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 00000000000..a0bc9d75f21
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 00000000000..405aab41beb
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 00000000000..b68eb695780
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 00000000000..95b9ee09480
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 00000000000..3338fb717be
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 00000000000..146ef1a6a87
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 00000000000..bbd2cd4bc00
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 00000000000..190be01650e
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 00000000000..871ce097689
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 00000000000..47437a76d39
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 00000000000..3c1334d164f
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 00000000000..fa7d9dc10ab
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 00000000000..e2df0f89705
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 00000000000..afc82712510
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 00000000000..52c0a50a3f6
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 00000000000..9cb8b09b249
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 00000000000..503b614f8dc
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 00000000000..64304b9f5fb
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 00000000000..df007103b0b
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 00000000000..70bc9f32463
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 00000000000..18730ad5597
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 00000000000..1f7667ea458
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 00000000000..45932803597
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 00000000000..f225ab217c0
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 00000000000..bd21b187570
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 00000000000..e9f5471c9a2
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 00000000000..d721cea54c3
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 00000000000..47df693d424
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 00000000000..6c60cb0efc8
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 00000000000..b786efbbd8a
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 00000000000..34673213f64
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 00000000000..71dac1c1cc0
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 00000000000..34ffe137dcd
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 00000000000..14fd9918d58
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 00000000000..f3c8dcd7831
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 00000000000..adc62fbe3ce
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 00000000000..449de197048
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 00000000000..449de197048
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 00000000000..af9a80b7f09
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 00000000000..57f7b493560
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 00000000000..e17bd3cf531
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 00000000000..3bef28c9fdb
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 00000000000..b4c0c1b673d
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 00000000000..a5b4ad4aaa2
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 00000000000..f4598ec0f20
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 00000000000..803725aad71
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 00000000000..6ae30d6c2c9
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 00000000000..9ece82dfec6
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 00000000000..11c91eb22e6
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 00000000000..5229e06bdd0
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 00000000000..e4f72aceacf
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 00000000000..1c08b464db1
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 00000000000..b9fd11c5158
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 00000000000..bc45dfefd4a
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 00000000000..9814dc95989
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 00000000000..e025933b2f8
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 00000000000..3e738d2d3c8
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 00000000000..6f4a927cd0e
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 00000000000..bcfe801eec6
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 00000000000..0239e48e4f8
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 00000000000..826ed1102dc
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 00000000000..82f990c5679
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 00000000000..4892b023558
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 00000000000..375e67e8253
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 00000000000..ba55e7093f1
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 00000000000..ef34df3a404
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 00000000000..752385e523d
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 00000000000..44d7db828ad
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 00000000000..e29981f4453
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 00000000000..ea15bde4f0d
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 00000000000..7e3a3bffb65
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 00000000000..aa5b1d7c46f
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 00000000000..6e6cf11e6d7
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 00000000000..f51ce65fdde
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 00000000000..8351e70760c
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 00000000000..a5982b69bb5
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 00000000000..dae34594367
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 00000000000..59f15c5d7da
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 00000000000..d9bfa26a674
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 00000000000..7aad74b55e3
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 00000000000..036604caf2a
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 00000000000..ecba9ba7d04
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 00000000000..4e9b47207de
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 00000000000..05887e99c6b
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 00000000000..dd30d159755
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 00000000000..5b79a660c6d
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 00000000000..022df2f8d64
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 00000000000..11c13cbbd44
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 00000000000..fc97ddbc92b
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 00000000000..abccfc9f2c6
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 00000000000..94f1fda2241
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 00000000000..4acf5ab3e29
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 00000000000..68c74adada1
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 00000000000..8b7a5e4e679
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 00000000000..901090a1265
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 00000000000..c52cef23407
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 00000000000..e19cc5d0150
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 00000000000..fa16c763c94
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 00000000000..581a8244902
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 00000000000..5546c04bad4
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 00000000000..64070359776
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 00000000000..6964cf4d51a
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 00000000000..913d3002462
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 00000000000..84513f6bac4
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 00000000000..4c313e583f0
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 00000000000..b698897566a
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 00000000000..5688bb239a7
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 00000000000..1f3d1aab56c
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 00000000000..8ff162e2dbb
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 00000000000..2d777e5e1ac
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 00000000000..9c143840925
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 00000000000..61a1a9c21a4
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 00000000000..19f92efb66e
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 00000000000..5eeed8e7900
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 00000000000..93647a4a32d
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 00000000000..68b261bcba6
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 00000000000..c99e3381f1a
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 00000000000..4cf67c367d3
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 00000000000..6a66e63d2ad
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 00000000000..2b712dcd55a
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 00000000000..6e31d165283
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 00000000000..80461c66f3a
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 00000000000..b47a0cece5c
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 00000000000..682a1ba066d
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 00000000000..28d1570e0a6
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 00000000000..72492cb903d
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 00000000000..21a696eb991
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 00000000000..60c3394dc4f
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 00000000000..2ca180ae397
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 00000000000..8006cc909f3
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 00000000000..613b81cd21e
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 00000000000..4b262166455
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 00000000000..cf2086a8e74
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 00000000000..b3231f66d47
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 00000000000..d459a35bc1f
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 00000000000..41df57cf827
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 00000000000..e67802046ac
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 00000000000..53ee0f92750
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 00000000000..5880ddfd188
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 00000000000..1b29d35b98b
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 00000000000..ad17c16c29e
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 00000000000..5f0a5f6a255
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 00000000000..4f3b14c85f3
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 00000000000..0956d6ab2a8
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 00000000000..bddfa72a7d3
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 00000000000..1ff846c1913
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 00000000000..d85f9fb98c7
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 00000000000..f8d520cd490
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 00000000000..d296f25fe06
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 00000000000..52ce64b4687
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 00000000000..73add1c73cf
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 00000000000..53c3ef8d12a
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 00000000000..6433d1a90a9
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 00000000000..80c5aebb680
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 00000000000..e8b98194edb
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 00000000000..149f0cfb8e1
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 00000000000..f839565f478
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 00000000000..4cd69a15ded
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 00000000000..cb46de22cbb
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 00000000000..3695f762353
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 00000000000..af20e7eff03
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 00000000000..f78cf3103b8
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 00000000000..2d1f9f8c49d
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 00000000000..2bbbbf5e7cd
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 00000000000..cef9f428bc2
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 00000000000..daf914274a6
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 00000000000..4eef715bc28
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 00000000000..49650d59e59
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 00000000000..7ad15e649de
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 00000000000..8d981946254
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 00000000000..26602af9d81
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 00000000000..804c0d739fa
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 00000000000..37cb4de50c1
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 00000000000..e3e1fc44ee5
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 00000000000..d13b7c6206b
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 00000000000..a794fb17f67
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 00000000000..677669a83d9
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 00000000000..c24af81ccf6
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 00000000000..1e5855f8d5b
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 00000000000..b3f5bcfdd0e
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 00000000000..675b76d378c
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 00000000000..89b9fec9efa
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 00000000000..ee2139ecb88
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 00000000000..f24aca8c0a8
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 00000000000..fc97ddbc92b
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 00000000000..64c2d9b79b9
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 00000000000..d8edbcb8fa9
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 00000000000..4159f3c42ff
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 00000000000..899fbe5a791
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 00000000000..f99f6da47c1
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 00000000000..6f34d5e159d
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 00000000000..c144301cbb8
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 00000000000..c4a95c3b2a2
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 00000000000..87d2559b552
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 00000000000..f7f273c733b
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 00000000000..fec3374d709
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 00000000000..38d612446eb
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 00000000000..cd84a78ff75
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 00000000000..d6f8e287692
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 00000000000..6db2c3d5042
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 00000000000..460367d02cd
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 00000000000..81786c1d8f5
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 00000000000..658c6d91875
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 00000000000..38a99b43f7f
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 00000000000..6f9f029a420
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 00000000000..01896e214aa
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 00000000000..1cfe73672c0
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 00000000000..b8f17275ee1
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 00000000000..adac80bd97a
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 00000000000..73a4dc84008
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 00000000000..43b59e30ec2
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 00000000000..13a151418fd
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 00000000000..ce04b7008ba
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 00000000000..e9fd56079ca
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 00000000000..dc35ae8e5f6
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 00000000000..43ad8596518
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 00000000000..f8be91d7a4b
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 00000000000..4325fd48dd7
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 00000000000..f86c992d5a7
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 00000000000..1ebb2ce9b13
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 00000000000..277047b7c46
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 00000000000..d5f875043f0
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 00000000000..8f06a2b932c
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 00000000000..540c4ecb885
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 00000000000..c2e350c2dc6
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 00000000000..38cedf560fb
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 00000000000..5cb3ef6f0c6
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 00000000000..a9fd24dc14a
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 00000000000..4d09c64de7e
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 00000000000..ea589efe32c
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 00000000000..63755eec258
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 00000000000..c65ddff552a
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 00000000000..1506ba4032a
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 00000000000..f792e063b49
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 00000000000..58764cbcb3b
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 00000000000..c726c94a295
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 00000000000..22361158fb3
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 00000000000..6b1faa03793
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 00000000000..5e45c25a56c
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 00000000000..e03142bdce9
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 00000000000..e1741a40e74
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 00000000000..5ea7bfbc0d8
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 00000000000..78dc7d537fb
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 00000000000..fa7dd401c51
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 00000000000..99104c0e9cd
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 00000000000..d70a2f06263
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 00000000000..b391289b203
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 00000000000..31c68a80b08
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 00000000000..bbab82d3bb5
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 00000000000..fe5629f431e
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 00000000000..80113b6929b
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 00000000000..3c47bcc1f33
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 00000000000..d6c111b29b9
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 00000000000..ea3317c47fb
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 00000000000..26289dc3d2c
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 00000000000..63ee5ba5af2
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 00000000000..1fd22027bc5
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 00000000000..ade7c45d3bd
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 00000000000..954c901e935
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 00000000000..14361988db7
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 00000000000..8a57fd68bac
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 00000000000..783078d3798
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 00000000000..9180b9861dc
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 00000000000..fab23ad3625
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 00000000000..3479fbcbbd4
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 00000000000..6cf4a775e0a
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 00000000000..e498e92cf6a
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 00000000000..e370d0fb1d5
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 00000000000..55fcf3549e2
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 00000000000..f8db67d7018
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 00000000000..cb00429623d
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 00000000000..cb00429623d
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 00000000000..0d68bba0910
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 00000000000..387f098b99c
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 00000000000..8b5435baaa9
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 00000000000..ff656dc62bb
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 00000000000..1f69907e58a
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 00000000000..0bb3f663f5c
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 00000000000..a2240c07e7a
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 00000000000..3481cc2ef4a
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 00000000000..11c91eb22e6
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 00000000000..011559a7673
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 00000000000..afd922bf137
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 00000000000..edfb19aec91
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 00000000000..d99b8aea06a
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 00000000000..67fcea1658a
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 00000000000..9e93c885dba
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 00000000000..d94cd34ff5d
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 00000000000..c5a10e6b8f7
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 00000000000..d1cb864b4bf
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 00000000000..82e383a60d1
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 00000000000..0890a622279
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 00000000000..2ab07931050
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 00000000000..354e89ae75a
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 00000000000..0d0b382c22b
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 00000000000..c7277d2898e
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 00000000000..3145b564963
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 00000000000..5d2d8b602bb
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 00000000000..a58a47f62f9
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 00000000000..297a6d63ed3
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 00000000000..73a4dc84008
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 00000000000..45b82e61cf2
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 00000000000..0d72ab86ba5
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 00000000000..a4bd23ebf70
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 00000000000..56880556577
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 00000000000..c11af14c804
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 00000000000..98f5cb0f460
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 00000000000..bd4ee38297a
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 00000000000..093b852365a
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 00000000000..df4f55efd9a
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 00000000000..26f114830b8
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 00000000000..8cd49205fd0
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 00000000000..04941d37b63
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 00000000000..8c4428da8fa
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 00000000000..94832f060c4
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 00000000000..81a83968996
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 00000000000..ad333ba3b6b
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 00000000000..77b581d68fa
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 00000000000..dbf1b0276ab
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 00000000000..d904049309c
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 00000000000..bc6e5082c8c
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 00000000000..351565e2461
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 00000000000..4aad6cbd7c4
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 00000000000..e75e69a84d3
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 00000000000..ef58933e2b2
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 00000000000..aeda5c8d872
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 00000000000..54b68ff4f13
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 00000000000..a97902e5304
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 00000000000..1561df92eee
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 00000000000..1e118b5b184
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 00000000000..2cf46df254a
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 00000000000..e3e16ef73f8
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 00000000000..6aa4dbff4c0
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 00000000000..38404916747
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 00000000000..133a1aba8a3
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 00000000000..08de243f554
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 00000000000..23a68ceb203
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 00000000000..4aabd7e0ed3
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 00000000000..51307bcfc22
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 00000000000..64ac06663d0
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 00000000000..87944c4de54
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 00000000000..470476e182e
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 00000000000..2896c278886
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 00000000000..da6689b3be7
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 00000000000..a58a47f62f9
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 00000000000..1bfddc86255
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 00000000000..8b40ff4c8c8
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 00000000000..097a84241c1
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 00000000000..e77daa8a75f
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 00000000000..9ad90280689
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 00000000000..5495077667b
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 00000000000..e9687f9ec26
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 00000000000..d96658ea1e0
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 00000000000..13eb827ab87
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 00000000000..fa7b58e2312
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 00000000000..333716ee1fe
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 00000000000..6ae9d497d30
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 00000000000..ee276636fa4
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 00000000000..d9bad194a21
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 00000000000..f2e524787c8
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 00000000000..d23c095e080
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 00000000000..ec58dcc94ff
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 00000000000..ebc3db14680
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 00000000000..b067e8cb323
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 00000000000..0d179bd9756
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 00000000000..58e8921c0a7
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 00000000000..aaa45f61f1f
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 00000000000..e894b769960
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 00000000000..a83b3e960cd
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 00000000000..3903f717f31
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 00000000000..cde7880a14c
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 00000000000..d3878a06525
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 00000000000..16bc1da921f
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 00000000000..36aa8fed54b
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 00000000000..7411b5266a0
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 00000000000..6dea4b2d42f
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 00000000000..fc9d4f82ad9
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 00000000000..6af582f69d2
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 00000000000..60a50d365a4
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 00000000000..3ece0b708af
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 00000000000..87d2559b552
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 00000000000..36e21e0123d
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 00000000000..98e57558acb
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 00000000000..278d904ee20
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 00000000000..5c0d20e48b6
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 00000000000..febe30d0590
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 00000000000..55644c9900c
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 00000000000..41c6b825d6a
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 00000000000..81786c1d8f5
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 00000000000..cdacf1a70be
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 00000000000..d6cc84a3ba9
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 00000000000..b0c7d8dc3ec
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 00000000000..77b783453e9
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 00000000000..c7dec75a33a
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 00000000000..e5cc4119a15
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 00000000000..e1cbd7a3c5d
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 00000000000..a129700bbb5
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 00000000000..b0bab12078f
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 00000000000..5aa4dd442da
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 00000000000..7d27134d6a5
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 00000000000..058fd3eda55
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 00000000000..1facb276c42
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 00000000000..3202d80ea9f
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 00000000000..9c0d3ab6407
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 00000000000..5eb29fb71cd
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 00000000000..f9a3f32d711
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 00000000000..383677cb74c
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 00000000000..d79a7b4cce5
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 00000000000..92f93bd1025
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 00000000000..b9740a53f87
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 00000000000..119d77e73a1
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 00000000000..95d3b63f524
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 00000000000..55ca9eeda75
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 00000000000..a6d734987bb
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 00000000000..3f25ba1f92a
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 00000000000..c84cfb13e10
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 00000000000..297a6d63ed3
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 00000000000..b3ee1102a53
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 00000000000..04d1d968470
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 00000000000..803dc3d412f
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 00000000000..25cde18b250
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 00000000000..c191f8a3221
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 00000000000..b189e9aea82
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 00000000000..d1099f21ffe
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 00000000000..619646c4e02
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 00000000000..2148253fc10
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 00000000000..03ab0d8746e
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 00000000000..ba946d3f339
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 00000000000..6557f5672fb
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 00000000000..e4dfe5aa762
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 00000000000..cd8fb3f62a5
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 00000000000..5df1cb878f7
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 00000000000..25f694ed3ff
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 00000000000..fc4a9901b46
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 00000000000..f550a573da7
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 00000000000..c05f5cff73b
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 00000000000..2a62c7a0810
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 00000000000..1db722fa661
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 00000000000..3722e6f5753
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 00000000000..a789b3c6200
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 00000000000..22b429cd021
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 00000000000..829219a868a
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 00000000000..38137669aa9
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 00000000000..f61267c281d
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 00000000000..7a5ba35f09d
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 00000000000..881081c1778
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 00000000000..a716e96c635
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 00000000000..274cecdd6d4
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 00000000000..e265a3bd8cc
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 00000000000..69347b54586
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 00000000000..72e1763f573
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 00000000000..9b434539b05
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 00000000000..863638850e1
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 00000000000..52bc0381c72
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 00000000000..30387780fec
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 00000000000..51009907070
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 00000000000..db6f96f02bc
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 00000000000..d503bb87c22
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 00000000000..3bcde3edd95
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 00000000000..fc212be7844
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 00000000000..56e6e822b12
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 00000000000..5a74e5c7aeb
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 00000000000..c8f13dd31c8
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 00000000000..54e7ec6711a
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 00000000000..dfe84d2a73a
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 00000000000..0c5475411c1
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 00000000000..ead19d52cfb
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 00000000000..5bb113e4289
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 00000000000..0ef4ea94f6d
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 00000000000..eddcdd7977a
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 00000000000..61dc0583cfa
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 00000000000..3f648d1bd1f
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 00000000000..c0929d0dd99
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 00000000000..60cb19a1371
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 00000000000..a115cdc49e5
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 00000000000..199808bcf21
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 00000000000..24ba879f464
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 00000000000..ad54d55c0cd
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 00000000000..efacf5dd4be
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 00000000000..82b0f00057d
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 00000000000..756766dd3e9
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 00000000000..c60c96895f7
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 00000000000..6bf0d2b129c
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 00000000000..aa297c7b65e
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 00000000000..4cb2e6a6934
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 00000000000..2fab2966009
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 00000000000..bfa1856c019
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 00000000000..a87072ad132
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 00000000000..dff9efa8b43
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 00000000000..fa41ce78ac4
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 00000000000..139bc936e0f
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 00000000000..fc39637ecd8
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 00000000000..260c531b9e2
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 00000000000..6e57b3343ad
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 00000000000..30be04655af
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 89e5ef89d7e..cf9dade5fbb 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 00000000000..4fedf320523
--- /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 00000000000..62fdaa6455e
--- /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 9ef2f734bda..d690e3aee49 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 a8176b50dea..ef973e5c367 100644
--- a/templates/base/footer.tmpl
+++ b/templates/base/footer.tmpl
@@ -44,4 +44,6 @@
{{end}}
+
+