From 5fba58c8739c5b2bd2f7008acde95a1b9efbf027 Mon Sep 17 00:00:00 2001 From: Ramon Lapenta Date: Fri, 6 Nov 2015 15:51:48 +0000 Subject: [PATCH] Added a new functions file with some basic functions to start Fixed a bug on desktop nested columns --- Gulpfile.js | 36 +---------- bower.json | 2 +- css/ie.css | 14 ++++- css/style.css | 119 ++++++++++++++++++++++++++--------- index.html | 76 ++++++++++++++++++++++ package.json | 13 +--- scss/_functions.scss | 95 ++++++++++++++++++++++++++++ scss/_version.scss | 2 +- scss/components/_body.scss | 11 ++++ scss/components/_sample.scss | 45 +++++++++++++ scss/l/_base.scss | 8 +-- scss/l/_xl.scss | 2 +- scss/style.scss | 1 + 13 files changed, 340 insertions(+), 84 deletions(-) create mode 100644 scss/_functions.scss diff --git a/Gulpfile.js b/Gulpfile.js index e33d189..2d344a0 100644 --- a/Gulpfile.js +++ b/Gulpfile.js @@ -2,23 +2,19 @@ var gulp = require('gulp'), sourcemaps = require('gulp-sourcemaps'), sass = require('gulp-sass'), minify = require('gulp-minify-css'), - concat = require('gulp-concat'), - uglify = require('gulp-uglify'), watch = require('gulp-watch'); // Modify these variables according to your project var config = { scssDir: './scss', - jsDir: './js', cssDir: './css' }; -gulp.task('default', ['style', 'js']); +gulp.task('default', ['style']); // Compile Sass files gulp.task('style', function() { gulp.src(config.scssDir + '/*.scss') - .pipe(sourcemaps.init()) .pipe(sass()) .pipe(minify()) .pipe(gulp.dest(config.cssDir)); @@ -32,43 +28,15 @@ gulp.task('style-dev', function() { }); -// Concatenate JS files -gulp.task('js', function() { - return gulp.src(config.jsDir + '/src/*.js') - .pipe(concat('scripts.js')) - .pipe(gulp.dest(config.jsDir)); -}); - - -// Compress JS file -gulp.task('compress', function() { - return gulp.src(config.jsDir + '/scripts.js') - .pipe(uglify()) - .pipe(gulp.dest(config.jsDir + '/min')); -}); -gulp.task('compress-dev', function() { - return gulp.src(config.jsDir + '/scripts.js') - .pipe(gulp.dest(config.jsDir + '/min')); -}); // Production gulp.task('build', function() { gulp.start('style'); - gulp.start('compress'); }); // Watch for changes gulp.task('watch', function() { - watch(config.scssDir + '/**/*.scss', function () { + watch(config.scssDir + '/**/*.scss', function() { gulp.start('style-dev'); }); - - watch(config.jsDir + '/src/*.js', function () { - gulp.start('js'); - }); - - watch(config.jsDir + '/scripts.js', function () { - gulp.start('compress-dev'); - }); - }); \ No newline at end of file diff --git a/bower.json b/bower.json index feac854..bc18554 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "hoisin.scss", - "version": "0.9.11", + "version": "0.9.12", "description": "A simple responsive mini framework to kick start your project.", "main": ["scss/styles.scss", "scss/responsive.scss"], "keywords": [ diff --git a/css/ie.css b/css/ie.css index b3087c8..a66de3e 100644 --- a/css/ie.css +++ b/css/ie.css @@ -1,4 +1,13 @@ -article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +nav, +section { display: block; } .container { @@ -143,5 +152,4 @@ article, aside, details, figcaption, figure, footer, header, hgroup, nav, sectio float: none; margin: 0 auto; } - -/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImllLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsQUFBUyxBQUFPLEFBQVMsQUFBWSxBQUFRLEFBQVEsQUFBUSxBQUFRLEFBQUs7RUFVdEUsQUFBUzs7QUFLYjtFQUNJLEFBQVE7RUFDUixBQUFPOztBQUlYO0VBQ1EsQUFBTztFQUNQLEFBQVE7RUFDUixBQUFROztBQUhoQjtFQUNRLEFBQU87RUFDUCxBQUFRO0VBQ1IsQUFBUTs7QUFIaEI7RUFDUSxBQUFPO0VBQ1AsQUFBUTtFQUNSLEFBQVE7O0FBSGhCO0VBQ1EsQUFBTztFQUNQLEFBQVE7RUFDUixBQUFROztBQUhoQjtFQUNRLEFBQU87RUFDUCxBQUFRO0VBQ1IsQUFBUTs7QUFIaEI7RUFDUSxBQUFPO0VBQ1AsQUFBUTtFQUNSLEFBQVE7O0FBSGhCO0VBQ1EsQUFBTztFQUNQLEFBQVE7RUFDUixBQUFROztBQUhoQjtFQUNRLEFBQU87RUFDUCxBQUFRO0VBQ1IsQUFBUTs7QUFIaEI7RUFDUSxBQUFPO0VBQ1AsQUFBUTtFQUNSLEFBQVE7O0FBSGhCO0VBQ1EsQUFBTztFQUNQLEFBQVE7RUFDUixBQUFROztBQUhoQjtFQUNRLEFBQU87RUFDUCxBQUFRO0VBQ1IsQUFBUTs7QUFLaEI7RUFDUSxBQUFlOztBQUR2QjtFQUNRLEFBQWU7O0FBRHZCO0VBQ1EsQUFBZTs7QUFEdkI7RUFDUSxBQUFlOztBQUR2QjtFQUNRLEFBQWU7O0FBRHZCO0VBQ1EsQUFBZTs7QUFEdkI7RUFDUSxBQUFlOztBQUR2QjtFQUNRLEFBQWU7O0FBRHZCO0VBQ1EsQUFBZTs7QUFEdkI7RUFDUSxBQUFlOztBQUR2QjtFQUNRLEFBQWU7O0FBS3ZCO0VBQ1EsQUFBZ0I7O0FBRHhCO0VBQ1EsQUFBZ0I7O0FBRHhCO0VBQ1EsQUFBZ0I7O0FBRHhCO0VBQ1EsQUFBZ0I7O0FBRHhCO0VBQ1EsQUFBZ0I7O0FBRHhCO0VBQ1EsQUFBZ0I7O0FBRHhCO0VBQ1EsQUFBZ0I7O0FBRHhCO0VBQ1EsQUFBZ0I7O0FBRHhCO0VBQ1EsQUFBZ0I7O0FBRHhCO0VBQ1EsQUFBZ0I7O0FBRHhCO0VBQ1EsQUFBZ0I7O0FBS3hCO0VBQ0ksQUFBTztFQUNQLEFBQVE7O0FBR1o7RUFDSSxBQUFhOztBQUdqQjtFQUNJLEFBQWM7O0FBR2xCO0VBQ0ksQUFBTzs7QUFHWDtFQUNJLEFBQU87RUFDUCxBQUFRIiwiZmlsZSI6ImllLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJ3ZlcnNpb24nO1xuQGltcG9ydCAndmFycyc7XG5AaW1wb3J0ICdtaXhpbnMnO1xuXG5hcnRpY2xlLCBcbmFzaWRlLCBcbmRldGFpbHMsIFxuZmlnY2FwdGlvbiwgXG5maWd1cmUsIFxuZm9vdGVyLCBcbmhlYWRlciwgXG5oZ3JvdXAsIFxubmF2LCBcbnNlY3Rpb24geyBcbiAgICBkaXNwbGF5OiBibG9jazsgXG59XG5cbiR3cmFwOiAkY29sLXdpZHRoICogJGNvbC1xdHkgKyAkZ3V0dGVyICogKCRjb2wtcXR5IC0gMSk7XG5cbi5jb250YWluZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAkd3JhcCArICRndXR0ZXI7XG59XG5cbkBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGNvbC1xdHkge1xuICAgIC5jb2wjeyRpfSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW46IDAgJGd1dHRlci8yO1xuICAgICAgICB3aWR0aDogKCRjb2wtd2lkdGggKiAkaSkgKyAoJGd1dHRlciAqICRpKSAtICRndXR0ZXI7XG4gICAgfVxufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sLXF0eSAtIDEpIHtcbiAgICAucHJlI3skaX0ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICgkY29sLXdpZHRoICogJGkpICsgKCRndXR0ZXIgKiAkaSk7XG4gICAgfVxufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY29sLXF0eSAtIDEpIHtcbiAgICAuc3VmI3skaX0ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJGNvbC13aWR0aCAqICRpKSArICgkZ3V0dGVyICogJGkpO1xuICAgIH1cbn1cblxuLy8gR3JpZCB1dGlsaXRpZXNcbi5jb2xyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiAwICRndXR0ZXIvMjtcbn1cblxuLmFscGhhIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLm9tZWdhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5jbGVhciB7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi5jZW50ZXIge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCBhdXRvO1xufSJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */ +/*# sourceMappingURL=data:application/json;base64,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bUIvQjs7QUFGRCxLQUFLLENBQUw7RUFDSSxhQUFhLEVDbEJXLEtBQUksR0RtQi9COztBQUZELEtBQUssQ0FBTDtFQUNJLGFBQWEsRUNsQlcsS0FBSSxHRG1CL0I7O0FBRkQsS0FBSyxDQUFMO0VBQ0ksYUFBYSxFQ2xCVyxLQUFJLEdEbUIvQjs7QUFGRCxLQUFLLENBQUw7RUFDSSxhQUFhLEVDbEJXLEtBQUksR0RtQi9COztBQUZELEtBQUssQ0FBTDtFQUNJLGFBQWEsRUNsQlcsS0FBSSxHRG1CL0I7O0FBRkQsS0FBSyxDQUFMO0VBQ0ksYUFBYSxFQ2xCVyxLQUFJLEdEbUIvQjs7QUFGRCxLQUFLLENBQUw7RUFDSSxhQUFhLEVDbEJXLEtBQUksR0RtQi9COztBQUZELEtBQUssQ0FBTDtFQUNJLGFBQWEsRUNsQlcsS0FBSSxHRG1CL0I7O0FBRkQsTUFBTSxDQUFOO0VBQ0ksYUFBYSxFQ2xCVyxLQUFJLEdEbUIvQjs7QUFGRCxNQUFNLENBQU47RUFDSSxhQUFhLEVDbEJXLEtBQUksR0RtQi9COztBQUlMLEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxLQUFNO0VBQ2IsTUFBTSxFQUFFLENBQUMsQ0N4Qm1CLElBQUksR0R5Qm5DOztBQUVELE1BQU0sQ0FBQztFQUNILFdBQVcsRUFBRSxDQUFFLEdBQ2xCOztBQUVELE1BQU0sQ0FBQztFQUNILFlBQVksRUFBRSxDQUFFLEdBQ25COztBQUVELE1BQU0sQ0FBQztFQUNILEtBQUssRUFBRSxJQUFLLEdBQ2Y7O0FBRUQsT0FBTyxDQUFDO0VBQ0osS0FBSyxFQUFFLElBQUs7RUFDWixNQUFNLEVBQUUsTUFBTyxHQUNsQiIsImZpbGUiOiJpZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICd2ZXJzaW9uJztcbkBpbXBvcnQgJ3ZhcnMnO1xuQGltcG9ydCAnbWl4aW5zJztcblxuYXJ0aWNsZSwgXG5hc2lkZSwgXG5kZXRhaWxzLCBcbmZpZ2NhcHRpb24sIFxuZmlndXJlLCBcbmZvb3RlciwgXG5oZWFkZXIsIFxuaGdyb3VwLCBcbm5hdiwgXG5zZWN0aW9uIHsgXG4gICAgZGlzcGxheTogYmxvY2s7IFxufVxuXG4kd3JhcDogJGNvbC13aWR0aCAqICRjb2wtcXR5ICsgJGd1dHRlciAqICgkY29sLXF0eSAtIDEpO1xuXG4uY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogJHdyYXAgKyAkZ3V0dGVyO1xufVxuXG5AZm9yICRpIGZyb20gMiB0aHJvdWdoICRjb2wtcXR5IHtcbiAgICAuY29sI3skaX0ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwICRndXR0ZXIvMjtcbiAgICAgICAgd2lkdGg6ICgkY29sLXdpZHRoICogJGkpICsgKCRndXR0ZXIgKiAkaSkgLSAkZ3V0dGVyO1xuICAgIH1cbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbC1xdHkgLSAxKSB7XG4gICAgLnByZSN7JGl9IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAoJGNvbC13aWR0aCAqICRpKSArICgkZ3V0dGVyICogJGkpO1xuICAgIH1cbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbC1xdHkgLSAxKSB7XG4gICAgLnN1ZiN7JGl9IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogKCRjb2wtd2lkdGggKiAkaSkgKyAoJGd1dHRlciAqICRpKTtcbiAgICB9XG59XG5cbi8vIEdyaWQgdXRpbGl0aWVzXG4uY29sciB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMCAkZ3V0dGVyLzI7XG59XG5cbi5hbHBoYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5vbWVnYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uY2xlYXIge1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4uY2VudGVyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDAgYXV0bztcbn0iLCIvLyBDb2xvdXJzXG4kaGlnaGxpZ2h0OiAgICAgICAgICAgICAgICAgICAgICNmYTkyMDA7XG5cbiRlcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAgI2YwMDtcbiRlcnJvci1iZzogICAgICAgICAgICAgICAgICAgICAgI2ZmZTVlNTtcblxuJHN1Y2Nlc3M6ICAgICAgICAgICAgICAgICAgICAgICAjMzkwO1xuJHN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAjZWFmNWU1O1xuXG4kaW5mbzogICAgICAgICAgICAgICAgICAgICAgICAgICMzOWY7XG4kaW5mby1iZzogICAgICAgICAgICAgICAgICAgICAgICNlYWY1ZmY7XG5cbiR3YXJuaW5nOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmMDtcbiR3YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZmZlNTtcblxuJGJsYWNrOiAgICAgICAgICAgICAgICAgICAgICAgICAjMDAwO1xuJHdoaXRlOiAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuJHRleHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAjMDAwO1xuJHRpdGxlOiAgICAgICAgICAgICAgICAgICAgICAgICAjMDAwO1xuXG4vLyBHcmlkXG4kY29sLXF0eTogICAgICAgICAgICAgICAgICAgICAgIDEyO1xuJGNvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICA2MHB4O1xuJGd1dHRlcjogICAgICAgICAgICAgICAgICAgICAgICAyMHB4O1xuXG4vLyBMYXJnZSBkZXNrdG9wIGdyaWRcbiR4bC1jb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgNzBweDtcbiR4bC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAgICAgMzBweDtcblxuXG4vLyBCcmVha3BvaW50c1xuJGJwLXhsOiAgICAgICAgICAgICAgICAgXHRcdDEzNjBweDtcbiRicC1sOiAgICAgICAgICAgICAgXHRcdFx0MTAyNHB4O1xuJGJwLW06ICAgICAgICAgICAgIFx0XHRcdFx0NjgwcHg7XG4kYnAtczogICAgICAgICAgICAgIFx0XHRcdDEyMHB4O1xuXG5cbi8vIFBhdGhzXG4kaW1nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuLi9pbWcvJztcbiRzcHJpdGU6ICAgICAgICAgICAgICAgICAgICAgICAgJy4uL2ltZy9zcHJpdGUucG5nJztcbiRmb250czogICAgICAgICAgICAgICAgICAgICAgICAgJy4uL2ZvbnRzLyc7XG5cbiAgICBcbi8vIFR5cG9ncmFwaHlcbiRib2R5LWZvbnQ6ICAgICAgICAgICAgICAgICAgICAgc2Fucy1zZXJpZjtcbiR0aXRsZS1mb250OiAgICAgICAgICAgICAgICAgICAgc2VyaWY7XG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */ diff --git a/css/style.css b/css/style.css index 6b5a17d..bdc5576 100644 --- a/css/style.css +++ b/css/style.css @@ -7,37 +7,37 @@ content: ''; display: block; } .col2 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 160px; } .col3 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 240px; } .col4 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 320px; } .col5 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 400px; } .col6 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 480px; } .col7 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 560px; } .col8 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 640px; } .col9 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 720px; } .col10 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 800px; } .col11 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 880px; } .col12 > .container { - margin: 0 0 0-10px; + margin: 0 0 0 -10px; width: 960px; } .col1, .col2, .col3, .col4, .col5, .col6, .col7, .col8, .col9, .col10, .col11, .col12 { float: left; @@ -187,37 +187,37 @@ .container { width: 1200px; } .col2 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 200px; } .col3 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 300px; } .col4 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 400px; } .col5 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 500px; } .col6 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 600px; } .col7 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 700px; } .col8 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 800px; } .col9 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 900px; } .col10 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 1000px; } .col11 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 1100px; } .col12 > .container { - margin: 0 0 0-15px; + margin: 0 0 0 -15px; width: 1200px; } .colr { float: right; @@ -250,14 +250,22 @@ width: 102%; width: calc(100% + 20px); margin-left: -10px; } - .col12, .col11, .col10, .col9, .col8, .col7 { + .col12, + .col11, + .col10, + .col9, + .col8, + .col7 { margin: 0; padding: 0 5px; width: 100%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; } - .col6, .col5, .col4, .col3 { + .col6, + .col5, + .col4, + .col3 { float: left; margin: 0; padding: 0 5px; @@ -316,7 +324,16 @@ width: 102%; width: calc(100% + 20px); margin-left: -10px; } - .col12, .col11, .col10, .col9, .col8, .col7, .col6, .col5, .col4, .col3 { + .col12, + .col11, + .col10, + .col9, + .col8, + .col7, + .col6, + .col5, + .col4, + .col3 { margin: 0; padding: 0 5px; width: 100%; @@ -355,6 +372,15 @@ body { padding: 0; font-family: sans-serif; } +.red { + color: red; } + +.red-light { + color: #ffb3b3; } + +.red-dark { + color: maroon; } + @media (min-width: 1024px) { body { font-size: 18px; } } @@ -419,17 +445,52 @@ section { .nesting .nesting { background-color: #FFE7DF; } +pre { + border: 1px solid #CCC; + background-color: #F9F9F9; + padding: 10px; + margin: 0; } + +@media (min-width: 1024px) { + .content { + width: 620px; + float: left; + margin: 0 10px; } + .sidebar { + width: 300px; + float: right; + margin: 0 10px; } } + @media (min-width: 1360px) { .box { - margin-bottom: 30px; } } + margin-bottom: 30px; } + .content { + width: 770px; + margin: 0 15px; } + .sidebar { + width: 370px; + margin: 0 15px; } } @media (min-width: 680px) and (max-width: 1023px) { .box { - margin-bottom: 10px; } } + margin-bottom: 10px; } + .content { + width: 66.66%; + float: left; + padding: 0 5px; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } + .sidebar { + width: 33.33%; + float: right; + padding: 0 5px; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } } @media (min-width: 120px) and (max-width: 679px) { .box { margin-bottom: 10px; } } - -/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9ncmlkLnNjc3MiLCJsL19iYXNlLnNjc3MiLCJsL194bC5zY3NzIiwibS9fYmFzZS5zY3NzIiwiX21peGlucy5zY3NzIiwicy9fYmFzZS5zY3NzIiwiY29tcG9uZW50cy9fYm9keS5zY3NzIiwiX3ZhcnMuc2NzcyIsImNvbXBvbmVudHMvX3NhbXBsZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBO0VDR0E7SUFDSSxBQUFRO0lBQ1IsQUFBTztJQUVYLEFBQVU7TUFDRixBQUFPO01BQ1AsQUFBUztNQUNULEFBQVM7RUFNakIsQUFBUTtJQUNRLEFBQVE7SUFDUixBQUFRO0VBRnhCLEFBQVE7SUFDUSxBQUFRO0lBQ1IsQUFBUTtFQUZ4QixBQUFRO0lBQ1EsQUFBUTtJQUNSLEFBQVE7RUFGeEIsQUFBUTtJQUNRLEFBQVE7SUFDUixBQUFRO0VBRnhCLEFBQVE7SUFDUSxBQUFRO0lBQ1IsQUFBUTtFQUZ4QixBQUFRO0lBQ1EsQUFBUTtJQUNSLEFBQVE7RUFGeEIsQUFBUTtJQUNRLEFBQVE7SUFDUixBQUFRO0VBRnhCLEFBQVE7SUFDUSxBQUFRO0lBQ1IsQUFBUTtFQUZ4QixBQUFTO0lBQ08sQUFBUTtJQUNSLEFBQVE7RUFGeEIsQUFBUztJQUNPLEFBQVE7SUFDUixBQUFRO0VBRnhCLEFBQVM7SUFDTyxBQUFRO0lBQ1IsQUFBUTtFQUtiLEFBQU8sQUFBTyxBQUFPLEFBQU8sQUFBTyxBQUFPLEFBQU8sQUFBTyxBQUFPLEFBQVEsQUFBUTtJQUN0RixBQUFPO0lBQ1AsQUFBUTtFQWVaO0lBQ1EsQUFBUTtFQURoQjtJQUNRLEFBQVE7RUFEaEI7SUFDUSxBQUFRO0VBRGhCO0lBQ1EsQUFBUTtFQURoQjtJQUNRLEFBQVE7RUFEaEI7SUFDUSxBQUFRO0VBRGhCO0lBQ1EsQUFBUTtFQURoQjtJQUNRLEFBQVE7RUFEaEI7SUFDUSxBQUFRO0VBRGhCO0lBQ1EsQUFBUTtFQURoQjtJQUNRLEFBQVE7RUFLaEI7SUFDUSxBQUFjO0VBRHRCO0lBQ1EsQUFBYztFQUR0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SWI7RUFFQTtJQUNFLEFBQVc7O0FFdkJiO0VBQ0UsQUFBTztFQUNQLEFBQVE7RUFDUixBQUFTO0VBQ1QsQUFBYTtFQUNiLEFBQVc7RUFDWCxBQUFhO0VBQ2IsQUFBWTs7QUFFZDtFQUNFLEFBQU87RUFDUCxBQUFhO0VBQ2IsQUFBUTtFQUNSLEFBQVc7RUFDWCxBQUFXOztBQUViO0VBQ0UsQUFBTztFQUNQLEFBQWE7RUFDYixBQUFRO0VBQ1IsQUFBVztFQUNYLEFBQWE7RUFDYixBQUFTOztBQUVYO0VBQ0UsQUFBUTs7QUFFVjtFQUNFLEFBQU87O0FBRVQ7RUFDRSxBQUFlOztBQUVqQjtFQUNFLEFBQVE7RUFDUixBQUFTO0VBQ1QsQUFBWTs7QUFFZCxBQUFLO0VBQ0gsQUFBUTs7QUFFVjtFQUNFLEFBQWE7RUFDYixBQUFXOztBQUViO0VBQ0UsQUFBa0I7RUFDbEIsQUFBZTs7QUFFakIsQUFBUztFQUNQLEFBQWtCOztBQUlwQjtFQUVBO0lBQ0UsQUFBZTs7QUFJakI7RUFFQTtJQUNFLEFBQWU7O0FBSWpCO0VBRUE7SUFDRSxBQUFlIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJ3ZhcnMnO1xuQGltcG9ydCAnbWl4aW5zJztcblxuQG1lZGlhIChtaW4td2lkdGg6ICRicC1sKSB7XG5cbiAgICBAaW1wb3J0ICdsL2Jhc2UnO1xuXG59XG5AbWVkaWEgKG1pbi13aWR0aDogJGJwLXhsKSB7XG5cbiAgICBAaW1wb3J0ICdsL3hsJztcblxufVxuQG1lZGlhIChtaW4td2lkdGg6ICRicC1tKSBhbmQgKG1heC13aWR0aDogKCRicC1sIC0gMSkpIHtcblxuICAgIEBpbXBvcnQgJ20vYmFzZSc7XG5cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAkYnAtcykgYW5kIChtYXgtd2lkdGg6ICgkYnAtbSAtIDEpKSB7XG5cbiAgICBAaW1wb3J0ICdzL2Jhc2UnO1xuXG59IiwiLy8gKiBMYXJnZSBzY3JlZW5zIGdyaWQgc3lzdGVtXG4vLyAqXG5cbi8vICogRGVmaW5lIHRoZSBzaXplIG9mIHRoZSBjb250YWluZXIgdXNpbmcgdmFyaWFibGVzXG4kd3JhcDogKCRjb2wtd2lkdGggKiAkY29sLXF0eSkgKyAkZ3V0dGVyICogKCRjb2wtcXR5IC0gMSk7XG5cbi5jb250YWluZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAkd3JhcCArICRndXR0ZXI7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi8vICogTG9vcCB0aHJvdWdoIHRoZSBjb2xzIHRvIGdlbmVyYXRlIHNpemUgb2YgbmVzdGVkIGNvbnRhaW5lcnNcbkBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGNvbC1xdHkge1xuICAgICAgICAuY29sI3skaX0gPiAuY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIC0jeyRndXR0ZXIvMn07XG4gICAgICAgICAgICAgICAgd2lkdGg6ICgkY29sLXdpZHRoICogJGkpICsgKCRndXR0ZXIgKiAkaSk7XG4gICAgICAgIH1cbn1cblxuLy8gKiBFbXB0eSBkZWNsYXJhdGlvbiBhcyBhIGJhc2UgZm9yIGFsbCBzcGFucyBjb21tb24gc3R5bGVzXG4lYmFzZS1jb2wge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMCAkZ3V0dGVyLzI7XG59XG5cbi8vICogTWl4aW4gdG8gbG9vcCB0aHJvdWdoIHNwYW5zIHVzaW5nIHRoZSBlbXB0eSBkZWNsYXJhdGlvblxuQG1peGluIGNvbHMge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbC1xdHkge1xuICAgICAgICAuY29sI3skaX0geyBAZXh0ZW5kICViYXNlLWNvbDsgfVxuICAgIH1cbn1cblxuLy8gKiBPdXRwdXQgYWxsIHRoZSBzcGFucyBjb21tb24gc3R5bGVzXG5AaW5jbHVkZSBjb2xzO1xuXG4vLyAqIExvb3AgdG8gZ2VuZXJhdGUgZWFjaCBzcGFuIFxuQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkY29sLXF0eSB7XG4gICAgLmNvbCN7JGl9IHtcbiAgICAgICAgd2lkdGg6ICgkY29sLXdpZHRoICogJGkpICsgKCRndXR0ZXIgKiAkaSkgLSAkZ3V0dGVyO1xuICAgIH1cbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbC1xdHkgLSAyKSB7XG4gICAgLnByZSN7JGl9IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgkY29sLXdpZHRoICogJGkpICsgKCRndXR0ZXIgKiAkaSkgKyAoJGd1dHRlciAvIDIpO1xuICAgIH1cbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbC1xdHkgLSAyKSB7XG4gICAgLnN1ZiN7JGl9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAoJGNvbC13aWR0aCAqICRpKSArICgkZ3V0dGVyICogJGkpO1xuICAgIH1cbn1cblxuLy8gKlxuLy8gKiBBZGRpdGlvbmFsIGdyaWQgdXRpbGl0aWVzXG4vLyAqXG5cbi8vICogRm9yY2UgZmxvYXQgYSBzcGFuIHRvIHRoZSByaWdodFxuLmNvbHIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW46IDAgJGd1dHRlci8yO1xufVxuXG4vLyAqIFJlbW92ZSBsZWZ0IG1hcmdpbiBmcm9tIHNwYW5cbi5hbHBoYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8vICogUmVtb3ZlIHJpZ2h0IG1hcmdpbiBmcm9tIHNwYW5cbi5vbWVnYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4vLyAqIENsZWFyIGhlbHBlclxuLmNsZWFyIHtcbiAgICBjbGVhcjogYm90aDtcbn1cblxuLy8gKiBjZW50ZXIgc3BhbiBpbiBjb250YWluZXJcbi5jZW50ZXIge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCBhdXRvO1xufSIsIi8vICpcbi8vICogR3JpZCBzeXN0ZW1cbi8vICogRGVmaW5lIHRoZSBzaXplIG9mIHRoZSBjb250YWluZXIgdXNpbmcgZXh0cmEgbGFyZ2UgdmFyaWFibGVzXG4vLyAqXG4kd3JhcDogJHhsLWNvbC13aWR0aCAqIDEyICsgJHhsLWd1dHRlciAqIDExO1xuXG4vLyAqIEdlbmVyYXRlIGEgY29tbW9uIHN0eWxlIGZvciBhbGwgc3BhbnNcbiViYXNlLXhsLWNvbCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwICR4bC1ndXR0ZXIvMjtcbn1cblxuQG1peGluIGNvbHMge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRvICRjb2wtcXR5IC0gMSB7XG4gICAgICAgIC5jb2wjeyRpfSB7IEBleHRlbmQgJWJhc2UteGwtY29sOyB9XG4gICAgfVxufVxuXG4vLyAqIE91dHB1dCB0aGUgY29tbW9uIHNwYW4gc3R5bGVzXG5AaW5jbHVkZSBjb2xzO1xuXG4vLyBEZWZpbmUgd2lkdGhzIGZvciBlYWNoIHNwYW5cbi5jb2wjeyRjb2wtcXR5fSB7XG4gICAgbWFyZ2luOiAwICR4bC1ndXR0ZXIvMjsgLy8gRnVsbCB3aWR0aCwgZG9lc24ndCBuZWVkIGZsb2F0XG4gICAgd2lkdGg6ICgkeGwtY29sLXdpZHRoICogJGNvbC1xdHkpICsgKCR4bC1ndXR0ZXIgKiAkY29sLXF0eSkgLSAkeGwtZ3V0dGVyO1xufVxuXG5AZm9yICRpIGZyb20gMiB0byAkY29sLXF0eSB7XG4gICAgLmNvbCN7JGl9IHtcbiAgICAgICAgd2lkdGg6ICR4bC1jb2wtd2lkdGggKiAkaSArICR4bC1ndXR0ZXIgKiAkaSAtICR4bC1ndXR0ZXI7XG4gICAgfVxufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDEwIHtcbiAgICAucHJlI3skaX0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogKCR4bC1jb2wtd2lkdGggKiAkaSkgKyAoJHhsLWd1dHRlciAqICRpKSArICgkeGwtZ3V0dGVyIC8gMik7XG4gICAgfVxufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDEwIHtcbiAgICAuc3VmI3skaX0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICgkeGwtY29sLXdpZHRoICogJGkpICsgKCR4bC1ndXR0ZXIgKiAkaSkgKyAoJHhsLWd1dHRlciAvIDIpO1xuICAgIH1cbn1cblxuLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6ICR3cmFwICsgJHhsLWd1dHRlcjtcbn1cblxuQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkY29sLXF0eSB7XG4gICAgLmNvbCN7JGl9ID4gLmNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgLSN7JHhsLWd1dHRlci8yfTtcbiAgICAgICAgd2lkdGg6ICgkeGwtY29sLXdpZHRoICogJGkpICsgKCR4bC1ndXR0ZXIgKiAkaSk7XG4gICAgfVxufVxuXG4vLyAqIEdyaWQgdXRpbGl0aWVzXG4uY29sciB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMCAkeGwtZ3V0dGVyLzI7XG59XG5cbi5hbHBoYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5vbWVnYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uY2xlYXIge1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4uY2VudGVyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cbiIsIi8vICogR3JpZCBzeXN0ZW1cbi8vICogRGVmaW5lIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBmbGV4aWJsZSBjb250YWluZXJcbi8vICpcblxuLndyYXAge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgKCRndXR0ZXIvNCk7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZztcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDIlO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgI3skZ3V0dGVyfSk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtKCRndXR0ZXIvMik7XG4gICAgfVxufVxuXG4uY29sMTIsIFxuLmNvbDExLCBcbi5jb2wxMCwgXG4uY29sOSwgXG4uY29sOCwgXG4uY29sNyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgKCRndXR0ZXIvNCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZztcbn1cblxuLmNvbDYsIFxuLmNvbDUsIFxuLmNvbDQsIFxuLmNvbDMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwICgkZ3V0dGVyLzQpO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZztcbn1cblxuLmNvbDIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwICgkZ3V0dGVyLzQpO1xuICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZztcbn1cblxuLm0tZnVsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgJi5jb2xyIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxufVxuXG4ubS1oYWxmIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xufVxuXG4ubS0xXzMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMyU7XG59XG5cbi5tLTJfMyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDY2LjY2JTtcbn1cblxuLy8gKiBBZGRpdGlvbmFsIGdyaWQgdXRpbGl0aWVzXG4uY29sciB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYWxwaGEge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ub21lZ2Ege1xuICAgIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmNsZWFyIHtcbiAgICBjbGVhcjogYm90aDtcbn1cblxuLmNlbnRlciB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG4iLCIvLyAqXG4vLyAqIEhvaXNpbi5zY3NzXG4vLyAqIE1peGlucyBsaWJyYXJ5XG4vLyAqXG4vLyAqIFZlbmRvciBwcmVmaXhlcyBhcmUgaGFuZGxlZCBieSBhIHByZWZpeGVyIG1peGluICh0aGFua3MgQEh1Z29HaXJhdWRlbCksXG4vLyAqIEFsbCBtaXhpbnMgaGF2ZSB0aGUgbW9zdCBvcHRpbWl6ZWQgb3B0aW9ucyBmb3IgdmVuZG9yIHByZWZpeGVzLCBidXQgY2FuXG4vLyAqIGJlIHNwZWNpZmllZCBpZiBuZWNlc3Nhcnlcbi8vICpcblxuXG5cbi8vICogQm94IHNoYWRvd1xuLy8gKiBAcGFyYW0gJHZhbHVlICgkaC1vZmZzZXQgJHYtb2Zmc2V0ICRibHVyICRzcHJlYWQgJGNvbG9yIHwgaW5zZXQgfCBpbml0aWFsIHwgaW5oZXJpdCk7XG4vLyAqXG4vLyAqIEBpbmNsdWRlIGJveC1zaGFkb3coMnB4IDJweCAycHggMnB4IHJnYmEoMCwwLDAsMC4yKSk7XG4vLyAqXG5AbWl4aW4gYm94LXNoYWRvdygkdmFsdWU6IDAgMCA0cHggMCByZ2JhKDAsIDAsIDAsIC41KSkge1xuICAgIEBpbmNsdWRlIHByZWZpeGVyKGJveC1zaGFkb3csICR2YWx1ZSwgd2Via2l0KTtcbn1cblxuXG5cbi8vICogVHdvIGNvbG9ycyB2ZXJ0aWNhbCBsaW5lYXIgZ3JhZGllbnRcbi8vICogQHBhcmFtICR2YWx1ZSAoJGluaXRpYWwtY29sb3IpO1xuLy8gKiBAcGFyYW0gJHZhbHVlICgkZmluYWwtY29sb3IpO1xuLy8gKlxuLy8gKiBAaW5jbHVkZSBncmFkaWVudHMoI0ZGMCwgI0YwMCk7XG4vLyAqXG5AbWl4aW4gZ3JhZGllbnRzKCRmaXJzdCwgJHNlY29uZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaXJzdDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkZmlyc3QgMCUsICRzZWNvbmQgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICRmaXJzdCAwJSwgJHNlY29uZCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICRmaXJzdCwgJHNlY29uZCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbSgkZmlyc3QpLCB0bygkc2Vjb25kKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwgJGZpcnN0IDAlLCAkc2Vjb25kIDEwMCUpO1xufVxuXG5cblxuLy8gKiBCb3ggbW9kZWwgKGRlZmF1bHRzIHRvIGJvcmRlci1ib3gpXG4vLyAqIEBwYXJhbSAkdHlwZSAoJGJveC1tb2RlbCk7XG4vLyAqXG4vLyAqIEBpbmNsdWRlIGJveC1zaXppbmc7XG4vLyAqXG5AbWl4aW4gYm94LXNpemluZygkdHlwZTogYm9yZGVyLWJveCkge1xuICAgIEBpbmNsdWRlIHByZWZpeGVyKGJveC1zaXppbmcsICR0eXBlLCBtb3ogd2Via2l0KTtcbn1cblxuXG5cbi8vICogT3BhY2l0eSAoT2xkIElFIGRpc2FibGVkIGJ5IGRlZmF1bHQpXG4vLyAqIEBwYXJhbSAkb3BhYyAoJG9wYWNpdHkpO1xuLy8gKiBAcGFyYW0gJGllICh0cnVlKTtcbi8vICpcbi8vICogQGluY2x1ZGUgb3BhY2l0eSgwLjcsIHRydWUpO1xuLy8gKlxuQG1peGluIG9wYWNpdHkoJG9wYWMsICRpZTogZmFsc2UpIHtcbiAgICBAaWYgJGllIHtcbiAgICAgICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjICogMTAwKTtcbiAgICAgICAgLW1zLWZpbHRlcjogYWxwaGEob3BhY2l0eT0kb3BhYyAqIDEwMCk7XG4gICAgfVxuICAgIG9wYWNpdHk6ICRvcGFjO1xufVxuXG5cblxuLy8gKiBUcmFuc2l0aW9uIChkZWZhdWx0cyB0byAuMTUgc2VjKVxuLy8gKiBAcGFyYW0gJHZhbHVlICgkc3BlZWQgfCAkcHJvcGVydHkgfCAkZWFzaW5nKTtcbi8vICpcbi8vICogQGluY2x1ZGUgdHJhbnNpdGlvbihoZWlnaHQgMjAwbXMgZWFzZS1vdXQpO1xuLy8gKlxuQG1peGluIHRyYW5zaXRpb24oJHZhbHVlOiAuMTVzKSB7XG4gICAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNpdGlvbiwgJHZhbHVlLCB3ZWJraXQpO1xufVxuXG5cblxuLy8gKiBSb3RhdGUgKE9yaWdpbiBkZWZhdWx0cyB0byBjZW50ZXIgb2YgZWxlbWVudClcbi8vICogQHBhcmFtICRkZWcgKCRkZWdyZWVzKTtcbi8vICogQHBhcmFtICRvcmlnICgkaC1vcmlnaW4gJHYtb3JpZ2luKTtcbi8vICpcbi8vICogQGluY2x1ZGUgcm90YXRlKDQ1ZGVnKTtcbi8vICpcbkBtaXhpbiByb3RhdGUoJGRlZywgJG9yaWc6IDUwJSA1MCUpIHtcbiAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0sIHJvdGF0ZSgjeyRkZWd9KSwgd2Via2l0IG1zKTtcbiAgICBAaWYgJG9yaWcgIT0gNTAlIGFuZCAkb3JpZyAhPSAoNTAlIDUwJSkgXG4gICAgYW5kICRvcmlnICE9IGNlbnRlciBhbmQgJG9yaWcgIT0gKGNlbnRlciBjZW50ZXIpIHtcbiAgICAgICAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLW9yaWdpbiwgJG9yaWcsIHdlYmtpdCBtcyk7XG4gICAgfVxufVxuXG5cblxuLy8gKiBUcmFuc2xhdGUgXG4vLyAqIEBwYXJhbSAkaGRpc3QgKCRkaXN0YW5jZSk7XG4vLyAqIEBwYXJhbSAkdmRpc3QgKCRkaXN0YW5jZSk7XG4vLyAqXG4vLyAqIEBpbmNsdWRlIHRyYW5zbGF0ZSgyMHB4LCAyMHB4KTtcbi8vICpcbkBtaXhpbiB0cmFuc2xhdGUoJGhkaXN0OiAwLCAkdmRpc3Q6IDApIHtcbiAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0sIHRyYW5zbGF0ZSgjeyRoZGlzdH0sICN7JHZkaXN0fSksIHdlYmtpdCBtcyk7XG59XG5cblxuXG4vLyAqIEFuaW1hdGlvbiAoZGVmYXVsdHMgdG8gLjE1IHNlYylcbi8vICogQHBhcmFtICRvcHRpb25zICgkYW5pbWF0aW9uLW5hbWUgJGR1cmF0aW9uIHwgJGl0ZXJhdGlvbik7XG4vLyAqXG4vLyAqIEBpbmNsdWRlIGFuaW1hdGlvbihteWFuaW1hdGlvbiAycyAzKTtcbi8vICpcbkBtaXhpbiBhbmltYXRpb24oJG9wdGlvbnMpIHtcbiAgICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24sICRvcHRpb25zKTtcbn1cblxuXG5cbi8vICogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuLy8gKiBAcGFyYW0gJGNvbG9yICgkY29sb3IpO1xuLy8gKlxuLy8gKiBAaW5jbHVkZSBwbGFjZWhvbGRlcigjOTk5KTtcbi8vICpcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3IpIHtcbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjsgXG4gICAgfVxuXG4gICAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG59XG5cblxuLy8gKiBEaXNhbGxvdyB1c2VyIHNlbGVjdGlvblxuLy8gKlxuLy8gKiBAaW5jbHVkZSBub3NlbGVjdDtcbi8vICpcbkBtaXhpbiBub3NlbGVjdCB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIEBpbmNsdWRlIHByZWZpeGVyKHVzZXItc2VsZWN0LCBub25lLCB3ZWJraXQgbXMpO1xufVxuXG5cblxuLy8gKiBCb3JkZXIgcmFkaXVzXG4vLyAqIEBwYXJhbSAkcmFkaXVzICgkcmFkaXVzKTtcbi8vICpcbi8vICogQGluY2x1ZGUgcmFkaXVzKDVweCk7XG4vLyAqXG4vLyAqIFRoaXMgbWl4aW4gaXMgZGVwcmVjYXRlZCwgd2lsbCBiZSByZW1vdmVkIGluIGZ1dHVyZSB2ZXJzaW9uc1xuQG1peGluIHJhZGl1cygkcmFkaXVzKSB7IFxuICAgIEBpbmNsdWRlIHByZWZpeGVyKGJvcmRlci1yYWRpdXMsICRyYWRpdXMpO1xufSBcblxuXG5cbi8vICogUHJlZml4ZXJcbi8vICogQHBhcmFtICRwcm9wZXJ0eSAoJG5hbWUpO1xuLy8gKiBAcGFyYW0gJHZhbHVlICgkdmFsdWUpO1xuLy8gKiBAcGFyYW0gJHByZWZpeGVzICh3ZWJraXQgfCBtb3ogfCBtcyB8IG8pO1xuLy8gKlxuLy8gKiBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24sICRvcHRpb25zKTtcbi8vICpcbkBtaXhpbiBwcmVmaXhlcigkcHJvcGVydHksICR2YWx1ZSwgJHByZWZpeGVzOiB3ZWJraXQgbW96IG1zIG8pIHtcbiAgICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XG4gICAgICAgICN7Jy0nICsgJHByZWZpeCArICctJyArICRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcbiAgICB9XG4gICAgI3skcHJvcGVydHl9OiAjeyR2YWx1ZX07XG59XG4iLCIvLyAqIEdyaWQgc3lzdGVtXG4vLyAqIERlZmluZSB0aGUgcHJvcGVydGllcyBvZiB0aGUgZmxleGlibGUgY29udGFpbmVyXG4vLyAqXG5cbi53cmFwIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwICgkZ3V0dGVyLzQpO1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmc7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIFxuICAgIC5jb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAyJTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArICN7JGd1dHRlcn0pO1xuICAgICAgICBtYXJnaW4tbGVmdDogLSgkZ3V0dGVyLzIpO1xuICAgIH1cbn1cblxuLmNvbDEyLCBcbi5jb2wxMSwgXG4uY29sMTAsIFxuLmNvbDksIFxuLmNvbDgsIFxuLmNvbDcsIFxuLmNvbDYsIFxuLmNvbDUsIFxuLmNvbDQsIFxuLmNvbDMge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwICgkZ3V0dGVyLzQpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmc7XG59XG5cbi5jb2wyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAoJGd1dHRlci80KTtcbiAgICB3aWR0aDogNTAlO1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmc7XG59XG5cbi5zLWZ1bGwge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwICgkZ3V0dGVyLzQpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmc7XG59XG5cbi5zLWhhbGYge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwICgkZ3V0dGVyLzQpO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZztcbn1cblxuLmNsZWFyIHtcbiAgICBjbGVhcjogYm90aDtcbn1cbiIsIi8vIEJvZHlcbmJvZHkge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGJwLWwpIHtcblxuXHRib2R5IHtcblx0XHRmb250LXNpemU6IDE4cHg7XG5cdH1cblxufVxuQG1lZGlhIChtaW4td2lkdGg6ICRicC1tKSBhbmQgKG1heC13aWR0aDogKCRicC1sIC0gMSkpIHtcblxuXHRib2R5IHtcblx0XHRmb250LXNpemU6IDE2cHg7XG5cdH1cblxufVxuQG1lZGlhIChtaW4td2lkdGg6ICRicC1zKSBhbmQgKG1heC13aWR0aDogKCRicC1tIC0gMSkpIHtcblxuXHRib2R5IHtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdH1cblxufSIsIi8vIENvbG91cnNcbiRoaWdobGlnaHQ6ICAgICAgICAgICAgICAgICAgICAgI2ZhOTIwMDtcblxuJGVycm9yOiAgICAgICAgICAgICAgICAgICAgICAgICAjZjAwO1xuJGVycm9yLWJnOiAgICAgICAgICAgICAgICAgICAgICAjZmZlNWU1O1xuXG4kc3VjY2VzczogICAgICAgICAgICAgICAgICAgICAgICMzOTA7XG4kc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICAgICNlYWY1ZTU7XG5cbiRpbmZvOiAgICAgICAgICAgICAgICAgICAgICAgICAgIzM5ZjtcbiRpbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2VhZjVmZjtcblxuJHdhcm5pbmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmYwO1xuJHdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmZmU1O1xuXG4kYmxhY2s6ICAgICAgICAgICAgICAgICAgICAgICAgICMwMDA7XG4kd2hpdGU6ICAgICAgICAgICAgICAgICAgICAgICAgICNmZmY7XG4kdGV4dDogICAgICAgICAgICAgICAgICAgICAgICAgICMwMDA7XG4kdGl0bGU6ICAgICAgICAgICAgICAgICAgICAgICAgICMwMDA7XG5cbi8vIEdyaWRcbiRjb2wtcXR5OiAgICAgICAgICAgICAgICAgICAgICAgMTI7XG4kY29sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgIDYwcHg7XG4kZ3V0dGVyOiAgICAgICAgICAgICAgICAgICAgICAgIDIwcHg7XG5cbi8vIExhcmdlIGRlc2t0b3AgZ3JpZFxuJHhsLWNvbC13aWR0aDogICAgICAgICAgICAgICAgICA3MHB4O1xuJHhsLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAzMHB4O1xuXG5cbi8vIEJyZWFrcG9pbnRzXG4kYnAteGw6ICAgICAgICAgICAgICAgICBcdFx0MTM2MHB4O1xuJGJwLWw6ICAgICAgICAgICAgICBcdFx0XHQxMDI0cHg7XG4kYnAtbTogICAgICAgICAgICAgXHRcdFx0XHQ2ODBweDtcbiRicC1zOiAgICAgICAgICAgICAgXHRcdFx0MTIwcHg7XG5cblxuLy8gUGF0aHNcbiRpbWc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJy4uL2ltZy8nO1xuJHNwcml0ZTogICAgICAgICAgICAgICAgICAgICAgICAnLi4vaW1nL3Nwcml0ZS5wbmcnO1xuJGZvbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAnLi4vZm9udHMvJztcblxuICAgIFxuLy8gVHlwb2dyYXBoeVxuJGJvZHktZm9udDogICAgICAgICAgICAgICAgICAgICBzYW5zLXNlcmlmO1xuJHRpdGxlLWZvbnQ6ICAgICAgICAgICAgICAgICAgICBzZXJpZjtcbiIsIi8vIENvbXBvbmVudCBuYW1lXG5cdGJvZHkge1xuXHRcdGNvbG9yOiAjNjY2O1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiA1MHB4IDA7XG5cdFx0Zm9udC1mYW1pbHk6IFwiUm9ib3RvIENvbmRlbnNlZFwiLCBzYW5zLXNlcmlmO1xuXHRcdGZvbnQtc2l6ZTogMThweDtcblx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdGJhY2tncm91bmQ6IHdoaXRlO1xuXHR9XG5cdGgyIHtcblx0XHRjb2xvcjogI2Q4NTMxZTtcblx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdG1hcmdpbjogMDtcblx0XHRmb250LXNpemU6IDQ4cHg7XG5cdFx0Zm9udC1zaXplOiA0OHB4O1xuXHR9XG5cdGgzIHtcblx0XHRjb2xvcjogIzMzMztcblx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdG1hcmdpbjogMDtcblx0XHRmb250LXNpemU6IDM2cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDM2cHg7XG5cdFx0cGFkZGluZzogMTJweCAwOyBcblx0fVxuXHRwIHtcblx0XHRtYXJnaW46IDAgMCAyMXB4IDA7XG5cdH1cblx0YSB7XG5cdFx0Y29sb3I6ICNkODUzMWU7XG5cdH1cblx0c2VjdGlvbiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNTBweDtcblx0fVxuXHQuYm94IHtcblx0XHRtYXJnaW46IDAgMCAyMHB4IDA7XG5cdFx0cGFkZGluZzogMTBweDtcblx0XHRiYWNrZ3JvdW5kOiAjRjVGNUY1O1xuXHR9XG5cdC5ib3ggcCB7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cdC5jb2RlIHtcblx0XHRmb250LWZhbWlseTogXCJDb3VyaWVyIE5ld1wiLCBzZXJpZjtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdH1cblx0Lm5lc3Rpbmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkZGREY7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0fVxuXHQubmVzdGluZyAubmVzdGluZyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRTdERjtcblx0fVxuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkYnAteGwpIHtcblx0XG5cdC5ib3gge1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblxufVxuQG1lZGlhIChtaW4td2lkdGg6ICRicC1tKSBhbmQgKG1heC13aWR0aDogKCRicC1sIC0gMSkpIHtcblxuXHQuYm94IHtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR9XG5cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAkYnAtcykgYW5kIChtYXgtd2lkdGg6ICgkYnAtbSAtIDEpKSB7XG5cdFxuXHQuYm94IHtcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHR9XG5cbn1cbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */ +/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9ncmlkLnNjc3MiLCJsL19iYXNlLnNjc3MiLCJfdmFycy5zY3NzIiwibC9feGwuc2NzcyIsIm0vX2Jhc2Uuc2NzcyIsIl9taXhpbnMuc2NzcyIsInMvX2Jhc2Uuc2NzcyIsImNvbXBvbmVudHMvX2JvZHkuc2NzcyIsIl9mdW5jdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvX3NhbXBsZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sRUFBTCxTQUFTLEVBQUUsTUFBTTtFQ0dsQixVQUFVLENBQUM7SUFDUCxNQUFNLEVBQUUsTUFBTztJQUNmLEtBQUssRUNjdUIsS0FBSSxHRFBuQztJQVRELFVBQVUsQUFJTCxNQUFNLENBQUM7TUFDSixLQUFLLEVBQUUsSUFBSztNQUNaLE9BQU8sRUFBRSxFQUFHO01BQ1osT0FBTyxFQUFFLEtBQU0sR0FDbEI7RUFLRCxLQUFLLEdBQUcsVUFBVSxDQUFsQjtJQUNJLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFDO0lBQ2YsS0FBSyxFQ0NtQixLQUFJLEdEQS9CO0VBSEQsS0FBSyxHQUFHLFVBQVUsQ0FBbEI7SUFDSSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBQztJQUNmLEtBQUssRUNDbUIsS0FBSSxHREEvQjtFQUhELEtBQUssR0FBRyxVQUFVLENBQWxCO0lBQ0ksTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUM7SUFDZixLQUFLLEVDQ21CLEtBQUksR0RBL0I7RUFIRCxLQUFLLEdBQUcsVUFBVSxDQUFsQjtJQUNJLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFDO0lBQ2YsS0FBSyxFQ0NtQixLQUFJLEdEQS9CO0VBSEQsS0FBSyxHQUFHLFVBQVUsQ0FBbEI7SUFDSSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBQztJQUNmLEtBQUssRUND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QUFFLE1BQU07RUFFakIsSUFBSSxDQUFDO0lBQ0osYUFBYSxFQUFFLElBQUssR0FDcEI7RUFFRCxRQUFRLENBQUM7SUFDUixLQUFLLEVBQVUsS0FBQztJQUNoQixNQUFNLEVBQUUsQ0FBQyxDUDNEcUIsSUFBSSxHTzREbEM7RUFDRCxRQUFRLENBQUM7SUFDUixLQUFLLEVBQVUsS0FBQztJQUNoQixNQUFNLEVBQUUsQ0FBQyxDUC9EcUIsSUFBSSxHT2dFbEM7O0FBR0YsTUFBTSxFQUFMLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLE1BQU07RUFFeEMsSUFBSSxDQUFDO0lBQ0osYUFBYSxFQUFFLElBQUssR0FDcEI7RUFFRCxRQUFRLENBQUM7SUFDUixLQUFLLEVEckRTLE1BQU07SUNzRHBCLEtBQUssRUFBRSxJQUFLO0lBQ1osT0FBTyxFQUFFLENBQUMsQ1BoRm9CLEdBQUk7SUdpSjVCLGVBQWtDLEVBQUMsVUFBQztJQUFwQyxrQkFBa0MsRUFBQyxVQUFDO0lBRXhDLFVBQVksRUFBQyxVQUFDLEdJakVoQjtFQUNELFFBQVEsQ0FBQztJQUNSLEtBQUssRURyRFMsTUFBTTtJQ3NEcEIsS0FBSyxFQUFFLEtBQU07SUFDYixPQUFPLEVBQUUsQ0FBQyxDUHRGb0IsR0FBSTtJR2lKNUIsZUFBa0MsRUFBQyxVQUFDO0lBQXBDLGtCQUFrQyxFQUFDLFVBQUM7SUFFeEMsVUFBWSxFQUFDLFVBQUMsR0kzRGhCOztBQUdGLE1BQU0sRUFBTCxTQUFTLEVBQUUsS0FBSyxPQUFPLFNBQVMsRUFBRSxLQUFLO0VBRXZDLElBQUksQ0FBQztJQUNKLGFBQWEsRUFBRSxJQUFLLEdBQ3BCIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJ3ZhcnMnO1xuQGltcG9ydCAnbWl4aW5zJztcblxuQG1lZGlhIChtaW4td2lkdGg6ICRicC1sKSB7XG5cbiAgICBAaW1wb3J0ICdsL2Jhc2UnO1xuXG59XG5AbWVkaWEgKG1pbi13aWR0aDogJGJwLXhsKSB7XG5cbiAgICBAaW1wb3J0ICdsL3hsJztcblxufVxuQG1lZGlhIChtaW4td2lkdGg6ICRicC1tKSBhbmQgKG1heC13aWR0aDogKCRicC1sIC0gMSkpIHtcblxuICAgIEBpbXBvcnQgJ20vYmFzZSc7XG5cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAkYnAtcykgYW5kIChtYXgtd2lkdGg6ICgkYnAtbSAtIDEpKSB7XG5cbiAgICBAaW1wb3J0ICdzL2Jhc2UnO1xuXG59IiwiLy8gKiBMYXJnZSBzY3JlZW5zIGdyaWQgc3lzdGVtXG4vLyAqXG5cbi8vICogRGVmaW5lIHRoZSBzaXplIG9mIHRoZSBjb250YWluZXIgdXNpbmcgdmFyaWFibGVzXG4kd3JhcDogKCRjb2wtd2lkdGggKiAkY29sLXF0eSkgKyAkZ3V0dGVyICogKCRjb2wtcXR5IC0gMSk7XG5cbi5jb250YWluZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAkd3JhcCArICRndXR0ZXI7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi8vICogTG9vcCB0aHJvdWdoIHRoZSBjb2xzIHRvIGdlbmVyYXRlIHNpemUgb2YgbmVzdGVkIGNvbnRhaW5lcnNcbkBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGNvbC1xdHkge1xuICAgIC5jb2wjeyRpfSA+IC5jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDAgLSgkZ3V0dGVyLzIpO1xuICAgICAgICB3aWR0aDogKCRjb2wtd2lkdGggKiAkaSkgKyAoJGd1dHRlciAqICRpKTtcbiAgICB9XG59XG5cbi8vICogRW1wdHkgZGVjbGFyYXRpb24gYXMgYSBiYXNlIGZvciBhbGwgc3BhbnMgY29tbW9uIHN0eWxlc1xuJWJhc2UtY29sIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDAgJGd1dHRlci8yO1xufVxuXG4vLyAqIE1peGluIHRvIGxvb3AgdGhyb3VnaCBzcGFucyB1c2luZyB0aGUgZW1wdHkgZGVjbGFyYXRpb25cbkBtaXhpbiBjb2xzIHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2wtcXR5IHtcbiAgICAgICAgLmNvbCN7JGl9IHsgQGV4dGVuZCAlYmFzZS1jb2w7IH1cbiAgICB9XG59XG5cbi8vICogT3V0cHV0IGFsbCB0aGUgc3BhbnMgY29tbW9uIHN0eWxlc1xuQGluY2x1ZGUgY29scztcblxuLy8gKiBMb29wIHRvIGdlbmVyYXRlIGVhY2ggc3BhbiBcbkBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGNvbC1xdHkge1xuICAgIC5jb2wjeyRpfSB7XG4gICAgICAgIHdpZHRoOiAoJGNvbC13aWR0aCAqICRpKSArICgkZ3V0dGVyICogJGkpIC0gJGd1dHRlcjtcbiAgICB9XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRjb2wtcXR5IC0gMikge1xuICAgIC5wcmUjeyRpfSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoJGNvbC13aWR0aCAqICRpKSArICgkZ3V0dGVyICogJGkpICsgKCRndXR0ZXIgLyAyKTtcbiAgICB9XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRjb2wtcXR5IC0gMikge1xuICAgIC5zdWYjeyRpfSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogKCRjb2wtd2lkdGggKiAkaSkgKyAoJGd1dHRlciAqICRpKTtcbiAgICB9XG59XG5cbi8vICpcbi8vICogQWRkaXRpb25hbCBncmlkIHV0aWxpdGllc1xuLy8gKlxuXG4vLyAqIEZvcmNlIGZsb2F0IGEgc3BhbiB0byB0aGUgcmlnaHRcbi5jb2xyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiAwICRndXR0ZXIvMjtcbn1cblxuLy8gKiBSZW1vdmUgbGVmdCBtYXJnaW4gZnJvbSBzcGFuXG4uYWxwaGEge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLyAqIFJlbW92ZSByaWdodCBtYXJnaW4gZnJvbSBzcGFuXG4ub21lZ2Ege1xuICAgIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLy8gKiBDbGVhciBoZWxwZXJcbi5jbGVhciB7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi8vICogY2VudGVyIHNwYW4gaW4gY29udGFpbmVyXG4uY2VudGVyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDAgYXV0bztcbn0iLCIvLyBDb2xvdXJzXG4kaGlnaGxpZ2h0OiAgICAgICAgICAgICAgICAgICAgICNmYTkyMDA7XG5cbiRlcnJvcjogICAgICAgICAgICAgICAgICAgICAgICAgI2YwMDtcbiRlcnJvci1iZzogICAgICAgICAgICAgICAgICAgICAgI2ZmZTVlNTtcblxuJHN1Y2Nlc3M6ICAgICAgICAgICAgICAgICAgICAgICAjMzkwO1xuJHN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAjZWFmNWU1O1xuXG4kaW5mbzogICAgICAgICAgICAgICAgICAgICAgICAgICMzOWY7XG4kaW5mby1iZzogICAgICAgICAgICAgICAgICAgICAgICNlYWY1ZmY7XG5cbiR3YXJuaW5nOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmMDtcbiR3YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZmZlNTtcblxuJGJsYWNrOiAgICAgICAgICAgICAgICAgICAgICAgICAjMDAwO1xuJHdoaXRlOiAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xuJHRleHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAjMDAwO1xuJHRpdGxlOiAgICAgICAgICAgICAgICAgICAgICAgICAjMDAwO1xuXG4vLyBHcmlkXG4kY29sLXF0eTogICAgICAgICAgICAgICAgICAgICAgIDEyO1xuJGNvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICA2MHB4O1xuJGd1dHRlcjogICAgICAgICAgICAgICAgICAgICAgICAyMHB4O1xuXG4vLyBMYXJnZSBkZXNrdG9wIGdyaWRcbiR4bC1jb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgNzBweDtcbiR4bC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAgICAgMzBweDtcblxuXG4vLyBCcmVha3BvaW50c1xuJGJwLXhsOiAgICAgICAgICAgICAgICAgXHRcdDEzNjBweDtcbiRicC1sOiAgICAgICAgICAgICAgXHRcdFx0MTAyNHB4O1xuJGJwLW06ICAgICAgICAgICAgIFx0XHRcdFx0NjgwcHg7XG4kYnAtczogICAgICAgICAgICAgIFx0XHRcdDEyMHB4O1xuXG5cbi8vIFBhdGhzXG4kaW1nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICcuLi9pbWcvJztcbiRzcHJpdGU6ICAgICAgICAgICAgICAgICAgICAgICAgJy4uL2ltZy9zcHJpdGUucG5nJztcbiRmb250czogICAgICAgICAgICAgICAgICAgICAgICAgJy4uL2ZvbnRzLyc7XG5cbiAgICBcbi8vIFR5cG9ncmFwaHlcbiRib2R5LWZvbnQ6ICAgICAgICAgICAgICAgICAgICAgc2Fucy1zZXJpZjtcbiR0aXRsZS1mb250OiAgICAgICAgICAgICAgICAgICAgc2VyaWY7XG4iLCIvLyAqXG4vLyAqIEdyaWQgc3lzdGVtXG4vLyAqIERlZmluZSB0aGUgc2l6ZSBvZiB0aGUgY29udGFpbmVyIHVzaW5nIGV4dHJhIGxhcmdlIHZhcmlhYmxlc1xuLy8gKlxuJHdyYXA6ICR4bC1jb2wtd2lkdGggKiAxMiArICR4bC1ndXR0ZXIgKiAxMTtcblxuLy8gKiBHZW5lcmF0ZSBhIGNvbW1vbiBzdHlsZSBmb3IgYWxsIHNwYW5zXG4lYmFzZS14bC1jb2wge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMCAkeGwtZ3V0dGVyLzI7XG59XG5cbkBtaXhpbiBjb2xzIHtcbiAgICBAZm9yICRpIGZyb20gMSB0byAkY29sLXF0eSAtIDEge1xuICAgICAgICAuY29sI3skaX0geyBAZXh0ZW5kICViYXNlLXhsLWNvbDsgfVxuICAgIH1cbn1cblxuLy8gKiBPdXRwdXQgdGhlIGNvbW1vbiBzcGFuIHN0eWxlc1xuQGluY2x1ZGUgY29scztcblxuLy8gRGVmaW5lIHdpZHRocyBmb3IgZWFjaCBzcGFuXG4uY29sI3skY29sLXF0eX0ge1xuICAgIG1hcmdpbjogMCAkeGwtZ3V0dGVyLzI7IC8vIEZ1bGwgd2lkdGgsIGRvZXNuJ3QgbmVlZCBmbG9hdFxuICAgIHdpZHRoOiAoJHhsLWNvbC13aWR0aCAqICRjb2wtcXR5KSArICgkeGwtZ3V0dGVyICogJGNvbC1xdHkpIC0gJHhsLWd1dHRlcjtcbn1cblxuQGZvciAkaSBmcm9tIDIgdG8gJGNvbC1xdHkge1xuICAgIC5jb2wjeyRpfSB7XG4gICAgICAgIHdpZHRoOiAkeGwtY29sLXdpZHRoICogJGkgKyAkeGwtZ3V0dGVyICogJGkgLSAkeGwtZ3V0dGVyO1xuICAgIH1cbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMCB7XG4gICAgLnByZSN7JGl9IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgkeGwtY29sLXdpZHRoICogJGkpICsgKCR4bC1ndXR0ZXIgKiAkaSkgKyAoJHhsLWd1dHRlciAvIDIpO1xuICAgIH1cbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMCB7XG4gICAgLnN1ZiN7JGl9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAoJHhsLWNvbC13aWR0aCAqICRpKSArICgkeGwtZ3V0dGVyICogJGkpICsgKCR4bC1ndXR0ZXIgLyAyKTtcbiAgICB9XG59XG5cbi5jb250YWluZXIge1xuICAgIHdpZHRoOiAkd3JhcCArICR4bC1ndXR0ZXI7XG59XG5cbkBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGNvbC1xdHkge1xuICAgIC5jb2wjeyRpfSA+IC5jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDAgLSgkeGwtZ3V0dGVyLzIpO1xuICAgICAgICB3aWR0aDogKCR4bC1jb2wtd2lkdGggKiAkaSkgKyAoJHhsLWd1dHRlciAqICRpKTtcbiAgICB9XG59XG5cbi8vICogR3JpZCB1dGlsaXRpZXNcbi5jb2xyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiAwICR4bC1ndXR0ZXIvMjtcbn1cblxuLmFscGhhIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLm9tZWdhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5jbGVhciB7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi5jZW50ZXIge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCBhdXRvO1xufVxuIiwiLy8gKiBHcmlkIHN5c3RlbVxuLy8gKiBEZWZpbmUgdGhlIHByb3BlcnRpZXMgb2YgdGhlIGZsZXhpYmxlIGNvbnRhaW5lclxuLy8gKlxuXG4ud3JhcCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAoJGd1dHRlci80KTtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nO1xuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMiU7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAjeyRndXR0ZXJ9KTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0oJGd1dHRlci8yKTtcbiAgICB9XG59XG5cbi5jb2wxMiwgXG4uY29sMTEsIFxuLmNvbDEwLCBcbi5jb2w5LCBcbi5jb2w4LCBcbi5jb2w3IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAoJGd1dHRlci80KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nO1xufVxuXG4uY29sNiwgXG4uY29sNSwgXG4uY29sNCwgXG4uY29sMyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgKCRndXR0ZXIvNCk7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nO1xufVxuXG4uY29sMiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgKCRndXR0ZXIvNCk7XG4gICAgd2lkdGg6IDMzLjMzJTtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nO1xufVxuXG4ubS1mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAmLmNvbHIge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG59XG5cbi5tLWhhbGYge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG59XG5cbi5tLTFfMyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzJTtcbn1cblxuLm0tMl8zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNjYuNjYlO1xufVxuXG4vLyAqIEFkZGl0aW9uYWwgZ3JpZCB1dGlsaXRpZXNcbi5jb2xyIHtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi5hbHBoYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5vbWVnYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uY2xlYXIge1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4uY2VudGVyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cbiIsIi8vICpcbi8vICogSG9pc2luLnNjc3Ncbi8vICogTWl4aW5zIGxpYnJhcnlcbi8vICpcbi8vICogVmVuZG9yIHByZWZpeGVzIGFyZSBoYW5kbGVkIGJ5IGEgcHJlZml4ZXIgbWl4aW4gKHRoYW5rcyBASHVnb0dpcmF1ZGVsKSxcbi8vICogQWxsIG1peGlucyBoYXZlIHRoZSBtb3N0IG9wdGltaXplZCBvcHRpb25zIGZvciB2ZW5kb3IgcHJlZml4ZXMsIGJ1dCBjYW5cbi8vICogYmUgc3BlY2lmaWVkIGlmIG5lY2Vzc2FyeVxuLy8gKlxuXG5cblxuLy8gKiBCb3ggc2hhZG93XG4vLyAqIEBwYXJhbSAkdmFsdWUgKCRoLW9mZnNldCAkdi1vZmZzZXQgJGJsdXIgJHNwcmVhZCAkY29sb3IgfCBpbnNldCB8IGluaXRpYWwgfCBpbmhlcml0KTtcbi8vICpcbi8vICogQGluY2x1ZGUgYm94LXNoYWRvdygycHggMnB4IDJweCAycHggcmdiYSgwLDAsMCwwLjIpKTtcbi8vICpcbkBtaXhpbiBib3gtc2hhZG93KCR2YWx1ZTogMCAwIDRweCAwIHJnYmEoMCwgMCwgMCwgLjUpKSB7XG4gICAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXNoYWRvdywgJHZhbHVlLCB3ZWJraXQpO1xufVxuXG5cblxuLy8gKiBUd28gY29sb3JzIHZlcnRpY2FsIGxpbmVhciBncmFkaWVudFxuLy8gKiBAcGFyYW0gJHZhbHVlICgkaW5pdGlhbC1jb2xvcik7XG4vLyAqIEBwYXJhbSAkdmFsdWUgKCRmaW5hbC1jb2xvcik7XG4vLyAqXG4vLyAqIEBpbmNsdWRlIGdyYWRpZW50cygjRkYwLCAjRjAwKTtcbi8vICpcbkBtaXhpbiBncmFkaWVudHMoJGZpcnN0LCAkc2Vjb25kKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpcnN0O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRmaXJzdCAwJSwgJHNlY29uZCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgJGZpcnN0IDAlLCAkc2Vjb25kIDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgJGZpcnN0LCAkc2Vjb25kKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKCRmaXJzdCksIHRvKCRzZWNvbmQpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG9wLCAkZmlyc3QgMCUsICRzZWNvbmQgMTAwJSk7XG59XG5cblxuXG4vLyAqIEJveCBtb2RlbCAoZGVmYXVsdHMgdG8gYm9yZGVyLWJveClcbi8vICogQHBhcmFtICR0eXBlICgkYm94LW1vZGVsKTtcbi8vICpcbi8vICogQGluY2x1ZGUgYm94LXNpemluZztcbi8vICpcbkBtaXhpbiBib3gtc2l6aW5nKCR0eXBlOiBib3JkZXItYm94KSB7XG4gICAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXNpemluZywgJHR5cGUsIG1veiB3ZWJraXQpO1xufVxuXG5cblxuLy8gKiBPcGFjaXR5IChPbGQgSUUgZGlzYWJsZWQgYnkgZGVmYXVsdClcbi8vICogQHBhcmFtICRvcGFjICgkb3BhY2l0eSk7XG4vLyAqIEBwYXJhbSAkaWUgKHRydWUpO1xuLy8gKlxuLy8gKiBAaW5jbHVkZSBvcGFjaXR5KDAuNywgdHJ1ZSk7XG4vLyAqXG5AbWl4aW4gb3BhY2l0eSgkb3BhYywgJGllOiBmYWxzZSkge1xuICAgIEBpZiAkaWUge1xuICAgICAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWMgKiAxMDApO1xuICAgICAgICAtbXMtZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjICogMTAwKTtcbiAgICB9XG4gICAgb3BhY2l0eTogJG9wYWM7XG59XG5cblxuXG4vLyAqIFRyYW5zaXRpb24gKGRlZmF1bHRzIHRvIC4xNSBzZWMpXG4vLyAqIEBwYXJhbSAkdmFsdWUgKCRzcGVlZCB8ICRwcm9wZXJ0eSB8ICRlYXNpbmcpO1xuLy8gKlxuLy8gKiBAaW5jbHVkZSB0cmFuc2l0aW9uKGhlaWdodCAyMDBtcyBlYXNlLW91dCk7XG4vLyAqXG5AbWl4aW4gdHJhbnNpdGlvbigkdmFsdWU6IC4xNXMpIHtcbiAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLCAkdmFsdWUsIHdlYmtpdCk7XG59XG5cblxuXG4vLyAqIFJvdGF0ZSAoT3JpZ2luIGRlZmF1bHRzIHRvIGNlbnRlciBvZiBlbGVtZW50KVxuLy8gKiBAcGFyYW0gJGRlZyAoJGRlZ3JlZXMpO1xuLy8gKiBAcGFyYW0gJG9yaWcgKCRoLW9yaWdpbiAkdi1vcmlnaW4pO1xuLy8gKlxuLy8gKiBAaW5jbHVkZSByb3RhdGUoNDVkZWcpO1xuLy8gKlxuQG1peGluIHJvdGF0ZSgkZGVnLCAkb3JpZzogNTAlIDUwJSkge1xuICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zZm9ybSwgcm90YXRlKCN7JGRlZ30pLCB3ZWJraXQgbXMpO1xuICAgIEBpZiAkb3JpZyAhPSA1MCUgYW5kICRvcmlnICE9ICg1MCUgNTAlKSBcbiAgICBhbmQgJG9yaWcgIT0gY2VudGVyIGFuZCAkb3JpZyAhPSAoY2VudGVyIGNlbnRlcikge1xuICAgICAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0tb3JpZ2luLCAkb3JpZywgd2Via2l0IG1zKTtcbiAgICB9XG59XG5cblxuXG4vLyAqIFRyYW5zbGF0ZSBcbi8vICogQHBhcmFtICRoZGlzdCAoJGRpc3RhbmNlKTtcbi8vICogQHBhcmFtICR2ZGlzdCAoJGRpc3RhbmNlKTtcbi8vICpcbi8vICogQGluY2x1ZGUgdHJhbnNsYXRlKDIwcHgsIDIwcHgpO1xuLy8gKlxuQG1peGluIHRyYW5zbGF0ZSgkaGRpc3Q6IDAsICR2ZGlzdDogMCkge1xuICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zZm9ybSwgdHJhbnNsYXRlKCN7JGhkaXN0fSwgI3skdmRpc3R9KSwgd2Via2l0IG1zKTtcbn1cblxuXG5cbi8vICogQW5pbWF0aW9uIChkZWZhdWx0cyB0byAuMTUgc2VjKVxuLy8gKiBAcGFyYW0gJG9wdGlvbnMgKCRhbmltYXRpb24tbmFtZSAkZHVyYXRpb24gfCAkaXRlcmF0aW9uKTtcbi8vICpcbi8vICogQGluY2x1ZGUgYW5pbWF0aW9uKG15YW5pbWF0aW9uIDJzIDMpO1xuLy8gKlxuQG1peGluIGFuaW1hdGlvbigkb3B0aW9ucykge1xuICAgIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbiwgJG9wdGlvbnMpO1xufVxuXG5cblxuLy8gKiBQbGFjZWhvbGRlciB0ZXh0IGNvbG9yXG4vLyAqIEBwYXJhbSAkY29sb3IgKCRjb2xvcik7XG4vLyAqXG4vLyAqIEBpbmNsdWRlIHBsYWNlaG9sZGVyKCM5OTkpO1xuLy8gKlxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcikge1xuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yOyBcbiAgICB9XG5cbiAgICAmOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbn1cblxuXG4vLyAqIERpc2FsbG93IHVzZXIgc2VsZWN0aW9uXG4vLyAqXG4vLyAqIEBpbmNsdWRlIG5vc2VsZWN0O1xuLy8gKlxuQG1peGluIG5vc2VsZWN0IHtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgQGluY2x1ZGUgcHJlZml4ZXIodXNlci1zZWxlY3QsIG5vbmUsIHdlYmtpdCBtcyk7XG59XG5cblxuXG4vLyAqIEJvcmRlciByYWRpdXNcbi8vICogQHBhcmFtICRyYWRpdXMgKCRyYWRpdXMpO1xuLy8gKlxuLy8gKiBAaW5jbHVkZSByYWRpdXMoNXB4KTtcbi8vICpcbi8vICogVGhpcyBtaXhpbiBpcyBkZXByZWNhdGVkLCB3aWxsIGJlIHJlbW92ZWQgaW4gZnV0dXJlIHZlcnNpb25zXG5AbWl4aW4gcmFkaXVzKCRyYWRpdXMpIHsgXG4gICAgQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLXJhZGl1cywgJHJhZGl1cyk7XG59IFxuXG5cblxuLy8gKiBQcmVmaXhlclxuLy8gKiBAcGFyYW0gJHByb3BlcnR5ICgkbmFtZSk7XG4vLyAqIEBwYXJhbSAkdmFsdWUgKCR2YWx1ZSk7XG4vLyAqIEBwYXJhbSAkcHJlZml4ZXMgKHdlYmtpdCB8IG1veiB8IG1zIHwgbyk7XG4vLyAqXG4vLyAqIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbiwgJG9wdGlvbnMpO1xuLy8gKlxuQG1peGluIHByZWZpeGVyKCRwcm9wZXJ0eSwgJHZhbHVlLCAkcHJlZml4ZXM6IHdlYmtpdCBtb3ogbXMgbykge1xuICAgIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVzIHtcbiAgICAgICAgI3snLScgKyAkcHJlZml4ICsgJy0nICsgJHByb3BlcnR5fTogI3skdmFsdWV9O1xuICAgIH1cbiAgICAjeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcbn1cbiIsIi8vICogR3JpZCBzeXN0ZW1cbi8vICogRGVmaW5lIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBmbGV4aWJsZSBjb250YWluZXJcbi8vICpcblxuLndyYXAge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgKCRndXR0ZXIvNCk7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZztcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDIlO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgI3skZ3V0dGVyfSk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtKCRndXR0ZXIvMik7XG4gICAgfVxufVxuXG4uY29sMTIsIFxuLmNvbDExLCBcbi5jb2wxMCwgXG4uY29sOSwgXG4uY29sOCwgXG4uY29sNywgXG4uY29sNiwgXG4uY29sNSwgXG4uY29sNCwgXG4uY29sMyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgKCRndXR0ZXIvNCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZztcbn1cblxuLmNvbDIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwICgkZ3V0dGVyLzQpO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZztcbn1cblxuLnMtZnVsbCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgKCRndXR0ZXIvNCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZztcbn1cblxuLnMtaGFsZiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgKCRndXR0ZXIvNCk7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nO1xufVxuXG4uY2xlYXIge1xuICAgIGNsZWFyOiBib3RoO1xufVxuIiwiLy8gQm9keVxuYm9keSB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG59XG4kcmVkOiByZWQ7XG4ucmVkIHtcblx0Y29sb3I6ICRyZWQ7XG59XG4ucmVkLWxpZ2h0IHtcblx0Y29sb3I6IGxpZ2h0KCRyZWQsIDcwJSk7XG59XG4ucmVkLWRhcmsge1xuXHRjb2xvcjogZGFyaygkcmVkLCA1MCUpO1xufVxuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkYnAtbCkge1xuXG5cdGJvZHkge1xuXHRcdGZvbnQtc2l6ZTogMThweDtcblx0fVxuXG59XG5AbWVkaWEgKG1pbi13aWR0aDogJGJwLW0pIGFuZCAobWF4LXdpZHRoOiAoJGJwLWwgLSAxKSkge1xuXG5cdGJvZHkge1xuXHRcdGZvbnQtc2l6ZTogMTZweDtcblx0fVxuXG59XG5AbWVkaWEgKG1pbi13aWR0aDogJGJwLXMpIGFuZCAobWF4LXdpZHRoOiAoJGJwLW0gLSAxKSkge1xuXG5cdGJvZHkge1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0fVxuXG59IiwiLy8gKlxuLy8gKiBIb2lzaW4uc2Nzc1xuLy8gKiBGdW5jdGlvbnMgbGlicmFyeVxuLy8gKlxuLy8gKlxuXG5cblxuLy8gKiBEYXJrZW4gY29sb3JzXG4vLyAqIFxuLy8gKiBUaGlzIGZ1bmN0aW9uIHVzZXMgbWl4IHRvIGhhdmUgYSBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb2YgdGhlIGRhcmtlbmluZy5cbi8vICogQHBhcmFtICRjb2xvciAoJHZhcmlhYmxlIHwgI0hFWCk7XG4vLyAqIEBwYXJhbSAkdmFsdWUgKHBlcmNlbnRhZ2UpO1xuLy8gKlxuLy8gKiBkYXJrKCRibHVlLCAyMCUpO1xuLy8gKlxuQGZ1bmN0aW9uIGRhcmsoJGNvbG9yLCAkdmFsdWU6IDEwJSkge1xuICAgIEByZXR1cm4gbWl4KGJsYWNrLCAkY29sb3IsICR2YWx1ZSk7XG59XG5cblxuXG4vLyAqIExpZ2h0ZW4gY29sb3JzXG4vLyAqIFxuLy8gKiBUaGlzIGZ1bmN0aW9uIHVzZXMgbWl4IHRvIGhhdmUgYSBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb2YgdGhlIGRhcmtlbmluZy5cbi8vICogQHBhcmFtICRjb2xvciAoJHZhcmlhYmxlIHwgI0hFWCk7XG4vLyAqIEBwYXJhbSAkdmFsdWUgKHBlcmNlbnRhZ2UpO1xuLy8gKlxuLy8gKiBsaWdodCgkYmx1ZSwgMjAlKTtcbi8vICpcbkBmdW5jdGlvbiBsaWdodCgkY29sb3IsICR2YWx1ZTogMTAlKSB7XG4gICAgQHJldHVybiBtaXgod2hpdGUsICRjb2xvciwgJHZhbHVlKTtcbn1cblxuXG5cblxuLy8gKiBGbGV4aWJsZSBTcGFuIFxuLy8gKiBcbi8vICogVGhpcyBmdW5jdGlvbiBnZW5lcmF0ZXMgYSB3aWR0aCB2YWx1ZSBiYXNlZCBvbiB0aGUgcGFyYW1ldGVyIGdpdmVuLCB1c2luZyBcbi8vICogZGV0YWlscyBmcm9tIHRoZSBtZWRpdW0gc2l6ZSBncmlkLlxuLy8gKlxuLy8gKiBAcGFyYW0gJHdpZHRoICgkd2lkdGgpO1xuLy8gKlxuLy8gKiBzcGFuLWZ3KFwibS0yXzNcIik7XG4vLyAqXG5AZnVuY3Rpb24gc3Bhbi1mdygkd2lkdGgpIHtcbiAgICBAaWYgJHdpZHRoID09IFwibS0yXzNcIiB7XG4gICAgICAgIEByZXR1cm4gNjYuNjYlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkd2lkdGggPT0gXCJtLWhhbGZcIiB7XG4gICAgICAgIEByZXR1cm4gNTAlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkd2lkdGggPT0gXCJtLTFfM1wiIHtcbiAgICAgICAgQHJldHVybiAzMy4zMyU7XG4gICAgfVxuICAgIEBlbHNlIGlmICR3aWR0aCA9PSBcIm0tNF80XCIge1xuICAgICAgICBAcmV0dXJuIDI1JTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAcmV0dXJuIDEwMCU7XG4gICAgfVxufVxuXG5cblxuXG5cbi8vICogU3BhblxuLy8gKiBcbi8vICogVGhpcyBmdW5jdGlvbiBnZW5lcmF0ZXMgYSB3aWR0aCB2YWx1ZSBiYXNlZCBvbiB0aGUgcGFyYW1ldGVyIGdpdmVuLCB1c2luZyBcbi8vICogZGV0YWlscyBmcm9tIHRoZSAkZ3V0dGVyIGFuZCAkY29sIGdsb2JhbCB2YXJpYWJsZXMuXG4vLyAqXG4vLyAqIEBwYXJhbSAkY29scyAoJGNvbHMpO1xuLy8gKlxuLy8gKiBzcGFuKDgpO1xuLy8gKlxuQGZ1bmN0aW9uIHNwYW4oJGNvbHM6IDEyKSB7XG4gICAgQHJldHVybiAoJGNvbHMgKiAkY29sLXdpZHRoKSArICgoJGNvbHMgLSAxKSAqICRndXR0ZXIpO1xufVxuXG5cblxuLy8gKiBTcGFuIFhMXG4vLyAqIFxuLy8gKiBUaGlzIGZ1bmN0aW9uIGdlbmVyYXRlcyBhIHdpZHRoIHZhbHVlIGJhc2VkIG9uIHRoZSBwYXJhbWV0ZXIgZ2l2ZW4sIHVzaW5nIFxuLy8gKiBkZXRhaWxzIGZyb20gdGhlICR4bC1ndXR0ZXIgYW5kICR4bC1jb2wgZ2xvYmFsIHZhcmlhYmxlcy5cbi8vICpcbi8vICogQHBhcmFtICRjb2xzICgkY29scyk7XG4vLyAqXG4vLyAqIHNwYW4teGwoOCk7XG4vLyAqXG5AZnVuY3Rpb24gc3Bhbi14bCgkY29sczogMTIpIHtcbiAgICBAcmV0dXJuICgkY29scyAqICR4bC1jb2wtd2lkdGgpICsgKCgkY29scyAtIDEpICogJHhsLWd1dHRlcik7XG59IiwiLy8gQ29tcG9uZW50IG5hbWVcblx0Ym9keSB7XG5cdFx0Y29sb3I6ICM2NjY7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDUwcHggMDtcblx0XHRmb250LWZhbWlseTogXCJSb2JvdG8gQ29uZGVuc2VkXCIsIHNhbnMtc2VyaWY7XG5cdFx0Zm9udC1zaXplOiAxOHB4O1xuXHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0YmFja2dyb3VuZDogd2hpdGU7XG5cdH1cblx0aDIge1xuXHRcdGNvbG9yOiAjZDg1MzFlO1xuXHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGZvbnQtc2l6ZTogNDhweDtcblx0XHRmb250LXNpemU6IDQ4cHg7XG5cdH1cblx0aDMge1xuXHRcdGNvbG9yOiAjMzMzO1xuXHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGZvbnQtc2l6ZTogMzZweDtcblx0XHRsaW5lLWhlaWdodDogMzZweDtcblx0XHRwYWRkaW5nOiAxMnB4IDA7IFxuXHR9XG5cdHAge1xuXHRcdG1hcmdpbjogMCAwIDIxcHggMDtcblx0fVxuXHRhIHtcblx0XHRjb2xvcjogI2Q4NTMxZTtcblx0fVxuXHRzZWN0aW9uIHtcblx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xuXHR9XG5cdC5ib3gge1xuXHRcdG1hcmdpbjogMCAwIDIwcHggMDtcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdGJhY2tncm91bmQ6ICNGNUY1RjU7XG5cdH1cblx0LmJveCBwIHtcblx0XHRtYXJnaW46IDA7XG5cdH1cblx0LmNvZGUge1xuXHRcdGZvbnQtZmFtaWx5OiBcIkNvdXJpZXIgTmV3XCIsIHNlcmlmO1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0fVxuXHQubmVzdGluZyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRkZERjtcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHR9XG5cdC5uZXN0aW5nIC5uZXN0aW5nIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZFN0RGO1xuXHR9XG5cblx0cHJlIHtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNGOUY5Rjk7XG5cdFx0cGFkZGluZzogMTBweDtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxuXG5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRicC1sKSB7XG5cdFxuXHQuY29udGVudCB7XG5cdFx0d2lkdGg6IHNwYW4oOCk7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0bWFyZ2luOiAwICgkZ3V0dGVyIC8gMik7XG5cdH1cblx0LnNpZGViYXIge1xuXHRcdHdpZHRoOiBzcGFuKDQpO1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHRtYXJnaW46IDAgKCRndXR0ZXIgLyAyKTtcblx0fVxuXG59XG5AbWVkaWEgKG1pbi13aWR0aDogJGJwLXhsKSB7XG5cdFxuXHQuYm94IHtcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuXHR9XG5cdFxuXHQuY29udGVudCB7XG5cdFx0d2lkdGg6IHNwYW4teGwoOCk7XG5cdFx0bWFyZ2luOiAwICgkeGwtZ3V0dGVyIC8gMik7XG5cdH1cblx0LnNpZGViYXIge1xuXHRcdHdpZHRoOiBzcGFuLXhsKDQpO1xuXHRcdG1hcmdpbjogMCAoJHhsLWd1dHRlciAvIDIpO1xuXHR9XG5cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAkYnAtbSkgYW5kIChtYXgtd2lkdGg6ICgkYnAtbCAtIDEpKSB7XG5cblx0LmJveCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0fVxuXG5cdC5jb250ZW50IHtcblx0XHR3aWR0aDogc3Bhbi1mdyhtLTJfMyk7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0cGFkZGluZzogMCAoJGd1dHRlciAvIDQpO1xuXHRcdEBpbmNsdWRlIGJveC1zaXppbmc7XG5cdH1cblx0LnNpZGViYXIge1xuXHRcdHdpZHRoOiBzcGFuLWZ3KG0tMV8zKTtcblx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0cGFkZGluZzogMCAoJGd1dHRlciAvIDQpO1xuXHRcdEBpbmNsdWRlIGJveC1zaXppbmc7XG5cdH1cblxufVxuQG1lZGlhIChtaW4td2lkdGg6ICRicC1zKSBhbmQgKG1heC13aWR0aDogKCRicC1tIC0gMSkpIHtcblx0XG5cdC5ib3gge1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdH1cblxufVxuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */ diff --git a/index.html b/index.html index 154b8a3..d95157e 100644 --- a/index.html +++ b/index.html @@ -263,6 +263,82 @@

Inverted order columns

+ +
+
+
+

Color Functions

+

Color functions to handle simple color changes like darken and lighten, but with more granular control that native darken and lighten functions.

+
+
+ +
+
+
+

Red p.red

+

 

+
+.red-light {
+  color: dark($red, 50%);
+}
+					
+

Red p.red-dark

+

 

+
+.red-light {
+  color: light($red, 70%);
+}
+					
+

Lighter red p.red-light

+
+
+
+ +
+
+

Layout Functions

+

Semantic layout is easier now, by using the layout functions as grid values, no need to add class names.

+
+
+
+
+
+

Main content

+

 

+
+@media (min-width: $bp-l) {
+  .content {
+    width: span(8);
+    float: left;
+    margin: 0 ($gutter / 2);
+  }
+}
+@media (min-width: $bp-xl) {
+  .content {
+    width: span-xl(8);
+    margin: 0 ($xl-gutter / 2);
+}
+@media (min-width: $bp-m) and (max-width: ($bp-l - 1)) {
+  .box {
+    margin-bottom: 10px;
+  }
+  .content {
+    width: span-fw(m-2_3);
+    float: left;
+    padding: 0 ($gutter / 4);
+    @include box-sizing;
+  }
+}
+					
+
+
+ +
+
diff --git a/package.json b/package.json index 1a93c8a..022600e 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "hoisin.scss", "title": "Hoisin.scss", "description": "A simple responsive mini framework to kick start your project.", - "version": "0.9.11", + "version": "0.9.12", "homepage": "https://github.com/Cyber-Duck/hoisin.scss", "license": "ISC", "author": { @@ -30,21 +30,12 @@ } ], "main": "Gulpfile.js", - "dependencies": { - "clone": "^1.0.2", - "clone-stats": "0.0.1", - "gulp-install": "^0.6.0", - "inherits": "^2.0.1", - "lodash": "^3.9.3", - "readable-stream": "^2.0.0" - }, + "dependencies": {}, "devDependencies": { "gulp": "^3.9.0", "gulp-bower": "0.0.10", - "gulp-concat": "^2.5.2", "gulp-sass": "^2.0.4", "gulp-sourcemaps": "^1.5.2", - "gulp-uglify": "^1.2.0", "gulp-minify-css": "1.2.1", "gulp-watch": "^4.2.0" }, diff --git a/scss/_functions.scss b/scss/_functions.scss new file mode 100644 index 0000000..4c7c766 --- /dev/null +++ b/scss/_functions.scss @@ -0,0 +1,95 @@ +// * +// * Hoisin.scss +// * Functions library +// * +// * + + + +// * Darken colors +// * +// * This function uses mix to have a more granular control of the darkening. +// * @param $color ($variable | #HEX); +// * @param $value (percentage); +// * +// * dark($blue, 20%); +// * +@function dark($color, $value: 10%) { + @return mix(black, $color, $value); +} + + + +// * Lighten colors +// * +// * This function uses mix to have a more granular control of the darkening. +// * @param $color ($variable | #HEX); +// * @param $value (percentage); +// * +// * light($blue, 20%); +// * +@function light($color, $value: 10%) { + @return mix(white, $color, $value); +} + + + + +// * Flexible Span +// * +// * This function generates a width value based on the parameter given, using +// * details from the medium size grid. +// * +// * @param $width ($width); +// * +// * span-fw("m-2_3"); +// * +@function span-fw($width) { + @if $width == "m-2_3" { + @return 66.66%; + } + @else if $width == "m-half" { + @return 50%; + } + @else if $width == "m-1_3" { + @return 33.33%; + } + @else if $width == "m-4_4" { + @return 25%; + } + @else { + @return 100%; + } +} + + + + + +// * Span +// * +// * This function generates a width value based on the parameter given, using +// * details from the $gutter and $col global variables. +// * +// * @param $cols ($cols); +// * +// * span(8); +// * +@function span($cols: 12) { + @return ($cols * $col-width) + (($cols - 1) * $gutter); +} + + + +// * Span XL +// * +// * This function generates a width value based on the parameter given, using +// * details from the $xl-gutter and $xl-col global variables. +// * +// * @param $cols ($cols); +// * +// * span-xl(8); +// * +@function span-xl($cols: 12) { + @return ($cols * $xl-col-width) + (($cols - 1) * $xl-gutter); +} \ No newline at end of file diff --git a/scss/_version.scss b/scss/_version.scss index 50a7245..9642705 100644 --- a/scss/_version.scss +++ b/scss/_version.scss @@ -2,7 +2,7 @@ // * Hoisin.scss // * CSS responsive framework boilerplate // * Create your own grids, plugin anything -// * Version: 0.9.11 +// * Version: 0.9.12 // * Created by: Cyber-Duck Ltd , // * Ramon Lapenta // * diff --git a/scss/components/_body.scss b/scss/components/_body.scss index 5c80b68..c4323a0 100644 --- a/scss/components/_body.scss +++ b/scss/components/_body.scss @@ -4,6 +4,17 @@ body { padding: 0; font-family: $body-font; } +$red: red; +.red { + color: $red; +} +.red-light { + color: light($red, 70%); +} +.red-dark { + color: dark($red, 50%); +} + @media (min-width: $bp-l) { diff --git a/scss/components/_sample.scss b/scss/components/_sample.scss index 593dc3b..ee7fd39 100644 --- a/scss/components/_sample.scss +++ b/scss/components/_sample.scss @@ -52,12 +52,44 @@ background-color: #FFE7DF; } + pre { + border: 1px solid #CCC; + background-color: #F9F9F9; + padding: 10px; + margin: 0; + } + + + +@media (min-width: $bp-l) { + + .content { + width: span(8); + float: left; + margin: 0 ($gutter / 2); + } + .sidebar { + width: span(4); + float: right; + margin: 0 ($gutter / 2); + } + +} @media (min-width: $bp-xl) { .box { margin-bottom: 30px; } + + .content { + width: span-xl(8); + margin: 0 ($xl-gutter / 2); + } + .sidebar { + width: span-xl(4); + margin: 0 ($xl-gutter / 2); + } } @media (min-width: $bp-m) and (max-width: ($bp-l - 1)) { @@ -66,6 +98,19 @@ margin-bottom: 10px; } + .content { + width: span-fw(m-2_3); + float: left; + padding: 0 ($gutter / 4); + @include box-sizing; + } + .sidebar { + width: span-fw(m-1_3); + float: right; + padding: 0 ($gutter / 4); + @include box-sizing; + } + } @media (min-width: $bp-s) and (max-width: ($bp-m - 1)) { diff --git a/scss/l/_base.scss b/scss/l/_base.scss index fd67adc..4dea693 100644 --- a/scss/l/_base.scss +++ b/scss/l/_base.scss @@ -17,10 +17,10 @@ $wrap: ($col-width * $col-qty) + $gutter * ($col-qty - 1); // * Loop through the cols to generate size of nested containers @for $i from 2 through $col-qty { - .col#{$i} > .container { - margin: 0 0 0 -#{$gutter/2}; - width: ($col-width * $i) + ($gutter * $i); - } + .col#{$i} > .container { + margin: 0 0 0 0 -($gutter/2); + width: ($col-width * $i) + ($gutter * $i); + } } // * Empty declaration as a base for all spans common styles diff --git a/scss/l/_xl.scss b/scss/l/_xl.scss index fc1b172..8dbb1da 100644 --- a/scss/l/_xl.scss +++ b/scss/l/_xl.scss @@ -49,7 +49,7 @@ $wrap: $xl-col-width * 12 + $xl-gutter * 11; @for $i from 2 through $col-qty { .col#{$i} > .container { - margin: 0 0 0 -#{$xl-gutter/2}; + margin: 0 0 0 0 -($xl-gutter/2); width: ($xl-col-width * $i) + ($xl-gutter * $i); } } diff --git a/scss/style.scss b/scss/style.scss index 315b7a1..131284c 100644 --- a/scss/style.scss +++ b/scss/style.scss @@ -1,5 +1,6 @@ @import 'version'; @import 'vars'; +@import 'functions'; @import 'mixins'; @import 'grid';