From f34a02708128bbce55fc4dc911f3702547968b34 Mon Sep 17 00:00:00 2001 From: coldstar Date: Sun, 23 May 2021 14:48:26 -0700 Subject: [PATCH] first commit --- .gitignore | 59 + LICENSE | 21 + README.md | 15 + app.js | 131 + app/env.js | 16 + app/rpcApi.js | 446 +++ app/utils.js | 103 + bin/www | 31 + docs/Server-Setup.md | 22 + docs/btc-explorer.com.conf | 32 + package-lock.json | 2766 +++++++++++++++++ package.json | 30 + proglog.txt | 113 + public/css/styling.css | 179 ++ .../img/favicons/android-chrome-192x192.png | Bin 0 -> 26038 bytes .../img/favicons/android-chrome-512x512.png | Bin 0 -> 123101 bytes public/img/favicons/apple-touch-icon.png | Bin 0 -> 23384 bytes public/img/favicons/browserconfig.xml | 9 + public/img/favicons/favicon-16x16.png | Bin 0 -> 721 bytes public/img/favicons/favicon-32x32.png | Bin 0 -> 1774 bytes public/img/favicons/favicon.ico | Bin 0 -> 15406 bytes public/img/favicons/manifest.json | 19 + public/img/favicons/mstile-150x150.png | Bin 0 -> 16723 bytes public/img/favicons/vivobluelogo.png | Bin 0 -> 23377 bytes public/img/icon.png | Bin 0 -> 1396 bytes public/img/logo-256.png | Bin 0 -> 42368 bytes public/img/logo/logo-64.png | Bin 0 -> 20867 bytes public/img/logo/logo-64a.png | Bin 0 -> 5602 bytes public/img/logo/vivobluelogo.png | Bin 0 -> 23377 bytes routes/baseActionsRouter.js | 367 +++ views/block-height.pug | 10 + views/block.pug | 12 + views/blocks.pug | 35 + views/btcprice.pug | 1 + views/connect.pug | 37 + views/error.pug | 14 + views/includes/block-content.pug | 245 ++ views/includes/blocks-list.pug | 22 + views/includes/pagination.pug | 26 + views/index.pug | 31 + views/layout.pug | 74 + views/mempool.pug | 75 + views/node-info.pug | 75 + views/terminal.pug | 54 + views/transaction.pug | 267 ++ 45 files changed, 5337 insertions(+) create mode 100755 .gitignore create mode 100755 LICENSE create mode 100755 README.md create mode 100755 app.js create mode 100755 app/env.js create mode 100755 app/rpcApi.js create mode 100755 app/utils.js create mode 100755 bin/www create mode 100755 docs/Server-Setup.md create mode 100755 docs/btc-explorer.com.conf create mode 100755 package-lock.json create mode 100755 package.json create mode 100755 proglog.txt create mode 100755 public/css/styling.css create mode 100755 public/img/favicons/android-chrome-192x192.png create mode 100755 public/img/favicons/android-chrome-512x512.png create mode 100755 public/img/favicons/apple-touch-icon.png create mode 100755 public/img/favicons/browserconfig.xml create mode 100755 public/img/favicons/favicon-16x16.png create mode 100755 public/img/favicons/favicon-32x32.png create mode 100755 public/img/favicons/favicon.ico create mode 100755 public/img/favicons/manifest.json create mode 100755 public/img/favicons/mstile-150x150.png create mode 100755 public/img/favicons/vivobluelogo.png create mode 100755 public/img/icon.png create mode 100755 public/img/logo-256.png create mode 100755 public/img/logo/logo-64.png create mode 100755 public/img/logo/logo-64a.png create mode 100755 public/img/logo/vivobluelogo.png create mode 100755 routes/baseActionsRouter.js create mode 100755 views/block-height.pug create mode 100755 views/block.pug create mode 100755 views/blocks.pug create mode 100755 views/btcprice.pug create mode 100755 views/connect.pug create mode 100755 views/error.pug create mode 100755 views/includes/block-content.pug create mode 100755 views/includes/blocks-list.pug create mode 100755 views/includes/pagination.pug create mode 100755 views/index.pug create mode 100755 views/layout.pug create mode 100755 views/mempool.pug create mode 100755 views/node-info.pug create mode 100755 views/terminal.pug create mode 100755 views/transaction.pug diff --git a/.gitignore b/.gitignore new file mode 100755 index 0000000..00cbbdf --- /dev/null +++ b/.gitignore @@ -0,0 +1,59 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (http://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ + +# Typescript v1 declaration files +typings/ + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variables file +.env + diff --git a/LICENSE b/LICENSE new file mode 100755 index 0000000..1fcc40b --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2017 Dan Janosik + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100755 index 0000000..0716bce --- /dev/null +++ b/README.md @@ -0,0 +1,15 @@ + +Simple, stateless Vivocoin blockchain explorer, via RPC. Built with Node.js, express, bootstrap-v4. + +This tool is intended to be a simple, stateless, self-hosted explorer for the Vivocoin blockchain, driven by RPC calls to your own smartcashd node. This tool is easy to run but lacks features compared to full-fledged (stateful) explorers. + +I built this tool because I wanted to use it myself. Whatever reasons one might have for running a full node (trustlessness, technical curiosity, etc) it's helpful to appreciate the "fullness" of a node. + +# Features + +* List of recent blocks +* Browse blocks by height, in ascending or descending order +* View block details +* View transaction details, with navigation backward via spent outputs +* View raw JSON output used to generate most pages +* Mempool/unconfirmed transaction counts by fee (sat/B) diff --git a/app.js b/app.js new file mode 100755 index 0000000..c79d4aa --- /dev/null +++ b/app.js @@ -0,0 +1,131 @@ +#!/usr/bin/env node + +'use strict'; + +var express = require('express'); +var path = require('path'); +var favicon = require('serve-favicon'); +var logger = require('morgan'); +var cookieParser = require('cookie-parser'); +var bodyParser = require('body-parser'); +var session = require("express-session"); +var env = require("./app/env.js"); +var simpleGit = require('simple-git'); +var utils = require("./app/utils.js"); +var moment = require("moment"); +var Decimal = require('decimal.js'); +var bitcoin = require("bitcoin"); +var momentDurationFormat = require("moment-duration-format"); + + +var baseActionsRouter = require('./routes/baseActionsRouter'); + +var app = express(); + +// view engine setup +app.set('views', path.join(__dirname, 'views')); +app.set('view engine', 'pug'); + +// uncomment after placing your favicon in /public +//app.use(favicon(__dirname + '/public/favicon.ico')); +app.use(logger('dev')); +app.use(bodyParser.json()); +app.use(bodyParser.urlencoded({ extended: false })); +app.use(cookieParser()); +app.use(session({ + secret: env.cookiePassword, + resave: false, + saveUninitialized: false +})); +app.use(express.static(path.join(__dirname, 'public'))); + + +// Make our db accessible to our router +app.use(function(req, res, next) { + // make session available in templates + res.locals.session = req.session; + res.locals.debug = env.debug; + + if (env.smartcashd && env.smartcashd.rpc) { + req.session.host = env.smartcashd.host; + req.session.port = env.smartcashd.port; + req.session.username = env.smartcashd.rpc.username; + + global.client = new bitcoin.Client({ + host: env.smartcashd.host, + port: env.smartcashd.port, + user: env.smartcashd.rpc.username, + pass: env.smartcashd.rpc.password, + timeout: 5000 + }); + } + + res.locals.host = req.session.host; + res.locals.port = req.session.port; + +/* if (!["/", "/connect"].includes(req.originalUrl)) { + if (utils.redirectToConnectPageIfNeeded(req, res)) { + return; + } + } +*/ + if (req.session.userMessage) { + res.locals.userMessage = req.session.userMessage; + + if (req.session.userMessageType) { + res.locals.userMessageType = req.session.userMessageType; + + } else { + res.locals.userMessageType = "info"; + } + } + + req.session.userMessage = null; + req.session.userMessageType = null; + + // make some var available to all request + // ex: req.cheeseStr = "cheese"; + + next(); +}); + +app.use('/', baseActionsRouter); + +/// catch 404 and forwarding to error handler +app.use(function(req, res, next) { + var err = new Error('Not Found'); + err.status = 404; + next(err); +}); + +/// error handlers + +// development error handler +// will print stacktrace +if (app.get('env') === 'development') { + app.use(function(err, req, res, next) { + res.status(err.status || 500); + res.render('error', { + message: err.message, + error: err + }); + }); +} + +// production error handler +// no stacktraces leaked to user +app.use(function(err, req, res, next) { + res.status(err.status || 500); + res.render('error', { + message: err.message, + error: {} + }); +}); + +app.locals.moment = moment; +app.locals.Decimal = Decimal; +app.locals.utils = utils; + + + +module.exports = app; diff --git a/app/env.js b/app/env.js new file mode 100755 index 0000000..8feeaac --- /dev/null +++ b/app/env.js @@ -0,0 +1,16 @@ +module.exports = { + cookiePassword: "0x000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", + debug: false, + + // Uncomment "smartcashd" below to automatically connect via RPC. + // Otherwise, you can manually connect via the UI. + + smartcashd:{ + host:"127.0.0.1", + port:5567, + rpc: { + username:"vivorpc", + password:"c46d58eb99da24bb0392875f" + } + } +}; diff --git a/app/rpcApi.js b/app/rpcApi.js new file mode 100755 index 0000000..ab8b83f --- /dev/null +++ b/app/rpcApi.js @@ -0,0 +1,446 @@ + +var fs = require('fs'); +var stream = fs.createWriteStream("proglog.txt"); +var utils = require("./utils.js"); + + + +var genesisCoinbaseTransactionTxid = "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b"; +var genesisCoinbaseTransaction = { + "hex": "01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0804ffff001d02fd04ffffffff0100f2052a01000000434104f5eeb2b10c944c6b9fbcfff94c35bdeecd93df977882babc7f3a2cf7f5c81d3b09a68db7f0e04f21de5d4230e75e6dbe7ad16eefe0d4325a62067dc6f369446aac00000000", + "txid": "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b", + "hash": "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b", + "size": 204, + "vsize": 204, + "version": 1, + "confirmations":475000, + "vin": [ + { + "coinbase": "04ffff001d0104455468652054696d65732030332f4a616e2f32303039204368616e63656c6c6f72206f6e206272696e6b206f66207365636f6e64206261696c6f757420666f722062616e6b73", + "sequence": 4294967295 + } + ], + "vout": [ + { + "value": 50, + "n": 0, + "scriptPubKey": { + "asm": "04f5eeb2b10c944c6b9fbcfff94c35bdeecd93df977882babc7f3a2cf7f5c81d3b09a68db7f0e04f21de5d4230e75e6dbe7ad16eefe0d4325a62067dc6f369446a OP_CHECKSIG", + "hex": "4104f5eeb2b10c944c6b9fbcfff94c35bdeecd93df977882babc7f3a2cf7f5c81d3b09a68db7f0e04f21de5d4230e75e6dbe7ad16eefe0d4325a62067dc6f369446aac", + "reqSigs": 1, + "type": "pubkey", + "addresses": [ + "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa" + ] + } + } + ], + "blockhash": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f", + "time": 1230988505, + "blocktime": 1230988505 +}; + +function getInfo() { + return new Promise(function(resolve, reject) { + client.cmd('getinfo', function(err, result, resHeaders) { + if (err) { + console.log("Error 3207fh0f: " + err); + + reject(err); + + return; + } + + resolve(result); + }); + }); +} + +function getMiningInfo() { + return new Promise(function(resolve, reject) { + client.cmd('getmininginfo', function(err, result, resHeaders) { + if (err) { + console.log("Error 3207fh0f: " + err); + + reject(err); + + return; + } + + resolve(result); + }); + }); +} + +function getMempoolInfo() { + return new Promise(function(resolve, reject) { + client.cmd('getmempoolinfo', function(err, result, resHeaders) { + if (err) { + console.log("Error 23407rhwe07fg: " + err); + + reject(err); + + return; + } + + resolve(result); + }); + }); +} + +function getMempoolStats() { + return new Promise(function(resolve, reject) { + client.cmd('getrawmempool', true, function(err, result, resHeaders) { + if (err) { + console.log("Error 428thwre0ufg: " + err); + + reject(err); + + return; + } + + var compiledResult = {}; + compiledResult.count = 0; + compiledResult.fee_0_5 = 0; + compiledResult.fee_6_10 = 0; + compiledResult.fee_11_25 = 0; + compiledResult.fee_26_50 = 0; + compiledResult.fee_51_75 = 0; + compiledResult.fee_76_100 = 0; + compiledResult.fee_101_150 = 0; + compiledResult.fee_151_max = 0; + + var totalFee = 0; + for (var txid in result) { + var txMempoolInfo = result[txid]; + totalFee += txMempoolInfo.modifiedfee; + var feeRate = Math.round(txMempoolInfo.modifiedfee * 100000000 / txMempoolInfo.size); + + if (feeRate <= 5) { + compiledResult.fee_0_5++; + + } else if (feeRate <= 10) { + compiledResult.fee_6_10++; + + } else if (feeRate <= 25) { + compiledResult.fee_11_25++; + + } else if (feeRate <= 50) { + compiledResult.fee_26_50++; + + } else if (feeRate <= 75) { + compiledResult.fee_51_75++; + + } else if (feeRate <= 100) { + compiledResult.fee_76_100++; + + } else if (feeRate <= 150) { + compiledResult.fee_101_150++; + + } else { + compiledResult.fee_151_max++; + } + + compiledResult.count++; + } + + compiledResult.totalFee = totalFee; + + resolve(compiledResult); + }); + }); +} + + +function getBlockByHeight(blockHeight) { + console.log("getBlockByHeightzz: " + blockHeight); + console.log("xxxxxxxxxxxxxxxxxxxxxxxxxxxxx \n"); +//************************************************************************************* + +stream.write('block:'+blockHeight); + + + return new Promise(function(resolve, reject) { + var client = global.client; + + client.cmd('getblockhash', blockHeight, function(err, result, resHeaders) { + if (err) { + console.log("Error 0928317yr3w: " + err); + + reject(err); + + return; + } + + client.cmd('getblock', result, function(err2, result2, resHeaders2) { + if (err2) { + console.log("Error 320fh7e0hg: " + err2); + + reject(err2); + + return; + } + + resolve({ success:true, getblockhash:result, getblock:result2 }); + }); + }); + }); +} + + + +function getBlocksByHeight(blockHeights) { + console.log("getBlocksByHeight: " + blockHeights); + + + console.log("getBlockByHeightzz: " + blockHeights); + console.log("xxxxxxxxxxxxxxxxxxxxxxxxxxxxx \n"); +//************************************************************************************* + +stream.write('block:'+blockHeights+"\n"); + + + + return new Promise(function(resolve, reject) { + var batch = []; + for (var i = 0; i < blockHeights.length; i++) { + batch.push({ + method: 'getblockhash', + params: [ blockHeights[i] ] + }); + } + + var blockHashes = []; + client.cmd(batch, function(err, result, resHeaders) { + blockHashes.push(result); + + if (blockHashes.length == batch.length) { + var batch2 = []; + for (var i = 0; i < blockHashes.length; i++) { + batch2.push({ + method: 'getblock', + params: [ blockHashes[i] ] + }); + } + + var blocks = []; + client.cmd(batch2, function(err2, result2, resHeaders2) { + if (err2) { + console.log("Error 138ryweufdf: " + err2); + } + + blocks.push(result2); + if (blocks.length == batch2.length) { + resolve(blocks); + } + }); + } + }); + }); +} + +function getBlockByHash(blockHash) { + console.log("getBlockByHash: " + blockHash); + + return new Promise(function(resolve, reject) { + var client = global.client; + + client.cmd('getblock', blockHash, function(err, result, resHeaders) { + if (err) { + console.log("Error 0u2fgewue: " + err); + + reject(err); + + return; + } + + resolve(result); + }); + }); +} + +function getTransactionInputs(rpcClient, transaction, inputLimit=0) { + console.log("getTransactionInputs: " + transaction.txid); + + return new Promise(function(resolve, reject) { + var txids = []; + for (var i = 0; i < transaction.vin.length; i++) { + if (i < inputLimit || inputLimit == 0) { + txids.push(transaction.vin[i].txid); + } + } + + getRawTransactions(txids).then(function(inputTransactions) { + resolve({ txid:transaction.txid, inputTransactions:inputTransactions }); + }); + }); +} + +function getRawTransaction(txid) { + return new Promise(function(resolve, reject) { + if (txid == genesisCoinbaseTransactionTxid) { + getBlockByHeight(0).then(function(blockZeroResult) { + var result = genesisCoinbaseTransaction; + result.confirmations = blockZeroResult.getblock.confirmations; + + resolve(result); + }); + + return; + } + + client.cmd('getrawtransaction', txid, 1, function(err, result, resHeaders) { + if (err) { + console.log("Error 329813yre823: " + err); + + reject(err); + + return; + } + + resolve(result); + }); + }); +} + +function getRawTransactions(txids) { + console.log("getRawTransactions: " + txids); + + return new Promise(function(resolve, reject) { + if (!txids || txids.length == 0) { + resolve([]); + + return; + } + + if (txids.length == 1 && txids[0] == "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b") { + // copy the "confirmations" field from genesis block to the genesis-coinbase tx + getBlockByHeight(0).then(function(blockZeroResult) { + var result = genesisCoinbaseTransaction; + result.confirmations = blockZeroResult.getblock.confirmations; + + resolve([result]); + + }).catch(function(err) { + reject(err); + + return; + }); + + return; + } + + var requests = []; + for (var i = 0; i < txids.length; i++) { + var txid = txids[i]; + + if (txid) { + requests.push({ + method: 'getrawtransaction', + params: [ txid, 1 ] + }); + } + } + + var requestBatches = utils.splitArrayIntoChunks(requests, 20); + + executeBatchesSequentially(requestBatches, function(results) { + resolve(results); + }); + }); +} + +function executeBatchesSequentially(batches, resultFunc) { + var batchId = utils.getRandomString(20, 'aA#'); + + console.log("Starting " + batches.length + "-item batch " + batchId + "..."); + + executeBatchesSequentiallyInternal(batchId, batches, 0, [], resultFunc); +} + +function executeBatchesSequentiallyInternal(batchId, batches, currentIndex, accumulatedResults, resultFunc) { + if (currentIndex == batches.length) { + console.log("Finishing batch " + batchId + "..."); + + resultFunc(accumulatedResults); + + return; + } + + console.log("Executing item #" + (currentIndex + 1) + " (of " + batches.length + ") for batch " + batchId); + + var count = batches[currentIndex].length; + + client.cmd(batches[currentIndex], function(err, result, resHeaders) { + if (err) { + console.log("Error f83024hf4: " + err); + } + + accumulatedResults.push(result); + + count--; + + if (count == 0) { + executeBatchesSequentiallyInternal(batchId, batches, currentIndex + 1, accumulatedResults, resultFunc); + } + }); +} + +function getBlockData(rpcClient, blockHash, txLimit, txOffset) { + console.log("getBlockData: " + blockHash); + + return new Promise(function(resolve, reject) { + client.cmd('getblock', blockHash, function(err2, result2, resHeaders2) { + if (err2) { + console.log("Error 3017hfwe0f: " + err2); + + reject(err2); + + return; + } + + var txids = []; + for (var i = txOffset; i < Math.min(txOffset + txLimit, result2.tx.length); i++) { + txids.push(result2.tx[i]); + } + + getRawTransactions(txids).then(function(transactions) { + var txInputsByTransaction = {}; + + var promises = []; + for (var i = 0; i < transactions.length; i++) { + var transaction = transactions[i]; + + if (transaction) { + promises.push(getTransactionInputs(client, transaction, 10)); + } + } + + Promise.all(promises).then(function() { + var results = arguments[0]; + for (var i = 0; i < results.length; i++) { + var resultX = results[i]; + + txInputsByTransaction[resultX.txid] = resultX.inputTransactions; + } + + resolve({ getblock:result2, transactions:transactions, txInputsByTransaction:txInputsByTransaction }); + }); + }); + }); + }); +} + +module.exports = { + getInfo: getInfo, + getMiningInfo: getMiningInfo, + getMempoolInfo: getMempoolInfo, + getBlockByHeight: getBlockByHeight, + getBlocksByHeight: getBlocksByHeight, + getBlockByHash: getBlockByHash, + getTransactionInputs: getTransactionInputs, + getBlockData: getBlockData, + getRawTransaction: getRawTransaction, + getRawTransactions: getRawTransactions, + getMempoolStats: getMempoolStats +}; \ No newline at end of file diff --git a/app/utils.js b/app/utils.js new file mode 100755 index 0000000..4c9bd5e --- /dev/null +++ b/app/utils.js @@ -0,0 +1,103 @@ + + +var Decimal = require("decimal.js"); +Decimal8 = Decimal.clone({ precision:8, rounding:8 }); + +function doSmartRedirect(req, res, defaultUrl) { + if (req.session.redirectUrl) { + res.redirect(req.session.redirectUrl); + req.session.redirectUrl = null; + + } else { + res.redirect(defaultUrl); + } + + res.end(); +} + +function redirectToConnectPageIfNeeded(req, res) { + if (!req.session.host) { + req.session.redirectUrl = req.originalUrl; + + res.redirect("/"); + res.end(); + + return true; + } + + return false; +} + +function hex2ascii(hex) { + var str = ""; + for (var i = 0; i < hex.length; i += 2) { + str += String.fromCharCode(parseInt(hex.substr(i, 2), 16)); + } + + return str; +} + +function getBlockReward(blockHeight) { + + var nSubsidy = 10 * 100000000; + var prevBlock = blockHeight -1; + + // yearly decline of production by 10% per year, projected 136m coins max by year 2050+. + + var i =0; + + for (i = 262800; i <= prevBlock ; i += 262800 ) { + + nSubsidy -= nSubsidy/10; + + } + + return nSubsidy/100000000; +} + +function splitArrayIntoChunks(array, chunkSize) { + var j = array.length; + var chunks = []; + + for (var i = 0; i < j; i += chunkSize) { + chunks.push(array.slice(i, i + chunkSize)); + } + + return chunks; +} + +function getRandomString(length, chars) { + var mask = ''; + + if (chars.indexOf('a') > -1) { + mask += 'abcdefghijklmnopqrstuvwxyz'; + } + + if (chars.indexOf('A') > -1) { + mask += 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; + } + + if (chars.indexOf('#') > -1) { + mask += '0123456789'; + } + + if (chars.indexOf('!') > -1) { + mask += '~`!@#$%^&*()_+-={}[]:";\'<>?,./|\\'; + } + + var result = ''; + for (var i = length; i > 0; --i) { + result += mask[Math.floor(Math.random() * mask.length)]; + } + + return result; +} + +module.exports = { + doSmartRedirect: doSmartRedirect, + redirectToConnectPageIfNeeded: redirectToConnectPageIfNeeded, + hex2ascii: hex2ascii, + getBlockReward: getBlockReward, + splitArrayIntoChunks: splitArrayIntoChunks, + getRandomString: getRandomString +}; diff --git a/bin/www b/bin/www new file mode 100755 index 0000000..2f01f1b --- /dev/null +++ b/bin/www @@ -0,0 +1,31 @@ +#!/usr/bin/env node +var debug = require('debug')('my-application'); +var app = require('../app'); +var http = require('http'); +var https = require('https'); +var fs = require('fs'); + +// Https run +/* +const httpsOptions = { + cert: fs.readFileSync('/etc/letsencrypt/live/rpcexplorer.smartcash.cc/fullchain.pem'), + key: fs.readFileSync('/etc/letsencrypt/live/rpcexplorer.smartcash.cc/privkey.pem') +} + +https.createServer(httpsOptions, app).listen(443, function() { + debug('Https/Express server listening on port 443'); +}); + +// Forwarding http to https +http.createServer(function (req, res) { + res.writeHead(301, { "Location": "https://" + req.headers['host'] + req.url }); + res.end(); +}).listen(80); +*/ + +// Http run +app.set('port', process.env.PORT || 80); +var server = app.listen(app.get('port'), function() { + debug('Express server listening on port ' + server.address().port); +}); + diff --git a/docs/Server-Setup.md b/docs/Server-Setup.md new file mode 100755 index 0000000..7260a46 --- /dev/null +++ b/docs/Server-Setup.md @@ -0,0 +1,22 @@ +### Setup of https://btc-explorer.com on Ubuntu 16.04 + + apt update + apt upgrade + apt install git python-software-properties software-properties-common nginx + curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - + npm install pm2 --global + add-apt-repository ppa:certbot/certbot + apt update + apt upgrade + apt install python-certbot-nginx + +Copy content from [./btc-explorer.com.conf](./btc-explorer.com.conf) into `/etc/nginx/sites-available/btc-explorer.com.conf` + + certbot --nginx -d btc-explorer.com + cd /etc/ssl/certs + openssl dhparam -out dhparam.pem 4096 + cd /home/bitcoin + git clone https://github.com/janoside/btc-rpc-explorer.git + cd /home/bitcoin/btc-rpc-explorer + npm install + pm2 start bin/www --name "btc-rpc-explorer" diff --git a/docs/btc-explorer.com.conf b/docs/btc-explorer.com.conf new file mode 100755 index 0000000..66f1277 --- /dev/null +++ b/docs/btc-explorer.com.conf @@ -0,0 +1,32 @@ +## http://domain.com redirects to https://domain.com +server { + server_name btc-explorer.com; + listen 80; + #listen [::]:80 ipv6only=on; + + location / { + return 301 https://btc-explorer.com$request_uri; + } +} + +## Serves httpS://domain.com +server { + server_name btc-explorer.com; + listen 443 ssl http2; + #listen [::]:443 ssl http2 ipv6only=on; + + ssl_protocols TLSv1 TLSv1.1 TLSv1.2; + ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH'; + ssl_prefer_server_ciphers on; + ssl_session_cache shared:SSL:10m; + ssl_dhparam /etc/ssl/certs/dhparam.pem; + + location / { + proxy_pass http://localhost:3002; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection 'upgrade'; + proxy_set_header Host $host; + proxy_cache_bypass $http_upgrade; + } +} diff --git a/package-lock.json b/package-lock.json new file mode 100755 index 0000000..8ade94b --- /dev/null +++ b/package-lock.json @@ -0,0 +1,2766 @@ +{ + "name": "rpc-explorer", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "bitcoin": "3.0.1", + "body-parser": "~1.16.0", + "cookie-parser": "~1.4.3", + "crypto-js": "3.1.9-1", + "debug": "~2.6.0", + "decimal.js": "7.2.3", + "express": "~4.14.1", + "express-session": "1.15.2", + "jstransformer-markdown-it": "^2.0.0", + "moment": "^2.18.1", + "moment-duration-format": "1.3.0", + "monk": "^4.0.0", + "morgan": "~1.7.0", + "pug": "2.0.0-rc.2", + "serve-favicon": "~2.3.2", + "simple-git": "1.73.0" + } + }, + "node_modules/@types/babel-types": { + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.9.tgz", + "integrity": "sha512-qZLoYeXSTgQuK1h7QQS16hqLGdmqtRmN8w/rl3Au/l5x/zkHx+a4VHrHyBsi1I1vtK2oBHxSzKIu0R5p6spdOA==" + }, + "node_modules/@types/babylon": { + "version": "6.16.5", + "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", + "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", + "dependencies": { + "@types/babel-types": "*" + } + }, + "node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dependencies": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", + "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", + "dependencies": { + "acorn": "^4.0.4" + } + }, + "node_modules/align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "dependencies": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "engines": { + "node": ">=0.4.2" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "node_modules/babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dependencies": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "node_modules/babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dependencies": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "node_modules/babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "bin": { + "babylon": "bin/babylon.js" + } + }, + "node_modules/basic-auth": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-1.0.4.tgz", + "integrity": "sha1-Awk1sB3nyblKgksp8/zLdQ06UpA=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/bitcoin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/bitcoin/-/bitcoin-3.0.1.tgz", + "integrity": "sha1-/54LYqcbu4rd2zTuLkJ9rCHBCW8=", + "deprecated": "Use npmjs.com/bitcoin-core instead as this package is no longer maintained.", + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/body-parser": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.16.1.tgz", + "integrity": "sha1-UVQNBFrfp6DGmVoBS7ax7ZuAIyk=", + "dependencies": { + "bytes": "2.4.0", + "content-type": "~1.0.2", + "debug": "2.6.1", + "depd": "~1.1.0", + "http-errors": "~1.5.1", + "iconv-lite": "0.4.15", + "on-finished": "~2.3.0", + "qs": "6.2.1", + "raw-body": "~2.2.0", + "type-is": "~1.6.14" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.1.tgz", + "integrity": "sha1-eYVQkLosTjEVzH2HaUkdWPBJE1E=", + "dependencies": { + "ms": "0.7.2" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=" + }, + "node_modules/bson": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/bson/-/bson-1.0.9.tgz", + "integrity": "sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg==", + "deprecated": "Fixed a critical issue with BSON serialization documented in CVE-2019-2391, see https://bit.ly/2KcpXdo for more details", + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/buffer-shims": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", + "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=" + }, + "node_modules/bytes": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-2.4.0.tgz", + "integrity": "sha1-fZcZb51br39pNeJZhVSe3SpsIzk=" + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "dependencies": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", + "dependencies": { + "is-regex": "^1.0.3" + } + }, + "node_modules/clean-css": { + "version": "3.4.28", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz", + "integrity": "sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=", + "dependencies": { + "commander": "2.8.x", + "source-map": "0.4.x" + }, + "bin": { + "cleancss": "bin/cleancss" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "dependencies": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + } + }, + "node_modules/commander": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", + "dependencies": { + "graceful-readlink": ">= 1.0.0" + }, + "engines": { + "node": ">= 0.6.x" + } + }, + "node_modules/constantinople": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", + "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", + "dependencies": { + "@types/babel-types": "^7.0.0", + "@types/babylon": "^6.16.2", + "babel-types": "^6.26.0", + "babylon": "^6.18.0" + } + }, + "node_modules/content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-parser": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.5.tgz", + "integrity": "sha512-f13bPUj/gG/5mDr+xLmSxxDsB9DQiTIfhJS/sqjrmfAWiAN+x2O4i/XguTL9yDZ+/IFDanJ+5x7hC4CXT9Tdzw==", + "dependencies": { + "cookie": "0.4.0", + "cookie-signature": "1.0.6" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "node_modules/core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "deprecated": "core-js@<3.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.", + "hasInstallScript": true + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "node_modules/crc": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz", + "integrity": "sha1-naHpgOO9RPxck79as9ozeNheRms=" + }, + "node_modules/crypto-js": { + "version": "3.1.9-1", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.1.9-1.tgz", + "integrity": "sha1-/aGedh/Ad+Af+/3G6f38WeiAbNg=" + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decimal.js": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-7.2.3.tgz", + "integrity": "sha512-AoFI37QS0S87Ft0r3Bdz4q9xSpm1Paa9lSeKLXgMPk/u/+QPIM5Gy4DHcZQS1seqPJH4gHLauPGn347z0HbsrA==" + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "node_modules/doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=" + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "node_modules/es6-promise": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.2.1.tgz", + "integrity": "sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q=" + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.7.0.tgz", + "integrity": "sha1-A9MLX2fdbmMtKUXTDWZScxo01dg=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.14.1.tgz", + "integrity": "sha1-ZGwjf3ZvFIwhIK/wc4F7nk1+DTM=", + "dependencies": { + "accepts": "~1.3.3", + "array-flatten": "1.1.1", + "content-disposition": "0.5.2", + "content-type": "~1.0.2", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "~2.2.0", + "depd": "~1.1.0", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "etag": "~1.7.0", + "finalhandler": "0.5.1", + "fresh": "0.3.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.1", + "path-to-regexp": "0.1.7", + "proxy-addr": "~1.1.3", + "qs": "6.2.0", + "range-parser": "~1.2.0", + "send": "0.14.2", + "serve-static": "~1.11.2", + "type-is": "~1.6.14", + "utils-merge": "1.0.0", + "vary": "~1.1.0" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express-session": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.15.2.tgz", + "integrity": "sha1-2YUWRDpMy4aI4XJa5YTALapAk9Q=", + "dependencies": { + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "crc": "3.4.4", + "debug": "2.6.3", + "depd": "~1.1.0", + "on-headers": "~1.0.1", + "parseurl": "~1.3.1", + "uid-safe": "~2.1.4", + "utils-merge": "1.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/express-session/node_modules/cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express-session/node_modules/debug": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.3.tgz", + "integrity": "sha1-D364wwll7AjHKsz6ATDIt5mEFB0=", + "dependencies": { + "ms": "0.7.2" + } + }, + "node_modules/express-session/node_modules/ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=" + }, + "node_modules/express/node_modules/cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "dependencies": { + "ms": "0.7.1" + } + }, + "node_modules/express/node_modules/ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=" + }, + "node_modules/express/node_modules/qs": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.0.tgz", + "integrity": "sha1-O3hIwDwt7OaalSKw+ujEEm10Xzs=", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/finalhandler": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-0.5.1.tgz", + "integrity": "sha1-LEANjUUwk1vCMlScX6OF7Afeb80=", + "dependencies": { + "debug": "~2.2.0", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "statuses": "~1.3.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "dependencies": { + "ms": "0.7.1" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=" + }, + "node_modules/forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.3.0.tgz", + "integrity": "sha1-ZR+DjiJCTnVm3hYdg1jKoZn4PU8=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gitbook-plugin-github": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/gitbook-plugin-github/-/gitbook-plugin-github-2.0.0.tgz", + "integrity": "sha1-UWbnY8/MQC1DKIC3pshcHFS1ao0=", + "engines": { + "gitbook": ">=2.5.0" + } + }, + "node_modules/graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/http-errors": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.5.1.tgz", + "integrity": "sha1-eIwNLB3iyBuebowBhDtrl+uSB1A=", + "dependencies": { + "inherits": "2.0.3", + "setprototypeof": "1.0.2", + "statuses": ">= 1.3.1 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.15", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.15.tgz", + "integrity": "sha1-/iZaIYrGpXz+hUkn6dBMGYJe3es=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "node_modules/ipaddr.js": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.4.0.tgz", + "integrity": "sha1-KWrKh4qCGBbluF0KKFqZvP9FgvA=", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/is-core-module": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", + "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-expression": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", + "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", + "dependencies": { + "acorn": "~4.0.2", + "object-assign": "^4.0.1" + } + }, + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" + }, + "node_modules/is-regex": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", + "dependencies": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=" + }, + "node_modules/jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", + "dependencies": { + "is-promise": "^2.0.0", + "promise": "^7.0.1" + } + }, + "node_modules/jstransformer-markdown-it": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", + "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", + "dependencies": { + "markdown-it": "^8.0.0" + }, + "engines": { + "node": ">=7" + } + }, + "node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/linkify-it": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "dependencies": { + "uc.micro": "^1.0.1" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/markdown-it": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", + "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "dependencies": { + "argparse": "^1.0.7", + "entities": "~1.1.1", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + }, + "bin": { + "markdown-it": "bin/markdown-it.js" + } + }, + "node_modules/mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz", + "integrity": "sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM=", + "bin": { + "mime": "cli.js" + } + }, + "node_modules/mime-db": { + "version": "1.47.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz", + "integrity": "sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.30", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.30.tgz", + "integrity": "sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg==", + "dependencies": { + "mime-db": "1.47.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/moment": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==", + "engines": { + "node": "*" + } + }, + "node_modules/moment-duration-format": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/moment-duration-format/-/moment-duration-format-1.3.0.tgz", + "integrity": "sha1-VBdxtfh6BJzGVUBHXTrZZnN9aQg=" + }, + "node_modules/mongodb": { + "version": "2.2.36", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.36.tgz", + "integrity": "sha512-P2SBLQ8Z0PVx71ngoXwo12+FiSfbNfGOClAao03/bant5DgLNkOPAck5IaJcEk4gKlQhDEURzfR3xuBG1/B+IA==", + "dependencies": { + "es6-promise": "3.2.1", + "mongodb-core": "2.1.20", + "readable-stream": "2.2.7" + }, + "engines": { + "node": ">=0.10.3" + } + }, + "node_modules/mongodb-core": { + "version": "2.1.20", + "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.20.tgz", + "integrity": "sha512-IN57CX5/Q1bhDq6ShAR6gIv4koFsZP7L8WOK1S0lR0pVDQaScffSMV5jxubLsmZ7J+UdqmykKw4r9hG3XQEGgQ==", + "dependencies": { + "bson": "~1.0.4", + "require_optional": "~1.0.0" + } + }, + "node_modules/monk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/monk/-/monk-4.1.0.tgz", + "integrity": "sha1-x+VA6GquaQ1xLD4KtwYa2LpaOio=", + "dependencies": { + "debug": "*", + "gitbook-plugin-github": "2.0.0", + "mongodb": "^2.1.18" + } + }, + "node_modules/morgan": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.7.0.tgz", + "integrity": "sha1-6xDKjlDRq+D409rVwCAdBS2YHGI=", + "dependencies": { + "basic-auth": "~1.0.3", + "debug": "~2.2.0", + "depd": "~1.1.0", + "on-finished": "~2.3.0", + "on-headers": "~1.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/morgan/node_modules/debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "dependencies": { + "ms": "0.7.1" + } + }, + "node_modules/morgan/node_modules/ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=" + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "node_modules/process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dependencies": { + "asap": "~2.0.3" + } + }, + "node_modules/proxy-addr": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.1.5.tgz", + "integrity": "sha1-ccDuOxAt4/IC87ZPYI0XP8uhqRg=", + "dependencies": { + "forwarded": "~0.1.0", + "ipaddr.js": "1.4.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/pug": { + "version": "2.0.0-rc.2", + "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.0-rc.2.tgz", + "integrity": "sha1-B4RVJ3kKssa+Z9z16x8xgECB8Eo=", + "dependencies": { + "pug-code-gen": "^1.1.1", + "pug-filters": "^2.1.3", + "pug-lexer": "^3.1.0", + "pug-linker": "^3.0.1", + "pug-load": "^2.0.7", + "pug-parser": "^3.0.0", + "pug-runtime": "^2.0.3", + "pug-strip-comments": "^1.0.2" + } + }, + "node_modules/pug-attrs": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", + "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", + "dependencies": { + "constantinople": "^3.0.1", + "js-stringify": "^1.0.1", + "pug-runtime": "^2.0.5" + } + }, + "node_modules/pug-code-gen": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-1.1.1.tgz", + "integrity": "sha1-HPcnRO8qA56uajNAyqoRBYcSWOg=", + "dependencies": { + "constantinople": "^3.0.1", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.1", + "pug-attrs": "^2.0.2", + "pug-error": "^1.3.2", + "pug-runtime": "^2.0.3", + "void-elements": "^2.0.1", + "with": "^5.0.0" + } + }, + "node_modules/pug-error": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", + "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==" + }, + "node_modules/pug-filters": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-2.1.5.tgz", + "integrity": "sha512-xkw71KtrC4sxleKiq+cUlQzsiLn8pM5+vCgkChW2E6oNOzaqTSIBKIQ5cl4oheuDzvJYCTSYzRaVinMUrV4YLQ==", + "dependencies": { + "clean-css": "^3.3.0", + "constantinople": "^3.0.1", + "jstransformer": "1.0.0", + "pug-error": "^1.3.2", + "pug-walk": "^1.1.5", + "resolve": "^1.1.6", + "uglify-js": "^2.6.1" + } + }, + "node_modules/pug-lexer": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-3.1.0.tgz", + "integrity": "sha1-/QhzdtSmdbT1n4/vQiiDQ06VgaI=", + "dependencies": { + "character-parser": "^2.1.1", + "is-expression": "^3.0.0", + "pug-error": "^1.3.2" + } + }, + "node_modules/pug-linker": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", + "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", + "dependencies": { + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8" + } + }, + "node_modules/pug-load": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", + "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", + "dependencies": { + "object-assign": "^4.1.0", + "pug-walk": "^1.1.8" + } + }, + "node_modules/pug-parser": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-3.0.1.tgz", + "integrity": "sha512-YNcfPtamkJ6Blgdev1keI1rK5UZ5TtYS4r1lZw1/lhFhyEVAwKtzOsv6aqxI0xBWfCia/vNWhdtdaqoMRB2jcQ==", + "dependencies": { + "pug-error": "^1.3.2", + "token-stream": "0.0.1" + } + }, + "node_modules/pug-runtime": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", + "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==" + }, + "node_modules/pug-strip-comments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", + "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", + "dependencies": { + "pug-error": "^1.3.3" + } + }, + "node_modules/pug-walk": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", + "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==" + }, + "node_modules/qs": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.1.tgz", + "integrity": "sha1-zgPF/wk1vB2daanxTL0Y5WjWdiU=", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.2.0.tgz", + "integrity": "sha1-mUl2z2pQlqQRYoQEkvC9xdbn+5Y=", + "dependencies": { + "bytes": "2.4.0", + "iconv-lite": "0.4.15", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/readable-stream": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.7.tgz", + "integrity": "sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE=", + "dependencies": { + "buffer-shims": "~1.0.0", + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~1.0.0", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/require_optional": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", + "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", + "dependencies": { + "resolve-from": "^2.0.0", + "semver": "^5.1.0" + } + }, + "node_modules/resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", + "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "dependencies": { + "align-text": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/send": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.14.2.tgz", + "integrity": "sha1-ObBDiz9RC+Xcb2Z6EfcWiTaM3u8=", + "dependencies": { + "debug": "~2.2.0", + "depd": "~1.1.0", + "destroy": "~1.0.4", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "etag": "~1.7.0", + "fresh": "0.3.0", + "http-errors": "~1.5.1", + "mime": "1.3.4", + "ms": "0.7.2", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.3.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "dependencies": { + "ms": "0.7.1" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=" + }, + "node_modules/send/node_modules/ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=" + }, + "node_modules/serve-favicon": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.3.2.tgz", + "integrity": "sha1-3UGeJo3gEqtysxnTN/IQUBP5OB8=", + "dependencies": { + "etag": "~1.7.0", + "fresh": "0.3.0", + "ms": "0.7.2", + "parseurl": "~1.3.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-favicon/node_modules/ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=" + }, + "node_modules/serve-static": { + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.11.2.tgz", + "integrity": "sha1-LPmIm9RDWjIMw2iVyapXvWYuasc=", + "dependencies": { + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "parseurl": "~1.3.1", + "send": "0.14.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.2.tgz", + "integrity": "sha1-gaVSFB7BBLiOic44MQOtXGZWTQg=" + }, + "node_modules/simple-git": { + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-1.73.0.tgz", + "integrity": "sha1-h2g6cpsb7gFqMYL5Wiq3Ixe7AjA=", + "dependencies": { + "debug": "^2.6.7" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dependencies": { + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "node_modules/statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/token-stream": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", + "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=" + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + }, + "node_modules/uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "dependencies": { + "source-map": "~0.5.1", + "yargs": "~3.10.0" + }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + }, + "optionalDependencies": { + "uglify-to-browserify": "~1.0.0" + } + }, + "node_modules/uglify-js/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "optional": true + }, + "node_modules/uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "dependencies": { + "random-bytes": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/utils-merge": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz", + "integrity": "sha1-ApT7kiu5N1FTVBxPcJYjHyh8ivg=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/with": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", + "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", + "dependencies": { + "acorn": "^3.1.0", + "acorn-globals": "^3.0.0" + } + }, + "node_modules/with/node_modules/acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "dependencies": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } + } + }, + "dependencies": { + "@types/babel-types": { + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.9.tgz", + "integrity": "sha512-qZLoYeXSTgQuK1h7QQS16hqLGdmqtRmN8w/rl3Au/l5x/zkHx+a4VHrHyBsi1I1vtK2oBHxSzKIu0R5p6spdOA==" + }, + "@types/babylon": { + "version": "6.16.5", + "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", + "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", + "requires": { + "@types/babel-types": "*" + } + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" + }, + "acorn-globals": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", + "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", + "requires": { + "acorn": "^4.0.4" + } + }, + "align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "requires": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" + }, + "basic-auth": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-1.0.4.tgz", + "integrity": "sha1-Awk1sB3nyblKgksp8/zLdQ06UpA=" + }, + "bitcoin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/bitcoin/-/bitcoin-3.0.1.tgz", + "integrity": "sha1-/54LYqcbu4rd2zTuLkJ9rCHBCW8=" + }, + "body-parser": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.16.1.tgz", + "integrity": "sha1-UVQNBFrfp6DGmVoBS7ax7ZuAIyk=", + "requires": { + "bytes": "2.4.0", + "content-type": "~1.0.2", + "debug": "2.6.1", + "depd": "~1.1.0", + "http-errors": "~1.5.1", + "iconv-lite": "0.4.15", + "on-finished": "~2.3.0", + "qs": "6.2.1", + "raw-body": "~2.2.0", + "type-is": "~1.6.14" + }, + "dependencies": { + "debug": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.1.tgz", + "integrity": "sha1-eYVQkLosTjEVzH2HaUkdWPBJE1E=", + "requires": { + "ms": "0.7.2" + } + }, + "ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=" + } + } + }, + "bson": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/bson/-/bson-1.0.9.tgz", + "integrity": "sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg==" + }, + "buffer-shims": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", + "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=" + }, + "bytes": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-2.4.0.tgz", + "integrity": "sha1-fZcZb51br39pNeJZhVSe3SpsIzk=" + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" + }, + "center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "requires": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + } + }, + "character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", + "requires": { + "is-regex": "^1.0.3" + } + }, + "clean-css": { + "version": "3.4.28", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz", + "integrity": "sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=", + "requires": { + "commander": "2.8.x", + "source-map": "0.4.x" + } + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "requires": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + } + }, + "commander": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", + "requires": { + "graceful-readlink": ">= 1.0.0" + } + }, + "constantinople": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", + "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", + "requires": { + "@types/babel-types": "^7.0.0", + "@types/babylon": "^6.16.2", + "babel-types": "^6.26.0", + "babylon": "^6.18.0" + } + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" + }, + "cookie-parser": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.5.tgz", + "integrity": "sha512-f13bPUj/gG/5mDr+xLmSxxDsB9DQiTIfhJS/sqjrmfAWiAN+x2O4i/XguTL9yDZ+/IFDanJ+5x7hC4CXT9Tdzw==", + "requires": { + "cookie": "0.4.0", + "cookie-signature": "1.0.6" + } + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "crc": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.4.4.tgz", + "integrity": "sha1-naHpgOO9RPxck79as9ozeNheRms=" + }, + "crypto-js": { + "version": "3.1.9-1", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.1.9-1.tgz", + "integrity": "sha1-/aGedh/Ad+Af+/3G6f38WeiAbNg=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "decimal.js": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-7.2.3.tgz", + "integrity": "sha512-AoFI37QS0S87Ft0r3Bdz4q9xSpm1Paa9lSeKLXgMPk/u/+QPIM5Gy4DHcZQS1seqPJH4gHLauPGn347z0HbsrA==" + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=" + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "es6-promise": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.2.1.tgz", + "integrity": "sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q=" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + }, + "etag": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.7.0.tgz", + "integrity": "sha1-A9MLX2fdbmMtKUXTDWZScxo01dg=" + }, + "express": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.14.1.tgz", + "integrity": "sha1-ZGwjf3ZvFIwhIK/wc4F7nk1+DTM=", + "requires": { + "accepts": "~1.3.3", + "array-flatten": "1.1.1", + "content-disposition": "0.5.2", + "content-type": "~1.0.2", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "~2.2.0", + "depd": "~1.1.0", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "etag": "~1.7.0", + "finalhandler": "0.5.1", + "fresh": "0.3.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.1", + "path-to-regexp": "0.1.7", + "proxy-addr": "~1.1.3", + "qs": "6.2.0", + "range-parser": "~1.2.0", + "send": "0.14.2", + "serve-static": "~1.11.2", + "type-is": "~1.6.14", + "utils-merge": "1.0.0", + "vary": "~1.1.0" + }, + "dependencies": { + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" + }, + "debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "requires": { + "ms": "0.7.1" + } + }, + "ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=" + }, + "qs": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.0.tgz", + "integrity": "sha1-O3hIwDwt7OaalSKw+ujEEm10Xzs=" + } + } + }, + "express-session": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.15.2.tgz", + "integrity": "sha1-2YUWRDpMy4aI4XJa5YTALapAk9Q=", + "requires": { + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "crc": "3.4.4", + "debug": "2.6.3", + "depd": "~1.1.0", + "on-headers": "~1.0.1", + "parseurl": "~1.3.1", + "uid-safe": "~2.1.4", + "utils-merge": "1.0.0" + }, + "dependencies": { + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" + }, + "debug": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.3.tgz", + "integrity": "sha1-D364wwll7AjHKsz6ATDIt5mEFB0=", + "requires": { + "ms": "0.7.2" + } + }, + "ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=" + } + } + }, + "finalhandler": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-0.5.1.tgz", + "integrity": "sha1-LEANjUUwk1vCMlScX6OF7Afeb80=", + "requires": { + "debug": "~2.2.0", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "statuses": "~1.3.1", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "requires": { + "ms": "0.7.1" + } + }, + "ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=" + } + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + }, + "fresh": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.3.0.tgz", + "integrity": "sha1-ZR+DjiJCTnVm3hYdg1jKoZn4PU8=" + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "gitbook-plugin-github": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/gitbook-plugin-github/-/gitbook-plugin-github-2.0.0.tgz", + "integrity": "sha1-UWbnY8/MQC1DKIC3pshcHFS1ao0=" + }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" + }, + "http-errors": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.5.1.tgz", + "integrity": "sha1-eIwNLB3iyBuebowBhDtrl+uSB1A=", + "requires": { + "inherits": "2.0.3", + "setprototypeof": "1.0.2", + "statuses": ">= 1.3.1 < 2" + } + }, + "iconv-lite": { + "version": "0.4.15", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.15.tgz", + "integrity": "sha1-/iZaIYrGpXz+hUkn6dBMGYJe3es=" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "ipaddr.js": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.4.0.tgz", + "integrity": "sha1-KWrKh4qCGBbluF0KKFqZvP9FgvA=" + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-core-module": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", + "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", + "requires": { + "has": "^1.0.3" + } + }, + "is-expression": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", + "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", + "requires": { + "acorn": "~4.0.2", + "object-assign": "^4.0.1" + } + }, + "is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" + }, + "is-regex": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz", + "integrity": "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==", + "requires": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.2" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=" + }, + "jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", + "requires": { + "is-promise": "^2.0.0", + "promise": "^7.0.1" + } + }, + "jstransformer-markdown-it": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/jstransformer-markdown-it/-/jstransformer-markdown-it-2.1.0.tgz", + "integrity": "sha1-aewwzkUYvtWZezjwJ2SOjChekvc=", + "requires": { + "markdown-it": "^8.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + } + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" + }, + "linkify-it": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", + "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==", + "requires": { + "uc.micro": "^1.0.1" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" + }, + "markdown-it": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", + "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "requires": { + "argparse": "^1.0.7", + "entities": "~1.1.1", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + } + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "mime": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.3.4.tgz", + "integrity": "sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM=" + }, + "mime-db": { + "version": "1.47.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.47.0.tgz", + "integrity": "sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==" + }, + "mime-types": { + "version": "2.1.30", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.30.tgz", + "integrity": "sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg==", + "requires": { + "mime-db": "1.47.0" + } + }, + "moment": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==" + }, + "moment-duration-format": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/moment-duration-format/-/moment-duration-format-1.3.0.tgz", + "integrity": "sha1-VBdxtfh6BJzGVUBHXTrZZnN9aQg=" + }, + "mongodb": { + "version": "2.2.36", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.36.tgz", + "integrity": "sha512-P2SBLQ8Z0PVx71ngoXwo12+FiSfbNfGOClAao03/bant5DgLNkOPAck5IaJcEk4gKlQhDEURzfR3xuBG1/B+IA==", + "requires": { + "es6-promise": "3.2.1", + "mongodb-core": "2.1.20", + "readable-stream": "2.2.7" + } + }, + "mongodb-core": { + "version": "2.1.20", + "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.20.tgz", + "integrity": "sha512-IN57CX5/Q1bhDq6ShAR6gIv4koFsZP7L8WOK1S0lR0pVDQaScffSMV5jxubLsmZ7J+UdqmykKw4r9hG3XQEGgQ==", + "requires": { + "bson": "~1.0.4", + "require_optional": "~1.0.0" + } + }, + "monk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/monk/-/monk-4.1.0.tgz", + "integrity": "sha1-x+VA6GquaQ1xLD4KtwYa2LpaOio=", + "requires": { + "debug": "*", + "gitbook-plugin-github": "2.0.0", + "mongodb": "^2.1.18" + } + }, + "morgan": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.7.0.tgz", + "integrity": "sha1-6xDKjlDRq+D409rVwCAdBS2YHGI=", + "requires": { + "basic-auth": "~1.0.3", + "debug": "~2.2.0", + "depd": "~1.1.0", + "on-finished": "~2.3.0", + "on-headers": "~1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "requires": { + "ms": "0.7.1" + } + }, + "ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=" + } + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "~2.0.3" + } + }, + "proxy-addr": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.1.5.tgz", + "integrity": "sha1-ccDuOxAt4/IC87ZPYI0XP8uhqRg=", + "requires": { + "forwarded": "~0.1.0", + "ipaddr.js": "1.4.0" + } + }, + "pug": { + "version": "2.0.0-rc.2", + "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.0-rc.2.tgz", + "integrity": "sha1-B4RVJ3kKssa+Z9z16x8xgECB8Eo=", + "requires": { + "pug-code-gen": "^1.1.1", + "pug-filters": "^2.1.3", + "pug-lexer": "^3.1.0", + "pug-linker": "^3.0.1", + "pug-load": "^2.0.7", + "pug-parser": "^3.0.0", + "pug-runtime": "^2.0.3", + "pug-strip-comments": "^1.0.2" + } + }, + "pug-attrs": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", + "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", + "requires": { + "constantinople": "^3.0.1", + "js-stringify": "^1.0.1", + "pug-runtime": "^2.0.5" + } + }, + "pug-code-gen": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-1.1.1.tgz", + "integrity": "sha1-HPcnRO8qA56uajNAyqoRBYcSWOg=", + "requires": { + "constantinople": "^3.0.1", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.1", + "pug-attrs": "^2.0.2", + "pug-error": "^1.3.2", + "pug-runtime": "^2.0.3", + "void-elements": "^2.0.1", + "with": "^5.0.0" + } + }, + "pug-error": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", + "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==" + }, + "pug-filters": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-2.1.5.tgz", + "integrity": "sha512-xkw71KtrC4sxleKiq+cUlQzsiLn8pM5+vCgkChW2E6oNOzaqTSIBKIQ5cl4oheuDzvJYCTSYzRaVinMUrV4YLQ==", + "requires": { + "clean-css": "^3.3.0", + "constantinople": "^3.0.1", + "jstransformer": "1.0.0", + "pug-error": "^1.3.2", + "pug-walk": "^1.1.5", + "resolve": "^1.1.6", + "uglify-js": "^2.6.1" + } + }, + "pug-lexer": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-3.1.0.tgz", + "integrity": "sha1-/QhzdtSmdbT1n4/vQiiDQ06VgaI=", + "requires": { + "character-parser": "^2.1.1", + "is-expression": "^3.0.0", + "pug-error": "^1.3.2" + } + }, + "pug-linker": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", + "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", + "requires": { + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8" + } + }, + "pug-load": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", + "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", + "requires": { + "object-assign": "^4.1.0", + "pug-walk": "^1.1.8" + } + }, + "pug-parser": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-3.0.1.tgz", + "integrity": "sha512-YNcfPtamkJ6Blgdev1keI1rK5UZ5TtYS4r1lZw1/lhFhyEVAwKtzOsv6aqxI0xBWfCia/vNWhdtdaqoMRB2jcQ==", + "requires": { + "pug-error": "^1.3.2", + "token-stream": "0.0.1" + } + }, + "pug-runtime": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", + "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==" + }, + "pug-strip-comments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", + "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", + "requires": { + "pug-error": "^1.3.3" + } + }, + "pug-walk": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", + "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==" + }, + "qs": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.1.tgz", + "integrity": "sha1-zgPF/wk1vB2daanxTL0Y5WjWdiU=" + }, + "random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=" + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "raw-body": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.2.0.tgz", + "integrity": "sha1-mUl2z2pQlqQRYoQEkvC9xdbn+5Y=", + "requires": { + "bytes": "2.4.0", + "iconv-lite": "0.4.15", + "unpipe": "1.0.0" + } + }, + "readable-stream": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.7.tgz", + "integrity": "sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE=", + "requires": { + "buffer-shims": "~1.0.0", + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~1.0.0", + "util-deprecate": "~1.0.1" + } + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + }, + "require_optional": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", + "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", + "requires": { + "resolve-from": "^2.0.0", + "semver": "^5.1.0" + } + }, + "resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "requires": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + } + }, + "resolve-from": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", + "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=" + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "requires": { + "align-text": "^0.1.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "send": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.14.2.tgz", + "integrity": "sha1-ObBDiz9RC+Xcb2Z6EfcWiTaM3u8=", + "requires": { + "debug": "~2.2.0", + "depd": "~1.1.0", + "destroy": "~1.0.4", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "etag": "~1.7.0", + "fresh": "0.3.0", + "http-errors": "~1.5.1", + "mime": "1.3.4", + "ms": "0.7.2", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.3.1" + }, + "dependencies": { + "debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "requires": { + "ms": "0.7.1" + }, + "dependencies": { + "ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=" + } + } + }, + "ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=" + } + } + }, + "serve-favicon": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.3.2.tgz", + "integrity": "sha1-3UGeJo3gEqtysxnTN/IQUBP5OB8=", + "requires": { + "etag": "~1.7.0", + "fresh": "0.3.0", + "ms": "0.7.2", + "parseurl": "~1.3.1" + }, + "dependencies": { + "ms": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", + "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=" + } + } + }, + "serve-static": { + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.11.2.tgz", + "integrity": "sha1-LPmIm9RDWjIMw2iVyapXvWYuasc=", + "requires": { + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "parseurl": "~1.3.1", + "send": "0.14.2" + } + }, + "setprototypeof": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.2.tgz", + "integrity": "sha1-gaVSFB7BBLiOic44MQOtXGZWTQg=" + }, + "simple-git": { + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-1.73.0.tgz", + "integrity": "sha1-h2g6cpsb7gFqMYL5Wiq3Ixe7AjA=", + "requires": { + "debug": "^2.6.7" + } + }, + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "requires": { + "amdefine": ">=0.0.4" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" + }, + "token-stream": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", + "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=" + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" + }, + "uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "requires": { + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + } + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "optional": true + }, + "uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "requires": { + "random-bytes": "~1.0.0" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "utils-merge": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz", + "integrity": "sha1-ApT7kiu5N1FTVBxPcJYjHyh8ivg=" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=" + }, + "window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" + }, + "with": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", + "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", + "requires": { + "acorn": "^3.1.0", + "acorn-globals": "^3.0.0" + }, + "dependencies": { + "acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=" + } + } + }, + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" + }, + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "requires": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } + } + } +} diff --git a/package.json b/package.json new file mode 100755 index 0000000..0a14484 --- /dev/null +++ b/package.json @@ -0,0 +1,30 @@ +{ + "name": "rpc-explorer", + "version": "1.0.0", + "scripts": { + "start": "node ./bin/www" + }, + "repository": { + "type": "git", + "url": "https://github.com/smartcash/rpc-explorer.git" + }, + "dependencies": { + "bitcoin": "3.0.1", + "body-parser": "~1.16.0", + "cookie-parser": "~1.4.3", + "crypto-js": "3.1.9-1", + "debug": "~2.6.0", + "decimal.js": "7.2.3", + "express": "~4.14.1", + "express-session": "1.15.2", + "jstransformer-markdown-it": "^2.0.0", + "moment": "^2.18.1", + "moment-duration-format": "1.3.0", + "monk": "^4.0.0", + "morgan": "~1.7.0", + "pug": "2.0.0-rc.2", + "serve-favicon": "~2.3.2", + "simple-git": "1.73.0" + }, + "license": "MIT" +} diff --git a/proglog.txt b/proglog.txt new file mode 100755 index 0000000..be753a4 --- /dev/null +++ b/proglog.txt @@ -0,0 +1,113 @@ +block:896936,896935,896934,896933,896932,896931,896930,896929,896928,896927 +block:896936,896935,896934,896yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3475689.919block:8yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3620550.313359255 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3620550.313359255 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3620550.313359255 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3620550.313359255 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3620550.313359255 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3620550.313359255 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3620550.313359255 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3620550.313359255 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3620550.313359255 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3097414.750693175 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3097414.750693175 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3097414.750693175 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3063122.423659674 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3064355.489685315 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3064355.489685315 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3025464.432089422 +yyyyyyyyyyyyyyyyyyyyyyy +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:3025464.432089422 +mininghash:3025464.432089422 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:2373157.008316292 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:2425140.595686032 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:2363615.794209859 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:2297304.049850194 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:2109127.042296987 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:2109127.042296987 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:1887491.861699247 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:1887491.861699247 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:1806276.69781136 +yyyyyyyyyyyyyyyyyyyyyyy +mininghash:1751051.827217125 +009,897008,897007 +block:897062,897061,897060,897059,897058,897057,897056,897055,897054,897053 +block:897132,897131,897130,897129,897128,897127,897126,897125,897124,897123 +block:897155,897154,897153,897152,897151,897150,897149,897148,897147,897146 +block:897194,897193,897192,897191,897190,897189,897188,897187,897186,897185 +block:897196,897195,897194,897193,897192,897191,897190,897189,897188,897187 +block:897197,897196,897195,897194,897193,897192,897191,897190,897189,897188,897187,897186,897185,897184,897183,897182,897181,897180,897179,897178 +block:897177,897176,897175,897174,897173,897172,897171,897170,897169,897168,897167,897166,897165,897164,897163,897162,897161,897160,897159,897158 +block:897157,897156,897155,897154,897153,897152,897151,897150,897149,897148,897147,897146,897145,897144,897143,897142,897141,897140,897139,897138 +block:897117,897116,897115,897114,897113,897112,897111,897110,897109,897108,897107,897106,897105,897104,897103,897102,897101,897100,897099,897098 +block:897097,897096,897095,897094,897093,897092,897091,897090,897089,897088,897087,897086,897085,897084,897083,897082,897081,897080,897079,897078 +block:897077,897076,897075,897074,897073,897072,897071,897070,897069,897068,897067,897066,897065,897064,897063,897062,897061,897060,897059,897058 +block:897057,897056,897055,897054,897053,897052,897051,897050,897049,897048,897047,897046,897045,897044,897043,897042,897041,897040,897039,897038 +block:897037,897036,897035,897034,897033,897032,897031,897030,897029,897028,897027,897026,897025,897024,897023,897022,897021,897020,897019,897018 +block:897017,897016,897015,897014,897013,897012,897011,897010,897009,897008,897007,897006,897005,897004,897003,897002,897001,897000,896999,896998 +block:896997,896996,896995,896994,896993,896992,896991,896990,896989,896988,896987,896986,896985,896984,896983,896982,896981,896980,896979,896978 +block:896977,896976,896975,896974,896973,896972,896971,896970,896969,896968,896967,896966,896965,896964,896963,896962,896961,896960,896959,896958 +block:896957,896956,896955,896954,896953,896952,896951,896950,896949,896948,896947,896946,896945,896944,896943,896942,896941,896940,896939,896938 +block:896937,896936,896935,896934,896933,896932,896931,896930,896929,896928,896927,896926,896925,896924,896923,896922,896921,896920,896919,896918 +block:896917,896916,896915,896914,896913,896912,896911,896910,896909,896908,896907,896906,896905,896904,896903,896902,896901,896900,896899,896898 +block:896897,896896,896895,896894,896893,896892,896891,896890,896889,896888,896887,896886,896885,896884,896883,896882,896881,896880,896879,896878 +block:897197,897196,897195,897194,897193,897192,897191,897190,897189,897188 +block:897197,897196,897195,897194,897193,897192,897191,897190,897189,897188,897187,897186,897185,897184,897183,897182,897181,897180,897179,897178 +block:897197,897196,897195,897194,897193,897192,897191,897190,897189,897188 +block:897200,897199,897198,897197,897196,897195,897194,897193,897192,897191 +block:897201,897200,897199,897198,897197,897196,897195,897194,897193,897192 +block:897203,897202,897201,897200,897199,897198,897197,897196,897195,897194 +block:897206,897205,897204,897203,897202,897201,897200,897199,897198,897197 +block:897206,897205,897204,897203,897202,897201,897200,897199,897198,897197,897196,897195,897194,897193,897192,897191,897190,897189,897188,897187 +block:897208,897207,897206,897205,897204,897203,897202,897201,897200,897199 +block:897209,897208,897207,897206,897205,897204,897203,897202,897201,897200 +block:897211,897210,897209,897208,897207,897206,897205,897204,897203,897202 +block:897215,897214,897213,897212,897211,897210,897209,897208,897207,897206 +block:897242,897241,897240,897239,897238,897237,897236,897235,897234,897233 +block:897258,897257,897256,897255,897254,897253,897252,897251,897250,897249 +block:897258,897257,897256,897255,897254,897253,897252,897251,897250,897249 +block:897258,897257,897256,897255,897254,897253,897252,897251,897250,897249 +block:897258,897257,897256,897255,897254,897253,897252,897251,897250,897249,897248,897247,897246,897245,897244,897243,897242,897241,897240,897239 +block:897218,897217,897216,897215,897214,897213,897212,897211,897210,897209,897208,897207,897206,897205,897204,897203,897202,897201,897200,897199 +block:897259,897258,897257,897256,897255,897254,897253,897252,897251,897250 +block:897259,897258,897257,897256,897255,897254,897253,897252,897251,897250 +block:897262,897261,897260,897259,897258,897257,897256,897255,897254,897253 +block:897262,897261,897260,897259,897258,897257,897256,897255,897254,897253 +block:897262,897261,897260,897259,897258,897257,897256,897255,897254,897253 +block:897262,897261,897260,897259,897258,897257,897256,897255,897254,897253 +block:897262,897261,897260,897259,897258,897257,897256,897255,897254,897253 +block:897262,897261,897260,897259,897258,897257,897256,897255,897254,897253 +block:897262,897261,897260,897259,897258,897257,897256,897255,897254,897253 +block:897263,897262,897261,897260,897259,897258,897257,897256,897255,897254 +block:897265,897264,897263,897262,897261,897260,897259,897258,897257,897256 +block:897265,897264,897263,897262,897261,897260,897259,897258,897257,897256 +block:897265,897264,897263,897262,897261,897260,897259,897258,897257,897256 +block:897265,897264,897263,897262,897261,897260,897259,897258,897257,897256 +block:897271,897270,897269,897268,897267,897266,897265,897264,897263,897262 +block:897272,897271,897270,897269,897268,897267,897266,897265,897264,897263 diff --git a/public/css/styling.css b/public/css/styling.css new file mode 100755 index 0000000..3d70467 --- /dev/null +++ b/public/css/styling.css @@ -0,0 +1,179 @@ +body { + font: 14px 'Open Sans', "Lucida Grande", Helvetica, Arial, sans-serif; + background-color: #F3FAED; +} + +code { + background-color: #C4F5EE; +} + +hr { + margin: 15px 0; +} + +a { + color: #16548A; + font-weight: bold; +} + +a:hover { + color: #26296D; +} + +::selection { + background-color: #AE95F1; +} + +thead { + background-color: #9CFFF8!important; +} + +.table td, .table th { + border-top: 1px solid #4DA2AF; +} + +img.header-image { + margin-top: -10px; + margin-bottom: -5px; + width: 30px; + height: 30px; + margin-right: 10px; +} + +code, .monospace { + font-family: "Cousine", monospace; +} + +.properties-header { + width: 180px; + text-align: right; +} + +.word-wrap { + word-wrap: break-word; + word-break: break-all; +} + +.tag { + border-radius: 4px; + background-color: #0275D8; + color: white; + padding: 2px 5px; + margin-right: 4px; +} + +#subheader a { + margin-right: 20px; +} + +.data-cell, .data-header { + text-align: right; +} + +.btn-primary { + color: black; + background-color: #73DFF5; + border-color: #386CA0; +} + +.btn-primary:hover { + color: black; + background-color: #43EFE4; + border-color: #386CA0; +} + +.btn-primary:active { + color: white!important; + background-color: #43EFE4!important; + border-color: #386CA0!important; + box-shadow: 0px 1px 1px #9CFFF8 inset, 2px 2px 4px #739AF5!important; +} + +.btn-primary:focus { + box-shadow: 0px 1px 1px #739AF5 inset, 2px 2px 4px #739AF5!important; +} + +.bg-dark { + background-color: #9CFFF8!important; +} + +.navbar-brand { + font-weight: bold; +} + +.nav-link { + border-color: #125DA7!important; + font-weight: bold; +} + +.nav-link:hover { + background-color: #9CFFF8!important; +} + +.nav-link.active { + color: #420857!important; + background-color: #9CFFF8!important; + border-color: #125DA7!important; +} + +.alert-info { + background-color: #C55AF3; + border-color: #739AF5; + color: black; +} + +.alert-success { + background-color: #C4FF80; + border-color: #5F8660; + color: black; +} + +.form-control { + background-color: #D4EFFF; +} + +.form-control:hover { + background-color: #F3FAED; + box-shadow: 0px 1px 1px #739AF5 inset, 2px 2px 4px #739AF5!important; +} + +.form-control:focus { + background-color: #F3FAED; + box-shadow: 0px 1px 1px #739AF5 inset, 2px 2px 4px #739AF5!important; +} + +.card { + background-color: #D4EFFF; +} + +.tag { + color: black; + background-color: #9CFFF8; +} + + +.page-link { + color: #420857!important; + border-color: #35769C!important; +} + +.page-link:hover { + background-color: #9CFFF8!important; + box-shadow: 0px 1px 1px #739AF5 inset, 1px 1px 2px #739AF5!important; + border-color: #125DA7!important; +} + +.page-item.active .page-link { + color: #420857!important; + background-color: #9CFFF8!important; + border-color: #125DA7!important; +} + +.pagination-lg .page-link { + padding: .25rem 0.75rem; + font-size: 1.0rem; + line-height: 1.5; +} + + + diff --git a/public/img/favicons/android-chrome-192x192.png b/public/img/favicons/android-chrome-192x192.png new file mode 100755 index 0000000000000000000000000000000000000000..ea40742653993ac2aa839367098a2caf9e6332a2 GIT binary patch literal 26038 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%0Ah6p4|3AAaH#*Qa@ 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%0DgnGzdJl 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 BmTdq4 literal 0 HcmV?d00001 diff --git a/public/img/favicons/android-chrome-512x512.png b/public/img/favicons/android-chrome-512x512.png new file mode 100755 index 0000000000000000000000000000000000000000..95bdffbe258b1a7238dc6fa6e931aa3675fe04df GIT binary patch literal 123101 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 literal 0 HcmV?d00001 diff --git a/public/img/favicons/apple-touch-icon.png b/public/img/favicons/apple-touch-icon.png new file mode 100755 index 0000000000000000000000000000000000000000..335d59ab4c5fe708a2dff9da427088886c028046 GIT binary patch literal 23384 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 literal 0 HcmV?d00001 diff --git a/public/img/favicons/browserconfig.xml b/public/img/favicons/browserconfig.xml new file mode 100755 index 0000000..e32a1f4 --- /dev/null +++ b/public/img/favicons/browserconfig.xml @@ -0,0 +1,9 @@ + + + + + + #ffc40d + + + diff --git a/public/img/favicons/favicon-16x16.png b/public/img/favicons/favicon-16x16.png new file mode 100755 index 0000000000000000000000000000000000000000..7e45603d28f08e11e694ce4dbf51e5052984ee5b GIT binary patch literal 721 zcmV;?0xtcDP)4DjYcswHHDX#7e245 zs>0;tBt}O^5ex>gy}ixnS65dM6bglyN~NIDXmEFT$L-eD)uE@S2Zx7;{LpALA|8(; zm&-9Nx+n0arlt~wp`js0ZftDC{rx?(KnVBg8R903Zkw_pE3UT{_AYf~23+wCa`1tt1$jAunb~}Uh_4RQv0`2ebhaizi zM4!)xot+)5uC79_*W>l|mD?kb&(BXd91fhHpR<@37ZdlI&#rG@pmyu3tvd;2edR;xvQeLaqkk72P`kj-Y9 zFXiFk;eqd{klAd;_4PH<=`_2>6sT%*b2FZwpV=d@ z)_%XAyZf01@}BIW)&qe6-rwKZ??Rz~v9U2orBd!H5{Yn#zV-QUn23(cqF{GB`JC~7 zz1L0W`2F#FVQjl`-se2$InQ~oCn-+<n5WHy7qMA5yqB?f$sI+O*TD)h^p6S-DTYCERsr{cbXHJEMg(-LL z+)9};r9OZDtj(J@Yx3mDNdoaa&x=b8DS>+Q=%HD&W*OCNx@y%btzW<1GX3)9OCZBE zY0{{4>C$T7zP)<)?ybCe^Xko;HySr?oR%+Nu5aJI1;}vB8GsfoTG-33e%vfxytq-G zB1HAQuTcSh>ojZ3fqz`mKOxWRX#7jc3*Sd9U z(~AM%Vsv!0x^?TOuV26F`}gm9{ra`GZ{Hr;yilP+mf8OO`_;U8^8}Of=T~fPtZOaxmNUUDHdb)o7di;IA z4~!WzM$@KE(}M>ORHjTBL+lpyZP~J=Hf-2n9ZLjAamx-I(zo4s3l-#&z>C!L}zTm^W{ph71{^*w|RBHGi*IvBI83!2YtqB5~P#(4av&efqR@ z5kNvBOqVX5Wjc56Tuq-o-7=@9Y=&UYoH-K!K{jNaBS#L~3+5_Ttf>3l*+#fJS0*2oC$_&dT{ z%k#`Da5@YKMx8Hk4HK$cx2}mc1mN=J%i6nlZwLT^s4ew|HiF>o{`#VLI)_aC3&(?c z5}Pt*iv2iYZrr$0ZQ8U60-ywJLJ6EW2$&&52Aw!@!aM}n1Xt4_yE^Mvkf>IKCA5*GQrHWDcw>givV3P@on{qaA z&*LL#EnBv1R^oT>-o*m|8T8k$UtbI+28w$LF)`bzDK3bZ{H^9^gl88mT4e2rcyT<& zu!~iyR4HA(dR6DopI6PAHG{JN+HfmsK5EpcK$et%{!N`awYlKo!-o@{hSjQ7)6t_x z?OoTt?m@tf9XryKmKW0uwX&U5RuR-j8{K}efsp#;>C;g;Q%BkOmSjjpmgcd#U^O0R;>&u zC4`-!Lx&n`Y)&k{a6|g|)0Yt&am0pd&ik;z$i>T>HEU)7S&o^RGiRD5^9}}t+8NaV z;k`e7F(vt70)6x^%7tb&gnj}7(t&Uq;Tjs?D9-VY5&bvk{O3z6X;P`mqT=}0r%@Vac$)+TGs#_ESXfxnUy#X-nvCav0>`rQoxoGH QB>(^b07*qoM6N<$g2kC{aR2}S literal 0 HcmV?d00001 diff --git a/public/img/favicons/favicon.ico b/public/img/favicons/favicon.ico new file mode 100755 index 0000000000000000000000000000000000000000..881b1b0df96919397babbb1c3115144cf285bd62 GIT binary patch literal 15406 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 literal 0 HcmV?d00001 diff --git a/public/img/favicons/vivobluelogo.png b/public/img/favicons/vivobluelogo.png new file mode 100755 index 0000000000000000000000000000000000000000..ef4eda05cfa38d6a591cde729889ec09853f16a3 GIT binary patch literal 23377 zcmV)pK%2jbP)Z zcYqwlvHn-xGqdUPoupIF0Z9muKp-J9nCO5p4mjtWZH%#r!Z|(X^lU%J_nfdXV8Ga5 zqRAkXP|jJGZ{u`#{r>2g+1b6IbSGs0isf#1wYSsL^G(%Pp{t3R@&AD^00sj*zzI|I zvHt#v2;qPKUkLrD!on~Z!O00gh@rWl%xoAOV1?*E6e#~Wu;B2T5g_|qE)8@RO#y6Ne_>DWnmySK`?5Pa^831r-FZJ>)V|iN z8R3aj?5DABa_|ll1W`hYgeU8gZcD8| z{JX-!FdK#>PGYDqn+H2)IHxk{m&TtdzfsECTF{ z2rF#gWM+_IV_0irwDFZungMnlQJ?X~H)oC;SHECN!vdm{WA)&@isVEs3e ze=}HE-5|s3%D~3X(gPdX?_bmQ)aH&Y`?C4G4`$C12}d}R>|M(M$EZeM5#bY#!6JH# z7z73&ErythnG9>CRZ084X2Yq3Go~docS_UgvqvqNJ#yBlv=e@zHY^1Fd+CpV4_Gju z4GThanV0X&-??)CJuCJs+uGULT_AAM5eZk?yVDE`g1#bR&+VU4WJj0@AO?d4gV!K_pUfbO5 z|87;=@1EbYY-79X&bu%vPr6dDg~H*U3!%(Vt6>2KLok3)ZCG*|>I}(D%+jy~JIrK^ zU(&gJDOXfp(wjN8`NBn$FJCfo?x+j^Ftjmr%qx#$7Z&z1TY6vAeD~&_A3wYA@9Wx% zop~7TNTk>}O0yY)6X**I#OOr?3ot|&{h;t63=3vqSTYM^$gnYnnFX`EAI3xqgAHqASQ|D5+ORgPjbn_XwBK9EXG`@hbr)Vb_nogj zY2KI`Ff=pKvE|bqE3mNSzye}ZxBtauoxfPsRmhe|LJ}LLjW*CadQb=pN1GuTz~J

h#evb#2HL;`fPgkoN@{Ik(J#G- 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℞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 literal 0 HcmV?d00001 diff --git a/public/img/icon.png b/public/img/icon.png new file mode 100755 index 0000000000000000000000000000000000000000..2478c15325e141c5fbd0887321ffdefba17d5789 GIT binary patch literal 1396 zcmZ`&X;2eJ7+pZg1t>=_1R;?K$;cH#&?E#(AOw&k&=?d1TVe#878``L%HcF5fMBQ~ zfuI7_saO>68c)=!;K&iJ7Su*Os@0JZp&&9Mgl^ZLolbXV_j|ju@4at#zpYM{COG5C zcmRNNQle0X;=+#|>wrc^@Pbt+%-blC2mm-$ORy>Cqd8TXD3btC><@re55NbA;xGU* zEU+V{1HfwnV3GR4T1p)N_TQz79uz(sQ# zu)|@Ud@wj7nX(K3+9o<#C&P&=%{Gbdg-B-O$UsbvIIKO4P`rj z0crUPZp^wh@vU{4dn%)2Io<@k3liaQ`7%k2p+u<73t$C$;t2~-CQ;lVCLN_gKsbR< zN#KzIa7l<-BI45kz=`-vMN#Nr^M#TA@q7gA(Y6>aJuWf;0saa`d=vvI2l$aW;r;|C zm+;`lJBmccQobZ^nU@!mn&;u>DvhPJ)$luZMt+tWOb=KJfG4u^^Cjk{`JFU|7knPH zoW*b?_+W9aL3Ho1Ac{M2$qQ@6^ixT1!S=s_$P< zIbq^XzsUOAX4tkZmCdI6`%}qea$q1$rHYyPP&zx3W;O*p?GnNd8VGmm%h!5(k^}-~ zWo3F*Rdz>5fz4I}VZrmB=s$YW;G7=9y<=moTJ0JZi&0;nGc|P-!s8JB0Acmx9@*1= zC4?pj4?y_S%*;WZPDv(v*VU;YJOW_{g!>-#W|cI%T9gxJa_jm2n!%TLTGL{)}9jf=!ibngos zTEu9QB=MN%_BgylsL$-HTEuZq5(?y`0cAF@7X`R}8n!vtk&&%vtZS$@?P@e`beOaf zJsKO_jrFVK@_U0BBoc?sJ|i3WEu3}w=R)&08m`y7cZHL033$Vfflf|dH8p`p zI==dH&Ivmb9!-Pzii zRYS^p{Ow=XPBkpkZ+D?^i!JMF%lf+pMy9Kc?b3bRlG{T!o0`kYZvOfSb=+2AXwvE8 zVvDX_c}5`Ao?q-m^yvx(Qzxi#d0C~pI%btKkX*^aG_;@YMt9|}iBH#TP-t>^%7Ppe z0E-#M31+f_nOu1olgA9_u~!5#!+1>Q%a+pee-SpRH>h%p{-4lrt($`gYl`LR8ku4X zHNQZetIErvYKro6sH%L85`e8Of4+6XZeGn`^riG$l3vPy1C0=(B)HSulZ_q@?o^?c v-L=7ic3MvD|9!Bh+tR(b8`G~%+`lpeyk6w0c^ezih%7)-yi|BRHe2@(T}vnS literal 0 HcmV?d00001 diff --git a/public/img/logo-256.png b/public/img/logo-256.png new file mode 100755 index 0000000000000000000000000000000000000000..2083df65a0f764716293bac86928c0507cb00134 GIT binary patch literal 42368 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 UjHAs|2LgYFx~4i+M5mbl0kc6sn*aa+ literal 0 HcmV?d00001 diff --git a/public/img/logo/logo-64.png b/public/img/logo/logo-64.png new file mode 100755 index 0000000000000000000000000000000000000000..9eae418ff34790bb3302e1b14b0af159f5a25dd8 GIT binary patch literal 20867 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

i_t1yfn{icTm?zfnNz2PU|> zfH{aEsg~fdt^jR#AchcEPf1E2D_-JX8E2|W^J=V+KR?wS0zD40zllLa-;hXKqG4%BZ z^Ai)H@w#qS{&Uv+4u=|e*Ls+TTUMq3^R=_z?}<*D!spN1%$(w>ut*-CDy`d!tHXFq zZL;Z7CBmy;Xkn61;TV#3!W8*D_DSY~+9X~?R}O|;dkWp)Q~}RNaL|O=w_uP6n9ePn z_YUQK!3b&{SO@#yyqDW021M62hFr)UjffMfk2WoBgY#=X2G&A%K)?s|uq+6OaHebS zAgsjkqHYhFWH=UqXO$DfB8oAbzCV_Zde9`l+olhxp)0ki$|{Qme(n11-GETjL&*z( zkVW4#z=uIW7YR6I{Q#l85wxZ>^B|>aK^Pzi?+LZ*g1S*5NTsJr? z&_^wuvKQ?`m*bG-zV5aN=FI%5h!ZDd0uXT+!XM_Ty~=Xe7i>hKR^{Ig1?S`v&G%z( zA!8t=kU%oA%YVcH7fZ^DiuNAxr>9C?`;~r9Wml7YKBv4QCP1q;)nEzIxX|0mN`OtC z0%gmb+^d>^BWTeZ+J}xR%*ny=I@Q3zTm{(^5G)#hMi+_R%FA0tImmOk8R-U3mHu+Ah>msR$bLK)%Yy_b^_ zd+%A{k00*f&C|xtXGJNOBrjmV-g77ds+7X_OoF*|^K_`90EJ`)|I2TX*eYag;0^wM zy&D?x``Q}}hG5KNn7}YM{sF@T&R9SQ+nm)DnrrR2`)KrCPgdN3#Z3ggo+TY8Jn!)u zRN4C|{hQY|qa)L!9bj^xB;rLM{%P*Dnue|qxO z(Rr0BS0k__Uj+nPm|KOw(VR(ej&L$8jFY~%4^vFpH`rOhZK_b62@5Ib(;zWTE8~B1 zALq5Lkf|s^j6FjL8#N;hF=|C<&kC+j70Xle; z)jJJW#lI52hr!U(0#o`iTos2&C*9 zl^tYC#U1)&BRS8$$ixsJQ-csU8;Pd(@#c#7`83c?c3avXzcFqW)0MKaut?o0a?Z)W ztLmTi6cXK_!-|pof#HducUzJ|>34;_oJ_-(Sy}fa^T7FWg(v!tR%DXT(pewy z4qMh8cUE&@P?hOGu^&mI?`L4srG{JqptCbU5;|g!@g8Os^w8nPei20DuGjFr2P5*r zCc8*HM?Al+t?l9AVZiwSVUChSGn6P&*|xJMXt^!0#wDu)YMeiRZaaf){a*WNS4f%t zQL@|?IHBj?{nBwciOY&#t7Q%ymn1dcB z)QB;n%2sv+j_zXlLU_FTST4%snZc2hnXt&-&685?biy}3fyV-(#KAsK`%S>N4ah9M=z~95kcE z-f8= zK7uGX&;w0&*n<%o-#tcI%A%OyAUNoSLQ>&7hRVL{~y8c()t`OhMyN`RF9ai{#%0 zAcirXno~Q( z#UrmWg7AP=@U=Sxo`46zSDc)%c`%-gHD%BL_RbdsC$|;|5=!yDJpbEER&(ywB&k!^ zUjxTgX~Uzm+<=~!p}}54YV$fJ3~N1-Yye5kLOaB?6gw&8bilm4J6pcPSK>?=&{4xM zzFN<0ta@+_*^09T9Ua2Wt0M0Q(G0~K?pRyUBKklGG!58TFx1}0c-A?ssd&(dL~wv! zlk{EQ?(8778^ie#wY42cCk(fwXfDjpPY>#&{QZ4=EcWoL7^I)t4nk`b9MV2E#W`NM z1}(cRhK2P6f#l;yYH3wfjQGDU?^7c%9lP#r3eZ>0kC^0opFvWl&Ukit(5-O|1`dY* z86Z@kv@Sld^g_32YiZ&3ct4&rg8=)RvLDiD-?diKnzLEI4hgE}2^%mBjmz&#_as~G zMNs-LeKX<{k8Uw@nEkY8i(b@R--;x!Kr8h(da=~>rwpA zNm2K9Jl>#SM)NvJfe)w5QDt0O0_`2G8b#K`wGji;EcgW za)xyYK1ByVN?NzZ7#Ur=j`uAYTtrH+wo(XN>rq*DNv5ZS1A4k0zbT7eO{h^;cO0Q? zA4~u^5zf3B#WHzEtxyG$DX@xaq}D&I*X130;B&IGAA4Xi`zM6>6-u|PPhHKfFZRbq z_`Z@~JV($<`Fg`?e)+J`;iWkWAZ_k=s zEwkxK#h#tGWN(({jhs611C*RY)5d_lN*|QR`u(QkZDA64{YOMe4@VaER zqk{As<*Vk4lK;D$HRXG_2Teru=}f8voJtLf4!DyjvVKhog4s4(L?8uk;|8oZgO)I? zA`l1Yb(JQ-!>cy@KDuMJ6ZWrv6=bu(c@58(f4AW5iC3qoKkCQIyhO#0Cur-fDX|yf z9D)Y;U|1jEV-wY_cdQ#`9NmC{C1~^XP*OchAebl2obwJKKaeCW(#f-HG|R6gbs_%9 zy9y{oo&6kxJqbCL;!#17vwRvzvH_$bsStshAJh9@zPVuD`3Xg?8{9RcA0HsfP@k1} z2|vXF=j!s_6nI>qP)H}7lL@CUWq*C7qWn>-6%1-E#&^oeJl-%!q-``(w zcaQsg-sAOty`J1#GOJ8)f~zN!t$dzpu}+U|1!Y@S<)50OyzmYF;}^ME0I9m>9^p^F z{wUny;)ckAQoy{vSS)4P_mtXmzG?yU?EJWdsw!})%;#f$7{ZlB2;`ZT^u0=>QDOcP?$D!k{~wbroR z;@-zAhH#N2pbyG%Y>{;}xxz+DadfBcxmyjNvx!km!;b(#@aNa+>6`qKrrjyEXcCYf zJkanh#Ic+JB0*lyR#`PF*K6?@E~YoDvjcTtw2-7mojs4&+dOk+!WO)L{_H}2c9K>( zJ+K1%RJS56bRKU&!J@$BqPy{)rqc#l1&b{U(YWVrUoS3{M|{p<@QV3w6?7T^Uc7~0 zYvhgjekov6@D`&8pUHKYclX7O%)PwPc~4_-?Led5es=cu-;45Im4_~5752r*Se-L* zbetKxXYx?n6^`~rY)>w)=^yR>K5Nv!ik&yn$FP*!sXmeIhw*{Fx_+?8s^vPSYLB{N`+e%^0yx*o;!%9h zJt=*is3!}68r%suY za9xW9ft5EJOvMXfD@`mGXf@ySfq~c^Th9{DLP2jYFKTb51k;O6)A~Z|f4zk2rE2&Z zC=mk+4dGB5U&^_5@tOA3=Ms5B#WQ7LHg4zFUsmwc=s!uMBzEc2!7(mx+qcF{ny1%p zkKDX_HOC)KSFnYB8yRJWeH#Gql7-35v27QA+@^+5Uncg)qH6A)g|LUT3|pN=-3NP224XZx5i z3inAE+>;7E&c*K0BVx1%%y^Dv$LlRghJ(eY zgzw%jl+p>h>1Vf9?4l%?YIyLd(|gisu6*f|K;dl8bW6NlwXXW@>eiq3XS{yxgtvS$ zRMuvUqw)-_?Sw;pY5l$U2xcaK!)JPdlzz42l&E##XetKLh&Ohl!j5lK$>cCfJ>G4zp#v;_xd7 zLI}SSL5f?Y4yo~;gM=^rV%CSR>J5BQpf7LG)*Y+~90f4=je`#GH7+hLKZKl;e+4Tb zCki+kgGg?#B28N6DoaClV)a^4Oui=Zwcvv=9p+t2@e}ML#5y2PID+>R4zva|zhZ2c z2TL!WQOm}CVsg?sZ26hyYuD+pxRBknmxgHRTEPt6goQK>&Y3?IRHpm*8lu%Wx1QKm z_>T!&xZ(?{`J&tb7&Icoib|l64-PrTZ>gBO2crRMHAt*gUt!*MM*({$>Q+<66sk)eDaYR%;5T%$x(x% zW1l?;;(A%r*)QjCnMUqlE(VRU8Q?~SDT26eYQ>;>(Gc8ySO&986+c$kZ|g4s7RLWA z&`3b^gF?_dOstzWY7kU*?}Z4_Ur_x0rfQ;U92^`5t{%t`ND*gq(#0v8PyV3i+r*5> z{CxrC5-+^sOYkkhzj@U5hEAU9~ z)eW6wm!rD%q|wu50fdnHzAPsL>?3`oV)R==mhoLUa9{q^n+Y1}e{#`0xN5>6+d&Tq zt3_*z#{Tn@==ybYM`;>joXFHzf4!5r3CW2P#00eERsivlmyjyM{J2sIXeRSO(=bTZ z6+?93L^3XJ%&ajlebWgNGIszYGxT;@{zV8BK@BZMt?`b$!6ds1D*UVd_snFV*?72? zvz3*VtLq$0h#(f+Ukd$y>WaOmsa$rIdTbmZFy*pFG)8gq9BA#ZJb1j$8=ab( zg1P@c=Fowz4$pPd0E8bxYs@t9=RV3^Bgxnk4rb#pV+KK(4<@dr(ozhHQ?GyfZ)AKI zIKJkFOXY>|#`$UpmKYr5v_?kY9098PtpkUm&r28TZiEJe6I@Q0?2FRDaQF82gBp&v z!K$e>G&i4=muJU?D;*F+AQ*GZPQG_h4HmIB@or5HYlB;uiV%HvFTSz2148NIm(+08 z0yDMM-IIr}sazCLWoEx$b=dK5;LwS$yDQh*V@PV~bd4hO?`jqgc%-jmUpvHOH)yl#@zr5xlpTx@<-?xfR?@{=|pwC;a!}uF(7Sj>^ zkgeMj28J7838SNV%F3QBf%|DYH7-rCLH%4W^%}lkDDujLjjdP*QIPo^&$BFToPMM! zp>D*&>W|J@PU*3WF=Usi3Ra15Tx|z}s`9?RZ2$2A)^%jj?IR{u5wK$a0wYkmy!+_9 zmCZ!%SO`9_R#YqCMPZfR+>a~jD62|SyY|Rd)1bp69#>4)Mb8jz@Ig#Wm5J|s)7L6k z(B7v{R!LE9E3J*j^U8(+HlhV{cWx5z%B1lR588FcayxNfQ$r#=CJ>6)n0RDMYEP0< zJ09q>lbfLz4M?)3dM43eewsrwC6g~AN<#$)_ppd>W$_siiSHa;rHk&5joQ=Pih`R^ z`B>+m>5J^hBc)k}$*p&ks%LK9>7187^Ecc2B_Wcjvh%1HDW1^p^f3^_b`fW6V9*WO z&>MT3B@3Mda#p3ko45SXACf^&c^HC-)^d0(U}FPyFJk)Qog&c8pm6Boa5ylx&M!7| zc4x@nOfV9QjuV~t!VDF)FrdOwdV75VEQ#ts;sKCZ#!K?tE3HvQ{F4~d z=jv-B8TUrjd7{SVm%(wgg;zFP2MbUY1l{S<$5|?NsCv|9S%e`YO@0n`)3BnW|E2j7w z+wH;4#$UsYI@>;*J_`|NknoSWy($FzDCB!l>i(EQm-oi|jr9p)T^5%7EeTU>aqbeC ztWE8nlIkmvtb(daH=(re{iue(*X0i_O>J!-mV@HETwNDA$S!B|?iM2gz9|M zw*QVBC(?g+^oGFkuZNMzQ3A>CG8j`0)_+iE948@{1uklUDP4u!FNdgB%MIEdbSW_S z!p8iN!jMDQj#n8(U9fygc-+?31{Ar9ii+muP&$)x~ literal 0 HcmV?d00001 diff --git a/public/img/logo/logo-64a.png b/public/img/logo/logo-64a.png new file mode 100755 index 0000000000000000000000000000000000000000..e1f146e0c7fe7aa93d991fa06177c1c7cc32541f GIT binary patch literal 5602 zcmV<86&>n{P))e!8WmT=Cy=&_UoQdts^vv9OlKk%Pch2{G&+=OgPp_;1HayKbJS}3lu6yC==;;5ru6x)t z&8q?PX;I{4PiUIv=Cy0r?%cX{>w7nC+B6;nL8;g4U1FN%`B4--q_sYHGW9uW04Sw~ zM@B}rpLyn)pV_iy%UQ1L8X_XqYL&UUIq^JigX1`F0LG&zx*zDB487ze%wZLa#fvv? z+<4Q(#Kd!K+ZL@gzSkr4=J9%M_8)A~^8(uKHc=F5;DG0OH-usMIUqWb%AH66#Imfd z>(;H?F*!MTX}MfBLRX2%o)kFU?LwyWK`>t)nRV zFVFMd8prVuPneP?Vo<{{P8l5?y>82vEmyBtv7(@qA_xK;)#UPXR&w#Vr!ll*4AXMZ zkw+Z1hn)oN)GIqZ4fO+gUc4g|+d=i@YvRVWlLn3$NjX<}mHR~*L?fH>@O#=0(7 zT)dW3Pv1m&^#-K660t3ibm}00um?&(9H3hViRbszn%mFU@7u>m{=UY6n!)^hjUWg# z@KCSUyDo~NZyXQBpE3ZJWj%ZC+O>Z%IXU_AN~K}|M4`|4P=i-rQ04j0nV_=z6wDQC zkzxr{2k-#{!~|`C7Qjq?kJ`|kLpKf*)~1+0G|d<8J;2}Gm(Z4N@5ew+e=t=qGKGswSz| z4Imc|KoZ_v&_HZMuZeEYpciK7&d%`TM-TInFE)AbrzQ&v3-o$D4gAdWymy9S_$44d zQ2>~(>z=!5)25pyCMI5B+qMAcu*KGi2CsYB8Ya)!gjud4ZUqWMV3w09q)pP-gn;HJ zKbhqp{^1egSkgxm$1#^)dIo2oy`CgQbjlPD;uZugbhA!;@GySxlE|(QR9QN3-Vvg6GZ?N^* z8>pVL2`LRFR5xu<5ztK`?vgkranAH~i#zUk5RoJC->{*=*=L^uSU><0B|sOxBL$_DgkgxyJTHCD9G9P0WpvdT?$9t&9YxCJ z)c9m+p-GaQ)`1q$lGu^PI~t{|k#dFgMpDih?vOeB!tZco>E-HdaL}NpgxM zh;2|PTAWt4*fG}Nm1np3_?;F%{MmY$ot+)kT7ST@tT%d|_l_uv?&>4jmnE(ck&SED zuKm$-pZnahX_}(7M&cG**B{_j=L#Fv4^tii8@ z*f`q3Fcw$+OG03frm=|VX0u7fX|QfoQLVZ-l_FAb!FChF4J$EPtONv93V?xOoR~$X z))~k~e?GCmuoJx;7m7usRG?6{87iAhjM-S0l?UMn859DsPJ^%HL^zhc$l8!R% zEyPNGHzF{7FdbqXywD`pAzFu7ZdsCf2bMvtbzm4qL2HdN48*VymBzZVQ`##~lIkuw z0E7)2R-(0D(&%Jz`Q^{!#v3ofG&P`53PcPHLtz*uB4w0vP|89?Arc_cLnI{WFS4de z_rVaI^dHIrWuwKV7dk{5v<^^8WnccK03`WWgjj>1kbJC*l{_k4yhzOA>JEj7;`-}< zlhvz-*|Fox9L+ot;jX)WM6K51umAdY7#^3t#wSs@1~M z!9}?L{@q-3(I=-tIq;urL{l*dPYl0L4X&%Xd_?!>YsAzscQyKJ~cJZrI+sHo_l_d)&&-q z#%U+n?*sDlq&)xy`b=^9AV|MDMcN>Wz_x8jlKYYzFpvR~Wely53~ezJud6H^(ma3x zxTykJG87<2Bx3#g3U}Xq4HsVcj3u2NK(FWXhky8&?AUQ9ah#`j-ecK&{ZgA4Zs$I8 z3{VL}W1XaPery0}t+j}twdh5oRW9pGHlanIhS`%T9+PD1h+@&?)1Q7F?|RqE z7|cZBlb`%IuDtSg8jUO;WSKrp$I5M9SqPYDj5K_uKgob|kR@L<_Bj zBOR7`Kc5IQCgk!!#!eJ*oP=>snPX!>rn%Ny7F$kr6ab6JXI{w^j&cv=v$u%FdFTBq z_ul&+Hf|i87xwNw#3h%!ldpa4VYJR_z0QqwbQQ?!;-)M}oT5Y$5R%XvSO%A^0to;D zVjwD41tcGLS=?vYI{#$DDDspQDKI%X$(?up1?$$W9yocY(_{PgzvS`9r%6H}T4u~F zA?86ySfF*-kNHTBaS&%n8%i@W0aqP2m=a;zcwtpOGe4*fS!wpyR+Sk4q5kEIZ zrvK5QmVujvW6TkGDQ(fyxsDBhv;rutHNLNr#RX5U8Y}{k8J(wSW_sya7rmL#)^lmeif#Xca`5XW)W2P~207$8b1f-nM9 zQd6}7I%_|(GL~*%BV=3NeZ_)B<+YBv_115*bLUr=HU1s%xPmvn@w}AwUHZu{8&~DV z&a)x!b&I4!ED}o*FS3Y!NflT&1e8*QQIr^;c|F?$z+tH;GG+6|3tAi8cH4b?=tIjH zZ}IlGU&fo>bWZB|AU9qX1{uK64?UNDIds#{DA85h#IZpfCHs#e%N4u904TuFTH^(A zS_b>gMZXS5xki$I0UV=y~$%fUGiQ z2{B!$=@=z(!WEGx6#^z8hG7s!B;_Pq0mj)9IE(wEV;?f6X|4G9$G^w>-ZwbrUDxE= zYtQHEtGA`={4AkmhGtAqM*%D(9=CI!X8L~Cu?nIiY*V9-^!_m=K}RQjC}EiFwkWd% zMunw|l%u^wYCL@66W`_Lo9|j;IDq3Ay!EXw=9+8HLL|t&pM_Lra6XY{^JHCTJ{M#i zq7CAM2+B~HMp6luasFTc04v#!Qg{()48$mcRRtqXy?=BW%I5?4%2yuY#v7M2-sDgI zWES1JXt) z(u5JjQIu2xT>3Q3DniJSG!5Ca=g_hf`hLjgKmQP){p=6Z)1M=s>>wpOFwGLU)^N!s zXL9@PzlTUxipc?%w#V84anNWY6w0tsDqKdJUyuWoQbe)F_ah>&i}pRl%nl_o7FfB@ z%##61Eq_9-HB3)8mi_l%B)*?(cNhB-m;SOm2}2!gy!JkPZvjyTBFkSi8w7w2r2FVX zr_&+u+PGdDY#Xf9c*&5@hRE`RfymP3?(vZR{-OyKff7e<#H7_H?9u782>dPuw}et* zw#l=k9xe-jh!90Fjm83@-$9362#ZOERWZpfYz74MS7=Ter^jF7co4I)JkbT+f?%Gg zd4SMs5=9}UatW=QXq{b4IZ_5z0TE$#c9tOUS*X?U+H=HS6JeDt04$PQAU-1AFDyOjJOd5PPLUJokD)b$ zVL-A2T>u>ebqE*Gt!Z?pi4Huvv%9DrJV>V%uxG~6jdmpUdYw3qm)VRvN|aKkRw|Xd zfelJ2DHICEs!G`Tv#ZwF+kX8S_UPI(a7Q;JM`aSG`=yeyA_D0#bzq)dyB1K&Mk$41 z_$cM0RD@ER2OgN==9}+ZqRb!t(OF!1_zKpo zU6FWDvMGA$6EQaz4P?R4kjuu6qx6$ocIFU)jv)5IYk@ZhktXg1bZ2L%&rY*2dyq!G z#_ofPZ#_QFV^gqu_Y=C)>GV3C&Nn-q&W%SKKM;UaTE6eUHwc2yIF54*aHa42g}WcH z+=q5OyzrJ+9#9va^UUhV*rd3X5yUYUE0KgcT`ow!X%mZnD;uNK;AxX9G6BgQ1}`yM z_dti>`{4D!57A+a-)K;uIl#i)VdiFM*?Z9E`+HXN$n+5Vr>3dZYEh@td9c-LeZcqq ze`c9W*T-^>txVIrtW+v}(6X$}fVhquzIbb)^`^^K7N7Bq)9jH|_6Dyfn7uVczQKc({s$s%xK^D_tfk44|coVJNO0ngN_w|Ov;YqTvsd>-)@>_ zQAA{9sN}us+=6=bh2!Sfx^XEMEeho#s^lV;N)lzp22&PGrzS0-*$Ph5Ql=$2h>3JU z7(a%r26Ff5YU3&mOWySFe=el_R*75~^UQ+jDU)Ec!q! zwy-)?BUZ^10zruOI>cR%Ub9VoZl3zW0`v229^bF{&hB;WK4daAHKiMkMz`H=|4Xyk z+!005qfg47CksF(hGAS#EEYfFIL?`XxUL&-dv+mu-37`xeR5chtXx5Lq=Hp;5j$f; zoG`(VY~wvqK`V$%h@5ma?4i9nUcE(gp-Fwd!Tdsp{j&!5?^@0O?kjNMz(H!YTG;7y z?r$_2?+Jq7n+#a)o-hDXu`SDbL#b4{*)+|SA|fkCD)FT+uz1zEhK!9>Wn{$=#i1fb z!9*;b0-?Z6X&(dHNsJG>=w6es>(iQVQD11$Y_zGh6hGKK%6*Sk*gJKY+1Xj$>-8S5 z*Xy_Rdc8036t2%7m&-gNvc`4YcNYqUHz}oT(=_$u`YONsl9=8@?4AQZIMBbPZ?!)zZ{YKC8zQhUo-(x2d005Ly zrxyx^54*1WQV~(*a+zO!)+%1H&13T^1~c;^duCi7c)Y}8yIai89@f6^PuJ`9+q&KE zUumtICsMx?4nQi(G|kJ3#o|uOvNno{tXj2-Q^v~pUYGrcdh~i-wAPJQtMzxSR_m5H zj`yDo#ZDFgnN%Fdxvo$syj>|(03^M>;`_e;^;WC(?kI{LJjptpd{IiBUMv>x93CDH w%jNQao2Gdg%imS_e=DMt+D3BB^R&tT0Trl^8fa69CjbBd07*qoM6N<$f?GP^6aWAK literal 0 HcmV?d00001 diff --git a/public/img/logo/vivobluelogo.png b/public/img/logo/vivobluelogo.png new file mode 100755 index 0000000000000000000000000000000000000000..ef4eda05cfa38d6a591cde729889ec09853f16a3 GIT binary patch literal 23377 zcmV)pK%2jbP)Z zcYqwlvHn-xGqdUPoupIF0Z9muKp-J9nCO5p4mjtWZH%#r!Z|(X^lU%J_nfdXV8Ga5 zqRAkXP|jJGZ{u`#{r>2g+1b6IbSGs0isf#1wYSsL^G(%Pp{t3R@&AD^00sj*zzI|I zvHt#v2;qPKUkLrD!on~Z!O00gh@rWl%xoAOV1?*E6e#~Wu;B2T5g_|qE)8@RO#y6Ne_>DWnmySK`?5Pa^831r-FZJ>)V|iN z8R3aj?5DABa_|ll1W`hYgeU8gZcD8| z{JX-!FdK#>PGYDqn+H2)IHxk{m&TtdzfsECTF{ z2rF#gWM+_IV_0irwDFZungMnlQJ?X~H)oC;SHECN!vdm{WA)&@isVEs3e ze=}HE-5|s3%D~3X(gPdX?_bmQ)aH&Y`?C4G4`$C12}d}R>|M(M$EZeM5#bY#!6JH# z7z73&ErythnG9>CRZ084X2Yq3Go~docS_UgvqvqNJ#yBlv=e@zHY^1Fd+CpV4_Gju z4GThanV0X&-??)CJuCJs+uGULT_AAM5eZk?yVDE`g1#bR&+VU4WJj0@AO?d4gV!K_pUfbO5 z|87;=@1EbYY-79X&bu%vPr6dDg~H*U3!%(Vt6>2KLok3)ZCG*|>I}(D%+jy~JIrK^ zU(&gJDOXfp(wjN8`NBn$FJCfo?x+j^Ftjmr%qx#$7Z&z1TY6vAeD~&_A3wYA@9Wx% zop~7TNTk>}O0yY)6X**I#OOr?3ot|&{h;t63=3vqSTYM^$gnYnnFX`EAI3xqgAHqASQ|D5+ORgPjbn_XwBK9EXG`@hbr)Vb_nogj zY2KI`Ff=pKvE|bqE3mNSzye}ZxBtauoxfPsRmhe|LJ}LLjW*CadQb=pN1GuTz~J

h#evb#2HL;`fPgkoN@{Ik(J#G- z=PYdSKxy_3D`SiaKO*dBNDzof01P&a;9fV3Ae0VCNC@FbNFo`=x!4#o0lg3*IQr5H zXk)a7(n1@lj8s}G4PP5Ue!}em+KS2>-T1CoFSy|qvs+S98wOtFIM|B`3msaGzii2U z{K?MsZAy4TND2XAV054%OsFs-JEFAE+EF^8l!%>z5F`L*C~b<$l(b=naAYRsHr05e z>XNPX$=3SBsM)N=xr>!HWiYiH*aYRCrV30PX4fjtkbZAG6P>Qwj9hq}v-jR9FF`moH7>HArO#A*@ z7c3Z^(S|{IQ37Bu0xTjW@%`03pL(LRr@%5LE$0e^xf&A{$k0#*T9ekE(Vo&=^m9dJ zKn-=t*<R3^e8ONfCgsH5Zj1*ppMscl12Aq5ZKn z`&VshYulfdzN&Ra${}L-%4n?-rx(h|Kw)U1G?ey*$h%J7l{rV294S0UxQ;4l*--O| z*PeLO#nTc3%9NvdM@^0@EEv!Rj=h3nqFu^!F6(u%)7GSNOl~!QhF|kbji$_KjCL@oqx)h zj4~{au9I@~U=bOP->mO_-y`i^d3KUg2fkoGRSbyeMNDT%W1zLp`zZQe$~k9B!&UP} zTr{I;WJ+=vW3V7Q3iHSe!)#BAi0lBmee>|TjyoRT`oL4$c5d(VSZ5Lv4CO0UTIkRj zQHFeFfTAPwj?B3-??~e~a3vgvTt|A2Dr#AmUV7C@pFV3GGaDQ|gL0H$p&61;(EPzi z+x~k+ukZv3(i}O31HhuJFtjwxTARENrKgTcz4`c-*UxR9Qt#RCu(dEp`If2}Z>;RY z4ry;*-TBO}-`=F2hq-h8bmrGPF47DOs7e9gv`0$4bCM=D2JSiq5R9N{@cq)U9k zSyO*;)tuI}qYOJoB* z$U9|v0XM(|90^B~>qu9sf^MDA{F}F*bk2mDqeC@@7ZwqjxP43ZjsMu+RbnSW%0y@w z6c)xvHf)T^`9knzQ);eR(6VTBD*W1`ZEg=$g4}ONLDsevet75V-`~EXdq;ayLV83f z`tY?Dly{_sMbVL52@Cr~dX7V3uH78vdP5E7)E4}8ls#+m8-{=A2Htd(7qo$ z*X5)g0~l24i2-3jnz^JGj`6;HO5<5$QULs5a={F;p~im)G0etrkcl-c9YI8^_vXIx zi>Lnj$7j8sY&z`~tux}toFlc{4<_J9NJ*~aIMUCX3r-#P``68^cZD*1q|-2fP8b$# zVL4Y`nb+LA=k~Q(H{&Qq;Bi!&k7{HPz>FDn;*0a^FQ1&@YPgqBkp+9?C~`Y^AUO70|~wE zhP#v_jT8_9@t=YqMED4w69v!h6N;Wt`3Z=LJV&f*FFn7f=%gIQAs{GH5(LChQe{(^ zmyAlZrk(u-Z2*U?W5O^dBY94v_wva#r;SeAK*F(!3}bWdg4XWrzUSdht6$jD+nG1a zz7z#V<^=gdG}fou$XWNqmh_(XqEb1}$-7R`5$yDDM=UHLrSu$KGUG?rEt=Y(3PoZT z#zPL%G83@Jrt zcb;ax>Sr4|@|5;ii1L90Oo)n~!s0`eF;Rv>q*2PqFa(28wM3Wz1sB^s4-(kbrldMc z6bo&U(X6!YEj6U&ov)d;cud9yMUD}%24ZJt;WgLa^YpV@M`S#YStu<_3Q8*>vYwN5 zWzKPo=dj}#Dd9S?#U!etu0hn17m{o39HP@ zv&ZH6WM;*ze5J_IUb1A^XDTw400k(f5>Nse>(4VZlL0itXDEixtQeZvh6(M12yGp? z*S+!t@z$5lS#r`i)ms!4&Tjnh_I1Telm}X#jrfzwk5$iGztedj;uN<#Ab@HWWj|2WnKW#R+=KYJ z5NNE$sAjklT323?KH!Lup*2z|lS~@07Gwmm5Edd@2nZoW;46?25F+>h5eIJ)04XS& zE4}|6i&~m9LK{AJ!T8soKZCpS(uM`9@K}M8NF!8f0xr)Ds*url{swrCf&VHZA`u;l zP{MrOeOnnXeu=DInedHUSM1&2>v@u`3Jg_+3AKe_mIl(WhyW4439ad^Nn=zCk_l+j z=W@h#d1PwiTk$!ILI($%6W7{*H50=OJO|m zMG<3I3VLEg`ycLG*HDvCAtvGvdjVurEMBDpOgNKfgN%(*eM8u4bzyC}rMNk-~G|w1U|B+XnfS!URl*d;E z(h5pZMK25}!K?VMN^l(LidML_WiQ5n;EAR8Z*40mo4tHd#E$OEzgwjNA7JC5Azy8=JJ0nj%v|T96S!gxbQA zjJU!OuI%b5U3SrNXD^vz@huSM`aXW;2~#FDsk|>J2E!_4P+?P0X=nzf7Zt+Q?{S|e z!OMQ>1*&gBhT}O~_vOC);C8%73d82Ee)rh+2cFwmSK}GO;i`CBWK03QAV5U0Kp$Ad zO+%V5_+&sYAcSwYt|9fY_ni@) zk+Acu4cDi=8{W78MMZ>u#u_&$6{@VyRqabJIGB@)NBPZQan9h6GA82D4iJbm11b00 zkM3BxFYgFC%D`Yi3hFNEuid&L;Ru7MYO5TrDQgQsL}ayv!w|7m1>ro{H7Oj-j4>nx zH8)aS4H>2?h7lY;Mlt|sZPIDKpUpIgHlxD4s zZ5tFUrjmk~`Az4~IBUT;-BXl;s_mH_LD{lYn6v@tMcMNKGaLH=8!+?08kE^ozX|KW z#))Tq(gEp+d|usf@21$%kCIrY^t<=0U%jOxopLNFDIV;PLV1E1U~NMeIt*Y0ksnq; zC2+;VFl)^qZfxM143riWPJ7?UM;RHap~0`oXt0ri9npeVkcepu8=KCR^pwdh?|I`X z0E7teP+nta&u8hIPliLrm`ZBdAH84(`s7V02v?Iaq%|2W*r4cp%n4U`k~~SCMEJx$ zj~-n4vixuaVB(3Dct9OiVTiQ*$7Or(TH7IxqO)qV{2TV=et7qqy0oiIhzV3AfS3S5 z%CK=Aw>IUa5~*||mGV+4*Gqa{()E&#mvFp<>v@jn$>66eJy&>+^dxx+>9saFjdfgz zS@{Yh66b;dv)|I9JeL6zb5*&G6iEwoEDHa>(Yqp58>sms0c=)RflRTi<$eZPHP(0}qfH ztrP+S0x*o1-MfE9dr1%(R3ak^W(Wds{oNZbn0~Tzw47Dzg?`~LFYNCsjL5jgH$)V~ zuIvc}V-u>RYU@+K{>Cd?o6^40w)T?=Ja97Ez89Y;;mEiCV%dF9ZFd^dDz3TvdXC1h z>lR0haCYt_2xemhX(1%DuwIZPNwT{;x8&sUS6w=X88VhZD8nKe%=K5D^ykO7c9b-E z4##1L*b{rbe1+aDMm7UMDKuExyom-m%!PvAlJRbR$4RrBlQw~L7*lUk9yiUeyW-yc zkOWitB_TcxL#EuPHg^2rUpqdqc0} zAA85*lcqLl&GN8PIM(O=!`n|hC+ja;*Cy+ennMm3Cw9R*1g&*VO|h|2?r$?fl3*=Z z8*;3+Fbp!%ajtn=5X_8MKE@Yn!#b;zM%H}dmB*tuVi+NXtnycxAq2X6kuLxgRCW{D zj2gRAF-VHvymP_qQ5mHfcJbArKL}6;ubh;=bYjYsSPJT6M*^j703@9+{C(q|Uf&Tz z)#6}4v8wBqKd)wEAi^sXIHF}rAtYt<{+v0j@4jLlz#y22XjME8Fb@nU!;PN!)4S%6 z8C|FIz7TyJlL#61p>?sP*-xby96GDQ2q6SHuI$W~t~`JGk`u<*Kt;u=Rh_B@@<(1a z`?zV%Dpv|V95-X=qdz*j%V?#LZ8);Kq`&vNF1TF}IsATZTw=7J%LL10< z_@Lr(;7M=V1Xv=dud!?XZLIyLWptijF^6hKVuGEoB4$BzI4z(jiSGIKik}0n| zeG(5)taV6Yk+Ec4=DSzTg>OU@=deSFD|P#((mInVHa9U_uS94egd=fJA&J85*C z4Z2hvr5Y9h>}?E|}H)#mlB!qJD%E z5e$?7;L|78x7Jze8b&lC-vj~q7mmmm^^JF~9g^erD?$3>p7rZ@b*B=Jv3=KIV^$H@ zBqB0~6KU_$Z#)@8=Qmqqy#1sRAGmOu&Xydae(uIxuIfx1Sm#p zN?viw)80UuL zh|X;3^_R?EFty39U>K?~*revyE}eYZoRKP5l5u2I#1ZV9h8?FcY9s?j5=)WO{E=53 zpGmpa6!w+=VIc%*!>3GZe)k2_(NlCprC(a%C3Ap`t{#+pNP&|6;km8j8dJ*f(7FN+ z0l<4_*DYvGYQGX0F+0KnhDb`f`OY;3%|o9kVF0-0_BCDEk|RaPG!a^mkX{HXmGqd= z^&frJ@fhj^F98PR0Y7>5tlGLT$Jwu;w;xx!)KFiltCd8Z1%393V_tdsL>^d|51=i= z)A-C4b4QNIsABx6ky8}&RS8g9cK4W^{^-o)WwV+TV>tXn&2R*6KBX~Y7E#D3o-t93 zOwxU3Q^)rn+=4I=IWz+>ECk)PYX6^}+8(HiP#8fR)+!7~P;Wtf;EH);8j=Iult&_h zpbXD$N__QY(^1k?z8IA;j3`bF6k136M6M^Vy@mI>i^2*?y0dqFy7+}NMgqfCTqy~Lamj@A71J`NWMr7D?3=>&flSi*`n?;rcNOIj zIjamvK|bS_zpRmgu>eAjY4wDq7eY{P-al#fsJFdjI)-k4f+}$YX~XZDKjO+o<4j)J zHa*ojsp!PD=DM2pWaf>F$1gmPQ5z5z2s5kiyKu(wQ=4?YB+wUz2u5I^XyX(LuIup7 zQHp`&riD$Zgw%$pie4b_R5i$R<&L)8=kM8oA#zr&*7?yxTmH3ve{C{U6#*tH=mh`; z`owEaNJ!F0zQ|_~Apl6!*C3e)N_eWBk>E-ZpnaX3GWKJa%tSe#*S`z~3+t>V9Pz2k zW}>9S%xVY@JA_b28N)ImpV-j#&Byl;poT4vX_e=kM(;!O8c;G)gf0mpd<02LpV5$Z zfBwkU$G3JLxwC35@$TNzSMOe5laRJ+Vjm&4HT7Bl!bOuVI&riuUpSKE4kDT%iSF5w z{neUY*-~dfs7_{;4FvaYB=)G?PG;9f|7XgrH(c-FU}Z9I*nksQU6f8@BB0O?omsyV$o< zKrfUw>6*kRuAE!-??Wz|tyBcxn ztB)rMV@!X}Nc2H=9NODa_}oJ~F`Pk00yJ||LR@!BGZaFXq{5CEf+5m|>(lN%%Xk0Z zv%BdCoK@?TKC`{&Cl79JOnb^i+A^5n;3Yvy(UJ4t^pfdw$JPz4Q(7ffAOCQ9=aV~f z(j^T-CLzx!+(l0uuv4=_eL zlt~9cCiI~f02mIzl+2G_=)u6m^PpgX@FYKY(eybJ>tkiWRWYu>J7NY1H$Jd4r-mWO z7!y13H=H)2Hsjh&pen+hc6A2849^jJI}5kmwH_f`I!Fm>@*dps?52*Igwq%05xoEd zLR@?K9C=hKjjw-jSE-;Sfw@9qb1La1JQ&m08L?Q=hT)3eZOrY;se#sM9xN=Zvzkgc zH(h=ld=126oj?qa48Sluo>;vj`^_izU^wTPALn*ZEHJk zf1y((rPgINU@w6d66s_t^^FQ`0Wh;8(Vo@6-H-#&Z_D(9g$07lDy}$n{3R#0n%vy*260WSmQV^vg5Xjf2u{L?_%Vyal4b|CI2?LU-sQLPT?f_zzA}X)|z-$r; z>AB&XacvP$QNw_wU#`z`m}#n#Lx4s2#kl$M*^Vo;j>d%Y5F>mtq@<4S(#;R;#v$tM zLlWz(*16(_MI)g><+K?BZ4n|s8?H~e_pjdfKTqtWgCITDDgD>xu3tX7wK47X3D5;! z%Yc;BmG|F$!L*qpGkT~KgmJNB{>~G-pWoW!c*2;nhK^qdEu}~$s7hM|9|8blm>ha$ zf9auJ1)v{K_0V8p^VAEbG`{!DiO80mpms4rk~taN5_t zbjGNrqzWS9hr47$9y(B6 zYnFcV^zOf{*i#>7N-0c<1wvM_pA$9F#Gf}Z-Av|ado7%8U$Okrb z{bFUu!RYP77V8Nw9+Q6iyk;)wkb8!UKVzTNhU-$!ckkb{dhdV%H|v!4l=SERx;81r zAfpzNy7KDmxg+0r>exZb7mi%4MSFaE&yOD4iKJ9jxeruCDG1Dlr?jL!5mOR~Igen& z5R$fatAFk+0M!AEYFMzPrh{HSd-Cr&d(w&1nswl;qEcJLTq0&jy7{5qT}K>b99*m# zyYBSXrusxspBQQj6T5{OaHZ(zEiV1*It)O1EPVg#zRjz)cV&`tV7G;T%*qi&>6Zo6KdV7PisYN-2hj@0@hhg zyMK6U$31J>?4qgozZ!-kXnkA$Tla0OP4yF~u)=^Ns6FSu?)33zOl=(2^oRZO-!9vG z@A7>za7rsoM%fu*mIRc{hv(GHZFJ9{S`XhyLZ!9{{Sm`(=c|tpA1I zJo~FBcVW=vxD;dzzjV%sSDZY?WJ}Ugj4I-T05RGy67m~Q>|NV&G@R8BojhXB*o+FQ z`VbFymW2q+H{Y>V_tE@Tf827{y8Yb+Pl^hw9esvC1Yem^jj3xdnSle9FC2+jiH+>pTAU@$LONrRB>ni8>4FLl;b&+>|^D zPU(N$zh%wlPA4Iasl5FvRfRpbn@(=1afM+l9-EmlBE=;w5Hs|V^Ah?a_wFnJ;C^9Y z~WGgguFB zrN_*Gp!;_f0mv8@M0DCxkOm%Iy%z*Z%J1B@X4#(H;5y&-NxkNRDdSpef-+!KGR|_O z#R8eHduWe2DovS}o;}t{IGSNQh?zdHU`EoDoA>s9`QD8Hj19C9e)`ys2VU4$pK=GG zK}0BO{>)`FGOifbnmnt*Z~n`guJ)XC1RJhELrgzg!sj@&^wj2PkN_^3S_di0^&yok z)i6Wi`3`?uucDY85%I&X*_&Ity#ub4LX^64*Z=ti`)>mc+OoWswDXyZr=p|-XSMq9 zcHA(`G9e$^()-`fcMNw`pEkUpHT|BGN1>plB!;yk)uJ@lr`;bvxOv&mUMWZlYR{`L z-n}mE_T!XBZ#aTFbN+=Vw7&YJ)`7Zu4~f{N&kwF||M`QPDD7%(DgaUGiAVwp`aN^& z7mP^Q{>PRApE^1{y1_HH9HM+FLo?5ig0cnk)c#WZ90OR`S$J|&hv_OvK}s2scK`Co z=D)0N6MeXPTpU4Qylc_eQ)e{moF6pzjMIzAtF|E&mu`7<&wfi>hIA6+60Bx8W9+Er zlvWH;5!8x{6x5URZwi;7ef94f*YD~{CFEd{E=JOGZn$jbFbzJEz~%nkauk(-4JcK0 zgb7eWfbz|#I``UBnh;)8%e3k}aoX4#_*#@NM1?$+H&ie;(fQ;4?d9peiC9R63ln zPN}|jVe{y;qhgU(JMrgCtO48QD-|UY`I8$|$&l=aUPQx^ zgwOqT-N*j0I-8Fz6zlUbA{0wzY;*e47Y%#*Lkj9FsGEPg3<0GW-~kqZD(LxR)9*c@ z5tZdXc7%(@q~VFsYFBBRfL^TbQk_LZVe}$c{6R$f3wqu5PPig+fwW<`^u^m>*pXF( zJFAwo-+0lKOl?A|sH(40VT3wN3KRrz&9@$wbq|fbY;l3}g*LVAfHfllGFni+jo67o+kbltJ3ckue-BNRzwm@l2)aQO)%{emVr z2r}R~lyc=@=?|iwf;xFh(|gaDfZ=sY*^%_ZuAcw8^?9V+3a8WpqO3e12_~;DKd#}@ zDYb^Hcf=&XFlQW^Ga^+H1&@Ms%&-du6tC>`fl6%w;DsIC$QH|-5e#N!7%AsR|Jd-v z&g|eTaIEh7#Mu+3jHy)x9ZR8AF^upV2-iQd*EifZeK({+0B$~iQZnO}3g6lSAHGak9Zr2J8|v zPdvLl_q}Bu82+lhxg$~^Try4-^Ad4{*ZB6o@z;Y>b7Jm;u7-PKD6!*mkW1VC{}Bpd6))2B8hh zw0qA}+kdxw|KRN+Y^?Cj^GBUIt3^kqq>|tSL$P@pkG}B4{#^$mE=MRF5hD&D*_2{Za5*gseA3p}A0hIR-h)<(o8^2N|J$^*;Q>Tx{z=h_P zbv)+J~JZMZqTYz06MQ0O>21Pf{{FE`HvlMQ$mcbaiO@vxJOrn0YXR7>?s&Kk|1&1-dk$# z$|G23R24R10^pmGjj0heE^vTltyW84fBwXV`h-?G_Sp)0VP8ptD)IG??mOgJJVY^I z0&c!|8cEqFWi*&bLawNoS+_hk|;={_y4V`_t$A!zAKCecCc zykzs86Y9Kxb%M+Hr~Sn&2&{NlE~vo@T*>`C#X`0iYKw}%Dr`<#o7TF7127+egj<$3 zxgqh1v&JJ>vDrVpKv2~u?%L4vhxI+f?W}6U=S^+6YT?+9oI1!(JyKA2K`oxq@~*|> zF}w@KSW2;KbH}fL{bW;(XOx!AG(ZST5;*H$wV?I9DfQYMcw|Be5cH zV%EN?sr7EWaB_4~2P0!^yx5iHs;gk(vNs|1{nJa z!RD7iUah0I7(~JPx|HENBWk>ZKUEw1dd=MCm&|U_ITg-nq%aWC3p+3H#Fw9L-_kR@ z&Z-Sfe&n11yh{g@=M-R3Ubp{UAy2!bl8 zspINCe(oe3v{ADkYDqgNFIbJVMa5X!ixDiq0D7_|7$c&qRdHJf*RL_{9^xqzfTb5q zl%CMq#N#Ky6O`R%DbUgDFSX90zzO zGnxVXRh#8^h@TB>dN{3-f)5_SJX4c)P3x{$ryg8bXQm5+rN3bChaN?!t<6`h{}zt zBtd6OXU}VW<0+#Lu}?GssPROQ9uIE*NLzp;8-}@2pFQ9Wm(K89*>4vVLCE{&(-%)~9PWi;h5>y2 z|DM~vvn!EwjXgGjn5$VQv(W~wTzbW9#O|kq5j*^pBM{WX!~jv|2>?)3fmag1!uPf1 zpMhboc9a1^!XX^u1+(QaV{6@O&Kd`6%OjH(Ga~l6byn}+lKs`19vV(()rRmFPpW^@ z;t8EOzsgyag1YklImeB7%fc~(M~aS646~H<%%=8V|8-SEZBiMw`x%2sggYxotkWUl zp3>XSnX+WcVXjGW1=;zhYHfiiZdnR%k^mM;8Q3itQSH%2SaM}`nfSqoo!0lCI_iW8 zwYsPT#rG(QNCt;`gdyq1$J@F~{Va?eLJ3yVUNmiVQ>s|$tTMBd($?f1g+02z_^W3M zd0#lfgv%EoDA+}pS%%x$siJCZNnd~YY#gpplZ3z}EMubb&W|l!kBauAVT$kUr3tUVzy!9G5oiFMe&9omHDCnb45<=mpbyW6r80s3YrNb=tVI zrZyZ*r0B54-to6RzU}XiZLP0K*oG?6R_p-9S*IW%SNi1Tb0;uvYb1 zXY~VTPB?K=V{cIjA|jNO8QGBh?8VbD{0qf$zWM6^J?F^)3LI{iYBxF)0qbOkptGgf zGe>^-;+Z&tNNWfNu2j+$^dkE102ZDj>~5Taj~WkP*f)&v)d3eR4M5uXoi}w#)1gI*4pl7E{PEpu zm#^QSNxO!_h13WdmPhnLGD`z!bK@K4r=24z|0!uU+8_c)HN60s-OzXhzmuLMh6pxn zjR67x+dw)OO8vH3Iw-Nu>IoxL?_1c4e3&Q!Dve0+%yt$1&Dx%SY|jtx5;Q@E`IYlV zUUoujciu1fX72d<51%~=!nr@f_bIR!X;uiZ{-Z%IRki-_VR0RV#K0-3OpRsf6Iv=_hv9E)|v43FW?T*)5f z@WeW+Bht=i&m4o2DHoAeAp-zl45TOiwLSmetGWqL!|bfiA6t9n$zxBO-u#-AT8Csu zv4Ojjs^Hl{;;jVA?>VG1H^m2N6CnA>_vM>r`qLh!EnBNk4o)y4SYL{vv)!M2Of(x=+n z3feg;&g%ECIvxNIXDrQL*)RQJh3{(;M1kp`P+ydLa*z&tS~ILR%l7E`zsI)ybJ@p!ha9i0p`z zBAfR=^0w1j>l1p=^vyxao~$3_6sjH6vQ217hI_2r!!^|8O}rr!XXTwqOeS}yQshVr&UQu7=XjB z!+p2B5RT}{78jf{=`EKZ4?rGPAhAkzbQi0uh2z?S8Q_u0Aioi4i{|=dI_*Il!AuqO z0zpnh(yk5*izA&nYqoAWdrT(nXwBs!k4k!BpGiWYXl{6-{Rj_w;8D@=a$CzZzkScT z)muALNmp~Yqd^G8s7Z_URJD{Jd;b~kP?Z1J18nOm#yLeSxXG|dFF~Wz(vBqH77evt zU2W2+N^KF65nDO9r!(J~^AYC*hb6YEZ&p*{!>5jfRTxzg^MJI0NQhfEWbfRP8`i46 zVHMlFecis?5AIo4pLUf^ZwEUoBW6kff^bA$*A*i?; zwP8rKT37@(KXaWcnwvB1YuT@xY8Zm{_Y`+^7Eq<=4@>N+e)6r3zFo|6#cHf$|Km2QJL&o!?edet1VNX6J zo{kiq+0vU|J^#1~4O$PuniPAncJ!3?b{EQ>CMqmQP~ST$C0i`Fuw^)Qo+plLFoq?# z9P5m6Q~`$4tG9P!C}4qb?Z#V=Z#rX2tu81TFY4=a0NXF+3(s`!&S__Wy$+69u?xj+ zxotI@pdS|_zB^_VSmQV% z*u19Z^ENKh2f5{Rjq&~7Z-(utv~YqXiSrDu(Sw2PiA-P2e`h8d2e-QDW*&varq ztNMmq>{dlTdt}?gtM=BVTpcdq3d}I0ol9q4l#L(pnY?b|4<1=qQzL{-iwSRg6fR$k+ z#1B?=KfS*=tW|wODAp-$%lTiqb4|vRK}spq6G7MMfL=gK(UU8kzF@)|Uoss-7iqQM z^33*bu;B_c#QYKlfH_U&5^lQ&l>kg0Q&-=VF}}9WNX(Ad`_;e^>-Y3*-=D+KEg22g zZY&v9U*l>Wu6e4K;2lZueZKyQjv+bpQ4l*zU;EpJ4ZC_$3CA#k1}p%|mm}btV2~rP zdGpC)==c)@Qjh|k-`-Qv>NWUBlmp6=<~Apy(O7K(FpsJ8#*S-LB_#m?7GdHvif9Q* z+3upXBSU4~t+P6%-uuL*{8)EMF0Gc5Z;;)-?f83Zo_MKJR?_kC5-XGn!u_5gI z8Votq6A0T2JC5kgmM%Yk##wVl4dI#;JB#Z(N*ng{Kt}x=E1VGmjON;uoY~+ZOp*mb z18rCUGiQ$SLmxGk9D%(~f℞S+fsA2Ma_?&`xfd*%~^l;YpRx3^Aifbi-4fdHwI< ztlo0_+U{IQ#`|%FyXZ#Nk_0Jbnwm0Kzve{yfuRzsuAbQ5tGf$QMk`6<$N&LQW?F+g zI%8v5K)hWmfD`7lGLZ~1L6OH8x~Y)jp%?aHNXrpyRbP!OZd}q@PVphcK{y2azhO8Y zt=wDu_VQ!eS+zBJe_gfj&rj`WNPE?lb^*NzLfwuK-8uiAFP}SgRAy)!CD<=|V0}B3 ziseq@o(Kytv{^7Rg;=xHC^bR=PCRZ@sy4+++XB9dlAK_#Z1LRI&Tad$L_^t;!fqe* z+FA7%Os&%e)u;6q;;*#o( zr!>FU?x;I-_ggRw;Nf*`1%y0I+yWI{vo-ENnB7SrZz@jBip!B?+vc<#zc035JU+= zH^lbOQ2fy==hYt1pgV(0I<-TAfK!Ul@5K$Lw#%vu|fkf*h#5KDN4umFrUwGwmZ zjVTqC1B7;@!Wvn#^4Di~4&C4bu~mJij!wOEUK8>6 zrMr4cU%O|0ZNiE5(vMy7kX{HWy0WD+7mT}d@q{5S|FP=)o;7Xg$p^d2^$A*7Vlk^J zF|)}-EFu-#I068$=#+^D6f6!vRmCr~G4SO5tM_*GmJYZD+@Xqv>Sq^?XsLIV>QhHl z>7fV$YrgKu4h-`Wv_lnpF}`%qhAsQDDX-koF>pO1q2R+#!u{lx^U$APeuQEJ$9FE< zV?EF~&5UMJ0PxKj<1+$KFUGyRt z06`fZSL0r@umyJOr3$GymNqOsao@K5uh;hu>k_m>66=&cy}jqB4{dHpyGk>~cG0yG z(hCSFIJVOOHfYR$}? zJ-V3pBYIIzrP{O#1I)jFY}*i?LnKydkko z$rYpC4dtB>t>Lim5K+n3BU>^bf5qW16dOeB9sB2Hdre!fBSmGWyg+Rbpp|K=^OlUu zRE?ox<}Kwp{F6sj6u@5d-?7?ZMh-0BLrwhLefpAkL;f^#NIOu#}Vt= zN?(7z3&()7YVY`4pWl1uvfT~kCeh(s6XG|d6x3Bv@4xi83604iU;WI0L(sq`CnxLEcB_HPieCnUnWaPf+w-?QxgEpMIMGtb zS4^#a>GV2Ni0$Hs$ls2R$eJ0R`1DwV@fV_{Bq;hvSqYx%u=Fo)=q3#TCDT7Yr%Toi{f=-BtZ>M^}Pvt{>R)?B>pz zq+`O)bMbnC=rsW)#x<88mvV+@O$r0R&mY-}?wlyMw5zZq1ZZE^)g>;RS_f1&3$KKQ z-Pj1Y;M^HSWgLQFCPb;!;KtR4Dd9Y_zU`sqyJ;8}5Zgq_i6fHlJFy7`9dp}a2MWQi z8I%yeUYEUZXJJ^Epba9-a0G4bEd1BK8|spM_Q zKl;app*^KY>|}jc61y6`xcYJg3ex+2yLJ+axxua`NIc;)2 zTXKl1D}F8U)Qpt#$7gn~+1fey&H;xf1SrEJQ}Wt{E$~g{LZf(qi@`9=(xXRr7Jl+V zFCBI6Y47+)H+TK=(XD;=$mFon-HIcrBj>;6>?sSz56k973^;AUF6+5Fh-m#|S>!_hPg^p+>Y~$P|Jz-?cCoh?f z;c3Zb?bk0K-?3%Y4w-O_=4xVLEeHW6edWBCT8C7BW^MLV|1-I94)!5s>m_EecKB7eh}N?7^?tmxI!u8WV|<>I1&S(vmaOx zL2J|C&?_zh?HUs0os%o5fOz(y7dH6c-CO$BU)NxG6o#dc7fsAuIU{sd2NunYg!tCV z-jy9k$yv2dX?Ib7?yu`oj)-QyUlD?O3Tol>mUo>w3B%*TSy2AZqubX!y+tM+Q@xjN zOjQ)rMaMNCKO$+k|27`|2NJC^yz1gv&7&Jk!MDUS76}PMTiPJw{rKUnFANXEK%}Bi zYe~nqM~J!I(S2Z@)qK(1@O0;p52IfRx4GWDdV5#e8*q9l(E+1o6V z0n-jvVZ8H-dFjRsmsC~7ZNaZSg~6Ux{>Z-ORxlOLDR%$Px)rxDJ@@- z>z?jXwmtT+iLLBkde^%B-33pIL2d~Gl;*lj;<}d(*XBjRR_xvW_kQ_gBQ!IppFJ{x z&~^CWSrZU$DABJB2n#`E3@;d8cj-lQdU}hlpt81zv^D^%MFf53cPrTNaF|T%b2cW# z^$VL&)!D!5#6oBF>D|R2tm?(E^-IyrQqcYDJO1y9?Nv@`-vdfXoq7M==S-g4I$WC< zS&ZKDf6IDb*pWy$q@%odMOZ-)bY2}lt@$-4v|vzvGw2F=0)P*`=EQV;2EGm&rBtF1 z%*L=xxsR-C|L#3&?VT~CrwoJ}XuWNA{gUx%9c-J}552Hr4B*n|mv!yQ4_Chw0b=0B zJJzr^gE!8a9 zSFK>0f}nGylV**4{YfLi2XKWB&`-mj#wV|uUpJ!8l>C^&h;G)vJ(iN%v-;z|elC1( zh{ZaqXOB(2aaJuC^Z<=Of&<%rDc@h+^K4sbXsi0HTi%veU%Y!=+7*L;vlOB`@1HSi z#M>5+!|-(P)0#na%kNjLe|T+e#$|16r*PSaY!Wj_TzlyZ2dLUyxvv}m7J^7?p4*yv z+m$C3dP}aLYI+gA)Jn@5@6XTd`O!Z%2tjHXxTign8x}U#rDf1B1^xR!_8#&TU-wkk z(2l_>!ms{)R;j)=xcsdem!;Yl;*R}ufr;oKJgdbH~R_rbS*xdzs zOXrM%CybpsvXm=TE^m#cUI3#tYP?VWe&y<&-OezCF|4yX zwch>sNsU2OU;GG_QBchgp15;M{!g2StY3=tEm!Wz{@|aR`!yf&fjELXa{g;h9e3W0 zCOr(B7g@d4Rn#B(=7Z_(UUnpcI!j1fZCS3!f>D~%-c7GO*xdyV3=7*HdvwOR=B=l3 z$w(k{Q@LzMqA-S_ZXfUb$umkD3Kv@rq1eg&*oh4@S`x~SMd${CpuqLdbQgwn3EItf zuItJcT{-C45qxc$Ym=Y7WCqGzEQV6-PKY1>?5fi;kaVOzS6f>_TY#UC3ZsZTD||)r*|}_y}_-d6x5kl?>~3)jF!}J zY+j_aky8BZ@9Tf_$7Q2xy%IBvAXgi+BMfFDsC=n)Leq_}I1UHx3LR_u4yO&nr7u0- zvn_k1OVFes-{7V@){4s1XkQUT*`l63w*DjMPR1~#KeS;-if7jCzxF#1HzkAu1uNBv zKtuttfD9T^FcdF+7wu0UXBFx-J*us6{Nch7oR)x9gD^u(n9z{X!s~40l4Wk z^XAN-sCo+JB0(UQTm@izZ6Qa_tAFtH&d&UhXVEN$T-2I;=j=KzgiFu{ID}n-_TOu> z|Jr+)OVBK5+TC0F%025d2{}m27&fPx_s^d_@(m}C=Aquah#3S@n&17!``7L2vfG;l z4H1B_hdc|z(t02HQr+l=|9ZP^8GZ;OIRsePvdxUZcR#d*(uu&7ARc5a=k<+YnGl=1 z)D_=*Dp%5ihInTXJMPb(+}K>>sQyVtIrJ$Ata07bT{x^IXu(3Uzir&QFPn7b;0QN{ z9Y@}9*^G)2423XY%l1F|t%v`fmSw#kqqNx+{d=`y!J;=n~E&T5C{>J!T1{IQztc`Sd~AkK8$8a zkN&Z(@S6?ULtTPqmG(0`dVccI=K4N0c~xR})P2LE@k=H*40-xPYnFm;`uWp8|NHt8 zjcKLB-q6;FM6G~9#GDk=(V4&U@)O^4#sp*dAU6+>cb-`+rwRL1yT5hNY0NoSeCIa>f)*pS!sNCAMG6*H-jw z=vD_))yKg?F~0fEwXQgT1r$WRMKy0?!w1irh@ne=aEOT?+`aBI|MT>S+5~f0OHPP7 zH!{i_o=HLNdHtDBz2xlaO-lEjlY^4OY&~yD#!F|n-16>4ChI$PsYV$PWo==76Q#7% znEKJfJKy@N<&ublwe>?LOBXh}ZhR}R0TLw=-Fb7U>!H`OHUoDvY}iK-nZTvzVz%wPHTGd^(HOrwo+ zxLXSx{*DATAn}=troH}^C#X)_SfeWF8ThOAiBiUCO#jd0d#?D&b4s(#+8_4O%O^n4 zjFVat@10YJqB%erumL5+FW2Yp-*tc`Xv}Z~ZR;w2{oV~VN#}r0X=l#A_=M4~I$_jM z)#Mq5VRi(4{*NoK`So*6H6DW_LII$>?F53pj?$GKo%#7MnfsNGE&($g!FCfzv{8j+ z761MA`Ae2eRb2%qN?t{(0x`A`>Wo{Lw_ossXWDYU9HK<4y$aXPZ)mM^l&)H{8cI}4 z2Ef2(RtLF!RyQoYXTz?JT*4WwCJ%ryoJu%1UOHqod6p0m;bT94cImCFnrjor?mq_r zVXN?nUJ!vG9g*!Vw$2&%!<#Nj6UV>^oN05KS=7a#n7?qOO&Tl}eYEQ3f5^5MSL67V#{$$O7OVI2c z|H#(vpFOd&KJ5*z)vQzcwj~o!KIlZ$;GzsmL0vijwcmW~dw<{1Qs)`N(H5y3IH8E^ z3L#~&=zF6YfBJ>X#@D(>K8z#X*2dD$)|B&?Pn|hxY@^NJr{iOq1%`3YN<=8er_8o(+iN0!uZNhr+)moOHUeGqlRP) zk|X?kSo&#rR#Wo!YtE``tkHR22#VB0@T)Rgp_P$I*(2P`ezx+K`?ffO=!gqdG{X_J z^pu7JM$MSvIATku`bvLG(Ck97Up~M8pKIC^Ho82pNTO^}f8r%m$JF*|zIn*wXGy!e7y%}O6~m80$2cW1S!L( zjH&s{HD{%3Q>NgD$@fZsHTF_#0|BQtb=}=tFZub3ec6C&9JWQV&g#Vz(pOB)nDUB} zn8d!?R`q>rMfa+Xie1pGQ`%iJH{HJ#j?kb%79a?so`O1MYSVkqn1CbO=2{t+M9T0d z|FG(+A3Rx7x+WomI3_}m!(t+M4G>5OXw${wTc5q~Rr6b|D|>ijs6MqJ`4)u8IBR0v z9oL+h&LmBtRMr{b3J)dxWel`2PDA>xbv-A1=eaxAv^#?g)$ zFMqDcH$2&an7y%w{@P=^Htfzh3C94&h7S7^0yJ>_Wivf-_}g4-!!|g*d}q(OU;EeB z?poK7avT9=IBE?Z+*Yx@NB~G7piQTtZ(MW!8&4anv>7T)U5Edmz4b&G~O#JWgpo><~r2GL+wi5E*Ars{7lg&unU{ z(bX;$49gz$%ED$1N(b$>?KD}hZ_(t7ZaAXYa zQOGOuT?2!{N*h`0ZOie?|9Ac6zhA$pvnT~wyL<51us&x~LR>e$9;y#9sQf0wke+;M zSK$XMx&cT*|Jd65o0T1ua)Q!GBJK|sQc_pmf7e-)=8Zn&g<{$SZL+%x`s&-(ocWbU z|Fw4C$c!7-I8xM631#&VatlC8kryoppTw9@{^~Hs!vE8@{b5vvM z@oSchNW089$YI$al_2sp|KiD=pSx@Qrae84Nhv{gV<0dDgKdLDuw}x;OonawT|%Iz zt1xP8>Q^gne`t$Sm(Wr$Q3#7TI3i>OFQp@x$>jXj zM(@*$M!sWSbJ`Wm(9DA9fOg#WOSyk%{@gqEl4Hq1h>WUhXpF-~^^~q(+&sI%dF`#6 zrAOLgLTe~RO1r*FC>2FIrJ(k#|HC((_^!p{4yMxInhZ%q1jD#(#ojO6z2V7??HQMB zr#&#p5@SZx1=a2qM9kp>32<9iVZjMwfBybcC)RoD(5om8UWO4C2p0OWAo}Dzo4@+! z7i2;r;b^8%XH;S$dTt}Tf}|t0VlJwQEs0N@-13&WO*Nii+klj4@cYCt1mVKF_xx>h zUM7U*0bs!lt)X=tu?Mq1S0ZCrY5S&C7_L&DuN-3l2%>yRO&?SL*wv?}9pXV_%!b+a zy(2&wzJ2BXuiv-nk+u61gxZAECde0301Kepy{-%kThR|~+Ivf{xnSmZ-!QMnq2X9~ z5*KIqz8Zia7$#--D;G{WaZJs-ezhW(D>*d@70?Sppn_x1L#50NrHzn6)F!s}nh*YM z*B72@d(XVacO2h1I^$YqGKli9usEe9@wbh6q8NqitMrLL)T0fwfe>t>s;4015cg4S zt<7=c>(c{Yn{Z&TW9u&J-#@qehYxRiYGa2(+?qW79Sbg)+Mq&XG~6=0MkFrQ7Ung7_^+FOeBWl_3QD?~sfuz&MkIJActRi& zf`ky-fQuRuC$uJCKcnu7sWnsTgPj^Vj7Krx3hF7DdAIJ|+^vOc3ycS(7tlKR8Gk6< zmtGK{iBiSV!=F5T`lP0k4l;B0YFSk8=`G#0YX9$^+4a!6_TF46?TVBu>|Ks1y=4b% zjR;UhFBt3)8Kv9v>g9_kedns<$7GygB@D>6Aw!KZIK411 zm4Jxog|A$t6G};AV58#&b)UsC1KAC?%Bglu9Ta{e_UC zpiI7~Ew7dWX;*kMaFhn0(|%zg1rhW9Y-vPO=DJtRe($0&($*LcM+cn)$%_LE#ER0o zO6K|pcYN=WU8^kYzZ(VxNyw1p<6Jf-77 zEdTHU|^jw04#vWvp`HY#G7vSC(JM=c*Ipj#50tVHhQ5onIYIpF@gmVN#bll z3 zNksDE!@`OV)_sv?{BBL>EsyS5wIfTCDB+M08YrW|>JOl-F#3lDVik|*-*&(nvp6iQ zsxaY`02!pUtCXv>bHv(02ogZPsB%6}AK&nSbEmv*;piGCSXgy5-Hk!ySb>F==w9&+ z|8ZUSm!8=7-1c68DCtNkv~}+f#*S3$iGdY{wICJ;RSKhQP!uUGwf2;boRLEnB1j@* zxVNZ$ra2QE-*fh)H!WzbbA@3rzc|!#AUU>RVMUoBWN8?G+tT}uXWIU;xkncn2`OC( zB7<R=Wu0Y7(bRZN75B zn9GkJ(VBJuFtZNRs>iGx>#(pA1v%`?tv%{5n|p8F*!$R?Vm_xq1XqwFEMK!Kgsb($ z01*pBQO+=KQPvq10WMP7QQFnY)fKRapkSCwzRCOAfa+=!CroI(*sTmZUwT zHVhiDDgQAg{~oZgQe{~HY|pBHY|q`jHTUqI;`SZ|1rWg@NFgO`^2!8N#s^O?`g2CK zhSHAKp3>5m8O<}A5)^zrYsS&Zd=8cTJHaB7 zzM1sA;^pndhj$kq*KV#Y=a7joT7;S$-X=uYr z!BPi{DAOijHPgtjdj4yKmu7?giYSVUs+L6w@h zqj;NKMuk^FnZA`%9y_fLI_`55Rd>YX{gBdfP(^^Tm{ zlQ;W|roCi(N}SVNH0*0uN`qN4yD%PcN}^U$gD0AkVpPf*Q{#-Q^~TkCV`{yYq^vrG zg#zJ4j#v+&{D;6IF1DV}Zq^m?!NESyY&cknDg@*~Z~%(~gtce?8BmDJe;_RSO0=*o sJXx{?bP&XZ3t1{=hX^A4+y89&e}N<7LZdBaT>t<807*qoM6N<$f*CcXS^xk5 literal 0 HcmV?d00001 diff --git a/routes/baseActionsRouter.js b/routes/baseActionsRouter.js new file mode 100755 index 0000000..fcb16b7 --- /dev/null +++ b/routes/baseActionsRouter.js @@ -0,0 +1,367 @@ +var express = require('express'); +var router = express.Router(); +var util = require('util'); +var moment = require('moment'); +var utils = require('./../app/utils'); +var env = require("./../app/env"); +var bitcoin = require("bitcoin"); +var rpcApi = require("./../app/rpcApi"); + +var fs = require('fs'); +var stream = fs.createWriteStream("proglog.txt"); + + +router.get("/", function(req, res) { + if (!req.session.host) { + if (req.cookies['rpc-host']) { + res.locals.host = req.cookies['rpc-host']; + } + + if (req.cookies['rpc-port']) { + res.locals.port = req.cookies['rpc-port']; + } + + if (req.cookies['rpc-username']) { + res.locals.username = req.cookies['rpc-username']; + } + + res.render("connect"); + res.end(); + + return; + } + + var client = global.client; + + rpcApi.getInfo().then(function(getinfo) { + res.locals.getinfo = getinfo; + + var blockHeights = []; + if (getinfo.blocks) { + for (var i = 0; i < 10; i++) { + blockHeights.push(getinfo.blocks - i); + } + } + + rpcApi.getBlocksByHeight(blockHeights).then(function(latestBlocks) { + res.locals.latestBlocks = latestBlocks; + + res.render("index"); + }); + }).catch(function(err) { + console.log(err); + res.locals.userMessage = "Unable to connect to Vivocoin Node at " + req.session.host + ":" + req.session.port; + res.render("index"); + }); +}); + +router.get("/node-info", function(req, res) { + var client = global.client; + + stream.write("yyyyyyyyyyyyyyyyyyyyyyy\n"); + + rpcApi.getInfo().then(function(getinfo) { + res.locals.getinfo = getinfo; + + rpcApi.getMiningInfo().then(function(getmininginfo) { + res.locals.getmininginfo = getmininginfo; + + console.log(getmininginfo); + stream.write('mininghash:'+ getmininginfo.networkhashps +"\n"); + + + res.render("node-info"); + + }); + }).catch(function(err) { + res.locals.userMessage = "Unable to connect to Vivocoin Node at " + req.session.host + ":" + req.session.port; + console.log(err); + res.render("node-info"); + }); +}); + +router.get("/mempool", function(req, res) { + var client = global.client; + + rpcApi.getMempoolInfo().then(function(getmempoolinfo) { + res.locals.getmempoolinfo = getmempoolinfo; + + rpcApi.getMempoolStats().then(function(mempoolstats) { + res.locals.mempoolstats = mempoolstats; + + res.render("mempool"); + }); + }).catch(function(err) { + res.locals.userMessage = "Unable to connect to Vivocoin Node at " + req.session.host + ":" + req.session.port; + console.log(err); + res.render("mempool"); + }); +}); + +router.post("/connect", function(req, res) { + var host = req.body.host; + var port = req.body.port; + var username = req.body.username; + var password = req.body.password; + + res.cookie('rpc-host', host); + res.cookie('rpc-port', port); + res.cookie('rpc-username', username); + + req.session.host = host; + req.session.port = port; + req.session.username = username; + + var client = new bitcoin.Client({ + host: host, + port: port, + user: username, + pass: password, + timeout: 30000 + }); + + console.log("created client: " + client); + + global.client = client; + + req.session.userMessage = "Connected via RPC: " + username + " @ " + host + ":" + port; + req.session.userMessageType = "success"; + + res.redirect("/"); +}); + +router.get("/blocks", function(req, res) { + var limit = 20; + var offset = 0; + var sort = "desc"; + + if (req.query.limit) { + limit = parseInt(req.query.limit); + } + + if (req.query.offset) { + offset = parseInt(req.query.offset); + } + + if (req.query.sort) { + sort = req.query.sort; + } + + res.locals.limit = limit; + res.locals.offset = offset; + res.locals.sort = sort; + res.locals.paginationBaseUrl = "/blocks"; + + rpcApi.getInfo().then(function(getinfo) { + res.locals.blockCount = getinfo.blocks; + res.locals.blockOffset = offset; + + var blockHeights = []; + if (sort == "desc") { + for (var i = (getinfo.blocks - offset); i > (getinfo.blocks - offset - limit); i--) { + blockHeights.push(i); + } + } else { + for (var i = offset; i < (offset + limit); i++) { + blockHeights.push(i); + } + } + + rpcApi.getBlocksByHeight(blockHeights).then(function(blocks) { + res.locals.blocks = blocks; + + res.render("blocks"); + }); + }).catch(function(err) { + res.locals.userMessage = "Unable to connect to Vivocoin Node at " + req.session.host + ":" + req.session.port; + console.log(err); + res.render("blocks"); + }); +}); + +router.post("/search", function(req, res) { + if (!req.body.query) { + req.session.userMessage = "Enter a block height, block hash, or transaction id."; + + res.redirect("/"); + + return; + } + + var query = req.body.query.toLowerCase(); + + rpcApi.getRawTransaction(query).then(function(tx) { + if (tx) { + res.redirect("/tx/" + query); + + return; + } + }).catch(function(err) { + rpcApi.getBlockByHash(query).then(function(blockByHash) { + if (blockByHash) { + res.redirect("/block/" + query); + + return; + } + }).catch(function(err) { + if (isNaN(query)) { + req.session.userMessage = "No results found for query: " + query; + + res.redirect("/"); + + return; + } + + rpcApi.getBlockByHeight(parseInt(query)).then(function(blockByHeight) { + if (blockByHeight) { + res.redirect("/block-height/" + query); + + return; + } + }).catch(function(err) { + req.session.userMessage = "No results found for query: " + query; + + res.redirect("/"); + }); + }); + }); +}); + +router.get("/block-height/:blockHeight", function(req, res) { + var client = global.client; + + var blockHeight = parseInt(req.params.blockHeight); + + res.locals.blockHeight = blockHeight; + + res.locals.result = {}; + + var limit = 20; + var offset = 0; + + if (req.query.limit) { + limit = parseInt(req.query.limit); + } + + if (req.query.offset) { + offset = parseInt(req.query.offset); + } + + res.locals.limit = limit; + res.locals.offset = offset; + res.locals.paginationBaseUrl = "/block-height/" + blockHeight; + + client.cmd('getblockhash', blockHeight, function(err, result, resHeaders) { + if (err) { + // TODO handle RPC error + return console.log(err); + } + + res.locals.result.getblockhash = result; + + rpcApi.getBlockData(client, result, limit, offset).then(function(result) { + res.locals.result.getblock = result.getblock; + res.locals.result.transactions = result.transactions; + res.locals.result.txInputsByTransaction = result.txInputsByTransaction; + + res.render("block-height"); + }); + }); +}); + +router.get("/block/:blockHash", function(req, res) { + var blockHash = req.params.blockHash; + + res.locals.blockHash = blockHash; + + res.locals.result = {}; + + var limit = 20; + var offset = 0; + + if (req.query.limit) { + limit = parseInt(req.query.limit); + } + + if (req.query.offset) { + offset = parseInt(req.query.offset); + } + + res.locals.limit = limit; + res.locals.offset = offset; + res.locals.paginationBaseUrl = "/block/" + blockHash; + + // TODO handle RPC error + rpcApi.getBlockData(client, blockHash, limit, offset).then(function(result) { + res.locals.result.getblock = result.getblock; + res.locals.result.transactions = result.transactions; + res.locals.result.txInputsByTransaction = result.txInputsByTransaction; + + res.render("block"); + }); +}); + +router.get("/tx/:transactionId", function(req, res) { + var txid = req.params.transactionId; + + var output = -1; + if (req.query.output) { + output = parseInt(req.query.output); + } + + res.locals.txid = txid; + res.locals.output = output; + + res.locals.result = {}; + + // TODO handle RPC error + rpcApi.getRawTransaction(txid).then(function(rawTxResult) { + res.locals.result.getrawtransaction = rawTxResult; + + client.cmd('getblock', rawTxResult.blockhash, function(err3, result3, resHeaders3) { + res.locals.result.getblock = result3; + + var txids = []; + for (var i = 0; i < rawTxResult.vin.length; i++) { + if (!rawTxResult.vin[i].coinbase) { + txids.push(rawTxResult.vin[i].txid); + } + } + + rpcApi.getRawTransactions(txids).then(function(txInputs) { + res.locals.result.txInputs = txInputs; + + res.render("transaction"); + }); + }); + }); +}); + +router.get("/terminal", function(req, res) { + if (!env.debug) { + res.send("Debug mode is off."); + + return; + } + + res.render("terminal"); +}); + +router.post("/terminal", function(req, res) { + if (!env.debug) { + res.send("Debug mode is off."); + + return; + } + + client.cmd(req.body.cmd, function(err, result, resHeaders) { + console.log(result); + console.log(err); + console.log(resHeaders); + + res.send(JSON.stringify(result, null, 4)); + }); +}); + + +module.exports = router; diff --git a/views/block-height.pug b/views/block-height.pug new file mode 100755 index 0000000..bb5c16b --- /dev/null +++ b/views/block-height.pug @@ -0,0 +1,10 @@ +extends layout + +block headContent + title Block #{blockHeight} + +block content + h1(class="h2") Block #{blockHeight} + hr + + include includes/block-content.pug diff --git a/views/block.pug b/views/block.pug new file mode 100755 index 0000000..3eb8760 --- /dev/null +++ b/views/block.pug @@ -0,0 +1,12 @@ +extends layout + +block headContent + title Block #{blockHash} + +block content + h1(class="h2") Block + br + small(class="monospace") #{result.getblock.hash} + hr + + include includes/block-content.pug diff --git a/views/blocks.pug b/views/blocks.pug new file mode 100755 index 0000000..f6ee75c --- /dev/null +++ b/views/blocks.pug @@ -0,0 +1,35 @@ +extends layout + +block content + h1(class="h2") Blocks + hr + + if (blocks) + nav(aria-label="Page navigation") + ul(class="pagination justify-content-center") + li(class="page-item", class=(sort == "asc" ? "active" : false)) + a(class="page-link", href=(sort == "asc" ? "javascript:void(0)" : "/blocks?limit=" + limit + "&offset=0" + "&sort=asc")) + span(aria-hidden="true") Oldest blocks first + li(class="page-item", class=(sort == "desc" ? "active" : false)) + a(class="page-link", href=(sort == "desc" ? "javascript:void(0)" : "/blocks?limit=" + limit + "&offset=0" + "&sort=desc")) + span(aria-hidden="true") Newest blocks first + + include includes/blocks-list.pug + + hr + + if (blockCount > limit) + - var pageNumber = offset / limit + 1; + - var pageCount = Math.floor(blockCount / limit); + - if (pageCount * limit < blockCount) { + - pageCount++; + - } + - var paginationUrlFunction = function(x) { + - return paginationBaseUrl + "?limit=" + limit + "&offset=" + ((x - 1) * limit + "&sort=" + sort); + - } + + hr + + include includes/pagination.pug + else + p No blocks found \ No newline at end of file diff --git a/views/btcprice.pug b/views/btcprice.pug new file mode 100755 index 0000000..f3eb638 --- /dev/null +++ b/views/btcprice.pug @@ -0,0 +1 @@ +td(class="monospace") 0000002 \ No newline at end of file diff --git a/views/connect.pug b/views/connect.pug new file mode 100755 index 0000000..9b262a6 --- /dev/null +++ b/views/connect.pug @@ -0,0 +1,37 @@ +extends layout + +block content + h1 Vivocoin RPC Explorer + hr + + :markdown-it + This tool is intended to be a simple, stateless, self-hosted explorer for the Vivocoin blockchain, driven by RPC calls to your own vivod node. Because it is stateless, it is easy to run but lacks some (many?) of the features of other explorers. + + Start by connecting to your full, archiving smartcashd node. Make sure that the node you'll be connecting to has `txindex=1` set. + + form(method="post", action="/connect") + div(class="card") + div(class="card-body") + h4(class="card-title") RPC Connect + + hr + + div(class="form-group") + label(for="input-host") Host / IP + input(type="text", name="host", class="form-control", value=host) + + div(class="form-group") + label(for="input-host") Port + input(type="text", name="port", class="form-control", value=port) + + div(class="form-group") + label(for="input-host") Username + input(type="text", name="username", class="form-control", value=username) + + div(class="form-group") + label(for="input-host") Password + input(type="password", name="password", class="form-control") + + hr + + input(type="submit", class="btn btn-primary btn-block" value="Connect") diff --git a/views/error.pug b/views/error.pug new file mode 100755 index 0000000..7d34a22 --- /dev/null +++ b/views/error.pug @@ -0,0 +1,14 @@ +extends layout + +block content + h1 Error + hr + + if (message) + p !{message} + else + p Unknown error + + if (error) + h2 #{error.status} + pre #{error.stack} diff --git a/views/includes/block-content.pug b/views/includes/block-content.pug new file mode 100755 index 0000000..d3eacd9 --- /dev/null +++ b/views/includes/block-content.pug @@ -0,0 +1,245 @@ +ul(class='nav nav-tabs mb-3') + li(class="nav-item") + a(data-toggle="tab", href="#tab-summary", class="nav-link active", role="tab") Summary + li(class="nav-item") + a(data-toggle="tab", href="#tab-raw", class="nav-link", role="tab") Raw + +- var txCount = result.getblock.tx.length; + +div(class="tab-content") + div(id="tab-summary", class="tab-pane active", role="tabpanel") + table(class="table") + tr + th(class="table-active properties-header") Block Hash + td(class="monospace") + a(href=("/block/" + result.getblock.hash)) #{result.getblock.hash} + + tr + th(class="table-active properties-header") Previous Block Hash + td(class="monospace") + if (result.getblock.previousblockhash) + a(href=("/block/" + result.getblock.previousblockhash)) #{result.getblock.previousblockhash} + + tr + th(class="table-active properties-header") Next Block Hash + td(class="monospace") + if (result.getblock.nextblockhash) + a(href=("/block/" + result.getblock.nextblockhash)) #{result.getblock.nextblockhash} + else + span None + span(class="text-muted") (latest block) + + tr + th(class="table-active properties-header") Block Height + td(class="monospace") + a(href=("/block-height/" + result.getblock.height)) #{result.getblock.height} + + tr + th(class="table-active properties-header") Timestamp + td(class="monospace") #{moment.utc(new Date(result.getblock.time * 1000)).format("Y-MM-DD HH:mm:ss")} (utc) + + tr + th(class="table-active properties-header") Transaction Count + td(class="monospace") #{result.getblock.tx.length.toLocaleString()} + + tr + th(class="table-active properties-header") Size + td(class="monospace") + span #{result.getblock.size.toLocaleString()} bytes + if (result.getblock.weight) + br + span(class="text-muted") (weight: #{result.getblock.weight.toLocaleString()}) + + tr + th(class="table-active properties-header") Confirmations + td(class="monospace") + if (result.getblock.confirmations < 6) + strong(class="text-warning") #{result.getblock.confirmations} + else + strong(class="text-success") #{result.getblock.confirmations.toLocaleString()} + + tr + - var scales = [ {val:1000000000000000, name:"quadrillion"}, {val:1000000000000, name:"trillion"}, {val:1000000000, name:"billion"}, {val:1000000, name:"million"} ]; + - var scaleDone = false; + th(class="table-active properties-header") Difficulty + td(class="monospace") + span #{result.getblock.difficulty.toLocaleString()} + each item in scales + if (!scaleDone) + - var fraction = Math.floor(result.getblock.difficulty / item.val); + if (fraction >= 1) + - scaleDone = true; + span(class="text-muted") (#{fraction} #{item.name}) + + + tr + th(class="table-active text-right") Version + td(class="monospace") 0x#{result.getblock.versionHex} + span(class="text-muted") (decimal: #{result.getblock.version}) + + tr + th(class="table-active text-right") Nonce + td(class="monospace") #{result.getblock.nonce} + + tr + th(class="table-active text-right") Bits + td(class="monospace") #{result.getblock.bits} + + tr + th(class="table-active text-right") Merkle Root + td(class="monospace") #{result.getblock.merkleroot} + + tr + th(class="table-active text-right") Chainwork + td(class="monospace") #{result.getblock.chainwork} + + hr + h2(class="h4") Transactions (#{txCount.toLocaleString()}) + small - Showing + if (txCount <= limit) + span all + else + span #{(offset + 1)} - #{Math.min(offset + limit, txCount)} + + each tx, txIndex in result.transactions + //pre + // code #{JSON.stringify(tx, null, 4)} + div(class="card mb-3") + div(class="card-header") + if (tx && tx.txid) + a(href=("/tx/" + tx.txid), class="monospace") #{tx.txid} + else if (result.getblock.height == 0) + a(href=(""), class="monospace") #{result.getblock.tx} + div(class="card-body") + //pre + // code #{JSON.stringify(result.txInputsByTransaction[tx.txid], null, 4)} + if (tx && tx.txid) + div(class="row") + div(class="col-md-6") + h6 Input (#{tx.vin.length.toLocaleString()}) + if (result.txInputsByTransaction[tx.txid]) + - var totalInputValue = new Decimal(0); + table(class="table mb-0") + thead + tr + th(style="width: 40px;") + th Input + th Amount + tbody + + if (tx.vin[0].coinbase) + - totalInputValue = totalInputValue.plus(new Decimal(utils.getBlockReward(result.getblock.height))); + tr + th 1 + td + span(class="tag monospace") coinbase + span(class="monospace") Newly minted VIVO + td(class="monospace") Σ #{utils.getBlockReward(result.getblock.height)} + + each txInput, txInputIndex in result.txInputsByTransaction[tx.txid] + if (txInput) + - var vout = txInput.vout[tx.vin[txInputIndex].vout]; + + tr + th #{(txInputIndex + 1)} + //pre + // code #{JSON.stringify(txInput)} + + td + if (vout.scriptPubKey && vout.scriptPubKey.addresses) + span(class="monospace") #{vout.scriptPubKey.addresses[0]} + br + span(class="monospace text-muted") via tx + a(href=("/tx/" + txInput.txid + "#output-" + tx.vin[txInputIndex].vout), class="monospace") #{txInput.txid.substring(0, 14)}..., Output ##{tx.vin[txInputIndex].vout + 1} + td + if (vout.value) + - totalInputValue = totalInputValue.plus(new Decimal(vout.value)); + span(class="monospace") Σ #{vout.value} + + - var coinbaseCount = tx.vin[0].coinbase ? 1 : 0; + if ((tx.vin.length - coinbaseCount) > result.txInputsByTransaction[tx.txid].length) + tr + td + td + //span(class="monospace text-muted") #{(tx.vin.length - result.txInputsByTransaction[tx.txid].length).toLocaleString()} : click on transaction id for all ... + + //span(class="monospace text-muted") a(href=("/tx/" + tx.txid), click on transaction id for all ....)} + //a(href=""/tx/" + #{tx.txid}", class="nav-link") more ... #{tx.txid} + //a(href=("/tx/" + tx.txid), class="monospace") #{tx.txid} + + span(class="monospace text-muted") #{(tx.vin.length - result.txInputsByTransaction[tx.txid].length).toLocaleString()}: + + //a(href=("/tx/" + tx.txid), class="monospace") + + a(href=("/tx/" + tx.txid), class="monospace") more .. + + td + else + tr + td + td + td + strong(class="monospace") Σ #{totalInputValue} + + + div(class="col-md-6") + h6 Output (#{tx.vout.length.toLocaleString()}) + - var totalOutputValue = new Decimal(0); + table(class="table mb-0") + thead + tr + th + th Output + th Amount + + tbody + each vout, voutIndex in tx.vout + tr + th #{(voutIndex + 1)} + td + if (vout.scriptPubKey) + if (vout.scriptPubKey.addresses) + a(id="output-" + voutIndex) + span(class="monospace") #{vout.scriptPubKey.addresses[0]} + + else if (vout.scriptPubKey.hex && vout.scriptPubKey.hex.startsWith('6a24aa21a9ed')) + span(class="monospace") Segregated Witness committment - + a(href="https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki#commitment-structure") docs + i(class="fa fa-external-link") + else if (vout.scriptPubKey.asm && vout.scriptPubKey.asm.startsWith('OP_RETURN ')) + span(class="monospace") OP_RETURN: + span(class="monospace text-muted") #{utils.hex2ascii(vout.scriptPubKey.asm.substring("OP_RETURN ".length))} + td + span(class="monospace") Σ #{vout.value} + - totalOutputValue = totalOutputValue.plus(vout.value); + + tr + td + td + td + strong(class="monospace") Σ #{totalOutputValue} + else if (result.getblock.height == 0) + table(class="table mb-0") + thead + tr + th(style="text-align: center;") Genesis + //pre + // code #{JSON.stringify(tx, null, 4)} + + if (txCount > limit) + - var pageNumber = offset / limit + 1; + - var pageCount = Math.floor(txCount / limit); + - if (pageCount * limit < txCount) { + - pageCount++; + - } + - var paginationUrlFunction = function(x) { + - return paginationBaseUrl + "?limit=" + limit + "&offset=" + ((x - 1) * limit); + - } + + hr + + include ./pagination.pug + + div(id="tab-raw", class="tab-pane", role="tabpanel") + pre + code #{JSON.stringify(result.getblock, null, 4)} diff --git a/views/includes/blocks-list.pug b/views/includes/blocks-list.pug new file mode 100755 index 0000000..f4fd8a0 --- /dev/null +++ b/views/includes/blocks-list.pug @@ -0,0 +1,22 @@ +table(class="table table-striped") + thead + tr + th + th(class="data-header") Height + th(class="data-header") Timestamp (utc) + th(class="data-header") Age (seconds) + th(class="data-header") Transactions + //th(class="data-header") Size (bytes) + tbody + each block, blockIndex in blocks + if (block) + tr + th #{(blockIndex + blockOffset + 1).toLocaleString()} + td(class="data-cell monospace") + a(href=("/block-height/" + block.height)) #{block.height} + td(class="data-cell monospace") #{moment.utc(new Date(parseInt(block.time) * 1000)).format("Y-MM-DD HH:mm:ss")} + + - var timeAgo = moment.duration(moment.utc(new Date()).diff(moment.utc(new Date(parseInt(block.time) * 1000)))); + td(class="data-cell monospace") #{timeAgo.format()} + td(class="data-cell monospace") #{block.tx.length.toLocaleString()} + //td(class="data-cell monospace") #{block.size.toLocaleString()} \ No newline at end of file diff --git a/views/includes/pagination.pug b/views/includes/pagination.pug new file mode 100755 index 0000000..4f216a8 --- /dev/null +++ b/views/includes/pagination.pug @@ -0,0 +1,26 @@ +- var pageNumbers = []; +- for (var x = 1; x <= pageCount; x++) { + - pageNumbers.push(x); +- } + +nav(aria-label="Page navigation") + ul(class="pagination pagination-lg justify-content-center") + li(class="page-item", class=(pageNumber == 1 ? "disabled" : false)) + a(class="page-link", href=(pageNumber == 1 ? "javascript:void(0)" : paginationUrlFunction(pageNumber - 1)), aria-label="Previous") + span(aria-hidden="true") « + each x, xIndex in pageNumbers + if (x >= (pageNumber - 4) && x <= (pageNumber + 4) || xIndex == 0 || xIndex == (pageNumbers.length - 1)) + li(class="page-item", class=(x == pageNumber ? "active" : false)) + a(class="page-link", href=(paginationUrlFunction(x))) #{x} + + if (x == 1 && pageNumber > 6) + li(class="page-item disabled") + a(class="page-link", href="javascript:void(0)") ... + + else if (x == (pageCount - 1) && pageNumber < (pageCount - 5)) + li(class="page-item disabled") + a(class="page-link", href="javascript:void(0)") ... + + li(class="page-item", class=(pageNumber == pageCount ? "disabled" : false)) + a(class="page-link", href=(pageNumber == pageCount ? "javascript:void(0)" : paginationUrlFunction(pageNumber + 1)), aria-label="Next") + span(aria-hidden="true") » \ No newline at end of file diff --git a/views/index.pug b/views/index.pug new file mode 100755 index 0000000..5285607 --- /dev/null +++ b/views/index.pug @@ -0,0 +1,31 @@ +extends layout + +block headContent + title Home + +block content + h1 Vivocoin Quick Explorer + hr + + :markdown-it + **Vivocoin Explorer 3** is an explorer with fast setup time. The Larger Explorers are at [http://explorer7.vivocoin.net](http://explorer7.vivocoin.net) and [http://explorer6.vivocoin.net](http://explorer6.vivocoin.net) + + + if (latestBlocks) + h3 Latest Blocks + + - var blocks = latestBlocks; + - var blockOffset = 0; + + include includes/blocks-list.pug + + hr + a(href="/blocks", class="btn btn-primary btn-block") See more + + hr + + div(class="text-center") + :markdown-it + More information available on Website: [http://vivocoin.net](http://vivocoin.net) + + [© 2021 Vivocoin](http://vivocoin.net/) diff --git a/views/layout.pug b/views/layout.pug new file mode 100755 index 0000000..b6f4c62 --- /dev/null +++ b/views/layout.pug @@ -0,0 +1,74 @@ +doctype html +html + head + meta(charset="utf-8") + meta(name="viewport", content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0, shrink-to-fit=no") + + link(rel="stylesheet", href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css", integrity="sha384-PsH8R72JQ3SOdhVi3uxftmaW6Vc51MKb0q5P2rRUpPvrszuE4W1povHYgTpBfshb", crossorigin="anonymous") + link(rel="stylesheet", href="https://netdna.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css") + link(rel="stylesheet", href="https://fonts.googleapis.com/css?family=Lato|Open+Sans|Cousine") + link(rel="stylesheet", href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/default.min.css") + link(rel='stylesheet', href='/css/styling.css') + + link(rel="icon", type="image/png", sizes="32x32", href="/img/favicons/favicon-32x32.png") + link(rel="icon", type="image/png", sizes="96x96", href="/img/favicons/favicon-96x96.png") + link(rel="icon", type="image/png", sizes="16x16", href="/img/favicons/favicon-16x16.png") + + block headContent + title Vivocoin Explorer + + body + nav(class="navbar navbar-expand-lg navbar-light bg-dark mb-4") + div(class="container") + a(class="navbar-brand", href="/") + span + img(src="/img/logo/logo-64.png", class="header-image") + span Vivocoin Explorer + + button(type="button", class="navbar-toggler navbar-toggler-right", data-toggle="collapse", data-target="#navbarNav") + span(class="navbar-toggler-icon") + + div(class="collapse navbar-collapse", id="navbarNav") + if (client) + ul(class="navbar-nav mr-auto") + if (debug) + li(class="nav-item") + a(href="/terminal", class="nav-link") RPC Terminal + li(class="nav-item") + a(href="/node-info", class="nav-link") Node Info + li(class="nav-item") + a(href="/mempool", class="nav-link") Mempool Info + form(method="post", action="/search", class="form-inline") + div(class="input-group") + input(type="text", class="form-control form-control-sm", name="query", placeholder="block height, block hash, txid", style="width: 250px;") + span(class="input-group-btn") + input(type="submit", class="btn btn-primary", value="Search") + + div(class="container") + if (userMessage) + div(class="alert", class=(userMessageType ? ("alert-" + userMessageType) : "alert-info"), role="alert") + span !{userMessage} + + block content + + div(style="margin-bottom: 30px;") + + script(src="https://code.jquery.com/jquery-3.2.1.min.js", integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=", crossorigin="anonymous") + script(src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.3/umd/popper.min.js", integrity="sha384-vFJXuSJphROIrBnz7yo7oB41mKfc8JzQZiCq4NCceLEaO4IHwicKwpJf9c9IpFgh", crossorigin="anonymous") + script(src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js", integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb", crossorigin="anonymous") + script(src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js", integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1", crossorigin="anonymous") + + script(src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js") + + script(src="https://cdn.ravenjs.com/3.9.1/raven.min.js") + script. + Raven.config('https://0bf20e8357a748cab8aa9d35c0f790dd@sentry.io/130800').install(); + + $(document).ready(function() { + $('[data-toggle="tooltip"]').tooltip(); + $('[data-toggle="popover"]').popover({html:true}); + }); + + hljs.initHighlightingOnLoad(); + + block endOfBody diff --git a/views/mempool.pug b/views/mempool.pug new file mode 100755 index 0000000..1e82b28 --- /dev/null +++ b/views/mempool.pug @@ -0,0 +1,75 @@ +extends layout + +block headContent + title Mempool Info + +block content + h1 Mempool Info + hr + + if (getmempoolinfo) + p Data from RPC command + a(href="https://bitcoin.org/en/developer-reference#getmempoolinfo") getmempoolinfo + + table(class="table") + tr + th(class="table-active properties-header") Transaction Count + td #{getmempoolinfo.size.toLocaleString()} + tr + - var scales = [ {val:1000000000, name:"GB"}, {val:1000000, name:"MB"}, {val:1000, name:"kB"} ]; + - var scaleDone = false; + th(class="table-active properties-header") Tx Size + td(class="monospace") + span #{getmempoolinfo.bytes.toLocaleString()} bytes + each item in scales + if (!scaleDone) + - var fraction = Math.floor(getmempoolinfo.bytes / item.val); + if (fraction >= 1) + - scaleDone = true; + span(class="text-muted") (#{fraction} #{item.name}) + tr + - var scales = [ {val:1000000000, name:"GB"}, {val:1000000, name:"MB"}, {val:1000, name:"kB"} ]; + - var scaleDone = false; + th(class="table-active properties-header") Total Size + td(class="monospace") + span #{getmempoolinfo.usage.toLocaleString()} bytes + each item in scales + if (!scaleDone) + - var fraction = Math.floor(getmempoolinfo.usage / item.val); + if (fraction >= 1) + - scaleDone = true; + span(class="text-muted") (#{fraction} #{item.name}) + tr + th(class="table-active properties-header") Max Size + td(class="monospace") #{getmempoolinfo.maxmempool.toLocaleString()} + tr + th(class="table-active properties-header") Min Fee + td(class="monospace") #{getmempoolinfo.mempoolminfee.toLocaleString()} + tr + th(class="table-active properties-header") Total Fees + td(class="monospace") #{mempoolstats.totalFee.toLocaleString()} + + + h4 Transaction count by fee level + hr + + if (false) + #{JSON.stringify(mempoolstats)} + + - var feeBucketLabels = [ "0 - 5 sat/B", "6 - 10 sat/B", "11 - 25 sat/B", "26 - 50 sat/B", "51 - 75 sat/B", "76 - 100 sat/B", "101 - 150 sat/B", "151+ sat/B" ]; + - var feeBucketTxCounts = [ mempoolstats.fee_0_5, mempoolstats.fee_6_10, mempoolstats.fee_11_25, mempoolstats.fee_26_50, mempoolstats.fee_51_75, mempoolstats.fee_76_100, mempoolstats.fee_101_150, mempoolstats.fee_151_max ]; + - var bgColors = [ "bg-primary", "bg-success", "bg-info", "bg-warning", "bg-danger", "bg-primary progress-bar-striped", "bg-success progress-bar-striped", "bg-info progress-bar-striped" ]; + + table(class="table") + each feeBucketLabel, index in feeBucketLabels + tr + th(class=("properties-header " + bgColors[index])) #{feeBucketLabel} + td(class="monospace") #{feeBucketTxCounts[index].toLocaleString()} + + div(class="progress") + each txCount, index in feeBucketTxCounts + - var percent = 100 * txCount / getmempoolinfo.size; + + div(class=("progress-bar " + bgColors[index]), role="progressbar", style=("width: " + percent + "%;"), aria-valuenow=percent, aria-valuemin="0", aria-valuemax="100") + span #{txCount} + diff --git a/views/node-info.pug b/views/node-info.pug new file mode 100755 index 0000000..f99ec17 --- /dev/null +++ b/views/node-info.pug @@ -0,0 +1,75 @@ +extends layout + +block headContent + title Node Info + +block content + h1 Node Info + hr + + if (getinfo) + //p Data from RPC command + // a(href="https://bitcoin.org/en/developer-reference#getinfo") getinfo + + if (false) + pre + code #{JSON.stringify(getinfo, null, 4)} + + if (true) + table(class="table") + tr + th(class="table-active properties-header") BTC Price + include btcprice + tr + th(class="table-active properties-header") Hash amount + td(class="monospace") #{getmininginfo.networkhashps.toLocaleString()} + tr + th(class="table-active properties-header") Block Count + td(class="monospace") #{getinfo.blocks} + tr + th(class="table-active properties-header") Version + td(class="monospace") #{getinfo.version} + tr + th(class="table-active properties-header") Protocol Version + td(class="monospace") #{getinfo.protocolversion} + tr + th(class="table-active properties-header") Connections + td(class="monospace") #{getinfo.connections.toLocaleString()} + tr + th(class="table-active properties-header") Testnet? + td(class="monospace") #{getinfo.testnet} + tr + th(class="table-active properties-header") Errors + td(class="monospace") #{getinfo.errors} + + + //tr + // th(class="table-active properties-header") Hash Amount + // td(class="monospace") #{getmininginfo.networkhashps} + + tr + - var scales = [ {val:1000000000000000, name:"quadrillion"}, {val:1000000000000, name:"trillion"}, {val:1000000000, name:"billion"}, {val:1000000, name:"million"} ]; + - var scaleDone = false; + th(class="table-active properties-header") Difficulty + td(class="monospace") + span #{getinfo.difficulty.toLocaleString()} + each item in scales + if (!scaleDone) + - var fraction = Math.floor(getinfo.difficulty / item.val); + if (fraction >= 1) + - scaleDone = true; + span(class="text-muted") (#{fraction} #{item.name}) + //tr + // th(class="table-active properties-header") Nodes + // td + // a(href="https://smartcash.bitcoiner.me/smartnodes/worldmap/") + // img(src="https://smartcash.bitcoiner.me/smartnodes/worldmap/map.php") + + //if (getmininginfo) + // table(class="table") + // tr + // th(class="table-active properties-header") Hash Amount + // td(class="monospace") #{getmininginfo.networkhashps} + tr + th(class="table-active properties-header") Version + td(class="monospace") #{getinfo.version} diff --git a/views/terminal.pug b/views/terminal.pug new file mode 100755 index 0000000..d5762f0 --- /dev/null +++ b/views/terminal.pug @@ -0,0 +1,54 @@ +extends layout + +block content + h1 Terminal + hr + + :markdown-it + Use this interactive terminal to send RPC commands to your node. Results will be shown inline. + + div(class="card mb-3") + div(class="card-body") + form(id="terminal-form") + div(class="form-group") + label(for="input-cmd") Command + input(type="text", id="input-cmd", name="cmd", class="form-control") + + input(type="submit", class="btn btn-primary btn-block", value="Send") + + hr + + div(id="terminal-output") + +block endOfBody + script. + $(document).ready(function() { + $("#terminal-form").submit(function(e) { + e.preventDefault(); + + var cmd = $("#input-cmd").val() + + var postData = {}; + postData.cmd = cmd; + + $.post( + "/terminal", + postData, + function(response, textStatus, jqXHR) { + var t = new Date().getTime(); + + $("#terminal-output").prepend("

" + cmd + "
" + response + "
"); + console.log(response); + + $("#output-" + t + " pre code").each(function(i, block) { + hljs.highlightBlock(block); + }); + + return false; + }) + .done(function(data) { + }); + + return false; + }); + }); \ No newline at end of file diff --git a/views/transaction.pug b/views/transaction.pug new file mode 100755 index 0000000..0535de0 --- /dev/null +++ b/views/transaction.pug @@ -0,0 +1,267 @@ +extends layout + +block headContent + title Transaction #{txid} + style. + .field { + word-wrap: break-word; + } + + +block content + h1(class="h2") Transaction + br + small(class="monospace") #{txid} + hr + + ul(class='nav nav-tabs mb-3') + li(class="nav-item") + a(data-toggle="tab", href="#tab-summary", class="nav-link active", role="tab") Summary + li(class="nav-item") + a(data-toggle="tab", href="#tab-scripts", class="nav-link", role="tab") Scripts + li(class="nav-item") + a(data-toggle="tab", href="#tab-raw", class="nav-link", role="tab") Raw + + - DecimalRounded = Decimal.clone({ precision: 4, rounding: 2 }) + + - var totalInputValue = new Decimal(0); + if (result.getrawtransaction.vin[0].coinbase) + - totalInputValue = totalInputValue.plus(new Decimal(utils.getBlockReward(result.getblock.height))); + each txInput, txInputIndex in result.txInputs + if (txInput) + - var vout = txInput.vout[result.getrawtransaction.vin[txInputIndex].vout]; + if (vout.value) + - totalInputValue = totalInputValue.plus(new Decimal(vout.value)); + + - var totalOutputValue = new Decimal(0); + each vout, voutIndex in result.getrawtransaction.vout + - totalOutputValue = totalOutputValue.plus(new Decimal(vout.value)); + + div(class="tab-content") + div(id="tab-summary", class="tab-pane active", role="tabpanel") + if (txid == "00000f6be3e151f9082a2b82c2916192a791090015b80979934a45d625460d62") + div(class="alert alert-warning", style="padding-bottom: 0;") + h4(class="alert-heading h5") This transaction doesn't really exist! + :markdown-it + This is the coinbase transaction of the [Vivocoin Genesis Block](/block/00000f6be3e151f9082a2b82c2916192a791090015b80979934a45d625460d62). For more background about this special-case transaction, you can read [this brief discussion](https://github.com/bitcoin/bitcoin/issues/3303) among some of the [Vivocoin Core](https://bitcoin.org) developers. + + table(class="table") + tr + th(class="table-active properties-header") Included in Block + td(class="monospace") + if (result.getblock) + a(href=("/block/" + result.getrawtransaction.blockhash)) #{result.getrawtransaction.blockhash} + if (result.getblock.height) + span(class="text-muted") (#{result.getblock.height.toLocaleString()}) + else + span N/A + span(class="text-muted") (unconfirmed) + + tr + th(class="table-active properties-header") Timestamp + if (result.getrawtransaction.time) + td(class="monospace") #{moment.utc(new Date(result.getrawtransaction["time"] * 1000)).format("Y-MM-DD HH:mm:ss")} (utc) + else + td(class="monospace") N/A + span(class="text-muted") (unconfirmed) + + //tr + // th(class="table-active properties-header") Transaction ID + // td #{txid} + + tr + th(class="table-active properties-header") Version + td(class="monospace") #{result.getrawtransaction.version} + + if (result.getrawtransaction.locktime > 0) + tr + th(class="table-active properties-header") + span Locktime + td(class="monospace") + if (result.getrawtransaction.locktime < 500000000) + span Spendable in block + a(href=("/block-height/" + result.getrawtransaction.locktime)) #{result.getrawtransaction.locktime} + span or later - ( + a(href="https://bitcoin.org/en/developer-guide#locktime-and-sequence-number", title="Locktime documentation") + span docs + i(class="fa fa-external-link") + span ) + else + span Spendable after #{moment.utc(new Date(result.getrawtransaction.locktime * 1000)).format("Y-MM-DD HH:mm:ss")} (utc) - ( + a(href="https://bitcoin.org/en/developer-guide#locktime-and-sequence-number", title="Locktime documentation") + span docs + i(class="fa fa-external-link") + span ) + + tr + th(class="table-active properties-header") Confirmations + td(class="monospace") + if (!result.getrawtransaction.confirmations || result.getrawtransaction.confirmations == 0) + strong(class="text-danger") 0 (unconfirmed) + else if (result.getrawtransaction.confirmations < 6) + strong(class="text-warning") #{result.getrawtransaction.confirmations} + else + strong(class="text-success") #{result.getrawtransaction.confirmations.toLocaleString()} + + if (result.getrawtransaction.vin[0].coinbase) + tr + th(class="table-active properties-header") Total Network Fees + //td(class="monospace") Σ #{new Decimal(totalOutputValue).minus(totalInputValue)} + td(class="monospace") Σ #{(totalOutputValue - totalInputValue)} + else + tr + th(class="table-active properties-header") Network Fee Paid + td(class="monospace") + strong #{new Decimal(totalInputValue).minus(totalOutputValue)} + //span(class="text-muted") (#{totalInputValue} - #{totalOutputValue}) + //br + //span ~#{new DecimalRounded(totalInputValue).minus(totalOutputValue).dividedBy(result.getrawtransaction.size).times(100000000)} sat/B + + if (result.getrawtransaction.vin[0].coinbase) + div(class="card mb-3") + div(class="card-header") + h2(class="h5 mb-0") Coinbase + div(class="card-body") + h6 Hex + div(style="background-color: #fafafa; padding: 5px 10px;", class="mb-3") + span(class="monospace word-wrap") #{result.getrawtransaction.vin[0].coinbase} + + h6 Decoded + div(style="background-color: #fafafa; padding: 5px 10px;", class="mb-3") + span(class="monospace word-wrap") #{utils.hex2ascii(result.getrawtransaction.vin[0].coinbase)} + + div(class="card mb-3") + div(class="card-header") + div(class="row") + div(class="col-md-6") + h2(class="h5 mb-0") Input (#{result.getrawtransaction.vin.length.toLocaleString()}) + div(class="col-md-6") + h2(class="h5 mb-0") Output (#{result.getrawtransaction.vout.length.toLocaleString()}) + div(class="card-body") + div(class="row") + div(class="col-md-6") + if (result.txInputs) + table(class="table mb-0") + thead + tr + th(style="width: 40px;") + th Input + th Amount + tbody + + if (result.getrawtransaction.vin[0].coinbase) + tr + th 1 + td + span(class="tag monospace") coinbase + span(class="monospace") Newly minted VIVO + td(class="monospace") Σ #{utils.getBlockReward(result.getblock.height)} + + each txInput, txInputIndex in result.txInputs + if (txInput) + - var vout = txInput.vout[result.getrawtransaction.vin[txInputIndex].vout]; + + tr + th #{(txInputIndex + 1)} + //pre + // code #{JSON.stringify(txInput)} + + td + if (vout.scriptPubKey && vout.scriptPubKey.addresses) + span(class="monospace") #{vout.scriptPubKey.addresses[0]} + br + span(class="monospace text-muted") via tx + a(href=("/tx/" + txInput.txid + "#output-" + result.getrawtransaction.vin[txInputIndex].vout), class="monospace") #{txInput.txid.substring(0, 14)}..., Output ##{result.getrawtransaction.vin[txInputIndex].vout + 1} + td + if (vout.value) + span(class="monospace") Σ #{vout.value} + + tr + td + td + td + strong(class="monospace") Σ #{totalInputValue} + + + div(class="col-md-6") + table(class="table mb-0") + thead + tr + th + th Output + th Amount + + tbody + each vout, voutIndex in result.getrawtransaction.vout + tr + th #{(voutIndex + 1)} + td + if (vout.scriptPubKey) + if (vout.scriptPubKey.addresses) + a(id="output-" + voutIndex) + span(class="monospace") #{vout.scriptPubKey.addresses[0]} + + else if (vout.scriptPubKey.hex && vout.scriptPubKey.hex.startsWith('6a24aa21a9ed')) + span(class="monospace") Segregated Witness committment - + a(href="https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki#commitment-structure") docs + i(class="fa fa-external-link") + else if (vout.scriptPubKey.asm && vout.scriptPubKey.asm.startsWith('OP_RETURN ')) + span(class="monospace") OP_RETURN: + span(class="monospace text-muted") #{utils.hex2ascii(vout.scriptPubKey.asm.substring("OP_RETURN ".length))} + td + span(class="monospace") Σ #{vout.value} + + tr + td + td + td + strong(class="monospace") Σ #{totalOutputValue} + + div(id="tab-scripts", class="tab-pane", role="tabpanel") + h3 Input Scripts + table(class="table table-striped") + thead + tr + th(style="width: 50px;") + th Script Sig (asm) + tbody + each vin, vinIndex in result.getrawtransaction.vin + tr + th #{vinIndex + 1} + td + if (vin.scriptSig && vin.scriptSig.asm) + span(class="word-wrap monospace") #{vin.scriptSig.asm} + + else if (vin.coinbase) + div(style="line-height: 1.75em;") + span(class="tag") coinbase + br + span(class="word-wrap monospace") #{vin.coinbase} + br + span(class="word-wrap monospace text-muted") (decoded) #{utils.hex2ascii(vin.coinbase)} + + h3 Output Scripts + table(class="table table-striped") + thead + tr + th(style="width: 50px;") + th Script Pub Key (asm) + tbody + each vout, voutIndex in result.getrawtransaction.vout + tr + th #{voutIndex + 1} + td + if (vout.scriptPubKey && vout.scriptPubKey.asm) + span(class="word-wrap monospace") #{vout.scriptPubKey.asm} + if (vout.scriptPubKey.asm.startsWith("OP_RETURN")) + br + span(class="word-wrap monospace text-muted") (decoded) #{utils.hex2ascii(vout.scriptPubKey.asm)} + + div(id="tab-raw", class="tab-pane", role="tabpanel") + div(class="highlight") + pre + code(class="language-json", data-lang="json") #{JSON.stringify(result.getrawtransaction, null, 4)} + + //pre #{JSON.stringify(result.txInputs, null, 4)} + +